eyeLike 项目使用教程
eyeLikeA webcam based pupil tracking implementation.项目地址:https://gitcode.com/gh_mirrors/ey/eyeLike
1. 项目的目录结构及介绍
eyeLike 是一个基于摄像头的瞳孔跟踪实现项目。以下是项目的目录结构及其简要介绍:
eyeLike/
├── CMakeLists.txt # CMake 配置文件
├── LICENSE # 项目许可证
├── README.md # 项目说明文档
├── build # 构建目录
├── eyeLike.cpp # 主程序文件
├── eyeLike.h # 头文件
├── pupilTracker.cpp # 瞳孔跟踪实现文件
├── pupilTracker.h # 瞳孔跟踪头文件
├── shaders # 着色器文件目录
│ ├── fragment.glsl # 片段着色器
│ └── vertex.glsl # 顶点着色器
└── util # 工具文件目录
├── cvutil.cpp # OpenCV 工具文件
└── cvutil.h # OpenCV 工具头文件
2. 项目的启动文件介绍
项目的启动文件是 eyeLike.cpp
。这个文件包含了主程序的入口点,负责初始化摄像头、设置跟踪参数并启动瞳孔跟踪过程。以下是 eyeLike.cpp
的部分代码示例:
#include "eyeLike.h"
#include "pupilTracker.h"
int main(int argc, char **argv) {
// 初始化摄像头
cv::VideoCapture cap(0);
if (!cap.isOpened()) {
std::cerr << "无法打开摄像头" << std::endl;
return -1;
}
// 设置跟踪参数
PupilTracker tracker;
tracker.setParams(...);
// 启动跟踪过程
while (true) {
cv::Mat frame;
cap >> frame;
if (frame.empty()) {
break;
}
// 跟踪瞳孔
tracker.track(frame);
// 显示结果
cv::imshow("Eye Tracking", frame);
if (cv::waitKey(30) >= 0) {
break;
}
}
return 0;
}
3. 项目的配置文件介绍
eyeLike 项目主要通过代码中的参数设置进行配置。例如,在 pupilTracker.h
和 pupilTracker.cpp
文件中,可以找到瞳孔跟踪算法的参数设置。以下是部分配置参数的示例:
class PupilTracker {
public:
void setParams(int minPupilDiameter, int maxPupilDiameter, double cannyThreshold1, double cannyThreshold2) {
this->minPupilDiameter = minPupilDiameter;
this->maxPupilDiameter = maxPupilDiameter;
this->cannyThreshold1 = cannyThreshold1;
this->cannyThreshold2 = cannyThreshold2;
}
private:
int minPupilDiameter;
int maxPupilDiameter;
double cannyThreshold1;
double cannyThreshold2;
};
这些参数包括瞳孔的最小和最大直径,以及 Canny 边缘检测的阈值,可以通过修改这些参数来调整跟踪算法的性能。
以上是 eyeLike 项目的使用教程,涵盖了项目的目录结构、启动文件和配置文件的介绍。希望这些信息能帮助你更好地理解和使用该项目。
eyeLikeA webcam based pupil tracking implementation.项目地址:https://gitcode.com/gh_mirrors/ey/eyeLike