WO2011078430A1 - 다수의 특징점 기반 마커를 인식하기 위한 순차 검색 방법 및 이를 이용한 증강현실 구현 방법 - Google Patents

다수의 특징점 기반 마커를 인식하기 위한 순차 검색 방법 및 이를 이용한 증강현실 구현 방법 Download PDF

Info

Publication number
WO2011078430A1
WO2011078430A1 PCT/KR2009/007843 KR2009007843W WO2011078430A1 WO 2011078430 A1 WO2011078430 A1 WO 2011078430A1 KR 2009007843 W KR2009007843 W KR 2009007843W WO 2011078430 A1 WO2011078430 A1 WO 2011078430A1
Authority
WO
WIPO (PCT)
Prior art keywords
marker
feature point
data
marker data
feature
Prior art date
Application number
PCT/KR2009/007843
Other languages
English (en)
French (fr)
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 WO2011078430A1 publication Critical patent/WO2011078430A1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T15/003D [Three Dimensional] image rendering
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T19/00Manipulating 3D models or images for computer graphics
    • G06T19/006Mixed reality
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/70Determining position or orientation of objects or cameras
    • G06T7/73Determining position or orientation of objects or cameras using feature-based methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/10Image acquisition modality
    • G06T2207/10004Still image; Photographic image
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/30Subject of image; Context of image processing
    • G06T2207/30204Marker

Definitions

  • the present invention provides a method of searching for a plurality of feature-based markers to recognize a plurality of feature-based markers for realizing augmented reality in an augmented reality system for synthesizing a computer-generated virtual image to a live image captured by a camera and It relates to an augmented reality implementation method using such a method.
  • Augmented reality is a modified form of virtual reality
  • the system for implementing augmented reality includes an image acquisition means (eg, a camera) and an image output means (eg, a monitor).
  • an image acquisition means eg, a camera
  • an image output means eg, a monitor
  • the real image and the virtual image are synthesized and output through the image output means.
  • This augmented reality system is designed to be an optical or video based system that aims to help users' perception and interaction with reality by adding virtual objects to real environments. It is applied to various fields such as industry, entertainment and military.
  • Optical-based system is a way that the user can directly see the real environment through the translucent screen of the Head-Mounted Display (HMD) is a method of providing information to the user by projecting a virtual object on the screen of the HMD, Figure 1
  • a marker 2 is attached to the board 1 of the reality, and image information (2 ⁇ , 'house') corresponding to the ID of the marker 2 is attached.
  • the image is stored in a means capable of processing and outputting the image, such as the computer 4 or the tablet computer 5 or the media 6.
  • the means for processing and outputting an image may be various multimedia means capable of outputting an image including a mobile phone, in addition to the computer 4, the tablet computer 5, or the media 6, and may process and output such an image.
  • the means may be provided with a calculation program necessary to implement augmented reality.
  • the board 3 of the real body and the marker 2 attached to the real board 1 are photographed by the camera 3 to the computer 4 or the tablet computer 5 or the media 6.
  • the computer 4, the tablet computer 5, or the PD 6 determine the ID of the marker 2 in the image captured by the camera 3, and the image information corresponding to the determined ID ( 2 ',' house ') through the information processing (relative position calculation and rendering, etc.) necessary for augmented reality, and finally on the board 7 of the reality on the screen 7 as shown in Figure 1 (b)
  • the composite image as if the virtual house 2 'is present is output.
  • the marker 2 of the augmented reality system has a unique ID
  • the computer 4 or the tablet computer 5 or the media 6 has a marker (i.e., an image taken through the camera 3). 2) Determine and recognize the ID, and synthesizes and outputs augmented data such as stored text, graphics, and sound.
  • Such a marker 2 is also called a tag, context or visual marker, and has a certain pattern according to the type of marker as shown in the figure for explaining the types of markers of FIG. 2. It is divided into atypical markers and atypical markers that do not have a pattern.
  • the typical markers are ArToolkit markers, HOM markers, IGD markers, SCR markers, Kobe University markers, and the like.
  • the conventional markers use a predetermined image as a marker to find ID and position values.
  • the atypical marker is a method of using feature points in an image extracted from a camera image as a marker without an image marker having a predetermined shape as described above.
  • an image such as a leaflet or a photo to be augmented is registered in advance
  • the real-time image includes an image (input image) such as the registered leaflet or photo
  • a registered image obtained through arithmetic operations to render 3D objects and augment them on the real-time image.
  • the comparison of the comparison image and the input image compares the feature points extracted from the input image with the feature point markers in the feature point marker database of the comparison image, and recognizes the input image as the feature point markers.
  • the 3D object corresponding to the feature point marker is augmented on the real-time image captured by the camera through the rendering and rendering process.
  • Such atypical markers have the advantage of providing services without visualizing the shape of the markers to the user compared to the atypical markers, which has a great advantage of expanding the application and application field of the augmented reality system.
  • a method of recognizing a marker using the extracted feature points generates a 32 ⁇ 32 rotated image centering on the extracted feature points as shown in FIG. 4 and converts the generated 32 ⁇ 32 rotated image into a tree structure.
  • a weight is obtained by substitution, a feature point having a high weight and a comparison feature point are matched, the phases of the extracted feature point and the comparison feature point are matched, their positions are examined, and the same is recognized as a marker.
  • the feature point is extracted every frame of the real-time image, and the feature point is compared with the feature points of all registered images.
  • the total computation time T per frame becomes N ⁇ t.
  • the total computation time T per frame is 0.12 seconds.
  • the conventional feature point based marker search method compares the entire registered marker data with the extracted feature point based marker, so that the total computation time per frame is proportional to the number N of the entire registered marker data.
  • An object of the present invention is to provide a retrieval method for recognizing a plurality of feature point-based markers that can be matched with the performance of hardware, and an augmented reality implementation method using the same.
  • a sequential search method for recognizing a plurality of feature point-based markers for achieving the object of the present invention as described above implements augmented reality using a marker database and a feature point-based marker that store marker data for recognizing feature-based markers.
  • the method of recognizing a marker in an augmented reality system using a plurality of feature-point-based markers as markers including an augmented reality implementation,
  • a sequential index number (i) as a limit value (nm) of the number (m) of the collected marker data; (c) detecting a feature point in a frame of an image acquired by the camera; And (d) comparing the feature points detected in the frame and the i marker data sequentially extracted by the sequential index number (i) while fixing the marker data recognized and indexed in the previous frame from the N marker data. Recognizing a feature point based marker; characterized in that it comprises a.
  • the marker data is characterized by consisting of a marker image, feature point coordinates for the marker image, a tree-shaped data structure for the feature point, and augmented three-dimensional object data.
  • the feature point detection in the step (c) is characterized in that it is detected by a feature point extraction technique that removes noise using a Gaussian filter, and applies Laplacian to the result.
  • the augmented reality implementation method using a sequential search method for recognizing a plurality of feature-point markers in the present invention is a marker database for storing the marker data for recognizing the feature-based markers and augmented reality implementation to implement augmented reality with a feature-based marker
  • a method of implementing augmented reality by recognizing a marker in an augmented reality system using a plurality of feature-point based markers as a marker
  • a sequential index number (i) as a limit value (nm) of the number (m) of the collected marker data; (c) detecting a feature point in a frame of an image acquired by the camera; (d) The feature point detected in the frame and the marker data recognized in the previous frame from the N marker data and the marker data recognized in the previous frame in the fixed state and compared with the i marker data sequentially extracted by the sequential index number (i).
  • the marker data is characterized by consisting of a marker image, feature point coordinates for the marker image, a tree-shaped data structure for the feature point, and augmented three-dimensional object data.
  • the feature point detection in the step (c) is characterized in that it is detected by a feature point extraction technique that removes noise using a Gaussian filter, and applies Laplacian to the result.
  • the present invention has the effect of reducing the total calculation time required per frame by comparing the marker data according to the index without recognizing the feature point-based marker through the comparison with the entire marker data through the above problem solving means.
  • the augmented reality can be implemented according to the performance of the hardware by adjusting the number of indexes.
  • 1 is a view for explaining the concept of augmented reality
  • FIG. 3 is a view illustrating a process of extracting feature points from an original image
  • FIG. 4 is a view illustrating a process of recognizing feature points extracted from an original image
  • FIG. 6 is a view for explaining a concept of a sequential search method for recognizing a plurality of feature-point based markers of the present invention
  • FIG. 7 is a view for explaining a sequential index of the sequential search method for recognizing a plurality of feature-point based markers of the present invention.
  • FIG. 8 is a flowchart showing a sequence of a sequential search method for recognizing a plurality of feature point-based markers of the present invention
  • FIG. 9 is a flowchart illustrating a method for implementing augmented reality using a sequential search method for recognizing a plurality of feature point-based markers.
  • FIG. 6 is a diagram illustrating a concept of a sequential search method for recognizing a plurality of feature point based markers
  • FIG. 7 is a diagram for describing a sequential index of a sequential search method for recognizing a plurality of feature point based markers
  • 8 is a flowchart illustrating a sequential search method for recognizing a plurality of feature point based markers of the present invention
  • FIG. 9 is a flowchart illustrating a method of implementing augmented reality using a sequential search method for recognizing a plurality of feature point based markers of the present invention. It is a flowchart for.
  • the number of markers based on a plurality of feature points simultaneously recognized per frame is two, the number of sequential indexes is two, and when comparing the camera image 1 and the marker data 1, the two marker data 1 and 2 are sequentially.
  • the marker data is extracted and compared, and when comparing the camera image 2 and the marker data, the marker data 3 and 4 are extracted and compared.
  • the search method according to the present invention is based on the number of sequential indexes, which is the number of feature-based markers that are simultaneously recognized per frame. By proportionally selecting the number of sequential indexes according to the number of marker data, it is possible to adjust or reduce the total computation time per frame, and set according to the hardware performance of the augmented reality system.
  • the concept of sequential indexing sequentially extracts and compares marker data as many as the number of feature point-based markers recognized per frame in the entire marker data, and indexes a plurality of feature point-based markers already recognized in the future. It is fixed so that the marker data is always included in the extraction as many as the number of sequential indexes.
  • marker data is sequentially extracted and compared by the number of the sequential indices, and as shown in FIG. 7C, the previous frame (camera image 2).
  • the marker data is extracted and compared in a fixed state by indexing the marker data.
  • the camera image 1 extracts and compares marker data 1 and 2 as shown in FIG. 7A. Thereafter, in the input camera image 2, marker data 3 and 4 are extracted and compared as shown in FIG. 7 (b).
  • the marker image 3 retrieved from the camera image 2 is indexed in the camera image 3 as shown in FIG.
  • the marker data 3 and the marker data 5 are extracted and compared.
  • the search method continues to recognize a plurality of feature point-based markers once recognized in the next frame.
  • the method can be applied to the index concept so that the total calculation time per frame can be relatively reduced. (S10), sequential index number determination step (S20), detecting a feature point in the camera image (S30) and extracting and comparing the marker data to recognize a plurality of feature point-based markers (S40).
  • a method for searching for a plurality of feature-based markers includes a marker database storing marker data for recognizing feature-based markers and an augmented reality implementation unit for implementing augmented reality with a feature-based marker as a marker.
  • the method applied to the augmented reality system using the step (S10) loads the N marker data prepared and registered in advance for the recognition of the feature point-based marker from the marker database to the augmented reality implementation unit.
  • the marker data includes a marker image, feature point coordinates for the marker image, a tree-shaped data structure for the feature point, and augmented three-dimensional object data.
  • the marker data is sequentially extracted from the N number of marker data per frame in the sequential index number determining step S20, and compared with the feature point-based marker.
  • the number (n) of marker data to be recognized in the current frame is selected from one or more N ranges, and if there is no previous frame, the number of marker data recognized With (m) as 0, the sequential index number i is determined from the number n of marker data to be recognized in the frame as the limit value nm as the number m of marker data recognized in the previous frame.
  • the sequential index number i is 2. Accordingly, in the step S40 of recognizing the plurality of feature point-based markers, five marker data including three marker data already recognized and indexed and two marker data extracted sequentially are extracted.
  • the image acquired through the camera is stored in a predetermined buffer, and the feature point is detected in the image stored in the buffer.
  • the method for detecting the feature point may use a variety of methods, and is not limited to any specific feature point detection method.
  • feature point extraction uses the same feature extraction techniques as markers that are created for recognition.Leplacian of Gaussian (Dog), Difference of Gaussians (DoG), FAST Corner Detector, etc. DoG all use Gaussian Filter.
  • LoG removes noise by using Gaussian Filter and applies Laplacian to the result.It is better to extract thicker edges with noise because gaussian is used rather than simply extracting edge by using Laplacian mask. have.
  • the DoG has a merit of using a difference between Gaussian images that have different Gaussian filter variance values, which is faster than LoG.
  • LoG is a feature point extraction technique. This is to make it easier to compare a plurality of feature markers and the extracted marker data by extracting a thicker edge that is resistant to noise.
  • step S40 of recognizing a plurality of feature point based markers by extracting and comparing the marker data determining a sequential index number (S20). Based on the plurality of feature points, the marker data determined by the sequential index number i is sequentially extracted from the loaded N marker data, and the extracted marker data is compared with the feature points detected in the frame of the image acquired by the camera. Recognize the marker.
  • the comparison of the feature points can be implemented in various ways, and is not limited to any specific method, but it is preferable to use a ransac algorithm using a tree-type data structure capable of color comparison with respect to the coordinates of the feature points.
  • the markers are sequentially indexed by the number of sequential indexes including the index marker data.
  • the data is extracted.
  • the marker data recognized as the plurality of feature point markers in the previous frame and the marker data sequentially extracted are not overlapped.
  • the feature point based marker is recognized through the searching method of the plurality of feature point based markers as described above.
  • Augmented reality implementation method using a sequential search method for recognizing a plurality of feature point-based markers as described above the step of loading the N marker data to be recognized (S100), the recognition in the previous frame Setting the number of feature point marker data to 0 (S200), determining the number of sequential indexes (S300), acquiring an image with a camera, detecting a feature point from the acquired image (S400), and sequential index numbers Extracting the marker data corresponding to (S500), and comparing the extracted marker data with the feature point, if there is no feature point-based marker recognized as a feature point-based marker, returns to the step of determining the number of sequential indexes (S300).
  • step S600 If there is a feature point-based marker detection step (S600), to detect the feature-based markers (m) three-dimensional matrix stroke
  • step S700 the augmentation step of rendering and augmenting a 3D object for the detected feature point based marker according to the 3D matrix and fixing the indexes for the m feature point based markers S900. .
  • N marker data prepared in advance and registered for the recognition of the feature point-based marker are loaded from the marker database into the AR implementation.
  • the marker data includes a marker image, feature point coordinates for the marker image, a tree-shaped data structure for the feature point, and augmented three-dimensional object data.
  • Acquiring an image with the camera and detecting a feature point from the acquired image stores the image acquired through the camera in a predetermined buffer, detects the feature point from the image stored in the buffer, and detects the feature point.
  • the feature point extraction uses the same feature point extraction technique as the markers made in advance for recognition, and uses Laglacian of Gaussian (Dog), Difference of Gaussians (DoG), and FAST Corner Detector.
  • LoG is a feature point extraction technique. This is to make it easier to compare a plurality of feature markers and the extracted marker data by extracting a thicker edge that is resistant to noise.
  • Extracting the marker data corresponding to the number of sequential indexes may include loading the marker data corresponding to the number of sequential indexes i when the feature point is detected in the frame of the image acquired by the camera by the feature point extraction method as described above. Extracted sequentially from N marker data.
  • the markers are sequentially indexed by the number of sequential indexes including the index marker data.
  • the data is extracted. At this time, the marker data recognized as the plurality of feature point markers in the previous frame and the marker data sequentially extracted are not overlapped.
  • the feature point based marker detection step (S600) is a step of recognizing the feature point marker, and compares the extracted marker data with the detected feature point to recognize the feature point based marker. Return to step S300 of determining the number of indexes. At this time, the comparison of the feature points can be implemented in a variety of ways, and is not limited to any particular method, it is preferable to use a ransac algorithm using a tree-type data structure capable of color comparison for the coordinates of the feature point.
  • Acquiring a three-dimensional matrix of the detected feature point based markers (m) may be performed by calculating relative positions of the m feature point based markers recognized in the feature point based marker detection step (S600). Acquire.
  • the augmentation step (S800) of rendering and augmenting a 3D object for the detected feature point based marker according to a 3D matrix is for synthesizing a virtual augmented image to a real time image.
  • the 3D matrix obtained in operation S700 is applied to a 3D engine (OpenGL, DirectX, etc.) to render a corresponding 3D object to generate a virtual augmented image to which perspective is applied, and synthesize the output to a real time image.
  • a 3D engine OpenGL, DirectX, etc.
  • Fixing the indexes for the m feature point based markers is to fix the indexes for the m feature point based markers recognized in the feature point based marker detection step (S600), thereby determining the number of sequential indexes. .
  • the present invention can be applied and applied in various forms in exhibition, promotion, medical, military, etc. by providing an efficient search method of a plurality of feature-based markers in a plurality of feature-based augmentation system without visualizing the shape of the marker to the user.

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Graphics (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Image Analysis (AREA)
  • Processing Or Creating Images (AREA)

Abstract

다수의 특징점 기반 마커를 인식하기 위한 순차 검색 방법 및 이를 이용한 증강현실 구현 방법을 개시한다. 본 발명은 소정의 이미지에서 다수의 특징점을 추출하는 솔루션을 이용하여 추출된 다수의 특징점 기반 마커를 판단하는 방법 및 이와 같은 판단 방법을 이용한 증강현실 구현 방법에 관한 것으로 카메라를 통해 취득된 영상에서 특징점 기반 마커를 인식하기 위한 프레임당 전체 연산 소요 시간(T)을 줄임으로써 상대적으로 빠르게 특징점 기반 마커를 인식할 수 있는 방법과, 이를 통해 상대적으로 빠르게 증강현실을 구현하는 방법을 제공하는 것을 목적으로 한다. 이를 위해 특징점 기반 마커 데이터에 대한 순차적 인덱스 개념을 도입하여 특징점 기반 마커를 인식하는 것을 특징으로 한다. 즉, 전체 마커 데이터와의 비교를 통한 특징점 기반 마커를 인식하지 않고 인덱스에 따른 마커 데이터와 비교를 함에 따라 프레임당 전체 연산 소요 시간을 줄일 수 있고, 일정한 인식 속도를 유지할 수 있으며, 초기 인식에 대한 최대 딜레이 시간을 인지할 수 있으며, 하드웨어의 성능에 따라 순차적 인덱스 개수를 변경하여 하드웨어의 성능에 맞게 증강현실을 구현할 수 있는 효과가 있다.

Description

다수의 특징점 기반 마커를 인식하기 위한 순차 검색 방법 및 이를 이용한 증강현실 구현 방법
본 발명은 카메라로 캡쳐한 실사 영상에 컴퓨터로 생성한 가상 영상을 합성하여 보여주는 증강현실 시스템에서, 증강현실을 구현하기 위한 다수의 특징점 기반 마커를 인식하기 위해 다수의 특징점 기반 마커를 검색하는 방법 및 이와 같은 방법을 이용한 증강현실 구현 방법에 관한 것이다.
증강현실(Augmented Reality)은 가상현실(virtual reality)의 변화된 형태로, 증강현실을 구현하는 시스템은 영상 획득 수단(예; 카메라)과 영상 출력 수단(예; 모니터)를 포함하여 상기 영상 획득 수단을 통해 획득된 실사 영상에 가상 영상을 정합하기 위해 영상 획득 수단(카메라)의 위치와 회전값을 이용하여 미리 3차원으로 모델링된 데이터를 실제 카메라가 실사 영상을 투영하는 것과 같은 3차원 원근 투영법을 이용하여 가상 영상을 렌더링한 다음, 실사 영상과 가상 영상을 합성하여 상기 영상 출력 수단을 통해 출력한다.
이와 같은 증강현실 시스템은 실제 환경에 가상의 물체를 첨가하여 보여줌으로써 사용자의 지각 및 현실과의 상호작용에 도움을 주는데 목적이 있는 것으로 광학(optical) 또는 영상(video) 기반 시스템으로 설계되며 의학, 산업, 오락, 군사 분야 등에 다양하게 응용되고 있다.
광학기반 시스템은 사용자가 HMD(Head-Mounted Display)의 반투명 스크린을 통해 실제 환경을 직접 볼 수 있는 것으로 HMD의 스크린에 가상의 물체를 투영하여 사용자에게 정보를 제공 방식이며, 영상 기반 시스템은 도 1 증강현실의 개념을 설명하기 위한 도면에 도시한 바와 같이 현실의 보드(1)에 마커(2)를 부착하고, 상기 마커(2)의 아이디에 해당하는 이미지정보(2`, '집')를 컴퓨터(4) 또는 태블릿 컴퓨터(5) 또는 피디에이(6)와 같이 영상을 처리하여 출력할 수 있는 수단에 저장한다.
이때 영상을 처리하여 출력할 수 있는 수단에는 컴퓨터(4) 또는 태블릿 컴퓨터(5) 또는 피디에이(6) 이외에도 휴대폰을 포함한 영상 출력이 가능한 다양한 멀티미디어 수단이 될 수 있으며, 이와 같은 영상을 처리하여 출력할 수 있는 수단에는 증강현실을 구현하는데 필요한 연산프로그램이 설치되어 있다.
이와 같은 상태에서 카메라(3)를 통해 현실의 보드(1)와 현실의 보드(1)에 부착된 마커(2)가 촬영되어 상기 컴퓨터(4) 또는 태블릿 컴퓨터(5) 또는 피디에이(6)로 전송되면, 상기 컴퓨터(4) 또는 태블릿 컴퓨터(5) 또는 피디에이(6)는 상기 카메라(3)를 통해 촬영된 이미지에서 마커(2)의 아이디를 판단하고, 판단된 아이디에 해당하는 이미지정보(2`, '집')를 독출하여 증강현실에 필요한 정보처리(상대적 위치 계산 및 렌더링 등)를 거쳐 최종적으로 도 1(b)에 도시한 바와 같이 화면(7)에 현실의 보드(1) 위에 가상의 집(2`)이 있는 것과 같은 합성 영상을 출력한다.
이와 같은 증강현실 시스템의 마커(2)는 고유 아이디(ID)를 가지고 있으며, 상기 컴퓨터(4) 또는 태블릿 컴퓨터(5) 또는 피디에이(6)는 상기 카메라(3)를 통해 촬영된 이미지에서 마커(2)의 아이디를 판단하여 인식함에 따라 저장된 문자, 그래픽, 음향과 같은 증강 데이터를 합성하여 출력한다.
이와 같은 마커(2)는 태그(tag), 컨텍스트(context) 또는 비주얼 마커(visual marker)라고도 일컫는 것으로 도 2 마커의 종류를 설명하기 위한 도면에 도시한 바와 같이 마커의 형식에 따라 일정한 패턴을 갖는 정형적 마커와 패턴을 가지지 않는 비정형적 마커로 구분된다.
정형적 마커는 ArToolkit 마커, HOM 마커, IGD 마커, SCR 마커, Kobe 대학 마커 등이 대표적이며, 이와 같은 정형적 마커는 소정의 약속된 이미지를 마커로 사용하는 것으로 ID와 위치값을 찾아낸다.
이에 반해 비정형적 마커는 상기와 같은 소정의 형태를 갖는 이미지 마커없이 카메라 영상에서 추출된 영상에서의 특징점들을 마커로 이용하는 방식이다.
간단히 설명하면, 증강이 되도록 하는 전단지나 사진과 같은 이미지(비교이미지)를 미리 등록하여 놓고, 실시간 영상에 상기 등록된 전단지나 사진과 같은 이미지(입력이미지)가 포함되면 등록된 이미지(비교이미지)의 특징점과 입력이미지의 특징점을 추출하여 특징점의 비교를 통해 마커로 인식한 뒤, 연산을 통해 3차원 좌표를 획득하여 3차원 객체를 렌더링하여 실시간 영상 위에 증강시킨다.
이때, 비교이미지와 입력이미지의 비교(동일여부 판단)는 입력이미지에서 추출된 특징점과 비교이미지의 특징점 마커 데이터베이스에 있는 특징점 마커를 비교하여 정합되면, 입력이미지를 특징점 마커로 인식하고 3차원 좌표를 추출하여 랜더링 과정을 통해 상기 특징점 마커에 해당하는 3차원 객체를 상기 카메라로 촬영된 실시간 영상 위에 증강한다.
이와 같은 비정형적 마커는 정형적 마커에 비해 사용자에게 마커의 형태를 가시화하지 않고 서비스를 제공할 수 있는 장점이 있어 증강현실 시스템의 적용 및 응용 분야를 확대시킬 수 있는 큰 장점이 있다.
그러나, 이와 같은 특징점 기반 마커의 경우, 촬영된 영상에서 특징점을 추출(지정)해야하고, 추출된 특징점을 기반으로 한 마커로 인식하기 위해 상대적으로 많은 정보를 처리해야하는 문제점이 있고 이로 인해 마커를 인식하는데 있어서 프레임당 전체 연산 소요 시간이 상당히 요구되는 문제점이 있다.
종래 특징점 기반 마커의 인식 과정의 예를 도 3 원본이미지에서 특징점의 추출 과정을 보인 도면 및 도 4 원본이미지에서 추출된 특징점을 인식하는 과정을 보인 도면을 참조하여 간략히 설명하면, 비교되는 이미지에 대한 특징점 데이터와 트리 데이터를 자료구조에 로딩을 하고 이후 카메라를 통해 입력되는 소정의 해상도를 갖는 영상을 버퍼에 저장한 후, 도 3에 도시한 바와 같이 원본이미지에 대한 피라미드 이미지를 생성하고 피라미드 이미지들에 대한 가우시안 필터를 이용한 smooth 효과를 적용한 뒤 피라미드 이미지에서 주위의 픽셀과 명암의 차이가 큰 점들을 선택하고, 선택된 점 주위에 있는 점들 간의 Laplacian 측정값(score)을 구한 뒤, 상위 값들만 선택하여 특징점들을 추출한다.
이와 같이 추출된 특징점을 이용하여 마커로 인식하는 방법은 상기 도 4에 도시한 바와 같이 추출된 특징점을 중심으로 한 32×32 회전 이미지를 생성하고, 이렇게 생성된 32×32 회전 이미지를 트리구조에 대입하여 가중치를 획득하고, 가중치가 높은 특징점과 비교 특징점을 매칭시키고 추출된 특징점과 비교 특징점의 위상을 일치시켜 그 위치를 검사한 후 동일한 경우 이를 마커로 인식한다.
따라서, 특징점 기반 마커를 인식하기 위해서 실시간 영상의 매 프레임마다 특징점을 추출하고, 이를 등록된 모든 이미지의 특징점과 비교를 한다.
즉, 도 5 종래 특징점 기반 마커의 검색 방법을 보인 도면에 도시한 바와 같이, 증강을 위한 비교이미지의 전체 마커 데이터(개수는 N)와 카메라 영상의 매 프레임(입력이미지)마다 추출된 특징점(1)을 상기 전체 마커 데이터(2)와 비교를 통해 마커로 인식한다.
따라서, 등록된 전체 마커 데이터의 개수가 N개이고, 카메라 영상에서 추출된 특징점과 마커 데이터를 비교하는데 소요되는 시간이 t초라고 하면, 프레임당 전체 연산 소요 시간(T)은 N×t 가 된다.
만일, 등록된 전체 마커 데이터가 6개이고, 비교시간이 0.02초이면, 프레임당 전체 연산 소요 시간(T)은 0.12초가 된다.
결국, 종래 특징점 기반 마커의 검색 방법은 등록된 마커 데이터 전체와 추출된 특징점 기반 마커를 비교하는 방식으로 프레임당 전체 연산 소요 시간은 등록된 전체 마커 데이터의 개수(N)와 비례하게 된다.
따라서, 등록된 마커 데이터의 개수(N)가 적을 경우는 큰 문제가 되지 않으나, 등록된 마커 데이터의 개수(N)가 증가함에 따라 한 프레임의 연산 소요 시간이 증가되어 이로 인한 문제가 발생하게 된다.
즉, 등록된 마커 데이터의 개수(N)가 100개라고 가정하면, 한 프레임의 연산 소요 시간이 2초(100×0.02)나 걸리는 문제점이 발생한다.
정리하면, 종래의 다수의 특징점 기반 마커의 검색 방법은 매 프레임당 전체 연산 소요 시간은 등록된 마커 데이터의 개수가 증가함에 따라 증가하게 되고, 이로 인해 증강현실의 자연스런 구현이 어렵거나 높은 사양의 시스템이 요구되는 문제점이 있다.
본 발명은 상기와 같은 문제점을 해결하기 위해 창안된 것으로 프레임당 전체 연산 소요 시간을 상대적으로 줄일 수 있고, 일정한 인식 속도를 유지할 수 있으며, 초기 인식에 대한 최대 딜레이 시간을 인지할 수 있으며, 더 나아가 하드웨어의 성능에 맞출 수 있는 다수의 특징점 기반 마커를 인식하기 위한 검색 방법 및 이를 이용한 증강현실 구현 방법을 제공하는 것을 목적으로 한다.
상기와 같은 본 발명이 이루고자 하는 목적을 달성하기 위한 본 발명 다수의 특징점 기반 마커를 인식하기 위한 순차 검색 방법은 특징점 기반 마커를 인식하기 위한 마커 데이터가 저장된 마커 데이터베이스와 특징점 기반 마커로 증강현실을 구현하는 증강현실 구현부를 포함하여 다수의 특징점 기반 마커를 마커로 이용하는 증강현실 시스템에서 마커를 인식하는 방법에 있어서,
(a) 특징점 기반 마커의 인식을 위해 사전에 제작되어 등록된 N개의 마커 데이터를 상기 마커 데이터베이스로부터 상기 증강현실 구현부로 로딩하는 단계; (b) 프레임당 상기 N개의 마커 데이터 중에서 순차적으로 인덱스 개수만큼 마커 데이터를 추출하여 특징점 기반 마커와 비교하고 마커로 인식된 특징점 기반 마커를 인덱스하기 위해, 현재 프레임에서 인식될 마커 데이터의 개수(n)를 1개 이상 N개 이하의 범위에서 선택하고, 이전 프레임이 없는 경우는 인식된 마커 데이터의 개수(m)를 0개로 하여, 프레임에서 인식될 마커 데이터의 개수(n)에서 이전 프레임에서 인식된 마커 데이터의 개수(m)를 제한 값(n-m)으로 순차적 인덱스 개수(i)를 결정하는 단계; (c) 카메라를 통해 취득된 영상의 프레임에서 특징점을 검출하는 단계; 및 (d) 상기 프레임에서 검출된 특징점과 상기 N개의 마커 데이터에서 상기 이전 프레임에서 인식되어 인덱스된 마커 데이터를 고정한 상태에서 상기 순차적 인덱스 개수(i) 만큼 순차적으로 추출된 i개의 마커 데이터와 비교하여 특징점 기반 마커를 인식하는 단계;를 포함하는 것을 특징으로 한다.
이때, 상기 마커 데이터는 마커 이미지, 마커 이미지에 대한 특징점 좌표, 특징점에 대한 트리형태의 자료 구조, 증강되는 3차원 오브젝트 데이터로 이루어지는 것을 특징으로 한다.
또한, 상기 (c)단계에서의 특징점 검출은 Gaussian Filter를 이용하여 노이즈를 제거하고, 그 결과에 Laplacian을 적용하는 특징점 추출 기법에 의해 검출되는 것을 특징으로 한다.
또한, 본 발명 다수의 특징점 기반 마커를 인식하기 위한 순차 검색 방법을 이용한 증강현실 구현 방법은 특징점 기반 마커를 인식하기 위한 마커 데이터가 저장된 마커 데이터베이스와 특징점 기반 마커로 증강현실을 구현하는 증강현실 구현부를 포함하여 다수의 특징점 기반 마커를 마커로 이용하는 증강현실 시스템에서 마커를 인식하여 증강현실을 구현하는 방법에 있어서,
(a) 특징점 기반 마커의 인식을 위해 사전에 제작되어 등록된 N개의 마커 데이터를 상기 마커 데이터베이스로부터 상기 증강현실 구현부로 로딩하는 단계; (b) 프레임당 상기 N개의 마커 데이터 중에서 순차적으로 인덱스 개수만큼 마커 데이터를 추출하여 특징점 기반 마커와 비교하고 마커로 인식된 특징점 기반 마커를 인덱스하기 위해, 현재 프레임에서 인식될 마커 데이터의 개수(n)를 1개 이상 N개 이하의 범위에서 선택하고, 이전 프레임이 없는 경우는 인식된 마커 데이터의 개수(m)를 0개로 하여, 프레임에서 인식될 마커 데이터의 개수(n)에서 이전 프레임에서 인식된 마커 데이터의 개수(m)를 제한 값(n-m)으로 순차적 인덱스 개수(i)를 결정하는 단계; (c) 카메라를 통해 취득된 영상의 프레임에서 특징점을 검출하는 단계; (d) 상기 프레임에서 검출된 특징점과 상기 N개의 마커 데이터에서 상기 이전 프레임에서 인식되어 인덱스된 마커 데이터를 고정한 상태에서 상기 순차적 인덱스 개수(i) 만큼 순차적으로 추출된 i개의 마커 데이터와 비교하여 특징점 기반 마커를 인식하는 단계; (e) 상기 프레임에서 검색되어 인식된 특징점 기반 마커에 해당하는 마커 데이터를 N개의 마커 데이터 중에서 검출하는 단계; (f) 검출된 마커 데이터의 3차원 좌표를 추출하고, 추출된 좌표값에 따른 3차원 렌더링을 통해 상기 검출된 마커 데이터에 따른 증강이미지를 생성하는 단계; 및 (g) 상기 카메라를 통해 취득되는 실시간 영상에 상기 증강이미지를 합성하여 출력하는 증강현실 적용 단계;를 포함하는 것을 특징으로 한다.
이때, 상기 마커 데이터는 마커 이미지, 마커 이미지에 대한 특징점 좌표, 특징점에 대한 트리형태의 자료 구조, 증강되는 3차원 오브젝트 데이터로 이루어지는 것을 특징으로 한다.
또한, 상기 (c)단계에서의 특징점 검출은 Gaussian Filter를 이용하여 노이즈를 제거하고, 그 결과에 Laplacian을 적용하는 특징점 추출 기법에 의해 검출되는 것을 특징으로 한다.
본 발명은 상기와 같은 과제 해결 수단을 통해 전체 마커 데이터와의 비교를 통한 특징점 기반 마커를 인식하지 않고 인덱스에 따른 마커 데이터와 비교를 함에 따라 프레임당 전체 연산 소요 시간을 줄일 수 있는 효과가 있다.
또한, 일정한 인식 속도를 유지할 수 있으며, 초기 인식에 대한 최대 딜레이 시간을 인지할 수 있는 효과가 있다.
또한, 인덱스의 개수 조절을 통해 하드웨어의 성능에 맞게 증강현실을 구현할 수 있는 효과가 있다.
도 1은 증강현실의 개념을 설명하기 위한 도면,
도 2는 마커의 종류를 설명하기 위한 도면,
도 3은 원본이미지에서 특징점의 추출 과정을 보인 도면,
도 4는 원본이미지에서 추출된 특징점을 인식하는 과정을 보인 도면,
도 5는 종래 특징점 기반 마커의 검색 방법,
도 6은 본 발명 다수의 특징점 기반 마커를 인식하기 위한 순차 검색 방법의 개념을 설명하기 위한 도면,
도 7은 본 발명 다수의 특징점 기반 마커를 인식하기 위한 순차 검색 방법의 순차적 인덱스를 설명하기 위한 도면,
도 8은 본 발명 다수의 특징점 기반 마커를 인식하기 위한 순차 검색 방법의 순서를 보인 순서도,
도 9는 본 발명 다수의 특징점 기반 마커를 인식하기 위한 순차 검색 방법을 이용한 증강현실 구현 방법을 설명하기 위한 순서도이다.
후술하는 본 발명에 대한 상세한 설명은, 본 발명이 실시될 수 있는 특정 실시 예를 예시로서 도시하는 첨부 도면을 참조한다. 이들 실시 예는 당업자가 본 발명을 실시할 수 있기에 충분하도록 상세히 설명된다. 본 발명의 다양한 실시 예는 서로 다르지만 상호 배타적일 필요는 없음이 이해되어야 한다. 예를 들어, 여기에 기재되어 있는 특정 형상, 구조 및 특성은 일 실시 예에 관련하여 본 발명의 기술적 사상 및 범위를 벗어 나지 않으면서 다른 실시 예로 구현될 수 있다. 또한, 각각의 개시된 실시 예 내의 개별 구성요소의 위치 또는 배치는 본 발명의 기술적 사상 및 범위를 벗어나지 않으면서 변경될 수 있음이 이해되어야 한다. 따라서, 후술하는 상세한 설명은 한정적인 의미로서 취하려는 것이 아니며, 본 발명의 범위는,적절하게 설명된다면, 그 청구항들이 주장하는 것과 균등한 모든 범위와 더불어 첨부된 청구항에 의해서만 한정된다. 도면에서 유사한 참조부호는 여러 측면에 걸쳐서 동일하거나 유사한 기능을 지칭한다.
이하, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자가 본 발명을 용이하게 실시할 수 있도록 하기 위하여, 본 발명의 바람직한 실시 예들에 관하여 첨부된 도면을 참조하여 상세히 설명하기로 한다.
도 6은 본 발명 다수의 특징점 기반 마커를 인식하기 위한 순차 검색 방법의 개념을 설명하기 위한 도면, 도 7은 본 발명 다수의 특징점 기반 마커를 인식하기 위한 순차 검색 방법의 순차적 인덱스를 설명하기 위한 도면, 도 8은 본 발명 다수의 특징점 기반 마커를 인식하기 위한 순차 검색 방법의 순서를 보인 순서도, 도 9는 본 발명 다수의 특징점 기반 마커를 인식하기 위한 순차 검색 방법을 이용한 증강현실 구현 방법을 설명하기 위한 순서도이다.
상기 도 6에 도시한 바와 같이 상기 도 5에 도시한 바와 같이 종래 다수의 특징점 기반 마커를 인식하는 방법이 전체 마커 데이터(N)와 다수의 특징점 기반 마커를 비교하여, 카메라 영상과 마커 데이터와의 비교시간 t초라고 하면, 프레임당 전체 연산 소요 시간 T=N×t초가 소요되나, 본 발명에 따른 검색 방법은 프레임당 동시에 인식되는 다수의 특징점 기반 마커의 개수(n)를 순차적 인덱스 개수(n) 개념으로 도입하여 프레임별로 다수의 특징점 기반 마커와 비교되는 마커 데이터를 순차적 인덱스 개수만큼 순차적으로 비교를 하는 것을 특징으로 한다.
즉, 프레임당 동시에 인식되는 다수의 특징점 기반 마커의 개수가 2개라면, 순차적 인덱스 개수는 2개가 되고, 카메라 영상 1과 마커 데이터(1)를 비교할 때는 순차적으로 2개의 마커 데이터인 1번과 2번 마커 데이터를 추출하여 비교를 하고, 카메라 영상 2와 마커 데이터를 비교할 때는 3번과 4번 마커 데이터를 추출하여 비교를 한다.
따라서, 종래 검색 방법에 있어서 프레임당 전체 연산 소요 시간이 마커 데이터의 수에 비례하는 것과 달리, 본 발명에 따른 검색 방법은 프레임당 동시에 인식되는 다수의 특징점 기반 마커의 개수인 순차적 인덱스 개수의 수에 비례함으로 마커 데이터의 수에 따라 순차적 인덱스 개수를 선택함으로써 프레임당 전체 연산 소요 시간을 조절하거나 줄일 수 있고, 증강현실 시스템의 하드웨어 성능에 맞게 설정할 수 있다.
이와 같은 순차적 인덱스 개념은 전체 마커 데이터에서 프레임당 동시에 인식되는 다수의 특징점 기반 마커의 개수만큼 마커 데이터를 순차적으로 추출하여 비교하고, 이미 인식된 다수의 특징점 기반 마커에 대해서는 인덱스하여 향후 해당 마커 데이터를 고정시켜 순차적 인덱스 개수만큼 마커 데이터를 추출시에 항상 포함시키는 것을 특징으로 한다.
즉, 상기 도 7(a)와 (b)에 도시한 바와 같이 마커 데이터를 상기 순차적 인덱스의 개수만큼 순차적으로 추출하여 비교하는 것과 상기 도 7(c)에 도시한 바와 같이 이전 프레임(카메라 영상2)에서 다수의 특징점 기반 마커가 인식된 경우, 해당 마커 데이터를 인덱스하여 고정시킨 상태에서 마커 데이터를 추출하고 이를 비교하는 것을 특징으로 한다.
예를 들어 도 7에서 순차적 인덱스 개수(n)가 2라면, 카메라 영상 1에서는 도 7(a)와 같이 1번과 2번 마커 데이터를 추출하여 비교를 한다. 이후 입력된 카메라 영상 2에서는 도 7(b)와 같이 3번과 4번 마커 데이터를 추출하여 비교를 한다.
이때, 카메라 영상 2에서 3번 마커 데이터와 동일한 다수의 특징점 기반 마커가 검색되었다면, 이후 카메라 영상 3에서는 상기 도 7(c)에 도시한 바와 같이 상기 카메라 영상 2에서 검색된 3번 마커 데이터를 인덱스하여 고정한 상태에서 2개의 마커 데이터를 순차적으로 추출을 함에 따라 3번 마커 데이터와 5번 마커 데이터를 추출하여 비교를 한다.
따라서, 상기 도 8 본 발명 다수의 특징점 기반 마커를 인식하기 위한 순차 검색 방법의 순서를 보인 순서도에 도시한 바와 같이 본 발명에 따른 검색 방법은 한번 인식된 다수의 특징점 기반 마커는 다음 프레임에서도 계속 인식이 되어야 하는 점에 착안하여 다수의 특징점 기반 마커를 검색함에 있어서 인덱스 개념을 적용하여 프레임당 전체 연산 소요 시간을 상대적으로 줄일 수 있는 것을 특징으로 하는 방법으로 이를 구현하기 위한 구체적인 방법으로 마커 데이터 로딩 단계(S10), 순차적 인덱스 개수 결정 단계(S20), 카메라 영상에서 특징점을 검출하는 단계(S30) 및 마커 데이터를 추출하고 이를 비교하여 다수의 특징점 기반 마커를 인식하는 단계(S40)를 포함하여 이루어진다.
본 발명에 따른 다수의 특징점 기반 마커의 검색 방법은 특징점 기반 마커를 인식하기 위한 마커 데이터가 저장된 마커 데이터베이스와 특징점 기반 마커로 증강현실을 구현하는 증강현실 구현부를 포함하여 다수의 특징점 기반 마커를 마커로 이용하는 증강현실 시스템에 적용되는 방법으로 상기 마커 데이터 로딩 단계(S10)는 특징점 기반 마커의 인식을 위해 사전에 제작되어 등록된 N개의 마커 데이터를 상기 마커 데이터베이스로부터 상기 증강현실 구현부로 로딩한다.
이때, 마커 데이터에는 마커 이미지, 마커 이미지에 대한 특징점 좌표, 특징점에 대한 트리형태의 자료 구조, 증강되는 3차원 오브젝트 데이터 등을 포함한다.
상기 마커 데이터 로딩 단계(S10)에서 마커 데이터의 로딩이 완료되면, 상기 순차적 인덱스 개수 결정 단계(S20)에서 프레임당 상기 N개의 마커 데이터 중에서 순차적으로 인덱스 개수만큼 마커 데이터를 추출하여 특징점 기반 마커와 비교하고 마커로 인식된 특징점 기반 마커를 인덱스하기 위해, 현재 프레임에서 인식될 마커 데이터의 개수(n)를 1개 이상 N개 이하의 범위에서 선택하고, 이전 프레임이 없는 경우는 인식된 마커 데이터의 개수(m)를 0개로 하여, 프레임에서 인식될 마커 데이터의 개수(n)에서 이전 프레임에서 인식된 마커 데이터의 개수(m)를 제한 값(n-m)으로 순차적 인덱스 개수(i)를 결정한다.
즉, 초기 인덱스의 개수(n)가 5이고 이전 프레임에서 인식된 마커 데이터의 개수(m)가 3이라면, 순차적 인덱스 개수(i)는 2가 된다. 따라서 상기 다수의 특징점 기반 마커를 인식하는 단계(S40)에서는 이미 인식되어 인덱스된 마커 데이터(3개)와 순차적으로 추출된 2개의 마커 데이터를 포함한 5개의 마커 데이터를 추출한다.
상기 카메라 영상에서 특징점을 검출하는 단계(S30)는 카메라를 통해 취득된 영상을 소정의 버퍼에 저장하고, 상기 버퍼에 저장된 영상에서 특징점을 검출한다. 이때, 특징점을 검출하는 방법은 다양한 방법을 이용할 수 있고, 어느 특정된 특징점 검출 방법에 국한되지 않는다.
우선, 특징점 추출은 인식을 위해 사전에 만들어진 마커와 동일한 특징점 추출 기법을 이용하며, 이와 같은 특징점 추출 기법에는 LoG(Laplacian of Gaussian), DoG(Difference of Gaussians), FAST Corner Detector 등이 있으며, LoG와 DoG는 모두 Gaussian Filter를 사용한다.
상기 LoG는 Gaussian Filter를 이용하여 노이즈를 제거하고 그 결과에 Laplacian을 적용하는 것으로 단순히 Laplacian 마스크를 이용하여 엣지를 추출하는 것보다 gaussian을 이용하기 때문에 노이즈에 강하고 좀더 굵은 엣지를 추출할 수 있는 장점이 있다.
또한, 상기 DoG는 Gaussian Filter의 분산값을 다르게 준 Gaussian 영상 간의 차이를 이용하는 것으로 LoG에 비해 연산 속도가 빠르다는 장점이 있다.
본 발명에서는 특징점 추출 기법으로 LoG를 이용하는 것이 바람직하다. 이는 노이즈에 강하고 좀더 굵은 엣지를 추출함으로써 다수의 특징점 마커와 추출된 마커 데이터의 비교가 용이하도록 하기 위함이다.
상기와 같은 특징점 추출 방법으로 카메라로 획득한 영상의 프레임에서 특징점이 검출되면, 상기 마커 데이터를 추출하고 이를 비교하여 다수의 특징점 기반 마커를 인식하는 단계(S40)에서는 순차적 인덱스 개수 결정 단계(S20)에서 결정된 순차적 인덱스 개수(i) 만큼의 마커 데이터를 로딩된 N개의 마커 데이터에서 순차적으로 추출하고, 이렇게 추출된 마커 데이터와 상기 카메라로 획득한 영상의 프레임에서 검출된 특징점을 비교하여 다수의 특징점 기반 마커를 인식한다.
상기 특징점의 비교는 다양한 방법으로 구현이 가능하고, 어느 특정된 방법에 국한되지 않으나, 특징점의 좌표에 대한 색상 비교가 가능한 트리형태의 자료구조를 이용하는 ransac 알고리즘을 이용하는 것이 바람직하다.
이때, 상기 카메라로 획득한 영상의 프레임의 이전 프레임에서 다수의 특징점 마커로 인식되어 인덱스된 마커 데이터가 있는 경우에는, 인덱스된 마커 데이터를 고정한 상태에서 이를 포함한 순차적 인덱스 개수(i) 만큼 순차적으로 마커 데이터를 추출하며, 이때 이전 프레임에서 다수의 특징점 마커로 인식된 마커 데이터와 순차적으로 추출된 마커 데이터가 중복되지 않도록 한다.
상기와 같은 다수의 특징점 기반 마커의 검색 방법을 통해 특징점 기반 마커가 인식된다.
이상 설명한 바와 같은 다수의 특징점 기반 마커를 인식하기 위한 순차 검색 방법을 이용한 증강현실 구현 방법은 상기 도 9에 도시한 바와 같이, N개의 인식할 마커 데이터를 로딩하는 단계(S100), 이전 프레임에서 인식된 특징점 마커 데이터의 수를 0으로 셋팅하는 단계(S200), 순차적 인덱스 개수를 결정하는 단계(S300), 카메라로 영상을 획득하고, 획득한 영상에서 특징점을 검출하는 단계(S400), 순차적 인덱스 개수에 해당하는 마커 데이터를 추출하는 단계(S500), 추출된 마커 데이터와 특징점을 비교하여 특징점 기반 마커로 인식되는 특징점 기반 마커가 없으면 상기 순차적 인덱스 개수를 결정하는 단계(S300)로 돌아가고, 특징점 기반 마커가 존재하면 이를 검출하는 특징점 기반 마커 검출 단계(S600), 검출된 특징점 기반 마커(m개)의 3차원 매트릭스를 획득하는 단계(S700), 검출된 특징점 기반 마커에 대한 3차원 오브젝트를 3차원 매트릭스에 따라 렌더링하여 증강하는 증강 단계(S800) 및 m개의 특징점 기반 마커에 대한 인덱스를 고정하는 단계(S900)를 포함한다.
상기 N개의 인식할 마커 데이터를 로딩하는 단계(S100)는 특징점 기반 마커의 인식을 위해 사전에 제작되어 등록된 N개의 마커 데이터를 마커 데이터베이스로부터 증강현실 구현부로 로딩한다. 이때, 마커 데이터에는 마커 이미지, 마커 이미지에 대한 특징점 좌표, 특징점에 대한 트리형태의 자료 구조, 증강되는 3차원 오브젝트 데이터 등을 포함한다.
상기 이전 프레임에서 인식된 특징점 마커 데이터의 수(m)를 0으로 셋팅하는 단계(S200)는 첫 프레임의 경우 이전 프레임이 존재하지 않기 때문에 이전 프레임에서 인식된 특징점 마커 데이터의 수가 없으므로 이를 위해 m값을 0으로 셋팅한다.
상기 순차적 인덱스 개수(i)를 결정하는 단계(S300)는 프레임당 동시에 인식되는 다수의 특징점 기반 마커의 개수(n)에서 이전 프레임에서 인식된 특징점 기반 마커의 개수(m)를 차감한 값(n-m)으로 초기 순차적 인덱스 개수는 m=0임으로 순차적 인덱스 개수 i=n이 된다. 이후, 상기 특징점 기반 마커 검출 단계(S600)에서 검출된 특징점 기반 마커의 수에 따라 순차적 인덱스 개수는 결정된다.
상기 카메라로 영상을 획득하고, 획득한 영상에서 특징점을 검출하는 단계(S400)는 카메라를 통해 취득된 영상을 소정의 버퍼에 저장하고, 상기 버퍼에 저장된 영상에서 특징점을 검출하며, 특징점을 검출하는 방법은 앞서 설명한 바와 같이 특징점 추출은 인식을 위해 사전에 만들어진 마커와 동일한 특징점 추출 기법을 이용하며, LoG(Laplacian of Gaussian), DoG(Difference of Gaussians), FAST Corner Detector 등을 이용한다.
본 발명에서는 특징점 추출 기법으로 LoG를 이용하는 것이 바람직하다. 이는 노이즈에 강하고 좀더 굵은 엣지를 추출함으로써 다수의 특징점 마커와 추출된 마커 데이터의 비교가 용이하도록 하기 위함이다.
상기 순차적 인덱스 개수에 해당하는 마커 데이터를 추출하는 단계(S500)는 상기와 같은 특징점 추출 방법으로 카메라로 획득한 영상의 프레임에서 특징점이 검출되면, 순차적 인덱스 개수(i) 만큼의 마커 데이터를 로딩된 N개의 마커 데이터에서 순차적으로 추출한다. 이때, 상기 카메라로 획득한 영상의 프레임의 이전 프레임에서 다수의 특징점 마커로 인식되어 인덱스된 마커 데이터가 있는 경우에는, 인덱스된 마커 데이터를 고정한 상태에서 이를 포함한 순차적 인덱스 개수(i) 만큼 순차적으로 마커 데이터를 추출하며, 이때 이전 프레임에서 다수의 특징점 마커로 인식된 마커 데이터와 순차적으로 추출된 마커 데이터가 중복되지 않도록 한다.
상기 특징점 기반 마커 검출 단계(S600)는 특징점 마커를 인식하는 단계로 추출된 마커 데이터와 검출된 특징점을 비교하여 특징점 기반 마커로 인식되면 이후 단계를 진행하고, 특징점 기반 마커가 없어 인식되지 않으면 상기 순차적 인덱스 개수를 결정하는 단계(S300)로 돌아간다. 이때 상기 특징점의 비교는 다양한 방법으로 구현이 가능하고, 어느 특정된 방법에 국한되지 않으나, 특징점의 좌표에 대한 색상 비교가 가능한 트리형태의 자료구조를 이용하는 ransac 알고리즘을 이용하는 것이 바람직하다.
상기 검출된 특징점 기반 마커(m개)의 3차원 매트릭스를 획득하는 단계(S700)는 상기 특징점 기반 마커 검출 단계(S600)에서 인식된 m개의 특징점 기반 마커에 대한 상대적 위치를 계산하여 3차원 매트릭스를 획득한다.
상기 검출된 특징점 기반 마커에 대한 3차원 오브젝트를 3차원 매트릭스에 따라 렌더링하여 증강하는 증강 단계(S800)는 실시간 영상에 가상의 증강 영상을 합성하기 위한 것으로 3차원 오브젝트를 상기 3차원 매트릭스를 획득하는 단계(S700)에서 획득된 3차원 매트릭스를 3차원 엔진(OpenGL, DirectX 등)에 적용하여 해당되는 3D 오브젝트를 렌더링하여 원근이 적용된 가상의 증강 영상을 생성하고 이를 실시간 영상에 합성하여 출력한다.
상기 m개의 특징점 기반 마커에 대한 인덱스를 고정하는 단계(S900)는 상기 특징점 기반 마커 검출 단계(S600)에서 인식된 m개의 특징점 기반 마커에 대한 인덱스를 고정하는 것으로 이를 통해 상기 순차적 인덱스 개수를 결정한다.
이상에서는 본 발명을 바람직한 실시 예에 의거하여 설명하였으나, 본 발명의 기술적 사상은 이에 한정되지 아니하고 청구항에 기재된 범위 내에서 변형이나 변경 실시가 가능함은 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에게 명백한 것이며, 그러한 변형이나 변경은 첨부된 특허청구범위에 속한다 할 것이다.
본 발명은 사용자에게 마커의 형태를 가시화하지 않고 다수의 특징점 기반 증강 시스템에서 다수의 특징점 기반 마커의 효율적인 검색 방법을 제공함으로써, 전시, 홍보, 의료, 군사 분야 등에서 다양한 형태로 응용되어 적용될 수 있다.

Claims (6)

  1. 특징점 기반 마커를 인식하기 위한 마커 데이터가 저장된 마커 데이터베이스와 특징점 기반 마커로 증강현실을 구현하는 증강현실 구현부를 포함하여 다수의 특징점 기반 마커를 마커로 이용하는 증강현실 시스템에서 마커를 인식하는 방법에 있어서,
    (a) 특징점 기반 마커의 인식을 위해 사전에 제작되어 등록된 N개의 마커 데이터를 상기 마커 데이터베이스로부터 상기 증강현실 구현부로 로딩하는 단계;
    (b) 프레임당 상기 N개의 마커 데이터 중에서 순차적으로 인덱스 개수만큼 마커 데이터를 추출하여 특징점 기반 마커와 비교하고 마커로 인식된 특징점 기반 마커를 인덱스하기 위해, 현재 프레임에서 인식될 마커 데이터의 개수(n)를 1개 이상 N개 이하의 범위에서 선택하고, 이전 프레임이 없는 경우는 인식된 마커 데이터의 개수(m)를 0개로 하여, 프레임에서 인식될 마커 데이터의 개수(n)에서 이전 프레임에서 인식된 마커 데이터의 개수(m)를 제한 값(n-m)으로 순차적 인덱스 개수(i)를 결정하는 단계;
    (c) 카메라를 통해 취득된 영상의 프레임에서 특징점을 검출하는 단계; 및
    (d) 상기 프레임에서 검출된 특징점과 상기 N개의 마커 데이터에서 상기 이전 프레임에서 인식되어 인덱스된 마커 데이터를 고정한 상태에서 상기 순차적 인덱스 개수(i) 만큼 순차적으로 추출된 i개의 마커 데이터와 비교하여 특징점 기반 마커를 인식하는 단계;를 포함하는 것을 특징으로 하는 다수의 특징점 기반 마커를 인식하기 위한 순차 검색 방법.
  2. 제1항에 있어서, 상기 마커 데이터는
    마커 이미지, 마커 이미지에 대한 특징점 좌표, 특징점에 대한 트리형태의 자료 구조, 증강되는 3차원 오브젝트 데이터로 이루어지는 것을 특징으로 하는 다수의 특징점 기반 마커를 인식하기 위한 순차 검색 방법.
  3. 제1항에 있어서, 상기 (c)단계에서의 특징점 검출은
    Gaussian Filter를 이용하여 노이즈를 제거하고, 그 결과에 Laplacian을 적용하는 특징점 추출 기법에 의해 검출되는 것을 특징으로 하는 다수의 특징점 기반 마커를 인식하기 위한 순차 검색 방법.
  4. 특징점 기반 마커를 인식하기 위한 마커 데이터가 저장된 마커 데이터베이스와 특징점 기반 마커로 증강현실을 구현하는 증강현실 구현부를 포함하여 다수의 특징점 기반 마커를 마커로 이용하는 증강현실 시스템에서 마커를 인식하여 증강현실을 구현하는 방법에 있어서,
    (a) 특징점 기반 마커의 인식을 위해 사전에 제작되어 등록된 N개의 마커 데이터를 상기 마커 데이터베이스로부터 상기 증강현실 구현부로 로딩하는 단계;
    (b) 프레임당 상기 N개의 마커 데이터 중에서 순차적으로 인덱스 개수만큼 마커 데이터를 추출하여 특징점 기반 마커와 비교하고 마커로 인식된 특징점 기반 마커를 인덱스하기 위해, 현재 프레임에서 인식될 마커 데이터의 개수(n)를 1개 이상 N개 이하의 범위에서 선택하고, 이전 프레임이 없는 경우는 인식된 마커 데이터의 개수(m)를 0개로 하여, 프레임에서 인식될 마커 데이터의 개수(n)에서 이전 프레임에서 인식된 마커 데이터의 개수(m)를 제한 값(n-m)으로 순차적 인덱스 개수(i)를 결정하는 단계;
    (c) 카메라를 통해 취득된 영상의 프레임에서 특징점을 검출하는 단계;
    (d) 상기 프레임에서 검출된 특징점과 상기 N개의 마커 데이터에서 상기 이전 프레임에서 인식되어 인덱스된 마커 데이터를 고정한 상태에서 상기 순차적 인덱스 개수(i) 만큼 순차적으로 추출된 i개의 마커 데이터와 비교하여 특징점 기반 마커를 인식하는 단계;
    (e) 상기 프레임에서 검색되어 인식된 특징점 기반 마커에 해당하는 마커 데이터를 N개의 마커 데이터 중에서 검출하는 단계;
    (f) 검출된 마커 데이터의 3차원 좌표를 추출하고, 추출된 좌표값에 따른 3차원 렌더링을 통해 상기 검출된 마커 데이터에 따른 증강이미지를 생성하는 단계; 및
    (g) 상기 카메라를 통해 취득되는 실시간 영상에 상기 증강이미지를 합성하여 출력하는 증강현실 적용 단계;를 포함하는 것을 특징으로 하는 다수의 특징점 기반 마커를 인식하기 위한 순차 검색 방법을 이용한 증강현실 구현 방법.
  5. 제4항에 있어서, 상기 마커 데이터는
    마커 이미지, 마커 이미지에 대한 특징점 좌표, 특징점에 대한 트리형태의 자료 구조, 증강되는 3차원 오브젝트 데이터로 이루어지는 것을 특징으로 하는 다수의 특징점 기반 마커를 인식하기 위한 순차 검색 방법을 이용한 증강현실 구현 방법.
  6. 제4항에 있어서, 상기 (c)단계에서의 특징점 검출은
    Gaussian Filter를 이용하여 노이즈를 제거하고, 그 결과에 Laplacian을 적용하는 특징점 추출 기법에 의해 검출되는 것을 특징으로 하는 다수의 특징점 기반 마커를 인식하기 위한 순차 검색 방법을 이용한 증강현실 구현 방법.
PCT/KR2009/007843 2009-12-22 2009-12-28 다수의 특징점 기반 마커를 인식하기 위한 순차 검색 방법 및 이를 이용한 증강현실 구현 방법 WO2011078430A1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR1020090128928A KR101039298B1 (ko) 2009-12-22 2009-12-22 다수의 특징점 기반 마커를 인식하기 위한 순차 검색 방법 및 이를 이용한 증강현실 구현 방법
KR10-2009-0128928 2009-12-22

Publications (1)

Publication Number Publication Date
WO2011078430A1 true WO2011078430A1 (ko) 2011-06-30

Family

ID=44195937

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/KR2009/007843 WO2011078430A1 (ko) 2009-12-22 2009-12-28 다수의 특징점 기반 마커를 인식하기 위한 순차 검색 방법 및 이를 이용한 증강현실 구현 방법

Country Status (2)

Country Link
KR (1) KR101039298B1 (ko)
WO (1) WO2011078430A1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103164690A (zh) * 2011-12-09 2013-06-19 金耀有限公司 利用运动趋势跟踪增强现实三维多标记的方法和装置

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101329102B1 (ko) * 2012-02-28 2013-11-14 주식회사 케이쓰리아이 레이아웃 기술자와 이미지 특징점을 이용한 실시간 증강현실 이미지 검색시스템
KR101397522B1 (ko) 2012-10-15 2014-05-27 건국대학교 산학협력단 증강 현실 기반의 정맥 주사 훈련 시뮬레이터 시스템 및 방법
KR101892740B1 (ko) 2016-10-11 2018-08-28 한국전자통신연구원 통합 이미지 마커 생성 방법 및 그 방법을 수행하는 시스템
KR101982346B1 (ko) * 2017-06-14 2019-05-27 주식회사 더미리 노래 서비스를 제공하기 위한 서버장치

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20040055310A (ko) * 2002-12-20 2004-06-26 한국전자통신연구원 고속 마커프리 모션 캡쳐 장치 및 방법
KR20060021001A (ko) * 2004-09-02 2006-03-07 (주)제니텀 엔터테인먼트 컴퓨팅 개체인지를 이용한 Marker-less 증강현실과 복합현실 응용시스템 및 그 방법
KR20080073933A (ko) * 2007-02-07 2008-08-12 삼성전자주식회사 객체 트래킹 방법 및 장치, 그리고 객체 포즈 정보 산출방법 및 장치

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20040055310A (ko) * 2002-12-20 2004-06-26 한국전자통신연구원 고속 마커프리 모션 캡쳐 장치 및 방법
KR20060021001A (ko) * 2004-09-02 2006-03-07 (주)제니텀 엔터테인먼트 컴퓨팅 개체인지를 이용한 Marker-less 증강현실과 복합현실 응용시스템 및 그 방법
KR20080073933A (ko) * 2007-02-07 2008-08-12 삼성전자주식회사 객체 트래킹 방법 및 장치, 그리고 객체 포즈 정보 산출방법 및 장치

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103164690A (zh) * 2011-12-09 2013-06-19 金耀有限公司 利用运动趋势跟踪增强现实三维多标记的方法和装置

Also Published As

Publication number Publication date
KR101039298B1 (ko) 2011-06-07

Similar Documents

Publication Publication Date Title
WO2022050473A1 (ko) 카메라 포즈 추정 장치 및 방법
EP3547256B1 (en) Extracting a feature descriptor for an image feature
WO2011093581A2 (ko) 비전 영상 정보 저장 시스템과 그 방법, 및 상기 방법을 구현하는 프로그램이 기록된 기록매체
KR101848959B1 (ko) 컬러 채널 및 광학 마커
US6701014B1 (en) Method and apparatus for matching slides in video
CN108648224B (zh) 一种基于人工神经网络的实时场景布局识别及重建的方法
WO2013015549A2 (ko) 평면 특성 기반 마커리스 증강 현실 시스템 및 그 동작 방법
CN106355153A (zh) 一种基于增强现实的虚拟对象显示方法、装置以及系统
WO2014003081A1 (en) Method for registering data
KR20110058871A (ko) 데이터의 공간의 주요 치수를 항해하기 위한 제어 시스템
WO2011078430A1 (ko) 다수의 특징점 기반 마커를 인식하기 위한 순차 검색 방법 및 이를 이용한 증강현실 구현 방법
WO2012091326A2 (ko) 고유식별 정보를 이용한 3차원 실시간 거리뷰시스템
US6411339B1 (en) Method of spatio-temporally integrating/managing a plurality of videos and system for embodying the same, and recording medium for recording a program for the method
WO2011034305A2 (ko) 건축물 이미지의 계층적 매칭 방법, 시스템 및 컴퓨터 판독 가능한 기록 매체
WO2017163384A1 (ja) データ処理装置、データ処理方法及びデータ処理プログラム
KR20210146770A (ko) 실내 측위 방법, 장치, 장비 및 저장 매체
WO2015008932A1 (ko) 증강현실에서의 원격 협업을 위한 디지로그 공간 생성기 및 그를 이용한 디지로그 공간 생성 방법
JP2018010599A (ja) 情報処理装置、パノラマ画像表示方法、パノラマ画像表示プログラム
CN110717452A (zh) 图像识别方法、装置、终端及计算机可读存储介质
WO2018169110A1 (ko) 3차원 객체 표현을 위한 마커리스 증강현실장치 및 방법
WO2011093568A1 (ko) 레이아웃 기반의 인쇄매체 페이지 인식방법
CN112270242B (zh) 轨迹的显示方法、装置、可读介质和电子设备
WO2019098421A1 (ko) 모션 정보를 이용한 객체 복원 장치 및 이를 이용한 객체 복원 방법
US11954817B2 (en) Method of plane tracking
WO2023038369A1 (en) Semantic three-dimensional (3d) building augmentation

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 09852629

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 09852629

Country of ref document: EP

Kind code of ref document: A1