Systems and methods for image preprocessing to improve accuracy of object recognition
Mar 8, 2018 - Capital One Services, LLC
The present disclosure relates to image preprocessing to improve object recognition. In one implementation, a system for preprocessing an image for object recognition may include at least one memory storing instructions and at least one processor configured to execute the instructions to perform operations. The operations may include receiving the image, detecting a plurality of bounding boxes within the image, grouping the plurality of bounding boxes into a plurality of groups such that bounding boxes within a group have shared areas exceeding an area threshold, deriving a first subset of the plurality of bounding boxes by selecting bounding boxes having highest class confidence scores from at least one group, selecting a bounding box from the first subset having a highest score based on area and class confidence score, and outputting the selected bounding box.
Latest Capital One Services, LLC Patents:
- Monitoring cash supply-related information and managing refill of a cash supply
- Systems for providing electronic items having customizable locking mechanism
- Transaction card mode related to locating a transaction card
- Systems and methods for providing credentialless login using a random one-time passcode
- Near field communication device capable of operating in a powered or unpowered mode
Skip to: Description · Claims · References Cited · Patent History · Patent History
Description
TECHNICAL FIELD
This disclosure relates generally to the field of image processing. More specifically, and without limitation, this disclosure relates to systems and methods for improving object recognition by preprocessing an image.
BACKGROUND
Extant image recognition algorithms, such as classifiers, cascading classifiers, neural networks, convolutional neural networks, or the like achieve high accuracy (e.g., comparable to humans) when images contain a single object that is large and centered. However, the accuracy of extant algorithms is decreased when multiple objects are present within the image. This is due, in part, to conflicting classifications when different objects (such as a vehicle and a person, a kitten and a ball, or the like) are present within the image. This is also due, in part, to interference between features extracted from the multiple objects within the same image.
One extant solution for object recognition is the use of bounding box algorithms. Such algorithms, which often comprise neural networks or convolutional neural networks, may detect a plurality of objects within an image and assign one or more possible boxes to the detected objects, the boxes defining areas of the image corresponding to the detected objects. However, such algorithms usually generate many (e.g., on the order of 1000 or more) bounding boxes. Extant techniques, such as non-maximum pooling, allow for reducing the number of bounding boxes. However, such techniques often do not account for false positives. Moreover, such techniques often do not allow for the selection of one or more classes of interest and/or regions of interest within the image.
Moreover, extant bounding box algorithms usually only classify objects enclosed by bounding boxes into one of a limited number of classes, such as “person,” “vehicle,” “sign,” or the like. More detailed object recognition (such as identifying a make and model of a detected vehicle or identifying an architectural style of a detected building or other fine-grained classification problems) often requires additional processing. For example, additional convolutional neural networks that recognize objects based on feature analysis may be used. However, such recognition is particularly error prone when a plurality of possible objects is included in the same image. Moreover, such recognition is costly and, therefore, cannot effectively be performed on the large number of possible bounding boxes detected within the image.
SUMMARY
Disclosed are systems and methods for preprocessing an image for object recognition. Accordingly, disclosed systems and methods result in improved accuracy if images having a plurality of objects are fed into an object recognition algorithm. Moreover, disclosed systems and methods may allow for seamless fine-tuning of object recognition to regions centered on one or more pixels. In addition, disclosed systems and methods may allow for seamless fine-tuning of object recognition to one or more selected classes of objects. Accordingly, disclosed systems and methods use technical solutions to solve problems regarding the accuracy and adjustability of object recognition algorithms.
There are many possible applications for such capabilities. Examples of applications include identification one or more objects of interest in a crowded image, e.g., a vehicle of interest on a busy street or in a parking lot, a person of interest on a busy sidewalk or in a crowd, or the like. Additional examples of applications may include cropping
用于图像预处理的系统和方法,以提高对象识别的准确性
2018年3月8日 - Capital One Services,LLC
本专利涉及用于改善对象识别的图像预处理。在一个实现中,用于预处理对象识别图像的系统可以包括包括至少一个存储指令的存储器和至少一个配置为执行执行操作的指令的处理器。所述操作可以包括接收所述图像、检测所述图像中的多个边界框、将所述多个边界框分组为多个组,使得所述组中的边界框具有超过区域阈值的共享区域,通过至少一个组中保存最高的类置信度得分,根据区域和类置信度得分具有最高得分的第一个子集中选择一个边界框,并输出所选的边界框。
最新Capital One Services,LLC专利:
- 监控现金供应相关的信息并管理现金供应
- 用于提供具有可定制锁定机制的电子物品的系统
- 与定位交易卡有关的交易卡模式
- 使用随机一次性密码提供无凭证登录的系统和方法
- 能够在供电或无供电模式下操作的近场通信设备
研究说明
一. 技术领域
本专利一般涉及图像处理领域。更具体但不限于此,本专利涉及用于通过预处理图像来改善对象识别的系统和方法。
二. 研究背景
现有的图像识别算法,例如分类器,级联分类器,神经网络,卷积神经网络等,当图像包含大且居中的单个对象时,可实现高精度(例如,与人类相当)。然而,当图像内存在多个对象时,现有算法的准确性就会降低。这在一定程度上是由于当图像内存在不同对象(诸如车辆和人,小猫和球等)时,分类会发生冲突。这部分也是由于从同一图像内的多个对象提取的特征之间的干扰。
用于对象识别的一种现存解决方案是使用边界框算法。这种算法通常包括神经网络或卷积神经网络,可以检测图像内的多个对象,并将一个或多个可能的框分配给检测到的对象,这些框定义与检测到对象对应的图像区域。然而,这种算法通常产生许多(例如,大约1000或更多)边界框。现有技术(例如非最大池化)允许减少边界框的数量。然而,这些技术通常不能解释假阳性。此外,这些技术通常不允许在图像内选择一个或多个感兴趣类别或感兴趣区域。
此外,现存的边界框算法通常仅将由边界框包围的对象分类为有限数量的类之一,例如“人”,“车辆”,“符号”等。更详细的对象识别(诸如识别检测到的车辆的品牌和型号,或识别被检测建筑物的建筑风格,或其他细粒度分类问题)通常需要额外的处理。例如,可以使用基于特征分析识别对象的附加卷积神经网络。然而,当多个可能的对象包括在同一图像中时,这种识别特别容易出错。而且,这种识别成本很高,因此,不能有效地对图像内检测到的大量可能的边界框进行识别。
三. 概要
公开了用于对象识别的图像预处理的系统和方法。因此,如果将具有多个对象的图像输入到对象识别算法中,则所公开的系统和方法可提高精度。此外,所公开的系统和方法可以允许对以一个或多个像素为中心的区域进行对象识别的无缝微调。另外,所公开的系统和方法可以允许对一个或多个选定的对象类进行对象识别的无缝微调。因此,所公开的系统和方法使用技术解决方案来解决关于对象识别算法的准确性和可调整性的问题。
这种功能有许多可能的应用。应用的示例包括识别拥挤图像中的一个或多个感兴趣对象,例如,在繁忙街道或停车场中感兴趣的车辆,在繁忙的人行道上或在人群中感兴趣的人等。应用的附加示例可以包括裁剪图像以便改进分类和索引,例如,减少图像的一个或多个边缘上的噪点,将具有多个对象的图像划分为多个子图像,等等。 。
根据本专利的示例性实施例,用于预处理对象识别的图像的系统可包括包括至少一个存储指令的存储器和至少一个配置为执行执行操作的指令的处理器。操作可以包括:接收图像,检测图像内的多个边界框,将多个边界框分组为多个组,使得组内的边界框具有超过区域阈值的共享区域,通过选择边界框派生多个边界框的第一个子集。从至少一个组中具有最高的类置信度得分,从基于区域和类置信度得分具有最高得分的第一个子集中选择边界框,并输出所选边界框。
根据本专利的另一实施例,用于预处理用于对象识别的图像的系统可以包括至少一个存储指令的存储器和至少一个处理器,所述处理器配置为执行执行操作的指令。操作可以包括:接收具有尺寸的图像,调整图像的大小以匹配模型的输入尺寸,使用模型,检测调整大小后的图像内的多个边界框,将多个边界框分组成多个组,使得组内的边界框具有超过区域阈值的共享区域,通过从至少一个组中选择具有最高类置信度得分的边界框来派生多个边界框的第一个子集,从基于区域和类置信度得分具有最高得分的第一个子集中选择边界框,根据接收的尺寸缩放所选边界框、图像和输入尺寸,并输出缩放的边界框。
根据本专利的示例性实施例,用于预处理用于对象识别的图像的系统可以包括至少一个存储指令的存储器和至少一个配置为执行执行操作的指令的处理器。操作可以包括:接收具有尺寸的图像,调整图像大小以匹配模型的输入尺寸,使用该模型,检测所调整图像中的多个边界框,通过消除具有低于FIR的最高类置信度分数的边界框来派生所述多个边界框的第一个子集。通过消除不在选定类内具有最高类置信度得分的边界框来派生第一个子集的第二个子集,将第二个子集的边界框分组为多个组,以便组内的边界框具有超过区域阈值的共享区域,派生通过从至少一个组中选择具有最高类置信度得分的边界框,从经过削减的第三个子集中选择边界框,通过消除不包括图像中心点的边界框来削减第三个子集,从而使所选边界框具有最高的基于区域和类的置信度得分,根据接收图像的尺寸和输入尺寸缩放选定的边界框,并输出缩放的边界框。
根据本专利的另一实施例,一种用于对图像执行对象识别的系统可包括:至少一个存储器存储指令;以及至少一个处理器,被配置为执行指令以执行操作。操作可以包括:接收图像; 使用第一神经网络,生成定义图像内多个边界框的矩阵,边界框具有相关区域和相关的类置信度分数; 通过使用非最大抑制来削减矩阵; 通过基于相关区域和最高相关类别置信度得分的综合得分对由削减矩阵定义的边界框进行排序; 根据排名选择至少一个边界框; 基于所述至少一个所选边界框生成至少一个裁剪图像;
根据本专利的示例性实施例,用于在图像上执行对象识别的系统可以包括至少一个存储指令的存储器和至少一个配置为执行执行操作的指令的处理器。操作可以包括:接收图像;使用第一神经网络生成矩阵,定义图像中的多个边界框,边界框具有相关区域和相关类置信度得分;通过消除不在一个或更多选择的类;根据关联区域和最高关联置信度得分,通过组合得分对由Pared矩阵定义的边界框进行排名;根据排名选择至少一个边界框;基于至少一个选择的边界框生成至少一个裁剪的图像;以及输入至少一个裁剪的图像。使用第二个神经网络对至少一个选定边界框内的至少一个对象进行分类。
根据本专利的另一实施例,用于在图像上执行对象识别的系统可以包括至少一个存储指令的存储器和至少一个配置为执行执行操作的指令的处理器。操作可以包括:接收图像;使用第一神经网络,生成定义图像中多个边界框的矩阵,边界框具有相关区域、相关类和相关置信度得分;通过消除边界框来分割矩阵。通过基于相关区域和最高相关置信度得分的综合得分对由削减矩阵定义的边界框进行排序; 根据排名选择至少一个边界框; 基于所述至少一个所选边界框生成至少一个裁剪图像; 将所述至少一个裁剪图像输入到第二神经网络以生成与所述至少一个所选边界框相关联的特征; 并且将所生成的特征输入到第三神经网络中,以基于相关联的特征对所述至少一个所选边界框内的至少一个对象进行分类。
本专利的其它实施例包括非暂时性计算机可读介质存储指令,所述指令使得一个或多个处理器执行本文公开的任何方法。
本专利的其他目的和优点将部分地在以下详细描述中阐述,并且部分将由本领域普通技术人员基于描述来理解,或者可以通过本专利的实践来学习。本发明的目的和优点将通过所附声明书中特别指出的要素和组合来实现和实现。
应理解,上述一般说明和以下详细说明仅为示例性和解释性,不限制专利的实施例。
四. 附图的简要说明
包括本说明书的一部分的附图示出了若干实施例,并且与说明书一起用于解释专利的原理。在图纸中:
- 图1是根据本公开的实施例的用于在预处理图像上进行对象识别的示例流水线的示意图。
- 图2A是与本公开的实施例一致的示例性边界框算法的示意图。
- 图2B是与本公开的实施例一致的另一示例边界框算法的示意图。
- 图3是根据本公开的实施例的消除具有重叠区域的边界框的示意图。
- 图4是根据本公开的实施例的选择居中的边界框的示意图。
- 图5是根据本公开的实施例的通过类置信度得分选择边界框的示意图。
- 图6是根据本公开的实施例的用于预处理用于对象识别的图像的示例性方法的流图。
- 图7是根据本公开的实施例的用于预处理用于对象识别的图像的另一示例性方法的流程图。
- 图8是根据本公开的实施例的用于在预处理图像上进行对象识别的示例性方法的流程图。
五.详细说明
专利的实施例涉及用于预处理用于对象识别的图像的系统和方法。可以使用至少一个处理器和至少一个存储器来实现本专利的实施例,如下所述。在一些实施例中,至少一个处理器可以包括微处理器,例如中央处理单元(CPU)、图形处理单元(GPU)或其他能够通过执行指令指定的操作来执行计算机程序指令的电子电路。或者或同时,至少一个处理器可以包含一个或多个使用合适的电路元件(例如,一个或多个特定于应用的集成电路(ASIC)、现场可编程门阵列(FPGA)等)根据本公开的实施例构建的专用设备。在一些实施例中,至少一个存储器可以包括易失性存储器,例如随机存取存储器(RAM)、非易失性存储器,例如硬盘驱动器、闪存等或其任何组合。
根据本专利的一方面,用于预处理用于对象识别的图像的系统可以包括至少一个处理器。至少一个处理器可以被配置为接收图像。如本文所用,术语“图像”是指由一个或多个光束形成的场景的任何数字表示。图像可以包括多个像素,每个像素存储相应的颜色和/或强度数据(例如,RGB,CMYK或灰度数据)。图像可以以任何适当的格式存储,例如位图(BMP)格式,联合图像专家组(JPEG)格式,图形交换格式(GIF),标记图像文件格式(TIFF),原始格式等。所述至少一个处理器可以通过计算机网络(例如,通过使用网络接口控制器(NIC)、图像传感器(例如电荷耦合器件(CCD)、互补金属氧化物半导体(CMOS)、n型金属氧化物)接收来自存储器(例如,通过一条或多条总线)的图像。de Semiconductor Logic(NMOS)等。
至少一个处理器还可以被配置为检测接收的图像内的多个边界框。例如,至少一个处理器可以使用卷积神经网络来检测多个边界框。卷积神经网络可以包括例如You Only Look Once(YOLO)架构,Single-Shot Detector(SSD)架构等。
此外,至少一个处理器可以被配置为检测接收图像内的多个边界多边形或其他图像分割。为便于使用,在本节中使用术语边界框,但是本领域普通技术人员将理解此处的系统和方法如何可以依赖边界多边形或其他图像分割方法而不是边界框的使用,或者除了边界框的使用之外。
每个边界框可以由包含在边界框中的图像中的多个像素定义。因此,每个边界框可能具有关联的大小。在一些实施例中,每个边界框可以包括一个或多个可能的分类。例如,边界框可以被分类为最可能的人,其次是最可能的树等。此外,或者,边界框可以被分类为70%的人,20%的车辆,5%的天空和5%的地面等。在一些实施例中,每个分类可以包括相应的置信度得分,例如,分类为具有80%置信度的车辆,分类为具有20%置信度的割草机等。此外,或者,每个边界框可以包括总体置信度得分,例如,指示关于对象是否为包含在边界框中。
在一些实施例中,边界框(或多边形、或其他图像分割)可以由表示边界框位置的矩阵(例如,中心点、左上点、右上点、左下点、右下点或类似点)、边界框的尺寸(例如,高度、宽度或类似点)来定义。或更多置信度得分、一个或多个分类等。例如,矩阵可以存储为多维数组。因此,本文所述的任何子集派生、边界框选择和边界框消除可分别包含不在子集、未选择值或消除值内的值的存储矩阵的取整(例如,通过删除、归零或类似操作)。
所述至少一个处理器可以配置为将所述多个边界框分组为多个组,使得所述组内的边界框具有超过区域阈值的共享区域。例如,如果第一边界框具有第一区域并且第二边界框的第二区域中还包括第一区域的至少一个阈值量,则第一边界框可以与第二边界框组合。在一些实施例中,边界框可以属于多个组。例如,如果第一边界框具有第一区域并且第二边界框的第二区域中还包括第一区域的至少一个阈值量,则第一边界框可以与第一组中的第二边界框分组,并且如果第三边界框具有第三区域并且第三区域的至少一个阈值量为al因此,包括在第二边界框的第二区域中,第三边界框可以与第二组中的第二边界框分组。阈值可包含绝对值(例如10000像素、100000像素或类似值)或可包含相对值(例如50%、60%、70%或类似值)。
至少一个处理器可以进一步配置为通过从多个边界框中选择具有来自不同边界框组的最高类置信分数的边界框(例如,从一组边界框中选择具有最高类置信分数的边界框)从多个边界框中派生第一选择边界框的子集。图像中的ng框)。需要注意的是,术语“第一选择”仅用于区分本步骤中选择的边界框子集与最初检测到的边界框(如上所述)以及可选后续步骤中选择的边界框(如下文所述的“第二选择”边界框)。在某些实施例中,没有从第一个选定边界框的子集
资料编号:[3777]
以上是毕业论文外文翻译,课题毕业论文、任务书、文献综述、开题报告、程序设计、图纸设计等资料可联系客服协助查找。