视频模式中的异步对象ROI检测方法及系统与流程

文档序号:17624541发布日期:2019-05-10 23:30阅读:302来源:国知局
视频模式中的异步对象ROI检测方法及系统与流程
本发明涉及的是一种图像处理领域的技术,具体是一种基于人工智能的图像数据处理方法和用于执行该处理的图像数据传感系统。
背景技术
:感兴趣区域(roi)是为特定目的而识别的图像像素的子集。这个概念通常用于图像和视觉相关的应用中。通常,从单个场景需要几个对象,以及它们在图像中的位置。例如,在监视系统中,系统通常集中在几个特定的主题,例如车辆牌照、脸部等。现有多种用于roi提取的机器学习方法,包括支持向量机(svm)、adaboost和卷积神经网络(cnn)。但暂时没有一种通用方法可以检测具有相同参数的所有类型的对象。现有一种通用直接的“同时推测”的roi提取技术,通过在同一帧内应用不同的目标探测器(使用不同的方法或具有不同参数的相同方法),一次从一个帧中探测所有需要的roi,但该技术需要长处理时间、大功率控制和高输出传输带宽。技术实现要素:本发明针对现有技术存在的上述不足,提出一种视频模式中的异步对象roi检测方法及系统。本发明是通过以下技术方案实现的:本发明涉及一种图像数据处理方法,包括:接收若干帧的帧图像数据;接收若干控制规则组,其中每条控制规则对应一帧图像数据且该规则定义若干处理区域中的一个以及若干对象探测器中的一个;通过位置和类别识别每帧中的感兴趣区域,即采用控制规则定义的对象探测器应用于控制规则定义的处理区域的图像数据中;根据识别到的感兴趣区域确定最终感兴趣区域并输出。本方法在具体实现时进一步优选包括至少一个以下特征:所述的确定最终感兴趣区域包括:根据识别到的感兴趣区域的位置确定最终感兴趣区域的最终位置。所述的识别每帧中的感兴趣区域包括:通过识别类别置信度值实现,该类别置信度值表示已识别类别的置信度。所述的确定最终感兴趣区域进一步包括:从感兴趣区域的类别组中确定一组最终感兴趣区域的类别。所述的确定一组最终感兴趣区域的类别优选为:根据类别置信度值从类别组中选择一个类别。所述的从类别组中选择一个类别优选为:选择类别组中具有最高类别置信度值的类别。本发明涉及一种图像数据传感系统,包括:图像采集单元;用于从图像采集单元接收帧图像数据的帧输入单元;用于接收若干控制规则组的规则输入单元,该控制规则组包括每帧对应的控制规则,其中每个规则定义若干处理区域中的一个以及若干对象探测器中的一个;用于通过位置和类别来识别每帧中的感兴趣区域的处理单元,该处理单元具体将控制规则定义的对象探测器应用于控制规则定义的处理区域的图像数据中;用于从识别到的感兴趣区域中确定最终感兴趣区域的投票单元;以及用于输出最终感兴趣区域的报告单元。所述的图像数据传感系统优选进一步包括:所述的投票单元进一步根据所述的感兴趣区域的位置确定最终感兴趣区域的最终位置。所述的处理单元进一步实现识别类别置信度值,该类别置信度值表示所有已识别类别的置信度。所述的投票单元进一步从感兴趣区域的类别组中确定最终感兴趣区域的类别。为了确定最终感兴趣区域的类别,所述的投票单元进一步根据类别置信度值从类别组中选择一个类别。为了从类别组中选择一个类别,所述的投票单元进一步从类别组中选择具有最高类别置信度值一个类别。本发明涉及一种基于硬件处理器可执行的指令进行编码的非暂时性机器可读存储介质,包括:供硬件处理器执行图像数据处理的指令,该图像数据处理包括:从图像采集单元获得帧图像数据;接收控制规则组,其中每条控制规则对应一帧图像数据且该规则定义一个处理区域及一个对象探测器;通过位置和类别识别每帧中的感兴趣区域,即采用控制规则定义的对象探测器应用于控制规则定义的处理区域的图像数据中;根据识别到的感兴趣区域确定最终感兴趣区域并输出。所述的介质优选进一步包括:所述的确定最终感兴趣区域包括:根据识别到的感兴趣区域的位置确定最终感兴趣区域的最终位置。所述的识别每帧中的感兴趣区域包括:通过识别类别置信度值实现,该类别置信度值表示已识别类别的置信度。所述的确定最终感兴趣区域进一步包括:从感兴趣区域的类别组中确定一组最终感兴趣区域的类别。所述的确定一组最终感兴趣区域的类别优选为:根据类别置信度值从类别组中选择一个类别。所述的从类别组中选择一个类别优选为:选择类别组中具有最高类别置信度值的类别。附图说明图1为实施例中的用于传送由基于人工智能(ai)的图像传感器捕获的视频帧图像数据的系统示意图;图2为用于从单个图像进行roi检测的常规过程示意图;图3为实施例中的用于从帧序列中检测异步对象roi的基于ai的图像数据传感系统中的数据流示意图;图4为实施例中的用于从帧序列进行异步roi检测的数据处理流程示意图;图5为roi检测中同步探测的示例输出示意图;图6为实施例中的对象rois检测中异步推测的示例图;图7为实施例中的图像数据处理方法的流程图;图8为实施例中的用于实现基于ai的图像数据传感系统的至少一个功能的计算机系统的框图。具体实施方式本实施例涉及探测视频帧中的对象的感兴趣区域(roi)。特别地,当要在视频中确定多个对象的roi时,本发明从若干帧中探测得多个局部roi,而不是从每帧中同时探测所有结果,从而具备包括减少处理时间、功耗和传输带宽等优点。本发明采用异步推测技术,从视频中的每帧探测得到多个局部roi,并在不同的对象探测器之间进行切换控制。每个局部roi取自一个预定义类型的对象类别、一个预定义的处理区域或其组合。该技术利用了所需对象在视频中的连续多帧之间不会发生很大变化的事实。在n个不同的类别且图像被划分为m个处理区域的场合下,本发明的总成本(包括计算时间、功耗或roi传输带宽)则大约是现有同步探测技术成本的1/(n*m)。以下实施例中,通过人工智能(ai)图像识别技术确定至少一个roi的方法称为“视频模式下的异步对象roi推测技术”。根据该技术可以在保留图像数据的关键内容的特异性的前提下,通过更窄的带宽数据通信链路传输帧图像数据。在一些实现场合下,用于执行基于ai的图像数据传感系统可安装在交通信号附近的柱子上,用于道路的人行横道等。从数据传感系统获得的图像数据可输出至本地系统或输出至云系统以进行进一步的图像处理。按此方式下,图像数据的关键内容可包括有价值的信息,如:人、车辆的身份等。如图1所示,为根据各种实施例所述的用于传送由基于人工智能(ai)的图像传感器捕获的视频帧图像数据的示例性系统100。图中,系统100包括基于人工智能(ai)的图像数据传感系统102、本地系统104和云系统106。基于ai的图像数据传感系统102用于从现实世界获得原始视频帧图像数据并执行基于ai的图像数据处理。具体地:基于ai的图像数据传感系统102用于从图像传感器阵列获得原始视频帧图像数据、对所获得的原始视频帧图像数据进行预处理,以提取关键信息。通过预处理,图像数据传感系统102可以将原始视频帧数据的带宽减小到可通过第一数据链路108传输的较低带宽数据流。在提取关键信息时,基于ai的图像数据传感系统102用于确定原始视频帧数据的哪一部分可能包含关键图像数据并需要保存和确定,哪一部分可能包含可被压缩以减少整体数据带宽的非关键图像数据。下面将描述基于ai的图像数据处理的更多细节。在一些实现场合下,基于ai的图像数据传感系统102为芯片形式,在该芯片上设有图像传感器阵列。在一些实现场合下,基于ai的图像数据传感系统102进一步包括芯片上的能够执行基于ai的图像数据处理的图像信号处理器(isp)。所述的基于ai的图像数据传感系统102可安装在柱子上,以捕获其周围的图像,图像数据传感系统102的输出图像数据可以是原始或isp处理后的格式,如:yuv或motion-jpeg格式;将输出图像数据通过第一数据链路108发送至本地系统104中的本地数据处理单元110。第一数据链路108可以是有线链路或无线链路,其中无线链路可以是任何适用的无线数据通信链路,如:wifi、蓝牙、zigbee等。所述的本地系统104为设置于基于ai的图像数据传感系统102附近且优选为用于执行具有不同目的的额外图像数据处理的计算系统实现。例如,当基于ai的图像数据传感系统102安装在柱子上来捕获周围环境的图像时,本地系统104优选为根据图像数据传感系统102的输出图像数据为行人和车辆进行交通道路信号的自动控制。优选地,本地数据处理单元110通过可编程门阵列(fpga)、图形处理单元(gpu)、张量处理单元(tpu)、网络处理单元(npu)和/或中央处理单元(cpu)实现。所述的图像数据传感系统102优选通过混合信号硅工艺来制造,例如,90纳米的混合信号硅工艺,该工艺能够将数字mosfet和模拟mosfet作为基于ai的图像数据传感系统102的传感器元件。类似的,可使用数字mosfet来制造本地数据处理单元110。因此,可采用非常先进的硅工艺,例如,14nm的工艺,以实现高性能。因此,优选将isp布置在本地系统104中,而不是在基于ai的图像数据传感系统102内使用片上isp。所述的本地系统104进一步包括:可选的本地存储设备112,用于存储由本地数据处理单元110处理的图像数据。由于第一数据链路108的带宽和/或本地数据处理单元110的处理能力通常是有限的。因此,在很多应用场合中能够有效利用的基于ai的图像数据传感系统102的分辨率和帧速率将受到很大限制。本地系统104的输出图像数据通过第二数据链路114来发送至云系统106。所述的云系统106与本地系统104和基于ai的图像数据传感系统102分开布置并通过用于不同目的的额外图像数据处理的计算系统实现。例如,当本地系统104安装在柱子上来捕获周围环境的图像时,云系统106则通过执行本地系统104的操作和/或对从本地系统104获得的图像数据执行数据分析的服务器计算系统实现。所述的数据分析可包括交通分析、对车辆、人、动物的监控等。所述的云系统106进一步包括云数据处理单元116和可选的云存储设备118。优选地,所述的云数据处理单元116具有比本地数据处理单元110更强大的处理能力,且可选的云存储设备118具有比可选的本地存储设备112更大的存储容量。在特定的实现场合下,第二数据链路114的带宽相比本地数据处理单元110的处理能力会受到更多显著的限制。如图2所示,为用于从单个图像检测roi的现有过程。输入单元200加载若干不同的对象探测器及相对应的可确定roi的训练参数。经过训练的参数代表感兴趣对象的基本特征。每个对象探测器可实现任何机器学习策略,包括支持向量机(svm)、adaboost、卷积神经网络(cnn)等。通过预先定义图像处理的像素块的大小,一同步探测单元210通过获得单帧图像并在以每个像素为中心的每个块上应用每个对象探测器及其参数以识别roi并提供相应的置信度值。投票单元220根据来自不同探测器的最大置信度值标记每个roi及其类别,并输出该信息。如图3所示,为本实施例所述的用于异步推测帧序列的对象roi的基于ai的图像数据传感系统的示例性数据流,该基于ai的图像数据传感系统包括输入单元300、处理单元320以及投票单元340。与现有的同步探测技术不同,本实施例进一步包括控制单元310。所述的输入单元300、处理单元320、投票单元340及控制单元310均可通过图8所示的电路和/或基于软件的计算机系统实现。所述的输入单元300中加载若干不同的对象探测器组及其对应用于确定对象roi的经训练的训练参数。经训练的参数代表感兴趣对象的基本特征。每个对象探测器可采用任何机器学习策略,包括支持向量机(svm)、adaboost、卷积神经网络(cnn)等。所述的控制单元310在当前帧内选择要使用的对象探测器和预定义处理区域。要使用的对象探测器和预定义处理区域可基于预期应用来从预先配置的查找表中提取得到。通过预定义像素块的尺寸,对象探测器和处理区域可由客户通过菜单的方式定义设置。当摄像头位置发生变化,客户可能会重新定义处理区域。客户还可重新定义对象探测器,例如从检测人到检测车辆。所述的处理单元320接收预定义的处理区域内的图像数据,将选定的对象探测器及其参数应用于以每个像素为中心的每个像素块以识别roi和类别,并向该类别提供置信度值。所述的投票单元340根据来自不同探测器的最大置信度值标记每个roi及其类别,并输出该信息。如图4所示,为本实施例用于异步推测帧序列的对象roi在基于ai的图像数据处理设备中的数据处理流程,该基于ai的图像数据传感系统102包括帧输入单元400、规则输入单元410、选择单元420、探测单元430和投票单元440,其均可通过图8所述的电路和/或基于软件的计算机系统实现。图中,帧输入单元400接收的主输入数据为视频模式下的连续图像帧序列,该帧输入单元400从帧索引0开始为每帧分配帧索引。规则输入单元410接收预定义的异步控制规则。选择单元420中的功能选择应用于当前帧的对象探测器和处理区域位置。探测单元430将所选对象探测器应用于所选择的处理区域,并获得每个检测到的对象roi的位置、类别和置信度值。投票单元440基于来自不同探测器的置信度值标记roi及其类别,并输出该信息。如果同一对象制定了多个类别,则根据类别置信度值选择最终类别。表1为根据各种实施情形下的用于帧序列的异步roi检测中使用的控制规则的格式。格式包括循环数和规则表。循环数定义应用相同规则的帧间隔。因此,循环数实际定义一次完整检测需要的帧的数量。表1循环数4序号对象探测器序号处理区域01(人探测器)[001079799]12(车辆探测器)[080010791970]21[001079989]31[080010791970]循环表的大小为循环数。循环表的每一行对应一个控制规则,包括三个项目:序号列、对象探测器序号列和处理区域列。序号列对应当前帧索引数除以循环数的余数。对象探测器序号为对应循环的序号的对象探测器编号。处理区域列对应为处理区域,例如通过与序号对应的处理区域的左上和右下x/y坐标。如图5所示,为roi检测中同步探测的示例结果。图中,系统从一组视频帧中检测两种类型的roi:人和车辆。为此,在每帧内应用两个不同的对象探测器,一个用于人,一个用于车辆,以产生那些roi的位置。此处人roi以浅色框显示,而车辆roi以深色框显示。如图6所示,为本实施例在对象roi异步推测的示例结果。在应用异步推测之前,预先定义控制规则组,例如,如表1所示。在此示例中,循环数设置为4,规则表的定义如表1所示。每帧中的处理区域在图6中显示为黑色虚线框。在第0帧中,只有人探测器应用于处理区域内,并得到两个人的roi。在第1帧中,仅应用车辆探测器,并且由于当前处理区域内没有车辆,因此未提供结果。第2帧和第3帧的结果相似。在第2帧中,仅应用人探测器,并且由于当前处理区域内没有人,因此未提供结果。在第3帧中,只有车辆探测器应用于处理区域内,并得到两个车辆的roi。在后面的帧中重复相同的过程。在本实施例中,与检测整个图像中的对象的同时roi检测相比,异步roi检测检测部分图像(处理区域)中的对象。利用本发明的异步技术,总成本降低到同步技术的1/4。如图7所示,为本实施例所述的示例性中的图像数据处理方法700中的流程图700。该方法可在各种环境下实现,包括如图1中所示的基于ai的图像数据传感系统的功能单元。根据本实施例,示例性方法可包括以各种顺序或并行执行的其他的、更少的或替代的步骤。此外,该流程图所示,为以有助于理解的方式组织的方框(以及可能的决策点)。然而,应了解,在情况允许的情况下,可重新组织方框以进行并行执行、重新排序和修改(更改、删除或扩充)。流程图700在步骤702处开始,即从图像采集单元获得若干帧的帧图像数据。这些帧可以是视频中的连续图像,例如,由视频模式中的图像传感器产生的视频。在本实施例中,如图4所示的帧输入单元400从基于ai的图像数据传感系统的图像传感器阵列接收帧。流程图700继续至步骤704,即获取若干控制规则组,该控制规则组包括每帧对应的控制规则,每个控制规则包括若干处理区域中的一个和若干对象探测器中的一个。在一些实施场合下,通过至少两个控制规则识别不同的处理区域。在一些实施场合下,通过至少两个控制规则识别不同的对象探测器。在本实施例中,如图4所示的规则输入单元410接收控制规则。流程图700继续至步骤706,即通过位置和类别识别每帧中的感兴趣区域,具体为:将由控制规则定义的对象探测器应用于处理区域中相应帧的图像数据。识别每帧中的感兴趣区域包括识别类别置信度值,其表示已识别类别的置信度。在一些实施场合下,图像数据传感系统可使用硬件实现的裁剪功能来隔离每个处理区域。在本实施例中,如图4所中的探测单元430通过位置和类别来识别每帧中的感兴趣区域。流程图700继续至步骤708,即根据识别到的感兴趣区域确定最终感兴趣区域:确定最终感兴趣区域包括根据感兴趣区域的位置确定最终感兴趣区域的最终位置以及根据感兴趣区域的类别确定最终感兴趣区域的类别,其中:确定最终感兴趣区域的类别可包括根据类别置信度值从类别组中选择一个类别。在本实施例中,如图4所示的投票单元440根据已识别的感兴趣区域确定最终感兴趣区域。流程图700继续至步骤710,即输出最终感兴趣区域。在本实施例,如图4所示的投票单元440报告最终感兴趣区域。如图8所示,为本实施例所述的用于实现基于ai的图像数据传感系统的至少一个功能的示例性计算机系统800的方框图。在一些实施场合下,计算机系统800对应图2中所示的第一分辨率修改单元204、特征探测单元206、第二分辨率修改单元212、预处理单元214和数据组合单元216中的至少一个,该计算机系统800包括用于通信信息的总线802或其他通信机构和至少一个与总线802耦接用于处理信息的硬件处理器804。例如,硬件处理器804可以包括至少一个通用微处理器。所述的计算机系统800进一步包括主存储器806,如:随机存取存储器(ram)、高速缓存和/或其他动态存储设备,这些存储器与总线802耦接用于存储将由处理器804执行的信息和指令。所述的主存储器806还能够在处理器804执行指令期间存储临时变量或其他中间信息。处理器804通过访问存储介质中的这些指令将计算机系统800设置为执行指令中指定操作的专用机器。计算机系统800进一步包括与总线802耦接、用于存储处理器804的静态信息和指令的只读存储器(rom)808或其他静态存储设备。该总线802上设有诸如磁盘、光盘或usb拇指驱动器(闪存驱动器)等的存储设备810以存储信息和指令。所述的计算机系统800可使用定制的硬连线逻辑、至少一个asic或fpga、固件和/或程序逻辑技术,并与计算机系统相结合使得计算机系统800成为专用机器或将该系统编程为专用机器。优选地,该技术通过计算机系统800中的处理器804执行包含在主存储器806中的一个或多个序列中的一个或多个指令而实现。这些指令可从另一个存储介质(如:存储设备810)读入主存储器806。处理器804通过执行包含在主存储器806中的指令序列实现本发明描述的处理步骤。在替代实施例中,可使用硬连线电路来代替软件指令或与软件指令组合使用。所述的主存储器806、rom808和/或存储装置810进一步包括非暂时性存储介质。本发明使用的术语“非暂时性介质”和类似术语是指存储使机器以特定方式操作的数据和/或指令的任何介质。这种非暂时性介质可包括非易失性媒体和/或易失性介质。非易失性介质包括例如光盘或磁盘,如:存储设备810。易失性介质包括动态存储器,如:主存储器806。例如,非暂时性介质的常见形式包括:软盘、硬盘、固态硬盘、磁带或任何其他磁数据存储介质、cd-rom、任何其他光学数据存储介质、任何有孔图案的物理介质、ram、prom和eprom、flash-eprom、nvram、任何其他内存芯片或盒式磁带,以及其网络版本。所述的计算机系统800进一步包括与总线802耦接的通信接口818,该通信接口818提供与连接到至少一个本地网络的至少一个网络链路耦接的双向数据通信。例如,通信接口818可以是综合业务数字网(isdn)卡、电缆调制解调器、卫星调制解调器或调制解调器,以提供与对应类型的电话线的数据之间的通信连接。再例如,通信接口818可以是局域网(lan)卡,以提供与兼容lan(或与wan通信的wan组件)的数据之间的通信连接。还可实施无线链路。在任何这种实施方式中,通信接口818发送和接收携带表示各种类型信息的数字数据流的电信号、电磁信号或光信号。所述的计算机系统800进一步通过网络、网络链路和通信接口818来发送消息和接收数据,包括发送和接收程序代码。在因特网示例中,服务器可通过因特网、isp、本地网络和通信接口818来发送用于应用程序的请求代码,该代码可在处理器804被接收时执行,和/或可存储在存储设备810或其他非易失性存储器中以供稍后执行。上述过程、方法和算法可通过由包括计算机硬件的至少一个计算机系统或计算机处理器执行的代码模块来实现,并完全或部分实现自动化。过程和算法可部分或全部地在专用电路中实现。上述各种特征和过程可彼此独立地使用,或可以各种方式组合使用。所有可能的组合和子组合都旨在落入本发明公开的范围内。另外,在一些实施方式中可省略某些方法或过程方框。本发明描述的方法和过程也不限于任何特定序列,且与其相关的方框或状态可以适当的其他序列来执行。例如,所描述的方框或状态可以不同于具体公开的顺序来执行,或若干方框或状态可在单个方框或状态中组合。示例性方框或状态可串行、并行或以某种其他方式来执行。可向所公开的示例性实施例中添加方框或状态或从其中移除方框或状态。本发明描述的示例系统和组件可与所描述的不同地来进行配置。例如,与所公开的示例性实施例相比,可添加、移除或重新布置元件。在整个说明书中,多个示例可实现被描述为单个示例的组件、操作或结构。尽管一个或多个方法的各个操作被示出并描述为单独的操作,但是可同时执行一个或多个单独的操作,且不需要以所示的顺序来执行这些操作。示范性配置中作为单独组件展示的结构与功能可能作为组合结构或组件进行实施。类似地,作为单独组件展示的结构与功能可能单组组件实施。所述的结构及其另外的变化、改动、添加及改进属于本发明主题的范围。尽管已经参考具体示例性实施例描述了主题的概述,但是在不脱离本发明公开的实施例的更宽范围的情况下,可对这些实施例进行各种修改和改变。仅仅是为了方便,本发明中的主题的这些实施例可单独地或共同地通过术语“发明”来提及,如果事实上披露了多于一个披露或概念,则无意自愿将本申请的范围限制于任何单一的公开内容或概念。具体实施例不应被视为具有限制意义,且各种实施例的范围仅由所附权利要求以及这些权利要求所赋予的等同物的全部范围来限定。当前第1页12
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1