mirror of
https://github.com/EyeTrackVR/EyeTrackVR.git
synced 2025-11-04 14:39:42 +08:00
feat: pupil dilation initial imp
This commit is contained in:
parent
e694054cb4
commit
6200ddfcab
@ -57,6 +57,7 @@ class AlgoSettingsWidget:
|
|||||||
self.gui_legacy_ransac = f"-LEGACYRANSACTHRESH{widget_id}-"
|
self.gui_legacy_ransac = f"-LEGACYRANSACTHRESH{widget_id}-"
|
||||||
self.gui_legacy_ransac_thresh_right = f"-THRESHRIGHT{widget_id}-"
|
self.gui_legacy_ransac_thresh_right = f"-THRESHRIGHT{widget_id}-"
|
||||||
self.gui_legacy_ransac_thresh_left = f"-THRESHLEFT{widget_id}-"
|
self.gui_legacy_ransac_thresh_left = f"-THRESHLEFT{widget_id}-"
|
||||||
|
self.gui_pupil_dilation = f"-EBPD{widget_id}-"
|
||||||
self.gui_LEAP_lid = f"-LEAPLID{widget_id}-"
|
self.gui_LEAP_lid = f"-LEAPLID{widget_id}-"
|
||||||
self.main_config = main_config
|
self.main_config = main_config
|
||||||
self.config = main_config.settings
|
self.config = main_config.settings
|
||||||
@ -188,7 +189,7 @@ class AlgoSettingsWidget:
|
|||||||
),
|
),
|
||||||
sg.Text("Blob", background_color="#424042"),
|
sg.Text("Blob", background_color="#424042"),
|
||||||
],
|
],
|
||||||
[sg.Text("Blink Algo Settings:", background_color="#242224")],
|
[sg.Text("Eyelid Algo Settings:", background_color="#242224")],
|
||||||
[
|
[
|
||||||
sg.Checkbox(
|
sg.Checkbox(
|
||||||
"Intensity Based Openness",
|
"Intensity Based Openness",
|
||||||
@ -249,6 +250,15 @@ class AlgoSettingsWidget:
|
|||||||
background_color="#424042",
|
background_color="#424042",
|
||||||
),
|
),
|
||||||
],
|
],
|
||||||
|
[sg.Text("Pupil Dilation Algo Settings:", background_color="#242224")],
|
||||||
|
[
|
||||||
|
sg.Checkbox(
|
||||||
|
"Ellipse Based Pupil Dilation",
|
||||||
|
default=self.config.gui_pupil_dilation,
|
||||||
|
key=self.gui_pupil_dilation,
|
||||||
|
background_color="#424042",
|
||||||
|
)
|
||||||
|
],
|
||||||
[
|
[
|
||||||
sg.Text(
|
sg.Text(
|
||||||
"Advanced Tracking Algorithim Settings:", background_color="#242224"
|
"Advanced Tracking Algorithim Settings:", background_color="#242224"
|
||||||
@ -444,6 +454,10 @@ class AlgoSettingsWidget:
|
|||||||
self.config.gui_IBO = values[self.gui_IBO]
|
self.config.gui_IBO = values[self.gui_IBO]
|
||||||
changed = True
|
changed = True
|
||||||
|
|
||||||
|
if self.config.gui_pupil_dilation != values[self.gui_pupil_dilation]:
|
||||||
|
self.config.gui_pupil_dilation = values[self.gui_pupil_dilation]
|
||||||
|
changed = True
|
||||||
|
|
||||||
if self.config.gui_RANSACBLINK != values[self.gui_RANSACBLINK]:
|
if self.config.gui_RANSACBLINK != values[self.gui_RANSACBLINK]:
|
||||||
self.config.gui_RANSACBLINK = values[self.gui_RANSACBLINK]
|
self.config.gui_RANSACBLINK = values[self.gui_RANSACBLINK]
|
||||||
changed = True
|
changed = True
|
||||||
|
|||||||
@ -404,7 +404,7 @@ class CameraWidget:
|
|||||||
|
|
||||||
graph.draw_circle(
|
graph.draw_circle(
|
||||||
(eye_info.x * -100, eye_info.y * -100),
|
(eye_info.x * -100, eye_info.y * -100),
|
||||||
15],
|
eye_info.pupil_dilation * 25,
|
||||||
fill_color="black",
|
fill_color="black",
|
||||||
line_color="white",
|
line_color="white",
|
||||||
)
|
)
|
||||||
|
|||||||
@ -83,6 +83,7 @@ class EyeTrackSettingsConfig(BaseModel):
|
|||||||
gui_osc_vrcft_v1: bool = False
|
gui_osc_vrcft_v1: bool = False
|
||||||
gui_osc_vrcft_v2: bool = False
|
gui_osc_vrcft_v2: bool = False
|
||||||
gui_vrc_native: bool = True
|
gui_vrc_native: bool = True
|
||||||
|
gui_pupil_dilation: bool = True
|
||||||
|
|
||||||
|
|
||||||
class EyeTrackConfig(BaseModel):
|
class EyeTrackConfig(BaseModel):
|
||||||
|
|||||||
@ -1,6 +1,7 @@
|
|||||||
from dataclasses import dataclass
|
from dataclasses import dataclass
|
||||||
from enum import Enum, IntEnum
|
from enum import Enum, IntEnum
|
||||||
|
|
||||||
|
|
||||||
class EyeId(IntEnum):
|
class EyeId(IntEnum):
|
||||||
RIGHT = 0
|
RIGHT = 0
|
||||||
LEFT = 1
|
LEFT = 1
|
||||||
@ -24,5 +25,5 @@ class EyeInfo:
|
|||||||
info_type: EyeInfoOrigin
|
info_type: EyeInfoOrigin
|
||||||
x: float
|
x: float
|
||||||
y: float
|
y: float
|
||||||
pupil_dialation: float
|
pupil_dilation: float
|
||||||
blink: float
|
blink: float
|
||||||
|
|||||||
@ -254,16 +254,18 @@ class EyeProcessor:
|
|||||||
|
|
||||||
def UPDATE(self):
|
def UPDATE(self):
|
||||||
# print(self.eyeopen)
|
# print(self.eyeopen)
|
||||||
self.pupil_dilation = self.ebpd.intense(
|
if self.settings.gui_pupil_dilation:
|
||||||
self.pupil_width,
|
self.pupil_dilation = self.ebpd.intense(
|
||||||
self.pupil_height,
|
self.pupil_width,
|
||||||
self.rawx,
|
self.pupil_height,
|
||||||
self.rawy,
|
self.rawx,
|
||||||
self.current_image_white,
|
self.rawy,
|
||||||
self.settings.ibo_filter_samples,
|
self.current_image_white,
|
||||||
self.settings.ibo_average_output_samples,
|
self.settings.ibo_filter_samples,
|
||||||
)
|
self.settings.ibo_average_output_samples,
|
||||||
print(self.pupil_dilation)
|
)
|
||||||
|
else:
|
||||||
|
self.pupil_dilation = 0.5
|
||||||
|
|
||||||
if self.settings.gui_BLINK:
|
if self.settings.gui_BLINK:
|
||||||
self.eyeopen = BLINK(self)
|
self.eyeopen = BLINK(self)
|
||||||
|
|||||||
@ -29,7 +29,8 @@ def eyelid_transformer(self, eye_blink):
|
|||||||
se = False
|
se = False
|
||||||
|
|
||||||
|
|
||||||
def output_osc(eye_x, eye_y, eye_blink, last_blink, self):
|
def output_osc(eye_x, eye_y, eye_blink, last_blink, pupil_dilation, self):
|
||||||
|
print(pupil_dilation)
|
||||||
global se
|
global se
|
||||||
# self.config.gui_osc_vrcft_v2
|
# self.config.gui_osc_vrcft_v2
|
||||||
# self.config.gui_osc_vrcft_v1
|
# self.config.gui_osc_vrcft_v1
|
||||||
@ -303,7 +304,14 @@ class VRChatOSC:
|
|||||||
except:
|
except:
|
||||||
continue
|
continue
|
||||||
|
|
||||||
output_osc(eye_info.x, eye_info.y, eye_info.blink, last_blink, self)
|
output_osc(
|
||||||
|
eye_info.x,
|
||||||
|
eye_info.y,
|
||||||
|
eye_info.blink,
|
||||||
|
last_blink,
|
||||||
|
eye_info.pupil_dilation,
|
||||||
|
self,
|
||||||
|
)
|
||||||
|
|
||||||
|
|
||||||
class VRChatOSCReceiver:
|
class VRChatOSCReceiver:
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user