基于舰船舷号的自动识别方法和系统与流程

您所在的位置:网站首页 船舷号599 基于舰船舷号的自动识别方法和系统与流程

基于舰船舷号的自动识别方法和系统与流程

2024-07-16 21:37| 来源: 网络整理| 查看: 265

基于舰船舷号的自动识别方法和系统与流程

本发明涉及计算机视觉领域,具体地,涉及一种基于舰船舷号的自动识别方法和系统。

背景技术:

在海上领域,舰船扮演着十分重要的角色。对于舰船来说,其存在着多种类型,不同类型的舰船都扮演着不同的角色,比如:补给舰和登陆舰扮演着后方服务,补送给养等角色。因此,识别舰船的类型,有着非常重要的意义。对于舰船来说,其舷号的命名也是遵守着一定的规则。舷号是标志在舰艇两舷水线以上的编号,水面舰艇通常标示在舰首部水线以上两舷的显著位置,也有标在舰尾部的;潜艇标示在指挥室围壳上。由海军领导机关统一编定,用以确定舰艇在海军序列中的位置,便于识别。对于某一个特定的地区来说,不同类型的类型舰船,命名规律也是不一样,但是对于同一种类型的舰船,其舷号的命名是存在着一定的规律性。因此,我们可以通过识别其舰船舷号来得知其舰船类型以及其他详细信息等。

专利文献cn107886051a公开了一种基于图像的船舶身份识别方法,该方法首先对图像序列中的运动船舶进行目标检测,然后根据摄像机成像模型提取船舶目标的物理位置、尺寸、颜色等参数特征,并以ats信息作为参考,对船舶目标身份进行快速判别,对异常船舶进行告警。该方法计算量小,易于工程实现,实验结果表明,船舶目标能够实现快速、准确提取和身份识别,在海警、海事、船舶管理系统等军事和民事领域有着广泛的应用前景。但是上述专利文献在船舶图像获取方面不够灵活,且需要从图像中获取大量参数特征,信息计算也不够简便。

技术实现要素:

针对现有技术中的缺陷,本发明的目的是提供一种基于舰船舷号自动识别方法和系统。

根据本发明提供的一种基于舰船舷号的自动识别方法,包括:

图像采集步骤:采集舰船的图像,得到含有舰船舷号的图像信息,记为第一图像;

区域提取步骤:对第一图像进行区域提取,得到第二舷号区域;

舷号分割步骤:对第二舷号区域进行字符分割,得到第二舷号区域的各个舷号字符和舷号字符顺序;

舷号识别步骤:识别各个舷号字符,基于舷号字符顺序,得到舰船舷号。

优选地,所述区域提取步骤包括:

灰度处理步骤:令第一图像进行灰度化操作,去除反光对第一图像的影响,得到第二图像;

阈值化步骤:令第二图像采用大津阈值法进行图像区域区分,得到第一舷号区域和非舷号区域,对第一舷号区域和非舷号区域进行标记,得到第三图像;

形态学步骤:令第三图像进行开运算操作,得到第四图像;

区域定位步骤:令第四图像中的第一舷号区域进行最小外接矩形求取,得到最小外接矩形的定位坐标;

区域裁剪步骤:令第一图像基于定位坐标进行区域裁剪,得到第二舷号区域。

优选地,所述舷号分割步骤包括:

二值化步骤:令第二舷号区域进行自适应阈值分割,得到二值化图像,所述二值化图像中存在若干个封闭区域;

矩形绘制步骤:令二值化图像的各个封闭区域进行最小外接矩形求取,得到i个最小外接矩形,第i个最小外接矩形记为ji,其中i表示最小外接矩形的个数;

舷号裁剪步骤:令第二舷号区域按照i个最小外接矩形进行区域裁剪,得到各个舷号字符和舷号字符顺序。

优选地,所述舷号识别步骤包括:

尺寸归一步骤:令各个舷号字符按照设定尺寸进行大小归一化处理,得到处理后舷号字符图像;

构建神经网络步骤:构建多层的神经网络,神经网络包括输入层、隐含层、输出层;所述输入层为单层结构,包括3600个神经元,每个神经元对应输入图像的一个像素点;所述隐含层为三层结构,各层分别包括1024、512、128个神经元;所述输出层为单层结构,包括36个神经元;

网络输出步骤:令处理后舷号字符图像进行神经网络识别,得到图像字符含义;

拼接步骤:根据舷号字符顺序对图像字符含义依次拼接,得到完整字符序列,记为舰船舷号。

根据本发明提供的一种基于舰船舷号的自动识别系统,包括:

图像采集模块:采集舰船的图像,得到含有舰船舷号的图像信息,记为第一图像;

区域提取模块:对第一图像进行区域提取,得到第二舷号区域;

舷号分割模块:对第二舷号区域进行字符分割,得到第二舷号区域的各个舷号字符和舷号字符顺序;

舷号识别模块:识别各个舷号字符,基于舷号字符顺序,得到舰船舷号。

优选地,所述区域提取模块包括:

灰度处理模块:令第一图像进行灰度化操作,去除反光对第一图像的影响,得到第二图像;

阈值化模块:令第二图像采用大津阈值法进行图像区域区分,得到第一舷号区域和非舷号区域,对第一舷号区域和非舷号区域进行标记,得到第三图像;

形态学模块:令第三图像进行开运算操作,得到第四图像;

区域定位模块:令第四图像中的第一舷号区域进行最小外接矩形求取,得到最小外接矩形的定位坐标;

区域裁剪模块:令第一图像基于定位坐标进行区域裁剪,得到第二舷号区域。

优选地,所述舷号分割模块包括:

二值化模块:令第二舷号区域进行自适应阈值分割,得到二值化图像,所述二值化图像中存在若干个封闭区域;

矩形绘制模块:令二值化图像的各个封闭区域进行最小外接矩形求取,得到i个最小外接矩形,第i个最小外接矩形记为ji,其中i表示最小外接矩形的个数;

舷号裁剪模块:令第二舷号区域按照i个最小外接矩形进行区域裁剪,得到各个舷号字符和舷号字符顺序。

优选地,所述舷号识别模块包括:

尺寸归一模块:令各个舷号字符按照设定尺寸进行大小归一化处理,得到处理后舷号字符图像;

构建神经网络模块:构建多层的神经网络,神经网络包括输入层、隐含层、输出层;所述输入层为单层结构,包括3600个神经元,每个神经元对应输入图像的一个像素点;所述隐含层为三层结构,各层分别包括1024、512、128个神经元;所述输出层为单层结构,包括36个神经元;

网络输出模块:令处理后舷号字符图像进行神经网络识别,得到图像字符含义;

拼接模块:根据舷号字符顺序对图像字符含义依次拼接,得到完整字符序列,记为舰船舷号。

优选地,所述采集舰船的图像通过无人机进行远程图像采集。

与现有技术相比,本发明具有如下的有益效果:

将计算机视觉技术与舰船舷号识别相结合,实现自动对舰船舷号的识别,不需要人眼去识别,提高了识别的效率,减轻了人员负担。

附图说明

通过阅读参照以下附图对非限制性实施例所作的详细描述,本发明的其它特征、目的和优点将会变得更明显:

图1为本发明的整体流程图;

图2为本发明的舷号区域提取流程图;

图3为本发明的字符样例示意图;

图4为本发明的舷号识别流程图。

具体实施方式

下面结合具体实施例对本发明进行详细说明。以下实施例将有助于本领域的技术人员进一步理解本发明,但不以任何形式限制本发明。应当指出的是,对本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变化和改进。这些都属于本发明的保护范围。

根据本发明提供的一种基于舰船舷号的自动识别方法,包括:

图像采集步骤:采集舰船的图像,得到含有舰船舷号的图像信息,记为第一图像;

区域提取步骤:对第一图像进行区域提取,得到第二舷号区域;

舷号分割步骤:对第二舷号区域进行字符分割,得到第二舷号区域的各个舷号字符和舷号字符顺序;

舷号识别步骤:识别各个舷号字符,基于舷号字符顺序,得到舰船舷号。

具体地,所述区域提取步骤包括:

灰度处理步骤:令第一图像进行灰度化操作,去除反光对第一图像的影响,得到第二图像;

阈值化步骤:令第二图像采用大津阈值法进行图像区域区分,得到第一舷号区域和非舷号区域,对第一舷号区域和非舷号区域进行标记,得到第三图像;

形态学步骤:令第三图像进行开运算操作,得到第四图像;

区域定位步骤:令第四图像中的第一舷号区域进行最小外接矩形求取,得到最小外接矩形的定位坐标;

区域裁剪步骤:令第一图像基于定位坐标进行区域裁剪,得到第二舷号区域。

具体地,所述舷号分割步骤包括:

二值化步骤:令第二舷号区域进行自适应阈值分割,得到二值化图像,所述二值化图像中存在若干个封闭区域;

矩形绘制步骤:令二值化图像的各个封闭区域进行最小外接矩形求取,得到i个最小外接矩形,第i个最小外接矩形记为ji,其中i表示最小外接矩形的个数;

舷号裁剪步骤:令第二舷号区域按照i个最小外接矩形进行区域裁剪,得到各个舷号字符和舷号字符顺序。

具体地,所述舷号识别步骤包括:

尺寸归一步骤:令各个舷号字符按照设定尺寸进行大小归一化处理,得到处理后舷号字符图像;

构建神经网络步骤:构建多层的神经网络,神经网络包括输入层、隐含层、输出层;所述输入层为单层结构,包括3600个神经元,每个神经元对应输入图像的一个像素点;所述隐含层为三层结构,各层分别包括1024、512、128个神经元;所述输出层为单层结构,包括36个神经元;

网络输出步骤:令处理后舷号字符图像进行神经网络识别,得到图像字符含义;

拼接步骤:根据舷号字符顺序对图像字符含义依次拼接,得到完整字符序列,记为舰船舷号。

具体地,所述采集舰船的图像通过无人机进行远程图像采集。

根据本发明提供的一种存储有计算机程序的计算机可读存储介质,所述计算机程序被处理器执行时实现上述的方法的步骤。

根据本发明提供的一种基于舰船舷号的自动识别系统,包括:

图像采集模块:采集舰船的图像,得到含有舰船舷号的图像信息,记为第一图像;

区域提取模块:对第一图像进行区域提取,得到第二舷号区域;

舷号分割模块:对第二舷号区域进行字符分割,得到第二舷号区域的各个舷号字符和舷号字符顺序;

舷号识别模块:识别各个舷号字符,基于舷号字符顺序,得到舰船舷号。

具体地,所述区域提取模块包括:

灰度处理模块:令第一图像进行灰度化操作,去除反光对第一图像的影响,得到第二图像;

阈值化模块:令第二图像采用大津阈值法进行图像区域区分,得到第一舷号区域和非舷号区域,对第一舷号区域和非舷号区域进行标记,得到第三图像;

形态学模块:令第三图像进行开运算操作,得到第四图像;

区域定位模块:令第四图像中的第一舷号区域进行最小外接矩形求取,得到最小外接矩形的定位坐标;

区域裁剪模块:令第一图像基于定位坐标进行区域裁剪,得到第二舷号区域。

具体地,所述舷号分割模块包括:

二值化模块:令第二舷号区域进行自适应阈值分割,得到二值化图像,所述二值化图像中存在若干个封闭区域;

矩形绘制模块:令二值化图像的各个封闭区域进行最小外接矩形求取,得到i个最小外接矩形,第i个最小外接矩形记为ji,其中i表示最小外接矩形的个数;

舷号裁剪模块:令第二舷号区域按照i个最小外接矩形进行区域裁剪,得到各个舷号字符和舷号字符顺序。

具体地,所述舷号识别模块包括:

尺寸归一模块:令各个舷号字符按照设定尺寸进行大小归一化处理,得到处理后舷号字符图像;

构建神经网络模块:构建多层的神经网络,神经网络包括输入层、隐含层、输出层;所述输入层为单层结构,包括3600个神经元,每个神经元对应输入图像的一个像素点;所述隐含层为三层结构,各层分别包括1024、512、128个神经元;所述输出层为单层结构,包括36个神经元;

网络输出模块:令处理后舷号字符图像进行神经网络识别,得到图像字符含义;

拼接模块:根据舷号字符顺序对图像字符含义依次拼接,得到完整字符序列,记为舰船舷号。

本发明提供的基于舰船舷号的自动识别系统,可以通过基于舰船舷号的自动识别方法的步骤流程实现。本领域技术人员可以将基于舰船舷号的自动识别方法理解为所述基于舰船舷号的自动识别系统的优选例。

以下结合附图对本发明的优选例做进一步的阐述:

如图1所示,优选例的整体简要流程分析可如下所示:

a、采集图像:可通过无人机或者其他方式采集到含有对方舰船舷号的相关图像信息。

b、舷号区域提取:对于采集到的图像,进行舷号区域提取,获取舷号相关区域,去除其他干扰区域。

c、舷号分割:对于获取到的舷号区域,进行字符分割,按顺序提取出舷号中每一个字母。

d、舷号识别:对于提取出的每一个字符,进行字符识别。

在采集图像环节中,可以采用无人机进行远程拍摄对方舰船信息,从而最终获得到含有对方舰船舷号图像信息。对于无人机来说,其造价较低,且被击毁之后,不会对于我方人员造成身体伤害,故可以很好地应用于侦探对方情况。

在舷号区域提取环节中,对于无人机获取到的图像来说,标记其为p。但是由于舰船的舷号很大,且舷号往往位于舰船的侧面,故无人机往往只能以俯视的角度来采集舷号信息,这就带来一个问题。对于采集到图像的舷号来说,其往往是倾斜的,这样会给舷号的分割和识别带来一定的负面影响,基于此,在本环节中,我们对采集到的图像,进行倾斜校正,从而最大程度上消除倾斜带来的问题。如图2所示,灰度化处理:对采集到的图像p,进行灰度化操作,去除反光对采集到图像的直接影响,得到的图像记为p0;阈值化处理:对于舰船来说,其涂装颜色比较单一,且舷号的颜色和舰船涂装颜色,基本不一样。因此,这对于阈值化,分割出舷号区域非常方便。对于灰度化后的图像p0,我们采用大津阈值的方法,来初步提取舷号区域。大津阈值主要通过图像之间的关联性,从原始图像中将前景区域(舷号区域)和背景区域(非舷号区域)提取出来。具体实施如下:假设图像p的尺寸大小是m×n,该图像中像素值小于t的像素个数记作t0,大于t的像素个数记作t1,则有如下公式:

ω0=t0/m×n(1)

ω1=t1/m×n(2)

μ=ω0μ0+ω1μ1(5)

g=ω0(μ0-μ)2+ω1(μ1-μ)2(6)

g=ω0ω1(μ0-μ1)2(7)

其中,ω0表示前景像素点占图像总像素点的比例,μ0表示所有前景像素点的平均像素值,qi表示第i个前景像素点的像素值,ω1表示背景像素点占图像总像素点的比例,μ1表示所有背景像素点的平均像素值,ri表示第i个背景像素点的像素值,图像的所有像素点的平均像素值记为μ,类间方差记为g。将公式(5)代入到公式(6)中,可以得到公式(7)。对于不同的值t,其会得到不同的值g,循环遍历值t,从而使得g达到最大值,从而此刻的t值就是最佳分割前景和背景的阈值,记为tmax。

采用阈值tmax,对图像p进行阈值化,小于阈值tmax的像素值标记为1,否则标记为0,阈值化的图像标记为p';

形态学操作:对于图像p',进行开运算操作,从而消除一些零星的白色像素点(像素值为1的像素点),获得图像标记为p”;绘制最小外接矩形:对图像p”,求取最小外接矩形。由于在图像p”中,其基本只存在一个形状类似于矩阵的白色区域(舷号区域),我们求取该白色区域的最小外接矩形,并记录下该最小外接矩形的左上角坐标点位置o,和矩形的长度l和宽度w;裁剪舷号区域:在原始图像p中,根据o点坐标和相关参数l以及w,截取出相应的区域,标记为roi,则该区域为包括舰船完整舷号的区域。

在舷号分割环节,对获取到的图像roi,需要进一步提取出每一个字符部分。具体实施如下:(i)阈值化。在图像roi,由于基本只包含舷号区域,背景成分相对较少,因此,我们可以使用自适应的阈值(该方法技术已经成熟,直接调用)方法,来二值化图像。(ii)绘制最小外接矩形。对于二值化后的图像,进行求取每个封闭区域(白色区域)的最小外接矩形,分别标记为ji,i表示最小外接矩形的个数。(iii)从图像roi,按照每一个最小外接矩形ji的顺序,将对应的区域裁剪出来,分别标记为ki,其样例可如图3所示。

在舷号识别环节,如图4所示,构建简单的人工神经网络进行字符识别,具体实施如下:(i)尺寸归一化。对于上个步骤得到的每一个字符样例,将其大小归一化到60×60的尺寸大小。(ii)构建神经网络。我们一共定义具有四层的神经网络。其中,该神经网络结构可如下所示:输入层:单层,一共3600个神经元,每一个神经元,对应着输入图像的一个像素,一共3600个像素点;隐含层:共三层,分别具有1024,512,128个神经元;输出层:单层,共有36个神经元,即10个数字(0-9)和26个大写字母(a-z)。有些国家的舰船舷号可能包含英文字母。(iii)网络的输出值,在输出层中,每一个神经元的输出,表示当前输入图像属于当前神经元所对应字符的概率,我们选择概率最大的神经元所对应的字符当做当前输入图像的含义。(iv)按照字符图像输入的顺序,依次将神经网络输出的字符含义依次拼接,从而得到一个完整的字符序列,则该字符序列表示该舰船的舷号。

本领域技术人员知道,除了以纯计算机可读程序代码方式实现本发明提供的系统、装置及其各个模块以外,完全可以通过将方法步骤进行逻辑编程来使得本发明提供的系统、装置及其各个模块以逻辑门、开关、专用集成电路、可编程逻辑控制器以及嵌入式微控制器等的形式来实现相同程序。所以,本发明提供的系统、装置及其各个模块可以被认为是一种硬件部件,而对其内包括的用于实现各种程序的模块也可以视为硬件部件内的结构;也可以将用于实现各种功能的模块视为既可以是实现方法的软件程序又可以是硬件部件内的结构。

以上对本发明的具体实施例进行了描述。需要理解的是,本发明并不局限于上述特定实施方式,本领域技术人员可以在权利要求的范围内做出各种变化或修改,这并不影响本发明的实质内容。在不冲突的情况下,本申请的实施例和实施例中的特征可以任意相互组合。



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3