CN115104135A - 用于增强现实的物体检测***和方法 - Google Patents
用于增强现实的物体检测***和方法 Download PDFInfo
- Publication number
- CN115104135A CN115104135A CN202180013885.7A CN202180013885A CN115104135A CN 115104135 A CN115104135 A CN 115104135A CN 202180013885 A CN202180013885 A CN 202180013885A CN 115104135 A CN115104135 A CN 115104135A
- Authority
- CN
- China
- Prior art keywords
- neural network
- image
- bounding box
- label
- probability
- 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.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/24—Classification techniques
- G06F18/241—Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches
- G06F18/2413—Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches based on distances to training or reference patterns
- G06F18/24133—Distances to prototypes
- G06F18/24137—Distances to cluster centroïds
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
-
- 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
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V20/00—Scenes; Scene-specific elements
- G06V20/20—Scenes; Scene-specific elements in augmented reality scenes
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Evolutionary Computation (AREA)
- Artificial Intelligence (AREA)
- Data Mining & Analysis (AREA)
- Computing Systems (AREA)
- General Health & Medical Sciences (AREA)
- Health & Medical Sciences (AREA)
- Software Systems (AREA)
- Life Sciences & Earth Sciences (AREA)
- General Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- Computational Linguistics (AREA)
- Molecular Biology (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Mathematical Physics (AREA)
- Medical Informatics (AREA)
- Databases & Information Systems (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Bioinformatics & Computational Biology (AREA)
- Evolutionary Biology (AREA)
- Image Analysis (AREA)
Abstract
公开了用于增强现实环境中的物体检测的方法和***。接收环境的图像并用其生成点云。使用点云提取深度值。从神经网络接收一个或多个候选识别简档。每个候选识别简档包括第一包围盒、标签、以及识别概率,第一包围盒围绕图像的第一部分,该第一部分包括特定物体的至少一部分。通过使用深度值修改与物体识别简档关联的尺度信息,生成虚拟几何图形,使用虚拟几何图形生成尺度匹配概率。尺度匹配概率更新神经网络。使用神经网络生成最终识别简档。最终识别简档包括第二包围盒和更新的标签,第二包围盒围绕图像的包括特定物体的第二部分。
Description
背景技术
增强现实(augmented reality,AR)***将虚拟内容叠加在真实世界环境的用户视图上。随着AR软件开发工具包(software development kit,SDK)的发展,移动行业将智能手机AR引入主流。AR SDK通常提供六自由度(six degrees-of-freedom,6DoF)追踪能力。用户可以使用智能手机的摄像头扫描环境,智能手机实时执行视觉惯性里程计(visualinertial odometry,VIO)。在连续追踪摄像头姿势后,即可将虚拟物体放置到AR场景中,以创造一种真实物体和虚拟物体融合在一起的错觉。
一些增强现实应用旨在生成自然地呈现在真实世界环境中的虚拟物体。生成脱离环境的虚拟物体(例如,在浴室中的床)会妨碍增强现实应用生成自然呈现的物体。因此,在此类***中识别真实世界环境中的物体很重要,以改进增强现实显示。
发明内容
本公开一般涉及增强现实,更具体地但非限制性地,涉及用增强现实传感器数据增强的神经网络的物体检测。
本公开的方面包括用于增强现实环境中的物体检测方法。该方法包括:移动设备的摄像头接收环境的图像;移动设备生成点云,上述点云指示上述图像中显示的特定物体的距离;从上述点云提取深度值,上述深度值指示上述摄像头和上述特定物体之间的距离;从训练后的神经网络接收一个或多个候选识别简档(identification profile),每个候选识别简档包括第一包围盒以及识别概率,上述第一包围盒围绕上述图像中的第一部分,该第一部分包括上述特定物体的至少一部分,上述识别概率指示上述特定物体对应于特定标签的概率;接收与上述特定标签对应的尺度信息(scale information),上述尺度信息指示与上述特定标签对应的任意物体的几何图形;通过使用上述深度值修改上述尺度信息,生成虚拟几何图形;通过比较上述第一包围盒和上述虚拟几何图形,生成尺度匹配概率;使用上述尺度匹配概率更新上述神经网络;使用更新的上述神经网络生成最终识别简档,上述最终识别简档包括第二包围盒和更新的标签,上述第二包围盒围绕上述图像中包括上述特定物体的第二部分,上述更新的标签对应于上述特定物体。
本公开的另一方面包括一种***,该***包括一个或多个处理器以及非暂时性计算机可读介质,包括指令,当由上述一个或多个处理器执行时,上述指令使上述一个或多个处理器执行上述方法。
本公开的另一方面包括一种非暂时性计算机可读介质,包括指令,当由一个或多个处理器执行时,上述指令使上述一个或多个处理器执行上述方法。
本公开相比于传统技术实现了许多优势。例如,所提供的方法和***使用神经网络,该神经网络生成改进的物体检测和识别,特点是准确度高于传统技术。通过神经网络的操作,可以执行使用增强现实传感器的尺度匹配,从而修改由神经网络识别出的候选区域。这使得神经网络生成具有更高准确度的改进的物体检测和识别。另外,在神经网络的各个阶段应用尺度匹配可以将一些候选物体排除到神经网络所考虑的范围之外,这可以减少神经网络消耗的处理资源并提高神经网络连续层的处理速度。
从下文提供的具体实施方式中,本公开的其他应用领域将变得显而易见。应当理解,具体实施方式和具体示例虽然指示了各种实施例,但仅旨在用于说明的目的,而不旨在必然限制本公开的范围。
附图说明
图1示出了根据本发明实施例的包括用于AR应用的深度传感器和红绿蓝(RGB)光学传感器的计算机***的示例。
图2示出了根据本发明实施例的用增强现实传感器数据增强的神经网络的框图示例。
图3示出了根据本发明实施例的使用图2实施例的增强神经网络进行物体检测的示例过程。
图4示出了根据本发明替代实施例的用增强现实传感器数据增强的神经网络的框图示例。
图5示出了根据本发明实施例的使用图4实施例的增强神经网络进行物体检测的示例过程。
图6示出了根据本发明特定实施例的用增强现实传感器数据增强的神经网络的框图示例。
图7示出了根据本发明实施例的使用图6实施例的增强神经网络进行物体检测的示例过程。
图8示出了根据本发明实施例的尺度匹配过程的执行层的示例框图。
图9示出了根据本发明实施例的示例计算机***。
具体实施方式
以下描述了各种实施例。出于解释的目的,阐述了具体配置和细节以便提供对实施例的透彻理解。然而,对于本领域技术人员来说显而易见的是,实施例也可以在没有具体细节的情况下实施。此外,为了不使所描述的实施例模糊,可以省略或简化众所周知的特征。
本公开的实施例涉及使用增强现实传感器数据增强的神经网络中的物体检测。例如,从移动设备的摄像头接收图像。使用该图像,移动设备可以生成摄像头的姿势(例如位置和方向)和图像中显示的特定物体的点云。移动设备可以使用摄像头的姿势和点云生成深度值,该深度值指示摄像头和特定物体之间的距离。移动设备可以从神经网络接收图像的各个部分的候选识别简档。每个简档可以包括第一包围盒、标签、以及概率,第一包围盒围绕图像中包括特定物体的一部分的第一部分,标签对应于特定物体,概率为标签对应于特定物体的概率。移动设备可以接收尺度信息,该尺度信息指示与上述标签对应的任意物体的几何图形。通过使用深度值修改尺度信息,可以生成虚拟几何图形。移动设备可以使用虚拟几何图形生成尺度匹配概率,该尺度匹配概率可以更新神经网络。更新的神经网络输出最终识别简档,其包括第二包围盒和新标签,第二包围盒围绕图像中包括特定物体的第二部分,新标签对应于特定物体。
例如,AR应用可以使用物体检测来选择特定虚拟物体和/或特定虚拟环境在AR场景中的放置。AR应用基于真实世界环境的背景选择特定虚拟物体或其放置,使得虚拟物体看起来好像属于真实世界环境。物体检测可以由AR应用、神经网络、或通过AR传感器数据增强的神经网络执行。例如,移动设备的摄像头可以拍摄办公环境的图像。移动设备生成图像中的物体的点云,例如桌子、椅子等,并计算与至少一个物体对应的深度值(例如,摄像头和椅子之间的距离)。神经网络生成图像中的物体的候选识别简档。每个候选识别简档包括包围图像的一部分的包围盒,该图像的一部分对应于诸如椅子之类的物体。候选识别简档还可以包括图像的该部分对应于特定标签(例如,椅子)的概率。移动设备可以接收任意椅子的尺度信息。尺度信息包括任意椅子的平均尺寸(例如,0.5到1米高、0.5到1米宽等)。然后,移动设备通过使用深度值修改尺度信息(例如,考虑物体与摄像头的距离)来生成虚拟几何图形。
然后,移动设备可以通过将候选识别简档的包围盒与虚拟几何图形进行比较来生成尺度匹配概率。尺度匹配概率可以指示识别简档的准确性。例如,如果包围盒接近虚拟几何图形,则包围盒可能是准确的。如果包围盒偏离虚拟几何图形,则识别简档可能不准确。
尺度匹配概率可用于更新神经网络。例如,可以更新识别简档的概率(例如,对应于特定标签的可能性变高或变低),或消除识别简档的概率(例如,当尺度匹配概率指示识别简档非常不准确时)等。更新后的神经网络提供最终识别简档,该最终识别简档包括围绕图像的第二部分(包括椅子)的第二包围盒和新标签。在一些情况下,图像的第二部分可以等于图像的第一部分。在其他情况下,图像的第二部分可以更准确地包括被检测的物体(例如椅子)。类似地,新标签可能与旧标签相同(如果候选识别简档包括正确标签),或者更新后的神经网络可能会生成更准确地对应于物体的新标签(例如办公椅)。
尺度匹配(例如,尺度匹配概率的生成或应用)可以在神经网络进行物体检测的各个阶段执行。例如,可以在最后一层之后(例如,在非极大值抑制过程之后)、在最后一层之前(例如,在非极大值抑制过程之前)和/或神经网络处理过程中的更早期(例如,在候选区域生成之后、在尺度分类器生成之后等)执行尺度匹配。
本文描述的方法和***提高了神经网络中物体检测的准确性。神经网络使用来自增强现实传感器数据的尺度匹配来修改神经网络正尝试识别的图像中的候选物体。这使得神经网络生成具有更高准确性的改进的物体检测和识别。另外,在神经网络的各个阶段,尺度匹配可以从神经网络中排除一些候选物体,这样可以减少神经网络消耗的处理资源,提高神经网络连续层的处理速度。
图1示出了根据本发明的实施例的计算机***110的示例,计算机***110包括用于AR应用的深度传感器112和RGB光学传感器114。AR应用可以由计算机***110的AR模块116实现。通常,RGB光学传感器114生成真实世界环境的RGB图像,该环境包括例如真实世界物体130。深度传感器112生成关于真实世界环境的深度数据,其中,该数据包括例如深度图,其显示真实世界物体130的深度(例如深度传感器112与真实世界物体130之间的距离)。在AR会话初始化之后(该初始化可以包括校准和追踪),AR模块116在AR会话中渲染真实世界环境的AR场景120,其中,该AR场景120可以呈现于计算机***110的显示器上的图形用户界面(graphical user interface,GUI)。AR场景120显示真实世界物体130的真实世界物体表示122。此外,AR场景120显示不存在于真实世界环境中的虚拟物体124。AR模块116可以从RGB图像和深度图生成红绿蓝和深度(RGB and depth,RGBD)图像,该RGBD图像可以由AR***处理以增强物体检测神经网络。例如,AR应用可以使用计算机***100的姿势和物体的点云来获得由神经网络识别的候选物体类别的尺度信息。尺度信息被传递给神经网络以修正物体检测,这提高了物体检测(和识别)的准确度,减少了神经网络消耗的处理资源。
在示例中,计算机***110代表合适的用户设备,除了深度传感器112和RGB光学传感器114之外,计算机***110还包括一个或多个图形处理单元(graphical processingunit,GPU)、一个或多个通用处理器(general purpose processors,GPP)、以及一个或多个存储有计算机可读指令的存储器,指令可由至少一个处理器执行以执行本公开实施例的各种功能。例如,计算机***110可以是智能手机、平板电脑、AR耳机或可穿戴AR设备中的任何一种。
AR模块116可以执行视觉惯性里程计(visual-inertial odometry,VIO)过程以追踪AR模块116的姿势(例如,位置和方向)。VIO使用图像分析和惯性测量单元(传感器数据)来确定摄像头(例如,AR模块116)的位置和/或方向的变化。视觉里程计可以使用图像中的特征检测来识别和关联连续图像中的特征。特征检测可用于生成估计摄像头相对于连续图像中显示的物体的运动的光流场。时间间隔(例如,连续图像之间的时间间隔)之间的运动程度可用于确定摄像头在该时间间隔期间移动的距离和方向。摄像头的距离和方向(和传感器数据)可用于追踪摄像头在每个时间间隔的位置和方向。可以使用捕获方向力值(directional force value)的惯性测量单元来增强视觉里程计。
例如,AR模块116可以执行VIO的一种实施方式,称为同时定位和建图(simultaneous localizations and mapping,SLAM)过程。例如,SLAM过程可以从校准步骤开始,其中可以初始化环境的空地图,使设备位于坐标系原点。SLAM过程接收输入数据,例如但不限于图像数据、控制数据ct、传感器数据st、和时间间隔t。然后,SLAM过程生成输出,该输出可以包括设备在给定时间间隔内的近似位置xt(与一个或多个先前时间间隔的一个或多个近似位置有关)和环境的地图mt。可以使用在时间t和时间t+1捕获的特征检测图像来增强(或验证)输出,以识别和关联图像中的特征。图像之间的变化可用于验证AR模块116的移动、用在图像中检测到的物体填充环境mt等。
当设备捕获指示特定方向运动的传感器数据(以及来自设备摄像头的图像数据)时,SLAM过程可以更新xt和mt。SLAM过程可以是迭代过程,其在设定的时间间隔内或在可以检测到新的传感器数据或图像数据时更新xt和mt。例如,如果在时间间隔t和t+1之间没有发生传感器变化,那么SLAM过程可以延迟更新位置和地图以保留处理资源。在检测到的传感器数据变化表明设备很可能已从其先前位置xt移动时,SLAM过程可以计算设备的新位置xt并更新地图mt。
AR模块116可以实现为专用硬件和/或硬件和软件的组合(例如,通用处理器和存储在存储器中并且可由通用处理器执行的计算机可读指令)。除了初始化AR会话和执行VIO,AR模块116还可以使用增强现实传感器数据来改进真实世界物体的物体检测。AR模块可以确定AR模型116和真实世界物体130之间的距离。在神经网络进行物体检测期间,AR模块116可以使用物体的候选类别(例如,神经网络已经确定有对应于真实世界物体130的可能性的一个或多个类别)来更新神经网络。例如,AR模块116可以获得对应于候选标签的物体的尺寸。然后根据由AR模块116确定的物体和摄像头之间的距离来修改尺寸(例如,如果物体很远,那么尺寸将变小,反之同理)。然后,如果神经网络生成的标签的候选包围盒在给定尺度匹配下太大或太小,则可以降低该标签的包围盒正确的概率(或者可以淘汰该包围盒和标签)。
在图1的说明性示例中,智能手机用于显示真实世界环境的AR会话。特别地,该AR会话包括渲染一个AR场景,该场景包括真实世界的桌子的表示,其中一个花瓶(或一些其他真实世界物体)被放置在该桌子上。增强现实会话可以包括渲染叠加到AR场景上的虚拟物体,例如虚拟物体124。AR会话可以包括识别真实世界环境中的物体的神经网络(例如,以选择虚拟物体124、定位虚拟物体124等)。AR模块116通过使用图像来确定智能手机的初始姿势(例如,使用SLAM过程等确定)并初始化相对于智能手机的坐标系来初始化AR会话。
AR模块116可以针对图像中显示的物体(例如真实世界物体130)生成点云。点云包括两个或更多个点(例如,坐标系中的坐标),每个点对应于物体的一个离散点。点云表示物体的深度(例如,物体相对于智能手机的距离)。AR模块116使用点云和智能手机的姿势来提取物体的深度值。
智能手机执行神经网络以进行物体检测。神经网络使用摄像头捕获的图像来检测和识别图像中显示的物体。神经网络可以生成一个或多个候选识别简档。每个候选识别简档包括包围盒和概率,包围盒围绕图像的一部分,该图像部分包括物体的一部分,概率为该物体对应于物体的特定标签的概率。包围盒可以由六维(six dimensional,6D)向量表示,例如(c,x,y,z,w,g,p),其中x、y、z是维度,w是宽度,h是高度,c是标签,p是标签正确的概率。对于每个候选识别简档,AR模块116使用标签获得尺度信息。尺度信息包括符合标签的任意物体的尺寸。例如,如果标签是桌子,则尺度信息包括任意桌子的平均尺寸。或者,尺度信息可以包括桌子的范围(每个维度上的最小值-最大值)。AR模块116针对任意物体(例如,桌子)生成虚拟几何图形。通过使用深度值修改尺度信息来生成虚拟几何图形。
AR模块116使用包围盒和虚拟几何图形之间的比较来生成尺度匹配概率。尺度匹配概率可用于通过调整分配给候选识别简档的概率来更新神经网络。例如,如果标签“桌子”的包围盒大于虚拟几何图形,则候选识别简档的预测标签可能不正确,因为在由AR模块116测量的距离处,预测标签应该看起来更小。更新概率可以包括删除与包围盒偏离超过阈值量(例如,10%、15%或任何预定量)的候选识别简档。
更新的神经网络为真实世界物体130生成最终识别简档。最终识别简档可以包括围绕包括桌子的图像部分的更新的包围盒和更新的标签(例如,如果与候选识别简档不同)。神经网络可以通过智能手机的显示器呈现最终识别简档。例如,神经网络(或AR模块116)可以生成具有标签的包围盒126和128,该标签指示对应于所显示的AR场景120内的相应包围盒的标签。
图2示出了根据本发明实施例的用增强现实传感器数据增强的神经网络的框图示例。物体检测可以使用AR框架204和物体检测神经网络220的组合。例如,计算设备可以在AR会话内执行AR框架204和物体检测神经网络220。计算设备可以是移动设备(例如,智能手机、膝上型电脑、平板电脑等)、台式计算机、服务器、瘦客户机(thin client)等。物体检测可以在物体检测神经网络220的操作期间利用AR传感器数据来提高物体检测神经网络220的性能(例如,准确度、资源消耗、速度等)。
AR框架204可以根据AR会话进行操作。可以接收输入图像并将其用于连续追踪计算设备的姿势208(例如,使用SLAM等追踪)。AR框架还可以计算与图像内的表面和/或物体相关联的点云212(例如,通过使用包括在RGBD图像中的深度信息、单独的深度传感器或使用两个图像的立体视差(stereo disparity))。点云指示每个表面的深度(例如,表面与获取图像的摄像头之间的距离)。
物体检测神经网络220使用由AR框架204接收的相同图像来启动物体检测过程。在某些情况下,物体检测神经网络220与AR框架204确定姿势208和生成点云212并行地启动。在其他情况下,物体检测神经网络220在AR框架确定姿势208之前或之后启动。物体检测神经网络220生成候选识别简档,候选识别简档可以使用回归器228修正。回归器228修正候选区域(例如,候选识别简档的包围盒),以供分类器进行分类。分类器224生成候选识别简档的包围盒对应于特定标签的概率。物体检测神经网络220可以执行非极大值抑制(non-maximum suppression)过程以消除重叠(例如,冗余的候选识别简档)。
其余每个候选识别简档的标签被传递到AR框架。AR框架使用标签查询尺度信息数据库216,该数据库216返回对应于标签的尺度信息。尺度信息包括被分配了该标签的任意物体的尺寸(例如,高度、宽度、深度)。尺度信息可以包括每种尺寸的最小值和最大值。示例尺度信息在下面的表1中示出。替代地,尺度信息可以包括针对每种尺寸的物体尺寸平均值和标准差。
标签 | minL(m) | minW(m) | minH(m) | maxL(m) | maxW(m) | maxH(m) |
飞机 | 3 | 2.18 | 1.5 | 84.0 | 117.0 | 24.2 |
汽车 | 2.4 | 1.2 | 1.2 | 5.6 | 2.0 | 2.0 |
椅子 | 0.4 | 0.45 | 0.8 | 0.85 | 0.9 | 1.4 |
鼠标 | 0.13 | 0.19 | 0.05 | 0.08 | 0.05 | 0.03 |
表1标签尺度数据库的示例
AR框架204可以处理尺度信息以生成针对候选识别简档的虚拟几何图形。可以通过使用包围盒中包括的像素的测量深度值(例如,使用计算设备的姿势208和点云212)修改尺度信息来生成虚拟几何图形。可以将虚拟几何图形传回物体检测神经网络220,该物体检测神经网络220可以执行尺度匹配232。尺度匹配删除包围盒与虚拟几何图形相差超过阈值的候选识别简档。替代地或附加地,尺度匹配232基于虚拟几何图形与包围盒的比较来修改每个候选识别简档的概率(例如,当包围盒接近虚拟几何图形时增加概率,当包围盒与虚拟几何图形差别大时降低概率)。然后,神经网络从候选识别简档中选择具有最高概率的候选识别简档作为物体检测神经网络220的输出。
图3示出了根据本发明实施例的使用图2的增强神经网络进行物体检测的示例过程。
在框304,接收一个或多个图像。图像可以包括颜色数据(例如RGB值)和深度值。例如,可以从RGBD光学传感器等接收图像。
在框308,AR框架(例如图2的AR框架204)使用上述一个或多个图像确定计算设备的姿势(例如,使用SLAM过程等确定)和图像中显示的至少一个表面的点云。例如,图像可以包括深度数据(例如,来自RGBG光学传感器),该深度数据指示图像中所示的点和摄像头之间的距离。AR框架使用深度数据生成多个点,每个点对应于图像中显示的表面的离散坐标。点可以由计算设备的坐标系内的(三维)坐标表示。
例如,RGBD光学传感器可以生成多维(例如二维)数据,其中每个像素包括颜色数据(例如RGB值)和深度值。AR框架可以使用像素的深度值将每个像素的二维坐标转换为三维坐标。这些三维坐标可以组成点云中的点(例如,点的数量等于二维图像的分辨率)。在一些示例中,点的数量可以小于图像的分辨率。在其他示例中,点的数量可以大于图像的分辨率(例如,当使用每个图像的深度值和/或图像间的立体视差,用多个图像生成点云时)。
在框312,AR框架可以提取图像中显示的至少一个表面的深度值。AR框架可以从点云中与至少一个表面(以及可选地姿势)对应的点中导出单个深度值。在一些示例中,由于点云可以包括每个表面的多个点,因此AR框架可以对表面的点的深度值进行平均。在其他示例中,AR框架可以选最小深度值。在其他示例中,AR框架可以选择最大深度值。AR框架可以根据预定义标准(例如用户导出的标准)选择任何深度值。
在框324(在一些实施例中大致与308并行),神经网络(例如图2的物体检测神经网络220)可以开始处理一个或多个图像以执行物体检测。物体检测神经网络可以是深度神经网络,例如但不限于卷积神经网络(convolutional neural network,CNN)、单次多框检测器(single-shot multibox detector,SSD)、你只看一次(you only look once,YOLO)、更快的基于区域的CNN(faster region-based CNN,faster R-CNN)、基于区域的全卷积网络(region-based fully convolutional network,R-FCN)等。神经网络在各个层中执行物体检测,其中,给定层的处理既可以指示后续层,也可以由后续层使用。初始层可以识别图像内可能对应要检测的物体的候选区域(例如,潜在的感兴趣区域)。候选区域可以包括围绕候选区域的包围盒。后续层可以添加、移除、或修改候选区域以及确定候选区域对应于特定标签的概率(例如,生成候选区域的候选识别简档)。最后一层可以包括非极小抑制过程,该过程消除给定候选区域的小于阈值量的候选识别。
例如,神经网络在一个或多个连续层执行操作,例如但不限于,用于识别图像的候选区域的候选区域选择、为每个候选区域分配标签(例如类别)的物体检测、将两个或多个候选区域(例如,通过执行回归分析)修正为单个候选区域的回归器(例如,线性、多项式、对数等)、以及生成候选识别概率的分类器(例如,k-最近邻(k-nearest neighbors,k-NN)、softmax等),该候选识别概率包括包围盒(例如,候选区域的识别)和标签(例如,标签)对应于候选区域的图像部分的概率。
在框328,神经网络可以执行非极大值抑制,其可以删除一些候选识别简档。非极大值抑制根据概率(例如从高到低或从低到高)组织候选识别简档。然后,神经网络选择具有最高概率的候选识别简档。神经网络抑制(例如删除)其包围盒与所选候选识别简档的包围盒大部分重叠的所有候选识别简档(例如,基于预定义的重叠水平阈值)。替代地或另外地,非极大值抑制可以抑制概率不超于阈值的候选识别。剩余的候选识别简档(或在一些实施例中,仅标签)用于尺度匹配。
在框316,AR框架使用候选识别简档的标签来从数据库获得尺度信息,并使用深度值补充尺度信息。例如,AR框架可以使用标签向数据库发送查询。尺度信息数据库保存有每个标签的尺度信息。对于每个维度(例如x、y、z),尺度信息可以包括:1)最小值和最大值,或2)平均值和标准差。尺度信息数据库可以将尺度信息返回给AR框架(或神经网络)。AR框架可以为每个候选识别简档生成虚拟几何图形。通过使用包括在候选识别简档的包围盒内的表面的深度值(例如,在框312提取的深度值)修改尺度信息来生成虚拟几何图形。换言之,AR框架接收被分配了候选识别简档的标签的任意物体的一般尺寸,并修改这些尺寸以考虑(AR框架)所测量的该物体到计算设备的距离。例如,如果深度值高,则虚拟几何图形将小于尺度信息(因为在用户看来物体显得更小),如果深度值低,则虚拟几何图形将大于尺度信息(因为在用户看来物体显得更大)。
可以将虚拟几何图形投影到由计算设备的显示器呈现的二维相机视图上。在某些情况下,具有修改尺寸的虚拟任意物体被呈现在显示器上。在其他情况下,具有与修改后的尺寸对应的尺寸的包围盒被显示在显示器上。
在框320,可以执行尺度匹配过程。尺度匹配过程将虚拟几何图形与每个候选识别简档的包围盒进行比较。可以基于包围盒与虚拟几何图形之间的比较生成尺度匹配概率。具体地,包围盒将虚拟几何图形覆盖得越多,则该包围盒可能越准确。尺度匹配概率的值取决于包围盒覆盖虚拟几何图形的程度。在一些示例中,高程度的覆盖会增大尺度匹配概率的值。低程度的覆盖会减小尺度匹配概率的值。在其他示例中,高程度的覆盖会减小尺度匹配概率的值。低程度的覆盖会增大尺度匹配概率的值。
在一些示例中,AR框架处理尺度信息以生成虚拟几何图形和尺度匹配概率。在其他示例中,神经网络接收尺度信息、计算的姿势、以及点云。然后神经网络生成虚拟几何图形和尺度匹配概率。在其他示例中,可以使用AR框架和神经网络的组合生成虚拟几何图形和尺度匹配概率。
在框332,对于剩余的每个候选识别简档,神经网络确定包围盒内的图像部分对应于特定标签的更新的概率。神经网络可以接收从非极大值抑制过程输出的候选识别简档以及每个候选识别简档的对应尺度匹配概率。尺度匹配概率可以用于更新对应的候选识别简档的概率。例如,如果尺度匹配概率较低(例如,虚拟几何图形和包围盒之间几乎不重叠),则候选识别简档的概率可以降低,使得可以有效地淘汰候选识别简档,选择其包围盒与尺度匹配概率更好地重叠的候选识别简档。
例如,第一候选识别简档可以包括包围盒和与桌子对应的标签。图像部分的深度值指示该物体较远,因此该物体的虚拟几何图形小于包围盒。候选识别简档的概率将会降低,以反映候选物体的尺寸与计算机设备的测量不一致。
神经网络从其余候选识别简档中选择具有最高(修改后)概率的候选识别简档。然后,神经网络输出包围盒、标签、以及(可选的)包围盒所围绕的图像部分对应于标签的概率。
在框336,通过将包围盒叠加在AR场景的视图上来显示输出的包围盒。包围盒可以与标签以及被包围盒包围的图像部分对应于标签的概率一起呈现。在某些情况下,AR框架会追踪由包围盒包围的图像部分,这样即使环境视图发生变化(例如,摄像头移动),包围盒也会继续显示在图像的正确部分上。
图4示出了根据本发明替代实施例的用增强现实传感器数据增强的神经网络的框图示例。适当时,图2中提供的与用增强现实传感器数据增强的神经网络相关的讨论也适用于图4。可以在神经网络的各个阶段用AR传感器数据更新神经网络。图2的框图(和图3的相应流程图)显示了在非极大值抑制过程之后(例如,在产生输出之前的神经网络最后一层)发生的修改。在更早的阶段更新神经网络可以减少由神经网络处理的候选区域的数量(例如,消除准确概率低的区域和/或标签),从而改善神经网络的资源消耗和提高神经网络处理图像的速度。例如,物体检测神经网络420在物体检测层404之后、在非极大值抑制412之前结合来自AR传感器数据的尺度匹配408(例如,如上文结合图2所述的AR框架204、姿势208、点云212和尺度信息数据库216)。
神经网络的物体检测层404为图像中所有可能的候选区域生成候选识别简档,而不抑制在局部区域内具有非极大概率的冗余(例如,重叠)简档。可以在检测层的操作之后执行尺度匹配408以过滤掉由候选识别简档的边界包围的图像部分对应于分配的标签的概率较低的候选识别简档。由于这些候选识别简档在非极大值抑制之前被删除,因此非极大值抑制可以处理更少的候选识别简档,从而提高了非极大值抑制的执行速度和可以获得输出的速度。此外,在过程早期减少候选识别简档可以防止不准确的候选识别简档使神经网络的其余层产生偏差(例如,降低神经网络的准确性)。
图5示出了根据本发明实施例的使用图4的增强神经网络进行物体检测的示例过程。框304-320类似于结合图3描述的框,并且在适用时,与图3有关的描述也适用于图5。
在框504,神经网络使用神经网络的各个层处理一个或多个图像。神经网络执行物体检测层(例如,图4的物体检测层404),该层生成一个或多个候选识别简档(例如,每个候选识别简档包括围绕图像的候选区域的包围盒和该候选区域对应于特定标签的概率)。标签和概率可以从训练后的分类器层输出,该分类器层识别候选区域中与训练数据集中的特征相似或相同的特征。物体检测层的输出被传递到框508的分类和框316的尺度信息检索。在图5的示例过程中,在框316的尺度信息检索是使用图像的所有可能候选区域开始的,而不抑制在局部区域内具有非极大概率的冗余(例如,重叠)区域。
在框508,神经网络针对每个剩余的候选识别简档确定包围盒内的图像部分对应于特定标签的更新的概率。从框320检索到的尺度匹配概率可以用于更新对应的候选识别简档的概率。由于神经网络还未应用非极大值抑制过程,所以图像的所有可能候选区域(例如包括冗余区域)的概率(和标签)都会使用来自框320的对应尺度匹配信息进行更新。在一些示例中,概率低于阈值的候选识别简档可以不再进行进一步处理。
在框512,神经网络可以对候选识别简档应用非极大值抑制。非极大值抑制根据概率(例如从高到低或从低到高)组织候选识别简档。然后,神经网络选择具有最高概率的候选识别简档。神经网络抑制(例如删除)所有其包围盒与所选候选识别简档的包围盒大部分重叠的候选识别简档(例如,基于预定义的重叠水平阈值)。替代地或另外地,非极大值抑制可以抑制概率不超于阈值的候选识别。通过更新候选识别简档的概率(例如,在框508),与在图3的框328执行的非极大抑制相比,该非极大值抑制可以抑制更多的候选识别简档。这提高了神经网络的准确性,因为在非极大值抑制过程之后剩余的候选识别简档更少(例如,可能只有一个)。如果剩余一个以上的候选识别简档,则神经网络从这些候选识别简档中选择具有最高概率的候选识别简档。
在框516,通过在AR场景的视图上叠加包围盒来显示所选候选识别简档的包围盒、标签、以及概率(可选)。在某些情况下,AR框架会追踪由包围盒包围的图像部分,这样即使环境视图发生变化(例如,摄像头移动),包围盒也会继续显示在图像的正确部分上。
图6示出了根据本发明特定实施例的用增强现实传感器数据增强的神经网络的框图的示例。在一些示例中,神经网络可以使用两阶段物体检测(例如faster R-CNN)。适当时,图2和图4中有关用增强现实传感器数据增强的神经网络的讨论也适用于图6。第一阶段识别大量候选区域,第二阶段对候选区域执行物体检测/分类(例如,使用神经网络的后续层完成)。在该示例中,尺度匹配可以在第一阶段之后执行,从而减少后续神经网络层处理的候选区域的数量(例如降低后续神经网络层的处理负载和资源消耗)。在其他示例中,例如在单阶段物体检测网络中,可以使用多尺度特征图生成分类器,以在多尺度检测物体(例如SSD)。在该示例中,可以使用尺度匹配选择具有合适尺度的分类器进行检测。例如,对于每一层,如果基于测量的真实世界尺度(例如,使用点云、计算设备的姿势、以及尺度信息执行尺度匹配确定的),包围盒会呈现得过小或过大,则这些层可以省略检测分类器。
在两阶段物体检测神经网络中,物体检测神经网络620包括区域建议层604(例如阶段一),其为后续处理层生成大量候选层。可以使用尺度匹配减少候选区域。例如,对于每个候选区域,可以使用分配给该候选区域的标签来查找尺度信息。可以使用深度值修改尺度信息(例如,使用AR框架204中的姿势208和点云212),以生成候选区域的虚拟几何图形。如果候选区域的包围盒明显大于或小于虚拟几何图形(例如,使用预定阈值),则神经网络后续可以不处理该候选区域。神经网络的后续层可以包括物体检测层、分类器、非极大值抑制过程612和以上的组合等,可以用于输出图像区域的包围盒和标签。
在单阶段物体检测神经网络中,物体检测神经网络620包括用于识别候选区域604的一个或多个层(而不是整个阶段)。物体检测神经网络620可以包括多个尺度分类器608,其可以按照一个或多个尺度(例如,每个尺度对应于该特征在与计算设备的摄像头的不同距离下的尺寸)检测图像中的特定特征。多尺度特征图(例如,图中包括对于每个特征的多个尺度)可以用于生成(例如训练)分类器以检测特定尺度的特征。通常,由于尺度可能是未知的,所以可以将每个分类器应用于检测特征(例如,经由神经网络的不同层应用每个分类器)。
尺度匹配可用于确定与AR传感器数据不一致的尺度(例如,包围盒太小或太大等)。与这些尺度对应的分类器可以省略,这样可以减少神经网络的层数。神经网络的后续层可以包括物体检测层、分类器、非极大值抑制过程612、及其组合等。后续层可用于输出图像区域的包围盒和标签。
AR框架204可以根据AR会话进行操作。可以接收输入图像并将其用于连续追踪计算设备的姿势208(例如,使用SLAM等进行追踪)。AR框架还可以计算与图像内的表面和/或物体相关联的点云212(例如,通过使用包括在RGBD图像中的深度信息、单独的深度传感器、或使用两个图像的立体视差)。点云指示每个表面的深度(例如,该表面与获取图像的摄像头的距离)。
每个候选识别简档的标签可以输出到AR框架。AR框架可以使用标签向尺度信息数据库216发送查询,该数据库返回对应于该标签的尺度信息。尺度信息包括被分配了该标签的任意物体的尺寸(例如,高度、宽度和深度)。
AR框架204可以处理尺度信息以生成候选识别简档的虚拟几何图形。可以通过使用包围盒中包括的像素的测量深度值(例如,使用计算设备的姿势208和点云212)修改尺度信息来生成虚拟几何图形。可以将虚拟几何图形传回物体检测神经网络220,物体检测神经网络220可以执行尺度匹配232。可以执行尺度匹配232以减少待由物体检测神经网络620的后续层处理的候选区域(例如,候选识别简档)的数量,或消除与AR传感器数据不一致的尺度对应的尺度分类器。
图7示出了根据本发明实施例的使用图6的增强神经网络进行物体检测的示例过程。框304-320类似于结合图3描述的框,适当时,关于图3提供的描述也适用于图7。图7的示例过程的描述开始于框704,其中,神经网络可以开始处理从框304接收的输入图像。
在框708,根据神经网络的类型,可以生成候选区域和/或可以生成尺度分类器。例如,两阶段物体检测神经网络生成大量候选区域(例如,候选识别简档)。单阶段物体检测神经网络可以生成候选区域并使用多尺度特征图来生成基于尺度的分类器。
在框316,使用分配给候选识别简档的标签从数据库获得尺度信息。可以通过深度(例如,来自框312)来补充尺度信息以生成虚拟几何图形(例如,分配了标签的任意物体的尺寸,该尺寸缩放到与被包围盒包围的图像部分到摄像头的距离一致)。
在框320,可以执行尺度匹配,其中,确定候选识别简档的包围盒是大于、小于还是等于虚拟几何图形。对于两阶段物体检测神经网络,虚拟几何图形与候选识别简档的包围盒之间的对应关系可用于使一些候选识别简档不再进行神经网络的进一步处理。例如,如果包围盒大于第一预定阈值或小于第二预定阈值,则可以删除该候选识别简档。对于单阶段物体检测神经网络,尺度匹配用于识别与包围盒包围的图像部分的尺度不一致的尺度。这些候选识别简档的处理可能限于对应于与由包围盒包围的图像部分相似的尺度(距摄像头特定距离处的尺寸)的尺度分类器(例如,在后续层中)。
在框712,可以使用尺度匹配来确定由包围盒包围的图像部分对应于特定(或可能是新的)标签的更新的概率。可以使用尺度匹配信息来更新概率。
在框716,候选识别简档由神经网络的后续层处理。神经网络的后续层可以包括物体检测层、分类器、非极大值抑制过程612及其组合等。
在框720,神经网络可以生成输出,该输出包括围绕图像的一部分的包围盒和对应于图像的该部分的标签。输出还可以包括该图像部分对应于该标签的概率。
图3、图5和图7中描述的示例过程结合计算机***执行,该计算机***是上文描述的计算机***的示例。上述过程的一些或所有框可以通过计算机***上的特定硬件实现和/或可以实现为存储在计算机***的非暂时性计算机可读介质上的计算机可读指令。存储的计算机可读指令表示包括可由计算机***的处理器执行的代码的可编程模块。此类指令的执行将计算机***配置为执行相应的操作。与处理器结合的每个可编程模块代表用于执行相应框的装置。虽然以特定顺序示出了框,但应当理解,不需要特定顺序并且可以省略、跳过和/或重新排序一个或多个操作。
图8示出了根据本发明实施例的尺度匹配过程的执行层的示例框图。尺度匹配可以使用三个层操作,用户输入层(用户在其中与AR框架交互)、神经网络层、和AR框架。用户输入层包括尺度数据库。每个标签的尺度信息可以通过用户输入添加到标签尺度数据库802。例如,当定义了新标签时,用户可以在数据库中生成一个新条目,该条目指示分配给该标签的任意物体的尺寸。可替代地或附加地,可以从其他网络源(例如,互联网、另一数据库等)自动添加尺度信息。标签尺度数据库(与来自候选识别简档810的边界多边形的标签‘c’806一起)用于识别分配给标签‘c’806的任意物体的几何图形(例如,尺度信息)。
AR框架可以使用几何信息来生成包括边界多边形808的虚拟几何图形,边界多边形808包括标签‘c’806、顶点(例如,尺寸)、和边界多边形准确的置信度值。边界多边形808的尺寸是基于几何图形804、候选识别简档的尺寸824、摄像头姿势816和点云812来确定的。
可以将边界多边形808与候选识别简档的大小824进行比较,神经网络可以用其执行尺度匹配概率“S”820。尺度匹配概率‘S’820可以用于(在神经网络层)使用概率‘p’828和尺度匹配概率‘S’820为候选识别简档生成更新的概率P’824。在一些情况下,更新概率P’可以通过P’=p*S计算。然后可以在神经网络的后续层中使用更新的概率来生成输出。
图9示出了根据本公开至少一个实施例的计算机***900的组件的示例。计算机***900是上文描述的计算机***的示例。尽管这些组件被示为属于同一计算机***900,但是计算机***900也可以是分布式的。
计算机***900至少包括处理器902、存储器904、存储设备906、输入/输出(input/output,I/O)***设备908、通信***设备910和接口总线912。接口总线912用于在计算机***900的各种组件之间通信、发送和传输数据、控制和命令。存储器904和存储设备906包括计算机可读存储介质,例如RAM、ROM、电可擦可编程只读存储器(electrically erasableprogrammable read-only memory,EEPROM)、硬盘驱动器、CD-ROM、光存储设备、磁存储设备、电子非易失性计算机存储设备(例如闪存)、以及其他有形存储介质。任何这样的计算机可读存储介质都可以用于存储实施本公开各方面的指令或程序代码。存储器904和存储设备906还包括计算机可读信号介质。计算机可读信号介质包括传播的数据信号,其中包含计算机可读程序代码。这种传播的信号采用多种形式中的任何一种,包括但不限于电磁、光学或其任何组合。计算机可读信号介质包括不是计算机可读存储介质并且可以通信、传播或传输用于与计算机***900结合使用的程序的任何计算机可读介质。
此外,存储器904包括操作***、程序和应用程序。处理器902用于执行存储的指令,并且包括例如逻辑处理单元、微处理器、数字信号处理器和其他处理器。存储器904和/或处理器902可以被虚拟化并且可以托管在例如云网络或数据中心的另一计算机***中。I/O***设备908包括用户界面,例如键盘、屏幕(例如,触摸屏)、麦克风、扬声器、其他输入/输出设备,以及计算组件,例如图形处理单元、串行端口、并行端口、通用串行总线和其他输入/输出***设备。I/O***设备908通过耦合到接口总线912的任何端口连接到处理器902。通信***设备910用于促进计算机***900和其他计算机***之间通过通信网络的通信,并且包括例如网络接口控制器、调制解调器、无线和有线接口卡、天线和其他通信***设备。
尽管本主题已针对其特定实施例进行了详细描述,但应当理解,本领域技术人员在获得对前述内容的理解后,可以容易地产生对这些实施例的改变、变化和等价物。因此,应当理解,本公开是为了示例而不是限制的目的而呈现的,并且不排除包含对于普通技术人员来说显而易见的对本主题的修改、变化和/或添加。本领域的技能。实际上,本文描述的方法和***可以以多种其他形式体现。此外,在不背离本公开的精神的情况下,可以对本文描述的方法和***的形式进行各种省略、替换和改变。所附权利要求及其等价物旨在覆盖落入本公开的范围和精神内的此类形式或修改。
除非另有明确说明,否则应理解,本说明书的讨论中使用诸如“处理”、“计算”、“确定”和“识别”等术语是指计算机***(例如一台或多台计算机或类似的电子计算机***或设备)的动作或过程,该计算机***操纵或转换在计算平台的存储器、寄存器或其他信息存储设备、传输设备或显示设备中表示为物理电子或磁量的数据。
这里讨论的一个或多个***不限于任何特定的硬件架构或配置。计算机***可以包括提供以一个或多个输入为条件的结果的任何合适的组件布置。合适的计算机***包括基于微处理器的多用途计算机***,多用途计算机***访问存储的软件,存储的软件对计算机***进行编程或配置,将该计算机***从通用计算装置编程或配置为实现本主题的一个或多个实施例的专用计算装置。任何合适的编程、脚本或其他类型的语言或语言的组合可用于在用于编程或配置计算机***的软件中实施本文中包含的教导。
本文公开的方法的实施例可以在这样的计算机***的操作中执行。以上示例中呈现的块的顺序可以改变,例如,框可以被重新排序、组合和/或分解成子框。某些框或过程可以并行执行。
本文使用的条件性语言,例如“可以”、“可”、“可能”、“例如”等,除非另有明确说明,或在所使用的上下文中以其他方式理解,否则通常旨在传达某些示例包括而其他示例不包括某些特征、元素和/或步骤。因此,这种条件性语言通常并不意味着一个或多个示例以任何方式需要特征、元素和/或步骤,或者一个或多个示例必须包括用于在有或没有作者输入或提示的情况下决定这些特征、元素和/或步骤是否被包括或将在任何特定示例中执行。
术语“包括”、“具有”等是同义词,并且以开放式的方式包容性地使用,并且不排除其他元素、特征、动作、操作等。此外,术语“或”以其包容性(而不是排他性)使用,例如,当用于连接元素列表时,术语“或”表示其中的一个、一些或全部列表中的元素。此处使用的“用于”或“配置为”是指开放和包容性的语言,不排除用于或配置为执行附加任务或步骤的设备。此外,“基于”的使用意味着开放和包容,因为“基于”一个或多个列举的条件或值的过程、步骤、计算或其他动作实际上可能基于附加条件或超出所列举的值。类似地,“至少部分基于”的使用意味着开放和包容,因为“至少部分基于”一个或多个列举的条件或值的过程、步骤、计算或其他动作在实践中可以基于所列举的之外的附加条件或值。此处包括的标题、列表和编号仅是为了便于解释,并不意味着限制。
上述各种特征和过程可以彼此独立地使用,或者可以以各种方式组合使用。所有可能的组合和子组合旨在落入本公开的范围内。此外,在一些实现中可以省略某些方法或过程块。这里描述的方法和过程也不限于任何特定的顺序,并且与其相关的块或状态可以以其他适当的顺序来执行。例如,所描述的块或状态可以以不同于具体公开的顺序执行,或者多个块或状态可以组合在单个块或状态中。示例块或状态可以串行、并行或以某种其他方式执行。可以将块或状态添加到所公开的示例中或从所公开的示例中删除。类似地,本文描述的示例***和组件可以被配置为与所描述的不同。例如,与所公开的示例相比,可以添加、移除或重新排列元素。
Claims (20)
1.一种方法,包括:
移动设备的摄像头接收环境的图像;
所述移动设备生成点云,所述点云指示所述图像中显示的特定物体的距离;
从所述点云提取深度值,所述深度值指示所述摄像头和所述特定物体之间的距离;
从训练后的神经网络接收一个或多个候选识别简档,每个候选识别简档包括第一包围盒以及识别概率,所述第一包围盒围绕所述图像的第一部分,所述图像的第一部分包括所述特定物体的至少一部分,所述识别概率指示所述特定物体对应于特定标签的概率;
接收与所述特定标签对应的尺度信息,所述尺度信息指示与所述特定标签对应的任意物体的几何图形;
通过使用所述深度值修改所述尺度信息,生成虚拟几何图形;
通过比较所述第一包围盒和所述虚拟几何图形,生成尺度匹配概率;
使用所述尺度匹配概率更新所述神经网络;以及
使用更新的所述神经网络生成最终识别简档,所述最终识别简档包括第二包围盒和更新的标签,所述第二包围盒围绕所述图像的包括所述特定物体的第二部分,所述更新的标签对应于所述特定物体。
2.根据权利要求1所述的方法,其中,所述尺度信息包括与所述标签对应的所述任意物体的高度值、长度值、以及宽度值。
3.根据权利要求1所述的方法,其中,所述第一包围盒由所述移动设备显示。
4.根据权利要求1所述的方法,其中,所述第二包围盒由所述移动设备显示。
5.根据权利要求3所述的方法,其中,所述第二包围盒的尺寸基于所述尺度信息。
6.根据权利要求1所述的方法,还包括:
确定更新的识别概率低于阈值;以及
执行训练后的所述神经网络以提供新的识别简档。
7.根据权利要求1所述的方法,其中,在训练后的所述神经网络执行非极大值抑制过程之前接收所述尺度信息。
8.根据权利要求1所述的方法,其中,训练后的所述神经网络生成多个识别简档,并且所述尺度信息用于删除概率低于阈值的识别简档。
9.根据权利要求1所述的方法,其中,训练后的所述神经网络生成多个识别简档,并且所述尺度信息用于组合两个或更多个识别简档。
10.一种方法,包括:
移动设备的摄像头接收环境的图像;
所述移动设备基于所述图像生成点云,所述点云指示所述图像内的至少一个物体到所述摄像头的距离;
从神经网络接收一个或多个识别简档,每个识别简档包括包围盒、标签、以及概率,所述包围盒围绕所述图像的一部分,所述标签对应于所述图像的所述一部分,所述概率为所述图像的所述一部分对应于所述标签的概率;
接收尺度信息,所述尺度信息包括与所述标签对应的任意物体的尺寸;
使用所述尺度信息和所述点云更新所述神经网络;以及
使用更新的所述神经网络生成所述第二包围盒和标签,所述第二包围盒围绕所述图像的第二部分,所述标签对应于所述图像的所述第二部分中显示的物体。
11.根据权利要求10所述的方法,其中,更新所述神经网络包括修改所述一个或多个识别简档中的至少一个识别简档的概率。
12.根据权利要求10所述的方法,其中,更新所述神经网络包括:
基于所述尺度信息和所述一个或多个识别简档中至少一个识别简档的包围盒,删除所述至少一个识别简档。
13.根据权利要求10所述的方法,其中,更新所述神经网络包括:
合并至少两个识别简档。
14.根据权利要求10所述的方法,其中,在所述神经网络执行非极大值抑制过程之前,更新所述神经网络。
15.一种***,包括:
一个或多个处理器;以及
非暂时性机器可读介质,包括指令,当由所述一个或多个处理器执行时,所述指令使所述一个或多个处理器执行以下操作:
通过移动设备的摄像头接收环境的图像;
通过所述移动设备生成点云,所述点云指示所述图像中显示的特定物体的距离;
从所述点云提取深度值,所述深度值指示所述摄像头和所述特定物体之间的距离;
从训练后的神经网络接收一个或多个候选识别简档,每个候选识别简档包括第一包围盒以及识别概率,所述第一包围盒围绕所述图像的第一部分,所述图像的所述第一部分包括所述特定物体的至少一部分,所述识别概率指示所述特定物体对应于特定标签的概率;
接收与所述特定标签对应的尺度信息,所述尺度信息指示与所述特定标签对应的任意物体的几何图形;
通过使用所述深度值修改所述尺度信息,生成虚拟几何图形;
通过比较所述第一包围盒和所述虚拟几何图形,生成尺度匹配概率;
使用所述尺度匹配概率更新所述神经网络;以及
使用更新的所述神经网络生成最终识别简档,所述最终识别简档包括第二包围盒和更新的标签,所述第二包围盒围绕所述图像的包括所述特定物体的第二部分,所述更新的标签对应于所述特定物体。
16.根据权利要求15所述的***,其中,所述尺度信息包括与所述标签对应的所述任意物体的高度值、长度值、以及宽度值。
17.根据权利要求15所述的***,其中,所述第一包围盒由所述移动设备显示。
18.一种***,包括:
一个或多个处理器;以及
非暂时性机器可读介质,包括指令,当由所述一个或多个处理器执行时,所述指令使所述一个或多个处理器执行以下操作:
通过移动设备的摄像头接收环境的图像;
通过所述移动设备基于所述图像生成点云,所述点云指示所述图像内的至少一个物体到所述摄像头的距离;
从神经网络接收一个或多个识别简档,每个识别简档包括包围盒、标签、以及概率,所述包围盒围绕所述图像的一部分,所述标签对应于所述图像的所述一部分,所述概率为所述图像的所述一部分对应于所述标签的概率;
接收尺度信息,所述尺度信息包括与所述标签对应的任意物体的尺寸;
使用所述尺度信息和所述点云更新所述神经网络;以及
使用更新的所述神经网络生成所述第二包围盒和标签,所述第二包围盒围绕所述图像的第二部分,所述标签对应于所述图像的所述第二部分中显示的物体。
19.根据权利要求18所述的***,其中,更新所述神经网络包括修改所述一个或多个识别简档中的至少一个识别简档的概率。
20.根据权利要求18所述的***,其中,更新所述神经网络包括:
基于所述尺度信息和所述一个或多个识别简档中至少一个识别简档的包围盒,删除所述至少一个识别简档。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US202062977025P | 2020-02-14 | 2020-02-14 | |
US62/977,025 | 2020-02-14 | ||
PCT/CN2021/076066 WO2021160097A1 (en) | 2020-02-14 | 2021-02-08 | System and method for object detection for augmented reality |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115104135A true CN115104135A (zh) | 2022-09-23 |
Family
ID=77291387
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202180013885.7A Pending CN115104135A (zh) | 2020-02-14 | 2021-02-08 | 用于增强现实的物体检测***和方法 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN115104135A (zh) |
WO (1) | WO2021160097A1 (zh) |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9552675B2 (en) * | 2013-06-03 | 2017-01-24 | Time Traveler App Llc | Display application and perspective views of virtual space |
US10346723B2 (en) * | 2016-11-01 | 2019-07-09 | Snap Inc. | Neural network for object detection in images |
US10269159B2 (en) * | 2017-07-27 | 2019-04-23 | Rockwell Collins, Inc. | Neural network foreground separation for mixed reality |
US11618438B2 (en) * | 2018-03-26 | 2023-04-04 | International Business Machines Corporation | Three-dimensional object localization for obstacle avoidance using one-shot convolutional neural network |
CN110633617B (zh) * | 2018-06-25 | 2023-08-08 | 苹果公司 | 使用语义分割的平面检测 |
KR20210027380A (ko) * | 2018-07-05 | 2021-03-10 | 옵티멈 세미컨덕터 테크놀로지스 인코포레이티드 | 다수의 센서들 및 감소된 복잡도 신경망들을 사용한 오브젝트 검출 |
CN110221690B (zh) * | 2019-05-13 | 2022-01-04 | Oppo广东移动通信有限公司 | 基于ar场景的手势交互方法及装置、存储介质、通信终端 |
-
2021
- 2021-02-08 CN CN202180013885.7A patent/CN115104135A/zh active Pending
- 2021-02-08 WO PCT/CN2021/076066 patent/WO2021160097A1/en active Application Filing
Also Published As
Publication number | Publication date |
---|---|
WO2021160097A1 (en) | 2021-08-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111328396B (zh) | 用于图像中的对象的姿态估计和模型检索 | |
JP7236545B2 (ja) | ビデオターゲット追跡方法と装置、コンピュータ装置、プログラム | |
US11176758B2 (en) | Overlaying 3D augmented reality content on real-world objects using image segmentation | |
US10373380B2 (en) | 3-dimensional scene analysis for augmented reality operations | |
US9053571B2 (en) | Generating computer models of 3D objects | |
US11494915B2 (en) | Image processing system, image processing method, and program | |
CN109683699B (zh) | 基于深度学习实现增强现实的方法、装置及移动终端 | |
WO2018089163A1 (en) | Methods and systems of performing object pose estimation | |
JP5713790B2 (ja) | 画像処理装置、画像処理方法、及びプログラム | |
US10311295B2 (en) | Heuristic finger detection method based on depth image | |
US11004221B2 (en) | Depth recovery methods and apparatuses for monocular image, and computer devices | |
CN112560684B (zh) | 车道线检测方法、装置、电子设备、存储介质以及车辆 | |
EP2671384A2 (en) | Mobile camera localization using depth maps | |
US10867390B2 (en) | Computer vision processing | |
KR20220043847A (ko) | 객체 포즈 추정 방법, 장치, 전자 장치 및 저장 매체 | |
CN110648363A (zh) | 相机姿态确定方法、装置、存储介质及电子设备 | |
WO2021068799A1 (en) | Occlusion and collision detection for augmented reality applications | |
CN112528858A (zh) | 人体姿态估计模型的训练方法、装置、设备、介质及产品 | |
CN115719436A (zh) | 模型训练方法、目标检测方法、装置、设备以及存储介质 | |
CN114063858A (zh) | 图像处理方法、装置、电子设备及存储介质 | |
US20230377160A1 (en) | Method and electronic device for achieving accurate point cloud segmentation | |
Park et al. | Self-training based augmented reality for robust 3D object registration and task assistance | |
CN109785367B (zh) | 三维模型追踪中外点滤除方法和装置 | |
JP2017033556A (ja) | 画像処理方法及び電子機器 | |
CN115104135A (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 |