CN112470167A - 用于转角检测的方法和装置 - Google Patents
用于转角检测的方法和装置 Download PDFInfo
- Publication number
- CN112470167A CN112470167A CN201980048886.8A CN201980048886A CN112470167A CN 112470167 A CN112470167 A CN 112470167A CN 201980048886 A CN201980048886 A CN 201980048886A CN 112470167 A CN112470167 A CN 112470167A
- Authority
- CN
- China
- Prior art keywords
- image
- corners
- processing unit
- rotation angle
- corner
- 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
- 238000000034 method Methods 0.000 title claims description 145
- 238000012545 processing Methods 0.000 claims abstract description 195
- 230000001629 suppression Effects 0.000 claims description 35
- 238000001514 detection method Methods 0.000 description 53
- 210000001508 eye Anatomy 0.000 description 20
- 230000003287 optical effect Effects 0.000 description 19
- 238000004891 communication Methods 0.000 description 17
- 210000003128 head Anatomy 0.000 description 17
- 230000008569 process Effects 0.000 description 10
- 239000011159 matrix material Substances 0.000 description 9
- 230000004044 response Effects 0.000 description 9
- 230000004807 localization Effects 0.000 description 8
- 230000006870 function Effects 0.000 description 7
- 239000000758 substrate Substances 0.000 description 6
- 230000008901 benefit Effects 0.000 description 5
- 238000003860 storage Methods 0.000 description 5
- 230000000007 visual effect Effects 0.000 description 5
- 230000008859 change Effects 0.000 description 4
- 230000008447 perception Effects 0.000 description 4
- 239000007787 solid Substances 0.000 description 4
- 230000005540 biological transmission Effects 0.000 description 3
- 239000000872 buffer Substances 0.000 description 3
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- 230000033001 locomotion Effects 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 238000012986 modification Methods 0.000 description 3
- 230000009471 action Effects 0.000 description 2
- 210000004556 brain Anatomy 0.000 description 2
- 230000001413 cellular effect Effects 0.000 description 2
- 230000008878 coupling Effects 0.000 description 2
- 238000013500 data storage Methods 0.000 description 2
- 238000009826 distribution Methods 0.000 description 2
- 210000000613 ear canal Anatomy 0.000 description 2
- 238000000605 extraction Methods 0.000 description 2
- 239000000835 fiber Substances 0.000 description 2
- 238000004519 manufacturing process Methods 0.000 description 2
- 238000005259 measurement Methods 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- 238000009827 uniform distribution Methods 0.000 description 2
- RYGMFSIKBFXOCR-UHFFFAOYSA-N Copper Chemical compound [Cu] RYGMFSIKBFXOCR-UHFFFAOYSA-N 0.000 description 1
- 230000004308 accommodation Effects 0.000 description 1
- 230000002730 additional effect Effects 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 230000000712 assembly Effects 0.000 description 1
- 238000000429 assembly Methods 0.000 description 1
- 230000003190 augmentative effect Effects 0.000 description 1
- 230000001427 coherent effect Effects 0.000 description 1
- 239000003086 colorant Substances 0.000 description 1
- 238000012937 correction Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 210000005069 ears Anatomy 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000011156 evaluation Methods 0.000 description 1
- 238000003384 imaging method Methods 0.000 description 1
- 238000007654 immersion Methods 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 239000000463 material Substances 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000009877 rendering Methods 0.000 description 1
- 238000005096 rolling process Methods 0.000 description 1
- 239000004984 smart glass Substances 0.000 description 1
- 230000009466 transformation Effects 0.000 description 1
- 230000007704 transition Effects 0.000 description 1
- 210000000857 visual cortex Anatomy 0.000 description 1
- 238000012800 visualization Methods 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W4/00—Services specially adapted for wireless communication networks; Facilities therefor
- H04W4/02—Services making use of location information
-
- G—PHYSICS
- G02—OPTICS
- G02B—OPTICAL ELEMENTS, SYSTEMS OR APPARATUS
- G02B27/00—Optical systems or apparatus not provided for by any of the groups G02B1/00 - G02B26/00, G02B30/00
- G02B27/0093—Optical systems or apparatus not provided for by any of the groups G02B1/00 - G02B26/00, G02B30/00 with means for monitoring data relating to the user, e.g. head-tracking, eye-tracking
-
- G—PHYSICS
- G02—OPTICS
- G02B—OPTICAL ELEMENTS, SYSTEMS OR APPARATUS
- G02B27/00—Optical systems or apparatus not provided for by any of the groups G02B1/00 - G02B26/00, G02B30/00
- G02B27/01—Head-up displays
- G02B27/0101—Head-up displays characterised by optical features
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/50—Information retrieval; Database structures therefor; File system structures therefor of still image data
- G06F16/58—Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually
- G06F16/5866—Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually using information manually generated, e.g. tags, keywords, comments, manually generated location and time information
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T19/00—Manipulating 3D models or images for computer graphics
- G06T19/006—Mixed reality
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/70—Determining position or orientation of objects or cameras
- G06T7/73—Determining position or orientation of objects or cameras using feature-based methods
-
- 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/40—Extraction of image or video features
- G06V10/44—Local feature extraction by analysis of parts of the pattern, e.g. by detecting edges, contours, loops, corners, strokes or intersections; Connectivity analysis, e.g. of connected components
-
- 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/74—Image or video pattern matching; Proximity measures in feature spaces
- G06V10/75—Organisation of the matching processes, e.g. simultaneous or sequential comparisons of image or video features; Coarse-fine approaches, e.g. multi-scale approaches; using context analysis; Selection of dictionaries
- G06V10/758—Involving statistics of pixels or of feature values, e.g. histogram matching
-
- 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W4/00—Services specially adapted for wireless communication networks; Facilities therefor
- H04W4/02—Services making use of location information
- H04W4/021—Services related to particular areas, e.g. point of interest [POI] services, venue services or geofences
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W4/00—Services specially adapted for wireless communication networks; Facilities therefor
- H04W4/02—Services making use of location information
- H04W4/029—Location-based management or tracking services
-
- G—PHYSICS
- G02—OPTICS
- G02B—OPTICAL ELEMENTS, SYSTEMS OR APPARATUS
- G02B27/00—Optical systems or apparatus not provided for by any of the groups G02B1/00 - G02B26/00, G02B30/00
- G02B27/01—Head-up displays
- G02B27/0101—Head-up displays characterised by optical features
- G02B2027/0147—Head-up displays characterised by optical features comprising a device modifying the resolution of the displayed image
-
- G—PHYSICS
- G02—OPTICS
- G02B—OPTICAL ELEMENTS, SYSTEMS OR APPARATUS
- G02B27/00—Optical systems or apparatus not provided for by any of the groups G02B1/00 - G02B26/00, G02B30/00
- G02B27/01—Head-up displays
- G02B27/017—Head mounted
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W4/00—Services specially adapted for wireless communication networks; Facilities therefor
- H04W4/02—Services making use of location information
- H04W4/025—Services making use of location information using location based information parameters
- H04W4/026—Services making use of location information using location based information parameters using orientation information, e.g. compass
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W4/00—Services specially adapted for wireless communication networks; Facilities therefor
- H04W4/02—Services making use of location information
- H04W4/025—Services making use of location information using location based information parameters
- H04W4/027—Services making use of location information using location based information parameters using movement velocity, acceleration information
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Multimedia (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Software Systems (AREA)
- Databases & Information Systems (AREA)
- Optics & Photonics (AREA)
- General Engineering & Computer Science (AREA)
- Computing Systems (AREA)
- Health & Medical Sciences (AREA)
- Artificial Intelligence (AREA)
- Evolutionary Computation (AREA)
- General Health & Medical Sciences (AREA)
- Medical Informatics (AREA)
- Computer Hardware Design (AREA)
- Computer Graphics (AREA)
- Data Mining & Analysis (AREA)
- Library & Information Science (AREA)
- Image Processing (AREA)
- Processing Or Creating Images (AREA)
Abstract
一种被配置为由用户头戴的装置,包括:屏幕,其被配置为向用户呈现图形;相机系统,其被配置为观看用户所处的环境;以及处理单元,其被耦合到相机系统,该处理单元被配置为:获得具有第一分辨率的第一图像,第一图像具有第一转角,确定具有第二分辨率的第二图像,第二图像具有与第一图像中的第一转角相对应的第二转角,其中第二图像是基于第一图像的,第二分辨率小于第一分辨率,在第二图像中检测第二转角,确定第二转角在第二图像中的位置,以及至少部分地基于所确定的第二转角在第二图像中的位置来确定第一转角在第一图像中的位置。
Description
技术领域
本公开涉及头戴式图像显示设备,以及用于在由头戴式图像显示设备生成的图像中检测转角的方法和装置。
背景技术
现代计算和显示技术促进了用于所谓的“虚拟现实”(VR)或“增强现实”(AR)体验的“混合现实”(MR)系统的发展,其中,数字再现的图像或其部分以他们看起来是真实的或可被感知为真实的方式呈现给用户。VR场景通常涉及以对实际的真实世界视觉输入不透明的方式来呈现数字或虚拟图像信息。AR场景通常涉及将数字或虚拟图像信息的呈现作为对用户周围的真实世界(即,对真实世界视觉输入的透明度)的可视化的增强。因此,AR场景涉及以对真实世界视觉输入透明的方式来呈现数字或虚拟图像信息。
MR系统可以生成并显示颜色数据,这增加了MR场景的真实性。这些MR系统中的许多系统通过快速连续地按顺序投射与彩色图像对应的不同(例如,原色)颜色或“场”(例如,红色、绿色和蓝色)的子图像来显示颜色数据。以足够高的速率(例如,60Hz、120Hz等)投射彩色子图像可以在用户的头脑中传递平滑的彩色MR场景。
各种光学系统在用于显示MR(VR和AR)场景的各种深度处生成包括彩色图像的图像。一些这样的光学系统在2014年11月27日提交的美国实用专利申请No.14/555,585(代理案号ML.20011.00)中描述,其内容通过引用整体被明确地并完整地并入本文中,如同完全阐述一样。
MR系统可以采用可穿戴显示设备(例如,头戴式显示器、头盔式显示器或智能眼镜),其至少松散地耦接到用户的头部,并由此在用户的头部移动时移动。如果显示系统检测到用户的头部运动,则可以更新(例如,“改变(warp)”)正在显示的数据以考虑头部姿势(即,用户头部的取向和/或位置)的变化。
作为示例,如果佩戴头戴式显示设备的用户观看显示器上的虚拟对象的虚拟表示并且在虚拟对象出现的区域周围行走,则可以针对每个观看点渲染虚拟对象,从而给予用户他们在占据真实空间的对象周围行走的感知。如果头戴式显示设备用于呈现多个虚拟对象,则可以使用头部姿态的测量来渲染场景以匹配用户的动态变化的头部姿态并且提供增加的沉浸感。
能够实现AR的头戴式显示设备提供对真实对象和虚拟对象两者的同时观看。通过“光学透视”显示器,用户可以透视显示系统中的透明(或半透明的)元件以直接观看来自环境中的真实对象的光。透明元件(通常称为“组合器”)将来自显示器的光叠加在用户对真实世界的视图上,其中来自显示器的光将虚拟内容的图像投射在环境中的真实对象的透视图上。相机可以被安装到头戴式显示设备上以捕获由用户观看到的场景的图像或视频。
当前光学系统,诸如MR系统中的那些光学系统,光学地渲染虚拟内容。内容是“虚拟的”,因为其不对应于位于空间中的相应位置的真实物理对象。相反,当用户被指向其的眼睛的光束刺激时,虚拟内容仅存在于头戴式显示设备的用户的大脑(例如,光学中心)中。
在一些情况下,头戴式图像显示设备可以相对于真实环境显示虚拟对象和/或可以允许用户相对于真实环境来放置和/或操纵虚拟对象。在这样的情况下,图像显示设备可以被配置为相对于真实环境定位用户,使得虚拟对象可以相对于真实环境被正确地移位。头戴式图像显示设备可以使用定位地图(map)来执行定位。具体地,当执行定位时,图像显示设备可以从图像显示设备的相机系统获得实时输入图像,并且将输入图像中的特征与定位地图中的特征进行匹配。
本文描述了用于检测图像中的转角的方法和装置。所检测到的转角可以用作用于创建定位地图的特征。可替换地,转角可以被检测作为来自输入图像的特征,以用于与用于用户的定位的定位地图的特征进行匹配。
发明内容
一种被配置为由用户头戴的装置,包括:屏幕,其被配置为向用户呈现图形;相机系统,其被配置为观看用户所处的环境;以及处理单元,其被耦合到相机系统,处理单元被配置为:获得具有第一分辨率的第一图像,第一图像具有第一转角,确定具有第二分辨率的第二图像,第二图像具有与第一图像中的第一转角相对应的第二转角,其中第二图像是基于第一图像的,第二分辨率小于第一分辨率,在第二图像中检测第二转角,确定第二转角在第二图像中的位置,以及至少部分地基于所确定的第二转角在第二图像中的位置来确定第一转角在第一图像中的位置。
可选地,处理单元被配置为在第二图像中检测转角集合,转角集合具有第二转角。
可选地,处理单元被配置为基于Harris转角检测技术来在第二图像中检测转角集合。
可选地,处理单元被配置为基于一个或多个准则来在第二图像中检测转角集合。
可选地,一个或多个准则包括用于排除第二图像中是平面的和/或具有不足纹理的一个或多个对象的第一准则。
可选地,一个或多个准则包括用于排除第二图像中具有线性配置的一个或多个对象的第二准则。
可选地,处理单元还被配置为执行非极大值抑制以消除转角集合中被重复检测到的转角。
可选地,非极大值抑制包括3×3非极大值抑制。
可选地,处理单元包括硬件和软件;其中,处理单元的硬件被配置为检测转角集合;以及其中,处理单元的软件被配置为执行非极大值抑制。
可选地,处理单元被配置为执行空间分箱以从转角集合中选择转角子集。
可选地,处理单元被配置为通过以下来执行空间分箱:将第二图像划分成具有第一图像部分的多个图像部分;确定转角集合中每个转角的分数;以及基于第一图像部分中转角的分数,并且基于针对第一图像部分的规定最大转角数,从第一图像部分中的转角中选择一个或多个转角。
可选地,处理单元包括硬件和软件;其中,处理单元的硬件被配置为检测转角集合;以及其中,处理单元的软件被配置为执行空间分箱。
可选地,处理单元被配置为通过对第二图像应用Harris转角检测来在第二图像中检测第二转角。
可选地,处理单元被配置为通过对第一图像应用Harris转角检测来在第一图像中检测第一转角。
可选地,处理单元被配置为在第一图像中检测包括第一转角的转角集合。
可选地,处理单元还被配置为至少部分地基于第二转角在第二图像中的位置来从第一图像中的转角集合中检测第一转角。
可选地,处理单元包括被配置为在第一图像中检测转角集合的硬件、以及被配置为从第一图像中的转角集合中检测第一转角的软件。
可选地,处理单元被配置为基于第一图像的第一分辨率与第二图像的第二分辨率之间的关系来确定第一转角的位置。
可选地,第二转角的位置对应于第二图像中的像素位置(xr,yr);其中,第二图像中的像素位置(xr,yr)对应于第一图像中的多个像素位置;以及其中,处理单元被配置为通过选择第一图像中多个像素位置中的具有相对于第二图像中的像素位置(xr,yr)的最佳空间关系的像素位置来确定第一转角的位置。
可选地,处理单元包括图像调整器,其被配置为通过将第一图像转换为第二图像来确定第二图像。
可选地,图像调整器被配置为缩小第一图像的第一分辨率以获得具有第二分辨率的第二图像。
可选地,处理单元包括被配置为在包括第二转角的第二图像中检测转角集合的硬件、以及被配置为确定第一转角在第一图像中的位置的软件。
可选地,处理单元包括硬件。
可选地,处理单元的硬件被配置为在第二图像中检测第二转角。
可选地,处理单元的硬件被配置为执行Harris转角检测算法。
可选地,处理单元包括被配置为基于第一准则来工作的转角检测器。
可选地,第一准则排除第二图像中是平面的和/或具有不足纹理的对象。
可选地,第一准则包括:λmin>阈值,其中λmin=min(λ2,λ1),并且其中λ1是第一特征值,λ2是大于第一特征值的第二特征值。
可选地,转角检测器进一步被配置为基于第二准则来工作。
可选地,第二准则排除第二图像中具有线性配置的对象。
可选地,第二准则包括:λ2/λ1<阈值,其中λ1是第一特征值,λ2是大于第一特征值的第二特征值。
可选地,处理单元被配置为基于第一常数k1来在第二图像中检测第二转角。
可选地,k1=R/(1+R)^2,其中R是任何数。
可选地,第一常数k1在0.1与0.2之间。
可选地,第一常数k1是0.139。
可选地,处理单元被配置为基于第二常数k2来在第二图像中检测第二转角。
可选地,第二常数k2小于0.01。
可选地,第二常数k2是0.00478125。
可选地,第二常数k2是基于第一常数k1。
可选地,k2=(k1-1/16)/16。
可选地,处理单元被配置为基于Det(H)来在第二图像中检测第二转角,其中H是矩阵。
可选地,处理单元被配置为基于trace(H)来在第二图像中检测第二转角,其中H是矩阵。
可选地,处理单元被配置为基于第一常数和第二常数来执行第一Harris转角检测,其中,第二常数与第一常数不同。
可选地,第二常数是基于第一常数。
可选地,处理单元被配置为执行非极大值抑制。
可选地,处理单元被配置为执行空间分箱。
可选地,处理单元包括软件。
可选地,处理单元的软件被配置为执行非极大值抑制。
可选地,处理单元的软件被配置为执行空间分箱。
可选地,第一分辨率包括VGA分辨率。
可选地,第二分辨率包括QVGA分辨率。
可选地,装置还包括被配置为存储第一转角在第一图像中的位置的非暂时性介质。
可选地,处理单元被配置为至少部分地基于第一转角的位置来创建地图。
可选地,地图包括与第一转角的位置相关联的地图点。
可选地,处理单元被配置为基于所创建的地图来执行用户的定位。
可选地,处理单元被配置为至少部分地基于第一转角在第一图像中的位置来执行第一图像与地图之间的匹配。
一种由头戴式图像显示设备执行的方法,包括:获得具有第一分辨率的第一图像,第一图像具有第一转角;确定具有第二分辨率的第二图像,第二图像具有与第一图像中的第一转角相对应的第二转角,其中第二图像是基于第一图像的,第二分辨率小于第一分辨率;在第二图像中检测第二转角;确定第二转角在第二图像中的位置;以及至少部分地基于所确定的第二转角在第二图像中的位置来确定第一转角在第一图像中的位置。
可选地,第二转角是第二图像中被检测到的转角集合的一部分。
可选地,基于Harris转角检测技术在第二图像中检测转角集合。
可选地,基于一个或多个准则来检测第二图像中的转角集合。
可选地,一个或多个准则包括用于排除第二图像中是平面的和/或具有不足纹理的一个或多个对象的第一准则。
可选地,一个或多个准则包括用于排除第二图像中具有线性配置的一个或多个对象的第二准则。
可选地,该方法进一步包括执行非极大值抑制以消除转角集合中被重复检测到的转角。
可选地,非极大值抑制包括3×3非极大值抑制。
可选地,方法由包括硬件和软件的处理单元执行;其中,转角集合由处理单元中的硬件检测;以及其中,非极大值抑制由处理单元中的软件执行。
可选地,方法进一步包括执行空间分箱以从转角集合中选择转角子集。
可选地,方法进一步包括通过以下来执行空间分箱:将第二图像划分成具有第一图像部分的多个图像部分;确定转角集合中每个转角的分数;以及基于第一图像部分中转角的分数,并且基于针对第一图像部分的规定最大转角数,从第一图像部分中的转角中选择一个或多个转角。
可选地,方法由包括硬件和软件的处理单元执行;其中,转角集合由处理单元中的硬件检测;以及其中,空间分箱由处理单元中的软件执行。
可选地,通过对第二图像应用Harris转角检测来在第二图像中检测第二转角。
可选地,该方法进一步包括通过对第一图像应用Harris转角检测来在第一图像中检测第一转角。
可选地,该方法进一步包括在第一图像中检测包括第一转角的转角集合。
可选地,该方法进一步包括至少部分地基于第二转角在第二图像中的位置来从第一图像中的转角集合中识别第一转角。
可选地,第一图像中的转角集合由硬件检测,以及第一转角由软件从第一图像中的转角集合中识别。
可选地,基于第一图像的第一分辨率与第二图像的第二分辨率之间的关系来确定第一转角的位置。
可选地,第二转角的位置对应于第二图像中的像素位置(xr,yr);其中,第二图像中的像素位置(xr,yr)对应于第一图像中的多个像素位置;以及其中,通过选择第一图像中的多个像素位置中具有相对于第二图像中的像素位置(xr,yr)的最佳空间关系的像素位置来确定第一转角的位置。
可选地,通过将第一图像转换为第二图像来确定第二图像。
可选地,通过缩小第一图像的第一分辨率以获得具有第二分辨率的第二图像来将第一图像转换为第二图像。
可选地,第二转角是在第二图像中检测到的转角集合的一部分,并且其中,由软件确定第一转角在第一图像中的位置。
可选地,方法由包括硬件的处理单元执行。
可选地,由处理单元的硬件在第二图像中检测第二转角。
可选地,处理单元的硬件被配置为执行Harris转角检测算法。
可选地,方法由包括转角检测器的处理单元执行,转角检测器被配置为基于第一准则来工作。
可选地,第一准则排除第二图像中是平面的和/或具有不足纹理的对象。
可选地,第一准则包括:λmin>阈值,其中λmin=min(λ2,λ1),并且其中λ1是第一特征值,λ2是大于第一特征值的第二特征值。
可选地,转角检测器进一步被配置为基于第二准则来工作。
可选地,第二准则排除第二图像中具有线性配置的对象。
可选地,第二准则包括:λ2/λ1<阈值,其中λ1是第一特征值,λ2是大于第一特征值的第二特征值。
可选地,基于第一常数k1来在第二图像中检测第二转角。
可选地,k1=R/(1+R)^2,其中R是任何数。
可选地,第一常数k1在0.1与0.2之间。
可选地,第一常数k1是0.139。
可选地,基于第二常数k2来在第二图像中检测第二转角。
可选地,第二常数k2小于0.01。
可选地,第二常数k2是0.00478125。
可选地,第二常数k2是基于第一常数k1。
可选地,k2=(k1-1/16)/16。
可选地,基于Det(H)来在第二图像中检测第二转角,其中H是矩阵。
可选地,基于trace(H)来在第二图像中检测第二转角,其中H是矩阵。
可选地,通过基于第一常数和第二常数执行第一Harris转角检测来检测第二转角其中,第二常数与第一常数不同。
可选地,第二常数是基于第一常数。
可选地,该方法进一步包括执行非极大值抑制。
可选地,该方法进一步包括执行空间分箱。
可选地,该方法由包括软件的处理单元执行。
可选地,该方法进一步包括由处理单元的软件执行非极大值抑制。
可选地,该方法进一步包括由处理单元的软件执行空间分箱。
可选地,第一分辨率包括VGA分辨率。
可选地,第二分辨率包括QVGA分辨率
可选地,该方法进一步包括将第一转角的位置存储在非暂时性介质中。
可选地,该方法进一步包括至少部分地基于第一转角的位置来创建地图。
可选地,地图包括与第一转角的位置相关联的地图点。
可选地,该方法进一步包括基于所创建的地图来执行图像显示设备的用户的定位。
可选地,该方法进一步包括至少部分地基于第一转角在第一图像中的位置来执行第一图像与地图之间的匹配。
在详细描述、附图和权利要求中描述了本公开的附加和其他目的、特征和优点。
附图说明
附图示出了本公开的各种实施例的设计和实用性。应该注意,附图未按比例绘制,并且贯穿所有附图,具有相似结构或功能的元件由相同的参考标号表示。为了更好地理解如何获得本公开的各种实施例的上述和其他优点和目标,将通过参考本公开的具体实施例来呈现上面简要描述的本公开的更详细的说明。应理解,这些附图仅示出了本公开的典型实施例,因此不应认为是对其范围的限制,将通过使用附图,借助附加特征和细节来描述和解释本公开,其中:
图1示出了根据一些实施例的具有图像显示设备的另一图像显示系统。
图2示出了根据其他实施例的具有图像显示设备的另一图像显示系统。
图3示出了根据其他实施例的具有图像显示设备的另一图像显示系统。
图4示出了根据其他实施例的具有图像显示设备的另一图像显示系统。
图5示出了在多个深度平面显示帧的图像显示设备。
图6示出了用于确定地图的方法,该地图用于允许图像显示设备定位图像显示设备的用户和/或执行其他功能。
图7示出了被划分成多个单元的环境的示例。
图8示出了图像显示设备的处理单元。
图9A-9B示出了使用本征值和/或Harris分数的图像点的分类。
图10示出了用于图8的处理单元的信号流。
图11示出了由图8的处理单元执行的转角检测的示例。
图12示出了图8的处理单元的变型。
图13示出了由图8的处理单元执行的方法。
图14示出了根据一些实施例的专用处理系统。
具体实施方式
本公开的各种实施例涉及用于为头戴式视频图像设备提供输入的方法、装置和制品。在详细描述、附图和权利要求中描述了本公开的其他目的、特征和优点。
在下文中参考附图描述各种实施例。应当注意,附图不是按比例绘制的,并且在整个附图中,具有相似结构或功能的元件由相同的附图标记表示。还应注意,附图仅旨在有利于对实施例的描述。它们不旨在作为对本发明的详尽描述或作为对本发明的范围的限制。另外,所说明的实施例不需要具有所示出的所有方面或优点。结合特定实施例描述的方面或优点不一定限于该实施例,并且即使未被那样示出或者如果未被那样明确地描述,上述方面或优点也可以在任何其他实施例中实践。
以下描述涉及可以实践本文中所描述的实施例的示例性VR、AR和/或MR系统。然而,应当理解,实施例还适用于其他类型的显示系统(包括其他类型的VR、AR和/或MR系统)中的应用,并且因此实施例不限于仅在此公开的示例性示例。
问题和解决方案的概述
在一些情况下,为了相对于用户的环境来定位头戴式图像显示设备的用户,获得环境的定位地图。然后,来自图像显示设备的相机系统的实时输入图像被与定位地图进行匹配以定位用户。例如,可以从输入图像检测输入图像的转角特征,并且将其与定位地图的转角特征进行匹配。在一些实施例中,为了从用于定位的图像获得转角集合作为特征,图像可能首先需要经历转角检测以获得所检测到的转角初始集合。然后进一步处理所检测到的转角初始集合,例如,通过非极大值抑制以及空间分箱(spinning)等,以便获得用于定位目的的所检测到的转角最终集合。然而,非极大值抑制、空间分箱或其他类型的处理可能需要显著的计算资源,并且可能花费太长时间来完成。因此,具有用于获得用于定位目的的转角集合的新颖方法和装置将是有利的。在一些实施例中,调整第一图像以获得分辨率降低的第二图像。第二图像被处理以检测转角,以执行非极大值抑制和空间分箱,以便获得用于定位的转角集合。基于分辨率降低的第二图像获得的转角集合可基于第一图像的位置而被细化(refine),以获得具有用于定位目的的具有改善的位置的转角最终集合。
图1-4示出了在各种实施例中的图像显示系统100的各种组件。图像显示系统100包括图像显示设备101和用于为图像显示设备101提供输入的装置200。下面将更详细地描述装置200。图像显示设备101可以是VR设备、AR设备、MR设备或其他类型的显示设备中的任一者。图像显示设备101包括由终端用户50佩戴的框架结构102、由框架结构102承载的显示子系统110以使得显示子系统110定位在终端用户50的眼睛前方、以及由框架结构102承载的扬声器106以使得扬声器106定位成与终端用户50的耳道相邻(可选地,另一扬声器(未示出)定位成与终端用户50的另一耳道相邻以提供立体声/可成形声音控制)。显示子系统110被设计为以高水平的图像质量和三维感知向终端用户50的眼睛呈现可以被舒适地感知为对物理现实的增强的光图案以及能够呈现二维内容。显示子系统110以提供单个相干场景的感知的高频来呈现帧序列。
在所示实施例中,显示子系统110采用“光学透视”显示器,通过该显示器,用户可以经由透明(或半透明)元件直接观看来自真实对象的光。透明元件,其通常被称为“组合器”,将来自显示器的光叠加在用户对真实世界的视图上。为此,显示子系统110包括部分透明的显示器。显示器被定位在终端用户50的眼睛与周围环境之间的终端用户的50视场中,使得来自周围环境的直接光通过显示器被传输到终端用户50的眼睛。
在所示实施例中,图像投射组件向部分透明的显示器提供光,从而与来自周围环境的直接光组合,并且被从显示器传输到用户50的眼睛。投射子系统可以是基于光纤扫描的投射设备,并且显示器可以是基于波导的显示器,其中来自投射子系统的扫描光被注入到该基于波导的显示器中以产生例如在比无限远(例如,手臂的长度)更近的单个光学观看距离处的图像、在多个离散光学观看距离或聚焦平面处的图像和/或堆叠在多个观看距离或聚焦平面处的图像层,以表示体积3D对象。光场中的这些层可以足够紧密地堆叠在一起以显得与人类视觉子系统连续(即,一个层在相邻层的混淆锥(cone of confusion)内)。附加地或替代地,即使这些层更稀疏地堆叠(即,一个层在相邻层的混淆锥之外),图像元素也可以跨两个或更多个层混合以增加光场中的层之间的过渡的感知连续性。显示子系统110可以是单眼或双眼的。
图像显示设备101还可以包括安装到框架结构102的一个或多个传感器(未示出),用于检测终端用户50的头部54的位置和移动和/或终端用户50的眼睛位置和眼间距离。这样的传感器可以包括图像捕获设备(诸如相机)、麦克风、惯性测量单元、加速计、罗盘、GPS单元、无线电设备和/或陀螺仪)或前述的任何组合。这些传感器中的许多传感器基于其被固定到的框架102依次基本上被固定到用户的头部、眼睛和耳朵的假设来进行操作。
图像显示设备101还可以包括用户取向检测模块。用户取向模块检测终端用户50的头部54的瞬时位置(例如,经由耦合到框架102的传感器),并且可以基于从传感器接收的位置数据来预测终端用户50的头部54的位置。检测终端用户50的头部54的瞬时位置有助于确定终端用户50正在看的特定实际对象,从而提供关于该实际对象要生成的特定虚拟对象的指示,并且进一步提供要显示虚拟对象的位置的指示。用户取向模块还可以基于从传感器接收的跟踪数据来跟踪终端用户50的眼睛。
图像显示设备101还可以包括可以采取多种形式中的任何形式的控制子系统。控制子系统包括多个控制器,例如一个或多个微控制器、微处理器或中央处理单元(CPU)、数字信号处理器、图形处理单元(GPU)、其他集成电路控制器,其他集成电路控制器例如专用集成电路(ASIC)、可编程门阵列(PGA)(例如,场PGA(FPGA))和/或可编程逻辑控制器(PLU)。
图像显示设备101的控制子系统可以包括中央处理单元(CPU)、图形处理单元(GPU)、一个或多个帧缓冲器、以及用于存储三维场景数据的三维数据库。CPU可控制总体操作,而GPU可从被存储在三维数据库中的三维数据来渲染帧(即,将三维场景转换成二维图像)并将这些帧存储在帧缓冲器中。一个或多个附加集成电路可以控制对来自帧缓冲器的帧的读取和/或读出以及控制显示子系统110的图像投射组件的操作。
图像显示设备101的各种处理组件可以被物理地包含在分布式子系统中。例如,如图1-4所示,图像显示设备101包括本地处理和数据模块130,该本地处理和数据模块130可操作地耦合(例如通过有线引线或无线连接136)到显示子系统110和传感器。本地处理和数据模块130可以以各种配置安装,例如固定地附到框架结构102(图1)、固定地附到头盔或帽子56(图2)、可拆卸地附到终端用户50的躯干58(图3)或者以带耦合方式配置可拆卸地附到终端用户50的髋部60(图4)。图像显示设备101还包括可操作地耦合(例如通过有线引线或无线连接138、140)到本地处理和数据模块130的远程处理模块132和远程数据储存库134,使得这些远程模块132、134可操作地彼此耦合并且可用作本地处理和数据模块130的源。
本地处理和数据模块130可以包括功率有效的处理器或控制器以及诸如闪存的数字存储器,两者都可以用于帮助处理、缓存和存储从传感器捕捉的数据和/或使用远程处理模块132和/或远程数据储存库134获取和/或处理的数据,该数据可能在这样的处理或检索之后被传递到显示子系统110。远程处理模块132可以包括被配置为分析和处理数据和/或图像信息的一个或多个相对强大的处理器或控制器。远程数据储存库134可以包括相对大规模的数字数据存储设施,该设施通过互联网或“云”资源配置中的其他网络配置是可获得的。在一些实施例中,存储全部数据并且在本地处理和数据模块130中执行全部计算,允许从任何远程模块完全自主使用。
上述各种组件之间的耦合136、138、140可以包括用于提供线或光通信的一个或多个有线接口或端口或者诸如通过RF、微波和IR提供无线通信的一个或多个无线接口或端口。在一些实现中,全部通信可以是有线的,而在其他实现中,全部通信都可以是无线的。在更进一步的实现中,有线和无线通信的选择可以是与图1-4中所示的不同。因此,不应将有线或无线通信的特定选择视为限制。
在一些实施例中,用户取向模块被包含在本地处理和数据模块130中,而CPU和GPU被包含在远程处理模块中。在替代实施例中,CPU、GPU或其的部分可被包含在本地处理和数据模块130中。3D数据库可与远程数据储存库134相关联或被本地地设置。
一些图像显示系统(例如,VR系统、AR系统、MR系统等)使用内嵌有深度平面信息的多个体积相位全息图、表面浮雕全息图或光导光学元件来生成看起来来自各个深度平面的图像。换言之,衍射图案或衍射光学元件(“DOE”)可以被嵌入到光导光学元件(“LOE”;例如,平面波导)内或压印/雕刻(emboss)在LOE上,使得准直光(具有基本平面波前的光束)沿着LOE基本上全内反射,它在多个位置处与衍射图案相交并且朝着用户眼睛出射。DOE被配置为使得通过其从LOE出射的光发生会聚,使得它们看起来源自特定的深度平面。可以使用光学聚光透镜(“聚光器”)生成准直光。
例如,第一LOE可以被配置为将准直光传送到眼睛,该准直光看起来源自光学无限远深度平面(0屈光度)。另一LOE可以被配置为传送看起来源自2米距离(1/2屈光度)的准直光。又一LOE可以被配置为传送看起来源自1米距离(1屈光度)的准直光。通过使用堆叠的LOE组件,可以理解,可以形成多个深度平面,其中,每个LOE被配置为显示看起来源自特定深度平面的图像。应该理解,该堆叠可以包括任何数量的LOE。然而,需要至少N个堆叠的LOE来生成N个深度平面。此外,可以使用N、2N或3N个堆叠的LOE在N个深度平面上生成RGB彩色图像。
为了将3D虚拟内容呈现给用户,图像显示系统100(例如,VR系统、AR系统、MR系统等)将虚拟内容的图像投射到用户的眼睛中,使得这些图像看起来源自Z方向(即,正交地远离用户的眼睛)的各个深度平面。换言之,虚拟内容不仅可以在X和Y方向上(即,在与用户眼睛的中心视轴正交的2D平面中)改变,而且也可以看起来在Z方向上改变,使得用户可以感知到对象非常靠近或处于无限远距离或位于它们之间的任何距离处。在其他实施例中,用户可以同时感知到不同深度平面处的多个对象。例如,用户可以看到虚拟龙看起来从无限远处奔向用户。或者,用户可以同时看到距用户3米距离处的虚拟鸟和距用户一臂长(约1米)处的虚拟咖啡杯。
多平面聚焦系统通过在多个深度平面中的一些或全部上投射图像以形成可变深度感知,该多个深度平面在Z方向上距用户眼睛的各个固定距离处。现在参考图5,应当理解,多平面聚焦系统可以在固定深度平面150(例如,图5所示的六个深度平面150)处显示帧。尽管MR系统可以包括任何数量的深度平面150,但是一个示例性多平面聚焦系统在Z方向上具有六个固定深度平面150。当在六个深度平面150中的一个或多个深度平面处生成虚拟内容时,形成3D感知,使得用户感知到在距用户眼睛不同距离处的一个或多个虚拟对象。假定人眼对距离更近的对象比看起来较远的对象更敏感,因此生成更多个距眼睛更近的深度平面150,如图5所示。在其他实施例中,深度平面150可以被放置在距离彼此相等距离处。
可以以屈光度来测量深度平面位置150,屈光度是光焦度单位,其等于以米为单位测量的焦距的倒数。例如,在一些实施例中,深度平面1可以是1/3屈光度远,深度平面2可以是0.3屈光度远,深度平面3可以是0.2屈光度远,深度平面4可以是0.15屈光度远,深度平面5可以是0.1屈光度远,深度平面6可以表示无限远(即,0屈光度远)。应当理解,其他实施例可以在其他距离/屈光度处生成深度平面150。因此,在策略性放置的深度平面150处生成虚拟内容时,用户能够感知三维虚拟对象。例如,用户可以将在深度平面1中显示的第一虚拟对象感知为靠近他,而另一虚拟对象看起来在无限远处的深度平面6。或者,虚拟对象可以首先在深度平面6处显示,然后在深度平面5处显示,依此类推,直到虚拟对象看起来非常靠近用户。应该理解,出于说明的目的,上述示例被明显简化。在另一实施例中,所有六个深度平面可以被集中在远离用户的特定焦距上。例如,如果要显示的虚拟内容是距离用户半米的咖啡杯,则可以在咖啡杯的各个横截面处生成所有六个深度平面,给用户高度粒化的3D咖啡杯视图。
在一些实施例中,图像显示系统100(例如,VR系统、AR系统、MR系统等)可以用作多平面聚焦系统。换言之,可以同时照射所有六个LOE,从而快速连续地生成看起来源自六个固定深度平面的图像,其中,光源将图像信息快速传递到LOE 1,然后是LOE 2,然后是LOE3,以此类推。例如,可以在时间1处注入所需图像的一部分,该部分包括光学无限远处的天空的图像,并且可以利用保持光准直的LOE(例如,图5中的深度平面6)。然后,可以在时间2处注入更近的树枝的图像,并且可以利用被配置为形成看起来源自10米远的深度平面(例如,图5中的深度平面5)的图像的LOE;然后,可以在时间3处注入钢笔图像,并且可以利用被配置为生成看起来源自1米远的深度平面的图像的LOE。此类范例可以以极快时序(例如,以360Hz)的方式重复,使得用户的眼睛和大脑(例如,视觉皮层)将输入感知为同一图像的全部部分。
图像显示系统100可以投射图像(即,通过发散或会聚光束),这些图像看起来源自沿Z轴的各个位置(即,深度平面)以生成用于3D体验/场景的图像。如在本申请中使用的,“光束”包括但不限于从光源辐射的光能(包括可见光和不可见光能)的取向投射。生成看起来源自各个深度平面的图像遵循用户眼睛针对该图像的聚散和适应,并最小化或消除聚散-适应冲突。
定位地图
图6示出了用于确定地图的方法,该地图用于允许图像显示设备101定位图像显示设备101的用户50。如图所示,当用户50正在使用图像显示设备101时,用户50可以移动图像显示设备101以实现不同的观看位置和/或方向。例如,用户50可以转动他/她的头部、转动他/她的身体和/或行走到不同的位置。在一些实施例中,图像显示设备101包括面向前的相机。因此,通过移动图像显示设备101,图像显示设备101的面向前的相机的视场将相应地改变。当用户50处于不同姿势时,图像显示设备101的相机生成对应的图像。在所示示例中,用户50通过转动他/她的头部来实现三个不同姿势,并且图像显示设备101的面向前的相机生成与三个姿势对应的三个图像200a-200c。图像200a-200c中的每一个捕获环境中的某些对象202。例如,图像200b捕获对象202a-202d,并且图像200c捕获对象202b-202e。取决于用户50所实现的姿势,环境中的某个对象可以被捕获在相机的多个图像202中,并且某个其他对象可被捕获在仅一个图像200中。在一些实施例中,图像显示设备101的处理单元130被配置为从图像显示设备101的相机获得图像200,且执行图像处理以从图像200提取特征以创建地图220。地图200可被存储在图像显示设备101的非暂时性介质中,且可由处理单元130使用以执行用户50的定位。由此,地图220用作定位地图。在所示实施例中,地图220是由用户50的不同姿势检测到的环境的三维表示。
在一些实施例中,用户50周围的环境可以被划分成多个单元。在这种情况下,上述地图创建技术可以用于环境的不同单元。图7示出了被划分成多个单元300的环境的示例。每个单元300是表示环境的一部分的被限定的三维空间。每个单元300可以具有预定大小和形状。例如,每个单元300可以具有2m×2m的覆盖面积和2m的高度。在其他实施例中,每个单元300可以具有其他覆盖尺寸和/或其他高度。此外,在其他实施例中,每个单元300可以不具有所示的矩形配置,并且可以具有其他形状。在所示实施例中,单元300都具有相同的形状和尺寸。在其他实施例中,单元300中的至少两个可以具有不同的相应尺寸和/或形状。
在一些实施例中,图像显示设备101的用户50可进入环境中的与不同单元300对应的不同位置,且可以使用图像显示设备101的相机扫描对应单元中的空间以获得环境的相应单元的不同地图。地图可被存储在图像显示设备101的非暂时性介质中,以允许图像显示设备101的处理单元130执行用户50的定位。
在使用地图来定位用户50期间,图像显示设备101的相机基于用户50的特定位置和取向来获得环境的图像。这样的相机图像用作跟踪图像(跟踪地图),用于允许图像显示设备101的处理单元130跟踪用户50的位置。具体地,图像显示设备101的处理单元130处理来自相机的图像以确定图像中的特征是否与地图220中的某些特征相匹配。如果发现匹配,则处理单元130可以基于所匹配的特征来确定用户50的位置和取向。在一些实施例中,地图220可以包含比由图像显示设备101的相机提供的跟踪图像更少的信息(例如,特征)。这是有利的,因为它允许处理单元130有效地将跟踪图像与地图220相匹配。另外,在一些实施例中,地图220可以被称为“标准(canonical)地图”。当执行定位时,处理单元130对来自相机图像(跟踪图像)的额外特征执行特征提取,并且将特征与标准地图中的特征相匹配。在一个实施方式中,处理单元130被配置为找到在跟踪图像与标准地图之间的六自由度变换,以定位用户50。一旦用户50可以使用地图来相对于他/她的环境成功定位,处理单元130然后可以允许用户使用地图来相对于环境放置虚拟内容、从先前的会话取得虚拟内容、与其他用户共享虚拟内容等。
在使用图像显示设备101期间,处理单元130可能需要在由图像显示设备101的相机系统提供的图像中执行转角检测。例如,在一些实施例中,当使用相机图像来确定地图220时,处理单元130可能需要在这些图像中检测转角。处理单元130可以利用所检测到的转角作为构造地图220的特征。此外,当使用地图220执行定位时,处理单元130可能需要将实时输入图像中的特征与地图220的特征进行匹配。因此,处理单元130可以被配置为在实时输入图像中检测转角。在转角通常可从不同观看方向检测到的意义上,转角通常是更稳定的特征。因此,图像中的转角的可检测性可能不会显著地受观看点的改变而被影响。因此,转角是用于在输入图像与地图220之间的匹配的良好特征。转角也是用于在不同时间和不同观看方向上生成的图像之间的立体匹配中使用的良好特征。
转角检测
图8示出了处理单元130,具体示出了用于实现转角检测的组件。如图所示,处理单元130包括硬件410和软件420。处理单元130还包括伽马校正器412、图像调整器414、转角检测器416、非极大值抑制器422、空间分箱模块424和转角位置确定器426。在所示实施例中,使用处理单元130的硬件410来实现伽马校正器412、图像调整器414和转角检测器416。此外,在所示实施例中,使用处理单元130的软件420来实现非极大值抑制器422、空间分箱模块424和转角位置确定器426。
在其他实施例中,可使用处理单元130的软件420来实现伽马校正器412、图像调整器414、转角检测器416或前述的任何组合。此外,在其他实施例中,可使用处理单元130的硬件410来实现非极大值抑制器422、空间分箱模块424、转角位置确定器426或前述的任何组合。
伽马校正器412被配置为调整像素值与亮度之间的非线性关系。例如,在一些实施例中,伽马校正器412可被配置为调整像素值与亮度之间的关系,使得该关系与原始未经处理的图像中的关系相比是线性的或更线性的。
图像调整器414被配置为获得图像,并且缩小图像的分辨率以提供经调整的图像。在一些实施例中,图像调整器414被配置为获得具有第一分辨率的第一图像,且缩小第一图像以获得具有小于第一分辨率的第二分辨率的第二图像。例如,在一些情况下,第一图像可以具有VGA分辨率,第二图像可以具有QVGA分辨率。在这种情况下,第二图像具有多个像素,该多个像素为用于第一图像的像素的四分之一。在其他示例中,第二图像可具有多个像素,该多个像素为用于第一图像的像素的其他分数的像素。
转角检测器416被配置为基于一个或多个准则来在图像中检测转角。在一些实施例中,转角检测器426被配置为使用Harris转角检测技术来在图像中检测转角。Harris转角检测通过计算每个像素的梯度来实现。如果绝对梯度值在两个方向(例如,正交方向)上都为大(例如,高于某个阈值),则转角检测器416可以将像素确定为转角。在Harris转角检测技术的一个实现方式中,采用以下算法来计算针对图像中的每个像素的分数:(1)计算图像的x和y导数
其中Gx和Gy是一阶方向差。在一些情况下,可以通过在方向x、y上卷积灰度值和差分算子来计算Gx和Gy。
(2)计算每个像素处的导数的乘积
Ix2=Ix.Ix Iy2=Iy.Iy Ixy=Ix.Iy
(3)计算每个像素处的导数的乘积的和
Sx2=Gσ′*Ix2 Sy2=Gσ′*Iy2 Sxy=Gσ′*Ixy
(4)在每个像素(x,y)处定义矩阵
替代地,矩阵H可表示为:
其中(Ix,Iy)是在(x,y)处的梯度。
(5)计算针对每个像素的分数(Harris响应)
R=Det(H)–k(Trace(H))^2
其中Det(H)=λ1λ2,Trace(H)=λ1+λ2,λ1和λ2是H的本征值。
在一些实施例中,Harris响应R和/或本征值λ1、λ2可以由转角检测器416在用于转角检测的一个或多个准则中使用。图9A示出了根据Harris评分函数使用响应R和/或本征值的对图像点的分类。图9B示出了根据Shi-Tomasi准则使用本征值的对图像点的分类。例如,如图9A-9B所示,如果特征值λ1、λ2都为小,则像素可以是平坦区域的一部分。因此,转角检测器416可被配置为至少部分地基于min(λ1,λ2)>阈值的准则来检测转角。作为另一示例,如图9A到9B中所示,如果较大本征值λ2比较小本征值λ1大一个阈值,则像素可以是具有线性配置(例如,线、边缘等)的对象的一部分。因此,转角检测器416可被配置为至少部分地基于λ2/λ1<阈值的准则来检测转角。在一些实施例中,转角检测器416可被配置为基于两个准则来检测转角:
(1)min(λ1,λ2)>阈值T1
(2)λ2/λ1<阈值T2
在一些实施例中,阈值T1可以被设置为300。在其他实施例中,阈值T1可以具有不同于300的其他值。在一些实施例中,阈值T2可以被设置为5。在其他实施例中,阈值T2可以具有不同于5的其他值。
在其他实施例中,上述两个准则可以以Det(H)和Trace(H)来表示,如下:
Trace(H)>2T1和Det(H)–T1*Trace(H)+T1^2>0
Det(H)–T2/((1+T2)^2)*Trace(H)^2>0
在这种情况下,转角检测器416可以被配置为使用不同的k(k1,k2)的两个Harris响应来计算Det和Trace,如下:
(1)基于k1>0的Harris响应,其中当T2=5时,k1=T2/((1+T2)^2)=0.139
(2)Trace^2=(基于k2的Harris响应-基于k1的Harris响应)/(k1-k2)>4T1^2
在一些实施例中,可以以简化计算的方式来选择k2。例如,上述等式(2)可以重写为:
(2)(基于k2的Harris响应-基于k1的Harris响应)>(4T1^2)*(k1-k2)
在这种情况下,可以选择k2,使得右侧上的项((4T1^2)*(k1-k2))变为1,并且可以基于左侧的表达式大于1来简化评估。在一些实施例中,可以基于以下公式来计算k2:
K2=(k1–1/16)/16
因此,如果k1被设置为0.139,则k2然后基于上述等式等于0.00478125。
应注意,k1和k2不限于具有上述值,并且在其他实施例中可以具有其他值。例如,在其他实施例中,k1可以具有从0.1到0.2的任何值的值。此外,例如,在其他实施例中,k2可以具有小于0.001的值。
此外,应注意,如本说明书中所使用,术语“转角”不限于两条直线之间的相交点,且还可以指沿着连接两条线(例如,直线)的曲线的线的任何点,其中曲线线可具有曲率半径(使得曲率半径越小,而“转角”越尖锐)。
在一些实施例中,转角检测器416可被配置为一次或多次将Harris转角检测应用于第一图像以基于一个或多个准则来在第一图像中检测转角集合。转角检测器416还可被配置为一次或多次将Harris转角检测应用于第二图像以基于一个或多个准则来在第二图像中检测转角集合。可以选择一个或多个准则,使得仅检测到具有某些期望特征的转角。
此外,应注意,转角检测器416不限于基于以上公式和值的示例来检测转角,且转角检测器416可被配置为基于可以作为以上公式的导出、变化和/或修改的其他公式来检测转角。另外,在其他实施例中,转角检测器416可被配置为基于与Harris转角检测技术不同的其他转角检测技术来检测转角。
非极大值抑制器422被配置为对所检测到的转角执行非极大值抑制,从而防止相同转角的重复检测。在一些情况下,由于图像的图像分辨率和/或实现转角检测的方式,可以多次检测到相同的转角。例如,当事实上三个检测到的转角全部用于图像中的相同转角时,转角检测器416可以在彼此接近的三个位置处三次检测到相同的转角。因此,如本说明书中所使用,术语“转角”可指一个转角或被多次检测到的转角的实例。在一些实施例中,非极大值抑制器422可以被配置为执行3×3非极大值抑制。在这种情况下,如果在3×3像素区域内检测到多个转角,则非极大值抑制器422将在该区域中选择多个检测到的转角中的一个转角作为检测到的转角。在一个实现方式中,非极大值抑制器422可以被配置为确定区域内的相应多个检测到的转角的转角分数,并且选择具有最高分数的转角作为该区域的检测到的转角。该分数可以指示所检测到的转角位于所检测到的位置处的概率或者所检测到的转角的位置的准确性。
空间分箱模块424被配置为选择针对给定图像的检测到的转角中的某些转角,使得图像的不同区域将具有检测到的转角的稍微均匀的分布。具体地,在非极大值抑制器422去除重复检测到的转角之后,对于给定图像可能仍然存在大量检测到的转角,和/或剩余的检测到的转角可以在图像的不同区域中具有不同的分布。空间分箱模块424被配置为选择检测到的转角子集,使得图像的不同区域将具有满足某些准则的特定最大数量的检测到的转角。例如,在一些实施例中,第二图像可以被划分成四个区域。四个区域可具有不同的相应数量的检测到的转角以及相应的分数,如下:
区域1:(C1,0.7),(C2,0.8)(C3,0.85)(C4,0.9)
区域2:(C5,0.6),(C6,0.65)
区域3:(C7,0.66),(C8,0.82)
区域4:(C9,0.9),(C10,0.88),(C11,0.63)
在上述示例中,区域1具有3个检测到的转角C1-C4,区域2具有2个检测到的转角C5-C6,区域3具有2个检测到的转角C7-C8,以及区域4具有3个检测到的转角C9-C11。如果每个区域所期望的转角的最大数被选择为3,并且如果用于选择转角的准则是转角必须具有0.7或更高的分数,则空间分箱模块424可以选择用于不同相应区域1-4的以下转角:
区域1:C2、C3、C4(注意,转角C1在区域1中具有最低分数,并且因此选择区域1中具有最高分数的三个转角;空间分箱模块424不能选择所有4个转角C1-C4,因为在示例中转角的最大数目为3)。
区域2:没有选择转角(因为转角C5和C6都具有不满足最小分数准则的分数)。
区域3:仅选择转角C8(因为转角C7具有不满足最小分数准则的分数)。
区域4:仅选择转角C9和C10(因为转角C11具有不满足最小分数准则的分数)。
转角位置确定器426被配置为确定相应的检测到的转角的最终位置。因为转角检测器416基于具有降低分辨率的图像来检测转角,所以可能期望基于较高分辨率的图像来细化这些检测到的转角的位置。如所讨论的,在一些实施例中,图像调整器414被配置为将具有第一分辨率的第一图像转换为具有第二分辨率的第二图像。此外,如所讨论的,在一些实施例中,用于检测转角的第二图像的第二分辨率是第一图像的第一分辨率的四分之一。在该示例之后,对于已经被识别为检测到的转角的位置的第二图像中的每个像素,在第一图像中存在与检测到的转角相对应的四个对应的像素。因此,转角位置确定器426可被配置为选择第一图像中的四个像素中的一个像素(其对应于第二图像中的检测到的转角的像素)作为检测到的转角。
在一个实现方式中,转角位置确定器426被配置为基于在第一图像中检测到的一个或多个转角来选择(来自第一图像中的四个像素)一个像素。例如,转角检测器416可检测第一图像中存在与第二图像中的转角的坐标(xr,yr)紧密接近的两个转角。例如,第一图像中的两个转角的坐标可以由转角位置确定器426确定为(x1,y1)、(x2,y2)。接着,转角位置确定器426然后计算第一图像中的转角的相应像素坐标与第二图像中的转角的像素坐标之间的距离,如下:
D1=((x1-xr)^2+(y1-yr)^2)^1/2
D2=((x2-xr)^2+(y2-yr)^2)^1/2
转角位置确定器426然后选择第一图像中的具有最低对应距离D(即,min(D1,D2))的像素的坐标来作为检测到的转角的位置。
在其他实施例中,转角位置确定器426可使用其他技术来细化检测到的转角(从第二图像检测到的)的位置。例如,在其他实施例中,可将由空间分箱模块424输出的转角集合的位置(其被非极大值抑制器422和空间分箱模块424选择作为第二图像中的检测到的转角子集)输入到转角检测器416。然后,转角检测器416执行转角检测算法以在第一图像中检测与来自第二图像的转角集合的位置相对应的离散位置处的转角。在一个实现方式中,转角检测器416可执行Harris转角检测算法以在第一图像中检测与第二图像中的那些检测到的转角的位置对应的位置处的转角集合。该技术是有利的,因为Harris转角检测不需要在整个第一图像上执行,而是仅在第一图像的离散部分上执行,从而节省时间和计算资源。
在一些实施例中,伽马校正器412、图像调整器414和转角检测器416可以使用被专门设计成执行这些组件的功能的专用硬件来实现。通过非限制性示例,硬件可以包括一个或多个FPGA处理器、一个或多个ASIC处理器、一个或多个信号处理器、一个或多个数学处理器、被专门设计成执行矩阵操作的一个或多个处理器或前述的任何组合。此外,在一些实施例中,处理单元130可以被实现为被通信地耦合在一起的单独组件。例如,处理单元130可具有承载伽马校正器412和图像调整器414的第一基板和承载转角检测器416的另一基板。作为另一示例,处理单元130可具有用于执行软件420的处理器,其中该处理器可在支撑转角检测器416的同一基板上、或在与用于转角检测器416的基板不同的基板上实现。在另外的实施例中,可存在分别承载伽马校正器412、图像调整器414、转角检测器416和运行软件420的处理器的单独基板。另外,在一些实施例中,处理单元130的任何、一些或全部组件可以在头戴式框架结构102处实现。在其他实施例中,处理单元130的任何、一些或全部组件可以在远离头戴式框架结构102的设备处实现,诸如在带夹模块、颈戴式模块、蜂窝电话等处。
图10示出了图8的处理单元130的各种组件之间的信号流的示例。将参考图11中所展示的图形示例来描述信号流。如图10所示,处理单元130从图像显示设备101的相机系统接收图像。图像可以是实时图像或者具有时间滞后的图像。在其他实施例中,可以从存储图像的非暂时性介质接收图像。非暂时性介质可以是图像显示设备101的一部分或者是外部设备,诸如另一图像显示设备、服务器、蜂窝电话、介质设备等。图像最初由处理单元130的硬件410处理。具体地,处理单元130的伽马校正器412调整图像中的像素的像素值与亮度之间的非线性关系。例如,伽马校正器412可以调整像素值与亮度之间的关系,使得该关系与原始未被处理的图像中的关系相比是线性的或更线性的。在针对伽马校正来调整图像之后,伽马校正器然后将图像502传递到图像调整器414。
图像调整器414被配置为获得具有第一分辨率的图像(第一图像)502,并且调整图像502以获得具有低于第一分辨率的第二分辨率的第二图像504。例如,在一些实施例中,第一图像502可以具有VGA分辨率,以及第二图像504可以具有QVGA分辨率。在这种情况下,第二图像504具有第一图像502中的像素数量的四分之一。在其他实施例中,第一图像502可以具有不同于VGA分辨率的分辨率,以及第二图像504可以具有与QVGA分辨率不同的分辨率。在获得第二图像504之后,图像调整器414然后将第二图像504传递到转角检测器416。如图11的示例中所示,第二图像504包括对象600和一些转角(例如,转角602)的图像。
转角检测器416基于一个或多个准则来在第二图像504中检测转角。在一些实施例中,转角检测器416基于一个或多个准则一次或多次执行Harris转角检测算法以在第二图像504中检测转角集合610。在其他实施例中,转角检测器416可以使用其他技术和算法来执行转角检测。可以选择准则,使得仅检测到满足特定期望特征的转角。如图11所示,所检测到转角集合包括检测到的转角610a-610g。在转角检测器416在第二图像504中检测到转角610a-610g之后,转角检测器416然后将转角检测结果506传递到非极大值抑制器422。转角检测结果506可以包括检测到的转角集合610a-610g的标识符及其相应的坐标。在一些实施例中,转角检测结果506还可以可选地包括针对相应的检测到的转角610a-610g的分数。该分数可以指示检测到的转角的质量、检测到的转角的置信水平、检测到的转角的准确性等。
如图11的示例中所示,转角检测器416在第二图像504中检测转角集合610a-610g。然而,检测到的转角610中的一些可以是第二图像504中的针对相同转角(例如,转角306)的检测的不同实例。例如,转角检测器416可以检测彼此靠近的两个转角610a、610b,而实际上它们在第二图像504中是相同转角602。类似地,转角检测器416可以检测彼此靠近的两个转角610d、610e,而实际上它们在第二图像504中是相同转角。因此,非极大值抑制器422被用于对检测到的转角610执行非极大值抑制,从而防止对相同转角的重复检测。在一些实施例中,非极大值抑制器422利用3×3窗口来确保在3×3像素的网格内没有重复检测到的转角。在其他实施例中,非极大值抑制器422可以利用其他窗口大小来执行非极大值抑制。在非极大值抑制器422去除重复检测到的转角之后,非极大值抑制器422然后将结果508传递到空间分箱模块4246。在一些实施例中,结果508是由转角检测器416输出的结果506的子集。如图11的示例中所示,来自非极大值抑制器422的结果508包括转角610b、610c和610e-610g的标识符,而转角610a和610d被排除作为重复检测到的转角。结果508可以包括由转角检测器416检测到的转角集合的子集的标识符以及它们相应的坐标。来自非极大值抑制器422的结果508还可以可选地包括相应检测到的转角的分数。该分数可以指示检测到的转角的质量、检测到的转角的置信水平、检测到的转角的准确性等。
空间分箱模块424选择图像504的转角中的某些转角,使得图像504的不同区域将具有检测到的转角的稍微均匀的分布。在图11的上述示例之后,空间分箱模块424从非极大值抑制器422b接收五个被识别的转角610b、610c和610e-610g。空间分箱模块424然后将图像504划分成规定数量的区域。在所示示例中,空间分箱模块424将图像504划分成四个区域620a-620d。第一区域620a具有两个检测到的转角610b、610c,第二区域620b具有零个检测到的转角,第三区域620c具有三个检测到的转角610e-610g,以及第四区域620d具有零个检测到的转角。在所示示例中,空间分箱模块424被配置为选择转角子集(由非极大值抑制器422确定),以便改进检测到的转角的分布。例如,空间分箱模块424可以被配置为基于每个区域所期望的转角的最大数量和/或每个转角的最小所需分数来选择转角子集。如果在该示例中期望的转角的最大数量是2,并且如果每个转角的最小所需分数被设置为0.7,则空间分箱模块424可以基于这些准则来消除或排除检测到的转角中的一个(一些)。在所示示例中,假设第一区域620a中检测到的转角610b、610c都具有高于0.7的分数,则空间分箱模块424将在其输出中选择这些转角610b、610c的两者。在第二区域620b中,没有检测到的转角,并且因此第二区域620b的转角的数量在空间分箱模块4246的输出中为零。在第三区域620c中,假设转角610g具有低于0.7的分数,并且转角601e、610f具有高于0.7的分数,则空间分箱模块424相应地选择转角610e、610f以包括在其输出中。基于前述内容,空间分箱模块424提供转角子集(如图11中的所选转角周围的圆圈所表示的)作为其输出510。在一些实施例中,空间分箱模块424的输出510可以包括转角子集的标识符和子集中的相应转角的位置。空间分箱模块424的输出510还可以可选地包括相应转角的分数,如类似讨论的。因此,如从所说明的示例可见,空间分箱模块424是有利的,因为其确保检测到的转角不集中在图像的某部分中,且防止针对图像的某一部分的过多的检测到的转角。
如示例中所示,转角检测器416对转角的检测、非极大值抑制器422的非极大值抑制以及空间分箱模块424的空间分箱都是基于具有降低的分辨率的第二图像504来执行的。因此,可能期望基于第一图像502的分辨率来细化检测到的转角的位置,以便使得由空间分箱模块424输出的结果510中的检测到的转角的位置的更准确。如图10所示,转角位置确定器426被配置为基于由转角检测器416提供的输出522来细化转角(由空间分箱模块424选择的)的位置。具体地,如图所示,具有第一分辨率的第一图像502也由转角检测器416处理以获得转角集合。在一些实施例中,第一图像502可以由转角检测器416基于Harris转角检测技术来处理。例如,转角检测器416的用来在第二图像504中检测转角的一个或多个参数可以由转角检测器416使用以便在第一图像502中检测转角。在一个实现方式中,转角检测器416使用常数k3来在第一图像502中检测转角,其中k3可以等于k1、或者可以具有其他值。在其他实施例中,转角检测器416可以使用不同的参数和/或准则来在第一图像502中检测转角。在另外的实施例中,转角检测器416可以使用不同的转角检测技术来在第一图像502中检测转角。转角位置确定器426被配置为基于第一图像502中的检测到的转角来细化集合(结果510)中的检测到的转角的位置,以便确定用于输出5302的检测到的转角的最终位置。在一些实施例中,转角位置确定器426被配置为确定基于第一图像502检测到的哪一个转角(在输出522中)与由空间分箱模块424输出的集合中的转角中的每一者具有最佳空间对应性(即,在输出510中)。例如,为了改善检测到的转角610b的位置,如果输出510中的转角610b(基于第二图像504)具有位置(x=83,y=97),并且如果输出522中的转角(基于第一图像502)具有最接近转角610b的位置的位置(x=84,y=95),则转角位置确定器426将使用位置(x=84,y=95)作为检测到的转角610b的最终位置。在一些实施例中,转角位置确定器426可被配置为仅检查第一图像502的离散区域630内的转角以识别与输出510中的转角对应的转角。如图11所示,区域630可以是围绕输出510中的检测到的转角的位置的小窗口630。在所示示例中,在窗口630中存在两个转角632a、632b,其是在第一图像502b中检测到的。转角位置确定器426确定这两个转角632a、632b中的哪一个相对于输出510中的转角610b在位置上最接近。在一个实现方式中,转角位置确定器426可以被配置为确定窗口630中的转角632a、632b的位置与转角610b的位置之间的相应距离,并且选择提供距转角610b的位置最短距离的转角632的转角位置。对输出510中的转角610中的其他转角重复上述处理,以便获得用于输出510中的转角610的细化位置集合。如图11的示例中所示,来自转角位置确定器426的输出530包括来自空间分箱模块424的检测到的转角集合,但是具有针对转角(610b’、610c’、610e’和610f’)的改进位置。
如示例中所示,转角检测器416对转角的检测、非极大值抑制器422的非极大值抑制以及空间分箱模块424的空间分箱都是基于具有降低的分辨率的第二图像504来执行的。该技术是有利的,因为它允许在没有显著计算资源的情况下非常快速地执行这些操作。在第一图像502具有VGA分辨率并且第二图像504具有QVGA分辨率的示例中,在由转角检测器416、非极大值抑制器422和空间分箱模块424处理的所有三个阶段中,处理单元130需要使用第二图像504处理仅像素的四分之一(与使用第一图像502的场景相比)。在一些实施例中,这样的技术允许从图像非常快速地提取转角特征。例如,使用上述技术,可以在少于10ms,更优选地少于6ms(诸如5ms或更少)内从图像获得转角集合(在经过非极大值抑制和空间分箱之后)。这是有利的,因为其允许输入相机图像的实时处理。
上述技术也是有利的,因为尽管可以更快地执行转角检测(与处理具有原始分辨率的整个图像以检测转角的技术相比),但是转角检测也与处理具有原始分辨率的整个图像的技术一样准确。这是因为仅利用第一图像的子集(具有较高分辨率)来确认使用具有降低的分辨率的第二图像检测的转角的位置。因此,所得到的检测到的转角具有与处理整个第一图像以检测转角的技术相同的准确度。
在其他实施例中,转角位置确定器426可使用其他技术来细化检测到的转角的位置(从第二图像检测到的)。例如,如图12中所示,在其他实施例中,空间分箱模块424的输出510(例如,由非极大值抑制器422和空间分箱模块424选择作为第二图像中的检测到的转角子集的转角集合的位置)可以被输入到转角检测器416。转角检测器416然后执行转角检测算法以在第一图像中检测与来自第二图像的转角集合的位置相对应的离散位置处的转角。在一个实现方式中,转角检测器416可执行Harris转角检测算法以在第一图像502中检测位置与第二图像504中的那些检测到的转角的位置对应的转角集合。该技术是有利的,因为不需要对整个第一图像502执行Harris转角检测,但仅在第一图像502的离散部分上执行Harris转角检测,从而进一步节省时间和计算资源。在这种情况下,转角检测器416可以提供输出530,该输出530包括具有细化位置的转角集合,以用作图像的特征/地图点。
在一些实施例中,转角的检测可由处理单元130执行以处理来自图像显示设备1011的相机系统的实时输入图像。例如,输入图像可以由相机系统提供,并且处理单元130从输入图像确定转角集合。转角集合可以被用作输入图像的特征的集合,用于与具有定位地图的对应特征进行匹配,以便定位地图像显示设备1011的用户。
在其他实施例中,转角的检测可由处理单元130执行以处理来自图像显示设备101的相机系统的图像以便创建定位地图。例如,处理单元130可从图像显示设备101的相机系统获得图像序列,并且可从序列中的图像中的每个图像确定转角集合。当图像显示设备101的用户正在执行不同的头部姿势以使得图像对应于用户的不同观看方向时,可以由相机系统获得图像。处理单元130还可以执行立体匹配,其中,其将序列中的一个图像中的转角与序列中的另一图像中的转角相匹配,以便创建针对该转角的3D地图点。然后,该3D地图点被包括作为定位地图的一部分。
由处理单元和/或处理单元中的应用执行的方法
图13示出了根据一些实施例的方法1100。方法1000可以由被配置为由用户头戴的装置执行,该装置具有被配置为向用户呈现图形的屏幕、被配置为观看用户所处的环境的相机系统、以及处理单元。在一些实施例中,方法1100可由图1-4中所示的图像显示设备101中的任一者执行。例如,方法1100可以由图像显示设备101的处理单元130执行。方法1100包括:获得具有第一分辨率的第一图像,第一图像具有第一转角(项目1102)。方法1100还包括确定具有第二分辨率的第二图像,第二图像具有与第一图像中的第一转角相对应的第二转角,其中第二图像是基于第一图像的,第二分辨率小于第一分辨率(项目1104)。方法1100还包括在第二图像中检测第二转角(项目1106),并且确定第二转角在第二图像中的位置(项目1108)。方法1100还包括至少部分地基于第二转角在第二图像中的所确定的位置来确定第一转角在第一图像中的位置(项目1110))。
可选地,在方法1100中,第二转角是第二图像中被检测到的转角集合的一部分。
可选地,在方法1100中,基于Harris转角检测技术在第二图像中检测转角集合。
可选地,在方法1100中,基于一个或多个准则来在第二图像中检测转角集合。
可选地,在方法1100中,一个或多个准则包括用于排除第二图像中是平面的和/或具有不足纹理的一个或多个对象的第一准则。
可选地,在方法1100中,一个或多个准则包括用于排除第二图像中具有线性配置的一个或多个对象的第二准则。
可选地,方法1100进一步包括执行非极大值抑制以消除转角集合中被重复检测到的转角。
可选地,在方法1100中,非极大值抑制包括3×3非极大值抑制。
可选地,方法1100由包括硬件和软件的处理单元执行;其中,转角集合由处理单元中的硬件检测;以及其中,非极大值抑制由处理单元中的软件执行。
可选地,方法1100进一步包括执行空间分箱以从转角集合中选择转角子集。
可选地,方法1100进一步包括通过以下来执行空间分箱:将第二图像划分成具有第一图像部分的多个图像部分;确定转角集合中每个转角的分数;以及基于第一图像部分中转角的分数,并且基于针对第一图像部分的规定最大转角数,从第一图像部分中的转角中选择一个或多个转角。
可选地,方法1100由包括硬件和软件的处理单元执行;其中,转角集合由处理单元中的硬件检测;以及其中,空间分箱由处理单元中的软件执行。
可选地,在方法1100中,通过对第二图像应用Harris转角检测来在第二图像中检测第二转角。
可选地,该方法1100进一步包括通过对第一图像应用Harris转角检测来在第一图像中检测第一转角。
可选地,该方法1100进一步包括在第一图像中检测包括第一转角的转角集合。
可选地,该方法1100进一步包括至少部分地基于第二转角在第二图像中的位置来从第一图像中的转角集合中识别第一转角。
可选地,在方法1100中,第一图像中的转角集合由硬件检测,以及第一转角由软件从第一图像中的转角集合中识别。
可选地,在方法1100中,基于第一图像的第一分辨率与第二图像的第二分辨率之间的关系来确定第一转角的位置。
可选地,在方法1100中,第二转角的位置对应于第二图像中的像素位置(xr,yr);其中,第二图像中的像素位置(xr,yr)对应于第一图像中的多个像素位置;以及其中,通过选择第一图像中的多个像素位置中具有相对于第二图像中的像素位置(xr,yr)的最佳空间关系的像素位置来确定第一转角的位置。例如,最佳空间关系可以是第一图像中的像素位置与第二图像中的像素位置相同的空间关系。替代地,最佳空间关系可以是第一图像中的像素位置位于距第二图像中的像素位置规定的距离内(例如,在2mm、1mm、2个像素长度、1个像素长度等内)的空间关系。
可选地,在方法1100中,通过将第一图像转换为第二图像来确定第二图像。
可选地,在方法1100中,通过缩小第一图像的第一分辨率以获得具有第二分辨率的第二图像来将第一图像转换为第二图像。
可选地,在方法1100中,第二转角是在第二图像中检测到的转角集合的一部分,并且其中,由软件确定第一转角在第一图像中的位置。
可选地,方法1100由包括硬件的处理单元执行。
可选地,在方法1100中,由处理单元的硬件在第二图像中检测第二转角。
可选地,在方法1100中,处理单元的硬件被配置为执行Harris转角检测算法。
可选地,方法1100由包括转角检测器的处理单元执行,转角检测器被配置为基于第一准则来工作。
可选地,在方法1100中,第一准则排除第二图像中是平面的和/或具有不足纹理的对象。
可选地,在方法1100中,第一准则包括:λmin>阈值,其中λmin=min(λ2,λ1),并且其中λ1是第一特征值,λ2是大于第一特征值的第二特征值。
可选地,在方法1100中,转角检测器进一步被配置为基于第二准则来工作。
可选地,在方法1100中,第二准则排除第二图像中具有线性配置的对象。
可选地,在方法1100中,第二准则包括:λ2/λ1<阈值,其中λ1是第一特征值,λ2是大于第一特征值的第二特征值。
可选地,在方法1100中,基于第一常数k1来在第二图像中检测第二转角。
可选地,在方法1100中,k1=R/(1+R)^2,其中R是任何数。
可选地,在方法1100中,第一常数k1在0.1与0.2之间。
可选地,在方法1100中,第一常数k1是0.139。
可选地,在方法1100中,基于第二常数k2来在第二图像中检测第二转角。
可选地,在方法1100中,第二常数k2小于0.01。
可选地,在方法1100中,第二常数k2是0.00478125。
可选地,在方法1100中,第二常数k2是基于第一常数k1。
可选地,在方法1100中,k2=(k1-1/16)/16。
可选地,在方法1100中,基于Det(H)来在第二图像中检测第二转角,其中H是矩阵。
可选地,在方法1100中,基于trace(H)来在第二图像中检测第二转角,其中H是矩阵。
可选地,在方法1100中,通过基于第一常数和第二常数执行第一Harris转角检测来检测第二转角其中,第二常数与第一常数不同。
可选地,在方法1100中,第二常数是基于第一常数。
可选地,该方法1100进一步包括执行非极大值抑制。
可选地,该方法1100进一步包括执行空间分箱。
可选地,该方法1100由包括软件的处理单元执行。
可选地,该方法1100进一步包括由处理单元的软件执行非极大值抑制。
可选地,该方法1100进一步包括由处理单元的软件执行空间分箱。
可选地,在方法1100中,第一分辨率包括VGA分辨率。
可选地,在方法1100中,第二分辨率包括QVGA分辨率
可选地,该方法1100进一步包括将第一转角的位置存储在非暂时性介质中。
可选地,该方法1100进一步包括至少部分地基于第一转角的位置来创建地图。
可选地,在方法1100中,地图包括与第一转角的位置相关联的地图点。
可选地,该方法1100进一步包括基于所创建的地图来执行图像显示设备的用户的定位。
可选地,该方法1100进一步包括至少部分地基于第一转角在第一图像中的位置来执行第一图像与地图之间的匹配。
专用处理系统
在一些实施例中,本文描述的方法1100可以由执行应用的处理单元130或由应用来执行。应用可以包含一组指令。在一个实现方式中,可以提供具有存储用于应用的指令组的非暂时性介质的专用处理系统。由图像显示设备101的处理单元130执行指令将致使处理单元130执行本文中所描述的特征。
在一些实施例中,图像显示设备101还可以被认为是专用处理系统。具体地,图像显示设备101是专用处理系统,因为它包含被存储在其非暂时性介质中的指令,该指令用于由处理单元130执行以在真实世界中提供独特的有形效果。由图像显示设备101提供的特征(作为处理单元130执行指令的结果)提供转角检测、定位地图创建和基于图像的定位的技术领域的改进。
图14是示出可用于实现本文描述的各种特征的专用处理系统1600的实施例的框图。例如,在一些实施例中,处理系统1600可用于实现图像显示设备1011。此外,在一些实施例中,处理系统1600可用于实现处理单元130或其中的一个或多个组件(例如,伽马校正器412、图像调整器414、转角检测器416等)。
处理系统1600包括用于通信信息的总线1602或其他通信机制以及与总线1602耦接以用于处理信息的处理器1604。处理器系统1600还包括耦接到总线1602以用于存储将由处理器1604执行的信息和指令的主存储器1606,诸如随机存取存储器(RAM)或其他动态储存设备。主存储器1606还可以用于在要由处理器1604执行的指令被执行的期间存储暂时变量或其他中间信息。处理器系统1600还包括耦接到总线1602以用于存储用于处理器1604的静态信息和指令的只读存储器(ROM)1608或其他静态储存设备。数据储存设备1610,诸如磁盘、固态盘或光盘,被提供并耦接到总线1602,以用于存储信息和指令。
处理器系统1600可以经由总线1602耦接到显示器1612,诸如屏幕,用于向用户显示信息。在一些情况下,如果处理系统1600是包括触摸屏的装置的一部分,则显示器1612可以是触摸屏。包括字母数字和其他键的输入设备1614耦接到总线1602,用于向处理器1604通信信息和命令选择。另一类型的用户输入设备是光标控制1616,诸如鼠标、轨迹球或光标方向键,用于向处理器1604通信方向信息和命令选择以及用于控制显示器1612上的光标移动。该输入设备通常具有两个轴上的两个自由度,第一轴(例如,x)和第二轴(例如,y),其允许设备指定平面中的位置。在一些情况下,如果处理系统1600是包括触摸屏的装置的一部分,则输入设备1614和光标控制可以是触摸屏。
在一些实施例中,处理器系统1600可用于执行本文中所描述的各种功能。根据一些实施例,这样的使用由处理器系统1600响应于处理器1604执行被包含在主存储器1606中的一个或多个指令的一个或多个序列来提供。本领域技术人员将知道如何基于本文描述的功能和方法来准备这样的指令。这样的指令可从另一处理器可读介质(例如,储存设备1610)读取到主存储器1606中。被包含在主存储器1606中的指令序列的执行致使处理器1604执行本文所述的过程步骤。还可以采用多处理布置中的一个或多个处理器来执行被包含在主存储器1606中的指令序列。在替代实施例中,可以使用硬连线电路代替软件指令或与软件指令组合来实现本文所述的各种实施例。因此,实施例不限于硬件电路和软件的任何特定组合
本文所使用的术语“处理器可读介质”是指参与向处理器1604提供指令以供执行的任何介质。这样的介质可以采取许多形式,包括但不限于非易失性介质、易失性介质和传输介质。非易失性介质包括例如光盘、固态盘或磁盘,诸如储存设备1610。非易失性介质可以被认为是非暂时性介质的示例。易失性介质包括动态存储器,诸如主存储器1606。易失性介质可以被认为是非暂时性介质的示例。传输介质包括同轴电缆、铜布线和光纤,包括包含总线1602的布线。传输介质还可以采取声波或光波的形式,诸如在无线电波和红外数据通信期间生成的那些。
处理器可读介质的常见形式包括,例如,柔性盘、硬盘、磁带或任何其他磁介质、CD-ROM、任何其他光学介质、具有孔图案的任何其他物理介质、RAM、PROM和EPROM、FLASH-EPROM、固态盘或任何其他存储器芯片或盒、如下文所述的载波、或处理器可从其读取的任何其他介质。
各种形式的处理器可读介质可以涉及将一个或多个指令的一个或多个序列携带到处理器1604以供执行。例如,指令最初可以被携带在远程计算机的磁盘或固态盘上。远程计算机可以将指令加载到其动态存储器中并且通过网络(诸如因特网)发送指令。处理系统1600可以在网络线路上接收数据。总线1602将数据携带到主存储器1606,处理器1604从主存储器1606取得并执行指令。由主存储器1606接收的指令可以可选地在由处理器1604执行之前或之后存储在储存设备1610上。
处理系统1600还包括耦接到总线1602的通信接口1618。通信接口1618提供耦接到网络链接1620的双向数据通信,该网络链接1620被连接到本地网络1622。例如,通信接口1618可以是给兼容的局域网(LAN)提供数据通信连接的局域网(LAN)卡。无线连接也可以实现。在任何这样的实现方式中,通信接口1618发送和接收携带表示各种类型的信息的数据流的电、电磁或光信号。
网络链接1620通常通过一个或多个网络向其他设备提供数据通信。例如,网络链接1620可以提供通过本地网络1622到主机计算机1624或设备1626的连接。通过网络链接1620传输的数据流可以包括电、电磁或光信号。通过各种网络的信号和网络链接1620上的信号以及通过通信接口1618(其携带去往和来自处理系统1600的数据)的信号是传输信息的载波的示例性形式。处理系统1600可以通过网络、网络链接1620和通信接口1618发送消息和接收包括程序代码的数据。
应注意,如本说明书中所使用的,术语“图像”可指所显示的图像和/或未以所显示的形式的图像(例如,被存储在介质中或正被处理的图像)。
以上已经阐述了本公开的示例性方面以及关于材料选择和制造的细节。有关本公开的其他细节,可以结合上述专利和公开以及本领域技术人员通常公知或理解的方式理解这些细节。就通常或逻辑上采用的附加动作而言,对于本公开基于方法的方面也是如此。
另外,尽管已经参考任选地结合各种特征的若干示例描述了本公开,但是本公开不限于关于本公开的每个变型所描述或指示的那些内容。可以在不脱离本公开的精神和范围的情况下,对所描述的本公开进行各种改变,并且可以替换等同物(无论是在本文中引用还是为了简洁起见而未包括)。另外,在提供一系列值的情况下,应理解的是,该范围的上限和下限之间的每个中间值,以及所述范围内的任何其他所述值或中间值都包含在本公开内。
而且,可以构想,所描述的公开变型的任何可选特征可以独立地,或者与本文描述的任何一个或多个特征组合地进行阐述或被要求保护。对单数项的引用包括存在多个相同项的可能性。更具体地说,如本文和与此相关联的权利要求中所使用的,单数形式“一”、“一个”、“所述”和“该”包括复数个指示物,除非另有具体说明。还应注意,可以起草任何权利要求以排除任何可选元素。因此,本声明旨在作为结合权利要求元素的叙述使用诸如“单独”、“仅”之类的排他性术语或使用“否定”限制的先行基础。
此外,如本文所使用的,涉及项目列表的“至少一个”的短语指这些项目的任何组合,包括单个成员。作为示例,“A、B或C中的至少一个”旨在覆盖:A、B、C、A和B、A和C、B和C以及A、B和C。诸如短语“X、Y以及Z中的至少一个”的连接语(除非另有声明)以通常使用的上下文来理解,以表达项目、术语等可以是X、Y或Z中的至少一个。因此,这样的连接语一般并不旨在暗示某些实施例要求X中的至少一个、Y中的至少一个以及Z中的至少一个中的每个都存在。
本公开的广度不限于所提供的示例和/或主题说明书,而是仅由与本公开相关联的权利要求语言的范围限制。
在前述说明书中,已经参考本公开的具体实施例对其进行了描述。然而,显而易见的是,在不脱离本公开的更广泛的精神和范围的情况下,可以对其进行各种修改和改变。例如,参考过程动作的特定顺序来描述上述过程流程。然而,可以改变许多所描述的过程动作的顺序而不影响本公开的范围或操作。因此,说明书和附图应被视为说明性的而非限制性的。
Claims (45)
1.一种被配置为由用户头戴的装置,包括:
屏幕,其被配置为向所述用户呈现图形;
相机系统,其被配置为观看所述用户所处的环境;以及
处理单元,其被耦合到所述相机系统,所述处理单元被配置为:
获得具有第一分辨率的第一图像,所述第一图像具有第一转角,
确定具有第二分辨率的第二图像,所述第二图像具有与所述第一图像中的所述第一转角相对应的第二转角,其中所述第二图像是基于所述第一图像的,所述第二分辨率小于所述第一分辨率,
在所述第二图像中检测所述第二转角,
确定所述第二转角在所述第二图像中的位置,以及
至少部分地基于所确定的所述第二转角在所述第二图像中的位置来确定所述第一转角在所述第一图像中的位置。
2.根据权利要求1所述的装置,其中,所述处理单元被配置为在所述第二图像中检测转角集合,所述转角集合具有所述第二转角。
3.根据权利要求2所述的装置,其中,所述处理单元被配置为基于一个或多个准则来在所述第二图像中检测所述转角集合;以及
其中,所述一个或多个准则包括用于排除所述第二图像中是平面的和/或具有不足纹理的一个或多个对象的第一准则、用于排除所述第二图像中具有线性配置的一个或多个对象的第二准则、或所述第一准则和所述第二准则两者。
4.根据权利要求2所述的装置,其中,所述处理单元还被配置为执行非极大值抑制以消除所述转角集合中被重复检测到的转角。
5.根据权利要求4所述的装置,其中,所述处理单元包括硬件和软件;
其中,所述处理单元的所述硬件被配置为检测所述转角集合;以及
其中,所述处理单元的所述软件被配置为执行所述非极大值抑制。
6.根据权利要求2所述的装置,其中,所述处理单元被配置为执行空间分箱以从所述转角集合中选择转角子集。
7.根据权利要求2所述的装置,其中,所述处理单元被配置为通过以下来执行空间分箱:
将所述第二图像划分成具有第一图像部分的多个图像部分;
确定所述转角集合中每个所述转角的分数;以及
基于所述第一图像部分中所述转角的分数,并且基于针对所述第一图像部分的规定最大转角数,从所述第一图像部分中的所述转角中选择一个或多个转角。
8.根据权利要求6所述的装置,其中,所述处理单元包括硬件和软件;
其中,所述处理单元的所述硬件被配置为检测所述转角集合;以及
其中,所述处理单元的所述软件被配置为执行所述空间分箱。
9.根据权利要求1所述的装置,其中,所述处理单元被配置为在所述第一图像中检测包括所述第一转角的转角集合;以及
其中,所述处理单元还被配置为至少部分地基于所述第二转角在所述第二图像中的所述位置来从所述第一图像中的所述转角集合中检测所述第一转角。
10.根据权利要求9所述的装置,其中,所述处理单元包括被配置为在所述第一图像中检测所述转角集合的硬件、以及被配置为从所述第一图像中的所述转角集合中检测所述第一转角的软件。
11.根据权利要求1所述的装置,其中,所述处理单元被配置为基于所述第一图像的所述第一分辨率与所述第二图像的所述第二分辨率之间的关系来确定所述第一转角的位置。
12.根据权利要求1所述的装置,其中,所述第二转角的位置对应于所述第二图像中的像素位置(xr,yr);
其中,所述第二图像中的所述像素位置(xr,yr)对应于所述第一图像中的多个像素位置;以及
其中,所述处理单元被配置为通过选择所述第一图像中所述多个像素位置中的具有相对于所述第二图像中的所述像素位置(xr,yr)的最佳空间关系的像素位置来确定所述第一转角的位置。
13.根据权利要求1所述的装置,其中,所述处理单元包括图像调整器,其被配置为通过将所述第一图像转换为所述第二图像来确定所述第二图像;以及
其中,所述图像调整器被配置为缩小所述第一图像的所述第一分辨率以获得具有所述第二分辨率的所述第二图像。
14.根据权利要求1所述的装置,其中,所述处理单元包括被配置为基于第一准则来工作的转角检测器;以及
其中,所述第一准则排除所述第二图像中是平面的和/或具有不足纹理的对象。
15.根据权利要求14所述的装置,其中,所述转角检测器进一步被配置为基于第二准则来工作;以及
其中,所述第二准则排除所述第二图像中具有线性配置的对象。
16.根据权利要求1所述的装置,其中,所述处理单元被配置为基于第一常数k1来在所述第二图像中检测所述第二转角。
17.根据权利要求16所述的装置,其中,k1=R/(1+R)^2,其中R是任何数。
18.根据权利要求16所述的装置,其中,所述处理单元被配置为基于第二常数k2来在所述第二图像中检测所述第二转角。
19.根据权利要求18所述的装置,其中,所述第二常数k2是基于所述第一常数k1。
20.根据权利要求19所述的装置,其中,k2=(k1-1/16)/16。
21.根据权利要求1所述的装置,其中,所述处理单元被配置为执行非极大值抑制或空间分箱中的至少一者。
22.根据权利要求21所述的装置,其中,所述处理单元包括被配置为执行非极大值抑制或空间分箱中的所述至少一者的软件。
23.根据权利要求1所述的装置,其中,所述处理单元被配置为至少部分地基于所述第一转角的位置来创建地图,并且基于所创建的地图来执行所述用户的定位。
24.一种由头戴式图像显示设备执行的方法,包括:
获得具有第一分辨率的第一图像,所述第一图像具有第一转角;
确定具有第二分辨率的第二图像,所述第二图像具有与所述第一图像中的所述第一转角相对应的第二转角,其中所述第二图像是基于所述第一图像的,所述第二分辨率小于所述第一分辨率;
在所述第二图像中检测所述第二转角;
确定所述第二转角在所述第二图像中的位置;以及
至少部分地基于所确定的所述第二转角在所述第二图像中的位置来确定所述第一转角在所述第一图像中的位置。
25.根据权利要求24所述的方法,其中,所述第二转角是所述第二图像中被检测到的转角集合的一部分。
26.根据权利要求25所述的方法,其中,基于一个或多个准则来检测所述第二图像中的所述转角集合;以及
其中,所述一个或多个准则包括用于排除所述第二图像中是平面的和/或具有不足纹理的一个或多个对象的第一准则、用于排除所述第二图像中具有线性配置的一个或多个对象的第二准则、或所述第一准则和所述第二准则两者。
27.根据权利要求25所述的方法,进一步包括:执行非极大值抑制以消除所述转角集合中被重复检测到的转角。
28.根据权利要求27所述的方法,其中,所述方法由包括硬件和软件的处理单元执行;
其中,所述转角集合由所述处理单元中的所述硬件检测;以及
其中,所述非极大值抑制由所述处理单元中的所述软件执行。
29.根据权利要求25所述的方法,进一步包括执行空间分箱以从所述转角集合中选择转角子集。
30.根据权利要求25所述的方法,进一步包括:通过以下来执行空间分箱:
将所述第二图像划分成具有第一图像部分的多个图像部分;
确定所述转角集合中每个所述转角的分数;以及
基于所述第一图像部分中所述转角的分数,并且基于针对所述第一图像部分的规定最大转角数,从所述第一图像部分中的所述转角中选择一个或多个转角。
31.根据权利要求29所述的方法,其中,所述方法由包括硬件和软件的处理单元执行;
其中,所述转角集合由所述处理单元中的所述硬件检测;以及
其中,所述空间分箱由所述处理单元中的所述软件执行。
32.根据权利要求24所述的方法,进一步包括:
在所述第一图像中检测包括所述第一转角的转角集合;以及
至少部分地基于所述第二转角在所述第二图像中的位置来从所述第一图像中的所述转角集合中识别所述第一转角。
33.根据权利要求32所述的方法,其中,所述第一图像中的所述转角集合由硬件检测,以及所述第一转角由软件从所述第一图像中的所述转角集合中识别。
34.根据权利要求24所述的方法,其中,基于所述第一图像的所述第一分辨率与所述第二图像的所述第二分辨率之间的关系来确定所述第一转角的位置。
35.根据权利要求24所述的方法,其中,所述第二转角的位置对应于所述第二图像中的像素位置(xr,yr);
其中,所述第二图像中的所述像素位置(xr,yr)对应于所述第一图像中的多个像素位置;以及
其中,通过选择所述第一图像中的所述多个像素位置中具有相对于所述第二图像中的所述像素位置(xr,yr)的最佳空间关系的像素位置来确定所述第一转角的位置。
36.根据权利要求24所述的方法,其中,通过将所述第一图像转换为所述第二图像来确定所述第二图像;以及
其中,通过缩小所述第一图像的所述第一分辨率以获得具有所述第二分辨率的所述第二图像来将所述第一图像转换为所述第二图像。
37.根据权利要求24所述的方法,其中,所述方法由包括转角检测器的处理单元执行,所述转角检测器被配置为基于第一准则来工作;以及
其中,所述第一准则排除所述第二图像中是平面的和/或具有不足纹理的对象。
38.根据权利要求37所述的方法,其中,所述转角检测器进一步被配置为基于第二准则来工作;以及
其中,所述第二准则排除所述第二图像中具有线性配置的对象。
39.根据权利要求24所述的方法,其中,基于第一常数k1来在所述第二图像中检测所述第二转角。
40.根据权利要求39所述的方法,其中,k1=R/(1+R)^2,其中R是任何数。
41.根据权利要求39所述的方法,其中,基于第二常数k2来在所述第二图像中检测所述第二转角。
42.根据权利要求42所述的方法,其中,所述第二常数k2是基于所述第一常数k1。
43.根据权利要求43所述的方法,其中,k2=(k1-1/16)/16。
44.根据权利要求24所述的方法,进一步包括:执行非极大值抑制或空间分箱中的至少一者。
45.根据权利要求24所述的方法,进一步包括:至少部分地基于所述第一转角的位置来创建地图。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201862702477P | 2018-07-24 | 2018-07-24 | |
US62/702,477 | 2018-07-24 | ||
PCT/US2019/043070 WO2020023531A1 (en) | 2018-07-24 | 2019-07-23 | Methods and apparatuses for corner detection |
Publications (1)
Publication Number | Publication Date |
---|---|
CN112470167A true CN112470167A (zh) | 2021-03-09 |
Family
ID=69177423
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201980048886.8A Pending CN112470167A (zh) | 2018-07-24 | 2019-07-23 | 用于转角检测的方法和装置 |
Country Status (5)
Country | Link |
---|---|
US (2) | US11430212B2 (zh) |
EP (1) | EP3827374A4 (zh) |
JP (2) | JP7459051B2 (zh) |
CN (1) | CN112470167A (zh) |
WO (1) | WO2020023531A1 (zh) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10755135B2 (en) * | 2018-09-23 | 2020-08-25 | Paulo Eduardo Xavier da Silveira | Computational imaging device and method for improved corner detection |
JP2023515796A (ja) * | 2020-02-20 | 2023-04-14 | マジック リープ, インコーポレイテッド | Wifi/gpsベースのマップマージを伴うクロスリアリティシステム |
US11551370B2 (en) | 2020-12-18 | 2023-01-10 | Nationwide Management Services, Inc. | Remote inspection and appraisal of buildings |
CN113192095B (zh) * | 2021-05-20 | 2022-09-23 | 郑州轻工业大学 | 一种基于平行四边形对角线的角点检测方法 |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20120154562A1 (en) * | 2009-08-28 | 2012-06-21 | Muenzenmayer Christian | Method and device for joining a plurality of individual digital images to form a total image |
US20130148897A1 (en) * | 2011-11-22 | 2013-06-13 | The Board Of Trustees Of The Leland Stanford Junior University | Method for image processing and an apparatus |
US8737737B1 (en) * | 2012-03-23 | 2014-05-27 | A9.Com, Inc. | Representing image patches for matching |
US20140193031A1 (en) * | 2012-03-22 | 2014-07-10 | Massachusetts Institute Of Technology | Compressive sensing with local geometric features |
CN104685513A (zh) * | 2012-08-23 | 2015-06-03 | 派力肯影像公司 | 根据使用阵列源捕捉的低分辨率图像的基于特征的高分辨率运动估计 |
US9305362B1 (en) * | 2014-02-28 | 2016-04-05 | Xilinx, Inc. | Image stabilization |
US20170206691A1 (en) * | 2014-03-14 | 2017-07-20 | Magic Leap, Inc. | Augmented reality systems and methods utilizing reflections |
US20180137651A1 (en) * | 2016-11-16 | 2018-05-17 | Seiko Epson Corporation | Hybrid corner and edge-based tracking |
Family Cites Families (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20040104935A1 (en) | 2001-01-26 | 2004-06-03 | Todd Williamson | Virtual reality immersion system |
JP4492036B2 (ja) * | 2003-04-28 | 2010-06-30 | ソニー株式会社 | 画像認識装置及び方法、並びにロボット装置 |
JP4380308B2 (ja) * | 2003-11-27 | 2009-12-09 | 日本電信電話株式会社 | 顔領域検出方法及び装置及びプログラム及び顔領域検出プログラムを格納したコンピュータ読み取り可能な記憶媒体 |
JP4955616B2 (ja) * | 2008-06-27 | 2012-06-20 | 富士フイルム株式会社 | 画像処理装置、画像処理方法及び画像処理プログラム |
US8666159B1 (en) * | 2012-06-04 | 2014-03-04 | Google Inc. | Real time feature extraction |
JP6091172B2 (ja) * | 2012-11-15 | 2017-03-08 | オリンパス株式会社 | 特徴点検出装置およびプログラム |
CN107315249B (zh) | 2013-11-27 | 2021-08-17 | 奇跃公司 | 虚拟和增强现实系统与方法 |
JP6532229B2 (ja) * | 2014-12-18 | 2019-06-19 | 株式会社デンソーテン | 物体検出装置、物体検出システム、物体検出方法及びプログラム |
US10043076B1 (en) * | 2016-08-29 | 2018-08-07 | PerceptIn, Inc. | Visual-inertial positional awareness for autonomous and non-autonomous tracking |
US10719712B2 (en) * | 2018-02-26 | 2020-07-21 | Canon Kabushiki Kaisha | Classify actions in video segments using play state information |
-
2019
- 2019-07-23 EP EP19840933.6A patent/EP3827374A4/en active Pending
- 2019-07-23 US US16/520,119 patent/US11430212B2/en active Active
- 2019-07-23 CN CN201980048886.8A patent/CN112470167A/zh active Pending
- 2019-07-23 JP JP2021503756A patent/JP7459051B2/ja active Active
- 2019-07-23 WO PCT/US2019/043070 patent/WO2020023531A1/en unknown
-
2022
- 2022-07-22 US US17/814,494 patent/US11605223B2/en active Active
-
2023
- 2023-12-21 JP JP2023215648A patent/JP2024019662A/ja active Pending
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20120154562A1 (en) * | 2009-08-28 | 2012-06-21 | Muenzenmayer Christian | Method and device for joining a plurality of individual digital images to form a total image |
US20130148897A1 (en) * | 2011-11-22 | 2013-06-13 | The Board Of Trustees Of The Leland Stanford Junior University | Method for image processing and an apparatus |
US20140193031A1 (en) * | 2012-03-22 | 2014-07-10 | Massachusetts Institute Of Technology | Compressive sensing with local geometric features |
US8737737B1 (en) * | 2012-03-23 | 2014-05-27 | A9.Com, Inc. | Representing image patches for matching |
CN104685513A (zh) * | 2012-08-23 | 2015-06-03 | 派力肯影像公司 | 根据使用阵列源捕捉的低分辨率图像的基于特征的高分辨率运动估计 |
US9305362B1 (en) * | 2014-02-28 | 2016-04-05 | Xilinx, Inc. | Image stabilization |
US20170206691A1 (en) * | 2014-03-14 | 2017-07-20 | Magic Leap, Inc. | Augmented reality systems and methods utilizing reflections |
US20180137651A1 (en) * | 2016-11-16 | 2018-05-17 | Seiko Epson Corporation | Hybrid corner and edge-based tracking |
Non-Patent Citations (1)
Title |
---|
CHRIS HARRIS 等: "A Combined Corner and Edge Detector", 《ALVEY VISION CONFERENCE》, pages 147 - 151 * |
Also Published As
Publication number | Publication date |
---|---|
JP2021530816A (ja) | 2021-11-11 |
EP3827374A4 (en) | 2021-09-15 |
US11430212B2 (en) | 2022-08-30 |
JP2024019662A (ja) | 2024-02-09 |
WO2020023531A1 (en) | 2020-01-30 |
EP3827374A1 (en) | 2021-06-02 |
US11605223B2 (en) | 2023-03-14 |
US20200034623A1 (en) | 2020-01-30 |
US20220366688A1 (en) | 2022-11-17 |
JP7459051B2 (ja) | 2024-04-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112639664B (zh) | 用于确定和/或评价图像显示设备的定位地图的方法和装置 | |
US11686941B2 (en) | Methods and apparatuses for corner detection using neural network and corner detector | |
JP7459051B2 (ja) | 角検出のための方法および装置 | |
CN112513712A (zh) | 具有虚拟内容翘曲的混合现实系统和使用该系统生成虚拟内容的方法 | |
US11004255B2 (en) | Efficient rendering of high-density meshes | |
US10595001B2 (en) | Apparatus for replaying content using gaze recognition and method thereof | |
US11663689B2 (en) | Foveated rendering using eye motion | |
US20230244354A1 (en) | 3d models for displayed 2d elements | |
US11662808B2 (en) | Virtual, augmented, and mixed reality systems and methods | |
US20210192782A1 (en) | Methods and apparatuses for corner detection | |
CN114859561B (zh) | 一种可穿戴显示设备及其控制方法、存储介质 | |
JP2017078890A (ja) | 仮想現実空間を立体的に表示するためのプログラム、コンピュータ及びヘッドマウントディスプレイシステム |
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 |