CN112712518B - 鱼类计数方法、装置、电子设备及存储介质 - Google Patents
鱼类计数方法、装置、电子设备及存储介质 Download PDFInfo
- Publication number
- CN112712518B CN112712518B CN202110042025.8A CN202110042025A CN112712518B CN 112712518 B CN112712518 B CN 112712518B CN 202110042025 A CN202110042025 A CN 202110042025A CN 112712518 B CN112712518 B CN 112712518B
- Authority
- CN
- China
- Prior art keywords
- fish
- density map
- convolutional
- convolution
- sample
- 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
- 238000000034 method Methods 0.000 title claims abstract description 54
- 241000251468 Actinopterygii Species 0.000 claims abstract description 232
- 238000012549 training Methods 0.000 claims abstract description 33
- 230000006870 function Effects 0.000 claims description 19
- 238000013527 convolutional neural network Methods 0.000 claims description 18
- 208000037170 Delayed Emergence from Anesthesia Diseases 0.000 claims description 17
- 238000004422 calculation algorithm Methods 0.000 claims description 10
- 238000004364 calculation method Methods 0.000 claims description 10
- 238000004590 computer program Methods 0.000 claims description 9
- 238000005070 sampling Methods 0.000 claims description 9
- 238000012545 processing Methods 0.000 claims description 7
- 239000011159 matrix material Substances 0.000 claims description 6
- 230000007246 mechanism Effects 0.000 claims description 6
- 230000003044 adaptive effect Effects 0.000 claims description 4
- 230000009466 transformation Effects 0.000 claims description 4
- 230000001131 transforming effect Effects 0.000 claims description 3
- 238000010586 diagram Methods 0.000 description 11
- 230000008569 process Effects 0.000 description 8
- 238000004891 communication Methods 0.000 description 5
- 238000009360 aquaculture Methods 0.000 description 3
- 244000144974 aquaculture Species 0.000 description 3
- 238000013528 artificial neural network Methods 0.000 description 3
- 238000010276 construction Methods 0.000 description 2
- 238000001514 detection method Methods 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 230000004913 activation Effects 0.000 description 1
- 230000002411 adverse Effects 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000000903 blocking effect Effects 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 238000013135 deep learning Methods 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000001914 filtration Methods 0.000 description 1
- 230000036541 health Effects 0.000 description 1
- 238000003709 image segmentation Methods 0.000 description 1
- 238000005259 measurement Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 239000008239 natural water Substances 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 230000000737 periodic effect Effects 0.000 description 1
- 238000011524 similarity measure Methods 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 230000009182 swimming Effects 0.000 description 1
- 238000010200 validation analysis Methods 0.000 description 1
- XLYOFNOQVPJJNP-UHFFFAOYSA-N water Substances O XLYOFNOQVPJJNP-UHFFFAOYSA-N 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/0002—Inspection of images, e.g. flaw detection
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T3/00—Geometric image transformations in the plane of the image
- G06T3/40—Scaling of whole images or parts thereof, e.g. expanding or contracting
- G06T3/4038—Image mosaicing, e.g. composing plane images from plane sub-images
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/20—Special algorithmic details
- G06T2207/20081—Training; Learning
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/20—Special algorithmic details
- G06T2207/20084—Artificial neural networks [ANN]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/30—Subject of image; Context of image processing
- G06T2207/30181—Earth observation
- G06T2207/30188—Vegetation; Agriculture
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/30—Subject of image; Context of image processing
- G06T2207/30242—Counting objects in image
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02A—TECHNOLOGIES FOR ADAPTATION TO CLIMATE CHANGE
- Y02A40/00—Adaptation technologies in agriculture, forestry, livestock or agroalimentary production
- Y02A40/80—Adaptation technologies in agriculture, forestry, livestock or agroalimentary production in fisheries management
- Y02A40/81—Aquaculture, e.g. of fish
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Quality & Reliability (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Image Analysis (AREA)
Abstract
本发明提供一种鱼类计数方法、装置、电子设备及存储介质。该方法包括:从不同角度采集水产系统中鱼类的单角度图像;将采集的多个所述单角度图像进行全景拼接以获取所述水产系统的全景图像;将所述全景图像输入到鱼类计数模型中以输出鱼类密度图,其中所述鱼类计数模型是通过样本全景图像和对应的样本鱼类密度图训练得到的;以及基于输出的所述鱼类密度图计算总鱼类数目。该方法可以准确计数鱼类的数目。
Description
技术领域
本发明涉及水产养殖技术领域,尤其涉及一种鱼类计数方法、装置、电子设备及存储介质。
背景技术
在水产养殖中,定期获取鱼类的数目对于监控养殖密度与调节投喂量等饲养过程具有重要意义。
传统的鱼类计数主要依靠人工抽样或者直接计数的方式。人工抽样方法不仅费时费力,而且会对鱼类的福利和健康产生不良影响。基于机器视觉的直接计数方法能够在不影响鱼类正常生长的情况下,以较快的速度实现鱼类数目的估计。然而,在真实养殖环境中,为了保证产量,养殖池的面积相对较大,单角度图像往往不能完整覆盖整个养殖池,导致计数过程中仅仅包含了养殖池中部分鱼类;除此之外,由于鱼类在水中自由移动,产生较大的形变以及严重的重叠问题。因此借助于图像分割、轮廓检测、斑点检测等方法获取鱼类的表面积、连通域面积及鱼类占据的像素区域来实现鱼类计数的传统机器视觉方法在面对上述问题时,存在适应性差、精度低等问题。
发明内容
本发明提供一种鱼类计数方法、装置、电子设备及存储介质,用以解决现有技术中鱼类计数方法适应性差、精度低的缺陷,实现对鱼类数目的科学精准计数。
一方面,本发明提供一种鱼类计数方法,包括:从不同角度采集水产系统中鱼类的单角度图像;将采集的多个所述单角度图像进行全景拼接以获取所述水产系统的全景图像;将所述全景图像输入到鱼类计数模型中以输出鱼类密度图,其中所述鱼类计数模型是通过样本全景图像和对应的样本鱼类密度图训练得到的;以及基于输出的所述鱼类密度图计算总鱼类数目。
进一步地,所述将采集的多个所述单角度图像进行全景拼接以获取所述水产系统的全景图像,包括:利用尺度不变特征变换算法依次检测相邻两个所述单角度图像中的特征点,并进行特征点的匹配;基于匹配的特征点利用随机采样一致性算法依次计算相邻两个所述单角度图像的单应性矩阵;以及根据所述单应性矩阵依次将相邻两个所述单角度图像透视变换到一个公共图像平面上,以获取所述全景图像。
进一步地,对应的样本鱼类密度图通过以下步骤获取:通过标记鱼类的中心来确定所述样本全景图像中鱼类位置和鱼类数目;以及基于所述鱼类位置和所述鱼类数目生成样本鱼类密度图。
进一步地,基于以下公式生成所述样本鱼类密度图:
其中,F(x)表示鱼类密度函数;δ(x-xi)表示鱼类位置函数;xi表示鱼类位置;表示高斯核;σi表示高斯核标准差;N表示鱼类数量;β表示自适应参数;/>表示xi与近邻样本的平均欧式距离。
进一步地,所述鱼类计数模型由三列卷积神经网络和注意力机制构建如下:每列所述卷积神经网络包括四个卷积层和一个残差注意力模块,其中,所述残差注意力模块位于第三个卷积层和第四个卷积层之间;所述残差注意力模块由一个残差块和一个卷积层并联组成;以及将每列所述卷积神经网络输出的特征图进行连接后,输入到一个卷积核大小为1×1的卷积层中,运算得到预测鱼类密度图。
进一步地,所述鱼类计数模型训练如下:预先设定训练的最大迭代次数、学习率、批处理大小和最小损失阈值;以及当训练的迭代次数达到所述最大迭代次数或者前后两次训练得到的损失函数的差值小于所述最小损失阈值时,停止训练并确定最终的所述鱼类计数模型,
其中损失函数计算如下:
其中,MSE表示损失函数;xm表示样本鱼类密度图;ym表示经过所述鱼类计数模型运算后得到的所述预测鱼类密度图;M表示每批次样本数目。
进一步地,所述基于输出的所述鱼类密度图计算总鱼类数目,包括:将所述鱼类密度图中所有点的像素值累加得到所述总鱼类数目。
第二方面,本发明提供一种鱼类计数装置,包括:采集模块,用于从不同角度采集水产系统中鱼类的单角度图像;拼接模块,用于将采集的多个所述单角度图像进行全景拼接以获取所述水产系统的全景图像;处理模块,用于将所述全景图像输入到鱼类计数模型中以输出鱼类密度图,其中所述鱼类计数模型是通过样本全景图像和对应的样本鱼类密度图训练得到的;以及计算模块,用于基于输出的所述鱼类密度图计算总鱼类数目。
第三方面,本发明提供一种电子设备,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述程序时实现以上所述的鱼类计数方法的步骤。
第四方面,本发明提供一种非暂态计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现以上所述的鱼类计数方法的步骤。
本发明提供的鱼类计数方法、装置、电子设备及存储介质,通过将从不同角度采集水产系统的单角度图像拼接成全景图像,并且通过鱼类计数模型得到鱼类密度图,从而基于鱼类密度图计算总鱼类数目。其中通过单角度图像拼接形成的全景图像可以全部覆盖整个水产系统,从而可以全方位的对水产系统中的鱼类进行计数。鱼类计数模型通过样本全景图像和对应的样本鱼类密度图训练得到,因此使得鱼类计数模型计数能力和准确性较高,从而提高输出的鱼类密度图的精准性,从而提高基于鱼类密度图计算总鱼类数目的准确性。
附图说明
为了更清楚地说明本发明或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明提供的鱼类计数方法的流程示意图;
图2是图1中步骤102的具体流程示意图;
图3是图2中步骤202的具体流程示意图;
图4是本发明提供过的样本鱼类密度图的获取方法的流程示意图;
图5是本发明实施例提供的鱼类计数模型的网络训练过程的示意图;
图6为本发明实施例提供的鱼类计数装置的结构示意图;
图7是本发明提供的电子设备的结构示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面将结合本发明中的附图,对本发明中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
如上所述,现有计数中基于机器视觉的鱼类计数方法存在适应性差、精度低等问题,而且难以对大型养殖池中鱼类的总数进行精准估计。对此,本发明实施例提供了一种鱼类计数方法、装置、电子设备及存储介质。下面参照附图和具体实施例对本发明提供的内容进行详细描述。
图1为本发明实施例提供的鱼类计数方法的流程示意图。如图1所示,该方法包括但不限于如下步骤:
步骤101:从不同角度采集水产系统中鱼类的单角度图像;
步骤102:将采集的多个所述单角度图像进行全景拼接以获取所述水产系统的全景图像;
步骤103:将所述全景图像输入到鱼类计数模型中以输出鱼类密度图,其中所述鱼类计数模型是通过样本全景图像和对应的样本鱼类密度图训练得到的;以及
步骤104:基于输出的所述鱼类密度图计算总鱼类数目。
在本实施例中,需要说明的是,从不同角度采集同一时刻的水产系统中鱼类的单角度图像,也就是说,可以同时采集不同角度下的单角度图像,从而可以防止鱼类的游动导致的图像重叠等问题,增加拼接后全景图像的准确性。例如,可以在水产系统的不同角度处设置多个摄像机,然后可以获取同一时刻的摄像图像。但是本发明不具体限定采集单角度图像的装置和方法。水产系统可以包括养殖系统和天然水系统。
在本实施例中,需要说明的是,步骤102中拼接成的全景图像的角度范围取决于单角度图像的数量和采集角度。在从360°范围内的不同角度采集连续的多个单角度图像的情况下,拼接后的全景图像可以为360°的全景图像。但是本发明不具体限定全景图像的角度范围,可以根据水产系统的实际形状和实际需求进行调整和改变。
在本实施例中,需要说明的是,步骤103中的鱼类计数模型的输入数据为全景图像,输出数据为鱼类密度图。在鱼类计数模型训练中,将样本全景图像作为输入值,将样本鱼类密度图作为目标值来训练鱼类计数模型。将目标水产系统的全景图像输入训练后的最终鱼类计数模型,可以输出对应于该全景图像的鱼类密度图。
在本实施例中,需要说明的是,步骤104中基于鱼类密度图计算总鱼类数目可以包括将鱼类密度图上的所有点的像素值累加得到该水产系统中总鱼类数目。
图2为图1中步骤102的具体流程示意图。参照图2,步骤102中将采集的多个所述单角度图像进行全景拼接以获取所述水产系统的全景图像包括以下步骤:
步骤201:利用尺度不变特征变换算法依次检测相邻两个所述单角度图像中的特征点,并进行特征点的匹配;
步骤202:基于匹配的特征点利用随机采样一致性算法依次计算相邻两个所述单角度图像的单应性矩阵;以及
步骤203:根据所述单应性矩阵依次将相邻两个所述单角度图像透视变换到一个公共图像平面上,以获取所述全景图像。
在本实施例中,需要说明的是,全景图像拼接过程中可以按照顺时针方向,两两相邻地进行拼接。例如,可以先拼接第一单角度图像和位于其顺时针方向的相邻的第二单角度图像,然后拼接第二单角度图像和位于其顺时针方向的相邻的第三单角度图像,以此类推,直至拼接完所有的单角度图像位置。以下以其中相邻两个单角度图像拼接过程为例进行详细描述。
在步骤201中,利用尺度不变特征变换算法(SIFT)提取相邻单角度图像的特征点,并进行相邻单角度图像的特征点匹配。具体地,在进行全景拼接时,首先,利用灰度变换将相邻两个单角度图像的RGB图像变换为灰度图像I(x,y)。然后,构建单角度图像I(x,y)的尺度空间,即构建单角度图像的高斯差分金字塔,采用高斯核函数对单角度图像进行滤波,保存单角度图像更多的细节特征,具体计算公式如下:
L(x,y,σ)=G(x,y,σ)*I(x,y) (1)
D(x,y,σ)=[G(x,y,kσ)-G(x,y,σ)]*I(x,y)=L(x,y,kσ)-L(x,y,σ) (3)
其中,G(xi,yi,σ)表示二维高斯函数;*表示卷积运算;(x,y)表示单角度图像的像素位置;σ表示尺度空间因子,值越小表示单角度图像被平滑的越少,相应的尺度也就越小;L(x,y,σ)表示高斯金字塔;D(x,y,σ)表示高斯差分金字塔,即空间尺度函数。
在获取图像的尺度空间后,首先在高斯差分金字塔空间进行特征点的检测,其中特征点为在高斯差分金字塔中寻找3×3×3邻域内的极值点。然后,借助于特征点邻域像素的梯度方向分布特性,为每个特征点指定方向参数,使算子具备旋转不变性。其中,梯度幅值和梯度方向的计算公式如下:
θ(x,y)=tan-1((L(x,y+1)-L(x,y-1))/(L(x+1,y)-L(x-1,y))) (5)
其中,m(x,y)为梯度幅值,θ(x,y)为梯度方向,L为特征点所在的尺度空间值。通过以上步骤,获取了每个特征点的位置、梯度幅值和梯度方向三个信息。
完成上述特征点的梯度计算后,使用直方图统计邻域内像素的梯度幅值和梯度方向,直方图的峰值代表了特征点的主方向,同时,为了增强匹配的鲁棒性,保留峰值大于主方向峰值80%的方向作为该特征点的辅方向。通过对特征点周围图像区域分块,计算块内梯度直方图,生成代表该区域图像独特性的描述符,该描述符不仅包含特征点的信息,也包含特征点及其周围对其有贡献的像素点的信息。进一步地,分别对相邻两张单角度图像A和B建立特征点描述符集合,然后计算特征点描述符的欧氏距离作为两幅图像中特征点相似性判定度量,为了排除因为图像遮挡和背景混乱而产生的无匹配关系的特征点,利用最近邻距离与次近邻距离的比值对匹配结果进行约束,进而实现两幅图像特征点的匹配,具体计算过程如下:
其中,Ri=(ri1,ri2,...,riN)为图像A的特征点描述符;Si=(si1,si2,...,siN)为图像B的特征点描述符;d(Ri,Si)为任意两个描述符的相似性度量;N为描述符的特征维数;dnearest(Ri,Sj)表示最近邻距离;dsub-nearest(Ri,Sp)表示次近邻距离;T表示剔除错误匹配的阈值。
将满足公式(7)的特征点描述符所代表的特征点进行保存,图像A中的特征点记为(X,Y)={(x1,y1),(x2,y2),...,(xm,ym)},图像B中的特征点记为(X′,Y′)={(x1′,y1′),(x2′,y2′),...,(xm′,ym′)}。基于上述过程实现相邻两个单角度图像A和B的特征点匹配。
在本实施例中,需要说明的是,基于匹配的特征点计算相邻两个单角度图像的单应性矩阵,然后按照顺时针方向,依次求解相邻两张单角度图像的单应性矩阵。
然后基于所有的单应性矩阵将所有的单角度图像变换至一个公共的图像平面上,得到拼接后的全景图像。
下面参照图3详细描述基于匹配的特征点利用随机采样一致性算法依次计算相邻两个所述单角度图像的单应性矩阵的具体过程。
图3是图2中步骤202的具体流程示意图。如图3所示,基于匹配的特征点利用随机采样一致性算法依次计算相邻两个所述单角度图像的单应性矩阵包括以下步骤:
步骤301:将当前特征点匹配数目O设置为0,并设定随机采样次数为N;
步骤302:随机抽出四对匹配的特征点,计算其单应性矩阵H;
步骤303:计算每个特征点经过H矩阵变换后与其匹配的对应特征点的欧式距离d,计算如下:
步骤304:设定距离阈值t,保留满足d<t的特征点作为正确匹配的特征点,并保存当前正确匹配的特征点数目O′与对应的单应性矩阵H;
步骤305:比较当前正确匹配的特征点数目O′与O,若O′≥O,则将H和O′作为当前最佳估计结果,并更新O。
步骤306:循环执行步骤302至步骤305,直至达到随机采样次数N,进而得到相邻两张单角度图像的单应性矩阵H。
下面参照图4至图6详细描述鱼类计数模型的构建和训练方法。
鱼类计数模型基于样本全景图像和对应的样本鱼类密度图训练得到。其中样本全景图像可以基于上文步骤101至步骤102得到。样本全景图像对应的样本鱼类密度图可以基于以下方法获取。
图4是本发明提供过的样本鱼类密度图的获取方法的流程示意图。参照图4,样本鱼类密度图的获取方法包括:
步骤401:通过标记鱼类的中心来确定所述样本全景图像中鱼类位置和鱼类数目;以及
步骤402:基于所述鱼类位置和所述鱼类数目生成样本鱼类密度图。
在本实施例中,需要说明的是,鱼类密度图可以展示鱼类数目及鱼类在全景图像中的分布情况。基于所述鱼类位置和所述鱼类数目生成样本鱼类密度图具体包括以下步骤:
a.鱼群图像标注表示,假设xi表示所标记鱼的坐标位置,并用δ(x-xi)函数表示,对于有N条鱼标注的鱼群图像来说,可以将其表示为H(x)函数,其中,
b.密度图获取,将H(x)与自适应高斯核函数Gσ(x)进行卷积运算,得到密度:
F(x)=H(x)*Gσ(x) (10)
综合公式(9)和(10)可得:
其中,F(x)表示鱼类密度函数,δ(x-xi)表示鱼类位置函数,xi表示鱼类位置,表示高斯核,σi表示高斯核标准差,N表示鱼类数量,β表示自适应参数,/>表示xi与近邻样本的平均欧式距离。
图5是本发明实施例提供的鱼类计数模型的网络训练过程的示意图。参照图5,鱼类计数模型由三列卷积神经网络和注意力机制构建,具体地,鱼类计数模型由三列卷积神经网络组成,并且每一列卷积神经网络包括四个卷积层,并且在第三个卷积层和第四个卷积层之间包含一个残差注意力模块,该残差注意力模块由一个卷积层和一个残差块并联组成。其中,三列卷积神经网络的结构相同,但是卷积核大小不同。对于第一列网络,卷积核大小分别为9x9,7x7,7x7,7x7,残差注意力模块中的卷积层和残差块的卷积核大小均为7x7;对于第二列网络,卷积核大小分别为7x7,5x5,5x5,5x5,残差注意力模块中的卷积层和残差块的卷积核大小均为5x5;对于第三列网络,卷积核大小分别为5x5,3x3,3x3,3x3,残差注意力模块中的卷积层和残差块的卷积核大小为3x3。具体的计算公式如下:
FAttention(Ic(x))=(1+Rc(Ic(x)))·Tc(Ic(x)) (15)
其中,W1 c,分别为c列(c∈{1,2,3})卷积神经网络中第1个、第2个、第3个和第4个卷积层的卷积权值;/> 分别是c列(c∈{1,2,3})卷积神经网络中卷积层组的第1个、第2个、第3个和第4个卷积层的偏置;F1(Ic(x)),F2(Ic(x)),F3(Ic(x)),F4(Ic(x))分别是c列(c∈{1,2,3})卷积神经网络中卷积层组的第1个、第2个、第3个和第4个卷积层的输出结果,FAttention(Ic(x))为c列(c∈{1,2,3})残差注意力模块的输出结果。
对于残差注意力模块输出结果FAttention(Ic(x))的残差块部分Rc(Ic(x))和主干卷积部分Tc(Ic(x))的计算公式如下:
其中,W1 c,表示c列(c∈{1,2,3})残差块中第1个和第2个卷积层的卷积权值,表示c列(c∈{1,2,3})主干卷积部分中卷积层的卷积权值;/>表示c列(c∈{1,2,3})残差块中第1个和第2个卷积层的偏置,/>表示c列(c∈{1,2,3})主干卷积部分中卷积层的偏置;/>Rc(Ic(x))分别表示c列(c∈{1,2,3})残差块中第1个、第2个卷积层和激活层的输出结果,Tc(Ic(x))表示c列(c∈{1,2,3})主干层的输出结果。
进一步地,将三列卷积神经网络输出的特征图连接成一个特征图块,并对其进行卷积操作,该层的卷积核大小为1x1,输出的通道数为1,具体计算公式如下:
Fout(I(x))=max(Wout*{F4(I1(x)),F4(I2(x)),F4(I3(x))}+b5,0) (21)
其中,Wout为三列网络输出特征图连接后进行卷积操作的卷积权值,b5为三列网络输出特征图连接后进行卷积操作的偏置,Fout(I(x))为最终输出的鱼类密度图。
基于上述任一实施例,本发明实施例提供的对鱼类计数模型进行训练如下:
预先设定训练的最大迭代次数、学习率、批处理大小和最小损失阈值;
当训练的迭代次数达到所述最大迭代次数或者前后两次训练得到的损失函数的差值小于所述最小损失阈值时,停止网络训练并确定最终的鱼类计数模型。
具体地,训练模型之前需要预先设置该模型的基本参数。首先,设置训练集与验证集的比例为7:3,批处理大小为1,采用在线学习的方式,学习率为1×10-6,迭代次数为10000次,使用SGD优化算法更新模型的权重。为了提高样本密度图与预测密度图之间的相似度,本发明实施例使用MSE作为损失函数对鱼类密度图进行预测,其中,MSE表示均方误差。
其中,xm表示样本鱼类密度图,ym表示经过鱼类计数模型运算后得到的预测鱼类密度图,M表示每批次样本数目。
经过上述的鱼类计数模型的构建和计数可以获得最终的鱼类计数模型,将全景图像输入鱼类计数模型,输出鱼类密度图,然后基于鱼类密度图计算水产系统的总鱼类数目。其中鱼类计数模型是基于样本全景图像和样本鱼类密度图训练后得到的,并且鱼类计数模型采用三列卷积神经网络和注意力机制构建的深度学习网络训练,每列包含四个卷积层和一个残差注意力模块。因此,鱼类计数模型的计数能力有了很大的提高,同时,因为采用的训练模型是由多列卷积神经网络和注意力机制建立的,因此,训练出来的模型准确性也有了大大的提高。如此,本发明实施例提供的方法实现了鱼类数目的准确估计。
图6为本发明实施例提供的鱼类计数装置的结构示意图。参照图6,鱼类计数装置包括:
采集模块601,用于从不同角度采集水产系统中鱼类的单角度图像;
拼接模块602,用于将采集的多个所述单角度图像进行全景拼接以获取所述水产系统的全景图像;
处理模块603,用于将所述全景图像输入到鱼类计数模型中以输出鱼类密度图,其中所述鱼类计数模型是通过样本全景图像和对应的样本鱼类密度图训练得到的;以及
计算模块604,用于基于输出的所述鱼类密度图计算总鱼类数目。
由于本发明实施例提供的鱼类计数装置,可以用于执行上述实施例所述的鱼类计数方法,其工作原理和有益效果类似,故此处不再详述,具体内容可参见上述实施例的介绍。
在本实施例中,需要说明的是,本发明实施例的装置中的各个模块可以集成于一体,也可以分离部署。上述模块可以合并为一个模块,也可以进一步拆分成多个子模块。
基于相同的发明构思,本发明实施例还提供一种电子设备。
图7是本发明提供的电子设备的结构示意图。如图7所示,该电子设备可以包括:处理器810、通信接口820、存储器830和通信总线840,其中,处理器810,通信接口820,存储器830通过通信总线840完成相互间的通信。处理器810可以调用存储器830中的逻辑指令,以执行鱼类计数方法,该方法包括:从不同角度采集水产系统中鱼类的单角度图像;将采集的多个所述单角度图像进行全景拼接以获取所述水产系统的全景图像;将所述全景图像输入到鱼类计数模型中以输出鱼类密度图,其中所述鱼类计数模型是通过样本全景图像和对应的样本鱼类密度图训练得到的;以及基于输出的所述鱼类密度图计算总鱼类数目。
此外,上述的存储器830中的逻辑指令可以通过软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
另一方面,本发明还提供一种计算机程序产品,所述计算机程序产品包括存储在非暂态计算机可读存储介质上的计算机程序,所述计算机程序包括程序指令,当所述程序指令被计算机执行时,计算机能够执行上述各方法所提供的执行鱼类计数方法,该方法包括:从不同角度采集水产系统中鱼类的单角度图像;将采集的多个所述单角度图像进行全景拼接以获取所述水产系统的全景图像;将所述全景图像输入到鱼类计数模型中以输出鱼类密度图,其中所述鱼类计数模型是通过样本全景图像和对应的样本鱼类密度图训练得到的;以及基于输出的所述鱼类密度图计算总鱼类数目。
又一方面,本发明还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现以执行上述各提供的执行鱼类计数方法,该方法包括:从不同角度采集水产系统中鱼类的单角度图像;将采集的多个所述单角度图像进行全景拼接以获取所述水产系统的全景图像;将所述全景图像输入到鱼类计数模型中以输出鱼类密度图,其中所述鱼类计数模型是通过样本全景图像和对应的样本鱼类密度图训练得到的;以及基于输出的所述鱼类密度图计算总鱼类数目。
以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分所述的方法。
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。
Claims (9)
1.一种鱼类计数方法,其特征在于,包括:
从不同角度采集水产系统中鱼类的单角度图像;
将采集的多个所述单角度图像进行全景拼接以获取所述水产系统的全景图像;
将所述全景图像输入到鱼类计数模型中以输出鱼类密度图,其中所述鱼类计数模型是通过样本全景图像和对应的样本鱼类密度图训练得到的;以及
基于输出的所述鱼类密度图计算总鱼类数目;
所述鱼类计数模型由三列卷积神经网络和注意力机制构建如下:
每列所述卷积神经网络包括四个卷积层和一个残差注意力模块,其中,所述残差注意力模块位于第三个卷积层和第四个卷积层之间;
所述残差注意力模块由一个残差块和一个卷积层并联组成;以及
将每列所述卷积神经网络输出的特征图进行连接后,输入到一个卷积核大小为1×1的卷积层中,运算得到预测鱼类密度图;
其中,三列卷积神经网络的结构相同,但是卷积核大小不同,具体为:
对于第一列网络,卷积核大小分别为9x9,7x7,7x7,7x7,残差注意力模块中的卷积层和残差块的卷积核大小均为7x7;
对于第二列网络,卷积核大小分别为7x7,5x5,5x5,5x5,残差注意力模块中的卷积层和残差块的卷积核大小均为5x5;
对于第三列网络,卷积核大小分别为5x5,3x3,3x3,3x3,残差注意力模块中的卷积层和残差块的卷积核大小为3x3。
2.根据权利要求1所述的鱼类计数方法,其特征在于,
所述将采集的多个所述单角度图像进行全景拼接以获取所述水产系统的全景图像,包括:
利用尺度不变特征变换算法依次检测相邻两个所述单角度图像中的特征点,并进行特征点的匹配;
基于匹配的特征点利用随机采样一致性算法依次计算相邻两个所述单角度图像的单应性矩阵;以及
根据所述单应性矩阵依次将相邻两个所述单角度图像透视变换到一个公共图像平面上,以获取所述全景图像。
3.根据权利要求2所述的鱼类计数方法,其特征在于,方法还包括:
通过标记鱼类的中心来确定所述样本全景图像中鱼类位置和鱼类数目;以及
基于所述鱼类位置和所述鱼类数目生成样本鱼类密度图。
4.根据权利要求3所述的鱼类计数方法,其特征在于,所述基于所述鱼类位置和所述鱼类数目生成样本鱼类密度图,包括:
基于所述鱼类位置和所述鱼类数目,根据第一公式生成所述样本鱼类密度图;其中,所述第一公式为:
其中,F(x)表示鱼类密度函数;δ(x-xi)表示鱼类位置函数;xi表示鱼类位置;表示高斯核;σi表示高斯核标准差;N表示鱼类数量;β表示自适应参数;/>表示xi与近邻样本的平均欧式距离。
5.根据权利要求1所述的鱼类计数方法,其特征在于,
所述鱼类计数模型训练如下:
预先设定训练的最大迭代次数、学习率、批处理大小和最小损失阈值;以及
当训练的迭代次数达到所述最大迭代次数或者前后两次训练得到的损失函数的差值小于所述最小损失阈值时,停止训练并确定最终的所述鱼类计数模型,
其中损失函数计算如下:
其中,MSE表示损失函数;xm表示样本鱼类密度图;ym表示经过所述鱼类计数模型运算后得到的所述预测鱼类密度图;M表示每批次样本数目。
6.根据权利要求5所述的鱼类计数方法,其特征在于,
所述基于输出的所述鱼类密度图计算总鱼类数目,包括:
将所述鱼类密度图中所有点的像素值累加得到所述总鱼类数目。
7.一种鱼类计数装置,其特征在于,包括:
采集模块,用于从不同角度采集水产系统中鱼类的单角度图像;
拼接模块,用于将采集的多个所述单角度图像进行全景拼接以获取所述水产系统的全景图像;
处理模块,用于将所述全景图像输入到鱼类计数模型中以输出鱼类密度图,其中所述鱼类计数模型是通过样本全景图像和对应的样本鱼类密度图训练得到的;以及
计算模块,用于基于输出的所述鱼类密度图计算总鱼类数目;
所述鱼类计数模型由三列卷积神经网络和注意力机制构建如下:
每列所述卷积神经网络包括四个卷积层和一个残差注意力模块,其中,所述残差注意力模块位于第三个卷积层和第四个卷积层之间;
所述残差注意力模块由一个残差块和一个卷积层并联组成;以及
将每列所述卷积神经网络输出的特征图进行连接后,输入到一个卷积核大小为1×1的卷积层中,运算得到预测鱼类密度图;
其中,三列卷积神经网络的结构相同,但是卷积核大小不同,具体为:
对于第一列网络,卷积核大小分别为9x9,7x7,7x7,7x7,残差注意力模块中的卷积层和残差块的卷积核大小均为7x7;
对于第二列网络,卷积核大小分别为7x7,5x5,5x5,5x5,残差注意力模块中的卷积层和残差块的卷积核大小均为5x5;
对于第三列网络,卷积核大小分别为5x5,3x3,3x3,3x3,残差注意力模块中的卷积层和残差块的卷积核大小为3x3。
8.一种电子设备,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现如权利要求1至6任一项所述的鱼类计数方法的步骤。
9.一种非暂态计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至6任一项所述的鱼类计数方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110042025.8A CN112712518B (zh) | 2021-01-13 | 2021-01-13 | 鱼类计数方法、装置、电子设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110042025.8A CN112712518B (zh) | 2021-01-13 | 2021-01-13 | 鱼类计数方法、装置、电子设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112712518A CN112712518A (zh) | 2021-04-27 |
CN112712518B true CN112712518B (zh) | 2024-01-09 |
Family
ID=75548941
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110042025.8A Active CN112712518B (zh) | 2021-01-13 | 2021-01-13 | 鱼类计数方法、装置、电子设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112712518B (zh) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113240650A (zh) * | 2021-05-19 | 2021-08-10 | 中国农业大学 | 基于深度学习密度图回归的鱼苗计数系统及计数方法 |
CN113349111A (zh) * | 2021-05-25 | 2021-09-07 | 中国农业大学 | 一种用于水产养殖物的动态投喂方法、系统和存储介质 |
CN114202660B (zh) * | 2022-02-21 | 2022-12-30 | 广东建科交通工程质量检测中心有限公司 | 一种基于边云桥梁检测的远程分布式控制方法及系统 |
CN115250986B (zh) * | 2022-07-26 | 2023-12-01 | 江苏中农物联网科技有限公司 | 基于机器视觉的鱼类养殖控制系统 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107665479A (zh) * | 2017-09-05 | 2018-02-06 | 平安科技(深圳)有限公司 | 一种特征提取方法、全景拼接方法及其装置、设备及计算机可读存储介质 |
CN109801212A (zh) * | 2018-12-26 | 2019-05-24 | 南京信息职业技术学院 | 一种基于sift特征的鱼眼图像拼接方法 |
CN109858461A (zh) * | 2019-02-21 | 2019-06-07 | 苏州大学 | 一种密集人群计数的方法、装置、设备以及存储介质 |
CN110610457A (zh) * | 2018-06-14 | 2019-12-24 | 杭州海康威视数字技术股份有限公司 | 全景图像拼接方法、装置以及系统 |
-
2021
- 2021-01-13 CN CN202110042025.8A patent/CN112712518B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107665479A (zh) * | 2017-09-05 | 2018-02-06 | 平安科技(深圳)有限公司 | 一种特征提取方法、全景拼接方法及其装置、设备及计算机可读存储介质 |
CN110610457A (zh) * | 2018-06-14 | 2019-12-24 | 杭州海康威视数字技术股份有限公司 | 全景图像拼接方法、装置以及系统 |
CN109801212A (zh) * | 2018-12-26 | 2019-05-24 | 南京信息职业技术学院 | 一种基于sift特征的鱼眼图像拼接方法 |
CN109858461A (zh) * | 2019-02-21 | 2019-06-07 | 苏州大学 | 一种密集人群计数的方法、装置、设备以及存储介质 |
Non-Patent Citations (3)
Title |
---|
Automatic Fish Population Counting by Machine Vision and a Hybrid Deep Neural Network Model;Song Zhang et al.;《Animals 2020》;第1-17页 * |
Residual Attention Network for Image Classification;Fei Wang et al.;《2017 IEEE Conference on Computer Vision and Pattern Recognition》;第6450-6458页 * |
Song Zhang et al..Automatic Fish Population Counting by Machine Vision and a Hybrid Deep Neural Network Model.《Animals 2020》.2020,第1-17页. * |
Also Published As
Publication number | Publication date |
---|---|
CN112712518A (zh) | 2021-04-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112712518B (zh) | 鱼类计数方法、装置、电子设备及存储介质 | |
CN106709950B (zh) | 一种基于双目视觉的巡线机器人跨越障碍导线定位方法 | |
CN116664559B (zh) | 基于机器视觉的内存条损伤快速检测方法 | |
Zhou et al. | An integrated skeleton extraction and pruning method for spatial recognition of maize seedlings in MGV and UAV remote images | |
CN111640157A (zh) | 一种基于神经网络的棋盘格角点检测方法及其应用 | |
CN109859101B (zh) | 农作物冠层热红外图像识别方法及系统 | |
CN111369605A (zh) | 一种基于边缘特征的红外与可见光图像的配准方法和系统 | |
CN112861666A (zh) | 一种基于深度学习的鸡群计数方法及应用 | |
CN109190452B (zh) | 作物行识别方法及装置 | |
CN110516731B (zh) | 一种基于深度学习的视觉里程计特征点检测方法及系统 | |
CN110335322B (zh) | 基于图像的道路识别方法及道路识别装置 | |
CN112102379B (zh) | 一种无人机多光谱影像配准方法 | |
CN110956601A (zh) | 一种基于多传感器样态系数的红外图像融合方法和装置以及计算机可读存储介质 | |
CN113269752A (zh) | 一种图像检测方法、装置终端设备及存储介质 | |
CN112070181A (zh) | 一种基于图像流的协同检测方法及装置、存储介质 | |
CN117078637A (zh) | 基于上下文聚合与自蒸馏的鱼群计数方法及系统 | |
Vayssade et al. | Two-step multi-spectral registration via key-point detector and gradient similarity. Application to agronomic scenes for proxy-sensing | |
CN113673340B (zh) | 一种害虫种类图像识别方法及系统 | |
CN113095384B (zh) | 一种基于直线段上下文特征的遥感图像匹配方法 | |
CN115661481A (zh) | 智能储物柜的边缘点检测模型训练方法、设备和存储介质 | |
Wu et al. | An accurate feature point matching algorithm for automatic remote sensing image registration | |
CN108967246B (zh) | 虾苗定位方法 | |
CN116758170B (zh) | 用于畜禽表型3d重建的多相机快速标定方法及存储介质 | |
López et al. | Multi-Spectral Imaging for Weed Identification in Herbicides Testing | |
Zhao et al. | A Study on the Whole-skin Peeling System of a Snakehead Based on Three-dimensional Reconstruction |
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 |