CN111199553A - 针对图像中的对象的自动边界框生成 - Google Patents
针对图像中的对象的自动边界框生成 Download PDFInfo
- Publication number
- CN111199553A CN111199553A CN201911135360.1A CN201911135360A CN111199553A CN 111199553 A CN111199553 A CN 111199553A CN 201911135360 A CN201911135360 A CN 201911135360A CN 111199553 A CN111199553 A CN 111199553A
- Authority
- CN
- China
- Prior art keywords
- image
- images
- bounding box
- computer
- label
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V20/00—Scenes; Scene-specific elements
- G06V20/50—Context or environment of the image
- G06V20/56—Context or environment of the image exterior to a vehicle by using sensors mounted on the vehicle
- G06V20/58—Recognition of moving objects or obstacles, e.g. vehicles or pedestrians; Recognition of traffic objects, e.g. traffic signs, traffic lights or roads
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/25—Fusion techniques
- G06F18/254—Fusion techniques of classification results, e.g. of results related to same input data
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/10—Segmentation; Edge detection
- G06T7/11—Region-based segmentation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/10—Segmentation; Edge detection
- G06T7/136—Segmentation; Edge detection involving thresholding
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/10—Segmentation; Edge detection
- G06T7/181—Segmentation; Edge detection involving edge growing; involving edge linking
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/10—Segmentation; Edge detection
- G06T7/187—Segmentation; Edge detection involving region growing; involving region merging; involving connected component labelling
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/20—Image preprocessing
- G06V10/25—Determination of region of interest [ROI] or a volume of interest [VOI]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/764—Arrangements for image or video recognition or understanding using pattern recognition or machine learning using classification, e.g. of video objects
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/77—Processing image or video features in feature spaces; using data integration or data reduction, e.g. principal component analysis [PCA] or independent component analysis [ICA] or self-organising maps [SOM]; Blind source separation
- G06V10/80—Fusion, i.e. combining data from various sources at the sensor level, preprocessing level, feature extraction level or classification level
- G06V10/809—Fusion, i.e. combining data from various sources at the sensor level, preprocessing level, feature extraction level or classification level of classification results, e.g. where the classifiers operate on the same input data
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/82—Arrangements for image or video recognition or understanding using pattern recognition or machine learning using neural networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/10—Image acquisition modality
- G06T2207/10004—Still image; Photographic image
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Multimedia (AREA)
- Evolutionary Computation (AREA)
- Artificial Intelligence (AREA)
- Databases & Information Systems (AREA)
- Computing Systems (AREA)
- Health & Medical Sciences (AREA)
- General Health & Medical Sciences (AREA)
- Medical Informatics (AREA)
- Software Systems (AREA)
- Data Mining & Analysis (AREA)
- Life Sciences & Earth Sciences (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Bioinformatics & Computational Biology (AREA)
- Evolutionary Biology (AREA)
- General Engineering & Computer Science (AREA)
- Image Analysis (AREA)
Abstract
本申请的各实施例涉及针对图像中的对象的自动边界框生成。本文中描述的一个或多个实施例包括一种确定针对图像中的对象的边界框的计算机实现的方法。该方法包括使用第一算法确定针对第一图像中的对象的标签,以及基于第一图像、通过从选择的方向裁剪第一图像来生成图像集合。该方法还包括使用第一算法确定针对该集合中的每个图像的标签,以及从该集合去除图像,从而使得剩余图像具有与初始标签匹配的标签。该方法还包括确定针对该集合的关键图像,关键图像是来自该集合的、具有超过阈值的置信度得分的最小图像。此外,该方法包括基于第一图像的与关键图像重叠的一部分的周长来确定第一图像中的对象的边界框。
Description
技术领域
本发明涉及计算技术,并且特别地涉及用于针对图像中的对象的自动边界框生成的技术。在一个或多个示例中,具有针对图像中的对象而被标识的边界框的这样的图像被用作训练数据集。
背景技术
在过去的几年中,基于数字图像的对象检测得到了越来越多的关注。例如,对象检测系统当前正在高级驾驶员辅助系统(ADAS)、电子商务应用和各种其他领域中被实现。传统的对象检测方法通常涉及两个阶段。首先,在检测阶段中,包含目标对象的候选的图像区域被检测或定位。然后,在识别阶段中,这样的区域被进一步分析以识别具体内容。然而,这些传统的对象检测系统和方法通常需要大量的训练数据、计算资源,检测速度较慢并且有时可能不准确。针对感兴趣对象的具有边界框的训练数据不容易找到,并且其生成需要付出努力。
发明内容
本文中描述的一个或多个实施例包括一种确定针对图像中的对象的边界框的计算机实现的方法。该方法包括使用第一算法确定针对第一图像中的对象的标签,以及基于第一图像、通过从选择的方向裁剪(crop)第一图像来生成图像集合。该方法还包括使用第一算法确定针对该集合中的每个图像的标签,以及从该集合去除图像,从而使得图像的剩余部分具有与初始标签匹配的标签。该方法还包括确定针对该集合的关键图像,关键图像来自该集合的、具有超过阈值的置信度得分的最小图像。此外,该方法包括基于第一图像的与关键图像重叠的一部分的周长来确定针对第一图像中的对象的边界框。
根据本发明的一个或多个实施例,一种系统包括图像数据库,该图像数据库具有包含一个或多个对象的图像,以及标识图像中的一个或多个对象的标签。该系统还包括处理器,该处理器被配置为使用方法从图像数据库确定针对第一图像中的对象的边界框,该方法包括使用第一算法确定针对第一图像中的对象的标签,以及基于第一图像,通过从选择的方向裁剪第一图像来生成图像集合。该方法还包括使用第一算法确定针对该集合中的每个图像的标签,以及从该集合去除图像,从而使得剩余图像具有与初始标签匹配的标签。该方法还包括确定针对该集合的关键图像,关键图像是来自该集合的、具有超过阈值的置信度得分的最小图像。此外,该方法包括基于第一图像的与关键图像重叠的一部分的周长来确定针对第一图像中的对象的边界框。
根据本发明的一个或多个实施例,一种计算机程序产品包括计算机可读存储介质,该计算机可读存储介质具有存储于其上的程序指令,该程序指令由一个或多个处理设备可执行以执行方法,该方法包括:使用第一算法确定针对第一图像中的对象的标签,以及基于第一图像、通过从选择的方向裁剪第一图像来生成图像集合。该方法还包括使用第一算法确定针对该集合中的每个图像的标签,以及从该集合去除图像,从而使得剩余图像具有与初始标签匹配的标签。该方法还包括确定针对该集合的关键图像,关键图像是来自该集合的、具有超过阈值的置信度得分的最小图像。此外,该方法包括基于第一图像的与关键图像重叠的一部分的周长来确定针对第一图像中的对象的边界框。
通过本发明的技术实现了附加的特征和优点。本发明的其他实施例和方面在本文中被详细描述,并且被视为所要求保护的发明的一部分。为了更好地理解本发明的优点和特征,参考说明书和附图。
应当理解,技术方案在应用中不限于以下描述中被阐述的或在附图中被示出的构造的细节和组件的布置。这些技术方案还能够具有除了所描述的那些之外的其他实施例,并且能够以各种方式来实践和执行。另外,应当理解,本文中采用的措词和术语以及摘要是出于描述的目的,而不应当被认为是限制性的。这样,本领域技术人员将认识到,本公开所基于的概念可以容易地用作设计用于实现当前描述的技术方案的几个目的的其他结构、方法和系统的基础。
附图说明
参考以下附图和描述,将能够更好地理解贯穿本文档描述的示例。图中的组件不一定按比例绘制。此外,在附图中,贯穿不同的视图,相似的附图标记指代相应的部分。
图1描绘了被用于利用边界框标记训练图像的现有系统;
图2示出了用于在图像中生成边界框的示例现有系统;
图3描绘了根据本发明的一个或多个实施例的用于自动地生成训练图像集合的系统的框图;
图4描绘了针对根据本发明的一个或多个实施例的自动地生成训练图像集合的方法的流程图;以及
图5描绘了本发明的一个或多个实施例的示例场景的视觉表示。
具体实施方式
本文中参考相关附图描述了本发明的各种实施例。可以在不脱离本发明的范围的情况下设计本发明的替代实施例。在以下描述和附图中,阐述了元件之间的各种连接和位置关系(例如,上方、下方、相邻等)。除非另有说明,否则这些连接和/或位置关系可以是直接的或间接的,并且本发明并不意图在这方面进行限制。因此,实体的耦合可以是指直接或间接耦合,并且实体之间的位置关系可以是直接或间接位置关系。此外,本文中描述的各种任务和过程步骤可以被并入具有本文中未详细描述的附加步骤或功能的更全面的程序或过程中。
以下定义和缩写用于解释权利要求和说明书。如本文中使用的,术语“包括(comprises)”、“包括(comprising)”、“包括(includes)”、“包括(including)”、“具有(has)”、“具有(having)”、“包含(contains)”或“包含(containing)”或其任何其他变型旨在覆盖非排他性的包括。例如,包括一系列元素的组合物、混合物、过程、方法、制品或装置不必仅限于这些元素,而是可以包括未明确列出的或者这样的组合物、混合物、过程、方法、制品或装置所固有的其他元素。
此外,术语“示例性”在本文中用来表示“用作示例、实例或说明”。本文中描述为“示例性”的任何实施例或设计不必被解释为比其他实施例优选或有利。设计。术语“至少一个”和“一个或多个”可以被理解为包括大于或等于1的任何整数,即1、2、3、4等。术语“多个”可以被理解为包括大于或等于2的任何整数,即2、3、4、5等。术语“连接”可以同时包括间接“连接”和直接“连接”。
术语“大约”、“基本上”、“近似”及其变体旨在包括与基于提交申请时可用的设备的特定数量的测量相关联的误差程度。例如,“大约”可以包括给定值的±8%或5%或2%的范围。
为了简洁起见,在本文中可以或可以不详细描述与制造和使用本发明的各方面有关的常规技术。特别地,用以实现本文中描述的各种技术特征的计算系统和特定计算机程序的各个方面是公知的。因此,为了简洁起见,很多传统的实现细节在本文中仅被简要提及,或者被完全省略而不提供公知的系统和/或过程细节。
应当注意,本文中的描述是指电子图像中的对象检测,因此,本文中对“图像”的这样的引用是指电子图像,其可以按照诸如JPEG、PNG等任何电子格式被存储。
在计算技术中,可以使用在可编程计算机上运行的人工神经网络(ANN)或机器学习算法来执行自动地检测图像中的对象以及标记图像中的这样的检测到的对象。为了使ANN能够按预期操作,必须对ANN进行训练。在这种情况中,为了训练ANN以检测和标记图像中的对象,必须利用已经与针对这些图像中的对象的边界框相关联的图像来训练ANN。这样的训练图像上的边界框通常是手动完成的。用以生成这样的训练图像的这样的体力劳动会变得昂贵并且也很慢。
因此,目前,没有太多的训练图像可用于ANN使用和被训练以用于自动对象检测。这是对计算技术中的大规模对象检测的主要技术挑战。例如,训练图像的最大数据库之一是Microsoft COntext公共对象(MS COCO),其包含91个公共对象类别,其中82个公共对象类别具有超过5,000个标记的实例。它总共具有328,000个图像。
因此,本发明的实施例提供了使用现有ANN的技术,现有ANN被训练以识别大量不同对象以帮助针对训练图像中的检测到的对象自动地创建边界框。根据本发明的一个或多个实施例,可以相对快速地并且在大得多的数据集上完成标记训练图像中的对象,因此解决了本文中描述的技术问题。
例如,本发明的实施例可以被用于在经由图像数据库可获取的图像上生成边界框,在该图像数据库中每个图像利用标识图像中一个或多个对象的标签被标记。这样的图像数据库包括具有1400万个图像的IMAGENET-22K、具有800万个图像的PLACES-2、OPENIMAGES以及其他这样的图像数据库。
图1描绘了被用于利用边界框标记训练图像的现有系统。在此,用户105(人类)使用边界框标记系统110从图像集合120手动地创建训练图像集合130。用户通过在图像集合130中的每个图像中的对象125上手动地标记边界框135来创建训练图像集合130。具有边界框135的对应图像被存储在训练图像集合130中。可以理解,所描绘的对象是示例,并且在本发明的一个或多个实施例中,图像集合130可以包含大量图像(数千个、数百万个等),并且每个图像可以包含一个或多个对象125,这可能比图1中所示的对象更为复杂。被这样创建的训练图像集合130被用于训练可以包括ANN的对象检测系统140。对象检测系统140可以基于训练来自动地检测查询图像150中的一个或多个对象。
边界框标记系统110和对象检测系统140可以是计算设备,诸如计算机服务器、台式计算机、膝上型计算机、平板计算机、电话或任何其他计算设备。图像集合(120和130)可以在数据库系统上被访问/存储。
图2示出了示例系统200。系统200表示经由网络265通信的计算设备。系统200包括诸如电子电路的硬件,并且可以是由本发明的一个或多个实施例使用的计算设备中的任何计算设备。
除了其他组件,系统200包括经由本地I/O控制器235被通信耦合的处理器205、被耦合到存储器控制器215的存储器210以及一个或多个输入设备245和/或输出设备240(诸如外围设备或控制设备)。这些设备240和245可以包括例如电池传感器、位置传感器、指示器/标识灯等。诸如传统键盘250和鼠标255的输入设备可以被耦合到I/O控制器235。I/O控制器235可以是例如一个或多个总线或其他有线或无线连接,如本领域已知的。I/O控制器235可以具有为了简化而被省略的附加元件(诸如控制器、缓冲器(高速缓存)、驱动器、转发器和接收器)以实现通信。
I/O设备240、245还可以包括传送输入和输出二者的设备(例如,磁盘和磁带存储装置)、网络接口卡(NIC)或调制器/解调器(用于访问其他文件、设备、系统或网络)、射频(RF)或其他收发器、电话接口、网桥、路由器等。
处理器205是用于执行硬件指令或软件(特别是被存储在存储器210中的硬件指令或软件)的硬件设备。处理器205可以是定制或商用处理器、中央处理器(CPU)、辅助处理器(与系统200相关联的若干处理器中的)、基于半导体的微处理器(以微芯片或芯片组的形式)、宏处理器或用于执行指令的其他设备。处理器205包括高速缓存270,高速缓存270可以包括但不限于用以加速可执行指令取读的指令高速缓存、用以加速数据取读和存储的数据高速缓存以及被用于加速针对可执行指令和数据的虚拟到物理地址转换的转换后备缓冲器(TLB)。高速缓存270可以被组织为更多高速缓存级别(L1、L2等)的层级。
存储器210可以包括易失性存储器元件(例如,随机存取存储器、RAM,诸如DRAM、SRAM、SDRAM)和非易失性存储器元件(例如,ROM、可擦除可编程只读存储器(EPROM)、电可擦除可编程只读存储器(EEPROM)、可编程只读存储器(PROM)、磁带、光盘只读存储器(CD-ROM)、磁盘、软盘、盒带、盒式磁带等)之一或组合。此外,存储器210可以并入电子、磁性、光学或其他类型的存储介质。注意,存储器210可以具有分布式架构,其中各种组件彼此远离被放置,但是可以由处理器205访问。
存储器210中的指令可以包括一个或多个单独的程序,程序中的每个程序包括用于实现逻辑功能的可执行指令的有序列表。在图2的示例中,存储器210中的指令包括合适的操作系统(OS)211。操作系统211本质上可以控制其他计算机程序的执行,并且提供调度、输入输出控制、文件和数据管理、存储器管理以及通信控制和相关的服务。
附加数据(包括例如用于处理器205的指令或其他可取回信息)可以被存储在存储装置220中,存储装置220可以是诸如硬盘驱动器或固态驱动器。存储器210或存储设备220中的存储的指令可以包括使得处理器能够执行本文中描述的系统和方法的一个或多个方面的指令。
系统200还可以包括被耦合到用户接口或显示器230的显示控制器225。在一些实施例中,显示器230可以是LCD屏幕。在其他实施例中,显示器230可以包括多个LED状态灯。在一些实施例中,系统200还可以包括用于耦合到网络265的网络接口260。网络265可以是用于经由宽带连接在系统200与外部服务器、客户端等之间的通信的基于IP的网络。在一个实施例中,网络265可以是卫星网络。网络265在系统200与外部系统之间传输和接收数据。在一些实施例中,网络265可以是由服务提供商管理的被管理IP网络。网络265可以按照无线方式而被实现,例如,使用诸如WiFi、WiMax、卫星等无线协议和技术。网络265也可以是分组交换网络,诸如局域网、广域网、城域网、因特网或其他类似类型的网络环境。网络265可以是固定无线网络、无线局域网(LAN)、无线广域网(WAN)、个域网(PAN)、虚拟专用网(VPN)、内联网或其他合适的网络系统,并且可以包括用于接收和传输信号的设备。
如前所述,被用于利用边界框标记训练图像的现有系统需要大量的手动输入,这增加了生成被用于训练对象检测系统140的ANN的训练图像集合130所需要的成本和时间。
因此,本发明的一个或多个实施例使用第二ANN自动地生成边界框并且生成训练图像集合130。ANN可以作为极其并行任务来生成边界框,并且因此可以通过使用更多机器执行ANN而被加速。此外,本发明的一个或多个实施例有助于将ANN用于基础对象以及定制对象。
图3描绘了根据本发明的一个或多个实施例的用于自动地生成训练图像集合的系统的框图。所描绘的系统300包括使用标记图像集合310的自动边界框标记系统310。自动边界框标记系统310可以是计算设备。标记图像集合310包括多个图像和被包括在图像中的对象125的多个标签325。例如,如图所示,第一标签325指示第一图像包括对象1,第二标签指示第二图像包括对象2,第三标签指示第二图像也包括对象3,以此类推。
自动边界框标记系统310生成训练图像集合130,该训练图像集合130包括来自标记图像集合120的图像,每个图像包括一个或多个边界框135。边界框135标记图像中的相应对象125的边界。在2D图像中,边界框125包括四个侧面,每个侧面在特定取向上标记对象125的边界。例如,在2D图像的情况中,边界框包括顶面、左面、右面和底面,分别对应于图像的顶部、左侧、右侧和底部边缘。边界框125可以是矩形、正方形或任何其他2D外壳。在一个或多个示例中,边界框135可以被存储为指示边界框135的四个侧面的坐标。可以使用任何其他技术来存储边界框135。
图4描绘了根据本发明的一个或多个实施例的自动生成训练图像集合的方法的流程图。在此,执行自动生成而无需用户105在图像上标记边框。如图所示,该方法包括访问来自标记图像集合320的图像。标记图像集合130包括多个图像和与图像相关联的用于指示图像中的对象125的标签325。例如,在IMAGENET-22K和PLACES-2数据集的情况中,标记图像集合320分别包括1400万个图像和800万个图像。
对标记图像集合320中的每个图像进行第一ANN以确定ANN是否可以检测到与与该图像相关联的标签325相对应的对象125(410)。如果第一ANN可以检测到对象125(420),则创建图像的裁剪副本(430)。创建裁切副本包括制作图像的n个副本(432),并且将图像的每个副本从选择的取向裁切预定量(434)。例如,选择的取向是右侧,并且预定量是图像的i*(1/n)*100%,其中i指示正在裁剪哪个副本(434)。在此,n是预定副本数,并且可以被配置。例如,如果n为50,则图像的第一副本(i=1)将从右侧被裁剪2%,第二副本(i=2)被裁剪4%,以此类推。此处,2%表示,从选择的取向(在该示例中为右侧)裁剪图像的长度的2%。
图5在视觉地描绘了以上示例场景。从标记图像集合320选择用于生成边界框的标记图像510。此处,用于裁剪的选择的取向是从右侧开始的。在制作了图像510的n个副本之后,将每个副本裁剪相应的预定量,该预定量取决于要裁剪哪个副本,每个副本被裁剪不同的量。以类似的方式,可以在诸如上、下和左等其他取向上裁剪标记图像510。
参考图4,对图像的每个副本进行对象检测ANN以确定是否可以从副本中检测到与与该图像相关联的标签325匹配的对象125(440)。在一个或多个示例中,对象检测ANN还生成置信度得分,置信度得分指示检测到的对象的置信度水平。应当注意,对象检测ANN可以在图形处理单元(GPU)、中央处理单元(CPU)或任何其他类型的处理单元上运行。在促进并行处理的硬件(如GPU)上,该方法可以包括对多个图像并行地进行本文中描述的处理。因此,本文中描述的方法可以通过以这种方式同时处理多个图像来加速。
此外,该方法包括从裁剪副本520寻找边界框边缘在选择的取向上的图像副本(440)。选择图像副本包括从裁剪副本520确定裁剪副本的丢弃集530(442)。丢弃集530包括产生与与图像510相关联的标签325不同的标签535的裁剪副本。对于剩余裁剪副本,选择具有最大i值并且在根据标签325检测对象125时至少产生预定置信度得分阈值的(非丢弃)图像副本550(444)。预定阈值可以是绝对值(例如,80%的置信度)或比例值(裁剪副本的最高置信度值的90%)。保留所选择的图像副本550用于进一步处理并且丢弃所有其他副本(446)。
该方法还包括确定图像510是否已经在所有取向(上、右、下、左)上被处理(450)。如果否,则如本文中描述的,选择下一取向并且再次处理保留的所选择的图像副本550(460)。取向处理的顺序可以因示例而异。一旦处理了所有取向(460),所得到的所选择的图像副本550就表示最小图像,其中可以以至少预定阈值置信度来标识对象125,并且对象的边缘是候选边界框135(470)。
在一个或多个示例中,针对选择取向的不同顺序重复该方法。例如,在第一迭代中,可以从左到右或从上到下选择取向,而在第二迭代中,可以以任何其他顺序选择取向。每次迭代产生不同的候选边界框。在生成多个候选边界框的情况中,这些候选边界框中的任何一个或候选边界框的组合可以被认为是边界框135。例如,候选边界框的组合可以是来自候选边界框的最大包围框,其用作边界框135。
本发明的一个或多个实施例促进确定图像中的对象的边界框。一种用于确定边界框的方法包括使用第一神经网络确定第一图像中的对象的标签。此外,该方法包括针对右方向、左方向、上方向和下方向中的每个,基于第一图像生成图像集合,其中图像集合中的每个图像是通过从给定方向裁剪第一图像而生成的。该方法还包括使用第一神经网络确定图像集合中的每个图像的标签。该方法还包括从图像集合去除图像,从而使得图像集合中的每个剩余图像具有与第一图像中的对象的标签匹配的标签。此外,该方法包括确定图像集合的关键图像,其中关键图像是图像集合中置信度得分超过阈值的最小图像;以及基于第一图像中与每个方向的每个关键图像重叠的部分的周长来确定第一图像中的对象的边界框。
代替通过同时操作图像的多个切片来生成边界框,本发明的一个或多个实施例通过重复地通过裁剪图像并且确定裁剪部分是否包含对象来对图像进行切片来促进自动确定图像中的对象的边界框。确定边界框的方法包括确定图像中的对象的标签。该方法还包括通过将图像沿着第一取向(或方向)裁剪预定量来生成第一裁剪图像。该方法还包括确定第一裁剪图像包括对象,并且在这种情况中,用第一裁剪图像替换图像。基于确定第一裁剪图像不包括对象,通过使用第一裁剪图像的尺寸来确定图像中的对象的边界框。
边界框是沿着第一取向的第一边界框,并且该方法还包括通过沿着第二取向裁剪图像来确定沿着第二取向的第二边界框。在一个或多个示例中,来自针对第一取向的迭代的最终图像被用作针对第二取向的起始图像。第一边界框和第二边界框用于同一对象。在一个或多个示例中,第一边界框和第二边界框用于不同对象。如本文所述,对象的标签由神经网络确定,该神经网络与使用所生成的边界框作为训练数据的神经网络分开。
因此,本发明的一个或多个实施例促进针对一个或多个图像集合的边界框的自动生成。每个边界框包含来自图像集合的图像中的对象。边界框是使用机器学习(诸如使用神经网络)自动生成的。这样生成的边界框用于为其他机器学习系统(诸如用于图像对象检测的神经网络系统)创建训练数据。例如,使用IMAGENET-22K,本发明的一个或多个实施例可以生成用于15000至21000个不同对象和标签的边界框,并且与用于生成这种边界框的现有解决方案相比,其速度要快几个数量级。
因此,例如在神经网络训练系统的情况中,本发明的一个或多个实施例提供了对计算机技术的改进,该神经网络训练系统需要图像具有图像中的对象的边界框以训练一个或多个神经网络。本文中描述的本发明的一个或多个实施例使用2D图像作为示例,但是,本发明的一个或多个实施例可以用于生成3D图像或其他类型的图像中的对象的边界框。此外,本发明的一个或多个实施例可以用于确定n维对象的边界框。
附图中的流程图和框图示出了根据本发明的各个实施例的系统、方法和计算机程序产品的可能实现的架构、功能和操作。就这一点而言,流程图或框图中的每个框可以代表代码的模块、段或部分,其包括用于实现指定逻辑功能的一个或多个可执行指令。
还应当注意,在一些替代实现中,框中指出的功能可以不按图中指出的顺序发生。例如,取决于所涉及的功能,连续示出的两个框实际上可以基本上同时执行,或者这些框有时可以以相反的顺序执行。还应当注意,框图和/或流程图说明的每个框、以及框图和/或流程图说明中的框的组合可以由执行指定功能或动作的基于专用硬件的系统来实现,或者可以由专用硬件和计算机指令的组合来实现。
本发明可以是系统、方法和/或计算机程序产品。计算机程序产品可以包括计算机可读存储介质,其上载有用于使处理器实现本发明的各个方面的计算机可读程序指令。
计算机可读存储介质可以是可以保持和存储由指令执行设备使用的指令的有形设备。计算机可读存储介质例如可以是――但不限于――电存储设备、磁存储设备、光存储设备、电磁存储设备、半导体存储设备或者上述的任意合适的组合。计算机可读存储介质的更具体的例子(非穷举的列表)包括:便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、静态随机存取存储器(SRAM)、便携式压缩盘只读存储器(CD-ROM)、数字多功能盘(DVD)、记忆棒、软盘、机械编码设备、例如其上存储有指令的打孔卡或凹槽内凸起结构、以及上述的任意合适的组合。这里所使用的计算机可读存储介质不被解释为瞬时信号本身,诸如无线电波或者其他自由传播的电磁波、通过波导或其他传输媒介传播的电磁波(例如,通过光纤电缆的光脉冲)、或者通过电线传输的电信号。
这里所描述的计算机可读程序指令可以从计算机可读存储介质下载到各个计算/处理设备,或者通过网络、例如因特网、局域网、广域网和/或无线网下载到外部计算机或外部存储设备。网络可以包括铜传输电缆、光纤传输、无线传输、路由器、防火墙、交换机、网关计算机和/或边缘服务器。每个计算/处理设备中的网络适配卡或者网络接口从网络接收计算机可读程序指令,并转发该计算机可读程序指令,以供存储在各个计算/处理设备中的计算机可读存储介质中。
用于执行本发明操作的计算机程序指令可以是汇编指令、指令集架构(ISA)指令、机器指令、机器相关指令、微代码、固件指令、状态设置数据或者以一种或多种编程语言的任意组合编写的源代码或目标代码,所述编程语言包括面向对象的编程语言—诸如Smalltalk、C++等,以及过程式编程语言—诸如“C”语言或类似的编程语言。计算机可读程序指令可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络—包括局域网(LAN)或广域网(WAN)—连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。在一些实施例中,通过利用计算机可读程序指令的状态信息来个性化定制电子电路,例如可编程逻辑电路、现场可编程门阵列(FPGA)或可编程逻辑阵列(PLA),该电子电路可以执行计算机可读程序指令,从而实现本发明的各个方面。
这里参照根据本发明实施例的方法、装置(系统)和计算机程序产品的流程图和/或框图描述了本发明的各个方面。应当理解,流程图和/或框图的每个方框以及流程图和/或框图中各方框的组合,都可以由计算机可读程序指令实现。
这些计算机可读程序指令可以提供给通用计算机、专用计算机或其它可编程数据处理装置的处理器,从而生产出一种机器,使得这些指令在通过计算机或其它可编程数据处理装置的处理器执行时,产生了实现流程图和/或框图中的一个或多个方框中规定的功能/动作的装置。也可以把这些计算机可读程序指令存储在计算机可读存储介质中,这些指令使得计算机、可编程数据处理装置和/或其他设备以特定方式工作,从而,存储有指令的计算机可读介质则包括一个制造品,其包括实现流程图和/或框图中的一个或多个方框中规定的功能/动作的各个方面的指令。
也可以把计算机可读程序指令加载到计算机、其它可编程数据处理装置、或其它设备上,使得在计算机、其它可编程数据处理装置或其它设备上执行一系列操作步骤,以产生计算机实现的过程,从而使得在计算机、其它可编程数据处理装置、或其它设备上执行的指令实现流程图和/或框图中的一个或多个方框中规定的功能/动作。
附图中的流程图和框图显示了根据本发明的多个实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或指令的一部分,所述模块、程序段或指令的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
以上已经描述了本发明的各实施例,上述说明是示例性的,并非穷尽性的,并且也不限于所披露的各实施例。在不偏离所说明的各实施例的范围和精神的情况下,对于本技术领域的普通技术人员来说许多修改和变更都是显而易见的。本文中所用术语的选择,旨在最好地解释各实施例的原理、实际应用或对市场中的技术的技术改进,或者使本技术领域的其它普通技术人员能理解本文披露的各实施例。
Claims (16)
1.一种确定针对图像中的对象的边界框的计算机实现的方法,所述方法包括:
使用第一算法确定针对第一图像中的对象的标签;
确定选择的方向:
基于所述第一图像来生成图像集合,其中所述图像集合中的每个图像通过从所述选择的方向裁剪所述第一图像而被生成;
使用所述第一算法确定针对所述图像集合中的每个图像的标签;
从所述图像集合去除图像,从而使得所述图像集合中剩余的每个图像具有与针对所述第一图像中的所述对象的所述标签匹配的标签;以及
确定针对所述图像集合的关键图像,其中所述关键图像是来自所述图像集合的、具有超过阈值的置信度得分的最小图像,所述最小图像是在所述选择的方向中具有最小尺寸的图像;以及
基于所述第一图像的与所述关键图像重叠的一部分的周长来确定针对所述第一图像中的所述对象的边界框。
2.根据权利要求1所述的计算机实现的方法,其中所述选择的方向是来自包括右方向、左方向、上方向和下方向的一组方向的一个方向。
3.根据权利要求2所述的计算机实现的方法,其中针对所述第一图像中的所述对象的所述边界框基于所述第一图像的与针对每个方向的每个关键图像重叠的所述一部分的所述周长而被确定。
4.根据权利要求1所述的计算机实现的方法,其中所述边界框是沿着所述选择的方向的第一边界框,所述方法还包括:确定沿着第二选择的方向的第二边界框。
5.根据权利要求4所述的计算机实现的方法,其中所述第一边界框针对所述对象,并且所述第二边界框针对所述第一图像中的另一对象。
6.根据权利要求1所述的计算机实现的方法,其中所述第一图像是二维(2D)图像。
7.根据权利要求1所述的计算机实现的方法,其中所述第一图像是n维图像。
8.一种系统,包括:
图像数据库,所述图像数据库包括多个图像以及多个标签,所述多个图像包含一个或多个对象,所述多个标签标识所述图像中的所述一个或多个对象;
多个处理器,所述多个处理器被配置为从所述图像数据库确定针对第一图像中的对象的边界框,其中确定所述边界框包括方法,所述方法包括:
使用第一算法确定针对所述第一图像中的所述对象的标签;
针对选择的方向:
基于所述第一图像来生成图像集合,其中所述图像集合中的每个图像通过从给定方向裁剪所述第一图像而被生成;
使用所述第一算法确定针对所述图像集合中的每个图像的标签;
从所述图像集合去除图像,从而使得所述图像集合中剩余的每个图像具有与针对所述第一图像中的所述对象的所述标签匹配的标签;以及
确定针对所述图像集合的关键图像,其中所述关键图像是所述图像集合的、具有超过阈值的置信度得分的最小图像;以及
基于所述第一图像的与所述关键图像重叠的一部分的周长来确定针对所述第一图像中的所述对象的边界框。
9.根据权利要求8所述的系统,其中所述选择的方向是来自包括右方向、左方向、上方向和下方向的一组方向的一个方向。
10.根据权利要求9所述的系统,其中针对所述第一图像中的所述对象的所述边界框基于所述第一图像的与针对每个方向的每个关键图像重叠的所述一部分的所述周长而被确定。
11.根据权利要求8所述的系统,其中所述边界框是沿着所述选择的方向的第一边界框,所述方法还包括:确定沿着第二选择的方向的第二边界框。
12.根据权利要求11所述的系统,其中所述第一边界框针对所述对象,并且所述第二边界框针对所述第一图像中的另一对象。
13.根据权利要求8所述的系统,其中所述第一图像是二维(2D)图像。
14.根据权利要求8所述的系统,其中所述第一图像是三维(3D)图像。
15.一种计算机可读存储介质,所述计算机可读存储介质具有存储于其上的程序指令,所述程序指令由一个或多个处理设备可执行以执行包括根据权利要求1至7中任一项所述的方法中的步骤的方法。
16.一种计算机系统,所述计算机系统包括被配置为执行根据权利要求1至7中任一项所述的方法中的步骤的模块。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US16/194,817 | 2018-11-19 | ||
US16/194,817 US10643093B1 (en) | 2018-11-19 | 2018-11-19 | Automated bounding box generation for objects in an image |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111199553A true CN111199553A (zh) | 2020-05-26 |
CN111199553B CN111199553B (zh) | 2023-05-02 |
Family
ID=70461420
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911135360.1A Active CN111199553B (zh) | 2018-11-19 | 2019-11-19 | 针对图像中的对象的自动边界框生成 |
Country Status (2)
Country | Link |
---|---|
US (1) | US10643093B1 (zh) |
CN (1) | CN111199553B (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11665312B1 (en) | 2018-12-27 | 2023-05-30 | Snap Inc. | Video reformatting recommendation |
US10887542B1 (en) * | 2018-12-27 | 2021-01-05 | Snap Inc. | Video reformatting system |
CN113420753B (zh) * | 2021-07-13 | 2024-01-05 | 杭州海康威视数字技术股份有限公司 | 目标对象框选区域的生成方法及装置 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105868524A (zh) * | 2015-02-06 | 2016-08-17 | 国际商业机器公司 | 用于医学图像集的自动基准真值生成 |
US9443168B1 (en) * | 2015-12-31 | 2016-09-13 | International Business Machines Corporation | Object detection approach using an ensemble strong classifier |
US9594774B2 (en) * | 2013-09-05 | 2017-03-14 | Ebay Inc. | Estimating depth from a single image |
CN107797733A (zh) * | 2016-09-01 | 2018-03-13 | 奥多比公司 | 用于选择图像中的对象的技术 |
US9927949B2 (en) * | 2013-05-09 | 2018-03-27 | Amazon Technologies, Inc. | Recognition interfaces for computing devices |
CN107958460A (zh) * | 2016-10-18 | 2018-04-24 | 奥多比公司 | 实例级语义分割系统 |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5715325A (en) | 1995-08-30 | 1998-02-03 | Siemens Corporate Research, Inc. | Apparatus and method for detecting a face in a video image |
US9841879B1 (en) | 2013-12-20 | 2017-12-12 | Amazon Technologies, Inc. | Adjusting graphical characteristics for indicating time progression |
US10222942B1 (en) * | 2015-01-22 | 2019-03-05 | Clarifai, Inc. | User interface for context labeling of multimedia items |
US10861162B2 (en) * | 2017-12-08 | 2020-12-08 | Ebay Inc. | Object identification in digital images |
-
2018
- 2018-11-19 US US16/194,817 patent/US10643093B1/en not_active Expired - Fee Related
-
2019
- 2019-11-19 CN CN201911135360.1A patent/CN111199553B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9927949B2 (en) * | 2013-05-09 | 2018-03-27 | Amazon Technologies, Inc. | Recognition interfaces for computing devices |
US9594774B2 (en) * | 2013-09-05 | 2017-03-14 | Ebay Inc. | Estimating depth from a single image |
CN105868524A (zh) * | 2015-02-06 | 2016-08-17 | 国际商业机器公司 | 用于医学图像集的自动基准真值生成 |
US9443168B1 (en) * | 2015-12-31 | 2016-09-13 | International Business Machines Corporation | Object detection approach using an ensemble strong classifier |
CN107797733A (zh) * | 2016-09-01 | 2018-03-13 | 奥多比公司 | 用于选择图像中的对象的技术 |
CN107958460A (zh) * | 2016-10-18 | 2018-04-24 | 奥多比公司 | 实例级语义分割系统 |
Also Published As
Publication number | Publication date |
---|---|
US20200160084A1 (en) | 2020-05-21 |
CN111199553B (zh) | 2023-05-02 |
US10643093B1 (en) | 2020-05-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111199553B (zh) | 针对图像中的对象的自动边界框生成 | |
KR101889052B1 (ko) | 이미지로부터의 비-텍스트 맥락 정보에 근거하여 이미지로부터의 텍스트에 대해 기계 언어 번역을 하기 위한 기법 | |
CN109117831B (zh) | 物体检测网络的训练方法和装置 | |
EP3379459A1 (en) | System and method for telecom inventory management | |
CN108229303B (zh) | 检测识别和检测识别网络的训练方法及装置、设备、介质 | |
US9836651B2 (en) | Displaying information relating to a designated marker | |
US20180137892A1 (en) | Robust tracking of objects in videos | |
CN108108342B (zh) | 结构化文本的生成方法、检索方法及装置 | |
CN111595850A (zh) | 切片缺陷检测方法、电子装置及可读存储介质 | |
US11106933B2 (en) | Method, device and system for processing image tagging information | |
US11017498B2 (en) | Ground truth generation from scanned documents | |
US11100325B2 (en) | Photographic results by composition analysis using deep learning neural networks | |
CN114730486B (zh) | 用于生成用于对象检测的训练数据的方法和系统 | |
CN112348885A (zh) | 视觉特征库的构建方法、视觉定位方法、装置和存储介质 | |
CN110462337A (zh) | 使用传感器可读标签自动生成地图地标 | |
CN108804978B (zh) | 一种版面分析方法及装置 | |
CN110378241B (zh) | 作物生长状态监控方法、装置、计算机设备及存储介质 | |
CN112508005A (zh) | 用于处理图像的方法、装置、设备以及存储介质 | |
CN113642642B (zh) | 控件识别方法及装置 | |
Saur et al. | Experimental application of simulation tools for evaluating UAV video change detection | |
US11100367B2 (en) | Dynamic digital information retrieval implemented via artificial intelligence | |
JP2010181991A (ja) | 画像検索指令システムおよびその動作制御方法 | |
CN112348876A (zh) | 一种标志牌的空间坐标获取方法及装置 | |
US20240096027A1 (en) | Rfid-based augmented reality | |
CN117311905B (zh) | 基于分层检测的容器镜像软件组成分析系统与方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |