首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Tobii-Eyetracker with python,无法打印凝视数据

Tobii-Eyetracker with python,无法打印凝视数据
EN

Stack Overflow用户
提问于 2020-03-01 07:34:55
回答 1查看 87关注 0票数 1

我正在从事一个项目,需要在屏幕上的用户的眼睛的位置。我遵循了tobii-sdk文档,它帮助创建了一个非常基本的程序,可以从我的眼球跟踪器打印凝视数据。然而,当我运行代码时,凝视数据没有打印出来,我不确定为什么。

代码语言:javascript
复制
import time
import tobii_research as tr

found_eyetrackers = tr.find_all_eyetrackers()

my_eyetracker = found_eyetrackers[0]
print("Address: " + my_eyetracker.address)
print("Model: " + my_eyetracker.model)
print("Name (It's OK if this is empty): " + my_eyetracker.device_name)
print("Serial number: " + my_eyetracker.serial_number)

def gaze_data_callback(gaze_data):
    # Print gaze points of left and right eye
    print("Left eye: ({gaze_left_eye}) \t Right eye: ({gaze_right_eye})".format(
        gaze_left_eye=gaze_data['left_gaze_point_on_display_area'],
        gaze_right_eye=gaze_data['right_gaze_point_on_display_area']))

my_eyetracker.subscribe_to(tr.EYETRACKER_GAZE_DATA, gaze_data_callback, as_dictionary=True)
time.sleep(5)
my_eyetracker.unsubscribe_from(tr.EYETRACKER_GAZE_DATA, gaze_data_callback)

我得到的输出是:

代码语言:javascript
复制
Address: MY-ADDRESS
Model: IS4_Large_Peripheral
Name (It's OK if this is empty):
Serial number: MY-SERIAL NUMBER

EN

回答 1

Stack Overflow用户

发布于 2021-06-10 09:20:42

当我使用这个回调函数时:

代码语言:javascript
复制
def gazeDataCallback(self,startGazeData):
    print(startGazeData)

我得到以下格式的输出:

代码语言:javascript
复制
{'device_time_stamp': 1623291632673972, 'system_time_stamp': 34428318423, 
'left_gaze_point_on_display_area': (nan, nan), 
'left_gaze_point_in_user_coordinate_system': (nan, nan, nan), 
'left_gaze_point_validity': 0, 'left_pupil_diameter': nan,    
'left_pupil_validity': 0, 
'left_gaze_origin_in_user_coordinate_system': (nan, nan, nan), 
'left_gaze_origin_in_trackbox_coordinate_system': (nan, nan, nan), 
'left_gaze_origin_validity': 0, 
'right_gaze_point_on_display_area': (nan, nan), 
'right_gaze_point_in_user_coordinate_system': (nan, nan, nan), 
'right_gaze_point_validity': 0, 
'right_pupil_diameter': nan, 
'right_pupil_validity': 0, 
'right_gaze_origin_in_user_coordinate_system': (nan, nan, nan), 
'right_gaze_origin_in_trackbox_coordinate_system': (nan, nan, nan), 
'right_gaze_origin_validity': 0}

我怀疑你需要做的是用正确的键查询字典--即

代码语言:javascript
复制
print(gaze_data['left_gaze_point_on_display_area'])

而不是

代码语言:javascript
复制
print({gaze_left_eye})
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/60470644

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档