OpenCV训练分类器问题

ares1986 2011-04-26 09:04:43
我用了正样本30个负样本30,就只训练了几步就停在那里了,等了几个小时还是一样,不知道是什么问题?下面是显示的信息:

D:\5角训练图20>"D:\OpenCV2.2\bin\opencv_haartraining.exe" -data .\test -vec .\正
样本\pos.vec -bg .\负样本\list.dat -npos 30 -nneg 30 -mem 200 -mode ALL -w 20 -h
20
Data dir name: .\test
Vec file name: .\正样本\pos.vec
BG file name: .\负样本\list.dat, is a vecfile: no
Num pos: 30
Num neg: 30
Num stages: 14
Num splits: 1 (stump as weak classifier)
Mem: 200 MB
Symmetric: TRUE
Min hit rate: 0.995000
Max false alarm rate: 0.500000
Weight trimming: 0.950000
Equal weights: FALSE
Mode: ALL
Width: 20
Height: 20
Applied boosting algorithm: GAB
Error (valid only for Discrete and Real AdaBoost): misclass
Max number of splits in tree cascade: 0
Min number of positive samples per cluster: 500
Required leaf false alarm rate: 6.10352e-005

Tree Classifier
Stage
+---+
| 0|
+---+


Number of features used : 67074

Parent node: NULL

*** 1 cluster ***
POS: 30 30 1.000000
NEG: 30 1
BACKGROUND PROCESSING TIME: 0.01
Precalculation time: 0.00
+----+----+-+---------+---------+---------+---------+
| N |%SMP|F| ST.THR | HR | FA | EXP. ERR|
+----+----+-+---------+---------+---------+---------+
| 1|100%|-|-0.913043| 1.000000| 1.000000| 0.150000|
+----+----+-+---------+---------+---------+---------+
| 2|100%|+|-0.210199| 1.000000| 0.500000| 0.100000|
+----+----+-+---------+---------+---------+---------+
Stage training time: 1.75
Number of used features: 2

Parent node: NULL
Chosen number of splits: 0

Total number of splits: 0

Tree Classifier
Stage
+---+
| 0|
+---+

0


Parent node: 0

*** 1 cluster ***
POS: 30 30 1.000000
NEG: 30 0.5
BACKGROUND PROCESSING TIME: 0.02
Precalculation time: 0.01
+----+----+-+---------+---------+---------+---------+
| N |%SMP|F| ST.THR | HR | FA | EXP. ERR|
+----+----+-+---------+---------+---------+---------+
| 1|100%|-|-0.846155| 1.000000| 1.000000| 0.133333|
+----+----+-+---------+---------+---------+---------+
| 2|100%|+|-0.266968| 1.000000| 0.400000| 0.033333|
+----+----+-+---------+---------+---------+---------+
Stage training time: 1.69
Number of used features: 2

Parent node: 0
Chosen number of splits: 0

Total number of splits: 0

Tree Classifier
Stage
+---+---+
| 0| 1|
+---+---+

0---1


Parent node: 1

*** 1 cluster ***
POS: 30 30 1.000000
NEG: 30 0.211268
BACKGROUND PROCESSING TIME: 0.03
Precalculation time: 0.00
+----+----+-+---------+---------+---------+---------+
| N |%SMP|F| ST.THR | HR | FA | EXP. ERR|
+----+----+-+---------+---------+---------+---------+
| 1|100%|-| 1.000000| 1.000000| 0.000000| 0.000000|
+----+----+-+---------+---------+---------+---------+
Stage training time: 0.75
Number of used features: 1

Parent node: 1
Chosen number of splits: 0

Total number of splits: 0

Tree Classifier
Stage
+---+---+---+
| 0| 1| 2|
+---+---+---+

0---1---2


Parent node: 2

*** 1 cluster ***
POS: 30 30 1.000000

...全文
1226 16 打赏 收藏 转发到动态 举报
写回复
用AI写文章
16 条回复
切换为时间正序
请发表友善的回复…
发表回复
tozhaolin1 2013-12-20
  • 打赏
  • 举报
回复
我在看opencv训练分类器xml的方法,我用的是opencv2.4.3的版本,找不到那两个exe文件
好好学习撒 2013-12-03
  • 打赏
  • 举报
回复
训练大概多少层才算可以啊?我有正样本1800,负样本3600的话这个应该是多少层啊
  • 打赏
  • 举报
回复
各位大神,初学者求指教:训练分类器时,有两个参数npos和nneg,我上网查说是每次训练时正负样本的个数,这个应该该怎么取值呢?(比如说我一共有正样本1000,负样本4000);还有啊 关于正负样本的数目比例什么的有资料说明么多谢多谢
whu_tonghui 2013-05-19
  • 打赏
  • 举报
回复
各位大神怎么解决这个问题的啊,求救啊,科研准备检测方向盘,训练分类器到时候停到那个位置了死也过不去~
白云飘 2013-03-27
  • 打赏
  • 举报
回复
你用的样本太少,上边已经谈到,一般来说正样本要几千(3000-4000),负样本多多益善(几万都可以),训练出来的分类器效果好,可以训练很多层,默认的14层。网上说用正样本7000,负样本3000,我还在做实验,找正负样本的比例,现在是1000正样本,1700负样本,误检率达标,但是检测率不高。
  • 打赏
  • 举报
回复
求高手指点。。。
剑圣风暴 2011-09-24
  • 打赏
  • 举报
回复
我也遇到同样问题,求高手解决啊
szwangyunxi 2011-07-31
  • 打赏
  • 举报
回复
我改了这个参数还是停在那里,苦啊
ares1986 2011-05-22
  • 打赏
  • 举报
回复
[Quote=引用 7 楼 huicpc0866 的回复:]
D:\OpenCV2.1\bin>opencv_haartraining.exe -data xml -vec pos.vec -bg .\negdata\bg
.txt -stages 4 -w 24 -h 24 -mode ALL -mem 600
Data dir name: xml
Vec file name: pos.vec
BG file name: .\negdata\bg.……
[/Quote]
参数设错了,是-nstages,如果是测试的话这个尽量小一点,不过识别率就大打折扣了
hk2305621_1 2011-05-21
  • 打赏
  • 举报
回复
D:\OpenCV2.1\bin>opencv_haartraining.exe -data xml -vec pos.vec -bg .\negdata\bg
.txt -stages 4 -w 24 -h 24 -mode ALL -mem 600
Data dir name: xml
Vec file name: pos.vec
BG file name: .\negdata\bg.txt, is a vecfile: no
Num pos: 2000
Num neg: 2000
Num stages: 14
Num splits: 1 (stump as weak classifier)
Mem: 600 MB
Symmetric: TRUE
Min hit rate: 0.995000
Max false alarm rate: 0.500000
Weight trimming: 0.950000
Equal weights: FALSE
Mode: ALL
Width: 24
Height: 24
Applied boosting algorithm: GAB
Error (valid only for Discrete and Real AdaBoost): misclass
Max number of splits in tree cascade: 0
Min number of positive samples per cluster: 500
Required leaf false alarm rate: 6.10352e-005

Tree Classifier
Stage
+---+
| 0|
+---+


Number of features used : 138694

Parent node: NULL

*** 1 cluster ***
POS: 15 15 1.000000
NEG: 15 1
BACKGROUND PROCESSING TIME: 0.00
Precalculation time: 0.02
+----+----+-+---------+---------+---------+---------+
| N |%SMP|F| ST.THR | HR | FA | EXP. ERR|
+----+----+-+---------+---------+---------+---------+
| 1|100%|-| 0.999999| 1.000000| 0.000000| 0.000000|
+----+----+-+---------+---------+---------+---------+
Stage training time: 0.47
Number of used features: 1

Parent node: NULL
Chosen number of splits: 0

Total number of splits: 0

Tree Classifier
Stage
+---+
| 0|
+---+

0


Parent node: 0

*** 1 cluster ***
POS: 15 15 1.000000

我也遇到这样的问题了,要怎么才能解决呢
ares1986 2011-05-03
  • 打赏
  • 举报
回复
我找到原因了,Num stages 没有设置,默认是14,我把它设置小一点就可以了
ChenLee_1 2011-05-01
  • 打赏
  • 举报
回复
正样本30个负样本30,
样本数量太少了,我见到网上有的人,正样本都达到7000个了。你的这种情况,很容易训练结束,而且,分类器的效果奇差。。。
dianwei_wang 2011-04-30
  • 打赏
  • 举报
回复
总体上来说两类样本的数量都太少!
kacassi 2011-04-29
  • 打赏
  • 举报
回复
1、正负样本数都太少了,增加正负样本的数量
2、在1的情况下,遇到这种情况,适当增加新的负样本
3、增加新的负样本之后,只需修改负样本参数就可以在原来的基础上继续训练
cbib_cat 2011-04-27
  • 打赏
  • 举报
回复
我也遇到这个问题,你有没有解决?
ares1986 2011-04-26
  • 打赏
  • 举报
回复
怎么没人呢!是我起的太早了?

4,445

社区成员

发帖
与我相关
我的任务
社区描述
图形图像/机器视觉
社区管理员
  • 机器视觉
  • 迪菲赫尔曼
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧