KR100441963B1 - Scene Change Detector Algorithm in Image Sequence - Google Patents

Scene Change Detector Algorithm in Image Sequence Download PDF

Info

Publication number
KR100441963B1
KR100441963B1 KR10-2001-0015628A KR20010015628A KR100441963B1 KR 100441963 B1 KR100441963 B1 KR 100441963B1 KR 20010015628 A KR20010015628 A KR 20010015628A KR 100441963 B1 KR100441963 B1 KR 100441963B1
Authority
KR
South Korea
Prior art keywords
frames
frame
scene
scene change
segment
Prior art date
Application number
KR10-2001-0015628A
Other languages
Korean (ko)
Other versions
KR20020075956A (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 KR10-2001-0015628A priority Critical patent/KR100441963B1/en
Priority to PCT/KR2002/000949 priority patent/WO2003098549A1/en
Priority claimed from PCT/KR2002/000949 external-priority patent/WO2003098549A1/en
Publication of KR20020075956A publication Critical patent/KR20020075956A/en
Application granted granted Critical
Publication of KR100441963B1 publication Critical patent/KR100441963B1/en

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N5/00Details of television systems
    • H04N5/14Picture signal circuitry for video frequency region
    • H04N5/147Scene change detection
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T1/00General purpose image data processing

Abstract

본 발명은 2단계 검출과정을 적용하여 장면전환을 정확하고 안정적으로 인식하는 장면전환 검출방법에 관한 것으로서, 인접 프레임간의 변화 유무를 판단하여 각각 트랜지션(TRANSITION) 상태와 스테이셔너리(STATIONARY) 상태로 분류하는 제 1 단계와, 상기 분류된 프레임의 장면전환 여부를 재확인하여 장면전환을 확정하는 제 2 단계를 포함하여 이루어지는 것을 특징으로 한다.The present invention relates to a scene change detection method for accurately and stably recognizing a scene change by applying a two-stage detection process. And a second step of classifying, and a second step of reconfirming the scene change by re-confirming whether the classified frames are scene change.

Description

장면전환 검출방법{Scene Change Detector Algorithm in Image Sequence}Scene Change Detector Algorithm in Image Sequence

본 발명은 디지털 영상의 장면전환 검출 방법에 관한 것으로, 특히 2단계 검출과정을 이용한 디지털 영상의 장면전환 검출 및 키 프레임 추출 방법에 관한 것이다.The present invention relates to a method for detecting a scene change of a digital image, and more particularly, to a method for detecting a scene change and a key frame extraction of a digital image using a two-step detection process.

최근 비디오 색인에 의한 비디오 검색을 비롯한 다양한 멀티미디어 서비스 시스템의 개발이 이루어지고 있다. 일반적으로 디지털 비디오는 데이터량이 매우방대하나 한 장면 내에서는 유사한 이미지가 연속된다는 특성을 갖기 때문에 장면 단위로 비디오를 색인하면 효율적으로 비디오를 검색할 수 있다. 이 때, 장면이 전환되는 시점을 찾고, 그 장면을 대표하는 이미지인 키 프레임을 추출하는 기술은 비디오 색인 및 검색 시스템을 구축하는데 있어 필수적 요소가 된다.Recently, various multimedia service systems have been developed, including video retrieval by video index. In general, digital video has a very large amount of data, but similar images are contiguous within a scene, so indexing the video scene by scene enables efficient video retrieval. At this time, the technique of finding the time point at which the scene is changed and extracting the key frame, which is an image representing the scene, becomes an essential element in constructing the video indexing and searching system.

장면전환 검출방법은 다음과 같은 종류의 장면전환을 검출하는 것을 목표로 하고 있다.The scene change detection method aims to detect the following kinds of scene change.

① 컷(Cut) : 화면이 급작스럽게 변하는 것① Cut: The screen is changed suddenly.

② 페이드(Fade) : 화면이 점차 어두워지거나 밝아지면서 전환되는 것② Fade: The screen is gradually darkened or brightened and switched.

③ 디졸브(Dissolve) : 두 화면이 겹치면서 전환되는 것③ Dissolve: two screens overlapping and switching

④ 와이프(Wipe) : 이전화면이 닦아져 없어지는 것처럼 다음 화면으로 전환되는 것④ Wipe: Switching to the next screen as if the previous screen is wiped off

컷에 의한 장면 전환은 프레임간의 차이만을 찾아내어 간단한 알고리즘으로도 쉽게 찾아낼 수 있으나, 다른 페이드, 디졸브, 와이프에 의한 장면전환은 장면전환이 점진적인 과정을 거쳐 일어나기 때문에 인물이나 물체 또는 카메라의 움직임에 의한 장면 내의 점진적 변화와 혼동되어 정확하게 검출하기가 어렵다.Cut transitions by cuts can be easily detected by simple algorithms by detecting only the differences between frames.However, transitions made by other fades, dissolves, or wipes can be detected by the movement of a person, object, or camera because the transition is a gradual process. It is confused with the gradual change in the scene by which it is difficult to detect accurately.

장면전환 검출방법에는 크게 다음과 같은 두 가지 접근 방법이 있다.There are two main approaches to scene change detection.

첫 번째는 압축된 비디오 데이터를 완전히 복호화하지 않고 움직임 벡터, DCT(Discrete Cosine Transform) 계수 등 일부 정보만을 추출하여 장면 전환을 검출하는 접근 방법이다. 이러한 접근 방법은 압축된 비디오를 완전히 복호화하지 않고 처리하기 때문에 처리 속도가 상대적으로 빠르다는 장점이 있으나, 다음과 같은단점을 갖는다.The first is an approach that detects scene transitions by extracting only some information such as motion vectors and discrete cosine transform (DCT) coefficients without completely decoding the compressed video data. This approach has the advantage that the processing speed is relatively high because the compressed video is processed without being completely decoded, but has the following disadvantages.

비디오를 일부만 복호화해서 사용하기 때문에 정보 부족으로 정확도가 떨어지며, 장면 전환 검출 방법이 비디오의 압축 방식에 의존적이 되는데, 최근에는 비디오 압축 방식도 매우 다양하기 때문에 압축 방식에 따라 검출 방법이 달라져야 한다. 또한, 이 접근 방법에서 주로 사용되는 정보인 움직임 벡터, 매크로 블록 타입 등은 인코딩 알고리즘에 따라 값이 상당히 달라질 수 있기 때문에 같은 내용의 비디오라도 인코더의 종류와 인코딩 방법에 따라 장면 전환 검출 결과가 달라질 수 있다.Since only a portion of the video is decoded and used, the accuracy decreases due to lack of information, and the scene change detection method depends on the video compression method. Recently, since the video compression method is very diverse, the detection method must be changed according to the compression method. In addition, since the motion vector, macroblock type, etc., which are mainly used in this approach, values may vary considerably according to encoding algorithms, scene transition detection results may vary depending on the type of encoder and the encoding method even for video having the same content. have.

두 번째 접근 방법은 압축된 비디오를 완전히 복호화한 후 이미지 도메인에서 장면전환을 검출하는 접근 방법이다. 이 방법은 전자의 방법에 비해 장면전환 검출 정확도는 높지만 압축된 비디오를 복호화하는데 소요되는 시간만큼 처리 속도가 떨어진다는 단점이 있다. 그러나, 최근 컴퓨터의 성능이 급격히 향상되고 있고, 비디오를 디코딩하는데 하드웨어를 이용할 수 있으며, MMX 3DNow 기술 등을 비롯한 소프트웨어 최적화 기술을 이용하면 디코딩에 소요되는 계산량이 크게 문제되지 않는다는 점에서, 복호화에 소요되는 시간을 절약하는 것보다는 장면전환 검출의 정확도를 높이는 것이 더 중요시되고 있다.The second approach is to fully decode the compressed video and then detect the transition in the image domain. This method has higher accuracy of scene change detection than the former method, but has a disadvantage in that the processing speed is reduced by the time required to decode the compressed video. However, in recent years, computer performance has been rapidly improved, hardware can be used to decode video, and software optimization techniques, such as MMX 3DNow technology, can be used for decoding since the computational cost of decoding does not matter. It is more important to increase the accuracy of scene change detection than to save time.

본 발명은 후자의 접근 방법을 따르고 있다.The present invention follows the latter approach.

현재 연구가 진행 중인 후자의 접근 방법에 의한 장면전환 검출방법은 화소값의 차이를 이용하는 방법(Template matching), 히스토그램의 차이를 이용한 방법, 윤곽선(edge)의 변화를 이용한 방법, 블록 매칭을 이용한 방법 등이 있으며 간략히 설명하면 다음과 같다.The scene change detection method by the latter approach currently under study is based on the method of using the difference of pixel value (Template matching), the method of using the histogram difference, the method of using the change of edges, the method using block matching And briefly described as follows.

화소값의 차이를 이용하는 방법(Template matching)은 시간적으로 서로 인접한 두 프레임 간에 동일한 공간적 위치를 가지는 두 화소값의 차이를 구하여, 그것을 장면전환을 검출하기 위한 척도로 이용하는 것이다. 히스토그램의 차이를 이용한 방법(Histogram comparison)은 한 영상 내에서의 밝기 성분이나, 색깔 성분 등을 히스토그램으로 표현하고, 이 프레임간의 히스토그램 차이를 이용하는 방법이다. 윤곽선(edge)의 변화를 이용한 방법은 영상 내에 있는 물체의 윤곽선을 검출해내고, 이 윤곽선의 변화를 이용하여 장면전환을 검출한다. 장면전환이 일어나지 않으면, 현재의 윤곽선의 위치와 이전 프레임의 윤곽선의 위치가 비슷하지만, 장면전환이 일어나게 되면, 현재의 윤곽선의 위치는 이전 프레임의 윤곽선의 위치와 다르게 된다. 블록 매칭을 이용한 방법은 인접한 두 프레임간에 비슷한 블록을 찾아내는 블록 매칭을 이용하여 장면전환을 검출하는 척도로 사용하여, 먼저 영상을 서로 겹치지 않는 여러 개의 블록으로 나누고, 각 블록에 대하여 이전 프레임에서 가장 비슷한 블록을 찾아낸다. 그리고, 찾아낸 가장 비슷한 블록과의 차이 정도를 0∼1 사이의 값으로 표현한 후, 이 값들을 비선형적인 필터를 거쳐서 프레임간의 차이값을 생성해내고, 그 값을 이용하여 장면전환의 여부를 결정하는 방법이다.Template matching uses a difference of pixel values to obtain a difference between two pixel values having the same spatial position between two frames adjacent to each other in time, and uses the same as a measure for detecting a scene change. Histogram comparison is a method of expressing a brightness component, a color component, and the like in a picture by using a histogram, and using a histogram difference between the frames. The method using the change of the edge detects the outline of the object in the image, and detects the scene change by using the change of the outline. If the transition does not occur, the position of the current contour and the position of the contour of the previous frame are similar, but when the transition occurs, the position of the current contour is different from the position of the contour of the previous frame. The method using block matching is used as a measure of detecting transitions by using block matching to find similar blocks between two adjacent frames. First, the image is divided into several blocks that do not overlap each other, and for each block, the most similar to the previous frame. Find the block. Then, the difference between the most similar blocks found is expressed as a value between 0 and 1, and these values are generated through the nonlinear filter to generate the difference between the frames, and then use the values to determine whether to change scenes. It is a way.

그러나, 상기와 같은 종래 장면전환 검출방법은 다음과 같은 문제점이 있었다.However, the conventional scene change detection method has the following problems.

종래의 장면전환 검출방법은 각 장면의 내용을 인지적으로 이해해서 내용이바뀌는 시점을 찾아내는 것이 아니라, 화소의 컬러나 밝기의 변화 같은 기초적인 이미지 특성(Primitive feature)의 변화를 관찰하여 장면전환을 인식하는 방법이다. 따라서, 인물이나 물체 또는 카메라의 움직임에 의한 장면 내의 점진적 변화와 페이드, 디졸브 또는 와이프와 같은 점진적인 장면의 변화를 구별하지 못하는 단점이 있다.Conventional scene change detection method does not cognitively understand the contents of each scene to find the point of time when the contents change, but observes the change of basic primitive features such as the color or brightness of the pixel. How to recognize. Thus, there is a disadvantage in that a gradual change in a scene due to movement of a person, an object or a camera and a change in a gradual scene such as a fade, dissolve, or wipe cannot be distinguished.

본 발명은 상기와 같은 문제점을 해결하기 위해 안출한 것으로, 본 발명 역시 기초적인 이미지 특성의 변화를 감지하여 장면전환을 인식하지만, 2단계 검출과정을 적용하여 어떠한 형태의 장면전환도 정확하고 안정적으로 인식하는 방법을 제공하는데 그 목적이 있다.The present invention has been made to solve the above problems, the present invention also recognizes the scene change by detecting the change in the basic image characteristics, but by applying a two-step detection process any type of scene change accurately and stably Its purpose is to provide a way to recognize it.

도 1은 시간축에 따라 인접 프레임 간의 이미지 차이를 도시한 것.1 illustrates image differences between adjacent frames along a time axis.

도 2는 본 발명에 따른 장면전환 검출방법의 순서도.2 is a flowchart of a scene change detection method according to the present invention;

도 3은 YCbCr 공간에서 HSV 공간으로의 양자 변환을 설명하기 위한 것.3 illustrates quantum conversion from YCbCr space to HSV space.

도 4는 도 2의 제 2 단계의 순서도.4 is a flow chart of a second step of FIG.

도 5는 IS, VS에 저장된 프레임들을 세그먼트로 분할하는 방법을 설명하기 위한 것.5 is a diagram illustrating a method of dividing frames stored in IS and VS into segments.

도 6은 각 세그먼트가 독립된 장면으로 분리될 필요가 있는지 판단하는 순서도.6 is a flowchart for determining whether each segment needs to be separated into independent scenes.

상기 목적을 달성하기 위한 본 발명은 영상 프레임 특성의 변화를 감지하여 장면전환을 검출하는 방법에 있어서, 인접 프레임간의 변화 유무를 판단하여 인접 프레임간의 변화가 있는 트랜지션 상태와 인접 프레임간의 변화가 없는 스테이셔너리 상태로 분류하는 제 1 단계와, 상기 분류된 프레임 중 트랜지션 상태로 분류된 프레임의 분할된 세그먼트의 독립된 장면으로의 분리 유무를 해당 세그먼트의 키 프레임을 통해 장면전환 여부를 재확인하여 장면전환을 확정하는 제 2 단계를 포함하여 이루어지는데 있다.In order to achieve the above object, the present invention provides a method for detecting a scene change by detecting a change in a characteristic of an image frame, and determining whether or not there is a change between adjacent frames so that a transition state with a change between adjacent frames and a stay without change between adjacent frames are provided. The first step of classifying into a state of state and the presence or absence of the segmentation of the divided segments of the frames classified as the transition state among the classified frames as independent scenes are reconfirmed whether the scene transition is performed through the key frame of the corresponding segment. The second step is to determine.

상기 제 1 단계는 모드(Mode) 및 스택(Stack)을 초기화하는 단계와, 현재 프레임을 디코딩(Decoding)하여 이미지를 IS(Image Stack)에 저장하는 단계와, 현재 프레임의 이미지에서 특징벡터를 추출하여 VS(Vector Stack)에 저장하는 단계와, VS에 저장된 최근 두 프레임의 특징벡터 간의 차이를 DQ(Difference Queue)에 저장하는 단계와, 상기 DQ에 저장된 특징벡터간의 차이가 모드 변환 조건을 충족하는지를 판단하는 단계와, 상기 IS 및 VS가 꽉 찼는지를 확인하는 단계와, 상기 프레임이 마지막 프레임인지를 확인하는 단계를 포함하여 이루어지는 알고리즘으로 구성된다.The first step includes initializing a mode and a stack, decoding a current frame, storing an image in an image stack, and extracting feature vectors from an image of the current frame. Storing in the vector stack (VS), storing the difference between the feature vectors of the last two frames stored in the VS in a difference queue, and whether the difference between the feature vectors stored in the DQ satisfies a mode conversion condition. And an algorithm comprising determining, determining whether the IS and VS are full, and checking whether the frame is the last frame.

상기 제 2 단계는 제 1 단계에서 DQ에 저장된 특징벡터간의 차이가 모드 전환 조건을 충족하는 경우 또는 IS, VS가 꽉 찬 경우 또는 프레임이 마지막 프레임일 경우에 적용되는 알고리즘으로서, 스테이셔너리 모드일 경우 저장된 전체 프레임들을 하나의 세그먼트로 설정하는 단계와, 트랜지션 모드일 경우 저장된 프레임들을 여러 개의 세그먼트로 분할 설정하는 단계와, 상기 각 모드에 따라 처리할 세그먼트가 존재하는지 확인하는 단계와, 상기 처리 가능한 세그먼트가 존재할 경우 각 세그먼트가 독립된 장면으로 분리될 필요가 있는지 여부를 판단하는 단계를 포함하여 이루어지는 알고리즘으로 구성된다.The second step is an algorithm applied when the difference between the feature vectors stored in the DQ in the first step satisfies the mode switching condition, or when the IS and VS are full or the frame is the last frame. Setting all stored frames in one segment; dividing and setting the stored frames into multiple segments in transition mode; checking whether there are segments to be processed according to each mode; and If there is a segment, the algorithm consists of determining whether each segment needs to be separated into an independent scene.

이하, 본 발명에 따른 장면전환 검출 방법을 도면을 참조하여 상세히 설명한다.Hereinafter, the scene change detection method according to the present invention will be described in detail with reference to the drawings.

도 1은 시간축에 따라 인접 프레임 간의 이미지 차이를 도시한 것이다.1 illustrates an image difference between adjacent frames along a time axis.

도 1에 도시한 바와 같이, 시간축에 따라 복수개의 프레임을 갖는 장면들이 나열되어 있고, 각 장면의 프레임들은 컬러와 경계선의 세기와 같은 이미지 특성을 기초로 하여 산출한 이미지 특징벡터를 갖으며, 이를 이용하여 계산된 인접 프레임간의 변화가 도시되어 있다.As shown in FIG. 1, scenes having a plurality of frames are listed along the time axis, and the frames of each scene have image feature vectors calculated based on image characteristics such as color and boundary strength. The change between adjacent frames calculated using the plot is shown.

상기 각 장면의 프레임들은 상기와 같은 이미지 특징벡터의 차이에 의해 인접 프레임 간의 변화가 있는 프레임들과 변화가 없는 프레임들로 분류할 수 있다.도면에 도시된 임계치 T1과 T2(T1<T2)를 기준으로 보면, T2이상의 값을 갖는 프레임들은 급격한 변화가 있는 프레임(㉠)이고, T1보다 크고 T2보다 작은 프레임들은 점진적인 변화를 갖는 프레임(㉡)으로 분류할 수 있다. 또한, 임계치 T1보다 작은 값을 갖는 프레임들은 변화가 없는 프레임(㉢)으로 정의된다Frames of the scenes may be classified into frames having no change and frames having no change between adjacent frames due to the difference of the image feature vectors. [0037] Thresholds T1 and T2 (T1 <T2) shown in the drawing may be classified. As a reference, frames having a value greater than or equal to T2 may be classified as a frame having a sudden change, and frames larger than T1 and smaller than T2 may be classified as frames having a gradual change. Also, frames having a value smaller than the threshold T1 are defined as frames without change.

상기 프레임들은 본 발명의 장면전환 검출 방법에 있어서 크게 트랜지션 프레임과 스테이셔너리 프레임으로 나뉘어 진다. 즉, 임계치 T2를 넘거나 또는 도 1의 ㉡과 같이 임계치 T2를 넘지는 않지만 임계치 T1을 넘는 프레임이 연속해서 N개 이상 나타날 경우 그 시작점부터 임계치 T1을 넘지 않는 프레임이 연속해서 N개 이상 연속되는 경우의 그 시작점까지를 트랜지션 프레임으로 분류하고, 그 이후의 프레임은 스테이셔너리 프레임으로 분류한다.The frames are largely divided into transition frames and stationary frames in the scene change detection method of the present invention. That is, if more than N frames exceeding the threshold T2 or not exceeding the threshold T2 as shown in Fig. 1, but exceeding the threshold T1 appear consecutively, N or more consecutive frames that do not exceed the threshold T1 continue from the starting point. The start point of the case is classified as a transition frame, and subsequent frames are classified as stationary frames.

즉, 본 발명의 제 1 단계는 상기와 같이 인접 프레임간의 변화가 없는 프레임과 인접 프레임간의 변화가 있는 프레임으로 분류하는 단계이다.That is, the first step of the present invention is to classify a frame having no change between adjacent frames and a frame having change between adjacent frames as described above.

도 1에 있어서, 임계치 T2를 넘는 부분은 장면이 갑작스럽게 변하는 컷에 해당하며, 임계치 T2를 넘지는 못했지만, T1을 넘는 프레임이 연속해서 N개 이상 연속되는 부분은 페이드(fade), 디졸브(dissolve), 와이프(wipe)와 같은 점진적인 장면 전환에 해당한다. 즉, 장면전환은 한 프레임 사이에 갑작스럽게 일어날 수도 있지만, 여러 프레임에 걸친 점진적인 과정을 통해 일어날 수도 있다. 장면이 전환되는 과정이 완전히 종료된 직후부터 새로운 장면이 시작되는 것으로 본다면, 도 1에 도시한 바와 같이, 변화가 스테이셔너리 상태의 시작점부터 트랜지션 상태의 끝점까지를 묶어 하나의 장면으로 생각할 수 있다.In FIG. 1, a portion above the threshold T2 corresponds to a cut in which the scene changes abruptly, and a portion in which more than N consecutive frames exceeding T1 are faded or dissolved is not exceeded the threshold T2. , Equivalent to a gradual transition such as a wipe. In other words, the scene transition may occur suddenly between frames, but may also occur through a gradual process over several frames. If it is assumed that a new scene starts immediately after the scene transition process is completely finished, as shown in Fig. 1, the change can be regarded as a scene by binding the start point of the stationary state to the end point of the transition state. .

본 발명의 제 2 단계는 상기 제 1 단계에서 인식한 상태 변화에 따라 장면 전환 여부를 재확인하여 장면 경계를 잘못 인식한 경우나, 독립된 장면으로 나눌 가치가 없다고 판단되는 장면은 이전 장면과 통합해 준다.In the second step of the present invention, if the scene boundary is incorrectly recognized by re-checking whether the scene is changed according to the state change recognized in the first step, or the scene determined not to be divided into an independent scene is integrated with the previous scene. .

예를 들어, 비디오의 내용 중 번개나 플래쉬 등으로 조명이 급격히 변하는 경우, 또는 전송 에러 등으로 화면의 일부가 손상된 경우에는 프레임 간에 급격한 변화가 생기고 장면이 전환된 것으로 인식되지만, 이렇게 나뉘어진 경계 양쪽에는 같은 장면이 나타나게 되므로, 이러한 경우에는 두 장면을 통합해 주어야 한다. 또한, 흰색이나 검은색으로 페이드 아웃(Fade out)되는 장면의 경우, 점진적인 변화가 있는 프레임으로 장면이 분할되지만, 페이드 아웃 된 후의 장면에는 오직 흰색 또는 검은색 장면밖에 나오지 않기 때문에 독립된 장면으로 분류할 가치가 없으므로 이전 장면과 통합시켜 준다. 제 2 단계의 과정에서 이러한 보정 작업을 해 줌으로써 보다 정확하게 장면 전환을 검출할 수 있다.For example, if the lighting changes suddenly due to lightning or flash in the video, or if a part of the screen is damaged due to a transmission error or the like, a sudden change between the frames occurs and the scene is converted, but both boundaries are divided. Since the same scene appears in this case, the two scenes must be merged. Also, in the case of scenes fading out to white or black, the scene is divided into frames with a gradual change, but since the scene after fading out has only white or black scenes, it can be classified as an independent scene. It is not worth it, so it integrates with the previous scene. By performing this correction in the second step, it is possible to detect the scene change more accurately.

이상과 같이, 본 발명의 장면전환 검출 방법은 크게 인접 프레임간의 변화 유무를 판단하여 각각 분류하는 제 1 단계와, 상기 분류된 프레임의 장면 전환 여부를 재확인하여 장면전환을 확정짓는 제 2 단계로 구성된다.As described above, the scene change detection method of the present invention comprises a first step of determining whether there is a change between adjacent frames, and a second step of reconfirming the scene change of the classified frames to determine the scene change. do.

이제 본 발명의 구성을 도면을 참조하여 구체적으로 기술한다.The configuration of the present invention will now be described in detail with reference to the drawings.

제 1 단계는 모드 및 스택을 초기화하는 단계와, 현재 프레임을 디코딩하여 이미지를 IS에 저장하는 단계와, 현재 프레임의 이미지에서 특징벡터를 추출하여 VS에 저장하는 단계와, VS에 저장된 최근 두 프레임의 특징벡터 간의 차이를 DQ에 저장하는 단계와, 상기 DQ에 저장된 특징벡터간의 차이가 모드 전환 조건을 충족하는지를 판단하는 단계와, 상기 IS, VS가 꽉 찼는지를 확인하는 단계와, 상기 프레임이 마지막 프레임인지를 확인하는 단계를 포함하여 이루어지는 알고리즘으로 이루어져 있다.The first step is to initialize the mode and stack, to decode the current frame and store the image in the IS, to extract the feature vector from the image of the current frame and store it in the VS, and to store the last two frames stored in the VS. Storing the difference between the feature vectors in the DQ, determining whether the difference between the feature vectors stored in the DQ satisfies a mode switching condition, confirming that the IS and VS are full, and that the frame is last It consists of an algorithm comprising the step of checking whether the frame.

도 2는 제 1 단계의 순서도이다.2 is a flowchart of the first step.

도 2에 도시한 바와 같이, 초기화 단계(201)에서는 현재 프레임이 스테이셔너리 상태에 있는지, 트랜지션 상태에 있는지를 나타내는 상태변수 모드를 스테이셔너리로 초기화하고 IS, VS, DQ를 초기화한다. 상기 IS은 각각의 프레임의 이미지를 저장하는 스택이고, VS은 프레임의 이미지에서 추출된 특징벡터를 저장하기 위한 스택이다. IS와 VS는 각각 M개의 항목을 저장할 수 있다. 본 발명에 있어서, 상기 M은 약 180 정도로 설정하면 효과적이다. 또한, 상기 DQ는 인접 프레임간의 변화를 저장하기 위한 원형 큐로서 N개의 항목을 저장할 수 있으며, N값은 약 3 정도로 설정하는 것이 적당하다.As shown in Fig. 2, in the initialization step 201, the state variable mode indicating whether the current frame is in the stationary state or the transition state is initialized to the stationary state, and the IS, VS, and DQ are initialized. IS is a stack for storing an image of each frame, and VS is a stack for storing a feature vector extracted from an image of a frame. IS and VS can each store M items. In the present invention, the M is effectively set to about 180. In addition, the DQ may store N items as a circular queue for storing changes between adjacent frames, and N value is appropriately set to about 3.

상기와 같이 초기화된 상태에서 비디오 디코더(Decoder)는 비디오의 한 프레임을 디코딩하여 IS에 저장한다(202). 대부분의 비디오는 YCbCr 포맷으로 압축, 저장되어 있으므로 IS에는 YCbCr 포맷으로 이미지가 저장된다. 이어, 상기 IS에 저장된 현재 프레임에서 특징벡터를 추출하여 VS에 저장한다(203).In the initialized state, the video decoder decodes one frame of video and stores it in the IS (202). Most video is compressed and stored in YCbCr format, so IS stores images in YCbCr format. Next, the feature vector is extracted from the current frame stored in the IS and stored in VS (203).

상기 특징벡터는 경계선 히스토그램(Edge histogram)과 컬러 히스토그램을 사용한다. 경계선 히스토그램과 컬러 히스토그램은 상호 보완적인 이미지 특징으로, 경계선 히스토그램은 밝기(Y) 성분의 변화를 주로 반영하고, 컬러 히스토그램은 색상(CbCr) 성분의 변화를 주로 나타낸다.The feature vector uses an edge histogram and a color histogram. The border histogram and the color histogram are complementary image features. The border histogram mainly reflects the change in the brightness (Y) component, and the color histogram mainly indicates the change in the color (CbCr) component.

경계선 히스토그램은 Y 성분 이미지를 가로로 W개 세로로 H개의 겹치지 않는 블록으로 나누고, 각 블록에서 4방향 (가로, 세로, 45°,135°방향)의 경계선 성분의 세기를 구한다. 따라서, 경계선 히스토그램은 W x H x 4 개의 항목을 갖게 된다. 경계선 히스토그램을 구할 때는 전술한 4방향으로 인접 픽셀 간의 절대차를 누적하면 되며, 이 계산은 MMX 기술과 같은 SIMD(Single Instruction Multiple Data) 구조를 이용하면 고속으로 계산할 수 있다.The border histogram divides the Y component image into W horizontally and vertically H non-overlapping blocks, and calculates the strength of the border component in four directions (horizontal, vertical, 45 ° and 135 ° directions) in each block. Thus, the border histogram will have W x H x 4 items. When calculating the boundary histogram, the absolute difference between adjacent pixels is accumulated in the above-described four directions, and this calculation can be performed at high speed using a single instruction multiple data (SIMD) structure such as MMX technology.

한편, 컬러 히스토그램은 HSV(Hue Saturation Value) 공간 상에서 수행한다. YCbCr 컬러 모델은 비디오 데이터를 압축하는 데는 매우 효과적이나, 사람의 인지적 특성과는 거리가 먼 컬러 모델이므로, YCbCr 공간 상에서 표현된 각 프레임의 픽셀 값을 HSV 공간으로 매핑(Mapping)한 후 양자화하여 히스토그램을 구한다.Meanwhile, the color histogram is performed on a Hue Saturation Value (HSV) space. The YCbCr color model is very effective for compressing video data, but it is a color model far from human cognitive characteristics. Therefore, the pixel value of each frame expressed in YCbCr space is mapped to HSV space and then quantized. Find the histogram.

YCbCr 공간에서 HSV 공간으로의 변환은 다음 수식에 의해 수행한다.The conversion from the YCbCr space to the HSV space is performed by the following equation.

[수학식 1] V = Y, 0≤V≤255Equation 1 V = Y, 0≤V≤255

[수학식 2] S = √{(Cr-128)2+ (Cb-128)2}, 0≤S≤128Equation 2 S = √ {(Cr-128) 2 + (Cb-128) 2 }, 0≤S≤128

[수학식 3] H = tan-1{(Cr-128)/(Cb-128) x (180/π)}-108 , 0≤H≤360Equation 3 H = tan -1 {(Cr-128) / (Cb-128) x (180 / π)}-108, 0 ≦ H ≦ 360

양자화는 도 3과 같은 방법으로 수행한다. 즉, 채도(Saturation)가 5보다 작거나 같은 픽셀은 그레이 스케일(Gray scale)로 간주하여 색조(Hue)는 무시하고 명암도(Intensity)를 64레벨 단위로 4단계로 나누어 양자화하고, 채도(Saturation)가 5보다 크고 30보다 작거나 같은 컬러는 색조(Hue)에 대해 60도 단위로 6단계, 명암도(Intensity)에 대해 128 레벨 단위로 2단계로 나누어 양자화한다. 채도(Saturation)가 30보다 큰 컬러는 명암도(Intensity)는 무시하고 색조(Hue)에 대해서만 60도 단위로 6단계로 나누어 양자화한다. 채도(Saturation)가 30보다 큰 부분을 30보다 작은 부분에 비해 성기게 양자화하는 이유는 일반적인 비디오 영상에서 채도(Saturation)가 큰 값이 나오는 빈도가 상대적으로 작다는 확률분포를 반영하기 위한 것이다. 이렇게 하면 총 22개의 항목을 갖는 히스토그램이 만들어지게 된다.Quantization is performed in the same manner as in FIG. 3. In other words, pixels with saturation less than or equal to 5 are regarded as gray scale, ignoring hue, quantizing the intensity by dividing intensity from 4 levels in 64 levels, and saturation. Is greater than 5 and less than or equal to 30, and the color is quantized by dividing the color into six steps of 60 degrees for Hue and two levels of 128 levels of intensity. Colors with saturation (Saturation) greater than 30 are quantized by dividing the intensity into six levels in 60-degree increments, ignoring the intensity. The reason why the saturation is greater than 30 and the saturation is less than 30 is used to reflect the probability distribution that the saturation value is relatively small in a general video image. This creates a histogram with a total of 22 items.

이상과 같이 특징벡터가 추출되면 이를 VS에 저장하고(203), 이전 프레임에서 추출되어 VS에 저장되어 있던 특징벡터와 현재 프레임에서 추출된 특징벡터와의 차이를 이용하여 프레임간의 차이를 계산하고 그 결과를 원형 큐 DQ에 저장한다. 특징벡터간의 차이는 다음 수식에 의해 계산된다.As described above, when the feature vector is extracted, it is stored in VS (203), and the difference between the frames is calculated using the difference between the feature vector extracted in the previous frame and stored in VS and the feature vector extracted in the current frame. Store the result in the circular queue DQ. The difference between the feature vectors is calculated by the following equation.

[수학식 4] D = WeDe+ WcDc Equation 4 D = W e D e + W c D c

여기서 De와 Dc는 각각 경계선 히스토그램과 컬러 히스토그램을 이용한 특징벡터의 차이값이고, We와 Wc는 각각 가중치를 나타내는 상수이다.Where D e and D c are the difference values of the feature vectors using the boundary histogram and the color histogram, respectively, and W e and W c are constants representing the weights, respectively.

De와 Dc는 각각 현재 프레임과 이전 프레임의 히스토그램 차이를 누적하여 계산한다.D e and D c are calculated by accumulating the histogram difference between the current frame and the previous frame, respectively.

[수학식 5] De= ∑∥EHn[i] - EHn-1[i]∥[Equation 5] D e = ∑∥EH n [i]-EH n-1 [i] ∥

[수학식 6] Dc= ∑∥CHn[i] - CHn-1[i]∥Equation 6 D c = ∑∥CH n [i]-CH n-1 [i] ∥

여기서 EH[i], CH[i]는 각각 경계선 히스토그램과 컬러 히스토그램의 I번째 항목을 나타내며 아래 첨자 n, n-1은 각각 현재 프레임과 그 전 프레임을 나타내는인덱스이다.Where EH [i] and CH [i] represent the I-th item of the border histogram and the color histogram, respectively, and the subscripts n and n-1 represent indexes representing the current frame and the previous frame, respectively.

인접한 두 프레임 간의 변화가 계산되어 원형 큐 DQ에 저장되면(204), 이를 이용하여 상태변수 모드의 값을 전환할 것인지 그냥 둘 것인지 판단한다(205). 이미 언급한 바와 같이 모드는 현재 프레임이 스테이셔너리 상태에 있는지, 트랜지션 상태에 있는지를 나타내는 상태변수이다.When the change between two adjacent frames is calculated and stored in the circular queue DQ (204), it is determined whether or not to switch the value of the state variable mode by using it (205). As already mentioned, the mode is a state variable indicating whether the current frame is in a stationary state or a transition state.

모드 전환 조건은 다음과 같다.The mode switching condition is as follows.

현재 모드가 스테이셔너리 모드인 경우에는 DQ에 저장된 가장 최근 값이 임계치 T2를 넘거나 최근 N개의 값이 T1을 넘으면 모드를 트랜지션 모드로 전환해야 한다.When the current mode is the stationary mode, the mode must be switched to the transition mode when the most recent value stored in the DQ exceeds the threshold T2 or the most recent N values exceed the T1.

반면, 현재 모드가 트랜지션 모드인 경우에는 DQ에 저장된 최근 N개의 항목의 값이 모두 임계치 T1보다 작으면 모드를 스테이셔너리 모드로 전환해야 한다.On the other hand, when the current mode is the transition mode, if the values of the last N items stored in the DQ are all smaller than the threshold T1, the mode must be switched to the stationary mode.

모드가 전환되는 순간마다 제 2 단계(206)의 확인 작업을 거친다. 상기 제 2 단계의 처리과정은 뒤에 다시 자세히 설명하기로 한다.Every time the mode is switched, the second step 206 is checked. The process of the second step will be described later in detail.

제 2 단계(207)를 거치고 나면 IS와 VS를 비우고 상태변수 모드의 값을 전환한다. 이때, 스테이셔너리 상태에서 트랜지션 상태로 전환되는 경우에는 IS와 VS에 저장된 모든 값을 삭제하고 새로 시작하면 되지만, 트랜지션 상태에서 스테이셔너리 상태로 전환되는 경우에는 스택 IS와 VS에서 최근 N개 항목을 삭제하지 말고 남겨두어야 한다는 점에 주의하여야 한다.After the second step 207, the IS and VS are emptied and the value of the state variable mode is switched. In this case, when transitioning from the stationary state to the transition state, all values stored in the IS and VS may be deleted and restarted. However, when the transition state is changed from the transition state to the stationary state, the last N items in the stack IS and VS are changed. Note that you do not delete it.

그 이유는 트랜지션 상태에서 스테이셔너리 상태로 전환되기 위해서는 최근 N개의 프레임이 인접 프레임 간에 변화가 없는 프레임이어야 하므로, 실제로 스테이셔너리 상태로 전환된 후 N 프레임이 지난 후에야 모드가 전환된 사실을 알 수 있기 때문이다. 따라서, 다음 스테이셔너리 상태의 작업은 N 프레임을 거슬러 올라가서 시작해야 한다. 그런데, 스택에서 최근 N개의 항목을 삭제하지 않고 남겨둠으로써 이와 같은 효과를 낼 수 있다.The reason for this is that in order to transition from the transition state to the stationary state, since the last N frames must be frames that do not change between adjacent frames, the mode is switched only after N frames have passed after the actual state transition. Because it can. Thus, work in the next stationary state must start back N frames. However, this effect can be achieved by leaving the last N items in the stack without deleting them.

모드 전환이 일어나지 않은 경우(205)는 현재 모드를 유지하면서 계속 진행하게 되는데, 매 프레임마다 이미지와 특징벡터를 스택에 저장하므로, 스택이 꽉 찼는지 확인한다(208). IS와 VS는 모두 M개의 한정된 항목을 저장할 수 있는 스택이며, 이로써 한번에 처리할 수 있는 장면의 최대 길이가 제한된다. 한 장면이 모드 전환 없이 이보다 길게 진행되면 스택이 꽉 차게 되고, 제 2 단계로 넘어가게 된다.If the mode change does not occur (205), the current mode is continued while continuing. Since the image and the feature vector are stored in the stack every frame, it is checked whether the stack is full (208). Both IS and VS are stacks that can hold M defined items, limiting the maximum length of scene that can be processed at one time. If a scene runs longer than this without changing the mode, the stack will be full and move on to the second stage.

일반적으로 어떤 장면에서 인접 프레임간의 변화가 거의 없는 경우에도 카메라가 아주 천천히 움직이거나 화면 내의 인물이나 물체가 조금씩 움직여 오랜 시간 누적되면 상당한 변화를 만들게 되므로, 일정 시간 간격으로 장면을 분할할 것인지 확인해 주어야 한다. 스택 IS와 VS의 크기는 바로 이 시간 간격을 의미하며, 이 시간 간격을 넘어 스택이 꽉 차면, 이 시점에서 장면을 분할해주는 것이 좋을지 확인하는 과정을 거치는 것이다. 이때도 역시 제 2 단계의 작업이 끝나면 다음 장면 처리를 위해 스택을 비운다(209). 이 경우에는 모드에 관계없이 스택을 완전히 비우면 된다.Generally, even if there is little change between adjacent frames in a scene, if the camera moves very slowly or if a person or object in the screen moves little by little and accumulates for a long time, a significant change will be made. Therefore, it is necessary to confirm whether to divide the scene at regular intervals. . The size of the stack IS and VS is this time interval, and if the stack is full beyond this time interval, it is checked to see if it is better to split the scene at this point. In this case, when the second step is finished, the stack is emptied for the next scene processing (209). In this case, the stack is completely empty regardless of the mode.

이러한 과정이 모두 끝나면 현재 프레임이 마지막 프레임인지 확인하고(210), 마지막 프레임이 아니면 다음 프레임을 디코딩하여 처리하고(211),마지막 프레임인 경우에는 마지막 장면을 처리한다. 마지막 장면 처리 방법은 역시 제 2 단계(206)의 과정을 밟는 것으로, 모드의 전환이 없더라도 비디오의 끝부분에 남은 일련의 프레임들을 하나의 독립된 장면으로 처리할 것인지를 확인한다. 마지막 프레임을 처리한 후에는 모든 작업을 종료한다(212).When all of these processes are completed, it is determined whether the current frame is the last frame (210), if it is not the last frame, the next frame is decoded and processed (211), and if the last frame, the last scene is processed. The final scene processing method also follows the process of the second step 206, and confirms whether to process a series of frames remaining at the end of the video as one independent scene even if there is no mode change. After processing the last frame, all work ends (212).

도 4는 제 2 단계의 순서도이다.4 is a flow chart of a second step.

상기 제 2 단계는 제 1 단계에서 DQ에 저장된 특징벡터간의 차이가 모드 전환 조건을 충족하는 경우 또는 IS, VS가 꽉 찬 경우 또는 프레임이 마지막 프레임일 경우에 적용되는 알고리즘으로서, 스테이셔너리 모드일 경우 저장된 전체 프레임들을 하나의 세그먼트로 설정하는 단계와, 트랜지션 모드일 경우 저장된 프레임들을 여러 개의 세그먼트로 분할 설정하는 단계와, 상기 각 모드에 따라 처리할 세그먼트가 존재하는지 확인하는 단계와, 상기 세그먼트가 존재할 경우 각 세그먼트가 독립된 장면으로 분리될 필요가 있는지 여부를 판단하는 단계를 포함하여 이루어지는 알고리즘으로 구성된다.The second step is an algorithm applied when the difference between the feature vectors stored in the DQ in the first step satisfies the mode switching condition, or when the IS and VS are full or the frame is the last frame. Setting the entire stored frames into one segment; dividing and setting the stored frames into multiple segments in the transition mode; checking whether there is a segment to be processed according to each mode; and If present, it consists of an algorithm comprising determining whether each segment needs to be separated into an independent scene.

도 4에 도시한 바와 같이, 상태변수 모드(401)에 따라 스테이셔너리 상태인 경우에는 스택 IS, VS에 저장된 모든 프레임을 하나의 세그먼트로 간주하여 처리하고(402), 트랜지션 상태인 경우에는 스택 IS, VS에 저장된 프레임들을 세그먼트 단위로 나누어 처리한다(403).As shown in FIG. 4, in the stationary state according to the state variable mode 401, all frames stored in the stack IS and VS are treated as one segment (402), and in the transition state, the stack is processed. The frames stored in the IS and the VS are divided and processed in units of segments (403).

상기 세그먼트는 다음과 같이 나눈다.The segment is divided as follows.

도 5에 도시한 바와 같이, 도 5의 ⓐ와 같은 트랜지션 상태의 프레임들을 스테이셔너리 상태의 프레임들과 함께 하나의 장면으로 묶어주면 되지만, 도 5의 ⓑ,ⓒ와 같은 임계치 T2를 넘는 급격한 변화 사이에 끼어있는 프레임들은 별도의 장면으로 분리해 주는 것이 바람직하다. 따라서 트랜지션 상태의 프레임들은 임계치 T2를 넘는 프레임을 기준으로 세그먼트 단위로 분리해 생각한다. 즉, 트랜지션 상태의 프레임들 중에 임계치 T2를 넘는 프레임이 K개 있으며, K-1개의 세그먼트가 존재하면, 각 세그먼트에 대해 그 세그먼트가 독립적인 장면으로 분리될 필요가 있는지 확인한다(405).As shown in FIG. 5, the frames in the transition state as shown in FIG. 5 may be bundled together with the frames in the stationary state as one scene, but the sudden change over the threshold T2 as shown in FIG. It is desirable to separate the frames intervening into separate scenes. Therefore, frames in the transition state are considered to be divided into segments based on frames exceeding the threshold T2. That is, if there are K frames that exceed the threshold T2 among the frames in the transition state, and if there are K-1 segments, it is checked whether the segments need to be separated into independent scenes for each segment (405).

도 6은 이 작업의 순서도이다.6 is a flowchart of this operation.

상기 세그먼트가 존재할 경우 각 세그먼트가 독립된 장면으로 분리될 필요가 있는지 여부를 판단하는 단계는, 키 프레임을 추출하는 단계와, 상기 키 프레임이 이미 저장된 키 프레임과 일치하는지 확인하는 단계와, 상기 일치하지 않는 경우 상기 키 프레임이 정보가 있는지 여부를 확인하는 단계, 상기 키 프레임이 정보가 있을 경우 키 프레임 리스트에 저장하는 단계와, 상기 저장된 키 프레임 리스트의 정보를 기준으로 장면전환 정보를 출력하는 단계를 포함하여 이루어지는 알고리즘으로 구성되는 것을 특징으로 한다.Determining whether each segment needs to be separated into an independent scene when the segment exists, extracting a key frame, confirming that the key frame matches a key frame already stored, does not match Otherwise, determining whether the key frame has information, storing the key frame in the key frame list if the information is present, and outputting scene change information based on the information of the stored key frame list. It is characterized by consisting of an algorithm comprising a.

도 6에 도시한 바와 같이, 이 작업을 수행하기 위해서 키 프레임 리스트를 이용한다. 키 프레임 리스트는 독립된 장면으로 인식된 장면에 대해, 그 장면을 대표하는 프레임의 이미지와 그 이미지에서 추출된 특징벡터를 저장하는 메모리 공간이다. 먼저 현재 세그먼트의 가운데 프레임을 키 프레임으로 선택한다(601). 키 프레임 리스트에 저장된 항목이 있으면 최근 L 개의 키 프레임과 현재 세그먼트에서 추출된 키 프레임을 비교하여 현재 세그먼트가 최근에 검출된 장면과 유사한 것인지 확인한다(602). 최근 L개의 키 프레임과 유사성을 검토하는 데는 다음과 같은 두 가지 이유가 있다.As shown in Fig. 6, a key frame list is used to perform this operation. The key frame list is a memory space that stores an image of a frame representing the scene and a feature vector extracted from the image, for a scene recognized as an independent scene. First, the center frame of the current segment is selected as the key frame (601). If there is an item stored in the key frame list, it is checked whether the current segment is similar to the recently detected scene by comparing the latest L key frames with the key frame extracted from the current segment (602). There are two reasons for examining similarities with the recent L key frames:

첫째, 갑작스러운 조명의 변화나 빠르게 움직이는 물체가 화면을 지나가는 등의 경우에는 일시적으로 프레임간의 차이가 커져 내용상으로는 한 장면이지만, 장면이 분할되는 경우가 있는데, 이전에 검출된 장면과의 유사성을 검토함으로써 이러한 경우 장면이 잘못 분할되는 것을 보정할 수 있다. 둘째, 2∼3 명의 등장 인물을 카메라가 번갈아 비추는 경우, 2∼3 장면 걸러 한번씩 같은 장면이 반복되는데, 인접한 2∼3 장면과의 유사성을 검토함으로써 이러한 불필요한 반복 장면 분할을 보정할 수 있다.First, in the case of sudden lighting changes or fast moving objects passing through the screen, the difference between frames temporarily increases, but the scene is divided, but the scene may be divided, and similarity with the previously detected scene is examined. In this case, it is possible to correct the division of the scene by mistake. Second, when the camera alternates between two or three characters, the same scene is repeated once every two or three scenes, and such unnecessary repeated scene division can be corrected by examining similarities with adjacent two or three scenes.

최근 L개의 키 프레임과의 유사성을 판별하기 위해서는 각 키 프레임에서 추출된 특징벡터를 이용하여 이미지의 유사성을 판별하는 방법과 각 키 프레임 이미지간의 상관도(Correlation coefficient)를 구해 특정 임계치를 넘는지 알아보는 방법을 병행한다.In order to determine the similarity with the recent L key frames, the method of determining the similarity of the images using the feature vectors extracted from each key frame and the correlation coefficient between each key frame image is obtained to see if it exceeds a certain threshold. Let's see how it works.

현재 세그먼트의 키 프레임이 최근에 검출된 L개의 키 프레임과 유사성이 없는 것이라면 독립된 장면으로 분리할 만큼 충분한 정보를 가지고 있는 장면인지 확인한다(603). 이를 위해 현재 키 프레임의 분산(Variance)을 계산하여 특정 임계치를 넘는지 알아본다. 현재 키 프레임의 분산이 특정 임계치를 넘지 못하는 경우는 페이드 아웃 등의 화면 전환 효과로 화면이 까맣게 되거나 하얗게 된 상태이거나 독립된 장면으로 분할해도 별 정보를 얻을 수 없는 무의미한 경우이므로 장면을 분할하지 않도록 한다.If the key frame of the current segment does not have similarity to the recently detected L key frames, it is checked whether the scene has enough information to be separated into an independent scene (603). To do this, we calculate the variance of the current key frame to see if it exceeds a certain threshold. If the current key frame distribution does not exceed a certain threshold, the screen is black or white due to a fade-out effect, or if the information is not meaningful even when divided into independent scenes, the scene is not divided.

이러한 검증 과정을 모두 통과한 세그먼트는 독립된 장면으로 인식될 자격을 갖춘 것이므로, 키 프레임 리스트에 현재 세그먼트에서 추출된 키 프레임과 특정벡터를 저장하고(604), 그 세그먼트의 시작점 등 장면 전환 정보를 출력한다(605).Since the segment that passed all of these verification processes is qualified to be recognized as an independent scene, the keyframe extracted from the current segment and the specific vector are stored in the key frame list (604), and the scene transition information such as the start point of the segment is output. (605).

이상 상술한 바와 같이, 본 발명의 장면전환 검출 방법은 다음과 같은 효과가 있다.As described above, the scene change detection method of the present invention has the following effects.

본 발명에 의하면 어떠한 형태의 장면전환도 정확하게 검출할 수 있으며, 검출 속도도 매우 빨라 장면 전환을 인식 과정을 수행하지 않고 비디오를 플레이 하는 속도의 약 4%에 해당하는 속도로 장면 전환 인식과정을 수행할 수 있다.According to the present invention, any type of scene change can be accurately detected, and the detection speed is very fast, so that the scene change recognition process is performed at a speed corresponding to about 4% of the speed of playing the video without performing the scene change recognition process. can do.

Claims (15)

영상 프레임 특성의 변화를 감지하여 장면전환을 검출하는 방법에 있어서,In the method for detecting a scene change by detecting a change in the characteristics of the image frame, 인접 프레임간의 변화 유무를 판단하여 인접 프레임간의 변화가 있는 트랜지션 상태와 인접 프레임간의 변화가 없는 스테이셔너리 상태로 분류하는 제 1 단계와,A first step of judging whether there is a change between adjacent frames and classifying it into a transition state with a change between adjacent frames and a stationary state with no change between adjacent frames; 상기 분류된 프레임 중 스테이셔너리 상태로 분류된 경우 전체 프레임들을 하나의 세그먼트로 설정하고, 트랜지션 상태로 분류된 경우 분류된 프레임의 분할된 세크먼트의 독립된 장면으로의 분리 유무를 해당 세그먼트의 키 프레임을 통해 장면전환 여부를 재확인하여 장면전환을 확정하는 제 2 단계를 포함하여 이루어지는 것을 특징으로 하는 장면전환 검출방법.When classified as a stationary state among the classified frames, all frames are set to one segment, and when classified as a transition state, whether or not the classified frames are divided into independent scenes of the divided segments into key frames of the corresponding segments. And a second step of reconfirming the scene change and confirming the scene change. 제 1 항에 있어서, 제 1 단계는The method of claim 1 wherein the first step is 모드 및 스택을 초기화하는 단계;Initializing the mode and stack; 현재 프레임을 디코딩하여 이미지를 IS에 저장하는 단계;Decoding the current frame and storing the image in the IS; 현재 프레임의 이미지에서 특징벡터를 추출하여 VS에 저장하는 단계;Extracting a feature vector from an image of a current frame and storing the feature vector in VS; 상기 VS에 저장된 최근 두 프레임의 특징벡터 간의 차이를 DQ에 저장하는 단계;Storing the difference between the feature vectors of the last two frames stored in the VS in the DQ; 상기 DQ에 저장된 특징벡터간의 차이가 모드를 변환시키는데 충족한지를 판단하는 단계;Determining whether the difference between the feature vectors stored in the DQ satisfies mode conversion; 상기 IS, VS가 꽉 찼는지를 확인하는 단계;Checking whether the IS and VS are full; 상기 프레임이 마지막 프레임인지를 확인하는 단계를 포함하여 이루어지는 알고리즘으로 구성되는 것을 특징으로 하는 장면전환 검출방법.And an algorithm comprising determining whether the frame is the last frame. 제 1 항에 있어서, 상기 제 2 단계는The method of claim 1, wherein the second step 스테이셔너리 모드일 경우 전체 프레임들을 하나의 세그먼트로 설정하는 단계;Setting all frames to one segment in the stationary mode; 트랜지션 모드일 경우 프레임들을 여러 개의 세그먼트로 분할 설정하는 단계;Partitioning and setting frames into a plurality of segments in the transition mode; 상기 각 모드별 세그먼트의 존재유무를 확인하는 단계;Confirming the presence or absence of the segment for each mode; 상기 세그먼트가 존재할 경우 각 세그먼트가 독립된 장면으로 분리될 필요가 있는지 여부를 판단하는 단계를 포함하여 이루어지는 알고리즘으로 구성되는 것을 특징으로 하는 장면전환 검출방법.And determining whether each segment needs to be separated into an independent scene when the segment is present. 제 2 항에 있어서, 상기 DQ에 저장된 특징벡터간의 차이가 모드 전환 조건을 충족하는 경우 또는 상기 IS, VS가 꽉 찬 경우 또는 상기 프레임이 마지막 프레임인 경우에는 상기 제 1 단계에서 제 2 단계로 넘어가는 것을 특징으로 하는 장면전환 검출방법.3. The method of claim 2, wherein the difference between the feature vectors stored in the DQ satisfies a mode switching condition, or when the IS and VS are full, or the frame is the last frame. Scene change detection method characterized in that. 제 3 항에 있어서, 상기 처리 가능한 세그먼트가 존재할 경우 각 세그먼트가 독립된 장면으로 분리될 필요가 있는지 여부를 판단하는 단계는,The method of claim 3, wherein the determining of whether the segments need to be separated into independent scenes when the processable segments exist includes: 현재 세그먼트에서 키 프레임을 추출하는 단계와;Extracting a key frame from the current segment; 상기 키 프레임을 최근에 검출된 기 설정된 장면의 키 프레임들과의 유사도를 비교하는 단계와,Comparing the key frame with a similarity with key frames of a recently detected preset scene; 상기 비교결과, 일치하지 않는 경우 상기 키 프레임이 장면전환에 필요한 독립적 정보가 있는지 여부를 확인하는 단계;Confirming whether there is independent information necessary for scene change if the key frame does not match as a result of the comparison; 상기 키 프레임이 정보가 있을 경우 키 프레임 리스트에 저장하는 단계와;Storing the key frame in a key frame list when there is information; 상기 저장된 키 프레임 리스트의 정보를 기준으로 장면전환 정보를 출력하는 단계를 포함하여 이루어지는 알고리즘으로 구성되는 것을 특징으로 하는 장면전환 검출방법.And a scene change information is output based on the information of the stored key frame list. 제 4 항에 있어서, 상기 DQ에 저장된 특징벡터간의 차이가 모드를 변환시키는데 충족하여 제 2 단계의 처리할 세그먼트가 존재하는지 여부를 확인하는 단계를 거친 경우에, 세그먼트가 존재하지 않는다면 IS, VS를 비우고 모드를 전환하는 것을 특징으로 하는 장면전환 검출방법.5. The method of claim 4, wherein if the difference between the feature vectors stored in the DQ is satisfied to convert the mode to determine whether there is a segment to be processed in the second step, IS, VS if the segment does not exist. Scene change detection method, characterized in that for emptying and switching modes. 제 6 항에 있어서, 트랜지션 모드에서 스테이셔너리 모드로 전환되는 경우에는, 최근에 상기 IS, VS에 저장된 소정 개수의 항목을 삭제하지 않는 것을 특징으로 하는 것을 장면전환 검출방법.7. The scene change detection method according to claim 6, wherein when switching from the transition mode to the stationary mode, the predetermined number of items recently stored in the IS and VS are not deleted. 제 4 항에 있어서, 상기 IS, VS가 꽉 차서 제 2 단계의 처리할 세그먼트가 존재하는지 여부를 확인하는 단계를 거친 경우에, 세그먼트가 존재하지 않는다면 IS, VS를 비우는 것을 특징으로 하는 장면전환 검출방법.The scene change detection according to claim 4, wherein when the IS and VS are full and a step of checking whether a segment to be processed in the second step exists exists, the IS and VS are emptied if the segment does not exist. Way. 제 4 항에 있어서, 처리할 프레임이 마지막 프레임이어서 제 2 단계의 처리할 세그먼트가 존재하는지 여부를 확인하는 단계를 거친 경우에, 세그먼트가 존재하지 않는다면 본 발명의 장면전환 검출방법의 알고리즘이 종료하는 것을 특징으로 하는 장면전환 검출방법.The method according to claim 4, wherein when the frame to be processed is the last frame and the step of checking whether the segment to be processed in the second step exists, if the segment does not exist, the algorithm of the scene change detection method of the present invention ends. Scene change detection method, characterized in that. 제 1 항에 있어서, 시간축에 따라 인접 프레임간의 차이를 임계치 T1, T2(T1<T2)를 적용하여 분류하는 것을 특징으로 하는 장면전환 검출방법.The scene change detection method according to claim 1, wherein the difference between adjacent frames is classified according to the time axis by applying threshold values T1 and T2 (T1 < T2). 제 10 항에 있어서, 인접 프레임 간의 차이가 임계치 T2를 넘거나 또는 임계치 T2를 넘지는 않지만 임계치 T1을 넘는 프레임이 연속해서 소정 개수 이상 나타날 경우 그 시작점부터 임계치 T1을 넘지 않는 프레임이 연속해서 소정 개수 이상 연속되는 경우의 그 시작점까지를 트랜지션 프레임으로 분류하고, 그 이후의 프레임은 스테이셔너리 프레임으로 분류하는 것을 특징으로 하는 장면전환 검출방법.11. The method of claim 10, wherein if a difference between adjacent frames exceeds a threshold T2 or exceeds a threshold T2 but more than a predetermined number of frames continuously exceed the threshold T1, a predetermined number of frames consecutively do not exceed the threshold T1 from the start point. The transition point detection method is characterized by classifying the transition point up to the start point in the case of continuous succession, and classifying the subsequent frame as a stationary frame. 제 2 항에 있어서, 상기 IS와 VS은 소정개수의 항목을 저장하는 것을 특징으로 하는 장면전환 검출방법.3. The scene change detection method according to claim 2, wherein the IS and the VS store a predetermined number of items. 제 12 항에 있어서, 상기 소정 개수는 약 180 인 것을 특징으로 하는 장면전환 검출방법.13. The method of claim 12, wherein the predetermined number is about 180. 제 2 항에 있어서, 상기 DQ는 소정 개수의 항목을 저장하는 것을 특징으로 하는 장면전환 검출방법.3. The method of claim 2, wherein the DQ stores a predetermined number of items. 제 14 항에 있어서, 상기 소정 개수는 약 3 인 것을 특징으로 하는 장면전환 검출방법.15. The method of claim 14, wherein the predetermined number is about three.
KR10-2001-0015628A 2001-03-26 2001-03-26 Scene Change Detector Algorithm in Image Sequence KR100441963B1 (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR10-2001-0015628A KR100441963B1 (en) 2001-03-26 2001-03-26 Scene Change Detector Algorithm in Image Sequence
PCT/KR2002/000949 WO2003098549A1 (en) 2001-03-26 2002-05-20 Scene change detector algorithm in image sequence

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR10-2001-0015628A KR100441963B1 (en) 2001-03-26 2001-03-26 Scene Change Detector Algorithm in Image Sequence
PCT/KR2002/000949 WO2003098549A1 (en) 2001-03-26 2002-05-20 Scene change detector algorithm in image sequence

Publications (2)

Publication Number Publication Date
KR20020075956A KR20020075956A (en) 2002-10-09
KR100441963B1 true KR100441963B1 (en) 2004-07-27

Family

ID=32044711

Family Applications (1)

Application Number Title Priority Date Filing Date
KR10-2001-0015628A KR100441963B1 (en) 2001-03-26 2001-03-26 Scene Change Detector Algorithm in Image Sequence

Country Status (1)

Country Link
KR (1) KR100441963B1 (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101449533B1 (en) 2013-01-28 2014-10-13 군산대학교산학협력단 Scene change detection method using local information
US9230176B2 (en) 2012-03-14 2016-01-05 Hanwha Techwin Co., Ltd. Method of detecting camera tampering and system thereof

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20030026529A (en) * 2001-09-26 2003-04-03 엘지전자 주식회사 Keyframe Based Video Summary System
AU2002306116A1 (en) * 2002-05-20 2003-12-02 Konan Technology Inc. Scene change detector algorithm in image sequence
KR100771220B1 (en) * 2006-12-29 2007-10-29 (주)엘비티솔루션 Cognitive method for object of moving picture
KR100816013B1 (en) * 2007-01-23 2008-03-21 (주)엑스퍼넷 Apparatus and method for detecting scene change from compressed moving picture
KR101149522B1 (en) 2008-12-15 2012-05-25 한국전자통신연구원 Apparatus and method for detecting scene change
KR101709085B1 (en) * 2015-12-16 2017-02-23 서강대학교산학협력단 Shot Boundary Detection method and apparatus using Convolutional Neural Networks
KR102160095B1 (en) 2018-11-15 2020-09-28 에스케이텔레콤 주식회사 Method for analysis interval of media contents and service device supporting the same

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH08139995A (en) * 1994-11-11 1996-05-31 Canon Inc Method for detecting scene change point of moving image
JPH09130732A (en) * 1995-11-01 1997-05-16 Matsushita Electric Ind Co Ltd Scene change detection method and dynamic image edit device
KR19990046911A (en) * 1997-12-01 1999-07-05 정선종 Digital video data automatic segmentation device and method
JP2000125250A (en) * 1998-10-14 2000-04-28 Sharp Corp Moving picture scene transition part detector, its method, medium storing moving picture scene transition part detection control program and moving picture processing unit
JP2000324499A (en) * 1999-05-14 2000-11-24 Fujitsu Ltd Picture processor and method for detecting scene change

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH08139995A (en) * 1994-11-11 1996-05-31 Canon Inc Method for detecting scene change point of moving image
JPH09130732A (en) * 1995-11-01 1997-05-16 Matsushita Electric Ind Co Ltd Scene change detection method and dynamic image edit device
KR19990046911A (en) * 1997-12-01 1999-07-05 정선종 Digital video data automatic segmentation device and method
JP2000125250A (en) * 1998-10-14 2000-04-28 Sharp Corp Moving picture scene transition part detector, its method, medium storing moving picture scene transition part detection control program and moving picture processing unit
JP2000324499A (en) * 1999-05-14 2000-11-24 Fujitsu Ltd Picture processor and method for detecting scene change

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9230176B2 (en) 2012-03-14 2016-01-05 Hanwha Techwin Co., Ltd. Method of detecting camera tampering and system thereof
KR101449533B1 (en) 2013-01-28 2014-10-13 군산대학교산학협력단 Scene change detection method using local information

Also Published As

Publication number Publication date
KR20020075956A (en) 2002-10-09

Similar Documents

Publication Publication Date Title
TWI426774B (en) A method for classifying an uncompressed image respective to jpeg compression history, an apparatus for classifying an image respective to whether the image has undergone jpeg compression and an image classification method
US5900919A (en) Efficient shot change detection on compressed video data
US7003038B2 (en) Activity descriptor for video sequences
US8787692B1 (en) Image compression using exemplar dictionary based on hierarchical clustering
CN106937114B (en) Method and device for detecting video scene switching
US7248782B2 (en) Image retrieving apparatus, image retrieving method and recording medium for recording program to implement the image retrieving method
US20010021268A1 (en) Hierarchical hybrid shot change detection method for MPEG-compressed video
CN107657228B (en) Video scene similarity analysis method and system, and video encoding and decoding method and system
US6049632A (en) Data compression
KR20040006065A (en) Scene change detector and method thereof
JP2002541738A (en) Image compression
EP2270749A2 (en) Methods of representing images
WO2003098549A1 (en) Scene change detector algorithm in image sequence
JP2006092559A (en) Method of representing at least one image and image group, representations of image or image group, method of comparing image and/or image group, method of encoding image or image group, method of decoding image or image sequence, use of encoded data, apparatus of representing image or image group, apparatus of comparing image and/or image group, computer program, system and computer readable storage medium
KR100441963B1 (en) Scene Change Detector Algorithm in Image Sequence
CN110691246B (en) Video coding method and device and electronic equipment
US20220417524A1 (en) Systems and methods for compressing video
CN103020138A (en) Method and device for video retrieval
CA2689441C (en) A system and method for time optimized encoding
KR102261669B1 (en) Artificial Neural Network Based Object Region Detection Method, Device and Computer Program Thereof
Fernando et al. Fade-in and fade-out detection in video sequences using histograms
JP5644505B2 (en) Collation weight information extraction device
WO2003052695A2 (en) Method for detecting talking heads in a compressed video
US7355529B2 (en) Binary image compression apparatus and method
Oprea et al. Video shot boundary detection for low complexity HEVC encoders

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
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: 20130710

Year of fee payment: 10

FPAY Annual fee payment

Payment date: 20140617

Year of fee payment: 11

FPAY Annual fee payment

Payment date: 20150716

Year of fee payment: 12

FPAY Annual fee payment

Payment date: 20160718

Year of fee payment: 13

FPAY Annual fee payment

Payment date: 20180716

Year of fee payment: 15

FPAY Annual fee payment

Payment date: 20190604

Year of fee payment: 16