You are on page 1of 27

등록특허 10-1565362

(19) 대한민국특허청(KR) (45) 공고일자 2015년11월03일


(11) 등록번호 10-1565362
(12) 등록특허공보(B1) (24) 등록일자 2015년10월28일
(51) 국제특허분류(Int. Cl.) (73) 특허권자
G01C 25/00 (2006.01) G01C 19/56 (2006.01) 퀄컴 인코포레이티드
G06F 3/0346 (2013.01) G06T 19/00 (2011.01) 미국 92121-1714 캘리포니아주 샌 디에고 모어하
G06T 7/00 (2006.01) G06T 7/20 (2006.01) 우스 드라이브 5775
(52) CPC특허분류 (72) 발명자
G01C 25/00 (2013.01) 라마찬드란, 마헤쉬
G01C 19/56 (2013.01) 미국 92121 캘리포니아주 샌 디에고 모어하우스
(21) 출원번호 10-2015-7011851 드라이브 5775
(22) 출원일자(국제) 2013년09월13일 브룬너, 크리스토퍼
심사청구일자 2015년06월15일 미국 92121 캘리포니아주 샌 디에고 모어하우스
(85) 번역문제출일자 2015년05월06일 드라이브 5775
(65) 공개번호 10-2015-0068440 (뒷면에 계속)
(43) 공개일자 2015년06월19일 (74) 대리인
(86) 국제출원번호 PCT/US2013/059797 특허법인 남앤드남
(87) 국제공개번호 WO 2014/058565
국제공개일자 2014년04월17일
(30) 우선권주장
13/651,055 2012년10월12일 미국(US)
(56) 선행기술조사문헌
US20120176492 A1

전체 청구항 수 : 총 32 항 심사관 : 김형근


(54) 발명의 명칭 자이로스코프 컨디셔닝 및 자이로-카메라 정렬

(57) 요 약
카메라 포즈 및 자이로스코프 회전을 이용하여, 증강 현실 애플리케이션(AR 앱)과 같은 애플리케이션을 위한 파
라미터들을 생성하기 위한 장치 및 방법이 개시된다. 파라미터들은 (예를 들어, QR 인수분해 또는 칼만 필터를
이용한 최소-자승 추정치) 이미지들로부터의 포즈와 자이로스코프로부터의 회전에 기초하여 추정된다. 파라미터
들은 회전, 스케일 및/또는 비-직교성 파라미터들, 그리고 선택적으로 자이로스코프 바이어스 에러들을
나타낸다. 이외에도, 스케일 및 비-직교성 파라미터들은 스케일과 비-직교성을 보상하기 위해 미가공 자이로스코
프 측정치들을 컨디셔닝하는 데에 사용될 수 있다.
대 표 도 - 도2

-1-
등록특허 10-1565362

(52) CPC특허분류 디아즈 스핀돌라, 세라핀


G06F 3/0346 (2013.01) 미국 92121 캘리포니아주 샌 디에고 모어하우스 드
G06T 19/006 (2013.01) 라이브 5775
G06T 7/0022 (2013.01)
G06T 7/20 (2013.01)
(72) 발명자
차리, 무랄리 알.
미국 92121 캘리포니아주 샌 디에고 모어하우스 드
라이브 5775

-2-
등록특허 10-1565362

명 세 서

청구범위
청구항 1

모바일 디바이스의 애플리케이션을 위한 파라미터들을 생성하기 위한 상기 모바일 디바이스에서의 방법으로서,

카메라로부터 이미지들의 시퀀스를 수신하는 단계;

포즈 각 정보(pose angular information)를 생성하기 위해서 컴퓨터 비전 알고리즘을 상기 이미지들의 시퀀스에


적용하는 단계;

자이로스코프 측정치들의 시퀀스로부터 자이로스코프 정보를 추정하는 단계; 및

(1) 회전 정보, (2) 스케일 정보, 및 (3) 비-직교성 정보 중 적어도 2개를 유도하기 위해서, 상기 포즈 각 정보
및 상기 자이로스코프 정보를 프로세싱하는 단계를 포함하고,

상기 포즈 각 정보 및 상기 자이로스코프 정보를 프로세싱하는 단계는,

상기 이미지들의 시퀀스로부터 병진 매트릭스(translation matrix)를 결정하는 단계; 및

상기 애플리케이션과 함께 사용하기 위해서, (1) 상기 회전 정보, (2) 상기 스케일 정보, 및 (3) 상기 비-직교
성 정보 중 적어도 2개를 계산하기 위해 상기 포즈 각 정보, 상기 병진 매트릭스 및 상기 자이로스코프 정보를
칼만(Kalman) 필터에 적용하는 단계를 포함하는, 모바일 디바이스의 애플리케이션을 위한 파라미터들을 생성하
기 위한 상기 모바일 디바이스에서의 방법.

청구항 2

제 1 항에 있어서,

상기 자이로스코프 정보 및 상기 포즈 각 정보가 동기화되는, 모바일 디바이스의 애플리케이션을 위한 파라미터


들을 생성하기 위한 상기 모바일 디바이스에서의 방법.

청구항 3

제 1 항에 있어서,

상기 스케일 정보 또는 상기 비-직교성 정보 중 적어도 하나를 이용하여 미가공(raw) 자이로스코프 측정치들의


시퀀스를 컨디셔닝함으로써 상기 자이로스코프 측정치들의 시퀀스를 제공하는 단계를 더 포함하는, 모바일 디바
이스의 애플리케이션을 위한 파라미터들을 생성하기 위한 상기 모바일 디바이스에서의 방법.

청구항 4

제 1 항에 있어서,

상기 스케일 정보 및 상기 비-직교성 정보 중 적어도 하나를 상기 애플리케이션에 적용하는 단계를 더


포함하는, 모바일 디바이스의 애플리케이션을 위한 파라미터들을 생성하기 위한 상기 모바일 디바이스에서의 방
법.

청구항 5

제 1 항에 있어서,

상기 포즈 각 정보 및 상기 자이로스코프 정보를 프로세싱하는 단계는,

상기 포즈 각 정보 및 상기 자이로스코프 정보로부터 복합 매트릭스(composite matrix)를 컴퓨팅하는 단계; 및

상기 복합 매트릭스를 회전 매트릭스와 스케일 및 비-직교성 매트릭스로 분해하는 단계를 포함하고,

상기 스케일 정보 및 상기 비-직교성 정보는 상기 스케일 및 비-직교성 매트릭스를 포함하는, 모바일 디바이스

-3-
등록특허 10-1565362

의 애플리케이션을 위한 파라미터들을 생성하기 위한 상기 모바일 디바이스에서의 방법.

청구항 6

제 5 항에 있어서,

상기 복합 매트릭스를 컴퓨팅하는 단계는 최소-자승 추정치를 상기 포즈 각 정보 및 상기 자이로스코프 정보에


적용하는 단계를 포함하는, 모바일 디바이스의 애플리케이션을 위한 파라미터들을 생성하기 위한 상기 모바일
디바이스에서의 방법.

청구항 7

제 5 항에 있어서,

상기 복합 매트릭스를 분해하는 단계는 QR 인수분해를 상기 복합 매트릭스에 적용하는 단계를 포함하는, 모바일


디바이스의 애플리케이션을 위한 파라미터들을 생성하기 위한 상기 모바일 디바이스에서의 방법.

청구항 8

제 1 항에 있어서,

상기 포즈 각 정보는 포즈 각 벡터들의 시퀀스를 포함하는, 모바일 디바이스의 애플리케이션을 위한 파라미터들


을 생성하기 위한 상기 모바일 디바이스에서의 방법.

청구항 9

제 1 항에 있어서,

상기 자이로스코프 측정치들의 시퀀스는 자이로스코프 측정치들의 버퍼링된 시퀀스를 포함하고, 그리고

상기 자이로스코프 측정치들의 시퀀스로부터 상기 자이로스코프 정보를 추정하는 단계는:

자이로스코프로부터 미가공 자이로스코프 측정치들의 시퀀스를 획득하는 단계; 및

상기 자이로스코프 측정치들의 버퍼링된 시퀀스를 획득하기 위해서 상기 미가공 자이로스코프 측정치들의 시퀀


스를 버퍼링하는 단계를 포함하는, 모바일 디바이스의 애플리케이션을 위한 파라미터들을 생성하기 위한 상기
모바일 디바이스에서의 방법.

청구항 10

제 9 항에 있어서,

상기 자이로스코프 정보는 자이로스코프 벡터들의 시퀀스를 포함하는, 모바일 디바이스의 애플리케이션을 위한


파라미터들을 생성하기 위한 상기 모바일 디바이스에서의 방법.

청구항 11

제 1 항에 있어서,

상기 애플리케이션은 증강 현실 애플리케이션을 포함하는, 모바일 디바이스의 애플리케이션을 위한 파라미터들


을 생성하기 위한 상기 모바일 디바이스에서의 방법.

청구항 12

제 1 항에 있어서,

상기 포즈 각 정보 및 상기 자이로스코프 정보를 프로세싱하는 단계는 추정된 자이로스코프 바이어스 에러를 유


도하는 단계를 더 포함하는, 모바일 디바이스의 애플리케이션을 위한 파라미터들을 생성하기 위한 상기 모바일
디바이스에서의 방법.

청구항 13

모바일 디바이스의 애플리케이션을 위한 파라미터들을 생성하기 위한 모바일 디바이스로서,

-4-
등록특허 10-1565362

이미지들의 시퀀스를 제공하도록 구성된 카메라;

자이로스코프 측정치들의 시퀀스를 생성하도록 구성된 자이로스코프; 및

상기 카메라 및 상기 자이로스코프에 결합된 프로세서를 포함하고,

상기 프로세서는,

상기 카메라로부터 상기 이미지들의 시퀀스를 수신하도록 결합된 컴퓨터 비전 모듈 ― 상기 컴퓨터 비


전 모듈은 상기 이미지들의 시퀀스에 기초하여 포즈 각 정보를 생성함 ―;

상기 자이로스코프 측정치들의 시퀀스로부터 자이로스코프 정보를 생성하는 각 속도 모듈; 및

상기 컴퓨터 비전 모듈로부터 상기 포즈 각 정보를 수신하도록 결합되고 그리고 상기 각 속도 모듈로부


터 상기 자이로스코프 정보를 수신하도록 결합되는 파라미터 추정 모듈 ― 상기 파라미터 추정 모듈은 회전 정
보, 스케일 정보, 및 비-직교성 정보 중 적어도 2개를 유도함 ― 을 포함하고,

상기 회전 정보, 상기 스케일 정보, 및 상기 비-직교성 정보 중 적어도 2개를 유도하는 것은,

상기 이미지들의 시퀀스로부터 병진 매트릭스를 결정하는 것; 및

상기 모바일 디바이스의 상기 애플리케이션과 함께 사용하기 위해서, 상기 회전 정보, 상기 스케일 정보, 및 상


기 비-직교성 정보 중 적어도 2개를 계산하기 위해 상기 포즈 각 정보, 상기 병진 매트릭스 및 상기 자이로스코
프 정보를 칼만 필터에 적용하는 것을 포함하는, 모바일 디바이스의 애플리케이션을 위한 파라미터들을 생성하
기 위한 모바일 디바이스.

청구항 14

제 13 항에 있어서,

상기 스케일 정보 및 상기 비-직교성 정보를 수신하기 위해 상기 파라미터 추정 모듈에 결합된 자이로스코프 버


퍼 모듈을 더 포함하고,

상기 자이로스코프 버퍼 모듈은 상기 스케일 정보 및 상기 비-직교성 정보를 이용하여 미가공 자이로스코프 측


정치들의 시퀀스를 컨디셔닝하도록 구성되는, 모바일 디바이스의 애플리케이션을 위한 파라미터들을 생성하기
위한 모바일 디바이스.

청구항 15

제 13 항에 있어서,

상기 자이로스코프는 상기 스케일 정보 및 상기 비-직교성 정보를 수신하기 위해 상기 파라미터 추정 모듈에 결


합되고,

상기 자이로스코프는 추가로, 상기 스케일 정보 및 상기 비-직교성 정보를 이용하여 미가공 자이로스코프 측정


치들의 시퀀스를 캘리브레이팅(calibrate)하도록 구성되는, 모바일 디바이스의 애플리케이션을 위한 파라미터들
을 생성하기 위한 모바일 디바이스.

청구항 16

제 13 항에 있어서,

상기 파라미터 추정 모듈은 추가로 회전 정보를 유도하는, 모바일 디바이스의 애플리케이션을 위한 파라미터들


을 생성하기 위한 모바일 디바이스.

청구항 17

제 13 항에 있어서,

상기 파라미터 추정 모듈은,

상기 포즈 각 정보 및 상기 자이로스코프 정보로부터 복합 매트릭스를 계산하고; 그리고

상기 복합 매트릭스를 회전 매트릭스와 스케일 및 비-직교성 매트릭스로 분해함으로써 ― 상기 스케일 정보와

-5-
등록특허 10-1565362

상기 비-직교성 정보는 상기 스케일 및 비-직교성 매트릭스를 포함함 ―,

상기 스케일 정보 및 상기 비-직교성 정보를 유도하는, 모바일 디바이스의 애플리케이션을 위한 파라미터들을


생성하기 위한 모바일 디바이스.

청구항 18

제 17 항에 있어서,

상기 파라미터 추정 모듈은 최소-자승 추정치를 상기 포즈 각 정보 및 상기 자이로스코프 정보에 적용함으로써


상기 복합 매트릭스를 계산하는, 모바일 디바이스의 애플리케이션을 위한 파라미터들을 생성하기 위한 모바일
디바이스.

청구항 19

제 13 항에 있어서,

상기 파라미터 추정 모듈에 의해 유도된 상기 스케일 정보 및 상기 비-직교성 정보는 증강 현실(AR) 애플리케이


션으로 입력되는, 모바일 디바이스의 애플리케이션을 위한 파라미터들을 생성하기 위한 모바일 디바이스.

청구항 20

모바일 디바이스의 애플리케이션을 위한 파라미터들을 생성하기 위한 모바일 디바이스로서,

카메라로부터 이미지들의 시퀀스를 수신하기 위한 수단;

포즈 각 정보를 생성하기 위해서 컴퓨터 비전 알고리즘을 상기 이미지들의 시퀀스에 적용하기 위한 수단;

자이로스코프 측정치들의 시퀀스로부터 자이로스코프 정보를 추정하기 위한 수단; 및

회전 정보, 스케일 정보, 및 비-직교성 정보 중 적어도 2개를 유도하기 위해서, 상기 포즈 각 정보 및 상기 자


이로스코프 정보를 프로세싱하기 위한 수단을 포함하고,

상기 포즈 각 정보 및 상기 자이로스코프 정보를 프로세싱하기 위한 수단은,

상기 이미지들의 시퀀스로부터 병진 매트릭스를 결정하기 위한 수단; 및

상기 모바일 디바이스의 상기 애플리케이션과 함께 사용하기 위해서, 상기 회전 정보, 상기 스케일 정보, 및 상


기 비-직교성 정보 중 적어도 2개를 계산하기 위해 상기 포즈 각 정보, 상기 병진 매트릭스 및 상기 자이로스코
프 정보를 칼만 필터에 적용하기 위한 수단을 포함하는, 모바일 디바이스의 애플리케이션을 위한 파라미터들을
생성하기 위한 모바일 디바이스.

청구항 21

제 20 항에 있어서,

상기 스케일 정보 및 상기 비-직교성 정보는 스케일 및 비-직교성 매트릭스를 포함하는, 모바일 디바이스의 애


플리케이션을 위한 파라미터들을 생성하기 위한 모바일 디바이스.

청구항 22

제 20 항에 있어서,

상기 회전 정보, 상기 스케일 정보 및 상기 비-직교성 정보 중 적어도 2개를 유도하기 위해서 상기 포즈 각 정


보 및 상기 자이로스코프 정보를 프로세싱하기 위한 수단은,

스케일 및 비-직교성 매트릭스를 유도하기 위해서 포즈 각 벡터들의 시퀀스와 자이로스코프 벡터들의 시퀀스를
프로세싱하기 위한 수단을 포함하고,

상기 포즈 각 정보는 상기 포즈 각 벡터들의 시퀀스를 포함하고;

상기 자이로스코프 정보는 상기 자이로스코프 벡터들의 시퀀스를 포함하고; 그리고

상기 스케일 정보 및 상기 비-직교성 정보는 상기 스케일 및 비-직교성 매트릭스를 포함하는, 모바일 디바이스

-6-
등록특허 10-1565362

의 애플리케이션을 위한 파라미터들을 생성하기 위한 모바일 디바이스.

청구항 23

제 20 항에 있어서,

상기 스케일 정보 및 상기 비-직교성 정보를 수신하기 위한 수단; 및

상기 스케일 정보 및 상기 비-직교성 정보를 이용하여 미가공 자이로스코프 측정치들의 시퀀스를 컨디셔닝하기


위한 수단을 더 포함하는, 모바일 디바이스의 애플리케이션을 위한 파라미터들을 생성하기 위한 모바일 디바이
스.

청구항 24

제 20 항에 있어서,

상기 스케일 정보 및 상기 비-직교성 정보를 수신하기 위한 수단; 및

상기 스케일 정보 및 상기 비-직교성 정보를 이용하여 미가공 자이로스코프 측정치들의 시퀀스를 캘리브레이팅


하기 위한 수단을 더 포함하는, 모바일 디바이스의 애플리케이션을 위한 파라미터들을 생성하기 위한 모바일 디
바이스.

청구항 25

제 20 항에 있어서,

회전 정보를 유도하기 위한 수단을 더 포함하는, 모바일 디바이스의 애플리케이션을 위한 파라미터들을 생성하


기 위한 모바일 디바이스.

청구항 26

제 20 항에 있어서,

상기 스케일 정보 및 상기 비-직교성 정보를 유도하기 위해서 상기 포즈 각 정보 및 상기 자이로스코프 정보를


프로세싱하기 위한 수단은,

상기 포즈 각 정보 및 상기 자이로스코프 정보로부터 복합 매트릭스를 계산하기 위한 수단; 및

상기 복합 매트릭스를 회전 매트릭스와 스케일 및 비-직교성 매트릭스로 분해하기 위한 수단을 더 포함하고;

상기 스케일 정보 및 상기 비-직교성 정보는 상기 스케일 및 비-직교성 매트릭스를 포함하는, 모바일 디바이스


의 애플리케이션을 위한 파라미터들을 생성하기 위한 모바일 디바이스.

청구항 27

제 20 항에 있어서,

상기 스케일 정보 및 상기 비-직교성 정보를 증강 현실(AR) 애플리케이션으로 포워딩하기 위한 수단을 더 포함


하는, 모바일 디바이스의 애플리케이션을 위한 파라미터들을 생성하기 위한 모바일 디바이스.

청구항 28

모바일 디바이스의 애플리케이션을 위한 파라미터들을 생성하기 위한 모바일 디바이스로서,

프로세서 및 메모리를 포함하고,

상기 메모리는,

카메라로부터 이미지들의 시퀀스를 수신하고;

포즈 각 정보를 생성하기 위해서 컴퓨터 비전 알고리즘을 상기 이미지들의 시퀀스에 적용하고;

자이로스코프 측정치들의 시퀀스로부터 자이로스코프 정보를 추정하고; 그리고

상기 모바일 디바이스의 상기 애플리케이션과 함께 사용하기 위해서, 회전 정보, 스케일 정보, 및 비-

-7-
등록특허 10-1565362

직교성 정보를 유도하기 위해 상기 포즈 각 정보 및 상기 자이로스코프 정보를 프로세싱하기 위한

명령들을 포함하는,

모바일 디바이스의 애플리케이션을 위한 파라미터들을 생성하기 위한 모바일 디바이스.

청구항 29

제 28 항에 있어서,

상기 메모리는 상기 스케일 정보 및 상기 비-직교성 정보를 상기 애플리케이션에 적용하기 위한 명령들을 더 포


함하고,

상기 애플리케이션은 증강 현실 애플리케이션을 포함하는, 모바일 디바이스의 애플리케이션을 위한 파라미터들


을 생성하기 위한 모바일 디바이스.

청구항 30

제 28 항에 있어서,

상기 회전 정보, 상기 스케일 정보, 및 상기 비-직교성 정보를 유도하기 위해 상기 포즈 각 정보 및 상기 자이


로스코프 정보를 프로세싱하기 위한 명령들은,

상기 이미지들의 시퀀스로부터 병진 매트릭스를 결정하고; 그리고

상기 회전 정보, 상기 스케일 정보, 및 상기 비-직교성 정보를 계산하기 위해 상기 포즈 각 정보, 상기 병진 매


트릭스 및 상기 자이로스코프 정보를 칼만 필터에 적용하기 위한

명령들을 포함하는,

모바일 디바이스의 애플리케이션을 위한 파라미터들을 생성하기 위한 모바일 디바이스.

청구항 31

모바일 디바이스의 애플리케이션을 위한 파라미터들을 생성하기 위한 프로그램 코드가 저장되어 있는 컴퓨터 판


독가능 저장 매체로서,

상기 프로그램 코드는,

카메라로부터 이미지들의 시퀀스를 수신하고;

포즈 각 정보를 생성하기 위해서 컴퓨터 비전 알고리즘을 상기 이미지들의 시퀀스에 적용하고;

자이로스코프 측정치들의 시퀀스로부터 자이로스코프 정보를 추정하고; 그리고

회전 정보, 스케일 정보 및 비-직교성 정보 중 적어도 2개를 유도하기 위해서 상기 포즈 각 정보 및 상


기 자이로스코프 정보를 프로세싱하기 위한

프로그램 코드를 포함하고,

상기 포즈 각 정보 및 상기 자이로스코프 정보를 프로세싱하기 위한 프로그램 코드는,

상기 이미지들의 시퀀스로부터 병진 매트릭스를 결정하고; 그리고

상기 모바일 디바이스의 상기 애플리케이션과 함께 사용하기 위해서, 상기 회전 정보, 상기 스케일 정보, 및 상


기 비-직교성 정보 중 적어도 2개를 계산하기 위해 상기 포즈 각 정보, 상기 병진 매트릭스 및 상기 자이로스코
프 정보를 칼만 필터에 적용하기 위한

프로그램 코드를 포함하는,

모바일 디바이스의 애플리케이션을 위한 파라미터들을 생성하기 위한 프로그램 코드가 저장되어 있는 컴퓨터 판


독가능 저장 매체.

청구항 32

제 31 항에 있어서,

-8-
등록특허 10-1565362

상기 프로그램 코드는 상기 스케일 정보 및 상기 비-직교성 정보를 증강 현실 애플리케이션에 적용하기 위한 프


로그램 코드를 더 포함하는, 모바일 디바이스의 애플리케이션을 위한 파라미터들을 생성하기 위한 프로그램 코
드가 저장되어 있는 컴퓨터 판독가능 저장 매체.

청구항 33

삭제

청구항 34

삭제

발명의 설명

기 술 분 야
[0001] [0001]본 출원은, 2012년 10월 12일에 출원되고 명칭이 "Gyroscope conditioning and gyro-camera alignment"
인 미국 출원 번호 제13/651,055호의 우선권을 주장하며, 이는 그 전체가 인용에 의해 본원에 포함된다.

[0002] [0002]Ⅰ.기술 분야

[0003] [0003]본 개시물은, 애플리케이션들, 예를 들어, 증강 현실 애플리케이션들에서 사용되고, 일부 양상들에서는


자이로스코프 측정치들을 컨디셔닝하는 데에 사용되는 파라미터들을 생성하기 위한 시스템들, 장치 및 방법들에
관한 것이다.

배 경 기 술
[0004] [0004]Ⅱ.배경 기술

[0005] [0005]점점 더 많은 수의 현대 스마트폰들은 하나 또는 그보다 많은 카메라들 및 다양한 센서들을 포함한다.


모션을 감지하는 관성 센서들, 이를 테면, 자이로스코프들 및 가속도계들은 본질적으로 각속도 및 가속도를 측
정하는 이들의 능력 그리고 고 샘플링 레이트로 인해 특히 중요하다. 이러한 센서들은 스마트폰 상에서 증강
현실(AR) 애플리케이션들을 향상시키기 위해서 사용될 수 있다. 레퍼런스-기반 추적에서, 추적 실패의 주요 원
인은 타겟에 대한 빠른 회전과 카메라의 멀어짐을 포함한다. 자이로스코프는 카메라 관련 추적 실패의 기간들
동안 타겟의 추적을 유지하도록 도울 수 있다. 그러나, 자이로스코프를 컨디셔닝하는 것, 예를 들어, 카메라에
대하여 자이로스코프의 정렬을 정확하게 캘리브레이팅하고 자이로스코프의 스케일과 비-직교성 파라미터들을 결
정하는 것은 종종 곤란하다.

[0006] [0006]따라서, 자이로스코프의 정확한 캘리브레이션을 획득하고 유지할 필요성이 존재한다. AR 애플리케이션들
과 같은 다양한 애플리케이션들과 함께 사용하기 위해서 자이로스코프의 정확하고 비용이 낮은 캘리브레이션이
유리할 수 있다.

발명의 내용
[0007] [0007]일부 양상들에 따르면, 모바일 디바이스의 애플리케이션을 위한 파라미터들을 생성하기 위한 모바일 디바
이스에서의 방법이 개시되며, 이 방법은, 카메라로부터 이미지들의 시퀀스를 수신하는 단계; 포즈 각 정보(pose
angular information)를 생성하기 위해서 컴퓨터 비전 알고리즘을 이미지들의 시퀀스에 적용하는 단계; 자이로
스코프 측정치들의 시퀀스로부터 자이로스코프 정보를 추정하는 단계; 및 애플리케이션과 함께 사용하기 위해
(1)회전 정보, (2)스케일 정보, 및 (3)비-직교성 정보 중 적어도 2개를 유도하기 위해서, 포즈 각 정보 및 자이
로스코프 정보를 프로세싱하는 단계를 포함한다. 일부 양상들에서, 방법은 애플리케이션과 함께 사용하기 위해
회전 정보, 스케일 정보 및 비-직교성 정보를 유도하기 위해서 포즈 각 정보 및 자이로스코프 정보를 프로세싱
하는 단계를 포함한다.

[0008] [0008]일부 양상들에 따르면, 모바일 디바이스의 애플리케이션을 위한 파라미터들을 생성하기 위한 모바일 디바
이스가 개시되며, 이 모바일 디바이스는 이미지들의 시퀀스를 제공하도록 구성된 카메라; 자이로스코프 측정치
들의 시퀀스를 생성하도록 구성된 자이로스코프; 및 카메라 및 자이로스코프에 결합된 프로세서를 포함하고, 여

-9-
등록특허 10-1565362

기서, 프로세서는, 카메라로부터 이미지들의 시퀀스를 수신하도록 결합된 컴퓨터 비전 모듈 ―컴퓨터 비전 모듈


은 이미지들의 시퀀스에 기초하여 포즈 각 정보를 생성함―; 자이로스코프 측정치들의 시퀀스로부터 자이로스코
프 정보를 생성하는 각 속도 모듈; 및 컴퓨터 비전 모듈로부터 포즈 각 정보를 수신하도록 결합되고 그리고 각
속도 모듈로부터 자이로스코프 정보를 수신하도록 결합되는 파라미터 추정 모듈 ―파라미터 추정 모듈은 모바일
디바이스의 애플리케이션과 함께 사용하기 위해 회전 정보, 스케일 정보, 및 비-직교성 정보 중 적어도 2개를
유도함―을 포함한다.

[0009] [0009]일부 양상들에 따르면, 모바일 디바이스의 애플리케이션을 위한 파라미터들을 생성하기 위한 모바일 디바
이스가 개시되며, 이 모바일 디바이스는 카메라로부터 이미지들의 시퀀스를 수신하기 위한 수단; 포즈 각 정보
(pose angular information)를 생성하기 위해서 컴퓨터 비전 알고리즘을 이미지들의 시퀀스에 적용하기 위한 수
단; 자이로스코프 측정치들의 시퀀스로부터 자이로스코프 정보를 추정하기 위한 수단; 및 모바일 디바이스의 애
플리케이션과 함께 사용하기 위해 회전 정보, 스케일 정보, 및 비-직교성 정보 중 적어도 2개를 유도하기 위해
서, 포즈 각 정보 및 자이로스코프 정보를 프로세싱하기 위한 수단을 포함한다. 일부 양상들에서, 프로세싱하
기 위한 수단은, 모바일 디바이스의 애플리케이션과 함께 사용하기 위해 회전 정보, 스케일 정보 및 비-직교성
정보를 유도하기 위해서 포즈 각 정보 및 자이로스코프 정보를 프로세싱하기 위한 수단을 포함한다.

[0010] [0010]일부 양상들에 따르면, 모바일 디바이스의 애플리케이션을 위한 파라미터들을 생성하기 위한 모바일 디바
이스가 개시되며, 모바일 디바이스는 프로세서 및 메모리를 포함하고, 메모리는, 카메라로부터 이미지들의 시퀀
스를 수신하고; 포즈 각 정보를 생성하기 위해서 컴퓨터 비전 알고리즘을 이미지들의 시퀀스에 적용하고; 자이
로스코프 측정치들의 시퀀스로부터 자이로스코프 정보를 추정하고; 그리고 모바일 디바이스의 애플리케이션과
함께 사용하기 위해 회전 정보, 스케일 정보, 및 비-직교성 정보를 유도하기 위해 포즈 각 정보 및 자이로스코
프 정보를 프로세싱하기 위한 명령들을 포함한다.

[0011] [0011]일부 양상들에 따르면, 모바일 디바이스의 애플리케이션을 위한 파라미터들을 생성하기 위한 프로그램 코
드가 저장되어 있는 비일시적 컴퓨터 판독가능 저장 매체가 개시되며, 이 프로그램 코드는 카메라로부터 이미지
들의 시퀀스를 수신하고; 컴퓨터 비전 알고리즘을 이미지들의 시퀀스에 적용하여 포즈 각 정보를 생성하고; 자
이로스코프 측정치들의 시퀀스로부터 자이로스코프 정보를 추정하고; 그리고 모바일 디바이스의 애플리케이션과
함께 사용하기 위해 회전 정보, 스케일 정보 및 비-직교성 정보 중 적어도 2개를 유도하기 위해서 포즈 각 정보
및 자이로스코프 정보를 프로세싱하기 위한 프로그램 코드를 포함한다. 일부 양상들에서, 프로세싱하기 위한
프로그램 코드는 모바일 디바이스의 애플리케이션과 함께 사용하기 위해 회전 정보, 스케일 정보 및 비-직교성
정보를 유도하기 위해서 포즈 각 정보 및 자이로스코프 정보를 프로세싱하기 위한 프로그램 코드를 포함한다.

[0012] [0012]다양한 양상들이 예시로서 나타내어지고 설명되는 다음의 상세한 설명들로부터 다른 양상들이 당업자에게
자명해질 것이라는 것을 이해한다. 도면들 및 상세한 설명은 사실상 예시적이고 제한적인 것이 아닌 것으로 간
주된다.

도면의 간단한 설명
[0013] [0013]다양한 실시형태들이, 도면들을 참고로 하여 단지 예시로서 아래에 설명된다.

[0014]도 1은, 개시된 실시형태들과 일치하는 방식으로, 회전 매트릭스(Rcb)와 스케일 및 비-직교성 매트릭스(A)
그리고 선택적으로 자이로스코프 바이어스 에러(ωbias)를 생성할 수 있는 예시적인 모바일 디바이스의 단순화된

블록도를 도시한다.

[0015]도 2는, 개시된 실시형태들과 일치하는 방식으로, 프로세서 및 프로세서에 연결된 여러 다른 모듈들을 포
함하는 예시적인 모바일 스테이션의 블록도이다.

[0016]도 3은 예시적인 파라미터 추정 모듈의 일부 기능들을 상세히 열거하는 블록도를 도시한다.

[0017]도 4는 복합 매트릭스(B)와, 직교 회전 매트릭스(Rcb)와 스케일 및 비-직교성 매트릭스(A) 간의 관계를 도

시한다.

[0018]도 5는 모바일 디바이스의 애플리케이션을 위한 파라미터들을 생성하기 위한 모바일 디바이스에서의 방법


을 도시한다.

[0019]도 6은, 개시된 실시형태들과 일치하는 방식으로, QR 인수분해를 이용하여 이미지들의 시퀀스와 자이로스

- 10 -
등록특허 10-1565362

코프 측정들의 시퀀스로부터 회전 매트릭스(Rcb)와 스케일 및 비-직교성 매트릭스(A)를 유도하는 예시적인 방법

을 예시하는 흐름도를 도시한다.

[0020]도 7은 개시된 실시형태들과 일치하는 방식으로 추가적인 예시적인 파라미터 추정 모듈의 블록도를 도시
한다.

[0021]도 8은 모바일 디바이스 내 다양한 파라미터들 간의 관계들을 설명하는 식들의 세트를 도시한다.

[0022]도 9는, 개시된 실시형태들과 일치하는 방식으로, 칼만 필터를 이용함으로써 이미지들의 시퀀스와 자이로
스코프 측정치들의 시퀀스로부터 회전 매트릭스(Rcb)와 스케일 및 비-직교성 매트릭스(A) 그리고 선택적으로 자

이로스코프 바이어스 에러(ωbias)를 유도하는 예시적인 방법을 도시하는 흐름도를 도시한다.

발명을 실시하기 위한 구체적인 내용


[0014] [0023]첨부된 도면들과 함께 아래에 제시된 상세한 설명은 본 개시물의 다양한 양상들의 설명인 것으로 의도되
고 본 개시물이 실시될 수 있는 유일한 양상들을 나타내는 것으로 의도되지 않는다. 본 개시물에 설명된 각각
의 양상은 단지 본 개시물의 예 또는 예증으로서 또는 제공되며, 다른 양상들에 비해 반드시 바람직하거나 유익
한 것으로 해석되지 않아야 한다. 상세한 설명은 본 개시물의 완전한 이해를 제공하기 위해 특정 상세들을 포
함한다. 그러나, 본 개시물이 이러한 특정 상세들 없이 실시될 수 있다는 것이 당업자에게 명백할 것이다. 일
부 예들에서, 잘 알려진 구조들 및 디바이스들은, 본 개시물의 개념들을 모호하게 하는 것을 방지하기 위해서
블록도의 형태로 도시된다. 약어 및 다른 기술적 용어가 단지 편의성과 명확성을 위해서 사용될 수 있으며, 본
개시물의 범위를 제한하는 것으로 의도되지 않는다.

[0015] [0024]본 명세서에 사용된 바와 같이, 모바일 디바이스(때때로 모바일 스테이션(MS) 또는 사용자 장비(UE)로 지
칭됨)는 셀룰러폰, 모바일 폰 또는 다른 무선 통신 디바이스, 개인용 통신 시스템(PCS)디바이스, 개인용 네비게
이션 디바이스(PND), 개인 정보 관리자(PIM), 개인 정보 단말(PDA), 태블릿, 랩톱, 또는 이미지들을 캡쳐하거나
수신할 수 있고 자이로스코프 정보를 측정하거나 획득할 수 있는 다른 적절한 모바일 디바이스를 포함할 수 있
다. 일부 실시형태들에서, 모바일 스테이션은 무선 통신 및/또는 내비게이션 신호들을 수신할 수 있다. 용어
"모바일 스테이션"은 또한, 단거리 무선, 적외선, 유선 접속 또는 다른 접속에 의해서와 같이(위성 신호 수신,
보조 데이터 수신 및/또는 위치-관련 프로세싱이 상기 디바이스 또는 PND에서 발생하는지 여부에 관계없이), 개
인용 네비게이션 디바이스(PND)와 통신하는 디바이스들을 포함하는 것으로 의도된다. 또한, "모바일 스테이
션"은 인터넷, WiFi 또는 다른 네트워크를 통해서와 같이, 그리고 위성 신호 수신, 보조 데이터 수신 및/또는
위치-관련 프로세싱이 상기 디바이스, 서버 또는 상기 네트워크와 관련된 다른 디바이스에서 발생하는지 여부에
관계없이, 서버와 통신할 수 있는 무선 통신 디바이스들, 컴퓨터들, 랩톱들 등을 포함하는 모든 디바이스들을
포함하도록 의도된다. 이와 같이, 모바일 디바이스는, 예를 들어, 셀룰러 또는 WiFi 기술을 이용하여 하나 또
는 그보다 많은 다른 디바이스들과 무선으로 통신할 수 있지만, 다른 실시형태들에서 이러한 기능을 생략할 수
있다. 상기 열거한 것 중에 임의의 동작가능한 조합이 "모바일 디바이스"로 또한 간주된다.

[0016] [0025]본원의 교시들은 카메라로부터 카메라 이미지들의 시퀀스와 자이로스코프로부터 자이로스코프의 측정치들
의 시퀀스를 프로세싱함으로써 회전, 스케일 및/또는 비-직교성 파라미터들을 생성하는 것을 가능하게 한다.
회전, 스케일 및 비-직교성 파라미터들은 증강 현실 애플리케이션(AP 애플리케이션 또는 AR 앱으로도 지칭됨)
용으로 사용될 수 있다. 이러한 생성된 파라미터들은 또한, 팩토리 캘리브레이션 또는 외부 장비의 필요 없이,
스마트폰 또는 태블릿 또는 다른 모바일 디바이스에서 발견되는 자이로스코프로부터의 내부 자이로스코프 측정
치를 컨디셔닝하기 위해 사용될 수 있다. 캘리브레이션 또는 컨디셔닝은, 자이로스코프 측정치들에 따라 카메
라로부터 이미지들의 시퀀스에서 피쳐들을 추적하는 것으로부터 포즈 측정치들만을 이용할 수 있다.

[0017] [0026]AR 애플리케이션들은 통상적으로, 인공 환경과 같은 가상 현실을 생성하기보다는 실세계 시나리오를 보충


하는 사용자-인터렉티브 경험을 제공한다. AR에서, 사용자의 서라운딩들은 컴퓨터 생성 그래픽들, 및 다른 타
입들의 주석들 및 애니메이션들에 의한 증강을 위해 백드롭(backdrop)을 형성할 수 있다.

[0018] [0027]일부 실시형태들에서, (컴퓨터 비전 알고리즘을 통해 통과된 이미지들의 시퀀스로부터 생성된)포즈들 및


(미가공 자이로스코프 측정치들로부터 생성된) 자이로스코프 벡터들의 시퀀스가, 미가공 자이로스코프 측정치들
에 속하는 스케일과 비-직교성 에러들을 고려하기 위해서 모바일 디바이스 오정렬을 해결할뿐만 아니라 미가공
자이로스코프 측정치들을 컨디셔닝하는 데에 사용될 수 있다. 컴퓨터 비전 포즈(즉, 포즈 각 벡터(ωcam))와 자

- 11 -
등록특허 10-1565362

이로 측정치들이 선형 시스템의 솔루션인 복합 매트릭스(B)에 의해 관련된다.

[0019] [0028]복합 매트릭스(B)의 분해는, QR 인수분해(QR 분해로도 알려짐)를 비롯한 몇 가지 방법들에 의해 수행될
수 있다. QR 인수분해에서, 분해는 복합 매트릭스(B)를 직교 회전 매트릭스(Rcb)와 상 삼각(upper triangular)
매트릭스(A)(스케일과 비-직교성 매트릭스(A)로도 알려짐)로 분리한다. 상 삼각 매트릭스(A)는, 후속하는 자이
로스코프 측정치들을 캘리브레이팅하기 위해 사용될 수 있는, 스케일 및 비-직교성 조정들 둘 모두를 포함한다.

[0020] [0029]일부 실시형태들에서, 칼만 필터링은 스케일 및 비-직교성 파라미터들을 유도하기 위해 적용될 수 있다.
칼만 필터링에서, 칼만 필터(예를 들어, 순환적 EKF(recursive Extendent Kalman filter))는 자이로스코프 벡
터와 함께, 포즈 각 회전(ωcam)과 병진(T) 둘 모두를 사용하여 스케일 및 비-직교성 매트릭스(A) 및 회전 매트
릭스(Rcb)로 이루어진 상태 공간을 추정한다. 회전(ωcam) 이외에도 컴퓨터 비전 포즈의 병진(T)을 이용하는 것
은 AR 앱들에서의 정확도를 상승시킬 수 있다.

[0021] [0030]도 1은, 개시된 실시형태들과 일치하는 방식으로, 회전 매트릭스(Rcb) 및 스케일과 비-직교성 매트릭스

(A)를 생성할 수 있는 예시적인 모바일 디바이스(10)의 단순화된 블록도를 도시한다. 일부 실시형태들에서, 모


바일 디바이스(10)는 예시적인 카메라(100) 및 자이로스코프(200)를 포함할 수 있으며, 이 둘 모두는 예시적인
프로세서(300)에 결합될 수 있다. 카메라(100)는 다양한 시점들에서 이미지들의 시퀀스를 캡쳐할 수 있다. 일
부 실시형태들에서, 카메라(100)는 다양한 리졸루션들 및/또는 프레임 레이트들의 스틸 이미지와 비디오 이미지
를 캡쳐할 수 있다.

[0022] [0031]일부 실시형태들에서, 카메라(100)는 카메라 축에 대한 타겟의 배향과 관련된 정보를 제공할 수 있는 하
나 또는 그보다 많은 캘리브레이팅된 센서들에 결합될 수 있다. 이러한 센서들은, 배향 센서, 자기장 센서 등
을 포함할 수 있지만, 이것으로 제한되지 않는다. 카메라(100)에 의해 캡쳐된 이미지들의 시퀀스는 프로세서
(300)에 의해 액세스 가능한 메모리 및/또는 이미지 버퍼 및/또는 비디오 버퍼에 저장될 수 있다. 일부 실시형
태들에서, 카메라(100)는 다양한 시점에서 독립적으로 이미지들을 캡쳐하고 이 이미지들을 프로세서에 전송할
수 있다.

[0023] [0032]일부 실시형태들에서, 프로세서(300)는 카메라(100)에 의해 캡쳐된 이미지들에서 제공된 정보에 부분적으
로 기초하여 포즈를 계산하는 것이 가능할 수 있다. 일부 실시형태들에서, 프로세서(300)는 또한 카메라(100)
에 결합된 센서들로부터의 정보를 사용할 수 있다. 용어 "포즈"는 타겟에 대한 카메라의 위치와 배향을 나타내
기 위해 사용된다. 예를 들어, 타겟이 다수의 이미지 프레임들에 걸쳐 추적되는 경우, 이미지 프레임들 중 하
나는 기준 프레임으로서 사용될 수 있고 이미지 시퀀스 내 다른 프레임들에 대한 포즈가 기준 프레임의 함수로
서 표현될 수 있다. 이미지 시퀀스에 대한 카메라 배향 정보는 포즈 각 벡터들(ωcam)의 시퀀스로 표현될 수 있
다. 일부 실시형태들에서, 모든 프레임들이 포즈 추정들을 갖는 것은 아닐 수 있다. 예를 들어, 프로세서는
프레임들을 스킵할 수 있고, 또한 간헐적인 블랙아웃 기간들이 존재할 수 있다.

[0024] [0033]3-D 이미지 표현의 경우, 포즈 각 벡터(ωcam)는 각각의 차원에 대하 하나씩 3개의 컴포넌트들을 포함할
수 있다. 이외에도, 프로세서(300)는 또한, 카메라(100)에 결합된 센서들로부터 획득된 이미지들 및 정보의 시
퀀스로 피쳐들을 이용하여 기준 프레임에서의 카메라의 포지션에 대한 카메라의 병진 또는 공간적 변위를 계산
할 수 있다. 일부 실시형태들에서, 이미지들의 시퀀스로 각각의 쌍의 이미지들에 대한 병진이 병진 매트릭스
(T)에 저장될 수 있다.

[0025] [0034]자이로스코프(200)는 미가공 각 속도 측정치들을 포함할 수 있는 미가공 측정치들(ωgyro-meas)의 시퀀스를


캡쳐할 수 있다. 이후에 설명될 바와 같이, 자이로스코프(200)는 회전 정보를 유도하기 위한 수단, 스케일 및
비-직교성 매트릭스를 수신하기 위한 수단, 및/또는 스케일 및 비-직교성 매트릭스를 이용한 미가공 자이로스코
프 측정치들의 시퀀스를 캘리브레이팅하기 위한 수단으로서 역할을 할 수 있다. 다른 실시형태들에서, 이러한
수단을 구현하기 위해서 자이로스코프(200) 대신에 또는 자이로스코프(200)에 추가하여 하나 또는 그보다 많은
다른 엘리먼트들이 사용될 수 있다. 일부 실시형태들에서, 미가공 자이로 측정치들(ωgyro-meas)은, 모바일 디바
이스(10)에서의 시스템 클록의 클록 사이클들의 구성가능한 수 이후에 그리고/또는 정규 시간 인터벌들에 제공
될 수 있다. 일부 실시형태들에서, 미가공 각 속도 측정치들은 예를 들어, x, y 및 z 축들 각각에 대해 하나씩
3개의 컴포넌트들을 포함할 수 있다. 일부 실시형태들에서, 미가공 자이로스코프 측정치들(ωgyro-meas)의 시퀀스
는 프로세서(300)에 의해 액세스될 수 있는 버퍼(미도시)에 저장될 수 있다.

- 12 -
등록특허 10-1565362

[0026] [0035]일반적으로 프로세서(300)는 CPU(Central Processing Unit), 멀티-코어 CPU, 마이크로프로세서, 마이크
로컨트롤러, ASIC(Application Specific Integrated Circuit), 임베딩 프로세서, DSP(Digital Signal
Processor) 또는 모바일 디바이스(10)에서 동작하고 본원에 개시된 기능들을 수행할 수 있는 임의의 다른 프로
세서일 수 있다. 프로세서(300)는, 본원에 개시된 실시형태들과 일치하는 방식으로, 메모리에서, 펌웨어에서
그리고/또는 모바일 디바이스(10)에 결합된 매체로부터 프로그램 코드를 실행할 수 있다.

[0027] [0036]일부 실시형태들에서, 프로세서(300)는, 자이로스코프 벡터들의 시퀀스(ωgyro) 및 포즈 각 벡터들의 시퀀

스(ωcam)가 시간 동기화될 수 있도록, 자이로스코프 벡터들의 시퀀스(ωgyro)를 추정하기 위해 자이로스코프 측정


치들의 버퍼링 시퀀스(ω'gyro-meas)를 프로세싱할 수 있다. 일부 실시형태들에서, 자이로스코프 벡터들의 시퀀스
(ωgyro)는 각각 3개의 컴포넌트들: x, y 및 z 축들 각각에 대해 하나씩 포함할 수 있다. 일부 실시형태들에서,
이미지들의 시퀀스 및 자이로스코프 벡터들의 시퀀스(ωgyro)에는 시간-스탬프가 찍어질 수 있거나 그렇지 않으면
인덱스화되어 이미지를 지닌 포즈 각 벡터(ωcam)의, 대응하는 자이로스코프 벡터(ωgyro)와의 연관을 가능하게 한

다.

[0028] [0037]미가공 자이로스코프 측정치들(ωgyro-meas)은 통상적으로 에러들을 겪는다. 예를 들어, 자이로스코프(20


0)의 축들은 서로에 대해여 작은 양만큼 비-직교성일 수 있는데, 이는 미가공 각 속도 측정치(ωgyro-meas)의 정확
도에 영향을 줄 수 있고 비-직교성 에러들을 유발한다. 이외에도, 자이로스코프(200)와 같은 자이로스코프는
또한, 바이어스 및 스케일 에러들과 같은 다른 결정성(deterministic) 에러들을 나타낼 수 있다. 자이로스코프
바이어스 에러(ωgyro)는, 예를 들어, 자이로스코프(200)가 일부 미가공 넌-제로 자이로스코프(각 속도) 측정치
(ωgyro-meas=ωbias≠0)를 등록하는 경우, 자이로스코프(200)가 사실상 회전하지 않는 경우(ωtrue=0)를 발생시킬 수

있으며, ωtrue는 트루 자이로스코프(각 속도) 측정치이다. 바이어스 보상 이후, 자이로스코프(200)는 미가공 자


이로스코프(각 속도) 측정치(ωgyro-meas, 여기서, ωgyro-meas=αωtrue)를 등록하는 경우, "α"는 스케일 팩터 또는
스케일 에러로 지칭된다. 일부 실시형태들에서, 미가공 자이로스코프 측정치들의 시퀀스(ωgyro-meas)는 버퍼에
저장하기 전에 프로세싱될 수 있다.

[0029] [0038]일부 실시형태들에서, 프로세서(300)는 직교성 회전 매트릭스(Rcb) 및/또는 스케일 및 비-직교성 매트릭스
(A)를 계산하기 위해서 포즈 각 벡터들의 시퀀스(ωcam)와 자이로스코프 벡터들의 시퀀스(ωgyro)를 이용할 수 있
다. 일부 실시형태들에서, 바이어스 에러(ωbias)는 또한 도 1에서 점선 화살표로 나타내어진 바와 같이 프로세
서(300)에 의해 선택적으로 추정될 수 있다. 일부 실시형태들에서, 스케일 및 비-직교성 매트릭스(A) 매트릭스
는, 후속하는 자이로스코프 측정치들을 캘리브레이팅 하기 위해서 사용될 수 있는 스케일 및 비직교성 조정들
둘 모두를 포함한다. 일부 실시형태들에서, 스케일 및 비-직교성 조정들 또는 파라미터들, 및 선택적으로 바이
어스 에러(ωbias)는 자이로스코프(200)에 의한 측정치들을 컨디셔닝하기 위해 사용되고 그리고/또는 AR 애플리케
이션과 같은 애플리케이션에 제공될 수 있다. 모바일 디바이스(10)는 추가 엘리먼트들을 포함할 수 있으며, 이
는 도시되지 않았다. 예를 들어, 모바일 디바이스(10)는, 예를 들어, 본원에 설명된 파라미터들에 기초하여 증
강 등을 결정하고, 그러한 증강들과 이미지들이 디스플레이 상에 도시되게 하기 위해서, 입력 엘리먼트들, 다른
센서들, 무선 통신 수단, 디스플레이 및/또는 모듈들을 포함할 수 있다.

[0030] [0039]도 2는, 개시된 실시형태들과 일치하는 방식으로 프로세서(300)를 포함하고 및 그 프로세서에 결합된 다
른 모듈들을 예시하는 예시적인 모바일 디바이스(10)의 블록도이다. 일반적으로, 도시된 모듈들은 하드웨어,
소프트웨어 및/또는 펌웨어의 일부 조합에 의해 구현될 수 있다.

[0031] [0040]도 2에 도시된 바와 같이, 카메라(100)에 의해 캡쳐된 이미지들의 시퀀스가, 프로세서(300)에 결합된 예
시적인 CV(Computer Vision) 모듈(310)로 입력될 수 있다. 일부 실시형태들에서, CV 모듈(310)은, 이미지 시
퀀스 내 이미지를 기준 이미지로서 선택하고 기준 이미지에 대한 이미지 시퀀스 내 각각의 이미지에 대한 포즈
각 벡터(ωcam) 또는 포즈 각 정보를 계산할 수 있다. 예를 들어, 이미지 시퀀스 내 제 1 이미지가 기준 이미지
로서 선택될 수 있고 다른 이미지들에 대한 포즈 각 벡터들(ωcam)이 기준 제 1 이미지에 대하여 계산될 수
있다. 더욱이, 일부 실시형태들에서, CV 모듈(310)은 또한 이미지들의 시퀀스들에 대한 병진 매트릭스(T)를 계
산할 수 있다. 추가적으로, 일부 실시형태들에서, CV 모듈(310)은 카메라 프레임 레이트 싱크 신호(350)를, 각

- 13 -
등록특허 10-1565362

속도 측정치들을 이미지 시퀀스 내 캡쳐된 프레임들에 동기화시키기 위해 사용될 수 있는 AV(Angular Velocity)


모듈(320)로 출력할 수 있다. 이와 같이, CV 모듈(310)은 카메라로부터 이미지들의 시퀀스를 수신하기 위한 수
단, 및/또는 컴퓨터 비전 알고리즘을 이미지들의 시퀀스로 적용하여 포즈 각 벡터들의 시퀀스를 생성하기 위한
수단으로서 역할을 할 수 있다. AV 모듈(320)은 자이로스코프 측정치들의 버퍼링 시퀀스로부터 자이로스코프
벡터들의 시퀀스를 추정하기 위한 수단으로서 역할을 할 수 있다. 일부 실시형태들에서, 자이로스코프 벡터들
의 시퀀스 및 포즈 각 벡터들의 시퀀스가 동기화된다. 다른 실시형태들에서, 이러한 수단을 구현하기 위해서
CV 모듈(310) 및/또는 AV 모듈(320) 대신에 또는 CV 모듈(310) 및/또는 AV 모듈(320)에 추가하여 하나 또는 그
보다 많은 다른 엘리먼트들이 사용될 수 있다.

[0032] [0041]일부 경우들에서, CV 모듈(310)은, 추적 알고리즘이 포즈를 업데이트할 수 있기 전에 시각적 타겟을 검출


하고 포즈를 확립하기 위한 검출 단계를 먼저 실행할 수 있다. 일부 실시형태들에서, 검출 및 추적 단계들은
실시간으로 실행될 수 있다. 추적 단계에서, 피쳐 포인트들의 세트의 위치가 각각의 프레임에서 계산될 수 있
다. 예를 들어, 카메라(100)에 의해 캡쳐된 2개의 별개의 이미지 프레임들의 실세계 피쳐의 식별 및 위치가,
타겟을 추적하고 프레임들 간의 포즈를 추정하기 위해 사용될 수 있는 피쳐 관련성들을 산출할 수 있다.

[0033] [0042]추가로, 자이로스코프(200)는 예시적인 자이로스코프 버퍼 모듈(340)에 의해 버퍼링될 수 있는 미가공 자


이로스코프 측정치들의 시퀀스(ωgyro-meas)를 캡쳐할 수 있다. 자이로스코프 버퍼 모듈(340)은 자이로스코프로부
터의 미가공 자이로스코프 측정치들의 시퀀스에 기초하여 자이로스코프 측정치들의 버퍼링 시퀀스를 제공하기
위한 수단으로서 역할을 할 수 있다. 아래에 설명된 바와 같이, 자이로스코프 버퍼 모듈(340)은 스케일 및 비-
직교성 매트릭스를 수신하기 위한 수단 및/또는 스케일 및 비-직교성 매트릭스를 이용한 미가공 자이로스코프
측정치들의 시퀀스를 컨디셔닝하기 위한 수단으로서 역할을 할 수 있다. 다른 실시형태들에서, 이러한 수단을
구현하기 위해서 자이로스코프 버퍼 모듈(340) 대신에 또는 자이로스코프 버퍼 모듈(340)에 추가하여 하나 또는
그보다 많은 엘리먼트들이 사용될 수 있다. 일부 실시형태들에서, 자이로스코프 측정치들의 버퍼링 시퀀스
(ω'gyro-meas)가 예시적인 AV 모듈(320)로 출력될 수 있으며, AV 모듈(320)은, 포즈 각 벡터들의 시퀀스(ωcam)에
동기화되는 자이로스코프 벡터들의 시퀀스(ωgyro)를 생성하기 위해서 카메라 프레임 레이트 싱크 신호(350)를 사

용할 수 있다.

[0034] [0043]일부 실시형태들에서, CV 모듈(310)에 의해 계산된 병진 매트릭스(T) 및 포즈 각 벡터들의 시퀀스(ωcam)


또는 포즈 각 정보가 예시적인 파라미터 추정 모듈(330)로 입력될 수 있다. 파라미터 추정 모듈(330)은, 스케
일 정보 및 비-직교성 정보를 유도하기 위해 포즈 각 벡터들의 시퀀스 및 자이로스코프 벡터들의 시퀀스를 프로
세싱하기 위한 수단으로서 역할을 할 수 있다. 파라미터 추정 모듈(330)은 또한, 스케일 정보 및 비-직교성 정
보를 증강 현실(AR) 애플리케이션으로 포워딩하기 위한 수단으로서 역할을 할 수 있다. 다른 실시형태들에서,
하나 또는 그보다 많은 다른 엘리먼트들은 이러한 수단을 구현하기 위해서 파라미터 추정 모듈(330) 대신에 또
는 파라미터 추정 모듈(330)에 추가하여 사용될 수 있다.

[0035] [0044]이외에도, 파라미터 추정 모듈(330)은 또한 AV 모듈(320)로부터 자이로스코프 벡터들의 시퀀스(ωgyro) 또


는 자이로스코프 정보를 수신할 수 있으며, 자이로스코프 벡터들의 시퀀스(ωgyro) 또는 자이로스코프 정보는 포
즈 각 벡터들의 시퀀스(ωcam) 또는 포즈 각 정보와 동기화된다. 파라미터 추정 모듈(330)은 수신된 입력들을
사용하여 직교 회전 매트릭스(Rcb), 스케일 및 비-직교성 매트릭스(A) 또는 스케일 정보 및 비-직교성 정보, 및

선택적으로 자이로스코프 바이어스 에러(ωbias)를 계산할 수 있다. 일부 실시형태들에서, 회전 매트릭스((Rcb),


스케일 및 비-직교성 매트릭스(A) 및/또는 자이로스코프 바이어스 에러(ωbias)가 AR 애플리케이션과 같은 애플리
케이션에 입력될 수 있다. 일부 실시형태들에서, 직교 회전 매트릭스(Rcb) 및 스케일 및 비-직교성 매트릭스(A)
또는 스케일 정보 및 비-직교성 정보가 자이로스코프 버퍼 모듈(점선으로 나타내어짐)로 입력될 수 있고 자이로
스코프 측정치들의 버퍼링 시퀀스(ω'gyro-meas)를 컨디셔닝하기 위해 사용될 수 있다.

[0036] [0045]도 3은 예시적인 파라미터 추정 모듈(330)의 일부 기능들을 상세히 나타내는 블록도를 도시한다. 파라미
터 추정 모듈(330)은 포즈 각 벡터들의 시퀀스(ωcam) 또는 포즈 각 정보 및 자이로스코프 벡터들의 시퀀스(ω

gyro) 또는 자이로스코프 정보를 입력으로서 수신할 수 있다.

[0037] [0046]자이로스코프들이 통상적으로 스케일과 비-직교성 에러들을 갖기 때문에, 이러한 에러들의 추정 및 수정

- 14 -
등록특허 10-1565362

은 자이로 측정치들로부터 카메라 본체 각 속도 측정치들을 획득하는 것을 용이하게 한다. 일부 실시형태들에


서, 예시적인 LSE(least squares estimation) 모듈(332)은 아래에 논의되는 바와 같이 포즈 각 벡터들의 시퀀
스(ωcam) 및 자이로스코프 측정치들의 대응하는 버퍼링 시퀀스(ωgyro-meas)를 이용하여 복합 매트릭스 B를 계산할
수 있다.

[0038] [0047]측정치들 간의 관계가 다음과 같이 표현될 수 있다.

수학식 1

[0039]

수학식 2

[0040]

[0041] 이것은, 일반 복합 매트릭스

수학식 3

[0042]

[0043] 를 풀 경우의 선형 최소 자승 추정(Linear Least Squares Estimation) 문제이며, 다음의 오브젝티브 함수를 최
소화한다.

수학식 4

[0044]

[0045] 여기서, ωcam(t)는 시간 t에서의 포즈 각 벡터들의 시퀀스이고, ωgyro(t)는 자이로스코프 측정치들의 대응하는

시퀀스이고, arg min은 최소 인수(argument of the minimum)를 의미하는 것으로서, 이는 주어진 오브젝티브 함
수가 그의 최소치에 도달하는 주어진 인수의 포인트들의 세트이다. B는, 이차(quadratic) 최적화 문제(그 솔루
션이 선형 시스템임)인 식 4를 이용하여 결정될 수 있다.

[0046] [0048]일단 B가 LSE 모듈(332)에 의해 계산되면, 복합 매트릭스 B는 예시적인 QR 인수분해 모듈(334)로 입력될
수 있다. 일부 실시형태들에서, 이후, 식 3은, 직교 회전 매트릭스(Rcb)와 스케일 및 비-직교성 매트릭스(A)를
획득하기 위해 QR 분해를 이용하여 B를 분해함으로써 QR 인수분해 모듈(334)에 의해 풀릴 수 있다. 앞에서 언
급된 바와 같이, 일부 실시형태들에서, 직교 회전 매트릭스(Rcb) 및/또는 스케일 및 비-직교성 매트릭스(A)가 AR
애플리케이션으로 입력될 수 있다. 일부 실시형태들에서, 직교 회전 매트릭스(Rcb)와 스케일 및 비-직교성 매트
릭스(A)가 자이로스코프 측정치들의 미가공 시퀀스(ωgyro-meas)를 컨디셔닝하는 데에 사용될 수 있다.

[0047] [0049]일부 실시형태들에서, 직교 회전 매트릭스(Rcb)와 스케일 및 비-직교성 매트릭스(A)를 계산하기 위해서 파


라미터 추정 모듈(330)에 의해 병진 정보가 사용되지 않을 수 있으므로, 병진 정보가 입력되는 경우 카메라와
자이로 센터들 간의 오프셋 또는 변위의 추정치들이 파라미터 추정 모듈(330)에 의해 무시될 수 있다. 다른 실
시형태들에서, 파라미터 추정 모듈(330)이, 직교 회전 매트릭스(Rcb)와 스케일 및 비-직교성 매트릭스(A)를 계산
하기 위해서 병진 정보를 이용하지 않을 경우, CV 모듈(310)은 병진 매트릭스(T)를 계산하지 않을 수 있다.

[0048] [0050]도 4는, 식 3에 나타내어진 바와 같이 복합 매트릭스(B)(410), 직교 회전 매트릭스(Rcb)(420) 그리고 스

- 15 -
등록특허 10-1565362

케일 및 비-직교성 매트릭스(A)(430) 간의 관계를 도시한다. 일부 실시형태들에서, 스케일 및 비-직교성 매트


릭스(A)(430)는 상 삼각 매트릭스로서 모델링될 수 있다. 상 삼각 스케일 및 비-직교성 매트릭스(A)의 대각 엘
리먼트들은 3개의 축들에 대한 스케일 파라미터들이고, 오프-대각 엘리먼트들(off-diagonal elements)은 비-직
교성 파라미터들이다. 복합 매트릭스 B(410)를 획득한 후에, QR 분해 기술들을 이용하여, 이를 테면 QR 인수분
해 모듈(334)에 의해 복합 매트릭스 B(410)를 분해함으로써 식 3을 직교 회전 매트릭스(Rcb)(420) 그리고 스케일
및 비-직교성 매트릭스(A)(430)에 대해 풀 수 있다.

[0049] [0051]도 5는 모바일 디바이스, 예를 들어 모바일 디바이스(10)의 애플리케이션을 위한 파라미터들을 생성하기


위한 모바일 디바이스에서의 방법을 도시한다. 예를 들어, 애플리케이션은 증강 현실 애플리케이션일 수 있다.
일부 실시형태들에서, 도 5에 도시된 방법이 모바일 디바이스에서 구현될 수 있다. 450에서, 프로세서, 예를
들어, 프로세서(300), 또는 다른 컴퓨팅 엘리먼트는 카메라, 예를 들어, 카메라(100)로부터 이미지들의 시퀀스
를 수신할 수 있다. 460에서, 프로세서는 컴퓨터 비전 알고리즘을 이미지들의 시퀀스에 적용하여 포즈 각 정보
를 생성할 수 있다. 일부 실시형태들에서, CV 모듈(310)에 의해 460이 수행되고 그리고/또는 구현된다. 470에
서, 프로세서는 자이로스코프 측정치들의 시퀀스로부터, 예를 들어, 자이로스코프(200)로부터 자이로스코프 정
보를 추정할 수 있다. 자이로스코프 정보 및 포즈 각 정보가 동기화될 수 있다. 일부 실시형태들에서, 자이로
스코프 버퍼 모듈(340) 및/또는 AV 모듈(320)에 의해 470이 수행되고 그리고/또는 구현될 수 있다.

[0050] [0052]480에서, 프로세서는 포즈 각 정보와 자이로스코프 정보를 프로세싱하여, 애플리케이션과 함께 사용되는


(1)회전 정보, (2)스케일 정보, 및 (3)비-직교성 정보 중 적어도 2개를 유도할 수 있다. 일부 실시형태들에서,
파라미터 추정 모듈(330), 최소-자승 추정 모듈(332), QR 인수분해 모듈(334), 및/또는 칼만 필터(326)에 의해
480이 수행되고 그리고/또는 구현된다. 일부 실시예들에서, 포즈 각 정보와 자이로스코프 정보를 프로세싱하는
것은 포즈 각 정보와 자이로스코프 정보로부터 복합 매트릭스를 계산하는 것, 및 복합 매트릭스를 회전 매트릭
스와 스케일 및 비-직교성 매트릭스로 분해하는 것을 포함하며, 스케일 정보 및 비-직교성 정보는 스케일 및 비
-직교성 매트릭스를 포함한다. 일부 실시예들에서, 복합 매트릭스를 계산하는 것은 최소-자승 추정치를 포즈
각 정보와 자이로스코프 정보에 적용하는 것을 포함한다. 일부 실시예들에서, 복합 매트릭스를 분해하는 것은
QR 인수분해를 복합 매트릭스에 적용하는 것을 포함한다. 일부 실시예들에서, 포즈 각 정보 및 자이로스코프
정보를 프로세싱하는 것은 추정된 자이로스코프 바이어스 에러를 유도하는 것을 더 포함할 수 있다. 일부 실시
예들에서, 포즈 각 정보 및 자이로스코프 정보를 프로세싱하는 것은 이미지들의 시퀀스로부터 병진 매트릭스를
결정하는 것, 포즈 각 정보, 병진 매트릭스 및 자이로스코프 정보를 칼만 필터에 적용하여 회전 정보, 스케일
정보 및 비-직교성 정보를 계산하는 것을 포함한다. 포즈 각 정보는 포즈 각 벡터들의 시퀀스일 수 있다. 일
부 실시형태들에서, 도 5에 도시된 기능들 중 하나 또는 그 초과의 것이 생략, 전치, 및/또는 재배열될 수
있다. 예를 들어, 일부 실시형태들에서, 470이 생략된다. 이러한 실시형태들에서, 포즈 각 정보 및 자이로스
코프 측정치들이 480에서 프로세싱될 수 있다. 일부 실시형태들에서, 다른 디바이스, 컴포넌트, 및/또는 엘리
먼트에서 자이로스코프 정보가 추정될 수 있다. 도 5에 도시된 방법의 다른 대안들은 일부 실시형태들에서 구
현될 수 있다.

[0051] [0053]도 6은 개시된 실시형태들과 일치하는 방식으로, QR 인수분해를 이용하여 이미지들의 시퀀스와 자이로스
코프 측정치들의 시퀀스로부터 회전 매트릭스(Rcb)와 스케일 및 비-직교성 매트릭스(A)를 유도하는 예시적인 방
법(500)을 예시하는 흐름도를 도시한다. 일부 실시형태들에서, 방법(500)이 모바일 디바이스에서 구현될 수 있
다.

[0052] [0054]일부 실시형태들에서, 단계(505)에서, 이미지들의 시퀀스가 캡쳐될 수 있다. 예를 들어, 카메라(100)는
이미지들의 시퀀스를 캡쳐할 수 있다. 다음으로, 단계(510)에서, 컴퓨터 비전 기반 알고리즘이, 예를 들어, CV
모듈(310)에 의해 이미지들의 시퀀스를 프로세싱하고 포즈 각 벡터들의 시퀀스(ωcam) 또는 포즈 각 정보를 획득
하기 위해 적용될 수 있다.

[0053] [0055]이미지 시퀀스의 캡쳐(단계 505)와 동시에, 미가공 자이로스코프 측정치들의 시퀀스(ωgyro-meas)가 단계
520에서 캡쳐될 수 있다. 예를 들어, 자이로스코프(200)는, 카메라(100)가 이미지들의 시퀀스를 캡쳐하고 있는
기간 동안 미가공 자이로스코프 측정치들의 시퀀스(ωgyro-meas)를 캡쳐할 수 있다. 단계 530에서, 자이로스코프
측정 벡터들 또는 자이로스코프 정보의 버퍼링 시퀀스(ω'gyro-meas)가, 예를 들어, 자이로스코프 버퍼 모듈(340)
에 의해, 미가공 자이로스코프 측정치들의 시퀀스(ωgyro-meas)로부터 획득될 수 있다. 일부 실시형태들에서, 미
가공 자이로스코프 측정치들의 시퀀스(ωgyro-meas)는, 버퍼에 저장되기 전에 프로세싱될 수 있다. 다음으로, 단

- 16 -
등록특허 10-1565362

계 535에서, 예를 들어, AV 모듈(320)에 의해서, 자이로스코프 측정치들의 버퍼링 시퀀스(ω'gyro-meas)를 이용하

여 자이로스코프 벡터들의 시퀀스(ωgyro)가 결정될 수 있으므로, 자이로스코프 벡터들의 시퀀스(ωgyro) 및 포즈


각 벡터들의 시퀀스(ωcam)가 시간 동기화된다.

[0054] [0056]단계 540에서, 복합 매트릭스(B)가, 예를 들어, 파라미터 추정 모듈(330)에 의해 포즈 각 벡터들(포즈 각


정보)의 시퀀스(ωcam)와 자이로스코프 벡터들(자이로스코프 정보)의 시퀀스(ωgyro)로부터 계산될 수 있다. 일부

실시형태들에서, 복합 매트릭스(B)가 식 4를 이용하여 계산될 수 있다.

[0055] [0057]다음으로, 단계 550에서, 복합 매트릭스(B)가 QR 인수분해를 이용하여 분해되어 회전 매트릭스(Rcb)와 스


케일 및 비-직교성 매트릭스(A)를 획득할 수 있으며, 회전 매트릭스(Rcb)와 스케일 및 비-직교성 매트릭스(A)는
출력 파라미터들이다. 예를 들어, 직교 회전 매트릭스(Rcb)와 스케일 및 비-직교성 매트릭스(A)를 획득하기 위

해서 QR 분해를 이용하여, 예를 들어, QR 인수분해 모듈(334)에 의해 B를 분해함으로써 식 3을 풀 수 있다.

[0056] [0058]단계 560에서, 일부 실시형태들에서, 직교 회전 매트릭스(Rcb) 및/또는 스케일 및 비-직교성 매트릭스(A)


는 선택적으로, 도 2 및 도 3에 도시된 바와 같이 AR 애플리케이션에 대한 입력일 수 있다.

[0057] [0059]단계 570에서, 직교 회전 매트릭스(Rcb)와 스케일 및 비-직교성 매트릭스(A)는, 도 2에서 (점선으로) 도시

된 바와 같이, 자이로스코프 측정치의 미가공 시퀀스들(ωgyro-meas)를 컨디셔닝하도록 선택적으로 사용될 수


있다. 예를 들어, 직교 회전 매트릭스(Rcb)와 스케일 및 비-직교성 매트릭스(A), 및 선택적으로 바이어스 에러
(ωbias)는, 예를 들어, 자이로스코프 버퍼 모듈(340)에서 자이로스코프 측정치들의 버퍼링 시퀀스(ω'gyro-meas)를
컨디셔닝하는 함수에 대한 입력으로서 선택적으로 사용될 수 있다.

[0058] [0060]도 7은 개시된 실시형태들과 일치하는 추가적인 예시적인 파라미터 추정 모듈의 블록도를 도시한다. 도
7에 도시된 바와 같이, 파라미터 추정 모듈(330)은 포즈 각 벡터들의 시퀀스(ωcam) 또는 포즈 각 정보, 병진 매

트릭스(T) 및 자이로스코프 벡터들의 시퀀스(ωgyro) 또는 자이로스코프 정보를 입력들로서 수신할 수 있다. 일


부 실시형태들에서, 파라미터 추정 모듈(330)은, 포즈 각 벡터들의 입력 시퀀스(ωcam) 또는 포즈 각 정보, 병진
매트릭스(T) 및 자이로스코프 벡터들의 시퀀스(ωgyro) 또는 자이로스코프 정보를 수신할 수 있는 칼만 필터(32
6)를 포함할 수 있다. 이후, 칼만 필터(326)는 직교 회전 매트릭스(Rcb)와 스케일 및 비-직교성 매트릭스(A),

및 선택적으로 바이어스 에러(ωbias)를 계산할 수 있다. 칼만 필터들은 당업자에게 잘 알려져 있다. 일부 실시


형태들에서, 칼만 필터(326)는 아래에 추가로 설명되는 순환적 EKF(recursive Extendent Kalman Filter)의 형
태를 취할 수 있다.

[0059] [0061]도 8은 모바일 디바이스 내 다양한 파라미터들 간의 관계들을 설명하는 한 세트의 식들을 도시한다. 일
부 실시형태들에서, 식들에 의해 설명된 관계들은, 모바일 디바이스(10)에 의해 이루어진 측정치들로부터, 회전
매트릭스(Rcb)와 스케일 및 비-직교성 매트릭스(A), 및 선택적으로 바이어스 에러(ωbias)를 유도하기 위해서 예
시적인 EKF에 의해 사용될 수 있다. 모바일 디바이스에 대한 다양한 센서 파라미터들 간의 관계들의 수학적 설
명과 모델이 문헌들: "Vision Inertial Integration: Hybrid VINS” 2011년 1월, 스테파노 소아또, (이하 “소
아또(Soatto)") 및 “Visual-Inertial Navigation, Localization and Mapping: A Scalable Real-time Large
Scale Approach", 로보틱스 리서치 국제 저널, 이글 존스 및 스테파노 소아또(이하“존스(Jones)”)에서 발견될
수 있으며, 상기 문헌은 그 전체가 인용에 의해 본원에 포함된다. 관계들을 설명하는데 사용되는 파라미터들
및 파라미터들 관련 식들이 아래의 일반 용어들로 개략적이고 간단하게 설명된다.

[0060] [0062]아랫첨자 "cb"는 캘리브레이션 파라미터들을 나타내기 위해 사용된다. 이러한 파라미터들 중 일부가 캘
리브레이션 스테이지에서 추정되며, EKF의 동작 동안 불변인 것으로 가정될 수 있다. 아랫첨자 "sb"는 공간 좌
표계에 대하여 자이로스코프의 배향과 관계된 파라미터들을 나타내는데 사용된다.

[0061] [0063]모델 다이나믹스의 이산-시간 버전(시간 "t"에서의 파라미터의 값들을 시간 "t+dt"에서의 그의 값에 관련


시킴)이 아래에 추가로 설명되는 바와 같이 바디 배향의 다이나믹스를 결정하기 위해 사용될 수 있다. 카메라-

투-자이로스코프 회전 정렬이 로 표기되고, 2개의 센서들 간의 오프셋이 "Tcb"로 표기된다. 그에 따라,

- 17 -
등록특허 10-1565362

존스의 모델을 이용하여, 및 에 대한 식들이 다음 식들과 같이 기록될 수 있다.

수학식 5

[0062]

수학식 6

[0063]

[0064] 통상적으로, 자이로스코프 판독은 각 속도 ω(t) 및 가속도 a(t)의 측정치들을 포함할 수 있다. 각속도 및 가
속도의 다이나믹스가 아래의 식 7과 식8에 도시된다.

수학식 7

[0065]

수학식 8

[0066]

[0067] 여기서, nω(t)와 na(t)는 각각 자이로스코프 각 속도 및 가속도 판독들에서의 화이트 잡음을 모델링한다.

[0068] [0064]Tsb(t) 및 v(t)는 각각, 공간 좌표계에 대하여 자이로스코프에 의해 이루어진 측정치들로부터 유도된 포지

션과 속도를 나타낸다고 하자. 추가로, 가 공간 좌표계에서 중력 벡터를 나타낸다고 하고, 가 중력


추정에서 화이트 잡음을 모델링한다고 하고, ωbias(t) 및 αbias(t)는 느리게 변하는 자이로스코프와 상태 파라미
터들로서 추정되는 가속도 바이어스 에러들을 나타내는 것으로 한다. 그런다음, 포지션(변위), 속도 및 중력의
다이나믹스가 식 9, 10, 및 11에 각각 나타내어지는 바와 같다.

수학식 9

[0069]

수학식 10

[0070]

- 18 -
등록특허 10-1565362

수학식 11

[0071]

수학식 12

[0072]

[0073] [0065]식 5 내지 식 12는, 모바일 디바이스의 다양한 센서들과 함께 측정되고 그리고/또는 그 다양한 센서들과
연관된 파라미터들과 관련된 일반 모델을 나타내며 모바일 디바이스(10) 내 자이로스코프(200)의 스케일 및 비-
직교성과 함께 회전 정렬을 추정하기 위한 모델을 유도하기 위해 EKF에서 사용될 수 있다. 구체적으로, 자이로
스코프(200) 및 카메라(100)의 측정치들과 관련된 측정 식들은 회전 및 병진 필터와 비슷하고, 아래와 같이 재
현된다.

수학식 13

[0074]

수학식 14

[0075]

수학식 15

[0076]

[0077] A는 상 삼각으로서 모델링되는 스케일 및 비-직교성 매트릭스이고; ω'gyro-meas(t)는 시간 t에서의 자이로스코프


측정치들의 버퍼링 시퀀스, 및 포즈 각 벡터들의 시퀀스이고, ωcam(tk)는 Ωcam(tk)의 도함수이다. Ωcam(tk)는

회전 매트릭스들에 대한 지수함수적 좌표들과 관련되는 공식을 이용하여 ωcam(tk)으로부터 계산될 수 있다. A의


대각 엘리먼트들이 3개 축들에 대한 스케일 파라미터들이고, 오프-대각 엘리먼트들이 비-직교성
파라미터들이다. 스케일 및 비-직교성 파라미터들이 캘리브레이션 동안 불변인 것으로 가정되기 때문에, 식 13
은 스케일 및 비-직교성 매트릭스 A에 대해 항수(constant) 다이나믹스를 가정한다.

[0078] [0066]상기 식 13 내지 식 15에서, 카메라-투-자이로스코프 회전 정렬(Ωcb)과 스케일 및 비-직교성 매트릭스


(A)가 미지의 파라미터들이고, 문제(problem)는, 우리가 필터링 문제로 변환한 파라미터 식별 중 하나이다. 정
렬, 스케일 및 비-직교성 파라미터들은 캘리브레이션 동안 변경하지 않고 이것이 상기 식에 반영되며, Ωcb와 스
케일 및 비-직교성 매트릭스(A)의 전개에 대한 잡음은 제로이다. 추가로, 직교 회전 매트릭스(Rcb)는 Ωcb의 지

수함수(exponential)이고, 지수함수는 잘 알려진 로드리게스(Rodrigues)의 회전 공식을 이용하여 획득될 수 있


다.

[0079] [0067]일부 실시형태들에서, 식 13 내지 식 15를 이용한 순환적 솔루션이, 예를 들어, 칼만 필터(326)에 의해


계산될 수 있다. 필터는, 명세서 문헌들로부터 최초에 획득되거나 그렇지 않으면 추정될 수 있는 Ωcb 및 A의
최초 추정치로 초기화된다. 일부 실시예들에서, 자이로스코프 바이어스 에러들(ωbias(B))은 미지일 수 있다.

- 19 -
등록특허 10-1565362

그러나, 바이어스 에러들이 시간에 따라 일정한 것으로 가정될 수 있기 때문에, 이들은 칼만 필터(326)에 의해
추정될 수 있다.

[0080] [0068]도 9는 개시된 실시형태들과 일치하는 방식으로, 칼만 필터를 이용함으로써 이미지들의 시퀀스와 자이로
스코프 측정치들의 시퀀스로부터 회전 매트릭스(Rcb)와 스케일 및 비-직교성 매트릭스(A)를 유도하는 예시적인

방법(800)을 도시하는 흐름도를 도시한다. 일부 실시형태들에서, 칼만 필터는 EKF의 형태를 취할 수 있다.

[0081] [0069]일부 실시형태들에서, 도 9의 방법(800)이 모바일 디바이스 상에서 구현될 수 있다. 일부 실시형태들에
서, 단계 505에서, 이미지들의 시퀀스가 캡쳐될 수 있다. 예를 들어, 카메라(100)는 이미지들의 시퀀스를 캡쳐
할 수 있다. 다음으로, 단계 515에서, 컴퓨터 비전 기반 알고리즘이, 예를 들어, CV 모듈(310)에 의해 이미지
들의 시퀀스를 프로세싱하고 포즈 각 벡터들의 시퀀스(ωcam) 또는 포즈 각 정보 그리고 병진 매트릭스(T)를 획
득하기 위해 적용될 수 있다.

[0082] [0070]단계들 520, 530 및 535가 동시에 발생할 수 있고 도 6에 대하여 설명된다. 단계 545에서, 회전 매트릭
스(Rcb)와 스케일 및 비-직교성 매트릭스(A) 및 선택적으로 자이로스코프 바이어스 에러(ωbias)는, 포즈 각 벡터
들의 시퀀스(ωcam) 또는 포즈 각 정보, 병진 매트릭스(T), 및 자이로스코프 벡터들의 시퀀스(ωgyro-meas) 또는 자
이로스코프 정보를, 상기 식 13 내지 식 15와 함께 순환적 기술들을 부분적으로 이용할 수 있는 칼만 필터에 적
용함으로써 계산될 수 있다. 일부 실시형태들에서, Ωcam(tk)는 회전 매트릭스들에 대한 지수함수적인 좌표들과

관련된 공식을 이용하여 ωcam(tk)로부터 계산될 수 있다. 단계 560과 단계 570이 또한 도 6에 대하여


상술된다.

[0083] [0071]회전 매트릭스(Rcb) 및/또는 스케일 및 비-직교성 매트릭스(A)는 AR 애플리케이션에 대한 입력들로서 사용


될 수 있다. 예를 들어, AR 애플리케이션은:(1)회전 매트릭스(Rcb) (2)스케일 정보, 및 (3)비-직교성 정보 중

하나, 둘, 또는 세 가지 모두를 이용하여, 미가공 자이로스코프 측정치들(ωgyro-meas)을 사전처리하고 그리고/또


는 카메라(100)의 기준 프레임에서 카메라 각 속도들을 획득할 수 있다. 스케일 정보 및 비-직교성 정보는 둘
모두가 스케일 및 비-직교성 매트릭스(A) 이내에 있을 수 있다. 이러한 각 속도들은, 시간 인터벌에서 카메라
(100)(및/또는 모바일 디바이스(10))의 증분 회전을 결정하기 위해서 시간 인터벌에 따라 통합될 수 있다. 이
것은, AR 애플리케이션으로 하여금, 카메라(100) 및/또는 모바일 디바이스(10)가 디스플레이된 이미지에서 발견
되는 피쳐 또는 오브젝트와 관련되어 얼마나 이동할지를 결정하게 할 수 있다. 이러한 방식으로, AR 애플리케
이션은 디스플레이될 증강들을 결정하고 그리고/또는 디스플레이되는 증강들을 수정하는 방법을 결정할 수
있다.

[0084] [0072]어구 "일부 실시형태들에서"와 "예시적인"은 최선의 실시예들이 아닌 단지 실시예를 의미할 수 있다. 본
원에 설명된 방법론들은 애플리케이션에 따라 다양한 수단에 의해 구현될 수 있다. 예를 들어, 컴퓨터 비전 알
고리즘을 적용하기 위한 엘리먼트는 CV 모듈(310), 또는 컴퓨터 비전 알고리즘을 적용하기 위한 다른 수단을 포
함할 수 있다. 예를 들어, 이러한 방법론들은 하드웨어, 펌웨어, 소프트웨어, 또는 이들의 임의의 조합에서 구
현될 수 있다. 하드웨어 구현의 경우, 프로세싱 유닛들, 예를 들어, 프로세서(300)는 하나 또는 그보다 많은
주문형 집적 회로(ASIC)들, 디지털 신호 프로세서(DSP)들, 디지털 신호 프로세싱 디바이스(DSPD)들, 프로그래머
블 로직 디바이스(PLD)들, 필드 프로그래머블 게이트 어레이(FPGA)들, 프로세서들, 제어기들, 마이크로-제어기
들, 마이크로프로세서들, 전자 디바이스들, 본 명세서에 설명된 기능들을 수행하도록 설계된 다른 전자 유닛들
또는 그들의 조합 내에서 구현될 수 있다. 본원에 설명된 모듈들 중 임의의 것, 예를 들어, 모듈들(310-340)은
하드웨어에서 유사하게 구현될 수 있다.

[0085] [0073]펌웨어 및/또는 소프트웨어 관련 구현을 위해, 방법론들은 본 명세서에 설명된 기능들을 수행하는 모듈들
(예를 들어, 절차들, 기능들 등)로 구현될 수 있다. 명령들을 유형적으로 구체화하는 임의의 기계-판독가능한
매체는 본 명세서에 설명된 방법론들을 구현하는데 사용될 수 있다. 예를 들어, 소프트웨어 코드들은 메모리에
저장될 수 있고 프로세서 유닛에 의해 실행될 수 있다. 이와 같이, 방법들(500, 800) 및/또는 도 5에 도시된
방법 중 임의의 것이 머신-판독가능 매체에 의해 그리고/또는 다양한 모듈들에 의해 구현될 수 있다. 유사하게,
모듈들(310-340) 중 임의의 것이 머신-판독가능 매체 상의 펌웨어 및/또는 소프트웨어에서 유사하게 구현될 수
있다. 메모리는 상기 프로세서 유닛 내에 또는 상기 프로세서 유닛 외부에 구현될 수 있다. 본 명세서에 사용
된 바와 같이 상기 용어 "메모리"는 장기, 단기, 휘발성, 비휘발성 또는 다른 메모리의 임의의 타입을 지칭하며
임의의 특정 타입의 메모리 또는 메모리들의 수 또는 메모리가 저장되는 매체의 타입에 제한되지 않는 것이다.

- 20 -
등록특허 10-1565362

[0086] [0074]펌웨어 및/또는 소프트웨어로 구현되는 경우, 상기 기능들은 컴퓨터 판독가능한 매체 상에 하나 이상의
명령들 또는 코드로서 저장되거나, 또는 이들을 통해 전송될 수 있다. 예시들은 데이터 구조로 인코딩된 컴퓨
터-판독 가능한 매체 및 컴퓨터 프로그램으로 인코딩된 컴퓨터-판독가능한 매체를 포함한다. 컴퓨터 판독가능
한 매체는 물리적 컴퓨터 저장 매체를 포함한다. 저장 매체는 컴퓨터에 의해 액세스될 수 있는 임의의 가용한
매체일 수 있다. 예를 들어, 이러한 컴퓨터 판독가능한 매체는 RAM, ROM, EEPROM, CD-ROM 또는 다른 광학 디스
크 저장 매체, 자기 디스크 저장 매체, 반도체 저장매체 또는 다른 저장 장치들, 또는 명령 또는 데이터 구조의
형태로 요구되는 프로그램 코드를 저장하는데 사용될 수 있고, 컴퓨터에 의해 액세스될 수 있는 임의의 다른 자
기 매체, 또는 비일시적 매체의 임의의 다른 형태를 포함하지만, 이들로 제한되는 것은 아니다; 여기서 사용되
는 디스크(disk 및 disc)는 컴팩트 디스크(disc)(CD), 레이저 디스크(disc) , 광 디스크(disc), DVD(digital
versatile disc), 플로피 디스크(disk), 및 블루-레이 디스크(disc)를 포함하며, 여기서 디스크(disk)는 통상
적으로 데이터를 자기적으로 재생하지만, 디스크(disc)는 레이저를 통해 광학적으로 데이터를 재생한다. 상기
조합들 역시 컴퓨터 판독가능한 매체의 범위 내에 포함되어야 한다.

[0087] [0075]컴퓨터-판독가능한 매체상의 저장에 더하여, 명령들 및/또는 데이터는 통신 장치에 포함된 전송 매체 상
의 신호들로서 제공될 수 있다. 예를 들어, 통신 장치는 명령들 및 데이터를 표시하는 신호들을 갖는 트랜시버
를 포함할 수 있다. 상기 명령들 및 데이터는 하나 이상의 프로세서들이 상기 청구범위에 개설된 기능들을 구
현하게 하도록 구성된다. 즉, 상기 통신 장치는 개시된 기능들을 수행하는 정보를 나타내는 신호들을 갖는 전
송 매체를 포함한다. 첫째로, 상기 통신 장치에 포함된 전송 매체는 개시된 기능들을 수행하도록 상기 정보의
제 1 부분을 포함할 수 있는 한편, 둘째로 상기 통신 장치에 포함된 전송 매체는 상기 개시된 기능들을 수행하
도록 상기 정보의 제 2 부분을 포함할 수 있다.

[0088] [0076]제시된 양상들에 대한 앞의 설명은 임의의 본 발명의 기술 분야에서 통상의 지식을 가진 자가 본 발명을
이용하거나 또는 실시할 수 있도록 제공된다. 이러한 양상들에 대한 다양한 변형들은 본 발명의 기술 분야에서
통상의 지식을 가진 자에게 자명할 것이며, 여기에 정의된 일반 원리들은 본 개시물의 정신 또는 범위를 벗어남
이 없이 다른 양상들에 적용될 수 있다.

도면

도면1

- 21 -
등록특허 10-1565362

도면2

- 22 -
등록특허 10-1565362

도면3

도면4

- 23 -
등록특허 10-1565362

도면5

- 24 -
등록특허 10-1565362

도면6

- 25 -
등록특허 10-1565362

도면7

도면8

- 26 -
등록특허 10-1565362

도면9

- 27 -

You might also like