KR102610030B1 - 큐보이드 검출을 위한 딥 러닝 시스템 - Google Patents

큐보이드 검출을 위한 딥 러닝 시스템 Download PDF

Info

Publication number
KR102610030B1
KR102610030B1 KR1020217018412A KR20217018412A KR102610030B1 KR 102610030 B1 KR102610030 B1 KR 102610030B1 KR 1020217018412 A KR1020217018412 A KR 1020217018412A KR 20217018412 A KR20217018412 A KR 20217018412A KR 102610030 B1 KR102610030 B1 KR 102610030B1
Authority
KR
South Korea
Prior art keywords
cuboid
image
refined
layer
roi
Prior art date
Application number
KR1020217018412A
Other languages
English (en)
Other versions
KR20210075225A (ko
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 매직 립, 인코포레이티드
Priority to KR1020237041389A priority Critical patent/KR20230170119A/ko
Publication of KR20210075225A publication Critical patent/KR20210075225A/ko
Application granted granted Critical
Publication of KR102610030B1 publication Critical patent/KR102610030B1/ko

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0481Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
    • G06F3/04815Interaction with a metaphor-based environment or interaction object displayed as three-dimensional, e.g. changing the user viewpoint with respect to the environment or object
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/60Type of objects
    • G06V20/64Three-dimensional objects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/24Classification techniques
    • G06F18/241Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches
    • G06F18/2413Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches based on distances to training or reference patterns
    • G06F18/24133Distances to prototypes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/011Arrangements for interaction with the human body, e.g. for user immersion in virtual reality
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/044Recurrent networks, e.g. Hopfield networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/0464Convolutional networks [CNN, ConvNet]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • G06N3/084Backpropagation, e.g. using gradient descent
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T17/00Three dimensional [3D] modelling, e.g. data description of 3D objects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/10Segmentation; Edge detection
    • G06T7/11Region-based segmentation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/60Analysis of geometric attributes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/70Determining position or orientation of objects or cameras
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/90Determination of colour characteristics
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/20Image preprocessing
    • G06V10/25Determination of region of interest [ROI] or a volume of interest [VOI]
    • 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
    • G06V10/443Local 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 by matching or filtering
    • G06V10/449Biologically inspired filters, e.g. difference of Gaussians [DoG] or Gabor filters
    • G06V10/451Biologically inspired filters, e.g. difference of Gaussians [DoG] or Gabor filters with interaction between the filter responses, e.g. cortical complex cells
    • G06V10/454Integrating the filters into a hierarchical structure, e.g. convolutional neural networks [CNN]
    • 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/46Descriptors for shape, contour or point-related descriptors, e.g. scale invariant feature transform [SIFT] or bags of words [BoW]; Salient regional features
    • G06V10/462Salient features, e.g. scale invariant feature transforms [SIFT]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/74Image or video pattern matching; Proximity measures in feature spaces
    • G06V10/75Organisation 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/751Comparing pixel values or logical combinations thereof, or feature values having positional relevance, e.g. template matching
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/77Processing image or video features in feature spaces; using data integration or data reduction, e.g. principal component analysis [PCA] or independent component analysis [ICA] or self-organising maps [SOM]; Blind source separation
    • G06V10/774Generating sets of training patterns; Bootstrap methods, e.g. bagging or boosting
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/82Arrangements for image or video recognition or understanding using pattern recognition or machine learning using neural networks
    • 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/19Recognition using electronic means
    • G06V30/191Design or setup of recognition systems or techniques; Extraction of features in feature space; Clustering techniques; Blind source separation
    • G06V30/19173Classification techniques
    • 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/19Recognition using electronic means
    • G06V30/192Recognition using electronic means using simultaneous comparisons or correlations of the image signals with a plurality of references
    • G06V30/194References adjustable by an adaptive method, e.g. learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20081Training; Learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20084Artificial neural networks [ANN]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2210/00Indexing scheme for image generation or computer graphics
    • G06T2210/12Bounding box
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/50Context or environment of the image
    • G06V20/56Context or environment of the image exterior to a vehicle by using sensors mounted on the vehicle
    • G06V20/58Recognition of moving objects or obstacles, e.g. vehicles or pedestrians; Recognition of traffic objects, e.g. traffic signs, traffic lights or roads
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V2201/00Indexing scheme relating to image or video recognition or understanding
    • G06V2201/12Acquisition of 3D measurements of objects

Abstract

이미지들에서 큐보이드 검출 및 키포인트 로컬화를 위한 시스템들 및 방법들이 개시된다. 일 양상에서, 딥 큐보이드 검출기는 단안 이미지들에서 동시성 큐보이드 검출 및 키포인트 로컬화를 위해 사용될 수 있다. 딥 큐보이드 검출기는 입력 이미지로부터 콘볼루셔널 특징 맵을 결정하기 위해 트레이닝된 콘볼루션 뉴럴 네트워크의 복수의 콘볼루셔널 층들 및 비-콘볼루셔널 층들을 포함할 수 있다. 딥 큐보이드 검출기의 구역 제안 네트워크는 콘볼루셔널 특징 맵을 사용하여 이미지에서 큐보이드를 둘러싸는 바운딩 박스를 결정할 수 있다. 딥 큐보이드 검출기의 풀링 층 및 회귀자 층들은 큐보이드의 정제된 바운딩 박스 및 파라미터화된 표현을 결정하기 위한 반복적 특징 풀링(iterative feature pooling)을 구현할 수 있다.

Description

큐보이드 검출을 위한 딥 러닝 시스템{DEEP LEARNING SYSTEM FOR CUBOID DETECTION}
[0001] 본 출원은, 2016년 11월 15에 출원되고 발명의 명칭이 "DEEP CUBOID DETECTION: BEYOND 2D BOUNDING BOXES"인 미국 특허 출원 번호 제62/422,547호를 우선권으로 주장하며, 이로써, 이 출원의 내용들은 그 전체가 인용에 의해 본원에 포함된다.
[0002] 본 개시내용은 일반적으로 이미지들에서 3-차원 객체 검출을 위한 시스템들 및 방법들에 관한 것으로, 보다 상세하게는 이미지들에서 큐보이드(cuboid)들을 검출하기 위한 딥 기계 학습 시스템(deep machine learning system)에 관한 것이다.
[0003] DNN(deep neural network)는 컴퓨테이션 기계 학습 방법이다. DNN은 인공 뉴럴 네트워크(neural network; NN)의 클래스에 속한다. NN들에 있어서, 생물학적 뉴럴 네트워크의 특징들을 모방하는 컴퓨테이셔널 그래프(computational graph)가 구성된다. 생물학적 뉴럴 네트워크는 컴퓨테이션에 대해 두드러진 특징들을 포함하고, 그렇지 않으면 다른 방법들을 통해 캡처하기 어려울 수 있는 생물학적 시스템의 능력들 중 대부분을 담당한다. 일부 구현들에서, 이러한 네트워크들은 연결이 단방향인 순차적 계층화된 구조로 배열된다. 예컨대, 특정 층의 인공 뉴런들의 출력들은 후속 층의 인공 뉴런들의 입력들에 연결될 수 있다. DNN은 매우 다수의 층들(예컨대, 수십, 수백 또는 그 이상의 층들)을 갖는 NN일 수 있다.
[0004] 상이한 NN들은 상이한 관점들에서 서로 상이하다. 예컨대, 토폴로지들 또는 아키텍처들(예컨대, 층들의 수 및 층들이 상호연결되는 방식) 및 상이한 NN들의 가중치들이 상이할 수 있다. 가중치는 생물학적 시스템에서 뉴럴 연결(neural connection)의 시냅스 세기와 거의 유사할 수 있다. 가중치들은 하나의 층으로부터 다른 층으로 전파되는 효과의 세기에 영향을 줄 수 있다. 인공 뉴런의 출력은 자신의 입력들의 가중화된 합의 비선형 함수일 수 있다. NN의 가중치들은 이러한 합계들에 나타나는 가중치들일 수 있다.
[0005] 단일의 단안 이미지로부터 세계의 3-차원(3D) 표현을 구축하는 것은 컴퓨터 비전에서 중요한 난제이다. 본 개시내용은 이미지들에서 3D 큐보이드들(예컨대, 박스-형 객체들)의 검출 및 키포인트(keypoint)들의 로컬화(localization)를 위한 시스템들 및 방법들의 예들을 제공한다. 일 양상에서, 딥 큐보이드 검출기는 이미지들에서 동시성 큐보이드 검출 및 키포인트 로컬화를 위해 사용될 수 있다. 딥 큐보이드 검출기는 입력 이미지로부터 콘볼루셔널 특징 맵(convolutional feature map)을 결정하기 위해 트레이닝된 콘볼루셔널 뉴럴 네트워크의 복수의 콘볼루셔널 층들 및 비-콘볼루셔널 층들을 포함할 수 있다. 딥 큐보이드 검출기의 구역 제안 네트워크(region proposal network)는 콘볼루셔널 특징 맵을 사용하여 이미지에서 큐보이드를 둘러싸는 바운딩 박스(bounding box)를 결정할 수 있다. 딥 큐보이드 검출기의 풀링 층 및 회귀자(regressor) 층들은 큐보이드의 정제된 바운딩 박스 및 파라미터화된 표현을 결정하기 위한 반복적 특징 풀링(iterative feature pooling)을 구현할 수 있다.
[0006] 본 명세서에서 설명되는 청구 대상의 하나 이상의 구현들의 세부사항들은, 아래의 첨부 도면들 및 설명에서 기술된다. 다른 특징들, 양상들, 및 이점들은 설명, 도면들, 및 청구항들로부터 명백해질 것이다. 이 개요 또는 다음의 상세한 설명 어느 것도, 본 발명의 청구 대상의 범위를 한정하거나 제한하는 것으로 의도되지 않는다.
[0007] 도 1a는 검출된 객체 주위에 오버레이된 바운딩 박스를 갖는 2-차원(2D) 객체 검출을 예시하는 예시적인 단안 이미지이다.
[0008] 도 1b는 검출된 객체 상에 오버레이된 큐보이드의 표현을 갖는 3-차원(3D) 큐보이드 검출을 예시하는 예시적인 단안 이미지이다. 도 1b는 단안 이미지 내부에서 하나의 큐보이드가 검출되고 그의 꼭짓점들(연결된 8개의 검은 원들로서 도시됨)이 로컬화되는 것을 도시한다.
[0009] 도 2는 큐보이드 검출기의 예시적인 구조를 도시한다.
[0010] 도 3은 RoI(region of interest) 정규화된 좌표들을 예시하는 예시적인 이미지이다.
[0011] 도 4a 내지 도 4g는 예시적인 큐보이드 검출 및 키포인트 로컬화를 예시하는 이미지들을 도시한다. 하나 이상의 큐보이드들이 각각의 이미지에서 검출되며, 백색의 연결된 원으로 도시된 각각의 큐보이드의 키포인트가 로컬화된다.
[0012] 도 5a 내지 도 5c는 반복적인 특징 풀링을 통한 키포인트 정제에 의한 개선된 성능을 보여주는 예시적인 이미지들을 도시한다.
[0013] 도 6은 예시적인 큐보이드 소실점(vanishing point)들을 보여주는 개략도이다.
[0014] 도 7a 내지 도 7f는 큐보이드 검출기의 예시적인 성능을 보여주는 플롯들이다.
[0015] 도 8은 큐보이드 검출기를 트레이닝하는 예시적인 프로세스의 흐름도이다.
[0016] 도 9는 큐보이드 좌표 검출 및 키포인트 로컬화를 위해 큐보이드 검출기를 사용하는 예시적인 프로세스의 흐름도이다.
[0017] 도 10은 딥 큐보이드 검출기의 일 실시예를 구현할 수 있는 웨어러블 디스플레이 시스템의 예를 개략적으로 예시한다.
[0018] 도면들 전체에 걸쳐, 참조 번호들은 참조된 엘리먼트들 사이의 대응성(correspondence)을 표시하는 데 재사용될 수 있다. 도면들은 본원에서 설명된 예시적인 실시예들을 예시하기 위해 제공되며 본 개시내용의 범위를 제한하려는 의도는 아니다.
개요
[0019] 함수들, 알고리즘들, 시스템들 등과 같은 데이터 관계들 및 패턴들을 표현하는 모델들은 입력을 받고 어떤 방식으로든 입력에 대응하는 출력을 생성할 수 있다. 예컨대, 모델은 CNN(convolutional neural network) 또는 DNN(deep neural network)과 같은 기계 학습 방법으로서 구현될 수 있다. 딥 러닝은 작업 특정 알고리즘과 달리 데이터 표현들을 학습하는 아이디어에 기초한 광범위한 기계 학습 방법군의 부분이며, 증강 현실, 혼합 현실, 가상 현실 및 기계 지능들에 유용한 시청각 컴퓨테이셔널 문제들을 해결하는 데 뛰어난 장래성을 보여준다. 기계 학습에서, CNN(convolutional neural network) 또는 ConvNet는 깊은(deeep), 피드-포워드 인공 뉴럴 네트워크들의 클래스를 포함할 수 있고, CNN들은 시각적 이미저리의 분석에 성공적으로 적용되었다. 기계 학습 방법들은 눈 이미지 세그먼테이션 및 눈 추적을 포함한 매우 다양한 문제들에 대한 강력하고 정확한 솔루션들을 가능하게 하는 방법군들을 포함한다.
[0020] 장면의 입력 이미지를 프로세싱하고 이미지에서 적어도 하나의 큐보이드를 로컬화하는 큐보이드 검출기의 예들이 본원에서 개시된다. 예컨대, 큐보이드 검출기(예컨대, 딥 큐보이드 검출기)는 어수선한 장면의 소비자-품질의 적색-녹색-청색(RGB) 이미지를 프로세싱하고 이미지에서 일부 또는 모든 3-차원(3D) 큐보이드들을 로컬화할 수 있다. 큐보이드는 박스모양 또는 박스-형 객체를 포함할 수 있고, 예컨대, 4개, 5개, 6개, 7개, 8개, 10개, 12개 또는 그 이상의 면들을 갖는 다면체(볼록할 수 있음)를 포함할 수 있다. 예컨대, 큐보이드들은 피라미드들, 큐브들, 프리즘들, 평행 육면체 등을 포함할 수 있다. 큐보이드들은 기하학적 구조로부터의 이러한 다면체 형상들로 제한되지 않으며, 예컨대, 가전기기들(예컨대, 텔레비전 세트들, 컴퓨터 모니터들, 토스트기들, 세탁기들, 냉장고들), 가구(소파들, 의자들, 침대들, 유아용 침대들, 식탁들, 책꽂이들, 캐비닛들), 차량들(예컨대, 자동차들, 버스들) 등과 같은 박스-형 구조들을 포함할 수 있다. 아래에서 추가로 설명되는 바와 같이, 큐보이드들은 그의 면들, 꼭짓점들, 에지들 또는 바운딩 박스 내의 존재의 관점에서 식별될 수 있다.
[0021] 일부 실시예들에서, 큐보이드는 N개의 파라미터들의 튜플(tuple)로서 특징화되는 기하학적 형상을 포함할 수 있다. 파라미터들은 구체의 반경 또는 큐보이드의 길이, 폭 및 높이와 같이 본질적으로 기하학적일 수 있다. 임의의 기하학적 프리미티브(geometric primitive)를 파라미터화하는 보다 일반적인 방식은 프리미티브의 표면 상의 포인트들의 모음으로서 그것을 표현하는 것일 수 있다. 프리미티브의 표면의 랜덤 포인트가 선택되는 경우, 랜덤 포인트가 컴퓨터-비전 관점으로부터 로컬화 가능하지 않을 수 있다. 파라미터화 포인트들의 세트들이 기하학적으로 유익하고 시각적으로 차별적이 되는 것이 유리할 수 있다. 예컨대, 큐보이드들의 경우에, 파라미터화 포인트들의 세트는 큐보이드의 꼭짓점들(이는 때로는, 코너들 또는 키포인트들로서 본원에서 지칭될 수 있음)일 수 있다.
[0022] 일부 실시예들에서, 큐보이드는 8개의 꼭짓점들의 튜플로서 표현되며, 여기서 각각의 꼭짓점은 이미지의 좌표들(예컨대, 데카르트 x, y 좌표들)에 의해 표시될 수 있다. 이러한 표현에서, 큐보이드는 16개의 파라미터들, 즉 8개의 꼭짓점들 각각 마다 2개의 좌표들에 의해 표현된다. 16개의 파라미터들 전부가 필요하진 않을 수 있고, 일부 경우들에서, 예컨대, 아래에서 논의될 바와 같이, 대안적인 큐보이드 표현들은 일부 꼭짓점들을 포함하지 않을 수 있고(예컨대, 단지 6개 꼭짓점들만을 사용함), 소실점들을 사용하여 다른 꼭짓점들을 결정할 수 있다.
[0023] 코너들, 에지들 및 소실점들과 같은 저-레벨 큐(cue)들로부터 3D 모델을 피팅하는 다른 접근법과는 달리, 본원에서 개시된 큐보이드 검출기는 다수의 시멘틱 카테고리들(예컨대, 오븐들, 배송 박스들 및 가구)에 걸쳐 큐보이드들을 검출하는 단-대-단 딥 러닝 시스템일 수 있다. 일부 구현들에서, 큐보이드 검출기는 2-차원(2D) 바운딩 박스로 큐보이드를 로컬화하고, 큐보이드의 키포인트들(예컨대, 꼭짓점들 또는 코너들)을 동시에 로컬화할 수 있어, 박스-형 객체의 3D 해석 또는 표현을 효과적으로 생성한다. 큐보이드 검출기는 콘볼루셔널 특징들을 반복적으로 풀링함으로써 키포인트들을 정제할 수 있어, 검출된 키포인트들의 정확도를 개선한다. 단-대-단 딥 러닝 프레임워크에 기초하여, 큐보이드 검출기의 일부 구현들의 이점은 선분들, 소실점들, 접합점들 등을 위해 맞춤식 저-레벨 검출기를 설계할 필요가 거의 없거나 전혀 없다는 것이다.
[0024] 큐보이드 검출기는 콘볼루셔널 뉴럴 네트워크의 복수의 콘볼루셔널 층들 및 비-콘볼루셔널 층들, RPN(region proposal network) 및 복수의 풀링 및 회귀자 층들을 포함할 수 있다. RPN은 이미지에서 객체 제안들을 생성할 수 있다. 복수의 콘볼루셔널 층들 및 비-콘볼루셔널 층들은 입력 이미지의 콘볼루셔널 특징 맵을 생성할 수 있다. CNN의 콘볼루셔널 층은 커널들의 커널 스택을 포함할 수 있다. 콘볼루셔널 층의 커널은 그의 입력에 적용될 때, 그 특정한 학습된 커널에 대한 응답을 보여주는 결과적인 출력 활성화 맵(resulting output activation map)을 생성할 수 있다. 결과적인 출력 활성화 맵은 그 후 CNN의 다른 층에 의해 프로세싱될 수 있다. CNN의 비-콘볼루셔널 층들은 예컨대, 정규화 층, 정제된 선형 층 또는 풀링 층을 포함할 수 있다.
[0025] 콘볼루셔널 뉴럴 네트워크 또는 딥 뉴럴 네트워크일 수 있는 RPN(region proposal network)은 콘볼루셔널 특징 맵으로부터 이미지 내의 큐보이드 주위의 2D 바운딩 박스를 결정할 수 있다. 2D 바운딩 박스는, 이미지 위치에서 큐보이드를 포함하는 이미지 상의 RoI(region of interest)을 나타낼 수 있다. 복수의 풀링 및 회귀자 층들은, 예컨대 풀링 층 및 둘 이상의 완전-연결 층들(이를테면, 3개, 5개, 10개 또는 그 이상의 층들)을 포함할 수 있다. 초기 2D 바운딩 박스에 기초하여, 복수의 큐보이드 풀링 및 회귀자 층들은 정제된 2D 바운딩 박스 및 큐보이드의 키포인트들을 반복적으로 결정할 수 있다.
[0026] 큐보이드 검출기는 단-대-단 방식으로 트레이닝될 수 있고, 일부 구현들에서, 증강 현실(AR), 혼합 현실(MR) 또는 로봇공학의 실시간 애플리케이션에 적합할 수 있다. 아래에서 설명되는 바와 같이, 웨어러블 혼합 현실 디스플레이 디바이스(예컨대, 도 10을 참조하여 설명된 웨어러블 디스플레이 시스템(1000))는 디스플레이 디바이스의 외향 카메라에 의해 획득된 이미지들에 대해 큐보이드 검출을 수행하도록 프로그래밍된 프로세서를 포함할 수 있다. 큐보이드 검출기의 일부 또는 모든 파라미터들은 트레이닝으로서 지칭되는 프로세스에서 학습할 수 있다. 예컨대, 기계 학습 모델은 입력 데이터 및 대응하는 입력 데이터에 대한 모델의 올바른 또는 바람직한 출력을 포함하는 트레이닝 데이터를 사용하여 트레이닝될 수 있다. 기계 학습 모델은 입력 데이터를 반복적으로 프로세싱할 수 있고, 기계 학습 모델의 파라미터들(예컨대, 가중값들)은 모델이 올바른 또는 바람직한 출력을 생성(또는 이에 "수렴")할 때까지 시행-착오(trial-and-error) 프로세스에 필요한 양으로 수정될 수 있다. 예컨대, 가중값들의 수정은 "역 전파(back propagation)"로서 지칭되는 프로세스를 통해 수행될 수 있다. 역 전파는 예상된 모델 출력과 획득된 모델 출력 간의 차이를 결정하고, 그 후 예상된 모델 출력과 획득된 모델 출력 간의 차이를 감소시키기 위해 모델의 일부 또는 모든 파라미터들의 값들을 어떻게 수정할지를 결정하는 것을 포함한다.
객체 검출 및 큐보이드 검출의 예시적인 비교
[0027] 단일의 단안 이미지로부터 세계의 3D 표현을 구축하는 것은 컴퓨터 비전에서 중요한 문제이다. 일부 애플리케이션들에서, 명시적 3D 모델들을 갖는 객체들은 그의 추정된 포즈와 함께 로컬화된다. 그러나 이러한 3D 모델들 없이도, 사용자 또는 컴퓨터 시스템(예컨대, 도 10을 참조하여 설명된 웨어러블 디스플레이 시스템(1000))은 여전히, 큐보이드들, 실린더들 및 구체들과 같은 기하학적 형상들의 단순 조합들의 관점에서 그의 주위에 관해 추론할 필요가 있을 수 있다. 때로는 지온(geon)들로서 지칭되는 이러한 프리미티브들은 인간들이 추론하기 쉬울 수 있다. 인간들은 이러한 간단한 기하학적 프리미티브들의 포즈에 대한 대강의 추정을 쉽게 행할 수 있고, 이질적인 인스턴스들에 대해 길이, 반경 또는 영역과 같은 기하학적 파라미터들을 비교할 수도 있다. 다수의 객체들이 다수의 기하학적 프리미티브들로 구성되지만, 매우 다수의 실제 객체들은 하나만의 프리미티브에 의해 잘 근사될 수 있다.
[0028] 예컨대, 일반적인 형상은 박스이다. 다수의 일상적인 객체들은 박스(예컨대, 배송 박스들, 캐비닛들, 세탁기들, 주사위, 전자 레인지들, 데스크톱 컴퓨터들)로서 기하학적으로 분류될 수 있다. 박스들(큐보이드들의 예들임)은 다양한 일상적인 객체 인스턴스들의 세트에 걸쳐 있으며, 인간들은 가공 큐보이드들을 이 객체들에 쉽게 피팅하고 그의 꼭짓점들 및 면들을 로컬화할 수 있다. 사람들은 또한, 이들이 박스-형 객체들의 정확한 치수들을 알지 못하는 경우에도 또는 객체들이 완전한 큐보이드들이 아닌 경우에도 상이한 박스-형 객체들의 치수들을 비교할 수 있다. 큐보이드들과 같은 클래스 불가지론적 기하학적 엔티티들을 검출하는 큐보이드 검출기를 구현하는 시스템들 및 방법들이 본원에서 개시된다. 클래스 불가지론적이란, 기하학적 엔티티의 상이한 클래스가 구별되지 않는다는 것을 의미한다. 예컨대, 큐보이드 검출기는 배송 박스, 전자 레인지 또는 캐비닛과 같은 큐보이드의 상이한 클래스들 간을 구별하지 못할 수 있다. 이러한 박스-형 객체들 모두는 동일한 단순화된 개념인 큐보이드로 표현될 수 있다.
[0029] 큐보이드 검출기의 일 실시예는 3D 객체 검출을 위해, 다음과 같이 사용될 수 있는데 즉, 3D 바운딩 박스를 이미지(예컨대, RGB 이미지 또는 RGB-D(RGB-Depth) 이미지)의 객체에 피팅하고, 이미지에서 3D 키포인트들을 검출하거나, 또는 3D 모델-2D 이미지 정렬을 수행할 수 있다. 이미지는 다수의 큐보이드들뿐만 아니라 다수의 잡동사니(clutter)(예컨대, 비-큐보이드 객체들)를 포함할 수 있기 때문에, 큐보이드 검출기는 큐보이드에 대응하는 RoI(regions of interest)의 최종 후보자 목록(shortlist)을 먼저 결정할 수 있다. 각각의 큐보이드를 에워싸는 2D 바운딩 박스 외에도, 큐보이드 검출기는 모든 8개의 꼭짓점들의 위치를 결정할 수 있다.
[0030] 딥 러닝은 지난 몇 년 동안 이미지 인식을 변혁시켰다. 오늘날의 객체 검출에 있어 다수의 최첨단 방법들은 이미지 분류 작업에 대해 트레이닝된 딥 네트워크 위에 구축된다. 큐보이드 검출기는 하나 이상의 딥 러닝 방법들을 구현하는 딥 큐보이드 검출기일 수 있다. 큐보이드 검출기는 모바일 디바이스의 하드웨어(예컨대, 도 10을 참조하여 설명된 웨어러블 디스플레이 시스템(1000))를 사용하여 높은 정확도를 가지며 실시간으로 실행될 수 있다.
[0031] 도 1a는 검출된 객체 주위에 오버레이된 바운딩 박스(104)를 갖는 2-차원(2D) 객체 검출을 예시하는 예시적인 단안 이미지(100a)이다. 도 1b는 검출된 객체 상에 오버레이된 큐보이드의 표현(108)을 갖는 3-차원(3D) 큐보이드 검출을 예시하는 예시적인 단안 이미지(100b)이다. 도 1b는 단안경 이미지(100) 내의 하나의 큐보이드(108)가 검출되고 그의 꼭짓점들이 로컬화되는 것을 도시한다. 8개의 꼭짓점들은 4개의 에지들(120a-120d)(점선으로 표현됨)에 의해 연결된 4개의 흑색 원들(112a-112d) 및 4개의 에지들(124a-124d)(실선으로 표현됨)에 의해 연결된 4개의 부가적인 흑색 원들(116a-116d)로서 도시된다. 꼭짓점들 중 4개(112a-112d)는 큐보이드의 하나의 면(128a)을 표현하고, 꼭짓점들 중 다른 4개(116a-116d)는 큐보이드의 다른 면(128b)을 표현한다. 큐보이드(108)의 2개의 면들(128a, 128b)은 꼭짓점들(112a-112d, 116a-116d)을 통해 4개의 에지들(132a-132d)(점선으로 표현됨)에 의해 연결된다. 큐보이드 검출기는 장면에서 박스-형 객체를 검출할 수 있다. 객체 검출과 달리, 큐보이드 검출기는 객체의 바운딩 박스를 초과하여 결정할 수 있다. 또한, 큐보이드 검출기는 큐보이드들의 꼭짓점들을 로컬화할 수 있다(예컨대, 도 1a를 도 1b와 비교함). 일부 실시예들에서, 큐보이드 검출기는 클래스 불가지론적일 수 있다. 예컨대, 큐보이드 검출기는 검출되는 큐보이드들의 클래스를 신경쓰지 않는다. 예컨대, 큐보이드 검출기는 큐보이드와 비-큐보이드 큐보이드의 2개의 객체들의 클래스들을 구별할 수 있다. 큐보이드 검출기는 단안 이미지 내부의 모든 큐보이드들을 결정하고 그의 꼭짓점들을 로컬화함으로써 3D 큐보이드 검출을 수행할 수 있다. 큐보이드 검출기는 단-대-단 방식으로 트레이닝될 수 있다. 큐보이드 검출기는 실시간으로 실행될 수 있으며, 입력으로서 소비자-등급 카메라를 사용하여 캡처된 어수선한 장면들의 RGB 이미지들에서 큐보이드 검출을 수행할 수 있다. 웨어러블 디스플레이 디바이스(예컨대, 도 10을 참조하여 설명된 웨어러블 디스플레이 시스템(1000))는 큐보이드 검출기를 구현할 수 있고, 검출된 큐보이드에 관한 정보를 사용하여 웨어러블 디스플레이 디바이스의 사용자 주위 환경을 나타내는 세계 맵을 생성 또는 업데이트할 수 있다.
[0032] 큐보이드는 파라미터화될 수 있는 기하학적 객체이며, 큐보이드 검출기(예컨대, 딥 큐보이드 검출기)는 장면에서 큐보이드의 파라미터들을 결정할 수 있다. 큐보이드를 검출하는 하나의 접근법은 에지들을 검출하고 이들 에지들에 큐보이드의 모델을 피팅하려고 시도한다. 따라서, 강력한 에지 선택은 시스템의 유용한 양상일 수 있다. 그러나 이것은, 큐보이드 표면들 상에 오해의 소지가 있는 텍스처들이 존재할 때, 예컨대, 에지들과 코너들이 폐색되거나 장면이 상당한 배경 잡동사니를 포함하는 경우 난제가 된다. 주어진 라인이 순전히 로컬 특징들을 가진 주어진 큐보이드에 속하는지를 분류하는 것은 난제가 될 수 있다. 큐보이드 검출기는 데이터-주도적 접근법을 사용하여 이미지들에서 큐보이드들을 검출하는 것을 학습할 수 있다. 큐보이드 검출기는, 라벨이 주택들, 세탁기들, 투표함들, 책상들, 자동차들, 텔레비전 세트들 등과 같은 다수의 카테고리들에 걸쳐 퍼져있더라도, 장면에서 박스-형 객체들에 단일 라벨(예컨대, 큐보이드)을 할당할 수 있다. 큐보이드 검출기는 이를 구현하는 시스템(예컨대, 도 10을 참조하여 설명된 웨어러블 디스플레이 시스템(1000))이 상이한 장면들에서 큐보이드들을 식별하도록 돕는 특징들을 성공적으로 학습할 수 있는 CNN을 포함할 수 있다.
[0033] 일부 실시예들에서, 큐보이드 검출기는 큐보이드 검출 및 키포인트 로컬화를 공동으로 수행하는 딥 러닝 모델을 구현할 수 있다. 예컨대, 큐보이드 검출기는 큐보이드 검출 및 키포인트 로컬화를 공동으로 수행하는 딥 뉴럴 네트워크를 포함할 수 있다. 큐보이드 검출기는 다른 방법들에 의해 수행된 검출의 정확도 및 로컬화 정확도를 초과할 수 있다. 일부 구현들에서, 큐보이드 검출기는 우선, 관심 객체를 검출하고, 그 후 그의 꼭짓점들의 위치에 관해 대상의 또는 초기 예측을 행할 수 있다. 큐보이드는 주의 메커니즘(attention mechanism)으로서 대강의 또는 초기 예측들을 활용하여, 큐보이드가 될 확률이 높은 구역들만을 검토함으로써 꼭짓점들의 정제(refinement)를 수행할 수 있다. 일부 실시예들에서, 큐보이드 검출기는 정확도를 개선하기 위해 반복적인 특징 풀링 메커니즘을 구현할 수 있다. 큐보이드 검출기는 큐보이드-관련 손실들을 결합하고 그리고/또는 대안적인 파라미터화를 구현하여 정확도를 개선할 수 있다.
예시적인 큐보이드 네트워크 아키텍처 및 손실 함수
[0034] 도 2는 큐보이드 검출기의 예시적인 구조를 도시한다. 큐보이드 검출기(200)는 다음의 컴포넌트들 즉, 콘볼루셔널 층(204)(CNN 타워로서 본원에서 또한 지칭된), RPN(Region Proposal Network)(208), 적어도 하나의 풀링 층(212), 또는 하나 이상의 완전 연결 층들(216)(예컨대, 구역 CNN(R-CNN) 회귀자(또는 분류자)) 중 하나 이상을 포함할 수 있다. 풀링 층(212) 및 완전 연결 층들(216)은 큐보이드 키포인트 위치들을 정제하는 반복적인 특징 풀링을 구현할 수 있다. R-CNN은 고속(Faster) R-CNN일 수 있다.
[0035] 큐보이드 검출기(200)는 딥 큐보이드 검출 파이프라인을 구현할 수 있다. 딥 큐보이드 검출 파이프라인의 제1 동작은 큐보이드가 존재할 수 있는 이미지(202a)에서 RoI(Region of interest)(220a1, 220b)을 결정할 수 있다. RPN(Region Proposal Network)(200)는 이미지(202b)에 예시된 바와 같이 그러한 RoI들(220a1, 220b)을 출력하도록 트레이닝될 수 있다. 그 후, 각각의 RoI(220a1, 220b)에 대응하는 특징을 갖는 영역(224a)은 콘볼루셔널 특징 맵(228)(예컨대, Oxford University의 Visual Geometry Group으로부터의 VGG-M에서의 제5 콘볼루셔널 특징 맵(conv5))으로부터 하나 이상의 풀링 층들(212)을 사용하여 풀링될 수 있다. 이러한 풀링된 특징은 2개의 완전 연결 층들(216)을 통과할 수 있다. 일부 구현들에서, 단순히 2D 바운딩 박스를 생성하는 것 대신에, 큐보이드 검출기(200)는 RoI(220a1, 220b)의 중심으로부터 꼭짓점들의 정규화된 오프셋들을 출력할 수 있다. 큐보이드 검출기(200)는 반복적 특징 풀링을 수행함으로써 예측들을 정제할 수 있다. 도 2의 점선들은 이미지(202b)에서 RoI(220a1) 및 이미지(202c)에서 정제된 RoI(220a2)에 대응하는, 특징들이 풀링될 수 있는 콘볼루셔널 특징 맵(228)의 구역들(224a, 224b)을 도시한다. 2개의 완전 연결 층들(216)은 정제된 RoI(220a2)에 대응하는 콘볼루셔널 특징 맵(228)의 구역(224b)을 프로세싱하여 이미지(202d)에서 큐보이드(232)의 추가로 정제된 RoI 및/또는 표현을 결정할 수 있다.
[0036] CNN 타워(204)는 VGG 및 ResNet들과 같은 ConvNet들의 사전-트레이닝된 완전 콘볼루셔널 부분일 수 있다. 콘볼루셔널 특징 맵(228)은 CNN 타워(204)의 마지막 층의 출력을 지칭한다. 예컨대, 콘볼루셔널 특징 맵(228)은 크기 m x n x 512를 갖는 Oxford University의 Visual Geometry Group으로부터의 VGG16에서의 제5 콘볼루셔널 층, 이를테면, conv5의 출력일 수 있다.
[0037] RPN(208)은 콘볼루셔널 특징 맵(228)의 각각의 모든 셀을 K개의 멀티-스케일 앵커-박스들의 분포, 바운딩 박스 오프셋들 및 객체성 스코어에 맵핑하는 완전 콘볼루셔널 네트워크일 수 있다. RPN은 2개의 연관된 손실 함수들 즉, 객체성에 대한 로그 손실 함수와 바운딩 박스 회귀에 대한 스무스(smooth) L1 손실 함수를 가질 수 있다. RPN(208)은 예컨대, 512개의 3 x 3 필터들을 사용하고, 그 후 객체성을 위해 18개의 1 x 1 필터들을 사용하고, 바운딩 박스 오프셋들을 위해 36개의 1 x 1 필터들을 사용할 수 있다.
[0038] RoI 풀링 층(212)은 임의의 유효한 관심 구역(220a1, 220a2, 220b) 내부의 특징들을 작은 고정-크기 특징 맵(또는 콘볼루셔널 특징 맵(228)의 서브맵)으로 변환하기 위해, 예컨대 최대 풀링(max pooling)을 사용할 수 있다. 예컨대, 크기 m x n x 512의 conv5에 대해, 풀링 층(212)은 입력 구역 종횡비 및 스케일에 독립적으로, 크기 7 x 7 x 512의 출력을 생성할 수 있다. 일부 실시예들에서, 공간적 피라미드 매칭이 구현될 수 있다.
[0039] 완전 연결된 층들(216)(예컨대, R-CNN 회귀자)은 그 후, 각각의 고정-크기 특징 벡터에 적용되어 큐보이드성 스코어(cuboidness score), 바운딩 박스 오프셋들(4개의 수들) 및 8개의 큐보이드 키포인트 위치들(16개의 수들)을 출력할 수 있다. 바운딩 박스 회귀 값들(Δx, Δy, Δw, Δh)은 초기 객체 제안을 객체 주위에 빽빽하게 피팅하는 데 사용할 수 있다. 키포인트 위치들은 RoI의 중심으로부터의 오프셋들로서 인코딩될 수 있고 도 3에 도시된 바와 같이 제안 폭/높이에 의해 정규화될 수 있다. 도 3은 이미지(300)에서 RoI(304)의 중심으로부터의 오프셋들로서 표현되고 구역의 폭(w) 및 높이(h)에 의해 정규화되는 꼭짓점들의 RoI-정규화된 좌표들을 예시하며, (, )는 키포인트(308)이고, (, )는 RoI의 중심(312)이다. 각각의 키포인트에 대한 예시적인 그라운드 트루(ground truth) 타겟들은 수식들 [1] 및 [2]에서 보여진다.
및 (수식 1),
(수식 2).
[0040] 도 2를 참조하면, R-CNN은 2개의 완전 연결 층들(216)(예컨대, 각각 4096개의 뉴런들)을 포함할 수 있고, 3개의 연관된 손실 함수들, 즉 큐보이드성에 대한 로그 손실 함수 및 바운딩 박스 및 꼭짓점 회귀 둘 모두에 대한 스무스 L1 손실 함수들을 가질 수 있다.
[0041] RoI 풀링 층(212) 및 R-CNN 층들은 함께 고려할 때, 정제 메커니즘으로서 동작하여, 입력 박스를 개선된 하나의 주어진 특징 맵에 맵핑한다. 큐보이드 검출기(200)는 네트워크의 마지막 부분을 여러 번(예컨대, 2번, 3번, 4번 또는 그 이상) 적용할 수 있다(이는 본원에서 반복적 특징 풀링으로서 지칭됨).
[0042] RPN(208)에 사용된 손실 함수들은 인 2개의 클래스들(예컨대, 큐보이드 대 큐보이드가 아님)에 대한 로그 손실 및 인 각각의 앵커 박스에 대한 바운딩 박스 회귀 값들의 스무스 L1 손실을 포함할 수 있다. R-CNN에 대한 손실 함수들은 인 2개의 클래스들(예컨대, 큐보이드 대 큐보이드가 아님)에 대한 로그 손실, 인 RoI에 대한 바운딩 박스 회귀 값들의 스무스 L1 손실, 및 인 RoI의 예측된 키포인트 위치들에 대한 스무스 L1 손실을 포함할 수 있다. 마지막 용어는 코너 또는 꼭짓점 회귀 손실로서 지칭될 수 있다. 완전 손실 함수는 위에서 언급된 손실들의 가중화된 합일 수 있고, 수식 [3]에서 보여지는 바와 같이 작성될 수 있다. 손실 가중치()는 0.1, 0.5, 1, 2, 5, 10 또는 그 이상과 같이 상이한 구현들에서 상이할 수 있다.
(수식 3),
예시적인 성능
[0043] 그의 성능을 결정하기 위해, 큐보이드 검출기(200)의 실시예는 Caffe를 사용하여 구현되었고 고속 R-CNN의 구현 위에 구축되었다. 성능을 결정하기 위해 ImageNet 상에서 이미지 분류 작업을 위해 사전-트레이닝된 VGG-M 또는 VGG16 네트워크들이 사용되었다. VGG-M은 7개의 층들을 갖는 더 작은 모델인 반면, VGG16은 16개의 층들을 포함한다. 모든 모델들은 0.001의 학습 레이트를 갖는 SGD(stochastic gradient descent)를 사용하여 50K번의 반복들 동안 미세-조정되었으며, 이는 30K번의 반복들 이후 10배만큼 감소되었다. 사용된 부가적인 파라미터들은 0.9의 모멘텀(momentum), 0.0005의 중량 감소, 0.5의 드롭아웃을 포함한다. 스테이지-와이즈 트레이닝(stage-wise training) 대신, 큐보이드 검출기(200)의 컴포넌트들은 1(예컨대, 수식 [3]에서 = 1 )로서 모든 손실 가중치들의 값들로 공동으로 최적화된다.
[0044] 데이터. SUN 프리미티브 데이터세트(매우 다양한 환경 장면들, 장소들 및 내부의 객체들을 커버하는 주석이 달린 이미지들의 포괄적인 모음; https://groups.csail.mit.edu/vision/SUN/에서 입수 가능함)가 사용되어 딥 큐보이드 검출기(200)를 트레이닝한다. 이 데이터세트는 3516개의 이미지들로 구성되고, 다수의 잡동사니들을 갖는 옥내 장면들, 단일 큐보이드만을 포함하는 인터넷 이미지들 및 큐보이드인 것처럼 또한 보이는 빌딩들의 옥외 이미지들의 혼합이다. 큐보이드 바운딩 박스 및 큐보이드 키포인트들 둘 모두는 그라운드-트루 주석들을 사용한다. 이 데이터세트는 785개의 이미지에 1269개의 주석이 달린 큐보이드들을 포함한다. 나머지 이미지들은 음성(negative)이며, 예컨대, 이들은 어떠한 큐보이드들도 포함하지 않는다. 데이터세트는 3000개의 이미지들의 트레이닝 세트 및 그의 수평으로 뒤집힌 버전들 및 516개의 테스트 이미지들을 갖는 테스트 세트를 생성하도록 분할되었다.
[0045] 큐보이드 검출기(200)는 2개의 작업들 즉, 큐보이드 바운딩 박스 검출 및 큐보이드 키포인트 로컬화로 평가되었다. 검출을 위해, IoU(intersection over union) 오버랩이 0.5.2 보다 큰 경우 바운딩 박스는 정정되었다. 검출들은 평균 AP(Average Precision)는 물론, 보고된 전체 정밀도-재현율(Precision-Recall) 곡선으로 신뢰도(예컨대, 네트워크 분류자 소프트맥스 출력)에 의해 정렬되었다. 키포인트 로컬화를 위해, 큐보이드 검출기의 성능을 결정하기 위해 PCK(Probability of Correct Keypoint) 및 APK(Average Precision of Keypoint) 메트릭들이 사용되었다. PCK 및 APK는 머리, 손목 등과 같은 인간 신체 부위들의 위치를 예측하는 시스템의 성능을 측정하기 위해 인간 자세 추정 문헌에 사용된다. PCK는 모든 그라운드 트루 박스들이 시스템에 입력으로서 주어질 때 올바른 주석이 달린 인스턴스들의 프랙션(fraction)을 측정한다. 예측된 키포인트는 주석으로부터 정규화된 거리가 임계치(α) 미만인 경우 올바른 것으로 간주된다. 반면에, APK는 검출 신뢰도 및 키포인트 로컬화 둘 모두를 고려한다. 0.1의 정규화된 거리(α)가 사용되었는데, 이는 예측된 키포인트가 수식 [4]에 보여진 키포인트의 그라운드 트루 주석의 다수의 픽셀들 내에 놓이는 경우 그것은 올바른 것으로 간주되었음을 의미한다. 정규화된 거리(α), 0.01, 0.2, 0.3, 0.5, 0.9 또는 그 이상과 같이 상이한 구현들에서 상이할 수 있다.
(수식 4)
SUN 프리미티브 테스트 세트 및 도 4a 내지 도 4g에 도시된 단안 이미지들(400a-400y, 404a-404e)에서 큐보이드 검출 및 꼭짓점 로컬화의 샘플들에 대해 보고된 그러한 메트릭들에 대해 도 7a 내지 도 7f를 참조한다. 예컨대, 도 4a는 8개의 꼭짓점들로 각각 표현된 4개의 큐보이드들의 예시적인 표현들(108a-108d)을 갖는 단안 이미지(400a)를 도시한다. 다른 예로서, 도 4a는 큐보이드의 예시적인 표현(108a)을 갖는 다른 단안 이미지(400b)를 도시하며, 4개의 꼭짓점들은 4개의 에지들(실선들로 도시됨)에 의해 연결된 큐보이드의 한 면을 표현하고, 4개의 꼭짓점들은 다른 4개의 에지들(점선들로 도시됨)에 의해 연결된 큐보이드의 다른 면을 표현한다. 큐보이드의 표현(108a)의 이들 2개의 면들 상의 8개의 꼭짓점들은 4개의 에지들(점선들로 도시됨)에 의해 연결된다.
[0046] 도 7a 내지 도 7f는 예시적인 딥 큐보이드 검출기 평가 메트릭들 즉, APK : Average Precision of Keypoint, PCK : Probability of Correct Keypoint : GT 코너들로부터의 정규화된 거리, 키포인트들의 순서 : 전방-상부-좌측, 후방-상부-좌측, 전방-하부-좌측, 전방-상부-우측, 후방-하부-좌측, 전방-하부-우측, 후방-상부-우측, 후방-하부-우측. B : 바운딩 박스 손실, C : 코너 손실, I : 반복을 예시하는 그래프들이다. 도 4a 내지 도 4f는 CNN 타워 및 반복적 특징 풀링으로서 VGG16을 사용한 예시적인 큐보이드 검출 및 키포인트 위치를 예시하는 이미지들을 도시한다. 큐보이드 검출기(200)는 소비자-등급 RGB 이미지들에서 큐보이드들의 꼭짓점들을 로컬화할 수 있었다. 큐보이드 검출기(200)는 박스들(큐보이드에 의해 완벽히 모델링됨)과 같은 객체들은 물론, 싱크대들(큐보이드들을 단지 근사함)과 같은 객체들 둘 모두를 처리할 수 있었다. 도 4g는 아래에서 추가로 설명되는 바와 같이 감소되거나 제거될 수 있는 부적절한 큐보이드 검출 및 키포인트 로컬화를 예시하는 예시적인 이미지들(404a-404e)을 도시한다.
[0047] 일 구현에서, 큐보이드 검출기(2)는 바운딩 박스 검출에 대해 75.47의 mAP를 달성하였는데, 이는 24.0의 mAP를 갖는 HOG-기반 시스템보다 상당히 양호했다.
[0048] 멀티-태스킹 학습. 상이한 다수의 작업들을 각각 수행하는 다수의 네트워크가 트레이닝되었다. 큐보이드들 주위에 바운딩 박스를 단지 출력하는 기본 네트워크가 트레이닝되었다. 이 기본 네트워크는 큐보이드들을 에워싸는 직사각형들을 사용하여 일반 객체 검출을 수행했다. 기본 네트워크는 박스의 클래스 및 바운딩 박스 회귀 값들을 출력한다. 다음으로, 코너들의 위치에 대한 부가적인 감독을 하는 상이한 네트워크가 트레이닝되었다. 이 네트워크는 바운딩 박스 회귀 좌표들을 출력하지 않았다. 그 후, 바운딩 박스 회귀 값들 및 꼭짓점의 좌표들 둘 모두를 출력하는 네트워크(예컨대, 큐보이드 검출기(200))가 트레이닝되었다. 부가적인 작업에 대한 대응하는 항이 각각의 손실 함수에 부가되었다. 테스트로부터, 더 많은 작업들(바운딩 박스 검출, 키포인트 로컬화, 또는 바운딩 검출 및 키포인트 로컬화 둘 모두)을 부가하는 것은 큐보이드 검출기의 성능에 영향을 미쳤다(표 1 참조).
표 1. 멀티-태스킹 학습 결과들. 네트워크는 바운딩 박스 손실만을 사용하여 트레이닝되었고, 그 후 큐보이드 코너 손실을 사용하여 트레이닝되었다.
부가적인 손실 함수 AP APK PCK
바운딩 박스 손실 66.33 - -
코너 손실 58.39 28.68 27.64
바운딩 박스 + 코너 손실 67.11 34.62 29.38
[0049] 반복적 특징 풀링. R-CNN에서, 최종 출력은 각각의 모든 구역 제안에 대한 분류 스코어 및 바운딩 박스 회귀 값이다. 바운딩 박스 회귀는 구역 제안을 근처에서 이동시키고 그것을 스케일링하도록 허용하여서, 최종 바운딩 박스가 객체만을 로컬화하게 한다. 이는, 이 예측을 행하기 위해 특징들이 풀링되는 초기 구역이 완전히 올바르진 않았음을 암시한다. 일부 실시예들에서, 큐보이드 검출기(200)는 되돌아가서, 정제된 바운딩 박스로부터 특징들을 풀링한다. 이는 네트워크 자체에서 구현될 수 있는데, 이는 정확히 동일한 방식으로 트레이닝 및 테스트하면서, 큐보이드 검출기(200)가 반복적 바운딩 박스 회귀를 수행함을 의미한다. 회귀자의 완전 연결 층들(216)에 대한 입력은 conv5 층으로부터의 상이한 구역 제안들로부터의 풀링된 특징들을 포함하는 콘볼루셔널 특징 맵(228)의 서브맵인 고정-크기 특징 맵이다. R-CNN 출력들은 새로운 제안들을 생성하기 위해 입력 객체 제안들에 대한 바운딩 박스 회귀를 위해 사용할 수 있다. 그 후, 특징들은 이러한 새로운 제안들로부터 풀링되고 회귀자의 완전 연결 층들(216)을 다시 통해 전달될 수 있다. 일부 실시예들에서, 큐보이드 검출기(200)는 레이턴시에 의해 구속되지 않는 애플리케이션들의 경우, 바운딩 박스 회귀가 두 번 이상 수행될 수 있는 "애니-타임 예측 시스템(any-time prediction system)"이다. 성능 결과들(표 2 참조)은, 반복적 특징 풀링이 바운딩 박스 검출 및 꼭짓점 로컬화 둘 모두를 크게 개선할 수 있음을 보여준다(도 5a 내지 도 5c 참조). 특징들이 반복적으로 두 번 이상 풀링될 때(예컨대, 2번, 3번, 4번, 5번, 6번 이상), 성능 면에서 큰 변화가 없었다. 일부 구현들에서, 2번의 반복들이 사용된다. 도 5a 내지 도 5c는 개선된 성능을 예시하는 예시적인 이미지들(500a1-500i1, 500a2-500i2)을 도시한다(예컨대, 이미지들(500a1, 500a2)에서 큐보이드의 표현들(108b1, 108b2) 및 이들 이미지들(504)에서 책장(504)의 형상을 비교함). 반복적 특징 풀링을 통한 키포인트 정제를 통해, 큐보이드 검출 구역들은 예측된 바운딩 박스들을 사용하여 conv5로부터 특징들을 재-풀링함으로써 정제되었다. 표 2. 반복적 특징 풀링에 대한 결과들. 반복적 특징 풀링은 박스 검출 AP를 4 % 이상, PCK를 7 % 이상 개선했다.
방법 AP APK PCK
코너 손실 58.39 28.68 27.64
코너 손실 + 반복 62.89 33.98 35.56
BB + 코너 손실들 67.11 34.62 29.38
BB + 코너 손실 + 반복 71.72 37.61 36.53
[0050] 네트워크의 깊이. 2개의 기본 모델들인 VGG16과 VGG-M가 테스트되었다. VGG16은 16개의 층들을 갖는 매우 깊은 아키텍처를 갖는 반면, VGG-M은 7개의 층들을 갖는 작은 모델이다. 표 3은 테스트의 결과를 보여준다. 흥미롭게도, 이 데이터 세트 및 작업의 경우, 더 얕은 네트워크를 통한 두 번의 반복들이 더 깊은 네트워크를 통한 한 번의 반복을 능가했다. 반복을 한 더 얕은 네트워크가 2배나 빨리 실행된다는 사실과 결합하여, 큐보이드 검출기(200)는 유리하게는, 10개 미만의 층들(예컨대, 5개, 7개 또는 9개의 층들)을 갖는 더 얕은 CNN 타워를 포함할 수 있다. 일부 실시예들에서, 큐보이드 검출기(200)는 더 깊은 CNN 타워(예컨대, 12개, 15개, 20개 또는 그 이상의 층들)를 포함할 수 있다. 테스트된 4개의 모델은 HOG-기반 시스템의 AP(average precision)(24.0)보다 높은 AP를 각각 갖는다. 표 3. VGG-M(7개의 층들) 대 VGG16(16개의 층들) 기본 네트워크. I : 반복적 특징 풀링이 수행되었다. 더 깊은 큐보이드 검출기는 더 얕은 큐보이드 검출기를 능가했다.
방법 AP APK PCK 크기 속도
VGG-M 67.11 34.62 29 334 MB 14 fps
VGG-M + I 71.72 37.61 36 334 MB 10 fps
VGG16 70.50 33.65 35 522 MB 5 fps
VGG16 + I 75.47 41.21 38 522 MB 4 fps
[0051] 트레이닝 세트 크기의 효과. 트레이닝 데이터의 크기를 증가시키는 것의 영향이 측정되었다. 다양한 크기들의 3개의 데이터 세트들(1K개, 2K개 및 3K개의 이미지들)이 생성되었고 공통 네트워크(VGG-M + 반복)를 트레이닝하는 데 사용되었다. 결과들(표 4 참조)은 더 큰 트레이닝 세트 크기들을 사용할 때 상당히 개선된 성능을 보여준다. 표 4. 성능 대 트레이닝 이미지들의 수. 딥 큐보이드 검출은 더 많은 트레이닝 이미지들이 유리할 수 있다.
이미지들의 수 AP APK PCK
1000 40.47 20.83 26.60
2000 52.17 27.51 29.31
3000 71.72 37.61 26.53
[0052] 메모리 및 런타임 복잡도. 큐보이드 검출기(200)는 Titan Z GPU 상에서 상호작용식 레이트들로 동작할 수 있었던 반면, HOG-기반 접근법은 단일 이미지를 프로세싱하는 데 몇 분이 소요되었다. 시스템의 실시간 본질은 회귀자로서 사용되는 고속 R-CNN의 결과일 수 있다. 일부 실시예들에서, 큐보이드 검출기(200)는 그의 속도 성능을 추가로 개선하기 위해 단일 SSD(show multibox detector)를 구현할 수 있다. 표 3은 모바일 디바이스들(예컨대, 도 10을 참조하여 설명된 웨어러블 디스플레이 시스템(1000)) 상에서 감소될 수 있는 모델 크기들을 보여준다. 예시적인 키포인트 파라미터화들
[0053] 큐보이드 검출기(200)의 실시예는 큐보이드의 꼭짓점들을 직접 출력할 수 있다. 다수의 볼록 큐보이드들은 8개의 꼭짓점들, 6개의 면들 및 12개의 에지들(이들 모두가 이미지에서 가시적이진 않음)을 갖는다. 그러나, 소정의 관점들은 내재적 모호성을 가질 수 있으며, 이는 도 4g에 도시된 부적절한 큐보이드 식별을 야기할 수 있다. 예컨대, 도 4g에서 큐브의 어느 면이 정면으로 라벨링되어야 하는가?. 큐보이드 검출기(200)는 이러한 구성들을 처리할 필요가 있을 수 있으므로, 대안적인 큐보이드 파라미터화가 탐구되었다. 세계 원점이 카메라 중심 좌표들과 일치하는 것으로 간주되는 경우, 큐보이드의 파라미터화는 12개의 숫자들로 표현될 수 있다. 다음의 파라미터화는 최소일 수 있고; 다른 파라미터화들에서, 부가적인 또는 상이한 파라미터들이 사용될 수 있다.
(X, Y, Z) ― 3D에서 큐보이드 중심의 좌표들
(L, W, H) ― 큐보이드 치수들
(θ, Ψ, φ) ― 큐보이드의 3 회전각(예컨대, 오일러 각들)
(f, , ) ― 내장 카메라 파라미터들(예컨대, 초점 길이 및 광학 중심의 좌표들)
[0054] 다수의 현대의 카메라들의 경우에, 카메라의 비뚤어짐(skew)이 없고 (직교 방향들에서) 동일한 초점 길이들이 가정될 수 있다. 큐보이드의 오버-파라미터화(예컨대, 큐보이드의 16-파라미터 파라미터화)는 큐보이드 검출기(200)가 큐보이드들을 나타내지 않는 출력을 생성하게 할 수 있다(예컨대, 도 4g에 일부 예들 참조). 큐보이드의 여러 상이한 재-파라미터화들은 기하학적 구속들을 보다 잘 활용하기 위해 테스트되었다. 일반적으로, 테스트 결과들은, 네트워크가 이미지에 보다 많은 시각적 증거를 가졌던 작업들에 대해서 특징들을 학습하고, 안정적인 최적화를 위해 적절히 스케일링될 수 있는 파라미터들을 예측할 수 있었음을 보여준다. 3D 기하학적 구조 및 딥 러닝을 처리할 때, 적절한 파라미터화가 유리하다. 심지어, 호모그래피들(예컨대, 프로젝팅된 공간들의 동형(isomorphism)들)과 같은 이미지-투-이미지 변환들도 재-파라미터화(예컨대, 4-포인트 파라미터화)로부터 혜택을 받을 수 있다. 이러한 기술들은 이미지들에서 큐보이드들의 부적절한 식별을 감소 또는 제거할 수 있다.
[0055] 6-코너 파라미터화. 8개의 큐보이드 꼭짓점들 중 6개의 좌표들만이 검출기에 의해 예측되는 대안적인 파라미터화가 존재한다. 나머지 2개의 좌표들의 위치들은 큐보이드들에서 평행한 에지들이 존재할 수 있다는 관계를 사용하여 추론되었다. 예컨대, 3D에서 평행한 에지들은 이미지의 소실점에서 만난다. 큐보이드(600)의 최상부 베이스 상의 평행한 라인들의 2개의 쌍들 및 큐보이드의 하부 면 상의 평행한 라인들의 2개의 쌍들이 존재할 수 있다. 큐보이드(600)의 최상부 면 상의 한 쌍의 평행한 라인들(604a, 604b) 및 큐보이드의 하부 면 상의 한 쌍의 평행한 라인들(606a, 606b)은 도 6 에 도시된 바와 같이 동일한 소실점(608a)에서 만나야 한다. 큐보이드(600)의 최상부 면 상의 한 쌍의 평행한 라인들(604c, 604d) 및 큐보이드의 하부 면 상의 한 쌍의 평행한 라인들(606c, 606d)은 동일한 소실점(608b)에서 만나야 한다. 따라서, 나머지 2개의 포인트들(612a, 612b)의 포지션은 추론될 수 있다. 이는 큐보이드 검출기(200)가 일부 구현들에서 12개의 숫자들의 출력을 파라미터화할 수 있게 한다. 도 6은 예시적인 큐보이드 소실점들(608a, 608b)을 개략적으로 예시한다. 큐브의 에지들을 외삽함으로써 생성된 소실점들(608a, 608b)은 소실 선(616)을 형성하고 파라미터들의 수를 감소시키는 데 사용될 수 있다. FTL(Front-Top-Left) 키포인트(612a) 및 BBR(Back-Bottom-Right) 키포인트(612b)는 파라미터화로부터 배제되고 추정된 VP(vanishing point) 기술들을 사용하여 추론될 수 있다.
[0056] 8-코너 파라미터화는 6-코너 파라미터화와 비교되었다. 2개의 꼭짓점들에 대한 그라운드 트루 데이터는 트레이닝 동안 사용되지 않았다. 각각의 후방 및 전방 면들로부터의 하나의 꼭짓점(검출 레이트(PCK)가 가장 나쁜 꼭짓점들)이 드롭(drop)되었다. 나머지 6개의 코너들의 위치를 예측하기 위해 네트워크가 트레이닝되었다. 2개의 드롭된 꼭짓점들의 위치들은 이들 6개의 코너들을 사용하여 추론되었다. 큐보이드 검출기(200)는 먼저 예측된 6개의 포인트들에 대응하는 소실점들을 결정한다. 이러한 재-파라미터화는 성능의 감소로 이어질 수 있다(표 5 참조). 이 저하는 이미지에 존재하는 2개의 추론된 코너들에 대응하는 시각적 증거가 폐기된 것에 기인할 수 있다. 또한, 폐색 또는 다른 이유로 인해 하나의 꼭짓점의 예측에 있어 임의의 에러는 추론된 코너들에 직접 전파된다. 그러나 큐보이드 검출기(200)에 남겨두면, 그것은 큐보이드를 검출하기 위해 다수의 모델들을 학습했다. 큐보이드 검출기(200)의 네트워크는 큐보이드의 코너들을 로컬화하기 위한 모든 시각적 증거를 자유롭게 사용하였다. 큐보이드 검출기(200)는 다수의 경우들에, 후방 상의 코너가 자체-폐색(self-occlusion)으로 인해 이미지에서 시각적 증거를 가지지 않기 때문에 순수 기하학적 구조 추론(pure geometric reasoning)을 하는 것이 가능했다.
표 5. 8-코너 대 6-코너 파라미터화. 8-코너 파라미터화는 모든 큐보이드들의 코너들을 사용하는 반면, 6-코너 파라미터화에서, BBR 및 FTL 코너들이 드롭되고(도 6 참조), 소실점들로부터 추론된다. 이는 예시적인 네트워크가 기하학적 구조 추론을 어떻게 행할 수 있었는지, 그리고 오버-파라미터화는 시스템에 견고성을 부가할 수 있음을 보여준다. BBR: Back-Bottom-Right 및 FTL: Front-Top-Left이다.
방법 AP APK PCK BBR 코너의 PCK FTL 코너의 PCK 나머지 코너들의 PCK
6 코너들 65.26 29.64 27.36 24.44 21.11 28.89
8 코너들 67.11 34.62 29.38 27.22 29.44 29.73
[0057] 소실점 파라미터화 : 다른 재-파라미터화는 2개의 소실점들의 위치들 및 큐보이드의 에지들을 형성하는 6개의 라인들의 기울기들을 사용한다(도 6 참조). 이러한 소실점들은 특정 큐보이드에 대응하며 전체 이미지의 소실점과 상이할 수 있다는 것에 주의한다. 이 6개의 라인들의 교차점은 이 예에서 큐보이드의 꼭짓점들을 제공한다. 그러나 소실점들 대부분의 위치들은 관심 구역 외부에 놓이며 관심 구역 또는 전체 이미지 자체에서 시각적 증거가 거의 없거나 혼동을 일으킨다. 또한, 타겟들을 정규화하여 소실점들을 직접 예측하기가 어려울 수 있다. 6개의 라인들의 기울기들은 -∞ 내지 +∞에서 변동될 수 있다. 기울기를 직접 예측하는 대신, 기울기를 값으로 회귀시킬 수 있다. 이 네트워크의 실시예가 트레이닝될 수 있는 하이퍼파라미터(hyperparameter)들(예컨대, 손실 가중치들, 학습 레이트들, 해법(solver) 등)의 세트가 존재할 수 있다. 큐보이드 검출기를 트레이닝하는 예시적인 프로세스
[0058] 도 8은 큐보이드 검출기를 트레이닝하는 예시적인 프로세스(800)의 흐름도이다. 프로세스(800)는 적어도 하나의 큐보이드를 각각 포함하는 복수의 트레이닝 이미지들이 수신하는 블록(804)에서 시작한다. 트레이닝 이미지들 중 일부는 각각 하나 이상의 큐보이드들을 포함할 수 있다. 프로세스(800)는 트레이닝된 큐보이드 검출기의 성능을 개선하기 위해 큐보이드-특정(예컨대, 큐보이드-특정) 데이터 증강 전략을 수행하는 것을 포함할 수 있다. 블록(808)에서, 콘볼루셔널 뉴럴 네트워크가 수신된다. 콘볼루셔널 뉴럴 네트워크는 오브젝션 검출을 위해 트레이닝될 수 있다. 예컨대, 콘볼루셔널 뉴럴 네트워크는 VGG16 또는 VGG-M일 수 있다. 콘볼루셔널 뉴럴 네트워크는 일부 구현들에서 딥 뉴럴 네트워크일 수 있다.
[0059] 블록(812)에서, 큐보이드 검출기가 생성된다. 큐보이드 검출기는 CNN 타워를 포함할 수 있다. CNN 타워는 블록(808)에서 수신된 콘볼루셔널 뉴럴 네트워크의 복수의 콘볼루셔널 층들 및 비-콘볼루셔널 층들 포함할 수 있다. 예컨대, CNN 타워는 수신된 콘볼루셔널 뉴럴 네트워크의 일부 또는 모든 콘볼루셔널 층들을 포함할 수 있다. 비-콘볼루셔널 층들은 정규화 층, 밝기 정규화 층, 배치 정규화(batch normalization) 층, 정류된 선형(rectified linear) 층, 업샘플링 층, 연접 층, 풀링 층, 소프트사인(softsign) 층, 또는 이들의 임의의 조합을 포함할 수 있다. CNN 타워는 단안 이미지와 같은 입력 이미지로부터 콘볼루셔널 특징 맵을 생성할 수 있다.
[0060] 큐보이드 검출기는 CNN 또는 DNN과 같은 구역 제안 네트워크(region proposal network; RPN)를 포함할 수 있다. 구역 제안 네트워크는 CNN 타워의 층에 연결될 수 있다. 구역 제안 네트워크는 콘볼루셔널 특징 맵을 사용하여 이미지에서 큐보이드를 포함하는 RoI(region of interest)을 결정할 수 있다. 예컨대, 관심 구역은 큐보이드 이미지 위치에서 큐보이드를 에워싸는 2-차원(2D) 바운딩 박스로서 표현될 수 있다. 큐보이드는 큐보이드, 실린더, 구체 또는 이들의 임의의 조합을 포함할 수 있다. RPN은 트레이닝 동안 로그 손실 함수 및 스무스 L1 손실 함수와 같은 적어도 2개의 손실 함수들과 연관될 수 있다.
[0061] 큐보이드 검출기는 풀링 층 및 적어도 하나의 회귀자 층을 포함할 수 있다. 풀링 층은 CNN 타워의 층에 연결될 수 있다. 풀링 층은, 큐보이드 이미지 위치를 사용하여, 큐보이드를 포함하는 관심 구역에 대응하는 콘볼루셔널 특징 맵의 서브맵을 결정할 수 있다. 풀링 층 및 구역 제안 네트워크는 CNN 타워의 동일한 층에 연결될 수 있다.
[0062] 큐보이드 검출기는 R-CNN(regional-CNN) 또는 고속 R-CNN의 2개의 회귀자 층들, 이를테면, 2개의 완전-연결 층들을 포함할 수 있다. 다른 예로서, 회귀자 층은 완전히 연결되지 않는다. 회귀자 층은 트레이닝 동안 적어도 3개의 손실 함수들과 연관될 수 있다. 예컨대, 적어도 3개의 손실 함수들은 로그 손실 함수 및 스무스 L1 손실 함수를 포함한다.
[0063] 큐보이드 검출기는 트레이닝될 수 있다. 블록(816)에서, 큐보이드 검출기는 블록(804)에서 수신된 트레이닝 이미지 내의 큐보이드를 포함하는 이미지 위치에서 관심 구역을 결정할 수 있다. 일부 실시예들에서, 이미지에서의 큐보이드의 표현이 결정될 수 있다. 큐보이드 이미지 위치에서 RoI 및 큐보이드의 표현을 결정하기 위해, 큐보이드 검출기는 CNN 타워의 콘볼루셔널 층들과 비-콘볼루셔널 층들을 사용하여 트레이닝 이미지에 대한 콘볼루셔널 특징 맵을 생성할 수 있다. 콘볼루셔널 특징 맵에 기초하여, 구역 제안 네트워크는 트레이닝 이미지에서 초기 이미지 위치에서 큐보이드를 포함하는 RoI를 결정할 수 있다. 트레이닝 이미지에서 큐보이드의 초기 이미지 위치에 기초하여, 큐보이드 검출기의 풀링 층은 초기 이미지 위치에서 큐보이드를 포함하는 RoI에 대응하는 콘볼루셔널 특징 맵의 서브맵을 결정할 수 있다. 적어도 하나의 회귀 층은 큐보이드 이미지 위치에서의 RoI 및 큐보이드의 표현을 결정할 수 있다. 초기 큐보이드 이미지 위치 또는 큐보이드 이미지 위치는 2-차원(2D) 바운딩 박스로서 표현될 수 있다. 일부 구현들에서, 방법(800)은 풀링 층, 적어도 하나의 회귀자 층 및 큐보이드를 포함하는 RoI에 대응하는 콘볼루셔널 특징 맵의 서브맵을 사용하여, 큐보이드 이미지 위치에서 RoI 및 큐보이드의 표현을 반복적으로 결정할 수 있다.
[0064] 큐보이드의 표현은 상이한 구현들에서 상이할 수 있다. 표현은 큐보이드의 파라미터화된 표현을 포함할 수 있다. 예컨대, 큐보이드의 파라미터화된 표현은 이미지에서 큐보이드(예컨대, 큐보이드)의 복수의 키포인트들의 위치들, 이를테면, 이미지에서 큐보이드의 6개 또는 8개의 꼭짓점들은 포함할 수 있다. 다른 예로서, 파라미터화된 표현은 이미지의 중심으로부터 큐보이드의 복수의 키포인트들의 정규화된 오프셋들을 포함할 수 있다. 추가의 예로서, 파라미터화된 표현은 N개의 튜플들, 이를테면, 6개의 튜플을 포함한다. 예로서, 큐보이드의 파라미터화된 표현은 소실점 파라미터화(vanishing point parameterization)를 포함한다.
[0065] 블록(820)에서, 기준 이미지 위치와 결정된 이미지 위치 사이의 제1 차이 및 큐보이드의 기준 표현과 큐보이드의 결정된 표현 간의 제2 차이가 결정될 수 있다. 큐보이드의 기준 표현은 위의 수식들 [1] 및 [2]에서 예시된 바와 같이 각각의 키포인트에 대한 그라운드 트루 타겟들을 포함할 수 있다. 기준 이미지 위치는 그라운드 트루 타겟들에 의해 표현되는 바운딩 박스를 포함할 수 있다.
[0066] 블록(824)에서, 큐보이드 검출기의 가중치들은 제1 차이 및 제2 차이에 기초하여 업데이트될 수 있다. 차이는 수식 [3]에 도시된 손실 함수(또는 그의 컴포넌트들)로서 표현될 수 있다. 큐보이드 검출기의 가중치들 중 일부 또는 전부는 결정된 차이들에 기초하여 업데이트될 수 있다. 예컨대, 구역 제안 네트워크의 가중치들 및 적어도 하나의 회귀자 층의 가중치들은 차이들에 기초하여 업데이트될 수 있다. 다른 예로서, RPN의 가중치들 및 적어도 하나의 회귀자 층의 가중치들은 차이들에 기초하여 제1 CNN의 가중치들을 업데이트함 없이 업데이트될 수 있다. 다른 예로서, CNN 타워의 가중치, 구역 제안 네트워크의 가중치들 및 적어도 하나의 회귀자 층의 가중치들은 차이들에 기초하여 업데이트될 수 있다. 프로세스(800)는 선택적으로, 일반화를 개선하기 위해 보다 큰 데이터세트 및 합성 데이터, 네트워크 최적화 및 규칙화(regularization) 기술로부터 큐보이드 검출기를 트레이닝하는 것을 포함할 수 있다.
큐보이드 검출 및 키포인트 로컬화를 위해 큐보이드 검출기의 사용하는 예시적인 프로세스
[0067] 도 9는 큐보이드 좌표 검출 및 키포인트 로컬화를 위해 큐보이드 검출기를 사용하는 예시적인 프로세스(900)의 흐름도이다. 프로세스(900)는 시스템(예컨대, 도 10을 참조하여 설명된 웨어러블 디스플레이 시스템(1000))이 가능한 큐보이드를 포함하는 입력 이미지를 수신하는 블록(904)에서 시작한다. 이미지는 하나 이상의 큐보이드들을 포함할 수 있다. 이미지는 컬러 이미지(예컨대, RGB 또는 RGB-D)를 포함할 수 있고, 이미지는 단안식일 수 있다. 이미지는 비디오의 프레임일 수 있고, 도 10을 참조하여 설명된 웨어러블 디스플레이 시스템(1000)의 외향 이미징 시스템(1044)을 사용하여 획득될 수 있다.
[0068] 블록(908)에서, 웨어러블 디스플레이 시스템(1000)은 (도 8에 예시된 프로세스(800)에 의해 트레이닝된 큐보이드 검출기와 같은) 큐보이드 검출기에 액세스할 수 있다. 큐보이드 검출기는 복수의 콘볼루셔널 층들 및 비-콘볼루셔널 층들을 포함하는 CNN 타워를 포함할 수 있다. 큐보이드 검출기는 CNN 타워에 연결된 구역 제안 네트워크를 포함할 수 있다. 큐보이드 검출기는 풀링 층 및 적어도 하나의 회귀자 층을 포함할 수 있다. 풀링 층은 CNN 타워에 연결될 수 있다.
[0069] 블록(912)에서, 웨어러블 디스플레이 시스템(1000)은 CNN 타워의 복수의 콘볼루셔널 층들 및 비-콘볼루셔널 층들 및 이미지를 사용하여, 콘볼루셔널 특징 맵(예컨대, 도 2의 콘볼루셔널 특징 맵(228))을 생성할 수 있다. 블록(916)에서, 웨어러블 디스플레이 시스템(1000)은 구역 제안 네트워크를 사용하여, 이미지의 큐보이드 이미지 위치에서 큐보이드를 포함하는 적어도 하나의 RoI(예컨대, 도 2의 관심 구역들(220a1, 220a2, 220b))를 결정할 수 있다. 큐보이드 이미지 위치는 2-차원(2D) 바운딩 박스로서 표현될 수 있다. 블록(920)에서, 웨어러블 디스플레이 시스템(1000)은 풀링 층(예컨대, 도 2의 풀링 층(212) 및 큐보이드 이미지 위치를 사용하여, 큐보이드를 포함하는 관심 구역에 대응하는 콘볼루셔널 특징 맵의 서브맵을 결정할 수 있다. 예컨대, 서브맵은 도 2에서 특징들이 풀링될 수 있는 콘볼루셔널 특징 맵(228)의 구역들(224a)로부터 결정될 수 있다. 블록(924)에서, 웨어러블 디스플레이 시스템(1000)은 회귀자 층(예컨대, R-CNN 회귀자) 및 서브맵을 사용하여, 정제된 큐보이드 이미지 위치에서 정제된 RoI 및 큐보이드의 표현을 결정할 수 있다. 정제된 큐보이드 이미지 위치는 2-차원(2D) 바운딩 박스로서 표현될 수 있다.
[0070] 일부 실시예들에서, 방법(900)은 반복적 특징 풀링을 포함한다. 예컨대, 웨어러블 디스플레이 시스템(1000)은 정제된 큐보이드 이미지 위치를 사용하여, 큐보이드를 포함하는 정제된 관심 구역에 대응하는 콘볼루셔널 특징 맵의 정제된 서브맵을 결정할 수 있다. 예컨대, 서브맵은 도 2에서 특징들이 풀링될 수 있는 콘볼루셔널 특징 맵(228)의 구역들(224b)로부터 결정될 수 있다. 웨어러블 디스플레이 시스템(1000)은 풀링 층, 적어도 하나의 회귀자 층 및 정제된 RoI에 대응하는 콘볼루셔널 특징 맵의 정제된 서브맵을 사용하여, 추가로 정제된 이미지 위치에서 추가로 정제된 RoI 및 큐보이드의 추가로 정제된 표현을 결정할 수 있다.
[0071] 웨어러블 디스플레이 시스템(1000)은 정제된 큐보이드 이미지 위치에서 정제된 관심 구역 및 큐보이드의 표현에 기초하여 시스템의 사용자와 상호작용할 수 있다. 예컨대, 큐보이드는 고정 박스에 대응할 수 있고, 웨어러블 디스플레이 시스템(1000)은 큐보이드의 정제된 이미지 위치 및 큐보이드의 표현에 기초하여 고정 박스와 관련하여 캐릭터 애니메이션을 생성할 수 있다. 다른 예로서, 큐보이드는 핸드-헬드 큐보이드에 대응할 수 있다. 웨어러블 디스플레이 시스템(1000)은 큐보이드의 표현을 사용하여 큐보이드의 포즈를 결정하고, 큐보이드의 포즈에 기초하여 시스템의 사용자와 상호작용할 수 있다. 추가의 예로서, 큐보이드는 CNN에 의해 인식 불가능한 희귀 객체에 대응할 수 있다. 웨어러블 디스플레이 시스템(1000)은 CNN에 의해 인식 불가능한 희귀 객체가 검출되었다는 통지를 사용자에게 제공할 수 있다. 예로서, 큐보이드는 사람이 만든 구조(예컨대, 빌딩)에 대응한다. 웨어러블 디스플레이 시스템(1000)은 정제된 큐보이드 이미지 위치에서 정제된 RoI 및 큐보이드의 표현에 기초하여 무인 비행 동안 시스템의 사용자를 보조할 수 있다. 다른 예로서, 큐보이드는 마커에 대응하는 큐보이드일 수 있다. 웨어러블 디스플레이 시스템(1000)은 큐보이드의 포즈에 기초하여 SLAM(simultaneous location and mapping)을 수행할 수 있다.
예시적인 애플리케이션들
[0072] 이미지들에서 박스-형 객체들을 검출하고 포즈와 같은 3D 정보를 추출하는 것은 전체 장면을 이해하는 데 도움이 될 수 있다. 다수의 고-레벨 시멘틱 문제들은 장면에서 박스를 먼저 검출(예컨대, 장면에서 객체들을 박스들로 축소(reduce)시킴으로써 자리(room)에서 자유 공간을 추출하고 장면에서 지지 표면들을 추정하고 장면 레이아웃을 추정함)함으로써 다뤄질 수 있다.
[0073] 본원에 개시된 큐보이드 검출기들은 일반적으로, AR(augmented reality), 인간-컴퓨터 상호작용(human-computer interaction; HCI), 자율주행 차량들, 드론들 또는 로봇공학에 대한 하나 이상의 가능성들을 열어줄 수 있다. 예컨대, 큐보이드 검출기는 다음과 같이 사용될 수 있다.
[0074] 증간 현실의 경우, 큐보이드 꼭짓점 로컬화에 뒤따르는 6 자유도(6-dof) 포즈 추정은 콘텐츠 생성자가, 캐릭터 애니메이션을 구동하기 위해 고정 박스에 의해 정의된 큐보이드-중심 좌표계를 사용할 수 있게 한다. 고정된 큐보이드에 의해 점유되는 공간의 볼륨은 큐보이드 꼭짓점 로케이션에 뒤따르는 6-dof 포즈 추정에 기초하여 알려지기 때문에, 애니메이팅된 캐릭터들은 박스에서 뛰어오르고, 박스 뒤에 숨고, 심지어 박스의 면들 중 하나 상에서 그림을 그리기 시작할 수 있다. 따라서, 콘텐츠 생성자는 큐보이드 주위에 동적 세계들을 구축하기 위해 큐보이드 검출기를 사용할 수 있다.
[0075] 인간-컴퓨터 상호작용의 경우, 사용자들은 자신 주위의 박스모양 객체들을 사용하여 장면들과 상호작용할 수 있다. 콘텐츠 생성자는 세계가 큐보이드들로 만들어지는 게임 또는 사용자 환경을 생성할 수 있다. 다른 예로서, 핸드-헬드 큐보이드는 경량 게임 제어기로서 사용될 수 있다. 예컨대, 도 10을 참조하여 설명되는 웨어러블 디스플레이 시스템(1000)과 같은 시스템은, 시간에 걸쳐 핸드-헬드 큐브의 이미지들을 캡처하는 카메라를 포함할 수 있다. 그리고 시스템은 캡처된 이미지들을 사용하여 3D 공간에서 큐브를 효과적으로 추적하도록 큐브의 포즈를 추정할 수 있다. 일부 실시예들에서, 큐보이드는 AR 시스템들(예컨대, 큐보이드들을 사용하는 탁상용 AR 데모(demo))에서 상호작용을 개선하는 방식으로서 역할을 할 수 있다.
[0076] 자율주행 차량들의 경우, 3D 큐보이드 검출은 차량이, 감독된 트레이닝 세트에서 누락될 수 있는 희귀 객체들의 공간적 범위에 대해 추론할 수 있게 한다. 클래스-불가지론적 방식으로 객체들의 포즈에 대해 추론함으로써, 자율주행 차량들은 더 안전한 운전자들이 될 수 있다.
[0077] 드론들의 경우, 빌딩들, 주택들 또는 자동차들과 같은 사람이 만든 구조들이 큐보이드들로 잘 근사될 수 있어, 무인 비행들 동안 운항을 보조한다. 일반적으로 로봇공학의 경우, 이미지들에서 박스-형 객체들을 검출하고 포즈와 같은 그의 3D 정보를 추출하는 것은 전체 장면을 이해하는 데 도움이 된다. 예컨대, (Aruco 마커들 대신) 장면에 소수의 큐보이드들을 배치하는 것은 SLAM(simultaneous location and mapping) 애플리케이션들에 대한 포즈 추적을 보다 강력하게 만들 수 있다.
부가적인 실시예들
[0078] 일부 실시예들에서, 큐보이드 검출기는 상향식(bottom-up) 이미지 프로세싱에 의존하지 않고 실시간으로 실제 이미지들에 대해 만족스럽게 작동한다. 큐보이드 검출기는 3D 모델의 대형 트레이닝 데이터베이스 및 2D/3D 정렬을 위한 일부 종류의 학습을 사용하여 트레이닝될 수 있다. 일부 구현들에서, 큐보이드 검출기는 기하학적 구조-기반 방법, 변형 가능한 부분 모델, HOG(histogram oriented gradients)-기반 모델(예컨대, HOG 분류자)을 구현할 수 있다. 큐보이드 검출기는 상이한 뷰들에서 큐보이드 꼭짓점들을 검출하고 HOG 분류자로부터의 스코어, 2D 꼭짓점 변위, 에지 정렬 스코어, 및 예측된 꼭짓점들이 3D에서 큐보이드에 얼마나 근접하는지를 고려한 3D 형상 스코어에 기초하여, 최종 큐보이드 구성을 결정할 수 있다. 큐보이드 검출기는 실제 3D 큐보이드로부터 너무 멀리 떨어져 있는 예측에 불이익을 주면서, 이미지에서 발견되는 시각적 증거(코너들 및 에지들)에 대해 공동으로 최적화할 수 있다.
[0079] 이론에 의해 제한됨 없이, 큐보이드 검출기는 콘볼루셔널 뉴럴 네트워크들에 그의 성능을 빚지고 있을 수 있다. CNN은 이미지 분류 작업을 위한 기존 방법 보다 뛰어날 수 있다. 이미지에서 큐보이드를 로컬화하기 위해, 이미지는 구역들로 분할되며, 이들 구역들이 대신, 예컨대 실시간으로 분류된다. 큐보이드 검출기는 단일 단계에서 검출을 수행할 수 있다. 예컨대, 도 10을 참조하여 설명된 웨어러블 디스플레이 시스템(1000) 상에서 실행되는 큐보이드 검출기는 초당 50-60 프레임을 프로세싱할 수 있고, 이에 따라, 실시간 큐보이드 검출 및 키포인트 로컬화를 수행한다. 큐보이드 검출기에 의해 구현되는 반복적 키포인트 정제는, Multi-Region CNN 네트워크 및 Inside-Outside 네트워크의 반복적 에러 피드백 접근법, Multi-Region CNN 네트워크 및 Inside-Outside 네트워크에서의 네크워크 캐스케이드들, 그리고 Multi-Region CNN 네트워크 및 Inside-Outside 네트워크의 반복적 바운딩 박스 회귀에 기초할 수 있다. 대안적으로, 또는 부가적으로, 큐보이드 검출기에 의해 구현되는 반복적 키포인트 정제는 재귀적 뉴럴 네트워크(Recurrent Neural Network)들에 기초할 수 있다.
예시적인 NN 층들
[0080] DNN(deep neural network)와 같은 NN(neural network)의 층은 그의 입력에 선형 또는 비선형 변환을 적용하여 그의 출력을 생성할 수 있다. 딥 뉴럴 네트워크 층은 정규화 층, 콘볼루셔널 층, 소프트사인 층, 정류된 선형 층, 연접 층, 풀링 층, 재귀 층, 입셉션-유사(inception-like) 층 또는 이들의 임의의 조합일 수 있다. 정규화 층은 예컨대, L2 정규화를 통해 그의 출력을 생성하기 위해 그의 입력의 밝기를 정규화할 수 있다. 정규화 층은 예컨대, 그의 출력으로서 복수의 정규화된 이미지들을 생성하기 위해 서로에 대해 복수의 이미지들의 밝기를 한 번에 정규화할 수 있다. 밝기를 정규화하기 위한 방법들의 비-제한적인 예들은 LCN(local contrast normalization) 또는 LRN(local response normalization)를 포함한다. 로컬 콘트라스트 정규화는 0의 평균 및 1의 분산(또는 평균 및 분산의 다른 값들)을 갖도록 픽셀 당 토대로 이미지의 로컬 구역들을 정규화함으로써 이미지의 콘트라스트를 비선형적으로 정규화할 수 있다. 로컬 응답 정규화는 0의 평균 및 1의 분산(또는 평균 및 분산의 다른 값들)을 갖도록 로컬 입력 구역들에 걸쳐 이미지들을 정규화할 수 있다. 정규화 층은 트레이닝 프로세스의 속도를 높일 수 있다.
[0081] 콘볼루셔널 층은 그의 입력에 콘볼루션들을 콘볼빙(convolve)하는 커널들의 세트를 적용하여 그의 출력을 생성할 수 있다. 소프트사인 층은 그의 입력에 소프트사인 함수를 적용할 수 있다. 소프트사인 함수 (softsign (x))는 예컨대 (x/(1 + | x |))일 수 있다. 소프트사인 층은 요소-당 이상치들의 영향을 무시할 수 있다. 정류된 선형 층은 ReLU(rectified linear layer unit) 또는 PReLU(parameterized rectified linear layer unit)일 수 있다. ReLU 층은 그의 출력을 생성하기 위해 그의 입력에 ReLU 함수를 적용할 수 있다. ReLU 함수(ReLU (x))는 예컨대 max(0, x)일 수 있다. PReLU 층은 그의 출력을 생성하기 위해 그의 입력에 PReLU 기능을 적용할 수 있다. PReLU 함수(PReLU (x))는 예컨대, x ≥ 0이면 x 그리고 x <0 이면 ax일 수 있으며, 여기서 a는 양수이다. 연접 층은 그의 출력을 생성하도록 그의 입력을 연결할 수 있다. 예컨대, 연접 층은 하나의 20 x 20 이미지를 생성하기 위해 4개의 5 x 5 이미지들을 연접할 수 있다. 풀링 층은 그의 출력을 생성하기 위해 그의 입력을 다운 샘플링하는 풀링 함수를 적용할 수 있다. 예컨대, 풀링 층은 20 x 20 이미지를 10 x 10 이미지로 다운샘플링할 수 있다. 풀링 함수의 비-제한적인 예들은 최대 풀링, 평균 풀링 또는 최소 풀링을 포함한다.
[0082] 시점(t)에서, 재귀 층은 숨김 상태(s(t))를 컴퓨팅할 수 있고, 재귀적 연결은 시간(t)에서의 숨김 상태(s(t))를 후속 시점(t+1)에서의 입력으로서 재귀 층에 제공할 수 있다. 재귀 층은 시간(t)에서의 숨김 상태(s(t))에 기초하여 시간(t+1)에서 그의 출력을 컴퓨팅할 수 있다. 예컨대, 재귀 층은 시간(t+1)에서의 그의 출력을 컴퓨팅하기 위해 시간(t)에서의 숨김 상태(s(t))에 소프트사인 함수를 적용할 수 있다. 시간(t+1)에서의 재귀 층의 숨김 상태는 그의 입력으로서 시간(t)에서의 재귀 층의 숨김 상태(s(t))를 갖는다. 재귀 층은 예컨대, ReLU 함수를 그의 입력에 적용함으로써 숨김 상태(s(t+1))를 컴퓨팅할 수 있다. 인셉션-유사 층은 정규화 층, 콘볼루셔널 층, 소프트사인 층, 정류된 선형 층, 이를테면, ReLU 층 및 PReLU 층, 연접 층, 풀링 층, 또는 이들의 임의의 조합 중 하나 이상을 포함할 수 있다.
[0083] NN 내의 층들의 수는 상이한 구현들에서 상이할 수 있다. 예컨대, DNN 내의 층 수는 50개, 100개, 200개 또는 그 이상일 수 있다. 딥 뉴럴 네트워크 층의 입력 유형은 상이한 구현들에서 상이할 수 있다. 예컨대, 층은 그의 입력으로서 다수의 층들의 출력을 수신할 수 있다. 층의 입력은 5개의 층들의 출력들을 포함할 수 있다. 다른 예로서, 층의 입력은 NN 층들 중 1 %를 포함할 수 있다. 층의 출력은 다수의 층들의 입력들일 수 있다. 예컨대, 층의 출력은 5개의 층들의 입력들로서 사용될 수 있다. 다른 예로서, 층의 출력은 NN의 층들 중 1 %의 입력들로서 사용될 수 있다.
[0084] 층의 입력 크기 또는 출력 크기는 상당히 클 수 있다. 층의 입력 크기 또는 출력 크기는 n x m 일 수 있으며, 여기서 n은 입력 또는 출력의 폭을 나타내고 m은 픽셀 단위의 높이를 나타낸다. 예컨대, n 또는 m은 11, 21, 31 또는 그 이상일 수 있다. 층의 입력 또는 출력의 채널 크기들은 상이한 구현들에서 상이할 수 있다. 예컨대, 층의 입력 또는 출력의 채널 크기는 4, 16, 32, 64, 128 또는 그 이상일 수 있다. 층의 커널 크기는 상이한 구현들에서 상이할 수 있다. 예컨대, 커널 크기는 n x m 일 수 있으며, 여기서 n은 커널의 폭을 나타내고 m은 높이를 나타낸다. 예컨대, n 또는 m은 5, 7, 9 또는 그 이상일 수 있다. 층의 스트라이드(stride) 크기는 상이한 구현들에서 상이할 수 있다. 예컨대, 딥 뉴럴 네트워크 층의 스트라이드 크기는 3, 5, 7, 또는 그 이상일 수 있다.
[0085] 일부 실시예들에서, NN은 NN의 출력을 함께 컴퓨팅하는 복수의 NN들을 지칭할 수 있다. 복수의 NN들의 상이한 NN들은 상이한 작업들을 위해 트레이닝될 수 있다. 프로세서(예컨대, 도 10을 참조하여 설명되는 로컬 데이터 프로세싱 모듈(1024))는 NN의 출력을 결정하기 위해 복수의 NN들 중의 NN들의 출력들을 컴퓨팅할 수 있다. 예컨대, 복수의 NN들 중의 NN들의 출력은 우도(likelihood) 스코어를 포함할 수 있다. 프로세서는 복수의 NN들 중 상이한 NN들의 출력들의 우도 스코어들에 기초하여 복수의 NN들을 포함하는 NN의 출력을 결정할 수 있다.
예시적인 웨어러블 디스플레이 시스템
[0086] 일부 실시예들에서, 사용자 디바이스는 웨어러블 디스플레이 디바이스들일 수 있거나 이에 포함될 수 있으며, 이는 보다 몰입형 VR(virtual reality), AR(augmented reality), 또는 MR(mixed reality) 경험을 유리하게 제공할 수 있고, 여기서, 디지털방식으로 재생된 이미지들 또는 이미지들의 부분들은, 그것들이 실제인 것으로 보이거나, 실제로서 지각될 수 있는 방식으로 착용자에게 제시된다.
[0087] 이론에 의해 제한됨이 없이, 인간 눈이 통상적으로 깊이 지각을 제공하기 위하여 유한 수의 깊이 평면들을 해석할 수 있다고 여겨진다. 결과적으로, 지각된 깊이의 매우 믿을 만한 시뮬레이션은, 눈에, 이들 제한된 수의 깊이 평면들 각각에 대응하는 이미지의 상이한 프리젠테이션들을 제공함으로써 달성될 수 있다. 예컨대, 도파관들의 스택을 포함하는 디스플레이들은 사용자, 또는 뷰어의 눈들의 전면에 포지셔닝되게 착용되도록 구성될 수 있다. 도파관들의 스택은, 이미지 주입 디바이스(예컨대, 이산 디스플레이들, 또는 하나 이상의 광섬유들을 통해 이미지 정보를 파이핑(pipe)하는 멀티플렉싱된 디스플레이의 출력 단부들)로부터의 광을 특정 도파관과 연관된 깊이 평면에 대응하는 특정 각도들(및 발산 양들)로 뷰어의 눈으로 지향시키기 위해 복수의 도파관들을 사용함으로써 눈/뇌에 3차원 지각을 제공하는데 활용될 수 있다.
[0088] 일부 실시예들에서, 도파관들의 2개의 스택들(뷰어의 각각의 눈마다 하나씩)은 각각의 눈에 상이한 이미지들을 제공하기 위해 활용될 수 있다. 일 예로서, 증강 현실 장면은 AR 기술의 착용자가 배경에 있는 사람들, 나무들, 빌딩들, 및 콘크리트 플랫폼을 특징으로 하는(featuring) 실세계 공원-형 세팅을 보도록 이루어질 수 있다. 이들 아이템들에 더하여, AR 기술의 착용자는 또한, 그가 실세계 플랫폼 상에 서 있는 로봇 동상, 및 호박벌의 의인화인 것으로 보여지는 날고 있는 만화-형 아바타 캐릭터를 "보는 것"을 지각할 수 있더라도, 로봇 동상 및 호박벌은 실세계에 존재하지 않는다. 도파관들의 스택 (들)은 입력 이미지에 대응하는 광 필드를 생성하는 데 사용될 수 있고, 일부 구현들에서 디스플레이는 웨어러블 광 필드 디스플레이를 포함한다. 광 필드 이미지들을 제공하기 위한 웨어러블 디스플레이 디바이스 및 도파관 스택들의 예들은 미국 특허 공보 제2015/0016777호에서 설명되며, 그리하여, 이 특허 공보는 그것이 포함하는 전부에 대해 그 전체가 인용에 의해 본원에 포함된다.
[0089] 도 10은 디스플레이 시스템 착용자 또는 뷰어(1004)에 VR, AR 또는 MR 경험을 제시하는 데 사용될 수 있는 웨어러블 디스플레이 시스템(1000)의 예를 예시한다. 웨어러블 디스플레이 시스템(1000)은 본원에서 설명된 애플리케이션들 또는 실시예들(예컨대, CNN의 실행, 입력 활성화 맵들 또는 커널의 값들의 재배열(reordering), 눈 이미지 세그먼테이션 또는 눈 추적) 중 임의의 것을 수행하도록 프로그래밍될 수 있다. 디스플레이 시스템(1000)은 디스플레이(1008), 및 그 디스플레이(1008)의 기능을 지원하기 위한 다양한 기계 및 전자 모듈들 및 시스템들을 포함한다. 디스플레이(1008)는 디스플레이 시스템 착용자 또는 뷰어(1004)에 의해 착용 가능하고 그리고 착용자(1004)의 눈들의 전면에 디스플레이(1008)를 포지셔닝하도록 구성된 프레임(1012)에 커플링될 수 있다. 디스플레이(1008)는 광 필드 디스플레이일 수 있다. 일부 실시예들에서, 스피커(1016)는 프레임(1012)에 커플링되고 사용자의 외이도에 인접하게 포지셔닝되고, 일부 실시예들에서, 도시되지 않은 다른 스피커가 사용자의 다른 외이도에 인접하게 포지셔닝되어 스테레오/성형 가능(shapeable) 사운드 제어를 제공한다. 디스플레이 시스템(1000)은 착용자(1004) 주위의 환경의 이미지들(예컨대, 정지 이미지들 또는 비디오)을 획득할 수 있는 외향 이미징 시스템(1044)(예컨대, 하나 이상의 카메라들)을 포함할 수 있다. 외향 이미징 시스템(1044)에 의해 획득된 이미지들은, 착용자(1004) 주위의 환경에서 큐보이드들을 검출 및 로컬화하기 위해 딥 큐보이드 검출기의 실시예들에 의해 분석될 수 있다.
[0090] 디스플레이(1008)는 이를테면, 유선 리드 또는 무선 연결성에 의해, 다양한 구성들로 장착될 수 있는, 이를테면, 프레임(1012)에 고정되게 부착되거나, 사용자에 의해 착용된 헬멧 또는 모자에 고정되게 부착되거나, 헤드폰들에 내장되거나, 그렇지 않으면 사용자(1004)에게 제거 가능하게 부착될 수 있는 (예컨대, 백팩(backpack)-스타일 구성으로, 벨트-커플링 스타일 구성으로) 로컬 데이터 프로세싱 모듈(1024)에 동작 가능하게 커플링(1020)된다.
[0091] 로컬 프로세싱 및 데이터 모듈(1024)은 하드웨어 프로세서는 물론, 비일시적인 디지털 메모리 이를테면, 비-휘발성 메모리(예컨대, 플래시 메모리)를 포함할 수 있고, 이 둘 모두는 데이터의 프로세싱, 캐싱(caching) 및 저장을 보조하기 위해 활용될 수 있다. 데이터는 a) 센서들(예컨대 프레임(1012)에 동작 가능하게 커플링되거나 그렇지 않으면 착용자(1004)에게 부착될 수 있음), 이를테면, 이미지 캡처 디바이스들(이를테면, 카메라들), 마이크로폰들, 관성 측정 유닛들, 가속도계들, 컴퍼스(compass)들, GPS 유닛들, 라디오 디바이스들, 및/또는 자이로(gyro)들로부터 캡처되고; 및/또는 b) 원격 프로세싱 모듈(1028) 및/또는 원격 데이터 리포지토리(repository)(1032)를 사용하여 취득 및/또는 프로세싱되는 (가능하게는, 이러한 프로세싱 또는 리트리벌(retrieval) 후 디스플레이(1008)에 전달하기 위한) 데이터를 포함할 수 있다. 로컬 프로세싱 및 데이터 모듈(1024)은 통신 링크들(1036, 1040)에 의해, 이를테면, 유선 또는 무선 통신 링크들을 통해 원격 프로세싱 모듈(1028) 및 원격 데이터 리포지토리(1032)에 동작 가능하게 커플링될 수 있어서, 이들 원격 모듈들(1028, 1032)은 서로 동작 가능하게 커플링되고 자원들로서 로컬 프로세싱 및 데이터 모듈(1024)에 대해 이용 가능하게 된다. 이미지 캡처 디바이스(들)는 눈 이미지 세그먼테이션, 또는 눈 추적 절차들에서 사용되는 눈 이미지들을 캡처하는 데 사용될 수 있다.
[0092] 일부 실시예들에서, 원격 프로세싱 모듈(1028)은 데이터 및/또는 이미지 정보, 이를테면, 이미지 캡처 디바이스에 의해 캡처된 비디오 정보를 분석 및 프로세싱하도록 구성된 하나 이상의 프로세서들을 포함할 수 있다. 비디오 데이터는 로컬 프로세싱 및 데이터 모듈(1024) 및/또는 원격 데이터 리포지토리(1032)에 로컬로 저장될 수 있다. 일부 실시예들에서, 원격 데이터 리포지토리(1032)는 "클라우드" 자원 구성에서 인터넷 또는 다른 네트워킹 구성을 통하여 이용 가능할 수 있는 디지털 데이터 저장 설비를 포함할 수 있다. 일부 실시예들에서, 모든 데이터는 저장되고 모든 컴퓨테이션들은 로컬 프로세싱 및 데이터 모듈(1024)에서 수행되어, 원격 모듈로부터 완전히 자율적인 사용을 허용한다.
[0093] 일부 구현들에서, 로컬 프로세싱 및 데이터 모듈(1024) 및/또는 원격 프로세싱 모듈(1028)은 본원에서 개시된 입력 활성화 맵들 또는 커널들의 재배열, 눈 이미지 세그먼테이션 또는 눈 추적의 실시예들을 수행하도록 프로그래밍된다. 예컨대, 로컬 프로세싱 및 데이터 모듈(1024) 및/또는 원격 프로세싱 모듈(1028)은 도 9를 참조하여 설명된 프로세스(900)의 실시예들을 수행하도록 프로그래밍될 수 있다. 로컬 프로세싱 및 데이터 모듈(1024) 및/또는 원격 프로세싱 모듈(1028)은 본원에서 개시된 큐보이드 검출 및 키포인트 로컬화를 수행하도록 프로그래밍될 수 있다. 이미지 캡처 디바이스는 특정 애플리케이션(예컨대, 일반적으로, AR(augmented reality), 인간-컴퓨터 상호작용(human-computer interaction; HCI), 자율주행 차량들, 드론들 또는 로봇공학)에 대한 비디오를 캡처할 수 있다. 비디오는 CNN을 이용하여 프로세싱 모듈들(1024, 1028) 중 하나 또는 둘 모두에 의해 분석될 수 있다. 일부 경우들에서, 입력 활성화 맵들 또는 커널들의 값들의 재배열, 눈 이미지 세그멘테이션, 또는 눈 추적 중 적어도 일부를 (예컨대, "클라우드"의) 원격 프로세싱 모듈에 분담(off-loading)하는 것은 컴퓨테이션들의 속도 또는 효율성을 개선할 수 있다. CNN의 파라미터들(예컨대, 가중치들, 바이어스 기간(bias term)들, 풀링 층들에 대한 서브샘플링 팩터들, 상이한 층들에서의 커널들의 수 및 크기, 특징 맵들의 수 등)은 데이터 모듈들(1024 및/또는 1032)에 저장될 수 있다.
[0094] 큐보이드 검출 및 키포인트 로케이션의 결과들(예컨대, 큐보이드 검출기(200)의 출력)은 부가적인 동작들 또는 프로세싱을 위해 프로세싱 모듈들(1024, 1028) 중 하나 또는 둘 모두에 의해 사용될 수 있다. 예컨대, 웨어러블 디스플레이 시스템(1000)의 프로세싱 모듈들(1024, 1028)은, 큐보이드 검출기(200)의 출력에 기초하여 본원에서 설명된 부가적인 애플리케이션들(이를테면, 일반적으로, 증강 현실, HCI(human-computer interaction), 자율주행 차량들, 드론들, 또는 로봇공학의 애플리케이션들)을 수행하도륵 프로그래밍될 수 있다.
부가적인 양상들
[0095] 제1 양상에서, 큐보이드 검출 및 키포인트 로컬화를 위한 시스템이 개시된다. 시스템은, 비-일시적인 메모리 ― 비-일시적인 메모리는, 실행 가능 명령들, 큐보이드 검출을 위한 이미지, 및 큐보이드 검출기를 저장하도록 구성되고, 큐보이드 검출기는, 이미지로부터 콘볼루셔널 특징 맵을 생성하기 위한 제1 CNN(convolutional neural network)의 복수의 콘볼루셔널 층들 및 비-콘볼루셔널 층들, 콘볼루셔널 특징 맵을 사용하여 이미지의 큐보이드 이미지 위치에서 큐보이드를 포함하는 적어도 하나의 RoI(region of interest)를 결정하기 위한 제2 CNN을 포함하는 RPN(region proposal network), 및 콘볼루셔널 특징 맵 및 큐보이드를 포함하는 RoI를 사용하여, 정제된 큐보이드 이미지 위치에서 정제된 RoI 및 큐보이드의 표현을 결정하기 위한 풀링 층 및 적어도 하나의 회귀자 층을 포함함 ― ; 및 비-일시적인 메모리와 통신하는 하드웨어 프로세서를 포함하고, 하드웨어 프로세서는, 이미지를 수신하고; 제1 CNN의 복수의 콘볼루셔널 층들 및 비-콘볼루셔널 층들 및 이미지를 사용하여, 콘볼루셔널 특징 맵을 생성하고; RPN을 사용하여, 이미지의 큐보이드 이미지 위치에서 큐보이드를 포함하는 적어도 하나의 RoI를 결정하고; 풀링 층 및 큐보이드 이미지 위치를 사용하여, 큐보이드를 포함하는 RoI에 대응하는 콘볼루셔널 특징 맵의 서브맵을 결정하고; 그리고 적어도 하나의 회귀자 층 및 큐보이드를 포함하는 RoI에 대응하는 콘볼루셔널 특징 맵의 서브맵을 사용하여, 정제된 큐보이드 이미지 위치에서 정제된 RoI 및 큐보이드의 표현을 결정하도록 실행 가능한 명령들에 의해 프로그래밍된다. ,
[0096] 제2 양상에서, 제1 양상의 시스템에 있어서, 하드웨어 프로세서는 추가로, 정제된 큐보이드 이미지 위치를 사용하여, 큐보이드를 포함하는 정제된 RoI에 대응하는 콘볼루셔널 특징 맵의 정제된 서브맵을 결정하고; 풀링 층, 적어도 하나의 회귀자 층 및 큐보이드를 포함하는 정제된 RoI에 대응하는 콘볼루셔널 특징 맵의 정제된 서브맵을 사용하여, 추가로 정제된 큐보이드 이미지 위치에서 추가로 정제된 RoI 및 큐보이드의 추가로 정제된 표현을 결정하도록 프로그래밍된다.
[0097] 제3 양상에서, 제1 양상 또는 제2 양상의 시스템에 있어서, 큐보이드 이미지 위치는 2-차원(2D) 바운딩 박스로서 표현된다.
[0098] 제4 양상에서, 제1 양상 내지 제3 양상 중 어느 한 양상의 시스템에 있어서, 정제된 큐보이드 이미지 위치는 2-차원(2D) 바운딩 박스로서 표현된다.
[0099] 제5 양상에서, 제1 양상 내지 제4 양상 중 어느 한 양상의 시스템에 있어서, 제1 CNN의 비-콘볼루셔널 층들은 정규화 층, 밝기 정규화 층, 배치 정규화 층, 정류된 선형 층, 업샘플링 층, 연접 층, 풀링 층, 소프트사인 층, 또는 이들의 임의의 조합을 포함한다.
[0100] 제6 양상에서, 제1 양상 내지 제5 양상 중 어느 한 양상의 시스템에 있어서, 적어도 하나의 회귀자 층은 2개 이상의 층들을 포함한다.
[0101] 제7 양상에서, 제6 양상의 시스템에 있어서, 2개 이상의 층들은 완전 연결 층, 비-완전 연결 층, 또는 이들의 임의의 조합을 포함한다.
[0102] 제8 양상에서, 제1 양상 내지 제7 양상 중 어느 한 양상의 시스템에 있어서, 적어도 하나의 회귀자 층은 트레이닝 동안 적어도 3개의 손실 함수들과 연관된다.
[0103] 제9 양상에서, 제8 양상의 시스템에 있어서, 적어도 3개의 손실 함수들은 로그 손실 함수 및 스무스 L1 손실 함수를 포함한다.
[0104] 제10 양상에서, 제1 양상 내지 제9 양상 중 어느 한 양상의 시스템에 있어서, RPN은 DNN(deep neural network)을 포함한다.
[0105] 제11 양상에서, 제1 양상 내지 제10 양상 중 어느 한 양상의 시스템에 있어서, RPN은 트레이닝 동안 적어도 2개의 손실 함수들과 연관된다.
[0106] 제12 양상에서, 제11 양상의 시스템에 있어서, 적어도 2개의 손실 함수들은 로그 손실 함수 및 스무스 L1 손실 함수를 포함한다.
[0107] 제13 양상에서, 제1 양상 내지 제12 양상 중 어느 한 양상의 시스템에 있어서, 큐보이드의 표현은 큐보이드의 파라미터화된 표현을 포함한다.
[0108] 제14 양상에서, 제13 양상의 시스템에 있어서, 큐보이드의 파라미터화된 표현은 이미지 내의 큐보이드의 복수의 키포인트들의 위치들을 포함한다.
[0109] 제15 양상에서, 제14 양상의 시스템에 있어서, 복수의 키포인트들은 이미지 내의 큐보이드의 8개의 꼭짓점들을 포함한다.
[0110] 제16 양상에서, 제13 양상의 시스템에 있어서, 파라미터화된 표현은 이미지의 중심으로부터 큐보이드의 복수의 키포인트들의 정규화된 오프셋들을 포함한다.
[0111] 제17 양상에서, 제13 양상의 시스템에 있어서, 파라미터화된 표현은 N개의 튜플을 포함한다.
[0112] 제18 양상에서, 제13 양상의 시스템에 있어서, 큐보이드의 파라미터화된 표현은 12개의 파라미터들을 포함한다.
[0113] 제19 양상에서, 제13 양상의 시스템에 있어서, 큐보이드의 파라미터화된 표현은 소실점 파라미터화(vanishing point parameterization)를 포함한다.
[0114] 제20 양상에서, 제1 양상 내지 제19 양상 중 어느 한 양상의 시스템에 있어서, 하드웨어 프로세서는 추가로, 정제된 큐보이드 이미지 위치에서 정제된 RoI 및 큐보이드의 표현에 기초하여 시스템의 사용자와 상호작용하도록 프로그래밍된다.
[0115] 제21 양상에서, 제20 양상의 시스템에 있어서, 큐보이드는 고정 박스에 대응하고, 시스템의 사용자와 상호작용하기 위해, 하드웨어 프로세서는, 추가로 큐보이드의 정제된 이미지 위치 및 큐보이드의 표현에 기초하여 고정 박스와 관련하여 캐릭터 애니메이션을 생성하도록 프로그래밍된다.
[0116] 제22 양상에서, 제20 양상의 시스템에 있어서, 큐보이드는 핸드-헬드 큐보이드에 대응하고, 시스템의 사용자와 상호작용하기 위해, 하드웨어 프로세서는, 추가로 큐보이드의 표현을 사용하여 큐보이드의 포즈(pose)를 결정하고; 그리고 큐보이드의 포즈에 기초하여 시스템의 사용자와 상호작용하도록 프로그래밍된다.
[0117] 제23 양상에서, 제20 양상의 시스템에 있어서, 큐보이드는 제3 CNN에 의해 인식 불가능한 희귀 객체에 대응하고, 시스템의 사용자와 상호작용하기 위해, 하드웨어 프로세서는 추가로, 제3 CNN에 의해 인식 불가능한 희귀 객체가 검출되었다는 통지를 사용자에게 제공하도록 프로그래밍된다.
[0118] 제24 양상에서, 제1 양상 내지 제23 양상 중 어느 한 양상의 시스템에 있어서, 큐보이드는 사람이 만든 구조에 대응하고, 하드웨어 프로세서는 추가로, 정제된 큐보이드 이미지 위치에서 정제된 RoI 및 큐보이드의 표현에 기초하여 무인 비행 동안 시스템의 사용자를 보조하도록 프로그래밍된다.
[0119] 제25 양상에서, 제1 양상 내지 제24 양상 중 어느 한 양상의 시스템에 있어서, 큐보이드는 마커(marker)에 대응하고, 하드웨어 프로세서는 추가로, 정제된 큐보이드 이미지 위치에서 정제된 RoI 및 큐보이드의 표현에 기초하여 SLAM(simultaneous location and mapping)을 수행하도록 프로그래밍된다.
[0120] 제26 양상에서, 웨어러블 디스플레이 시스템이 개시된다. 웨어러블 디스플레이는, 큐보이드 검출을 위한 이미지를 획득하도록 구성되는 외향 이미징 시스템; 및 제1 양상 내지 제25 양상 중 어느 한 양상의 큐보이드 검출 및 키포인트 로컬화를 위한 시스템을 포함한다.
[0121] 제27 양상에서, 큐보이드 검출기를 트레이닝하기 위한 시스템이 개시된다. 시스템은, 실행 가능한 명령들을 저장하도록 구성된 비-일시적인 메모리; 및 비-일시적인 메모리와 통신하는 하드웨어 프로세서를 포함하고, 하드웨어 프로세서는, 적어도 하나의 큐보이드를 각각 포함하는 복수의 트레이닝 이미지를 수신하고; 큐보이드 검출기를 생성하고 ― 큐보이드 검출기는, 제1 CNN(convolutional neural network)의 복수의 콘볼루셔널 층들 및 비-콘볼루셔널 층들, 복수의 콘볼루셔널 층들 및 비-콘볼루셔널 층들의 제1 층에 연결되는 RPN(region proposal network), 및 풀링 층 및 적어도 하나의 회귀 층을 포함하고, 풀링 층 및 적어도 하나의 회귀자 층은 복수의 콘볼루셔널 층들 및 비-콘볼루셔널 층들의 제2 층에 연결됨 ― ; 그리고 큐보이드 검출기를 트레이닝하도록 실행 가능한 명령들에 의해 프로그래밍되고, 큐보이드 검출기를 트레이닝하기 위해, 하드웨어 프로세스는, 큐보이드 검출기를 사용하여, 큐보이드 이미지 위치에서 RoI 및 복수의 트레이닝 이미지들의 트레이닝 이미지에서 큐보이드의 표현을 결정하고; 기준 큐보이드 이미지 위치와 큐보이드 이미지 위치 사이의 제1 차이 및 큐보이드의 기준 표현과 큐보이드의 결정된 표현 간의 제2 차이를 결정하고; 그리고 제1 차이 및 제2 차이에 기초하여 큐보이드 검출기의 가중치들은 업데이트하도록 구성된다.
[0122] 제28 양상에서, 제27 양상의 시스템에 있어서, 큐보이드는 큐보이드, 실린더, 구체 또는 이들의 임의의 조합을 포함한다.
[0123] 제29 양상에서, 제27 양상 또는 제28 양상의 시스템에 있어서 복수의 콘볼루셔널 층들 및 비-콘볼루셔널 층들의 제1 층 및 복수의 콘볼루셔널 층들 및 비-콘볼루셔널 층들의 제2 층은 동일하다.
[0124] 제30 양상에서, 제27 양상 내지 제29 양상 중 어느 한 양상의 시스템에 있어서, 큐보이드 이미지 위치에서의 RoI 및 큐보이드의 표현을 결정하기 위해, 하드웨어 프로세서는 추가로, 복수의 콘볼루셔널 층들 및 비-콘볼루셔널 층들을 사용하여, 복수의 트레이닝 이미지들 중 적어도 하나의 트레이닝 이미지에 대한 콘볼루셔널 특징 맵을 생성하고; RPN을 사용하여, 트레이닝 이미지의 초기 큐보이드 이미지 위치에서 큐보이드를 포함하는 적어도 하나의 RoI를 결정하고; 초기 큐보이드 이미지 위치를 사용하여, 큐보이드를 포함하는 적어도 하나의 RoI에 대응하는 콘볼루셔널 특징 맵의 서브맵을 결정하고; 그리고 풀링 층, 적어도 하나의 회귀자 층 및 큐보이드를 포함하는 적어도 하나의 RoI에 대응하는 콘볼루셔널 특징 맵의 서브맵을 사용하여, 큐보이드 이미지 위치에서 RoI 및 큐보이드의 표현을 결정하도록 프로그래밍된다.
[0125] 제31 양상에서, 제27 양상 내지 제30 양상 중 어느 한 양상의 시스템에 있어서, 초기 큐보이드 이미지 위치는 2-차원(2D) 바운딩 박스로서 표현된다.
[0126] 제32 양상에서, 제27 양상 내지 제31 양상 중 어느 한 양상의 시스템에 있어서, 큐보이드 이미지 위치에서의 RoI 및 큐보이드의 표현을 결정하기 위해, 하드웨어 프로세서는 추가로, 풀링 층, 적어도 하나의 회귀자 층 및 큐보이드를 포함하는 RoI에 대응하는 콘볼루셔널 특징 맵의 서브맵을 사용하여, 큐보이드 이미지 위치에서 RoI 및 큐보이드의 표현을 반복적으로 결정하도록 프로그래밍된다.
[0127] 제33 양상에서, 제27 양상 내지 제32 양상 중 어느 한 양상의 시스템에 있어서, 초기 큐보이드 이미지 위치는 2-차원(2D) 바운딩 박스로서 표현된다.
[0128] 제34 양상에서, 제27 양상 내지 제33 양상 중 어느 한 양상의 시스템에 있어서, 큐보이드 검출기의 가중치들을 업데이트하기 위해, 하드웨어-기반 프로세서는, RPN의 가중치들 및 적어도 하나의 회귀자 층의 가중치들을 업데이트하도록 프로그래밍된다.
[0129] 제35 양상에서, 제27 양상 내지 제33 양상 중 어느 한 양상의 시스템에 있어서, 큐보이드 검출기의 가중치들을 업데이트하기 위해, 하드웨어-기반 프로세서는, 제1 CNN의 가중치들을 업데이트함 없이, RPN의 가중치들 및 적어도 하나의 회귀자 층의 가중치들을 업데이트하도록 프로그래밍된다.
[0130] 제36 양상에서, 제27 양상 내지 제33 양상 중 어느 한 양상의 시스템에 있어서, 큐보이드 검출기의 가중치들을 업데이트하기 위해, 하드웨어-기반 프로세서는, 제1 CNN의 가중치들, RPN의 가중치들 및 적어도 하나의 회귀자 층의 가중치들을 업데이트하도록 프로그래밍된다.
[0131] 제37 양상에서, 제27 양상 내지 제36 양상 중 어느 한 양상의 시스템에 있어서, 큐보이드 검출기를 생성하기 위해, 하드웨어-기반 프로세서는, 제1 CNN을 수신하도록 프로그래밍된다.
[0132] 제38 양상에서, 제27 양상 내지 제37 양상 중 어느 한 양상의 시스템에 있어서, 적어도 하나의 회귀자 층은 2개 이상의 층들을 포함한다.
[0133] 제39 양상에서, 제38 양상의 시스템에 있어서, 2개 이상의 층들은 완전 연결 층, 비-완전 연결 층, 또는 이들의 임의의 조합을 포함한다.
[0134] 제40 양상에서, 제27 양상 내지 제38 양상 중 어느 한 양상의 시스템에 있어서, 적어도 하나의 회귀자 층은 큐보이드 검출기의 트레이닝 동안 적어도 3개의 손실 함수들과 연관된다.
[0135] 제41 양상에서, 제40 양상의 시스템에 있어서, 적어도 3개의 손실 함수들은 로그 손실 함수 및 스무스 L1 손실 함수를 포함한다.
[0136] 제42 양상에서, 제27 양상 내지 제41 양상 중 어느 한 양상의 시스템에 있어서, RPN은 DNN(deep neural network)을 포함한다.
[0137] 제43 양상에서, 제27 양상 내지 제42 양상 중 어느 한 양상의 시스템에 있어서, RPN은 큐보이드 검출기의 트레이닝 동안 적어도 2개의 손실 함수들과 연관된다.
[0138] 제44 양상에서, 제43 양상의 시스템에 있어서, 적어도 2개의 손실 함수들은 로그 손실 함수 및 스무스 L1 손실 함수를 포함한다.
[0139] 제45 양상에서, 제27 양상 내지 제44 양상 중 어느 한 양상의 시스템에 있어서, 큐보이드의 표현은 큐보이드의 파라미터화된 표현을 포함한다.
[0140] 제46 양상에서, 제45 양상의 시스템에 있어서, 파라미터화된 표현은 N개의 튜플을 포함한다.
[0141] 제47 양상에서, 웨어러블 디스플레이 시스템이 개시된다. 웨어러블 디스플레이 시스템은, 웨어러블 디스플레이 시스템의 착용자의 환경 이미지를 획득하도록 구성된 외향 이미징 시스템; 이미지를 저장하도록 구성된 비-일시적인 메모리; 및 비-일시적인 메모리와 통신하는 하드웨어 프로세서를 포함하고, 프로세서는, 환경의 이미지에 액세스하고; 이미지에서 큐보이드를 검출하도록 이미지를 분석하고 ― 이미지를 분석하기 위해, 프로세서는, 특징들을 포함하는 콘볼루셔널 특징 맵을 생성하기 위해 CNN(convolutional neural network)의 층들을 활용하도록 프로그래밍됨 ― ; 콘볼루셔널 특징 맵을 ROI(region of interest)으로 맵핑하기 위해 RPN(region proposal network)을 활용하고; 제1 풀링된 특징들을 생성하도록 RoI에서 특징들을 풀링하고; 제1 바운딩 박스 추정 및 제1 큐보이드 꼭짓점 추정을 생성하기 위해 회귀자를 통해 제1 풀링된 특징들을 전달하고; 제1 바운딩 박스 추정에 기초하여 제2 풀링된 특징들을 생성하고; 그리고 제2 바운딩 박스 추정 및 제2 큐보이드 꼭짓점 추정을 생성하기 위해 회귀자를 통해 제2 풀링된 특징들을 전달하도록 프로그래밍된다.
[0142] 제48 양상에서, 제47 양상의 웨어러블 디스플레이 시스템에 있어서, 이미지는 단안 컬러 이미지를 포함한다.
[0143] 제49 양상에서, 제47 양상 또는 제48 양상의 웨어러블 디스플레이 시스템에 있어서, RPN은 콘볼루셔널 특징 맵을 RoI에 맵핑하는 CNN을 포함한다.
[0144] 제50 양상에서, 제47 양상 내지 제49 양상 중 어느 한 양상의 웨어러블 디스플레이 시스템에 있어서, 제1 바운딩 박스 추정 또는 제2 바운딩 박스 추정은 바운딩 박스의 중심으로부터의 오프셋들을 포함한다.
[0145] 제51 양상에서, 이미지에서 큐보이드를 검출하기 위한 시스템이 개시된다. 시스템은, 구역의 이미지를 저장하도록 구성된 비-일시적인 메모리: 비-일시적인 메모리와 통신하는 하드웨어 프로세서를 포함하며, 프로세서는, 특징 맵을 생성하기 위해 콘볼루셔널 뉴럴 네트워크를 평가하고; RoI(region of interest)을 획득하도록 특징 맵을 분석하고; RoI가 큐보이드를 포함한다고 결정하고; 큐보이드의 꼭짓점들의 제1 추정을 생성하기 위해 특징 맵의 RoI에서 제1 풀링된 특징들을 분석하고; 큐보이드의 꼭짓점들에 대한 제1 추정에 적어도 부분적으로 기초하여 개선된 RoI를 생성하고; 큐보이드의 꼭짓점들의 제2 추정을 생성하기 위해 특징 맵의 개선된 RoI에서 제2 풀링된 특징들을 분석하고; 그리고 큐보이드의 꼭짓점들에 대한 제2 추정을 출력하도록 프로그래밍된다 .
[0146] 제52 양상에서, 제51 양상의 시스템에 있어서, RoI(region of interest)을 획득하도록 특징 맵을 분석하기 위해, 프로세서는 PRN(region proposal network)을 평가하도록 프로그래밍된다.
[0147] 제53 양상에서, 제51 양상 또는 제52 양상의 시스템에 있어서, 큐보이드의 꼭짓점들에 대한 제1 추정은 RoI의 중심으로부터의 오프셋들을 포함하거나, 또는 큐보이드의 꼭짓점들에 대한 제2 추정은 개선된 RoI의 중심으로부터의 오프셋들을 포함한다.
[0148] 제54 양상에서, 큐보이드 검출 및 키포인트 로컬화를 위한 방법이 개시된다. 이 방법은 하드웨어 프로세서의 제어 하에 있으며, 이미지를 수신하는 단계; 큐보이드 검출기의 제1 CNN(convolutional neural network)의 복수의 콘볼루셔널 층들 및 비-콘볼루셔널 층들 및 이미지를 사용하여, 콘볼루셔널 특징 맵을 생성하는 단계; 큐보이드 검출기의 제2 CNN을 포함하는 RPN(region proposal network)을 사용하여, 이미지의 큐보이드 이미지 위치에서 큐보이드를 포함하는 적어도 하나의 RoI를 결정하는 단계; 큐보이드 검출기의 풀링 층 및 큐보이드 이미지 위치를 사용하여, 큐보이드를 포함하는 RoI에 대응하는 콘볼루셔널 특징 맵의 서브맵을 결정하는 단계; 및 큐보이드 검출기의 적어도 하나의 회귀자 층 및 큐보이드를 포함하는 RoI에 대응하는 콘볼루셔널 특징 맵의 서브맵을 사용하여, 정제된 큐보이드 이미지 위치에서 정제된 RoI 및 큐보이드의 표현을 결정하는 단계를 포함한다.
[0149] 제55 양상에서, 제54 양상의 방법에 있어서, 정제된 큐보이드 이미지 위치를 사용하여, 큐보이드를 포함하는 정제된 RoI에 대응하는 콘볼루셔널 특징 맵의 정제된 서브맵을 결정하는 단계; 풀링 층, 적어도 하나의 회귀자 층 및 큐보이드를 포함하는 정제된 RoI에 대응하는 콘볼루셔널 특징 맵의 정제된 서브맵을 사용하여, 추가로 정제된 큐보이드 이미지 위치에서 추가로 정제된 RoI 및 큐보이드의 추가로 정제된 표현을 결정하는 단계를 더 포함한다.
[0150] 제56 양상에서, 제54 양상 또는 제55 양상의 방법에 있어서, 큐보이드 이미지 위치는 2-차원(2D) 바운딩 박스로서 표현된다.
[0151] 제57 양상에서, 제54 양상 내지 제56 양상 중 어느 한 양상의 방법에 있어서, 정제된 큐보이드 이미지 위치는 2-차원(2D) 바운딩 박스로서 표현된다.
[0152] 제58 양상에서, 제54 양상 내지 제57 양상 중 어느 한 양상의 방법에 있어서, 제1 CNN의 비-콘볼루셔널 층들은 정규화 층, 밝기 정규화 층, 배치 정규화 층, 정류된 선형 층, 업샘플링 층, 연접 층, 풀링 층, 소프트사인 층, 또는 이들의 임의의 조합을 포함한다.
[0153] 제59 양상에서, 제54 양상 내지 제58 양상 중 어느 한 양상의 방법에 있어서, 적어도 하나의 회귀자 층은 2개 이상의 층들을 포함한다.
[0154] 제60 양상에서, 제59 양상의 방법에 있어서, 2개 이상의 층들은 완전 연결 층, 비-완전 연결 층, 또는 이들의 임의의 조합을 포함한다.
[0155] 제61 양상에서, 제54 양상 내지 제60 양상 중 어느 한 양상의 방법에 있어서, RPN은 DNN(deep neural network)을 포함한다.
[0156] 제62 양상에서, 제54 양상 내지 제61 양상 중 어느 한 양상의 방법에 있어서, 큐보이드의 표현은 큐보이드의 파라미터화된 표현을 포함한다.
[0157] 제63 양상에서, 제62 양상의 방법에 있어서, 큐보이드의 파라미터화된 표현은 이미지 내의 큐보이드의 복수의 키포인트들의 위치들을 포함한다.
[0158] 제64 양상에서, 제63 양상의 방법에 있어서, 복수의 키포인트들은 이미지 내의 큐보이드의 8개의 꼭짓점들을 포함한다.
[0159] 제65 양상에서, 제62 양상의 방법에 있어서, 파라미터화된 표현은 이미지의 중심으로부터 큐보이드의 복수의 키포인트들의 정규화된 오프셋들을 포함한다.
[0160] 제66 양상에서, 제62 양상의 방법에 있어서, 파라미터화된 표현은 N개의 튜플을 포함한다.
[0161] 제67 양상에서, 제62 양상의 방법에 있어서, 큐보이드의 파라미터화된 표현은 12개의 파라미터들을 포함한다.
[0162] 제68 양상에서, 제62 양상의 방법에 있어서, 큐보이드의 파라미터화된 표현은 소실점 파라미터화를 포함한다.
[0163] 제69 양상에서, 제54 양상 내지 제58 양상 중 어느 한 양상의 방법에 있어서, 정제된 큐보이드 이미지 위치에서 정제된 RoI 및 큐보이드의 표현에 기초하여 사용자와 상호작용하는 단계를 더 포함한다.
[0164] 제70 양상에서, 제69 양상의 방법에 있어서, 큐보이드는 고정 박스에 대응하고, 사용자와 상호작용하는 단계는, 큐보이드의 정제된 이미지 위치 및 큐보이드의 표현에 기초하여 고정 박스와 관련하여 캐릭터 애니메이션을 생성하는 단계를 포함한다.
[0165] 제71 양상에서, 제69 양상의 방법에 있어서, 큐보이드는 핸드-헬드 큐보이드에 대응하고, 사용자와 상호작용하는 단계는, 큐보이드의 표현을 사용하여 큐보이드의 포즈(pose)를 결정하는 단계; 및 큐보이드의 포즈에 기초하여 사용자와 상호작용하는 단계를 포함한다.
[0166] 제72 양상에서, 제69 양상의 방법에 있어서, 큐보이드는 제3 CNN에 의해 인식 불가능한 희귀 객체에 대응하고, 사용자와 상호작용하는 단계는, 제3 CNN에 의해 인식 불가능한 희귀 객체가 검출되었다는 통지를 사용자에게 제공하는 단계를 포함한다.
[0167] 제73 양상에서, 제54 양상 내지 제72 양상 중 어느 한 양상의 방법에 있어서, 정제된 큐보이드 이미지 위치에서 정제된 RoI 및 큐보이드의 표현에 기초하여 무인 비행 동안 시스템의 사용자를 보조하는 단계를 더 포함하고, 큐보이드는 사람이 만든 구조에 대응한다.
[0168] 제74 양상에서, 제54 양상 내지 제73 양상 중 어느 한 양상의 방법에 있어서, 정제된 큐보이드 이미지 위치에서 정제된 RoI 및 큐보이드의 표현에 기초하여 SLAM(simultaneous location and mapping)을 수행하는 단계를 더 포함하고, 큐보이드는 마커(marker)에 대응한다.
[0169] 제75 양상에서, 제54 양상 내지 제74 양상 중 어느 한 양상의 방법에 있어서, 적어도 하나의 트레이닝 큐보이드를 각각 포함하는 복수의 트레이닝 이미지를 수신하는 단계; 큐보이드 검출기를 생성하는 단계 및 큐보이드 검출기를 트레이닝하는 단계를 더 포함하고, 큐보이드 검출기를 트레이닝하는 단계는, 큐보이드 검출기를 사용하여, 트레이닝 큐보이드 이미지 위치에서 트레이닝 RoI 및 복수의 트레이닝 이미지들의 트레이닝 이미지에서 트레이닝 큐보이드의 표현을 결정하는 단계; 기준 큐보이드 이미지 위치와 트레이닝 큐보이드 이미지 위치 사이의 제1 차이 및 트레이닝 큐보이드의 기준 표현과 트레이닝 큐보이드의 결정된 표현 간의 제2 차이를 결정하는 단계; 및 제1 차이 및 제2 차이에 기초하여 큐보이드 검출기의 가중치들은 업데이트하는 단계를 포함한다.
[0170] 제76 양상에서, 제75 양상의 방법에 있어서, 트레이닝 큐보이드 이미지 위치에서 트레이닝 RoI 및 트레이닝 큐보이드의 표현을 결정하는 단계는, 복수의 콘볼루셔널 층들 및 비-콘볼루셔널 층들을 사용하여, 복수의 트레이닝 이미지들 중 적어도 하나의 트레이닝 이미지에 대한 트레이닝 콘볼루셔널 특징 맵을 생성하는 단계; RPN을 사용하여, 트레이닝 이미지의 초기 트레이닝 큐보이드 이미지 위치에서 트레이닝 큐보이드를 포함하는 적어도 하나의 트레이닝 RoI를 결정하는 단계; 초기 트레이닝 큐보이드 이미지 위치를 사용하여, 큐보이드를 포함하는 적어도 하나의 RoI에 대응하는 콘볼루셔널 특징 맵의 서브맵을 결정하는 단계; 및 풀링 층, 적어도 하나의 회귀자 층 및 트레이닝 큐보이드를 포함하는 적어도 하나의 트레이닝 RoI에 대응하는 트레이닝 콘볼루셔널 특징 맵의 서브맵을 사용하여, 트레이닝 큐보이드 이미지 위치에서 트레이닝 RoI 및 트레이닝 큐보이드의 표현을 결정하는 단계를 포함한다.
[0171] 제77 양상에서, 제76 양상의 방법에 있어서, 초기 트레이닝 큐보이드 이미지 위치는 2-차원(2D) 바운딩 박스로서 표현된다.
[0172] 제78 양상에서, 제75 양상의 방법에 있어서, 트레이닝 큐보이드 이미지 위치에서 트레이닝 RoI 및 트레이닝 큐보이드의 표현을 결정하는 단계는, 풀링 층, 적어도 하나의 회귀자 층 및 트레이닝 큐보이드를 포함하는 트레이닝 RoI에 대응하는 트레이닝 콘볼루셔널 특징 맵의 서브맵을 사용하여, 트레이닝 큐보이드 이미지 위치에서 RoI 및 트레이닝 큐보이드의 표현을 반복적으로 결정하는 단계를 포함한다.
[0173] 제79 양상에서, 제78 양상의 방법에 있어서, 초기 트레이닝 큐보이드 이미지 위치는 2-차원(2D) 바운딩 박스로서 표현된다.
[0174] 제80 양상에서, 제75 양상 내지 제79 양상 중 어느 한 양상의 방법에 있어서, 큐보이드 검출기의 가중치들을 업데이트하는 단계는, RPN의 가중치들 및 적어도 하나의 회귀자 층의 가중치들을 업데이트하는 단계를 포함한다.
[0175] 제81 양상에서, 제75 양상 내지 제79 양상 중 어느 한 양상의 방법에 있어서, 큐보이드 검출기의 가중치들을 업데이트하는 단계는, 제1 CNN의 가중치들을 업데이트함 없이, RPN의 가중치들 및 적어도 하나의 회귀자 층의 가중치들을 업데이트하는 단계를 포함한다.
[0176] 제82 양상에서, 제75 양상 내지 제79 양상 중 어느 한 양상의 방법에 있어서, 큐보이드 검출기의 가중치들을 업데이트하는 단계는, 제1 CNN의 가중치들, RPN의 가중치들 및 적어도 하나의 회귀자 층의 가중치들을 업데이트하는 단계를 포함한다.
[0177] 제83 양상에서, 제54 양상 내지 제82 양상 중 어느 한 양상의 방법에 있어서, 큐보이드 검출기를 생성하는 단계는, 제1 CNN을 수신하는 단계를 포함한다.
[0178] 제84 양상에서, 제75 양상 내지 제83 양상 중 어느 한 양상의 방법에 있어서, 적어도 하나의 회귀자 층은 큐보이드 검출기의 트레이닝 동안 적어도 3개의 손실 함수들과 연관된다.
[0179] 제85 양상에서, 제84 양상의 방법에 있어서, 적어도 3개의 손실 함수들은 로그 손실 함수 및 스무스 L1 손실 함수를 포함한다.
[0180] 제86 양상에서, 제75 양상 내지 제85 양상 중 어느 한 양상의 방법에 있어서, RPN은 큐보이드 검출기의 트레이닝 동안 적어도 2개의 손실 함수들과 연관된다.
[0181] 제87 양상에서, 제86 양상의 방법에 있어서, 적어도 2개의 손실 함수들은 로그 손실 함수 및 스무스 L1 손실 함수를 포함한다.
[0182] 제88 양상에서, 방법이 개시된다. 이 방법은 하드웨어 프로세서의 제어 하에 있으며, 환경의 이미지에 액세스하는 단계; 이미지에서 큐보이드를 검출하도록 이미지를 분석하는 단계 ― 이미지를 분석하는 단계는, 특징들을 포함하는 콘볼루셔널 특징 맵을 생성하기 위해 CNN(convolutional neural network)의 층들을 활용하는 단계를 포함함 ― ; 콘볼루셔널 특징 맵을 ROI(region of interest)으로 맵핑하기 위해 RPN(region proposal network)을 활용하는 단계; 제1 풀링된 특징들을 생성하도록 RoI에서 특징들을 풀링하는 단계; 제1 바운딩 박스 추정 및 제1 큐보이드 꼭짓점 추정을 생성하기 위해 회귀자를 통해 제1 풀링된 특징들을 전달하는 단계; 제1 바운딩 박스 추정에 기초하여 제2 풀링된 특징들을 생성하는 단계; 및 제2 바운딩 박스 추정 및 제2 큐보이드 꼭짓점 추정을 생성하기 위해 회귀자를 통해 제2 풀링된 특징들을 전달하는 단계를 포함한다.
[0183] 제89 양상에서, 제88 양상의 방법에 있어서, 이미지는 단안 컬러 이미지를 포함한다.
[0184] 제90 양상에서, 제88 양상 또는 제89 양상의 방법에 있어서, RPN은 콘볼루셔널 특징 맵을 RoI에 맵핑하는 CNN을 포함한다.
[0185] 제91 양상에서, 제88 양상 내지 제89 양상 중 어느 한 양상의 방법에 있어서, 제1 바운딩 박스 추정 또는 제2 바운딩 박스 추정은 바운딩 박스의 중심으로부터의 오프셋들을 포함한다.
[0186] 제92 양상에서, 이미지에서 큐보이드를 검출하기 위한 방법이 개시된다. 이 방법은 하드웨어 프로세서의 제어 하에 있으며, 특징 맵을 생성하기 위해 콘볼루셔널 뉴럴 네트워크를 평가하는 단계; RoI(region of interest)을 획득하도록 특징 맵을 분석하는 단계; RoI가 큐보이드를 포함한다고 결정하는 단계; 큐보이드의 꼭짓점들의 제1 추정을 생성하기 위해 특징 맵의 RoI에서 제1 풀링된 특징들을 분석하는 단계; 큐보이드의 꼭짓점들에 대한 제1 추정에 적어도 부분적으로 기초하여 개선된 RoI를 생성하는 단계; 큐보이드의 꼭짓점들의 제2 추정을 생성하기 위해 특징 맵의 개선된 RoI에서 제2 풀링된 특징들을 분석하는 단계; 및 큐보이드의 꼭짓점들에 대한 제2 추정을 출력하는 단계를 포함한다.
[0187] 제93 양상에서, 제92 양상의 방법에 있어서, RoI(region of interest)을 획득하도록 특징 맵을 분석하는 단계는, RPN(region proposal network)을 평가하는 단계를 포함한다.
[0188] 제94 양상에서, 제92 양상 또는 제93 양상의 방법에 있어서, 큐보이드의 꼭짓점들에 대한 제1 추정은 RoI의 중심으로부터의 오프셋들을 포함하거나, 또는 큐보이드의 꼭짓점들에 대한 제2 추정은 개선된 RoI의 중심으로부터의 오프셋들을 포함한다.
결론
[0189] 본원에서 설명되고 그리고/또는 첨부 도면들에 도시되는 프로세스들, 방법들 및 알고리즘들 각각은 하나 이상의 물리적 컴퓨팅 시스템들, 하드웨어 컴퓨터 프로세서들, 주문형 회로 및/또는 특유 및 특정 컴퓨터 명령들을 실행하도록 구성된 전자 하드웨어에 의해 실행되는 코드 모듈들로 구현되고, 이 코드 모듈들에 의해 완전히 또는 부분적으로 자동화될 수 있다. 예컨대, 컴퓨팅 시스템들은 특정 컴퓨터 명령들로 프로그래밍된 범용 컴퓨터들(예컨대, 서버들) 또는 특수 목적 컴퓨터들, 특수 목적 회로 등을 포함할 수 있다. 코드 모듈은 실행 가능 프로그램으로 컴파일되어 링크되거나, 동적 링크 라이브러리에 설치될 수 있거나, 또는 인터프리팅된 프로그래밍 언어로 작성될 수 있다. 일부 구현들에서, 특정한 동작들 및 방법들은, 주어진 기능에 특정한 회로에 의해 수행될 수 있다.
[0190] 추가로, 본 개시내용의 기능성의 소정의 구현들은 충분히 수학적으로, 계산상으로 또는 기술적으로 복잡하여, (적절한 전문화된 실행 가능한 명령들을 활용하는) 주문형 하드웨어 또는 하나 이상의 물리적 컴퓨팅 디바이스들은 예컨대, 수반되는 계산들의 양(volume) 또는 복잡성으로 인해 또는 실질적으로 실시간으로 결과들을 제공하기 위해 그 기능성들을 수행할 필요가 있을 수 있다. 예컨대, 비디오는 다수의 프레임들(각각의 프레임은 수백만 개의 픽셀들을 가짐)을 포함할 수 있고, 상업적으로 합리적인 시간량 내에 원하는 이미지 프로세싱 작업 또는 애플리케이션을 제공하기 위해, 특별히 프로그래밍된 컴퓨터 하드웨어가 비디오 데이터를 프로세싱할 필요가 있다.
[0191] 코드 모듈들 또는 임의의 유형의 데이터는, 임의의 유형의 비-일시적인 컴퓨터-판독 가능 매체, 이를테면, 하드 드라이브들, 솔리드 스테이트 메모리, RAM(random access memory), ROM(read only memory), 광학 디스크, 휘발성 또는 비-휘발성 저장소, 이들의 조합들 등을 포함하는 물리적 컴퓨터 저장소 상에 저장될 수 있다. 방법들 및 모듈들(또는 데이터)은 또한, 생성된 데이터 신호들로서(예컨대, 반송파 또는 다른 아날로그 또는 디지털 전파 신호의 일부로서) 무선-기반 및 유선/케이블-기반 매체들을 포함하는 다양한 컴퓨터-판독 가능 송신 매체들 상에서 송신될 수 있고, (예컨대, 단일 또는 멀티플렉싱된 아날로그 신호의 일부로서, 또는 다수의 이산 디지털 패킷들 또는 프레임들로서) 다양한 형태들을 취할 수 있다. 개시된 프로세스들 또는 프로세스 단계들의 결과들은 임의의 유형의 비-일시적인 유형의(tangible) 컴퓨터 저장소에 지속적으로 또는 다른 방식으로 저장될 수 있거나, 또는 컴퓨터-판독 가능 송신 매체를 통해 통신될 수 있다.
[0192] 본원에서 설명되고 그리고/또는 첨부된 도면들에 도시되는 흐름도들에서의 임의의 프로세스들, 블록들, 상태들, 단계들 또는 기능성들은 프로세스의 단계들 또는 (예컨대, 논리적 또는 산술적) 특정 기능들을 구현하기 위한 하나 이상의 실행 가능 명령들을 포함하는 코드 모듈들, 세그먼트들 또는 코드 부분들을 잠재적으로 나타내는 것으로 이해되어야 한다. 다양한 프로세스들, 블록들, 상태들, 단계들 또는 기능성들은 본원에서 제공된 예시적인 예들에서 조합되거나, 재배열되거나, 이들에 부가되거나, 이들로부터 제거되거나, 수정되거나, 또는 다른 방식으로 변할 수 있다. 일부 실시예들에서, 부가적인 또는 상이한 컴퓨팅 시스템들 또는 코드 모듈들은 본원에서 설명된 기능성들 중 일부 또는 전부를 수행할 수 있다. 본원에 설명된 방법들 및 프로세스들은 또한 임의의 특정 시퀀스로 제한되지 않고, 그에 관련된 블록들, 단계들 또는 상태들은 적절한 다른 시퀀스들로, 예컨대, 직렬로, 병렬로 또는 일부 다른 방식으로 수행될 수 있다. 작업들 또는 이벤트들은 개시된 예시적인 실시예들에 부가되거나 그로부터 제거될 수 있다. 또한, 본원에서 설명된 구현들에서의 다양한 시스템 컴포넌트들의 분리는 예시 목적들을 위한 것이며, 모든 구현들에서 이러한 분리를 요구하는 것으로 이해되어서는 안 된다. 설명된 프로그램 컴포넌트들, 방법들 및 시스템들은 일반적으로 단일 컴퓨터 제품에 함께 통합되거나 다수의 컴퓨터 제품들로 패키징될 수 있다는 것이 이해되어야 한다. 다수의 구현 변동들이 가능하다.
[0193] 프로세스들, 방법들 및 시스템들은 네트워크(또는 분산형) 컴퓨팅 환경에서 구현될 수 있다. 네트워크 환경들은, 전사적(enterprise-wide) 컴퓨터 네트워크들, 인트라넷들, LAN(Local Area Network)들, WAN(Wide Area Network)들, PAN(Personal Area Network)들, 클라우드 컴퓨팅 네트워크들, 크라우드-소스드(crowd-sourced) 컴퓨팅 네트워크들, 인터넷 및 월드 와이드 웹(World Wide Web)을 포함한다. 네트워크는 유선 또는 무선 네트워크 또는 임의의 다른 유형의 통신 네트워크일 수 있다.
[0194] 본 개시내용의 시스템들 및 방법들 각각은 몇몇 혁신적인 양상들을 가지며, 그 양상들 중 어떠한 단일 양상도 본원에서 개시된 바람직한 속성들을 전적으로 담당하거나 이를 위해 요구되지 않는다. 본원에서 설명된 다양한 특징들 및 프로세스들은 서로 독립적으로 사용될 수 있거나, 또는 다양한 방식들로 조합될 수 있다. 모든 가능한 조합들 및 서브조합들은 본 개시내용의 범위 내에 속하는 것으로 의도된다. 본 개시내용에서 설명된 구현들에 대한 다양한 수정들은 당업자들에게 자명할 수 있으며, 본원에서 정의된 일반적인 원리들은 본 개시내용의 사상 또는 범위를 벗어나지 않으면서 다른 구현들에 적용될 수 있다. 따라서, 청구항들은 본 명세서에 도시된 구현들로 제한되도록 의도되는 것이 아니라, 본 명세서에 개시된 본 개시내용, 원리들 및 신규한 특성들과 일치하는 가장 넓은 범위에 부합할 것이다.
[0195] 별개의 구현들의 맥락에서 본 명세서에 설명된 소정의 특징들은 또한, 단일 구현으로 조합하여 구현될 수 있다. 대조적으로, 단일 구현의 맥락에서 설명된 다양한 특징들은 또한, 별개로 다수의 구현들로 또는 임의의 적절한 서브조합으로 구현될 수 있다. 더욱이, 특징들이 소정의 조합들로 작용하는 것으로 위에서 설명되고 심지어 초기에 이와 같이 청구될 수 있지만, 일부 경우들에서, 청구된 조합으로부터의 하나 이상의 특징들은 그 조합으로부터 제거될 수 있고, 청구된 조합은 서브조합 또는 서브조합의 변동에 관련될 수 있다. 단일 특징 또는 특징들의 그룹이 각각의 그리고 모든 각각의 실시예에 필요하거나 필수적인 것은 아니다.
[0196] 구체적으로 달리 언급되지 않거나 또는 사용된 맥락 내에서 달리 이해되지 않으면, 본원에서 사용된 조건어, 이를테면, 다른 것들 중에서도, "할 수 있다(can, could, might, may)", "예컨대" 등은 일반적으로, 소정의 실시예들이 소정의 특징들, 엘리먼트들, 및/또는 단계들을 포함하지만 다른 실시예들은 이들을 포함하지 않는다는 것을 전달하도록 의도된다. 따라서, 그러한 조건어는 일반적으로, 특징들, 엘리먼트들, 및/또는 단계들이 하나 이상의 실시예들을 위해 어떤 식으로든 요구된다는 것을, 또는 하나 이상의 실시예들이, 저자 입력 또는 프롬프팅(prompting)을 이용하거나 또는 그러한 것을 이용함이 없이, 이들 특징들, 엘리먼트들, 및/또는 단계들이 임의의 특정 실시예에 포함되는지 또는 임의의 특정 실시예들에서 수행되어야 하는지를 판단하기 위한 로직을 반드시 포함한다는 것을 암시하도록 의도되진 않는다. "포함하는 (comprising, including), "갖는 (having)" 등의 용어들은 동의어이며, 오픈-엔디드(open-ended) 방식으로 포괄적으로 사용되며, 부가적인 엘리먼트들, 특징들, 행동들, 동작들 등을 배제하지 않는다. 또한, "또는"이라는 용어는 (그의 배타적인 의미가 아니라) 그의 포괄적인 의미로 사용되어서, 예컨대, 리스트의 엘리먼트들을 연결하기 위해 사용될 때, "또는"이라는 용어는 리스트 내의 엘리먼트들 중 하나, 일부, 또는 전부를 의미한다. 또한, 본 명세서 및 첨부된 청구항들에서 사용된 바와 같은 단수 표현은 달리 특정되지 않는 한 "하나 이상" 또는 "적어도 하나"를 의미하는 것으로 해석될 것이다.
[0197] 본원에서 사용된 바와 같이, 리스트의 아이템들 “중 적어도 하나”를 지칭하는 어구는 단일 멤버들을 포함하여 그 아이템들의 임의의 조합을 지칭한다. 예로서, "A, B 또는 C 중 적어도 하나"는 A; B; C; A와 B; A와 C; B와 C; 그리고 A와 B와 C를 커버하는 것으로 의도된다. 구체적으로 달리 언급되지 않으면, 어구 "X, Y 또는 Z 중 적어도 하나"와 같은 접속어는, 아이템, 용어 등이 X, Y 또는 Z 중 적어도 하나일 수 있다는 것을 전달하기 위해 일반적으로 사용되는 맥락으로 달리 이해된다. 따라서, 이러한 접속어는 일반적으로, 소정의 실시예들이 X 중 적어도 하나, Y 중 적어도 하나 및 Z 중 적어도 하나가 각각 존재할 것을 요구하는 것을 암시하는 것으로 의도되지 않는다.
[0198] 유사하게, 동작들이 특정한 순서로 도면들에 도시될 수 있지만, 원하는 결과들을 달성하기 위해, 그러한 동작들이 도시된 특정한 순서 또는 순차적인 순서로 수행될 필요가 없거나, 모든 예시된 동작들이 수행될 필요가 없다는 것이 인지될 것이다. 추가로, 도면들은 흐름도의 형태로 둘 이상의 예시적인 프로세스들을 개략적으로 도시할 수 있다. 그러나, 도시되지 않은 다른 동작들이, 개략적으로 예시된 예시적인 방법들 및 프로세스들에 통합될 수 있다. 예컨대, 하나 이상의 부가적인 동작들은, 예시된 동작들 중 임의의 동작 이전에, 이후에, 동시에, 또는 그 중간에 수행될 수 있다. 부가적으로, 동작들은 다른 구현들에서 재배열되거나 재순서화될 수 있다. 소정의 환경들에서, 멀티태스킹 및 병렬 프로세싱이 유리할 수 있다. 또한, 위에서 설명된 구현에서의 다양한 시스템 컴포넌트들의 분리는 모든 구현들에서 그러한 분리를 요구하는 것으로서 이해되지는 않아야 하고, 그리고 설명된 프로그램 컴포넌트들 및 시스템들이 일반적으로, 단일 소프트웨어 제품으로 함께 통합되거나 다수의 소프트웨어 제품들로 패키징될 수 있다는 것이 이해되어야 한다. 부가적으로, 다른 구현들은 다음의 청구항들의 범위 내에 있다. 일부 경우들에서, 청구항들에서 열거된 액션들은, 상이한 순서로 수행될 수 있으며, 그럼에도 불구하고 원하는 결과들을 달성할 수 있다.

Claims (20)

  1. 시스템으로서,
    실행 가능 명령들을 저장하도록 구성되는 비-일시적인 메모리, 및
    상기 비-일시적인 메모리와 통신하는 하나 또는 그 초과의 하드웨어 프로세서들을 포함하고,
    상기 하나 또는 그 초과의 하드웨어 프로세서들은 상기 실행 가능 명령들에 의해,
    이미지에 액세스하고;
    제1 CNN(convolutional neural network) 및 상기 이미지에 적어도 부분적으로 기초하여 콘볼루셔널 특징 맵(convolutional feature map)을 생성하고;
    RPN(region proposal network)에 적어도 부분적으로 기초하여 적어도 하나의 RoI(region of interest)를 결정하고 ― 상기 RoI는 상기 이미지의 큐보이드 이미지 위치에서 큐보이드를 포함함 ―;
    풀링 층 및 상기 큐보이드 이미지 위치에 적어도 부분적으로 기초하여 상기 RoI에 대응하는 상기 콘볼루셔널 특징 맵의 서브맵을 결정하고;
    상기 RoI에 대응하는 상기 콘볼루셔널 특징 맵의 서브맵 및 적어도 하나의 회귀자 층에 적어도 부분적으로 기초하여 정제된 큐보이드 이미지 위치에서 정제된 RoI 및 상기 큐보이드의 표현을 결정하고;
    상기 정제된 큐보이드 이미지 위치에 적어도 부분적으로 기초하여 상기 정제된 RoI에 대응하는 상기 콘볼루셔널 특징 맵의 정제된 서브맵을 결정하고; 그리고
    상기 풀링 층, 상기 적어도 하나의 회귀자 층, 그리고 상기 정제된 RoI에 대응하는 상기 콘볼루셔널 특징 맵의 상기 정제된 서브맵에 적어도 부분적으로 기초하여 추가로 정제된 큐보이드 이미지 위치에서 추가로 정제된 RoI 및 상기 큐보이드의 추가로 정제된 표현을 결정하도록 프로그래밍되는,
    시스템.
  2. 삭제
  3. 제1 항에 있어서,
    상기 큐보이드 이미지 위치 또는 상기 정제된 큐보이드 이미지 위치는 2-차원(2D) 바운딩 박스로서 표현되는,
    시스템.
  4. 제1 항에 있어서,
    상기 적어도 하나의 회귀자 층은 완전 연결 층, 비-완전 연결 층, 또는 이들의 임의의 조합을 포함하는,
    시스템.
  5. 제1 항에 있어서,
    상기 RPN은 DNN(deep neural network)을 포함하는,
    시스템.
  6. 제1 항에 있어서,
    상기 큐보이드의 표현은 상기 큐보이드의 파라미터화된 표현을 포함하는,
    시스템.
  7. 제6 항에 있어서,
    상기 큐보이드의 파라미터화된 표현은 상기 이미지 내의 상기 큐보이드의 복수의 키포인트들의 위치들을 포함하는,
    시스템.
  8. 제7 항에 있어서,
    상기 파라미터화된 표현은 상기 이미지의 중심으로부터 상기 큐보이드의 복수의 키포인트들의 정규화된 오프셋들을 포함하는,
    시스템.
  9. 제6 항에 있어서,
    상기 큐보이드의 파라미터화된 표현은 소실점 파라미터화(vanishing point parameterization)를 포함하는,
    시스템.
  10. 제1 항에 있어서,
    상기 하나 또는 그 초과의 하드웨어 프로세서들은 추가로,
    상기 정제된 큐보이드 이미지 위치에서 정제된 RoI 및 상기 큐보이드의 표현에 기초하여 사용자와 상호작용하도록 프로그래밍되는,
    시스템.
  11. 제10 항에 있어서,
    상기 큐보이드는 고정 박스에 대응하고,
    상기 사용자와 상호작용하기 위해, 상기 하나 또는 그 초과의 하드웨어 프로세서들은 추가로,
    상기 큐보이드의 정제된 이미지 위치 및 상기 큐보이드의 표현에 기초하여 상기 고정 박스와 관련하여 캐릭터 애니메이션을 생성하도록 프로그래밍되는,
    시스템.
  12. 제10 항에 있어서,
    상기 큐보이드는 핸드-헬드 큐보이드에 대응하고,
    상기 시스템의 사용자와 상호작용하기 위해, 상기 하나 또는 그 초과의 하드웨어 프로세서들은 추가로,
    상기 큐보이드의 표현을 사용하여 상기 큐보이드의 포즈(pose)를 결정하고; 그리고
    상기 큐보이드의 포즈에 기초하여 상기 시스템의 사용자와 상호작용하도록 프로그래밍되는,
    시스템.
  13. 제10 항에 있어서,
    상기 큐보이드는 제2 CNN에 의해 인식 불가능한 희귀 객체에 대응하고,
    상기 시스템의 사용자와 상호작용하기 위해, 상기 하나 또는 그 초과의 하드웨어 프로세서들은 추가로,
    상기 제2 CNN에 의해 인식 불가능한 희귀 객체가 검출되었다는 통지를 상기 사용자에게 제공하도록 프로그래밍되는,
    시스템.
  14. 제1 항에 있어서,
    상기 큐보이드는 마커(marker)에 대응하고,
    상기 하나 또는 그 초과의 하드웨어 프로세서들은 추가로,
    상기 정제된 큐보이드 이미지 위치에서 정제된 RoI 및 상기 큐보이드의 표현에 기초하여 SLAM(simultaneous location and mapping)을 수행하도록 프로그래밍되는,
    시스템.
  15. 큐보이드 검출 및 키포인트 로컬화를 위한 방법으로서,
    하나 또는 그 초과의 하드웨어 프로세서들의 제어 하에서:
    이미지에 액세스하는 단계;
    제1 CNN(convolutional neural network) 및 상기 이미지에 적어도 부분적으로 기초하여 콘볼루셔널 특징 맵을 생성하는 단계;
    큐보이드 검출기의 RPN(region proposal network)에 적어도 부분적으로 기초하여 적어도 하나의 RoI(region of interest)를 결정하는 단계 ― 상기 RoI는 상기 이미지의 큐보이드 이미지 위치에서 큐보이드를 포함함 ―;
    상기 큐보이드 검출기의 풀링 층 및 상기 큐보이드 이미지 위치에 적어도 부분적으로 기초하여 상기 RoI에 대응하는 상기 콘볼루셔널 특징 맵의 서브맵을 결정하는 단계;
    상기 RoI에 대응하는 상기 콘볼루셔널 특징 맵의 서브맵 및 상기 큐보이드 검출기의 적어도 하나의 회귀자 층에 적어도 부분적으로 기초하여 정제된 큐보이드 이미지 위치에서 정제된 RoI 및 상기 큐보이드의 표현을 결정하는 단계;
    상기 정제된 큐보이드 이미지 위치에 적어도 부분적으로 기초하여, 상기 정제된 RoI에 대응하는 상기 콘볼루셔널 특징 맵의 정제된 서브맵을 결정하는 단계; 및
    상기 풀링 층, 상기 적어도 하나의 회귀자 층 그리고 상기 정제된 RoI에 대응하는 상기 콘볼루셔널 특징 맵의 상기 정제된 서브맵에 적어도 부분적으로 기초하여, 추가로 정제된 큐보이드 이미지 위치에서 추가로 정제된 RoI 및 상기 큐보이드의 추가로 정제된 표현을 결정하는 단계
    를 포함하는,
    큐보이드 검출 및 키포인트 로컬화를 위한 방법.
  16. 삭제
  17. 제15 항에 있어서,
    상기 큐보이드 이미지 위치 또는 상기 정제된 큐보이드 이미지 위치는 2-차원(2D) 바운딩 박스로서 표현되는,
    큐보이드 검출 및 키포인트 로컬화를 위한 방법.
  18. 제15 항에 있어서,
    상기 제1 CNN의 비-콘볼루셔널 층들은 정규화 층, 밝기 정규화 층, 배치(batch) 정규화 층, 정류된 선형 층, 업샘플링 층, 연접 층, 풀링 층, 소프트사인 층, 또는 이들의 임의의 조합을 포함하는,
    큐보이드 검출 및 키포인트 로컬화를 위한 방법.
  19. 제15 항에 있어서,
    상기 큐보이드의 표현은 상기 이미지 내의 상기 큐보이드의 복수의 키포인트들의 위치들을 포함하는, 상기 큐보이드의 파라미터화된 표현을 포함하는,
    큐보이드 검출 및 키포인트 로컬화를 위한 방법.
  20. 제15 항에 있어서,
    상기 적어도 하나의 회귀자 층은 완전 연결 층, 비-완전 연결 층, 또는 이들의 임의의 조합을 포함하는,
    큐보이드 검출 및 키포인트 로컬화를 위한 방법.
KR1020217018412A 2016-11-15 2017-11-14 큐보이드 검출을 위한 딥 러닝 시스템 KR102610030B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020237041389A KR20230170119A (ko) 2016-11-15 2017-11-14 큐보이드 검출을 위한 딥 러닝 시스템

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
US201662422547P 2016-11-15 2016-11-15
US62/422,547 2016-11-15
PCT/US2017/061618 WO2018093796A1 (en) 2016-11-15 2017-11-14 Deep learning system for cuboid detection
KR1020197015993A KR102267553B1 (ko) 2016-11-15 2017-11-14 큐보이드 검출을 위한 딥 러닝 시스템

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
KR1020197015993A Division KR102267553B1 (ko) 2016-11-15 2017-11-14 큐보이드 검출을 위한 딥 러닝 시스템

Related Child Applications (1)

Application Number Title Priority Date Filing Date
KR1020237041389A Division KR20230170119A (ko) 2016-11-15 2017-11-14 큐보이드 검출을 위한 딥 러닝 시스템

Publications (2)

Publication Number Publication Date
KR20210075225A KR20210075225A (ko) 2021-06-22
KR102610030B1 true KR102610030B1 (ko) 2023-12-04

Family

ID=62108632

Family Applications (3)

Application Number Title Priority Date Filing Date
KR1020217018412A KR102610030B1 (ko) 2016-11-15 2017-11-14 큐보이드 검출을 위한 딥 러닝 시스템
KR1020237041389A KR20230170119A (ko) 2016-11-15 2017-11-14 큐보이드 검출을 위한 딥 러닝 시스템
KR1020197015993A KR102267553B1 (ko) 2016-11-15 2017-11-14 큐보이드 검출을 위한 딥 러닝 시스템

Family Applications After (2)

Application Number Title Priority Date Filing Date
KR1020237041389A KR20230170119A (ko) 2016-11-15 2017-11-14 큐보이드 검출을 위한 딥 러닝 시스템
KR1020197015993A KR102267553B1 (ko) 2016-11-15 2017-11-14 큐보이드 검출을 위한 딥 러닝 시스템

Country Status (9)

Country Link
US (4) US10621747B2 (ko)
EP (1) EP3542250A4 (ko)
JP (3) JP6854344B2 (ko)
KR (3) KR102610030B1 (ko)
CN (2) CN110168477B (ko)
AU (2) AU2017361061B2 (ko)
CA (1) CA3043352A1 (ko)
IL (3) IL285121B2 (ko)
WO (1) WO2018093796A1 (ko)

Families Citing this family (142)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20200334831A1 (en) * 2016-01-28 2020-10-22 Pointgrab Ltd. Method and system for analyzing occupancy in a space
WO2018013200A1 (en) 2016-07-14 2018-01-18 Magic Leap, Inc. Deep neural network for iris identification
WO2018033137A1 (zh) * 2016-08-19 2018-02-22 北京市商汤科技开发有限公司 在视频图像中展示业务对象的方法、装置和电子设备
IL285121B2 (en) 2016-11-15 2023-04-01 Magic Leap Inc A deep learning system for discovering a cube
US10289925B2 (en) * 2016-11-29 2019-05-14 Sap Se Object classification in image data using machine learning models
KR102531542B1 (ko) 2016-12-05 2023-05-10 매직 립, 인코포레이티드 혼합 현실 환경의 가상 사용자 입력 콘트롤들
CN108229488B (zh) * 2016-12-27 2021-01-01 北京市商汤科技开发有限公司 用于检测物体关键点的方法、装置及电子设备
KR20210113443A (ko) 2017-03-17 2021-09-15 매직 립, 인코포레이티드 룸 레이아웃 추정 방법들 및 기술들
US10943176B2 (en) 2017-03-22 2021-03-09 Ebay Inc. Visual aspect localization presentation
US10048753B1 (en) * 2017-04-20 2018-08-14 Robert C. Brooks Perspective or gaze based visual identification and location system
CA3063105A1 (en) 2017-05-23 2018-11-29 Walmart Apollo, Llc Automated inspection system
US10679428B1 (en) * 2017-05-26 2020-06-09 Snap Inc. Neural network-based image stream modification
CN110914790A (zh) 2017-07-26 2020-03-24 奇跃公司 采用用户界面设备的表示来训练神经网络
CN110019896B (zh) * 2017-07-28 2021-08-13 杭州海康威视数字技术股份有限公司 一种图像检索方法、装置及电子设备
CN108022238B (zh) * 2017-08-09 2020-07-03 深圳科亚医疗科技有限公司 对3d图像中对象进行检测的方法、计算机存储介质和系统
JP6998968B2 (ja) * 2017-09-05 2022-01-18 パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカ ディープニューラルネットワークの実行方法、実行装置、学習方法、学習装置及びプログラム
EP3683764A4 (en) * 2017-09-12 2020-11-18 Panasonic Intellectual Property Management Co., Ltd. IMAGE GENERATION DEVICE AND METHOD
IL272289B (en) 2017-09-20 2022-08-01 Magic Leap Inc A personal neural network for eye tracking
US10438371B2 (en) * 2017-09-22 2019-10-08 Zoox, Inc. Three-dimensional bounding box from two-dimensional image and point cloud data
US10402724B2 (en) * 2017-10-03 2019-09-03 StradVision, Inc. Method for acquiring a pseudo-3D box from a 2D bounding box by regression analysis and learning device and testing device using the same
US10635813B2 (en) 2017-10-06 2020-04-28 Sophos Limited Methods and apparatus for using machine learning on multiple file fragments to identify malware
US10169679B1 (en) * 2017-10-13 2019-01-01 StradVision, Inc. Learning method and learning device for adjusting parameters of CNN by using loss augmentation and testing method and testing device using the same
AU2018354257A1 (en) 2017-10-26 2020-05-14 Magic Leap, Inc. Gradient normalization systems and methods for adaptive loss balancing in deep multitask networks
US10565729B2 (en) * 2017-12-03 2020-02-18 Facebook, Inc. Optimizations for dynamic object instance detection, segmentation, and structure mapping
WO2019145912A1 (en) 2018-01-26 2019-08-01 Sophos Limited Methods and apparatus for detection of malicious documents using machine learning
US11941491B2 (en) 2018-01-31 2024-03-26 Sophos Limited Methods and apparatus for identifying an impact of a portion of a file on machine learning classification of malicious content
US10685239B2 (en) * 2018-03-18 2020-06-16 Tusimple, Inc. System and method for lateral vehicle detection
US11448632B2 (en) 2018-03-19 2022-09-20 Walmart Apollo, Llc System and method for the determination of produce shelf life
US11669746B2 (en) 2018-04-11 2023-06-06 Samsung Electronics Co., Ltd. System and method for active machine learning
US10690457B2 (en) * 2018-04-26 2020-06-23 AI Incorporated Method and apparatus for overexposing images captured by drones
WO2019231254A1 (en) 2018-05-30 2019-12-05 Samsung Electronics Co., Ltd. Processor, electronics apparatus and control method thereof
CN108830199B (zh) * 2018-05-31 2021-04-16 京东方科技集团股份有限公司 识别交通灯信号的方法、装置、可读介质及电子设备
US11373411B1 (en) 2018-06-13 2022-06-28 Apple Inc. Three-dimensional object estimation using two-dimensional annotations
US11080562B1 (en) 2018-06-15 2021-08-03 Apple Inc. Key point recognition with uncertainty measurement
US10725629B2 (en) * 2018-06-25 2020-07-28 Google Llc Identifying and controlling smart devices
JP2021530790A (ja) 2018-07-23 2021-11-11 マジック リープ, インコーポレイテッドMagic Leap, Inc. 頭部姿勢予測のための深層予測器再帰ニューラルネットワーク
CN109190467A (zh) * 2018-07-26 2019-01-11 北京纵目安驰智能科技有限公司 一种基于关键点回归的多物体检测方法、系统、终端和存储介质
US11393082B2 (en) 2018-07-26 2022-07-19 Walmart Apollo, Llc System and method for produce detection and classification
CN109271842A (zh) * 2018-07-26 2019-01-25 北京纵目安驰智能科技有限公司 一种基于关键点回归的通用物体检测方法、系统、终端和存储介质
US10769543B2 (en) 2018-08-01 2020-09-08 Forcepoint Llc Double-layered image classification endpoint solution
CN110569696A (zh) * 2018-08-31 2019-12-13 阿里巴巴集团控股有限公司 用于车辆部件识别的神经网络系统、方法和装置
US10832437B2 (en) * 2018-09-05 2020-11-10 Rakuten, Inc. Method and apparatus for assigning image location and direction to a floorplan diagram based on artificial intelligence
US10839234B2 (en) 2018-09-12 2020-11-17 Tusimple, Inc. System and method for three-dimensional (3D) object detection
US10733800B2 (en) * 2018-09-17 2020-08-04 Facebook Technologies, Llc Reconstruction of essential visual cues in mixed reality applications
US11120592B2 (en) 2018-09-26 2021-09-14 Element Ai Inc. System and method for oriented bounding box tool defining an orientation of a tilted or rotated object
WO2020061702A1 (en) * 2018-09-26 2020-04-02 Element Ai Inc. System and method for bounding box tool
US11315278B1 (en) 2018-09-27 2022-04-26 Apple Inc. Object detection and orientation estimation
US10304009B1 (en) * 2018-10-08 2019-05-28 StradVision, Inc. Learning method and testing method for object detector based on R-CNN, and learning device and testing device using the same
US10528867B1 (en) * 2018-10-08 2020-01-07 StradVision, Inc. Learning method and learning device for neural network at adaptive learning rate, and testing method and testing device using the same
CN109472205B (zh) * 2018-10-09 2021-07-30 深兰科技(上海)有限公司 商品识别方法、商品识别装置及存储介质
US11947668B2 (en) 2018-10-12 2024-04-02 Sophos Limited Methods and apparatus for preserving information between layers within a neural network
US11715059B2 (en) 2018-10-12 2023-08-01 Walmart Apollo, Llc Systems and methods for condition compliance
US10438082B1 (en) * 2018-10-26 2019-10-08 StradVision, Inc. Learning method, learning device for detecting ROI on the basis of bottom lines of obstacles and testing method, testing device using the same
CN109685762A (zh) * 2018-11-09 2019-04-26 五邑大学 一种基于多尺度深度语义分割网络的天线下倾角测量方法
EP3881232A4 (en) 2018-11-15 2022-08-10 Magic Leap, Inc. DEEP NEURON NETWORK POSE ESTIMATION SYSTEM
US11010592B2 (en) * 2018-11-15 2021-05-18 Toyota Research Institute, Inc. System and method for lifting 3D representations from monocular images
WO2020106332A1 (en) 2018-11-20 2020-05-28 Walmart Apollo, Llc Systems and methods for assessing products
CN109527733A (zh) * 2018-11-22 2019-03-29 广东工业大学 一种智能拐杖
US11164326B2 (en) 2018-12-18 2021-11-02 Samsung Electronics Co., Ltd. Method and apparatus for calculating depth map
US11481885B2 (en) 2018-12-20 2022-10-25 Packsize Llc Systems and methods for object dimensioning based on partial visual information
US10839606B2 (en) * 2018-12-28 2020-11-17 National Tsing Hua University Indoor scene structural estimation system and estimation method thereof based on deep learning network
US10509987B1 (en) 2019-01-22 2019-12-17 StradVision, Inc. Learning method and learning device for object detector based on reconfigurable network for optimizing customers' requirements such as key performance index using target object estimating network and target object merging network, and testing method and testing device using the same
US10346693B1 (en) * 2019-01-22 2019-07-09 StradVision, Inc. Method and device for attention-based lane detection without post-processing by using lane mask and testing method and testing device using the same
US10402692B1 (en) * 2019-01-22 2019-09-03 StradVision, Inc. Learning method and learning device for fluctuation-robust object detector based on CNN using target object estimating network adaptable to customers' requirements such as key performance index, and testing device using the same
US10395140B1 (en) * 2019-01-23 2019-08-27 StradVision, Inc. Learning method and learning device for object detector based on CNN using 1×1 convolution to be used for hardware optimization, and testing method and testing device using the same
CN109886121B (zh) * 2019-01-23 2021-04-06 浙江大学 一种遮挡鲁棒的人脸关键点定位方法
US10387753B1 (en) * 2019-01-23 2019-08-20 StradVision, Inc. Learning method and learning device for convolutional neural network using 1×1 convolution for image recognition to be used for hardware optimization, and testing method and testing device using the same
US10496899B1 (en) * 2019-01-25 2019-12-03 StradVision, Inc. Learning method and learning device for adjusting parameters of CNN in which residual networks are provided for meta learning, and testing method and testing device using the same
US10402978B1 (en) * 2019-01-25 2019-09-03 StradVision, Inc. Method for detecting pseudo-3D bounding box based on CNN capable of converting modes according to poses of objects using instance segmentation and device using the same
US10410120B1 (en) * 2019-01-25 2019-09-10 StradVision, Inc. Learning method and testing method of object detector to be used for surveillance based on R-CNN capable of converting modes according to aspect ratios or scales of objects, and learning device and testing device using the same
US10551845B1 (en) * 2019-01-25 2020-02-04 StradVision, Inc. Method and computing device for generating image data set to be used for hazard detection and learning method and learning device using the same
US10445611B1 (en) * 2019-01-25 2019-10-15 StradVision, Inc. Method for detecting pseudo-3D bounding box to be used for military purpose, smart phone or virtual driving based-on CNN capable of converting modes according to conditions of objects and device using the same
US10373323B1 (en) * 2019-01-29 2019-08-06 StradVision, Inc. Method and device for merging object detection information detected by each of object detectors corresponding to each camera nearby for the purpose of collaborative driving by using V2X-enabled applications, sensor fusion via multiple vehicles
US10726303B1 (en) * 2019-01-30 2020-07-28 StradVision, Inc. Learning method and learning device for switching modes of autonomous vehicle based on on-device standalone prediction to thereby achieve safety of autonomous driving, and testing method and testing device using the same
US10373027B1 (en) * 2019-01-30 2019-08-06 StradVision, Inc. Method for acquiring sample images for inspecting label among auto-labeled images to be used for learning of neural network and sample image acquiring device using the same
US11574052B2 (en) * 2019-01-31 2023-02-07 Sophos Limited Methods and apparatus for using machine learning to detect potentially malicious obfuscated scripts
US10713815B1 (en) * 2019-01-31 2020-07-14 StradVision, Inc. Method and device for supporting administrators to processes of object detectors to provide logical driving
CN109948446B (zh) * 2019-02-20 2021-07-16 北京奇艺世纪科技有限公司 一种视频片段处理方法、装置及计算机可读存储介质
US11126835B2 (en) 2019-02-21 2021-09-21 Tata Consultancy Services Limited Hand detection in first person view
CN110070519B (zh) * 2019-03-13 2023-07-14 西安电子科技大学 基于相位一致性的拼接图像质量测定方法、图像拼接系统
US11023763B2 (en) 2019-03-19 2021-06-01 Boston Dynamics, Inc. Detecting boxes
US10984560B1 (en) * 2019-03-29 2021-04-20 Amazon Technologies, Inc. Computer vision using learnt lossy image compression representations
US11222069B2 (en) * 2019-03-31 2022-01-11 Cortica Ltd. Low-power calculation of a signature of a media unit
US11205112B2 (en) * 2019-04-01 2021-12-21 Honeywell International Inc. Deep neural network-based inertial measurement unit (IMU) sensor compensation method
CN110163081A (zh) * 2019-04-02 2019-08-23 宜通世纪物联网研究院(广州)有限公司 基于ssd的实时区域入侵检测方法、系统及存储介质
CN114041149A (zh) 2019-04-11 2022-02-11 安捷伦科技有限公司 配置为便于生物样本内的实例分割的用户注释的用户界面
EP3942462B1 (en) * 2019-04-23 2024-03-13 L'oreal Convolution neural network based landmark tracker
US11282180B1 (en) 2019-04-24 2022-03-22 Apple Inc. Object detection with position, pose, and shape estimation
WO2020236624A1 (en) 2019-05-17 2020-11-26 Magic Leap, Inc. Methods and apparatuses for corner detection using neural network and corner detector
US11335021B1 (en) 2019-06-11 2022-05-17 Cognex Corporation System and method for refining dimensions of a generally cuboidal 3D object imaged by 3D vision system and controls for the same
US11605177B2 (en) 2019-06-11 2023-03-14 Cognex Corporation System and method for refining dimensions of a generally cuboidal 3D object imaged by 3D vision system and controls for the same
US20200394458A1 (en) * 2019-06-17 2020-12-17 Nvidia Corporation Weakly-supervised object detection using one or more neural networks
CN110288033B (zh) * 2019-06-28 2023-04-07 广西民族大学 一种基于卷积神经网络的甘蔗蔗节特征识别与定位方法
CN110503088A (zh) * 2019-07-03 2019-11-26 平安科技(深圳)有限公司 基于深度学习的目标检测方法及电子装置
EP3772042A3 (en) 2019-08-02 2021-04-07 Samsung Electronics Co., Ltd. Electronic apparatus for augmented reality and control method thereof
US11915192B2 (en) 2019-08-12 2024-02-27 Walmart Apollo, Llc Systems, devices, and methods for scanning a shopping space
CN110503643B (zh) * 2019-08-23 2021-10-01 闽江学院 一种基于多尺度快速场景检索的目标检测方法和装置
KR20210029586A (ko) * 2019-09-06 2021-03-16 엘지전자 주식회사 이미지 내의 특징적 객체에 기반하여 슬램을 수행하는 방법 및 이를 구현하는 로봇과 클라우드 서버
KR20210030147A (ko) * 2019-09-09 2021-03-17 삼성전자주식회사 3d 렌더링 방법 및 장치
US11532093B2 (en) 2019-10-10 2022-12-20 Intermap Technologies, Inc. First floor height estimation from optical images
CN110738673A (zh) * 2019-10-21 2020-01-31 哈尔滨理工大学 基于实例分割的视觉slam方法
CN114586072A (zh) * 2019-10-23 2022-06-03 华为技术有限公司 特征检测器和描述符
US11580333B2 (en) * 2019-11-12 2023-02-14 Objectvideo Labs, Llc Training image classifiers
CN110929774B (zh) * 2019-11-18 2023-11-14 腾讯科技(深圳)有限公司 图像中目标物的分类方法、模型训练方法和装置
CN111160111B (zh) * 2019-12-09 2021-04-30 电子科技大学 一种基于深度学习的人体关键点检测方法
CN111126385A (zh) * 2019-12-13 2020-05-08 哈尔滨工程大学 一种可变形活体小目标的深度学习智能识别方法
US11776215B1 (en) * 2019-12-16 2023-10-03 Scale AI, Inc. Pre-labeling data with cuboid annotations
US20230031931A1 (en) * 2019-12-26 2023-02-02 Nec Corporation Object tracking apparatus, object tracking method and recording medium
CN111369617B (zh) * 2019-12-31 2022-06-21 浙江大学 一种基于卷积神经网络的单目视图的3d目标检测方法
US11200671B2 (en) * 2019-12-31 2021-12-14 International Business Machines Corporation Reference image guided object detection in medical image processing
CN111191621A (zh) * 2020-01-03 2020-05-22 北京同方软件有限公司 一种大焦距监控场景下多尺度目标的快速精准识别方法
US11574494B2 (en) 2020-01-27 2023-02-07 Ford Global Technologies, Llc Training a neural network to determine pedestrians
US20210229292A1 (en) * 2020-01-28 2021-07-29 Embodied Intelligence Inc. Confidence-Based Bounding Boxes For Three Dimensional Objects
EP3866113A1 (en) 2020-02-17 2021-08-18 Agile Robots AG Image segmentation methods and apparatus
CN111325766B (zh) * 2020-02-20 2023-08-25 腾讯科技(深圳)有限公司 三维边缘检测方法、装置、存储介质和计算机设备
US11481862B2 (en) * 2020-02-26 2022-10-25 Beijing Jingdong Shangke Information Technology Co., Ltd. System and method for real-time, simultaneous object detection and semantic segmentation
KR20220166355A (ko) * 2020-04-21 2022-12-16 구글 엘엘씨 다수의 포지티브 예를 사용한 지도 대조 학습
US11270459B2 (en) * 2020-04-22 2022-03-08 Dell Products L.P. Enterprise system augmented reality detection
US11604946B2 (en) * 2020-05-06 2023-03-14 Ford Global Technologies, Llc Visual behavior guided object detection
KR102270198B1 (ko) * 2020-06-08 2021-06-28 주식회사 에스아이에이 앵커-프리 rpn 기반의 물체 검출 방법
KR102429272B1 (ko) * 2020-06-15 2022-08-04 주식회사 베이리스 딥러닝에 기반한 객체 검출 장치 및 그 방법
US11915419B1 (en) 2020-06-25 2024-02-27 Verily Life Sciences Llc Auto-normalization for machine learning
US10902290B1 (en) * 2020-08-04 2021-01-26 Superb Ai Co., Ltd. Methods for training auto labeling device and performing auto labeling related to object detection while performing automatic verification by using uncertainty scores and devices using the same
US11699001B2 (en) * 2020-10-13 2023-07-11 Flyreel, Inc. Generating measurements of physical structures and environments through automated analysis of sensor data
KR20220052620A (ko) 2020-10-21 2022-04-28 삼성전자주식회사 객체 추적 방법 및 이를 수행하는 장치
CN112464769A (zh) * 2020-11-18 2021-03-09 西北工业大学 一种基于一致多阶段检测的高分遥感图像目标检测方法
CN112529005B (zh) * 2020-12-11 2022-12-06 西安电子科技大学 基于语义特征一致性监督金字塔网络的目标检测方法
CN112766185B (zh) * 2021-01-22 2022-06-14 燕山大学 基于深度学习的头部姿态监控方法、装置及系统
US11551366B2 (en) * 2021-03-05 2023-01-10 Intermap Technologies, Inc. System and methods for correcting terrain elevations under forest canopy
CN113065402B (zh) * 2021-03-05 2022-12-09 四川翼飞视科技有限公司 一种基于变形注意力机制的人脸检测方法
US11922640B2 (en) 2021-03-08 2024-03-05 Toyota Research Institute, Inc. Semi-supervised 3D object tracking in videos via 2D semantic keypoints
US11710254B2 (en) * 2021-04-07 2023-07-25 Ford Global Technologies, Llc Neural network object detection
US11854280B2 (en) 2021-04-27 2023-12-26 Toyota Research Institute, Inc. Learning monocular 3D object detection from 2D semantic keypoint detection
US11557129B2 (en) 2021-04-27 2023-01-17 Argo AI, LLC Systems and methods for producing amodal cuboids
CN113379794B (zh) * 2021-05-19 2023-07-25 重庆邮电大学 基于注意力-关键点预测模型的单目标跟踪系统及方法
WO2022261772A1 (en) * 2021-06-16 2022-12-22 3Rdi Laboratory Incorporated Deep-learning method for automated content creation in augmented and virtual reality
CN113343991B (zh) * 2021-08-02 2023-06-09 四川新网银行股份有限公司 一种特征内增强的弱监督学习方法
US11417069B1 (en) * 2021-10-05 2022-08-16 Awe Company Limited Object and camera localization system and localization method for mapping of the real world
CN113723377B (zh) * 2021-11-02 2022-01-11 南京信息工程大学 一种基于ld-ssd网络的交通标志检测方法
KR102599192B1 (ko) * 2022-04-19 2023-11-09 주식회사 인피닉 객체 검출 방법 및 이를 실행하기 위하여 기록매체에 기록된 컴퓨터 프로그램
CN114639102B (zh) * 2022-05-11 2022-07-22 珠海横琴圣澳云智科技有限公司 基于关键点与尺寸回归的细胞分割方法和装置
US11776206B1 (en) 2022-12-23 2023-10-03 Awe Company Limited Extended reality system and extended reality method with two-way digital interactive digital twins

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20140321702A1 (en) * 2013-04-30 2014-10-30 Qualcomm Incorporated Diminished and mediated reality effects from reconstruction

Family Cites Families (126)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5291560A (en) 1991-07-15 1994-03-01 Iri Scan Incorporated Biometric personal identification system based on iris analysis
US6222525B1 (en) 1992-03-05 2001-04-24 Brad A. Armstrong Image controllers with sheet connected sensors
US5583795A (en) 1995-03-17 1996-12-10 The United States Of America As Represented By The Secretary Of The Army Apparatus for measuring eye gaze and fixation duration, and method therefor
US5670988A (en) 1995-09-05 1997-09-23 Interlink Electronics, Inc. Trigger operated electronic device
CN1650622B (zh) 2002-03-13 2012-09-05 图象公司 用于数字重新灌录或修改电影或其他图像序列数据的系统和方法
US8098901B2 (en) 2005-01-26 2012-01-17 Honeywell International Inc. Standoff iris recognition system
KR20050025927A (ko) 2003-09-08 2005-03-14 유웅덕 홍채인식을 위한 동공 검출 방법 및 형상기술자 추출방법과 그를 이용한 홍채 특징 추출 장치 및 그 방법과홍채인식 시스템 및 그 방법
USD514570S1 (en) 2004-06-24 2006-02-07 Microsoft Corporation Region of a fingerprint scanning device with an illuminated ring
US7248720B2 (en) 2004-10-21 2007-07-24 Retica Systems, Inc. Method and system for generating a combined retina/iris pattern biometric
US20070052672A1 (en) 2005-09-08 2007-03-08 Swisscom Mobile Ag Communication device, system and method
US11428937B2 (en) 2005-10-07 2022-08-30 Percept Technologies Enhanced optical and perceptual digital eyewear
US8696113B2 (en) 2005-10-07 2014-04-15 Percept Technologies Inc. Enhanced optical and perceptual digital eyewear
US20070081123A1 (en) 2005-10-07 2007-04-12 Lewis Scott W Digital eyewear
JP4824420B2 (ja) 2006-02-07 2011-11-30 アイテック株式会社 視線ベクトル検出方法及び同装置
JP4894369B2 (ja) * 2006-06-19 2012-03-14 富士通株式会社 3次元モデルの画像処理装置
US7970179B2 (en) 2006-09-25 2011-06-28 Identix Incorporated Iris data extraction
US8363783B2 (en) 2007-06-04 2013-01-29 Oraya Therapeutics, Inc. Method and device for ocular alignment and coupling of ocular structures
JP5088024B2 (ja) 2007-07-11 2012-12-05 沖電気工業株式会社 試供品配布システム、試供品配布情報サーバ、試供品配布方法及び試供品配布情報処理プログラム
US20090129591A1 (en) 2007-11-21 2009-05-21 Hayes Gregory A Techniques for Securing Document Content in Print and Electronic Form
US8064653B2 (en) 2007-11-29 2011-11-22 Viewdle, Inc. Method and system of person identification by facial image
US8098891B2 (en) 2007-11-29 2012-01-17 Nec Laboratories America, Inc. Efficient multi-hypothesis multi-human 3D tracking in crowded scenes
US8411910B2 (en) 2008-04-17 2013-04-02 Biometricore, Inc. Computationally efficient feature extraction and matching iris recognition
WO2010003044A2 (en) 2008-07-03 2010-01-07 Nec Laboratories America, Inc. Epithelial layer detector and related methods
US8768014B2 (en) 2009-01-14 2014-07-01 Indiana University Research And Technology Corp. System and method for identifying a person with reference to a sclera image
US8374404B2 (en) 2009-02-13 2013-02-12 Raytheon Company Iris recognition using hyper-spectral signatures
US20100232654A1 (en) 2009-03-11 2010-09-16 Harris Corporation Method for reconstructing iris scans through novel inpainting techniques and mosaicing of partial collections
EP3138475B1 (en) 2010-01-22 2023-10-25 AMO Development, LLC Apparatus for automated placement of scanned laser capsulorhexis incisions
US8345984B2 (en) * 2010-01-28 2013-01-01 Nec Laboratories America, Inc. 3D convolutional neural networks for automatic human action recognition
US20150309316A1 (en) 2011-04-06 2015-10-29 Microsoft Technology Licensing, Llc Ar glasses with predictive control of external device based on event input
US8553989B1 (en) * 2010-04-27 2013-10-08 Hrl Laboratories, Llc Three-dimensional (3D) object recognition system using region of interest geometric features
US20120092329A1 (en) * 2010-10-13 2012-04-19 Qualcomm Incorporated Text-based 3d augmented reality
US9304319B2 (en) 2010-11-18 2016-04-05 Microsoft Technology Licensing, Llc Automatic focus improvement for augmented reality displays
US9691289B2 (en) 2010-12-22 2017-06-27 Brightstar Learning Monotonous game-like task to promote effortless automatic recognition of sight words
KR101997852B1 (ko) 2010-12-24 2019-10-01 매직 립, 인코포레이티드 인체공학적 머리 장착식 디스플레이 장치 및 광학 시스템
US10156722B2 (en) 2010-12-24 2018-12-18 Magic Leap, Inc. Methods and systems for displaying stereoscopy with a freeform optical system with addressable focus for virtual and augmented reality
CN107656615B (zh) 2011-05-06 2021-09-14 奇跃公司 大量同时远程数字呈现世界
WO2013049861A1 (en) 2011-09-29 2013-04-04 Magic Leap, Inc. Tactile glove for human-computer interaction
US20130159939A1 (en) 2011-10-12 2013-06-20 Qualcomm Incorporated Authenticated gesture recognition
EP3404894B1 (en) 2011-10-28 2020-02-12 Magic Leap, Inc. System and method for augmented and virtual reality
KR102116697B1 (ko) 2011-11-23 2020-05-29 매직 립, 인코포레이티드 3차원 가상 및 증강 현실 디스플레이 시스템
BR112014024941A2 (pt) 2012-04-05 2017-09-19 Magic Leap Inc dispositivo de imagem de campo de visão amplo com capacidade de focalização ativa
EP2859403B1 (en) 2012-06-11 2022-10-19 Magic Leap, Inc. Multiple depth plane three-dimensional display using a wave guide reflector array projector
US10629003B2 (en) 2013-03-11 2020-04-21 Magic Leap, Inc. System and method for augmented and virtual reality
US9671566B2 (en) 2012-06-11 2017-06-06 Magic Leap, Inc. Planar waveguide apparatus with diffraction element(s) and system employing same
US9141916B1 (en) 2012-06-29 2015-09-22 Google Inc. Using embedding functions with a deep network
US9262680B2 (en) 2012-07-31 2016-02-16 Japan Science And Technology Agency Point-of-gaze detection device, point-of-gaze detecting method, personal parameter calculating device, personal parameter calculating method, program, and computer-readable storage medium
US8369595B1 (en) 2012-08-10 2013-02-05 EyeVerify LLC Texture features for biometric authentication
EP2895910A4 (en) 2012-09-11 2016-04-20 Magic Leap Inc ERGONOMIC HEAD-MOUNTED DISPLAY DEVICE AND OPTICAL SYSTEM
JP2014092940A (ja) 2012-11-02 2014-05-19 Sony Corp 画像表示装置及び画像表示方法、並びにコンピューター・プログラム
WO2014093227A1 (en) 2012-12-10 2014-06-19 Sri International Iris biometric matching system
AU2014207545B2 (en) 2013-01-15 2018-03-15 Magic Leap, Inc. Ultra-high resolution scanning fiber display
US9147154B2 (en) 2013-03-13 2015-09-29 Google Inc. Classifying resources using a deep network
CN103218825B (zh) * 2013-03-15 2015-07-08 华中科技大学 一种尺度不变的时空兴趣点快速检测方法
US9417452B2 (en) 2013-03-15 2016-08-16 Magic Leap, Inc. Display system and method
WO2014182769A1 (en) 2013-05-07 2014-11-13 The Johns Hopkins University Automated and non-mydriatic fundus-perimetry camera for irreversible eye diseases
US9275308B2 (en) 2013-05-31 2016-03-01 Google Inc. Object detection using deep neural networks
US9874749B2 (en) 2013-11-27 2018-01-23 Magic Leap, Inc. Virtual and augmented reality systems and methods
US10262462B2 (en) 2014-04-18 2019-04-16 Magic Leap, Inc. Systems and methods for augmented and virtual reality
US20140380249A1 (en) 2013-06-25 2014-12-25 Apple Inc. Visual recognition of gestures
CN103431840B (zh) 2013-07-31 2016-01-20 北京智谷睿拓技术服务有限公司 眼睛光学参数检测系统及方法
US9934611B2 (en) 2013-09-11 2018-04-03 Qualcomm Incorporated Structural modeling using depth sensors
US10025982B2 (en) 2013-10-08 2018-07-17 Princeton Identity, Inc. Collecting and targeting marketing data and information based upon iris identification
KR20150041453A (ko) 2013-10-08 2015-04-16 엘지전자 주식회사 안경형 영상표시장치 및 그것의 제어방법
CN105829953B (zh) 2013-10-16 2019-05-28 奇跃公司 具有可调节的瞳距的虚拟或增强现实头戴设备
US9202144B2 (en) 2013-10-30 2015-12-01 Nec Laboratories America, Inc. Regionlets with shift invariant neural patterns for object detection
US10095917B2 (en) 2013-11-04 2018-10-09 Facebook, Inc. Systems and methods for facial representation
JP6236296B2 (ja) * 2013-11-14 2017-11-22 株式会社デンソーアイティーラボラトリ 学習装置、学習プログラム、及び学習方法
CN109445095B (zh) 2013-11-27 2021-11-23 奇跃公司 虚拟和增强现实系统与方法
US9857591B2 (en) 2014-05-30 2018-01-02 Magic Leap, Inc. Methods and system for creating focal planes in virtual and augmented reality
US9430829B2 (en) 2014-01-30 2016-08-30 Case Western Reserve University Automatic detection of mitosis using handcrafted and convolutional neural network features
AU2015210708B2 (en) 2014-01-31 2020-01-02 Magic Leap, Inc. Multi-focal display system and method
EP4099274B1 (en) 2014-01-31 2024-03-06 Magic Leap, Inc. Multi-focal display system and method
KR20150098119A (ko) * 2014-02-19 2015-08-27 삼성전자주식회사 의료 영상 내 거짓양성 병변후보 제거 시스템 및 방법
US10203762B2 (en) 2014-03-11 2019-02-12 Magic Leap, Inc. Methods and systems for creating virtual and augmented reality
IL231862A (en) 2014-04-01 2015-04-30 Superfish Ltd Image representation using a neural network
US20170032285A1 (en) 2014-04-09 2017-02-02 Entrupy Inc. Authenticating physical objects using machine learning from microscopic variations
WO2015161307A1 (en) 2014-04-18 2015-10-22 Magic Leap, Inc. Systems and methods for augmented and virtual reality
WO2015164807A1 (en) 2014-04-25 2015-10-29 Texas State University Detection of brain injury and subject state with eye movement biometrics
CN107087431B (zh) 2014-05-09 2021-02-05 谷歌有限责任公司 用于辨别眼睛信号和连续生物识别的系统和方法
US9865045B2 (en) * 2014-05-18 2018-01-09 Edge 3 Technologies, Inc. Orthogonal and collaborative disparity decomposition
USD759657S1 (en) 2014-05-19 2016-06-21 Microsoft Corporation Connector with illumination region
CN106662754B (zh) 2014-05-30 2021-05-25 奇跃公司 用于采用虚拟或增强现实装置生成虚拟内容显示的方法和系统
USD752529S1 (en) 2014-06-09 2016-03-29 Comcast Cable Communications, Llc Electronic housing with illuminated region
US9330329B2 (en) 2014-07-09 2016-05-03 Ditto Labs, Inc. Systems, methods, and devices for image matching and object recognition in images using minimal feature points
WO2016013269A1 (ja) 2014-07-22 2016-01-28 ソニー株式会社 画像表示装置及び画像表示方法、並びにコンピューター・プログラム
US9536293B2 (en) 2014-07-30 2017-01-03 Adobe Systems Incorporated Image assessment using deep convolutional neural networks
US20160034811A1 (en) 2014-07-31 2016-02-04 Apple Inc. Efficient generation of complementary acoustic models for performing automatic speech recognition system combination
KR102216126B1 (ko) 2014-07-31 2021-02-16 삼성전자주식회사 정맥 인증을 이용하여 동작하는 웨어러블 디바이스 및 웨어러블 디바이스의 동작 방법
US9740963B2 (en) * 2014-08-05 2017-08-22 Sri International Multi-dimensional realization of visual content of an image collection
KR20160020918A (ko) 2014-08-14 2016-02-24 삼성전자주식회사 적응형 컴퓨터 보조 진단 장치 및 방법
US9659384B2 (en) 2014-10-03 2017-05-23 EyeEm Mobile GmbH. Systems, methods, and computer program products for searching and sorting images by aesthetic quality
WO2016054779A1 (en) * 2014-10-09 2016-04-14 Microsoft Technology Licensing, Llc Spatial pyramid pooling networks for image processing
WO2016054802A1 (en) 2014-10-10 2016-04-14 Beijing Kuangshi Technology Co., Ltd. Hierarchical interlinked multi-scale convolutional network for image parsing
KR102276339B1 (ko) 2014-12-09 2021-07-12 삼성전자주식회사 Cnn의 근사화를 위한 학습 장치 및 방법
US10691997B2 (en) 2014-12-24 2020-06-23 Deepmind Technologies Limited Augmenting neural networks to generate additional outputs
KR20160096460A (ko) * 2015-02-05 2016-08-16 삼성전자주식회사 복수의 분류기를 포함하는 딥 러닝 기반 인식 시스템 및 그 제어 방법
US9524450B2 (en) 2015-03-04 2016-12-20 Accenture Global Services Limited Digital image processing using convolutional neural networks
US10846589B2 (en) 2015-03-12 2020-11-24 William Marsh Rice University Automated compilation of probabilistic task description into executable neural network specification
US9678664B2 (en) 2015-04-10 2017-06-13 Google Inc. Neural network for keyboard input decoding
CN104778464B (zh) * 2015-05-04 2018-06-05 中国科学院重庆绿色智能技术研究院 一种基于深度卷积神经网络的服装定位检测方法
JP6663926B2 (ja) 2015-05-13 2020-03-13 グーグル エルエルシー DeepStereo:実世界の画像から新たなビューを予測するための学習
USD758367S1 (en) 2015-05-14 2016-06-07 Magic Leap, Inc. Virtual reality headset
CN105139454B (zh) * 2015-08-06 2018-01-19 北京工业大学 一种三维ct图像中肝脏三维感兴趣区域的自动提取方法
KR102591552B1 (ko) 2015-08-21 2023-10-18 매직 립, 인코포레이티드 눈 포즈 측정을 사용한 눈꺼풀 형상 추정
US9767565B2 (en) 2015-08-26 2017-09-19 Digitalglobe, Inc. Synthesizing training data for broad area geospatial object detection
JP6678930B2 (ja) 2015-08-31 2020-04-15 インターナショナル・ビジネス・マシーンズ・コーポレーションInternational Business Machines Corporation 分類モデルを学習する方法、コンピュータ・システムおよびコンピュータ・プログラム
CN105160678A (zh) * 2015-09-02 2015-12-16 山东大学 基于卷积神经网络的无参考立体图像质量评估方法
US20170124409A1 (en) * 2015-11-04 2017-05-04 Nec Laboratories America, Inc. Cascaded neural network with scale dependent pooling for object detection
US20170161506A1 (en) 2015-12-07 2017-06-08 Dell Products L.P. Information Handling System Encrypted Image Display Through Secondary Device
US9665799B1 (en) * 2016-01-29 2017-05-30 Fotonation Limited Convolutional neural network
US10497089B2 (en) * 2016-01-29 2019-12-03 Fotonation Limited Convolutional neural network
USD805734S1 (en) 2016-03-04 2017-12-26 Nike, Inc. Shirt
KR20200035499A (ko) 2016-03-11 2020-04-03 매직 립, 인코포레이티드 콘볼루셔널 신경 네트워크들에서의 구조 학습
USD794288S1 (en) 2016-03-11 2017-08-15 Nike, Inc. Shoe with illuminable sole light sequence
CN105956608A (zh) * 2016-04-21 2016-09-21 恩泊泰(天津)科技有限公司 一种基于深度学习的目标定位、分类算法
US10423830B2 (en) 2016-04-22 2019-09-24 Intel Corporation Eye contact correction in real time using neural network based machine learning
CN106097353B (zh) 2016-06-15 2018-06-22 北京市商汤科技开发有限公司 基于多层次局部区域融合的物体分割方法及装置、计算设备
WO2018013200A1 (en) 2016-07-14 2018-01-18 Magic Leap, Inc. Deep neural network for iris identification
CN109661194B (zh) 2016-07-14 2022-02-25 奇跃公司 使用角膜曲率的虹膜边界估计
WO2018035506A1 (en) * 2016-08-19 2018-02-22 Linear Algebra Technologies Limited Dynamic culling of matrix operations
AU2017317599B2 (en) 2016-08-22 2021-12-23 Magic Leap, Inc. Augmented reality display device with deep learning sensors
RU2016138608A (ru) 2016-09-29 2018-03-30 Мэджик Лип, Инк. Нейронная сеть для сегментации изображения глаза и оценки качества изображения
CN110073359B (zh) 2016-10-04 2023-04-04 奇跃公司 用于卷积神经网络的有效数据布局
IL285121B2 (en) 2016-11-15 2023-04-01 Magic Leap Inc A deep learning system for discovering a cube
KR20210113443A (ko) 2017-03-17 2021-09-15 매직 립, 인코포레이티드 룸 레이아웃 추정 방법들 및 기술들
AU2018383539A1 (en) * 2017-12-14 2020-06-18 Magic Leap, Inc. Contextual-based rendering of virtual avatars

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20140321702A1 (en) * 2013-04-30 2014-10-30 Qualcomm Incorporated Diminished and mediated reality effects from reconstruction

Also Published As

Publication number Publication date
KR20210075225A (ko) 2021-06-22
IL285121B2 (en) 2023-04-01
US10937188B2 (en) 2021-03-02
JP7151016B2 (ja) 2022-10-11
AU2017361061A1 (en) 2019-05-23
AU2017361061B2 (en) 2022-02-03
JP2021108138A (ja) 2021-07-29
US20200202554A1 (en) 2020-06-25
IL285121A (en) 2021-08-31
IL297846B1 (en) 2023-08-01
IL285121B (en) 2022-12-01
WO2018093796A1 (en) 2018-05-24
IL266482B (en) 2021-08-31
IL297846A (en) 2023-01-01
EP3542250A4 (en) 2020-08-26
IL266482A (en) 2019-07-31
US20180137642A1 (en) 2018-05-17
KR20230170119A (ko) 2023-12-18
CN110168477B (zh) 2022-07-08
JP7096925B2 (ja) 2022-07-06
IL297846B2 (en) 2023-12-01
JP2019536154A (ja) 2019-12-12
KR20190085519A (ko) 2019-07-18
JP6854344B2 (ja) 2021-04-07
US10621747B2 (en) 2020-04-14
US20220237815A1 (en) 2022-07-28
JP2022126809A (ja) 2022-08-30
CA3043352A1 (en) 2018-05-24
KR102267553B1 (ko) 2021-06-22
US20210134000A1 (en) 2021-05-06
US11328443B2 (en) 2022-05-10
CN110168477A (zh) 2019-08-23
US11797860B2 (en) 2023-10-24
EP3542250A1 (en) 2019-09-25
CN115097937A (zh) 2022-09-23
AU2022202694A1 (en) 2022-05-19

Similar Documents

Publication Publication Date Title
KR102610030B1 (ko) 큐보이드 검출을 위한 딥 러닝 시스템
US11775835B2 (en) Room layout estimation methods and techniques
Dwibedi et al. Deep cuboid detection: Beyond 2d bounding boxes
Palla et al. Fully Convolutional Denoising Autoencoder for 3D Scene Reconstruction from a single depth image
NZ793982A (en) Deep learning system for cuboid detection
Nakamura et al. Improving collision detection for real-time video avatar interaction
Thierfelder Modified Particle Swarm Optimization for a 6DOF Local Pose Estimation Algorithm by Using a RGB-D Camera

Legal Events

Date Code Title Description
A107 Divisional application of patent
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant