KR102072576B1 - Apparatus and method for encoding and decoding of data - Google Patents

Apparatus and method for encoding and decoding of data Download PDF

Info

Publication number
KR102072576B1
KR102072576B1 KR1020170167654A KR20170167654A KR102072576B1 KR 102072576 B1 KR102072576 B1 KR 102072576B1 KR 1020170167654 A KR1020170167654 A KR 1020170167654A KR 20170167654 A KR20170167654 A KR 20170167654A KR 102072576 B1 KR102072576 B1 KR 102072576B1
Authority
KR
South Korea
Prior art keywords
frame
frames
reference frame
data
generating
Prior art date
Application number
KR1020170167654A
Other languages
Korean (ko)
Other versions
KR20190067577A (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 KR1020170167654A priority Critical patent/KR102072576B1/en
Publication of KR20190067577A publication Critical patent/KR20190067577A/en
Application granted granted Critical
Publication of KR102072576B1 publication Critical patent/KR102072576B1/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/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/103Selection of coding mode or of prediction mode
    • H04N19/105Selection of the reference unit for prediction within a chosen coding or prediction mode, e.g. adaptive choice of position and number of pixels used for prediction
    • 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/136Incoming video signal characteristics or properties
    • 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/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/172Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a picture, frame or field
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/234Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs
    • H04N21/2343Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)

Abstract

본 발명의 일 실시예에 따르면, 동기화 된 데이터가 저장되어 있는 제1데이터 베이스; 상기 동기화된 데이터 중에서 적어도 하나의 프레임을 선정하고, 선정된 프레임과 데이터와 대상 동영상 간의 유사도를 산출하여 참조 프레임을 생성하는 참조 프레임 생성부; 상기 참조 프레임에 포함된 각 프레임에 대한 목록 데이터를 생성하는 목록 데이터 작성부; 및 상기 대상 데이터에 포함된 프레임 중 타 프레임간의 중복성을 이용하지 못하는 프레임이 상기 참조 프레임을 이용하도록 하여 상기 대상 데이터에 대한 압축 동영상을 생성하는 인코딩부를 포함하는 데이터 인코딩 장치를 제공한다.According to one embodiment of the invention, the first database is stored synchronized data; A reference frame generator for selecting at least one frame from the synchronized data and calculating a similarity between the selected frame and the data and the target video to generate a reference frame; A list data generator for generating list data for each frame included in the reference frame; And an encoding unit configured to generate a compressed video of the target data by using the reference frame in a frame that does not use redundancy between other frames among the frames included in the target data.

Figure 112017122181580-pat00001
Figure 112017122181580-pat00001

Description

데이터 인코딩 및 디코딩 장치와 방법{APPARATUS AND METHOD FOR ENCODING AND DECODING OF DATA}Apparatus and method for encoding and decoding data {APPARATUS AND METHOD FOR ENCODING AND DECODING OF DATA}

본 발명의 일실시예는 데이터 인코딩 및 디코딩 장치와 방법에 관한 것으로, 이미지 또는 영상 데이터의 압축과 압축된 데이터의 복원에 사용될 수 있는 데이터 인코딩 및 디코딩 장치와 방법에 관한 것이다.One embodiment of the present invention relates to an apparatus and method for encoding and decoding data, and more particularly, to an apparatus and method for encoding and decoding data that can be used for compression of image or image data and restoration of compressed data.

인터넷을 포함한 정보통신 기술이 발달함에 따라 문자와 음성뿐만 아니라 영상 통신이 증가하고 있다. 기존의 문자 위주의 통신 방식으로는 소비자의 다양한 욕구를 충족하기에는 부족하며, 이에 따라, 문자, 영상, 음악 등 다양한 형태의 정보를 수용할 수 있는 멀티미디어 서비스가 증가하고 있다.As information and communication technology including the Internet has developed, video communication as well as text and voice are increasing. Conventional text-based communication methods are insufficient to satisfy various needs of consumers, and accordingly, multimedia services that can accommodate various types of information such as text, video, and music are increasing.

멀티미디어 데이터는 그 양이 방대하여 대용량의 저장매체를 필요로 하며 전송 시에 넓은 대역폭을 필요로 한다. 따라서 문자, 영상, 오디오를 포함한 멀티미디어 데이터를 전송하기 위해서는 압축 코딩 기법을 사용하는 것이 필수적이다.Multimedia data has a huge amount and requires a large storage medium and a wide bandwidth in transmission. Therefore, it is essential to use compression coding to transmit multimedia data including text, video, and audio.

데이터를 압축하는 기본적인 원리는 리던던시를 제거하는 과정이다. 이미지에서 동일한 색이나 객체가 반복되는 것과 같은 공간적 중복이나, 동영상 프레임에서 인접 프레임이 거의 변화가 없는 경우나 오디오에서 같은 음이 계속 반복되는 것과 같은 시간적 중복 또는 인간의 시각 및 지각 능력이 높은 주파수에 둔감한 것을 고려한 심리시각 중복을 제거함으로써 데이터를 압축할 수 있다.The basic principle of compressing data is to eliminate redundancy. Spatial duplication, such as repeating the same color or object in an image, or temporal duplication, such as when there is little change in adjacent frames in a movie frame, or the same sound repeats continuously in audio, or at frequencies with high human visual and perceptual power. Data can be compressed by removing psychological duplication taking into account the insensitive.

이러한 원리 중 움직임 보상은 어떤 비디오 프레임에서 최근에 코딩했던 참조(reference) 비디오 프레임의 유사한 구획으로부터 각각의 화소 매크로 블록을 예측함으로써 영상압축을 수행한다. 예를 들어 배경 부분은 한 프레임에서 다음 프레임으로 넘어갈 때 흔히 동일하게 유지되므로 각 프레임마다 재전송할 필요가 없다.Among these principles, motion compensation performs image compression by predicting each pixel macroblock from a similar segment of a reference video frame that was recently coded in a video frame. For example, the background part often stays the same from one frame to the next, so there is no need to retransmit each frame.

이러한 동영상 압축 기법의 표준화를 위한 공지된 MPEG/H.26x 비디오 코딩 표준에는 기본적으로 세 가지 타입의 프레임, 즉 I-프레임, P-프레임 및 B-프레임이 존재한다.There are basically three types of frames in the known MPEG / H.26x video coding standard for the standardization of such video compression techniques: I-frame, P-frame and B-frame.

비디오 디코더가 프레임별로 비트스트림을 해독하여 비디오를 복원할 때 해독은 항상 I-프레임으로 시작해야 한다. P-프레임과 B-프레임은 사용될 경우 참조 프레임과 같이 해독되어야 한다.When the video decoder reconstructs the video by decoding the bitstream frame by frame, the decoding should always begin with an I-frame. P-frames and B-frames must be decoded like reference frames when used.

이와 같이, 동영상부호화에서는, 액세스나 리프레쉬를 위해 주기적으로 I -frame을 삽입할 필요가 있다. 그러나, 도1을 참조하면, I-frame은 부호량이 많으면서 프레임간의 중복성을 이용하지 못하기 때문에 효율 측면에서 개선할 필요가 있다.As described above, in video encoding, I-frames need to be inserted periodically for access and refresh. However, referring to FIG. 1, since the I-frame has a large amount of code and does not use redundancy between frames, it is necessary to improve efficiency.

본 발명이 이루고자 하는 기술적 과제는 I-프레임의 랜덤 억세스 특성을 유지하면서 데이터의 압축율을 크게 향상시킬 수 있는 데이터 인코딩 및 디코딩 장치와 방법을 제공하는데 있다.An object of the present invention is to provide an apparatus and method for data encoding and decoding that can greatly improve the compression rate of data while maintaining random access characteristics of I-frames.

본 발명의 일 실시예에 따르면, 동기화 된 데이터가 저장되어 있는 제1데이터 베이스; 상기 동기화된 데이터 중에서 적어도 하나의 프레임을 선정하고, 선정된 프레임과 데이터와 대상 동영상 간의 유사도를 산출하여 참조 프레임을 생성하는 참조 프레임 생성부; 상기 참조 프레임에 포함된 각 프레임에 대한 목록 데이터를 생성하는 목록 데이터 작성부; 및 상기 대상 데이터에 포함된 프레임 중 타 프레임간의 중복성을 이용하지 못하는 프레임이 상기 참조 프레임을 이용하도록 하여 상기 대상 데이터에 대한 압축 동영상을 생성하는 인코딩부를 포함하는 데이터 인코딩 장치를 제공한다.According to one embodiment of the invention, the first database is stored synchronized data; A reference frame generator for selecting at least one frame from the synchronized data and calculating a similarity between the selected frame and the data and the target video to generate a reference frame; A list data generator for generating list data for each frame included in the reference frame; And an encoding unit configured to generate a compressed video of the target data by using the reference frame in a frame that does not use redundancy between other frames among the frames included in the target data.

상기 참조 프레임 생성부는, 상기 선정된 프레임 중 산출된 유사도가 높은 순서대로 기 설정 개수의 프레임을 추출하고, 추출된 프레임을 유사도 순서에 따라 정렬하여 참조 프레임을 생성할 수 있다.The reference frame generation unit may generate a reference frame by extracting a predetermined number of frames in the order of high similarity calculated among the selected frames, and arranging the extracted frames in order of similarity.

상기 참조 프레임 생성부는, 색상 분포를 이용해 분포 벡터들 간의 코사인 유사도를 이용해 유사도를 산출하는 방식, 프레임들을 오브젝트 단위로 분석해 태그를 단 후 상기 태그들 간의 유사도를 산출하는 방식, 프레임들의 비트스트림 일치 비율에 따라 유사도를 산출하는 방식 및 해당 프레임들의 윤곽선 및 색상의 특징을 추출해 모양 매칭(shape matching)을 통해 유사도를 산출하는 방식 중 적어도 하나의 방식에 따라 유사도를 산출할 수 있다.The reference frame generation unit uses a color distribution to calculate a similarity using cosine similarity between distribution vectors, a method of analyzing frames in units of objects, tagging and calculating similarity between the tags, and bitstream matching ratio of the frames. The similarity may be calculated according to at least one of a method of calculating the similarity according to the method and a method of calculating the similarity through shape matching by extracting the contour and color characteristics of the corresponding frames.

상기 목록 데이터 작성부는 상기 참조 프레임에 포함된 각 프레임에 대한 참조 정보를 생성하고, 상기 참조 정보를 상기 참조 프레임에 포함된 각 프레임의 정렬 순서대로 나열하여 상기 목록 데이터를 생성할 수 있다.The list data generator may generate reference information for each frame included in the reference frame, and generate the list data by arranging the reference information in the sorting order of each frame included in the reference frame.

상기 압축 동영상 및 상기 목록 데이터를 전송하는 데이터 송신부를 더 포함할 수 있다.The apparatus may further include a data transmitter for transmitting the compressed video and the list data.

상기 중복성을 이용하지 못하는 프레임은 I-프레임일 수 있다.The frame that does not use the redundancy may be an I-frame.

본 발명의 실시예에 따르면, 동기화 된 데이터가 저장되어 있는 데이터 베이스; 압축 동영상과 목록 데이터를 수신하는 데이터 수신부; 상기 목록 데이터에 대응되는 프레임을 상기 동기화 된 데이터에서 순차적으로 조회하고, 조회된 프레임을 순차적으로 결합하여 참조 프레임을 생성하는 참조 프레임 복원부; 및 상기 참조 프레임을 이용하여 상기 압축 동영상을 디코딩하고 상기 압축 동영상의 원본 영상을 생성하는 디코딩부를 포함하는 데이터 디코딩 장치를 제공한다. According to an embodiment of the present invention, a database in which synchronized data is stored; A data receiver configured to receive the compressed video and the list data; A reference frame reconstructing unit which sequentially searches the frames corresponding to the list data in the synchronized data, and generates a reference frame by sequentially combining the inquired frames; And a decoding unit which decodes the compressed video by using the reference frame and generates an original image of the compressed video.

본 발명의 실시예에 따르면, 참조 프레임 생성부가 동기화된 데이터 중에서 적어도 하나의 프레임을 선정하는 단계; 상기 참조 프레임 생성부가 선정된 프레임과 데이터와 대상 동영상 간의 유사도를 산출하여 참조 프레임을 생성하는 단계; 목록 데이터 작성부가 상기 참조 프레임에 포함된 각 프레임에 대한 목록 데이터를 생성하는 단계; 및 인코딩부가 상기 대상 데이터에 포함된 프레임 중 타 프레임간의 중복성을 이용하지 못하는 프레임이 상기 참조 프레임을 이용하도록 하여 상기 대상 데이터에 대한 압축 동영상을 생성하는 단계를 포함하는 데이터 인코딩 방법을 제공한다.According to an embodiment of the present invention, the step of selecting the at least one frame from the synchronized data reference frame generator; Generating a reference frame by calculating a similarity between the selected frame and the selected video with the target video; Generating, by a list data generator, list data for each frame included in the reference frame; And generating a compressed video of the target data by allowing an encoding unit to use the reference frame in a frame that does not use redundancy among other frames among the frames included in the target data.

상기 참조 프레임을 생성하는 단계는, 상기 선정된 프레임 중 산출된 유사도가 높은 순서대로 기 설정 개수의 프레임을 추출하는 단계; 및 추출된 프레임을 유사도 순서에 따라 정렬하여 참조 프레임을 생성하는 단계를 포함할 수 있다.The generating of the reference frame may include extracting a predetermined number of frames in order of high similarity calculated among the selected frames; And arranging the extracted frames according to the similarity order to generate a reference frame.

상기 목록 데이터를 생성하는 단계는, 상기 참조 프레임에 포함된 각 프레임에 대한 참조 정보를 생성하는 단계; 및 상기 참조 정보를 상기 참조 프레임에 포함된 각 프레임의 정렬 순서대로 나열하여 상기 목록 데이터를 생성하는 단계를 포함할 수 있다.The generating of the list data may include generating reference information for each frame included in the reference frame; And generating the list data by arranging the reference information in a sorting order of each frame included in the reference frame.

데이터 송신부가 상기 압축 동영상 및 상기 목록 데이터를 전송하는 단계를 더 포함할 수 있다.The data transmitter may further include transmitting the compressed video and the list data.

본 발명의 실시예에 따르면, 데이터 수신부가 압축 동영상과 목록 데이터를 수신하는 단계; 참조 프레임 복원부가 상기 목록 데이터에 대응되는 프레임을 데이터 베이스에 저장된 동기화 된 데이터에서 순차적으로 조회하는 단계; 상기 참조 프레임 복원부가 조회된 프레임을 순차적으로 결합하여 참조 프레임을 생성하는 단계; 및 디코딩부가 상기 참조 프레임을 이용하여 상기 압축 동영상을 디코딩하고 상기 압축 동영상의 원본 영상을 생성하는 단계를 포함하는 데이터 디코딩 방법을 제공한다.According to an embodiment of the invention, the step of the data receiving unit receives the compressed video and the list data; Sequentially retrieving, by the reference frame reconstruction unit, the frames corresponding to the list data from the synchronized data stored in the database; Generating a reference frame by sequentially combining the frames queried by the reference frame reconstruction unit; And a decoding unit to decode the compressed video by using the reference frame and to generate an original video of the compressed video.

본 발명인 데이터 인코딩 및 디코딩 장치와 방법은 데이터의 압축율을 크게 향상시킬 수 있다.The data encoding and decoding apparatus and method of the present invention can greatly improve the compression rate of data.

또한, I-프레임의 랜덤 억세스 특성을 유지하면서 I-프레임의 압축율을 크게 향상시킬 수 있다.In addition, the compression rate of the I-frame can be greatly improved while maintaining the random access characteristic of the I-frame.

또한, 데이터의 전송 대역폭을 크게 감소 시킬 수 있다.In addition, the transmission bandwidth of the data can be greatly reduced.

도1은 종래 기술에 따른 인코딩 방식에 따른 데이터를 설명하기 위한 도면이고,
도2는 본 발명의 실시예에 따른 데이터 인코딩 장치 및 디코딩 장치의 개념도이고,
도3은 본 발명의 일실시예에 따른 데이터 인코딩 장치의 구성 블록도이고,
도4는 본 발명의 일실시예에 따른 데이터 디코딩 장치의 구성 블록도이고,
도5는 본 발명의 일실시예에 따른 데이터 인코딩 장치의 동작을 설명하기 위한 도면이고,
도6 및 도7은 본 발명의 일실시예에 따른 데이터 인코딩 장치의 압축 효율을 설명하기 위한 도면이고,
도8은 본 발명의 일실시예에 따른 데이터 인코딩 방법의 순서도이고,
도9는 본 발명의 일실시예에 따른 데이터 디코딩 방법의 순서도이다.
1 is a diagram for describing data according to an encoding scheme according to the prior art;
2 is a conceptual diagram of a data encoding apparatus and a decoding apparatus according to an embodiment of the present invention;
3 is a block diagram illustrating a data encoding apparatus according to an embodiment of the present invention;
4 is a block diagram illustrating a data decoding apparatus according to an embodiment of the present invention;
5 is a view for explaining the operation of the data encoding apparatus according to an embodiment of the present invention;
6 and 7 are diagrams for describing compression efficiency of a data encoding apparatus according to an embodiment of the present invention.
8 is a flowchart of a data encoding method according to an embodiment of the present invention;
9 is a flowchart of a data decoding method according to an embodiment of the present invention.

본 발명은 다양한 변경을 가할 수 있고 여러 가지 실시예를 가질 수 있는 바, 특정 실시예들을 도면에 예시하고 설명하고자 한다. 그러나, 이는 본 발명을 특정한 실시 형태에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다. As the invention allows for various changes and numerous embodiments, particular embodiments will be illustrated and described in the drawings. However, this is not intended to limit the present invention to specific embodiments, it should be understood to include all modifications, equivalents, and substitutes included in the spirit and scope of the present invention.

제2, 제1 등과 같이 서수를 포함하는 용어는 다양한 구성요소들을 설명하는데 사용될 수 있지만, 상기 구성요소들은 상기 용어들에 의해 한정되지는 않는다. 상기 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 사용된다. 예를 들어, 본 발명의 권리 범위를 벗어나지 않으면서 제2 구성요소는 제1 구성요소로 명명될 수 있고, 유사하게 제1 구성요소도 제2 구성요소로 명명될 수 있다. 및/또는 이라는 용어는 복수의 관련된 기재된 항목들의 조합 또는 복수의 관련된 기재된 항목들 중의 어느 항목을 포함한다. Terms including ordinal numbers, such as second and first, may be used to describe various components, but the components are not limited by the terms. The terms are used only for the purpose of distinguishing one component from another. For example, without departing from the scope of the present invention, the second component may be referred to as the first component, and similarly, the first component may also be referred to as the second component. The term and / or includes a combination of a plurality of related items or any item of a plurality of related items.

어떤 구성요소가 다른 구성요소에 "연결되어" 있다거나 "접속되어" 있다고 언급된 때에는, 그 다른 구성요소에 직접적으로 연결되어 있거나 또는 접속되어 있을 수도 있지만, 중간에 다른 구성요소가 존재할 수도 있다고 이해되어야 할 것이다. 반면에, 어떤 구성요소가 다른 구성요소에 "직접 연결되어" 있다거나 "직접 접속되어" 있다고 언급된 때에는, 중간에 다른 구성요소가 존재하지 않는 것으로 이해되어야 할 것이다. When a component is said to be "connected" or "connected" to another component, it may be directly connected to or connected to that other component, but it may be understood that another component may be present in the middle. Should be. On the other hand, when a component is said to be "directly connected" or "directly connected" to another component, it should be understood that there is no other component in between.

본 출원에서 사용한 용어는 단지 특정한 실시예를 설명하기 위해 사용된 것으로, 본 발명을 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 출원에서, "포함하다" 또는 "가지다" 등의 용어는 명세서상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.The terminology used herein is for the purpose of describing particular example embodiments only and is not intended to be limiting of the present invention. Singular expressions include plural expressions unless the context clearly indicates otherwise. In this application, the terms "comprise" or "have" are intended to indicate that there is a feature, number, step, operation, component, part, or combination thereof described in the specification, and one or more other features. It is to be understood that the present invention does not exclude the possibility of the presence or the addition of numbers, steps, operations, components, components, or a combination thereof.

다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가지고 있다. 일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥 상 가지는 의미와 일치하는 의미를 가지는 것으로 해석되어야 하며, 본 출원에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.Unless defined otherwise, all terms used herein, including technical or scientific terms, have the same meaning as commonly understood by one of ordinary skill in the art. Terms such as those defined in the commonly used dictionaries should be construed as having meanings consistent with the meanings in the context of the related art, and shall not be construed in ideal or excessively formal meanings unless expressly defined in this application. Do not.

이하, 첨부된 도면을 참조하여 실시예를 상세히 설명하되, 도면 부호에 관계없이 동일하거나 대응하는 구성 요소는 동일한 참조 번호를 부여하고 이에 대한 중복되는 설명은 생략하기로 한다.Hereinafter, exemplary embodiments will be described in detail with reference to the accompanying drawings, and the same or corresponding components will be given the same reference numerals regardless of the reference numerals, and redundant description thereof will be omitted.

도2는 본 발명의 실시예에 따른 데이터 인코딩 장치 및 디코딩 장치의 개념도이다. 도2를 참조하면, 본 발명의 인코딩 장치(100) 및 디코딩 장치(200)는 네트워크를 통하여 연결되어 있거나 또는 하나의 전자 장치안에 구현될 수 있다. 전자 장치는 예를 들어, 컴퓨터, 랩톱(laptop), 이동 장치, 휴대 장치, 인터넷 프로토콜 텔레비전, 휴대 미디어 플레이어 및 휴대 정보 단말기(Personal Digital Assistants: PDA)를 포함하지만 이에 한정되지는 않는다. 네트워크는, 예를 들어, 근거리 통신망(Local Area Network: LAN), 무선 근거리 통신망(Wireless Local Area Network: WLAN), 광역 통신망(Wide Area Network: WAN), 인터넷, 소지역 통신망(Small Area Network: SAN)을 포함하지만 이에 한정되지는 않는다. 전자 장치는 또한 네트워크를 통하여 다른 전자장치 또는 서버(미도시)와 연결될 수 있다.2 is a conceptual diagram of a data encoding apparatus and a decoding apparatus according to an embodiment of the present invention. Referring to FIG. 2, the encoding device 100 and the decoding device 200 of the present invention may be connected through a network or implemented in one electronic device. Electronic devices include, but are not limited to, computers, laptops, mobile devices, portable devices, Internet protocol televisions, portable media players, and personal digital assistants (PDAs), for example. The network may be, for example, a local area network (LAN), a wireless local area network (WLAN), a wide area network (WAN), the Internet, a small area network (SAN). ), But is not limited to such. The electronic device may also be connected to another electronic device or a server (not shown) through a network.

본 발명의 실시예에서는 인코딩 장치(100)와 디코딩 장치(200)가 서로 다른 전자 장치에 구현되어 네트워크를 통하여 데이터 통신을 수행하는 것을 예로 설명하기로 한다. 그러나 이와 달리, 인코딩 장치(100)와 디코딩 장치(200)가 하나의 전자 장치안에 구현될 수 있음은 본 발명의 기술 사상 범위에 포함된다 할 것이다.In the embodiment of the present invention, the encoding device 100 and the decoding device 200 are implemented in different electronic devices to perform data communication through a network as an example. However, unlike this, the encoding apparatus 100 and the decoding apparatus 200 may be implemented in a single electronic device will be included in the scope of the technical idea of the present invention.

본 발명의 실시예에서 데이터는 멀티미디어 콘텐츠를 의미할 수 있다. 이러한 멀티미디어 콘텐츠는 예를 들어 스틸 이미지(still images), 애니메이션, 비디오 및 인터랙티브 콘텐츠 형태(interactive content forms) 중의 하나, 또는 이들의 조합을 포함하지만 이에 한정되지는 않는다. 멀티미디어 콘텐츠는 다수의 화상 그룹들(groups of pictures: GOPs)로 이루어질 수 있다. 화상 그룹들은 고정된 이미지를 나타내는 I-프레임(Intra Frame: I-Frame), 선행하는 I 또는 P-프레임으로부터의 모션 보상 차이 정보(motion-compensated difference information)를 갖는 P-프레임(Predictive coded Frame: P-Frame), 선행 및 후속 I 또는 P-프레임으로부터의 차이 정보를 갖는 B-프레임(Bidirectionally predictive coded Frame: B-Frame)으로 분류되는 프레임들의 일부 또는 전부를 포함하는 섹션(section)이다. In an embodiment of the present invention, data may mean multimedia content. Such multimedia content includes, but is not limited to, for example, still images, animations, video and interactive content forms, or a combination thereof. Multimedia content may consist of a plurality of groups of pictures (GOPs). Picture groups are I-frames representing fixed images, P-frames with motion-compensated difference information from a preceding I or P-frame. P-Frame), a section containing some or all of the frames classified as Bidirectionally predictive coded Frames (B-Frames) with difference information from preceding and subsequent I or P-frames.

I-프레임은 카메라로 찍은 영상 전체를 압축(coding)하여 얻어지는 모든 화소(pixel)의 좌표정보를 나타내는 데이터로서 키 프레임이라고도 한다. I-프레임은 다른 프레임들에 비해 화질은 가장 좋지만 용량은 가장 크다. I-프레임은 전체 화면(Full Frame) 정보를 가지고 있고, 영상이 적절히 재생되기 전 또는 재생된 뒤에는 그 화면으로부터 어떤 다른 정보도 필요로 하지 않는다. 즉 I-프레임은 독립적인 프레임이고, 랜덤 억세스(random access)가 가능한 프레임이다. I-프레임은 가장 기본이 되는 프레임으로서 앞뒤 프레임에 상관없이 인코딩과 디코딩이 가능한 프레임이다. 즉, 현재 화상 내의 정보만으로 압축이 행해진다. 압축 특성상 I-프레임은 FF/REW를 위한 Random access나 고속 재생을 실현하기 위하여 종종 사용된다.An I-frame is data representing coordinate information of all pixels obtained by coding an entire image taken by a camera, also called a key frame. I-frames have the best image quality but the largest capacity compared to other frames. I-frames have full frame information and do not need any other information from the picture before or after the picture is played back properly. That is, the I-frame is an independent frame and a frame capable of random access. I-frames are the most basic frames and can be encoded and decoded regardless of the frame before or after. In other words, compression is performed only with information in the current image. Due to the nature of compression, I-frames are often used to realize random access or fast playback for FF / REW.

P-프레임은 이전에 코딩되었던 I-프레임 또는 P-프레임을 참조하여 공통점을 찾고, 공통되지 않는 부분에 대해서만 코딩하여 얻어지는 프레임이다. 즉 P-프레임은 이전에 나온 키 프레임의 정보를 바탕으로 구성되는 프레임이고, 화질과 용량이 I-프레임과 B-프레임의 중간급이다. 이처럼 P-프레임은 전체 화면에 대한 정보를 나타내는 것이 아니고, I-프레임을 추종하여 선행하는 I-프레임의 바뀐 정보만 나타낸다. 그리고 P-프레임을 델타 프레임(Delta Frame)이라고도 하며, P-프레임은 움직임 보상기법을 이용한다. P-프레임에서는 이전 프레임과 현재 프레임과의 오차를 계산하여 이전 프레임의 해당블록과의 오차가 임계치보다 크면 DCT를 수행하고, 오차가 임계치보다 작으면 유사한 블록의 방향 방향벡터 정보만을 압축하는 방법을 사용한다The P-frame is a frame obtained by finding commonality by referring to the previously coded " I-frame " or P-frame, and coding only for portions that are not common. In other words, the P-frame is a frame composed based on the information of the previous key frame, and the quality and capacity are intermediate between the I-frame and the B-frame. In this way, the P-frame does not represent information on the entire screen, but only changed information of the preceding " I-frame " The P-frame is also called a delta frame, and the P-frame uses a motion compensation technique. In the P-frame, the error between the previous frame and the current frame is calculated to perform DCT when the error of the corresponding block of the previous frame is larger than the threshold, and to compress only the direction direction vector information of the similar block when the error is smaller than the threshold. use

P-프레임은 I-프레임으로부터의 이동벡터값만 전송하고 기준은 항상 최근의 I-프레임이 된다. The P-frame only transmits the motion vector value from the I-frame, and the reference is always the most recent I-frame.

B-프레임은 전후의 I-프레임과 P-프레임의 정보를 바탕으로 구성된 프레임이다. 즉 B-프레임은 두 방향에서 예견되는 프레임으로서 앞 뒤의 I-프레임과 P-프레임을 참조하여 만들어진다. B-프레임은 이전의 I-프레임 또는 P-프레임 그리고 다음 I-프레임 또는 P-프레임을 조사하여 공통된 부분을 찾아서 중복되는 부분을 제외한 정보만을 갖는 프레임이다. 따라서 B-프레임은 많은 참조를 하므로 그만큼 중복되는 부분이 제외되고 변경 부분만 표시하므로 B-프레임이 많아지면 압축률이 좋아진다. 대신 압축할 때 참조 프레임의 예측 시간이 길어지기 때문에 시간이 오래 걸린다. B-프레임은 I-프레임과 P-프레임에 비해 화질과 용량이 최하급이며, 전체 화면 정보를 나타내는 것이 아니고, 이전 화면들(previous frames)과 다음 화면들(next frames) 양측에 의해 예측되는 화면 정보를 나타낸다. The B-frame is a frame composed based on the information of front and rear I-frame and P-frame. In other words, the B-frame is a frame predicted in two directions and is made by referring to the front and rear? A B-frame is a frame having only information except for overlapping parts by searching for a common part by examining a previous " I-frame " Therefore, since B-frames refer to a lot of numbers, the overlapping parts are excluded and only the changed parts are displayed. Therefore, when the number of B-frames increases, the compression ratio is improved. Instead, the compression takes a long time because the prediction time of the reference frame is long. B-frames have the lowest image quality and capacity compared to I-frames and P-frames, and do not represent full-screen information, but are screen information predicted by both previous and next frames. Indicates.

도3은 본 발명의 일실시예에 따른 데이터 인코딩 장치의 구성 블록도이다.3 is a block diagram illustrating a data encoding apparatus according to an embodiment of the present invention.

도3을 참조하면, 데이터 인코딩 장치(100)는 제1데이터 베이스(110), 참조 프레임 생성부(120), 목록 데이터 작성부(130), 인코딩부(140) 및 데이터 송신부(150)를 포함한다.Referring to FIG. 3, the data encoding apparatus 100 includes a first database 110, a reference frame generator 120, a list data generator 130, an encoder 140, and a data transmitter 150. do.

제1데이터 베이스(110)는 동기화 된 데이터가 저장될 수 있다. 동기화 된 데이터는 사전에 동기화되어 데이터 인코딩 장치(100) 및 디코딩 장치(200)에 각각 저장될 수 있다. 제1데이터 베이스(110)는 요구되는 정보를 저장하기 위해 연결된 메모리(예를 들어, 램(random access memory: RAM))를 포함할 수 있다. 메모리는 데이터 인코딩 장치(100)에 의해 요구되는 임시 정보를 저장하는데 사용될 수 있다. 제1데이터 베이스(110)는 데이터 인코딩 장치(100)에 의해 요구되는 정적 정보(static information)를 저장하기 위해 연결되는 롬(read only memory: ROM)을 더 포함할 수 있다. 예를 들어 자기 디스크, 하드 디스크 또는 광학 디스크와 같은 저장 유닛이 제공될 수 있고, 정보 저장을 위해 버스를 통하여 연결될 수 있다.The first database 110 may store synchronized data. The synchronized data may be synchronized in advance and stored in the data encoding apparatus 100 and the decoding apparatus 200, respectively. The first database 110 may include a memory (eg, random access memory (RAM)) connected to store the required information. The memory may be used to store temporary information required by the data encoding apparatus 100. The first database 110 may further include a read only memory (ROM) connected to store static information required by the data encoding apparatus 100. Storage units such as, for example, magnetic disks, hard disks or optical disks may be provided and connected via a bus for information storage.

참조 프레임 생성부(120)는 동기화된 데이터 중에서 적어도 하나의 프레임을 선정하고, 선정된 프레임과 대상 동영상 간의 유사도를 산출할 수 있다. 참조 프레임 생성부(120)는 선정된 프레임 중 산출된 유사도가 높은 순서대로 기 설정 개수의 프레임을 추출하고, 추출된 프레임을 유사도 순서에 따라 정렬하여 참조 프레임을 생성할 수 있다. 참조 프레임은 동기화 된 데이터에서 선정되며 대상 동영상과 유사도가 높은 프레임의 집합으로 이루어 질 수 있다. 참조 프레임은 예를 들면, 동기화된 동영상들의 모든 압축전 프레임들의 집합으로 이루어 질 수 있다.The reference frame generator 120 may select at least one frame from the synchronized data and calculate a similarity between the selected frame and the target video. The reference frame generation unit 120 may generate a reference frame by extracting a predetermined number of frames in order of high similarity calculated among the selected frames, and arranging the extracted frames in order of similarity. The reference frame is selected from the synchronized data and may be composed of a set of frames having a high similarity with the target video. The reference frame may consist of, for example, a collection of all pre-compressed frames of synchronized videos.

참조 프레임 생성부(120)는 색상 분포를 이용해 분포 벡터들 간의 코사인 유사도를 이용해 유사도를 산출하는 방식, 프레임들을 오브젝트 단위로 분석해 태그를 단 후 상기 태그들 간의 유사도를 산출하는 방식, 프레임들의 비트스트림 일치 비율에 따라 유사도를 산출하는 방식 및 해당 프레임들의 윤곽선 및 색상의 특징을 추출해 모양 매칭(shape matching)을 통해 유사도를 산출하는 방식 중 적어도 하나의 방식에 따라 유사도를 산출할 수 있다.The reference frame generator 120 calculates the similarity using the cosine similarity between the distribution vectors using the color distribution, analyzes the frames in object units, applies a tag, and calculates the similarity between the tags, and a bitstream of the frames. The similarity may be calculated according to at least one of a method of calculating similarity according to the matching ratio, and a method of calculating similarity through shape matching by extracting contour and color features of the frames.

목록 데이터 작성부(130)는 참조 프레임에 포함된 각 프레임에 대한 목록 데이터를 생성할 수 있다. 목록 데이터 작성부(130)는 참조 프레임에 포함된 각 프레임에 대한 참조 정보를 생성하고, 참조 정보를 참조 프레임에 포함된 각 프레임의 정렬 순서대로 나열하여 목록 데이터를 생성할 수 있다.The list data generator 130 may generate list data for each frame included in the reference frame. The list data generator 130 may generate reference information for each frame included in the reference frame and list the reference information in the sorting order of each frame included in the reference frame to generate list data.

인코딩부(140)는 대상 데이터에 포함된 프레임 중 타 프레임간의 중복성을 이용하지 못하는 프레임이 참조 프레임을 이용하도록 하여 대상 데이터에 대한 압축 동영상을 생성할 수 있다. 중복성을 이용하지 못하는 프레임은 I-프레임일 수 있다. 인코딩부(140)는 인코딩 과정에서 I-프레임이 참조 프레임을 이용하도록 함으로써 전체 프레임 중 I-프레임의 비율을 크게 줄일 수 있으며, 데이터 압축율을 크게 향상시킬 수 있다.The encoder 140 may generate a compressed video of the target data by using a reference frame in a frame that does not use redundancy between other frames among the frames included in the target data. Frames that do not use redundancy may be I-frames. The encoding unit 140 may greatly reduce the ratio of I-frames among the entire frames by allowing the I-frames to use the reference frames in the encoding process, and greatly improve the data compression ratio.

데이터 송신부(150)는 예를 들면, 압축 동영상 및 상기 목록 데이터를 전송할 수 있다. 데이터 송신부는 종합 정보 통신망(integrated services digital network: ISDN) 카드, 모뎀, 근거리 통신망(LAN) 카드, 적외선 포트, 블루투스 포트(Bluetooth port), 지그비(zigbee) 포트 및 무선 포트를 포함하여 구성될 수 있지만 이에 한정되지는 않는다.The data transmitter 150 may transmit, for example, a compressed video and the list data. The data transmitter may be configured to include integrated services digital network (ISDN) cards, modems, local area network (LAN) cards, infrared ports, Bluetooth ports, zigbee ports, and wireless ports. It is not limited to this.

도4는 본 발명의 일실시예에 따른 데이터 디코딩 장치의 구성 블록도이다. 도4를 참조하면, 데이터 디코딩 장치(200)는 제2데이터 베이스(210), 데이터 수신부(220), 참조 프레임 복원부(230) 및 디코딩부(240)를 포함한다.4 is a block diagram illustrating a data decoding apparatus according to an embodiment of the present invention. Referring to FIG. 4, the data decoding apparatus 200 includes a second database 210, a data receiver 220, a reference frame reconstructor 230, and a decoder 240.

제2데이터 베이스(210)는 동기화 된 데이터가 저장될 수 있다. 제2데이터 베이스(210)는 요구되는 정보를 저장하기 위해 연결된 메모리(예를 들어, 램(random access memory: RAM))를 포함할 수 있다. 메모리는 데이터 디코딩 장치에 의해 요구되는 임시 정보를 저장하는데 사용될 수 있다. 제2데이터 베이스(210)는 데이터 디코딩 장치 의해 요구되는 정적 정보(static information)를 저장하기 위해 연결되는 롬(read only memory: ROM)을 더 포함할 수 있다. 예를 들어 자기 디스크, 하드 디스크 또는 광학 디스크와 같은 저장 유닛이 제공될 수 있고, 정보 저장을 위해 버스를 통하여 연결될 수 있다.The second database 210 may store synchronized data. The second database 210 may include a memory (eg, random access memory (RAM)) coupled to store the required information. The memory may be used to store temporary information required by the data decoding apparatus. The second database 210 may further include a read only memory (ROM) connected to store static information required by the data decoding apparatus. Storage units such as, for example, magnetic disks, hard disks or optical disks may be provided and connected via a bus for information storage.

데이터 수신부(220)는 압축 동영상과 목록 데이터를 수신할 수 있다. 데이터 수신부(220)는 예를 들면, 압축 동영상 및 상기 목록 데이터를 전송할 수 있다. 데이터 수신부(220)는 종합 정보 통신망(integrated services digital network: ISDN) 카드, 모뎀, 근거리 통신망(LAN) 카드, 적외선 포트, 블루투스 포트(Bluetooth port), 지그비(zigbee) 포트 및 무선 포트를 포함하여 구성될 수 있지만 이에 한정되지는 않는다.The data receiver 220 may receive the compressed video and the list data. The data receiver 220 may transmit the compressed video and the list data, for example. The data receiver 220 includes an integrated services digital network (ISDN) card, a modem, a local area network (LAN) card, an infrared port, a Bluetooth port, a Zigbee port, and a wireless port. May be, but is not limited to.

참조 프레임 복원부(230)는 목록 데이터에 대응되는 프레임을 동기화 된 데이터에서 순차적으로 조회하고, 조회된 프레임을 순차적으로 결합하여 참조 프레임을 생성할 수 있다. 참조 프레임 복원부(230)는 제2데이터 베이스(210)에 저장된 동기화 된 데이터 중에서 목록 데이터에 대응되는 프레임을 검색하여 추출하고, 목록 데이터에 나열된 프레임의 순서에 따라 추출한 프레임을 결합하여 참조 프레임을 생성할 수 있다.The reference frame reconstructor 230 may sequentially search for the frames corresponding to the list data in the synchronized data, and may generate the reference frames by sequentially combining the inquired frames. The reference frame reconstructor 230 searches for and extracts frames corresponding to the list data from the synchronized data stored in the second database 210, and combines the extracted frames according to the order of the frames listed in the list data to form the reference frame. Can be generated.

디코딩부(240)는 참조 프레임을 이용하여 압축 동영상을 디코딩하고 압축 동영상의 원본 영상을 생성할 수 있다. 디코딩부(240)는 압축 동영상 디코딩시 타 프레임간의 중복성을 이용하지 못하는 프레임이 참조 프레임을 이용하도록 하여 압축 동영상을 원본 영상으로 변환할 수 있다. 중복성을 이용하지 못하는 프레임은 I-프레임일 수 있다.The decoding unit 240 may decode the compressed video using the reference frame and generate the original video of the compressed video. The decoding unit 240 may convert the compressed video into the original image by using a reference frame in a frame that does not use the redundancy between other frames when decoding the compressed video. Frames that do not use redundancy may be I-frames.

도5는 본 발명의 일실시예에 따른 데이터 인코딩 장치의 동작을 설명하기 위한 도면이다. 도5를 참조하면 하나의 화상 그룹(groups of pictures: GOP)은 복수개의 프레임을 포함하여 구성된다. 각각의 화상 그룹은 I-프레임, 선행하는 I 또는 P-프레임으로부터의 모션 보상 차이 정보를 갖는 P-프레임과 선행 및 후속 I 또는 P-프레임으로부터의 차이 정보를 갖는 B-프레임을 포함한다. 또한, 화상 그룹과는 별개로 동기화 된 데이터에서 선정된 프레임을 이용하여 생성된 참조 프레임이 구성되어 있다. 참조 프레임은 인코딩을 하기 위한 대상 데이터와 동기화 된 데이터의 유사도에 따라 선정된 프레임의 조합으로 구성될 수 있다. 참조 프레임은 예를 들면, 동기화된 동영상들의 모든 압축전 프레임들의 집합으로 이루어 질 수 있다. I-프레임은 데이터 인코딩 또는 디코딩시에 생성된 참조 프레임을 이용한다. 기존에는 인코딩 또는 디코딩 과정에서 I-프레임은 타 프레임에 대한 정보나 참조 과정없이 인코딩 또는 디코딩이 수행되었으나, 본 발명의 실시예에서는 동기화 된 데이터와 대상 데이터간의 유사성에 기반하여 생성된 참조 프레임을 참조함으로써 I-프레임의 데이터 비중을 크게 감소시킬 수 있다. 즉, 랜덤 억세스나 일정한 비디오의 오류비율(error rate)을 보증하기 위해 다른 프레임들을 참조하지 못하는 I-프레임이 인코딩 장치와 디코딩 장치에 저장되어 있는 기존의 동기화 된 프레임을 참조할 수 있게 함으로써 기존의 I-프레임의 특성을 잃지 않고 압축률을 크게 올릴 수 있다. 이에 따라 기존의 랜덤 억세스 특성도 유지되며 동일한 화질 유지도 가능하다. 5 is a view for explaining the operation of the data encoding apparatus according to an embodiment of the present invention. Referring to FIG. 5, one group of pictures (GOP) includes a plurality of frames. Each picture group includes an I-frame, a P-frame with motion compensation difference information from a preceding I or P-frame, and a B-frame with difference information from preceding and subsequent I or P-frames. In addition, a reference frame generated using a frame selected from data synchronized separately from the picture group is configured. The reference frame may be composed of a combination of frames selected according to the similarity of the data synchronized with the target data for encoding. The reference frame may consist of, for example, a collection of all pre-compressed frames of synchronized videos. I-frames use the reference frames generated during data encoding or decoding. Conventionally, in the encoding or decoding process, an I-frame is encoded or decoded without information or reference process for another frame. However, in the embodiment of the present invention, the reference frame is generated based on the similarity between the synchronized data and the target data. As a result, the data weight of the I-frame can be greatly reduced. That is, I-frames that cannot refer to other frames to guarantee random access or a constant error rate of video can refer to existing synchronized frames stored in the encoding device and the decoding device. The compression ratio can be greatly increased without losing the characteristics of the I-frame. Accordingly, the existing random access characteristics are also maintained and the same image quality can be maintained.

도6 및 도7은 본 발명의 일실시예에 따른 데이터 인코딩 장치의 압축 효율을 설명하기 위한 도면이다. 도6(a)를 참조하면, 웹드라마의 경우 H.265에 따른 인코딩 방식에 비하여 I-프레임의 용량은 39.2% 감소하였고, 전체 프레임의 용량은 14.8%로 크게 감소하였음을 확인 할 수 있다. 또한, 도6(b)를 참조하면 버라이어티 쇼의 경우 H.265에 따른 인코딩 방식에 비하여 I-프레임의 용량은 23.0% 감소하였고, 전체 프레임의 용량은 7.6%로 크게 감소하였음을 확인 할 수 있다. 또한, 도7을 참조하면, 원본 영상의 프레임 사이즈가 각각 47.5KB, 45.8KB인 반면에, 참조 프레임을 적용하였을 경우 프레임 사이즈가 각각 6.09KB, 28.8KB로 감소하였음을 확인할 수 있다.6 and 7 are diagrams for describing compression efficiency of a data encoding apparatus according to an embodiment of the present invention. Referring to FIG. 6 (a), it can be seen that the capacity of the I-frame is reduced by 39.2% and the capacity of the entire frame is significantly reduced to 14.8% compared to the encoding method according to H.265. In addition, referring to FIG. 6 (b), it can be seen that in the case of the variety show, the capacity of the I-frame is reduced by 23.0% and the capacity of the entire frame is greatly reduced to 7.6% compared to the encoding method according to H.265. . Referring to FIG. 7, it can be seen that the frame sizes of the original video are 47.5KB and 45.8KB, respectively, whereas the frame sizes are reduced to 6.09KB and 28.8KB, respectively, when the reference frame is applied.

도8은 본 발명의 일실시예에 따른 데이터 인코딩 방법의 순서도이다. 도8을 참조하면, 먼저, 참조 프레임 생성부는 동기화된 데이터 중에서 적어도 하나의 프레임을 선정한다. 8 is a flowchart of a data encoding method according to an embodiment of the present invention. Referring to FIG. 8, first, the reference frame generator selects at least one frame from synchronized data.

다음으로, 참조 프레임 생성부는 선정된 프레임과 데이터와 대상 동영상 간의 유사도를 산출하여 참조 프레임을 생성한다. 참조 프레임 생성부는 선정된 프레임 중 산출된 유사도가 높은 순서대로 기 설정 개수의 프레임을 추출하고, 추출된 프레임을 유사도 순서에 따라 정렬하여 참조 프레임을 생성한다. Next, the reference frame generator generates a reference frame by calculating a similarity between the selected frame and the data and the target video. The reference frame generator extracts a predetermined number of frames in the order of the similarity calculated among the selected frames, and generates the reference frames by arranging the extracted frames in the order of similarity.

다음으로, 목록 데이터 작성부는 상기 참조 프레임에 포함된 각 프레임에 대한 목록 데이터를 생성한다. 목록 데이터 작성부는 참조 프레임에 포함된 각 프레임에 대한 참조 정보를 생성하고, 참조 정보를 참조 프레임에 포함된 각 프레임의 정렬 순서대로 나열하여 목록 데이터를 생성한다.Next, the list data creating unit generates list data for each frame included in the reference frame. The list data generating unit generates reference information for each frame included in the reference frame, and generates list data by listing the reference information in the sorting order of each frame included in the reference frame.

다음으로, 인코딩부는 대상 데이터에 포함된 프레임 중 타 프레임간의 중복성을 이용하지 못하는 프레임이 참조 프레임을 이용하도록 하여 대상 데이터에 대한 압축 동영상을 생성한다. 이에 따라 인코딩 과정에서 I-프레임이 참조 프레임을 이용하도록 함으로써 전체 프레임 중 I-프레임의 비율을 크게 줄일 수 있으며, 데이터 압축율을 크게 향상시킬 수 있다.Next, the encoding unit generates a compressed video of the target data by using a reference frame for a frame that does not use redundancy between other frames among the frames included in the target data. Accordingly, by allowing the I-frame to use the reference frame in the encoding process, the ratio of the I-frame in the entire frame can be greatly reduced, and the data compression rate can be greatly improved.

도9는 본 발명의 일실시예에 따른 데이터 디코딩 방법의 순서도이다. 도9를 참조하면, 먼저, 데이터 수신부는 압축 동영상과 목록 데이터를 수신한다. 데이터 수신부는 데이터 인코딩 장치의 데이터 송신부에서 전송한 압축 동영상과 목록 데이터를 수신한다. 데이터 인코딩 장치와 데이터 디코딩 장치가 하나의 전자 장치내에 구현되는 경우에는 별도의 통신부를 통하지 않고 데이터 버스(BUS)를 통하여 압축 동영상과 목록 데이터가 송수신 될 수 있다.9 is a flowchart of a data decoding method according to an embodiment of the present invention. Referring to FIG. 9, first, the data receiver receives a compressed video and list data. The data receiver receives the compressed video and the list data transmitted from the data transmitter of the data encoding apparatus. When the data encoding apparatus and the data decoding apparatus are implemented in one electronic device, the compressed video and the list data may be transmitted and received through the data bus BUS without using a separate communication unit.

다음으로, 참조 프레임 복원부가 상기 목록 데이터에 대응되는 프레임을 데이터 베이스에 저장된 동기화 된 데이터에서 순차적으로 조회하고, 참조 프레임 복원부가 조회된 프레임을 순차적으로 결합하여 참조 프레임을 생성한다. 참조 프레임 복원부는 제2데이터 베이스에 저장된 동기화 된 데이터 중에서 목록 데이터에 대응되는 프레임을 검색하여 추출하고, 목록 데이터에 나열된 프레임의 순서에 따라 추출한 프레임을 결합하여 참조 프레임을 생성한다.Next, the reference frame reconstruction unit sequentially retrieves the frames corresponding to the list data from the synchronized data stored in the database, and the reference frame reconstruction unit sequentially combines the inquired frames to generate the reference frame. The reference frame reconstruction unit searches for and extracts a frame corresponding to the list data from the synchronized data stored in the second database, and generates a reference frame by combining the extracted frames according to the order of the frames listed in the list data.

다음으로, 디코딩부는 참조 프레임을 이용하여 압축 동영상을 디코딩하고 상기 압축 동영상의 원본 영상을 생성한다. 디코딩부는 압축 동영상 디코딩시 타 프레임간의 중복성을 이용하지 못하는 프레임이 참조 프레임을 이용하도록 하여 압축 동영상을 원본 영상으로 변환한다.Next, the decoding unit decodes the compressed video using the reference frame and generates the original video of the compressed video. The decoding unit converts the compressed video into the original video by using a reference frame for a frame that cannot use the redundancy between other frames when decoding the compressed video.

본 실시예에서 사용되는 '~부'라는 용어는 소프트웨어 또는 FPGA(field-programmable gate array) 또는 ASIC과 같은 하드웨어 구성요소를 의미하며, '~부'는 어떤 역할들을 수행한다. 그렇지만 '~부'는 소프트웨어 또는 하드웨어에 한정되는 의미는 아니다. '~부'는 어드레싱할 수 있는 저장 매체에 있도록 구성될 수도 있고 하나 또는 그 이상의 프로세서들을 재생시키도록 구성될 수도 있다. 따라서, 일 예로서 '~부'는 소프트웨어 구성요소들, 객체지향 소프트웨어 구성요소들, 클래스 구성요소들 및 태스크 구성요소들과 같은 구성요소들과, 프로세스들, 함수들, 속성들, 프로시저들, 서브루틴들, 프로그램 코드의 세그먼트들, 드라이버들, 펌웨어, 마이크로코드, 회로, 데이터, 데이터베이스, 데이터 구조들, 테이블들, 어레이들, 및 변수들을 포함한다. 구성요소들과 '~부'들 안에서 제공되는 기능은 더 작은 수의 구성요소들 및 '~부'들로 결합되거나 추가적인 구성요소들과 '~부'들로 더 분리될 수 있다. 뿐만 아니라, 구성요소들 및 '~부'들은 디바이스 또는 보안 멀티미디어카드 내의 하나 또는 그 이상의 CPU들을 재생시키도록 구현될 수도 있다.The term '~ part' used in the present embodiment refers to software or a hardware component such as a field-programmable gate array (FPGA) or an ASIC, and '~ part' plays a role. However, '~' is not meant to be limited to software or hardware. '~ Portion' may be configured to be in an addressable storage medium or may be configured to play one or more processors. Thus, as an example, '~' means components such as software components, object-oriented software components, class components, and task components, and processes, functions, properties, procedures, and the like. Subroutines, segments of program code, drivers, firmware, microcode, circuits, data, databases, data structures, tables, arrays, and variables. The functionality provided within the components and the '~' may be combined into a smaller number of components and the '~' or further separated into additional components and the '~'. In addition, the components and '~' may be implemented to play one or more CPUs in the device or secure multimedia card.

상기에서는 본 발명의 바람직한 실시예를 참조하여 설명하였지만, 해당 기술 분야의 숙련된 당업자는 하기의 특허 청구의 범위에 기재된 본 발명의 사상 및 영역으로부터 벗어나지 않는 범위 내에서 본 발명을 다양하게 수정 및 변경시킬 수 있음을 이해할 수 있을 것이다. Although described above with reference to a preferred embodiment of the present invention, those skilled in the art will be variously modified and changed within the scope of the invention without departing from the spirit and scope of the invention described in the claims below I can understand that you can.

100: 데이터 인코딩 장치
110: 제1데이터 베이스
120: 참조 프레임 생성부
130: 목록 데이터 작성부
140: 인코딩부
150: 데이터 송신부
200: 데이터 디코딩 장치
210: 제2데이터 베이스
220: 데이터 수신부
230: 참조 프레임 복원부
240: 디코딩부
100: data encoding device
110: first database
120: reference frame generation unit
130: list data creation unit
140: encoding section
150: data transmission unit
200: data decoding device
210: second database
220: data receiving unit
230: reference frame recovery unit
240: decoding unit

Claims (12)

동기화 된 데이터가 저장되어 있는 데이터 베이스;
상기 동기화된 데이터 중에서 적어도 하나의 프레임을 선정하고, 선정된 프레임과 대상 동영상 간의 유사도를 산출하여 참조 프레임을 생성하는 참조 프레임 생성부;
상기 참조 프레임에 포함된 각 프레임에 대한 목록 데이터를 생성하는 목록 데이터 작성부; 및
상기 대상 동영상에 포함된 프레임 중 타 프레임간의 중복성을 이용하지 못하는 I프레임이 상기 참조 프레임을 이용하도록 하여 상기 대상 동영상에 대한 압축 동영상을 생성하는 인코딩부를 포함하며,
상기 참조 프레임 생성부는,
상기 선정된 프레임 중 산출된 유사도가 높은 순서대로 기 설정 개수의 프레임을 추출하고, 추출된 프레임을 유사도 순서에 따라 정렬하여 참조 프레임을 생성하는 데이터 인코딩 장치.
A database in which synchronized data is stored;
A reference frame generator for selecting at least one frame from the synchronized data and calculating a similarity between the selected frame and the target video to generate a reference frame;
A list data generator for generating list data for each frame included in the reference frame; And
And an encoding unit for generating a compressed video for the target video by using the reference frame with an I frame that does not use redundancy between other frames among the frames included in the target video.
The reference frame generation unit,
And extracting a predetermined number of frames in order of high similarity calculated among the selected frames, and generating a reference frame by arranging the extracted frames in order of similarity.
삭제delete 제1항에 있어서,
상기 참조 프레임 생성부는,
색상 분포를 이용해 분포 벡터들 간의 코사인 유사도를 이용해 유사도를 산출하는 방식, 프레임들을 오브젝트 단위로 분석해 태그를 단 후 상기 태그들 간의 유사도를 산출하는 방식, 프레임들의 비트스트림 일치 비율에 따라 유사도를 산출하는 방식 및 해당 프레임들의 윤곽선 및 색상의 특징을 추출해 모양 매칭(shape matching)을 통해 유사도를 산출하는 방식 중 적어도 하나의 방식에 따라 유사도를 산출하는 데이터 인코딩 장치.
The method of claim 1,
The reference frame generation unit,
A method of calculating similarity using cosine similarity between distribution vectors using color distribution, a method of analyzing frames in object units, applying a tag after tagging, and calculating similarity according to bitstream matching ratio of frames. And a similarity calculation method according to at least one of a method and a method of calculating similarity through shape matching by extracting contour and color characteristics of corresponding frames.
제1항에 있어서,
상기 목록 데이터 작성부는 상기 참조 프레임에 포함된 각 프레임에 대한 참조 정보를 생성하고, 상기 참조 정보를 상기 참조 프레임에 포함된 각 프레임의 정렬 순서대로 나열하여 상기 목록 데이터를 생성하는 데이터 인코딩 장치.
The method of claim 1,
And the list data generating unit generates reference information for each frame included in the reference frame, and generates the list data by arranging the reference information in the sort order of each frame included in the reference frame.
제1항에 있어서,
상기 압축 동영상 및 상기 목록 데이터를 전송하는 데이터 송신부를 더 포함하는 데이터 인코딩 장치.
The method of claim 1,
And a data transmitter for transmitting the compressed video and the list data.
삭제delete 동기화 된 데이터가 저장되어 있는 데이터 베이스; 상기 동기화된 데이터 중에서 적어도 하나의 프레임을 선정하고, 선정된 프레임과 대상 동영상 간의 유사도를 산출하여 참조 프레임을 생성하는 참조 프레임 생성부; 상기 참조 프레임에 포함된 각 프레임에 대한 목록 데이터를 생성하는 목록 데이터 작성부; 및 상기 대상 동영상에 포함된 프레임 중 타 프레임간의 중복성을 이용하지 못하는 I프레임이 상기 참조 프레임을 이용하도록 하여 상기 대상 동영상에 대한 압축 동영상을 생성하는 인코딩부를 포함하는 데이터 인코딩 장치; 및
동기화 된 데이터가 저장되어 있는 데이터 베이스; 상기 데이터 인코딩 장치로부터 압축 동영상과 목록 데이터를 수신하는 데이터 수신부; 상기 목록 데이터에 대응되는 프레임을 상기 동기화 된 데이터에서 순차적으로 조회하고, 조회된 프레임을 순차적으로 결합하여 참조 프레임을 생성하는 참조 프레임 복원부; 및 상기 참조 프레임을 이용하여 상기 압축 동영상을 디코딩하고 상기 압축 동영상의 원본 영상을 생성하는 디코딩부를 포함하는 데이터 디코딩 장치;를 포함하며,
상기 참조 프레임 생성부는,
상기 선정된 프레임 중 산출된 유사도가 높은 순서대로 기 설정 개수의 프레임을 추출하고, 추출된 프레임을 유사도 순서에 따라 정렬하여 참조 프레임을 생성하는 데이터 인코딩 및 디코딩 장치.
A database in which synchronized data is stored; A reference frame generator for selecting at least one frame from the synchronized data and calculating a similarity between the selected frame and the target video to generate a reference frame; A list data generator for generating list data for each frame included in the reference frame; And an encoding unit configured to generate a compressed video for the target video by using an I frame that does not use redundancy between other frames among the frames included in the target video. And
A database in which synchronized data is stored; A data receiver configured to receive compressed video and list data from the data encoding apparatus; A reference frame reconstructing unit which sequentially searches the frames corresponding to the list data in the synchronized data, and generates a reference frame by sequentially combining the inquired frames; And a decoding unit including a decoding unit which decodes the compressed video by using the reference frame and generates an original image of the compressed video.
The reference frame generation unit,
And extracting a predetermined number of frames in the order of the similarity calculated among the selected frames, and generating the reference frame by arranging the extracted frames according to the similarity order.
참조 프레임 생성부가 동기화된 데이터 중에서 적어도 하나의 프레임을 선정하는 단계;
상기 참조 프레임 생성부가 선정된 프레임과 데이터와 대상 동영상 간의 유사도를 산출하여 참조 프레임을 생성하는 단계;
목록 데이터 작성부가 상기 참조 프레임에 포함된 각 프레임에 대한 목록 데이터를 생성하는 단계; 및
인코딩부가 상기 대상 동영상에 포함된 프레임 중 타 프레임간의 중복성을 이용하지 못하는 I-프레임이 상기 참조 프레임을 이용하도록 하여 상기 대상 동영상에 대한 압축 동영상을 생성하는 단계를 포함하며,
상기 참조 프레임을 생성하는 단계는,
상기 선정된 프레임 중 산출된 유사도가 높은 순서대로 기 설정 개수의 프레임을 추출하는 단계; 및
추출된 프레임을 유사도 순서에 따라 정렬하여 참조 프레임을 생성하는 단계를 포함하는 데이터 인코딩 방법.
Selecting at least one frame from the synchronized data by the reference frame generator;
Generating a reference frame by calculating a similarity between the selected frame and the selected video with the target video;
Generating, by a list data generator, list data for each frame included in the reference frame; And
Generating an compressed video for the target video by causing an encoding unit to use the reference frame for an I-frame that does not use redundancy between other frames among the frames included in the target video;
Generating the reference frame,
Extracting a predetermined number of frames in order of high similarity calculated among the selected frames; And
And arranging the extracted frames according to the similarity order to generate a reference frame.
삭제delete 제8항에 있어서,
상기 목록 데이터를 생성하는 단계는,
상기 참조 프레임에 포함된 각 프레임에 대한 참조 정보를 생성하는 단계; 및
상기 참조 정보를 상기 참조 프레임에 포함된 각 프레임의 정렬 순서대로 나열하여 상기 목록 데이터를 생성하는 단계를 포함하는 데이터 인코딩 방법.
The method of claim 8,
Generating the list data,
Generating reference information for each frame included in the reference frame; And
And generating the list data by arranging the reference information in a sorting order of each frame included in the reference frame.
제8항에 있어서,
데이터 송신부가 상기 압축 동영상 및 상기 목록 데이터를 전송하는 단계를 더 포함하는 데이터 인코딩 방법.
The method of claim 8,
And a data transmitter transmitting the compressed video and the list data.
참조 프레임 생성부가 동기화된 데이터 중에서 적어도 하나의 프레임을 선정하는 단계;
상기 참조 프레임 생성부가 선정된 프레임과 데이터와 대상 동영상 간의 유사도를 산출하여 참조 프레임을 생성하는 단계;
목록 데이터 작성부가 상기 참조 프레임에 포함된 각 프레임에 대한 목록 데이터를 생성하는 단계; 및
인코딩부가 상기 대상 동영상에 포함된 프레임 중 타 프레임간의 중복성을 이용하지 못하는 I-프레임이 상기 참조 프레임을 이용하도록 하여 상기 대상 동영상에 대한 압축 동영상을 생성하는 단계;
데이터 수신부가 압축 동영상과 목록 데이터를 수신하는 단계;
참조 프레임 복원부가 상기 목록 데이터에 대응되는 프레임을 데이터 베이스에 저장된 동기화 된 데이터에서 순차적으로 조회하는 단계;
상기 참조 프레임 복원부가 조회된 프레임을 순차적으로 결합하여 참조 프레임을 생성하는 단계; 및
디코딩부가 상기 참조 프레임을 이용하여 상기 압축 동영상을 디코딩하고 상기 압축 동영상의 원본 영상을 생성하는 단계를 포함하며,
상기 참조 프레임을 생성하는 단계는,
상기 선정된 프레임 중 산출된 유사도가 높은 순서대로 기 설정 개수의 프레임을 추출하는 단계; 및
추출된 프레임을 유사도 순서에 따라 정렬하여 참조 프레임을 생성하는 단계를 포함하는 데이터 인코딩 및 디코딩 방법.
Selecting at least one frame from the synchronized data by the reference frame generator;
Generating a reference frame by calculating a similarity between the selected frame and the selected video with the target video;
Generating, by a list data generator, list data for each frame included in the reference frame; And
Generating, by the encoding unit, a compressed video for the target video by using an I-frame that does not use redundancy between other frames among the frames included in the target video using the reference frame;
A data receiving unit receiving compressed video and list data;
Sequentially retrieving, by the reference frame reconstruction unit, the frames corresponding to the list data from the synchronized data stored in the database;
Generating a reference frame by sequentially combining the frames queried by the reference frame reconstruction unit; And
A decoding unit decoding the compressed video using the reference frame and generating an original video of the compressed video;
Generating the reference frame,
Extracting a predetermined number of frames in order of high similarity calculated among the selected frames; And
And arranging the extracted frames in a similarity order to generate a reference frame.
KR1020170167654A 2017-12-07 2017-12-07 Apparatus and method for encoding and decoding of data KR102072576B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020170167654A KR102072576B1 (en) 2017-12-07 2017-12-07 Apparatus and method for encoding and decoding of data

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020170167654A KR102072576B1 (en) 2017-12-07 2017-12-07 Apparatus and method for encoding and decoding of data

Publications (2)

Publication Number Publication Date
KR20190067577A KR20190067577A (en) 2019-06-17
KR102072576B1 true KR102072576B1 (en) 2020-02-03

Family

ID=67064914

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020170167654A KR102072576B1 (en) 2017-12-07 2017-12-07 Apparatus and method for encoding and decoding of data

Country Status (1)

Country Link
KR (1) KR102072576B1 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102573511B1 (en) * 2020-11-23 2023-08-31 서울대학교산학협력단 Image data processing appratus and method

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20170195678A1 (en) * 2014-06-30 2017-07-06 The University Of North Carolina At Chapel Hill Methods, systems, and computer readable media for performing image compression

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102153539B1 (en) * 2013-09-05 2020-09-08 한국전자통신연구원 Apparatus for processing video and method therefor

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20170195678A1 (en) * 2014-06-30 2017-07-06 The University Of North Carolina At Chapel Hill Methods, systems, and computer readable media for performing image compression

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
Nam, Wooseung, et al., "SyncCoding: A compression technique exploiting references for data synchronization services." Network Protocols (ICNP), (2017.10.13)

Also Published As

Publication number Publication date
KR20190067577A (en) 2019-06-17

Similar Documents

Publication Publication Date Title
CN108632625B (en) Video coding method, video decoding method and related equipment
US10805629B2 (en) Video compression through motion warping using learning-based motion segmentation
US11115663B2 (en) Codebook generation for cloud-based video applications
US9547916B2 (en) Segment-based encoding system including segment-specific metadata
US9064298B2 (en) Segment-based encoding system using residue coding by basis function coefficients
US20060262845A1 (en) Segment-based encoding system using segment hierarchies
CN107657228B (en) Video scene similarity analysis method and system, and video encoding and decoding method and system
Makar et al. Interframe coding of feature descriptors for mobile augmented reality
US20130251033A1 (en) Method of compressing video frame using dual object extraction and object trajectory information in video encoding and decoding process
TW200305146A (en) Editing of encoded A/V sequences
KR102072576B1 (en) Apparatus and method for encoding and decoding of data
US10536726B2 (en) Pixel patch collection for prediction in video coding system
JP2006020330A (en) Process and device for compressing video documents
US7103103B2 (en) Segmenting encoding system encoding video data using segment-by-segment kinetic data including change information in addition to translation information
CN112714336B (en) Video segmentation method and device, electronic equipment and computer readable storage medium
US7269221B2 (en) Encoding system using motion vectors to represent frame-to-frame changes, including motion vector grouping for coding or processing
US7139317B2 (en) Segment-based encoding system using exposed area filling performed by an encoder and a decoder
Adami et al. Embedded indexing in scalable video coding
GB2610397A (en) Encoding and decoding video data
CN110731082B (en) Compression of groups of video frames using reverse ordering
CN104137544B (en) Picture coding device, picture decoding apparatus, method for encoding images and picture decoding method
Gao et al. Standard designs for cross random access point reference in video coding
US11831887B1 (en) Scalable video coding for machine
US11743477B1 (en) Video-stream format for machine analysis using NPU
US20230067994A1 (en) Encoding and decoding video data

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