WO2018169110A1 - 3차원 객체 표현을 위한 마커리스 증강현실장치 및 방법 - Google Patents

3차원 객체 표현을 위한 마커리스 증강현실장치 및 방법 Download PDF

Info

Publication number
WO2018169110A1
WO2018169110A1 PCT/KR2017/002900 KR2017002900W WO2018169110A1 WO 2018169110 A1 WO2018169110 A1 WO 2018169110A1 KR 2017002900 W KR2017002900 W KR 2017002900W WO 2018169110 A1 WO2018169110 A1 WO 2018169110A1
Authority
WO
WIPO (PCT)
Prior art keywords
image
image frame
frame
camera module
augmented reality
Prior art date
Application number
PCT/KR2017/002900
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 주식회사 언리얼파크
Priority to PCT/KR2017/002900 priority Critical patent/WO2018169110A1/ko
Publication of WO2018169110A1 publication Critical patent/WO2018169110A1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T19/00Manipulating 3D models or images for computer graphics
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/20Analysis of motion
    • G06T7/292Multi-camera tracking
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/70Determining position or orientation of objects or cameras
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/40Extraction of image or video features

Definitions

  • the present invention relates to a markerless augmented reality device and method for three-dimensional object representation.
  • Augmented reality unlike virtual reality that combines the virtual objects in the virtual environment, can combine the virtual objects in the real world. Therefore, augmented reality is possible in a variety of applications in reality.
  • the augmented reality device for implementing augmented reality requires hardware technologies such as a camera module, a sensor module, a display module, and software technologies such as registration technology, recognition technology, and computer vision. Through these techniques, the augmented reality device can grasp the user's surrounding information and gaze, posture, motion, etc. using the augmented reality. The augmented reality device generates a virtual object based on the identified information, and transmits the generated virtual object to the user in accordance with the reality.
  • the AR device requires an intermediary between the virtual object and the real image in order to generate the virtual object in the image of the real reality.
  • the augmented reality device continuously tracks and recognizes these media to set a reference system.
  • augmented reality devices use markers such as mechanical, magnetic, and optical for tracking and recognition.
  • augmented reality devices may use a method of using an infrared (IR) marker.
  • IR infrared
  • the markerless tracking technique extracts and tracks feature points from specific objects in the real world instead of artificially set markers.
  • PTAM parallel tracking and mapping
  • Korean Patent Publication No. 10-1506610 (name of the invention: “augmented reality providing apparatus and method thereof”) includes a camera unit, an image recognition unit, an object extractor, an advertisement information acquirer, a synthesizer, and a display unit.
  • an apparatus for providing augmented reality including the same.
  • This patent recognizes an object included in an image photographed through a camera unit including two camera modules and extracts an object through an image recognition unit and an object extracting unit.
  • This patent synthesizes content information and advertisement information corresponding to the extracted object through a synthesis unit and displays the image through a display unit.
  • the present invention is to solve the above-mentioned problems of the prior art, and provides a markerless augmented reality device and method for representing a three-dimensional object in augmented reality.
  • the markerless augmented reality device for three-dimensional object representation comprises a camera module, a memory storing the three-dimensional object matching program and a processor for executing the program Include.
  • the processor restores three-dimensional coordinates corresponding to the image frame based on the plurality of image images included in the image frame input from the camera module in real time according to the execution of the program, and based on the three-dimensional coordinates.
  • the image frame is set as a new key frame, and the preset key is set based on the three-dimensional coordinates corresponding to the new key frame and the image frame.
  • the map is expanded, and the 3D object is represented in the image frame according to the expanded map and the restored 3D space coordinates.
  • the three-dimensional object representation method in the markerless augmented reality device is a three-dimensional coordinates corresponding to the image frame based on a plurality of image images included in the image frame input in real time from the camera module Restoring; Comparing the image frames with the plurality of key frames based on the three-dimensional coordinates; Comparing the image frame with each of the plurality of key frames based on the three-dimensional coordinates; If the plurality of key frames and the image frame are different, setting the image frame as a new key frame; Expanding the predetermined map based on the three-dimensional coordinates corresponding to the new key frame and the image frame; And expressing the 3D object in the image frame according to the expanded map and the restored 3D space coordinates.
  • the present invention can track feature points in an image frame input in real time by one camera module.
  • the present invention may match the virtual object based on the feature information included in the image frame, without a separate marker or a specific object for matching the virtual object.
  • the present invention can generate and provide a map to the user without feeling separated between the virtual object and the real object. And the present invention can easily and simply provide a user with a realistic augmented reality.
  • FIG. 1 is a block diagram of a markerless augmented reality device according to an embodiment of the present invention.
  • FIG. 2 is an exemplary diagram of three-dimensional space extraction according to an embodiment of the present invention.
  • FIG 3 is an exemplary view of a three-dimensional object according to an embodiment of the present invention.
  • FIG. 4 is a flowchart of a 3D object representation method according to an embodiment of the present invention.
  • FIG. 1 is a block diagram of a markerless augmented reality device 100 according to an embodiment of the present invention.
  • the markerless augmented reality device 100 may match a 3D object to an image frame displayed in real time through the camera module 110.
  • the markerless augmented reality device 100 may be a mobile device.
  • the 3D object may be a virtual object.
  • the markerless augmented reality device 100 includes a camera module 110, a display module 120, a memory 130, and a processor 140.
  • the camera module 110 collects image data in real time.
  • the image data may include a plurality of image frames.
  • the camera module 110 may be mounted on the markerless augmented reality device 100 or connected to the markerless augmented reality device 100.
  • the camera module 110 may be an image sensor included in the markerless augmented reality device 100.
  • the camera module 110 may be calibrated. If the camera module 110 is calibrated, the camera module 110 may store the calibration parameters used for the calibration or transfer the calibration parameters to the processor 140.
  • the display module 120 may display an image frame obtained by matching the 3D object to the camera module 110 in real time.
  • the memory 130 stores a program for registering 3D objects in an image frame.
  • the memory 130 refers to a nonvolatile storage device that maintains stored information even when power is not supplied, and a volatile storage device that requires power to maintain stored information.
  • the processor 140 executes a program stored in the memory 130.
  • the processor 140 may generate an initial map from new image frames that are continuously input in real time through the camera module 110.
  • the processor 140 may extract a feature point from a new image frame.
  • the feature point extraction method may be at least one of scale invariant feature transform (SIFT), speeded-up robust feature (SUFR), and features from accelerated segment test (FAST), but is not limited thereto.
  • SIFT scale invariant feature transform
  • SUFR speeded-up robust feature
  • FAST features from accelerated segment test
  • the image frame may include both an image frame photographing a real object having a standardized shape, such as a specific card, book or printed matter, and an image frame photographing an atypical real object.
  • FIG. 2 is an exemplary diagram of three-dimensional space extraction according to an embodiment of the present invention.
  • the processor 140 may extract 3D coordinates with respect to feature points extracted from consecutive image frames.
  • the processor 140 may extract three-dimensional coordinates based on the image image corresponding to the right eye and the image image corresponding to the left eye, as if a person looks three-dimensionally through the right eye and the left eye. have. Therefore, in order to extract three-dimensional coordinates, the processor 140 may include a plurality of image images among the image frames continuously input from one camera module 110 in real time, corresponding to the first image image 200 corresponding to the left eye of a person. And the second video image 210 corresponding to the right eye of the person.
  • the processor 140 may select a specific video image included in the continuous video frame as the first video image.
  • the processor 140 may display an image image in which a specific real object included in the first image image is different from the first image image 220 at a position different from the predetermined distance or more than a predetermined angle by the second image image ( 210).
  • the processor 140 may select the specific video image included in the consecutive video frames as the first video image 200.
  • the processor 140 may select a video image after a predetermined frame or a predetermined time from the corresponding video image as the second video image 210.
  • the processor 140 may calculate a fundamental matrix based on the selected first image image 200 and the second image image 210.
  • the processor 140 may normalize the first image image 200 and the second image image 210.
  • the processor 140 may calculate an optical flow based on the normalized image. To this end, the processor 140, for each of the first image image 200 and the second image image 210, includes a half image, a quarter image, a 1/8 image, a 1/16 image, and a pyramid form. 1/32 images can be obtained. In addition, the processor 140 may calculate an optical flow from the highest image of the acquired image.
  • the processor 140 may match the first image image 200 and the second image image 210 based on the optical flow calculated from the first image image 200 and the second image image 210. .
  • the processor 140 may calculate a base matrix through the first image image 200 and the second image image 210 matched with each other.
  • the processor 140 may match the feature points extracted from the first image image 200 and the second image image 210 and calculate a base matrix based on a random sample consensus (RANSAC) algorithm.
  • the processor 140 may match the feature points extracted from the first image image 200 and the second image image 210 and calculate a base matrix based on the machine learning algorithm, but is not limited thereto.
  • RANSAC random sample consensus
  • the calculated base matrix may be generated based on the generated first image image 200 and the second image image 210 through the corrected camera module 110. Therefore, the processor may remove the correction parameter of the camera module 110 from the first image 200 and the second image 210, and then generate an essential matrix.
  • the processor 140 may calculate the required matrix from the base matrix based on the inverse of the correction parameter of the camera module 110.
  • the required matrix calculated as described above may include relationship information between the first video image 200 and the second video image 210.
  • the relationship information may include distance or rotation information between the first image image 200 and the second image image 210. That is, the processor 140 may extract distance and rotation information between the first video image 200 and the second video image 210 as relationship information through an essential matrix.
  • the processor 140 may extract three-dimensional coordinates from the first video image 200 and the second video image 210 through essential matrix or relationship information.
  • the processor 140 may use singular values decomposed (SVD) and triangulate.
  • the processor 140 may generate the first matrix.
  • the processor 140 may restore three-dimensional spatial coordinates by triangulating the extracted position information of the first image image 200 and the position information of the second image image 210.
  • the processor 140 may perform eigen decomposition on a covariance matrix of a plurality of 3D coordinates extracted through the above process.
  • the covariance matrix for the x-axis, the y-axis, and the z-axis included in the three-dimensional coordinates may be defined through the expected value function E as shown in Equation 1 below.
  • Equation 1 m x , m y and m z mean an average value for each axis.
  • the processor 140 may calculate three eigen values through eigenvalue decomposition. In this case, the calculated three eigenvalues are orthogonal to each other. Therefore, the calculated three eigenvalues may mean three axes.
  • the processor 140 may calculate the slope of the plane on the input image frame through the three calculated eigenvalues.
  • the processor 140 may set an initial map through the calculated slope of the plane and the plurality of extracted three-dimensional coordinates.
  • the conventional markerless augmented reality device 100 implements an initial map by extracting a plurality of images including the same object from an image frame.
  • the markerless augmented reality apparatus 100 may implement an initial map using a plurality of image images regardless of whether the same object is included or not through the above-described process.
  • the processor 140 may express the 3D object on the set initial map.
  • FIG 3 is an exemplary view of a three-dimensional object according to an embodiment of the present invention.
  • the processor 140 may match the 3D object 310 to the image frame 300 input in real time based on the set initial map.
  • the image frame 300 in which the 3D object 310 is matched may be displayed on the display module 120.
  • the 3D object 310 may be a 3D object moving in the image frame 300.
  • the 3D object 310 may be generated by a user or selected by a user from among a plurality of 3D objects included in the augmented reality device 100 in advance.
  • the processor 140 may expand the predetermined initial map as the camera module 110 moves.
  • the processor 140 compares an image frame input from the camera module 110 in real time with a key frame included in a key frame set.
  • the key frame may be an image frame that is different from a previously input image frame by a predetermined distance or more among image frames that are continuously input.
  • the key frame set may be a set including a plurality of image frames selected by the processor 140 as a key frame.
  • the key frame used for the comparison may be a key frame recently added to the key frame set.
  • the image frame for performing comparison with the key frame may be an image frame that differs by more than a predetermined number of frames from the most recently added key frame.
  • the predetermined number of frames may be 20 frames, but is not limited thereto.
  • the processor 140 may extract the feature point from the image frame by using the same method as the feature point extraction method used when the initial map is set.
  • the processor 140 may calculate a distance between the feature point extracted from the image frame and the feature point extracted from the key frame. When the calculated distance is greater than or equal to a preset value, the processor 140 may set the input image frame as a new key frame.
  • the distance may be calculated using Euclidean distance, Manhattan distance, and the like.
  • the distance may be calculated based on cosine similarity and correlation coefficient based similarity, but is not limited thereto.
  • the processor 140 expands the initial map based on the set new key frame.
  • the processor 140 restores three-dimensional spatial coordinates of the three-dimensional object based on the expanded map and expresses the three-dimensional object in the image frame.
  • the processor 140 may reconstruct three-dimensional coordinates corresponding to the image frame based on the plurality of image images included in the input image frame.
  • the processor 140 may extract two video images from the plurality of video images.
  • the processor 140 may calculate relationship information between two video images.
  • the processor 140 may restore two-dimensional coordinates corresponding to the image frame by matching two image images based on the calculated relationship information.
  • the relationship information between the two video images may include distance or rotation information between the two video images.
  • the processor 140 compares the image frame with any one key frame included in the plurality of key frames based on the three-dimensional coordinates, and when the image frame and any one key frame are different, the input image frame is input. Can be set to a new key frame.
  • the processor 140 may expand the preset map based on the 3D coordinates corresponding to the new key frame and the image frame.
  • the processor 140 may express the 3D object in the image frame according to the expanded map and the restored 3D space coordinates.
  • the processor 140 may calculate and track information of the moving camera module 110.
  • the processor 140 may extract a feature point from an input image frame through the feature point extraction method described above.
  • the processor 140 may generate 3D coordinates based on the extracted feature points.
  • the processor 140 may project the 3D coordinates to the input image frame again. If the projected three-dimensional coordinates are greater than or equal to a predetermined value, a rotation matrix and a translation matrix of an image may be calculated based on a Rodrigues' rotation formula. The processor 140 may calculate information of the current camera module 110 based on the calculated rotation matrix and the movement matrix.
  • the information of the camera module 110 may include the position of the current camera module and the rotation information of the current camera module.
  • the information of the current camera module may be a relative value with respect to the information of the camera calculated from a previously input image frame.
  • the information of the current camera module may be a relative value with respect to the information of the camera module calculated when the initial map is generated, but is not limited thereto.
  • the processor 140 may calculate information of the camera module 110 based on the generated three-dimensional coordinates.
  • the processor 140 may adjust the distance and angle of the 3D object 310 based on the calculated camera module 110.
  • the 3D object providing program included in the markerless augmented reality device 100 may be provided to a developer in the form of a software development kit (SDK) for developing markerless augmented reality.
  • SDK software development kit
  • developers can develop various markerless augmented reality applications through a software development kit for developing markerless augmented reality.
  • FIG. 4 is a flowchart of a 3D object representation method according to an embodiment of the present invention.
  • the markerless augmented reality apparatus 100 restores three-dimensional coordinates corresponding to the image frame based on the plurality of image images included in the image frame input in real time from the camera module 110 (S400).
  • the markerless augmented reality apparatus 100 compares the image frame with each of the plurality of key frames based on three-dimensional coordinates (S410).
  • the markerless augmented reality device 100 sets the image frame as a new key frame (S420).
  • the markerless augmented reality device 100 expands the predetermined map based on the three-dimensional coordinates corresponding to the new key frame and the image frame (S430).
  • the markerless augmented reality apparatus 100 expresses a 3D object in an image frame according to the expanded map and the restored 3D space coordinates (S440).
  • the markerless augmented reality apparatus 100 may express the 3D object by tracking the 3D spatial coordinates according to the movement of the camera module 110 after the 3D object is expressed in the image frame.
  • the markerless augmented reality apparatus 100 may calculate information of the camera module 110 with respect to an image frame input in real time.
  • the information of the camera module 110 may include the position of the camera module 110 and the rotation information of the camera module 110.
  • the markerless augmented reality apparatus 100 may track three-dimensional space coordinates based on the calculated camera module 110 information.
  • the markerless augmented reality apparatus 100 and method for 3D object representation may track feature points in an image frame input in real time by one camera module 110.
  • the markerless augmented reality apparatus 100 and method for representing a 3D object generate a map without a separate feeling between a virtual object and a real object based on a feature in an image frame without a separate marker and a specific object. Can be provided to the user. Therefore, the markerless augmented reality apparatus 100 and method for representing a 3D object may provide a user with realistic augmented reality.
  • the markerless augmented reality apparatus 100 and method for 3D object representation may track feature points in an image frame input in real time by one camera module.
  • the markerless augmented reality apparatus 100 and method for representing a 3D object may match the virtual object based on the feature information included in the image frame, without a separate marker or a specific object for matching the virtual object. Can be.
  • the markerless augmented reality apparatus 100 and method for representing a 3D object may generate a map without providing a feeling of separation between the virtual object and the real object and provide the user with the map. Therefore, the markerless augmented reality apparatus 100 and method for 3D object representation can provide a realistic augmented reality to the user easily and simply.
  • One embodiment of the present invention can also be implemented in the form of a recording medium containing instructions executable by a computer, such as a program module executed by the computer.
  • Computer readable recording media can be any available media that can be accessed by a computer and includes both volatile and nonvolatile media, removable and non-removable media.
  • the computer readable recording medium may include a computer storage medium.
  • Computer storage media includes both volatile and nonvolatile, removable and non-removable media implemented in any method or technology for storage of information such as computer readable instructions, data structures, program modules or other data.
  • One embodiment of the present invention can also be implemented in the form of a recording medium containing instructions executable by a computer, such as a program module executed by the computer.
  • Computer readable recording media can be any available media that can be accessed by a computer and includes both volatile and nonvolatile media, removable and non-removable media.
  • the computer readable recording medium may include a computer storage medium.
  • Computer storage media includes both volatile and nonvolatile, removable and non-removable media implemented in any method or technology for storage of information such as computer readable instructions, data structures, program modules or other data.

Abstract

본 발명은 카메라 모듈, 3차원 객체 정합 프로그램이 저장된 메모리 및 프로그램을 실행하는 프로세서를 포함한다. 이때, 프로세서는 프로그램의 실행에 따라, 카메라 모듈로부터 실시간으로 입력되는 영상 프레임에 포함된 복수의 영상 이미지에 기초하여 영상 프레임에 대응하는 3차원 좌표를 복원하고, 3차원 좌표에 기초하여 영상 프레임과 복수의 키 프레임 각각에 대한 비교를 수행하고, 복수의 키 프레임과 영상 프레임이 상이하면, 영상 프레임을 새로운 키 프레임으로 설정하며, 새로운 키 프레임 및 영상 프레임에 대응하는 3차원 좌표에 기초하여 기설정된 맵을 확장하고, 확장된 맵, 복원된 3차원 공간 좌표에 따라 3차원 객체를 영상 프레임에 표현한다.

Description

3차원 객체 표현을 위한 마커리스 증강현실장치 및 방법
본 발명은 3차원 객체 표현을 위한 마커리스 증강현실장치 및 방법에 관한 것이다.
증강현실은 가상 환경에 가상의 객체를 결합하는 가상현실과 달리, 실제 현실에 가상의 객체를 결합시킬 수 있다. 그러므로 증강현실은 현실에 다양한 응용이 가능하다.
증강현실을 구현하기 위한 증강현실장치는 카메라 모듈, 센서 모듈, 디스플레이 모듈 등의 하드웨어 기술과 정합(registration) 기술, 인식(recognition) 기술, 컴퓨터 비전(computer vision)등의 소프트웨어 기술이 필요하다. 이러한 기술들을 통하여, 증강현실장치는 증강현실을 사용하는 사용자의 주변 정보 및 시선, 자세, 동작 등을 파악할 수 있다. 그리고 증강현실장치는 파악된 정보에 기초한 가상의 객체를 생성하고, 생성된 가상의 객체를 현실과 일치시켜 사용자에 전달한다.
이때, 증강현실장치는 실제 현실의 영상에 가상의 객체를 생성하기 위해 가상의 객체와 실제 영상 간의 매개체가 요구된다. 그리고 증강현실장치는 이러한 매개체를 지속적으로 추적 인식하여 기준이 되는 좌표계를 설정한다. 그러므로 증강현실장치는 추적 및 인식을 위해 기계, 자기, 광학 등의 마커(marker)를 사용한다.
증강현실장치에서 추적 및 인식을 위하여 사용되는 기술 중 광학이 비교적 높은 정밀도를 보인다. 따라서, 종래의 증강현실장치는 마커를 이용한 광학 트랙킹(optical tracking)이 주류를 이루고 있다. 그러나 광학 기반의 트랙킹 방법은 조명에 영향을 많이 받게 될 수 있다. 이를 극복하기 위해서 증강현실장치는 적외선 (infrared; IR) 마커를 사용하는 방법을 사용하기도 한다.
최근에는 마커가 없이도 트레킹이 가능한 마커리스 트레킹(markerless tracking) 기법이 연구되고 있다. 마커리스 트레킹 기법은 인공적으로 설정된 마커가 아니라 현실 세계 속에서의 특정 객체로부터 특징점을 추출하고, 이를 트랙킹 할 수 있다.
종래의 마커리스 증강현실기술인 PTAM(parallel tracking and mapping)은 RGB 컬러 영상 프레임으로부터 특징점을 추출하고, 영상 프레임 별로 특징점 간의 상관관계에 기초하여, 3차원 공간에 대한 맵을 생성한다. 그리고 RTAM은 생성된 맵을 기준으로 카메라 위치를 산출한다. RTAM은 5점 알고리즘에 기초하여, 맵을 생성하므로 생성되는 맵이 안정적이지 못하다는 단점이 있다.
이와 관련되어, 한국 등록특허공보 제10-1506610호(발명의 명칭: "증강현실 제공 장치 및 그 방법")는 카메라부, 영상 인식부, 객체 추출부, 광고 정보 획득부, 합성부 및 디스플레이부를 포함하는 증강현실 제공 장치를 개시하고 있다. 이 특허는 영상 인식부 및 객체 추출부를 통하여, 두 개의 카메라 모듈을 포함하는 카메라부를 통하여 촬영되는 영상에 포함된 객체를 인식하고, 객체를 추출한다. 그리고 이 특허는 합성부를 통하여, 추출된 객체와 대응되는 컨텐츠 정보 및 광고 정보를 영상에 합성하여, 디스플레이부를 통하여 디스플레이한다.
본 발명은 전술한 종래 기술의 문제점을 해결하기 위한 것으로서, 증강현실에서 3차원 객체를 표현하기 위한 마커리스 증강현실장치 및 방법을 제공한다.
다만, 본 실시예가 이루고자 하는 기술적 과제는 상기된 바와 같은 기술적 과제로 한정되지 않으며, 또 다른 기술적 과제들이 존재할 수 있다.
상술한 기술적 과제를 달성하기 위한 기술적 수단으로서, 본 발명의 제 1 측면에 따른 3차원 객체 표현을 위한 마커리스 증강현실장치는 카메라 모듈, 3차원 객체 정합 프로그램이 저장된 메모리 및 프로그램을 실행하는 프로세서를 포함한다. 이때, 프로세서는 프로그램의 실행에 따라, 카메라 모듈로부터 실시간으로 입력되는 영상 프레임에 포함된 복수의 영상 이미지에 기초하여 영상 프레임에 대응하는 3차원 좌표를 복원하고, 3차원 좌표에 기초하여 영상 프레임과 복수의 키 프레임 각각에 대한 비교를 수행하고, 복수의 키 프레임과 영상 프레임이 상이하면, 영상 프레임을 새로운 키 프레임으로 설정하며, 새로운 키 프레임 및 영상 프레임에 대응하는 3차원 좌표에 기초하여 기설정된 맵을 확장하고, 확장된 맵, 복원된 3차원 공간 좌표에 따라 3차원 객체를 영상 프레임에 표현한다.
또한, 본 발명의 제 2 측면에 따른 마커리스 증강현실장치에서의 3차원 객체 표현 방법은 카메라 모듈로부터 실시간으로 입력되는 영상 프레임에 포함된 복수의 영상 이미지에 기초하여 영상 프레임에 대응하는 3차원 좌표를 복원하는 단계; 3차원 좌표에 기초하여 영상 프레임과 복수의 키 프레임을 각각 비교를 수행하는 단계; 3차원 좌표에 기초하여 영상 프레임과 복수의 키 프레임 각각에 대한 비교를 수행하는 단계; 복수의 키 프레임과 영상 프레임이 상이하면, 영상 프레임을 새로운 키 프레임으로 설정하는 단계; 새로운 키 프레임 및 영상 프레임에 대응하는 3차원 좌표에 기초하여 기설정된 맵을 확장하는 단계; 및 확장된 맵, 복원된 3차원 공간 좌표에 따라 3차원 객체를 영상 프레임에 표현하는 단계를 포함한다.
본 발명은 하나의 카메라 모듈에 의해 실시간으로 입력된 영상 프레임 내의 특징점을 추적할 수 있다. 또한, 본 발명은 가상 객체를 정합하기 위한 별도의 마커 또는 특정 객체가 없이, 영상 프레임에 포함된 특징 정보에 기초하여, 가상 객체를 정합할 수 있다.
그러므로 본 발명은 가상의 객체와 현실의 객체 간의 분리된 느낌 없이 맵을 생성하여 사용자에게 제공할 수 있다. 그리고 본 발명은 쉽고 간단하게 사용자에게 현실감 있는 증강현실을 제공할 수 있다.
도 1은 본 발명의 일 실시예에 따른 마커리스 증강현실장치의 블록도이다.
도 2는 본 발명의 일 실시예에 따른 3차원 공간 추출의 예시도이다.
도 3은 본 발명의 일 실시예에 따른 3차원 객체의 예시도이다.
도 4는 본 발명의 일 실시예에 따른 3차원 객체 표현 방법의 순서도이다.
아래에서는 첨부한 도면을 참조하여 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자가 용이하게 실시할 수 있도록 본 발명의 실시예를 상세히 설명한다. 그러나 본 발명은 여러 가지 상이한 형태로 구현될 수 있으며 여기에서 설명하는 실시예에 한정되지 않는다. 그리고 도면에서 본 발명을 명확하게 설명하기 위해서 설명과 관계없는 부분은 생략하였으며, 명세서 전체를 통하여 유사한 부분에 대해서는 유사한 도면 부호를 붙였다.
명세서 전체에서, 어떤 부분이 다른 부분과 "연결"되어 있다고 할 때, 이는 "직접적으로 연결"되어 있는 경우뿐 아니라, 그 중간에 다른 소자를 사이에 두고 "전기적으로 연결"되어 있는 경우도 포함한다. 또한, 어떤 부분이 어떤 구성요소를 "포함"한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성요소를 제외하는 것이 아니라 다른 구성요소를 더 포함할 수 있는 것을 의미한다.
다음은 도 1내지 도 3을 참조하여, 본 발명의 일 실시예에 따른 마커리스 증강현실장치(100)를 설명한다.
도 1은 본 발명의 일 실시예에 따른 마커리스 증강현실장치(100)의 블록도이다.
본 발명의 일 실시예에 따른 마커리스 증강현실장치(100)는 카메라 모듈(110)을 통하여 실시간으로 디스플레이되는 영상 프레임에 3차원 객체를 정합할 수 있다. 이때, 마커리스 증강현실장치(100)는 모바일 장치일 수 있다. 또한, 3차원 객체는 가상의 객체일 수 있다.
마커리스 증강현실장치(100)는 카메라 모듈(110), 디스플레이 모듈(120), 메모리(130) 및 프로세서(140)를 포함한다.
카메라 모듈(110)은 실시간으로 영상 데이터를 수집한다. 이때, 영상 데이터는 복수의 영상 프레임을 포함할 수 있다. 또한, 카메라 모듈(110)은 마커리스 증강현실장치(100)에 탑재되거나, 마커리스 증강현실장치(100)와 연결될 수 있다. 또한, 카메라 모듈(110)은 마커리스 증강현실장치(100)에 포함된 영상 센서일 수 있다.
또한, 카메라 모듈(110)은 보정(calibration)된 것일 수 있다. 만약, 카메라 모듈(110)이 보정된 경우, 카메라 모듈(110)은 보정에 사용된 보정 파라미터를 저장하거나, 프로세서(140)로 보정 파라미터를 전달 할 수 있다.
디스플레이 모듈(120)은 카메라 모듈(110)을 실시간으로 3차원 객체를 정합한 영상 프레임을 디스플레이 할 수 있다.
메모리(130)는 영상 프레임에 3차원 객체를 정합하는 프로그램이 저장된다. 이때, 메모리(130)는 전원이 공급되지 않아도 저장된 정보를 계속 유지하는 비휘발성 저장장치 및 저장된 정보를 유지하기 위하여 전력이 필요한 휘발성 저장장치를 통칭하는 것이다.
프로세서(140)는 메모리(130)에 저장된 프로그램을 실행한다.
먼저, 프로세서(140)는 카메라 모듈(110)을 통하여, 실시간으로 연속되어 입력되는 신규 영상 프레임으로부터 초기 맵(initialize map)을 생성할 수 있다.
구체적으로 초기 맵을 생성하기 위하여, 프로세서(140)는 신규 영상 프레임으로부터 특징점(feature point)을 추출할 수 있다. 이때, 특징점 추출 방법은 SIFT(scale invariant feature transform), SUFR(speeded-up robust feature) 및 FAST(features from accelerated segment test) 중 적어도 하나가 될 수 있으나, 이에 한정된 것은 아니다.
이때, 영상 프레임은 특정 카드, 책 또는 인쇄물 등과 같이 정형화된 모양의 실물 객체를 촬영한 영상 프레임 및 비정형화된 실물 객체를 촬영한 영상 프레임을 모두 포함하는 것이 될 수 있다.
도 2는 본 발명의 일 실시예에 따른 3차원 공간 추출의 예시도이다.
프로세서(140)는 연속된 영상 프레임으로부터 추출된 특징점에 대하여, 3차원 좌표를 추출할 수 있다.
이때, 사람이 오른쪽 눈과 왼쪽 눈을 통하여, 물체를 입체적으로 보는 것과 같이 프로세서(140)는 오른쪽 눈에 대응하는 영상 이미지 및 왼쪽 눈에 대응하는 영상 이미지에 기초하여, 3차원 좌표를 추출할 수 있다. 그러므로 3차원 좌표를 추출하기 위하여, 프로세서(140)는 하나의 카메라 모듈(110)로부터 실시간으로 연속되어 입력되는 영상 프레임 중 복수의 영상 이미지를 사람의 왼쪽 눈에 대응하는 제 1 영상 이미지(200) 및 사람의 오른쪽 눈에 대응하는 제 2 영상 이미지(210)로 선택할 수 있다.
예를 들어, 프로세서(140)는 연속된 영상 프레임에 포함된 특정 영상 이미지를 제 1 영상 이미지로 선택할 수 있다. 그리고 프로세서(140)는 제 1 영상 이미지(220)와 상이한 영상 이미지 중 제 1 영상 이미지에 포함된 특정 실물 객체가 미리 정해진 거리 이상 또는 미리 정해진 각도 이상 상이한 위치에 있는 영상 이미지를 제 2 영상 이미지(210)로 선택할 수 있다.
또는, 프로세서(140)는 연속된 영상 프레임에 포함된 특정 영상 이미지를 제 1 영상 이미지(200)로 선택할 수 있다. 그리고 프로세서(140)는 해당 영상 이미지로부터 미리 정해진 프레임 또는 미리 정해진 시간만큼 지난 후의 영상 이미지를 제 2 영상 이미지(210)로 선택할 수 있다.
그리고 프로세서(140)는 선택된 제 1 영상 이미지(200) 및 제 2 영상 이미지(210)에 기초하여, 기초행렬(fundamental matrix)를 산출할 수 있다.
이때, 기초 행렬을 산출하기 위하여, 프로세서(140)는 제 1 영상 이미지(200) 및 제 2 영상 이미지(210)를 정규화(normalization)할 수 있다.
그리고 프로세서(140)는 정규화된 이미지에 기초하여, 옵티컬 플로우(optical flow)를 산출할 수 있다. 이를 위하여, 프로세서(140)는 제 1 영상 이미지(200) 및 제 2 영상 이미지(210) 각각에 대하여, 피라미드 형태로 1/2 이미지, 1/4 이미지, 1/8 이미지, 1/16 이미지 및 1/32 이미지를 확보할 수 있다. 그리고 프로세서(140)는 확보한 이미지의 최상위 이미지에서 옵티컬 플로우를 산출할 수 있다.
프로세서(140)는 제 1 영상 이미지(200) 및 제 2 영상 이미지(210)로부터 산출된 옵티컬 플로우에 기초하여, 제 1 영상 이미지(200) 및 제 2 영상 이미지(210)를 서로 매칭할 수 있다. 그리고 프로세서(140)는 서로 매칭된 제 1 영상 이미지(200) 및 제 2 영상 이미지(210)를 통하여, 기초 행렬을 산출할 수 있다.
예를 들어, 프로세서(140)는 RANSAC(random sample consensus) 알고리즘에 기초하여, 제 1 영상 이미지(200) 및 제 2 영상 이미지(210)로부터 추출된 특징점을 매칭하고 기초 행렬을 산출할 수 있다. 또한, 프로세서(140)는 기계학습 알고리즘에 기초하여, 제 1 영상 이미지(200) 및 제 2 영상 이미지(210)로부터 추출된 특징점을 매칭하고 기초 행렬을 산출할 수 있으나, 이에 한정된 것은 아니다.
이때, 산출된 기초 행렬은 보정된 카메라 모듈(110)을 통하여, 생성된 제 1 영상 이미지(200) 및 제 2 영상 이미지(210)에 기초하여 생성된 것일 수 있다. 그러므로 프로세서는 제 1 영상 이미지(200) 및 제 2 영상 이미지(210)에서 카메라 모듈(110)의 보정 파라미터를 제거한 후, 필수 행렬(essential matrix)를 생성할 수 있다.
예를 들어, 프로세서(140)는 카메라 모듈(110)의 보정 파라미터에 대한 역행렬에 기초하여, 기초 행렬로부터 필수 행렬을 산출할 수 있다.
이와 같이 산출된 필수 행렬은 제 1 영상 이미지(200) 및 제 2 영상 이미지(210)의 관계 정보를 포함할 수 있다. 이때, 관계 정보는 제 1 영상 이미지(200) 및 제 2 영상 이미지(210) 사이의 거리 또는 회전 정보 등을 포함할 수 있다. 즉, 프로세서(140)는 필수 행렬을 통하여, 제 1 영상 이미지(200) 및 제 2 영상 이미지(210) 사이의 거리 및 회전 정보 등을 관계 정보로 추출할 수 있다.
프로세서(140)는 필수 행렬 또는 관계 정보를 통하여, 제 1 영상 이미지(200) 및 제 2 영상 이미지(210)로부터 3차원 좌표를 추출할 수 있다. 예를 들어, 프로세서(140)는 특이값 분해(singular values decomposed; SVD) 및 삼각화(triangulate)를 이용할 수 있다.
예를 들어, 필수 행렬 E=[t]XR에 포함된 제 1 영상 이미지(200)에 대한 투영 행렬이 단위 행렬 및 원점을 통하여 구성된 P1=[I|O]이면, 프로세서(140)는 제 2 영상 이미지(210)에 대한 투영 행렬은 P1=[R|t]이 될 수 있다. 그러므로 프로세서(140)는 필수 행렬에 대한 특이값 분해(singular values decomposed)를 통해 제 1 영상 이미지(200)에 대한 상대적인 제 2 영상 이미지(210)의 위치 정보를 추출할 수 있다.
그리고 프로세서(140)는 추출된 제 1 영상 이미지(200)의 위치 정보 및 제 2 영상 이미지(210)의 위치 정보에 대한 삼각화(triangulate)를 통해, 3차원 공간 좌표를 복원할 수 있다.
프로세서(140)는 위의 과정을 통하여 추출된 복수의 3차원 좌표의 공분산 행렬(covariance matrix)에 대한 고유값 분해(eigen decomposition)를 수행할 수 있다. 이때, 3차원 좌표에 포함된, x축, y축 및 z 축에 대한 공분산 행렬은 다음 수학식 1과 같이 기대값 함수 E를 통하여, 정의될 수 있다.
Figure PCTKR2017002900-appb-M000001
수학식 1에서 mx, my 및 mz 는 각각의 축에 대한 평균값을 의미한다.
프로세서(140)는 고유값 분해를 통하여, 3개의 고유값(eigen value)을 산출할 수 있다. 이때, 산출된 3개의 고유값은 각각 서로 직교(orthogonal)하다. 그러므로 산출된 3개의 고유값은 각각 3개의 축을 의미할 수 있다.
그러므로 프로세서(140)는 산출된 3개의 고유값을 통하여, 입력되는 영상 프레임 상의 평면의 기울기를 산출할 수 있다. 프로세서(140)는 이와 같이 산출된 평면의 기울기 및 추출된 복수의 3차원 좌표를 통하여, 초기 맵을 설정할 수 있다.
종래의 마커리스 증강현실장치(100)는 영상 프레임으로부터 동일한 객체를 포함하는 복수의 이미지를 추출하여, 초기 맵을 구현한다. 그러나 본 발명의 일 실시예에 따른 마커리스 증강현실장치(100)는 앞에서 설명한 과정을 통하여, 동일한 개체 포함 여부와 관계없이, 복수의 영상 이미지를 이용하여 초기 맵을 구현할 수 있다.
그리고 프로세서(140)는 설정된 초기 맵에 3차원 객체를 표현할 수 있다.
도 3은 본 발명의 일 실시예에 따른 3차원 객체의 예시도이다.
도 3을 참조하면, 프로세서(140)는 설정된 초기 맵에 기초하여, 실시간으로 입력되는 영상 프레임(300)에 3차원 객체(310)를 정합할 수 있다. 그리고 3차원 객체(310)가 정합된 영상 프레임(300)을 디스플레이 모듈(120)에 디스플레이할 수 있다.
이때, 3차원 객체(310)는 영상 프레임(300) 내에서 움직이는 3차원 객체일 수 있다. 또한, 3차원 객체(310)는 사용자가 생성하거나, 미리 증강현실장치(100)에 포함된 복수의 3차원 객체 중 사용자가 선택한 것일 수 있다.
한편, 프로세서(140)는 카메라 모듈(110)이 움직임에 따라, 기설정된 초기 맵을 확장할 수 있다.
초기 맵을 확장하기 위하여, 프로세서(140)는 카메라 모듈(110)로부터 실시간으로 입력되는 영상 프레임과 키 프레임 집합에 포함된 키 프레임을 비교한다.
이때, 키 프레임은 연속적으로 입력되는 영상 프레임 중 이전에 입력된 영상 프레임과 일정 거리 이상 차이가 나는 영상 프레임일 수 있다. 그리고 키 프레임 집합은 프로세서(140)가 키 프레임으로 선택한 복수의 영상 프레임을 포함하는 집합이 될 수 있다. 또한, 비교에 사용되는 키 프레임은 키 프레임 집합에 최근에 추가된 키 프레임일 수 있다.
키 프레임과 비교를 수행하는 영상 프레임은 가장 최근에 추가된 키 프레임으로부터 미리 정해진 프레임 수 이상 차이가 나는 영상 프레임일 수 있다. 이때, 미리 정해진 프레임 수는 20 프레임이 될 수 있으나, 이에 한정된 것은 아니다.
프로세서(140)는 초기 맵 설정 시 사용되었던 특징점 추출 방법과 동일한 방법을 통하여, 영상 프레임으로부터 특징점을 추출할 수 있다. 그리고 프로세서(140)는 영상 프레임으로부터 추출된 특징점 및 키 프레임으로부터 추출된 특징점 간의 거리를 산출할 수 있다. 프로세서(140)는 산출된 거리가 미리 설정된 값 이상인 경우, 입력되는 영상 프레임을 새로운 키 프레임으로 설정할 수 있다.
예를 들어, 거리는 유클리드 거리(Euclidean distance) 및 맨하탄 거리(Manhattan distance) 등을 사용하여 산출할 수 있다. 또한, 거리는 코사인 유사도(cosine similarity) 및 상관계수(Correlation Coefficient) 기반 유사도에 기초하여 산출될 수 있으나, 이에 한정된 것은 아니다.
그리고 프로세서(140)는 설정된 새로운 키 프레임에 기초하여, 초기 맵을 확장한다. 프로세서(140)는 확장된 맵에 기초하여, 3차원 객체에 대한 3차원 공간 좌표를 복원하고, 3차원 객체를 영상 프레임에 표현한다.
추가 실시예로, 프로세서(140)는 입력되는 영상 프레임에 포함된 복수의 영상 이미지에 기초하여 영상 프레임에 대응하는 3차원 좌표를 복원할 수 있다.
구체적으로 프로세서(140)는 복수의 영상 이미지 중 두 개의 영상 이미지를 추출할 수 있다. 그리고 프로세서(140)는 두 개의 영상 이미지의 관계 정보를 산출할 수 있다. 프로세서(140)는 산출된 관계 정보에 기초하여 두 개의 영상 이미지를 매칭하여 영상 프레임에 대응하는 3차원 좌표를 복원할 수 있다. 이때, 두 영상 이미지의 관계 정보는 두 영상 이미지 간의 거리 또는 회전 정보를 포함할 수 있다.
프로세서(140)는 3차원 좌표에 기초하여 영상 프레임과 복수의 키 프레임에 포함된 어느 하나의 키 프레임과의 비교를 수행하고, 영상 프레임과 어느 하나의 키 프레임이 상이한 경우, 입력되는 영상 프레임을 새로운 키 프레임으로 설정할 수 있다. 그리고 프로세서(140)는 새로운 키 프레임 및 영상 프레임에 대응하는 3차원 좌표에 기초하여 기설정된 맵을 확장할 수 있다.
프로세서(140)는 확장된 맵, 복원된 3차원 공간 좌표에 따라 3차원 객체를 영상 프레임에 표현할 수 있다.
한편, 프로세서(140)는 카메라 모듈(110)이 이동하면, 이동하는 카메라 모듈(110)의 정보를 산출하여, 트레킹(tracking)할 수 있다.
구체적으로 프로세서(140)는 앞에서 설명한 특징점 추출 방법을 통하여, 입력되는 영상 프레임으로부터 특징점을 추출할 수 있다. 프로세서(140)는 추출된 특징점에 기초하여, 3차원 좌표를 생성 수 있다.
프로세서(140)는 3차원 좌표를 다시 입력된 영상 프레임에 투영할 수 있다. 만약, 투영된 3차원 좌표가 미리 정해진 값 이상인 경우, 로드리그 회전 식(Rodrigues' rotation formula)에 기초하여, 영상의 회전 행렬(rotation matrix) 및 이동 행렬(translation matrix)을 산출할 수 있다. 프로세서(140)는 산출된 회전 행렬 및 이동 행렬에 기초하여, 현재의 카메라 모듈(110)의 정보를 산출할 수 있다.
이때, 카메라 모듈(110)의 정보는 현재 카메라 모듈의 위치 및 현재 카메라 모듈의 회전 정보를 포함할 수 있다. 이때, 현재 카메라 모듈의 정보는 이전에 입력된 영상 프레임으로부터 산출된 카메라의 정보에 대한 상대적인 값일 수 있다. 또는, 현재 카메라 모듈의 정보는 초기 맵 생성시 산출된 카메라 모듈의 정보에 대한 상대적인 값일 수 있으나, 이에 한정된 것은 아니다.
그리고 프로세서(140)는 생성된 3차원 좌표에 기초하여, 카메라 모듈(110)의 정보를 산출할 수 있다.
다시 도 3을 참조하면, 카메라 모듈(110)이 이동하거나, 회전하면, 프로세서(140)는 산출된 카메라 모듈(110)에 기초하여, 3차원 객체(310)의 거리 및 각도를 조절할 수 있다.
본 발명의 일 실시예에 따른 마커리스 증강현실장치(100)에 포함된 3차원 객체 제공 프로그램은 마커리스 증강현실 개발을 위한 소프트웨어 개발 키트(software development kit; SDK) 형태로 개발자에게 제공될 수 있다. 그러므로 개발자는 마커리스 증강현실 개발을 위한 소프트웨어 개발 키트를 통하여, 다양한 마커리스 증강현실 어플리케이션을 개발할 수 있다.
다음은 도 4를 참조하여, 본 발명의 일 실시예에 따른 마커리스 증강현실장치(100)에서의 3차원 객체 표현 방법을 설명한다.
도 4는 본 발명의 일 실시예에 따른 3차원 객체 표현 방법의 순서도이다.
마커리스 증강현실장치(100)는 카메라 모듈(110)로부터 실시간으로 입력되는 영상 프레임에 포함된 복수의 영상 이미지에 기초하여 영상 프레임에 대응하는 3차원 좌표를 복원한다(S400)
마커리스 증강현실장치(100)는 3차원 좌표에 기초하여 상기 영상 프레임과 복수의 키 프레임 각각에 대한 비교를 수행한다(S410).
마커리스 증강현실장치(100)는 복수의 키 프레임과 상기 영상 프레임이 상이하면, 영상 프레임을 새로운 키 프레임으로 설정한다(S420).
마커리스 증강현실장치(100)는 새로운 키 프레임 및 영상 프레임에 대응하는 3차원 좌표에 기초하여 기설정된 맵을 확장한다(S430).
마커리스 증강현실장치(100)는 확장된 맵, 복원된 3차원 공간 좌표에 따라 3차원 객체를 영상 프레임에 표현한다(S440).
한편, 마커리스 증강현실장치(100)는 3차원 객체를 영상 프레임에 표현한 이후에, 카메라 모듈(110)의 이동에 따라 3차원 공간 좌표를 트레킹하여, 3차원 객체를 표현할 수 있다.
이를 위하여, 마커리스 증강현실장치(100)는 실시간으로 입력되는 영상 프레임에 대하여, 카메라 모듈(110)의 정보를 산출할 수 있다. 이때, 카메라 모듈(110)의 정보는 카메라 모듈(110)의 위치 및 카메라 모듈(110)의 회전 정보를 포함할 수 있다. 그리고 마커리스 증강현실장치(100)는 산출된 카메라 모듈(110) 정보에 기초하여, 3차원 공간 좌표를 트레킹할 수 있다.
본 발명의 일 실시예에 따른 3차원 객체 표현을 위한 마커리스 증강현실장치(100) 및 방법은 하나의 카메라 모듈(110)에 의해 실시간으로 입력된 영상 프레임 내의 특징점을 추적할 수 있다. 또한, 3차원 객체 표현을 위한 마커리스 증강현실장치(100) 및 방법은 별도의 마커 및 특정 객체가 없이 영상 프레임 내의 특징에 기초하여, 가상의 객체와 현실의 객체 간의 분리된 느낌 없이 맵을 생성하여 사용자에게 제공할 수 있다. 그러므로 3차원 객체 표현을 위한 마커리스 증강현실장치(100) 및 방법은 사용자에게 현실감있는 증강현실을 제공할 수 있다.
본 발명의 일 실시예에 따른 3차원 객체 표현을 위한 마커리스 증강현실장치(100) 및 방법은 하나의 카메라 모듈에 의해 실시간으로 입력된 영상 프레임 내의 특징점을 추적할 수 있다. 또한, 3차원 객체 표현을 위한 마커리스 증강현실장치(100) 및 방법은 가상 객체를 정합하기 위한 별도의 마커 또는 특정 객체가 없이, 영상 프레임에 포함된 특징 정보에 기초하여, 가상 객체를 정합할 수 있다. 그리고 3차원 객체 표현을 위한 마커리스 증강현실장치(100) 및 방법은 가상의 객체와 현실의 객체 간의 분리된 느낌 없이 맵을 생성하여 사용자에게 제공할 수 있다. 그러므로 3차원 객체 표현을 위한 마커리스 증강현실장치(100) 및 방법은 쉽고 간단하게 사용자에게 현실감 있는 증강현실을 제공할 수 있다.
본 발명의 일 실시예는 컴퓨터에 의해 실행되는 프로그램 모듈과 같은 컴퓨터에 의해 실행가능한 명령어를 포함하는 기록 매체의 형태로도 구현될 수 있다. 컴퓨터 판독 가능한 기록 매체는 컴퓨터에 의해 액세스될 수 있는 임의의 가용 매체일 수 있고, 휘발성 및 비휘발성 매체, 분리형 및 비분리형 매체를 모두 포함한다. 또한, 컴퓨터 판독 가능한 기록 매체는 컴퓨터 저장 매체를 포함할 수 있다. 컴퓨터 저장 매체는 컴퓨터 판독가능 명령어, 데이터 구조, 프로그램 모듈 또는 기타 데이터와 같은 정보의 저장을 위한 임의의 방법 또는 기술로 구현된 휘발성 및 비휘발성, 분리형 및 비분리형 매체를 모두 포함한다.
본 발명의 방법 및 시스템은 특정 실시예와 관련하여 설명되었지만, 그것들의 구성 요소 또는 동작의 일부 또는 전부는 범용 하드웨어 아키텍쳐를 갖는 컴퓨터 시스템을 사용하여 구현될 수 있다.
전술한 본 발명의 설명은 예시를 위한 것이며, 본 발명이 속하는 기술분야의 통상의 지식을 가진 자는 본 발명의 기술적 사상이나 필수적인 특징을 변경하지 않고서 다른 구체적인 형태로 쉽게 변형이 가능하다는 것을 이해할 수 있을 것이다. 그러므로 이상에서 기술한 실시예들은 모든 면에서 예시적인 것이며 한정적이 아닌 것으로 이해해야만 한다. 예를 들어, 단일형으로 설명되어 있는 각 구성 요소는 분산되어 실시될 수도 있으며, 마찬가지로 분산된 것으로 설명되어 있는 구성 요소들도 결합된 형태로 실시될 수 있다.
본 발명의 범위는 상기 상세한 설명보다는 후술하는 특허청구범위에 의하여 나타내어지며, 특허청구범위의 의미 및 범위 그리고 그 균등 개념으로부터 도출되는 모든 변경 또는 변형된 형태가 본 발명의 범위에 포함되는 것으로 해석되어야 한다.
본 발명의 일 실시예는 컴퓨터에 의해 실행되는 프로그램 모듈과 같은 컴퓨터에 의해 실행가능한 명령어를 포함하는 기록 매체의 형태로도 구현될 수 있다. 컴퓨터 판독 가능한 기록 매체는 컴퓨터에 의해 액세스될 수 있는 임의의 가용 매체일 수 있고, 휘발성 및 비휘발성 매체, 분리형 및 비분리형 매체를 모두 포함한다. 또한, 컴퓨터 판독 가능한 기록 매체는 컴퓨터 저장 매체를 포함할 수 있다. 컴퓨터 저장 매체는 컴퓨터 판독가능 명령어, 데이터 구조, 프로그램 모듈 또는 기타 데이터와 같은 정보의 저장을 위한 임의의 방법 또는 기술로 구현된 휘발성 및 비휘발성, 분리형 및 비분리형 매체를 모두 포함한다.
본 발명의 방법 및 시스템은 특정 실시예와 관련하여 설명되었지만, 그것들의 구성 요소 또는 동작의 일부 또는 전부는 범용 하드웨어 아키텍쳐를 갖는 컴퓨터 시스템을 사용하여 구현될 수 있다.
전술한 본 발명의 설명은 예시를 위한 것이며, 본 발명이 속하는 기술분야의 통상의 지식을 가진 자는 본 발명의 기술적 사상이나 필수적인 특징을 변경하지 않고서 다른 구체적인 형태로 쉽게 변형이 가능하다는 것을 이해할 수 있을 것이다. 그러므로 이상에서 기술한 실시예들은 모든 면에서 예시적인 것이며 한정적이 아닌 것으로 이해해야만 한다. 예를 들어, 단일형으로 설명되어 있는 각 구성 요소는 분산되어 실시될 수도 있으며, 마찬가지로 분산된 것으로 설명되어 있는 구성 요소들도 결합된 형태로 실시될 수 있다.
본 발명의 범위는 상기 상세한 설명보다는 후술하는 특허청구범위에 의하여 나타내어지며, 특허청구범위의 의미 및 범위 그리고 그 균등 개념으로부터 도출되는 모든 변경 또는 변형된 형태가 본 발명의 범위에 포함되는 것으로 해석되어야 한다.

Claims (12)

  1. 3차원 객체 표현을 위한 마커리스 증강현실장치에 있어서,
    카메라 모듈,
    3차원 객체 정합 프로그램이 저장된 메모리 및
    상기 프로그램을 실행하는 프로세서를 포함하되,
    상기 프로세서는 상기 프로그램의 실행에 따라, 상기 카메라 모듈로부터 실시간으로 입력되는 영상 프레임에 포함된 복수의 영상 이미지에 기초하여 상기 영상 프레임에 대응하는 3차원 좌표를 복원하고,
    상기 3차원 좌표에 기초하여 상기 영상 프레임과 복수의 키 프레임 각각에 대한 비교를 수행하고,
    상기 복수의 키 프레임과 상기 영상 프레임이 상이하면, 상기 영상 프레임을 새로운 키 프레임으로 설정하며,
    상기 새로운 키 프레임 및 상기 영상 프레임에 대응하는 3차원 좌표에 기초하여 기설정된 맵을 확장하고,
    상기 확장된 맵, 상기 복원된 3차원 공간 좌표에 따라 상기 3차원 객체를 상기 영상 프레임에 표현하는, 마커리스 증강현실장치.
  2. 제 1 항에 있어서,
    상기 프로세서는 상기 복수의 키 프레임 중 가장 최근에 키 프레임으로 설정된 키 프레임과 상기 영상 프레임 간의 거리를 산출하고,
    상기 산출된 거리가 미리 설정된 값 이상인 경우, 상기 영상 프레임을 새로운 키 프레임으로 설정하는, 마커리스 증강현실장치.
  3. 제 2 항에 있어서,
    상기 프로세서는 상기 영상 프레임과 상기 가장 최근에 키 프레임으로 설정된 키 프레임이 미리 설정된 프레임 이상 차이가 나는 경우, 상기 거리를 산출하는 것인, 마커리스 증강현실장치.
  4. 제 1 항에 있어서,
    상기 프로세서는 상기 복수의 영상 이미지 중 두 개의 영상 이미지를 추출하고, 상기 두 개의 영상 이미지의 관계 정보를 산출하고, 상기 관계 정보에 기초하여 상기 두 개의 영상 이미지를 매칭하여 상기 영상 프레임에 대응하는 3차원 좌표를 복원하되,
    상기 두 영상 이미지의 관계 정보는 상기 두 영상 이미지 간의 거리 및 회전 정보를 포함하는, 마커리스 증강현실장치.
  5. 제 1 항에 있어서,
    상기 프로세서는 상기 카메라 모듈을 통하여, 입력되는 신규 영상 프레임으로부터 복수의 영상 이미지를 추출하고, 상기 신규 영상 프레임에 대응하는 복수의 영상 이미지 중 두 개의 영상 이미지를 선택하고,
    상기 신규 영상 프레임에 대응하는 두 개의 영상 이미지를 매칭하여 상기 신규 영상 프레임에 대응하는 3차원 좌표를 생성하며, 상기 신규 영상 프레임에 대응하는 3차원 좌표에 기초하여 맵을 설정하는 것인, 마커리스 증강현실장치.
  6. 제 1 항에 있어서,
    상기 프로세서는 상기 카메라 모듈을 통하여 실시간으로 입력되는 영상 프레임으로부터 상기 카메라 모듈의 정보를 산출하고,
    상기 산출된 카메라 모듈 정보에 기초하여, 상기 3차원 공간 좌표를 트레킹하되,
    상기 카메라 모듈의 정보는 상기 카메라 모듈의 위치 및 상기 카메라 모듈의 회전 정보를 포함하는, 마커리스 증강현실장치.
  7. 제 5 항에 있어서,
    상기 프로세서는 상기 입력되는 영상 프레임으로부터 추출된 특징점 및 로드리그 회전 식(Rodrigues' rotation formula)에 기초하여, 상기 입력되는 복수의 영상 프레임에 대응하는 상기 카메라 모듈의 정보를 산출하는 것인, 마커리스 증강현실장치.
  8. 제 6 항에 있어서,
    상기 프로세서는 SIFT(scale invariant feature transform), SUFR(speeded-up robust feature) 및 FAST(features from accelerated segment test) 중 적어도 하나에 기초하여, 상기 입력되는 영상 프레임으로부터 상기 특징점을 추출하는, 마커리스 증강현실장치.
  9. 마커리스 증강현실장치에서의 3차원 객체 표현 방법에 있어서,
    카메라 모듈로부터 실시간으로 입력되는 영상 프레임에 포함된 복수의 영상 이미지에 기초하여 상기 영상 프레임에 대응하는 3차원 좌표를 복원하는 단계;
    상기 3차원 좌표에 기초하여 상기 영상 프레임과 복수의 키 프레임을 각각 비교를 수행하는 단계;
    상기 3차원 좌표에 기초하여 상기 영상 프레임과 복수의 키 프레임 각각에 대한 비교를 수행하는 단계;
    상기 복수의 키 프레임과 상기 영상 프레임이 상이하면, 상기 영상 프레임을 새로운 키 프레임으로 설정하는 단계;
    상기 새로운 키 프레임 및 상기 영상 프레임에 대응하는 3차원 좌표에 기초하여 기설정된 맵을 확장하는 단계; 및
    상기 확장된 맵, 상기 복원된 3차원 공간 좌표에 따라 상기 3차원 객체를 상기 영상 프레임에 표현하는 단계를 포함하는, 3차원 객체 표현 방법.
  10. 제 9 항에 있어서,
    상기 3차원 좌표를 복원하는 단계는,
    상기 복수의 영상 이미지 중 두 개의 영상 이미지를 추출하는 단계;
    상기 두 개의 영상 이미지의 관계 정보를 산출하는 단계; 및
    상기 관계 정보에 기초하여 상기 두 개의 영상 이미지를 매칭하여 상기 영상 프레임에 대응하는 3차원 좌표를 복원하는 단계를 포함하되,
    상기 두 영상 이미지의 관계 정보는 상기 두 영상 이미지 간의 거리 및 회전 정보를 포함하는, 3차원 객체 표현 방법.
  11. 제 9 항에 있어서,
    상기 3차원 객체를 상기 영상 프레임에 표현하는 단계 이후에,
    상기 카메라 모듈을 통하여, 실시간으로 입력되는 영상 프레임으로부터 상기 카메라 모듈의 정보를 산출하는 단계; 및
    상기 산출된 카메라 모듈 정보에 기초하여, 상기 3차원 공간 좌표를 트레킹하는 단계를 포함하되,
    상기 카메라 모듈의 정보는 상기 카메라 모듈의 위치 및 상기 카메라 모듈의 회전 정보를 포함하는, 3차원 객체 표현 방법.
  12. 제 9 항 내지 제 11 항 중 어느 한 항에 기재된 방법을 컴퓨터 상에서 수행하기 위한 프로그램을 기록한 컴퓨터 판독 가능한 기록 매체.
PCT/KR2017/002900 2017-03-17 2017-03-17 3차원 객체 표현을 위한 마커리스 증강현실장치 및 방법 WO2018169110A1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
PCT/KR2017/002900 WO2018169110A1 (ko) 2017-03-17 2017-03-17 3차원 객체 표현을 위한 마커리스 증강현실장치 및 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/KR2017/002900 WO2018169110A1 (ko) 2017-03-17 2017-03-17 3차원 객체 표현을 위한 마커리스 증강현실장치 및 방법

Publications (1)

Publication Number Publication Date
WO2018169110A1 true WO2018169110A1 (ko) 2018-09-20

Family

ID=63522230

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/KR2017/002900 WO2018169110A1 (ko) 2017-03-17 2017-03-17 3차원 객체 표현을 위한 마커리스 증강현실장치 및 방법

Country Status (1)

Country Link
WO (1) WO2018169110A1 (ko)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110059651A (zh) * 2019-04-24 2019-07-26 北京计算机技术及应用研究所 一种相机实时跟踪注册方法
CN110910497A (zh) * 2019-11-15 2020-03-24 北京信息科技大学 实现增强现实地图的方法和系统
CN114120414A (zh) * 2021-11-29 2022-03-01 北京百度网讯科技有限公司 图像处理方法、装置、电子设备和介质
CN110910497B (zh) * 2019-11-15 2024-04-19 北京信息科技大学 实现增强现实地图的方法和系统

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20100071016A1 (en) * 2008-09-16 2010-03-18 Widilab Method of measuring a similarity degree of digital video contents, method of managing video contents using the same and management system for video contents using the method of managing video contents
KR20110130309A (ko) * 2010-05-27 2011-12-05 한국항공대학교산학협력단 증강현실을 위한 실시간 마커리스 3차원 객체추적 시스템 및 그 방법
KR20120038616A (ko) * 2010-10-14 2012-04-24 한국전자통신연구원 마커리스 실감형 증강현실 제공 방법 및 시스템
KR20130014358A (ko) * 2011-07-28 2013-02-07 삼성전자주식회사 평면 특성 기반 마커리스 증강 현실 시스템 및 그 동작 방법
KR20160052256A (ko) * 2014-11-04 2016-05-12 한국전자통신연구원 가상 특징점을 이용하는 3차원 공간 매핑장치 및 그 방법

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20100071016A1 (en) * 2008-09-16 2010-03-18 Widilab Method of measuring a similarity degree of digital video contents, method of managing video contents using the same and management system for video contents using the method of managing video contents
KR20110130309A (ko) * 2010-05-27 2011-12-05 한국항공대학교산학협력단 증강현실을 위한 실시간 마커리스 3차원 객체추적 시스템 및 그 방법
KR20120038616A (ko) * 2010-10-14 2012-04-24 한국전자통신연구원 마커리스 실감형 증강현실 제공 방법 및 시스템
KR20130014358A (ko) * 2011-07-28 2013-02-07 삼성전자주식회사 평면 특성 기반 마커리스 증강 현실 시스템 및 그 동작 방법
KR20160052256A (ko) * 2014-11-04 2016-05-12 한국전자통신연구원 가상 특징점을 이용하는 3차원 공간 매핑장치 및 그 방법

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110059651A (zh) * 2019-04-24 2019-07-26 北京计算机技术及应用研究所 一种相机实时跟踪注册方法
CN110059651B (zh) * 2019-04-24 2021-07-02 北京计算机技术及应用研究所 一种相机实时跟踪注册方法
CN110910497A (zh) * 2019-11-15 2020-03-24 北京信息科技大学 实现增强现实地图的方法和系统
CN110910497B (zh) * 2019-11-15 2024-04-19 北京信息科技大学 实现增强现实地图的方法和系统
CN114120414A (zh) * 2021-11-29 2022-03-01 北京百度网讯科技有限公司 图像处理方法、装置、电子设备和介质

Similar Documents

Publication Publication Date Title
WO2020259481A1 (zh) 定位方法及装置、电子设备、可读存储介质
WO2017026839A1 (ko) 휴대용 카메라를 이용한 3차원 얼굴 모델 획득 방법 및 장치
JP3244798B2 (ja) 動画像処理装置
Oszust et al. Polish sign language words recognition with Kinect
WO2013015528A1 (en) Apparatus, method, and medium detecting object pose
WO2013015549A2 (ko) 평면 특성 기반 마커리스 증강 현실 시스템 및 그 동작 방법
WO2011093581A2 (ko) 비전 영상 정보 저장 시스템과 그 방법, 및 상기 방법을 구현하는 프로그램이 기록된 기록매체
JP2014241155A (ja) 画像の少なくとも1つの特徴として記述子を提供する方法及び特徴をマッチングする方法
JP2008046750A (ja) 画像処理装置および方法
US10262207B2 (en) Method for tracking keypoints in a scene
WO2011149159A1 (ko) 증강현실을 위한 실시간 마커리스 3차원 객체추적 시스템 및 그 방법
TW202024864A (zh) 動作追蹤系統及方法
CN109785373A (zh) 一种基于散斑的六自由度位姿估计系统及方法
WO2018169110A1 (ko) 3차원 객체 표현을 위한 마커리스 증강현실장치 및 방법
KR101746648B1 (ko) 3차원 객체 표현을 위한 마커리스 증강현실장치 및 방법
JP2019020778A (ja) 情報処理装置、情報処理方法
WO2020032254A1 (ja) 注意対象推定装置及び注意対象推定方法
McIlroy et al. Kinectrack: 3d pose estimation using a projected dense dot pattern
WO2019098421A1 (ko) 모션 정보를 이용한 객체 복원 장치 및 이를 이용한 객체 복원 방법
Kwon et al. An enhanced multi-view human action recognition system for virtual training simulator
WO2021215800A1 (ko) 3차원 영상을 활용한 술기 교육 시스템 및 머신 러닝 기반의 수술 가이드 시스템
Liu et al. BB-homography: Joint binary features and bipartite graph matching for homography estimation
Black et al. Robust Object Pose Tracking for Augmented Reality Guidance and Teleoperation
JP3668168B2 (ja) 動画像処理装置
WO2023106846A1 (ko) 스켈레톤 포인트 기반 서비스 제공 장치 및 방법

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: 17900844

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: 17900844

Country of ref document: EP

Kind code of ref document: A1