KR20110021198A - 데이터 부호화 방법 및 장치와 데이터 복호화 방법 및 장치 - Google Patents

데이터 부호화 방법 및 장치와 데이터 복호화 방법 및 장치 Download PDF

Info

Publication number
KR20110021198A
KR20110021198A KR1020090078845A KR20090078845A KR20110021198A KR 20110021198 A KR20110021198 A KR 20110021198A KR 1020090078845 A KR1020090078845 A KR 1020090078845A KR 20090078845 A KR20090078845 A KR 20090078845A KR 20110021198 A KR20110021198 A KR 20110021198A
Authority
KR
South Korea
Prior art keywords
block
frame
compressed
compression ratio
target compression
Prior art date
Application number
KR1020090078845A
Other languages
English (en)
Other versions
KR101602871B1 (ko
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 KR1020090078845A priority Critical patent/KR101602871B1/ko
Priority to US12/823,602 priority patent/US20110051815A1/en
Publication of KR20110021198A publication Critical patent/KR20110021198A/ko
Application granted granted Critical
Publication of KR101602871B1 publication Critical patent/KR101602871B1/ko

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/42Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation
    • H04N19/423Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation characterised by memory arrangements
    • 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/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/115Selection of the code volume for a coding unit prior to coding
    • 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/132Sampling, masking or truncation of coding units, e.g. adaptive resampling, frame skipping, frame interpolation or high-frequency transform coefficient masking
    • 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/146Data rate or code amount at the encoder output
    • 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/176Methods 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 block, e.g. a macroblock
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/46Embedding additional information in the video signal during the compression process

Landscapes

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

Abstract

참조 프레임인 제 1 프레임을 소정 크기의 블록 단위로 압축하고, 압축된 블록이 목표 압축율을 만족하는지를 판단며, 판단 결과에 기초하여 압축된 블록을 선택적으로 저장하는 영상 데이터 부호화 및 복호화 방법이 개시된다.
부호화, 복호화, 영상 데이터, 압축,

Description

데이터 부호화 방법 및 장치와 데이터 복호화 방법 및 장치{Method and apparatus for data encoding, method and apparatus for data decoding}
본 발명은 데이터의 부호화 및 복호화 방법 및 장치에 관한 것으로, 특히 영상 데이터의 부호화 및 복호화 방법 및 장치에 관한 것이다.
고화질 고음질의 AV 데이터에 대한 사용자의 수요가 높아지고 있다. 특히, DTV가 확산됨에 따라 고화질, 대용량의 영상 데이터를 처리하는 것이 주된 과제로 등장하고 있다.
대용량의 영상 데이터는 부호화 과정을 거친 후 전송된다. MPEG-1, MPEG-2, MPEG-4 H.264/MPEG-4 AVC(Advanced Video coding)와 같은 영상 부호화 방식에서는 각각의 영상 프레임을 인터 예측(inter prediction) 또는 인트라 예측(intra prediction)을 이용해 예측 부호화한다.
영상 시퀀스의 영상 프레임들을 I 픽처(Intra-Picture), P 픽처(Predictive-Picture) 및 B 픽처(Bi-directional Predictive-Picture) 중 하나로 분류하고 예측 부호화하여 영상 시퀀스에 대한 비트스트림을 생성한다.
본 발명의 일 실시예가 갖는 하나의 특징은, 영상 데이터를 부호화하는 방법에 있어서, 참조 프레임인 제 1 프레임을 소정 크기의 블록 단위로 압축하는 단계; 상기 압축된 블록이 목표 압축율을 만족하는지를 판단하는 단계; 및 상기 판단 결과에 기초하여, 상기 압축된 블록을 선택적으로 저장하는 단계를 포함하는 것이다.
상기 저장하는 단계는, 상기 압축된 블록이 상기 목표 압축율을 만족하는 압축 블록이면 상기 압축된 블록을 저장하고, 상기 압축된 블록이 상기 목표 압축율을 만족하지 못하는 스킵 블록이면 상기 압축된 블록을 저장하지 않을 수 있다.
상기 저장하는 단계는, 상기 압축된 블록이 상기 목표 압축율을 만족하지 못하면 상기 압축된 블록이 스킵 블록임을 나타내는 스킵 플래그를 생성할 수 있다.
상기 저장된 블록을 이용하여 상기 제 1 프레임 이후에 존재하는 제 2 프레임의 움직임 추정을 수행하는 단계를 더 포함하고, 상기 움직임 추정을 수행하는 단계는, 상기 제 2 프레임이 상기 스킵블록을 참조하지 않도록 제어하는 단계를 포함할 수 있다.
상기 판단하는 단계는, 적어도 하나의 이전 블록의 압축율에 따라 다음에 압축할 블록인 다음 블록의 목표 압축율을 결정하는 단계를 포함할 수 있다.
상기 다음 블록의 목표 압축율을 결정하는 단계는, 상기 다음 블록이 속하는 블록 그룹의 목표 데이터 크기와 상기 블록 그룹에 속하는 저장된 압축 블록의 데이터 크기간의 차이에 기초하여 상기 다음 블록의 목표 압축율을 결정할 수 있다.
상기 블록 그룹은, 상기 다음 블록이 속하는 메크로 블록열일 수 있다.
상기 압축하는 단계는, 상기 제 1 프레임을 메크로 블록 단위로 압축할 수 있다.
상기 압축하는 단계는, 가변 길이 부호화 방법으로 상기 제 1 프레임을 압축하는 단계를 포함할 수 있다.
본 발명의 다른 실시예가 갖는 하나의 특징은, 영상 데이터를 복호화하는 방법에 있어서, 압축되어 저장된 제 1 프레임을 복원하고, 상기 복원된 제 1 프레임을 참조하여 현재 프레임인 제 2 프레임을 복호화하는 단계; 상기 복호화된 제 2 프레임을 소정 크기의 블록 단위로 압축하는 단계; 상기 압축된 블록이 목표 압축율을 만족하는지를 판단하는 단계; 및 상기 판단 결과에 기초하여, 상기 압축된 블록을 선택적으로 저장하는 단계를 포함하는 것이다.
본 발명의 다른 실시예가 갖는 하나의 특징은, 영상 데이터를 부호화하는 장치에 있어서, 참조 프레임인 제 1 프레임을 소정 크기의 블록 단위로 압축하는 압축부; 상기 압축된 블록이 목표 압축율을 만족하는지에 기초하여, 상기 압축된 블록이 선택적으로 저장되도록 제어하는 제어부; 및 상기 제어부의 제어에 따라, 상기 압축된 블록이 선택적으로 저장되는 저장부를 포함하는 것이다.
본 발명의 다른 실시예가 갖는 하나의 특징은, 영상 데이터를 복호화하는 장치에 있어서, 기준 프레임인 제 1 프레임이 압축되어 저장된 저장부; 상기 제 1 프레임의 압축을 복원하고 상기 복원된 제 1 프레임을 참조하여 현재 프레임인 제 2 프레임을 복호화하는 복호화부; 상기 복호화된 제 2 프레임을 소정 크기의 블록 단위로 압축하는 압축부; 및 상기 압축된 블록이 목표 압축율을 만족하는지에 기초하여, 상기 압축된 블록이 상기 저장부에 선택적으로 저장되도록 제어하는 제어부 를 포함하는 것이다.
이하에서는 첨부된 도면을 참고하여 본 발명의 바람직한 실시예를 상세히 설명한다.
도 1은 본 발명의 일 실시예에 따른 데이터 부호화 장치(100)에 관한 블록도를 나타낸다.
본 발명의 일 실시예에 따른 데이터 부호화 장치(100)는 압축부(110), 제어부(120) 및 저장부(130)를 포함한다. 본 발명의 일 실시예에 따른 데이터 부호화 장치(100)는 참조 프레임인 제 1 프레임을 이용하여 제 2 프레임을 부호화한다.
압축부(110)는 제 1 프레임을 소정 크기의 블록 단위로 압축한다. 압축부(110)는 16*16 픽셀 크기인 메크로블록 단위로 제 1 프레임을 압축하거나, 32*32, 8*8, 4*4, 1*16 픽셀 크기의 블록 단위로 제 1 프레임을 압축하는 등 다양한 크기의 블록 단위로 제 1 프레임을 압축할 수 있다.
압축부(110)는 제 1 프레임을 구성하는 하나 이상의 성분을 압축할 수 있다. 일 예로, 제 1 프레임이 YUV형식으로 표현되는 경우 압축부는 제 1 프레임을 구성하는 Y성분, U성분, V성분 중 적어도 하나를 압축할 수 있다. 또한, 제 1 프레임이 RGB 형식으로 표현되는 경우 압축부는 제 1 프레임을 구성하는 R성분, G성분, B성분 중 적어도 하나를 압축할 수 있다.
압축부(110)는 lossless(또는 lossy) 압축 방법을 사용하여 제 1 프레임을 압축한다. lossless 압축 방법의 일 예로는 가변 길이 부호화 방법을 들 수 있다.
압축부(110)는 블록을 압축할 때, 블록 단위로 압축할 수도 있으나 블록을 구성하는 서브 블록 단위로 압축할 수 있다. 일 예로, 후술할 제어부(130)는 16*16 픽셀 크기의 블록 단위로 저장 여부를 결정하고 압축부(110)는 4*4 픽셀 크기의 서브 블록 단위로 수행할 수 있다. 이 경우, 압축된 블록의 데이터 크기는 압축된 서브 블록들의 데이터 크기를 모두 더한 값이 될 수 있다.
제어부(120)는 압축된 블록이 목표 압축율을 만족하는지를 판단하고, 판단 결과에 따라 블록이 선택적으로 저장되도록 후술할 저장부를 제어한다. 구체적으로 제어부(120)는 압축된 블록들 중 목표 압축율을 만족하는 블록은 압축된 상태로 저장되고 목표 압축율을 만족하지 못하는 블록은 저장되지 않도록 저장부(130)를 제어한다. 만일, 압축 부(110)이 서브 블록 단위로 압축을 수행하였다면, 제어부(120)는 압축된 서브 블록들의 데이터 크기를 모두 더한 값이 해당 블록의 목표 데이터 크기보다 작은지 여부에 따라 블록을 저장할 것인지를 판단할 수 있다.
본 명세서에서는 설명의 편의를 위하여 목표 압축율을 만족하는 블록을 압축 블록으로 명명하고, 목표 압축율을 만족하지 못하는 블록을 스킵 블록으로 명명한다.
제어부(120)는 블록들의 목표 압축율을 일률적으로 결정할 수도 있으나 적어도 하나의 이전 블록의 압축율에 기초하여 다음 블록들의 목표 압축율을 결정할 수도 있다.
이하에서는 제어부(120)가 블록들의 목표 압축율을 결정하는 네 가지 예를 설명한다. 그러나, 목표 압축율을 결정하는 방법이 여기에 한정되는 것은 아니다.
설명의 편의를 위하여 제 1 프레임은 256*256픽셀로 구성되고, 16*16픽셀의 크기를 갖는 메크로 블록 단위로 압축되며, 하나의 픽셀은 2바이트로 표현된다고 가정한다. 또한, 제 1 프레임의 전체 목표 압축율은 2:1이라고 가정한다.
따라서, 압축전의 제 1 프레임의 데이터 크기는 256*256*2바이트(131072 바이트)이며, 압축된 제 1 프레임의 목표 데이터 크기는 256*256*2/2 바이트(65536 바이트)이다.
첫 번째 방법에서는, 제어부(120)가 모든 블록들이 동일한 목표 압축율을 갖록 설정한다. 이 경우, 블록들의 목표 압축율은 동일하게 2:1로 결정되며, 목표 데이터 크기는 16*16*2/2 바이트(256 바이트)로 결정된다.
따라서, 제어부(120)는 압축된 블록들의 데이터 크기가 256 바이트 이내인지를 판단하고, 256 바이트를 초과하는 블록들은 저장되지 않도록 저장부(130)를 제어한다. 첫 번째 방법에 대한 자세한 설명은 도 3a에서 후술한다.
첫 번째 방법의 경우 이전 블록들의 압축율을 고려하지 않기 때문에 제어부(120)를 구현하는 것이 비교적 간단하지만, 이전 블록들의 압축율을 고려하여 다음 블록의 목표 압축율을 결정하는 방법에 비하여 다소 비효율적이다.
두 번째 방법은, 제어부(120)가 다음에 압축할 블록인 다음 블록이 속하는 블록 그룹의 목표 데이터 크기와, 블록 그룹내의 저장된 압축 블록들의 데이터 크기간의 차이에 기초하여 다음 블록의 목표 압축율을 결정한다.
블록 그룹이 메크로 블록열 단위인 경우, 제 1 프레임은 16개의 블록 그룹으로 구성된다. 따라서, 하나의 블록 그룹의 목표 데이터 크기는 256*16*2/2바이 트(4096 바이트)가 된다. 본 명세서에서는 블록 그룹이 메크로 블록열 단위인 것으로 가정하였으나, 여기에 한정되는 것은 아니며 메크로 블록행 단위이거나 후술할 부호화부에서 움직임 추정을 위하여 데이터를 프리패치(prefetch)하는 단위일 수 있다.
두 번째 방법에 관한 자세한 설명은 도 3b에서 후술한다.
세 번째 방법은, 제어부(120)가 블록 그룹의 목표 데이터 크기를 블록 그룹내의 블록들에 동일하게 할당하고, 다음 블록에 할당된 데이터 크기와 이전 블록에서 사용되지 않고 남은 데이터 크기를 더한 값을 다음 블록의 목표 데이터 크기로 결정한다. 즉, 블록내의 첫 번째 블록부터 다음 블록까지에 할당된 목표 데이터 크기와 블록 그룹내의 저장된 압축 블록들의 데이터 크기간의 차이에 기초하여 다음 블록의 목표 데이터 크기를 결정한다.
세 번째 방법에 관한 자세한 설명은 도 3c에서 후술한다.
네 번째 방법은, 다음 블록의 중요도에 따라 제어부(120)가 다음 블록의 목표 압축율을 결정한다. 일 예로, 압축부(110)는 블록 그룹에 속하는 블록들을 압축하여 버퍼와 같은 임시 저장 공간에 저장한다. 제어부(120)는 제 1 프레임내의 블록들 중 제 2 프레임에서 참조될 확률이 높은 블록이 높은 중요도를 갖도록 결정할 수 있다. 제 1 프레임내의 어떤 블록이 제 2 프레임에서 참조될 것인지는 제 2 프레임을 부호화하기 전에는 알 수 없다. 그러나, 제 1 프레임의 이전 프레임, 제 1 프레임 및 제 2 프레임이 연속하여 존재하는 경우 참조되는 블록의 위치가 유사한 것이 일반적이다. 따라서, 제 1 프레임이 이전 프레임내의 어떤 블록을 많이 참조 했는지를 분석하여, 제 1 프레임내의 블록들의 중요도를 결정할 수 있다.
제어부(120)는 블록 그룹내의 블록들 중 중요도가 높은 블록 순으로 저장되도록 블록의 목표 압축율을 결정한다.
네 번째 방법에 관한 자세한 설명은 도 3d에서 후술한다.
제어부(120)는 목표 압축율을 만족하지 못하여 저장되지 못한 블록을 나타내기 위한 스킵 플래그를 생성한다. 도 2에서 후술할 부호화부에서는 제 2 프레임의 움직임 추정을 수행함에 있어서 스킵 플래그가 존재하는지 여부를 판단하여 제 1 프레임내의 스킵 블록이 참조되지 않도록 할 수 있다.
종래의 부호화/복호화 장치에서는 참조 프레임을 압축하지 않고 저장하였다. 하나의 영상 프레임을 부호화/복호화하기 위해서는 여러 번에 걸쳐서 메모리에 접근하여야 하며, 종래 기술에 의할 경우 한번에 전송되는 데이터의 크기가 크기 때문에 소모되는 전력량이 증가하며, 버스의 대역폭 또한 증가하여야 한다. 특히, 제한된 대역폭을 갖는 버스를 이용하는 경우 Full HD 영상과 같은 고화질, 고용량의 프레임을 부호화/복호화하는 것이 불가능하였다.
그러나, 본 발명의 일 실시예에서는 참조 프레임을 압축하여 저장하여 메모리로로 전송되거나 메모리로부터 독출되는 데이터의 크기를 줄일 수 있다. 이로 인하여, 버스에서 소모되는 전력이 감소하며, 적은 대역폭을 갖는 버스를 이용하여도 고용량,고화질의 영상 데이터를 부호화/복호화 할 수 있다.
또한, 본 발명의 일 실시예에서는 압축된 블록을 선택적으로 저장함으로써 전체 프레임이 목표 압축율을 만족할 수 있도록 한다. 또한, 저장된 프레임을 참조 하는 다음 프레임에 대하여 움직임 추정을 수행하는 경우 참조 프레임내의 저장되지 않은 블록이 참조되지 않도록 함으로써 오류의 발생을 차단한다. 따라서, 영상 데이터를 복호화하는 장치에서는 상술한 압축 복원부를 채용하지 않더라도 오류 없이 프레임을 복호화할 수 있다.
또한, 본 발명의 일 실시예에서는 이전 블록의 압축율에 기초하여 다음 블록의 목표 압축율을 결정함으로써 특정 영역에서의 압축율이 높은 경우 다른 영역에서 압축율이 목표 압축율에 도달하지 못하더라도 해당 영역을 스킵할 필요가 없다. 따라서, lossless 방식으로 압축을 하더라도 저장되지 않는 블록의 개수가 현저하게 줄어든다.
도 2는 본 발명의 다른 실시예에 따른 데이터 부호화 장치(200)의 블록도를 나타낸다.
본 발명의 다른 실시예에 따른 데이터 부호화 장치(200)는 압축부(110), 제어부(120), 저장부(130), 압축 복원부(210), 부호화부(220) 및 복호화부(230)를 포함할 수 있다.
도 2에서 압축부(110), 제어부(120) 및 저장부(130)는 도 1에서와 동일한 기능을 수행하므로 이하 설명을 생략한다.
압축 복원부(210)는 압축된 제 1 프레임(201)을 복원한다.
부호화부(220)는 제 1 프레임(201)에 기초하여 제 2 프레임(202)을 부호화한다.
복호화부(230)는 부호화된 제 2 프레임을 복호화한다. 데이터 부호화 장 치(100)에 복호화부(230)가 포함되는 이유는 부호화된 후 복호화된 제 1 프레임(201)을 참조하여 제 2 프레임(202)을 부호화하기 위함이다.
이하에서는 시간 순서에 따라 데이터 부호화 장치(100)에서의 동작을 설명한다.
설명의 편의를 위하여 제 1 프레임이 영상내의 첫 번째 프레임으로써 I 프레임으로 가정한다.
부호화부(220)는 제 1 프레임을 부호화한다. 부호화된 제 1 프레임은 통신 선로 등을 통하여 복호화 장치에 전달되며, 동시에 복호화부(230)에 전달된다.
복호화부(230)는 부호화된 제 1 프레임을 복호화한다.
압축부(110)는 부호화된 후 복호화된 제 1 프레임을 소정 크기의 블록 단위로 압축한다. 즉, 제 1 프레임을 소정 크기의 블록 단위로 분할하고 각각의 블록에 해당하는 데이터를 압축한다.
제어부(120)는 압축된 블록이 목표 압축율을 만족하는지를 판단하고, 판단 결과에 따라 압축된 블록이 선택적으로 저장되도록 저장부(130)를 제어한다. 구체적으로, 목표 압축율을 만족하는 압축 블록은 압축된 상태로 저장부에 저장되도록 저장부(130)를 제어하고, 목표 압축율을 만족하지 못하는 스킵 블록은 저장되지 않도록 저장부(130)를 제어한다. 이 때, 제어부(120)는 스킵 블록을 표시하는 스킵 플래그를 각각의 스킵 블록에 대응하여 생성할 수 있다.
저장부(130)에는 제어부(120)의 제어에 따라 압축된 블록이 선택적으로 저장된다.
다음으로, 부호화부(220)는 영상내의 두 번째 프레임인 제 2 프레임(202)을 부호화한다. 제 2 프레임(202)은 제 1 프레임(201)을 참조하여 움직임 추정을 수행한다고 가정한다.
압축 복원부(210)는 저장부(130)에 저장된 압축된 제 1 프레임(201)을 독출하여 압축을 복원한다.
부호화부(220)는 압축이 복원된 제 1 프레임(201)을 이용하여 제 2 프레임(202)을 부호화한다. 부호화부(220)는 제 2 프레임(202)에 대하여 움직임 추정을 수행할 수 있다. 부호화부(220)는 제 2 프레임(202)에 대한 움직임 추정을 수행함에 있어서, 제 1 프레임내의 탐색 영역에 해당하는 데이터를 저장부(130)로부터 미리 프리패치 할 수 있다. 프리패치 작업은 메모리에 연속적으로 접근하는 것으로써 임의 접근(random access)의 필요가 없다. 부호화부(220)가 프리패치 작업을 수행하는 경우, 16*16, 8*8 단위로 고정 부호화(fixed coding)할 필요가 없다.
부호화부(220)는 제 2 프레임(202)이 움직임 추정을 수행함에 있어서 제 1 프레임(201)내의 스킵 블록을 참조하지 않도록 한다. 일 예로, 부호화부(220)는 제 1 프레임(201)내에서 스킵 플래그가 존재하는 블록은 제 2 프레임(202)이 참조하지 않도록 할 수 있다.
부호화가 완료된 제 2 프레임(202)은 통신 선로를 통하여 복호화 장치에 전달되며, 동시에 복호화부(230)에 전달된다. 복호화부(230)는 제 2 프레임(202)을 복호화한다. 이후에는 제 1 프레임(201)과 동일하게 제 2 프레임(202)은 압축되어 저장부(130)에 저장된다.
도 3a 내지 도 3c에서는 제어부(120)의 동작에 관한 일 실시예를 설명한다.
도 3a 내지 도 3c에서는 설명의 편의를 위하여 다음을 가정한다.
제 1 프레임(300)이 256*256 픽셀로 구성되며, 하나의 픽셀은 2바이트로 표현된다. 또한, 제 1 프레임(300)의 목표 압축율은 2:1이며, 제 1 프레임(300)은 16*16 픽셀 크기의 메크로 블록 단위로 압축된다. 마지막으로, 제 1 프레임(300)은 메크로 블록열 단위의 블록 그룹으로 분할된다.
도 3a는 본 발명의 일 실시예에 따른 제어부(120)의 동작 방법을 나타낸다.
도 3a에서는 이전 블록의 압축율과 무관하게 블록의 목표 압축율이 2:1로 고정된다. 도 3a에서는 다음의 [수학식 1]에 따라 블록의 목표 데이터 크기를 계산할 수 있다.
[수학식 1]
n번째 블록의 목표 데이터 크기= 제 1 프레임의 목표 데이터 크기/블록의 개수
[수학식 1]에 의하면 모든 블록의 목표 데이터 크기는 256 바이트가 된다.
제어부(120)는 압축된 블록이 목표 압축율을 만족하는지를 판단다. 도 3a를 참고하면, 블록(301, 303)은 목표 압축율을 만족하며 블록(302, 304)은 목표 압축율을 만족하지 못한다. 따라서, 제어부(120)는 블록(301, 303)는 압축된 상태로 저장부(130)에 저장되도록 제어하며, 블록(302, 304)은 저장되지 않도록 저장부(130)를 제어한다.
도 3b는 본 발명의 다른 실시예에 따른 제어부(120)의 동작 방법을 나타낸 다.
도 3b에서는 다음에 압축하고자 하는 블록인 다음 블록의 목표 압축율은 이전에 압축된 블록의 실제 압축율에 기초하여 결정된다. 특히, 다음 블록이 속하는 블록 그룹의 목표 데이터 크기와 블록 그룹내의 저장된 압축 블록들의 데이터 크기간의 차이에 기초하여 다음 블록의 목표 압축율을 결정한다.
도 3b에서는 다음의 [수학식 2]에 따라 블록의 목표 데이터양을 계산할 수 있다.
[수학식 2]
n번째 블록의 목표 데이터 크기= 블록 그룹의 목표 데이터 크기 - 블록 그룹내의 저장된 압축 블록들의 데이터 크기
[수학식 2]에 의하면, 첫 번째 블록(311)의 목표 데이터 크기는 256*16*2/2(즉, 4096 바이트)이다. 도 3b를 참고하면, 첫 번째 블록(311)은 269바이트로 압축되었다. 이는 첫 번째 블록(311)이 목표 압축율을 만족하였음을 의미한다. 첫 번째 블록(311)이 목표 압축율을 만족하였으므로 제어부(120)는 첫 번째 블록(311)이 압축되어 저장되도록 저장부(130)를 제어한다.
[수학식 2]에 의하면, 두 번째 블록(미도시)의 목표 데이터양은 4096-269바이트(즉, 3827 바이트)가 될 것이다.
제 1 프레임(300)내의 첫 번째 블록(311)부터 n-1번째 블록(312)까지를 압축한 데이터의 크기가 4000바이트라고 가정하자.
[수학식 2]에 의하면, n 번째 블록(313)의 목표 데이터 크기는 4096-4000바 이트(즉, 96바이트)가 된다. n 번째 블록(313)은 256 바이트의 크기로 압축되었다. 압축된 n 번째 블록(313)은 목표 압축율을 만족하지 못하므로, 제어부(120)는 n 번째 블록(313)이 저장되지 않도록 저장부(130)를 제어한다.
n 번째 블록(313)이 저장되지 않았으므로, n+1번째 블록(314)의 목표 데이터크기는 n 번째 블록(313)과 동일하게 96바이트가 될 것이다. n+1 번째 블록(314)은 85 바이트의 크기로 압축되었다. 압축된 n+1 번째 블록(314)이 목표 압축율을 만족하므로, 제어부(120)는 n+1 번째 블록(314)이 저장되도록 저장부(130)를 제어한다.
도 3c는 본 발명의 또 다른 실시예에 따른 제어부(120)의 동작 방법을 나타낸다.
도 3c에서는 블록 그룹(320)의 목표 데이터 크기를 각각의 블록들에 동일하게 할당하고, 블록내의 첫 번째 블록(321)부터 다음 블록까지에 할당된 목표 데이터크기와 블록 그룹내의 저장된 압축 블록의 데이터 크기간의 차이에 기초하여 다음 블록의 목표 데이터 크기를 결정한다.
[수학식 3]
n 번째 블록의 목표 데이터 크기=(블록 그룹의 목표 데이터 크기/블록 개수)*n - 저장된 압축 블록의 데이터 크기
[수학식 3]에 의하면, 첫 번째 블록(321)의 목표 데이터 크기는 4096/16 바이트(즉, 256 바이트)이다. 첫 번째 블록(321)은 222바이트 크기로 압축되었다. 첫 번째 블록(321)이 목표 압축율을 만족하므로, 제어부(120)는 첫 번째 블록(321)이 압축된 상태로 저장되도록 저장부(130)를 제어한다.
[수학식 3]에 의하면, 두 번째 블록(322)의 목표 데이터 크기는 (4096/16*2-222)바이트(즉, 290 바이트)이다. 두 번째 블록(322)은 269 바이트의 크기로 압축되었다. 두 번째 블록(322)이 목표 압축율을 만족하므로, 제어부(120)는 두 번째 블록(322)이 압축된 상태로 저장되도록 저장부(130)를 제어한다.
[수학식 3]에 의하면, 세 번째 블록(323)의 목표 데이터양은 (4096/16*3-491) 바이트(즉, 277 바이트)이다. 세 번째 블록(323)은 284 바이트의 크기로 압축되었다. 세 번째 블록(323)이 목표 압축율을 만족하지 못하므로, 제어부(120)는 세 번째 블록(323)이 저장되지 않도록 저장부(130)를 제어한다.
[수학식 3]에 의하면, 네 번째 블록(324)의 목표 데이터 크기가 (4096/16*4-491)바이트(즉, 533 바이트)이다. 세 번째 블록(323)이 저장되지 않은 만큼 네 번째 블록(324)의 목표 데이터 크기가 증가함을 알 수 있다. 네 번째 블록(324)은 465 바이트로 압축되었다. 네 번째 블록(324)이 목표 압축율을 만족하므로 제어부(120)는 네 번째 블록(324)이 압축된 상태로 저장되도록 저장부(130)를 제어한다.
도 3d는 본 발명의 또 다른 실시예에 따른 제어부(120)의 동작 방법을 나타낸다.
도 3d에서는 다음의 [수학식 4]에 따라 블록의 목표 데이터 크기를 계산할 수 있다.
[수학식 4]
블록 그룹내의 중요도 순위가 n번째인 블록의 목표 데이터 크기=블록 그룹의 목표 데이터 크기 - 블록 그룹내의 중요도 순위가 1번째인 블록부터 중요도 순위가 n-1번째인 블록까지를 압축한 데이터 크기
이하에서는 설명의 편의를 위하여 블록 그룹의 목표 데이터 크기 - 블록 그룹내의 중요도가 1번째인 블록부터 중요도가 n-1번째인 블록까지를 압축한 데이터 크기를 블록 그룹의 잔여 데이터 크기로 명명한다.
도 3d에서는 블록 그룹에 포함된 블록들의 중요도를 비교하여, 중요도가 높은 블록이 우선적으로 저장될 수 있도록 블록의 목표 압축율을 결정한다. 도 3d에서는 블록 그룹에 포함된 블록들의 중요도를 비교하지만, 실시 예에 따라서는 둘 이상의 블록 그룹에 포함된 블록들의 중요도를 비교하거나 프레임에 포함된 모든 블록들의 중요도를 비교할 수도 있다. 또한, 중요한 블록이 많이 포함된 블록 그룹의 목표 데이터 크기를 더 높게 설정할 수도 있다.
블록들의 중요도를 결정하는 방법은 실시예에 따라서 다양될 수 있다. 일 예로, 다음 프레임에서 자주 참조될 블록의 중요도가 더 높도록 결정될 수 있다.
도 3d에서는, 세 번째 블록(333)이 중요도 순위가 가장 높다. 따라서, 세 번째 블록(333)의 목표 데이터 크기는 4096바이트가 된다. 도 3d를 참고하면, 세 번째 블록(333)은 284바이트로 압축되었다. 세번째 블록(333)이 목표 압축율을 만족하였으므로, 제어부(120)는 세번째 블록(333)이 압축되어 저장되도록 저장부(130)를 제어한다.
도 3d에서는 두 번째 블록(332)의 중요도 순위가 두번째 이다. [수학식 4]에 의하면, 두 번째 블록(332)의 목표 데이터 크기는 4096-284(즉, 3812바이트)이다. 두번째 블록(332)은 269바이트로 압축되었다. 압축된 두번째 블록(332)는 목표 압축율을 만족하므로 제어부(120)는 두번째 블록(332)이 저장되도록 저장부(130)를 제어한다.
중요도가 높은 블록 순서데로 상위 14개의 블록이 모두 압축되어 저장되고, 첫번째 블록(331)과 네번째 블록(334)만이 남았으며, 블록 그룹(310)의 잔여 데이터 크기는 230바이트라고 가정한다.
네 번째 블록(334)는 중요도가 15번째인 블록이다. 수학식 4에 의하면 네 번째 블록(334)의 목표 데이터 크기는 230 바이트이다. 네번째 블록(334)은 456바이트로 압축되었다. 압축된 네번째 블록(334)는 목표 압축율을 만족하지 못하므로 제어부(120)는 네번째 블록(334)이 저장되지 않도록 저장부(130)를 제어한다.
첫 번째 블록(331)는 중요도가 16번째인 블록이다. 수학식 4에 의하면 첫 번째 블록(331)의 목표 데이터 크기는 230 바이트이다. 첫번째 블록(331)은 222바이트로 압축되었다. 압축된 첫번째 블록(331)는 목표 압축율을 만족하므로 제어부(120)는 첫번째 블록(331)이 저장되도록 저장부(130)를 제어한다.
도 4는 본 발명의 일 실시예에 따른 부호화부(220)의 동작에 관한 일 예를 설명한다.
제 1 프레임(401)은 저장부(130)에 압축되어 저장된 프레임으로써 제 2 프레임(402)이 움직임 추정을 수행하는데 참조되는 참조 프레임이다. 제 1 프레임(401)내의 압축 블록(410)은 목표 압축율을 만족하여 압축하여 저장되었으며, 스킵 블록(420)은 목표 압축율을 만족하지 못하여 저장되지 않았다. 즉, 부호화부(220)는 스킵 블록(420)에 해당하는 데이터는 획득할 수 없다.
부호화부(220)는 제 2 프레임(430)내의 현재 블록(430)에 대하여 움직임 추정을 수행한다. 현재 블록(430)은 제 1 프레임(401)내의 탐색 영역에서 현재 블록(430)과 가장 유사한 블록을 검색한다. 현재 블록(430)과 가장 유사한 블록이 압축 블록(410)이면, 부호화부(220)는 압축 블록(410)의 좌표를 나타내는 움직임 벡터를 생성한다. 그러나, 현재 블록(430)과 가장 유사한 블록이 스킵 블록(420)이면, 부호화부(220)는 현재 블록(430)과 두 번째로 유사한 블록을 검색한다. 이러한 과정을 통하여 부호화부(220)는 압축 블록들 중에서 현재 블록(430)과 가장 유사한 블록을 검색하고, 검색된 블록의 좌표를 나타내는 움직임 벡터를 생성한다.
부호화부(220)는 해당 블록이 스킵 블록인지 압축 블록인지를 판단하기 위하여, 스킵 플래그를 확인할 수 있다.
도 5는 본 발명의 일 실시예에 따른 데이터 복호화 장치(500)의 블록도를 나타낸다. 기준 프레임인 제 1 프레임(501)은 압축된 상태로 후술할 저장부(540)에 저장된 상태이며, 다음에 복호화할 제 2 프레임(502)은 제 1 프레임(501)을 참조하여 복호화된다.
복호화부(510)는 압축된 제 1 프레임(501)을 복원하고, 복원된 제 1 프레임(501)을 이용하여 제 2 프레임(502)을 복호화한다. 복호화부(510)는 압축 복원부(미도시)를 포함할 수 있다.
압축부(520)는 복호화된 제 2 프레임을 소정 크기의 블록 단위로 압축한다. 일 예로, 제 2 프레임을 16*16 픽셀 단위인 메크로 블록 단위로 압축할 수 있다. 압축부(520)에서 사용하는 압축 방법에는 큰 제한이 없으며 하나 이상의 압축 방법이 동시에 사용될 수도 있다. 압축부(520)에서 사용할 수 있는 압축 방법의 일 예는 가변 길이 부호화를 들 수 있다.
제어부(530)는 압축된 블록들 각각이 목표 압축율을 만족하는지를 판단하고, 판단 결과에 기초하여 압축된 블록들이 선택적으로 저장되도록 저장부(540)를 제어한다. 즉, 제어부(530)는 압축된 블록들 중 목표 압축율을 만족하는 압축 블록만이 저장되도록 저장부(540)를 제어한다.
목표 압축율을 결정하는 방법은 실시예에 따라서 다양할 수 있다.
이전 블록들의 압축율과 무관하게 블록들의 목표 압축율을 동일하게 결정할 수 있다. 그러나, 이전 블록들의 압축율을 고려하여 다음 블록의 압축율을 결정할 수도 있다.
후자의 일 예로 다음 블록이 속하는 블록 그룹의 목표 데이터 크기와 블록 그룹내의 이전 블록들을 압축하여 저장하는데 사용된 데이터의 크기 간의 차이에 기초하여 다음 블록의 목표 압축율을 결정할 수 있다. 또는, 블록 그룹의 목표 데이터양을 각각의 블록들에 분할하고, 블록 그룹내의 첫 번째 블록부터 다음 블록까지에 할당된 목표 데이터 크기와 블록 그룹에 속하는 저장된 압축 블록들의 데이터 크기간의 차이에 기초하여 다음 블록의 목표 압축율을 결정할 수도 있다.
저장부(540)에는 제어부(530)의 제어에 따라 압축된 블록이 저장된다.
도 6은 본 발명의 일 실시예에 따른 데이터 부호화 방법에 관한 흐름도를 나타낸다.
단계 s610에서는, 참조 프레임은 제 1 프레임을 소정 크기의 블록 단위로 압축한다. 제 1 프레임 이후에 부호화될 제 2 프레임은 제 1 프레임을 참조한다.
단계 s620에서는, 압축된 블록들 각각이 목표 압축율을 만족하는지를 판단한다.
단계 s630에서는, 판단 결과에 기초하여, 압축된 블록을 선택적으로 저장한다. 구체적으로, 압축된 블록이 목표 압축율을 만족하면 단계 s632를 수행하여 해당 블록을 저장하고, 압축된 블록이 목표 압축율을 만족하지 못하면 단계 s634를 수행하여 해당 블록을 저장하지 않고 스킵한다.
도 7은 본 발명의 일 실시예에 따른 데이터 복호화 방법에 관한 흐름도를 나타낸다. 다음에 복호화될 제 2 프레임이 참조할 제 1 프레임은 이전 시점에 복호화되어 압축된 상태로 저장되어 있다.
단계 s710에서는, 압축된 제 1 프레임을 복원하고 복원된 제 1 프레임을 이용하여 제 2 프레임을 복호화한다.
단계 s720에서는, 복호화된 제 2 프레임을 소정 크기의 블록 단위로 압축한다.
단계 s730에서는, 압축된 블록이 목표 압축율을 만족하는지를 판단한다.
단계 s740에서는, 판단 결과에 기초하여, 압축된 블록을 선택적으로 저장한다. 구체적으로, 압축된 블록이 목표 압축율을 만족하면 단계 s732를 수행하여 해당 블록을 저장하고, 압축된 블록이 목표 압축율을 만족하지 못하면 단계 s734를 수행하여 해당 블록을 저장하지 않고 스킵한다.
한편, 상술한 본 발명의 실시예들은 컴퓨터에서 실행될 수 있는 프로그램으로 작성가능하고, 컴퓨터로 읽을 수 있는 기록매체를 이용하여 상기 프로그램을 동작시키는 범용 디지털 컴퓨터에서 구현될 수 있다.
상기 컴퓨터로 읽을 수 있는 기록매체는 마그네틱 저장매체(예를 들면, 롬, 플로피 디스크, 하드디스크 등), 광학적 판독 매체(예를 들면, 시디롬, 디브이디 등) 및 캐리어 웨이브(예를 들면, 인터넷을 통한 전송)와 같은 저장매체를 포함한다.
이제까지 본 발명에 대하여 그 바람직한 실시예들을중심으로 살펴보았다. 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자는 본 발명이 본 발명의 본질적인 특성에서 벗어나지 않는 범위에서 변형된 형태로 구현될 수 있음을 이해할 수 있을 것이다. 그러므로 개시된 실시예들은 한정적인 관점이 아니라 설명적인 관점에서 고려되어야 한다. 본 발명의 범위는 전술한 설명이 아니라 특허청구범위에 나타나 있으며, 그와 동등한 범위 내에 있는 모든 차이점은 본 발명에 포함된 것으로 해석되어야 할 것이다.
도 1은 본 발명의 일 실시예에 따른 데이터 부호화 장치(100)에 관한 블록도를 나타낸다.
도 2는 본 발명의 다른 실시예에 따른 데이터 부호화 장치(200)의 블록도를 나타낸다.
도 3a 내지 도 3c에서는 제어부(120)의 동작에 관한 일 실시예를 설명한다.
도 4는 본 발명의 일 실시예에 따른 부호화부(220)의 동작에 관한 일 예를 설명한다.
도 5는 본 발명의 일 실시예에 따른 데이터 복호화 장치(500)의 블록도를 나타낸다.
도 6은 본 발명의 일 실시예에 따른 데이터 부호화 방법에 관한 흐름도를 나타낸다.
도 7은 본 발명의 일 실시예에 따른 데이터 복호화 방법에 관한 흐름도를 나타낸다.

Claims (25)

  1. 영상 데이터를 부호화하는 방법에 있어서,
    참조 프레임인 제 1 프레임을 구성하는 블록을 압축하는 단계;
    상기 압축된 블록이 목표 압축율을 만족하는지를 판단하는 단계; 및
    상기 판단 결과에 기초하여, 상기 압축된 블록을 선택적으로 저장하는 단계를 포함하는 것을 특징으로 하는 데이터 부호화 방법.
  2. 제 1항에 있어서, 상기 저장하는 단계는,
    상기 압축된 블록이 상기 목표 압축율을 만족하는 압축 블록이면 상기 압축된 블록을 저장하고, 상기 압축된 블록이 상기 목표 압축율을 만족하지 못하는 스킵 블록이면 상기 압축된 블록을 저장하지 않는 것을 특징으로 하는 데이터 부호화 방법.
  3. 제 2항에 있어서, 상기 저장하는 단계는,
    상기 압축된 블록이 상기 목표 압축율을 만족하지 못하면, 상기 압축된 블록이 스킵 블록임을 나타내는 스킵 플래그를 생성하는 단계를 포함하는 것을 특징으로 하는 데이터 부호화 방법.
  4. 제 2항에 있어서,
    상기 저장된 블록을 이용하여 상기 제 1 프레임 이후에 존재하는 제 2 프레임의 움직임 추정을 수행하는 단계를 더 포함하고,
    상기 움직임 추정을 수행하는 단계는, 상기 제 2 프레임이 상기 스킵블록을 참조하지 않도록 제어하는 단계를 포함하는 것을 특징으로 하는 데이터 부호화 방법.
  5. 제 2항에 있어서, 상기 판단하는 단계는,
    적어도 하나의 이전 블록의 압축율에 따라 다음에 압축할 블록인 다음 블록의 목표 압축율을 결정하는 단계를 포함하는 것을 특징으로 하는 데이터 부호화 방법.
  6. 제 2항에 있어서, 상기 판단하는 단계는,
    다음에 압축할 블록인 다음 블록의 중요도에 기초하여 상기 다음 블록의 목표 압축율을 결정하는 단계를 포함하는 것을 특징으로 하는 데이터 부호화 방법.
  7. 제 5항에 있어서, 상기 다음 블록의 목표 압축율을 결정하는 단계는,
    상기 다음 블록이 속하는 블록 그룹의 목표 데이터 크기와 상기 블록 그룹내의 저장된 압축 블록의 데이터 크기간의 차이에 기초하여 상기 다음 블록의 목표 압축율을 결정하는 것을 특징으로 하는 데이터 부호화 방법.
  8. 제 6항에 있어서, 상기 블록 그룹은,
    상기 다음 블록이 속하는 메크로 블록열인 것을 특징으로 하는 부호화 방법.
  9. 제 1항에 있어서, 상기 압축하는 단계는,
    상기 블록을 서브 블록 단위로 압축하는 단계를 포함하는 것을 특징으로 하는 부호화 방법.
  10. 제 1항에 있어서, 상기 압축하는 단계는,
    상기 제 1 프레임을 메크로 블록 단위로 압축하는 것을 특징으로 하는 데이터 부호화 방법.
  11. 제 1항에 있어서, 상기 압축하는 단계는,
    가변 길이 부호화 방법으로 상기 제 1 프레임을 압축하는 단계를 포함하는 것을 특징으로 하는 데이터 부호화 방법.
  12. 영상 데이터를 복호화하는 방법에 있어서,
    압축되어 저장된 제 1 프레임을 복원하고, 상기 복원된 제 1 프레임을 참조하여 현재 프레임인 제 2 프레임을 복호화하는 단계;
    상기 복호화된 제 2 프레임을 구성하는 블록을 압축하는 단계;
    상기 압축된 블록이 목표 압축율을 만족하는지를 판단하는 단계; 및
    상기 판단 결과에 기초하여, 상기 압축된 블록을 선택적으로 저장하는 단계를 포함하는 것을 특징으로 하는 데이터 복호화 방법.
  13. 제 12항에 있어서, 상기 저장하는 단계는,
    상기 압축된 블록이 상기 목표 압축율을 만족하는 압축 블록이면 상기 압축된 블록을 저장하고, 상기 압축된 블록이 상기 목표 압축율을 만족하지 못하는 스킵 블록이면 상기 압축된 블록을 저장하지 않는 것을 특징으로 하는 데이터 복호화 방법.
  14. 제 13항에 있어서, 상기 저장하는 단계는,
    상기 압축된 블록이 상기 목표 압축율을 만족하지 못하면, 상기 압축된 블록이 스킵 블록임을 나타내는 스킵 플래그를 생성하는 단계를 포함하는 것을 특징으로 하는 데이터 복호화 방법.
  15. 제 12항에 있어서, 상기 판단하는 단계는,
    적어도 하나의 이전 블록의 압축율에 따라 다음에 압축할 블록인 다음 블록의 목표 압축율을 결정하는 단계를 포함하는 것을 특징으로 하는 데이터 복호화 방법.
  16. 제 12항에 있어서, 상기 판단하는 단계는,
    다음에 압축할 블록인 다음 블록의 중요도에 기초하여 상기 다음 블록의 목표 압축율을 결정하는 단계를 포함하는 것을 특징으로 하는 데이터 부호화 방법.
  17. 제 15항에 있어서, 상기 다음 블록의 목표 압축율을 결정하는 단계는,
    상기 다음 블록이 속하는 블록 그룹의 목표 데이터 크기와 상기 블록 그룹내의 저장된 압축 블록의 데이터 크기간의 차이에 기초하여 상기 다음 블록의 목표 압축율을 결정하는 것을 특징으로 하는 데이터 복호화 방법.
  18. 제 17항에 있어서, 상기 블록 그룹은,
    상기 다음 블록이 속하는 메크로 블록열인 것을 특징으로 하는 데이터 복호화 방법.
  19. 제 12항에 있어서, 상기 압축하는 단계는,
    상기 블록을 서브 블록 단위로 압축하는 단계를 포함하는 것을 특징으로 하는 부호화 방법.
  20. 제 12항에 있어서, 상기 압축하는 단계는,
    상기 제 1 프레임을 메크로 블록 단위로 압축하는 것을 특징으로 하는 데이터 복호화 방법.
  21. 제 12항에 있어서, 상기 압축하는 단계는,
    가변 길이 부호화 방법으로 상기 제 1 프레임을 압축하는 단계를 포함하는 것을 특징으로 하는 데이터 복호화 방법.
  22. 영상 데이터를 부호화하는 장치에 있어서,
    참조 프레임인 제 1 프레임을 구성하는 블록을 압축하는 압축부;
    상기 압축된 블록이 목표 압축율을 만족하는지에 기초하여, 상기 압축된 블록이 선택적으로 저장되도록 제어하는 제어부; 및
    상기 제어부의 제어에 따라, 상기 압축된 블록이 선택적으로 저장되는 저장부를 포함하는 것을 특징으로 하는 데이터 부호화 장치.
  23. 데이터를 복호화하는 장치에 있어서,
    기준 프레임인 제 1 프레임이 압축되어 저장된 저장부;
    상기 제 1 프레임의 압축을 복원하고 상기 복원된 제 1 프레임을 참조하여 현재 프레임인 제 2 프레임을 복호화하는 복호화부;
    상기 복호화된 제 2 프레임을 구성하는 블록을 압축하는 압축부; 및
    상기 압축된 블록이 목표 압축율을 만족하는지에 기초하여, 상기 압축된 블록이 상기 저장부에 선택적으로 저장되도록 제어하는 제어부를 포함하는 것을 특징으로 하는 데이터 복호화장치.
  24. 제 1항 내지 제 11항 중 어느 한 항의 방법을 구현하기 위한 프로그램이 기록된 컴퓨터로 읽을 수 있는 기록 매체.
  25. 제 12항 내지 제 19항 중 어느 한 항의 방법을 구현하기 위한 프로그램이 기록된 컴퓨터로 읽을 수 있는 기록 매체.
KR1020090078845A 2009-08-25 2009-08-25 데이터 부호화 방법 및 장치와 데이터 복호화 방법 및 장치 KR101602871B1 (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020090078845A KR101602871B1 (ko) 2009-08-25 2009-08-25 데이터 부호화 방법 및 장치와 데이터 복호화 방법 및 장치
US12/823,602 US20110051815A1 (en) 2009-08-25 2010-06-25 Method and apparatus for encoding data and method and apparatus for decoding data

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020090078845A KR101602871B1 (ko) 2009-08-25 2009-08-25 데이터 부호화 방법 및 장치와 데이터 복호화 방법 및 장치

Publications (2)

Publication Number Publication Date
KR20110021198A true KR20110021198A (ko) 2011-03-04
KR101602871B1 KR101602871B1 (ko) 2016-03-11

Family

ID=43624865

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020090078845A KR101602871B1 (ko) 2009-08-25 2009-08-25 데이터 부호화 방법 및 장치와 데이터 복호화 방법 및 장치

Country Status (2)

Country Link
US (1) US20110051815A1 (ko)
KR (1) KR101602871B1 (ko)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20170007665A (ko) * 2015-07-10 2017-01-19 삼성전자주식회사 스킵 모드 정보를 이용한 레이트 조절 인코딩 방법 및 그에 따른 인코딩 장치
CN106603476B (zh) * 2015-10-19 2021-02-12 中兴通讯股份有限公司 数据压缩方法及装置
JP7224892B2 (ja) * 2018-12-18 2023-02-20 ルネサスエレクトロニクス株式会社 動画像符号化装置及びその動作方法、動画像符号化装置を搭載する車両

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20060109836A (ko) * 2005-04-18 2006-10-23 소니 가부시끼 가이샤 화상 신호 처리장치, 카메라 시스템, 및 화상 신호처리방법

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6453114B2 (en) * 1997-02-18 2002-09-17 Thomson Licensing Sa Random picture decoding
US6606415B1 (en) * 1998-09-16 2003-08-12 Texas Instruments Incorporated Feedback control for hybrid compression
US6229852B1 (en) * 1998-10-26 2001-05-08 Sony Corporation Reduced-memory video decoder for compressed high-definition video data
JP4185086B2 (ja) * 2005-09-28 2008-11-19 株式会社日立国際電気 画像処理装置
JP4656190B2 (ja) * 2008-06-10 2011-03-23 ソニー株式会社 情報処理装置および方法

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20060109836A (ko) * 2005-04-18 2006-10-23 소니 가부시끼 가이샤 화상 신호 처리장치, 카메라 시스템, 및 화상 신호처리방법

Also Published As

Publication number Publication date
KR101602871B1 (ko) 2016-03-11
US20110051815A1 (en) 2011-03-03

Similar Documents

Publication Publication Date Title
RU2722536C1 (ru) Вывод опорных значений режима и кодирование и декодирование информации, представляющей режимы предсказания
US10397575B2 (en) Image coding apparatus, image coding method, and program, and image decoding apparatus, image decoding method, and program
TWI504237B (zh) 視訊寫碼中之緩衝預測資料
US11792427B2 (en) Method for encoding and/or decoding images on macroblock level using intra-prediction
CN107071414B (zh) 视频编码和解码的方法及设备
JP4908180B2 (ja) 動画像符号化装置
KR101884719B1 (ko) 동영상 처리 방법 및 장치
US10075725B2 (en) Device and method for image encoding and decoding
US20120140821A1 (en) Pixel adaptive intra smoothing
KR20130001303A (ko) 비디오 인코딩을 위한 전력 효율적인 움직임 추정 기법
US9807388B2 (en) Adaptive intra-refreshing for video coding units
JP5396711B2 (ja) 動画像復号装置、動画像復号方法及びプログラム
KR101602871B1 (ko) 데이터 부호화 방법 및 장치와 데이터 복호화 방법 및 장치
JP2007067526A (ja) 画像処理装置
CN116320401A (zh) 视频编解码方法及相关装置
JP2006246277A (ja) 再符号化装置、再符号化方法、および再符号化用プログラム
JP7359653B2 (ja) 動画像符号化装置
US11973985B2 (en) Video encoder with motion compensated temporal filtering
JP6874844B2 (ja) 動画像符号化装置、動画像符号化方法、及び、動画像符号化プログラム
KR101525325B1 (ko) 인트라 예측 모드 결정 방법 및 그 장치
Liu et al. Auxiliary stream for optimizing memory access of video decoders
Muromoto et al. Video encoding with the original picture as the reference picture
KR20150021821A (ko) 영상 데이터 메모리 관리 방법 및 영상 데이터 메모리 장치

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
LAPS Lapse due to unpaid annual fee