基于Inception的航拍螺栓点识别

本文目的: 

对视频中螺栓点进行自动检测,使其自动判断出损害,脱落,锈蚀螺栓的位置,缩短人力成本。

技术原理 :

对原视频提取图片百分之90作为训练集,百分之10作为测试集,人工选取并分类为3种类别,即不是螺栓,正常螺栓,损害螺栓,通过迁移学习使用卷积神经网络进行图形分类训练,训练完成后利用完成模型对图片中全部螺栓点进行判别,判别结束后,假如此点为损害螺栓则反馈到原图上表示。

预处理阶段:

首先提取视频中的图片,考虑到帧数为50,每50帧提取一次使图片具有一定的差异性。

通过人工对可能的病害螺栓进行选取标注。    

对于如何选择病害螺栓,除了少数直观脱落外,还有很大一部分螺栓光凭观察图片不能完全判别是否损害,再考虑到后续识别的难易度。

因此选取螺栓时采用一下原则:

1.对于颜色深度过深的螺栓点我们认为其有可能病害。

2.对于颜色与周围螺栓明显不同的点,我们认为有可能病害。

此外人工截取正常螺栓点,无关点,并分类存储,最后得到训练集

正常螺栓点 100个

无关点         50个

损害螺栓点  35个

其中单一螺栓点像素在(15*15)左右

对于单一螺栓点进行灰度分析

单一螺栓点

从图中我们可以看出其(R,G,B)分布都较为陡峭,不利于图形的区分与判别。

对此需考虑对螺栓点进行灰度二极值处理,使其灰度区分更加明显,考虑到时间原因和预期成果(即图片本身清晰度太低,提升效果有限),我们还是使用原先图片进行训练。

神经网络搭建:

通过接入inception,我们只需要更改瓶颈层训练一小部分数据,就能使其具有一定的识别功能。

深度学习过程,由于数据集偏小,且像素点低,我们只需训练400次,就可以训练完成。其中训练好的模型保存在run文件夹中。

根据图像我们可以发现,模型自己认为自己学习的不错。

螺栓点神经网络结构构成

测试阶段:

思路:通过openCV模块相似度识别出所有的螺栓点,并得出点的坐标,保存入文件夹,在通过测试程序批量访问批量判别,假如识别为损害螺栓则记录保存进新的文件夹,最好反馈至原图。

因此通过我们准好的测试图集,人工选取一些的点来测试模型准确度

正常点

根据判断点1有76%的可能性为正常螺栓,虽然对了但这个数值并不高。

问题总结:

1.航拍截取图像清晰度过低。

2.损害螺栓点训练数据太少。

3.关于人工选取损害螺栓点的过程本身就存在一定的不确定性。

4. inceptionV3主要用于静态物体识别,对于螺栓点的兼容性比较低,结果的准确度会受很大影响。

5.由于时间,熟练度等原因,短时间内从头搭建神经网络并且训练成型较为困难。

6.目前的模型只是实验产品和实际运用还有一段距离。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值