KR100827093B1 - 영상 부호화 방법 및 장치 - Google Patents

영상 부호화 방법 및 장치 Download PDF

Info

Publication number
KR100827093B1
KR100827093B1 KR1020060099870A KR20060099870A KR100827093B1 KR 100827093 B1 KR100827093 B1 KR 100827093B1 KR 1020060099870 A KR1020060099870 A KR 1020060099870A KR 20060099870 A KR20060099870 A KR 20060099870A KR 100827093 B1 KR100827093 B1 KR 100827093B1
Authority
KR
South Korea
Prior art keywords
block
integer
interpolation
pixels
pixel
Prior art date
Application number
KR1020060099870A
Other languages
English (en)
Other versions
KR20080033754A (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 KR1020060099870A priority Critical patent/KR100827093B1/ko
Priority to US11/904,088 priority patent/US20080089418A1/en
Priority to EP07118468A priority patent/EP1940175A1/en
Publication of KR20080033754A publication Critical patent/KR20080033754A/ko
Application granted granted Critical
Publication of KR100827093B1 publication Critical patent/KR100827093B1/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/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • H04N19/523Motion estimation or motion compensation with sub-pixel accuracy
    • 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/43Hardware specially adapted for motion estimation or compensation
    • H04N19/433Hardware specially adapted for motion estimation or compensation characterised by techniques for memory access
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/60Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
    • H04N19/61Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding in combination with predictive coding

Abstract

본 발명은 영상 부호화 방법 및 장치에 관한 것으로, 영상 데이터의 부호화에 있어서, 영상 데이터에 대한 프레임을 저장하는 메모리부와, 저장된 프레임을 기준으로 현재 입력되는 영상 프레임에 대한 소정 블록 단위의 움직임 벡터를 검출하며, 검출된 블록에 대한 부 화소 보간을 하기 위해 상기 메모리부에 접근하는 움직임 예측부 및 검출된 움직임 벡터를 이용하여 압축 처리될 프레임 블록에 대한 움직임 보상을 수행하는 움직임 보상부를 포함하여 부호화를 위해 사용되는 메모리 접근 횟수를 감소시킬 수 있으며, 색차 신호의 보간에 있어서 상당히 많이 사용되는 부분인 만큼 메모리 접근을 감소시킴으로써, 효율적으로 저전력 부호화를 구현할 수 있다.
H.264, 영상, 움직임, 예측, 보상, 정수 화소, 부 화소, 보간, 메모리, 접근, 블록

Description

영상 부호화 방법 및 장치{METHOD FOR VIDEO ENCODING AND APPARATUS FOR THE SAME}
도 1은 종래의 움직임 보상 블록들을 보여주는 참고도
도 2는 종래의 비디오 부호화 장치에서 부 화소 보간의 메모리 접근 방법을 설명하기 위한 예시도
도 3은 본 발명의 실시 예에 따른 영상 부호화 장치의 구성도
도 4는 본 발명의 실시 예에 따른 영상 부호화 장치에서 메모리 접근 방법의 흐름도
도 5는 본 발명의 실시 예에 따른 영상 부호화 장치에서 부 화소 보간의 메모리 접근 방법을 설명하기 위한 예시도
* 주요 도면부호에 대한 설명 *
150 : 블록 160 : 정수 화소
400 : 영상 부호화 장치 402 : 감산부
404 : DCT 연산부 406 : 양자화부
408 : 가변장 부호화부 410 : 역 양자화부
412 : 역 DCT 연산부 414 : 가산부
416 : 메모리부 418 : 움직임 예측부
420 : 움직임 보상부
본 발명은 부호화를 위해 사용되는 메모리 접근 횟수를 감소시킬 수 있으며, 색차 신호의 보간에 있어서 저전력 부호화를 구현할 수 있는 영상 부호화 방법 및 장치에 관한 것이다.
영상의 압축은 MPEG, H.26x 등의 압축 표준이 있고, 이러한 영상 압축 기법은 비디오 플레이어, VOD, 영상 전화, DMB 등 많은 응용에 사용되고 있다. 또한 2.5G/3G 등의 무선 통신의 발달로 무선 모바일 환경(wireless mobile base)에서 영상 전송이 상업화되고 있다.
MPEG이나 H.26x 계열의 동영상 코덱(CODEC) 등 대부분의 동영상 압축 표준은 움직임 보상 기법(Motion Estimation & Compensation)과 변환(Transform)에 기반한 압축방식을 채택하고 있다. 이러한 움직임 보상 기반 부호화에서는 각 블록
(block)의 움직임 벡터(Motion Vector) 정보를 부호화해서 전송해야 하며, 움직임 벡터를 어떻게 부호화하느냐에 따라 압축 효율이 크게 달라지기도 한다.
영상을 부호화하는 일반적인 과정은 디지털 영상신호를 DCT(이산 코사인 변환) 처리하고, 변환계수를 양자화하여 가변길이 부호화(VLC)를 수행하는 한편, 양 자화된 DCT 계수를 역양자화 및 역 DCT 변환하여 복원한 영상을 메모리에 저장하고, 메모리에 저장된 복원 영상과 다음 프레임 영상을 이용해서 움직임 벡터를 산출하며, 움직임 벡터를 가변길이 부호화하여 상기 부호화된 영상정보와 함께 비트 스트림으로 구성하여 전송하는 수순을 따른다. 영상을 복호화(디코딩)하는 방법은 상기 부호화 과정의 역순으로 수행한다.
이와 같이 영상을 압축 부호화하는 방법은 공간 중복성 및/또는 시간 중복성을 이용해서 이루어진다. 시간 중복성에 기반 한 동영상 코덱(CODEC)의 경우 이전 프레임과의 시간적 중복성을 매크로 블록의 움직임 벡터를 이용함으로써 효율적으로 제거할 수 있었다. 예를 들면, 현재 프레임(current frame)의 매크로 블록과 가장 유사한 매크로 블록을 이전(참조) 프레임(reference frame)에서 찾게 되는데,
현재 프레임의 매크로 블록과 이전 프레임의 매크로 블록간의 유사성의 기준으로 두 벡터 사이의 거리의 제곱이 최소가 되는 매크로 블록을 찾음으로써 프레임 간의 중복성을 효율적으로 제거하여 압축 효율을 높이는 것이다. 이와 같은 영상(오디오 포함) 압축 부호화 방법과 그에 따른 하드웨어 및 소프트웨어 기반의 향상에 따라 영상을 동반하는 통화가 가능한 영상 전화 시스템 뿐만 아니라 위성/지상파 DMB도 선보이고 있다. 그 중에서도 고효율 압축 기술인 H.264는 기본적으로 NAL(Network Abstract Layer) 단위로 구성되어 있다. 비디오 데이터를 포함하고 있는 NAL 타입은 크게 IDR NAL과 non-IDR NAL의 2가지로 구성될 수 있다.
IDR(Instaneous Decoding Refresh) NAL은 랜덤 억세스가 가능한 포인트이며, 시간적 중복성(temporal redundancy)을 사용하지 않고 공간적 중복성(spatial redundancy)만을 이용하여 압축함과 동시에 IDR NAL 이전에 들어온 모든 프레임은 프레임 버퍼에서 제거되어 더 이상 압축을 위해서 참조되지 않는다. 그에 비해서 non-IDR NAL에는 I타입 슬라이스(I type slice), P타입 슬라이스(P type slice) 그리고 B타입 슬라이스(B type slice)로 구성되어 있다.
P타입 슬라이스와 B타입 슬라이스는 기존의 코덱(CODEC)들과 같은 예측 부호화로 압축되어 있다. 이 중에서 I타입 슬라이스는 기본적으로 IDR과 마찬가지로 공간적인 중복성만을 사용하여 압축이 되어 있으나, 프레임 버퍼의 내용을 소거하지 않는다는 점에서 차이가 있다. 이렇게 프레임 버퍼의 내용을 소거하지 않는 이유는 I타입 슬라이스 이후에 들어오는 P타입 NAL 또는 B타입 NAL이 I타입 슬라이스 이전의 내용들을 참조할 수 있기 때문이다.
IDR NAL로 구성된 IDR 프레임은 동영상 재생시의 변속 재생모드(FF/REW)에 사용되는 랜덤 억세스가 가능한 포인트가 될 수 있는 반면에, non-IDR NAL로 구성된 non-IDR 프레임은 공간적인 중복성만을 이용한 I프레임일지라도 랜덤 억세스 가능 포인트로 활용되지 않는다. 그 이유는 앞에서 설명한 바와 같이 I프레임에 따라서 들어오는 NAL들이 I프레임 이전의 내용을 기반으로 하는 예측 부호화를 수행할 수 있는 가능성이 있기 때문이다.
이와 같은 H.264 기반의 동영상 압축 표준에서의 움직임 보상방법은 여타 표준과는 달리 16X16 ~ 4X4 사이즈의 다양한 블록 크기를 지원한다. 한 매크로 블록에서 휘도 성분(Y)은 16X16, 16X8, 8X16, 8X8, 8X4, 4X8, 4X4 사이즈의 서브 블록(sub-block)으로 나뉠 수 있고, 색도 성분(Cb,Cr)은 휘도 성분의 절반의 크기인 8X8, 8X4, 4X8, 4X4, 4X2, 2X4, 2X2 사이즈의 서브 블록으로 나뉠 수 있다.
이렇게 다양한 크기의 서브 블록에 대해서 정수 화소 정밀도의 움직임 예측을 하고 이 후 성능을 향상시키기 위해 부 화소 정밀도의 움직임 예측을 수행하게 된다. 이 때 휘도 블록의 부 화소는 통상적으로 필터를 이용하여 보간되고 색도 블록의 부 화소는 주변의 정수 화소를 이용하여 보간된다. 다양한 크기의 서브 블록에 대해서 부 화소를 보간하기 위해서는 각각의 크기에 대한 참조 블록이 필요하게 되는데, 휘도 블록의 경우는 21X21 ~ 9X9 크기의 참조 블록이 필요하고, 색도 블록의 경우는 9X9 ~ 3X3 크기의 참조 블록이 필요하므로, 이 참조 블록들을 가져오기 위해서는 많은 시간이 소요된다. 즉, 다양한 크기의 서브 블록에 대해서 움직임 보상을 위한 참조 블록들의 크기 또한 다양하게 전개되므로 움직임 보상을 위하여 이들을 메모리로부터 접근하여 오는데는 상당한 시간이 소요되는 것이다.
도 1에 도시된 바와 같이, 예를 들어 움직임 예측에 사용된 블록의 크기는 16X16 매크로 블록이고, 4:2:0 형식을 사용하는 경우 색차 신호에 대한 블록의 크기가 8X8 블록(150)이 된다. 소정의 움직임 보상 블록을 구성하는 화소들의 일부를 보여준다. 회색 상자는 8X8 블록(150)을 나타내고, 흰색 상자는 부 화소 보간에 사용되는 정수 화소(160)를 나타낸다.
도 2는 종래의 비디오 부호화 장치에서 부 화소 보간의 메모리 접근 방법을 설명하기 위한 예시도이다.
도 2에 도시된 바와 같이, 8X8 블록(150)에 대한 부 화소 보간을 하기 위해서는 해당 블록의 인접한 정수 화소(160)를 필요로 한다. 도 2는 메모리에서 정수 화소를 접근하는 예를 도시하고 있다. 여기서 A`와 B`는 이웃 블록의 정수 화소이다. 보통 4개의 화소를 기본 단위로 접근 한다.
도 2a의 경우 A, B, C, D와 I, J, K, L (①과 ④)을 로드함으로써 각각 안쪽의 부 화소를 보간할 수 있다. 다음은 E, F, G, H 와 M, N, O, P (②와 ⑤)를 로드하여 부 화소 보간을 수행하고 다음은 A` 와 B`(③과 ⑥)를 로드한다. 이처럼 부 화소 보간을 위해 8X8 블록의 경우 한 라인당 9개의 정수 화소를 로드하는데 종래의 움직임 보상 장치의 경우 9개의 정수 화소를 로드하기 위해서는 최소한 3번의 메모리(130) 접근을 필요로 한다.
결국, 종래의 움직임 보상 장치에서 블록의 크기가 16X16으로 선택이 된 경우 색차 신호는 8X8 블록(150)이 되는데 이 때 도 3에서 보이는 것처럼 부 화소 보간을 위한 정수 화소를 메모리로부터 접근하는 경우 한 라인을 3번에 걸쳐 접근해야 한다. 블록(150) 전체를 접근하기 위해서는 총 27번의 메모리 접근이 필요하다. 다음은 각 블록(150) 당 필요한 메모리 접근 횟수를 보여준다.
8X8 블록 : 1라인 당 3 번의 접근 * 9 라인 = 27,
8X4 블록 : 1라인 당 3 번의 접근 * 5 라인 = 15,
4X8 블록 : 1라인 당 2 번의 접근 * 9 라인 = 18,
4X4 블록 : 1라인 당 2 번의 접근 * 5 라인 = 10
이러한 부 화소 보간은 모든 화면 간 모드(inter mode)에서 사용되고 대부분의 프레임(frame)이 화면 간 모드로 부호화되기 때문에 상당히 많이 사용된다.
이렇게 참조 블록을 가져오는 방법은 참조 영상을 메모리에 저장해 놓고 있 다가 각 블록의 움직임 벡터(motion vector)와 참조 인덱스(reference index)를 이용하여 가져오게 된다. H.264의 경우에 있어서는 여러 장의 참조 영상을 가질 수 있으며, 휴대 폰(Mobile Phone), PDA 등과 같이 휴대성과 이동성에 기반 한 기기의 경우에는 메모리 크기의 제한으로 인하여 속도가 빠른 내부 메모리가 아닌 속도가 느린 외부 메모리에 참조 영상을 두고, 움직임 보상을 할 때마다 외부 메모리에 접근하여 참조 블록을 가져오는 방법을 사용하기 때문에 참조 블록을 가져오는데 더욱 많은 시간을 필요로 하게 된다.
본 발명의 목적은 부호화 구현에 있어서 색차 신호의 보간에 관한 영상 부호화 방법 및 장치를 제공하는데 있다.
본 발명의 다른 목적은 부 화소 보간을 위해 사용되는 메모리 접근 횟수를 줄이는데 있다.
상기한 목적을 달성하기 위한 본 발명은 영상 데이터의 부호화에 있어서, 상기 영상 데이터에 대한 프레임을 저장하는 메모리부와, 상기 저장된 프레임을 기준으로 현재 입력되는 영상 프레임에 대한 소정 블록 단위의 움직임 벡터를 검출하며, 상기 검출된 블록에 대한 부 화소 보간을 하기 위해 메모리부에 접근하는 움직임 예측부 및 상기 검출된 움직임 벡터를 이용하여 압축 처리될 프레임 블록에 대한 움직임 보상을 수행하는 움직임 보상부를 포함하는 것을 특징으로 한다.
이하, 첨부된 도면을 참조하여 본 발명에 따른 바람직한 실시 예를 상세히 설명한다. 도면에서 동일한 구성요소들에 대해서는 비록 다른 도면에 표시되더라도 가능한 한 동일한 참조번호 및 부호로 나타내고 있음에 유의해야 한다. 또한, 본 발명을 설명함에 있어서, 관련된 공지기능 혹은 구성에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우 그 상세한 설명은 생략한다.
도 3은 본 발명의 실시 예에 따른 영상 부호화 장치의 구성도이다.
도 3에 도시된 바와 같이, 본 발명의 영상 부호화 장치(400)는 프레임 내(intra-frame)압축 및 프레임 간(inter-frame) 압축을 하며, 예를 들어 I, P, B 프레임 압축의 시퀀스에 따라 행한다.
일반적으로, I 프레임 화소 데이터는 감산부(402)의 영향을 받지 않고 그대로 이산코사인변환(DCT) 연산부(404)로 출력된다. DCT 연산부(404)는 DCT를 4X4(High Profile의 경우 8X8) 화소 블록단위로 행하고, 양자화부(406)는 DCT 데이터를 양자화하고, 가변장 부호화부(VLC, 408)는 양자화된 데이터를 런길이 부호화해서 통계적 부호화를 행하고, 또한, 통계적 부호화된 영상 데이터, 움직임 예측부(418)로부터의 인가되는 움직임 벡터 및 매크로 블록타입과 같은 부가정보를 다중하여 출력한다.
양자화부(406)로부터 출력되는 압축된 I 프레임은 역 양자화부(410)에서 역양자화되고, 역 DCT 연산부(412)는 역 양자화된 I프레임에 대해 역 DCT를 수행하여 압축 해제된 I 프레임을 가산부(414)에 인가한다. 압축 해제된 I 프레임은 가산부(414)의 영향을 받지 않고 그대로 버퍼역할을 하는 메모리부(416)에 전송되고, 이후 P 및 B 프레임을 예측 압축하기 위하여 메모리부(416)에 저장된다. P 및 B 프레임의 예측 부호화도 유사한다. 메모리부(416)에 저장된 영상 프레임들은 움직임 예측부(418)에 공급된다.
움직임 예측부(418)는 현재 입력되는 영상 프레임과 메모리부(416)에 저장된 기준 프레임를 이용하여 움직임 벡터를 검출해서 가변장 부호화부(408) 및 움직임 보상부(420)에 출력한다.
움직임 보상부(420)는 움직임 예측부(418)에서 예측된 움직임 벡터에 상응하는 블록을 메모리부(416)로부터 독출하여 감산부(402)에 공급한다. 감산부(402)는 현재 압축 처리될 프레임에 대응하는 블록으로부터 움직임 보상부(420)를 통해 메모리부(416)로부터의 예측된 블록을 감산하는데, 화소 대 화소 단위로 감산한다.
감산부(402)의 감산에 의해 얻어진 차 또는 나머지(residue)는 DCT 수행부(404)에 인가된다. 한편, 압축 P 프레임은 역 양자화부(410) 및 역 DCT 연산부(412)에서 복호화되고, 복호화된 데이터는 가산부(414)의 제1 입력단에 인가된다. 동시에 현재 프레임을 예측하기 위해 메모리부(416)에 저장된 기준 영상 프레임의 각각의 블록을 접근하여 접근된 블록은 움직임 보상부(420)를 통해 가산부(414)의 제2 입력단에 인가된다.
가산부(414)는 부호화된 나머지 또는 차와 움직임 보상부(420)로부터 출력되는 데이터를 가산해서 실제의 이미지를 복원한다. 가산부(414)로부터의 복원된 P 프레임은 이후 P 및 B 프레임을 예측 부호화/복호화하기 위하여 메모리부(416)에 저장된다.
도 4는 본 발명의 실시 예에 따른 영상 부호화 장치에서 메모리 접근 방법의 흐름도이다.
도 4에 도시된 바와 같이, 움직임 예측부(418)는 현재 입력된 영상 프레임을 매크로 블록으로 분할하고, 메모리부에 저장되어 있는 기준 프레임을 비교하여 가장 유사한 프레임을 찾은 다음, 현재 부호화하고자 하는 영상 프레임에 대한 소정 블록 단위(150)의 움직임 벡터 MV(Motion Vector)를 검출한다(S500). 이때, 움직임 예측은 블록 단위(150)로 MPEG-2 또는 MPEG-4에서와 같은 방식으로 수행될 수 있다. 따라서, 블록 단위(150)의 움직임 벡터가 구해진다.
또한, 부 화소의 보간을 수행하기 위해서 움직임 벡터의 해당 블록(150)의 정수 화소에 로드하여 메모리부(416)로 접근하게 된다(S510).
그 다음, 움직임 보상부(420)는 블록 단위(150)로 검출된 움직임 벡터를 이용하여 압축 처리될 블록에 대해 움직임 보상을 수행한다.
도 5는 본 발명의 실시 예에 따른 영상 부호화 장치에서 부 화소 보간의 메모리 접근 방법을 설명하기 위한 예시도이다.
먼저, 움직임 예측부(418)는 보통 4개의 화소를 기본 단위로 로드를 하는데, 도 5a와 같이 표준 모드(normal mode)로 A, B, C, D와 I, J, K, L (①과 ③)을 로드하고, E, F, G, H와 M, N, O, P (②와 ④)를 로드하여 각각의 안 쪽의 부 화소를 보간한다(S520). 여기서 A`와 B`는 이웃 블록의 정수 화소이다. 이렇게 하면 A`와 B`를 로드하지 않았기 때문에 H, A`, P, B` 사이의 부 화소는 보간할 수 없다. 이를 위해 인접한 화소인 A`, B`를 먼저 보간한 이 후에 부 화소 보간을 수행한다.
또한, 움직임 예측부(418)는 도 5b에서 지그재그 모드(zigzag mode)로 A, B, C, D와 J, K, L, M (①과 ③)을 로드하고 E, F, G, H와 N, O, P, B` (②와 ④)를 로드하여 각각의 안 쪽의 부 화소를 보간한다(S530). 이 경우 I와 A`를 접근하지 않았기 때문에 A, B, I, J 사이의 부 화소와 H, A`, P, B` 사이의 부 화소는 보간할 수 없다. 이를 위해 인접한 화소를 이용하여 A`, I를 먼저 보간한 이 후에 부 화소 보간을 수행한다.
한편, 메모리부(416)에 접근하는데 있어서 표준 모드(normal mode)와 지그재그 모드(zigzag mode)로 두 개의 정수 화소를 보간해 주어야 한다. 정수 화소의 보간은 다음 방식 중 하나를 택하여 이루어 질 수 있다(S540).
<방식 1>
주변 화소로 대체하는 것으로 수학식 1에 의해 인접한 하나의 화소로 정수 화소를 보간한다(S550).
[수학식 1]
- normal mode : A`= H or A`= P,
B`= H or B`= P
- zigzag mode : A`= H or A`= P or A` = B`,
I = A or I = B or I = J
<방식 2>
주변 화소의 평균을 이용하는 것으로 수학식 2에 의해 인접한 화소들의 평균을 사용한다(S560).
[수학식 2]
- normal mode : A`= B`= (H + P + 1) >> 1
- zigzag mode : A`= (G + H + P + B`+ 2) >> 2
I = (A + B + J + K + 2) >> 2
<방식 3>
주변 화소의 그레디언트(Gradient)를 이용하는 것으로 수학식 3에 의해 인접한 화소 값의 변화를 사용한다(S560).
[수학식 3]
- normal mode : A`= H + (H - G)
B`= P + (P - O)
- zigzag mode : A`= H + (H - G)
I = J + (J - K)
이런 식으로 보간된 정수 화소를 이용하여 부 화소 보간을 수행한다. 블록이 8X4, 4X8, 4X4 로 선택되어도 마찬가지 방법을 적용할 수 있다. 이후 8X8 블록 또는 8X4 블록인 경우 한 라인 당 9개의 정수 화소가 있어야 부 화소 보간이 가능하다. 한 번에 접근 할 수 있는 데이터는 32 비트이므로 4개의 정수 화소를 접근할 수 있기 때문에 도 4에서와 같이 한 라인 당 최소한 3번 이상의 메모리 접근을 해야 한다. 마찬가지로 4X8 또는 4X4 블록인 경우 한 라인 당 5개의 정수 화소를 필 요로 하므로 2번 이상의 메모리 접근이 필요하다. 다음과 같은 각 블록 당 필요한 메모리 접근 횟수를 보여준다.
8X8 블록 : 1라인 당 2 번의 접근 * 9 라인 = 18,
8X4 블록 : 1라인 당 2 번의 접근 * 5 라인 = 10,
4X8 블록 : 1라인 당 1 번의 접근 * 9 라인 = 9,
4X4 블록 : 1라인 당 1 번의 접근 * 5 라인 = 5
결국, 8X8 블록과 8X4 블록의 경우는 76%, 4X8과 4X4 블록의 경우는 50% 로 메모리 접근 횟수가 줄어든다. 일반적으로 비디오 부호화 장치에서 메모리 접근 횟수는 상당히 중요한다. 메모리 접근은 일반 명령어에 비해 수 배에서 수십 배의 사이클을 사용한다. 또한 색차 신호의 보간은 부호화에 있어서 상당히 많이 사용되는 부분인 만큼 메모리 접근을 고려한 색차 신호 보간법은 저전력 부호화 구현에 있어서 매우 효율적이다.
상기와 같이 본 발명의 실시 예에 따른 영상 부호화 방법 및 장치가 이루어질 수 있으며, 한편 상기한 본 발명의 설명에서는 구체적인 실시 예에 관해 설명하였으나 여러 가지 변형이 본 발명의 요지를 벗어나지 않고 다양한 실시예가 있을 수 있다. 따라서 본 발명의 범위는 설명된 실시 예에 의하여 정할 것이 아니고 청구범위와 청구범위의 균등한 것에 의하여 정하여져야 할 것이다.
상기한 바와 같이 이루어진 본 발명은 부호화를 위해 사용되는 메모리 접근 횟수를 감소시킬 수 있으며, 색차 신호의 보간은 부호화에 있어서 상당히 많이 사용되는 부분인 만큼 메모리 접근을 감소시킴으로써, 효율적으로 저전력 부호화를 구현할 수 있다.

Claims (13)

  1. 영상 데이터의 부호화에 있어서,
    상기 영상 데이터에 대한 프레임을 저장하는 메모리부와;
    상기 저장된 프레임을 기준으로 현재 입력되는 영상 프레임에 대한 소정 블록 단위의 움직임 벡터를 검출하며, 상기 검출된 블록에 대한 부 화소 보간에 요구되는 일부 정수 화소 값을 메모리부로부터 읽어들이고, 부 화소 보간에 요구되는 타 정수 화소의 값을 이미 읽어들인 상기 정수 화소의 값을 이용하여 보간하는 움직임 예측부; 및
    상기 검출된 움직임 벡터를 이용하여 압축 처리될 프레임 블록에 대한 움직임 보상을 수행하는 움직임 보상부를 포함하는 것을 특징으로 하는 영상 부호화 장치.
  2. 제1항에 있어서,
    상기 움직임 예측부는 상기 블록의 정수 화소에 표준 모드로 접근하여 부 화소 보간을 수행하는 과정을 포함하는 것을 특징으로 하는 영상 부호화 장치.
  3. 제1항에 있어서,
    상기 움직임 예측부는 상기 블록의 정수 화소에 지그재그 모드로 접근하여 부 화소 보간을 수행하는 과정을 포함하는 것을 특징으로 하는 영상 부호화 장치.
  4. 제2항 내지 제3항 중 어느 한 항에 있어서, 상기 움직임 예측부는 정수 화소를 상기 블록에 인접한 하나의 화소, 화소들의 평균 및 화소 값의 변화를 이용하여 보간하는 것을 포함하는 것을 특징으로 하는 영상 부호화 장치.
  5. 영상 데이터의 부호화에 있어서,
    상기 영상 데이터에 대한 프레임을 저장하는 과정과;
    상기 저장된 프레임을 기준으로 현재 입력되는 영상 프레임에 대한 소정 블록 단위의 움직임 벡터를 검출하는 과정; 및
    일부 정수 화소 값은 메모리부로부터 읽어들이고 상기 일부 정수 화소를 제외한 다른 정수 화소의 값은 이미 읽어들인 상기 정수 화소 값의 보간을 통해, 부 화소 보간을 수행하는 과정을 포함하는 것을 특징으로 하는 영상 부호화 방법.
  6. 제5항에 있어서,
    상기 블록의 정수 화소에 표준 모드로 접근하여 부 화소 보간을 수행하는 것을 특징으로 하는 영상 부호화 방법.
  7. 제5항에 있어서,
    상기 블록의 정수 화소에 지그재그 모드로 접근하여 부 화소 보간을 수행하는 것을 특징으로 하는 영상 부호화 방법.
  8. 제6항 내지 제7항 중 어느 한 항에 있어서, 상기 다른 정수 화소는 상기 블록에 인접한 하나의 화소로 보간하는 것을 포함하는 것을 특징으로 하는 영상 부호화 방법.
  9. 제6항 내지 제7항 중 어느 한 항에 있어서, 상기 다른 정수 화소는 상기 블록에 인접한 화소들의 평균을 이용하여 보간하는 것을 포함하는 것을 특징으로 하는 영상 부호화 방법.
  10. 제6항 내지 제7항 중 어느 한 항에 있어서, 상기 다른 정수 화소는 상기 블록에 인접한 화소 값의 변화를 이용하여 보간하는 것을 포함하는 것을 특징으로 하는 영상 부호화 방법.
  11. 제5항에 있어서, 상기 검출된 움직임 벡터를 이용하여 압축 처리될 프레임 블록에 대한 움직임 보상을 수행하는 과정을 더 포함하는 것을 특징으로 하는 영상 부호화 방법.
  12. 제1항에 있어서,
    상기 움직임 예측부는,
    부 화소 보간에 요구되는 정수 화소 중, 동시에 로드될 수 있는 복수의 정수 화소는 상기 메모리로부터 일어들이고, 동시에 로드될 수 없는 각각의 정수 화소는 로드된 상기 정소 화소 중 선택된 어느 하나의 화소 또는 적어도 두개 화소의 조합을 이용하여 보간하는 것을 특징으로 하는 영상 부호화 장치.
  13. 제5항에 있어서,
    부 화소 보간에 요구되는 정수 화소 중, 동시에 로드될 수 있는 복수의 정수 화소는 상기 메모리로부터 일어들이고, 동시에 로드될 수 없는 각각의 정수 화소는 로드된 상기 정소 화소 중 선택된 어느 하나의 화소 또는 적어도 두개 화소의 조합을 이용하여 보간하는 것을 특징으로 하는 영상 부호화 방법.
KR1020060099870A 2006-10-13 2006-10-13 영상 부호화 방법 및 장치 KR100827093B1 (ko)

Priority Applications (3)

Application Number Priority Date Filing Date Title
KR1020060099870A KR100827093B1 (ko) 2006-10-13 2006-10-13 영상 부호화 방법 및 장치
US11/904,088 US20080089418A1 (en) 2006-10-13 2007-09-26 Image encoding apparatus and memory access method
EP07118468A EP1940175A1 (en) 2006-10-13 2007-10-15 Image encoding apparatus and memory access method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020060099870A KR100827093B1 (ko) 2006-10-13 2006-10-13 영상 부호화 방법 및 장치

Publications (2)

Publication Number Publication Date
KR20080033754A KR20080033754A (ko) 2008-04-17
KR100827093B1 true KR100827093B1 (ko) 2008-05-02

Family

ID=39303090

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020060099870A KR100827093B1 (ko) 2006-10-13 2006-10-13 영상 부호화 방법 및 장치

Country Status (3)

Country Link
US (1) US20080089418A1 (ko)
EP (1) EP1940175A1 (ko)
KR (1) KR100827093B1 (ko)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101981935B (zh) * 2008-03-31 2012-11-21 松下电器产业株式会社 图像解码装置、图像解码方法、集成电路及接收装置
EP2942960A1 (en) * 2009-12-01 2015-11-11 HUMAX Holdings Co., Ltd. Apparatus for decoding high-resolution images
KR101847072B1 (ko) 2010-04-05 2018-04-09 삼성전자주식회사 영상 부호화 방법 및 장치, 비디오 복호화 방법 및 장치
US8437581B2 (en) * 2011-03-04 2013-05-07 General Instrument Corporation Method and system for interpolating fractional video pixels
US20120230407A1 (en) 2011-03-11 2012-09-13 General Instrument Corporation Interpolation Filter Selection Using Prediction Index
EP2724534A2 (en) 2011-06-24 2014-04-30 Motorola Mobility LLC Selection of phase offsets for interpolation filters for motion compensation
EP2727358A1 (en) 2011-07-01 2014-05-07 Motorola Mobility LLC Joint sub-pixel interpolation filter for temporal prediction
US10009622B1 (en) 2015-12-15 2018-06-26 Google Llc Video coding with degradation of residuals

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040233990A1 (en) 2002-07-15 2004-11-25 Shunichi Sekiguchi Image coding device, image coding method, image decoding device, image decoding method and communication apparatus
KR20060056720A (ko) * 2004-11-22 2006-05-25 한국전자통신연구원 동영상 부호화를 위한 1/4 화소 탐색 방법 및 이를 이용한움직임 추정 장치
KR20060103420A (ko) * 2006-09-14 2006-09-29 엘지전자 주식회사 1/4픽셀 움직임 벡터를 이용한 동영상 압축방법

Family Cites Families (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6236682B1 (en) * 1993-03-08 2001-05-22 Sony Corporation Video motion vector detection including rotation and/or zoom vector generation
US6950469B2 (en) * 2001-09-17 2005-09-27 Nokia Corporation Method for sub-pixel value interpolation
WO2003063503A1 (en) * 2002-01-24 2003-07-31 Hitachi, Ltd. Moving picture signal coding method, decoding method, coding apparatus, and decoding apparatus
KR100441509B1 (ko) * 2002-02-25 2004-07-23 삼성전자주식회사 주사포맷변환장치 및 방법
GB2387056A (en) * 2002-03-28 2003-10-01 Sony Uk Ltd Differential encoding and decoding
FR2844131B1 (fr) * 2002-09-03 2004-11-12 St Microelectronics Sa Procede et dispositif d'interpolation d'images avec compensation du mouvement
US7221708B1 (en) * 2002-12-16 2007-05-22 Emblaze V Con Ltd Apparatus and method for motion compensation
US8107535B2 (en) * 2003-06-10 2012-01-31 Rensselaer Polytechnic Institute (Rpi) Method and apparatus for scalable motion vector coding
US7653133B2 (en) * 2003-06-10 2010-01-26 Rensselaer Polytechnic Institute (Rpi) Overlapped block motion compression for variable size blocks in the context of MCTF scalable video coders
TWI227641B (en) * 2003-11-11 2005-02-01 Mediatek Inc Method and related apparatus for motion estimation
EP1578137A2 (en) * 2004-03-17 2005-09-21 Matsushita Electric Industrial Co., Ltd. Moving picture coding apparatus with multistep interpolation process
EP1578134A1 (en) * 2004-03-18 2005-09-21 STMicroelectronics S.r.l. Methods and systems for encoding/decoding signals, and computer program product therefor
JP4419062B2 (ja) * 2004-03-29 2010-02-24 ソニー株式会社 画像処理装置および方法、記録媒体、並びにプログラム
US7929606B2 (en) * 2005-01-21 2011-04-19 Lg Electronics Inc. Method and apparatus for encoding/decoding video signal using block prediction information
US7965773B1 (en) * 2005-06-30 2011-06-21 Advanced Micro Devices, Inc. Macroblock cache
JP4752407B2 (ja) * 2005-09-09 2011-08-17 ソニー株式会社 画像処理装置および方法、プログラム、並びに記録媒体
US8761259B2 (en) * 2005-09-22 2014-06-24 Qualcomm Incorporated Multi-dimensional neighboring block prediction for video encoding
US8559514B2 (en) * 2006-07-27 2013-10-15 Qualcomm Incorporated Efficient fetching for motion compensation video decoding process

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040233990A1 (en) 2002-07-15 2004-11-25 Shunichi Sekiguchi Image coding device, image coding method, image decoding device, image decoding method and communication apparatus
KR20060056720A (ko) * 2004-11-22 2006-05-25 한국전자통신연구원 동영상 부호화를 위한 1/4 화소 탐색 방법 및 이를 이용한움직임 추정 장치
KR20060103420A (ko) * 2006-09-14 2006-09-29 엘지전자 주식회사 1/4픽셀 움직임 벡터를 이용한 동영상 압축방법

Also Published As

Publication number Publication date
EP1940175A1 (en) 2008-07-02
US20080089418A1 (en) 2008-04-17
KR20080033754A (ko) 2008-04-17

Similar Documents

Publication Publication Date Title
US20200014957A1 (en) Video encoding method for encoding division block, video decoding method for decoding division block, and recording medium for implementing the same
US9215462B2 (en) Image encoding/decoding method and device
KR100813963B1 (ko) 동영상의 무손실 부호화, 복호화 방법 및 장치
KR100827093B1 (ko) 영상 부호화 방법 및 장치
JP3686436B2 (ja) 映像信号の復号化方法
JP4501631B2 (ja) 画像符号化装置及び方法、画像符号化装置のコンピュータ・プログラム、並びに携帯端末
CN1589576A (zh) 使用较大像素格栅运动补偿的降低复杂性视频解码
KR101147744B1 (ko) 비디오 트랜스 코딩 방법 및 장치와 이를 이용한 pvr
CN100555332C (zh) 使用包括多个宏块的预测和非预测画面对画面序列编码的方法和装置
US20070133689A1 (en) Low-cost motion estimation apparatus and method thereof
US9319710B2 (en) Video encoding and decoding apparatus and method
KR20170114598A (ko) 적응적 색상 순서에 따른 색상 성분 간 예측을 이용한 동영상 부호화 및 복호화 방법 및 장치
KR100899730B1 (ko) 영상 인코더 및 디코더에서의 색차 신호 보간 방법
US8768083B2 (en) Apparatus and method for encoding images, and apparatus and method for decoding images
KR20150081240A (ko) 무손실 비디오 부호화/복호화 방법 및 장치
KR20100044333A (ko) 동영상 부호화 장치 및 이를 위한 영상 신호의 2차원 정렬 변환 장치 및 방법, 및 이를 위한 기록 매체
KR100636911B1 (ko) 색도 신호의 인터리빙 기반 동영상 복호화 방법 및 그 장치
KR100522595B1 (ko) 엠펙 비디오 복호화방법 및 엠펙 비디오 복호화기
US20080049836A1 (en) Method and System for a Fast Video Transcoder
KR101629999B1 (ko) 무손실 비디오 부호화/복호화 방법 및 장치
KR20130003707A (ko) 비균등 양자화를 이용한 효과적인 부호화/복호화 방법 및 장치
JP6874844B2 (ja) 動画像符号化装置、動画像符号化方法、及び、動画像符号化プログラム
KR100752847B1 (ko) H.264 기반 동영상 디코딩 방법
KR20110087871A (ko) 인트라 모드를 이용한 쿼터 픽셀 해상도를 갖는 영상 보간 방법 및 장치
CN102316321A (zh) 利用非语法重用的视频编码器及其使用的方法

Legal Events

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

Payment date: 20110330

Year of fee payment: 4

LAPS Lapse due to unpaid annual fee