基于车牌的模糊匹配方法、装置,电子设备及存储介质与流程

文档序号:23855162发布日期:2021-02-05 15:07阅读:131来源:国知局
基于车牌的模糊匹配方法、装置,电子设备及存储介质与流程

[0001]
本申请涉及数据处理技术领域,具体而言,涉及一种基于车牌的模糊匹配方法、装置,电子设备及存储介质。


背景技术:

[0002]
随着智能交通技术的发展,城市交通管理系统和公路交通管理系统的自动化、智能化水平的不断提高,视频监控设备、电子拍照设备、移动监测设备被广泛地布设在路网中的观测站、收费站以及重要路口,通过车牌自动识别技术可以从这些设备获取图片、视频中提取车牌信息。虽然车牌识别系统有了很大的发展,但是由于车牌的污损、模糊、遮挡、天气等原因,识别的出的车牌确不是完全的正确。
[0003]
因此,如何实现车牌的模糊匹配成了近年来的研究趋势。在相关的模糊匹配算法中,一般会先设置至少匹配三位的模糊匹配个数,然后根据设置的个数从识别出的车牌中截取字符串,根据截取的字符串查询数据库,获取符合的集合;循环多次截取不同的字符串进行数据库查询,并把获取的集合并在一起再从数据库进行查询,得到最终结果。该方式通过多次截取字符串,查询数据量大,且需要多次访问数据库进行查询匹配,效率不高。


技术实现要素:

[0004]
本申请实施例的目的在于提供一种基于车牌的模糊匹配方法、装置,电子设备及存储介质,以改善“目前对于车牌的模糊匹配需要通过多次截取字符串,造成查询数据量大以及需要多次访问数据库,造成效率太低”的问题。
[0005]
本发明是这样实现的:
[0006]
第一方面,本申请实施例提供一种基于车牌的模糊匹配方法,包括:获取待匹配的车牌字符串;从预设的模糊匹配字符库中,确定出与所述车牌字符串中的每个字符相匹配的第一字符;基于匹配到的各个第一字符,生成由所述各个第一字符所组成的匹配条件字符串;将所述匹配条件字符串输入至预设数据库中,查询与所述车牌字符串匹配的目标车牌;其中,所述预设数据库中预先存储有至少一个车牌字符串。
[0007]
在本申请实施例中,首先将获取的待匹配的车牌字符串与预设的模糊匹配字符库进行匹配,确定出与待匹配的车牌字符串中的每个字符相匹配的第一字符,然后基于各个第一字符串,生成由各个第一字符所组成的匹配条件字符串,最后将所有组成的匹配条件字符串在数据库中进行查询,得到目标车牌。与现有技术相比,该方式查询过程相对简单,运算量小,综合所有条件一次查询数据库,减少了数据库访问次数,将查询数据慢的瓶颈降到最低,提高了执行效率。
[0008]
结合上述第一方面提供的技术方案,在一些可能的实现方式中,在所述获取待匹配的车牌字符串之后,所述方法还包括:过滤掉所述车牌字符串中的首字符;相应的,所述从预设的模糊匹配字符库中,确定出与所述车牌字符串中的每个字符相匹配的第一字符,包括:从预设的模糊匹配字符库中,确定出与过滤掉首字符后的车牌字符串中的每个字符
相匹配的第一字符。
[0009]
由于车牌字符串中的首字符通常为汉字,而汉字的识别相较于数字的识别或英文字母的识别来说更为准确。因此,在本申请实施例中,在获取到待匹配的车牌字符串之后,首先过滤掉车牌字符串中的首字符,进而减小了对于汉字匹配的运算量。
[0010]
结合上述第一方面提供的技术方案,在一些可能的实现方式中,所述从预设的模糊匹配字符库中,确定出与所述车牌字符串中的每个字符相匹配的第一字符,包括:将所述车牌字符串构建为字符数组,其中,所述字符数组的数据长度为所述车牌字符串中的字符数量;所述字符数组中的一个元素对应所述车牌字符串中的一个字符;依次将所述字符数组中的每个字符输入至所述预设的模糊匹配字符库,确定出与所述字符数组中的每个字符相匹配的第一字符。
[0011]
在本申请实施例中,将车牌字符串构建为字符数组,且该字符数组的数据长度为车牌字符串中的字符数量,字符数组中的一个元素对应一个车牌字符串中的一个字符。通过该方式,便于依次将字符数组中的每个元素输入至预设的模糊匹配字符库,以确定出与字符数组中的每个字符相匹配的第一字符。
[0012]
结合上述第一方面提供的技术方案,在一些可能的实现方式中,所述基于匹配到的各个第一字符,生成由所述各个第一字符所组成的匹配条件字符串,包括:将匹配到的所述各个第一字符采用or合并,生成由所述各个第一字符所组成的匹配条件字符串。
[0013]
在本申请实施例中,通过将匹配到的各个第一字符之间采用or合并,以便于准确的生成所有情况的匹配条件字符串。
[0014]
结合上述第一方面提供的技术方案,在一些可能的实现方式中,所述预设的模糊匹配字符库包括预设的多个相互匹配的第二字符和第三字符;相应的,所述依次将所述字符数组中的每个字符输入至所述预设的模糊匹配字符库,确定出与所述字符数组中的每个字符相匹配的第一字符,包括:依次将所述字符数组中的每个字符输入至所述预设的模糊匹配字符库,判断所述字符数组中的字符是否为所述第二字符或所述第三字符;当所述字符数组中的字符为所述第二字符时,则所述第三字符为确定出的与所述字符数组中的字符相匹配的第一字符;当所述字符数组中的字符为所述第三字符时,则所述第二字符为确定出的与所述字符数组中的字符相匹配的第一字符。
[0015]
在本申请实施例中,预设的模糊匹配字符库中设置有多个相互匹配的第二字符和第三字符,当所输入的第一字符第二字符或者第三字符相同时,则将与之匹配的字符确定为第一字符。通过该方式,可以灵活的配置模糊匹配字符库,也便于进行匹配查询得到第一字符。
[0016]
第二方面,本申请实施例提供一种基于车牌的模糊匹配装置,包括:获取模块,用于获取待匹配的车牌字符串;确定模块,用于从预设的模糊匹配字符库中,确定出与所述车牌字符串中的每个字符相匹配的第一字符;生成模块,用于基于匹配到的各个第一字符,生成由所述各个第一字符所组成的匹配条件字符串;查询模块,用于将所述匹配条件字符串输入至预设数据库中,查询与所述车牌字符串匹配的目标车牌;其中,所述预设数据库中预先存储有至少一个车牌字符串。
[0017]
第三方面,本申请实施例提供一种车牌的模糊匹配系统,包括:图像采集装置以及与所述图像采集装置通信连接的电子设备;所述图像采集装置用于识别车牌,并将识别到
的车牌字符串发送至所述电子设备;所述电子设备用于接收所述车牌字符串,从预设的模糊匹配字符库中,确定出与所述车牌字符串中的每个字符相匹配的第一字符;基于匹配到的各个第一字符,生成由所述各个第一字符所组成的匹配条件字符串;以及将所述匹配条件字符串输入至预设数据库中,查询与所述车牌字符串匹配的目标车牌;其中,所述预设数据库中预先存储有至少一个车牌字符串。
[0018]
结合上述第三方面提供的技术方案,在一些可能的实现方式中,所述电子设备为服务器,相应的,所述车牌的模糊匹配系统还包括显示单元;所述显示单元与所述服务器连接,所述显示单元用于接收所述服务器发送的查询到的与所述车牌字符串匹配的目标车牌,并进行显示。
[0019]
第四方面,本申请实施例提供一种电子设备,包括:处理器和存储器,所述处理器和所述存储器连接;所述存储器用于存储程序;所述处理器用于调用存储在所述存储器中的程序,执行如上述第一方面实施例和/或结合上述第一方面实施例的一些可能的实现方式提供的方法。
[0020]
第五方面,本申请实施例提供一种存储介质,其上存储有计算机程序,所述计算机程序在被处理器运行时执行如上述第一方面实施例和/或结合上述第一方面实施例的一些可能的实现方式提供的方法。
附图说明
[0021]
为了更清楚地说明本申请实施例的技术方案,下面将对本申请实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本申请的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
[0022]
图1为本申请实施例提供的一种车牌的模糊匹配系统的结构示意图。
[0023]
图2为本申请实施例提供的一种识别的汽车图像的示意图。
[0024]
图3为本申请实施例提供的另一种车牌的模糊匹配系统的结构示意图。
[0025]
图4为本申请实施例提供的一种电子设备的结构示意图。
[0026]
图5为本申请实施例提供的一种基于车牌的模糊匹配方法的步骤流程图。
[0027]
图6为本申请实施例提的一种车牌的模糊匹配条件的过程示意图。
[0028]
图7为本申请实施例提供的一种基于车牌的模糊匹配装置的模块框图。
[0029]
图标:100-车牌的模糊匹配系统;10-图像采集装置;20-电子设备;30-服务器;40-显示单元;201-处理器;202-存储器;300-基于车牌的模糊匹配装置;301-获取模块;302-确定模块;303-生成模块;304-查询模块;305-过滤模块。
具体实施方式
[0030]
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行描述。
[0031]
鉴于目前对于车牌的模糊匹配需要通过多次截取字符串,造成查询数据量大以及需要多次访问数据库,造成效率太低等问题。本申请发明人通过研究探索,提出以下实施例以解决上述问题。
[0032]
请参阅图1,本申请实施例提供一种应用基于车牌的模糊匹配方法的车牌的模糊
匹配系统100。该车牌的模糊匹配系统100包括图像采集装置10以及电子设备20。图像采集装置10以及电子设备20之间通信连接。
[0033]
其中,图像采集装置10识别车牌,并将识别到的车牌字符串发送至电子设备20。具体的图像采集装置10可以是通过视频监控设备、电子拍照设备来获取包含汽车的图像,然后通过图像识别技术提取车辆上的车牌信息,进而生成车牌字符串。比如图2示出了一种识别到的汽车图像的示意图,将该图像采用图像识别技术提取车辆上的车牌信息,进而生成车牌字符串川a13579。但是由于车牌有时会出现污损、遮挡等情况,比如车牌中的字符7被遮挡主一部分,该情况下,通过图像识别技术所生成的车牌字符串可能为川a13519。需要说明的是,汽车车牌的位数一般是固定的,比如常规的民用燃油车车牌为7位,常规的新能源车牌为8位,但有些另外情况,如武警车牌为9位。
[0034]
其中,电子设备20用于接收车牌字符串,从预设的模糊匹配字符库中,确定出与车牌字符串中的每个字符相匹配的第一字符;基于匹配到的各个第一字符,生成由各个第一字符所组成的匹配条件字符串;以及将匹配条件字符串输入至预设数据库中,查询与车牌字符串匹配的目标车牌;其中,预设数据库中预先存储有至少一个车牌字符串。本申请实施例中,电子设备20可以是,但不限于个人电脑(personal computer,pc)、平板电脑、个人数字助理(personal digital assistant,pda)、移动上网设备(mobile internet device,mid)等。比如,当车牌的模糊匹配系统100应用的场景为停车场,则电子设备20可以是传达室中的电脑。但车牌的模糊匹配系统100应用的场景为公路交通管理,则电子设备20可以是远端的操作室中的电脑。
[0035]
在结构上,电子设备20可以包括处理器201和存储器202。
[0036]
处理器201与存储器202直接或间接地电性连接,以实现数据的传输或交互,例如,这些元件相互之间可通过一条或多条通讯总线或信号线实现电性连接。基于车牌的模糊匹配装置包括至少一个可以软件或固件(firmware)的形式存储在存储器202中或固化在电子设备20的操作系统(operating system,os)中的软件模块。处理器201用于执行存储器202中存储的可执行模块,例如,基于车牌的模糊匹配装置所包括的软件功能模块及计算机程序等,以实现基于车牌的模糊匹配方法。处理器201可以在接收到执行指令后,执行计算机程序。
[0037]
其中,处理器201可以是一种集成电路芯片,具有信号处理能力。处理器201也可以是通用处理器,例如,可以是中央处理器(central processing unit,cpu)、数字信号处理器(digital signal processor,dsp)、专用集成电路(application specific integrated circuit,asic)、分立门或晶体管逻辑器件、分立硬件组件,可以实现或者执行本申请实施例中的公开的各方法、步骤及逻辑框图。此外,通用处理器可以是微处理器或者任何常规处理器等。
[0038]
存储器202可以是,但不限于,随机存取存储器(random access memory,ram)、只读存储器(read only memory,rom)、可编程只读存储器(programmable read-only memory,prom)、可擦可编程序只读存储器(erasable programmable read-only memory,eprom),以及电可擦编程只读存储器(electric erasable programmable read-only memory,eeprom)。存储器202用于存储程序,处理器201在接收到执行指令后,执行该程序。
[0039]
应当理解,图3所示的结构仅为示意,本申请实施例提供的电子设备20还可以具有
比图3更少或更多的组件,或是具有与图3所示不同的配置。比如,电子设备20还可以包括显示单元用于显示目标车牌。此外,图3所示的各组件可以通过软件、硬件或其组合实现。
[0040]
可选地,上述的电子设备20还可以为服务器,相应的,该车牌的模糊匹配系统100还包括显示单元。也即,请参阅图4,本申请实施例还提供另一种车牌的模糊匹配系统100,具体包括:图像采集装置10、服务器30以及显示单元40。服务器30分别与图像采集装置10以及显示单元40通信连接。
[0041]
其中,服务器30用于实现车牌的模糊匹配,并将所匹配到的目标车牌发送至显示单元。车牌的模糊匹配过程可以参考上述电子设备中的描述。上述的服务器30可以是但不限于risc(reduced instruction set computing,精简指令集计算机)构架服务器、网络服务器、云服务器、业务服务器等等。在结构上,服务器30也可以包括处理器和存储器。其结构也可以参考上述电子设备20中的描述,本申请不作赘述。
[0042]
显示单元40用于接收所述服务器30发送的查询到的与所述车牌字符串匹配的目标车牌,并进行显示。显示单元40可以是,但不限于液晶显示器、led(light emitting diode,发光二极管)显示器。
[0043]
可以理解的是,本申请实施例的模糊匹配方法还可以仅应用于电子设备20中(也可以理解为车牌的模糊匹配系统100中仅包括电子设备20),比如,电子设备20可以用于接收用户输入的车牌字符串,然后执行基于车牌的模糊匹配方法,然后输出目标车牌。本申请不作限定。比如用户想确认一下刚刚经过的汽车是否已经注册过,则可以手动的输入车牌字符串,然后通过电子设备20来判断是否有输出目标车牌。
[0044]
请参阅图5,图5为本申请实施例提供的基于车牌的模糊匹配方法的步骤流程图,该方法应用于车牌的模糊匹配系统100中的电子设备20。需要说明的是,本申请实施例提供的基于车牌的模糊匹配方法不以图5及以下所示的顺序为限制,以下结合图5对基于车牌的模糊匹配方法的具体流程及步骤进行描述。该方法包括:步骤s101-步骤s104。
[0045]
步骤s101:获取待匹配的车牌字符串。
[0046]
首先,电子设备获取待匹配的车牌字符串。其中,获取到的待匹配的车牌字符串可以是图像采集装置传输的,也可以是用户手动进行输入的,本申请不作限定。比如获取到的车牌字符串可以是“粤a 12345”、“川a13579”。需要说明的是,汽车车牌的位数一般是固定的,比如常规的民用燃油车车牌为7位,常规的新能源车牌为8位,但有些另外情况,如武警车牌为9位。对于获取待匹配的车牌字符串的数量本申请不限定。
[0047]
可选地,由于车牌字符串中的首字符通常为汉字,而汉字的识别相较于数字的识别或英文字母的识别来说更为准确。因此,为了减小后续对于汉字匹配的运算量,在步骤s101之后,该方法还包括:过滤掉车牌字符串中的首字符。
[0048]
比如当获取到的车牌为“粤a 12345”之后,可以过滤掉首字符“粤”,进而使得待匹配的车牌字符串为“a12345”。相应的,也可以采用字符替换的方式过滤首字符,比如用字符“%”代替首字符,相应的,“粤a 12345”采用该方式进行首字符过滤后则变为“%a123456”。需要解释的是,在数据库查询中,字符型过滤条件中”%”为通配符,表示任意的字符(任意n个字符,n>=0)。
[0049]
可以理解的是,本申请实施例所提供的基于车牌的模糊匹配方法可以设置首字符是否参与匹配,当首字符参与,后续获取的是包含首字符的精确的匹配条件,若是过滤掉首
字符,则后续获取的是不包含首字符的模糊匹配条件。
[0050]
步骤s102:从预设的模糊匹配字符库中,确定出与车牌字符串中的每个字符相匹配的第一字符。
[0051]
在获取到待匹配的车牌字符串之后,将该车牌字符串与预设的模糊匹配字符库进行匹配,确定出与该字符串中的每个字符相匹配的第一字符。比如,待匹配的车牌字符串为“a1245”,则从预设的模糊匹配字符库中确定出与a相匹配的第一字符、与1相匹配的第一字符、与2相匹配的第一字符、与4相匹配的第一字符以及与5相匹配的第一字符。
[0052]
作为一种可选的实施方式,步骤s102从预设的模糊匹配字符库中,确定出与车牌字符串中的每个字符相匹配的第一字符,可以是将车牌字符串构建为字符数组,其中,字符数组的数据长度为车牌字符串中的字符数量;字符数组中的一个元素对应车牌字符串中的一个字符;然后依次将字符数组中的每个字符输入至预设的模糊匹配字符库,确定出与字符数组中的每个字符相匹配的第一字符。
[0053]
其中,构建的字符数组的结构可以是arrcar[x],其中,arrcar即为字符数组,x表示字符数据中的数据长度,也即元素数量。
[0054]
下面以待匹配的车牌字符串“a13579”为例进行说明。将该车牌字符串构建为字符数组arrcar[6]。其中,arrcar即为字符数组,6表示字符数据中的数据长度,也即元素数量。一个元素对应车牌字符串中的一个字符,也即
[0055]
arrcar[0]=a;
[0056]
arrcar[1]=1;
[0057]
arrcar[2]=3;
[0058]
arrcar[3]=5;
[0059]
arrcar[4]=7;
[0060]
arrcar[5]=9。
[0061]
其中,arrcar[0]表示字符数组的第一个元素,第一元素对应车牌字符串中的第一个字符a。arrcar[1]表示字符数组的第二个元素,第二元素对应车牌字符串中的第二个字符1。arrcar[2]表示字符数组的第三个元素,第三元素对应车牌字符串中的第三个字符3。arrcar[3]表示字符数组的第四个元素,第四元素对应车牌字符串中的第四个字符5。arrcar[4]表示字符数组的第五个元素,第五元素对应车牌字符串中的第五个字符7。arrcar[5]表示字符数组的第六个元素,第六元素对应车牌字符串中的第六个字符9。
[0062]
然后,依次将上述六个元素输入至预设的模糊匹配字符库进行匹配,也即依次将六个字符输入至预设的模糊匹配字符库进行匹配。通过该方式,即可依次确定出字符数组中的每个字符相匹配的第一字符。
[0063]
下面对字符与预设的模糊匹配字符库进行匹配的过程进行说明。
[0064]
作为第一种实施方式,预设的模糊匹配字符库中包括预设的多个相互匹配的第二字符@m和第三字符@n。比如,字符1和字符l可以作为一对相互匹配的字符,字符1即为第二字符@m、字符l即为第三字符@n。相应的,相互匹配的字符还可以是字符b和字符8,字符6和字符8,字符9和字符b。相应的,当该方案还用于对汉字进行匹配时,预设的模糊匹配字符库中还应设置多个相互匹配的汉字,比如汉字粤和汉字奥可以作为一对相互匹配的字符,相应的,汉字粤即为第二字符@m,汉字奥即为第三字符@n。
[0065]
当采用第一种实施方式,依次将字符数组中的每个字符输入至预设的模糊匹配字符库,判断字符数组中的字符是否为第二字符或第三字符。当字符数组中的字符为第二字符时,则第三字符为确定出的与字符数组中的字符相匹配的第一字符;当字符数组中的字符为第三字符时,则所述第二字符为确定出的与字符数组中的字符相匹配的第一字符。
[0066]
比如从arrcar[x]中,依次确定出一个字符@a,然后将字符@a与预设的模糊匹配字符库中的多个相互匹配的第二字符@m和第三字符@n进行逐条匹配,判断@a是否同@m相等,如相等,则将@n作为确定出的与@a相匹配的第一字符;以及判断@a是否同@n相等,如相等,则将@m作为确定出的与@a相匹配的第一字符。如均不相等,则对下一对相互匹配的第二字符@m和第三字符@n进行匹配。
[0067]
下面继续以车牌字符串“a13579”为例,从车牌字符串“a13579”所构建的字符数组arrcar[6]中,确定出第一个元素arrcar[0]=a,然后将字符a输入至上述的预设的模糊匹配字符库中,将字符a与预设的模糊匹配字符库中的多个相互匹配的字符逐条进行匹配,假设第一对相互匹配的字符为字符b和字符8,其中并不包含字符a,则获取下一对相互匹配的字符。假设下一对相互匹配的字符为字符a和字符4,则将字符4确定为与字符a相匹配的第一字符。依次类推,直至获取到车牌字符串中的所有字符相匹配的第一字符。需要说明的是,与每个字符相匹配的第一字符的数量可以是一个也可以是多个,本申请不作限定。
[0068]
综上,在本申请实施例中,预设的模糊匹配字符库中设置有多个相互匹配的第二字符和第三字符,当所输入的第一字符第二字符或者第三字符相同时,则将与之匹配的字符确定为第一字符。通过该方式,可以灵活的配置模糊匹配字符库,也便于进行匹配查询得到第一字符。
[0069]
作为第二种实施方式,预设的模糊匹配字符库中包括目标字符与之匹配的相似字符。其中,数字0~9以及英文字符a~z即为目标字符每个目标字符都预先设置与之匹配的相似字符。比如英文字符a的相似字符为字符4、字符m;字符1的相似字符为字符7、字符i、字符l;字符3的相似字符为s、b。相应的,当该方案还用于对汉字进行匹配时,预设的模糊匹配字符库中还应设置汉字以及与之匹配的相似字符,比如汉字粤的相似字符为奥,吴。
[0070]
当采用第二种实施方式,依次将字符数组中的每个字符输入至预设的模糊匹配字符库,查找出与字符数组中的每个字符相同的目标字符,然后将与每个字符相同的目标字符所匹配的相似字符确定为与该字符相匹配的第一字符。比如字符数组中的第一个字符为a,则将字符a输入至预设的模糊匹配字符库,然后查找出预设的模糊匹配字符库的目标字符a,目标字符a所匹配的相似字符为字符4、字符m。则将字符4、字符m确定为与字符a相匹配的第一字符。
[0071]
通过上述两种实施方式得到与车牌字符串中字符各自匹配的第一字符后,可以生成条件集合list。继续以车牌字符串“a13579”为例,所生成的条件集合list可以参考图6。需要说明的,图6仅是一种条件集合list的示意,并不作为限定。其中,与字符a相匹配的字符为字符4和字符m,与字符1相匹配的字符为字符7、字符i和字符l,与字符3相匹配的字符为字符s和字符b,与字符5相匹配的字符为字符s、字符r和字符6,与字符7相匹配的字符为字符i、字符1和字符t,与字符9相匹配的字符为字符8和字符p。
[0072]
步骤s103:基于匹配到的各个第一字符,生成由各个第一字符所组成的匹配条件字符串。
[0073]
最后,基于匹配到的各个第一字符,组成匹配条件字符串。于本申请实施例中,步骤s103具体包括将匹配到的各个第一字符采用or合并,生成由各个第一字符所组成的匹配条件字符串。其中,or合并是采用或的方式将数据进行合并,为了便于理解,以图6示出的条件集合list作为说明,当将条件集合list中的各个第一字符采用or合并可以理解为字符4、字符m与字符7、字符i、字符l这两组字符集之间采用or合并,相应的,字符7、字符i、字符l与字符s、字符b这两组字符集之间采用or合并,最后通过该方式,组合形成匹配条件字符串,比如组合形成匹配条件字符串为m7s618。
[0074]
当然,基于匹配到的各个第一字符,生成由各个第一字符所组成的匹配条件字符串还可以包含车牌字符串中的字符,比如也采用or合并,将字符1、字符4、字符m与字符1、字符7、字符i、字符l这两组字符集之间采用or合并。相应的,通过该方式组合形成的匹配条件字符串可能为a73579、al3579,本申请不作限定。
[0075]
在本申请实施例中,通过将匹配到的各个第一字符之间采用or合并,以便于准确的生成所有情况的匹配条件字符串。
[0076]
步骤s104:将匹配条件字符串输入至预设数据库中,查询与车牌字符串匹配的目标车牌;其中,预设数据库中预先存储有至少一个车牌字符串。
[0077]
最后,可以将所有的组合输入至预设数据库中进行查询。其中,查询的过程即为查询预设数据库中是否存在所输入的匹配条件字符串,当在预设数据库中查询得到相同的车牌字符串后,则将该车牌字符串作为目标车牌输出。
[0078]
作为一种实施方式,在步骤s103中采用or合并所生成的为sql(structured query language,结构化查询语言)语句。sql是一种特殊目的的编程语言,是一种数据库查询和程序设计语言,用于存取数据以及查询、更新和管理关系数据库系统。通过sql语句便于数据库的查询。
[0079]
综上所述,在本申请实施例中,首先将获取的待匹配的车牌字符串与预设的模糊匹配字符库进行匹配,确定出与待匹配的车牌字符串中的每个字符相匹配的第一字符,然后基于各个第一字符串,生成由各个第一字符所组成的匹配条件字符串,最后将所有组成的匹配条件字符串在数据库中进行查询,得到目标车牌。与现有技术相比,该方式查询过程相对简单,运算量小,综合所有条件一次查询数据库,减少了数据库访问次数,将查询数据慢的瓶颈降到最低,提高了执行效率。
[0080]
请参阅图7,基于同一发明构思,本申请实施例还提供一种基于车牌的模糊匹配装置300,包括:获取模块301、确定模块302、生成模块303以及查询模块304。
[0081]
获取模块301,用于获取待匹配的车牌字符串。
[0082]
确定模块302,用于从预设的模糊匹配字符库中,确定出与所述车牌字符串中的每个字符相匹配的第一字符。
[0083]
生成模块303,用于基于匹配到的各个第一字符,生成由所述各个第一字符所组成的匹配条件字符串。
[0084]
查询模块304,用于将所述匹配条件字符串输入至预设数据库中,查询与所述车牌字符串匹配的目标车牌;其中,所述预设数据库中预先存储有至少一个车牌字符串。
[0085]
可选地,该基于车牌的模糊匹配装置300还包括过滤模块305。
[0086]
过滤模块305用于在所述获取待匹配的车牌字符串之后,过滤掉所述车牌字符串
中的首字符。相应的,确定模块302用于从预设的模糊匹配字符库中,确定出与过滤掉首字符后的车牌字符串中的每个字符相匹配的第一字符。
[0087]
可选地,确定模块302具体用于将所述车牌字符串构建为字符数组,其中,所述字符数组的数据长度为所述车牌字符串中的字符数量;所述字符数组中的一个元素对应所述车牌字符串中的一个字符;依次将所述字符数组中的每个字符输入至所述预设的模糊匹配字符库,确定出与所述字符数组中的每个字符相匹配的第一字符。
[0088]
相应的,生成模块303具体用于将匹配到的所述各个第一字符采用or合并,生成由所述各个第一字符所组成的匹配条件字符串。
[0089]
相应的,确定模块302还具体用于依次将所述字符数组中的每个字符输入至所述预设的模糊匹配字符库,判断所述字符数组中的字符是否为所述第二字符或所述第三字符;当所述字符数组中的字符为所述第二字符时,则所述第三字符为确定出的与所述字符数组中的字符相匹配的第一字符;当所述字符数组中的字符为所述第三字符时,则所述第二字符为确定出的与所述字符数组中的字符相匹配的第一字符;其中,所述预设的模糊匹配字符库包括预设的多个相互匹配的第二字符和第三字符。
[0090]
需要说明的是,由于所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统、装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
[0091]
基于同一发明构思,本申请实施例还提供一种存储介质,其上存储有计算机程序,计算机程序在被运行时执行上述实施例中提供的方法。
[0092]
该存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如,dvd)、或者半导体介质(例如固态硬盘solid state disk(ssd))等。
[0093]
在本申请所提供的实施例中,应该理解到,所揭露装置和方法,可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,又例如,多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些通信接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
[0094]
另外,作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
[0095]
再者,在本申请各个实施例中的各功能模块可以集成在一起形成一个独立的部分,也可以是各个模块单独存在,也可以两个或两个以上模块集成形成一个独立的部分。
[0096]
在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。
[0097]
以上所述仅为本申请的实施例而已,并不用于限制本申请的保护范围,对于本领
域的技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1