KR20120138741A - 깊이 카메라 호환성 - Google Patents

깊이 카메라 호환성 Download PDF

Info

Publication number
KR20120138741A
KR20120138741A KR1020127020257A KR20127020257A KR20120138741A KR 20120138741 A KR20120138741 A KR 20120138741A KR 1020127020257 A KR1020127020257 A KR 1020127020257A KR 20127020257 A KR20127020257 A KR 20127020257A KR 20120138741 A KR20120138741 A KR 20120138741A
Authority
KR
South Korea
Prior art keywords
depth
camera
depth image
depth camera
virtual
Prior art date
Application number
KR1020127020257A
Other languages
English (en)
Other versions
KR101783379B1 (ko
Inventor
사기 카츠
아비샤이 애들러
가이 길보아
Original Assignee
마이크로소프트 코포레이션
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 마이크로소프트 코포레이션 filed Critical 마이크로소프트 코포레이션
Publication of KR20120138741A publication Critical patent/KR20120138741A/ko
Application granted granted Critical
Publication of KR101783379B1 publication Critical patent/KR101783379B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N13/00Stereoscopic video systems; Multi-view video systems; Details thereof
    • H04N13/10Processing, recording or transmission of stereoscopic or multi-view image signals
    • H04N13/106Processing image signals
    • H04N13/139Format conversion, e.g. of frame-rate or size
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T15/003D [Three Dimensional] image rendering
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N13/00Stereoscopic video systems; Multi-view video systems; Details thereof
    • H04N13/10Processing, recording or transmission of stereoscopic or multi-view image signals
    • H04N13/106Processing image signals
    • H04N13/128Adjusting depth or disparity
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N13/00Stereoscopic video systems; Multi-view video systems; Details thereof
    • H04N13/20Image signal generators
    • H04N13/204Image signal generators using stereoscopic image cameras
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N13/00Stereoscopic video systems; Multi-view video systems; Details thereof
    • H04N13/20Image signal generators
    • H04N13/271Image signal generators wherein the generated image signals comprise depth maps or disparity maps
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N13/00Stereoscopic video systems; Multi-view video systems; Details thereof
    • H04N13/30Image reproducers
    • H04N2013/40Privacy aspects, i.e. devices showing different images to different viewers, the images not being viewpoints of the same scene
    • H04N2013/405Privacy aspects, i.e. devices showing different images to different viewers, the images not being viewpoints of the same scene the images being stereoscopic or three dimensional

Abstract

깊이 이미지 컨슈머와 호환되지 않는 비지원 유형을 갖고 있는 원래 깊이 이미지를 수신하여, 원래 깊이 이미지를 깊이 이미지 컨슈머와 호환되는 지원 가상 깊이 카메라 파라미터를 갖고 있는 가상 깊이 이미지로 변환함으로써, 깊이 이미지 컨슈머와 복수의 다른 깊이 이미지 프로듀서 간에 호환성을 제공한다. 이후에, 이 가상 깊이 이미지는 깊이 이미지 컨슈머에 출력된다.

Description

깊이 카메라 호환성{DEPTH CAMERA COMPATIBILITY}
카메라를 사용하여 장면의 정지 이미지(still images)를 캡쳐할 수 있다. 빠르게 연속적으로 찍힌 여러 개의 정지 이미지는, 각각의 프레임이 다른 정지 이미지에 해당하는 복수의 프레임을 포함하는 영화를 제작하는 데 사용될 수 있다. 이런 이미지들은 여러 다양한 애플리케이션에서 매우 유용하지만, 몇몇 목적에는 적합하지 않다. 특히, 종래의 정지 이미지와 영화는 장면에서 캡쳐된 다양한 표면의 상대 깊이를 정확하게 가늠할 만큼 충분한 정보를 제공하지 않는다. 이러한 요구를 충족시키기 위해 여러 다른 유형의 깊이 카메라가 발전해왔다. 그러나, 다양한 다른 유형의 깊이 카메라는 여러 면에서 서로 다른 깊이 이미지를 생성할 수 있다. 따라서, 깊이 이미지를 사용하는 애플리케이션은 바라는 특성이 있는 깊이 이미지를 생성하는 특정 유형의 깊이 카메라와만 호환 가능하게 된다.
본 요약은 아래의 상세한 설명에서 추가적으로 설명되는 일련의 컨셉을 간략화된 형태로 소개하기 위한 것이다. 본 요약은 특허청구된 대상의 핵심적인 특징 또는 필수적인 특징을 밝히기 위한 것이 아니며, 특허청구된 대상의 범위를 결정하는 데 일조하기 위해 사용되는 것도 아니다. 또한 특허청구된 대상은 본 내용에서 언급된 임의의 또는 모든 단점들을 해결하는 구현에 한정되지 않는다.
본 발명의 일 양태에 따르면, 깊이 이미지 컨슈머(depth image consumer)와 복수의 다른 깊이 이미지 프로듀서들(depth image producers) 간의 호환성은, 깊이 이미지 컨슈머와 호환되지 않는 비지원 유형을 갖고 있는 원래 깊이 이미지를 수신하여, 원래 깊이 이미지를 깊이 이미지 컨슈머와 호환되는 지원 가상 깊이 카메라 파라미터를 갖고 있는 가상 깊이 이미지로 변환함으로써 제공될 수 있다. 이후에, 이러한 가상 깊이 이미지는 깊이 이미지 컨슈머에 출력될 수 있다.
도 1은 예시적인 깊이 카메라 사용 환경을 도시한다.
도 2는 본 발명의 일 실시예에 따른 깊이 카메라 상호 호환(interchangeability) 시스템을 도시한다.
도 3(a) 및 3(b)는 깊이 카메라 뷰-프러스텀(view frustums)을 개략적으로 도시한다.
도 4(a)-4(c)는 본 발명에 따른 예시적인 깊이 이미지 프로듀서를 도시한다.
도 5는 깊이 이미지 컨슈머와 복수의 다른 깊이 이미지 프로듀서들 간에 호환성을 제공하는 예시적인 방법을 도시한다.
도 6은 깊이 카메라 호환성을 제공하는 예시적인 다른 방법을 도시한다.
도 7은 광원으로부터 떨어진 센서에서 생성되는 음영 효과(shadow effect)의 예를 개략적으로 도시한다.
도 8은 그림자 합성 알고리즘(shadow synthesis algorithm)을 통해 음영진 화소 찾기를 보여주는 예시적인 도표를 도시한다.
도 9는 깊이 추상화층(depth abstraction layer) 내의 예시적인 이미지 처리 블록을 개략적으로 도시한다.
도 10은 도 9의 예시적인 이미지 처리 블록을 보다 상세하게 개략적으로 도시한다.
도 11은 본 발명의 일 실시예에 따른 컴퓨팅 시스템을 개략적으로 도시한다.
본 발명은 깊이 카메라 호환성에 관한 것이다. 호환성 기술로 인해, 본원에 설명된 바와 같이, 다른 모델의 깊이 카메라들이 동일한 컴퓨팅 시스템에서 사용될 수 있다. 애플리케이션 개발자는, 애플리케이션 개발자가 애플리케이션을 제작할 당시에는 존재하지 않은 깊이 카메라를 포함하는 여러 가지 다양한 깊이 카메라들과 호환 가능한 애플리케이션을 용이하게 제작할 수 있다. 본 발명의 일 실시예에 따르면, 애플리케이션 개발자는 일반적인 가상 깊이 카메라와 함께 동작하도록 구성된 애플리케이션을 개발할 수 있고, 호환성 기술로 인해 다양한 다른 깊이 카메라들로부터의 원래 입력이 일반적인 가상 깊이 카메라와 호환되는 형태로 변환될 수 있다. 이처럼, 애플리케이션은 완전히 다른 깊이-파악 기술들(예컨대, 구조광(structured light), 비행 시간(time-of-flight), 스테레오 비전(stereo vision) 등)을 이용하는 깊이 카메라들을 포함하는 여러 가지 다양한 깊이 카메라들과 호환될 수 있다.
본원에 설명된 기술을 사용하여, 애플리케이션 개발자는 여러 가지 다른 깊이 카메라들을 지원하기 위한 지루하고 힘든 작업을 걱정할 필요가 없고, 대신 하나의 일반적인 가상 깊이 카메라에 대해 개발하면 된다. 그와 동시에, 호환성 기술은 향상된 성능, 절감된 제작 및/또는 운영 비용, 개선된 에너지 효율, 및/또는 기타 유용한 특성을 제공하는 새로운 깊이 카메라의 개발 및 구현을 용이하게 한다. 따라서, 새로운 카메라 기술이 발전함에 따라, 이러한 기술은 이전에 개발된 애플리케이션들과도 역으로 호환되는 새로운 카메라에서 구현될 수도 있다.
도 1은 앞서 소개한 카메라 호환성을 제공하는 깊이 카메라 상호 호환 시스템으로 설계될 수 있는 컴퓨팅 시스템(10)의 비제한적인 예를 도시한다. 특히, 도 1은 여러 가지 다양한 게임을 플레이하고, 하나 이상의 다른 미디어 유형을 플레이하고, 및/또는 비-게임 애플리케이션을 제어하거나 조작하는 데 사용될 수 있는 게임 콘솔(12)을 도시한다. 도 1은 컨슈머들, 예컨대, 컨슈머(18)에게 시각 정보를 프리젠테이션하는 데 사용되는 고화질 텔레비전 또는 HDTV(16) 형태의 디스플레이(14) 또한 도시한다. 또한, 도 1은 하나 이상의 컨슈머, 예컨대, 컨슈머(18)를 시각적으로 모니터링하는 데 사용되는 깊이 카메라(20) 형태의 캡쳐 장치를 도시한다. 게임 시스템과 관련하여 설명되었지만, 깊이 카메라 상호 호환 시스템은 깊이 카메라로부터의 깊이 이미지를 사용하도록 구성된 사실상 모든 컴퓨팅 시스템에서 구현될 수 있음을 이해할 것이다.
게임 콘솔(12)과 같은 컴퓨팅 시스템은 컨슈머(18)와 같은 하나 이상의 타겟을 인식, 분석 및/또는 트래킹하는 데 사용될 수 있다. 타겟 움직임은 운영 체제 및/또는 애플리케이션 컨트롤로서 해석될 수 있다. 운영 체제 및/또는 애플리케이션의 사실상 제어가능한 모든 양태가 컨슈머(18)와 같은 타겟의 움직임에 의해 제어될 수 있다.
이에 더해서 또는 이 대신에, 깊이 카메라(20)에 의해 얻어진 깊이 정보는 타겟의 트래킹 이외의 목적으로도 사용될 수 있다. 예를 들어, 깊이 카메라(20)를 사용하여 방 및/또는 하나 이상의 사물을 시각적으로 탐색할 수 있다. 깊이 카메라(20)로부터 얻어진 깊이 정보는 탐색 중이던 방 및/또는 사물(들)의 삼차원 컴퓨터 판독가능 모델을 생성하는 데 사용될 수 있다.
다른 예로, 깊이 카메라는 자동차나 로봇과 같은 움직이는 컴퓨팅 시스템 상의 근접 센서(proximity sensor)로서 사용될 수 있다.
깊이 카메라, 예컨대, 깊이 카메라(20)를 사용하여 이들 및 각종 다른 유용한 기능을 제공할 수 있다. 특히, 애플리케이션은 깊이 카메라의 깊이 정보를 이용하는 수많은 다른 기능을 제공하기 위해 개발되고 사용될 수 있다. 한편, 대부분의 애플리케이션은 보았던 장면의 현실적인 특성을 깊이 정보로부터 추론하기 위해 복잡한 알고리즘과 처리 전략을 포함한다. 예를 들어, 타겟을 트래킹하는 골격의 기계 형상으로 컨슈머(18)와 같은 타겟을 모델링하기 위해 골격 트래킹 알고리즘 및 처리 전략이 이용될 수 있다. 다른 예로, 장면의 바닥을 찾기 위해 바닥 찾기 알고리즘(floor finding algorithms)을 이용할 수 있다.
본원에서 설명된 카메라 호환성 기술을 이용하지 않는 애플리케이션은 특정 형식의 및/또는 특정 파라미터를 갖는 깊이 정보를 수신하도록 설계될 수 있다. 이러한 애플리케이션은 원하는 형식 및/또는 파라미터와 일치하지 않는 깊이 정보를 사용할 수 없다. 경우에 따라서는, 원하는 형식 및/또는 파라미터와 일치하지 않는 깊이 정보가 이 애플리케이션과 충돌할 수도 있다.
각각의 다른 유형의 깊이 카메라는 하나 이상의 형식 차이 및/또는 다른 파라미터를 갖는 깊이 정보를 생성할 수 있다. 따라서, 지금까지는 염두해 둔 특정 깊이 카메라로 애플리케이션을 설계해왔다. 그러나, 애플리케이션이 단지 특정 깊이 카메라와만 사용되도록 설계되면, 그 애플리케이션은 생소한 형식의 및/또는 예상치 못한 파라미터를 갖는 깊이 정보를 출력하는 새로운 카메라들을 지원하지 못할 수 있다.
도 2는 깊이 이미지 컨슈머(32)와 복수의 다른 깊이 이미지 프로듀서들(34)(예컨대, 깊이 이미지 프로듀서(34a), 깊이 이미지 프로듀서(34b), 및 깊이 이미지 프로듀서(34c)) 간에 호환성을 제공하는 깊이 카메라 상호 호환 시스템(30)을 도시한다. 본원에서 사용된 바와 같이, 깊이 이미지 컨슈머는 깊이 카메라로부터의 깊이 정보를 이용하도록 구성된 임의의 운영 체제, 애플리케이션, 서비스, 프로세스, 모듈, 엔진 또는 기타 객체를 말한다.
깊이 카메라 상호 호환 시스템(30)은 깊이 이미지 컨슈머들이 어떤 모델의 깊이 카메라를 사용할 것인지에 대해 많은 유연성을 제공한다. 다른 파라미터들을 갖는 카메라, 다른 깊이 파악 기술에 기반하는 카메라 및 다른 유형의 깊이 이미지를 생성하는 카메라들이 호환되어 깊이 카메라 상호 호환 시스템(30)과 함께 사용될 수 있다.
예를 들어, 깊이 이미지 프로듀서(34a)는 깊이 이미지를 가늠하기 위해 구조광 기술을 사용하는 깊이 카메라를 포함할 수 있고, 깊이 이미지 프로듀서(34b)는 깊이 이미지를 가늠하기 위해 TOF(time of flight) 기술을 사용하는 깊이 카메라를 포함할 수 있다. 깊이 카메라 상호 호환 시스템(30)으로 인해, 이들 카메라는 깊이 이미지 컨슈머(32)와 호환될 수 있다. 깊이 이미지 컨슈머(32)가 어느 한 쪽 카메라와의 호환을 위해 특별히 설계되었을 필요는 없다. 깊이 이미지 컨슈머(32)는 이들 카메라가 출시되기 전에 개발되었을 수 있다. 즉, 깊이 카메라 상호 호환 시스템(30)이 깊이 이미지 컨슈머 및, 깊이 이미지 컨슈머가 개발된 후에 개발된 깊이 카메라들을 포함하는 각종 다른 깊이 카메라들과의 호환성을 용이하게 한다.
도 2에 도시된 바와 같이, 깊이 카메라 상호 호환 시스템(30)은 초기화 모듈(initialization module)(36), 캡쳐 모듈(38), 가상화 모듈(virtualization module)(40), 및 출력 모듈(42)을 포함한다. 적어도 일부 실시예에서는, 깊이 카메라 상호 호환 시스템(30)의 초기화 모듈, 캡쳐 모듈, 가상화 모듈, 출력 모듈 및/또는 그 밖의 컴포넌트가 API(application programming interface)의 일부로서 구현될 수 있다. API는 깊이 이미지 프로듀서와 깊이 이미지 컨슈머 간에 사용될 통신 협약을 구축하기 위해 운영 체제, 애플리케이션, 라이브러리 및/또는 기타 객체들에 의해 구현될 수 있다. API는 깊이 이미지 프로듀서와 깊이 이미지 컨슈머 간의 통신을 위해 사용되는 루틴, 데이터 구조, 객체 클레스 및 프로토콜에 대한 규격을 포함할 수 있다. 나아가, API는 깊이 이미지의 다양한 양태를 처리하도록 구성된 기능 블록을 포함하거나 기능 블록에 접속할 수 있으며, 이는 예컨대, 가상화 모듈(40) 및 에뮬레이션 모듈(44)과 관련하여 아래에서 설명될 것이다.
초기화 모듈(36)은 깊이 이미지 컨슈머, 예컨대, 깊이 이미지 컨슈머(32)에 대해 지원되는 가상 깊이 카메라 파라미터를 인식하도록(acknowledge) 구성될 수 있다. 이러한 인식을 가능하게 하기 위해, 특정 깊이 카메라(예컨대, 특정 제조사 및 모델의 구조광 깊이 카메라)뿐만 아니라 혹은 이를 대신하여, 가상 깊이 카메라와 호환할 수 있도록 골격 트래킹 게임 애플리케이션과 같은 깊이 이미지 컨슈머가 개발될 수 있다. 이와 같은 경우에, 깊이 이미지 컨슈머는 깊이 이미지 컨슈머가 예상하는 가상 깊이 카메라 파라미터들의 표시(예컨대, x-y-z 해상도, 뷰-프러스텀, 깊이 이미지 유형 등)를 제공하도록 구성될 수 있다. 나아가, 초기화 모듈은 지원되는 가상 깊이 카메라 파라미터들의 표시를 깊이 이미지 컨슈머로부터 수신하도록 구성될 수 있다. 앞서 논의한 바와 같이, 초기화 모듈은 깊이 이미지 컨슈머와 깊이 이미지 프로듀서가 서로 통신하기 위해 사용할 수 있는 API의 일부로서 선택적으로 구현될 수 있다.
지원되는 가상 깊이 카메라 파라미터들의 표시는 가상 깊이 카메라의 예상 뷰-프러스텀 및/또는 가상 깊이 카메라의 예상 해상도를 명시할 수 있다. 이런 예상 뷰-프러스텀 및/또는 예상 해상도는 특정 깊이 카메라의 원래 뷰-프러스텀 및 원래 해상도와 다를 수 있다. 지원되는 가상 깊이 카메라 파라미터들의 표시는 가상 깊이 카메라가 기초로 하는 실제 깊이 카메라의 모델을 명시할 수 있다. 다음의 설명은 초기화 모듈(36)에 의해 인식될 수 있는 상이한 파라미터들의 비제한적인 샘플링을 요약한다.
깊이 카메라는 일반적으로 각각의 화소에서, 가장 가까운 표면으로부터 깊이 카메라 센서까지의 방사상 거리(radial distance)를 측정한다. 이 거리는 깊이 카메라로부터의 광선에 따른 거리를 현실 세계를 모델링하는 삼차원 공간에 투사시킴으로써 세계 좌표로 변환될 수 있다. 이러한 프로세스는 엄밀한 선형 경계가 존재하지 않는 삼차원 샘플들을 생성한다. 대신에, 포인트들이 깊이 카메라의 뷰-프러스텀에 의해 - 두 개의 동심원 공의 두 삼차원 호(arcs) 사이에 갇힌 공간(렌즈 왜곡은 없다고 가정함)에 의해 제한된다. 도 3(a)는 예시적인 깊이 카메라(48)에 대한 예시적인 뷰-프러스텀(46)을 도시한다.
동심원 공들의 위치는 깊이 카메라로 측정가능한 필드(field)의 깊이에 의해 결정된다. 작은 동심원 공은 그 깊이 카메라에 대한 최소 측정 거리와 같은 반경을 갖고, 큰 동심원 공은 깊이 카메라에 대한 최대 측정 거리와 같은 반경을 갖는다. 공간 상의 삼차원 호의 크기는 그 깊이 카메라에 대한 시야(즉, 시야각(view angles))에 의해 결정된다. 깊이 카메라의 뷰-프러스텀의 위치와 방향은 깊이 카메라의 물리적인 위치 및 물리적인 오리엔테이션(orientation)에 의해 결정된다. 얼마나 많은 다른 화소들이 뷰-프러스텀에 포함되었는지는 깊이 카메라의 해상도에 의해 결정된다. 깊이 카메라의 민감도(해상도)는 깊이 카메라의 출력으로서 수신되는 화소 당 비트 수에 달려 있다. 한편, 실제 민감도는 더 낮을 수 있다.
파라미터(예컨대, 필드 깊이, 시야, 해상도, 위치, 방향, 렌즈 왜곡 등)는 카메라마다 다를 수 있다. 카메라들 간의 파라미터 차이는 깊이 이미지 컨슈머들이 이런 차이에 상당히 민감하기 때문에 문제가 될 수 있다. 따라서, 특정 깊이 카메라 파라미터를 갖고 있는 특정 깊이 카메라로부터 깊이 이미지를 수신하도록 개발되는 대신에, 가상 깊이 카메라 파라미터를 갖고 있는 가상 깊이 카메라와 호환되도록 깊이 이미지 컨슈머가 개발될 수 있다. 아래에 설명된 바와 같이, 깊이 카메라 상호 호환 시스템은 실제 카메라로부터 수신되는 깊이 정보를 가상 깊이 카메라의 가상 파라미터에 따라 효과적으로 변환하여, 실제 카메라로부터의 깊이 정보가 깊이 이미지 컨슈머에 의해 사용될 수 있게 한다.
몇몇 실시예에서, 초기화 모듈(36)은 깊이 이미지 컨슈머의 지원되는 가상 깊이 카메라 파라미터와의 호환을 위해 깊이 카메라를 용이하게 조준하도록 조준 명령어(aiming instructions)(37)를 생성하도록 구성될 수 있다. 예를 들어, 깊이 이미지 컨슈머는 컨슈머의 양쪽 발이 스캔될 수 있도록 깊이 카메라가 바닥을 향해 아래로 조준되길 바랄 수 있다. 따라서, 이러한 바램을 전달하기 위해 조준 명령어가 생성될 수 있다. 자동으로 자신의 위치를 바꾸기 위한 모터 또는 기타 수단을 포함하는 깊이 카메라(예컨대, 깊이 이미지 프로듀서(34c)의 깊이 카메라)에 대한 실시예에서, 초기화 모듈은 깊이 카메라가 조준 명령어에 따라 자신의 위치를 바꿀 수 있도록, 깊이 카메라에 조준 명령어를 전송하도록 구성될 수 있다. 몇몇 실시예에서, 컨슈머가 깊이 카메라의 위치를 수동으로 바꿀 수 있도록, 비주얼 및/또는 오디오 명령어를 통해 조준 명령어가 컨슈머에게 전달될 수도 있다.
몇몇 실시예에서, 깊이 이미지 컨슈머가 기대하고 있는 좌표 시스템을 갖고 있는 깊이 이미지를 수신할 수 있도록 좌표 시스템을 추상화할 수 있다. 경우에 따라서, 이는, 시선(line of sight)을 측정하는 하드웨어를 사용하거나 또는 카메라에 대한 바닥의 각도를 측정함으로써, (예컨대) 바닥과 나란하게 되도록 좌표 시스템을 회전하는 것을 포함할 수 있다.
캡쳐 모듈(38)은 깊이 이미지 프로듀서로부터 원래 깊이 이미지를 수신하도록 구성될 수 있다. 비제한적인 예로, 캡쳐 모듈은 TOF(time of flight) 카메라를 포함하는 깊이 이미지 프로듀서로부터 원래 깊이 이미지를 수신할 수 있다. 앞서 논의한 바와 같이, 캡쳐 모듈은 깊이 이미지 컨슈머와 깊이 이미지 프로듀서가 서로 통신하기 위해 사용 가능한 API의 일부로서 선택적으로 구현될 수 있다.
깊이 이미지 프로듀서는 단지 깊이 카메라만을 포함하거나, 또는 오프보드(off-board) 처리 엔진과 깊이 카메라를 포함할 수도 있다. 도 4(a)에 도시된 바와 같이, 깊이 이미지 프로듀서(34')는 실제(raw) 깊이 카메라 데이터(도시되지 않음)를 원래 깊이 이미지(54)로 변환하도록 구성된 온-카메라 프로세서(on-camera processor)(52)를 포함할 수 있다. 이 경우에, 캡쳐 모듈(38')은 온-카메라 프로세서(52)를 통해 원래 깊이 이미지(54)를 수신하도록 구성될 수 있다. 도 4(b)에 도시된 바와 같이, 깊이 이미지 프로듀서(34'')는 실제 깊이 카메라 데이터(60)를 원래 깊이 이미지(54'')로 변환하는 오프-카메라 프로세서(off-camera processor)(56)를 포함할 수 있다. 예를 들어, 오프-카메라 프로세서(56)는 깊이 이미지 컨슈머(32'')가 실행되고 있는 컴퓨팅 시스템(10'')의 일부일 수 있다. 이 경우에, 캡쳐 모듈(38'')은 오프-카메라 프로세서(56)를 통해 원래 깊이 이미지를 수신하도록 구성될 수 있다. 도 4(c)에 도시된 바와 같이, 깊이 이미지 프로듀서(34''')는 실제 깊이 카메라 데이터(도시되지 않음)를 원래 깊이 이미지(54''')로 변환하도록 협력하는 온-카메라 프로세서(52''')와 오프-카메라 프로세서(56''')를 포함할 수 있다. 이 경우에, 캡쳐 모듈(38''')은 온-카메라 프로세서(52''')와 오프-카메라 프로세서(56''')를 통해 원래 깊이 이미지(54''')를 수신하도록 구성될 수 있다. 특히, 온-카메라 프로세서(52''')는 실제 깊이 카메라 데이터로부터 부분적으로 처리된 중간 데이터(62)를 오프-카메라 프로세서(56''')로 전달할 수 있다. 도 4(b)의 예에서와 같이, 오프-카메라 프로세서(56'')는 예를 들어, 깊이 이미지 컨슈머(32'')가 실행되고 있는 컴퓨팅 시스템(10'')의 일부일 수 있다.
다시 도 2를 참조하면, 가상화 모듈(40)은 원래 깊이 이미지를 깊이 이미지 컨슈머와 호환되는 지원 가상 깊이 카메라 파라미터를 갖는 가상 깊이 이미지로 변환하도록 구성될 수 있다. 특히, 가상화 모듈은 깊이 이미지 컨슈머로부터 초기화 모듈을 통해 수신되는 가상 파라미터의 표시에 따라 원래 깊이 이미지를 가상 깊이 이미지로 변환하도록 구성될 수 있다. 가상화 모듈은 API의 일부로서 또는, 깊이 이미지 컨슈머와 깊이 이미지 프로듀서가 통신을 위해 사용하는 API와 호환가능한 애플리케이션이나 서비스로서 선택적으로 구현될 수 있다.
변환의 일례로, 가상화 모듈(40)은 원래 깊이 이미지의 뷰-프러스텀을 잘라냄으로써(clipping) 원래 깊이 이미지를 가상 깊이 이미지로 변환하도록 구성될 수 있다. 이러한 예는 도 3(b)에서 어느 정도 개략적으로 도시된다. 가상 뷰-프러스텀(70)은 실선으로 도시된다. 가상 뷰-프러스텀(70)은 가상 깊이 카메라 파라미터들에 의해 정해질 수 있다. 동일한 도면에 실제 깊이 카메라(74)의 원래 뷰-프러스텀(72)이 겹쳐져 있다. 원래 뷰-프러스텀(72)은 점선으로 도시된다. 비교에서 볼 수 있듯이, 원래 뷰-프러스텀(72)은 가상 뷰-프러스텀(70)보다 더 넓은 시야와 더 깊은 필드 깊이를 갖고 있다. 따라서, 원래 뷰-프러스텀(72)은 가상 뷰-프러스텀(70)을 기대하고 있는 깊이 이미지 컨슈머와 호환되지 않을 수 있다.
가상화 모듈은 원래 뷰-프러스텀을 가상 뷰-프러스텀으로 잘라낼 수 있다. 즉, 가상 뷰-프러스텀의 시야 및/또는 필드 깊이 밖에서 깊이 카메라(74)에 의해 판독되는 깊이 정보가 깊이 이미지에서 제거될 수 있다. 몇몇 실시예에서, 가상 뷰-프러스텀의 깊이 정보에는 변함이 없는 반면, 제거된 깊이 정보는 단순히 무시할 수 있다. 몇몇 실시예에서, 가상 뷰-프러스텀의 깊이 정보를 선택적으로 수정하기 위해, 제거된 깊이 정보가 사용될 수도 있다.
변환의 다른 일례로, 가상화 모듈(40)은 원래 깊이 이미지의 해상도를 바꿈으로써(예컨대, 원래 깊이 이미지의 해상도를 낮춤으로써) 원래 깊이 이미지를 가상 깊이 이미지로 변환하도록 구성될 수 있다. 해상도를 바꾸기 위해 사실상 모든 리샘플링(resampling) 알고리즘을 사용할 수 있다. 비제한적인 예시로, 원하는 해상도를 갖는 샘플 그리드(grid)가 실제 깊이 카메라로부터의 깊이 이미지와 개념상 맞는 최근접 알고리즘(nearest-neighbor algorithm)이 사용될 수 있다. 샘플 그리드의 각각의 샘플 화소에 그 샘플 화소와 가장 가까운 실제 깊이 카메라로부터의 화소의 깊이 값이 부여될 수 있다. 비제한적인 다른 예시로, 리샘플링 알고리즘은 가장 가까운 화소들의 평균 또는 거리 가중 평균을 취할 수도 있다.
뷰-프러스텀을 잘라내고 해상도를 바꾸는 상기에서 제공된 예들에 제한되지 않는다. 깊이 이미지 컨슈머는 다양한 가상 파라미터들을 갖고 있는 가상 카메라를 예상하도록 설계될 수 있고, 깊이 이미지 컨슈머의 가상 깊이 카메라와 호환을 이루기 위해 실제 깊이 이미지가 이러한 파라미터들에 따라 변환될 수 있음을 이해하여야 한다.
도 2를 다시 참조하면, 몇몇 실시예에서, 가상화 모듈(40)은 원래 깊이 이미지를 깊이 이미지 컨슈머에 의해 지원되는 지원 유형을 갖고 있는 에뮬레이션 깊이 이미지로 처리함으로써 원래 깊이 이미지를 가상 깊이 이미지로 변환하도록 구성되는 에뮬레이션 모듈(44)을 포함할 수 있다. 즉, 깊이 이미지 컨슈머는 특정 모델의 깊이 카메라 및/또는 특정 깊이 습득 기술(예컨대, 구조광 또는 비행 시간)을 사용하여 생성되는 깊이 이미지를 예상하도록 설계될 수 있다. 다른 유형의 깊이 카메라들의 깊이 이미지가 궁극적으로는 각각의 화소에 깊이 값이 부여되는 깊이 이미지를 생성하는 한편, 다른 유형의 깊이 카메라들 간의 차이가 각각의 화소에 부여된 깊이 값들 간에 다양한 차이를 야기할 수 있다. 깊이 이미지 컨슈머는 특정 깊이 카메라로부터의 특정 유형의 깊이 이미지를 처리하도록 설계될 수 있다. 따라서, 에뮬레이션 모듈(44)은 지원되지 않는 깊이 카메라로부터의 깊이 이미지가 마치 지원되는 깊이 카메라로부터 온 것처럼 보이게 바꾸도록 구성될 수 있다.
예를 들어, 에뮬레이션 모듈(44)은 TOF 깊이 카메라로부터의 원래 깊이 이미지를 구조광 깊이 카메라에 의해 생성된 깊이 이미지를 에뮬레이션하는 에뮬레이션 깊이 이미지로 변환시킬 수 있다. 에뮬레이션 모듈(44)은 사실상 모든 카메라 기술로 얻는 원래 깊이 이미지를 사실상 다른 모든 유형의 카메라 기술로 생성된 깊이 이미지를 에뮬레이션하는 에뮬레이션 깊이 이미지로 변환하도록 구성될 수 있다.
몇몇 실시예에서 에뮬레이션 모듈(44)은 가상화 모듈(40)의 일부일 수 있지만, 본원에서 설명된 에뮬레이션 기법은 뷰-프러스텀 잘라내기 및/또는 해상도 바꾸기와 같은 다른 모든 가상화 기법과는 독자적으로 실행될 수 있음을 이해하여야 한다. 어떤 경우든, 에뮬레이션 모듈(44)은 API의 일부로서 또는, 깊이 이미지 컨슈머와 깊이 이미지 프로듀서가 통신을 위해 사용하는 API와 호환가능한 애플리케이션이나 서비스로서 선택적으로 구현될 수 있다.
에뮬레이션 모듈이 포함되는 경우, 에뮬레이션 모듈은 노이즈 억제 모듈(noise suppression module)(80), 에지 강조 모듈(edge enhancement module)(82), 무효화 모듈(invalidation module)(84), 깊이 양자화 모듈(depth quantization module)(86), 작은 객체 정정 모듈(small object correction module)(88), 음영 시뮬레이션 모듈(shadow simulation module)(90) 중 하나 이상을 포함할 수 있다.
노이즈 억제 모듈(80)은 원래 깊이 이미지에서 서로 다른 깊이 값을 갖고 있는 인접 화소 영역들 사이의 깊이 에지들을 보존하도록 구성될 수 있다. 노이즈 억제 모듈(80)의 기능은 도 6의 118과 관련하여 아래에서 보다 상세하게 설명된다.
에지 강조 모듈(82)은 원래 깊이 이미지에서 서로 다른 깊이 값을 갖고 있는 인접 화소 영역들 사이의 깊이 에지들을 강조하도록 구성될 수 있다. 에지 강조 모듈(82)의 기능은 도 6의 126과 관련하여 아래에서 보다 상세하게 설명된다.
무효화 모듈(84)은 사전 결정된 범위 밖의, 결합된 조도(illumination) 및 경사도(obliqueness)를 갖고 있는 화소를 무효화하도록 구성될 수 있다. 무효화 모듈(84)의 기능은 도 6의 120-124와 관련하여 아래에서 보다 상세하게 설명된다
깊이 양자화 모듈(86)은 깊이 값을 양자화하도록 구성될 수 있다. 깊이 양자화 모듈(86)의 기능은 도 6의 128과 관련하여 아래에서 보다 상세하게 설명된다.
작은 객체 정정 모듈(88)은 임계 크기보다 작은 객체에 속해 있는 화소들에 더 깊은 깊이 값을 할당하도록 구성될 수 있다. 작은 객체 정정 모듈(88)의 기능은 도 6의 130과 관련하여 아래에서 보다 상세하게 설명된다.
음영 시뮬레이션 모듈(90)은 TOF 깊이 카메라로부터 가상적으로 떨어져 있는 가상 일루미네이터의 가상 밴티지 포인트(virtual vantage point)로부터 가상적으로 가려진 화소들에 음영 화소 값을 할당하도록 구성될 수 있다. 음영 시뮬레이션 모듈(90)의 기능은 도 6의 132와 관련하여 아래에서 보다 상세하게 설명된다.
가상화 모듈(40)은 실제 깊이 카메라로부터의 원래 깊이 이미지를 깊이 이미지 컨슈머와 호환되는 가상 깊이 카메라 파라미터들을 지원하는 가상 깊이 이미지로 변환한다. 출력 모듈(42)은 이런 가상 깊이 이미지를 깊이 이미지 컨슈머에게 출력하도록 구성된다. 이후에, 깊이 이미지 컨슈머는 분석 및/또는 추가 처리를 위해 가상 깊이 이미지를 수신할 수 있다. 출력 모듈은 깊이 이미지 컨슈머와 깊이 이미지 프로듀서가 서로 통신하기 위해 사용할 수 있는 API의 일부로서 선택적으로 구현될 수 있다. 상기에서 초기화 모듈(36), 캡쳐 모듈(38), 가상화 모듈(40) 및 출력 모듈(42)은 별개의 모듈인 것으로 설명되었지만, 이 모듈 중 둘 이상이 공통 API로 결합되어 동작할 수도 있음을 이해할 것이다.
도 5는 깊이 이미지 컨슈머와 복수의 다른 깊이 이미지 프로듀서들 사이에 호환성을 제공하는 방법(100)을 도시한다. 방법(100)은 예컨대, 도 2의 깊이 카메라 상호 호환 시스템을 사용하여 구현될 수 있다.
102에서, 방법(100)은 지원되는 가상 깊이 카메라 파라미터의 표시를 수신하는 단계를 포함한다. 전술한 바와 같이, 가상 깊이 카메라 파라미터는 가상 깊이 카메라의 뷰-프러스텀, 가상 깊이 카메라의 해상도, 가상 깊이 카메라가 기반하는 실제 깊이 카메라의 모델, 및/또는 가상 깊이 카메라의 기타 특성들을 명시할 수 있다.
104에서, 방법(100)은 깊이 이미지 컨슈머와 호환되지 않는, 비지원 깊이 카메라 파라미터를 갖고 있는 원래 깊이 이미지를 수신하는 단계를 포함한다. 106에서, 방법(100)은 상기 원래 깊이 이미지를 깊이 이미지 컨슈머와 호환되는, 지원 가상 깊이 카메라 파라미터를 갖고 있는 가상 깊이 이미지로 변환하는 단계를 포함한다. 전술한 바와 같이, 원래 깊이 이미지의 변환에는 원래 깊이 이미지의 뷰-프러스텀 잘라내기, 원래 깊이 이미지의 해상도 낮추기, 및/또는 원래 깊이 이미지를 깊이 이미지 컨슈머에 의해 지원되는 지원 유형을 갖는 에뮬레이션 깊이 이미지로 처리하기 중 하나 이상이 포함될 수 있다.
108에서, 방법(100)은 깊이 이미지 컨슈머에게 가상 깊이 이미지를 출력하는 단계를 포함한다. 지원되는 가상 깊이 카메라 파라미터에 맞게 가상 깊이 이미지가 구체적으로 조정되기 때문에, 깊이 이미지 컨슈머가 사용할 수 있다. 한편, 방법(100)은 다른 깊이 카메라들의 다양한 다른 원래 깊이 이미지에 적용될 수 있기 때문에, 깊이 이미지 컨슈머는 하나의 특정 유형의 깊이 카메라로부터 깊이 이미지를 수신하는 것에 제한되지 않는다.
도 6은 깊이 카메라 호환성을 제공하는 다른 방법(110)을 도시한다. 112에서, 방법(110)은 깊이 이미지 컨슈머로부터 그 깊이 이미지 컨슈머에 대해 지원되는 가상 깊이 카메라 파라미터들을 수신하는 단계를 포함한다. 이는 예를 들어, 깊이 이미지 컨슈머와 호환되는 모델 깊이 카메라(예컨대, 구조광 깊이 카메라)의 표시를 수신하는 단계를 포함한다.
114에서, 방법(110)은 깊이 이미지 컨슈머에 의해 지원되지 않는 비지원 유형을 갖고 있는 원래 깊이 이미지를 수신하는 단계를 포함한다. 예를 들어, 원래 깊이 이미지는 모델 깊이 카메라가 아닌 소스로부터 올 수 있다. 따라서, 원래 깊이 이미지는 깊이 이미지 컨슈머와 호환되지 않을 수 있고, 따라서 비지원 유형을 가질 수 있다. 앞서 소개한 예를 계속 들면, 깊이 이미지 컨슈머는 구조광 깊이 카메라로부터의 깊이 이미지를 지원할 수 있다. 그러나, 원래 깊이 이미지는 TOF 깊이 카메라와 같이 다른 소스로부터 수신될 수 있고, 따라서 원래 깊이 이미지는 깊이 이미지 컨슈머에 대한 비지원 유형을 가지게 된다.
116에서, 방법(110)은 원래 깊이 이미지를 깊이 이미지 컨슈머에 의해 지원되는 지원 유형을 갖는 에뮬레이션 깊이 이미지로 처리하는 단계를 포함한다. 즉, 에뮬레이션 깊이 이미지는 모델 깊이 카메라에 의해 생성되는 깊이 이미지와 같이, 깊이 이미지 컨슈머와 호환되는 깊이 이미지를 에뮬레이션하도록 수정될 수 있다. 앞서 소개한 예를 계속 들면, 예컨대, TOF 깊이 카메라로부터 수신된 원래 깊이 이미지는 구조광 깊이 카메라에 의해 생성된 깊이 이미지를 에뮬레이션하는 에뮬레이션 깊이 이미지로 처리될 수 있다.
도 6에 도시된 바와 같이, 원래 깊이 이미지를 에뮬레이션 깊이 이미지로 처리하는 단계는 다양한 기법을 이용할 수 있으며, 이는 아래에서 보다 상세하게 설명된다. 이런 기법은 제한되지 않음을 이해할 수 있다. 또한, 이 대신에 또는 이에 더하여, 도 6에 도시되지 않은 추가적인 기법이 적용될 수도 있다.
118에서, 방법(110)은 원래 깊이 이미지에 에지 보존 필터(edge preserving filter)를 적용하는 단계를 포함한다. TOF 깊이 카메라로부터 수신되는 원래 깊이 이미지를 처리하는 경우에, 이런 원래 깊이 이미지는 TOF 깊이 카메라의 일반적인 부산물인 랜덤 노이즈를 포함할 수 있다. 반면, 구조광 깊이 카메라는 원래 더 부드러운(smoother) 신호를 갖고 있고, 이런 신호는 추가적으로 소프트웨어로도 필터링될 수 있다. 따라서, 이런 유형의 부드러운 신호를 에뮬레이션하기 위해서, TOF 깊이 카메라로부터 수신되는 원래 깊이 이미지는 중요한 깊이 특징을 잃지 않고도 TOF 깊이 지도로부터의 노이즈를 억제하도록 처리될 수 있다. 이를 위해, 에지 보존 필터를 사용하여 원래 깊이 이미지의 노이즈를 억제할 수 있다. Perona-Malik (Scale-Space and Edge Detection Using Anisotropic Diffusion, IEEE Transactions on Pattern Analysis and Machine Intelligence, v. 12 n. 7, p. 629-639, 1990) 및 Weickert et al. (J. Weickert, B. M. ter Haar Romeny, M. A. Viergever, Efficient and reliable schemes for nonlinear diffusion filtering, IEEE Trans. Image Proc., v. 7 n. 3, pp. 398-410, 1998)의 저작물에 기술된 내용에 기반하는 비선형 편미분 방정식을 이용하는 등 적절한 임의의 접근 방법을 사용할 수 있다. 임계 파라미터의 에지는 카메라의 깊이 정확도의 상한(예컨대, K=10[cm])으로 설정될 수 있다. 원래 깊이 이미지에 에지 보존 필터를 적용함으로써, 원래 깊이 이미지에서 객체들 간의 단절(discontinuities)을 잘 유지하면서도, 원래 깊이 이미지의 노이즈 레벨을 현저하게 떨어뜨릴 수 있다.
도 6을 계속 참조하면, 120에서, 방법(110)은 (예컨대, TOF 분석에서 장면을 조명하기 위해 사용되는 적외선광으로부터 측정되는 것과 같이) 조명 이미지(illumination image)에 중간값 필터(median filter)를 통과시킴으로써 신뢰도 지도(confidence map)를 구축하는 단계를 포함할 수 있다. 구조광 깊이 카메라의 깊이 이미지를 에뮬레이션하기 위해 TOF 깊이 카메라로부터 수신되는 원래 깊이 이미지를 처리하는 경우에, 구조광 깊이 카메라에서 발생하는 화소 무효화 현상(pixel invalidation phenomenon)을 에뮬레이션하기 위해 이 신뢰도 지도가 이용될 수 있다. 구조광 기술에서, 패턴 일치를 찾음으로써 깊이가 계산되고, 즉, 일치가 발견되면, 상대적으로 정확하게 그 깊이를 계산할 수 있는 반면, 일치가 발견되지 않으면, 깊이를 계산할 수 없으며, 그 화소에서의 측정도 유효하지 않게 된다. TOF 기술에서, 통상적으로 어디에서든지 깊이가 측정될 수 있지만, (예컨대, 조도 레벨에 따라) 정확도는 달라진다. 따라서, TOF 깊이 이미지의 조도 레벨로 깊이 측정이 어디에서 부정확한지(예컨대, 어두운 영역에서 신호에 노이즈가 많음)를 용이하게 예측하고, 따라서 구조광 깊이 이미지를 에뮬레이션할 수 있다. 이를 위해, 조명 이미지를 입력으로서 사용하여 신뢰도 지도를 구축할 수 있다. 신뢰도 지도는 먼저 조명 이미지에 중간값 필터를 통과시킴으로써 구축되어, 가외치(outliers)를 제거하고 노이즈를 억제할 수 있다. 이후에, 각각의 화소에 대해, 다음과 같은 소프트 임계 함수(soft threshold function)가 사용될 수 있다,
Figure pct00001
여기서, 파라미터 k는 카메라 버전마다 바뀔 수 있다. 예를 들어, 몇몇 실시예에서 k는 60으로 설정될 수 있다.
신뢰도 지도를 구축하는 것 외에도, 이미지 안에 있는 다른 영역들을 식별하는 것이 바람직하다. 따라서, 122에서, 방법(110)은 원래 깊이 이미지로부터 경사면 지도(oblique surface map)를 구축하는 단계를 포함할 수 있다. 구조광 깊이 카메라의 깊이 이미지를 에뮬레이션하기 위해 TOF 깊이 카메라로부터 수신되는 원래 깊이 이미지를 처리하는 경우에, 구조광 깊이 카메라에서 발생하는 화소 무효화 현상 역시도 패턴 일치 문제에 해당될 가능성이 있는 영역들을 식별함으로써 에뮬레이션될 수 있다. 구조광 조명 장치에 의해 투사되는 패턴이 경사진 객체(즉, 조명 광선에 대해 경사진 각도의 표면)에 생겨(smeared), 종종 그곳에서 패턴 일치가 실패하여 유효하지 않은 측정을 낳는다. 따라서, TOF 깊이 카메라로부터 수신되는 원래 깊이 이미지는 경사면 지도를 구축하여 경사면을 식별함으로써 처리될 수 있다. 이는 예컨대, 시야 및 해상도와 같은 카메라 파라미터를 사용하여 각각의 화소에 대한 세계 표면 각도(world surface angle)를 계산하고, 이를 가우시안 필터링(Gaussian filtering)으로 스무딩(smoothing)하는 것을 포함할 수 있다. 또한, 앞서 정의한 바와 같이, k=45인 F k 와 같은 소프트 임계 함수를 사용할 수도 있다.
124에서, 방법(110)은 신뢰도 지도 및 경사면 지도를 무효화 테스트 지도(invalidation testing map)로 통합하는 단계를 포함할 수 있다. 0과 1 사이의 값을 갖는 신뢰도 지도 및 경사면 지도의 경우에, 예컨대, 두 지도를 곱하고 임계값 0.5을 적용함으로써 두 지도들을 통합할 수 있다. 이 결과를 정규화하기(regularize) 위해 중간값 필터가 사용될 수도 있다. 이런 프로세스는 사전 결정된 범위 밖에 있는 화소들을 무효화하는 데 사용될 수 있다.
도 6을 계속 참조하면, 126에서, 방법(110)은 원래 깊이 이미지에서 서로 다른 깊이 값을 갖고 있는 인접 화소 영역들 사이의 에지들을 강조하는 단계를 포함할 수 있다. TOF 깊이 카메라로부터 수신되는 원래 깊이 이미지를 처리하는 경우에, 이 기술로 계산되는 깊이 값은 화소 시야에서의 깊이의 평균이기 때문에, 이 TOF 깊이 카메라는 에지를 모호하게 하는 경향이 있다. 반면, 구조광 깊이 카메라의 에지에서의 깊이는 통상적으로 측정되지 않고 데이터가 종합되어, 객체들 간에 뚜렷한 전환이 일어나게 된다. 따라서, 구조광 깊이 카메라로부터의 깊이 이미지를 에뮬레이션하기 위해, TOF 깊이 카메라로부터의 원래 깊이 이미지는 서로 다른 깊이 값을 갖고 있는 인접 화소 영역들 간의 에지들을 강조하여 그 에지들을 선명하게 하도록 처리될 수 있다. 이런 에지 강조를 위해 임의의 적절한 접근 방법이 사용될 수 있으면, 이런 적절한 접근 방법의 하나가 다음과 같이 상세하게 설명된다.
각 화소에 대해 x 방향의 전향 차분(forward difference) D + 및 후향 차분(backward difference) D -가 계산될 수 있다. 그 다음에, (min(D+, D-)>4cm)이면 Mask _x=1, 그 밖에는 0으로, 스텝 에지를 피하기 위해 마스크가 결정될 수 있다. Mask _y를 계산하기 위해 유사한 계산이 y 방향에서 행해질 수 있다. 그 다음에, Mask _x 또는 Mask _y == 1인 각각의 화소에 대해 3x3 이웃 화소 내에서 최대값이 취해진다.
도 6을 계속 참조하면, 128에서, 방법(110)은 깊이 값을 양자화하는 단계를 포함할 수 있다. TOF 깊이 카메라로부터 수신되는 원래 깊이 이미지를 처리하는 경우에 있어서, 구조광 깊이 카메라로부터 수신되는 깊이 이미지를 에뮬레이션하기 위해 깊이 값이 양자화될 수 있다. 구조광 기술은 삼각 측량(triangulation)에 기반하여 깊이를 계산한다. 깊이는, 원래 센서 해상도가 유한하므로, 양자화되는 패턴 변위의 함수이다. TOF 기술에서, 깊이 측정과 원래 해상도는 관계가 없다. 따라서, 양자화 효과를 변환된 깊이 지도에 포함시키는 것이 바람직할 수 있다. 이는 임의의 적절한 접근 방법에 의해 실행될 수 있다. 이런 적절한 접근 방법의 하나로 구조광 깊이 카메라의 파라미터(예컨대, 시야, 원래 센서 해상도, 초점 거리, 센서와 조명 중심 간의 거리) 및 깊이 지도를 가지고, 삼각 측량 기반 카메라에서 생기는 것과 유사한 비선형 양자화 식을 구성하는 것을 들 수 있다. 예를 들어, 깊이 D의 함수로서 화소에서의 변환(translation) T는 다음과 같이 정의될 수 있다,
Figure pct00002
여기서, focal_length는 구조광 깊이 카메라의 초점 거리이며, pixel_size는 센서 화소 크기이며, camera_illum는 카메라 센서와 조명 중심 간의 거리이며, angle은 카메라 센서 중심에 수직인 선에 대한 객체의 각도이다. 그 다음에, 양자화 Q는 변환 T(D)의 함수로서 다음과 같이 기술될 수 있다,
Figure pct00003
따라서, 깊이 지도는 구조광 기술의 삼각 측량 계산에 의해 생성되는 방식과 유사한 방식으로 깊이를 양자화하였다.
도 6을 계속 참조하면, 방법(110)은 임계 크기보다 작은 객체에 속해 있는 화소들에 더 깊은 깊이 값을 할당하는 단계를 포함한다. TOF 깊이 카메라로부터 수신되는 원래 깊이 이미지를 처리하는 경우에, 구조광 깊이 카메라로부터 수신되는 깊이 이미지를 에뮬레이션하기 위해 작은 객체의 화소들에 더 깊은 깊이 값이 할당될 수 있다. 구조광 깊이 카메라는 너무 작은 객체들에는 잘 투사될 수 없는 패턴에 기반한다. 따라서, 이런 작은 객체들에는 보통 배경 깊이 값이 할당된다. 더 깊은 깊이 값은 임의의 적절한 방식으로 작은 객체들의 화소에 할당될 수 있다. 이런 접근 방식의 하나로 모폴로지컬 클로징(morphological closing)의 실행을 포함한다. 따라서, 구조화 요소(structuring element)는 해상도에 달려 있다. 예를 들어, 대략 3x3 크기의 공 요소(ball element)가 사용될 수 있다. 따라서, 깊이 이미지에서 관찰될 수 있는 가장 작은 객체 크기가 정정될 수 있고, 그 효과는 구조광 깊이 카메라에서 행해진 후처리와 유사하다.
도 6을 계속 참조하면, 132에서, 방법(110)은 TOF 깊이 카메라로부터 가상적으로 떨어져 있는 가상 일루미네이터의 가상 밴티지 포인트로부터 가상적으로 가려진 화소들에 음영 화소 값을 할당하는 단계를 포함한다. TOF 깊이 카메라로부터 수신되는 원래 깊이 이미지를 처리하는 경우에, 구조광 깊이 카메라로부터 수신되는 깊이 이미지를 에뮬레이션하기 위해 음영 화소 값이 할당될 수 있다. 전술한 바와 같이, 구조광 깊이 카메라는 삼각 측량 원리에 의해 동작한다. 이와 같은 사실로 인해, 광원은 센서와 떨어져 있게 되고, “음영” 효과가 카메라의 센서에서 생성된다. 따라서, 도 7에 도시된 바와 같이, “음영진 화소”는 센서에서는 보이지만 광원의 위치에서는 직접적으로 보이지 않는 화소이다. 여기서, 제 1 객체(140)는 제 2 객체(142)가 발광기(light emitter)(144)로부터 직사 광선을 수신하는 것을 막는다. 따라서, 센서(150)는 제 1 객체(140)의 이미지(146) 및 제 2 객체(142)의 이미지(148)을 수신하는 것뿐만 아니라, 제 2 객체(142)의 음영진 화소들(152)도 수신한다.
따라서, TOF 깊이 카메라로부터 수신되는 원래 깊이 이미지에 이런 “음영” 아티팩트를 에뮬레이션하는 것이 바람직할 수 있다. 센서와 주위 발광기 사이의 짧은 거리로 인해, TOF 깊이 카메라에서는 음영 효과가 이미 발생한다는 것을 알 수 있지만, 이는 카메라에서 정규화되어(normalized), 제작된 깊이 비디오에서는 보이지 않을 수 있다.
음영을 종합하기 위한 예시적인 해결책으로 가벼운 알고리즘을 사용한다. 알고리즘은 모델링된 깊이 카메라에서 발광기가 있을 장소와 동일한 곳에 가상 카메라를 생성한다. 알고리즘은 원래 센서로부터의 깊이 샘플을 이 가상 센서에 맞게 변환한다. 이런 변환은 다음의 수식을 사용하여 실행될 수 있다,
Figure pct00004
이 가상 센서에서 가려진 샘플들은 음영지게 된다. “발광기 x 이미지”의 각 행(row)이 스캔될 수 있고, 화소들이 이미 스캔된 값 중에 최대 X emitterImage 를 갖고 있지 않으면 음영지게 될 수 있다. 도 8은 음영진 화소들(152)이 X world 값의 하락으로 인해 음영진 것으로 간주되는 개념을 도시한다.
깊이 측정의 부정확성으로 인한 일부 작은 변동을 극복하기 위해, 모폴로지컬 “오픈” 필터링을 “음영진 화소들”의 지도에 적용할 수 있다. 이런 단계는 작은 음영들을 제거하고, 에지들을 좀 더 사각형처럼 보이게 하여, 구조광 깊이 카메라로부터의 에지를 에뮬레이션한다.
도 6을 계속 참조하면, 134에서, 방법(110)은 지원 유형을 갖는 에뮬레이션 깊이 이미지를 출력하는 단계를 포함한다. 이런 에뮬레이션 깊이 이미지는 깊이 카메라의 원래 깊이 이미지를 처리할 수 없는 깊이 이미지 컨슈머에 의해 사용될 수 있다. 상기의 예를 사용하면, 구조광 깊이 카메라로부터의 구조광 깊이 이미지를 처리하도록 설계된 애플리케이션이 TOF 깊이 카메라를 사용하여 측정된 원래 깊이 이미지에 기반하는 에뮬레이션 깊이 이미지를 수신하고 처리할 수 있다.
도 9는 깊이 추상화층 내의 예시적인 이미지 처리 블록(160)을 도시하는 상위 레벨 구현 다이어그램이다. 도 10은 도 9의 이미지 처리 블록(160)을 보다 상세하게 도시한다. 도 9 및 10에 도시된 바와 같이, 이미지 처리 블록(160)은 입력으로서 실제 깊이 지도, 적외선 조명 이미지에 관한 정보, 및 깊이 카메라 파라미터를 수신할 수 있다. 이미지 처리 블록은 전술한 바와 같이, 깊이 이미지 컨슈머에 의해 사용될 수 있는 추상화된 에뮬레이션 깊이 이미지(162)를 출력할 수 있다.
도 1을 참조하며 아래에서 설명되는 바와 같이, 본 발명의 사상에서 벗어나지 않고 다양한 다른 컴퓨팅 시스템이 사용될 수 있다. 도 1을 참조하여 설명된 운영 환경이 예로서 제공되지만, 어떤 식으로든 제한하려는 의도는 없다. 반대로, 도시된 운영 환경은 본 발명의 범위를 벗어나지 않는 다양한 다른 운영 환경에 적용될 수 있는 일반적인 개념을 보여주기 위한 것이다. 마찬가지로, 도 2에 도시된 깊이 카메라 상호 호환 시스템의 개략적인 도시는 깊이 이미지 가상화 및 깊이 이미지 에뮬레이션을 설명하기 위한 간략화된 프레임워크를 제공하지만, 애플리케이션을 도면에 도시된 구성들만으로 제한하려고 의도한 것은 아니다. 오히려, 본원에서 설명된 방법 및 프로세스들은 여러 다른 유형의 컴퓨팅 시스템에 연관되어 있을 수 있다.
도 1은 게임 콘솔(12) 및 깊이 카메라(20)가 있는 깊이 카메라 상호 호환 시스템을 구현하도록 구성되는 비제한적인 컴퓨팅 시스템의 일례를 도시한다. 보다 일반적인 다른 예로, 도 11은 본원에서 설명된 바와 같이, 깊이 이미지 추상화 및/또는 깊이 이미지 에뮬레이션을 실행하는 컴퓨팅 시스템(170)을 개략적으로 도시한다. 컴퓨팅 시스템(170)은 특히 게임 콘솔, 개인용 컴퓨팅 시스템, 군사 트래킹 및/또는 타겟팅 시스템, 및 그린-스크린(green-screen)이나 모션-캡쳐 기능을 제공하는 캐릭터 획득 시스템을 포함하는, 그러나 이에 제한되지는 않는, 여러 다른 형태를 취할 수 있다.
컴퓨팅 시스템(170)은 로직 서브시스템(logic subsystem)(172), 로직 서브시스템에 접속되어 동작하는 데이터-홀딩 서브시스템(174), 디스플레이 서브시스템(176) 및/또는 깊이 이미지 프로듀서(178)를 포함할 수 있다. 컴퓨팅 시스템은 도 11에 도시되지 않은 컴포넌트를 선택적으로 포함할 수도 있으며, 및/또는 도 11에 도시된 일부 컴포넌트는 컴퓨팅 시스템에 포함되지 않은 주변 컴포넌트일 수 있다.
로직 서브시스템(172)은 하나 이상의 명령어를 실행하도록 구성된 하나 이상의 물리적 장치를 포함할 수 있다. 예를 들어, 로직 서브시스템은 하나 이상의 프로그램, 루틴, 객체, 컴포넌트, 데이터 구조, 애플리케이션 프로그래밍 인터페이스 또는 기타 논리적 구성의 일부인 하나 이상의 명령어를 실행하도록 구성될 수 있다. 이런 명령어는 작업을 수행하거나, 데이터 유형을 구현하거나, 하나 이상의 장치의 상태를 변환하거나, 서로 다른 컴퓨팅 객체들에 및/또는 그 객체들로부터 정보를 전달하거나, 또는 원하는 결과를 얻도록 구현될 수 있다. 로직 서브시스템은 소프트웨어 명령어를 실행하도록 구성되는 하나 이상의 프로세서를 포함할 수 있다. 이에 더하여 또는 이를 대신하여, 로직 서브시스템은 하드웨어 또는 펌웨어 명령어를 실행하도록 구성되는 하나 이상의 하드웨어 또는 펌웨어 로직 머신을 포함할 수도 있다. 로직 서브시스템은 몇몇 실시예에서 멀리 떨어져 있을 수 있는, 둘 이상의 장치에 분산되어 있는 개별 컴포넌트들을 선택적으로 포함할 수 있다.
데이터-홀딩 서브시스템(174)은 본원에서 설명된 방법 및 프로세스를 구현하기 위해 로직 서브시스템에 의해 실행될 수 있는 데이터 및/또는 명령어를 보유하도록 구성되는 하나 이상의 물리적, 비일시적인(non-transitory) 장치를 포함할 수 있다. 이들 방법 및 프로세스가 구현될 때, 데이터-홀딩 서브시스템(174)의 상태가 (예컨대, 다른 데이터를 보유하도록) 변환될 수 있다. 데이터-홀딩 서브시스템(174)은 이동식 매체 및/또는 빌트인 장치를 포함할 수 있다. 데이터-홀딩 서브시스템(174)은 특히 광 메모리 장치, 반도체 메모리 장치(예컨대, RAM, EEPROM, 플래시 등), 및/또는 자기 메모리 장치를 포함할 수 있다. 데이터-홀딩 서브시스템(174)은 휘발성, 비휘발성, 동적, 정적, 읽기/쓰기, 읽기-전용, 랜덤 액세스, 순차 액세스, 주소 지정 가능한 위치, 주소 지정 가능한 파일 및 주소 지정 가능한 컨텐츠 중 하나 이상의 특성이 있는 장치를 포함할 수 있다. 몇몇 실시예에서, 로직 서브시스템(172) 및 데이터-홀딩 서브시스템(174)은 ASIC(application specific integrated circuit) 또는 SOC(system on a chip)와 같이 하나 이상의 공통 장치에 통합될 수 있다.
용어 “모듈” 및 “엔진”은 하나 이상의 특정 기능을 실행하도록 구현되는 컴퓨팅 시스템(170)의 양태를 설명하기 위해 사용될 수 있다. 경우에 따라서, 이런 모듈이나 엔진은 데이터-홀딩 서브시스템(174)이 보유하는 명령어를 실행하는 로직 서브시스템(172)을 통해 인스턴스화될 수 있다(instantiated). 동일한 애플리케이션, 코드 블록, 객체, 루틴 및/또는 함수로부터 상이한 모듈 및/또는 엔진들이 인스턴스화될 수 있음을 이해하여야 한다. 마찬가지로, 경우에 따라서는 상이한 애플리케이션, 코드 블록, 객체, 루틴 및/또는 함수로부터 동일한 모듈 및/또는 엔진들이 인스턴스화될 수 있다. 예를 들어, 도 2를 참조하여 설명된 하나 이상의 모듈이 API로써 구현될 수 있다.
디스플레이 서브시스템(176)은 데이터-홀딩 서브시스템(174)이 보유하는 데이터의 비주얼 형상(visual representation)을 프리젠테이션하기 위해 사용될 수 있다. 본원에서 설명된 방법 및 프로세스가 데이터-홀딩 서브시스템이 보유한 데이터를 변경하여 데이터-홀딩 서브시스템의 상태를 바꾸는 것에 따라, 마찬가지로 디스플레이 서브시스템(176)의 상태도 기반 데이터(underlying data)의 변경을 시각적으로 나타내도록 바뀔 수 있다. 디스플레이 서브시스템(176)은 사실상 모든 유형의 기술을 이용하는 하나 이상의 디스플레이 장치를 포함할 수 있다. 이런 디스플레이 장치는 공유된 인클로저(enclosure)에서 로직 서브시스템(172) 및/또는 데이터-홀딩 서브시스템(174)과 결합될 수 있거나, 또는 이런 디스플레이 장치는 도 1에 도시된 바와 같이 주변 디스플레이 장치일 수 있다.
컴퓨팅 시스템(170)은 또한 하나 이상의 타겟 및/또는 장면의 깊이 이미지를 얻도록 구성되는 깊이 이미지 프로듀서(178)를 포함한다. 깊이 이미지 프로듀서(178)는 임의의 적절한 기법(예컨대, 비행 시간, 구조광, 스테레오 이미지 등)을 통해 깊이 정보가 있는 비디오를 캡쳐하도록 구성될 수 있다. 따라서, 깊이 이미지 프로듀서(178)는 깊이 카메라, 비디오 카메라, 스테레오 카메라 및/또는 기타 적절한 캡쳐 장치를 포함할 수 있다. 상기의 도 4(a)-4(c)를 참조하여 설명한 바와 같이, 깊이 이미지 프로듀서는 실제 카메라 데이터를 깊이 이미지로 변환하기 위해 하나 이상의 온-카메라 프로세서 및/또는 오프-카메라 프로세서를 포함할 수 있다. 즉, 깊이 카메라는 하나 이상의 깊이 분석 기능을 실행하도록 구성되는 하나 이상의 온보드 처리 장치를 선택적으로 포함할 수 있다. 깊이 카메라는 이런 온보드 처리 로직의 업데이트를 용이하게 하는 펌웨어를 포함할 수도 있다.
예를 들어, TOF 분석에서, 깊이 이미지 프로듀서(178)는 장면에 적외선을 방출한 후 센서를 사용하여 장면의 표면으로부터 후방 산란되는 빛을 탐지하도록 구성되는 TOF 카메라를 포함할 수 있다. 경우에 따라서는, 펄스 적외선(pulsed infrared light)을 사용하여, 나가는 광 펄스와 이에 대응하여 들어오는 광 펄스 간의 시간을 측정하고, 이를 사용하여 캡쳐 장치로부터 장면의 특정 위치까지의 물리적인 거리를 결정할 수 있다. 경우에 따라서는, 나가는 빛의 위상과 들어오는 빛의 위상을 비교하여 위상 변위(phase shift)를 결정할 수 있고, 이 위상 변위를 사용하여 캡쳐 장치로부터 장면의 특정 위치까지의 물리적인 거리를 결정할 수 있다.
다른 예를 들면, TOF 분석법을 사용하여 셔터 광 펄스 이미징(shuttered light pulse imaging)과 같은 기법을 통해 시간에 따른 반사광의 강도를 분석함으로써, 캡쳐 장치로부터 장면의 특정 위치까지의 물리적인 거리를 간접적으로 결정할 수 있다.
다른 예를 들면, 깊이 이미지 프로듀서(178)는 구조광을 사용하여 깊이 정보를 캡쳐할 수 있다. 이러한 분석법에서는, 패턴화된 광(즉, 그리드 패턴이나 스트라이프 패턴과 같이 공지된 패턴으로 디스플레이되는 광)이 장면에 투사될 수 있다. 그 장면의 표면에서, 패턴이 그에 따라 변형될 수 있고(deformed), 이러한 패턴의 변형을 연구하여 캡쳐 장치로부터 장면의 특정 위치까지의 물리적인 거리를 결정할 수 있다.
다른 예를 들면, 캡쳐 장치는 비주얼 스테레오 데이터를 얻기 위해 각기 다른 각도에서 장면을 보는 물리적으로 분리된 둘 이상의 카메라들을 포함할 수 있다. 이 경우에, 비주얼 스테레오 데이터를 분해하여 깊이 이미지를 생성할 수 있다. 다른 실시예에서, 깊이 이미지 프로듀서(178)는 다른 기술을 이용하여 깊이 값을 측정 및/또는 계산할 수 있다.
몇몇 실시예에서, 둘 이상의 카메라가 깊이 이미지 프로듀서의 일부로서 통합될 수 있다. 예를 들어, 깊이 카메라 및 비디오 카메라(예컨대, RGB 비디오 카메라)가 깊이 이미지 프로듀서로 통합될 수 있다. 비디오 카메라가 사용되면, 이는 타겟 트래킹 데이터, 장면 분석의 오류 정정을 위한 확인 데이터, 이미지 캡쳐, 안면 인식, 고정밀 손가락(또는 기타 작은 특징) 트래킹, 빛 감지, 및/또는 그 밖의 기능을 제공할 수 있다.
또한, 상기의 설명은 하나의 깊이 카메라의 사용/에뮬레이션에 중점을 두고 있지만, 전술한 호환성 기술들을 사용하여 둘 이상의 깊이 카메라를 동시에 사용/에뮬레이션할 수 있음을 이해할 것이다. 예를 들어, 두 개의 카메라를 사용하여 인접 장면을 볼 수 있고, API는 양쪽 카메라로부터의 정보를 효과적으로 결합하여 더 넓은 시야를 가진 하나의 카메라를 에뮬레이션할 수 있다. 다른 예로, 하나의 와이드 앵글 카메라를 사용할 수 있고, API는 다른 방향에서 보는 좁은 시야를 가진 두 개의 카메라에 의해 생성되는 것처럼 두 개의 분리된 깊이 이미지를 생성할 수 있다.
몇몇 실시예에서, 둘 이상의 깊이 카메라를 사용하여 각기 다른 밴티지 포인트에서 동일한 장면을 볼 수 있다. 이 같은 경우에, API는 양쪽 카메라로부터의 정보를 효과적으로 결합하여 깊이 이미지 컨슈머에게 더 많고/나은 3D 데이터를 명료한 방식으로 제공할 수 있다.
본원에 기술된 구성 및/또는 접근 방법은 예시적인 것으로, 다양한 변형이 가능하기 때문에, 이러한 특정 실시예들이나 예시들이 제한적인 의미로 여겨지는 것은 아님을 이해할 것이다. 본원에 기술된 특정 루틴 또는 방법들은 하나 이상의 많은 처리 전략을 나타낸다. 따라서, 도시된 다양한 행위들은 도시된 순서대로, 다른 순서로, 동시에, 또는 경우에 따라서는 생략되어 실행될 수 있다. 마찬가지로, 전술한 프로세스의 순서 또한 변경될 수 있다.
본 개시의 대상은, 본원에 기술된 다양한 프로세스, 시스템 및 구성의 신규하고 자명하지 않은 모든 컴비네이션 및 서브 컴비네이션, 및 기타 특징, 기능, 행위 및/또는 특성들뿐만 아니라 그들의 임의의 모든 등가물을 포함한다.

Claims (15)

  1. 깊이 이미지 컨슈머에 대해 지원되는 가상 깊이 카메라 파라미터들을 인식하기 위한 초기화 모듈,
    깊이 이미지 프로듀서로부터 원래 깊이 이미지를 수신하기 위한 캡쳐 모듈,
    상기 원래 깊이 이미지를 상기 깊이 이미지 컨슈머와 호환되는 지원 가상 깊이 카메라 파라미터들을 갖고 있는 가상 깊이 이미지로 변환하기 위한 가상화 모듈, 및
    상기 가상 깊이 이미지를 상기 깊이 이미지 컨슈머에게 출력하기 위한 출력 모듈을 포함하는
    깊이 카메라 상호 호환 시스템
  2. 제 1 항에 있어서,
    상기 초기화 모듈은 상기 깊이 이미지 컨슈머로부터 상기 지원되는 가상 깊이 카메라 파라미터들의 표시를 수신하도록 구성되는
    깊이 카메라 상호 호환 시스템.
  3. 제 2 항에 있어서,
    상기 지원되는 가상 깊이 카메라 파라미터들의 상기 표시는 가상 깊이 카메라의 뷰-프러스텀(view frustum)을 명시하는
    깊이 카메라 상호 호환 시스템.
  4. 제 2 항에 있어서,
    상기 지원되는 가상 깊이 카메라 파라미터들의 상기 표시는 가상 깊이 카메라의 해상도를 명시하는
    깊이 카메라 상호 호환 시스템.
  5. 제 2 항에 있어서,
    상기 지원되는 가상 깊이 카메라 파라미터들의 상기 표시는 가상 깊이 카메라가 기반하는 실제 깊이 카메라의 모델을 명시하는
    깊이 카메라 상호 호환 시스템.
  6. 제 1 항에 있어서,
    상기 초기화 모듈은 상기 깊이 이미지 컨슈머의 상기 지원되는 가상 깊이 카메라 파라미터들과의 호환을 위해 깊이 카메라를 용이하게 조준하기 위한 조준 명령어를 생성하도록 구성되는
    깊이 카메라 상호 호환 시스템.
  7. 제 6 항에 있어서,
    상기 초기화 모듈은 상기 조준 명령어를 상기 깊이 카메라에 전송하도록 구성되는
    깊이 카메라 상호 호환 시스템.
  8. 제 1 항에 있어서,
    상기 가상화 모듈은 상기 원래 깊이 이미지의 뷰-프러스텀을 잘라냄으로써 상기 원래 깊이 이미지를 상기 가상 깊이 이미지로 변환하도록 구성되는
    깊이 카메라 상호 호환 시스템.
  9. 제 1 항에 있어서,
    상기 가상화 모듈은 상기 원래 깊이 이미지의 해상도를 낮춤으로써 상기 원래 깊이 이미지를 상기 가상 깊이 이미지로 변환하도록 구성되는
    깊이 카메라 상호 호환 시스템.
  10. 제 1 항에 있어서,
    상기 깊이 이미지 프로듀서는 실제(raw) 깊이 카메라 데이터를 상기 원래 깊이 이미지로 변환하는 온-카메라 프로세서를 포함하고, 상기 캡쳐 모듈은 상기 온-카메라 프로세서를 통해 상기 원래 깊이 이미지를 수신하도록 구성되는
    깊이 카메라 상호 호환 시스템.
  11. 제 1 항에 있어서,
    상기 깊이 이미지 프로듀서는 실제 깊이 카메라 데이터를 상기 원래 깊이 이미지로 변환하는 오프-카메라 프로세서를 포함하고, 상기 캡쳐 모듈은 상기 오프-카메라 프로세서를 통해 상기 원래 깊이 이미지를 수신하도록 구성되는
    깊이 카메라 상호 호환 시스템.
  12. 제 1 항에 있어서,
    상기 깊이 이미지 프로듀서는 실제 깊이 카메라 데이터를 상기 원래 깊이 이미지로 변환하도록 협력하는 온-카메라 프로세서와 오프-카메라 프로세서를 포함하고, 상기 캡쳐 모듈은 상기 온-카메라 프로세서 및 상기 오프-카메라 프로세서를 통해 상기 원래 깊이 이미지를 수신하도록 구성되는
    깊이 카메라 상호 호환 시스템.
  13. 제 1 항에 있어서,
    상기 초기화 모듈, 상기 캡쳐 모듈, 상기 가상화 모듈 및 상기 출력 모듈은 API(application programming interface)의 일부로서 구현되는
    깊이 카메라 상호 호환 시스템.
  14. 깊이 이미지 컨슈머와 복수의 다른 깊이 이미지 프로듀서들 사이에 호환성을 제공하는 방법에 있어서,
    상기 방법은
    깊이 이미지 컨슈머와 호환되지 않는 비지원 깊이 카메라 파라미터를 갖고 있는 원래 깊이 이미지를 수신하는 단계,
    상기 원래 깊이 이미지를 상기 깊이 이미지 컨슈머와 호환되는 지원 가상 깊이 카메라 파라미터들을 갖고 있는 가상 깊이 이미지로 변환하는 단계, 및
    상기 가상 깊이 이미지를 상기 깊이 이미지 컨슈머에게 출력하는 단계를 포함하는
    방법.
  15. 제 14 항에 있어서,
    상기 방법은
    가상 깊이 카메라의 뷰-프러스텀, 가상 깊이 카메라의 해상도, 및 가상 깊이 카메라가 기반하는 실제 깊이 카메라의 모델 중 어느 하나를 명시하는 지원 가상 깊이 카메라 파라미터들의 표시를 수신하는 단계를 더 포함하는
    방법.
KR1020127020257A 2010-02-02 2011-01-10 깊이 카메라 호환성 KR101783379B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US12/698,940 2010-02-02
US12/698,940 US8687044B2 (en) 2010-02-02 2010-02-02 Depth camera compatibility
PCT/US2011/020690 WO2011097049A2 (en) 2010-02-02 2011-01-10 Depth camera compatibility

Publications (2)

Publication Number Publication Date
KR20120138741A true KR20120138741A (ko) 2012-12-26
KR101783379B1 KR101783379B1 (ko) 2017-09-29

Family

ID=44341280

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020127020257A KR101783379B1 (ko) 2010-02-02 2011-01-10 깊이 카메라 호환성

Country Status (8)

Country Link
US (1) US8687044B2 (ko)
EP (1) EP2531979B1 (ko)
JP (1) JP5778182B2 (ko)
KR (1) KR101783379B1 (ko)
CN (1) CN102763420B (ko)
CA (1) CA2786436C (ko)
HK (1) HK1177311A1 (ko)
WO (1) WO2011097049A2 (ko)

Families Citing this family (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20110292036A1 (en) * 2010-05-31 2011-12-01 Primesense Ltd. Depth sensor with application interface
US8582867B2 (en) 2010-09-16 2013-11-12 Primesense Ltd Learning-based pose estimation from depth maps
US8654219B2 (en) * 2011-04-26 2014-02-18 Lg Electronics Inc. Method and apparatus for restoring dead pixel using light intensity map in a time-of-flight camera
US11048333B2 (en) 2011-06-23 2021-06-29 Intel Corporation System and method for close-range movement tracking
US9002099B2 (en) 2011-09-11 2015-04-07 Apple Inc. Learning-based estimation of hand and finger pose
US10366299B2 (en) * 2011-10-25 2019-07-30 Bull Hn Information Systems, Inc. Sorting/scanning system camera upgrade apparatus with backwards compatibility
US8660362B2 (en) 2011-11-21 2014-02-25 Microsoft Corporation Combined depth filtering and super resolution
US8989455B2 (en) * 2012-02-05 2015-03-24 Apple Inc. Enhanced face detection using depth information
US20140104394A1 (en) * 2012-10-15 2014-04-17 Intel Corporation System and method for combining data from multiple depth cameras
EP2972669B1 (en) * 2013-03-14 2019-07-24 Intel Corporation Depth-based user interface gesture control
CN103543830B (zh) * 2013-10-28 2017-02-15 四川大学 一种人体骨骼点映射至立体显示中虚拟三维空间点的方法
WO2016040153A1 (en) * 2014-09-08 2016-03-17 Intel Corporation Environmentally mapped virtualization mechanism
DE112015005020T5 (de) * 2014-11-05 2017-07-27 Trw Automotive U.S. Llc Verbesserte objektdetektion unter verwendung von strukturiertem licht
KR102369792B1 (ko) 2015-03-05 2022-03-03 한화테크윈 주식회사 촬영 장치 및 촬영 방법
CN106709865B (zh) * 2015-11-13 2020-02-18 杭州海康威视数字技术股份有限公司 一种深度图像合成方法及装置
KR101893368B1 (ko) * 2018-01-31 2018-09-04 공간정보기술 주식회사 교통 모니터링 카메라를 이용하는 3차원 시정 측정 방법 및 시스템
US11393115B2 (en) * 2018-11-27 2022-07-19 Infineon Technologies Ag Filtering continuous-wave time-of-flight measurements, based on coded modulation images
CN110276791B (zh) * 2019-06-28 2021-04-06 北京航空航天大学 一种参数可配置的深度相机仿真方法
CN116256769A (zh) * 2021-12-10 2023-06-13 浙江舜宇智能光学技术有限公司 iToF深度计算装置、方法、iToF相机模组和系统

Family Cites Families (199)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4288078A (en) * 1979-11-20 1981-09-08 Lugo Julio I Game apparatus
US4695953A (en) 1983-08-25 1987-09-22 Blair Preston E TV animation interactively controlled by the viewer
US4630910A (en) 1984-02-16 1986-12-23 Robotic Vision Systems, Inc. Method of measuring in three-dimensions at high speed
US4627620A (en) 1984-12-26 1986-12-09 Yang John P Electronic athlete trainer for improving skills in reflex, speed and accuracy
US4645458A (en) 1985-04-15 1987-02-24 Harald Phillip Athletic evaluation and training apparatus
US4702475A (en) 1985-08-16 1987-10-27 Innovating Training Products, Inc. Sports technique and reaction training system
US4843568A (en) 1986-04-11 1989-06-27 Krueger Myron W Real time perception of and response to the actions of an unencumbered participant/user
US4711543A (en) 1986-04-14 1987-12-08 Blair Preston E TV animation interactively controlled by the viewer
US4796997A (en) 1986-05-27 1989-01-10 Synthetic Vision Systems, Inc. Method and system for high-speed, 3-D imaging of an object at a vision station
US5184295A (en) 1986-05-30 1993-02-02 Mann Ralph V System and method for teaching physical skills
US4751642A (en) 1986-08-29 1988-06-14 Silva John M Interactive sports simulation system with physiological sensing and psychological conditioning
US4809065A (en) 1986-12-01 1989-02-28 Kabushiki Kaisha Toshiba Interactive system and related method for displaying data to produce a three-dimensional image of an object
US4817950A (en) 1987-05-08 1989-04-04 Goo Paul E Video game control unit and attitude sensor
US5239463A (en) 1988-08-04 1993-08-24 Blair Preston E Method and apparatus for player interaction with animated characters and objects
US5239464A (en) 1988-08-04 1993-08-24 Blair Preston E Interactive video system providing repeated switching of multiple tracks of actions sequences
US4901362A (en) 1988-08-08 1990-02-13 Raytheon Company Method of recognizing patterns
US4893183A (en) 1988-08-11 1990-01-09 Carnegie-Mellon University Robotic vision system
JPH02199526A (ja) 1988-10-14 1990-08-07 David G Capper 制御インターフェース装置
US4925189A (en) 1989-01-13 1990-05-15 Braeunig Thomas F Body-mounted video game exercise device
US5229756A (en) 1989-02-07 1993-07-20 Yamaha Corporation Image control apparatus
US5469740A (en) 1989-07-14 1995-11-28 Impulse Technology, Inc. Interactive video testing and training system
JPH03103822U (ko) 1990-02-13 1991-10-29
US5101444A (en) 1990-05-18 1992-03-31 Panacea, Inc. Method and apparatus for high speed object location
US5148154A (en) 1990-12-04 1992-09-15 Sony Corporation Of America Multi-dimensional user interface
US5534917A (en) 1991-05-09 1996-07-09 Very Vivid, Inc. Video image based control system
US5417210A (en) 1992-05-27 1995-05-23 International Business Machines Corporation System and method for augmentation of endoscopic surgery
US5295491A (en) 1991-09-26 1994-03-22 Sam Technology, Inc. Non-invasive human neurocognitive performance capability testing method and system
US6054991A (en) 1991-12-02 2000-04-25 Texas Instruments Incorporated Method of modeling player position and movement in a virtual reality system
WO1993010708A1 (en) 1991-12-03 1993-06-10 French Sportech Corporation Interactive video testing and training system
US5875108A (en) 1991-12-23 1999-02-23 Hoffberg; Steven M. Ergonomic man-machine interface incorporating adaptive pattern recognition based control system
JPH07325934A (ja) 1992-07-10 1995-12-12 Walt Disney Co:The 仮想世界に向上したグラフィックスを提供する方法および装置
US5999908A (en) 1992-08-06 1999-12-07 Abelow; Daniel H. Customer-based product design module
US5320538A (en) 1992-09-23 1994-06-14 Hughes Training, Inc. Interactive aircraft training system and method
IT1257294B (it) 1992-11-20 1996-01-12 Dispositivo atto a rilevare la configurazione di un'unita' fisiologicadistale,da utilizzarsi in particolare come interfaccia avanzata per macchine e calcolatori.
US5495576A (en) 1993-01-11 1996-02-27 Ritchey; Kurtis J. Panoramic image based virtual reality/telepresence audio-visual system and method
US5690582A (en) 1993-02-02 1997-11-25 Tectrix Fitness Equipment, Inc. Interactive exercise apparatus
JP2799126B2 (ja) 1993-03-26 1998-09-17 株式会社ナムコ ビデオゲーム装置及びゲーム用入力装置
US5405152A (en) 1993-06-08 1995-04-11 The Walt Disney Company Method and apparatus for an interactive video game with physical feedback
US5454043A (en) 1993-07-30 1995-09-26 Mitsubishi Electric Research Laboratories, Inc. Dynamic and static hand gesture recognition through low-level image analysis
US5423554A (en) 1993-09-24 1995-06-13 Metamedia Ventures, Inc. Virtual reality game method and apparatus
JPH07114636A (ja) * 1993-10-15 1995-05-02 Ricoh Co Ltd 画素密度変換装置
US5980256A (en) 1993-10-29 1999-11-09 Carmein; David E. E. Virtual reality system with enhanced sensory apparatus
JP3419050B2 (ja) 1993-11-19 2003-06-23 株式会社日立製作所 入力装置
US5347306A (en) 1993-12-17 1994-09-13 Mitsubishi Electric Research Laboratories, Inc. Animated electronic meeting place
JP2552427B2 (ja) 1993-12-28 1996-11-13 コナミ株式会社 テレビ遊戯システム
US5577981A (en) 1994-01-19 1996-11-26 Jarvik; Robert Virtual reality exercise machine and computer controlled video system
US5580249A (en) 1994-02-14 1996-12-03 Sarcos Group Apparatus for simulating mobility of a human
US5597309A (en) 1994-03-28 1997-01-28 Riess; Thomas Method and apparatus for treatment of gait problems associated with parkinson's disease
US5385519A (en) 1994-04-19 1995-01-31 Hsu; Chi-Hsueh Running machine
US5524637A (en) 1994-06-29 1996-06-11 Erickson; Jon W. Interactive system for measuring physiological exertion
US5563988A (en) 1994-08-01 1996-10-08 Massachusetts Institute Of Technology Method and system for facilitating wireless, full-body, real-time user interaction with a digitally represented visual environment
US6714665B1 (en) 1994-09-02 2004-03-30 Sarnoff Corporation Fully automated iris recognition system utilizing wide and narrow fields of view
US5516105A (en) 1994-10-06 1996-05-14 Exergame, Inc. Acceleration activated joystick
US5638300A (en) 1994-12-05 1997-06-10 Johnson; Lee E. Golf swing analysis system
JPH08161292A (ja) 1994-12-09 1996-06-21 Matsushita Electric Ind Co Ltd 混雑度検知方法およびそのシステム
US5594469A (en) 1995-02-21 1997-01-14 Mitsubishi Electric Information Technology Center America Inc. Hand gesture machine control system
US5682229A (en) 1995-04-14 1997-10-28 Schwartz Electro-Optics, Inc. Laser range camera
US5913727A (en) 1995-06-02 1999-06-22 Ahdoot; Ned Interactive movement and contact simulation game
WO1996041304A1 (en) 1995-06-07 1996-12-19 The Trustees Of Columbia University In The City Of New York Apparatus and methods for determining the three-dimensional shape of an object using active illumination and relative blurring in two images due to defocus
US5682196A (en) 1995-06-22 1997-10-28 Actv, Inc. Three-dimensional (3D) video presentation system providing interactive 3D presentation with personalized audio responses for multiple viewers
US5702323A (en) 1995-07-26 1997-12-30 Poulton; Craig K. Electronic exercise enhancer
US6098458A (en) 1995-11-06 2000-08-08 Impulse Technology, Ltd. Testing and training system for assessing movement and agility skills without a confining field
US6073489A (en) 1995-11-06 2000-06-13 French; Barry J. Testing and training system for assessing the ability of a player to complete a task
US6430997B1 (en) 1995-11-06 2002-08-13 Trazer Technologies, Inc. System and method for tracking and assessing movement skills in multidimensional space
US6308565B1 (en) 1995-11-06 2001-10-30 Impulse Technology Ltd. System and method for tracking and assessing movement skills in multidimensional space
US6176782B1 (en) 1997-12-22 2001-01-23 Philips Electronics North America Corp. Motion-based command generation technology
US5933125A (en) 1995-11-27 1999-08-03 Cae Electronics, Ltd. Method and apparatus for reducing instability in the display of a virtual environment
US5641288A (en) 1996-01-11 1997-06-24 Zaenglein, Jr.; William G. Shooting simulating process and training device using a virtual reality display screen
EP0958002A4 (en) 1996-05-08 2001-03-28 Real Vision Corp REAL-TIME SIMULATION USING POSITION DETECTION
US6173066B1 (en) 1996-05-21 2001-01-09 Cybernet Systems Corporation Pose determination and tracking by matching 3D objects to a 2D sensor
US5989157A (en) 1996-08-06 1999-11-23 Walton; Charles A. Exercising system with electronic inertial game playing
EP0959444A4 (en) 1996-08-14 2005-12-07 Nurakhmed Nurislamovic Latypov METHOD FOR TRACKING AND REPRESENTING THE POSITION AND ORIENTATION OF A SUBJECT IN THE SPACE, METHOD FOR PRESENTING A VIRTUAL SPACE THEREON, AND SYSTEMS FOR CARRYING OUT SAID METHODS
JP3064928B2 (ja) 1996-09-20 2000-07-12 日本電気株式会社 被写体抽出方式
US6111582A (en) 1996-12-20 2000-08-29 Jenkins; Barry L. System and method of image generation and encoding using primitive reprojection
EP0849697B1 (en) 1996-12-20 2003-02-12 Hitachi Europe Limited A hand gesture recognition system and method
US6009210A (en) 1997-03-05 1999-12-28 Digital Equipment Corporation Hands-free interface to a virtual reality environment using head tracking
US6100896A (en) 1997-03-24 2000-08-08 Mitsubishi Electric Information Technology Center America, Inc. System for designing graphical multi-participant environments
US6124864A (en) 1997-04-07 2000-09-26 Synapix, Inc. Adaptive modeling and segmentation of visual image streams
US5877803A (en) 1997-04-07 1999-03-02 Tritech Mircoelectronics International, Ltd. 3-D image detector
US6215898B1 (en) 1997-04-15 2001-04-10 Interval Research Corporation Data processing system and method
DE19716958A1 (de) 1997-04-17 1998-10-22 Zbigniew Rybczynski Optisches Abbildungssystem
US5949430A (en) 1997-05-20 1999-09-07 Microsoft Corporation Peripheral lenses for simulating peripheral vision on a display device
JP3077745B2 (ja) 1997-07-31 2000-08-14 日本電気株式会社 データ処理方法および装置、情報記憶媒体
US6188777B1 (en) 1997-08-01 2001-02-13 Interval Research Corporation Method and apparatus for personnel detection and tracking
US6289112B1 (en) 1997-08-22 2001-09-11 International Business Machines Corporation System and method for determining block direction in fingerprint images
US6720949B1 (en) 1997-08-22 2004-04-13 Timothy R. Pryor Man machine interfaces and applications
AUPO894497A0 (en) 1997-09-02 1997-09-25 Xenotech Research Pty Ltd Image processing method and apparatus
EP0905644A3 (en) 1997-09-26 2004-02-25 Matsushita Electric Industrial Co., Ltd. Hand gesture recognizing device
US6141463A (en) 1997-10-10 2000-10-31 Electric Planet Interactive Method and system for estimating jointed-figure configurations
US6384819B1 (en) 1997-10-15 2002-05-07 Electric Planet, Inc. System and method for generating an animatable character
US6072494A (en) 1997-10-15 2000-06-06 Electric Planet, Inc. Method and apparatus for real-time gesture recognition
US6101289A (en) 1997-10-15 2000-08-08 Electric Planet, Inc. Method and apparatus for unencumbered capture of an object
US6411744B1 (en) 1997-10-15 2002-06-25 Electric Planet, Inc. Method and apparatus for performing a clean background subtraction
US6130677A (en) 1997-10-15 2000-10-10 Electric Planet, Inc. Interactive computer vision system
US6181343B1 (en) 1997-12-23 2001-01-30 Philips Electronics North America Corp. System and method for permitting three-dimensional navigation through a virtual reality environment using camera-based gesture inputs
US6159100A (en) 1998-04-23 2000-12-12 Smith; Michael D. Virtual reality game
US6077201A (en) 1998-06-12 2000-06-20 Cheng; Chau-Yang Exercise bicycle
JP3969852B2 (ja) * 1998-06-29 2007-09-05 キヤノン株式会社 移動体間通信システム、通信装置
US7121946B2 (en) 1998-08-10 2006-10-17 Cybernet Systems Corporation Real-time head tracking system for computer games and other applications
US6681031B2 (en) 1998-08-10 2004-01-20 Cybernet Systems Corporation Gesture-controlled interfaces for self-service machines and other applications
US6801637B2 (en) 1999-08-10 2004-10-05 Cybernet Systems Corporation Optical body tracker
US20010008561A1 (en) 1999-08-10 2001-07-19 Paul George V. Real-time object tracking system
US6950534B2 (en) 1998-08-10 2005-09-27 Cybernet Systems Corporation Gesture-controlled interfaces for self-service machines and other applications
US7036094B1 (en) 1998-08-10 2006-04-25 Cybernet Systems Corporation Behavior recognition system
IL126284A (en) 1998-09-17 2002-12-01 Netmor Ltd System and method for three dimensional positioning and tracking
DE69936620T2 (de) 1998-09-28 2008-05-21 Matsushita Electric Industrial Co., Ltd., Kadoma Verfahren und Vorrichtung zum Segmentieren von Handgebärden
AU1930700A (en) 1998-12-04 2000-06-26 Interval Research Corporation Background estimation and segmentation based on range and color
US6147678A (en) 1998-12-09 2000-11-14 Lucent Technologies Inc. Video hand image-three-dimensional computer interface with multiple degrees of freedom
EP1147370B1 (en) 1998-12-16 2009-02-25 3DV Systems Ltd. Self gating photosurface
US6570555B1 (en) 1998-12-30 2003-05-27 Fuji Xerox Co., Ltd. Method and apparatus for embodied conversational characters with multimodal input/output in an interface device
US6373489B1 (en) 1999-01-12 2002-04-16 Schlumberger Technology Corporation Scalable visualization for interactive geometry modeling
US6363160B1 (en) 1999-01-22 2002-03-26 Intel Corporation Interface using pattern recognition and tracking
US7003134B1 (en) 1999-03-08 2006-02-21 Vulcan Patents Llc Three dimensional object pose estimation which employs dense depth information
US6299308B1 (en) 1999-04-02 2001-10-09 Cybernet Systems Corporation Low-cost non-imaging eye tracker system for computer control
US6503195B1 (en) 1999-05-24 2003-01-07 University Of North Carolina At Chapel Hill Methods and systems for real-time structured light depth extraction and endoscope using real-time structured light depth extraction
US6476834B1 (en) 1999-05-28 2002-11-05 International Business Machines Corporation Dynamic creation of selectable items on surfaces
US6873723B1 (en) 1999-06-30 2005-03-29 Intel Corporation Segmenting three-dimensional video images using stereo
US6738066B1 (en) 1999-07-30 2004-05-18 Electric Plant, Inc. System, method and article of manufacture for detecting collisions between video images generated by a camera and an object depicted on a display
US7113918B1 (en) 1999-08-01 2006-09-26 Electric Planet, Inc. Method for video enabled electronic commerce
US7050606B2 (en) 1999-08-10 2006-05-23 Cybernet Systems Corporation Tracking and gesture recognition system particularly suited to vehicular control applications
GB2354389A (en) 1999-09-15 2001-03-21 Sharp Kk Stereo images with comfortable perceived depth
US6663491B2 (en) 2000-02-18 2003-12-16 Namco Ltd. Game apparatus, storage medium and computer program that adjust tempo of sound
US6633294B1 (en) 2000-03-09 2003-10-14 Seth Rosenthal Method and apparatus for using captured high density motion for animation
EP1152261A1 (en) 2000-04-28 2001-11-07 CSEM Centre Suisse d'Electronique et de Microtechnique SA Device and method for spatially resolved photodetection and demodulation of modulated electromagnetic waves
US6640202B1 (en) 2000-05-25 2003-10-28 International Business Machines Corporation Elastic sensor mesh system for 3-dimensional measurement, mapping and kinematics applications
US6731799B1 (en) 2000-06-01 2004-05-04 University Of Washington Object segmentation with background extraction and moving boundary techniques
US6788809B1 (en) 2000-06-30 2004-09-07 Intel Corporation System and method for gesture recognition in three dimensions using stereo imaging and color vision
US7227526B2 (en) 2000-07-24 2007-06-05 Gesturetek, Inc. Video-based image control system
US7058204B2 (en) 2000-10-03 2006-06-06 Gesturetek, Inc. Multiple camera control system
US7039676B1 (en) 2000-10-31 2006-05-02 International Business Machines Corporation Using video image analysis to automatically transmit gestures over a network in a chat or instant messaging session
US6539931B2 (en) 2001-04-16 2003-04-01 Koninklijke Philips Electronics N.V. Ball throwing assistant
US7259747B2 (en) 2001-06-05 2007-08-21 Reactrix Systems, Inc. Interactive video display system
US8035612B2 (en) 2002-05-28 2011-10-11 Intellectual Ventures Holding 67 Llc Self-contained interactive video display system
JP3420221B2 (ja) 2001-06-29 2003-06-23 株式会社コナミコンピュータエンタテインメント東京 ゲーム装置及びプログラム
US6937742B2 (en) 2001-09-28 2005-08-30 Bellsouth Intellectual Property Corporation Gesture activated home appliance
US20040218269A1 (en) * 2002-01-14 2004-11-04 Divelbiss Adam W. General purpose stereoscopic 3D format conversion system and method
AU2003212211A1 (en) 2002-04-19 2003-11-03 Iee International Electronics And Engineering S.A. Safety device for a vehicle
US7348963B2 (en) 2002-05-28 2008-03-25 Reactrix Systems, Inc. Interactive video display system
US7710391B2 (en) 2002-05-28 2010-05-04 Matthew Bell Processing an image utilizing a spatially varying pattern
US7170492B2 (en) 2002-05-28 2007-01-30 Reactrix Systems, Inc. Interactive video display system
US7489812B2 (en) 2002-06-07 2009-02-10 Dynamic Digital Depth Research Pty Ltd. Conversion and encoding techniques
US6847728B2 (en) * 2002-12-09 2005-01-25 Sarnoff Corporation Dynamic depth recovery from multiple synchronized video streams
US7576727B2 (en) 2002-12-13 2009-08-18 Matthew Bell Interactive directed light/sound system
JP4235729B2 (ja) 2003-02-03 2009-03-11 国立大学法人静岡大学 距離画像センサ
DE602004006190T8 (de) 2003-03-31 2008-04-10 Honda Motor Co., Ltd. Vorrichtung, Verfahren und Programm zur Gestenerkennung
US7372977B2 (en) * 2003-05-29 2008-05-13 Honda Motor Co., Ltd. Visual tracking using depth data
US8072470B2 (en) 2003-05-29 2011-12-06 Sony Computer Entertainment Inc. System and method for providing a real-time three-dimensional interactive environment
EP1631937B1 (en) 2003-06-12 2018-03-28 Honda Motor Co., Ltd. Target orientation estimation using depth sensing
JP2005117475A (ja) 2003-10-09 2005-04-28 Canon Inc カメラサーバの色補正方法
US20050089213A1 (en) * 2003-10-23 2005-04-28 Geng Z. J. Method and apparatus for three-dimensional modeling via an image mosaic system
WO2005041579A2 (en) 2003-10-24 2005-05-06 Reactrix Systems, Inc. Method and system for processing captured image information in an interactive video display system
GB0329312D0 (en) 2003-12-18 2004-01-21 Univ Durham Mapping perceived depth to regions of interest in stereoscopic images
JP4125252B2 (ja) * 2004-03-02 2008-07-30 株式会社東芝 画像生成装置、画像生成方法、及び画像生成プログラム
JP4708422B2 (ja) 2004-04-15 2011-06-22 ジェスチャー テック,インコーポレイテッド 両手動作の追跡
US7308112B2 (en) 2004-05-14 2007-12-11 Honda Motor Co., Ltd. Sign based human-machine interaction
US7704135B2 (en) 2004-08-23 2010-04-27 Harrison Jr Shelton E Integrated game system, method, and device
US7671894B2 (en) * 2004-12-17 2010-03-02 Mitsubishi Electric Research Laboratories, Inc. Method and system for processing multiview videos for view synthesis using skip and direct modes
KR20060070280A (ko) 2004-12-20 2006-06-23 한국전자통신연구원 손 제스처 인식을 이용한 사용자 인터페이스 장치 및 그방법
US7853041B2 (en) 2005-01-07 2010-12-14 Gesturetek, Inc. Detecting and tracking objects in images
JP5080273B2 (ja) 2005-01-07 2012-11-21 クアルコム,インコーポレイテッド オプティカルフローに基づく傾きセンサー
JP2008537190A (ja) 2005-01-07 2008-09-11 ジェスチャー テック,インコーポレイテッド 赤外線パターンを照射することによる対象物の三次元像の生成
US8009871B2 (en) * 2005-02-08 2011-08-30 Microsoft Corporation Method and system to segment depth images and to detect shapes in three-dimensionally acquired data
US7598942B2 (en) 2005-02-08 2009-10-06 Oblong Industries, Inc. System and method for gesture based control system
US20080246759A1 (en) * 2005-02-23 2008-10-09 Craig Summers Automatic Scene Modeling for the 3D Camera and 3D Video
WO2006099597A2 (en) 2005-03-17 2006-09-21 Honda Motor Co., Ltd. Pose estimation based on critical point analysis
KR100707206B1 (ko) * 2005-04-11 2007-04-13 삼성전자주식회사 3차원 객체의 깊이영상 기반 표현 방법 및 이를 이용한모델링 및 렌더링 방법 및 장치
BRPI0520196A2 (pt) * 2005-04-25 2009-04-22 Yappa Corp sistema de geraÇço e exibiÇço de imagem em 3d
KR101403172B1 (ko) 2005-05-17 2014-06-03 퀄컴 인코포레이티드 방위-감응 신호 출력
ATE412882T1 (de) 2005-08-12 2008-11-15 Mesa Imaging Ag Hochempfindliches, schnelles pixel für anwendung in einem bildsensor
US20080026838A1 (en) 2005-08-22 2008-01-31 Dunstan James E Multi-player non-role-playing virtual world games: method for two-way interaction between participants and multi-player virtual world games
US7551771B2 (en) * 2005-09-20 2009-06-23 Deltasphere, Inc. Methods, systems, and computer program products for acquiring three-dimensional range information
US20080252661A1 (en) 2005-09-27 2008-10-16 John Allen Hilton Interface for Computer Controllers
US7450736B2 (en) 2005-10-28 2008-11-11 Honda Motor Co., Ltd. Monocular tracking of 3D human motion with a coordinated mixture of factor analyzers
US7340098B2 (en) * 2006-03-15 2008-03-04 Matsushita Electric Industrial Co., Ltd. Method and apparatus for image conversion
JP4847184B2 (ja) * 2006-04-06 2011-12-28 キヤノン株式会社 画像処理装置及びその制御方法、プログラム
US7680633B2 (en) 2006-04-25 2010-03-16 Hewlett-Packard Development Company, L.P. Automated process for generating a computed design of a composite camera comprising multiple digital imaging devices
US7573475B2 (en) 2006-06-01 2009-08-11 Industrial Light & Magic 2D to 3D image conversion
EP2033164B1 (en) * 2006-06-23 2015-10-07 Imax Corporation Methods and systems for converting 2d motion pictures for stereoscopic 3d exhibition
US7701439B2 (en) 2006-07-13 2010-04-20 Northrop Grumman Corporation Gesture recognition simulation system and method
WO2008020734A1 (en) * 2006-08-18 2008-02-21 Gwangju Institute Of Science And Technology A method and apparatus for encoding or decoding frames of different views in multiview video using global disparity
JP5395323B2 (ja) 2006-09-29 2014-01-22 ブレインビジョン株式会社 固体撮像素子
US7835569B2 (en) * 2006-10-13 2010-11-16 Apple Inc. System and method for raw image processing using conversion matrix interpolated from predetermined camera characterization matrices
WO2008056421A1 (fr) 2006-11-10 2008-05-15 Mitsubishi Electric Corporation Système d'affichage synthétisant une image de réseau
US20080112610A1 (en) * 2006-11-14 2008-05-15 S2, Inc. System and method for 3d model generation
DE102006055641B4 (de) 2006-11-22 2013-01-31 Visumotion Gmbh Anordnung und Verfahren zur Aufnahme und Wiedergabe von Bildern einer Szene und/oder eines Objektes
US7412077B2 (en) 2006-12-29 2008-08-12 Motorola, Inc. Apparatus and methods for head pose estimation and head gesture detection
US7729530B2 (en) 2007-03-03 2010-06-01 Sergey Antonov Method and apparatus for 3-D data input to a personal computer with a multimedia oriented operating system
US8358332B2 (en) * 2007-07-23 2013-01-22 Disney Enterprises, Inc. Generation of three-dimensional movies with improved depth control
US7852262B2 (en) 2007-08-16 2010-12-14 Cybernet Systems Corporation Wireless mobile indoor/outdoor tracking system
KR20090055803A (ko) 2007-11-29 2009-06-03 광주과학기술원 다시점 깊이맵 생성 방법 및 장치, 다시점 영상에서의변이값 생성 방법
US8542907B2 (en) * 2007-12-17 2013-09-24 Sony Computer Entertainment America Llc Dynamic three-dimensional object mapping for user-defined control device
TWI362628B (en) * 2007-12-28 2012-04-21 Ind Tech Res Inst Methof for producing an image with depth by using 2d image
KR100954281B1 (ko) * 2008-02-14 2010-04-23 한국전자통신연구원 다시점 영상의 엘리애징 제거를 위한 필터링 장치 및 방법
KR101488199B1 (ko) * 2008-03-12 2015-01-30 삼성전자주식회사 영상 처리 방법, 영상 재생 방법, 그 장치 및 기록매체
US8368753B2 (en) 2008-03-17 2013-02-05 Sony Computer Entertainment America Llc Controller with an integrated depth camera
JP4956483B2 (ja) * 2008-05-19 2012-06-20 株式会社東芝 同期信号制御回路
JP4513906B2 (ja) * 2008-06-27 2010-07-28 ソニー株式会社 画像処理装置、画像処理方法、プログラム及び記録媒体
CN201254344Y (zh) 2008-08-20 2009-06-10 中国农业科学院草原研究所 植物标本及种子存贮器
US8619122B2 (en) * 2010-02-02 2013-12-31 Microsoft Corporation Depth camera compatibility

Also Published As

Publication number Publication date
WO2011097049A2 (en) 2011-08-11
JP2013519089A (ja) 2013-05-23
US8687044B2 (en) 2014-04-01
US20110187819A1 (en) 2011-08-04
CN102763420A (zh) 2012-10-31
JP5778182B2 (ja) 2015-09-16
CA2786436A1 (en) 2011-08-11
EP2531979A4 (en) 2013-04-24
CN102763420B (zh) 2015-07-29
EP2531979B1 (en) 2016-04-06
CA2786436C (en) 2017-11-07
EP2531979A2 (en) 2012-12-12
KR101783379B1 (ko) 2017-09-29
WO2011097049A3 (en) 2011-11-24
HK1177311A1 (zh) 2013-08-16

Similar Documents

Publication Publication Date Title
CA2786439C (en) Depth camera compatibility
CA2786436C (en) Depth camera compatibility
Kadambi et al. 3d depth cameras in vision: Benefits and limitations of the hardware: With an emphasis on the first-and second-generation kinect models
US9519968B2 (en) Calibrating visual sensors using homography operators
US8660362B2 (en) Combined depth filtering and super resolution
US20120242795A1 (en) Digital 3d camera using periodic illumination
CN112189147B (zh) 一种飞行时间ToF相机和一种ToF方法
Takimoto et al. 3D reconstruction and multiple point cloud registration using a low precision RGB-D sensor
US20140253679A1 (en) Depth measurement quality enhancement
JP2016038889A (ja) モーション感知を伴う拡張現実
CN109521879B (zh) 交互式投影控制方法、装置、存储介质及电子设备
US20230245396A1 (en) System and method for three-dimensional scene reconstruction and understanding in extended reality (xr) applications
Xu et al. Kinect-based easy 3d object reconstruction
Wang et al. A Solution for 3D Visualization on Soil Surface Using Stereo Camera
Hozhabri MAINTAINING KINECT V2 ORIGINAL FRAME RATE RUNNING STATE OF THE ART POSE ESTIMATION ALGORITHMS
CN116958415A (zh) 一种基于结构光的聚焦三维重建方法及三维重建系统
Dufour Real-time stereo-matching on embedded hardware for MAVs
Mothe Computer recognition system for detecting and tracking objects in 3D environment
Jeftha RGBDVideoFX: Processing RGBD data for real-time video effects

Legal Events

Date Code Title Description
N231 Notification of change of applicant
A201 Request for examination
E701 Decision to grant or registration of patent right
GRNT Written decision to grant