欢迎光临小豌豆知识网!
当前位置:首页 > 物理技术 > 信号装置> 监控交通标志违规的系统和方法独创技术71672字

监控交通标志违规的系统和方法

2021-02-02 11:21:38

监控交通标志违规的系统和方法

  相关申请的交叉引用

  本申请要求于2018年4月27日提交的美国临时申请62/664,073的优先权,其全部内容通过引用合并于此。

  技术领域

  本申请总体上涉及交通标志周围的交通监控,并且更具体地,涉及用于监控交通标志周围的交通标志违规的系统和方法。

  背景技术

  交通标志是指立在路边或路上方的标志,用于向道路使用者(例如驾驶员、骑自行车的人、行人等)发出指示或提供信息。通常,每个交通标志都与车辆、摩托车或行人应遵守的特定交通规则相关联。例如,停车标志与一项规则有关,该规则要求任何车辆或摩托车在继续前进之前必须在特定时间段(例如3秒)内完全停车。但是,相对于地区中有限的警察资源(例如,交通警察)或交通监控设施,该地区的交通标志数量太大,这使得无法监控某些交通标志周围的违规行为,例如,附近社区街道、学校或医院附近的停车标志等。因此,期望提供用于自动监控交通标志周围的交通并检测交通标志违规的系统和方法。

  发明内容

  本申请涉及监控交通标志周围的交通标志违规。根据本申请的一方面,提供了一种用于确定交通标志违规的系统。该系统可以包括至少一个相机,该相机被配置为获取与交通标志周围的场景相关联的视频数据。视频数据可以包括一系列帧。该系统可以进一步包括至少一个存储指令集的存储介质以及至少一个被配置为与至少一个存储介质通信的处理器。当执行指令集时,可以指示至少一个处理器以使系统获得与交通标志相对应的交通规则并在一系列帧中识别车辆。至少一个处理器可以进一步被指示为使系统基于一系列帧来确定车辆是否违反交通规则。响应于确定车辆违反交通规则,至少一个处理器可以进一步被指示为使系统获得车辆的信息并将车辆的信息发送到服务器。

  在一些实施例中,为了识别一系列帧中的车辆,至少一个处理器可以进一步被指示为使系统去除一系列帧中的不感兴趣的区域。

  在一些实施例中,为了识别一系列帧中的车辆,至少一个处理器可以进一步被指示为使系统获得对象识别模型并执行对象识别模型以识别一系列帧中的每个帧中的车辆。至少一个处理器可以进一步被指示为使所述系统关联在所述一系列帧的每一个帧中所识别的车辆。

  在一些实施例中,对象识别模型可以是You Only Look Once模型,增强Haar模型,FasterR-CNN模型或Mask R-CNN模型。

  在一些实施例中,交通标志可以是包括停车时间阈值的停车标志相关规则。为了确定车辆是否违反交通规则,可以进一步指示至少一个处理器以使系统基于一系列帧比较车辆在不同时间点的位置。至少一个处理器还可被指示为使系统基于车辆在不同时间点的位置之间的比较来确定车辆的停车时间,并确定车辆的停车时间是否小于停车时间阈值。响应于确定车辆的停车时间小于停车时间阈值,可以进一步指示至少一个处理器以使系统确定车辆违反了停车标志相关规则。

  在一些实施例中,车辆的停车时间可以是车辆的速度为零的时间段。

  在一些实施例中,为了基于车辆在不同时间点的位置之间的比较来确定车辆的停车时间,可以进一步指导至少一个处理器以使系统确定当车辆的位置开始保持不变的第一时间点并确定车辆位置开始变化的第二时间点。至少一个处理器可以进一步被指示成使系统将第一时间点和第二时间点之间的差确定为车辆的停车时间。

  在一些实施例中,为了获得车辆的信息,至少一个处理器可以被指示为使系统识别车辆的车牌号。

  在一些实施例中,为了识别车辆的车牌号,至少一个处理器被进一步指示为使系统将车牌区域定位在一系列帧中的至少一个中并识别车牌区域中的车牌号。

  在一些实施例中,响应于确定车辆违反交通规则,可以进一步指导至少一个处理器以使系统向与该违反交通车辆相关的用户终端发送交通违规通知。

  在一些实施例中,车辆的信息可以包括车辆的车牌号,车辆违反交通规则的位置,一系列帧中的至少一个或车辆违反交通规则的时间中的至少一个。

  在一些实施例中,可以将相机安装在交通标志上。

  在一些实施例中,相机可以安装在交通标志附近的车辆上。

  在一些实施例中,相机可以被包括在移动终端中。

  根据本申请的另一方面,提供了一种用于确定交通标志违规的方法。该方法可以包括获得与交通标志相对应的交通规则。该方法可以进一步包括通过至少一个相机,获取与交通标志周围的场景相关联的视频数据。视频数据可以包括一系列帧。该方法可以进一步包括在一系列帧中识别车辆,并基于一系列帧来确定车辆是否违反交通规则。响应于确定车辆违反交通规则,该方法可以进一步包括获得车辆的信息并将车辆的信息发送到服务器。

  根据本申请的又一方面,提供了一种非暂时性计算机可读介质。非暂时性计算机可读介质可以包括可执行指令,该可执行指令在由至少一个处理器执行时使至少一个处理器实现用于确定交通标志违规的方法。该方法可以包括获得与交通标志相对应的交通规则。该方法可以进一步包括通过至少一个相机,获取与交通标志周围的场景相关联的视频数据。视频数据可以包括一系列帧。该方法可以进一步包括在一系列帧中识别车辆,并基于一系列帧来确定车辆是否违反交通规则。响应于确定车辆违反交通规则,该方法可以进一步包括获得车辆的信息并将车辆的信息发送到服务器。

  本申请的一部分附加特性可以在以下描述中进行说明。通过对以下描述和相应附图的研究或者对实施例的生产或操作的了解,本申请的一部分附加特性对于本领域技术人员是明显的。通过实践或使用在下面讨论的详细示例中阐述的方法,手段和组合的各个方面,可以实现和获得本申请的特征。

  附图说明

  本申请将通过示例性实施例进行进一步描述。这些示例性实施例将通过附图进行详细描述。这些实施例是非限制性的示例性实施例,在这些实施例中,各图中相同的编号表示相似的结构,其中:

  图1是根据本申请的一些实施例所示的示例性监控系统的示意图;

  图2是根据本申请的一些实施例所示的可以在其上实现处理引擎的示例性计算设备的示例性硬件和/或软件组件的示意图;

  图3是根据本申请的一些实施例所示的可以在其上实现一个或以上终端的示例性移动设备的示例性硬件和/或软件组件的示意图;

  图4是根据本申请的一些实施例所示的示例性处理引擎的示意框图;

  图5是根据本申请的一些实施例所示的用于监控交通标志违规的示例性过程的流程图;

  图6是根据本申请的一些实施例所示的用于在一系列帧中识别车辆的示例性过程的流程图;

  图7是根据本申请的一些实施例所示的用于监控停车标志违规的示例性过程的流程图;

  图8是根据本申请的一些实施例所示的用于监控停车标志违规的示意图;

  图9A至图9C是根据本申请的一些实施例所示的与交通标志周围的场景相关联的示例性帧的示意图;

  图10是根据本发明一些实施例所示的与不同时间点相对应的车辆位置变化的示意图;以及

  图11是根据本申请的一些实施例所示的示例性交通标志违规记录的示意图。

  具体实施方式

  呈现以下描述以使本领域的任何技术人员能够制作和使用本申请,并且在特定应用及其要求的语境中提供以下描述。对于本领域的普通技术人员来讲,显然可以对所披露的实施例作出各种改变,并且在不偏离本申请的原则和范围的情况下,本申请中所定义的普遍原则可以适用于其他实施例和应用场景。因此,本申请不限于所示出的实施例,而是应被赋予与权利要求一致的最宽范围。

  本申请中所使用的术语仅出于描述特定示例实施例的目的,而非限制性的。如本申请使用的单数形式“一”、“一个”及“该”同样可以包括复数形式,除非上下文明确提示例外情形。还应当理解,如在本申请说明书中使用的术语“包括”、“包含”仅提示存在所述特征、整数、步骤、操作、组件和/或部件,但并不排除存在或添加一个或以上其它特征、整数、步骤、操作、组件、部件和/或其组合的情况。

  可以理解的是,本文使用的术语“系统”、“引擎”、“单元”、“模块”和/或“区块”是用于按升序区分不同级别的不同构件、元件、部件、部分或组件的方法。但是,如果这些术语达到相同的目的,则可能会被其他表达方式取代。

  通常,这里使用的词语“模块”、“单元”或“块”是指体现在硬件或固件中的逻辑,或者是软件指令的集合。这里描述的模块、单元或块可以实现为软件和/或硬件,并且可以存储在任何类型的非暂时性计算机可读介质或其他存储设备中。在一些实施例中,可以编译软件模块/单元/块并将其链接到可执行程序中。应当理解,软件模块可以从其他模块/单元/块或从它们自身调用,和/或可以响应检测到的事件或中断来调用。可以在计算机可读介质上提供被配置为在计算设备(例如,图2中所示的处理器210)上执行的软件模块/单元/块,所述计算机可读介质例如为光盘,数字视频盘,闪存驱动器,磁性设备,也可以是光盘或任何其他有形媒体,或作为数字下载(可以最初以压缩或可安装的格式存储,需要在执行之前进行安装,解压缩或解密)。这里的软件代码可以被部分的或全部的储存在执行操作的计算设备的存储设备中,并应用在计算设备的操作之中。软件指令可以嵌入在诸如EPROM的固件中。还应当理解,硬件模块/单元/块可以包括在连接的逻辑组件中,例如门和触发器,和/或可以包括可编程单元,例如可编程门阵列或处理器。本文描述的模块/单元/块或计算设备功能可以被实现为软件模块/单元/块,但是可以以硬件或固件来表示。通常,这里描述的模块/单元/块指的是逻辑模块/单元/块,其可以与其他模块/单元/块组合或者分成子模块/子单元/子块,尽管它们是物理组织或存储器件。该描述可适用于系统、引擎或其一部分。

  可以理解的是,除非上下文另有明确说明,当单元、引擎、模块或块被称为在另一单元、引擎、模块或块“上”、“连接”或“耦合至”另一单元、引擎、模块或块时,其可以直接在其它单元、引擎、模块或块上,与其连接或耦合或与之通信,或者可能存在中间单元、引擎、模块或块。在本申请中,术语“和/或”可包括任何一个或以上相关所列条目或其组合。

  根据以下对附图的描述,本申请的这些和其它的特征、特点以及相关结构元件的功能和操作方法,以及部件组合和制造经济性,可以变得更加显而易见,这些附图都构成本申请说明书的一部分。然而,应当理解的是,附图仅仅是为了说明和描述的目的,并不旨在限制本申请的范围。应当理解的是,附图并不是按比例绘制的。

  本申请使用的流程图示出了根据本申请公开的一些实施例所示的系统所执行的操作。应当理解的是,流程图中的操作可以不按顺序执行。相反,可以按照倒序或同时处理各种步骤。同时,也可以将一个或以上其他操作添加到这些流程图中。也可以从流程图中删除一个或以上操作。

  车辆可以包括马、马车、人力车(例如,自行车、三轮车)、电动车(例如,电动自行车、电动三轮车)、汽车(例如,出租车、公共汽车、私人汽车)、火车、地铁、轮船、飞机(例如,飞机、直升机、航天飞机、火箭、热气球)等或其任意组合。

  本申请中使用的交通标志可以是与特定交通规则相关联的标志。交通标志可以立在道路上方或路边。交通标志可以包括停车标志、避让标志、禁止停车标志、停车时间限制标志、限速标志、禁止进入标志、仅左转标志、禁止左转标志、禁止右转标志、禁止掉头标志,或其任意组合。例如,本申请中的停车标志可以指其上以白色写有“STOP”的红色八角形标志。停车标志通知驾驶员要确保没有汽车过来并且在继续前行前停车。在本申请中的禁止停车标志可以指的是上面写有红色的“禁止停车”的白色矩形标志。禁止停车标志会通知驾驶员不要在禁止停车标志附近停车。限速标志可以是白色的矩形标志,具有特定的最大限速和/或特定的最小限速,用黑色书写。速度限制标志会通知驾驶员不要超过最大速度限制和/或不低于最小速度限制。应当注意,本文描述的交通标志仅是示例性的,并且不应限制本申请的范围。例如,停车标志(禁止停车标志和/或限速标志)也可以指代具有相同或相似功能的相同或不同尺寸或形状的其他标志。在一些实施例中,本申请中描述的交通标志可以以电子屏幕的形式存在。电子屏幕上显示的内容(例如,字母、数字、图形)可以是固定的或可调整的。在一些实施例中,可以改变在交通标志的电子屏幕上显示的数字。仅作为示例,限速标志上显示的最大限速在白天可以是每小时60英里,而在夜间可以更改为每小时50英里。在一些实施例中,交通标志的类型也可以改变。例如,可以通过改变电子屏幕上显示的字母、数字和/或形状来将限速标志改变为禁止停车标志。

  本申请涉及用于监控交通标志违规的系统和方法。例如,可以获得与交通标志相对应的交通规则。例如,交通标志可以包括停车标志、停车限制标志、限速标志等。可以通过相机获得包括与交通标志周围的场景相关联的一系列帧的视频数据。可以基于例如对象识别模型来识别一系列帧中的车辆。可以基于一系列帧来确定车辆是否违反交通规则。响应于确定车辆违反交通规则,可以获得车辆的信息。车辆的示例性信息可以包括车辆的车牌号、车辆违反交通规则的位置、一系列帧中的至少一个帧或车辆违反交通规则的时间等,或其任何组合。车辆的信息可以被发送到服务器。

  图1是根据本申请的一些实施例的示例性监控系统的示意图。在一些实施例中,监控系统100可以被配置为监控交通标志周围的交通。可以在学校周围、住宅区、公园等中配置交通标志。监控系统100可以检测与违反交通标志相关联的交通规则的车辆,并记录与该车辆有关的信息。监控系统100可以包括服务器110、网络120、用户终端130、存储设备140和相机150。服务器110可以包括处理引擎112。在一些实施例中,服务器110、用户终端130、存储设备140和相机150可以经由无线连接(例如,网络120)、有线连接或其组合彼此连接和/或通信。

  在一些实施例中,服务器110可以是单个服务器,也可以是服务器组。所述服务器组可以是集中式的,也可以是分布式的(例如,服务器110可以是分布式的系统)。在一些实施例中,服务器110可以是本地的,也可以是远程的。例如,服务器110可以经由网络120访问存储在用户终端130和/或存储设备140中的信息和/或数据。又例如,服务器110可以直接连接到用户终端130和/或存储设备140以访问存储的信息和/或数据。在一些实施例中,服务器110可以在云平台上实施。仅作为示例,该云平台可以包括私有云、公共云、混合云、社区云、分布云、内部云、多层云等或其任意组合。在一些实施例中,服务器110可以在具有本申请中图2所示的一个或多个组件的计算设备200上实现。

  在一些实施例中,服务器110可以包括处理引擎112。处理引擎112可以处理与交通标志周围的交通有关的信息和/或数据。例如,处理引擎112可以在由相机150获取的视频数据中识别车辆,并确定车辆是否违反与交通标志相关联的交通规则。在一些实施例中,处理引擎112可以包括一个或以上处理引擎(例如,单核处理引擎或多核处理器)。仅作为示例,处理引擎112可以包括一个或以上硬件处理器,例如中央处理单元(CPU)、专用集成电路(ASIC)、专用指令集处理器(ASIP)、图形处理单元(GPU)、物理处理单元(PPU)、数字信号处理器(DSP)、现场可编程门阵列(FPGA)、可编程逻辑设备(PLD)、控制器、微控制器单元、精简指令集计算机(RISC)、微处理器等或其任何组合。

  网络120可以促进信息和/或数据的交换。在一些实施例中,监控系统100中的一个或以上组件(例如,服务器110、用户终端130、存储设备140和相机150)可以将信息和/或数据通过网络120发送到监控系统100中的其他组件。例如,处理引擎112可以经由网络120向用户终端130发送违反与交通标志相关联的交通规则的车辆的信息。在一些实施例中,网络120可以是有线网络或无线网络等或其任意组合。仅作为示例,网络120可以包括电缆网络、有线网络、光纤网络、电信网络、内联网、因特网、局域网(LAN)、广域网(WAN)、无线局域网(WLAN)、城域网(MAN)、广域网(WAN)、公共电话交换网(PSTN)、BluetoothTM网络、ZigBee网络、近场通信(NFC)网络或类似内容,或其任意组合。在一些实施例中,网络120可以包括一个或以上网络接入点。例如,网络120可以包括诸如基站和/或互联网交换点120-1、120-2,…之类的有线或无线网络接入点,监控系统100的一个或以上组件可以通过有线或无线网络接入点连接到网络120,以交换数据和/或信息。

  在一些实施例中,用户终端130可以包括移动设备130-1、平板计算机130-2、膝上型计算机130-3等或其任意组合。在一些实施例中,移动设备140-1可以包括智能家居设备、可穿戴设备、移动设备、虚拟现实设备、增强现实设备等,或其任何组合。在一些实施例中,智能家居设备可以包括智能照明设备、智能电器控制设备、智能监控设备、智能电视、智能摄像机、对讲机等,或其任意组合。在一些实施例中,可穿戴设备可以包括手环、鞋袜、眼镜、头盔、手表、衣物、背包、智能配饰等或其任意组合。在一些实施例中,移动设备可以包括移动电话、个人数字助理(PDA)、游戏设备、导航设备、销售点(POS)设备、膝上型计算机、台式机等,或任何它们的组合。在一些实施例中,虚拟现实设备和/或增强型虚拟现实设备可以包括虚拟现实头盔、虚拟现实眼镜、虚拟现实眼罩、增强现实头盔、增强现实眼镜、增强现实眼罩等或其任意组合。例如,虚拟现实设备和/或增强现实设备可以包括GoogleGlassTM、RiftConTM、FragmentsTM、GearVRTM等。在一些实施例中,为违背交通标志相关联的交通规则负责的司机使用的用户终端130可以接收从处理引擎112发送的通知。在一些实施例中,交通管理人员(例如,交通警察、交通控制器)可以使用用户终端130来访问存储在存储设备140中的违规记录。

  在一些实施例中,用户终端130可以是被配置为包括相机的移动终端。用户终端130可以经由用户接口向处理引擎112或安装在用户终端130中的处理器发送和/或接收与交通标志违规监控有关的信息。例如,用户终端130可以经由用户接口将由安装在用户终端130中的相机捕获的视频数据发送到安装在用户终端120中的处理引擎112或处理器。用户界面可以是在用户终端130上实现的用于监控交通标志违规的应用程序的形式。在用户终端130上实现的用户界面可以促进用户与处理引擎112之间的通信。例如,用户可以经由用户界面输入和/或选择交通标志或交通规则。处理引擎112可以经由用户界面接收输入的交通标志或交通规则。又例如,用户可以经由在用户终端130上实现的用户界面输入对交通标志违规监控的请求。在一些实施例中,响应于对监控交通标志违规的请求,用户终端130可以基于由安装在本申请中其他地方(例如,图5-7及其描述)所述的用户终端130中的相机捕获的视频数据,经由用户终端130的处理器直接确定车辆是否违反交通标志。在一些实施例中,响应于对监控交通标志违规的请求,用户终端130可以将对交通标志违章监控的请求发送到处理引擎112,用于基于由相机150或安装在本申请的其他地方所述(例如,图5-7及其描述)中的相机捕获的视频数据来确定车辆是否违反了交通标志。在一些实施例中,用户界面可以促进呈现或显示从处理引擎112接收的与交通标志违规监控有关的信息和/或数据(例如,信号)。例如,信息和/或数据可以包括指示车辆是否违反由处理引擎112生成的交通标志的结果,或者指示车辆是否违反交通标志的车辆的信息等。在一些实施例中,信息和/或数据可以被进一步配置为使用户终端130向用户显示结果。

  存储设备140可以存储数据和/或指令。在一些实施例中,存储设备140可以存储从相机150获得的数据。存储设备140可以存储处理引擎112可以执行或用来执行本申请中描述的示例性方法的数据和/或指令。在一些实施例中,存储设备140可包括大容量存储器、可移动存储器、易失性读写内存、只读内存(ROM)等或其任意组合。示例性大容量存储器可以包括磁盘、光盘、固态驱动器等。示例性可移动存储器可以包括闪存驱动器、软盘、光盘、内存卡、压缩盘、磁带等。示例性易失性读写内存可以包括随机存取内存(RAM)。示例性RAM可包括动态随机存取内存(DRAM)、双倍数据速率同步动态随机存取内存(DDRSDRAM)、静态随机存取内存(SRAM)、晶闸管随机存取内存(T-RAM)和零电容随机存取内存(Z-RAM)等。示例性ROM可以包括掩模型只读内存(MROM)、可编程只读内存(PROM)、可擦除可编程只读内存(EPROM)、电可擦除可编程只读内存(EEPROM)、光盘只读内存(CD-ROM)和数字多功能磁盘只读内存等。在一些实施例中,所述存储设备140可在云端平台上执行。仅作为示例,该云平台可以包括私有云、公共云、混合云、社区云、分布云、内部云、多层云等或其任意组合。

  在一些实施例中,存储设备140可以连接到网络120以与监控系统100中的一个或以上组件(例如,服务器110、用户终端130)通信。监控系统100中的一个或多个组件可以经由网络120访问存储在存储设备140中的数据或指令。在一些实施例中,存储设备140可以直接连接到监控系统100中的一个或以上组件或与之通信(例如,服务器110、用户终端130)。在一些实施例中,存储设备140可以是服务器110的一部分。

  相机150可以获取视频数据。在一些实施例中,所获取的视频数据可以与交通标志周围的场景相关联。仅作为示例,相机150可以是摄像机、安全相机、网络相机、智能手机相机、平板相机,笔记本电脑相机等。相机150可以被安装在交通标志上或交通标志周围的物体(例如,交通信号灯、电线杆、车辆)上。在一些实施例中,相机150可以由能量单元(例如,发电机,电力传输线,太阳能功率供应单元)供应能量。另外,相机150可以使用电池组来扩展能量。在一些实施例中,相机150可以配置有/耦合到网络模块,该网络模块使相机150能够经由网络120与处理引擎112、用户终端130和/或存储设备140连接。

  应当注意,以上描述意图是说明性的,而不是限制本申请的范围。对于本领域技术人员而言,许多替代,修改和变化将是显而易见的。本文描述的示例性实施例的特征,结构,方法和其他特性可以以各种方式组合以获得另外的和/或替代的示例性实施例。例如,相机150可以配置有存储模块、处理模块、通信模块等。然而,这些变化和修改不脱离本申请的范围。

  图2是根据本申请的一些实施例所示的可以在其上实现处理引擎的示例性计算设备的示例性硬件和/或软件组件的示意图。如图2所示,计算设备200可以包括处理器210、存储器220、输入/输出(I/O)230和通信端口240。

  处理器210(例如,逻辑电路)可以执行计算机指令(例如,程序代码)并根据本文描述的技术执行处理引擎112的功能。在一些实施例中,处理器210可以被配置为处理与监控系统100的一个或以上组件有关的数据和/或信息。例如,处理器210可以在由相机150获取的视频数据中识别车辆。又例如,处理器210可以基于一系列图像来确定所识别的车辆是否违反了与交通标志相关联的交通规则。处理器210还可被配置为识别违反与交通标志相关联的交通规则的车辆的信息。处理器210还可以将违反交通规则的车辆的信息发送到服务器110。在一些实施例中,处理器210可以向违反交通规则的与车辆相关联的用户终端130发送通知。

  在一些实施例中,处理器210可以在其中包括接口电路210-a和处理电路210-b。接口电路可以被配置为从总线(图2中未示出)接收电信号,其中电信号对结构化数据和/或指令进行编码以供处理电路进行处理。处理电路可以进行逻辑计算,然后将结论、结果和/或指令编码成电信号。然后,接口电路可以经由总线从处理电路发送电信号。

  计算机指令可以包括例如例程、程序、对象、组件、数据结构、过程、模块和功能,其执行本文描述的特定功能。例如,处理器210可以处理与从用户终端130、存储设备140和/或监控系统100的任何其他组件获得的车辆相关的信息。在一些实施例中,处理器210可以包括一个或以上硬件处理器、诸如微控制器、微处理器、精简指令集计算机(RISC)、专用集成电路(ASIC)、专用指令集处理器(ASIP)、中央处理器(CPU)、图形处理器(GPU)、物理处理器(PPU)、微控制器、数字信号处理器(DSP)、现场可编程门阵列(FPGA)、高级RISC机器(ARM)、可编程逻辑设备(PLD),能够执行一个或以上功能的任何电路或处理器等,或其任意组合。

  仅仅为了说明,在计算设备200中仅描述了一个处理器。然而,应注意,本申请中的计算设备200还可以包括多个处理器,因此,如本申请中所述的由一个处理器执行的操作和/或方法步骤也可以由多个处理器联合或分开地执行。例如,如果在本申请中,计算设备200的处理器同时执行步骤A和步骤B,则应当理解,步骤A和步骤B也可以由计算设备200中的两个或以上不同处理器联合或分别执行(例如,第一处理器执行步骤A,第二处理器执行步骤B,或者第一处理器和第二处理器共同执行步骤A和B)。

  存储器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的用于确定车辆值的程序。

  I/O230可以输入和/或输出信号、数据、信息等。在一些实施例中,I/O230可以使用户能够与处理引擎112进行交互。在一些实施例中,I/O230可以包括输入设备和输出设备。输入设备的示例可以包括键盘、鼠标、触摸屏、麦克风等、或其组合。输出设备的示例可以包括显示设备、扬声器、打印机、投影仪等或其组合。显示设备的示例可以包括液晶显示器(LCD)、基于发光二极管(LED)的显示器、平板显示器、曲面屏幕、电视设备、阴极射线管(CRT)、触摸屏屏幕等,或其任意组合。

  通信端口240可以连接到网络(例如,网络120)以促进数据通信。通信端口240可以在处理引擎112与用户终端130、相机150或存储设备140之间建立连接。该连接可以是有线连接、无线连接、可以实现数据传输和/或接收的任何其他通信连接,和/或这些连接的任意组合。有线连接可以包括例如电缆、光缆、电话线等,或其任意组合。无线连接可以包括例如BluetoothTM链路、Wi-FiTM链路、WiMaxTM链路、WLAN链路、ZigBee链路、移动网络链路(例如,3G、4G、5G)等,或其任意组合。在一些实施例中,通信端口240可以是和/或包括标准化通信端口,例如RS232、RS485等。

  图3是根据本申请的一些实施例所示的可以在其上实现用户终端的示例性移动设备的示例性硬件和/或软件组件的示意图。在一些实施例中,图3所示的移动设备300可以由用户使用。用户可以是司机、乘客、交通警察、交通控制者等。例如,交通警察或交通控制者可以经由移动设备300查看违规记录。在一些实施例中,交通警察或交通管制员可以基于违规记录和与违规记录相关联的交通规则做出处罚决定。惩罚决定可以被输入到移动设备300。又例如,违反交通规则的责任司机可以经由移动设备300接收通知,并且可以经由移动设备300在线支付罚款。

  如图3所示,移动设备300可以包括通信平台310、显示器320、图形处理单元(GPU)330、中央处理单元(CPU)340、I/O350、内存360和存储器390。在一些实施例中,任何其他合适的组件,包括但不限于系统总线或控制器(未示出),也可包括在移动设备300内。在一些实施例中,可将移动操作系统370(例如,iOSTM、AndroidTM、WindowsPhoneTM)和一个或以上应用380从存储器390加载到内存360中,以便由CPU340执行。应用程序380可以包括浏览器或任何其他合适的移动应用程序,用于从处理引擎112接收和渲染与图像处理有关的信息或其他信息。可以通过I/O350实现与信息流的用户交互,并通过网络120将其提供给处理引擎112和/或监控系统100的其他组件。

  为了实施本申请描述的各种模块、单元及其功能,计算机硬件平台可用作本文中描述的一个或以上组件的硬件平台。具有用户接口元素的计算机可用于实施个人计算机(PC)或任何其他类型的工作站或终端设备。若计算机被适当的程序化,计算机亦可用作服务器。

  本领域普通技术人员将理解,当监控系统100的元件执行时,该元件可以通过电信号和/或电磁信号来执行。例如,当处理引擎112处理诸如做出确定或识别信息的任务时,处理引擎112可以操作其处理器中的逻辑电路来处理该任务。当处理引擎112向用户终端130发送数据(例如,目标车辆的当前估计值)时,处理引擎112的处理器可以生成对数据进行编码的电信号。处理引擎112的处理器然后可以将电信号发送到输出端口。如果用户终端130通过有线网络与处理引擎112通信,则输出端口可以物理地连接至电缆,该电缆可以进一步将电信号传输至服务器110的输入端口。如果用户终端130通过无线网络与处理引擎112通信,则处理引擎112的输出端口可以是一个或以上天线,其可以将电信号转换为电磁信号。在诸如用户终端130和/或服务器110之类的电子设备中,当其处理器处理指令,发出指令和/或执行动作时,该指令和/或动作是通过电信号进行的。例如,当处理器从存储介质(例如,存储设备140)检索或保存数据时,它可以向存储介质的读/写设备发送电信号,该读/写设备可以在存储介质中读取或写入结构化数据。该结构数据可以通过电子设备的总线,以电信号的形式传输至处理器。在此,电信号可以指的是电信号、一系列电信号和/或一个或以上离散的电信号。

  图4是根据本申请的一些实施例所示的示例性处理引擎的示意框图。在一些实施例中,处理引擎112可以包括获取模块410、识别模块420、确定模块430和通信模块440。处理引擎140可以被实现在各种组件上(例如,如图2所示的计算设备200的处理器210)。例如,处理引擎140的至少一部分可以在如图2所示的计算设备或如图3所示的移动设备上实现。

  获取模块410可以获取与监控系统100有关的数据和/或信息。在一些实施例中,获取模块410可以从监控系统100的一个或以上组件,例如相机150、存储设备140、获取与监控系统100有关的数据和/或信息。例如,获取模块410可以从相机150获取视频数据。视频数据可以包括一系列帧。获取模块410可以将一系列帧发送到其他模块(例如,识别模块420、确定模块430)以进行进一步处理。又例如,获取模块410可以从存储设备140获取与交通标志相关联的交通规则。作为又一示例,获取模块410可以从存储设备140获取对象识别模型。

  识别模块420可以从与监控系统100有关的数据和/或信息中识别一个或以上对象。在一些实施例中,识别模块420可以在从获取模块410获取的一系列帧中识别车辆。一系列帧中可能有一个或以上对象。识别模块420可以识别一系列帧中的每个帧中的每个对象并且关联所识别的对象。例如,可以使用对象识别模型来识别一系列帧中的一个或以上车辆。又例如静态对象,例如建筑物、邮箱等可以从一系列帧中识别出来。在一些实施例中,识别模块420可以基于一系列帧来识别违反交通规则的车辆的信息(例如,驾驶执照ID、车牌号)。交通规则可以与交通标志相关联。

  确定模块430可以确定车辆是否违反与交通标志相关联的交通规则。确定模块430可以基于一系列帧对车辆的运动执行分析。例如,确定模块430可以通过比较一系列帧中的车辆的位置来获得与车辆的运动有关的信息。与车辆的运动有关的示例性信息可以包括车辆的停车时间、车辆的估计速度、车辆的运动轨迹等,或其任意组合。

  通信模块440可以接收信息或指令或向监控系统100的一个或以上组件发送信息或指令。在一些实施例中,通信模块440可以从用户终端130接收用户的指令。例如,该指令可以指示获取模块410获取与交通标志相关联的交通规则。又例如,该指令可以指示相机150调整每秒捕获的帧数(也被称为帧率)。在一些实施例中,通信模块440可以将违反与交通标志相关联的交通规则的车辆的信息发送到服务器。车辆的示例性信息可以包括车辆的车牌号、车辆违反交通规则的位置、一系列帧中的至少一个帧或车辆违反交通规则的时间等,或其任意组合。在一些实施例中,通信模块440可以向与违反交通规则的车辆相关联的用户终端130发送通知。

  处理引擎112中的模块可以经由有线连接或无线连接彼此连接或彼此通信。有线连接可以包括金属电缆、光缆、混合电缆等或其任何组合。无线连接可以包括局域网络(LAN)、广域网络(WAN)、蓝牙、紫蜂网络、近场通信(NFC)等或其任意组合。两个或以上模块可以合并成一个模块,以及任意一个模块可以被拆分成两个或以上单元。例如,识别模块410可以作为单个模块集成在车辆识别模块420中,该单个模块可以识别移动终端和与该移动终端相关联的目标车辆。

  应当注意的是,以上描述仅出于说明的目的而提供,并不旨在限制本申请的范围。对于本领域的普通技术人员来说,可以根据本申请的描述,做出各种各样的变化和修改。然而,这些变化和修改不脱离本申请的范围。例如,处理引擎112可以进一步包括存储模块(图4中未示出)。存储模块可以被配置为存储在由处理引擎112的任何组件执行的任何处理期间生成的数据。又例如,处理引擎112的每个组件可以分别对应于存储模块。附加地或替代地,处理引擎112的组件可以在组件之一内部共享公共存储模块。

  图5是根据本申请的一些实施例所示的用于监控交通标志违规的示例性过程的流程图。在一些实施例中,图5所示的过程500可以在图1所示的监控系统100中实现。例如,过程500可以作为指令的形式存储在存储介质(例如,存储设备140或计算设备200的存储器220)中,并且由处理器(例如,存储设备140)、服务器110的处理引擎112,计算设备200的处理器220或图4中所示的处理引擎112中的一个或以上模块调用和/或执行。下面呈现的所示过程500的操作旨在说明。在一些实施例中,过程500可以利用一个或以上未描述的附加操作和/或没有所讨论的一个或以上操作来完成。另外,图5中示出的和下面描述的过程500的操作的顺序不旨在限制性的。

  在502中,处理引擎112可以获得与交通标志相对应的交通规则。示例性交通标志可包括停车标志、禁止停车标志、停车时间限制标志、速度限制标志、避让标志、禁止进入标志、仅左转标志、禁止左转标志、禁止右转弯标志、禁止掉头标志,或其任意组合。与交通标志相对应的交通规则可以与车辆应遵守或接近交通标志的特定要求相关联。例如,与停车标志相对应的交通规则可以包括要求车辆在停车标志处完全停车至少一段时间,例如3秒。对应于禁止停车标志的交通规则可以包括禁止任何车辆在禁止停车标志附近停车。对应于停车时间限制标志的交通规则可以包括禁止任何车辆在停车时间限制标志附近停车超过预定时间长度或在预定时间段之外停车。预设时间长度可以是例如15分钟、30分钟、一个小时、两个小时等。预设时间段可以是例如从上午10:00至下午4:00,从下午7:00至下午10:00等。在一些实施例中,预设时间长度和预设时间段可以在不同区域中变化。在一些实施例中,预设时间长度和预设时间段可以显示在停车时间限制标志上。对应于速度限制标志的交通规则可以包括禁止任何车辆驾驶超过最大速度限制和/或慢于最小速度限制。例如,学校或住宅区附近的最大速度限制可能是每小时25英里。又例如,高速公路的最小速度限制可以是每小时40英里。在一些实施例中,最大速度极限和最小速度极限可以显示在速度极限标志上。

  在一些实施例中,一个或以上交通规则可以存储在存储设备140中。处理引擎112可以经由网络120从存储设备140获得与交通标志相对应的交通规则。例如,监控系统100可以在交通标志上或附近实现。用户(例如,交通警察)可以向监控系统100输入包括交通标志的类型的指令。处理引擎112可以从一个或以上交通规则中选择与交通标志相对应的交通规则。在一些实施例中,监控系统100可以自动识别在其上实现的交通标志的类型。

  在504中,相机150可以获取与交通标志周围的场景相关联的视频数据。视频数据可以包括一系列帧。视频数据的帧速率(也被称为每秒捕获的帧数)可以是例如20、25、40等。系列帧中的每个帧可以包括在交通标志周围的场景中的一个或以上对象。例如,对象可以包括车辆、行人、宠物、交通信号灯、交通标志、路灯、电线杆、树木、建筑物等,或其任何组合。处理引擎112可以基于一系列帧对交通标志周围的对象的运动执行分析。

  在一些实施例中,一系列帧可以由如图1所示的相机150获取。在一些实施例中,一系列帧可以由一个以上的相机150获取。例如,第一相机150-1(图中未示出)可以被配置为获取低分辨率视频(或图像的低分辨率帧)以用于对物体的运动进行分析。第二相机150-2(图中未示出)可以被配置为获取一个或以上高分辨率图像,以用于识别物体的信息,例如,车辆的车牌号。

  在一些实施例中,相机150可以可拆卸地安装在交通标志或交通标志附近的物体上。例如,对象可以包括交通信号灯、路灯、电线杆、树木、建筑物等,或其任何组合。当不再需要监控交通标志附近的交通时,可以从交通标志或交通标志附近的物体上卸下相机150。然后,可以将相机150安装在另一个交通标志或另一个交通标志附近的物体上,以获取与另一个交通标志附近的场景相关的视频数据。在一些实施例中,相机150可以安装在停在交通标志附近的车辆上。如本文所用,“安装在车辆上”是指被安装在车辆的外部(例如,在车顶上、在前窗上、在后视镜上)或安装在车辆的内部(例如,面板上方、车辆内部的前窗上或乘客座椅上)。当计划监控另一个交通标志时,可以驾驶车辆并将其停在另一个交通标志附近,并且安装在车辆上的相机可以监控另一个交通标志周围的交通信息。

  在506中,处理引擎112可以在一系列帧中识别车辆。处理引擎112可以经由网络120获得由相机150捕获的一系列帧。在一些实施例中,帧可以在视频场景中包括不感兴趣的区域。例如,不感兴趣的区域可以包括车道,在该车道上车辆的运动不受交通标志的限制。又例如,不感兴趣的区域可以包括静态物体,诸如树、建筑物、被道路停放的车辆等,或其任何组合。在一些实施例中,处理引擎112可以在识别一系列帧中的车辆之前删除一系列帧中的不感兴趣区域。

  在一些实施例中,处理引擎112可以使用对象识别模型来识别车辆。可以从存储设备140获得识别模型。处理引擎112可以执行对象识别模型以在一系列帧的每一个中识别车辆。可以将一系列帧中的每个帧中的识别出的车辆进行关联,并且可以基于相关联的一系列帧来分析识别出的车辆的运动。关于车辆识别的细节可以在与图6相关联的描述中找到。

  在508,处理引擎112可以确定车辆是否违反交通规则。在一些实施例中,处理引擎112可以通过分析与车辆的运动有关的信息来确定车辆是否违反交通规则。可以基于对一系列帧的分析来获得与车辆的运动有关的信息。例如,该信息可以包括车辆是否在交通标志附近停车、车辆的停车时间、估计速度、车辆的运动轨迹等,或其任意组合。如本文所用,“停车时间”是指车辆的速度为零的时间段。仅作为示例,监控系统可以与停车标志相关联,并且处理引擎112可以基于停车时间确定车辆是否违反了与停车标志相对应的交通规则(即,停车标志相关联的规则)。如果车辆的停车时间大于或等于与停车标志相关联的规则所要求的阈值,则处理引擎112可以确定车辆没有违反停车标志关联规则。如果车辆的停车时间小于阈值,则处理引擎112可以确定车辆违反交通规则。

  响应于确定车辆没有违反交通规则,过程500可以进行到步骤504以获取与交通标志周围的场景相关联的另一系列帧。响应于确定车辆违反交通规则,过程500可以进行到步骤510。

  在510中,处理引擎112可以获得车辆的信息。车辆的示例性信息可以包括车辆的车牌号、车辆违反交通规则的位置、包括车辆违反交通规则的一系列帧中的至少一个、车辆违反交通规则的时间等或其任意组合。车辆的车牌号可用于识别违反交通规则的司机。也可以使用其他方法来识别违规的司机,本申请不对其进行限制。例如,可以基于面部识别技术来识别司机。

  在一些实施例中,车辆的车牌号的识别可以包括在一系列帧中的至少一个帧定位车牌区域。车牌区域可包括可用于将车牌区域与车辆的其他部分区分开的特征。例如,车牌区域的颜色可以与车辆的其他部分的颜色不同。又例如,车牌区域可以具有特征尺寸和形状。在一些实施例中,可以通过车牌区域定位算法来定位车牌区域。例如,车牌区域定位算法可以包括基于边缘特征(例如,车牌区域的直边界或矩形角)的算法、基于颜色特征的算法等。在一些实施例中,还可以使用机器学习技术(例如,Adaboosting算法)来定位车牌区域。在一些实施例中,处理引擎112可以识别车牌区域中的车牌号。例如,可以基于车牌号识别模型(例如神经网络模型)来识别车牌号。

  在一些实施例中,车辆可以与电子车牌相关联。如本文所使用的,“电子车牌”是指可以发射与车辆的车牌号和/或与车辆的识别有关的其他信息相关联的无线信号的设备。在一些实施例中,电子牌照可以在车辆的内置部件上实现,例如车辆的通信部件。替代地,电子牌照可以是安装在车辆上的附加部件。例如,电子牌照可以是射频身份卡。应当注意,其他具有相同或相似功能的设备也可以视为电子车牌。在一些实施例中,通信模块(例如,处理器112的通信模块440)可以向违反与交通标志相对应的交通规则的车辆的电子牌照发送请求。电子牌照可以接收请求,并且将与违反交通规则的车辆的标识有关的信息(例如,牌照号)发送给通信模块440。

  在512中,处理引擎112可以将车辆的信息发送到服务器110。在一些实施例中,车辆的信息可以被集成到如图11所示的违规记录中。违规记录可以被发送到服务器110。例如,发送到服务器110的违章记录可以包括记录号、违章类型、违反交通规则的车辆的车牌号、车辆违反交通规则的时间、车辆违反交通规则的位置等,或其任何组合。违反类型可以与车辆违反的交通标志的类型相关联。车辆违反交通规则的时间可以包括发生违规的一天中的日期和/或时间点。

  在一些实施例中,违规记录可以被发送到用户终端(例如,用户终端130)。用户(例如,警察、交通管制员)可以经由用户终端130的用户界面查看违规记录。在一些实施例中,用户可以通过输入记录号、车牌号、司机的姓名、司机的身份证号等或其任意组合来搜索违规记录。在一些实施例中,用户可以对违规记录执行统计分析。例如,用户可以确定一个区域中的违规记录的总数,和/或在一段时间内该区域中的违规记录的总数的变化。又例如,用户可以确定在该区域中最常发生的违规类型,并增加对该区域中违规类型的监控。在一些实施例中,用户可以例如在图11所示的表中添加违规记录。用户还可以删除违规记录。在一些实施例中,用户可以基于违规记录,根据相关联的交通规则来确定对违规负责的司机的处罚决定。

  在一些实施例中,过程500可以进一步包括向与违反交通规则的车辆相关联的用户终端(例如,用户终端130)发送通知。违反车辆交通规则的责任司机可以使用用户终端130。例如,该通知可以包括违规类型、车辆违反交通规则的时间、车辆违反交通规则的位置、惩罚决定、司机应对惩罚的截止日期等,或其任何组合。该通知可以作为文本消息、电子邮件、与交通违规通知服务相关联的应用程序的消息等发送给司机等,或者以其任意组合。在一些实施例中,惩罚可以包括罚款。司机可以在线或通过其他方式支付罚款。在一些实施例中,惩罚可以包括暂停驾驶执照,其禁止司机在一段时间内或永久驾驶任何车辆或某种类型的车辆。

  应当注意的是,以上描述仅出于说明的目的而提供,并不旨在限制本申请的范围。对于本领域的普通技术人员来说,可以根据本申请的描述,做出各种各样的变化和修改。然而,这些变化和修改不脱离本申请的范围。例如,不采用视频数据,在504中,相机150可以以预定时间间隔捕获一个或以上图像。预定时间间隔可以是0.1s,0.5s,1s,1.5s等。

  图6是根据本申请的一些实施例所示的用于识别一系列帧中的车辆的示例性过程的流程图。在一些实施例中,过程600可以在图1所示的监控系统100中实现。例如,过程600可以作为指令的形式存储在存储介质(例如,存储设备140或计算设备200的存储装置220)中,并由处理器(例如,处理器600)调用和/或执行。服务器110的处理引擎112,计算设备200的处理器220或图4中所示的处理引擎112中的一个或以上模块。下面呈现的所示过程600的操作旨在进行说明。在一些实施例中,过程600可以利用一个或以上未描述的附加操作和/或没有所讨论的一个或以上操作来完成。另外,图6中所示和以下描述的过程600的操作的顺序并非旨在限制。

  在602中,处理引擎112可以获得对象识别模型。在一些实施例中,对象识别模型可以包括训练的机器学习模型。例如,训练后的机器学习模型可以包括You only look once(YOLO)模型、增强Haar模型、FasterR-CNN模型、Mask R-CNN模型等,或其任意组合。在一些实施例中,处理引擎112可以经由网络120直接从存储设备140获得对象识别模型。在一些实施例中,处理引擎112可以获得机器学习模型并训练机器学习模型。例如,可以使用一组样本图像和与该组样本图像相对应的一组对象识别结果(例如,正或负标签、对象类型的标签)来训练机器学习模型。训练后的机器学习模型可以用作对象识别模型,用于识别一系列帧中的每个帧中的车辆。

  在604中,处理引擎112可以执行对象识别模型以识别一系列帧中的每个帧中的一个或以上车辆。在一些实施例中,一系列帧中的每一个可以包括一个或以上物体、例如、车辆、行人、宠物、交通信号灯、交通标志、路灯、电线杆、树木、建筑物等,或其任何组合。在一些实施例中,处理引擎112可以在执行对象识别模型之前删除一系列帧中的不感兴趣的区域。诸如删除不感兴趣区域的过程可以节省用于识别车辆的处理时间。不感兴趣的区域可以包括在一定时间段内保持静止的物体,例如交通信号灯、交通标志、路灯、电线杆、树木、建筑物等,或其任何组合。不感兴趣的区域还可以包括车道,在该车道上车辆的运动不受交通规则的限制。

  在一些实施例中,处理引擎112可以执行对象识别模型以识别一系列帧中的每一个中的一个或以上对象中的任何车辆。如果在一系列帧中没有识别出车辆,则处理引擎112可以不对该系列帧进行进一步的处理。如果在一系列帧中标识了一个或以上车辆,则过程600可以进行到操作606。

  在606中,处理引擎112可以使一系列帧中的每个帧中的识别出的车辆关联起来。在一些实施例中,可以使用对象跟踪算法来关联所识别的车辆。例如,对象跟踪算法可以包括均值漂移跟踪算法、连续自适应均值漂移(CamShift)算法、学习多域卷积神经网络(MDNet)算法、分层卷积特征(HCF)算法等,或其任何组合。仅作为示例,处理引擎112可以将第一对象识别为该系列帧的第一帧中的第一车辆,并且将第二对象识别为该系列帧的第二帧中的第二车辆。在一些实施例中,处理引擎112可以确定第一车辆和第二车辆之间的相似度。如果相似度低于预设阈值,则可以将第一车辆和第二车辆指定为不同的车辆。如果相似度高于或等于预设阈值,则可以将第一车辆和第二车辆指定为同一车辆(即,关联起来)。类似地,可以识别并关联一系列帧中的其他对象。处理引擎112可以进一步基于一系列帧来确定一个或以上识别出的车辆是否违反了与交通标志相对应的交通规则(如操作508中所述)。

  图7是根据本申请的一些实施例所示的用于监控停车标志违规的示例性过程700的流程图。在一些实施例中,过程700可以在图1所示的监控系统100中实现。例如,过程700可以作为指令的形式存储在存储介质(例如,存储设备140或计算设备200的存储器220)中,并由处理器(例如,存储设备140)、服务器110的处理引擎112、计算设备200的处理器220或图4中所示的处理引擎112中的一个或以上模块调用和/或执行。以下呈现的所示过程700的操作旨在说明。在一些实施例中,过程700可以利用一个或以上未描述的附加操作和/或没有所讨论的一个或以上操作来完成。另外,图7中所示和以下描述的过程500的操作的顺序并非旨在限制。

  在702中,处理引擎112可以获得与停车标志相对应的停车标志关联规则。与停车标志相关的规则可能要求车辆在停车标志附近完全停车超过停车时间阈值T0。在一些实施例中,处理引擎112可以获得车辆的实际停车时间T1(在本申请中也被称为停车时间T1或停车时间),并将车辆的实际停车时间T1与停车时间阈值T0进行比较。确定车辆是否违反停车标志相关规则。在一些实施例中,处理引擎112可以经由网络120从存储设备140获得与停车标志相关联的规则。

  在704中,照相机150可以获取与停车标志周围的场景相关联的视频数据。视频数据可以包括一系列帧。关于一系列帧的获取的细节可以在与图5中的操作504相关联的描述中找到。

  在706,处理引擎112可以在一系列帧中识别车辆。在一些实施例中,处理引擎112可以使用对象识别模型来识别车辆。可以在与图5中的操作506相关联的描述中找到关于在一系列帧中的车辆识别的细节。

  在708中,处理引擎112可以基于一系列帧比较车辆在不同时间点的位置。例如,处理引擎112可以将当前帧中的车辆位置与先前帧中的车辆位置进行比较。在图10中可以找到对应于不同时间点的示例性车辆位置变化。如本文所使用的,可以基于一系列帧中车辆的中心点的位置变化来估计位置变化。也可以实现基于一系列帧来估计车辆的位置变化的其他方法,本发明不限于此。例如,当车辆越来越靠近相机150时,车辆可能在一系列图像中显得更大。一系列帧中车辆尺寸的变化可以用于估计一系列帧中车辆的位置变化。

  在710中,处理引擎112可以基于车辆在不同时间点的位置之间的比较结果来确定车辆的停车时间T1。在一些实施例中,处理引擎可以确定当车辆的位置开始不变时(即,当车辆完全停车时)的第一时间点和当车辆的位置开始改变时(即,当车辆开始行驶时)的第二时间点。第一时间点和第二时间点之间的差可以被指定为车辆的停车时间。关于获得停车时间T1的详细方法和计算可以在图10及其描述中找到。

  在712中,处理引擎112可以获得与停车标志相关规则相对应的停车时间阈值T0。停车时间阈值T0可以由与停车标志相关联的规则定义。在一些实施例中,不同的国家、州/省、城市、地区、街区等的停车时间阈值T0可以变化。在一些实施例中,停车时间阈值T0可以取决于时间和交通流量。例如,在交通高峰时段,出于安全原因,可以将停车时间阈值T0设置为3s。在非高峰时段,停车时间阈值T0可设置为2s。在一些实施例中,处理引擎112可以经由网络120从存储设备140获得停车时间阈值T0。

  在714,处理引擎112可以确定T1是否小于T0。响应于确定T1小于T0,处理引擎112可以进行到716,并确定车辆违反了停车标志相关规则。如结合图5中的操作510和512所述,处理引擎112可以获取车辆的信息并将车辆的信息发送到服务器110。响应于确定T1不小于T0(即,T1大于或等于T0),处理引擎即可以进行到718,并确定车辆没有违反停车标志相关规则。

  图8是根据本申请的一些实施例所示的用于监控停车标志违反的示意图。如图8所示,在十字路口处设置停车标志810。在一些实施例中,停车标志810可包括单向停车标志、两向停车标志或四向停车标志等。应当注意,图8仅用于说明目的。例如,在相交处可以有一个或以上停车标志(例如,2个、4个、8个)。

  相机820安装在停车标志810上。相机820可以被配置为获取与交通标志810周围的场景相关联的视频数据。视频数据可以包括在不同时间点捕获的一系列帧。与停车标志关联的规则可能要求车辆830在停车标志810周围完全停车的时间超过停车时间阈值。处理引擎112可基于本申请中其他地方所述的一系列帧来确定车辆830是否违反停车标志关联规则(例如,图7及其描述)。

  应当注意,图8中示出的示例及其上面的描述仅出于说明的目的而提供,并且不旨在限制本申请的范围。对于本领域的普通技术人员来说,可以根据本申请的描述,做出各种各样的变化和修改。然而,这些变化和修改不脱离本申请的范围。例如,相机820也可以安装在交通信号灯、路灯、电线杆、树木、建筑物、在交通标志附近停下的车辆上等,或其任意组合。

  图9A至图9C是根据本申请的一些实施例所示的与交通标志周围的场景相关联的示例性帧的示意图。在一些实施例中,处理引擎112可以在一系列帧中识别车辆并且关联已识别的车辆。例如,图9A中的物体910-1、图9B中的物体910-2和图9C中的物体910-3可以分别被识别为车辆。处理引擎112可以确定对象910-1、910-2和910-3之间的相似度。对象910-1、910-2和910-3之间的相似度可以大于预设阈值。对象910-1、910-2和910-3可以与同一车辆相关。处理引擎112可以本申请中其他地方所描述的那样基于一系列帧来确定所识别的车辆是否违反了与交通标志相对应的交通规则(例如,图5及其描述)。在一些实施例中,可以确定图9A中的对象920-1、图9B中的对象920-2和图9C中的对象920-3不是同一车辆并且可以不相关。处理引擎112可以不对对象920-1、920-2和920-3进行任何进一步的处理(例如,判断是否违反交通规则)。

  应当注意的是,以上描述仅出于说明的目的而提供,并不旨在限制本申请的范围。对于本领域的普通技术人员来说,可以根据本申请的描述,做出各种各样的变化和修改。然而,这些变化和修改不脱离本申请的范围。例如,在一系列图像中可以识别出一个或以上车辆。处理引擎112可以确定一个或以上车辆中的每一个车辆是否违反交通规则。

  图10是根据本申请的一些实施例所示的与不同时间点相对应的车辆的位置变化的示意图。如图所示,沿车辆行驶方向在t2、t3、t4的位置变化(即、从t1到t2、从t2到t3、从t3到t4的位置变化)为2厘米、1厘米、0厘米,分别表示车辆从t1到t3的减速(或制动)过程。在t4时车辆的位置与在t3时车辆的位置相同。换句话说,在t3(即,第一时间点),车辆的位置开始不变(即,车辆停车)。从t4到t7,位置变化保持为0厘米,这表明车辆从t3到t6是完全停止的。在t8和t9,位置变化增加,这可以指示车辆在t7(即第二时间点)开始移动并且可以从t7加速到t9。从t3到t7的时间段可以被确定为停车时间T1。

  应当注意,图10所示的时间点和位置变化仅是出于说明的目的而提供的,而无意于限制本申请的范围。对于本领域的普通技术人员来说,可以根据本申请的描述,做出各种各样的变化和修改。然而,这些变化和修改不脱离本申请的范围。例如,处理引擎112可以基于一系列图像中车辆的尺寸变化来估计车辆的位置变化。又例如,处理引擎112可以基于一系列图像来估计车辆在不同时间点的速度。

  图11是根据本申请的一些实施例所示的示例性交通标志违规记录的示意图。如图11所示,违章记录可以包括记录号、违章类型、车牌号、车辆违反交通规则的时间、车辆违反交通规则的位置等,或其任意组合。在一些实施例中,图11中所示的违规记录可以与由位于不同交通标志上或附近的不同相机150获取的视频数据相关联。在一些实施例中,违规记录可以与同一相机150在不同位置和不同时间获取的视频数据相关联。相机150可以被安装在诸如车辆、无人机(UAV)等物体上。可以通过移动安装有相机150的物体来调节相机150的位置。

  仅作为示例,违规记录18000001可以与停车标志违规记录相关联。违反停车标志关联规则的车辆的车牌号可能是1ABC234。在一些实施例中,违规记录18000001可以进一步包括与违反停车标志关联的规则的车辆有关的实际停车时间。实际停车时间可以由监控系统100确定。处理引擎112或用户可以将实际停车时间与停车时间阈值T0进行比较。与违规记录18000001相关联的惩罚决定可以基于实际停车时间与停车时间阈值T0之间的差。又例如,违规记录18000002可以与对应于禁止停车标志的交通规则相关联。违反与禁止停车标志相关的交通规则的车辆的车牌号可以是2DEF567。在一些实施例中,违规记录18000002可以进一步包括实际停车时间。与违规记录18000002相关联的惩罚决定可以基于实际停车时间。作为又一个示例,违规记录180000003可以与对应于限速标志的交通规则相关联。违反与限速标志相关的交通规则的车辆的车牌号可能是3GHI890。在一些实施例中,违反记录180000003可以进一步包括违反与限速标志相关联的交通规则的车辆的实际速度。与违规记录18000002相关联的惩罚决定可以基于车辆的实际速度。

  应该注意的是,图11中的表格和信息仅用于说明。车辆的信息可以以其他形式(诸如图,数据库等)或其任何组合被发送到服务器110。也可以将与违反交通规则的车辆相关联的其他信息发送到服务器110,例如,对违规负责的司机的姓名和/或身份编号、违规的证据、处罚决定等,或其任何组合。在一些实施例中,一系列帧中的至少一个帧可以被发送到服务器110和/或存储在存储设备140中,作为与车辆相关联的违规的证据。在一些实施例中,处理引擎112可以基于违规记录,根据相关联的交通规则来确定对负责违规的司机的处罚决定。

  上文已对基本概念做了描述,显然,对于阅读此申请后的本领域的普通技术人员来说,上述发明披露仅作为示例,并不构成对本申请的限制。虽然此处并未明确说明,但本领域的普通技术人员可能会对本申请进行各种修改、改进和修正。该类修改、改进和修正在本申请中被建议,所以该类修改、改进、修正仍属于本申请示范实施例的精神和范围。

  同时,本申请使用了特定词语来描述本申请的实施例。例如“一个实施例”、“一实施例”、和/或“一些实施例”意指与本申请至少一个实施例相关的某一特征、结构或特性。因此,应当强调并注意的是,本说明书中在不同位置两次或以上提及的“一实施例”或“一个实施例”或“一替代性实施例”并不一定是指同一实施例。此外,本申请的一个或以上实施例中的某些特征、结构或特点可以进行适当的组合。

  此外,本领域的普通技术人员可以理解,本申请的各方面可以通过若干具有可专利性的种类或情况进行说明和描述,包括任何新的和有用的过程、机器、产品或物质的组合,或对其任何新的和有用的改进。因此,本申请的各方面可以完全以硬件,完全以软件(包括固件、驻留软件、微代码等)来实现,或者以软件和硬件的结合来实现,这些实现在本文中通常都统称为“单元”。模块”或“系统”。此外,本申请的各方面可以采取体现在其上体现有计算机可读程序代码的一个或以上计算机可读介质中体现的计算机程序产品的形式。

  计算机可读信号介质可以包含一个内含有计算机程序代码的传播数据信号,例如,在基带上或作为载波的一部分。此类传播信号可以有多种形式,包括电磁形式、光形式等或任何合适的组合。计算机可读信号介质可以是除计算机可读存储介质之外的任何计算机可读介质,该介质可以通过连接至一个指令执行系统、装置或设备以实现通信、传播或传输供使用的程序。位于计算机可读信号介质上的程序代码可以通过任何合适的介质进行传播,包括无线电、电缆、光纤电缆、RF等,或任何上述介质的组合。

  可以以一种或多种编程语言的任何组合来编写用于执行本公开的各方面的操作的计算机程序代码,包括面向对象的编程语言,例如Java、Scala、Smalltalk、Eiffel、JADE、Emerald、C++、C#、VB.NET、Python等,以及传统的程序编程语言,例如“C”编程语言,VisualBasic,Fortran2003,Perl,COBOL2002,PHP,ABAP,动态编程语言(例如Python,Ruby和Groovy)或其他编程语言。该程序代码可以完全在用户计算机上运行、或作为独立的软件包在用户计算机上运行、或部分在用户计算机上运行部分在远程计算机运行、或完全在远程计算机或服务器上运行。在后一种情况下,远程计算机可以通过任何类型的网络(包括局域网(LAN)或广域网(WAN))连接到用户计算机,或者可以与外部计算机建立连接(例如,通过使用网络服务提供商的网络)或在云计算环境中或作为服务提供,例如,软件服务(SaaS)。

  此外,除非权利要求中明确说明,本申请所述处理元素和序列的顺序、数字字母的使用、或其它名称的使用,并非用于限定本申请流程和方法的顺序。尽管上述披露中通过各种示例讨论了一些目前认为有用的发明实施例,但应当理解的是,该类细节仅起到说明的目的,附加的权利要求并不仅限于披露的实施例,相反,权利要求旨在覆盖所有符合本申请实施例实质和范围的修正和等价组合。例如,尽管上述各种组件的实现可以体现在硬件设备中,但也可以实现为纯软件解决方案,例如,在现有服务器或移动设备上的安装。

  同理,应当注意的是,为了简化本申请披露的表述,从而帮助对一个或以上发明实施例的理解,前文对本申请的实施例的描述中,有时会将多种特征归并至一个实施例、附图或对其的描述中。然而,本申请的该方法不应被解释为反映所声称的待扫描对象物质需要比每个权利要求中明确记载的更多特征的意图。实际上,实施例的特征要少于上述披露的单个实施例的全部特征。

《监控交通标志违规的系统和方法.doc》
将本文的Word文档下载到电脑,方便收藏和打印
推荐度:
点击下载文档

文档为doc格式(或pdf格式)