Python opencv_traincascade:无法填写临时阶段的列车数据集。分行培训终止
我正在尝试根据50张负面图片和50张正面图片来训练opencv_traincascade。我已经按照本Python opencv_traincascade:无法填写临时阶段的列车数据集。分行培训终止,python,opencv,Python,Opencv,我正在尝试根据50张负面图片和50张正面图片来训练opencv_traincascade。我已经按照本[thread][1]中给出的说明进行了操作。我尝试了在网上找到的不同解决方案,但无法解决问题 我使用了这个命令 opencv_traincascade -data classifier -vec samples.vec -bg negatives.txt\ > -numStages 20 -minHitRate 0.999 -maxFalseAlarmRate 0.5 -numPos
[thread][1]
中给出的说明进行了操作。我尝试了在网上找到的不同解决方案,但无法解决问题
我使用了这个命令
opencv_traincascade -data classifier -vec samples.vec -bg negatives.txt\
> -numStages 20 -minHitRate 0.999 -maxFalseAlarmRate 0.5 -numPos 50\
> -numNeg 50 -w 80 -h 40 -mode ALL -precalcValBufSize 1024\
> -precalcIdxBufSize 1024
我犯了这个错误
===== TRAINING 19-stage =====
<BEGIN
POS count : consumed 50 : 50
Train dataset for temp stage can not be filled. Branch training terminated.
=======培训19阶段=====
尝试使用比Neg更少的Pos,大约40:50@GPPK当我使用cv2.imread(img),然后使用image.shape打开其中一个图像时,我发现高度=410,宽度为500,我应该调整图像的大小,或者我应该在这里将参数更改为-w500-h409。您有什么建议?您绝对不应该更改-w或-h参数。这意味着用于分类器学习的窗口的初始大小。此外,为了获得良好的精度,此窗口大小纵横比(比例w/h)必须与正面图像中每个裁剪对象的比例相同,因为初始窗口大小在分类器学习期间缩放,但纵横比在整个过程中保持不变。正如GPPK所建议的,尝试将阳性和阴性样本比率保持在25%-30%左右(而不是像您尝试的那样100%)。我也有同样的问题,但在第4阶段:(
===== TRAINING 18-stage =====
<BEGIN
POS count : consumed 50 : 50
NEG count : acceptanceRatio 50 : 1.75143e-06
Precalculation time: 14
+----+---------+---------+
| N | HR | FA |
+----+---------+---------+
| 1| 1| 1|
+----+---------+---------+
| 2| 1| 0.48|
+----+---------+---------+
END>
Training until now has taken 0 days 0 hours 54 minutes 5 seconds.