KR20210113443A - 룸 레이아웃 추정 방법들 및 기술들 - Google Patents

룸 레이아웃 추정 방법들 및 기술들 Download PDF

Info

Publication number
KR20210113443A
KR20210113443A KR1020217028859A KR20217028859A KR20210113443A KR 20210113443 A KR20210113443 A KR 20210113443A KR 1020217028859 A KR1020217028859 A KR 1020217028859A KR 20217028859 A KR20217028859 A KR 20217028859A KR 20210113443 A KR20210113443 A KR 20210113443A
Authority
KR
South Korea
Prior art keywords
room
network
image
predicted
encoder
Prior art date
Application number
KR1020217028859A
Other languages
English (en)
Inventor
첸-유 이
비제이 바드리나라야난
토마츠 말리시예위츠
앤드류 라비노비치
Original Assignee
매직 립, 인코포레이티드
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 매직 립, 인코포레이티드 filed Critical 매직 립, 인코포레이티드
Publication of KR20210113443A publication Critical patent/KR20210113443A/ko

Links

Images

Classifications

    • 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
    • G06K9/00691
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/21Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
    • G06F18/214Generating training patterns; Bootstrap methods, e.g. bagging or boosting
    • 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
    • G06K9/00671
    • G06K9/00979
    • G06K9/34
    • G06K9/4604
    • G06K9/4642
    • G06K9/6256
    • G06K9/627
    • 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
    • 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
    • G06N3/0445
    • 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
    • G06N3/0454
    • 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/082Learning methods modifying the architecture, e.g. adding, deleting or silencing nodes or connections
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/40Extraction of image or video features
    • G06V10/44Local feature extraction by analysis of parts of the pattern, e.g. by detecting edges, contours, loops, corners, strokes or intersections; Connectivity analysis, e.g. of connected components
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • 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/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/764Arrangements for image or video recognition or understanding using pattern recognition or machine learning using classification, e.g. of video objects
    • 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
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/94Hardware or software architectures specially adapted for image or video understanding
    • G06V10/95Hardware or software architectures specially adapted for image or video understanding structured as a network, e.g. client-server architectures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/20Scenes; Scene-specific elements in augmented reality scenes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/35Categorising the entire scene, e.g. birthday party or wedding scene
    • G06V20/36Indoor scenes

Abstract

룸의 레이아웃을 추정하기 위한 시스템들 및 방법들이 개시된다. 룸 레이아웃은 바닥, 하나 이상의 벽들 및 천장의 위치를 포함한다. 일 양상에서, 뉴럴 네트워크는 룸 레이아웃을 결정하기 위해 룸의 부분의 이미지를 분석할 수 있다. 뉴럴 네트워크는 인코더 서브-네트워크, 디코더 서브-네트워크 및 사이드 서브-네트워크를 갖는 콘볼루션 뉴럴 네트워크를 포함할 수 있다. 뉴럴 네트워크는 룸 타입과 연관된 2-차원 순서화된 키포인트들을 사용하여 3-차원 룸 레이아웃을 결정할 수 있다. 룸 레이아웃은 증강 또는 혼합 현실, 로봇공학, 자율 실내 내비게이션 등과 같은 애플리케이션들에서 사용될 수 있다.

Description

룸 레이아웃 추정 방법들 및 기술들{ROOM LAYOUT ESTIMATION METHODS AND TECHNIQUES}
[0001] 본 출원은 "ROOM LAYOUT ESTIMATION METHODS AND TECHNIQUES"이란 명칭으로 2017년 3월 17일에 출원된 미국 특허 출원 번호 제62/473,257호를 우선권으로 주장하고, 이로써 상기 출원은 전체적으로 본원에 인용에 의해 포함된다.
[0002] 본 개시내용은 일반적으로 자동화된 이미지 분석을 사용하여 룸의 레이아웃을 추정하기 위한 시스템들 및 방법들에 관한 것이며, 더 상세하게는, 룸 레이아웃들을 결정하기 위한 심층 기계 학습 시스템들(예컨대, 콘볼루션 뉴럴 네트워크들)에 관한 것이다.
[0003] DNN(deep neural network)은 계산적인 기계 학습 방법이다. DNN은 인공 뉴럴 네트워크(neural network; NN)들의 클래스에 속한다. NN들에 있어서, 생물학적 뉴럴 네트워크의 특징들을 모방하는 계산적인 그래프(computational graph)가 구성된다. 생물학적 뉴럴 네트워크는 컴퓨테이션에 대해 두드러진 특징들을 포함하고, 그렇지 않으면 다른 방법들을 통해 캡처하기 어려울 수 있는 생물학적 시스템의 능력들 중 대부분을 담당한다. 일부 구현들에서, 이러한 네트워크들은 연결이 단방향인 순차적 계층화된 구조로 배열된다. 예컨대, 특정 층의 인공 뉴런들의 출력들은 후속 층의 인공 뉴런들의 입력들에 연결될 수 있다. DNN은 매우 다수의 층들(예컨대, 수십, 수백개 이상의 층들)을 갖는 NN일 수 있다.
[0004] 상이한 NN들은 상이한 관점들에서 서로 상이하다. 예컨대, 토폴로지들 또는 아키텍처들(예컨대, 층들의 수 및 층들이 상호연결되는 방식) 및 상이한 NN들의 가중치들이 상이할 수 있다. 가중치는 생물학적 시스템에서 뉴럴 연결(neural connection)의 시냅스 세기와 거의 유사할 수 있다. 가중치들은 하나의 층으로부터 다른 층으로 전파되는 효과의 세기에 영향을 줄 수 있다. 인공 뉴런의 출력은 자신의 입력들의 가중화된 합의 비선형 함수일 수 있다. NN은 트레이닝 데이터에 대해 트레이닝되고, 트레이닝되지 않은 데이터로부터 출력을 결정하는 데 사용될 수 있다.
[0005] 이미지로부터 세계의 3D(three-dimensional) 표현을 구축하는 것은 컴퓨터 비전에서 중요한 난제이고, 증강 현실, 로봇공학, 자율 내비게이션 등에 대한 중요한 애플리케이션들을 갖는다. 본 개시내용은, 룸의 하나 이상의 이미지들을 분석함으로써 룸의 레이아웃을 추정하기 위한 시스템들 및 방법들의 예들을 제공한다. 레이아웃은 룸의 바닥, 하나 이상의 벽들, 천장 등의 위치들을 포함할 수 있다.
[0006] 일 양상에서, 뉴럴 네트워크를 포함하는 기계 학습 시스템은 룸 레이아웃 추정을 위해 사용된다. 다양한 실시예들에서, 기계 학습 시스템은 본원에서 룸넷(Roomnet)이라는 명칭으로 지칭되는데, 왜냐하면 이러한 다양한 실시예들이 뉴럴 네트워크를 사용하여 룸 레이아웃을 결정하기 때문이다. 기계 학습 시스템은 비-일시적인 저장소를 포함하는 하드웨어 컴퓨터 프로세서에 의해 수행될 수 있고, 로컬적으로 또는 분산형(예컨대, 클라우드) 컴퓨팅 환경에서 수행될 수 있다.
[0007] 본원에 설명된 룸 레이아웃 시스템들 및 방법들은 증강 및 혼합 현실에 적용 가능하다. 예컨대, 증강 현실(AR) 디바이스는 AR 디바이스의 환경의 이미지를 캡처하도록 구성된 외향 이미징 시스템을 포함할 수 있다. AR 디바이스는, AR 디바이스의 착용자가 위치된 룸의 레이아웃을 결정하기 위해 이미지의 룸넷 분석을 수행할 수 있다. AR 디바이스는 착용자의 환경의 3D 표현(때때로 세계 맵으로 지칭됨)을 구축하기 위해 룸 레이아웃을 사용할 수 있다.
[0008] 일 양상에서, 뉴럴 네트워크는 룸 레이아웃을 결정하기 위해 룸의 일부의 이미지를 분석할 수 있다. 뉴럴 네트워크는 인코더 서브-네트워크, 디코더 서브-네트워크 및 사이드 서브-네트워크를 갖는 콘볼루션 뉴럴 네트워크(convolutional neural network)를 포함할 수 있다. 뉴럴 네트워크는 룸 타입과 연관된 2차원의 순서화된 키포인트들을 사용하여 3-차원 룸 레이아웃을 결정할 수 있다. 룸 레이아웃은 증강 또는 혼합 현실, 로봇공학, 자율 실내 내비게이션 등과 같은 애플리케이션들에서 사용될 수 있다.
[0009] 일 양상에서, 룸넷은 인코더 서브-네트워크, 인코더 서브-네트워크에 연결된 디코더 서브-네트워크, 및 인코더 서브-네트워크에 연결된 사이드 서브-네트워크를 포함한다. 룸 이미지를 수신한 후에, 복수의 룸 타입들에 대응하는 복수의 예측된 히트 맵들(heat maps)은 룸넷의 인코더 서브-네트워크 및 디코더 서브-네트워크를 사용하여 결정될 수 있다. 복수의 룸 타입들 중 예측된 룸 타입은 룸넷의 인코더 서브-네트워크 및 사이드 서브-네트워크 및 룸 이미지를 사용하여 결정될 수 있다. 복수의 예측된 키포인트 위치들에서의 키포인트들은 예측된 룸 타입에 대응하는 예측된 히트 맵을 사용하여 결정될 수 있다. 룸 이미지에서 룸의 예측된 레이아웃은 예측된 룸 타입, 키포인트들, 및 예측된 룸 타입과 연관된 키포인트 순서를 사용하여 결정될 수 있다.
[0010] 다른 양상에서, 시스템은 룸 레이아웃 추정을 위해 뉴럴 네트워크를 트레이닝하는 데 사용된다. 트레이닝 룸 이미지들은, 인코더 서브-네트워크, 인코더 서브-네트워크에 연결된 디코더 서브-네트워크, 및 인코더 서브-네트워크에 연결된 사이드 서브-네트워크를 포함할 수 있는 뉴럴 네트워크를 트레이닝하는 데 사용될 수 있다. 트레이닝 룸 이미지들 각각은 트레이닝 룸 이미지의 기준 키포인트 위치들에서의 기준 키포인트들 및 기준 룸 타입과 연관될 수 있다. 뉴럴 네트워크를 트레이닝하는 것은, 인코더 서브-네트워크 및 디코더 서브-네트워크 및 트레이닝 룸 이미지를 사용하여, 룸 타입들에 대응하는 복수의 예측된 히트 맵들을 결정하는 것, 및 인코더 서브-네트워크 및 사이드 서브-네트워크 및 트레이닝 룸 이미지를 사용하여, 예측된 룸 타입을 결정하는 것을 포함할 수 있다. 뉴럴 네트워크는, 기준 키포인트 위치들과 예측된 히트 맵 사이의 제1 차이, 및 기준 룸 타입과 예측된 룸 타입 사이의 제2 차이에 기반하여 업데이트되는 가중치들을 포함할 수 있다.
[0011] 본 명세서에서 설명되는 청구 대상의 하나 이상의 구현들의 세부사항들은, 아래의 첨부 도면들 및 설명에서 기술된다. 다른 특징들, 양상들, 및 이점들은 설명, 도면들, 및 청구항들로부터 명백해질 것이다. 이 개요 또는 다음의 상세한 설명 어느 것도, 본 발명의 청구 대상의 범위를 한정하거나 제한하는 것으로 의도되지 않는다.
[0012] 도 1a는 룸 레이아웃 추정을 위한 예시적인 파이프라인이다.
[0013] 도 1b는 룸넷으로 지칭되는, 본원에 설명된 기계 학습 아키텍처의 실시예를 사용하는 예시적인 룸 레이아웃 추정이다.
[0014] 도 1c는 룸넷을 사용한 다른 예시적인 룸 레이아웃 추정이다.
[0015] 도 2는 룸 레이아웃 타입들의 예시적인 정의들을 도시한다. 타입은 0에서 10으로 인덱싱될 수 있다. 각각의 키포인트 상의 숫자는 실측 자료(groud truth)에 저장된 포인트들의 특정 순서를 정의한다. 정해진 룸 타입에 대해, 키포인트들의 순서화는 자신들의 연결성을 지정할 수 있다.
[0016] 도 3은 룸넷의 다른 예시적인 아키텍처를 도시한다.
[0017] 도 4a는 3번의 반복을 갖는 RNN(recurrent neural network)의 롤링되지 않은 버전(unrolled version)의 예시적인 예시를 도시한다.
[0018] 도 4b는, RNN의 거동을 모방하지만 정적 입력을 위해 설계된 MRED(memory augmented recurrent encoder-decoder) 아키텍처를 갖는 예시적인 룸넷을 도시한다.
[0019] 도 5a-5d는 개선되지 않은(최상부 행) 그리고 개선된(최하부 행) 단일 이미지들(중간 행)로부터의 예시적인 룸 레이아웃 키포인트 추정을 예시하는 이미지들을 도시한다. 다수의 채널들로부터의 키포인트 히트 맵들은 시각화를 위해 단일 2D(two dimensional) 이미지로 도시된다.
[0020] 도 6a-6b는 시간을 통한 심층 감시가 없는(도 6a) 그리고 시간을 통한 심층 감시되는(도 6b) 예시적인 메모리 증강 재귀 인코더-디코더 아키텍처들을 도시한다.
[0021] 도 7a-7g는 예시적인 룸넷 예측들 및 LSUN(Large-scale Scene Understanding Challenge) 데이터세트 상의 대응하는 실측 자료를 도시하는 이미지들을 포함한다. 룸넷은 자신의 입력으로서 RGB 이미지(각각의 도면에서 제1 열)에 액세스하고, 예시적인 룸 레이아웃 키포인트 히트 맵(각각의 도면에서 제2 열)을 생성했다. 최종 키포인트들은 히트 맵으로부터 최대 응답을 갖는 키포인트 위치를 추출함으로써 획득되었다. 각각의 도면에서 제3 및 제4 열들은, 도 2를 참조하여 설명된 바와 같이, 획득된 키포인트들을 특정 순서로 연결함으로써 생성된 예시적인 상자모양의 룸 레이아웃 표현들을 도시한다. 각각의 도면에서 제5 및 제6 열들은 예시적인 실측 자료를 도시한다.
[0022] 도 8a-8d는, 룸넷의 실시예로부터의 룸 레이아웃 예측들이 (인간이 주석을 단) 실측 자료 레이아웃들과의 매치들이 덜 양호한 예들을 도시한다. 각각의 도면에서 제1 열은 예시적인 입력 이미지를 도시한다. 각각의 도면에서 제2 열은 예시적인 예측된 키포인트 히트 맵을 도시한다. 각각의 도면에서 제3 및 제4 열들은 획득한 예시적인 상자모양의 표현들을 도시한다. 제5와 제6 열들은 예시적인 실측 자료를 도시한다.
[0023] 도 9a-9f는 예시적인 인코더-디코더 아키텍처들: 바닐라 인코더-디코더(도 9a); 스택된 인코더-디코더(도 9b); 스킵-연결들을 갖는 스택된 인코더-디코더(도 9c); 피드백을 갖는 인코더-디코더(도 9d); 메모리 증강 재귀 인코더-디코더(도 9e); 및 피드백을 갖는 메모리 증강 재귀 인코더-디코더(도 9f)를 도시한다.
[0024] 도 10은 룸넷을 트레이닝하는 예시적인 프로세스의 흐름도이다.
[0025] 도 11은 룸 레이아웃 추정을 위해 룸넷을 사용하는 예시적인 프로세스의 흐름도이다.
[0026] 도 12는 룸넷의 실시예를 구현할 수 있는 웨어러블 디스플레이 시스템의 예를 개략적으로 예시한다.
[0027] 도면들 전체에 걸쳐, 참조 번호들은 참조된 엘리먼트들 사이의 대응성(correspondence)을 표시하는 데 재사용될 수 있다. 도면들은 본원에서 설명된 예시적인 실시예들을 예시하기 위해 제공되며 본 개시내용의 범위를 제한하려는 의도는 아니다.
개요
[0028] 함수들, 알고리즘들, 시스템들 등과 같은 데이터 관계들 및 패턴들을 표현하는 모델들은 입력을 받고 어떤 방식으로든 입력에 대응하는 출력을 생성할 수 있다. 예컨대, 모델은 CNN(convolutional neural network) 또는 DNN(deep neural network)과 같은 기계 학습 방법으로서 구현될 수 있다. 심층 학습은 작업 특정 알고리즘과 달리 데이터 표현들을 학습하는 아이디어에 기반한 광범위한 기계 학습 방법군의 부분이며, 증강 현실, 혼합 현실, 가상 현실 및 기계 지능들에 유용한 시청각 계산적인 문제들을 해결하는 데 뛰어난 장래성을 보여준다. 기계 학습에서, CNN(convolutional neural network) 또는 ConvNet는 심층(deep), 피드-포워드 인공 뉴럴 네트워크들의 클래스를 포함할 수 있고, CNN들은 시각적 이미저리의 분석에 성공적으로 적용되었다. 기계 학습 방법들은 눈 이미지 분할 및 눈 추적을 포함한 매우 다양한 문제들에 대한 강력하고 정확한 솔루션들을 가능하게 하는 방법군들을 포함한다.
[0029] 룸넷이라 불리는, 룸 레이아웃 추정을 위한 뉴럴 네트워크의 예들이 본원에 개시된다. 룸넷은 룸 레이아웃을 결정하기 위해 룸의 적어도 일부의 이미지를 분석할 수 있다. 룸 레이아웃은 방의 바닥, 벽 또는 천장의 위치들의 표현을 포함할 수 있다. 이미지는, 예컨대, 단안 이미지(monocular image) 또는 그레이스케일 또는 컬러(예컨대, RGB(Red-Green-Blue)) 이미지를 포함할 수 있다. 이미지는 비디오로부터의 프레임 또는 프레임들일 수 있다. 다른 기술들은 룸 레이아웃 추정을 2개의 서브-작업들: 레이아웃 가설들을 생성하기 위한 바닥, 벽들 및 천장의 의미론적 분할, 다음에 이러한 가설들의 순위를 매기기 위한 반복 최적화 단계로 분할한다.
[0030] 이러한 접근법들과 대조적으로, 룸넷은 순서화된 룸 레이아웃 키포인트들의 세트를 추정하는 것으로서 룸 레이아웃 문제를 공식화할 수 있다. 이러한 순서화된 키포인트들의 위치들을 고려하여, 룸 레이아웃 및 대응하는 분할이 완전히 지정될 수 있다. 룸넷은 단대단(end-to-end) 트레이닝 가능한 인코더-디코더 네트워크일 수 있다. 룸넷 기계 학습 아키텍처는 (예컨대, 계산량, 정확성 등의 측면에서) 더 양호한 성능을 가질 수 있다. 일부 실시예들에서, 룸넷은 유사하거나 동일한 파라메트릭 용량 하에서 키포인트 위치들을 개선하기 위한 메모리 유닛들 및 재귀 계산들을 포함하는 아키텍처를 가질 수 있다.
[0031] 입체 이미지들은 룸 레이아웃에 대한 깊이 정보를 제공할 수 있다. 단안 이미지(깊이 정보를 포함하지 않음)로부터의 룸 레이아웃 추정은 난제이다. 실내 장면의 2D(two-dimensional) 표현(예컨대, 상자모양의 표현)을 묘사하는 것을 목표로 하는 단안 이미지들로부터의 룸 레이아웃 추정은 실내 내비게이션, 장면 재구성 또는 렌더링 또는 증강 현실과 같은 매우 다양한 컴퓨터 비전 작업들을 위한 애플리케이션들을 갖는다. 도 1a는, 이미지를 촬영하고(104), 로컬 컬러, 텍스처 및 에지 큐들과 같은 이미지 특징들을 상향 방식으로 추출하고(108), 다음에 소실점(vanishing point)을 검출하는(112) 종래의 룸 레이아웃 기술을 예시한다. 종래의 방법들은, 특징 이상점들(feature outliers)을 정리하고 구조화된 SVM(support vector machine)들 또는 CRF(conditional random field)들로 룸 레이아웃 가설들의 대규모 세트를 생성하거나 순위를 매기는 데(116) 사용되는 별개의 프로세싱-후 스테이지를 포함할 수 있다. 원칙적으로, 룸 레이아웃의 3D 재구성은 이들 방법들을 사용하여 결정된 소실점들 및 2D 레이아웃(120a)의 지식으로 (예컨대, 최대 스케일로(up to scale)) 획득될 수 있다. 그러나, 실제로, 이러한 종래의 방법들은 복잡하고, 최종 레이아웃 예측의 정확도는 흔히, 추출된 저레벨 이미지 특징들의 품질에 크게 의존하고, 이는 그 자체가 로컬 잡음, 장면 클러터(scene clutter) 및 폐색에 영향을 받기 쉽다. 유리하게는, 본 개시내용의 룸넷의 실시예는 로컬 잡음, 장면 클러터 및 폐색에 영향을 받기 쉽지 않을 수 있다. 또한, 룸넷에 의해 제공되는 룸 레이아웃 추정은 유리하게는 다른 방법들보다 (예컨대, 200x 또는 600x와 같은 계산량 측면에서) 더 양호한 성능을 가질 수 있다.
[0032] 일부 실시예들에서, 룸넷은 심층 뉴럴 네트워크와 같은 CNN(convolutional neural network)들, 의미론적 분할, 핸드 엔지니어드 저레벨 이미지 기능 추출(hand engineered low-level image feature extraction)을 대체하는 유익한 에지 맵들을 생성하는 FCN(fully convolutional network) 모델에 기반한 다른 룸 레이아웃 추정 방법들보다 양호한 성능을 가질 수 있다. 이어서, 이러한 FCN에 의해 생성된 예측된 에지 맵들은 레이아웃 가설 생성 및 순위 매김을 위해 소실 라인들을 샘플링하는 데 사용될 수 있다. 예컨대, FCN은 좌측 벽, 전방 벽, 우측 벽, 천장 및 지면과 같은 의미론적 표면 라벨들을 학습하는 데 사용될 수 있다. 이어서, 연결된 컴포넌트들 및 홀 채움 기술들(hole filling techniques)은 FCN의 미가공 픽셀 당 예측(raw per pixel prediction)을 개선하는 데 사용될 수 있고, 다음에 룸 레이아웃을 생성하기 위한 클래식 소실점/라인 샘플링 방법들이 이어진다. 새로운 저레벨 특징들의 세트를 생성하고, 각각의 프레임을 프로세싱하기 위해 30 초 이상을 요구할 수 있는 이러한 방법들과 대조적으로, 룸넷은 더 계산적으로 효율적인 단대단 트레이닝 가능한 CNN일 수 있다.
[0033] 일부 실시예들에서, 룸넷의 예측들은, 최종 레이아웃을 생성하기 위한, 고가일 수 있는 가설 테스팅 스테이지에 의해 사후-프로세싱될 필요가 없다. 룸넷은 하향식 접근법을 사용하여 공간 배치 추정을 수행할 수 있고, 룸 레이아웃 키포인트들(예컨대, 코너들) 및 룸 타입 둘 모두를 추론하도록 직접 트레이닝될 수 있다. 일단 룸 타입이 추론 또는 결정되고 대응하는 순서화된 키포인트들의 세트가 로컬화 또는 결정되면, 키포인트들은, 2D 공간 룸 레이아웃을 획득하기 위해, 결정된 룸 타입에 기반하여, 특정 순서로 연결될 수 있다.
[0034] 룸넷 아키텍처는 도 1b 및 1c에 예시된 바와 같이 직접적이고(direct) 간단할 수 있다. 아래에서 더 설명될 바와 같이, 룸넷(124)은 (예컨대, 320 픽셀들 x 320 픽셀들 크기의) 입력 이미지(104)를 촬영하고, 콘볼루션 인코더-디코더 아키텍처를 통해 이미지를 프로세싱하고, 특정 룸 레이아웃에 대응하는 키포인트 히트 맵(128)으로부터 룸 레이아웃 키포인트들(128k1-128k6)의 세트를 추출하고, 이어서 (선택적으로) 룸 레이아웃(120b)을 제공하기 위해 획득된 키포인트들을 특정 순서로 연결할 수 있다. 룸 레이아웃(120b)은, 예컨대, 바닥(132), 천장(134) 및 벽들(136)과 같은, 룸 내의 수직 또는 수평 표면들의 위치들 또는 배향들을 포함할 수 있다.
[0035] 선택적으로, 룸 레이아웃은 아래에 설명된 바와 같이 회귀(regress)될 수 있다. 룸 레이아웃(120b)은, 예컨대, 증강 현실 또는 실내 자율 내비게이션을 위해 또는 장면 재구성 또는 렌더링을 위해, 세계 맵에서 사용될 수 있다. 선택적으로, 룸 레이아웃은 도면, 아키텍처 맵 등으로서 출력될 수 있다. 레이아웃 표면들의 의미론적 분할은 이러한 연결의 결과로서 간단하게 획득 가능할 수 있고, 의미론적으로 분할된 룸 레이아웃 이미지(136)로서 표현될 수 있다. 따라서, 룸넷은 키포인트 로컬화에 의해 룸 레이아웃 추정 작업을 수행한다. 일부 실시예들에서, 룸넷은 CNN에 기반한 인코더-디코더 네트워크일 수 있다. 룸넷은 공동 키포인트 회귀(joint keypoint regression) 및 룸 레이아웃 타입 분류에서 파라메트릭적으로(parametrically) 효율적이고 효과적일 수 있다.
예시적인 키포인트-기반 룸 레이아웃 표현
[0036] 룸넷의 실시예들은 룸 레이아웃 추정에서 효과적일 수 있다. 룸넷은 단대단 트레이닝 가능한 타겟 출력 표현에 기반할 수 있고, 효율적으로 추론될 수 있다. 룸넷은, 기하학적 컨텍스트(geometric context) 또는 의미론적 클래스들(예컨대, 바닥, 벽들 또는 천장 등)을 이미지의 각각의 픽셀에 할당하는 것, 및 이어서 픽셀 단위 라벨들에 기반하여 룸 레이아웃 키포인트들 및 경계들을 획득하는 것에 기반하는 방법들을 보완 또는 보충할 수 있다. 미가공 픽셀 출력으로부터 레이아웃 키포인트들 및 경계들을 도출하는 것은 자명하지 않고(non-trivial), 룸넷의 실시예보다 덜 효율적일 수 있다. 대조적으로, 룸넷은 순서화된 룸 레이아웃 키포인트 위치들의 세트를 직접 출력하는 모델에 기반하여, 키포인트-기반 및 픽셀-기반 룸 레이아웃 표현들 둘 모두가 높은 정확도로 효율적으로 획득될 수 있다. 룸넷은 다른 방법들에 의해 사용된 픽셀-기반 표현에서 모호성(ambiguity)을 감소시키거나 제거할 수 있다. 따라서, 룸넷의 실시예들은 상이한 표면 아이덴티티들(예컨대, 전방 벽들, 측벽들, 바닥들, 천장들)을 구별할 수 있다. 예컨대, 룸넷은 전방 벽 클래스와 우측 벽 클래스를 정확히 구별하고, 이로써 동일한 표면 내의 규칙적인, 혼합되지 않은 라벨들을 출력할 수 있다. 따라서, 룸넷은 더 양호한 전체 룸 레이아웃 추정 정확도 및 성능을 가질 수 있다.
[0037] 일부 구현들에서, 룸넷은 도 2에 예시된 키포인트-기반 룸 레이아웃 표현을 사용하여 트레이닝될 수 있다. 도 2는, 자신들 개개의 키포인트 정의가 1, 2, 3, 4, 5, 6, 7, 및/또는 8로 라벨링된 예시적인 룸 타입들 0-10(204rt0-204rt10)의 리스트를 도시한다. 각각의 키포인트 상의 숫자는 실측 자료로 저장된 포인트들의 특정 순서를 정의한다. 이러한 11개의 룸 레이아웃 타입들은 전형적인 카메라 포즈들 하에서 가능한 상황들 중 대부분 및 맨해튼 세계 가정(Manhattan world assumption) ― 여기서 이미지들 내의 객체들, 에지들, 코너들이 데카르트 그리드(Cartesian grid) 상에서 구축되어, 이미지 그래디언트 통계에서 규칙성들(regularities)로 이어짐 ― 하에서 일반적인 룸 레이아웃 표현들을 커버할 수 있다. 다양한 실시예들에서, 룸 타입은 복수의 다각형 구역들로 표현될 수 있으며, 각각의 구역은, 예컨대, 바닥, 천장, 우측 벽, 중간 벽, 좌측 벽 등에 대응한다. 룸 타입들은 한 세트의 코너 키포인트들, 예컨대, 다각형 구역들의 교차점들에 대응하는 코너들로 구성될 수 있다. 예컨대, 룸 타입(204rt5)에서, 좌측 벽은 키포인트들(1, 2, 5 및 4)에 의해 경계가 이루어지고, 우측 벽 키포인트는 키포인트들(1, 3, 6 및 4)에 의해 경계가 이루어지고, 바닥은 키포인트들(5, 4, 6)에 의해 경계가 이루어지고, 천장은 키포인트들(2, 1, 3)에 의해 경계가 이루어진다. 룸 타입은 바닥, 벽 및 천장을 식별하기 위해 의미론적으로 분할될 수 있다.
[0038] 일단 트레이닝된 룸넷이 연관된 룸 타입을 갖는 정확한 키포인트 위치들을 예측하면, 이들 포인트들은 상자모양의 룸 레이아웃 표현을 생성하기 위해 특정 순서로 연결될 수 있다. 예컨대, 룸 타입 7(204rt7)은 4개의 순서화된 키포인트 위치들(208k1-208k4)을 포함하여, 키포인트 1(208k1)과 키포인트 2(208k2) 및 키포인트 3(208k3)과 키포인트 4(208k4)를 연결함으로써 상자모양의 룸 레이아웃 표현이 구성될 수 있다. 11개의 룸 레이아웃들은 8개의 키포인트들을 갖는 하나의 룸 레이아웃 타입(204rt0), 6개의 키포인트들을 갖는 3개의 룸 레이아웃 타입들(204rt1, 204rt2 및 204rt5), 4개의 키포인트들을 갖는 4개의 룸 레이아웃 타입들(204rt3, 204rt4, 204rt6 및 204rt7), 및 2개의 키포인트들을 갖는 3개의 룸 레이아웃 타입들(204rt8, 204rt9 및 204rt10)을 포함한다. 동일한 수의 키포인트들을 갖는 룸 레이아웃들은 동일한 키포인트 연결(이를테면, 룸 레이아웃 타입 3 및 4(204rt3 및 204rt4)) 또는 상이한 키포인트 연결(이를테면, 룸 레이아웃 타입 1 및 2(204rt3 및 204rt4))을 가질 수 있다. 이 예에서 11개의 룸 레이아웃 타입들이 사용되지만, 다른 구현들에서 상이한 수(예컨대, 5, 10, 15, 20 이상)의 룸 레이아웃 타입들이 사용될 수 있거나, 룸 레이아웃 타입들은 도 2에 도시된 것과 상이한 어레인지먼트를 갖는다.
룸넷의 예시적인 아키텍처
[0039] 본 개시내용의 룸 레이아웃 추정을 위한 뉴럴 네트워크는 2D(two dimensional) 키포인트들을 사용하여 룸 레이아웃 구조를 묘사하는 CNN(convolutional neural network)를 포함할 수 있다. 룸넷으로의 입력은 단안 이미지, 예컨대, 비디오로부터의 단일 RGB(Red-Green-Blue) 이미지 또는 RGB 프레임일 수 있다. 룸넷의 출력은 연관된 룸 타입을 갖는 특정 순서와 연관된 2D 키포인트들의 세트를 포함할 수 있다.
[0040] 키포인트 추정. 일부 실시예들에서, 룸넷은 지붕(또는 천장), 좌측 벽, 우측 벽, 후방 벽, 바닥 등과 같은 방의 표면들의 의미론적 분할 및 키포인트 추정을 위한 기본 네트워크 아키텍처를 포함할 수 있다. 도 3은 룸넷(300)의 예시적인 아키텍처를 도시한다. 이 예시적인 아키텍처에서, 디코더는 자신의 인코더로부터 전송된 풀링 인덱스들을 사용하여 자신의 입력을 업샘플링하여, 희소 특징 맵들 및 이어 트레이닝 가능한 필터 뱅크들로 몇몇의 콘볼루션 층들을 생성하여 특징 응답들을 치밀화(densify)한다. 최종 디코더 출력 키포인트 히트 맵들은 유클리드 손실들로 회귀자(regressor)에 공급된다. 3개의 완전히 연결된 층들을 갖는 사이드 헤드(side head)가 병목 층(bottleneck layer)에 부착되고, 룸 타입 클래스 라벨을 트레이닝 및 예측하는 데 사용되며, 이어서 룸 타입 클래스 라벨은 연관된 키포인트 히트 맵들의 세트를 선택하는 데 사용된다. 재귀 인코더-디코더(중심 파선 블록)를 갖는 룸넷의 완전한 모델은 도 4b 및 5를 참조하여 설명된 바와 같이 키포인트 개선을 추가로 수행한다.
[0041] 도 3을 계속 참조하면, 룸넷(300)은 인코더 서브-네트워크(304a) 및 디코더 서브-네트워크(304b)를 포함할 수 있다. 인코더 서브-네트워크(304a)는 입력 이미지(308)를 저해상도 특징 맵들(312a-312e)에 맵핑할 수 있다. 디코더 서브-네트워크(304b)는 픽셀 단위 분류를 위해 저해상도 인코딩된 특징 맵들(312e)을 고해상도 맵들(316a-316b) 및 히트 맵들(320r0-320r10)(예컨대, 입력 이미지(308)와 비교하여 동일하거나 더 낮은 해상도를 가짐)로 업샘플링할 수 있다. 입력 이미지(308), 특징 맵들(312a-312e, 316a-316b) 및 히트 맵들(320r0-320r10)의 차원들은 도 3에 도시된 룸넷 예(300)에 라벨링된다. 인코더 서브-네트워크(304a)는 복수의 콘볼루션 층들 및 풀링 층들(324a-324e)을 포함할 수 있다. 디코더 서브-네트워크(304b)는 복수의 콘볼루션 층들 및 업샘플링 층들(328a-328c)을 포함할 수 있다. 일부 실시예들에서, 디코더 서브-네트워크(304b)는, 비선형 업샘플링을 수행하기 위해, 대응하는 인코더 서브-네트워크(304b)의 맥스풀링(maxpooling) 단계 또는 층에서 컴퓨팅된 풀링 인덱스들을 사용할 수 있다. 예컨대, 특징 맵들(312e)을 생성하는 데 사용된 맥스풀링 층의 가중치들은 특징 맵들(312e)을 업샘플링하는 데 사용될 수 있다. 다른 예로서, 특징 맵들(312c)을 생성하는 데 사용된 맥스풀링 층의 가중치들은 특징 맵들(316a)을 업샘플링하는 데 사용될 수 있다. 풀링 인덱스들은 업샘플링하기 위한 학습의 필요성을 최소화하거나 제거할 수 있다. 업샘플링된 맵들은 희소할 수 있고, 조밀한 특징 맵들(316a, 316b)을 생성하기 위해 트레이닝 가능한 필터들로 콘볼루션될 수 있다. 이러한 인코더-디코더 아키텍처는, 룸 레이아웃 추정을 위한 다른 방법들과 비교하여, 경쟁력있는 추론 시간 및 효율적인 메모리 사용량을 갖는 양호한 성능을 제공할 수 있다. 히트 맵들(320r0-320r10)의 수는 5, 10, 11, 15 이상과 같이, 정의된 룸 타입들의 수일 수 있다. 도 3은 각각의 룸 타입과 연관된 키포인트들의 수를 도시한다. 예컨대, 룸 타입 0(320r0)은 8개의 키포인트들과 연관된다. 8개의 키포인트들 각각은, 예컨대, 8개의 히트 맵들(320r0) 각각에서 가장 높은 피크로서 식별될 수 있다. 따라서, 룸넷(300)에 의해 출력된 히트 맵들(320r0-320r10)의 수는 상이한 룸 타입들의 키포인트들의 총수일 수 있다. 도 3에 예시된 예에서, 히트 맵들(320r0-320r10)의 수는 48이다.
[0042] 룸넷(300)의 기본 아키텍처는 실내 장면의 이미지(308)를 촬영하고, 룸 레이아웃 구조를 복구하기 위해 2D 룸 레이아웃 키포인트들의 세트를 직접 출력할 수 있다. 각각의 키포인트 실측 자료는, 출력 층의 채널들 중 하나로서, 실제 키포인트 위치에 중심을 둔 2D 가우시안 히트 맵으로 표현될 수 있다. 일부 실시예들에서, 단일 2D 이미지의 키포인트 히트 맵들(320r0-320r10)은 시각화를 위해 컬러 코딩될 수 있다. 룸넷(300)의 인코더-디코더 아키텍처는 병목 층(예컨대, 콘볼루션 및 맥스풀링 층(324e))을 통해 정보 흐름을 프로세싱하여, 병목 층이 룸 레이아웃의 2D 구조를 인코딩하는 키포인트들 간의 관계를 암시적으로 모델링하도록 강제할 수 있다.
[0043] 일부 실시예들에서, 룸넷(300)의 디코더 서브-네트워크(304b)는, 도 3에 도시된 바와 같이, 공간 치수 10 x 10를 갖는 병목 층(324e)으로부터의 특징 맵들(312e)을, 완전한 해상도(320 픽셀들 x 320 픽셀들) 대신에 40 x 40로 업샘플링할 수 있다. 40 픽셀들 x 40 픽셀들로의 출력 히트 맵들(320r0-320r10)의 치수의 이러한 감소는, 입력 이미지(308)의 치수와 비교하여, 룸 레이아웃을 효과적으로 미리 모델링하기 위해 제안된 2D 키포인트-기반 표현을 사용하여 경험적으로 결정될 수 있다. 일부 실시예들에서, 히트 맵들(320r0-320r10)의 폭 및 높이는 320 픽셀들 x 320 픽셀들과 같은 입력 이미지(308)의 폭 및 높이와 동일할 수 있다. 상이한 출력 치수들을 갖는 룸넷(300)의 실시예들은 유사한 성능을 가질 수 있다. 이러한 트리밍된 디코더 서브-네트워크(304b)를 사용하는 것은 유리하게도, 고해상도들에서 높은 콘볼루션 컴퓨테이션 비용으로 인해, 트레이닝 및 테스트 둘 모두 동안 메모리 사용량 또는 시간 비용을 감소(예컨대, 상당히 감소)시킬 수 있다.
[0044] 다수의 룸 타입들로의 확장. 룸넷(300)의 프레임워크 또는 아키텍처는 하나의 특정 룸 타입으로 제한되지 않는다. 룸넷의 실시예들은, 클래스 당 하나의 네트워크를 트레이닝하지 않고서, 다수의 룸 타입들에 대해 일반화될 수 있다. 룸넷(300)의 이러한 실시예들은 처음부터 효율적이고 빠를 수 있다. 도 3에 예시된 룸넷 실시예(300)는 하나의 포워드 패스에서 입력 이미지에 대한 연관된 룸 타입에 대한 룸 레이아웃 키포인트들을 예측할 수 있다. 출력 층(328c)의 채널들의 수는 모든 정의된 룸 타입들에 대한 키포인트들의 총수(예컨대, 도 2에 예시된 11개의 룸 타입들에 대한 총 48개의 키포인트들)와 매칭할 수 있다. 룸넷(300)은 또한, 도 3에 도시된 바와 같이 룸 타입 예측을 예측하기 위해, 병목 층(324e)(예컨대, 보통 이미지 분류를 위해 사용된 층)에 연결된 층들(332a-332c)(예컨대, 완전히 연결된 층들)을 갖는 사이드 헤드 또는 사이드 서브-네트워크(304c)를 포함할 수 있다. 사이드 서브-네트워크는 룸 이미지에서 룸 타입을 분류하기 위한 분류자 네트워크를 포함할 수 있다.
[0045] 트레이닝 예 또는 룸 이미지는 (I, y, t)로 표기될 수 있으며, 여기서 y는 입력 이미지(I)에 대한 룸 타입(t)을 갖는 k개의 키포인트들의 실측 자료 좌표들의 리스트이다. 트레이닝 스테이지에서, 손실 함수(L)는 예측된 키포인트들에 대한 제1 손실 및 예측된 룸 타입에 대한 제2 손실을 포함할 수 있다. 제1 손실은 유클리드 손실일 수 있으며, 이는 레이아웃 키포인트 히트 맵 회귀를 위한 비용 함수로써 사용될 수 있다. 트레이닝 동안, 제2 손실은, 룸 타입 예측에 사용될 수 있는 교차-엔트로피 손실(예컨대, 로그(logarithmic))일 수 있다. 키포인트 히트 맵 회귀자(
Figure pat00001
)(예컨대, 디코더 서브-네트워크(304b)로부터의 출력), 및 룸 타입 분류자(
Figure pat00002
)(예컨대, 완전히 연결된 사이드 헤드 층(304C)으로부터의 출력)를 고려할 때, 수학식 1에 도시된 손실 함수(L)는 최적화(예컨대, 감소 또는 최소화)될 수 있다.
Figure pat00003
여기서
Figure pat00004
는, 키포인트(k)가 실측 자료 룸 타입(t)에서 나타나는지 여부를 나타내고,
Figure pat00005
은 룸 타입 인덱스(c)가 실측 자료 룸 타입(t)과 동일한지 여부를 나타내고, 함수(G)는 y에 중심을 둔 가우시안이고, 가중치 항은 λ이다. 예컨대, 가중치 항(λ)(예컨대, 5)은 교차 검증에 의해 설정될 수 있다. 손실 함수의 제1 항은 예측된 히트 맵들(320r0-320r10)과, 각각의 키포인트에 대한 합성된 실측 자료 히트 맵들을 개별적으로 비교한다. 각각의 키포인트 히트 맵에 대한 실측 자료는, 다수의 픽셀들(예컨대, 5개의 픽셀들)의 표준 편차를 갖는, 실제 키포인트 위치에 중심으로 둔 2D 가우시안일 수 있다. 손실 함수의 제2 항은 완전히 연결된 층들(332a-332c)을 갖는 사이드 헤드(304c)가 정확한 룸 타입 클래스 라벨에 대해 높은 신뢰도 값을 생성하도록 독려할 수 있다.
[0046] 룸넷(300)의 하나의 포워드 패스는 모든 정의된 룸 타입들(예컨대, 도 2에서 11)에 대해 2D 룸 레이아웃 키포인트들(320r0-320r10)을 생성할 수 있다. 2D 룸 레이아웃 키포인트들은 히트 맵 형태일 수 있으며, 여기서 이러한 히트 맵들에서 최종 키포인트들은 최대값들로서 추출될 수 있다. 일부 실시예들에서, 손실 함수(예컨대, 수학식 1에 도시된 손실 함수(L))는, 현재 입력 이미지(I)에서 실측 자료 룸 타입(t)에 대한 키포인트(k)가 존재하면, 회귀자를 업데이트하기 위한 대응하는 키포인트 히트 맵들의 세트를 선택하기 위해 예측된 룸 타입 인덱스들을 효과적으로 사용하여, 유클리드 회귀 에러에만 페널티를 적용한다. (예컨대, 사이드 네트워크(304c)에 의해) 예측된 룸 타입이 최종 출력에서 예측된 키포인트 히트 맵을 선택하는 데 사용되도록, 룸넷(300)이 트레이닝된 후에(예컨대, 테스트 단계에서) 동일한 전략이 적용될 수 있다.
[0047] 키포인트 개선을 위한 룸넷 확장. RNN(recurrent neural network)들과 그들의 변형들인 LSTM(Long Short-Term Memory)은 순차적 데이터를 처리할 때 효과적인 모델들일 수 있다. 룸넷(300)의 실시예들은 입력 이미지(308)가 정적이더라도 재귀 구조들을 포함할 수 있다. 예컨대, 룸넷(300)은 재귀 콘볼루션 층들 및 콘볼루션 LSTM(convLSTM) 층들을 포함할 수 있다. 일부 실시예들에서, 룸넷(300)의 재귀 특징들은 CRF-RNN(conditional random fields as recurrent neural network)를 갖는 FCN(fully convolutional network), 반복 에러 피드백 네트워크들, 재귀 CNN들, 스택된 인코더-디코더, 및 재귀 인코더-디코더 네트워크들과 같은 모델들과 유사할 수 있다. 정적 입력을 모델링할 때, 시계열 개념을 통합하는 것은 일부 경우들에서 콘텍스트 정보를 통합하고 예측 에러를 감소시키기 위해 룸넷(300)의 능력을 상당히 향상시킬 수 있다.
[0048] 중앙 인코더-디코더 컴포넌트(336)(예컨대, 도 3의 중앙 파선 블록 참조)를 재귀하게 함으로써 기본 룸넷 아키텍처가 확장될 수 있다. 예컨대, 룸넷(300)은, 인공 시간(artificial time) ― 인공 시간 단계들(예컨대, 반복들)은 재귀 구조에 의해 생성됨 ― 에 걸쳐 반복함으로써 예측된 키포인트 히트 맵들 전부를 개선하기 위해 전형적인 재귀 뉴럴 네트워크(404a)(도 4a에 도시된 예 참조)의 거동을 모방하기 위해 MRED(memory augmented recurrent encoder-decoder) 구조(404b)(도 4b 참조)를 포함할 수 있다.
[0049] 이 MRED 구조(404b)의 각각의 층(312c-312e, 316a-316b)은, 동일한 층(
Figure pat00006
)에서 시간 단계(t-1)에서의 이전 예측(
Figure pat00007
), 및 이전 층(
Figure pat00008
)에서 시간 단계(t)에서의 현재 입력(
Figure pat00009
)으로부터의 인입 특징 맵들과 콘볼루션(* 심볼로 표기됨)하는, 상이한 시간 단계들(예컨대, 반복들)을 통해 동일한 가중치 행렬들을 공유하여, 수학식 2에 도시된 바와 같이, 시간 단계(t)에서의 출력을 생성할 수 있다.
Figure pat00010
여기서
Figure pat00011
Figure pat00012
는 층(
Figure pat00013
)에 대한 입력 및 피드-포워드 가중치들이고,
Figure pat00014
은 층(
Figure pat00015
)에 대한 바이어스이며, σ는 활성화 함수, 예컨대, ReLU(rectified linear unit) 활성화 함수이다.
[0050] 도 4b는 재귀 인코더-디코더 구조 내에서 깊이 및 시간을 통한 포워드 전파들 및 백워드 전파들 동안 정보 흐름의 예시적인 전체 프로세스를 도시한다. MRED(memory augmented recurrent encoder-decoder) 아키텍처(404b)는 현재 시간 단계에서의 추론을 돕는 이전 활성화를 저장하기 위한 은닉 유닛들(408a, 408b)을 포함한다. 제안된 MRED(404b) 아키텍처를 사용하는 비-제한적인 예시적인 장점들은 (1) 은닉/메모리 유닛들(예컨대, 재귀 콘볼루션 인코더-디코더 구조에서 탐색되지 않음)을 통해 반복적으로 키포인트들 사이의 콘텍스트 및 구조적 지식을 이용하는 것 또는 (2) 재귀 인코더-디코더에서 콘볼루션 층들의 가중치를 공유하는 것 ― 이는 고정된 수의 파라미터들을 갖는 훨씬 더 심층 네트워크를 생성함 ― 을 포함한다.
[0051] 개선 후, 키포인트들의 히트 맵들은 도 5a-5d의 최하부 행들에 도시된 바와 같이 훨씬 더 깨끗하다. 도 5a-5d는 개선되지 않은(최상부 행, 히트 맵들(508a-508d)) 그리고 개선된(최하부 행, 히트 맵들(512a-512d)) 단일 이미지들(중간 행, 이미지들(504a-504d))로부터의 예시적인 룸 레이아웃 키포인트 추정을 예시하는 이미지들을 도시한다. 다수의 채널들로부터의 키포인트 히트 맵들은 시각화를 위해 단일 2D(two dimensional) 이미지로 도시된다. 키포인트 개선 단계는 더 집중되고 더 깨끗한 히트 맵들을 생성하고, 존재하는 경우, 긍정 오류들(false positives)을 제거한다. MRED 아키텍처(404b)를 갖는 룸넷(300)의 실시예에 의해 개선들이 이루어졌다(도 5c-5d 참조).
[0052] 시간을 통한 심층 감시. 스택된, 반복 또는 재귀 콘볼루션 구조들을 적용할 때, 네트워크의 각각의 층은 더 많은 층들 및/또는 시간 단계들에 걸쳐 그래디언트들을 수신하여, 트레이닝하기에 훨씬 더 어려운 모델들을 발생시킬 수 있다. 예컨대, 반복 에러 피드백 네트워크는 멀티-스테이지 트레이닝을 요구할 수 있으며, 스택된 인코더-디코더 구조는, 배치 정규화(batch normalization)가 사용되는 경우에도, 각각의 인코더-디코더의 끝에서 중간 감시를 사용할 수 있다. 룸넷(300)의 트레이닝은 각각의 시간 단계 종료 시에 감시의 주입을 포함될 수 있다. 예컨대, 수학식 1에 도시된 손실 함수와 같은 동일한 손실 함수(L(604))는 모든 시간 단계들에 적용될 수 있다. 도 6b의 각각의 시간 단계의 종료 시에 주입되는 3개의 손실 함수들(L1(604a), L2(604b) 및 L3(604c))은 동일하거나 상이할 수 있다. 도 6a-6b는 시간을 통한 심층 감시가 없는(도 6a) 그리고 시간을 통한 심층 감시되는(도 6b) 메모리 증강 재귀 인코더-디코더 아키텍처들의 예들을 도시한다. 심층 감시는 시간을 통해 룸넷(300)의 성능을 향상시킬 수 있다.
예시적인 트레이닝
[0053] 데이터세트들. 룸넷(300)의 실시예들은 2개의 챌린징 벤치마크 데이터세트들(challenging benchmark datasets): Hedau 데이터세트 및 LSUN(Large-scale Scene Understanding Challenge) 룸 레이아웃 데이터세트에 대해 테스트되었다. Hedau 데이터세트는, 웹으로부터 그리고 LabelMe로부터 수집된 209개의 트레이닝, 53개의 검증(validation), 및 105개의 테스트 이미지들을 포함한다. LSUN 데이터세트는 SUN 데이터베이스로부터 샘플링된 4000개의 트레이닝, 394개의 검증 및 1000개의 테스트 이미지들로 구성된다. 모든 입력 이미지들은 320 x 320 픽셀들로 재스케일링되었고, LSUN 트레이닝 세트 상에서만 룸넷(300)을 처음부터(from scratch) 트레이닝하는 데 사용되었다. 모든 실험 결과들은 오리지널 이미지 스케일들에 대해 LSUN 룸 레이아웃 챌린지 툴킷(room layout challenge toolkit)을 사용하여 컴퓨팅되었다.
[0054] 구현 세부사항들. 룸넷(300)에 대한 입력은 해상도 320 x 320 픽셀들의 RGB 이미지이었고, 출력은 연관된 룸 타입 클래스 라벨을 갖는 해상도 40 x 40의 룸 레이아웃 키포인트 히트 맵들이었다. 다른 구현들에서, 이미지 해상도 또는 히트 맵 해상도는 상이할 수 있다. BPTT(backpropagation through time) 알고리즘들은 배치 크기 20 SGD(stochastic gradient descent), 0.5 드롭아웃 레이트, 0.9 모멘텀(momentum) 및 0.0005 중량 감쇠(weight decay)를 갖는 모델들을 트레이닝하는 데 적용됐다. 초기 학습 레이트는 0.00001이었고, 에포크(150과 200)에서 각각 5 배만큼 2번 감소했다. 모든 변형들은 총 225개의 에포크들을 갖는 동일한 방식을 사용했다. 인코더 및 디코더 가중치들이 초기화되었다. 배치 정규화 및 ReLU(rectified linear unit) 활성화 함수는 또한 트레이닝 프로세스를 향상시키기 위해 각각의 콘볼루션 층 후에 사용되었다. 입력 이미지들의 수평 플립핑(flipping)은 트레이닝 동안 데이터 증강으로서 사용되었다. 일부 실시예들에서, 룸넷(300)은 오픈 소스 심층 학습 프레임워크 Caffe로 구현될 수 있다.
[0055] 실측 자료 키포인트 히트 맵은 자신의 영역 대부분에 대해 0 값(백그라운드)을 가질 수 있고, 그 중 작은 부분만이 가우시안 분포(실제 키포인트 위치와 연관된 포어그라운드)에 대응한다. 따라서, 네트워크의 출력은 포어그라운드 및 백그라운드 분포들 사이의 불균형으로 인해 0으로 수렴하는 경향이 있을 수 있다. 일부 실시예들에서, 그래디언트들은 각각의 키포인트 히트 맵에 대한 포어그라운드 영역와 백그라운드 영역 사이의 비율에 기반하여 가중되었다. 백그라운드 픽셀들의 그래디언트들은 그들에 0.2의 계수를 곱함으로써 저하되었고, 이는 트레이닝을 상당히 더 안정되게 하였다. 일부 경우들에서, 백그라운드의 픽셀들은, 키포인트로부터 임계 거리, 예컨대, 실측 자료 히트 맵을 생성하는 데 사용되는 가우스 분포의 표준 편차보다 더 먼 픽셀들, 예컨대, 5개 초과의 픽셀들을 포함한다.
[0056] 룸넷의 일 실시예에 대해 4개의 NVIDIA Titan X GPU들에 대해 처음부터의 트레이닝은 약 40 시간이 걸렸다. 전체 모델의 하나의 포워드 추론(룸넷 재귀 3-반복)은 단일 GPU 상에서 83 ms가 걸렸다. 최종 테스트 예측들을 생성하기 위해, 오리지널 입력 및 플립된 버전의 이미지 둘 모두는 네트워크를 통해 실행되었고, 히트 맵들은 (키포인트 에러에 대한 0.12 % 평균 향상 및 픽셀 에러에 대한 0.15 % 평균 향상을 감안하여) 함께 평균화되었다. 키포인트 위치는 대응하는 히트 맵의 최대 활성화 위치가 되도록 선택되었다.
예시적인 성능
[0057] 일부 실시예들에서, 룸 레이아웃 추정 평가 메트릭들은 픽셀 에러들 및 키포인트 에러들을 포함할 수 있다. 픽셀 에러는 예측된 표면 라벨들과 실측 자료 라벨들 사이의 픽셀 단위 에러일 수 있다. 키포인트 에러는, 이미지 대각 길이로 정규화된, 예측된 키포인트와 주석이 달린 키포인트 위치들 사이의 평균 유클리드 거리일 수 있다.
[0058] 정확성. 데이터세트들 둘 모두에 대한 룸넷(300)의 성능이 표 1 및 2에 리스팅된다. 이전의 최상 방법은 2-단계 프레임워크(별개의 가설 순위 접근법을 사용한 픽셀당 CNN-기반 분할)였다. 본 개시내용의 룸넷(300)은 키포인트 에러 및 픽셀 에러 둘 모두에 대한 이전 결과들을 상당히 향상시키고 능가하여, 최신 성능을 달성할 수 있다. 사이드 헤드 룸 타입 분류자는 LSUN 데이터세트에 대해 81.5 % 정확도를 획득하였다.
방법 픽셀 에러 (%)
Hedau 및 그 외. (2009) 21.20
Del Pero 및 그 외. (2012) 16.30
Gupta 및 그 외. (2010) 16.20
Zhao 및 그 외. (2013) 14.50
Ramalingam 및 그 외. (2013) 13.34
Mallya 및 그 외. (2015) 12.83
Schwing 및 그 외. (2012) 12.8
Del Pero 및 그 외. (2013) 12.7
Dasgupta 및 그 외. (2016) 9.73
룸넷 재귀 3-반복 8.36
Hedau 데이터세트에 대한 룸넷 아키텍처의 성능.
방법 키포인트 에러 (%) 픽셀 에러 (%)
Hedau 및 그 외. (2009) 15.48 24.23
Mallya 및 그 외. (2015) 11.02 16.71
Dasgupta 및 그 외. (2016) 8.20 10.63
룸넷 재귀 3-반복 6.30 9.86
LSUN 데이터세트에 대한 룸넷 아키텍처의 성능.
방법 FPS
Del Pero 및 그 외. (2013) 0.001
Dasgupta 및 그 외. (2016) 0.03
룸넷 재귀 3-반복 5.96
룸넷 재귀 2-반복 8.89
롬넷 기본(어떠한 반복들도 없음) 19.26
320 픽셀들 x 320 픽셀들의 입력 크기에 대한 룸넷의 런타임 평가. 룸넷 전체 모델(제시간에 3번 반복됨)은 200 배의 속도 증가를 달성하였고, 기본 룸넷 모델(제시간에 어떠한 반복도 없음)은 다른 방법들과 비교하여 600 배의 속도 증가를 달성했다.
방법 키포인트 에러 (%) 픽셀 에러 (%)
룸넷 기본 6.95 10.46
룸넷 재귀 2-반복들 6.65 9.97
룸넷 재귀 3-반복들 6.30 9.86
LSUN 데이터세트에 대해 메모리 증강 재귀 인코더-디코더 아키텍처를 사용하는 키포인트 개선 단계의 영향.
모델 키포인트 에러 (%) 픽셀 에러 (%)
룸넷 재귀 2-반복
시간을 통한 심층 감시가 없는 경우 6.93 10.44
시간을 통한 심층 감시가 있는 경우 6.65 9.97
룸넷 재귀 3-반복
시간을 통한 심층 감시가 없는 경우 6.95 10.47
시간을 통한 심층 감시가 있는 경우 6.30 9.86
2 및 3번 재귀 반복되는 룸넷들에 대해 LSUN 데이터세트에 대한 시간을 통한 심층 감시의 영향.
[0059] 런타임 및 복잡성. 320 x 320의 입력 이미지 크기에 대한 효율 평가는 표 3에 도시된다. 전체 모델(룸넷 재귀 3 반복)은 다른 룸 레이아웃 추정 방법과 비교하여 200x 속도 증가를 달성하였고, 재귀 구조가 없는 기본 룸넷(룸넷 기본)은 600x 속도 증가를 달성했다. 타이밍은 본원에 설명된 바와 같이 2개의 포워드 패스들에 대한 것이었다. 제안된 룸넷(300) 중 어느 하나를 사용하는 것은 표 4에 도시된 바와 같이 상당한 추론 시간 감소 및 향상된 정확도를 제공할 수 있다.
예시적인 룸넷 분석
[0060] 재귀 대 직접 예측. 룸넷 아키텍처에서 각각의 컴포넌트의 영향은 LSUN 데이터세트로 조사되었다. 표 4는 룸넷 기본 아키텍처를 메모리 증강 재귀 인코더-디코더 네트워크들로 확장하는 효과를 도시한다. 더 많은 반복들이 키포인트 에러 및 픽셀 에러 둘 모두에 대해 더 낮은 에러 레이트들로 이어졌고, 정확한 키포인트 위치들로 반복적으로 회귀한 재귀 구조를 갖는 룸넷(300)이, 6.95 %의 키포인트 에러 및 10.46 픽셀 에러를 달성한, 재귀 구조가 없는 룸넷(300)과 비교하여, 6.3 % 키포인트 에러 및 9.86 픽셀 에러를 달성했다는 것이 관찰되었다. 3번의 반복 후에, 어떠한 추가의 상당한 성능 향상도 관찰되지 않았다. 이론에 의해 제한되지 않고서, 콘볼루션 층들의 가중치들이 반복들에 걸쳐 공유되기 때문에, 네트워크들 내에서 동일한 파라메트릭 용량으로부터 향상이 이루어질 수 있다.
[0061] 시간을 통한 심층 감시의 효과. 인코더-디코더 아키텍처를 갖는 재귀 구조를 적용할 때, 네트워크의 각각의 층은 깊이에 걸쳐 뿐만 아니라 시간 단계들을 통해 트레이닝 동안 입력과 최종 목적 함수 사이의 그래디언트들을 수신한다. 상이한 시간 단계들에서 보조 손실 함수들을 추가하는 것의 효과가 결정되었다. 표 5는 2 또는 3번의 재귀 반복들을 갖는 룸넷(300)을 사용하여 시간을 통한 심층 감시의 영향을 도시한다. 둘 모두의 경우들에 대해 보조 손실들을 추가함으로써 키포인트 에러 및 픽셀 에러 둘 모두에서 즉각적인 감소가 있다. 일부 실시예들에서, 심층 감시의 경우 학습 문제는 상이한 시간 단계들을 통해 더 용이할 수 있다. 시간을 통해 심층 감시가 적용되지 않았을 때, 제시간에 3번의 반복들을 갖는 룸넷(300)은 2번의 반복들을 갖는 룸넷(300)보다 더 불량하게 수행된다. 이것은 시간을 통한 심층 감시가 적용될 때 교정되었다. 일부 실시예들에서, 재귀 구조에서 반복들이 더 많은 경우에, 아키텍처를 성공적으로 트레이닝하기 위해 시간을 통한 심층 감시가 적용될 수 있다.
[0062] 질적 결과들. 룸넷(300)의 질적 결과들이 도 7a-7g에 도시된다. 도 7a-7g는 예시적인 룸넷 예측들 및 LSUN(Large-scale Scene Understanding Challenge) 데이터세트에 대한 대응하는 실측 자료를 도시하는 이미지들이다. 룸넷은 자신의 입력(704a-704g)으로서 RGB 이미지(각각의 도면의 제1 열에 도시됨)를 촬영하였고, 예시적인 룸 레이아웃 키포인트 히트 맵(708a-708g)(각각의 도면에서 제2 열)을 생성했다. 최종 키포인트들은 히트 맵으로부터 최대 응답을 갖는 위치를 추출함으로써 획득되었다. 각각의 도면의 제3 및 제4 열들은, 획득된 키포인트들을 도 2에서와 같이 특정 순서로 연결함으로써, 예시적인 상자모양의 룸 레이아웃 표현들(712a-712g, 716a-716g)을 도시한다. 제3 열의 상이한 표면들은, 천장, 바닥, 벽들 등을 식별하기 위한 레이아웃의 분할로부터 기인할 수 있는 상이한 교차-해치 패턴들로 도시된다. 룸넷 룸 레이아웃 출력(712a-712g)은 바닥, 천장 및 벽들을 상이한 교차-해치들로 도시한다. 표현들(716a-716g)에서, 룸 레이아웃은 개개의 입력 이미지(704a-704g) 상에 중첩된다. 각각의 도면의 제5 및 제6 열들은 실제 룸 레이아웃들에 대한 예시적인 실측 자료들(720a-720g, 724a-724g)을 도시한다. 룸 레이아웃들(712a-712g 및 716a-716g)(룸넷에 의해 결정됨)과 실제 실측 자료 레이아웃들(720a-720g 및 724a-724g) 사이의 대응관계들은 현저하다(striking). 이러한 예시적인 결과들은, 룸넷이 객체들(예컨대, 테이블들, 의자들, 침대들 등)에 의한 키포인트 폐색에 강건하다는 것을 보여준다. 이미지가 깨끗하였고 룸 레이아웃 경계들/코너들이 폐색되지 않았을 때, 룸넷(300)은 높은 정확도로 상자모양의 룸 레이아웃 표현을 복구할 수 있다. 룸넷 프레임워크는, 또한, 예컨대, 도 7b, 7c, 7d, 7f에 도시된 객체들(예컨대, 테이블들, 의자들, 침대들 등)에 의한 키포인트 폐색에 강건하였다.
[0063] 도 8a-8d는, 룸넷의 실시예로부터의 룸 레이아웃 예측들이 실측 자료 레이아웃들과 덜 양호하게 매칭되는 예들을 도시하는 예시적인 이미지들이다. 룸넷 예측들과 실측 자료 사이의 차이들은 본원에 설명된 바와 같이 추가로 감소되거나 제거될 수 있다. 각각의 도면의 제1 열은 예시적인 입력 이미지(804a-804d)를 도시한다. 각각의 도면의 제2 열은 예시적인 예측된 키포인트 히트 맵(808a-808d)을 도시한다. 각각의 도면의 제3 및 제4 열들은 획득된 예시적인 상자모양의 표현들(812a-812d, 816a-816d)을 도시한다. 제3 열의 다른 표면들은, 천장, 바닥, 벽들 등을 식별하기 위한 레이아웃의 분할로부터 기인할 수 있는 상이한 교차-해치 패턴들로 도시된다. 제5 및 제6 열들은 예시적인 실측 자료들(820a-820d, 824a-824d)을 도시한다. 룸 레이아웃 경계들이 거의 보이지 않을 때(예컨대, 도 8a 및 8c), 또는 장면의 정해진 이미지에 대해 하나 초과의 그럴듯한 룸 레이아웃이 존재할 때(예컨대, 도 8b 및 8d), 룸넷(300)의 추가의 향상들이 가능할 수 있다.
예시적인 대안적인 인코더-디코더
[0064] LSUN 데이터세트를 갖는 제안된 아키텍처의 각각의 컴포넌트의 효과는 경험적으로 결정되었다. 조사된 룸 레이아웃 추정 작업에 대한, 도 9a-9f에 도시된 6개의 대안적인 인코더-디코더 아키텍처들의 평가는: (a) 도 9a에 도시된 바닐라 인코더/디코더(900a)(룸넷 기본); (b) 도 9b에 도시된 스택된 인코더-디코더(900b); (c) 도 9c에 도시된 스킵-연결들을 갖는 스택된 인코더-디코더(900c); (d) 도 9d에 도시된 피드백을 갖는 인코더-디코더(900d); (e) 도 9e에 도시된 메모리 증강 재귀 인코더-디코더(룸넷 전체)(900e); 및 (f) 도 9f에 도시된 피드백을 갖는 메모리 증강 재귀 인코더-디코더(900f)를 포함하였다. 룸넷(300)의 일부 실시예들은 특정 작업들에 대해 룸넷(300)의 다른 실시예들에 비해 이점들을 가질 수 있으며; 예컨대, 룸넷의 일부 실시예들은 도 8a-8d에 도시된 차이들을 감소 또는 제거할 수 있다. 표 6은 LSUN 데이터세트에 대한 상이한 변형들의 성능을 도시한다.
모델 키포인트 에러 (%) 픽셀 에러 (%)
바닐라 enc-dec (룸넷 기본) 6.95 10.46
스택된 enc-dec 6.82 10.31
스킵 연결을 갖는 스택된 enc-dec 7.05 10.48
피드백을 갖는 Enc-dec 6.84 10.10
재귀 enc-dec (룸넷 전체) 6.30 9.86
피드백을 갖는 재귀 enc-dec 6.37 9.88
LSUN 데이터세트에 대한 인코더-디코더(enc-dec) 변형들의 평가. 재귀 인코더-디코더들이 3번의 반복 시간 단계들을 사용한다는 것이 주목된다.
[0065] (a) 및 (b) 구성들(900a, 900b)의 비교는, 네트워크가 다수의 병목 층들에 대한 제약들을 설정함으로써 암시적으로 룸 레이아웃 키포인트들의 공간 구조를 학습하도록 강제되기 때문에, 인코더-디코더 네트워크들을 스택하는 것이 성능을 추가로 향상시킬 수 있음을 나타낸다.
[0066] 그러나, (c) 구성(900c)에서와 같이 스킵 연결들을 추가하는 것은 테스트된 조건들 하에서 이 작업에 대한 성능을 향상시키지 않았다. 이것은, 트레이닝 세트(수천)의 크기가 평가된 다른 데이터세트들(수백만)만큼 크지 않고, 따라서 특정 데이터세트에 대해 층들을 스킵할 필요가 없기 때문일 수 있다.
[0067] (d) 구성(900d)에서와 같이 동일한 인코더-디코더 네트워크에 대한 새로운 입력으로서 입력 및 이전 예측의 연접(concatenation)으로서 구현된 피드백 루프를 추가하는 것은 성능을 향상시켰다. 각각의 반복에서, 네트워크는 현재 시간 단계에서 추론을 돕기 위해 오리지널 입력과 함께 지금까지의(thus-far) 차선의 예측에 액세스했다.
[0068] RNN으로서 거동하도록 (e) 구성(900e)에서 메모리 유닛들로 인코더-디코더가 재귀되게 하는 것은 가장 낮은 키포인트 에러 및 픽셀 에러(전체 룸넷 모델)를 획득한다. 재귀 인코더-디코더의 측면 연결들은 네트워크가 정보를 순방향으로 전달하고 향후 시간 단계들에서 예측을 도울 수 있게 하였다. (f) 구성(900f)에서 메모리 증강 재귀 인코더-디코더에 피드백 루프를 추가하는 것은 결과들을 향상시키지 않았다. (e) 구성(900e)의 메모리 증강 구조를 사용하는 것이 피드백 없이 이전의 은닉된 상태 정보를 이미 잘 저장할 수 있다는 것이 가능하였다. 인코더-디코더의 가중치 행렬들은 (b) 및(c) 구성들(900b, 900c)에서 공유되지 않았지만 (d), (e) 및 (f) 구성들(900d, 900e, 900f)에서 공유되어, 파라메트릭적으로 더 효율적인 아키텍처들을 발생시켰다.
[0069] 사전-트레이닝에 의한 특징 전송. 외부 데이터로 인한 성능 게인들을 디커플링하기 위해, (의미론적 분할 작업에 대한) SUN 사전-트레이닝된 모델로부터 룸넷을 미세-튜닝한 결과들이 결정되었다. 표 7에 도시된 바와 같이, 이러한 룸넷은, LSUN 데이터세트에 대해 적어도 7.95 % 키포인트 에러 및 9.31 % 픽셀 에러를 갖는 다른 방법들과 비교하여, 6.09 % 키포인트 에러 및 9.04 %의 픽셀 에러를 달성했다. 표 7은 추가 데이터 또는 사전-트레이닝된 모델들을 사용한 룸 레이아웃 추정 결과들을 반영한다. 일부 실시예들에서, 룸넷은 추가적인 Hedau + 트레이닝 세트를 사용하여 트레이닝되고, NYUDv2 RGBD(RGB + 깊이) 사전-트레이닝된 모델들로부터 미세-튜닝될 수 있다. 표 7은 PASCAL 및 SUN 사전-트레이닝된 룸넷의 미세-튜닝의 결과들을 도시한다. SUN 사전-트레이닝된 룸넷은 LSUN 데이터세트에 대해 가장 낮은 키포인트 에러 및 픽셀 에러를 달성했다.
모델 키포인트 에러 (%) 픽셀 에러 (%)
Ren 및 그 외. 7.95 9.31
룸넷 재귀 3-반복들
PASCAL 사전-트레이닝의 경우 6.43 9.16
SUN 사전-트레이닝의 경우 6.09 9.04
LSUN 데이터세트에 대한 사전-트레이닝 기술들을 사용한 방법들의 평가.
[0070] 일부 실시예들에서, 룸넷(300)은 인입 신호가 재귀 유닛들의 상태를 변경할 수 있게 하는 게이팅 메커니즘을 포함할 수 있다. 일부 실시예들에서, 룸넷(300)은 순차 데이터를 사용하여 트레이닝되고 그리고/또는 순차 데이터를 사용하여 빌딩 룸 레이아웃 맵들을 예측할 수 있다.
룸넷을 트레이닝하는 예시적인 프로세스
[0071] 도 10은 룸넷을 트레이닝하는 예시적인 프로세스(1000)의 흐름도이다. 프로세스(1000)는 이미지들, 룸넷 아키텍처 및 파라미터들(예컨대, NN 가중치들), 룸 타입들, 2D 키포인트 위치들(예컨대, 히트 맵들), 룸 레이아웃들 등을 저장하도록 구성된 비-일시적 메모리를 포함하는 하드웨어 프로세서에 의해 수행될 수 있다.
[0072] 프로세스(1000)는, 많은 타입들의 룸들에 대한 트레이닝 룸 이미지들 및 룸 타입들이 수신되는 블록(1004)에서 시작한다. 트레이닝 룸 이미지들 각각은, 룸 레이아웃(예컨대, 바닥, 천장, 벽(들))을 식별하는 기준 키포인트들 및 기준 룸 타입과 연관될 수 있다. 일부 경우들에서, 트레이닝 이미지들에는, 이미지에 도시된 룸에 대한 실측 자료(예컨대, 키포인트 위치 및 룸 타입)를 나타내기 위해 손으로 주석이 달린다. 트레이닝 룸 이미지는 단안 이미지, RGB(Red-Green-Blue) 이미지 등일 수 있다. 트레이닝 이미지들은 Hedau 데이터세트 또는 LSUN 데이터세트로부터 획득 가능하다.
[0073] 프로세스(1000)는 트레이닝된 룸넷의 성능을 향상시키기 위해 데이터 증강 전략(예컨대, 수평으로 플립된 이미지들로 트레이닝 데이터를 증강시킴)을 수행하는 것을 포함할 수 있다. 룸 타입들의 수는 상이한 구현들에서 2, 3, 5, 10, 11, 15, 20 이상과 같이 상이할 수 있다. 룸 타입은 키포인트 순서와 연관된 복수의 키포인트들과 연관될 수 있다. 키포인트들은 룸 레이아웃을 제공하기 위해 키포인트 순서로 연결될 수 있다. 키포인트들의 수는 상이한 구현들에서 2, 3, 5, 6, 8, 10, 20, 50 이상과 같이 상이할 수 있다.
[0074] 블록(1008)에서, 룸 레이아웃 추정을 위한 뉴럴 네트워크(예컨대, 룸넷)가 생성될 수 있다. 본원에 설명된 바와 같이, 룸넷의 실시예는 인코더 서브-네트워크, 인코더 네트워크에 연결된 디코더 서브-네트워크, 및 인코더 네트워크에 연결된 사이드 헤드 또는 서브-네트워크를 포함할 수 있다. 인코더 서브-네트워크는 복수의 콘볼루션 층들 및 복수의 풀링 층들을 포함할 수 있다. 디코더 서브-네트워크는 복수의 콘볼루션 층들 및 복수의 업샘플링 층들을 포함할 수 있다. 디코더 서브-네트워크의 디코더 층의 가중치들은 인코더 서브-네트워크의 대응하는 인코더 층의 가중치들을 포함할 수 있다. 대안적으로 또는 부가적으로, 디코더 서브-네트워크의 디코더 층의 가중치들은 인코더 서브-네트워크의 대응하는 인코더 층의 가중치들과 동일할 수 있다. 일부 실시예들에서, 인코더 서브-네트워크 및 디코더 서브-네트워크는 재귀 인코더-디코더 구조(예컨대, MRED(memory-augmented recurrent encoder-decoder) 네트워크)를 형성하기 위해 복수의 재귀 층들을 포함한다. 재귀 층들의 재귀 반복들의 수는 2, 3, 5, 10 이상일 수 있다. 일부 실시예들에서, 재귀 층들의 반복들 중 제1 재귀 반복과 연관된 가중치들은 재귀 층들의 제2 재귀 반복과 연관된 가중치들과 동일하다.
[0075] 인코더 서브-네트워크 및 디코더 서브-네트워크는 상이한 구현들에서 상이한 아키텍처들을 가질 수 있다. 예컨대, 인코더 서브-네트워크 및 디코더 서브-네트워크는 스택된 인코더-디코더 아키텍처를 가질 수 있다. 다른 예로서, 인코더 서브-네트워크 및 디코더 서브-네트워크는 스킵-연결들을 갖는 스택된 인코더-디코더 아키텍처를 가질 수 있다. 또 다른 예로서, 인코더 서브-네트워크 및 디코더 서브-네트워크는 피드백을 갖는 스택된 인코더-디코더 아키텍처를 가질 수 있다. 일 예에서, 인코더 서브-네트워크 및 디코더 서브-네트워크는 MRED(memory augmented recurrent encoder-decoder) 아키텍처를 갖는다. 다른 예에서, 인코더 서브-네트워크 및 디코더 서브-네트워크는 피드백을 갖는 MRED(memory augmented recurrent encoder-decoder) 아키텍처를 갖는다. 일부 실시예들에서, 재귀 층을 갖는 룸넷의 특징 맵들은 수학식 2를 사용하여 결정될 수 있다.
[0076] 블록(1012)에서, 룸 타입들 각각에 대한 복수의 예측된 2D 키포인트들은 룸넷의 인코더 서브-네트워크 및 디코더 서브-네트워크 및 트레이닝 룸 이미지를 사용하여 결정될 수 있다. 트레이닝 룸 이미지의 치수는 예측된 히트 맵의 치수보다 더 작거나 동일하거나 더 클 수 있다. 일부 경우들에서, 2D 키포인트 위치들은 히트 맵들로부터 (예컨대, 히트 맵들의 최대치들로서) 추출될 수 있다.
[0077] 블록(1016)에서, 예측된 룸 타입은 룸넷의 인코더 서브-네트워크 및 사이드 서브-네트워크 및 트레이닝 룸 이미지를 사용하여 결정될 수 있다. 예컨대, 사이드 서브-네트워크는 완전히 연결된 층들과 같은 복수의 층들을 포함할 수 있다. 일부 실시예들에서, 사이드 서브-네트워크는 3개의 완전히 연결된 층들을 포함한다. 사이드 서브-네트워크의 출력 층의 치수 및 복수의 룸 타입들의 수는 동일할 수 있다.
[0078] 블록(1020)에서, 프로세스(1000)는 트레이닝 이미지의 기준 키포인트들에 대한 예측된 키포인트들의 에러들을 나타내는 제1 손실 및 트레이닝 이미지의 기준 룸 타입에 대한 예측된 룸 타입의 에러를 나타내는 제2 손실에 기반하여 손실 함수를 최적화(예컨대, 감소 또는 최소화)할 수 있다. 손실 함수(L)의 예는 수학식 1을 참조하여 설명된다. 제1 손실은 예측된 키포인트들과 기준 키포인트들 사이의 유클리드 손실일 수 있다. 일부 구현들에서, 예측된 키포인트들은 히트 맵으로 표현되고, 기준(예컨대, 실측 자료) 키포인트들에 대한 기준 히트 맵은 기준 키포인트 위치들에 중심을 준 가우시안을 배치함으로써 생성될 수 있다. 입력 트레이닝 이미지에서 기준 룸 타입에 대해 키포인트가 존재하는 경우에만, 예측된 키포인트에 패널티를 적용하기 위해 제1 손실이 설정될 수 있다. 제2 손실은, 사이드 서브-네트워크가 정확한 룸 타입에 대해 높은 신뢰도 값을 생성하도록 독려하는 룸 타입 분류자(예컨대, 룸 타입 사이드 서브-네트워크로부터의 출력)에 기반한 교차-엔트로피(예컨대, 로그) 손실일 수 있다.
[0079] 일부 실시예들에서, 제1 손실을 결정하는 것은 기준 키포인트들을 사용하여 기준 히트 맵을 결정하는 것, 및 예측된 키포인트들에 대한 기준 히트 맵과 예측된 히트 맵 사이의 차이를 결정하는 것을 포함한다. 기준 히트 맵은 각각의 기준 키포인트 위치 둘레에 중심을 둔 분포를 포함할 수 있다. 분포는 2-차원 가우시안 분포를 포함할 수 있다. 가우시안 분포는, 예컨대, 2, 3, 5, 10 이상의 픽셀들의 표준 편차를 가질 수 있다. 가우시안 분포는 5 %, 10 %, 20 %, 25 % 이상과 같이 기준 히트 맵의 차원의 표준 편차의 퍼센티지를 가질 수 있다. 일부 실시예들에서, 기준 히트 맵을 결정하는 것은, 예컨대, 픽셀 값들에 0.1, 0.2, 0.3과 같이 1보다 작은 감소 계수(degrading factor)를 곱함으로써, 기준 키포인트 위치들로부터 떨어진 픽셀들의 임계 수인 픽셀들의 값들을 감소시키는 것을 포함할 수 있다.
[0080] 블록(1024)에서, 룸넷에 대한 뉴럴 네트워크 파라미터들은 최적화된 손실 함수에 기반하여 업데이트될 수 있다. 일부 실시예들에서, 룸넷의 가중치들은 역 전파(back propagation)에 의해 업데이트될 수 있다.
[0081] 프로세스(1000)는, 감소되거나 최소화된 에러들(예컨대, 위에서 설명된 픽셀 에러들 또는 키포인트 에러들)을 갖는 강건한 뉴럴 네트워크 모델을 생성하도록 뉴럴 네트워크를 튜닝하기 위해, 트레이닝 이미지 세트(예컨대, Hedau 또는 LSUN 데이터세트들) 내의 트레이닝 이미지들 각각에 대해 반복될 수 있다. 룸넷의 실시예는 프로세스(1000)를 사용하여 트레이닝되고, 이어서 증강 또는 혼합 현실, 실내 내비게이션, 장면 재구성 또는 렌더링 등에서 실세계 이미지들에 적용될 수 있다.
룸 레이아웃 추정에 룸넷을 사용하는 예시적인 프로세스
[0082] 도 11은 룸 이미지로부터 룸 레이아웃을 추정하기 위해 룸넷을 사용하는 예시적인 프로세스(1100)의 흐름도이다. 프로세스(1100)는 이미지들, 룸넷 아키텍처 및 파라미터들(예컨대, NN 가중치들), 룸 레이아웃 타입들, 히트 맵들, 룸 레이아웃들 등을 저장하도록 구성된 비-일시적 메모리를 포함하는 하드웨어 프로세서에 의해 수행될 수 있다. 도 12를 참조하여 후술되는 바와 같이, 웨어러블 디스플레이 시스템(1200) 또는 로봇 시스템은 프로세스(1100)의 실시예를 구현하도록 구성될 수 있다.
[0083] 프로세스(1100)는, 시스템(예컨대, 도 12를 참조하여 설명된 웨어러블 디스플레이 시스템(1200))이 가능한 룸 장면을 포함하는 입력 이미지를 수신하는 블록(1104)에서 시작한다. 이미지는 하나의 룸 장면을 포함할 수 있다. 이미지는 컬러 이미지(예컨대, RGB 또는 RGB-D)를 포함할 수 있고, 이미지는 단안일 수 있다. 이미지는 비디오의 프레임일 수 있고, 도 12를 참조하여 설명된 웨어러블 디스플레이 시스템(1200)의 외향 이미징 시스템(1244)을 사용하여 획득될 수 있다.
[0084] 블록(1108)에서, 웨어러블 디스플레이 시스템(1200)은 도 10에 도시된 프로세스(1000)에 의해 트레이닝된 룸넷과 같은, 룸 레이아웃 추정을 위한 뉴럴 네트워크(룸넷)에 액세스할 수 있다. 룸넷은 인코더 서브-네트워크, 인코더 네트워크에 연결된 디코더 서브-네트워크, 및 인코더 네트워크에 연결된 사이드 서브-네트워크를 포함할 수 있다. 일부 실시예들에서, 인코더 서브-네트워크 및 디코더 서브-네트워크는 복수의 재귀 층들을 포함한다. 예컨대, 인코더-디코더 서브-네트워크는 MRED(memory-augmented recurrent encoder-decoder) 네트워크를 포함할 수 있다. 재귀 층을 갖는 룸넷의 특징 맵들은 위의 수학식 2를 사용하여 결정될 수 있다. 룸넷의 아키텍처들은 상이한 구현들에서 상이할 수 있다. 예컨대, 인코더 서브-네트워크 및 디코더 서브-네트워크는 스택된 인코더-디코더 아키텍처를 포함할 수 있다. 다른 예로서, 인코더 서브-네트워크 및 디코더 서브-네트워크는 복수의 스킵 연결들을 포함할 수 있다. 일 예에서, 사이드 서브-네트워크는 복수의 피드백 층들을 포함한다.
[0085] 블록(1112)에서, 프로세스(1100)는, 룸넷의 인코더 서브-네트워크 및 디코더 서브-네트워크 및 룸 이미지를 사용하여, 복수의 룸 타입들 각각에 대응하는 복수의 2D 키포인트들을 결정할 수 있다. 2D 키포인트들은 히트 맵과 연관될 수 있으며, 키포인트 위치들은 히트 맵에서 발생하는 최대치들로서 히트 맵으로부터 추출될 수 있다. 룸 타입들의 수는 5보다 클 수 있다(예컨대, 일부 경우들에서 11).
[0086] 블록(1116)에서, 웨어러블 디스플레이 시스템(1200)은, 룸넷의 사이드 서브-네트워크 및 룸 이미지를 사용하여, 복수의 룸 타입들로부터 예측된 룸 타입을 결정할 수 있다.
[0087] 블록(1120)에서, 프로세스(1100)는 예측된 룸 타입 및 2D 키포인트들로부터 룸 이미지에서 룸의 레이아웃을 결정할 수 있다. 룸 레이아웃은 예측된 룸 타입과 연관된 키포인트 순서를 갖는 순서화된 키포인트들을 포함할 수 있다. 키포인트들의 수는 상이한 구현들에서 2, 3, 4, 6, 8, 10 이상과 같이 상이할 수 있다. 룸 레이아웃은 천장, 바닥, 벽 등과 같은 레이아웃 표면의 식별과 같은 레이아웃 표면들의 의미론적 분할을 포함할 수 있다. 의미론적 분할은 순서화된 2D 키포인트들로부터 도출될 수 있다. 따라서, 뉴럴 네트워크는, 연관된 룸 타입에 대해 특정 순서일 수 있는 2D 키포인트들을 사용하여 3D 룸 레이아웃 구조를 제공할 수 있다.
[0088] 블록(1124)에서, 프로세스(1100)는 자율 실내 내비게이션, 장면 재구성 또는 렌더링 등을 위해 증강 또는 혼합 현실 애플리케이션에서 룸 레이아웃을 활용할 수 있다.
[0089] 웨어러블 디스플레이 시스템(1200)(도 12를 참조하여 후술됨)은 입력 이미지에서 룸의 예측된 레이아웃에 기반하여 시스템의 사용자와 상호작용할 수 있다. 일부 실시예들에서, 웨어러블 디스플레이 시스템(1200)은 (예컨대, 룸 레이아웃 및 (선택적으로) 원하는 위치로의 경로를 렌더링함으로써), 예컨대, 사용자를 룸의 원하는 위치로 안내하기 위해, 룸 이미지에서 룸의 예측된 레이아웃에 기반하여 실내 내비게이션을 수행할 수 있다. 다른 실시예들에서, 웨어러블 디스플레이 시스템(1200)은 룸 이미지에서 룸의 예측된 레이아웃에 기반하여 룸 이미지의 장면을 재구성할 수 있다.
예시적인 NN 층들
[0090] 위에 설명된 바와 같이, 룸넷의 실시예들은 뉴럴 네트워크를 포함할 수 있다. DNN(deep neural network)과 같은 NN(neural network)의 층은 그의 입력에 선형 또는 비선형 변환을 적용하여 그의 출력을 생성할 수 있다. 심층 뉴럴 네트워크 층은 정규화 층, 콘볼루션 층, 소프트사인 층, 교정된 선형 층, 연접 층, 풀링 층, 재귀 층, 인셉션-유사(inception-like) 층 또는 이들의 임의의 조합일 수 있다. 정규화 층은 예컨대, 유클리드 또는 L2 정규화를 통해 그의 출력을 생성하기 위해 그의 입력의 밝기를 정규화할 수 있다. 정규화 층은 예컨대, 그의 출력으로서 복수의 정규화된 이미지들을 생성하기 위해 서로에 대해 복수의 이미지들의 밝기를 한 번에 정규화할 수 있다. 밝기를 정규화하기 위한 방법들의 비-제한적인 예들은 LCN(local contrast normalization) 또는 LRN(local response normalization)을 포함한다. 로컬 콘트라스트 정규화는 0의 평균 및 1의 분산(또는 평균 및 분산의 다른 값들)을 갖도록 픽셀 단위로 이미지의 로컬 구역들을 정규화함으로써 이미지의 콘트라스트를 비선형적으로 정규화할 수 있다. 로컬 응답 정규화는 0의 평균 및 1의 분산(또는 평균 및 분산의 다른 값들)을 갖도록 로컬 입력 구역들에 걸쳐 이미지를 정규화할 수 있다. 정규화 층은 트레이닝 프로세스의 속도를 높일 수 있다.
[0091] 콘볼루션 층은 그의 입력을 콘볼루션(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 이미지로 다운샘플링할 수 있다. 풀링 함수의 비-제한적인 예들은 최대 풀링, 평균 풀링 또는 최소 풀링을 포함한다.
[0092] 시점(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 층, 연접 층, 풀링 층, 또는 이들의 임의의 조합 중 하나 이상을 포함할 수 있다.
[0093] NN 내의 층들의 수는 상이한 구현들에서 상이할 수 있다. 예컨대, DNN 내의 층들의 수는 50개, 100개, 200개 이상일 수 있다. 심층 뉴럴 네트워크 층의 입력 타입은 상이한 구현들에서 상이할 수 있다. 예컨대, 층은 그의 입력으로서 다수의 층들의 출력들을 수신할 수 있다. 층의 입력은 5개의 층들의 출력들을 포함할 수 있다. 다른 예로서, 층의 입력은 NN 층들 중 1 %를 포함할 수 있다. 층의 출력은 다수의 층들의 입력들일 수 있다. 예컨대, 층의 출력은 5개의 층들의 입력들로서 사용될 수 있다. 다른 예로서, 층의 출력은 NN의 층들 중 1 %의 입력들로서 사용될 수 있다.
[0094] 층의 입력 크기 또는 출력 크기는 상당히 클 수 있다. 층의 입력 크기 또는 출력 크기는 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, 이상일 수 있다.
[0095] 일부 실시예들에서, NN은 NN의 출력을 함께 컴퓨팅하는 복수의 NN들을 지칭할 수 있다. 복수의 NN들 중의 상이한 NN들은 상이한 작업들을 위해 트레이닝될 수 있다. 프로세서(예컨대, 도 12를 참조하여 설명되는 로컬 데이터 프로세싱 모듈(1224)의 프로세서)는 NN의 출력을 결정하기 위해 복수의 NN들 중의 NN들의 출력들을 컴퓨팅할 수 있다. 예컨대, 복수의 NN들 중의 NN의 출력은 우도(likelihood) 스코어를 포함할 수 있다. 프로세서는 복수의 NN들 중 상이한 NN들의 출력들의 우도 스코어들에 기반하여, 복수의 NN들을 포함하는 NN의 출력을 결정할 수 있다.
예시적인 웨어러블 디스플레이 시스템
[0096] 일부 실시예들에서, 사용자 디바이스는 웨어러블 디스플레이 디바이스들일 수 있거나 이에 포함될 수 있으며, 이는 보다 몰입형 VR(virtual reality), AR(augmented reality), 또는 MR(mixed reality) 경험을 유리하게 제공할 수 있고, 여기서, 디지털방식으로 재생된 이미지들 또는 이미지들의 부분들은, 그것들이 실제인 것으로 보이거나, 실제로서 지각될 수 있는 방식으로 착용자에게 제시된다.
[0097] 이론에 의해 제한됨이 없이, 인간 눈이 통상적으로 깊이 지각을 제공하기 위하여 유한 수의 깊이 평면들을 해석할 수 있다고 여겨진다. 결과적으로, 지각된 깊이의 매우 그럴듯한 시뮬레이션은, 눈에, 이들 제한된 수의 깊이 평면들 각각에 대응하는 이미지의 상이한 프리젠테이션들을 제공함으로써 달성될 수 있다. 예컨대, 도파관들의 스택을 포함하는 디스플레이들은 사용자, 또는 뷰어의 눈들의 전면에 포지셔닝되게 착용되도록 구성될 수 있다. 도파관들의 스택은, 이미지 주입 디바이스(예컨대, 이산 디스플레이들, 또는 하나 이상의 광섬유들을 통해 이미지 정보를 파이핑(pipe)하는 멀티플렉싱된 디스플레이의 출력 단부들)로부터의 광을 특정 도파관과 연관된 깊이 평면에 대응하는 특정 각도들(및 발산 양들)로 뷰어의 눈으로 지향시키기 위해 복수의 도파관들을 사용함으로써 눈/뇌에 3차원 지각을 제공하는데 활용될 수 있다.
[0098] 일부 실시예들에서, 도파관들의 2개의 스택들(뷰어의 각각의 눈마다 하나씩)은 각각의 눈에 상이한 이미지들을 제공하기 위해 활용될 수 있다. 일 예로서, 증강 현실 장면은 AR 기술의 착용자가 배경에 있는 사람들, 나무들, 빌딩들, 및 콘크리트 플랫폼을 특징으로 하는(featuring) 실세계 공원-형 세팅을 보도록 이루어질 수 있다. 이들 아이템들에 더하여, AR 기술의 착용자는 또한, 그가 실세계 플랫폼 상에 서 있는 로봇 동상, 및 호박벌의 의인화인 것으로 보여지는 날고 있는 만화-형 아바타 캐릭터를 "보는 것"을 지각할 수 있더라도, 로봇 동상 및 호박벌은 실세계에 존재하지 않는다. 도파관들의 스택(들)은 입력 이미지에 대응하는 광 필드를 생성하는 데 사용될 수 있고, 일부 구현들에서 웨어러블 디스플레이는 웨어러블 광 필드 디스플레이를 포함한다. 광 필드 이미지들을 제공하기 위한 웨어러블 디스플레이 디바이스 및 도파관 스택들의 예들은 미국 특허 공보 제2015/0016777호에서 설명되며, 이로써, 이 특허 공보는 그것이 포함하는 전부에 대해 그 전체가 인용에 의해 본원에 포함된다.
[0099] 도 12는 디스플레이 시스템 착용자 또는 뷰어(1204)에 VR, AR 또는 MR 경험을 제시하는 데 사용될 수 있는 웨어러블 디스플레이 시스템(1200)의 예를 예시한다. 웨어러블 디스플레이 시스템(1200)은 본원에서 설명된 애플리케이션들 또는 실시예들(예컨대, 룸넷을 사용하여 룸 레이아웃을 추정하는 것) 중 임의의 것을 수행하도록 프로그래밍될 수 있다. 디스플레이 시스템(1200)은 디스플레이(1208), 및 그 디스플레이(1208)의 기능을 지원하기 위한 다양한 기계 및 전자 모듈들 및 시스템들을 포함한다. 디스플레이(1208)는, 디스플레이 시스템 착용자 또는 뷰어(1204)에 의해 착용 가능하고 그리고 착용자(1204)의 눈들의 전면에 디스플레이(1208)를 포지셔닝하도록 구성된 프레임(1212)에 커플링될 수 있다. 디스플레이(1208)는 광 필드 디스플레이일 수 있다. 일부 실시예들에서, 스피커(1216)는 프레임(1212)에 커플링되고 사용자의 외이도에 인접하게 포지셔닝되고, 일부 실시예들에서, 도시되지 않은 다른 스피커가 사용자의 다른 외이도에 인접하게 포지셔닝되어 스테레오/성형 가능(shapeable) 사운드 제어를 제공한다. 디스플레이 시스템(1200)은 착용자(1204) 주위의 환경의 이미지들(예컨대, 정지 이미지들 또는 비디오)을 획득할 수 있는 외향 이미징 시스템(1244)(예컨대, 하나 이상의 카메라들)을 포함할 수 있다. 외향 이미징 시스템(1244)에 의해 획득된 이미지들은, 착용자(1204) 주위의 환경에서 룸 레이아웃의 표현을 결정하기 위해 룸넷의 실시예들에 의해 분석될 수 있다.
[0100] 디스플레이(1208)는 이를테면, 유선 리드 또는 무선 연결성에 의해, 다양한 구성들로 장착될 수 있는, 이를테면, 프레임(1212)에 고정되게 부착되거나, 사용자에 의해 착용된 헬멧 또는 모자에 고정되게 부착되거나, 헤드폰들에 내장되거나, 그렇지 않으면 사용자(1204)에게 제거 가능하게 부착될 수 있는 (예컨대, 백팩(backpack)-스타일 구성으로, 벨트-커플링 스타일 구성으로) 로컬 데이터 프로세싱 모듈(1224)에 동작 가능하게 커플링(1220)된다.
[0101] 로컬 프로세싱 및 데이터 모듈(1224)은 하드웨어 프로세서뿐만 아니라 비일시적인 디지털 메모리 이를테면, 비-휘발성 메모리(예컨대, 플래시 메모리)를 포함할 수 있고, 이 둘 모두는 데이터의 프로세싱, 캐싱(caching) 및 저장을 보조하기 위해 활용될 수 있다. 데이터는 a) 센서들(예컨대 프레임(1212)에 동작 가능하게 커플링되거나 그렇지 않으면 착용자(1204)에게 부착될 수 있음), 이를테면, 이미지 캡처 디바이스들(이를테면, 카메라들), 마이크로폰들, 관성 측정 유닛들, 가속도계들, 컴퍼스(compass)들, GPS 유닛들, 라디오 디바이스들, 및/또는 자이로(gyro)들로부터 캡처되고; 및/또는 b) 원격 프로세싱 모듈(1228) 및/또는 원격 데이터 저장소(repository)(1232)를 사용하여 취득 및/또는 프로세싱되는 (가능하게는, 이러한 프로세싱 또는 리트리벌 후 디스플레이(1208)에 전달하기 위한) 데이터를 포함할 수 있다. 로컬 프로세싱 및 데이터 모듈(1224)은 통신 링크들(1236, 1240)에 의해, 이를테면, 유선 또는 무선 통신 링크들을 통해 원격 프로세싱 모듈(1228) 및 원격 데이터 저장소(1232)에 동작 가능하게 커플링될 수 있어서, 이들 원격 모듈들(1228, 1232)은 서로 동작 가능하게 커플링되고 자원들로서 로컬 프로세싱 및 데이터 모듈(1224)에 대해 이용 가능하게 된다. 이미지 캡처 디바이스(들)는 눈 이미지 분할, 또는 눈 추적 절차들에서 사용되는 눈 이미지들을 캡처하는 데 사용될 수 있다.
[0102] 일부 실시예들에서, 원격 프로세싱 모듈(1228)은 데이터 및/또는 이미지 정보, 이를테면, 이미지 캡처 디바이스에 의해(예컨대, 룸넷을 수행함으로써) 캡처된 비디오 정보를 분석 및 프로세싱하도록 구성된 하나 이상의 프로세서들을 포함할 수 있다. 비디오 데이터는 로컬 프로세싱 및 데이터 모듈(1224) 및/또는 원격 데이터 저장소(1232)에 로컬로 저장될 수 있다. 일부 실시예들에서, 원격 데이터 저장소(1232)는 "클라우드" 자원 구성에서 인터넷 또는 다른 네트워킹 구성을 통하여 이용 가능할 수 있는 디지털 데이터 저장 설비를 포함할 수 있다. 일부 실시예들에서, 모든 데이터는 저장되고 모든 컴퓨테이션들은 로컬 프로세싱 및 데이터 모듈(1224)에서 수행되어, 원격 모듈로부터 완전히 자율적인 사용을 허용한다.
[0103] 일부 구현들에서, 로컬 프로세싱 및 데이터 모듈(1224) 및/또는 원격 프로세싱 모듈(1228)은 룸 레이아웃을 결정하기 위해 룸넷의 실시예들을 수행하도록 프로그래밍된다. 예컨대, 로컬 프로세싱 및 데이터 모듈(1224) 및/또는 원격 프로세싱 모듈(1228)은 도 11을 참조하여 설명된 프로세스(1100)의 실시예들을 수행하도록 프로그래밍될 수 있다. 로컬 프로세싱 및 데이터 모듈(1224) 및/또는 원격 프로세싱 모듈(1228)은 본원에서 개시된 룸 레이아웃 추정 방법(1100)을 수행하도록 프로그래밍될 수 있다. 이미지 캡처 디바이스는 특정 애플리케이션(예컨대, 일반적으로, AR(augmented reality) 또는 MR(mixed reality), 인간-컴퓨터 상호작용(human-computer interaction; HCI), 자율주행 차량들, 드론들 또는 로봇공학)에 대한 비디오를 캡처할 수 있다. 비디오(또는 비디오로부터의 하나 이상의 프레임들)는 계산적인 룸넷 아키텍처의 실시예를 사용하여 프로세싱 모듈들(1224, 1228) 중 하나 또는 둘 모두에 의해 분석될 수 있다. 일부 경우들에서, 룸넷 분석 중 적어도 일부를 (예컨대, "클라우드"의) 원격 프로세싱 모듈에 오프-로딩(off-loading)하는 것은 컴퓨테이션들의 속도 또는 효율성을 개선할 수 있다. 룸넷 뉴럴 네트워크의 파라미터들(예컨대, 가중치들, 바이어스 기간(bias term)들, 풀링 층들에 대한 서브샘플링 팩터들, 상이한 층들에서의 커널들의 수 및 크기, 특징 맵들의 수, 룸 레이아웃 타입들, 키포인트 히트 맵들 등)은 데이터 모듈들(1224 및/또는 1232)에 저장될 수 있다.
[0104] 룸넷 분석의 결과들(예컨대, 방법(1100)의 출력)은 부가적인 동작들 또는 프로세싱을 위해 프로세싱 모듈들(1224, 1228) 중 하나 또는 둘 모두에 의해 사용될 수 있다. 예컨대, 웨어러블 디스플레이 시스템(1200)의 프로세싱 모듈들(1224, 1228)은, 방법(1100)의 출력에 기반하여, 추가적인 애플리케이션들, 이를테면, 증강 또는 혼합 현실, 실내 내비게이션 또는 장면 재구성 또는 렌더링을 수행하도륵 프로그래밍될 수 있다. 따라서, 웨어러블 시스템(200)은 룸 레이아웃들을 실시간으로 제공하기 위해 룸넷을 사용할 수 있다.
[0105] 예컨대, 웨어러블 디스플레이 시스템(1200)은, 객체들, 벽들, 바닥들, 천장, 문들 등이 혼합 현실 환경에서 서로에 대해 위치되는 곳을 설명하는 세계 맵(예컨대, 로컬 또는 원격 데이터 저장소(1224, 1240)에 저장됨)을 활용할 수 있다. 세계 맵의 사용에 관한 추가의 세부사항들은 미국 특허 공보 제2015/0016777호에 설명되고, 이로써 상기 특허는 특허에 포함된 모든 것에 대해 본원에 인용에 의해 포함된다. 룸넷의 출력(예컨대, 방법(1100)의 출력)은, 시스템(1200)의 착용자가 위치된 룸에 대한 룸 레이아웃을 포함하기 위해 세계 맵을 업데이트하는 데 사용될 수 있다.
[0106] 룸넷 아키텍처는 사용자의 환경 내의 객체들에 대한 이미지들을 분석하는 다른 객체 인식기들 또는 심층 학습 시스템들과 함께 사용할 수 있다. 예컨대, "Deep Learning System for Cuboid Detection"라는 명칭으로 2017년 11월 14일에 출원된 미국 특허 출원 제15/812,928호 ― 이로써 상기 특허는 특허에 포함된 모든 것에 대해 전체적으로 본원에 인용에 의해 포함됨 ― 는 이미지들에서 3D 직육면체-형상의 객체들을 검출하기 위한 기계 학습 기술들을 설명한다. 일부 실시예들에서, 룸넷 아키텍처는 룸 레이아웃을 식별하는 데 사용될 수 있고, 직육면체-검출 아키텍처는 룸 레이아웃 내의 직육면체 객체들을 식별하거나 로컬화하는 데 사용될 수 있다. 이 정보는 향상된 AR 또는 MR 사용자 경험을 제공하기 위해 웨어러블 디스플레이 시스템(1200)의 세계 맵에 추가될 수 있다.
[0107] 또 다른 예로서, 로봇은, 룸 레이아웃을 결정하고 이어서 룸 내에서 로봇의 자동화된 내비게이션을 위해 룸 레이아웃을 사용하기 위해 룸넷의 실시예들을 활용할 수 있다. 로봇들은 자율 실내 로봇들(예컨대, 로봇 진공 청소기들, 걸레들, 스위퍼들), 창고 로봇들(예컨대, 자동 보관, 리트리벌(retrieval) 및 재고 작업들에 사용됨), 실내 공중 드론들 등을 포함할 수 있다.
부가적인 양상들
[0108] 제1 양상에서, 룸의 레이아웃을 추정하기 위한 시스템이 개시된다. 시스템은: 비-일시적인 메모리; 및 비-일시적인 메모리와 통신하는 하드웨어 프로세서를 포함하고, 비-일시적인 메모리는, 룸 레이아웃 추정을 위한 룸 이미지, 및 룸의 레이아웃을 추정하기 위한 뉴럴 네트워크를 저장하도록 구성되고, 뉴럴 네트워크는 인코더-디코더 서브-네트워크, 및 인코더-디코더 서브-네트워크에 연결된 분류자 서브-네트워크(classifier sub-network)를 포함하고, 하드웨어 프로세서는: 룸 이미지에 액세스하고; 인코더-디코더 서브-네트워크 및 룸 이미지를 사용하여, 복수의 룸 타입들에 대응하는 복수의 예측된 2D(two-dimensional) 키포인트 맵들(keypoint maps)을 결정하고; 인코더-디코더 서브-네트워크, 분류자 서브-네트워크 및 룸 이미지를 사용하여, 복수의 룸 타입들로부터 예측된 룸 타입을 결정하고; 복수의 예측된 2D 키포인트 맵들 및 예측된 룸 타입을 사용하여, 예측된 룸 타입과 연관된 복수의 순서화된 키포인트들을 결정하고; 그리고 복수의 순서화된 키포인트들을 사용하여, 룸 이미지에서 룸의 예측된 레이아웃을 결정하도록 프로그래밍된다.
[0109] 제2 양상에서, 제1 양상의 시스템에 있어서, 복수의 룸 타입들의 각각의 룸 타입은 순서화된 룸 타입 키포인트들의 세트를 포함한다.
[0110] 제3 양상에서, 제2 양상의 시스템에 있어서, 복수의 룸 타입들의 각각의 룸 타입은 룸 타입의 구역들에 대한 의미론적 분할(semantic segmentation)을 포함하고, 의미론적 분할은 바닥, 천장 또는 벽으로서의 식별을 포함한다.
[0111] 제4 양상에서, 제2 양상 또는 제3 양상의 시스템에 있어서, 제1 키포인트 순서는 복수의 룸 타입들 중 제1 룸 타입과 연관되고, 제2 키포인트 순서는 복수의 룸 타입들 중 제2 룸 타입과 연관되고, 제1 키포인트 순서 및 제2 키포인트 순서는 상이하다.
[0112] 제5 양상에서, 제1 양상 내지 제4 양상 중 어느 한 양상의 시스템에 있어서, 룸 이미지는 단안 이미지(monocular image)를 포함한다.
[0113] 제6 양상에서, 제1 양상 내지 제5 양상 중 어느 한 양상의 시스템에 있어서, 룸 이미지는 RGB(Red-Green-Blue) 이미지를 포함한다.
[0114] 제7 양상에서, 제1 양상 내지 제6 양상 중 어느 한 양상의 시스템에 있어서, 룸 이미지의 치수(dimensionality)는 예측된 2D 키포인트 맵들의 치수보다 더 크다.
[0115] 제8 양상에서, 제1 양상 내지 제7 양상 중 어느 한 양상의 시스템에 있어서, 인코더-디코더 서브-네트워크는 복수의 콘볼루션 층들(convolutional layers) 및 복수의 풀링 층들(pooling layers)을 포함하는 인코더 서브-네트워크를 포함한다.
[0116] 제9 양상에서, 제1 양상 내지 제8 양상 중 어느 한 양상의 시스템에 있어서, 인코더-디코더 서브-네트워크는 복수의 콘볼루션 층들 및 복수의 업샘플링 층들(upsampling layers)을 포함하는 디코더 서브-네트워크를 포함한다.
[0117] 제10 양상에서, 제1 양상 내지 제9 양상 중 어느 한 양상의 시스템에 있어서, 인코더-디코더 서브-네트워크는 MRED(memory augmented recurrent encoder-decoder) 네트워크를 포함한다.
[0118] 제11 양상에서, 제1 양상 내지 제10 양상 중 어느 한 양상의 시스템에 있어서, 인코더-디코더 서브-네트워크는 복수의 재귀 층들(recurrent layers)을 포함한다.
[0119] 제12 양상에서, 제11 양상의 시스템에 있어서, 복수의 재귀 층들의 재귀 반복들(recurrent iterations)의 수는 2이다.
[0120] 제13 양상에서, 제11 양상의 시스템에 있어서, 복수의 재귀 층들의 재귀 반복들의 수는 적어도 3이다.
[0121] 제14 양상에서, 제11 양상 내지 제13 양상 중 어느 한 양상의 시스템에 있어서, 복수의 재귀 층들 각각은 가중치 행렬(weight matrix)을 갖고, 가중치 행렬은 복수의 재귀 층들 전부에 대해 동일하다.
[0122] 제15 양상에서, 제1 양상 내지 제14 양상 중 어느 한 양상의 시스템에 있어서, 예측된 2D(two-dimensional) 키포인트 맵들은 히트 맵들(heat maps)을 포함한다.
[0123] 제16 양상에서, 제15 양상의 시스템에 있어서, 하드웨어 프로세서는, 히트 맵의 최대치들로서 히트 맵들로부터 키포인트 위치들을 추출하도록 프로그래밍된다.
[0124] 제17 양상에서, 제1 양상 내지 제16 양상 중 어느 한 양상의 시스템에 있어서, 하드웨어 프로세서는 룸 이미지를 분석하는 객체 인식기로부터의 객체 정보에 액세스하고, 그리고 객체 정보와 룸의 예측된 레이아웃을 결합하도록 프로그래밍된다.
[0125] 제18 양상에서, 제17 양상의 시스템에 있어서, 객체 인식기는 룸 이미지에서 직육면체들(cuboids)을 검출하도록 구성된다.
[0126] 제19 양상에서, 웨어러블 디스플레이 디바이스가 개시된다. 웨어러블 디스플레이 디바이스는 룸 레이아웃 추정을 위해 룸 이미지를 캡처하도록 구성된 외향 이미징 시스템; 및 제1 양상 내지 제18 양상 중 어느 한 양상의 시스템을 포함한다.
[0127] 제20 양상에서, 룸의 레이아웃을 추정하기 위한 뉴럴 네트워크를 트레이닝하기 위한 시스템이 개시된다. 시스템은: 뉴럴 네트워크에 대한 파라미터들을 저장하도록 구성된 비-일시적 메모리; 및 비-일시적인 메모리와 통신하는 하드웨어 프로세서를 포함하고, 하드웨어 프로세서는: 트레이닝 룸 이미지를 수신하고 ― 트레이닝 룸 이미지는 복수의 룸 타입들로부터의 기준 룸 타입, 및 기준 룸 레이아웃과 연관된 기준 키포인트들과 연관됨 ― ; 룸 레이아웃 추정을 위한 뉴럴 네트워크를 생성하고 ― 뉴럴 네트워크는 복수의 룸 타입들 각각과 연관된 예측된 룸 레이아웃과 연관된 예측된 2D(two-dimensional) 키포인트들을 출력하도록 구성된 인코더-디코더 서브-네트워크, 및 복수의 룸 타입들로부터의 예측된 룸 타입을 출력하도록 구성된, 인코더-디코더 서브-네트워크에 연결된 사이드 서브-네트워크를 포함함 ― ; 예측된 2D 키포인트들에 대한 제1 손실 및 예측된 룸 타입에 대한 제2 손실에 기반하여 손실 함수(loss function)를 최적화하고; 그리고 최적화된 손실 함수에 기반하여 뉴럴 네트워크의 파라미터들을 업데이트하도록 프로그래밍된다.
[0128] 제21 양상에서, 제20 양상의 시스템에 있어서, 복수의 룸 타입들의 수는 5보다 더 크다.
[0129] 제22 양상에서, 제20 양상 또는 제21 양상의 시스템에 있어서, 기준 키포인트들 및 예측된 2D 키포인트들은 키포인트 순서와 연관된다.
[0130] 제23 양상에서, 제20 양상 내지 제22 양상 중 어느 한 양상의 시스템에 있어서, 제1 키포인트 순서는 복수의 룸 타입들 중 제1 룸 타입과 연관되고, 제2 키포인트 순서는 복수의 룸 타입들 중 제2 룸 타입과 연관되고, 제1 키포인트 순서 및 제2 키포인트 순서는 상이하다.
[0131] 제24 양상에서, 제20 양상 내지 제23 양상 중 어느 한 양상의 시스템에 있어서, 트레이닝 룸 이미지는 단안 이미지를 포함한다.
[0132] 제25 양상에서, 제20 양상 내지 제24 양상 중 어느 한 양상의 시스템에 있어서, 트레이닝 룸 이미지는 RGB(Red-Green-Blue) 이미지를 포함한다.
[0133] 제26 양상에서, 제20 양상 내지 제25 양상 중 어느 한 양상의 시스템에 있어서, 트레이닝 룸 이미지의 치수는 예측된 2D 키포인트들과 연관된 맵의 치수보다 더 크다.
[0134] 제27 양상에서, 제20 양상 내지 제26 양상 중 어느 한 양상의 시스템에 있어서, 인코더 서브-네트워크 및 디코더 서브-네트워크는 복수의 재귀 층들을 포함한다.
[0135] 제28 양상에서, 제27 양상의 시스템에 있어서, 재귀 층들의 재귀 반복들의 수는 2 또는 3이다.
[0136] 제29 양상에서, 제27 양상 또는 제28 양상의 시스템에 있어서, 심층 감시(deep supervision)는 재귀 층들에 적용된다.
[0137] 제30 양상에서, 제27 양상 내지 제29 양상 중 어느 한 양상의 시스템에 있어서, 재귀 층들의 반복들 중 제1 재귀 반복과 연관된 가중치들은 재귀 층들의 제2 재귀 반복과 연관된 가중치들과 동일하다.
[0138] 제31 양상에서, 제27 양상 내지 제30 양상 중 어느 한 양상의 시스템에 있어서, 복수의 재귀 층들은 MRED(memory-augmented recurrent encoder-decoder) 네트워크로서 구성된다.
[0139] 제32 양상에서, 제20 양상 내지 제31 양상 중 어느 한 양상의 시스템에 있어서, 사이드 서브-네트워크는 룸 타입 분류자를 포함한다.
[0140] 제33 양상에서, 제20 양상 내지 제32 양상 중 어느 한 양상의 시스템에 있어서, 예측된 2D 키포인트들에 대한 제1 손실은 복수의 기준 키포인트 위치들과 예측된 2D 키포인트들 사이의 유클리드 손실(Euclidean loss)을 포함한다.
[0141] 제34 양상에서, 제20 양상 내지 제33 양상 중 어느 한 양상의 시스템에 있어서, 예측된 룸 타입에 대한 제2 손실은 교차 엔트로피 손실(cross entropy loss)을 포함한다.
[0142] 제35 양상에서, 제20 양상 내지 제34 양상 중 어느 한 양상의 시스템에 있어서, 예측된 2D 키포인트들은 예측된 히트 맵으로부터 추출된다.
[0143] 제36 양상에서, 제35 양상의 시스템에 있어서, 하드웨어 프로세서는 트레이닝 이미지의 기준 키포인트들과 연관된 기준 히트 맵을 계산하고, 그리고 예측된 히트 맵과 기준 히트 맵 사이의 차이에 기반하여 예측된 2D 키포인트들에 대한 제1 손실을 계산하도록 프로그래밍된다.
[0144] 제37 양상에서, 제36 양상의 시스템에 있어서, 기준 히트 맵은 각각의 기준 키포인트에 대한 위치에 중심을 둔 2-차원 분포를 포함한다.
[0145] 제38 양상에서, 제36 양상 또는 제37 양상의 시스템에 있어서, 기준 히트 맵은 기준 키포인트들로부터 떨어진 백그라운드 및 기준 키포인트들과 연관된 포어그라운드를 포함하고, 하드웨어 프로세서는, 포어그라운드와 백그라운드 사이의 비율에 기반하여 기준 히트 맵에서 그래디언트들(gradients)을 가중하도록 프로그래밍된다.
[0146] 제39 양상에서, 제38 양상의 시스템에 있어서, 기준 히트 맵에서 그래디언트들을 가중하기 위해, 하드웨어 프로세서는, 백그라운드의 픽셀들의 값들을 1 미만의 감소 계수(degrading factor)만큼 감소시키도록 프로그래밍된다.
[0147] 제40 양상에서, 웨어러블 디스플레이 시스템이 개시된다. 시스템은: 웨어러블 디스플레이 시스템의 착용자의 환경의 룸 이미지들을 획득하도록 구성된 외향 이미징 시스템; 룸 이미지를 저장하도록 구성된 비-일시적 메모리; 및 비-일시적인 메모리와 통신하는 하드웨어 프로세서를 포함하고, 하드웨어 프로세서는, 환경의 룸 이미지에 액세스하고, 그리고 룸 이미지에서 룸의 예측된 레이아웃을 결정하기 위해 룸 이미지를 분석하도록 프로그래밍되고, 룸 이미지를 분석하기 위해, 프로세서는, 룸 이미지에서 룸에 대한 룸 타입과 연관된 순서화된 2D(two-dimensional) 키포인트들의 세트를 결정하기 위해 뉴럴 네트워크를 사용하고, 그리고 2D 키포인트들 및 룸 타입에 적어도 부분적으로 기반하여 룸 레이아웃을 제공하도록 프로그래밍된다.
[0148] 제41 양상에서, 제40 양상의 웨어러블 디스플레이 시스템에 있어서, 뉴럴 네트워크는 콘볼루션 인코더-디코더 네트워크를 포함한다.
[0149] 제42 양상에서, 제41 양상의 웨어러블 디스플레이 시스템에 있어서, 콘볼루션 인코더-디코더 네트워크는 메모리-증강 재귀 인코더-디코더 네트워크를 포함한다.
[0150] 제43 양상에서, 제40 양상 내지 제42 양상 중 어느 한 양상의 웨어러블 디스플레이 시스템에 있어서, 뉴럴 네트워크는 룸 타입을 결정하도록 구성된 분류자를 포함한다.
[0151] 제44 양상에서, 제40 양상 내지 제43 양상 중 어느 한 양상의 웨어러블 디스플레이 시스템에 있어서, 하드웨어 프로세서는 히트 맵으로부터 순서화된 2D 키포인트들의 세트를 추출하도록 추가로 프로그래밍된다.
[0152] 제45 양상에서, 제40 양상 내지 제44 양상 중 어느 한 양상의 웨어러블 디스플레이 시스템에 있어서, 하드웨어 프로세서는 추가로 룸 이미지를 분석하는 객체 인식기로부터의 객체 정보에 액세스하고, 그리고 객체 정보와 룸 레이아웃을 결합하도록 프로그래밍된다.
[0153] 제46 양상에서, 룸의 레이아웃을 추정하기 위한 방법이 개시된다. 방법은: 룸 레이아웃 추정을 위한 룸 이미지에 액세스하는 단계; 룸의 레이아웃을 추정하기 위한 뉴럴 네트워크의 인코더-디코더 서브-네트워크 및 룸 이미지를 사용하여, 복수의 룸 타입들에 대응하는 복수의 예측된 2D(two-dimensional) 키포인트 맵들을 결정하는 단계; 인코더-디코더 서브-네트워크, 인코더-디코더 서브-네트워크에 연결된 뉴럴 네트워크의 분류자 서브-네트워크 및 룸 이미지를 사용하여, 복수의 룸 타입들로부터 예측된 룸 타입을 결정하는 단계; 복수의 예측된 2D 키포인트 맵들 및 예측된 룸 타입을 사용하여, 예측된 룸 타입과 연관된 복수의 순서화된 키포인트들을 결정하는 단계; 및 복수의 순서화된 키포인트들을 사용하여, 룸 이미지에서 룸의 예측된 레이아웃을 결정하는 단계를 포함한다.
[0154] 제47 양상에서, 제46 양상의 방법에 있어서, 복수의 룸 타입들의 각각의 룸 타입은 순서화된 룸 타입 키포인트들의 세트를 포함한다.
[0155] 제48 양상에서, 제47 양상의 방법에 있어서, 복수의 룸 타입들의 각각의 룸 타입은 룸 타입의 구역들에 대한 의미론적 분할을 포함하고, 의미론적 분할은 바닥, 천장 또는 벽으로서의 식별을 포함한다.
[0156] 제49 양상에서, 제47 양상 또는 제48 양상의 방법에 있어서, 제1 키포인트 순서는 복수의 룸 타입들 중 제1 룸 타입과 연관되고, 제2 키포인트 순서는 복수의 룸 타입들 중 제2 룸 타입과 연관되고, 제1 키포인트 순서 및 제2 키포인트 순서는 상이하다.
[0157] 제50 양상에서, 제46 양상 내지 제49 양상 중 어느 한 양상의 방법에 있어서, 룸 이미지는 단안 이미지를 포함한다.
[0158] 제51 양상에서, 제46 양상 내지 제50 양상 중 어느 한 양상의 방법에 있어서, 룸 이미지는 RGB(Red-Green-Blue) 이미지를 포함한다.
[0159] 제52 양상에서, 제46 양상 내지 제51 양상 중 어느 한 양상의 방법에 있어서, 룸 이미지의 치수는 예측된 2D 키포인트 맵들의 치수보다 더 크다.
[0160] 제53 양상에서, 제46 양상 내지 제52 양상 중 어느 한 양상의 방법에 있어서, 인코더-디코더 서브-네트워크는 복수의 콘볼루션 층들 및 복수의 풀링 층들을 포함하는 인코더 서브-네트워크를 포함한다.
[0161] 제54 양상에서, 제46 양상 내지 제53 양상 중 어느 한 양상의 방법에 있어서, 인코더-디코더 서브-네트워크는 복수의 콘볼루션 층들 및 복수의 업샘플링 층들을 포함하는 디코더 서브-네트워크를 포함한다.
[0162] 제55 양상에서, 제46 양상 내지 제54 양상 중 어느 한 양상의 방법에 있어서, 인코더-디코더 서브-네트워크는 MRED(memory augmented recurrent encoder-decoder) 네트워크를 포함한다.
[0163] 제56 양상에서, 제46 양상 내지 제55 양상 중 어느 한 양상의 방법에 있어서, 인코더-디코더 서브-네트워크는 복수의 재귀 층들을 포함한다.
[0164] 제57 양상에서, 제56 양상의 방법에 있어서, 복수의 재귀 층들의 재귀 반복들의 수는 2이다.
[0165] 제58 양상에서, 제56 양상의 방법에 있어서, 복수의 재귀 층들의 재귀 반복들의 수는 적어도 3이다.
[0166] 제59 양상에서, 제56 양상 내지 제58 양상 중 어느 한 양상의 방법에 있어서, 복수의 재귀 층들 각각은 가중치 행렬을 갖고, 가중치 행렬은 복수의 재귀 층들 전부에 대해 동일하다.
[0167] 제60 양상에서, 제46 양상 내지 제59 양상 중 어느 한 양상의 방법에 있어서, 예측된 2D(two-dimensional) 키포인트 맵들은 히트 맵들을 포함한다.
[0168] 제61 양상에서, 제60 양상의 방법에 있어서, 히트 맵의 최대치들로서 히트 맵들로부터 키포인트 위치들을 추출하는 단계를 더 포함한다.
[0169] 제62 양상에서, 제46 양상 내지 제61 양상 중 어느 한 양상의 방법에 있어서, 룸 이미지를 분석하는 객체 인식기로부터의 객체 정보에 액세스하는 단계, 및 객체 정보와 룸의 예측된 레이아웃을 결합하는 단계를 더 포함한다.
[0170] 제63 양상에서, 제62 양상의 방법에 있어서, 룸 이미지에서 직육면체들(cuboids)을 검출하기 위해 객체 인식기를 사용하는 단계를 더 포함한다.
[0171] 제64 양상에서, 룸의 레이아웃을 추정하기 위한 뉴럴 네트워크를 트레이닝하기 위한 방법이 개시된다. 방법은: 트레이닝 룸 이미지를 수신하는 단계 ― 트레이닝 룸 이미지는 복수의 룸 타입들로부터의 기준 룸 타입, 및 기준 룸 레이아웃과 연관된 기준 키포인트들과 연관됨 ― ; 룸 레이아웃 추정을 위한 뉴럴 네트워크를 생성하는 단계 ― 뉴럴 네트워크는 복수의 룸 타입들 각각과 연관된 예측된 룸 레이아웃과 연관된 예측된 2D(two-dimensional) 키포인트들을 출력하도록 구성된 인코더-디코더 서브-네트워크, 및 복수의 룸 타입들로부터의 예측된 룸 타입을 출력하도록 구성된, 인코더-디코더 서브-네트워크에 연결된 사이드 서브-네트워크를 포함함 ― ; 예측된 2D 키포인트들에 대한 제1 손실 및 예측된 룸 타입에 대한 제2 손실에 기반하여 손실 함수를 최적화하는 단계; 및 최적화된 손실 함수에 기반하여 뉴럴 네트워크의 파라미터들을 업데이트하는 단계를 포함한다.
[0172] 제65 양상에서, 제64 양상의 방법에 있어서, 복수의 룸 타입들의 수는 5보다 더 크다.
[0173] 제66 양상에서, 제64 양상 또는 제65 양상의 방법에 있어서, 기준 키포인트들 및 예측된 2D 키포인트들은 키포인트 순서와 연관된다.
[0174] 제67 양상에서, 제64 양상 내지 제66 양상 중 어느 한 양상의 방법에 있어서, 제1 키포인트 순서는 복수의 룸 타입들 중 제1 룸 타입과 연관되고, 제2 키포인트 순서는 복수의 룸 타입들 중 제2 룸 타입과 연관되고, 제1 키포인트 순서 및 제2 키포인트 순서는 상이하다.
[0175] 제68 양상에서, 제64 양상 내지 제67 양상 중 어느 한 양상의 방법에 있어서, 트레이닝 룸 이미지는 단안 이미지를 포함한다.
[0176] 제69 양상에서, 제64 양상 내지 제68 양상 중 어느 한 양상의 방법에 있어서, 트레이닝 룸 이미지는 RGB(Red-Green-Blue) 이미지를 포함한다.
[0177] 제70 양상에서, 제64 양상 내지 제69 양상 중 어느 한 양상의 방법에 있어서, 트레이닝 룸 이미지의 치수는 예측된 2D 키포인트들과 연관된 맵의 치수보다 더 크다.
[0178] 제71 양상에서, 제64 양상 내지 제70 양상 중 어느 한 양상의 방법에 있어서, 인코더 서브-네트워크 및 디코더 서브-네트워크는 복수의 재귀 층들을 포함한다.
[0179] 제72 양상에서, 제71 양상의 방법에 있어서, 재귀 층들의 재귀 반복들의 수는 2 또는 3이다.
[0180] 제73 양상에서, 제71 양상 또는 제72 양상의 방법에 있어서, 심층 감시는 재귀 층들에 적용된다.
[0181] 제74 양상에서, 제71 양상 내지 제73 양상 중 어느 한 양상의 방법에 있어서, 재귀 층들의 반복들 중 제1 재귀 반복과 연관된 가중치들은 재귀 층들의 제2 재귀 반복과 연관된 가중치들과 동일하다.
[0182] 제75 양상에서, 제71 양상 내지 제74 양상 중 어느 한 양상의 방법에 있어서, 복수의 재귀 층들은 MRED(memory-augmented recurrent encoder-decoder) 네트워크로서 구성된다.
[0183] 제76 양상에서, 제64 양상 내지 제75 양상 중 어느 한 양상의 방법에 있어서, 사이드 서브-네트워크는 룸 타입 분류자를 포함한다.
[0184] 제77 양상에서, 제64 양상 내지 제76 양상 중 어느 한 양상의 방법에 있어서, 예측된 2D 키포인트들에 대한 제1 손실은 복수의 기준 키포인트 위치들과 예측된 2D 키포인트들 사이의 유클리드 손실을 포함한다.
[0185] 제78 양상에서, 제64 양상 내지 제77 양상 중 어느 한 양상의 방법에 있어서, 예측된 룸 타입에 대한 제2 손실은 교차 엔트로피 손실을 포함한다.
[0186] 제79 양상에서, 제64 양상 내지 제78 양상 중 어느 한 양상의 방법에 있어서, 예측된 2D 키포인트들은 예측된 히트 맵으로부터 추출된다.
[0187] 제80 양상에서, 제79 양상의 방법에 있어서, 트레이닝 이미지의 기준 키포인트들과 연관된 기준 히트 맵을 계산하는 단계, 및 예측된 히트 맵과 기준 히트 맵 사이의 차이에 기반하여 예측된 2D 키포인트들에 대한 제1 손실을 계산하는 단계를 더 포함한다.
[0188] 제81 양상에서, 제80 양상의 방법에 있어서, 기준 히트 맵은 각각의 기준 키포인트에 대한 위치에 중심을 둔 2-차원 분포를 포함한다.
[0189] 제82 양상에서, 제80 양상 또는 제81 양상의 방법에 있어서, 기준 히트 맵은 기준 키포인트들로부터 떨어진 백그라운드 및 기준 키포인트들과 연관된 포어그라운드를 포함하고, 하드웨어 프로세서는, 포어그라운드와 백그라운드 사이의 비율에 기반하여 기준 히트 맵에서 그래디언트들을 가중하도록 프로그래밍된다.
[0190] 제83 양상에서, 제82 양상의 방법에 있어서, 기준 히트 맵에서 그래디언트들을 가중하는 단계는 백그라운드의 픽셀들의 값들을 1 미만의 감소 계수만큼 감소시키는 단계를 포함한다.
[0191] 제84 양상에서, 방법이 개시된다. 방법은: 환경의 룸 이미지에 액세스하는 단계; 및 룸 이미지에서 룸의 예측된 레이아웃을 결정하기 위해 룸 이미지를 분석하는 단계를 포함하고, 분석하는 단계는: 룸 이미지에서 룸에 대한 룸 타입과 연관된 순서화된 2D(two-dimensional) 키포인트들의 세트를 결정하기 위해 뉴럴 네트워크를 사용하는 단계; 및 2D 키포인트들 및 룸 타입에 적어도 부분적으로 기반하여 룸 레이아웃을 제공하는 단계를 포함한다.
[0192] 제85 양상에서, 제84 양상의 방법에 있어서, 뉴럴 네트워크는 콘볼루션 인코더-디코더 네트워크를 포함한다.
[0193] 제86 양상에서, 제85 양상의 방법에 있어서, 콘볼루션 인코더-디코더 네트워크는 메모리-증강 재귀 인코더-디코더 네트워크를 포함한다.
[0194] 제87 양상에서, 제84 양상 내지 제86 양상 중 어느 한 양상의 방법에 있어서, 뉴럴 네트워크는 룸 타입을 결정하도록 구성된 분류자를 포함한다.
[0195] 제88 양상에서, 제84 양상 내지 제87 양상 중 어느 한 양상의 방법에 있어서, 히트 맵으로부터 순서화된 2D 키포인트들의 세트를 추출하는 단계를 더 포함한다.
[0196] 제89 양상에서, 제84 양상 내지 제88 양상 중 어느 한 양상의 방법에 있어서, 객체 정보를 결정하기 위해 룸 이미지를 분석하는 단계, 및 객체 정보와 룸 레이아웃을 결합하는 단계를 더 포함한다.
부가적인 고려사항들
[0197] 본원에서 설명되고 그리고/또는 첨부 도면들에 도시되는 프로세스들, 방법들 및 알고리즘들 각각은 하나 이상의 물리적 컴퓨팅 시스템들, 하드웨어 컴퓨터 프로세서들, 주문형 회로 및/또는 특유 및 특정 컴퓨터 명령들을 실행하도록 구성된 전자 하드웨어에 의해 실행되는 코드 모듈들로 구현되고, 이 코드 모듈들에 의해 완전히 또는 부분적으로 자동화될 수 있다. 예컨대, 컴퓨팅 시스템들은 특정 컴퓨터 명령들로 프로그래밍된 범용 컴퓨터들(예컨대, 서버들) 또는 특수 목적 컴퓨터들, 특수 목적 회로 등을 포함할 수 있다. 코드 모듈은 실행 가능 프로그램으로 컴파일되어 링크되거나, 동적 링크 라이브러리에 설치될 수 있거나, 또는 인터프리팅된 프로그래밍 언어로 작성될 수 있다. 일부 구현들에서, 특정한 동작들 및 방법들은, 주어진 기능에 특정한 회로에 의해 수행될 수 있다.
[0198] 추가로, 본 개시내용의 기능성의 소정의 구현들은 충분히 수학적으로, 계산상으로 또는 기술적으로 복잡하여, (적절한 전문화된 실행 가능한 명령들을 활용하는) 주문형 하드웨어 또는 하나 이상의 물리적 컴퓨팅 디바이스들은 예컨대, 수반되는 계산들의 양(volume) 또는 복잡성으로 인해 또는 실질적으로 실시간으로 결과들을 제공하기 위해 그 기능성들을 수행할 필요가 있을 수 있다. 예컨대, 비디오는 다수의 프레임들(각각의 프레임은 수백만개의 픽셀들을 가짐)을 포함할 수 있고, 상업적으로 합리적인 시간량 내에 원하는 이미지 프로세싱 작업(예컨대, 룸넷 기술들의 수행) 또는 애플리케이션을 제공하기 위해, 특별히 프로그래밍된 컴퓨터 하드웨어가 비디오 데이터를 프로세싱할 필요가 있다.
[0199] 코드 모듈들 또는 임의의 타입의 데이터는, 임의의 타입의 비-일시적인 컴퓨터-판독 가능 매체, 이를테면, 하드 드라이브들, 솔리드 스테이트 메모리, RAM(random access memory), ROM(read only memory), 광학 디스크, 휘발성 또는 비-휘발성 저장소, 이들의 조합들 등을 포함하는 물리적 컴퓨터 저장소 상에 저장될 수 있다. 방법들 및 모듈들(또는 데이터)은 또한, 생성된 데이터 신호들로서(예컨대, 반송파 또는 다른 아날로그 또는 디지털 전파 신호의 일부로서) 무선-기반 및 유선/케이블-기반 매체들을 포함하는 다양한 컴퓨터-판독 가능 송신 매체들 상에서 송신될 수 있고, (예컨대, 단일 또는 멀티플렉싱된 아날로그 신호의 일부로서, 또는 다수의 이산 디지털 패킷들 또는 프레임들로서) 다양한 형태들을 취할 수 있다. 개시된 프로세스들 또는 프로세스 단계들의 결과들은 임의의 타입의 비-일시적인 유형의(tangible) 컴퓨터 저장소에 지속적으로 또는 다른 방식으로 저장될 수 있거나, 또는 컴퓨터-판독 가능 송신 매체를 통해 통신될 수 있다.
[0200] 본원에서 설명되고 그리고/또는 첨부된 도면들에 도시되는 흐름도들에서의 임의의 프로세스들, 블록들, 상태들, 단계들 또는 기능성들은 프로세스의 단계들 또는 (예컨대, 논리적 또는 산술적) 특정 기능들을 구현하기 위한 하나 이상의 실행 가능 명령들을 포함하는 코드 모듈들, 세그먼트들 또는 코드 부분들을 잠재적으로 나타내는 것으로 이해되어야 한다. 다양한 프로세스들, 블록들, 상태들, 단계들 또는 기능성들은 본원에서 제공된 예시적인 예들에서 조합되거나, 재배열되거나, 이들에 부가되거나, 이들로부터 제거되거나, 수정되거나, 또는 다른 방식으로 변할 수 있다. 일부 실시예들에서, 부가적인 또는 상이한 컴퓨팅 시스템들 또는 코드 모듈들은 본원에서 설명된 기능성들 중 일부 또는 전부를 수행할 수 있다. 본원에 설명된 방법들 및 프로세스들은 또한 임의의 특정 시퀀스로 제한되지 않고, 그에 관련된 블록들, 단계들 또는 상태들은 적절한 다른 시퀀스들로, 예컨대, 직렬로, 병렬로 또는 일부 다른 방식으로 수행될 수 있다. 작업들 또는 이벤트들은 개시된 예시적인 실시예들에 부가되거나 그로부터 제거될 수 있다. 또한, 본원에서 설명된 구현들에서의 다양한 시스템 컴포넌트들의 분리는 예시 목적들을 위한 것이며, 모든 구현들에서 이러한 분리를 요구하는 것으로 이해되어서는 안 된다. 설명된 프로그램 컴포넌트들, 방법들 및 시스템들은 일반적으로 단일 컴퓨터 제품에 함께 통합되거나 다수의 컴퓨터 제품들로 패키징될 수 있다는 것이 이해되어야 한다. 다수의 구현 변동들이 가능하다.
[0201] 프로세스들, 방법들 및 시스템들은 네트워크(또는 분산형) 컴퓨팅 환경에서 구현될 수 있다. 네트워크 환경들은, 전사적(enterprise-wide) 컴퓨터 네트워크들, 인트라넷들, LAN(Local Area Network)들, WAN(Wide Area Network)들, PAN(Personal Area Network)들, 클라우드 컴퓨팅 네트워크들, 크라우드-소스드(crowd-sourced) 컴퓨팅 네트워크들, 인터넷 및 월드 와이드 웹(World Wide Web)을 포함한다. 네트워크는 유선 또는 무선 네트워크 또는 임의의 다른 유형의 통신 네트워크일 수 있다.
[0202] 본 개시내용의 시스템들 및 방법들 각각은 몇몇 혁신적인 양상들을 가지며, 그 양상들 중 어떠한 단일 양상도 본원에서 개시된 바람직한 속성들을 전적으로 담당하거나 이를 위해 요구되지 않는다. 본원에서 설명된 다양한 특징들 및 프로세스들은 서로 독립적으로 사용될 수 있거나, 또는 다양한 방식들로 조합될 수 있다. 모든 가능한 조합들 및 서브조합들은 본 개시내용의 범위 내에 속하는 것으로 의도된다. 본 개시내용에서 설명된 구현들에 대한 다양한 수정들은 당업자들에게 용이하게 자명할 수 있으며, 본원에서 정의된 일반적인 원리들은 본 개시내용의 사상 또는 범위를 벗어나지 않으면서 다른 구현들에 적용될 수 있다. 따라서, 청구항들은 본 명세서에 도시된 구현들로 제한되도록 의도되는 것이 아니라, 본 명세서에 개시된 본 개시내용, 원리들 및 신규한 특성들과 일치하는 가장 넓은 범위에 부합할 것이다.
[0203] 별개의 구현들의 맥락에서 본 명세서에 설명된 소정의 특징들은 또한, 단일 구현으로 조합하여 구현될 수 있다. 대조적으로, 단일 구현의 맥락에서 설명된 다양한 특징들은 또한, 별개로 다수의 구현들로 또는 임의의 적절한 서브조합으로 구현될 수 있다. 더욱이, 특징들이 소정의 조합들로 작용하는 것으로 위에서 설명되고 심지어 초기에 이와 같이 청구될 수 있지만, 일부 경우들에서, 청구된 조합으로부터의 하나 이상의 특징들은 그 조합으로부터 제거될 수 있고, 청구된 조합은 서브조합 또는 서브조합의 변동에 관련될 수 있다. 단일 특징 또는 특징들의 그룹이 각각의 그리고 모든 각각의 실시예에 필요하거나 필수적인 것은 아니다.
[0204] 구체적으로 달리 언급되지 않거나 또는 사용된 맥락 내에서 달리 이해되지 않으면, 본원에서 사용된 조건어, 이를테면, 다른 것들 중에서도, "할 수 있다(can, could, might, may)", "예컨대" 등은 일반적으로, 소정의 실시예들이 소정의 특징들, 엘리먼트들, 및/또는 단계들을 포함하지만 다른 실시예들은 이들을 포함하지 않는다는 것을 전달하도록 의도된다. 따라서, 그러한 조건어는 일반적으로, 특징들, 엘리먼트들, 및/또는 단계들이 하나 이상의 실시예들을 위해 어떤 식으로든 요구된다는 것을, 또는 하나 이상의 실시예들이, 저자 입력 또는 프롬프팅(prompting)을 이용하거나 또는 그러한 것을 이용함이 없이, 이들 특징들, 엘리먼트들, 및/또는 단계들이 임의의 특정 실시예에 포함되는지 또는 임의의 특정 실시예들에서 수행되어야 하는지를 판단하기 위한 로직을 반드시 포함한다는 것을 암시하도록 의도되진 않는다. "포함하는 (comprising, including), "갖는 (having)" 등의 용어들은 동의어이며, 오픈-엔디드(open-ended) 방식으로 포괄적으로 사용되며, 부가적인 엘리먼트들, 특징들, 행동들, 동작들 등을 배제하지 않는다. 또한, "또는"이라는 용어는 (그의 배타적인 의미가 아니라) 그의 포괄적인 의미로 사용되어서, 예컨대, 리스트의 엘리먼트들을 연결하기 위해 사용될 때, "또는"이라는 용어는 리스트 내의 엘리먼트들 중 하나, 일부, 또는 전부를 의미한다. 또한, 본 명세서 및 첨부된 청구항들에서 사용된 바와 같은 단수 표현은 달리 특정되지 않는 한 "하나 이상" 또는 "적어도 하나"를 의미하는 것으로 해석될 것이다.
[0205] 본원에서 사용된 바와 같이, 리스트의 아이템들 “중 적어도 하나”를 지칭하는 어구는 단일 멤버들을 포함하여 그 아이템들의 임의의 조합을 지칭한다. 예로서, "A, B 또는 C 중 적어도 하나"는 A; B; C; A와 B; A와 C; B와 C; 그리고 A와 B와 C를 커버하는 것으로 의도된다. 구체적으로 달리 언급되지 않으면, 어구 "X, Y 또는 Z 중 적어도 하나"와 같은 접속어는, 아이템, 용어 등이 X, Y 또는 Z 중 적어도 하나일 수 있다는 것을 전달하기 위해 일반적으로 사용되는 맥락으로 달리 이해된다. 따라서, 이러한 접속어는 일반적으로, 소정의 실시예들이 X 중 적어도 하나, Y 중 적어도 하나 및 Z 중 적어도 하나가 각각 존재할 것을 요구하는 것을 암시하는 것으로 의도되지 않는다.
[0206] 유사하게, 동작들이 특정한 순서로 도면들에 도시될 수 있지만, 원하는 결과들을 달성하기 위해, 그러한 동작들이 도시된 특정한 순서 또는 순차적인 순서로 수행될 필요가 없거나, 모든 예시된 동작들이 수행될 필요가 없다는 것이 인지될 것이다. 추가로, 도면들은 흐름도의 형태로 둘 이상의 예시적인 프로세스들을 개략적으로 도시할 수 있다. 그러나, 도시되지 않은 다른 동작들이, 개략적으로 예시된 예시적인 방법들 및 프로세스들에 통합될 수 있다. 예컨대, 하나 이상의 부가적인 동작들은, 예시된 동작들 중 임의의 동작 이전에, 이후에, 동시에, 또는 그 중간에 수행될 수 있다. 부가적으로, 동작들은 다른 구현들에서 재배열되거나 재순서화될 수 있다. 소정의 환경들에서, 멀티태스킹 및 병렬 프로세싱이 유리할 수 있다. 또한, 위에서 설명된 구현에서의 다양한 시스템 컴포넌트들의 분리는 모든 구현들에서 그러한 분리를 요구하는 것으로서 이해되지는 않아야 하고, 그리고 설명된 프로그램 컴포넌트들 및 시스템들이 일반적으로, 단일 소프트웨어 제품으로 함께 통합되거나 다수의 소프트웨어 제품들로 패키징될 수 있다는 것이 이해되어야 한다. 부가적으로, 다른 구현들은 다음의 청구항들의 범위 내에 있다. 일부 경우들에서, 청구항들에서 열거된 액션들은, 상이한 순서로 수행될 수 있으며, 그럼에도 불구하고 원하는 결과들을 달성할 수 있다.

Claims (45)

  1. 비-일시적인 메모리; 및
    상기 비-일시적인 메모리와 통신하는 하드웨어 프로세서를 포함하고,
    상기 비-일시적인 메모리는,
    룸 레이아웃 추정을 위한 룸 이미지, 및
    룸의 레이아웃을 추정하기 위한 뉴럴 네트워크를 저장하도록 구성되고,
    상기 뉴럴 네트워크는,
    인코더-디코더 서브-네트워크, 및
    상기 인코더-디코더 서브-네트워크에 연결된 분류자 서브-네트워크(classifier sub-network)를 포함하고,
    상기 하드웨어 프로세서는:
    상기 룸 이미지에 액세스하고;
    상기 인코더-디코더 서브-네트워크 및 상기 룸 이미지를 사용하여, 복수의 룸 타입들에 대응하는 복수의 예측된 2D(two-dimensional) 키포인트 맵들(keypoint maps)을 결정하고;
    상기 인코더-디코더 서브-네트워크, 상기 분류자 서브-네트워크 및 상기 룸 이미지를 사용하여, 상기 복수의 룸 타입들로부터 예측된 룸 타입을 결정하고;
    상기 복수의 예측된 2D 키포인트 맵들 및 상기 예측된 룸 타입을 사용하여, 상기 예측된 룸 타입과 연관된 복수의 순서화된 키포인트들을 결정하고; 그리고
    상기 복수의 순서화된 키포인트들을 사용하여, 상기 룸 이미지에서 상기 룸의 예측된 레이아웃을 결정하도록 프로그래밍된,
    시스템.
  2. 제1 항에 있어서,
    상기 복수의 룸 타입들의 각각의 룸 타입은 순서화된 룸 타입 키포인트들의 세트를 포함하는,
    시스템.
  3. 제2 항에 있어서,
    상기 복수의 룸 타입들의 각각의 룸 타입은 상기 룸 타입의 구역들에 대한 의미론적 분할(semantic segmentation)을 포함하고, 상기 의미론적 분할은 바닥, 천장 또는 벽으로서의 식별을 포함하는,
    시스템.
  4. 제2 항에 있어서,
    제1 키포인트 순서는 상기 복수의 룸 타입들 중 제1 룸 타입과 연관되고, 제2 키포인트 순서는 상기 복수의 룸 타입들 중 제2 룸 타입과 연관되고, 상기 제1 키포인트 순서 및 상기 제2 키포인트 순서는 상이한,
    시스템.
  5. 제1 항에 있어서,
    상기 룸 이미지는 단안 이미지(monocular image)를 포함하는,
    시스템.
  6. 제1 항에 있어서,
    상기 룸 이미지는 RGB(Red-Green-Blue) 이미지를 포함하는,
    시스템.
  7. 제1 항에 있어서,
    상기 룸 이미지의 치수(dimensionality)는 상기 예측된 2D 키포인트 맵들의 치수보다 더 큰,
    시스템.
  8. 제1 항에 있어서,
    상기 인코더-디코더 서브-네트워크는 복수의 콘볼루션 층들(convolutional layers) 및 복수의 풀링 층들(pooling layers)을 포함하는 인코더 서브-네트워크를 포함하는,
    시스템.
  9. 제1 항에 있어서,
    상기 인코더-디코더 서브-네트워크는 복수의 콘볼루션 층들 및 복수의 업샘플링 층들(upsampling layers)을 포함하는 디코더 서브-네트워크를 포함하는,
    시스템.
  10. 제1 항에 있어서,
    상기 인코더-디코더 서브-네트워크는 MRED(memory augmented recurrent encoder-decoder) 네트워크를 포함하는,
    시스템.
  11. 제1 항에 있어서,
    상기 인코더-디코더 서브-네트워크는 복수의 재귀 층들(recurrent layers)을 포함하는,
    시스템.
  12. 제11 항에 있어서,
    상기 복수의 재귀 층들의 재귀 반복들(recurrent iterations)의 수는 2인,
    시스템.
  13. 제11 항에 있어서,
    상기 복수의 재귀 층들의 재귀 반복들의 수는 적어도 3인,
    시스템.
  14. 제11 항 내지 제13 항 중 어느 한 항에 있어서,
    상기 복수의 재귀 층들 각각은 가중치 행렬(weight matrix)을 갖고, 상기 가중치 행렬은 상기 복수의 재귀 층들 전부에 대해 동일한,
    시스템.
  15. 제1 항에 있어서,
    상기 예측된 2D(two-dimensional) 키포인트 맵들은 히트 맵들(heat maps)을 포함하는,
    시스템.
  16. 제15 항에 있어서,
    상기 하드웨어 프로세서는, 상기 히트 맵의 최대치들로서 상기 히트 맵들로부터 키포인트 위치들을 추출하도록 프로그래밍되는,
    시스템.
  17. 제1 항에 있어서,
    상기 하드웨어 프로세서는,
    상기 룸 이미지를 분석하는 객체 인식기로부터의 객체 정보에 액세스하고, 그리고
    상기 객체 정보와 상기 룸의 예측된 레이아웃을 결합하도록 프로그래밍된,
    시스템.
  18. 제17 항에 있어서,
    상기 객체 인식기는 상기 룸 이미지에서 직육면체들(cuboids)을 검출하도록 구성된,
    시스템.
  19. 룸 레이아웃 추정을 위해 룸 이미지를 캡처하도록 구성된 외향 이미징 시스템; 및
    제1 항의 시스템을 포함하는,
    웨어러블 디스플레이 디바이스.
  20. 뉴럴 네트워크에 대한 파라미터들을 저장하도록 구성된 비-일시적 메모리; 및
    상기 비-일시적인 메모리와 통신하는 하드웨어 프로세서를 포함하고,
    상기 하드웨어 프로세서는:
    트레이닝 룸 이미지를 수신하고 ― 상기 트레이닝 룸 이미지는 복수의 룸 타입들로부터의 기준 룸 타입, 및 기준 룸 레이아웃과 연관된 기준 키포인트들과 연관됨 ― ;
    룸 레이아웃 추정을 위한 뉴럴 네트워크를 생성하고 ― 상기 뉴럴 네트워크는 상기 복수의 룸 타입들 각각과 연관된 예측된 룸 레이아웃과 연관된 예측된 2D(two-dimensional) 키포인트들을 출력하도록 구성된 인코더-디코더 서브-네트워크, 및 상기 복수의 룸 타입들로부터의 예측된 룸 타입을 출력하도록 구성된, 상기 인코더-디코더 서브-네트워크에 연결된 사이드 서브-네트워크를 포함함 ― ;
    상기 예측된 2D 키포인트들에 대한 제1 손실 및 상기 예측된 룸 타입에 대한 제2 손실에 기반하여 손실 함수(loss function)를 최적화하고; 그리고
    상기 최적화된 손실 함수에 기반하여 상기 뉴럴 네트워크의 파라미터들을 업데이트하도록 프로그래밍된,
    시스템.
  21. 제20 항에 있어서,
    상기 복수의 룸 타입들의 수는 5보다 더 큰,
    시스템.
  22. 제20 항에 있어서,
    상기 기준 키포인트들 및 상기 예측된 2D 키포인트들은 키포인트 순서와 연관된,
    시스템.
  23. 제20 항에 있어서,
    제1 키포인트 순서는 상기 복수의 룸 타입들 중 제1 룸 타입과 연관되고, 제2 키포인트 순서는 상기 복수의 룸 타입들 중 제2 룸 타입과 연관되고, 상기 제1 키포인트 순서 및 상기 제2 키포인트 순서는 상이한,
    시스템.
  24. 제20 항에 있어서,
    상기 트레이닝 룸 이미지는 단안 이미지(monocular image)를 포함하는,
    시스템.
  25. 제20 항에 있어서,
    상기 트레이닝 룸 이미지는 RGB(Red-Green-Blue) 이미지를 포함하는,
    시스템.
  26. 제20 항에 있어서,
    상기 트레이닝 룸 이미지의 치수는 상기 예측된 2D 키포인트들과 연관된 맵의 치수보다 더 큰,
    시스템.
  27. 제20 항에 있어서,
    상기 인코더 서브-네트워크 및 상기 디코더 서브-네트워크는 복수의 재귀 층들을 포함하는,
    시스템.
  28. 제27 항에 있어서,
    상기 재귀 층들의 재귀 반복들의 수는 2 또는 3인,
    시스템.
  29. 제27 항에 있어서,
    심층 감시(deep supervision)는 상기 재귀 층들에 적용되는,
    시스템.
  30. 제27 항에 있어서,
    상기 재귀 층들의 반복들 중 제1 재귀 반복과 연관된 가중치들은 상기 재귀 층들의 제2 재귀 반복과 연관된 가중치들과 동일한,
    시스템.
  31. 제27 항에 있어서,
    상기 복수의 재귀 층들은 MRED(memory-augmented recurrent encoder-decoder) 네트워크로서 구성되는,
    시스템.
  32. 제20 항에 있어서,
    상기 사이드 서브-네트워크는 룸 타입 분류자를 포함하는,
    시스템.
  33. 제20 항에 있어서,
    상기 예측된 2D 키포인트들에 대한 제1 손실은 상기 복수의 기준 키포인트 위치들과 상기 예측된 2D 키포인트들 사이의 유클리드 손실(Euclidean loss)을 포함하는,
    시스템.
  34. 제20 항에 있어서,
    상기 예측된 룸 타입에 대한 제2 손실은 교차 엔트로피 손실(cross entropy loss)을 포함하는,
    시스템.
  35. 제20 항에 있어서,
    상기 예측된 2D 키포인트들은 예측된 히트 맵으로부터 추출되는,
    시스템.
  36. 제35 항에 있어서,
    상기 하드웨어 프로세서는,
    상기 트레이닝 이미지의 기준 키포인트들과 연관된 기준 히트 맵을 계산하고, 그리고
    상기 예측된 히트 맵과 상기 기준 히트 맵 사이의 차이에 기반하여 상기 예측된 2D 키포인트들에 대한 제1 손실을 계산하도록 프로그래밍된,
    시스템.
  37. 제36 항에 있어서,
    상기 기준 히트 맵은 각각의 기준 키포인트에 대한 위치에 중심을 둔 2-차원 분포를 포함하는,
    시스템.
  38. 제36 항에 있어서,
    상기 기준 히트 맵은 상기 기준 키포인트들로부터 떨어진 백그라운드 및 상기 기준 키포인트들과 연관된 포어그라운드를 포함하고, 상기 하드웨어 프로세서는, 상기 포어그라운드와 상기 백그라운드 사이의 비율에 기반하여 상기 기준 히트 맵에서 그래디언트들(gradients)을 가중하도록 프로그래밍된,
    시스템.
  39. 제38 항에 있어서,
    상기 기준 히트 맵에서 상기 그래디언트들을 가중하기 위해, 상기 하드웨어 프로세서는, 상기 백그라운드의 픽셀들의 값들을 1 미만의 감소 계수(degrading factor)만큼 감소시키도록 프로그래밍된,
    시스템.
  40. 웨어러블 디스플레이 시스템으로서,
    상기 웨어러블 디스플레이 시스템의 착용자의 환경의 룸 이미지들을 획득하도록 구성된 외향 이미징 시스템;
    상기 룸 이미지를 저장하도록 구성된 비-일시적 메모리; 및
    상기 비-일시적인 메모리와 통신하는 하드웨어 프로세서를 포함하고,
    상기 하드웨어 프로세서는,
    상기 환경의 룸 이미지에 액세스하고, 그리고
    상기 룸 이미지에서 룸의 예측된 레이아웃을 결정하기 위해 상기 룸 이미지를 분석하도록 프로그래밍되고,
    상기 룸 이미지를 분석하기 위해, 상기 하드웨어 프로세서는,
    상기 룸 이미지에서 상기 룸에 대한 룸 타입과 연관된 순서화된 2D(two-dimensional) 키포인트들의 세트를 결정하기 위해 뉴럴 네트워크를 사용하고, 그리고
    상기 2D 키포인트들 및 상기 룸 타입에 적어도 부분적으로 기반하여 상기 룸 레이아웃을 제공하도록 프로그래밍된,
    웨어러블 디스플레이 시스템.
  41. 제40 항에 있어서,
    상기 뉴럴 네트워크는 콘볼루션 인코더-디코더 네트워크를 포함하는,
    웨어러블 디스플레이 시스템.
  42. 제41 항에 있어서,
    상기 콘볼루션 인코더-디코더 네트워크는 메모리-증강 재귀 인코더-디코더 네트워크를 포함하는,
    웨어러블 디스플레이 시스템.
  43. 제40 항에 있어서,
    상기 뉴럴 네트워크는 상기 룸 타입을 결정하도록 구성된 분류자를 포함하는,
    웨어러블 디스플레이 시스템.
  44. 제40 항에 있어서,
    상기 하드웨어 프로세서는 히트 맵으로부터 상기 순서화된 2D 키포인트들의 세트를 추출하도록 추가로 프로그래밍된,
    웨어러블 디스플레이 시스템.
  45. 제40 항에 있어서,
    상기 하드웨어 프로세서는,
    상기 룸 이미지를 분석하는 객체 인식기로부터의 객체 정보에 액세스하고, 그리고
    상기 객체 정보와 상기 룸 레이아웃을 결합하도록 추가로 프로그래밍된,
    웨어러블 디스플레이 시스템.
KR1020217028859A 2017-03-17 2018-03-16 룸 레이아웃 추정 방법들 및 기술들 KR20210113443A (ko)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
US201762473257P 2017-03-17 2017-03-17
US62/473,257 2017-03-17
KR1020197029282A KR102302725B1 (ko) 2017-03-17 2018-03-16 룸 레이아웃 추정 방법들 및 기술들
PCT/US2018/022905 WO2018170421A1 (en) 2017-03-17 2018-03-16 Room layout estimation methods and techniques

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
KR1020197029282A Division KR102302725B1 (ko) 2017-03-17 2018-03-16 룸 레이아웃 추정 방법들 및 기술들

Publications (1)

Publication Number Publication Date
KR20210113443A true KR20210113443A (ko) 2021-09-15

Family

ID=63519469

Family Applications (2)

Application Number Title Priority Date Filing Date
KR1020197029282A KR102302725B1 (ko) 2017-03-17 2018-03-16 룸 레이아웃 추정 방법들 및 기술들
KR1020217028859A KR20210113443A (ko) 2017-03-17 2018-03-16 룸 레이아웃 추정 방법들 및 기술들

Family Applications Before (1)

Application Number Title Priority Date Filing Date
KR1020197029282A KR102302725B1 (ko) 2017-03-17 2018-03-16 룸 레이아웃 추정 방법들 및 기술들

Country Status (9)

Country Link
US (3) US10657376B2 (ko)
EP (1) EP3596659A4 (ko)
JP (3) JP6929953B2 (ko)
KR (2) KR102302725B1 (ko)
CN (2) CN117893680A (ko)
AU (3) AU2018236433B2 (ko)
CA (1) CA3055597A1 (ko)
IL (2) IL268913B (ko)
WO (1) WO2018170421A1 (ko)

Families Citing this family (101)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11095869B2 (en) 2015-09-22 2021-08-17 Fyusion, Inc. System and method for generating combined embedded multi-view interactive digital media representations
US10242474B2 (en) 2015-07-15 2019-03-26 Fyusion, Inc. Artificially rendering images using viewpoint interpolation and extrapolation
US10222932B2 (en) 2015-07-15 2019-03-05 Fyusion, Inc. Virtual reality environment based manipulation of multilayered multi-view interactive digital media representations
US11783864B2 (en) 2015-09-22 2023-10-10 Fyusion, Inc. Integration of audio into a multi-view interactive digital media representation
JP6854344B2 (ja) * 2016-11-15 2021-04-07 マジック リープ, インコーポレイテッドMagic Leap,Inc. 直方体検出のための深層機械学習システム
US10437879B2 (en) 2017-01-18 2019-10-08 Fyusion, Inc. Visual search using multi-view interactive digital media representations
WO2018170421A1 (en) 2017-03-17 2018-09-20 Magic Leap, Inc. Room layout estimation methods and techniques
US10838396B2 (en) * 2017-04-18 2020-11-17 Cisco Technology, Inc. Connecting robotic moving smart building furnishings
US10313651B2 (en) 2017-05-22 2019-06-04 Fyusion, Inc. Snapshots at predefined intervals or angles
US11069147B2 (en) 2017-06-26 2021-07-20 Fyusion, Inc. Modification of multi-view interactive digital media representation
US10299982B2 (en) * 2017-07-21 2019-05-28 David M Frankel Systems and methods for blind and visually impaired person environment navigation assistance
US10719951B2 (en) 2017-09-20 2020-07-21 Magic Leap, Inc. Personalized neural network for eye tracking
KR102602117B1 (ko) 2017-10-26 2023-11-13 매직 립, 인코포레이티드 딥 멀티태스크 네트워크들에서 적응적 손실 밸런싱을 위한 그라디언트 정규화 시스템들 및 방법들
US10410350B2 (en) * 2017-10-30 2019-09-10 Rakuten, Inc. Skip architecture neural network machine and method for improved semantic segmentation
US10395147B2 (en) 2017-10-30 2019-08-27 Rakuten, Inc. Method and apparatus for improved segmentation and recognition of images
US11775824B1 (en) 2017-12-04 2023-10-03 Express Scripts Strategic Development, Inc. Labeling apparatus
US10838375B2 (en) * 2017-12-12 2020-11-17 Distech Controls Inc. Inference server and environment controller for inferring via a neural network one or more commands for controlling an appliance
US10845768B2 (en) * 2017-12-12 2020-11-24 Distech Controls Inc. Environment controller and method for inferring via a neural network one or more commands for controlling an appliance
US10895853B2 (en) 2017-12-12 2021-01-19 Distech Controls Inc. Inference server and environment controller for inferring one or more commands for controlling an appliance taking into account room characteristics
US10908561B2 (en) * 2017-12-12 2021-02-02 Distech Controls Inc. Environment controller and method for inferring one or more commands for controlling an appliance taking into account room characteristics
US10726597B1 (en) * 2018-02-22 2020-07-28 A9.Com, Inc. Optically challenging surface detection for augmented reality
US10592747B2 (en) * 2018-04-26 2020-03-17 Fyusion, Inc. Method and apparatus for 3-D auto tagging
WO2019212069A1 (ko) * 2018-04-30 2019-11-07 서울대학교 산학협력단 딥-러닝을 통한 무선신호 전파 채널 해석을 이용한 실내공간의 구조를 예측하는 방법
GB2574795B (en) * 2018-05-04 2022-10-05 Signaturize Holdings Ltd Generating virtual representations
US11552731B2 (en) * 2018-07-20 2023-01-10 Nokia Technologies Oy Learning in communication systems by updating of parameters in a receiving algorithm
JP2021530790A (ja) 2018-07-23 2021-11-11 マジック リープ, インコーポレイテッドMagic Leap, Inc. 頭部姿勢予測のための深層予測器再帰ニューラルネットワーク
US11055531B1 (en) * 2018-08-24 2021-07-06 United Services Automobiie Association (USAA) Augmented reality method for repairing damage or replacing physical objects
US11164067B2 (en) * 2018-08-29 2021-11-02 Arizona Board Of Regents On Behalf Of Arizona State University Systems, methods, and apparatuses for implementing a multi-resolution neural network for use with imaging intensive applications including medical imaging
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
US11188787B1 (en) 2018-09-28 2021-11-30 Apple Inc. End-to-end room layout estimation
KR20200043005A (ko) * 2018-10-17 2020-04-27 삼성전자주식회사 이미지 인식 모델을 트레이닝시키는 장치 및 방법과 이미지 인식 장치 및 방법
EP3654247A1 (en) * 2018-11-15 2020-05-20 IMEC vzw Convolution engine for neural networks
US11087165B2 (en) * 2018-11-29 2021-08-10 Nec Corporation Method and system for contextualizing automatic image segmentation and regression
CN111353349B (zh) * 2018-12-24 2023-10-17 杭州海康威视数字技术股份有限公司 人体关键点检测方法、装置、电子设备及存储介质
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
US10776651B2 (en) 2019-01-18 2020-09-15 Intelligrated Headquarters, Llc Material handling method, apparatus, and system for identification of a region-of-interest
US20200242771A1 (en) * 2019-01-25 2020-07-30 Nvidia Corporation Semantic image synthesis for generating substantially photorealistic images using neural networks
US10628688B1 (en) * 2019-01-30 2020-04-21 Stadvision, Inc. Learning method and learning device, and testing method and testing device for detecting parking spaces by using point regression results and relationship between points to thereby provide an auto-parking system
CN109886176B (zh) * 2019-02-14 2023-02-24 武汉大学 复杂驾驶场景下的车道线检测方法
CN109902601B (zh) * 2019-02-14 2023-04-07 武汉大学 一种结合卷积网络和递归网络的视频目标检测方法
CN111581414B (zh) * 2019-02-18 2024-01-16 北京京东尚科信息技术有限公司 服饰识别、分类及检索的方法、装置、设备及存储介质
US11210547B2 (en) * 2019-03-20 2021-12-28 NavInfo Europe B.V. Real-time scene understanding system
US10984560B1 (en) * 2019-03-29 2021-04-20 Amazon Technologies, Inc. Computer vision using learnt lossy image compression representations
US11461640B2 (en) 2019-04-18 2022-10-04 International Business Machines Corporation Mitigation of conductance drift in neural network resistive processing units
DE112020002126T5 (de) * 2019-04-26 2022-02-24 Nvidia Corporation Erkennung von kreuzungsposen in autonomen maschinenanwendungen
US11067786B2 (en) * 2019-06-07 2021-07-20 Leica Microsystems Inc. Artifact regulation methods in deep model training for image transformation
US11663489B2 (en) * 2019-06-24 2023-05-30 Insurance Services Office, Inc. Machine learning systems and methods for improved localization of image forgery
CN110378253B (zh) * 2019-07-01 2021-03-26 浙江大学 一种基于轻量化神经网络的实时关键点检测方法
US11473915B2 (en) * 2019-07-04 2022-10-18 Mapsted Corp. Magnetic fingerprint neural network training for mobile device indoor navigation
WO2021020305A1 (ja) * 2019-07-29 2021-02-04 京セラ株式会社 画像処理システム、機械学習器、画像処理器及び撮像装置
JP7309506B2 (ja) * 2019-07-29 2023-07-18 京セラ株式会社 画像処理システム、機械学習器、撮像装置及び学習方法
US11321566B2 (en) * 2019-08-22 2022-05-03 Jpmorgan Chase Bank, N.A. Systems and methods for self-learning a floorplan layout using a camera system
US10860954B1 (en) 2019-08-27 2020-12-08 Capital One Services, Llc Roomfinder platform
US11243656B2 (en) * 2019-08-28 2022-02-08 Zillow, Inc. Automated tools for generating mapping information for buildings
US11127139B2 (en) * 2019-09-18 2021-09-21 Adobe Inc. Enhanced semantic segmentation of images
US11531892B2 (en) * 2019-09-24 2022-12-20 Toyota Research Institute, Inc. Systems and methods for detecting and matching keypoints between different views of a scene
CN114450657A (zh) * 2019-10-10 2022-05-06 新加坡国立大学 感官地板系统和包括感官地板系统的感官地板
US11144790B2 (en) * 2019-10-11 2021-10-12 Baidu Usa Llc Deep learning model embodiments and training embodiments for faster training
JP7363384B2 (ja) * 2019-11-05 2023-10-18 富士通株式会社 解析装置、解析プログラム及び解析方法
US11454978B2 (en) 2019-11-07 2022-09-27 Naver Corporation Systems and methods for improving generalization in visual navigation
CN111062416B (zh) * 2019-11-14 2021-09-21 支付宝(杭州)信息技术有限公司 用户聚类及特征学习方法、设备、计算机可读介质
CN111104879B (zh) * 2019-12-09 2020-11-27 贝壳找房(北京)科技有限公司 房屋功能间的识别方法和装置、可读存储介质、电子设备
KR102447814B1 (ko) 2020-12-21 2022-09-26 엘지전자 주식회사 공기조화기 및 그 제어 방법
KR20220089218A (ko) 2020-12-21 2022-06-28 엘지전자 주식회사 공기조화기 및 그 제어 방법
US20230030691A1 (en) * 2019-12-23 2023-02-02 Lg Electronics Inc. Air conditioner and method for controlling same
CN110751721B (zh) * 2019-12-24 2020-10-30 广东博智林机器人有限公司 家具布局图纸的生成方法和装置、计算机设备及存储介质
CN111179160A (zh) * 2020-01-02 2020-05-19 广东博智林机器人有限公司 一种信息过滤方法、装置、电子设备及存储介质
CN111259850B (zh) * 2020-01-23 2022-12-16 同济大学 一种融合随机批掩膜和多尺度表征学习的行人重识别方法
US11796333B1 (en) 2020-02-11 2023-10-24 Keysight Technologies, Inc. Methods, systems and computer readable media for augmented reality navigation in network test environments
CN111340938B (zh) * 2020-02-21 2020-12-11 贝壳找房(北京)科技有限公司 用于获得房屋布局信息的方法、网络模型训练方法及装置
US11450008B1 (en) * 2020-02-27 2022-09-20 Amazon Technologies, Inc. Segmentation using attention-weighted loss and discriminative feature learning
WO2021174060A1 (en) * 2020-02-27 2021-09-02 Scale Builders Co Apparatus and method of converting digital images to three-dimensional construction images
KR102119687B1 (ko) * 2020-03-02 2020-06-05 엔에이치네트웍스 주식회사 영상 이미지 학습장치 및 방법
KR102167808B1 (ko) * 2020-03-31 2020-10-20 한밭대학교 산학협력단 Ar에 적용 가능한 의미적인 분할 방법 및 시스템
WO2021210414A1 (ja) * 2020-04-17 2021-10-21 株式会社Roxy 可視化方法、これに用いるプログラム、および、可視化装置、並びに、これを備える判別装置
CN111507354B (zh) * 2020-04-17 2023-12-12 北京百度网讯科技有限公司 信息抽取方法、装置、设备以及存储介质
JPWO2021210413A1 (ko) * 2020-04-17 2021-10-21
CN111523169B (zh) * 2020-04-24 2023-06-13 广东博智林机器人有限公司 一种装修方案生成方法、装置、电子设备及存储介质
CN111914612B (zh) * 2020-05-21 2024-03-01 淮阴工学院 一种基于改进的卷积神经网络的施工图图元自适应识别方法
US11341473B2 (en) 2020-09-30 2022-05-24 Block, Inc. Context-based communication requests
US11803829B2 (en) 2020-09-30 2023-10-31 Block, Inc. Device-aware communication requests
EP4229552A4 (en) * 2020-10-13 2024-03-06 Flyreel Inc GENERATION OF MEASUREMENTS OF PHYSICAL STRUCTURES AND ENVIRONMENTS THROUGH AUTOMATED ANALYSIS OF SENSOR DATA
CN112434198A (zh) * 2020-11-24 2021-03-02 深圳市明源云科技有限公司 图表组件推荐方法及装置
CN112464311A (zh) * 2020-11-24 2021-03-09 中天众达智慧城市科技有限公司 一种智慧城市数据中心的设备布置方法
US11570050B2 (en) 2020-11-30 2023-01-31 Keysight Technologies, Inc. Methods, systems and computer readable media for performing cabling tasks using augmented reality
CN112836710B (zh) * 2021-02-23 2022-02-22 浙大宁波理工学院 一种基于特征金字塔网络的房间布局估计获取方法与系统
CN112837336B (zh) * 2021-02-23 2022-02-22 浙大宁波理工学院 一种基于关键点热图修正的房间布局估计获取方法与系统
US11790648B2 (en) 2021-02-25 2023-10-17 MFTB Holdco, Inc. Automated usability assessment of buildings using visual data of captured in-room images
US11836973B2 (en) 2021-02-25 2023-12-05 MFTB Holdco, Inc. Automated direction of capturing in-room information for use in usability assessment of buildings
EP4298610A1 (en) * 2021-05-25 2024-01-03 Samsung Electronics Co., Ltd. A method and an electronic apparatus for acquiring a floor map of a room layout
US11657611B2 (en) * 2021-05-28 2023-05-23 Verizon Patent And Licensing Inc. Methods and systems for augmented reality room identification based on room-object profile data
KR102325838B1 (ko) * 2021-06-01 2021-11-15 한밭대학교 산학협력단 Ar에 적용 가능한 마커리스 기반의 실내위치 측정시스템 및 그 방법
CN113362461B (zh) * 2021-06-18 2024-04-02 盎锐(杭州)信息科技有限公司 基于语义分割的点云匹配方法、系统及扫描终端
US20220405500A1 (en) * 2021-06-21 2022-12-22 Google Llc Computationally efficient and robust ear saddle point detection
CA3225826A1 (en) * 2021-07-27 2023-02-02 Caroline ROUGIER Two-dimensional pose estimations
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
CN113642090B (zh) * 2021-10-14 2022-04-01 深圳润世华软件和信息技术服务有限公司 建筑布局生成方法、装置、计算机设备和存储介质
KR20230063234A (ko) * 2021-11-01 2023-05-09 삼성전자주식회사 카메라의 캘리브레이션을 위한 전자 장치 및 방법
USD1021943S1 (en) 2021-12-15 2024-04-09 Block, Inc. Display screen or portion thereof with a graphical user interface
CN114491772B (zh) * 2022-03-23 2022-09-13 清华大学 一种户型布局生成方法及装置
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

Family Cites Families (77)

* 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
WO2003077549A1 (en) 2002-03-13 2003-09-18 Imax Corporation Systems and methods for digitally re-mastering or otherwise modifying motion pictures or other image sequences data
US8098901B2 (en) 2005-01-26 2012-01-17 Honeywell International Inc. Standoff iris recognition system
KR20050025927A (ko) 2003-09-08 2005-03-14 유웅덕 홍채인식을 위한 동공 검출 방법 및 형상기술자 추출방법과 그를 이용한 홍채 특징 추출 장치 및 그 방법과홍채인식 시스템 및 그 방법
US7248720B2 (en) 2004-10-21 2007-07-24 Retica Systems, Inc. Method and system for generating a combined retina/iris pattern biometric
US20070081123A1 (en) 2005-10-07 2007-04-12 Lewis Scott W Digital eyewear
US8696113B2 (en) 2005-10-07 2014-04-15 Percept Technologies Inc. Enhanced optical and perceptual digital eyewear
US11428937B2 (en) 2005-10-07 2022-08-30 Percept Technologies Enhanced optical and perceptual digital eyewear
JP4824420B2 (ja) 2006-02-07 2011-11-30 アイテック株式会社 視線ベクトル検出方法及び同装置
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
US8098891B2 (en) 2007-11-29 2012-01-17 Nec Laboratories America, Inc. Efficient multi-hypothesis multi-human 3D tracking in crowded scenes
WO2010003044A2 (en) 2008-07-03 2010-01-07 Nec Laboratories America, Inc. Epithelial layer detector and related methods
WO2010129074A1 (en) 2009-01-14 2010-11-11 Indiana University Research & Technology Corporation System and method for identifying a person with reference to a sclera image
JP5763681B2 (ja) 2010-01-22 2015-08-12 オプティメディカ・コーポレイション 走査レーザによる嚢切開を自動配置する装置
US8345984B2 (en) 2010-01-28 2013-01-01 Nec Laboratories America, Inc. 3D convolutional neural networks for automatic human action recognition
US9304319B2 (en) 2010-11-18 2016-04-05 Microsoft Technology Licensing, Llc Automatic focus improvement for augmented reality displays
JP6185844B2 (ja) 2010-12-24 2017-08-30 マジック リープ, インコーポレイテッド 人間工学的ヘッドマウントディスプレイデバイスおよび光学システム
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
CN103635891B (zh) 2011-05-06 2017-10-27 奇跃公司 大量同时远程数字呈现世界
EP2760363A4 (en) 2011-09-29 2015-06-24 Magic Leap Inc TACTILE GLOVE FOR HUMAN COMPUTER INTERACTION
BR112014010230A8 (pt) 2011-10-28 2017-06-20 Magic Leap Inc sistema e método para realidade virtual e aumentada
CA3024054C (en) 2011-11-23 2020-12-29 Magic Leap, Inc. Three dimensional virtual and augmented reality display system
WO2013152205A1 (en) 2012-04-05 2013-10-10 Augmented Vision Inc. Wide-field of view (fov) imaging devices with active foveation capability
US9671566B2 (en) 2012-06-11 2017-06-06 Magic Leap, Inc. Planar waveguide apparatus with diffraction element(s) and system employing same
CN104737061B (zh) 2012-06-11 2018-01-16 奇跃公司 使用波导反射器阵列投射器的多深度平面三维显示器
US9141916B1 (en) 2012-06-29 2015-09-22 Google Inc. Using embedding functions with a deep network
JP5467303B1 (ja) 2012-07-31 2014-04-09 独立行政法人科学技術振興機構 注視点検出装置、注視点検出方法、個人パラメータ算出装置、個人パラメータ算出方法、プログラム、及びコンピュータ読み取り可能な記録媒体
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
US10151875B2 (en) 2013-01-15 2018-12-11 Magic Leap, Inc. Ultra-high resolution scanning fiber display
KR102387314B1 (ko) 2013-03-11 2022-04-14 매직 립, 인코포레이티드 증강 및 가상 현실을 위한 시스템 및 방법
US9147154B2 (en) 2013-03-13 2015-09-29 Google Inc. Classifying resources using a deep network
NZ751602A (en) 2013-03-15 2020-01-31 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
US9595134B2 (en) * 2013-05-11 2017-03-14 Mitsubishi Electric Research Laboratories, Inc. Method for reconstructing 3D scenes from 2D images
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 北京智谷睿拓技术服务有限公司 眼睛光学参数检测系统及方法
EP3058418B1 (en) 2013-10-16 2023-10-04 Magic Leap, Inc. Virtual or augmented reality headsets having adjustable interpupillary distance
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 株式会社デンソーアイティーラボラトリ 学習装置、学習プログラム、及び学習方法
KR102268462B1 (ko) 2013-11-27 2021-06-22 매직 립, 인코포레이티드 가상 및 증강 현실 시스템들 및 방법들
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
EP3100098B8 (en) 2014-01-31 2022-10-05 Magic Leap, Inc. Multi-focal display system and method
EP4071537A1 (en) 2014-01-31 2022-10-12 Magic Leap, Inc. Multi-focal display system
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
WO2015164807A1 (en) 2014-04-25 2015-10-29 Texas State University Detection of brain injury and subject state with eye movement biometrics
US20150324568A1 (en) 2014-05-09 2015-11-12 Eyefluence, Inc. Systems and methods for using eye signals with secure mobile communications
KR102193052B1 (ko) 2014-05-30 2020-12-18 매직 립, 인코포레이티드 가상 또는 증강 현실 장치로 가상 콘텐츠 디스플레이를 생성하기 위한 방법들 및 시스템들
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
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
US9530071B2 (en) 2014-10-10 2016-12-27 Beijing Kuangshi Technology Co., Ltd. Hierarchical interlinked multi-scale convolutional network for image parsing
KR102276339B1 (ko) 2014-12-09 2021-07-12 삼성전자주식회사 Cnn의 근사화를 위한 학습 장치 및 방법
EP3238144B1 (en) * 2014-12-24 2021-04-14 DeepMind Technologies Limited Augmenting neural networks to generate additional outputs
CN107438866B (zh) * 2015-05-13 2020-12-01 谷歌公司 深度立体:学习从现实世界形象预测新视图
USD758367S1 (en) 2015-05-14 2016-06-07 Magic Leap, Inc. Virtual reality headset
US10146997B2 (en) 2015-08-21 2018-12-04 Magic Leap, Inc. Eyelid shape estimation using eye pose measurement
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 分類モデルを学習する方法、コンピュータ・システムおよびコンピュータ・プログラム
EP3485425B1 (en) 2016-07-14 2023-08-23 Magic Leap, Inc. Deep neural network for iris identification
CN114495249A (zh) 2016-07-14 2022-05-13 奇跃公司 使用角膜曲率的虹膜边界估计
WO2018039269A1 (en) 2016-08-22 2018-03-01 Magic Leap, Inc. Augmented reality display device with deep learning sensors
RU2016138608A (ru) 2016-09-29 2018-03-30 Мэджик Лип, Инк. Нейронная сеть для сегментации изображения глаза и оценки качества изображения
CA3038967A1 (en) 2016-10-04 2018-04-12 Magic Leap, Inc. Efficient data layouts for convolutional neural networks
JP6854344B2 (ja) 2016-11-15 2021-04-07 マジック リープ, インコーポレイテッドMagic Leap,Inc. 直方体検出のための深層機械学習システム
WO2018170421A1 (en) 2017-03-17 2018-09-20 Magic Leap, Inc. Room layout estimation methods and techniques

Also Published As

Publication number Publication date
JP2020514890A (ja) 2020-05-21
KR102302725B1 (ko) 2021-09-14
KR20190128190A (ko) 2019-11-15
IL289588A (en) 2022-03-01
JP2021176109A (ja) 2021-11-04
AU2022203838A1 (en) 2022-06-23
US20230394315A1 (en) 2023-12-07
AU2018236433B2 (en) 2022-03-03
JP2022171705A (ja) 2022-11-11
EP3596659A1 (en) 2020-01-22
WO2018170421A1 (en) 2018-09-20
US11775835B2 (en) 2023-10-03
JP7135180B2 (ja) 2022-09-12
CN117893680A (zh) 2024-04-16
JP7305859B2 (ja) 2023-07-10
JP6929953B2 (ja) 2021-09-01
AU2018236433A1 (en) 2019-09-12
US20200234051A1 (en) 2020-07-23
CN110419049B (zh) 2024-01-23
US20180268220A1 (en) 2018-09-20
CN110419049A (zh) 2019-11-05
US10657376B2 (en) 2020-05-19
CA3055597A1 (en) 2018-09-20
IL268913B (en) 2022-02-01
AU2022203390A1 (en) 2022-06-09
IL268913A (en) 2019-10-31
EP3596659A4 (en) 2021-01-27

Similar Documents

Publication Publication Date Title
KR102302725B1 (ko) 룸 레이아웃 추정 방법들 및 기술들
US11853894B2 (en) Meta-learning for multi-task learning for neural networks
US11797860B2 (en) Deep learning system for cuboid detection
Lee et al. Roomnet: End-to-end room layout estimation
CA3078530A1 (en) Gradient normalization systems and methods for adaptive loss balancing in deep multitask networks
Greene et al. Flame: Fast lightweight mesh estimation using variational smoothing on delaunay graphs
US20220215617A1 (en) Viewpoint image processing method and related device
Ma et al. Depth estimation from single image using CNN-residual network
Mandal et al. Unsupervised Learning of Depth, Camera Pose and Optical Flow from Monocular Video
Heydrich Lightweight deep learning for monocular depth estimation
Lin Motion-aware monocular depth completion for aerial vehicles with deep neural networks
Nicholas Greene et al. FLaME: Fast lightweight mesh estimation using variational smoothing on delaunay graphs

Legal Events

Date Code Title Description
A107 Divisional application of patent
A201 Request for examination
E902 Notification of reason for refusal