EYE OPENESS

This commit is contained in:
Prohurtz 2023-01-22 19:41:33 -06:00
parent 2573d04ce8
commit 56392bd65b
3 changed files with 35 additions and 18 deletions

View File

@ -31,7 +31,7 @@ SETTINGS_RADIO_NAME = '-SETTINGSRADIO-'
page_url = 'https://github.com/RedHawk989/EyeTrackVR/releases/latest' page_url = 'https://github.com/RedHawk989/EyeTrackVR/releases/latest'
appversion = "0.1.7.2" appversion = "0.2.0"
def open_url(): def open_url():
try: try:

View File

@ -1,7 +1,17 @@
import pandas as pd import pandas as pd
import numpy as np import numpy as np
import cv2 import cv2
from pythonosc import udp_client
OSCip="127.0.0.1"
OSCport=9000 #VR Chat OSC port
client = udp_client.SimpleUDPClient(OSCip, OSCport)
#higher intensity means more closed/ more white/less pupil #higher intensity means more closed/ more white/less pupil
# HOW THIS WORKS: # HOW THIS WORKS:
@ -44,11 +54,18 @@ def intense(x, y, frame):
data.to_csv(fname, encoding='utf-8', index=False) #save file since we made a change data.to_csv(fname, encoding='utf-8', index=False) #save file since we made a change
print("create max", intensity) print("create max", intensity)
try:
maxp = data.at[dfb, 'intensity'] maxp = data.at[dfb, 'intensity']
minp = data.at[0, 'intensity'] minp = data.at[0, 'intensity']
#eyeopen = (intensity - minp) / (maxp - minp)
eyeopen = (intensity - maxp) / (minp - maxp) eyeopen = (intensity - maxp) / (minp - maxp)
eyeopen = 1 - eyeopen
# eyeopen = max(0.0, min(1.0, eyeopen))
print(f"EYEOPEN: {eyeopen}") print(f"EYEOPEN: {eyeopen}")
client.send_message("/avatar/parameters/RightEyeLidExpandedSqueeze", float(eyeopen)) # open r
client.send_message("/avatar/parameters/LeftEyeLidExpandedSqueeze", float(eyeopen))
except:
print('e')
#e = data.at[dfb,'intensity'] #find intensity with value #e = data.at[dfb,'intensity'] #find intensity with value

View File

@ -51,14 +51,14 @@ class VRChatOSC:
self.client.send_message("/avatar/parameters/RightEyeX", eye_info.x) self.client.send_message("/avatar/parameters/RightEyeX", eye_info.x)
self.client.send_message("/avatar/parameters/EyesY", eye_info.y) self.client.send_message("/avatar/parameters/EyesY", eye_info.y)
self.client.send_message("/avatar/parameters/RightEyeLid", float(0))# old param open right self.client.send_message("/avatar/parameters/RightEyeLid", float(0))# old param open right
self.client.send_message("/avatar/parameters/RightEyeLidExpandedSqueeze", float(0.8)) # open r #self.client.send_message("/avatar/parameters/RightEyeLidExpandedSqueeze", float(0.8)) # open r
self.client.send_message("/avatar/parameters/LeftEyeLid", float(0))# old param open left self.client.send_message("/avatar/parameters/LeftEyeLid", float(0))# old param open left
self.client.send_message("/avatar/parameters/LeftEyeLidExpandedSqueeze", float(0.8)) # open left eye # self.client.send_message("/avatar/parameters/LeftEyeLidExpandedSqueeze", float(0.8)) # open left eye
if self.config.gui_blink_sync and not rb and not lb: if self.config.gui_blink_sync and not rb and not lb:
self.client.send_message("/avatar/parameters/RightEyeLid", float(0))# old param open right self.client.send_message("/avatar/parameters/RightEyeLid", float(0))# old param open right
self.client.send_message("/avatar/parameters/RightEyeLidExpandedSqueeze", float(0.8)) # open r # self.client.send_message("/avatar/parameters/RightEyeLidExpandedSqueeze", float(0.8)) # open r
self.client.send_message("/avatar/parameters/LeftEyeLid", float(0))# old param open left self.client.send_message("/avatar/parameters/LeftEyeLid", float(0))# old param open left
self.client.send_message("/avatar/parameters/LeftEyeLidExpandedSqueeze", float(0.8)) # open left eye # self.client.send_message("/avatar/parameters/LeftEyeLidExpandedSqueeze", float(0.8)) # open left eye
else: else:
if eye_id in [EyeId.RIGHT]: if eye_id in [EyeId.RIGHT]:
@ -69,7 +69,7 @@ class VRChatOSC:
self.client.send_message("/avatar/parameters/RightEyeX", eye_info.x) self.client.send_message("/avatar/parameters/RightEyeX", eye_info.x)
if not self.config.gui_blink_sync or self.config.gui_blink_sync and not lb: if not self.config.gui_blink_sync or self.config.gui_blink_sync and not lb:
self.client.send_message("/avatar/parameters/RightEyeLid", float(0))# old param open right self.client.send_message("/avatar/parameters/RightEyeLid", float(0))# old param open right
self.client.send_message("/avatar/parameters/RightEyeLidExpandedSqueeze", float(0.8)) # open right eye # self.client.send_message("/avatar/parameters/RightEyeLidExpandedSqueeze", float(0.8)) # open right eye
if eye_id in [EyeId.LEFT]: if eye_id in [EyeId.LEFT]:
yl = eye_info.y yl = eye_info.y
@ -79,7 +79,7 @@ class VRChatOSC:
self.client.send_message("/avatar/parameters/LeftEyeX", eye_info.x) self.client.send_message("/avatar/parameters/LeftEyeX", eye_info.x)
if not self.config.gui_blink_sync or self.config.gui_blink_sync and not rb: if not self.config.gui_blink_sync or self.config.gui_blink_sync and not rb:
self.client.send_message("/avatar/parameters/LeftEyeLid", float(0))# old param open left self.client.send_message("/avatar/parameters/LeftEyeLid", float(0))# old param open left
self.client.send_message("/avatar/parameters/LeftEyeLidExpandedSqueeze", float(0.8)) # open left eye # self.client.send_message("/avatar/parameters/LeftEyeLidExpandedSqueeze", float(0.8)) # open left eye
if (yr != 621 and yl != 621) and (lb == False and rb == False): if (yr != 621 and yl != 621) and (lb == False and rb == False):
y = (yr + yl) / 2 y = (yr + yl) / 2
@ -95,8 +95,8 @@ class VRChatOSC:
for i in range(4): for i in range(4):
self.client.send_message("/avatar/parameters/RightEyeLid", float(1)) #close eye self.client.send_message("/avatar/parameters/RightEyeLid", float(1)) #close eye
self.client.send_message("/avatar/parameters/LeftEyeLid", float(1)) self.client.send_message("/avatar/parameters/LeftEyeLid", float(1))
self.client.send_message("/avatar/parameters/RightEyeLidExpandedSqueeze", float(0)) # close eye # self.client.send_message("/avatar/parameters/RightEyeLidExpandedSqueeze", float(0)) # close eye
self.client.send_message("/avatar/parameters/LeftEyeLidExpandedSqueeze", float(0)) # self.client.send_message("/avatar/parameters/LeftEyeLidExpandedSqueeze", float(0))
last_blink = time.time() - last_blink last_blink = time.time() - last_blink
else: else:
@ -105,8 +105,8 @@ class VRChatOSC:
for i in range(4): for i in range(4):
self.client.send_message("/avatar/parameters/RightEyeLid", float(1)) #close eye self.client.send_message("/avatar/parameters/RightEyeLid", float(1)) #close eye
self.client.send_message("/avatar/parameters/LeftEyeLid", float(1)) self.client.send_message("/avatar/parameters/LeftEyeLid", float(1))
self.client.send_message("/avatar/parameters/RightEyeLidExpandedSqueeze", float(0)) # close eye # self.client.send_message("/avatar/parameters/RightEyeLidExpandedSqueeze", float(0)) # close eye
self.client.send_message("/avatar/parameters/LeftEyeLidExpandedSqueeze", float(0)) # self.client.send_message("/avatar/parameters/LeftEyeLidExpandedSqueeze", float(0))
last_blink = time.time() - last_blink last_blink = time.time() - last_blink
if not self.config.gui_eye_falloff: if not self.config.gui_eye_falloff:
@ -116,7 +116,7 @@ class VRChatOSC:
if last_blink > 0.7: if last_blink > 0.7:
for i in range(5): for i in range(5):
self.client.send_message("/avatar/parameters/LeftEyeLid", float(1)) self.client.send_message("/avatar/parameters/LeftEyeLid", float(1))
self.client.send_message("/avatar/parameters/LeftEyeLidExpandedSqueeze", float(0)) # self.client.send_message("/avatar/parameters/LeftEyeLidExpandedSqueeze", float(0))
last_blink = time.time() - last_blink last_blink = time.time() - last_blink
@ -125,7 +125,7 @@ class VRChatOSC:
if last_blink > 0.7: if last_blink > 0.7:
for i in range(5): for i in range(5):
self.client.send_message("/avatar/parameters/RightEyeLid", float(1)) self.client.send_message("/avatar/parameters/RightEyeLid", float(1))
self.client.send_message("/avatar/parameters/RightEyeLidExpandedSqueeze", float(0)) # close eye # self.client.send_message("/avatar/parameters/RightEyeLidExpandedSqueeze", float(0)) # close eye
last_blink = time.time() - last_blink last_blink = time.time() - last_blink
else: else:
@ -138,16 +138,16 @@ class VRChatOSC:
self.client.send_message("/avatar/parameters/RightEyeX", sx) self.client.send_message("/avatar/parameters/RightEyeX", sx)
self.client.send_message("/avatar/parameters/EyesY", sy) self.client.send_message("/avatar/parameters/EyesY", sy)
self.client.send_message("/avatar/parameters/RightEyeLid", float(0))# old param open right self.client.send_message("/avatar/parameters/RightEyeLid", float(0))# old param open right
self.client.send_message("/avatar/parameters/RightEyeLidExpandedSqueeze", float(0.8)) # open r # self.client.send_message("/avatar/parameters/RightEyeLidExpandedSqueeze", float(0.8)) # open r
self.client.send_message("/avatar/parameters/LeftEyeLid", float(0))# old param open left self.client.send_message("/avatar/parameters/LeftEyeLid", float(0))# old param open left
self.client.send_message("/avatar/parameters/LeftEyeLidExpandedSqueeze", float(0.8)) # open left eye # self.client.send_message("/avatar/parameters/LeftEyeLidExpandedSqueeze", float(0.8)) # open left eye
if rb and lb: # If both eyes are closed, blink if rb and lb: # If both eyes are closed, blink
if last_blink > 0.5: if last_blink > 0.5:
for i in range(4): for i in range(4):
self.client.send_message("/avatar/parameters/RightEyeLid", float(1)) #close eye self.client.send_message("/avatar/parameters/RightEyeLid", float(1)) #close eye
self.client.send_message("/avatar/parameters/LeftEyeLid", float(1)) self.client.send_message("/avatar/parameters/LeftEyeLid", float(1))
self.client.send_message("/avatar/parameters/RightEyeLidExpandedSqueeze", float(0)) # close eye # self.client.send_message("/avatar/parameters/RightEyeLidExpandedSqueeze", float(0)) # close eye
self.client.send_message("/avatar/parameters/LeftEyeLidExpandedSqueeze", float(0)) # self.client.send_message("/avatar/parameters/LeftEyeLidExpandedSqueeze", float(0))
last_blink = time.time() - last_blink last_blink = time.time() - last_blink