我有616个正面图像轮廓面和3020个图像负面,我使用此代码制作我的矢量样本:
createsamples.exe -info positive/info.txt -vec vector/facevector.vec -num 616 -w 24 -h 24
载体大小694 KB
图像尺寸630 * 480
我用它来进行训练:
haartraining.exe -data cascades -vec vector/facevector.vec -bg negative/bg.txt -npos 616 -nneg 3020 -nstages 19 -nsplits 2 -nonsym -minhitrate 0.999 -maxfalsealarm 0.5 -mem 1024 -mode ALL -w 24 -h 24 PAUSE
当它完成时我将它改为级联:
haarconv.exe data myfacedetector.xml 24 24
我只有56个级联大小,我的训练数据大小全部(每个阶段)1 KB或2 KB。当我测试它时,它也不会检测到任何面部,也没有检测到训练正像。
答案 0 :(得分:0)
首先,在>>> lst2 = [s.replace('\\', '/') for s in lst]
>>> [re.search(r'\d{4}-\d{2}-\d{2}/(.*?)/', s).group(1) for s in lst2]
['part2', 'c', 'intereting']
命令中haartraining.exe
并不是你拥有的有害图像的数量;它的数量小于样本数(比如-npos
)。
第二件事,我没有看到你使用0.9*(number of samples)
命令创建了多少个样本。同样,你没有在这里指定正面图像的数量;您应该使用这些正面图像指定要创建的样本数量。请再次研究参数。
希望这有帮助!