Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

关于Test的一些问题 #106

Open
moooood opened this issue Dec 6, 2018 · 8 comments
Open

关于Test的一些问题 #106

moooood opened this issue Dec 6, 2018 · 8 comments

Comments

@moooood
Copy link

moooood commented Dec 6, 2018

同学你好 ,我注意到测试代码中confidence_threshold=0.01,nms_threshold=0.45,这势必会造成高recall,低precision。是不是在localication的过程中,也使用了CRNN去纠正检测结果。我们组在尝试使用Tensorflow复现TextBoxes,目前我们尝试的参数confidence_threshold=0.3,nms_threshold=0.25得到的结果是recall=77%, Precision=82%。耽误您一点时间,劳烦回复,是否在localication的过程中加入了CRNN的纠正?

@MhLiao
Copy link
Owner

MhLiao commented Dec 6, 2018

端到端任务做法是尽可能保留更多的框,识别之后再过滤。如果只做检测任务,则不需要识别,会根据检测score进行过滤。

@moooood
Copy link
Author

moooood commented Dec 6, 2018

就是说在只做检测任务时,只是经过了常规的confidence score筛选然后过一次NMS就得到了最终的结果吗?

@MhLiao
Copy link
Owner

MhLiao commented Dec 6, 2018

是的

@moooood
Copy link
Author

moooood commented Dec 6, 2018

那这样子的话 这两个参数 0.01和0.45最后recall的值大概在86%左右,但是precision只有20多。从直观上来说,这样子的设值,必然会保留大量的冗余框,precision相对就会低很多。是这个样子的吗?

@MhLiao
Copy link
Owner

MhLiao commented Dec 6, 2018

0.01建议换成0.5附近的值,比如0.5或者0.6

@moooood
Copy link
Author

moooood commented Dec 7, 2018

谢谢!总结一下:1.如果单纯做检测的话confidence threshold设置为0.5左右,nms threshold还是设置为0.45吗?如果要做识别那么这两个参数就是设置为0.01,0.45,这么做的话就是留下尽可能多的框给识别端的模型去做识别,即便有的框并没有框到文字区域,这样子识别端对不含有文字区域的框相当于也有一个过滤的作用;2.另外还有两个问题,我们这边想把TextBoxes最终线上落地,现在有点担心线上的效率,不知道学长是否做过相关的尝试。这边主要是担心模型复杂,响应时间不够,是否需要把基础网络换成mobilenent或者对模型做一个压缩?还有个问题是,我这边的机器性能有限,Tesla p4的卡,显存只有8G,batch_size的大小是16,不知道batch_size对最终模型训练的结果是否有影响呢? 万望回复,谢谢!

@liuyiyiyiyi
Copy link

谢谢!总结一下:1.如果单纯做检测的话confidence threshold设置为0.5左右,nms threshold还是设置为0.45吗?如果要做识别那么这两个参数就是设置为0.01,0.45,这么做的话就是留下尽可能多的框给识别端的模型去做识别,即便有的框并没有框到文字区域,这样子识别端对不含有文字区域的框相当于也有一个过滤的作用;2.另外还有两个问题,我们这边想把TextBoxes最终线上落地,现在有点担心线上的效率,不知道学长是否做过相关的尝试。这边主要是担心模型复杂,响应时间不够,是否需要把基础网络换成mobilenent或者对模型做一个压缩?还有个问题是,我这边的机器性能有限,Tesla p4的卡,显存只有8G,batch_size的大小是16,不知道batch_size对最终模型训练的结果是否有影响呢? 万望回复,谢谢!

您好,我在用自己的数据训练时, python examples/TextBoxes/train_icdar13.py,报了如下错误:
Traceback (most recent call last):
File "examples/TextBoxes/train_icdar13.py", line 438, in
net[reshape_name] = L.Reshape(net[conf_name], shape=dict(dim=[0, -1, num_classes]))
File "/home/od/dod/SaicCorNetG_v2/python/caffe/net_spec.py", line 193, in getitem
return self.getattr(item)
File "/home/od/dod/SaicCorNetG_v2/python/caffe/net_spec.py", line 187, in getattr
return self.tops[name]
KeyError: 'mbox_conf'
请问你在训练时做了哪些修改,目前我更改了训练和测试的lmdb数据路径

@speakstone
Copy link

谢谢!结论一下:1。如果单纯做检测的话置信度阈值设置为0.5左右,nms threshold还是设置为0.45吗?如果要做识别那么这两个参数就是设置为0.01,0.45,这样做的话就是留下尽可能多的框给识别端的模型去做识别,甚至有的框并没有框到文字区域,这样子识别端对不包含文字区域的框相当于也有一个过滤的作用; 2。另外还有两个问题,我们这边想把TextBoxes最终在线落地,现在有点担心线上的效率,不知道学长是否做过相关的尝试。这边主要是担心模型复杂,响应时间不够,是否需要把基础网络换成mobilenent或者对模型做一个压缩?还有个问题是,我这边的机器性能有限,Tesla p4的卡,显存只有8G,batch_size的大小是16,不知道batch_size对最终模型训练的结果是否有影响呢?万望回复,谢谢!

您好,我在用过自己的数据训练时,python examples / TextBoxes / train_icdar13.py,报了如下错误:追溯
(最近一次通话是最后一次):
文件“ examples / TextBoxes / train_icdar13.py”,行438,在
网上[reshape_name] = L.Reshape(net [conf_name],shape = dict(dim = [0,-1,num_classes]))
文件“ /home/od/dod/SaicCorNetG_v2/python/caffe/net_spec.py”,行193,在getitem中
返回自己。getattr(项目)
文件“ /home/od/dod/SaicCorNetG_v2/python/caffe/net_spec.py”,行187,在getattr中
返回self.tops [name]
KeyError:'mbox_conf'请问
你在训练时做了些修改,目前我更改了训练和测试的lmdb数据路径

你好,请问你关于的mbox_conf 的问题解决了吗

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

4 participants