KR101087194B1 - Encoding System and Method of Moving Picture - Google Patents

Encoding System and Method of Moving Picture Download PDF

Info

Publication number
KR101087194B1
KR101087194B1 KR1020090107851A KR20090107851A KR101087194B1 KR 101087194 B1 KR101087194 B1 KR 101087194B1 KR 1020090107851 A KR1020090107851 A KR 1020090107851A KR 20090107851 A KR20090107851 A KR 20090107851A KR 101087194 B1 KR101087194 B1 KR 101087194B1
Authority
KR
South Korea
Prior art keywords
encoding
frame
video
scene
coefficient
Prior art date
Application number
KR1020090107851A
Other languages
Korean (ko)
Other versions
KR20110051336A (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 KR1020090107851A priority Critical patent/KR101087194B1/en
Publication of KR20110051336A publication Critical patent/KR20110051336A/en
Application granted granted Critical
Publication of KR101087194B1 publication Critical patent/KR101087194B1/en

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/157Assigned coding mode, i.e. the coding mode being predefined or preselected to be further used for selection of another element or parameter
    • H04N19/159Prediction type, e.g. intra-frame, inter-frame or bidirectional frame prediction
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/20Analysis of motion
    • G06T7/215Motion-based segmentation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • H04N19/527Global motion vector estimation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/434Disassembling of a multiplex stream, e.g. demultiplexing audio and video streams, extraction of additional data from a video stream; Remultiplexing of multiplex streams; Extraction or processing of SI; Disassembling of packetised elementary stream
    • H04N21/4341Demultiplexing of audio and video streams

Abstract

개시되는 동영상 인코딩 시스템은 오디오 파일 및 비디오 파일을 포함하는 동영상 파일을 수신하여, 인코딩 대상 동영상 파일로부터 비디오 파일을 추출하고, 비디오 파일을 복수의 장면으로 분할하는 장면 분할부 및 복수의 인코딩 모듈을 구비하여, 장면 분할부에서 분할한 비디오 파일을 분산 인코딩하는 인코딩부를 포함한다.The disclosed video encoding system includes a scene divider and a plurality of encoding modules for receiving a video file including an audio file and a video file, extracting a video file from an encoded video file, and dividing the video file into a plurality of scenes. And an encoding unit for distributedly encoding the video file divided by the scene division unit.

동영상, 인코딩, 분산 Video, encoding, distribution

Description

동영상 인코딩 시스템 및 방법{Encoding System and Method of Moving Picture}Video encoding system and method {Encoding System and Method of Moving Picture}

본 발명은 영상 처리 시스템에 관한 것으로, 보다 구체적으로는 동영상 인코딩 시스템 및 방법에 관한 것이다.The present invention relates to an image processing system, and more particularly to a video encoding system and method.

통신망을 통해 제공되는 서비스는 그 종류가 매우 다양하며, 최근 수요가 증가하는 서비스로 동영상 서비스를 들 수 있다. 이러한 동영상 서비스는 인터넷에 접속 가능한 데스크 탑 컴퓨터를 이용한 서비스로부터 시작하여, 휴대용 통신 단말기를 통한 서비스로 확대되었으며, 최근에는 양방향 텔레비전 서비스인 IPTV(Internet Protocol Television) 서비스가 도입되어, 시청자가 자신이 편리한 시간에 보고 싶은 프로그램을 선택하여 시청할 수 있게 되었다.There are many kinds of services provided through communication networks, and video services are a service that demand is increasing recently. This video service started with a service using a desktop computer that can be connected to the Internet, and expanded to a service through a portable communication terminal. Recently, an IPTV (Internet Protocol Television) service, which is a two-way television service, has been introduced, which is convenient for viewers. You can select and watch a show you want to watch in time.

IPTV 서비스 등과 같은 동영상 서비스 제공자는 동영상 제작자(제작사)로부터 동영상을 수집하여 사용자에게 제공하는데, 이 때 서비스 제공자가 수집하는 동영상 파일은 다양한 포맷으로 작성될 수 있다. 따라서, 동영상 서비스 제공자는 수집된 동영상 파일의 인코딩 타입을 바꾸는 과정을 필수적으로 수행하여야 한다.A video service provider such as an IPTV service collects a video from a video producer (producer) and provides the video to a user. In this case, the video file collected by the service provider may be created in various formats. Therefore, the video service provider must perform a process of changing the encoding type of the collected video file.

동영상 원본을 인코딩하는 과정, 또는 인코딩된 동영상 파일을 디코딩하고, 다시 지정된 포맷으로 인코딩하는 트랜스코딩 과정에는 동영상 파일의 용량에 비례하는 만큼의 시간이 필요하다. 즉, 동영상 파일의 용량이 클수록 인코딩에 많은 시간이 소요된다.The process of encoding the original video, or the transcoding process of decoding the encoded video file and encoding the encoded video file again, requires a time proportional to the capacity of the video file. In other words, the larger the size of the video file, the longer it takes to encode.

동영상을 인코딩하는 데 장시간이 소요되면 효율적인 서비스를 제공할 수 없고, 인코딩 속도를 향상시키기 위해서는 보다 높은 사양의 시스템이 요구되는 등 제반 비용이 증가하게 된다.If it takes a long time to encode a video, efficient service cannot be provided, and the cost increases because a higher specification system is required to improve encoding speed.

본 발명은 상술한 단점을 해결하기 위해 안출된 것으로, 동영상을 분할하여 인코딩할 수 있는 동영상 인코딩 시스템 및 방법을 제공하는 데 그 기술적 과제가 있다.SUMMARY OF THE INVENTION The present invention has been made to solve the above-mentioned disadvantages, and there is a technical problem to provide a video encoding system and method capable of dividing and encoding a video.

본 발명의 다른 기술적 과제는 동영상 인코딩 속도를 향상시킬 수 있는 동영상 인코딩 시스템 및 방법을 제공하는 데 있다.Another technical problem of the present invention is to provide a video encoding system and method that can improve the video encoding speed.

상술한 기술적 과제를 달성하기 위한 본 발명의 일 실시예에 의한 동영상 인코딩 시스템은 오디오 파일 및 비디오 파일을 포함하는 동영상 파일을 수신하여, 인코딩 대상 동영상 파일로부터 비디오 파일을 추출하고, 상기 비디오 파일을 복수의 장면으로 분할하는 장면 분할부; 및 복수의 인코딩 모듈을 구비하여, 상기 장면 분할부에서 분할한 비디오 파일을 분산 인코딩하는 인코딩부;를 포함한다.According to an aspect of the present invention, a video encoding system according to an embodiment of the present invention receives a video file including an audio file and a video file, extracts a video file from an encoding target video file, and outputs a plurality of video files. A scene divider for dividing into scenes; And an encoding unit including a plurality of encoding modules to distribute-encode the video file divided by the scene dividing unit.

한편, 본 발명의 일 실시예에 의한 동영상 인코딩 방법은 장면 분할부 및 인코딩부를 포함하는 동영상 인코딩 시스템에서의 동영상 인코딩 방법으로서, 인코딩 대상 동영상 파일로부터 비디오 파일을 추출하는 과정; 상기 비디오 파일을 복수의 장면으로 분할하는 과정; 및 상기 복수의 장면으로 분할된 비디오 파일을 동시에 인코딩하는 과정;을 포함한다.Meanwhile, a video encoding method according to an embodiment of the present invention includes a video encoding method in a video encoding system including a scene divider and an encoding unit, including: extracting a video file from an encoding target video file; Dividing the video file into a plurality of scenes; And simultaneously encoding a video file divided into the plurality of scenes.

본 발명에 의하면, 하나의 동영상을 독립적인 장면으로 분할 한 후, 분할된 각각의 장면별로 분산 인코딩을 수행한다. 따라서, 분할된 동영상의 각 장면 별로 병렬 인코딩이 가능하여 동영상을 인코딩하는 데 소요되는 시간을 대폭 단축시킬 수 있다.According to the present invention, after dividing one video into independent scenes, distributed encoding is performed for each divided scene. Therefore, parallel encoding is possible for each scene of the divided video, thereby greatly reducing the time required for encoding the video.

또한, 분산 인코딩하고자 하는 동영상 파일을 독립적인 장면으로 분할하기 때문에 각 장면 사이에 적절한 광고 등을 삽입할 수 있어 광고 효과를 극대화할 수 있다.In addition, since the video file to be distributed encoded is divided into independent scenes, appropriate advertisements can be inserted between the scenes, thereby maximizing the advertisement effect.

이하, 첨부된 도면을 참조하여 본 발명의 바람직한 실시예를 보다 구체적으로 설명한다.Hereinafter, with reference to the accompanying drawings will be described in detail a preferred embodiment of the present invention.

도 1은 본 발명에 의한 동영상 인코딩 시스템의 접속 관계를 설명하기 위한 도면이다.1 is a view for explaining a connection relationship of a video encoding system according to the present invention.

도시한 것과 같이, 동영상 인코딩 시스템(10)은 통신망(20)을 통해 복수의 콘텐츠 제공자(Contents Provider; CP) 서버(30-1~30-n)와 접속될 수 있다. 아울러, 동영상 파일들이 저장된 데이터베이스(40)를 구비할 수 있다. 그리고, CP 서버(30-1~30-n)로부터 전송되는 동영상 파일, 또는 데이터베이스(40)에 저장된 동영상 파일을 인코딩하되, 각각의 동영상을 독립적인 장면으로 분할하여 분산 인코딩한다.As illustrated, the video encoding system 10 may be connected to a plurality of Content Provider (CP) servers 30-1 to 30-n through the communication network 20. In addition, the database 40 may store a video file. The video files transmitted from the CP servers 30-1 to 30-n or the video files stored in the database 40 are encoded, but each video is divided into independent scenes and distributedly encoded.

도 2는 본 발명의 일 실시예에 의한 동영상 인코딩 시스템의 구성도이다.2 is a block diagram of a video encoding system according to an embodiment of the present invention.

도 2를 참조하면, 동영상 인코딩 시스템(10)은 전체적인 동작을 제어하는 제어부(110), 파일 관리부(120), 장면 분할부(130), 인코딩부(140), 병합부(150) 및 저장부(160)를 포함하고, 필요에 따라 디코딩부(170)를 추가로 구비할 수 있다.Referring to FIG. 2, the video encoding system 10 may include a controller 110, a file manager 120, a scene divider 130, an encoder 140, a merger 150, and a storage controller for controlling overall operations. 160, and may further include a decoding unit 170 as needed.

파일 관리부(120)는 CP 서버들(30-1~30-n)로부터 수집한 동영상 또는 자체 동영상 DB(40)에 보유하고 있는 각각의 동영상 파일에 대하여, 동영상 파일의 타이틀, 비디오 파일, 오디오 파일 등 동영상 파일의 전반적인 정보를 관리한다.The file management unit 120 stores the title of the video file, the video file, and the audio file for each video file collected from the CP servers 30-1 to 30-n or each video file held in the own video DB 40. Manage the overall information of the video file, etc.

장면 분할부(130)는 인코딩하고자 하는 동영상의 비디오 파일을 독립적인 복수의 장면으로 분할한다. 그리고, 장면 분할부(130)는 분할된 각 장면의 메타 데이터에 재생 시간 정보 즉, 재생 순서(time stamp)를 포함시켜 이후 처리 과정에서 참조될 수 있도록 한다.The scene dividing unit 130 divides the video file of the video to be encoded into a plurality of independent scenes. In addition, the scene dividing unit 130 includes reproduction time information, that is, a reproduction time stamp, in the metadata of each divided scene so that the scene divider 130 may be referred to in the subsequent processing.

장면 분할시에는 분할된 각각의 장면이 상호 상관도가 없도록 분할할 수 있는 다양한 장면 분할 기법을 이용할 수 있다. 특히, 본 발명에서는 프레임의 에너지, 카메라의 움직임 분석 및 추정을 이용한 장면 분할 기법을 이용할 수 있다. 이러한 장면 분할 기법은 본 출원인에 의해 출원번호 제10-2009-0078545호로 출원된 바 있으며, 도 3 내지 도 5를 참조하여 후술할 것이다.When splitting a scene, various scene splitting techniques may be used to divide each divided scene so that there is no correlation. In particular, in the present invention, a scene segmentation technique using energy of a frame, motion analysis and estimation of a camera may be used. Such a scene segmentation technique has been filed by the present applicant with the application number 10-2009-0078545, which will be described later with reference to FIGS.

인코딩부(140)는 장면 분할부(130)에서 분할한 동영상의 각 장면 및 해당 동영상의 오디오 파일에 대하여 분산 인코딩을 수행한다. 이를 위해 인코딩부(140)는 복수의 인코딩 모듈을 구비할 수 있다. 아울러, 인코딩된 후의 각 분할된 동영상 역시 재생 시간 정보, 즉 타임 스탬프를 메타 데이터로 저장하여 후속 처리 과정에서 참조될 수 있도록 한다.The encoding unit 140 performs distributed encoding on each scene of the video divided by the scene dividing unit 130 and the audio file of the corresponding video. To this end, the encoding unit 140 may include a plurality of encoding modules. In addition, each segmented video after encoding is also stored in the play time information, that is, the time stamp as metadata so that it can be referred to in subsequent processing.

본 발명의 일 실시예에서, 인코딩 모듈의 수와 처리 능력을 고려하여, 장면 분할부(130)에서 분할되는 장면의 개수를 적절히 조절할 수 있다. 즉, 하나의 동 영상을 독립적인 복수의 장면으로 분할한 결과, 분할된 장면의 개수가 인코딩 모듈의 수보다 많은 경우 인접하는 장면을 병합하는 방법 등을 이용하여 분할된 장면의 개수와 인코딩 모듈의 수를 맞출 수 있다. 또는, 장면 분할부(130)에서 분할된 장면의 개수가 인코딩 모듈의 수보다 많은 경우 인코딩 모듈의 수만큼 각 장면을 1차 분산 인코딩하고, 나머지 장면에 대해 2차 분산 인코딩하는 방법 또한 적용할 수 있다.In an embodiment of the present disclosure, the number of scenes divided by the scene dividing unit 130 may be appropriately adjusted in consideration of the number of encoding modules and processing power. That is, as a result of dividing a single video into a plurality of independent scenes, when the number of divided scenes is larger than the number of encoding modules, the number of divided scenes and the encoding module may be divided by merging adjacent scenes. Can match the numbers. Alternatively, when the number of scenes divided by the scene dividing unit 130 is greater than the number of encoding modules, a method of performing first-order distributed encoding on each scene by the number of encoding modules and performing second-order distributed encoding on the remaining scenes may also be applied. have.

본 발명에서, 인코딩부(140)를 구성하는 복수의 인코딩 모듈은 상호 통신이 없이 각기 독립적으로 인코딩을 수행한다. 따라서, 각각 독립적인 복수의 컴퓨팅 장치를 이용하여 복수의 인코딩 모듈을 구성할 수도 있고, 멀티 코어와 같은 병렬 시스템을 이용하여 복수의 인코딩 모듈을 구성하는 것도 가능하다.In the present invention, a plurality of encoding modules constituting the encoding unit 140 performs encoding independently without mutual communication. Accordingly, a plurality of encoding modules may be configured using a plurality of independent computing devices, or a plurality of encoding modules may be configured using a parallel system such as a multi-core.

병합부(150)는 인코딩부(140)에서 분산 인코딩된 복수의 장면들 및 인코딩된 오디오 파일을 취합하여 하나의 동영상 파일로 생성한 후 저장부(160)에 저장한다. 이때, 분할된 각 장면의 메타 데이터에 포함된 타임 스탬프를 참조하여, 하나의 완성된 동영상 파일을 생성한다.The merger 150 collects the plurality of scenes encoded in the encoding unit 140 and the encoded audio file, generates a single video file, and stores the plurality of scenes in the storage unit 160. At this time, one completed video file is generated with reference to the time stamp included in the metadata of each divided scene.

한편, 디코딩부(170)는 분산 인코딩하고자 하는 동영상 파일이 인코딩된 상태로 수신되는 경우, 해당 동영상을 미리 디코딩하는 기능을 수행한다.Meanwhile, when the video file to be distributedly encoded is received in the encoded state, the decoding unit 170 performs a function of decoding the corresponding video in advance.

분산 인코딩을 수행하기 위한 동영상을 디코딩할 때, 디코딩부(170)는 각 프레임에 대한 장면 링크(scene link) 정보 즉, 컬러 특성(color feature), 형태 특성(shape feature) 및 움직임 특성(motion feature)를 필터링하여 캐시 데이터로 관리할 수 있다. 그리고, 제어부(110)는 장면 분할부(130)에서 분할된 장면을 인 코딩부(140)로 전송할 때, 장면 링크 정보를 포함하는 캐시 데이터를 참조하여, 장면 링크 정보가 유사한 장면을 동일 인코딩 모듈로 전송할 수 있다. 이와 같이 하는 경우, 유사한 장면에 대한 인코딩이 동일한 인코딩 모듈에서 수행되므로 인코딩 속도를 향상시킬 수 있다. 즉, 유사한 장면의 경우 컬러 및 움직임 정보의 예측이 용이하게 때문에 동일 인코딩 모듈에서 인코딩을 수행하도록 하여 처리 속도를 높일 수 있게 되는 것이다.When decoding a video for performing distributed encoding, the decoding unit 170 performs scene link information on each frame, that is, a color feature, a shape feature, and a motion feature. ) Can be filtered and managed as cache data. When the scene divided by the scene dividing unit 130 is transmitted to the encoding unit 140, the control unit 110 refers to cache data including the scene link information, and encodes a scene having similar scene link information in the same encoding module. Can be sent to. In this case, since encoding for similar scenes is performed in the same encoding module, encoding speed can be improved. That is, in the case of similar scenes, since color and motion information are easily predicted, encoding may be performed by the same encoding module to increase processing speed.

이와 같이, 본 발명에서는 하나의 동영상 파일을 상호 독립적인 복수의 장면으로 분할한다. 그리고, 분할된 각각의 장면을 병렬 인코딩함으로써 인코딩에 소요되는 시간을 대폭 단축시킬 수 있다. 아울러, 분할된 장면이 상호 독립적이기 때문에, 즉 이전 장면과 이후 장면과의 상관도가 없기 때문에 분산 인코딩한 후 이를 다시 디코딩하고 재생하여도 동영상의 화질을 원본과 같은 수준으로 유지할 수 있다.As described above, in the present invention, one video file is divided into a plurality of scenes that are independent of each other. In addition, by encoding the divided scenes in parallel, the time required for encoding can be greatly reduced. In addition, since the divided scenes are independent of each other, that is, there is no correlation between the previous scene and the subsequent scene, the image quality of the video can be maintained at the same level as the original even when distributed encoding is decoded and played back.

본 발명의 다른 실시예에서, 인코딩부(140)에서 분산 인코딩을 수행할 때, 특정 장면에 대한 인코딩 에러가 발생할 수 있다. 인코딩부(140)는 인코딩 에러가 발생하면 이를 제어부(110)로 보고하며, 제어부(110)는 에러가 발생한 장면에 대해서만 다시 인코딩을 수행하도록 한다. 즉, 각각의 장면이 독립적으로 인코딩되기 때문에 특정 장면에 대한 인코딩 에러가 발생하여도 해당 장면에 대해서만 재인코딩을 수행할 뿐, 인코딩 에러가 발생하지 않은 장면에 대해서는 다시 인코딩할 필요가 없다. 따라서, 인코딩 에러 복구 및 재인코딩에 소요되는 시간을 대폭 감소시킬 수 있다.In another embodiment of the present invention, when the encoding unit 140 performs distributed encoding, an encoding error for a specific scene may occur. If an encoding error occurs, the encoding unit 140 reports this to the control unit 110, and the control unit 110 re-encodes only the scene in which the error occurs. That is, since each scene is independently encoded, even if an encoding error occurs for a specific scene, only the scene is re-encoded, and there is no need to re-encode a scene in which no encoding error occurs. Thus, the time required for encoding error recovery and re-encoding can be greatly reduced.

다음, 도 3 내지 도 5를 참조하며, 본 발명에 적용되는 장면 분할 기법을 설명한다.Next, referring to FIGS. 3 to 5, a scene segmentation technique applied to the present invention will be described.

도 3은 도 2에 도시한 장면 분할부의 구성도이다.3 is a configuration diagram illustrating the scene divider shown in FIG. 2.

도 3에 도시한 것과 같이, 장면 분할부(130)는 프레임 추출부(132), 계수 필터링부(134), 움직임 분석부(136) 및 분할 위치 결정부(138)를 포함한다.As shown in FIG. 3, the scene divider 130 includes a frame extractor 132, a coefficient filter 134, a motion analyzer 136, and a split position determiner 138.

동영상을 구성하는 프레임은 인트라 프레임(Intra frame; I-프레임), 예측 프레임(Predictive frame; P-프레임), 양방향 프레임(Bidirectional frame; B-프레임)으로 나눌 수 있다. I-프레임은 이전 영상이나 이후 영상과 상관도가 없거나 매우 낮은 독립적인 프레임으로, I-프레임으로는 공간상의 상관도를 알 수 있다. P-프레임은 이전 영상에 의존하는 프레임을 의미하고, B-프레임은 이전 영상 및 이후 영상에 의존하는 프레임을 의미하며, P-프레임이나 B-프레임으로는 시간상의 상관도를 알 수 있다. 다만, B-프레임은 동영상의 진행 시간에 대해 과거 및 미래의 프레임으로부터 예측되는 프레임으로, 시간에 따른 카메라의 움직임을 찾을 수 없으므로 고려하지 않아도 무방하다.The frame constituting the video may be divided into an intra frame (I-frame), a predictive frame (P-frame), and a bidirectional frame (B-frame). An I-frame is an independent frame that has little or no correlation with previous or subsequent images, and the I-frame can know spatial correlation. The P-frame means a frame that depends on the previous picture, the B-frame means a frame that depends on the previous picture and the after picture, and the correlation in time can be known as the P-frame or the B-frame. However, the B-frame is a frame predicted from past and future frames with respect to the moving time of the video, and may not be considered because the camera movement cannot be found over time.

따라서, 프레임 추출부(132)를 이용하여 분할 대상 동영상으로부터 I-프레임 및 P-프레임을 구분해 내는 것이다.Therefore, the I-frame and the P-frame are separated from the segmentation target video by using the frame extractor 132.

일반적으로 P-프레임은 I-프레임에 매우 의존적이지만, 어떤 경우에는 I-프레임에 대해 의존도가 낮은 프레임이 존재할 수 있다. 이러한 P-프레임은 독립적인 장면으로 취급될 수 있으므로, 계수 필터링부(134)는 P-프레임 중 이웃 프레임과 에너지 차이 즉, AC(Alternate Current) 계수 차이가 기 설정된 문턱값보다 높 거나 DC(Direct Current) 계수 차이가 기 설정된 문턱값보다 높은 프레임을 의미 있는 장면으로 선택한다. 또한, I-프레임 중에서도 이웃하는 I-프레임과 상관도가 높은 I-프레임이 존재할 수 있으며, 계수 필터링부(134)는 I-프레임 중에서 이웃 프레임과 에너지 차이 즉, AC 계수 차이가 기 설정된 문턱값보다 높거나 DC 계수 차이가 기 설정된 문턱값보다 높은 프레임을 의미 있는 장면으로 선택한다. 즉, 이웃하는 I-프레임 간의 상관도가 높은 I-프레임들은 하나의 장면으로 취급하는 것이다.In general, P-frames are highly dependent on I-frames, but in some cases there may be frames that are less dependent on I-frames. Since the P-frame may be treated as an independent scene, the coefficient filtering unit 134 may have an energy difference, that is, an alternating current (AC) coefficient difference from a neighboring frame among the P-frames, higher than a preset threshold or direct current (DC). Current) Selects a frame having a higher coefficient difference than a preset threshold as a meaningful scene. In addition, I-frames having a high correlation with neighboring I-frames may exist among the I-frames, and the coefficient filtering unit 134 may set a threshold value in which an energy difference, that is, an AC coefficient difference, is preset among the I-frames. The frame that is higher or the DC coefficient difference is higher than the preset threshold is selected as a meaningful scene. That is, I-frames having high correlation between neighboring I-frames are treated as one scene.

이를 위해, 프레임 추출부(132)는 도 4에 도시한 것과 같이, I-프레임 추출 모듈(1321) 및 P-프레임 추출 모듈(1323)을 포함한다. 한편, 계수 필터링부(134)는 비교 모듈(1341) 및 선택 모듈(1343)을 포함한다.To this end, the frame extractor 132 includes an I-frame extraction module 1321 and a P-frame extraction module 1323 as shown in FIG. 4. Meanwhile, the coefficient filtering unit 134 includes a comparison module 1341 and a selection module 1343.

분할 대상 프레임에 대하여 프레임 추출부(132)의 I-프레임 추출 모듈(1321) 및 P-프레임 추출 모듈(1323)에서 각각 프레임이 추출된다. 그리고, 비교 모듈(1341)은 이웃 I-프레임 간 AC 계수 및 DC 계수의 차이를 각각 기 설정된 문턱값과 비교하는 한편, P-프레임 간 AC계수 및 DC 계수의 차이를 각각 기 설정된 문턱값과 비교한다. 아울러, 선택 모듈(1343)은 비교 모듈(1341)의 비교 결과에 따라 의미 있는 장면 전환 위치로 추정되는 프레임 즉, DC 계수 차이 또는 AC 계수 차이가 문턱값보다 높은 프레임을 분할 예정 위치로서 선택한다.Frames are extracted by the I-frame extraction module 1321 and the P-frame extraction module 1323 of the frame extraction unit 132, respectively, for the split target frame. In addition, the comparison module 1341 compares the difference between the AC coefficient and the DC coefficient between neighboring I-frames with the preset threshold, respectively, and compares the difference between the AC coefficient and the DC coefficient between the P-frames with the preset threshold, respectively. do. In addition, the selection module 1343 selects a frame estimated as a meaningful scene change position, that is, a frame having a DC coefficient difference or an AC coefficient difference higher than a threshold value, as the scheduled division position, according to the comparison result of the comparison module 1341.

다만, 이러한 에너지의 비교만으로는 장면 전환 여부를 정확히 판단할 수 없으므로, 움직임 분석부(136)를 통해 분할 예정 위치로 결정된 프레임들에 대하여 프레임의 배경 또는 전경이 이전 프레임과 변경되었는지 확인한다.However, since it is not possible to accurately determine whether to change the scene only by comparing the energy, the motion analyzer 136 checks whether the background or the foreground of the frame has been changed from the previous frame with respect to the frames determined as the scheduled division positions.

즉, 움직임 분석부(136)는 계수 필터링부(134)의 선택 모듈(1343)에서 분할 예정 위치로 선택된 프레임들을 참조하여, 이웃 프레임 간 비교를 통해 시간적/공간적 연속성을 판단한다. 시간적/공간적 연속성은 프레임의 글로벌 모션(Global motion) 분석 또는 로컬 모션(Local motion)을 분석에 의해 이루어지며, 이를 위해 움직임 분석부(136)는 도 5에 도시한 것과 같이 글로벌 모션 분석 모듈(1361) 및 로컬 모션 분석 모듈(1363)을 포함한다.That is, the motion analyzer 136 refers to the frames selected as the split positions in the selection module 1343 of the coefficient filtering unit 134 and determines temporal / spatial continuity through comparison between neighboring frames. Temporal / spatial continuity is achieved by analyzing global motion or local motion of a frame. For this purpose, the motion analyzer 136 performs a global motion analysis module 1361 as shown in FIG. 5. ) And local motion analysis module 1363.

글로벌 모션 분석 모듈(1361)은 카메라 움직임 분석을 통해 해당 프레임이 이전 프레임과 비교할 때 배경 영상이 변화되었는지 확인한다. 즉, 카메라의 패닝(Panning), 요잉(Yawing), 주밍(Zooming) 등 촬영 기법에 의한 2차원적 움직임(시간적 연속성)인지, 공간 이동에 의한 3차원적 움직임(공간적 연속성)인지 판단한다. 이를 위해 글로벌 모션 분석 모듈(1361)은 분할 예정 위치에서의 각 프레임에 대하여 잉여(residual) 계수 즉, AC 계수의 분포 패턴을 분석하며, 이로부터 프레임 간 에너지의 차이는 크나 단순한 촬영 기법에 의한 에너지 변화인지, 실제 장면 전환에 의한 에너지 변화인지를 판단할 수 있다.The global motion analysis module 1361 determines whether the background image has changed when the corresponding frame is compared with the previous frame through the camera motion analysis. That is, it is determined whether two-dimensional motion (temporal continuity) by a shooting technique such as panning, yawing, zooming, or three-dimensional motion (spatial continuity) by spatial movement of the camera. To this end, the global motion analysis module 1361 analyzes a distribution pattern of residual coefficients, that is, AC coefficients, for each frame at the position to be divided, from which the difference in energy between the frames is large, but the energy due to a simple imaging technique. It can be determined whether the change or the energy change due to the actual scene change.

로컬 모션 분석 모듈(1363)은 해당 프레임이 이전 프레임과 비교할 때 전경 영상 즉, 비디오 객체가 변화되었는지 확인한다. 이는 인물 또는 인물의 모션이 변화되었는지 확인하는 것으로, 분할 예정 위치에서의 각 프레임에 대하여 비디오 객체를 분리한 후, 이웃하는 프레임 간의 잉여 계수 즉, AC 계수의 분포 패턴을 분석하여 시간적 연속성 및 공간적 연속성을 판단한다.The local motion analysis module 1363 checks whether the foreground image, that is, the video object, has changed when the frame is compared with the previous frame. This is to check whether the person or the person's motion has changed. After separating the video object for each frame at the position to be divided, analyzing the distribution pattern of the surplus coefficients, or AC coefficients, between neighboring frames, the temporal continuity and the spatial continuity are analyzed. Judge.

글로벌 모션 분석 및 로컬 모션 분석에는 다양한 특징 추출 알고리즘이 이용 될 수 있으며, 예를 들어 움직임 벡터에 대한 주요 성분 분석법(Principal Component Analysis)/잉여 계수에 대한 독립 성분 분석법(Independent Component Analysis), 매칭 추적 분석법(Matching Pursuit Analysis) 등이 이용될 수 있다. 움직임 벡터에 대한 주요 성분 분석법으로부터는 카메라(배경) 또는 비디오 객체(전경)의 2차원적 움직임을 판단할 수 있고, 잉여 계수에 대한 독립 성분 분석법으로부터는 카메라 또는 비디오 객체의 3차원적 움직임을 판단할 수 있다. 아울러, 매칭 추적 분석법의 경우 시간적 특징 및 공간적 특징을 동시에 추출할 수 있는 이점이 있다.Various feature extraction algorithms can be used for global motion analysis and local motion analysis, for example, principal component analysis for motion vectors, independent component analysis for surplus coefficients, and matching tracking analysis. Matching Pursuit Analysis and the like can be used. The principal component analysis of the motion vector can determine the two-dimensional movement of the camera (background) or video object (foreground), and the independent component analysis of the surplus coefficients determines the three-dimensional movement of the camera or video object. can do. In addition, in the case of a matching tracking analysis method, there is an advantage that a temporal feature and a spatial feature can be simultaneously extracted.

한편, 분할 위치 결정부(138)는 움직임 분석부(136)의 분석 결과에 따라 시간적/공간적 연속성이 낮은 프레임을 분할 위치로 결정하여 동영상을 분할하고, 분할된 동영상을 저장부(160)에 저장한다.Meanwhile, the split position determiner 138 divides the video by determining a frame having a low temporal / spatial continuity as the split position according to the analysis result of the motion analyzer 136, and stores the split video in the storage 160. do.

이와 같이, 본 발명에 적용되는 장면 분할부(130)는 분할 대상 동영상을 구성하는 프레임 중 이웃 프레임과 에너지 차이가 큰 프레임을 추출하여 분할 예정 위치를 결정한다. 이때, 이웃 프레임과 독립적인 I-프레임은 물론, P-프레임까지 고려하여 장면 분할의 정확도를 높인다.As described above, the scene dividing unit 130 applied to the present invention extracts a frame having a large energy difference from a neighboring frame among the frames constituting the divided target moving picture to determine a dividing scheduled position. At this time, the accuracy of scene division is improved by considering not only I-frames independent of neighboring frames but also P-frames.

그리고, 분할 예정 위치 전후의 프레임으로부터, 움직임 분석을 통해 시간적/공간적 연속성을 판단한다. 결국, 시간적/공간적 연속성이 낮은 프레임을 추출하고, 이로부터 분할 위치를 결정함으로써, 장면 전환이 이루어진 프레임 간을 정확히 구분하여 분할된 장면들이 상호 독립적이 되도록 할 수 있다.Then, temporal / spatial continuity is determined from the frames before and after the segmentation scheduled position through motion analysis. As a result, by extracting a frame having low temporal / spatial continuity, and determining a split position therefrom, it is possible to accurately distinguish between frames in which a scene change is made so that the divided scenes can be mutually independent.

따라서, 본 발명에서 동영상으로부터 최종적으로 분할된 '장면'이라 함은 동 영상의 재생 시간에 따라, 카메라 또는 비디오 객체의 시간적/공간적 연속성에 기초하여 나누어진 장면으로 정의될 수 있다.Accordingly, in the present invention, the "scene" finally divided from the video may be defined as a scene divided based on the temporal / spatial continuity of the camera or video object according to the playback time of the video.

이와 같이 동영상의 장면을 최종 분할한 후, 분할 위치 결정부(138)는 각 분할된 장면 각각의 메타 데이터에 재생 시간 정보 즉, 재생 순서(time stamp)를 포함시킬 수 있다.After the final division of the scene of the moving image as described above, the division position determiner 138 may include the reproduction time information, that is, the time stamp, in the metadata of each divided scene.

한편, 이상에서 설명한 동영상 인코딩 시스템(10)에서의 인코딩 방법을 설명하면 다음과 같다.Meanwhile, the encoding method of the video encoding system 10 described above will be described below.

도 6은 본 발명의 일 실시예에 의한 동영상 인코딩 방법을 설명하기 위한 흐름도이다.6 is a flowchart illustrating a video encoding method according to an embodiment of the present invention.

동영상 인코딩 시스템(10)은 CP 서버 또는 자체적으로 보유하고 있는 데이터베이스로부터 인코딩 대상 동영상 파일을 수신한다(S10).The video encoding system 10 receives an encoding target video file from a CP server or a database held by itself (S10).

그리고, 장면 분할부(130)는 수신한 동영상 파일로부터 오디오 파일 및 비디오 파일을 추출하고(S20), 추출된 비디오 파일을 상호 독립적인 복수의 장면으로 분할한다(S30). 이때, 분할된 각 장면의 메타 데이터에 재생 시간 정보 즉, 타임 스탬프를 기록해 두어 후속 과정에서 참조될 수 있도록 한다.Then, the scene dividing unit 130 extracts an audio file and a video file from the received video file (S20), and divides the extracted video file into a plurality of independent scenes (S30). At this time, the reproduction time information, that is, the time stamp, is recorded in the metadata of each divided scene so that it can be referred to in subsequent processes.

다음, 인코딩부(140)는 단계 S30에서 분할된 각각의 장면을 분산 인코딩하는 한편, 단계 S30에서 추출한 오디오 파일을 인코딩한다(S40). 즉, 장면 단위로 분할된 비디오 파일을 복수의 인코딩 모듈에서 동시에 인코딩함으로써, 인코딩이 고속으로 이루어지게 된다.Next, the encoding unit 140 distributedly encodes each scene divided in step S30, and encodes the audio file extracted in step S30 (S40). That is, encoding is performed at a high speed by simultaneously encoding video files divided into scene units in a plurality of encoding modules.

인코딩이 완료되면 병합부(150)는 단계 S40에서 인코딩한 오디오 파일과 각 각 독립적으로 인코딩된 복수의 비디오 파일을 병합하여 하나의 인코딩된 동영상 파일을 생성한다(S50). 이 경우, 장면 분할 과정에서 메타 데이터에 포함된 타임 스탬프 정보를 이용하여, 각기 인코딩된 복수의 비디오 파일을 재생 순서에 맞게 병합할 수 있다.When the encoding is completed, the merger 150 merges the audio file encoded in step S40 and the plurality of independently encoded video files to generate one encoded video file (S50). In this case, a plurality of video files encoded respectively may be merged according to a playback order by using time stamp information included in metadata in a scene segmentation process.

도 7은 도 6에 도시한 장면 분할 과정을 설명하기 위한 흐름도이다.FIG. 7 is a flowchart for describing a scene division process illustrated in FIG. 6.

먼저, 장면 분할부(130)의 프레임 추출부(132)는 해당 동영상의 비디오 파일에 대하여 I-프레임 및 P-프레임을 추출하고, 계수 필터링부(134)는 프레임 간의 에너지 차이값과 문턱값과의 비교를 통해 분할 예정 위치를 결정한다(S310). 본 발명의 바람직한 실시예에서, 계수 필터링부(134)는 I-프레임의 AC 계수 및 DC 계수, P-프레임의 AC 계수 및 DC 계수를 산출하고, 이웃 프레임과의 AC 계수 및 DC 계수 차이가 각각의 문턱값보다 큰 I-프레임, 이웃 프레임과의 AC 계수 및 DC 계수 차이가 각각의 문턱값보다 큰 P-프레임을 분할 예정 위치로 선택할 수 있다.First, the frame extractor 132 of the scene divider 130 extracts I-frames and P-frames with respect to the video file of the corresponding video, and the coefficient filtering unit 134 performs energy difference and threshold values between the frames. The division scheduled position is determined by comparing (S310). In a preferred embodiment of the present invention, the coefficient filtering unit 134 calculates an AC coefficient and a DC coefficient of the I-frame, an AC coefficient and a DC coefficient of the P-frame, and a difference between the AC coefficient and the DC coefficient with the neighboring frame, respectively. An I-frame larger than a threshold of P, and a P-frame having a difference in AC coefficient and DC coefficient with a neighboring frame larger than each threshold may be selected as a division scheduled position.

이후, 움직임 분석부(136)에서는 단계 S310에서 결정된 분할 예정 위치를 참조하여, 분할 예정 위치 전후의 프레임간 비교를 통해 시간적/공간적 연속성을 판단한다(S320). 즉, 분할 예정 위치 전후의 프레임으로부터 특징을 추출하고 비교하여 2차원적, 또는 3차원적 변화가 존재하는지 확인하는 것이다.Thereafter, the motion analyzer 136 determines the temporal / spatial continuity by comparing frames before and after the split scheduled position with reference to the split scheduled position determined in step S310 (S320). That is, the feature is extracted from the frames before and after the segmentation scheduled position and compared to determine whether there is a two-dimensional or three-dimensional change.

그리고, 단계 S320의 판단 결과에 따라, 분할 위치 결정부(138)는 시간적/공간적 연속성이 낮은 프레임을 동영상의 실제 장면 전환 위치로 결정하고(S330), 해당 위치에서 동영상을 분할한다(S340).Then, according to the determination result of step S320, the split position determiner 138 determines a frame having a low temporal / spatial continuity as the actual scene change position of the video (S330), and divides the video at the corresponding position (S340).

도 8을 참조하여 도 7에 도시한 분할 예정 위치 결정 과정을 설명하면, 먼저 프레임 추출부(132)의 I-프레임 추출 모듈(1321) 및 P-프레임 추출 모듈(1323)에서 각각 해당 동영상에 포함된 I/P 프레임들을 추출한다(S311).Referring to FIG. 8, the process of determining the scheduled dividing position shown in FIG. 7 will be described. First, the I-frame extraction module 1321 and the P-frame extraction module 1323 of the frame extractor 132 are included in the corresponding video. The extracted I / P frames are extracted (S311).

그리고, 계수 필터링부(134)의 비교 모듈(1341)은 각 프레임의 에너지 즉, AC 계수 및 DC 계수를 산출하고(S313), 프레임 간의 에너지 차이값을 기 설정된 문턱값과 비교한다(S315).The comparison module 1341 of the coefficient filtering unit 134 calculates the energy of each frame, that is, the AC coefficient and the DC coefficient (S313), and compares the energy difference between the frames with a preset threshold (S315).

이후, 선택 모듈(1343)은 단계 S315의 비교 결과 프레임 간의 에너지 차이값이 문턱값보다 큰 프레임을 분할 예정 위치로 결정한다(S317).Thereafter, the selection module 1343 determines a frame in which the energy difference value between the frames of the comparison result of the step S315 is larger than the threshold value as the scheduled division position (S317).

이와 같이 분할 예정 위치를 결정한 후에는 도 9에 도시한 것과 같이 움직임 분석 과정이 수행된다.After determining the division scheduled position as described above, a motion analysis process is performed as shown in FIG. 9.

즉, 움직임 분석부(136)의 글로벌 모션 분석 모듈(1361)에서, 분할 예정 위치 전후의 프레임 간 비교를 통해 카메라의 움직임을 분석하여(S321), 카메라의 움직임에 의한 장면 전환이 이루어졌는지, 즉 글로벌 모션인지 판단한다(S323).That is, in the global motion analysis module 1361 of the motion analysis unit 136, by analyzing the movement of the camera through the comparison between the frames before and after the segmentation scheduled position (S321), whether the scene change is made by the movement of the camera, that is, It is determined whether the motion is global (S323).

글로벌 모션으로 판단된 경우에는 해당 프레임의 배경에 대한 특징을 추출하여(S325), 이웃 프레임과의 특징 비교를 통해 시간적/공간적 연속성을 판단한다(S329). 즉, 카메라의 패닝(Panning), 요잉(Yawing), 주밍(Zooming) 등 촬영 기법에 의한 2차원적 움직임(시간적 연속성)인지, 공간 이동에 의한 3차원적 움직임(공간적 연속성)인지 판단한다. 이를 위해 글로벌 모션 분석 모듈(1361)은 분할 예정 위치에서의 각 프레임에 대하여 잉여(residual) 계수 즉, AC 계수의 분포 패턴을 분석하며,이로부터, 프레임 간 에너지의 차이는 크나 단순한 촬영 기법에 의한 에너지 변화인지, 실제 장면 전환에 의한 에너지 변화인지를 판단하게 된다.When it is determined that the motion is global, the background feature of the corresponding frame is extracted (S325), and the temporal / spatial continuity is determined by comparing the feature with the neighboring frame (S329). That is, it is determined whether two-dimensional motion (temporal continuity) by a shooting technique such as panning, yawing, zooming, or three-dimensional motion (spatial continuity) by spatial movement of the camera. To this end, the global motion analysis module 1361 analyzes a distribution pattern of residual coefficients, that is, AC coefficients, for each frame at a predetermined position to be divided. It is determined whether it is energy change or energy change due to actual scene change.

그리고, 이웃 프레임과 시간적/공간적 연속성이 낮은 프레임을 분할 위치로 결정한다(S330).In operation S330, the neighboring frame and the frame having low temporal / spatial continuity are determined as the split positions.

한편, 단계 S323의 판단 결과 글로벌 모션이 아닌 경우, 즉 로컬 모션인 경우에는 로컬 모션 분석 모듈(1363)에서 해당 프레임으로부터 비디오 객체를 분리한 후, 이웃 프레임 간의 잉여 계수 즉, AC 계수의 분포 패턴을 분석하고(S327), 시간적/공간적 연속성을 판단한다(S329). 마찬가지로, 전경 특징에 대하여 시간적/공간적 연속성이 낮은 경우 해당 프레임을 분할 위치로 결정한다(S330).On the other hand, when the determination result of step S323 is not the global motion, that is, in the case of local motion, the local motion analysis module 1363 separates the video object from the frame, and then the distribution pattern of the surplus coefficient, that is, AC coefficient, between neighboring frames is determined. Analyze (S327), and determine the temporal and spatial continuity (S329). Similarly, when temporal / spatial continuity with respect to the foreground feature is low, the corresponding frame is determined as the split position (S330).

이와 같이, 본 발명은 이웃 프레임 간의 에너지 차이 값에 의해 1차적으로 분할 예정 위치를 선택한다. 그리고, 분할 예정 위치 전후의 프레임을 비교하여 시간적/공간적 연속성을 판단하여, 연속성이 낮은 프레임을 분할 위치로 결정한다.As described above, the present invention selects a preliminary division position based on an energy difference value between neighboring frames. The temporal / spatial continuity is determined by comparing the frames before and after the segmentation scheduled position, and a frame having low continuity is determined as the segmentation position.

따라서, 동영상의 내용상 장면 전환이 이루어지는 부분을 고속으로, 용이하게 검출할 수 있어, 장면 분할의 정확도와 신속성을 향상시킬 수 있다.Therefore, the part where the scene change is performed on the contents of the moving picture can be easily detected at high speed, and the accuracy and speed of scene division can be improved.

이상에서는 프레임의 에너지, 카메라의 움직임 분석 및 추정을 이용한 장면 분할 기법에 대하여 설명하였으나, 동영상을 분산 인코딩하기 위해 동영상의 장면을 분할하는 방법은 이에 한정되지 않는다. 즉, 상술한 방법 외에도 동영상의 각 장면이 상관도가 없도록 분할할 수 있는 장면 분할 기법이라면 어떠한 방법이든지 적용 가능하다.In the above, the scene segmentation technique using the energy of the frame, the motion analysis and the estimation of the camera motion has been described. However, the method of segmenting the scene of the video in order to distribute-encode the video is not limited thereto. That is, in addition to the above-described method, any method may be applied as long as it is a scene segmentation technique capable of segmenting each scene of the video so that there is no correlation.

어떠한 기법을 적용하든지, 동영상의 비디오 파일을 독립적인 복수의 장면으로 분할한 후, 분할된 비디오 파일에 대하여 병렬 인코딩을 수행함으로써 인코딩에 소요되는 시간을 대폭 단축시킬 수 있게 된다.Regardless of the technique, the video file of the moving picture is divided into a plurality of independent scenes, and then parallel encoding is performed on the divided video files, thereby greatly reducing the time required for encoding.

이상에서 설명한 본 발명이 속하는 기술분야의 당업자는 본 발명이 그 기술적 사상이나 필수적 특징을 변경하지 않고서 다른 구체적인 형태로 실시될 수 있다는 것을 이해할 수 있을 것이다. 그러므로 이상에서 기술한 실시예들은 모든 면에서 예시적인 것이며 한정적인 것이 아닌 것으로서 이해해야만 한다. 본 발명의 범위는 상기 상세한 설명보다는 후술하는 특허청구범위에 의하여 나타내어지며, 특허청구범위의 의미 및 범위 그리고 그 등가개념으로부터 도출되는 모든 변경 또는 변형된 형태가 본 발명의 범위에 포함되는 것으로 해석되어야 한다.Those skilled in the art to which the present invention described above belongs will understand that the present invention can be implemented in other specific forms without changing the technical spirit or essential features. Therefore, the above-described embodiments are to be understood as illustrative in all respects and not as restrictive. The scope of the present invention is shown by the following claims rather than the detailed description, and all changes or modifications derived from the meaning and scope of the claims and their equivalents should be construed as being included in the scope of the present invention. do.

도 1은 본 발명에 의한 동영상 인코딩 시스템의 접속 관계를 설명하기 위한 도면,1 is a view for explaining a connection relationship of a video encoding system according to the present invention;

도 2는 본 발명의 일 실시예에 의한 동영상 인코딩 시스템의 구성도,2 is a block diagram of a video encoding system according to an embodiment of the present invention;

도 3은 도 2에 도시한 장면 분할부의 구성도,3 is a configuration diagram of a scene divider shown in FIG. 2;

도 4는 도 3에 도시한 프레임 추출부 및 계수 필터링부의 구성도,4 is a block diagram of a frame extractor and a coefficient filter shown in FIG. 3;

도 5는 도 3에 도시한 움직임 분석부의 구성도,5 is a configuration diagram of a motion analyzer shown in FIG. 3;

도 6은 본 발명의 일 실시예에 의한 동영상 인코딩 방법을 설명하기 위한 흐름도,6 is a flowchart illustrating a video encoding method according to an embodiment of the present invention;

도 7은 도 6에 도시한 장면 분할 과정을 설명하기 위한 흐름도,7 is a flowchart for explaining a scene division process shown in FIG. 6;

도 8은 도 7에 도시한 분할 예정 위치 결정 과정을 설명하기 위한 흐름도,FIG. 8 is a flowchart for explaining a division scheduled position determination process shown in FIG. 7;

도 9는 도 7에 도시한 움직임 분석 과정을 설명하기 위한 흐름도이다.9 is a flowchart for explaining a motion analysis process illustrated in FIG. 7.

<도면의 주요 부분에 대한 부호 설명>Description of the Related Art [0002]

10 : 동영상 인코딩 시스템 110 : 제어부10: video encoding system 110: control unit

120 : 파일 관리부 130 : 장면 분할부120: file management unit 130: scene divider

140 : 인코딩부 150 : 병합부140: encoding unit 150: merge unit

160 : 저장부 170 : 디코딩부160: storage unit 170: decoding unit

Claims (25)

오디오 파일 및 비디오 파일을 포함하는 동영상 파일을 수신하여, 인코딩 대상 동영상 파일로부터 비디오 파일을 추출하고, 상기 비디오 파일을 복수의 장면으로 분할하는 장면 분할부; 및A scene dividing unit which receives a video file including an audio file and a video file, extracts a video file from an encoding target video file, and divides the video file into a plurality of scenes; And 복수의 인코딩 모듈을 구비하여, 상기 장면 분할부에서 분할한 비디오 파일을 분산 인코딩하는 인코딩부;An encoding unit having a plurality of encoding modules and distributed encoding the video file divided by the scene dividing unit; 를 포함하고,Including, 상기 장면 분할부는, 분할 대상 동영상을 구성하는 인트라 프레임(Intra frame; I-프레임) 및 예측 프레임(Predictive frame; P-프레임)을 추출하는 프레임 추출부;The scene dividing unit may include: a frame extracting unit extracting an intra frame (I-frame) and a predictive frame (P-frame) constituting a segmentation target video; 상기 I-프레임 및 P-프레임 각각의 에너지를 산출하고, 이웃하는 동종 프레임과의 에너지 차이를 기 설정된 문턱값과 비교하는 비교 모듈 및 상기 비교 모듈의 비교 결과 상기 에너지가 상기 문턱값보다 큰 프레임을 분할 예정 위치로 결정하는 선택 모듈을 포함하는 계수 필터링부;Computing the energy of each of the I-frame and P-frame, and compares the energy difference with the neighboring homogeneous frame with a predetermined threshold and the comparison module of the comparison module as a result of comparing the frame with the energy greater than the threshold A coefficient filtering unit including a selection module that determines a division scheduled position; 상기 계수 필터링부에서 결정한 분할 예정 위치 전후 프레임 간의 연속성을 판단하는 움직임 분석부; 및A motion analysis unit for determining the continuity between the frames before and after the split scheduled position determined by the coefficient filtering unit; And 상기 움직임 분석부에서 판단한 연속성에 따라 상기 동영상의 장면 분할 위치를 결정하는 분할 위치 결정부;A split position determiner configured to determine a scene split position of the video based on the continuity determined by the motion analyzer; 를 포함하는 동영상 인코딩 시스템.Video encoding system comprising a. 제 1 항에 있어서,The method of claim 1, 상기 장면 분할부는, 상기 복수의 장면이 상호 독립적인 관계를 갖도록 분할하는 것을 특징으로 하는 동영상 인코딩 시스템.The scene dividing unit divides the plurality of scenes to have a mutually independent relationship. 제 2 항에 있어서,The method of claim 2, 상기 장면 분할부는, 분할된 각 장면의 메타 데이터에 재생 시간 정보를 포함시키는 것을 특징으로 하는 동영상 인코딩 시스템.And the scene dividing unit includes reproduction time information in metadata of each divided scene. 제 1 항에 있어서,The method of claim 1, 상기 장면 분할부는, 상기 인코딩 대상 동영상 파일로부터 오디오 파일을 추출하고, 상기 인코딩부는 상기 추출된 오디오 파일을 인코딩하는 인코딩 모듈을 더 포함하는 것을 특징으로 하는 동영상 인코딩 시스템.And the scene dividing unit extracts an audio file from the encoding target moving image file, and the encoding unit further comprises an encoding module for encoding the extracted audio file. 제 1 항에 있어서,The method of claim 1, 상기 인코딩부에서 인코딩한 비디오 파일 및 오디오 파일을 병합하는 병합부를 더 포함하는 동영상 인코딩 시스템.And a merging unit for merging the video file and the audio file encoded by the encoding unit. 제 1 항에 있어서,The method of claim 1, 상기 장면 분할부는, 상기 인코딩 모듈의 수를 참조하여 분할할 장면의 개수를 결정하는 것을 특징으로 하는 동영상 인코딩 시스템.The scene dividing unit determines a number of scenes to be divided by referring to the number of encoding modules. 삭제delete 삭제delete 삭제delete 제 1 항에 있어서,The method of claim 1, 상기 비교 모듈은, 상기 I-프레임으로부터 AC(Alternate Current) 계수 및 DC(Direct Current) 계수 중 적어도 하나를 산출하고, 인접 I-프레임과의 AC 계수 차이 및 DC 계수 차이를 각각의 문턱값과 비교하는 것을 특징으로 하는 동영상 인코딩 시스템.The comparison module calculates at least one of an alternating current (AC) coefficient and a direct current (DC) coefficient from the I-frame, and compares the AC coefficient difference and the DC coefficient difference with adjacent I-frames with respective thresholds. Video encoding system, characterized in that. 제 1 항에 있어서,The method of claim 1, 상기 비교 모듈은, 상기 P-프레임으로부터 AC(Alternate Current) 계수 및 DC(Direct Current) 계수 중 적어도 하나를 산출하고, 인접 P-프레임과의 AC 계수 차이 및 DC 계수 차이를 각각의 문턱값과 비교하는 것을 특징으로 하는 동영상 인코딩 시스템.The comparison module calculates at least one of an alternating current (AC) coefficient and a direct current (DC) coefficient from the P-frame, and compares an AC coefficient difference and a DC coefficient difference with an adjacent P-frame with respective thresholds. Video encoding system, characterized in that. 제 1 항에 있어서,The method of claim 1, 상기 움직임 분석부는, 상기 계수 필터링부에서 결정한 분할 예정 위치 전후의 프레임 각각에 대하여, 카메라의 움직임을 분석하여 배경 영상이 시간적 또는 공간적으로 변화되었는지 확인하는 글로벌 모션 분석 모듈을 포함하는 동영상 인코딩 시스템.And the global motion analysis module including a global motion analysis module that analyzes the motion of the camera for each of frames before and after the split scheduled position determined by the coefficient filtering unit to determine whether the background image is changed temporally or spatially. 제 12 항에 있어서,13. The method of claim 12, 상기 움직임 분석부는, 상기 계수 필터링부에서 결정한 분할 예정 위치 전후의 프레임 각각에 대하여 비디오 객체의 변화를 분석하여 전경 영상이 시간적 또는 공간적으로 변화되었는지 확인 로컬 모션 분석 모듈을 더 포함하는 동영상 인코딩 시스템.The motion analysis unit further comprises a local motion analysis module for analyzing whether the foreground image is changed temporally or spatially by analyzing the change of the video object with respect to each of the frames before and after the split scheduled position determined by the coefficient filtering unit. 제 1 항에 있어서,The method of claim 1, 상기 인코딩부는 상기 장면 분할부에 의해 분할된 복수의 장면에 대하여, 장 면의 유사성을 참조하여 유사한 장면의 경우 동일한 인코딩 모듈에서 인코딩하는 것을 특징으로 하는 동영상 인코딩 시스템.And the encoding unit encodes a plurality of scenes divided by the scene dividing unit in the same encoding module in the case of similar scenes by referring to similarities of scenes. 제 14 항에 있어서,The method of claim 14, 상기 장면의 유사성은 각 장면의 컬러 특성, 형태 특성 및 움직임 특성을 참조하여 판단하는 것을 특징으로 하는 동영상 인코딩 시스템.The similarity of the scene is determined by referring to the color characteristics, shape characteristics and motion characteristics of each scene. 프레임 추출부, 계수 필터링부, 움직임 분석부 및 분할 위치 결정부를 포함하는 장면 분할부와, 인코딩부를 포함하는 동영상 인코딩 시스템에서의 동영상 인코딩 방법으로서,A video encoding method in a video encoding system including a scene splitter including a frame extractor, a coefficient filter, a motion analyzer, and a split position determiner, and an encoder, 상기 장면 분할부가 인코딩 대상 동영상 파일로부터 비디오 파일을 추출하는 과정;Extracting a video file from an encoding target video file by the scene divider; 상기 장면 분할부가 상기 비디오 파일을 복수의 장면으로 분할하는 과정; 및Dividing the video file into a plurality of scenes by the scene dividing unit; And 상기 인코딩부가 상기 복수의 장면으로 분할된 비디오 파일을 동시에 인코딩하는 과정;Simultaneously encoding, by the encoding unit, a video file divided into the plurality of scenes; 을 포함하고,Including, 상기 장면 분할부가 상기 비디오 파일을 복수의 장면으로 분할하는 과정은, 상기 프레임 추출부가 분할 대상 동영상으로부터 인트라 프레임(Intra frame; I-프레임) 및 예측 프레임(Predictive frame; P-프레임)을 추출하는 과정;The process of dividing the video file into a plurality of scenes by the scene dividing unit may include extracting an intra frame (I-frame) and a predictive frame (P-frame) from the video to be divided by the frame extractor. ; 상기 추출된 프레임 각각에 대하여, 상기 계수 필터링부가 이웃 프레임 간의 에너지 차이값과 문턱값을 비교하여 분할 예정 위치를 결정하는 과정;For each of the extracted frames, determining, by the coefficient filtering unit, a predetermined scheduled position by comparing an energy difference value and a threshold value between neighboring frames; 상기 분할 예정 위치를 참조하여, 상기 움직임 분석부가 상기 분할 예정 위치 전후의 프레임간의 시간적/공간적 연속성을 판단하는 과정; 및Determining, by the motion analyzer, temporal / spatial continuity between frames before and after the segmentation scheduled position with reference to the segmentation scheduled position; And 상기 분할 위치 결정부가 상기 시간적/공간적 연속성이 낮은 프레임을 분할 위치로 결정하는 과정;을 포함하며,And determining, by the division position determiner, a frame having a low temporal / spatial continuity as a division position. 상기 분할 예정 위치를 결정하는 과정은, 상기 I-프레임으로부터 AC(Alternate Current) 계수 및 DC(Direct Current) 계수 중 적어도 하나를 산출하는 단계;The determining of the scheduled division position includes: calculating at least one of an alternating current (AC) coefficient and a direct current (DC) coefficient from the I-frame; 이웃 I-프레임과의 상기 AC 계수 차이값 및 DC 계수 차이값을 각각의 문턱값과 비교하는 단계;Comparing the AC coefficient difference and the DC coefficient difference with neighboring I-frames with respective thresholds; 상기 AC 계수 차이값 및 DC 계수 차이값이 상기 각각의 문턱값보다 큰 I-프레임을 분할 예정 위치로 결정하는 단계;Determining an I-frame in which the AC coefficient difference value and the DC coefficient difference value are larger than the respective threshold values as the scheduled division positions; 상기 P-프레임으로부터 AC(Alternate Current) 계수 및 DC(Direct Current) 계수 중 적어도 하나를 산출하는 단계;Calculating at least one of an Alternate Current (AC) coefficient and a Direct Current (DC) coefficient from the P-frame; 이웃 P-프레임간의 AC 계수 차이값 및 DC 계수 차이값을 각각의 문턱값과 비교하는 단계; 및Comparing the AC coefficient difference value and the DC coefficient difference value between neighboring P-frames with respective threshold values; And 상기 AC 계수 차이값 및 DC계수 차이값이 상기 각각의 문턱값보다 큰 P-프레임을 분할 예정 위치로 결정하는 단계;Determining a P-frame in which the AC coefficient difference value and the DC coefficient difference value are larger than the respective threshold values as the scheduled division positions; 를 포함하는 동영상 인코딩 방법.Video encoding method comprising a. 제 16 항에 있어서,The method of claim 16, 상기 비디오 파일을 복수의 장면으로 분할하는 과정은, 상기 분할된 장면이 상호 독립적인 관계를 갖도록 분할하는 과정인 것을 특징으로 하는 동영상 인코딩 방법.And dividing the video file into a plurality of scenes comprises splitting the divided scenes to have independent relationships with each other. 제 16 항에 있어서,The method of claim 16, 상기 비디오 파일을 추출하는 과정은 상기 인코딩 대상 동영상 파일로부터 오디오 파일을 추출하는 과정을 더 포함하고, 상기 인코딩 과정은 상기 오디오 파일을 인코딩하는 과정을 더 포함하는 동영상 인코딩 방법.The extracting of the video file further includes extracting an audio file from the encoding target video file, and the encoding process further comprises encoding the audio file. 제 18 항에 있어서,The method of claim 18, 상기 인코딩 과정 이후, 인코딩된 비디오 파일 및 오디오 파일을 병합하는 과정을 더 포함하는 동영상 인코딩 방법.And after the encoding, merging the encoded video file and the audio file. 삭제delete 삭제delete 삭제delete 제 16 항에 있어서,The method of claim 16, 상기 시간적/공간적 연속성을 판단하는 과정은, 카메라의 움직임을 분석하여 배경 전환이 이루어졌는지 판단하는 단계; 및The determining of the temporal / spatial continuity may include: determining whether a background change has been made by analyzing the movement of the camera; And 상기 판단 결과 배경 전환이 이루어진 경우 이웃 프레임과 특징을 비교하여 시간적/공간적 연속성을 판단하는 단계;Determining temporal / spatial continuity by comparing features with neighboring frames when a background change is made as a result of the determination; 를 포함하는 동영상 인코딩 방법.Video encoding method comprising a. 제 23 항에 있어서,The method of claim 23, wherein 상기 판단 결과 배경 전환이 이루어지지 않은 경우 전경 전환이 이루어졌는지 판단하는 단계; 및Determining whether a foreground change is made when the background change is not performed as a result of the determination; And 상기 전경 전환이 이루어진 경우 이웃 프레임과 특징을 비교하여 시간적/공간적 연속성을 판단하는 단계;Determining temporal / spatial continuity by comparing features with neighboring frames when the foreground change is made; 를 더 포함하는 동영상 인코딩 방법.Video encoding method further comprising. 제 16 항에 있어서,The method of claim 16, 상기 분할 위치를 결정하는 과정 이후, 상기 분할 위치 결정부가 상기 분할 위치에 따라 상기 동영상의 장면을 분할하는 과정; 및After the determining of the dividing position, dividing the scene of the video according to the dividing position by the dividing position determining unit; And 상기 분할 위치 결정부가 상기 분할된 각 장면의 메타데이터에 재생 순서 정보를 저장하는 과정;Storing division order information in metadata of the divided scenes by the division position determiner; 을 더 포함하는 동영상 인코딩 방법.Video encoding method further comprising.
KR1020090107851A 2009-11-10 2009-11-10 Encoding System and Method of Moving Picture KR101087194B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020090107851A KR101087194B1 (en) 2009-11-10 2009-11-10 Encoding System and Method of Moving Picture

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020090107851A KR101087194B1 (en) 2009-11-10 2009-11-10 Encoding System and Method of Moving Picture

Publications (2)

Publication Number Publication Date
KR20110051336A KR20110051336A (en) 2011-05-18
KR101087194B1 true KR101087194B1 (en) 2011-11-29

Family

ID=44361607

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020090107851A KR101087194B1 (en) 2009-11-10 2009-11-10 Encoding System and Method of Moving Picture

Country Status (1)

Country Link
KR (1) KR101087194B1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20140134100A (en) * 2013-05-13 2014-11-21 주식회사 알티캐스트 Method for generating user video and Apparatus therefor

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101283791B1 (en) * 2011-09-08 2013-07-08 브로드밴드미디어주식회사 System for encoding distributed moving pictur file and method for the same
US10951906B2 (en) * 2018-08-16 2021-03-16 Bombbomb, Inc. Method and system for implementing split and parallelized encoding or transcoding of audio and video content
JP7105675B2 (en) 2018-11-02 2022-07-25 株式会社東芝 Transmission device, server device, transmission method and program
KR102291293B1 (en) * 2020-02-26 2021-08-20 가부시끼가이샤 도시바 Transmission device, comunication system, transmission method, and non-transitory computer readable recording medium
JP7419151B2 (en) 2020-04-21 2024-01-22 株式会社東芝 Server device, information processing method and program
JP7438835B2 (en) * 2020-04-21 2024-02-27 株式会社東芝 Server device, communication system, program and information processing method
KR102538008B1 (en) * 2020-12-30 2023-05-31 동국대학교 산학협력단 System and method for improving audio quality in video contents based on deep-learning algorithm

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008109637A (en) * 2006-09-25 2008-05-08 Toshiba Corp Motion picture encoding apparatus and method
WO2008111707A1 (en) 2007-03-15 2008-09-18 Samsung Electronics Co., Ltd. System and method for digital communication having a frame format and parsing scheme with parallel convolutional encoders

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008109637A (en) * 2006-09-25 2008-05-08 Toshiba Corp Motion picture encoding apparatus and method
WO2008111707A1 (en) 2007-03-15 2008-09-18 Samsung Electronics Co., Ltd. System and method for digital communication having a frame format and parsing scheme with parallel convolutional encoders

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20140134100A (en) * 2013-05-13 2014-11-21 주식회사 알티캐스트 Method for generating user video and Apparatus therefor
KR102069897B1 (en) 2013-05-13 2020-01-23 주식회사 알티캐스트 Method for generating user video and Apparatus therefor

Also Published As

Publication number Publication date
KR20110051336A (en) 2011-05-18

Similar Documents

Publication Publication Date Title
KR101087194B1 (en) Encoding System and Method of Moving Picture
TWI578757B (en) Encoding of video stream based on scene type
CN105264892B (en) Video compress is adjusted for high frame per second and variable frame rate capture
JP4373606B2 (en) Apparatus and method for using accompanying information to improve an encoding system
JP3719933B2 (en) Hierarchical digital video summary and browsing method and apparatus
US9510028B2 (en) Adaptive video transcoding based on parallel chunked log analysis
US10771789B2 (en) Complexity adaptive rate control
WO2021147448A1 (en) Video data processing method and apparatus, and storage medium
US20070103558A1 (en) Multi-view video delivery
US8139877B2 (en) Image processing apparatus, image processing method, and computer-readable recording medium including shot generation
Nasreen et al. Key frame extraction from videos-A survey
KR101149522B1 (en) Apparatus and method for detecting scene change
Menon et al. Efficient content-adaptive feature-based shot detection for http adaptive streaming
US20130235935A1 (en) Preprocessing method before image compression, adaptive motion estimation for improvement of image compression rate, and method of providing image data for each image type
KR101050255B1 (en) Video scene segmentation system and method
JP2003061038A (en) Video contents edit aid device and video contents video aid method
KR102430177B1 (en) System for rapid management of large scale moving pictures and method thereof
CN112714336B (en) Video segmentation method and device, electronic equipment and computer readable storage medium
Su et al. A novel source mpeg-2 video identification algorithm
JP5171270B2 (en) Multiplexing method and apparatus for moving picture, and program and computer-readable recording medium
US11659217B1 (en) Event based audio-video sync detection
Herranz et al. An engine for content-aware on-line video adaptation
WO2023059689A1 (en) Systems and methods for predictive coding
KR20230053288A (en) Method and apparatus for storing video data using event detection
Mithlesh et al. Detection of Scene Change in Video

Legal Events

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

Payment date: 20141124

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20151123

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20161007

Year of fee payment: 6

LAPS Lapse due to unpaid annual fee