Eye Tracking 库可轻松应用于您的项目
这是一个 Python 库(3.10+),提供基于摄像头的眼动追踪系统。它能实时给出瞳孔的精确位置和视线方向。
克隆项目:
git clone https://github.com/antoinelame/GazeTracking.git
cd GazeTracking需要 Python 3.10+。从以下四个选项中选择一个。
标准方式。适用于所有环境。
python -m venv .venv
source .venv/bin/activate # On Windows: .venv\Scripts\activate
pip install -e .pip 的更快替代方案。先安装 uv。
uv venv
uv pip install -e .如果你已经在使用 conda。
conda env create --file environment.yml
conda activate GazeTracking在隔离容器中运行。仅限 Linux(使用你的摄像头和显示器)。
./build_and_run.sh安装 dlib 遇到问题? 通常 wheel 包可以正常安装。如果 pip 尝试从源码编译,请先安装 CMake:
brew install cmake(macOS)或sudo apt install cmake build-essential(Ubuntu)。
python example.pyimport cv2
from gaze_tracking import GazeTracking
gaze = GazeTracking()
webcam = cv2.VideoCapture(0)
while True:
_, frame = webcam.read()
gaze.refresh(frame)
new_frame = gaze.annotated_frame()
text = ""
if gaze.is_right():
text = "Looking right"
elif gaze.is_left():
text = "Looking left"
elif gaze.is_center():
text = "Looking center"
cv2.putText(new_frame, text, (60, 60), cv2.FONT_HERSHEY_DUPLEX, 2, (255, 0, 0), 2)
cv2.imshow("Demo", new_frame)
if cv2.waitKey(1) == 27:
break在以下示例中,gaze 指的是 GazeTracking 类的一个实例。
gaze.refresh(frame)将要分析的帧(numpy.ndarray)传入。如果你想处理视频流,你需要像上面的示例一样,将此指令放在一个循环中。
gaze.pup暂无开放 Issues,或尚未同步最近议题。