背景:
多年来,我一直在应对慢性 RSI,并且正在研究各种不用手控制计算机的选项。 Linux 已经成为我的操作系统几年了,如果可以的话我真的不想回到 Windows,但如果我很快找不到任何东西,我将不得不数我的筹码,因为我已经花了看了好几个小时。
这肉:
特别是,我正在寻找带有头部跟踪的眼睛注视跟踪(最好在同一程序中),但我会考虑将手势技术作为补充程序。任何价格都可以,但免费和开源总是好的。如果您有任何推荐的跟踪硬件,请提供您的建议。由于当您注视固定点时,眼睛会自然地抖动(或扫视),因此该技术的优点是眼睛注视跟踪的速度和头部跟踪的单像素精度。我将使用它和语音识别堆栈来控制我的计算机甚至代码。
我发现 Precision Gaze Mouse 可与 Eviacam 配合使用,但不幸的是 Precison Gaze Mouse 目前仅适用于 Windows。我正在寻找类似这样的组合。下面链接中的 Precision Gaze Mouse 视频演示了其工作原理。以下是参考链接:
答案1
别抱太大希望,但希望你一切都好。我想为 Linux 上的 Tobii 眼动仪(Tobii 4C 和 Tobii 5)制作一个类似的免费软件。我还希望把它放在 Raspberry Pi 上,让 Raspberry Pi 假装成鼠标(Linux 小工具、USB On-The-Go)。但在发了很多封电子邮件后,他们说我只能将其设为专有,并且我需要购买许可证,因为他们只针对 WinDoWS 游戏玩家,我放弃了。
有一个叫做 Talon 的东西,它有 Tobii 支持:https://talonvoice.com 我没有使用过它,它是一个庞大的专有软件包,但它确实很重要。
我把希望寄托在 Tobii 上,因为它们价格实惠,而且大多数视线追踪器都是用于学术目的。这是一个比较:https://thume.ca/2016/03/24/eye-tracker-reviews-pupil-labs-tobii-eyex-eye-tribe-tobii-x2-30
我没有找到任何使用网络摄像头的良好视线跟踪实现,但我觉得这是可以做到的。我发现最好的是这样的:https://github.com/antoinelame/GazeTracking 但它更多地只是眼球追踪和“向左看”或“向右看”,没有目光指向屏幕投影。
我使用自己的设置使用语音而不是键盘:https://git.sr.ht/~geb/numen 我不使用鼠标,只使用以键盘为中心的程序,例如 Vim 文本编辑器和 qutebrowser 网络浏览器。我们的计划是让它在 Raspberry Pi 上运行,这样你就可以通过插入 Pi 来使用任何计算机。我只是想对需要指针设备的事情进行视线跟踪,例如绘制图表。
也许我在这里说的一些话会有帮助。
答案2
我也加入了 RSI,自 2022 年 3 月起我就将 talon 与 tobii 4c 一起使用。这是一个免费的含电池套餐,社区不断壮大。就我而言,我对此感到非常高兴,因为它的设置速度非常快,而且我可以再次使用我的 Linux 系统。我仍在调整我的设置,但肯定有一些我不喜欢的地方。但在我看来,它的用户体验(包括 python 脚本)超过了平均水平,并且是迄今为止我所知道的最好的开始。您也可以仅将 talon 用作 tobii 硬件的接口,仅此而已:
# this is beta-API, the free version differs a tiny bit in its naming; leave a comment if you're interested
import pickle
from talon.plugins.eye_mouse_2 import BaseControlMouse
class StreamingMouse(BaseControlMouse):
def update(self, tracker, screen, frame):
# ~70 Hz on my system
socket.send(
pickle.dumps(
(
frame.gaze,
frame.head,
frame.gaze_frame.ts,
frame.gaze_frame.left.gaze.x,
frame.gaze_frame.left.gaze.y,
frame.gaze_frame.right.gaze.x,
frame.gaze_frame.right.gaze.y,
)
)
)
streaming_mouse = StreamingMouse()
streaming_mouse.start()
https://github.com/adabru/speech/blob/main/adabru_talon/code/eyeput.py