OpenCV中文网站

 找回密码
 立即注册
搜索
热搜: 安装 配置
查看: 5054|回复: 5

用opencv如何做目标检测

[复制链接]
发表于 2018-8-11 09:59:31 | 显示全部楼层 |阅读模式
我这边想做一个人脸的眼睛检测,但是用目前opencv训练好的haar分类器,找的眼睛位置不准,所以想自己训练一下分类器,用作人脸中眼睛的检测。

但是不明白的是,训练图像怎么构建,正样本是什么呢?人的眼睛图像?负样本是鼻子嘴巴什么的?但是这样训练时的图像都是人脸的局部,而测试时候我输入的是整张人脸。

所以很头疼,有没有大神解救!
回复

使用道具 举报

发表于 2018-8-15 11:14:30 | 显示全部楼层
移动框进行搜索啊
回复 支持 反对

使用道具 举报

发表于 2018-8-16 19:33:46 | 显示全部楼层
找一堆照片,把人物的眼睛部分用Photoshop扣出来,做为正样本。负样本可以是图片上除了眼睛之外 的其他部分。正负样本要足够多,正样本要考虑不同的条件下的差异。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2018-8-30 16:17:40 | 显示全部楼层
北京-张旭亮 发表于 2018-8-16 19:33
找一堆照片,把人物的眼睛部分用Photoshop扣出来,做为正样本。负样本可以是图片上除了眼睛之外 的其他部分 ...

已经完全可以训练了,但是目前的问题是但是只训练了一层,识别率就到了1,误识为0,然后训练stage1就无限卡住,请问大家对这个有没有什么办法啊?问题究竟出在哪里?
训练过程命令如下:
opencv_traincascade -data classifier -vec pos.vec -vg neg.txt -numPos 11000 -numNeg 26545 -numStage 15 -precalcValBufSize 10240 -precalcIdxBufSize 10240 -w 64 -h 64 -mode ALL

正样本12519张、负样本26545张、都是64x64尺寸,训练stage设置为15层。
参数都是比较正常的,为什么训练完stage0 结果就是
HR=1,FA=0
再就卡到stage1了,头疼??
回复 支持 反对

使用道具 举报

发表于 2018-9-2 00:09:50 | 显示全部楼层
用神经网络,比如说TensorFlow
回复 支持 反对

使用道具 举报

发表于 2018-9-2 10:05:51 | 显示全部楼层
别光检测眼睛,结合上人脸信息和人眼信息联合分析,正确率会更高。

前几年有个网络叫 MTCNN,检测人脸和五官的,正确率和速度都不错。
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|OpenCV中文网站

GMT+8, 2024-3-29 22:11 , Processed in 0.018786 second(s), 15 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表