CN114005021B - 基于激光视觉融合的水产养殖车间无人巡检***和方法 - Google Patents
基于激光视觉融合的水产养殖车间无人巡检***和方法 Download PDFInfo
- Publication number
- CN114005021B CN114005021B CN202111606887.5A CN202111606887A CN114005021B CN 114005021 B CN114005021 B CN 114005021B CN 202111606887 A CN202111606887 A CN 202111606887A CN 114005021 B CN114005021 B CN 114005021B
- Authority
- CN
- China
- Prior art keywords
- inspection
- information
- laser radar
- target
- image
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000007689 inspection Methods 0.000 title claims abstract description 206
- 238000009360 aquaculture Methods 0.000 title claims abstract description 78
- 244000144974 aquaculture Species 0.000 title claims abstract description 78
- 238000000034 method Methods 0.000 title claims abstract description 64
- 230000004927 fusion Effects 0.000 title claims abstract description 31
- 238000001514 detection method Methods 0.000 claims description 48
- 241000287127 Passeridae Species 0.000 claims description 30
- 230000008859 change Effects 0.000 claims description 21
- 239000011159 matrix material Substances 0.000 claims description 21
- 239000013598 vector Substances 0.000 claims description 18
- 230000008569 process Effects 0.000 claims description 16
- 238000012545 processing Methods 0.000 claims description 15
- 238000013139 quantization Methods 0.000 claims description 13
- 238000010845 search algorithm Methods 0.000 claims description 12
- 238000001914 filtration Methods 0.000 claims description 11
- 230000001360 synchronised effect Effects 0.000 claims description 8
- 230000033001 locomotion Effects 0.000 claims description 7
- 238000013507 mapping Methods 0.000 claims description 5
- 238000012549 training Methods 0.000 claims description 5
- 238000003064 k means clustering Methods 0.000 claims description 4
- 230000002708 enhancing effect Effects 0.000 claims description 3
- 238000002372 labelling Methods 0.000 claims description 3
- 239000002245 particle Substances 0.000 description 23
- XLYOFNOQVPJJNP-UHFFFAOYSA-N water Substances O XLYOFNOQVPJJNP-UHFFFAOYSA-N 0.000 description 16
- 238000009826 distribution Methods 0.000 description 13
- 230000001133 acceleration Effects 0.000 description 9
- 241000251468 Actinopterygii Species 0.000 description 8
- 238000006243 chemical reaction Methods 0.000 description 7
- WHXSMMKQMYFTQS-UHFFFAOYSA-N Lithium Chemical compound [Li] WHXSMMKQMYFTQS-UHFFFAOYSA-N 0.000 description 6
- 238000004364 calculation method Methods 0.000 description 6
- 230000006870 function Effects 0.000 description 6
- 229910052744 lithium Inorganic materials 0.000 description 6
- 238000011161 development Methods 0.000 description 5
- 230000018109 developmental process Effects 0.000 description 5
- 238000005259 measurement Methods 0.000 description 5
- 238000005276 aerator Methods 0.000 description 4
- 230000000007 visual effect Effects 0.000 description 4
- 238000012952 Resampling Methods 0.000 description 3
- 230000002159 abnormal effect Effects 0.000 description 3
- 238000013527 convolutional neural network Methods 0.000 description 3
- 238000006073 displacement reaction Methods 0.000 description 3
- 238000007781 pre-processing Methods 0.000 description 3
- 238000005070 sampling Methods 0.000 description 3
- 238000003860 storage Methods 0.000 description 3
- 230000009182 swimming Effects 0.000 description 3
- 230000003044 adaptive effect Effects 0.000 description 2
- 230000006399 behavior Effects 0.000 description 2
- 238000005266 casting Methods 0.000 description 2
- 238000005520 cutting process Methods 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 238000005286 illumination Methods 0.000 description 2
- 239000007788 liquid Substances 0.000 description 2
- 230000004807 localization Effects 0.000 description 2
- 239000007769 metal material Substances 0.000 description 2
- 238000005457 optimization Methods 0.000 description 2
- 244000062645 predators Species 0.000 description 2
- 238000012163 sequencing technique Methods 0.000 description 2
- 238000012360 testing method Methods 0.000 description 2
- 230000009466 transformation Effects 0.000 description 2
- 229910000838 Al alloy Inorganic materials 0.000 description 1
- 238000012935 Averaging Methods 0.000 description 1
- 101100001669 Emericella variicolor andD gene Proteins 0.000 description 1
- 206010021143 Hypoxia Diseases 0.000 description 1
- 238000007476 Maximum Likelihood Methods 0.000 description 1
- XKMRRTOUMJRJIA-UHFFFAOYSA-N ammonia nh3 Chemical compound N.N XKMRRTOUMJRJIA-UHFFFAOYSA-N 0.000 description 1
- QVGXLLKOCUKJST-UHFFFAOYSA-N atomic oxygen Chemical compound [O] QVGXLLKOCUKJST-UHFFFAOYSA-N 0.000 description 1
- 230000004888 barrier function Effects 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 210000000349 chromosome Anatomy 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 230000006835 compression Effects 0.000 description 1
- 238000007906 compression Methods 0.000 description 1
- 238000013135 deep learning Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 239000006185 dispersion Substances 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000005284 excitation Effects 0.000 description 1
- 239000000284 extract Substances 0.000 description 1
- 238000000605 extraction Methods 0.000 description 1
- 230000002431 foraging effect Effects 0.000 description 1
- 230000002068 genetic effect Effects 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 230000001788 irregular Effects 0.000 description 1
- 229910052751 metal Inorganic materials 0.000 description 1
- 239000002184 metal Substances 0.000 description 1
- 239000011664 nicotinic acid Substances 0.000 description 1
- 238000010606 normalization Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 101150033591 outC gene Proteins 0.000 description 1
- 229910052760 oxygen Inorganic materials 0.000 description 1
- 239000001301 oxygen Substances 0.000 description 1
- 230000008447 perception Effects 0.000 description 1
- 230000000750 progressive effect Effects 0.000 description 1
- 238000011002 quantification Methods 0.000 description 1
- 150000003255 radium Chemical class 0.000 description 1
- 230000003252 repetitive effect Effects 0.000 description 1
- 238000004062 sedimentation Methods 0.000 description 1
- 230000011218 segmentation Effects 0.000 description 1
- 238000001228 spectrum Methods 0.000 description 1
- 230000001629 suppression Effects 0.000 description 1
- 239000000725 suspension Substances 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 230000007704 transition Effects 0.000 description 1
- 238000012795 verification Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01C—MEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
- G01C21/00—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
- G01C21/005—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 with correlation of navigation data from several sources, e.g. map or contour matching
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01C—MEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
- G01C21/00—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
- G01C21/10—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 by using measurements of speed or acceleration
- G01C21/12—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 by using measurements of speed or acceleration executed aboard the object being navigated; Dead reckoning
- G01C21/16—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 by using measurements of speed or acceleration executed aboard the object being navigated; Dead reckoning by integrating acceleration or speed, i.e. inertial navigation
- G01C21/165—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 by using measurements of speed or acceleration executed aboard the object being navigated; Dead reckoning by integrating acceleration or speed, i.e. inertial navigation combined with non-inertial navigation instruments
- G01C21/1652—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 by using measurements of speed or acceleration executed aboard the object being navigated; Dead reckoning by integrating acceleration or speed, i.e. inertial navigation combined with non-inertial navigation instruments with ranging devices, e.g. LIDAR or RADAR
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01C—MEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
- G01C21/00—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
- G01C21/10—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 by using measurements of speed or acceleration
- G01C21/12—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 by using measurements of speed or acceleration executed aboard the object being navigated; Dead reckoning
- G01C21/16—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 by using measurements of speed or acceleration executed aboard the object being navigated; Dead reckoning by integrating acceleration or speed, i.e. inertial navigation
- G01C21/165—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 by using measurements of speed or acceleration executed aboard the object being navigated; Dead reckoning by integrating acceleration or speed, i.e. inertial navigation combined with non-inertial navigation instruments
- G01C21/1656—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 by using measurements of speed or acceleration executed aboard the object being navigated; Dead reckoning by integrating acceleration or speed, i.e. inertial navigation combined with non-inertial navigation instruments with passive imaging devices, e.g. cameras
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01S—RADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
- G01S17/00—Systems using the reflection or reradiation of electromagnetic waves other than radio waves, e.g. lidar systems
- G01S17/86—Combinations of lidar systems with systems other than lidar, radar or sonar, e.g. with direction finders
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q50/00—Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
- G06Q50/02—Agriculture; Fishing; Forestry; Mining
-
- G—PHYSICS
- G07—CHECKING-DEVICES
- G07C—TIME OR ATTENDANCE REGISTERS; REGISTERING OR INDICATING THE WORKING OF MACHINES; GENERATING RANDOM NUMBERS; VOTING OR LOTTERY APPARATUS; ARRANGEMENTS, SYSTEMS OR APPARATUS FOR CHECKING NOT PROVIDED FOR ELSEWHERE
- G07C1/00—Registering, indicating or recording the time of events or elapsed time, e.g. time-recorders for work people
- G07C1/20—Checking timed patrols, e.g. of watchman
Landscapes
- Engineering & Computer Science (AREA)
- Radar, Positioning & Navigation (AREA)
- Remote Sensing (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Automation & Control Theory (AREA)
- Business, Economics & Management (AREA)
- Mining & Mineral Resources (AREA)
- General Health & Medical Sciences (AREA)
- Agronomy & Crop Science (AREA)
- Animal Husbandry (AREA)
- Marine Sciences & Fisheries (AREA)
- Electromagnetism (AREA)
- Computer Networks & Wireless Communication (AREA)
- Health & Medical Sciences (AREA)
- Economics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Human Resources & Organizations (AREA)
- Marketing (AREA)
- Primary Health Care (AREA)
- Strategic Management (AREA)
- Tourism & Hospitality (AREA)
- General Business, Economics & Management (AREA)
- Theoretical Computer Science (AREA)
- Optical Radar Systems And Details Thereof (AREA)
- Traffic Control Systems (AREA)
Abstract
本发明提供一种基于激光视觉融合的水产养殖车间无人巡检***及方法,属于智能巡检技术领域,巡检***包括:巡检小车,驱动装置,用于驱动巡检小车运行,并检测巡检小车的行驶速度及位姿信息;激光雷达传感器,用于扫描水产养殖车间内部的环境;相机,用于采集水产养殖车间内部的RGB图像和深度图像;摄像头,用于拍摄设备图像;核心控制器,用于根据所述位姿信息、行驶速度、激光雷达数据、RGB图像以及深度图像,构建水产养殖车间的二维栅格地图,以及根据巡检任务和二维栅格地图进行路径规划,巡检小车可以根据二维栅格地图实现路径规划和自主导航,从而完成水产养殖车间所需要的多种巡检任务,实现无人车间的自动化作业。
Description
技术领域
本发明涉及智能巡检技术领域,特别是涉及一种基于激光视觉融合的水产养殖车间无人巡检***和方法。
背景技术
目前,国内许多水产养殖工厂都在为实现智能化车间而转型。而养殖池中状态异常、设备故障时常发生。采用和人工巡检的方式对养殖池和车间的监控费时费力,成本较高。
移动机器人对周围环境的感知以及对自身位姿正确估计是实现自主巡检的前提。SLAM(simultaneous localization and mapping,同步定位与建图)技术即可实现同时定位与地图构建。采用传统SLAM方法所构建的地图大多是栅格地图,地图上缺少场景的语义信息。这种地图难以使巡检小车完成带有特定语义信息的任务,如“前往增氧机前观察增氧机是否开启”、“前往养殖池中观测水位状况和鱼类游动状况”等,因此需要加入目标检测模块,对物体所属语义信息进行检测,而传统的基于深度学习目标检测网络参数量大,难以部署在嵌入式***中,以往的养殖车间巡检方式大多采用遍历巡检,不具有通用性。
发明内容
本发明的目的是提供一种基于激光视觉融合的水产养殖车间无人巡检***和方法,可实现路径规划和自主导航,实现无人车间的自动化巡检任务,具有通用性强的特点。
为实现上述目的,本发明提供了如下方案:
一种基于激光视觉融合的水产养殖车间无人巡检***,所述基于激光视觉融合的水产养殖车间无人巡检***包括:
巡检小车;
驱动装置,与所述巡检小车连接,用于驱动所述巡检小车运行,并检测所述巡检小车的行驶速度及位姿信息;
激光雷达传感器,设置在所述巡检小车上,用于扫描水产养殖车间内部的环境,得到激光雷达数据;
相机,设置在所述巡检小车上,用于采集水产养殖车间内部的RGB图像和深度图像;
摄像头,设置在所述巡检小车上,用于拍摄水产养殖车间中的设备图像;
核心控制器,分别与所述驱动装置、所述激光雷达传感器、所述相机及所述摄像头连接,用于根据所述位姿信息、行驶速度、激光雷达数据、RGB图像以及深度图像,构建包含语义信息的水产养殖车间的二维栅格地图,以及根据远程终端下发的巡检任务和所述二维栅格地图,采用离散化麻雀搜索算法进行路径规划,生成巡检控制信号,通过所述驱动装置控制所述巡检小车进行巡检,并在巡检过程中,根据所述设备图像确定对应设备的运行状况。
为实现上述目的,本发明还提供了如下方案:
一种基于激光视觉融合的水产养殖车间无人巡检方法,所述基于激光视觉融合的水产养殖车间无人巡检方法包括:
通过驱动装置检测巡检小车的行驶速度及位姿信息;
通过相机采集水产养殖车间内各设备的RGB图像和深度图像;
通过激光雷达传感器对所述水产养殖车间内部的环境进行扫描,得到激光雷达数据;
根据所述位姿信息、行驶速度、激光雷达数据、RGB图像以及深度图像,构建包含语义信息的水产养殖车间的二维栅格地图;
根据某一时刻的巡检任务和所述二维栅格地图,采用离散化麻雀搜索算法进行路径规划,生成巡检控制信号,通过驱动装置控制巡检小车进行巡检;
在巡检过程中,通过摄像头拍摄水产养殖车间中的设备图像,并根据所述设备图像确定对应设备的运行状况。
可选地,所述根据所述位姿信息、行驶速度、激光雷达数据、RGB图像以及深度图像,构建包含语义信息的水产养殖车间的二维栅格地图,具体包括:
根据所述位姿信息以及行驶速度,确定巡检小车车体的位姿变化数据;
根据所述位姿变化数据,将所述深度图像与所述激光雷达数据融合,得到融合后的激光雷达数据;
根据所述融合后的激光雷达数据,采用GMapping算法构建二维栅格地图;
基于预先训练好的量化目标检测模型,对所述RGB图像进行目标识别,得到目标设备语义信息和目标设备候选框;
根据所述深度图像和所述激光雷达数据计算所述目标设备候选框与所述巡检小车之间的距离信息及夹角信息;
根据所述距离信息和所述夹角信息,在所述二维栅格地图中添加所述目标设备语义信息。
根据本发明提供的具体实施例,本发明公开了以下技术效果:通过激光雷达传感器和相机采集的信息融合引入到水产养殖车间智能巡检中,并根据位姿信息、行驶速度、激光雷达数据、RGB图像以及深度图像,构建包含语义信息的水产养殖车间的二维栅格地图,巡检小车可以根据所构建的二维栅格地图实现路径规划和自主导航,从而完成水产养殖车间所需要的多种巡检任务,实现无人车间的自动化作业。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本发明基于激光视觉融合的水产养殖车间无人巡检***的结构示意图;
图2为本发明基于激光视觉融合的水产养殖车间无人巡检方法的流程图;
图3为构建二维栅格地图的流程图;
图4为初始目标检测模型的结构图。
符号说明:
底盘-1,轮胎-2,电机-3,车体-4,锂电池-5,继电器模块-6,电机驱动器-7,DC-DC电压变换模块-8,核心控制器-9,电机驱动板-10,激光雷达传感器-11,相机-12,超声波传感器-13,充电口-14,摄像头-15。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明的目的是提供一种基于激光视觉融合的水产养殖车间无人巡检***及方法,通过激光雷达传感器和相机采集的信息融合引入到水产养殖车间智能巡检中,并根据位姿信息、行驶速度、激光雷达数据、RGB图像以及深度图像,构建包含语义信息的水产养殖车间的二维栅格地图,巡检小车可以根据所构建的二维栅格地图实现路径规划和自主导航,从而完成水产养殖车间所需要的多种巡检任务,实现无人车间的自动化作业。
为使本发明的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本发明作进一步详细的说明。
如图1所示,本发明基于激光视觉融合的水产养殖车间无人巡检***包括:巡检小车、驱动装置、激光雷达传感器11、相机12、摄像头15以及核心控制器9。
具体地,驱动装置与巡检小车连接,驱动装置用于驱动巡检小车运行,并检测所述巡检小车的行驶速度及位姿信息。在本实施例中,所述驱动装置安装在所述巡检小车的底盘1上,所述驱动装置通过悬挂***与底盘1连接。
激光雷达传感器11设置在巡检小车上,激光雷达传感器11用于扫描水产养殖车间内部的环境,得到激光雷达数据。在本实施例中,激光雷达为单线激光雷达。具体地,激光雷达传感器11为镭神系列LS01B雷达。
相机12设置在巡检小车上,相机12用于采集水产养殖车间内部的RGB图像和深度图像。在本实施例中,相机12为Kinect相机,具体可为Kinect V2相机。RGB图像可以用于目标检测获取语义信息,深度图像可以用于获得目标的姿态角与距离信息并与激光雷达数据进行信息融合。具体地,激光雷达传感器11和相机12通过USB转串口与核心控制器9连接。
摄像头15设置在巡检小车上,摄像头15用于拍摄水产养殖车间中的设备图像。水产养殖车间中的设备包括水池、增氧机、配电柜等。本发明通过图像处理和机器视觉等方法对车间内的设备状态进行检测。
核心控制器9分别与驱动装置、激光雷达传感器11、相机12及摄像头15连接,核心控制器9用于根据所述位姿信息、行驶速度、激光雷达数据、RGB图像以及深度图像,构建包含语义信息的水产养殖车间的二维栅格地图,以及根据远程终端下发的巡检任务和二维栅格地图,采用离散化麻雀搜索算法进行路径规划,生成巡检控制信号,通过驱动装置控制巡检小车进行巡检,并在巡检过程中,根据设备图像确定对应设备的运行状况。在本实施例中,核心控制器9为JETSON XAVIER NX核心控制器。所述核心控制器9上搭载ROS***。具体地,ROS***为ROS 18.04 Melodic版本。
作为本发明的一种实施方式,所述远程终端为上位机。远程终端与巡检小车保持在同一网段中,通过ROS中话题通信方式进行信息传递。
进一步地,所述驱动装置包括:电机3、编码器、电机驱动板10以及电机驱动器7。其中,电机3与巡检小车的车轮连接,电机3用于带动车轮转动。电机3固定在巡检小车的轮胎2中,带动轮胎2转动。
编码器与电机3连接,编码器用于将电机3的转动情况转换为脉冲信号,得到车轮的转动脉冲信息。在本实施例中,电机3和编码器为一体化的带有编码器的直流减速电机。编码器为霍尔式增量编码器。
电机驱动板10分别与编码器、电机3及核心控制器9连接,电机驱动板10用于根据转动脉冲信息,确定巡检小车的行驶速度,并检测巡检小车的位姿信息,以及根据巡检控制信号生成PWM信号。
电机驱动器7分别与电机驱动板10及电机3连接,电机驱动器7用于将PWM信号转化为同步高压信号,进而控制电机3的转动。
作为本发明的一种优选实施例,电机驱动板10的核心控制器为STM32F407系列开发板或DSP控制器。电机驱动板10上集成了IMU惯性测量单元。通过IMU获取巡检小车前进的姿态角、加速度信息,磁力计中的数据可以对测量得到的加速度和陀螺仪进行校正。具体地,所述IMU惯性测量单元采用MPU6050惯性测量传感器。
电机驱动板10采用两轮差速驱动方式控制巡检小车运动,并通过转动脉冲信息对巡检小车的运动控制进行PID调节。电机驱动板10根据IMU采集得到的角速度、加速度、姿态角信息以及车轮的转动脉冲信息,采用扩展卡尔曼滤波算法进行融合,得到小车的位姿信息与行驶速度。
在巡检小车遍历整个水产养殖车间的过程中,将惯性测量单元测量的信息与行驶速度相结合,提高了位姿估计的准确性。
更进一步地,所述核心控制器9包括:位姿变化确定模块、融合模块、地图构建模块、识别模块、设备添加模块、巡检模块以及设备状况确定模块。
其中,位姿变化确定模块与驱动装置连接,位姿变化确定模块用于根据所述位姿信息以及行驶速度,确定巡检小车车体4的位姿变化数据。
融合模块分别与位姿变化确定模块、相机12及激光雷达传感器11连接,融合模块用于根据位姿变化数据,将深度图像与激光雷达数据融合,得到融合后的激光雷达数据。
地图构建模块与融合模块连接,地图构建模块用于根据融合后的激光雷达数据,采用GMapping算法构建二维栅格地图。
识别模块与相机12连接,识别模块用于基于量化目标检测模型对RGB图像进行目标识别,得到目标设备语义信息和目标设备候选框。
设备添加模块分别与识别模块、相机12及激光雷达传感器11连接,所述设备添加模块用于根据所述深度图像和所述激光雷达数据计算所述目标设备候选框与所述巡检小车之间的距离信息及夹角信息,并根据所述距离信息和所述夹角信息,在所述二维栅格地图中添加所述目标设备的语义信息。
所述巡检模块与所述驱动装置连接,所述巡检模块用于根据某一时刻的巡检任务,采用离散化麻雀搜索算法进行路径规划,生成巡检控制信号。
所述设备状况确定模块与所述摄像头15连接,所述设备状况确定模块用于在巡检过程中,根据所述设备图像确定对应设备的运行状况。
为了提高巡检的效率,所述基于激光视觉融合的水产养殖车间无人巡检***还包括超声波传感器13。所述超声波传感器13与所述核心控制器9连接,所述超声波传感器13用于在巡检过程中,检测前方是否存在障碍物。
进一步地,所述核心控制器9还包括局部避障模块。所述局部避障模块与所述超声波传感器13连接,所述局部避障模块用于在前方存在障碍物时,采用动态时间窗口法进行局部避障及局部路径规划,生成局部避障控制信号。
所述驱动装置还用于根据所述局部避障控制信号控制所述巡检小车进行避障。所述超声波传感器13通过串口与所述电机驱动板10连接。
本发明基于激光视觉融合的水产养殖车间无人巡检***还包括锂电池5、继电器模块6以及DC-DC电压变换模块8。其中,锂电池5的最大容量为48V。可以通过巡检小车车体4上的接口直接向锂电池5供电。
DC-DC电压变换模块8用于将锂电池5的电压转换为12V、5V、3.3V等电压,为整个巡检小车中的嵌入式开发板和传感器供电。
继电器模块6用于控制锂电池5与所述DC-DC电压变换模块8之间的电路的通断。
可选地,所述基于激光视觉融合的水产养殖车间无人巡检***还包括激光雷达底座、相机支架以及摄像头支架。激光雷达传感器11固定在激光雷达底座上。激光雷达底座将激光雷达传感器11设置一定高度,与巡检小车顶部保持一定距离。
相机支架为三脚架,通过螺母固定在巡检小车的顶部,相机12设置在三脚架上。所述相机12的高度比所述激光雷达传感器11的高度高。
摄像头15支架通过轻质金属材料搭载在巡检小车的车顶上。在本实施例中,轻质金属材料如铝合金等,但不限于此。
为了能够更好观察到养殖车间设备的运行状态,所述摄像头支架应具有一定高度,使摄像头15能够拍摄到水面等位置。
如图2所示,本发明基于激光视觉融合的水产养殖车间无人巡检方法包括:
S1:通过驱动装置检测巡检小车的行驶速度及位姿信息。
S2:通过相机采集水产养殖车间内各设备的RGB图像和深度图像。
S3:通过激光雷达传感器对水产养殖车间内部的环境进行扫描,得到激光雷达数据。
S4:根据所述位姿信息、行驶速度、激光雷达数据、RGB图像以及深度图像,构建包含语义信息的水产养殖车间的二维栅格地图。
S5:根据某一时刻的巡检任务和二维栅格地图,采用离散化麻雀搜索算法进行路径规划,生成巡检控制信号,通过驱动装置控制巡检小车进行巡检。
S6:在巡检过程中,通过摄像头拍摄水产养殖车间中的设备图像,并根据所述设备图像确定对应设备的运行状况。
进一步地,如图3所示,S4具体包括:
S41:根据位姿信息以及行驶速度,确定巡检小车车体的位姿变化数据。
S42:根据所述位姿变化数据,将所述深度图像与所述激光雷达数据融合,得到融合后的激光雷达数据。
S43:根据所述融合后的激光雷达数据,采用GMapping算法构建二维栅格地图。
S44:基于预先训练好的量化目标检测模型,对所述RGB图像进行目标识别,得到目标设备语义信息和目标设备候选框。
S45:根据所述深度图像和所述激光雷达数据计算所述目标设备候选框与所述巡检小车之间的距离信息及夹角信息。
S46:根据所述距离信息和所述夹角信息,在所述二维栅格地图中添加所述目标设备语义信息。具体地,根据所述距离信息和所述夹角信息解算得到目标设备在以巡检小车自身为原点坐标系下的坐标。之后,进行坐标变换,将目标设备位置坐标转换为地图坐标系这一绝对坐标系下,之后再将目标设备的语义信息添加到二维栅格地图中。
具体地,所述量化目标检测模型的建立方法包括:
采集水产养殖车间的RGB图像数据集。选定一个具有代表性的工厂化循环水养殖车间场景,在多种光照条件下使用RGB摄像头。RGB图像数据集中包含车间场景中的多种常见物体,如鱼池、沉淀池、硝化池、水泵、配电柜、饲料袋、饲料箱、投饵机等。除此之外,还应该包含动态物体—人。本实施例中包括3000张标注准确结果的图片和5000张标注粗略的图片。使用其中精确标注的图片用于强监督学习。
由于水产养殖车间的光照较暗,不利于目标检测网络提取到图像的纹理特征,因此,对每张RGB图像进行增强处理,得到增强图像,并对每张增强图像进行目标设备语义和目标候选框标注,得到样本图像集,增强图像的对比度。在本实施例中,采用HSV空间的彩色图像增强方法对每张RGB图像进行增强处理。
根据样本图像集,对MobileNet-SSD模型进行迭代训练,得到初始目标检测模型。在本实施例中,选用MobileNet网络进行图像特征提取,作为SSD目标检测网络的输入,本发明采用的网络结构中,前13层卷积层结构与MobileNet网络结构一致,之后的8个卷积层用来提取不同尺度的特征图,作为SSD目标检测网络的输入。其中,MobileNet网络采用深度可分离的卷积操作代替传统卷积操作,大大降低了乘法运算的次数,适合搭载在嵌入式***中。
采用随机梯度下降等方法训练模型并更新参数,直到模型趋于收敛。采用非极大值抑制算法去除多余的目标检测框。利用验证集验证效果后,得到最终的网络模型参数。并在测试集中进行泛化能力测试。
基于K-means聚类方法,对所述初始目标检测模型进行量化处理,得到量化目标检测模型。将量化目标检测模型部署到巡检***中的核心控制器中。
在水产养殖车间的地图构建过程中,通过目标检测模型获取场景中的语义信息,并对目标检测网络进行量化压缩处理,使其能够部署在嵌入式设备中。
具体地,对所述初始目标检测模型进行量化处理,具体包括:
采用K-means聚类方法对初始目标检测模型进行量化,并将量化后的聚类中心值存储成字码本。
具体地,如图4所示,针对初始目标检测模型中的任意一层中的任意一个卷积核W*H*C,将其分解成W*H*m个向量,每个向量的维度都是C/m,其中,W代表卷积核的宽度,H代表卷积核的高度,C代表卷积核的通道数。假设每一层中卷积核的个数为N。此时,任意一个卷积核都可以采用分块矩阵的方式表示。
针对样本集中的每一个簇,采用[0,2n-1]区间的所有整数对其进行编码。构建一个字码本,在表中储存每一个索引编码和其对应的质心向量。此时,可以用簇索引编号表示卷积核中某一个分块向量的权值参数。同理,还可以此方法量化偏置矩阵的参数。
作为本发明的一个实施例,以Conv_3卷积层中的卷积核为例,一共具有256个卷积核,每一个卷积核的尺寸都为3*3*128,假设将该层卷积核中每一个卷积核都拆分成1*1*16的向量,则一共可以分为3*3*(128/16)*256个向量。若需要采用8位整数进行量化,则采用K-means算法将向量集聚类的个数为28=256。此时,需要在字码本中存储编号为0-255的编码以及每一个编码对应的聚类后簇的质心向量。此时,可以采用字码本中的存储编号对卷积核进行表示,这种方法大大压缩了存储权值参数所需的内存。
将量化完毕后的初始目标检测模型进行调整,部署到嵌入式终端中。在本实施例中,针对初始目标检测模型前13层的卷积核,首先采用8比特进行量化。将量化前后的矩阵欧式距离作为目标函数,对量化后的模型进行训练,微调网络的权重参数。针对量化后的模型,计算其精确率A q ,若满足,则将其部署到嵌入式终端中,否则增加量化的位数,改为16比特量化。若仍不满足量化后的目标检测模型的精确率,可以适当调节某些层不做量化处理。
在本实施例中,嵌入式终端为小车内部搭载的JETSON XAVIER NX开发板。这款嵌入式开发板适合进行边缘计算,在其中量化目标检测模型。
进一步地,位姿信息包括三轴加速度信息、三轴姿态角信息。S41具体包括:
S411:根据巡检小车的初始位置、三轴加速度信息、三轴姿态角信息以及行驶速度,确定巡检小车车体运动的状态转移方程和观测方程。
S412:根据所述状态方程及所述观测方程,采用扩展卡尔曼滤波算法EKF确定车体状态量。所述车体状态量包括车体的水平位移x、竖直位移y、水平方向速度vx、竖直方向速度vy、车体旋转角度θ以及车体旋转角速度v θ 。
S413:根据所述车体状态量,确定车体的位姿变化数据。
具体地,设车体状态量为,控制量为,IMU传感器的采样时间间隔为dt。其中,巡检小车车体线速度为V x 、V y ;V x 表示车体前后行进速度,V y 表示车体横向速度;(x,y)为车体相对起始点的坐标,a x 表示车体前后方向加速度,a y 表示车体横向加速度。车体本身与起始航向之间航向角为θ,车体的旋转速度为V θ 。
状态转移方程为:
观测方程为:
其中,表示在第k-1时刻对第k时刻的车体状态向量的估计值,表示在第k-1时刻对第k-1时刻的车体状态向量的估计值,为k-1时刻车体控制向量的估计值,表示巡检小车的过程激励噪声,为在第k-1时刻对第k时刻的车体观测向量的估计值,表示巡检小车的观测噪声,A为状态矩阵,B为控制矩阵,H为观测矩阵。
由于A矩阵中包含状态之间的三角函数,为非线性关系,因此采用A矩阵的雅可比矩阵F代替A进行一阶线性化。
控制矩阵B为:
观测矩阵H为I6×6(表示6阶单位方阵)。
采用EKF方法迭代更新,确定车体状态量:
其中,Q和R两个协方差矩阵需通过对巡检小车所携带的传感器数据多次测量取平均值得到,Q和R表示噪声协方差矩阵,为通过第k-1时刻对第k时刻预测得到的协方差矩阵,表示迭代更新后的第k时刻协方差矩阵,为通过第k-1时刻对第k-1时刻预测得到的协方差矩阵,为卡尔曼增益系数,为迭代更新后的第k时刻状态向量的估计值,为第k时刻的观测向量。观测值是测量设备/传感器等观测得到的数值。
在机器人操作***(ROS)中,车体状态量中的位姿信息包括位置和转角(x,y,θ),速度信息包括线速度和角速度。通过上面的扩展卡尔曼滤波公式(EKF)可以推算小车的位姿变化。
进一步地,S42具体包括:
S421:根据所述位姿变化数据,以分段线性插值的方法去除所述激光雷达数据的运动畸变,并对所述激光雷达数据进行时间同步,得到同步激光雷达数据。具体地,由于激光雷达传感器是单线激光雷达,它不断旋转扫描360°方向上存在的障碍物。因此在扫描的过程中时间戳是不同步的,这一步需要使其时间同步。后面转换的公式需要计算用到位姿信息,然而在某些时刻上可能没有数据,此时需要进行插值。
S422:对所述深度图像进行滤波处理,得到滤波深度图像。作为一种具体的实施例,可以首先在深度图像中遍历寻找深度值为0的点,统计该点外层8个点的非零深度频次,设置一个阈值。若统计完毕后非零值频次超过阈值,以频次最高的统计数据赋予原先的零值点,修复深度图像。
S423:将所述滤波深度图像中的点均对应转化到世界坐标系下,得到深度图像坐标点。具体地,对滤波深度图像上任意一点m(u c ,v c ,z c ),将其转化为世界坐标系下点M(x w ,y w ,z w )。
其中,z c 为目标到相机的距离,(u 0,v 0)为滤波深度图像的中心坐标,dx、dy分别为每一个像素点在x轴、y轴上尺寸,f表示焦距。
S424:将所述深度图像坐标点转化为伪激光数据。具体地,将世界坐标系下点M(x w ,y w ,z w )转化为激光数据,
点M在一帧激光数据中的索引值为:
其中,N表示激光束细分份数,α、β分别为激光采集范围的最小值和最大。
S425:对同步激光雷达数据以及所述伪激光数据进行数据融合,得到融合后的激光雷达数据。具体地,同步激光雷达数据记为R i ,将深度图像转换后的伪激光数据记为D i ,假设融合后的激光雷达数据为N i ,N i 包含(ρ,φ)两个参数。其中:
当D i 为0时,表示该点只有深度图像数据信息,说明障碍物不在2D激光雷达所能扫描到的平面上;当R i 为0时,说明该点只有激光雷达的信息,此处在深度相机的视野之外;当|D i -R i |>θ时,认为图像形状不规则,以深度图像的数据为准。当D i 、R i 均不为0且|D i -R i |<θ时,应融合两种传感器数据。
进一步地,在S421中,对于一帧激光雷达数据(起点时间戳为t 1,终点时间戳为t n )中的每一帧做如下处理:
具体地,里程计数据包括巡检小车的位姿信息和速度信息,其中位姿信息包括(x,y,θ)。通过IMU可以获取加速度信息,通过编码器可以将脉冲信号转化为小车的左右两轮速度,根据差速运动模型可以推导出小车整体速度,进而积分得到位移信息。此外,IMU传感器可以测量角速度,根据角加速度积分可以得到旋转角θ。
在巡检小车行进的过程中,IMU传感器、编码器以及激光雷达传感器不断获取相应的数据,经过S412的EKF后即可得到里程计信息。
将激光点坐标转化到世界坐标系下:
其中(x w k ,yw k )为在第t k 时刻激光点在世界坐标系下的坐标,φ k 是在第t k 时刻激光雷达传感器测量得到的物体与巡检小车正前方向的夹角值(激光雷达0°的基准与小车正前方保持一致)。
ρ k 是在第t k 时刻激光雷达传感器所测物体与激光雷达传感器的距离值。
θ rk 是在第t k 时刻巡检小车位姿中的角度偏转。此时以巡检小车为坐标系原点,右侧,上侧分别为x轴和y轴正方向。
θ m 是在第t k 时刻小车位姿中的角度偏转。
其中,x rn 、y rn 、θ rn 为t n 时刻所得的小车位姿数据。
优选地,S43:根据所述融合后的激光雷达数据,采用GMapping算法构建二维栅格地图,具体包括:
S431:初始化粒子群,遍历上一时刻粒子群中的粒子,取粒子携带的位姿、权重和地图信息,通过融合后的里程计信息进行小车位姿进行迭代更新。
粒子中包含巡检小车的轨迹信息、地图信息以及粒子的权重信息。最开始粒子的位姿是相同的,然后根据概率分布的变化不断迭代,通过t-1时刻来推算下一个时刻。
S432:采用极大似然估计的方法,对粒子进行扫描匹配,寻找局部极值。
S433:若没有找到局部极值,使用优化提议分布更新粒子位姿状态,并使用观测模型为位姿权重更新。由于激光雷达匹配的方差比里程计方差小很多,可以采用提议分布来进行采样,提议分布的计算公式为:
其中优化提议分布计算公式为(20)式。
S434:若找到局部极值,在局部极值附近选取e个粒子点,采用多元正态分布计算新的位姿,并计算该位姿粒子的权重。
其中,选取局部极值附近位姿需要满足如下公式:
对所选的e个粒子x j ∈{x 1,...,x K }分别采用多元正态分布计算e个位姿的均值和权重公式为:
S435:更新每一个粒子的地图,并更新粒子群,判断是否到达最大迭代次数。若没达到最大迭代次数则返回S431继续执行循环。其中地图更新公式如下所示,粒子群更新公式为:
S436:计算优化后的粒子权重并进行归一化。计算所有粒子权重离散程度,判断是否需要进行重采样。
其中权重更新公式为:
确定重采样的公式为:
S44:基于预先训练好的量化目标检测模型,对所述RGB图像进行目标识别,得到目标设备语义信息和目标设备候选框,具体包括:
对RGB图像进行预处理,并通过SSD算法确定目标语义、候选框和概率信息。其中,图像预处理包括去除噪声处理和增强处理。所述图像去除噪声算法可以采用中值滤波算法,均值滤波算法以及基于频率域的低通滤波等方法的一种或多种。图像增强处理可以采用基于HSV空间的彩色图像增强方法等。通过图像预处理,可以提高图像的对比度,提高目标检测算法在光线较暗的水产养殖车间中的精确度。
将经过预处理后的图像裁剪成所需的尺寸,输入到量化目标检测模型中,获取目标设备候选框信息(x,y,w,h)。其中(x,y)表示目标中心点的位置,w和h分别表示检测框的宽度和高度。
更进一步地,S45具体包括:
S451:将所述目标设备候选框映射到所述深度图像中,得到所述目标设备候选框对应的目标设备的深度信息。具体地,巡检小车上搭载的相机为Kinect,可以在同一视角下同时采集RGB图像和深度图像,因此,目标设备候选框的位置与点云图像中目标所在的位置相同,因此,由边界框的位置可以确定深度图像的范围。对该范围区域深度图像通过背景切割算法,滤除背景信息,仅保留物体的深度信息。
S452:根据所述深度信息和所述激光雷达数据,确定目标设备与巡检小车的距离信息和夹角信息。具体地,求深度图像的深度平均值,记为d camera ,并根据Kinect相机的外参矩阵,得到目标设备与相机坐标系之间方位角的估计值。
由于激光雷达对距离和角度的测量更为精确,计算与当前时刻的单线激光雷在[α-δ,α+δ]夹角内测量距离的平均值,记为d laser 。其中,[α-δ,α+δ]代表一个较小的邻域范围。在本实施例中,δ取10°。
则目标设备与巡检小车的水平距离可表示为:
当根据深度相机计算得到的距离信息与根据激光雷达数据计算得到的距离信息之间的差值小于阈值Δ时,认为观察到了同一个设备。此时目标设备与巡检小车的水平距离d可以由d camera 和d laser 根据权重ω共同决定。由于激光雷达的测量精确性更高,在本实施例中ω取0.8。当距离差值大于阈值时,由于巡检小车搭载的单线激光雷达可能只能测量到一定高度平面上物体的距离。此时认为激光雷达传感器没有观测到目标设备,此时,d=d laser 。在本实施例中,Δ取值为0.2m。
可选地,本发明基于激光视觉融合的水产养殖车间无人巡检方法还包括:
构建水产养殖车间设备信息数据库,遍历所有包含语义信息的地图点,将相关信息导入到数据库中。其中,数据库中的每一元组包括设备编号,设备类型,在二维语义栅格地图上的轴坐标和轴坐标以及设备运行状态。其中,设备编号作为该数据库中的主键,栅格地图每一个标注的语义信息都有唯一的设备编号。设备类型可以分为鱼池、沉淀池、硝化池、水泵、配电柜、饲料袋、饲料箱、投饵机等多个种类,设备类型在数据库中可以采用varchar类型存储。
设备坐标是数据库存储的关键信息,通过查询数据库的方式,便于小车在巡检过程中进行全局路径规划。具体地,存储的坐标应为该设备在地图所占几何区域的质心坐标。运行状态是每完成一次巡检任务需要更新的信息,可以采用布尔类型存储。True和false分别代表运行状态正常和异常。
在本实施例中,采用MySQL数据库对水产养殖车间信息进行管理。该数据库能够完成正常的添加、删除、修改、查询等功能。小车每生成一幅带有语义信息的栅格地图后都应该立即数据库进行更新。
优选地,S46具体包括:
S461:以巡检小车为原点建立坐标系,根据所述距离信息和所述夹角信息,将所述目标设备的坐标转换为二维栅格地图坐标系下的坐标,并将所述目标设备语义信息添加到所述二维栅格地图中。
S462:在所述二维栅格地图中选取一个返航点,并将所述返航点的语义信息添加到所述二维栅格地图中。由于水产养殖车间环境复杂,含有大量的水循环设备和电力设备。若小车在巡检结束后随意停靠,一方面影响其他人通过,另一方面当水管破裂、水溢出养殖池时,会造成很大的安全隐患。因此需要设置小车的定点返航功能。寻找安全、干燥的位置作为小车的返航点,并在此处设置充电装置供小车使用。
在本实施例中,所述巡检任务包括多个目标巡检设备。根据某一时刻巡检需求,采用改进的离散化麻雀搜索算法规划巡检策略,并通过A*算法和DWA算法分别实现任意巡检点之间的全局路径规划与局部路径规划。通过图像处理算法判断各个设备的运行情况。S5具体包括:
S51:获取各目标巡检设备对应的坐标信息。
S52:根据巡检小车的坐标以及各目标巡检设备的坐标信息,确定巡检小车与各目标巡检设备之间的距离,以及各目标巡检设备两两之间的距离,得到距离矩阵。
S53:根据所述距离矩阵,采用离散化麻雀搜索算法进行巡检策略规划,得到巡检序列。
S54:根据所述二维栅格地图和所述巡检序列进行全局路径规划,得到全局路径。
S55:根据所述全局路径生成巡检控制信号,通过驱动装置控制所述巡检小车进行巡检。
具体地,根据实际需求,在数据库中查询目标巡检设备的坐标信息,将巡检小车所在位置与目标巡检设备的位置关系采用图模型表示。
在水产养殖车间的巡检作业中,主要包含有两种巡检方式。一种是根据上位机发送指令巡检相应设备。另一种是针对不同的设备每隔固定的时间周期进行一次巡检。
巡检小车明确巡检任务后,在数据库中查询相应的目标巡检设备,将巡检小车停靠的位置记为0,目标巡检设备的位置分别用1,2,3...,n来表示。可用n+1阶方阵W表示抽象出的图结构。
当i=j时,d ij =0。
S53具体包括:采用离散化的麻雀搜索算法对多个目标巡检设备进行巡检策略规划。对多个目标巡检设备先后顺序排序,使得预估全局总路程和为最小。传统的麻雀搜索算法是基于连续问题的,而本发明借鉴了麻雀搜索算法的思想,用于解决TSP问题(旅行商)问题,此时是离散化的。因此采用离散化的麻雀搜索算法。
巡检小车在水产养殖车间里的全局路径规划可以看作是从某一个点出发,对需要巡检的目标点仅遍历一次,最终回到出发点。该问题可以看作是旅行商(TSP)问题。采用基于离散化的仿生算法可以迭代式快速求解此问题。
首先对麻雀种群进行初始化,设置麻雀种群规模为N,发现者个数为P d ,预警者个数为S d ,最大迭代次数为ss。适应度f为总路径和的倒数d。p i 表示访问顺序中的第i个节点。d(p i ,p i+1)表示第i个节点和第i+1个节点之间的距离。
设置预警值和安全值ST∈[0.5,1)。并生成一个随机数r,r∈(0,1]。当r<w时,意味着觅食环境安全,发现者可以执行大范围的搜索操作。当r≥w时,意味着部分麻雀发现了捕食者发出了警报信号,此时所有麻雀应该转移至安全位置。
设计预警值w的计算公式如公式(36):w max 和w min 分别代表自定义的预警值最大值和最小值。在本申请中,预警值w应不断变化。这是因为当迭代次数较小的时候,发现者的适应度较差,需要大范围的调整。随着预警值的不断增加,发现者的适应度将不断提高。此时应该将预警值w调大。防止已经计算出的较优路径片段被修改,导致算法不再收敛。ss代表最大迭代次数,t表示已经迭代的次数。
针对发现者,借鉴遗传算法中调整顺序的思想,产生新的个体。当随机数r<w时,将整个路径序列C={C 1,C 2,...,C n }均匀分为k段,对分段之后的每一个子序列做如下变换:假设L={l 1,l 2,...,l m }为整个路径序列C分段后的一个子序列,任选i,j∈{1,2,...,m},且i≠j,交换l i 与l j 和l i+1与l j+1。当r≥w时,对整个路径序列C任选i,j∈{1,2,…,n},且i≠j,交换C i 与C j 。从而得到一个新的序列。
对新的序列求适应度f,若更新后序列的适应度比原序列适应度大,则对发现者的位置进行更新。
针对种群中的发现者,采用融合、交叉、随机生成的方式,产生新的种群个体。通过融合方式产生新的种群计算步骤如下:
(1)计算跟随着与发现者两个路径编码之间的差异度:假设两个序列x i (t)=(x i1,x i2,…,x in )和x j (t)=(x j1,x j2,…,x jn )。个体i,j在第t次编码迭代的差异度为:
其中,δ ij (t)表示两个序列中的差异度,k表示序列中的第k个元素。其中发现者为发现者种群中任意一只麻雀的位置。
(2)则麻雀跟随着的位置更新方法为:针对跟随着序列中的每一个元素x i =(t,k),生成一个(0,1)之间的随机数p,若p≤δ ij (t),则将x i+1(t,k)的值改变为发现者序列对应位置的值,否则不变。
(3)由于按此种方法生成的跟随着序列中,可能存在重复的现象。因此首先查找序列{1,2,...,n}中在未出现的元素,以及跟随着序列中重复的元素。将未出现元素的值随机排列赋值给重复元素除第一次出现的位置。此时既可以生成一个新的跟随者位置。
采用交叉的方式生成新的序列类似于染色体交叉变异,可以在两个发现者序列中按相同分割点进行分割,假设分为组。构造的新序列也分为组,其中第组位置上的子序列随机选取两个发现者序列中的任意一组构成新序列i∈{1,2,...,k}。
除此之外,还可以随机生成麻雀种群序列的方法生成新的追随者,可以防止算法陷入局部收敛状态。麻雀种群中追随者按照上三种方式更新的比例设定为1:1:1。
在整个麻雀种群中,还需要随机选取一定数量的麻雀进行反捕食行为。当选取到的反捕食行为麻雀属于发现者的时候,需要向追随者学习。此时在追随着中选择适应度较高的一个个体。产生[1,n]之间的两个随机整数i和j,将发现者序列的第i位和第j位元素分别更改为追随者中相应位置的元素。若发现者序列出现重复元素,将后面出现的重复元素替换成序列未出现的元素。反捕食行为的追随者更新方法可以采用以上所述的追随者交叉方式生成新的序列。
作为一种优选的实施例,假设小车的初始位置为0号点,需要巡检的设备分别编号为{1,2,...,m}。最后规划出的方案应为一个长度为的序列(n=m+1),记为{1,2,3...n},且在该序列中,每一个元素只能出现一次。
优选地,设置种群规模N=100,发现者个数P d =10,反捕食者个数S d =10,最大迭代次数ss=50。需要巡检的目标点n=10,取w max =0.95,w min =0.2,k=2,采用采用离散化麻雀搜索算法进行巡检策略规划最终可以生成适应度较高的巡检规划序列。对序列循环移位,使1号位置(小车出发原点)位于序列首部。此时得到的序列顺序即为巡检顺序。
将需要巡检的场景节点与此巡检序列存储到核心控制板的数据库中,当下一次巡检这些节点时,可以采用查表的方式查询数据库中是否具有相应巡检序列。
在S54中,采用A*搜索算法进行全局路径规划。启发函数f(n)的公式为式(41),其中g(n)表示路径上的点到起点位置的距离,h(n)表示路径上的点到终点位置的距离。在栅格地图中,距离公式采用曼哈顿距离,dis=|x 2-x 1|+|y 2-y 1|。其中两个点横纵方向上的距离值为两点之间的栅格个数。
f(n)=g(n)+h(n) (40)
A*算法采用两个集合表示待遍历的点与已经遍历过的点。每一次都从待遍历的队列中选取f(n)最小的节点作为下一个待遍历的节点。该节点遍历完之后,在栅格地图中,寻找该点四个方向相邻的栅格,若没有障碍物,将其加入到待遍历队列的最末端。直到到达目标点算法结束。
作为一种优选的实施例,根据S53规划的巡检序列依次巡检,其中每两个相邻节点之间的全局路径规划算法采用A*搜索算法。巡检小车根据路径规划的结果前往目标点,采用图像处理相关算法判断水产养殖车间内相关设备工作状态,并更新至数据库中。
在本实施例中,需要巡检的主要设备包括水池管道的开关状态、配电箱的运行状态、养殖池的液位、鱼类的游动情况、循环泵等电机设备的运行状态。针对水池管道的开关状态检测,可以通过目标检测的方法,检测出水阀门附近水流是否产生液柱,以此判断出/入水阀门是否开启。
针对配电箱的运行状态检测,由于配电箱上具有红色和绿色的指示灯。可以拍摄的指示灯将RGB图像转换到HSV颜色空间,提取色调通道并计算直方图,根据排序结果确定是红灯闪烁还是绿灯闪烁,以此判断配电箱的工作状态。
针对鱼类的运动状态,可以通过光流法计算鱼群的平均游动速度v。设置阈值δ,设定鱼群速度v<=δ,说明鱼群状态稳定,当v>δ时,说明鱼群可能处于饥饿状态或因为水体溶解氧含量不足、氨氮浓度过高等原因造成。此时应该及时向上位机发出报警信号,并将采集的图片传输给上位机端进行决策。
针对养殖池中循环泵、控制泵等电机设备,可以在小车上搭载声音传感器,采集循环泵等设备的声音振动信号。可以采用数字信号处理算法计算音频频率信息或通过功率谱计算能量,实现对振动信号的分类判别,确定该设备是否处于异常工作状态。振动信号分类还可以采用一维CNN等算法,将采集的音频信息输入1维进经过训练后的卷积神经网络模型中,全连接层模型输出为振动信号正常的概率值,判断水泵模块是否正常工作。
为了提高巡检效率,所述根据某一时刻的巡检任务,采用离散化麻雀搜索算法进行路径规划,并控制所述巡检小车根据路径规划结果进行巡检,还包括:在所述巡检小车的巡检过程中,通过超声波传感器和相机检测前方是否存在障碍物。当前方存在障碍物时,采用动态时间窗口法进行局部避障以及局部路径规划,得到局部路径。通过驱动装置根据所述局部路径,控制所述巡检小车进行局部避障。
具体地,在小车巡检的过程中,基于DWA算法实现局部避障与路径规划。首先使用超声波传感器和深度图像判断前方是否存在障碍物。当存在障碍物时,可以根据目标检测的结果判断是否是动态障碍物。若目标检测结果是人,则小车停止运动一段时间,等待行人通过后,继续进行路径规划。否则,采用DWA动态时间窗口法进行局部路径规划用以躲避障碍物。
DWA算法首先需要确定小车能够行进的最大速度v max 和最小速度v min ,以及能够行进的角速度范围。根据全局路径规划获得的大致可行路线,以及速度范围和角速度范围对速度空间(v,w)进行采样,获得多条预定速度样本。对每条速度样本采用如下函数G(v,w)进行打分:
G(v,w)=σ(a∙heading(v,w)+b∙dist(v,w)+γ∙velocity(v,w)) (41)
其中,heading(v,w)=(180°-θ)/π,θ为巡检小车的速度转向角,dist(v,w)表示巡检小车与最近障碍物的距离,velocity(v,w)表示巡检小车的速度,评分函数G(v,w)越大说明该路径越好。DWA算法选择评分函数最高的路径进行局部避障与路径规划。
本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处。综上所述,本说明书内容不应理解为对本发明的限制。
Claims (7)
1.一种基于激光视觉融合的水产养殖车间无人巡检***,其特征在于,所述基于激光视觉融合的水产养殖车间无人巡检***包括:
巡检小车;
驱动装置,与所述巡检小车连接,用于驱动所述巡检小车运行,并检测所述巡检小车的行驶速度及位姿信息;
激光雷达传感器,设置在所述巡检小车上,用于扫描水产养殖车间内部的环境,得到激光雷达数据;
相机,设置在所述巡检小车上,用于采集水产养殖车间内部的RGB图像和深度图像;
摄像头,设置在所述巡检小车上,用于拍摄水产养殖车间中的设备图像;
核心控制器,分别与所述驱动装置、所述激光雷达传感器、所述相机及所述摄像头连接,用于根据所述位姿信息、行驶速度、激光雷达数据、RGB图像以及深度图像,构建包含语义信息的水产养殖车间的二维栅格地图,以及根据远程终端下发的巡检任务和所述二维栅格地图,采用离散化麻雀搜索算法进行路径规划,生成巡检控制信号,通过所述驱动装置控制所述巡检小车进行巡检,并在巡检过程中,根据所述设备图像确定对应设备的运行状况;
所述核心控制器包括:
位姿变化确定模块,与所述驱动装置连接,用于根据所述位姿信息以及行驶速度,确定巡检小车车体的位姿变化数据;
融合模块,分别与所述位姿变化确定模块、所述相机及所述激光雷达传感器连接,用于根据所述位姿变化数据,将所述深度图像与所述激光雷达数据融合,得到融合后的激光雷达数据;
地图构建模块,与所述融合模块连接,用于根据所述融合后的激光雷达数据,采用GMapping算法构建二维栅格地图;
识别模块,与所述相机连接,用于基于预先训练好的量化目标检测模型,对所述RGB图像进行目标识别,得到目标设备语义信息和目标设备候选框;所述量化目标检测模型的建立方法包括:采集水产养殖车间的RGB图像数据集;对每张RGB图像进行增强处理,得到增强图像,并对每张增强图像进行目标设备语义和目标候选框标注,得到样本图像集;根据所述样本图像集,对MobileNet-SSD模型进行迭代训练,得到初始目标检测模型;基于K-means聚类方法,对所述初始目标检测模型进行量化处理,得到量化目标检测模型,具体包括:针对初始目标检测模型中的任意一层中的任意一个卷积核W*H*C,将其分解成W*H*m个向量,每个向量的维度都是C/m,其中,W代表卷积核的宽度,H代表卷积核的高度,C代表卷积核的通道数;采用K-means算法对每一层所有卷积核分解出的向量进行聚类;
设备添加模块,分别与所述识别模块、所述相机及所述激光雷达传感器连接,用于根据所述深度图像和所述激光雷达数据计算所述目标设备候选框与所述巡检小车之间的距离信息及夹角信息,并根据所述距离信息和所述夹角信息,在所述二维栅格地图中添加所述目标设备的语义信息;
巡检模块,与所述驱动装置连接,用于根据某一时刻的巡检任务,采用离散化麻雀搜索算法进行路径规划,生成巡检控制信号;
设备状况确定模块,与所述摄像头连接,用于在巡检过程中,根据所述设备图像确定对应设备的运行状况。
2.根据权利要求1所述的基于激光视觉融合的水产养殖车间无人巡检***,其特征在于,所述驱动装置包括:
电机,与所述巡检小车的车轮连接,用于带动所述车轮转动;
编码器,与所述电机连接,用于将电机的转动情况转换为脉冲信号,得到车轮的转动脉冲信息;
电机驱动板,分别与所述编码器、所述电机及所述核心控制器连接,用于根据所述转动脉冲信息,确定所述巡检小车的行驶速度,并检测巡检小车的位姿信息,以及根据所述巡检控制信号生成PWM信号;
电机驱动器,分别与所述电机驱动板及所述电机连接,用于将所述PWM信号转化为同步高压信号,进而控制电机的转动。
3.一种基于激光视觉融合的水产养殖车间无人巡检方法,其特征在于,所述基于激光视觉融合的水产养殖车间无人巡检方法包括:
通过驱动装置检测巡检小车的行驶速度及位姿信息;
通过相机采集水产养殖车间内各设备的RGB图像和深度图像;
通过激光雷达传感器对所述水产养殖车间内部的环境进行扫描,得到激光雷达数据;
根据所述位姿信息、行驶速度、激光雷达数据、RGB图像以及深度图像,构建包含语义信息的水产养殖车间的二维栅格地图;
根据某一时刻的巡检任务和所述二维栅格地图,采用离散化麻雀搜索算法进行路径规划,生成巡检控制信号,通过驱动装置控制巡检小车进行巡检;
在巡检过程中,通过摄像头拍摄水产养殖车间中的设备图像,并根据所述设备图像确定对应设备的运行状况;
所述根据所述位姿信息、行驶速度、激光雷达数据、RGB图像以及深度图像,构建包含语义信息的水产养殖车间的二维栅格地图,具体包括:
根据所述位姿信息以及行驶速度,确定巡检小车车体的位姿变化数据;
根据所述位姿变化数据,将所述深度图像与所述激光雷达数据融合,得到融合后的激光雷达数据;
根据所述融合后的激光雷达数据,采用GMapping算法构建二维栅格地图;
基于预先训练好的量化目标检测模型,对所述RGB图像进行目标识别,得到目标设备语义信息和目标设备候选框;
根据所述深度图像和所述激光雷达数据计算所述目标设备候选框与所述巡检小车之间的距离信息及夹角信息;
根据所述距离信息和所述夹角信息,在所述二维栅格地图中添加所述目标设备语义信息;
所述量化目标检测模型的建立方法包括:
采集水产养殖车间的RGB图像数据集;
对每张RGB图像进行增强处理,得到增强图像,并对每张增强图像进行目标设备语义和目标候选框标注,得到样本图像集;
根据所述样本图像集,对MobileNet-SSD模型进行迭代训练,得到初始目标检测模型;
基于K-means聚类方法,对所述初始目标检测模型进行量化处理,得到量化目标检测模型。
4.根据权利要求3所述的基于激光视觉融合的水产养殖车间无人巡检方法,其特征在于,所述根据所述位姿变化数据,将所述深度图像与所述激光雷达数据融合,得到融合后的激光雷达数据,具体包括:
根据所述位姿变化数据,以分段线性插值的方法去除所述激光雷达数据的运动畸变,并对所述激光雷达数据进行时间同步,得到同步激光雷达数据;
对所述深度图像进行滤波处理,得到滤波深度图像;
将所述滤波深度图像中的点均对应转化到世界坐标系下,得到深度图像坐标点;
将所述深度图像坐标点转化为伪激光数据;
对所述同步激光雷达数据以及所述伪激光数据进行数据融合,得到融合后的激光雷达数据。
5.根据权利要求3所述的基于激光视觉融合的水产养殖车间无人巡检方法,其特征在于,所述根据所述深度图像和所述激光雷达数据计算所述目标设备候选框与所述巡检小车之间的距离信息及夹角信息,具体包括:
将所述目标设备候选框映射到所述深度图像中,得到所述目标设备候选框对应的目标设备的深度信息;
根据所述深度信息和所述激光雷达数据,确定目标设备与巡检小车的距离信息和夹角信息。
6.根据权利要求3所述的基于激光视觉融合的水产养殖车间无人巡检方法,其特征在于,所述根据所述距离信息和所述夹角信息,在所述二维栅格地图中添加所述目标设备语义信息,具体包括:
以巡检小车为原点建立坐标系,根据所述距离信息和所述夹角信息,将所述目标设备的坐标转换为二维栅格地图坐标系下的坐标,并将所述目标设备语义信息添加到所述二维栅格地图中;
在所述二维栅格地图中选取一个返航点,并将所述返航点的语义信息添加到所述二维栅格地图中。
7.根据权利要求3所述的基于激光视觉融合的水产养殖车间无人巡检方法,其特征在于,所述巡检任务包括多个目标巡检设备;
所述根据某一时刻的巡检任务和所述二维栅格地图,采用离散化麻雀搜索算法进行路径规划,生成巡检控制信号,通过驱动装置控制巡检小车进行巡检,具体包括:
获取各目标巡检设备对应的坐标信息;
根据巡检小车的坐标以及各目标巡检设备的坐标信息,确定巡检小车与各目标巡检设备之间的距离,以及各目标巡检设备两两之间的距离,得到距离矩阵;
根据所述距离矩阵,采用离散化麻雀搜索算法进行巡检策略规划,得到巡检序列;
根据所述二维栅格地图和所述巡检序列进行全局路径规划,得到全局路径;
根据所述全局路径生成巡检控制信号,通过驱动装置控制所述巡检小车进行巡检。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111606887.5A CN114005021B (zh) | 2021-12-27 | 2021-12-27 | 基于激光视觉融合的水产养殖车间无人巡检***和方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111606887.5A CN114005021B (zh) | 2021-12-27 | 2021-12-27 | 基于激光视觉融合的水产养殖车间无人巡检***和方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN114005021A CN114005021A (zh) | 2022-02-01 |
CN114005021B true CN114005021B (zh) | 2022-03-22 |
Family
ID=79932058
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111606887.5A Active CN114005021B (zh) | 2021-12-27 | 2021-12-27 | 基于激光视觉融合的水产养殖车间无人巡检***和方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114005021B (zh) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114714357A (zh) * | 2022-04-08 | 2022-07-08 | 五邑大学 | 一种分拣搬运方法、分拣搬运机器人及存储介质 |
CN114972132B (zh) * | 2022-05-30 | 2024-07-05 | 浙江孔辉汽车科技有限公司 | 智能agv车实时跟踪方法及跟踪*** |
CN115257986B (zh) * | 2022-08-31 | 2023-04-18 | 东风悦享科技有限公司 | 一种基于无人巡逻车主动设置路障阵列的*** |
CN115903797A (zh) * | 2022-11-09 | 2023-04-04 | 硕能(上海)自动化科技有限公司 | 一种针对变电站多楼层建模自主巡检方法 |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP5018943B2 (ja) * | 2010-09-07 | 2012-09-05 | 株式会社デンソー | レーダ装置 |
CN107977018A (zh) * | 2017-12-12 | 2018-05-01 | 吉林大学 | 基于双目立体视觉和无人机的秸秆焚烧监测方法 |
CN109599945A (zh) * | 2018-11-30 | 2019-04-09 | 武汉大学 | 一种智慧电厂自主巡检机器人巡检***及方法 |
CN214520204U (zh) * | 2020-12-31 | 2021-10-29 | 交通运输部天津水运工程科学研究所 | 一种基于深度相机和激光雷达的港区智能巡检机器人 |
-
2021
- 2021-12-27 CN CN202111606887.5A patent/CN114005021B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN114005021A (zh) | 2022-02-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN114005021B (zh) | 基于激光视觉融合的水产养殖车间无人巡检***和方法 | |
US10817731B2 (en) | Image-based pedestrian detection | |
WO2021160184A1 (en) | Target detection method, training method, electronic device, and computer-readable medium | |
Schilling et al. | Geometric and visual terrain classification for autonomous mobile navigation | |
Li et al. | Springrobot: A prototype autonomous vehicle and its algorithms for lane detection | |
CN111080659A (zh) | 一种基于视觉信息的环境语义感知方法 | |
US11145076B1 (en) | Incorporation of semantic information in simultaneous localization and mapping | |
Zou et al. | Real-time full-stack traffic scene perception for autonomous driving with roadside cameras | |
US20210166042A1 (en) | Device and method of objective identification and driving assistance device | |
CN115285143B (zh) | 一种基于场景分类的自动驾驶车辆导航方法 | |
CN114325634A (zh) | 一种基于激光雷达的高鲁棒性野外环境下可通行区域提取方法 | |
WO2023155903A1 (en) | Systems and methods for generating road surface semantic segmentation map from sequence of point clouds | |
CN108871409A (zh) | 一种故障检测方法和*** | |
Roberts et al. | Memory-based learning for visual odometry | |
Suleymanov et al. | Inferring road boundaries through and despite traffic | |
Zhou et al. | Automated process for incorporating drivable path into real-time semantic segmentation | |
Rodríguez-Teiles et al. | Vision-based reactive autonomous navigation with obstacle avoidance: Towards a non-invasive and cautious exploration of marine habitat | |
Gökçe et al. | Recognition of dynamic objects from UGVs using Interconnected Neuralnetwork-based Computer Vision system | |
Karampinis et al. | Ensuring UAV Safety: A Vision-only and Real-time Framework for Collision Avoidance Through Object Detection, Tracking, and Distance Estimation | |
Vatavu et al. | Modeling and tracking of dynamic obstacles for logistic plants using omnidirectional stereo vision | |
CN115373383B (zh) | 一种垃圾回收无人艇的自主避障方法、装置及相关设备 | |
Yildiz et al. | CNN based sensor fusion method for real-time autonomous robotics systems | |
CN112319468B (zh) | 维持路肩间距的无人驾驶车道保持方法 | |
KR20230044785A (ko) | 자율주행 기반 무허가 주정차 차량 단속 시스템 | |
Li et al. | Visual perception and navigation of security robot based on deep learning |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |