2009-11-05 130 views
3

我有两个图像。在其中一幅图像中,我的眼睛位于中心位置,而另一幅图像位于左侧。我如何知道我的眼睛是在左边还是右边?MATLAB中的眼睛检测

我正在使用MATLAB。有没有这方面的功能?

+2

您可以添加一些示例图像吗? – Amro 2009-11-05 14:30:20

回答

2

这听起来像是Eye tracking implemented in MATLAB这是一个相当受欢迎的研究课题。

如果你想有一个更详细的回答,请回答下列问题:

  1. 你知道你的眼睛的第一图像中的坐标?
  2. 这两幅图像之间有什么样的运动?旋转/平移/缩放/ ...?
  3. 你希望这是实时的吗?
  4. 什么是图像的分辨率?
  5. 除了你的照片,你的照片中还会有更多的眼睛吗?
+0

我不知道坐标。我只想找到外面的东西。图像从网络摄像头捕获,唯一的运动是眼睛的运动。图像的分辨率是320 * 240。只会有一个人。 – Nave 2009-11-05 13:40:12

+1

我看到你已经在这里讨论了眼睛检测问题:http://stackoverflow.com/questions/1526672/matlab-eye-recognition-没有为你工作? – Jacob 2009-11-05 13:46:47

+0

好雅..问题现在越来越具体.. – Nave 2009-11-05 13:49:24

1

如果你愿意在一个图像,选择眼睛,你可以使用模板匹配找到它在其他人(对例如,您可以将其标记在视频的第一帧中,然后在所有其他帧中找到它)。

看看在MATLAB中normxcor2功能: http://www.nd.edu/~hpcc/solaris8_usr_local/src/matlab6.1/help/toolbox/images/normxcorr2.html

这种技术是强大的恒定光照变化,但如果眼睛的变化出现显著的图像之间你把从模板和图像你会失败正在搜索中。

如果您要在很多帧中搜索眼睛(例如,从网络摄像头进行眼动追踪),那么您应该查看更强大的技术,如卡尔曼滤波器或粒子滤波器(又名计算机视觉中的冷凝过滤器)

0

通过使用颜色距离贴图,可以区分皮肤和非皮肤区域,因此非皮肤区域包含虹膜。从虹膜中,可以检测到整个眼睛。希望它有效。