一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

图像语义分割方法、电子设备及存储介质与流程

2022-02-22 06:58:46 来源:中国专利 TAG:


1.本技术涉及计算机技术领域,尤其涉及一种图像语义分割方法、电子设备及存储介质。


背景技术:

2.近年来,以深度学习为中心的机器学习技术引起了人们的关注。比如,自动驾驶汽车已经逐渐成为可能,但在整个深度学习过程,需要算法识别和学习作为原始数据提供的图像,在这一过程中,应用到了语义分割技术。语义分割是一种典型的计算机视觉问题,其涉及将一些原始数据(例如,平面图像)作为输入并将它们转换为具有突出显示的感兴趣区域的掩膜。利用卷积神经网络进行语义分割处理作为一种分割精度较高的方式而被广泛使用。但是,采用卷积神经网络进行语义分割处理时,图像中目标特征边缘位置的像素识别精度较低,容易存在误识别或错识别。


技术实现要素:

3.为解决或部分解决相关技术中存在的问题,本技术提供一种图像语义分割方法、电子设备及存储介质,该图像语义分割方法、电子设备及存储介质能够加强图像中目标边缘的特征,提升对图像目标边缘的分割精度。
4.本技术第一方面提供一种图像语义分割方法,包括:
5.基于图像获得rgb矩阵;
6.采用预设手段对所述图像处理,得到灰度图像矩阵;
7.将所述rgb矩阵与所述灰度图像矩阵按照预设规则合并得到目标矩阵集合;
8.对所述图像利用卷积神经网络的预设语义分割模型进行语义分割处理,其中,语义分割时所述卷积神经网络的预设语义分割模型的输入矩阵为所述目标矩阵集合。
9.在一种实施方式中,所述对所述图像利用卷积神经网络的预设语义分割模型进行语义分割处理,其中,语义分割时所述卷积神经网络的预设语义分割模型的输入矩阵为所述目标矩阵集合,包括:
10.建立语义分割模型,其中,所述语义分割模型至少包括输入模块,将所述输入模块中的第一个卷积层的输入维度设置为4;
11.基于所述语义分割模型对所述图像进行输入矩阵为所述目标矩阵集合的语义分割处理。
12.在一种实施方式中,所述得到目标矩阵集合前,包括:
13.分别对所述灰度图像矩阵、所述rgb矩阵进行归一化处理。
14.在一种实施方式中,归一化处理后的所述灰度图像矩阵中每个元素值为0或1,所述rgb矩阵中每个元素值在[0,1]之间。
[0015]
在一种实施方式中,所述采用预设手段对所述图像处理,得到灰度图像矩阵,包括:
[0016]
将所述图像转化为灰度图;
[0017]
对所述灰度图进行二值化处理,获得二值化的灰度图像矩阵,其中二值化的所述灰度图像矩阵中的元素值为0或255。
[0018]
在一种实施方式中,所述对所述灰度图进行二值化处理,包括:
[0019]
采用自适应阈值二值化算法对所述灰度图进行二值化处理。
[0020]
在一种实施方式中,所述采用自适应阈值二值化算法对所述灰度图进行二值化处理,包括:
[0021]
获取以当前像素点作为中心的m
×
n的像素区域;
[0022]
根据高斯函数分别计算所述m
×
n的像素区域内各像素点到所述当前像素点的距离并进行加权平均,得到所述像素点的二值化阈值;
[0023]
将所述当前像素点的灰度值与所述二值化阈值进行对比,若所述当前像素点的灰度值大于所述二值化阈值,则将所述当前像素点的二值化值设为255,若所述当前像素点的灰度值小于所述二值化阈值,则将所述当前像素点的二值化值设为0。
[0024]
在一种实施方式中,所述对所述图像利用卷积神经网络的预设语义分割模型进行语义分割处理所得到的分割图像中,标记有至少一种类别标签。
[0025]
本技术第二方面提供一种电子设备,包括:
[0026]
处理器;以及
[0027]
存储器,其上存储有可执行代码,当所述可执行代码被所述处理器执行时,使所述处理器执行如上所述的方法。
[0028]
本技术第三方面提供一种存储介质,其上存储有可执行代码,当所述可执行代码被电子设备的处理器执行时,使所述处理器执行如上所述的方法。
[0029]
本技术提供的技术方案可以包括以下有益效果:
[0030]
本技术实施例提供的图像语义分割方法、电子设备及存储介质,包括:基于图像获得rgb矩阵,采用预设手段对图像处理,得到灰度图像矩阵,将rgb矩阵与灰度图像矩阵按照预设规则合并得到目标矩阵集合;对图像利用卷积神经网络的预设语义分割模型进行语义分割处理,其中,语义分割时卷积神经网络的预设语义分割模型的输入矩阵为目标矩阵集合。将经过预设手段处理后的灰度图像矩阵与rgb矩阵共同归一化处理得到的目标矩阵集合,而使得4维度的目标矩阵集合作为输入矩阵。并且,将图像转换为灰度图像后,将其矩阵与rgb矩阵共同作为输入矩阵时,由于灰度图本身只有黑白两个颜色,在获取目标特征时,目标特征的边界与旁边的特征像素更加明显。所以在将灰度图的矩阵建立与rgb矩阵的联系后,共同作为输入矩阵输入后,更有利于语义分割,以提高目标特征边缘的识别精度。
[0031]
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本技术。
附图说明
[0032]
通过结合附图对本技术示例性实施方式进行更详细的描述,本技术的上述以及其它目的、特征和优势将变得更加明显,其中,在本技术示例性实施方式中,相同的参考标号通常代表相同部件。
[0033]
图1是本技术实施例示出的图像语义分割方法第一流程示意图;
[0034]
图2是本技术实施例示出的图像语义分割方法第二流程示意图;
[0035]
图3是本技术实施例示出的图像语义分割方法第三流程示意图;
[0036]
图4是本技术实施例示出电子设备示意图。
具体实施方式
[0037]
下面将参照附图更详细地描述本技术的实施方式。虽然附图中显示了本技术的实施方式,然而应该理解,可以以各种形式实现本技术而不应被这里阐述的实施方式所限制。相反,提供这些实施方式是为了使本技术更加透彻和完整,并且能够将本技术的范围完整地传达给本领域的技术人员。
[0038]
在本技术使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本技术。在本技术和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。还应当理解,本文中使用的术语“和/或”是指并包含一个或多个相关联的列出项目的任何或所有可能组合。
[0039]
应当理解,尽管在本技术可能采用术语“第一”、“第二”、“第三”等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本技术范围的情况下,第一信息也可以被称为第二信息,类似地,第二信息也可以被称为第一信息。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括一个或者更多个该特征。在本技术的描述中,“多个”的含义是两个或两个以上,除非另有明确具体的限定。
[0040]
相关技术中,语义分割是常见的计算机视觉任务,被广泛应用于如自动驾驶、人机交互、虚拟现实等领域。语义分割是一项高层次的任务,为实现场景的完整理解铺平了道路。语义分割的目标是对图像中的每个像素点进行分类,从而标记出分类中不同类别的物体占据的图像区域。近年来随着深度学习的普及,许多语义分割问题正在采用深层次的结构来解决,最常见的是卷积神经网络,具有较高的精度以及效率。
[0041]
可选地,本技术以将语义分割应用于自动驾驶领域中为例,自动驾驶的车辆设置有激光雷达,在车辆行驶过程,可以通过激光雷达采集车辆外部的信息转换成图片作为原始图像数据,后续不再单独强调。
[0042]
在将原始图像数据利用语义分割对图像进行处理后得到的分割图像中,每个像素点都被标记有类别信息,以及标记出属于同一类别作为一个对象的边界。而对于相邻的两个对象来说,边界距离很近或者共用边界,目标对象边缘的特征不明显,位于边界以及附近的像素点很容易被错识别或误识别而标记为其他类别信息,使得对应边缘位置的像素识别精度较低。
[0043]
针对上述问题,本技术提供了一种图像语义分割方法,能够加强图像中目标边缘的特征,提升对图像目标边缘的分割精度。
[0044]
以下结合附图详细描述本技术实施例的技术方案。
[0045]
图1是本技术实施例示出的图像语义分割方法第一流程示意图。
[0046]
参见图1,该方法包括:
[0047]
s101、基于图像获得rgb矩阵。
[0048]
s102、采用预设手段对图像处理,得到灰度图像矩阵。
[0049]
s103、将rgb矩阵与灰度图像矩阵按照预设规则合并得到目标矩阵集合。
[0050]
s104、对图像利用卷积神经网络的预设语义分割模型进行语义分割处理,其中,语义分割时卷积神经网络的预设语义分割模型的输入矩阵为目标矩阵集合。
[0051]
本技术实施例中,所获取的图像可以为:自动驾驶的车辆通过激光雷达采集某一时间段的外部图像数据并将外部图像数据转换成图片数据的原始图像数据,原始图像数据中包括该时间段中不同时刻的多张二维的彩色图像,所获取的彩色图像为其中的一张,以下以其中某一时刻的一张彩色图像为例,对语义分割方法进行详细说明。
[0052]
基于图像获得rgb矩阵。图像中的所有颜色,都是基于红色(red,简写为r)、绿色(green,简写为g)、蓝色(blue,简写为b)三种颜色色光按照不同的比例混合而成的,一组红色绿色蓝色就是一个最小的显示单位,称之为像素,多个像素按一定的规则排布后即可形成相应的图像。所以说,一个像素中包含红色绿色蓝色三个亮度的数值,也称作rgb值。通常来说,rgb值中三个颜色色光各有256级亮度,用数字表示为从0、1、2
……
255,一个图像中所有行列像素的集合称之为矩阵。而由于每个像素都包含三个原色像素的rgb值,所以对于图像来说,存在具有r值的r矩阵、具有g值的g矩阵、具有b值的b矩阵,三组矩阵的集合则为rgb矩阵,而得到的rgb矩阵中,可以为包括r、g、b三组矩阵的集合,也可以通过计算将三组矩阵组合成一个矩阵作为rgb矩阵,在此不做具体限定。
[0053]
采用预设手段对图像处理,得到灰度图像矩阵。参见图2,在一实施例中,所采用的预设手段而得到灰度图像矩阵包括:
[0054]
图2是本技术实施例示出的图像语义分割方法第二流程示意图。
[0055]
s1021、将图像转化为灰度图。
[0056]
s1022、对灰度图进行二值化处理,获得二值化的灰度图像矩阵,其中二值化的灰度图像矩阵中的元素值为0或255。
[0057]
基于图像,对其进行处理而获得灰度图,而获得灰度图的处理方式可以包括例如调节rgb亮度等多种方式来实现,即将每个像素中r、g、b的亮度调节至r=g=b,而获得只有黑、白的灰度图像,可以理解的是,用于获取灰度图的多种不同方式均属于较为常见,在此不做详细说明。对于所获得灰度图中,每个像素的灰度值的范围在0-255,在此基础上,对灰度图进行二值化处理,使得每个像素的灰度值只有0或255两个可选择的取值,从而得到仅有0、255两个值的像素集合,即为二值化的灰度图像矩阵。在此需要强调的是,将图像进行二值化处理是图像分析与处理中最常见最重要的处理手段,二值化处理方法也非常多。例如,一种方法可以为:扫描灰度图中的每个像素值,每个像素值在0-255之间,如果像素中的像素值小于127,则将该像素的像素值设为0,像素值大于等于127,则将像素值设为255,最终得到新的仅有0、255两个像素值组成的像素集合(灰度图像矩阵)。另一种方法可以为:计算灰度图中像素的平均值k,扫描灰度图像的每个像素值,如像素值大于k,则将该像素值设为255,像素值小于等于k,则将该像素值设为0。其中0、255中的一者可以为黑色、另一者为白色,一般情况下,我们将255设为白色,0设为黑色。或者,也可以采用其他二值化处理的方法,在此不一一列举。
[0058]
在一实施例中,可以采用自适应阈值二值化算法对灰度图进行二值化处理。在多种利用二值化获得灰度图的方法中,为了避免在处理图像转换成灰度图的过程中导致的局部像素丢失,二值化结果不能真实反映源图像信息。故选用自适应阈值二值化算法对灰度
图处理,图像中由于光照的不同,不同区域的亮度也会有所不同,即外界环境能够对图像不同像素呈现出的亮度产生影响,从而改变所获得的灰度图的结果,为了降低外界对获取灰度图过程中的干扰,通过方差度量灰度分布的均匀性等手段确定最佳阈值,利用最佳阈值对图像进行二值化处理的算法即为自适应阈值二值化算法,以通过计算得到最佳阈值而获得图像效果更好的灰度图。在此需要强调的是,该方式仅是一种获得精度较高的灰度图的一种实现方式,但并不仅限于此。
[0059]
可选地,参见图3,采用自适应阈值二值化算法对灰度图进行二值化处理的一种具体实现手段可以包括:
[0060]
图3是本技术实施例示出的图像语义分割方法第三流程示意图。
[0061]
s1023、获取以当前像素点作为中心的m
×
n的像素区域;
[0062]
s1024、根据高斯函数分别计算所述m
×
n的像素区域内各像素点到当前像素点的距离并进行加权平均,得到像素点的二值化阈值;
[0063]
s1025、将当前像素点的灰度值与二值化阈值进行对比,若当前像素点的灰度值大于二值化阈值,则将当前像素点的二值化值为255,若当前像素点的灰度值小于二值化阈值,则当前像素点的二值化值为0。
[0064]
可以理解的是,所获取的m
×
n的像素区域中,m、n可以相同,也可以不同,本技术可以将其设为11
×
11的像素区域,或者也可以为其他的像素区域,在此不做具体限定。
[0065]
在一实施例中,在将上述得到的rgb矩阵与灰度图像矩阵按照预设规则合并得到目标矩阵集合前,可以先分别对灰度图像矩阵、rgb矩阵进行归一化处理,而使得归一化处理后的rgb矩阵和灰度图像矩阵中的元素值在[0,1]之间,以便于两者之间对照或合并。
[0066]
可以理解的是,在将rgb矩阵中的元素值进行归一化处理时,r、g、b分别可以作为独立的矩阵存在也可以合并在一起,以单独的r矩阵为例,将矩阵中每一列的值除以每一列所有元素平方和的绝对值,使得矩阵每一列元素值的平方和为1。例如,矩阵[1,2,3],将其归一化的结果就是[0.2673,0.5345,0.8018]。其平方为1。通过此种方式而获得归一化的rgb矩阵,此时的rgb矩阵中每个元素值在[0,1]之间。而在将元素值仅存在0和255两个数值的灰度图像矩阵中,在对其进行归一化处理时,所得到的归一化后的灰度图像矩阵中的每个元素值只有0或1两种可能性,在此不做详细说明。
[0067]
将rgb矩阵与灰度图像矩阵按照预设规则合并得到目标矩阵集合。在该步骤中,预设规则可以为先通过上述手段得到元素值在[0,1]之间的rgb矩阵和灰度图像矩阵,由于rgb矩阵和灰度图像矩阵在经过上述的处理后矩阵中的元素值均在[0,1]之间,可以作为一个矩阵集合组合在一起。对于预设规则如上述中实现的手段不同也可以有所不同,在此不做具体限定。
[0068]
而所得到的目标矩阵集合中,r、g、b、灰度图像的四个矩阵可以分别存在于目标矩阵集合中,也可以将rgb矩阵和灰度图像矩阵组合到一个矩阵中作为目标矩阵集合,在此不做具体限定。
[0069]
对图像进行语义分割处理,为了得到较高精度的分割图像,利用卷积神经网络的的预设语义分割模型进行语义分割。卷积神经网络(convolutional neural network,cnn)是一种前馈神经网络,它的人工神经元可以响应一部分覆盖范围内的周围单元,对于大型图像处理有出色表现,它包括卷积层(convolutional layer)和池化层(pooling layer)。
更为具体的,卷积神经网络包含卷积层、池化层和全连接层3类常见的构筑,在使用时需要先输入数据,卷积层根据输入数据进行卷积处理,在通过进入池化层、全连接层处理后输出数据。
[0070]
在利用卷积神经网络的预设语义分割模型进行语义分割时,我们发现,分割的对象边缘位置或者图像中某个类别的边缘处像素的识别精度还是不够,容易出现误识别或错识别的情况,使得分割的对象的边缘与实际物体存在偏差。为了能够提高语义分割时的边缘精度,我们对输入数据进行处理,使得卷积神经网络在运算过程中增强边缘识别精度。在此需要强调的是,本方案在卷积神经网络具体的运算算法和卷积步骤以及通过池化层、全连接层处理等的具体实现手段没有单独做改进,是基于现有的手段来实现卷积神经网络的语义分割,在此不做详细说明。
[0071]
卷积层的功能是对输入数据进行特征提取,其内部包含多个卷积核,组成卷积核的每个元素都对应一个权重系数和一个偏差量,类似于于一个前馈神经网络的神经元(neuron)。卷积核在工作时,会有规律地扫过输入特征,根据输入特征与对应的卷积核进行卷积运算,输出新的特征进入下一卷积层进行卷积,重复至卷积结束。
[0072]
可以理解的是,在卷积层,数据都是以三维形式存在的,如果是灰度图片,就只有1个特征,也就是1个通道,如果是包含r、g、b的彩色图像,有3个特征,也就是3个通道,将对应特征输入第一个卷积层与对应的卷积核进行卷积运算,输出新的特征并作为新的输入特征输入下一个卷积层与对应的卷积核进行卷积运算,重复至结束。
[0073]
其中,在卷积过程中,第一层卷积的输入特征越多,对图像的分割精度越高,更有利于目标对象边缘的识别。为了在能够提高识别精度,故将语义分割时卷积神经网络的预设语义分割模型的输入矩阵设为目标矩阵集合,在该目标矩阵集合中,由于包含灰度图像、r、g、b这4个归一化的矩阵,得到的矩阵尺寸为height x width x 4,其中,height为图片的高,width为图片的宽,4表示图像的rgb三个通道加上灰度图像的1个通道。可以理解的是,在原有的图像进行卷积神经网络语义分割时,向第一层卷积输入的矩阵尺寸为height x width x 3,而在将输入矩阵设为目标矩阵集合时,输入的矩阵尺寸为height x width x 4,与三个通道作为输入矩阵相比,四个通道的输入矩阵在输入后,灰度图中由于只有黑、白两个明显特征的矩阵组成,在灰度图中强化了边缘特征,所以在语义分割时,将灰度图对应的灰度图像矩阵与rgb矩阵一起作为输入矩阵时,卷积时能够对应增强物体边缘特征的识别,有利于目标边缘特征位置的识别精度。
[0074]
具体地,在进行语义分割处理时,为了保证较好的效果,会先建立语义分割模型,该语义分割模型为事先训练好的包含图像中的所有目标的模型,在对图像进行语义分割时,只需要将图像的数据输入至模型中,模型根据建立好的算法进行卷积计算,输出分割后的数据。
[0075]
可以理解的是,语义分割模型中包含卷积神经网络运算的整个过程,在此不做详细描述。其包括输入模块和输出模块,输入模块用于输入所需语义分割的图像数据,输出模块用于输出分割完成后的分割图像数据。基于上述中的方法,我们可以事先将输入模块中的第一个卷积层的输入维度设置为4,即包括r、g、b、灰度图像4个维度(通道)。也可以在基于语义分割模型进行处理的过程中,自动将输入维度修改为4,在此不做具体限定。再根据事先通过图像获得的目标矩阵集合作为输入矩阵输入至语义分割模型中进行运算,运算过
程中,由于增加了灰度图像的输入特征,有助于物体边缘特征的识别,进行提高边缘特征的识别精度。其中,基于语义分割模型进行卷积神经网络语义分割为常见的手段,在此不做详细说明。
[0076]
在对图像进行语义分割时,为了能够提高图像中不同类别特征边缘位置的识别精度,例如,在包含人和车的彩色图像中,在对其进行语义分割时,为了能够获得所有人的目标特征,如果人的目标特征的边界与旁边的其他物体颜色差异不明显或者比较模糊的情况下,就不容易分割得到比较精准的人的目标特征,会与实际的人偏差较大。因此,我们在进行语义分割时,将语义分割模型中输入模块中第一个卷积层的输入维度预先设置为4。在此基础上,对彩色图像进一步处理而获得与4的维度匹配的输入矩阵。为了获得4维度的输入矩阵,在原有的rgb矩阵的3个维度基础上,将经过预设手段处理后的灰度图像矩阵与rgb矩阵共同归一化处理得到的目标矩阵集合,而使得4维度的目标矩阵集合作为输入矩阵,以增加卷积过程中对目标边缘位置的边缘识别精度。即将彩色图像转换为灰度图像后,将其矩阵与rgb矩阵共同作为输入矩阵时,由于灰度图本身只有黑白两个颜色,在获取人的目标特征时,目标特征的边界与旁边的特征像素更加明显。所以在将灰度图的矩阵建立与rgb矩阵的联系后,共同作为输入矩阵输入后,更有利于语义分割,以提高目标特征边缘的识别精度。
[0077]
本技术还提供了一种电子设备,参见图4,电子设备1000包括存储器1010和处理器1020。
[0078]
处理器1020可以是中央处理单元(central processing unit,cpu),还可以是其他通用处理器、数字信号处理器(digital signal processor,dsp)、专用集成电路(application specific integrated circuit,asic)、现场可编程门阵列(field-programmable gate array,fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
[0079]
存储器1010可以包括各种类型的存储单元,例如系统内存、只读存储器(rom),和永久存储装置。其中,rom可以存储处理器1020或者计算机的其他模块需要的静态数据或者指令。永久存储装置可以是可读写的存储装置。永久存储装置可以是即使计算机断电后也不会失去存储的指令和数据的非易失性存储设备。在一些实施方式中,永久性存储装置采用大容量存储装置(例如磁或光盘、闪存)作为永久存储装置。另外一些实施方式中,永久性存储装置可以是可移除的存储设备(例如软盘、光驱)。系统内存可以是可读写存储设备或者易失性可读写存储设备,例如动态随机访问内存。系统内存可以存储一些或者所有处理器在运行时需要的指令和数据。此外,存储器1010可以包括任意计算机可读存储媒介的组合,包括各种类型的半导体存储芯片(dram,sram,sdram,闪存,可编程只读存储器),磁盘和/或光盘也可以采用。在一些实施方式中,存储器1010可以包括可读和/或写的可移除的存储设备,例如激光唱片(cd)、只读数字多功能光盘(例如dvd-rom,双层dvd-rom)、只读蓝光光盘、超密度光盘、闪存卡(例如sd卡、min sd卡、micro-sd卡等等)、磁性软盘等等。计算机可读存储媒介不包含载波和通过无线或有线传输的瞬间电子信号。
[0080]
存储器1010上存储有可执行代码,当可执行代码被处理器1020处理时,可以使处理器1020执行上文述及的方法中的部分或全部。
[0081]
此外,根据本技术的方法还可以实现为一种计算机程序或计算机程序产品,该计算机程序或计算机程序产品包括用于执行本技术的上述方法中部分或全部步骤的计算机程序代码指令。
[0082]
或者,本技术还可以实施为一种非暂时性机器可读存储介质(或计算机可读存储介质、或机器可读存储介质),其上存储有可执行代码(或计算机程序、或计算机指令代码),当可执行代码(或计算机程序、或计算机指令代码)被电子设备(或电子设备、服务器等)的处理器执行时,使处理器执行根据本技术的上述方法的各个步骤的部分或全部。
[0083]
以上已经描述了本技术的各实施例,上述说明是示例性的,并非穷尽性的,并且也不限于所披露的各实施例。在不偏离所说明的各实施例的范围和精神的情况下,对于本技术领域的普通技术人员来说许多修改和变更都是显而易见的。本文中所用术语的选择,旨在最好地解释各实施例的原理、实际应用或对市场中的技术的改进,或者使本技术领域的其它普通技术人员能理解本文披露的各实施例。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献