KR20230076048A - Method and system for motion estimation of real-time image target between successive frames - Google Patents
Method and system for motion estimation of real-time image target between successive frames Download PDFInfo
- Publication number
- KR20230076048A KR20230076048A KR1020210189152A KR20210189152A KR20230076048A KR 20230076048 A KR20230076048 A KR 20230076048A KR 1020210189152 A KR1020210189152 A KR 1020210189152A KR 20210189152 A KR20210189152 A KR 20210189152A KR 20230076048 A KR20230076048 A KR 20230076048A
- Authority
- KR
- South Korea
- Prior art keywords
- image
- tracking
- target
- frame
- point
- Prior art date
Links
- 230000033001 locomotion Effects 0.000 title claims abstract description 92
- 238000000034 method Methods 0.000 title claims abstract description 45
- 238000013519 translation Methods 0.000 claims description 16
- 238000006243 chemical reaction Methods 0.000 claims description 13
- 238000012545 processing Methods 0.000 description 19
- 238000004891 communication Methods 0.000 description 18
- 238000001514 detection method Methods 0.000 description 13
- 230000000694 effects Effects 0.000 description 12
- 230000006870 function Effects 0.000 description 7
- 238000010586 diagram Methods 0.000 description 6
- 238000005516 engineering process Methods 0.000 description 5
- 238000005096 rolling process Methods 0.000 description 5
- 230000003190 augmentative effect Effects 0.000 description 3
- 238000003709 image segmentation Methods 0.000 description 3
- 230000004807 localization Effects 0.000 description 3
- 230000007774 longterm Effects 0.000 description 3
- 238000013507 mapping Methods 0.000 description 3
- 238000003491 array Methods 0.000 description 2
- 238000003708 edge detection Methods 0.000 description 2
- 230000014509 gene expression Effects 0.000 description 2
- 239000004973 liquid crystal related substance Substances 0.000 description 2
- 238000010295 mobile communication Methods 0.000 description 2
- 230000009466 transformation Effects 0.000 description 2
- 230000001131 transforming effect Effects 0.000 description 2
- 230000001133 acceleration Effects 0.000 description 1
- 230000015556 catabolic process Effects 0.000 description 1
- 238000006731 degradation reaction Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000001151 other effect Effects 0.000 description 1
- 239000010409 thin film Substances 0.000 description 1
- 238000000844 transformation Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/20—Analysis of motion
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T3/00—Geometric image transformations in the plane of the image
- G06T3/40—Scaling of whole images or parts thereof, e.g. expanding or contracting
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/20—Special algorithmic details
- G06T2207/20172—Image enhancement details
- G06T2207/20182—Noise reduction or smoothing in the temporal domain; Spatio-temporal filtering
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/20—Special algorithmic details
- G06T2207/20172—Image enhancement details
- G06T2207/20201—Motion blur correction
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Multimedia (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Image Analysis (AREA)
Abstract
Description
본 발명은 연속 프레임 간의 실시간 이미지 타겟의 모션 추정 방법 및 그 시스템에 관한 것이다. 보다 상세하게는, 다운 스케일링(Down scaling)된 연속 프레임 간의 호모그래피(Homography)를 상정하여 상기 연속 프레임 내 이미지 타겟의 모션을 추정하는 방법 및 그 시스템에 관한 것이다. The present invention relates to a method and system for estimating motion of a real-time image target between successive frames. More particularly, it relates to a method and system for estimating motion of an image target in consecutive frames by assuming homography between consecutive down-scaled frames.
정보통신기술(ICT, Information and Communications Technology)이 발전함에 따라서 복수의 프레임을 포함하는 영상에 포함된 객체를 식별하기 위한 기술들이 개발되고 있다.As information and communication technology (ICT) develops, technologies for identifying objects included in an image including a plurality of frames are being developed.
특히, 인간이 지닌 인식 방법을 전자 장치에 적용시킴으로써 전자 장치가 스스로 영상 내 객체를 식별하거나, 미리 설정된 소정의 객체를 식별하도록 하는 기술들이 개발되고 있다. In particular, by applying a recognition method possessed by humans to an electronic device, technologies are being developed that allow the electronic device to identify an object within an image or to identify a predetermined object in an image by itself.
최근에는 영상 내 객체를 추적하고, 추적된 객체에 대한 영상을 다양한 형태(예컨대, 증강현실 콘텐츠 및/또는 SLAM(simultaneous localization and mapping) 기반 데이터 등)로 가공하는 기술 등이 활발하게 연구되고 있으며, 가공된 영상에 대한 콘텐츠를 실시간으로 제공하는 장치 및 소프트웨어들이 출시되고 있다. Recently, technologies for tracking an object in an image and processing the image for the tracked object in various forms (eg, augmented reality content and / or SLAM (simultaneous localization and mapping)-based data, etc.) have been actively studied. Devices and software that provide real-time content for processed images are being released.
그러나 일반적인 영상 내 객체 추적이나 가공 기술은, 객체의 위치를 실시간으로 정확하게 파악하는데 한계를 가지고 있으며, 객체의 위치 추적이나 영상 편집에 상당히 기기 자원이 소모된다는 문제가 있다. However, general object tracking or processing technology in an image has limitations in accurately determining the location of an object in real time, and there is a problem that considerable device resources are consumed in tracking the location of an object or editing an image.
더하여, 종래에는 해당하는 영상 내 타겟으로 하는 객체가 지나치게 빠르게 움직이는 등과 같이, 소정의 모션(motion)을 포함하는 영상 시프팅(shifting)시 발생할 수 있는 각종 노이즈(예컨대, 모션블러, 빛번짐 및/또는 롤링셔터 이펙트 등)나 해당 객체에 대한 스케일 변화 및/또는 시점 변화 등에 의하여 객체 모션 추정에 대한 성능이 저하된다는 문제가 있다. In addition, in the related art, various noises that may occur during image shifting including a predetermined motion, such as when a target object in a corresponding image moves too fast (eg, motion blur, light smearing, and/or the like) Alternatively, there is a problem in that the performance of object motion estimation is deteriorated due to a change in scale and/or a change in viewpoint of a corresponding object, or a rolling shutter effect.
본 발명은, 상술된 바와 같은 문제점들을 해결하기 위하여 안출된 것으로서, 다운 스케일링(Down scaling)된 연속 프레임 간의 호모그래피(Homography)를 상정하여 상기 연속 프레임 내 이미지 타겟의 모션을 추정하는 방법 및 그 시스템을 제공하는데 그 목적이 있다. The present invention has been made to solve the above-described problems, and a method and system for estimating the motion of an image target in consecutive frames by assuming homography between consecutive down-scaled frames Its purpose is to provide
다만, 본 발명 및 본 발명의 실시예가 이루고자 하는 기술적 과제는 상기된 바와 같은 기술적 과제들로 한정되지 않으며, 또 다른 기술적 과제들이 존재할 수 있다. However, the technical problems to be achieved by the present invention and the embodiments of the present invention are not limited to the technical problems described above, and other technical problems may exist.
본 발명의 실시예에 따른 연속 프레임 간의 실시간 이미지 타겟의 모션 추정 방법은, 단말의 적어도 하나의 프로세서에 의하여 실행되는 모션 추정 애플리케이션이 연속 프레임 간 실시간 이미지 타겟의 모션을 추정하는 방법으로서, 제1 프레임 이미지 내 타겟객체를 검출하는 단계; 상기 제1 프레임 이미지를 다운 스케일링(Down scaling)하여 제1 프레임 다운 이미지를 생성하는 단계; 상기 생성된 제1 프레임 다운 이미지 내에서 상기 타겟객체에 대한 복수의 트래킹 포인트(tracking point)를 설정하는 단계; 상기 제1 프레임 이미지에 연속된 소정의 시간 이후의 제2 프레임 이미지를 획득하는 단계; 상기 획득된 제2 프레임 이미지를 다운 스케일링하여 제2 프레임 다운 이미지를 생성하는 단계; 및 상기 설정된 복수의 트래킹 포인트를 기초로 상기 제2 프레임 다운 이미지에서 상기 타겟객체를 트래킹하는 단계를 포함한다. A motion estimation method of a real-time image target between successive frames according to an embodiment of the present invention is a method in which a motion estimation application executed by at least one processor of a terminal estimates motion of a real-time image target between successive frames, wherein a first frame detecting a target object in an image; Generating a first frame-down image by down-scaling the first frame image; setting a plurality of tracking points for the target object in the generated first frame-down image; obtaining a second frame image after a predetermined time consecutive to the first frame image; generating a second frame-down image by down-scaling the acquired second frame image; and tracking the target object in the second frame-down image based on the set plurality of tracking points.
이때, 상기 설정된 복수의 트래킹 포인트를 기초로 상기 제2 프레임 다운 이미지에서 상기 타겟객체를 트래킹하는 단계는, 상기 설정된 복수의 트래킹 포인트를 기초로 트래킹 포인트 세트를 생성하는 단계와, 상기 트래킹 포인트 세트 중에서 상기 제2 프레임 다운 이미지와의 매칭 스코어(Matching score)가 가장 높은 포인트 그룹을 트래킹 포인트 메인 그룹으로 결정하는 단계; 및 상기 결정된 트래킹 포인트 메인 그룹에 기초하여 상기 제1 프레임 이미지 및 상기 제2 프레임 이미지를 포함하는 연속 프레임 이미지 내 상기 타겟객체를 트래킹하는 단계를 포함한다. At this time, the step of tracking the target object in the second frame-down image based on the set plurality of tracking points includes generating a tracking point set based on the set plurality of tracking points, and among the set tracking points. determining a point group having the highest matching score with the second frame-down image as a tracking point main group; and tracking the target object in continuous frame images including the first frame image and the second frame image based on the determined tracking point main group.
또한, 상기 복수의 트래킹 포인트를 설정하는 단계는, 상기 제1 프레임 다운 이미지 내 상기 타겟객체의 에지(edges)를 검출하는 단계와, 상기 검출된 에지 상에 위치한 포인트에서 상기 복수의 트래킹 포인트를 설정하는 단계를 포함한다. In addition, the setting of the plurality of tracking points may include detecting edges of the target object in the first frame-down image, and setting the plurality of tracking points at points located on the detected edges It includes steps to
또한, 상기 에지 상에 복수의 트래킹 포인트를 설정하는 단계는, 상기 검출된 에지 내 기 설정된 위치를 기준으로 기 설정된 간격을 따라서 상기 복수의 트래킹 포인트를 설정하는 단계를 포함한다. In addition, setting the plurality of tracking points on the edge includes setting the plurality of tracking points along a predetermined interval based on a predetermined position within the detected edge.
또한, 상기 설정된 복수의 트래킹 포인트를 기초로 트래킹 포인트 세트를 생성하는 단계는, 기 설정된 트랜스레이션 파라미터(Translation parameters)를 기초로 상기 복수의 트래킹 포인트를 포함하는 트래킹 포인트 그룹을 변환하는 단계와, 상기 변환을 통하여 상기 기 설정된 트랜스레이션 파라미터 각각에 대응되는 트래킹 변환 포인트 그룹을 생성하는 단계와, 상기 생성된 적어도 하나의 트래킹 변환 포인트 그룹 및 상기 트래킹 포인트 그룹을 포함하는 트래킹 포인트 세트를 생성하는 단계를 더 포함한다. In addition, generating a tracking point set based on the plurality of set tracking points may include converting a tracking point group including the plurality of tracking points based on preset translation parameters; Generating a tracking conversion point group corresponding to each of the preset translation parameters through conversion, and generating a tracking point set including the generated at least one tracking conversion point group and the tracking point group. include
또한, 상기 트래킹 포인트 메인 그룹은, 상기 트래킹 포인트 세트 내 복수의 포인트 그룹 중에서 상기 제2 프레임 다운 이미지와의 매칭 스코어가 가장 높은 포인트 그룹이다. Also, the tracking point main group is a point group having the highest matching score with the second frame-down image among a plurality of point groups in the tracking point set.
또한, 상기 매칭 스코어는, 상기 트래킹 포인트 세트 내 일 포인트 그룹과 상기 제2 프레임 다운 이미지 내 에지(edges)인 타겟 에지 간의 매칭률을 나타내는 파라미터 값이다. Also, the matching score is a parameter value representing a matching rate between one point group in the tracking point set and a target edge, which is an edge in the second frame-down image.
또한, 상기 트래킹 포인트 메인 그룹으로 결정하는 단계는, 상기 제2 프레임 다운 이미지 내 타겟 에지를 검출하는 단계와, 상기 검출된 타겟 에지를 포함하는 타겟 에지영역 상에 상기 트래킹 포인트 세트 내 복수의 포인트 그룹 각각을 투영(projection)하는 단계와, 상기 투영된 각각의 포인트 그룹이 포함하는 복수의 포인트 중에서 상기 타겟 에지 상에 위치하는 매칭 포인트를 검출하는 단계와, 상기 검출된 매칭 포인트를 기초로 상기 각각의 포인트 그룹에 대한 상기 매칭 스코어를 산출하는 단계를 포함한다. In addition, the determining of the tracking point main group may include detecting a target edge in the second frame-down image, and a plurality of point groups in the tracking point set on a target edge region including the detected target edge Projecting each point, detecting a matching point located on the target edge among a plurality of points included in each of the projected point groups, and based on the detected matching point, each of the points and calculating the matching score for the point group.
또한, 상기 트래킹 포인트 메인 그룹으로 결정하는 단계는, 상기 각각의 포인트 그룹에 대하여 산출된 복수의 매칭 스코어 중에서 가장 높은 매칭 스코어를 가지는 포인트 그룹을 상기 트래킹 포인트 메인 그룹으로 결정하는 단계를 더 포함한다. The determining of the tracking point main group may further include determining a point group having the highest matching score among a plurality of matching scores calculated for each point group as the tracking point main group.
또한, 상기 연속 프레임 이미지 내 상기 타겟객체를 트래킹하는 단계는, 상기 트래킹 포인트 메인 그룹에 대응되는 트랜스레이션 파라미터를 기초로 상기 연속 프레임 이미지에 대한 덴스 이미지 얼라인먼트(Dense image alignment) 연산을 수행하는 단계와, 상기 수행된 연산을 기초로 상기 연속 프레임 이미지에 대한 호모그래피(homography)를 추정하는 단계와, 상기 추정된 호모그래피에 기초하여 상기 타겟객체를 트래킹하는 단계를 포함한다. In addition, the tracking of the target object in the continuous frame image may include performing a dense image alignment operation on the continuous frame image based on a translation parameter corresponding to the tracking point main group; , estimating homography of the continuous frame image based on the performed operation, and tracking the target object based on the estimated homography.
본 발명의 실시예에 따른 연속 프레임 간의 실시간 이미지 타겟의 모션 추정 방법 및 그 시스템은, 다운 스케일링(Down scaling)된 연속 프레임 이미지들을 이용하여 이미지 타겟의 모션을 추적함으로써, 다운 스케일링된 이미지에서는 해당 이미지 내 원하는 특성이나 패턴에 대한 위치 이동에 둔감해진다는 특성과, 원하는 특성이나 패턴에 대한 존재 여부를 용이하게 검출 가능하다는 특성을 활용하여, 상기 연속 프레임 이미지 내 이미지 타겟의 움직임(즉, 영상 시프팅(shifting))에 따른 노이즈(예컨대, 모션블러, 빛번짐 및/또는 롤링셔터 이펙트 등)나 해당 이미지 타겟에 대한 스케일 변화 및/또는 시점 변화 등이 존재하더라도 이를 상쇄하며 해당 이미지 타겟을 정확하고 용이하게 검출 및/또는 추적할 수 있는 효과가 있다. A method and system for estimating the motion of an image target in real time between consecutive frames according to an embodiment of the present invention track the motion of an image target using down-scaled consecutive frame images, so that the corresponding image in the down-scaled image The movement of the image target in the continuous frame image (i.e., image shifting Even if there is noise (e.g., motion blur, light blur, and/or rolling shutter effect) due to (shifting) or scale change and/or viewpoint change for the image target, it is offset and the image target is accurately and easily It has an effect that can be detected and/or tracked appropriately.
또한, 본 발명의 실시예에 따른 연속 프레임 간의 실시간 이미지 타겟의 모션 추정 방법 및 그 시스템은, 상기 다운 스케일링된 연속 프레임 이미지들을 기초로 해당 연속 프레임 이미지들 간의 호모그래피(Homography)를 상정하여 해당 이미지 타겟의 모션을 추정함으로써, 호모그래피 연산에 필요한 데이터 처리량을 감소시켜 연산 속도 및/또는 효율성을 제고시키는 등 상기 이미지 타겟의 움직임에 대한 추정 알고리즘의 성능을 향상시킬 수 있는 효과가 있다. In addition, a method and system for estimating motion of a real-time image target between consecutive frames according to an embodiment of the present invention assumes homography between corresponding consecutive frame images based on the down-scaled consecutive frame images, By estimating the motion of the target, it is possible to improve the performance of the estimation algorithm for the motion of the image target, such as reducing the amount of data processing required for the homography operation, thereby improving operation speed and/or efficiency.
또한, 본 발명의 실시예에 따른 연속 프레임 간의 실시간 이미지 타겟의 모션 추정 방법 및 그 시스템은, 상술된 바와 같은 추정 알고리즘에 기반한 다양한 객체 검출 및/또는 추적 서비스를 지원 가능함으로써, 상기 다양한 객체 검출 및/또는 추적 서비스(예컨대, 증강현실 기반 SLAM(simultaneous localization and mapping) 서비스 등)의 품질 및 효용성을 보다 증진시킬 수 있는 효과가 있다. In addition, the method and system for estimating the motion of a real-time image target between successive frames according to an embodiment of the present invention support various object detection and/or tracking services based on the estimation algorithm as described above, thereby providing the various object detection and / or tracking service (eg, augmented reality-based SLAM (simultaneous localization and mapping) service, etc.) has an effect that can further enhance the quality and utility.
다만, 본 발명에서 얻을 수 있는 효과는 이상에서 언급한 효과들로 제한되지 않으며, 언급하지 않은 또 다른 효과들은 아래의 기재로부터 명확하게 이해될 수 있다. However, the effects obtainable in the present invention are not limited to the effects mentioned above, and other effects not mentioned can be clearly understood from the description below.
도 1은 본 발명의 실시예에 따른 연속 프레임 간의 실시간 이미지 타겟의 모션 추정 시스템의 개념도이다.
도 2는 본 발명의 실시예에 따른 단말의 내부 블록도이다.
도 3 및 도 4는 본 발명의 실시예에 따른 연속 프레임 간의 실시간 이미지 타겟의 모션 추정 방법을 설명하기 위한 흐름도들이다.
도 5 및 도 6은 본 발명의 실시예에 따른 제1 프레임 이미지 내 타겟객체에 대한 트래킹 포인트를 설정하는 방법을 설명하기 위한 도면의 일례들이다.
도 7은 본 발명의 실시예에 따른 트래킹 포인트 메인 그룹을 결정하는 방법을 설명하기 위한 도면의 일례이다. 1 is a conceptual diagram of a motion estimation system of a real-time image target between successive frames according to an embodiment of the present invention.
2 is an internal block diagram of a terminal according to an embodiment of the present invention.
3 and 4 are flowcharts illustrating a method for estimating motion of a real-time image target between successive frames according to an embodiment of the present invention.
5 and 6 are examples of drawings for explaining a method of setting a tracking point for a target object in a first frame image according to an embodiment of the present invention.
7 is an example of a diagram for explaining a method of determining a tracking point main group according to an embodiment of the present invention.
본 발명은 다양한 변환을 가할 수 있고 여러 가지 실시예를 가질 수 있는 바, 특정 실시예들을 도면에 예시하고 상세한 설명에 상세하게 설명하고자 한다. 본 발명의 효과 및 특징, 그리고 그것들을 달성하는 방법은 도면과 함께 상세하게 후술되어 있는 실시예들을 참조하면 명확해질 것이다. 그러나 본 발명은 이하에서 개시되는 실시예들에 한정되는 것이 아니라 다양한 형태로 구현될 수 있다. 이하의 실시예에서, 제1, 제2 등의 용어는 한정적인 의미가 아니라 하나의 구성 요소를 다른 구성 요소와 구별하는 목적으로 사용되었다. 또한, 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 또한, 포함하다 또는 가지다 등의 용어는 명세서상에 기재된 특징, 또는 구성요소가 존재함을 의미하는 것이고, 하나 이상의 다른 특징들 또는 구성요소가 부가될 가능성을 미리 배제하는 것은 아니다. 또한, 도면에서는 설명의 편의를 위하여 구성 요소들이 그 크기가 과장 또는 축소될 수 있다. 예컨대, 도면에서 나타난 각 구성의 크기 및 두께는 설명의 편의를 위해 임의로 나타내었으므로, 본 발명이 반드시 도시된 바에 한정되지 않는다.Since the present invention can apply various transformations and have various embodiments, specific embodiments will be illustrated in the drawings and described in detail in the detailed description. Effects and features of the present invention, and methods for achieving them will become clear with reference to the embodiments described later in detail together with the drawings. However, the present invention is not limited to the embodiments disclosed below and may be implemented in various forms. In the following embodiments, terms such as first and second are used for the purpose of distinguishing one component from another component without limiting meaning. Also, expressions in the singular number include plural expressions unless the context clearly dictates otherwise. In addition, terms such as include or have mean that features or elements described in the specification exist, and do not preclude the possibility that one or more other features or elements may be added. In addition, in the drawings, the size of components may be exaggerated or reduced for convenience of description. For example, since the size and thickness of each component shown in the drawings are arbitrarily shown for convenience of description, the present invention is not necessarily limited to the illustrated bar.
이하, 첨부된 도면을 참조하여 본 발명의 실시예들을 상세히 설명하기로 하며, 도면을 참조하여 설명할 때 동일하거나 대응하는 구성 요소는 동일한 도면부호를 부여하고 이에 대한 중복되는 설명은 생략하기로 한다.Hereinafter, embodiments of the present invention will be described in detail with reference to the accompanying drawings, and when describing with reference to the drawings, the same or corresponding components are assigned the same reference numerals, and overlapping descriptions thereof will be omitted. .
도 1은 본 발명의 실시예에 따른 연속 프레임 간의 실시간 이미지 타겟의 모션 추정 시스템의 개념도이다. 1 is a conceptual diagram of a motion estimation system of a real-time image target between successive frames according to an embodiment of the present invention.
도 1을 참조하면, 본 발명의 실시예에 따른 연속 프레임 간의 실시간 이미지 타겟의 모션 추정 시스템(1000: 이하, 실시간 이미지 타겟 모션 추정 시스템)은, 다운 스케일링(Down scaling)된 연속 프레임 간의 호모그래피(Homography)를 상정하여 상기 연속 프레임 내 이미지 타겟의 모션을 추정하는 연속 프레임 간의 실시간 이미지 타겟의 모션 추정 서비스(이하, 타겟 모션 추정 서비스)를 제공할 수 있다. Referring to FIG. 1 , a real-time image target motion estimation system 1000 (hereinafter referred to as a real-time image target motion estimation system) between consecutive frames according to an embodiment of the present invention includes homography between down-scaled consecutive frames ( Homography) , a real-time image target motion estimation service (hereinafter, a target motion estimation service) between successive frames for estimating the motion of the image target within the successive frames may be provided.
실시예에서, 위와 같은 타겟 모션 추정 서비스를 제공하는 실시간 이미지 타겟 모션 추정 시스템(1000)은, 단말(100), 데이터베이스 서버(200) 및 네트워크(300: Network)를 포함할 수 있다. In an embodiment, the real-time image target
이때, 상기 단말(100) 및 데이터베이스 서버(200)는, 상기 네트워크(300)를 통하여 연결될 수 있다. At this time, the
여기서, 실시예에 따른 상기 네트워크(300)는, 상기 단말(100) 및/또는 데이터베이스 서버(200) 등과 같은 각각의 노드 상호 간에 정보 교환이 가능한 연결 구조를 의미하는 것으로, 이러한 네트워크(300)의 일례에는 3GPP(3rd Generation Partnership Project) 네트워크, LTE(Long Term Evolution) 네트워크, WIMAX(World Interoperability for Microwave Access) 네트워크, 인터넷(Internet), LAN(Local Area Network), Wireless LAN(Wireless Local Area Network), WAN(Wide Area Network), PAN(Personal Area Network), 블루투스(Bluetooth) 네트워크, 위성 방송 네트워크, 아날로그 방송 네트워크, DMB(Digital Multimedia Broadcasting) 네트워크 등이 포함되나 이에 한정되지는 않는다.Here, the
이하, 첨부된 도면을 참조하여 실시간 이미지 타겟 모션 추정 시스템(1000)을 구현하는 단말(100) 및 데이터베이스 서버(200)에 대해 상세히 설명한다. Hereinafter, the
- 단말(100: Terminal) - Terminal (100: Terminal)
본 발명의 실시예에 따른 단말(100)은, 타겟 모션 추정 서비스를 제공하는 모션 추정 애플리케이션(이하, 애플리케이션)이 설치된 소정의 컴퓨팅 디바이스일 수 있다. The
자세히, 하드웨어적 관점에서 단말(100)은, 애플리케이션이 설치된 모바일 타입 컴퓨팅 장치(100-1) 및/또는 데스크탑 타입 컴퓨팅 장치(100-2) 등을 포함할 수 있다. In detail, from a hardware point of view, the
여기서, 모바일 타입 컴퓨팅 장치(100-1)는, 애플리케이션이 설치된 스마트 폰이나 테블릿 PC와 같은 모바일 장치일 수 있다. Here, the mobile type computing device 100 - 1 may be a mobile device such as a smart phone or a tablet PC in which applications are installed.
예를 들어, 모바일 타입 컴퓨팅 장치(100-1)는, 스마트 폰(smart phone), 휴대폰, 디지털방송용 디바이스, PDA(personal digital assistants), PMP(portable multimedia player), 태블릿 PC(tablet PC) 등이 포함될 수 있다. For example, the mobile type computing device 100 - 1 includes a smart phone, a mobile phone, a digital broadcasting device, a PDA (personal digital assistants), a PMP (portable multimedia player), a tablet PC, and the like. can be included
또한, 데스크탑 타입 컴퓨팅 장치(100-2)는, 애플리케이션이 설치된 고정형 데스크탑 PC, 노트북 컴퓨터(laptop computer), 울트라북(ultrabook)과 같은 퍼스널 컴퓨터 등과 같이 유/무선 통신을 기반으로 타겟 모션 추정 서비스를 실행하기 위한 프로그램이 설치된 장치 등을 포함할 수 있다. In addition, the desktop type computing device 100 - 2 provides a target motion estimation service based on wired/wireless communication, such as a fixed desktop PC, a laptop computer, and a personal computer such as an ultrabook with applications installed thereon. It may include a device in which a program for execution is installed.
또한, 실시예에 따라서 단말(100)은, 타겟 모션 추정 서비스 환경을 제공하는 소정의 서버(Server) 컴퓨팅 디바이스를 더 포함할 수도 있다. Also, according to embodiments, the
도 2는 본 발명의 실시예에 따른 단말(100)의 내부 블록도이다. 2 is an internal block diagram of a
한편, 도 2를 참조하면, 기능적 관점에서 단말(100)은, 메모리(110), 프로세서 어셈블리(120), 통신 프로세서(130), 인터페이스부(140), 입력 시스템(150), 센서 시스템(160) 및 디스플레이 시스템(170)을 포함할 수 있다. 이러한 구성요소들은 단말(100)의 하우징 내에 포함되도록 구성될 수 있다. Meanwhile, referring to FIG. 2 , from a functional point of view, the
자세히, 메모리(110)에는, 애플리케이션(111)이 저장되며, 애플리케이션(111)은 타겟 모션 추정 서비스 환경을 제공하기 위한 각종 응용 프로그램, 데이터 및 명령어 중 어느 하나 이상을 저장할 수 있다. In detail, an
즉, 메모리(110)는, 타겟 모션 추정 서비스 환경을 생성하기 위하여 사용될 수 있는 명령 및 데이터 등을 저장할 수 있다. That is, the memory 110 may store commands and data that may be used to create a target motion estimation service environment.
또한, 상기 메모리(110)는, 프로그램 영역과 데이터 영역을 포함할 수 있다. Also, the memory 110 may include a program area and a data area.
여기서, 실시예에 따른 프로그램 영역은, 단말(100)을 부팅하는 운영체제(OS: Operating System) 및 기능요소들 사이에 연계될 수 있으며, 데이터 영역은, 단말(100)의 사용에 따라 발생하는 데이터가 저장될 수 있다. Here, the program area according to the embodiment may be linked between an operating system (OS) that boots the terminal 100 and functional elements, and the data area may be data generated according to the use of the terminal 100. can be stored.
또한, 메모리(110)는, 적어도 하나 이상의 비일시적 컴퓨터 판독 가능 저장매체와, 일시적 컴퓨터 판독 가능 저장매체를 포함할 수 있다. In addition, the memory 110 may include at least one or more non-transitory computer-readable storage media and temporary computer-readable storage media.
예를 들어, 메모리(110)는, ROM, EPROM, 플래시 드라이브, 하드 드라이브 등과 같은 다양한 저장기기일 수 있고, 인터넷(internet) 상에서 상기 메모리(110)의 저장 기능을 수행하는 웹 스토리지(web storage)를 포함할 수 있다. For example, the memory 110 may be various storage devices such as ROM, EPROM, flash drive, hard drive, etc., and web storage that performs the storage function of the memory 110 on the Internet can include
프로세서 어셈블리(120)는, 타겟 모션 추정 서비스 환경을 생성하기 위한 다양한 작업을 수행하기 위해, 메모리(110)에 저장된 애플리케이션(111)의 명령들을 실행할 수 있는 적어도 하나 이상의 프로세서를 포함할 수 있다. The
실시예에서 프로세서 어셈블리(120)는, 타겟 모션 추정 서비스를 제공하기 위하여 메모리(110)의 애플리케이션(111)을 통해 구성요소의 전반적인 동작을 컨트롤할 수 있다. In an embodiment, the
이러한 프로세서 어셈블리(120)는, 중앙처리장치(CPU) 및/또는 그래픽처리장치(GPU) 등이 포함된 단말(100)에 적합한 시스템 온 칩(SOC)일 수 있으며, 메모리(110)에 저장된 운영체제(OS) 및/또는 응용 프로그램 등을 실행할 수 있고, 단말(100)에 탑재된 각 구성요소들을 제어할 수 있다. The
또한, 프로세서 어셈블리(120)는, 각 구성요소와 내부적으로 시스템 버스(System Bus)에 의해 통신을 수행할 수 있고, 로컬 버스(Local Bus)를 비롯한 소정의 버스 구조들을 하나 이상 포함할 수 있다. In addition, the
또한, 프로세서 어셈블리(120)는, ASICs (application specific integrated circuits), DSPs(digital signal processors), DSPDs(digital signal processing devices), PLDs(programmable logic devices), FPGAs(field programmable gate arrays), 제어기(controllers), 마이크로 컨트롤러(micro-controllers), 마이크로 프로세스(microprocessors), 기타 기능 수행을 위한 전기적 유닛 중 적어도 하나를 포함하여 구현될 수 있다. In addition, the
통신 프로세서(130)은, 외부의 장치와 통신하기 위한 하나 이상의 장치를 포함할 수 있다. 이러한 통신 프로세서(130)은, 무선 네트워크를 통해 통신할 수 있다. The
자세히, 통신 프로세서(130)은, 타겟 모션 추정 서비스 환경을 구현하기 위한 콘텐츠 소스를 저장한 단말(100)과 통신할 수 있으며, 사용자 입력을 받은 컨트롤러와 같은 다양한 사용자 입력 컴포넌트와 통신할 수 있다. In detail, the
실시예에서, 통신 프로세서(130)은, 타겟 모션 추정 서비스와 관련된 각종 데이터를 타 단말(100) 및/또는 외부의 서버 등과 송수신할 수 있다. In an embodiment, the
이러한 통신 프로세서(130)은, 이동통신을 위한 기술표준들 또는 통신방식(예를 들어, LTE(Long Term Evolution), LTE-A(Long Term Evolution-Advanced),5G NR(New Radio), WIFI) 또는 근거리 통신방식 등을 수행할 수 있는 통신장치를 통해 구축된 이동 통신망 상에서 기지국, 외부의 단말(100), 임의의 서버 중 적어도 하나와 무선으로 데이터를 송수신할 수 있다.This
센서 시스템(160)은, 이미지 센서(161), 위치 센서(IMU, 163), 오디오 센서(165), 거리 센서, 근접 센서, 접촉 센서 등 다양한 센서를 포함할 수 있다. The sensor system 160 may include various sensors such as an
여기서, 이미지 센서(161)는, 단말(100) 주위의 물리적 공간에 대한 이미지 및/또는 영상을 캡처할 수 있다. Here, the
실시예에서, 이미지 센서(161)는, 타겟 모션 추정 서비스와 관련된 영상(예컨대, 제1 프레임 이미지 및/또는 제2 프레임 이미지 등)을 촬영하여 획득할 수 있다. In an embodiment, the
또한, 이미지 센서(161)는, 단말(100)의 전면 또는/및 후면에 배치되어 배치된 방향측을 촬영하여 영상을 획득할 수 있으며, 단말(100)의 외부를 향해 배치된 카메라를 통해 물리적 공간을 촬영할 수 있다. In addition, the
이러한 이미지 센서(161)는, 이미지 센서장치와 영상 처리 모듈을 포함할 수 있다. 자세히, 이미지 센서(161)는, 이미지 센서장치(예를 들면, CMOS 또는 CCD)에 의해 얻어지는 정지영상 또는 동영상을 처리할 수 있다. The
또한, 이미지 센서(161)는, 영상 처리 모듈을 이용하여 이미지 센서장치를 통해 획득된 정지영상 또는 동영상을 가공해 필요한 정보를 추출하고, 추출된 정보를 프로세서에 전달할 수 있다.In addition, the
이러한 이미지 센서(161)는, 적어도 하나 이상의 카메라를 포함하는 카메라 어셈블리일 수 있다. 카메라 어셈블리는, 가시광선 대역을 촬영하는 일반 카메라를 포함할 수 있으며, 적외선 카메라, 스테레오 카메라 등의 특수 카메라를 더 포함할 수 있다. The
또한, 위와 같은 이미지 센서(161)는, 실시예에 따라서 단말(100)에 포함되어 동작할 수도 있고, 외부의 장치(예컨대, 외부의 서버 등)에 포함되어 상술된 통신 프로세서(130) 및/또는 인터페이스부(140)에 기초한 연동을 통하여 동작할 수도 있다.In addition, the
위치 센서(IMU, 163)는, 단말(100)의 움직임 및 가속도 중 적어도 하나 이상을 감지할 수 있다. 예를 들어, 가속도계, 자이로스코프, 자력계와 같은 다양한 위치 센서의 조합으로 이루어질 수 있다. The position sensor (IMU) 163 may detect at least one of motion and acceleration of the terminal 100 . For example, it may be made of a combination of various position sensors such as an accelerometer, a gyroscope, and a magnetometer.
또한, 위치 센서(IMU, 163)는, 통신 프로세서(130)의 GPS와 같은 위치 통신 프로세서(130)과 연동하여, 단말(100) 주변의 물리적 공간에 대한 공간 정보를 인식할 수 있다. In addition, the location sensor (IMU) 163 may recognize spatial information about a physical space around the terminal 100 by interworking with the
오디오 센서(165)는, 단말(100) 주변의 소리를 인식할 수 있다. The
자세히, 오디오 센서(165)는, 단말(100)을 사용하는 사용자의 음성 입력을 감지할 수 있는 마이크로폰을 포함할 수 있다. In detail, the
실시예에서 오디오 센서(165)는 타겟 모션 추정 서비스를 위해 필요한 음성 데이터를 사용자로부터 입력 받을 수 있다.In an embodiment, the
인터페이스부(140)은, 단말(100)을 하나 이상의 다른 장치와 통신 가능하게 연결할 수 있다. 자세히, 인터페이스부(140)은, 하나 이상의 상이한 통신 프로토콜과 호환되는 유선 및/또는 무선 통신 장치를 포함할 수 있다. The
이러한 인터페이스부(140)을 통해 단말(100)은, 여러 입출력 장치들과 연결될 수 있다. Through this
예를 들어, 인터페이스부(140)은, 헤드셋 포트나 스피커와 같은 오디오 출력장치와 연결되어, 오디오를 출력할 수 있다. For example, the
예시적으로 오디오 출력장치가 인터페이스부(140)을 통해 연결되는 것으로 설명하였으나, 단말(100) 내부에 설치되는 실시예도 포함될 수 있다. Although it has been described that the audio output device is exemplarily connected through the
또한, 예를 들면 인터페이스부(140)은, 키보드 및/또는 마우스와 같은 입력장치와 연결되어, 사용자 입력을 획득할 수 있다. Also, for example, the
예시적으로 키보드 및/또는 마우스가 인터페이스부(140)을 통해 연결되는 것으로 설명하였으나, 단말(100) 내부에 설치되는 실시예도 포함될 수 있다. Although it has been described that the keyboard and/or mouse are exemplarily connected through the
이러한 인터페이스부(140)은, 유/무선 헤드셋 포트(port), 외부 충전기 포트(port), 유/무선 데이터 포트(port), 메모리 카드(memory card) 포트, 식별 모듈이 구비된 장치를 연결하는 포트(port), 오디오 I/O(Input/Output) 포트(port), 비디오 I/O(Input/Output) 포트(port), 이어폰 포트(port), 전력 증폭기, RF 회로, 송수신기 및 기타 통신 회로 중 적어도 하나를 포함하여 구성될 수 있다. The
입력 시스템(150)은 타겟 모션 추정 서비스와 관련된 사용자의 입력(예를 들어, 제스처, 음성 명령, 버튼의 작동 또는 다른 유형의 입력)을 감지할 수 있다.
자세히, 입력 시스템(150)은 소정의 버튼, 터치 센서 및/또는 사용자 모션 입력을 수신하는 이미지 센서(161) 등을 포함할 수 있다. In detail, the
또한, 입력 시스템(150)은, 인터페이스부(140)을 통해 외부 컨트롤러와 연결되어, 사용자의 입력을 수신할 수 있다. Also, the
디스플레이 시스템(170)은, 타겟 모션 추정 서비스와 관련된 다양한 정보를 그래픽 이미지로 출력할 수 있다. The display system 170 may output various information related to the target motion estimation service as a graphic image.
실시예로, 디스플레이 시스템(170)은, 소정의 타겟객체를 포함하는 영상, 제1 프레임 이미지, 제2 프레임 이미지 및/또는 각종 사용자 인터페이스 등을 표시할 수 있다. As an example, the display system 170 may display an image including a predetermined target object, a first frame image, a second frame image, and/or various user interfaces.
이러한 디스플레이는, 액정 디스플레이(liquid crystal display, LCD), 박막 트랜지스터 액정 디스플레이(thin film transistor-liquid crystal display, TFT LCD), 유기 발광 다이오드(organic light-emitting diode, OLED), 플렉서블 디스플레이(flexible display), 3차원 디스플레이(3D display), 전자잉크 디스플레이(e-ink display) 중에서 적어도 하나를 포함할 수 있다.Such displays include a liquid crystal display (LCD), a thin film transistor-liquid crystal display (TFT LCD), an organic light-emitting diode (OLED), and a flexible display. , a 3D display, and an e-ink display.
이러한 단말(100)의 하우징 내에는 상기 구성요소들이 배치될 수 있으며, 사용자 인터페이스는 사용자 터치 입력을 수신하도록 구성된 디스플레이(171) 상에 터치 센서(173)를 포함할 수 있다. The components may be disposed in the housing of the terminal 100, and the user interface may include a
자세히, 디스플레이 시스템(170)은, 이미지를 출력하는 디스플레이(171)와, 사용자의 터치 입력을 감지하는 터치 센서(173)를 포함할 수 있다.In detail, the display system 170 may include a
예시적으로 디스플레이(171)는 터치 센서(173)와 상호 레이어 구조를 이루거나 일체형으로 형성됨으로써, 터치 스크린으로 구현될 수 있다. 이러한 터치 스크린은, 단말(100)과 사용자 사이의 입력 인터페이스를 제공하는 사용자 입력부로써 기능함과 동시에, 단말(100)과 사용자 사이의 출력 인터페이스를 제공할 수 있다. For example, the
한편, 본 발명의 실시예에 따른 단말(100)은, 개시된 적어도 하나의 알고리즘을 이용하여 타겟 모션 추정 서비스에 필요한 각종 기능 동작을 수행할 수 있다. Meanwhile, the terminal 100 according to an embodiment of the present invention may perform various functional operations required for a target motion estimation service using at least one disclosed algorithm.
실시예로, 단말(100)은, 오브젝트 디텍션(Object detection), 이미지 세그멘테이션(Image segmentation), 이미지 다운 스케일링(Image down scaling), 특징점 검출(Feature point detection) 및/또는 호모그래피 추정(Homography estimation) 등을 수행하는 다양한 알고리즘에 기반하여 타겟 모션 추정 서비스에 필요한 각종 기능 동작을 수행할 수 있다. As an embodiment, the terminal 100 performs object detection, image segmentation, image down scaling, feature point detection, and/or homography estimation. Various functional operations necessary for the target motion estimation service can be performed based on various algorithms that perform the following.
또한, 실시예에 따라서 단말(100)은, 후술되는 데이터베이스 서버(200)에서 수행하는 기능 동작의 적어도 일부를 더 수행할 수도 있다. Also, according to embodiments, the terminal 100 may further perform at least a part of functional operations performed by the
- 데이터베이스 서버(200: Database server) - Database server (200: Database server)
한편, 본 발명의 실시예에 따른 데이터베이스 서버(200)는, 타겟 모션 추정 서비스를 제공하기 위한 일련의 프로세스를 수행할 수 있다. Meanwhile, the
자세히, 실시예에서 데이터베이스 서버(200)는, 단말(100)과 같은 외부의 장치에서 연속 프레임 간의 실시간 이미지 타겟의 모션 추정 프로세스가 구동되게 하기 위해 필요한 데이터를, 상기 외부의 장치와 교환함으로써 상기 타겟 모션 추정 서비스를 제공할 수 있다. In detail, in the embodiment, the
보다 상세히, 실시예에서 데이터베이스 서버(200)는, 외부의 장치(실시예에서, 모바일 타입 컴퓨팅 장치(100-1) 및/또는 데스크탑 타입 컴퓨팅 장치(100-2) 등)에서 애플리케이션(111)이 동작할 수 있는 환경을 제공할 수 있다. More specifically, in the embodiment, the
이를 위해, 데이터베이스 서버(200)는, 애플리케이션(111)이 동작하기 위한 응용 프로그램, 데이터 및/또는 명령어 등을 포함할 수 있고, 이에 기초한 데이터를 상기 외부의 장치와 송수신할 수 있다. To this end, the
또한, 실시예에서 데이터베이스 서버(200)는, 소정의 제1 프레임 이미지 내 타겟객체를 검출할 수 있다. Also, in an embodiment, the
자세히, 데이터베이스 서버(200)는, 연속된 복수의 프레임에 기초하여 구현되는 소정의 기초영상으로부터 상기 제1 프레임 이미지를 획득할 수 있다. In detail, the
또한, 데이터베이스 서버(200)는, 상기 제1 프레임 이미지에 기초한 소정의 이미지 처리 프로세스를 수행하여 상기 제1 프레임 이미지 내 타겟객체를 검출할 수 있다. Also, the
또한, 실시예에서 데이터베이스 서버(200)는, 상기 타겟객체를 검출한 제1 프레임 이미지를 다운 스케일링할 수 있다. Also, in an embodiment, the
또한, 실시예에서 데이터베이스 서버(200)는, 상기 다운 스케일링된 제1 프레임 이미지 내 타겟객체에 대한 트래킹 포인트를 설정할 수 있다. Also, in an embodiment, the
여기서, 실시예에 따른 상기 트래킹 포인트는, 소정의 타겟객체를 검출 및/또는 추적하기 위하여 해당 타겟객체의 특징이 되는 지점을 나타내는 키포인트(keypoint)일 수 있다. Here, the tracking point according to the embodiment may be a keypoint indicating a characteristic point of a target object in order to detect and/or track a predetermined target object.
또한, 실시예에서 데이터베이스 서버(200)는, 상기 기초영상으로부터 상기 제1 프레임 이미지에 연속되는 소정의 타 프레임 이미지를 제2 프레임 이미지로서 획득할 수 있다. In addition, in an embodiment, the
또한, 실시예에서 데이터베이스 서버(200)는, 상기 획득된 제2 프레임 이미지를 다운 스케일링할 수 있다. Also, in an embodiment, the
또한, 실시예에서 데이터베이스 서버(200)는, 상기 다운 스케일링된 제2 프레임 이미지와 상기 설정된 트래킹 포인트를 기초로 트래킹 포인트 메인 그룹을 결정할 수 있다. In addition, in an embodiment, the
여기서, 실시예에 따른 상기 트래킹 포인트 메인 그룹은, 상기 설정된 트래킹 포인트 중에서 상기 다운 스케일링된 제2 프레임 이미지와의 매칭 스코어가 가장 높은 트래킹 포인트들의 그룹을 의미할 수 있다. Here, the tracking point main group according to the embodiment may mean a group of tracking points having the highest matching score with the down-scaled second frame image among the set tracking points.
또한, 실시예에서 데이터베이스 서버(200)는, 상기 결정된 트래킹 포인트 메인 그룹에 기초한 타겟객체 트래킹을 수행할 수 있다. Also, in an embodiment, the
즉, 데이터베이스 서버(200)는, 상기 트래킹 포인트 메인 그룹에 기초하여 소정의 타겟객체를 검출 및/또는 추적할 수 있는 타겟객체 트래킹 서비스를 구현할 수 있다. That is, the
또한, 실시예에서 데이터베이스 서버(200)는, 개시된 적어도 하나의 알고리즘을 이용하여 타겟 모션 추정 서비스에 필요한 소정의 기능 동작을 수행할 수 있다. Also, in an embodiment, the
실시예로, 데이터베이스 서버(200)는, 오브젝트 디텍션(Object detection), 이미지 세그멘테이션(Image segmentation), 이미지 다운 스케일링(Image down scaling), 특징점 검출(Feature point detection) 및/또는 호모그래피 추정(Homography estimation) 등을 수행하는 다양한 알고리즘에 기반하여 타겟 모션 추정 서비스에 필요한 각종 기능 동작을 수행할 수 있다. In an embodiment, the
보다 상세히, 실시예에서 데이터베이스 서버(200)는, 위와 같은 기능 동작을 수행하기 위해 구축되어 있는 소정의 알고리즘 구동 프로그램을 메모리 모듈(230)로부터 독출하여, 상기 독출된 소정의 알고리즘 시스템에 따라 해당하는 기능 동작을 수행할 수 있다. In more detail, in the embodiment, the
이때, 실시예에 따라서 위와 같은 소정의 알고리즘은, 데이터베이스 서버(200)에 직접 포함되거나, 또는 데이터베이스 서버(200)와는 별도의 장치 및/또는 서버에 구현되어 상기 타겟 모션 추정 서비스를 위한 기능 동작을 수행할 수 있다. At this time, depending on the embodiment, the above predetermined algorithm is directly included in the
이하의 설명에서는, 상기 소정의 알고리즘이 데이터베이스 서버(200)에 포함되어 구현되는 것으로 설명하나 이에 한정되는 것은 아니다. In the following description, it is described that the predetermined algorithm is included in the
또한, 실시예에서 데이터베이스 서버(200)는, 타겟 모션 추정 서비스를 구현하기 위한 각종 응용 프로그램, 명령어 및/또는 데이터 등을 저장하고 관리할 수 있다. Also, in an embodiment, the
실시예로, 데이터베이스 서버(200)는, 적어도 하나 이상의 기초영상, 제1 프레임 이미지, 제2 프레임 이미지, 트래킹 포인트 및/또는 타겟 모션 추정 서비스에 필요한 각종 알고리즘 등을 저장 및 관리할 수 있다. As an embodiment, the
한편, 도 1을 더 참조하면, 실시예에서 위와 같은 데이터베이스 서버(200)는, 데이터 처리를 위한 적어도 하나 이상의 프로세서 모듈(210: Processor Module)과, 외부의 장치와의 데이터 교환을 위한 적어도 하나 이상의 커뮤니케이션 모듈(220: Communication Module)과, 타겟 모션 추정 서비스의 제공을 위한 각종 응용 프로그램, 데이터 및/또는 명령어들을 저장하는 적어도 하나 이상의 메모리 모듈(230: Memory Module)을 포함하는 소정의 컴퓨팅 장치로 구현될 수 있다. Meanwhile, further referring to FIG. 1 , in the embodiment, the
여기서, 상기 메모리 모듈(230)은, 타겟 모션 추정 서비스를 제공하기 위한 운영체제(OS), 각종 응용 프로그램, 데이터 및 명령어 중 어느 하나 이상을 저장할 수 있다. Here, the
또한, 상기 메모리 모듈(230)은, 프로그램 영역과 데이터 영역을 포함할 수 있다. Also, the
여기서, 실시예에 따른 프로그램 영역은, 서버를 부팅하는 운영체제(OS: Operating System) 및 기능요소들 사이에 연계될 수 있으며, 데이터 영역은, 서버의 사용에 따라 발생하는 데이터가 저장될 수 있다. Here, the program area according to the embodiment may be linked between an Operating System (OS) and functional elements for booting the server, and the data area may store data generated according to the use of the server.
실시예에서, 이러한 메모리 모듈(230)은, ROM, RAM, EPROM, 플래시 드라이브, 하드 드라이브 등과 같은 다양한 저장기기일 수 있고, 인터넷(internet)상에서 상기 메모리 모듈(230)의 저장 기능을 수행하는 웹 스토리지(web storage)일 수도 있다. In an embodiment, the
또한, 메모리 모듈(230)은, 서버 상에 탈착 가능한 형태의 기록매체일 수 있다. Also, the
한편, 상기 프로세서 모듈(210)은, 타겟 모션 추정 서비스를 구현하기 위하여 전술한 각 유닛(unit)의 전반적인 동작을 컨트롤할 수 있다. Meanwhile, the
이러한 프로세서 모듈(210)은, 중앙처리장치(CPU) 및/또는 그래픽처리장치(GPU) 등이 포함된 서버에 적합한 시스템 온 칩(SOC)일 수 있으며, 메모리 모듈(230)에 저장된 운영체제(OS) 및/또는 응용 프로그램 등을 실행할 수 있고, 서버에 탑재된 각 구성요소들을 제어할 수 있다. The
또한, 프로세서 모듈(210)은, 각 구성요소와 내부적으로 시스템 버스(System Bus)에 의해 통신을 수행할 수 있고, 로컬 버스(Local Bus)를 비롯한 소정의 버스 구조들을 하나 이상 포함할 수 있다. In addition, the
또한, 프로세서 모듈(210)은, ASICs (application specific integrated circuits), DSPs(digital signal processors), DSPDs(digital signal processing devices), PLDs(programmable logic devices), FPGAs(field programmable gate arrays), 제어기(controllers), 마이크로 컨트롤러(micro-controllers), 마이크로 프로세스(microprocessors), 기타 기능 수행을 위한 전기적 유닛 중 적어도 하나를 이용하여 구현될 수 있다. In addition, the
이상의 설명에서는, 본 발명의 실시예에 따른 데이터베이스 서버(200)가 상술된 바와 같은 기능 동작을 수행한다고 설명하였으나, 실시예에 따라서 데이터베이스 서버(200)에서 수행하는 기능 동작의 적어도 일부를 외부의 장치(예컨대, 단말(100) 등)에서 수행할 수도 있고, 상기 외부의 장치에서 수행하는 기능 동작의 적어도 일부를 상기 데이터베이스 서버(200)에서 더 수행할 수도 있는 등 다양한 실시예가 가능할 수 있다. In the above description, it has been described that the
- 연속 프레임 간 실시간 이미지 타겟의 모션 추정 방법 - Motion estimation method of real-time image target between consecutive frames
이하, 본 발명의 실시예에 따른 단말(100)의 적어도 하나 이상의 프로세서에 의하여 실행되는 애플리케이션(111)이 연속 프레임 간 실시간 이미지 타겟의 모션을 추정하는 방법을 첨부된 도 3 내지 도 7을 참조하여 상세히 설명한다. Hereinafter, a method of estimating motion of a real-time image target between successive frames by an
본 발명의 실시예에서 상기 단말(100)의 적어도 하나 이상의 프로세서는, 적어도 하나 이상의 메모리(110)에 저장된 적어도 하나 이상의 애플리케이션(111)을 실행하거나 백그라운드 상태로 동작하게 할 수 있다. In an embodiment of the present invention, at least one processor of the terminal 100 may execute at least one
이하, 상기 적어도 하나 이상의 프로세서가 상기 애플리케이션(111)의 명령어를 실행하기 위해 동작하여 상술된 타겟 모션 추정 서비스를 제공하는 방법을 수행하는 것을 상기 애플리케이션(111)이 수행하는 것으로 단축하여 설명한다. Hereinafter, the execution of the above-described method of providing the target motion estimation service by operating the at least one or more processors to execute commands of the
도 3 및 도 4는 본 발명의 실시예에 따른 연속 프레임 간의 실시간 이미지 타겟의 모션 추정 방법을 설명하기 위한 흐름도들이다. 3 and 4 are flowcharts for explaining a motion estimation method of a real-time image target between successive frames according to an embodiment of the present invention.
도 3 및 도 4를 참조하면, 실시예에서 상기 단말(100)의 적어도 하나 이상의 프로세서에 의하여 실행되거나 백그라운드 상태로 동작하는 애플리케이션(111)은, 제1 프레임 이미지 내 타겟객체를 검출할 수 있다. (S101) Referring to FIGS. 3 and 4 , in an embodiment, an
자세히, 실시예에서 애플리케이션(111)은, 연속된 복수의 프레임(frames)에 기초하여 구현되는 소정의 기초영상으로부터 소정의 제1 프레임 이미지를 획득할 수 있다. In detail, in an embodiment, the
또한, 실시예에서 애플리케이션(111)은, 상기 제1 프레임 이미지로부터 상기 기초영상 내에서 검출하고자 하는 대상 객체인 타겟객체를 검출할 수 있다. In addition, in an embodiment, the
실시예로, 애플리케이션(111)은, 상기 제1 프레임 이미지에 기초한 소정의 이미지 처리 프로세스(예컨대, 오브젝트 디텍션(Object detection), 이미지 세그멘테이션(Image segmentation) 및/또는 특징점 검출(Feature point detection) 프로세스 등)를 수행하여, 상기 제1 프레임 이미지 내 타겟객체를 검출할 수 있다. 다만, 이에 한정되는 것은 아니다. In an embodiment, the
또한, 실시예에서 애플리케이션(111)은, 상기 타겟객체를 검출한 제1 프레임 이미지를 다운 스케일링(Down scaling)할 수 있다. (S103) In addition, in an embodiment, the
즉, 실시예에서 애플리케이션(111)은, 상기 타겟객체가 검출된 제1 프레임 이미지의 크기를 축소시킴으로써 상기 제1 프레임 이미지의 해상도 및 종횡비를 조정하는 다운 스케일링을 수행할 수 있다. That is, in an embodiment, the
예시적으로, 애플리케이션(111)은, 상기 제1 프레임 이미지의 해상도가 ‘4K(4096x2160)’에서 ‘VGA(640x480)’로 조정하는 다운 스케일링을 수행할 수 있다. Illustratively, the
따라서, 애플리케이션(111)은, 다운 스케일링된 이미지에서는 해당 이미지 내 원하는 특성이나 패턴(실시예에서, 타겟객체)에 대한 위치 이동에 둔감(즉, 위치 독립성(translation invariance)의 향상)해진다는 특성과, 원하는 특성이나 패턴(실시예에서, 타겟객체)에 대한 존재 여부를 용이하게 검출 가능하다는 특성을 이용하여, 추후 복수의 프레임 이미지 내에서의 타겟객체의 움직임에 따른 노이즈(예컨대, 모션블러, 빛번짐 및/또는 롤링셔터 이펙트 등)가 존재하더라도 이러한 노이즈를 상쇄하며 해당 복수의 프레임 이미지에서의 타겟객체를 용이하게 검출 및/또는 추적할 수 있다. Therefore, the
또한, 실시예에서 애플리케이션(111)은, 상기 다운 스케일링된 제1 프레임 이미지 내 타겟객체에 대한 트래킹 포인트(tracking point)를 설정할 수 있다. (S105) Also, in an embodiment, the
여기서, 실시예에 따른 상기 트래킹 포인트란, 소정의 타겟객체를 검출 및/또는 추적하기 위하여 해당 타겟객체의 특징이 되는 지점을 나타내는 키포인트(keypoint)일 수 있다. Here, the tracking point according to the embodiment may be a keypoint indicating a characteristic point of a target object in order to detect and/or track a predetermined target object.
도 5 및 도 6은 본 발명의 실시예에 따른 제1 프레임 이미지 내 타겟객체에 대한 트래킹 포인트를 설정하는 방법을 설명하기 위한 도면의 일례들이다. 5 and 6 are examples of drawings for explaining a method of setting a tracking point for a target object in a first frame image according to an embodiment of the present invention.
자세히, 도 5를 참조하면, 실시예에서 애플리케이션(111)은, 상기 다운 스케일링된 제1 프레임 이미지(DI-1: 이하, 제1 프레임 다운 이미지) 내 타겟객체의 형상을 결정하는 경계선 즉, 에지(edges)를 검출할 수 있다. In detail, referring to FIG. 5, in the embodiment, the
실시예로, 애플리케이션(111)은, 상기 제1 프레임 다운 이미지(DI-1)에 기초한 소정의 이미지 처리 프로세스(예컨대, 에지 디텍션(Edge detection) 등)를 수행하여 상기 제1 프레임 다운 이미지(DI-1) 내 타겟객체의 에지를 검출할 수 있다. 다만, 이에 한정되는 것은 아니다. In an embodiment, the
또한, 실시예에서 애플리케이션(111)은, 상기 검출된 에지 상에 복수의 트래킹 포인트(TP)를 설정할 수 있다. Also, in an embodiment, the
자세히, 애플리케이션(111)은, 상기 검출된 에지 상에 기 설정된 간격을 따라서 위치하도록 상기 복수의 트래킹 포인트(TP)를 설정할 수 있다. In detail, the
이때, 애플리케이션(111)은, 상기 에지 상에 기 설정된 위치(예컨대, 모서리 및/또는 코너 등)를 기준으로 상기 기 설정된 간격을 따라서 복수의 트래킹 포인트(TP)가 위치하도록 설정할 수 있다. In this case, the
여기서, 위와 같이 설정된 복수의 트래킹 포인트(TP)는, 각 트래킹 포인트(TP)별 좌표정보에 기반한 상호 위치관계가 모두 설정되어 있을 수 있으며, 해당 복수의 트래킹 포인트(TP)에 매칭되는 트랜스레이션 파라미터가 기 설정되어 있을 수 있다. Here, the plurality of tracking points (TP) set as above may have mutual positional relationships based on coordinate information for each tracking point (TP), and a translation parameter matched to the plurality of tracking points (TP). may have already been set.
한편, 도 6을 참조하면, 실시예에 따라서 애플리케이션(111)은, 기 설정된 트랜스레이션 파라미터(Translation parameters)를 기초로 상기 복수의 트래킹 포인트(TP)(즉, 트래킹 포인트 그룹(TPG))을 변환하여 복수의 트래킹 변환 포인트(즉, 트래킹 변환 포인트 그룹(TTG))을 생성할 수 있다. Meanwhile, referring to FIG. 6, according to an embodiment, the
자세히, 실시예에서 애플리케이션(111)은, 기 설정된 적어도 하나의 트랜스레이션 파라미터 각각에 기초하여 상기 트래킹 포인트 그룹(TPG)을 변환하여 적어도 하나의 트래킹 변환 포인트 그룹(TTG)을 생성할 수 있다. In detail, in an embodiment, the
실시예로, 애플리케이션(111)은, 제1 트랜스레이션 파라미터를 기초로 상기 트래킹 포인트 그룹(TPG)을 변환해 제1 트래킹 변환 포인트 그룹(TTG)을 생성할 수 있고, 동일한 방식으로 제2 내지 제N 트랜스레이션 파라미터를 이용해 상기 트래킹 포인트 그룹(TPG)을 변환하여 제2 내지 제N 트래킹 변환 포인트 그룹(TTG)을 생성할 수 있다. As an embodiment, the
또한, 실시예에서 애플리케이션(111)은, 상기 생성된 적어도 하나의 트래킹 변환 포인트 그룹(TTG)과 상기 트래킹 포인트 그룹(TPG)을 포함하는 트래킹 포인트 세트(TS)를 생성할 수 있다. Also, in an embodiment, the
이를 통해, 애플리케이션(111)은, 추후 상기 제1 프레임 이미지와 상기 제1 프레임 이미지에 연속되는 소정의 타 프레임 이미지 간 비교를 통하여 해당 프레임들 내 타겟객체를 검출 및/또는 추적할 시, 보다 풍부한 기반 데이터를 이용한 비교를 통해 해당 타겟객체 검출 및/또는 추적을 수행하여 그 정확성 및 신뢰성을 더욱 향상시킬 수 있다. Through this, the
또한, 실시예에서 애플리케이션(111)은, 제2 프레임 이미지를 획득할 수 있다. (S107) Also, in an embodiment, the
자세히, 실시예에서 애플리케이션(111)은, 상술된 기초영상의 상기 제1 프레임 이미지에 연속되는 소정의 타 프레임 이미지(예컨대, 상기 제1 프레임 이미지로부터 소정의 프레임 이후의 프레임 이미지 등)를 상기 제2 프레임 이미지로 획득할 수 있다. In detail, in the embodiment, the
또한, 실시예에서 애플리케이션(111)은, 상기 획득된 제2 프레임 이미지를 다운 스케일링(Down scaling)할 수 있다. (S109) Also, in an embodiment, the
즉, 실시예에서 애플리케이션(111)은, 상기 획득된 제2 프레임 이미지의 크기를 축소시킴으로써 상기 제2 프레임 이미지의 해상도 및 종횡비를 조정하는 다운 스케일링을 수행할 수 있다. That is, in an embodiment, the
예시적으로, 애플리케이션(111)은, 상기 제2 프레임 이미지의 해상도가 ‘4K(4096x2160)’에서 ‘VGA(640x480)’로 조정하는 다운 스케일링을 수행할 수 있다. Illustratively, the
또한, 실시예에서 애플리케이션(111)은, 상기 다운 스케일링된 제2 프레임 이미지와 상기 설정된 트래킹 포인트(TP)를 기초로 트래킹 포인트(TP) 메인 그룹을 결정할 수 있다. (S111) Also, in an embodiment, the
여기서, 실시예에 따른 상기 트래킹 포인트(TP) 메인 그룹이란, 상술된 트래킹 포인트 세트(TS)가 포함하는 복수의 포인트 그룹(실시예에서, 트래킹 포인트 그룹(TPG) 및/또는 적어도 하나의 트래킹 변환 포인트 그룹(TTG)) 중에서 상기 다운 스케일링된 제2 프레임 이미지와의 매칭 스코어(Matching score)가 가장 높은 포인트 그룹을 의미할 수 있다. Here, the tracking point (TP) main group according to the embodiment refers to a plurality of point groups included in the aforementioned tracking point set (TS) (in the embodiment, a tracking point group (TPG) and/or at least one tracking transformation). It may mean a point group having the highest matching score with the down-scaled second frame image among the point groups (TTG).
이때, 실시예에 따른 상기 매칭 스코어란, 상기 트래킹 포인트 세트(TS) 내 일 포인트 그룹과 상기 다운 스케일링된 제2 프레임 이미지 내 존재하는 에지 간의 매칭률을 나타내는 파라미터 값일 수 있다. In this case, the matching score according to the embodiment may be a parameter value representing a matching rate between a point group in the tracking point set (TS) and an edge existing in the down-scaled second frame image.
도 7은 본 발명의 실시예에 따른 트래킹 포인트(TP) 메인 그룹을 결정하는 방법을 설명하기 위한 도면의 일례이다. 7 is an example of a diagram for explaining a method of determining a tracking point (TP) main group according to an embodiment of the present invention.
자세히, 도 7을 참조하면, 실시예에서 애플리케이션(111)은, 상기 다운 스케일링된 제2 프레임 이미지(DI-2: 이하, 제2 프레임 다운 이미지) 내 존재하는 경계선 즉, 에지(edges)를 검출할 수 있다. In detail, referring to FIG. 7, in the embodiment, the
실시예로, 애플리케이션(111)은, 상기 제2 프레임 다운 이미지(DI-2)에 기초한 소정의 이미지 처리 프로세스(예컨대, 에지 디텍션(Edge detection) 등)를 수행하여 상기 제2 프레임 다운 이미지(DI-2) 내 에지를 검출할 수 있으며, 다만 이에 한정되는 것은 아니다. In an embodiment, the
또한, 실시예에서 애플리케이션(111)은, 상기 검출된 제2 프레임 다운 이미지(DI-2) 내 에지와 상기 트래킹 포인트 세트(TS) 내 포인트 그룹 각각 간의 매칭 스코어를 산출할 수 있다. Also, in an embodiment, the
자세히, 실시예로 애플리케이션(111)은, 상기 트래킹 포인트 세트(TS) 내 제1 포인트 그룹이 포함하는 복수의 포인트(이하, 복수의 기준 포인트)를 상기 제2 프레임 다운 이미지(DI-2) 내 에지(이하, 타겟 에지)영역(EA) 상에 투영(projection)할 수 있다. In detail, in an embodiment, the
여기서, 실시예에 따른 상기 타겟 에지영역(EA)은, 상기 타겟 에지를 포함하는 소정의 바운딩 박스(bounding box) 영역일 수 있다. Here, the target edge area EA according to the embodiment may be a predetermined bounding box area including the target edge.
또한, 이때 상기 복수의 기준 포인트는, 각 기준 포인트별 좌표정보에 기반한 상호 위치관계가 모두 설정되어 있는 상태이며, 상기 설정된 상호 위치관계를 그대로 유지하며 상기 타겟 에지 상에 투영될 수 있다. In addition, at this time, the plurality of reference points are in a state in which mutual positional relationships based on coordinate information for each reference point are all set, and the set mutual positional relations can be maintained and projected onto the target edge.
또한, 애플리케이션(111)은, 상기 타겟 에지영역(EA) 상에 투영된 복수의 기준 포인트 중에서 상기 타겟 에지 상에 위치한 기준 포인트(이하, 매칭 포인트)를 검출할 수 있다. Also, the
또한, 애플리케이션(111)은, 상기 검출된 매칭 포인트의 개수에 기초하여 상기 제1 포인트 그룹에 대한 매칭 스코어를 산출할 수 있다. Also, the
계속해서, 실시예에서 애플리케이션(111)은, 위와 동일한 방식으로 상기 트래킹 포인트 세트(TS) 내 제2 내지 제N 포인트 그룹 각각에 대한 매칭 스코어를 산출할 수 있다. Subsequently, in the embodiment, the
또한, 실시예에서 애플리케이션(111)은, 상기 산출된 포인트 그룹별 매칭 스코어 중에서 가장 높은 매칭 스코어를 가지는 포인트 그룹을 상기 트래킹 포인트 메인 그룹(TMG)으로 결정할 수 있다. Also, in an embodiment, the
이와 같이, 애플리케이션(111)은, 다양한 트랜스레이션 파라미터에 따른 복수의 포인트 그룹 중에서 상기 제2 프레임 다운 이미지(DI-2) 내 에지와 가장 높은 매칭률을 가지는 포인트 그룹을 검출함으로써, 추후 상기 높은 매칭률을 가지는 포인트 그룹(즉, 타겟객체 검출 및/또는 추적 성능이 좋은 포인트 그룹)이 포함하는 복수의 포인트를 기초로 상술된 프레임 이미지들 내 타겟객체를 검출 및/또는 추적할 수 있고, 이를 통해 상기 타겟객체 검출 및/또는 추적 결과의 정확성 및 신뢰성을 제고시킬 수 있다. In this way, the
또한, 실시예에서 애플리케이션(111)은, 상기 결정된 트래킹 포인트 메인 그룹(TMG)을 기초로 타겟객체 트래킹(Tracking)을 수행할 수 있다. (S113) Also, in an embodiment, the
즉, 실시예에서 애플리케이션(111)은, 상기 트래킹 포인트 메인 그룹(TMG)에 기초하여 소정의 타겟객체를 검출 및/또는 추적할 수 있는 타겟객체 트래킹 서비스를 구현할 수 있다. That is, in an embodiment, the
자세히, 실시예에서 애플리케이션(111)은, 상기 결정된 트래킹 포인트 메인 그룹(TMG)에 대응되는 트랜스레이션 파라미터에 기초하여 상술된 제1 프레임 다운 이미지(DI-1)와 제2 프레임 다운 이미지(DI-2)에 따른 타겟객체 트래킹을 수행할 수 있다. In detail, in the embodiment, the
보다 상세히, 실시예에서 애플리케이션(111)은, 상기 결정된 트래킹 포인트 메인 그룹(TMG)에 대응되는 트랜스레이션 파라미터(이하, 메인 트랜스레이션 파라미터)를 이용하여 상기 제1 프레임 다운 이미지(DI-1)와 제2 프레임 다운 이미지(DI-2)(이하, 연속 프레임 이미지)에 대한 Dense image alignment 연산을 수행할 수 있다. In more detail, in the embodiment, the
또한, 실시예에서 애플리케이션(111)은, 상기 수행된 Dense image alignment 연산을 통하여 상기 연속 프레임 이미지에 대한 호모그래피(homography)를 추정할 수 있다. Also, in an embodiment, the
참고적으로, 상기 호모그래피는, 한 평면을 다른 평면에 투영(projection)시킬 시 투영된 대응점들 사이에 성립되는 일정한 변환관계를 의미할 수 있다. For reference, the homography may mean a constant conversion relationship established between projected corresponding points when one plane is projected onto another plane.
또한, 실시예에서 애플리케이션(111)은, 상기 추정된 호모그래피에 기초하여 상기 제1 프레임 다운 이미지(DI-1)에 기준해 상기 제2 프레임 다운 이미지(D-2)에 대한 타겟객체 트래킹을 수행할 수 있다. In addition, in the embodiment, the
즉, 실시예에서 애플리케이션(111)은, 다운 스케일링된 프레임 이미지들인 상기 연속 프레임 이미지에 대하여 dense image alignment 연산을 수행하고, 이를 통해 상기 연속 프레임 이미지에 대한 호모그래피를 상정하며, 상정된 호모그래피를 상기 연속 프레임 이미지에 기반한 타겟 트래킹에 사용함으로써, 연속 프레임 이미지의 영상 시프팅(shifting)에 의하여 발생 가능한 각종 노이즈(예컨대, 모션블러, 빛번짐 및/또는 롤링셔터 이펙트 등)나 해당 타겟객체에 대한 스케일 변화 및/또는 시점 변화 등에 따른 타겟객체 모션 추정의 정확성 저하를 최소화함과 동시에, 연속 프레임 이미지 내 타겟객체의 움직임에 대한 추정 알고리즘의 성능을 획기적으로 향상시킬 수 있다. That is, in an embodiment, the
이상, 본 발명의 실시예에 따른 연속 프레임 간의 실시간 이미지 타겟의 모션 추정 방법 및 그 시스템은, 다운 스케일링(Down scaling)된 연속 프레임 이미지들을 이용하여 이미지 타겟의 모션을 추적함으로써, 다운 스케일링된 이미지에서는 해당 이미지 내 원하는 특성이나 패턴에 대한 위치 이동에 둔감해진다는 특성과, 원하는 특성이나 패턴에 대한 존재 여부를 용이하게 검출 가능하다는 특성을 활용하여, 상기 연속 프레임 이미지 내 이미지 타겟의 움직임(즉, 영상 시프팅)에 따른 노이즈(예컨대, 모션블러, 빛번짐 및/또는 롤링셔터 이펙트 등)나 해당 이미지 타겟에 대한 스케일 변화 및/또는 시점 변화 등이 존재하더라도 이를 상쇄하며 해당 이미지 타겟을 정확하고 용이하게 검출 및/또는 추적할 수 있는 효과가 있다. As described above, the method and system for estimating motion of a real-time image target between consecutive frames according to an embodiment of the present invention track the motion of an image target using down-scaled consecutive frame images, so that in the down-scaled image, The movement of the image target in the continuous frame image (i.e., the image target) by utilizing the characteristic of being insensitive to the positional movement of the desired characteristic or pattern in the image and the characteristic of being able to easily detect the presence or absence of the desired characteristic or pattern Even if noise (e.g., motion blur, light blur, and/or rolling shutter effect, etc.) due to shifting) or scale change and/or viewpoint change for the image target exist, they are offset and the image target can be accurately and easily captured. There is an effect that can be detected and/or tracked.
또한, 본 발명의 실시예에 따른 연속 프레임 간의 실시간 이미지 타겟의 모션 추정 방법 및 그 시스템은, 상기 다운 스케일링된 연속 프레임 이미지들을 기초로 해당 연속 프레임 이미지들 간의 호모그래피(Homography)를 상정하여 해당 이미지 타겟의 모션을 추정함으로써, 호모그래피 연산에 필요한 데이터 처리량을 감소시켜 연산 속도 및/또는 효율성을 제고시키는 등 상기 이미지 타겟의 움직임에 대한 추정 알고리즘의 성능을 향상시킬 수 있는 효과가 있다. In addition, a method and system for estimating motion of a real-time image target between consecutive frames according to an embodiment of the present invention assumes homography between corresponding consecutive frame images based on the down-scaled consecutive frame images, By estimating the motion of the target, it is possible to improve the performance of the estimation algorithm for the motion of the image target, such as reducing the amount of data processing required for the homography operation, thereby improving operation speed and/or efficiency.
또한, 본 발명의 실시예에 따른 연속 프레임 간의 실시간 이미지 타겟의 모션 추정 방법 및 그 시스템은, 상술된 바와 같은 추정 알고리즘에 기반한 다양한 객체 검출 및/또는 추적 서비스를 지원 가능함으로써, 상기 다양한 객체 검출 및/또는 추적 서비스(예컨대, 증강현실 기반 SLAM(simultaneous localization and mapping) 서비스 등)의 품질 및 효용성을 보다 증진시킬 수 있는 효과가 있다. In addition, the method and system for estimating the motion of a real-time image target between successive frames according to an embodiment of the present invention support various object detection and/or tracking services based on the estimation algorithm as described above, thereby providing the various object detection and / or tracking service (eg, augmented reality-based SLAM (simultaneous localization and mapping) service, etc.) has an effect that can further enhance the quality and utility.
한편, 이상에서 설명된 본 발명에 따른 실시예는 다양한 컴퓨터 구성요소를 통하여 실행될 수 있는 프로그램 명령어의 형태로 구현되어 컴퓨터 판독 가능한 기록 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능한 기록 매체는 프로그램 명령어, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 컴퓨터 판독 가능한 기록 매체에 기록되는 프로그램 명령어는 본 발명을 위하여 특별히 설계되고 구성된 것이거나 컴퓨터 소프트웨어 분야의 당업자에게 공지되어 사용 가능한 것일 수 있다. 컴퓨터 판독 가능한 기록 매체의 예에는, 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체, CD-ROM 및 DVD와 같은 광기록 매체, 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical medium), 및 ROM, RAM, 플래시 메모리 등과 같은, 프로그램 명령어를 저장하고 실행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령어의 예에는, 컴파일러에 의하여 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용하여 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드도 포함된다. 하드웨어 장치는 본 발명에 따른 처리를 수행하기 위하여 하나 이상의 소프트웨어 모듈로 변경될 수 있으며, 그 역도 마찬가지이다.On the other hand, the embodiments according to the present invention described above may be implemented in the form of program instructions that can be executed through various computer components and recorded on a computer-readable recording medium. The computer readable recording medium may include program instructions, data files, data structures, etc. alone or in combination. Program instructions recorded on the computer-readable recording medium may be specially designed and configured for the present invention, or may be known and usable to those skilled in the art of computer software. Examples of computer-readable recording media include magnetic media such as hard disks, floppy disks and magnetic tapes, optical recording media such as CD-ROMs and DVDs, and magneto-optical media such as floptical disks. medium), and hardware devices specially configured to store and execute program instructions, such as ROM, RAM, flash memory, and the like. Examples of program instructions include high-level language codes that can be executed by a computer using an interpreter or the like as well as machine language codes generated by a compiler. A hardware device may be modified with one or more software modules to perform processing according to the present invention and vice versa.
본 발명에서 설명하는 특정 실행들은 일 실시 예들로서, 어떠한 방법으로도 본 발명의 범위를 한정하는 것은 아니다. 명세서의 간결함을 위하여, 종래 전자적인 구성들, 제어 시스템들, 소프트웨어, 상기 시스템들의 다른 기능적인 측면들의 기재는 생략될 수 있다. 또한, 도면에 도시된 구성 요소들 간의 선들의 연결 또는 연결 부재들은 기능적인 연결 및/또는 물리적 또는 회로적 연결들을 예시적으로 나타낸 것으로서, 실제 장치에서는 대체 가능하거나 추가의 다양한 기능적인 연결, 물리적인 연결, 또는 회로 연결들로서 나타내어질 수 있다. 또한, “필수적인”, “중요하게” 등과 같이 구체적인 언급이 없다면 본 발명의 적용을 위하여 반드시 필요한 구성 요소가 아닐 수 있다.Specific implementations described in the present invention are examples and do not limit the scope of the present invention in any way. For brevity of the specification, description of conventional electronic components, control systems, software, and other functional aspects of the systems may be omitted. In addition, the connection of lines or connecting members between the components shown in the drawings are examples of functional connections and / or physical or circuit connections, which can be replaced in actual devices or additional various functional connections, physical connection, or circuit connections. In addition, if there is no specific reference such as “essential” or “important”, it may not be a component necessarily required for the application of the present invention.
또한 설명한 본 발명의 상세한 설명에서는 본 발명의 바람직한 실시 예를 참조하여 설명하였지만, 해당 기술 분야의 숙련된 당업자 또는 해당 기술분야에 통상의 지식을 갖는 자라면 후술할 특허청구범위에 기재된 본 발명의 사상 및 기술 영역으로부터 벗어나지 않는 범위 내에서 본 발명을 다양하게 수정 및 변경시킬 수 있음을 이해할 수 있을 것이다. 따라서, 본 발명의 기술적 범위는 명세서의 상세한 설명에 기재된 내용으로 한정되는 것이 아니라 특허청구범위에 의해 정하여져야만 할 것이다.In addition, the detailed description of the present invention described has been described with reference to preferred embodiments of the present invention, but those skilled in the art or those having ordinary knowledge in the art will find the spirit of the present invention described in the claims to be described later. And it will be understood that the present invention can be variously modified and changed without departing from the technical scope. Therefore, the technical scope of the present invention is not limited to the contents described in the detailed description of the specification, but should be defined by the claims.
Claims (10)
제1 프레임 이미지 내 타겟객체를 검출하는 단계;
상기 제1 프레임 이미지를 다운 스케일링(Down scaling)하여 제1 프레임 다운 이미지를 생성하는 단계;
상기 생성된 제1 프레임 다운 이미지 내에서 상기 타겟객체에 대한 복수의 트래킹 포인트(tracking point)를 설정하는 단계;
상기 제1 프레임 이미지에 연속된 소정의 시간 이후의 제2 프레임 이미지를 획득하는 단계;
상기 획득된 제2 프레임 이미지를 다운 스케일링하여 제2 프레임 다운 이미지를 생성하는 단계; 및
상기 설정된 복수의 트래킹 포인트를 기초로 상기 제2 프레임 다운 이미지에서 상기 타겟객체를 트래킹하는 단계를 포함하는
연속 프레임 간의 실시간 이미지 타겟의 모션 추정 방법. A method in which a motion estimation application executed by at least one processor of a terminal estimates motion of a real-time image target between successive frames, the method comprising:
detecting a target object in a first frame image;
Generating a first frame-down image by down-scaling the first frame image;
setting a plurality of tracking points for the target object in the generated first frame-down image;
obtaining a second frame image after a predetermined time consecutive to the first frame image;
generating a second frame-down image by down-scaling the acquired second frame image; and
Tracking the target object in the second frame-down image based on the set plurality of tracking points
A method for estimating the motion of a real-time image target between successive frames.
상기 설정된 복수의 트래킹 포인트를 기초로 상기 제2 프레임 다운 이미지에서 상기 타겟객체를 트래킹하는 단계는,
상기 설정된 복수의 트래킹 포인트를 기초로 트래킹 포인트 세트를 생성하는 단계와,
상기 트래킹 포인트 세트 중에서 상기 제2 프레임 다운 이미지와의 매칭 스코어(Matching score)가 가장 높은 포인트 그룹을 트래킹 포인트 메인 그룹으로 결정하는 단계; 및
상기 결정된 트래킹 포인트 메인 그룹에 기초하여 상기 제1 프레임 이미지 및 상기 제2 프레임 이미지를 포함하는 연속 프레임 이미지 내 상기 타겟객체를 트래킹하는 단계를 포함하는
연속 프레임 간의 실시간 이미지 타겟의 모션 추정 방법. According to claim 1,
Tracking the target object in the second frame-down image based on the set plurality of tracking points,
generating a tracking point set based on the set plurality of tracking points;
determining a point group having the highest matching score with the second frame-down image among the tracking point set as a tracking point main group; and
Tracking the target object in consecutive frame images including the first frame image and the second frame image based on the determined tracking point main group
A method for estimating the motion of a real-time image target between successive frames.
상기 복수의 트래킹 포인트를 설정하는 단계는,
상기 제1 프레임 다운 이미지 내 상기 타겟객체의 에지(edges)를 검출하는 단계와,
상기 검출된 에지 상에 위치한 포인트에서 상기 복수의 트래킹 포인트를 설정하는 단계를 포함하는
연속 프레임 간의 실시간 이미지 타겟의 모션 추정 방법.According to claim 2,
The step of setting the plurality of tracking points,
Detecting edges of the target object in the first frame-down image;
Setting the plurality of tracking points at points located on the detected edge.
A method for estimating the motion of a real-time image target between successive frames.
상기 에지 상에 복수의 트래킹 포인트를 설정하는 단계는,
상기 검출된 에지 내 기 설정된 위치를 기준으로 기 설정된 간격을 따라서 상기 복수의 트래킹 포인트를 설정하는 단계를 포함하는
연속 프레임 간의 실시간 이미지 타겟의 모션 추정 방법.According to claim 3,
The step of setting a plurality of tracking points on the edge,
Setting the plurality of tracking points along a preset interval based on a preset position within the detected edge
A method for estimating the motion of a real-time image target between successive frames.
상기 설정된 복수의 트래킹 포인트를 기초로 트래킹 포인트 세트를 생성하는 단계는,
기 설정된 트랜스레이션 파라미터(Translation parameters)를 기초로 상기 복수의 트래킹 포인트를 포함하는 트래킹 포인트 그룹을 변환하는 단계와,
상기 변환을 통하여 상기 기 설정된 트랜스레이션 파라미터 각각에 대응되는 트래킹 변환 포인트 그룹을 생성하는 단계와,
상기 생성된 적어도 하나의 트래킹 변환 포인트 그룹 및 상기 트래킹 포인트 그룹을 포함하는 트래킹 포인트 세트를 생성하는 단계를 더 포함하는
연속 프레임 간의 실시간 이미지 타겟의 모션 추정 방법.According to claim 2,
Generating a tracking point set based on the set plurality of tracking points,
converting a tracking point group including the plurality of tracking points based on preset translation parameters;
generating a tracking conversion point group corresponding to each of the preset translation parameters through the conversion;
Further comprising generating a tracking point set including the generated at least one tracking conversion point group and the tracking point group
A method for estimating the motion of a real-time image target between successive frames.
상기 트래킹 포인트 메인 그룹은,
상기 트래킹 포인트 세트 내 복수의 포인트 그룹 중에서 상기 제2 프레임 다운 이미지와의 매칭 스코어가 가장 높은 포인트 그룹인
연속 프레임 간의 실시간 이미지 타겟의 모션 추정 방법.According to claim 5,
The tracking point main group,
A point group having the highest matching score with the second frame-down image among a plurality of point groups in the tracking point set
A method for estimating the motion of a real-time image target between successive frames.
상기 매칭 스코어는,
상기 트래킹 포인트 세트 내 일 포인트 그룹과 상기 제2 프레임 다운 이미지 내 에지(edges)인 타겟 에지 간의 매칭률을 나타내는 파라미터 값인
연속 프레임 간의 실시간 이미지 타겟의 모션 추정 방법.According to claim 6,
The matching score is
A parameter value representing a matching rate between one point group in the tracking point set and a target edge, which is an edge in the second frame down image
A method for estimating the motion of a real-time image target between successive frames.
상기 트래킹 포인트 메인 그룹으로 결정하는 단계는,
상기 제2 프레임 다운 이미지 내 타겟 에지를 검출하는 단계와,
상기 검출된 타겟 에지를 포함하는 타겟 에지영역 상에 상기 트래킹 포인트 세트 내 복수의 포인트 그룹 각각을 투영(projection)하는 단계와,
상기 투영된 각각의 포인트 그룹이 포함하는 복수의 포인트 중에서 상기 타겟 에지 상에 위치하는 매칭 포인트를 검출하는 단계와,
상기 검출된 매칭 포인트를 기초로 상기 각각의 포인트 그룹에 대한 상기 매칭 스코어를 산출하는 단계를 포함하는
연속 프레임 간의 실시간 이미지 타겟의 모션 추정 방법.According to claim 7,
The step of determining the tracking point as the main group,
detecting a target edge in the second frame down image;
Projecting each of a plurality of point groups in the tracking point set onto a target edge region including the detected target edge;
detecting a matching point located on the target edge among a plurality of points included in each of the projected point groups;
Calculating the matching score for each point group based on the detected matching points.
A method for estimating the motion of a real-time image target between successive frames.
상기 트래킹 포인트 메인 그룹으로 결정하는 단계는,
상기 각각의 포인트 그룹에 대하여 산출된 복수의 매칭 스코어 중에서 가장 높은 매칭 스코어를 가지는 포인트 그룹을 상기 트래킹 포인트 메인 그룹으로 결정하는 단계를 더 포함하는
연속 프레임 간의 실시간 이미지 타겟의 모션 추정 방법.According to claim 8,
The step of determining the tracking point as the main group,
Further comprising determining a point group having the highest matching score among a plurality of matching scores calculated for each point group as the tracking point main group.
A method for estimating the motion of a real-time image target between successive frames.
상기 연속 프레임 이미지 내 상기 타겟객체를 트래킹하는 단계는,
상기 트래킹 포인트 메인 그룹에 대응되는 트랜스레이션 파라미터를 기초로 상기 연속 프레임 이미지에 대한 덴스 이미지 얼라인먼트(Dense image alignment) 연산을 수행하는 단계와,
상기 수행된 연산을 기초로 상기 연속 프레임 이미지에 대한 호모그래피(homography)를 추정하는 단계와,
상기 추정된 호모그래피에 기초하여 상기 타겟객체를 트래킹하는 단계를 포함하는
연속 프레임 간의 실시간 이미지 타겟의 모션 추정 방법.According to claim 2,
The step of tracking the target object in the continuous frame image,
performing a dense image alignment operation on the continuous frame image based on a translation parameter corresponding to the tracking point main group;
estimating homography of the continuous frame image based on the performed operation;
Tracking the target object based on the estimated homography
A method for estimating the motion of a real-time image target between successive frames.
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US17/992,902 US20230162376A1 (en) | 2021-11-23 | 2022-11-22 | Method and system for estimating motion of real-time image target between successive frames |
EP22208906.2A EP4184437A1 (en) | 2021-11-23 | 2022-11-22 | Method and system for estimating motion of real-time image target between successive frames |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR20210162198 | 2021-11-23 | ||
KR1020210162198 | 2021-11-23 |
Publications (1)
Publication Number | Publication Date |
---|---|
KR20230076048A true KR20230076048A (en) | 2023-05-31 |
Family
ID=86543519
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020210189152A KR20230076048A (en) | 2021-11-23 | 2021-12-28 | Method and system for motion estimation of real-time image target between successive frames |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR20230076048A (en) |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101890612B1 (en) | 2016-12-28 | 2018-08-23 | (주)에이다스원 | Method and apparatus for detecting object using adaptive roi and classifier |
-
2021
- 2021-12-28 KR KR1020210189152A patent/KR20230076048A/en unknown
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101890612B1 (en) | 2016-12-28 | 2018-08-23 | (주)에이다스원 | Method and apparatus for detecting object using adaptive roi and classifier |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20180225877A1 (en) | Mobile augmented reality system | |
US9674507B2 (en) | Monocular visual SLAM with general and panorama camera movements | |
KR102462799B1 (en) | Method and apparatus for estimating pose | |
US9576183B2 (en) | Fast initialization for monocular visual SLAM | |
US10733798B2 (en) | In situ creation of planar natural feature targets | |
US20190147606A1 (en) | Apparatus and method of five dimensional (5d) video stabilization with camera and gyroscope fusion | |
KR102572986B1 (en) | Object Tracking Based on Custom Initialization Points | |
CN113587928B (en) | Navigation method, navigation device, electronic equipment, storage medium and computer program product | |
EP4268200A1 (en) | Image data annotation system | |
US20190096073A1 (en) | Histogram and entropy-based texture detection | |
An et al. | Image-based positioning system using LED Beacon based on IoT central management | |
KR20230076048A (en) | Method and system for motion estimation of real-time image target between successive frames | |
CN111665470A (en) | Positioning method and device and robot | |
US11770551B2 (en) | Object pose estimation and tracking using machine learning | |
EP4184437A1 (en) | Method and system for estimating motion of real-time image target between successive frames | |
US11688094B1 (en) | Method and system for map target tracking | |
EP4184446A1 (en) | Method and system for improving target detection performance through dynamic learning | |
US20240203069A1 (en) | Method and system for tracking object for augmented reality | |
KR20230076044A (en) | Method and system for improving target detection performance through dynamic learning | |
KR102433894B1 (en) | Method and system for creating and storing map targets | |
CN110660134B (en) | Three-dimensional map construction method, three-dimensional map construction device and terminal equipment | |
KR20240095672A (en) | Method and system for providing augmented reality object tracking service based on deep learning | |
KR20240095671A (en) | Method and system for augmented-reality object tracking | |
KR20240030613A (en) | Method and system for card recognition based on deep learning | |
KR20240095674A (en) | Method and system for tracking object for augmented reality |