KR102501811B1 - 이미지상에 그래픽 객체를 표시하기 위한 방법, 디바이스 및 비일시성의 컴퓨터 판독 가능한 기록 매체 - Google Patents
이미지상에 그래픽 객체를 표시하기 위한 방법, 디바이스 및 비일시성의 컴퓨터 판독 가능한 기록 매체 Download PDFInfo
- Publication number
- KR102501811B1 KR102501811B1 KR1020200138416A KR20200138416A KR102501811B1 KR 102501811 B1 KR102501811 B1 KR 102501811B1 KR 1020200138416 A KR1020200138416 A KR 1020200138416A KR 20200138416 A KR20200138416 A KR 20200138416A KR 102501811 B1 KR102501811 B1 KR 102501811B1
- Authority
- KR
- South Korea
- Prior art keywords
- image
- graphic object
- feature points
- present
- conversion model
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims abstract description 28
- 238000006243 chemical reaction Methods 0.000 claims abstract description 74
- 238000009795 derivation Methods 0.000 claims description 34
- 230000009466 transformation Effects 0.000 claims description 30
- 238000013528 artificial neural network Methods 0.000 claims description 18
- 230000008859 change Effects 0.000 claims description 5
- 238000004590 computer program Methods 0.000 claims description 2
- 230000036544 posture Effects 0.000 description 56
- 238000004891 communication Methods 0.000 description 30
- 230000006870 function Effects 0.000 description 20
- 210000001503 joint Anatomy 0.000 description 15
- 230000008569 process Effects 0.000 description 9
- 238000010586 diagram Methods 0.000 description 8
- PXFBZOLANLWPMH-UHFFFAOYSA-N 16-Epiaffinine Natural products C1C(C2=CC=CC=C2N2)=C2C(=O)CC2C(=CC)CN(C)C1C2CO PXFBZOLANLWPMH-UHFFFAOYSA-N 0.000 description 4
- 239000011159 matrix material Substances 0.000 description 4
- 238000005516 engineering process Methods 0.000 description 3
- 238000013527 convolutional neural network Methods 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 1
- 210000000746 body region Anatomy 0.000 description 1
- 238000012937 correction Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 239000000284 extract Substances 0.000 description 1
- 238000012886 linear function Methods 0.000 description 1
- 230000007774 longterm Effects 0.000 description 1
- 239000000203 mixture Substances 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 229920001690 polydopamine Polymers 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 238000013138 pruning Methods 0.000 description 1
- 238000013139 quantization Methods 0.000 description 1
- 230000000306 recurrent effect Effects 0.000 description 1
- 210000000323 shoulder joint Anatomy 0.000 description 1
- 239000004984 smart glass Substances 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T11/00—2D [Two Dimensional] image generation
- G06T11/60—Editing figures and text; Combining figures or text
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/10—Segmentation; Edge detection
- G06T7/11—Region-based segmentation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/10—Segmentation; Edge detection
- G06T7/149—Segmentation; Edge detection involving deformable models, e.g. active contour models
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/70—Determining position or orientation of objects or cameras
- G06T7/73—Determining position or orientation of objects or cameras using feature-based methods
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/70—Determining position or orientation of objects or cameras
- G06T7/73—Determining position or orientation of objects or cameras using feature-based methods
- G06T7/75—Determining position or orientation of objects or cameras using feature-based methods involving models
-
- 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/20084—Artificial neural networks [ANN]
-
- 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/20092—Interactive image processing based on input by user
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/30—Subject of image; Context of image processing
- G06T2207/30196—Human being; Person
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/30—Subject of image; Context of image processing
- G06T2207/30221—Sports video; Sports image
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Software Systems (AREA)
- Processing Or Creating Images (AREA)
Abstract
본 발명의 일 태양에 따르면, 이미지상에 그래픽 객체를 표시하기 위한 방법으로서, 사용자에 의하여 사람의 자세에 관한 제1 이미지상에 입력되는 제1 그래픽 객체에 대하여 상기 제1 그래픽 객체를 정의하는 상기 제1 그래픽 객체의 속성 정보를 획득하는 단계, 상기 제1 이미지 및 사람의 자세에 관한 제2 이미지에서 각각 검출되는 특징점에 기초하여, 상기 제1 그래픽 객체의 속성 정보와 상기 제1 그래픽 객체에 대응하여 상기 제2 이미지상에 표시될 제2 그래픽 객체의 속성 정보 사이의 변환 관계를 정의하는 변환 모델을 도출하는 단계, 및 상기 변환 모델에 기초하여, 상기 제2 그래픽 객체가 상기 제2 이미지상에서 상기 제1 이미지상의 상기 제1 그래픽 객체의 위치와 대응되는 위치에 표시되도록 하는 단계를 포함하는 방법이 제공된다.
Description
본 발명은 이미지상에 그래픽 객체를 표시하기 위한 방법, 디바이스 및 비일시성의 컴퓨터 판독 가능한 기록 매체에 관한 것이다.
어떤 운동을 배우는 데에 있어서 올바른 자세를 학습하고 훈련하는 것은 매우 중요한 일이기 때문에, 사람들은 코치와 함께 운동 자세를 교정하는 것에 많은 시간과 비용을 들이고 있다. 이러한 교정 과정에서 보다 효율적인 교육을 하기 위하여 코치는 학습자의 자세에 관한 이미지 및 그 이미지와 비교할 수 있는 사람의 자세에 관한 다른 이미지(예를 들면, 위의 학습자의 자세와 대응되는 자세를 취하고 있는 프로 선수의 이미지)를 위의 학습자에게 보여주면서 두 자세를 비교하여 설명하는 경우가 많다.
이에 관한 종래 기술의 일례로서, 위와 같이 두 자세를 비교하여 설명하는 데에 도움이 될 수 있도록, 코치가 사람의 자세에 관한 이미지상의 특정 위치에 선, 도형 등의 그래픽 객체를 그릴 수 있게 지원하는 기술이 소개된 바 있다. 하지만, 위와 같은 종래 기술을 비롯하여 지금까지 소개된 기술에 의하면, 학습자의 자세에 관한 이미지상의 특정 위치에 선, 도형 등의 그래픽 객체를 그린 다음에, 사람의 자세에 관한 다른 이미지상의 위의 특정 위치와 대응되는 위치에 위의 그래픽 객체와 대응되는 그래픽 객체를 다시 그려야 하는 불편함이 있는 문제가 있었다.
본 발명은 전술한 종래 기술의 문제점을 모두 해결하는 것을 그 목적으로 한다.
또한, 본 발명은, 사용자에 의하여 사람의 자세에 관한 제1 이미지상에 입력되는 제1 그래픽 객체에 대하여 위의 제1 그래픽 객체를 정의하는 위의 제1 그래픽 객체의 속성 정보를 획득하고, 위의 제1 이미지 및 사람의 자세에 관한 제2 이미지에서 각각 검출되는 특징점에 기초하여, 위의 제1 그래픽 객체의 속성 정보와 위의 제1 그래픽 객체에 대응하여 위의 제2 이미지상에 표시될 제2 그래픽 객체의 속성 정보 사이의 변환 관계를 정의하는 변환 모델을 도출하고, 위의 변환 모델에 기초하여, 위의 제2 그래픽 객체가 위의 제2 이미지상에서 위의 제1 이미지상의 위의 제1 그래픽 객체의 위치와 대응되는 위치에 표시되도록 하는 것을 다른 목적으로 한다.
또한, 본 발명은, 위와 같이 사용자가 사람의 자세에 관한 제1 이미지상에 제1 그래픽 객체를 입력하면, 제2 그래픽 객체가 제2 이미지상에서 위의 제1 이미지상의 위의 제1 그래픽 객체의 위치와 대응되는 위치에 자동적으로 표시되도록 함으로써, 사용자가 보다 편리하게 두 자세를 비교하여 설명할 수 있게 지원하는 것을 또 다른 목적으로 한다.
상기 목적을 달성하기 위한 본 발명의 대표적인 구성은 다음과 같다.
본 발명의 일 태양에 따르면, 사용자에 의하여 사람의 자세에 관한 제1 이미지상에 입력되는 제1 그래픽 객체에 대하여 상기 제1 그래픽 객체를 정의하는 상기 제1 그래픽 객체의 속성 정보를 획득하는 단계, 상기 제1 이미지 및 사람의 자세에 관한 제2 이미지에서 각각 검출되는 특징점에 기초하여, 상기 제1 그래픽 객체의 속성 정보와 상기 제1 그래픽 객체에 대응하여 상기 제2 이미지상에 표시될 제2 그래픽 객체의 속성 정보 사이의 변환 관계를 정의하는 변환 모델을 도출하는 단계, 및 상기 변환 모델에 기초하여, 상기 제2 그래픽 객체가 상기 제2 이미지상에서 상기 제1 이미지상의 상기 제1 그래픽 객체의 위치와 대응되는 위치에 표시되도록 하는 단계를 포함하는 방법이 제공된다.
본 발명의 다른 태양에 따르면, 사용자에 의하여 사람의 자세에 관한 제1 이미지상에 입력되는 제1 그래픽 객체에 대하여 상기 제1 그래픽 객체를 정의하는 상기 제1 그래픽 객체의 속성 정보를 획득하는 이미지 관리부, 상기 제1 이미지 및 사람의 자세에 관한 제2 이미지에서 각각 검출되는 특징점에 기초하여, 상기 제1 그래픽 객체의 속성 정보와 상기 제1 그래픽 객체에 대응하여 상기 제2 이미지상에 표시될 제2 그래픽 객체의 속성 정보 사이의 변환 관계를 정의하는 변환 모델을 도출하는 변환 모델 도출부, 및 상기 변환 모델에 기초하여, 상기 제2 그래픽 객체가 상기 제2 이미지상에서 상기 제1 이미지상의 상기 제1 그래픽 객체의 위치와 대응되는 위치에 표시되도록 하는 그래픽 객체 관리부를 포함하는 시스템이 제공된다.
이 외에도, 본 발명을 구현하기 위한 다른 방법, 다른 시스템 및 상기 방법을 실행하기 위한 컴퓨터 프로그램을 기록하는 비일시성의 컴퓨터 판독 가능한 기록 매체가 더 제공된다.
본 발명에 의하면, 사용자에 의하여 사람의 자세에 관한 제1 이미지상에 입력되는 제1 그래픽 객체에 대하여 위의 제1 그래픽 객체를 정의하는 위의 제1 그래픽 객체의 속성 정보를 획득하고, 위의 제1 이미지 및 사람의 자세에 관한 제2 이미지에서 각각 검출되는 특징점에 기초하여, 위의 제1 그래픽 객체의 속성 정보와 위의 제1 그래픽 객체에 대응하여 위의 제2 이미지상에 표시될 제2 그래픽 객체의 속성 정보 사이의 변환 관계를 정의하는 변환 모델을 도출하고, 위의 변환 모델에 기초하여, 위의 제2 그래픽 객체가 위의 제2 이미지상에서 위의 제1 이미지상의 위의 제1 그래픽 객체의 위치와 대응되는 위치에 표시되도록 할 수 있게 된다.
또한, 본 발명에 의하면, 위와 같이 사용자가 사람의 자세에 관한 제1 이미지상에 제1 그래픽 객체를 입력하면, 제2 그래픽 객체가 제2 이미지상에서 위의 제1 이미지상의 위의 제1 그래픽 객체의 위치와 대응되는 위치에 자동적으로 표시되도록 함으로써, 사용자가 보다 편리하게 두 자세를 비교하여 설명할 수 있게 지원할 수 있게 된다.
도 1은 본 발명의 일 실시예에 따라 이미지상에 그래픽 객체를 표시하기 위한 전체 시스템의 개략적인 구성을 나타내는 도면이다.
도 2는 본 발명의 일 실시예에 따른 그래픽 객체 표시 시스템의 내부 구성을 상세하게 도시하는 도면이다.
도 3 및 도 4는 본 발명의 일 실시예에 따라 이미지상에 그래픽 객체를 표시하는 과정을 예시적으로 나타내는 도면이다.
도 5의 (a)는 본 발명의 일 실시예에 따라 일반적인 컨볼루션(Convolution)이 수행되는 과정을 예시적으로 나타내는 도면이다.
도 5의 (b)는 본 발명의 일 실시예에 따라 깊이별 컨볼루션(Depthwise Convolution) 및 지점별 컨볼루션(Pointwise Convolution)이 수행되는 과정을 예시적으로 나타내는 도면이다.
도 2는 본 발명의 일 실시예에 따른 그래픽 객체 표시 시스템의 내부 구성을 상세하게 도시하는 도면이다.
도 3 및 도 4는 본 발명의 일 실시예에 따라 이미지상에 그래픽 객체를 표시하는 과정을 예시적으로 나타내는 도면이다.
도 5의 (a)는 본 발명의 일 실시예에 따라 일반적인 컨볼루션(Convolution)이 수행되는 과정을 예시적으로 나타내는 도면이다.
도 5의 (b)는 본 발명의 일 실시예에 따라 깊이별 컨볼루션(Depthwise Convolution) 및 지점별 컨볼루션(Pointwise Convolution)이 수행되는 과정을 예시적으로 나타내는 도면이다.
후술하는 본 발명에 대한 상세한 설명은, 본 발명이 실시될 수 있는 특정 실시예를 예시로서 도시하는 첨부 도면을 참조한다. 이러한 실시예는 당업자가 본 발명을 실시할 수 있기에 충분하도록 상세히 설명된다. 본 발명의 다양한 실시예는 서로 다르지만 상호 배타적일 필요는 없음이 이해되어야 한다. 예를 들어, 본 명세서에 기재되어 있는 특정 형상, 구조 및 특성은 본 발명의 정신과 범위를 벗어나지 않으면서 일 실시예로부터 다른 실시예로 변경되어 구현될 수 있다. 또한, 각각의 실시예 내의 개별 구성요소의 위치 또는 배치도 본 발명의 정신과 범위를 벗어나지 않으면서 변경될 수 있음이 이해되어야 한다. 따라서, 후술하는 상세한 설명은 한정적인 의미로서 행하여지는 것이 아니며, 본 발명의 범위는 특허청구범위의 청구항들이 청구하는 범위 및 그와 균등한 모든 범위를 포괄하는 것으로 받아들여져야 한다. 도면에서 유사한 참조부호는 여러 측면에 걸쳐서 동일하거나 유사한 구성요소를 나타낸다.
이하에서는, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자가 본 발명을 용이하게 실시할 수 있도록 하기 위하여, 본 발명의 여러 바람직한 실시예에 관하여 첨부된 도면을 참조하여 상세히 설명하기로 한다.
본 명세서에서, 골프에 관하여 초점을 맞추어 설명되기는 하지만, 골프 외의 다른 운동 종목에서 행하는 자세에 관한 이미지상에 그래픽 객체가 표시되도록 하는 경우에도 본 발명이 활용될 수 있음은 당업자에게 자명하다. 예를 들면, 야구 스윙에 관한 정보, 헬스 또는 요가 자세에 관한 이미지상에 그래픽 객체가 표시되도록 하는 경우에 활용될 수 있을 것이다.
또한, 본 명세서에서는, 이해를 돕기 위하여 사람의 자세에 관한 이미지에서 관절을 검출하는 것에 관하여 초점을 맞추어 설명되기는 하지만, 관절에 제한되는 것은 아니며, 관절 외의 다른 신체 부위를 검출하는 경우에도 본 발명이 활용될 수 있는 것으로 이해되어야 할 것이다.
전체 시스템의 구성
도 1은 본 발명의 일 실시예에 따라 이미지상에 그래픽 객체를 표시하기 위한 전체 시스템의 개략적인 구성을 나타내는 도면이다.
도 1에 도시된 바와 같이, 본 발명의 일 실시예에 따른 전체 시스템은 통신망(100), 그래픽 객체 표시 시스템(200) 및 디바이스(300)를 포함할 수 있다.
먼저, 본 발명의 일 실시예에 따른 통신망(100)은 유선 통신이나 무선 통신과 같은 통신 양태를 가리지 않고 구성될 수 있으며, 근거리 통신망(LAN; Local Area Network), 도시권 통신망(MAN; Metropolitan Area Network), 광역 통신망(WAN; Wide Area Network) 등 다양한 통신망으로 구성될 수 있다. 바람직하게는, 본 명세서에서 말하는 통신망(100)은 공지의 인터넷 또는 월드 와이드 웹(WWW; World Wide Web)일 수 있다. 그러나, 통신망(100)은, 굳이 이에 국한될 필요 없이, 공지의 유무선 데이터 통신망, 공지의 전화망 또는 공지의 유무선 텔레비전 통신망을 그 적어도 일부에 있어서 포함할 수도 있다.
예를 들면, 통신망(100)은 무선 데이터 통신망으로서, 와이파이(WiFi) 통신, 와이파이 다이렉트(WiFi-Direct) 통신, 롱텀 에볼루션(LTE, Long Term Evolution) 통신, 5G 통신, 블루투스 통신(저전력 블루투스(BLE; Bluetooth Low Energy) 통신 포함), 적외선 통신, 초음파 통신 등과 같은 종래의 통신 방법을 적어도 그 일부분에 있어서 구현하는 것일 수 있다. 다른 예를 들면, 통신망(100)은 광 통신망으로서, 라이파이(LiFi, Light Fidelity) 등과 같은 종래의 통신 방법을 적어도 그 일부분에 있어서 구현하는 것일 수 있다.
다음으로, 본 발명의 일 실시예에 따른 그래픽 객체 표시 시스템(200)은 사용자에 의하여 사람의 자세에 관한 제1 이미지상에 입력되는 제1 그래픽 객체에 대하여 위의 제1 그래픽 객체를 정의하는 위의 제1 그래픽 객체의 속성 정보를 획득하고, 위의 제1 이미지 및 사람의 자세에 관한 제2 이미지에서 각각 검출되는 특징점에 기초하여, 위의 제1 그래픽 객체의 속성 정보와 위의 제1 그래픽 객체에 대응하여 위의 제2 이미지상에 표시될 제2 그래픽 객체의 속성 정보 사이의 변환 관계를 정의하는 변환 모델을 도출하고, 위의 변환 모델에 기초하여, 위의 제2 그래픽 객체가 위의 제2 이미지상에서 위의 제1 이미지상의 위의 제1 그래픽 객체의 위치와 대응되는 위치에 표시되도록 하는 기능을 수행할 수 있다.
본 발명에 따른 그래픽 객체 표시 시스템(200)의 구성과 기능에 관하여는 이하의 상세한 설명을 통하여 자세하게 알아보기로 한다.
다음으로, 본 발명의 일 실시예에 따른 디바이스(300)는 그래픽 객체 표시 시스템(200)에 접속한 후 통신할 수 있는 기능을 포함하는 디지털 기기로서, 스마트폰, 태블릿, 스마트 워치, 스마트 밴드, 스마트 글래스, 데스크탑 컴퓨터, 노트북 컴퓨터, 워크스테이션, PDA, 웹 패드, 이동 전화기 등과 같이 메모리 수단을 구비하고 마이크로 프로세서를 탑재하여 연산 능력을 갖춘 디지털 기기라면 얼마든지 본 발명에 따른 디바이스(300)로서 채택될 수 있다.
특히, 디바이스(300)는, 사용자가 그래픽 객체 표시 시스템(200)으로부터 본 발명에 따른 서비스를 제공받을 수 있도록 지원하는 애플리케이션(미도시됨)을 포함할 수 있다. 이와 같은 애플리케이션은 그래픽 객체 표시 시스템(200) 또는 외부의 애플리케이션 배포 서버(미도시됨)로부터 다운로드된 것일 수 있다. 한편, 이러한 애플리케이션의 성격은 후술할 바와 같은 그래픽 객체 표시 시스템(200)의 이미지 관리부(210), 변환 모델 도출부(220), 그래픽 객체 관리부(230), 통신부(240) 및 제어부(250)와 전반적으로 유사할 수 있다. 여기서, 애플리케이션은 그 적어도 일부가 필요에 따라 그것과 실질적으로 동일하거나 균등한 기능을 수행할 수 있는 하드웨어 장치나 펌웨어 장치로 치환될 수도 있다.
그래픽 객체 표시 시스템의 구성
이하에서는, 본 발명의 구현을 위하여 중요한 기능을 수행하는 그래픽 객체 표시 시스템(200)의 내부 구성과 각 구성요소의 기능에 대하여 살펴보기로 한다.
도 2는 본 발명의 일 실시예에 따른 그래픽 객체 표시 시스템(200)의 내부 구성을 상세하게 도시하는 도면이다.
도 2에 도시된 바와 같이, 본 발명의 일 실시예에 따른 그래픽 객체 표시 시스템(200)은, 이미지 관리부(210), 변환 모델 도출부(220), 그래픽 객체 관리부(230), 통신부(240) 및 제어부(250)를 포함하여 구성될 수 있다. 본 발명의 일 실시예에 따르면, 이미지 관리부(210), 변환 모델 도출부(220), 그래픽 객체 관리부(230), 통신부(240) 및 제어부(250)는 그 중 적어도 일부가 외부의 시스템(미도시됨)과 통신하는 프로그램 모듈일 수 있다. 이러한 프로그램 모듈은 운영 시스템, 응용 프로그램 모듈 또는 기타 프로그램 모듈의 형태로 그래픽 객체 표시 시스템(200)에 포함될 수 있고, 물리적으로는 여러 가지 공지의 기억 장치에 저장될 수 있다. 또한, 이러한 프로그램 모듈은 그래픽 객체 표시 시스템(200)과 통신 가능한 원격 기억 장치에 저장될 수도 있다. 한편, 이러한 프로그램 모듈은 본 발명에 따라 후술할 특정 업무를 수행하거나 특정 추상 데이터 유형을 실행하는 루틴, 서브루틴, 프로그램, 오브젝트, 컴포넌트, 데이터 구조 등을 포괄하지만, 이에 제한되지는 않는다.
한편, 그래픽 객체 표시 시스템(200)에 관하여 위와 같이 설명되었으나, 이러한 설명은 예시적인 것이고, 그래픽 객체 표시 시스템(200)의 구성요소 또는 기능 중 적어도 일부가 필요에 따라 디바이스(300) 또는 서버(미도시됨) 내에서 실현되거나 외부 시스템(미도시됨) 내에 포함될 수도 있음은 당업자에게 자명하다.
먼저, 본 발명의 일 실시예에 따른 이미지 관리부(210)는, 사용자에 의하여 사람의 자세에 관한 제1 이미지상에 입력되는 제1 그래픽 객체에 대하여 위의 제1 그래픽 객체를 정의하는 위의 제1 그래픽 객체의 속성 정보를 획득하는 기능을 수행할 수 있다.
구체적으로, 본 발명의 일 실시예에 따르면, 그래픽 객체의 속성 정보는 해당 그래픽 객체를 정의할 수 있는 정보를 의미하는 것으로서, 이러한 그래픽 객체의 속성 정보에는 해당 그래픽 객체의 위치 정보 및 형상 정보가 포함될 수 있다.
보다 구체적으로, 본 발명의 일 실시예에 따르면, 그래픽 객체의 위치 정보에는 사람의 자세에 관한 이미지상에서 해당 그래픽 객체가 위치하고 있는 좌표에 관한 정보가 포함될 수 있다. 본 발명의 일 실시예에 따르면, 이러한 그래픽 객체의 좌표에 관한 정보는, 이미지상의 절대 좌표(예를 들면, 2차원 이미지에서 x 좌표 및 y 좌표의 값)를 의미할 수 있고, 이미지상의 특정 위치(예를 들면, 이미지상에서 검출되는 사람의 오른쪽 어깨 관절의 위치)로부터의 상대 좌표를 의미할 수도 있다.
계속하면, 본 발명의 일 실시예에 따르면, 그래픽 객체의 형상 정보에는 해당 그래픽 객체의 형태, 크기, 길이, 색상 등에 관한 정보가 포함될 수 있다. 본 발명의 일 실시예에 따르면, 이러한 그래픽 객체의 형태에는 점, 선, 두 개의 선으로 표현되는 각도, 사각형, 원 등이 포함될 수 있다.
예를 들어, 본 발명의 일 실시예에 따르면, 그래픽 객체가 직사각형인 경우에, 해당 그래픽 객체의 속성 정보에는, 해당 그래픽 객체의 위치 정보로서 해당 그래픽 객체의 왼쪽 상단의 점의 절대 좌표 및 오른쪽 하단의 점의 절대 좌표가 포함될 수 있고, 해당 그래픽 객체의 형상 정보로서 직사각형이 포함될 수 있다.
다른 예를 들어, 본 발명의 일 실시예에 따르면, 그래픽 객체가 원인 경우에, 해당 그래픽 객체의 속성 정보에는, 해당 그래픽 객체의 위치 정보로서 해당 그래픽 객체의 중심점의 절대 좌표 및 원 위의 한 점의 절대 좌표가 포함될 수 있고, 해당 그래픽 객체의 형상 정보로서 원 및 반지름의 길이가 포함될 수 있다. 여기서, 반지름의 길이가 해당 그래픽 객체의 형상 정보에 포함되어 있는 경우에는 원 위의 한 점의 절대 좌표가 해당 그래픽 객체의 위치 정보에 포함되지 않을 수도 있다.
한편, 본 발명의 일 실시예에 따른 그래픽 객체의 속성 정보는 위에서 설명된 것에 한정되지 않으며, 본 발명의 목적을 달성할 수 있는 범위 내에서 다양하게 변경될 수 있다.
다음으로, 본 발명의 일 실시예에 따른 변환 모델 도출부(220)는, 사람의 자세에 관한 제1 이미지 및 사람의 자세에 관한 제2 이미지 각각에서 특징점을 검출하는 기능을 수행할 수 있다.
구체적으로, 본 발명의 일 실시예에 따른 변환 모델 도출부(220)는, 인공신경망 모델을 이용하여 위의 제1 이미지 및 제2 이미지 각각에서 특징점을 검출할 수 있고, 이러한 특징점에는 사람의 적어도 하나의 관절 및 골프채 중 적어도 하나가 포함될 수 있다. 한편, 본 발명의 일 실시예에 따르면, 위의 제2 이미지에서 검출되는 특징점은, 위의 제1 이미지에서 특징점이 검출되기 전에 미리 검출되어 서버(미도시됨) 또는 별개의 데이터베이스(미도시됨)에 저장된 것일 수도 있다.
보다 구체적으로, 본 발명의 일 실시예에 따른 변환 모델 도출부(220)는, 인공신경망 모델을 이용하여 사람의 자세에 관한 이미지에서 그 사람의 적어도 하나의 관절의 위치 및 골프채의 위치 중 적어도 하나에 관한 확률 정보를 도출하고, 그 확률 정보를 참조하여 위의 이미지에서 특징점을 검출하는 기능을 수행할 수 있다.
계속하면, 본 발명의 일 실시예에 따른 변환 모델 도출부(220)는, 사람의 자세에 관한 이미지를 인공신경망 모델의 입력 데이터로 하여 확률 맵(Map; 즉, 위의 인공신경망 모델의 출력 데이터)을 생성할 수 있다.
예를 들어, 본 발명의 일 실시예에 따르면, 위의 확률 맵은 2차원 히트 맵(Heat map)을 의미할 수 있다. 그리고, 본 발명의 일 실시예에 따른 변환 모델 도출부(220)는, 인공신경망 모델을 이용하여 사람의 적어도 하나의 관절마다 그 관절에 대한 적어도 하나의 2차원 히트 맵 이미지를 생성할 수 있고, 그 생성된 적어도 하나의 히트 맵 이미지를 구성하는 픽셀 값의 크기가 클수록 위의 관절의 2차원적 위치가 해당 픽셀에 해당할 확률이 높다거나, 위의 히트 맵에서 작은 픽셀 값이 넓게 분포하면 관절의 위치가 정확히 특정될 확률이 낮고 큰 픽셀 값이 좁게 분포하면 관절의 위치가 정확히 특정될 확률이 높다는 등의 성질에 기초하여 사람의 적어도 하나의 관절의 2차원적 위치에 관한 확률 정보를 도출할 수 있다.
한편, 위에서 설명한 사람의 관절의 위치에 관한 확률 정보를 도출하는 것에 관한 내용은, 본 발명의 일 실시예에 따른 변환 모델 도출부(220)에 의하여 검출되는 특징점이 골프채인 경우에도 유사하게 적용될 수 있으므로, 자세한 설명은 생략하기로 한다.
한편, 본 발명의 일 실시예에 따른 인공신경망 모델에는 CNN(Convolutional Neural Network) 모델, RNN(Recurrent Neural Network) 모델, DBN(Deep Belief Network) 모델, 또는 위 모델들이 결합된 인공신경망 모델 등이 포함될 수 있다. 다만, 본 발명의 일 실시예에 따른 인공신경망 모델이 위의 열거된 것에 한정되는 것은 아니고, 본 발명의 목적을 달성할 수 있는 범위 내에서 다양하게 변경될 수 있다.
그리고, 본 발명의 일 실시예에 따른 인공신경망 모델은 깊이별 컨볼루션(Depthwise Convolution) 및 지점별 컨볼루션(Pointwise Convolution)을 이용하여 경량화된 모델일 수 있다.
또한, 본 발명의 일 실시예에 따른 인공신경망 모델은 가지치기(Pruning), 가중치 양자화(Quantization), 잔차 학습(Residual Learning)과 같은 경량화 알고리즘을 이용하여 경량화된 모델일 수도 있다.
구체적으로, 물체 인식 기술에서 일반적으로 사용되는 인공신경망 모델은 높은 수준의 인식 성능을 위하여 높은 수준의 컴퓨팅 자원의 소모를 필요로 하기 때문에, 모바일 디바이스와 같이 한정적인 컴퓨팅 자원만이 제공되는 환경에서는 이용하기 어려운 경우가 많다. 따라서, 본 발명의 일 실시예에 따르면, 깊이별 컨볼루션(Depthwise Convolution) 및 지점별 컨볼루션(Pointwise Convolution)을 이용하여 인공신경망 모델을 경량화하고, 그 경량화된 인공신경망 모델을 모바일 디바이스에서 이용함으로써 사람의 자세에 관한 이미지에서 그 사람의 적어도 하나의 관절을 검출할 수 있다.
여기서, 본 발명의 일 실시예에 따른 깊이별 컨볼루션(Depthwise Convolution)이란, 본 발명의 일 실시예에 따른 인공신경망 모델에서 컨볼루션(Convolution)을 수행함에 있어서, 입력되는 층(Layer)의 깊이(즉, 입력 층의 채널)별로 각각 커널(Kernel)을 적용하는 컨볼루션 과정을 의미할 수 있다. 한편, 커널을 적용하여 연산하는 방법 자체는 일반적인 컨볼루션과 동일하므로, 자세한 설명은 생략하기로 한다.
그리고, 본 발명의 일 실시예에 따른 지점별 컨볼루션(Pointwise Convolution)이란, 본 발명의 일 실시예에 따른 인공신경망 모델에서 컨볼루션을 수행함에 있어서, 입력되는 층의 지점별로 각각 1 x 1 x M 크기의 커널(즉, 너비 1, 높이 1, 깊이 M의 커널)을 적용하는 컨볼루션 과정을 의미할 수 있다.
도 5의 (a)는 본 발명의 일 실시예에 따라 일반적인 컨볼루션(Convolution)이 수행되는 과정을 예시적으로 나타내는 도면이다.
도 5의 (b)는 본 발명의 일 실시예에 따라 깊이별 컨볼루션(Depthwise Convolution) 및 지점별 컨볼루션(Pointwise Convolution)이 수행되는 과정을 예시적으로 나타내는 도면이다.
도 5의 (a)을 참조하면, 본 발명의 일 실시예에 따르면, 입력되는 층(211)의 너비, 높이, 깊이가 각각 F, F, N이고, 각 커널(212)의 너비, 높이, 깊이가 각각 K, K, N이고, 출력되는 층(213)의 너비, 높이, 깊이가 각각 F, F, M인 경우를 가정할 수 있다. 또한, 여기에서는, 적절한 크기의 패딩(Padding)과 스트라이드(Stride)를 설정하여 입력되는 층(211)과 출력되는 층(213)의 너비, 높이의 변화가 없는 것으로 가정하였다. 이러한 경우에, 일반적인 컨볼루션 에서는, 입력되는 층(211)에 커널(212)이 적용되어 출력되는 층(213)의 하나의 깊이를 구성(즉, F x F x K x K x N번의 연산)하게 되고, M개의 커널(212)에 대하여 이러한 연산을 하게 되므로, 총 F x F x K x K x N x M번의 연산을 수행하게 된다.
도 5의 (b)를 참조하면, 본 발명의 일 실시예에 따르면, 입력되는 층(221)의 너비, 높이, 깊이가 각각 F, F, N이고, 깊이별 컨볼루션에서의 각 커널(222)의 너비, 높이, 깊이가 각각 K, K, 1이고, 지점별 컨볼루션에서의 각 커널(224)의 너비, 높이, 깊이가 각각 1, 1, N이고, 출력되는 층(225)의 너비, 높이, 깊이가 각각 F, F, M인 경우를 가정할 수 있다. 이러한 경우에, 입력되는 층(221)의 깊이별로 커널(222)이 적용되어 중간 층(223)의 각 깊이를 구성(즉, F x F x K x K x 1 x N번의 연산)하게 된다. 그 다음에, 그 중간 층(223)에 지점별로 커널(224)이 적용되어 출력되는 층(225)의 하나의 깊이를 구성(즉, F x F x 1 x 1 x N번의 연산)하게 되고, M개의 커널(224)에 대하여 이러한 연산을 하게 되므로, 지점별 컨볼루션에서는 총 F x F x 1 x 1 x N x M번의 연산을 수행하게 된다. 따라서, 본 발명의 일 실시예에 따른 깊이별 컨볼루션과 지점별 컨볼루션의 연산을 합하면 총 (F x F x K x K x 1 x N) + (F x F x 1 x 1 x N x M)번의 연산을 수행하게 되므로, 일반적인 컨볼루션보다 연산량이 줄어드는 효과가 있다.
한편, 본 발명의 일 실시예에 따른 경량화를 위한 알고리즘이 반드시 위의 알고리즘(깊이별 또는 지점별 컨볼루션)에 한정되는 것은 아니며, 위의 각 알고리즘의 적용 순서 또는 횟수 또한 다양하게 변경될 수 있다.
한편, 본 발명의 일 실시예에 따른 변환 모델 도출부(220)는, 사람의 자세에 관한 제1 이미지 및 사람의 자세에 관한 제2 이미지에서 각각 검출되는 특징점에 기초하여, 위의 제1 이미지상에 입력되는 제1 그래픽 객체의 속성 정보와 위의 제1 그래픽 객체에 대응하여 위의 제2 이미지상에 표시될 제2 그래픽 객체의 속성 정보 사이의 변환 관계를 정의하는 변환 모델을 도출하는 기능을 수행할 수 있다.
구체적으로, 본 발명의 일 실시예에 따르면, 제2 그래픽 객체는 제1 그래픽 객체에 대응되는 그래픽 객체를 의미하는 것으로서, 위의 제1 이미지 상의 특정 위치에 제1 그래픽 객체가 입력되면, 위의 특정 위치에 대응되는 제2 이미지상의 위치에 자동적으로 표시되는 그래픽 객체를 의미할 수 있다. 그리고, 사람의 자세에 관한 제2 이미지는 위의 제1 이미지에 대응되는 것으로서, 제1 이미지에 표시되는 사람의 자세와 유사한 자세를 취하고 있는 사람이 표시되는 이미지를 의미할 수 있다.
도 3 및 도 4는 본 발명의 일 실시예에 따라 이미지상에 그래픽 객체를 표시하는 과정을 예시적으로 나타내는 도면이다.
예를 들어, 도 3을 참조하면, 사용자에 의하여 제1 이미지(도 3의 (a))상의 특정 위치에 제1 그래픽 객체(310a)가 입력되는 경우를 가정할 수 있다. 이 경우, 위의 특정 위치는 제1 그래픽 객체(310a)의 속성 정보(예를 들면, 점 311a의 절대 또는 상대 좌표, 점 312a의 절대 또는 상대 좌표, 직사각형 등)에 기초하여 특정될 수 있다. 그리고, 제2 이미지(도 3의 (b))상의 위의 특정 위치에 대응되는 위치에 위의 제1 그래픽 객체(310a)에 대응되는 제2 그래픽 객체(310b)가 자동적으로 표시될 수 있다. 이러한 기능은 본 발명의 일 실시예에 따른 변환 모델에 기초하여 수행될 수 있는데, 변환 모델의 도출에 관한 자세한 내용은 후술하기로 한다.
한편, 사용자에 의하여 제1 이미지(도 3의 (a))상의 특정 위치에 입력되는 제1 그래픽 객체가 320a 또는 330a에 해당하는 경우에도 위에서 설명된 것과 유사한 방식으로 제2 이미지(도 3의 (b))상에 320b 또는 330b로서 표시될 수 있으므로, 자세한 설명은 생략하기로 한다.
다른 예를 들어, 도 4를 참조하면, 사용자에 의하여 제1 이미지(도 4의 (a))상의 특정 위치에 제1 그래픽 객체(410a)가 입력되는 경우를 가정할 수 있다. 이 경우, 위의 특정 위치는 제1 그래픽 객체(410a)의 속성 정보(예를 들면, 점 411a의 절대 또는 상대 좌표, 점 412a의 절대 또는 상대 좌표, 직선 등)에 기초하여 특정될 수 있다. 그리고, 제2 이미지(도 4의 (b))상의 위의 특정 위치에 대응되는 위치에 위의 제1 그래픽 객체(410a)에 대응되는 제2 그래픽 객체(410b)가 자동적으로 표시될 수 있다.
한편, 사용자에 의하여 제1 이미지(도 4의 (a))상의 특정 위치에 입력되는 제1 그래픽 객체가 420a 또는 430a에 해당하는 경우에도 위에서 설명된 것과 유사한 방식으로 제2 이미지(도 4의 (b))상에 420b 또는 430b로서 표시될 수 있으므로, 자세한 설명은 생략하기로 한다.
한편, 본 발명의 일 실시예에 따른 변환 모델 도출부(220)에 의하여 도출되는 변환 모델은, 제1 그래픽 객체의 속성 정보와 제2 그래픽 객체의 속성 정보 사이의 변환 관계를 정의하는데, 이러한 변환 관계는 제1 이미지 및 제2 이미지에서 각각 검출되는 특징점에 기초하여 정의될 수 있다.
구체적으로, 본 발명의 일 실시예에 따른 변환 모델 도출부(220)에 의하여 제1 이미지 및 제2 이미지에서 각각 검출되는 특징점이 사람의 적어도 하나의 관절인 경우에, 본 발명의 일 실시예에 따른 변환 모델 도출부(220)는, 제1 이미지에서 검출되는 적어도 하나의 관절과 제2 이미지에서 검출되는 적어도 하나의 관절을 서로 대응시키고(예를 들면, 제1 이미지에서 검출되는 제1 내지 제n 관절을 제2 이미지에서 검출되는 제1 내지 제n 관절과 각각 대응시킴), 그 서로 대응된 관절들의 절대 또는 상대 좌표에 관한 정보를 참조하여 그 서로 대응된 관절들 사이의 관계를 정의함으로써 변환 모델을 도출할 수 있다. 즉, 본 발명의 일 실시예에 따르면, 변환 모델이란, 제1 이미지에서 검출되는 특징점이 제2 이미지에서 검출되는 특징점 중에서 위의 제1 이미지에서 검출되는 특징점과 대응되는 특징점으로 변환되도록 하는 어떤 함수를 의미할 수 있다.
예를 들면, 본 발명의 일 실시예에 따른 변환 모델 도출부(220)는, 위와 같이 서로 대응된 관절들의 절대 또는 상대 좌표에 관한 정보를 참조하여 최소 제곱법(Least squares method) 기반의 어파인 변환 행렬(Affine transformation matrix)을 변환 모델로서 도출할 수 있다.
다만, 본 발명의 일 실시예에 따른 변환 모델 도출부(220)에 의하여 도출되는 변환 모델이 위에서 설명한 최소 제곱법 기반의 어파인 변환 행렬에 한정되는 것은 아니고, 최소 제곱법이 아닌 다른 방법을 사용하거나, 행렬이 아닌 다른 선형 또는 비선형 함수를 변환 모델로서 도출하거나, 또는 이미지 워핑(Warping) 기법에 기반하여 변환 모델을 도출하는 것도 가능하며, 본 발명의 목적을 달성할 수 있는 범위 내에서 다양하게 변경될 수 있다.
한편, 본 발명의 일 실시예에 따른 변환 모델 도출부(220)는, 특징점 중에서 위치적으로 연관되는 특징점 그룹별로 변환 모델을 도출하는 기능을 수행할 수 있다.
구체적으로, 본 발명의 일 실시예에 따른 변환 모델 도출부(220)에 의하여 검출되는 특징점은 위치적으로 인접한 특징점들끼리 그루핑(Grouping)될 수 있고, 그 그루핑된 특징점별로 변환 모델이 각각 도출될 수 있다.
예를 들면, 본 발명의 일 실시예에 따른 변환 모델 도출부(220)에 의하여 검출되는 특징점이 관절 및 골프채인 경우에, 본 발명의 일 실시예에 따른 변환 모델 도출부(220)는, 머리 부위에서 검출되는 관절, 상체(팔을 포함함) 부위에서 검출되는 관절, 하체 부위에서 검출되는 관절 및 골프채별로 특징점을 그룹핑하고, 그 그루핑된 특징점 그룹별로 변환 모델을 도출할 수 있다. 즉, 본 발명의 일 실시예에 따르면, 사람의 관절 전체에 대하여 하나의 변환 모델을 도출하는 것도 가능하지만, 사람의 머리 부위의 관절, 사람의 상체 부위의 관절, 사람의 하체 부위의 관절 및 골프채 각각에 대하여 변환 모델을 도출할 수도 있다.
한편, 본 발명의 일 실시예에 따른 이미지 관리부(210)는, 사용자에 의하여 사람의 자세에 관한 제1 이미지에서 위의 사람의 특정 자세에 관한 프레임이 선택되면, 위의 사용자에 의하여 위의 제1 이미지상에 제1 그래픽 객체가 입력되기 전에 사람의 자세에 관한 제2 이미지에 위의 특정 자세에 관한 프레임이 표시되도록 위의 제2 이미지를 변경하는 기능을 수행할 수 있다.
구체적으로, 본 발명의 일 실시예에 따르면, 사용자는 사람의 자세에 관한 제1 이미지에서 그 사람의 특정 자세에 관한 프레임을 선택할 수 있고, 본 발명의 일 실시예에 따른 이미지 관리부(210)는, 본 발명의 일 실시예에 따른 변환 모델 도출부(220)에 의하여 위의 제1 이미지에서 검출되는 특징점에 기초하여 위의 특정 자세가 어떤 자세에 해당하는 지를 식별할 수 있다. 그리고, 본 발명의 일 실시예에 따른 이미지 관리부(210)는, 본 발명의 일 실시예에 따른 변환 모델 도출부(220)에 의하여 사람의 자세에 관한 제2 이미지에서 검출되는 특징점에 기초하여 위의 제2 이미지 중에서 위의 식별된 자세에 해당하는 프레임을 추출하고, 해당 프레임이 위의 제2 이미지에 표시되도록 위의 제2 이미지를 변경할 수 있다.
예를 들어, 본 발명의 일 실시예에 따르면, 제1 이미지 및 제2 이미지가 사람의 골프 스윙 자세에 관한 동영상인 경우를 가정할 수 있다. 그리고, 골프 스윙은 일반적으로 어드레스(address), 테이크 어웨이(take away), 백 스윙(back swing), 탑 오브 스윙(top of swing), 다운 스윙(down swing), 임팩트(impact), 팔로 스루(follow through) 및 피니쉬(finish)와 같은 8단계의 부분 동작으로 구성될 수 있다.
계속하여 예를 들면, 도 4를 참조하면, 사용자가 제1 이미지 중에서 사람의 어드레스 자세에 관한 프레임(도 4의 (a))을 선택했다면, 본 발명의 일 실시예에 따른 이미지 관리부(210)는, 제2 이미지 중에서 사람의 어드레스 자세에 관한 프레임(도 4의 (b))을 추출하여 그 추출된 어드레스 자세에 관한 프레임이 위의 제2 이미지에 자동적으로 표시되도록 위의 제2 이미지를 변경할 수 있다.
한편, 본 발명의 일 실시예에 따른 골프 스윙이 반드시 위와 같은 8단계로 구분되는 것은 아니다. 즉, 위의 8단계 각각을 구성하는 세부적인 단계를 더 포함하여 구분될 수도 있고, 위의 8단계의 적어도 일부가 하나의 단계를 구성하는 것으로 구분될 수도 있다.
다음으로, 본 발명의 일 실시예에 따른 그래픽 객체 관리부(230)는, 본 발명의 일 실시예에 따른 변환 모델 도출부(220)에 의하여 도출되는 변환 모델에 기초하여, 제2 그래픽 객체가 사람의 자세에 관한 제2 이미지상에서 사람의 자세에 관한 제1 이미지상의 제1 그래픽 객체의 위치와 대응되는 위치에 표시되도록 하는 기능을 수행할 수 있다.
예를 들면, 도 3을 참조하면, 제1 이미지(도 3의 (a))상에 입력된 제1 그래픽 객체(310a)의 위치 정보(점 311a의 절대 또는 상대 좌표 및 점 312a의 절대 또는 상대 좌표)에 본 발명의 일 실시예에 따른 변환 모델 도출부(220)에 의하여 도출되는 변환 모델을 적용함(예를 들면, 어파인 변환 행렬을 곱함)으로써, 제1 그래픽 객체(310a)에 대응되는 제2 그래픽 객체(310b)의 위치 정보(점 311b의 절대 또는 상대 좌표 및 점 312b의 절대 또는 상대 좌표)를 산출할 수 있다. 그리고, 본 발명의 일 실시예에 따른 그래픽 객체 관리부(230)는, 위와 같이 산출되는 제2 그래픽 객체(310b)의 위치 정보 및 그 제2 그래픽 객체(310b)의 형상 정보(즉, 직사각형)에 기초하여, 제2 이미지(도 3의 (b))상에서 그 제2 그래픽 객체(310b)가 제1 이미지(도 3의 (a))상의 제1 그래픽 객체(310a)의 위치와 대응되는 위치에 표시되도록 하는 기능을 수행할 수 있다.
한편, 본 발명의 일 실시예에 따른 그래픽 객체 관리부(230)는, 제1 이미지(도 3의 (a))상에 입력된 제1 그래픽 객체가 320a 또는 330a에 해당하는 경우에도 위와 마찬가지 방식으로 제2 그래픽 객체(320b 또는 330b)가 제2 이미지상에 표시되도록 할 수 있으므로, 자세한 설명은 생략하기로 한다.
한편, 본 발명의 일 실시예에 따른 변환 모델 도출부(220)가 제1 이미지 및 제2 이미지 각각에서 도출되는 특징점 중에서 위치적으로 연관되는 특징점 그룹별로 변환 모델을 도출한 경우에, 본 발명의 일 실시예에 따른 그래픽 객체 관리부(230)는, 제1 그래픽 객체와 위치적으로 연관되는 특징점 그룹에 관하여 도출된 변환 모델에 기초하여 제2 그래픽 객체가 표시되도록 하는 기능을 수행할 수 있다.
본 발명의 일 실시예에 따르면, 이렇게 위치적으로 연관되는 특징점 그룹별로 변환 모델을 도출하고, 그 도출된 변환 모델 중에서 제1 그래픽 객체와 위치적으로 연관되는 특징점 그룹에 관하여 도출된 변환 모델에 기초하여 제2 그래픽 객체가 표시되도록 함으로써, 모든 특징점에 관하여 하나의 변환 모델을 도출하는 경우보다 더 정확한 위치에 제2 그래픽 객체가 표시되도록 할 수 있다.
예를 들면, 본 발명의 일 실시예에 따른 변환 모델 도출부(220)에 의하여 도출되는 특징점이 사람의 관절인 경우에, 사람의 머리 부위의 관절에 관한 변환 모델, 사람의 상체 부위의 관절에 관한 변환 모델 및 사람의 하체 부위의 관절에 관한 변환 모델이 각각 도출될 수 있다. 그리고, 도 3을 참조하면, 본 발명의 일 실시예에 따른 그래픽 객체 관리부(230)는, 제1 그래픽 객체(310a)와 위치적으로 연관되는 특징점 그룹에 관하여 도출된 변환 모델, 즉, 사람의 머리 부위의 관절에 관한 변환 모델에 기초하여 제2 그래픽 객체(310b)가 표시되도록 할 수 있다.
다를 예를 들면, 도 3을 참조하면, 본 발명의 일 실시예에 따른 그래픽 객체 관리부(230)는, 제1 그래픽 객체(320a 또는 330a)와 위치적으로 연관되는 특징점 그룹에 관하여 도출된 변환 모델, 즉, 사람의 하체 부위의 관절에 관한 변환 모델에 기초하여 제2 그래픽 객체(320b 또는 330b)가 표시되도록 할 수 있다.
또 다른 예를 들면, 도 4를 참조하면, 본 발명의 일 실시예에 따른 그래픽 객체 관리부(230)는, 제1 그래픽 객체(410a 또는 420a)와 위치적으로 연관되는 특징점 그룹에 관하여 도출된 변환 모델, 즉, 사람의 상체 부위의 관절에 관한 변환 모델에 기초하여 제2 그래픽 객체(410b 또는 420b)가 표시되도록 할 수 있다.
또 다른 예를 들면, 도 4를 참조하면, 본 발명의 일 실시예에 따른 그래픽 객체 관리부(230)는, 제1 그래픽 객체(430a)와 위치적으로 연관되는 특징점 그룹에 관하여 도출된 변환 모델, 즉, 골프채에 관한 변환 모델에 기초하여 제2 그래픽 객체(430b)가 표시되도록 할 수 있다.
다음으로, 본 발명의 일 실시예에 따른 통신부(240)는 이미지 관리부(210), 변환 모델 도출부(220) 및 그래픽 객체 관리부(230)로부터의/로의 데이터 송수신이 가능하도록 하는 기능을 수행할 수 있다.
마지막으로, 본 발명의 일 실시예에 따른 제어부(250)는 이미지 관리부(210), 변환 모델 도출부(220), 그래픽 객체 관리부(230) 및 통신부(240) 간의 데이터의 흐름을 제어하는 기능을 수행할 수 있다. 즉, 본 발명에 따른 제어부(250)는 그래픽 객체 표시 시스템(200)의 외부로부터의/로의 데이터 흐름 또는 그래픽 객체 표시 시스템(200)의 각 구성요소 간의 데이터 흐름을 제어함으로써, 이미지 관리부(210), 변환 모델 도출부(220), 그래픽 객체 관리부(230) 및 통신부(240)에서 각각 고유 기능을 수행하도록 제어할 수 있다.
이상 설명된 본 발명에 따른 실시예는 다양한 컴퓨터 구성요소를 통하여 실행될 수 있는 프로그램 명령어의 형태로 구현되어 컴퓨터 판독 가능한 기록 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능한 기록 매체는 프로그램 명령어, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 컴퓨터 판독 가능한 기록 매체에 기록되는 프로그램 명령어는 본 발명을 위하여 특별히 설계되고 구성된 것이거나 컴퓨터 소프트웨어 분야의 당업자에게 공지되어 사용 가능한 것일 수 있다. 컴퓨터 판독 가능한 기록 매체의 예에는, 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체, CD-ROM 및 DVD와 같은 광기록 매체, 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical medium), 및 ROM, RAM, 플래시 메모리 등과 같은, 프로그램 명령어를 저장하고 실행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령어의 예에는, 컴파일러에 의하여 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용하여 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드도 포함된다. 하드웨어 장치는 본 발명에 따른 처리를 수행하기 위하여 하나 이상의 소프트웨어 모듈로 변경될 수 있으며, 그 역도 마찬가지이다.
이상에서 본 발명이 구체적인 구성요소 등과 같은 특정 사항과 한정된 실시예 및 도면에 의하여 설명되었으나, 이는 본 발명의 보다 전반적인 이해를 돕기 위하여 제공된 것일 뿐, 본 발명이 상기 실시예에 한정되는 것은 아니며, 본 발명이 속하는 기술분야에서 통상적인 지식을 가진 자라면 이러한 기재로부터 다양한 수정과 변경을 꾀할 수 있다.
따라서, 본 발명의 사상은 상기 설명된 실시예에 국한되어 정해져서는 아니 되며, 후술하는 특허청구범위뿐만 아니라 이 특허청구범위와 균등한 또는 이로부터 등가적으로 변경된 모든 범위는 본 발명의 사상의 범주에 속한다고 할 것이다.
100: 통신망
200: 그래픽 객체 표시 시스템
210: 이미지 관리부
220: 변환 모델 도출부
230: 그래픽 객체 관리부
240: 통신부
250: 제어부
300: 디바이스
200: 그래픽 객체 표시 시스템
210: 이미지 관리부
220: 변환 모델 도출부
230: 그래픽 객체 관리부
240: 통신부
250: 제어부
300: 디바이스
Claims (9)
- 이미지상에 그래픽 객체를 표시하기 위한 방법으로서,
사용자에 의하여 사람의 자세에 관한 제1 이미지상에 입력되는 제1 그래픽 객체에 대하여 상기 제1 그래픽 객체를 정의하는 상기 제1 그래픽 객체의 속성 정보를 획득하는 단계,
상기 제1 이미지 및 사람의 자세에 관한 제2 이미지에서 각각 검출되는 특징점에 기초하여, 상기 제1 그래픽 객체의 속성 정보와 상기 제1 그래픽 객체에 대응하여 상기 제2 이미지상에 표시될 제2 그래픽 객체의 속성 정보 사이의 변환 관계를 정의하는 변환 모델을 도출하는 단계, 및
상기 변환 모델에 기초하여, 상기 제2 이미지상에서 상기 제1 이미지상의 상기 제1 그래픽 객체의 위치와 대응되는 위치에 상기 제2 그래픽 객체를 표시하는 단계를 포함하고,
상기 사용자에 의하여 입력되는 상기 제1 그래픽 객체는 임의의 형상 및 임의의 위치를 가질 수 있고,
상기 제1 그래픽 객체의 속성 정보는 상기 제1 이미지상에서 상기 제1 그래픽 객체가 가지는 위치 및 형상에 관한 정보를 포함하고, 상기 제2 그래픽 객체의 속성 정보는 상기 제2 이미지상에서 상기 제2 그래픽 객체가 가지는 위치 및 형상에 관한 정보를 포함하고,
상기 변환 모델은 상기 제1 이미지에서 검출되는 특징점이 상기 제2 이미지에서 검출되는 특징점 중에서 상기 제1 이미지에서 검출되는 특징점과 대응되는 특징점으로 변환되도록 하는 함수에 기초하여 도출되고,
상기 도출 단계는,
상기 특징점을 위치적으로 인접한 특징점들끼리 그루핑하는 단계,
상기 그루핑된 특징점 그룹별로 특징점 그룹별 변환 모델을 도출하는 단계, 및
상기 제1 이미지에서 검출되는 특징점 그룹 중 상기 제1 그래픽 객체와 위치적으로 연관되는 특징점 그룹에 관하여 도출된 특징점 그룹별 변환 모델을 상기 제1 그래픽 객체의 속성 정보와 상기 제2 그래픽 객체의 속성 정보 사이의 변환 관계를 정의하는 변환 모델로서 결정하는 단계를 포함하는
방법. - 제1항에 있어서,
상기 획득 단계에서, 상기 사용자에 의하여 상기 제1 이미지에서 사람의 특정 자세에 관한 프레임이 선택되면, 상기 제1 그래픽 객체가 입력되기 전에 상기 제2 이미지에 상기 특정 자세에 관한 프레임이 표시되도록 상기 제2 이미지를 변경하는
방법. - 제1항에 있어서,
상기 특징점은, 인공신경망 모델을 이용하여 상기 제1 이미지 및 상기 제2 이미지에서 각각 검출되는 사람의 적어도 하나의 관절 및 골프채 중 적어도 하나인
방법. - 삭제
- 제1항에 따른 방법을 실행하기 위한 컴퓨터 프로그램을 기록하는 비일시성의 컴퓨터 판독 가능 기록 매체.
- 이미지상에 그래픽 객체를 표시하기 위한 시스템으로서,
사용자에 의하여 사람의 자세에 관한 제1 이미지상에 입력되는 제1 그래픽 객체에 대하여 상기 제1 그래픽 객체를 정의하는 상기 제1 그래픽 객체의 속성 정보를 획득하는 이미지 관리부,
상기 제1 이미지 및 사람의 자세에 관한 제2 이미지에서 각각 검출되는 특징점에 기초하여, 상기 제1 그래픽 객체의 속성 정보와 상기 제1 그래픽 객체에 대응하여 상기 제2 이미지상에 표시될 제2 그래픽 객체의 속성 정보 사이의 변환 관계를 정의하는 변환 모델을 도출하는 변환 모델 도출부, 및
상기 변환 모델에 기초하여, 상기 제2 이미지상에서 상기 제1 이미지상의 상기 제1 그래픽 객체의 위치와 대응되는 위치에 상기 제2 그래픽 객체를 표시하는 그래픽 객체 관리부를 포함하고,
상기 사용자에 의하여 입력되는 상기 제1 그래픽 객체는 임의의 형상 및 임의의 위치를 가질 수 있고,
상기 제1 그래픽 객체의 속성 정보는 상기 제1 이미지상에서 상기 제1 그래픽 객체가 가지는 위치 및 형상에 관한 정보를 포함하고, 상기 제2 그래픽 객체의 속성 정보는 상기 제2 이미지상에서 상기 제2 그래픽 객체가 가지는 위치 및 형상에 관한 정보를 포함하고,
상기 변환 모델은 상기 제1 이미지에서 검출되는 특징점이 상기 제2 이미지에서 검출되는 특징점 중에서 상기 제1 이미지에서 검출되는 특징점과 대응되는 특징점으로 변환되도록 하는 함수에 기초하여 도출되고,
상기 변환 모델 도출부는, 상기 특징점을 위치적으로 인접한 특징점들끼리 그루핑하고, 상기 그루핑된 특징점 그룹별로 특징점 그룹별 변환 모델을 도출하고, 상기 제1 이미지에서 검출되는 특징점 그룹 중 상기 제1 그래픽 객체와 위치적으로 연관되는 특징점 그룹에 관하여 도출된 특징점 그룹별 변환 모델을 상기 제1 그래픽 객체의 속성 정보와 상기 제2 그래픽 객체의 속성 정보 사이의 변환 관계를 정의하는 변환 모델로서 결정하는
시스템. - 제6항에 있어서,
상기 이미지 관리부가, 상기 사용자에 의하여 상기 제1 이미지에서 사람의 특정 자세에 관한 프레임이 선택되면, 상기 제1 그래픽 객체가 입력되기 전에 상기 제2 이미지에 상기 특정 자세에 관한 프레임이 표시되도록 상기 제2 이미지를 변경하는
시스템. - 제6항에 있어서,
상기 특징점은, 인공신경망 모델을 이용하여 상기 제1 이미지 및 상기 제2 이미지에서 각각 검출되는 사람의 적어도 하나의 관절 및 골프채 중 적어도 하나인
시스템. - 삭제
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020200138416A KR102501811B1 (ko) | 2020-10-23 | 2020-10-23 | 이미지상에 그래픽 객체를 표시하기 위한 방법, 디바이스 및 비일시성의 컴퓨터 판독 가능한 기록 매체 |
US18/031,189 US20230377224A1 (en) | 2020-10-23 | 2021-09-29 | Method, device, and non-transitory computer-readable recording medium for displaying graphic object on image |
PCT/KR2021/013321 WO2022085978A1 (ko) | 2020-10-23 | 2021-09-29 | 이미지상에 그래픽 객체를 표시하기 위한 방법, 디바이스 및 비일시성의 컴퓨터 판독 가능한 기록 매체 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020200138416A KR102501811B1 (ko) | 2020-10-23 | 2020-10-23 | 이미지상에 그래픽 객체를 표시하기 위한 방법, 디바이스 및 비일시성의 컴퓨터 판독 가능한 기록 매체 |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20220053999A KR20220053999A (ko) | 2022-05-02 |
KR102501811B1 true KR102501811B1 (ko) | 2023-02-21 |
Family
ID=81290715
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020200138416A KR102501811B1 (ko) | 2020-10-23 | 2020-10-23 | 이미지상에 그래픽 객체를 표시하기 위한 방법, 디바이스 및 비일시성의 컴퓨터 판독 가능한 기록 매체 |
Country Status (3)
Country | Link |
---|---|
US (1) | US20230377224A1 (ko) |
KR (1) | KR102501811B1 (ko) |
WO (1) | WO2022085978A1 (ko) |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2017187641A1 (ja) * | 2016-04-28 | 2017-11-02 | 富士通株式会社 | 骨格推定装置、骨格推定方法および骨格推定プログラム |
US20190347826A1 (en) | 2018-05-11 | 2019-11-14 | Samsung Electronics Co., Ltd. | Method and apparatus for pose processing |
US20200222757A1 (en) * | 2019-01-15 | 2020-07-16 | Shane Yang | Augmented Cognition Methods And Apparatus For Contemporaneous Feedback In Psychomotor Learning |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101671900B1 (ko) * | 2009-05-08 | 2016-11-03 | 삼성전자주식회사 | 가상 세계에서의 객체를 제어하는 시스템, 방법 및 기록 매체 |
JP5648647B2 (ja) * | 2012-03-21 | 2015-01-07 | カシオ計算機株式会社 | 画像処理装置、画像処理方法及びプログラム |
KR20160109570A (ko) * | 2015-03-12 | 2016-09-21 | 주식회사 삼정텍 | 애플리케이션과 연동 가능한 스윙분석 장치 및 방법 |
KR101986327B1 (ko) * | 2017-08-18 | 2019-06-05 | 강다겸 | 자세 가이드 제공 방법 및 그 장치 |
-
2020
- 2020-10-23 KR KR1020200138416A patent/KR102501811B1/ko active IP Right Grant
-
2021
- 2021-09-29 US US18/031,189 patent/US20230377224A1/en active Pending
- 2021-09-29 WO PCT/KR2021/013321 patent/WO2022085978A1/ko active Application Filing
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2017187641A1 (ja) * | 2016-04-28 | 2017-11-02 | 富士通株式会社 | 骨格推定装置、骨格推定方法および骨格推定プログラム |
US20190347826A1 (en) | 2018-05-11 | 2019-11-14 | Samsung Electronics Co., Ltd. | Method and apparatus for pose processing |
US20200222757A1 (en) * | 2019-01-15 | 2020-07-16 | Shane Yang | Augmented Cognition Methods And Apparatus For Contemporaneous Feedback In Psychomotor Learning |
Also Published As
Publication number | Publication date |
---|---|
KR20220053999A (ko) | 2022-05-02 |
WO2022085978A1 (ko) | 2022-04-28 |
US20230377224A1 (en) | 2023-11-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11595737B2 (en) | Method for embedding advertisement in video and computer device | |
US10692183B2 (en) | Customizable image cropping using body key points | |
CN111832468B (zh) | 基于生物识别的手势识别方法、装置、计算机设备及介质 | |
CN109685199A (zh) | 创建包含关于池化类型的信息的表的方法和装置及使用其的测试方法和测试装置 | |
KR102377561B1 (ko) | 미러 디스플레이를 이용하여 태권도 동작 코칭 서비스를 제공하는 장치 및 방법 | |
CN111027403B (zh) | 手势估计方法、装置、设备及计算机可读存储介质 | |
CN109635752A (zh) | 人脸关键点的定位方法、人脸图像处理方法和相关装置 | |
JP2017102808A (ja) | 画像処理装置および方法 | |
WO2022267653A1 (zh) | 图像处理方法、电子设备及计算机可读存储介质 | |
CN104407696B (zh) | 移动设备的虚拟球模拟及控制的方法 | |
KR20210146264A (ko) | 골프 스윙에 관한 정보를 추정하기 위한 방법, 디바이스 및 비일시성의 컴퓨터 판독 가능한 기록 매체 | |
KR102224596B1 (ko) | 식별가능한 얼굴 편차를 처리하기 위한 얼굴 교정 디자인 및 애플리케이션 프로토콜을 자동으로 생성하는 시스템 및 방법 | |
KR102501811B1 (ko) | 이미지상에 그래픽 객체를 표시하기 위한 방법, 디바이스 및 비일시성의 컴퓨터 판독 가능한 기록 매체 | |
CN109993135A (zh) | 一种基于增强现实的手势识别方法、系统及装置 | |
KR20210067590A (ko) | 골프에 관한 콘텐츠를 추천하기 위한 방법, 디바이스 및 비일시성의 컴퓨터 판독 가능한 기록 매체 | |
JP2015114946A (ja) | 画像処理装置、プログラムおよび画像処理方法 | |
US11908161B2 (en) | Method and electronic device for generating AR content based on intent and interaction of multiple-objects | |
KR102369266B1 (ko) | 골프에 관한 콘텐츠를 제공하기 위한 방법하기 위한 방법, 시스템 및 비일시성의 컴퓨터 판독 가능한 기록 매체 | |
KR20210146265A (ko) | 골프 스윙에 관한 정보를 추정하기 위한 방법, 디바이스 및 비일시성의 컴퓨터 판독 가능한 기록 매체 | |
KR20220066719A (ko) | 골프 스윙에 관한 정보를 추정하기 위한 방법, 시스템 및 비일시성의 컴퓨터 판독 가능한 기록 매체 | |
CN112488909A (zh) | 多人脸的图像处理方法、装置、设备及存储介质 | |
KR102413988B1 (ko) | 골프 스윙에 관한 정보를 추정하기 위한 방법, 디바이스 및 비일시성의 컴퓨터 판독 가능한 기록 매체 | |
US20240142576A1 (en) | Apparatus, Methods and Computer Programs for Classifying Objects | |
KR102176767B1 (ko) | 사용자의 특정 동작을 통해 센서 데이터를 보정하는 방법, 시스템 및 비일시성의 컴퓨터 판독 가능한 기록 매체 | |
US20230419513A1 (en) | Object detection and tracking in extended reality devices |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
AMND | Amendment | ||
E601 | Decision to refuse application | ||
AMND | Amendment | ||
X701 | Decision to grant (after re-examination) | ||
GRNT | Written decision to grant |