KR101320134B1 - 이미지로 구현되는 실제장면으로부터의 데이터를 이용하여 이미지 스트림에 가상객체를 실시간 삽입하기 위한 방법 및 장치 - Google Patents

이미지로 구현되는 실제장면으로부터의 데이터를 이용하여 이미지 스트림에 가상객체를 실시간 삽입하기 위한 방법 및 장치 Download PDF

Info

Publication number
KR101320134B1
KR101320134B1 KR1020097016349A KR20097016349A KR101320134B1 KR 101320134 B1 KR101320134 B1 KR 101320134B1 KR 1020097016349 A KR1020097016349 A KR 1020097016349A KR 20097016349 A KR20097016349 A KR 20097016349A KR 101320134 B1 KR101320134 B1 KR 101320134B1
Authority
KR
South Korea
Prior art keywords
image
virtual object
orientation
sensor
data
Prior art date
Application number
KR1020097016349A
Other languages
English (en)
Other versions
KR20090100436A (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 KR20090100436A publication Critical patent/KR20090100436A/ko
Application granted granted Critical
Publication of KR101320134B1 publication Critical patent/KR101320134B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T1/00General purpose image data processing
    • G06T1/0007Image acquisition
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T19/00Manipulating 3D models or images for computer graphics
    • G06T19/20Editing of 3D images, e.g. changing shapes or colours, aligning objects or positioning parts

Abstract

본 발명은 실제장면(120)을 구현하는 이미지 스트림의 적어도 하나의 이미지, 소위 제1 이미지에, 적어도 하나의 가상객체의 적어도 하나의 3차원 구현으로부터 추출된 적어도 하나의 이미지, 소위 제2 이미지를 삽입하는 방법 및 장치에 관한 것이다. 상기 이미지 스트림(210)의 적어도 하나의 상기 제1 이미지를 획득한 후, 상기 실제 장면으로부터의 위치 데이터로부터 상기 실제 장면 내에서의 상기 적어도 하나의 가상객체의 방향 및 위치를 결정하는 정보를 수신하고(210, 214), 그 데이터의 적어도 일부는 상기 실제장면 내의 적어도 하나의 센서(135', 135")로부터 수신되는 반면, 다른 데이터는 제1 이미지의 분석에 의해 결정될 수 있다. 상기 적어도 하나의 제2 이미지는 상기 적어도 하나의 가상 객체의 상기 방향에 따라 상기 적어도 하나의 가상 객체의 상기 3차원 구현으로부터 추출된다. 그런 다음, 상기 적어도 하나의 추출된 제2 이미지가 상기 적어도 하나의 객체(610)의 상기 위치에 따라 상기 적어도 하나의 제1의 획득된 이미지에 삽입된다.
Figure R1020097016349
실제 장면, 이미지 스트림, 가상 객체, 위치, 방향

Description

이미지로 구현되는 실제장면으로부터의 데이터를 이용하여 이미지 스트림에 가상객체를 실시간 삽입하기 위한 방법 및 장치{METHOD AND DEVICE FOR THE REAL TIME IMBEDDING OF VIRTUAL OBJECTS IN AN IMAGE STREAM USING DATA FROM A REAL SCENE REPRESENTED BY SAID IMAGES}
본 발명은 실제 이미지와 가상 이미지의 결합, 일명 증강 현실에 관한 것으로서, 더욱 상세하게는 하나의 실제장면으로부터 얻어 낸 위치 및 방향 정보를 이용하여 가상객체를 그 실제 장면의 구현에 실시간으로 삽입하기 위한 방법 및 장치에 관한 것이다.
하나의 카메라 및 표시 화면을 사용하는 거울 효과는 다수의 응용에서, 특히 비디오 게임 분야에서 사용된다. 그 기술의 원리는 하나의 컴퓨터 또는 콘솔에 연결된 웹캠 유형의 카메라에서 나온 이미지를 수신하는 것을 포함한다. 그 이미지는 바람직하게는 카메라가 연결된 시스템의 메모리에 저장된다. 그 후, 블로브 트랙킹(blobs tracking)이라 칭하기도 하는 객체 추적용 알고리즘이 사용자의 머리 또는 손과 같은 어떤 요소의 윤곽을 실시간으로 계산하기 위해 사용된다. 이미지 내의 이들 형태의 위치는 표시된 이미지의 특정 부분을 변형하거나 왜곡할 수 있게 한다. 그 솔루션은 하나의 이미지 구역을 2개의 자유도에 따라 위치 설정할 수 있게 한다.
하나의 가상객체가 하나의 실제장면을 구현하는 이미지 내에 삽입되어야 하는 위치 및 방향을를 결정하기 위한 하나의 솔루션은 가상객체의 위치 및 방향을 실제장면 내에서 표시하는 것으로 구성된다. 이를 위해 구가 사용될 수 있다. 그 구의 크기는 2차원 구현 내에서의 그 구의 위치와 외관상의 직경에 따라 3차원 공간 내의 그 위치가 계산될 수 있을 정도로 충분해야 한다. 구의 방향은 그 구의 표면상에 채색된 패치를 부착하여 측정될 수 있다. 이 솔루션은 구의 크기가 충분히 크고 이미지 캡쳐 시스템의 품질이 충분히 양호할 때, 사용자의 움직임 가능성, 특히 신속한 이동을 제한하여 효과적이다.
그 솔루션들은 그러나 다수의 응용에서 요구되는 성능을 제공하지 않으며, 수용 가능한 정도의 가격을 유지하면서 그러한 시스템의 성능을 개선할 필요성이 존재한다.
본 발명은 상기한 문제들 중 적어도 하나를 해결할 수 있게 한다.
본 발명은 따라서 하나의 실제장면을 구현하는 이미지 스트림의 적어도 하나의 이미지, 일명 제1 이미지 내에, 적어도 하나의 가상객체의 적어도 하나의 3차원 구현으로부터 추출된 적어도 하나의 이미지, 일명 제2 이미지를 실시간으로 삽입하기 위한 방법을 목적으로 하고, 그 방법은 이하 개시된 단계를 포함하는 것을 특징으로 한다.
- 상기 이미지 스트림으로부터 상기 적어도 하나의 제1 이미지를 수신함:
- 상기 실제장면으로부터의 위치 및 방향 데이터로부터 상기 실제장면 내에 적어도 하나의 가상객체의 위치 및 방향을 결정하기 위한 정보를 수신함. 상기 데이터의 적어도 일부는, 적어도 하나의 상기 실제장면 내에 존재하는 적어도 하나의 센서로부터 수신됨.
- 상기 적어도 하나의 가상 객체의 상기 위치 및 상기 방향에 따라 상기 적어도 하나의 가상 객체의 상기 3차원 구현으로부터 상기 적어도 하나의 제2 이미지를 추출함; 및
- 상기 적어도 하나의 추출된 제2 이미지를 상기 적어도 하나의 객체의 상기 위치에 따라 상기 적어도 하나의 수신된 제1 이미지 내에 삽임 함.
따라서 본 발명에 따른 방법은 하나 또는 다수의 가상객체가 삽입되어야 하는 위치 및 하나 또는 다수의 그 가상객체가 구현되어야 하는 방향을 실시간으로 정확히 결정하게 한다. 가상 객체들의 위치 및 방향은 6개 자유도에 따라 정의된다. 계산 시간 및 정확성은 사용자가 빠르게 움직이는 경우에도 사용자의 재스쳐를 따르는 비디오 게임 등의 증강 현실 애플리케이션을 허용한다.
한 특정 실시예에 따르면, 상기 방향 데이터 중 적어도 일부는 상기 실제 장면에 존재하는 각도 센서로부터 수신된다.
또한 한 특정 실시예에 따르면, 상기 위치 데이터 중 적어도 일부는 상기 실제 장면에 존재하는 위치 센서로부터 수신된다.
대안적으로, 다른 특정 실시예에 따르면, 신뢰할 만하고 경제적인 6개 자유도의 위치 및 방향 센서를 형성하기 위하여 상기 위치 및 방향 데이터의 일부는 상기 실제장면에 존재하는 센서로부터 수신되고, 상기 위치 및 방향 데이터의 다른 일부는 상기 수신된 제1 이미지에서 추출된다.
바람직하게는, 상기 위치 및 방향 데이터 중 적어도 일부는 다수의 가상객체가 삽입되어야 하는 위치를 정확하게 파악할 수 있게 하는 상기 센서와 연관된 기하학적 단일 구성요소로부터 수신된 상기 제1 이미지에서 추출된다.
또한 특정 실시예에 따르면, 본 방법은 또한 이하 개시된 단계를 더 포함한다.
- 상기 수신된 제1 이미지의 분할;
- 상기 분할된 제1 이미지 내에서 적어도 상기 단일한 기하학적 구성요소의 윤곽을 추출함; 및
- 상기 분할된 제1 이미지에서 추출된 상기 윤곽에 따라 상기 기하학적 단일 구성요소의 위치를 결정함.
이러한 단계를 실행함은 이미지 스트림에서 나오는 이미지 내에서 기하학적 단일 구성요소의 위치 설정을 개선할 수 있게 한다. 바람직하게는, 실제장면 내의 상기 단일 구성요소의 위치는 상기 제1 이미지 내의 위치에 의해, 그리고 상기 제1 이미지 내의 단일 구성요소의 가시적 크기에 의해 결정된다.
특정 실시예에 따르면, 그 방법은 상기 가상객체의 상기 위치를 추정하는 단계를 더 포함한다. 추정된 위치와 결정된 위치를 비교하는 것은 하나 또는 다수의 가상객체가 삽입되어야 할 위치의 정확도를 증가시킨다. 상기 가상객체의 상기 위치를 추정하는 단계는 바람직하게는 로우 패스(low-pass) 필터를 사용한다.
본 발명은 또한 상기 명시한 방법의 각 단계를 실행하도록 적용된 지침을 포함하는 컴퓨터 프로그램을 목적으로 한다.
본 발명은 또한 상기 명시한 각각의 단계들을 실행하기 위한 이동식 또는 비이동식 컴퓨터 프로그램의 코드 인스트럭션을 포함하는 컴퓨터 또는 마이크로프로세서에 의해 부분적으로 또는 전체적으로 판독가능한 정보 저장 수단을 목적으로 한다.
본 발명은 또한 적어도 하나의 비디오 카메라 및 적어도 하나의 표시 화면에 연결될 수 있는 증강 현실을 위한 장치를 목적으로 하는데, 상기 장치는 상기 명시한 각각의 단계를 적용하는 수단을 포함한다.
본 발명은 또한, 하나의 실제장면을 구현하는 이미지 스트림의 적어도 하나의 이미지, 일명 제1 이미지 내에, 적어도 하나의 가상객체의 적어도 하나의 3차원 구현에서 추출된 이미지, 일명 제2 이미지를 실시간으로 삽입하기 위한 장치를 목적으로 하고, 그 장치는 이하 명시한 수단을 포함하는 것을 특징으로 한다.
- 상기 이미지 스트림의 적어도 하나의 상기 제1 이미지를 수신하고 저장하는 수단;
- 상기 적어도 하나의 가상 객체의 상기 3차원 구현을 저장하기 위한 수단;
- 상기 실제 장면에서 나온 위치 및 방향 데이터로부터 상기 실제 장면 내에서 적어도 하나의 상기 가상 객체의 위치 및 방향을 결정할 수 있게 하는 정보를 수신하기 위한 수단 - 상기 데이터의 적어도 일부는 상기 실제 장면 내에 존재하는 적어도 하나의 센서로 수신됨 -:
- 적어도 하나의 상기 가상 객체의 상기 위치 및 방향에 따라 적어도 하나의 상기 가상 객체의 상기 3차원 구현의 적어도 하나의 상기 제2 이미지를 추출하기 위한 수단; 및
- 적어도 하나의 상기 객체의 상기 위치에 따라 수신된 적어도 하나의 상기 제1 이미지 내에 추출된 적어도 하나의 상기 제2 이미지를 삽입하는 수단.
따라서 본 발명에 따른 장치는 하나 또는 다수의 가상객체가 삽입되어야 하는 위치 및 그 하나 또는 다수의 가상객체가 구현되어야 하는 방향을 6개 자유도에 따라, 증강 현실 애플리케이션을 위해 실시간으로 정확히 결정할 수 있게 한다.
특정 실시예에 따르면, 장치는 그외에 신뢰할 만하고 경제적인 센서의 사용을 허용하면서 수신된 상기 제1 이미지의 적어도 하나의 위치 및 방향 데이터를 추출하기 위한 수단을 더 포함한다.
본 발명은 또한 적어도 하나의 가시적인 기하학적 단일 구성요소 및 상기 명시한 장치에 위치 및/또는 방향 정보를 전달하도록 적용된 하나의 센서를 포함하는 장치를 목적으로 한다. 그러한 장치는 신뢰할 만하고 경제적이어서 개인적인 응용을 위하여 사용 가능하다.
본 발명의 다른 장점, 목적 및 특징은, 실시예로서 제한적이지 않게, 첨부 도면을 참조하여 이하 명세서에서 드러난다.
도 1은 본 발명에 따른 제1 장치를 도시하는 개략도.
도 2는 본 발명을 적어도 부분적으로 구현할 수 있게 하는 장치의 실시예를 도시하는 도면.
도 3은 6개 자유도의 센서가 사용된 제1 실시예에 따른 본 발명의 장치의 실시예를 개략적으로 도시하는 도면.
도 4는 6개 자유도의 센서 및 "트리거" 유형의 컨택터를 포함하는 도 3에 도시된 핸들의 실시예를 도시하는 도면.
도 5a 및 5b를 포함하는 도 5는 도 3 및 도 4에 도시된 장치를 실행하는 실시예를 도시하는 도면.
도 6은 제2 실시예에 따른 본 발명의 장치를 개략적으로 도시하는 도면.
도 7의 (a), 도 7의 (b), 도 7의 (c)를 포함하는 도 7은 사용된 핸들의 실시예를 도시하는 도면으로서, 도 7의 (a)는 핸들 전체의 형상을 도시하고, 도 7의 (b) 및 도 7의 (c)는 그 핸들의 전기적 개략도의 예를 구현하는 도면.
도 8은 한 실제장면의 구현 내에서 한 기하학적 구성요소의 3차원 위치를 결정하기 위해 사용되는 알고리즘의 어떤 단계를 도시하는 도면.
도 9는 이미지 변환 시에 휘도의 함수로서 채도에 가중치를 주기 위해 사용된 가중(weight) 계수 α의 변화를 도시하는 도면.
도 10은 카메라에서 얻어낸 이미지로부터 하나의 구와 카메라 사이의 거리를 결정하기 위하여 사용된 원리를 도시하는 도면.
본 발명에 따르면, 한 실제장면의 구현 내에 삽입되어야 하는 가상객체의 위치 및/또는 방향과 관련된 데이터는, 적어도 부분적으로는 그 실제장면 내에 위치한 센서에서 얻어진다.
도 1은 본 발명에 따른 제1 장치(100)를 개략적으로 도시한다. 사용자(105)가 바람직하게는 가구 및 화초 등의 다양한 요소를 갖춘 환경(110)에서 거울의 역할을 하는 화면(115) 앞에 위치한다. 화면(115) 상에 전사된 이미지는 비디오 카메라(125)로 촬영된 실제장면(120)의 변형된 이미지이다. 카메라(125)에서 나온 비디오 스트림은, 카메라(125)에서 나온 비디오 스트림을 변형한 후 화면(115)으로 재전송하는 컴퓨터(130)로 전송된다. 컴퓨터(130)는 특히 하나 이상의, 동영상이거나 동영상이 아니기도 한 가상객체를 카메라(125)에서 나온 비디오 스트림의 이미지 내에 삽입하는 역할을 한다. 실제장면(120) 내 가상객체의 위치 및 방향은 컴퓨터(130)에 연결된 센서(135)에 의해 적어도 부분적으로 결정된다.
제1 실시예에 따르면, 센서(135)는 실제장면(120) 내에서 위치 및 방향을 결정할 수 있게 하는 6개 자유도(X, Y, Z, 요, 피치, 롤)의 센서이다. 예시로서, 그 센서는 폴레뮈스(Polhemus)사의 "Fastrack(등록상표)" 센서일 수 있다. 제2 실시예에 있어서, 그 센서(135)는 방향(요, 피치, 롤)을 결정할 수 있게 하는 3개 자유도의 센서일 수 있고, 센서의 위치(X, Y, Z)는 카메라(125)에서 나온 이미지의 시각적 분석에 의해 결정된다.
따라서 그 시스템(100)은 하기 구성요소들로 구성된다.
- 표시 화면(예를 들어 LCD 화면, 플라즈마 화면 또는 비디오 프로젝션 화면);
- 3개 자유도에 따라 방향을 정할 수 있는 센서 및 3개 자유도에 따라 위치를 정할 수 있는 선택적 센서;
- 바람직하게는 화면에 가깝고 시차 효과를 피하기 위해 축 상에 위치한 비디오 카메라;
- 이하의 기능을 수행하기 위한 컴퓨터(예를 들어 PC);
- 카메라로부터 나오는 비디오 시그널{비디오 시그널은 예를 들어 HDMI(High Definition Multimedia Interface) 또는 USB/USB2 (Universal Serial Bus)의 커넥션에 따라 전송되는, 예를 들어 PAL(Phase Alternated Line), NTSC(National Television System Committee), YUV(Luminance Bandwidth-Chrominance), YUV-HD(Luminance Bandwidth-Chrominance High Definition), SDI(Serial Digital Interface) 또는 HD-SDI(High Definition Serial Digital Interface) 형식의 시그널}을 실시간으로 수신;
- 동작 센서 및, 실시예의 유형에 따라서는 위치 센서에서 나온 데이터 스트림을 실시간으로 수신;
- 컴퓨터의 그래픽 카드 출력{그 출력은 예를 들어 VGA(Video Graphics Array), DVI(Digital Visual Interface), HDMI, SDI, HD-SDI, YUV, YUV-HD일 수 있음}을 통하여 실시간으로 증강 현실의 이미지를 생성; 및,
- 바람직하게는, "거울" 효과를 내기 위해 이미지의 좌측이 우측이 되도록 최종 이미지상에 대칭작용(flipping)을 가함.
컴퓨터는 예를 들어 하기 명시한 기능들의 도움으로 쌍방향 증강 현실 장면을 생성하기 위하여 또딸 이메르지옹(Total Immersion)사의 D'Fusion(또딸 이메르지옹사의 상표) 소프트웨어 등과 같은 증강 현실 애플리케이션을 포함한다.
- 동작 데이터 스트림을 실시간으로 수신; 및,
- 카메라에서 나온 비디오 스트림 내에 3차원 합성 객체의 2차원 구현을 실시간으로 첨가하고 표시 화면에 변형된 비디오 스트림을 전달.
그 유형의 응용 원리가 WO 2004/012445 특허출원 명세서에 명시되어 있다.
D'Fusion 소프트웨어는 따라서 결정된 위치 및 방향에 따라 합성된 객체를 실시간으로 시각화할 수 있게 한다. 사용자는 또한 비디오 스트림 내에 삽입된 다른 가상객체와 상호작용할 수 있다.
본 발명 또는 본 발명의 일부를 실행하는 장치가 도 2 상에 도시되어 있다. 장치(200)는 예를 들어 마이크로 컴퓨터, 워크스테이션 또는 게임기이다.
장치(200)는 바람직하게는 통신 버스(202)를 포함하고, 그 통신 버스에는
- 중앙 제어장치(CPU; Central Processing Unit), 즉 마이크로 프로세서(204);
- 운영 체제 및 "Prog" 등과 같은 프로그램을 포함할 수 있는 읽기전용 메모리(ROM; Read Only Memory)(206);
- 상기한 프로그램을 실행할 때 생성되고 변경되는 변수 및 파라미터를 저장하도록 적용된 기록장치를 포함하는 캐쉬 메모리, 즉 랜덤 액세스 메모리(208, RAM; Random Access Memory);
- 카메라(212)에 연결된 비디오 수신 카드(210);
- 센서(도시되지 않은)에 연결된 데이터 수신 카드(214); 및,
- 화면 또는 프로젝터(218)에 연결된 그래픽 카드(216).
선택적으로, 장치(200)는 또한 이하 명시한 구성요소들을 갖출 수 있다.
- 상기한 "Prog" 프로그램 및 본 발명에 따라 처리되었거나 처리될 데이터를 포함할 수 있는 하드디스크(220);
- 키보드(222) 및 마우스(224) 또는 라이트 펜, 터치형 스크린 또는 리모컨 등과 같은 사용자가 본 발명에 따른 프로그램과 상호작용할 수 있게 하는 임의의 기타 포인팅 장치;
- 예를 들어 인터넷 네트워크 등과 같이 분산 통신 네트워크(228)에 연결되고 데이터를 수신하고 전송하도록 되어있는 통신 인터페이스(226); 및,
- 본 발명에 따라 처리되었거나 처리될 데이터를 읽거나 쓸 수 있게 적용된 메모리 카드 판독기(도시되지 않음).
그 통신용 버스는 그 장치(200) 내에 포함되어나 연결된 여러 구성요소들 사이에서의 통신 및 연동을 하게 한다. 그 버스의 구성은 제한적이지 않으며, 특히 중앙제어장치는 직접적으로 또는 그 장치(200)의 다른 구성요소를 매개로 그 장치(200)의 모든 구성요소들에 명령을 전달할 수 있다.
프로그램 가능한 장치가 본 발명의 프로세스를 실행할 수 있게 하는 각 프로그램의 실행 코드는 예를 들어 하드디스크(220) 또는 읽기전용메모리(206)에 저장될 수 있다.
변형예에 따르면, 프로그램의 실행 코드는 인터페이스(226)를 통하여 통신 네트워크(228)로부터 수신되어 상기 명시한 바와 동일한 방식으로 저장될 수 있다.
메모리 카드는 예를 들어 콤팩트 디스크(CD-ROM 또는 DVD) 등과 같은 모든 정보 매체로 대체될 수 있다. 일반적으로, 메모리 카드는 컴퓨터 또는 마이크로 프로세서로 판독가능하고, 장치에 내장되었거나 아니거나, 경우에 따라 착탈가능하고, 본 발명에 따른 방법을 실행할 수 있게 하는 하나 또는 다수의 프로그램을 저장하는 데 적합한 정보 저장 수단으로 대체될 수 있다.
보다 일반적으로, 하나 또는 다수의 그 프로그램은 실행 전 장치(200)의 저장 수단 중 하나에 그것이 실행되기 전에 설치될 수 있다.
중앙제어장치(204)는 본 발명에 따른 하나 또는 다수의 프로그램의 소프트웨어 코드 부분 또는 인스트럭션의 실행을 명령하고 지시할 것인데, 이들은 하드디스크(220) 또는 읽기전용 메모리(206) 또는 상기한 다른 저장 구성요소에 저장된다. 전원이 켜졌을 때, 예를 들어 하드디스크(220) 또는 읽기전용 메모리(206) 등의 비휘발성 메모리 내에 저장된 하나 또는 다수의 프로그램은 RAM(208)으로 이동되어 본 발명에 따른 하나 또는 다수의 프로그램의 실행 코드 및 본 발명을 실행하는데 필요한 변수와 파라미터들을 메모리하기 위한 기록장치를 포함한다.
본 발명에 따른 장치를 포함하는 통신 장비는 프로그램된 장비일 수 있음을 주지해야 한다. 그러면 장비는 예를 들어 주문형 반도체(ASIC)에 심어진 하나 또는 다수의 전산 프로그램 코드를 포함한다.
도 3은 6개 자유도의 센서가 사용된 상기 명시한 제1 실시예에 따른 본 발명의 장치의 실시예를 도시한다. 본 실시예에 따르면, 하나의 화면(115)과 하나의 카메라(125)가 컴퓨터(130')에 연결되어 있다. 하나의 핸들(300) 또한 유닛(305)을 통하여 컴퓨터(130')에 연결되어 있다. 비디오 카메라(125)는 바람직하게는 사용자가 화면 가까이에 위치할 수 있도록 광각렌즈를 갖춘 비디오 카메라이다. 그 비디오 카메라(125)는 예를 들어 Sony VCLHG0737Y 렌즈를 장착한 카메라 Sony HDR HC1 이다.
그 컴퓨터(130')는 비디오 카메라(125)에 연결된 비디오 수신 카드(210), 화면(115)에 연결된 그래픽 카드(216), 유닛(305)을 통하여 핸들(300)의 위치 및 방향 감지 센서에 연결된 제1 통신 포트 (214-1)(COM1) 및 바람직하게는 유닛(305)을 통하여 핸들(300)의 "트리거" 유형의 컨택터에 연결된 제2 통신 포트(214-2) (COM2)를 포함한다. "트리거" 유형의 컨택터에 의하여 트리거 상에 압력을 가함으로써 신속하게 해당 전기 회로의 개방 및 폐쇄를 가능하게 하는 온-오프 스위치가 포함되어야 한다. 그러한 컨택터의 사용은 사용자와 컴퓨터(130')의 소프트웨어 간의 상호작용을 증대시킬 수 있게 한다. 그 컨택터(310)는 예를 들어, 게임 소프트웨어 내에서 사격을 시뮬레이트한다. 비디오 수신 카드는 예를 들어 Decklinck PCle이다. 그래픽 카드는 비디오 스트림 내에 합성 이미지를 삽입할 수 있게 하는 3D 그래픽 카드로서 예를 들어 ATI X1800XL카드 또는 ATI 1900XT카드이다. 도시된 실시예에서는 두 개의 통신 포트(COM1, COM2)를 사용하지만 컴퓨터(130')와 핸들(300) 사이에는 다른 통신 인터페이스가 사용될 수도 있음이 이해되어야 한다.
그 컴퓨터(130')는 바람직하게는 화면(115)에 내장된 스피커(HP)에 연결된 사운드 카드(320)를 포함한다. 비디오 수신 카드(210)와 비디오 카메라(125)는 다음 표준들 중 하나에 따라 연결될 수 있다: 컴포지트(composit) 비디오, SVideo, HDMI, YUV, YUV-HD, SDI, HD-SDI 또는 USB/USB2. 마찬가지로 그래픽 카드(216)와 화면(115)은 다음 표준들 중 하나에 따라 연결될 수 있다: 컴포지트 비디오, SVideo, YUV, YUV-HD, SDI, HD-SDI, HDMI, VGA. 통신 포트들(214-1 및 214-2), 센서 및 핸들(300)의 "트리거" 유형의 컨택터 사이의 연결은 RS-232 유형일 수 있다. 컴퓨터(130')는 예를 들어 3Gbyte의 램, 120 Gbyte 하드디스크 및 수신 카드 및 그래픽 카드용의 2개의 express PCI 인터페이스를 갖춘 3GHz 인텔 펜티엄 IV 프로세서 내장 스탠더드 PC이다.
핸들(300)은 바람직하게는 6개 자유도의 위치 센서(135'), 예를 들어 폴레뮈스사의 "Fastrack" 센서 및 "트리거" 유형의 컨택터(310)를 포함한다. 핸들(300)의 한 실시예는 도 4에 도시되었다.
유닛(305)은 핸들(300) 및 컴퓨터(130') 사이의 인터페이스를 구성한다. 위치 및 방향 센서에 연계된 유닛(305)의 기능은 센서로부터의 시그널을 컴퓨터(130')가 처리할 수 있는 데이터로 변환하는 것을 목적으로 한다. 모듈(305)은 감지용 모듈(315) 및 바람직하게는 센서(135')로부터의 시그널을 유닛(305)으로 무선 전달할 수 있게 하는 에미터(320)를 포함한다.
도 4는 센서(135') 및 "트리거" 유형의 컨택터(310)를 포함하는 핸들(300)의 실시예를 도시한다. 핸들(300)은 전형적으로 미국의 Happ사가 시판한 45구경 광학 피스톨 등과 같이 오락실용으로 사용되는 피스톨이다. 피스톨의 총구는 바람직하게는 핸들을 얻기 위하여 제거되고, 본래의 전자공학소재는 "트리거" 유형의 컨택터(310)만 남기도록 제거되었다. 위치 및 방향 센서(135')는 핸들에 삽입된다. 센서의 선 및 트리거의 선들은 핸들과 캡쳐 유닛(305)을 연결하는 전기 클래딩(cladding) 내에 삽입된다. DB9 유형의 커넥터는 바람직하게는 사용자가 트리거를 누를 때 컨택터는 폐쇄되고, 시리어 포트의 핀(8)과 핀(7)이 4.7 KΩ 저항을 통하여 연결되도록 전기 클래딩의 다른 한쪽 끝에 장착된다.
다른 방법으로는, 전기 클래딩은 제거되고 무선 통신 모듈이 핸들(300) 내에 삽입된다. 그 변형예에 따르면, 센서(135')에서 나온 데이터는 유선 연결 없이 유닛(305)으로 전달된다. "트리거" 유형의 컨택터는 따라서 무선 통신 모듈에 동시에 결합되지 않는 한 비활성이다.
도 5a 및 도 5b를 포함하는 도 5는 도 3 및 도 4에 도시된 장치를 실행하는 실시예(데이터가 핸들과 동작감지 유닛 사이의 연결선을 통하여 전달되는 실시 예에 따른)를 도시한다. 도 5a는 그 장치의 단면을 측면에서 도시하고, 도 5b는 그 장치의 조감도를 도시한다. 그 실시예에 따르면 한 사용자(105)는, 바람직하게는 그 사용자(105)의 정면에 대략 눈높이에 위치한 화면(115)을 포함하는 장치(500)의 정면에 자리한다. 그 장치(500)는 또한 화면(125)의 근처에 위치한 비디오 카메라(125), 동작감지 유닛(305) 및, 그 비디오 카메라(125), 화면(115) 및 동작감지 유닛(305)이 상기 명시한 바와 같이 연결되어 있는 컴퓨터(130')를 포함한다. 그 실시예에서, 사용자(105)는 연결선으로 동작감지 유닛(305)에 연결된 하나의 핸들(300')을 구비한다.
특정 실시예에 따르면, 균일한 색의 배경, 예를 들어 청색 배경 또는 녹색 배경이 사용자의 후방에 배치된다. 그 균일한 배경은 사용자를 "클립(clip)" 해내기 위하여, 즉 비디오 카메라(115)에서 얻어낸 이미지로부터 사용자를 추출해서 합성 장면, 즉, 제2 비디오 스트림 내에 그를 삽입하기 위하여 소프트웨어에 의해 사용된다. 하나의 합성 장면에 사용자를 삽입하기 위하여, D'Fusion 소프트웨어는 카메라에서 얻어낸 비디오 스트림을 처리하는 픽셀 셰이더(pixel shader) 기능을 이용해 실시간으로 크로마키(chromakey) 기능(제1 이미지 내에서 확인된 색상에 따라 제1 이미지 내에 제2 이미지를 삽입)을 사용한다.
제1 실시예의 참조로서 상기 명시한 장치는 결과 면에서 전체적으로 만족을 주지만, 6개 자유도의 위치 및 방향 센서는 값 때문에 개인이 사용하는 것을 불가능하게 할 수 있다. 이러한 단점을 극복하기 위하여, 제2 실시예는 6개 자유도에 따른 센서의 위치 및 방향을 얻을 수 있도록 하는 이미지 처리 모듈이 결합된 저렴한 동작 센서를 사용하는 것을 바탕으로 한다.
도 6은 제2 실시예에 따른 장치를 개략적으로 도시한다. 그 장치는 화면(115), 비디오 카메라(125) 및 핸들(600)에 연결된 하나의 컴퓨터(130")를 포함한다. 그 컴퓨터(130")는 핸들(600)의 위치를 결정하도록 적용된 이미지 처리 모듈(605)을 포함한다는 점에서 특별히 컴퓨터(130')와 구별된다. 비디오 렌더링 모듈(610)은 컴퓨터(130'; 도시 생략) 내에 있는 것과 유사하며, 그 또한 D'Fusion 소프트웨어를 사용한다. 컴퓨터(130') 및 컴퓨터(130")의 특성은 유사하다. D'Fusion 소프트웨어와 동급의 소프트웨어가 비디오 스트림을 가상객체와 결합하기 위하여 (3D 렌더링 모듈, 610), 그리고 (이미지 처리 모듈(605)에 의한) 이미지 분석에 의하여 핸들의 위치정보를 포착하기 위하여 사용될 수 있다. 비디오 카메라(125)는 상기 명시한 비디오 카메라와 유사할 수 있거나, 하나의 단순 웹캠일 수 있다.
핸들(600)은 바람직하게는 컴퓨터(130")와 무선으로, 동작 감지 유닛 없이 연결될 수 있다. 핸들(600)은 3개 자유도에 따라 핸들(600)의 방향을 결정할 수 있는 방향 센서(135")를 포함한다. 방향 센서(135")는 예를 들어 Xsens사의 각도 센서 MT9B 또는 Intersense사의 각도 센서 Inertia Cube 3의 유선 또는 무선 버젼이다. 센서로부터 얻어낸 방향 데이터는 포트 COM 또는 특정 무선 프로토콜에 의해 전달될 수 있다. 바람직하게는 하나 이상의 "트리거" 유형의 컨택터(310)가 핸들(600) 내에 존재한다. 핸들(600)은 또한 특정한 형태를 가지고, 이미지 상에 핸들(600)이 가시화되었을 때 그 핸들(600)이 위치를 파악할 수 있는 하나의 기하학적 구성요소를 포함한다. 그 기하학적 형태는 예를 들어 직경이 수 센티미터 정도인 하나의 채색된 구이다. 그러나, 다른 형태, 특히 입방체, 평면 또는 다면체의 형태들이 사용될 수도 있다. 핸들(600)은 바람직하게는 홈이 가(notching) 있어서, 각도 센서와 일관되는 위치를 잡을 수 있도록 사용자가 필히 사전 설정된 방향에 따라{그 홈(notch)들을 따라 손가락이 위치하여} 그 핸들을 잡게 한다.
도 7의 (a) 도 7의 (b), 및 도 7의 (c)를 포함하는 도 7은 핸들(600)의 실시예를 도시한다. 도 7의 (a)는 핸들(600) 전체의 형상을 도시하고, 도 7의 (b) 및 도 7의 (c)는 그 핸들의 전기적 개략도를 표현한다.
도시한 바와 같이, 핸들(600)은 내부에 전지(700), 예를 들어 리튬전지가 들어있고 사용자가 잡도록 되어있는, 손잡이로도 칭하는 하단부, 무선 통신 모듈(705) 및 "트리거" 유형의 컨택터(310)를 포함한다. 각도 센서(135")는 바람직하게는 손잡이의 상단부에 고정된다. 손잡이의 상단부는 바람직하게는 그 핸들의 위치를 식별하기 위하여 사용되는 기하학적 구성요소의 장착을 허용하는 스크류 스레드를 포함한다. 그 실시예에서, 그 기하학적 구성요소는 손잡이 상단부 상에 스크루 되도록 적용된 개구부를 포함하는 구(615)이다. 접착 또는 케이싱 등, 기하학적 구성요소를 손잡이에 고정하는 기타 수단이 포함될 수 있다. 바람직한 방식으로, 전구 또는 LED 등의 광원이, 바람직하게는 투명 또는 반투명한 물질로 만들어진 구(615)의 내부에 제공된다. 그 광원 및 핸들(600)의 모든 전기적 구성 구성요소 전체는 사용자의 요청에 의해서 또는 예를 들어 그 핸들을 정돈하기 위하여, 그리고 바람직하게는 전지(700)를 충전하기 위하여 사용되는 받침대(715)에서 그 핸들(600)을 탈착하자마자 작동 된다. 그 경우 그 받침대(700)는 전원에 연결된다.
도 7의 (b)는 핸들(600)의 전기적 구성요소의 제1 조립을 도시한다. 전지(700)는 방향 센서(135"), "트리거" 유형의 컨택터(310), 유선 전송 모듈(705) 및 광원(710)에 전원 공급을 위하여 연결된다. 바람직하게는, 하나의 스위치(720)가 방향 센서(135"), "트리거" 유형의 컨택터(310), 유선 전송 모듈(705) 및 광원(710)에 전류를 차단하거나 공급할 수 있도록 전지(700)의 출구에 제공된다. 스위치(720)는 사용자에 의해 수동으로, 또는 예를 들어 받침대(715)에서 핸들(600)이 탈착되었을 때 자동으로 조정된다. 또한 그 스위치가 상기한 구성요소들 중 특정한 것만 조절할 수 있도록 전지(700)의 연결도가 변형될 수도 있다. 또한 예를 들어 광원(710)을 작동하지 않고 핸들(600)을 사용할 수 있도록 그 구성요소들을 독립적으로 조정하기 위하여 다수의 스위치를 사용하는 것도 가능하다.
방향 센서(135") 및 "트리거" 유형의 컨택터(310)는 방향 센서(135") 및 컨택터(310)에서 나온 정보를 컴퓨터(130")에 전송하기 위하여 유선 전송 모듈(705)에 연결된다. 그 유선 전송 모듈(705)은 예를 들어 Bluetooth 또는 WiFi 등의 고주파(HF) 모듈이다. 해당 무선 통신 모듈은 핸들(600)에서 나오는 신호를 수신하기 위하여 컴퓨터(130")에 연결된다. 그 모듈은 예를 들어 USB/USB2 또는 RS-232 인터페이스의 도움으로 컴퓨터(130")에 접속된다.
다른 예로서, 핸들(600)과 컴퓨터(130") 사이에 유선 연결이 사용되면, 핸들(600)은 무선 통신 모듈(715)도 전지(700)도 필요치 않고 그 컴퓨터는 핸들(600)에 전기를 공급할 수 있다. 그 변형예는 도 7의 (c)에 도시되어 있다. 그 실시예에서, 그 핸들(600)에 전기를 공급하고 센서(135") 및 컨택터(310)에서 방출된 신호를 전달하기 위한 선들을 포함하는 케이싱(725)은 그 핸들(600)을 컴퓨터(130")에 연결한다.
그 핸들(600)은 핸들 상에 있는 홈을 사용함으로써 센서의 방향에 대한 손의 상대적 방향에 관한 불확실성을 방지할 수 있게 한다. 그 핸들의 위치를 결정하기 위하여 사용된 기하학적 구성요소는 사용자의 다수의 동작을 모두 허용하면서 쉽게 볼 수 있다. 그 기하학적 구성요소는 그 색상 및 형태를 변경할 수 있도록 용이하게 분해된다. 끝으로 기하학적 구성요소 내부, 혹은 그 표면에 광원이 존재함으로써 열악한 조명 조건 하에서 객체의 추적을 개선할 수 있게 한다.
컴퓨터(130")는 핸들(600)의 위치를 결정하기 위하여 그것의 상부에 기하학적 구성요소가 있는 비디오 카메라 또는 웹캠(125)에서 나온 이미지를 분석한다. 그 단계에서는, 사용된 카메라에서 얻어낸 이미지에서 기하학적 구성요소의 중심이 어디 위치하는 지를 정확히 찾아내는 것이 중요하다. 사용된 솔루션은 얻어진 결과의 질을 개선하기 위하여 새로운 색 공간 및 새로운 필터링 접근을 사용한다.
하나의 이미지에서 기하학적 구성요소의 위치를 추적하는 알고리즘의 여러 단계들이 도 8에 나타나 있는 바, 이하와 같다:
- 기하학적 구성요소의 색상에 따른 임계치 정의(단계 800); 점선을 사용하여 도시된 바와 같이 기하학적 구성요소가 이미지 내에서 검색될 때마다 사용되는 임계치를 정의할 필요는 없음; 임계치는 그 핸들의 파라미터 설정시에 설정되고/되거나 필요한 경우 재평가될 수 있음;
- RGB(적-녹-청색) 이미지를 HSL(Hue-Saturation-Luminance) 유형의 색공간에서 파생된 HS'L 유형의 색공간으로 변환(단계 805)하고 그 기하학적 구성요소의 색상에 해당하는 픽셀 구역의 이미지를 분할함으로써 검색(단계 810),
- 구역들의 윤곽을 재구성하고 추적될 기하학적 구성요소의 형상에 최대한 근접한 것을 검색(단계 815); 및
- 그 깊이를 재확인하기 위하여 초기 측정된 수치의 함수로 이미지 내에 객체의 크기를 결정하고, 그 이미지 내에서 기하학적 구성요소의 중심 위치를 검색하고 계산함(단계 820).
획득된 결과의 정확도를 개선하기 위하여, 시간에 대해 기하학적 구성요소의 위치의 선형 외삽법을 사용하여 이론적으로 원하는 위치를 추정하고(단계 825) 추정된 위치를 이미지 분석에 의해 획득된 위치와 비교(단계 830)하는 것이 바람직하다.
기하학적 구성요소의 위치를 결정하는 원칙은 우선 기하학적 구성요소의 색상에 해당하는 색상의 이미지 구역을 감지하는 것으로 구성된다. 휘도의 변화를 극복하기 위하여 HSL 색상 공간이 RGB 색상공간보다 바람직하다.
RGB 이미지를 HSL 이미지로 변환한 후, 모든 픽셀이 선택되고 휘도(L)가 사전 설정된 범위 [θLinf;θLsup] 내에 포함되지 않는 픽셀은 제외된다. 한 픽셀의 제외는 예를 들어 휘도(L), 채도(S) 및 색조(H)에 대하여 제로 값을 줌으로써 실행될 수 있다. 따라서 선택된 모든 픽셀은 모두 제로가 아닌 값을 갖는 반면 제외된 픽셀은 모두 제로 값을 갖는다.
HSL 색공간을 사용하는 한 이미지를 분할하는 것은, 매우 어두운 픽셀 또는 매우밝은 픽셀(그러나 흑색도 백색도 아닌)이 사실상 임의의 값의 색조를 가질 수 있으므로(이 값은 수신 시 이미지 내에 발생 된 노이즈로 인하여 신속히 변화될 수 있음) 전반적으로 만족스럽지는 못한 결과를 제공하고, 따라서 원하는 색조에 근접한 색조를 가질 수 있다. 그러한 단점을 극복하기 위하여, HSL 색 공간은 지나치게 어둡거나 지나치게 밝은 픽셀은 고려하지 않도록 변형된다. 이를 위해 새로운 채도(S')가 생성된다. 그 채도(S')는 휘도(L)에 연결된 가중 계수 α를 이용하여 다음 관계식 S' = αS에 따라 채도(S)로 부터 산출된다. 웨이트 계수 α는 바람직하게는 0과 1 사이 값이다. 도 9는 휘도의 함수로 가중 계수 α의 값을 도시한다.
픽셀의 채도(S')가 사전 설정된 임계치 θS'inf를 초과하지 않으면 그 픽셀은 제외된다. 마찬가지로, 기하학적 구성요소의 색조에 해당하지 않는 색조(H)를 갖는 픽셀은, 즉 기하학적 구성요소의 색조에 따라 사전 설정된 범위 [θHinf;θHsup] 내에 포함되지 않는 픽셀은 제외된다. 색조는 이론상 도수로 0 내지 360°사이에서 변하여 표현됨을 주지해야 한다. 실제로, 색조는 원형 개념으로서 "적색"이 양 극단(0 및 360)이다. 실제 관점에서 볼 때 360은 8비트 코드가 될 수 없으므로, 색조 값은 타겟 애플리케이션에 따라 [0,180[,[0,240[ 또는 [0,255]의 범위로 다시 인코드된다. 계산 비용을 최적화하기 위하여, [0,180[ 구간이 바람직하다. 그러나 그 척도의 변경이 결과에 아무런 손실을 초래하지 않음을 주지해야 한다.
픽셀의 제거는 바람직하게는 휘도(L), 채도(S') 그리고 색조(H)의 순서로 실행된다. 그러나 중요 단계는 색조(H)에 따른 분할이다. 휘도 및 채도에 따른 분할은 특히 계산 시간을 최적화시킬 수 있어서 결과의 품질 및 전반적 성능을 개선할 수 있게 한다.
선택된 이미지 픽셀 중 일부는 기하학적 구성요소를 표현한다. 그 부분을 식별하기 위하여, 윤곽 추출 단계가 실행된다. 그 단계는 예를 들어 컨벌루션 마스크를 사용하여 제로가 아닌 픽셀 그룹의 윤곽을 추출하는 것으로 구성된다. 여기서 윤곽 추출용 알고리즘이 다수 존재함을 주지해야 한다.
그 후 사용된 기하학적 구성요소의 형태에 최대한 근접한 윤곽을 결정할 필요가 있는데, 여기서는 사용된 기하학적 구성요소가 구형이므로 원형의 윤곽이다.
픽셀의 수로 표현되는 크기가 실행가능한 크기의 원형을 표현하기에는 너무 작은 경우 그러한 윤곽들을 제외된다. 그 선택은 사전 설정된 임계치 θT에 따라 실행된다. 마찬가지로, 역시 픽셀의 수로 표현되는 면적이 너무 작은 경우의 윤곽들도 제외된다. 그 선택은 사전 설정된 임계치 θA에 따라 다시 실행된다.
그 다음, 각각의 나머지 윤곽에 대하여, 그 윤곽의 둘레를 포함하는 최소 반경의 원이 계산된 후, 윤곽으로 결정된 면적과 계산된 원의 반경 사이의 비율이 계산된다. 그리하여 최대 비율을 산출하는 윤곽이 원하던 윤곽인 것으로 간주한다. 그 비율은 윤곽이 그 윤곽을 감싸는 원을 최대한 채우고 따라서 원형이 되려는 경향을 지닌 윤곽 및 최대치의 반경을 갖는 윤곽을 동시에 조장한다는 사실을 나타낸다. 그러한 기준은 상대적으로 낮은 계산 비용이라는 장점을 가져온다. 자연히, 선택의 기준은 기하학적 구성요소의 형태에 적응되어야 한다.
색상 측정 및 기하학적 분할은 이미지 내에 핸들과 연계된 구의 투영도를 대략적으로 나타내는 원형을 얻을 수 있게 한다. 그 솔루션의 장점은 만일 기하학적 구성요소의 형태 및 색상이 그 환경에서 고유한 것이면, 부분적으로 맞물렸을 때에도 그러한 형태의 식별이 견고하다는 사실이다.
공간 내의 기하학적 구성요소가 자리한 위치가 그 후 이미지 내의 그 투영도로부터 결정된다. 계산을 간소화하기 위하여, 이미지가 생성되는 카메라의 광축 상에 기하학적 구성요소가 위치한다고 가정된다. 실제로, 구는 일반적으로 타원으로 투영된다. 원형은 구가 광축 상에 위치할 때만 얻어진다. 그러나 그러한 근사치는 단순한 비율에 의해 나타나는 반경으로부터 구형의 위치를 결정하기에 충분하다.
도 10은 그 구형의 거리를 결정하기 위해 사용되는 원리를 도시한다. C는 광학적 중심, 즉 카메라의 위치에 해당하는 투영의 중심이고, R은 카메라로부터 거리 Z에 위치한 구의 물리적 반경이다. 투영에 의하여, 그 반경(R)은 계량적 초점거리를 표현하는 거리(fm)를 두고 화면 평면상에 위치한 가시적 직경(rm)으로 변환된다. 그 결과 탈레스(Thales)의 정리에 따라 하기와 같은 관계가 형성된다.
Figure 112009047771076-pct00001
한편 fp는 픽셀로 표현된 초점 거리이고 rp는 역시 픽셀로 표현된 구의 가시적인 반경일 때,
Figure 112011039503477-pct00002
비율은
Figure 112011039503477-pct00003
비율과 동일하다는 것을 주지해야 한다. 그것은 하기 관계로 유추된다.
Figure 112009047771076-pct00004
카메라가 원점인 좌표계 내의 좌표점(x, y, z)을 카메라에 의해 촬영된 이미지 내 좌표점(u, v)으로 투영하면 하기 방식으로 표현된다.
Figure 112009047771076-pct00005
여기서 (px, py)는 픽셀로 표현된 이미지의 광학 중심 위치이다. 그 관계식은 구형의 실제 좌표 Z 및 이미지 내의 좌표 u, v가 픽셀로 공지되었을 때, 그 구형의 실제 좌표 X, Y를 유추할 수 있게 한다.
Figure 112009047771076-pct00006
구형의 반경을 추론하는 수준은 결과적으로 X, Y 위치(산정된 원형의 2D 위치의 품질에 의해서도 영향받는)를 결정하는 데 대한 품질을 좌우하는 Z 위치의 품질에 막대한 영향을 끼친다는 점을 주지해야 한다. Z 값의 에러는 계약적 뿐만 아니라 시각적으로도 클 수 있는데, 이는 센서에 연계된 가상 객체는 일반적으로 구형보다 크고, 따라서 그 결과, 이미지 내에 삽입된 가상 객체의 가시적인 크기가 객체가 구형보다 (계량적으로) 얼마나 큰지에 비례하여 반경의 과소 평가에 의한 에러가 감소되기 때문이다.
그 기하학적 구성요소의 실제 위치를 찾는 데 있어서 중요한 문제는 원형의 추정된 위치(u, v) 및 추정된 반경의 안정성이 시간에 따라 부족하다는 데서 온다. 실제로 그 문제점은 센서에 연계된 가상 객체의 위치(X, Y, Z)의 상당한 진동에 의한 것으로 해석된다. 그러한 진동을 필터링하기 위하여 특정 필터링이 사용된다.
그 필터링은 로우패스 필터에 의한 예측이 실행 가능하고, 그 예측이 충분히 새로운 측정치와 근접한다면 그 필터링 된 값이 적용된다는 원칙에 기초한다. 예측이 측정치와 차이가 나는 경우, 에러가 비디오 스트림의 한 별도의 이미지에만 존재하는지 또는 시간에 따라 계속 부합되는지 확인하기 위하여 "대기" 단계가 발효된다. 그 예측과정에서 비롯된 필터링 된 값이 사용된다. 만일 제1 에러가 확정되면 비디오 스트림 내에 한 이미지가 지연되면서 측정된 실제 값이 적용된다. 로우패스 필터는 최종 n회의 측정(비정상이라 고려되는 측정은 제외하고)에 대하여 직교 선형 회귀를 사용하여 (직교 2차 회귀 방정식은 더 낮은 품질의 결과를 가져오므로) 실행된다. n값은 예측이 맞는 한 사전 설정된 임계치까지 증가하는 값과 함께 변동된다. 후속 이미지에 의해 확정된 변화에 이어서, 예측이 더 이상 맞지 않을 때, n 값은 최소 필터링을 위한 값인 4로 감소 된다. 그 기술은 필터링을 더욱 민감하게 하고, 반경이 꽤 일정하다고 간주 될수록 진동은 더욱 가시적이 된다는 원리에 기초한다. 반면에, 동작시에는 진동이 덜 인지되고 따라서 대기시간을 감소시킬 수 있다.
하기 방정식들은 직선 방정식 y = a x + b (x는 현 좌표축 값에, y는 3 변수 u, v 및 구형의 반경에 해당하고, 각각은 독립적으로 필터링 됨)를 이용하는 상세한 선형 직교 회귀 계산을 명시한다.
선형 직교 회귀와 좌표점 pi(xi, yi) 측정치 사이의 에러는 하기 관계식의 형태로 표현될 수 있다.
Figure 112009047771076-pct00007
따라서 하기 관계식으로 표현될 수 있는 총 2차 에러(E)를 최소화할 필요가 있다.
Figure 112009047771076-pct00008
Figure 112009047771076-pct00009
를 가하면,
그 결과
Figure 112009047771076-pct00010
이다.
E 함수는 2차 방정식이므로 하기 식이 만족될 때 최소값을 갖는다.
Figure 112009047771076-pct00011
그 결과
Figure 112009047771076-pct00012
det=
Figure 112009047771076-pct00013
이다.
카메라에서 얻어낸 비디오 스트림의 각각의 이미지에 대하여, 좌표값(u, v) 및 구형의 가시적인 반경 값을 예측하기 위하여 a 및 b 값이 추정되고, 그 값으로부터 실제 장면 내의 구형의 좌표값(x, y, x)을 추정해낸다. 그 추정된 값들은 참조로서 사용되고 상기 명시한 바와 같이 이미지 분석에 따라 결정된 값들과 비교된다. 비교 결과에 따라, 이미지 분석에 따라 결정된 값들이 예측된 값 대신에 사용되거나 사용되지 않게 된다.
실제 장면 내에서 가상 객체의 위치 및 방향이 결정되었을 때, 증강 현실 소프트웨어, 예를 들어 D'Fusion은 그 객체의 3차원 모델로부터 삽입되어야 하는 가상 객체를 결정한다. 그 가상 객체의 이미지는 그 후 실제 장면의 이미지 내에 삽입된다.
실제 장면 내에서 가상 객체의 위치와 방향을 결정하고, 가상 객체의 이미지를 결정하고 실제 장면의 한 이미지 내에 가상 객체의 이미지를 삽입하는 프로세스는 카메라에서 나온 비디오 스트림의 각 이미지에 대하여 반복된다.
증강 현실 소프트웨어는 또한 사용자가 게임 "속"에 자신이 있는 것을 볼 수 있게 하는 게임과 결합 될 수 있다.
자연히, 특정 필요성을 충족시키기 위하여 당업자는 상기 명시한 바를 변형하여 응용할 수 있을 것이다. 특히, 실제 장면 내에 존재하는 적어도 3개 자유도를 가진 센서를 사용하는 것은 필수적이지 않다. 유일한 필수 조건은, 센서에서 나온 데이터가 이미지 분석에서 나온 데이터에 보완적이어야 한다는 점이다. 따라서, 예를 들면 2개 자유도의 센서를 사용하여 이미지 분석에 의해 나머지 4개 자유도에 연관된 정보를 얻을 수 있다. 마찬가지로, 위치 및 방향 센서를 포함하는 핸들은 상기 명시한 것과 다른 형태를 취할 수 있다.

Claims (17)

  1. 실제 장면(120)을 구현하는 이미지 스트림의 적어도 하나의 이미지, 즉 제1 이미지 내에, 적어도 하나의 가상 객체의 적어도 하나의 3차원 구현으로부터 추출된 적어도 하나의 이미지, 즉 제2 이미지를 실시간으로 삽입하는 방법으로서,
    상기 이미지 스트림으로부터 적어도 하나의 상기 제1 이미지를 수신하는 단계;
    상기 실제 장면으로부터 나온 실제 객체의 위치 및 방향 데이터에 따라 상기 적어도 하나의 가상 객체의 상기 실제 장면 내에서의 위치 및 방향을 결정하는 단계 - 상기 위치 및 방향 데이터의 적어도 일부는 상기 실제 장면 내에 존재하는 적어도 하나의 센서(135)로부터 획득되고, 상기 위치 및 방향 데이터의 다른 일부는 상기 수신된 제1 이미지로부터 나옴 (605) - ;
    상기 적어도 하나의 가상 객체의 상기 위치 및 방향에 따라 상기 적어도 하나의 가상 객체의 상기 3차원 구현으로부터 상기 적어도 하나의 제2 이미지를 추출하는 단계; 및
    상기 적어도 하나의 가상 객체의 상기 위치에 따라 상기 적어도 하나의 수신된 제1 이미지 내에 상기 적어도 하나의 추출된 제2 이미지를 삽입하는 단계(610)
    를 포함하는 것을 특징으로 하는 방법.
  2. 제1항에 있어서, 상기 위치 및 방향 데이터의 상기 적어도 일부는 상기 실제 객체의 위치 데이터를 포함하고, 상기 위치 및 방향 데이터의 상기 다른 적어도 일부는 상기 실제 객체의 방향 데이터를 포함하는 것을 특징으로 하는 방법.
  3. 제1항 또는 제2항에 있어서, 상기 적어도 하나의 제1 이미지는 하나의 카메라로부터 나오고, 상기 적어도 하나의 센서는 상기 카메라에 대해서 이동식인 것을 특징으로 하는 방법.
  4. 제1항 또는 제2항에 있어서, 적어도 하나의 상기 방향 데이터는 상기 실제 장면 내에 존재하는 각도 센서(135', 135")로부터 수신되는 것을 특징으로 하는 방법.
  5. 제2항에 있어서, 적어도 하나의 상기 위치 및 방향 데이터는 상기 센서와 연관된 단일 기하학적 구성요소(615)로부터 수신된 상기 제1 이미지로부터 추출되는 것을 특징으로 하는 방법.
  6. 제5항에 있어서,
    상기 수신된 제1 이미지를 분할하는 단계(810),
    상기 분할된 제1 이미지 내에서 적어도 상기 단일 기하학적 구성요소의 윤곽을 추출하는 단계(815), 및
    상기 분할된 제1 이미지로부터 추출된 상기 윤곽에 따라 상기 단일 기하학적 구성요소의 위치를 결정하는 단계(820)
    를 더 포함하는 것을 특징으로 하는 방법.
  7. 제6항에 있어서, 상기 제1 이미지를 색조(hue), 채도(saturation), 휘도(luminance) 컴포넌트들을 포함하는 색 공간 내에서 변환하는 단계(805)를 더 포함하는 것을 특징으로 하는 방법.
  8. 제6항에 있어서, 상기 단일 기하하적 구성요소의 상기 실제 장면 내에서의 위치는 상기 제1 이미지 내의 상기 단일 기하학적 구성요소의 위치 및 상기 제1 이미지 내의 상기 단일 기하학적 구성요소의 가시적 크기에 의해서 결정되는 것을 특징으로 하는 방법.
  9. 제5항에 있어서, 상기 단일 기하학적 구성요소는 구(sphere)인 것을 특징으로 하는 방법.
  10. 제6항에 있어서, 상기 가상 객체의 상기 위치를 추정하는 단계(825)를 더 포함하는 것을 특징으로 하는 방법.
  11. 제8항에 있어서, 상기 가상 객체의 상기 위치를 추정하는 상기 단계는 로우 패스(low pass) 필터를 사용하는 것을 특징으로 하는 방법.
  12. 제11항에 있어서, 상기 수신된 제1 이미지로부터 나온 상기 위치 및 방향 데이터의 상기 다른 일부는, 상기 수신된 제1 이미지로부터 나온 상기 위치 및 방향 데이터의 상기 다른 일부를 상기 실제 객체의 예측된 위치와 비교하는 것에 응답하여 선택되는 방법.
  13. 제1항 또는 제2항에 따른 방법의 각각의 단계를 실행하기 위한 컴퓨터 프로그램의 인스트럭션 코드를 포함하는 컴퓨터 또는 마이크로 프로세서에 의해 부분적으로 또는 전체적으로 판독 가능한 정보 저장 장치.
  14. 적어도 하나의 비디오 카메라 및 적어도 하나의 표시 화면에 연결될 수 있는 증강 현실을 위한 장치로서, 제1항 또는 제2항에 따른 방법의 각각의 단계를 실행하도록 구성된 증강 현실 장치.
  15. 실제 장면(120)을 구현하는 이미지 스트림의 적어도 하나의 이미지, 즉 제1 이미지 내에, 적어도 하나의 가상 객체의 적어도 하나의 3차원 구현으로부터 추출된 적어도 하나의 이미지, 즉 제2 이미지를 실시간으로 삽입하기 위한 장치로서,
    상기 이미지 스트림으로부터 상기 적어도 하나의 제1 이미지를 수신하고 저장하기 위한 수단(210);
    상기 적어도 하나의 가상 객체의 상기 3차원 구현을 저장하기 위한 수단;
    상기 실제 장면 내에서의 상기 적어도 하나의 가상 객체의 위치 및 방향을 상기 실제 장면에서 나온 위치 및 방향 데이터로부터 결정할 수 있게 하는 정보를 수신하기 위한 수단(210, 214) - 상기 데이터의 적어도 일부는 상기 실제 장면 내에 존재하는 적어도 하나의 센서(135', 135")로부터 수신됨 -;
    상기 적어도 하나의 가상 객체의 상기 위치 및 방향에 따라 상기 적어도 하나의 가상 객체의 상기 3차원 구현으로부터 상기 적어도 하나의 제2 이미지를 추출하기 위한 수단; 및,
    상기 적어도 하나의 가상 객체의 상기 위치에 따라 상기 적어도 하나의 수신된 제1 이미지 내에 상기 적어도 하나의 추출된 제2 이미지를 삽입하기 위한 수단(610)
    을 포함하는 것을 특징으로 하는 장치.
  16. 제15항에 있어서, 상기 수신된 제1 이미지로부터 적어도 하나의 상기 위치 및 방향 데이터를 추출하기 위한 수단(605)을 더 포함하는 것을 특징으로 하는 장치.
  17. 적어도 하나의 가시적 단일 기하학적 구성요소(615), 및 제15항 또는 제16항에 따른 장치에 위치 및 방향 정보를 전달하도록 구성된 하나의 센서(135")를 포함하는 장치.
KR1020097016349A 2007-01-05 2008-01-03 이미지로 구현되는 실제장면으로부터의 데이터를 이용하여 이미지 스트림에 가상객체를 실시간 삽입하기 위한 방법 및 장치 KR101320134B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
FR0752547 2007-01-05
FR0752547A FR2911211B1 (fr) 2007-01-05 2007-01-05 Procede et dispositifs pour inserer en temps reel des objets virtuels dans un flux d'images a partir de donnees issues de la scene reelle representee par ces images
PCT/FR2008/000011 WO2008099080A1 (fr) 2007-01-05 2008-01-03 Procède et dispositifs pour insérer en temps réel des objets virtuels dans un flux d'images a partir de données issues de la scène réelle représentée par ces images

Publications (2)

Publication Number Publication Date
KR20090100436A KR20090100436A (ko) 2009-09-23
KR101320134B1 true KR101320134B1 (ko) 2013-10-23

Family

ID=38161918

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020097016349A KR101320134B1 (ko) 2007-01-05 2008-01-03 이미지로 구현되는 실제장면으로부터의 데이터를 이용하여 이미지 스트림에 가상객체를 실시간 삽입하기 위한 방법 및 장치

Country Status (6)

Country Link
US (1) US20100060632A1 (ko)
EP (2) EP2104925B1 (ko)
JP (2) JP5204126B2 (ko)
KR (1) KR101320134B1 (ko)
FR (1) FR2911211B1 (ko)
WO (1) WO2008099080A1 (ko)

Families Citing this family (38)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8817045B2 (en) * 2000-11-06 2014-08-26 Nant Holdings Ip, Llc Interactivity via mobile image recognition
JP5038307B2 (ja) * 2005-08-09 2012-10-03 トタル イメルシオン 実在環境内においてデジタルモデルを視覚化する方法、装置、及びコンピュータプログラム
JP4890552B2 (ja) 2005-08-29 2012-03-07 エブリックス・テクノロジーズ・インコーポレイテッド モバイル画像認識を介した双方向性
US8339418B1 (en) * 2007-06-25 2012-12-25 Pacific Arts Corporation Embedding a real time video into a virtual environment
WO2010029553A1 (en) 2008-09-11 2010-03-18 Netanel Hagbi Method and system for compositing an augmented reality scene
US20110279475A1 (en) * 2008-12-24 2011-11-17 Sony Computer Entertainment Inc. Image processing device and image processing method
FR2947348B1 (fr) * 2009-06-25 2011-08-19 Immersion Dispositif pour manipuler et visualiser un objet virtuel
KR101642000B1 (ko) * 2009-11-20 2016-07-22 엘지전자 주식회사 이동 단말기, dtv 및 dtv의 제어 방법
KR20150008840A (ko) * 2010-02-24 2015-01-23 아이피플렉 홀딩스 코포레이션 시각 장애인들을 지원하는 증강 현실 파노라마
JP5574852B2 (ja) * 2010-06-30 2014-08-20 キヤノン株式会社 情報処理装置、情報処理方法、システム及びプログラム
US9514654B2 (en) 2010-07-13 2016-12-06 Alive Studios, Llc Method and system for presenting interactive, three-dimensional learning tools
KR101705122B1 (ko) * 2010-07-19 2017-02-23 주식회사 비즈모델라인 증강현실을 이용한 오디오객체 운영 방법
US20120182313A1 (en) * 2011-01-13 2012-07-19 Pantech Co., Ltd. Apparatus and method for providing augmented reality in window form
USD648390S1 (en) 2011-01-31 2011-11-08 Logical Choice Technologies, Inc. Educational card
US8570320B2 (en) * 2011-01-31 2013-10-29 Microsoft Corporation Using a three-dimensional environment model in gameplay
USD675648S1 (en) 2011-01-31 2013-02-05 Logical Choice Technologies, Inc. Display screen with animated avatar
USD654538S1 (en) 2011-01-31 2012-02-21 Logical Choice Technologies, Inc. Educational card
USD648796S1 (en) 2011-01-31 2011-11-15 Logical Choice Technologies, Inc. Educational card
USD648391S1 (en) 2011-01-31 2011-11-08 Logical Choice Technologies, Inc. Educational card
USD647968S1 (en) 2011-01-31 2011-11-01 Logical Choice Technologies, Inc. Educational card
US8488011B2 (en) 2011-02-08 2013-07-16 Longsand Limited System to augment a visual data stream based on a combination of geographical and visual information
WO2012107892A2 (en) 2011-02-09 2012-08-16 Primesense Ltd. Gaze detection in a 3d mapping environment
US8942917B2 (en) 2011-02-14 2015-01-27 Microsoft Corporation Change invariant scene recognition by an agent
US8493353B2 (en) 2011-04-13 2013-07-23 Longsand Limited Methods and systems for generating and joining shared experience
US9262950B2 (en) 2011-04-20 2016-02-16 Microsoft Technology Licensing, Llc Augmented reality extrapolation techniques
CN104246682B (zh) * 2012-03-26 2017-08-25 苹果公司 增强的虚拟触摸板和触摸屏
US9064326B1 (en) 2012-05-10 2015-06-23 Longsand Limited Local cache of augmented reality content in a mobile computing device
US9430876B1 (en) 2012-05-10 2016-08-30 Aurasma Limited Intelligent method of determining trigger items in augmented reality environments
US9466121B2 (en) 2012-09-11 2016-10-11 Qualcomm Incorporated Devices and methods for augmented reality applications
US9595083B1 (en) * 2013-04-16 2017-03-14 Lockheed Martin Corporation Method and apparatus for image producing with predictions of future positions
US9916002B2 (en) 2014-11-16 2018-03-13 Eonite Perception Inc. Social applications for augmented reality technologies
CN106663411A (zh) 2014-11-16 2017-05-10 易欧耐特感知公司 用于增强现实准备、处理和应用的系统和方法
US10043319B2 (en) 2014-11-16 2018-08-07 Eonite Perception Inc. Optimizing head mounted displays for augmented reality
CN107533376A (zh) * 2015-05-14 2018-01-02 奇跃公司 耦接到增强现实系统的隐私敏感的消费者照相机
US11017712B2 (en) 2016-08-12 2021-05-25 Intel Corporation Optimized display image rendering
US9928660B1 (en) 2016-09-12 2018-03-27 Intel Corporation Hybrid rendering for a wearable display attached to a tethered computer
EP3599544A1 (en) * 2018-07-25 2020-01-29 Nokia Technologies Oy An apparatus, method, computer program for enabling access to mediated reality content by a remote user
CN112750204B (zh) * 2019-10-30 2022-04-05 广东致创数字科技有限公司 数据内容实时更新系统

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040179107A1 (en) 2003-03-10 2004-09-16 Charles Benton Video augmented orientation sensor

Family Cites Families (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6351659B1 (en) * 1995-09-28 2002-02-26 Brainlab Med. Computersysteme Gmbh Neuro-navigation system
JP2000102036A (ja) * 1998-09-22 2000-04-07 Mr System Kenkyusho:Kk 複合現実感提示システム、複合現実感提示方法、マン・マシーンインタフェース装置、およびマン・マシーンインタフェース方法
JP4974319B2 (ja) * 2001-09-10 2012-07-11 株式会社バンダイナムコゲームス 画像生成システム、プログラム及び情報記憶媒体
JP4032776B2 (ja) * 2002-03-04 2008-01-16 ソニー株式会社 複合現実感表示装置及び方法、記憶媒体、並びにコンピュータ・プログラム
JP2003264740A (ja) * 2002-03-08 2003-09-19 Cad Center:Kk 展望鏡
JP2003281504A (ja) * 2002-03-22 2003-10-03 Canon Inc 撮像部位置姿勢推定装置及びその制御方法並びに複合現実感提示システム
JP2003346190A (ja) * 2002-05-29 2003-12-05 Canon Inc 画像処理装置
FR2842977A1 (fr) 2002-07-24 2004-01-30 Total Immersion Procede et systeme permettant a un utilisateur de melanger en temps reel des images de synthese avec des images video
JP2004212163A (ja) * 2002-12-27 2004-07-29 Kazuyoshi Tsukamoto バーチャルスポーツシステム
JP2004287699A (ja) * 2003-03-20 2004-10-14 Tama Tlo Kk 画像合成装置及びその合成方法
JP2005251118A (ja) * 2004-03-08 2005-09-15 Canon Inc 画像処理方法、画像処理装置
JP4380376B2 (ja) * 2004-03-17 2009-12-09 日本電信電話株式会社 画像処理装置、画像処理方法、及び画像処理プログラム
JP4137078B2 (ja) * 2005-04-01 2008-08-20 キヤノン株式会社 複合現実感情報生成装置および方法
KR20080024476A (ko) * 2005-06-14 2008-03-18 고쿠리쓰다이가쿠호진 덴키쓰신다이가쿠 위치 검출 장치, 위치 검출 방법, 위치 검출 프로그램 및복합 현실 제공 시스템
JP5038307B2 (ja) * 2005-08-09 2012-10-03 トタル イメルシオン 実在環境内においてデジタルモデルを視覚化する方法、装置、及びコンピュータプログラム
FR2889761A1 (fr) * 2005-08-09 2007-02-16 Total Immersion Sa Systeme permettant a un utilisateur de localiser une camera afin de pouvoir inserer, rapidement de maniere ajustee, des images d'elements virtuels dans des images video d'elements reels captees par la camera
KR101465668B1 (ko) * 2008-06-24 2014-11-26 삼성전자주식회사 단말 및 그의 블로깅 방법
US20110107216A1 (en) * 2009-11-03 2011-05-05 Qualcomm Incorporated Gesture-based user interface

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040179107A1 (en) 2003-03-10 2004-09-16 Charles Benton Video augmented orientation sensor

Also Published As

Publication number Publication date
WO2008099080A1 (fr) 2008-08-21
FR2911211A1 (fr) 2008-07-11
EP2104925B1 (fr) 2013-04-24
KR20090100436A (ko) 2009-09-23
JP2010515189A (ja) 2010-05-06
JP2013061978A (ja) 2013-04-04
EP2104925A1 (fr) 2009-09-30
FR2911211B1 (fr) 2009-06-12
US20100060632A1 (en) 2010-03-11
JP5204126B2 (ja) 2013-06-05
EP2237231A1 (fr) 2010-10-06
EP2237231B1 (fr) 2013-05-01

Similar Documents

Publication Publication Date Title
KR101320134B1 (ko) 이미지로 구현되는 실제장면으로부터의 데이터를 이용하여 이미지 스트림에 가상객체를 실시간 삽입하기 위한 방법 및 장치
US8241125B2 (en) Apparatus and method of interaction with a data processor
US10068547B2 (en) Augmented reality surface painting
JP4381371B2 (ja) 画像処理方法及び記録媒体
EP2697697B1 (en) Object tracking with projected reference patterns
US20170068326A1 (en) Imaging surround system for touch-free display control
JP7326328B2 (ja) 光学式位置追跡デバイスの電力管理
US20140037135A1 (en) Context-driven adjustment of camera parameters
US20100201808A1 (en) Camera based motion sensing system
JP2009519105A (ja) コンピュータプログラムとのインタフェース時に方向検出を可能にするための方法およびシステム
JP5389162B2 (ja) ゲーム装置、ゲーム制御方法、及びゲーム制御プログラム
JP2010526295A (ja) ビデオカメラとtvモニタを使用した3次元オブジェクトのスキャン
JP6601489B2 (ja) 撮像システム、撮像装置、撮像方法、及び撮像プログラム
JP2024029047A (ja) ディスプレイ検出装置、そのための方法、およびコンピュータ読み取り可能媒体
JP6788129B2 (ja) ズーム装置及び関連する方法
JP6680294B2 (ja) 情報処理装置、情報処理方法、プログラム及び画像表示システム
WO2022195157A1 (en) Detection of test object for virtual superimposition
TW201301204A (zh) 追蹤頭部即時運動之方法

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20160929

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20170929

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20180928

Year of fee payment: 6