mirror of
https://github.com/EyeTrackVR/EyeTrackVR.git
synced 2025-11-04 14:39:42 +08:00
sep settings pages, eyelid visualizations
This commit is contained in:
parent
4c0c907a07
commit
507283ed7e
@ -49,61 +49,7 @@ class AlgoSettingsWidget:
|
||||
|
||||
# Define the window's contents
|
||||
self.general_settings_layout = [
|
||||
|
||||
[
|
||||
sg.Checkbox(
|
||||
"Flip Left Eye X Axis",
|
||||
default=self.config.gui_flip_x_axis_left,
|
||||
key=self.gui_flip_x_axis_left,
|
||||
background_color='#424042',
|
||||
tooltip = "Flips the left eye's X axis.",
|
||||
),
|
||||
sg.Checkbox(
|
||||
"Flip Right Eye X Axis",
|
||||
default=self.config.gui_flip_x_axis_right,
|
||||
key=self.gui_flip_x_axis_right,
|
||||
background_color='#424042',
|
||||
tooltip = "Flips the right eye's X axis.",
|
||||
),
|
||||
|
||||
# ],
|
||||
#[
|
||||
sg.Checkbox(
|
||||
"Flip Y Axis",
|
||||
default=self.config.gui_flip_y_axis,
|
||||
key=self.gui_flip_y_axis,
|
||||
background_color='#424042',
|
||||
tooltip = "Flips the eye's Y axis.",
|
||||
),
|
||||
],
|
||||
[sg.Checkbox(
|
||||
"VRC Native Eyetracking",
|
||||
default=self.config.gui_vrc_native,
|
||||
key=self.gui_vrc_native,
|
||||
background_color='#424042',
|
||||
tooltip = "Toggle VRCFT output or VRC native",
|
||||
),
|
||||
sg.Checkbox(
|
||||
"Dual Eye Falloff",
|
||||
default=self.config.gui_eye_falloff,
|
||||
key=self.gui_eye_falloff,
|
||||
background_color='#424042',
|
||||
tooltip = "If one eye stops tracking, we send tracking data from your other eye.",
|
||||
),
|
||||
],
|
||||
[sg.Checkbox(
|
||||
"Check For Updates",
|
||||
default=self.config.gui_update_check,
|
||||
key=self.gui_update_check,
|
||||
background_color='#424042',
|
||||
tooltip = "Toggle update check on launch.",
|
||||
),
|
||||
],
|
||||
|
||||
|
||||
[
|
||||
sg.Text("Tracking Algorithim Settings:", background_color='#242224'),
|
||||
],
|
||||
|
||||
[sg.Checkbox(
|
||||
"",
|
||||
@ -294,7 +240,7 @@ class AlgoSettingsWidget:
|
||||
|
||||
self.widget_layout = [
|
||||
[
|
||||
sg.Text("General Settings:", background_color='#242224'),
|
||||
sg.Text("Tracking Algorithm Settings:", background_color='#242224'),
|
||||
],
|
||||
[
|
||||
sg.Column(self.general_settings_layout, key=self.gui_general_settings_layout, background_color='#424042' ),
|
||||
@ -325,57 +271,6 @@ class AlgoSettingsWidget:
|
||||
# If anything has changed in our configuration settings, change/update those.
|
||||
changed = False
|
||||
|
||||
if self.config.gui_osc_port != int(values[self.gui_osc_port]):
|
||||
print(self.config.gui_osc_port, values[self.gui_osc_port])
|
||||
try:
|
||||
int(values[self.gui_osc_port])
|
||||
if len(values[self.gui_osc_port]) <= 5:
|
||||
self.config.gui_osc_port = int(values[self.gui_osc_port])
|
||||
changed = True
|
||||
else:
|
||||
print("\033[91m[ERROR] OSC port value must be an integer 0-65535\033[0m")
|
||||
except:
|
||||
print("\033[91m[ERROR] OSC port value must be an integer 0-65535\033[0m")
|
||||
|
||||
if self.config.gui_osc_receiver_port != int(values[self.gui_osc_receiver_port]):
|
||||
try:
|
||||
int(values[self.gui_osc_receiver_port])
|
||||
if len(values[self.gui_osc_receiver_port]) <= 5:
|
||||
self.config.gui_osc_receiver_port = int(values[self.gui_osc_receiver_port])
|
||||
changed = True
|
||||
else:
|
||||
print("\033[91m[ERROR] OSC receive port value must be an integer 0-65535\033[0m")
|
||||
except:
|
||||
print("\033[91m[ERROR] OSC receive port value must be an integer 0-65535\033[0m")
|
||||
|
||||
if self.config.gui_osc_address != values[self.gui_osc_address]:
|
||||
self.config.gui_osc_address = values[self.gui_osc_address]
|
||||
changed = True
|
||||
|
||||
if self.config.gui_osc_recenter_address != values[self.gui_osc_recenter_address]:
|
||||
self.config.gui_osc_recenter_address = values[self.gui_osc_recenter_address]
|
||||
changed = True
|
||||
|
||||
if self.config.gui_osc_recalibrate_address != values[self.gui_osc_recalibrate_address]:
|
||||
self.config.gui_osc_recalibrate_address = values[self.gui_osc_recalibrate_address]
|
||||
changed = True
|
||||
|
||||
if self.config.gui_min_cutoff != values[self.gui_min_cutoff]:
|
||||
self.config.gui_min_cutoff = values[self.gui_min_cutoff]
|
||||
changed = True
|
||||
|
||||
if self.config.gui_speed_coefficient != values[self.gui_speed_coefficient]:
|
||||
self.config.gui_speed_coefficient = values[self.gui_speed_coefficient]
|
||||
changed = True
|
||||
|
||||
if self.config.gui_flip_x_axis_right != values[self.gui_flip_x_axis_right]:
|
||||
self.config.gui_flip_x_axis_right = values[self.gui_flip_x_axis_right]
|
||||
changed = True
|
||||
|
||||
if self.config.gui_flip_x_axis_left != values[self.gui_flip_x_axis_left]:
|
||||
self.config.gui_flip_x_axis_left = values[self.gui_flip_x_axis_left]
|
||||
changed = True
|
||||
|
||||
if self.config.gui_HSFP != int(values[self.gui_HSFP]):
|
||||
self.config.gui_HSFP = int(values[self.gui_HSFP])
|
||||
changed = True
|
||||
@ -384,10 +279,6 @@ class AlgoSettingsWidget:
|
||||
self.config.gui_HSF = values[self.gui_HSF]
|
||||
changed = True
|
||||
|
||||
if self.config.gui_vrc_native != values[self.gui_vrc_native]:
|
||||
self.config.gui_vrc_native = values[self.gui_vrc_native]
|
||||
changed = True
|
||||
|
||||
if self.config.gui_DADDYP != int(values[self.gui_DADDYP]):
|
||||
self.config.gui_DADDYP = int(values[self.gui_DADDYP])
|
||||
changed = True
|
||||
@ -415,10 +306,6 @@ class AlgoSettingsWidget:
|
||||
if self.config.gui_skip_autoradius != values[self.gui_skip_autoradius]:
|
||||
self.config.gui_skip_autoradius = values[self.gui_skip_autoradius]
|
||||
changed = True
|
||||
|
||||
if self.config.gui_update_check != values[self.gui_update_check]:
|
||||
self.config.gui_update_check = values[self.gui_update_check]
|
||||
changed = True
|
||||
|
||||
if self.config.gui_BLINK != values[self.gui_BLINK]:
|
||||
self.config.gui_BLINK = values[self.gui_BLINK]
|
||||
@ -440,10 +327,6 @@ class AlgoSettingsWidget:
|
||||
self.config.gui_HSF_radius = int(values[self.gui_HSF_radius])
|
||||
changed = True
|
||||
|
||||
if self.config.gui_flip_y_axis != values[self.gui_flip_y_axis]:
|
||||
self.config.gui_flip_y_axis = values[self.gui_flip_y_axis]
|
||||
changed = True
|
||||
|
||||
if self.config.gui_BLOB != values[self.gui_BLOB]:
|
||||
self.config.gui_BLOB = values[self.gui_BLOB]
|
||||
changed = True
|
||||
@ -459,22 +342,11 @@ class AlgoSettingsWidget:
|
||||
if self.config.gui_thresh_add != values[self.gui_thresh_add]:
|
||||
self.config.gui_thresh_add = int(values[self.gui_thresh_add])
|
||||
changed = True
|
||||
|
||||
if self.config.gui_eye_falloff != values[self.gui_eye_falloff]:
|
||||
self.config.gui_eye_falloff = values[self.gui_eye_falloff]
|
||||
changed = True
|
||||
|
||||
if self.config.gui_blob_maxsize != values[self.gui_blob_maxsize]:
|
||||
self.config.gui_blob_maxsize = values[self.gui_blob_maxsize]
|
||||
changed = True
|
||||
|
||||
if self.config.gui_ROSC != values[self.gui_ROSC]:
|
||||
self.config.gui_ROSC = values[self.gui_ROSC]
|
||||
changed = True
|
||||
|
||||
if changed:
|
||||
self.main_config.save()
|
||||
# print(changed)
|
||||
# changed = False
|
||||
# print(changed)
|
||||
self.osc_queue.put((EyeId.SETTINGS))
|
||||
self.osc_queue.put(EyeId.ALGOSETTINGS)
|
||||
|
||||
@ -288,7 +288,7 @@ class CameraWidget:
|
||||
elif self.camera.camera_status == CameraState.CONNECTING:
|
||||
window[self.gui_mode_readout].update("Camera Connecting")
|
||||
elif self.camera.camera_status == CameraState.DISCONNECTED:
|
||||
window[self.gui_mode_readout].update("CAMERA DISCONNECTED")
|
||||
window[self.gui_mode_readout].update("Camera Reconnecting...")
|
||||
elif needs_roi_set:
|
||||
window[self.gui_mode_readout].update("Awaiting Eye Crop")
|
||||
elif self.ransac.calibration_frame_counter != None:
|
||||
@ -351,9 +351,13 @@ class CameraWidget:
|
||||
fill_color="black",
|
||||
line_color="white",
|
||||
)
|
||||
if not np.isnan(eye_info.blink):
|
||||
graph.draw_line((-100,eye_info.blink * 100), (-100,100), color="black", width=10)
|
||||
else:
|
||||
graph.draw_line((-100, 0.0 * 100), (-100, 100), color="black", width=10)
|
||||
|
||||
# elif eye_info.blink:
|
||||
# graph.update(background_color="#6f4ca1")
|
||||
if eye_info.blink <= 0.0:
|
||||
graph.update(background_color="#6f4ca1")
|
||||
elif eye_info.info_type == EyeInfoOrigin.FAILURE:
|
||||
graph.update(background_color="red")
|
||||
# Relay information to OSC
|
||||
|
||||
@ -70,6 +70,7 @@ class EyeTrackConfig(BaseModel):
|
||||
right_eye: EyeTrackCameraConfig = EyeTrackCameraConfig()
|
||||
left_eye: EyeTrackCameraConfig = EyeTrackCameraConfig()
|
||||
settings: EyeTrackSettingsConfig = EyeTrackSettingsConfig()
|
||||
# algo_settings: EyeTrackSettingsConfig = EyeTrackSettingsConfig()
|
||||
eye_display_id: EyeId = EyeId.RIGHT
|
||||
|
||||
@staticmethod
|
||||
@ -91,7 +92,7 @@ class EyeTrackConfig(BaseModel):
|
||||
except json.JSONDecodeError:
|
||||
pass
|
||||
if load_config is None:
|
||||
print("using base settings")
|
||||
print("[INFO] using base settings")
|
||||
load_config = EyeTrackConfig()
|
||||
return load_config
|
||||
|
||||
|
||||
@ -9,15 +9,14 @@ from camera_widget import CameraWidget
|
||||
from config import EyeTrackConfig
|
||||
from eye import EyeId
|
||||
from osc import VRChatOSCReceiver, VRChatOSC
|
||||
from settings_widget import SettingsWidget
|
||||
from general_settings_widget import SettingsWidget
|
||||
from algo_settings_widget import AlgoSettingsWidget
|
||||
|
||||
from utils.misc_utils import is_nt
|
||||
|
||||
|
||||
if is_nt:
|
||||
from winotify import Notification
|
||||
os.system('color') # init ANSI color
|
||||
os.system('color') # init ANSI color
|
||||
|
||||
# Random environment variable to speed up webcam opening on the MSMF backend.
|
||||
# https://github.com/opencv/opencv/issues/17687
|
||||
@ -55,7 +54,7 @@ def main():
|
||||
)
|
||||
latestversion = response.json()["name"]
|
||||
if (
|
||||
appversion == latestversion
|
||||
appversion == latestversion
|
||||
): # If what we scraped and hardcoded versions are same, assume we are up to date.
|
||||
print(f"\033[92m[INFO] App is the latest version! [{latestversion}]\033[0m")
|
||||
else:
|
||||
@ -96,12 +95,12 @@ def main():
|
||||
|
||||
settings = [
|
||||
SettingsWidget(EyeId.SETTINGS, config, osc_queue),
|
||||
AlgoSettingsWidget(EyeId.SETTINGS, config, osc_queue),
|
||||
AlgoSettingsWidget(EyeId.ALGOSETTINGS, config, osc_queue),
|
||||
]
|
||||
|
||||
layout = [
|
||||
[
|
||||
sg.Radio(
|
||||
sg.Radio(
|
||||
"Left Eye",
|
||||
"EYESELECTRADIO",
|
||||
background_color="#292929",
|
||||
@ -177,7 +176,7 @@ def main():
|
||||
settings[0].start()
|
||||
if config.eye_display_id in [EyeId.ALGOSETTINGS]:
|
||||
settings[1].start()
|
||||
#self.main_config.eye_display_id
|
||||
# self.main_config.eye_display_id
|
||||
|
||||
# the eye's needs to be running before it is passed to the OSC
|
||||
if config.settings.gui_ROSC:
|
||||
@ -264,6 +263,8 @@ def main():
|
||||
window[ALGO_SETTINGS_NAME].update(visible=False)
|
||||
config.eye_display_id = EyeId.SETTINGS
|
||||
config.save()
|
||||
print("EE")
|
||||
|
||||
|
||||
elif values[ALGO_SETTINGS_RADIO_NAME] and config.eye_display_id != EyeId.ALGOSETTINGS:
|
||||
eyes[0].stop()
|
||||
@ -276,12 +277,17 @@ def main():
|
||||
window[ALGO_SETTINGS_NAME].update(visible=True)
|
||||
config.eye_display_id = EyeId.ALGOSETTINGS
|
||||
config.save()
|
||||
print("Easljghk")
|
||||
|
||||
# Otherwise, render all of our cameras
|
||||
# Otherwise, render all
|
||||
for eye in eyes:
|
||||
if eye.started():
|
||||
eye.render(window, event, values)
|
||||
settings[0].render(window, event, values)
|
||||
for setting in settings:
|
||||
if setting.started():
|
||||
setting.render(window, event, values)
|
||||
# settings[0].render(window, event, values)
|
||||
# settings[1].render(window, event, values)
|
||||
|
||||
|
||||
if __name__ == "__main__":
|
||||
|
||||
@ -99,195 +99,6 @@ class SettingsWidget:
|
||||
tooltip = "Toggle update check on launch.",
|
||||
),
|
||||
],
|
||||
|
||||
|
||||
[
|
||||
sg.Text("Tracking Algorithim Settings:", background_color='#242224'),
|
||||
],
|
||||
|
||||
[sg.Checkbox(
|
||||
"",
|
||||
default=self.config.gui_HSRAC,
|
||||
key=self.gui_HSRAC,
|
||||
background_color='#424042',
|
||||
tooltip = "Our flagship algoritim, utilizing both HSF and RANSAC for best tracking quality and lighting resistance.",
|
||||
),
|
||||
sg.Combo(['1','2','3','4'],
|
||||
default_value=self.config.gui_HSRACP,
|
||||
key=self.gui_HSRACP,
|
||||
background_color='#424042',
|
||||
text_color='white',
|
||||
button_arrow_color= "black",
|
||||
button_background_color = "#6f4ca1",
|
||||
tooltip = "Select the priority of eyetracking algorithims.",
|
||||
),
|
||||
sg.Text("HSRAC", background_color='#424042'),
|
||||
# ],
|
||||
# [
|
||||
sg.Checkbox(
|
||||
"",
|
||||
default=self.config.gui_HSF,
|
||||
key=self.gui_HSF,
|
||||
background_color='#424042',
|
||||
tooltip = "HSF Is a new, lower resolution tracking algorithim that provides excelent resilancy to lighting conditions and great speed.",
|
||||
),
|
||||
sg.Combo(['1','2','3','4','5'],
|
||||
default_value=self.config.gui_HSFP,
|
||||
key=self.gui_HSFP,
|
||||
background_color='#424042',
|
||||
text_color='white',
|
||||
button_arrow_color= "black",
|
||||
button_background_color = "#6f4ca1",
|
||||
tooltip = "Select the priority of eyetracking algorithims.",
|
||||
),
|
||||
sg.Text("Haar Surround Feature", background_color='#424042'),
|
||||
],
|
||||
[sg.Checkbox(
|
||||
"",
|
||||
default=self.config.gui_DADDY,
|
||||
key=self.gui_DADDY,
|
||||
background_color='#424042',
|
||||
tooltip = "DADDY Uses a Deep learning algorithm. This has a big CPU usage impact.",
|
||||
),
|
||||
sg.Combo(['1','2','3','4','5'],
|
||||
default_value=self.config.gui_DADDYP,
|
||||
key=self.gui_DADDYP,
|
||||
background_color='#424042',
|
||||
text_color='white',
|
||||
button_arrow_color= "black",
|
||||
button_background_color = "#6f4ca1",
|
||||
tooltip = "Select the priority of eyetracking algorithims.",
|
||||
),
|
||||
sg.Text("DADDY", background_color='#424042'),
|
||||
# ],
|
||||
# [
|
||||
sg.Checkbox(
|
||||
"",
|
||||
default=self.config.gui_RANSAC3D,
|
||||
key=self.gui_RANSAC3D,
|
||||
background_color='#424042',
|
||||
tooltip = "RANSAC3D provides good tracking quality, however does not do well in bad lighting conditions.",
|
||||
),
|
||||
sg.Combo(['1','2','3','4','5'],
|
||||
default_value=self.config.gui_RANSAC3DP,
|
||||
key=self.gui_RANSAC3DP,
|
||||
background_color='#424042',
|
||||
text_color='white',
|
||||
button_arrow_color= "black",
|
||||
button_background_color = "#6f4ca1",
|
||||
tooltip = "Select the priority of eyetracking algorithims.",
|
||||
),
|
||||
sg.Text("RANSAC 3D", background_color='#424042'),
|
||||
],
|
||||
[
|
||||
sg.Checkbox(
|
||||
"",
|
||||
default=self.config.gui_BLOB,
|
||||
key=self.gui_BLOB,
|
||||
background_color='#424042',
|
||||
tooltip = "Blob tracking is the oldest and worst tracking algorithm, it provides fast, though sometimes innaccurate tracking.",
|
||||
),
|
||||
sg.Combo(['1','2','3','4','5'],
|
||||
default_value=self.config.gui_BLOBP,
|
||||
key=self.gui_BLOBP,
|
||||
background_color='#424042',
|
||||
text_color='white',
|
||||
button_arrow_color= "black",
|
||||
button_background_color = "#6f4ca1",
|
||||
tooltip = "Select the priority of eyetracking algorithims.",
|
||||
),
|
||||
sg.Text("Blob", background_color='#424042'),
|
||||
],
|
||||
[
|
||||
sg.Checkbox(
|
||||
"Intensity Based Openness",
|
||||
default=self.config.gui_IBO,
|
||||
key=self.gui_IBO,
|
||||
background_color='#424042',
|
||||
),
|
||||
sg.Checkbox(
|
||||
"Bianary Blink Algo",
|
||||
default=self.config.gui_BLINK,
|
||||
key=self.gui_BLINK,
|
||||
background_color='#424042',
|
||||
),
|
||||
],
|
||||
[
|
||||
sg.Checkbox(
|
||||
"Left Eye Circle crop",
|
||||
default=self.config.gui_circular_crop_left,
|
||||
key=self.gui_circular_crop_left,
|
||||
background_color='#424042',
|
||||
),
|
||||
sg.Checkbox(
|
||||
"Right Eye Circle crop",
|
||||
default=self.config.gui_circular_crop_right,
|
||||
key=self.gui_circular_crop_right,
|
||||
background_color='#424042',
|
||||
),
|
||||
],
|
||||
|
||||
[sg.Checkbox(
|
||||
"HSF: Skip Auto Radius",
|
||||
default=self.config.gui_skip_autoradius,
|
||||
key=self.gui_skip_autoradius,
|
||||
background_color='#424042',
|
||||
tooltip = "To gain more control and possibly better tracking quality of HSF, please disable auto radius to enable manual adjustment.",
|
||||
),
|
||||
|
||||
sg.Text("HSF Radius:", background_color='#424042'),
|
||||
sg.Slider(
|
||||
range=(1, 50),
|
||||
default_value=self.config.gui_HSF_radius,
|
||||
orientation="h",
|
||||
key=self.gui_HSF_radius,
|
||||
background_color='#424042',
|
||||
tooltip = "Adjusts the radius paramater for HSF. Only adjust if you are having tracking issues.",
|
||||
),
|
||||
],
|
||||
[sg.Text("RANSAC Thresh Add", background_color='#424042'),
|
||||
sg.Slider(
|
||||
range=(1, 50),
|
||||
default_value=self.config.gui_thresh_add,
|
||||
orientation="h",
|
||||
key=self.gui_thresh_add,
|
||||
background_color='#424042',
|
||||
tooltip = "Adjusts the ammount of threshold to add to RANSAC. Usefull for fine tuning your setup.",
|
||||
),
|
||||
# ],
|
||||
# [
|
||||
sg.Text("Blob Threshold", background_color='#424042'), #TODO make this for right and left eyes? I dont know how vital that is..
|
||||
sg.Slider(
|
||||
range=(0, 110),
|
||||
default_value=self.config.gui_threshold,
|
||||
orientation="h",
|
||||
key=self.gui_threshold_slider,
|
||||
background_color='#424042',
|
||||
tooltip = "Adjusts the threshold for blob tracking.",
|
||||
),
|
||||
],
|
||||
[sg.Text("Min Blob Size:", background_color='#424042'),
|
||||
sg.Slider(
|
||||
range=(1, 50),
|
||||
default_value=self.config.gui_blob_minsize,
|
||||
orientation="h",
|
||||
key=self.gui_blob_minsize,
|
||||
background_color='#424042',
|
||||
tooltip = "Minimun size a blob has to be for blob tracking.",
|
||||
),
|
||||
|
||||
sg.Text("Max Blob Size:", background_color='#424042'),
|
||||
sg.Slider(
|
||||
range=(1, 50),
|
||||
default_value=self.config.gui_blob_maxsize,
|
||||
orientation="h",
|
||||
key=self.gui_blob_maxsize,
|
||||
background_color='#424042',
|
||||
tooltip = "Maximum size a blob can be for blob tracking.",
|
||||
),
|
||||
|
||||
|
||||
],
|
||||
[
|
||||
sg.Text("One Euro Filter Paramaters:", background_color='#242224'),
|
||||
],
|
||||
@ -456,105 +267,26 @@ class SettingsWidget:
|
||||
self.config.gui_flip_x_axis_left = values[self.gui_flip_x_axis_left]
|
||||
changed = True
|
||||
|
||||
if self.config.gui_HSFP != int(values[self.gui_HSFP]):
|
||||
self.config.gui_HSFP = int(values[self.gui_HSFP])
|
||||
changed = True
|
||||
|
||||
if self.config.gui_HSF != values[self.gui_HSF]:
|
||||
self.config.gui_HSF = values[self.gui_HSF]
|
||||
changed = True
|
||||
|
||||
if self.config.gui_vrc_native != values[self.gui_vrc_native]:
|
||||
self.config.gui_vrc_native = values[self.gui_vrc_native]
|
||||
changed = True
|
||||
|
||||
if self.config.gui_DADDYP != int(values[self.gui_DADDYP]):
|
||||
self.config.gui_DADDYP = int(values[self.gui_DADDYP])
|
||||
changed = True
|
||||
|
||||
if self.config.gui_DADDY != values[self.gui_DADDY]:
|
||||
self.config.gui_DADDY = values[self.gui_DADDY]
|
||||
changed = True
|
||||
|
||||
if self.config.gui_RANSAC3DP != int(values[self.gui_RANSAC3DP]): #TODO check that priority order is unique/auto fix it.
|
||||
self.config.gui_RANSAC3DP = int(values[self.gui_RANSAC3DP])
|
||||
changed = True
|
||||
|
||||
if self.config.gui_RANSAC3D != values[self.gui_RANSAC3D]:
|
||||
self.config.gui_RANSAC3D = values[self.gui_RANSAC3D]
|
||||
changed = True
|
||||
|
||||
if self.config.gui_HSRACP != int(values[self.gui_HSRACP]):
|
||||
self.config.gui_HSRACP = int(values[self.gui_HSRACP])
|
||||
changed = True
|
||||
|
||||
if self.config.gui_HSRAC != values[self.gui_HSRAC]:
|
||||
self.config.gui_HSRAC = values[self.gui_HSRAC]
|
||||
changed = True
|
||||
|
||||
if self.config.gui_skip_autoradius != values[self.gui_skip_autoradius]:
|
||||
self.config.gui_skip_autoradius = values[self.gui_skip_autoradius]
|
||||
changed = True
|
||||
|
||||
if self.config.gui_update_check != values[self.gui_update_check]:
|
||||
self.config.gui_update_check = values[self.gui_update_check]
|
||||
changed = True
|
||||
|
||||
if self.config.gui_BLINK != values[self.gui_BLINK]:
|
||||
self.config.gui_BLINK = values[self.gui_BLINK]
|
||||
changed = True
|
||||
|
||||
if self.config.gui_IBO != values[self.gui_IBO]:
|
||||
self.config.gui_IBO = values[self.gui_IBO]
|
||||
changed = True
|
||||
|
||||
if self.config.gui_circular_crop_left != values[self.gui_circular_crop_left]:
|
||||
self.config.gui_circular_crop_left = values[self.gui_circular_crop_left]
|
||||
changed = True
|
||||
|
||||
if self.config.gui_circular_crop_right != values[self.gui_circular_crop_right]:
|
||||
self.config.gui_circular_crop_right = values[self.gui_circular_crop_right]
|
||||
changed = True
|
||||
|
||||
if self.config.gui_HSF_radius != int(values[self.gui_HSF_radius]):
|
||||
self.config.gui_HSF_radius = int(values[self.gui_HSF_radius])
|
||||
changed = True
|
||||
|
||||
if self.config.gui_flip_y_axis != values[self.gui_flip_y_axis]:
|
||||
self.config.gui_flip_y_axis = values[self.gui_flip_y_axis]
|
||||
changed = True
|
||||
|
||||
if self.config.gui_BLOB != values[self.gui_BLOB]:
|
||||
self.config.gui_BLOB = values[self.gui_BLOB]
|
||||
changed = True
|
||||
|
||||
if self.config.gui_BLOBP != int(values[self.gui_BLOBP]):
|
||||
self.config.gui_BLOBP = int(values[self.gui_BLOBP])
|
||||
changed = True
|
||||
|
||||
if self.config.gui_threshold != values[self.gui_threshold_slider]:
|
||||
self.config.gui_threshold = int(values[self.gui_threshold_slider])
|
||||
changed = True
|
||||
|
||||
if self.config.gui_thresh_add != values[self.gui_thresh_add]:
|
||||
self.config.gui_thresh_add = int(values[self.gui_thresh_add])
|
||||
changed = True
|
||||
|
||||
if self.config.gui_eye_falloff != values[self.gui_eye_falloff]:
|
||||
self.config.gui_eye_falloff = values[self.gui_eye_falloff]
|
||||
changed = True
|
||||
|
||||
if self.config.gui_blob_maxsize != values[self.gui_blob_maxsize]:
|
||||
self.config.gui_blob_maxsize = values[self.gui_blob_maxsize]
|
||||
changed = True
|
||||
|
||||
if self.config.gui_ROSC != values[self.gui_ROSC]:
|
||||
self.config.gui_ROSC = values[self.gui_ROSC]
|
||||
changed = True
|
||||
|
||||
if changed:
|
||||
self.main_config.save()
|
||||
# print(changed)
|
||||
# changed = False
|
||||
# print(changed)
|
||||
self.osc_queue.put((EyeId.SETTINGS))
|
||||
@ -13,6 +13,7 @@ class EyeId(IntEnum):
|
||||
LEFT = 1
|
||||
BOTH = 2
|
||||
SETTINGS = 3
|
||||
ALGOSETTINGS = 4
|
||||
from config import EyeTrackConfig
|
||||
|
||||
se = False
|
||||
|
||||
Loading…
Reference in New Issue
Block a user