KR101283759B1 - Method for semantic annotation and augmentation of moving object for personalized interactive video in smart tv environment - Google Patents

Method for semantic annotation and augmentation of moving object for personalized interactive video in smart tv environment Download PDF

Info

Publication number
KR101283759B1
KR101283759B1 KR1020120045378A KR20120045378A KR101283759B1 KR 101283759 B1 KR101283759 B1 KR 101283759B1 KR 1020120045378 A KR1020120045378 A KR 1020120045378A KR 20120045378 A KR20120045378 A KR 20120045378A KR 101283759 B1 KR101283759 B1 KR 101283759B1
Authority
KR
South Korea
Prior art keywords
video
data
moving
sampling period
information
Prior art date
Application number
KR1020120045378A
Other languages
Korean (ko)
Inventor
조근식
이기성
이진활
Original Assignee
인하대학교 산학협력단
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 인하대학교 산학협력단 filed Critical 인하대학교 산학협력단
Priority to KR1020120045378A priority Critical patent/KR101283759B1/en
Application granted granted Critical
Publication of KR101283759B1 publication Critical patent/KR101283759B1/en

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/85Assembly of content; Generation of multimedia applications
    • H04N21/854Content authoring
    • H04N21/8545Content authoring for generating interactive applications
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/20Analysis of motion
    • G06T7/269Analysis of motion using gradient-based methods
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/27Server based end-user applications

Abstract

PURPOSE: The representation of semantic annotations of a moving object in individualized interactive video in a smart TV environment and an augmentation method thereof are provided to sample video data using a dynamic sampling method according to the movement speed of the moving object, thereby accurately tracking uncertain position information of the object and effectively reducing the amount of data. CONSTITUTION: Relative coordinate variations are calculated which indicate the movement speed of an object moving according to a frame change of video data. A dynamic sampling cycle regarding the coordinates of an object position is determined according to the relative coordinate variations. The video data is sampled according to the dynamic sampling cycle. The coordinates of the object position are saved. [Reference numerals] (AA) Standard deviation; (BB) Sampling cycle; (CC) Real position data

Description

스마트 TV 환경의 개인화된 대화형 비디오에서 움직이는 이동 객체의 의미적 어노테이션의 표현 및 그 증강 방법{METHOD FOR SEMANTIC ANNOTATION AND AUGMENTATION OF MOVING OBJECT FOR PERSONALIZED INTERACTIVE VIDEO IN SMART TV ENVIRONMENT}FIELD OF SEMANTIC ANNOTATION AND AUGMENTATION OF MOVING OBJECT FOR PERSONALIZED INTERACTIVE VIDEO IN SMART TV ENVIRONMENT}

본 발명의 실시예들은 스마트 TV 환경에서 TV 콘텐츠에 상품 및 개인화를 위한 메타 정보를 표현하는 방법에 관한 것으로, 더욱 상세하게는 샘플링 주기를 동적으로 계산하여 보다 효과적으로 TV 콘텐츠에 비디오 시맨틱 어노테이션을 할 수 있으며, TV 콘텐츠에 상품의 메타 데이터를 기반으로 개인화를 위한 방법에 관한 것이다.Embodiments of the present invention relate to a method of expressing meta information for merchandise and personalization in TV content in a smart TV environment, and more specifically, to perform video semantic annotation on TV content more effectively by dynamically calculating a sampling period. The present invention relates to a method for personalization based on metadata of a product in TV content.

최근, Web 2.0환경하에서 사용자들에 의한 다양한 멀티미디어 콘텐츠의 생산과 소비가 폭발적으로 증가하고 있으며, 방송과 통신의 융합으로 인해 TV와 같은 단방향 서비스의 형태가 양방향성을 갖춘 인터렉티브가 가능한 형태(Interactive TV, Smart TV)로 발전되고 있다. 이러한 환경에서 사용자의 의도를 정확하게 이해하고 해당 콘텐츠의 검색을 제공하는 것뿐만 아니라 사용자가 콘텐츠를 시청하면서 콘텐츠에 존재하는 다양한 객체들의 정보나 이벤트와 같은 의미적인 정보들에 대해서 실시간으로 제공하는 스마트 TV 환경에서 인터렉티브 비디오가 주목을 받고 있으며, 인터렉티브 비디오를 위해 콘텐츠에 존재하는 객체들의 정보나 이벤트와 같은 의미적인 정보들을 효율적으로 저장하고 검색하기 위한 많은 시도들이 있다.Recently, the production and consumption of various multimedia contents by users in the Web 2.0 environment has exploded, and due to the convergence of broadcasting and communication, the form of unidirectional services such as TV can be interactively interactive (Interactive TV, Smart TV). In this environment, smart TV not only accurately understands the user's intentions and provides a search for the corresponding content, but also provides real-time information on the semantic information such as information or events of various objects present in the content while the user watches the content. Interactive video is attracting attention in the environment, and there are many attempts to efficiently store and retrieve semantic information such as information or objects of objects present in content for interactive video.

특히, 비디오 데이터는 시간의 변화에 따라 공간적인 위치 변화를 나타내는 이동 객체를 포함하고 있기 때문에 비디오 데이터에 포함된 이동 객체를 표현하기 위해서는 시간의 변화에 따른 객체의 위치 변화를 데이터베이스에 저장하기 위한 효율적인 방법이 필요하다. 일반적으로 데이터베이스를 이용하여 연속적인 데이터를 관리할 경우, 매 프레임마다 변경된 모든 위치 데이터를 저장하는 것은 매우 비효율적이므로 일정한 샘플링 시간을 결정하여 객체의 위치 데이터를 저장하게 된다. 이때, 데이터베이스에 저장되지 않은 임의의 시점에 대해서는 위치 데이터가 존재 하지 않으므로 불확실한 위치 데이터를 적절히 표현할 수 있는 방법이 필요하다.In particular, since the video data includes moving objects representing spatial position changes with the change of time, in order to represent moving objects included in the video data, it is effective to store the position change of the object with the change of time in a database. I need a way. In general, when managing continuous data using a database, it is very inefficient to store all changed position data every frame, so that the position data of the object is stored by determining a constant sampling time. At this time, there is a need for a method capable of properly expressing uncertain location data since location data does not exist at any point in time not stored in the database.

전통적으로 이동 객체의 위치를 추정하여 가상의 객체를 증강시키기 위한 방법으로는 두 시점 이상의 위치 데이터를 사용하여, 저장되지 않은 시점의 이동 객체의 위치를 추정하는 방법들이 연구되고 있다. 그러나, 이러한 연구들은 고정된 샘플링 시간에 의해 객체들의 움직임을 저장하고 있으며, 콘텐츠에 존재하는 객체들의 움직이는 속도에 대해서는 고려하고 있지 않다. 객체의 움직이는 속도는 샘플링 시간을 결정하는 중요한 요소이며, 샘플링 시간은 저장되는 이동 객체의 위치 정보의 양을 결정하게 된다.Traditionally, as a method for estimating the position of a moving object and augmenting a virtual object, methods for estimating the position of the moving object at an unstored viewpoint using two or more position data have been studied. However, these studies store the movements of objects by a fixed sampling time and do not consider the moving speed of objects in the content. The moving speed of the object is an important factor in determining the sampling time, and the sampling time determines the amount of position information of the moving object stored.

따라서, 객체의 움직임이 빠른 경우에는 샘플링 주기를 짧게 하여 불확실한 위치 데이터를 정확하게 표현할 수 있게 하며, 그와 반대로 객체의 움직임이 느린 경우에는 샘플링 주기를 길게 하여 데이터의 양을 줄일 수 있는 방법이 필요하다.Therefore, when the movement of the object is fast, the sampling period is shortened to accurately represent the uncertain position data. On the contrary, when the movement of the object is slow, the sampling period is increased to reduce the amount of data. .

또한, 정보를 제공하는 정보 제공자(Seller)는 자신의 정보(광고 상품, 여행 정보, 날씨 등)를 정보 소비자(Buyer)들에게 제공하기를 원하며, 정보 소비자(Buyer)는 자신이 관심 있는 정보만을 제공받기를 원하고 있기 때문에, 더욱이 개인화를 위한 정보 표현 방법이 필요하다.In addition, information providers Seller want to provide their information (advertising products, travel information, weather, etc.) to information buyers, and information buyers are interested in the information they are interested in. Since they want to be provided only, there is a need for a method of expressing information for personalization.

비디오에 나타나는 이동객체의 움직임(불확실한 위치 데이터 포함)을 따라 가며 가상의 객체를 증강하기 위해 3차 스플라인 보간법(Cubic Spline Interpolation)을 사용하여 이동 객체의 움직임 속도에 따른 동적 샘플링 방법을 제공한다.In order to augment virtual objects by following the movement of moving objects (including uncertain position data) shown in the video, Cubic Spline Interpolation is used to provide a dynamic sampling method according to the moving speed of moving objects.

이동 객체의 움직임 속도에 따른 동적 샘플링 방법을 통해 객체의 불확실한 위치정보를 정확하게 트래킹(Tracking)함과 동시에 데이터의 양을 효과적으로 줄이고, 증강 객체를 나타내기 위한 메타정보의 표현 방법을 제공하고, 증강객체를 개인화 할 수 있는 방법을 제공한다.The dynamic sampling method according to the moving speed of the moving object accurately tracks the uncertain position information of the object and at the same time effectively reduces the amount of data and provides a method of expressing meta information to represent the augmented object. Provides a way to personalize

본 발명의 일 측면에 따르면, 비디오에서 움직이는 이동 객체를 표현하는 방법은 비디오 데이터에서 프레임 변화에 따라 이동하는 객체의 이동 속도를 나타내는 상대적 좌표 변화량을 구하는 단계; 상기 상대적 좌표 변화량에 따라 상기 객체의 위치 좌표에 대한 동적 샘플링 주기를 결정하는 단계; 및 상기 동적 샘플링 주기로 상기 비디오 데이터를 샘플링 하여 상기 객체의 위치 좌표를 저장하는 단계를 포함할 수 있다.According to an aspect of the present invention, a method of representing a moving object moving in a video comprises: obtaining a relative coordinate change amount representing a moving speed of an object moving according to a frame change in the video data; Determining a dynamic sampling period for the position coordinate of the object according to the relative coordinate change amount; And storing the position coordinates of the object by sampling the video data at the dynamic sampling period.

상기 동적 샘플링 주기를 결정하는 단계는, 상기 프레임 변화에 따른 X 좌표의 상대적 좌표 변화량에 따라 상기 객체의 X 좌표에 대한 동적 샘플링 주기를 결정하는 단계와, 상기 프레임 변화에 따른 Y 좌표의 상대적 좌표 변화량에 따라 상기 객체의 Y 좌표에 대한 동적 샘플링 주기를 결정하는 단계를 포함할 수 있다.The determining of the dynamic sampling period may include determining a dynamic sampling period for the X coordinate of the object according to the relative coordinate change amount of the X coordinate according to the frame change, and changing the relative coordinate change amount of the Y coordinate according to the frame change. The method may include determining a dynamic sampling period for the Y coordinate of the object.

상기 동적 샘플링 주기를 결정하는 단계는, 서로 다른 프레임 주기를 갖는 복수의 샘플링 주기 및 상기 샘플링 주기 각각에 대한 임계 조건이 정의되어 상기 상대적 좌표 변화량이 대응되는 임계 조건에 따라 상기 샘플링 주기가 동적으로 결정될 수 있다.The determining of the dynamic sampling period may include defining a plurality of sampling periods having different frame periods and threshold conditions for each of the sampling periods so that the sampling period may be dynamically determined according to a threshold condition corresponding to the relative coordinate change amount. Can be.

상기 동적 샘플링 주기를 결정하는 단계는, 상기 객체의 위치 좌표에 대한 변화량이 클수록 상기 복수의 샘플링 주기 중에서 짧은 샘플링 주기로 결정될 수 있다.The determining of the dynamic sampling period may be determined as a short sampling period among the plurality of sampling periods as the amount of change with respect to the position coordinates of the object increases.

본 발명의 다른 측면에 따르면, 비디오 콘텐츠 서버에서 동작(play)되는 비디오 콘텐츠에서 움직이는 이동 객체를 증강하여 서비스 하는 인터랙티브 서버를 분리하여 사용자의 개인화에 따른 증강정보 뷰어를 통해 물체를 중첩시키는 과정 중에 발생되는 움직이는 물체의 트래킹 문제를 해결하기 위해 표현하는 방법으로, 상기 동적 샘플링 주기로 저장된 상기 객체의 위치 좌표에 대하여, 임의의 두 위치 데이터에서 점과 점 사이의 불확실한 위치 데이터를 보간하는 알고리즘을 이용하여 임의 시점에 대한 상기 객체의 위치 좌표를 추정하는 단계를 더 포함할 수 있다.According to another aspect of the present invention, it occurs during the process of superimposing the object through the augmentation information viewer according to the user's personalization by separating the interactive server to augment the moving moving object in the video content played in the video content server (Service) In order to solve the tracking problem of a moving object, a random interpolation is performed using an algorithm for interpolating uncertain position data between points in two arbitrary position data with respect to the position coordinates of the object stored in the dynamic sampling period. The method may further include estimating the position coordinates of the object with respect to the viewpoint.

본 발명의 또 다른 측면에 따르면, 비디오에서 움직이는 이동 객체를 표현하는 방법은 상기 객체의 위치 좌표에 상기 객체와 관련된 메타 정보를 어노테이션 하는 단계를 더 포함할 수 있다. 이때 상기 메타 정보는 상기 비디오 데이터가 재생되는 화면 상에 상기 비디오 데이터와 합성되어 표시될 수 있다.According to another aspect of the present invention, a method of representing a moving object moving in a video may further include annotating meta information associated with the object in a position coordinate of the object. In this case, the meta information may be displayed by being synthesized with the video data on a screen on which the video data is reproduced.

상기 메타 정보는 LOD(Linking Open Data) 기반의 온톨로지 클래스 계층 구조를 가지며, 상기 메타 정보를 제공할 타겟 유저를 설정하기 위한 타겟(Target) 클래스, 상기 비디오 데이터가 재생되는 화면 상에 상기 메타 정보가 표시되는 시점을 설정하기 위한 플레이타임(PlayTime) 클래스, 상기 메타 정보의 형태를 설정하기 위한 쉐이프(Shape) 클래스, 상기 메타 정보에 대한 인터랙션(interaction) 환경을 정의하기 위한 이벤트(Event) 클래스, 상기 메타 정보가 어노테이션 된 상기 객체의 위치 좌표에 대한 보간 조건을 설정하기 위한 모션(Motion) 클래스 중 적어도 하나의 클래스를 포함할 수 있다.The meta information has an ontology class hierarchy structure based on LOD (Linking Open Data), a target class for setting a target user to provide the meta information, and the meta information is displayed on a screen on which the video data is played. PlayTime class for setting the time point to be displayed, Shape class for setting the form of the meta information, Event class for defining the interaction environment for the meta information, The meta information may include at least one class of a motion class for setting an interpolation condition for the position coordinate of the object.

상기 메타 정보는 상기 비디오 데이터를 제공 받는 사용자 중에서 상기 타겟 클래스에 설정된 타겟 유저를 대상으로 개인화 된 정보로 제공될 수 있다.The meta information may be provided as personalized information for a target user set in the target class among users who receive the video data.

본 발명의 또 다른 측면에 따르면, 비디오 콘텐츠의 개인화를 위한 시스템은 상기 비디오 콘텐츠를 유지하는 비디오 콘텐츠 서버; 및 상기 비디오 콘텐츠에 대하여 어노테이션 된 메타 정보를 유지하는 인터랙티브 콘텐츠 서버를 포함할 수 있다. 이때, 상기 비디오 콘텐츠 서버는 상기 비디오 콘텐츠에서 프레임 변화에 따라 이동하는 객체의 이동 속도를 나타내는 상대적 좌표 변화량을 구한 후, 상기 상대적 좌표 변화량에 따라 상기 객체의 위치 좌표에 대한 동적 샘플링 주기를 결정하고, 상기 동적 샘플링 주기로 상기 비디오 콘텐츠를 샘플링 하여 상기 객체의 위치 좌표를 저장한다. 이에, 상기 메타 정보는 상기 객체의 위치 좌표에 어노테이션 되어 상기 비디오 콘텐츠가 재생되는 화면 상에 상기 비디오 콘텐츠와 합성되어 표시될 수 있다.According to another aspect of the present invention, a system for personalization of video content includes a video content server for maintaining the video content; And an interactive content server that maintains annotated meta information about the video content. In this case, the video content server obtains a relative coordinate change amount representing a moving speed of an object moving according to a frame change in the video content, and then determines a dynamic sampling period for the position coordinate of the object according to the relative coordinate change amount, The video content is sampled at the dynamic sampling period to store position coordinates of the object. Thus, the meta information may be annotated with the position coordinates of the object and displayed on the screen on which the video content is played back.

비디오에 나타나는 이동객체를 움직임에 따라 객체를 증강할 수 있는 방법과 N스크린(N-Screen) 시대에 증강되는 객체를 선택적으로 표현하여 개인이 가지고 있는 스크린 상에 가상의 객체를 증강 할 수 있는 효과적인 방법을 제시한다.It is an effective way to augment virtual objects on the screen of an individual by selectively expressing the augmented objects in the N-Screen era. Give a way.

비디오 콘텐츠 서버와 인터랙티브 콘텐츠 서버의 개념을 도입하여 비디오 콘텐츠의 원본 데이터를 변화시키지 않고 인터랙티브 콘텐츠 서버에 존재하는 증강 객체의 메타 정보를 이용하여 증강 객체를 오버랩(overlap)함으로써 새로운 차원의 비디오를 합성해 내기 위한 기술을 제시할 수 있다. 이를 위한 기술로서, 이동 객체의 움직임 속도에 따른 동적 샘플링 방법을 통해 객체의 불확실한 위치정보를 정확하게 트래킹(Tracking)함과 동시에 데이터의 양을 효과적으로 줄이고, 증강 객체를 나타내기 위한 메타정보의 표현 방법을 제공하고, 증강객체를 개인화 할 수 있는 방법을 효과적으로 제시할 수 있다.By introducing the concept of a video content server and an interactive content server, a new dimension of video is synthesized by overlapping augmented objects using meta information of augmented objects in the interactive content server without changing the original data of the video content. Can present techniques for betting. As a technique for this, a method of accurately expressing meta information for representing an augmented object while effectively tracking an uncertain position information of an object and effectively reducing the amount of data through a dynamic sampling method according to a moving speed of a moving object And effectively suggest ways to personalize augmented objects.

도 1은 비디오 내 이동 객체의 위치를 표현한 추상 데이터 모델과 이산 데이터 모델을 설명하기 위한 예시 도면이다.
도 2는 차수에 따른 다항식의 결과를 설명하기 위한 예시 도면이다.
도 3은 본 발명의 일 실시예에 있어서, 3차 스플라인 보간법을 설명하기 위한 예시 도면이다.
도 4는 본 발명의 일 실시예에 있어서, 객체의 이동 속도에 대한 표준편차를 이용하여 샘플링 주기를 동적으로 결정하는 방법을 설명하기 위한 도면이다.
도 5는 본 발명의 일 실시예에 있어서, 상품 및 개인화를 위한 온톨로지 클래스의 계층 구조 및 오브젝트 속성 정보를 도시한 것이다.
도 6은 본 발명의 일 실시예에 있어서, 타겟(Target) 클래스의 데이터 속성을 도시한 것이다.
도 7은 본 발명의 일 실시예에 있어서, 플레이타임(PlayTime) 클래스의 데이터 속성을 도시한 것이다.
도 8은 본 발명의 일 실시예에 있어서, 쉐이프(Shape) 클래스의 데이터 속성을 도시한 것이다.
도 9는 본 발명의 일 실시예에 있어서, 이벤트(Event) 클래스의 데이터 속성을 도시한 것이다.
도 10은 본 발명의 일 실시예에 있어서, 모션(Motion) 클래스의 데이터 속성을 도시한 것이다.
도 11은 본 발명의 일 실시예에 있어서, TV 콘텐츠에 상품 및 개인화를 위한 시스템 구조도를 도시한 것이다.
도 12는 본 발명의 일 실시예에 있어서, TV 콘텐츠의 비디오와 메타 데이터의 합성을 위한 개념도를 도시한 것이다.
도 13은 본 발명의 일 실시예에 있어서, 정보 제공자가 어노테이션 하기 전 TV 콘텐츠의 비디오를 도시한 예시 화면이다.
도 14는 본 발명의 일 실시예에 있어서, 유저의 프로파일 정보와 정보 제공자의 타겟 정보를 기초로 개인화 된 TV 콘텐츠의 비디오를 도시한 예시 화면이다.
1 is an exemplary diagram for describing an abstract data model and a discrete data model representing a position of a moving object in a video.
2 is an exemplary diagram for explaining the result of a polynomial according to the order.
3 is an exemplary diagram for describing a cubic spline interpolation method according to an embodiment of the present invention.
FIG. 4 is a diagram for describing a method of dynamically determining a sampling period using a standard deviation with respect to a moving speed of an object according to one embodiment of the present invention.
5 illustrates hierarchical structure and object attribute information of ontology class for merchandise and personalization according to an embodiment of the present invention.
FIG. 6 illustrates data attributes of a target class according to an embodiment of the present invention.
FIG. 7 illustrates data attributes of a PlayTime class according to an embodiment of the present invention.
FIG. 8 illustrates data attributes of a Shape class according to an embodiment of the present invention.
FIG. 9 illustrates data attributes of an Event class according to an embodiment of the present invention.
FIG. 10 illustrates data attributes of a motion class according to an embodiment of the present invention.
FIG. 11 is a diagram illustrating a system structure for merchandise and personalization of TV content according to one embodiment of the present invention.
12 illustrates a conceptual diagram for synthesizing video and meta data of TV content according to an embodiment of the present invention.
FIG. 13 is an exemplary screen illustrating a video of TV content before an information provider is annotated, according to an embodiment of the present invention.
FIG. 14 is an exemplary screen illustrating a video of personalized TV content based on profile information of a user and target information of an information provider according to an embodiment of the present invention.

이하, 본 발명의 실시예를 첨부된 도면을 참조하여 상세하게 설명한다.
DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS Hereinafter, embodiments of the present invention will be described in detail with reference to the accompanying drawings.

본 발명의 실시예에서는 증강현실(Augmented Reality)기술 기반의 객체 인식과 추적 방법을 사용한다.In the embodiment of the present invention, an object recognition and tracking method based on Augmented Reality technology is used.

증강현실은 가상현실(Virtual Reality)의 하나의 분야로 파생된 기술로써 현실 세계와 가상 세계를 결합하는 기술을 의미한다. 가상현실이 실세계 환경을 컴퓨터 환경으로 구축하고 이 가상 세계에 몰입함으로써 인간과 컴퓨터의 상호작용을 실현하는 것에 반해, 증강현실은 컴퓨터의 카메라를 이용하여 볼 수 있는 현실적 시각 정보와 현실세계에서 볼 수 없는 비 시각적 정보를 실세계 정보에 투영하여 상호 작용함으로써 현실 세계에 대해 다양한 디지털 정보들을 보다 실감나게 체험할 수 있도록 하는 기술이다. 완성된 형태의 증강현실을 위해서는 현실공간에 가상 객체를 등록하는 과정에서 발생하는 오차를 최소화하는 것이 중요하다. 실세계 좌표계와 가상 세계의 좌표계가 일치하지 않아 발생하는 이러한 오차를 줄이기 위해서는 사용자가 주시하는 실세계에 가상 객체를 정확하게 위치시켜야 하며, 사용자의 위치 및 시선 방향을 정확하게 측정하기 위한 추적 기술이 매우 중요하다.Augmented reality is a technology derived from one field of virtual reality and refers to a technology that combines the real world and the virtual world. While virtual reality realizes human-computer interaction by building a real-world environment into a computer environment and immersing in this virtual world, augmented reality can be viewed in the real world and the visual information that can be seen using a computer camera. It is a technology that makes it possible to experience various digital information more realistically about the real world by interacting by projecting non-visual information into real world information. For the augmented reality of the completed form, it is important to minimize the error that occurs in the process of registering the virtual object in the real space. In order to reduce this error caused by the mismatch between the real world coordinate system and the virtual world coordinate system, the virtual object must be accurately positioned in the real world that the user watches, and a tracking technique for accurately measuring the user's position and gaze direction is very important.

이러한 증강현실을 위해, 1. 실세계에서 가상의 영상을 등록 2. 실제 영상과 가상 영상 결합, 3. 실시간으로 상호작용 하는 과정의 기술적인 요소가 포함된다.For this augmented reality: 1. Register virtual images in the real world 2. Combine real and virtual images, and 3. Technical elements of the real-time interaction process.

본 발명의 실시예에서는 실세계의 물리적인 위치를 비디오의 영상으로 고려하여 한다. 이를 바탕으로 1.비디오 영상에 가상의 영상을 등록하는 기술, 2. 비디오의 영상과 가상 영상을 결합, 3. 실시간으로 상호 작용하는 과정의 기술적인 요소가 포함된다.In the embodiment of the present invention, the physical position of the real world is considered as a video image. Based on this, 1. technology to register a virtual image in the video image, 2. combine the video image and virtual image, and 3. technical elements of the process of real-time interaction.

본 발명에서 사용하는 증강현실의 접근 방법은 마커 기반(Marker based)과 비마커 기반(Markerless based)으로 구분되어 연구되고 있다. 본 특허에서 사용하는 접근 방법은 비마커 기반의 증강현실 접근방법을 사용한다.The approach of augmented reality used in the present invention has been studied to be divided into marker based and markerless based. The approach used in this patent uses a non-marker based augmented reality approach.

증강현실의 초기에 인공적인 마커를 실세계 환경에 도입하여 마커를 추적하도록 하는 마커 기반의 방식에서는 등록하려고 하는 객체에 대해 분별할 수 있는 마커를 지정하였다. 칼라형태의 마커, 특징을 가지는 형태의 마커, 2D 바코드와 같은 것들이 대표적인 예이다. 마커를 이용하기 때문에 탐지를 쉽게 할 수 있고 성공적으로 증강현실에 적용이 될 수 있는 장점이 있지만 응용범위가 협소하고 비현실적이어서 실내환경에서 많이 사용된다.In the early stages of augmented reality, an artificial marker was introduced into the real-world environment, and the marker-based method that tracks the marker specified a distinguishable marker for the object to be registered. Examples are colored markers, markers with features, and 2D barcodes. The use of markers makes it easy to detect and has the advantage of being successfully applied to augmented reality, but it is widely used in indoor environments because of its narrow application range and unrealistic application.

비마커 기반은 모델 기반 방식과 비모델 기반 방식으로 분류할 수 있다. 모델 기반 방식에서는 객체 추적이 이루어지기 전에 실세계에 대한 지식이 획득되어 객체의 3D모델로 저장되고, 카메라의 방향을 추정하는데 사용된다. 이에 반하여, 비모델 기반 방식은 카메라로부터 입력되는 프레임을 통해서 카메라의 방향이 사전 정보 없이 추정된다. 모델 기반의 방식은 비모델 방식에 비해 단순하나, 모델로 저장된 객체만이 가시 영역에 있을 때에 추적된다는 단점이 있으며, 모델 기반 방식의 또 다른 장점으로는 가려짐이나 충돌 현상과 같은 가상 객체와 실제 객체간의 상호 작용이 가능하다는 점이다. 이러한 이유로 모델 기반의 방식은 현재 가장 많은 연구가 진행되고 있는 분야로서, 크게 에지 기반, 광류 기반, 텍스쳐 기반으로 나누어 볼 수 있다. 에지 기반은 점 샘플링 방식과 에지 추출방식으로 나누어 볼 수 있고, 텍스쳐 기반은 템플릿 정합 방식과 관심점(interest point) 기반 방식으로 나누어 볼 수 있다.Non-marker based can be classified into model based method and non-model based method. In the model-based approach, knowledge about the real world is acquired and stored as a 3D model of the object before object tracking is performed, and used to estimate the camera direction. In contrast, in the non-model-based method, the camera direction is estimated without prior information through a frame input from the camera. The model-based approach is simpler than the non-model approach, but the disadvantage is that only the objects stored in the model are tracked when they are in the visible region. Another advantage of the model-based approach is that virtual objects such as obscuration or collisions, Interaction between objects is possible. For this reason, the model-based method is currently the most researched field and can be divided into edge-based, optical flow-based, and texture-based. Edge-based can be divided into point sampling and edge extraction, and texture-based can be divided into template matching and interest point-based.

본 발명의 실시예에서 사용하는 기술은 관심점 기반의 증강현실 기술을 사용하게 된다.The technique used in the embodiment of the present invention will use augmented reality technology based on the point of interest.

관심점 기반의 증강현실 위한 기술은 크게 3가지가 있는데, 객체 인식(Object recognition), 객체 추적(Object Tracking), 그리고 객체 합성(Composition)이 있다.There are three main techniques for augmented reality based on the interests: object recognition, object tracking, and object composition.

이러한 관심점을 추출하기 위한 기술을 위해 SIFT(Scale-Invariant Feature Transform) 또는 SURF(Speeded Up Robust Features)와 같은 알고리즘을 이용해서 영상정보에서 특징 기술자(Feature Descriptors) 정보를 추출하며, 추출된 특징 기술자 정보를 학습된 영상들의 특징 기술자 정보들과 비교 연산을 수행하여 현재 영상에서 추출된 특징 기술자 정보를 기반으로 유사한 영상을 학습된 영상들 중에서 선택하게 된다. 이러한 과정을 '객체 인식'이라고 한다.In order to extract these points of interest, feature descriptor information is extracted from image information using an algorithm such as Scale-Invariant Feature Transform (SIFT) or Speeded Up Robust Features (SURF). The information is compared with the feature descriptor information of the learned images, and a similar image is selected from the learned images based on the feature descriptor information extracted from the current image. This process is called 'object recognition'.

이후, 현재 정지 영상을 n-1이라고 하면 움직이는 영상이 되기 위해 n, n+1,..., n+k 영상들도 이와 같은 과정을 거치게 되는데 이러한 과정을 '객체 추적'이라고 한다. 이러한 객체 추적 과정에서 얻어지는 좌표값을 이용하여 객체의 움직임을 예측할 수 있으며, 이러한 객체의 좌표들은 SIFT와 SURF를 이용하여 추출되며, 또는 사용자가 수동으로 영상에 존재하는 실제 객체를 추적하면서 추출할 수 있다.Subsequently, if the current still image is n-1, n, n + 1, ..., n + k images go through the same process. This process is called 'object tracking'. Coordinate values obtained during the object tracking process can be used to predict the movement of the object. The coordinates of the object can be extracted using SIFT and SURF, or the user can manually extract the actual object in the image. have.

그리고, 선택된 영상(학습된 영상 중에서)과 함께 저장되어 있는 가상의 객체에 대한 정보를 현재 영상과의 포즈(방향, 기울기 등)를 계산하고, 계산된 포즈 값을 기반으로 선택된 영상을 비디오 영상에 합성(증강)을 시키게 되고 이를 '객체 합성'이라고 한다.
Then, the information about the virtual object stored together with the selected image (from the learned image) is calculated with a pose (direction, tilt, etc.) with the current image, and the selected image is added to the video image based on the calculated pose value. Synthesis is performed and this is called object synthesis.

비디오 내에 이동 객체를 표현하기 위해서는 시간에 따라 연속적으로 변하는 공간적 속성에 대한 고려가 필요하다. 이를 위해서는 시간에 따라 연속적으로 위치가 변하는 이동 객체의 위치를 시간에 대한 함수 형태인 도 1의 (a)와 같이 (x, y, z)의 3차원 공간상의 연속적인 무한 점들의 집합인 추상적 데이터 모델(Abstract data model)로 표현할 수 있다.Representation of moving objects in video requires consideration of spatial properties that continuously change over time. To this end, abstract data, which is a set of continuous infinite points in three-dimensional space of (x, y, z) as shown in FIG. It can be expressed as an abstract data model.

그러나, 데이터베이스에 무한 개의 집합을 저장하는 것은 매우 비효율적인 방법이며, 이동 객체의 데이터를 수집할 때도 일정 시간단위로 객체의 위치 값을 이산적으로 얻어오게 된다.However, storing an infinite number of sets in a database is a very inefficient method, and even when collecting data of a moving object, the position value of the object is obtained discretely at a predetermined time unit.

따라서, 이동 객체를 유한 집합으로 표현할 수 있는 이산적 데이터 모델(Discrete data model)(도 1의 (b))을 기반으로 이동 객체를 데이터베이스에 효율적으로 저장할 수 있게 된다.Therefore, the moving object can be efficiently stored in the database based on a discrete data model (FIG. 1B) that can represent the moving object in a finite set.

도 1의 (a)와 같이 추상적 모델로 표현된 이동 객체의 위치를 이산적 모델로 대응하게 되면 도 1의 (b)와 같은 3차원상의 유한 점의 집합으로 구성되는 다각선으로 표현할 수 있게 된다.When the position of the moving object represented by the abstract model as shown in FIG. 1 (a) corresponds to the discrete model, it may be represented as a polygon formed by a set of three-dimensional finite points as shown in FIG. .

이러한 이산적 모델은 추상적 모델과의 대응에 있어서 각 이산 구간 사이의 값을 보간하는 방법과 함께 표현된다. 도 1의 (b)의 경우에는 간단하게 선형 보간법 을 사용하여 이산적 데이터 모델을 표현할 수 있다.This discrete model is represented with a method of interpolating the values between each discrete interval in correspondence with the abstract model. In the case of FIG. 1B, the discrete data model can be simply expressed using linear interpolation.

추상적 데이터 모델의 위치 데이터를 일정 주기로 샘플링하여 데이터량을 줄이고 샘플링 간격 사이의 불확실한 시점의 위치 데이터를 추정하기 위한 방법으로 간단한 직선기반 보간법(Linear Interpolation), 곡선 기반인 라그랑제 보간법(Lagrange Polynomial Interpolation), 뉴튼 보간법(Newton Interpolation), 그리고 스플라인 보간법(Spline Interpolation) 등이 이용되고 있다.Simple linear based interpolation and curve-based Lagrange Polynomial Interpolation to reduce the amount of data by sampling the position data of the abstract data model at regular intervals and to estimate the position data at uncertain points between sampling intervals. , Newton Interpolation, and Spline Interpolation are used.

인터렉티브 비디오를 위해서 비디오 내에서 연속적으로 위치가 변하는 이동 객체의 움직임을 어노테이션 해야 할 때, 이동 객체의 전체 또는 부분적인 움직임을 표현해야 하는 경우가 발생한다.When an interactive video needs to be annotated with the movement of a moving object that continuously changes its position in the video, it may be necessary to express the whole or partial movement of the moving object.

이러한 이동 객체의 움직임들을 모두 처리하기 위한 가장 단순한 방법은 모든 시간에 대해 연속적으로 변하는 이동 객체의 위치를 저장하는 것이다. 그러나, 이 방법은 이산적인 데이터일지라도, 데이터 베이스에 저장되는 데이터의 양을 엄청나게 증가시키게 되어 비효율적이라는 문제가 있다.The simplest way to handle all of these moving object movements is to store the position of the moving object that changes continuously over all time. However, this method has a problem that even in the case of discrete data, the amount of data stored in the database is greatly increased, which is inefficient.

이와 같이 데이터 저장 공간이 커지는 문제점을 해결하기 위해 정규적인 시간의 간격에서 정렬된 순서대로 객체의 위치를 획득하여 선형 보간법을 적용한 연구가 있다. 그러나, 비디오 내 이동 객체는 선형 보간법으로 얻어진 직선형태로 표현하기 보다는 불규칙적인 움직임까지 표현할 수 있는 방법이 보다 효과적이다. 비디오는 수많은 프레임들로 구성되어 있으며, 보통 디지털 비디오는 1초에 15~30 프레임들이 포함되어 있다.In order to solve the problem of increasing the data storage space, there is a study applying linear interpolation by acquiring the positions of objects in a sorted order at regular time intervals. However, the moving object in the video is more effective than the linear form obtained by the linear interpolation method to represent the irregular movement is more effective. Video consists of many frames, and digital video usually contains 15 to 30 frames per second.

따라서, 매 프레임 마다 변화하는 객체의 움직임을 라그랑제 다항식 보간법 또는 뉴튼의 보간법으로 해결하기에는 적절하지 않다. 왜냐하면, 주어진 데이터들을 라그랑제 다항식 보간법이나 뉴튼의 방법으로 보간한다면 차수가 늘어남에 따라 계산 복잡성이 커지고 더욱 큰 오차가 발생하게 될 것이다.Therefore, it is not suitable to solve the motion of the object that changes every frame by Lagrangian polynomial interpolation or Newton's interpolation. Because interpolating the given data using Lagrangian polynomial interpolation or Newton's method will increase the computational complexity and introduce more errors as the order increases.

도 2에서 차수가 작은 (a)와는 다르게 차수가 큰 (b)의 경우, x축의 첫 번째 데이터 주변 0과 2사이와 마지막 데이터 주변 근처 8과 10사이에서 진동이 발생하여 그 구간 사이에서 보간할 경우, 큰 오차가 발생하는 것을 볼 수 있다. 이러한 이동 객체의 불확실한 위치 정보로 인해 데이터 모델링, 질의 처리, 인덱싱, 질의 결과의 부정확성 등이 발생하게 된다. 보간법의 정확도는 사용하는 다항식의 차수에 비례하지 않으며, 점과 점 사이를 직선으로 보간하는 경우, 큰 오차가 발생할 수 있게 되어 보다 효과적인 위치 추정 방법이 필요하다.In the case of (b) having a higher degree than in (a) of FIG. 2, the vibration occurs between 0 and 2 around the first data on the x-axis and 8 and 10 near the last data on the x-axis to interpolate between the sections. In this case, it can be seen that a large error occurs. Due to the uncertain location information of the moving object, data modeling, query processing, indexing, and inaccuracy of query results occur. The accuracy of the interpolation method is not proportional to the order of the polynomial used, and when interpolating between points in a straight line, a large error may occur and a more effective position estimation method is needed.

이러한 문제를 해결하기 위해, 본 발명에서는 다항식의 차수가 큰 경우에는 주어진 구간을 여러 개의 소구간으로 나누고, 소구간 별로 보다 낮은 차수의 다항식을 사용하여 점과 점사이를 유연한 곡선으로 표현 할 수 있는 3차 스플라인 보간법(Cubic Spline Interpolation)을 이용하며, 또한 샘플링 주기를 동적으로 계산하여 보다 효과적인 방법으로 비디오 시맨틱 어노테이션 할 수 있는 방법을 제안한다.In order to solve this problem, in the present invention, when the degree of the polynomial is large, the given section is divided into several subsections, and the points between the points can be represented by a flexible curve using a lower order polynomial for each subsection. Using cubic spline interpolation, we also propose a method that can calculate video semantic annotation in a more effective way by dynamically calculating the sampling period.

이하에서는, 스마트 TV 환경에서 TV 콘텐츠에 상품 및 개인화를 위한 메타 정보의 표현 방법을 구체적으로 설명하기로 한다. 이는, TV 콘텐츠에 상품 및 개인화를 위한 시스템에 의해 각각의 단계가 수행될 수 있다.Hereinafter, a method of expressing meta information for merchandise and personalization in TV content in a smart TV environment will be described in detail. This can be done for each step by the system for merchandise and personalization on TV content.

아래의 큐빅 스플라인 보간법(Cubic spline interpolation)은 이미 알려진 수학 개념이며, 이 개념을 이용하여 이동 객체의 좌표 값들을 보정(이동 객체 추적)하는데 사용한다.The following cubic spline interpolation is a known mathematical concept, which is used to correct (movement object tracking) coordinate values of moving objects.

1. 움직이는 객체의 위치 추정 방법1. How to estimate the position of a moving object

큐빅 스플라인 보간법은 데이터 점들의 집합을 다항식 곡선으로 나타낸 것으로 주어진 점들을 지나면서 오차에 영향을 받지 않는 유연한 곡선을 그릴 수 있다.Cubic spline interpolation represents a set of data points as a polynomial curve that allows you to draw a flexible curve that is not subject to error through a given point.

비디오 내 이동 객체의 특정 시점에 해당하는 위치는 시점 t와 좌표 값 x , y를 {시간, 위치 데이터} 형태인 2차원 데이터로 표현할 수 있다.A position corresponding to a specific viewpoint of the moving object in the video may be expressed as two-dimensional data having a viewpoint t and coordinate values x and y in the form of {time, position data}.

이동 객체를 O라 하고, O의 2차원 위치 데이터를 (x , y)로 표현한다. 객체 O는 시간에 따라서 위치 데이터가 변화하므로, 시간 값인 t를 추가하여 특정 시점 tk에 해당하는 이동 객체 O의 위치 데이터 (xk, yk)를 구할 수 있다. 이동 객체 O의 x축 및 y축의 위치 데이터를 각각 시간 축을 기준으로 표현하면 x축의 경우 (t, x), y축의 경우 (t, y)로 나타낼 수 있다. 따라서, 실제 위치 좌표를 구하기 위해서는 x와 y의 값을 구하기 위한 개별적인 두 개의 3차 다항식이 필요하다.A moving object is referred to as O and two-dimensional positional data of O is represented by (x, y). Since the position data of the object O changes with time, the position data (x k , y k ) of the moving object O corresponding to a specific time point t k may be obtained by adding a time value t. When the position data of the x and y axes of the moving object O are expressed with respect to the time axis, respectively, it may be represented as (t, x) for the x axis and (t, y) for the y axis. Thus, two separate third-order polynomials are needed to find the values of x and y to find the actual position coordinates.

도 3와 같이, n+1개의 점으로 구성된 집합

Figure 112012034454210-pat00001
이 있을 때, n개의 부분구간 3차 다항식을 구함으로써, 연속적으로 존재하는 모든 구간에서의 추정된 위치 좌표 값을 구할 수 있다. 이때, m은 (x , y) 좌표 값을 의미하며, 이동 객체가 나타나는 전체 유효 시간 간격이
Figure 112012034454210-pat00002
이면, 여기에서 t0는 저장된 유효 시간의 시작 시점을 의미하고 tn은 마지막 시점을 나타낸다.
Figure 112012034454210-pat00003
Figure 112012034454210-pat00004
과 같이 n개의 부분 시간 구간
Figure 112012034454210-pat00005
로 분할할 수 있으며, 이때 {k=0, 1, …, n-1}이 된다. 임의의 시점에 대한 객체 위치는 질의 시점 tj에 대해,
Figure 112012034454210-pat00006
의 조건을 만족할 때 tj에서의 위치 좌표 값 mj를 구하는 부분구간 3차 스플라인 보간 다항식은
Figure 112012034454210-pat00007
의 네 점을 이용하여 구한다. 실제 객체의 위치 좌표는 x와 y의 값을 구하기 위한 개별적인 두 개의 3차 다항식으로, x좌표
Figure 112012034454210-pat00008
, y좌표
Figure 112012034454210-pat00009
를 이용하여 계산한다.3, the set consisting of n + 1 points
Figure 112012034454210-pat00001
In this case, by estimating the third order polynomial of the n subdivisions, the estimated position coordinate values in all consecutive sections can be obtained. In this case, m means a (x, y) coordinate value, and the overall effective time interval in which the moving object appears
Figure 112012034454210-pat00002
Where t 0 represents the start time of the stored valid time and t n represents the last time.
Figure 112012034454210-pat00003
The
Figure 112012034454210-pat00004
N partial time intervals, such as
Figure 112012034454210-pat00005
Divided by {k = 0, 1,... , n-1}. The object position for any point in time is relative to the query point in time t j ,
Figure 112012034454210-pat00006
The quadratic spline interpolation polynomial of the partial interval to find the position coordinate value m j at t j when
Figure 112012034454210-pat00007
Find four points using. The position coordinates of the actual object are two separate cubic polynomials for calculating the values of x and y.
Figure 112012034454210-pat00008
, y coordinate
Figure 112012034454210-pat00009
Calculate using

추정 위치 연산을 위한 각 부분 구간 3차 다항식으로서 보간식 S(t)은 수학식 1과 같이 나타낼 수 있다.As the third-order polynomial of each partial section for the estimation position calculation, the interpolation equation S (t) may be expressed by Equation 1 below.

Figure 112012034454210-pat00010
Figure 112012034454210-pat00010

수학식 1은 x좌표 값을 구하기 위한 함수이고, Xi(tp)와 y좌표 값을 구하기 위한 함수 Yi(tp)는 수학식 2와 수학식 3으로 나타낸다.Equation 1 is a function for obtaining the x-coordinate value, and X i (t p ) and a function Y i (t p ) for obtaining the y-coordinate value are represented by equations (2) and (3).

Figure 112012034454210-pat00011
Figure 112012034454210-pat00011

Figure 112012034454210-pat00012
Figure 112012034454210-pat00012

각 부분 구간에 대해 4개의 미정 계수 ai, bi, ci, di를 결정해야 하므로 n개의 부분 구간에 대하여 4n개의 조건식을 필요로 한다. 이러한 미정 계수들을 결정하기 위해서 알 수 있는 조건은 다음과 같다. 3차 다항식은 부분 구간 양 끝점을 지나야 한다(2n개의 조건).Since 4 undetermined coefficients a i , b i , c i , and d i must be determined for each partial interval, 4n conditional expressions are required for n partial intervals. The conditions that can be known to determine these unknown coefficients are as follows. The cubic polynomial must pass both ends of the partial interval (2n conditions).

조건 1:Condition 1:

Figure 112012034454210-pat00013
Figure 112012034454210-pat00013

조건 2:Condition 2:

Figure 112012034454210-pat00014
Figure 112012034454210-pat00014

각 부분 구간의 3차 다항식들은 그들이 만나는 양 끝점에서 1계 도함수(기울기)와 2계 도함수(곡률)는 같아야 한다(2n-2개의 조건).The third-order polynomials of each subinterval must have the same first derivative (tilt) and second derivative (curvature) at both ends they meet (2n-2 conditions).

조건 3:Condition 3:

Figure 112012034454210-pat00015
Figure 112012034454210-pat00015

조건 4:Condition 4:

Figure 112012034454210-pat00016
Figure 112012034454210-pat00016

수학식 1은 두 점을 지나게 되므로 두 점을 대입한 결과식은 수학식 4와 수학식 5와 같이 표현된다.Since Equation 1 passes two points, the result of substituting two points is expressed as Equation 4 and Equation 5.

Figure 112012034454210-pat00017
Figure 112012034454210-pat00017

Figure 112012034454210-pat00018
Figure 112012034454210-pat00018

수학식 4와 수학식 5의 1차 미분과 2차 미분을 구해보면 수학식 6과 수학식 7과 같이 표현된다.The first and second derivatives of Equations 4 and 5 are expressed as Equations 6 and 7.

Figure 112012034454210-pat00019
Figure 112012034454210-pat00019

Figure 112012034454210-pat00020
Figure 112012034454210-pat00020

위의 수학식들로부터 미정 계수 ai, bi, ci, di는 수학식 2와 수학식 3을 이용하여 각각 구할 수 있으며 수학식 8과 같이 정리할 수 있다From the above equations, the undetermined coefficients a i , b i , c i , d i can be obtained using Equations 2 and 3, respectively, and can be summarized as in Equation 8.

Figure 112012034454210-pat00021
Figure 112012034454210-pat00021

이제,

Figure 112012034454210-pat00022
의 관계에서 공통으로 갖는 한 점(ti,mi)의 미분한 값이 동일하다는 조건을 이용하여 수학식 6에 (ti,mi)의 값을 대입해 보면 수학식 9와 같이 표현된다.now,
Figure 112012034454210-pat00022
Substituting the value of (t i , m i ) into Equation 6 using the condition that the derivatives of one point (t i , m i ) that are common in the relationship of is equal to Equation 9 .

Figure 112012034454210-pat00023
Figure 112012034454210-pat00023

Figure 112012034454210-pat00024
의 관계에서 주어진 1차 미분값에 (ti,mi)값을 대입하면 수학식 10과 같이 표현된다.
Figure 112012034454210-pat00024
Substituting the value of (t i , m i ) into the first derivative given in relation to, is expressed as

Figure 112012034454210-pat00025
Figure 112012034454210-pat00025

이를 간단히 하면 수학식 11과 같이 된다.To simplify this, Equation 11 is obtained.

Figure 112012034454210-pat00026
Figure 112012034454210-pat00026

4n개의 미정 계수를 결정하기 위해서는 4n개의 조건이 필요하지만, 조건1, 2, 3, 4를 통해서 얻을 수 있는 조건의 개수는 4n-2개로 수학식 11은 i=1부터 i=n-1까지의 점들에 대해서 이용될 수 있다. 따라서, S0과 Sn의 값은 알지 못하므로 2개의 조건이 부족하다. 이를 해결하기 위한 조건을 끝점 조건이라고 한다. 이 끝점 조건을 구하는 방법에 따라 조금씩 형태가 다른데 본 발명에서는 포물선으로 끝나는 끝점 조건을 수학식 12와 같이 정한다.In order to determine 4n undecided coefficients, 4n conditions are required, but the number of conditions obtained through conditions 1, 2, 3, and 4 is 4n-2 and Equation 11 is i = 1 to i = n-1. It can be used for the points of. Therefore, the values of S 0 and S n are not known and two conditions are insufficient. The condition for solving this is called the endpoint condition. The shape is slightly different depending on the method for obtaining the end point condition. In the present invention, an end point condition ending with a parabola is defined as in Equation (12).

Figure 112012034454210-pat00027
Figure 112012034454210-pat00027

이제 S1,S2, …, Sn의 값을 모두 알 수 있으므로, 수학식 8에 대입하여 4개의 계수를 구한 후 각 계수를 수학식 2와 수학식 3에 대입하면 시점 t에서의 위치 좌표 x, y값을 구할 수 있다.Now S 1 , S 2 ,.. , Since the values of S n can be known, and after obtaining four coefficients by substituting Equation 8 and substituting each coefficient into Equation 2 and Equation 3, the position coordinates x and y at the time point t can be obtained. .

Figure 112012034454210-pat00028
Figure 112012034454210-pat00028

예를 들어 10초의 재생 시간을 갖는 비디오에서, 1초의 간격을 두고 저장된 이동 객체의 위치 데이터(표 1)를 어노테이션 했다고 가정하자. 이때, 저장되지 않은 시점 tp에 대한 위치 데이터 x, y는

Figure 112012034454210-pat00029
을 만족하는 추정 함수는 수학식 2, 수학식 3을 이용하여 구한다. 먼저 수학식 2를 이용하여 Xi(tp)를 구할 때, 각 구간에 대한 곡선을 구하기 위한 미정 계수들은 수학식 8을 이용하여 표 2와 같이 구할 수 있다. 임의의 시점 tp=1.2에 대한 X(1.2)는 [t1, t2]구간에 해당하므로 값 1.69를 수학식 2로부터 얻을 수 있다.For example, suppose that in a video with a playback time of 10 seconds, annotated position data (Table 1) of a moving object stored at intervals of 1 second. At this time, the position data x, y for the unstored time point t p is
Figure 112012034454210-pat00029
An estimation function that satisfies is calculated using Equation 2 and Equation 3. First, when X i (t p ) is obtained by using Equation 2, undetermined coefficients for obtaining a curve for each section may be obtained as shown in Table 2 by using Equation 8. Since X (1.2) for an arbitrary time point t p = 1.2 corresponds to the section [t 1 , t 2 ], a value 1.69 can be obtained from Equation 2.

tp에서 y좌표 값을 구하는 함수 Yi(tp)는 수학식 3을 이용하여 구하며

Figure 112012034454210-pat00030
을 만족할 때, 4개의 미정 계수를 구하는 방법은 Xi(tp)를 구할 때와 동일한 수학식 8을 이용하여 구한다. 임의의 시점 tp=1.2에 대한 Y(1.2)는 [t1, t2]구간에 해당하므로 값 3.84를 수학식 2로부터 얻을 수 있다.at t p to obtain the y coordinate value of the function Y i (t p) is seeking to use the equation (3)
Figure 112012034454210-pat00030
When 4 is satisfied, the method of obtaining four undecided coefficients is obtained by using the same Equation 8 as when X i (t p ) is obtained. Since Y (1.2) for an arbitrary time point t p = 1.2 corresponds to the section [t 1 , t 2 ], the value 3.84 can be obtained from Equation 2.

본 발명에서는 상기한 큐빅 스플라인 보간법은 물론, 임의의 두 위치 데이터에서 점과 점 사이의 불확실한 위치 데이터를 보간하여 표현할 수 있는 모든 알고리즘의 적용이 가능하다.In the present invention, as well as the above-described cubic spline interpolation method, any algorithm capable of interpolating and expressing uncertain position data between points in any two position data can be applied.

2. 동적 샘플링 주기 결정 방법2. How to determine the dynamic sampling period

큐빅 스플라인 방법을 이용하여 이동 객체의 움직임을 보간함에 있어서, 객체들의 움직이는 속도는 매우 민감한 문제이다. 즉, 빠른 속도로 움직이는 이동 객체의 좌표를 보간하기 위해서는 샘플링의 주기가 짧아야 하며, 느린 속도로 움직이는 이동 객체의 좌표를 보간하기 위해서는 샘플링 주기가 빠를 필요는 없다. 샘플링의 주기가 짧다는 것은 그 만큼 데이터의 양이 증가한다는 것이고, 샘플링의 주기가 길다는 것은 그 만큼 데이터 양이 감소한다는 것을 의미하기 때문이다. 본 발명은 객체들의 움직이는 속도를 기반으로 동적인 샘플링을 수행하는 방법을 제안한다.In interpolating the movement of a moving object using the cubic spline method, the moving speed of the objects is a very sensitive problem. That is, the period of sampling should be short to interpolate the coordinates of the moving object moving at high speed, and the sampling period need not be fast to interpolate the coordinates of the moving object moving at slow speed. This is because a shorter period of sampling means that the amount of data increases by that amount, and a longer period of sampling means that the amount of data decreases by that amount. The present invention proposes a method for performing dynamic sampling based on moving speeds of objects.

도 4는 30프레임 동안 수집된 객체 위치 좌표들의 표준편차를 구하고 그 값이 임계값을 초과하였을 경우에 따라서 샘플링 주기가 결정되는 것을 보여준다.FIG. 4 shows that the sampling period is determined according to the standard deviation of the object position coordinates collected for 30 frames and the value exceeding the threshold.

TV 콘텐츠에 상품 및 개인화를 위한 시스템에서는 비디오 데이터에서 프레임 변화에 따라 이동하는 객체의 이동 속도를 나타내는 상대적 좌표 변화량을 구한 후, 상대적 좌표 변화량에 따라 해당 객체의 위치에 대한 동적 샘플링 주기를 결정할 수 있다. 이때, 상대적 좌표 변화량으로는 표준편차, 상대 표준편차, 유클리디안 거리 등을 이용할 수 있다.In the system for merchandise and personalization of TV content, the relative coordinate change amount representing the moving speed of the object moving according to the frame change in the video data can be obtained, and then the dynamic sampling cycle for the position of the object can be determined according to the relative coordinate change amount. . In this case, as the relative coordinate change amount, a standard deviation, relative standard deviation, Euclidean distance, and the like may be used.

이때, TV 콘텐츠에 상품 및 개인화를 위한 시스템에서는 서로 다른 프레임 주기를 갖는 복수의 샘플링 주기 및 샘플링 주기 각각에 대한 임계 조건이 정의되어, 복수의 샘플링 주기 중에서 객체의 위치 좌표에 대한 표준편차에 대응되는 임계 조건의 프레임 주기를 적용할 수 있다. 이때, 객체의 위치 좌표에 대한 표준편차가 클수록 짧은 샘플링 주기가 결정될 수 있다.In this case, in a system for merchandise and personalization in TV content, a threshold condition for each of a plurality of sampling periods and sampling periods having different frame periods is defined, and corresponds to a standard deviation of the position coordinates of an object among the plurality of sampling periods. The frame period of the threshold condition can be applied. In this case, a shorter sampling period may be determined as the standard deviation with respect to the position coordinates of the object increases.

예컨대, 임계값 x∈[0,5]을 만족하면 15프레임 주기로 샘플링을 하고 임계값 x∈[5,10]을 만족하면 7프레임 주기로 샘플링, 어떤 범위에도 속하지 않는다면, 4프레임 주기로 샘플링을 하도록 설정할 수 있다. 즉, 프레임간의 좌표의 위치가 10 pixel 이상 차이가 발생한다는 것은 이동 객체의 움직임이 빠르다는 것을 의미하며, 그렇기 때문에 샘플링의 주기를 보다 짧게 설정해야 한다는 것을 의미한다. 도 4는 프레임의 변화에 따른 X좌표 값의 예이며, 이러한 과정을 동일하게 Y좌표에도 적용하여 샘플링 주기를 결정할 수 있다.For example, if the threshold x∈ [0,5] is satisfied, sampling is performed in 15 frame periods, and if the threshold x∈ [5,10] is satisfied, sampling is performed in 7 frame periods. Can be. That is, a difference of more than 10 pixels in the coordinate position between frames means that the movement of the moving object is fast, and therefore, the sampling period should be set shorter. 4 is an example of an X coordinate value according to a change of a frame, and this process may be similarly applied to a Y coordinate to determine a sampling period.

본 실시예에서는 이러한 표준편차를 이용한 동적 샘플링 주기 결정 방법을 이용하여 객체들의 좌표를 보다 효과적으로 저장하고 정확한 이동 객체의 좌표를 보간할 수 있다.In this embodiment, by using the method of determining the dynamic sampling period using the standard deviation, the coordinates of the objects can be stored more effectively and the coordinates of the accurate moving object can be interpolated.

3. 상품 정보 및 개인화를 위한 온톨로지 구조 3. Ontology Structure for Product Information and Personalization

도 5는 상품 및 개인화를 위한 온톨로지(LOD) 클래스의 계층 구조 및 오브젝트(Object) 속성 정보를 도식화한 것이다. 도 5에서

Figure 112012034454210-pat00031
는 클래스를 의미하며,
Figure 112012034454210-pat00032
는 클래스와 클래스간의 관계 정보를 의미한다.FIG. 5 is a diagram illustrating a hierarchical structure and object attribute information of an ontology (LOD) class for merchandise and personalization. 5,
Figure 112012034454210-pat00031
Means class,
Figure 112012034454210-pat00032
Means class and relationship information between classes.

일 예로, 오브젝트(Object) 클래스와 모션(Motion) 클래스의 관계는 'hasMotion'이라는 것으로 정의되어 있다. 이 관계의 의미는 오브젝트 클래스는 모션이라는 클래스를 가지고 있다는 의미이다. 좀더 구체적으로 설명하면, 오브젝트는 움직임(Motion) 값을 가지고 있는데, 즉, 오브젝트가 어떻게 움직이는지에 대한 설명을 모션이라는 클래스의 데이터 속성을 통해서 정의하고 있다.For example, the relationship between the object class and the motion class is defined as 'hasMotion'. This relationship means that the object class has a class called motion. More specifically, an object has a motion value, that is, a description of how the object moves is defined through a data property of a class called motion.

다른 예는, 오브젝트 클래스는 쉐이프(Shape) 클래스를 가지고 있다. 즉, 오브젝트의 형태에 대한 정의를 쉐이프 클래스를 이용하여 표현하게 된다. 이때, 쉐이프 클래스의 데이터 속성값을 이용하게 되면, 다양한 형태의 오브젝트를 표현할 수 있게 된다.In another example, an object class has a Shape class. That is, the definition of the object type is expressed using the shape class. In this case, when the data attribute value of the shape class is used, various types of objects may be represented.

또 다른 예는, 오브젝트 클래스는 타겟(Target) 클래스에 적합한 유저에게만 쉐이프를 표현하도록 설정할 수 있다. 즉, 현재 표현된 오브젝트의 쉐이프 또는 모션에 대한 정보를 표시하는 부분은 타겟 클래스의 데이터 속성값에 의해서 결정이 된다.As another example, an object class can be set up to represent shapes only for users suitable for the target class. That is, the part displaying information on the shape or motion of the currently expressed object is determined by the data attribute value of the target class.

다시 말해, 정보 제공자(Seller)가 해당 상품에 대한 정보를 모션(Motion), 쉐이프(Shape), 이벤트(Event), 플레이타임(Playtime)의 클래스를 이용해서 표현하고, 그 상품 정보를 보게 될 시청자 즉, 타겟 유저에 대한 정보를 설정하게 되며, 그 정보에 부합된 유저에게만 해당 상품을 보여주게 할 수 있다는 것이다.In other words, the information provider (Seller) expresses the information about the product using the classes of Motion, Shape, Event, and Playtime, and the viewers who will see the product information That is, the information about the target user is set, and only the user who matches the information can display the product.

3-1. 온톨로지의 3-1. Ontological 타겟target (( TargetTarget ) 클래스 데이터 속성() Class data attribute ( DataData propertyproperty ) 정보) Information

타겟 클래스는 정보 제공자가 작성한 메타 데이터를 제공받는 타겟 유저에 대한 설정을 할 수 있도록 표현할 수 있는 클래스이다. 타겟 클래스의 데이터 속성값은 도 6과 같다. 여기서, 'ID'는 해당 타겟 클래스의 인스턴스를 구별하기 위한 속성, 'Age'는 타겟 유저의 나이에 대한 속성, 'Gender'는 타겟 유저의 성별에 대한 속성, 'Location'은 특정한 지역에 위치한 타겟 유저에 대한 속성, 'Interests'는 타겟 유저의 성향을 표현하기 위한 속성, 'Groups'은 정보 제공자가 속한 그룹 또는 정보 제공자의 친구 전체에 대한 속성, 'Relationships'은 타겟 유저와 정보 제공자와의 관계 또는 타겟 유저의 현재 상태에 해당하는 속성, 'Education'은 타겟 유저에 대한 현재 속성값에 대한 정보를 기술할 수 있다. 표 2는 타겟 클래스의 데이터 속성에 대한 예시이다.The target class is a class that can be expressed so that the target user who receives the metadata provided by the information provider can be set. The data attribute value of the target class is shown in FIG. 6. Here, 'ID' is an attribute for identifying an instance of the target class, 'Age' is an attribute for the age of the target user, 'Gender' is an attribute for the gender of the target user, and 'Location' is a target located in a specific region. Attributes for the user, 'Interests' are attributes for expressing the target user's disposition,' Groups' are attributes for the group to which the information provider belongs or all of the information providers' friends, and 'Relationships' is the relationship between the target user and the information provider. Alternatively, an attribute corresponding to the current state of the target user, 'Education' may describe information on the current attribute value for the target user. Table 2 shows an example of data attributes of the target class.

Figure 112012034454210-pat00033
Figure 112012034454210-pat00033

3-2. 온톨로지의 플레이타임(3-2. Ontology playtime ( PlayTimePlayTime ) 클래스 데이터 속성() Class data attribute ( DataData propertyproperty ) 정보) Information

플레이타임 클래스는 정보 제공자가 어노테이션 한 오브젝트에 대한 정보가 화면에 표시되는 시점에 대한 정보를 표시하기 위한 클래스이다. 플레이타임 클래스의 데이터 속성 값은 도 7와 같다. 여기서, 'ID'는 플레이타임을 구별할 수 있는 속성, 'Type'은 'StartValue'와 'EndValue'의 값을 결정하기 위한 값으로 프레임(Frame) 또는 시간(Time) 중에서 선택할 수 있다. 'StartValue'는 현재 오브젝트가 시작될 시점을 의미하며, 'Type'이 프레임이면, 해당 프레임의 번호가 되고, 'Type'이 시간이면 00:00:00 형태로 표현된다. 'EndValue'는 현재 오브젝트가 종료될 시점을 의미하며, 'Type'이 프레임이면, 해당 프레임의 번호가 되고, 'Type'이 시간이면 00:00:00 형태로 표현된다. 표 3은 플레이타임 클래스의 데이터 속성에 대한 예시이다.The playtime class is a class for displaying information on when information on an object annotated by the information provider is displayed on the screen. The data attribute value of the playtime class is shown in FIG. Here, 'ID' is an attribute that can distinguish playtime, and 'Type' is a value for determining values of 'StartValue' and 'EndValue', and may be selected from Frame or Time. 'StartValue' refers to the start point of the current object. If 'Type' is a frame, it is the number of the corresponding frame. If 'Type' is a time, it is expressed as 00:00:00. 'EndValue' refers to the end point of the current object. If 'Type' is a frame, it is the number of the corresponding frame. If 'Type' is a time, it is expressed as 00:00:00. Table 3 shows an example of data attributes of the playtime class.

Figure 112012034454210-pat00034
Figure 112012034454210-pat00034

3-3. 온톨로지의 3-3. Ontological 쉐이프Shape (( ShapeShape ) 클래스 데이터 속성() Class data attribute ( DataData propertyproperty ) 정보) Information

쉐이프 클래스는 정보 제공자가 어노테이션 한 오브젝트에 대한 정보가 화면에 표시하기 위한 클래스이다. 쉐이프 클래스의 데이터 속성 값은 도 8와 같다. 여기서, 'ID'는 쉐이프를 구별할 수 있는 속성, 'Type'은 이미지(image), 텍스트(text), 비디오(video), 라벨(label), 서클(circle)과 같은 형태를 지정하며, 'Width'는 오브젝트의 넓이, 'Height'는 오브젝트의 높이를 의미하며, 'Text'는 화면에 표시할 문자를 의미하고, 'Alpha'는 투명도 값을 0-100의 값으로 표시하며, 'URL'은0 이미지 비디오와 같이 웹 상에 있는 정보를 연결하기 위한 속성이며, 'color'는 오브젝트의 색상을 위한 속성이다. 표 4는 쉐이프 클래스의 데이터 속성에 대한 예시이다.The shape class is a class for displaying information about an object annotated by the information provider on the screen. The data attribute value of the shape class is shown in FIG. 8. Here, 'ID' is a property that can distinguish shapes, 'Type' is a shape such as image, text, video, label, circle, and ' 'Width' is the width of the object, 'Height' is the height of the object, 'Text' is the character to display on the screen, 'Alpha' is the transparency value of 0-100, and 'URL' Is an attribute for linking information on the web like zero image video, and 'color' is an attribute for the color of an object. Table 4 shows an example of the data attributes of the shape class.

Figure 112012034454210-pat00035
Figure 112012034454210-pat00035

3-4. 온톨로지의 이벤트(3-4. Ontology event ( EventEvent ) 클래스 데이터 속성() Class data attribute ( DataData propertyproperty ) 정보) Information

이벤트 클래스는 정보 제공자가 어노테이션 한 오브젝트와 인터랙션에 대한 정의를 위한 클래스이다. 이벤트 클래스의 데이터 속성 값은 도 9와 같다. 여기서, 'ID'는 이벤트를 구별할 수 있는 속성, 'Type'은 인터랙션의 타입 예를 들어, onClick, onMouseOver, onKeyPress와 같은 이벤트들을 의미하며, 'Action'은 인터랙션이 발생하는 시점에서 해당 정보 예를 들어, 쇼핑몰사이트와 같은 웹 페이지를 화면의 전체에 표시 또는 화면의 분할 등을 지정할 수 있는 속성, 'URL'은 인터랙션이 발생하는 시점에서 제공되는 쇼핑몰의 주소를 의미하는 속성이다. 표 5는 이벤트 클래스의 데이터 속성에 대한 예시이다.An event class is a class for defining the objects and interactions annotated by the information provider. The data attribute value of the event class is shown in FIG. Here, 'ID' is a property that can distinguish the event, 'Type' is the type of interaction, for example, events such as onClick, onMouseOver, onKeyPress, 'Action' is an example of the information when the interaction occurs For example, a property of displaying a web page such as a shopping mall site on the entire screen or specifying a split of a screen, etc., and a 'URL' refers to an address of a shopping mall provided at the time of interaction. Table 5 shows an example of data attributes of an event class.

Figure 112012034454210-pat00036
Figure 112012034454210-pat00036

3-5. 온톨로지의 3-5. Ontological 모션motion (( MotionMotion ) 클래스 데이터 속성() Class data attribute ( DataData propertyproperty ) 정보) Information

모션 클래스는 정보 제공자가 어노테이션 한 오브젝트의 움직임을 표현하기 위한 클래스이다. 모션 클래스의 데이터 속성 값은 도 10과 같다. 여기서, 'ID'는 모션을 구별할 수 있는 속성, 'InterpolationType'은 움직이는 오브젝트를 보간하기 위한 알고리즘의 타입 속성, 'SampleRate'는 샘플링 주기의 속성, 'TrajectoryType'은 오브젝트의 정보와 위치정보에 대한 속성으로서, 위치(position) 또는 계수(coefficient)와 같을 수 있으며, 'Trajectories'는 'TrajectoryType'에 따라서 좌표이면 (x,y)의 값을, 계수이면 소정 계수값을 갖는다. 표 6은 모션 클래스의 데이터 속성에 대한 예시이다.The motion class is a class for representing the movement of an object annotated by the information provider. The data attribute value of the motion class is shown in FIG. Here, 'ID' is a property that can distinguish motion, 'InterpolationType' is a type property of an algorithm for interpolating a moving object, 'SampleRate' is a property of sampling period, and 'TrajectoryType' is an object information and location information. As an attribute, it may be the same as position or coefficient, and 'Trajectories' has a value of (x, y) if the coordinate is according to 'TrajectoryType' and a predetermined coefficient value if the coefficient. Table 6 shows an example of data attributes of a motion class.

Figure 112012034454210-pat00037
Figure 112012034454210-pat00037

스마트 TV 환경에서 TV 콘텐츠에 상품 및 개인화를 위한 활용 예시를 살펴보면 다음과 같다.The following is an example of the use for merchandise and personalization of TV content in a smart TV environment.

본 실시예는 도 11의 환경에서 동작할 수 있다. Annotator나 Seller 등 정보를 제공하기 원하는 정보 제공자에 의해서 비디오 콘텐츠에 존재하는 움직이는 이동 객체 위에 정보를 어노테이션 하게 된다. 어노테이션 된 정보들은 상품 및 개인화 온톨로지를 기반으로 작성되며, 이러한 정보들은 비디오 콘텐츠와 상호작용을 위한 콘텐츠와 별개로 저장된다. 어노테이션 된 정보가 저장된 이후에, Vierwer나 buyer 등 정보를 제공받기 원하는 유저에 의해서 비디오와 상호작용 콘텐츠가 함께 합성되어 의미적 비디오 플레이어와 같은 플레이어가 이를 합성하여 재생하게 된다.This embodiment may operate in the environment of FIG. Information providers want to provide information such as Annotator or Seller to annotate the information on moving moving objects in the video content. Annotated information is created based on product and personalization ontology, which is stored separately from the content for interaction with video content. After the annotated information is stored, video and interactive contents are synthesized together by a user who wants to receive information such as a vierwer or buyer, and then synthesized and played by a player such as a semantic video player.

합성에 대한 내용은 도 12와 같다. 개인화 된 대화형 비디오에서 움직이는 이동 객체의 의미적 어노테이션의 표현과 증강을 위해서는 도 12에 도시한 바와 같이, 비디오 콘텐츠 서버와 인터랙티브 콘텐츠 서버를 분리하여 운영될 수 있다. 즉, TV 콘텐츠에 상품 및 개인화를 위한 시스템은 비디오 콘텐츠를 유지하는 비디오 콘텐츠 서버와, 비디오 콘텐츠에 대하여 어노테이션 된 메타 정보를 유지하는 인터랙티브 콘텐츠 서버로 구성될 수 있다.Synthesis is the same as FIG. In order to express and augment the semantic annotation of the moving object in the personalized interactive video, as shown in FIG. 12, the video content server and the interactive content server may be operated separately. That is, a system for merchandise and personalization of TV content may be composed of a video content server for maintaining video content and an interactive content server for maintaining annotated meta information about the video content.

이때, 비디오 콘텐츠 서버는 사용자에 의해서 생성된 비디오 콘텐츠가 저장되며, 또한 다른 웹 사이트에 존재하는 비디오의 주소 등을 포함할 수 있다. 본 실시예에서 비디오 콘텐츠 서버는 비디오 데이터 내 객체의 위치 좌표를 저장함에 있어 상기한 동적 샘플링 주기 결정 방법을 적용할 수 있다. 또한, 인터랙티브 콘텐츠 서버는 다양한 사용자들의 협업에 의해서 생성된 개인화 정보를 포함하며, 이러한 개인화 정보(즉, 메타데이터 정보)는 추후 사용자들의 요청에 의해서 비디오 콘텐츠 위에 증강되어 제공될 수 있다.In this case, the video content server stores video content generated by a user, and may also include an address of a video existing on another web site. In the present embodiment, the video content server may apply the above-described dynamic sampling period determination method in storing the position coordinates of the object in the video data. In addition, the interactive content server includes personalization information generated by collaboration of various users, and the personalization information (ie, metadata information) may be augmented and provided on the video content at the request of users later.

다시 말해, 타겟 유저의 사용자 디바이스에서는 비디오 콘텐츠 서버에서 제공되는 비디오 콘텐츠와, 인터랙티브 콘텐츠 서버에서 제공되는 메타데이터 정보가 합성되어 제공되며, 메타데이터 정보는 해당 콘텐츠를 제공 받은 사용자를 대상으로 제공되되, 특히 관심사 또는 정보를 제공하는 정보 제공자가 설정한 타겟 유저에게 정보를 제공함으로써 개인화된 서비스를 제공할 수 있게 된다. 예를 들어, 장갑을 판매하는 정보 제공자와 신발을 판매하는 정보 제공자가 도 13의 비디오 콘텐츠에 자신들의 상품 정보와 개인화 정보를 표 7과 같이 입력했다고 가정한다. 이러한 비디오 콘텐츠와 메타 정보는 시청자(즉, 유저)에게 제공되며 도 14와 같이 유저의 개인 프로파일(성별, 나이, 학교정보 등) 정보와 유저의 친구들 프로파일 정보를 분석하여 정보 제공자가 제공한 개인화 정보와 유저의 개인 프로파일을 비교하여 정보 제공자가 타겟으로 결정한 유저들에게 해당 상품 정보를 제공할 수 있다. 이에, 유저는 다양한 비디오 뷰(예컨대, 스마트 TV)와 사용자 뷰(예컨대, 스마트 폰, 태블릿 등)를 통해 정보 제공자가 어노테이션 한 정보를 제공 받을 수 있다. 표 8과 표 9는 두 명의 유저에 대한 프로파일의 예제이다.In other words, in the user device of the target user, video content provided from the video content server and metadata information provided from the interactive content server are synthesized and provided, and the metadata information is provided to the user who received the corresponding content. In particular, it is possible to provide a personalized service by providing information to a target user set by the information provider providing the interest or information. For example, suppose that an information provider selling gloves and an information provider selling shoes input their product information and personalization information into the video content of FIG. 13 as shown in Table 7. Such video content and meta information are provided to viewers (ie, users), and personalized information provided by the information provider by analyzing the user's personal profile (gender, age, school information, etc.) information and the user's friend profile information as shown in FIG. By comparing the personal profile of the user and the user can provide the product information to the users that the information provider has determined as the target. Accordingly, the user may be provided with information annotated by the information provider through various video views (eg, smart TVs) and user views (eg, smart phones, tablets, etc.). Tables 8 and 9 show examples of profiles for two users.

<Object rdf:ID="Object_001">
<hasID rdf:datatype="&xsd;literal">1</hasID>
<hasName rdf:datatype="&xsd;literal">Glove</hasName>
<OnlyRepresented rdf:resource="#Target_001"/>
<hasPlayTime rdf:resource="#PlayTime_001"/>
<hasShape rdf:resource="#Shape_001"/>
<hasMotion rdf:resource="#Motion_001"/>
<appearsIn rdf:resource="#Shot_001"/>
<hasEvent rdf:resource="#Event_001"/>
</Object>

<Object rdf:ID="Object_002">
<hasID rdf:datatype="&xsd;literal">1</hasID>
<hasName rdf:datatype="&xsd;literal">Shoes</hasName>
<OnlyRepresented rdf:resource="#Target_002"/>
<hasPlayTime rdf:resource="#PlayTime_001"/>
<hasShape rdf:resource="#Shape_002"/>
<hasMotion rdf:resource="#Motion_002"/>
<appearsIn rdf:resource="#Shot_001"/>
<hasEvent rdf:resource="#Event_002"/>
</Object>

<Target rdf:ID="Target_001">
<hasID rdf:datatype="&xsd;literal">1</hasID>
<hasAge rdf:datatype="&xsd;literal">10-20</hasAge>
<hasGender rdf:datatype="&xsd;literal">All</hasGender>
<hasEducation rdf:datatype="&xsd;literal">at secondary school</hasEducation>
</Target>

<Target rdf:ID="Target_002">
<hasID rdf:datatype="&xsd;literal">2</hasID>
<hasAge rdf:datatype="&xsd;literal">20-30</hasAge>
<hasGender rdf:datatype="&xsd;literal">man</hasGender>
<hasEducation rdf:datatype="&xsd;literal">university</hasEducation>
</Target>

<PlayTime rdf:ID="PlayTime_001">
<hasID rdf:datatype="&xsd;literal">1</hasID>
<hasType rdf:datatype="&xsd;literal">frame</hasType>
<hasStartValue rdf:datatype="&xsd;literal">500</hasStart>
<hasEndValue rdf:datatype="&xsd;literal">549</hasEnd>
</PlatTime>

<Shape rdf:ID="Shape_001">
<hasID rdf:datatype="&xsd;literal">1</hasID>
<hasType rdf:datatype="&xsd;literal">image</hasType>
<hasWidth rdf:datatype="&xsd;literal">100</hasWidth>
<hasHeight rdf:datatype="&xsd;literal">70</hasHeight>
<hasUrl rdf:datatype="&xsd;literal">http://www.ebay.com/Glove_Image.jpg</hasUrl>
</Shape>

<Shape rdf:ID="Shape_002">
<hasID rdf:datatype="&xsd;literal">2</hasID>
<hasType rdf:datatype="&xsd;literal">image</hasType>
<hasWidth rdf:datatype="&xsd;literal">100</hasWidth>
<hasHeight rdf:datatype="&xsd;literal">70</hasHeight>
<hasUrl rdf:datatype="&xsd;literal">http://www.ebay.com/Shoes_Image.jpg</hasUrl>
</Shape>

<Event rdf:ID="Event_001">
<hasID rdf:datatype="&xsd;literal">1</hasID>
<hasType rdf:datatype="&xsd;literal">onClick</hasType>
<action rdf:datatype="&xsd;literal">popup</hasType>
<hasUrl rdf:datatype="&xsd;literal">http://www.ebay.com/Glove_wesite.html</hasUrl>
</Event>

<Event rdf:ID="Event_002">
<hasID rdf:datatype="&xsd;literal">2</hasID>
<hasType rdf:datatype="&xsd;literal">onClick</hasType>
<action rdf:datatype="&xsd;literal">popup</hasType>
<hasUrl rdf:datatype="&xsd;literal">http://www.ebay.com/Shoes_wesite.html</hasUrl>
</Event>


<Motion rdf:ID="Motion_001">
<hasID rdf:datatype="&xsd;literal"> 1 </hasID>
<hasType rdf:datatype="&xsd;literal"> moving </hasType>
<interpolationType rdf:datatype="&xsd;literal"> cubic spline </interpolationType>
<samplingRage rdf:datatype="&xsd;literal"> 7 </samplingRage>
<trajectoryType rdf:datatype="&xsd;literal"> position </trajectoryType>
<trajectories rdf:datatype="&xsd;literal"> 134 247 138 249 140 253 135 260 139 270 138 250 135 247 </samplingRage>
</Motion>

<Motion rdf:ID="Motion_002">
<hasID rdf:datatype="&xsd;literal"> 2 </hasID>
<hasType rdf:datatype="&xsd;literal"> moving </hasType>
<interpolationType rdf:datatype="&xsd;literal"> cubic spline </interpolationType>
<samplingRage rdf:datatype="&xsd;literal"> 7 </samplingRage>
<trajectoryType rdf:datatype="&xsd;literal"> position </trajectoryType>
<trajectories rdf:datatype="&xsd;literal"> 234 347 238 349 240 353 235 360 239 370 238 350 235 347 </samplingRage>
</Motion>
<Object rdf: ID = "Object_001">
<hasID rdf: datatype = "&xsd;literal"> 1 </ hasID>
<hasName rdf: datatype = "&xsd;literal"> Glove </ hasName>
<OnlyRepresented rdf: resource = "# Target_001"/>
<hasPlayTime rdf: resource = "# PlayTime_001"/>
<hasShape rdf: resource = "# Shape_001"/>
<hasMotion rdf: resource = "# Motion_001"/>
<appearsIn rdf: resource = "# Shot_001"/>
<hasEvent rdf: resource = "# Event_001"/>
</ Object>

<Object rdf: ID = "Object_002">
<hasID rdf: datatype = "&xsd;literal"> 1 </ hasID>
<hasName rdf: datatype = "&xsd;literal"> Shoes </ hasName>
<OnlyRepresented rdf: resource = "# Target_002"/>
<hasPlayTime rdf: resource = "# PlayTime_001"/>
<hasShape rdf: resource = "# Shape_002"/>
<hasMotion rdf: resource = "# Motion_002"/>
<appearsIn rdf: resource = "# Shot_001"/>
<hasEvent rdf: resource = "# Event_002"/>
</ Object>

<Target rdf: ID = "Target_001">
<hasID rdf: datatype = "&xsd;literal"> 1 </ hasID>
<hasAge rdf: datatype = "&xsd;literal"> 10-20 </ hasAge>
<hasGender rdf: datatype = "&xsd;literal"> All </ hasGender>
<hasEducation rdf: datatype = "&xsd;literal"> at secondary school </ hasEducation>
</ Target>

<Target rdf: ID = "Target_002">
<hasID rdf: datatype = "&xsd;literal"> 2 </ hasID>
<hasAge rdf: datatype = "&xsd;literal"> 20-30 </ hasAge>
<hasGender rdf: datatype = "&xsd;literal"> man </ hasGender>
<hasEducation rdf: datatype = "&xsd;literal"> university </ hasEducation>
</ Target>

<PlayTime rdf: ID = "PlayTime_001">
<hasID rdf: datatype = "&xsd;literal"> 1 </ hasID>
<hasType rdf: datatype = "&xsd;literal"> frame </ hasType>
<hasStartValue rdf: datatype = "&xsd;literal"> 500 </ hasStart>
<hasEndValue rdf: datatype = "&xsd;literal"> 549 </ hasEnd>
</ PlatTime>

<Shape rdf: ID = "Shape_001">
<hasID rdf: datatype = "&xsd;literal"> 1 </ hasID>
<hasType rdf: datatype = "&xsd;literal"> image </ hasType>
<hasWidth rdf: datatype = "&xsd;literal"> 100 </ hasWidth>
<hasHeight rdf: datatype = "&xsd;literal"> 70 </ hasHeight>
<hasUrl rdf: datatype = "&xsd;literal"> http://www.ebay.com/Glove_Image.jpg </ hasUrl>
</ Shape>

<Shape rdf: ID = "Shape_002">
<hasID rdf: datatype = "&xsd;literal"> 2 </ hasID>
<hasType rdf: datatype = "&xsd;literal"> image </ hasType>
<hasWidth rdf: datatype = "&xsd;literal"> 100 </ hasWidth>
<hasHeight rdf: datatype = "&xsd;literal"> 70 </ hasHeight>
<hasUrl rdf: datatype = "&xsd;literal"> http://www.ebay.com/Shoes_Image.jpg </ hasUrl>
</ Shape>

<Event rdf: ID = "Event_001">
<hasID rdf: datatype = "&xsd;literal"> 1 </ hasID>
<hasType rdf: datatype = "&xsd;literal"> onClick </ hasType>
<action rdf: datatype = "&xsd;literal"> popup </ hasType>
<hasUrl rdf: datatype = "&xsd;literal"> http://www.ebay.com/Glove_wesite.html </ hasUrl>
</ Event>

<Event rdf: ID = "Event_002">
<hasID rdf: datatype = "&xsd;literal"> 2 </ hasID>
<hasType rdf: datatype = "&xsd;literal"> onClick </ hasType>
<action rdf: datatype = "&xsd;literal"> popup </ hasType>
<hasUrl rdf: datatype = "&xsd;literal"> http://www.ebay.com/Shoes_wesite.html </ hasUrl>
</ Event>


<Motion rdf: ID = "Motion_001">
<hasID rdf: datatype = "&xsd;literal"> 1 </ hasID>
<hasType rdf: datatype = "&xsd;literal"> moving </ hasType>
<interpolationType rdf: datatype = "&xsd;literal"> cubic spline </ interpolationType>
<samplingRage rdf: datatype = "&xsd;literal"> 7 </ samplingRage>
<trajectoryType rdf: datatype = "&xsd;literal"> position </ trajectoryType>
<trajectories rdf: datatype = "&xsd;literal"> 134 247 138 249 140 253 135 260 139 270 138 250 135 247 </ samplingRage>
</ Motion>

<Motion rdf: ID = "Motion_002">
<hasID rdf: datatype = "&xsd;literal"> 2 </ hasID>
<hasType rdf: datatype = "&xsd;literal"> moving </ hasType>
<interpolationType rdf: datatype = "&xsd;literal"> cubic spline </ interpolationType>
<samplingRage rdf: datatype = "&xsd;literal"> 7 </ samplingRage>
<trajectoryType rdf: datatype = "&xsd;literal"> position </ trajectoryType>
<trajectories rdf: datatype = "&xsd;literal"> 234 347 238 349 240 353 235 360 239 370 238 350 235 347 </ samplingRage>
</ Motion>

Figure 112012034454210-pat00038
Figure 112012034454210-pat00038

Figure 112012034454210-pat00039
Figure 112012034454210-pat00039

이와 같이, 본 실시예에 따르면, TV 컨텐츠의 이동 객체에 대한 불확실한 위치 데이터를 표현하기 위해 3차 스플라인 보간법을 사용하고 이동 객체의 움직임 속도에 따른 동적 샘플링 주기를 적용함으로써 이동 객체의 위치 정보를 정확하게 표현함과 동시에 데이터의 양을 효과적으로 줄여 개인화를 위한 메타 정보를 효율적으로 표현할 수 있다.As described above, according to the present exemplary embodiment, by using cubic spline interpolation to express uncertain position data of a moving object of TV content and applying a dynamic sampling period according to the moving speed of the moving object, the position information of the moving object can be accurately corrected. At the same time, the amount of data can be effectively reduced to effectively express meta information for personalization.

본 발명의 실시예에 따른 방법들은 다양한 컴퓨터 시스템을 통하여 수행될 수 있는 프로그램 명령(instruction) 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체에 기록되는 프로그램 명령은 본 발명을 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 또한, 상술한 파일 시스템은 컴퓨터 판독이 가능한 기록 매체에 기록될 수 있다.The methods according to embodiments of the present invention may be implemented in the form of a program instruction that can be executed through various computer systems and recorded in a computer-readable medium. The computer readable medium may include program instructions, data files, data structures, etc. alone or in combination. The program instructions recorded on the medium may be those specially designed and constructed for the present invention or may be available to those skilled in the art of computer software. In addition, the above-described file system can be recorded in a computer-readable recording medium.

이상과 같이 본 발명은 비록 한정된 실시예와 도면에 의해 설명되었으나, 본 발명은 상기의 실시예에 한정되는 것은 아니며, 본 발명이 속하는 분야에서 통상의 지식을 가진 자라면 이러한 기재로부터 다양한 수정 및 변형이 가능하다.As described above, the present invention has been described by way of limited embodiments and drawings, but the present invention is not limited to the above embodiments, and those skilled in the art to which the present invention pertains various modifications and variations from such descriptions. This is possible.

그러므로, 본 발명의 범위는 설명된 실시예에 국한되어 정해져서는 아니 되며, 후술하는 특허청구범위뿐 아니라 이 특허청구범위와 균등한 것들에 의해 정해져야 한다.Therefore, the scope of the present invention should not be limited to the described embodiments, but should be determined by the equivalents of the claims, as well as the claims.

Claims (9)

비디오에서 움직이는 이동 객체를 표현하는 방법에 있어서,
비디오 데이터에서 프레임 변화에 따라 이동하는 객체의 이동 속도를 나타내는 상대적 좌표 변화량을 구하는 단계;
상기 상대적 좌표 변화량에 따라 상기 객체의 위치 좌표에 대한 동적 샘플링 주기를 결정하는 단계; 및
상기 동적 샘플링 주기로 상기 비디오 데이터를 샘플링 하여 상기 객체의 위치 좌표를 저장하는 단계
를 포함하는 비디오 내 이동 객체의 표현 방법.
In how to represent moving objects in a video,
Obtaining a relative coordinate change amount representing a moving speed of an object moving according to a frame change in the video data;
Determining a dynamic sampling period for the position coordinate of the object according to the relative coordinate change amount; And
Sampling the video data at the dynamic sampling period and storing position coordinates of the object
Method of representing a moving object in a video comprising a.
제1항에 있어서,
상기 동적 샘플링 주기를 결정하는 단계는,
상기 프레임 변화에 따른 X 좌표의 상대적 좌표 변화량에 따라 상기 객체의 X 좌표에 대한 동적 샘플링 주기를 결정하는 단계와,
상기 프레임 변화에 따른 Y 좌표의 상대적 좌표 변화량에 따라 상기 객체의 Y 좌표에 대한 동적 샘플링 주기를 결정하는 단계
를 포함하는 비디오 내 이동 객체의 표현 방법.
The method of claim 1,
Determining the dynamic sampling period,
Determining a dynamic sampling period for the X coordinate of the object according to the relative coordinate change amount of the X coordinate according to the frame change;
Determining a dynamic sampling period for the Y coordinate of the object according to the relative coordinate variation of the Y coordinate according to the frame change
Method of representing a moving object in a video comprising a.
제1항에 있어서,
상기 동적 샘플링 주기를 결정하는 단계는,
서로 다른 프레임 주기를 갖는 복수의 샘플링 주기 및 상기 샘플링 주기 각각에 대한 임계 조건이 정의되어 상기 상대적 좌표 변화량이 대응되는 임계 조건에 따라 상기 샘플링 주기가 동적으로 결정되는 것
을 특징으로 하는 비디오 내 이동 객체의 표현 방법.
The method of claim 1,
Determining the dynamic sampling period,
A plurality of sampling periods having different frame periods and threshold conditions for each of the sampling periods are defined so that the sampling period is dynamically determined according to the threshold condition to which the relative coordinate change amount corresponds.
How to represent the moving object in the video, characterized in that.
제3항에 있어서,
상기 동적 샘플링 주기를 결정하는 단계는,
상기 객체의 위치 좌표에 대한 변화량이 클수록 상기 복수의 샘플링 주기 중에서 짧은 샘플링 주기로 결정되는 것
을 특징으로 하는 비디오 내 이동 객체의 표현 방법.
The method of claim 3,
Determining the dynamic sampling period,
The larger the amount of change with respect to the position coordinates of the object, the shorter sampling period is determined among the plurality of sampling periods.
How to represent the moving object in the video, characterized in that.
제1항에 있어서,
상기 동적 샘플링 주기로 저장된 상기 객체의 위치 좌표에 대하여, 임의의 두 위치 데이터에서 점과 점 사이의 불확실한 위치 데이터를 보간하는 알고리즘을 이용하여 임의 시점에 대한 상기 객체의 위치 좌표를 추정하는 단계
를 더 포함하는 비디오 내 이동 객체의 표현 방법.
The method of claim 1,
Estimating the position coordinates of the object with respect to an arbitrary time point using an algorithm for interpolating uncertain position data between points in any two position data with respect to the position coordinates of the object stored in the dynamic sampling period.
The method of representing a moving object in the video further comprising.
제1항에 있어서,
상기 객체의 위치 좌표에 상기 객체와 관련된 메타 정보를 어노테이션 하는 단계
를 더 포함하고,
상기 메타 정보는 상기 비디오 데이터가 재생되는 화면 상에 상기 비디오 데이터와 합성되어 표시되는 것
을 특징으로 하는 비디오 내 이동 객체의 표현 방법.
The method of claim 1,
Annotating meta information associated with the object in the position coordinates of the object
Further comprising:
The meta information is displayed by being synthesized with the video data on a screen on which the video data is reproduced.
How to represent the moving object in the video, characterized in that.
제6항에 있어서,
상기 메타 정보는 LOD(Linking Open Data) 기반의 온톨로지 클래스 계층 구조를 가지며,
상기 메타 정보를 제공할 타겟 유저를 설정하기 위한 타겟(Target) 클래스, 상기 비디오 데이터가 재생되는 화면 상에 상기 메타 정보가 표시되는 시점을 설정하기 위한 플레이타임(PlayTime) 클래스, 상기 메타 정보의 형태를 설정하기 위한 쉐이프(Shape) 클래스, 상기 메타 정보에 대한 인터랙션(interaction) 환경을 정의하기 위한 이벤트(Event) 클래스, 상기 메타 정보가 어노테이션 된 상기 객체의 위치 좌표에 대한 보간 조건을 설정하기 위한 모션(Motion) 클래스 중 적어도 하나의 클래스를 포함하는 것
을 특징으로 하는 비디오 내 이동 객체의 표현 방법.
The method according to claim 6,
The meta information has an ontology class hierarchy structure based on LOD (Linking Open Data),
A target class for setting a target user to provide the meta information, a PlayTime class for setting a time point at which the meta information is displayed on a screen on which the video data is played, and a form of the meta information. Shape class for setting the, Event class for defining the interaction environment for the meta information, Motion for setting the interpolation condition for the position coordinates of the object where the meta information is annotated Containing at least one of the Motion classes
How to represent the moving object in the video, characterized in that.
제7항에 있어서,
상기 메타 정보는 상기 비디오 데이터를 제공 받는 사용자 중에서 상기 타겟 클래스에 설정된 타겟 유저를 대상으로 개인화 된 정보로 제공되는 것
을 특징으로 하는 비디오 내 이동 객체의 표현 방법.
The method of claim 7, wherein
The meta information is provided as personalized information for a target user set in the target class among users who receive the video data.
How to represent the moving object in the video, characterized in that.
비디오 콘텐츠의 개인화를 위한 시스템에 있어서,
상기 비디오 콘텐츠를 유지하는 비디오 콘텐츠 서버; 및
상기 비디오 콘텐츠에 대하여 어노테이션 된 메타 정보를 유지하는 인터랙티브 콘텐츠 서버
를 포함하고,
상기 비디오 콘텐츠 서버는,
상기 비디오 콘텐츠에서 프레임 변화에 따라 이동하는 객체의 이동 속도를 나타내는 상대적 좌표 변화량을 구한 후, 상기 상대적 좌표 변화량에 따라 상기 객체의 위치 좌표에 대한 동적 샘플링 주기를 결정하고, 상기 동적 샘플링 주기로 상기 비디오 콘텐츠를 샘플링 하여 상기 객체의 위치 좌표를 저장하며,
상기 메타 정보는,
상기 객체의 위치 좌표에 어노테이션 되어 상기 비디오 콘텐츠가 재생되는 화면 상에 상기 비디오 콘텐츠와 합성되어 표시되는 것
을 특징으로 하는 비디오 콘텐츠 개인화 시스템.
In the system for personalization of video content,
A video content server for holding the video content; And
Interactive content server that maintains annotated meta information about the video content
Lt; / RTI &gt;
The video content server,
After obtaining a relative coordinate change amount representing a moving speed of an object moving according to a frame change in the video content, a dynamic sampling period for the position coordinate of the object is determined according to the relative coordinate change amount, and the video content is used as the dynamic sampling period. Sampling to store the position coordinates of the object,
The meta information is,
Being synthesized with the video content and displayed on a screen on which the video content is played by annotating the position coordinates of the object.
Video content personalization system.
KR1020120045378A 2012-04-30 2012-04-30 Method for semantic annotation and augmentation of moving object for personalized interactive video in smart tv environment KR101283759B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020120045378A KR101283759B1 (en) 2012-04-30 2012-04-30 Method for semantic annotation and augmentation of moving object for personalized interactive video in smart tv environment

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020120045378A KR101283759B1 (en) 2012-04-30 2012-04-30 Method for semantic annotation and augmentation of moving object for personalized interactive video in smart tv environment

Publications (1)

Publication Number Publication Date
KR101283759B1 true KR101283759B1 (en) 2013-07-08

Family

ID=48996869

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020120045378A KR101283759B1 (en) 2012-04-30 2012-04-30 Method for semantic annotation and augmentation of moving object for personalized interactive video in smart tv environment

Country Status (1)

Country Link
KR (1) KR101283759B1 (en)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101803275B1 (en) * 2016-06-20 2017-12-01 (주)핑거플러스 Preprocessing method of video contents for tracking location of merchandise available to match with object included in the video contetns, server and coordinate keyborder device implementing the same
KR20200030429A (en) * 2018-09-04 2020-03-20 씨드로닉스(주) Method for acquiring movement attributes of moving object and apparatus for performing the same
US10803360B2 (en) 2018-09-04 2020-10-13 Seadronix Corp. Situation awareness method and device using image segmentation
US11514668B2 (en) 2018-09-04 2022-11-29 Seadronix Corp. Method and device for situation awareness
US11776250B2 (en) 2018-09-04 2023-10-03 Seadronix Corp. Method and device for situation awareness

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0944757A (en) * 1995-07-25 1997-02-14 Hitachi Ltd Intruder monitoring system
KR101018781B1 (en) 2010-06-08 2011-03-03 주식회사 온미디어 Method and system for providing additional contents using augmented reality

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0944757A (en) * 1995-07-25 1997-02-14 Hitachi Ltd Intruder monitoring system
KR101018781B1 (en) 2010-06-08 2011-03-03 주식회사 온미디어 Method and system for providing additional contents using augmented reality

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101803275B1 (en) * 2016-06-20 2017-12-01 (주)핑거플러스 Preprocessing method of video contents for tracking location of merchandise available to match with object included in the video contetns, server and coordinate keyborder device implementing the same
WO2017222225A1 (en) * 2016-06-20 2017-12-28 (주)핑거플러스 Method for preprocessing image content capable of tracking position of object and mappable product included in image content, server for executing same, and coordinates inputter device
KR20200030429A (en) * 2018-09-04 2020-03-20 씨드로닉스(주) Method for acquiring movement attributes of moving object and apparatus for performing the same
KR102144623B1 (en) 2018-09-04 2020-08-14 씨드로닉스(주) Method for acquiring movement attributes of moving object and apparatus for performing the same
US10803360B2 (en) 2018-09-04 2020-10-13 Seadronix Corp. Situation awareness method and device using image segmentation
US11314990B2 (en) 2018-09-04 2022-04-26 Seadronix Corp. Method for acquiring object information and apparatus for performing same
US11514668B2 (en) 2018-09-04 2022-11-29 Seadronix Corp. Method and device for situation awareness
US11702175B2 (en) 2018-09-04 2023-07-18 Seadronix Corp. Method for acquiring object information and apparatus for performing same
US11776250B2 (en) 2018-09-04 2023-10-03 Seadronix Corp. Method and device for situation awareness

Similar Documents

Publication Publication Date Title
US11863830B2 (en) System for interacting with objects within rendered scenes in motion
Langlotz et al. Next-generation augmented reality browsers: rich, seamless, and adaptive
CN104219559B (en) Unobvious superposition is launched in video content
AU2010301005B2 (en) Video content-aware advertisement placement
US20160050465A1 (en) Dynamically targeted ad augmentation in video
US9087242B2 (en) Video synthesis using video volumes
CN109791600A (en) It is the method for the mobile layout of vertical screen by transverse screen Video Quality Metric
US20150070347A1 (en) Computer-vision based augmented reality system
WO2015148421A1 (en) Recommendation system with multi-dimensional discovery experience
KR101283759B1 (en) Method for semantic annotation and augmentation of moving object for personalized interactive video in smart tv environment
US20170132425A1 (en) Content Sharing Collections and Navigation
Tatzgern Situated visualization in augmented reality
EP3565258A1 (en) Computerized system and method for in-video modification
Ma et al. An indoor scene recognition-based 3D registration mechanism for real-time AR-GIS visualization in mobile applications
Marchesi et al. Envslam: Combining slam systems and neural networks to improve the environment fusion in ar applications
Styliaras et al. The MuseLearn platform: Personalized content for museum visitors assisted by vision-based recognition and 3D pose estimation of exhibits
US10911837B1 (en) Systems and methods for dynamically augmenting videos via in-video insertion on mobile devices
US11432046B1 (en) Interactive, personalized objects in content creator&#39;s media with e-commerce link associated therewith
US20150181288A1 (en) Video sales and marketing system
Chen Real-time interactive micro movie placement marketing system based on discrete-event simulation
Gil-Jiménez et al. Geometric bounding box interpolation: an alternative for efficient video annotation
KR20220097945A (en) Non-Closed Video Overlays
Chen et al. 3D registration based perception in augmented reality environment
Kao et al. A study on the markerless augmented reality for picture books
CN112634469A (en) Method and apparatus for processing image

Legal Events

Date Code Title Description
A201 Request for examination
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20160602

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20170626

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20190801

Year of fee payment: 7