Commit graph

78 commits

Author SHA1 Message Date
Epicalert fe75856701
Add keyboard input and model info keybind
Pressing 'i' will show a dialog box with the model info
2021-11-13 09:07:37 +08:00
Epicalert 972a0cc9b9
Add authors and license to model file 2021-11-13 00:43:45 +08:00
Epicalert 678393ccb1
Clean up model format version
Commit 09c60db8 should have incrememnted the model format version but
didn't. Also added "since version x.x" in the model format docs.
2021-11-12 20:12:06 +08:00
Epicalert 57ad5cd47a
Fix crash when eye roi outside of view 2021-11-12 19:08:21 +08:00
Epicalert c06f6beae6
Fix flickering on some renderers
GLUT apparently doesn't do double buffers by default, (at least
sometimes) so we need to explicitly set it in init.
2021-11-12 01:15:29 +08:00
Epicalert 583ec11ee5
Add default model
Default-chan is the new default model that will be used instead of the
`test` placeholder.
2021-11-11 23:12:34 +08:00
Epicalert 739f13adf9
Fix gray window background on Windows 2021-07-19 23:17:40 +08:00
Epicalert 5e606e3120
Fix default values in fc2dconfig 2021-07-19 02:54:32 +08:00
Epicalert 7456a1f111
Fix default values in fc2dconfig 2021-07-13 17:39:41 +08:00
Epicalert 6ced9f4d67
Fix fc2dconfig minimum window size 2021-07-13 17:25:39 +08:00
Epicalert 6b61f6d76e
Remove unnecessary cout 2021-07-10 20:28:11 +08:00
Epicalert 5620f6bbb4
Add tooltips to fc2dconfig 2021-07-04 18:06:10 +08:00
Epicalert 4fbb62e54b
Add option to disable eye tracking 2021-07-04 03:58:17 +08:00
Epicalert 7684da80d7
Mention paper used for pupil tracking in comments 2021-07-04 03:43:23 +08:00
Epicalert b1571c0dc9
Fix extreme eye movement when face is scaled small
Offset needs to be multiplied by scale, otherwise the effect will be
disproportionately pronounced when the face is scaled down.
2021-07-04 03:35:31 +08:00
Epicalert fbfc14bdf9
Use exit() instead of std::abort() on fatal error 2021-07-04 03:23:00 +08:00
Epicalert 82a618689b
Add option to select camera
Technically this option only selects which camera to start the search
at, but we tell the user that it selects the camera for simplicity.
2021-07-04 03:21:50 +08:00
Epicalert bb82a0ddd5
Add option to enable/disable camera feed window
By default, camera feed will not be shown to the user.
2021-07-03 17:53:57 +08:00
Epicalert 160e9a02f2
Update source code URL 2021-07-03 17:30:26 +08:00
Epicalert d37d49928e
Merge branch 'config-dialog'
Adds a configuration program `fc2dconfig` and implements a configuration
file system.
2021-07-03 01:54:18 +08:00
Epicalert 4d29b21099
Remove unnecessary TODOs 2021-07-03 00:39:20 +08:00
Epicalert 5c53e82fb7
Make fc2dconfig read existing config file 2021-07-03 00:38:05 +08:00
Epicalert b9c9cb3de4
Make .local and .config directories on startup
Directories for the config file and custom data will be created when
Facecam2D starts.
2021-07-03 00:19:14 +08:00
Epicalert 07ccce90d3
Use std::filesystem instead of dirent.h 2021-07-02 23:40:52 +08:00
Epicalert 3c94c57558
Improve readability of config menu 2021-07-02 18:25:32 +08:00
Epicalert e5a1cdd6da
Changed config file path
Config file is now stored under ~/.config in Linux, and
%AppData%\Roaming in Windows. Custom prefix has been changed to
%AppData%\Local\Facecam2D in Windows, instead of the improper
%AppData%\Facecam2D. MacOS paths remain unchanged.
2021-07-02 03:45:19 +08:00
Epicalert 378bcf7f16
Remove unnecessary lines 2021-07-02 03:11:28 +08:00
Epicalert dbd3afb6fe
Add cancel button and rename OK to apply 2021-07-02 03:10:37 +08:00
Epicalert 6c0d71d795
Say "(fatal)" in console when fatal error occurs 2021-07-02 03:02:50 +08:00
Epicalert d18f9d3162
Change model selection to dropdown menu 2021-07-02 02:56:39 +08:00
Epicalert d63178a37b
Add working config file system
`fc2dconfig` will write a config file, and `fc2d` will read it.
2021-07-01 22:47:13 +08:00
Epicalert 6d6658c610
Add fc2dconfig program
This commit will add a new dependency: wxWidgets.
2021-06-30 20:26:23 +08:00
Epicalert 2206780a9b
Add error messages for camera problems 2021-06-16 19:03:06 +08:00
Epicalert 5bea68564f
Check if camera feed is blank before using 2021-06-16 18:53:00 +08:00
Epicalert ed5b1c26e0
Look for usable camera instead of using default 2021-06-13 22:52:57 +08:00
Epicalert 05a4079418
Chance "_WIN64" checks to "_WIN32"
_WIN32 is defined on both 32-bit and 64-bit windows systems, so might as
well just use that.
2021-06-13 19:02:57 +08:00
Epicalert 325ff2ce7d
Ignore empty frames to prevent crashes 2021-06-12 17:32:41 +08:00
Epicalert 735e27ac53
Disable command line args on Windows
It seems argp doesn't work on Windows, so we can disable it for now.
2021-06-10 01:38:03 +08:00
Epicalert 16a7ff8ee1
Remove unnecessary debug info 2021-06-08 13:28:46 +08:00
Epicalert 09c60db8c1
Add eye direction in model
Adds eye direction support in the model system and in the 'test' model.
2021-06-08 10:53:59 +08:00
Epicalert 26c11c414f
Fix eye vector being incorrect on hi res 2021-06-07 18:57:50 +08:00
Epicalert c777e08519
Make eye direction indicator more clear
Adds a circle to the center of the eye direction indicator to make it
easier to read.
2021-06-07 18:43:00 +08:00
Epicalert e4d755c00d
Improve iris detection
This commit makes the following changes to the iris detection:
- Use Scharr instead os Sobel algorithm for image gradient
- Apply Gaussian blur to eye image before processing
- Scale down the eye image if too large
2021-06-07 18:43:00 +08:00
Epicalert 60c5254a47
CV: Add eye look direction 2021-06-07 18:43:00 +08:00
Epicalert 47c64e3bf3
Add smoothing
Transform of each part is now smoothed over 4 frames to stop shaking.
2021-04-13 15:52:46 +08:00
Epicalert a58e7d9428
Force ROI for Facemark to be square
This seems to help with Facemark accuracy.
2021-03-31 22:08:52 +08:00
Epicalert 24aa671651
Mention git.epicalert.xyz as main git server 2021-03-24 00:01:37 +08:00
Epicalert ed6323d7e5
Add FPS counter and unlock webcam framerate
Maybe disable webcam view altogether and make it a compiler flag?
2021-03-18 18:59:04 +08:00
Epicalert 3220795821
Fix stretching/squashing with non-square window 2021-03-17 01:01:21 +08:00
Epicalert 941c2043cd
Add origin and offsets
Origin point for a model part can be set with `origin` in model.toml;
position and scale offsets can be set with `pos_offset` and
`scale_offset` respectively.
2021-02-28 22:11:35 +08:00