KR101087194B1 - Encoding System and Method of Moving Picture - Google Patents
Encoding System and Method of Moving Picture Download PDFInfo
- 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
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/134—Methods 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/157—Assigned coding mode, i.e. the coding mode being predefined or preselected to be further used for selection of another element or parameter
- H04N19/159—Prediction type, e.g. intra-frame, inter-frame or bidirectional frame prediction
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/20—Analysis of motion
- G06T7/215—Motion-based segmentation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
- H04N19/503—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
- H04N19/51—Motion estimation or motion compensation
- H04N19/527—Global motion vector estimation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing 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/434—Disassembling 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/4341—Demultiplexing 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
본 발명은 영상 처리 시스템에 관한 것으로, 보다 구체적으로는 동영상 인코딩 시스템 및 방법에 관한 것이다.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
도 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
파일 관리부(120)는 CP 서버들(30-1~30-n)로부터 수집한 동영상 또는 자체 동영상 DB(40)에 보유하고 있는 각각의 동영상 파일에 대하여, 동영상 파일의 타이틀, 비디오 파일, 오디오 파일 등 동영상 파일의 전반적인 정보를 관리한다.The
장면 분할부(130)는 인코딩하고자 하는 동영상의 비디오 파일을 독립적인 복수의 장면으로 분할한다. 그리고, 장면 분할부(130)는 분할된 각 장면의 메타 데이터에 재생 시간 정보 즉, 재생 순서(time stamp)를 포함시켜 이후 처리 과정에서 참조될 수 있도록 한다.The
장면 분할시에는 분할된 각각의 장면이 상호 상관도가 없도록 분할할 수 있는 다양한 장면 분할 기법을 이용할 수 있다. 특히, 본 발명에서는 프레임의 에너지, 카메라의 움직임 분석 및 추정을 이용한 장면 분할 기법을 이용할 수 있다. 이러한 장면 분할 기법은 본 출원인에 의해 출원번호 제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
본 발명의 일 실시예에서, 인코딩 모듈의 수와 처리 능력을 고려하여, 장면 분할부(130)에서 분할되는 장면의 개수를 적절히 조절할 수 있다. 즉, 하나의 동 영상을 독립적인 복수의 장면으로 분할한 결과, 분할된 장면의 개수가 인코딩 모듈의 수보다 많은 경우 인접하는 장면을 병합하는 방법 등을 이용하여 분할된 장면의 개수와 인코딩 모듈의 수를 맞출 수 있다. 또는, 장면 분할부(130)에서 분할된 장면의 개수가 인코딩 모듈의 수보다 많은 경우 인코딩 모듈의 수만큼 각 장면을 1차 분산 인코딩하고, 나머지 장면에 대해 2차 분산 인코딩하는 방법 또한 적용할 수 있다.In an embodiment of the present disclosure, the number of scenes divided by the
본 발명에서, 인코딩부(140)를 구성하는 복수의 인코딩 모듈은 상호 통신이 없이 각기 독립적으로 인코딩을 수행한다. 따라서, 각각 독립적인 복수의 컴퓨팅 장치를 이용하여 복수의 인코딩 모듈을 구성할 수도 있고, 멀티 코어와 같은 병렬 시스템을 이용하여 복수의 인코딩 모듈을 구성하는 것도 가능하다.In the present invention, a plurality of encoding modules constituting the
병합부(150)는 인코딩부(140)에서 분산 인코딩된 복수의 장면들 및 인코딩된 오디오 파일을 취합하여 하나의 동영상 파일로 생성한 후 저장부(160)에 저장한다. 이때, 분할된 각 장면의 메타 데이터에 포함된 타임 스탬프를 참조하여, 하나의 완성된 동영상 파일을 생성한다.The
한편, 디코딩부(170)는 분산 인코딩하고자 하는 동영상 파일이 인코딩된 상태로 수신되는 경우, 해당 동영상을 미리 디코딩하는 기능을 수행한다.Meanwhile, when the video file to be distributedly encoded is received in the encoded state, the
분산 인코딩을 수행하기 위한 동영상을 디코딩할 때, 디코딩부(170)는 각 프레임에 대한 장면 링크(scene link) 정보 즉, 컬러 특성(color feature), 형태 특성(shape feature) 및 움직임 특성(motion feature)를 필터링하여 캐시 데이터로 관리할 수 있다. 그리고, 제어부(110)는 장면 분할부(130)에서 분할된 장면을 인 코딩부(140)로 전송할 때, 장면 링크 정보를 포함하는 캐시 데이터를 참조하여, 장면 링크 정보가 유사한 장면을 동일 인코딩 모듈로 전송할 수 있다. 이와 같이 하는 경우, 유사한 장면에 대한 인코딩이 동일한 인코딩 모듈에서 수행되므로 인코딩 속도를 향상시킬 수 있다. 즉, 유사한 장면의 경우 컬러 및 움직임 정보의 예측이 용이하게 때문에 동일 인코딩 모듈에서 인코딩을 수행하도록 하여 처리 속도를 높일 수 있게 되는 것이다.When decoding a video for performing distributed encoding, the
이와 같이, 본 발명에서는 하나의 동영상 파일을 상호 독립적인 복수의 장면으로 분할한다. 그리고, 분할된 각각의 장면을 병렬 인코딩함으로써 인코딩에 소요되는 시간을 대폭 단축시킬 수 있다. 아울러, 분할된 장면이 상호 독립적이기 때문에, 즉 이전 장면과 이후 장면과의 상관도가 없기 때문에 분산 인코딩한 후 이를 다시 디코딩하고 재생하여도 동영상의 화질을 원본과 같은 수준으로 유지할 수 있다.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
다음, 도 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
동영상을 구성하는 프레임은 인트라 프레임(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
일반적으로 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
이를 위해, 프레임 추출부(132)는 도 4에 도시한 것과 같이, I-프레임 추출 모듈(1321) 및 P-프레임 추출 모듈(1323)을 포함한다. 한편, 계수 필터링부(134)는 비교 모듈(1341) 및 선택 모듈(1343)을 포함한다.To this end, the
분할 대상 프레임에 대하여 프레임 추출부(132)의 I-프레임 추출 모듈(1321) 및 P-프레임 추출 모듈(1323)에서 각각 프레임이 추출된다. 그리고, 비교 모듈(1341)은 이웃 I-프레임 간 AC 계수 및 DC 계수의 차이를 각각 기 설정된 문턱값과 비교하는 한편, P-프레임 간 AC계수 및 DC 계수의 차이를 각각 기 설정된 문턱값과 비교한다. 아울러, 선택 모듈(1343)은 비교 모듈(1341)의 비교 결과에 따라 의미 있는 장면 전환 위치로 추정되는 프레임 즉, DC 계수 차이 또는 AC 계수 차이가 문턱값보다 높은 프레임을 분할 예정 위치로서 선택한다.Frames are extracted by the I-
다만, 이러한 에너지의 비교만으로는 장면 전환 여부를 정확히 판단할 수 없으므로, 움직임 분석부(136)를 통해 분할 예정 위치로 결정된 프레임들에 대하여 프레임의 배경 또는 전경이 이전 프레임과 변경되었는지 확인한다.However, since it is not possible to accurately determine whether to change the scene only by comparing the energy, the
즉, 움직임 분석부(136)는 계수 필터링부(134)의 선택 모듈(1343)에서 분할 예정 위치로 선택된 프레임들을 참조하여, 이웃 프레임 간 비교를 통해 시간적/공간적 연속성을 판단한다. 시간적/공간적 연속성은 프레임의 글로벌 모션(Global motion) 분석 또는 로컬 모션(Local motion)을 분석에 의해 이루어지며, 이를 위해 움직임 분석부(136)는 도 5에 도시한 것과 같이 글로벌 모션 분석 모듈(1361) 및 로컬 모션 분석 모듈(1363)을 포함한다.That is, the
글로벌 모션 분석 모듈(1361)은 카메라 움직임 분석을 통해 해당 프레임이 이전 프레임과 비교할 때 배경 영상이 변화되었는지 확인한다. 즉, 카메라의 패닝(Panning), 요잉(Yawing), 주밍(Zooming) 등 촬영 기법에 의한 2차원적 움직임(시간적 연속성)인지, 공간 이동에 의한 3차원적 움직임(공간적 연속성)인지 판단한다. 이를 위해 글로벌 모션 분석 모듈(1361)은 분할 예정 위치에서의 각 프레임에 대하여 잉여(residual) 계수 즉, AC 계수의 분포 패턴을 분석하며, 이로부터 프레임 간 에너지의 차이는 크나 단순한 촬영 기법에 의한 에너지 변화인지, 실제 장면 전환에 의한 에너지 변화인지를 판단할 수 있다.The global
로컬 모션 분석 모듈(1363)은 해당 프레임이 이전 프레임과 비교할 때 전경 영상 즉, 비디오 객체가 변화되었는지 확인한다. 이는 인물 또는 인물의 모션이 변화되었는지 확인하는 것으로, 분할 예정 위치에서의 각 프레임에 대하여 비디오 객체를 분리한 후, 이웃하는 프레임 간의 잉여 계수 즉, AC 계수의 분포 패턴을 분석하여 시간적 연속성 및 공간적 연속성을 판단한다.The local
글로벌 모션 분석 및 로컬 모션 분석에는 다양한 특징 추출 알고리즘이 이용 될 수 있으며, 예를 들어 움직임 벡터에 대한 주요 성분 분석법(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
이와 같이, 본 발명에 적용되는 장면 분할부(130)는 분할 대상 동영상을 구성하는 프레임 중 이웃 프레임과 에너지 차이가 큰 프레임을 추출하여 분할 예정 위치를 결정한다. 이때, 이웃 프레임과 독립적인 I-프레임은 물론, P-프레임까지 고려하여 장면 분할의 정확도를 높인다.As described above, the
그리고, 분할 예정 위치 전후의 프레임으로부터, 움직임 분석을 통해 시간적/공간적 연속성을 판단한다. 결국, 시간적/공간적 연속성이 낮은 프레임을 추출하고, 이로부터 분할 위치를 결정함으로써, 장면 전환이 이루어진 프레임 간을 정확히 구분하여 분할된 장면들이 상호 독립적이 되도록 할 수 있다.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
한편, 이상에서 설명한 동영상 인코딩 시스템(10)에서의 인코딩 방법을 설명하면 다음과 같다.Meanwhile, the encoding method of the
도 6은 본 발명의 일 실시예에 의한 동영상 인코딩 방법을 설명하기 위한 흐름도이다.6 is a flowchart illustrating a video encoding method according to an embodiment of the present invention.
동영상 인코딩 시스템(10)은 CP 서버 또는 자체적으로 보유하고 있는 데이터베이스로부터 인코딩 대상 동영상 파일을 수신한다(S10).The
그리고, 장면 분할부(130)는 수신한 동영상 파일로부터 오디오 파일 및 비디오 파일을 추출하고(S20), 추출된 비디오 파일을 상호 독립적인 복수의 장면으로 분할한다(S30). 이때, 분할된 각 장면의 메타 데이터에 재생 시간 정보 즉, 타임 스탬프를 기록해 두어 후속 과정에서 참조될 수 있도록 한다.Then, the
다음, 인코딩부(140)는 단계 S30에서 분할된 각각의 장면을 분산 인코딩하는 한편, 단계 S30에서 추출한 오디오 파일을 인코딩한다(S40). 즉, 장면 단위로 분할된 비디오 파일을 복수의 인코딩 모듈에서 동시에 인코딩함으로써, 인코딩이 고속으로 이루어지게 된다.Next, the
인코딩이 완료되면 병합부(150)는 단계 S40에서 인코딩한 오디오 파일과 각 각 독립적으로 인코딩된 복수의 비디오 파일을 병합하여 하나의 인코딩된 동영상 파일을 생성한다(S50). 이 경우, 장면 분할 과정에서 메타 데이터에 포함된 타임 스탬프 정보를 이용하여, 각기 인코딩된 복수의 비디오 파일을 재생 순서에 맞게 병합할 수 있다.When the encoding is completed, the
도 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
이후, 움직임 분석부(136)에서는 단계 S310에서 결정된 분할 예정 위치를 참조하여, 분할 예정 위치 전후의 프레임간 비교를 통해 시간적/공간적 연속성을 판단한다(S320). 즉, 분할 예정 위치 전후의 프레임으로부터 특징을 추출하고 비교하여 2차원적, 또는 3차원적 변화가 존재하는지 확인하는 것이다.Thereafter, the
그리고, 단계 S320의 판단 결과에 따라, 분할 위치 결정부(138)는 시간적/공간적 연속성이 낮은 프레임을 동영상의 실제 장면 전환 위치로 결정하고(S330), 해당 위치에서 동영상을 분할한다(S340).Then, according to the determination result of step S320, the
도 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-
그리고, 계수 필터링부(134)의 비교 모듈(1341)은 각 프레임의 에너지 즉, AC 계수 및 DC 계수를 산출하고(S313), 프레임 간의 에너지 차이값을 기 설정된 문턱값과 비교한다(S315).The
이후, 선택 모듈(1343)은 단계 S315의 비교 결과 프레임 간의 에너지 차이값이 문턱값보다 큰 프레임을 분할 예정 위치로 결정한다(S317).Thereafter, the
이와 같이 분할 예정 위치를 결정한 후에는 도 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
글로벌 모션으로 판단된 경우에는 해당 프레임의 배경에 대한 특징을 추출하여(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
그리고, 이웃 프레임과 시간적/공간적 연속성이 낮은 프레임을 분할 위치로 결정한다(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
이와 같이, 본 발명은 이웃 프레임 간의 에너지 차이 값에 의해 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)
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)
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)
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)
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 |
-
2009
- 2009-11-10 KR KR1020090107851A patent/KR101087194B1/en not_active IP Right Cessation
Patent Citations (2)
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)
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 |