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

一种车牌识别方法及系统与流程

2021-11-22 13:13:00 来源:中国专利 TAG:


1.本发明涉及图像检测技术领域,更具体的说是一种车牌识别方法及系统。


背景技术:

2.作为智能交通监控及管理系统的重要组成部分,车牌自动识别一直是人们研究的热点。车牌识别系统(license plate recognition system,lprs)在交通道路信息化管理上具有重要的作用,大大提高了传统管理模式的效率。车牌检测识别系统是城市大脑系统不可缺少的一部分,有着广泛的应用场景。比如通过十字路口的摄像头对违章车辆进行抓拍,对于违法犯罪的车辆追踪,收费站、停车场、港口、小区的车牌识别系统等。
3.作为智能交通监控及管理系统的重要组成部分,车牌自动识别一直是人们研究的热点。车牌识别技术由三个部分组成,分别是车牌检测、字符分割、字符识别。获取到车牌区域后,需要进行字符识别,对于车牌识别,目前的很多研究都是将之前车牌检测得到的区域,进行文字切分,然后分别对每一位进行识别。识别的方式主要是两种:分割每个字符后进行识别和直接识别整个车牌。早期的算法通常属于第一种方式,其分割过程通常利用垂直投影或者寻找连通域来实现,后续的识别过程则利用线性判别分析(linear discriminant analysis,lda)和卷积神经网络(convolutional neural networks,cnn)等特征抽取方法构建分类模型。第二种方式一般以深度学习方法为代表,直接识别整个车牌。它们需要对整个图像进行特征抽取,依赖于良好的特征抽取方法,因此大多数需要利用深度卷积网络进行图像的特征抽取。
4.近年来,由于人工智能的飞速发展,人们逐渐将深度学习相关算法与车牌识别结合起来。目前,大多数车牌识别方法都是基于深度学习设计的。在大量数据下,构建合适的深度卷积网络可以有效提取出具有强鲁棒性的特征。虽然车牌识别技术取得了很好的发展,但是由于拍摄角度、环境等因素的影响,使得拍出的车牌不是干净整洁、方方正正出现在感受野里面的,再加上字符之间0和d,8和b,7和t等相似字符容易识别错误,因而如何提高车牌间相似字符识别的准确率具有实用价值。
5.因此,需要一种用于提高车牌相似字符识别准确率的车牌识别方法。


技术实现要素:

6.本说明书实施例的一个方面提供一种车牌识别方法,包括:获取待识别图像数据;将所述待识别图像数据输入车牌识别模型进行识别,得到第一识别结果;判断所述待识别图像数据中的单个字符是否满足预设条件;若满足,则将所述第一识别结果作为最终识别结果;若不满足,将所述待识别图像数据输入车牌处理模型,得到第二识别结果;基于所述第一识别结果、第二识别结果得到所述最终识别结果。
7.在一些实施例中,所述车牌处理模型包括车牌检测模型及分类识别模型,所述车牌检测模型用于对不满足预设条件的目标字符进行检测并得到所述目标字符所属类别,所述分类识别模型用于基于所述目标字符所属类别对所述目标字符进行识别,并得到所述目
标字符的识别结果。
8.在一些实施例中,所述分类识别模型至少包括以下一种或多种的组合:汉字识别模型、数字识别模型、字母识别模型。
9.在一些实施例中,所述基于所述第一识别结果、第二识别结果得到所述最终识别结果包括:将所述第一识别结果中所述目标字符的识别结果替换为所述分类识别模型对应得到的识别结果,并将替换后的识别结果作为所述最终识别结果。
10.在一些实施例中,所述预设条件为所述字符的置信度不低于预设值。
11.本说明书实施例的一个方面提供一种车牌识别设备,包括:图像获取模块,用于获取待识别图像数据;第一识别模块,用于将所述待识别图像数据输入车牌识别模型进行识别,得到第一识别结果;数据判断模块,用于判断所述待识别图像数据中的单个字符是否满足预设条件;第二识别模块,用于在所述单个字符不满足所述预设条件时,将所述待识别图像数据输入车牌处理模型,得到第二识别结果;结果确定模块,用于确定并输出最终识别结果;所述最终识别结果为所述第一识别结果或基于所述第一识别结果与所述第二识别结果获得。
12.本说明书实施例的一个方面提供一种车牌识别装置,所述装置包括至少一个存储介质和至少一个处理器,所述至少一个存储介质用于存储计算机指令;所述至少一个处理器用于执行所述计算机指令以实现所述车牌识别方法对应的操作。
13.本说明书实施例的一个方面提供一种计算机可读存储介质,所述存储介质存储计算机指令,当计算机读取存储介质中的计算机指令后,实现所述车牌识别方法。
附图说明
14.本说明书将以示例性实施例的方式进一步描述,这些示例性实施例将通过附图进行详细描述。这些实施例并非限制性的,在这些实施例中,相同的编号表示相同的结构,其中:
15.图1是根据本技术一些实施例所示的车牌识别设备的应用场景示意图;
16.图2是根据本技术的一些实施例所示的可以在其上实现处理引擎的示例性计算设备的示例性硬件和/或软件组件的示意图;
17.图3是根据本技术的一些实施例所示的可以在其上实现一个或以上终端的示例性移动设备的示例性硬件和/或软件组件的示意图;
18.图4是根据本技术的一些实施例所示的示例性处理引擎的示意框图;
19.图5是根据本说明书的一些实施例所示的车牌识别方法的流程图;
20.图6是根据本说明书的一些实施例所示的车牌处理模型的示意图;
21.图7是根据本说明书的一些实施例所示的车牌检测模型的结构示意图;
22.图8是根据本说明书的一些实施例所示的车牌识别模型的结构示意图;
23.图9是根据本说明书的一些实施例所示的分类识别模型的结构示意图;
24.图10是根据本说明书的一些实施例所示的分类识别模型的网络模块单元示意图;
25.图11是根据本说明书的一些实施例所示的车牌识别模型的训练流程示意图;
26.图12是根据本说明书的一些实施例所示的车牌处理模型的训练流程示意图。
具体实施方式
27.为了更清楚地说明本说明书实施例的技术方案,下面将对实施例描述中所需要使用的附图作简单的介绍。显而易见地,下面描述中的附图仅仅是本说明书的一些示例或实施例,对于本领域的普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图将本说明书应用于其它类似情景。除非从语言环境中显而易见或另做说明,图中相同标号代表相同结构或操作。
28.应当理解,本说明书中所使用的“系统”、“装置”、“单元”和/或“模组”是用于区分不同级别的不同组件、元件、部件、部分或装配的一种方法。然而,如果其他词语可实现相同的目的,则可通过其他表达来替换所述词语。
29.如本说明书和权利要求书中所示,除非上下文明确提示例外情形,“一”、“一个”、“一种”和/或“该”等词并非特指单数,也可包括复数。一般说来,术语“包括”与“包含”仅提示包括已明确标识的步骤和元素,而这些步骤和元素不构成一个排它性的罗列,方法或者设备也可能包含其它的步骤或元素。
30.本说明书中使用了流程图用来说明根据本说明书的实施例的系统所执行的操作。应当理解的是,前面或后面操作不一定按照顺序来精确地执行。相反,可以按照倒序或同时处理各个步骤。同时,也可以将其他操作添加到这些过程中,或从这些过程移除某一步或数步操作。
31.车辆可以包括带牌照的人力车(例如,自行车、三轮车)、带牌照的电动车(例如,电动自行车、电动三轮车)、带牌照的汽车(例如,出租车、公共汽车、私人汽车)、带牌照的火车、带牌照的地铁、带牌照的轮船、带牌照的飞机(例如,飞机、直升机、航天飞机、火箭)等或其任意组合。
32.本技术中使用的车牌可以是与特定交通工具相关联的标志。例如常规的悬挂于车辆前方及后方的拍照,同时,也可以是车辆的其他身份标识码,例如车架号等其他编号。本技术的实施例可以应用于各种车牌的识别。应当理解的是,本技术的系统及方法的应用场景仅仅是本技术的一些示例或实施例,对于本领域的普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图将本技术应用于其他类似情景。虽然本技术主要以车辆、特别是汽车为例进行了描述,但需要注意的是,本技术的原理也可应用于其他物品,根据本技术的原理也可以确定这些物品的身份标识。
33.在本技术中,车辆的牌照识别的判定仅作为示例。应当注意的是,检测车辆拍照的具体内容仅用于说明目的,并非旨在限制本技术的范围。在一些实施例中,本公开可以应用于其他类似的情景,例如但不限于产品的识别等。
34.图1是根据本技术的一些实施例的示例性监控系统的示意图。在一些实施例中,应用场景100可以被配置为监控特定场所处的车辆等。可以在学校周围、住宅区、公园等中配置。车牌识别设备可以检测与违反交通标志相关联的交通规则的车辆,并记录与该车辆有关的信息或者监测某车辆的行驶轨迹。应用场景100可以包括服务器110、网络120、用户终端130、存储设备140和拍照设备150。服务器110可以包括处理引擎112。在一些实施例中,服务器110、用户终端130、存储设备140和拍照设备150可以经由无线连接(例如,网络120)、有线连接或其组合彼此连接和/或通信。
35.计算系统110可以用于确定待识别的车牌内容。在一些实施例中,可以具体用于对
车牌的追踪确认,从而实现车辆的监测,这一监测技术可以应用于如车辆监管部门、交通管理部门等。计算系统110可以基于获取的数据识别车牌内容,从而确定车辆信息。
36.计算系统110是指具有计算能力的系统,在一些实施例中,服务器110可以是单个服务器,也可以是服务器组。所述服务器组可以是集中式的,也可以是分布式的(例如,服务器110可以是分布式的系统)。在一些实施例中,服务器110可以是本地的,也可以是远程的。例如,服务器110可以经由网络120访问存储在用户终端130和/或存储设备140中的信息和/或数据。又例如,服务器110可以直接连接到用户终端130和/或存储设备140以访问存储的信息和/或数据。在一些实施例中,服务器110可以在云平台上实施。仅作为示例,该云平台可以包括私有云、公共云、混合云、社区云、分布云、内部云、多层云等或其任意组合。在一些实施例中,服务器110可以在具有本技术中图2所示的一个或多个组件的计算设备200上实现。
37.在一些实施例中,服务器110可以包括处理引擎112。处理引擎112可以处理与交通标志周围的交通有关的信息和/或数据。例如,处理引擎112可以在由拍照设备150获取的视频数据中识别车辆拍照,并确定车辆信息。在一些实施例中,处理引擎112可以包括一个或以上处理引擎(例如,单核处理引擎或多核处理器)。仅作为示例,处理引擎112可以包括一个或以上硬件处理器,例如中央处理单元(cpu)、专用集成电路(asic)、专用指令集处理器(asip)、图形处理单元(gpu)、物理处理单元(ppu)、数字信号处理器(dsp)、现场可编程门阵列(fpga)、可编程逻辑设备(pld)、控制器、微控制器单元、精简指令集计算机(risc)、微处理器等或其任何组合。
38.网络120可以促进信息和/或数据的交换。在一些实施例中,应用场景100中的一个或以上组件(例如,服务器110、用户终端130、存储设备140和拍照设备150)可以将信息和/或数据通过网络120发送到应用场景100中的其他组件。例如,处理引擎112可以经由网络120向用户终端130发送识别到的车牌的信息及对应的车辆的信息。在一些实施例中,网络120可以是有线网络或无线网络等或其任意组合。仅作为示例,网络120可以包括电缆网络、有线网络、光纤网络、电信网络、内联网、因特网、局域网(lan)、广域网(wan)、无线局域网(wlan)、城域网(man)、广域网(wan)、公共电话交换网(pstn)、bluetooth tm网络、zigbee网络、近场通信(nfc)网络或类似内容,或其任意组合。在一些实施例中,网络120可以包括一个或以上网络接入点。例如,网络120可以包括诸如基站和/或互联网交换点120

1、120

2,

之类的有线或无线网络接入点,应用场景100的一个或以上组件可以通过有线或无线网络接入点连接到网络120,以交换数据和/或信息。
39.在一些实施例中,用户终端130可以包括移动设备130

1、平板计算机130

2、膝上型计算机130

3等或其任意组合。在一些实施例中,移动设备140

1可以包括智能家居设备、可穿戴设备、移动设备、虚拟现实设备、增强现实设备等,或其任何组合。在一些实施例中,智能家居设备可以包括智能照明设备、智能电器控制设备、智能监控设备、智能电视、智能摄像机、对讲机等,或其任意组合。在一些实施例中,可穿戴设备可以包括手环、鞋袜、眼镜、头盔、手表、衣物、背包、智能配饰等或其任意组合。在一些实施例中,移动设备可以包括移动电话、个人数字助理(pda)、游戏设备、导航设备、销售点(pos)设备、膝上型计算机、台式机等,或任何它们的组合。在一些实施例中,虚拟现实设备和/或增强型虚拟现实设备可以包括虚拟现实头盔、虚拟现实眼镜、虚拟现实眼罩、增强现实头盔、增强现实眼镜、增强现实
眼罩等或其任意组合。例如,虚拟现实设备和/或增强现实设备可以包括googleglass
tm
、riftcon
tm
、fragments
tm
、gearvr
tm
等。在一些实施例中,为识别出的车牌对应的车辆的司机所使用的用户终端130可以接收从处理引擎112发送的通知。在一些实施例中,交通管理人员(例如,交通警察、交通控制器)可以使用用户终端130来访问存储在存储设备140中的相关记录。
40.在一些实施例中,用户终端130可以是被配置为包括相机的移动终端。用户终端130可以经由用户接口向处理引擎112或安装在用户终端130中的处理器发送和/或接收与车牌识别有关的信息。例如,用户终端130可以经由用户接口将由安装在用户终端130中的相机捕获的视频数据发送到安装在用户终端120中的处理引擎112或处理器。用户界面可以是在用户终端130上实现的用于识别车牌的应用程序的形式。在用户终端130上实现的用户界面可以促进用户与处理引擎112之间的通信。例如,用户可以经由用户界面输入和/或需要识别的图片。处理引擎112可以经由用户界面接收输入的图片。又例如,用户可以经由在用户终端130上实现的用户界面输入对车牌识别的请求。在一些实施例中,响应于对车牌识别的请求,用户终端130可以基于由安装在本技术中其他地方所述的用户终端130中的相机捕获的视频数据,经由用户终端130的处理器直接确定车辆的拍照内容。在一些实施例中,响应于对车牌识别的请求,用户终端130可以将对车牌识别的请求发送到处理引擎112,用于基于由拍照设备150或安装在本技术的其他地方所述中的相机捕获的视频数据来确定车辆拍照内容。在一些实施例中,用户界面可以促进呈现或显示从处理引擎112接收的与车牌识别有关的信息和/或数据(例如,信号)。例如,信息和/或数据可以包括指示车牌识别内容的结果,或者指示识别到的车牌对应的车辆信息等。在一些实施例中,信息和/或数据可以被进一步配置为使用户终端130向用户显示结果。
41.存储设备140可以存储数据和/或指令。在一些实施例中,存储设备140可以存储从拍照设备150获得的数据。存储设备140可以存储处理引擎112可以执行或用来执行本技术中描述的示例性方法的数据和/或指令。在一些实施例中,存储设备140可包括大容量存储器、可移动存储器、易失性读写内存、只读内存(rom)等或其任意组合。示例性大容量存储器可以包括磁盘、光盘、固态驱动器等。示例性可移动存储器可以包括闪存驱动器、软盘、光盘、内存卡、压缩盘、磁带等。示例性易失性读写内存可以包括随机存取内存(ram)。示例性ram可包括动态随机存取内存(dram)、双倍数据速率同步动态随机存取内存(ddrsdram)、静态随机存取内存(sram)、晶闸管随机存取内存(t

ram)和零电容随机存取内存(z

ram)等。示例性rom可以包括掩模型只读内存(mrom)、可编程只读内存(prom)、可擦除可编程只读内存(eprom)、电可擦除可编程只读内存(eeprom)、光盘只读内存(cd

rom)和数字多功能磁盘只读内存等。在一些实施例中,所述存储设备140可在云端平台上执行。仅作为示例,该云平台可以包括私有云、公共云、混合云、社区云、分布云、内部云、多层云等或其任意组合。
42.在一些实施例中,存储设备140可以连接到网络120以与应用场景100中的一个或以上组件(例如,服务器110、用户终端130)通信。应用场景100中的一个或多个组件可以经由网络120访问存储在存储设备140中的数据或指令。在一些实施例中,存储设备140可以直接连接到应用场景100中的一个或以上组件或与之通信(例如,服务器110、用户终端130)。在一些实施例中,存储设备140可以是服务器110的一部分。
43.拍照设备150可以获取视频数据。在一些实施例中,所获取的视频数据可以与车辆
周围的场景相关联。仅作为示例,拍照设备150可以是摄像机、安全相机、网络相机、智能手机相机、平板相机,笔记本电脑相机等。拍照设备150可以被安装在车辆或车辆的物体(例如,交通信号灯、电线杆、车辆)上。在一些实施例中,拍照设备150可以由能量单元(例如,发电机,电力传输线,太阳能功率供应单元)供应能量。另外,拍照设备150可以使用电池组来扩展能量。在一些实施例中,拍照设备150可以配置有/耦合到网络模块,该网络模块使拍照设备150能够经由网络120与处理引擎112、用户终端130和/或存储设备140连接。
44.应当注意,以上描述意图是说明性的,而不是限制本技术的范围。对于本领域技术人员而言,许多替代,修改和变化将是显而易见的。本文描述的示例性实施例的特征,结构,方法和其他特性可以以各种方式组合以获得另外的和/或替代的示例性实施例。例如,拍照设备150可以配置有存储模块、处理模块、通信模块等。然而,这些变化和修改不脱离本技术的范围。
45.图2是根据本技术的一些实施例所示的可以在其上实现处理引擎的示例性计算设备的示例性硬件和/或软件组件的示意图。如图2所示,计算设备200可以包括处理器210、存储器220、输入/输出(i/o)230和通信端口240。
46.处理器210(例如,逻辑电路)可以执行计算机指令(例如,程序代码)并根据本文描述的技术执行处理引擎112的功能。在一些实施例中,处理器210可以被配置为处理与应用场景100的一个或以上组件有关的数据和/或信息。例如,处理器210可以在由拍照设备150获取的视频数据中识别车辆的牌照信息。又例如,处理器210可以基于一系列图像来确定所识别的车辆拍照的内容。处理器210还可被配置为获取识别到的牌照对应的车辆的信息。处理器210还可以将识别的牌照信息及对应的车辆的信息发送到服务器110。在一些实施例中,处理器210可以向相关联的用户终端130发送通知。
47.在一些实施例中,处理器210可以在其中包括接口电路210

a和处理电路210

b。接口电路可以被配置为从总线(图2中未示出)接收电信号,其中电信号对结构化数据和/或指令进行编码以供处理电路进行处理。处理电路可以进行逻辑计算,然后将结论、结果和/或指令编码成电信号。然后,接口电路可以经由总线从处理电路发送电信号。
48.计算机指令可以包括例如例程、程序、对象、组件、数据结构、过程、模块和功能,其执行本文描述的特定功能。例如,处理器210可以处理与从用户终端130、存储设备140和/或应用场景100的任何其他组件获得的车辆相关的信息。在一些实施例中,处理器210可以包括一个或以上硬件处理器、诸如微控制器、微处理器、精简指令集计算机(risc)、专用集成电路(asic)、专用指令集处理器(asip)、中央处理器(cpu)、图形处理器(gpu)、物理处理器(ppu)、微控制器、数字信号处理器(dsp)、现场可编程门阵列(fpga)、高级risc机器(arm)、可编程逻辑设备(pld),能够执行一个或以上功能的任何电路或处理器等,或其任意组合。
49.仅仅为了说明,在计算设备200中仅描述了一个处理器。然而,应注意,本技术中的计算设备200还可以包括多个处理器,因此,如本技术中所述的由一个处理器执行的操作和/或方法步骤也可以由多个处理器联合或分开地执行。例如,如果在本技术中,计算设备200的处理器同时执行步骤a和步骤b,则应当理解,步骤a和步骤b也可以由计算设备200中的两个或以上不同处理器联合或分别执行(例如,第一处理器执行步骤a,第二处理器执行步骤b,或者第一处理器和第二处理器共同执行步骤a和b)。
50.存储器220可以存储从用户终端130、存储设备140和/或应用场景100的任何其他
组件获得的数据/信息。在一些实施例中,内存装置220可以包括大容量内存装置、可移动内存装置、易失性读写内存器、只读内存器(rom)等或其任何组合。例如,大容量存储器可以包括磁盘、光盘、固态驱动器等。可移动存储设备可以包括闪存内存、软盘、光盘、存储卡、zip磁盘、磁带等。易失性读写内存可以包括随机存取内存(ram)。ram可以包括动态ram(dram)、双倍速率同步动态ram(ddrsdram)、静态ram(sram)、晶闸管ram(t

ram)和零电容器ram(z

ram)等。rom可以包括掩模rom(mrom)、可编程rom(prom)、可擦除可编程rom(eprom)、电可擦除可编程rom(eeprom)、光盘rom(cd

rom)和数字多功能盘rom等。在一些实施例中,存储器220可以存储一个或以上程序和/或指令以执行本技术中描述的示例性方法。例如,存储器220可以存储用于处理引擎112的用于确定车辆值的程序。
51.i/o230可以输入和/或输出信号、数据、信息等。在一些实施例中,i/o230可以使用户能够与处理引擎112进行交互。在一些实施例中,i/o230可以包括输入设备和输出设备。输入设备的示例可以包括键盘、鼠标、触摸屏、麦克风等、或其组合。输出设备的示例可以包括显示设备、扬声器、打印机、投影仪等或其组合。显示设备的示例可以包括液晶显示器(lcd)、基于发光二极管(led)的显示器、平板显示器、曲面屏幕、电视设备、阴极射线管(crt)、触摸屏屏幕等,或其任意组合。
52.通信端口240可以连接到网络(例如,网络120)以促进数据通信。通信端口240可以在处理引擎112与用户终端130、拍照设备150或存储设备140之间建立连接。该连接可以是有线连接、无线连接、可以实现数据传输和/或接收的任何其他通信连接,和/或这些连接的任意组合。有线连接可以包括例如电缆、光缆、电话线等,或其任意组合。无线连接可以包括例如bluetoothtm链路、wi

fitm链路、wimaxtm链路、wlan链路、zigbee链路、移动网络链路(例如,3g、4g、5g)等,或其任意组合。在一些实施例中,通信端口240可以是和/或包括标准化通信端口,例如rs232、rs485等。
53.图3是根据本技术的一些实施例所示的可以在其上实现用户终端的示例性移动设备的示例性硬件和/或软件组件的示意图。在一些实施例中,图3所示的移动设备300可以由用户使用。用户可以是司机、乘客、交通警察、交通控制者、车辆监管部门等。例如,交通警察或交通控制者可以经由移动设备300查看车辆的违规记录。在一些实施例中,交通警察或交通管制员可以基于违规记录和与违规记录相关联的交通规则做出处罚决定。惩罚决定可以被输入到移动设备300。又例如,违反交通规则的责任司机可以经由移动设备300接收通知,并且可以经由移动设备300在线支付罚款。
54.如图3所示,移动设备300可以包括通信平台310、显示器320、图形处理单元(gpu)330、中央处理单元(cpu)340、i/o350、内存360和存储器390。在一些实施例中,任何其他合适的组件,包括但不限于系统总线或控制器(未示出),也可包括在移动设备300内。在一些实施例中,可将移动操作系统370(例如,ios tm、android tm、windowsphone tm)和一个或以上应用380从存储器390加载到内存360中,以便由cpu340执行。应用程序380可以包括浏览器或任何其他合适的移动应用程序,用于从处理引擎112接收和渲染与图像处理有关的信息或其他信息。可以通过i/o350实现与信息流的用户交互,并通过网络120将其提供给处理引擎112和/或应用场景100的其他组件。
55.为了实施本技术描述的各种模块、单元及其功能,计算机硬件平台可用作本文中描述的一个或以上组件的硬件平台。具有用户接口元素的计算机可用于实施个人计算机
(pc)或任何其他类型的工作站或终端设备。若计算机被适当的程序化,计算机亦可用作服务器。
56.本领域普通技术人员将理解,当应用场景100的元件执行时,该元件可以通过电信号和/或电磁信号来执行。例如,当处理引擎112处理诸如做出确定或识别信息的任务时,处理引擎112可以操作其处理器中的逻辑电路来处理该任务。当处理引擎112向用户终端130发送数据(例如,目标拍照的当前估计值)时,处理引擎112的处理器可以生成对数据进行编码的电信号。处理引擎112的处理器然后可以将电信号发送到输出端口。如果用户终端130通过有线网络与处理引擎112通信,则输出端口可以物理地连接至电缆,该电缆可以进一步将电信号传输至服务器110的输入端口。如果用户终端130通过无线网络与处理引擎112通信,则处理引擎112的输出端口可以是一个或以上天线,其可以将电信号转换为电磁信号。在诸如用户终端130和/或服务器110之类的电子设备中,当其处理器处理指令,发出指令和/或执行动作时,该指令和/或动作是通过电信号进行的。例如,当处理器从存储介质(例如,存储设备140)检索或保存数据时,它可以向存储介质的读/写设备发送电信号,该读/写设备可以在存储介质中读取或写入结构化数据。该结构数据可以通过电子设备的总线,以电信号的形式传输至处理器。在此,电信号可以指的是电信号、一系列电信号和/或一个或以上离散的电信号。
57.图4根据本技术的一些实施例所示的示例性处理引擎的示意框图。
58.如图4所示,在一些实施例中,处理引擎112可以包括图像获取模块410、第一识别模块420、数据判断模块430、第二识别模块440、结果确定模块450。处理引擎140可以被实现在各种组件上(例如,如图2所示的计算设备200的处理器210)。例如,处理引擎140的至少一部分可以在如图2所示的计算设备或如图3所示的移动设备上实现。
59.图像获取模块410可以获取与应用场景100有关的数据和/或信息。在一些实施例中,图像获取模块410可以从应用场景100的一个或以上组件,例如拍照设备150、存储设备140、获取与应用场景100有关的数据和/或信息。例如,图像获取模块410可以从拍照设备150获取视频数据。视频数据可以包括一系列帧。图像获取模块410可以将一系列帧发送到其他模块(例如,第一识别模块420)以进行进一步处理。又例如,图像获取模块410可以从存储设备140获取车辆的车牌图片。作为又一示例,图像获取模块410可以从存储设备140获取识别模型。
60.第一识别模块420可以从与应用场景100有关的数据和/或信息中识别一个或以上对象。在一些实施例中,第一识别模块420可以在从图像获取模块410获取的一系列帧中识别车辆牌照。一系列帧中可能有一个或以上对象。第一识别模块420可以识别一系列帧中的每个帧中的每个对象并且关联所识别的对象。例如,可以使用识别模型来识别一系列帧中的一个或以上车辆牌照。又例如静态对象,例如建筑物、邮箱等可以从一系列帧中识别出来。在一些实施例中,第一识别模块420可以基于一系列帧来识别车辆的牌照信息及对应的车辆的信息(例如,驾驶执照i d、车牌号)。
61.数据判断模块430可以用于判断图像获取模块410获取的待识别图像数据中的单个字符是否满足预设条件,从而确定下一步操作。
62.在一些实施例中,预设条件是可以基于实际需求进行设定,具体可以与图像的质量结合,如在一些实施例中,预设条件可以是图像的分辨率需要满足的条件,在一些实施例
中,预设条件可以是图像的大小需要满足的要求,在一些实施例中,预设条件可以是图像的数量需要满足的条件等,在一些实施例中,预设条件还可以是关于图像的其他要求,如图像的颜色、图像的形状等。
63.在一些实施例中,可以设定最低置信度作为预设条件,最低置信度的值可以根据实际情况设定,如在一些实施例中,若对于识别结果的精度要求较为严格,则可以将最低置信度的值设定的较大。在一些实施例中,最低置信度可以是一个具体的值如90,也可以是一个取值范围,如80

100等。
64.第二识别模块440可以用于在所述单个字符不满足所述预设条件时,将所述待识别图像数据输入车牌处理模型,得到第二识别结果。关于车牌处理模型的具体说明见图6,此处不再赘述。通过第二识别模块440可以对不满足所述预设条件的单个字符进行针对性的处理,并得到识别结果,从而进一步提升整体识别结果的准确度。
65.结果确定模块450可以用于确定并输出最终识别结果;在一些实施例中,所述最终识别结果为所述第一识别结果。在一些实施例中,图像获取模块获取的待识别图像数据的质量达到一定标准后,仅由车牌识别模型即可实现准确的识别,此时,车牌识别模型得到的第一识别结果即可作为最终识别结果。在一些实施例中,若图像获取模块获取的待识别图像数据的质量较低,如图像不清晰,且图像中还包含相近字符,如由于拍摄角度、环境等因素的影响,使得获取到的车牌图像不是干净整洁、方方正正出现在感受野里面的,在一些实施例中,若车牌的字符之间具有0和d,8和b,7和t等相似字符时,仅由车牌识别模型进行识别时其识别结果可能会存在一定的误差,因此,需要结合车牌处理模型得到的第二识别结果与车牌识别模型得到的第一识别结果共同确定整个车牌的识别结果,从而提升识别准确度。
66.在一些实施例中,处理引擎112还可以包括训练模块460,训练模块460用于根据采集获得的数据对构建的所述车牌识别模型、车牌处理模型进行训练,获得训练完毕的所述车牌识别模型、车牌处理模型。关于车牌识别模型、车牌处理模型的训练的说明见图11及图12,此处不再赘述。
67.在一些实施例中,处理引擎112可以获得车牌识别模型、车牌处理模型。在一些实施例中,车牌识别模型、车牌处理模型可以包括训练的机器学习模型。例如,训练后的机器学习模型可以包括you only look once(yolo)模型、增强haar模型、fasterr

cnn模型、mask r

cnn模型等,或其任意组合。在一些实施例中,处理引擎112可以经由网络120直接从存储设备140获得车牌识别模型、车牌处理模型。在一些实施例中,处理引擎112可以获得机器学习模型并训练机器学习模型。例如,可以使用一组样本图像和与该组样本图像相对应的一组对象识别结果(例如,正或负标签、对象类型的标签)来训练机器学习模型。训练后的机器学习模型可以用作车牌识别模型、车牌处理模型,用于识别一系列帧中的每个帧中的车辆牌照。
68.处理引擎112中的模块可以经由有线连接或无线连接彼此连接或彼此通信。有线连接可以包括金属电缆、光缆、混合电缆等或其任何组合。无线连接可以包括局域网络(lan)、广域网络(wan)、蓝牙、紫蜂网络、近场通信(nfc)等或其任意组合。两个或以上模块可以合并成一个模块,以及任意一个模块可以被拆分成两个或以上单元。例如,图像获取模块410可以作为单个模块集成在第一识别模块420中,该单个模块可以识别移动终端和与该
移动终端相关联的目标。
69.应当理解,图4所示的系统及其模块可以利用各种方式来实现。例如,在一些实施例中,系统及其模块可以通过硬件、软件或者软件和硬件的结合来实现。其中,硬件部分可以利用专用逻辑来实现;软件部分则可以存储在存储器中,由适当的指令执行系统,例如微处理器或者专用设计硬件来执行。本领域技术人员可以理解上述的方法和系统可以使用计算机可执行指令和/或包含在处理器控制代码中来实现,例如在诸如磁盘、cd或dvd

rom的载体介质、诸如只读存储器(固件)的可编程的存储器或者诸如光学或电子信号载体的数据载体上提供了这样的代码。本说明书的系统及其模块不仅可以有诸如超大规模集成电路或门阵列、诸如逻辑芯片、晶体管等的半导体、或者诸如现场可编程门阵列、可编程逻辑设备等的可编程硬件设备的硬件电路实现,也可以用例如由各种类型的处理器所执行的软件实现,还可以由上述硬件电路和软件的结合(例如,固件)来实现。
70.需要注意的是,以上对于处理引擎及其模块的描述,仅为描述方便,并不能把本说明书限制在所举实施例范围之内。可以理解,对于本领域的技术人员来说,在了解该系统的原理后,可能在不背离这一原理的情况下,对各个模块进行任意组合,或者构成子系统与其他模块连接。例如,图4图像获取模块、第一识别模块可以是一个系统中的不同模块,也可以是一个模块实现上述的两个模块的功能。又例如,处理引擎中各个模块可以共用一个存储模块,各个模块也可以分别具有各自的存储模块。诸如此类的变形,均在本说明书的保护范围之内。
71.图5是根据本说明书的一些实施例所示的车牌识别方法的流程图。在一些实施例中,图5所示的过程500可以在图1所示的应用场景100中实现。例如,过程500可以作为指令的形式存储在存储介质(例如,存储设备140或计算设备200的存储器220)中,并且由处理器(例如,存储设备140)、服务器110的处理引擎112,计算设备200的处理器220或图4中所示的处理引擎112中的一个或以上模块调用和/或执行。下面呈现的所示过程500的操作旨在说明。在一些实施例中,过程500可以利用一个或以上未描述的附加操作和/或没有所讨论的一个或以上操作来完成。另外,图5中示出的和下面描述的过程500的操作的顺序不旨在限制性的。
72.如图5所示,该流程500可以包括以下步骤:
73.步骤510,获取待识别图像数据。
74.具体的,该步骤可以由图像获取模块执行。
75.在一些实施例中,作为待识别图像数据的车牌数据集内的图像可由专门的人员进行采集并上传,在一些实施例中,车牌数据集内的图像的获取包括通过采集车辆视频并进行视频分割从而提取车辆牌照图片,在一些实施例中,车牌数据集内的图像的获取可以直接由监控设备、摄像设备等直接拍摄车辆牌照的图像,在一些实施例中,收集图片包括夜晚、光照不均、强光反射、雨天、雾天下的车牌图片的收集以及含有相似字符的车牌图片的收集。
76.在一些实施例中,一个或以上车牌照片可以存储在存储设备140中。处理引擎112可以经由网络120从存储设备140获得车牌照片。例如,用户(例如,交通警察)可以向存储设备140输入车牌照片。处理引擎112可以获取车牌照片。
77.在一些实施例中,车牌照片可以由如图1所示的拍照设备150获取。在一些实施例
中,车牌照片可以由一个以上的拍照设备150获取。例如,第一拍照设备150

1(图中未示出)可以被配置为获取低分辨率视频(或图像的低分辨率帧)以用于对物体的运动进行分析。第二拍照设备150

2(图中未示出)可以被配置为获取一个或以上高分辨率图像,以用于识别物体的信息,例如,车牌号的具体内容。
78.在一些实施例中,拍照设备150可以可拆卸地安装在交通标志或交通标志附近的物体上。例如,对象可以包括交通信号灯、路灯、电线杆、树木、建筑物等,或其任何组合。在一些实施例中,拍照设备150可以安装在停在停车场所的车辆上。如本文所用,“安装在车辆上”是指被安装在车辆的外部(例如,在车顶上、在前窗上、在后视镜上)或安装在车辆的内部(例如,面板上方、车辆内部的前窗上或乘客座椅上)。
79.在一些实施例中,数据的预处理包括进行降噪、数据归一化、特征标准化等。在一些实施例中,照片场景中包括噪音区域。例如,噪音区域可以包括车道、静态物体,诸如树、建筑物、被道路停放的车辆等,或其任何组合。在一些实施例中,进行数据预处理可以在筛选出车辆牌照图像之前删除照片中的噪音区域。
80.在一些实施例中,数据的预处理包括对车牌数据集进行文字识别。例如,所有车牌数据集像素可以均为256x64,图像格式可以为.jpg格式,其中训练集包含如12000张图片,测试集可包含3000张图片。收集的数据可以是存在相似字符的车牌数据,相似字符包括但不限于0和d,8和b,7和t等。
81.步骤520,将所述待识别图像数据输入车牌识别模型进行识别,得到第一识别结果。
82.具体的,该步骤可以由第一识别模块执行。
83.在一些实施例中,处理引擎112可以使用车牌识别模型来识别车辆牌照。可以从存储设备140获得车牌识别模型。处理引擎112可以执行车牌识别模型以在车辆照片中识别车辆牌照。关于车牌识别模型的具体描述参见图8的相关内容,此处不再赘述。
84.在一些实施例中,车牌识别模型可以对不包含相似字符或图像质量达到一定标准的图像数据进行识别,并获得相对准确的识别结果。在一些实施例中,若图像质量未达到相应标准或图像数据中含有一定的相似字符,车牌识别模型得到的识别结果存在一定的误差,可能不适用于要求识别精度较高的场合。
85.步骤530,判断所述待识别图像数据中的单个字符是否满足预设条件。
86.具体的,该步骤可以由数据判断模块执行。
87.在一些实施例中,为了保证识别结果的准确度需要验证图像获取模块获取到的图像数据的具体质量,是否车牌识别模型即可满足识别要求。在一些实施例中,具体的判定标准可以由预设条件来体现,本说明书中有关于预设条件的具体说明,此处不再赘述。
88.步骤540,若待识别图像数据中的单个字符满足预设条件,则将所述第一识别结果作为最终识别结果。
89.具体的,该步骤可以由结果确定模块执行。
90.当图像获取模块获取到的图像数据较高,车牌识别模型即可满足识别要求时,即可以将车牌识别模型输出的第一识别结果作为最终识别结果,则整个识别流程即结束。
91.在一些实施例中,处理引擎112可以基于最终识别结果获得车辆的牌照信息进一步获取车辆的信息。例如司机信息、车辆的违规信息等。如车辆的牌照信息还可进一步用于
识别违反交通规则的司机。
92.步骤550,若待识别图像数据中的单个字符不满足预设条件,将所述待识别图像数据输入车牌处理模型,得到第二识别结果。
93.具体的,该步骤可以由第二识别模块执行。
94.在一些实施例中,若需要的识别准确度较高或图像获取模块获取到的图像数据的质量不高,或图像获取模块获取到的图像数据中含有相似字符时,为了进一步保证识别准确度,可以将不满足预设条件的单个字符输入车牌处理模型得到第二识别结果。关于车牌处理模型的具体说明参见图6、图7。
95.步骤560,基于所述第一识别结果、第二识别结果得到所述最终识别结果。
96.具体的,该步骤可以由结果确定模块执行。
97.在一些实施例中,最终识别结果是结合第一识别结果、第二识别结果确定的,在一些实施例中,具体可以将所述第一识别结果中所述目标字符的识别结果替换为所述分类识别模型对应得到的识别结果,并将替换后的识别结果作为所述最终识别结果。
98.在一些实施例中,还可以对最终识别结果进行评估。在一些实施例中,评估的实现可以由相应的评估模型实现,在一些实施例中,具体可以采用以下方式对所述识别结果进行评估:
99.车牌识别使用准确率作为评价指标,只有车牌中每一位都识别正确才认为算法对该车牌识别正确。对于识别错误的车牌,无论识别错误的位数有多少,都统一对待,认为它是错误的。
100.具体的评价指标如下:
101.acc=righet/all
102.acc代表车牌识别模型的识别车牌的精确率,right代表识别正确的车牌数,all代表所有车牌数据集中的车牌的样本数;
103.所述评估模型的测试指标至少包括以下一种:回归损失平方和、top1车牌准确率、top1_in_top5车牌准确率;
104.其中,所述回归损失平方和与车牌数据集的车牌图片的识别置信度和预测质量分相关,所述top1车牌准确率、top1_in_top5车牌准确率与车牌识别模型的识别准确率相关。
105.需要说明的是,测试指标主要是回归损失平方和、寻找top1车牌准确率、寻找top1_in_top5车牌准确率。
106.回归损失平方和:即为实际的车牌图片的识别置信度和预测质量分的差的平方,累加起来,只能够粗略的衡量算法的好坏,并不能完全的表示算法寻找top1的能力。
107.top1车牌准确率:即为实际的测试track中,算法判断找到的预测最高质量分的那个车牌是不是实际的识别最高分的车牌的准确率。
108.top1_in_top5车牌准确率:即为实际测试track中,算法找到的预测最高质量分的车牌是否是实际识别分中top5中的车牌的准确率。
109.应当注意的是,以上描述仅出于说明的目的而提供,并不旨在限制本技术的范围。对于本领域的普通技术人员来说,可以根据本技术的描述,做出各种各样的变化和修改。然而,这些变化和修改不脱离本技术的范围。
110.图6是根据本说明书的一些实施例所示的车牌处理模型的示意图。
layer.expansion layer的功能正相反,使用1x1的网络结构,目的是将低维空间映射到高维空间。
124.如图11是根据本说明书的一些实施例所示的车牌识别模型的训练流程示意图。
125.模型的训练可以由训练模块实现,车牌识别模型可以由牌照数据进行训练后得到。仅作为示例,可以以历史基础信息作为输入,以所述历史基础信息对应的适当相似度值作为正确标准(ground truth)对模型进行训练。同时可以根据模型的预测输出与正确标准之间的差异反向调整模型参数。当满足某一预设条件时,例如,训练样本数达到预定的数量,模型的预测正确率大于某一预定正确率阈值,或损失函数(loss function)的值小于某一预设值,训练过程将停止,并将训练后的模型指定为所述车牌识别模型。
126.如图11所示为根据本说明书的一些实施例所示的车牌识别模型的训练流程示意图,需要说明的是,进行训练时,具体的学习率的初始值设为0.0001,随epoch次数不断减小,优化器选择adam进行优化。
127.在一些实施例中,车牌识别模型的激活函数采用relu激活函数,具体如下式所示:
[0128][0129]
由于relu的两点特性,即线性变换 当感兴趣流形(manifold of interest)都在右边的时候就能保留全部信息,所以感兴趣流形应该在一个高维激活空间中的一个低维子空间中。所以,可以通过加入线性瓶颈层(linear bottleneck)来拿到低维的感兴趣流形。
[0130]
如图12是根据本说明书的一些实施例所示的车牌处理模型的训练流程示意图。
[0131]
模型的训练可以由训练模块实现,车牌处理模型可以由牌照数据进行训练后得到。仅作为示例,可以以历史基础信息作为输入,以所述历史基础信息对应的适当相似度值作为正确标准(ground truth)对模型进行训练。同时可以根据模型的预测输出与正确标准之间的差异反向调整模型参数。当满足某一预设条件时,例如,训练样本数达到预定的数量,模型的预测正确率大于某一预定正确率阈值,或损失函数(lossfunction)的值小于某一预设值,训练过程将停止,并将训练后的模型指定为所述车牌识别模型。
[0132]
在一些实施例中,车牌处理模型的分类识别模型采用的激活函数为relu6,具体如下式所示:
[0133]
relu6(x)=min(max(0,x),6)
[0134]
在一些实施例中,relu6可以采用普通的relu但是限制最大输出为6,这是为了在移动端设备float16/int8的低精度的时候也能有很好的数值分辨率。如果对relu的激活范围不加限制,输出范围为0到正无穷,如果激活值非常大,分布在一个很大的范围内,则低精度的float16/int8无法很好地精确描述如此大范围的数值,带来精度损失。
[0135]
在一些实施例中,车牌处理模型的分类识别模型在训练中采用的损失函数为arcloss函数,具体如下式所示:
[0136][0137]
arcloss是在原本两个特征之间的夹角上再加上一个角m,然后优化这个m,使夹角
慢慢变大,两个特征慢慢远离,从而使不同特征之间界限分明。他的理想状态是将所有特征之间的夹角都最大化,也就是每个特征都被压迫成一条细线。
[0138]
在一些实施例中,车牌识别模型、车牌处理模型可以分别训练得到:车牌识别模型、评估模型可以分别基于训练样本训练得到。
[0139]
在一些实施例中,训练的样本图像可以包括已有的车辆牌照图像。已有的车辆牌照图像可以通过各种方式获取,比如,历史行车记录仪采集的车辆图像、历史用户上传的车辆图像、电子监控设备采集的车辆图像等。在一些实施例中,可以对已有的车辆图像进行数据增强,以增加样本图像的数量。数据增强的方法包括但不限于翻转、旋转、缩放、裁剪、平移、添加噪声等。在一些实施例中,可以标记样本图像的状态数据,标记可以通过人工或计算机程序进行。比如,可以根据历史用户对车辆的评分进行统计等等。仅作为示例,可以以样本图像作为输入,以对应的车辆状态作为正确标准(ground truth)对模型进行训练。同时可以根据模型的预测输出(例如,预测的车辆状态)与正确标准之间的差异反向调整模型参数。当满足某一预设条件时,例如,训练样本图像数达到预定的数量,模型的预测正确率大于某一预定正确率阈值,或损失函数(lossfunction)的值小于某一预设值,训练过程将停止,并将训练后的模型指定为所述状态检测模型。关于本说明书中的车牌识别模型、评估模型的更多细节说明参见后续内容,此处不再赘述。
[0140]
应该注意的是,虽然上文分别描述了车牌识别模型和车牌处理模型,在一些实施例中,它们可以合并为一个模型,该模型可以根据不同的车辆车牌图像数据综合确定车辆的牌照内容。例如,该模型的输入为多个车辆的牌照图像,输出为多个图像内的车辆牌照内容。模型训练的过程与确定牌照内容及评估预测结果的过程可以分开进行。在一些实施例中,所述训练过程可以在服务器110上执行,也可以在另外的设备上执行,再将训练好的模型应用到服务器110上。在一些实施例中,也可以对根据各种不同场景下的车牌照片进行车牌内容的确定。
[0141]
本说明书的实施例的车牌识别方法具有的有益效果包括但不限于以下几点:1.采用轻量级特征提取网络mobilenet

v2来提取图片信息,更方便服务于边缘设备。2.采用注意力机制作为序列化特征提取模块,而不采用lstm模块,因lstm模块为串行计算,并行速度慢,利用cuda并行加速效果差。3在车牌识别模型判断字符置信度,如果该字符低于所设置信度,则采用分类模型对单一字符识别,将单一字符的输出结果替换经过车牌识别模型输出结果的相应字符。增加存在相似字符车牌的整体识别的准确率。4.可以实现相似字符、图像质量较差的等低质量图像的准确识别,提升车牌识别的准确度。
[0142]
本说明书实施例还提供一种车牌识别设备,包括至少一个存储介质和至少一个处理器,所述至少一个存储介质用于存储计算机指令;所述至少一个处理器用于执行前述的车牌识别方法,所述方法包括:获取待识别图像数据;将所述待识别图像数据输入车牌识别模型进行识别,得到第一识别结果;判断所述待识别图像数据中的单个字符是否满足预设条件;若满足,则将所述第一识别结果作为最终识别结果;若不满足,将所述待识别图像数据输入车牌处理模型,得到第二识别结果;基于所述第一识别结果、第二识别结果得到所述最终识别结果。
[0143]
本说明书实施例还提供一种计算机可读存储介质。所述存储介质存储计算机指令,当计算机读取存储介质中的计算机指令后,计算机实现前述的检测车辆状态的方法,所
述方法包括:获取待识别图像数据;将所述待识别图像数据输入车牌识别模型进行识别,得到第一识别结果;判断所述待识别图像数据中的单个字符是否满足预设条件;若满足,则将所述第一识别结果作为最终识别结果;若不满足,将所述待识别图像数据输入车牌处理模型,得到第二识别结果;基于所述第一识别结果、第二识别结果得到所述最终识别结果。
[0144]
上文已对基本概念做了描述,显然,对于本领域技术人员来说,上述详细披露仅仅作为示例,而并不构成对本说明书的限定。虽然此处并没有明确说明,本领域技术人员可能会对本说明书进行各种修改、改进和修正。该类修改、改进和修正在本说明书中被建议,所以该类修改、改进、修正仍属于本说明书示范实施例的精神和范围。
[0145]
同时,本说明书使用了特定词语来描述本说明书的实施例。如“一个实施例”、“一实施例”、和/或“一些实施例”意指与本说明书至少一个实施例相关的某一特征、结构或特点。因此,应强调并注意的是,本说明书中在不同位置两次或多次提及的“一实施例”或“一个实施例”或“一个替代性实施例”并不一定是指同一实施例。此外,本说明书的一个或多个实施例中的某些特征、结构或特点可以进行适当的组合。
[0146]
此外,本领域技术人员可以理解,本说明书的各方面可以通过若干具有可专利性的种类或情况进行说明和描述,包括任何新的和有用的工序、机器、产品或物质的组合,或对他们的任何新的和有用的改进。相应地,本说明书的各个方面可以完全由硬件执行、可以完全由软件(包括固件、常驻软件、微码等)执行、也可以由硬件和软件组合执行。以上硬件或软件均可被称为“数据块”、“模块”、“引擎”、“单元”、“组件”或“系统”。此外,本说明书的各方面可能表现为位于一个或多个计算机可读介质中的计算机产品,该产品包括计算机可读程序编码。
[0147]
计算机存储介质可能包含一个内含有计算机程序编码的传播数据信号,例如在基带上或作为载波的一部分。该传播信号可能有多种表现形式,包括电磁形式、光形式等,或合适的组合形式。计算机存储介质可以是除计算机可读存储介质之外的任何计算机可读介质,该介质可以通过连接至一个指令执行系统、装置或设备以实现通讯、传播或传输供使用的程序。位于计算机存储介质上的程序编码可以通过任何合适的介质进行传播,包括无线电、电缆、光纤电缆、rf、或类似介质,或任何上述介质的组合。
[0148]
本说明书各部分操作所需的计算机程序编码可以用任意一种或多种程序语言编写,包括面向对象编程语言如java、scala、smalltalk、eiffel、jade、emerald、c 、c#、vb.net、python等,常规程序化编程语言如c语言、visual basic、fortran2003、perl、cobol2002、php、abap,动态编程语言如python、ruby和groovy,或其他编程语言等。该程序编码可以完全在用户计算机上运行、或作为独立的软件包在用户计算机上运行、或部分在用户计算机上运行部分在远程计算机运行、或完全在远程计算机或处理设备上运行。在后种情况下,远程计算机可以通过任何网络形式与用户计算机连接,比如局域网(lan)或广域网(wan),或连接至外部计算机(例如通过因特网),或在云计算环境中,或作为服务使用如软件即服务(saas)。
[0149]
此外,除非权利要求中明确说明,本说明书所述处理元素和序列的顺序、数字字母的使用、或其他名称的使用,并非用于限定本说明书流程和方法的顺序。尽管上述披露中通过各种示例讨论了一些目前认为有用的发明实施例,但应当理解的是,该类细节仅起到说明的目的,附加的权利要求并不仅限于披露的实施例,相反,权利要求旨在覆盖所有符合本
说明书实施例实质和范围的修正和等价组合。例如,虽然以上所描述的系统组件可以通过硬件设备实现,但是也可以只通过软件的解决方案得以实现,如在现有的处理设备或移动设备上安装所描述的系统。
[0150]
同理,应当注意的是,为了简化本说明书披露的表述,从而帮助对一个或多个发明实施例的理解,前文对本说明书实施例的描述中,有时会将多种特征归并至一个实施例、附图或对其的描述中。但是,这种披露方法并不意味着本说明书对象所需要的特征比权利要求中提及的特征多。实际上,实施例的特征要少于上述披露的单个实施例的全部特征。
[0151]
针对本说明书引用的每个专利、专利申请、专利申请公开物和其他材料,如文章、书籍、说明书、出版物、文档等,特此将其全部内容并入本说明书作为参考。与本说明书内容不一致或产生冲突的申请历史文件除外,对本说明书权利要求最广范围有限制的文件(当前或之后附加于本说明书中的)也除外。需要说明的是,如果本说明书附属材料中的描述、定义、和/或术语的使用与本说明书所述内容有不一致或冲突的地方,以本说明书的描述、定义和/或术语的使用为准。
[0152]
最后,应当理解的是,本说明书中所述实施例仅用以说明本说明书实施例的原则。其他的变形也可能属于本说明书的范围。因此,作为示例而非限制,本说明书实施例的替代配置可视为与本说明书的教导一致。相应地,本说明书的实施例不仅限于本说明书明确介绍和描述的实施例。
再多了解一些

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

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

相关文献