CN106447672B - 一种交叉遮挡鱼体识别计数方法 - Google Patents
一种交叉遮挡鱼体识别计数方法 Download PDFInfo
- Publication number
- CN106447672B CN106447672B CN201610825236.8A CN201610825236A CN106447672B CN 106447672 B CN106447672 B CN 106447672B CN 201610825236 A CN201610825236 A CN 201610825236A CN 106447672 B CN106447672 B CN 106447672B
- Authority
- CN
- China
- Prior art keywords
- fish body
- connected domain
- fish
- image
- line segment
- 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
Classifications
-
- 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
Landscapes
- Image Analysis (AREA)
Abstract
本发明公开了一种交叉遮挡鱼体识别计数方法,包括如下步骤:计算机读取拍摄的图像,将RGB色彩空间图像转换至HSI色彩空间,根据H分量图将图像二值化处理;对二值化图像去噪,然后根据鱼体面积不同将单条鱼体的连通域图与多条鱼体的连通域图分割在两幅图中;对各单鱼体连通域求中心点作为鱼体质心,记录在数组M中;对多鱼体连通域图依次进行腐蚀,再分割,骨骼化表示,提取骨骼端点,端点连线等图像形态学操作,最后找出与骨骼化表示的鱼体最近似的直线,定义近似度达到80%的认为是鱼体,并将此线段的中点作为鱼体质心计入数组M中。本方法适用于简单背景且摄像机固定的场景下多鱼体目标检测,具有算法简单,耗时短,通用性好检测目标精确等优点。
Description
技术领域
本发明涉及计算机视觉技术领域,尤其是一种适用于两鱼体交叉遮挡情况下的鱼体识别计数方法。
背景技术
随着经济的飞速发展、工业的大规模扩张,人类赖以生存的水资源遭到了全球性的污染和破坏。防治水体污染成为各国密切关注的问题,因此,如何有效地对水体环境质量进行监测管理成为热门的研究课题。生物监测法作为比较成熟的水质监测技术,被广泛用来监测水体环境。
目前国内外环境科学研究领域普遍关注于利用生物监测技术建立水体环境安全预警***。生物水质监测技术的核心理论是通过观察记录水生物的行为特征变化来分析水质环境的状况。鱼类在水生动物中个体体型较大、品种较多、行为反应敏捷,当遇到天敌、毒物时有强烈的回避反应,是水质污染生物监测中应用最广泛的水生动物种类之一。如何快速、准确、实时地监测水体状况,选取的水质评价因子是否具有科学性和高效性等对监测结果起着至关重要的作用。从上世纪开始,就有不少学者基于鱼类运动行为展开了探究,并且根据鱼类运动特征建立了可以反映水体污染状况的运动特征参数。随着计算机视觉技术的发展,利用计算机和图像处理技术对摄像机采集物体的视频序列进行图像处理,获得我们感兴趣的目标信息,这一技术与生物监测方法的结合极大的推动了水质在线监测***的搭建。Kim等人利用摄像机采集鱼类运动视频序列图像,同时获取不同水环境中的鱼类运动特征,发现不同水环境中鱼类的运动速度和角速度不同,最终建立了可以反映水体污染状况的运动特征参数***。Thida M提取频繁发生的鱼类游泳模式,并在此方法基础上研究鱼类游动轨迹,分析鱼类行为用于识别水质,取得了较为理想的效果,异常水质识别达到90%。但是上述研究都是基于单条鱼体在水环境中的研究,由于鱼类的个体差异,每种鱼类甚至是同种鱼类不同的个体都会存在行为差异,这在水质监测的应用上可能会造成一定的偏差。为了克服单条鱼个体差异对监测结果的影响,研究学者又在生物水质实验中添加了多条鱼,以去除单条鱼存在个体行为差异和行为的偶然性对监测结果的影响。徐建瑜将采集的图像序列进行阈值分割得到二值图像,然后将连续的两帧图像相减,对相减后图像中的面积差进行标记,并与前后帧图像中每条鱼的投影面积比较,最后得到每条鱼的体长倍数游速,鱼群的平均游速可反映整个鱼群群体的活跃程度。然而在多鱼体的识别中,当多个目标距离较近,或者出现半遮挡的情况时,则难以清晰地识别出目标,致使出现误跟踪的现象。多鱼体距离较近或者出现半遮挡的情况又是经常发生、不可避免的,因此迫切需要给出应对这种情况的办法,从而排除因为鱼体识别不清而影响监测结果的情况。本发明提出一种交叉遮挡鱼体识别计数的方法能够很好的解决此问题。
发明内容
本发明目的在于提供一种准确记录鱼体质心、提高目标跟踪精度的交叉遮挡鱼体识别计数方法。
为实现上述目的,采用了以下技术方案:本发明所述识别计数方法包括以下步骤:
步骤1,计算机读取CCD相机拍摄的图像,将拍摄的图像由RGB色彩空间转换到HIS色彩空间,利用彩色图像分割策略以及meanshift算法对转换后的图像进行分割,加入边界合成,再对边界合成后的图像进行二值化处理;
步骤2,将二值化后的图像除去非鱼体的面积过小的连通域,并将余下的连通域填充孔洞,使图像更加平滑,进行去噪处理;
步骤3,将步骤2得到的连通域面积与二值化后的图像中的鱼体进行对比,找出单条鱼体连通域面积的范围T1,设定T1为阈值;
步骤4,对步骤2得到的图像进行阈值处理,在阈值T1范围内的像素点连通域即为单鱼体,超过阈值T1范围的像素点连通域即为多鱼体,将单鱼体与多鱼体分割在两幅不同图中;
步骤5,求取步骤4中得到的各个单鱼体连通域中心点作为单鱼体的质心点,记录在数组M中;
步骤6,对步骤4中得到的多鱼体连通域作如下预处理,
1)减小鱼鳍、鱼尾以及其它噪声对后续工作的影响;
2)将鱼体距离很近而并未交叉遮挡的连通域分开;
腐蚀多鱼体连通域;
步骤7,将步骤6得到的多鱼体连通域骨骼化,提取鱼体主干,去除毛刺;
步骤8,根据线段端点像素的特点,找到端点,并将两两端点连线;
步骤9,将骨骼进行膨胀,将步骤8中得到的线段画在膨胀的骨骼上,设定一条线段只要有超过80%的部分在骨骼上,就算作一条鱼,求线段的中点作为鱼体质心,并记录在数组M中。
工作过程大致如下:
计算机读取CCD拍摄的图像,再将图像依次进行HSI色彩空间变换、图像分割,边界合成,图像二值化处理;然后对二值化图像去噪,将单条鱼体的连通域图与多条鱼体的连通域图分割在两幅图中;直接对各单鱼体连通域求中心点作为质心,记录在数组M中;对多鱼体连通域图依次进行腐蚀,再分割,骨骼化表示,提取骨骼端点,端点连线等操作,然后找出与骨骼化表示的鱼体最近似的直线,定义近似度达到80%的认为是鱼体,并将此线段的中点作为鱼体质心计入数组M中。
与现有技术相比,本发明具有如下优点:
1、所需设备简单,只需计算机,高清摄像头即可。
2、算法简单,耗时短,易于实现。
3、识别准确率高,能记录每条鱼的质心,防止出现误跟踪的现象。
附图说明
图1是本发明方法的流程图。
图2是本发明方法的二值化结果图。
图3是本发明方法的单鱼体连通域分割图。
图4是本发明方法的多鱼体连通域分割图。
图5是本发明方法的单鱼体质心图。
图6是本发明方法的多鱼体腐蚀效果图。
图7是本发明方法的多鱼体骨骼表示图。
图8是本发明方法寻找到的直线及质心图。
图9是本发明方法的鱼体识别及质心在鱼体轮廓上的表示。
具体实施方式
下面结合附图对本发明做进一步说明:
本发明所述方法包括以下步骤,如图1所示:
步骤1,计算机读取CCD相机拍摄的图像,将拍摄的图像由RGB色彩空间转换到HIS色彩空间,利用彩色图像分割策略以及meanshift算法对转换后的图像进行分割,加入边界合成,再对边界合成后的图像进行二值化处理;
步骤2,将二值化后的图像除去非鱼体的面积过小的连通域,并将余下的连通域填充孔洞,使图像更加平滑,进行去噪处理;
步骤3,将步骤2得到的连通域面积与二值化后的图像中的鱼体进行对比,找出单条鱼体连通域面积的范围T1,设定T1为阈值;
步骤4,对步骤2得到的图像进行阈值处理,在阈值T1范围内的像素点连通域即为单鱼体,超过阈值T1范围的像素点连通域即为多鱼体,将单鱼体与多鱼体分割在两幅不同图中;
步骤5,求取步骤4中得到的各个单鱼体连通域中心点作为单鱼体的质心点,记录在数组M中;
步骤6,对步骤4中得到的多鱼体连通域作如下预处理,
1)减小鱼鳍、鱼尾以及其它噪声对后续工作的影响;
2)将鱼体距离很近而并未交叉遮挡的连通域分开;
腐蚀多鱼体连通域;
步骤7,将步骤6得到的多鱼体连通域骨骼化,提取鱼体主干,去除毛刺;
步骤8,根据线段端点像素的特点,找到端点,并将两两端点连线;
步骤9,将骨骼进行膨胀,将步骤8中得到的线段画在膨胀的骨骼上,设定一条线段只要有超过80%的部分在骨骼上,就算作一条鱼,求线段的中点作为鱼体质心,并记录在数组M中。
实例1:
(1)将拍摄的图像由RGB空间转换到HSI空间,利用H分量图进行图像二值化处理,将二值化后的图像除去非鱼体的面积小于200像素的连通域,并将余下的单鱼体、多鱼体连通域填充孔洞,得到图2。
(2)对步骤(1)得到的图像进行分割,连通域面积小于800像素的为单鱼体连通域,分割至图3;面积大于800的为多鱼体连通域,分割至图4。
(3)将图3中连通域中心点作为单鱼体的质心点,并用星号表示,如图5。
(4)腐蚀多鱼体连通域,一是要尽量减小鱼鳍、鱼尾以及其它噪声对后续工作的影响。二是要将鱼体距离很近而并未交叉遮挡的连通域分开。有部分能分割开,有部分不能分割开的,如图6所示。
(5)将图6得到的多鱼体连通域骨骼化表示,提取鱼体主干,去除毛刺后如图7所示。
(6)在图7的基础上提取骨骼端点,将两两端点连线,将得到的线段画在骨骼的膨胀图上,能显示出来的线段为鱼体,鱼体线段及质心如图8所示,鱼体识别及质心在鱼体轮廓上的表示如图9所示。
以上所述的实施例仅仅是对本发明的优选实施方式进行描述,并非对本发明的范围进行限定,在不脱离本发明设计精神的前提下,本领域普通技术人员对本发明的技术方案做出的各种变形和改进,均应落入本发明权利要求书确定的保护范围内。
Claims (1)
1.一种交叉遮挡鱼体识别计数方法,其特征在于,所述方法包括以下步骤:
步骤1,计算机读取CCD相机拍摄的图像,将拍摄的图像由RGB色彩空间转换到HIS色彩空间,利用彩色图像分割策略以及meanshift算法对转换后的图像进行分割,加入边界合成,再对边界合成后的图像进行二值化处理;
步骤2,将二值化后的图像除去非鱼体的面积过小的连通域,并将余下的连通域填充孔洞,使图像更加平滑,进行去噪处理;
步骤3,将步骤2得到的连通域面积与二值化后的图像中的鱼体进行对比,找出单条鱼体连通域面积的范围T1,设定T1为阈值;
步骤4,对步骤2得到的图像进行阈值处理,在阈值T1范围内的像素点连通域即为单鱼体,超过阈值T1范围的像素点连通域即为多鱼体,将单鱼体与多鱼体分割在两幅不同图中;
步骤5,求取步骤4中得到的各个单鱼体连通域中心点作为单鱼体的质心点,记录在数组M中;
步骤6,对步骤4中得到的多鱼体连通域作如下预处理,
1)减小鱼鳍、鱼尾以及其它噪声对后续工作的影响;
2)将鱼体距离很近而并未交叉遮挡的连通域分开;
腐蚀多鱼体连通域;
步骤7,将步骤6得到的多鱼体连通域骨骼化,提取鱼体主干,去除毛刺;
步骤8,根据线段端点像素的特点,找到端点,并将两两端点连线;
步骤9,将骨骼进行膨胀,将步骤8中得到的线段画在膨胀的骨骼上,设定一条线段只要有超过80%的部分在骨骼上,就算作一条鱼,求线段的中点作为鱼体质心,并记录在数组M中。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610825236.8A CN106447672B (zh) | 2016-09-14 | 2016-09-14 | 一种交叉遮挡鱼体识别计数方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610825236.8A CN106447672B (zh) | 2016-09-14 | 2016-09-14 | 一种交叉遮挡鱼体识别计数方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN106447672A CN106447672A (zh) | 2017-02-22 |
CN106447672B true CN106447672B (zh) | 2019-03-26 |
Family
ID=58169228
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201610825236.8A Active CN106447672B (zh) | 2016-09-14 | 2016-09-14 | 一种交叉遮挡鱼体识别计数方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN106447672B (zh) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109389139A (zh) * | 2017-08-11 | 2019-02-26 | 中国农业大学 | 一种蝗虫计数方法及装置 |
CN109145808B (zh) * | 2018-08-17 | 2022-06-21 | 郑州轻工业学院 | 一种基于自适应鱼体弯曲模型的金枪鱼识别方法 |
CN111667496B (zh) * | 2020-05-18 | 2023-11-21 | 中国农业大学 | 粘连鱼体图像分割方法及装置 |
CN111968159A (zh) * | 2020-08-28 | 2020-11-20 | 厦门大学 | 一种简单通用的鱼群视频图像轨迹追踪方法 |
US11915445B2 (en) * | 2020-12-31 | 2024-02-27 | National Sun Yat-Sen University | System and method for counting aquatic creatures |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103761565A (zh) * | 2014-01-07 | 2014-04-30 | 宁波大学 | 基于计算机视觉的水下鱼虾蟹苗数量估计与行为监测装置及方法 |
CN104680556A (zh) * | 2015-02-16 | 2015-06-03 | 燕山大学 | 基于视差的鱼类运动三维轨迹跟踪方法 |
CN104966122A (zh) * | 2015-07-11 | 2015-10-07 | 浙江大学宁波理工学院 | 一种基于计算机视觉的活鱼自动计数*** |
CN105374042A (zh) * | 2015-11-30 | 2016-03-02 | 中国计量学院 | 基于机器视觉的鱼苗在线自动计数装置与方法 |
-
2016
- 2016-09-14 CN CN201610825236.8A patent/CN106447672B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103761565A (zh) * | 2014-01-07 | 2014-04-30 | 宁波大学 | 基于计算机视觉的水下鱼虾蟹苗数量估计与行为监测装置及方法 |
CN104680556A (zh) * | 2015-02-16 | 2015-06-03 | 燕山大学 | 基于视差的鱼类运动三维轨迹跟踪方法 |
CN104966122A (zh) * | 2015-07-11 | 2015-10-07 | 浙江大学宁波理工学院 | 一种基于计算机视觉的活鱼自动计数*** |
CN105374042A (zh) * | 2015-11-30 | 2016-03-02 | 中国计量学院 | 基于机器视觉的鱼苗在线自动计数装置与方法 |
Non-Patent Citations (3)
Title |
---|
A computer image processing system for quantification of zebrafish behavior;Satoru Kato et al.;《Journal of Neuroscience Methods》;20040331;第134卷(第1期);第2-3页 |
基于数字图像处理的鱼卵计数的研究;张杭文 等;《电子设计工程》;20130731;第21卷(第14期);第192页 |
基于视频图像的鱼类行为轨迹追踪;江丹丹 等;《浙江海洋学院学报(自然科学版)》;20150331;第34卷(第2期);第112-118页 |
Also Published As
Publication number | Publication date |
---|---|
CN106447672A (zh) | 2017-02-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106447672B (zh) | 一种交叉遮挡鱼体识别计数方法 | |
JP6759475B2 (ja) | シーンの多次元特徴に基づく船舶検出方法及びシステム | |
Alshdaifat et al. | Improved deep learning framework for fish segmentation in underwater videos | |
CN107886086B (zh) | 一种基于图像视频的目标动物检测方法及装置 | |
CN110415208B (zh) | 一种自适应目标检测方法及其装置、设备、存储介质 | |
CN110555868A (zh) | 一种复杂地面背景下运动小目标检测方法 | |
CN111161090B (zh) | 圈养栏信息的确定方法、装置及***、存储介质 | |
CN113191222B (zh) | 水下鱼类目标检测方法及装置 | |
CN111968159A (zh) | 一种简单通用的鱼群视频图像轨迹追踪方法 | |
CN114092744B (zh) | 一种颈动脉超声图像斑块分类检测方法及*** | |
CN106875407B (zh) | 一种结合形态学和标记控制的无人机影像林冠分割方法 | |
CN105913425B (zh) | 一种基于自适应椭圆分块和小波变换的多猪轮廓提取方法 | |
CN111080696A (zh) | 一种基于计算机视觉的水下海参识别及定位方法 | |
CN113780110A (zh) | 一种图像序列中弱小目标实时检测方法及设备 | |
CN104573701B (zh) | 一种玉米雄穗性状的自动检测方法 | |
CN115731257A (zh) | 基于图像的叶片形态信息提取方法 | |
CN108734731B (zh) | 一种基于机器视觉的类圆颗粒目标计数方法 | |
CN111861926A (zh) | 一种基于空域组增强机制与长短时记忆网络的图像去雨方法 | |
Chougule et al. | An efficient encoder-decoder CNN architecture for reliable multilane detection in real time | |
CN114648547A (zh) | 用于反无人机红外探测***的弱小目标检测方法和装置 | |
Heinrich et al. | Yield prognosis for the agrarian management of vineyards using deep learning for object counting | |
CN111783656B (zh) | 一种基于统计特性预分割的自适应红外小目标检测方法 | |
CN109859149B (zh) | 一种设定目标查找区域小动物运动跟踪方法 | |
Khude et al. | Object detection, tracking and counting using enhanced BMA on static background videos | |
CN102129687B (zh) | 动态场景下基于局部背景剪除的自适应目标跟踪方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |