掌桥专利:专业的专利平台
掌桥专利
首页

车牌检测方法、电子设备及存储介质

文献发布时间:2023-06-19 11:49:09


车牌检测方法、电子设备及存储介质

技术领域

本申请涉及图像处理领域,特别是涉及一种车牌检测方法、电子设备及计算机可读存储介质。

背景技术

车牌检测技术的目的在于确定场景图像中车牌的字符。对车牌进行检测常用的方法为:先检测场景图像中车辆的位置,再对车辆的位置进一步检测得到车牌的位置;或者,直接检测场景图像中车牌的位置。再确定场景图像中车牌的位置对应的区域的字符。

但是,对于一些特殊的场景,例如夜晚场景、大雾场景下拍摄到的场景图像,现有的车牌检测方法对其检测的精度不高。

发明内容

本申请提供一种车牌检测方法、电子设备及计算机可读存储介质,能够解决现有的车牌检测方法对场景图像检测的精度不高的问题。

为解决上述技术问题,本申请采用的一个技术方案是:提供一种车牌检测方法。该方法包括:获取包含车辆的场景图像;确定场景图像中的背景区域;基于场景图像中除背景区域之外的区域确定场景图像中的待检测区域;对待检测区域进行车牌检测,得到车牌检测结果。

为解决上述技术问题,本申请采用的另一个技术方案是:提供一种电子设备,该电子设备包括处理器、与处理器连接的存储器,其中,存储器存储有程序指令;处理器用于执行存储器存储的程序指令以实现上述方法。

为解决上述技术问题,本申请采用的又一个技术方案是:提供一种计算机可读存储介质,存储有程序指令,该程序指令被执行时能够实现上述方法。

通过上述方式,本申请考虑到夜晚、大雾等特殊场景下车牌区域与背景区域难以区分,故没有直接确定用于后续车牌检测的场景图像中包含车牌的待检测区域,而是采用逆向思维,先确定场景图像中的背景区域(除车牌之外的区域),再基于场景图像中背景区域之外的区域来确定待检测区域。因此相较于直接确定场景图像中待检测区域的方式,本申请能够使确定的待检测区域更加准确,进而能够提高车牌检测结果的精度。因此本申请能够适用于任何场景(包括特殊场景)。

附图说明

图1是本申请车牌检测方法实施例一的流程示意图;

图2是图1中S12的具体流程示意图;

图3是本申请夜晚场景下对道路上的车辆拍摄得到的一场景图像的示意图;

图4是本申请夜晚场景下对道路上的车辆拍摄得到的另一场景图像的示意图;

图5是图1中S13的具体流程示意图;

图6是本申请车牌检测网络的训练方法一实施例的流程示意图;

图7是本申请电子设备一实施例的结构示意图;

图8是本申请计算机可读存储介质一实施例的结构示意图。

具体实施方式

下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅是本申请的一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。

本申请中的术语“第一”、“第二”、“第三”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”、“第三”的特征可以明示或者隐含地包括至少一个该特征。本申请的描述中,“多个”的含义是至少两个,例如两个,三个等,除非另有明确具体的限定。

在本文中提及“实施例”意味着,结合实施例描述的特定特征、结构或特性可以包含在本申请的至少一个实施例中。在说明书中的各个位置出现该短语并不一定均是指相同的实施例,也不是与其它实施例互斥的独立的或备选的实施例。本领域技术人员显式地和隐式地理解的是,在不冲突的情况下,本文所描述的实施例可以与其它实施例相结合。

图1是本申请车牌检测方法实施例一的流程示意图。需注意的是,若有实质上相同的结果,本实施例并不以图1所示的流程顺序为限。如图1所示,本实施例可以包括:

S11:获取包含车辆的场景图像。

本申请提供的车牌检测方法适用于各种场景。例如适用于按照时间划分的白天场景和夜晚场景,以及按照天气划分的大雾场景、晴天场景。因此场景图像可以是利用拍摄器件在任何场景下拍摄到的图像。拍摄器件可以为摄像头,也可以为带有摄像头的终端。

S12:确定场景图像中的背景区域。

可以通过灰度阈值分割、模板匹配等方式确定场景图像中的背景区域。

可以理解的是,由于在夜晚、大雾等特殊场景下获取到的场景图像中,车牌区域不明显。如果对场景图像进行车牌检测,即利用灰度阈值分割、模板匹配等方式确定场景图像中的车牌区域,容易受到噪声的干扰。因此,本申请不直接确定场景图像中的车牌区域,而是以逆向的思维,先确定场景图像中的背景区域(车牌区域之外的区域)。

另外,由于灰度阈值分割需要确定用于区分场景图像中前景区域和背景区域的灰度阈值。但是在夜晚、大雾等特殊场景下,场景图像中像素点的灰度值范围小,从而场景图像中背景区域和前景区域灰度值相差不大。因此,用于灰度阈值分割的灰度阈值难以确定。故对于特殊场景下获取到的场景图像中的背景区域的确定,模板匹配相对灰度阈值分割的效果更好。

结合参阅图2,在模板匹配方式下,S12可以包括以下子步骤:

S121:对场景图像进行灰度化处理。

可以直接对场景图像进行灰度化处理。也可以在对场景图像进行灰度化处理之前,对场景图像进行尺度归一化处理和/或滤波处理。

可以理解的是,不同拍摄器件获取到的场景图像的尺度可能不相同,但是一般来说用于处理的场景图像的尺度固定。因此在场景图像的尺度不一致的情况下,可以先对场景图像进行归一化处理,以统一场景图像的尺度。

滤波处理也可以被称为去噪处理,对场景图像滤波处理的方式可以为高斯滤波、均值滤波、中值滤波等等。

S122:将经灰度化处理的场景图像划分为多个第一子区域。

可以利用滑窗将经灰度化的场景图像划分为多个第一子区域。相邻第一子区域可以部分重叠,也可以不重叠。

S123:分别将每个第一子区域与模板图像进行匹配,得到与模板图像之间的匹配度大于预设匹配度阈值的第一子区域,组成背景区域。

模板图像的灰度值是基于经灰度化处理的场景图像的灰度值分布情况得到的。

由于模板图像用于匹配场景图像中的背景区域,因此模板图像也可以被称为背景模板图像。

场景图像的灰度值分布情况即为经灰度化处理的场景图像中各像素点的灰度值分布情况。可以预先统计经灰度化处理的场景图像中的灰度值分布情况,还可以获取关于灰度值分布情况的直方图,以确定经灰度化处理的场景图像的各灰度值/各灰度值范围(的像素点)的数量,进而确定模板图像的灰度值。

由于夜晚、大雾等特殊场景下背景区域的灰度值占据比例高。因此,可以将经灰度化处理的场景图像中占比最高的灰度值作为模板图像的灰度值。或者,可以将经灰度化处理的场景图像中占比最高的灰度值范围的中心点作为模板图像的灰度值。

模板图像与第一子区域的尺度相同,可以将第一子区域与模板图像对应像素点的灰度值对应相乘再相加。具体将第一子区域与模板图像进行匹配所依据的公式可以如下:

R(x,y)代表第一子区域与模板图像之间的匹配度,T(x′,y′)代表模板图像,I(x+x′,y+y′)代表第一子区域。其中,R(x,y)越大,意味着第一子区域与模板图像之间的匹配度越高;否则意味着第一子区域与模板图像之间的匹配度越低。其中,匹配度越高,越可能是背景区域。

可以预先设定一匹配度阈值,并且认为对应的匹配度高于该匹配度阈值的第一子区域为背景区域。

在确定场景图像中的背景区域之后,可以将背景区域剪切掉,也可以将背景区域进行标记,从而后续的处理仅针对场景图像中除背景区域之外的区域进行。

S13:基于场景图像中除背景区域之外的区域确定场景图像中的待检测区域。

在一具体实施方式中,可以直接将场景图像中除背景区域之外的区域作为待检测区域。

但是考虑到场景图像中除背景区域之外的区域,可能残留有一些噪声。以夜晚场景下获取到的场景图像为例进行说明。结合参阅图3和图4,图3和图4均为对夜晚场景下对道路上的车辆拍摄得到的场景图像。图3和图4中的车灯、道路上的白实线的灰度值与背景模板图像的灰度值具有差异,极易被保留在除背景区域之外的区域,故将车灯和白实线会对后续车牌的检测产生干扰的噪声。为了提高后续检测的准确度,可以将除背景区域之外的区域中的该些噪声排除,将排除噪声后的除背景区域之外的区域作为待检测区域。结合参阅图5,在此方式下,S13可以包括以下子步骤:

S131:将场景图像中除背景区域之外的区域划分为多个第二子区域。

可以利用滑窗将除背景区域之外的区域划分为多个第二子区域。本申请中用于划分第一子区域和第二子区域的滑窗大小可以相同,也可以不同,在此不做具体限定。

S132:分别确定每个第二子区域的灰度值变化情况。

由于第二子区域对应的频谱图像能够反映第二子区域的灰度值变化的剧烈程度/幅度,因此可以分别对每个第二子区域进行傅里叶变换,得到每个第二子区域对应的频谱图像。对应的频谱图像的能量值越大的第二子区域的灰度值变化幅度越大。

对第二子区域进行傅里叶变换所依据的公式可以如下:

u和v代表傅里叶变换的参数,f(x,y)代表频谱图像,M代表第二子区域的宽度(横向像素点数量),N代表第二子区域的长度(竖向的像素点数量),f(x,y)代表第二子区域。

当然,在其他实施例中,也可以通过其他方式来确定第二子区域的灰度变化情况。例如,可以获取第二子区域的灰度值变化梯度,基于灰度值变化梯度确定灰度值变化的幅度。其中,梯度越大,灰度值变化的幅度越大。

S133:将对应的灰度值变化情况满足要求的第二子区域组成的区域作为待检测区域。

可以理解的是,噪声(例如白实线和车灯)所在区域灰度值变化幅度较小,而车牌所在区域灰度值变化幅度较大。可以预先设置灰度值变化幅度的阈值,将对应的灰度值变化幅度小于该阈值的第二子区域视为噪声,即不满足要求的第二子区域。

可以将不满足要求的第二子区域剪切掉,也可以将不满足要求的第二子区域进行标记,从而后续的处理不针对该些不满足要求的第二子区域进行。其中,对于相邻(相交或相切)的第二子区域,可以将其单独剪切,也可以合并剪切。

S14:对待检测区域进行车牌检测,得到车牌检测结果。

待检测区域可以为包含车牌的区域,其可以被看作是车牌的粗定位结果。在此情况下,车牌检测阶段先进一步对待检测区域的车牌进行定位,得到车牌的精定位结果。再基于车牌的精定位结果检测车牌的字符,得到车牌字符检测结果。

或者,待检测区域可以被看作是车牌的最终定位结果。在此情况下,车牌检测阶段可以直接对待检测区域进行车牌字符检测,得到车牌字符检测结果。

其中,可以利用传统的方式来进行车牌检测,也可以利用车牌检测网络对待检测区域进行车牌检测,得到车牌检测结果(车牌精定位结果和/或车牌字符检测结果)。车牌检测网络可以为目标检测网络,例如YOLO网络。

其中,在车牌检测阶段包括车牌位置检测和车牌字符检测的情况下,车牌位置检测和车牌字符检测可以共同一检测网络(车牌检测网络),即车牌检测网络即有车牌位置检测能力,也有车牌字符检测能力。车牌位置检测和车牌字符检测也可以分别使用不同的车牌检测网络,即车牌位置检测使用车牌位置检测网络,车牌字符检测使用车牌字符检测网络。

通过本实施例的实施,本申请考虑到夜晚、大雾等特殊场景下车牌区域与背景区域难以区分,故没有直接确定用于后续车牌检测的场景图像中包含车牌的待检测区域,而是采用逆向思维,先确定场景图像中的背景区域(除车牌之外的区域),再基于场景图像中背景区域之外的区域来确定待检测区域。因此相较于直接确定场景图像中待检测区域的方式,本申请能够使确定的待检测区域更加准确,进而能够提高车牌检测结果的精度。因此本申请能够适用于任何场景(包括特殊场景)。

为提高车牌检测网络的检测精度,在上述使用车牌检测网络之前,需要对车牌检测网络进行训练。具体可以如下:

图6是本申请车牌检测网络的训练方法一实施例的流程示意图。需注意的是,若有实质上相同的结果,本实施例并不以图6所示的流程顺序为限。如图6所示,本实施例可以包括:

S21:获取训练待检测区域。

训练待检测区域与待检测区域的获取方法相同。

多个训练待检测区域可以组成训练集。在获取到训练待检测区域之后,还可以对待检测区域进行标注。如果车牌检测网络用于检测车牌的位置,那么标注信息可以包括车牌的真实位置信息;如果车牌检测网络用于检测车牌的字符,那么标注信息可以包括车牌的真实字符信息。

此外,在其他实施例中,还可以将训练集一分为三,一部分用于训练,一部分用于验证,一部分用于测试。本实施例仅以训练过程进行说明。

S22:利用训练待检测区域对车牌检测网络进行训练。

可以将训练待检测区域输入车牌检测网络,车牌检测网络对训练待检测区域进行处理后可以输出关于训练待检测区域的检测结果。可以基于关于训练待检测区域的检测结果与对应的标注信息之间的差异,计算损失函数,基于损失函数调整车牌检测网络的参数,直到满足预设条件。其中,预设条件可以为训练时间达到预设时间、训练次数达到预设次数、损失函数收敛等等。

图7是本申请电子设备一实施例的结构示意图。如图7所示,该电子设备包括处理器31、与处理器31耦接的存储器32。

其中,存储器32存储有用于实现上述任一实施例的方法的程序指令;处理器31用于执行存储器32存储的程序指令以实现上述方法实施例的步骤。其中,处理器31还可以称为CPU(Central Processing Unit,中央处理单元)。处理器31可能是一种集成电路芯片,具有信号的处理能力。处理器31还可以是通用处理器、数字信号处理器(DSP)、专用集成电路(ASIC)、现场可编程门阵列(FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。通用处理器可以是微处理器或者该处理器31也可以是任何常规的处理器等。

图8是本申请计算机可读存储介质一实施例的结构示意图。如图8所示,本申请实施例的计算机可读存储介质40存储有程序指令41,该程序指令41被执行时实现本申请上述实施例提供的方法。其中,该程序指令41可以形成程序文件以软件产品的形式存储在上述计算机可读存储介质40中,以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)或处理器(processor)执行本申请各个实施方式方法的全部或部分步骤。而前述的计算机可读存储介质40包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质,或者是计算机、服务器、手机、平板等终端设备。

在本申请所提供的几个实施例中,应该理解到,所揭露的系统,装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。

另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。以上仅为本申请的实施方式,并非因此限制本申请的专利范围,凡是利用本申请说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本申请的专利保护范围内。

相关技术
  • 车牌检测方法、电子设备及存储介质
  • 一种车牌检测方法、装置、电子设备和存储介质
技术分类

06120113066022