KR100837410B1 - 주관적인 무손실 이미지 데이터 압축 방법 및 장치 - Google Patents

주관적인 무손실 이미지 데이터 압축 방법 및 장치 Download PDF

Info

Publication number
KR100837410B1
KR100837410B1 KR20060120191A KR20060120191A KR100837410B1 KR 100837410 B1 KR100837410 B1 KR 100837410B1 KR 20060120191 A KR20060120191 A KR 20060120191A KR 20060120191 A KR20060120191 A KR 20060120191A KR 100837410 B1 KR100837410 B1 KR 100837410B1
Authority
KR
South Korea
Prior art keywords
data
mode
bits
current data
compressed
Prior art date
Application number
KR20060120191A
Other languages
English (en)
Other versions
KR20080049535A (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 KR20060120191A priority Critical patent/KR100837410B1/ko
Priority to US11/890,497 priority patent/US8345753B2/en
Priority to JP2007282113A priority patent/JP5242991B2/ja
Priority to CN2007101888000A priority patent/CN101193301B/zh
Priority to EP20070121995 priority patent/EP1968323B1/en
Publication of KR20080049535A publication Critical patent/KR20080049535A/ko
Application granted granted Critical
Publication of KR100837410B1 publication Critical patent/KR100837410B1/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
    • 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/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/436Methods 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 using parallelised computational arrangements
    • 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/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/115Selection of the code volume for a coding unit prior to coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/146Data rate or code amount at the encoder output
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/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
    • 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/63Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding using sub-band based transform, e.g. wavelets

Abstract

본 발명은 이미지 데이터를 압축하고 복원하는 시스템에 관한 것으로, 본 발명에 따른 데이터 압축 방법은 현재 이미지 데이터를 압축하기 위한 복수 개의 모드들 각각에 따라 현재 이미지 데이터를 압축하고, 압축된 현재 이미지 데이터가 고정 길이의 비트들로 표현 가능한지 여부를 확인하고, 고정 길이의 비트들로 표현 가능한 것으로 확인된 모드들 중 어느 하나의 모드를 선정하고, 선정된 모드에 따라 압축된 현재 데이터를 출력한다. 이에 따라, 영상 인코더/디코더 시스템의 복잡도를 획기적으로 낮출 수 있고, LCD DCC(Liquid Crystal Display Dynamic Capacitance Compensation) 장치 등에서 요구하는 픽처 단위의 CBR(Constant Bit Rate)을 정확히 맞출 수 있다.

Description

주관적인 무손실 이미지 데이터 압축 방법 및 장치{Method and apparatus for visually lossless image data compression}
도 1은 종래의 LCD DCC 장치의 일부 구성도이다.
도 2는 본 발명의 바람직한 일 실시예에 따른 LCD DCC 장치의 일부 구성도이다.
도 3은 도 2에 도시된 데이터 압축 장치(21)의 두 가지 데이터 압축 방식들 중 하나인 DPCM 방식의 적용 예를 도시한 도면이다.
도 4는 도 2에 도시된 데이터 압축 장치(21)의 두 가지 데이터 압축 방식들 중 하나인 PCM 방식의 적용 예를 도시한 도면이다.
도 5는 도 2에 도시된 데이터 압축 장치(21)의 데이터 압축 형태를 도시한 도면이다.
도 6은 도 2에 도시된 데이터 압축 장치(21)의 상세 구성도이다.
도 7은 도 6에 도시된 인트라 예측부(62)에 의해 사용되는 예측 방향들을 도시한 도면이다.
도 8은 도 7에 도시된 예측 방향들이 적용되는 픽셀들을 도시한 도면이다.
도 9는 도 6에 도시된 DPCM/PCM 부호화부(63)에 의해 사용되는 모드들을 나타내는 테이블을 도시한 도면이다.
도 10은 도 6에 도시된 데이터 압축 장치(21)가 모든 색 성분들에 대하여 비트 시프트하지 않고, 데이터를 압축하는 모드 0을 도시한 도면이다.
도 11은 도 6에 도시된 데이터 압축 장치(21)가 G 성분에 대해서는 비트 시프트하지 않고, R 성분 및 B 성분에 대해서는 1 비트 시프트하고, 데이터를 압축하는 모드 1을 도시한 도면이다.
도 12는 도 6에 도시된 데이터 압축 장치(21)가 모든 색 성분들에 대하여 1 비트 시프트하고, 데이터를 압축하는 모드 2를 도시한 도면이다.
도 13은 도 6에 도시된 데이터 압축 장치(21)가 G 성분에 대해서는 1 비트 시프트하고, R 성분, B 성분에 대해서는 2 비트 시프트하고, 데이터를 압축하는 모드 3을 도시한 도면이다.
도 14는 도 6에 도시된 데이터 압축 장치(21)가 모든 색 성분들에 대하여 2 비트 시프트하고, 데이터를 압축하는 모드 4를 도시한 도면이다.
도 15는 도 6에 도시된 데이터 압축 장치(21)가 G 성분에 대해서는 2 비트 시프트하고, R 성분, B 성분에 대해서는 3 비트 시프트하고, 데이터를 압축하는 모드 5를 도시한 도면이다.
도 16은 도 6에 도시된 데이터 압축 장치(21)가 모든 색 성분들에 대하여 3 비트 시프트하고, 데이터를 압축하는 모드 6을 도시한 도면이다.
도 17은 도 6에 도시된 데이터 압축 장치(21)가 G 성분에 대해서는 3 비트 시프트하고, R 성분, B 성분에 대해서는 4 비트 시프트하고, 데이터를 압축하는 모드 7을 도시한 도면이다.
도 18은 도 6에 도시된 데이터 압축 장치(21)가 모든 색 성분들에 대하여 4 비트 시프트하고, 데이터를 압축하는 모드 8을 도시한 도면이다.
도 19는 도 6에 도시된 데이터 압축 장치(21)가 G 성분에 대해서는 4 비트 시프트하고, R 성분, B 성분에 대해서는 5 비트 시프트하고, 데이터를 압축하는 모드 9를 도시한 도면이다.
도 20은 도 6에 도시된 데이터 압축 장치(21)가 모든 색 성분들에 대하여 5 비트 시프트하고, 데이터를 압축하는 모드 10을 도시한 도면이다.
도 21은 도 6에 도시된 모드 선정부(65)의 상세 구성도이다.
도 22는 도 2에 도시된 데이터 복원 장치(23)의 상세 구성도이다.
도 23은 도 22에 도시된 DPCM/PCM 복호화부(223)에 의한 3 비트 압축 데이터의 복원 모습을 도시한 도면이다.
도 24는 도 2에 도시된 데이터 압축 장치(21)의 도 6과는 다른 형태의 구성도이다.
도 25는 도 2에 도시된 데이터 복원 장치(23)의 도 22와는 다른 형태의 구성도이다.
도 26은 본 발명의 바람직한 일 실시예에 따른 데이터 압축 방법의 흐름도이다.
도 27은 본 발명의 바람직한 일 실시예에 따른 데이터 복원 방법의 흐름도이다.
본 발명은 이미지 데이터를 압축하고 복원하는 시스템에 관한 것으로, 특히 LCD DCC(Liquid Crystal Display Dynamic Capacitance Compensation) 장치에 적합한 영상 인코더/디코더 시스템에 관한 것이다.
도 1은 종래의 LCD DCC 장치의 일부 구성도이다.
도 1을 참조하면, 종래의 LCD DCC 장치의 일부는 메모리(11) 및 LUT(Lookup Table) 모듈(12)로 구성된다. LCD DCC 장치는 TFT(Thin Film Transistor)-LCD 패널의 응답 시간을 향상시키기 위하여 LCD 패널의 픽셀의 전압을 이 픽셀에 요구되는 전압보다 높게 걸어주는 장치를 말한다. 예를 들어, LCD 패널의 픽셀의 현재 전압이 A이고, 이 픽셀의 다음 전압이 B라면, LCD DCC 장치는 (A -> B)의 형태로 전압을 구동시키는 것이 아니라, (A -> C -> B)의 형태로 전압을 구동시킨다. 이하에서는 LCD DCC 장치 중 TFT-LCD 패널의 응답 시간을 향상시키기 위한 전압 값을 계산하는 부분까지만 설명하고, 종래 기술의 문제점을 살펴보기로 한다.
메모리(11)는 현재 픽처를 입력받으면, 이것을 저장한다. 이와 같은 과정을 통하여, 메모리(11)에는 현재 픽처가 입력되는 시점에서 이전 픽처가 저장되어 있게 된다.
LUT 모듈(12)은 룩업테이블을 참조하여 TFT-LCD 패널의 타겟 응답 시간에 요구되는 전압 값을 산출한다. 보다 상세하게 설명하면, LUT 모듈(12)은 룩업 테이블로부터 현재 입력된 현재 픽처의 어느 하나의 픽셀의 휘도(luminance) 값과 메모 리(11)에 저장된 이전 픽처의 픽셀의 휘도 값의 차이에 대응하는 전압 값 정보들을 알아내고, 이것과 TFT-LCD 패널의 타겟 응답 시간을 이용하여 TFT-LCD 패널의 타겟 응답 시간에 요구되는 전압 값을 산출한다.
상기된 바와 같이, TFT-LCD 패널의 타겟 응답 시간에 요구되는 전압 값을 산출하기 위해서는 메모리(11)에 이전 픽처가 저장되어 있어야 한다. 그런데, 현재 영상의 품질들이 점점 높아짐에 따라 픽처 하나 하나의 데이터량이 매우 많아지게 되었다. 이에 따라, 메모리(11)에 픽처를 저장할 때, LCD DCC 장치로 입력된 픽처를 그대로 저장하지 않고, 이것을 압축하여 저장하려는 시도들이 진행 중에 있다. 이미지 압축을 위한 종래 기술로는 JPEG(Joint Photographic Expert Group), H.264(intra coding), JPEG-LS 등이 있지만 LCD DCC에 적용하기에는 다음과 같은 문제점들이 있었다.
첫째, 다음과 같은 화질 측면에서의 문제점이 있었다. 상기된 이미지 압축 방식에 따라 이미지 데이터를 1/2 ~ 1/3 정도로 압축을 하게 되면 PSNR(Peak Signal-to-Noise Ratio)를 이용하여 측정하는 객관적인 화질에 있어서는 큰 문제가 없는 것으로 나타난다. 그러나, 변환 부호화(transform coding)를 기반으로 하는 JPEG 또는 H.264의 경우에는 주관적인 화질의 성능이 떨어진다. 특히, 이미지 내의 에지 부분이 뭉개지는 것으로 관찰됨에 따라 이 부분에서 화질이 떨어진다. LCD DCC 장치는 사람에게 직접 보여지는 TFT-LCD 채널을 구동시키기 위한 회로이기 때문에, LCD DCC 용 압축 코덱에서는 객관적인 화질보다는 주관적인 화질이 더 중요하다. 즉, LCD DCC 용 압축 코덱은 이미지 압축으로 인한 픽셀 값의 차이가 생기더 라도 사람이 느끼지 못하는 화질 성능을 제공하여야 한다.
이와 같은 변환 부호화의 또 다른 문제점은 이미지를 픽셀 단위로 이동하였을 경우에 발생한다. 원본 이미지를 픽셀 단위로 이동하였기 때문에, 이 원본 이미지와 복원 이미지가 서로 차이가 없을 것으로 보이지만, 어느 하나의 블록 내에 들어오는 픽셀 값들의 작은 차이가 이미지를 압축 후 복원한 결과에 지대한 영향을 미치게 된다. 이에 따라, 이미지를 픽셀 단위로 이동하면서 LCD DCC 장치를 통과시키면 사용자에게 픽셀 값의 작은 차이가 쉽게 인식되는 결과를 초래한다.
둘째, 다음과 같은 복잡도 측면에서의 문제점이 있었다. 상기된 이미지 압축 방식 모두 엔트로피(entropy) 부호화 방식을 사용하기 때문에 이미지를 복호화할 경우에 임계 경로(critical path)가 생기게 되고, 이에 따라 디코더(decoder)의 복잡도가 매우 증가하게 된다. 여기에서, 임계 경로란 여러 단계의 과정을 거치는 작업에서 그것을 완성하려면 여러 과정의 경로가 동시에 수행되어야 한다고 할 때, 그 중 가장 긴 경로, 즉 전체 공정 중 시간이 가장 많이 걸리는 경로를 의미한다. 특히, 블록 단위로 변환 부호화를 수행하는 JPEG과 H.264의 경우에 그 복잡도는 더욱 증가하게 된다. H.264는 인트라 예측(intra prediction)을 사용하기 때문에 메모리 사용량이 늘어날 뿐만 아니라, 그 복잡도도 더욱 증가하게 된다.
셋째, 다음과 같은 비트율 제어 측면에서의 문제점이 있었다. 상기된 이미지 압축 방식 모두 대략적인 비트율 제어가 가능하지만 픽쳐 단위로 정확한 비트율 생성을 할 수 없었다. 예를 들어, 상기된 이미지 압축 방식들은 1/3 압축으로 비트율을 제어하게 되면, LCD DCC 장치에서 사용하는 메모리의 한계가 있기 때문에 1/3 이내로 압축이 되어야 한다. 그러나, 상기된 이미지 압축 방식들에 따라 비트율 제어가 잘 될 경우에는 대략 1/3 주변 값 정도의 데이터량이 생성되지만, 비트율 제어가 잘 되지 않을 경우에는 1/3 이상의 데이터량이 나올 수도 있기 때문에 고정 용량의 메모리를 사용하는 LCD DCC 용 이미지 압축에는 적합하지 않다.
본 발명이 이루고자 하는 기술적 과제는 LCD DCC 용 이미지 압축에 적합하도록 이미지 복원 과정에서의 주관적인 화질을 향상시키면서도 영상 인코더/디코더 시스템의 복잡도를 획기적으로 낮추고, LCD DCC 장치 등에서 요구하는 픽처 단위의 CBR(Constant Bit Rate)을 정확히 맞출 수 있는 장치 및 방법을 제공하는데 있다. 또한, 상기된 방법을 컴퓨터에서 실행시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록 매체를 제공하는데 있다.
본 발명이 이루고자 하는 기술적 과제는 상기된 바와 같은 기술적 과제들로 한정되지 않으며, 또 다른 기술적 과제들이 존재할 수 있다. 이것은 본 발명이 속하는 기술 분야에서 통상을 지식을 가진 자들라면 아래의 기재로부터 명확하게 이해될 수 있다.
상기 기술적 과제를 해결하기 위한 본 발명에 따른 데이터 압축 방법은 현재 데이터를 압축하기 위한 복수 개의 모드들 각각에 따라 상기 현재 데이터를 압축하는 단계; 상기 모드들 각각에 따라 압축된 현재 데이터가 고정 길이의 비트들로 표현 가능한지 여부를 확인하는 단계; 상기 고정 길이의 비트들로 표현 가능한 것으 로 확인된 모드들 중 어느 하나의 모드를 선정하는 단계; 및 상기 선정된 모드에 따라 압축된 현재 데이터를 출력하는 단계를 포함한다.
상기 다른 기술적 과제를 해결하기 위하여, 본 발명은 상기된 데이터 압축 방법을 컴퓨터에서 실행시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록 매체를 제공한다.
상기 또 다른 기술적 과제를 해결하기 위한 본 발명에 따른 데이터 압축 장치는 현재 데이터를 압축하기 위한 복수 개의 모드들 각각에 따라 상기 현재 데이터를 압축하는 부호화부; 상기 모드들 각각에 따라 압축된 현재 데이터가 고정 길이의 비트들로 표현 가능한지 여부를 확인하는 확인부; 상기 고정 길이의 비트들로 표현 가능한 것으로 확인된 모드들 중 어느 하나의 모드를 선정하는 선정부; 및 상기 선정된 모드에 따라 압축된 현재 데이터를 출력하는 비트 패킹부를 포함한다.
상기 또 다른 기술적 과제를 해결하기 위한 본 발명에 따른 데이터 복원 방법은 현재 데이터를 압축하기 위한 복수의 모드들 중 어느 하나의 모드를 인식하는 단계; 및 상기 인식된 모드에 따라 상기 현재 데이터의 압축 데이터를 참조 데이터에 가산하거나 상기 현재 데이터의 압축 데이터에 소정의 이진 값을 부가함으로써 상기 현재 데이터를 복원하는 단계를 포함한다.
상기 또 다른 기술적 과제를 해결하기 위하여, 본 발명은 상기된 데이터 복원 방법을 컴퓨터에서 실행시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록 매체를 제공한다.
상기 또 다른 기술적 과제를 해결하기 위한 본 발명에 따른 데이터 복원 장 치는 현재 데이터를 압축하기 위한 복수의 모드들 중 어느 하나의 모드를 인식하는 인식부; 및 상기 인식된 모드에 따라 상기 현재 데이터의 압축 데이터를 참조 데이터에 가산하거나 상기 현재 데이터의 압축 데이터에 소정의 이진 값을 부가함으로써 상기 현재 데이터를 복원하는 복호화부를 더 포함한다.
이하에서는 도면을 참조하여 본 발명의 바람직한 실시예들을 상세히 설명한다.
도 2는 본 발명의 바람직한 일 실시예에 따른 LCD DCC 장치의 일부 구성도이다.
도 2를 참조하면, 본 실시예에 따른 LCD DCC 장치의 일부는 데이터 압축 장치(21), 메모리(22), 데이터 복원 장치(23), 및 LUT 모듈(24)로 구성된다.
데이터 압축 장치(21)는 두 가지 데이터 압축 방식들, 즉 DPCM(Differential Pulse Code Modulation) 방식 및 PCM(Pulse Code Modulation) 방식 중 어느 하나를 선택적으로 사용함으로써 데이터를 압축한다.
메모리(22)는 데이터 압축 장치(21)로부터 압축 데이터를 입력받으면, 이것을 저장한다. 이와 같은 과정을 통하여, 메모리(22)에는 현재 픽처가 입력되는 시점에서 이전 픽처에 해당하는 압축 데이터가 저장되어 있게 된다.
데이터 복원 장치(23)는 두 가지 데이터 압축 방식들, 즉 DPCM 방식 및 PCM 방식 중 어느 하나를 선택적으로 사용함으로써 데이터를 복원한다.
LUT 모듈(24)은 룩업테이블을 참조하여 TFT-LCD 패널의 타겟 응답 시간에 요구되는 전압 값을 산출한다. 보다 상세하게 설명하면, LUT 모듈(24)은 룩업 테이블 로부터 현재 입력된 현재 픽처의 어느 하나의 픽셀의 휘도 값과 데이터 복원 장치(23)에 의해 복원된 이전 픽처의 픽셀의 휘도 값의 차이에 대응하는 전압 값 정보들을 알아내고, 이것과 TFT-LCD 패널의 타겟 응답 시간을 이용하여 TFT-LCD 패널의 타겟 응답 시간에 요구되는 전압 값을 산출한다.
도 3은 도 2에 도시된 데이터 압축 장치(21)의 두 가지 데이터 압축 방식들 중 하나인 DPCM 방식의 적용 예를 도시한 도면이다.
도 3을 참조하면, 데이터 압축 장치(21)는 DPCM 방식을 이용하여 현재 이미지 데이터와 참조 데이터의 차이를 산출함으로써 현재 이미지 데이터를 압축한다. 특히, 도 3에 도시된 예에서는 원본 픽셀 4 개의 32 비트가 17 비트로 압축되었다.
도 4는 도 2에 도시된 데이터 압축 장치(21)의 두 가지 데이터 압축 방식들 중 하나인 PCM 방식의 적용 예를 도시한 도면이다.
도 4를 참조하면, 데이터 압축 장치(21)는 PCM 방식을 이용하여 현재 이미지 데이터 중 일부를 절단(truncation)함으로써 현재 이미지 데이터를 압축한다. 특히, 도 4에 도시된 예에서는 원본 데이터 63(00111111)에서 하위 4 비트를 절단하고, 데이터 복원 시에 하위 4 비트, 즉 "1000"을 추가함으로써 56(00111000)이 복원되었다. 본 실시예에서의 PCM 방식이란 용어는 상기된 DPCM 방식과 상반되는 개념을 표현하기 위하여 사용되었으며, 아날로그 신호를 디지털 신호로 변환하는 일반적인 PCM 방식의 개념과는 다를 수 있다. 특히, PCM 방식은 절단 압축 방식과 같은 다른 용어로 호칭될 수도 있음을 본 실시예가 속하는 기술 분야에서 통상의 지식을 가진 자라면 이해할 수 있다.
이상으로부터 데이터 압축 장치(21) 및 데이터 복원 장치(23)에서 사용되는 DPCM 방식, PCM 방식은 종래의 이미지 압축 방식인 JPEG, H.264, JPEG-LS 보다 그 복잡도가 매우 낮음을 알 수 있다. 특히, 상기된 DPCM 방식 및 PCM 방식을 이용함으로써 데이터를 고정된 데이터량으로 쉽게 압축할 수 있음을 알 수 있다. 이에 따라, 본 실시예는 LCD DCC 장치에서 요구하는 비트율을 정확히 맞출 수 있다.
도 5는 도 2에 도시된 데이터 압축 장치(21)의 데이터 압축 형태를 도시한 도면이다.
도 5를 참조하면, 데이터 압축 장치(21)는 4 개의 픽셀을 하나의 블록으로 묶은 2 x 2 크기의 블록(이하에서는 간략히 "2 x 2 블록"으로 표기함)에 해당하는 총 96 비트의 이미지 데이터를 1/3 압축함으로써 32 비트의 압축 데이터를 생성한다. 여기에서, 2 x 2 블록은 R(Red) 성분에 해당하는 8 비트의 현재 이미지 데이터, G(Green) 성분에 해당하는 8 비트의 현재 이미지 데이터, 및 B(Blue) 성분에 해당하는 8 비트의 현재 이미지 데이터로 구성된다. 따라서, 하나의 픽셀은 24 비트가 되며, 2x2 블록은 총 96 비트가 된다.
데이터 압축 장치(21)는 이 2x2 블록을 4 비트의 모드 데이터 및 28 비트의 압축 데이터로 압축한다. 보다 상세하게 설명하면, 4 개의 픽셀들 각각의 R 성분에 해당하는 8 비트에 대해서는 2 비트가 할당되고, G 성분에 해당하는 8 비트에 대해서는 3 비트가 할당되고, B 성분에 해당하는 8 비트에 대해서는 2 비트가 할당된다. 특히, 96 비트의 정확한 1/3 압축률을 달성하기 위하여, 모드 데이터에 4 비트가 할당되는 대신에 4 개의 픽셀들 각각의 G 성분에만 3 비트가 할당되고, 나머지 성분들에는 2 비트가 할당되었음을 알 수 있다.
상기된 바와 같이, 본 실시예는 2 x 2 블록 단위의 DPCM 방식 또는 PCM 방식을 이용하기 때문에, 16 x 16 매크로블록 내지 8 x 8 블록 단위로 이미지를 압축하는 종래의 이미지 압축 방식보다 이미지 이동시의 복원 화질의 저하를 최소화할 수 있다. 즉, 본 실시예는 종래보다 매우 작은 단위로 이미지 압축 및 복원을 수행하기 때문에 어느 하나의 블록 내에 들어오는 픽셀 값들의 작은 차이가 이미지를 압축 후 복원한 결과에 거의 영향을 미치지 않게 된다. 이에 따라, 본 실시예는 주관적인 화질의 성능을 매우 향상시킬 수 있게 된다.
이상과 같은 특징들을 갖는 본 실시예는 도 2에 도시된 LCD DCC 장치 이외에도 저 복잡도를 요구하고 주관적인 무손실 화질을 요구하는 이미지 압축 분야에 널리 적용될 수 있다. 예를 들면, DDI(Display Driver IC)를 위한 이미지 압축, 영상 인코더/디코더(video encoder/decoder) 시스템의 참조 픽처 압축 등에 적용될 수 있다.
도 6은 도 2에 도시된 데이터 압축 장치(21)의 상세 구성도이다.
도 6을 참조하면, 도 2에 도시된 데이터 압축 장치(21)는 스플리터(splitter)(61), 인트라 예측부(62), DPCM/PCM 부호화부(63), 길이 확인부(64), 모드 선정부(65), 복원부(66), 및 비트 패킹부(bit packeting unit)(67)로 구성된다.
스플리터(61)는 어느 하나의 픽처(picture)를 입력받고, 이 픽처를 도 5에 도시된 2 x 2 블록 단위로 분할하고, 이와 같이 분할된 2 x 2 블록을 인트라 예측 부(62)로 출력한다.
인트라 예측부(62)는 스플리터(61)에 의해 분할된 2 x 2 블록을 구성하는 4 개의 픽셀들 각각과 4 가지의 예측 방향들 각각에 위치한 이 픽셀들 각각의 이웃 픽셀들의 차이값을 산출한다. 또한, 인트라 예측부(62)는 이와 같이 산출된 차이값들 중 가장 작은 차이값에 해당하는 예측 방향을 결정한다.
도 7은 도 6에 도시된 인트라 예측부(62)에 의해 사용되는 예측 방향들을 도시한 도면이다.
도 7을 참조하면, 인트라 예측부(62)는 어느 하나의 픽셀과 이 픽셀의 수직 방향, 수평 방향, 우-하 방향, 좌-하 방향 중 어느 하나의 방향에 위치한 이웃 픽셀과의 차이값을 산출한다. 특히, 도 7에 도시된 바와 같이, 수직 방향을 나타내는 값을 0이라 하고, 수평 방향을 나타내는 값을 1이라 하고, 우-하 방향을 나타내는 값을 2라 하고, 좌-하 방향을 나타내는 값을 3이라 하면, 인트라 예측부(62)는 4 가지의 예측 방향들을 나타내는 값을 2 비트의 이진 데이터로 표현할 수 있다. 즉, 인트라 예측부(62)는 이와 같이 산출된 차이값들 중 가장 작은 차이값에 해당하는 예측 방향을 나타내는 2 비트의 이진 데이터를 DPCM/PCM 부호화부(63)로 출력한다.
도 8은 도 7에 도시된 예측 방향들이 적용되는 픽셀들을 도시한 도면이다.
도 8을 참조하면, 인트라 예측부(62)는 다음과 같이 P0, P1, P2, P3 각각과 P0, P1, P2, P3 각각의 수직 방향에 위치한 N3, N4, N0, N1 각각과의 차이값 D0, D1, D2, D3을 산출한다.
D0 = P0 - N3
D1 = P1 - N4
D2 = P2 - P0
D3 = P3 - P1
또한, 인트라 예측부(62)는 다음과 같이 P0, P1, P2, P3 각각과 P0, P1, P2, P3 각각의 수평 방향에 위치한 N1, P0, N0, N1 각각과의 차이값 D0, D1, D2, D3을 산출한다.
D0 = P0 - N1
D1 = P1 - P0
D2 = P2 - N0
D3 = P3 - P2
또한, 인트라 예측부(62)는 다음과 같이 P0, P1, P2, P3 각각과 P0, P1, P2, P3 각각의 우-하 방향에 위치한 N2, N3, N1, P0 각각과의 차이값 D0, D1, D2, D3을 산출한다.
D0 = P0 - N2
D1 = P1 - N3
D2 = P2 - N1
D3 = P3 - P0
또한, 인트라 예측부(62)는 다음과 같이 P0, P1, P2, P3 각각과 P0, P1, P2, P3 각각의 좌-하 방향에 위치한 N4, N5, P1, N6 각각과의 차이값 D0, D1, D2, D3을 산출한다.
D0 = P0 - N4
D1 = P1 - N5
D2 = P2 - P1
D3 = P3 - N6
DPCM/PCM 부호화부(63)는 스플리터(61)로부터 입력된 2 x 2 블록을 구성하는 4 개의 픽셀 별로 어느 하나의 픽셀의 R 성분, G 성분, B 성분에 해당하는 8 비트의 현재 이미지 데이터를 압축하기 위한 복수 개의 모드들 각각에 따라 DPCM 방식 및 PCM 방식 중 어느 하나를 사용함으로써 현재 이미지 데이터를 압축한다. 즉, DPCM/PCM 부호화부(63)는 복수 개의 모드들 중 일부 모드에 따라 어느 하나의 픽셀의 R 성분, G 성분, B 성분 각각에 해당하는 8 비트의 현재 이미지 데이터와 인트라 예측부(62)에 의해 결정된 예측 방향에 위치한 이웃 픽셀의 R 성분, G 성분, B 성분 각각에 해당하는 참조 이미지 데이터의 차이값을 산출하고, 상기 일부 모드가 아닌 나머지 모드에 따라 R 성분, G 성분, B 성분 각각에 해당하는 8 비트의 현재 이미지 데이터 중 일부를 절단함으로써 현재 이미지 데이터를 압축한다. 여기에서, 참조 이미지 데이터는 복원부(66)에 의해 복원된 데이터가 된다. 그러나, 참조 이미지 데이터는 원래의 데이터가 될 수도 있음을 본 실시예가 속하는 기술 분야에서 통상의 지식을 가진 자라면 이해할 수 있다.
특히, DPCM/PCM 부호화부(63)는 복수 개의 모드들 각각에 대하여 병렬적으로 현재 이미지 데이터와 참조 이미지 데이터의 차이값을 산출하거나, 현재 이미지 데이터의 일부를 절단함으로써 현재 이미지 데이터를 압축한다. 이것은 복수 개의 모 드들 각각에 대한 연산을 동시에 진행함으로써 현재 이미지 데이터의 압축을 고속으로 처리하기 위한 것이다. 다만, 본 실시예가 속하는 기술 분야에서 통상의 지식을 가진 자라면 복수 개의 모드들 각각에 대한 연산을 순차적으로 진행하는 것으로도 용이하게 구현할 수 있다.
도 9는 도 6에 도시된 DPCM/PCM 부호화부(63)에 의해 사용되는 모드들을 나타내는 테이블을 도시한 도면이다.
도 9를 참조하면, DPCM/PCM 부호화부(63)는 12 개의 모드들 중 모드 0 ~ 모드 10에 대해서는 DPCM 방식을 사용하고, 모드 11에 대해서는 PCM 방식을 사용한다. 상기된 바와 같이, 모드 데이터에는 4 비트가 할당되었기 때문에 12개의 모드들 이외에 4 개의 모드들을 추가적으로 사용할 수도 있다.
특히, DPCM 방식을 사용하는 경우, DPCM/PCM 부호화부(63)는 8 비트의 현재 이미지 데이터와 8 비트의 참조 이미지 데이터를 모드 0 ~ 모드 10 각각에 대응하는 소정 비트만큼 우측으로 시프트하고, 이와 같이 시프트된 현재 이미지 데이터와 참조 이미지 데이터간의 차이값을 산출한다. 본 실시예에서, 8 비트의 현재 이미지 데이터와 8 비트의 참조 이미지 데이터를 1 비트 단위로 우측으로 시프트한다는 것은 이와 같은 이미지 데이터들을 최하위 비트(LSB, Least Significant Bit) 쪽으로 시프트한다는 것을 의미한다. 따라서, 이와 같은 1 비트 단위의 시프트는 8 비트의 현재 이미지 데이터 값을 2로 나누는 것과 동등(equivalent)하고, 8 비트의 참조 이미지 데이터 값을 2로 나누는 것과 동등하다. 이하에서는 DPCM/PCM 부호화부(63)가 모드 0 ~ 모드 10 각각에 따라 어떻게 현재 데이터를 압축하는지에 대해 상세히 살펴보기로 한다.
도 10은 도 6에 도시된 데이터 압축 장치(21)가 모든 색 성분들에 대하여 비트 시프트하지 않고, 데이터를 압축하는 모드 0을 도시한 도면이다.
도 10을 참조하면, DPCM/PCM 부호화부(63)는 스플리터(61)로부터 입력된 2 x 2 블록을 구성하는 4 개의 픽셀들 중 어느 하나의 픽셀의 G 성분에 해당하는 8 비트의 현재 이미지 데이터와 인트라 예측부(62)에 의해 결정된 예측 방향에 위치한 이웃 픽셀의 G 성분에 해당하는 8 비트의 참조 이미지 데이터의 차이값을 산출한다. 특히, 상기된 G 성분은 그 차이값의 범위가 - 4 ~ 3 내에 있는 경우에만 그 차이값이 도 10에 도시된 3 비트로 표현이 될 수 있고, 원래 데이터에서 무시된 비트들이 없기 때문에 원래 데이터와 복원 데이터 사이에 발생할 수 있는 에러값은 없다.
또한, DPCM/PCM 부호화부(63)는 이 픽셀의 R 성분, B 성분에 대해서도 상기된 G 성분의 처리와 마찬가지로 처리한다. 특히, 상기된 R 성분, B 성분은 그 차이값의 범위가 - 2 ~ 1 내에 있는 경우에만 그 차이값이 도 10에 도시된 2 비트로 표현이 될 수 있고, 원래 데이터에서 무시된 비트들이 없기 때문에 원래 데이터와 복원 데이터 사이에 발생할 수 있는 에러값은 없다. 또한, DPCM/PCM 부호화부(63)는 이 픽셀 이외의 나머지 3 개의 픽셀들에 대해서도 상기된 픽셀의 처리와 마찬가지로 처리한다.
도 11은 도 6에 도시된 데이터 압축 장치(21)가 G 성분에 대해서는 비트 시프트하지 않고, R 성분 및 B 성분에 대해서는 1 비트 시프트하고, 데이터를 압축하 는 모드 1을 도시한 도면이다.
도 11을 참조하면, DPCM/PCM 부호화부(63)는 스플리터(61)로부터 입력된 2 x 2 블록을 구성하는 4 개의 픽셀들 중 어느 하나의 픽셀의 G 성분에 해당하는 8 비트의 현재 이미지 데이터와 인트라 예측부(62)에 의해 결정된 예측 방향에 위치한 이웃 픽셀의 R 성분에 해당하는 8 비트의 참조 이미지 데이터의 차이값을 산출한다. 또한, DPCM/PCM 부호화부(63)는 이 픽셀의 R 성분에 해당하는 8 비트의 현재 이미지 데이터와 인트라 예측부(62)에 의해 결정된 예측 방향에 위치한 이웃 픽셀의 R 성분에 해당하는 8 비트의 참조 이미지 데이터를 각각 1 비트 시프트하고, 이와 같이 1 비트 시프트된 현재 이미지 데이터와 참조 이미지 데이터간의 차이값을 산출한다. 또한, DPCM/PCM 부호화부(63)는 이 픽셀의 B 성분에 대해서도 상기된 R 성분의 처리와 마찬가지로 처리한다.
특히, 상기된 R 성분, B 성분은 1 비트 시프트가 수행되었기 때문에 그 차이값의 범위가 - 4 ~ 3 내에 있는 경우에만 그 차이값이 도 10에 도시된 2 비트로 표현이 될 수 있고, 원래 데이터에서 1 비트가 무시되었기 때문에 이와 같이 무시된 1 비트가 "1"로 복원된다면, 원래 데이터와 복원 데이터 사이에 발생할 수 있는 최대 에러값은 1이 된다. 또한, DPCM/PCM 부호화부(63)는 이 픽셀 이외의 나머지 3 개의 픽셀들에 대해서도 상기된 픽셀의 처리와 마찬가지로 처리한다.
도 12는 도 6에 도시된 데이터 압축 장치(21)가 모든 색 성분들에 대하여 1 비트 시프트하고, 데이터를 압축하는 모드 2를 도시한 도면이다.
도 12를 참조하면, DPCM/PCM 부호화부(63)는 스플리터(61)로부터 입력된 2 x 2 블록을 구성하는 4 개의 픽셀들 중 어느 하나의 픽셀의 G 성분에 해당하는 8 비트의 현재 이미지 데이터와 인트라 예측부(62)에 의해 결정된 예측 방향에 위치한 이웃 픽셀의 G 성분에 해당하는 8 비트의 참조 이미지 데이터를 각각 1 비트 시프트하고, 이와 같이 1 비트 시프트된 현재 이미지 데이터와 참조 이미지 데이터간의 차이값을 산출한다.
특히, 상기된 G 성분은 1 비트 시프트가 수행되었기 때문에 그 차이값의 범위가 - 8 ~ 7 내에 있는 경우에만 그 차이값이 도 10에 도시된 3 비트로 표현이 될 수 있고, 원래 데이터에서 1 비트가 무시되었기 때문에 이와 같이 무시된 1 비트가 "1"로 복원된다면, 원래 데이터와 복원 데이터 사이에 발생할 수 있는 최대 에러값은 1이 된다. 또한, DPCM/PCM 부호화부(63)는 이 픽셀의 R 성분, B 성분에 대해서도 상기된 G 성분의 처리와 마찬가지로 처리한다. 또한, DPCM/PCM 부호화부(63)는 이 픽셀 이외의 나머지 3 개의 픽셀들에 대해서도 상기된 픽셀의 처리와 마찬가지로 처리한다.
도 13은 도 6에 도시된 데이터 압축 장치(21)가 G 성분에 대해서는 1 비트 시프트하고, R 성분, B 성분에 대해서는 2 비트 시프트하고, 데이터를 압축하는 모드 3을 도시한 도면이다.
도 14는 도 6에 도시된 데이터 압축 장치(21)가 모든 색 성분들에 대하여 2 비트 시프트하고, 데이터를 압축하는 모드 4를 도시한 도면이다.
도 15는 도 6에 도시된 데이터 압축 장치(21)가 G 성분에 대해서는 2 비트 시프트하고, R 성분, B 성분에 대해서는 3 비트 시프트하고, 데이터를 압축하는 모 드 5를 도시한 도면이다.
도 16은 도 6에 도시된 데이터 압축 장치(21)가 모든 색 성분들에 대하여 3 비트 시프트하고, 데이터를 압축하는 모드 6을 도시한 도면이다.
도 17은 도 6에 도시된 데이터 압축 장치(21)가 G 성분에 대해서는 3 비트 시프트하고, R 성분, B 성분에 대해서는 4 비트 시프트하고, 데이터를 압축하는 모드 7을 도시한 도면이다.
도 18은 도 6에 도시된 데이터 압축 장치(21)가 모든 색 성분들에 대하여 4 비트 시프트하고, 데이터를 압축하는 모드 8을 도시한 도면이다.
도 19는 도 6에 도시된 데이터 압축 장치(21)가 G 성분에 대해서는 4 비트 시프트하고, R 성분, B 성분에 대해서는 5 비트 시프트하고, 데이터를 압축하는 모드 9를 도시한 도면이다.
도 20은 도 6에 도시된 데이터 압축 장치(21)가 모든 색 성분들에 대하여 5 비트 시프트하고, 데이터를 압축하는 모드 10을 도시한 도면이다.
도 13-20은 도 10-12에 대해 비트 시프트의 회수와 모드만 달라졌을 뿐, 그 개념은 상기된 바와 동일하므로, 도 13-20에 대한 자세한 설명은 생략하기로 한다. 다만, 원래 데이터와 복원 데이터 사이에 발생할 수 있는 최대 에러값은 원래 데이터에서 무시된 비트들의 MSB가 "1"로, 나머지 비트들은 "0"으로 복원된다는 가정 하에 계산된 것이다.
또한, DPCM/PCM 부호화부(63)는 스플리터(61)로부터 입력된 2 x 2 블록을 구성하는 4 개의 픽셀들 중 어느 하나의 픽셀의 G 성분에 해당하는 8 비트의 현재 이 미지 데이터 중 5 비트를 절단(truncation)함으로써 현재 이미지 데이터를 압축한다. 또한, DPCM/PCM 부호화부(63)는 이 픽셀의 R 성분, B 성분에 해당하는 8 비트의 현재 이미지 데이터 중 최대 6 비트를 절단함으로써 현재 이미지 데이터를 압축한다. 또한, DPCM/PCM 부호화부(63)는 이 픽셀 이외의 나머지 3 개의 픽셀들에 대해서도 상기된 픽셀의 처리와 마찬가지로 처리한다. 이와 같이 데이터를 압축하는 것은 모드 11에 해당한다.
길이 확인부(64)는 DPCM/PCM 부호화부(63)에 의해 산출된 DPCM 방식의 11 개의 모드들마다의 차이값이 고정 길이의 비트들로 표현 가능한지 여부를 확인한다. 즉, 길이 확인부(64)는 G 성분에 해당하는 8 비트의 현재 이미지 데이터와 참조 이미지 데이터의 차이값이 3 비트로 표현 가능한지 여부를 확인하고, R 성분, B 성분에 해당하는 8 비트의 현재 이미지 데이터와 참조 이미지 데이터의 차이값이 2 비트로 표현 가능한지 여부를 확인한다.
예를 들어, 길이 확인부(64)는 도 10에 도시된 모드 0에 따른 차이값에 대해서는 다음과 같이 처리한다. 즉, 길이 확인부(64)는 G 성분에 해당하는 8 비트의 현재 이미지 데이터와 참조 이미지 데이터의 차이값이 3 비트로 표현한 가능한 경우에만, 즉 그 차이값의 범위가 -4 ~ 3 내에 있는 경우에만 그 차이값이 3 비트로 표현 가능한 것으로 확인한다. 또한, 길이 확인부(64)는 R 성분, B 성분에 해당하는 8 비트의 현재 이미지 데이터와 참조 이미지 데이터의 차이값이 2 비트로 표현한 가능한 경우에만, 즉 그 차이값의 범위가 -2 ~ 1 내에 있는 경우에만 그 차이값이 2 비트로 표현 가능한 것으로 확인한다.
모드 선정부(65)는 길이 확인부(64)에 의해 고정 길이의 비트들로 표현 가능한 것으로 확인된 모드들 중 현재 이미지 데이터와 현재 이미지 데이터의 복원 데이터 사이에 발생할 수 있는 최대 에러값이 가장 작은 모드를 선정한다. 특히, 본 실시예에서는 R 성분, G 성분, B 성분 각각에 해당하는 최대 에러값이 별도로 존재하기 때문에, 모드 선정부(65)는 R 성분, G 성분, B 성분 각각에 해당하는 최대 에러값의 합산이 가장 작은 모드를 선정한다.
도 21은 도 6에 도시된 모드 선정부(65)의 상세 구성도이다.
도 21을 참조하면, 도 6에 도시된 모드 선정부(65)는 우선 순위 확인부(211) 및 모드 업그레이드부(212)로 구성된다.
우선 순위 확인부(64)는 길이 확인부(64)에 의해 고정 길이의 비트들로 표현 가능한 것으로 확인된 모드들의 우선 순위를 확인하고, 이와 같이 확인된 모드들 중 가장 우선 순위가 높은 모드를 선택한다. 여기에서, 우선 순위는 모드들 각각의 최대 에러값이 작은 순위, 즉 모드를 나타내는 번호가 작은 순위가 된다. 예를 들어, 우선 순위 길이 확인부(64)는 길이 확인부(64)에 의해 고정 길이의 비트들로 표현 가능한 것으로 확인된 모드 5 ~ 모드 11의 우선 순위를 확인하고, 이것들 중 가장 우선 순위가 높은 모드 5를 선택한다.
도 21을 참조하면, 모드 업그레이드부(212)는 다시 제 1 에러값 산출부(2121), DPCM 수정부(2122), 제 2 에러값 산출부(2123), 및 비교부(2124)로 구성된다.
제 1 에러값 산출부(2121)는 우선 순위 길이 확인부(64)에 의해 선택된 모드 에 따른 최대 에러값을 산출한다. 예를 들어, 우선 순위 길이 확인부(64)에 의해 선택된 모드가 모드 5라면, 제 1 차이값 산출부(2121)는 모드 5에 따른 R 성분, G 성분, B 성분 각각의 최대 에러 값 16, 8, 16의 합산 50을 산출한다.
DPCM 수정부(2122)는 우선 순위 길이 확인부(64)에 의해 선택된 모드보다 우선 순위가 하나 더 높은 모드로 업그레이드하고, 업그레이된 모드에 따른 차이값들 중 일부를 수정한다. 본 실시예가 속하는 기술분야에서 통상의 지식을 가진 자라면, DPCM 수정부(2122)가 우선 순위가 둘 또는 그 이상 높은 모드로 업그레이드할 수도 있음을 이해할 수 있다. 예를 들어, 우선 순위 길이 확인부(64)에 의해 선택된 모드가 모드 5이고, 2 x 2 블록을 구성하는 4 개의 픽셀들 각각의 G 성분에 해당하는 8 비트의 현재 이미지 데이터와 참조 이미지 데이터의 차이값이 (10, 10, 10, 10)이고, R 성분, B 성분 각각에 해당하는 8 비트의 현재 이미지 데이터와 참조 이미지 데이터의 차이값이 (7, 7, 8, 7)이라면, DPCM 수정부(2122)는 이것을 모드 5보다 우선 순위가 하나 더 높은 모드 4로 업그레이드하고, 모드 4에 따른 차이값 (7, 7, 7, 7)으로 수정한다. 이 경우, G 성분에 해당하는 8 비트의 현재 이미지 데이터와 참조 이미지 데이터의 차이값에 대해서는 수정할 필요가 없다.
제 2 에러값 산출부(2123)는 DPCM 수정부(2122)에 의해 수정된 차이값들에 따른 최대 에러값을 산출한다. 예를 들어, 제 2 차이값 산출부(2123)는 모드 4에 따른 R 성분, G 성분, B 성분 각각의 최대 에러 값 8, 8, 8과 DPCM 수정부(2122)의 차이값 수정에 따른 에러값 1의 합산인 25를 산출한다.
비교부(2124)는 제 1 에러값 산출부(2121)에 의해 산출된 최대 에러값과 제 2 에러값 산출부(2123)에 의해 산출된 최대 에러값을 비교하고, 그 비교된 결과 더 작은 에러값을 갖는 모드를 선택한다. 예를 들어, 제 1 에러값 산출부(2121)에 의해 산출된 최대 에러값이 50이고, 제 2 에러값 산출부(2123)에 의해 산출된 최대 에러값이 25이라면, 비교부(2124)는 제 2 에러값 산출부(2123)에 의해 산출된 최대 에러값을 갖는 모드 4를 선택한다.
복원부(66)는 모드 선정부(65)에 의해 선정된 모드에 따라 2 x 2 블록을 구성하는 4 개의 픽셀 별로 어느 하나의 픽셀의 R 성분, G 성분, B 성분 각각에 해당하는 압축 데이터를 인트라 예측부(62)에 의해 결정된 예측 방향에 위치한 이웃 픽셀의 R 성분, G 성분, B 성분 각각에 해당하는 참조 이미지 데이터에 가산하거나 R 성분, G 성분, B 성분 각각에 해당하는 압축 데이터에 소정의 이진 값을 부가함으로써 R 성분, G 성분, B 성분 각각에 해당하는 현재 이미지 데이터를 복원한다. 복원부(66)에 대한 동작은 도 22에 도시된 데이터 복원 장치(22)의 DPCM/PCM 복호화부(223)의 동작과 동일하다. 여기에서는, 복원부(66)에 대한 자세한 설명은 생략하기로 하며, 이하에서 설명될 DPCM/PCM 복호화부(223)의 동작 설명을 참조하기로 한다. 만약, 참조 이미지 데이터가 원래의 데이터가 되는 경우라면, 이와 같은 복원부(66)는 필요 없게 된다.
비트 패킹부(67)는 DPCM/PCM 부호화부(63)에 의해 12 개의 모드들 각각에 따라 압축된 데이터 중 모드 선정부(65)에 의해 선정된 모드에 따라 압축된 데이터(28 비트), 모드 선정부(65)에 의해 선정된 모드를 나타내는 모드 데이터(4 비트)로 구성된 총 32 비트의 데이터 패킷을 생성하고, 이것을 메모리(22)로 출력한 다. 아니면, 비트 패킹부(67)는 28 비트의 압축 데이터, 4 비트의 모드 데이터 외에 인트라 예측부(62)에 의해 결정된 예측 방향을 나타내는 2 비트의 데이터를 추가적으로 더 포함하는 총 34 비트의 데이터 패킷을 생성할 수도 있다.
도 22는 도 2에 도시된 데이터 복원 장치(23)의 상세 구성도이다.
도 22를 참조하면, 도 2에 도시된 데이터 복원 장치(23)는 비트 파서(bit parser)(221), 모드 인식부(222), DPCM/PCM 복호화부(223), 및 머저(merger)(224)로 구성된다.
비트 파서(221)는 메모리(22)로부터 32 비트의 데이터 패킷을 읽어내고, 이 32 비트의 데이터 패킷을 파싱함으로써 이 32 비트의 데이터 패킷으로부터 4 비트의 모드 데이터 및 28 비트의 압축 데이터를 추출한다. 또한, 비트 파서(221)는 이와 같이 추출된 4 비트의 모드 데이터를 모드 인식부(222)로 출력하고, 28 비트의 압축 데이터를 DPCM/PCM 복호화부(223)로 출력한다. 아니면, 비트 파서(221)는 메모리(22)로부터 32 비트의 데이터가 패킷이 아닌 34 비트의 데이터 패킷을 읽어낼 수도 있으며, 이 34 비트의 데이터 패킷으로부터 4 비트의 모드 데이터, 28 비트의 압축 데이터, 2 비트의 예측 방향 데이터를 추출한다. 또한, 비트 파서(221)는 이와 같이 추출된 4 비트의 모드 데이터를 모드 인식부(222)로 출력하고, 28 비트의 압축 데이터 및 2 비트의 예측 방향 데이터를 DPCM/PCM 복호화부(223)로 출력한다.
모드 인식부(222)는 비트 파서(221)로부터 입력된 4 비트의 모드 데이터로부터 2 x 2 블록에 해당하는 현재 이미지 데이터를 압축하기 위한 12 개의 모드들 중 데이터 압축 장치(21)에 의해 선정되었던 어느 하나의 모드를 인식한다.
DPCM/PCM 복호화부(223)는 모드 인식부(222)에 의해 인식된 모드에 따라 비트 파서(221)로부터 입력된 28 비트의 압축 데이터로부터 96 비트의 2 x 2 블록을 복원한다. 보다 상세하게 설명하면, DPCM/PCM 복호화부(223)는 모드 인식부(222)에 의해 인식된 모드가 모드 0 ~ 모드 10 중 어느 하나이면, 즉 DPCM 방식을 이용하는 모드이면, 2 x 2 블록을 구성하는 4 개의 픽셀 별로 비트 파서(221)로부터 입력된 어느 하나의 픽셀의 R 성분, G 성분, G 성분 각각에 해당하는 압축 데이터를 모드 인식부(222)에 의해 인식된 모드에 대응하는 비트만큼 시프트하고, 이와 같이 비트 시프트된 압축 데이터에 모드 인식부(222)에 의해 인식된 모드에 대응하는 이진 값을 부가함으로써 R 성분, G 성분, G 성분 각각에 해당하는 현재 이미지 데이터와 참조 이미지 데이터의 차이값을 복원한다.
특히, DPCM/PCM 복호화부(223)는 압축 데이터를 현재 이미지 데이터의 압축 과정에서의 비트 시프트 방향과 반대 방향인 좌측으로 시프트한다. 4 비트의 압축 데이터를 1 비트 단위로 좌측으로 시프트하는 것은 이와 같은 이미지 데이터들을 최상위 비트(MSB, Most Significant Bit) 쪽으로 시프트한다 것을 의미한다. 따라서, 이와 같은 1 비트 단위의 시프트는 8 비트의 압축 데이터 값을 2로 곱하는 것과 동등하다. 또한, DPCM/PCM 복호화부(223)는 이와 같이 복원된 차이값을 비트 파서(221)로부터 입력된 2 비트의 예측 방향 데이터가 나타내는 예측 방향에 위치한 이웃 픽셀의 R 성분, G 성분, G 성분 각각에 해당하는 8 비트의 참조 데이터에 가산함으로써 R 성분, G 성분, G 성분 각각에 해당하는 8 비트의 현재 이미지 데이터를 복원한다.
또한, DPCM/PCM 복호화부(223)는 모드 인식부(222)에 의해 인식된 모드가 모드 11이면, 즉 PCM 방식을 이용하는 모드이면, 2 x 2 블록을 구성하는 4 개의 픽셀 별로 비트 파서(221)로부터 입력된 28 비트의 압축 데이터 중 G 성분에 해당하는 3 비트의 압축 데이터에는 5 비트의 이진 값을 부가하고, R 성분, B 성분에 해당하는 2 비트의 압축 데이터에는 6 비트의 이진 값을 부가함으로써 R 성분, G 성분, B 성분 각각에 해당하는 8 비트의 현재 이미지 데이터를 복원한다.
도 23은 도 22에 도시된 DPCM/PCM 복호화부(223)에 의한 3 비트 압축 데이터의 복원 모습을 도시한 도면이다.
도 23의 231을 참조하면, DPCM/PCM 복호화부(223)는 원칙적으로 G 성분에 해당하는 3 비트의 압축 데이터에는 "10000"을 부가하고, R 성분, B 성분에 해당하는 2 비트의 압축 데이터에는 "100000"을 부가한다. 그런데, 이미지 데이터의 특성으로 인하여 G 성분에 해당하는 3 비트의 압축 데이터가 "111"인 경우에는 원래의 이미지 데이터가 그 최대 값인 "1111111"이거나 이것에 근접한 값인 경향이 있으며, "000"인 경우에는 원래의 이미지 데이터가 그 최소 값인 "00000000"이거나 이것에 근접한 값인 경향이 있다. 이에 따라, DPCM/PCM 복호화부(223)는 3 비트의 압축 데이터가 3 비트로 표현될 수 있는 최대 값인 경우에는 이 압축 데이터에 부가되는 이진 값을 소정 크기만큼 증가시키고, 이 압축 데이터에 이와 같이 증가된 이진 값을 부가한다. 또한, DPCM/PCM 복호화부(223)는 압축 데이터가 압축 데이터를 구성하는 3 비트로 표현될 수 있는 최대 값, 즉 "111"인 경우에는 이 압축 데이터에 부가되는 이진 값을 소정 크기만큼 증가시키고, 이 압축 데이터에 이와 같이 증가된 이진 값을 부가한다. 또한, DPCM/PCM 복호화부(223)는 압축 데이터가 압축 데이터를 구성하는 3 비트로 표현될 수 있는 최소 값, 즉 "000"인 경우에는 이 압축 데이터에 부가되는 이진 값을 소정 크기만큼 감소시키고, 이 압축 데이터에 이와 같이 감소된 이진 값을 부가한다.
도 23의 232를 참조하면, DPCM/PCM 복호화부(223)는 압축 데이터가 최대 값인 경우에는 이 압축 데이터에 부가되는 이진 값을 모드 인식부(222)에 의해 인식된 모드에 따른 비트 시프트 또는 절단의 크기에 대응하는 크기만큼 증가시키고, 이 압축 데이터에 이와 같이 증가된 이진 값을 부가한다. 또한, DPCM/PCM 복호화부(223)는 압축 데이터가 최소 값인 경우에는 이 압축 데이터에 부가되는 이진 값을 모드 인식부(222)에 의해 인식된 모드에 따른 비트 시프트 또는 절단의 크기에 대응하는 크기만큼 감소시키고, 이 압축 데이터에 이와 같이 감소된 이진 값을 부가한다.
예를 들어, 모드 인식부(222)에 의해 인식된 모드에 따른 비트 시프트 또는 절단의 크기가 5 비트이고, 압축 데이터가 "111"이라면, DPCM/PCM 복호화부(223)는 압축 데이터에 부가되는 이진 값 "10000"을 4 만큼 증가시키고, 압축 데이터 "111"에 이와 같이 증가된 이진 값 "10100"을 부가함으로써 현재 이미지 데이터 "111 10100"을 복원한다. 또한, 모드 인식부(222)에 의해 인식된 모드에 따른 비트 시프트 또는 절단의 크기가 5 비트이고, 압축 데이터가 "000"이라면, DPCM/PCM 복호화부(223)는 압축 데이터에 부가되는 이진 값 "10000"을 4 만큼 감소시키고, 압축 데이터 "000"에 이와 같이 감소된 이진 값 "01100"을 부가함으로써 현재 이미지 데이 터 "000 01100"을 복원한다.
머저(224)는 DPCM/PCM 복호화부(223)에 의해 복원된 R 성분, G 성분, B 성분 각각에 해당하는 8 비트의 현재 이미지 데이터인 픽셀들 4개로 구성된 총 96 비트의 2 x 2 블록들을 병합함으로써 어느 하나의 픽처를 복원한다.
도 24는 도 2에 도시된 데이터 압축 장치(21)의 도 6과는 다른 형태의 구성도이다.
도 24를 참조하면, 도 2에 도시된 데이터 압축 장치(21)는 스플리터(241), 인트라 예측부(242), DPCM/PCM 부호화부(243), 길이 확인부(244), 모드 선정부(245), 복원부(246), 엔트로피 부호화부(entropy encoder)(247) 및 비트 패킹부(248)로 구성된다. 도 24에 도시된 구성은 도 6에 도시된 구성에 엔트로피 부호화부(247)를 더 포함할 뿐이며, 나머지 구성은 동일하다. 이하에서는 엔트로피 부호화부(247)만을 설명하기로 하며, 스플리터(241), 인트라 예측부(242), DPCM/PCM 부호화부(243), 길이 확인부(244), 모드 선정부(245), 복원부(246) 및 비트 패킹부(248)에 대한 설명은 도 6에 도시된 구성에 대한 설명과 동일하다. 단, 비트 패킹부(248)는 엔트로피 부호화부(247)에 의해 엔트로피 부호화된 결과를 포함하는 데이터 패킷을 생성한다.
엔트로피 부호화부(247)는 DPCM/PCM 부호화부(63)에 의해 12 개의 모드들 각각에 따라 압축된 데이터 중 모드 선정부(65)에 의해 선정된 모드에 따라 압축된 데이터(28 비트), 모드 선정부(65)에 의해 선정된 모드를 나타내는 모드 데이터(4 비트)로 구성된 총 32 비트의 데이터에 대한 엔트로피 부호화를 수행한다. 아니면, 엔트로피 부호화부(247)는 28 비트의 압축 데이터, 4 비트의 모드 데이터 외에 인트라 예측부(62)에 의해 결정된 예측 방향을 나타내는 2 비트의 데이터를 추가적으로 더 포함하는 총 34 비트의 데이터에 대한 엔트로피 부호화를 수행한다. 여기에서, 엔트로피 부호화란 심볼들(symbols)의 확률과 부호 길이들(code lengths)이 매치하도록 심볼들에 부호들을 할당하는 부호화 기법을 의미한다. 대표적인 엔트로피 부호화 기술들로는 허프만 코딩(huffman coding), 산술 코딩(arithmetic coding) 등을 들 수 있다.
도 25는 도 2에 도시된 데이터 복원 장치(23)의 도 22와는 다른 형태의 구성도이다.
도 25를 참조하면, 도 6에 도시된 데이터 복원 장치(23)는 비트 파서(251), 엔트로피 복호화부(252), 모드 인식부(253), DPCM/PCM 복호화부(254), 및 머저(255)로 구성된다. 도 25에 도시된 구성은 도 22에 도시된 구성에 엔트로피 복호화부(252)를 더 포함할 뿐이며, 나머지 구성은 동일하다. 이하에서는 엔트로피 복호화부(252)만을 설명하기로 하며, 비트 파서(251), 모드 인식부(253), DPCM/PCM 복호화부(254), 및 머저(255)에 대한 설명은 도 22에 도시된 구성에 대한 설명과 동일하다. 단, 비트 파서(251)는 메모리(22)로부터 읽어낸 32 비트의 데이터 패킷을 파싱하고, 그 결과를 엔트로피 복호화부(252)로 출력한다.
엔트로피 복호화부(252)는 비트 파서(251)에 의해 파싱된 결과를 입력받고, 이것에 대한 엔트로피 복호화를 수행한다. 또한, 엔트로피 복호화부(252)는 이와 같은 엔트로피 복호화의 수행 결과 중 4 비트의 모드 데이터를 모드 인식부(222)로 출력하고, 28 비트의 압축 데이터를 DPCM/PCM 복호화부(223)로 출력한다. 아니면, 엔트로피 복호화부(252)는 이와 같은 엔트로피 복호화의 수행 결과 중 4 비트의 모드 데이터를 모드 인식부(222)로 출력하고, 28 비트의 압축 데이터 및 2 비트의 예측 방향 데이터를 DPCM/PCM 복호화부(223)로 출력한다.
이상에서와 같이, 데이터 압축 과정에서 엔트로피 부호화 과정이 추가되고, 데이터 복원 과정에서 엔트로피 복호화 과정이 추가된다면, 엔트로피 부호화는 무손실 압축(lossless compression) 기법이기 때문에 이미지 복원 과정에서의 주관적인 화질의 향상은 그대로 유지되면서도 보다 더 높은 데이터 압축률이 나타나게 된다. 그러나, 영상 인코더/디코더 시스템의 복잡도는 증가하게 되며, LCD DCC 장치 등에서 요구하는 픽처 단위의 CBR(Constant Bit Rate)을 정확히 맞출 수 없게 된다.
도 26은 본 발명의 바람직한 일 실시예에 따른 데이터 압축 방법의 흐름도이다.
도 26을 참조하면, 본 실시예에 따른 데이터 압축 방법은 도 6에 도시된 데이터 압축 장치(21)에서 시계열적으로 처리되는 단계들로 구성된다. 따라서, 이하 생략된 내용이라 하더라도 도 6에 도시된 데이터 압축 장치(21)에 관하여 이상에서 기술된 내용은 본 실시예에 따른 데이터 압축 방법에도 적용된다. 특히, 이하에서는 기술되어 있지 않으나 도 24에 도시된 데이터 압축 장치(21)에 대응하여 엔트로피 부호화를 수행하는 단계를 더 포함할 수 있다.
261 단계에서 데이터 압축 장치(21)는 어느 하나의 픽처를 입력받고, 이 픽 처를 도 5에 도시된 2 x 2 블록 단위로 분할한다.
262 단계에서 데이터 압축 장치(21)는 261 단계에서 분할된 2 x 2 블록을 구성하는 4 개의 픽셀들 각각과 4 가지의 예측 방향들 각각에 위치한 이 픽셀들 각각의 이웃 픽셀들의 차이값을 산출하고, 이와 같이 산출된 차이값들 중 가장 작은 차이값에 해당하는 예측 방향을 결정한다.
263 단계에서 데이터 압축 장치(21)는 261 단계에서 분할된 2 x 2 블록을 구성하는 4 개의 픽셀 별로 모드 0 ~ 모드 10 각각에 따라 어느 하나의 픽셀의 R 성분, G 성분, B 성분 각각에 해당하는 8 비트의 현재 이미지 데이터와 262 단계에서 결정된 예측 방향에 위치한 이웃 픽셀의 R 성분, G 성분, B 성분 각각에 해당하는 참조 이미지 데이터의 차이값을 산출하고, 모드 11에 따라 R 성분, G 성분, B 성분 각각에 해당하는 8 비트의 현재 이미지 데이터 중 일부를 절단함으로써 현재 이미지 데이터를 압축한다.
264 단계에서 데이터 압축 장치(21)는 263 단계에서 산출된 G 성분에 해당하는 8 비트의 현재 이미지 데이터와 참조 이미지 데이터의 차이값이 3 비트로 표현 가능한지 여부를 확인하고, R 성분, B 성분에 해당하는 8 비트의 현재 이미지 데이터와 참조 이미지 데이터의 차이값이 2 비트로 표현 가능한지 여부를 확인한다.
265 단계에서 데이터 압축 장치(21)는 264 단계에서 고정 길이의 비트들로 표현 가능한 것으로 확인된 모드들 중 현재 이미지 데이터와 현재 이미지 데이터의 복원 데이터 사이에 발생할 수 있는 최대 에러값이 가장 작은 모드를 선정한다.
266 단계에서 데이터 압축 장치(21)는 265 단계에서 선정된 모드에 따라 2 x 2 블록을 구성하는 4 개의 픽셀 별로 어느 하나의 픽셀의 R 성분, G 성분, B 성분 각각에 해당하는 압축 데이터를 262 단계에서 결정된 예측 방향에 위치한 이웃 픽셀의 R 성분, G 성분, B 성분 각각에 해당하는 참조 이미지 데이터에 가산하거나 R 성분, G 성분, B 성분 각각에 해당하는 압축 데이터에 소정의 이진 값을 부가함으로써 R 성분, G 성분, B 성분 각각에 해당하는 현재 이미지 데이터를 복원한다.
267 단계에서 데이터 압축 장치(21)는 263 단계에서 12 개의 모드들 각각에 따라 압축된 데이터 중 265 단계에서 선정된 모드에 따라 압축된 데이터(28 비트), 265 단계에서 선정된 모드를 나타내는 모드 데이터(4 비트)로 구성된 총 32 비트의 데이터 패킷을 생성하고, 이것을 메모리(22)로 출력한다. 아니면, 267 단계에서 데이터 압축 장치(21)는 28 비트의 압축 데이터, 4 비트의 모드 데이터 외에 인트라 예측부(62)에 의해 결정된 예측 방향을 나타내는 2 비트의 데이터를 추가적으로 더 포함하는 총 34 비트의 데이터 패킷을 생성할 수도 있다.
268 단계에서 데이터 압축 장치(21)는 픽처를 구성하는 모든 픽셀들에 대한 데이터 압축이 완료되었는지를 확인하고, 그 결과 완료되지 않았으면 262 단계로 돌아가고, 완료되었으면 종료한다.
도 27은 본 발명의 바람직한 일 실시예에 따른 데이터 복원 방법의 흐름도이다.
도 27을 참조하면, 본 실시예에 따른 데이터 복원 방법은 도 22에 도시된 데이터 복원 장치(23)에서 시계열적으로 처리되는 단계들로 구성된다. 따라서, 이하 생략된 내용이라 하더라도 도 22에 도시된 데이터 복원 장치(23)에 관하여 이상에 서 기술된 내용은 본 실시예에 따른 데이터 복원 방법에도 적용된다.
271 단계에서 데이터 복원 장치(23)는 메모리(22)로부터 32 비트의 데이터 패킷을 읽어내고, 이 32 비트의 데이터 패킷을 파싱함으로써 이 32 비트의 데이터 패킷으로부터 4 비트의 모드 데이터 및 28 비트의 압축 데이터를 추출한다. 아니면, 271 단계에서 데이터 복원 장치(23)는 메모리(22)로부터 32 비트의 데이터가 아닌 34 비트의 데이터를 읽어낼 수도 있으며, 이 34 비트의 데이터 패킷으로부터 4 비트의 모드 데이터, 28 비트의 압축 데이터, 2 비트의 예측 방향 데이터를 추출한다.
272 단계에서 데이터 복원 장치(23)는 271 단계에서 추출된 4 비트의 모드 데이터로부터 2 x 2 블록에 해당하는 현재 이미지 데이터를 압축하기 위한 12 개의 모드들 중 데이터 압축 장치(21)에 의해 선정되었던 어느 하나의 모드를 인식하고, 인식된 모드가 모드 0 ~ 모드 10 중 어느 하나이면 273 단계로 진행하고, 모드 11이면 275 단계로 진행한다.
273 단계에서 데이터 복원 장치(23)는 2 x 2 블록을 구성하는 4 개의 픽셀 별로 271 단계에서 추출된 어느 하나의 픽셀의 R 성분, G 성분, G 성분 각각에 해당하는 압축 데이터를 272 단계에서 인식된 모드에 대응하는 비트만큼 시프트하고, 이와 같이 비트 시프트된 압축 데이터에 272 단계에서 인식된 모드에 대응하는 이진 값을 부가함으로써 R 성분, G 성분, G 성분 각각에 해당하는 현재 이미지 데이터와 참조 이미지 데이터의 차이값을 복원한다.
274 단계에서 데이터 복원 장치(23)는 273 단계에서 복원된 차이값을 271 단 계에서 추출된 2 비트의 예측 방향 데이터가 나타내는 예측 방향에 위치한 이웃 픽셀의 R 성분, G 성분, G 성분 각각에 해당하는 8 비트의 참조 데이터에 가산함으로써 R 성분, G 성분, G 성분 각각에 해당하는 8 비트의 현재 이미지 데이터를 복원한다.
275 단계에서 데이터 복원 장치(23)는 2 x 2 블록을 구성하는 4 개의 픽셀 별로 271 단계에서 추출된 28 비트의 압축 데이터 중 G 성분에 해당하는 3 비트의 압축 데이터에는 5 비트의 이진 값을 부가하고, R 성분, B 성분에 해당하는 2 비트의 압축 데이터에는 6 비트의 이진 값을 부가함으로써 R 성분, G 성분, B 성분 각각에 해당하는 8 비트의 현재 이미지 데이터를 복원한다.
276 단계에서 데이터 복원 장치(23)는 픽처를 구성하는 모든 픽셀들에 대한 데이터 복원이 완료되었는지를 확인하고, 그 결과 완료되지 않았으면 271 단계로 돌아가고, 완료되었으면 종료한다.
277 단계에서 데이터 복원 장치(23)는 274 단계 또는 275 단계에서 복원된 R 성분, G 성분, B 성분 각각에 해당하는 8 비트의 현재 이미지 데이터인 픽셀들 4개로 구성된 총 96 비트의 2 x 2 블록들을 병합함으로써 어느 하나의 픽처를 복원한다.
한편, 상술한 본 발명의 실시예들은 컴퓨터에서 실행될 수 있는 프로그램으로 작성가능하고, 컴퓨터로 읽을 수 있는 기록매체를 이용하여 상기 프로그램을 동작시키는 범용 디지털 컴퓨터에서 구현될 수 있다. 또한, 상술한 본 발명의 실시예에서 사용된 데이터의 구조는 컴퓨터로 읽을 수 있는 기록매체에 여러 수단을 통하 여 기록될 수 있다.
상기 컴퓨터로 읽을 수 있는 기록매체는 마그네틱 저장매체(예를 들면, 롬, 플로피 디스크, 하드 디스크 등), 광학적 판독 매체(예를 들면, 시디롬, 디브이디 등) 및 캐리어 웨이브(예를 들면, 인터넷을 통한 전송)와 같은 저장매체를 포함한다.
이제까지 본 발명에 대하여 그 바람직한 실시예들을 중심으로 살펴보았다. 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자는 본 발명이 본 발명의 본질적인 특성에서 벗어나지 않는 범위에서 변형된 형태로 구현될 수 있음을 이해할 수 있을 것이다. 그러므로 개시된 실시예들은 한정적인 관점이 아니라 설명적인 관점에서 고려되어야 한다. 본 발명의 범위는 전술한 설명이 아니라 특허청구범위에 나타나 있으며, 그와 동등한 범위 내에 있는 모든 차이점은 본 발명에 포함된 것으로 해석되어야 할 것이다.
본 발명에 따르면, DPCM 방식 및 PCM 방식 중 어느 하나를 선택적으로 사용하여 이미지 데이터를 압축 또는 복원함으로써 영상 인코더/디코더 시스템의 복잡도를 획기적으로 낮출 수 있고, LCD DCC 장치 등에서 요구하는 픽처 단위의 CBR(Constant Bit Rate)을 정확히 맞출 수 있다는 효과가 있다. 특히, 본 발명에 따르면, DPCM 방식 및 PCM 방식을 이용하여 4 개의 픽셀을 하나로 묶은 2 x 2 크기의 블록 단위로 데이터를 압축 또는 복원하기 때문에 원본 이미지의 주관적인 화질 열화 없이 데이터를 1/3으로 압축할 수 있다는 효과가 있다.

Claims (19)

  1. (a) 현재 데이터를 압축하기 위한 복수 개의 모드들 각각에 따라 상기 현재 데이터를 압축하는 단계;
    (b) 상기 모드들 각각에 따라 압축된 현재 데이터가 고정 길이의 비트들로 표현 가능한지 여부를 확인하는 단계;
    (c) 상기 고정 길이의 비트들로 표현 가능한 것으로 확인된 모드들 중 어느 하나의 모드를 선정하는 단계; 및
    (d) 상기 선정된 모드에 따라 압축된 현재 데이터를 출력하는 단계를 포함하는 것을 특징으로 하는 데이터 압축 방법.
  2. 제 1 항에 있어서,
    상기 (a) 단계는 상기 모드들 각각에 대하여 병렬적으로 상기 현재 데이터를 압축하는 것을 특징으로 하는 데이터 압축 방법.
  3. 제 1 항에 있어서,
    상기 (a) 단계는 상기 모드들 중 일부 모드에 따라 상기 현재 데이터와 참조 데이터의 차이값을 산출하고, 상기 일부 모드가 아닌 나머지 모드에 따라 현재 데이터 중 소정 크기의 하위 비트를 절단(truncation)함으로써 상기 현재 데이터를 압축하는 단계를 포함하는 것을 특징으로 하는 데이터 압축 방법.
  4. 제 3 항에 있어서,
    상기 (a) 단계는 상기 현재 데이터 및 상기 참조 데이터를 상기 모드들 중 어느 하나의 모드에 해당하는 소정 비트만큼 시프트하고, 상기 시프트된 현재 데이터와 상기 시프트된 참조 데이터의 차이값을 산출하는 것을 특징으로 하는 데이터 압축 방법.
  5. 제 1 항에 있어서,
    상기 (c) 단계는 상기 고정 길이의 비트들로 표현 가능한 것으로 확인된 모드들 중 상기 현재 이미지 데이터와 상기 현재 이미지 데이터의 복원 데이터 사이에 발생할 수 있는 최대 에러값이 가장 작은 모드를 선정하는 것을 특징으로 하는 데이터 압축 방법.
  6. 제 5 항에 있어서,
    상기 (c) 단계는
    (c1) 상기 고정 길이의 비트들로 표현 가능한 것으로 확인된 모드들의 우선 순위를 확인하는 단계;
    (c2) 상기 확인된 모드들 중 가장 우선 순위가 높은 모드에 따른 최대 에러값을 산출하는 단계;
    (c3) 상기 가장 우선 순위가 높은 모드보다 우선 순위가 더 높은 모드에 따 른 차이값을 수정하는 단계;
    (c4) 상기 수정된 차이값에 따른 최대 에러값을 산출하는 단계; 및
    (c5) 상기 (c2) 단계에서 산출된 최대 에러값과 상기 (c4) 단계에서 산출된 최대 에러값을 비교하고, 상기 비교된 결과 더 작은 에러값을 갖는 모드를 선정하는 단계를 포함하는 것을 특징으로 하는 데이터 압축 방법.
  7. 제 1 항에 있어서,
    소정 크기의 블록을 구성하는 복수 개의 픽셀들 각각과 복수 개의 예측 방향들 각각에 위치한 상기 픽셀들 각각의 이웃 픽셀들의 차이값을 산출하고, 상기 산출된 차이값들 중 가장 작은 차이값에 해당하는 예측 방향을 결정하는 단계를 더 포함하고,
    상기 (a) 단계는 상기 현재 데이터와 상기 결정된 예측 방향에 위치한 이웃 픽셀에 해당하는 참조 데이터의 차이값을 산출함으로써 상기 현재 데이터를 압축하는 것을 특징으로 하는 데이터 압축 방법.
  8. 제 1 항에 있어서,
    상기 (a) 단계는 4 개의 픽셀을 하나로 묶은 2 x 2 크기의 블록 단위로 상기 현재 데이터를 압축하는 것을 특징으로 하는 데이터 압축 방법.
  9. 제 1 항 내지 제 8 항 중에 어느 한 항의 방법을 컴퓨터에서 실행시키기 위 한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체.
  10. 현재 데이터를 압축하기 위한 복수 개의 모드들 각각에 따라 상기 현재 데이터를 압축하는 부호화부;
    상기 모드들 각각에 따라 압축된 현재 데이터가 고정 길이의 비트들로 표현 가능한지 여부를 확인하는 확인부;
    상기 고정 길이의 비트들로 표현 가능한 것으로 확인된 모드들 중 어느 하나의 모드를 선정하는 선정부; 및
    상기 선정된 모드에 따라 압축된 현재 데이터를 출력하는 비트 패킹부를 포함하는 것을 특징으로 하는 데이터 압축 장치.
  11. (a) 현재 데이터를 압축하기 위한 복수의 모드들 중 어느 하나의 모드를 인식하는 단계; 및
    (b) 상기 인식된 모드에 따라 상기 현재 데이터의 압축 데이터를 참조 데이터에 가산하거나 상기 현재 데이터의 압축 데이터에 소정의 이진 값을 부가함으로써 상기 현재 데이터를 복원하는 단계를 포함하는 것을 특징으로 하는 데이터 복원 방법.
  12. 제 11 항에 있어서,
    상기 압축 데이터는 상기 현재 데이터와 참조 데이터의 차이값 또는 상기 현 재 데이터의 일부에 해당하는 고정 길이의 비트들을 포함하는 것을 특징으로 하는 데이터 복원 방법.
  13. 제 11 항에 있어서,
    상기 (b) 단계는 상기 압축 데이터를 상기 인식된 모드에 대응하는 소정 비트만큼 시프트함으로써 상기 차이값을 복원하고, 상기 복원된 차이값을 상기 참조 데이터에 가산함으로써 상기 현재 데이터를 복원하는 것을 특징으로 하는 데이터 복원 방법.
  14. 제 11 항에 있어서,
    상기 (b) 단계는 상기 압축 데이터가 상기 압축 데이터를 구성하는 비트들로 표현될 수 있는 최대 값인 경우라면, 상기 소정의 이진 값을 증가시키고, 상기 증가된 이진 값을 부가하는 것을 특징으로 하는 데이터 복원 방법.
  15. 제 11 항에 있어서,
    상기 (b) 단계는 상기 압축 데이터가 상기 압축 데이터를 구성하는 비트들로 표현될 수 있는 최소 값인 경우라면, 상기 소정의 이진 값을 감소시키고, 상기 감소된 이진 값을 부가하는 것을 특징으로 하는 데이터 복원 방법.
  16. 제 11 항에 있어서,
    상기 (b) 단계는 상기 현재 데이터를 압축한 장치로부터 수신된 예측 방향 데이터가 나타내는 예측 방향에 위치한 이웃 픽셀의 참조 데이터에 가산함으로써 상기 현재 이미지 데이터를 복원하는 것을 특징으로 하는 데이터 복원방법.
  17. 제 11 항에 있어서,
    상기 (b) 단계는 4 개의 픽셀을 하나의 블록으로 묶은 2 x 2 크기의 블록 단위로 상기 현재 데이터를 복원하는 것을 특징으로 하는 데이터 복원 방법.
  18. 제 11 항 내지 제 17 항 중에 어느 한 항의 방법을 컴퓨터에서 실행시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체.
  19. 현재 데이터를 압축하기 위한 복수의 모드들 중 어느 하나의 모드를 인식하는 인식부; 및
    상기 인식된 모드에 따라 상기 현재 데이터의 압축 데이터를 참조 데이터에 가산하거나 상기 현재 데이터의 압축 데이터에 소정의 이진 값을 부가함으로써 상기 현재 데이터를 복원하는 복호화부를 포함하는 것을 특징으로 하는 데이터 복원 장치.
KR20060120191A 2006-11-30 2006-11-30 주관적인 무손실 이미지 데이터 압축 방법 및 장치 KR100837410B1 (ko)

Priority Applications (5)

Application Number Priority Date Filing Date Title
KR20060120191A KR100837410B1 (ko) 2006-11-30 2006-11-30 주관적인 무손실 이미지 데이터 압축 방법 및 장치
US11/890,497 US8345753B2 (en) 2006-11-30 2007-08-07 Method, medium, and system visually compressing image data
JP2007282113A JP5242991B2 (ja) 2006-11-30 2007-10-30 主観的な無損失のイメージデータ圧縮方法及び装置
CN2007101888000A CN101193301B (zh) 2006-11-30 2007-11-20 在视觉上压缩图像数据的方法和系统
EP20070121995 EP1968323B1 (en) 2006-11-30 2007-11-30 Method, medium, and system visually compressing image data

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR20060120191A KR100837410B1 (ko) 2006-11-30 2006-11-30 주관적인 무손실 이미지 데이터 압축 방법 및 장치

Publications (2)

Publication Number Publication Date
KR20080049535A KR20080049535A (ko) 2008-06-04
KR100837410B1 true KR100837410B1 (ko) 2008-06-12

Family

ID=39475874

Family Applications (1)

Application Number Title Priority Date Filing Date
KR20060120191A KR100837410B1 (ko) 2006-11-30 2006-11-30 주관적인 무손실 이미지 데이터 압축 방법 및 장치

Country Status (5)

Country Link
US (1) US8345753B2 (ko)
EP (1) EP1968323B1 (ko)
JP (1) JP5242991B2 (ko)
KR (1) KR100837410B1 (ko)
CN (1) CN101193301B (ko)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10136139B2 (en) 2014-01-03 2018-11-20 Samsung Electronics Co., Ltd. Display driver and method of operating image data processing device
KR102142946B1 (ko) 2019-11-08 2020-08-10 세종대학교산학협력단 다중 dpcm 기법을 이용한 무손실 이미지 데이터 압축 장치 및 방법

Families Citing this family (44)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101025847B1 (ko) 2007-01-19 2011-03-30 삼성전자주식회사 이진 영상을 효과적으로 압축하고 복원하는 방법 및 장치
US8406314B2 (en) * 2007-11-28 2013-03-26 Sharp Laboratories Of America, Inc. Two-dimensional DPCM with PCM escape mode
KR20090097689A (ko) * 2008-03-12 2009-09-16 삼성전자주식회사 영상의 인트라 예측 부호화/복호화 방법 및 장치
CN102197599A (zh) * 2008-10-27 2011-09-21 微动公司 用于将数据记录压缩和解压缩的方法和设备
KR101539260B1 (ko) 2008-12-02 2015-07-29 삼성전자주식회사 선택적 영상정보 무손실 압축, 복원 장치 및 방법
KR101664125B1 (ko) * 2009-09-22 2016-10-10 삼성전자주식회사 랜덤 액세스 가능한 영상 인코딩 시스템 및 방법
KR101691571B1 (ko) * 2009-10-15 2017-01-02 삼성전자주식회사 표시 장치에 의해서 표시되는 영상 데이터를 처리하는 장치 및 방법
JP2011124866A (ja) * 2009-12-11 2011-06-23 Toshiba Corp 符号化装置および表示制御装置
WO2011126344A2 (en) * 2010-04-09 2011-10-13 Samsung Electronics Co., Ltd. Method and apparatus for generating video packets, method and apparatus for restoring video
BR122020015660B1 (pt) * 2010-07-13 2023-01-10 Nec Corporation Dispositivo de decodificação de vídeo e método de decodificação de vídeo
KR101742182B1 (ko) 2010-09-17 2017-06-16 삼성디스플레이 주식회사 영상 데이터 처리 방법, 및 이를 수행하는 표시 장치
GB2486726B (en) * 2010-12-23 2017-11-29 British Broadcasting Corp Compression of pictures
MX2013000093A (es) 2011-02-22 2013-02-27 Panasonic Corp Metodo de filtro, dispositivo de codificacion de imagen dinamica, dispositivo de decodificacion de imagen dinamica y dispositivo de codificacion y decodificacion de imagen dinamica.
TWI523499B (zh) 2011-02-22 2016-02-21 Panasonic Ip Corp America An image coding method, an image decoding method, an image coding apparatus, an image decoding apparatus, and an image coding / decoding apparatus
CN102857753B (zh) * 2011-07-01 2015-11-25 华为技术有限公司 一种参考帧压缩和解压方法及装置
WO2013009896A1 (en) * 2011-07-12 2013-01-17 Huawei Technologies Co. Ltd. Pixel-based intra prediction for coding in hevc
PL3661201T3 (pl) 2011-07-19 2021-10-25 Tagivan Ii Llc Sposób filtrowania, sposób dekodowania filmu, sposób kodowania filmu, aparat do dekodowania filmu, aparat do kodowania filmu i aparat do kodowania/dekodowania filmu
CN103797798B (zh) * 2011-09-01 2017-05-17 日本电气株式会社 捕获图像压缩传输方法和捕获图像压缩传输系统
US8891894B2 (en) * 2011-09-30 2014-11-18 Apple Inc. Psychovisual image compression
US9253508B2 (en) * 2011-11-04 2016-02-02 Futurewei Technologies, Inc. Differential pulse code modulation intra prediction for high efficiency video coding
CN102437894B (zh) * 2011-11-04 2015-01-28 百度在线网络技术(北京)有限公司 用于对待发送信息进行压缩处理的方法、装置及设备
KR101868435B1 (ko) 2011-12-05 2018-06-19 삼성전자주식회사 영상 압축 장치 및 이를 포함하는 영상 처리 장치
US20140376607A1 (en) * 2011-12-21 2014-12-25 Sreenath Kurupati Perceptual lossless compression of image data to reduce memory bandwidth and storage
US20130188709A1 (en) * 2012-01-25 2013-07-25 Sachin G. Deshpande Video decoder for tiles with absolute signaling
JP2013223035A (ja) * 2012-04-13 2013-10-28 Canon Inc 画像復号装置、画像復号方法及びプログラム
US10230959B2 (en) * 2012-06-01 2019-03-12 Nxp Usa, Inc. Method and apparatus for performing compression of image data
CN103974072A (zh) * 2013-01-29 2014-08-06 江山 视频解码中基于块压缩的帧的储存
US9177393B2 (en) * 2013-02-04 2015-11-03 Qualcomm Incorporated Mixed mode for frame buffer compression
US8922671B2 (en) * 2013-03-11 2014-12-30 Sony Corporation Method of compression of images using a natural mode and a graphics mode
WO2014146055A2 (en) * 2013-03-15 2014-09-18 Ning Lu Encoding of video data
JP2014241579A (ja) * 2013-05-13 2014-12-25 株式会社東芝 映像圧縮装置
US10125558B2 (en) * 2014-05-13 2018-11-13 Schlumberger Technology Corporation Pumps-off annular pressure while drilling system
KR102332782B1 (ko) * 2014-12-15 2021-11-30 삼성전자주식회사 시각 특성을 고려한 영상 데이터 압축
WO2016095149A1 (zh) * 2014-12-18 2016-06-23 华为技术有限公司 一种数据压缩存储方法、装置,及分布式文件系统
JP6502739B2 (ja) * 2015-04-28 2019-04-17 キヤノン株式会社 画像符号化装置、画像処理装置、画像符号化方法
US10419018B2 (en) 2015-05-08 2019-09-17 Schlumberger Technology Corporation Real-time annulus pressure while drilling for formation integrity test
JP6626295B2 (ja) * 2015-09-09 2019-12-25 キヤノン株式会社 画像符号化装置、画像処理装置、画像符号化方法
CN109561313B (zh) * 2018-10-16 2020-04-24 北京大学 一种基于分块的脉冲序列压缩方法及装置
KR102185668B1 (ko) * 2019-01-30 2020-12-02 스노우 주식회사 이미지 파일의 픽셀 변환을 통한 압축율 향상 방법 및 시스템
KR102152346B1 (ko) 2019-01-30 2020-09-04 스노우 주식회사 이미지 파일의 블록 간 차이를 통한 압축율 향상 방법 및 시스템
CN110769211A (zh) * 2019-11-07 2020-02-07 鲁东大学 一种图像栅格数据的传输与存储方法
DE102021117397A1 (de) * 2020-07-16 2022-01-20 Samsung Electronics Co., Ltd. Bildsensormodul, bildverarbeitungssystem und bildkomprimierverfahren
CN116527942A (zh) * 2022-07-27 2023-08-01 杭州海康威视数字技术股份有限公司 一种图像编解码方法及装置
CN116055750B (zh) * 2023-04-03 2023-06-27 厦门视诚科技有限公司 一种减少视频传输带宽的无损编解码系统和方法

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20030063706A (ko) * 2002-01-23 2003-07-31 주식회사 엘지이아이 동영상 시스템에서의 엔코딩 제어 방법
WO2004054158A2 (en) 2002-12-10 2004-06-24 Tut Systems, Inc. Rate control with picture-based lookahead window
KR20060083610A (ko) * 2005-01-18 2006-07-21 삼성전자주식회사 영상데이터 압축기 및 압축방법

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0239729A (ja) * 1988-07-29 1990-02-08 Sony Corp データ並べ替え回路
GB2258372B (en) * 1991-08-02 1995-05-31 Sony Corp Apparatus for and methods of recording and/or reproducing digital data
US6553143B2 (en) * 1992-06-30 2003-04-22 Canon Kabushiki Kaisha Image encoding method and apparatus
US6427025B1 (en) * 1992-08-14 2002-07-30 Canon Kabushiki Kaisha Image processing with selection between reversible and irreversible compression
CA2185753C (en) 1996-03-04 2000-09-12 Hideo Ohira Digital image decoding apparatus
US6208689B1 (en) * 1996-03-04 2001-03-27 Mitsubishi Denki Kabushiki Kaisha Method and apparatus for digital image decoding
JP3721716B2 (ja) * 1997-06-02 2005-11-30 富士ゼロックス株式会社 画像情報符号化装置および方法
US6148111A (en) * 1998-04-27 2000-11-14 The United States Of America As Represented By The Secretary Of The Navy Parallel digital image compression system for exploiting zerotree redundancies in wavelet coefficients
US6859496B1 (en) * 1998-05-29 2005-02-22 International Business Machines Corporation Adaptively encoding multiple streams of video data in parallel for multiplexing onto a constant bit rate channel
JP3132482B2 (ja) 1998-09-04 2001-02-05 日本電気株式会社 画像データ転送における転送レート制御方式及び方法
US20010054131A1 (en) * 1999-01-29 2001-12-20 Alvarez Manuel J. System and method for perfoming scalable embedded parallel data compression
DE10065919A1 (de) * 2000-11-07 2002-05-29 Bosch Gmbh Robert Verfahren zur codierten Modulation
US7072393B2 (en) * 2001-06-25 2006-07-04 International Business Machines Corporation Multiple parallel encoders and statistical analysis thereof for encoding a video sequence
US7936814B2 (en) * 2002-03-28 2011-05-03 International Business Machines Corporation Cascaded output for an encoder system using multiple encoders
JP4470485B2 (ja) * 2003-12-25 2010-06-02 株式会社ニコン 固定ビット長の予測差分圧縮データを生成する画像圧縮装置および画像圧縮プログラム、画像伸張装置および画像伸張プログラム、並びに電子カメラ

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20030063706A (ko) * 2002-01-23 2003-07-31 주식회사 엘지이아이 동영상 시스템에서의 엔코딩 제어 방법
WO2004054158A2 (en) 2002-12-10 2004-06-24 Tut Systems, Inc. Rate control with picture-based lookahead window
KR20060083610A (ko) * 2005-01-18 2006-07-21 삼성전자주식회사 영상데이터 압축기 및 압축방법

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10136139B2 (en) 2014-01-03 2018-11-20 Samsung Electronics Co., Ltd. Display driver and method of operating image data processing device
KR102142946B1 (ko) 2019-11-08 2020-08-10 세종대학교산학협력단 다중 dpcm 기법을 이용한 무손실 이미지 데이터 압축 장치 및 방법

Also Published As

Publication number Publication date
JP5242991B2 (ja) 2013-07-24
KR20080049535A (ko) 2008-06-04
US8345753B2 (en) 2013-01-01
EP1968323A2 (en) 2008-09-10
JP2008141738A (ja) 2008-06-19
CN101193301A (zh) 2008-06-04
EP1968323A3 (en) 2009-11-04
US20080131087A1 (en) 2008-06-05
EP1968323B1 (en) 2012-02-29
CN101193301B (zh) 2012-01-25

Similar Documents

Publication Publication Date Title
KR100837410B1 (ko) 주관적인 무손실 이미지 데이터 압축 방법 및 장치
KR101270167B1 (ko) 저복잡도의 이미지 압축 방법 및 장치, 저복잡도의 이미지복원 방법 및 장치
KR100886295B1 (ko) 화상 처리 장치, 화상 처리 방법, 및 화상 표시 장치
JP4169768B2 (ja) 画像符号化装置、画像処理装置、画像符号化方法、及び画像処理方法
JP5490287B2 (ja) エッジ領域を効果的に圧縮して復元する方法及び装置
JP5179889B2 (ja) 二進映像を効果的に圧縮して復元する方法及び装置
KR20070037248A (ko) 영상 부호화장치 및 방법, 영상 복호화장치 및 방법과 이를채용한 디스플레이 구동회로 및 방법
US8675732B2 (en) Method and apparatus of compressing image data
KR100917530B1 (ko) 화상 처리 장치, 화상 처리 방법, 화상 부호화 장치, 화상부호화 방법, 및 화상 표시 장치
JP4144600B2 (ja) 画像処理装置、画像処理方法、および画像表示装置
KR100896387B1 (ko) 화상 처리 장치, 화상 처리 방법, 화상 부호화 장치, 및화상 부호화 방법
JP4100405B2 (ja) 画像処理装置、画像処理方法、画像表示装置
KR100962506B1 (ko) 데이터 압축과 복원 방법 및 장치와 이를 이용한액정표시장치와 그 구동방법
KR20100087845A (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
FPAY Annual fee payment

Payment date: 20130522

Year of fee payment: 6

FPAY Annual fee payment

Payment date: 20140529

Year of fee payment: 7

FPAY Annual fee payment

Payment date: 20150528

Year of fee payment: 8

FPAY Annual fee payment

Payment date: 20160530

Year of fee payment: 9

FPAY Annual fee payment

Payment date: 20170529

Year of fee payment: 10

FPAY Annual fee payment

Payment date: 20180530

Year of fee payment: 11

FPAY Annual fee payment

Payment date: 20190530

Year of fee payment: 12