KR101892740B1 - 통합 이미지 마커 생성 방법 및 그 방법을 수행하는 시스템 - Google Patents
통합 이미지 마커 생성 방법 및 그 방법을 수행하는 시스템 Download PDFInfo
- Publication number
- KR101892740B1 KR101892740B1 KR1020160131309A KR20160131309A KR101892740B1 KR 101892740 B1 KR101892740 B1 KR 101892740B1 KR 1020160131309 A KR1020160131309 A KR 1020160131309A KR 20160131309 A KR20160131309 A KR 20160131309A KR 101892740 B1 KR101892740 B1 KR 101892740B1
- Authority
- KR
- South Korea
- Prior art keywords
- image
- image marker
- markers
- marker
- error value
- Prior art date
Links
- 239000003550 marker Substances 0.000 title claims abstract description 242
- 238000000034 method Methods 0.000 title claims description 38
- 238000006243 chemical reaction Methods 0.000 claims description 9
- 230000009466 transformation Effects 0.000 claims description 6
- 230000003190 augmentative effect Effects 0.000 description 10
- 238000004364 calculation method Methods 0.000 description 8
- 238000010586 diagram Methods 0.000 description 7
- 230000006870 function Effects 0.000 description 6
- 239000011159 matrix material Substances 0.000 description 5
- 230000008569 process Effects 0.000 description 5
- 230000014509 gene expression Effects 0.000 description 3
- 238000012986 modification Methods 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 230000008859 change Effects 0.000 description 2
- 238000012800 visualization Methods 0.000 description 2
- 238000013500 data storage Methods 0.000 description 1
- 239000000284 extract Substances 0.000 description 1
- 230000004044 response Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/70—Determining position or orientation of objects or cameras
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T19/00—Manipulating 3D models or images for computer graphics
- G06T19/006—Mixed reality
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/70—Determining position or orientation of objects or cameras
- G06T7/73—Determining position or orientation of objects or cameras using feature-based methods
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/30—Subject of image; Context of image processing
- G06T2207/30204—Marker
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/30—Subject of image; Context of image processing
- G06T2207/30244—Camera pose
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Computer Graphics (AREA)
- Computer Hardware Design (AREA)
- General Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Length Measuring Devices By Optical Means (AREA)
- Image Analysis (AREA)
Abstract
본 발명은 통합 이미지 마커 생성에 관한 것으로, 본 발명의 실시 예에 따른 통합 이미지 마커 생성 시스템은, 입력되는 개별 이미지 마커에 대한 정보를 생성하고, 데이터를 초기화하는 데이터 초기화부; 상기 데이터 초기화부에 의해 생성된 정보 및 초기화된 데이터를 저장하는 저장부; 소정 영역을 촬영하여 영상을 제공하는 카메라; 및 상기 영상 내에 포함된 이미지 마커를 인식하고, 인식된 마커 각각에 대한 카메라의 포즈를 계산하고, 인식된 이미지 마커의 개수가 2개 이상이면, 인식된 이미지 마커 간의 상대 좌표 및 카메라 포즈의 에러 값을 계산하며, 기 저장되어 있는 마커 간의 상대 좌표 및 계산된 카메라 포즈의 에러 값을 계산된 이미지 마커 간의 상대 좌표 및 계산된 카메라 포즈의 에러 값으로 갱신하고, 종료 신호가 입력되는 경우, 저장되어 있는 이미지 마커 간의 상대 좌표를 좌표 변환 대상 이미지 마커 내의 특징점의 3차원 좌표에 적용하여 변환시킴으로써 통합 이미지 마커를 생성하는 제어부를 포함한다.
Description
본 발명은 통합 이미지 마커 생성에 관한 것으로, 상세하게는 게임 콘텐츠 등의 콘텐츠 구성을 가능하게 할 수 있도록 다수의 이미지 마커를 통합하여 단일의 통합 이미지 마커를 생성하는 방법 및 그 방법을 수행하는 시스템에 관한 것이다.
내츄럴 이미지 마커를 사용한 증강현실 기술은 카메라의 떨림 정도가 작아 증강현실 분야에서 많이 사용되고 있다. 또한, 2개 이상의 내츄럴 이미지 마커를 사용한 증강현실 콘텐츠도 많이 개발되고 있다.
이러한 내츄럴 이미지 마커를 사용한 증강현실 기술은 이미지 마커 내의 수백개의 2차원 특징점을 추출하고, 추출된 2차원 특징점에 대하여 3차원 위치 값을 매핑한 후, 카메라 입력 영상과 이미지 마커에서 추출된 2차원 특징점을 비교하여 카메라의 위치 값을 계산한다.
종래의 내츄럴 이미지 마커를 사용한 증강현실 기술은 이미지 마커에서 추출된 2차원 특징점에 매핑된 3차원 위치 값을 이미지 마커마다 독립적으로 가지고 있어, 다수의 마커가 배치된 증강현실 공간에서 하나의 좌표계를 활용한 게임 콘텐츠 구성이 어렵다는 한계가 있다.
또한, 종래의 내츄럴 이미지 마커를 사용한 증강현실 기술로는 이미지 마커의 일부분만 카메라에 들어올 경우 카메라의 위치를 계산하기 힘들다는 단점이 있다.
따라서, 본 발명은 상기와 같은 종래 기술의 문제점을 해결하기 위하여 제안된 것으로, 본 발명의 목적은, 게임 콘텐츠 등의 콘텐츠 구성을 가능하게 할 수 있도록 다수의 이미지 마커를 통합하여 단일의 통합 이미지 마커를 생성하는 방법 및 그 방법을 수행하는 시스템을 제공함에 있다.
상기와 같은 목적을 달성하기 위한 본 발명의 실시 예에 따른 통합 이미지 마커 생성 시스템은, 입력되는 개별 이미지 마커에 대한 정보를 생성하고, 데이터를 초기화하는 데이터 초기화부; 상기 데이터 초기화부에 의해 생성된 정보 및 초기화된 데이터를 저장하는 저장부; 소정 영역을 촬영하여 영상을 제공하는 카메라; 및 상기 영상 내에 포함된 이미지 마커를 인식하고, 인식된 마커 각각에 대한 카메라의 포즈를 계산하고, 인식된 이미지 마커의 개수가 2개 이상이면, 인식된 이미지 마커 간의 상대 좌표 및 카메라 포즈의 에러 값을 계산하며, 기 저장되어 있는 마커 간의 상대 좌표 및 계산된 카메라 포즈의 에러 값을 계산된 이미지 마커 간의 상대 좌표 및 계산된 카메라 포즈의 에러 값으로 갱신하고, 종료 신호가 입력되는 경우, 저장되어 있는 이미지 마커 간의 상대 좌표를 좌표 변환 대상 이미지 마커 내의 특징점의 3차원 좌표에 적용하여 변환시킴으로써 통합 이미지 마커를 생성하는 제어부를 포함한다.
본 발명의 실시 예에 따른 통합 이미지 생성 방법은, 입력되는 개별 이미지 마커에 대한 정보를 생성하고, 데이터를 초기화하는 단계; 기 설정된 영역을 카메라로 촬영하고, 촬영된 영상 내에 포함된 이미지 마커를 인식하고, 인식된 마커 각각에 대한 카메라의 포즈를 계산하는 단계; 인식된 이미지 마커의 개수가 2개 이상이면, 인식된 이미지 마커 간의 상대 좌표 및 카메라 포즈의 에러 값을 계산하는 단계; 기 저장되어 있는 마커 간의 상대 좌표 및 계산된 카메라 포즈의 에러 값을 계산된 이미지 마커 간의 상대 좌표 및 계산된 카메라 포즈의 에러 값으로 갱신하는 단계; 및 종료 신호가 입력되었는지를 판단하여, 상기 종료 신호가 입력되었으면, 저장되어 있는 이미지 마커 간의 상대 좌표를 좌표 변환 대상 이미지 마커 내의 특징점의 3차원 좌표에 적용하여 변환시킴으로써 통합 이미지 마커를 생성하는 단계를 포함한다.
이와 같은 본 발명의 실시 예에 따르면, 다수의 이미지 마커 사이의 상대 좌표를 계산하고, 계산된 상대 좌표를 이용하여 다수의 이미지 마커를 하나의 좌표계로 표현함으로써 게임 콘텐츠 등의 콘텐츠 구성이 가능하다.
따라서, 본 발명의 실시 예를 통해 단일 좌표계상에서 콘텐츠를 구성할 수 있어, 콘텐츠 구성이 편리해지고, 촬영된 영상에 여러 개의 마커 이미지의 일부분만이 보일 경우에도 안정적으로 카메라 포즈를 계산할 수 있다.
도 1(a)은 통합 이미지 마커 생성에 이용되는 이미지 마커 하나에 포함된 다수의 특징점을 나타낸 도면이다.
도 1(b)은 도 1(a)의 각 특징점의 2차원 위치 및 3차원 위치를 나타낸 도면이다.
도 2(a)는 공간상에 배치된 다수의 이미지 마커를 통합하여 단일의 통합 이미지 마커가 생성된 상태를 도시한 도면이다.
도 2(b)는 각 이미지 마커별 특징점의 로컬 좌표계상의 2차원 위치 및 3차원 위치의 일례를 나타낸 도면이다.
도 2(c)는 각 이미지 마커별 특징점의 로컬 좌표계상의 2차원 위치 및 글로벌 좌표계상의 3차원 위치의 일례를 나타낸 도면이다.
도 3은 본 발명의 실시 예에 따른 다수의 이미지 마커를 통합하여 단일의 통합 이미지 마커를 생성하는 과정을 도시한 순서도이다.
도 4는 본 발명의 실시 예에 따른 통합 이미지 마커 생성 과정에서 제공되는 이미지 마커에 대한 인식 결과의 일례를 도시한 도면이다.
도 5는 본 발명의 바람직한 실시 예에 따른 통합 이미지 마커 생성 시스템의 구성의 일례를 도시한 도면이다.
도 1(b)은 도 1(a)의 각 특징점의 2차원 위치 및 3차원 위치를 나타낸 도면이다.
도 2(a)는 공간상에 배치된 다수의 이미지 마커를 통합하여 단일의 통합 이미지 마커가 생성된 상태를 도시한 도면이다.
도 2(b)는 각 이미지 마커별 특징점의 로컬 좌표계상의 2차원 위치 및 3차원 위치의 일례를 나타낸 도면이다.
도 2(c)는 각 이미지 마커별 특징점의 로컬 좌표계상의 2차원 위치 및 글로벌 좌표계상의 3차원 위치의 일례를 나타낸 도면이다.
도 3은 본 발명의 실시 예에 따른 다수의 이미지 마커를 통합하여 단일의 통합 이미지 마커를 생성하는 과정을 도시한 순서도이다.
도 4는 본 발명의 실시 예에 따른 통합 이미지 마커 생성 과정에서 제공되는 이미지 마커에 대한 인식 결과의 일례를 도시한 도면이다.
도 5는 본 발명의 바람직한 실시 예에 따른 통합 이미지 마커 생성 시스템의 구성의 일례를 도시한 도면이다.
본문에 개시되어 있는 본 발명의 실시 예들에 대해서, 특정한 구조적 내지 기능적 설명들은 단지 본 발명의 실시 예를 설명하기 위한 목적으로 예시된 것으로, 본 발명의 실시 예들은 다양한 형태로 실시될 수 있으며 본문에 설명된 실시 예들에 한정되는 것으로 해석되어서는 안 된다.
본 발명은 다양한 변경을 가할 수 있고 여러 가지 형태를 가질 수 있는 바, 특정 실시 예들을 도면에 예시하고 본문에 상세하게 설명하고자 한다. 그러나, 이는 본 발명을 특정한 개시 형태에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다.
제1, 제2 등의 용어는 다양한 구성요소들을 설명하는데 사용될 수 있지만, 상기 구성요소들은 상기 용어들에 의해 한정되어서는 안 된다. 상기 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 사용된다. 예를 들어, 본 발명의 권리 범위로부터 이탈되지 않은 채 제1 구성요소는 제2 구성요소로 명명될 수 있고, 유사하게 제2 구성요소도 제1 구성요소로 명명될 수 있다.
어떤 구성요소가 다른 구성요소에 “연결되어” 있다거나 “접속되어” 있다고 언급된 때에는, 그 다른 구성요소에 직접적으로 연결되어 있거나 또는 접속되어 있을 수도 있지만, 중간에 다른 구성요소가 존재할 수도 있다고 이해되어야 할 것이다. 반면에, 어떤 구성요소가 다른 구성요소에 “직접 연결되어” 있다거나 “직접 접속되어” 있다고 언급된 때에는, 중간에 다른 구성요소가 존재하지 않는 것으로 이해되어야 할 것이다. 구성요소들 간의 관계를 설명하는 다른 표현들, 즉 “~사이에”와 “바로 ~사이에” 또는 “~에 이웃하는”과 “~에 직접 이웃하는” 등도 마찬가지로 해석되어야 한다.
본 출원에서 사용한 용어는 단지 특정한 실시 예를 설명하기 위해 사용된 것으로, 본 발명을 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 출원에서, “포함하다” 또는 “가지다” 등의 용어는 개시된 특징, 숫자, 단계, 동작, 구성요소, 부분품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부분품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.
다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가지고 있다. 일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥 상 가지는 의미와 일치하는 의미를 가지는 것으로 해석되어야 하며, 본 출원에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.
한편, 어떤 실시 예가 달리 구현 가능한 경우에 특정 블록 내에 명기된 기능 또는 동작이 순서도에 명기된 순서와 다르게 일어날 수도 있다. 예를 들어, 연속하는 두 블록이 실제로는 실질적으로 동시에 수행될 수도 있고, 관련된 기능 또는 동작에 따라서는 상기 블록들이 거꾸로 수행될 수도 있다.
이하, 본 발명에서 제안하는 다수의 이미지 마커를 통합하여 단일의 통합 이미지 마커를 생성하는 시스템 및 방법에 대하여 첨부된 도면을 참조하여 상세하게 설명한다.
본 발명의 통합 이미지 마커 생성 시스템의 구성을 설명하기에 앞서, 본 발명에서 이용되는 이미지 마커의 특징점의 2차원 위치 및 3차원 위치를 정의하는 방법에 대해서 살펴보기로 한다.
도 1은 통합 이미지 마커 생성에 이용되는 이미지 마커 하나에 포함되는 다수의 특징점에 대한 2차원 위치 및 3차원 위치를 정의하는 방법을 설명하기 위한 도면이다.
여기서, 도 1(a)은 통합 이미지 마커 생성에 이용되는 이미지 마커 하나에 포함된 다수의 특징점을 나타낸 도면이고, 도 1(b)은 도 1(a)의 각 특징점의 2차원 위치 및 3차원 위치를 나타낸 도면이다.
도 1을 참조하면, 하나의 이미지 마커(100)에는 다수의 특징점(110)이 포함되어 있으며, 각 특징점(110)에 대한 이미지상의 좌표인 2차원 위치(130)와 3차원 공간상의 좌표인 3차원 위치(140)가 정의된다.
이때, 3차원 공간상의 좌표인 3차원 위치(140)는 2차원 위치(130)와 3차원 로컬(local) 좌표축(120) 및 scale 값으로부터 계산된다. 특징점에 대한 3차원 위치 계산 방법과 관련된 본 발명이 속하는 기술분야에서 기 공지되어 있는 기술로서 이에 대한 상세한 설명은 생략한다.
도 1에는, 이미지 마커(100)의 좌측 상단을 3차원 로컬 좌표축의 원점(0, 0, 0)으로 하고, 이미지 마커(100)의 가로 방향을 3차원 좌표의 X축, 이미지 마커(100)의 세로 방향을 3차원 좌표의 Z축, 이미지 마커(100)에서 뒤로 들어가는 방향을 3차원 좌표의 Y축으로 설정하고, scale 값을 0.1로 설정하여, 2차원 이미지 마커(100) 상에서 1만큼 이동한 좌표 변화가 3차원 좌표상에서는 0.1 움직이게 한 경우가 예시되어 있다.
물론, 좌표축의 설정은 다양하게 변경 가능한 것으로, 예를 들면 이미지 마커(100)의 가로 방향을 3차원 좌표의 X축으로, 이미지 마커(100)의 세로 방향을 Y축으로, 이미지 마커(100)에서 앞으로 나오는 방향을 Z축으로 설정할 수도 있다.
또한, 3차원 로컬 좌표축의 원점을 이미지 마커(100)의 좌측 하단으로 설정할 수도 있다.
그리고, 본 발명에 있어서, 이미지 마커(100)에서 사용되는 3차원 로컬 좌표축(120)은 이미지 마커마다 존재하는 로컬 좌표계이고, 좌표축의 위치 및 방향은 모든 이미지 마커 내에서 동일하게 정의되고, scale 값도 동일하게 정의된다.
따라서, 다수의 이미지 마커(100) 내에서 같은 위치의 2차원 위치(130)를 가지는 특징점(110)은 3차원 위치(140) 역시 동일하다.
본 발명은 이미지 마커 간의 상대 위치를 계산하고, 계산된 상대 위치 값을 기준 이미지 마커 이외의 다른 이미지 마커에 적용하여 이미지 마커 내의 특징점의 3차원 위치를 변환시킴으로써, 각각의 로컬 좌표계상에서 위치가 표현되는 다수의 이미지 마커별 특징점을 하나의 글로벌(global) 좌표계상에서 표현하는 방법을 제안한다.
도 2는 다수의 이미지 마커 내의 특징점의 로컬 좌표계상의 3차원 위치를 하나의 글로벌 좌표계상의 3차원 위치로 변환함으로써, 다수의 이미지 마커를 통합하여 단일의 통합 이미지 마커를 생성하는 방법을 설명하기 위한 도면이다.
여기서, 도 2(a)는 공간상에 배치된 다수의 이미지 마커를 통합하여 단일의 통합 이미지 마커가 생성된 상태를 도시한 도면이고, 도 2(b)는 각 이미지 마커별 특징점의 로컬 좌표계상의 2차원 위치 및 3차원 위치의 일례를 나타낸 도면이고, 도 2(c)는 각 이미지 마커별 특징점의 로컬 좌표계상의 2차원 위치 및 글로벌 좌표계상의 3차원 위치의 일례를 나타낸 도면이다.
도 2(a)에 도시된 실시 예는 공간에 3개의 이미지 마커(200, 210, 220)가 배치되어 있고, 3개의 이미지 마커 각각의 3차원 로컬 좌표축의 원점(201, 211, 221)은 이미지 마커(200, 210, 220)의 좌측 상단으로 가정하고, 이미지 마커 1(200)을 기준으로 이미지 마커 2(210)는 X축으로 상대적으로 70만큼 떨어져 있고, 이미지 마커 1(200)을 기준으로 이미지 마커 3(220)은 X축으로 50만큼, Z축으로 55만큼 떨어져 있고, 3개의 이미지 마커(200, 210, 220)는 동일 평면상에 배치된 경우를 나타낸 것이다.
도 2(b)에 나타낸 이미지 마커별 특징점의 3차원 위치는 각 이미지 마커(200, 210, 220)의 3차원 로컬 좌표축의 원점(201, 211, 221)을 기준으로 하여 각각 결정된 좌표값의 일례로서, 해당 좌표값은 설정에 따라 달라질 수 있다.
그리고, 도 2(c)에 나타낸 이미지 마커별 특징점의 3차원 위치는 이미지 마커 1(200)의 3차원 로컬 좌표축의 원점(201)을 3차원 글로벌 좌표축의 원점으로 하여 이미지 마커 2(210)의 특징점의 3차원 위치 및 이미지 마커 3(220)의 특징점의 3차원 위치를 변환하여 결정된 좌표값의 일례이다.
도 2(b)와 도 2(c)를 비교하면, 이미지 마커 2(210)의 특징점의 3차원 위치 중 X 좌표의 값이 70만큼 증가하였고, 이미지 마커 3(220)의 특징점의 3차원 위치 중 X 좌표의 값이 50만큼 증가하고, Z 좌표의 값이 55만큼 증가하였음을 알 수 있다.
결국, 이미지 마커 1(200)의 3차원 로컬 좌표축의 원점(201)을 3차원 글로벌 좌표축의 원점으로 하여 이미지 마커 2(210)의 특징점의 3차원 위치 및 이미지 마커 3(220)의 특징점의 3차원 위치를 변환한다는 것은 이미지 마커 1(200)을 기준으로 한 이미지 마커 2(210)의 상대적 거리 차이만큼 이미지 마커 2(210)의 특징점의 3차원 위치의 해당 좌표를 증가시키고, 이미지 마커 1(200)을 기준으로 한 이미지 마커 3(220)의 상대적 거리 차이만큼 이미지 마커 3(220)의 특징점의 3차원 위치의 해당 좌표를 증가시키는 것을 의미한다.
즉, 도 2의 실시 예에 있어, 이미지 마커 1(200)을 기준으로 이미지 마커 2(210)는 X축으로 상대적으로 70만큼 떨어져 있고, 이미지 마커 1(200)을 기준으로 이미지 마커 3(220)은 X축으로 50만큼, Z축으로 55만큼 떨어져 있다.
따라서, 이미지 마커 1(200)의 3차원 로컬 좌표축의 원점(201)을 3차원 글로벌 좌표축의 원점으로 하여 이미지 마커 2(210)의 특징점의 3차원 위치 및 이미지 마커 3(220)의 특징점의 3차원 위치를 변환하면, 이미지 마커 2(210)의 특징점의 3차원 위치 중 X 좌표의 값이 70만큼 증가하고, 이미지 마커 3(220)의 특징점의 3차원 위치 중 X 좌표의 값이 50만큼 증가하고, Z 좌표의 값이 55만큼 증가하는 것이다.
한편, 도 2의 실시 예는 설명의 편의를 위하여 이미지 마커의 회전을 고려하지 않고, 이미지 마커가 동일 평면에 있는 것을 가정하였으나, 본 발명에서 제안되는 방법은 이미지 마커가 동일 평면에 있지 않은 경우에도 적용 가능하며, 또한 이미지 마커가 회전된 경우에도 적용 가능하다.
이상에서와 같이, 이미지 마커 2(210)의 특징점 및 이미지 마커 3(220)의 특징점은 이미지 마커 1(200, 여기서는 이미지 마커 1이 기준 이미지 마커가 됨)의 3차원 로컬 좌표축(201)을 기준으로 하는 하나의 글로벌 좌표계상에서 표현된다.
따라서, 이미지 마커 1(200)의 3차원 로컬 좌표축(201)을 글로벌 좌표축으로 하는 글로벌 좌표계가 형성되고, 이미지 마커 1(200), 이미지 마커 2(210) 및 이미지 마커 3(220)을 포함하는 단일의 통합 이미지 마커(230)가 생성된다.
즉, 종래에는 이미지 마커별 3차원 로컬 좌표축(201, 211, 221)을 기준으로 하는 3개의 좌표계가 존재하나, 본 발명에서와 같이 단일의 통합 이미지 마커(230)를 생성하면, 이미지 마커 1의 3차원 로컬 좌표축(201, 여기서는 이미지 마커 1의 3차원 로컬 좌표축이 글로벌 좌표축이 됨)을 기준으로 하는 1개의 글로벌 좌표계를 이용하여 모든 특징점의 3차원 위치를 표현할 수 있다.
이상에서는 다수의 이미지 마커의 특징점의 3차원 위치를 각 이미지 마커의 3차원 로컬 좌표축의 원점을 기준으로 하여 각각 표현하는 방식이 아닌, 다수의 이미지 마커 중 기준 이미지 마커의 3차원 로컬 좌표축의 원점을 기준으로 다른 나머지 이미지 마커의 특징점의 3차원 위치를 표현하는 방식에 대해서 살펴보았다.
이하에서는 첨부된 도면을 참조하여, 본 발명에서 제안하는 다수의 이미지 마커를 통합하여 단일의 통합 이미지 마커를 생성하는 과정을 살펴보기로 한다.
도 3은 본 발명의 실시 예에 따른 다수의 이미지 마커를 통합하여 단일의 통합 이미지 마커를 생성하는 과정을 도시한 순서도로서, 도 3에 도시되어 있는 과정은 도 5에 도시된 통합 이미지 마커 생성 시스템에 의해 수행될 수 있다.
도 3을 참조하면, 통합 이미지 마커 생성 시스템은 증강현실 구현 등의 목적 실현을 위해 이용되기 위해 입력되는 개별 이미지 마커에 대한 각각의 정보를 생성하고, 단일의 통합 이미지 마커를 생성하기 위한 데이터를 초기화한다(S300).
구체적으로, 상기 단계 S300은 입력되는 각 이미지 마커에 대한 정보를 생성하는 단계(S301)와, 데이터를 초기화시키는 단계(S302)로 이루어질 수 있다.
상기 단계 S301에서, 이미지 마커와 함께 부가 정보로서, 이미지 마커가 위치하는 평면과 관련된 정보(이미지 마커별 평면 정보)가 입력될 수 있다.
따라서, 이미지 마커별 평면 정보를 통해, 비교되는 이미지 마커가 동일한 평면에 위치하는지 다른 평면에 위치하는지를 알 수 있다.
즉, 입력되는 다수의 이미지 마커는 공간 상에 배치되기 때문에, 입력되는 모든 이미지 마커가 동일 평면상에 위치할 수도 있으나, 서로 다른 평면상에 위치할 수도 있기 때문에, 이미지 마커가 위치하는 평면에 대한 정보가 필요하다.
예를 들어, 이미지 마커 1이 제 1 평면상에 위치하고, 이미지 마커 2가 제 1 평면상에 위치하고, 이미지 마커 3이 제 2 평면상에 위치하는 것으로 가정하는 경우, 시스템에, 이미지 마커 1와 함께 이미지 마커 1의 평면 정보로서 ‘1’이 입력되고, 이미지 마커 2와 함께 이미지 마커 2의 평면 정보로서 ‘1’이 입력되고, 이미지 마커 3과 함께 이미지 마커 3의 평면 정보로서 ‘2’가 입력될 수 있다.
따라서, 이미지 마커 1의 평면 정보가 ‘1’이고, 이미지 마커 2의 평면 정보가 ‘1’이며, 이미지 마커 3의 평면 정보가 ‘2’이므로, 시스템은 이미지 마커 1은 이미지 마커 2와 동일한 평면상에 위치하고, 이미지 마커 3과는 다른 평면상에 위치함을 알 수 있다.
그리고, 상기 단계 S301에서, 각 이미지 마커에 대한 정보는 각 이미지 마커별 특징점, 각 특징점별 2차원 위치 및 3차원 위치일 수 있다.
상기 단계 S302에서는, 각각의 이미지 마커에 대한 고유의 식별정보가 부여될 수 있다. 예를 들어, 식별정보로는 숫자가 이용될 수 있으며, 각 이미지 마커별로 서로 다른 숫자가 부여됨으로써, 각 이미지 마커는 숫자로 식별 가능하다.
또한, 상기 단계 S302에서는, 입력되는 이미지 마커를 이용하여 조합 가능한 모든 이미지 마커 쌍에 대한 에러 값과 상대 좌표 값이 초기화될 수 있다.
이때, 에러 값은 임의의 큰 수(ex, 특징점의 개수×100)로 초기화되고, 상대 좌표 저장 영역은 4×4 행렬을 가지는 Identity 매트릭스 값으로 초기화될 수 있다.
예를 들어, n개의 이미지 마커로 구성된 공간을 하나의 통합 이미지 마커로 통합할 때, 이미지 마커 쌍에 대한 데이터 초기화를 위해서 n×n개의 데이터 저장 영역이 할당된다.
이때, 이미지 마커 쌍에 대한 에러 값과 상대 좌표 값은 다음과 같이 초기화될 수 있다.
[다음]
Data[i][j].Error = 특징점의 개수×100(임의의 큰수)
Data[i][j].relativePose = IdentityMatrix
여기서, Data[i][j].Error는 이미지 마커 쌍 (i, j)에 대한 에러 값이고, Data[i][j].relativePose는 이미지 마커 쌍 (i, j)에 대한 상대 좌표 값이다(i < j).
상기 단계 S300 이후, 증강현실 구현 등을 위해 기 설정된 공간의 소정 영역을 카메라를 이용하여 촬영하고(S310), 시스템은 촬영된 영상을 단계 S300에서 입력받은 이미지 마커와 비교하여, 촬영된 영상 내에 포함된 이미지 마커를 인식하고(S320), 인식된 이미지 마커에 대한 카메라 포즈를 계산한다(S330).
상기 단계 S330 이후, 시스템은 인식된 이미지 마커의 개수가 2개 미만인지를 확인하여(S340), 인식된 이미지 마커의 개수가 2개 미만이면(S340-예), 촬영된 영상이 유효하지 않다고 판단하여 단계 S310를 수행한다.
즉, 인식된 이미지 마커의 개수가 2개 미만인 경우에, 시스템은 입력되는 다음 영상 내에 포함된 이미지 마커를 인식하고, 인식된 마커 각각에 대한 카메라의 포즈를 계산한다.
그리고, 인식된 이미지 마커의 개수가 2개 이상이면(S340-아니오), 시스템은 촬영된 영상이 유효하다고 판단하여, 인식된 이미지 마커 간의 상대 좌표를 계산하고, 단계 S340에서 계산된 카메라 포즈에 대한 에러 값을 계산한다(S350).
즉, 시스템은 인식된 이미지 마커의 개수가 2개 이상인 경우에, 마커 간 상대 좌표와 카메라 포즈에 대한 에러 값을 계산한다.
이때, 상기 단계 S350에 있어서, 단계 S320에서 인식된 이미지 마커의 개수가 3개 이상이면, 시스템은 모든 조합 가능한 쌍에 대해서 상대 좌표를 계산한다.
예를 들어, 단계 S320에서 인식된 이미지 마커의 개수가 3개이고, 각 이미지 마커를 마커 1, 마커 2 및 마커 3으로 정의하면, 단계 S350에서 시스템은 쌍 (마커 1, 마커 2), 쌍 (마커 1, 마커 3) 및 쌍 (마커 2, 마커 3) 각각에 대한 상대 좌표와 카메라 포즈에 대한 에러 값을 계산하게 된다.
이때, 상기 단계 S350에서 이미지 마커 간의 상대 좌표의 계산은 단계 S300에서 부여된 고유 식별정보를 바탕으로 수행될 수 있다.
예를 들어, 상기 단계 S300에서 고유 식별정보가 숫자로 부여된 경우, 시스템은 고유 식별정보가 낮은 이미지 마커를 기준으로 하여 고유 식별정보가 높은 이미지 마커의 상대 좌표를 계산할 수 있다.
만약, 고유 식별정보가 각각 1과 2인 이미지 마커 쌍에 대해 상대 좌표를 계산할 경우, 시스템은 고유 식별정보가 1인 이미지 마커를 기준으로 고유 식별정보가 2인 이미지 마커의 상대 좌표를 계산할 수 있다.
즉, 이미지 마커 간 상대 좌표를 계산하기 위해서는 기준 이미지 마커를 설정하게 되며, 상기 예에서는 고유 식별정보가 1인 이미지 마커가 기준 이미지 마커로 설정된 경우이다.
또한, 상기 단계 S350에서는, 시스템은 단계 S330에서 계산된 카메라 포즈에 대한 에러 값을 계산한다.
이때, 시스템은 단계 S300에서 입력되는 이미지 마커에 대한 평면 정보를 바탕으로, 상대 좌표를 계산하기 위한 이미지 마커 쌍이 동일 평면상에 위치하지 않는 것으로 판단된 경우, 일반적으로 증강현실 분야에서 많이 사용되는 Reprojection Error 값(Error = Func(인식된 특징점의 3차원 위치, 인식된 특징점의 2차원 위치, 계산된 카메라 포즈))을 사용할 수 있다.
반면, 시스템은 단계 S300에서 입력되는 이미지 마커에 대한 평면 정보를 바탕으로, 상대 좌표를 계산하기 위한 이미지 마커 쌍(마커 j, 마커 k)(여기서, j>k인 것으로 가정)이 동일 평면상에 위치하는 것으로 판단된 경우, 카메라 포즈에 대한 에러 값 계산의 정확도를 높이기 위하여, Reprojection Error 값을 사용하는 대신에 하기와 같은 수학식 1을 사용할 수 있다.
[수학식 1]
여기서, Pi는 변환 대상 이미지 마커(k) 상에 있는 각각의 특징점을 계산된 상대 좌표로 변환한 3차원 좌표 값으로, 하기의 수학식 2에 의해 계산될 수 있다.
[수학식 2]
Pi = Rjk * (변환 대상 이미지 마커(k) 상에 있는 특징점에 대한 로컬 좌표계상의 3차원 위치, 1)
그리고, Rjk는 기준 이미지 마커(j)를 기준으로 한 변환 대상 이미지 마커(k)의 상대 좌표로서, 회전 매트릭스인 R과 위치 벡터인 t로 구성되고, 다음의 구성을 가지는 4×4 매트릭스이다.
이와 같이, Rjk는 4×4 매트릭스의 구성을 가지기 때문에, 수학식 2에 있어서의 Rjk에 곱해지는 좌표 또한 4개의 원소로 구성되어야 하며, ‘변환 대상 이미지 마커(k) 상에 있는 특징점에 대한 로컬 좌표계상의 3차원 위치’는 3개의 좌표 값으로 이루어진다.
이에, 수학식 2에 기재되어 있는 바와 같이, ‘변환 대상 이미지 마커(k) 상에 있는 특징점에 대한 로컬 좌표계상의 3차원 위치’의 뒤에 ‘1’이 추가되어 있음을 알 수 있다.
한편, 수학식 1에서, |Pi·y|는 3차원 좌표 Pi에서 추출된 y축 성분의 절대값이고, |Pi·z|는 3차원 좌표 Pi에서 추출된 z축 성분의 절대값이다.
이때, 이미지 마커에 대한 3차원 좌표축의 x축 및 z축이 이미지 좌표축의 x축 및 y축과 대응될 경우에 에러 값 계산에 |Pi·y|를 이용하고, 이미지 마커에 대한 3차원 좌표축의 x축 및 y축이 이미지 좌표축의 x축 및 y축과 대응될 경우에 에러 값 계산에 |Pi·z|를 이용한다.
그리고, ∑|Pi·y|는 변환 대상 이미지 마커(k) 상에 있는 모든 특징점의 3차원 위치를 기준 이미지 마커(j)를 기준으로 하는 좌표계상의 3차원 좌표 Pi로 변환한 후, y축 성분에 대한 절대값의 총 합을 나타내고, ∑|Pi·z|는 변환 대상 이미지 마커(k) 상에 있는 모든 특징점의 3차원 위치를 기준 이미지 마커(j)를 기준으로 하는 좌표계상의 3차원 좌표 Pi로 변환 한 후, z축 성분에 대한 절대값의 총 합을 나타낸다.
이때, 이미지 마커 쌍(j, k)에 대해 계산한 카메라 포즈에 에러가 없다면, 상대 좌표 값의 에러 역시 없게 되고, 추출된 y축 성분 혹은 추출된 z축 성분은 0이 된다.
반면, 이미지 마커 쌍(j, k)에 대해 계산한 카메라 포즈에 에러가 많을 수록, 상대 좌표 값의 에러 역시 많아지게 되고, 추출된 y축 성분 혹은 추출된 z축 성분은 커지게 된다.
따라서, 카메라 포즈에 에러가 없다면, ∑|Pi·y| 혹은 ∑|Pi·z|의 값은 0이 될 것이고, ∑|Pi·y| 혹은 ∑|Pi·z|의 값이 클수록 카메라 포즈에 에러가 많다는 것을 의미한다.
상기 단계 S350 이후, 시스템은 기 저장되어 있는 이미지 마커 간의 상대 좌표와 카메라 포즈에 대한 에러 값을 단계 S350에서 계산된 이미지 마커 간의 상대 좌표와 카메라 포즈에 대한 에러 값으로 갱신한다(S360).
이때, 시스템은 단계 S350에서 계산된 카메라 포즈에 대한 에러 값이 기 저장되어 있는 카메라 포즈에 대한 에러 값보다 작은 경우에, 기 저장된 이미지 마커 간의 상대 좌표와 카메라 포즈에 대한 에러 값을 갱신한다.
그리고, 시스템은 단계 S350에서 계산된 카메라 포즈에 대한 에러 값이 기 저장되어 있는 카메라 포즈에 대한 에러 값 이상인 경우에는 기 저장된 이미지 마커 간의 상대 좌표와 카메라 포즈에 대한 에러 값을 갱신하지 않는다.
이에 따라, 최종적으로 에러 값이 가장 작은 카메라 포즈 값인 경우에 계산된 이미지 마커 간의 상대 좌표가 저장된다.
상기 단계 S360 이후, 시스템은 이미지 마커에 대한 인식 결과를 제공하여(S370), 이미지 마커에 대한 인식 결과를 사용자가 확인할 수 있도록 한다.
상기 단계 S370은 사용자에게 이미지 마커에 대한 인식 결과를 제공하여 사용자가 카메라의 움직임을 조정하여 좀 더 정확한 이미지 마커에 대한 인식 결과를 얻을 수 있도록 하기 위한 것으로서, 필요에 따라 생략될 수 있다.
예를 들어, 상기 단계 S370에서, 시스템은 카메라 포즈에 대한 에러 값을 text 형식으로 제공하거나, 단계 S330에서 획득한 카메라 포즈와 S350단계에서 획득한 상대 좌표를 사용하여 3차원의 객체를 특정 위치에 가시화하여 제공할 수 있다. 또한 인식된 2차원의 특징점을 입력된 영상에 겹쳐 보여 주는 등의 가시화를 통해, 사용자로 하여금 현재 카메라 상태(인식된 마커의 수, 계산된 카메라 포즈에 대한 정확성)를 알려준다.
도 4에는 본 발명의 실시 예에 따른 통합 이미지 마커 생성 과정에서 제공되는 이미지 마커에 대한 인식 결과의 일례가 도시되어 있다.
도 4에 도시된 예는 입력 영상(400)에서 두 개의 이미지 마커(410, 420)가 인식된 경우로서, 인식된 두 개의 이미지 마커(410, 420)에 포함된 다수의 특징점 중에서 카메라에 의해 촬영된 영상과 매칭되어 인식된 2차원 특징점(430, 440)이 검정색의 점으로 표시되어 있다.
그리고, 계산된 카메라 포즈의 정확성을 확인할 수 있도록, 계산된 카메라 포즈의 정확성이 이미지 마커(410, 420)의 좌측 하상에 3차원 객체(450, 460)로 표시되어 있다.
이와 같이, 이미지 마커에 대한 인식 결과를 제공하는 단계 S370을 통해, 사용자는 이미지 마커에 대한 인식이 잘 이루어지고 있는지, 카메라의 포즈의 계산이 얼마나 정확하게 이루어지고 있는지를 알 수 있다.
따라서, 사용자는 이미지 마커에 대한 인식이 잘 이루어지지 않고 있거나, 카메라의 포즈 계산이 정확하지 않다고 판단되면, 카메라의 위치를 변경하여, 이미지 마커에 대한 인식이 정확하게 이루어지도록 하거나, 카메라의 포즈에 대한 계산이 정확하게 이루어지도록 할 수 있다.
상기 단계 S370 이후, 시스템은 종료 신호가 입력되는지를 판단하고(S380), 판단 결과, 종료 신호가 입력되지 않았으면(S380-아니오), 단계 S310을 수행한다.
반면, 종료 신호가 입력된 것으로 판단되면(S380-예), 시스템은 저장되어 있는 이미지 마커 간의 상대 좌표를 좌표 변환 대상 이미지 마커 내의 특징점의 3차원 좌표에 적용하여 변환시킴으로써 통합 이미지 마커를 생성 및 저장한다(S390).
이때, 상기 시스템은, 3차원 위치 계산의 정확도를 높이기 위하여, 동일한 평면에 위치하는 이미지 마커 쌍에 대해서 먼저 좌표 변환시킨 후, 서로 다른 평면에 위치하는 이미지 마커 쌍에 대해서 좌표 변환시킨다.
또한, 상기 시스템은 동일한 평면에 위치하는 이미지 마커 쌍에 대해서 혹은 서로 다른 평면에 위치하는 이미지 마커 쌍에 대해서 좌표 변환시키는 경우, 카메라 포즈의 에러 값이 작은 이미지 쌍에 대해서 먼저 좌표 변환시킨다.
즉, 이와 같은 좌표 변환 순서에 따르면, 동일한 평면에 위치하고, 카메라 포즈의 에러 값이 가장 작은 이미지 쌍이 가장 먼저 좌표 변환되고, 서로 다른 평면에 위치하고, 카메라 포즈의 에러 값이 가장 큰 이미지 쌍이 가장 나중에 좌표 변환된다.
이상에서는 본 발명의 실시 예에 따른 통합 이미지 마커 생성 방법에 대해서 설명하였다. 이하에서는 상기에서 살펴본 통합 이미지 마커 생성 방법을 실행하는 구체적인 구성에 대해서 살펴보기로 한다.
도 5는 본 발명의 바람직한 실시 예에 따른 통합 이미지 마커 생성 시스템의 구성의 일례를 도시한 도면이다.
도 5를 참조하면, 본 발명의 바람직한 실시 예에 따른 통합 이미지 마커 생성 시스템(500)은 기능 수행을 위한 적어도 하나 이상의 프로세서와 기능 수행에 필요한 정보 혹은 수행 결과를 저장하는 메모리를 포함한다.
구체적으로, 상기 시스템(500)은 데이터 초기화부(510), 저장부(520), 카메라(530), 제어부(540) 및 표시부(550)를 포함할 수 있다.
상기 데이터 초기화부(510)는 증강현실 구현 등의 목적 실현을 위해 이용되기 위해 입력되는 개별 이미지 마커에 대한 각각의 정보를 생성하고, 단일의 통합 이미지 마커를 생성하기 위한 데이터를 초기화한다.
상기 데이터 초기화부(510)는 도 3의 단계 S300을 수행하므로, 데이터 초기화부(510)의 구체적인 기능에 대해서는 생략하도록 하며, 데이터 초기화부(510)에 의해 생성되는 정보는 저장부(520)에 저장된다.
간단하게 살펴보면, 상기 데이터 초기화부(510)는 입력되는 이미지 마커별 정보를 생성하여 저장부(520)에 저장하고, 이때, 이미지 마커별 평면 정보도 함께 저장한다.
또한, 상기 데이터 초기화부(510)는 각각의 이미지 마커에 대한 고유의 식별정보를 부여하여, 이미지 마커별 식별 정보도 함께 저장한다.
한편, 상기 데이터 초기화부(510)는 입력되는 이미지 마커를 이용하여 조합 가능한 모든 이미지 마커 쌍에 대한 에러 값과 상대 좌표 값을 초기화할 수 있다.
그리고, 초기화된 이미지 마커 쌍에 대한 에러 값과 상대 좌표 값은 저장부(520)에 저장된다.
상기 저장부(520)는 데이터 초기화부(510) 혹은 제어부(540)로부터의 정보를 저장하는 한편, 요청에 따라 정보를 제어부(540)로 제공하며, 상기 카메라(530)는 촬영되는 영상을 제어부(540)로 제공한다.
상기 제어부(540)는 저장부(520)에 저장된 정보와 카메라(530)로부터 제공되는 영상을 바탕으로, 영상 내에 포함된 이미지 마커를 인식하고, 인식된 마커 각각에 대한 카메라의 포즈를 계산하고, 인식된 이미지 마커의 개수가 2개 이상이면, 인식된 이미지 마커 간의 상대 좌표 및 카메라 포즈의 에러 값을 계산한다.
그리고, 상기 제어부(540)는 기 저장되어 있는 마커 간의 상대 좌표 및 계산된 카메라 포즈의 에러 값을 계산된 이미지 마커 간의 상대 좌표 및 계산된 카메라 포즈의 에러 값으로 갱신하는 한편, 저장되어 있는 이미지 마커 간의 상대 좌표를 좌표 변환 대상 이미지 마커 내의 특징점의 3차원 좌표에 적용하여 변환시킴으로써 통합 이미지 마커를 생성한다.
즉, 상기 제어부(540)는 도 3의 단계 S320 내지 S390을 수행하는 것으로서, 제어부(540)의 구체적인 기능에 대해서는 생략하도록 한다.
그리고, 상기 표시부(550)는 제어부(540)로부터 제공되는 정보를 표시하기 위한 것으로서, 예를 들면 도 3의 단계 S470에 따라 이미지 마커에 대한 인식 결과를 표시할 수 있다.
이상에서와 같이, 본 발명에 따른 통합 이미지 마커 생성 시스템 및 방법을 실시 예에 따라 설명하였지만, 본 발명의 범위는 특정 실시 예에 한정되는 것은 아니며, 본 발명과 관련하여 통상의 지식을 가진 자에게 자명한 범위 내에서 여러 가지의 대안, 수정 및 변경하여 실시할 수 있다.
따라서, 본 발명에 기재된 실시 예 및 첨부된 도면들은 본 발명의 기술 사상을 한정하기 위한 것이 아니라 설명하기 위한 것이고, 이러한 실시 예 및 첨부된 도면에 의하여 본 발명의 기술 사상의 범위가 한정되는 것은 아니다. 본 발명의 보호 범위는 청구범위에 의하여 해석되어야 하며, 그와 동등한 범위 내에 있는 모든 기술 사상은 본 발명의 권리 범위에 포함되는 것으로 해석되어야 할 것이다.
500 : 통합 이미지 마커 생성 시스템
510 : 데이터 초기화부
520 : 제어부
530 : 카메라
540 : 제어부
550 : 표시부
510 : 데이터 초기화부
520 : 제어부
530 : 카메라
540 : 제어부
550 : 표시부
Claims (20)
- 입력되는 개별 이미지 마커에 대한 정보를 생성하고, 데이터를 초기화하는 데이터 초기화부;
상기 데이터 초기화부에 의해 생성된 정보 및 초기화된 데이터를 저장하는 저장부;
소정 영역을 촬영하여 영상을 제공하는 카메라; 및
상기 영상 내에 포함된 이미지 마커를 인식하고, 인식된 마커 각각에 대한 카메라의 포즈를 계산하고, 인식된 이미지 마커의 개수가 2개 이상이면, 인식된 이미지 마커 간의 상대 좌표 및 카메라 포즈의 에러 값을 계산하며, 기 저장되어 있는 마커 간의 상대 좌표 및 계산된 카메라 포즈의 에러 값을 계산된 이미지 마커 간의 상대 좌표 및 계산된 카메라 포즈의 에러 값으로 갱신하고, 종료 신호가 입력되는 경우, 저장되어 있는 이미지 마커 간의 상대 좌표를 좌표 변환 대상 이미지 마커 내의 특징점의 3차원 좌표에 적용하여 변환시킴으로써 통합 이미지 마커를 생성하는 제어부를 포함하고,
상기 제어부는, 계산된 카메라 포즈에 대한 에러 값이 기 저장되어 있는 카메라 포즈에 대한 에러 값보다 작은 경우에 계산된 카메라 포즈에 대한 에러 값으로 갱신하는
통합 이미지 마커 생성 시스템. - 제 1 항에 있어서,
상기 데이터 초기화부는,
입력되는 이미지 마커를 이용하여 조합 가능한 모든 이미지 마커 상에 대한 에러 값과 상대 좌표 값을 초기화하고, 마크별 고유의 식별 정보를 부여하는
통합 이미지 마커 생성 시스템. - 제 1 항에 있어서,
상기 제어부는, 인식된 마커의 개수가 3개 이상인 경우에, 인식된 이미지 마커를 이용하여 조합 가능한 모든 쌍에 대해서 상대 좌표와 카메라 포즈의 에러 값을 계산하는
통합 이미지 마커 생성 시스템. - 제 1 항에 있어서,
상기 제어부는, 각각의 이미지 마커에 고유 식별정보로서 부여된 숫자를 확인하여, 숫자가 낮은 이미지 마커를 중심으로, 숫자가 높은 이미지 마커의 상대 좌표를 계산하는
통합 이미지 마커 생성 시스템. - 삭제
- 제 1 항에 있어서,
상기 제어부는, 동일한 평면에 위치하는 이미지 마커 쌍에 대해서 먼저 좌표 변환시키는
통합 이미지 마커 생성 시스템. - 제 1 항에 있어서,
상기 제어부는, 카메라 포즈의 에러 값이 작은 이미지 마커 쌍에 대해서 먼저 좌표 변환시키는
통합 이미지 마커 생성 시스템. - 제 1 항에 있어서,
상기 제어부는, 쌍을 이루는 이미지 마커가 동일한 평면에 위치하지 않는 경우에, Reprojection Error 값을 이용하여 카메라 포즈의 에러 값을 계산하는
통합 이미지 마커 생성 시스템. - 제 1 항에 있어서,
상기 제어부는, 쌍을 이루는 이미지 마커가 동일한 평면에 위치하는 경우에, 하기의 수학식 1을 이용하여 카메라 포즈의 에러 값을 계산하는
통합 이미지 마커 생성 방법.
[수학식 1]
여기서, ∑|Pi·y|는 변환 대상 이미지 마커(k) 상에 있는 모든 특징점의 3차원 위치를 기준 이미지 마커(j)를 기준으로 하는 좌표계상의 3차원 좌표 Pi로 변환한 후, y축 성분에 대한 절대값의 총 합을 나타내고, ∑|Pi·z|는 변환 대상 이미지 마커(k) 상에 있는 모든 특징점의 3차원 위치를 기준 이미지 마커(j)를 기준으로 하는 좌표계상의 3차원 좌표 Pi로 변환 한 후, z축 성분에 대한 절대값의 총 합을 나타낸다. - 입력되는 개별 이미지 마커에 대한 정보를 생성하고, 데이터를 초기화하는 단계;
기 설정된 영역을 카메라로 촬영하고, 촬영된 영상 내에 포함된 이미지 마커를 인식하고, 인식된 마커 각각에 대한 카메라의 포즈를 계산하는 단계;
인식된 이미지 마커의 개수가 2개 이상이면, 인식된 이미지 마커 간의 상대 좌표 및 카메라 포즈의 에러 값을 계산하는 단계;
기 저장되어 있는 마커 간의 상대 좌표 및 계산된 카메라 포즈의 에러 값을 계산된 이미지 마커 간의 상대 좌표 및 계산된 카메라 포즈의 에러 값으로 갱신하는 단계; 및
종료 신호가 입력되었는지를 판단하여, 상기 종료 신호가 입력되었으면, 저장되어 있는 이미지 마커 간의 상대 좌표를 좌표 변환 대상 이미지 마커 내의 특징점의 3차원 좌표에 적용하여 변환시킴으로써 통합 이미지 마커를 생성하는 단계를 포함하고,
상기 갱신하는 단계는, 계산된 카메라 포즈에 대한 에러 값이 기 저장되어 있는 카메라 포즈에 대한 에러 값보다 작은 경우에 계산된 카메라 포즈에 대한 에러 값으로 갱신하는 것을 특징으로 하는
통합 이미지 마커 생성 방법. - 제 10 항에 있어서,
상기 데이터를 초기화하는 것은 입력되는 이미지 마커를 이용하여 조합 가능한 모든 이미지 마커 쌍에 대한 에러 값과 상대 좌표 값을 초기화하고, 마크별 고유의 식별 정보를 부여하는 것인
통합 이미지 마커 생성 방법. - 제 10 항에 있어서,
상기 개별 이미지 마커와 함께 각 이미지 마커별 평면 정보가 함께 입력되는 것을 특징으로 하는
통합 이미지 마커 생성 방법. - 제 10 항에 있어서,
인식된 이미지 마커의 개수가 2개 미만이면, 입력되는 다음 영상 내에 포함된 이미지 마커를 인식하고, 인식된 마커 각각에 대한 카메라의 포즈를 계산하는 것을 특징으로 하는
통합 이미지 마커 생성 방법. - 제 10 항에 있어서,
상기 인식된 마커 간의 상대 좌표 및 카메라 포즈의 에러 값을 계산하는 단계는, 인식된 마커의 개수가 3개 이상인 경우에, 인식된 이미지 마커를 이용하여 조합 가능한 모든 쌍에 대해서 상대 좌표와 카메라 포즈의 에러 값을 계산하는 것을 특징으로 하는
통합 이미지 마커 생성 방법. - 제 10 항에 있어서,
상기 인식된 마커 간의 상대 좌표를 계산하는 것은, 각각의 이미지 마커에 고유 식별정보로서 부여된 숫자를 확인하여, 숫자가 낮은 이미지 마커를 중심으로, 숫자가 높은 이미지 마커의 상대 좌표를 계산하는 것인
통합 이미지 마커 생성 방법. - 제 10 항에 있어서,
상기 카메라 포즈의 에러 값을 계산하는 것은, 쌍을 이루는 이미지 마커가 동일한 평면에 위치하지 않는 경우에, Reprojection Error 값을 이용하여 카메라 포즈의 에러 값을 계산하는 것인
통합 이미지 마커 생성 방법. - 제 10 항에 있어서,
상기 카메라 포즈의 에러 값을 계산하는 것은, 쌍을 이루는 이미지 마커가 동일한 평면에 위치하는 경우에, 하기의 수학식 1을 이용하여 카메라 포즈의 에러 값을 계산하는 것인
통합 이미지 마커 생성 방법.
[수학식 1]
여기서, ∑|Pi·y|는 변환 대상 이미지 마커(k) 상에 있는 모든 특징점의 3차원 위치를 기준 이미지 마커(j)를 기준으로 하는 좌표계상의 3차원 좌표 Pi로 변환한 후, y축 성분에 대한 절대값의 총 합을 나타내고, ∑|Pi·z|는 변환 대상 이미지 마커(k) 상에 있는 모든 특징점의 3차원 위치를 기준 이미지 마커(j)를 기준으로 하는 좌표계상의 3차원 좌표 Pi로 변환 한 후, z축 성분에 대한 절대값의 총 합을 나타낸다. - 삭제
- 제 10 항에 있어서,
종료 신호가 입력되었는지를 판단하여, 상기 종료 신호가 입력되지 않았으면, 입력되는 다음 영상 내에 포함된 이미지 마커를 인식하고, 인식된 마커 각각에 대한 카메라의 포즈를 계산하는 것을 특징으로 하는
통합 이미지 마커 생성 방법. - 제 10 항에 있어서,
상기 통합 이미지 마커를 생성하는 단계는, 동일한 평면에 위치하지 않는 이미지 마커 쌍보다 동일한 평면에 위치하는 이미지 마커 쌍에 대해서 먼저 좌표 변환시키고, 카메라 포즈의 에러 값이 큰 이미지 마커 쌍보다 카메라 포즈의 에러 값이 작은 이미지 마커 쌍에 대해서 먼저 좌표 변환시키는 것으로 특징으로 하는
통합 이미지 마커 생성 방법.
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020160131309A KR101892740B1 (ko) | 2016-10-11 | 2016-10-11 | 통합 이미지 마커 생성 방법 및 그 방법을 수행하는 시스템 |
US15/437,239 US10032288B2 (en) | 2016-10-11 | 2017-02-20 | Method and system for generating integral image marker |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020160131309A KR101892740B1 (ko) | 2016-10-11 | 2016-10-11 | 통합 이미지 마커 생성 방법 및 그 방법을 수행하는 시스템 |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20180039923A KR20180039923A (ko) | 2018-04-19 |
KR101892740B1 true KR101892740B1 (ko) | 2018-08-28 |
Family
ID=61829025
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020160131309A KR101892740B1 (ko) | 2016-10-11 | 2016-10-11 | 통합 이미지 마커 생성 방법 및 그 방법을 수행하는 시스템 |
Country Status (2)
Country | Link |
---|---|
US (1) | US10032288B2 (ko) |
KR (1) | KR101892740B1 (ko) |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP3385912B1 (en) * | 2017-04-06 | 2022-08-24 | Hexagon Technology Center GmbH | Near field manoeuvring for ar-devices using image tracking |
WO2018221198A1 (ja) * | 2017-05-31 | 2018-12-06 | 株式会社フジキン | 半導体製造装置の管理システム、方法、及びコンピュータプログラム |
CN109711399B (zh) * | 2018-11-05 | 2021-04-27 | 北京三快在线科技有限公司 | 基于图像的店铺识别方法、装置,电子设备 |
JP7404011B2 (ja) * | 2019-09-24 | 2023-12-25 | 東芝テック株式会社 | 情報処理装置 |
CN113947637B (zh) * | 2021-12-15 | 2022-04-22 | 北京柏惠维康科技有限公司 | 标记点提取方法、装置、电子设备及计算机存储介质 |
US20240196084A1 (en) * | 2022-12-12 | 2024-06-13 | Sony Group Corporation | User interface for rolling shutter camera arrays and accurate volumetric capture workflows |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101529820B1 (ko) * | 2014-04-01 | 2015-06-29 | 한국방송공사 | 월드 좌표계 내의 피사체의 위치를 결정하는 방법 및 장치 |
Family Cites Families (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101039298B1 (ko) | 2009-12-22 | 2011-06-07 | (주)포스트미디어 | 다수의 특징점 기반 마커를 인식하기 위한 순차 검색 방법 및 이를 이용한 증강현실 구현 방법 |
US20110248995A1 (en) * | 2010-04-09 | 2011-10-13 | Fuji Xerox Co., Ltd. | System and methods for creating interactive virtual content based on machine analysis of freeform physical markup |
JP5494427B2 (ja) * | 2010-11-12 | 2014-05-14 | 富士通株式会社 | 画像処理プログラムおよび画像処理装置 |
US20120154439A1 (en) | 2010-12-16 | 2012-06-21 | Electronics And Telecommunications Research Institute | Apparatus and method for operating multiple object of augmented reality system |
AU2011253973B2 (en) * | 2011-12-12 | 2015-03-12 | Canon Kabushiki Kaisha | Keyframe selection for parallel tracking and mapping |
KR20130099317A (ko) | 2012-02-29 | 2013-09-06 | 한국전자통신연구원 | 인터랙티브 증강현실 구현 시스템 및 증강현실 구현 방법 |
KR101277737B1 (ko) | 2012-03-22 | 2013-06-24 | 한남대학교 산학협력단 | 다중 마커의 배열을 이용하는 증강현실 시스템 및 그 방법 |
KR101509105B1 (ko) * | 2013-04-29 | 2015-04-08 | 주식회사 제이엠랩 | 증강현실 제공 장치 및 그 방법 |
US9098934B2 (en) | 2013-06-27 | 2015-08-04 | Hcl Technologies Limited | Augmented reality system with correlation among multiple markers |
US20150168136A1 (en) * | 2013-12-12 | 2015-06-18 | The Regents Of The University Of Michigan | Estimating three-dimensional position and orientation of articulated machine using one or more image-capturing devices and one or more markers |
WO2015090421A1 (en) * | 2013-12-19 | 2015-06-25 | Metaio Gmbh | Method and system for providing information associated with a view of a real environment superimposed with a virtual object |
US9626764B2 (en) * | 2014-07-01 | 2017-04-18 | Castar, Inc. | System and method for synchronizing fiducial markers |
US9369689B1 (en) * | 2015-02-24 | 2016-06-14 | HypeVR | Lidar stereo fusion live action 3D model video reconstruction for six degrees of freedom 360° volumetric virtual reality video |
US9964398B2 (en) * | 2015-05-06 | 2018-05-08 | Faro Technologies, Inc. | Three-dimensional measuring device removably coupled to robotic arm on motorized mobile platform |
US20180046874A1 (en) * | 2016-08-10 | 2018-02-15 | Usens, Inc. | System and method for marker based tracking |
-
2016
- 2016-10-11 KR KR1020160131309A patent/KR101892740B1/ko active IP Right Grant
-
2017
- 2017-02-20 US US15/437,239 patent/US10032288B2/en not_active Expired - Fee Related
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101529820B1 (ko) * | 2014-04-01 | 2015-06-29 | 한국방송공사 | 월드 좌표계 내의 피사체의 위치를 결정하는 방법 및 장치 |
Also Published As
Publication number | Publication date |
---|---|
US20180101964A1 (en) | 2018-04-12 |
US10032288B2 (en) | 2018-07-24 |
KR20180039923A (ko) | 2018-04-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR101892740B1 (ko) | 통합 이미지 마커 생성 방법 및 그 방법을 수행하는 시스템 | |
CN107223269B (zh) | 三维场景定位方法和装置 | |
JP6425780B1 (ja) | 画像処理システム、画像処理装置、画像処理方法及びプログラム | |
CN108898676B (zh) | 一种虚实物体之间碰撞及遮挡检测方法及系统 | |
US9928656B2 (en) | Markerless multi-user, multi-object augmented reality on mobile devices | |
US9161027B2 (en) | Method and apparatus for providing camera calibration | |
US9792731B2 (en) | System and method for controlling a display | |
CN110568447A (zh) | 视觉定位的方法、装置及计算机可读介质 | |
CN111612852B (zh) | 用于验证相机参数的方法和装置 | |
JP6438995B2 (ja) | 図面投影システム、図面投影方法及びプログラム | |
EP3298590B1 (en) | Information processing apparatus, method, and program | |
JP2017036970A (ja) | 情報処理装置、情報処理方法、プログラム | |
US20180114339A1 (en) | Information processing device and method, and program | |
KR20210039996A (ko) | 헤어스타일 변환 방법, 장치, 기기 및 저장 매체 | |
CN112634366B (zh) | 位置信息的生成方法、相关装置及计算机程序产品 | |
JP2019106008A (ja) | 推定装置、推定方法、及び推定プログラム | |
KR101126415B1 (ko) | 모바일 기기에서의 증강공간 제공 가속 장치 | |
CN114266876A (zh) | 定位方法、视觉地图的生成方法及其装置 | |
JP2011071746A (ja) | 映像出力装置及び映像出力方法 | |
JP6835665B2 (ja) | 情報処理装置及びプログラム | |
JP6641313B2 (ja) | 領域抽出装置及びプログラム | |
KR102723704B1 (ko) | 시점변환영상을 생성하여 객체를 보간하는 시스템 및 방법 | |
US12073515B2 (en) | Information processing apparatus, display system, display method, and non-transitory computer readable medium storing program | |
JP2006064585A (ja) | 画像処理方法、画像処理装置 | |
JP5636966B2 (ja) | 誤差検出装置及び誤差検出プログラム |
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 |