KR100912077B1 - 인트라 예측을 위한 적응적 영상데이터 읽기 제어 장치 및그 방법과, 그를 이용한 영상 복호를 위한 적응적 인트라예측 시스템 - Google Patents

인트라 예측을 위한 적응적 영상데이터 읽기 제어 장치 및그 방법과, 그를 이용한 영상 복호를 위한 적응적 인트라예측 시스템 Download PDF

Info

Publication number
KR100912077B1
KR100912077B1 KR1020070092974A KR20070092974A KR100912077B1 KR 100912077 B1 KR100912077 B1 KR 100912077B1 KR 1020070092974 A KR1020070092974 A KR 1020070092974A KR 20070092974 A KR20070092974 A KR 20070092974A KR 100912077 B1 KR100912077 B1 KR 100912077B1
Authority
KR
South Korea
Prior art keywords
horizontal
prediction
mode
image data
read
Prior art date
Application number
KR1020070092974A
Other languages
English (en)
Other versions
KR20080052313A (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 한국전자통신연구원
Publication of KR20080052313A publication Critical patent/KR20080052313A/ko
Application granted granted Critical
Publication of KR100912077B1 publication Critical patent/KR100912077B1/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/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/11Selection of coding mode or of prediction mode among a plurality of spatial predictive coding modes
    • 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/129Scanning of coding units, e.g. zig-zag scan of transform coefficients or flexible macroblock ordering [FMO]
    • 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/30Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using hierarchical techniques, e.g. scalability
    • H04N19/37Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using hierarchical techniques, e.g. scalability with arrangements for assigning different transmission priorities to video input data or to video coded data

Landscapes

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

Abstract

본 발명은 인트라 예측을 위한 적응적 영상데이터 읽기 제어 장치 및 그 방법과, 그를 이용한 영상 복호를 위한 적응적 인트라 예측 시스템에 관한 것으로서, 영상 복호를 위하여 메모리에 저장된 영상데이터의 읽기를 수행함에 있어서, 예측 대상 블럭의 해당 예측 모드가 수평/수직모드 또는 비(non) 수평/수직모드 중 어느 모드에 해당하는지를 기준으로 읽기 순위를 결정하고, 그 결정된 읽기 순위에 따라 해당 영상데이터의 읽기를 수행함으로써, 최소한의 연산량으로 신속하게 인트라 예측을 수행할 수 있게 하고자 한다.
이를 위하여, 본 발명은, 적응적 영상데이터 읽기 제어 장치에 있어서, 인트라 예측의 대상이 되는 예측 대상 블럭들에 대하여, 해당 예측 모드가 수평/수직모드 또는 비(Non) 수평/수직모드 중 어느 모드에 해당하는지를 기준으로 '해당 인트라 예측에 필요한 참조 데이터에 대한 읽기 순위'를 결정하기 위한 제어 수단; 상기 참조 데이터에 대한 읽기 어드레스를 생성하기 위한 읽기 어드레스 생성 수단; 및 상기 제어 수단에서 결정된 읽기 순위에 따라, 상기 읽기 어드레스 생성 수단에서 생성된 읽기 어드레스에 해당하는 영상데이터를 읽어들이기 위한 읽기모드 수행 수단을 포함한다.
인트라 예측, 영상데이터 읽기, 읽기 순위, 읽기 제어, 수평/수직 예측 모드, 비 수평/수직 예측 모드

Description

인트라 예측을 위한 적응적 영상데이터 읽기 제어 장치 및 그 방법과, 그를 이용한 영상 복호를 위한 적응적 인트라 예측 시스템{APPARATUS AND METHOD FOR ADAPTIVELY READING IMAGE DATA FOR INTRA PREDICTION, AND SYSTEM OF ADAPTIVE INTRA PREDICTION FOR DECODING IMAGE USING IT}
본 발명은 인트라 예측을 위한 적응적 영상데이터 읽기 제어 장치 및 그 방법과, 그를 이용한 영상 복호를 위한 적응적 인트라 예측 시스템에 관한 것으로, 더욱 상세하게는, 영상 복호를 위하여 메모리에 저장된 영상데이터의 읽기를 수행함에 있어서, 예측 대상 블럭의 해당 예측 모드가 수평/수직모드에 해당하는지 여부를 기준으로 읽기 순위를 결정하고, 그 결정된 읽기 순위에 따라 해당 영상데이터의 읽기를 수행함으로써, 최소한의 연산량으로 신속하게 인트라 예측을 할 수 있게 하는, 인트라 예측을 위한 적응적 영상데이터 읽기 제어 장치 및 그 방법과, 그를 이용한 영상 복호를 위한 적응적 인트라 예측 시스템에 관한 것이다.
본 발명은 정보통신부 및 정보통신연구진흥원의 IT신성장동력핵심기술개발사업의 일환으로 수행한 연구로부터 도출된 것이다[과제관리번호: 2005-S-078-02, 과제명: 저전력 그래픽처리 SoC Platform].
종래의 영상압축 알고리즘에는 인터 예측(Inter Prediction)과 인트라 예측(Intra Prediction) 등이 있는데, 이 중에서 인트라 예측은 영상 신호의 인접한 화면들 간의 높은 상관성(correlation)을 이용하는 것이다.
즉, '인트라 예측'은 현재 영상을 복원하기 위하여 시간 및 공간 상에서 인접한 영상의 정보를 예측하고, 그 예측 결과를 이용하여 현재의 영상을 원영상에 가깝게 압축/복원하는 것이다.
최근 고화질용 영상 압축기술 표준으로 H.264가 확정되었으며, 그 중에서도 인트라 예측 방법을 표준으로 채택하게 되었다. 그러나, 이러한 표준에 따라 압축 알고리즘을 구현할 경우에는 계산시간이 많이 소요되고, 또한 하드웨어 비용도 많이 필요하게 되는 문제점이 있었다.
이러한 문제를 해결하기 위한 종래 기술로는 도 1에 도시된 바와 같은 고정 방식의 인트라 예측 시스템이 있는데, 이에 대하여 설명하면 다음과 같다.
종래의 고정 방식의 인트라 예측 시스템은, 도 1에 도시된 바와 같이, 메모리(10), 인트라 예측부(11), 및 예측 제어부(12)를 포함하여 이루어진다. 여기서, 인트라 예측부(11)는 입력 선택기(111), 16x16 휘도신호 생성기(112), 4x4 휘도신호 생성기(113), 색도신호 생성기(114), 및 출력 선택기(115)를 포함하여 이루어지고, 예측 제어부(12)는 제어기(121), 쓰기 어드레스 생성부(122), 읽기 어드레스 생성부(123), 및 쓰기/읽기 모드 수행부(124)를 포함하여 이루어진다.
입력 선택기(11)는 메모리부(10)에 저장된 영상데이터를 입력받고, 그 입력받은 영상데이터를 예측 제어부(12)의 제어에 따라 16x16 휘도신호 생성기(112), 4x4 휘도신호 생성기(113) 또는 색도신호 생성기(114))로 선택적으로 출력한다.
그러면, 16x16 휘도신호 생성기(112), 4x4 휘도신호 생성기(113), 및 색도신호 생성기(114)는 입력 선택기(111)로부터 각각에 대하여 입력된 데이터 성분에 대하여 제어기(FSM)(121)의 제어에 따라 각기 개별적으로 인트라 예측을 수행하며, 특히 16x16 휘도신호 생성기(112)와 4x4 휘도신호 생성기(113)는 병렬적으로 동작하는 것이 가능하다.
즉, 16x16 휘도신호 생성기(112)는 제어기(FSM)(121)의 제어에 따라, 입력 선택기(111)에서 출력된 16x16 휘도성분(휘도신호)에 대해 기설정된 각종 예측 모드들(도 7 참조) 중 어느 하나의 예측 모드(영상 인코더에서 사용되었던 해당 인트라 예측 모드)를 선택하여 인트라 예측을 수행한다. 이와 동시에 4x4 휘도신호 생성기(113)는 제어기(FSM)(121)의 제어에 따라, 입력 선택기(111)에서 출력된 4x4 휘도성분에 대해 기설정된 각종 예측 모드들(도 8 참조) 중 어느 하나의 예측 모드(영상 인코더에서 사용되었던 해당 인트라 예측 모드)를 선택하여 인트라 예측을 수행한다. 색도신호 생성기(114)는 16x16 휘도신호 생성기(112) 및 4x4 휘도신호 생성기(113)가 병렬 동작한 후에 동작하는 것으로서, 제어기(FSM)(121)의 제어에 따라, 입력 선택기(111)에서 출력된 색도성분(색도신호)에 대해 기설정된 각종 예측 모드들 중 어느 하나의 예측 모드(영상 인코더에서 사용되었던 해당 인트라 예측 모드)를 선택하여 인트라 예측을 수행한다.
이후, 출력 선택기(115)는 16x16 휘도신호 생성기(112), 4x4 휘도신호 생성기(113), 및 색도신호 생성기(114)로부터 예측 결과를 입력받은 후, 제어기(121)의 제어에 따라 다중화하여 출력한다.
한편, 예측 제어부(12)는 영상데이터를 메모리(10)에 쓰거나 메모리(10)에 저장된(쓰여진) 영상데이터를 인트라 예측부(11)로 읽어 오는 과정(영상데이터 쓰기/읽기)과 인트라 예측부(11)에서의 인트라 예측을 제어하는 기능을 수행한다. 이하, 예측 제어부(12)의 구성요소 각각에 대하여 설명하면, 다음과 같다.
제어기(121)는 인트라 예측부(11)에서의 인트라 예측 과정, 어드레스 생성기(122, 123)에서의 쓰기/읽기 어드레스 생성 과정, 쓰기/읽기 모드 수행부(124)에서의 영상데이터 쓰기/읽기 과정 등 인트라 예측 시스템의 전반적인 제어 과정을 수행한다.
쓰기 어드레스 생성부(122) 또는 읽기 어드레스 생성부(123)는 제어기(121)의 제어에 따라 쓰기 어드레스 또는 읽기 어드레스를 생성하며, 쓰기/읽기 모드 수행부(124)는 제어기(121)의 제어에 따라 쓰기 모드에서는 쓰기 어드레스를 사용하여 입력 영상데이터를 메모리(10)에 쓰고, 읽기 모드에서는 읽기 어드레스를 사용하여 메모리에 저장된 영상데이터를 읽어다가 입력 선택기(111)에 전달한다.
상기와 같은 종래의 인트라 예측 시스템은 병렬 구조와 메모리 구조를 통하여 시스템의 효율을 최대로 하여 수행 시간을 단축함과 동시에 하드웨어 비용을 줄이는 장점이 있다. 즉, 16x16 휘도 인트라 예측, 4x4 휘도 인트라 예측, 및 색도 인트라 예측을 수행하는데 1개의 메모리를 공유함으로써 메모리의 비용을 줄이고, 또한 16x16 휘도 인트라 예측 및 4x4 휘도 인트라 예측을 병렬로 처리함으로써 프로세싱의 처리 속도를 향상시키는 장점이 있다.
하지만, 상기와 같은 종래의 인트라 예측 시스템에서는 복호 대상이 되는 예측 대상 블럭(복호 단위)을 단순히 기존의 복호 순서에 따라 읽어 들이는 '고정 방식의 메모리 읽기'를 통하여 인트라 예측을 수행하기 때문에, 불필요한 데이터를 처리하는 시간으로 인하여 복호 처리 성능의 저하를 초래하는 문제가 있다.
즉, 고정 방식의 종래 기술은 불필요한 연산량으로 인한 방대한 연산을 수행해야 하기 때문에 동영상 복호화기에서는 실시간 영상 복호를 구현하는 것이 곤란하고, 또한 추가적인 내부 메모리의 구비로 인하여 시스템 크기 및 소모 전력을 증가시키는 문제가 있다. 또한, 종래 기술은 영상의 종류 및 응용분야에 따라서는, 불필요한 연산량으로 인하여 인트라 예측 알고리즘의 사용이 제한되는 문제점도 있다.
상기와 같은 종래 기술은 과도한 연산량으로 인하여 인트라 예측 성능 저하, 소모전력의 증가, 및 시스템 소형화 한계 등을 초래한다는 문제점이 있으며, 이러한 문제점을 해결하고자 하는 것이 본 발명의 과제이다.
즉, 본 발명은 영상 복호를 위하여 메모리에 저장된 영상데이터의 읽기를 수행함에 있어서, 예측 대상 블럭의 해당 예측 모드가 수평/수직모드에 해당하는지 여부를 기준으로 읽기 순위를 결정하고, 그 결정된 읽기 순위에 따라 해당 영상데이터의 읽기를 수행함으로써, 최소한의 연산량으로 신속하게 인트라 예측을 할 수 있게 하는, 인트라 예측을 위한 적응적 영상데이터 읽기 제어 장치 및 그 방법과, 그를 이용한 영상 복호를 위한 적응적 인트라 예측 시스템을 제공하는데 그 목적이 있다.
본 발명의 목적들은 이상에서 언급한 목적으로 제한되지 않으며, 언급되지 않은 본 발명의 다른 목적 및 장점들은 하기의 설명에 의해서 이해될 수 있으며, 본 발명의 실시예에 의해 보다 분명하게 알게 될 것이다. 또한, 본 발명의 목적 및 장점들은 특허 청구 범위에 나타낸 수단 및 그 조합에 의해 실현될 수 있음을 쉽게 알 수 있을 것이다.
본 발명은 상기 문제점을 해결하기 위하여, 예측 대상 블럭의 해당 예측 모드가 '수평/수직모드' 또는 '비(non) 수평/수직모드' 중 어느 모드에 해당하는지를 기준으로 읽기 순위를 결정하고, 그 결정된 읽기 순위에 따라 해당 영상데이터의 읽기를 수행하는 것을 특징으로 한다.
더욱 상세하게는, 본 발명은, 적응적 영상데이터 읽기 제어 장치에 있어서, 인트라 예측의 대상이 되는 예측 대상 블럭들에 대하여, 해당 예측 모드가 수평/수직모드 또는 비(Non) 수평/수직모드 중 어느 모드에 해당하는지를 기준으로 '해당 인트라 예측에 필요한 참조 데이터에 대한 읽기 순위'를 결정하기 위한 제어 수단; 상기 참조 데이터에 대한 읽기 어드레스를 생성하기 위한 읽기 어드레스 생성 수단; 및 상기 제어 수단에서 결정된 읽기 순위에 따라, 상기 읽기 어드레스 생성 수단에서 생성된 읽기 어드레스에 해당하는 영상데이터를 읽어들이기 위한 읽기모드 수행 수단을 포함한다.
또한, 본 발명은, 적응적 영상데이터 읽기 제어 방법에 있어서, 인트라 예측의 대상이 되는 예측 대상 블럭들에 대하여, 해당 예측 모드가 수평/수직모드 또는 비(Non) 수평/수직모드 중 어느 모드에 해당하는지를 기준으로 '해당 인트라 예측에 필요한 참조 데이터에 대한 읽기 순위'를 결정하는 순위 결정 단계; 상기 참조 데이터에 대한 읽기 어드레스를 생성하는 어드레스 생성 단계; 및 상기 결정된 읽기 순위에 따라, 상기 생성된 읽기 어드레스에 해당하는 영상데이터를 인트라 예측부로 읽어 들이는 읽기 단계를 포함한다.
또한, 본 발명은, 영상 복호를 위한 적응적 인트라 예측 시스템에 있어서, 영상 복호 대상이 되는 영상데이터를 휘도성분과 색도성분으로 분리하여 저장하는 저장 수단; 상기 저장된 영상데이터의 휘도성분 및 색도성분 각각에 대하여 영상 복호를 위한 인트라 예측을 수행하기 위한 인트라 예측 수단; 및 상기 영상데이터를 상기 저장 수단에 쓰거나 상기 저장 수단에 저장된 영상데이터를 상기 인트라 예측 수단으로 읽어 오는 과정(영상데이터 쓰기/읽기) 및 상기 인트라 예측 수행 과정을 제어하되, 예측 대상 블럭들에 대한 예측 모드가 수평/수직모드에 해당하는지에 따라 상기 영상데이터에 대한 읽기를 제어하기 위한 예측 제어 수단을 포함한다.
상기와 같은 본 발명은, 고정 방식의 메모리 읽기 방식을 사용하는 기존의 인트라 예측 기술과 달리, 예측 대상 블럭 크기 및 예측 모드의 유형에 따라 적응적으로 읽기 순위(영상데이터 읽기 순위)를 결정함으로써 연산량을 최소화할 수 있고, 이로 인하여 낮은 전력과 낮은 시스템 면적/크기를 가지는 고성능의 인트라 예측 시스템을 구현할 수 있는 효과가 있다.
또한, 본 발명은, 기존의 고정 방식에 비하여 매크로 블럭당 약 37%의 성능 개선 효과를 가지며, 그 개선된 성능으로 인하여 큰 화면인 VGA(640x480)나 D1(720x480)에서도 실시간 동작을 가능하게 하는 효과가 있다.
상술한 목적, 특징 및 장점은 첨부된 도면과 관련한 다음의 상세한 설명을 통하여 보다 분명해 질 것이며, 그에 따라 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자가 본 발명의 기술적 사상을 용이하게 실시할 수 있을 것이다. 또한, 본 발명을 설명함에 있어서 본 발명과 관련된 공지 기술에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우에 그 상세한 설명을 생략하기로 한다. 이하, 첨부된 도면을 참조하여 본 발명에 따른 바람직한 일실시예를 상세히 설명하기로 한다.
도 2는 본 발명에 따른 영상 복호를 위한 적응적 인트라 예측 시스템의 일실 시예 구성도이다.
이하에서는, 본 발명에 따른 인트라 예측을 위한 적응적 영상데이터 읽기 제어 장치(예측 제어부(22)가 읽기에만 관계된 경우) 및 그 방법도 함께 설명하기로 한다.
본 발명에 따른 적응적 인트라 예측 시스템은, 도 2에 도시된 바와 같이, 메모리(20), 인트라 예측부(21), 및 예측 제어부(22)를 포함하여 이루어진다.
먼저, 메모리(20)와 인트라 예측부(21)를 설명하기로 한다.
메모리(20)는 외부로부터 입력된 영상데이터를 휘도성분과 색도성분으로 분리하여 저장하는 것이고, 인트라 예측부(21)는 메모리(20)에 저장된 영상데이터의 휘도성분 및 색도성분 각각에 대하여 영상 복호를 위한 인트라 예측(16x16 휘도신호 생성, 4x4 휘도신호 생성, 색도신호 생성)을 수행하는 것이다.
여기서, 인트라 예측부(21)는 입력 선택기(211), 16x16 휘도신호 생성기(212), 4x4 휘도신호 생성기(213), 색도신호 생성기(214), 및 출력 선택기(215)를 포함하여 이루지며, 각각의 구성 요소의 기능은 다음과 같다.
입력 선택기(211)는 예측 제어부(22)의 제어에 따라, 메모리(20)에 저장된 영상데이터를 입력받아 16x16 휘도신호 생성기(212), 4x4 휘도신호 생성기(213), 또는 색도신호 생성기(214) 중 어느 하나로 출력한다.
그러면, 16x16 휘도신호 생성기(212), 4x4 휘도신호 생성기(213), 및 색도신호 생성기(214)는 입력 선택기(211)로부터 각각에 대하여 입력된 데이터 성분에 대하여 각기 개별적으로 인트라 예측을 수행한다.
즉, 16x16 휘도신호 생성기(212)는 제어기(FSM)(221)의 제어에 따라, 입력 선택기(211)에서 출력된 16x16 휘도성분(휘도신호)에 대해 기설정된 각종 예측 모드들(도 7 참조) 중 어느 하나의 예측 모드(영상 인코더에서 사용되었던 해당 인트라 예측 모드)를 선택하여 인트라 예측을 수행한다.
이와 동시에 4x4 휘도신호 생성기(213)는 제어기(FSM)(221)의 제어에 따라, 입력 선택기(211)에서 출력된 4x4 휘도성분에 대해 기설정된 각종 예측 모드들(도 8 참조) 중 어느 하나의 예측 모드(영상 인코더에서 사용되었던 해당 인트라 예측 모드)를 선택하여 인트라 예측을 수행한다.
색도신호 생성기(214)는 제어기(FSM)(221)의 제어에 따라, 입력 선택기(211)에서 출력된 색도성분(색도신호)에 대해 기설정된 각종 예측 모드들 중 어느 하나의 예측 모드(영상 인코더에서 사용되었던 해당 인트라 예측 모드)를 선택하여 인트라 예측을 수행한다.
이후, 출력 선택기(215)는 16x16 휘도신호 생성기(212), 4x4 휘도신호 생성기(213), 및 색도신호 생성기(214)로부터 예측 결과를 입력받은 후, 제어기(FSM)(221)의 제어에 따라 다중화하여 출력한다.
다음은, 예측 제어부(22)에 대하여 상세히 설명하기로 한다.
예측 제어부(22)는 영상데이터를 메모리(20)에 쓰거나 메모리(20)에 저장된 영상데이터를 인트라 예측부(21)로 읽어 오는 과정(영상데이터 쓰기/읽기)을 제어하고 또한 인트라 예측부(21)에서의 인트라 예측을 제어하되, 예측 대상 블럭들에 대한 예측 모드가 수평/수직모드 또는 비(non) 수평/수직모드에 해당하는지에 따라 영상데이터 읽기를 제어하는 것을 특징으로 하며, 더욱 상세하게는 제어기(221), 쓰기 어드레스 생성부(222), 읽기 어드레스 생성부(223), 및 쓰기/읽기 모드 수행부(224)를 포함하여 이루어지는데, 각각의 구성요소에 대하여 설명하면, 다음과 같다.
제어기(221)는 영상데이터 쓰기/읽기 및 인트라 예측 등 인트라 예측 시스템의 전반적인 제어를 수행하되, 특히 예측의 대상이 되는 예측 대상 블럭들에 대하여 해당 예측 모드가 수평/수직모드 또는 비(Non) 수평/수직모드 중 어느 모드에 해당하는지를 기준으로 '해당 인트라 예측에 필요한 참조 데이터에 대한 읽기 순위'를 결정한다. 여기서, 해당 예측 모드가 수평/수직모드 또는 비(Non) 수평/수직모드 중 어느 모드에 해당하는지는 '영상 인코더에서 사용되었던 예측 모드'를 통하여 확인할 수 있다. 이하, 제어기(221)에서의 읽기 순위 결정에 대하여 상세히 살펴보면, 다음과 같다.
먼저, 예측 대상 블럭이 '휘도성분'에 대한 블럭인 경우에는, 해당 예측 대상 블럭의 크기가 큰 블럭에 대하여 우선 순위를 부여하고, 동일한 크기의 예측 대상 블럭들 간에는 수평/수직모드에 해당하는 블럭에 대하여 우선 순위를 부여한다. 즉, 인트라 예측부(21)에서 16x16 휘도 예측 및 4x4 휘도 예측이 수행되는 경우의 읽기 순위 결정 과정은, 16x16 휘도 예측 모드 블럭에 대해서는 4x4 휘도 예측 모드 블럭보다 우선 순위를 부여하고, 동일한 크기의 휘도 예측 모드 블럭 간에는 수평/수직모드에 해당하는 블럭에 대하여 비(non) 수평/수직모드에 대한 블럭보다 우선 순위를 부여하는 것을 특징으로 한다.
다음으로, 예측 대상 블럭이 색도성분에 대한 블럭(8x8 색도 예측 모드 블럭)인 경우의 읽기 순위 결정 과정은, 해당 예측 모드가 수평/수직모드에 해당하는 블럭에 대하여 비(Non) 수평/수직모드에 해당하는 블럭보다 우선 순위를 부여하는 것을 특징으로 한다.
한편, 쓰기 모드의 경우에는 쓰기 어드레스 생성부(222)가 구동되어, 제어기(221)의 제어에 따라 입력 영상데이터를 메모리(20)에 쓰는데 필요한 쓰기 어드레스를 생성한다. 한편, 읽기 모드의 경우에는 읽기 어드레스 생성부(223)가 구동되어, 제어기(221)의 제어에 따라 '해당 인트라 예측에 필요한 참조 데이터'에 대한 읽기 어드레스를 생성한다.
읽기 어드레스 생성부(223)는 예측 대상 블럭이 '휘도성분'에 대한 블럭인 경우에는, 16x16 수평/수직모드 어드레스(2231), 16x16 비(non) 수평/수직모드 어드레스(2232), 4x4 수평/수직모드 어드레스(2233), 또는 4x4 비(non) 수평/수직모드 어드레스(2234)로 구분하여 생성하고, 예측 대상 블럭이 '색도성분'에 대한 블럭인 경우에는 8x8 수평/수직모드 어드레스(2235) 또는 8x8 비(non) 수평/수직모드 어드레스(2236)로 구분하여 생성한다.
그러면, 쓰기/읽기 모드 수행부(224)는 쓰기 어드레스 생성부(222) 또는 읽기 어드레스 생성부(223)에서 생성된 어드레스를 이용하여 제어기(221)의 제어에 따라 쓰기/읽기 모드 중 어느 하나를 수행하되, 특히 영상데이터 읽기는 제어기(221)에서 결정된 읽기 순위에 따라 수행한다.
예를 들어, 휘도성분에 대하여 읽기를 수행하는 경우, 쓰기/읽기 모드 수행 부(224)는 16x16 수평/수직모드 어드레스 → 16x16 비(non) 수평/수직모드 어드레스 → 4x4 수평/수직모드 어드레스 → 4x4 비(non) 수평/수직모드 어드레스의 순서대로 해당 영상데이터의 읽기를 수행하되, 선순위에 대한 읽기가 종료된 후에 다음 순위에 대한 읽기를 시작한다. 그리고 색도성분에 대한 읽기를 수행하는 경우에는 8x8 수평/수직모드 어드레스 → 8x8 비(non) 수평/수직모드 어드레스의 순서대로 해당 영상데이터의 읽기를 수행한다.
도 3은 본 발명에 따른 인트라 예측을 위한 적응적 영상데이터 읽기 제어 방법에 대한 일실시예 흐름도로서, 휘도신호에 대한 읽기 순위를 결정하는 방법을 타낸다.
먼저, 영상 복호를 위한 인트라 예측의 대상이 되는 예측 대상 블럭(복호 단위)에 대하여 영상 인코더에서 사용되었던 예측 모드가 16x16 휘도 모드인지를 확인하여(300), 16x16 휘도 모드이면 다시 수평/수직 예측 모드인지를 확인하여(302), 수평/수직 예측 모드에 대해서는 읽기 순위를 제1순위로 하여 해당 수평/수직 어드레스를 생성하고(304), 비(Non) 수평/수직 예측 모드에 대해서는 읽기 순위를 제2순위로 하여 해당 수평/수직 어드레스를 생성한다(306). 여기서, 수직 예측 모드(모드 0)와 수직 예측 모드(모드 1) 간에는 읽기 순위의 우열이 없으며, 어느 것을 먼저 수행해도 상관없다. 또한, 비(Non) 수평/수직 예측 모드에는 DC 예측 모드(모드 2), 플레인 예측 모드(모드 4)가 있으며, 이들 간에도 읽기 순위의 우열이 없다.
한편, 예측 모드가 4x4 휘도 모드인 경우에도(300), 16x16 휘도 모드인 경우 와 동일하게 다시 수평/수직모드인지를 확인하여(308), 수평/수직모드에 대해서는 읽기 순위를 제3순위로 하여 해당 수평/수직 어드레스를 생성하고(310), 비(Non) 수평/수직모드에 대해서는 읽기 순위를 제4순위로 하여 해당 수평/수직 어드레스를 생성한다(312).
여기서, 수직 예측 모드(모드 0)와 수직 예측 모드(모드 1) 간에는 읽기 순위의 우열이 없으며, 어느 것을 먼저 수행해도 상관없다. 또한, 비(Non) 수평/수직 예측 모드에는 DC 예측 모드(모드 2), 대각선 다운-왼쪽 예측(모드 3), 대각선 다운-오른쪽 예측 모드(모드 4), 수평-왼쪽 예측 모드(모드 5), 수평-다운 예측 모드(모드 6), 수직-오른쪽 예측 모드(모드 7), 및 수평-업 예측 모드(모드 8)가 포함되며, 이들 모드 간에는 읽기 순위의 우열이 없다.
즉, 4x4 휘도 모드에서는 9가지 동작 모드(예측 모드)가 있는데, 이 중에서 수평/수직 예측 모드에 대해서는 읽기 순위에 있어서 우선권을 부여한다.
요컨대, 본 발명은, 인트라 예측의 효율성을 높일 수 있도록, (1) 16x16 휘도 모드를 4x4 휘도 모드보다 우선적으로 처리(읽기)하고, (2) 동일한 16x16 휘도 모드 또는 4x4 휘도 모드 내에서는 수평/수직모드를 비(Non) 수평/수직모드보다 우선적으로 처리(읽기)하는 것을 특징으로 한다.
상기와 같이, 수평/수직 예측 모드에 대하여 우선적으로 읽기를 수행하는 이유는, 'Foreman CIF' 영상으로 시뮬레이션을 수행하여 그 결과를 살펴보면, 수평수직 예측 모드가 전체의 50% 이상을 차지하기 때문에 우선적으로 처리하는 것이다.
이상, 도 3을 통하여 휘도성분에 대한 읽기 순위 결정 방법에 대하여 설명하 였으나, 색도성분에 대해서도 동일한 방식이 적용됨은 물론이다.
도 4는 본 발명에 따른 적응적 인트라 예측을 적용하는 경우의 싸이클 이득에 대한 설명도이다
4x4 휘도성분에 대한 메모리 쓰기/읽기를 살펴보면, 종래의 고정 방식을 사용한 경우(400)에서는 총 241 싸이클이 수행되지만, 본 발명을 사용한 경우(410)에는 총 153 싸이클이 수행됨을 알 수 있다.
구체적으로 살펴보면, 4x4 휘도성분의 영상데이터를 메모리(10, 20)에 쓸(Write) 때에는 종래 방식이나 본 발명에서는 33 싸이클이 수행되지만, 이렇게 메모리에 저장된 영상데이터(4x4 휘도성분)을 읽어다가 인트라 예측부(11, 21)에 입력시킬 때에는 종래의 고정 방식을 사용하는 경우에는 약 208 싸이클(401)이 수행되지만, 본 발명에서는 특별히 설정된 읽기 순위에 따라 영상데이터 읽기가 수행되는 바, 약 120 사이클(411)이 수행된다. 이와 같은 이유는 종래기술의 경우 고정 방식이므로, 모든 영상 데이터를 순차적으로 읽어와야 하는 반면에 본 발명의 경우 우선 순위가 높아 이미 읽어 온 데이터들은 제외하고 읽어오기 때문에 4x4의 경우 읽기 싸이클이 줄어들게 된다. 이는 종래기술과 본 발명을 대비하여 살펴볼 때, 평균적으로 보았을 때 약 37%(241 싸이클에서 153 싸이클로 감소)의 개선효과가 있음을 알 수 있다.
도 5는 본 발명에 적용되는 인트라 공간 예측에 대한 샘플의 정의도로서, 4x4 블럭에 대한 인트라 예측을 나타낸다.
a ~ p(50)는 4x4 블럭에 포함된 샘플이며, A~Q는 블럭에 이웃하는 샘플들이다. 또한, 샘플 A~Q는 예측을 위해 이미 디코딩되어 있어야 하며, 이것이 참조 데이터로 사용되는 것이다.
샘플이 픽쳐(picture)의 바깥쪽이거나 현재 슬라이스의 바깥쪽에 존재하는 경우, 하나의 매크로블럭이 현재의 매크로블럭에 연속적으로 래스터 스캔 순으로 포함되어 있는 경우, 움직임 보상의 블럭(16x16 블럭에서 4x4 블럭까지) 순서대로 현재의 4x4 블럭에 대해서 연관성이 있는 것처럼 보내지는 경우, 인트라 매크로블럭이 아니거나 구속 인트라 예측값(constrained_intra_pred)의 값이 "1"인 경우에는 인트라 예측을 수행하지 않는다. 즉, 위에서 열거한 조건에서는 어떠한 샘플도 A-Q를 고려하지 않는다.
만약에 샘플데이터 E~H가 유용하지 않으면(아직 디코딩되지 않았다면), E~H 샘플값은 D의 샘플값으로 대치된다. 또한, 샘플데이터 M~P가 유용하지 않으면(아직 디코딩되지 않았다면) M~P 샘플값은 L의 샘플값으로 대치된다.
도 6은 본 발명에 적용되는 인트라 예측 모드들의 방향에 대한 설명도로서, 4x4 휘도성분들의 예측 모드를 나타낸다.
즉, 도 6에서의 화살표 방향은, 모드 0(수직 예측), 모드 1(수평 예측), 모드 2(DC), 모드 3(대각선 다운-왼쪽 예측), 모드 4(대각선 다운-오른쪽 예측), 모드 5(수평-왼쪽 예측), 모드 6(수평-다운 예측), 모드7(수평-오른쪽 예측), 모드8(수평-업 예측) 등과 같은 각각의 모드들의 예측 방향을 나타낸다.
도 7은 본 발명에 적용되는 4x4 휘도 예측 모드에 대한 예측 동작도로서, 4x4 휘도신호 생성기(213)에서 수행되는 인트라 예측 과정을 나타낸다.
휘도신호에 대해서는 도 7에 도시된 바와 같이 모드 0, 모드 1, 모드 2, 모드 3, 모드 4, 모드 5, 모드 6, 모드 7, 및 모드 8과 같이 총 9가지의 인트라 예측을 수행하며, 여기서 모드 2는 DC 예측이다. 이하, 각각의 모드(Mode)에 대하여 설명하기로 한다.
[ 모드 0] : 수직 예측(Vertical Prediction)
모드 0은 A, B, C, D가 유효할 때, 아래와 같이 수행된다.
- a, e, i, m 은 A로 예측
- b, f, j, n 은 B로 예측
- c, g, k, o 는 C로 예측
- d, h, l, p 는 D로 예측
[ 모드 1] : 수평 예측(Horizontal Prediction)
모드 1은 I, J, K, L이 유효할 때, 예측은 아래와 같이 수행된다.
- a, b, c, d 는 I로 예측
- e, f, g, h 는 J로 예측
- i, j, k, l 은 K로 예측
- m, n, o, p 는 L로 예측
[ 모드 2] : DC 예측
첫째, 만약에 A, B, C, D, I, J, K, L이 모두 유효하면, 모든 샘플들은 (A+B+C+D+I+J+K+L+4)>>3로 예측되어 진다. 둘째, A, B, C, 및 D가 유효하지 않고, I, J, K, 및 L이 유효하면 (I+J+K+L+2)>>2로 예측되어 진다. 셋째, I, J, K, 및 L이 유효하지 않고, A, B, C, 및 D가 유효하면, 모든 샘플들은 (A+B+C+D+2)>>2로 예측되어 진다. 넷째, 만약에 8개의 샘플이 모두 유효하지 않으면, 4x4 블럭에서 예 측되는 값은 128로 셋팅된다.
[ 모드 3] : 대각선 다운-왼쪽 예측(Diagonal Down-Left Prediction)
이 모드는 A, B, C, D, I, J, K, L, Q 값이 유효할 때, 아래와 같은 방식으로 예측을 수행하는데, 이를 '대각선 예측'이라고 한다.
- a is predicted by (A + 2B + C + I + 2J + K + 4) >> 3
- b, e are predicted by (B + 2C + D + J + 2K + L + 4) >> 3
- c, f, i are predicted by (C + 2D + E + K + 2L + M + 4) >> 3
- d, g, j, m are predicted by (D + 2E + F + L + 2M + N + 4) >> 3
- h, k, n are predicted by (E + 2F + G + M + 2N + O + 4) >> 3
- l, o are predicted by (F + 2G + H + N + 2O + P + 4) >> 3
- p is predicted by (G + H + O + P + 2) >> 2
여기서, >>는 오른쪽 쉬프트 연산자를 나타낸다.
[ 모드 4]: 대각선 다운-오른쪽 예측(Diagonal Down-Right Prediction)
이 모드는 A, B, C, D, I, J, K, L, Q 값이 유효할 때, 아래와 같은 방식의 '대각선 예측'을 수행한다.
- m is predicted by (J + 2K + L + 2) >> 2
- i, n are predicted by (I + 2J + K + 2) >> 2
- e, j, o are predicted by (Q + 2I + J + 2) >> 2
- a, f, k, p are predicted by (A + 2Q + I + 2) >> 2
- b, g, l are predicted by (Q + 2A + B + 2) >> 2
- c, h are predicted by (A + 2B + C + 2) >> 2
- d is predicted by (B + 2C + D + 2) >> 2
[ 모드 5]: 수직-오른쪽 예측(Vertical-Right Prediction)
이 모드는 A, B, C, D, I, J, K, L, Q가 유효할 때 사용하며, 아래와 같이 예측을 수행한다.
- a is predicted by (2A + 2B + J + 2K + L + 4) >> 3
- b, i are predicted by (B + C + 1) >> 1
- c, j are predicted by (C + D + 1) >> 1
- d, k are predicted by (D + E + 1) >> 1
- l is predicted by (E + F + 1) >> 1
- e is predicted by (A + 2B + C + K + 2L + M + 4) >> 3
- f, m are predicted by (B + 2C + D + 2) >> 2
- g, n are predicted by (C + 2D + E + 2) >> 2
- h, o are predicted by (D + 2E + F + 2) >> 2
- p is predicted by (E + 2F + G + 2) >> 2
[ 모드 6]: 수평-다운 예측(Horizontal-Down Prediction)
이 모드는 A, B, C, D, I, J, K, L, Q가 유효할 때, 아래와 같은 방식의 '대각선 예측'을 수행한다.
- a, g are predicted by (Q + I + 1) >> 1
- b, h are predicted by (I + 2Q + A+ 2) >> 2
- c is predicted by (Q + 2A + B+ 2) >> 2
- d is predicted by (A + 2B + C+ 2) >> 2
- e, k are predicted by (I + J + 1) >> 1
- f, l are predicted by (Q + 2I + J+ 2) >> 2
- i, o are predicted by (J + K + 1) >> 1
- j, p are predicted by (I + 2J + K+ 2) >> 2
- m is predicted by (K + L + 1) >> 1
- n is predicted by (J + 2K + L + 2) >> 2
[ 모드 7]: 수평-왼쪽 예측(Vertical-Left Prediction)
이 모드는 A, B, C, D, I, J, K, L, Q가 슬라이스 안쪽에서 유효할 때, 아래와 같은 방식의 '대각선 예측'을 수행한다.
- a, j are predicted by (Q + A + 1) >> 1
- b, k are predicted by (A + B + 1) >> 1
- c, l are predicted by (B + C + 1) >> 1
- d is predicted by (C + D + 1) >> 1
- e, n are predicted by (I + 2Q + A + 2) >> 2
- f, o are predicted by (Q + 2A + B + 2) >> 2
- g, p are predicted by (A + 2B + C + 2) >> 2
- h is predicted by (B + 2C + D + 2) >> 2
- i is predicted by (Q + 2I + J + 2) >> 2
- m is predicted by (I + 2J + K + 2) >> 2
[ 모드 8]: 수평-업 예측(Horizontal-Up Prediction)
이 모드는 A, B, C, D, I, J, K, L, Q가 유효할 때 사용하며 아래와 같이 예측을 수행한다.
- a is predicted by (B + 2C + D + 2I + 2J + 4) >> 3
- b is predicted by (C + 2D + E + I + 2J + K + 4) >> 3
- c, e are predicted by (J + K + 1) >> 1
- d, f are predicted by (J + 2K + L + 2) >> 2
- g, i are predicted by (K + L + 1) >> 1
- h, j are predicted by (K + 2L + M + 2) >> 2
- l, n are predicted by (L + 2M + N + 2) >> 2
- k, m are predicted by (L + M + 1) >> 1
- o is predicted by (M + N + 1) >> 1
- p is predicted by (M + 2N + O + 2) >> 2
도 8은 본 발명에 적용되는 16x16 휘도 예측 모드에 대한 예측 동작도로서, 16x16 휘도신호 생성기(212)에서 수행되는 인트라 예측 과정을 나타낸다.
16x16 휘도 예측 모드에서는 4x4 휘도 예측 모드(도 7 참조)와 달리, 매크로블럭 전체의 16x16 휘도성분이 한 번의 동작으로 예측될 수 있으며, 이에는 4가지 모드가 있다.
16x16 휘도 예측은, 수평으로는 0-15 샘플과 수직적으로 0-15 샘플값을 이용하여 각각의 예측 모드를 수행한다. P(x,y)(또는 Pred(x, y)라 표현할 수도 있음)의 표현 방법은 수평방향으로는 x = 0,...,15로 위치를 표시하고, 수직방향으로는 y = 0,...,15로 위치를 표시한다. P(x,-1), x = 0,...,15에 대한 샘플은 블럭의 이웃하는 윗 블럭을 참조하며, P(-1,y), y = 0,...,15인 경우는 이웃하는 왼쪽 블럭을 참조하여 예측한다. 샘플 P(x, -1) 또는 P(-1,y)는 ①샘플이 픽쳐의 바깥영역이거나 현재의 슬라이스가 아닌 경우, ②샘플이 비(non) 인트라 매크로블럭이고 'contrained_intra_pred'의 값이 “1”인 경우에는 고려하지 않는다
[ 모드 0]: 수직 예측(Vertical Prediction)
모드 0은 모든 이웃하는 샘플 P(x, -1)(H)이 유효한 경우로서, 아래의 [수학식 1]에 의하여 인트라 예측값이 구해진다.
Pred(x, y) = P(x, -1), x=0,...,15
[ 모드 1]: 수평 예측(Horizontal Prediction)
모드 1은 모든 이웃하는 샘플 P(-1,y)(V)가 유효한 경우로서, 아래의 [수학식 2]에 의하여 인트라 예측값이 구해진다.
Pred(x, y) = P(-1, y), y=0,...,15
[ 모드 2]: DC 예측(DC prediction)
모드 2는 모든 이웃하는 샘플들(H, V)이 유효한 경우로서, 아래의 [수학식 3]과 같이 예측값이 구해진다.
Figure 112007066366794-pat00001
만약, 샘플 P(x, -1)(H)은 유효하지 않고, 이웃 샘플 P(-1, y)(V)는 유효하 면, 모든 휘도 샘플의 예측은 다음의 [수학식 4]와 같이 수행된다.
Figure 112007066366794-pat00002
이와 반대로, 샘플 P(-1, y)는 유효하지 않고, 이웃 샘플 P(x, -1)은 유효하면, 모든 휘도 샘플의 예측은 다음의 [수학식 5]와 같이 수행된다.
Figure 112007066366794-pat00003
만약, 이웃 샘플 P(x,-1)과 P(-1,y)가 모두 유효하지 않으면, 휘도 샘플들에 대한 예측값은 "128"로 셋팅된다.
[ 모드 3]: 플레인 예측(Plane Prediction)
모드 3은 모든 이웃하는 샘플 P(x, -1) 및 P(-1, y)가 유효하면, 다음의 [수학식 6]과 같이 수행된다.
Figure 112007066366794-pat00004
여기서, H(위쪽 샘플)와 V(왼쪽 샘플)는 아래의 [수학식 7]과 같이 정의된다.
Figure 112007066366794-pat00005
이하, 색도신호 생성기(214)에서 수행되는 '색도블럭에 대한 인트라 코딩 예측'에 대하여 설명하기로 한다.
인트라 매크로블럭들에 대한 색도블럭에 대한 처리 방법은, 4개의 예측 모드를 이용하는 인트라 16x16 매크로 블럭의 휘도블럭 처리 방법과 매우 유사하다. 동일한 예측 모드는 2개의 색도블럭에 적용된다. 그러나 그것은 휘도에 적용되었던 것과는 독립적으로 적용된다.
8x8 휘도에서는, 수평으로는 샘플 0-7과 수직적으로 샘플 0-7의 값을 이용하여 예측 모드를 수행한다. P(x,y) 표현 방법을 살펴보면, 수평방향으로는 x = 0,...,7로 위치를 표현하고, 수직방향으로는 y = 0,...,7로 위치를 표시한다. P(x,-1), x = 0,...,7에 대한 샘플은 블럭의 이웃하는 윗블럭을 참조하며, P(-1,y), y = 0,...,7인 경우는 이웃하는 왼쪽 블럭을 예측에 참조한다.
샘플 P(x, -1)이거나 P(-1,y)는 다음의 경우에는 고려하지 않는다. 즉, ① 샘플이 픽쳐의 바깥영역이거나 현재의 슬라이스가 아닌 경우, ② 샘플이 비(non) 인트라 매크로블럭이고 구속 인트라 예측(contrained_intra_pred)의 값이 “1”이며 P(x,y)가 유효하지 않은 경우는 "128" 값으로 셋팅한다.
[ 모드 0]: 수직 예측
모드 0은 다음의 [수학식 8]에 의하여 예측된다.
Figure 112007066366794-pat00006
[ 모드 1]: 수평예측(Horizontal Prediction)
모드 1은 다음의 [수학식 9]에 의하여 예측된다.
Figure 112007066366794-pat00007
[ 모드 2]: DC 예측
만약에 모든 샘플들, 즉 P(-1,n)과 P(n,-1)이 유효하면, 아래의 [수학식 10]으로 표현된다.
Figure 112007066366794-pat00008
만약에 8개 샘플인 P(-1,n)이 유효하지 않다면, 다음의 [수학식 11]에 의하여 예측된다.
Figure 112007066366794-pat00009
만약에 8개 샘플인 P(n, -1)이 유효하지 않다면, 다음의 [수학식 12]에 의하여 예측된다.
Figure 112007066366794-pat00010
만약에 모든 16개의 샘플 값이 유효하지 않다면, 예측 Pred(x,y)값은 모든 샘플 x,y = 0…7에 대해서 128의 값을 가진다.
[ 모드 3]: 플레인 예측(Plane Prediction)
플레인 모드인 경우에는 다음의 [수학식 13]과 같이 예측된다.
Figure 112007066366794-pat00011
여기서, H(위쪽 샘플)와 V(왼쪽 샘플)는 아래의 [수학식 14]와 같다.
Figure 112007066366794-pat00012
상술한 바와 같은 본 발명의 방법은 프로그램으로 구현되어 컴퓨터로 읽을 수 있는 형태로 기록매체(씨디롬, 램, 롬, 플로피 디스크, 하드 디스크, 광자기 디스크 등)에 저장될 수 있다. 이러한 과정은 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자가 용이하게 실시할 수 있으므로 더 이상 상세히 설명하지 않기로 한다.
이상에서 설명한 본 발명은, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 있어 본 발명의 기술적 사상을 벗어나지 않는 범위 내에서 여러 가지 치환, 변형 및 변경이 가능하므로 전술한 실시예 및 첨부된 도면에 의해 한정되는 것이 아니다.
도 1은 종래의 고정 방식의 인트라 예측 시스템의 구성도,
도 2는 본 발명에 따른 영상 복호를 위한 적응적 인트라 예측 시스템의 일실시예 구성도,
도 3은 본 발명에 따른 인트라 예측을 위한 적응적 영상데이터 읽기 제어 방법에 대한 일실시예 흐름도,
도 4는 본 발명에 따른 적응적 인트라 예측을 적용하는 경우의 싸이클 이득에 대한 설명도,
도 5는 본 발명에 적용되는 인트라 공간 예측에 대한 샘플의 정의도,
도 6은 본 발명에 적용되는 인트라 예측 모드들의 방향에 대한 설명도,
도 7은 본 발명에 적용되는 4x4 휘도 예측 모드에 대한 예측 동작도,
도 8은 본 발명에 적용되는 16x16 휘도 예측 모드에 대한 예측 동작도이다.
* 도면의 주요 부분에 대한 부호의 설명
20: 메모리 21: 인트라 예측부
22: 예측 제어부 221: 제어기
222: 쓰기 어드레스 생성부 223: 읽기 어드레스 생성부
224: 쓰기/읽기 모드 수행부

Claims (18)

  1. 적응적 영상데이터 읽기 제어 장치에 있어서,
    인트라 예측의 대상이 되는 예측 대상 블럭들에 대하여, 해당 예측 모드가 수평/수직모드 또는 비(Non) 수평/수직모드 중 어느 모드에 해당하는지를 기준으로 '해당 인트라 예측에 필요한 참조 데이터에 대한 읽기 순위'를 결정하기 위한 제어 수단;
    상기 참조 데이터에 대한 읽기 어드레스를 생성하기 위한 읽기 어드레스 생성 수단; 및
    상기 제어 수단에서 결정된 읽기 순위에 따라, 상기 읽기 어드레스 생성 수단에서 생성된 읽기 어드레스에 해당하는 영상데이터를 읽어들이기 위한 읽기모드 수행 수단
    을 포함하는 적응적 영상데이터 읽기 제어 장치.
  2. 제 1 항에 있어서,
    상기 제어 수단은,
    상기 읽기 순위를 결정함에 있어서, 상기 예측 대상 블럭이 휘도성분에 대한 블럭인 경우, 해당 예측 대상 블럭의 크기가 큰 블럭에 대하여 높은 우선 순위를 부여하고, 동일한 크기의 예측 대상 블럭들 간에는 상기 수평/수직모드에 해당하는 블럭에 대하여 상기 비(Non) 수평/수직모드에 해당하는 블럭보다 높은 우선 순위를 부여하는 것을 특징으로 하는 적응적 영상데이터 읽기 제어 장치.
  3. 제 2 항에 있어서,
    상기 제어 수단은,
    인트라 예측부가 16x16 휘도 예측 및 4x4 휘도 예측을 수행하는 경우, 16x16 휘도 예측 모드 블럭에 대해서는 4x4 휘도 예측 모드 블럭보다 높은 우선 순위를 부여하고, 동일한 크기의 휘도 예측 모드 블럭 간에는 상기 수평/수직모드에 해당하는 블럭에 대하여 상기 비(non) 수평/수직모드에 대한 블럭보다 높은 우선 순위를 부여하는 것을 특징으로 하는 적응적 영상데이터 읽기 제어 장치.
  4. 제 3 항에 있어서,
    상기 어드레스 생성 수단은,
    상기 예측 대상 블럭이 휘도성분에 대한 블럭인 경우, 16x16 수평/수직모드 어드레스, 16x16 비(non) 수평/수직모드 어드레스, 4x4 수평/수직모드 어드레스, 또는 4x4 비(non) 수평/수직모드 어드레스로 구분하여 생성하는 것을 특징으로 하는 적응적 영상데이터 읽기 제어 장치.
  5. 제 4 항에 있어서,
    상기 읽기모드 수행 수단은,
    상기 16x16 수평/수직모드 어드레스, 상기 16x16 비(non) 수평/수직모드 어드레스, 상기 4x4 수평/수직모드 어드레스, 및 상기 4x4 비(non) 수평/수직모드 어드레스의 순서대로 해당 영상데이터의 읽기를 수행하되, 선순위에 대한 읽기가 종료된 후에 다음 순위에 대한 읽기를 시작하는 것을 특징으로 하는 적응적 영상데이터 읽기 제어 장치.
  6. 제 1 항에 있어서,
    상기 제어 수단은,
    상기 읽기 순위를 결정함에 있어서, 상기 예측 대상 블럭이 색도성분에 대한 블럭이면, 상기 해당 예측 모드가 상기 수평/수직모드에 해당하는 블럭에 대하여 상기 비(Non) 수평/수직모드에 해당하는 블럭보다 높은 우선 순위를 부여하는 것을 특징으로 하는 적응적 영상데이터 읽기 제어 장치.
  7. 제 6 항에 있어서,
    상기 어드레스 생성 수단은,
    상기 예측 대상 블럭이 색도성분에 대한 블럭인 경우, 8x8 수평/수직모드 어드레스와 8x8 비(non) 수평/수직모드 어드레스로 구분하여 생성하는 것을 특징으로 하는 적응적 영상데이터 읽기 제어 장치.
  8. 제 7 항에 있어서,
    상기 읽기모드 수행 수단은,
    상기 8x8 수평/수직모드 어드레스 및 상기 8x8 비(non) 수평/수직모드 어드레스의 순서대로 해당 영상데이터의 읽기를 수행하되, 선순위에 대한 읽기가 종료된 후에 다음 순위에 대한 읽기를 시작하는 것을 특징으로 하는 적응적 영상데이터 읽기 제어 장치.
  9. 제 1 항 내지 제 8 항 중 어느 한 항에 있어서,
    상기 제어 수단은,
    상기 예측 대상 블럭에 대하여 영상 인코더에서 사용되었던 예측 모드를 통해, 상기 수평/수직모드 또는 상기 비(Non) 수평/수직모드에 해당하는지를 확인하는 것을 특징으로 하는 적응적 영상데이터 읽기 제어 장치.
  10. 적응적 영상데이터 읽기 제어 방법에 있어서,
    인트라 예측의 대상이 되는 예측 대상 블럭들에 대하여, 해당 예측 모드가 수평/수직모드 또는 비(Non) 수평/수직모드 중 어느 모드에 해당하는지를 기준으로 '해당 인트라 예측에 필요한 참조 데이터에 대한 읽기 순위'를 결정하는 순위 결정 단계;
    상기 참조 데이터에 대한 읽기 어드레스를 생성하는 어드레스 생성 단계; 및
    상기 결정된 읽기 순위에 따라, 상기 생성된 읽기 어드레스에 해당하는 영상데이터를 인트라 예측부로 읽어 들이는 읽기 단계
    를 포함하는 적응적 영상데이터 읽기 제어 방법.
  11. 제 10 항에 있어서,
    상기 순위 결정 단계는,
    상기 예측 대상 블럭이 휘도성분에 대한 블럭인 경우, 해당 예측 대상 블럭의 크기가 큰 블럭에 대하여 높은 우선 순위를 부여하고, 동일한 크기의 예측 대상 블럭들 간에는 상기 수평/수직모드에 해당하는 블럭에 대하여 높은 우선 순위를 부여하는 것을 특징으로 하는 적응적 영상데이터 읽기 제어 방법.
  12. 제 11 항에 있어서,
    상기 읽기 단계는,
    16x16 수평/수직모드 어드레스, 16x16 비(non) 수평/수직모드 어드레스, 4x4 수평/수직모드 어드레스, 및 4x4 비(non) 수평/수직모드 어드레스의 순서대로 해당 영상데이터의 읽기를 수행하는 것을 특징으로 하는 적응적 영상데이터 읽기 제어 방법.
  13. 제 10 항 내지 제 12 항 중 어느 한 항에 있어서,
    상기 순위 결정 단계는,
    상기 예측 대상 블럭이 색도성분에 대한 블럭인 경우, 상기 해당 예측 모드가 상기 수평/수직모드에 해당하는 블럭에 대하여 상기 비(Non) 수평/수직모드에 해당하는 블럭보다 높은 우선 순위를 부여하는 것을 특징으로 하는 적응적 영상데이터 읽기 제어 방법.
  14. 제 13 항에 있어서,
    상기 읽기 단계는,
    8x8 수평/수직모드 어드레스 및 8x8 비(non) 수평/수직모드 어드레스의 순서대로 해당 영상데이터의 읽기를 수행하는 것을 특징으로 하는 적응적 영상데이터 읽기 제어 방법.
  15. 영상 복호를 위한 적응적 인트라 예측 시스템에 있어서,
    영상 복호 대상이 되는 영상데이터를 휘도성분과 색도성분으로 분리하여 저장하는 저장 수단;
    상기 저장된 영상데이터의 휘도성분 및 색도성분 각각에 대하여 영상 복호를 위한 인트라 예측을 수행하기 위한 인트라 예측 수단; 및
    상기 영상데이터를 상기 저장 수단에 쓰거나 상기 저장 수단에 저장된 영상데이터를 상기 인트라 예측 수단으로 읽어 오는 과정(영상데이터 쓰기/읽기) 및 상기 인트라 예측 수행 과정을 제어하되, 예측 대상 블럭들에 대한 예측 모드가 수평/수직모드에 해당하는지에 따라 상기 영상데이터에 대한 읽기를 제어하기 위한 예측 제어 수단
    을 포함하는 영상 복호를 위한 적응적 인트라 예측 시스템.
  16. 제 15 항에 있어서,
    상기 예측 제어 수단은,
    상기 영상데이터 쓰기/읽기 및 상기 인트라 예측 수행 과정을 제어하되, 인트라 예측의 대상이 되는 예측 대상 블럭들에 대하여 해당 예측 모드가 수평/수직모드 또는 비(Non) 수평/수직모드 중 어느 모드에 해당하는지를 기준으로 '해당 인 트라 예측에 필요한 참조 데이터에 대한 읽기 순위'를 결정하기 위한 제어 수단;
    상기 영상데이터의 쓰기에 필요한 쓰기 어드레스 또는 상기 참조 데이터에 대한 읽기 어드레스를 생성하기 위한 어드레스 생성 수단; 및
    상기 어드레스 생성 수단에서 생성된 어드레스를 이용하여 상기 제어 수단의 제어에 따라 쓰기/읽기 모드 중 어느 하나를 수행하되, 상기 영상데이터 읽기는 상기 결정된 읽기 순위에 따라 수행하기 위한 쓰기/읽기 모드 수행 수단
    을 포함하는 영상 복호를 위한 적응적 인트라 예측 시스템.
  17. 제 16 항에 있어서,
    상기 제어 수단은,
    상기 읽기 순위를 결정함에 있어서, 상기 예측 대상 블럭이 휘도성분에 대한 블럭인 경우, 해당 예측 대상 블럭의 크기가 큰 블럭에 대하여 높은 우선 순위를 부여하고, 동일한 크기의 예측 대상 블럭들 간에는 상기 수평/수직모드에 해당하는 블럭에 대하여 높은 우선 순위를 부여하는 것을 특징으로 하는 영상 복호를 위한 적응적 인트라 예측 시스템.
  18. 제 16 항 또는 제 17 항에 대하여,
    상기 제어 수단은,
    상기 읽기 순위를 결정함에 있어서, 상기 예측 대상 블럭이 색도성분에 대한 블럭이면, 상기 해당 예측 모드가 상기 수평/수직모드에 해당하는 블럭에 대하여 상기 비(Non) 수평/수직모드에 해당하는 블럭보다 높은 우선 순위를 부여하는 것을 특징으로 하는 영상 복호를 위한 적응적 인트라 예측 시스템.
KR1020070092974A 2006-12-06 2007-09-13 인트라 예측을 위한 적응적 영상데이터 읽기 제어 장치 및그 방법과, 그를 이용한 영상 복호를 위한 적응적 인트라예측 시스템 KR100912077B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR20060123332 2006-12-06
KR1020060123332 2006-12-06

Publications (2)

Publication Number Publication Date
KR20080052313A KR20080052313A (ko) 2008-06-11
KR100912077B1 true KR100912077B1 (ko) 2009-08-12

Family

ID=39807148

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020070092974A KR100912077B1 (ko) 2006-12-06 2007-09-13 인트라 예측을 위한 적응적 영상데이터 읽기 제어 장치 및그 방법과, 그를 이용한 영상 복호를 위한 적응적 인트라예측 시스템

Country Status (1)

Country Link
KR (1) KR100912077B1 (ko)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20030026699A (ko) * 2001-09-26 2003-04-03 에스케이 텔레콤주식회사 적응적 더블 스캔 방법
KR20040027047A (ko) * 2002-09-27 2004-04-01 삼성전자주식회사 예측 스캐닝을 이용한 영상 부호화/복호화 방법 및 장치
JP2005184857A (ja) 2002-05-28 2005-07-07 Sharp Corp 画像イントラ予測モードの推定、通信及び編成のための方法とシステム

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20030026699A (ko) * 2001-09-26 2003-04-03 에스케이 텔레콤주식회사 적응적 더블 스캔 방법
JP2005184857A (ja) 2002-05-28 2005-07-07 Sharp Corp 画像イントラ予測モードの推定、通信及び編成のための方法とシステム
KR20040027047A (ko) * 2002-09-27 2004-04-01 삼성전자주식회사 예측 스캐닝을 이용한 영상 부호화/복호화 방법 및 장치

Also Published As

Publication number Publication date
KR20080052313A (ko) 2008-06-11

Similar Documents

Publication Publication Date Title
US10097847B2 (en) Video encoding device, video decoding device, video encoding method, video decoding method, and program
KR100843196B1 (ko) H.264/avc 비디오 디코더의 디블록킹 필터
JP5756537B2 (ja) 適応型走査を用いる動画像復号化方法
US20090232211A1 (en) Method and apparatus for encoding/decoding image based on intra prediction
KR101684207B1 (ko) 동화상 복호 장치, 동화상 부호화 장치, 동화상 복호 방법, 및 동화상 부호화 방법
JP4542447B2 (ja) 画像の符号化/復号化装置、符号化/復号化プログラム及び符号化/復号化方法
US7630441B2 (en) Pipelining decoding apparatus and method, and computer-readable recording medium for storing computer program for controlling the pipelining decoding apparatus
JP4908180B2 (ja) 動画像符号化装置
JP5246264B2 (ja) 画像符号化装置、画像復号化装置、画像符号化方法及び画像復号化方法
KR20200097817A (ko) 동화상 복호 장치
JP2007116351A (ja) 画像予測符号化装置、画像予測復号装置、画像予測符号化方法、画像予測復号方法、画像予測符号化プログラム、及び画像予測復号プログラム
US20060029136A1 (en) Intra-frame prediction for high-pass temporal-filtered frames in a wavelet video coding
KR20130004214A (ko) 다단계 예측을 이용한 영상 부/복호화 방법 및 이러한 방법을 사용하는 부/복호화 장치
US7830959B2 (en) Apparatus and method for performing intra prediction for image decoder
JP5396711B2 (ja) 動画像復号装置、動画像復号方法及びプログラム
JP2007221697A (ja) 画像復号化装置及び画像復号化方法
JP2007013298A (ja) 画像符号化装置
US10999586B2 (en) Image encoding method and equipment for implementing the method
JP2009089267A (ja) イントラ予測符号化装置、イントラ予測符号化方法及びプログラム
KR100912077B1 (ko) 인트라 예측을 위한 적응적 영상데이터 읽기 제어 장치 및그 방법과, 그를 이용한 영상 복호를 위한 적응적 인트라예측 시스템
JP4290972B2 (ja) 画像符号化方法,画像復号方法,画像符号化装置,画像復号装置,画像符号化プログラム,画像復号プログラム,画像符号化プログラムを記録した記録媒体および画像復号プログラムを記録した記録媒体
JP2013021557A (ja) 動画像符号化装置、動画像復号装置、動画像符号化方法、動画像復号方法、およびプログラム
US10798380B1 (en) Adaptive use of search modes based on neighboring blocks
JP2009153102A (ja) 動きベクトル検出装置、フレーム間符号化装置、動画像符号化装置、動きベクトル検出プログラム、フレーム間符号化プログラム及び動画像符号化プログラム
US10694189B1 (en) Adaptive use of search modes based on bandwidth availability

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