KR20060042294A - 화상 데이터 부호화 및 복호화 방법 및 장치 - Google Patents

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

Info

Publication number
KR20060042294A
KR20060042294A KR20040090893A KR20040090893A KR20060042294A KR 20060042294 A KR20060042294 A KR 20060042294A KR 20040090893 A KR20040090893 A KR 20040090893A KR 20040090893 A KR20040090893 A KR 20040090893A KR 20060042294 A KR20060042294 A KR 20060042294A
Authority
KR
South Korea
Prior art keywords
pixel
block
value
bit string
mode
Prior art date
Application number
KR20040090893A
Other languages
English (en)
Other versions
KR100647294B1 (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 KR20040090893A priority Critical patent/KR100647294B1/ko
Priority to EP20050256865 priority patent/EP1655967A1/en
Priority to US11/268,645 priority patent/US7865027B2/en
Priority to JP2005324945A priority patent/JP2006148892A/ja
Publication of KR20060042294A publication Critical patent/KR20060042294A/ko
Application granted granted Critical
Publication of KR100647294B1 publication Critical patent/KR100647294B1/ko
Priority to US12/926,687 priority patent/US8326065B2/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/119Adaptive subdivision aspects, e.g. subdivision of a picture into rectangular or non-rectangular coding blocks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N1/00Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
    • H04N1/41Bandwidth or redundancy reduction
    • 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/124Quantisation
    • 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/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • 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
    • 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/593Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving spatial prediction techniques
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/90Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using coding techniques not provided for in groups H04N19/10-H04N19/85, e.g. fractals
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/90Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using coding techniques not provided for in groups H04N19/10-H04N19/85, e.g. fractals
    • H04N19/96Tree coding, e.g. quad-tree coding

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Compression Of Band Width Or Redundancy In Fax (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)
  • Image Processing (AREA)
  • Color Television Systems (AREA)

Abstract

화상 데이터 부호화 및 복호화 방법 및 장치가 개시된다. 화상 데이터의 부호화 방법은 블록 내 화소들의 화소 평균값을 기준으로 블록을 2개의 서브 블록들로 설정하는 과정을 반복하고, 설정된 서브 블록들의 맵 정보를 생성하고, 서브 블록들의 개수에 따른 비트열 생성을 위한 모드를 결정하는 단계 및 결정된 모드의 비트열, 맵 정보의 비트열 및 블록 또는 서브 블록들의 화소값들을 대표하는 각각의 대표 화소값들의 비트열을 생성하는 단계를 구비하는 것을 특징으로 한다. 따라서 본 발명에 따르면, 시각적으로 화상의 열화가 거의 발생하지 않으면서도 압축 효율을 높일 수 있도록 한다.

Description

화상 데이터 부호화 및 복호화 방법 및 장치{Method and apparatus for encoding and decoding image data}
도 1a 및 도 1b는 쿼드트리 분할 방식에 의한 부호화 방법을 나타내기 위한 일 예의 도면이다.
도2는 본 발명에 따른 화상 데이터 부호화 방법을 설명하기 위한 일 실시예의 플로차트이다.
도 3은 도 2에 도시된 제14 단계를 설명하기 위한 일 실시예의 플로차트이다.
도 4a 내지 도 4f는 4*4 블록에 대해 설정되는 서브 블록들의 일 예를 설명하기 위한 도면들이다.
도 5a 내지 도 5c는 서브 블록의 맵 정보의 일 예를 나타내는 도면이다.
도 6은 본 발명에 의한 화상 데이터 복호화 방법을 설명하기 위한 일 실시예의 플로차트이다.
도 7은 도 6의 제30 내지 제34 단계에 의해 도 4a에 도시된 블록의 비트열이 복호화된 일 예를 나타내는 도면이다.
도 8은 본 발명에 따른 화상 데이터 부호화 장치를 설명하기 위한 일 실시예의 블록도이다.
도 9는 도 8에 도시된 서브블록 부호화부를 설명하기 위한 일 실시예의 블록도이다.
도 10은 본 발명에 따른 화상 데이터 복호화 장치를 설명하기 위한 일 실시예의 블록도이다.
〈도면의 주요 부호에 대한 간단한 설명〉
100: 시공간상 예측부 110: RGB 신호 부호화부
120: 서브블록 부호화부 130: 압축비율 요구 요구 감지부
140: 임계값 결정부 150: 비트열 생성부
200: 화소 평균값 산출부 210: 화소 그룹 지정부
220: 임계값 비교부 230: 서브 블록 설정부
240: 대표 화소값 결정부 250: 맵 정보 생성부
260; 설정 종료 검사부 270: 모드 결정부
300: 모드 복호화부 310: 맵 정보 복호화부
320: 대표 화소값 복호화부 330: RGB 신호 복호화부
340: 시공간상 예측 보상부
본 발명은 화상 압축에 관한 것으로서, 특히 압축하기 위한 화상의 블록을 서브 블록들로 나누어서 부호화 및 복호화하는 화상 데이터 부호화 및 복호화 방법 및 장치에 관한 것이다.
일반적으로 컬러 화상을 부호화할 때에 컬러 변환을 수행한 다음에 부호화를 한다. 예를 들어, RGB 영상을 YCbCr 영상으로 변환하여 휘도 성분과 색상 성분으로 분리한 후에 부호화를 한다. 이와 같이 하면 부호화 효율이 높아지는데, 그 이유는 각 컬러 성분 간에 많은 중복성이 있고, 변환을 통해 중복성을 제거하였기 때문이다. 특히 최근에는 리프팅 방법을 사용한 정수 변환 방법이 연구되었는데, 예를 들어 Microsoft에서 개발한 YCoCg-R과 같은 방법이 있다.
또한, 컬러 화상을 부호화할 때에 각 색상 성분(즉, R(red), G(green) 및 B(blue)) 별로 예측 부호화를 수행할 수도 있다. 컬러 화상 내에서 각 칼라 성분을 독립적으로 고려하여 각 성분의 예측 부호화를 수행하여 압축을 한다. 이러한 방법에서는 R, G 및 B의 색상 성분간에 서로 중복되는 정보에 대해서는 고려가 되지 않는다. 그런데, 각각의 컬러성분을 독립적으로 부호화하면 컬러성분 상호 간의 상관관계(correlation)를 이용하지 못하므로 부호화 효율이 떨어진다.
이와 같이 변환된 영상을 부호화할 때에는 시공간 예측을 통하여 각 성분 내부의 중복성을 제거하는 과정을 거치게 되고, 그 결과 레지듀 영상을 얻는다. 최근 표준화가 진행된 ISO/IEC MPEG 및 ITU-T VCEG의 Joint Video Team (JVT)의 H.264/MPEG-4 pt.10 AVC 표준화 기술("Text of ISO/IEC FDIS 14496-10: Information Technology - Coding of audio-visual objects - Part 10: Advanced Video Coding", ISO/IEC JTC 1/SC 29/WG 11, N5555, March, 2003)에서는 여러 가지 다양한 방법으로 공간상 및 시간상 예측 부호화를 수행하여 부호화 효율을 향상시 켰다.
한편, 전술한 방법 이외에, 쿼드트리(quadtree) 분할 방식에 의해 컬러 화상을 부호화하는 방식이 사용된다. 도 1a 및 도 1b는 쿼드트리 분할 방식에 의한 부호화 방법을 나타내기 위한 일 예의 도면이다. 도 1a는 쿼드트리 분할 방식에 의해 분할된 블록의 서브블록들을 나타내는 일 예의 도면이고, 도 1b는 분할된 서브블록들의 화소값들의 정보를 트리구조로 표현한 일 예의 도면이다. 도 1a 및 도 1b에서 보는 바와 같이, 쿼드트리 분할 방식은 부호화할 블록에 대해 4개의 블록으로 나누고, 나뉘어진 4개의 서브블록들 각각에 대해 다시 4개의 서브블록들으로 나누는 과정을 반복함으로써, 각각의 나뉘어진 서브블록들의 화소값들을 트리 구조의 정보로서 부호화하는 방식이다.
그러나, 전술한 종래의 부호화 방식에 의하면, 컬러 화상에 대한 압축 효율이 떨어지고, 압축 효율을 높이게 되면, 상대적으로 칼라 화상의 열화가 심화되는 문제점이 있다.
본 발명이 이루고자 하는 기술적 과제는, 시각적으로 화상의 열화가 거의 발생하지 않으면서도 압축 효율을 높일 수 있는 화상 데이터 부호화 및 복호화 방법을 제공하는데 있다.
본 발명이 이루고자 하는 다른 기술적 과제는, 시각적으로 화상의 열화가 거의 발생하지 않으면서도 압축 효율을 높일 수 있는 화상 데이터 부호화 및 복호화 장치를 제공하는데 있다.
상기의 과제를 이루기 위해, 본 발명에 따른 화상 데이터의 부호화 방법은 블록 내 화소들의 화소 평균값을 기준으로 블록을 2개의 서브 블록들로 설정하는 과정을 반복하고, 설정된 서브 블록들의 맵 정보를 생성하고, 서브 블록들의 개수에 따른 비트열 생성을 위한 모드를 결정하는 단계 및 결정된 모드의 비트열, 맵 정보의 비트열 및 블록 또는 서브 블록들의 화소값들을 대표하는 각각의 대표 화소값들의 비트열을 생성하는 단계를 구비하는 것을 특징으로 한다.
상기의 다른 과제를 이루기 위해, 본 발명에 따른 화상 데이터의 복호화 방법은 블록에 있어서 서브 블록들의 개수에 따른 비트열 생성을 위한 모드의 비트열을 복호화하는 단계 및 서브 블록들의 맵 정보에 대한 비트열을 복호화하고, 블록 또는 서브 블록들의 화소값들을 대표하는 각각의 대표 화소값들에 대한 비트열을 복호화하는 단계를 구비하는 것을 특징으로 한다.
상기의 또 다른 과제를 이루기 위해, 본 발명에 따른 화상 데이터의 부호화 장치는 블록 내 화소들의 화소 평균값을 기준으로 블록을 2개의 서브 블록들로 설정하는 과정을 반복하고, 설정된 서브 블록들의 맵 정보를 생성하고, 서브 블록들의 개수에 따른 비트열 생성을 위한 모드를 결정하는 서브블록 부호화부 및 서브 블록 부호화부에서 부호화된 결정된 모드, 맵 정보 및 서브 블록들의 화소 평균값들에 대한 비트열을 생성하는 비트열 생성부를 구비하는 것을 특징으로 한다.
상기의 또 다른 과제를 이루기 위해, 본 발명에 따른 화상 데이터의 복호화 장치는 블록에 있어서 서브 블록들의 개수에 따른 비트열 생성을 위한 모드의 비트 열을 복호화하는 모드 복호화부, 서브 블록들의 맵 정보에 대한 비트열을 복호화하는 맵 정보 복호화부 및 블록 또는 서브 블록들의 화소값들을 대표하는 각각의 대표 화소값들에 대한 비트열을 복호화하는 대표 화소값 복호화부를 구비하는 것을 특징으로 한다.
이하, 본 발명에 의한 화상 데이터 부호화 방법을 첨부된 도면을 참조하여 다음과 같이 설명한다.
도 2는 본 발명에 의한 화상 데이터 부호화 방법을 설명하기 위한 일 실시예의 플로차트이다.
공간적으로 근접한 블록을 이용하여 현재 블록의 화소값들을 공간상 예측하거나, 시간상 이전 블록을 이용하여 현재 블록의 화소값들을 시간상 예측한다(제10 단계). 공간상 예측된 화소값들은 각 컬러 성분의 현재 블록과 공간적으로 근접한 블록으로부터 예측 방향을 추정하여 구해진 예측 화소값들을 의미한다. 시간상 예측된 화소값들은 각 컬러 성분의 이전 블록과 현재 블록 사이에 움직임을 추정하여 구해진 예측 화소값들을 의미한다.
시간상 또는 공간상 예측된 화소값들을 일반적으로 레지듀값이라 칭하는데 이하에서 화소값이라는 용어로 통일하여 사용한다. 또한, 시간상 또는 공간상 예측된 화소값들에 대하여 서브블록들 별로 평균한 값은 레지듀 평균값이라 할 수 있겠으나, 이하에서는 화소 평균값이라는 용어로 통일하여 사용한다.
시공간상 예측에 있어서, RGB 화상을 YCbCr 화상으로 변환하고, 나뉘어진 휘도 성분과 색상 성분에 대해 화소값들을 예측할 수도 있고, RGB 화상의 R, G 및 B 각각의 색상에 대해 직접 화소값들을 예측할 수도 있다.
제10 단계 후에, R, G 및 B 각각의 색상에 대해 공간상 예측된 화소값들 및 시간상 예측된 화소값들 중 중복되는 정보를 제거하여 RGB 신호를 부호화한다(제12 단계). 제10 단계에서 RGB 화상의 R, G 및 B 각각의 색상에 대해 직접 화소값들을예측하였을 때, 예측된 R, G 및 B 각각의 색상에 대한 화소값들의 상관관계(correlation)를 이용하여 중복되는 정보를 제거하고, 중복된 부분이 제거된 RGB 신호를 부호화한다. 이러한 R, G 및 B 각각의 화소값들에 대한 상관관계를 이용하여, 중복되는 R, G 및 B 각각의 화소값들을 제거하고, 중복된 부분이 제거된 RGB 신호를 부호화하는 과정에 대한 상세한 설명은 대한민국 출원발명(출원번호 03-84714)인 "레지듀 변환을 이용한 컬러영상 부호화 및 복호화방법 및 장치"에 기술되어 있다.
제12 단계 후에, 부호화된 RGB 신호의 블록 내 화소들에 대한 화소 평균값을 기준으로 블록을 2개의 서브 블록들로 설정하는 과정을 반복하고, 설정된 서브 블록들의 맵 정보를 생성하고, 서브 블록들의 개수에 따른 비트열 생성을 위한 모드를 결정한다(제14 단계).
도 3은 도 2에 도시된 제14 단계를 설명하기 위한 일실시예의 플로차트이다.
먼저, 블록 내 화소들의 화소 평균값을 산출한다(제30 단계).
도 4a 내지 도 4f는 4*4 블록에 대해 설정되는 서브 블록들의 일 예를 설명하기 위한 도면들이다.
도 4a는 4*4 블록의 화소값들의 일 예를 나타내는 도면으로서, 도 4a에 도시 된 4*4 블록의 각 화소값들을 합산하면 "192"라는 값을 구할 수 있고, "192"의 값을 4*4 블록의 각 화소들의 수에 해당하는 "16"으로 나누면, 4*4 블록 내 화소들의 화소 평균값인 "12"를 산출할 수 있다. 정수가 아닌 화소 평균값은 반올림하거나 기타의 방법으로 정수의 숫자를 취하는 것이 바람직하다.
제30 단계 후에, 산출된 화소 평균값을 기준으로 화소 평균값보다 크거나 같은 화소값을 갖는 화소들을 하나의 화소 그룹으로 지정하고, 화소 평균값보다 작은 화소값을 갖는 화소들을 다른 하나의 화소 그룹으로 지정한다(제32 단계).
도 4b는 도 4a에 도시된 4*4 블록에 대하여 화소 평균값을 기준으로 각 화소들을 2개의 화소 그룹들로 구분한 것을 나타내는 도면이다. 도 4b에 도시된 바와 같이, 화소 평균값에 해당하는 "12"를 기준으로 "12"보다 크거나 같은 화소값을 갖는 화소들(굵은 선으로 표시한 부분)과 "12"보다 작은 화소값을 갖는 화소들을 각각 구분하여 2개의 화소그룹으로 나눈다.
제32 단계 후에, 2개의 화소 그룹들 각각의 화소 평균값들을 산출한다(제34 단계).
도 4b에 도시된 바와 같이 2개의 화소 그룹들 각각에 대한 화소 평균값을 구하면, "12"보다 작은 화소값을 갖는 화소들의 화소 평균값은 "40÷10=4"이고, "12"보다 크거나 같은 화소값을 갖는 화소들의 화소 평균값은 "152÷6≒25.33"이다. 정수가 아닌 화소 평균값은 반올림하거나 기타의 방법으로 정수의 숫자를 취한다. 따라서, 반올림하는 방법으로 정수를 취한다고 했을 때, "12"보다 크거나 같은 화소값을 갖는 화소들의 화소 평균값은 "25"가 된다.
제34 단계 후에, 화소 그룹들 각각의 화소 평균값들의 차에 해당하는 평균 차이값이 소정 임계값보다 큰가를 검사한다(제36 단계).
예를 들어, "12"보다 작은 화소값을 갖는 화소들의 화소 평균값이 "4"이고, "12"보다 크거나 같은 화소값을 갖는 화소들의 화소 평균값이 "25"라 했을 때, 화소 평균값들의 차에 해당하는 평균 차이값은 "25-4=21"임을 구할 수 있다. 이전에 미리 정해진 소정 임계값이 "6"이라 했을 때, 평균 차이값 "21"과 소정 임계값 "6"의 크기를 비교할 수 있다.
만일, 평균 차이값이 소정 임계값보다 크다면, 화소 그룹들 각각을 서브 블록들로 설정하고 상기 제32 단계로 진행한다(제38 단계). 전술한 바와 같이, 평균 차이값 "21"이고 소정 임계값 "6"이라면, 평균 차이값이 소정 임계값보다 크므로, "12"보다 작은 화소값을 갖는 화소들의 화소 그룹과 "12"보다 크거나 같은 화소값을 갖는 화소들의 화소 그룹을 각각 4*4 블록의 서브블록들로 설정한다.
제38 단계 후에, 제32 단계로 진행하여 전술한 제32 단계 내지 제36 단계를 반복한다.
따라서, 제32 단계에서 각각의 서브 블록들에 대한 화소 평균값들을 기준으로 각각의 서브 블록들을 각각 2개의 화소그룹들로 지정한다.
도 4c는 "12"보다 작은 화소값을 갖는 서브블록이 당해 서브블록의 화소 평균값을 기준으로 2개의 화소 그룹으로 지정된 일 예를 나타내는 도면이다. 도 4c에서 보는 바와 같이, "12"보다 작은 화소값을 갖는 서브 블록의 화소 평균값이 "4"이므로, 산출된 화소 평균값 "4"를 기준으로 "4"보다 크거나 같은 화소값을 갖는 화소들을 하나의 화소 그룹(굵은 선으로 표시한 부분)으로 지정하고, "4"보다 작은 화소값을 갖는 화소들을 다른 하나의 화소 그룹으로 지정한다.
도 4d는 "12"보다 크거나 같은 화소값을 갖는 서브블록이 당해 서브블록의 화소 평균값을 기준으로 2개의 화소 그룹으로 지정된 일 예를 나타내는 도면이다. 도 4d에서 보는 바와 같이, "12"보다 크거나 같은 화소값을 갖는 서브 블록의 화소 평균값이 "25"이므로, 산출된 화소 평균값 "25"를 기준으로 화소 평균값 "25"보다 크거나 같은 화소값을 갖는 화소들을 하나의 화소 그룹(굵은 선으로 표시한 부분)으로 지정하고, 화소 평균값 "25"보다 작은 화소값을 갖는 화소들을 다른 하나의 화소 그룹으로 지정한다.
제32 단계 후에, 4개의 화소 그룹들 각각의 화소 평균값들을 산출한다(제34 단계).
도 4c에 도시된 바와 같이, 2개의 화소 그룹들 각각에 대한 화소 평균값을 구하면, "4"보다 작은 화소값을 갖는 화소들의 화소 평균값은 "7÷4=1.75"이고, "4"보다 크거나 같은 화소값을 갖는 화소들의 화소 평균값은 "33÷6=5.5"이다. 정수가 아닌 화소 평균값에 대해 반올림하는 방법으로 정수의 숫자를 취한다면, "4"보다 작은 화소값을 갖는 화소들의 화소 평균값은 "2"가 되고, "4"보다 크거나 같은 화소값을 갖는 화소들의 화소 평균값은 "6"이 된다. 또한, 도 4d에 도시된 바와 같이 2개의 화소 그룹들 각각에 대한 화소 평균값을 구하면, "25"보다 작은 화소값을 갖는 화소들의 화소 평균값은 "70÷4=17.5"이고, "25"보다 크거나 같은 화소값을 갖는 화소들의 화소 평균값은 "82÷2=41"이다. 정수가 아닌 화소 평균값에 대하 여 반올림하는 방법으로 정수의 숫자를 취한다면, "25"보다 작은 화소값을 갖는 화소들의 화소 평균값은 "18"이 된다.
제34 단계 후에, 화소 그룹들 각각의 화소 평균값들의 차에 해당하는 평균 차이값이 소정 임계값보다 큰가를 검사한다(제36 단계).
도 4c에서 보는 바와 같이, "4"보다 작은 화소값을 갖는 화소들의 화소 평균값이 "2"이고, "4"보다 크거나 같은 화소값을 갖는 화소들의 화소 평균값이 "6"이므로, 화소 평균값들의 차에 해당하는 평균 차이값은 "6-2=4"임을 알 수 있다. 이전에 미리 정해진 소정 임계값이 "6"이라 했을 때, 평균 차이값 "4"와 소정 임계값 "6"의 크기를 비교할 수 있다.
한편, 도 4d에서 보는 바와 같이, "25"보다 작은 화소값을 갖는 화소들의 화소 평균값이 "18"이고, "25"보다 크거나 같은 화소값을 갖는 화소들의 화소 평균값이 "41"이므로, 화소 평균값들의 차에 해당하는 평균 차이값은 "41-18=23"임을 구할 수 있다. 이전에 미리 정해진 소정 임계값이 "6"이라 했을 때, 평균 차이값 "23"과 소정 임계값 "6"의 크기를 비교할 수 있다.
만일, 평균 차이값이 소정 임계값보다 크다면, 화소 그룹들 각각을 서브 블록들로 설정하고 상기 제32 단계로 진행한다(제38 단계).
도 4d에서 보는 바와 같이, 평균 차이값이 "23"이고 소정 임계값이 "6"이라면, 평균 차이값이 소정 임계값보다 크므로, "25"보다 작은 화소값을 갖는 화소들의 화소 그룹과 "25"보다 크거나 같은 화소값을 갖는 화소들의 화소 그룹을 각각 서브블록들로 설정한다.
제38 단계 후에, 제32 단계로 진행하여 전술한 제32 단계 내지 제36 단계를 다시 반복한다.
따라서, 제32 단계에서 각각의 서브 블록들에 대한 화소 평균값들을 기준으로 각각의 서브 블록들을 각각 2개의 화소그룹들로 지정한다.
도 4e는 "25"보다 작은 화소값을 갖는 서브블록이 당해 서브블록의 화소 평균값을 기준으로 2개의 화소 그룹으로 지정된 일 예를 나타내는 도면이다.
도 4e에 도시된 바와 같이, 2개의 화소 그룹들 각각에 대한 화소 평균값을 구하면, "25"보다 작은 화소값을 갖는 서브 블록의 화소 평균값이 "18"이므로, 산출된 화소 평균값 "18"을 기준으로 화소 평균값 "18"보다 크거나 같은 화소값을 갖는 화소들을 하나의 화소 그룹(굵은 선으로 표시한 부분)으로 지정하고, 화소 평균값 "18"보다 작은 화소값을 갖는 화소들을 다른 하나의 화소 그룹으로 지정한다.
도 4f는 "25"보다 크거나 같은 화소값을 갖는 서브블록이 당해 서브블록의 화소 평균값을 기준으로 2개의 화소 그룹으로 지정된 일 예를 나타내는 도면이다.
도 4f에 도시된 바와 같이, "25"보다 크거나 같은 화소값을 갖는 서브 블록의 화소 평균값이 "41"이므로, 산출된 화소 평균값 "41"을 기준으로 화소 평균값 "41"보다 크거나 같은 화소값을 갖는 화소들을 하나의 화소 그룹(굵은 선으로 표시한 부분)으로 지정하고, 화소 평균값 "41"보다 작은 화소값을 갖는 화소들을 다른 하나의 화소 그룹으로 지정한다.
제32 단계 후에, 4개의 화소 그룹들 각각의 화소 평균값들을 산출한다(제34 단계).
도 4e에 도시된 바와 같이, 2개의 화소 그룹들 각각에 대한 화소 평균값을 구하면, "18"보다 작은 화소값을 갖는 화소들의 화소 평균값은 "30÷2=15"이고, "18"보다 크거나 같은 화소값을 갖는 화소들의 화소 평균값은 "40÷2=20"이다.
한편, 도 4f에 도시된 바와 같이, 2개의 화소 그룹들 각각에 대한 화소 평균값을 구하면, "41"보다 작은 화소값을 갖는 화소의 화소값 "40"과, "41"보다 크거나 같은 화소값을 갖는 화소의 화소값 "42"을 확인할 수 있다.
제34 단계 후에, 화소 그룹들 각각의 화소 평균값들의 차에 해당하는 평균 차이값이 소정 임계값보다 큰가를 검사한다(제36 단계).
도 4e에서 보는 바와 같이, "18"보다 작은 화소값을 갖는 화소들의 화소 평균값이 "15"이고, "18"보다 크거나 같은 화소값을 갖는 화소들의 화소 평균값이 "20"이므로, 화소 평균값들의 차에 해당하는 평균 차이값은 "20-15=5"임을 구할 수 있다. 이전에 미리 정해진 소정 임계값이 "6"이라 했을 때, 평균 차이값 "5"와 소정 임계값 "6"의 크기를 비교할 수 있다.
한편, 도 4f에서 보는 바와 같이, "41"보다 작은 화소값을 갖는 화소들의 화소 평균값이 "40"이고, "41"보다 크거나 같은 화소값을 갖는 화소들의 화소 평균값이 "42"이므로, 화소 평균값들의 차에 해당하는 평균 차이값은 "42-40=2"임을 구할 수 있다. 이전에 미리 정해진 소정 임계값이 "6"이라 했을 때, 평균 차이값 "2"와 소정 임계값 "6"의 크기를 비교할 수 있다.
제36 단계에서 평균 차이값이 소정 임계값보다 크지 않다면, 블록 또는 서브블록들의 화소값들을 대표하여 나타내는 대표 화소값을 결정한다(제40 단계). 블록 또는 서브블록들 각각의 화소들에 대한 화소값들의 평균을 대표 화소값으로서 결정하는 것을 특징으로 한다.
도 4c에서 도시된 바와 같이, 2개의 화소 그룹들의 평균 차이값이 "4"이고, 소정 임계값이 "6"의 크기를 갖는다고 했을 때, 평균 차이값 "4"가 소정 임계값 "6"보다 크지 아니하므로, 도 4c의 서브블록을 대표하는 대표 화소값을 결정한다. 즉, 도 4c의 서브블록의 각 화소값들의 합산한 값을 화소 숫자로 나누면, "40÷10=4"의 대표 화소값을 구할 수 있다.
한편, 도 4e에서 도시된 바와 같이, 2개의 화소그룹들의 평균 차이값이 "5"이고, 소정 임계값 "6"의 크기를 갖는다고 했을 때, 평균 차이값 "5"가 소정 임계값 "6"보다 크지 아니하므로, 도 4e의 서브블록을 대표하는 대표 화소값을 결정한다. 즉, 도 4e의 서브블록의 각 화소값들의 합산한 값을 화소 숫자로 나누면, "70÷4=17.5"의 대표 화소값을 구할 수 있다. 정수가 아닌 대표 화소값에 대하여 반올림하는 방법으로 정수의 숫자를 취한다면, 도 4e의 화소 그룹의 대표 화소값은 "18"이 된다.
또한, 도 4f에서 도시된 바와 같이, 2개의 화소그룹들의 평균 차이값이 "2"이고, 소정 임계값 "6"의 크기를 갖는다고 했을 때, 평균 차이값 "2"가 소정 임계값 "6"보다 크지 아니하므로, 도 4f의 서브블록을 대표하는 대표 화소값을 결정한다. 즉, 도 4f의 서브블록의 각 화소값들의 합산한 값을 화소 숫자로 나누면, "82÷2=41"의 대표 화소값을 구할 수 있다.
제40 단계 후에, 대표 화소값이 결정된 서브 블록들 각각의 화소들에 대한 맵 정보를 생성한다(제42 단계). 대표 화소값이 결정된 서브 블록들 각각마다 동일한 맵 정보가 생성되는 것을 특징으로 한다.
도 5a 내지 도 5c는 서브 블록의 맵 정보의 일 예를 나타내는 도면이다.
도 5a는 대표 화소값이 결정된 도 4c의 서브 블록의 맵 정보의 일 예를 나타내는 도면이다. 이때, 대표 화소값이 결정된 각 화소들에 대하여 동일한 맵 정보가 생성된다. 도 5a는 예로서 "0"의 맵 정보가 생성된 것이다.
도 5b는 대표 화소값이 결정된 도 4e의 서브 블록의 맵 정보의 일 예를 나타내는 도면이다. 이때, 도 5a에서 생성된 맵 정보에 부가하여 대표 화소값이 새로이 결정된 도 4e의 각 화소들에 대하여 동일한 맵 정보가 생성된다. 도 5b는 예로서 "1"의 맵 정보가 생성된 것이다.
도 5c는 대표 화소값이 결정된 도 4f의 서브 블록의 맵 정보의 일 예를 나타내는 도면이다. 이때, 맵 정보는 도 5a 및 도 5b에서 생성된 맵 정보에 부가하여 대표 화소값이 새로이 결정된 도 4f의 각 화소들에 대하여 동일한 맵 정보가 생성된다. 도 5c는 예로서 "2"의 맵 정보가 생성된 것이다.
제42 단계 후에, 블록의 모든 서브 블록들의 설정이 종료되었는가를 검사한다(제44 단계). 전술한 예로서, 4*4 블록에 대한 서브 블록들의 설정이 모두 이루어졌는가를 검사한다. 검사 방법의 일 예로서 4*4 블록에 대한 각 화소들의 대표 화소값이 모두 결정되었는가 여부로 서브 블록들의 설정이 종료되었는가를 검사할 수 있다.
만일, 모든 서브 블록의 설정이 종료되지 않았다면, 제32 단계로 진행한다.
그러나, 블록의 모든 서브 블록의 설정이 종료되었다면, 서브 블록들의 개수에 따른 비트열 생성을 위한 모드를 결정한다(제46 단계). 모드의 종류는 블록에서 설정될 수 있는 서브 블록들의 최대 개수 범위 내에서 사전에 정해지는 것을 특징으로 한다. 예를 들어, 4*4 블록에서 설정될 수 있는 서브 블록들의 최대수는 16개이다. 따라서, 4*4 블록에서 사전에 정해질 수 있는 모드 종류는 16가지로 나뉠 수 있다. 또한, 블록에 대한 서브블록이 설정되지 않고, 화소 평균값이 "0"에 해당한다면, 이러한 경우를 모드의 부가적인 한 종류로서 분류한다.
비트열 생성을 위한 모드의 일 예가 다음의 표 1에 도시된 바와 같다.
<표 1>
모드 종류 모드 비트수 서브 블록수 맵 비트수 전체 비트량[bit]
0 3 0 0 3+0*9+0*16=3
1 3 1 0 3+1*9+0*16=12
2 3 2 1 3+2*9+1*16=37
3 3 3 2 3+3*9+2*16=62
4 3 4 2 3+4*9+2*16=71
5 3 5 3 3+5*9+3*16=96
6 3 6 3 3+6*9+3*16=105
7 3 7~16 0 3+8*16=131
여기서, 모드 종류는 8가지의 모드로 나뉘어지는 것을 예로 들었다. 따라서, 모드 0 내지 모드 7에 해당하는 8 종류의 모드를 2진수로 표현하기 위해서는 "3[bit]"가 필요하므로, 표 1에서 보는 바와 같이 모드 비트수가 "3[bit]"가 된다.
모드 0은 전술한 제30 단계에서 산출되는 블록의 화소 평균값(정확히 표현하면, 시공간 예측에 의한 블록의 각 화소들의 평균값에 해당하는 레지듀 평균값)이 "0"에 해당하고, 블록에 대한 서브 블록이 설정되지 않는 경우에 결정되는 모드이다. 모드 0은 제32 단계 내지 제44 단계를 수행하더라도 서브 블록이 설정되지 아 니하고, 화소 평균값이 "0"에 해당하므로 서브 블록수를 "0"으로 지정한다. 또한, 서브 블록이 설정되지 아니하므로 맵 정보가 생성될 필요가 없어서 맵 정보의 맵 비트수는 "0[bit]"이 된다.
모드 1은 블록에 대한 서브 블록이 설정되지 않는 경우로서 화소 평균값이 "0"이 아닌 경우에 결정되는 모드이다. 모드 1은 서브 블록이 설정되지 아니하므로 서브 블록수는 존재하지 않으며, 단지 블록이 한 개 존재함을 나타내는 숫자 "1"이 지정된다. 또한, 서브 블록이 설정되지 아니하므로 맵 정보가 생성될 필요가 없어서 맵 정보의 맵 비트수는 "0[bit]"이 된다.
모드 2는 블록에 대한 서브 블록이 2개 설정되는 경우의 모드이다. 모드 2는 서브 블록이 2개 설정되므로, 서브 블록수는 "2"이고, 2개의 서브 블록들에 대해 각각 "0" 및 "1"이라는 맵 정보를 부여하기 위해서는 "1[bit]"의 맵 비트수가 필요하다.
모드 3은 블록에 대한 서브 블록이 3개 설정되는 경우의 모드이다. 모드 3은 서브 블록이 3개 설정되므로 서브 블록수는 "3"이고, 3개의 서브 블록들에 대해 각각 "0", "1" 및 "2"라는 맵 정보를 부여하기 위해서는 "2[bit]"의 맵 비트수가 필요하다.
모드 4는 블록에 대한 서브 블록이 4개 설정되는 경우의 모드이다. 모드 4는 서브 블록이 4개 설정되므로 서브 블록수는 "4"이고, 4개의 서브 블록들에 대해 각각 "0", "1", "2" 및 "3"이라는 맵 정보를 부여하기 위해서는 "2[bit]"의 맵 비트수가 필요하다.
모드 5는 블록에 대한 서브 블록이 5개 설정되는 경우의 모드이다. 모드 5는 서브 블록이 5개 설정되므로 서브 블록수는 "5"이고, 5개의 서브 블록들에 대해 각각 "0", "1", "2", "3" 및 "4"라는 맵 정보를 부여하기 위해서는 "3[bit]"의 맵 비트수가 필요하다.
모드 6은 블록에 대한 서브 블록이 6개 설정되는 경우의 모드이다. 모드 6은 서브 블록이 6개 설정되므로 서브 블록수는 "6"이고, 6개의 서브 블록들에 대해 각각 "0", "1", "2", "3", "4" 및 "5"라는 맵 정보를 부여하기 위해서는 "3[bit]"의 맵 비트수가 필요하다.
모드 7은 블록이 7 내지 16개의 서브 블록들로 설정되는 경우의 모드이다. 7 내지 16개의 서브 블록들이 설정되는 경우에는 압축되기 전의 블록에 대해 2진화하는 것이 보다 적절하기 때문에, 이때에는 맵 정보의 맵 비트수를 "0[bit]"으로 지정한다.
모드의 종류를 보다 세분화하기를 원한다면, 블록이 7 내지 16개의 서브 블록들로 설정되는 경우에도 서브블록들의 숫자에 따른 각각의 모드를 지정할 수 있다. 다만, 이러한 세분화된 모드에 의하면 압축 효율이 떨어지는 문제점이 있으므로, 요구되는 압축비율에 따라 세분화되는 모드의 종류를 전술한 모드 7과 같이 하나의 모드로 통합할 수 있을 것이다.
전술한 도 4a 내지 도 4f에서 설정되는 서브 블록들의 서브 블록수가 3개이므로, 도 4a에 도시된 블록에 대한 비트열을 위한 모드는 모드 3에 해당한다.
한편, 제14 단계 후에, 블록에 대한 압축비율의 조정이 요구되는가를 감지한 다(제16 단계).
만일, 압축비율의 조정이 요구된다면, 소정 임계값을 재설정하고, 제14 단계로 진행한다(제18 단계). 압축비율에 대하여 높이기를 원한다면, 소정 임계값의 수치를 더 높게 하면 된다. 소정 임계값의 수치를 높게 하면, 상대적으로 서브 블록들이 적게 설정되므로, 압축비율을 높일 수 있다. 다만, 압축비율을 높임으로 인해 화상 품질이 저하되는 점은 감수해야 한다. 반대로, 압축비율에 대하여 낮추기를 원한다면, 소정 임계값의 수치를 더 낮게 하면 된다. 소정 임계값의 수치를 낮게 하면, 상대적으로 서브 블록들이 많이 설정되므로, 압축비율을 낮출 수 있다. 서브블록들이 많이 설정되면, 상대적으로 화상의 품질을 유지시킬 수 있다.
그러나, 압축비율의 조정이 요구되지 않는다면, 결정된 모드의 비트열, 맵 정보의 비트열 및 대표 화소값들의 비트열을 생성한다(제20 단계).
모드의 비트열을 먼저 생성한 이후에, 맵 정보 및 대표 화소값들의 비트열을 생성하는 것을 특징으로 한다.
전술한 도 4a에 도시된 블록에 대한 모드의 종류는 표 1에서 보는 바와 같이 모드 3에 해당한다. 따라서, 모드 3에 대한 모드의 비트열을 생성하면, 모드 종류를 나타내는 숫자가 "3"이므로 이를 2진화하면 "011"의 비트열을 얻을 수 있다.
전술한 도 4a에 도시된 블록에 대한 맵 정보는 도 5c에서 보는 바와 같다. 이 맵 정보에 대한 맵 비트수가 "2[bit]"에 해당하므로, 블록의 각 화소들에 대한 맵 정보의 비트열을 생성하면, 비트량이 "2*16[bit]"에 해당하는 비트열을 얻을 수 있다. 도 5c의 (1) 내지 (16)에 해당하는 각 화소들의 맵 정보를 2진화하면, "0"의 맵 정보는 "00"이라는 2진값이 되고, "1"의 맵 정보는 "01"이라는 2진값이 되고, "2"의 맵 정보는 "10"이라는 2진값이 된다. (1) 내지 (16)의 각 화소들의 맵 정보를 (1) 내지 (16)의 순서에 따라 순차적으로 나열하면, 비트량이 "2*16[bit]"에 해당하는 "00,00,00,01,00,01,01,10,00,00,00,10,00,00,00,01"의 비트열을 얻을 수 있다.
전술한 도 4a에 도시된 블록에 대한 서브블록들의 대표 화소값들은 각각 "4", "18" 및 "41"이다. 대표 화소값들에 대한 비트열은 서브 블록수가 3개이므로, "3*9[bit]"의 비트열이 생성된다. 8[bit]의 화소값들을 갖는 블록은 시공간 예측에 의해 9[bit]의 화소값들을 갖게 되고, 9[bit]의 화소값들을 갖는 블록의 3개의 서브블록들은 비트량이 "3*9[bit]"에 해당하는 비트열을 생성한다. 즉, 3개의 서브블록들 각각의 대표 화소값들 "4", "18" 및 "41"에 대한 2진화된 비트열을 차례대로 나열하면, "000000100,000010010,000101001"이라는 비트열을 얻을 수 있다.
따라서, 전술한 도 4a에 도시된 블록에 대한 모드의 비트열, 맵 정보의 비트열 및 대표 화소값의 비트열을 순서대로 나열하면, 비트량이 "3+3*9+2*16=62[bit]"인 "011,00,00,00,01,00,01,01,10,00,00,00,10,00,00,00,01,000000100,000010010, 000101001"의 비트열을 얻을 수 있다.
한편, 블록에 대한 서브블록이 설정되지 않고, 화소 평균값이 "0"에 해당하는 모드 0의 경우에는 모드 종류를 나타내는 비트열만을 생성한다. 이때, 모드 0에 해당하는 블록에 대한 맵 정보 및 대표 화소값들에 대한 비트열은 생성하지 않는 것을 특징으로 한다. 모드 0에 해당하는 블록의 비트화되는 량은 모드 종류에 대해 서만 비트열이 생성되므로 "3+0*9+0*16=3[bit]"만으로 표현될 수 있다.
모드 1은 서브 블록이 설정되지 아니하므로 서브 블록수는 존재하지 않으며, 단지 블록이 한 개 존재함을 나타내는 숫자 "1"이 지정된다. 또한, 맵 정보의 맵 비트수는 "0[bit]"이 된다. 따라서, 모드 1에 해당하는 경우에 블록의 비트화되는 량은 표 1에서 보는 바와 같이 "3+1*9+0*16=12[bit]"이다.
모드 2는 서브 블록수가 "2"이고, "1[bit]"의 맵 비트수가 필요하다. 따라서, 모드 2에 해당하는 경우에 블록의 비트화되는 량은 표 1에서 보는 바와 같이 "3+2*9+1*16=37[bit]"이다.
모드 4는 서브 블록수가 "4"이고, "2[bit]"의 맵 비트수가 필요하다. 따라서, 모드 4에 해당하는 경우에 블록의 비트화되는 량은 표 1에서 보는 바와 같이 "3+4*9+2*16=71[bit]"이다.
모드 5는 서브 블록수가 "5"이고, "3[bit]"의 맵 비트수가 필요하다. 따라서, 모드 5에 해당하는 경우에 블록의 비트화되는 량은 표 1에서 보는 바와 같이 "3+5*9+3*16=96[bit]"이다.
모드 6은 서브 블록수가 "6"이고, "3[bit]"의 맵 비트수가 필요하다. 따라서, 모드 6에 해당하는 경우에 블록의 비트화되는 량은 표 1에서 보는 바와 같이 "3+6*9+3*16=105[bit]"이다.
모드 7은 압축되기 전의 블록에 대한 화소들의 화소값들을 각각 비트화하기 위한 모드이다. 따라서, 서브 블록수 및 맵 비트수에 대한 비트열을 생성하지 않고, 압축되기 전의 "8[bit]"의 비트수를 갖는 블록의 각 화소들의 화소값들에 대해 비트열을 생성한다. 모드 7에 해당하는 블록의 비트화되는 량은 표 1에서 보는 바와 같이 "3+8*16=131[bit]"이다.
이상에서 설명한 바와 같이, 블록에 대해 서브블록들을 설정하고, 설정된 서브블록들에 대하여 몇 개의 모드로 구분하여, 모드에 따라 비트열을 생성함으로써 종래의 압축 방식에 비해 화상의 열화를 줄이면서도 압축 효율을 높일 수 있다.
이하, 본 발명에 의한 화상 데이터 복호화 방법을 첨부된 도면을 참조하여 다음과 같이 설명한다.
도 6은 본 발명에 의한 화상 데이터 복호화 방법을 설명하기 위한 일 실시예의 플로차트이다.
본 발명에 의한 화상 데이터 복호화 방법은 도 2에 도시된 화상 데이터 부호화 방법에 의해 생성된 모드의 비트열, 맵 정보의 비트열 및 대표 화소값들의 비트열을 복화화하는 방법이다.
먼저, 블록의 결정된 모드에 대한 비트열을 복호화한다(제30 단계). 예를 들어, 전술한 도 4a에 도시된 블록에 대한 모드의 비트열에 해당하는 "011"을 복호화면, "3"이라는 숫자 정보를 얻을 수 있고, 따라서 모드 종류가 모드 3이라는 것을 확인할 수 있다. 모드 비트수는 사전에 정해지는 것이므로, 모드 비트수가 "3[bit]"라는 정보에 의해 "011,00,00,00,01,00,01,01,10,00,00,00,10,00,00,00, 01,000000100,000010010, 000101001"의 비트열 중 우선적으로 "3[bit]"에 해당하는 "011"을 복호화한다.
제30 단계 후에, 블록의 맵 정보에 대한 비트열을 복호화한다(제32 단계). 예를 들어, 전술한 도 4a에 도시된 블록에 대한 맵 정보의 비트열에 해당하는 "00,00,00,01,00,01,01,10,00,00,00,10,00,00,00,01"을 복호화하면, 도 5c에 해당하는 맵 정보를 얻을 수 있다. 제30 단계에서 블록에 대해 모드 3에 의한 비트열이 생성되었음을 알 수 있고, 모드 3에 의해 맵 비트수가 "2[bit]"임을 알 수 있다. 따라서,"011,00,00,00,01,00,01,01,10,00,00,00,10,00,00,00,01,000000100,000010010,000101001"의 비트열 중 "011" 이후에 "2[bit]씩 16개의 비트열을 읽어서 맵 정보를 복호화한다.
제32 단계 후에, 블록의 대표 화소값들에 대한 비트열을 복호화한다(제34 단계). 예를 들어, 전술한 도 4c, 도 4e 및 도 4f에 도시된 서브블록들에 대한 대표 화소값들의 비트열에 해당하는 "000000100,000010010,000101001"을 복호화하면, 도 4c, 도 4e 및 도 4f에 도시된 서브블록들에 대한 각각의 대표 화소값들에 해당하는 "4", "18" 및 "41"을 얻을 수 있다. 제30 단계에서 블록에 대해 모드 3에 의한 비트열이 생성되었음을 알 수 있고, 모드 3에 의해 서브 블록수가 "3'개임을 알 수 있다. 따라서,"011,00,00,00,01,00,01,01,10,00,00,00,10,00,00,00,01,000000100, 000010010, 000101001"의 비트열 중 "011,00,00,00,01,00,01,01,10,00,00,00,10, 00,00,00,01" 이후에 "9[bit]씩 3개의 비트열을 읽어서 대표 화소값들을 복호화한다.
도 7은 제30 내지 제34 단계에 의해 도 4a에 도시된 블록의 비트열이 복호화된 일 예를 나타내는 도면이다. 도 7에서 보는 바와 같이, 원래의 화상에 대해 손실 압축된 화상의 복호화된 상태를 확인할 수 있다.
제34 단계 후에, 부호화된 RGB 신호를 복호화한다(제36 단계). 전술한 제12 단계에서 부호화된 RGB 신호를 복호화한다. 예를 들어, 도 7의 비트열이 복호화된 블록에 대한 RGB 신호를 복호화한다.
제36 단계 후에, 복호화된 블록의 공간상 예측된 화소값들을 보상하거나, 복호화된 블록의 시간상 예측된 화소값들을 보상한다(제38 단계).
이하, 본 발명에 의한 화상 데이터 부호화 장치를 첨부된 도면을 참조하여 다음과 같이 설명한다.
도 8은 본 발명에 의한 화상 데이터 부호화 장치를 설명하기 위한 일 실시예의 블록도로서, 시공간상 예측부(100), RGB 신호 부호화부(110), 서브블록 부호화부(120), 압축비율 요구 감지부(130), 임계값 재설정부(140) 및 비트열 생성부(150)로 구성된다.
시공간상 예측부(100)는 공간적으로 근접한 블록을 이용하여 현재 블록의 화소값들을 공간상 예측하거나, 시간상 이전 블록을 이용하여 현재 블록의 화소값들을 시간상 예측하고, 예측한 결과를 RGB 신호 부호화부(110)로 출력한다. 시공간상 예측부(100)는 공간상 예측시에 각 컬러 성분의 현재 블록과 공간적으로 근접한 블록으로부터 예측 방향을 추정하여 화소값들을 예측한다. 또한, 시공간상 예측부(100)는 시간상 예측시에 각 컬러 성분의 이전 블록과 현재 블록 사이에 움직임을 추정하여 화소값들을 예측한다.
RGB 신호 부호화부(110)는 R, G 및 B 각각의 색상에 대해, 시공간상 예측부(100)에서 예측된 화소값들 중 중복되는 정보를 제거하여 RGB 신호를 부호화하고, 부호화한 결과를 서브블록 부호화부(120)로 출력한다. RGB 신호 부호화부(110)는 예측된 R, G 및 B 각각의 색상에 대한 화소값들의 상관관계(correlation)를 이용하여 중복되는 정보를 제거하고, 중복된 부분이 제거된 RGB 신호를 부호화한다.
서브블록 부호화부(120)는 블록 내 화소들의 화소 평균값을 기준으로 블록을 2개의 서브 블록들로 설정하는 과정을 반복하고, 설정된 서브 블록들의 맵 정보를 생성하고, 서브 블록들의 개수에 따른 비트열 생성을 위한 모드를 결정한다.
도 9는 도 8에 도시된 서브블록 부호화부(120)를 설명하기 위한 일 실시예의 블록도로서, 화소 평균값 산출부(200), 화소 그룹 지정부(210), 임계값 비교부(220), 서브블록 설정부(230), 대표 화소값 결정부(240), 맵 정보 생성부(250), 설정 종료 검사부(260) 및 모드 결정부(270)로 구성된다.
화소 평균값 산출부(200)는 블록 또는 서브 블록들 내의 화소들의 화소 평균값들을 각각 산출하고, 산출한 결과를 화소 그룹 지정부(210) 및 임계값 비교부(220)로 출력한다. 화소 평균값 산출부(200)는 화소 그룹 지정부(210)의 지정된 결과, 서브블록 설정부(230)의 설정된 결과 또는 설정 종료 검사부(260)의 검사된 결과에 응답하여, 서브 블록들 내의 화소들의 화소 평균값들을 각각 산출한다.
화소 평균값 산출부(200)는 산출된 화소 평균값이 정수가 아닌 경우에는 반올림하거나 기타의 방법으로 정수의 숫자를 취하는 것을 특징으로 한다.
화소 그룹 지정부(210)는 산출된 화소 평균값을 기준으로 화소 평균값보다 크거나 같은 화소값을 갖는 화소들을 하나의 화소 그룹으로 지정하고, 화소 평균값보다 작은 화소값을 갖는 화소들을 다른 하나의 화소 그룹으로 지정하고, 지정한 결과를 화소 평균값 산출부(200)로 출력한다.
임계값 비교부(220)는 2개의 화소 그룹들 각각의 화소 평균값들의 차에 해당하는 평균 차이값이 소정 임계값보다 큰가를 검사하고, 검사한 결과를 서브블록 설정부(230) 및 대표 화소값 결정부(240)로 출력한다.
평균 차이값이 소정 임계값보다 크다는 비교 결과를 임계값 비교부(220)로부터 입력받으면, 서브블록 설정부(230)는 화소 그룹들 각각을 서브 블록들로 설정하고, 설정한 결과를 화소 평균값 산출부(200)로 출력한다.
평균 차이값이 소정 임계값보다 크지 않다는 비교 결과를 임계값 비교부(220)로부터 입력받으면, 대표 화소값 결정부(240)는 블록 또는 서브블록들의 화소값들을 대표하는 대표 화소값을 결정하고, 결정한 결과를 맵 정보 생성부(250)로 출력한다. 대표 화소값 결정부(240)는 블록 또는 서브블록들 각각의 화소들에 대한 화소값들의 평균을 대표 화소값으로서 결정하는 것을 특징으로 한다.
맵 정보 생성부(250)는 대표 화소값이 결정된 서브 블록들 각각의 화소들에 대한 맵 정보를 생성하고, 생성한 결과를 설정 종료 검사부(260)으로 출력한다. 맵 정보 생성부(250)는 서브 블록들마다 동일한 맵 정보를 생성하는 것을 특징으로 한다.
설정 종료 검사부(260)는 블록의 모든 서브 블록의 설정이 종료되었는가를 검사하고, 검사한 결과를 화소 평균값 산출부(200) 및 모드 결정부(270)로 출력한다.
설정 종료 검사부(260)로부터 블록의 모든 서브 블록의 설정이 종료되었다는 검사 결과를 입력받으면, 모드 결정부(270)는 블록에 대한 모드를 결정한다. 모드의 종류는 블록에서 설정될 수 있는 서브 블록들의 최대 개수 범위 내에서 사전에 정해지는 것을 특징으로 한다. 또한, 블록에 대한 서브블록이 설정되지 않고, 화소 평균값이 "0"에 해당한다면, 이러한 경우를 모드의 부가적인 한 종류로서 분류할 수 있다.
압축비율 요구 감지부(130)는 화상 데이터의 압축비율의 조정이 요구되는가를 감지하고, 감지한 결과를 임계값 재설정부(140) 및 비트열 생성부(150)로 출력한다.
압축비율 요구 감지부(130)로부터 압축비율의 조정이 요구된다는 감지결과를 입력받으면, 임계값 재설정부(140)는 소정 임계값을 재설정하고, 재설정한 결과를 서브블록 부호화부(120)로 출력한다. 압축비율에 대하여 높이기를 원한다면, 소정 임계값의 수치를 더 높게 하면 된다. 임계값 재설정부(140)는 압축비율을 높이기 위해 소정 임계값의 수치를 높게 조정한다. 또한, 임계값 재설정부(140)는 압축비율을 낮추기 위해 소정 임계값의 수치를 낮게 조정한다.
압축비율 요구 감지부(130)로부터 압축비율의 조정이 요구되지 않는다는 감지결과를 입력받으면, 비트열 생성부(150)는 서브블록 부호화부(120)에서 부호화된 결정된 모드의 비트열, 맵 정보의 비트열 및 대표 화소값들의 비트열을 생성한다.비트열 생성부(150)는 모드의 비트열을 먼저 생성한 이후에, 맵 정보 및 대표 화소값들의 비트열을 생성하는 것을 특징으로 한다.
블록에 대한 서브 블록이 설정되지 않고 화소 평균값이 "0"에 해당한다면, 비트열 생성부(150)는 결정된 모드에 대해서 비트열을 생성하고, 맵 정보 및 대표 화소값들에 대한 비트열은 생성하지 않는 것을 특징으로 한다.
이하, 본 발명에 의한 화상 데이터 복호화 장치를 첨부된 도면을 참조하여 다음과 같이 설명한다.
도 10은 본 발명에 의한 화상 데이터 복호화 장치를 설명하기 위한 일 실시예의 블록도로서, 모드 복호화부(300), 맵 정보 복호화부(310), 대표 화소값 복호화부(320), RGB 신호 복호화부(330) 및 시공간상 예측 보상부(340)로 구성된다.
모드 복호화부(300)는 전술한 화상 데이터 부호화 장치에 의해 생성된 모드에 대한 비트열을 복호화하고, 복호화한 결과를 맵 정보 복호화부(310)로 출력한다. 모드 복호화부(300)는 화상 데이터 부호화 장치에 의해 생성된 비트열 중 사전에 정해진 모드 비트수에 해당하는 만큼의 비트열을 복호화한다.
맵 정보 복호화부(310)는 전술한 화상 데이터 부호화 장치에 의해 생성된 맵 정보에 대한 비트열을 복호화하고, 복호화한 결과를 대표 화소값 복호화부(320)로 출력한다.
대표 화소값 복호화부(320)는 전술한 화상 데이터 부호화 장치에 의해 생성된 대표 화소값들에 대한 비트열을 복호화하고, 복호화한 결과를 RGB 신호 복호화부(330)로 출력한다.
RGB 신호 복호화부(330)는 대표 화소값 복호화부(320)에서 복호화되어 입력된 RGB 신호를 복호화하고, 복호화한 결과를 시공간상 예측 보상부(340)로 출력한다.
RGB 신호 복호화부(330)로부터 복호화된 RGB 신호를 입력받으면, 시공간상 예측 보상부(340)는 복호화된 블록의 공간상 예측된 화소값들을 보상하거나, 복호화된 블록의 시간상 예측된 화소값들을 보상한다.
이러한 본원 발명인 화상 데이터 부호화 및 복호화 방법 및 장치는 이해를 돕기 위하여 도면에 도시된 실시예를 참고로 설명되었으나, 이는 예시적인 것에 불과하며, 당해 분야에서 통상적 지식을 가진 자라면 이로부터 다양한 변형 및 균등한 타 실시예가 가능하다는 점을 이해할 것이다. 따라서, 본 발명의 진정한 기술적 보호 범위는 첨부된 특허청구범위에 의해 정해져야 할 것이다.
이상에서 설명한 바와 같이, 본 발명에 의한 화상 데이터 부호화 및 복호화 방법 및 장치는 시각적으로 화상의 열화가 거의 발생하지 않으면서도 압축 효율을 높일 수 있는 효과가 있다.

Claims (26)

  1. (a) 블록 내 화소들의 화소 평균값을 기준으로 상기 블록을 2개의 서브 블록들로 설정하는 과정을 반복하고, 상기 설정된 서브 블록들의 맵 정보를 생성하고, 상기 서브 블록들의 개수에 따른 비트열 생성을 위한 모드를 결정하는 단계; 및
    (b) 상기 결정된 모드의 비트열, 상기 맵 정보의 비트열 및 상기 블록 또는 상기 서브 블록들의 화소값들을 대표하는 각각의 대표 화소값들의 비트열을 생성하는 단계를 구비하는 것을 특징으로 하는 화상 데이터 부호화 방법.
  2. 제1 항에 있어서, 상기 (a) 단계는
    (a1) 상기 블록 내 화소들의 상기 화소 평균값을 산출하는 단계;
    (a2) 상기 산출된 화소 평균값을 기준으로 상기 화소 평균값보다 크거나 같은 화소값을 갖는 화소들을 하나의 화소 그룹으로 지정하고, 상기 화소 평균값보다 작은 화소값을 갖는 화소들을 다른 하나의 화소 그룹으로 지정하는 단계;
    (a3) 2개의 상기 화소 그룹들 각각의 화소 평균값들을 산출하는 단계;
    (a4) 상기 화소 그룹들 각각의 화소 평균값들의 차에 해당하는 평균 차이값이 소정 임계값보다 큰가를 검사하는 단계;
    (a5) 상기 평균 차이값이 상기 소정 임계값보다 크다면, 상기 화소 그룹들 각각을 서브 블록들로 설정하고 상기 (a2) 단계로 진행하는 단계;
    (a6) 상기 평균 차이값이 상기 소정 임계값보다 크지 않다면, 상기 대표 화소값을 결정하는 단계;
    (a7) 상기 대표 화소값이 결정된 상기 서브 블록들 각각의 화소들에 대한 상기 맵 정보를 생성하는 단계;
    (a8) 상기 블록의 모든 서브 블록들의 설정이 종료되었는가를 검사하고, 모든 서브 블록의 설정이 종료되지 않았다면, 상기 (a2) 단계로 진행하는 단계; 및
    (a9) 상기 블록의 모든 서브 블록의 설정이 종료되었다면, 상기 모드를 결정하는 단계를 구비하는 것을 특징으로 하는 화상 데이터 부호화 방법.
  3. 제2 항에 있어서, 상기 (a6) 단계는
    상기 블록 또는 상기 서브 블록들 각각의 화소들에 대한 화소값들의 평균을 상기 대표 화소값으로서 결정하는 것을 특징으로 하는 화상 데이터 부호화 방법.
  4. 제3 항에 있어서, 상기 (a7) 단계는
    상기 서브 블록들마다 동일한 맵 정보를 갖는 것을 특징으로 하는 화상 데이터 부호화 방법.
  5. 제1 항에 있어서, 상기 화상 데이터 부호화 방법은
    상기 모드의 종류가 상기 블록에서 설정될 수 있는 서브 블록들의 최대 개수 범위 내에서 사전에 정해지는 것을 특징으로 하는 화상 데이터 부호화 방법.
  6. 제1 항에 있어서, 상기 (b) 단계는
    상기 모드의 비트열을 먼저 생성한 이후에, 상기 맵 정보 및 상기 대표 화소값들의 비트열을 생성하는 것을 특징으로 하는 화상 데이터 부호화 방법.
  7. 제1 항에 있어서, 상기 화상 데이터 부호화 방법은
    (c) 공간적으로 근접한 블록을 이용하여 현재 블록의 화소값들을 공간상 예측하거나, 시간상 이전 블록을 이용하여 상기 현재 블록의 화소값들을 시간상 예측하고 상기 (a) 단계로 진행하는 단계를 더 구비하는 것을 특징으로 하는 화상 데이 터 부호화 방법.
  8. 제7 항에 있어서, 상기 (b) 단계는
    상기 (c) 단계 후에, 상기 (a) 단계에서 구해진 상기 화소 평균값을 레지듀 평균값이라 할 때, 상기 블록에 대한 서브 블록이 설정되지 않고, 상기 레지듀 평균값이 "0"에 해당한다면, 상기 결정된 모드에 대한 비트열을 생성하고, 상기 맵 정보 및 상기 대표 화소값들에 대한 비트열을 생성하지 않는 것을 특징으로 하는 화상 데이터 부호화 방법.
  9. 제7 항에 있어서, 상기 화상 데이터 부호화 방법은
    (d) 상기 (c) 단계에서 R, G 및 B 각각의 색상에 대해 상기 공간상 예측된 화소값들 및 상기 시간상 예측된 화소값들 중 중복되는 정보를 제거하여 RGB 신호를 부호화하는 단계를 더 구비하는 것을 특징으로 하는 화상 데이터 부호화 방법.
  10. 제2 항에 있어서, 상기 화상 데이터 부호화 방법은
    (e) 상기 (a) 단계 후에, 상기 블록의 압축비율의 조정이 요구되는가를 감지하는 단계; 및
    (f) 상기 압축비율의 조정이 요구된다면, 상기 소정 임계값을 재설정하고, 상기 (a)단계로 진행하는 단계를 더 구비하는 것을 특징으로 하는 화상 데이터 부호화 방법.
  11. (a) 블록에 있어서 서브 블록들의 개수에 따른 비트열 생성을 위한 모드의 비트열을 복호화하는 단계; 및
    (b) 상기 서브 블록들의 맵 정보에 대한 비트열을 복호화하고, 상기 블록 또는 상기 서브 블록들의 화소값들을 대표하는 각각의 대표 화소값들에 대한 비트열을 복호화하는 단계를 구비하는 것을 특징으로 하는 화상 데이터 복호화 방법.
  12. 제11 항에 있어서, 상기 화상 데이터 복호화 방법은
    (c) 상기 (b) 단계 후에, 상기 복호화된 블록의 공간상 예측된 화소값들을 보상하거나, 시간상 예측된 화소값들을 보상하는 단계를 더 구비하는 것을 특징으로 하는 화상 데이터 복호화 방법.
  13. 제12 항에 있어서, 상기 화상 데이터 복호화 방법은
    (d) 상기 (b) 단계 후에, 상기 부호화된 RGB 신호를 복호화하고 상기 (c) 단계로 진행하는 단계를 더 구비하는 것을 특징으로 하는 화상 데이터 복호화 방법.
  14. 블록 내 화소들의 화소 평균값을 기준으로 상기 블록을 2개의 서브 블록들로 설정하는 과정을 반복하고, 상기 설정된 서브 블록들의 맵 정보를 생성하고, 상기 서브 블록들의 개수에 따른 비트열 생성을 위한 모드를 결정하는 서브블록 부호화부; 및
    상기 서브블록 부호화부에서 부호화된 상기 결정된 모드의 비트열, 상기 맵 정보의 비트열 및 상기 블록 또는 상기 서브 블록들의 화소값들을 대표하는 대표 화소값들의 비트열을 생성하는 비트열 생성부를 구비하는 것을 특징으로 하는 화상 데이터 부호화 장치.
  15. 제14 항에 있어서, 상기 서브블록 부호화부는
    상기 블록 또는 상기 서브 블록들 내의 화소들의 상기 화소 평균값들을 각각 산출하는 화소 평균값 산출부;
    상기 산출된 화소 평균값을 기준으로 상기 화소 평균값보다 크거나 같은 화소값을 갖는 화소들을 하나의 화소 그룹으로 지정하고, 상기 화소 평균값보다 작은 화소값을 갖는 화소들을 다른 하나의 화소 그룹으로 지정하는 화소 그룹 지정부;
    2개의 상기 화소 그룹들 각각의 화소 평균값들의 차에 해당하는 평균 차이값이 소정 임계값보다 큰가를 검사하는 임계값 비교부;
    상기 임계값 비교부의 비교된 결과에 응답하여, 상기 화소 그룹들 각각을 서브 블록들로 설정하는 서브블록 설정부;
    상기 임계값 비교부의 비교된 결과에 응답하여, 상기 대표 화소값을 결정하는 대표 화소값 결정부;
    상기 대표 화소값이 결정된 상기 서브 블록들 각각의 화소들에 대한 상기 맵 정보를 생성하는 맵 정보 생성부;
    상기 블록의 모든 서브 블록의 설정이 종료되었는가를 검사하는 설정 종료 검사부; 및
    상기 설정 종료 검사부의 검사된 결과에 응답하여, 상기 블록에 대한 상기 모드를 결정하는 모드 결정부를 구비하는 것을 특징으로 하는 화상 데이터 부호화 장치.
  16. 제15 항에 있어서, 상기 대표 화소값 결정부는
    상기 블록 또는 상기 서브블록들 각각의 화소들에 대한 화소값들의 평균을 상기 대표 화소값으로서 결정하는 것을 특징으로 하는 화상 데이터 부호화 장치.
  17. 제16 항에 있어서, 상기 맵 정보 생성부는
    상기 서브 블록들마다 동일한 맵 정보를 생성하는 것을 특징으로 하는 화상 데이터 부호화 장치.
  18. 제14 항에 있어서, 상기 화상 데이터 부호화 장치는
    상기 모드의 종류가 상기 블록에서 설정될 수 있는 서브 블록들의 최대 개수 범위 내에서 사전에 정해지는 것을 특징으로 하는 화상 데이터 부호화 장치.
  19. 제14 항에 있어서, 상기 비트열 생성부는
    상기 모드의 비트열을 먼저 생성한 이후에, 상기 맵 정보 및 상기 대표 화소값들의 비트열을 생성하는 것을 특징으로 하는 화상 데이터 부호화 장치.
  20. 제14 항에 있어서, 상기 화상 데이터 부호화 장치는
    공간적으로 근접한 블록을 이용하여 현재 블록의 화소값들을 공간상 예측하거나, 시간상 이전 블록을 이용하여 상기 현재 블록의 화소값들을 시간상 예측하는 시공간상 예측부를 더 구비하는 것을 특징으로 하는 화상 데이터 부호화 장치.
  21. 제20 항에 있어서, 상기 비트열 생성부는
    상기 시공간상 예측부에서 예측된 화소값들에 대해 상기 서브블록 부호화부에서 구해진 상기 화소 평균값을 레지듀 평균값이라 할 때, 상기 블록에 대한 서브 블록이 설정되지 않고 상기 레지듀 평균값이 "0"에 해당한다면, 상기 결정된 모드에 대해서 비트열을 생성하고, 상기 맵 정보 및 상기 대표 화소값들에 대한 비트열을 생성하지 않는 것을 특징으로 하는 화상 데이터 부호화 장치.
  22. 제20 항에 있어서, 상기 화상 데이터 부호화 장치는
    R, G 및 B 각각의 색상에 대해, 상기 시공간상 예측부에서 예측된 화소값들 중 중복되는 정보를 제거하여 RGB 신호를 부호화하는 RGB 신호 부호화부를 더 구비하는 것을 특징으로 하는 화상 데이터 부호화 장치.
  23. 제15 항에 있어서, 상기 화상 데이터 부호화 장치는
    상기 블록의 압축비율의 조정이 요구되는가를 감지하는 압축비율 요구 감지 부; 및
    상기 압축비율 요구 감지부의 감지된 결과에 응답하여, 상기 소정 임계값을 재설정하는 임계값 재설정부를 더 구비하는 것을 특징으로 하는 화상 데이터 부호화 장치.
  24. 블록에 있어서 서브 블록들의 개수에 따른 비트열 생성을 위한 모드의 비트열을 복호화하는 모드 복호화부;
    상기 서브 블록들의 맵 정보에 대한 비트열을 복호화하는 맵 정보 복호화부; 및
    상기 블록 또는 상기 서브 블록들의 화소값들을 대표하는 각각의 대표 화소값들에 대한 비트열을 복호화하는 대표 화소값 복호화부를 구비하는 것을 특징으로 하는 화상 데이터 복호화 장치.
  25. 제24 항에 있어서, 상기 화상 데이터 복호화 장치는
    상기 복호화된 블록의 공간상 예측된 화소값들을 보상하거나, 시간상 예측된 화소값들을 보상하는 시공간상 예측 보상부를 더 구비하는 것을 특징으로 하는 화상 데이터 복호화 장치.
  26. 제25 항에 있어서, 상기 화상 데이터 복호화 장치는
    상기 부호화된 RGB 신호를 복호화하는 RGB 신호 복호화부를 더 구비하는 것 을 특징으로 하는 화상 데이터 복호화 장치.
KR20040090893A 2004-11-09 2004-11-09 화상 데이터 부호화 및 복호화 방법 및 장치 KR100647294B1 (ko)

Priority Applications (5)

Application Number Priority Date Filing Date Title
KR20040090893A KR100647294B1 (ko) 2004-11-09 2004-11-09 화상 데이터 부호화 및 복호화 방법 및 장치
EP20050256865 EP1655967A1 (en) 2004-11-09 2005-11-07 Method and apparatus for encoding and decoding image data
US11/268,645 US7865027B2 (en) 2004-11-09 2005-11-08 Method and apparatus for encoding and decoding image data
JP2005324945A JP2006148892A (ja) 2004-11-09 2005-11-09 画像データの符号化方法及び復号化方法並びに符号化装置及び復号化装置
US12/926,687 US8326065B2 (en) 2004-11-09 2010-12-03 Method and apparatus for encoding image data including generation of bit streams

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR20040090893A KR100647294B1 (ko) 2004-11-09 2004-11-09 화상 데이터 부호화 및 복호화 방법 및 장치

Publications (2)

Publication Number Publication Date
KR20060042294A true KR20060042294A (ko) 2006-05-12
KR100647294B1 KR100647294B1 (ko) 2006-11-23

Family

ID=35677354

Family Applications (1)

Application Number Title Priority Date Filing Date
KR20040090893A KR100647294B1 (ko) 2004-11-09 2004-11-09 화상 데이터 부호화 및 복호화 방법 및 장치

Country Status (4)

Country Link
US (2) US7865027B2 (ko)
EP (1) EP1655967A1 (ko)
JP (1) JP2006148892A (ko)
KR (1) KR100647294B1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101014060B1 (ko) * 2008-10-17 2011-02-14 엘지이노텍 주식회사 영상 리사이징 방법

Families Citing this family (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1538844A3 (en) * 2003-11-26 2006-05-31 Samsung Electronics Co., Ltd. Color image residue transformation and encoding method
KR100647294B1 (ko) 2004-11-09 2006-11-23 삼성전자주식회사 화상 데이터 부호화 및 복호화 방법 및 장치
KR101204801B1 (ko) * 2005-07-15 2012-11-26 삼성전자주식회사 색상계에 적응적인 화소값 보정 방법 및 장치, 그를 이용항영상 부호화/복호화 방법 및 장치
US20080130988A1 (en) * 2005-07-22 2008-06-05 Mitsubishi Electric Corporation Image encoder and image decoder, image encoding method and image decoding method, image encoding program and image decoding program, and computer readable recording medium recorded with image encoding program and computer readable recording medium recorded with image decoding program
KR20080045516A (ko) * 2006-11-20 2008-05-23 삼성전자주식회사 Rgb 영상의 부호화 및 복호화 방법과 그 장치
KR101426272B1 (ko) * 2008-03-10 2014-08-07 삼성전자주식회사 영상 부호화장치 및 영상 복호화장치
KR20090129926A (ko) * 2008-06-13 2009-12-17 삼성전자주식회사 영상 부호화 방법 및 그 장치, 영상 복호화 방법 및 그 장치
KR101703327B1 (ko) * 2010-01-14 2017-02-06 삼성전자 주식회사 계층적 데이터 단위의 패턴 정보를 이용하는 비디오 부호화 방법과 그 장치, 및 비디오 복호화 방법과 그 장치
CN113573075A (zh) 2010-04-13 2021-10-29 Ge视频压缩有限责任公司 显著性图和变换系数块的编码
JP5281623B2 (ja) 2010-09-29 2013-09-04 日本電信電話株式会社 画像符号化方法,画像復号方法,画像符号化装置,画像復号装置およびそれらのプログラム
JP5281624B2 (ja) 2010-09-29 2013-09-04 日本電信電話株式会社 画像符号化方法,画像復号方法,画像符号化装置,画像復号装置およびそれらのプログラム
JP5357199B2 (ja) * 2011-03-14 2013-12-04 日本電信電話株式会社 画像符号化方法,画像復号方法,画像符号化装置,画像復号装置,画像符号化プログラムおよび画像復号プログラム
EP2716041A4 (en) 2011-05-31 2014-10-15 Dolby Lab Licensing Corp VIDEO COMPRESSION WITH RESOLUTION COMPENSATION AND OPTIMIZATION
SG11202010629TA (en) * 2018-05-10 2020-12-30 Samsung Electronics Co Ltd Method and apparatus for image encoding, and method and apparatus for image decoding

Family Cites Families (74)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
IT1155557B (it) * 1982-07-19 1987-01-28 Cselt Centro Studi Lab Telecom Metdodo e dispositivo per la codifica del segnale d immagine con riduzione di ridondanza a distorsione localmente uniforme
US4751742A (en) * 1985-05-07 1988-06-14 Avelex Priority coding of transform coefficients
US5122873A (en) * 1987-10-05 1992-06-16 Intel Corporation Method and apparatus for selectively encoding and decoding a digital motion video signal at multiple resolution levels
JPH01279671A (ja) 1988-05-06 1989-11-09 Hitachi Ltd 文書画像データの符号化方式
US4920501A (en) * 1988-10-19 1990-04-24 Eastman Kodak Company Digital halftoning with minimum visual modulation patterns
CA2000156C (en) 1989-02-14 1995-05-02 Kohtaro Asai Picture signal encoding and decoding apparatus
DE69132063T2 (de) 1990-12-28 2000-09-14 Canon Kk Bildcodierung mit Optimierung der erzeugten Codemenge
JPH05167863A (ja) * 1991-04-15 1993-07-02 Canon Inc 画像処理方法及び装置
US5761342A (en) * 1991-04-16 1998-06-02 Canon Kabushiki Kaisha Image processing apparatus and method
US5414527A (en) * 1991-08-14 1995-05-09 Fuji Xerox Co., Ltd. Image encoding apparatus sensitive to tone variations
US5412741A (en) * 1993-01-22 1995-05-02 David Sarnoff Research Center, Inc. Apparatus and method for compressing information
US5748245A (en) 1993-03-29 1998-05-05 Canon Kabushiki Kaisha Encoding apparatus for encoding input information data while controlling a code quantity of encoded information data
ATE190793T1 (de) 1993-06-07 2000-04-15 Koninkl Philips Electronics Nv Vorrichtung zur übertragung oder aufzeichnung von digitalen fernsehbildern, und vorrichtung zum empfang derselben
US5513128A (en) 1993-09-14 1996-04-30 Comsat Corporation Multispectral data compression using inter-band prediction
US5479527A (en) 1993-12-08 1995-12-26 Industrial Technology Research Inst. Variable length coding system
US5467131A (en) 1993-12-30 1995-11-14 Hewlett-Packard Company Method and apparatus for fast digital signal decoding
MX9700385A (es) 1994-07-14 1998-05-31 Johnson Grace Company Metodo y aparato para comprimir imagenes.
KR960013055A (ko) * 1994-09-27 1996-04-20 김광호 조건부 퀴드트리 분할방식의 화상압축방법 및 장치
US5748244A (en) 1995-03-28 1998-05-05 Daewoo Electronics Co., Ltd. Adaptive runlength coding based on zero and non-zero subblocks
US6026232A (en) 1995-07-13 2000-02-15 Kabushiki Kaisha Toshiba Method and system to replace sections of an encoded video bitstream
JP3992303B2 (ja) 1995-06-22 2007-10-17 ソニー株式会社 信号圧縮装置と信号伸長装置および信号圧縮方法と信号伸長方法
KR0178221B1 (ko) * 1995-07-31 1999-05-01 배순훈 픽셀의 평균값을 이용한 개선된 패턴 벡터 부호화 시스템
US6957350B1 (en) * 1996-01-30 2005-10-18 Dolby Laboratories Licensing Corporation Encrypted and watermarked temporal and resolution layering in advanced television
US5867221A (en) * 1996-03-29 1999-02-02 Interated Systems, Inc. Method and system for the fractal compression of data using an integrated circuit for discrete cosine transform compression/decompression
US6011864A (en) 1996-07-03 2000-01-04 Apple Computer, Inc. Digital image coding system having self-adjusting selection criteria for selecting a transform function
JP3466032B2 (ja) 1996-10-24 2003-11-10 富士通株式会社 動画像符号化装置および復号化装置
JP4034380B2 (ja) * 1996-10-31 2008-01-16 株式会社東芝 画像符号化/復号化方法及び装置
KR100202493B1 (ko) * 1996-12-30 1999-06-15 전주범 쿼드트리 부호화 방법
US6091767A (en) 1997-02-03 2000-07-18 Westerman; Larry Alan System for improving efficiency of video encoders
US5974184A (en) 1997-03-07 1999-10-26 General Instrument Corporation Intra-macroblock DC and AC coefficient prediction for interlaced digital video
US6021224A (en) 1997-03-28 2000-02-01 International Business Machines Corporation Multiresolution lossless/lossy compression and storage of data for efficient processing thereof
US6094454A (en) 1997-06-19 2000-07-25 International Business Machines Corporation Multi-spectral image compression and transformation
KR100281463B1 (ko) 1998-03-14 2001-02-01 전주범 물체 기반 부호화 시스템의 보조 정보 부호화 장치
JP4051772B2 (ja) 1998-07-23 2008-02-27 ソニー株式会社 画像復号装置及び画像復号方法
US6611620B1 (en) 1998-08-28 2003-08-26 Matsushita Electric Industrial Co. Ltd. Reversible coding method, reversible coding apparatus, and memory medium used therein
JP2000078411A (ja) 1998-08-28 2000-03-14 Matsushita Electric Ind Co Ltd 可逆符号化装置及び可逆符号化方法
US6385337B1 (en) * 1998-12-21 2002-05-07 Xerox Corporation Method of selecting colors for pixels within blocks for block truncation encoding
KR100720842B1 (ko) * 1999-03-26 2007-05-25 코닌클리케 필립스 일렉트로닉스 엔.브이. 비디오 코딩 방법 및 대응 비디오 코더
US7589789B2 (en) * 1999-05-08 2009-09-15 Lg Electronics Inc. Video converting device and method for digital TV
US6604070B1 (en) 1999-09-22 2003-08-05 Conexant Systems, Inc. System of encoding and decoding speech signals
US7106910B2 (en) 1999-10-01 2006-09-12 Intel Corporation Color video coding scheme
US6614942B1 (en) 1999-12-17 2003-09-02 Microsoft Corporation Constant bitrate algorithm for block based image compression
US6909804B2 (en) 2000-01-27 2005-06-21 Marger Johnson & Mccollom, P.C. Image compression usable with animated images
US6973130B1 (en) * 2000-04-25 2005-12-06 Wee Susie J Compressed video signal including information for independently coded regions
US6972868B1 (en) 2000-11-09 2005-12-06 Hewlett-Packard Development Company, L.P. Image data compression method
AUPR222500A0 (en) 2000-12-21 2001-01-25 Unisearch Limited Method for efficient scalable compression of video
US7929610B2 (en) 2001-03-26 2011-04-19 Sharp Kabushiki Kaisha Methods and systems for reducing blocking artifacts with reduced complexity for spatially-scalable video coding
US6836569B2 (en) 2001-04-13 2004-12-28 Erwan Le Pennec Method and apparatus for processing or compressing n-dimensional signals by foveal filtering along trajectories
EP2262269B1 (en) 2001-12-17 2018-01-24 Microsoft Technology Licensing, LLC Skip macroblock coding
JP4724351B2 (ja) * 2002-07-15 2011-07-13 三菱電機株式会社 画像符号化装置、画像符号化方法、画像復号装置、画像復号方法、および通信装置
US20040236604A1 (en) 2002-12-20 2004-11-25 Mcnair Douglas S. System and method for detecting spatiotemporal clusters
US7212676B2 (en) 2002-12-30 2007-05-01 Intel Corporation Match MSB digital image compression
US6865297B2 (en) * 2003-04-15 2005-03-08 Eastman Kodak Company Method for automatically classifying images into events in a multimedia authoring application
US20040258147A1 (en) 2003-06-23 2004-12-23 Tsu-Chang Lee Memory and array processor structure for multiple-dimensional signal processing
EP1509045A3 (en) 2003-07-16 2006-08-09 Samsung Electronics Co., Ltd. Lossless image encoding/decoding method and apparatus using intercolor plane prediction
CN1578477B (zh) 2003-07-16 2011-05-04 三星电子株式会社 用于色彩图像的视频编码/解码装置和方法
MXPA06002212A (es) * 2003-08-26 2006-05-19 Thomson Licensing Metodo y aparato para codificar bloques intra-inter-codificados hibridos.
EP1538844A3 (en) 2003-11-26 2006-05-31 Samsung Electronics Co., Ltd. Color image residue transformation and encoding method
KR100754388B1 (ko) 2003-12-27 2007-08-31 삼성전자주식회사 레지듀 영상 다운/업 샘플링 방법 및 장치와 그를 이용한영상 부호화/복호화 방법 및 장치
KR20060042295A (ko) * 2004-11-09 2006-05-12 삼성전자주식회사 화상 데이터 부호화 및 복호화 방법 및 장치
KR100647294B1 (ko) * 2004-11-09 2006-11-23 삼성전자주식회사 화상 데이터 부호화 및 복호화 방법 및 장치
KR100612871B1 (ko) * 2004-11-11 2006-08-14 삼성전자주식회사 액정 표시장치의 동적 캐패시턴스 보상장치 및 방법
KR100657919B1 (ko) * 2004-12-13 2006-12-14 삼성전자주식회사 화상 데이터의 공간상 예측 장치 및 방법과 그를 이용한부호화 장치 및 방법, 화상 데이터의 공간상 예측 보상장치 및 방법과 그를 이용한 복호화 장치 및 방법
KR100634531B1 (ko) * 2004-12-29 2006-10-16 삼성전자주식회사 액정 표시장치의 동적 캐패시턴스 보상장치 및 방법
KR100682912B1 (ko) * 2005-01-05 2007-02-15 삼성전자주식회사 화상 데이터 부호화 및 복호화 방법 및 장치
US20060193527A1 (en) * 2005-01-11 2006-08-31 Florida Atlantic University System and methods of mode determination for video compression
KR101246915B1 (ko) 2005-04-18 2013-03-25 삼성전자주식회사 동영상 부호화 또는 복호화 방법 및 장치
KR101045205B1 (ko) * 2005-07-12 2011-06-30 삼성전자주식회사 화상 데이터 부호화 및 복호화 장치 및 방법
US7747096B2 (en) 2005-07-15 2010-06-29 Samsung Electronics Co., Ltd. Method, medium, and system encoding/decoding image data
KR101088375B1 (ko) * 2005-07-21 2011-12-01 삼성전자주식회사 가변 블록 변환 장치 및 방법 및 이를 이용한 영상부호화/복호화 장치 및 방법
US7903306B2 (en) 2005-07-22 2011-03-08 Samsung Electronics Co., Ltd. Sensor image encoding and/or decoding system, medium, and method
KR100873636B1 (ko) 2005-11-14 2008-12-12 삼성전자주식회사 단일 부호화 모드를 이용하는 영상 부호화/복호화 방법 및장치
KR101256548B1 (ko) 2005-12-30 2013-04-19 삼성전자주식회사 영상 부호화 및 복호화 장치 및 그 방법
KR101266168B1 (ko) 2006-08-16 2013-05-21 삼성전자주식회사 영상의 부호화, 복호화 방법 및 장치

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101014060B1 (ko) * 2008-10-17 2011-02-14 엘지이노텍 주식회사 영상 리사이징 방법

Also Published As

Publication number Publication date
JP2006148892A (ja) 2006-06-08
US7865027B2 (en) 2011-01-04
US20110081078A1 (en) 2011-04-07
US20060098884A1 (en) 2006-05-11
KR100647294B1 (ko) 2006-11-23
EP1655967A1 (en) 2006-05-10
US8326065B2 (en) 2012-12-04

Similar Documents

Publication Publication Date Title
KR100647294B1 (ko) 화상 데이터 부호화 및 복호화 방법 및 장치
KR101266168B1 (ko) 영상의 부호화, 복호화 방법 및 장치
US8170357B2 (en) Apparatus and method for generating coded block pattern for alpha channel image and alpha channel image encoding/decoding apparatus and method using the same
JP4955216B2 (ja) グレイアルファチャンネルを含んだ映像の符号化/復号化装置および方法
US9083947B2 (en) Video encoder, video decoder, method for video encoding and method for video decoding, separately for each colour plane
US11616962B2 (en) Method and apparatus for video coding
CN107040785B (zh) 图像解码和图像编码的方法
KR20200077490A (ko) 적중률이 높은 mpm을 통한 영상의 부호화 방법 및 장치, 그리고 복호화 방법 및 장치
US20170041623A1 (en) Method and Apparatus for Intra Coding for a Block in a Coding System
CN107454414B (zh) 图像编码/解码方法及相关装置
US8228985B2 (en) Method and apparatus for encoding and decoding based on intra prediction
WO2016119048A1 (en) Method and apparatus for video intermodal transcoding
US20230254507A1 (en) Deep intra predictor generating side information
KR100682912B1 (ko) 화상 데이터 부호화 및 복호화 방법 및 장치
KR20060042295A (ko) 화상 데이터 부호화 및 복호화 방법 및 장치
US20080137743A1 (en) Intra-mode predication search method and apparatus for compression of real-time video signal
KR20120088372A (ko) 고화질 영상을 위한 무손실 영상 압축방법, 압축 해제방법 및 이를 적용한 전자기기
CN112399180B (zh) 视频解码方法、装置及存储介质
CN113497940A (zh) 视频解码方法、装置、计算机设备及存储介质
US20160165231A1 (en) Content adaptive compression system
US20230291908A1 (en) Affine estimation in pre-analysis of encoder
WO2023193724A1 (en) Method, apparatus, and medium for video processing
US20210306662A1 (en) Bitstream decoder
KR20080068278A (ko) 인트라 예측 부호화, 복호화 방법 및 장치
KR20110026146A (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