您好, 访客   登录/注册

基于水下机器人的智能识别系统

来源:用户上传      作者:

  摘  要:随着计算机和信息科学技术发展程度的越来越高,人工智能的技术也逐渐进入各行各业的应用中,其中的图像识别技术应用尤为广泛。不论是在解放劳动力,实时监测或是辅助信息处理等方面的效率以及质量都有出色的成果。文章为基于水下仿生鱼的智能识别系统,该系统主要通过仿生鱼摄像头采集的图像信息,前端小程序获取图片信息,后端识别模型训练及数据匹配分类进行水下鱼种类的识别。文章制作了由10种每类约500张鱼类图像的训练数据集,分割其1/10图像作为测试集可得准确率约在85%以上。
  关键词:图像识别;卷积神经网络;vgg16
  中图分类号:TP242        文献标志码:A         文章编号:2095-2945(2020)25-0048-02
  Abstract: With the development of computer and information science and technology, artificial intelligence technology, especially the application of image recognition technology, has gradually entered the application of all aspects of life. Both in the liberation of labor, real-time monitoring or auxiliary information processing efficiency and quality of outstanding results. This paper is an intelligent recognition system based on underwater bionic fish. The system mainly USES the image information collected by the bionic fish camera, the image information acquired by the front-end small program, the back-end recognition model training and data matching classification to identify the underwater fish species. In this paper, a training data set of about 500 fish images for each of 10 species was made, and the accuracy of 1/10 of the images as a test set could be more than 85%.
  Keywords: image recognition; convolution neural network; vgg16
  引言
  現今,随着全球人口的增长,中国已经成为了世界上最大的海水养殖大国,养殖面积和产量均占世界的60%,是世界海洋食物养殖的主力军。水下养殖业以及一系列水下作业逐渐离不开了水下机器人的辅助。[1]随着人工智能技术的快速发展,基于人工智能的水下监测技术也逐渐成为了研究热点。由于水下养殖区域范围大,人工进行监测所消费人工和经济成本较高且效率低下,携带设备的长时间水下作业也提高了潜水员的作业难度。受水下暗流和深度等影响,水下潜水员的安全性也得不到保障。
  利用水下仿生鱼系统,通过摄像头和WiFi实时对水下的鱼群进行拍摄识别,并将识别结果传输到用户的手机小程序端,可达到水下监测鱼群种类、生长情况、物种丰富度的监测,对于养殖捕捞、提高养殖生产率和防止物种入侵有着极为良好的效果。
  1 系统整体架构(图1)
  该识别系统主要由鱼类识别模型和分类模块组成。
  识别模型由爬取训练数据集、图像预处理模块和vgg16模型架构组成,具有提取图像特征、更新网络权值、形成和保存模型网络的功能。训练时优先使用gpu处理器,是作为整个识别功能的中心纽带。
  分类模块主要将前端小程序获取的图像与模型相匹配,依照网络各层权重值计算结果,并将其归为与其值最为接近的鱼类分类。再将其分类结果通过服务器返回给前端小程序显示。
  2 识别系统的软件实现
  2.1 vgg16模型搭建
  Vgg模型是由牛津大学于2014年首次提出的,vgg的卷积神经网络模型拥有简洁和实用的优势并在之后的各个领域被广泛使用。Vgg16是由13个卷积层,5个最大下采样层和3个全连接层叠加而成。网络输入一张的图像,经过卷积核的卷积和最大池化操作后拉伸为一维向量,放入三层全连接层中进行权值计算。层与层之间插入激活函数ReLu对卷积图像输入矩阵中的负值修正为0,防止在网络反向传播的过程中过小的数值的导数逐层累计导致靠近输入层的权值更新受到影响,称为梯度消失。[2]同时在层与层中插入dropout进行参数限制,在机器学习中过拟合是常见的现象,具体表现为在训练集中表现好,而在测试集中容易出现结果较为偏颇,设置概率p=0.5暂时丢失部分神经元以防止数据过拟合造成的样本外预测值误差过大。在初始的cnn中,权重值是随机的,过滤器(卷积核)对于图像的特征选取也是非常不稳定的。于是就需要反向传播这一过程。通过前一数据与后一数据的预测误差反向传递更新迭代各层的权重值。
  2.2 系统编译环境及模块配置
  整个识别模型程序是通过window10系统下的vscode编写的,使用前需要安装anaconda环境管理器。安装时的安装目录与图像库和代码脚本应相同防止报错和方便文件查阅。在编译文件中导入PIL图像处理库,机器学习库pytorch以及torchvision并保持版本相对应。官网下载库文件时可采用换源提升下载效率。
  2.3 系统实现过程
  用户通过手机小程序和WiFi连接通信对仿生鱼进行操作,通过控制仿生鱼的运动对水下各个位置进行水下水质信息数据获取和目标鱼群进行拍摄,拍摄后的图像通过上传至服务器的方式,并由后端模型获取图像信息并放入训练完成的vgg16识别模型中进行特征提取,结果分类,并将所得结果实时传递给手机小程序端显示。
  3 模型分类结果
  图2、图3是鲶鱼和青鱼图像的识别测试结果。在模型训练的过程中根据图像输入得到全连接层的权重和各类训练图像的识别值,识别时图像经过卷积、池化和激活函数的操作并将其拉伸为一维向量,与全连接层中各个权重值进行加权求和得到最终预测值,并将其归类为与其最为接近的识别值类,得到识别结果。
  在水体污染程度大或图像较为模糊的情况下得到的结果较为不准确,水底光照条件较差时可开启前照灯后进行补光拍摄保证预测分类结果准确性。通过提高训练集数据量的方式也能较为有效地提升模型的准确率。
  4 结束语
  本文对于图像识别中的vgg模型组成原理进行描述,同时对机器人水下识别技术所具备的优势进行浅谈。识别系统通过与前端小程序的结合,可实现对水下环境的实时拍摄、数据传输以及实时识别,操作方便快捷,数据显示一目了然。其作用同时可迁移应用于海上救助、近海搜索、鱼群捕捞、水环境监测以及非法捕捞监测等,对水下资源的保护以及获取有积极作用。
  参考文献:
  [1]吴俊雄.人工智能中图像识别技术的发展与应用研究[J].信息与电脑(理论版),2020,32(04):137-139.
  [2]左羽,陶倩,吴恋,等.基于卷积神经网络的植物图像分类方法研究[J].物联网技术,2020,10(03):72-75.
  [3]李道亮,包建华.水产养殖水下作业机器人关键技术研究进展[J].农业工程学报,2018,34(16):1-9.
转载注明来源:https://www.xzbu.com/1/view-15302859.htm