feat: no gui fixes (lid not working)

This commit is contained in:
Prohurtz 2024-07-29 18:36:26 -05:00
parent d82942967a
commit 9134337290
5 changed files with 31 additions and 11 deletions

View File

@ -34,7 +34,6 @@ from eye_processor import EyeProcessor, EyeInfoOrigin
from queue import Queue, Empty
from camera import Camera, CameraState
import cv2
from osc.OSCMessage import OSCMessageType, OSCMessage
from utils.misc_utils import PlaySound, SND_FILENAME, SND_ASYNC, resource_path
import numpy as np
@ -103,6 +102,7 @@ class CameraWidget:
self.capture_queue,
self.image_queue,
self.eye_id,
self.osc_queue
)
self.camera_status_queue = Queue()
@ -692,12 +692,12 @@ class CameraWidget:
elif eye_info.info_type == EyeInfoOrigin.FAILURE:
graph.update(background_color="red")
# Relay information to OSC
if eye_info.info_type != EyeInfoOrigin.FAILURE:
osc_message = OSCMessage(
type=OSCMessageType.EYE_INFO,
data=(self.eye_id, eye_info),
)
self.osc_queue.put(osc_message)
# if eye_info.info_type != EyeInfoOrigin.FAILURE:
# osc_message = OSCMessage(
# type=OSCMessageType.EYE_INFO,
# data=(self.eye_id, eye_info),
# )
# self.osc_queue.put(osc_message)
except Empty:
pass

View File

@ -52,7 +52,7 @@ from eye import EyeInfo, EyeInfoOrigin
from intensity_based_openness import *
from ellipse_based_pupil_dilation import *
from AHSF import *
from osc.OSCMessage import OSCMessageType, OSCMessage
def run_once(f):
def wrapper(*args, **kwargs):
@ -81,6 +81,7 @@ class EyeProcessor:
capture_queue_incoming: "queue.Queue(maxsize=2)",
image_queue_outgoing: "queue.Queue(maxsize=2)",
eye_id,
osc_queue: queue.Queue,
):
self.main_config = EyeTrackSettingsConfig
self.config = config
@ -96,6 +97,7 @@ class EyeProcessor:
self.filterlist = []
self.left_eye_data = [(0.351, 0.399, 1), (0.352, 0.400, 1)] # Example data
self.right_eye_data = [(0.351, 0.399, 1), (0.352, 0.400, 1)] # Example data
self.osc_queue = osc_queue
# Cross algo state
self.lkg_projected_sphere = None
@ -166,6 +168,7 @@ class EyeProcessor:
self.avg_velocity = 0.0
self.angle = 621
try:
min_cutoff = float(self.settings.gui_min_cutoff) # 0.0004
beta = float(self.settings.gui_speed_coefficient) # 0.9
@ -379,11 +382,26 @@ class EyeProcessor:
self.avg_velocity,
),
)
if self.settings.gui_RANSACBLINK and self.eyeopen == 0.0:
pass
else:
self.eyeopen = 0.8
osc_message = OSCMessage(
type=OSCMessageType.EYE_INFO,
data=(self.eye_id, EyeInfo(
self.current_algo,
self.out_x,
self.out_y,
self.pupil_dilation,
self.eyeopen,
self.avg_velocity,
)),
)
self.osc_queue.put(osc_message)
def BLINKM(self):
self.eyeopen = BLINK(self)
@ -720,6 +738,7 @@ class EyeProcessor:
f = True
while True:
# f = True
# print(self.capture_queue_incoming.qsize())
# Check to make sure we haven't been requested to close

View File

@ -428,8 +428,8 @@ def main():
settings[0].stop()
settings[1].stop()
settings[2].stop()
window[key_manager.RIGHT_EYE_NAME].update(visible=False)
window[key_manager.LEFT_EYE_NAME].update(visible=False)
# window[key_manager.RIGHT_EYE_NAME].update(visible=False)
# window[key_manager.LEFT_EYE_NAME].update(visible=False)
window[key_manager.SETTINGS_NAME].update(visible=False)
window[key_manager.VRCFT_MODULE_SETTINGS_NAME].update(visible=False)
window[key_manager.ALGO_SETTINGS_NAME].update(visible=False)

View File

@ -280,7 +280,7 @@ class LEAP_C(object):
self.openlist.append(d)
try:
per = (d - normal_open) / (np.percentile(self.openlist, 1.5) - normal_open)
per = (d - normal_open) / (np.percentile(self.openlist, 1.7) - normal_open)
# oldper = (d - max(self.openlist)) / (
# min(self.openlist) - max(self.openlist)

View File

@ -172,6 +172,7 @@ def overlay_calibrate_3d(self):
class cal:
def cal_osc(self, cx, cy, angle):
#print(self.eye_id)
if cx == None or cy == None: