V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
推荐学习书目
Learn Python the Hard Way
Python Sites
PyPI - Python Package Index
http://diveintopython.org/toc/index.html
Pocoo
值得关注的项目
PyPy
Celery
Jinja2
Read the Docs
gevent
pyenv
virtualenv
Stackless Python
Beautiful Soup
结巴中文分词
Green Unicorn
Sentry
Shovel
Pyflakes
pytest
Python 编程
pep8 Checker
Styles
PEP 8
Google Python Style Guide
Code Style from The Hitchhiker's Guide
xiaolinjia
V2EX  ›  Python

图像识别的萌新来请教各位问题。训练的模型拿来识别图像出现下面那些框交错的情况是什么问题?

  •  
  •   xiaolinjia · 2019-10-16 14:07:46 +08:00 · 3412 次点击
    这是一个创建于 1898 天前的主题,其中的信息可能已经有所发展或是发生改变。

    上级又跑来给我出难题,要自己训练模型了。训练了几天的模型,但是结果都不理想啊。出现以下问题,请问是怎么回事呢?是我训练图像太少了吗,还是描述图片的框的时候不够准,还是怎么回事,完全搞不懂啊。。。 10 20 30 40 50 60

    12 条回复    2019-10-18 12:04:05 +08:00
    itIsUnbelievable
        1
    itIsUnbelievable  
       2019-10-16 14:55:17 +08:00 via Android
    感觉有点像是 MTCNN,前两层框就很多
    xiaolinjia
        2
    xiaolinjia  
    OP
       2019-10-16 15:22:58 +08:00
    @itIsUnbelievable 我是用那个 imageai 的库进行训练的,他那代码里用的是 yolov3 来做预训练模型。
    misaki321
        3
    misaki321  
       2019-10-16 15:31:29 +08:00
    你 nms 设置有问题吧
    IOU 都有 100 的了
    misaki321
        4
    misaki321  
       2019-10-16 15:36:17 +08:00
    @misaki321 嘛。看错了
    不过还是 nms 设置问题
    xiaolinjia
        5
    xiaolinjia  
    OP
       2019-10-16 16:51:18 +08:00
    @misaki321 听你说的我又回去看了下那库,里面没找到有设置这参数的地方啊。。
    caltong
        6
    caltong  
       2019-10-16 19:05:05 +08:00
    感觉是 NMS 问题,阈值调小一点试试。然后 bbox 感觉也不是很准,loss 还有下降空间吗?
    qwerdf007
        7
    qwerdf007  
       2019-10-17 08:29:55 +08:00
    应该是 nms 阈值问题,准确度的话,多尺度训练开了吗
    qwerdf007
        8
    qwerdf007  
       2019-10-17 08:31:56 +08:00
    感觉可以通过左右翻转来增加训练样本数量
    ilotuo
        9
    ilotuo  
       2019-10-17 09:38:45 +08:00
    试试 softnms
    ChordY
        10
    ChordY  
       2019-10-17 09:45:50 +08:00
    iou 极大值抑制
    xiaolinjia
        11
    xiaolinjia  
    OP
       2019-10-18 12:02:52 +08:00
    先感谢楼上诸位的热心解答,但小弟仍有几件事不解。
    经过这几天查资料,我这种情况好像叫什么过拟合。好像是因为模型太复杂,数量太少。
    对于上面那两个,我是否应该增加样本数量,我之前只用了 200-300 张为样本,根据楼上老哥的回答,是可以左右旋转,这样会影响识别率吗?
    然后就是,我要识别的船只各种各样,比如图上的,有长的轮船,也有小的渔船,也有游艇等等,我是否应该将船只分类?而不是都放一个 ship 里,不过如果要分类的话,那每个类的样本数量又更少了。。
    之后就是,nms 是训练的时候设置的,还是识别的时候才设置的?如果我理解没错的话,应该是识别的时候再通过你们说的这些算法再过滤一次?
    最后就是,我是否应该只用 TensorFlow,opencv 和 keras 来训练?而不要依靠那些又封装了一层的第三方库(目前用的是一个叫 imageai 的库来训练的,我也不知道怎么样。)
    xiaolinjia
        12
    xiaolinjia  
    OP
       2019-10-18 12:04:05 +08:00
    @caltong 我训练了 170 多层,然后隔了几天看它没什么变化了(没生成新的 model ),我就停了。
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   1146 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 23ms · UTC 18:33 · PVG 02:33 · LAX 10:33 · JFK 13:33
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.