KR20230065978A - 구조화된 광을 사용하여 장면에서 평면 표면들을 직접 복구하기 위한 시스템, 방법 및 매체 - Google Patents

구조화된 광을 사용하여 장면에서 평면 표면들을 직접 복구하기 위한 시스템, 방법 및 매체 Download PDF

Info

Publication number
KR20230065978A
KR20230065978A KR1020237006767A KR20237006767A KR20230065978A KR 20230065978 A KR20230065978 A KR 20230065978A KR 1020237006767 A KR1020237006767 A KR 1020237006767A KR 20237006767 A KR20237006767 A KR 20237006767A KR 20230065978 A KR20230065978 A KR 20230065978A
Authority
KR
South Korea
Prior art keywords
pattern
feature
image
plane
epipolar line
Prior art date
Application number
KR1020237006767A
Other languages
English (en)
Inventor
모히트 굽타
종호 이
Original Assignee
위스콘신 얼럼나이 리서어치 화운데이션
위스콘신 얼럼나이 리서어치 화운데이션
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by 위스콘신 얼럼나이 리서어치 화운데이션, 위스콘신 얼럼나이 리서어치 화운데이션 filed Critical 위스콘신 얼럼나이 리서어치 화운데이션
Publication of KR20230065978A publication Critical patent/KR20230065978A/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/40Extraction of image or video features
    • G06V10/60Extraction of image or video features relating to illumination properties, e.g. using a reflectance or lighting model
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/50Depth or shape recovery
    • G06T7/521Depth or shape recovery from laser ranging, e.g. using interferometry; from the projection of structured light
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/10Image acquisition
    • G06V10/12Details of acquisition arrangements; Constructional details thereof
    • G06V10/14Optical characteristics of the device performing the acquisition or on the illumination arrangements
    • G06V10/145Illumination specially adapted for pattern recognition, e.g. using gratings
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/40Extraction of image or video features
    • G06V10/44Local 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/20Scenes; Scene-specific elements in augmented reality scenes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V30/00Character recognition; Recognising digital ink; Document-oriented image-based pattern recognition
    • G06V30/10Character recognition
    • G06V30/18Extraction of features or characteristics of the image
    • G06V30/1801Detecting partial patterns, e.g. edges or contours, or configurations, e.g. loops, corners, strokes or intersections
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/10Image acquisition modality
    • G06T2207/10028Range image; Depth image; 3D point clouds

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Multimedia (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Optics & Photonics (AREA)
  • Software Systems (AREA)
  • Artificial Intelligence (AREA)
  • Length Measuring Devices By Optical Means (AREA)
  • Image Input (AREA)
  • Image Analysis (AREA)

Abstract

일부 실시예들에 따르면, 구조화된 광을 사용하여 장면에서 평면 표면을 직접 복구하기 위한 시스템들, 방법들 및 매체들이 제공된다. 일부 실시예들에서, 시스템은 광원; 이미지 센서; 프로세서를 포함하고, 프로세서는: 광원으로 하여금 에피폴라 라인 상에서 교차하는 2 개의 라인 세그먼트들을 갖는 패턴 피처를 포함하는 패턴을 방출하게 하고; 이미지 센서로 하여금 패턴을 포함하는 이미지를 캡처하게 하고; 이미지에서 이미지 피처를 식별하고, 이미지 피처는 제1 에피폴라 라인에 대응하는 이미지의 지점에서 교차하는 2 개의 교차하는 라인 세그먼트들을 포함하고; 패턴 피처의 속성들 및 이미지 피처의 속성들에 기초하여 패턴 피처와 연관된 평면 가정을 추정하고, 평면 가정은 평면을 특징화하는 파라미터들의 세트와 연관되고; 평면 가정에 기초하여 장면에서 평면 표면을 식별하도록 프로그래밍된다.

Description

구조화된 광을 사용하여 장면에서 평면 표면들을 직접 복구하기 위한 시스템, 방법 및 매체
[0001] 본 출원은 2020년 7월 31일자로 출원된 미국 특허 출원 제16/945,449호에 기초하고, 그 이익을 주장하며, 이에 대한 우선권을 주장하며, 이는 모든 목적을 위해 그 전체가 본원에 참조로 통합된다.
연방 정부 지원 연구에 관한 진술
[0002] 본 발명은 NAVY/ONR에 의해 부여된 N00014-16-1-2995 하에서 정부 지원으로 이루어졌다. 정부는 본 발명에 대해 특정 권리를 갖는다.
[0003] 최근 3D 이미징은 다양한 애플리케이션들에서 사용하기 위해 폭발적인 인기를 얻고 있다. 예를 들어, 3D 카메라들이 장착된 로봇들이 자동차들을 운전하고 우주를 탐험하고 공장들을 관리하는 데 사용되고 있다. 이러한 애플리케이션들 중 일부는 주변 환경의 고해상도 3D 스캔들을 필요로 하지만, 다른 작업들은 조밀한 3D 포인트 클라우드들을 명시적으로 필요로 하지 않는다. 이러한 애플리케이션들의 예들은 자율 내비게이션(예를 들어, 실내 공간 또는 도시 블록) 또는 가상 객체를 배치할 방의 표면 찾기를 시도하는 증강 현실(AR: augmented reality) 시스템을 포함한다. 이러한 애플리케이션들에서, 시스템은 상대적인 고화질 포인트 클라우드를 캡처할 수 있으며, 그 후 포인트 클라우드로부터 환경의 피처(feature)들을 결정하려고 시도할 수 있다. 이는 일반적으로 상대적으로 노이즈가 있을 수 있는 포인트 클라우드 데이터에서 표면들을 찾기 위해 많은 계산 비용을 필요로 한다.
[0004] 따라서, 구조화된 광을 사용하여 장면에서 평면 표면을 직접 복구하기 위한 새로운 시스템들, 방법들 및 매체들이 바람직하다.
[0005] 개시된 주제의 일부 실시예들에 따르면, 구조화된 광을 사용하여 장면에서 평면 표면들을 직접 복구하기 위한 시스템들, 방법들 및 매체들이 제공된다.
[0006] 개시된 주제의 일부 실시예들에 따르면, 장면에서 평면들을 복구하기 위한 시스템이 제공되며, 본 시스템은: 광원; 픽셀들의 어레이를 포함하는 이미지 센서; 적어도 하나의 하드웨어 프로세서를 포함하고, 적어도 하나의 하드웨어 프로세서는: 광원으로 하여금 장면을 향해 2차원 광 패턴을 방출하게 하고, 2차원 광 패턴은 제1 에피폴라(epipolar) 라인 상에 배치되는 패턴 피처를 포함하고, 패턴 피처는 제1 에피폴라 라인 상에 위치된 지점에서 교차하는 2 개의 교차하는 라인 세그먼트들을 포함하고; 이미지 센서로 하여금 광 패턴의 적어도 일부를 포함하는 장면의 이미지를 캡처하게 하고; 이미지에서 이미지 피처를 식별하고, 이미지 피처는 상기 제1 에피폴라 라인에 대응하는 이미지의 지점에서 교차하는 2 개의 교차하는 라인 세그먼트들을 포함하고; 적어도 패턴 피처를 제1 에피폴라 라인과 모두 연관되는 패턴 피처 및 이미지 피처에 기초하여 이미지 피처에 잠재적으로 대응하는 것으로 식별하고; 패턴 피처의 속성들 및 이미지 피처의 속성들에 기초하여 패턴 피처와 연관된 평면 가정(hypothesis)을 추정하고, 평면 가정은 평면을 특징화하는 파라미터들의 세트와 연관되고; 평면 가정에 기초하여 장면에서 평면 표면을 식별하도록 프로그래밍된다.
[0007] 일부 실시예들에서, 2차원 광 패턴은 제1 에피폴라 라인 상에 각각 배치되는 패턴 피처를 포함하는 N 개의 패턴 피처들의 세트 {P1,..., PN}를 포함하고; 적어도 하나의 하드웨어 프로세서는: N 개의 패턴 피처들의 세트를 모두 제1 에피폴라 라인과 연관되는 N 개의 패턴 피처들의 세트 및 이미지 피처에 기초하여 이미지 피처에 잠재적으로 대응하는 것으로 식별하고; N 개의 패턴 피처들의 세트의 각각의 패턴 피처와 각각 연관된 N 개의 평면 가정들의 제1 세트를 추정하고, N 개의 평면 가정들의 제1 세트의 각각의 평면 가정은 이미지 피처의 속성들 및 각각의 패턴 피처의 속성들에 기초하고, N 개의 평면 가정들의 제1 세트의 각각의 평면 가정은 평면을 특징화하는 파라미터들의 세트와 연관되고; 제1 에피폴라 라인과 연관된 이미지에서 제2 이미지 피처를 식별하고, 제2 이미지 피처는 제1 에피폴라 라인에 대응하는 지점에서 교차하는 2 개의 교차하는 라인 세그먼트들을 포함하고; N 개의 패턴 피처들의 세트를 모두 제1 에피폴라 라인과 연관되는 N 개의 패턴 피처들의 세트 및 제2 이미지 피처에 기초하여 제2 이미지 피처에 잠재적으로 대응하는 것으로 식별하고; N 개의 패턴 피처들의 세트의 각각의 패턴 피처와 각각 연관된 N 개의 평면 가정들의 제2 세트를 추정하고, N 개의 평면 가정들의 제2 세트의 각각의 평면 가정은 제2 이미지 피처의 속성들 및 각각의 패턴 피처의 속성들에 기초하고, N 개의 평면 가정들의 제2 세트의 각각의 평면 가정은 평면을 특징화하는 파라미터들의 세트를 포함하고; N 개의 평면 가정들의 제1 세트 및 N 개의 평면 가정들의 제2 세트 모두의 멤버인 평면 가정에 기초하여 장면에서 평면 표면을 식별하도록 추가로 프로그래밍된다.
[0008] 일부 실시예들에서, N > 2이고, 패턴 피처 P1과 패턴 피처 P2 사이의 제1 에피폴라 라인을 따른 거리는 패턴 피처 PN-1과 패턴 피처 PN 사이의 제1 에피폴라 라인을 따른 거리와 상이하여, N 개의 패턴 피처들의 세트 {P1,..., PN}이 불균일하게 이격된다.
[0009] 일부 실시예들에서, 2차원 광 패턴은 제2 에피폴라 라인 상에 각각 배치된 N 개의 패턴 피처들의 제2 세트 {PN+1,..., P2N}를 포함하고, 패턴 피처 PN1과 패턴 피처 PN+2 사이의 제2 에피폴라 라인을 따른 거리는 패턴 피처 P2N-1과 패턴 피처 P2N 사이의 제2 에피폴라 라인을 따른 거리와 상이하고, 패턴 피처 PN1과 패턴 피처 PN+2 사이의 제2 에피폴라 라인을 따른 거리는 패턴 피처 P1과 패턴 피처 P2 사이의 제1 에피폴라 라인을 따른 거리와 상이하여, N 개의 패턴 피처들의 제2 세트 {PN+1,..., P2N}는 불균일하게 이격되고 N 개의 패턴 피처들의 세트 {P1,..., PN}와 상이하게 이격된다.
[0010] 일부 실시예들에서, 적어도 하나의 하드웨어 프로세서는 2 개의 라인 세그먼트들이 교차하는 지점과 제1 에피폴라 라인 사이의 근접도에 기초하여 이미지 피처가 제1 에피폴라 라인과 연관되는 것으로 결정하도록 추가로 프로그래밍된다.
[0011] 일부 실시예들에서, 광원은 복수의 행들을 포함하고, 이미지 센서는 복수의 제2 행들을 포함하고, 광원 및 이미지 센서는 교정되어, 복수의 행들의 각각의 행은 복수의 제2 행들의 행과 에피폴라 라인을 공유한다.
[0012] 일부 실시예들에서, 패턴 피처의 제1 라인 세그먼트는 제1 에피폴라 라인에 대해 35° 내지 55°의 범위의 각을 이루고, 패턴 피처의 제2 라인 세그먼트는 제1 에피폴라 라인에 대해 125° 내지 145°의 범위의 각을 이룬다.
[0013] 일부 실시예들에서, 패턴 피처의 속성들은 패턴 피처의 제1 라인 세그먼트에 대응하는 제1 벡터 u p , 패턴 피처의 제2 라인 세그먼트에 대응하는 제2 벡터 v p 및 제1 벡터 u p 와 제2 벡터 v p 가 교차하는 지점의 좌표 p p 를 포함하고, 이미지 피처의 속성들은 이미지 피처의 제1 라인 세그먼트에 대응하는 제3 벡터 u c , 이미지 피처의 제2 라인 세그먼트에 대응하는 제4 벡터 v c 및 제3 벡터 u c 와 제4 벡터 v c 가 교차하는 지점의 좌표 p c 를 포함한다.
[0014] 일부 실시예들에서, 평면 가정과 연관된 파라미터들의 세트는 평면 Π를 정의하고 카메라 좌표계의 원점 c c 에서 평면 Π까지의 최단 거리에 대응하는 거리 D, 평면 법선 벡터 nc c 및 이미지 센서에 의해 정의된 이미지 평면의 중심을 통해 연장되는 z 축 사이의 극각 θ 및 평면 법선 벡터 n과 이미지 평면의 수평 방향을 따라 연장되는 x 축 사이의 방위각
Figure pct00001
를 포함한다.
[0015] 일부 실시예들에서, 프로세서는:
Figure pct00002
의 관계를 사용하여 평면 법선 벡터 n을 결정하고;
Figure pct00003
의 관계를 사용하여 거리 D를 결정하도록 추가로 프로그래밍되고, b는 카메라 좌표계의 원점 c c 와 패턴 좌표계의 원점 c p 사이의 거리이다.
[0016] 일부 실시예들에서, 프로세서는: 이미지 센서로 하여금 광 패턴을 포함하지 않는 장면의 제2 이미지를 캡처하게 하고; 이미지와 제2 이미지 사이의 차이에 기초하여 차이 이미지를 계산하고; 차이 이미지를 사용하여 이미지의 이미지 피처를 식별하도록 추가로 프로그래밍된다.
[0017] 개시된 주제의 일부 실시예들에 따르면, 장면에서 평면들을 복구하기 위한 방법이 제공되며, 본 방법은: 광원으로 하여금 장면을 향해 2차원 광 패턴을 방출하게 하는 단계 ― 2차원 광 패턴은 제1 에피폴라 라인 상에 배치되는 패턴 피처를 포함하고, 패턴 피처는 제1 에피폴라 라인 상에 위치된 지점에서 교차하는 2 개의 교차하는 라인 세그먼트들을 포함함 ―; 이미지 센서로 하여금 광 패턴의 적어도 일부를 포함하는 장면의 이미지를 캡처하게 하는 단계; 이미지에서 이미지 피처를 식별하는 단계 ― 이미지 피처는 제1 에피폴라 라인에 대응하는 이미지의 지점에서 교차하는 2 개의 교차하는 라인 세그먼트들을 포함함 ―; 적어도 패턴 피처를 제1 에피폴라 라인과 모두 연관되는 패턴 피처 및 이미지 피처에 기초하여 이미지 피처에 잠재적으로 대응하는 것으로 식별하는 단계; 패턴 피처의 속성들 및 이미지 피처의 속성들에 기초하여 패턴 피처와 연관된 평면 가정을 추정하는 단계 ― 평면 가정은 평면을 특징화하는 파라미터들의 세트와 연관됨 ―; 및 평면 가정에 기초하여 장면에서 평면 표면을 식별하는 단계를 포함한다.
[0018] 개시된 주제의 일부 실시예들에 따르면, 컴퓨터 실행 가능 명령어들을 포함하는 비일시적 컴퓨터 판독 가능 매체가 제공되며, 컴퓨터 실행 가능 명령어들은 프로세서에 의해 실행될 때 프로세서로 하여금 장면에서 평면들을 복구하기 위한 방법을 수행하게 하고, 본 방법은: 광원으로 하여금 장면을 향해 2차원 광 패턴을 방출하게 하는 단계 ― 2차원 광 패턴은 제1 에피폴라 라인 상에 배치되는 패턴 피처를 포함하고, 패턴 피처는 제1 에피폴라 라인 상에 위치된 지점에서 교차하는 2 개의 교차하는 라인 세그먼트들을 포함함 ―; 이미지 센서로 하여금 광 패턴의 적어도 일부를 포함하는 장면의 이미지를 캡처하게 하는 단계; 이미지에서 이미지 피처를 식별하는 단계 ― 이미지 피처는 제1 에피폴라 라인에 대응하는 이미지의 지점에서 교차하는 2 개의 교차하는 라인 세그먼트들을 포함함 ―; 적어도 패턴 피처를 제1 에피폴라 라인과 모두 연관되는 패턴 피처 및 이미지 피처에 기초하여 이미지 피처에 잠재적으로 대응하는 것으로 식별하는 단계; 패턴 피처의 속성들 및 이미지 피처의 속성들에 기초하여 패턴 피처와 연관된 평면 가정을 추정하는 단계 ― 평면 가정은 평면을 특징화하는 파라미터들의 세트와 연관됨 ―; 및 평면 가정에 기초하여 장면에서 평면 표면을 식별하는 단계를 포함한다.
[0019] 개시된 주제의 다양한 목적들, 피처들 및 이점들은 동일한 참조 번호들이 동일한 요소들을 식별하는 이하의 도면들과 관련하여 고려될 때 개시된 주제의 이하의 상세한 설명을 참조하여 보다 완전하게 이해될 수 있다.
[0020] 특허 또는 출원 파일은 컬러로 실행된 적어도 하나의 도면을 포함한다. 컬러 도면(들)을 갖는 본 특허 또는 특허 출원 공보의 사본들은 요청 및 필요한 수수료의 지불 시 관청에 의해 제공될 것이다.
[0021] 도 1a는 개시된 주제의 일부 실시예들에 따라 장면의 평면들이 복구될 수 있는 애플리케이션들의 예를 도시한다.
[0022] 도 1b는 포인트-클라우드 기반 시스템을 사용하여 장면에서 평면들을 검출하기 위한 기술들을 개시된 주제의 일부 실시예들에 따라 평면들을 검출하기 위한 기술들과 비교하는 예를 도시한다.
[0023] 도 2a는 개시된 주제의 일부 실시예들에 따라 구조화된 광 이미징 시스템 및 장면의 평면의 예시적인 표현을 도시한다.
[0024] 도 2b는 개시된 주제의 일부 실시예들에 따라 도 2a의 구조화된 광 이미징 시스템에서 패턴 및 이미지 대응의 예시적인 표현을 도시한다.
[0025] 도 2c는 개시된 주제의 일부 실시예들에 따른 패턴 피처를 포함하는 이미지의 예시적인 표현을 도시한다.
[0026] 도 2d는 개시된 주제의 일부 실시예들에 따라 도 2c의 이미지에 기록된 패턴 피처를 포함하는 패턴의 예시적인 표현을 도시한다.
[0027] 도 3a는 개시된 주제의 일부 실시예들에 따라 장면의 평면 상으로 투사되고 이미지에 기록된 패턴 피처의 일부에 대응하는 제1 라인 세그먼트의 예를 도시한다.
[0028] 도 3b는 개시된 주제의 일부 실시예들에 따라 장면의 평면 상에 투사되고 이미지에 기록된 패턴 피처의 다른 부분에 대응하는 제2 라인 세그먼트의 예를 도시한다.
[0029] 도 3c는 개시된 주제의 일부 실시예들에 따라 장면의 평면 상에 투사되고 이미지에 기록된 패턴 피처에 대응하는 제1 및 제2 라인 세그먼트 모두의 예를 도시한다.
[0030] 도 3d는 라인 세그먼트와 에피폴라 라인 사이의 정렬로 인해 축퇴 솔루션(degenerate solution)들을 생성하는 패턴 피처에 해당하는 패턴의 라인 세그먼트의 예를 도시한다.
[0031] 도 4aa는 개시된 주제의 일부 실시예들에 따라 이미징된 패턴 피처 I1과 동일한 에피폴라 라인 상의 각각의 패턴 피처에 대한 패턴 피처들의 균일하게 분포된 패턴, 대응하는 이미징된 패턴 피처들 및 Π 공간의 평면 파라미터 로커스(locus)들의 예를 도시한다.
[0032] 도 4ab는 개시된 주제의 일부 실시예들에 따라 이미징된 패턴 피처들 I1 및 I2에 대한 Π 공간에서 중첩하는 로커스들의 예를 도시한다.
[0033] 도 4ba는 개시된 주제의 일부 실시예들에 따라 이미징된 패턴 피처 I1과 동일한 에피폴라 라인 상의 각각의 패턴 피처에 대한 패턴 피처들의 불균일하게 분포된 패턴, 대응하는 이미징된 패턴 피처들 및 Π 공간에서의 평면 파라미터 로커스들의 예를 도시한다.
[0034] 도 4bb는 개시된 주제의 일부 실시예들에 따라 양쪽 패턴 피처들 상의 평면의 Π의 실제 값에서만 중첩되는 이미징된 패턴 피처들 I1 및 I2에 대한 Π 공간의 로커스들의 예를 도시한다.
[0035] 도 5는 개시된 주제의 일부 실시예들에 따라 구조화된 광을 사용하여 장면에서 평면 표면들을 직접 복구하기 위한 시스템의 예를 도시한다.
[0036] 도 6은 개시된 주제의 일부 실시예들에 따라 구조화된 광을 사용하여 장면에서 평면 표면들을 직접 복구하기 위한 프로세스의 예를 도시한다.
[0037] 도 7a는 개시된 주제의 일부 실시예들에 따라 패턴이 투사된 시뮬레이팅된 장면, Π 공간의 후보 평면들에 대응하는 로커스들, 측정된 평면 깊이들, 측정된 평면 법선, 및 추정된 깊이들 및 복구된 평면 법선의 예를 도시한다.
[0038] 도 7b는 개시된 주제의 일부 실시예들에 따라 패턴이 투사된 또 다른 시뮬레이팅된 장면, Π 공간의 후보 평면들에 대응하는 로커스들, 측정된 평면 깊이들, 측정된 평면 법선, 및 추정된 평면 깊이들 및 복구된 평면 법선의 예를 도시한다.
[0039] 도 8a는 개시된 주제의 일부 실시예들에 따라 구현된 프로젝터를 사용하여 패턴이 투사된 장면의 예를 도시한다.
[0040] 도 8b는 개시된 주제의 일부 실시예들에 따라 추정된 프로젝터의 동일한 에피폴라 라인 상의 패턴 피처들과 장면의 패턴 피처들 사이의 대응에 기초하여 결정된 Π 공간의 후보 평면들에 대응하는 로커스들의 예들을 도시한다.
[0041] 도 8c는 개시된 주제의 일부 실시예들에 따라 도 8b의 로커스들에 기초하여 결정된 추정된 평면 깊이들의 예를 도시한다.
[0042] 도 8d는 개시된 주제의 일부 실시예들에 따라 도 8b의 로커스들에 기초하여 결정된 추정된 평면 법선들의 예들을 도시한다.
[0043] 도 9a는 낮은 레벨의 주변 광으로 패턴이 투사된 장면 및 개시된 주제의 일부 실시예들에 따라 캡처된 더 높은 레벨의 주변 광으로 패턴이 투사된 동일한 장면의 예시적인 이미지들을 도시한다.
[0044] 도 9b는 개시된 주제의 일부 실시예들에 따라 도 9a의 이미지에 기초하여 결정된 Π 공간에서 후보 평면들에 대응하는 로커스들의 예를 도시한다.
[0045] 도 9c는 개시된 주제의 일부 실시예들에 따라 도 9b의 로커스들에 기초하여 결정된 추정된 평면 깊이들의 예를 도시한다.
[0046] 도 9d는 개시된 주제의 일부 실시예들에 따라 도 9b의 로커스들에 기초하여 결정된 추정된 평면 법선들의 예들을 도시한다.
[0047] 도 10a는 개시된 주제의 일부 실시예들에 따라 장면의 이미지로부터 추정된 평면들과 RANSAC-기반 평면 피팅(fitting)을 사용하여 동일한 장면의 포인트 클라우드 표현으로부터 추정된 평면들의 비교를 도시한다.
[0048] 도 10b는 개시된 주제의 일부 실시예들에 따라 더 복잡한 장면의 이미지로부터 추정된 평면들과 RANSAC-기반 평면 피팅을 사용하여 동일한 장면의 포인트 클라우드 표현으로부터 추정된 평면들의 비교를 도시한다.
[0049] 다양한 실시예들에 따르면, 구조화된 광을 사용하여 장면에서 평면 표면들을 직접 복구하기 위한 메커니즘들(예를 들어 시스템들, 방법들 및 매체들을 포함할 수 있음)이 제공된다.
[0050] 본원에 개시된 주제의 일부 실시예들에서, 구조화 광(SL: structured light) 시스템은 광의 패턴들이 장면을 향해 투사될 때 캡처된 장면의 단일 이미지에서 검출된 광의 패턴들에 기초하여 동시에 장면에서 평면 표면들을 복구하고 (예를 들어, 복구된 평면 표면들에 대응하는 장면의 다양한 지점들까지의 거리로서) 장면의 평면 표면 부분들의 깊이들을 추정할 수 있다. 장면들을 3차원(3D: three dimension)으로 이미징하고/이미징하거나 장면 지점들까지의 거리들을 결정하는 능력의 중요성이 최근 증가하고 있다. 자율 또는 반자율 시스템들이 자동차를 운전하고, 우주를 탐험하고, 3D 카메라 및 다른 센서 기술들에 의해 촉진되는 깊이 정보에 기초하여 공장 관리를 시작하고 있다. 애플리케이션들 중 일부는 주변 환경의 고해상도 3D 스캔들을 필요로 하지만, 일부 작업들은 조밀한 3D 포인트 클라우드를 명시적으로 필요로 하지 않는다. 예를 들어, 실내 공간이나 도시 블록을 탐색하는 로봇은 평면 표면들의 위치에 기초하여 경로를 계획할 수 있다. 다른 예로서, 증강 현실(AR) 시스템은 평면 표면들의 위치에 기초하여 가상 객체들을 배치하기 위해 거실에서 표면들을 찾을 수 있다. 이러한 애플리케이션들의 경우, 특히 제한된 계산 예산을 갖는 디바이스들에서, 컴팩트하고 메모리 및 계산 효율적인 3D 장면 표현들을 생성하는 것이 종종 바람직하다. 예를 들어, 도 1b와 관련하여 아래에 설명되는 바와 같이, 조각별 평면 실내 장면들을 나타내는 통상의 접근법은 먼저 깊이 카메라 또는 다른 깊이 센서로 3D 포인트 클라우드 데이터를 캡처한 다음 장면의 조각별 평면 표현을 추정하는 것이다. 이는 상대적으로 고해상도 3D 포인트 클라우드 데이터를 캡처한 다음, 상대적으로 높은 계산 비용으로 훨씬 덜 데이터 집약적인 장면의 평면 표현을 추출할 것을 필요로 한다. 일부 실시예들에서, 본원에 설명된 메커니즘들은 3D 포인트 클라우드 데이터를 캡처하고 3D 포인트 클라우드 데이터로부터 평면 표면들을 추정하는 것과 연관된 비용들 없이 장면의 컴팩트한 기하학적 표현들을 직접 복구하는 데 사용될 수 있다.
[0051] 일부 실시예들에서, 본원에 설명된 메커니즘들은 3D 포인트 클라우드들을 생성하지 않고 조각별 평면 장면들(때로는 블록들-세계 장면들이라고 칭함)에 대한 지배적인 평면 파라미터들을 직접 복구하는 데 사용될 수 있으며, 이는 빠르고 저비용의 정확한 재구성을 용이하게 할 수 있다. 일부 실시예들에서, 본원에 설명된 메커니즘들은 장면 상에 단일 패턴을 투사하는 프로젝터 및 장면의 이미지를 캡처하는 카메라를 포함하는 구조화된 광 시스템에 기초한 카메라들(예를 들어, 블록들-세계 카메라들)을 구현하는 데 사용될 수 있다. 일부 실시예들에서, 패턴은 본원에 설명된 메커니즘들이 장면 평면들에 의해 유도된 호모그래피(homography)들 통해 카메라 이미지의 십자형 피처들에 매핑할 수 있는 십자형 피처들의 희소한 세트(예를 들어, 2 개의 라인 세그먼트들을 가짐)를 포함할 수 있다. 일부 실시예들에서, 이미지와 패턴 피처들 사이의 대응들이 확립될 수 있다면, 평면 파라미터들은 패턴 피처들 사이의 변형(2 개의 세그먼트들의 각도 변화)을 측정함으로써 추정될 수 있다. 일부 실시예들에서, 각각의 에피폴라 라인 상에 복수의 피처들을 갖는 패턴을 사용하는 것은 평면 파라미터들을 정확하게 측정하기에 충분한 피처 밀도를 제공할 수 있지만, 또한 모호성으로 이어질 수도 있다. 또한, 피처 밀도가 증가함에 따라, 추가 밀도를 수용하기 위해 각각의 피처의 크기가 감소될 필요가 있을 수 있으며, 이는 변형을 정확하게 측정하는 데 어려움으로 이어질 수 있다.
[0052] 일반적으로, 계산 집약적인 복잡한 글로벌 추론 없이 싱글-샷(single-shot) SL 시스템에서 정확한 피처 대응들을 찾는 것은 어려운 일이다. 일부 실시예들에서, 본원에 설명된 메커니즘들은 상대적으로 높은 피처 밀도 및 상대적으로 낮은 계산 복잡성을 모두 유지하면서 재구성을 용이하게 할 수 있다. 일부 실시예들에서, 본원에 설명된 메커니즘들은 알려지지 않은 대응들로도 평면 파라미터 추정을 용이하게 하는 기하학적 프로세스를 이용할 수 있다.
[0053] 일부 실시예들에서, 이미지 피처가 주어지면, 대응하는 에피폴라 라인 상의 모든 패턴 피처들은 매치(match)들을 위한 후보들이 될 수 있다. 각각의 후보 패턴 피처는 이미지 피처와 함께 평면 가정을 생성하는 데 사용될 수 있으며, 본원에 설명된 메커니즘들은 투표 절차를 사용하여 이미지 피처가 투사된 평면을 나타내는 평면 파라미터를 선택할 수 있다. 평면 가정은 (예를 들어, 4a2 및 4b2와 관련하여 아래에서 설명되는 바와 같이) 3D 평면 파라미터 공간의 지점으로 표현될 수 있다. 따라서, 일부 실시예들에서, 본원에 설명된 메커니즘들은 평면 가정들의 세트에 대한 투표를 나타내기 위해 모든 후보 패턴 피처 대응들의 세트를 사용할 수 있으며, 이는 평면 파라미터 로커스로 칭할 수 있다. 일부 실시예들에서, 패턴 피처들이 (예를 들어, 도 4ba 및 도 4bb와 관련하여 후술하는 바와 같이) 에피폴라 라인 상에 불균일하게 이격되어 있는 경우, (때로는 세계 평면이라고 칭하는) 동일한 장면 평면 상에 놓인 복수의 이미지 피처들에 대한 평면 파라미터 로커스들이 파라미터 공간에서 고유한 위치에서 교차할 것으로 예측될 수 있다. 이러한 교차점은 세계 평면의 파라미터들에 대응하고, 대응을 명시적으로 결정하지 않고 상대적으로 단순한 로컬-피크(local-peak) 찾기에 의해 결정될 수 있다.
[0054] 도 1b 내지 도 6과 관련하여 후술하는 바와 같이, 일부 실시예들에서, 본원에 설명된 메커니즘들은 피처 패턴 및 조각별 평면 장면들의 깊이 및 법선 맵들을 동시에 복구할 수 있는 상대적으로 빠른 프로세스를 사용할 수 있다. 본원에 설명된 메커니즘들의 구현들이 텍스처-부족 장면들 및 큰 조명 변화들을 포함하는 광범위한 어려운 시나리오들에 대해 깨끗하고 깔끔한 3D 모델들을 캡처할 수 있음을 보여주는 시뮬레이션들 및 실험들이 아래에 설명된다. 개시된 주제의 일부 실시예들과 관련하여 설명된 기술들의 계산 복잡성은 통상의 평면-피팅(fitting) 기술들보다 10배까지 더 낮을 수 있고, 장면의 기하학적 복잡성에 관계없이 비교적 일정하게 유지될 수 있다. 이는 제한된 계산 자원들로도 고해상도 이미지들에서 실시간 수행을 용이하게 할 수 있다. 일부 실시예들에서, 본원에 설명된 메커니즘들은 단지 하나 또는 2 개의 이미지들의 캡처와 관련하여 사용될 수 있고, 정적인 마스크를 갖는 단순하고 저렴한 단일-패턴 프로젝터들로 구현될 수 있다. 또한, 투사된 패턴의 희소성(sparsity)은 조밀한 패턴들로 해결하기 곤란한 어려운 문제인 상호 반사로 인한 노이즈를 완화할 수 있다.
[0055] 일부 실시예들에서, 본원에 설명된 메커니즘들은 조각별 평면 장면들에 대한 평면 정보를 추정하는 데 효과적으로 사용될 수 있으며, 이는 작은 세트의 평면들을 포함하는 컴팩트한 3D 표현들을 이용할 수 있는 애플리케이션들에서 유용할 수 있다. 예를 들어, 본원에 설명된 메커니즘들은 로봇 내비게이션, 실내 장면 모델링, 증강 현실과 같은 애플리케이션들에서 빠르고 견고함을 촉진하기 위해 사용될 수 있다.
[0056] 도 1a는 개시된 주제의 일부 실시예들에 따라 장면의 평면들이 복구될 수 있는 애플리케이션들의 예를 도시한다. 도 1a에 도시된 바와 같이, 많은 장면들은 장면의 적어도 거시적 피처들을 모델링하는 데 사용될 수 있는 비교적 큰 평면 표면들을 포함한다. 예를 들어, 가구가 있는 방은 가구의 형상들을 근사화하기 위해 평면들을 사용하여 모델링될 수 있는 가구의 복수의 조각들을 포함할 수 있다. 일부 실시예들에서, 본원에 설명된 메커니즘들은 평면도 모델링 및 가구가 있는 방의 레이아웃 결정과 같은 임의의 적절한 애플리케이션에 대한 방의 기하 형태를 이해하는 데 사용될 수 있다. 다른 예로서, 많은 실내 공간들 및 실외 공간들은 바닥들, 천장들, 벽들, 문들, 도로들, 보도들 등과 같은 환경의 피처들에 대응하는 평면 표면들을 포함한다. 일부 실시예들에서, 본원에 설명된 메커니즘들은 내비게이션 경로를 계획하고 증강 현실 장면에서 사용할 표면으로서 사용할 평면 표면들을 찾는 데 사용될 수 있다.
[0057] 도 1b는 포인트-클라우드 기반 시스템을 사용하여 장면에서 평면들을 검출하기 위한 기술들을 개시된 주제의 일부 실시예들에 따라 평면들을 검출하기 위한 기술들과 비교하는 예를 도시한다. 도 1b에 도시된 바와 같이, 장면은 조각별 평면으로 모델링될 수 있는 객체들을 포함할 수 있다. 통상의 일부 3D 이미징 기술들은 깊이 카메라(들)를 사용하여 3D 포인트 데이터를 생성하고 3D 포인트 클라우드 데이터로부터 평면들을 추정하려고 시도한다. 예를 들어, 3D 포인트 클라우드 데이터는 노이즈를 포함할 수 있고/있거나 평면 표면들을 정확하게 추정하는 데 어려움을 줄 수 있는 객체들의 에지들에서 관련 정보를 캡처하지 못하는 해상도를 가질 수 있기 때문에, 이것은 어렵고 계산 집약적인 작업이 될 수 있다.
[0058] 도 2a는 개시된 주제의 일부 실시예들에 따라 구조화된 광 이미징 시스템 및 장면의 평면의 예시적인 표현을 도시한다. 도 2a에 도시된 바와 같이, 구조화된 광 시스템은 통상적으로 프로젝트와 카메라를 포함한다. 핀홀 투사(pinhole projection) 모델은 카메라와 프로젝터 모두에 대해 가정될 수 있다. 카메라의 광학 중심에 대응하는 c c 를 중심으로 하는 카메라 좌표계(CCS: camera coordinate system)가 정의될 수 있다. 프로젝터의 광학 중심에 대응하는 c p 를 중심으로 하는 프로젝터 좌표계(PCS: projector coordinate system)들이 정의될 수 있다. 도 2a에 도시된 시스템에서, c c c p 는 x축을 따라 프로젝터-카메라 기준 라인 b에 의해 분리된다. 이것은 단지 예일 뿐이며 구조화된 광 시스템들은 y 축을 따라 분리되거나 x 및 y 축에 대해 각을 이룬 카메라와 프로젝터로 구성될 수 있으며, 이는 프로젝터-카메라 설정의 캘리브레이션(calibration) 및 캡처된 이미지의 교정을 필요로 할 수 있음에 유의한다. 세계 좌표계(WCS: world coordinate system)는 c c 를 중심으로 하는 WCS 원점을 갖는 CCS에 기초하여 정의될 수 있어,
Figure pct00004
Figure pct00005
이다.
[0059] 일반성을 잃지 않고, 카메라와 프로젝터 모두 동일한 초점 거리 f를 갖는 것으로 가정될 수 있으며, 이는 카메라와 프로젝터 모두의 이미지 평면들이 z 축을 따라 각각의 광학 중심들로부터 거리 f에 위치된 것으로 해석될 수 있다. 단순화를 위해, 에피폴라 라인들이 카메라 이미지와 프로젝터 패턴의 행들을 따라 있는 교정된 시스템이 가정될 수 있다. 이러한 가정들(동일한 초점 거리, 교정된 설정)은 단지 예일 뿐이며, 프로젝터-카메라 설정을 캘리브레이팅하고 캡처된 이미지들을 교정하여 도 2a에 도시된 구성에 대응하도록 실제로 완화될 수 있다.
[0060] WCS(그리고 도 2a에 도시된 예의 CCS)에서, 3D 공간의 평면은 3 개의 파라미터들: Π{D, θ,
Figure pct00006
}에 의해 특징화될 수 있으며, 여기서 도 2a에 도시된 바와 같이, Π는 3D 공간의 평면이고, D ∈ [0, ∞)는 원점(c c )으로부터 평면 Π까지의 수직(최단) 거리이고,
Figure pct00007
는 평면 법선과 -(즉, CCS 원점 c c 를 향한 z 축을 따름) 사이의 극각이고,
Figure pct00008
는 평면 법선과 x 축 사이의 방위각(시계 방향으로 측정)이다. 도 2a에 도시된 예에서, 평면 Π의 표면 법선 n
Figure pct00009
의 관계로 나타낼 수 있다. 식 (3)과 관련하여 아래에 설명되는 바와 같이, 표면 법선 n은 직접 추정될 수 있으며, 선행 관계를 사용하여 표면 법선 n으로부터 평면 파라미터 θ및
Figure pct00010
를 추정할 수 있다.
[0061] 도 2b는 개시된 주제의 일부 실시예들에 따라 도 2a의 구조화된 광 이미징 시스템에서 패턴 및 이미지 대응의 예시적인 표현을 도시한다. 도 2b에 도시된 바와 같이, 패턴 피처(프로젝터 패턴에서 박스에 의해 표현)와 패턴 피처에 대응하는 이미지 피처(카메라 이미지에서 박스에 의해 표현) 사이에 대응이 있다. 많은 통상의 구조화된 광 시스템들에서, 시스템은 패턴 피처들과 이미지 피처들 사이의 대응을 결정하려고 시도할 수 있으며 이러한 대응을 사용하여 삼각 측량에 의해 장면의 한 지점까지의 거리를 추정할 수 있다. 일부 실시예들에서, 본원에 설명된 메커니즘들은 패턴 피처가 투사된 평면 Π를 특징화할 수 있는 파라미터들을 직접 결정하려고 시도하기 위해 패턴 피처들과 카메라 피처들 사이의 잠재적 대응에 대한 정보를 사용할 수 있다.
[0062] 도 2c 및 도 2d는 개시된 주제의 일부 실시예들에 따라 도 2c의 이미지에 기록된 패턴 피처를 포함하는 패턴 및 패턴 피처를 포함하는 이미지의 예시적인 표현을 도시한다. 도 2c 및 도 2d에 도시된 바와 같이, z 축과 정확하게 정렬되지 않은 법선을 갖는 평면으로의 투사는 이미지 피처의 패턴 변형을 초래할 수 있다.
[0063] 도 3a 내지 도 3d는 장면의 평면 상에 투영되어 이미지에 기록된 패턴 피처의 일부에 대응하는 제1 라인 세그먼트, 이미지에 기록된 패턴 피처의 다른 부분에 대응하는 제2 라인 세그먼트의 예들을 도시하며, 제1 라인 세그먼트와 제2 라인 세그먼트 모두 함께 개시된 주제의 일부 실시예들에 따르며, 패턴의 라인 세그먼트는 라인 세그먼트와 에피폴라 라인들 사이의 정렬로 인해 축퇴 솔루션들을 생성하는 패턴 피처에 대응한다. 일반적으로, 구조화된 광 시스템들은 넓게 2 개의 카테고리들로 분류될 수 있다. 라인 스트라이핑(line striping), 바이너리 그레이 코딩(binary Gray coding) 및 정현 위상-시프팅(sinusoid phase-shifting)과 같은 다중-샷 기술들은 깊이 정보가 추정될 장면에 복수의 패턴들을 투사하고 각각의 패턴의 이미지를 캡처하는 것을 포함한다. 이러한 기술들은 높은 깊이-정밀도 3D 포인트 클라우드 데이터를 생성하는 데 사용될 수 있지만, 일반적으로 상이한 이미지 캡처들 간에 발생할 수 있는 시프트들로 인해 동적 장면들에는 적합하지 않다. 단일-샷 기술들은 단일 패턴만을 투사하는 것을 포함하고, 이는 장면 및/또는 카메라 모션이 있을 때 깊이 정보를 생성하는 데 단일-샷 기술들이 더 적합하게 만든다. 또한, 싱글 샷 기술들은 통상적으로 투사된 패턴들을 동적으로 변경하도록 구성된 전체 프로젝터에 의존하는 대신 단순하고 저렴한 단일-패턴 프로젝터들로 (예를 들어, 정적 마스크 또는 회절 광학 요소를 사용하여) 구현될 수 있다.
[0064] 일부 실시예들에서, 본원에 설명된 메커니즘들은 단지 단일한 투사된 패턴으로 조각별 평면 장면들의 깊이 및 표면 법선들 모두를 동시에 추정할 수 있는 단일-샷 기술을 구현하는 데 사용될 수 있다. 본원에 설명된 메커니즘들은 계산적으로(예를 들어, 비교적 단순하고 저렴한 알고리즘을 사용하여) 그리고 하드웨어적으로(예를 들어, 단일-샷 투사를 사용하여) 비교적 낮은 복잡도를 가진 카메라들을 사용하여 구현될 수 있다.
[0065] 평면인 장면의 일부에 대해(예를 들어, 조각별 평면 장면으로 특징화될 수 있는 장면에서), 투사된 패턴과 캡처된 이미지들의 대응하는 패치들의 쌍은 호모그래피(homography)를 통해 관련된다(패치들이 단일 평면 상에 있는 것으로 가정). 호모그래피는 호모그래피를 유도하는 3D 장면 평면의 파라미터를 고유하게 복구하기에 충분한 정보를 포함한다. 또한, 호모그래피는 직선들과 그 교차들을 유지한다. 예를 들어, 장면에 투사된 교차 라인들의 쌍은 이미지에서 교차 라인들의 쌍에 대한 맵을 얻는다.
[0066] 피처들의 희소한 세트를 갖는 패턴(예를 들어, 프로젝터 픽셀들의 작은 부분이 온(on))은 견고하고 상대적으로 빠른 대응 매칭을 용이하게 할 수 있다. 희소한 패턴은 또한 예를 들어, 패턴을 구현하기 위해 회절 광학 요소들의 사용을 통해 소스 전력 요건들을 잠재적으로 감소시킬 수 있다. 또한, 희소한 패턴은 조밀한 패턴을 갖는 SL 이미징에서 상당한 오류의 원인이 될 수 있는 다중-경로 간섭으로 인한 효과들을 완화할 수 있다. 그러나, 이전의 희소한 패턴들의 속성들과 해상도 사이에는 트레이드-오프가 있다. 희소한 단일-샷 패턴은 일반적으로 일반 장면(예를 들어, 주로 조각별 평면이 아닌 장면)에서 희소한 3D 재구성만을 달성할 수 있다. 일부 실시예들에서, 본원에 설명된 메커니즘들은 희소한 패턴들로도 비교적 적은 수의 지배적인 평면들을 갖는 조각별 평면 장면들에 대한 장면 기하 형태를 복구하는 데 사용될 수 있다.
[0067] 일부 실시예들에서, 공간적으로 분포된 동일한 피처들의 희소한 세트를 포함하는 패턴은 견고하고 상대적으로 빠르고 다중-경로 간섭에 견고한 단일-샷 SL 이미징을 용이하게 하는 데 사용될 수 있다. 일부 실시예들에서, 본원에 설명된 메커니즘들은 2 개의 교차하는 라인 세그먼트들을 포함하는 십자형 피처들을 포함하는 패턴을 사용하여 구현될 수 있다. 도 2d에 도시된 바와 같이, 일부 실시예들에서, 피처들은 에피폴라 라인과 45° 및 135°의 각도를 이루는 라인 세그먼트들을 포함할 수 있다(예를 들어, 도 2a와 관련하여 설명된 교정된 시스템에서, 에피폴라 라인들은 카메라 이미지 및 프로젝터 패턴의 행들을 따라 있음). 라인 세그먼트 각도들의 선택과 관련된 추가 상세 사항은 참조로 본원에 통합된 부록 A의 섹션 5에서 찾을 수 있다.
[0068] 이러한 십자형 피처들은 계산적으로 가벼운 알고리즘들로 견고한 로컬화 및 효율적인 평면 파라미터 추정을 용이하게 할 수 있다. 각도는 단지 예일 뿐이며, 다른 각도로 배치된 라인 세그먼트들이 사용될 수 있지만, 각도들의 다른 조합들은 특정 성능 특성의 감소를 야기할 수 있음에 유의한다. 예를 들어, 45°와 135°의 조합에서 너무 멀리 벗어나면 단일 패턴 투사만 사용하여 평면 파라미터들을 결정하는 것을 불가능하게 만들 수 있다. 예를 들어, 하나의 라인 세그먼트가 90°로 배치되면, 다른 라인 세그먼트의 각도와 관계없이, 패턴 피처 각도들
Figure pct00011
p에 대한 이미지 피처 각도들
Figure pct00012
c의 범위에 모호성이 있을 것이다. 이러한 예에서, 장면의 특정 평면들은 추가 정보 없이는 2 개의 라인 세그먼트들 간에 구별하기 어렵게 하는 2 개의 라인 세그먼트들 간의 모호성을 유발하는 방식으로 패턴으로 하여금 배향을 변경하게 할 수 있다. 특정 예에서, 이러한 추가 정보는 일정한 방식으로 (예를 들어, 상이한 컬러들을 사용, 상이한 라인 폭들을 사용, 화살표 등과 같은 하나 이상의 라인 세그먼트들에 장식 추가) 2 개의 라인 세그먼트들을 구별함으로써 제공될 수 있다. 또 다른 특정 예에서, 이러한 추가 정보는 상이한 패턴들로 복수의 이미지들을 캡처함으로써 제공될 수 있다. 그러나, 추가 정보를 이용하는 것은 비용이 든다(예를 들어, 추가 정보를 통합하기 위해 더 많은 계산 복잡성이 필요함). 일부 실시예들에서, 패턴 피처들은 해당 각도들이 동일하지 않는 한, 에피폴라 라인과 1° 내지 90° 범위의 각도를 이루는 제1 라인 세그먼트, 및 에피폴라 라인과 90° 내지 179° 범위의 각도를 이루는 제2 라인 세그먼트를 포함할 수 있다. 일부 실시예들에서, 패턴 피처들은 에피폴라 라인과 10° 내지 80° 범위의 각도를 이루는 제1 라인 세그먼트 및 에피폴라 라인과 100° 내지 170° 범위의 각도를 이루는 제2 라인 세그먼트를 포함할 수 있다. 일부 실시예들에서, 패턴 피처들은 에피폴라 라인과 20° 내지 70° 범위의 각도를 이루는 제1 라인 세그먼트 및 에피폴라 라인과 110° 내지 160° 범위의 각도를 이루는 제2 라인 세그먼트를 포함할 수 있다. 일부 실시예들에서, 패턴 피처들은 에피폴라 라인과 30° 내지 60° 범위의 각도를 이루는 제1 라인 세그먼트 및 에피폴라 라인과 120° 내지 150° 범위의 각도를 이루는 제2 라인 세그먼트를 포함할 수 있다. 일부 실시예들에서, 패턴 피처들은 에피폴라 라인과 35° 내지 55° 범위의 각도를 이루는 제1 라인 세그먼트 및 에피폴라 라인과 125° 내지 145° 범위의 각도를 이루는 제2 라인 세그먼트를 포함할 수 있다. 일부 실시예들에서, 패턴 피처들은 에피폴라 라인과 40° 내지 50° 범위의 각도를 이루는 제1 라인 세그먼트 및 에피폴라 라인과 130° 내지 140° 범위의 각도를 이루는 제2 라인 세그먼트를 포함할 수 있다.
[0069] 도 3a 및 도 3b에 도시된 바와 같이, 패턴 피처 P는 관계
Figure pct00013
에 의해 설명될 수 있으며, 여기서 도 3c에 도시된 바와 같이 v p u p 는 2 개의 라인 벡터들이고 p p v p u p 의 교차점이다. 이에 대응하여, 이미지 피처 I은
Figure pct00014
에 의해 설명될 수 있으며, 여기서 v c u c 는 각각 v p u p 에 대응하는 라인 벡터들이고 p c v c u c 의 교차점이다. 또한, 다음 설명에서 투사된 피처 P가 단일 장면 평면 Π 내에 있고, 피처가 카메라에 대해 완전히 보이게 되는 것으로 가정된다.
[0070] P와 I의 요소들은 프로젝터와 카메라의 좌표계(즉, 각각 PCS 및 CCS)에서 정의될 수 있다. 예를 들어, 패턴 피처 P = {u p , v p , p p }에 대해, 요소들은 아래와 같이 정의될 수 있다.
Figure pct00015
(1)
마찬가지로, 대응하는 이미지 피처
Figure pct00016
에 대해, 요소들은 아래와 같이 정의될 수 있다.
Figure pct00017
(2)
[0071] 대응하는 P와 I의 쌍이 정확하게 식별될 수 있어 패턴 피처와 이미지 피처 사이의 대응이 알려지면, 평면 파라미터들은 도 3a 내지 도 3c에 도시된 바와 같이 기본 기하 형태에 의해 분석적으로 복구될 수 있다. 예를 들어, 각각의 십자형 피처 대응은 2 개의 라인 대응 {u c , u p } 및 {v c , v p }를 제공할 수 있으며, 이는 각각 2 개의 3D 라인 벡터들 l u l v 를 추정하기 위해 삼각 측량될 수 있다. 평면 Π는 이러한 2 개의 3D 라인들에 의해 완전히 정의될 수 있으며 l u l v 의 추정치로부터 추정될 수 있다. 예를 들어, Π의 표면 법선 n은 다음 관계를 사용하여 추정할 수 있다:
Figure pct00018
(3)
PCS에서 패턴 피처를 나타낼 수 있는 {u p , v p , p p } 요소들은 CCS 또는 WCS로 피처들을 변환하지 않고 식 (3)에서 사용될 수 있음에 유의한다. 다른 예로서, c c 로부터 Π까지의 최단 거리 D는 다음 관계를 사용하여 추정될 수 있다:
Figure pct00019
(4)
또 다른 예로서, n 및 D에 대해 추정된 값으로, p c 에 대한 깊이 d는 다음 관계를 사용하여 추정될 수 있다:
Figure pct00020
(5)
식 (3) 내지 (5)의 도출과 관련된 추가적인 상세 사항들은 부록 A의 섹션 1에서 찾을 수 있으며, 이는 그 전체가 참조로 본원에 통합된다.
[0072] 라인 대응 {u c , u p } 또는 {v c , v p }가 에피폴라 라인과 동일 선상에 있는 경우, 도 3d에 도시된 바와 같이 축퇴 솔루션을 야기할 수 있음에 유의한다. 일부 실시예들에서, 에피폴라 라인들과 정렬되지 않은 라인 세그먼트들을 갖는 패턴 피처들을 선택함으로써 축퇴 솔루션들을 피할 수 있다.
[0073] 도 4aa는 개시된 주제의 일부 실시예들에 따라 패턴 피처들의 균일하게 분포된 패턴, 대응하는 이미징된 패턴 피처들, 이미징된 패턴 피처 I1과 동일한 에피폴라 라인 상의 각각의 패턴 피처에 대한 Π 공간의 평면 파라미터 로커스들을 도시하고, 도 4ab는 개시된 주제의 일부 실시예들에 따라 이미징된 패턴 피처들 I1 및 I2에 대한 Π 공간에서 중첩하는 로커스들의 예를 도시한다. 도 4ba는 개시된 주제의 일부 실시예들에 따라 패턴 피처들의 불균일하게 분포된 패턴, 대응하는 이미징된 패턴 피처들 및 이미징된 패턴 피처 I1과 동일한 에피폴라 라인 상의 각각의 패턴 피처에 대한 Π 공간에서의 평면 파라미터 로커스들의 예를 도시하고, 도 4bb는 개시된 주제의 일부 실시예들에 따라 두 패턴 피처들 상으로의 평면의 Π의 실제 값에서만 중첩되는 이미징된 패턴 피처들 I1 및 I2에 대한 Π 공간에서의 로커스들의 예를 도시한다.
[0074] 도 3a 내지 도 3c와 관련하여 상술한 바와 같이, 피처 대응이 알려져 있으면, 평면 파라미터들은 식 (3) 및 (4)를 사용하여 추정될 수 있다. 그러나, 동일한 패턴 피처가 패턴 전반에 걸쳐 반복적으로 사용되는 경우, 피처 대응을 고유하게 결정하기 어려울 수 있다. 일부 실시예들에서, 대응들은 패턴의 각각의 에피폴라 라인 상에 단일 피처만을 배치함으로써 결정될 수 있다. 에피폴라 라인들이 카메라 이미지 센서 및 패턴 프로젝터의 행들과 정렬되는 경우(예를 들어, 도 2a와 관련하여 상술한 교정된 시스템의 경우), 각 행이 단일 피처만을 포함하면 대응들이 정확하게 추정될 수 있다. 이러한 실시예들에서, 각각의 이미지 피처에 대해, p p 가 카메라 행의 함수이기 때문에 대응은 사소하게 계산될 수 있다. 그러나, 행 당 단일 패턴 피처만 사용하면 패턴 피처들의 최대 수를 패턴 및/또는 이미지 센서의 행들의 수로 제한하며, 이는 각각의 장면 평면이 피처에 의해 조명될 가능성을 감소시킬 수 있다. 이는 피처들이 복수의 행들에 걸쳐 있기 때문에 도 2d 및 도 3a 내지 도 3c와 관련하여 상술한 십자형 피처들로 추가로 제한될 수 있으며, 이는 충돌들을 피하기 위해 패턴 피처들을 에피폴라 라인들의 서브세트에만 배치하는 것을 필요로 할 수 있다.
[0075] 일부 실시예들에서, 각각의 에피폴라 라인 상에 복수의 패턴 피처들을 갖는 패턴은 패턴 피처들의 밀도를 증가시키며, 이는 각각의 장면 평면이 피처에 의해 조명될 가능성을 증가시킬 수 있다. 이러한 접근법은 피처 밀도를 증가시킬 수 있지만, 이러한 패턴은 각각의 에피폴라 라인 상에 복수의 동일한 피처들을 포함하여, 대응 결정을 시도할 때 모호성으로 이어진다. 이는 추가 정보 없이 및/또는 종종 계산 집약적인 최적화를 필요로 하는 복잡한 글로벌 추론 기술들을 사용하지 않고 정확한 장면 대응들을 결정하는 것을 어렵게 만들 수 있다. 이것은 상대적으로 낮은 계산 비용으로 장면 대응을 정확하게 결정하는 것과 장면에서 평면들을 식별하는 것 사이의 트레이드-오프를 제시하는 것으로 보인다.
[0076] 일부 실시예들에서, 본원에 설명된 메커니즘들은 이미지 피처들과 패턴 피처들 사이의 대응들을 명시적으로 계산하지 않고 평면 파라미터들을 추정함으로써 이러한 명백한 트레이드-오프를 적어도 부분적으로 피할 수 있다. 도 4aa 및 도 4ba에 도시된 바와 같이, 투사된 패턴의 하나의 에피폴라 라인 상의 패턴 피처들의 세트는 {P1,..., PN}로 정의될 수 있다. 적어도 이러한 피처들의 서브세트가 카메라 이미지에 매핑되어, {I1,..., IM}(M ≤ N)으로 정의될 수 있는 이미지 피처들의 세트를 초래한다.
[0077] 도 4aa의 예에서, N 개의 패턴 피처들 모두 {P1,..., PN}가 동일하기 때문에, 각각의 패턴 피처들은 이미지 피처 I1에 대한 후보 매칭 피처이다. 식 (3) 및 (4)와 관련하여 상술한 바와 같이, 각각의 후보 패턴 피처는 해당 피처를 이미지 피처 I1과 삼각 측량하여 평면 가정
Figure pct00021
를 추정하는 데 사용될 수 있다. 따라서, 모든 후보 패턴 피처들의 세트 {P1,..., PN}는 평면 가정들의 세트
Figure pct00022
를 생성하는 데 사용될 수 있으며, 여기서
Figure pct00023
은 I1 및 Pn으로부터 계산된 평면 파라미터이다. 각각의 평면 가정은 도 4aa 및 도 4ba의 가장 우측 부분에 도시된 바와 같이, 3D 평면 파라미터 공간(본원에서 때로는 Π 공간으로 지칭)의 지점으로서 표현될 수 있다. 평면 가정들의 세트
Figure pct00024
은 Π 공간에서 평면 파라미터 로커스를 정의할 수 있다. 유사하게, 다른 평면 파라미터 로커스
Figure pct00025
은 I2와 {P1,..., PN}를 페어링함으로써 정의될 수 있고, 각각의 이미지 피처 {I1,..., IM}에 대해서도 같다.
[0078] I1과 I2가 동일한 장면 평면의 장면 지점들에 대응하는 경우, 2 개의 로커스들 Λ1과 Λ2는 교차해야 한다. 2 개의 로커스들이 파라미터 공간의 고유한 위치
Figure pct00026
에서 교차하면,
Figure pct00027
는 공통 장면 평면의 파라미터들을 나타낸다.
[0079] Π 공간에서 로커스들 사이의 이러한 교차는 명시적 대응 추정을 필요로 하지 않고 상대적으로 낮은 계산 비용을 갖는 평면 추정을 위한 투표-기반 접근법에서 활용될 수 있다. 일부 실시예들에서, 본원에 설명된 메커니즘들은 상술한 바와 같이 각각의 검출된 이미지 피처에 대해 평면 파라미터 로커스
Figure pct00028
을 추정할 수 있다. 로커스는 특정 피처와 관련하여 캐스팅된 후보 평면들에 대한 투표를 나타내는 데 사용될 수 있다. 일부 실시예들에서, 본원에 설명된 메커니즘들은 모든 검출된 이미지 피처들에 대한 파라미터 로커스들을 수집할 수 있고, 플롯팅된 모든 이미지 피처들로부터의 로커스들을 갖는 Π 공간은 주어진 이미지 피처들에서 장면 평면들의 가능성 분포로 고려될 수 있다. 도 7a 및 도 7b는 2 개의 조각별 평면 장면들에 대한 Π 공간의 예들을 도시한다. 일부 실시예들에서, 본원에 설명된 메커니즘들은 Π 공간에서 지배적인 로컬 피크들을 식별함으로써 지배적인 장면 평면들의 평면 파라미터들을 추정할 수 있다. 주어진 로컬 피크에 대해, 본원에 설명된 메커니즘들은 피크에 대응하는 평면을 갖는 피크에 대응하는 후보 평면을 포함한 평면 파라미터 로커스와 모든 이미지 피처들을 연관시킨다. 투표-기반 컨텍스트에서 설명하면, 피크를 포함한 평면 파라미터 로커스를 갖는 각각의 이미지 피처는 피크에 투표한 것으로 설명될 수 있다. 일부 실시예들에서, 이러한 이미지 피처들에 대해, 깊이 및 표면 법선 값들은 식 (3) 내지 (5)와 관련하여 상술한 바와 같이 평면-광선 교차에 의해 계산될 수 있다.
[0080] 이러한 접근법은 통상의 허프(Hough) 변환-기반 평면 추정과 일부 유사점들을 공유하지만, 몇 가지 핵심적인 차이점들이 있다. 예를 들어, 통상의 허프 변환-기반 평면 추정에서, 평면들은 이를 통과하는 모든 후보 평면들에 대한 각각의 3D 지점 투표로 3D 지점들로부터 추정된다. 대조적으로, 상술한 투표-기반 접근법은 2D 이미지 피처들을 사용하여 후보 평면들에 대해 직접 투표하여, 잠재적으로 비용이 많이 드는 포인트 클라우드 생성을 피한다. 다른 예로서, 통상의 허프 변환-기반 평면 추정에서, 각각의 3D 지점은 잠재적인 평면의 조밀한 세트(즉, 2D 세트)에 투표한다. 포인트 클라우드에 있는 다수의 3D 지점과 관련하여 고려될 때, 이는 많은 계산 및 메모리 비용을 초래할 수 있다. 상술한 투표-기반 접근법에서는, 피처들의 희소한 세트가 사용되며, 각 이미지 피처는 후보 평면들의 작고 이산적인 세트에 투표한다(예를 들어, 도 7a 내지 도 10b와 관련하여 후술하는 시뮬레이션들 및 실험들에서 각각의 이미지 피처에 대해 10 개 미만의 후보 평면들이 사용되었음). 이는 상당히 더 낮은 계산 비용을 초래한다. 예를 들어, 본원에 설명된 메커니즘들은 통상의 허프 변환-기반 평면 추정의 비용보다 (장면 평면들을 추정하는 데 필요한 데이터 지점들의 수 측면에서) 최대 100배 더 낮은 계산 비용들로 장면에서 평면들을 추정할 수 있다. 또한, 장면에서 지배적인 평면들의 수가 감소함에 따라 절약이 증가한다.
[0081] 위의 투표-기반 접근법의 설명은 동일한 세계 평면에 대응하는 상이한 이미지 피처들에 대한 평면 파라미터 로커스들이 고유한 위치에서 교차한다고 가정한다. 예를 들어, 카메라 에피폴라 라인 상의 모든 피처들에 대한 로커스들이 몇몇 위치들에서 중첩되는 경우, 추가 정보 없이 고유한 평면 파라미터들을 식별할 수 없다. 예를 들어, 도 4ab에 도시된 바와 같이, 복수의 이미지 피처들에 대한 로커스들이 복수의 동일한 크기의 피크들을 생성하는 경우, 이미지 피처들이 모두 놓여 있는 평면의 평면 파라미터들에 대해 여전히 모호성이 존재한다. 복수의 이미지 피처들에 대한 로커스들이 단일 피크를 생성하는 경우, 이러한 모호성이 해결된다. 따라서, 상술한 투표-기반 접근법이 일반 장면에서 유용하게 되기 위해서는, 패턴이 평가되어 앞의 가정이 유효한지 여부를 결정해야 한다.
[0082] 로커스들이 고유한 위치에서 교차한다는 앞의 가정이 유효한지 여부를 결정하는 데 유용할 수 있는 평면 파라미터 로커스들의 2 개의 기하학적 속성들이 있다. 예를 들어, 동일한 에피폴라 라인 상의 이미지 피처와 패턴 피처들의 세트의 페어링에 기초하는 평면 파라미터 로커스
Figure pct00029
의 제1 속성은 로커스가 언제나 파라미터 공간에서
Figure pct00030
= 0(방위각) 평면에 평행한 평면 상에 있다는 것이다. 이러한 속성의 도출과 관련된 추가적인 상세 사항들은 부록 A의 섹션 3에서 찾을 수 있으며, 이는 그 전체가 참조로 본원에 통합된다.
[0083] 다른 예로서, 특정 평면 파라미터 로커스
Figure pct00031
의 제2 속성은 Λi의 요소들의 위치들이 상대 거리 Dμ의 세트만의 함수라는 것이다. 예를 들어, 평면 파라미터 로커스 Λm은 이미지 피처 Im과 패턴 피처 {P1,..., PN}에 의해 생성된 파라미터 로커스인
Figure pct00032
으로서 정의될 수 있다.
Figure pct00033
이 Im의 실제 대응하는 패턴 피처의 세트이고, dμn이 패턴 에피폴라 라인 상의 패턴 피처들 Pμ와 Pn 사이의 거리인 경우, Am의 요소들의 위치들은 실제 패턴 피처와 후보 패턴 피처 사이의 상대 거리들의 세트
Figure pct00034
만의 함수이다. 이러한 속성의 도출과 관련된 추가적인 상세 사항들은 부록 A의 섹션 3에서 찾을 수 있으며, 이는 그 전체가 참조로 본원에 통합되었다.
[0084] 제1 속성은 대응들을 계산하거나 Π 공간에서 피크 위치를 결정하지 않고(예를 들어, 투표를 수행하지 않고) 단일 파라미터 로커스로부터 평면 법선의 방위각을 복구할 수 있음을 의미한다. 도 4aa 및 도 4ba에 도시된 바와 같이, 로커스 Λ1의 각각의 후보 평면 파라미터 Π1n
Figure pct00035
= 0에 평행한 평면 상에 있음을 도시한다. 모든 파라미터 로커스가
Figure pct00036
= 0 평면에 평행하기 때문에(
Figure pct00037
= 0은 로커스에 걸쳐 일정함), 파라미터 로커스들은 도 4ab 및 도 4bb에 도시된 바와 같이, 2D D/θ 공간으로 표현될 수 있다. 동일한 D와 θ, 그리고 상이한
Figure pct00038
를 갖는 평면들 간에 구별할 때 전체 3D Π 공간이 필요함에 유의한다.
[0085] 제2 속성은 패턴 피처들이 에피폴라 라인 상에 균일하게 이격되어 있으면 도 4ab에 도시된 바와 같이 결과적인 로커스들이 상당히 중첩될 것임을 의미한다. 패턴이 에피폴라 라인 당 2 개의 패턴 피처들을 갖는 예에서, 2 개의 이미지 피처들이 있는 경우 2 개의 로커스들 사이에 고유한 중첩이 예측될 수 있음에 유의한다. 그러나, 에피폴라 라인 상에 하나의 이미지 피처만 있는 경우(예를 들어, 장면 기하 형태가 다른 패턴 피처의 이미징을 금지하는 경우), 모호성을 유발하는 단일 로커스만 있다. 이는 다음과 같은 이유 때문이다: 균일하게 이격된 패턴에 대해(예를 들어, 도 4aa에 도시된 바와 같이), 2 개의 별개의 패턴 피처들에 대한 상대 거리들의 세트 Dμ는 몇몇 공통 값들을 공유할 것으로 예측될 수 있다. 대응하는 이미지 피처들의 파라미터 로커스들의 요소들은 상대적인 거리들의 세트에 의해서만 결정되기 때문에, 로커스들은 또한 공통 위치들을 공유할 것으로 예측될 수 있다. 이것은 축퇴의 경우가 아니며; 균일하게 이격된 패턴들의 경우, 장면에 관계없이, 로커스들이 언제나 큰 중첩들을 가질 것으로 예측될 수 있으며, 이는 고유한 교차들을 찾는 것을 불가능하게 만든다는 것에 유의한다.
[0086] 균일하게 이격된 패턴 피처들에 의해 야기될 수 있는 모호성에 비추어, 일부 실시예들에서, 본원에 설명된 메커니즘들은 각각의 에피폴라 라인에 걸쳐 불균일하게 이격된 피처들을 포함하는 패턴을 이용할 수 있다. 불균일한 이격을 갖는 패턴의 일부의 예가 도 4ba에 도시되어 있으며, 도 7a, 도 7b, 도 8a 및 도 9a에 존재한다. 도 4ba에서, N 개의 패턴 피처들 {P1,..., PN}는 에피폴라 라인 상에 불균일하게 분포되며, 패턴 피처들의 M(M ≤ N)은 이미지 피처들 {I1,..., IM}로서 이미지에 포함된다. 에피폴라 라인 상에 연속적인 패턴 피처들 사이의 동일하지 않은 간격을 갖는 패턴들에 대해, 파라미터 로커스들은 실제 평면 파라미터를 제외하고는 중첩되지 않을 것으로 예측될 수 있다. 이러한 현상의 예가 도 4bb의 예에 도시되어 있다. 이는 이미지 피처들과 패턴 피처들 사이의 알려지지 않은 대응들로도(즉, 대응들을 명시적으로 결정하려고 시도하지 않고) 평면 파라미터들의 추정을 용이하게 할 수 있다.
[0087] 도 7a 내지 도 10b와 관련하여 아래에 설명된 시뮬레이션들 및 실험들에서, 4 개의 패턴 피처들이 각각의 에피폴라 라인 상에 불균일하게 배치되어, 인접한 패턴 피처들 사이의 거리가 h 픽셀들만큼 감소되었다. 에피폴라 라인 추정의 오류들의 가능성을 감소시키기 위해, 패턴의 모든 k번째 에피폴라 라인 상에 피처들이 배치되었다. 도 7a 내지 도 7b와 관련하여 후술하는 시뮬레이션들에서, h = 6 및 k = 3의 값들이 사용되었다. 도 8a 내지 도 10b와 관련하여 후술하는 실험들에서, h = 10 및 k = 6의 값들이 사용되었다. 결과적인 패턴들은 또한 부록 A의 섹션 5에도 예시되어 있으며, 이는 참조로 본원에 통합되었다. 그러나, 이는 단지 예일 뿐이며, 다른 파라미터들을 사용하여 패턴 피처들 사이의 간격을 변경할 수 있다. 예를 들어, 인접한 패턴 피처들 사이의 간격을 h 픽셀들만큼 감소시키는 대신, 거리는 h 픽셀들만큼 증가될 수 있다. 다른 예로서, 패턴을 구성할 때 h와 k의 다른 값들이 사용될 수 있다. 다른 예로서, 전체 패턴에 걸쳐 일관되게 인접한 패턴 피처들 사이에 h 픽셀들만큼 증가 또는 감소하는 대신, 일부 에피폴라 라인들 상의 패턴들의 세트들은 증가하는 패턴 간격을 가질 수 있고(예를 들어, 인접한 패턴 피처들 사이의 h 픽셀들만큼), 다른 에피폴라 라인들의 패턴들의 세트들은 감소하는 패턴 간격을 가질 수 있다(예를 들어, 인접한 패턴 피처들 사이의 h 픽셀들만큼). 보다 특정한 예에서, 패턴들의 제1, 제3, 제5 등의 세트는 좌측으로부터 우측으로 간격이 증가할 수 있고, 패턴들의 제2, 제4, 제6 등의 세트는 좌측으로부터 우측으로 간격이 감소할 수 있으며, 그 반대도 마찬가지이다. 또 다른 예로서, 패턴들 사이의 간격은 라인마다 다른 방식으로 변할 수 있다. 보다 특정한 예에서, 간격은 간격을 변경하기 위해 단일 파라미터 h를 사용하는 대신, 함수에 기초하거나(예를 들어, 의사 랜덤 함수) 랜덤하게(예를 들어, 마스크 또는 회절 요소가 설계될 때 결정되거나, 각각의 이미지를 캡처하기 전에 결정되거나, 또는 임의의 다른 적절한 시간에 결정) 변할 수 있다.
[0088] 일부 실시예들에서, 본원에 설명된 메커니즘들은 임의의 적절한 기술 또는 기술들의 조합을 사용하여 십자형 이미지 피처들을 로컬화할 수 있다. 예를 들어, Harris 등의 "조합된 모서리 및 에지 검출기(A Combined Corner and Edge Detector)," Alvey Vision Conference, vol. 15, pp. 147-151 (1988)이 있으며, 이는 그 전체가 본원에 참조로 통합된다. 보다 특정한 예에서, 이러한 기술들은 씨닝(thinning) 형태학적 연산을 후에 적용될 수 있다(예를 들어, Lam 등의 "씨닝 방법론 - 전반적인 조사(Thinning Methodologies - A Comprehensive Survey)", IEEE Transactions on Pattern Analysis and Machine Intelligence, Vol. 14, No. 9, 페이지 879(1992)에 설명되어 있으며, 이는 그 전체가 참조로 본원에 통합됨).
[0089] 일부 실시예들에서, 2 개의 카메라 프레임들이 빠르게 연속적으로 캡처될 수 있으며, 하나는 투사된 패턴을 갖고 다른 하나는 투사된 패턴을 갖지 않는다. 이러한 실시예들에서, 본원에 설명된 메커니즘들은 패턴화된 이미지와 패턴화되지 않은 이미지 사이의 차이를 취할 수 있으며, 이는 패턴 피처들이 투사되는 장면의 부분들을 강조할 수 있다. 예를 들어, 패턴화된 이미지와 패턴화되지 않은 이미지를 캡처하여 강한 텍스처 및/또는 조명 변화들을 갖는 장면들에서 패턴 피처들이 보다 신뢰성 있게 복구될 수 있다. 그러나, 이것은 단지 예일 뿐이며, 평면 복구를 위해 단일 이미지가 사용될 수 있지만, 텍스처 및/또는 조명 변화의 양이 증가함에 따라 덜 정확한 추정치들을 초래할 수 있다.
[0090] 일부 실시예들에서, 본원에 설명된 메커니즘들은 이미지 피처(예를 들어, u c v c )의 라인 세그먼트들을 추정할 수 있다. 프로젝터/카메라 디포커스 블러(defocus blur)에 대한 견고성을 위해, 본원에 설명된 메커니즘들은 각각의(가능하게는 흐려진) 라인 세그먼트로부터 2 개의 에지들(예를 들어, 포지티브 및 네거티브 그래디언트들)을 추출할 수 있고, 특정 라인 세그먼트를 추정하기 위해 2 개의 에지들의 평균을 계산할 수 있다. 이러한 연산들은 닫힌 형태의 솔루션을 가지고 있기 때문에, 이러한 연산들은 상대적으로 적은 계산 비용으로 그리고 상대적으로 빠르게 수행될 수 있다. 일부 실시예들에서, 본원에 설명된 메커니즘들은 2 개의 라인 세그먼트 및 라인 세그먼트들의 교차점 p c 로부터 이미지 피처 I={u c , v c , p c }를 추정할 수 있다.
[0091] 도 5는 개시된 주제의 일부 실시예들에 따라 구조화된 광을 사용하여 장면에서 평면 표면들을 직접 복구하기 위한 시스템의 예를 도시한다. 도 5에 도시된 바와 같이, 시스템(500)은 구조화된 광원(502); 이미지 센서(504); 광학계(506)(예를 들어, 렌즈, 필터 등을 포함할 수 있음); 임의의 적절한 하드웨어 프로세서(예를 들어, 마이크로프로세서, 디지털 신호 프로세서, 마이크로컨트롤러, 이미지 프로세서, GPU 등, 이들 중 하나 이상은 프로그래밍 가능 게이트 어레이(FPGA: programmable gate array) 또는 주문형 집적 회로(ASIC: application specific integrated circuit)를 사용하여 구현될 수 있음) 또는 하드웨어 프로세서들의 조합을 포함할 수 있는 시스템(500)의 동작들을 제어하기 위한 프로세서(508); 사용자 및/또는 환경으로부터의 입력을 수용하기 위한 (셔터 버튼, 메뉴 버튼, 마이크로폰, 터치스크린 등과 같은) 입력 디바이스(510); 메모리(512); 구조화된 광원(502)을 구동하기 위한 하나 이상의 변조 신호들을 생성하기 위한 신호 생성기(514)(예를 들어, 광원(502)이 단일 고정 패턴이 아닌 임의의 패턴들을 생성하도록 구성된 경우); 및 프로세서(508)와 자동화 시스템(예를 들어, 자동화된 산업 검사 시스템, 자동화된 제조 시스템, 자율 차량 등), 반자동화 시스템, 스마트폰, 웨어러블 컴퓨터, 태블릿 컴퓨터, 랩탑 컴퓨터, 개인용 컴퓨터, 게임 콘솔, 서버 등과 같은 다른 디바이스들 사이에서 통신 링크를 통해 통신을 허용하기 위한 통신 시스템 또는 시스템들(516)을 포함할 수 있다.
[0092] 일부 실시예들에서, 메모리(512)는 이미지 센서(504)에 의해 출력된 픽셀 값들, 이미지 센서(504)로부터의 출력에 기초하여 계산된 평면 파라미터 로커스들 등을 저장할 수 있다. 메모리(512)는 프로세서(508)를 제어하기 위한 컴퓨터 프로그램을 저장하기 위한 저장 디바이스(예를 들어, 하드 디스크, 솔리드 스테이트 드라이브, 블루-레이(Blu-ray) 디스크, 디지털 비디오 디스크(DVD: Digital Video Disk), RAM, ROM, EEPROM 등)를 포함할 수 있다. 일부 실시예들에서, 메모리(512)는 프로세서(508)로 하여금 도 6과 관련하여 후술되는 프로세스들과 같이 본원에 설명된 메커니즘들과 연관된 프로세스들을 실행하게 하기 위한 명령어들을 포함할 수 있다.
[0093] 일부 실시예들에서, 광원(502)은 장면(520)을 향해 패턴화된 광을 방출하도록 구성될 수 있는 임의의 적절한 광원일 수 있다. 일부 실시예들에서, 광원(502)은 하나 이상의 점광원들(예를 들어, 레이저 다이오드, LED 등) 및 하나 이상의 마스크들(예를 들어, 투명성, 회절 광학 요소 등)을 사용하여 구현될 수 있다. 이러한 일부 실시예들에서, 광원(502)은 고정 마스크, 회절 광학 요소를 통해 그리고 장면 상으로 전달되는 광을 생성하는 하나 이상의 발광 다이오드(LED: light emitting diode)들, 하나 이상의 레이저 다이오드들, 하나 이상의 램프들 및/또는 임의의 다른 적절한 광원을 포함할 수 있으며, 이에 의해 장면의 객체들 상에 투사되는 패턴 피처들의 특정 패턴을 생성한다.
[0094] 추가적으로 또는 대안적으로, 일부 실시예들에서, 광원(502)은 신호 생성기(516)로부터 수신된 변조 신호(예를 들어, M(x))에 따라 장면(520)을 향해 패턴화된 광을 방출하도록 구성될 수 있다. 예를 들어, 광원(502)은 변조 신호에 의해 특정된 특정 패턴을 생성하기 위해 선택적으로 활성화되거나 그렇지 않으면 변조될 수 있는 하나 이상의 발광 다이오드(LED)들, 하나 이상의 레이저 다이오드들, 하나 이상의 램프들, 및/또는 임의의 다른 적절한 광원을 포함할 수 있다. 일부 실시예들에서, 광원(502)은 임의의 적절한 파장 또는 파장들의 조합에서 광을 방출할 수 있다. 예를 들어, 광원(502)은 가시광, 근적외선(NIR: near-infrared) 광 등을 방출할 수 있다. 일부 실시예들에서, 광원(502)은 (예를 들어, 십자형 패턴 피처들을 생성하기 위해) 복수의 차원들을 따라 변하는 패턴을 갖는 광을 방출하도록 구성될 수 있다. 예를 들어, 광원(502)은 하나 이상의 투과 광 결정 기술들 변조, 하나 이상의 반사 액정 온(on) 실리콘 변조 기술들, 하나 이상의 디지털 광 프로세싱(DLP: digital light processing) 변조 기술(예를 들어, 장면을 향해 광을 방출하거나 광이 장면을 향해 방출되는 것을 억제하도록 선택적으로 배향될 수 있는 마이크로 미러들을 사용)을 사용하는 공간 광 변조기를 포함할 수 있다(또는 이와 연관될 수 있음). 일부 실시예들에서, 광원(502)은 장면(520)의 복수의 차원들에 걸쳐 다양한 강도의 특정 패턴을 생성하기 위해 제어될 수 있는(예를 들어, 개별적으로 어드레싱되거나, 열(column)에 의해 어드레싱되는 등) 광원들(예를 들어, LED들, 레이저 다이오드들 등)의 어레이를 포함할 수 있다. 일부 실시예들에서, 광원(502)은 장면에 걸쳐 스캔될 때 강도를 변경하도록 제어되는 스캐닝 레이저 빔을 사용하여 구현될 수 있다.
[0095] 일부 실시예들에서, 이미지 센서(504)는 CCD 이미지 센서, CMOS 이미지 센서 등과 같이 장면(520)에 의해 반사된 광을 수신할 수 있는 임의의 적절한 이미지 센서일 수 있다.
[0096] 일부 실시예들에서, 광학계(506)는 장면(520)으로부터 수신된 광을 포커싱하기 위한 광학계, 광원(502)에 의해 방출된 광의 파장 주위에 집중된 하나 이상의 대역 통과 필터(예를 들어, 협대역 통과 필터), 임의의 다른 적절한 광학계 및/또는 이들의 임의의 적절한 조합을 포함할 수 있다. 일부 실시예들에서, 이미지 센서(504)의 전체 영역에 대해 단일 필터가 사용될 수 있고/있거나 이미지 센서(504)의 더 작은 영역(예를 들어, 개별 픽셀 또는 픽셀들의 그룹들)과 각각 연관된 복수의 필터들이 사용될 수 있다.
[0097] 일부 실시예들에서, 신호 생성기(514)는 변조 신호를 사용하여 광원(502)을 제어하기 위해 신호들을 생성할 수 있는 하나 이상의 신호 생성기들일 수 있다. 광원(502)과 관련하여 상술한 바와 같이, (예를 들어, 고정 마스크 또는 회절 광학 요소가 사용되는) 일부 실시예들에서, 변조 신호는 광원(502)이 활성화되는지 또는 활성화되지 않는지를 (예를 들어, 이진 신호를 사용하여) 나타내는 신호일 수 있다. 대안적으로, (예를 들어, 프로젝터가 상이한 패턴들을 생성할 수 있는) 일부 실시예들에서, 변조 신호는 선택된 패턴을 인코딩하는 신호일 수 있다. 단일 신호 생성기가 도 5에 도시되어 있지만, 임의의 적절한 개수의 신호 생성기들이 일부 실시예들에서 사용될 수 있다. 추가로, 일부 실시예들에서, 신호 생성기(514)는 장면(예를 들어, 장면(520)) 상으로의 광의 공간적으로 변하는 투사를 제어하는 데 사용될 수 있는 신호를 출력하도록 각각 구성된 임의의 적절한 개수의 특수 아날로그 회로들을 사용하여 구현될 수 있다.
[0098] 일부 실시예들에서, 시스템(500)은 통신 시스템(들)(516) 및 통신 링크를 사용하여 네트워크를 통해 원격 디바이스와 통신할 수 있다. 추가적으로 또는 대안적으로, 시스템(500)은 자동화 시스템, 반자동 시스템, 보안 시스템, 스마트폰, 태블릿 컴퓨터, 랩탑 컴퓨터 등과 같은 다른 디바이스의 일부로서 포함될 수 있다. 시스템(500)의 일부들은 시스템(500)이 통합된 디바이스와 공유된다. 예를 들어, 시스템(500)이 자동화된 산업 검사 시스템과 통합되는 경우, 프로세서(508)는 자동화 시스템의 프로세서일 수 있고 시스템(500)의 동작을 제어하는 데 사용될 수 있다.
[0099] 일부 실시예들에서, 시스템(500)은 임의의 다른 적절한 디바이스와 통신할 수 있으며, 여기서 다른 디바이스는 컴퓨터와 같은 범용 디바이스 또는 클라이언트, 서버 등과 같은 특수 목적 디바이스 중 하나일 수 있다. 이러한 임의의 범용 또는 특수 목적 디바이스들은 하드웨어 프로세서(마이크로프로세서, 디지털 신호 프로세서, 제어기 등일 수 있음), 메모리, 통신 인터페이스들, 디스플레이 제어기들, 입력 디바이스들 등과 같은 임의의 적절한 구성 요소들을 포함할 수 있다. 예를 들어, 다른 디바이스는 자동화 시스템, 반자동 시스템, 디지털 카메라, 보안 카메라, 실외 모니터링 시스템, 스마트폰, 웨어러블 컴퓨터, 태블릿 컴퓨터, 퍼스널 데이터 어시스턴트(PDA: personal data assistant), 개인용 컴퓨터, 랩탑 컴퓨터, 멀티미디어 단말, 게임 콘솔 또는 게임 콘솔을 위한 주변 기기 또는 위의 임의의 디바이스들 중 임의의 것, 특수 목적 디바이스 등으로서 구현될 수 있다.
[0100] 통신 링크를 통한 통신 시스템(516)에 의한 통신들은 인터넷, 인트라넷, 광역 네트워크(WAN: wide-area network), 근거리 네트워크(LAN: local-area network), 무선 네트워크, 디지털 가입자 회선(DSL: digital subscriber line) 네트워크, 프레임 릴레이 네트워크, 비동기 전송 모드(ATM: asynchronous transfer mode) 네트워크, 가상 사설 네트워크(VPN: virtual private network)를 포함하여 임의의 적절한 컴퓨터 네트워크, 또는 네트워크들의 임의의 적절한 조합을 사용하여 수행될 수 있다. 통신 링크는 네트워크 링크, 다이얼-업(dial-up) 링크, 무선 링크, 유선 링크, 임의의 다른 적절한 통신 링크 또는 이러한 링크들의 임의의 적절한 조합과 같이 시스템(500)과 다른 디바이스 사이에서 데이터를 전달하기에 적절한 임의의 통신 링크들을 포함할 수 있다. 시스템(500) 및/또는 다른 디바이스(예를 들어, 서버, 개인용 컴퓨터, 스마트폰 등)는 예를 들어, 평면의 일부로서 근사화될 수 있는 장면에서 하나 이상의 표면들을 식별하기 위해 본원에 설명된 메커니즘들을 사용하여 도출된 정보를 사용하는 컴퓨터 프로그램을 사용자가 실행할 수 있게 한다.
[0101] 통신 링크 또는 임의의 다른 통신 링크(들)를 통해 수신된 데이터는 임의의 적절한 소스로부터 수신될 수 있음에 유의한다. 일부 실시예들에서, 프로세서(508)는 예를 들어 송신기, 수신기, 송신기/수신기, 트랜시버 또는 임의의 다른 적절한 통신 디바이스를 사용하여 통신 링크 또는 임의의 다른 통신 링크(들)를 통해 데이터를 송신 및 수신할 수 있다.
[0102] 도 6은 개시된 주제의 일부 실시예들에 따라 구조화된 광을 사용하여 장면에서 평면 표면들을 직접 복구하기 위한 프로세스의 예를 도시한다. 602에서, 프로세스(600)는 광원으로 하여금 장면을 향해 광의 패턴을 방출하게 할 수 있다. 일부 실시예들에서, 프로세스(600)는 광원으로 하여금 임의의 적절한 기술 또는 기술들의 조합을 사용하여 임의의 적절한 패턴을 투사하게 할 수 있다. 예를 들어, 프로세스(600)는 광원(예를 들어, 광원(502))으로 하여금 광을 방출하게 할 수 있고, 마스크, 회절 광학 요소, 및/또는 다른 적절한 요소는 광으로 하여금 패턴을 형성하게 할 수 있다. 다른 예로서, 프로세스(600)는 공간 광 변조기로 구성된 광원(예를 들어, 광원(502))으로 하여금 (예를 들어, 도 5의 광원(502)과 관련하여 상술한 바와 같이) 패턴을 인코딩하는 변조 신호가 광원에 제공되게 함으로써 특정 패턴으로 광을 방출하게 할 수 있다.
[0103] 일부 실시예들에서, 패턴은 장면에서 하나 이상의 후보 평면들을 식별하는 데 사용될 수 있는 임의의 적절한 패턴일 수 있다. 예를 들어, 패턴은 도 3a 내지 도 3c, 도 4aa 및 도 4ba와 관련하여 상술한 바와 같이 십자형 패턴 피처들을 포함할 수 있다. 보다 특정한 예에서, 십자형 패턴 피처들은 희소하게 분포될 수 있어, 에피폴라 라인 당 많아야 단일 패턴 피처가 존재한다. 다른 보다 특정한 예로서, 십자형 패턴 피처들은 에피폴라 라인 당 패턴 피처의 단일 세트보다 많이 존재하지 않도록 희소하게 분포될 수 있다. 또 다른 보다 특정한 예로서, 패턴 피처들의 각각의 세트는 (예를 들어, 도 4ba와 관련하여 상술한 바와 같이) 불균일하게 분포될 수 있다.
[0104] 604에서, 프로세스(600)는 이미지 센서로 하여금 602에서 방출된 패턴으로 조명된 장면의 이미지를 캡처하게 할 수 있다. 일부 실시예들에서, 프로세스(600)는 이미지 센서로 하여금 임의의 적절한 기술 또는 기술들의 조합을 사용하여 이미지를 캡처하게 할 수 있다. 예를 들어, 프로세스(600)는 CCD 이미지 센서에 의해 이미지 캡처를 트리거할 수 있다. 다른 예로서, 프로세스(600)는 CMOS 이미지 센서에 의해 이미지 캡처를 트리거할 수 있다. 일부 실시예들에서, 프로세스(600)는 이미지 센서로 하여금 602에서 방출된 패턴으로 조명된 장면의 하나의 이미지 및 602에서 방출된 패턴으로 조명되지 않은 장면의 하나의 이미지를 캡처하게 할 수 있다. 예를 들어, 프로세스(600)는 602에서 광원으로 하여금 장면을 향해 패턴을 방출하게 하기 전에 이미지 센서로 하여금 이미지를 캡처하게 할 수 있다. 이러한 실시예에서, 프로세스(600)는 패턴에 의한 조명으로 캡처된 이미지와 패턴에 의한 조명을 갖지 않는 이미지 사이의 차이를 계산하고 (예를 들어, 606과 관련하여 후술하는 바와 같이) 패턴 피처들을 식별할 때 해당 차이를 사용할 수 있다.
[0105] 606에서, 프로세스(600)는 606에서 캡처된 이미지에서 패턴 피처 I을 식별할 수 있다. 일부 실시예들에서, 프로세스(600)는 임의의 적절한 기술 또는 기술들의 조합을 사용하여 캡처된 패턴 피처들을 식별할 수 있다. 예를 들어, (예를 들어, 도 3a 내지 도 3c, 도 4aa 및 도 4ba와 관련하여 상술한 바와 같이) 십자형 패턴들에 대해, 프로세스(600)는 모서리 및/또는 에지 검출 기술을 사용할 수 있다. 보다 특정한 예에서, 프로세스(600)는 Harris 등의 "조합된 모서리 및 에지 검출기"에 설명된 모서리 검출 기술을 사용할 수 있으며, 이는 그 전체가 본원에 참조로 통합되었다.
[0106] 일부 실시예들에서, 프로세스(600)는 패턴이 위치된 캡처된 이미지 내의 위치를 결정할 수 있다. 예를 들어, 캡처된 이미지에서 십자형 패턴을 검출한 프로세스(600)는 십자형 패턴을 형성하는 2 개의 라인 세그먼트들이 교차하는(예를 들어, 지점 pc) 이미지 내의 픽셀을 결정할 수 있다.
[0107] 608에서, 프로세스(600)는 604에서 캡처된 이미지에서 식별된 각각의 이미지 피처 I에 대응하는 투사된 패턴 피처 P 또는 투사된 패턴 피처들의 그룹(예를 들어, {P1,..., PN})을 결정할 수 있다. 일부 실시예들에서, 프로세스(600)는 임의의 적절한 기술 또는 기술들의 조합을 사용하여 캡처된 패턴 피처들을 식별하기 위해 대응하는 패턴 피처를 결정할 수 있다. 예를 들어, 도 3a 내지 도 3c와 관련하여 상술한 바와 같이, 각각의 패턴 피처 또는 패턴 피처들의 세트는 특정 에피폴라 라인(예를 들어, 도 2a와 관련하여 상술한 교정된 SL 배열에 대한 특정 행)과 연관될 수 있다. 이러한 예에서, 프로세스(600)는 이미지 피처의 교차점 p c 에 기초하여 각각의 이미지 피처가 연관되는 에피폴라 라인을 결정할 수 있고, 프로세스(600)는 해당 에피폴라 라인과 연관된 패턴 피처 또는 패턴 피처들의 세트를 식별할 수 있다. 패턴 피처가 교차하는 에피폴라 라인에 대응하지 않는 에피폴라 라인 상에 이미지 피처가 교차하는 경우, 프로세스(600)는 패턴 피처들이 교차하는 가장 가까운 에피폴라 라인을 식별하고 해당 에피폴라 라인과 연관된 패턴 피처들을 사용할 수 있다. 일반적으로 이미지 피처들은 패턴 피처들이 투사되는 동일한 에피폴라 라인 상에 교차할 것으로 예측될 수 있으며, 이는 에피폴라 라인들의 속성이기 때문이다. 그러나, 실제로는, 하나 이상의 오류의 소스들이 이미지 피처가 올바른 에피폴라 라인으로부터 오프셋되게 할 수 있다. 일부 실시예들에서, 각각의 이미지 피처 I에 대해, 프로세스(600)는 후보 패턴 피처들과 동일한 에피폴라 라인에 속하는 교차점들 p p 와 연관된 하나 이상의 패턴 피처들을 식별할 수 있다.
[0108] 610에서, 프로세스(600)는 이미지에서 캡처된 각각의 이미지 피처 I에 대한 후보 평면들을 복구할 수 있다. 일부 실시예들에서, 프로세스(600)는 임의의 적절한 기술 또는 기술들의 조합을 사용하여 이미지 피처들에 대한 후보 평면들을 복구할 수 있다. 예를 들어, 후보 패턴 피처들의 세트가 모두 동일한 경우, 프로세스(600)는 도 4aa 내지 도 4bb와 관련하여 상술한 바와 같이 특정 이미지 피처 I를 각각의 대응하는 후보 패턴 피처와 페어링함으로써 후보 평면(예를 들어, 평면 파라미터들
Figure pct00039
에 의해 정의됨)을 복구할 수 있다. 일부 실시예들에서, 각각의 이미지 피처 I에 대해, 프로세스(600)는 해당 피처와 연관된 모든 후보 평면들을 나타낼 수 있는 평면 파라미터 로커스 Λ를 생성할 수 있다. 다른 예로서, 후보 패턴 피처들의 세트가 모두 동일하지 않고 이미지 피처 I는 후보 패턴 피처들의 서브세트만으로 식별될 수 있는 경우(예를 들어, 패턴 피처들이 컬러, 라인 폭, 라인 각도 등을 통해서와 같이 일정한 방식으로 구별되는 경우), 프로세스(600)는 특정 이미지 피처 I를 이미지 피처 I에 대한 잠재적 매치인 각각의 대응하는 후보 패턴과 페어링함으로써 후보 평면을 복구할 수 있다.
[0109] 612에서, 프로세스(600)는 각각의 이미지 피처와 연관된 후보 평면들에 기초하여 장면에서 평면 표면들을 식별할 수 있다. 일부 실시예들에서, 프로세스(600)는 임의의 적절한 기술 또는 기술들의 조합을 사용하여 장면에서 평면 표면들을 식별할 수 있다. 예를 들어, 도 4aa 내지 도 4bb와 관련하여 상술한 바와 같이, 모든 이미지 피처들과 연관된 평면 파라미터 로커스들의 세트에서 각각의 후보 평면 파라미터의 위치가 수집될 수 있고, 대부분의 후보 평면들과 연관된 Π 공간의 위치들이 장면에서 평면들에 대한 실제 평면 파라미터들로서 식별될 수 있다.
[0110] 일부 실시예들에서, 프로세스(600)는 각각의 이미지 피처와 연관된 평면 파라미터에 기초하여 이미지 피처들을 수집함으로써 장면에서 지배적인 평면들의 세트를 식별할 수 있다. 도 4aa 내지 도 4bb와 관련하여 상술한 바와 같이, 평면 파라미터들은 좌표계(예를 들어, CCS, WCS 또는 PCS)의 원점을 기준으로 정의될 수 있으므로, 평면 파라미터들은 임의의 특정 이미지 피처에 대한 거리 d에 관계없이 해당 평면에 속하는 모든 이미지 피처들에 대해 동일하다. 따라서, 장면에서 동일한 평면 표면에 속하는 이미지 피처들은 유사한 평면 파라미터들 Π와 연관될 것으로 예측될 수 있으며 해당 평면과 연관된 평면 파라미터들에 투표하는 것으로 예측될 수 있다. (예를 들어, 도 7a 및 도 7b에 도시된 바와 같이) Π 공간의 평면 파라미터들이 대략 직사각형 형상으로 퍼져 있는 것처럼 보이지만, 이것은 시각화의 한계 때문이며, 단일 최고 피크는 대부분의 경우 실제 평면 표면에 대응하는 것으로 예측될 수 있음에 유의한다.
[0111] 일부 실시예들에서, 프로세스(600)는 Π 공간에서 모든 후보 평면들의 분포에서 로컬 최대값(또는 피크)을 식별할 수 있고, 각각의 로컬 피크는 장면에서 지배적인 평면으로서 식별될 수 있다. 이러한 예에서, 프로세스(600)는 특정 이미지 피처와 연관된 평면 파라미터 로커스에 포함된 후보 평면이 로컬 피크에 대응하는 경우 특정 이미지 피처를 로컬 피크와 연관시킬 수 있다. 그러나, 다양한 오류의 소스들로 인해, 장면에서 평면 상에 투사된 이미지 피처에 대한 후보 평면 파라미터들은 해당 평면의 실제 평면 파라미터들과 약간 다를 수 있다. 일부 실시예들에서, 프로세스(600)는 특정 이미지 피처와 연관된 평면 파라미터 로커스에 포함된 후보 평면이 로컬 피크와 유사하지만 동일하지 않은 경우 특정 이미지 피처들을 특정 로컬 피크에 대응하는 것으로 식별할 수 있다. 일부 실시예들에서, 프로세스(600)는 특정 이미지 피처를 해당 로컬 피크와 연관시키는 것을 정당화하기 위해 로컬 피크와 충분히 유사한 후보 평면 파라미터들을 식별하기 위해 임의의 적절한 기술 또는 기술들의 조합을 사용할 수 있다. 예를 들어, 프로세스(600)는 사전 결정된 반경을 갖는 로컬 피크 주위에 그려진 원 내에 있는 피처들과 연관된 지점들을 식별할 수 있다. 이러한 예에서, 프로세스(600)는 원 내에 속하는 각각의 지점 자체가 더 낮은 로컬 피크인지 여부를 결정할 수 있다. 프로세스(600)는 반경 내의 임의의 더 낮은 로컬 피크들이 지배적인 평면과 연관되는 것을 금지할 수 있고, 프로세스(600)는 이미지 피처들을 지배적인 평면을 갖는 원 내의 후보 평면 파라미터들과 연관시킬 수 있다. 일부 실시예들에서, 어떤 이미지 피처들이 특정 로컬 피크와 연관되는지를 결정하기 위해 사용되는 반경이 증가함에 따라, 프로세스(600)는 지배적인 평면들의 크기를 확장할 수 있다. 그러나, 약간 오프셋된 평면들을 갖는 두 표면들 상의 이미지 피처들이 동일한 지배적 평면에 속하는 것으로 식별될 가능성도 반경이 증가함에 따라 증가한다.
[0112] 일부 실시예들에서, 프로세스(600)는 해당 평면과 연관된 이미지 피처들 기초하여 각각의 평면의 범위를 식별할 수 있다. 예를 들어, 프로세스(600)는 WCS에서 평면의 범위를 식별하기 위해 특정 평면과 연관된 모든 이미지 특징 위치들의 볼록 껍질을 결정할 수 있다.
[0113] 일부 실시예들에서, 프로세스(600)는 (예를 들어, 식 (5)와 관련하여 상술한 바와 같이) 특정 평면에 대한 평면 파라미터에 기초하여 특정 평면에 속하는 각각의 지점(예를 들어, 평면의 범위 내에 포함된 각각의 픽셀)에 대한 깊이를 계산할 수 있다.
[0114] 614에서, 프로세스(600)는 장면의 적어도 일부를 나타내는 포인트 클라우드 데이터를 생성하는 데 사용될 수 있는 하나 이상의 구조화된 광 패턴들의 제2 세트를 포함하는 장면에서 하나 이상의 이미지들을 캡처 및/또는 사용할 수 있다. 예를 들어, 일부 실시예들에서, 프로세스(600)는 제1 기간 동안 602 내지 612를 실행할 수 있고, 제2 기간 동안 614를 실행할 수 있다. 이는 상대적으로 저렴한 프로세스를 사용한 평면 피처들의 복구를 용이하게 할 수 있으며, 장면에서 비평면인 객체들을 식별하고/식별하거나 찾는 데 사용될 수 있는 보다 상세한 포인트 클라우드를 생성할 수 있다. 다른 예로서, 일부 실시예들에서, 프로세스(600)는 602에서 투사된 패턴의 제1 부분을 사용하여 602 내지 612를 실행할 수 있고, 602에서 투사되고 604에서 이미지에서 캡처된 패턴의 제2 부분을 사용하여 614를 병렬로 실행할 수 있다. 보다 구체적인 예에서, 제2 패턴은 606 내지 612에서 사용되는 십자형 패턴 피처들과 동시에 투사될 수 있다. 십자형 패턴 피처들 사이에 배치될 수 있는 단일 샷 패턴들의 예들은 2D 의사-랜덤 이진 코드들 및 2D 랜덤 도트(dot)들을 포함한다.
[0115] 또 다른 예로서, 일부 실시예들에서, 프로세스(600)는 602에서 투사된 제1 패턴을 사용하여 602 내지 612를 실행할 수 있고, 602에서 투사되고 604에서 이미지에서 캡처된 제2 패턴을 사용하여 병렬로 614를 실행할 수 있다. 보다 특정한 예에서, 2 개의 패턴들은 상이한 파장들의 단일 광원으로부터 장면 상에 동시에 투사될 수 있다. 이러한 예에서, 회절 광학 요소 또는 회절 광학 요소들의 조합은 적색 및 청색, 적색 및 녹색, 청색 및 녹색, 청색 및 NIR 등과 같은 광의 상이한 파장들에 대해 상이한 패턴들을 제공하도록 구성될 수 있다. 보다 특정한 다른 예로서, 마스크는 원하는 투사 패턴에 대응하는 특정 영역에서 특정 파장들(예를 들어, 가시광 및 NIR)에 대해 투명하고 다른 곳에서는 이러한 파장들의 서브세트(예를 들어, NIR)에 대해 불투명하도록 구성될 수 있다. 이러한 마스크는 마스크가 불투명한 파장 이외의 파장에서 광에 선택적으로 영향을 미치도록 구성된 회절 광학 요소(예를 들어, 청색광에 영향을 미치도록 구성된 회절 광학 요소)와 결합될 수 있다.
[0116] 일부 실시예들에서, 614는 생략될 수 있다. 예를 들어, 프로세스(600)를 실행하는 디바이스가 (예를 들어, 증강 현실 장면에서 홀로그램을 렌더링하기 위해 적절한 표면을 식별하기 위해) 장면에서 지배적인 평면들을 식별하기만 하면, 614는 생략될 수 있다. 예를 들어, 프로세스(600)를 실행하는 디바이스가 더 상세한 깊이 정보를 생성하는 데 사용될 수 있고/있거나 비평면 객체들을 찾는 데 사용될 수 있는 다른 시스템(예를 들어, LiDAR-기반 시스템, 레이더-기반 시스템, 머신 러닝-기반 시스템 등)을 갖는 경우, 614는 생략될 수 있다.
[0117] 일부 실시예들에서, 614에서 제2 구조화된 광 프로세스를 이용하는 대신, 프로세스(600)는 기하 형태-기반 장면 인식 기술(예를 들어, 때로는 단안(monocular) 깊이 추정이라고 칭하는 기술들)에서 제약으로서 612에서 식별된 평면 표면들을 이용할 수 있다.
[0118] 도 7a는 개시된 주제의 일부 실시예들에 따라 패턴이 투사된 시뮬레이팅된 장면, Π 공간의 후보 평면들에 대응하는 로커스들, 측정된 평면 깊이들, 측정된 평면 법선, 및 추정된 깊이들 및 복구된 평면 법선의 예를 도시한다.
[0119] 도 7b는 개시된 주제의 일부 실시예들에 따라 패턴이 투사된 다른 시뮬레이팅된 장면, Π 공간의 후보 평면들에 대응하는 로커스들, 측정된 평면 깊이들, 측정된 평면 법선, 및 추정된 평면 깊이들 및 복구된 평면 법선의 예를 도시한다.
[0120] 도 7a 및 도 7b에 도시된 결과들은 실내 데이터세트로부터의 3D 모델들에 기초한다. 광선 추적 도구를 사용하여 이미지 형성 프로세스가 시뮬레이팅되었다. 각각의 장면에 대한 지배적인 평면들의 평면 파라미터들(예를 들어, a에서 e로 라벨링)은 (0.5 미터(m) ≤ D ≤ 5 m, 0° ≤ θ ≤ 90°)로 정의된 평면 법선의 평면 깊이들 및 극각의 범위를 커버하는 Π 공간에서 추정되었다. 도 7a 및 도 7b는 평면 파라미터들로부터 계산된 평면 깊이들 및 법선들을 도시한다. 평면들에 할당된 피처들의 볼록 껍질을 결정하여 평면들의 경계들이 계산되었다. 도 7a 및 도 7b에 도시된 바와 같이, 3D 장면 기하 형태는 깊이들 및 표면 법선들 모두의 관점에서 상대적으로 높은 정확도로 복구되었다. 이는 도 7a 및 도 7b의 최우측 패널들에 도시된 바와 같이 상이한 카메라 관점들(심지어 넓은 베이스라인들에 대해)로부터 장면 기하 형태를 시각화하는 것을 용이하게 할 수 있다. Π 공간은 도 7a 및 도 7b에서 2차원으로 가시화되지만, 이것은 단지 D 및 θ만을 사용하여 모든 지점들을 플롯팅함으로써 2차원 가시화를 용이하게 하기 위한 것임에 유의한다. 본원에 설명된 메커니즘들은 지배적인 평면들을 식별할 때 Π 공간의 전체 3D 표현을 사용할 수 있다.
[0121] 도 8a는 개시된 주제의 일부 실시예들에 따라 구현된 프로젝터를 사용하여 패턴이 투사된 장면의 예를 도시한다.
[0122] 도 8b는 개시된 주제의 일부 실시예들에 따라 추정된 프로젝터의 동일한 에피폴라 라인 상의 패턴 피처들과 장면의 패턴 피처들 사이의 대응에 기초하여 결정된 Π 공간의 후보 평면들에 대응하는 로커스들의 예들을 도시한다.
[0123] 도 8c는 개시된 주제의 일부 실시예들에 따라 도 8b의 로커스들에 기초하여 결정된 추정된 평면 깊이들의 예들을 도시한다.
[0124] 도 8d는 개시된 주제의 일부 실시예들에 따라 도 8b의 로커스들에 기초하여 결정된 추정된 평면 법선들의 예들을 도시한다.
[0125] 도 8a 내지 도 8d에 도시된 예들은 Epson 3LCD 프로젝터를 포함하는 SL 디바이스 및 디지털 SLR 카메라(Canon EOS 700D)를 사용하여 생성되었다. 프로젝터-카메라 베이스라인(도 2a의 b)은 353 밀리미터(mm)였다. SL 디바이스는 에피폴라 라인들 패턴의 행들과 캡처된 이미지를 따라 정렬되도록 교정되었다.
[0126] 큰 깊이 변화를 갖는 장면들을 이미징할 때, 본원에 설명된 메커니즘들이 선명하게 포커싱되지 않은 장면의 부분들(예를 들어, 카메라 필드 깊이의 에지 또는 외측에 속하고/속하거나 패턴 프로젝터의 초점 깊이 외측에 속하는 장면의 부분들)에 대해서도 평면 파라미터들을 복구할 수 있는 것이 중요하다. 도 4aa 내지 도 4bb와 관련하여 상술한 바와 같이, 본원에 설명된 메커니즘들은 포지티브 및 네거티브 에지들 모두에 대해 검출된 라인 세그먼트들의 평균에 기초하여 십자형 패턴들을 검출할 수 있으며, 이는 디포커스 블러에 견고성을 제공할 수 있다. 디포커스 블러는 프로젝터, 카메라 또는 둘 모두에 의해 발생할 수 있음에 유의한다.
[0127] 도 8a는 카메라로부터 상이한 거리들에 있는 평면 객체들을 포함하는 큰 깊이 변화(0.3 m 내지 3 m)를 갖는 장면을 도시한다. Π 공간은 b ≤ D ≤ 3 m 및 0° ≤ θ ≤ 90°에 걸쳐 표현되었으며, 여기서 b는 베이스라인이다. 넓은 범위의 블러에 대한 성능을 보여주기 위해 카메라와 프로젝터는 후면(평면 a)에 포커싱되어 평면 d에 큰 블러를 생성했다. 실제로, 개시된 주제에 따라 구현된 디바이스들은 블러 크기를 제한하는 깊이 범위의 중간에 포커싱될 가능성이 있다. 예시적인 SL 디바이스는 특정 크기까지 블러를 갖는 평면들을 정확하게 식별했지만, 매우 큰 블러 크기에 대한 평면을 검출하지 못했다(예를 들어, 평면 d는 Π 공간에서 검출되지 않았음). 블러 크기들은 조리개를 낮추고, 확장된 필드 깊이 접근법을 사용하고/사용하거나 회절 요소들에 기초하는 레이저 투사 디바이스들을 사용하여 감소될 수 있다.
[0128] 도 9a는 낮은 레벨의 주변 광으로 패턴이 투사된 장면 및 개시된 주제의 일부 실시예들에 따라 캡처된 더 높은 레벨의 주변 광으로 패턴이 투사된 동일한 장면의 예시적인 이미지들을 도시한다.
[0129] 도 9b는 개시된 주제의 일부 실시예들에 따라 도 9a의 이미지들에 기초하여 결정된 Π 공간에서 후보 평면들에 대응하는 로커스들의 예를 도시한다.
[0130] 도 9c는 개시된 주제의 일부 실시예들에 따라 도 9b의 로커스들에 기초하여 결정된 추정된 평면 깊이들의 예를 도시한다.
[0131] 도 9d는 개시된 주제의 일부 실시예들에 따라 도 9b의 로커스들에 기초하여 결정된 추정된 평면 법선들의 예들을 도시한다.
[0132] 도 9a 내지 도 9d에 도시된 예들은 도 8a 내지 도 8d에 도시된 예들을 생성하는데 사용된 동일한 SL 디바이스를 사용하여 생성되었다.
[0133] 본원에 설명된 메커니즘들은 강도 피처들보다는 형상 피처들에 기초하고, 따라서 광도 변화에 상대적으로 견고하여(예를 들어, 광도 캘리브레이션이 필요하지 않음) 상이한 조명 조건들 하에서 상대적으로 안정적인 평면 추정으로 이어진다. 도 9a 내지 도 9d는 상이한 주변 조명 조건들 하에서 본원에 설명된 메커니즘들의 성능을 보여준다. 도 9c 및 도 9d에 도시된 바와 같이, 예시적인 SL 디바이스는 두 조명 조건들 하에서 상대적으로 일관된 결과들을 생성하였다. 주변 광이 투사된 패턴을 완전히 압도하는 극한 조건들 하에서, 패턴 피처들은 캡처된 이미지에서 검출되지 못할 수 있다. 그러나, 이는 강한 주변 광에서 모든 전력-제한 능동 이미징 시스템들이 직면한 문제이며, 협대역 조명 및/또는 시공간 조명 및 이미지 코딩을 사용하여 완화될 수 있다.
[0134] 도 10a는 개시된 주제의 일부 실시예들에 따라 장면의 이미지로부터 추정된 평면들과 RANSAC-기반 평면 피팅을 사용하여 동일한 장면의 포인트 클라우드 표현으로부터 추정된 평면들의 비교를 도시한다.
[0135] 도 10b는 개시된 주제의 일부 실시예들에 따라 더 복잡한 장면의 이미지로부터 추정된 평면들과 RANSAC-기반 평면 피팅을 사용하여 동일한 장면의 포인트 클라우드 표현으로부터 추정된 평면들의 비교를 도시한다.
[0136] 도 10a 및 도 10b의 좌측에 도시된 예들은 도 8a 내지 도 8d, 및 도 9a 내지 도 9d에 도시된 예들을 생성하는 데 사용된 동일한 SL 디바이스를 사용하여 생성되었다. 우측 상에 도시된 예들은 3D 포인트 클라우드 데이터에 평면들을 맞추는 통상의 접근법을 사용하여 생성되었다. 3D 포인트 클라우드 데이터는 상품 깊이 카메라(Microsoft Kinect V2)에 의해 생성되었다. M-추정기 샘플 일치(MSAC: M-estimator SAmple Consensus)의 잘 최적화된 구현, 랜덤 샘플 일치(RANSAC: random sample consensus)의 변형이 평면 피팅에 사용되었다. 보다 공정한 비교를 시도하기 위해, 포인트 클라우드 데이터는 예시적인 SL 디바이스(3714 × 2182)에 의해 캡처된 이미지와 동일한 해상도를 갖도록 업샘플링되었다. 도 10a 및 10b는 2 개의 상이한 장면들(도 10a에서 클러터(clutter)가 없는 2-평면 장면 및 도 10b에서 클러터가 있는 4-평면 장면)을 도시한다. 도 10a 및 도 10b에 도시된 바와 같이, 3D 포인트 클라우드에 맞추어진 평면들은 특히 도 10b의 클러터링된 장면에 대해 잘못된 3D 지점들(예를 들어, 동일한 실제 장면 평면들 상에 있지 않은 지점들)을 포함했다. RANSAC-기반 평면 피팅 결과들은 각각의 식별된 평면에 대응하는 지점들이 해당 평면에 대응하는 이미지에서 렌더링되는 별도의 이미지들에서 표시된다는 점에 유의한다(예를 들어, 도 10a에서 "평면-피팅 결과들" 패널의 상단 이미지는 장면의 우측 벽에 대응하는 평면에 속하는 것으로 식별된 지점들을 포함하고, "평면-피팅 결과들" 패널의 바닥 이미지는 장면의 좌측 벽에 속하는 것으로 식별된 지점들을 포함). 대조적으로, 본원에 설명된 메커니즘들에 따라 구현된 접근법을 사용하고 예시적인 SL 디바이스에 의해 생성된 이미지들을 사용하여 맞추어진 평면들은 올바른 평면 할당들로 더 깨끗한 재구성을 생성했다.
[0137] 표 1은 MSAC의 MATLAB 구현들과 이미지 피처 검출과 Π 공간에서 평면 추정을 포함한 본원에 설명된 메커니즘들에 따라 구현된 접근법 사이에서 동일한 장면들에 대한 계산 복잡성의 비교를 나타낸다. RANSAC-기반 평면-피팅은 장면 복잡성과 클러터가 증가함에 따라 더 느려졌다. 대조적으로, 개시된 접근법의 계산 속도는 장면의 기하학적 복잡성에 관계없이 일관되게 유지되었으며 RANSAC-기반 평면 피팅에 비해 10 배보다 더 빨랐다. 이는 최적화되지 않은 구현을 갖는 고해상도 입력 이미지들에 대해서도 거의 실시간 성능을 용이하게 할 수 있다.
장면들 RANSAC-기반 평면 피팅 블록-세계 카메라들
2 개의 평면들 4.1 초(s) 0.2 s
클러터를 갖는 4 개의 평면들 10.2 s 0.2 s
[0138] 일부 실시예들에서, 임의의 적절한 컴퓨터 판독 가능 매체가 본원에 설명된 기능들 및/또는 프로세스들을 수행하기 위한 명령어들을 저장하기 위해 사용될 수 있다. 예를 들어, 일부 실시예들에서, 컴퓨터 판독 가능 매체는 일시적이거나 비일시적일 수 있다. 예를 들어, 비일시적 컴퓨터 판독 가능 매체는 (하드 디스크들, 플로피 디스크들 등과 같은) 자기 매체, (컴팩트 디스크들, 디지털 비디오 디스크들, 블루-레이 디스크들 등과 같은) 광학 매체, (RAM, 플래시 메모리, 전기적으로 프로그래밍 가능한 판독 전용 메모리(EPROM: electrically programmable read only memory), 전기적으로 소거 가능하고 프로그래밍 가능한 판독 전용 메모리(EEPROM: electrically erasable programmable read only memory) 등과 같은) 반도체 매체, 전송 중에 일시적이지 않거나 영구적인 임의의 유사성이 결여되지 않은 임의의 적절한 매체, 및/또는 임의의 적절한 유형의(tangible) 매체와 같은 매체를 포함할 수 있다. 다른 예로서, 일시적인 컴퓨터 판독 가능 매체는 네트워크들, 전선들, 도체들, 광섬유들, 회로들, 또는 전송 중에 일시적이고 영구적인 임의의 유사성이 결여된 임의의 적절한 매체 및/또는 임의의 적절한 무형의 매체 상의 신호들을 포함할 수 있다.
[0139] 본원에서 사용되는 바와 같이, 메커니즘이라는 용어는 하드웨어, 소프트웨어, 펌웨어, 또는 이들의 임의의 적절한 조합을 포함할 수 있음에 유의해야 한다.
[0140] 도 6의 프로세스의 상술한 단계들은 도면들에 도시되고 설명된 순서 및 시퀀스에 제한되지 않는 임의의 적절한 순서 또는 시퀀스로 실행 또는 수행될 수 있음을 이해해야 한다. 또한, 도 6의 프로세스의 위의 단계들 중 일부는 대기 시간 및 프로세싱 시간을 줄이기 위해 적절한 경우 실질적으로 동시에 또는 병렬적으로 실행되거나 수행될 수 있다.
[0141] 본 발명이 상술한 예시적인 실시예들에서 설명 및 예시되었지만, 본 개시는 단지 예시의 방식으로 이루어졌으며, 본 발명의 구현의 상세 사항에서 많은 변화가 후속하는 청구항들에 의해서만 제한되는 본 발명의 사상 및 범위를 벗어나지 않고 이루어질 수 있음을 이해해야 한다. 개시된 실시예들의 특징들은 다양한 방식으로 조합되고 재배열될 수 있다.

Claims (23)

  1. 장면에서 평면들을 복구하기 위한 시스템으로서,
    광원;
    픽셀들의 어레이를 포함하는 이미지 센서;
    적어도 하나의 하드웨어 프로세서를 포함하고, 상기 적어도 하나의 하드웨어 프로세서는:
    상기 광원으로 하여금 상기 장면을 향해 2차원 광 패턴을 방출하게 하고 ― 상기 2차원 광 패턴은 제1 에피폴라(epipolar) 라인 상에 배치되는 패턴 피처를 포함하고, 상기 패턴 피처는 상기 제1 에피폴라 라인 상에 위치된 지점에서 교차하는 2 개의 교차하는 라인 세그먼트들을 포함함 ―;
    상기 이미지 센서로 하여금 상기 광 패턴의 적어도 일부를 포함하는 상기 장면의 이미지를 캡처하게 하고;
    상기 이미지에서 이미지 피처를 식별하고 ― 상기 이미지 피처는 상기 제1 에피폴라 라인에 대응하는 상기 이미지의 지점에서 교차하는 2 개의 교차하는 라인 세그먼트들을 포함함 ―;
    적어도 상기 패턴 피처를 상기 제1 에피폴라 라인과 모두 연관되는 상기 패턴 피처 및 상기 이미지 피처에 기초하여 상기 이미지 피처에 잠재적으로 대응하는 것으로 식별하고;
    상기 패턴 피처의 속성들 및 상기 이미지 피처의 속성들에 기초하여 상기 패턴 피처와 연관된 평면 가정(hypothesis)을 추정하고 ― 상기 평면 가정은 평면을 특징화하는 파라미터들의 세트와 연관됨 ―;
    상기 평면 가정에 기초하여 상기 장면에서 평면 표면을 식별하도록 프로그래밍되는, 시스템.
  2. 제1 항에 있어서,
    상기 2차원 광 패턴은 상기 제1 에피폴라 라인 상에 각각 배치되는 상기 패턴 피처를 포함하는 N 개의 패턴 피처들의 세트 {P1,..., PN}를 포함하고;
    상기 적어도 하나의 하드웨어 프로세서는:
    상기 N 개의 패턴 피처들의 세트를 모두 상기 제1 에피폴라 라인과 연관되는 상기 N 개의 패턴 피처들의 세트 및 상기 이미지 피처에 기초하여 상기 이미지 피처에 잠재적으로 대응하는 것으로 식별하고;
    상기 N 개의 패턴 피처들의 세트의 각각의 패턴 피처와 각각 연관된 N 개의 평면 가정들의 제1 세트를 추정하고 ― 상기 N 개의 평면 가정들의 제1 세트의 각각의 평면 가정은 상기 이미지 피처의 속성들 및 상기 각각의 패턴 피처의 속성들에 기초하고,
    상기 N 개의 평면 가정들의 제1 세트의 각각의 평면 가정은 평면을 특징화하는 파라미터들의 세트와 연관됨 ―;
    상기 제1 에피폴라 라인과 연관된 상기 이미지에서 제2 이미지 피처를 식별하고 ― 상기 제2 이미지 피처는 상기 제1 에피폴라 라인에 대응하는 지점에서 교차하는 2 개의 교차하는 라인 세그먼트들을 포함함 ―;
    상기 N 개의 패턴 피처들의 세트를 모두 상기 제1 에피폴라 라인과 연관되는 상기 N 개의 패턴 피처들의 세트 및 상기 제2 이미지 피처에 기초하여 상기 제2 이미지 피처에 잠재적으로 대응하는 것으로 식별하고;
    상기 N 개의 패턴 피처들의 세트의 각각의 패턴 피처와 각각 연관된 N 개의 평면 가정들의 제2 세트를 추정하고 ― 상기 N 개의 평면 가정들의 제2 세트의 각각의 평면 가정은 상기 제2 이미지 피처의 속성들 및 상기 각각의 패턴 피처의 속성들에 기초하고,
    상기 N 개의 평면 가정들의 제2 세트의 각각의 평면 가정은 평면을 특징화하는 파라미터들의 세트를 포함함 ―;
    상기 N 개의 평면 가정들의 제1 세트 및 상기 N 개의 평면 가정들의 제2 세트 모두의 멤버인 평면 가정에 기초하여 상기 장면에서 상기 평면 표면을 식별하도록 추가로 프로그래밍되는, 시스템.
  3. 제2 항에 있어서,
    N > 2이고, 패턴 피처 P1과 패턴 피처 P2 사이의 상기 제1 에피폴라 라인을 따른 거리는 패턴 피처 PN-1과 패턴 피처 PN 사이의 상기 제1 에피폴라 라인을 따른 거리와 상이하여, 상기 N 개의 패턴 피처들의 세트 {P1,..., PN}이 불균일하게 이격되는, 시스템.
  4. 제3 항에 있어서,
    상기 2차원 광 패턴은 제2 에피폴라 라인 상에 각각 배치된 N 개의 패턴 피처들의 제2 세트 {PN+1,..., P2N}를 포함하고,
    패턴 피처 PN1과 패턴 피처 PN+2 사이의 상기 제2 에피폴라 라인을 따른 거리는 패턴 피처 P2N-1과 패턴 피처 P2N 사이의 상기 제2 에피폴라 라인을 따른 거리와 상이하고,
    패턴 피처 PN1과 패턴 피처 PN+2 사이의 상기 제2 에피폴라 라인을 따른 상기 거리는 패턴 피처 P1과 패턴 피처 P2 사이의 상기 제1 에피폴라 라인을 따른 거리와 상이하여, 상기 N 개의 패턴 피처들의 제2 세트 {PN+1,..., P2N}는 불균일하게 이격되고 상기 N 개의 패턴 피처들의 세트 {P1,..., PN}와 상이하게 이격되는, 시스템.
  5. 제1 항에 있어서,
    상기 적어도 하나의 하드웨어 프로세서는 상기 2 개의 라인 세그먼트들이 교차하는 상기 지점과 상기 제1 에피폴라 라인 사이의 근접도에 기초하여 상기 이미지 피처가 상기 제1 에피폴라 라인과 연관되는 것으로 결정하도록 추가로 프로그래밍되는, 시스템.
  6. 제1 항에 있어서,
    상기 광원은 복수의 행들을 포함하고, 상기 이미지 센서는 복수의 제2 행들을 포함하고,
    상기 광원 및 상기 이미지 센서는 교정되어, 상기 복수의 행들의 각각의 행은 상기 복수의 제2 행들의 행과 에피폴라 라인을 공유하는, 시스템.
  7. 제1 항에 있어서,
    상기 패턴 피처의 제1 라인 세그먼트는 상기 제1 에피폴라 라인에 대해 35° 내지 55°의 범위의 각을 이루고, 상기 패턴 피처의 제2 라인 세그먼트는 상기 제1 에피폴라 라인에 대해 125° 내지 145°의 범위의 각을 이루는, 시스템.
  8. 제1 항에 있어서,
    상기 패턴 피처의 상기 속성들은 상기 패턴 피처의 제1 라인 세그먼트에 대응하는 제1 벡터 u p , 상기 패턴 피처의 제2 라인 세그먼트에 대응하는 제2 벡터 v p 및 상기 제1 벡터 u p 와 상기 제2 벡터 v p 가 교차하는 지점의 좌표 p p 를 포함하고,
    상기 이미지 피처의 상기 속성들은 상기 이미지 피처의 제1 라인 세그먼트에 대응하는 제3 벡터 u c , 상기 이미지 피처의 제2 라인 세그먼트에 대응하는 제4 벡터 v c 및 상기 제3 벡터 u c 와 상기 제4 벡터 v c 가 교차하는 지점의 좌표 p c 를 포함하는, 시스템.
  9. 제8 항에 있어서,
    상기 평면 가정과 연관된 상기 파라미터들의 세트는 평면 Π를 정의하고 카메라 좌표계의 원점 c c 에서 상기 평면 Π까지의 최단 거리에 대응하는 거리 D, 평면 법선 벡터 nc c 및 상기 이미지 센서에 의해 정의된 이미지 평면의 중심을 통해 연장되는 z 축 사이의 극각 θ 및 상기 평면 법선 벡터 n과 상기 이미지 평면의 수평 방향을 따라 연장되는 x 축 사이의 방위각
    Figure pct00040
    를 포함하는, 시스템.
  10. 제9 항에 있어서,
    상기 프로세서는:
    Figure pct00041
    의 관계를 사용하여 상기 평면 법선 벡터 n을 결정하고;
    Figure pct00042
    의 관계를 사용하여 상기 거리 D를 결정하도록 추가로 프로그래밍되고,
    b는 상기 카메라 좌표계의 상기 원점 c c 와 패턴 좌표계의 원점 c p 사이의 거리인, 시스템.
  11. 제1 항에 있어서,
    상기 프로세서는:
    상기 이미지 센서로 하여금 상기 광 패턴을 포함하지 않는 상기 장면의 제2 이미지를 캡처하게 하고;
    상기 이미지와 상기 제2 이미지 사이의 차이에 기초하여 차이 이미지를 계산하고;
    상기 차이 이미지를 사용하여 상기 이미지의 상기 이미지 피처를 식별하도록 추가로 프로그래밍되는, 시스템.
  12. 장면에서 평면들을 복구하기 위한 방법으로서,
    광원으로 하여금 상기 장면을 향해 2차원 광 패턴을 방출하게 하는 단계 ― 상기 2차원 광 패턴은 제1 에피폴라 라인 상에 배치되는 패턴 피처를 포함하고, 상기 패턴 피처는 상기 제1 에피폴라 라인 상에 위치된 지점에서 교차하는 2 개의 교차하는 라인 세그먼트들을 포함함 ―;
    이미지 센서로 하여금 상기 광 패턴의 적어도 일부를 포함하는 상기 장면의 이미지를 캡처하게 하는 단계;
    상기 이미지에서 이미지 피처를 식별하는 단계 ― 상기 이미지 피처는 상기 제1 에피폴라 라인에 대응하는 상기 이미지의 지점에서 교차하는 2 개의 교차하는 라인 세그먼트들을 포함함 ―;
    적어도 상기 패턴 피처를 상기 제1 에피폴라 라인과 모두 연관되는 상기 패턴 피처 및 상기 이미지 피처에 기초하여 상기 이미지 피처에 잠재적으로 대응하는 것으로 식별하는 단계;
    상기 패턴 피처의 속성들 및 상기 이미지 피처의 속성들에 기초하여 상기 패턴 피처와 연관된 평면 가정을 추정하는 단계 ― 상기 평면 가정은 평면을 특징화하는 파라미터들의 세트와 연관됨 ―; 및
    상기 평면 가정에 기초하여 상기 장면에서 평면 표면을 식별하는 단계를 포함하는, 방법.
  13. 제12 항에 있어서,
    상기 2차원 광 패턴은 상기 제1 에피폴라 라인 상에 각각 배치되는 상기 패턴 피처를 포함하는 N 개의 패턴 피처들의 세트 {P1,..., PN}를 포함하고;
    상기 방법은:
    상기 N 개의 패턴 피처들의 세트를 모두 상기 제1 에피폴라 라인과 연관되는 상기 N 개의 패턴 피처들의 세트 및 상기 이미지 피처에 기초하여 상기 이미지 피처에 잠재적으로 대응하는 것으로 식별하는 단계;
    상기 N 개의 패턴 피처들의 세트의 각각의 패턴 피처와 각각 연관된 N 개의 평면 가정들의 제1 세트를 추정하는 단계 ― 상기 N 개의 평면 가정들의 제1 세트의 각각의 평면 가정은 상기 이미지 피처의 속성들 및 상기 각각의 패턴 피처의 속성들에 기초하고,
    상기 N 개의 평면 가정들의 제1 세트의 각각의 평면 가정은 평면을 특징화하는 파라미터들의 세트와 연관됨 ―;
    상기 제1 에피폴라 라인과 연관된 상기 이미지에서 제2 이미지 피처를 식별하는 단계 ― 상기 제2 이미지 피처는 상기 제1 에피폴라 라인에 대응하는 지점에서 교차하는 2 개의 교차하는 라인 세그먼트들을 포함함 ―;
    상기 N 개의 패턴 피처들의 세트를 모두 상기 제1 에피폴라 라인과 연관되는 상기 N 개의 패턴 피처들의 세트 및 상기 제2 이미지 피처에 기초하여 상기 제2 이미지 피처에 잠재적으로 대응하는 것으로 식별하는 단계;
    상기 N 개의 패턴 피처들의 세트의 각각의 패턴 피처와 각각 연관된 N 개의 평면 가정들의 제2 세트를 추정하는 단계 ― 상기 N 개의 평면 가정들의 제2 세트의 각각의 평면 가정은 상기 제2 이미지 피처의 속성들 및 상기 각각의 패턴 피처의 속성들에 기초하고,
    상기 N 개의 평면 가정들의 제2 세트의 각각의 평면 가정은 평면을 특징화하는 파라미터들의 세트를 포함함 ―;
    상기 N 개의 평면 가정들의 제1 세트 및 상기 N 개의 평면 가정들의 제2 세트 모두의 멤버인 평면 가정에 기초하여 상기 장면에서 상기 평면 표면을 식별하는 단계를 더 포함하는, 방법.
  14. 제13 항에 있어서,
    N > 2이고, 패턴 피처 P1과 패턴 피처 P2 사이의 상기 제1 에피폴라 라인을 따른 거리는 패턴 피처 PN-1과 패턴 피처 PN 사이의 상기 제1 에피폴라 라인을 따른 거리와 상이하여, 상기 N 개의 패턴 피처들의 세트 {P1,..., PN}이 불균일하게 이격되는, 방법.
  15. 제14 항에 있어서,
    상기 2차원 광 패턴은 제2 에피폴라 라인 상에 각각 배치된 N 개의 패턴 피처들의 제2 세트 {PN+1,..., P2N}를 포함하고,
    패턴 피처 PN1과 패턴 피처 PN+2 사이의 상기 제2 에피폴라 라인을 따른 거리는 패턴 피처 P2N-1과 패턴 피처 P2N 사이의 상기 제2 에피폴라 라인을 따른 거리와 상이하고,
    패턴 피처 PN1과 패턴 피처 PN+2 사이의 상기 제2 에피폴라 라인을 따른 상기 거리는 패턴 피처 P1과 패턴 피처 P2 사이의 상기 제1 에피폴라 라인을 따른 거리와 상이하여, 상기 N 개의 패턴 피처들의 제2 세트 {PN+1,..., P2N}는 불균일하게 이격되고 상기 N 개의 패턴 피처들의 세트 {P1,..., PN}와 상이하게 이격되는, 방법.
  16. 제12 항에 있어서,
    상기 이미지에서 상기 이미지 피처를 식별하는 단계는 상기 2 개의 라인 세그먼트들이 교차하는 상기 지점과 상기 제1 에피폴라 라인 사이의 근접도에 기초하여 상기 이미지 피처가 상기 제1 에피폴라 라인과 연관되는 것으로 결정하는 단계를 포함하는, 방법.
  17. 제12 항에 있어서,
    상기 광원은 복수의 행들을 포함하고, 상기 이미지 센서는 복수의 제2 행들을 포함하고,
    상기 광원 및 상기 이미지 센서는 교정되어, 상기 복수의 행들의 각각의 행은 상기 복수의 제2 행들의 행과 에피폴라 라인을 공유하는, 방법.
  18. 제12 항에 있어서,
    상기 패턴 피처의 제1 라인 세그먼트는 상기 제1 에피폴라 라인에 대해 35° 내지 55°의 범위의 각을 이루고, 상기 패턴 피처의 제2 라인 세그먼트는 상기 제1 에피폴라 라인에 대해 125° 내지 145°의 범위의 각을 이루는, 방법.
  19. 제12 항에 있어서,
    상기 패턴 피처의 상기 속성들은 상기 패턴 피처의 제1 라인 세그먼트에 대응하는 제1 벡터 u p , 상기 패턴 피처의 제2 라인 세그먼트에 대응하는 제2 벡터 v p 및 상기 제1 벡터 u p 와 상기 제2 벡터 v p 가 교차하는 지점의 좌표 p p 를 포함하고,
    상기 이미지 피처의 상기 속성들은 상기 이미지 피처의 제1 라인 세그먼트에 대응하는 제3 벡터 u c , 상기 이미지 피처의 제2 라인 세그먼트에 대응하는 제4 벡터 v c 및 상기 제3 벡터 u c 와 상기 제4 벡터 v c 가 교차하는 지점의 좌표 p c 를 포함하는, 방법.
  20. 제19 항에 있어서,
    상기 평면 가정과 연관된 상기 파라미터들의 세트는 평면 Π를 정의하고 카메라 좌표계의 원점 c c 에서 상기 평면 Π까지의 최단 거리에 대응하는 거리 D, 평면 법선 벡터 nc c 및 상기 이미지 센서에 의해 정의된 이미지 평면의 중심을 통해 연장되는 z 축 사이의 극각 θ 및 상기 평면 법선 벡터 n과 상기 이미지 평면의 수평 방향을 따라 연장되는 x 축 사이의 방위각
    Figure pct00043
    를 포함하는, 방법.
  21. 제20 항에 있어서,
    Figure pct00044
    의 관계를 사용하여 상기 평면 법선 벡터 n을 결정하는 단계; 및
    Figure pct00045
    의 관계를 사용하여 상기 거리 D를 결정하는 단계를 더 포함하고,
    b는 상기 카메라 좌표계의 상기 원점 c c 와 패턴 좌표계의 원점 c p 사이의 거리인, 방법.
  22. 제12 항에 있어서,
    상기 이미지 센서로 하여금 상기 광 패턴을 포함하지 않는 상기 장면의 제2 이미지를 캡처하게 하는 단계;
    상기 이미지와 상기 제2 이미지 사이의 차이에 기초하여 차이 이미지를 계산하는 단계; 및
    상기 차이 이미지를 사용하여 상기 이미지의 상기 이미지 피처를 식별하는 단계를 더 포함하는, 방법.
  23. 컴퓨터 실행 가능 명령어들을 포함하는 비일시적 컴퓨터 판독 가능 매체로서, 상기 컴퓨터 실행 가능 명령어들은 프로세서에 의해 실행될 때 상기 프로세서로 하여금 장면에서 평면들을 복구하기 위한 방법을 수행하게 하고, 상기 방법은:
    광원으로 하여금 상기 장면을 향해 2차원 광 패턴을 방출하게 하는 단계 ― 상기 2차원 광 패턴은 제1 에피폴라 라인 상에 배치되는 패턴 피처를 포함하고, 상기 패턴 피처는 상기 제1 에피폴라 라인 상에 위치된 지점에서 교차하는 2 개의 교차하는 라인 세그먼트들을 포함함 ―;
    이미지 센서로 하여금 상기 광 패턴의 적어도 일부를 포함하는 상기 장면의 이미지를 캡처하게 하는 단계;
    상기 이미지에서 이미지 피처를 식별하는 단계 ― 상기 이미지 피처는 상기 제1 에피폴라 라인에 대응하는 상기 이미지의 지점에서 교차하는 2 개의 교차하는 라인 세그먼트들을 포함함 ―;
    적어도 상기 패턴 피처를 상기 제1 에피폴라 라인과 모두 연관되는 상기 패턴 피처 및 상기 이미지 피처에 기초하여 상기 이미지 피처에 잠재적으로 대응하는 것으로 식별하는 단계;
    상기 패턴 피처의 속성들 및 상기 이미지 피처의 속성들에 기초하여 상기 패턴 피처와 연관된 평면 가정을 추정하는 단계 ― 상기 평면 가정은 평면을 특징화하는 파라미터들의 세트와 연관됨 ―; 및
    상기 평면 가정에 기초하여 상기 장면에서 평면 표면을 식별하는 단계를 포함하는, 비일시적 컴퓨터 판독 가능 매체.
KR1020237006767A 2020-07-31 2021-08-02 구조화된 광을 사용하여 장면에서 평면 표면들을 직접 복구하기 위한 시스템, 방법 및 매체 KR20230065978A (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US16/945,449 US11398085B2 (en) 2020-07-31 2020-07-31 Systems, methods, and media for directly recovering planar surfaces in a scene using structured light
US16/945,449 2020-07-31
PCT/US2021/044165 WO2022072055A2 (en) 2020-07-31 2021-08-02 Systems, methods, and media for directly recovering planar surfaces in a scene using structured light

Publications (1)

Publication Number Publication Date
KR20230065978A true KR20230065978A (ko) 2023-05-12

Family

ID=80003094

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020237006767A KR20230065978A (ko) 2020-07-31 2021-08-02 구조화된 광을 사용하여 장면에서 평면 표면들을 직접 복구하기 위한 시스템, 방법 및 매체

Country Status (5)

Country Link
US (1) US11398085B2 (ko)
EP (1) EP4189650A2 (ko)
KR (1) KR20230065978A (ko)
CN (1) CN116250017A (ko)
WO (1) WO2022072055A2 (ko)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11657578B2 (en) 2021-03-11 2023-05-23 Quintar, Inc. Registration for augmented reality system for viewing an event
US11645819B2 (en) 2021-03-11 2023-05-09 Quintar, Inc. Augmented reality system for viewing an event with mode based on crowd sourced images
US12028507B2 (en) 2021-03-11 2024-07-02 Quintar, Inc. Augmented reality system with remote presentation including 3D graphics extending beyond frame
US12003806B2 (en) * 2021-03-11 2024-06-04 Quintar, Inc. Augmented reality system for viewing an event with multiple coordinate systems and automatically generated model
US11527047B2 (en) 2021-03-11 2022-12-13 Quintar, Inc. Augmented reality system for viewing an event with distributed computing
KR20230060029A (ko) * 2021-10-27 2023-05-04 삼성전자주식회사 평면 검출 장치 및 방법

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5689681B2 (ja) * 2007-08-17 2015-03-25 レニショウ パブリック リミテッド カンパニーRenishaw Public Limited Company 非接触プローブ
DE102014113389A1 (de) * 2014-09-17 2016-03-17 Pilz Gmbh & Co. Kg Verfahren und Vorrichtung zum Identifizieren von Strukturelementen eines projizierten Strukturmusters in Kamerabildern
US10282857B1 (en) * 2017-06-27 2019-05-07 Amazon Technologies, Inc. Self-validating structured light depth sensor system
US10948285B2 (en) * 2017-07-28 2021-03-16 Faro Technologies, Inc. Three-dimensional measurement device mobile geometry verification
US10839536B2 (en) * 2018-10-02 2020-11-17 Facebook Technologies, Llc Depth sensing using grid light patterns

Also Published As

Publication number Publication date
EP4189650A2 (en) 2023-06-07
US11398085B2 (en) 2022-07-26
WO2022072055A2 (en) 2022-04-07
WO2022072055A3 (en) 2022-05-12
CN116250017A (zh) 2023-06-09
US20220036118A1 (en) 2022-02-03

Similar Documents

Publication Publication Date Title
US11398085B2 (en) Systems, methods, and media for directly recovering planar surfaces in a scene using structured light
US9392262B2 (en) System and method for 3D reconstruction using multiple multi-channel cameras
CN106796661B (zh) 投影光图案的系统、方法和计算机程序产品
Singh et al. Bigbird: A large-scale 3d database of object instances
CN109751973B (zh) 三维测量装置、三维测量方法以及存储介质
Alhwarin et al. IR stereo kinect: improving depth images by combining structured light with IR stereo
RU2521725C2 (ru) Система и способ трехмерного измерения формы материальных объектов
US20100245851A1 (en) Method and apparatus for high-speed unconstrained three-dimensional digitalization
US9865045B2 (en) Orthogonal and collaborative disparity decomposition
US10753736B2 (en) Three-dimensional computer vision based on projected pattern of laser dots and geometric pattern matching
Mobedi et al. 3-D active sensing in time-critical urban search and rescue missions
US20220092345A1 (en) Detecting displacements and/or defects in a point cloud using cluster-based cloud-to-cloud comparison
US20220179083A1 (en) Cloud-to-cloud comparison using artificial intelligence-based analysis
Zhang et al. Development of an omni-directional 3D camera for robot navigation
KR20200046789A (ko) 이동하는 물체의 3차원 데이터를 생성하는 방법 및 장치
Zhang et al. Finding disaster victims: A sensory system for robot-assisted 3D mapping of urban search and rescue environments
US20140218477A1 (en) Method and system for creating a three dimensional representation of an object
Harvent et al. Multi-view dense 3D modelling of untextured objects from a moving projector-cameras system
Kim et al. An active trinocular vision system of sensing indoor navigation environment for mobile robots
Rodrigues et al. Structured light techniques for 3D surface reconstruction in robotic tasks
US20230044371A1 (en) Defect detection in a point cloud
Lee et al. Blocks-world cameras
CN112648936A (zh) 基于差分投影的立体视觉检测方法及检测装置
Kim et al. An active trinocular vision system for sensing mobile robot navigation environments
US20230090275A1 (en) Systems and Methods for Stereo Depth Sensing