一种基于图像处理的海豚身份识别的方法与流程

文档序号:12272311阅读:685来源:国知局
一种基于图像处理的海豚身份识别的方法与流程

本发明属于珍惜动物海豚的身份检测与识别领域,本发明具体涉及一种基于聚类的彩色图像区域分割以及手动目标分割,使用SIFT算法进行特征提取,建立海豚生长模型,利用关键点匹配进行身份识别的基于图像处理的海豚身份识别的方法。



背景技术:

虽然数字图像处理方面的算法有了长足的发展,但主要集中在医学,太空,以及人脸识别方面,在这些领域中一些图像处理算法能够取得不错的处理效果,但是在其他领域仍有需要进一步研究改进,比如的珍稀动物海豚,海豚在国内是野生动物保护研究所重点跟踪保护的对象,在对海豚的研究保护过程中,对海豚数量的变化情况以及生长变化趋势的研究是非常重要的,因此在本项目中主要针对海豚的身份识别进行研究。利用图像识别技术对海豚的身份识别的研究可以从以下几方面进行考虑。

(1)图像的预处理中的一项:目标分割。现实中的图像大多是使用移动设备拍摄的,拍摄的图像中除了包含目标信息外还有很多复杂的背景信息。海豚图像时使用移动设备拍摄的高分辨率图像,但是当需要将海豚目标从图像中分割出来时,虽然背景只有海水,但是需要考虑到还是在光照的影响下和海豚体表的色彩的近似度,这个在使用阈值分割时尤为重要;当需要使用边缘提取来分割海豚图像时,需要考虑海水表明的波痕与其邻域像素的梯度与海豚体表色彩与其邻域梯度的近似度。

(2)对于图像中的小目标,如何将它的特征信息进行准确的描述,在很多图像处理中,小的目标很容易在图像滤波中被当作噪声点过滤掉了。海豚体表的斑点时作为海豚身份识别的一个重要的因素,如何在图像处理中成功的保存下这些斑点的同时去除噪声点的干扰。

(3)人们设计机器识别时希望机器识别能够像人眼一样,识别的结果不因距离、角度以及光线的变化而改变识别的结果,因此需要在对图像的特征的描述时使用能够不因图像的模糊度,角度所影响的描述矢量来描述图像的信息,在这方面值得研究。

在对海豚进行身份识别的方法研究中,根据每条海豚都拥有可以它进行分辨的特征,可以以此作为区分不同海豚的依据,根据海豚体表特征的分布规律,利用图像识别技术,通过自动目标分割,建立海豚识别模型和生长模型来对野外拍摄的海豚图片进行自动识别比对,并且对海豚的图像进行自动管理,这样就大大减少了海洋保护者们的重复工作量,减少了人为误差,提高了海豚身份识别的识别效率。



技术实现要素:

本发明的目的在于提供一种通过基于聚类算法的彩色图像目标分割算法和手动目标分割 算法对海豚图片进行分割的基于图像处理的海豚身份识别的方法。

本发明的目的是这样实现的:

(1)确定聚类中心;

(2)自适应的确定聚类中心,根据聚类策略对海豚图像进行分类;海水背景作为Ⅰ类,将海豚目标作为Ⅱ类;

(3)将Ⅰ类从海豚图像中分离,得出海豚目标Ⅱ类;

手动目标分割首先在原海豚图像中标记出需要的分割区域,之后将这个区域内的像素均设置为1,其他的区域的像素点均为0,得出左侧的模板图像;再将得出的模板图像与原图像相乘,由于目标图像中的像素值只有0和1,与原图像的像素相乘时,与像素值为1对应的区域得以保存下来,与像素值为0对应区域的像素则置0,变成黑色区域;即可得到分割后的目标图像。

所述得出海豚目标Ⅱ类,在海豚图像上对海豚体表的斑点进行处理,得到清晰的海豚体表的斑点分布,统计这些斑点;使用Prewitt算法对分割后的海豚图像进行了边缘检测,检测出海豚体表的斑点边缘,同时也检测出来手动目标分割后的海豚图像的手动分割的区域轮廓边缘,通过腐蚀算法将海豚的的轮廓边缘去除;经过边缘检测后的海豚图像,其体表的斑点被准确的标记了出来,将一些小的斑点聚合在一起,作为新的特征点。

所述的通过图像预处理后,使用特征提取算法对海豚体表的特征点进行提取,并且归纳关键的数量与海豚的年龄段的关系,提出海豚生长模型,通过海豚体表斑点的大,数量来标识一条海豚年龄以及身份,通过对海豚体表斑点的数量的统计来完成对海豚年龄的统计,将特征点的数量作为海豚生长模型的参数。

对已经进行识别的海豚建立三维模型,当进行身份识别,识别出某海豚时,对应将其三维模型显示出来。

本发明的有益效果在于:

在实施过程中发现,本发明构造的基于图像处理的海豚身份识别方法能够对不同的海豚图像进行识别比对具有很高的适用性。

附图说明

图1为自动目标分割流程图;

图2为聚类范围图;

图3为海豚斑点变化图;

图4为海豚年龄分布图;

图5为SIFT算法的种子点梯度;

图6为SIFT流程图;

图7为系统流程图;

图8为特征提取与比对流程图;

图9为特征比对界面;

图10为抽样坐标;

图11为不同年龄段的标准;

图12为第一次系统测试;

图13为二次系统测试;

图14为三次系统测试;

图15为四次系统测试;

图16为五次系统测试。

具体实施方式

下面结合附图对本发明做进一步描述。

随着计算机性能的不断提高,图像处理的应用也越来越深入到各行各业。图像识别技术在海洋动物保护领域同样有着广泛的应用前景和高效的识别效果。

海洋生物中海豚的种类很多,分布也很广,但是在大量捕杀的情况下数量也在不断的下降,成为了全球的重点保护动物,因此加强对海豚种群的保护不仅保护了物种的多样性,并且也将为我国保留了一份宝贵的自然财富。野生海豚研究保护专家在对野生海豚种群进行研究时,一般是通过拍摄海豚的照片,之后根据照片中的海豚的体表的特征来人为的估算海豚的年龄与个体。这种人工的识别方法工作量大,错误率高,不利于海豚研究,因此,需要探求一种新的机器识别的方法来解决这些问题。将拍摄的野生海豚的图像利用图像识别技术进行识别,将大大提高海洋保护人员的工作效率。

海豚身份识别的实现主要是对海豚图片进行目标分割,通过特征提取建立海豚生长模型。海豚图像的目标分割主要有两方面的方法:基于灰度图像的分割和基于彩色图像的分割。基于灰度图像的分割应用很广泛,有很多成熟的算法,如基于阈值的灰度图像分割算法有分水岭分割算法,自适应阈值分割算法等算法。基于边缘检测的灰度图像分割时通过对灰度变换较大的区域进行各像素与其邻域的梯度的变化规律来判断边缘的,可以通过一阶导数或二阶导数来应对不同的图像分割。而彩色图像分割时通过其各个维度的色彩空间的不同,对图像信息的表述的不同,在这些色彩空间中去寻找目标所代表的色彩信息。色彩空间有RGB色彩空间、HSV色彩空间等,在不同的色彩空间中的侧重表示的图像的信息是不同的,不同的图像可以根据需要选择不同的色彩空间。

本发明使用基于灰度图像的分割算法进行分割,对分割后的结果进行特征提取,然后对海豚图像在灰度图像中的分割的特点进行分析,提出了基于聚类算法的彩色图像目标分割算法。同时,在面对更复杂的图像,目标分割要求跟高的情况,提出了一种手动目标分割算法。针对海豚体表的小目标识别问题,使用形态学方法将小目标进行处理,在之后的特征提取中能够准确的表述出来。使用SIFT算法对海豚体表的的特征进行了准确的表述,具备旋转,模糊,平移不变型。最后将提出的算法应用到了海豚身份识别系统中,设计出能够自动对海豚图像进行识别分类整理的系统。海豚身份识别方法可以划分为以下四个步骤:

然后对目标分割后的图像进行预处理,将海豚图像中的干扰信息去除,并且对斑点进行处理,突出斑点的特征分布。之后使用SIFT算法对处理后的图像进行特征提取,利用提取出的关键点与海豚年龄段分布的对应关系,建立海豚生长模型,经过实验,使用海豚生长模型能够有效地从海豚图像中判断出海豚所处的年龄段。

步骤1:提出了基于聚类的彩色图像区域分割算法以及手动目标分割算法。彩色图像目标分割技术利用了一种均值聚类的思想。将海豚图像背景作为一类,将海豚目标作为一类。在RGB色彩空间中利用均值聚类将海豚图像中的海水聚类,之后进行去除,那么得到的就是目标海豚图像。

步骤2:对目标分割后的图像进行预处理,将海豚图像中的干扰信息去除,并且对斑点进行处理,突出斑点的特征分布。通过Prewitt算子进行边缘检测,并通过去边缘;斑点膨胀;斑点聚合进行形态学处理。

步骤3:使用SIFT算法对处理后的图像进行特征提取,利用提取出的关键点与海豚年龄段分布的对应关系,建立海豚生长模型,利用关键点匹配进行身份识别,使用海豚生长模型能够有效地从海豚图像中判断出海豚所处的年龄段。

步骤4:结合三维模型结合目标分割算法和特征提取算法,利用MATLAB平台开发了海豚身份识别系统,并进行试验。

使用SIFT算法对海豚体表的特征进行特征提取以及身份识别匹配。最后将提出的算法应用到了海豚身份识别系统中,设计出能够自动对海豚图像进行识别分类整理的系统。

海豚身份识别的实现首先进行海豚图片目标分割,本发明中提出基于聚类算法的彩色图像目标分割算法以及手动目标分割算法。

基于聚类算法的彩色图像目标分割算法依据是图像在不同的色彩空间中所表现出的信息是不同的,通过观察在不同的色彩空间中的图像信息,可以从多个方面来完成对图像的处理,最后达到我们的目的。最常见的是RGB色彩空间,即通过红绿蓝(Red,Green,Blue)色彩空间来完成,通过分析图像对应的三维矩阵可以得到图像在灰度矩阵中得不到的信息。

彩色图像的海豚目标分割,在RGB色彩空间中进行目标分割,同时通过R、G、B三种基色进行分割,能有效提高分割的效果。RGB色彩分量在海豚图像中的分布是相似的度图像的贡献率都很大。灰度图像时将三个分量按照不同的贡献率设置不同的权重进行变化过来的。

gray=0.2990*R+0.5870*G+0.1140*B

由于在转换公式中R、G、B各个分量所占的比例是不同的,在转换为灰度图像时就会对一些色彩分量所代表的信息忽略。而往往在这三个色彩分量中包含一些很重要的特征信息,在RGB色彩空间的彩色图像分割能够更充分的对这些特征信息进行利用。

本发明提出的彩色图像目标分割技术利用了一种均值聚类的思想。将海豚图像背景作为一类,将海豚目标作为一类。在RGB色彩空间中利用均值聚类将海豚图像中的海水聚类,之后进行去除,那么得到的就是目标海豚图像。

具体的实施步骤如下:

①确定聚类中心

②自适应的确定聚类中心,根据聚类策略对海豚图像进行分类。海水背景作为Ⅰ类,将海豚目标作为Ⅱ类。

③将Ⅰ类从海豚图像中分离,得出海豚目标Ⅱ类。

算法的流程图为图1。从图1中可以看出,海水背景的颜色差别不是很大,即使有个别的也不会超出太大的范围,对海水背景的聚类中心可以通过分析海水像素的分布情况来确定。

通过分析海豚图像我们可以得出,图像中三角形所围区域以及其下部的矩形区域一般为海豚图像中海豚目标的分布区域,而剩余区域为海水的分布区域。我们只需要在剩余区域中分析海水的像素范围。因此在本文在海水的分布区域选取了8个抽样区域如图所示,每个区域为50*50的像素矩阵,每个矩阵的左上角的具体坐标见图10。将抽样的像素矩阵进行分析,可以得出三种色彩分量的分布都很集中,且都分布在0.5附近,因此,在聚类的时候可以将聚类的范围缩小,减小误差。

使用RGB三种色彩分量的分布规律作为聚类的标准,需要对三种分量在聚类的评价函数中表现形式有一个适用的体现。如图2所示。RGB三个分量的取值范围都是0到255的整数。将R、G、B三个分量作为三维坐标系中的xyz坐标轴,而图像矩阵中的像素点对应的三个分量的值就是这个坐标系中的一个点对应的坐标点,这些点都包含在r=255的1/4球内。海豚图像所在的像素范围在线1条与线4条所围的区域内,而线2条与线3条所围的区域为海水像素所在的范围。从图中可以看出,对图像中的每个像素点的欧式距离可以作为一个评价聚类的函数:

求出每个抽样矩阵的最大和最小的欧式距离:

Lmaxi=max(L)

Lmini=min(L)

将求出的最大距离以及最小距离均值:

并以此求出聚类范围:

H=μmaxmin

同样利用欧式距离求出图像的彩色聚类中心为:

其中μi是每个抽样矩阵欧式距离的均值。

之后,对图像中的所有像素点求欧式距离,并与聚类范围比较,在这个范围内的作为海水背景置0,不在这个范围内的则保持原来的像素分布不变。

彩色图像的自动目标分割算法,在对于图像的目标分布位置的图形的分割中具有很好的适应性。由于背景的分布区域固定,因此只需要分析出固定的背景像素分布规律,那么就可以利用聚类的方法确定聚类中心,并进行分割。

手动目标分割首先在原海豚图像中标记出需要的分割区域,之后将这个区域内的像素均设置为1,其他的区域的像素点均为0,得出左侧的模板图像。再将得出的模板图像与原图像相乘,由于目标图像中的像素值只有0和1,那么与原图像的像素相乘时,那么与像素值为1对应的区域得以保存下来,而与像素值为0对应区域的像素则置0,变成黑色区域。即可得到分割后的目标图像。

自动目标分割的有点在于自动化高,人为误差小,在处理图像质量高或对图像的细节要求不高的情况下很实用。而在处理图像的质量不高或者对图像细节的要求较高的图像,如需要根据海豚体表斑点对海豚年龄进行估算时,需要使用手动目标分割来完成。而手动目标分割虽然速度慢,但是能够有效地分割出图像微小的特征信息。

之后使用Prewitt算法边缘检测,其实现是目标图像与算子模板的卷积的过程,假设有两个矩阵A,B,其中A代表源图像,另外B代表矩阵的卷积模板,那么模板B的大小以及取值决定最后的运算结果。卷积的运算公式如下:

通过对模板的选择可以完成不同的加权的梯度运算。采用1范数衡量梯度的幅度

|G(1,2)|=|Gx(1,2)|+|Gy(1,2)|=2+1=3

之后对图像进行形态学学处理,对海豚体表的斑点进行膨胀,具体实现为:函数b对函数f进行灰度膨胀可定义为运算式如下:

其中Df和Db分别是函数f和函数b的定义域,同样b是形态学的结构元素,不过此处b是一个函数而不是一个集合。

位移参数(s-x)和(t-y)必须在函数f的定义域内才能有意义,此时它模仿二值膨胀运算定义。函数函数b对函数f进行膨胀后原函数的形状大小比原来更大了,相当于要每个部分相加了一部分b:f(s1)+b(s2-x)。

经过边缘检测后的海豚图像,其体表的斑点被准确的标记了出来,但是这些斑点的大小不一,分布也是部分十分密集,而部分又十分稀疏,这样的斑点让之后的统计以及识别都容易出项误差,因此,对斑点采用膨胀处理,将一些过小的斑点聚合在一起,作为一个新的特征点。膨胀使用菱形的结构元素,具有各向同向性,不会因为进行了膨胀而将斑点的分布方向改变,而影响之后的身份识别。本发明对斑点进行了三次膨胀操作。

之后建立海豚的生长模型,根据不同的年龄段的识别标准如图11。白海豚一生的斑点变化与其年龄的变化规律为如图3。

从图中可以看出,在海豚出生到20个月大时海豚的体表的斑点较少,并且随着时间的推移,小海豚体表的斑点数量渐渐增多,但是当海豚的进入青少年时期时海豚的体表斑点的增加速度会大幅度提升,当海豚达到顶峰时,又会迅速下降,因为海豚告诉的生长时间只有1到2年,在这期间海豚发育成熟,最后海豚发育成熟的标志就是斑点消失或者只存在极少数量的斑点。

因此可以通过对海豚体表斑点的数量的统计来完成对海豚年龄的统计。但是海豚体表的斑点的分布有的大,有的小,那些过于下的斑点在使用图像处理的方法进行统计时容易对最后的结果产生影响。因此,在之前的图像预处理中对图像中的小斑点作了膨胀处理,将小的斑点聚合在一起的同时不改变斑点的形状特征。

本发明所使用的海豚的图像时由珠江口海豚保护基地提供的190张海豚图像。从这些图 像中随机抽取100张图像,将这些图像进行自动目标分割处理,图像预处理,以及特征点提取,得到它们的特征点分布,再将图像与他们的年龄相对应,结果如图4。

图中的横轴为海豚的年龄,单位为月,纵轴为海豚的图像中检测出的特征点的数目。从中可以看出:

(1)当海豚的年龄在0到12个月大时,海豚体表检测出的关键点的数量为200到760间。

(2)当海豚的年龄在15到38个月大时,海豚体表检测出的关键点的数量为800到1200间。

(3)当海豚的年龄在大于40个月时,海豚体表检测出的关键点的数量为0到200将间

综上所述,在不同年龄段的海豚的关键点的检测数量是不同的,当海豚在幼年时海豚的关键点数量为200到760之间;当海豚的关键点数量在800到1200之间时海豚的年龄为青年;当海豚成年以后,体表的肤色将转变为白色,关键点的数量检测为0到200间。因此,可以根据海豚图像检测的关键点的数量来估计海豚的年龄,或者根据海豚的年龄来估计海豚体表关键点的数量。

建立完生长模型之后,使用SIFT算法提取特征点,进行特征匹配,SIFT算法的主要思路是:首先对图像进行降采样建立新的采样金字塔,之后使用不同方差的高斯模板对每层的图像建立尺度空,然后通过对金字塔中的相邻的图像相减建立差分金字塔,并且在差分金字塔中的图像中寻找极值点,最后建立描述符将极值点表述出来。SIFT特征还具有高度的不同性,可识别性,能够在一个具有大量特征的数据库中进行相似度匹配。该算法具有3个步骤:尺度空间构造、尺度空间极值检测、SIFT特征描述。

SIFT算法要做的是不同的尺度空间中寻找图像中存在的被隐藏了的关键点,SIFT算法中图像尺度空间的建立是通过不同参数的高斯模糊模板来建立的。高斯模糊是通过以服从二维高斯分布的离散的高斯模板与源图像进行卷积,以此来达到图像模糊的效果。

N维空间正太分布方程为:

其中σ是高斯模板的标准差,σ值越大,图像越模糊(平滑)。r为模糊半径,模糊半径是指模板元素到模板中心的距离。如二维模板大小为m*n,则模板上的的元素(x,y)对应的高斯计算公式为:

在二维空间中,这个公式绘制的图像即一维的正太分布旋转360度后的图像,最高点为均值所在位置。

所谓尺度空间的构造,也就是说通过使用不同的方差σ的高斯函数对源图像进行卷积以达到不同的图像。σ的值越大,那么经过模糊后的尺度图像越模糊,σ的值越小则模糊后的图像相对清晰。这个不同尺度空间的图像模拟了人眼在看一幅图像时远近变化的情况,当人眼距离图像远时,即σ大时,看到的图像模糊度大,随着距离的渐渐变小,也就是σ渐渐变小,图像的模糊度也不断变小。在本文中高斯模糊采用σ为0.5的高斯模糊模板构造尺度空间。

一、尺度空间极值检测

在尺度空间中分布的的像素点,在这些像素点中有些点是不因图像的旋转和平移而改变的,这些点可以作为图像的特征点来对图像就那些描述,当特征点大于3个时,就可以在对图像进行粗略的描述了。因此尺度空间极值检测就是为了通过对图像中的极值点进行遍历检测出这些点,要完成对尺度空间的极值检测需要一下步骤:构建高斯金字塔、构建高斯差分金字塔和极值检测、方向赋值。

1、高斯金字塔

首先对原图像中的像素点进行隔点的降采样,得出图像后,再对该图像进行采样,采样的层数根据公式:

n=log2{min(M,N)}-t,t∈[0,log2{min(M,N)}]

n为采样的层数,其中M,N为原图像的大小,t为塔顶图像的最小维数的对数。本文的图像的t为64,min(M,N)=1024,那么n为4.

将降采样后的4幅图像依次进行不同尺度的高斯模糊,构建尺度空间,每一幅图像将构建由8个尺度的尺度空间。

2、构建高斯差分金字塔

高斯差分金字塔的构造即是通过在高斯金字塔中的相邻的两层图像进行相减得到的。

3、极值检测

关键点在高斯差分金字塔中检测出所在位置即是图像中的极值点所在的位置。极值点的寻找按照以下步骤:首先利用高斯差分金字塔寻找出一幅图像中的极值点,并记录。然后,将寻找到的局部极值点与该图像相邻的两幅图像中对应位置点的像素进行比较,如果依然为极值点,那么改点可以作为极值点。

4、方向赋值

SIFT算法中的关键点需要满足旋转不变性,因此需要选择合适的方式来对关键点赋值, 赋值依据则是关键点的局部图像结构。关键点的方向是通过其领域像素的梯度分布特性来确定,再使用图像的梯度直方图法来求关键点局部结构的稳定方向,这样由于是通过邻域共同确定的,可以再图像发生旋转时方向不变。每个点L(x,y)的梯度的模m(x,y)与方向θ(x,y)可以通过下面的公式得到:

其中L(x,y)所用的尺度为关键的所用的尺度。

将关键点领域的像素点的梯度以及方向均计算出来后,SIFT算法使用直方图统计出在不同方向上的梯度的累加值。在直方图中不同的梯度方向,梯度的累加统计值是不同的,其中梯度累加值最大的柱对应的梯度方向即可作为关键点的方向。但是在统计图中容易出现方向的累加值是相近的,因此SIFT算法规定,当其他方向的柱的大小大于等于最大值的80%时,并且其对应的梯度方向也可以作为关键点的另一个梯度方向,也就是或一个关键点可以拥有不只一个方向,但是都是和领域的像素有关的。

二、SIFT特征描述

在上面的图像特征的处理中,已经找到关键点,并且给关键点赋予了位置、尺度和方向信息。但是需要有一组特殊的关键点向量来对图像的关键点进行描述,这个关键点不但包括关键点,也包括关键点周围对其有贡献的像素点。描述子将被用来作为目标匹配的依据(所以描述子应该具有较高的独特性,以保证匹配率)。

以关键点为中心取8*8的窗口。如图5所示,图5a中的圆心即为关键点所在的位置,而在圆中每个小的基本方格所代表的为一个像素点,方格中的箭头的方向代表该像素点的方向,而箭头的长度的模值代表的是该像素点的梯度大小。将这些方格划分为4*4个组,在每组中使用统计的方法得出每组的梯度方向和梯度大小,最后这些不同的组的梯度,方向共同组成一组向量,这组向量即可用来对关键点进行描述,即为描述符。由于是根据关键点领域像素点生成的描述符,因此对噪声具有较强的抑制能力。综上所述,提取图像SIFT特征点机器特征向量的流程如图6。

由于SIFT算法在特征点提取方面的特点,关键点能够准确的描述出图像的信息,并且不因图像的旋转和平移而影响,因此,本文采用的匹配策略是通过关键点的匹配数来判定图像中海豚的身份。本文采用的是有珠江口海豚保护基地提供的海豚图像。并且在提前已经将经过处理后的图像进行了存储,列为比对的模板。关于海豚图像匹配实验,分为三组来进行: 正常图像匹配实验、部分图像遮挡实验、旋转图像实验。设输入图像检测到的关键点数为M,模板的关键点数为N,匹配成功的关键点数为K,那么匹配率为δ,

最后在匹配上提出与三位模型结合的方案进行识别,根据三维模型的三维性,从三个坐标系不同角度对海豚体表的斑点数已经分布进行识别。

随着计算机性能的不断提高,图像处理的应用也越来越深入到各行各业。图像识别技术在海洋动物保护领域同样有着广泛的应用前景和高效的识别效果。

海洋生物中海豚的种类很多,分布也很广,但是在大量捕杀的情况下数量也在不断的下降,成为了全球的重点保护动物,因此加强对海豚种群的保护不仅保护了物种的多样性,并且也将为我国保留了一份宝贵的自然财富。野生海豚研究保护专家在对野生海豚种群进行研究时,一般是通过拍摄海豚的照片,之后根据照片中的海豚的体表的特征来人为的估算海豚的年龄与个体。这种人工的识别方法工作量大,错误率高,不利于海豚研究,因此,需要探求一种新的机器识别的方法来解决这些问题。将拍摄的野生海豚的图像利用图像识别技术进行识别,将大大提高海洋保护人员的工作效率。

海豚身份识别的实现主要是对海豚图片进行目标分割,通过特征提取建立海豚生长模型。海豚图像的目标分割主要有两方面的方法:基于灰度图像的分割和基于彩色图像的分割。基于灰度图像的分割应用很广泛,有很多成熟的算法,如基于阈值的灰度图像分割算法有分水岭分割算法,自适应阈值分割算法等算法。基于边缘检测的灰度图像分割时通过对灰度变换较大的区域进行各像素与其邻域的梯度的变化规律来判断边缘的,可以通过一阶导数或二阶导数来应对不同的图像分割。而彩色图像分割时通过其各个维度的色彩空间的不同,对图像信息的表述的不同,在这些色彩空间中去寻找目标所代表的色彩信息。色彩空间有RGB色彩空间、HSV色彩空间等,在不同的色彩空间中的侧重表示的图像的信息是不同的,不同的图像可以根据需要选择不同的色彩空间。

本发明使用基于灰度图像的分割算法进行分割,对分割后的结果进行特征提取,然后对海豚图像在灰度图像中的分割的特点进行分析,提出了基于聚类算法的彩色图像目标分割算法。同时,在面对更复杂的图像,目标分割要求跟高的情况,提出了一种手动目标分割算法。针对海豚体表的小目标识别问题,使用形态学方法将小目标进行处理,在之后的特征提取中能够准确的表述出来。使用SIFT算法对海豚体表的的特征进行了准确的表述,具备旋转,模糊,平移不变型。最后将提出的算法应用到了海豚身份识别系统中,设计出能够自动对海豚图像进行识别分类整理的系统。海豚身份识别方法可以划分为以下四个步骤:

然后对目标分割后的图像进行预处理,将海豚图像中的干扰信息去除,并且对斑点进行处理,突出斑点的特征分布。之后使用SIFT算法对处理后的图像进行特征提取,利用提取出的关键点与海豚年龄段分布的对应关系,建立海豚生长模型,经过实验,使用海豚生长模型能够有效地从海豚图像中判断出海豚所处的年龄段。

步骤1:提出了基于聚类的彩色图像区域分割算法以及手动目标分割算法。彩色图像目标分割技术利用了一种均值聚类的思想。将海豚图像背景作为一类,将海豚目标作为一类。在RGB色彩空间中利用均值聚类将海豚图像中的海水聚类,之后进行去除,那么得到的就是目标海豚图像。

步骤2:对目标分割后的图像进行预处理,将海豚图像中的干扰信息去除,并且对斑点进行处理,突出斑点的特征分布。通过Prewitt算子进行边缘检测,并通过去边缘;斑点膨胀;斑点聚合进行形态学处理。

步骤3:使用SIFT算法对处理后的图像进行特征提取,利用提取出的关键点与海豚年龄段分布的对应关系,建立海豚生长模型,利用关键点匹配进行身份识别,使用海豚生长模型能够有效地从海豚图像中判断出海豚所处的年龄段。

步骤4:结合三维模型结合目标分割算法和特征提取算法,利用MATLAB平台开发了海豚身份识别系统,并进行试验。

本实施所需要的软件仿真环境使用MATLAB,在MATLAB上设计编写交互操作界面(GUI)。

海豚身份识别系统可以划分为以下几个重要的模块:自动目标分割模块、手动目标分割模块、边缘检测模块、去除边缘模块、斑点膨胀模块、特征提取模块、特征比对模块、斑点统计模块。各个功能模块间的运行是相对独立的,通过消息进行各个模块间的交互通信。图7为系统流程图。

系统的目标是实现对海豚图像的自动识别,归类存储,那么自动目标分割则是在整个系统中至关重要的一环。自动目标分割模块能够对输入的图像,自动的检测出背景海水的色彩的分布范围,进行抽样并计算出聚类中心和聚类范围。自动目标分割后的图像能够准确的得到海豚目标,且海水背景以及浪花的影响较小,对之后的处理不影响。自动目标分割模块的流程图为图1。

手动目标分割时对自动目标分割的一个补充,对于一些背景十分复杂,且光线的影响作用过大时或对海豚目标的分割精准度要求过高时,使用手动目标分割。手动目标分割,只需要使用鼠标在源图像中用蓝色的线条画出需要分割的区域,起始点与终止点重合后,双击鼠标左键即可完成手动目标分割。

由于自动目标分割后的图像时二值图像,并且斑点处为黑色,而手动目标分割后的图像 为灰度图像,因此,边缘检测模块的作用就是将海豚体表的斑点的边缘检测出来。但是对于分割后的图像存在海豚的轮廓边缘需要在之后的去边缘模块中去除。另外,在边缘检测模块中预留了手动操作部分,可以手动的旋转不同的边缘检测算法,以此来应对特殊的海豚图像。去除边缘模块,通过形态学的腐蚀操作与矩阵相乘,在去除海豚轮廓的同时避免了对小的斑点的影响。

斑点膨胀模块的作用是通过形态学的处理,对海豚体表的斑点进行处理。通过膨胀操作使得海豚体表的小斑点聚合聚合为一个较大的斑点,由于采用的菱形的结构元素,所以膨胀后的斑点的特征信息得以最大可能的保存。

在本发明中,海豚体表的斑点除了可以可以作为海豚身份识别的依据外,还可以作为海豚年龄判断的依据,通过对体表斑点的联通分量的统计,可以根据图11估算出海豚所在的年龄段。

本发明采用的是8连通分量,8连通分量能够尽可能的将海豚体表的斑点进行统计,并且,能够进一步弥补在斑点膨胀操作中没有融合到一起的小斑点的融合问题。

特征提取模块使用SIFT算法对海豚的斑点进行提取,提取的斑点特征具有旋转、平移不变性,在这个模块中,完整的实现了SIFT算法,在对海豚体表的斑点特征的关键点的选取中,关键点的梯度以及方向是根据邻域的像素的梯度以及方向来共同决定的,这样就避免了在图像发生旋转或平移时出现关键点的方向和梯度模值发生变化。之后再根据这些关键的信息进行关键的匹配,当关键点匹配成功率大于0.5时,可以判断两幅图像时对同一条海豚的拍摄。特征提取模块与特征比对模块的流程图为图8。

在特征提取模块中,共进行了4次的降采样,形成了4幅经过降采样的图像。对每一幅将采样的图像建立了不同σ的尺度空间,尺度从σ到8σ。之后对不同尺度下的图像进行相减,以此建立高斯差分金字塔,最后进行关键点的检测以及计算出关键点描述矢量。图9为图像的比对图像。

(1)测试结果:

本发明采用的是由珠江口海豚保护基地提供的190张中华白海豚的图像进行实验,以此来评价海豚识别系统中的海豚图像目标分割以及海豚生长模型在海豚身份识别系统中的性能。在这190张海豚图像中,均标注了海豚的编号,以便于最后对系统的识别结果进行判断。

系统在第一次初始化后,由于系统还没有对图像进行识别,因此需要首先使用一部分图像在系统中建立识别模板。本发明使用了100张图像效果的图像首先进行系统识别建立了系统的初步识别模板。系统的模板是根据检测出的海豚的额年龄段进行分组的,利用年龄段的分组可以提高系统的识别效率。在系统测试中,将系统的功能分为两种:A是一种是采用了 海豚生长模型作为加快身份识别系统效率的;B是一种没有加入海豚生长模型的。其中随机选取了30张图像作为测试的数据集。并且进行了5次测试。测试的结果图12至图16所示。

(2)结果分析:

从测试结果中可以看出,使用了海豚生长模型作为辅助判断海豚的身份的系统的识别率高于没有使用海豚生长模型的系统,并且由于在识别的时间上也低于没有使用海豚生长模型的系统。本发明对不同的海豚图像进行识别比对具有很高的适用性。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1