我正在开展一个项目,该项目应使用从 iPhone 摄像头拍摄的视频或照片来检测人行横道上的“绿人”或“红人”是否亮起。
到目前为止,我已经尝试过图像 mask 、轮廓和特征检测。
我编写的最后一个程序执行以下操作。
放大相机图像的 ROI 以更好地查看行人灯(它更像是 ROI 裁剪)
进行图像 mask 以仅暴露绿色
使用特征检测(SURF 描述符和提取器以及基于 FLANN 的匹配)将图像与加载的模板进行匹配。
这是我的代码: https://www.dropbox.com/sh/n5ck45tige2jgb9/X1DgVPdpPb请先按 ZOOM,再按 MATCH。
您可能会发现,当图像中出现绿人 (Puggs.jpeg) 时,匹配非常好,我可以为“良好匹配”的数量设置一个阈值,并找出绿人是否被检测到。但是,如果您使用诸如 (IMG_0948.jpeg) 之类的图像,仍然存在与随机事物的匹配,这使得很难依靠良好的匹配来真正确定是否检测到“绿人”。
匹配的稳健性是我目前的主要障碍。你有什么建议或方向吗?提前谢谢你。
寻找红色的人怎么样 - 如果你能看到他,那么你就知道你将看不到绿色的;如果两个检测例程的误报率都非常低,那么您将减少到绿色闪烁之间的时间点;无论如何,您可能想假设它不是绿色。
我是一名优秀的程序员,十分优秀!