KR101124560B1 - Automatic object processing method in movie and authoring apparatus for object service - Google Patents

Automatic object processing method in movie and authoring apparatus for object service Download PDF

Info

Publication number
KR101124560B1
KR101124560B1 KR1020100034012A KR20100034012A KR101124560B1 KR 101124560 B1 KR101124560 B1 KR 101124560B1 KR 1020100034012 A KR1020100034012 A KR 1020100034012A KR 20100034012 A KR20100034012 A KR 20100034012A KR 101124560 B1 KR101124560 B1 KR 101124560B1
Authority
KR
South Korea
Prior art keywords
tracking
frame
video
area
module
Prior art date
Application number
KR1020100034012A
Other languages
Korean (ko)
Other versions
KR20110114384A (en
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 KR1020100034012A priority Critical patent/KR101124560B1/en
Publication of KR20110114384A publication Critical patent/KR20110114384A/en
Application granted granted Critical
Publication of KR101124560B1 publication Critical patent/KR101124560B1/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/20Analysis of motion
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V40/00Recognition of biometric, human-related or animal-related patterns in image or video data
    • G06V40/10Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
    • G06V40/16Human faces, e.g. facial parts, sketches or expressions
    • G06V40/172Classification, e.g. identification
    • G06V40/173Classification, e.g. identification face re-identification, e.g. recognising unknown faces across different face tracks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04HBROADCAST COMMUNICATION
    • H04H60/00Arrangements for broadcast applications with a direct linking to broadcast information or broadcast space-time; Broadcast-related systems
    • H04H60/76Arrangements characterised by transmission systems other than for broadcast, e.g. the Internet
    • H04H60/81Arrangements characterised by transmission systems other than for broadcast, e.g. the Internet characterised by the transmission system itself
    • H04H60/82Arrangements characterised by transmission systems other than for broadcast, e.g. the Internet characterised by the transmission system itself the transmission system being the Internet

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Multimedia (AREA)
  • Theoretical Computer Science (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Oral & Maxillofacial Surgery (AREA)
  • Human Computer Interaction (AREA)
  • Signal Processing (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Image Analysis (AREA)

Abstract

본 발명은 동영상 내의 자동 객체화 방법 및 객체 서비스 저작 장치에 관한 것으로, 더욱 상세하게는 IPTV와 같은 양방향 콘텐츠 플랫폼에서 동영상 콘텐츠 내에 등장하는 객체와 관련된 부가정보를 제공하는 서비스의 저작시, 저작툴을 이용하여 동영상 내의 객체를 자동으로 검출하고 추적하는 방법 및 그러한 기능을 수행하는 객체 서비스 저작 장치에 관한 것이다.
본 발명에 의하면, 객체의 추적 및 검출을 함께 수행하여 이로부터 추적의 오류를 보정하고 정확한 객체 추적을 하게 하며, 또한 객체 검출 오류시 객체 병합 과정을 통하여 검출 오류를 시정할 수 있게 한다.
The present invention relates to an automatic objectification method and an object service authoring apparatus in a video, and more particularly, to an authoring service for providing additional information related to an object appearing in a video content in an interactive content platform such as IPTV, by using an authoring tool. A method for automatically detecting and tracking an object in a video and an object service authoring apparatus for performing such a function.
According to the present invention, the tracking and the detection of the object are performed together to correct the tracking error therefrom and to accurately track the object, and to correct the detection error through the object merging process in case of the object detection error.

Description

동영상 내의 자동 객체화 방법 및 객체 서비스 저작 장치{Automatic object processing method in movie and authoring apparatus for object service}Automatic object processing method in movie and authoring apparatus for object service}

본 발명은 동영상 내의 자동 객체화 방법 및 객체 서비스 저작 장치에 관한 것으로, 더욱 상세하게는 IPTV와 같은 양방향 콘텐츠 플랫폼에서 동영상 콘텐츠 내에 등장하는 객체와 관련된 부가정보를 제공하는 서비스의 저작시, 저작툴을 이용하여 동영상 내의 객체를 자동으로 검출하고 추적하는 방법 및 그러한 기능을 수행하는 객체 서비스 저작 장치에 관한 것이다.The present invention relates to an automatic objectification method and an object service authoring apparatus in a video, and more particularly, to an authoring service for providing additional information related to an object appearing in a video content in an interactive content platform such as IPTV, by using an authoring tool. A method for automatically detecting and tracking an object in a video and an object service authoring apparatus for performing such a function.

IPTV와 같은 양향방 콘텐츠 서비스 플랫폼에서는 서비스 제공자의 일방향적 컨텐츠 제공이 아닌 시청자의 의사를 능동적으로 수용할 수 있다. 이러한 IPTV 플랫폼을 기반으로 하여, 최근에는 저작자가 동영상 시청 중 관심 있는 객체를 인터페이스장치로 선택하면 해당 객체와 관련된 정보 및 광고정보 등을 제공하고 전자상거래를 유도하여 수익을 창출하는 객체 서비스가 개시되었다. 전술한 객체 서비스에 따르면, 시청자는 리모트 컨트롤을 사용하여 직접 동영상 내에서 객체를 선택해서 원하는 정보를 손쉽게 얻을 수 있으며, 또한 상품구매 및 다양한 부가서비스 이용이 가능하다. In an interactive content service platform such as IPTV, the intention of the viewer may be actively received, rather than the one-way content provision of the service provider. Based on the IPTV platform, recently, when an author selects an object of interest while watching a video as an interface device, an object service that provides information and advertisement information related to the object and induces e-commerce to generate revenue has been started. . According to the aforementioned object service, a viewer can easily obtain desired information by directly selecting an object in a video using a remote control, and can also purchase a product and use various additional services.

전술한 객체 서비스를 제공하기 위해, 서비스 저작자는 객체화 하고자 하는 동영상을 저작툴을 이용하여 객체를 추출 및 추적한다. 전술한 저작툴은 소정의 추적 알고리즘을 통해 해당 객체를 인식하고 자동으로 추적하게 된다. 그러나, 동영상의 종류, 특성에 따라 추적 알고리즘을 통해 자동으로 추적하는 것이 어려운 경우가 있다. 예를 들면 동영상에 노이즈가 있는 경우 또는 객체의 이동이 너무 빨라 저작툴이 동일객체로 인식하지 못하고 새로운 객체로 인식하는 경우 등이 있다. 이러한 경우 정확한 객체추적을 할 수 없어 오류가 발생하게 되며 객체 서비스의 정확도를 떨어뜨리게 된다.In order to provide the above-described object service, a service author extracts and tracks an object by using an authoring tool for a video to be objectified. The authoring tool described above recognizes and automatically tracks the object through a predetermined tracking algorithm. However, it may be difficult to automatically track through a tracking algorithm depending on the type and characteristics of the video. For example, if there is noise in the video, or the object is moving so fast that the authoring tool does not recognize it as the same object but recognizes it as a new object. In this case, accurate object tracking cannot be performed, resulting in an error and deteriorating the accuracy of the object service.

본 발명은 전술한 문제점을 해결하기 위해 창안된 것으로서, 객체의 추적 및 검출을 함께 수행하여 이로부터 추적의 오류를 보정하고 정확한 객체 추적을 하게 하는 데 그 목적이 있다. 또한 객체 검출 오류시 객체 병합 과정을 통하여 검출 오류를 시정할 수 있게 하는데 그 목적이 있다.SUMMARY OF THE INVENTION The present invention has been made to solve the above-mentioned problem, and an object thereof is to perform tracking and detection of objects together to correct errors in tracking and accurate object tracking. In addition, the object of the detection error can be corrected through the object merging process.

이와 같은 문제점을 해결하기 위하여 본 발명에 따른 동영상 객체정보 저작장치가 동영상에 나타나는 객체를 자동으로 추적하는 방법은, (a) 동영상 내 현재 프레임에서의 장면전환 여부를 검출하여, 검출된 경우는 단계(d)로 진행하고, 검출되지 않은 경우는 단계(b)로 진행하는 단계; (b) 이전 프레임의 추적 대상 객체가 있는지 검색하여 없는 경우는 단계(d)로 진행하고, 있는 경우는 단계(c)로 이동하는 단계; (c) 상기 단계(b)의 추적 대상 객체를 현재 프레임에서 추적하는 단계; (d) 현재 프레임에 등장하는 객체의 영역을 검출하는 단계; 및 (e) 상기 단계(c)에서 추적된 객체 영역이 현재 프레임에 존재하는 경우, 그 객체 영역과 상기 단계(d)에서 검출된 객체 영역 사이의 거리가 특정 임계값 이하이면 상기 단계(c)에서 추적된 객체의 영역을 상기 단계(b)의 추적 대상 객체의 현재 프레임 내에서 추적된 영역정보로서 저장하고, 상기 임계값 이상이면 상기 단계(d)에서 검출된 객체 영역을 상기 단계(b)의 추적 대상 객체의 현재 프레임 내에서 추적된 영역정보로서 저장하는 단계;를 포함한다.In order to solve the above problems, the method for automatically tracking an object appearing in a video by the video object information authoring apparatus according to the present invention includes: (a) detecting whether a scene change is performed on a current frame in the video and, if detected, (d), if not detected, proceed to step (b); (b) proceeding to step (d) if there is no tracking target object of the previous frame, and if not, moving to step (c); (c) tracking the object to be tracked in step (b) in the current frame; (d) detecting an area of the object appearing in the current frame; And (e) if the object area tracked in step (c) exists in the current frame, and if the distance between the object area and the object area detected in step (d) is less than or equal to a certain threshold, step (c) In step (b), the area of the tracked object is stored as tracked area information in the current frame of the object to be tracked in step (b). And storing the information as tracked area information in the current frame of the object to be tracked.

상기 객체는, 사람의 얼굴, 상반신 또는 하반신일 수 있다.The object may be a human face, upper body or lower body.

상기 단계(c)의 객체 추적 단계는, (c1) 프레임의 색상 공간 양자화를 수행하는 단계; (c2) 전 프레임의 추적된 객체 영역 위치에서의 가중 히스토그램과 현재 프레임의 객체 영역 위치에서의 가중 히스토그램의 유사성을 계산하는 단계; (c3) 상기 유사성으로부터, 다음 위치에서의 객체 영역의 위치를 계산하는 단계; (c4) 상기 단계(c3)의 위치로 객체가 이동한 것으로 가정한 후, 객체 영역의 위치값이 특정 값에 수렴할 때까지 상기 단계(c2) 및 단계(c3)의 과정을 반복하는 단계; 및 (c5) 상기 수렴하는 위치값을, 상기 객체의 다음 프레임에서의 위치로 결정하는 단계를 포함할 수 있다.The object tracking step of (c) may include: (c1) performing color space quantization of a frame; (c2) calculating a similarity between the weighted histogram at the tracked object region position of the previous frame and the weighted histogram at the object region position of the current frame; (c3) calculating, from the similarity, the position of the object area at the next position; (c4) after assuming that the object has moved to the position of step (c3), repeating the steps (c2) and (c3) until the position value of the object region converges to a specific value; And (c5) determining the convergent position value as the position in the next frame of the object.

상기 단계(d)의 객체 검출 단계는, (d1) 이미지의 특징을 파악하기 위한 특정 패턴의 마스크(mask)들을 이용하여, 데이터베이스에 저장된 다수의 사람 얼굴 이미지들에 대한 반응값을 산출하는 단계; (d2) 상기 단계(d1)에서 산출된 반응값으로부터, 상기 사람 얼굴 이미지들에 대해 기 설정된 기준값 이상의 반응값을 나타내는 마스크 및 각 마스크 별로 나타나는 반응값을 파악하고, 이를 이용하여 사람 얼굴 이미지 검출기를 생성하는 단계; 및 (d3) 현재 프레임의 이미지를 부분별로 상기 검출기에 통과시켜, 통과되는 영역을 사람 얼굴 이미지로서 결정하는 단계를 포함할 수 있다.The object detecting of the step (d) may include: (d1) calculating response values for a plurality of human face images stored in a database using masks of a specific pattern for identifying a feature of the image; (d2) From the response values calculated in step (d1), a mask indicating a response value greater than or equal to a predetermined reference value with respect to the human face images and a response value for each mask are grasped, and a human face image detector is used by using the same. Generating; And (d3) passing the image of the current frame to the detector for each part to determine the area to be passed as the human face image.

상기 단계(d3) 이전에, (d30) 현재 프레임에서 사람 얼굴 피부 색 영역을 검출하는 단계를 더 포함하고, 상기 단계(d3)에서 상기 검출기에 통과시키는 영역은, 상기 단계(d30)에서 검출된 사람 얼굴 피부 색 영역으로 한정할 수 있다.(D30) before the step (d3), further comprising the step of detecting a human face skin color gamut in the current frame, the area to pass through the detector in the step (d3), is detected in the step (d30) It can be limited to the human face skin color gamut.

상기 단계(d3) 이후, (d4) 검출된 사람 얼굴 영역을 기준으로 인체 비율을 계산하는 단계; 및 (d5) 상기 인체 비율로부터 현재 프레임에서 상반신 또는 하반신의 영역을 산출하는 단계를 더 포함할 수 있다.After the step (d3), (d4) calculating the human body ratio based on the detected human face area; And (d5) calculating a region of the upper body or the lower body in the current frame from the ratio of the human body.

상기 단계(e) 이후, (f) 현재 장면으로의 장면전환 프레임과 현재 장면 진행 중 최초로 특정객체(이하 '병합요청객체'라 한다)가 검출된 프레임(이하 '최초검출 프레임'이라 한다) 사이의 특정 프레임(이하 '최초등장 프레임'이라 한다)에서, 상기 최초등장 프레임의 특정영역에 해당하는 객체(이하 '추적요청객체'라 한다)에 대한 추적요청을 입력받는 단계; (g) 상기 최초등장 프레임으로부터 상기 추적요청객체에 대한 추적을 수행하면서 추적된 영역정보를 저장하는 단계; (h) 상기 추적요청객체의 추적된 위치와 상기 최초검출 프레임 상의 상기 병합요청객체의 위치 사이의 거리가 기준값 이하가 된 경우, 추적을 중지하는 단계; 및 (i) 상기 추적요청객체에 대한 상기 추적 영역정보를 상기 병합요청객체에 대한 상기 최초검출 프레임 이후의 추적 영역정보에 병합하여 저장하는 단계를 더 포함할 수 있다.After the above step (e), (f) between the scene change frame to the current scene and the frame in which a specific object (hereinafter referred to as a "merge request object") is first detected during the current scene (hereinafter referred to as an "first detection frame"). Receiving a tracking request for an object (hereinafter, referred to as a "tracking request object") corresponding to a specific area of the first appearance frame in a specific frame of the following; (g) storing tracked area information while performing tracking on the tracking request object from the first appearance frame; (h) stopping tracking if the distance between the tracked position of the tracking request object and the position of the merged request object on the initial detection frame is less than or equal to a reference value; And (i) merging and storing the tracking area information for the tracking request object into tracking area information after the first detection frame for the merging request object.

상기 단계(e)와 단계(f) 사이에, (f01) 상기 추적요청객체의 영역을 입력받는 단계를 더 포함할 수 있다.Between step (e) and step (f), (f01) may further comprise the step of receiving the area of the tracking request object.

상기 단계(e)와 단계(f) 사이에, (f02) 상기 장면전환 프레임과 상기 최초검출 프레임 사이에서 상기 추적요청객체를 자동으로 검출하여 사용자에게 제공하는 단계를 더 포함할 수 있다.Between step (e) and step (f), (f02) it may further comprise the step of automatically detecting the tracking request object between the scene change frame and the first detection frame to provide to the user.

상기 단계(g)에서, 상기 추적요청객체에 대한 추적은, 수동 추적 또는 자동 추적 방식에 의해 이루어질 수 있다.In step (g), the tracking of the tracking request object may be performed by manual tracking or automatic tracking.

본 발명의 다른 측면에 따르면, 동영상에 등장하는 객체에 대하여 양방향으로 부가적인 정보를 제공하는 객체 동영상 서비스를 저작하는 장치는, 저작자 단말에 동영상 객체 편집도구를 제공하고, 상기 편집도구상에 동영상을 추가하는 프로젝트 관리모듈; 상기 프로젝트 관리모듈이 추가한 동영상을 재생하는 동영상 재생모듈; 동영상 재생모듈이 재생하는 동영상에서 정지 화면(이하 '프레임'이라 한다)을 추출하고, 추출된 프레임에서의 장면전환 여부를 검출하며, 추출된 프레임에서 객체 존재 영역을 검출하고, 검출된 객체 영역을 이후의 프레임에서 추적하여 상기 객체 영역 추적결과를 저장하는 객체화 엔진부; 상기 객체화 엔진부를 제어하여 객체 추적과 관련한 일련의 처리를 수행하는 객체화 편집모듈; 및 객체 서비스 저작을 위한 각종 데이터를 저장하는 데이터베이스를 포함한다.According to another aspect of the present invention, an apparatus for authoring an object video service that provides additional information in both directions with respect to an object appearing in a video includes providing a video object editing tool to an author terminal, and displaying the video on the editing tool. A project management module for adding; A video playback module for playing back the video added by the project management module; Extracts a still picture (hereinafter referred to as a 'frame') from a video played by the video playback module, detects whether a scene is changed in the extracted frame, detects an object existence region in the extracted frame, and detects the detected object region. An objectification engine unit for tracking the subsequent frame and storing the object region tracking result; An objectization editing module which controls the objectification engine unit to perform a series of processes related to object tracking; And a database that stores various data for object service authoring.

상기 객체화 엔진부는, 추출된 프레임에서 장면전환(이하 '샷(shot)'이라 한다) 여부를 검출하는 장면전환 검출모듈; 추출된 프레임에서 객체 존재 영역을 검출하는 객체 검출모듈; 검출된 객체 영역을 이후의 프레임에서 추적하는 객체 추적모듈; 및 현재 프레임에서 새로이 검출된 객체영역 및 이전 프레임의 추적대상 객체에 대하여 현재 프레임에서 추적된 객체영역으로부터, 상기 추적대상 객체의 현재 프레임에서의 위치하는 영역을 결정하는 추적객체영역 결정모듈을 포함할 수 있다.The objectification engine unit may include: a scene change detection module detecting whether a scene change (hereinafter, referred to as a shot) in the extracted frame; An object detection module for detecting an object existence region in the extracted frame; An object tracking module for tracking the detected object area in a subsequent frame; And a tracking object region determination module for determining a region located in the current frame of the tracking object from the object region newly detected in the current frame and the object region tracked in the current frame with respect to the tracking object of the previous frame. Can be.

상기 데이터베이스는, 얼굴 검출에 이용되는 사람 얼굴 이미지 데이터를 저장하는 검출용 이미지 데이터베이스를 포함할 수 있다.The database may include a detection image database that stores human face image data used for face detection.

상기 객체화 편집모듈은, 객체를 자동으로 검출 및 추적하는 객체 자동추적부를 포함할 수 있다.The objectization editing module may include an object tracking unit that automatically detects and tracks an object.

상기 객체화 편집모듈은, 입력된 사용자의 마우스의 이동 신호에 따라 상기 객체영역의 위치를 변경하는 객체 수동추적부를 더 포함할 수 있다.The objectization editing module may further include an object manual tracking unit that changes the position of the object area according to the input signal of the mouse movement.

상기 데이터베이스는, 동영상에 등장하는 각 개인의 얼굴정보를 저장하는 개인얼굴 데이터베이스를 포함하고, 상기 객체화 엔진부는, 상기 얼굴정보로부터, 동영상에 등장하는 인물이 누구인지를 인식하는 얼굴 인식모듈을 더 포함할 수 있다.The database includes a personal face database that stores face information of each person appearing in the video, and the objectification engine unit further includes a face recognition module that recognizes who is the person who appears in the video from the face information. can do.

상기 객체화 엔진부는, 장면전환 검출모듈이 검출한 다수의 샷을 특정한 조건에 따라 묶어서, 관련된 장면의 모임(이하, '씬(scene)'이라 한다)을 만드는 작업을 수행하는 장면 그룹핑 모듈을 더 포함할 수 있다.The objectization engine unit may further include a scene grouping module configured to group a plurality of shots detected by the scene change detection module according to a specific condition and to create a group of related scenes (hereinafter, referred to as a 'scene'). can do.

본 발명에 의하면, 객체의 추적 및 검출을 함께 수행하여 이로부터 추적의 오류를 보정하고 정확한 객체 추적을 하게 하며, 또한 객체 검출 오류시 객체 병합 과정을 통하여 검출 오류를 시정할 수 있게 하는 효과가 있다.According to the present invention, the tracking and the detection of the object are performed together to correct the error of the tracking and accurate object tracking. Also, when the object detection error is detected, the detection error can be corrected through the object merging process. .

도 1은 본 발명의 실시예에 따른 동영상내의 객체서비스 저작장치의 전체 시스템 구조를 도시한 블록도.
도 2는 본 발명의 실시예에 따른 객체화 편집모듈의 구조를 도시한 도면.
도 3은 동영상 객체정보 저작장치가 동영상에 나타나는 객체를 자동으로 추적하는 방법의 순서도.
도 4는 객체가 검출된 프레임으로부터 객체 추적을 수행한 후, 검출 프레임 이전의 특정 프레임에서 상기 객체가 등장함에도 불구하고 검출되지 않은 검출오류가 있었음이 파악된 경우, 그 지점으로부터 다시 객체 추적을 실시하여 앞서 추적된 영역정보와 병합하는 방법을 나타내는 순서도.
도 5는 사람 얼굴을 검출하기 위해, 이미지의 특징을 파악하기 위한 특정 패턴의 마스크(mask)들을 이용하여, 데이터베이스에 저장된 다수의 사람 얼굴 이미지들에 대한 반응값을 산출하는 도면.
도 6은 얼굴 검출에 사용되는 긍정적인 데이터베이스 이미지들의 예를 나타내는 도면.
도 7은 인체 비율도를 나타내는 도면.
1 is a block diagram showing the overall system structure of an object service authoring apparatus in a video according to an embodiment of the present invention.
2 is a diagram illustrating a structure of an objectification editing module according to an embodiment of the present invention.
3 is a flowchart illustrating a method for automatically tracking an object appearing in a video by the video object information authoring apparatus.
4, after performing object tracking from a frame in which an object is detected, if it is found that there is an undetected detection error even though the object appears in a specific frame before the detection frame, the object is traced again from the point. To merge with previously tracked area information.
FIG. 5 is a diagram for calculating response values for a plurality of human face images stored in a database using masks of a specific pattern for identifying a feature of an image to detect a human face. FIG.
6 illustrates an example of positive database images used for face detection.
7 is a diagram showing a human body ratio diagram;

이하 첨부된 도면을 참조로 본 발명의 바람직한 실시예를 상세히 설명하기로 한다. 이에 앞서, 본 명세서 및 청구범위에 사용된 용어나 단어는 통상적이거나 사전적인 의미로 한정해서 해석되어서는 아니되며, 발명자는 그 자신의 발명을 가장 최선의 방법으로 설명하기 위해 용어의 개념을 적절하게 정의할 수 있다는 원칙에 입각하여 본 발명의 기술적 사상에 부합하는 의미와 개념으로 해석되어야만 한다. 따라서, 본 명세서에 기재된 실시예와 도면에 도시된 구성은 본 발명의 가장 바람직한 일 실시예에 불과할 뿐이고 본 발명의 기술적 사상을 모두 대변하는 것은 아니므로, 본 출원시점에 있어서 이들을 대체할 수 있는 다양한 균등물과 변형예들이 있을 수 있음을 이해하여야 한다.
Hereinafter, exemplary embodiments of the present invention will be described in detail with reference to the accompanying drawings. Prior to this, terms or words used in the specification and claims should not be construed as having a conventional or dictionary meaning, and the inventors should properly explain the concept of terms in order to best explain their own invention. Based on the principle that can be defined, it should be interpreted as meaning and concept corresponding to the technical idea of the present invention. Therefore, the embodiments described in this specification and the configurations shown in the drawings are merely the most preferred embodiments of the present invention and do not represent all the technical ideas of the present invention. Therefore, It is to be understood that equivalents and modifications are possible.

도 1은 본 발명의 실시예에 따른 동영상내의 객체서비스 저작장치의 전체 시스템 구조를 도시한 블록도이다.1 is a block diagram showing the overall system structure of an object service authoring apparatus in a video according to an embodiment of the present invention.

도시한 바와 같이, 본 발명의 객체 서비스 저작장치(100)는 저작작업을 위한 어플리케이션부(200)와, 객체화를 위한 엔진을 제공하는 알고리즘 부(300)와, 객체 서비스 저작을 위한 각종 데이터를 저장하는 데이터베이스(500)를 포함한다.As shown, the object service authoring apparatus 100 of the present invention stores an application unit 200 for authoring work, an algorithm unit 300 for providing an engine for objectization, and various data for object service authoring. Database 500 is included.

상세하게는, 어플리케이션부(200)는 저작자 단말에 그래픽 유저 인터페이스(GUI)를 제공하고, 동영상 재생 및 병렬처리를 지원하는 기능을 수행한다. 이를 위해, 어플리케이션부(200)는 GUI에 관계된 프로젝트 관리모듈(210), 객체화 편집모듈(220), 동영상 재생모듈(230) 및 편집정보 노출모듈(260)을 포함한다. 또한 도시한 바와 같이, 동영상 재생지원 및 병렬처리를 위해 동영상 지원모듈(240) 및 병렬처리모듈(250)을 더 포함할 수 있다.In detail, the application unit 200 provides a graphic user interface (GUI) to the author terminal, and performs a function of supporting video playback and parallel processing. To this end, the application unit 200 includes a project management module 210, an objectization editing module 220, a video playback module 230 and the editing information exposure module 260 related to the GUI. In addition, as shown, the video support module 240 and the parallel processing module 250 may be further included for video playback support and parallel processing.

먼저, 프로젝트 관리모듈(210)은 저작을 위한 프로젝트 그룹을 생성, 수정 및 삭제하는 기능, 단일 프로젝트 및 서브 프로젝트를 생성, 수정, 삭제, 분리, 통합하는 기능, 및 작업 히스토리를 저장하는 기능을 수행하는 모듈이다. First, the project management module 210 performs a function of creating, modifying, and deleting a project group for authoring, creating, modifying, deleting, separating, and integrating a single project and a subproject, and storing a work history. Module.

객체화 편집모듈(220)은 동영상에 등장하는 객체를 자동 및 수동으로 검출 및 추적하는 기능을 수행하는 모듈이다. 이를 위해, 객체화 편집모듈은 자동 및 수동검출부를 포함하며, 이에 대한 상세한 설명은 이하에서 후술한다.The objectization editing module 220 is a module for automatically and manually detecting and tracking an object appearing in a video. To this end, the objectification editing module includes an automatic and manual detection unit, a detailed description thereof will be described later.

동영상 재생모듈(230)은 저작편집툴상에서 동영상 파일의 영상 및 음원을 실행시키는 기능을 수행하는 모듈이다. 이러한 동영상 재생모듈(230)은 MicrosoftTM 사의 DirectX 9.0c SDK 가 제공하는 Directshow API를 이용하여 구현될 수 있다.The video playback module 230 is a module that executes a video and a sound source of a video file on an editing tool. The video playback module 230 may be implemented using the Directshow API provided by DirectX 9.0c SDK of Microsoft TM .

편집정보 노출모듈(260)은 동영상 편집시 시간축에 대하여 객체의 추적구간을 보여주는 기능을 수행하는 모듈이다. 이러한 편집정보 노출모듈은 동영상의 프레임을 순차적으로 나열하여 표시함으로서, 각 장면 및 장면에 등장하는 객체가 동영상에서 어느 시점에 위치하는가를 보다 용이하게 확인할 수 있다.The editing information exposing module 260 is a module for displaying a tracking section of an object with respect to a time axis when editing a video. The editing information exposure module sequentially displays and displays frames of a video, thereby making it easier to determine at what point in each scene and at which point an object appearing in the scene is located.

또한, 동영상 지원모듈(240)은 동영상 재생모듈(230)이 동영상을 재생할 수 있도록 필터 그래프(Filter graph)를 생성 및 제공하고, 오디오 출력을 지원하는 기능을 수행하는 모듈이다.In addition, the video support module 240 is a module that generates and provides a filter graph so that the video playback module 230 can play a video, and supports an audio output.

병렬처리모듈(250)은 객체화 저작작업시 다수의 저작작업을 동시에 수행하도록 지원하는 기능을 수행하는 모듈이다.The parallel processing module 250 is a module that performs a function of supporting a plurality of authoring operations at the same time during the objectification authoring.

전술한 구조에 따라, 객체서비스 저작장치는 저작자에게 저작작업을 수행하기 위한 GUI를 제공한다. 이하, 객체서비스 저작장치를 구성하는 모듈 중, 객체를 자동으로 추적하기 위한 객체화 엔진을 제공하는 알고리즘 부(300)의 구조를 설명한다.In accordance with the above-described structure, the object service authoring apparatus provides the author with a GUI for performing authoring. Hereinafter, a structure of an algorithm unit 300 that provides an objectization engine for automatically tracking an object among modules constituting an object service authoring apparatus will be described.

알고리즘 부(300)는 GUI와 객체화 엔진을 연결하는 인터페이스(310) 및 객체화 엔진부를 포함한다.The algorithm unit 300 includes an interface 310 connecting the GUI and the objectization engine and an objectization engine unit.

객체화 엔진부는 동영상 재생모듈(230)이 재생하는 동영상에서 정지 화면(이하 '프레임'이라 한다)을 추출하고, 추출된 프레임에서의 장면전환 여부를 검출하며, 추출된 프레임에서 객체 존재 영역을 검출하고, 검출된 객체 영역을 이후의 프레임에서 추적하여 상기 객체 영역 추적결과를 저장하는 역할을 수행한다. 이러한 객체화 엔진부는 장면전환 검출모듈(320), 객체 검출모듈(340), 객체 추적모듈(350) 및 추적객체영역 결정모듈(370)을 포함하며, 장면 그룹핑 모듈(330), 얼굴 인식모듈(360)을 더 포함할 수 있다. 데이터베이스(500)에는, 얼굴 검출에 이용되는 사람 얼굴 이미지 데이터를 저장하는 검출용 이미지 데이터베이스를 포함한다.The objectization engine unit extracts a still picture (hereinafter referred to as a 'frame') from a video played by the video playing module 230, detects whether a scene is changed in the extracted frame, and detects an object existence region in the extracted frame. And tracks the detected object region in a subsequent frame and stores the object region tracking result. The objectification engine unit includes a scene change detection module 320, an object detection module 340, an object tracking module 350, and a tracking object region determination module 370. The scene grouping module 330 and the face recognition module 360 are described. ) May be further included. The database 500 includes a detection image database that stores human face image data used for face detection.

장면전환 검출모듈(320)은, 두 인접한 프레임 사이의 차이값에 따른 임계값을 이용하여 장면전환을 검출하는 기능을 수행하는 모듈이다. 장면전환(이하, '샷(shot)'이라 한다)이란, 급진적인 프레임 전환이나 점진적인 프레임 전환을 감지하여 구분된 단위로서, 크게 급진적 샷과 점진적 샷으로 구분할 수 있다. 먼저, 급진적 샷은 각 프레임사이의 차이값 변화가 매우 심하게 나타나는 프레임들의 변화를 말하는 것으로, 장면들의 갑작스런 변화가 발생하는 프레임들 사이에서 발생한다. 또한, 점진적 샷은 페이드 인/아웃, 디졸브와 같은 카메라 특수효과에 의해 발생하는 현상으로 장면들의 점차적인 변화가 발생하는 프레임들 사이에서 발생한다. 장면전환 검출모듈(320)은 컬러 히스토그램을 이용한 검출방법, 카이-스퀘어 테스트를 이용한 검출방법 등으로 구현될 수 있으며, 본 실시예에서는 전술한 두 알고리즘을 결합한 변형된 카이 스퀘어 테스트 검출방법으로 구현한다.The scene change detection module 320 is a module that detects a scene change by using a threshold value according to a difference between two adjacent frames. A scene change (hereinafter, referred to as a 'shot') is a divided unit that detects a radical frame change or a gradual frame change, and can be divided into a radical shot and a gradual shot. First, a radical shot refers to a change in frames in which a difference change between each frame is very severe, and occurs between frames in which a sudden change in scenes occurs. Incremental shots are also caused by camera special effects such as fade in / out and dissolve, which occur between frames where gradual changes in the scene occur. The scene change detection module 320 may be implemented by a detection method using a color histogram, a detection method using a chi-square test, or the like. In this embodiment, the scene change detection module 320 may be implemented as a modified chi square test detection method combining the above-described two algorithms. .

장면 그룹핑모듈(330)은, 장면전환을 그룹핑하는 기능을 수행하는 모듈이다. 장면 그룹핑이란, 장면전환 검출모듈(320)이 검출한 다수의 샷을 특정한 조건에 따라 묶어서, 위치 또는 줄거리 상의 사건에 따라 하나로 묶을 수 있는 비교적 적은 수의 관련된 장면의 모임(이하, '씬(scene)'이라 한다)을 만드는 작업을 말한다. 본 실시예에서는 동영상 편집은 전술한 샷 및 씬 단위로 처리된다. The scene grouping module 330 is a module that performs a function of grouping scene transitions. Scene grouping is a group of relatively small number of related scenes (hereinafter, referred to as 'scenes') that can group a plurality of shots detected by the scene change detection module 320 according to a specific condition and group them together according to an event on a position or a plot. ')' Is the work of making. In the present embodiment, video editing is processed in units of shots and scenes described above.

객체 검출모듈(340)은, 추출된 프레임에서 객체 존재 영역을 검출하는데, 데이터베이스(500)에 저장된 다수의 얼굴샘플 이미지를 이용하여 학습단계를 수행하고, 이를 소정의 알고리즘에 적용하여 프레임에 등장하는 객체의 얼굴영역을 검출하는 기능을 수행한다. 이러한 객체 검출모듈(340)은 학습단계와 검출단계를 통해 이미지 검출을 수행하는 비올라와 존스(Viola and Jones) 알고리즘이 적용된다. 먼저 학습단계에서는 다양한 하-웨이블릿 특징집합(Haar-wavelet feature set)을 구하고, 이를 아다부스트(Adaboost) 알고리즘을 통해 검출기를 구한다. 이후 검출단계에서는 학습단계에서 구한 검출기를 이용해 최종적으로 얼굴을 검출한다.The object detecting module 340 detects an object present region in the extracted frame, performs a learning step using a plurality of face sample images stored in the database 500, and applies the same to a predetermined algorithm. Detect the face area of the object. The object detection module 340 is applied to the Viola and Jones algorithm which performs image detection through a learning step and a detection step. First, in the learning phase, various haar-wavelet feature sets are obtained, and detectors are obtained through an Adaboost algorithm. In the detection step, the face is finally detected using the detector obtained in the learning step.

객체 추적모듈(350)은, 소정의 알고리즘을 통해 동영상 내의 객체이동을 추적하는 기능을 수행하는 모듈이다. 본 실시예의 객체 추적모듈(350)은 Meanshift 알고리즘을 이용하여 객체를 추적하는 데, 먼저 색상공간 양자화를 통해 계산속도를 향상시키고, 가중 히스토그램을 계산한 후 유사성을 이용하여 다음 객체의 위치를 계산한다. 이후, 그 위치로 객체가 이동했다고 가정 후 다시 객체의 위치가 수렴할 때까지 계산을 반복하여 객체의 이동을 추적한다. The object tracking module 350 is a module that performs a function of tracking object movement in a video through a predetermined algorithm. In the present embodiment, the object tracking module 350 tracks an object using a Meanshift algorithm. First, the calculation speed is improved through color space quantization, a weighted histogram is calculated, and the position of the next object is calculated using similarity. . Subsequently, after assuming that the object has moved to the position, the calculation is repeated until the position of the object converges to track the movement of the object.

얼굴 인식모듈(360)은, 서로 다른 얼굴형상들을 모델링하고, 이를 이용하여 객체 검출모듈(340)이 검출한 얼굴영역에 대하여 다양한 얼굴 영상 데이터를 기반으로 각 개인의 얼굴을 나타내는 HMM(Hidden Markov Model) 알고리즘을 추론함으로서 개인의 얼굴을 식별하는 기능을 수행한다. 또한 얼굴 인식모듈(360)을 포함하는 경우, 데이터베이스(500)에는, 동영상에 등장하는 각 개인의 얼굴정보를 저장하는 개인얼굴 데이터베이스를 포함한다.The face recognition module 360 models different face shapes, and uses the HMM (Hidden Markov Model) to represent a face of each individual based on various face image data of the face region detected by the object detection module 340 using the face recognition module 360. Inference by the algorithm performs the function of identifying the face of the individual. In addition, when the face recognition module 360 is included, the database 500 includes a personal face database that stores face information of each person appearing in the video.

추적객체영역 결정모듈(370)은, 현재 프레임에서 새로이 검출된 객체영역 및 이전 프레임의 추적대상 객체에 대하여 현재 프레임에서 추적된 객체영역으로부터, 상기 추적대상 객체의 현재 프레임에서의 위치하는 영역을 결정한다.The tracking object region determination module 370 determines a region located in the current frame of the tracking object from the object region newly detected in the current frame and the object region tracked in the current frame with respect to the tracking object of the previous frame. do.

전술한 구조에 따라, 본 발명의 객체서비스 저작장치(100)는 동영상에 등장하는 객체를 검출 및 추적하고, 동영상을 편집하여 객체화할 수 있다. 여기서, 전술한 객체화 편집모듈(220)은, 도 2에 도시한 바와 같이 객체자동 추적부(221) 및 객체수동추적부(225)를 포함한다. 객체 자동추적부(221)는 객체화 엔진을 통해 객체가 자동추적이 가능한 경우에 이용되며, 객체 수동추적부(225)는 객체의 자동추적이 불가능한 경우 저작자의 조작에 따라 객체를 검출 및 추적한다.
According to the above-described structure, the object service authoring apparatus 100 of the present invention may detect and track an object appearing in a video, and may edit and object the video. Here, the objectification editing module 220 described above includes an object automatic tracking unit 221 and an object manual tracking unit 225 as shown in FIG. 2. The object automatic tracking unit 221 is used when the object can be automatically tracked through the objectization engine, and the object manual tracking unit 225 detects and tracks the object according to the author's operation when the object can not be automatically tracked.

도 2는 본 발명의 실시예에 따른 객체화 편집모듈의 구조를 도시한 도면이다.2 is a diagram illustrating a structure of an objectization editing module according to an embodiment of the present invention.

도시한 바와 같이, 본 발명의 객체화 편집모듈(220)은, 객체화 엔진과 연동하여 객체를 자동으로 검출 및 추적하는 객체 자동추적부(221)를 포함하고, 저작자의 조작에 의해 객체를 수동으로 검출 및 추적하는 객체 수동추적부(225)를 더 포함할 수 있다.As illustrated, the objectization editing module 220 of the present invention includes an object automatic tracking unit 221 which automatically detects and tracks an object in association with an objectification engine, and manually detects an object by an author's operation. And a manual tracking unit 225 for tracking.

객체화 편집모듈(220)은 도 1을 참조하여 전술한 객체화 엔진부의 각 모듈을 제어하여 객체 추적과 관련한 일련의 처리를 수행한다. 특히 본 발명에서는 주로 객체자동 추적부(221)가 객체화 엔진부의 각 모듈을 제어하게 된다.
The objectification editing module 220 controls each module of the objectization engine unit described above with reference to FIG. 1 to perform a series of processes related to object tracking. In particular, in the present invention, the object automatic tracking unit 221 controls each module of the objectization engine unit.

도 3은 동영상 객체정보 저작장치가 동영상에 나타나는 객체를 자동으로 추적하는 방법의 순서도이다.3 is a flowchart of a method for automatically tracking an object appearing in a video by the video object information authoring apparatus.

우선 객체 서비스 저작을 위해 동영상 내에서 특정 프레임을 추출하고(S301), 현재 프레임에서 장면전환이 되었는지 여부를 검출하여(S302), 장면전환이 검출된 경우는 객체 추적을 중지한다(S310). 이후 새로운 객체를 그 프레임에서 추출하여(S311) 이후 그 객체에 대한 객체 추적을 실시하게 된다. 장면전환이 검출되지 않은 경우, 이전 프레임에서 검출된 객체, 즉 현재 추적 대상인 객체가 있는지를 데이터베이스(500)에서 검색한다(S303). 추적 대상 객체가 없는 경우는 객체 추적을 중지하고(S310), 이후 새로운 객체를 그 프레임에서 추출하여(S311) 이후 그 객체에 대한 객체 추적을 실시하게 된다. 추적 대상 객체가 있는 경우는 그 추적 대상 객체를 추적하여, 현재 프레임에서 어느 영역에 그 객체가 존재하는지를 파악한다(S304).First, a specific frame is extracted from the video for object service authoring (S301), and whether the scene change is performed in the current frame (S302), and if the scene change is detected, object tracking is stopped (S310). After that, a new object is extracted from the frame (S311), and then object tracking is performed on the object. If no scene change is detected, the database 500 searches whether there is an object detected in the previous frame, that is, an object currently being tracked (S303). If there is no object to be tracked, object tracking is stopped (S310), a new object is extracted from the frame (S311), and then object tracking is performed on the object. If there is a tracking object, the tracking object is tracked to determine in which region the object exists in the current frame (S304).

이렇게 추적된 객체 영역에 오류가 있을 경우를 보정하기 위하여 객체 검출을 병행한다. 즉, 전술한 객체 추적과 별도로, 현재 프레임에 등장하는 객체의 영역을 새로이 검출하여(S305), 단계 S304에서 추적된 객체가 현재 프레임 가운데 존재하는 영역과 단계 S305에서 새로이 검출된 객체영역 간의 거리를 측정하고(S306), 측정된 거리값이 기 설정된 임계값 이하인 경우 상기 단계 S304에서 추적된 객체영역을 현재 프레임에서 그 추적대상 객체가 존재하는 영역, 즉 추적된 영역으로서 추적정보를 저장하고(S309), 상기 임계값 이상인 경우 상기 단계 S305에서 검출된 객체영역을 현재 프레임에서 그 추적대상 객체가 존재하는 영역, 즉 추적된 영역으로서 추적정보를 저장하게 된다(S308).Object detection is performed in parallel to correct an error in the tracked object area. That is, apart from the object tracking described above, the area of the object appearing in the current frame is newly detected (S305), and the distance between the area in which the object tracked in the current frame exists in the current frame and the object area newly detected in step S305 is determined. If the measured distance value is less than or equal to the preset threshold value, the tracking information is stored as the area where the object to be tracked exists in the current frame, that is, the tracked area when the measured distance value is equal to or less than the preset threshold value (S309). If the threshold value is greater than or equal to the threshold value, the tracking information is stored in the object area detected in the step S305 as the area where the tracking target object exists in the current frame, that is, the tracked area (S308).

상기 단계 S304의 객체 추적 방법을 설명하면, 먼저 추적 처리 시간을 줄이기 위해 프레임의 색상 공간 양자화를 수행하고, 전 프레임의 추적된 객체 영역 위치에서의 가중 히스토그램과 현재 프레임의 객체 영역 위치에서의 가중 히스토그램의 유사성을 계산한다. 이러한 유사성으로부터, 다음 위치에서의 객체 영역의 위치를 계산한다. 유사성은 Battacharya coefficient를 이용하여 계산한다. 그 후에 2개의 가중 히스토그램 값을 사용하여 가중치를 계산한다. 계산한 가중치를 이용하여 다음 위치에서의 객체 영역의 위치를 계산한다. 그 위치로 객체가 이동한 것으로 가정한 후, 이러한 계산을 계산한 객체 영역의 위치가 수렴할 때까지 반복한다. 계산한 영역의 위치가 수렴하면 계산을 멈추고, 최종적으로 계산한 영역의 위치가 다음 프레임에서의 객체의 위치가 된다. 여기서 계산을 반복할 때 값이 수렴하지 않을 경우가 발생할 수 있으므로 반복하는 횟수에 제한을 두어 무한대로 게산을 반복하지 않도록 하는 것이 바람직하다. 객체 추적 도중 객체가 다른 물체와 겹쳐져 없어지거나 화면 밖으로 나갈 시 추적을 중지한다.Referring to the object tracking method of step S304, first, the color space quantization of the frame is performed to reduce the tracking processing time, and the weighted histogram at the tracked object region position of the previous frame and the weighted histogram at the object region position of the current frame. Calculate the similarity of. From this similarity, the position of the object area at the next position is calculated. Similarity is calculated using the Battacharya coefficient. The weight is then calculated using the two weighted histogram values. The position of the object area at the next position is calculated using the calculated weight. Assuming that the object has moved to that location, we repeat this calculation until the location of the computed object area converges. When the position of the calculated area converges, the calculation stops, and the position of the finally calculated area becomes the position of the object in the next frame. Since the value may not converge when the calculation is repeated, it is desirable to limit the number of repetitions so that the calculation is not repeated indefinitely. During object tracking, tracking stops when an object overlaps another object or goes out of the screen.

한편, 사람의 상반신 또는 하반신 영역의 검출 방법은, 먼저 현재 프레임에 등장하는 사람 얼굴 영역을 검출하고, 검출된 얼굴 영역을 기준으로 인체 비율을 계산한다. 이러한 인체 비율로부터 상반신 또는 하반신의 영역을 산출하게 된다.
On the other hand, in the detection method of the upper torso or lower torso region of a person, first, a human face region appearing in the current frame is detected, and a human body ratio is calculated based on the detected face region. From the ratio of the human body, the area of the upper body or the lower body is calculated.

도 4는 객체가 검출된 프레임으로부터 객체 추적을 수행한 후, 검출 프레임 이전의 특정 프레임에서 상기 객체가 등장함에도 불구하고 검출되지 않은 검출오류가 있었음이 파악된 경우, 그 지점으로부터 다시 객체 추적을 실시하여 앞서 추적된 영역정보와 병합하는 방법을 나타내는 순서도이다.4, after performing object tracking from a frame in which an object is detected, if it is found that there is an undetected detection error even though the object appears in a specific frame before the detection frame, the object is traced again from the point. To merge with the previously tracked area information.

먼저 특정 프레임(이하 '최초검출 프레임'이라 한다)에서 특정 객체(이하 '병합요청객체'라 한다)를 검출하여 추적을 수행한다(S401). 현재 장면으로의 장면전환 이 이루어진 프레임과 상기 최초검출 프레임 사이의 특정 프레임(이하 '최초등장 프레임'이라 한다)에서 상기 병합요청객체가 등장함에도 불구하고 검출되지 않은 검출오류가 있었음이 파악된 경우(S402), 사용자는 상기 최초등장 프레임의 추적오류가 난 객체(이하 '추적요청객체'라 한다)에 대한 추적요청을 입력하게 된다. 물론 여기서 추적요청객체는 상기 병합요청객체와 동일한 객체이다. 이때 객체 서비스 저작장치(100)는 상기 최초등장 프레임으로부터 상기 추적요청객체에 대한 추적을 수행하면서 추적된 영역정보를 저장한다(S403, S404). 상기 추적요청객체의 추적된 위치와 상기 최초검출 프레임 상의 상기 병합요청객체의 위치 사이의 거리를 측정하고(S405), 그 거리를 기 설정된 기준값과 비교하여(S406) 기준값 이상인 경우에는 객체 추적 및 추적정보 저장을 계속하고(S409), 기준값 이하가 된 경우, 추적을 중지하고(S407) 상기 추적요청객체에 대한 상기 추적 영역정보를 상기 병합요청객체에 대한 상기 최초검출 프레임 이후의 추적 영역정보에 병합하여 저장한다(S408).First, tracking is performed by detecting a specific object (hereinafter referred to as a merge request object) in a specific frame (hereinafter referred to as 'first detection frame') (S401). In the case where the merge request object appears in a specific frame (hereinafter referred to as 'first appearance frame') between the frame in which the scene transition to the current scene has been performed and the initial detection frame, it was detected that there was an undetected detection error ( S402), the user inputs a tracking request for an object having a tracking error of the first appearance frame (hereinafter referred to as a tracking request object). Of course, the tracking request object is the same object as the merge request object. At this time, the object service authoring apparatus 100 stores the tracked area information while tracking the tracking request object from the first appearance frame (S403, S404). The distance between the tracked position of the tracking request object and the position of the merged request object on the first detection frame is measured (S405), and the distance is compared with a preset reference value (S406) to track and track an object if the reference value is greater than or equal to the reference value. If information is kept below (S409), and the reference value is less than the reference value, the tracking is stopped (S407) and the tracking area information for the tracking request object is merged with the tracking area information after the first detection frame for the merging request object. To store (S408).

검출오류의 파악은, 사용자가 직접 모니터에서 파악한 후, 그 검출오류 난 프레임의 검출오류가 난 객체 영역을 지정하여 객체 서비스 저작장치(100)에 입력할 수도 있고, 객체 서비스 저작장치(100)가 자동으로 상기 장면전환 프레임과 상기 최초검출 프레임 사이에서 검출오류를 파악하여 검출오류가 났었음을 제공하여, 이로부터 사용자가 단축키 등에 의해 병합요청하도록 할 수 있다.The grasp of the detection error may be input to the object service authoring apparatus 100 by designating an object area in which the detection error of the frame with the detection error is detected after the user directly grasps it on the monitor. The detection error is automatically detected by detecting the detection error between the scene change frame and the initial detection frame, thereby allowing the user to request a merge by a shortcut key or the like.

한편 상기 추적요청객체에 대한 추적은, 사용자의 마우스 등에 의한 수동 추적 또는 객체 서비스 저작장치(100)의 자동 추적 방식에 의해 이루어질 수 있다.The tracking of the tracking request object may be performed by a manual tracking by a user's mouse or an automatic tracking method of the object service authoring apparatus 100.

얼굴 검출 과정에 대하여는 이하 도 5 내지 도 6을 참조하여 상세히 설명한다.
The face detection process will be described in detail below with reference to FIGS. 5 to 6.

도 5는 사람 얼굴을 검출하기 위해, 이미지의 특징을 파악하기 위한 특정 패턴의 마스크(mask)들을 이용하여, 데이터베이스에 저장된 다수의 사람 얼굴 이미지들에 대한 반응값을 산출하는 도면이다.FIG. 5 is a diagram for calculating response values for a plurality of human face images stored in a database by using masks of a specific pattern for identifying a feature of an image to detect a human face.

얼굴 검출 단계는, 1) 이미지의 특징을 파악하기 위한 특정 패턴의 마스크(mask)들을 이용하여, 데이터베이스에 저장된 다수의 사람 얼굴 이미지들에 대한 반응값을 산출하고, 2) 산출된 반응값으로부터, 상기 사람 얼굴 이미지들에 대해 높은 반응을 나타내는 마스크 및 각 마스크 별로 나타나는 반응값을 파악하고, 3) 이를 이용하여 사람 얼굴 이미지 검출기를 생성하며, 4) 현재 프레임의 이미지를 부분별로 상기 검출기에 통과시켜, 통과되는 영역을 사람 얼굴 이미지로서 결정하는 단계를 포함한다.The face detection step includes: 1) calculating response values for a plurality of human face images stored in a database by using masks of a specific pattern for identifying characteristics of the image, and 2) from the calculated response values. Identify a mask having a high response to the human face images and response values for each mask, 3) generate a human face image detector using the same, and 4) pass an image of the current frame to the detector part by part. Determining the area to be passed as a human face image.

상기 검출기 통과 이전에, 현재 프레임에서 사람 얼굴 피부 색 영역을 검출하는 단계를 더 포함할 수 있는데, 이 경우 상기 검출기에 통과시키는 영역은, 검출된 사람 얼굴 피부 색 영역으로 한정할 수도 있게 된다.Before passing through the detector, the method may further include detecting a human face skin color area in the current frame, in which case the area passing through the detector may be limited to the detected human face skin color area.

비올라와 존스의 얼굴 검출 알고리즘의 크게 두 단계로 요약될 수 있다. 먼저, 트레이닝 과정에서는 데이터베이스를 이용하여 검출기를 생성하고, 검출 단계에서는 트레이닝 과정에서 생성된 검출기를 이용하여 입력 이미지에서의 얼굴을 검출하게 된다.Viola and Jones' face detection algorithm can be summarized in two major steps. First, a detector is generated using a database in a training process, and a face in an input image is detected using a detector generated in a training process in a detection step.

트레이닝 과정에서는 얼굴 검출을 수행하는 가장 근본적인 단위로 하나는 하 필터들과 유사한 형태의 특징(Haar-like feature)들에 대한 반응을 이용하는데, 가능한 모든 종류의 하 특징들 중에서 얼굴 이미지로 이루어진 데이터베이스를 이용하여 반응성이 높은 특징들을 고르는 과정이 가장 먼저 수행된다. 그런 후, 이와 같이 얼굴에 반응하는 하 특징들을 이용하여 약한 분류기(weak classifier)를 만들고, 이들을 직렬(cascade)로 연결하여 강한 분류기(strong classifier)인 검출기를 생성하게 된다. 이때 약한 분류기들을 직렬(cascade)로 연결하는 과정은 아다부스트(AdaBoost)[11] 알고리즘에서 비롯된 것으로 초기 단계에서 얼굴일 가능성이 낮은 이미지 영역들은 일찌감치 검출 과정에서 제외시킬 수 있도록 해 준다. 이 알고리즘은 특히 검출 속도의 개선을 위해 이와 같은 형태를 취하고 있는데 트레이닝 과정에 계산 과정의 대부분을 전가시킴으로 이와 같은 효과를 얻게 된다고 볼 수 있다.One of the most fundamental units of face detection in the training process is the use of responses to haar-like features, similar to the lower filters. The process of selecting highly reactive features is first performed. Then, using these features to respond to the face to create a weak classifier (weak classifier), and connected them in cascade (cascade) to create a detector that is a strong classifier (strong classifier). The cascade of weak classifiers is derived from the AdaBoost [11] algorithm, which allows early detection of regions of the image that are less likely to be faces in the early stages. This algorithm takes this form especially for the improvement of detection speed, and it can be said that this effect is achieved by transferring most of the calculation process to the training process.

위와 같은 트레이닝 과정에서 생성한 검출기를 이용하여 입력 이미지 안에서 얼굴을 검출하게 된다. 이때 입력 이미지 안에 존재하는 얼굴은 다양한 위치에 다양한 크기로 존재할 수 있기 때문에 이미지의 각 패치(patch) 별로 검출기의 모든 하 특징들에 대한 반응을 계산한 후, 얼굴이라고 분류할 수 있는 패치들을 선정하게 된다.Faces are detected in the input image using the detector created during the above training process. In this case, the face existing in the input image can exist in various positions at various positions, and then, for each patch of the image, the response to all the features of the detector is calculated, and then the patches that can be classified as faces are selected. do.

본 알고리즘에서는 검출의 가장 근본적인 단위로 하-웨이블릿 특징 집합(Haar-wavelet feature set)(501)을 이용한다. The algorithm uses a haar-wavelet feature set 501 as the most fundamental unit of detection.

구체적으로 하-웨이블릿 특징은 해당하는 영역의 이미지의 특성을 알기 위한 간단한 매스크(Mask)로, 이때 매스크를 이용하여 이미지에 해당하는 영역의 픽셀들에 대응되는 매스크의 수치들을 곱하여 더하는데 이용된다. 즉, 도면(501)의 'A'와 같은 하-웨이블릿 특징을 이용하면 바깥 정사각형과 같은 크기의 이미지 패치 안에서 안쪽 직사각형의 위치에 해당되는 위치의 픽셀들에만 하얀부분은 +1을, 검은 부분은 -1을 곱하여 총합을 구하게 된다. 이와 같은 연산을 통하여 이미지 패치의 특징의 위치에 해당하는 픽셀들에 대한 아주 간단한 통계를 구하게 되는데, 이를 가능한 모든 특징들을 이용하여 많은 수의 얼굴 이미지들에 대해 수행하면 그 이미지 집합에 대한 어떤 특성을 추출할 수 있게 되는 것이다. Specifically, the low-wavelet feature is a simple mask for knowing the characteristics of the image of the corresponding area, and is used to multiply the numerical values of the mask corresponding to the pixels of the area corresponding to the image by using the mask. In other words, when using a low-wavelet feature such as 'A' in the drawing 501, only white parts are +1, and black parts are only located at pixels corresponding to inner rectangle positions in an image patch of the same size as the outer square. Multiply by -1 to get the total. This operation yields very simple statistics on the pixels corresponding to the location of the feature of the image patch. Performing this on a large number of face images using all of the available features will result in a certain characteristic of the image set. It will be able to extract.

위와 같은 간단한 모양의 하-웨이블릿 특징 매스크(Haar-wavelet feature mask)를 이용하는 가장 큰 이유는 매스크에 대한 반응(response), 즉 결과값을 매우 빠르게 구할 수 있기 때문이다. 이는 매스크의 반응을 구할 때 픽셀 값들에 계수를 곱하지 않고 단순한 덧셈만 수행하기 때문이다. 특히, 이미지의 다양한 영역에서 여러 형태의 매스크에 대한 반응을 계산하는 경우, 이미지의 인테그랄 이미지(integral image)를 이용하여 계산을 더욱 빠르게 할 수 있다. 인테그랄 이미지는 도면(502)와 같이 (x,y) 좌표에 어두운 부분에 해당하는 원본 이미지의 픽셀 값들의 총합을 저장한 이미지로, (3-1), (3-2)의 수식을 이용하여 픽셀 수에 비례하는 시간(O(n))에 계산할 수 있다.
The main reason for using such a simple Haar-wavelet feature mask is that the response to the mask, that is, the result can be obtained very quickly. This is because when the mask is responsive, only simple addition is performed without multiplying the pixel values by the coefficients. In particular, when calculating the response to various types of masks in various regions of an image, an integral image of the image may be used to make the calculation faster. An integral image is an image that stores the sum of pixel values of an original image corresponding to a dark part at (x, y) coordinates as shown in the drawing 502. The formulas (3-1) and (3-2) It can be calculated at a time O (n) proportional to the number of pixels.

Figure 112010023587077-pat00001
(3-1)
Figure 112010023587077-pat00001
(3-1)

Figure 112010023587077-pat00002
(3-2)
Figure 112010023587077-pat00002
(3-2)

위 수식에서 s()는 행의 픽셀 값의 누적치, i()는 해당하는 픽셀의 밝기(intensity), 그리고 ii는 인테그랄 이미지를 의미한다. 이와 같이 인테그랄 이미지를 구하고 나면 하아 매스크에 대한 반응은 실제 매스크에 따른 합을 구할 필요 없이 해당하는 위치의 인테그랄 이미지들의 합과 차로 구할 수 있는 것이다. 예를 들면, 아래 도면(503)의 경우 D에 해당하는 영역의 픽셀 값의 합을 구하기 위해서는 인테그랄 이미지의 4번 좌표의 수치에서 2번과 3번 좌표의 수치를 빼고 1번 좌표의 수치를 더해주면 되는 것이다. 이와 같이 인테그랄 이미지를 이용하면 10번 내외의 덧셈으로 도면(503)과 같은 하-웨이블릿 특징에 대한 이미지의 반응을 모두 계산할 수 있게 되는 것이다.In the above formula, s () is the cumulative value of the pixel values of the row, i () is the intensity of the corresponding pixel, and ii is the integral image. In this way, after obtaining the integral image, the response to the HA mask can be obtained by the sum and difference of the integral images of the corresponding position without having to calculate the sum according to the actual mask. For example, in the drawing 503 below, in order to calculate the sum of pixel values of the area corresponding to D, subtracting the values of the coordinates 2 and 3 from the values of the coordinates 4 of the integral image and subtracting the values of the coordinates of 1 You can do it. By using the integral image as described above, it is possible to calculate the response of the image to the low-wavelet feature as shown in the drawing 503 by addition of about 10 times.

앞서 설명한 것과 같이 다양한 하-웨이블릿 특징들에 대한 반응을 특정한 종류의 이미지들로 이루어진 데이터베이스에 대해 계산하면 그 종류의 이미지들에 대해 높은 반응을 나타내는 특징들을 찾을 수 있다. 이들 특징과 각 특징별로 나타나는 반응값을 이용하여 최적의 검출기를 생성하는 것이 검출기 학습 과정의 목표로써, 최적 검출기의 정의에 따라 어떤 특징들을 이용하고, 특징들에 대한 반응을 어떤 순서로, 어떤 가중치에 따라 계산하게 되는지 등을 판단해야 한다. 클리어스킨 객체화 엔진에서는 최적화된 검출기에 대한 정의를 내리기 위해 이미지 내에서의 얼굴 영역을 실제로 검출해 내는 검출율(detection rate), 얼굴이 아님에도 검출기가 얼굴로 잘못 검출하는 오검출율(false positive rate), 그리고 입력 이미지 내에서 얼굴을 검출하기 위한 계산 시간, 즉 반응 값을 계산하게 되는 특징들의 수의 세 가지 기준을 적용한다. 결론적으로, 클리어스킨 객체화 엔진에서 제시하는 학습과정에서는 높은 검출 성능, 즉, 높은 검출율과 낮은 오검출율을 유지하면서도 검출에 특징을 가장 적게 사용하는 검출기를 학습하고자 한다. 이때, 데이터베이스는 검출하고자 하는 물체들에 대한 이미지들로 이루어진 긍정적(positive) 데이터베이스와 검출하고자 하는 물체가 존재하지 않는 이미지들로 이루어진 부정적(negative) 데이터베이스 두 종류를 이용하며, 하-웨이블릿 특징은 도면(503)에 제시된 4가지 형태로 가능한 모든 위치와 크기에 대한 특징을 생성하여 이용하게 된다.As described above, the response to various low-wavelet features can be calculated for a database of a particular type of images to find features that show high response to that type of image. The goal of the detector learning process is to create an optimal detector using these features and the response values for each feature, which features are used according to the definition of the optimal detector, and in what order and weights Should be calculated according to the In the Clearskin objectification engine, the detection rate that actually detects the face area within the image to define the optimized detector, and the false positive rate that the detector incorrectly detects as a face even if it is not a face. ), And the three criteria of the calculation time for detecting a face in the input image, that is, the number of features to calculate the response value. In conclusion, in the learning process proposed by the Clearskin objectification engine, we try to learn the detector that uses the least features for detection while maintaining high detection performance, that is, high detection rate and low false detection rate. At this time, the database uses two kinds of positive database consisting of images of objects to be detected and a negative database consisting of images in which the object to be detected does not exist. The four forms presented in 503 create and use the features for all possible positions and sizes.

클리어스킨 객체화 엔진의 검출기 학습 과정에 대한 설명은 크게 두 부분으로 나눌 수 있다. 첫째는 최고의 검출 성능을 발휘하는 검출기를 생성하기 위해 우선 검출 성능이 아주 나쁠 수 밖에 없는 개별적인 하-웨이블릿 특징들을 여러 개 결합하여 최종적인 검출 성능을 기하학적으로 증가시키는 아다부스트(AdaBoost) 알고리즘에 대한 부분이다. 둘째는 검출 시간을 줄이기 위해서 개별적인 하-웨이블릿 특징들을 결합하는 형태와 학습에 이용되는 데이터베이스를 변화시키는 과정에 대한 부분이다. 도 6에 사용되는 긍정적인 데이터베이스의 이미지들의 예(601)가 제시되어 있다.The description of the detector learning process of the Clearskin objectification engine can be divided into two parts. The first part is the AdaBoost algorithm, which geometrically increases the final detection performance by combining several individual wavelet features that can only be very bad for generating the detector with the best detection performance. to be. The second part is about combining individual ha- wavelet features and reducing the database used for learning to reduce detection time. An example 601 of images of the positive database used in FIG. 6 is shown.

하-웨이블릿 특징을 이용하여 해당하는 이미지 패치에 검출하려는 물체가 존재하는지는 특정한 하-웨이블릿 특징에 대한 반응의 수치가 어떠한 문턱치(threshold)를 넘는지를 확인함으로써 판별하게 된다. 이때 검출기를 구성하게 되는 하-웨이블릿 특징으로 어떤 형태를 선택할 것인지, 최종적인 검출기에서 각 하-웨이블릿 특징은 어떠한 비중으로 사용될 것인지 등을 결정해야 하는데, 이는 아다부스트 알고리즘을 이용하여 결정된다.The lower wavelet feature is used to determine if there is an object to be detected in the corresponding image patch by identifying what threshold the response to a particular lower wavelet feature is over. In this case, it is necessary to determine which type is selected as the low-wavelet feature constituting the detector, and what specific gravity is used for each low-wavelet feature in the final detector, which is determined by using the Adaboost algorithm.

아다부스트(AdaBoost)는 얼굴과 같이 특징적인 이미지 내의 특징을 검출하는 데 필요한 검출기를 생성하기 위해 트레이닝 정보를 효율적으로 이용하는 제어되는 러닝 알고리즘(supervised learning algorithm)이다. 직관적으로 설명하면, 얼굴 이미지와 얼굴이 없는 이미지를 각각 긍정적(positive)와 부정적(negative) 트레이닝 세트(training set)로 이용할 때 하-웨이블릿 특징 집합(Haar-wavelet feature set)들 중 얼굴 이미지에 부합하는 특징은 계수를 강화하고, 얼굴이 아닌 이미지에 부합하는 특징은 계수를 약화하게 되는 과정이라고 볼 수 있는 것이다. 아다부스트 알고리즘에 사용되는 용어들을 이용하면 각 하-웨이블릿 특징과 해당되는 문턱치는 하나의 약한 검출기(weak classifier)를 구성하며, 이들을 결합하여 구한 검출기는 강한 검출기(strong classifier)가 된다.AdaBoost is a controlled supervised learning algorithm that efficiently uses training information to create the detectors needed to detect features in characteristic images such as faces. Intuitively, when face images and faceless images are used as positive and negative training sets, respectively, they match the face image of the haar-wavelet feature sets. The feature is to enhance the coefficient, and the feature that matches the image, not the face, can be seen as a process of weakening the coefficient. Using the terms used in the Adaboost algorithm, each lower-wavelet feature and its threshold constitute one weak classifier, and the combination of these results in a strong classifier.

위와 같은 과정을 통해 일정한 수의 특징들로 구성된 검출기를 학습할 수 있다. 하지만 이와 같은 경우 생성된 검출기는 검출 성능의 측면에서는 최적화되었다고 불 수 있겠지만, 검출 속도의 측면에서는 최적화되지 못했다고 볼 수도 있다. 생성된 검출기는 입력된 이미지의 모든 패치에 대해 모든 특징에 대한 반응을 모두 계산하기 때문이다. 흔히 입력되는 이미지에서 검출하고자 하는 물체는 아주 드물게 나타나기 때문에 검출하고자 아닌 물체가 아닐 가능성이 매우 높은 이미지 패치에 대해서는 모든 특징에 대한 반응을 구하지 않고도 더 빨리 그 패치를 제외(reject)시킴으로써 검출 시간을 단축시킬 수 있는 것이다. Through the above process, a detector consisting of a certain number of features can be learned. However, in this case, the generated detector may be considered to be optimized in terms of detection performance, but may not be optimized in terms of detection speed. This is because the generated detector calculates all responses to all features for all patches of the input image. Often, an object to be detected in an incoming image is so rare that for an image patch that is very unlikely to be detected, the detection time can be shortened by rejecting the patch faster without requiring a response to all features. It can be done.

구체적으로, 최종적인 검출기의 각 특징들을 층계형으로 구성하고 각 단계를 통과하는가에 따라 검출 가능성이 낮은 패치를 제외하게 되면, 검출하고자 하는 물체가 없는 대부분의 이미지 패치들은 초기 단계에서 제외되고 이어지는 단계는 수행되지 않으므로 속도를 크게 향상시킬 수 있다. Specifically, if each feature of the final detector is constructed in a hierarchy and excludes patches with low detectability depending on whether they pass each stage, most image patches without the object to be detected are excluded from the initial stage and subsequent stages. Is not performed, which can greatly improve the speed.

이와 같은 경우 각 단계마다의 검출기는 각각 다른 목표를 지니게 된다. 검출기의 초기 단계에서는 비얼굴 이미지 패치를 제외하는 것이 가장 큰 목표가 되고, 성능보다는 속도가 문제가 되므로 사용하는 특징의 수가 적어야 한다. 클리어스킨 객체화 엔진에서는 첫 단계로 2개의 특징만을 이용한다. 특히, 이 단계에서는 오검출율보다도 검출율이 더 중요하다. In this case, the detectors for each stage have different targets. In the early stages of the detector, excluding non-face image patches is the biggest goal, and speed rather than performance is a major concern, so the number of features used should be small. The first step in the Clearskin objectification engine is to use only two features. In particular, the detection rate is more important than the false detection rate in this step.

이후의 단계에서는 최종적인 검출 성능을 만족시키기 위한 만큼의 성능을 발휘할 수 있는 정도의 특징을 이용한 검출기를 생성하게 된다. 즉, 각 단계 검출 성능의 곱이라고 가정하여 각 단계에서 검출율 0.99, 오검출율 0.30이라 하여도 최종적인 검출 성능은 검출율
In a later step, the detector is generated using a feature that is capable of exhibiting enough performance to satisfy the final detection performance. In other words, even if the detection rate is 0.99 and the false detection rate is 0.30 in each step, it is assumed that the product is the product of each step.

도 6은 얼굴 검출에 사용되는 긍정적인 데이터베이스 이미지들의 예를 나타내는 도면이다. 이에 대하여는 도 5를 참조하여 전술한 바와 같다.
6 is a diagram illustrating an example of positive database images used for face detection. This has been described above with reference to FIG. 5.

도 7은 인체 비율도를 나타내는 도면이다.7 is a diagram illustrating a human body ratio diagram.

도 3을 참조하여 전술한 바와 같이, 사람의 상반신 또는 하반신 영역의 검출 방법은, 먼저 현재 프레임에 등장하는 사람 얼굴 영역을 검출하고, 검출된 얼굴 영역을 기준으로 인체 비율을 계산한다. 이러한 인체 비율로부터 상반신 또는 하반신의 영역을 산출하게 된다.
As described above with reference to FIG. 3, the method for detecting the upper or lower body region of a person first detects a human face region appearing in the current frame and calculates a human body ratio based on the detected face region. From the ratio of the human body, the area of the upper body or the lower body is calculated.

100: 객체서비스 저작장치
200: 어플리케이션 부
210: 프로젝트 관리모듈 220: 객체화 편집모듈
221: 객체 자동추적부 225: 객체 수동추적부
230: 동영상 재생모듈 240: 편집정보 노출모듈
250: 병렬처리모듈
300: 알고리즘 부
310: 인터페이스 320: 장면전환 검출모듈
330: 장면 그룹핑모듈 340: 객체 검출모듈
350: 객체 추적모듈 360: 얼굴인식모듈
370: 추적객체영역 결정모듈
100: object service authoring device
200: application part
210: project management module 220: objectization editing module
221: automatic object tracking unit 225: manual object tracking unit
230: video playback module 240: editing information exposure module
250: parallel processing module
300: algorithm part
310: interface 320: scene change detection module
330: scene grouping module 340: object detection module
350: object tracking module 360: face recognition module
370: tracking object area determination module

Claims (17)

동영상 객체정보 저작장치가 동영상에 나타나는 객체를 자동으로 추적하는 방법으로서,
(a) 동영상 내 현재 프레임에서의 장면전환 여부를 검출하여, 검출된 경우는 단계(d)로 진행하고, 검출되지 않은 경우는 단계(b)로 진행하는 단계;
(b) 이전 프레임의 추적 대상 객체가 있는지 검색하여 없는 경우는 단계(d)로 진행하고, 있는 경우는 단계(c)로 이동하는 단계;
(c) 상기 단계(b)의 추적 대상 객체를 현재 프레임에서 추적하는 단계;
(d) 현재 프레임에 등장하는 객체의 영역을 검출하는 단계; 및
(e) 상기 단계(c)에서 추적된 객체 영역이 현재 프레임에 존재하는 경우, 그 객체 영역과 상기 단계(d)에서 검출된 객체 영역 사이의 거리가 특정 임계값 이하이면 상기 단계(c)에서 추적된 객체의 영역을 상기 단계(b)의 추적 대상 객체의 현재 프레임 내에서 추적된 영역정보로서 저장하고, 상기 임계값 이상이면 상기 단계(d)에서 검출된 객체 영역을 상기 단계(b)의 추적 대상 객체의 현재 프레임 내에서 추적된 영역정보로서 저장하는 단계
를 포함하는 동영상 내의 객체 자동추적 방법.
The video object information authoring device automatically tracks the objects that appear in the video.
(a) detecting whether the scene is changed in the current frame in the video and, if detected, proceeding to step (d); otherwise, proceeding to step (b);
(b) proceeding to step (d) if there is no tracking target object of the previous frame, and if not, moving to step (c);
(c) tracking the object to be tracked in step (b) in the current frame;
(d) detecting an area of the object appearing in the current frame; And
(e) If the object area tracked in step (c) exists in the current frame, and if the distance between the object area and the object area detected in step (d) is less than or equal to a certain threshold, then in step (c) The area of the tracked object is stored as tracked area information in the current frame of the object to be tracked in step (b), and if the threshold value is greater than or equal to the threshold value, the object area detected in step (d) is stored. Storing as tracked area information in the current frame of the tracked object
Automatic tracking method of the object in the video including a.
청구항 1에 있어서,
상기 객체는,
사람의 얼굴, 상반신 또는 하반신인 것
을 특징으로 하는 동영상 내의 객체 자동추적 방법.
The method according to claim 1,
The object is
Human face, upper body or lower body
Object tracking method in the video characterized in that the.
청구항 1에 있어서,
상기 단계(c)의 객체 추적 단계는,
(c1) 프레임의 색상 공간 양자화를 수행하는 단계;
(c2) 전 프레임의 추적된 객체 영역 위치에서의 가중 히스토그램과 현재 프레임의 객체 영역 위치에서의 가중 히스토그램의 유사성을 계산하는 단계;
(c3) 상기 유사성으로부터, 다음 위치에서의 객체 영역의 위치를 계산하는 단계;
(c4) 상기 단계(c3)의 위치로 객체가 이동한 것으로 가정한 후, 객체 영역의 위치값이 특정 값에 수렴할 때까지 상기 단계(c2) 및 단계(c3)의 과정을 반복하는 단계; 및
(c5) 상기 수렴하는 위치값을, 상기 객체의 다음 프레임에서의 위치로 결정하는 단계
를 포함하는 것을 특징으로 하는 동영상 내의 객체 자동추적 방법.
The method according to claim 1,
The object tracking step of step (c),
(c1) performing color space quantization of the frame;
(c2) calculating a similarity between the weighted histogram at the tracked object region position of the previous frame and the weighted histogram at the object region position of the current frame;
(c3) calculating, from the similarity, the position of the object area at the next position;
(c4) after assuming that the object has moved to the position of step (c3), repeating the steps (c2) and (c3) until the position value of the object region converges to a specific value; And
(c5) determining the convergent position value as the position in the next frame of the object.
Automatic tracking method of the object in the video comprising a.
청구항 2에 있어서,
상기 단계(d)의 객체 영역 검출 단계는,
(d1) 이미지의 특징을 파악하기 위한 특정 패턴의 마스크(mask)들을 이용하여, 데이터베이스에 저장된 다수의 사람 얼굴 이미지들에 대한 반응값을 산출하는 단계;
(d2) 상기 단계(d1)에서 산출된 반응값으로부터, 상기 사람 얼굴 이미지들에 대해 기 설정된 기준값 이상의 반응값을 나타내는 마스크 및 각 마스크 별로 나타나는 반응값을 파악하고, 이를 이용하여 사람 얼굴 이미지 검출기를 생성하는 단계; 및
(d3) 현재 프레임의 이미지를 부분별로 상기 검출기에 통과시켜, 통과되는 영역을 사람 얼굴 이미지로서 결정하는 단계
를 포함하는 것을 특징으로 하는 동영상 내의 객체 자동추적 방법.
The method according to claim 2,
The object region detecting step of the step (d),
(d1) calculating response values for a plurality of human face images stored in a database using masks of a specific pattern for identifying characteristics of the image;
(d2) From the response values calculated in step (d1), a mask indicating a response value greater than or equal to a predetermined reference value with respect to the human face images and a response value for each mask are grasped, and a human face image detector is used by using the same. Generating; And
(d3) passing the image of the current frame to the detector part by part, and determining the area to be passed as a human face image;
Automatic tracking method of the object in the video comprising a.
청구항 4에 있어서,
상기 단계(d3) 이전에,
(d30) 현재 프레임에서 사람 얼굴 피부 색 영역을 검출하는 단계
를 더 포함하고,
상기 단계(d3)에서 상기 검출기에 통과시키는 영역은, 상기 단계(d30)에서 검출된 사람 얼굴 피부 색 영역으로 한정하는 것
을 특징으로 하는 동영상 내의 객체 자동추적 방법.
The method of claim 4,
Before step d3,
(d30) detecting the human face skin color area in the current frame
Further comprising:
The area passing through the detector in step d3 is limited to the human face skin color area detected in step d30.
Object tracking method in the video characterized in that the.
청구항 4에 있어서,
상기 단계(d3) 이후,
(d4) 검출된 사람 얼굴 영역을 기준으로 인체 비율을 계산하는 단계; 및
(d5) 상기 인체 비율로부터 현재 프레임에서 상반신 또는 하반신의 영역을 산출하는 단계
를 더 포함하는 것을 특징으로 하는 동영상 내의 객체 자동추적 방법.
The method of claim 4,
After the step (d3),
(d4) calculating a human body ratio based on the detected human face region; And
(d5) calculating a region of the upper body or the lower body in the current frame from the ratio of the human body
Automatic tracking method of the object in the video, characterized in that it further comprises.
청구항 1에 있어서,
상기 단계(e) 이후,
(f) 현재 장면으로의 장면전환 프레임과 현재 장면 진행 중 최초로 특정객체(이하 '병합요청객체'라 한다)가 검출된 프레임(이하 '최초검출 프레임'이라 한다) 사이의 특정 프레임(이하 '최초등장 프레임'이라 한다)에서, 상기 최초등장 프레임의 특정영역에 해당하는 객체(이하 '추적요청객체'라 한다)에 대한 추적요청을 입력받는 단계;
(g) 상기 최초등장 프레임으로부터 상기 추적요청객체에 대한 추적을 수행하면서 추적된 영역정보를 저장하는 단계;
(h) 상기 추적요청객체의 추적된 위치와 상기 최초검출 프레임 상의 상기 병합요청객체의 위치 사이의 거리가 기준값 이하가 된 경우, 추적을 중지하는 단계; 및
(i) 상기 추적요청객체에 대한 상기 추적 영역정보를 상기 병합요청객체에 대한 상기 최초검출 프레임 이후의 추적 영역정보에 병합하여 저장하는 단계
를 더 포함하는 것을 특징으로 하는 동영상 내의 객체 자동추적 방법.
The method according to claim 1,
After step (e),
(f) A specific frame (hereinafter referred to as 'first' frame) between a transition frame to the current scene and a frame in which a specific object (hereinafter referred to as a 'merge request object') is first detected during the current scene (hereinafter referred to as an 'first detection frame'). Receiving a tracking request for an object (hereinafter referred to as a "tracking request object") corresponding to a specific area of the first appearance frame;
(g) storing tracked area information while performing tracking on the tracking request object from the first appearance frame;
(h) stopping tracking if the distance between the tracked position of the tracking request object and the position of the merged request object on the initial detection frame is less than or equal to a reference value; And
(i) merging and storing the tracking area information of the tracking request object into tracking area information after the first detection frame for the merging request object;
Automatic tracking method of the object in the video, characterized in that it further comprises.
청구항 7에 있어서,
상기 단계(e)와 단계(f) 사이에,
(f01) 상기 추적요청객체의 영역을 입력받는 단계
를 더 포함하는 것을 특징으로 하는 동영상 내의 객체 자동추적 방법.
The method according to claim 7,
Between step (e) and step (f),
(f01) receiving an area of the tracking request object
Automatic tracking method of the object in the video, characterized in that it further comprises.
청구항 7에 있어서,
상기 단계(e)와 단계(f) 사이에,
(f02) 상기 장면전환 프레임과 상기 최초검출 프레임 사이에서 상기 추적요청객체를 자동으로 검출하여 사용자에게 제공하는 단계
를 더 포함하는 것을 특징으로 하는 동영상 내의 객체 자동추적 방법.
The method according to claim 7,
Between step (e) and step (f),
(f02) automatically detecting and providing the tracking request object to the user between the scene change frame and the initial detection frame.
Automatic tracking method of the object in the video, characterized in that it further comprises.
청구항 7에 있어서,
상기 단계(g)에서, 상기 추적요청객체에 대한 추적은,
수동 추적 또는 자동 추적 방식에 의해 이루어지는 것
을 특징으로 하는 동영상 내의 객체 자동추적 방법.
The method according to claim 7,
In step (g), the tracking for the tracking request object,
By manual or automatic tracking
Object tracking method in the video characterized in that the.
동영상에 등장하는 객체에 대하여 양방향으로 부가적인 정보를 제공하는 객체 동영상 서비스를 저작하는 장치로서,
저작자 단말에 동영상 객체 편집도구를 제공하고, 상기 편집도구상에 동영상을 추가하는 프로젝트 관리모듈;
상기 프로젝트 관리모듈이 추가한 동영상을 재생하는 동영상 재생모듈;
동영상 재생모듈이 재생하는 동영상에서 정지 화면(이하 '프레임'이라 한다)을 추출하고, 추출된 프레임에서의 장면전환 여부를 검출하며, 추출된 프레임에서 객체 존재 영역을 검출하고, 검출된 객체 영역을 이후의 프레임에서 추적하여 상기 객체 영역 추적결과를 저장하는 객체화 엔진부;
상기 객체화 엔진부를 제어하여 객체 추적과 관련한 일련의 처리를 수행하는 객체화 편집모듈; 및
객체 서비스 저작을 위한 각종 데이터를 저장하는 데이터베이스
를 포함하는 객체 서비스 저작 장치.
An apparatus for authoring an object video service that provides additional information in both directions about an object appearing in a video.
A project management module for providing a video object editing tool to an author terminal and adding a video to the editing tool;
A video playback module for playing back the video added by the project management module;
Extracts a still picture (hereinafter referred to as a 'frame') from a video played by the video playback module, detects whether a scene is changed in the extracted frame, detects an object existence region in the extracted frame, and detects the detected object region. An objectification engine unit for tracking the subsequent frame and storing the object region tracking result;
An objectization editing module which controls the objectification engine unit to perform a series of processes related to object tracking; And
Database that stores various data for object service authoring
Object service authoring apparatus comprising a.
청구항 11 있어서,
상기 객체화 엔진부는,
추출된 프레임에서 장면전환(이하 '샷(shot)'이라 한다) 여부를 검출하는 장면전환 검출모듈;
추출된 프레임에서 객체 존재 영역을 검출하는 객체 검출모듈;
검출된 객체 영역을 이후의 프레임에서 추적하는 객체 추적모듈; 및
현재 프레임에서 새로이 검출된 객체영역 및 이전 프레임의 추적대상 객체에 대하여 현재 프레임에서 추적된 객체영역으로부터, 상기 추적대상 객체의 현재 프레임에서의 위치하는 영역을 결정하는 추적객체영역 결정모듈
을 포함하는 것을 특징으로 하는 객체 서비스 저작 장치.
The method according to claim 11,
The objectification engine unit,
A scene change detection module detecting whether a scene change (hereinafter, referred to as a shot) in the extracted frame;
An object detection module for detecting an object existence region in the extracted frame;
An object tracking module for tracking the detected object area in a subsequent frame; And
Tracking object area determination module for determining the area to be located in the current frame of the tracking object from the object area newly detected in the current frame and the object area tracked in the current frame with respect to the tracking object of the previous frame.
Object service authoring apparatus comprising a.
청구항 11에 있어서
상기 데이터베이스는,
얼굴 검출에 이용되는 사람 얼굴 이미지 데이터를 저장하는 검출용 이미지 데이터베이스
를 포함하는 것을 특징으로 하는 객체 서비스 저작 장치.
The method according to claim 11
The database includes:
Image database for detection storing human face image data used for face detection
Object service authoring apparatus comprising a.
청구항 11에 있어서
상기 객체화 편집모듈은,
객체를 자동으로 검출 및 추적하는 객체 자동추적부
를 포함하는 것을 특징으로 하는 객체 서비스 저작 장치.
The method according to claim 11
The objectization editing module,
Object tracking unit that automatically detects and tracks objects
Object service authoring apparatus comprising a.
청구항 14에 있어서
상기 객체화 편집모듈은,
입력된 사용자의 마우스의 이동 신호에 따라 상기 객체영역의 위치를 변경하는 객체 수동추적부
를 더 포함하는 것을 특징으로 하는 객체 서비스 저작 장치.
The method according to claim 14
The objectization editing module,
Manual tracking unit for changing the position of the object area according to the input signal of the mouse movement of the user
Object service authoring apparatus further comprises.
청구항 12에 있어서
상기 데이터베이스는,
동영상에 등장하는 각 개인의 얼굴정보를 저장하는 개인얼굴 데이터베이스를 포함하고,
상기 객체화 엔진부는,
상기 얼굴정보로부터, 동영상에 등장하는 인물이 누구인지를 인식하는 얼굴 인식모듈
을 더 포함하는 것을 특징으로 하는 객체 서비스 저작 장치.
The method according to claim 12
The database includes:
It includes a personal face database that stores the face information of each person in the video,
The objectification engine unit,
Face recognition module for recognizing who is the person in the video from the face information
Object service authoring apparatus further comprises.
청구항 12에 있어서
상기 객체화 엔진부는,
장면전환 검출모듈이 검출한 다수의 샷을 특정한 조건에 따라 묶어서, 관련된 장면의 모임(이하, '씬(scene)'이라 한다)을 만드는 작업을 수행하는 장면 그룹핑 모듈
을 더 포함하는 것을 특징으로 하는 객체 서비스 저작 장치.
The method according to claim 12
The objectification engine unit,
A scene grouping module for grouping a plurality of shots detected by the scene change detection module according to a specific condition to create a group of related scenes (hereinafter referred to as a 'scene').
Object service authoring apparatus further comprises.
KR1020100034012A 2010-04-13 2010-04-13 Automatic object processing method in movie and authoring apparatus for object service KR101124560B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020100034012A KR101124560B1 (en) 2010-04-13 2010-04-13 Automatic object processing method in movie and authoring apparatus for object service

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020100034012A KR101124560B1 (en) 2010-04-13 2010-04-13 Automatic object processing method in movie and authoring apparatus for object service

Publications (2)

Publication Number Publication Date
KR20110114384A KR20110114384A (en) 2011-10-19
KR101124560B1 true KR101124560B1 (en) 2012-03-16

Family

ID=45029478

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020100034012A KR101124560B1 (en) 2010-04-13 2010-04-13 Automatic object processing method in movie and authoring apparatus for object service

Country Status (1)

Country Link
KR (1) KR101124560B1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9760780B2 (en) 2014-10-17 2017-09-12 Kt Corporation Thumbnail management

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101695655B1 (en) * 2016-02-23 2017-01-12 이정선 Method and apparatus for analyzing video and image
KR102124982B1 (en) * 2018-03-30 2020-06-19 주식회사 엘지유플러스 Apparatus and method for controlling contents, or content control apparatus and method thereof
CN112233138A (en) * 2019-06-28 2021-01-15 北京京东乾石科技有限公司 Target detection method and device
CN117456204A (en) * 2023-09-25 2024-01-26 珠海视熙科技有限公司 Target tracking method, device, video processing system, storage medium and terminal

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20010035100A (en) * 2000-12-22 2001-05-07 유명현 An Effective Object Tracking Method and for Apparatus for Interactive HyperLink Video
KR20010035099A (en) * 2000-12-22 2001-05-07 유명현 Streaming Hypervideo System using Automatic Scene Change Detection and Controlling Method
KR20030082264A (en) * 2002-04-17 2003-10-22 삼성전자주식회사 System and method for providing object-based interactive video service

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20010035100A (en) * 2000-12-22 2001-05-07 유명현 An Effective Object Tracking Method and for Apparatus for Interactive HyperLink Video
KR20010035099A (en) * 2000-12-22 2001-05-07 유명현 Streaming Hypervideo System using Automatic Scene Change Detection and Controlling Method
KR20030082264A (en) * 2002-04-17 2003-10-22 삼성전자주식회사 System and method for providing object-based interactive video service

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
논문:한국정보과학회

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9760780B2 (en) 2014-10-17 2017-09-12 Kt Corporation Thumbnail management
US10115022B2 (en) 2014-10-17 2018-10-30 Kt Corporation Thumbnail management

Also Published As

Publication number Publication date
KR20110114384A (en) 2011-10-19

Similar Documents

Publication Publication Date Title
US10885372B2 (en) Image recognition apparatus, learning apparatus, image recognition method, learning method, and storage medium
KR102192830B1 (en) Method for acquiring bounding box corresponding to an object in an image by using convolutional neural network including tracking network and computing device using the same
US11222239B2 (en) Information processing apparatus, information processing method, and non-transitory computer-readable storage medium
CN104063883B (en) A kind of monitor video abstraction generating method being combined based on object and key frame
CN103514432B (en) Face feature extraction method, equipment and computer program product
EP3540637A1 (en) Neural network model training method, device and storage medium for image processing
CN112926410B (en) Target tracking method, device, storage medium and intelligent video system
KR101303877B1 (en) Method and apparatus for serving prefer color conversion of skin color applying face detection and skin area detection
CN109284670A (en) A kind of pedestrian detection method and device based on multiple dimensioned attention mechanism
CN111898406B (en) Face detection method based on focus loss and multitask cascade
CN108600865B (en) A kind of video abstraction generating method based on super-pixel segmentation
CN114241548A (en) Small target detection algorithm based on improved YOLOv5
CN111401293B (en) Gesture recognition method based on Head lightweight Mask scanning R-CNN
KR101124560B1 (en) Automatic object processing method in movie and authoring apparatus for object service
CN113807276A (en) Smoking behavior identification method based on optimized YOLOv4 model
Führ et al. Combining patch matching and detection for robust pedestrian tracking in monocular calibrated cameras
WO2023221608A1 (en) Mask recognition model training method and apparatus, device, and storage medium
WO2024032010A1 (en) Transfer learning strategy-based real-time few-shot object detection method
CN109753984A (en) Video classification methods, device and computer readable storage medium
CN110314361B (en) Method and system for judging basketball goal score based on convolutional neural network
CN116824641B (en) Gesture classification method, device, equipment and computer storage medium
CN109460724A (en) The separation method and system of trapping event based on object detection
CN113065379A (en) Image detection method and device fusing image quality and electronic equipment
CN113792629A (en) Helmet wearing detection method and system based on deep neural network
JP2022019339A (en) Information processing apparatus, information processing method, and program

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

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20160225

Year of fee payment: 5