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

使用神经网络在具有宽范围光强度的场景中进行对象检测的制作方法

2021-11-09 20:25:00 来源:中国专利 TAG:

使用神经网络在具有宽范围光强度的场景中进行对象检测


背景技术:

1.本发明涉及相机,并且更具体地,涉及检测、分类和/或识别高动态范围(high dynamic range,hdr)图像中的对象。
2.图像传感器通常用于诸如蜂窝电话、相机和计算机的电子装置中以捕获图像。在一般的布置中,电子装置设置有单个图像传感器和单个相应透镜。在某些应用中,例如当获取具有大范围光强度的场景的静止图像或视频图像时,可能希望捕获hdr图像,以免由于饱和度(即,太亮)或由于用常规相机捕获的图像的低信噪比(即,太暗)而丢失数据。通过使用hdr图像,可保留高亮和阴影细节,而这些细节在常规图像中可能会失去。
3.hdr成像通常通过合并同一场景的短时间曝光和长时间曝光来工作。有时,可涉及多于两次曝光。由于同一传感器捕获了多次曝光,因此需要在稍微不同的时间捕获曝光,这可引起运动伪影或重影方面的时间问题。hdr图像的另一问题是对比度伪影,这可能是色调映射的副作用。因此,虽然hdr能够缓解与在高对比度环境中捕获图像有关的一些问题,但它也引入了需要解决的一系列不同的问题。


技术实现要素:

4.根据第一方面,本发明涉及在计算机系统中用于处理由监控场景的相机记录的图像的方法。该方法包括:
5.·
接收一组图像,其中,该组图像包括由相机记录的场景的不同地曝光的图像;以及
6.·
由经训练的神经网络处理该组图像,该神经网络被配置为执行执行图像数据中的对象检测、对象分类和对象识别中的一项或多项,其中,该神经网络使用来自该组图像中的至少两个不同地曝光的图像的图像数据来检测该组图像中的对象。
7.这提供了改进技术的方法,该技术用于检测、分类和/或识别在其中hdr成像照惯例将被使用的场景中的对象,同时避免了运动伪影、重影和对比度伪影(仅举几个示例)形式的常见hdr图像问题。通过对从相机接收的一组图像而不是对合并的hdr图像进行操作,神经网络将访问更多的信息,并且可更准确地检测、分类和/或识别对象。可根据需要用子网络扩展神经网络。例如在一种实现中,可存在用于对象的检测和分类的神经网络和用于例如通过参考已知对象实例的数据库来识别对象的另一子网络。这使得本发明适用于其中图像中的对象或人的身份需要被确定的应用(例如,面部识别应用)中。该方法可有利地在监控相机中实现。这是有益的,因为当从相机传输图像时,图像必须以适合于传输的格式被编码,并且在这个编码过程中可能会丢失对神经网络检测和分类对象有用的信息。此外,在需要对相机部件(例如,图像传感器、光学器件、ptz电机等)进行调整以获得更好的图像的情况下,在图像传感器附近实现该方法可以最小化任何时延。根据各种实施例,这样的调整可由用户发起或可由系统自动发起。
8.根据一个实施例,处理该组图像可包括处理每个图像的仅亮度通道。亮度通道常常包含足够的信息以允许对象检测和分类,并且因此,图像中的其它颜色空间信息可被丢
弃。这既减少了需要被传输到神经网络的数据量,又减小了神经网络的尺寸,因为每个图像仅使用一个通道。
9.根据一个实施例,处理该组图像可包括处理每个图像的三个通道。这允许在诸如rgb、hsv、yuv等的三个颜色平面中编码的图像直接由神经网络处理而无需对图像进行任何类型的预处理。
10.根据一个实施例,该组图像可包括具有不同曝光时间的三个图像。在很多情况下,产生hdr图像的相机使用以变化的曝光时间捕获图像的一个或多个传感器。各个图像可用作神经网络的输入(而不是将它们一起拼接到hdr图像中)。这可促进将本发明集成到现有的相机系统中。
11.根据一个实施例,可在执行进一步的图像处理之前在相机中执行该处理。如上面提到的,这是有益的,因为它避免了当图像被处理以从相机传输时可能发生的任何数据的丢失。
12.根据一个实施例,该组图像中的图像表示来自图像传感器的原始拜耳图像数据。由于神经网络不需要“查看”图像,而是对值进行操作,因此存在可由人观看并理解的图像将不必被创建的情况。替代地,神经网络可直接对从传感器输出的原始拜耳图像数据进行操作,这甚至可进一步提高本发明的准确度,因为它在图像传感器数据到达神经网络之前去除了又一处理步骤。
13.根据一个实施例,可通过馈送神经网络生成的、在变化的曝光和移位条件下描绘的已知对象的图像来完成训练神经网络以检测对象。存在很多公开可用的图像数据库,其中包含已知对象的带注释的图像。可使用常规技术,以模拟从图像传感器到神经网络的传入数据可能的样子的方式来操纵这些图像。通过这样做,并将这些图像连同有关图像中描绘了哪些对象的信息一起馈送到神经网络,可以训练神经网络以检测可能在由相机捕获的场景中出现的对象。此外,该训练可在很大程度上被自动化,这将提高训练的效率。
14.根据一个实施例,对象可以是运动对象。也就是说,本发明的各种实施例可不仅应用于静态对象,而且还应用于运动对象,这增加本发明的通用性。
15.根据一个实施例,该组图像可以是具有时间重叠或时间接近的图像序列、从一个传感器或具有不同信噪比的多个传感器获得的一组图像、具有不同饱和度水平的一组图像和从具有不同分辨率的两个或更多个传感器获得的一组图像。例如,可存在具有变化的分辨率或变化的尺寸的几个传感器(较大的传感器接收每单位面积更多的光子并且通常对光更敏感)。作为另一示例,一个传感器可以是“黑白”传感器,即,没有颜色滤波器的传感器,它将提供更高的分辨率和更高的光敏度。作为又一示例,在双传感器设置中,传感器中的一个可以比另一传感器快两倍,并记录两个“短曝光图像”,而另一传感器记录“长曝光图像”。也就是说,本发明不限于任何特定类型的图像,而可替代地适合于在感兴趣场景处可用的任何成像情况,只要针对相同类型的情况训练神经网络即可。
16.根据一个实施例,对象可包括人、面部、车辆和牌照中的一个或多个。这些是通常在场景中和在其中有准确的检测、分类和识别很重要的应用中被识别出的对象。一般而言,本文描述的方法可应用于手头特定用例可能感兴趣的任何对象。在上下文中,车辆可以指任何类型的车辆,例如汽车、公共汽车、机动脚踏车、摩托车、小型摩托车等,仅举几个示例。
17.根据第二方面,本发明涉及用于处理由监控场景的相机记录的图像的系统。存储
器包含指令,指令当由处理器执行时使处理器执行方法,该方法包括:
18.·
接收一组图像,其中,该组图像包括由相机记录的场景的不同地曝光的图像;以及
19.·
由经训练的神经网络处理该组图像,该神经网络被配置为执行以下一项或多项:图像数据中的对象检测、对象分类和对象识别,其中,神经网络使用来自该组图像中的至少两个不同地曝光的图像的图像数据来检测该组图像中的对象。
20.系统优点对应于方法的优点并且可类似地改变。
21.根据第三方面,本发明涉及用于处理由监控场景的相机记录的图像的计算机程序。计算机程序包含与下列步骤相当于的指令:
22.·
接收一组图像,其中,该组图像包括由相机记录的场景的不同地曝光的图像;以及
23.·
由经训练的神经网络处理该组图像,该神经网络被配置为执行以下一项或多项:图像数据中的对象检测、对象分类和对象识别,其中,该神经网络使用来自该组图像中的至少两个不同地曝光的图像的图像数据来检测该组图像中的对象。
24.计算机程序涉及与方法的优点相对应的优点并且可类似地改变。
25.下面在附图和描述中阐述了本发明的一个或多个实施例的细节。从描述和附图以及从权利要求中,本发明的其它特征和优点将变得显而易见。
附图说明
26.图1是示出根据一个实施例的用于检测和分类由监控场景的相机记录的图像中的对象的方法。
27.图2是示出根据一个实施例的捕获场景的相机和用于处理图像数据的神经网络的示意图。
28.在各个附图中,相似的附图标记指示相似的元件。
具体实施方式
29.概述
30.如上所述,本发明的各种实施例的目的是提供用于在hdr成像情况中检测、分类和/或识别对象的改进的技术。本发明源于下面的认识:可被训练以检测图像中的对象的卷积神经网络(cnn)也可被训练以通过一起处理在一组图像中的图像来检测描绘同一场景但以不同的曝光捕获的该组图像中的对象。也就是说,cnn可直接对该组输入图像进行操作,而不是像常规应用中那样首先必须创建hdr图像然后检测该hdr图像中的对象。结果,根据本文所述的各种实施例,与特别设计的和经训练的cnn协作的相机系统比使用hdr相机和常规cnn的当前系统能够更好地处理不同的照明条件。此外,通过使用与所创建的hdr图像相反的几个图像,可以使用更多的数据进行各种类型的图像分析,与常规技术相比,这可导致更准确的对象检测、分类和识别。如上面提到的,在需要对相机部件(例如图像传感器、光学器件、ptz电机等)进行调整的情况下,在图像传感器附近实现该方法使最小化任何时延以获得更好的图像变得可能。
31.例如,可通过将噪声模型和数字增益或饱和度以及用于模拟可能在不同的帧之间
发生的对象运动的对象的运动应用于具有带注释的图像的开放数据集,以实现具有对象的不同的、人为应用的曝光和运动的图像组,来产生cnn的训练数据。如本领域技术人员认识到的,训练也可适合于在由相机监控的场景中的手头的特定监视情况。现在将通过示例并参考附图进一步详细描述各种实施例。
32.术语
33.下面的术语列表将在下面用于描述各种实施例。
34.场景——三维物理空间,其尺寸和形状由记录场景的相机的视场限定。
35.对象——可被看到和触摸的具体事物。场景一般包括一个或多个对象。对象可以是静止的(例如,建筑物和其它结构)或者是运动的(例如,车辆)。如本文所使用的对象还可包括人和其它活的生物,例如动物、树木等。对象可基于它们共享的共同特征被分成类别。例如,一个类别可以是“汽车”;另一类别可以是“人”;又一类别可以是“工具”,等等。在每个类别内,可以有逐渐细化的级别的子类别。
36.卷积神经网络(cnn)——最常见地应用于分析视觉影像的一类深度神经网络。cnn可摄取输入图像,将重要性(可学习的权重和偏向)分配到图像中的各种对象并将一个对象与另一对象区分开。cnn是本领域中的普通技术人员公知的,并且因此在此将不详细定义其内部工作原理,而是将在下面描述其在本发明的上下文中的应用。
37.对象检测——使用cnn来检测图像(一般来自记录场景的相机的图像)中的一个或多个对象的过程。也就是说,cnn回答问题“所捕获的图像代表什么?”或更具体地,“图像中哪里有类别(例如,汽车、猫、狗、建筑物等)的对象?”。
38.对象分类——使用cnn来确定一个或多个检测到的对象的类别但不是对象的特定实例的身份的过程。也就是说,cnn回答问题,例如“图像中的检测到的狗是拉布拉多犬还是吉娃娃犬?”或“图像中的检测到的汽车是沃尔沃还是梅赛德斯”,但是无法回答诸如“这是个人anton、niclas还是andreas?”之类的问题。
39.对象识别——使用cnn来确定对象的实例的身份的过程,一般通过与唯一对象实例的参考集进行比较来进行。也就是说,cnn可将图像中被分类为人的对象与一组已知的人进行比较,并确定“此图像中的人是andreas”的可能性。
40.确定和分类对象
41.下面的示例实施例示出了本发明可如何用于检测和分类由相机记录的场景中的对象。图1是示出根据一个实施例的用于检测和分类对象的方法100的流程图。图2示意性示出了可实现方法的环境。方法100可以要么连续地要么以各种间隔被自动执行,如特定的监控场景所需的,以有效地检测和分类由相机监控的场景中的对象。
42.如在图2中可看到的,相机202监控人存在于的场景200。方法100开始于相机202接收场景200的图像(步骤102)。在所示实施例中,三个图像204、206和208分别从相机被接收。这些图像都描绘同一场景200,但在变化的曝光条件下。例如,图像204可以是短曝光图像,图像206可以是中曝光图像,并且图像208可以是长曝光图像。一般,常规cmos传感器可用于相机202来捕获图像,如本领域中的普通技术人员公知的。图像可以是在时间上接近的,也就是说,在时间上彼此接近地由单个传感器捕获。图像也可以是在时间上重叠的,例如,如果相机使用双传感器,并且比如短曝光图像被捕获的同时长曝光图像也被捕获。可基于手头的特定情况在监控场景实现很多变形。
43.如本领域中的普通技术人员公知的,可使用各种颜色空间(例如,rgb、yuv、hsv、ycbcr等)来表示图像。在图2所示的实现中,图像204、206和208中的颜色信息被忽略,并且只有各个图像的亮度通道(y)中的信息用作对cnn 210的输入。由于亮度通道包含可用于检测和分类对象的特征方面的所有“相关”信息,因此颜色信息可被丢弃。此外,这减少了cnn 210的张量(即,输入)的数量。例如,在图2所示的特定情况下,cnn 210可具有三个张量,也就是说,通常将被用于处理单个rgb图像的张量的数量相同。
44.然而应认识到,本发明的一般原理可扩展到基本上任何颜色空间。例如在一种实现中,代替提供三个图像中的每个图像的单个亮度通道作为对cnn 210的输入,可以给cnn 210馈送三个rgb图像,在这种情况下cnn 210将需要具有9个张量。也就是说,使用rgb图像作为输入将需要较大的cnn 210,但相同的一般原理仍然适用,并且与每图像仅使用一个通道相比,不需要对cnn 210进行大设计变化。
45.这个一般理念可甚至进一步被扩展,使得在一些实现中甚至可能不需要将来自相机中的图像传感器的原始数据(例如,拜耳数据)内插到所有像素的rgb表示。相反,来自传感器的原始数据本身可充当对cnn 210的张量的输入,从而使cnn 210更加靠近传感器本身并进一步减少在将传感器数据转换成rgb表示时可能发生的数据丢失。
46.接着,cnn 210处理接收到的图像数据以检测并分类对象(步骤104)。这可通过例如以级联方式(即,在单独的连续通道中添加数据,例如r

长、g

长、b

长、r

短、g

短、b

短)将不同的曝光馈送到cnn 210来完成。cnn 210然后可以访问以不同的曝光获取的信息,从而形成对场景的更深入的了解。然后,cnn 210通过使用经训练的卷积核进行处理,以提取并处理来自不同曝光的数据,结果,权衡来自最佳曝光的信息。为了以这种方式处理图像数据,cnn 210必须被训练以基于cnn 210接收的特定类型的输入来检测和分类对象。将在下一部分中描述cnn 210的预训练。
47.最后,来自由cnn 210进行的处理的结果被输出为场景中的一组被分类的对象212(步骤106),处理结束。该组被分类的对象212可以例如以要么允许由人类用户查看要么进一步由其它系统部件处理的任何形式被输出,以执行对象识别和类似的任务。常见应用包括检测和识别人和车辆,但是当然,本文所述的原理可用于识别可能出现在由相机202捕获的场景200中的任何类型的对象。
48.训练神经网络
49.如上面所提到的,必须先对cnn 210进行训练,然后才能将其用于检测和分类在由相机202捕获的图像中的对象。可通过使用带注释的图像的开放数据集并将各种类型的噪声模型和数字增益/饱和以及对象的运动应用于图像,以便模拟可能在hdr相机照惯例将被使用的情况中发生的条件,来生成cnn 210的训练数据。通过使图像组具有人为应用的曝光和运动,同时还知道“地面实况”(即,对象的类型,例如面部、牌照、人等),cnn 210可学习以在接收到真实hdr图像数据时检测和分类对象,如上面讨论的。在一些实施例中,使用在实际设置中会出现的噪声模型和数字增益/饱和参数来有利地训练cnn 210。换句话说,使用图像的开放数据集来训练cnn 210,该开放数据集使用表示将在场景使用的相机、图像传感器或系统的特定参数而改变。
50.结论性意见
51.应注意,尽管已经分别关于具有短、中和长曝光时间的图像描述了上面的实施例,
但是相同的原理可应用于同一场景的基本上任何类型的变化的曝光。例如,在传感器中的不同模拟增益可以(一般)降低在来自传感器的读数中的噪声水平。同时,场景中某些较亮的部分以与当曝光时间延长时发生的方式类似的方式被调整。这导致可在本发明的各种实现中被使用的在图像中的不同snr和饱和度水平。此外,应注意,虽然上述方法优选地在相机202本身中被执行,但这不是必须的,并且图像数据可从相机202发送到cnn 210所在的另一处理以及可能的另一处理设备。
52.虽然已经针对单个cnn 210描述了上述技术,但应认识到,这仅出于说明的目的,并且在实际实现中,cnn可包括神经网络的几个子集。例如,骨干神经网络可用于查找特征(例如,指示“汽车”的特征与指示“面部”的特征)。另一神经网络可确定是场景中是否存在多个对象(例如,两个汽车和三个面部)。又一网络可被添加以确定图像中的哪些像素属于哪个对象,等等。因此,在上述技术用于面部识别的目的的实现中,可以存在神经网络的多个子集。因此,当参考上面的cnn 210时,应清楚,这可涉及多个神经网络。
53.如本领域中的技术人员将理解的,本发明的各方面可体现为系统、方法或计算机程序产品。因此,本发明的方面可采取通常可在本文被称为“电路”、“模块”或“系统”的完全硬件实施例、完全软件实施例(包括固件、驻留软件、微代码等)或组合软件和硬件方面的实施例的形式。此外,本公开的方面可采取包含在一个或多个计算机可读介质中的计算机程序产品的形式,计算机可读介质具有包含在其上的计算机可读程序代码。
54.可利用一个或多个计算机可读介质的任何组合。计算机可读介质可以是计算机可读信号介质或计算机可读存储介质。计算机可读存储介质可以是例如但不限于电子、磁、光学、电磁、红外或半导体系统、设备或装置,或者前述项的任何适当组合。计算机可读存储介质的更具体的示例(非详尽列表)将包括以下内容:具有一根或多根电线的电连接、便携式计算机软盘、硬盘、随机存取存储器(ram)、只读存储器(rom)、可擦除可编程只读存储器(eprom或闪存)、光纤、便携式光盘只读存储器(cd

rom)、光学存储装置、磁存储装置或前述的任何适当组合。在本文档的上下文中,计算机可读存储介质可以是可包含或存储用于由指令执行系统、设备或装置使用或与或指令执行系统、设备或装置结合的程序的任何有形介质。
55.计算机可读信号介质可包括例如在基带中或作为载波的部分的传播的数据信号,该传播的数据信号具有包含在其中的计算机可读程序代码。这样的传播信号可采取各种形式中的任一种,包括但不限于电磁、光学或其任何适当的组合。计算机可读信号介质可以是任何计算机介质,其不是计算机可读存储介质并且可传输、传播或传送供指令执行系统、设备或装置使用或与其结合使用的程序。
56.可使用任何适当的介质(包括但不限于,无线、有线、光纤电缆、rf等或前述项的任何适当组合)来传输包含在计算机可读介质上的程序代码。可以用一种或多种编程语言(包括面向对象的编程语言(例如,java、smalltalk、c 等)和常规过程编程语言(例如,“c”编程语言或类似的编程语言))的任何组合来编写用于实现本发明的方面的操作的计算机程序代码。程序代码可完全在用户的计算机上、部分地在用户的计算机上、作为单独软件封装、部分地在用户的计算机上和部分地在远程计算机上、或完全在远程计算机或服务器上执行。在后一情形中,远程计算机可通过任何类型的网络(包括局域网(lan)或广域网(wan))连接到用户的计算机,或者可以(例如,通过使用互联网服务提供商的互联网)建立
与外部计算机的连接。
57.上面参考根据本公开的实施例的方法、设备(系统)和计算机程序产品的流程图和/或框图描述了本公开的方面。流程图和/或框图的每个框以及在流程图和/或框图中的框的组合可由计算机程序指令实现。这些计算机程序指令可提供到通用计算机的处理器、专用计算机的处理器或其它可编程数据处理设备以产生机器,使得经由计算机的处理器或其它可编程数据处理设备执行的指令创建用于实现在一个或多个流程图和/或框图块中规定的功能/动作的模块。
58.这些计算机程序指令也可存储在可引导计算机、其它可编程数据设备或其它装置以特定的方式运行的计算机可读介质中,使得存储在计算机可读介质中的指令产生包括实现在流程图和/或一个或多个方框图块中规定的功能/动作的指令的制造物品。
59.计算机程序指令也可被加载到计算机、其它可编程数据处理设备或其它装置上以使一系列操作步骤在计算机、其它可编程设备或其它装置上被执行以产生计算机实现的过程,使得在计算机或其它可编程设备上执行的指令提供用于实现在流程图和/或框图的一个或多个框中规定的功能/动动的过程。
60.在附图中的流程图和框图示出了根据本公开的各种实施例的系统、方法和计算机程序产品的可能实现的架构、功能和操作。在这一点上,在流程图或框图中的每个框可代表包括用于实现规定的逻辑功能的一个或多个可执行指令的模块、区段或指令部分。在一些替代实施方式中,在框中提到的功能可以不按在附图中提到的顺序发生。例如,连续示出的两个框事实上可实质上同时被执行,或框有时可以以相反的顺序执行,这取决于所涉及的功能。还应注意,框图和/或流程图的每个框以及在框图和/或流程图中的框的组合可由执行规定功能或动作的基于专用硬件的系统实现或执行专用硬件和计算机指令的组合。
61.本发明的各种实施例的描述为了说明的目的而被提供,但是这些描述并不旨在是穷举性的或限于所公开的实施例。在不偏离所描述的实施例的范围和精神的情况下,很多修改和变形对本领域中的技术人员将是显而易见的。因此,本领域技术人员可以想到落入权利要求的范围内的很多其它变型。
62.应注意,尽管已经通过示例的方式并参考cnn描述了上述实施方式,但是也可存在使用其它类型的神经网络或其它类型的算法并实现相同或相似的结果的实施方式。因此,其它实施方式也落入所附权利要求的范围内。
63.本文使用的术语被选择以最好地解释实施例的原理、对市场上发现的技术的实际应用或技术上的改进,或者使本领域普通技术人员能够理解本文公开的实施例。
再多了解一些

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

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

相关文献