掌桥专利:专业的专利平台
掌桥专利
首页

增强的对象检测

文献发布时间:2023-06-19 18:35:48


增强的对象检测

技术领域

本公开涉及车辆中增强的对象检测。

背景技术

车辆可以配备有计算装置、网络、传感器和控制器以获取关于车辆的环境的数据并基于所述数据来操作车辆。车辆传感器可以提供关于将行驶的路线以及车辆环境中要避开的对象的数据。车辆的操作可以依赖于在车辆正在道路上进行操作时获取关于车辆环境中的对象的准确且及时的数据。车辆可以使用计算装置,所述计算装置被配置为从由车辆传感器收集的图像数据识别对象。

发明内容

一种系统包括计算机,所述计算机包括处理器和存储器,所述存储器存储指令,所述指令可由处理器执行以:基于来自随机数生成器的输出来生成多个子图像,其中每个子图像是图像的至少两个分区的集合,图像的每个分区是与图像的每个其他分区不同的图像的一部分;将每个子图像输入到机器学习程序,所述机器学习程序被训练以输出在子图像中分类的对象;并且当具有相同分类的对象的子图像数量超过阈值时,将图像中的对象识别为分类对象。

所述指令还可以包括用于进行以下操作的指令:将图像划分为多个分区并且基于多个分区的总数来生成来自随机数生成器的输出。

所述指令还可以包括用于进行以下操作的指令:将识别图像中的对象的注解输入到机器学习程序并且确定注解是否与从机器学习程序输出的分类对象匹配。

所述指令还可以包括用于进行以下操作的指令:将匹配确定输入到机器学习程序的训练数据集中。

所述指令还可以包括用于进行以下操作的指令:当具有相同分类对象的子图像的数量没有超过阈值时,将图像输入到被训练以输出在图像中识别的对象的第二机器学习程序。

所述指令还可以包括用于进行以下操作的指令:向分区中的每一者分配识别号码,所述识别号码限定集合,并且随机数生成器的输出是识别号码集合的子集。

机器学习程序可以是多任务神经网络,其中多任务网络的每个任务可以被编程为对不同于其他任务的特定类型的对象进行分类。

所述指令还可以包括用于进行以下操作的指令:识别图像中的多个分类区域,每个分类区域是图像中的机器学习程序输出对象的识别的区域;并且基于识别的多个分类区域来确定图像的分区数量。

所述指令还可以包括用于进行以下操作的指令:生成不包括分类区域的至少一个分区。

所述指令还可以包括用于进行以下操作的指令:当在图像中识别对象时,基于识别的对象致动车辆子系统。

所述指令还可以包括用于进行以下操作的指令:以网格图案将图像划分为多个相等大小的分区。

所述指令还可以包括用于进行以下操作的指令:基于以网格图案的分区来生成多个子图像;以第二网格图案将图像划分为第二多个相等大小的分区;并且基于以第二网格图案的分区生成第二多个子图像。

一种方法包括:基于来自随机数生成器的输出来生成多个子图像,其中每个子图像是图像的至少两个分区的集合,图像的每个分区是与图像的每个其他分区不同的图像的一部分;将每个子图像输入到机器学习程序,所述机器学习程序被训练以输出在子图像中分类的对象;并且当具有相同分类的对象的子图像数量超过阈值时,将图像中的对象识别为分类对象。

所述方法还可以包括:将图像划分为多个分区并且基于多个分区的总数来生成来自随机数生成器的输出。

所述方法还可以包括:将识别图像中的对象的注解输入到机器学习程序并且确定注解是否与从机器学习程序输出的分类对象匹配。

所述方法还可以包括:将匹配确定输入到机器学习程序的训练数据集中。

所述方法还可以包括:当具有相同分类对象的子图像的数量没有超过阈值时,将图像输入到被训练以输出在图像中识别的对象的第二机器学习程序。

所述方法还可以包括:向分区中的每一者分配识别号码,所述识别号码限定集合,并且随机数生成器的输出可以是识别号码集合的子集。

所述方法还可以包括:识别图像中的多个分类区域,每个分类区域是图像中的机器学习程序输出对象的识别的区域;并且基于识别的多个分类区域来确定图像的分区数量。

所述方法还可以包括:生成不包括分类区域的至少一个分区。

所述方法还可以包括:当在图像中识别对象时,基于识别的对象致动车辆子系统。

所述方法还可以包括:以网格图案将图像划分为多个相等大小的分区。

所述方法还可以包括:基于以网格图案的分区来生成多个子图像;以第二网格图案将图像划分为第二多个相等大小的分区;并且基于以第二网格图案的分区生成第二多个子图像。

还公开了一种计算装置,所述计算装置被编程为执行上述方法步骤中的任一者。还公开了一种包括计算装置的车辆。还公开了一种计算机程序产品,所述计算机程序产品包括计算机可读介质,所述计算机可读介质存储指令,所述指令可由计算机处理器执行以执行上述方法步骤中的任一者。

用常规的对象检测程序检测图像中的对象可能导致图像中的同一对象的不同分类,这些分类仅略有不同。例如,调整图像中的小子集的像素可以使神经网络改变其在图像中识别的对象的输出。像素的这些调整可能是由例如碎屑、环境照明的变化、传感器移动等引起的。

如本文所述,通过训练分类程序以识别对象检测程序可以检测到的图像的不同子集中的对象,可以使用从分类程序中的图像的随机分区生成的多个子图像来改进对象检测。可以通过计算机(诸如车辆中的计算机)基于网格图案的相等大小的分区将图像划分为子图像来识别图像中的对象。可以用随机数生成器来确定子图像。然后,分类程序可以从子图像生成多个输出对象分类。当作为相同对象分类的输出分类的数量超过阈值时,计算机可以确定原始图像中的对象是从分类程序输出的对象分类。因此,通过将分类程序与子图像一起使用,计算机可以更容易地识别其他对象检测程序可能无法检测到的对象。

附图说明

图1是用于识别图像中的对象的示例性系统的框图。

图2是图像的多个子图像的图。

图3是示例性分类程序的图。

图4是用于识别图像中的对象的示例性过程的框图。

图5是示例性神经网络的框图。

具体实施方式

图1是用于识别图像中的对象的示例性系统100的框图。系统100包括车辆105和车辆计算机110。车辆105可以是任何合适类型的地面车辆105,例如乘用汽车或商用汽车,诸如轿车、双门轿车、卡车、运动型多功能车、跨界车、厢式货车、小型货车、出租车、公共汽车等。

车辆计算机110包括处理器和存储器。存储器包括一种或多种形式的计算机110可读介质,并且存储指令,所述指令可由车辆计算机110执行以执行包括如本文所公开的各种操作。例如,计算机110可以是具有如以上所描述的处理器和存储器的通用计算机110,和/或可以包括用于特定功能或功能集的电子控制单元ECU或控制器,和/或专用电子电路,所述专用电子电路包括针对特定操作而制造的ASIC,例如用于处理传感器数据和/或传送传感器数据的ASIC。在另一个示例中,计算机110可以包括FPGA(现场可编程门阵列),所述FPGA是被制造为可由用户配置的集成电路。通常,在电子设计自动化中使用诸如VHDL(超高速集成电路硬件描述语言)的硬件描述语言来描述诸如FPGA和ASIC的数字和混合信号系统。例如,ASIC是基于制造前提供的VHDL编程而制造的,而FPGA内部的逻辑部件可以基于例如存储在电连接到FPGA电路的存储器中的VHDL编程而配置。在一些示例中,处理器、ASIC和/或FPGA电路的组合可以包括在计算机110中。存储器可以是任何类型,例如,硬盘驱动器、固态驱动器、服务器130或任何易失性或非易失性介质。存储器可以存储从传感器115发送的所收集数据。存储器可以是与计算机110分离的装置,并且计算机110可经由车辆105中的网络(例如,通过CAN总线、无线网络等)检索由存储器存储的信息。替代地或另外,存储器可以是计算机110的一部分,例如作为计算机110的存储器。

计算机110可以包括编程以操作车辆制动、推进(例如,通过控制内燃发动机、电动马达、混合动力发动机等中的一者或多者来控制车辆105的加速度)、转向、气候控制、内部灯和/或外部灯等中的一者或多者,以及确定计算机110(而非人类操作员)是否和何时控制此类操作。另外,计算机110可以被编程为确定人类操作员是否以及何时控制此类操作。

计算机110可以包括一个以上的处理器或例如经由如下进一步描述的车辆网络(诸如通信总线)与一个以上的处理器通信耦合,所述处理器例如包括在车辆105中所包括的用于监测和/或控制各种车辆部件的部件(诸如传感器115、电子控制单元(ECU)等)中,例如动力传动系统控制器、制动控制器、转向控制器等。计算机110通常被布置成用于在车辆105通信网络上进行通信,所述车辆通信网络可以包括车辆105中的总线,诸如控制器局域网CAN等,和/或其他有线和/或无线机制。替代地或另外,在计算机110实际上包括多个装置的情况下,车辆105通信网络可以用于在本公开中表示为计算机110的装置之间的通信。此外,如下文所提及的,各种控制器和/或传感器115可以经由车辆通信网络向计算机110提供数据。

车辆105(诸如自主或半自主车辆105)通常包括各种传感器115。传感器是可以获得一个或多个物理现象的一个或多个测量值的装置。一些传感器115检测车辆105的内部状态,例如车轮转速、车轮取向以及发动机和变速器变量。一些传感器115检测车辆105的位置或取向,例如全球定位系统GPS传感器115;加速度计,诸如压电或微机电系统MEMS;陀螺仪,诸如速率陀螺仪、环形激光陀螺仪或光纤陀螺仪;惯性测量单元IMU;和磁力计。一些传感器115检测外部世界,所述传感器例如雷达传感器115、扫描激光测距仪、光探测和测距(激光雷达)装置以及图像200处理传感器115(诸如,相机)。激光雷达装置通过发射激光脉冲并测量脉冲行进到对象并且返回的飞行时间来检测与对象的距离。一些传感器115是通信装置,例如车辆对基础设施V2I或车辆对车辆V2V装置。传感器的操作可能会受到遮挡物(例如灰尘、雪、昆虫等)的影响。通常但不一定,传感器包括数模转换器以将感测到的模拟数据转换成数字信号,所述数字信号可以例如经由网络提供给数字计算机110。传感器115可以包括各种装置,并且可以被设置成以各种方式感测环境、提供关于机器的数据等。例如,传感器可以安装到道路上、道路上方或附近的固定基础设施元件。此外,车辆105中的各种控制器可以充当传感器115以经由车辆网络或总线提供数据,例如与车辆速度、加速度、位置、子系统和/或部件状态等有关的数据。此外,其他传感器115(车辆105、固定基础设施元件等中或上)基础设施可以包括相机、短程雷达、远程雷达、激光雷达和/或超声换能器、重量传感器115、加速度计、运动检测器等,即,用于提供各种数据的传感器115。仅提供几个非限制性示例,传感器数据可以包括用于确定部件的位置、对象的位置、对象的速度、对象的类型、道路的坡度、温度、水分的存在或量、燃料水平、数据速率等的数据。

车辆子系统120是一组部件或零件,包括硬件部件,并且通常还包括软件和/或编程,以执行车辆105中的功能或一组操作。车辆子系统120通常包括但不限于制动系统、推进系统和转向系统。推进子系统将能量转换为车辆车轮的旋转以向前和/或向后推进车辆105。制动子系统可以减慢和/或停止车辆的移动。转向子系统可以在车辆105移动时控制它的横摆,例如左转和右转、保持直线路径。

计算机110可以被编程为经由广域网125与一个或多个远程站点(诸如服务器130)通信。广域网125可以包括车辆计算机110可以通过其与例如远程服务器130进行通信的一种或多种机制。因此,网络可以包括各种有线或无线通信机制中的一种或多种,包括有线(例如,电缆和光纤)和/或无线(例如,蜂窝、无线、卫星、微波和射频)通信机制的任何期望的组合以及任何期望的网络拓扑或当使用多种通信机制时的拓扑。示例性通信网络包括提供数据通信服务的无线通信网络(例如,使用蓝牙、蓝牙低功耗BLE、IEEE 802.11、车辆对车辆V2V或车联万物V2X诸如蜂窝V2X CV2X、专用短程通信DSRC等)、局域网LAN和/或包括互联网的广域网WAN。

图2是利用随机数生成器215划分为分区205和子图像210的示例性图像200的视图。在对象被部分遮挡时,通过利用随机数生成器215从分区205生成子图像210,计算机110或服务器130可以训练图像处理程序以识别图像200中的对象。计算机110可以用合适的传感器115(例如,相机)收集图像200。图像200可以包括在检测时可能导致车辆105的操作变化的对象。例如,道路标志可以包括导致车辆105的操作变化的信息,诸如需要车辆105停车的停车标志。检测图像200中的对象允许计算机110致动一个或多个子系统120以改变车辆105的操作,例如,在到达停车标志之前致动制动器以使车辆105停车。

图像200的“分区”是图像200的与图像200的其他部分不同的部分。也就是说,分区205彼此不重叠并且共同构成整个图像200。计算机110可以基于指定图案(例如,如图2中所示的3x3网格图案)将图像200划分为多个分区205。替代地,计算机110可以基于不同的图案(例如,1x4图案、2x2图案、2x4图案等)来划分图像200。计算机110可以将图像200划分为多个相等大小的分区205。计算机110可以为每个分区205分配识别号码,例如,从1到分区205总数的整数。例如,在图2中,图像200可以被划分为9个分区205,各自被分配从1到9的整数。

“子图像”210是至少两个分区205的集合,如图2中所示。也就是说,子图像210可以包括少于图像200的所有分区205。因为子图像210可以包括少于所有分区205,所以子图像210可以表示被例如碎屑、降水等遮挡的图像200。计算机110可以生成多个子图像210,每个子图像210是与每个其他子图像210不同的分区205的子集。计算机110可以基于上述一个或多个网格图案来生成多个子图像210。例如,计算机110可以基于第一网格图案的分区205生成第一多个子图像210,并且基于第二网格图案的分区205生成第二多个子图像210。

计算机110可以基于来自随机数生成器215(RNG)的输出来生成子图像210。“随机数生成器”是通常伪随机地从一组输入数字生成输出数字串的程序。例如,从整数1-9的集合,RNG 215输出输入集合的子集,即,具有全部也是输入集合的成员的元素的输出集合。输出子集可以是比输入集合更小的集合,即,1-9中的一些但不是全部整数。RNG 215的输入可以基于分区205的总数,例如,在图2的示例中为9。基于RNG 215的输出,计算机110可以生成子图像210。例如,RNG 215可以输出整数的子集,所述子集的每个元素是与图像200的分区205中的一者相关联的整数。计算机110可以生成仅包括在从RNG 215输出的子集中具有相关联的识别号码的分区205的子图像210。图2的示例示出了三个子图像210,从RNG输出[1、2、5、8]生成的第一子图像210,从RNG输出[1、3、4、6、9]生成的第二子图像210,以及从RNG输出[2、3、5、6、8、9]生成的第三子图像210。

图像200可以包括一个或多个分类区域。“分类区域”是图像200中的像素集合,图像200处理程序使用像素集合来识别图像200中的对象。也就是说,常规的图像200处理程序可以基于图像200中的特定像素集合(例如,停车标志中的字母“O”)来识别对象。当分类区域被遮挡时,图像200处理程序可能会错误地识别图像200中的对象。为了训练图像200处理程序以正确地识别图像200中的对象,计算机110可以生成不包括分类区域的子图像210。也就是说,可以确定分区205,使得至少一个分区205不包括任何分类区域,并且优选地可以生成缺少分类区域的多个子图像210以训练图像200处理程序。

图3是由计算机110或服务器130训练以基于输入子图像210的集合输出在图像200中分类的对象的示例性分类程序300的框图。分类程序300是接收一个或多个子图像210作为输入并且针对生成子图像210的图像200输出对象的分类的机器学习程序。分类程序300可以是被训练以识别子图像210中的对象的多任务神经网络。多任务神经网络包括多个层305,每个层305提供关于输入的信息以对图像200中的对象进行分类。

分类程序300可以包括层305以识别语言输入310。语言输入310是识别子图像210中的自然语言的层305。例如,语言输入310可以是道路标志上的文本,例如,停车标志上的“STOP”。语言输入310可以在计算机110或服务器130中用训练数据集进行训练,其中如已知的那样,文本被包括在注解中并且分类程序300的成本函数被最小化。

分类程序300可以包括识别任务315的多个层305。“任务”是神经网络的指定输出,诸如对象的识别。多任务神经网络(诸如分类程序300)可以输出一个以上的任务315。在这种背景下,任务315是在子图像210中识别的对象。也就是说,可以训练识别任务315的层305以确定与每个其他任务315不同的子图像210中的特定类型的对象。层305可以在计算机110或服务器130中用训练数据集进行训练,训练数据集中的每个子图像210包括识别子图像210中的对象的注解。然后,分类程序300输出对象的分类,并且计算机110可以确定输出的分类对象是否与注解匹配。计算机110可以将匹配确定输入到训练数据集。

分类程序300可以从任务特定层305输出多个对象分类320。也就是说,每个任务特定层305可以从多个输入子图像210输出对象分类320,并且计算机110可以基于输出来识别图像200中的对象。计算机110可以将多个对象分类320彼此进行比较,并且当作为相同对象分类320的对象分类320的数量超过阈值时,计算机110确定图像200中生成子图像210的对象是对象分类320。阈值可以是例如对象分类320的总数的50%。也就是说,当来自子图像210的大多数对象分类320相同时,计算机110可以识别图像200中的对象。替代地,阈值可以是不同的数字,例如,绝对多数。在图3的示例中,对象分类320输出中的两者是“STOP”,其指示停车标志并且车辆105应停车,并且对象分类输出中的一者是“Poster”,其指示车辆105不应停车的道路标志的标示。因为大多数对象分类320是“STOP”,所以计算机110可以确定图像200包括停车标志。

当具有相同分类对象的对象分类320的数量没有超过阈值时,计算机110可以确定分类程序300无法识别图像200中的对象。然后,计算机110可以将图像200输入到常规的对象检测程序。对象检测程序可以是由诸如服务器130的计算机训练以输出在图像200中识别的对象的机器学习程序,例如,下面在图5中描述的深度神经网络500。因为可以在整个图像200上训练对象检测程序,所以对象检测程序可能无法识别子图像210中的对象。因此,计算机110可以使用分类程序300来识别子图像210中的对象,并且当分类程序300无法识别对象时,计算机110可以使用常规的对象检测程序来识别图像200中的对象。也就是说,分类程序300通常可以比常规的对象检测程序更准确地检测对象,并且仅当分类程序300无法检测到对象时,计算机110才会使用常规的对象检测程序。

在识别图像200中的对象时,无论是通过分类程序300还是对象检测程序,计算机110都可以基于识别的对象来致动车辆子系统120。也就是说,计算机110可以根据在图像200中识别的对象来致动一个或多个车辆子系统120。例如,计算机110可以确定图像200中的对象是停车标志并且可以致动制动器以使车辆105停车。在另一个示例中,计算机110可以确定图像200中的对象是速度限制标志,并且可以根据标示的速度限制来致动推进装置。

图4是用于识别图像200中的对象的示例性过程400的框图。过程400开始于框405,其中车辆105的传感器115收集图像200。如上所述,传感器115可以收集车辆105周围的环境的图像200。例如,传感器115可以是相机。

接下来,在框410中,计算机110识别图像200的多个分区205。如上所述,计算机110可以将网格图案应用于图像200以生成分区205。例如,计算机110可以根据3x3网格生成分区205,如图2中所示。

接下来,在框415中,计算机110从随机数生成器215(RNG)输出多个子图像210子集。如上所述,RNG 215输出识别号码串,诸如整数,所述识别号码串是构成图像200的识别号码集合的子集。例如,RNG 215可以输出指示以3x3网格图案划分的图像200的分区205的整数1-9的子集。

接下来,在框420中,计算机110基于从RNG 215输出的多个子图像子集生成多个子图像210。如上所述,计算机110可以包括在子图像子集中的一者中识别的图像200的分区205,以生成图像200的子图像210。

接下来,在框425中,计算机110将每个子图像210输入到分类程序300,所述分类程序输出每个子图像210的对象分类320。如上所述,分类程序300可以利用基于任务的神经网络500输出对象分类320,每个任务315基于子图像210集合输出图像200的对象分类320。

接下来,在框430中,计算机110确定相同对象分类320的数量是否超过阈值。如上所述,对于多个子图像210,分类程序300输出生成子图像210的图像200的多个对象分类320。当相同对象分类320的数量超过阈值时,过程400在框435中继续。否则,过程400在框440中继续。

在框435中,计算机110根据从分类程序300输出的对象分类320来识别图像200中的对象。因为相同对象分类320的数量超过阈值,所以计算机110可以确定分类程序300识别图像200中的对象。

在框440中,计算机110将图像200输入到对象检测程序。如上所述,当分类程序300无法识别足够的对象分类320时,计算机110可以确定分类程序300无法识别图像200中的对象。然后,计算机110可以将图像200输入到常规的对象检测程序,诸如深度神经网络500。

接下来,在框445中,计算机110确定是否继续过程400。例如,当车辆105仍在运行时,计算机110可以确定继续过程400。如果计算机110确定继续,则过程400返回到框405。否则,过程400结束。

图5是示例性神经网络500(诸如上述分类程序300和/或对象检测程序)的框图。

神经网络500(诸如深度神经网络500(DNN))可以是可以被加载在存储器中并且由包括在例如计算机110中的处理器执行的软件程序。在示例性实现方式中,DNN可以包括但不限于卷积神经网络CNN、R-CNN(基于区域的CNN)、快速的R-CNN和更快的R-CNN。DNN包括多个节点或神经元505。神经元505被布置成使得DNN包括输入层、一个或多个隐藏层以及输出层。DNN中的每一层可以包括多个神经元505。尽管示出了三个隐藏层,但是应理解,DNN可以包括更多的或更少的隐藏层。输入层和输出层还可以包括多于一个节点。作为一个示例,DNN可以通过地面实况数据(即,关于真实世界状况或状态的数据)进行训练。例如,DNN可以用地面实况数据进行训练和/或用附加数据进行更新。例如,可以通过使用高斯分布初始化权重,并且可以将每个节点的偏差设置为零。训练DNN可以包括经由合适技术(诸如反向传播与优化)来更新权重和偏差。地面实况数据是指被认为表示真实世界环境(例如,环境中的状况和/或对象)的数据。因此,地面实况数据可以包括描绘环境(例如,环境中的对象)的传感器数据,以及描述环境的一个或多个标签(例如,描述对象的标签)。地面实况数据还可以包括元数据或由元数据指定,所述元数据诸如获得地面实况数据的一个或多个位置、获得地面实况数据的时间等。

因为节点被设计来模仿生物(例如人类)神经元505,所以它们有时称为人工神经元505。每个神经元505的一组输入(由箭头表示)各自乘以相应的权重。然后,可以将经加权输入在输入函数中求和,以在可能通过偏差进行调整的情况下提供净输入。然后,可将净输入提供给激活函数,所述激活函数进而为连接的神经元505提供输出。所述激活函数可以是通常基于经验分析而选择的各种合适的函数。如图中的箭头所示,然后可提供神经元505的输出以将其包括在到下一层中的一个或多个神经元505的输入集合中。

计算机可执行指令可以由使用各种编程语言和/或技术创建的计算机程序来编译或解译,所述编程语言和/或技术单独地或组合地包括但不限于Java、C、C、Visual Basic、Java Script、Perl、HTML等。通常,处理器(例如,微处理器)例如从存储器、计算机110可读介质等接收指令,并且执行这些指令,由此执行一个或多个过程,其包括本文所述的过程中的一者或多者。此类指令和其他数据可以使用各种计算机可读介质来存储和传输。联网装置中的文件通常是存储在计算机可读介质(诸如存储介质、随机存取存储器等)上的数据的集合。计算机可读介质包括参与提供可以由计算机110读取的数据(例如,指令)的任何介质。此类介质可采用许多形式,包括但不限于非易失性介质和易失性介质。指令可通过一种或多种传输介质来传输,所述一种或多种传输介质包括光纤、线、无线通信,包括构成耦合到计算机110的处理器的系统总线的内部件。常见形式的计算机可读介质包括例如RAM、PROM、EPROM、FLASH-EEPROM、任何其他存储器芯片或盒式磁带、或计算机110可从中读取的任何其他介质。

本文中“响应于”、“基于”和“在确定……时”的使用指示因果关系,而不仅仅是时间关系。

在附图中,相同的附图标记指示相同的元素。另外,可改变这些元素中的一些或全部。就本文所描述的介质、过程、系统、方法等而言,应理解,虽然此类过程的步骤等已经被描述为按照特定的顺序发生,但除非另有说明或从上下文中可以看出,可在按照本文所述顺序以外的顺序执行所述步骤的情况下实践此类过程。同样,还应当理解,可同时执行某些步骤,可添加其他步骤,或者可省略本文描述的某些步骤。换句话说,本文对过程的描述是出于说明某些实施例的目的而提供的,并且决不应解释为限制所要求保护的发明。

根据本发明,提供了一种系统,所述系统具有计算机,所述计算机包括处理器和存储器,所述存储器存储指令,所述指令可由处理器执行以:基于来自随机数生成器的输出来生成多个子图像,其中每个子图像是图像的至少两个分区的集合,图像的每个分区是与图像的每个其他分区不同的图像的一部分;将每个子图像输入到机器学习程序,所述机器学习程序被训练以输出在子图像中分类的对象;并且当具有相同分类的对象的子图像数量超过阈值时,将图像中的对象识别为分类对象。

根据实施例,所述指令还包括用于进行以下操作的指令:将图像划分为多个分区并且基于多个分区的总数来生成来自随机数生成器的输出。

根据实施例,所述指令还包括用于进行以下操作的指令:将识别图像中的对象的注解输入到机器学习程序并且确定注解是否与从机器学习程序输出的分类对象匹配。

根据实施例,所述指令还包括用于进行以下操作的指令:将匹配确定输入到机器学习程序的训练数据集中。

根据实施例,所述指令还包括用于进行以下操作的指令:当具有相同分类对象的子图像的数量没有超过阈值时,将图像输入到被训练以输出在图像中识别的对象的第二机器学习程序。

根据实施例,所述指令还包括用于进行以下操作的指令:向分区中的每一者分配识别号码,所述识别号码限定集合,并且随机数生成器的输出是识别号码集合的子集。

根据实施例,机器学习程序是多任务神经网络,其中多任务网络的每个任务被编程为对不同于其他任务的特定类型的对象进行分类。

根据实施例,所述指令还包括用于进行以下操作的指令:识别图像中的多个分类区域,每个分类区域是图像中的机器学习程序输出对象的识别的区域;并且基于识别的多个分类区域来确定图像的分区数量。

根据实施例,所述指令还包括用于进行以下操作的指令:生成不包括分类区域的至少一个分区。

根据实施例,所述指令还包括用于进行以下操作的指令:当在图像中识别对象时,基于识别的对象致动车辆子系统。

根据实施例,所述指令还包括用于进行以下操作的指令:以网格图案将图像划分为多个相等大小的分区。

根据实施例,所述指令还包括用于进行以下操作的指令:基于以网格图案的分区来生成多个子图像;以第二网格图案将图像划分为第二多个相等大小的分区;并且基于以第二网格图案的分区生成第二多个子图像。

根据本发明,一种方法包括:基于来自随机数生成器的输出来生成多个子图像,其中每个子图像是图像的至少两个分区的集合,图像的每个分区是与图像的每个其他分区不同的图像的一部分;将每个子图像输入到机器学习程序,所述机器学习程序被训练以输出在子图像中分类的对象;并且当具有相同分类的对象的子图像数量超过阈值时,将图像中的对象识别为分类对象。

在本发明的一个方面,所述方法包括:将图像划分为多个分区并且基于多个分区的总数来生成来自随机数生成器的输出。

在本发明的一个方面,所述方法包括:将识别图像中的对象的注解输入到机器学习程序并且确定注解是否与从机器学习程序输出的分类对象匹配。

在本发明的一个方面,所述方法包括:当具有相同分类对象的子图像的数量没有超过阈值时,将图像输入到被训练以输出在图像中识别的对象的第二机器学习程序。

在本发明的一个方面,所述方法包括:向分区中的每一者分配识别号码,所述识别号码限定集合,并且随机数生成器的输出是识别号码集合的子集。

在本发明的一个方面,机器学习程序是多任务神经网络,其中多任务网络的每个任务被编程为对不同于其他任务的特定类型的对象进行分类。

在本发明的一个方面,所述方法包括:当在图像中识别对象时,基于识别的对象致动车辆子系统。

在本发明的一个方面,所述方法包括:以网格图案将图像划分为多个相等大小的分区。

相关技术
  • 对象检测方法和用于对象检测的神经网络系统
  • 为进行检测对象体表面的检测的双线光学检测系统
  • 用于响应于在真实环境中检测到的用户姿势而将增强现实增强投影到真实对象的方法和设备
  • 检测用信息登录装置、对象物体检测装置、电子设备、检测用信息登录装置的控制方法、对象物体检测装置的控制方法、检测用信息登录装置控制程序、对象物体检测装置控制程序
技术分类

06120115627766