KR100962506B1 - Data Compressing and Decompressing Method and Apparatus, Liquid Crystal Display and Driving Method using the same - Google Patents
Data Compressing and Decompressing Method and Apparatus, Liquid Crystal Display and Driving Method using the same Download PDFInfo
- Publication number
- KR100962506B1 KR100962506B1 KR1020080067242A KR20080067242A KR100962506B1 KR 100962506 B1 KR100962506 B1 KR 100962506B1 KR 1020080067242 A KR1020080067242 A KR 1020080067242A KR 20080067242 A KR20080067242 A KR 20080067242A KR 100962506 B1 KR100962506 B1 KR 100962506B1
- Authority
- KR
- South Korea
- Prior art keywords
- vector
- values
- data
- representative value
- encoded data
- Prior art date
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/42—Methods 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
-
- G—PHYSICS
- G09—EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
- G09G—ARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
- G09G3/00—Control arrangements or circuits, of interest only in connection with visual indicators other than cathode-ray tubes
- G09G3/20—Control arrangements or circuits, of interest only in connection with visual indicators other than cathode-ray tubes for presentation of an assembly of a number of characters, e.g. a page, by composing the assembly by combination of individual elements arranged in a matrix no fixed position being assigned to or needed to be assigned to the individual characters or partial characters
- G09G3/34—Control arrangements or circuits, of interest only in connection with visual indicators other than cathode-ray tubes for presentation of an assembly of a number of characters, e.g. a page, by composing the assembly by combination of individual elements arranged in a matrix no fixed position being assigned to or needed to be assigned to the individual characters or partial characters by control of light from an independent source
- G09G3/36—Control arrangements or circuits, of interest only in connection with visual indicators other than cathode-ray tubes for presentation of an assembly of a number of characters, e.g. a page, by composing the assembly by combination of individual elements arranged in a matrix no fixed position being assigned to or needed to be assigned to the individual characters or partial characters by control of light from an independent source using liquid crystals
- G09G3/3607—Control arrangements or circuits, of interest only in connection with visual indicators other than cathode-ray tubes for presentation of an assembly of a number of characters, e.g. a page, by composing the assembly by combination of individual elements arranged in a matrix no fixed position being assigned to or needed to be assigned to the individual characters or partial characters by control of light from an independent source using liquid crystals for displaying colours or for displaying grey scales with a specific pixel layout, e.g. using sub-pixels
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/46—Embedding additional information in the video signal during the compression process
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Chemical & Material Sciences (AREA)
- Crystallography & Structural Chemistry (AREA)
- Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Control Of Indicators Other Than Cathode Ray Tubes (AREA)
Abstract
본 발명은 데이터를 압축 및 복원하기 위한 데이터 압축 방법에 관한 것이다.The present invention relates to a data compression method for compressing and decompressing data.
이 데이터 압축 방법은 입력 데이터에 대하여 VQ-BTC 알고리즘을 실행하여 비트맵과 제1 벡터 대표값들을 포함하는 제1 부호화 데이터를 발생하고 상기 제1 부호화 데이터를 식별하기 위한 플래그 비트를 상기 제1 부호화 데이터에 부가하는 제1 부호화 데이터를 부가하는 단계; 상기 비트맵, 상위 비트들로만 이루어진 제2 벡터 대표값들, 상기 제2 벡터 대표값들과 그 주변의 벡터값들 사이의 평균거리와 상기 벡터값들 각각의 보정 위치를 포함하는 제2 부호화 데이터를 발생하는 단계; 상기 평균거리와 상기 보정 위치를 이용하여 상기 제2 벡터 대표값들을 보정하는 단계; 상기 제2 부호화 데이터를 식별하기 위한 플래그 비트를 상기 제2 부호화 데이터에 부가하는 단계; 및 상기 벡터 대표들 간의 편차를 미리 정해진 임계값과 비교하여 그 비교 결과에 따라 상기 제1 및 제2 인코더의 출력을 선택하는 단계를 포함한다. The data compression method executes a VQ-BTC algorithm on input data to generate first encoded data including a bitmap and a first vector representative value, and encodes a flag bit for identifying the first encoded data. Adding first coded data added to the data; Second coded data including the bitmap, second vector representative values consisting of upper bits only, an average distance between the second vector representative values and vector values in the vicinity thereof, and a correction position of each of the vector values. Generating; Correcting the second vector representative values using the average distance and the correction position; Adding a flag bit for identifying the second encoded data to the second encoded data; And comparing the deviations between the vector representatives with a predetermined threshold and selecting outputs of the first and second encoders according to the comparison result.
Description
본 발명은 데이터를 압축 및 복원하기 위한 데이터 압축 방법 및 장치와 그 복원 방법 및 장치에 관한 것이다. 또한, 본 발명은 상기 데이터 압축과 복원 방법 및 장치를 이용하여 메모리에 저장될 데이터를 압축 및 복원한 후에 액정셀들에 인가될 데이터전압을 액정표시장치의 과구동(Over driving control, ODC) 방식으로 변조하는 액정표시장치와 그 구동방법에 관한 것이다. The present invention relates to a data compression method and apparatus for compressing and decompressing data, and a method and apparatus for restoring the same. In addition, the present invention provides an over-driving control (ODC) scheme of a liquid crystal display device to convert a data voltage to be applied to liquid crystal cells after compressing and restoring data to be stored in a memory using the data compression and restoration method and apparatus. And a driving method thereof.
액정표시장치는 수학식 1 및 2와 같이 액정의 고유한 점성과 탄성 등의 특성에 의해 응답속도가 느린 단점이 있다. As shown in
여기서, τr는 액정에 전압이 인가될 때의 라이징 타임(rising time)을, Va는 인가전압을, VF는 액정분자가 경사운동을 시작하는 프리드릭 천이 전압(Freederick Transition Voltage)을, d는 액정셀의 셀갭(cell gap)을, (gamma)는 액정분자의 회전점도(rotational viscosity)를 각각 의미한다. Where τr is the rising time when voltage is applied to the liquid crystal, Va is the applied voltage, V F is the Freederick Transition Voltage at which the liquid crystal molecules start the tilt motion, and d is The cell gap of the liquid crystal cell, (gamma) means rotational viscosity of liquid crystal molecules, respectively.
여기서, τf는 액정에 인가된 전압이 오프된 후 액정이 탄성 복원력에 의해 원위치로 복원되는 폴링타임(falling time)을, K는 액정 고유의 탄성계수를 각각 의미한다. Here, τf denotes a falling time during which the liquid crystal is restored to its original position by the elastic restoring force after the voltage applied to the liquid crystal is turned off, and K denotes an elastic modulus inherent to the liquid crystal.
액정표시장치에 가장 일반적으로 사용되어 왔던 액정 모드인 TN 모드(Twisted Nematic mode)의 액정 응답속도는 액정 재료의 물성과 셀갭 등에 의해 달라질 수 있지만 통상, 라이징 타임이 20-80ms이고 폴링 타임이 20-30ms이다. 이러한 액정의 응답속도는 한 프레임기간(NTSC : 16.67ms)보다 길다. 이 때문에 도 1과 같이 액정셀에 충전되는 전압이 원하는 전압에 도달하기 전에 다음 프레임으로 진행되므로 동영상에서 모션 블러(Motion Blurr) 현상이 나타난다. The liquid crystal response speed of TN mode (Twisted Nematic mode), which has been the most commonly used liquid crystal display device, may vary depending on the physical properties of the liquid crystal material and the cell gap. 30 ms. The response speed of the liquid crystal is longer than one frame period (NTSC: 16.67ms). For this reason, as shown in FIG. 1, since the voltage charged in the liquid crystal cell reaches the next frame, motion blur occurs in the video.
도 1을 참조하면, 액정의 느린 응답속도로 인하여 한 레벨에서 다른 레벨로 데이터(VD)가 변할 때 그에 대응하는 표시 휘도(BL)가 원하는 휘도에 도달하지 못하게 되어 원하는 색과 휘도를 표현하지 못하게 된다. 그 결과, 액정표시장치는 동영상에서 모션 블러가 나타나므로 화질이 떨어진다. Referring to FIG. 1, when the data VD changes from one level to another due to the slow response speed of the liquid crystal, the corresponding display luminance BL may not reach the desired luminance and thus may not display the desired color and luminance. do. As a result, the liquid crystal display exhibits a motion blur in the video and thus the image quality is deteriorated.
이러한 액정표시소자의 느린 응답속도를 해결하기 위하여, 미국특허 제5,495,265호와 PCT 국제공개번호 WO 99/05567에는 룩업 테이블(Look-up table)을 이용하여 데이터의 변화여부에 따라 데이터를 변조하여 과구동(Over driving control, ODC)이 제안된 바 있다. 과구동 방법은 도 2와 같은 원리로 데이터를 변조한다. In order to solve the slow response speed of the liquid crystal display device, U.S. Pat. Over driving control (ODC) has been proposed. The overdrive method modulates data on the same principle as in FIG. 2.
도 2를 참조하면, 과구동 방법은 입력 데이터 전압(VD)을 미리 설정된 변조 데이터의 전압(MVD)으로 변조하고 그 변조 데이터의 전압(MVD)을 액정셀에 인가하여 원하는 휘도(MBL)를 얻게 된다. 과구동 방법은 한 프레임기간 내에 원하는 휘도(MBL)를 얻을 수 있도록 데이터의 변화여부에 기초하여 수학식 1에서을 크게 하게 된다. 따라서, 과구동 방법으로 구동되는 액정표시장치는 액정의 늦은 응답속도를 데이터값의 변조로 보상하여 동영상에서 모션 블러를 줄일 수 있다. Referring to FIG. 2, the overdrive method modulates the input data voltage VD into a preset voltage MVD of modulated data and applies the modulated data voltage MVD to a liquid crystal cell to obtain a desired luminance MBL. do. The overdrive method is expressed by
이러한 과구동 방법은 이전 프레임과 현재 프레임 사이에서 데이터를 비교하고 그 데이터들 사이에 변화가 있으면, 미리 설정된 변조 데이터로 현재 프레임의 데이터를 변조한다. This overdrive method compares the data between the previous frame and the current frame and if there is a change between the data, modulates the data of the current frame with preset modulation data.
도 3은 과구동 회로를 개략적으로 나타낸 블록도이다. 3 is a block diagram schematically illustrating an overdrive circuit.
도 3을 참조하면, 과구동 회로는 데이터 입력버스(32)로부터의 데이터를 저장하기 위한 제1 및 제2 프레임 메모리(33a, 33b)와, 데이터를 변조하기 위한 룩업 테이블(34)을 구비한다.Referring to FIG. 3, the overdrive circuit includes first and
제1 및 제2 프레임 메모리(33a, 33b)는 픽셀 클럭에 맞추어 데이터를 프레임 단위로 교대로 저장하고 저장된 데이터를 교대로 출력하여 룩업 테이블(34)에 이전 프레임 데이터 즉, n-1 번째 프레임 데이터(Fn-1)를 공급한다. The first and
룩업 테이블(34)은 아래의 표 1과 같이 미리 설정된 변조 데이터(MRGB)를 n 번째 프레임 데이터(Fn)와 제1 및 제2 프레임 메모리(33a, 33b)로부터의 n-1 번째 프레임 데이터(Fn)를 어드레스로 하여 선택함으로써 데이터를 변조한다. 이 룩업 테이블(34)은 읽기 전용 메모리(Read Only Memory, ROM)와 메모리 제어회로를 포함한다. The lookup table 34 stores n-th frame data Fn from the n-th frame data Fn and the first and
표 1에 있어서, 최좌측열은 이전 프레임(Fn-1)의 데이터이며, 최상측행은 현재 프레임(Fn)의 데이터이다.In Table 1, the leftmost column is data of the previous frame Fn-1, and the uppermost row is data of the current frame Fn.
n 번째 프레임 기간 동안, 실선으로 나타낸 바와 같이 동일한 픽셀 클럭에 맞추어 n 번째 프레임 데이터(Fn)는 제1 프레임 메모리(33a)에 저장됨과 동시에 룩업 테이블(34)에 공급된다. 이와 동시에 n 번째 프레임 기간 동안 제2 프레임 메모리(33b)는 n-1 번째 프레임 데이터(Fn-1)를 룩업 테이블(34)에 공급한다. During the nth frame period, the nth frame data Fn is stored in the
n+1 번째 프레임 기간 동안, 점선으로 나타낸 바와 같이 동일한 픽셀 클럭에 맞추어 현재의 n+1 번째 프레임 데이터(Fn+1)는 제2 프레임 메모리(33b)에 저장됨과 동시에 룩업 테이블(34)에 공급된다. 이와 동시에 n+1 번째 프레임 기간 동안 제1 프레임 메모리(33a)는 n 번째 프레임 데이터(Fn)를 룩업 테이블(34)에 공급한다. During the n + 1 th frame period, the current n + 1 th frame data Fn + 1 is stored in the
이러한 과구동 회로의 비용을 줄이기 위해서는 메모리 용량을 줄여야 한다. 최근에는 메모리 용량을 줄이기 위하여 메모리에 저장되는 데이터를 압축하는 방법이 제안되고 있다. 이러한 압축 방법으로는 BTC(Block Truncation Coding)가 잘 알려져 있다. 기존 1/3 압축기반 BTC 알고리즘은 겹치지 않는 블록들의 데이터들에 대하여 2 레벨 양자화한다. 기존 BTC 알고리즘이 컬러 영상에 적용될 때, RGB 각 데이터마다 레벨을 나타내는 일정 크기의 비트맵(bitmap) 블록과 2개의 대표값이 필요하다. 일반적으로 각 대표값들은 평균과 분산으로 표현되어 압축되기 때문에, 1/3 압축률을 달성할 수 있고 나아가, 도 4와 같이 1/4 압축율로 데이터를 압축할 수도 있다. To reduce the cost of these overdrive circuits, the memory capacity must be reduced. Recently, in order to reduce memory capacity, a method of compressing data stored in a memory has been proposed. Block compression coding (BTC) is well known as such a compression method. The existing 1/3 compressor half BTC algorithm quantizes two levels of data of non-overlapping blocks. When the existing BTC algorithm is applied to a color image, a bitmap block having a predetermined size representing a level for each RGB data and two representative values are required. In general, since each representative value is expressed by the average and the variance, it is possible to achieve a 1/3 compression ratio and further compress data at a 1/4 compression ratio as shown in FIG. 4.
도 4는 4×4 비트맵 블록 단위로 입력 데이터들을 인코딩하는 BTC 인코딩의 예를 보여 준다. 4 shows an example of BTC encoding for encoding input data in units of 4x4 bitmap blocks.
도 4를 참조하면, BTC 인코딩 방법은 4×4 블록에 포함된 4×4×3×8=384 bits의 RGB 입력 데이터를 3×4×4=48 bits의 RGB 비트맵 데이터(Bitmapr, Bitmapg, Bitmapb)과 2×3×8 = 48 bits의 두 개 대표값들을 포함한 압축 데이터들로 인코딩한다. Referring to FIG. 4, the BTC encoding method uses 4 × 4 × 3 × 8 = 384 bits of RGB input data included in a 4 × 4 block to 3 × 4 × 4 = 48 bits of RGB bitmap data (Bitmapr, Bitmapg, Bitmapb) and 2 × 3 × 8 = 48 bits.
IEEE TRANSACTIONS ON COMMUNICATIONS, VOL. 41, NO. 9 SEPTEMBER 1993에 개시된 "A method of block truncation coding for color image compression by Takio Kurita and Nobuyuki Otsu"와 IEEE TRANSACTIONS ON COMMUNICATIONS VOL. COM-28, NO. 1 JANUARY 1980에 개시된 "An Algorithm for Vector Quantizer Design by Yoseph Linde, Andres Buzo and Robert M. Gray" 등에서 제안된 바 있는 벡터 양자화 BTC(VQ-BTC) 압축 알고리즘은 컬러 영상을 보다 효율적으로 압축하기 위하여 R, G, B 각각의 데이터들을 하나의 벡터로 표현하여, 도 5와 같이 1 장의 비트맵 블록과 2 개의 RGB 데이터를 인코딩함으로써 2 장의 비트맵 블록에 상응하는 압축 효과를 얻을 수 있다.IEEE TRANSACTIONS ON COMMUNICATIONS, VOL. 41, NO. 9 “A method of block truncation coding for color image compression by Takio Kurita and Nobuyuki Otsu” and IEEE TRANSACTIONS ON COMMUNICATIONS VOL. COM-28, NO. 1 The vector quantization BTC (VQ-BTC) compression algorithm proposed by JANUARY 1980, "An Algorithm for Vector Quantizer Design by Yoseph Linde, Andres Buzo and Robert M. Gray", has been developed in order to compress color images more efficiently. Compression effects corresponding to two bitmap blocks can be obtained by encoding one bitmap block and two RGB data as shown in FIG.
도 5는 8 개의 검은 점들로 표현된 원영상의 데이터 값들이 두 개의 흰점으로 표현된 벡터성분으로 양자화된 VQ-BTC 압축 알고리즘의 인코딩 방법을 도시화한 도면이다. FIG. 5 is a diagram illustrating an encoding method of a VQ-BTC compression algorithm in which data values of an original image represented by eight black points are quantized with vector components represented by two white points.
도 5를 참조하면, VQ-BTC 압축 알고리즘의 인코딩 방법은 4×4 블록에 포함된 4×4×3×8=384 bits의 RGB 입력 데이터를 흰점의 벡터성분으로 양자화된 4×4=16 bits의 비트맵 블록과 두 개의 대표값 2×3(for RGB)×8(for 1 BYTE) = 48 bits로 인코딩하므로 1/6의 압축율로 입력 데이터를 압축할 수 있다. Referring to FIG. 5, in the encoding method of the VQ-BTC compression algorithm, 4 × 4 = 16 bits quantized 4 × 4 × 3 × 8 = 384 bits of RGB input data included in a 4 × 4 block with a vector component of a white point. Since the bitmap block and two
그런데 VQ-BTC 압축 알고리즘에서 블록 사이즈를 2x4에서 2x8로 길이방향으로 증가시키거나, 블록 사이즈를 그대로 두고 RGB 벡터에 할당된 bits를 48 bits에서 24 bits로 줄이면 화질의 열화가 심하고 그 결과, 과구동 변조시에 데이터 에러가 크게 증가한다. 다시 말하여, 기존 VQ-BTC 알고리즘의 문제점은 압축률을 달성하기 위해 블록의 대표값에 할당된 bit 수를 줄이거나, 블록 크기를 길게 증가시켜 2개의 벡터로 넓은 영역을 표현하는 것을 시도하기 때문에, 화질의 열화가 발생한다. 대표값에 할당된 bit 수를 줄이면 영상의 깊이(depth)가 낮아져 색 표현력이 줄어들고, 이웃 블록 간 블로킹 아티펙트가 발생하는 원인이 된다. 또한, 2개의 벡터로 넓은 영역의 블록을 표현하게 되면, 영상의 디테일한 텍스쳐를 표현할 수 없게 되어 표시 영상에서 블러가 관찰되거나 모서리 정보가 손실되어 물체의 경계부분에서 열화가 발생한다. However, in the VQ-BTC compression algorithm, if the block size is increased in the longitudinal direction from 2x4 to 2x8, or if the block size is left as it is and the bits allocated to the RGB vector are reduced from 48 bits to 24 bits, the image quality is severely deteriorated. The data error greatly increases during modulation. In other words, the problem of the existing VQ-BTC algorithm is to reduce the number of bits allocated to the representative value of the block to achieve the compression rate, or to increase the block size to try to represent a wide area with two vectors. Image quality deteriorates. If the number of bits assigned to the representative value is reduced, the depth of the image is lowered, which reduces the color expression power, and causes blocking artifacts between neighboring blocks. In addition, when a block of a large area is represented by two vectors, the detailed texture of the image may not be expressed, and blur may be observed in the display image or the edge information may be lost, resulting in degradation at the boundary of the object.
따라서, 본 발명의 목적은 상기 종래 기술의 문제점들을 해결하고자 안출된 발명으로써 표시영상의 색 표현력 저하와 블러를 줄이고 모서리 정보의 데이터 손실을 방지할 수 있는 데이터 압축과 복원 방법 및 장치를 제공하는데 있다. Accordingly, an object of the present invention is to provide a method and apparatus for compressing and restoring data that can reduce the color rendering power and blur of a display image and prevent data loss of edge information. .
본 발명의 다른 목적은 상기 데이터 압축과 복원 방법 및 장치를 이용하여 메모리에 저장될 데이터를 압축 및 복원한 후에 액정셀들에 인가될 데이터전압을 액정표시장치의 과구동(ODC) 방식으로 변조하는 액정표시장치와 그 구동방법에 관한 것이다. Another object of the present invention is to modulate the data voltage to be applied to the liquid crystal cells by the overdrive (ODC) method of the liquid crystal display after compressing and restoring data to be stored in the memory by using the data compression and restoration method and apparatus. A liquid crystal display device and a driving method thereof.
상기 목적을 달성하기 위하여, 본 발명의 실시예에 따른 데이터 압축 방법은 입력 데이터에 대하여 VQ-BTC 알고리즘을 실행하여 비트맵과 제1 벡터 대표값들을 포함하는 제1 부호화 데이터를 발생하고 상기 제1 부호화 데이터를 식별하기 위한 플래그 비트를 상기 제1 부호화 데이터에 부가하는 제1 부호화 데이터를 부가하는 단계; 상기 비트맵, 상위 비트들로만 이루어진 제2 벡터 대표값들, 상기 제2 벡터 대표값들과 그 주변의 벡터값들 사이의 평균거리와 상기 벡터값들 각각의 보정 위치를 포함하는 제2 부호화 데이터를 발생하는 단계; 상기 평균거리와 상기 보정 위치를 이용하여 상기 제2 벡터 대표값들을 보정하는 단계; 상기 제2 부호화 데이터를 식별하기 위한 플래그 비트를 상기 제2 부호화 데이터에 부가하는 단계; 및 상기 벡터 대표들 간의 편차를 미리 정해진 임계값과 비교하여 그 비교 결과에 따라 상기 제1 및 제2 인코더의 출력을 선택하는 단계를 포함한다. In order to achieve the above object, a data compression method according to an embodiment of the present invention executes a VQ-BTC algorithm on input data to generate first encoded data including a bitmap and first vector representative values and to generate the first encoded data. Adding first coded data to add flag bits for identifying coded data to the first coded data; Second coded data including the bitmap, second vector representative values consisting of upper bits only, an average distance between the second vector representative values and vector values in the vicinity thereof, and a correction position of each of the vector values. Generating; Correcting the second vector representative values using the average distance and the correction position; Adding a flag bit for identifying the second encoded data to the second encoded data; And comparing the deviations between the vector representatives with a predetermined threshold and selecting outputs of the first and second encoders according to the comparison result.
상기 데이터 압축 방법은 입력 데이터의 블록을 그보다 작은 서브 블록으로 나누는 단계를 더 포함한다. The data compression method further includes dividing a block of input data into smaller subblocks.
상기 제2 벡터 대표값들을 보정하는 단계는 상기 서브 블록 각각에서 상기 제2 벡터 대표값과 그 주변에 다수 존재하는 상기 벡터값들을 HSI 영상 좌표계로 표현하고 상기 HSI 영상 좌표계의 I축을 따라 상기 벡터값들을 분할한 후에 RGB 영상 좌표계로 역변환하는 단계; 상기 역변환된 RGB 영상 좌표계에서 표현된 상기 벡터 위치들 각각을 코드워드로 맵핑하는 단계; 및 아래의 평균 에러식(MSE)에 따라 상기 코드워드를 선택하여 상기 제2 벡터 대표값을 보정하는 단계를 포함한다. The correcting of the second vector representative values may include expressing the second vector representative value and the plurality of vector values existing in the periphery of each of the sub-blocks in an HSI image coordinate system and along the I axis of the HSI image coordinate system. Inversely transforming the image into an RGB image coordinate system; Mapping each of the vector positions represented in the inverse transformed RGB image coordinate system into a codeword; And correcting the second vector representative value by selecting the codeword according to the following mean error equation (MSE).
여기서, (Rr, Gr, Br)는 n 번째 픽셀의 상기 제2 벡터 대표값, (Rn, Gn, Bn)는 n 번째 픽셀의 실제 픽셀값, (Rc, Gc, Bc)는 상기 보정 위치, 그리고 'm'은 서브 블록 각각에서 벡터값들의 개수를 각각 나타낸다. Where (Rr, Gr, Br) is the second vector representative value of the nth pixel, (Rn, Gn, Bn) is the actual pixel value of the nth pixel, (Rc, Gc, Bc) is the correction position, and 'm' represents the number of vector values in each subblock.
상기 제2 벡터 대표값들을 보정하는 단계는 상기 서브 블록 각각에서 상기 제2 벡터 대표값과 그 주변에 다수 존재하는 상기 벡터값들을 HSI 영상 좌표계로 표현하고 상기 HSI 영상 좌표계의 I축을 따라 상기 벡터값들을 분할한 후에 RGB 영상 좌표계로 역변환하는 단계; 상기 역변환된 RGB 영상 좌표계에서 표현된 상기 벡터 위치들 각각을 코드워드로 맵핑하는 단계; 및 아래의 Rcode, Gcode, 및 Bcode, 각각을 산출하고 그에 기초하여 상기 코드워드를 선택하여 상기 제2 벡터 대표값을 보정하는 단계를 포함한다. The correcting of the second vector representative values may include expressing the second vector representative value and the plurality of vector values existing in the periphery of each of the sub-blocks in an HSI image coordinate system and along the I axis of the HSI image coordinate system. Inversely transforming the image into an RGB image coordinate system; Mapping each of the vector positions represented in the inverse transformed RGB image coordinate system into a codeword; And calculating each of the following R code , G code , and B code , and selecting the codeword based thereon to correct the second vector representative value.
여기서, R1, R2, R3 및 R4는 R 데이터에서 상기 서브 블록의 비트값, G1, G2, G3 및 G4는 G 데이터에서 상기 서브 블록의 비트값, B1, B2, B3 및 B4는 B 데이터에서 상기 서브 블록의 비트값, m은 상기 서브 블록 각각에서 상기 벡터값들의 개수를 나타내고, RH는 R에서 상기 제2 벡터 대표값의 상위 대표값, RL은 상기 제2 벡터 대표값의 하위 대표값이다. Here, R 1 , R 2 , R 3 and R 4 are bit values of the sub block in R data, G 1 , G 2 , G 3 and G 4 are bit values of the sub block in G data, B 1 , B 2 , B 3 and B 4 are bit values of the sub block in B data, m is the number of the vector values in each of the sub blocks, R H is the upper representative value of the second vector representative value in R, R L is a lower representative value of the second vector representative value.
본 발명의 실시예에 따른 데이터 복원 방법은 비트맵, 상위 비트들로만 이루어진 벡터 대표값들, 벡터 대표값들과 그 주변의 벡터값들 사이의 평균거리와 상기 벡터값들 각각의 보정 위치를 포함하는 부호화 데이터를 입력 받는 단계; 및 아래의 수식을 이용하여 상기 부호화 데이터를 복호하는 단계를 포함하는 것을 특징으로 하는 데이터 복원 방법. A data reconstruction method according to an embodiment of the present invention includes a bitmap, vector representative values consisting of upper bits only, an average distance between vector representative values and surrounding vector values, and a correction position of each of the vector values. Receiving encoded data; And decoding the encoded data by using the following equation.
여기서, (Rd, Gd, Bd)는 복호화된 픽셀값, (Rr, Gr, Br)는 상기 벡터 대표값, 및 'L'은 상기 평균거리, (Rc, Gc, Bc)는 상기 보정 위치를 각각 나타낸다. Where (Rd, Gd, Bd) is the decoded pixel value, (Rr, Gr, Br) is the vector representative value, 'L' is the average distance, and (Rc, Gc, Bc) is the correction position, respectively. Indicates.
본 발명의 실시예에 따른 데이터 압축 장치는 입력 데이터에 대하여 VQ-BTC 알고리즘을 실행하여 비트맵과 제1 벡터 대표값들을 포함하는 제1 부호화 데이터를 발생하고 상기 제1 부호화 데이터를 식별하기 위한 플래그 비트를 상기 제1 부호화 데이터에 부가하는 제1 부호화 데이터를 부가하는 제1 인코더; 상기 비트맵, 상위 비트들로만 이루어진 제2 벡터 대표값들, 상기 제2 벡터 대표값들과 그 주변의 벡터값들 사이의 평균거리와 상기 벡터값들 각각의 보정 위치를 포함하는 제2 부호화 데이터를 발생하고, 상기 평균거리와 상기 보정 위치를 이용하여 상기 제2 벡터 대표값들을 보정하며, 상기 제2 부호화 데이터를 식별하기 위한 플래그 비트를 상기 제2 부호화 데이터에 부가하는 제2 인코더; 및 상기 벡터 대표들 간의 편차를 미리 정해진 임계값과 비교하여 그 비교 결과에 따라 상기 제1 및 제2 인코더의 출력을 선택하는 선택기를 구비한다. A data compression apparatus according to an embodiment of the present invention executes a VQ-BTC algorithm on input data to generate first encoded data including a bitmap and a first vector representative value and a flag for identifying the first encoded data. A first encoder for adding first encoded data for adding bits to the first encoded data; Second coded data including the bitmap, second vector representative values consisting of upper bits only, an average distance between the second vector representative values and vector values in the vicinity thereof, and a correction position of each of the vector values. A second encoder which generates the second vector representative values by using the average distance and the correction position, and adds a flag bit to the second encoded data to identify the second encoded data; And a selector for comparing the deviation between the vector representatives with a predetermined threshold and selecting the outputs of the first and second encoders according to the comparison result.
본 발명의 실시예에 따른 데이터 복원 장치는 비트맵, 상위 비트들로만 이루어진 벡터 대표값들, 벡터 대표값들과 그 주변의 벡터값들 사이의 평균거리와 상기 벡터값들 각각의 보정 위치를 포함하는 부호화 데이터를 복호하는 디코더를 구비한다. An apparatus for restoring data according to an exemplary embodiment of the present invention includes a bitmap, vector representative values consisting of upper bits only, an average distance between vector representative values and vector values around them, and a correction position of each of the vector values. A decoder for decoding coded data is provided.
본 발명의 실시예에 따른 액정표시장치는 입력 데이터에 대하여 VQ-BTC 알고리즘을 실행하여 비트맵과 제1 벡터 대표값들을 포함하는 제1 부호화 데이터를 발생하고 상기 제1 부호화 데이터를 식별하기 위한 플래그 비트를 상기 제1 부호화 데이터에 부가하는 제1 부호화 데이터를 부가하는 제1 인코더; 상기 비트맵, 상위 비트들로만 이루어진 제2 벡터 대표값들, 상기 제2 벡터 대표값들과 그 주변의 벡터값들 사이의 평균거리와 상기 벡터값들 각각의 보정 위치를 포함하는 제2 부호화 데이터를 발생하고, 상기 평균거리와 상기 보정 위치를 이용하여 상기 제2 벡터 대표값들을 보정하고, 상기 제2 부호화 데이터를 식별하기 위한 플래그 비트를 상기 제2 부호화 데이터에 부가하는 제2 인코더; 상기 벡터 대표들 간의 편차를 미리 정 해진 임계값과 비교하여 그 비교 결과에 따라 상기 제1 및 제2 인코더의 출력을 선택하는 선택기; 및 선택된 상기 부호화 데이터를 복호하여 이전 프레임 데이터를 발생하고 상기 이전 프레임 데이터와 현재 프레임 데이터를 어드레스로 하여 룩업 테이블에 등재된 변조값을 선택하여 상기 입력 데이터를 변조하여 변조된 데이터를 액정표시패널에 표시하는 액정표시패널의 구동회로를 구비한다. A liquid crystal display according to an embodiment of the present invention executes a VQ-BTC algorithm on input data to generate first encoded data including a bitmap and a first vector representative value, and a flag for identifying the first encoded data. A first encoder for adding first encoded data for adding bits to the first encoded data; Second coded data including the bitmap, second vector representative values consisting of upper bits only, an average distance between the second vector representative values and vector values in the vicinity thereof, and a correction position of each of the vector values. A second encoder that generates the second vector representative values by using the average distance and the correction position, and adds a flag bit for identifying the second encoded data to the second encoded data; A selector for comparing the deviation between the vector representatives with a predetermined threshold and selecting outputs of the first and second encoders according to the comparison result; And decoding the selected encoded data to generate previous frame data, selecting a modulation value listed in a lookup table using the previous frame data and the current frame data as addresses, and modulating the input data to display the modulated data on the LCD panel. A driving circuit of a liquid crystal display panel to display is provided.
본 발명의 실시예에 따른 액정표시장치의 구동방법은 입력 데이터에 대하여 VQ-BTC 알고리즘을 실행하여 비트맵과 제1 벡터 대표값들을 포함하는 제1 부호화 데이터를 발생하고 상기 제1 부호화 데이터를 식별하기 위한 플래그 비트를 상기 제1 부호화 데이터에 부가하는 제1 부호화 데이터를 부가하는 단계; 상기 비트맵, 상위 비트들로만 이루어진 제2 벡터 대표값들, 상기 제2 벡터 대표값들과 그 주변의 벡터값들 사이의 평균거리와 상기 벡터값들 각각의 보정 위치를 포함하는 제2 부호화 데이터를 발생하는 단계; 상기 평균거리와 상기 보정 위치를 이용하여 상기 제2 벡터 대표값들을 보정하는 단계; 상기 제2 부호화 데이터를 식별하기 위한 플래그 비트를 상기 제2 부호화 데이터에 부가하는 단계; 상기 벡터 대표들 간의 편차를 미리 정해진 임계값과 비교하여 그 비교 결과에 따라 상기 제1 및 제2 인코더의 출력을 선택하는 단계; 및 선택된 상기 부호화 데이터를 복호하여 이전 프레임 데이터를 발생하고 상기 이전 프레임 데이터와 현재 프레임 데이터를 어드레스로 하여 룩업 테이블에 등재된 변조값을 선택하여 상기 입력 데이터를 변조하여 변조된 데이터를 액정표시패널에 표시한다. A method of driving a liquid crystal display according to an embodiment of the present invention executes a VQ-BTC algorithm on input data to generate first encoded data including a bitmap and a first vector representative value and to identify the first encoded data. Adding first encoded data that adds a flag bit to the first encoded data; Second coded data including the bitmap, second vector representative values consisting of upper bits only, an average distance between the second vector representative values and vector values in the vicinity thereof, and a correction position of each of the vector values. Generating; Correcting the second vector representative values using the average distance and the correction position; Adding a flag bit for identifying the second encoded data to the second encoded data; Comparing the deviations between the vector representatives with a predetermined threshold and selecting outputs of the first and second encoders according to the comparison result; And decoding the selected encoded data to generate previous frame data, selecting a modulation value listed in a lookup table using the previous frame data and the current frame data as addresses, and modulating the input data to display the modulated data on the LCD panel. Display.
본 발명의 실시예에 따른 데이터 압축과 복원 방법 및 장치는 VQ-BTC 알고리즘을 실행하여 비트맵, 상위 비트들로만 이루어진 벡터 대표값들, 벡터 대표값들과 그 주변의 벡터값들 사이의 평균거리와 상기 벡터값들 각각의 보정 위치를 산출하고 상기 평균거리와 상기 보정 위치에 근거하여 상기 벡터 대표값들을 보정하여 표시영상의 색 표현력 저하와 블러를 줄이고 모서리 정보의 데이터 손실을 방지할 수 있다. The method and apparatus for compressing and decompressing data according to an embodiment of the present invention executes the VQ-BTC algorithm to perform a bitmap, vector representative values consisting of only upper bits, average distance between vector representative values and vector values in the vicinity thereof. A correction position of each of the vector values may be calculated and the vector representative values may be corrected based on the average distance and the correction position to reduce color deterioration and blur of a display image and to prevent data loss of edge information.
나아가, 본 발명의 실시예에 따른 액정표시장치와 그 구동방법은 상기 데이터 압축과 복원 방법 및 장치를 이용하여 메모리에 저장될 데이터를 압축 및 복원한 후에 액정셀들에 인가될 데이터전압을 액정표시장치의 과구동 방식으로 변조하여 액정의 응답특성을 개선함은 물론 데이터 압축과정에서 초래되는 색 표현력 저하와 블러 및 모서리 정보의 데이터 손실을 방지하여 표시품질을 높일 수 있다. In addition, the liquid crystal display device and the driving method thereof according to an embodiment of the present invention, the data voltage to be applied to the liquid crystal cells after compressing and restoring data to be stored in the memory by using the data compression and decompression method and apparatus. By overmodulating the device, the response characteristics of the liquid crystal can be improved, and the display quality can be improved by preventing color degradation and blur and edge data loss caused by data compression.
상기 목적 외에 본 발명의 다른 목적 및 이점들은 첨부한 도면들을 참조한 본 발명의 바람직한 실시예에 대한 설명을 통하여 명백하게 드러나게 될 것이다.Other objects and advantages of the present invention in addition to the above object will become apparent from the description of the preferred embodiment of the present invention with reference to the accompanying drawings.
이하, 도 6 내지 도 25를 참조하여 본 발명의 바람직한 실시예에 대하여 설명하기로 한다. Hereinafter, exemplary embodiments of the present invention will be described with reference to FIGS. 6 to 25.
도 6을 참조하면, 본 발명의 실시예에 따른 액정표시장치는 액정표시패널(100), 과구동 처리회로(10), 타이밍 콘트롤러(11), 데이터 구동회로(12) 및 게 이트 구동회로(13)를 구비한다. Referring to FIG. 6, a liquid crystal display according to an exemplary embodiment of the present invention includes a liquid
액정표시패널(100)은 두 장의 유리기판 사이에 액정층이 형성된다. 이 액정표시패널(100)의 액정셀들은 데이터라인들(D1 내지 Dm)과 게이트라인들(16)의 교차 구조에 의해 매트릭스 형태로 배치된다. In the liquid
액정표시패널(100)의 하부 유리기판에는 데이터라인들(D1 내지 Dm), 게이트라인들(G1 내지 Gn), 박막트랜지스터(Thin Film Transistor, TFT), TFT에 접속되어 화소전극들(1)과 공통전극(2) 사이의 전계에 의해 구동되는 액정셀들(Clc), 및 스토리지 커패시터(Cst) 등이 형성된다. The lower glass substrate of the liquid
액정표시패널(100)의 상부 유리기판 상에는 블랙매트릭스, 컬러필터 및 공통전극(2)이 형성된다. The black matrix, the color filter, and the
공통전극(2)은 TN(Twisted Nematic) 모드와 VA(Vertical Alignment) 모드와 같은 수직전계 구동방식에서 상부 유리기판 상에 형성되며, IPS(In Plane Switching) 모드와 FFS(Fringe Field Switching) 모드와 같은 수평전계 구동방식에서 화소전극(1)과 함께 하부 유리기판 상에 형성된다. 액정표시패널(100)의 상부 유리기판과 하부 유리기판 상에는 광축이 직교하는 편광판이 부착되고 액정과 접하는 계면에 액정의 프리틸트각(pre-tilt angle)을 설정하기 위한 배향막이 형성된다. The
과구동 처리회로(10)는 후술하는 압축 및 복원 알고리즘을 이용하여 이전 프레임 데이터[Fn-1(RGB)]를 압축 및 복원하고 아래의 수학식 3 내지 5를 만족하는 변조 데이터들이 등재된 룩업 테이블을 이용하여 현재 프레임 데이터[Fn(RGB)]와 이전 프레임 데이터[Fn-1(RGB)]를 비교하여 그 비교 결과 수학식 3 내지 5를 만족하도록 현재 프레임 데이터[Fn(RGB)]를 Fn(MRGB)로 변조한다. The
수학식 3 내지 수학식 5에서 알 수 있는 바, 과구동 처리회로(10)의 룩업 테이블은 이전 프레임 데이터[Fn-1(RGB)]보다 현재 프레임 데이터[Fn(RGB)]가 더 크면 현재 프레임 데이터[Fn(RGB)]보다 더 큰 값(MRGB)으로 현재 프레임 데이터[Fn(RGB)]를 변조하는 반면에, 이전 프레임 데이터[Fn-1(RGB)]보다 현재 프레임 데이터[Fn(RGB)]가 더 작으면 현재 프레임[Fn(RGB)]보다 더 작은 값(MRGB)으로 현재 프레임 데이터[Fn-1(RGB)]를 변조한다. 그리고 과구동 처리회로(10)의 룩업 테이블은 동일한 픽셀에서 그 픽셀 데이터 값이 이전 프레임과 현재 프레임에서 동일하면 현재 프레임 데이터[Fn(RGB)]와 동일한 값(MRGB)을 출력한다. As can be seen from equations (3) to (5), the lookup table of the
타이밍 콘트롤러(11)는 수직 및 수평 동기신호, 데이터 인에이블신호(DE), 도트클럭(CLK) 등의 타이밍신호들을 이용하여 데이터 구동회로(12)의 동작 타이밍을 제어하기 위한 데이터 타이밍 제어신호와, 게이트 구동회로(13)의 동작 타이밍을 제어하기 위한 게이트 타이밍 제어신호를 발생한다. 또한, 타이밍 콘트롤 러(11)는 과구동 변조된 디지털 비디오 데이터(MRGB)를 데이터 구동회로(12)에 전송한다. The
데이터 구동회로(12)는 타이밍 콘트롤러(11)로부터의 과구동 변조된 디지털 비디오 데이터들(MRGB)을 데이터 타이밍 제어신호에 응답하여 정극성/부극성 감마보상전압으로 변환하여 아날로그 정극성/부극성 데이터전압을 발생하고 그 데이터전압을 데이터라인들(D1 내지 Dm)에 공급한다. The
게이트 구동회로(13)는 게이트 타이밍 제어신호에 응답하여 게이트펄스를 순차적으로 쉬프트하여 게이트라인들(G1 내지 Gn)에 게이트펄스 즉, 스캔펄스를 공급한다.The
도 7은 과구동 처리회로(10)를 상세히 나타내는 블록도이다. 도 8은 도 7의 인코더(20)의 제어과정을 상세히 보여 주는 도면이다. 7 is a block diagram showing the
도 7 및 도 8을 참조하면, 과구동 처리회로(10)는 인코더(20), 디코더(24) 및 룩업 테이블(25)을 구비한다. 7 and 8, the
인코더(20)는 제1 및 제2 인코더(21, 22)를 포함한다. The
제1 인코더(21)는 2×8 또는 4×4 블록 기준으로 VQ-BTC 알고리즘을 실행하여 디지털 비디오 데이터(RGB)를 인코딩하여 도 9와 같이 인코딩된 데이터 패킷을 출력한다. The
제2 인코더(22)는 본 발명의 실시예에서 제안되는 VQ-BTC(Proposed VQ-BTC 이하, "P_VQ-BTC"라 함) 압축 알고리즘으로 디지털 비디오 데이터(RGB)를 인코딩한다. The
P_VQ-BTC에서 대표값은 RGB 각각에서 상위 벡터 대표값에 최상위 비트(MSB) i(i는 4 또는 5) bits씩, 하위 벡터에 최상위 비트(MSB) j(j는 5 또는 4) bits씩 할당된다. 상위 벡터 대표값에 최상위 비트(MSB) 4 bits가 할당된다면 하위 벡터에 최상위 비트(MSB) 5 bits가 할당되고, 상위 벡터 대표값에 최상위 비트(MSB) 5 bits가 할당된다면 하위 벡터에 최상위 비트(MSB) 4 bits가 할당된다. 상위 벡터 대표값에 최상위 비트(MSB) 4 bits가 할당되고 하위 벡터에 최상위 비트(MSB) 5 bits가 할당된다면 기존 VQ-BTC 알고리즘에 비해 상위 벡터에서 3비트씩 3개, 하위 벡터에서 4비트씩 3개가 절약되어 기존 VQ-BTC 압축 알고리즘에 비하여 인코드된 데이터 패킷에서 총 21비트의 여유분이 발생한다. 이러한 여유분은 평균 거리와 위치정보에 할당된다. In P_VQ-BTC, the representative value is assigned to the upper vector representative value in each of RGB by the most significant bit (MSB) i (i is 4 or 5) bits, and the lower vector is assigned the most significant bit (MSB) j (j is 5 or 4) bits. do. If the most significant bits (MSB) 4 bits are allocated to the upper vector representative value, the most significant bits (MSB) 5 bits are allocated to the lower vector, and if the most significant bits (MSB) 5 bits are allocated to the upper vector representative value, the most significant bits ( MSB) 4 bits are allocated. If the most significant bits (MSB) 4 bits are allocated to the upper vector representative value and the most significant bits (MSB) 5 bits are allocated to the lower vector, 3 bits each of the upper vector and 4 bits of the lower vector are compared with the conventional VQ-BTC algorithm. Three savings result in a total of 21 bits in the encoded data packet compared to the existing VQ-BTC compression algorithm. This margin is allocated to the average distance and location information.
P_VQ-BTC 알고리즘은 2×8 블록을 기준으로 VQ-BTC 알고리즘을 실행하여 인코드된 데이터에서 16개의 벡터값들과, 그 평균값으로 구해진 벡터 대표값 간의 평균 거리를 산출한다.(S1) 평균 거리는 수학식 6과 같이 서브 블록 내의 모든 픽셀 벡터 [Rn Gn Bn]T와 대표 벡터 [RK GK BK]T의 유클리디안 거리(Euclidean Distance : ) 또는 맨하탄 거리(Manhattan Distance : )로 계산될 수 있다. 여기서, 평균 거리는 비트맵을 사용하여 서브 블록 안의 픽셀 벡터가 하위 그룹으로 구분된다면 하위 대표 벡터[R0 G0 B0]T와의 차로 계산되고 서브 블록 안의 픽셀 벡터가 상위 그룹으로 구분된다면 상위 대표 벡터[R1 G1 B1]T와의 차로 계산된다. The P_VQ-BTC algorithm executes the VQ-BTC algorithm based on a 2x8 block to determine the average distance between 16 vector values in the encoded data and the vector representative value obtained as the average value. (S1) The average distance is the Euclidean distance of all the pixel vectors [R n G n B n ] T and the representative vector [R K G K B K ] T in the subblock, as shown in Equation 6. ) Or Manhattan Distance ( Can be calculated as Here, the average distance is calculated by the difference from the lower representative vector [R 0 G 0 B 0 ] T if the pixel vectors in the subblock are divided into subgroups using the bitmap, and the upper representative vector if the pixel vectors in the subblock are divided into higher groups. Calculated as the difference with [R 1 G 1 B 1 ] T.
여기서, m은 상기 서브 블록 각각에서 상기 벡터값들의 개수를 나타낸다. Here, m represents the number of the vector values in each of the subblocks.
16 개의 벡터들 중에서 그룹1에 속한 벡터는 상위 벡터와의 거리를 구하는 기준이 되고 그룹2에 속한 벡터는 하위 벡터와의 거리를 구하는 기준이 된다. P_VQ-BTC에서 평균 거리는 4비트가 할당되고, 0x0004-0x003c 즉, 4에서 60까지 값 중에 하나로 저장된다. 그리고 P_VQ-BTC는 입력 데이터들의 블록을 2×2 서브 블록으로 나누고(S2), 각 서브-블록 단위로 구해진 평균 거리와 15개의 보정될 가능성이 있는 위치정보를 이용하여 벡터 대표값을 보정(refine)하여 인코딩한다.(S3) 보정될 가능성이 있는 위치를 찾는 방법에 대한 상세한 설명은 후술된다. 그리고 P_VQ-BTC는 보정 위치를 각 서브-블록 당 4비트 코드워드의 형태로 부호화하여 총 4비트씩 4개 16비트를 인코딩된 데이터 스트림에 할당한다. 따라서, P_VQ-BTC에서 인코딩된 데이터 스트림에는 평균 거리로 할당된 4비트와 보정 위치로 할당된 16 비트를 포함한다. Among the 16 vectors, the vector belonging to
P_VQ-BTC는 제1 인코더(21)에 의해 VQ-BTC 압축 알고리즘으로 인코드된 데이터에서 벡터 대표값들의 편차가 2 이상의 임계값보다 작다면, S1 내지 S3 단계를 거치지 않고 제1 인코더(21)의 VQ-BTC 압축 알고리즘으로 인코드된 데이터를 그대로 출력한다.(S0) 인코더(20)는 벡터 대표값들의 편차와 임계값을 비교하여 제1 및 제2 인코더(21, 22)의 출력을 선택하는 선택기를 포함한다. 여기서, 임계값은 양의 정수로써 후술하는 실험에서 8로 정해졌다. If the deviation of the vector representative values in the data encoded by the
인코더(20)는 S0 단계에 의해 선택된 VQ-BTC 또는 P_VQ-BTC 압축 알고리즘을 지시하기 위한 1 bit를 할당한다. 이 1 bit를 할당하기 위하여 R, G 및 B 데이터 중 어느 하나의 하위 벡터 중 마지막 bit를 압축 알고리즘을 지시하는 플래그비트(flag)로 사용할 수 있다. 후술하는 실험에서는 플래그 1 bit를 R 데이터의 마지막 1 bit를 삭제하여 남은 bit로 활용하였다. The
전술한 P_VQ-BTC 알고리즘은 블로킹 아티펙트를 방지하기 위해 영상을 2×8 블록으로 나누어 압축을 하되, 그 블록을 다시 4개의 2×2 서브-블록 단위로 나누어 경계값을 더 세밀하게 표현할 수 있다. VQ-BTC 알고리즘은 2×8 블록을 압축하기 위하여 16 bits의 비트 비트맵과 6 개의 8 비트 대표값을 코딩한다. 이와 달리, P_VQ-BTC 알고리즘은 2×8 블록을 압축하기 위해 16 bits의 비트맵과 3개의 5 bits 벡터 대표값과 3개의 4 bits 벡터 대표값 그리고 4 bits의 거리 정보, 16 bits의 서브 블록 단위의 위치 정보 그리고 1 bit의 플래그를 코딩한다. 전술한 P_VQ-BTC의 부호화 과정을 정리하면 다음과 같다. The above-described P_VQ-BTC algorithm compresses an image by dividing it into 2 × 8 blocks to prevent blocking artifacts, and further divides the block into four 2 × 2 sub-block units to express the boundary value more precisely. The VQ-BTC algorithm codes a 16-bit bitmap and six 8-bit representative values to compress a 2x8 block. In contrast, the P_VQ-BTC algorithm uses a 16-bit bitmap, three 5-bit vector representations, three 4-bit vector representations, four bits of distance information, and a 16-bit subblock unit to compress a 2x8 block. Code position information and 1 bit flag. The encoding process of the above-described P_VQ-BTC is summarized as follows.
(1) 2×8 블록을 기준으로 기존 BTC 알고리즘을 실행한다. 이 때, 대표값은 상위 벡터에 MSB로 5비트씩, 하위 벡터에 MSB로 4비트씩 할당되어 저장된다.(1) The existing BTC algorithm is executed based on 2 × 8 blocks. At this time, the representative value is allocated by storing 5 bits as MSB in the upper vector and 4 bits as MSB in the lower vector.
(2) 16개의 벡터값들과 벡터 대표값 간의 평균 거리를 계산한다. (2) The average distance between the 16 vector values and the vector representative value is calculated.
(3) 2×8 블록을 2×2 서브 블록들로 분할한다. (3) A 2x8 block is divided into 2x2 subblocks.
(4) 각 서브-블록 단위로 (2) 항에서 계산한 평균 거리와 보정 위치에 기초하여 전술한 보정 위치 결정방법들로 벡터 대표값을 보정한다. (4) The vector representative value is corrected by the above-described correction position determination methods based on the average distance and correction position calculated in (2) in each sub-block unit.
(5) 보정 위치를 각 서브-블록당 4비트 코드워드의 형태로 부호화한다. (5) The correction position is encoded in the form of a 4-bit codeword for each sub-block.
(6) 만약 평균 거리가 임계값보다 작다면, (3)~(5)의 과정을 거치지 않고 기존 VQ-BTC 알고리즘으로 2×8 블록 단위로 데이터를 압축한다. (6) If the average distance is smaller than the threshold value, the data is compressed in units of 2 × 8 blocks using the existing VQ-BTC algorithm without going through steps (3) to (5).
디코더(24)는 인코더(20)에 의해 압축된 데이터를 복호화하여 룩업 테이블(25)에 공급한다. 이 디코더(24)는 플래그 비트를 읽어 입력 부호화 데이터의 인코드 방식이 VQ-BTC 인지 아니면 P_VQ-BTC인지를 판단하여 적절한 복호화 방식을 선택한다. The
룩업 테이블(25)은 수학식 3 내지 5를 만족하는 과구동 변조값들이 등재된다. The lookup table 25 lists overdrive modulation
도 9는 제1 인코더(21)에 의해 보호화된 데이터 패킷이다. 9 is a data packet protected by the
도 9를 참조하면, 제1 인코더(21)에 의해 인코드된 1 데이터 패킷은 1 bit의 플래그 bit, 16 bits의 2×8 혹은 4×4 비트맵, (2×8)-1 = 15 bits로 할당된 R 데이터의 두 개 벡터 대표값, 2×8 = 16 bits로 할당된 G 데이터의 두 개 벡터 대표값, 및 2×8 = 16 bits로 할당된 B 데이터의 두 개 벡터 대표값을 포함한다. 따라서, 제1 인코더(21)에 의해 부호화된 1 데이터 패킷은 64 bits를 포함한다. Referring to FIG. 9, one data packet encoded by the
도 10은 제2 인코더(22)에 의해 부호화된 데이터 패킷이다. 10 is a data packet encoded by the
도 10을 참조하면, 제2 인코더(22)에 의해 부호화된 1 데이터 패킷은 1 bit의 플래그 bit, 16 bits의 2×8 혹은 4×4 비트맵, 4(상위 벡터 MSB) +5(하위 벡터 MSB) = 9 bits로 할당된 R 데이터의 두 개 벡터 대표값, 4+5 = 9 bits로 할당된 G 데이터의 두 개 벡터 대표값, 4+5 = 9 bits로 할당된 B 데이터의 두 개 벡터 대표값, 4 bits의 평균거리 정보, 및 4(RGB 2×2 서브필록)×4(보정위치 코드워드)=16bit의 보정 위치 정보를 포함한다. 따라서, 제2 인코더(22)에 의해 부호화된 1 데이터 패킷은 64 bits를 포함한다. Referring to FIG. 10, one data packet encoded by the
도 11은 도 5와 같은 기존 VQ-BTC 압축 알고리즘에 의해 생성되는 1 데이터 패킷이다. FIG. 11 is one data packet generated by the existing VQ-BTC compression algorithm as shown in FIG. 5.
도 11을 참조하면, 기존 VQ-BTC 압축 알고리즘에 의해 생성되는 1 데이터 패킷은 16 bits의 비트맵과, RGB 각각에 할당된 16 bits의 대표값들을 포함한다. 따라서, 기존 VQ-BTC 압축 알고리즘에 의해 생성되는 1 데이터 패킷은 총 64 bits를 포함하고 플래그, 평균거리 정보 및 보정 위치정보가 포함되지 않는다. Referring to FIG. 11, one data packet generated by the existing VQ-BTC compression algorithm includes a bitmap of 16 bits and representative values of 16 bits allocated to each of RGB. Therefore, one data packet generated by the existing VQ-BTC compression algorithm includes 64 bits in total and does not include flags, average distance information, and corrected position information.
벡터 대표값의 부호화시에 제2 인코더(22)는 RGB 각각에서 8 bits를 사용하지 않고 상위 4 bits 또는 상위 5 bits만 사용한다. 따라서, 디코더(24)는 오리지널 벡터 대표값이 도 12와 같을 때 벡터 대표값의 복호화시에 도 12b와 같이 하위 3 bits 또는 4 bits에 "0"을 부가하거나 도 12c와 같이 "0111" 또는 "011"를 하위 3 bits 또는 4 bits에 "0"을 부가한다. 이러한 벡터 대표값의 복호화 방법 중에서 하위 비트의 절삭으로 인한 화질 열화를 최소화하기 위하여 도 12c와 같이 중간값을 하위 bits 부가하는 방법이 바람직하다. In encoding the vector representative value, the
도 8에서 제2 인코더(22)의 S3 단계에서 처리되는 보정위치 결정방법에 대하여 상세히 설명하면 다음과 같다. In FIG. 8, the correction position determining method processed in step S3 of the
보정위치 결정방법의 제1 실시예First embodiment of the correction position determination method
서브 블록을 적절히 보정하기 위해서는 보정 위치를 결정하여야 한다. 수학식 7은 벡터 대표값과 실제 픽셀 값의 관계를 나타낸다. In order to properly correct the sub-blocks, the correction position must be determined.
여기서, (Rr, Gr, Br)는 n 번째 픽셀의 벡터 대표값이고, (Rn, Gn, Bn)는 n 번째 픽셀의 실제 픽셀값이다. 그리고 (, ,)는 n 번째 픽셀에서 실제 픽셀값과 벡터 대표값 간의 오차값이다. Here, (Rr, Gr, Br) is the vector representative value of the nth pixel, and (Rn, Gn, Bn) is the actual pixel value of the nth pixel. And ( , , ) Is an error value between the actual pixel value and the vector representative value at the n th pixel.
'L'을 벡터 대표값과 16 개의 벡터값들 사이의 평균거리, (Rc, Gc, Bc)를 보정 위치라고 했을 때, 수학식 7의 오차(, ,)는 수학식 8과 같이 모델링될 수 있다.When 'L' is the average distance between the vector representative value and the 16 vector values, and (Rc, Gc, Bc) is the correction position, , , ) May be modeled as in
벡터 대표값 주변의 모든 픽셀값이 보정 가능한 위치이지만, 본 발명의 실시예에 따른 데이터 압축과 복원 방법은 보다 효과적인 보정 위치를 결정하기 위하여 HSI(Hue, Saturation, Intensity) 영상 좌표계에서 보정위치를 결정한다. HSI 영상 좌표계는 사람의 인지 능력(Human Vision System: HVS)에 주안점을 두고 색상을 표현할 수 있는 좌표계로서 최근의 영상 처리에서 가장 주목 받고 있는 영상 좌표계이다. RGB 영상 좌표계에서 HSI 영상 좌표계의 변환 방법은 도 13과 같다. Although all pixel values around the vector representative value can be corrected, the data compression and decompression method according to an embodiment of the present invention determines the corrected position in the HSI (Hue, Saturation, Intensity) image coordinate system to determine a more effective correction position. do. The HSI image coordinate system is a coordinate system that can express colors focusing on human vision system (HVS), and is an image coordinate system that is attracting the most attention in recent image processing. The conversion method of the HSI image coordinate system in the RGB image coordinate system is shown in FIG. 13.
도 13의 (a)와 같은 RGB 영상 좌표계를 참조하면, 밝기(0, 0, 0)에서 (255, 255, 255)를 잇는 가상의 선(HSI 영상 좌표계의 I축임)을 B축과 일치하게 이동시키면 도 13의 (b)와 같다. 도 13의 (b)는 도 13의 (c)와 같이 유사 HSI 영상 좌표계로 변환될 수 있다. 이 HSI 영상 좌표계에서 벡터 대표값과 그 주변의 16 개 벡터값들을 표현할 수 있다. RGB 영상 좌표계와 HSI 영상 좌표계의 변환에 대하여는 CH2898-5/90/0000/0791$01.00 ⓒ 1990 IEE에 개시된 "Fundamentals of True-Color Image Processing by R.S. Ledley, M. Buas, and T. J. Golab"과, CH2998-3/91/10000-0722$01.00ⓒ1991 IEE에 개시된 "IMAGE PROCESSING USING THE HSI COLOR SPACE by Eric Welch, Robert Moorhead, and J. K. Owens" 등에서 상세히 설명되어 있으므로 이에 대한 상세한 설명을 생략하기로 한다. Referring to the RGB image coordinate system as shown in FIG. 13A, an imaginary line (I axis of the HSI image coordinate system) connecting brightness (0, 0, 0) to (255, 255, 255) is aligned with the B axis. If moved, it is as shown in Fig. 13 (b). FIG. 13B may be converted to a similar HSI image coordinate system as shown in FIG. 13C. In this HSI image coordinate system, a vector representative value and 16 vector values around it can be expressed. For conversion of RGB image coordinate system and HSI image coordinate system, see CH2898-5 / 90/0000/0791 $ 01.00 © 1990 IEE “Fundamentals of True-Color Image Processing by RS Ledley, M. Buas, and TJ Golab”, CH2998- 3/91 / 10000-0722 $ 01.00 © 1991 "IMAGE PROCESSING USING THE HSI COLOR SPACE by Eric Welch, Robert Moorhead, and JK Owens" disclosed in the IEE, and so will be omitted in detail.
HSI 영상 좌표계에서 도 14의 좌측 도면과 같이 인텐시티(I축) 차이에 따라 7개의 구간으로 나누고, 각각의 구간에 상응하는 점들을 찾으면 그 점들의 위치가 결정된다. 도 14의 우측 도면은 HSI 영상 좌표계에서 각 벡터들(검은 점)의 위치를 나타낸 그림입니다.As shown in the left figure of FIG. 14, the HSI image coordinate system is divided into seven sections according to the intensity (I-axis) difference, and when the points corresponding to the respective sections are found, the positions of the points are determined. 14 is a diagram showing the position of each vector (black point) in the HSI image coordinate system.
도 14의 우측 도면 즉, HSI 영상 좌표계를 RGB 영상 좌표계로 역변환하면 도 15와 같이 역변환된 RGB 영상 좌표계에서 검은 점들의 좌표가 벡터 대표값이 보정될 수 있는 벡턱값들의 위치이다. 검은 점 각각은 도 15와 같이 4 bits 코드워드로 변환되어 아래의 표 2와 같은 테이블로 작성될 수 있고 이러한 테이블은 제2 인코더(22)에 내장되는 룩업 테이블로 구현될 수 있다. P_VQ-BTC는 표 2의 테이블을 기반으로 부호화를 실행하여 각 서브 블록에서 벡터 대표값을 보정한다. 따라서, 제2 인코더(22)는 벡터 대표값의 보정시에 보정 가능한 위치를 표 2의 테이블에서 검색하는 것으로 간단히 벡터 대표값을 보정할 수 있다. In other words, when the HSI image coordinate system is inversely transformed into an RGB image coordinate system, the coordinates of the black dots in the inversely transformed RGB image coordinate system as shown in FIG. 15 are positions of vector values at which the vector representative value can be corrected. Each of the black dots may be converted into a 4-bit codeword as shown in FIG. 15 and may be created as a table as shown in Table 2 below. Such a table may be implemented as a lookup table embedded in the
위 표 2에서 에러가 가장 작은 보정 위치를 선택하기 위하여 P_VQ-BTC는 아래의 수학식 9와 같은 최소 평균 에러식(minimum mean square error, MSE)을 만족하는 코드워드(c)를 선택한다. In Table 2 above, P_VQ-BTC selects a codeword (c) that satisfies a minimum mean square error (MSE) as shown in
여기서, (Rr, Gr, Br)는 n 번째 픽셀의 벡터 대표값, (Rn, Gn, Bn)는 n 번째 픽셀의 실제 픽셀값, (Rc, Gc, Bc)는 보정 위치, 그리고 'm'은 서브 블록 각각에서 벡터값들의 개수를 각각 나타낸다. Where (Rr, Gr, Br) is the vector representative value of the nth pixel, (Rn, Gn, Bn) is the actual pixel value of the nth pixel, (Rc, Gc, Bc) is the correction position, and 'm' is Represents the number of vector values in each subblock.
보정위치 결정방법의 제2 실시예Second Embodiment of Correction Positioning Method
본 발명의 제2 실시예에 따른 보정위치 결정방법은 수학식 9와 같은 모든 보정 위치들에 대하여 연산을 행한 후에 최소값을 선택하는 과정없이 아래와 같은 알고리즘을 이용하여 보정 위치 선택을 빠르게 할 수 있다. In the method of determining a correction position according to the second embodiment of the present invention, the correction position can be quickly selected by using the following algorithm without performing a process for selecting all the correction positions as shown in Equation (9).
(1) 2×2 서브 블록에는 하나의 코드워드가 상위 대표값과 하위 대표값에 상관없이 적용되기 때문에, 각각의 픽셀과 벡터 대표값의 상관성을 파악한다면 코드워드를 생성할 수 있다. 각각의 픽셀값과 벡터 대표값이 알려져 있으므로 각각의 픽셀값과 대표값 크기를 비교하여 아래의 수학식 10과 같이, 픽셀값(Ro, Go, Bo)이 벡터 대표값(Rr, Gr, Br)보다 크다면 '+1', 픽셀값(Ro, Go, Bo)과 벡터 대표값(Rr, Gr, Br)이 유사하다면 '0', 픽셀값(Ro, Go, Bo)이 벡터 대표값(Rr, Gr, Br)보다 작다면 '-1'을 선택하여 RGB 각각의 2×2 서브 블록에서 선택된 값들을 서로 더한다. 여기서, 유사하다는 것은 픽셀값과 벡터 대표값의 차이가 평균거리의 반 이하를 의미한다. (1) Since one codeword is applied to the 2x2 subblock regardless of the upper representative value and the lower representative value, the codeword can be generated if the correlation between each pixel and the vector representative value is determined. Since each pixel value and vector representative value are known, the pixel values R o , G o , and B o are equal to the vector representative values R r , as shown in
수학식 10에서, (Ro, Go, Bo)는 입력 영상의 오리지날 픽셀값이고 (Rr, Gr, Br)는 RGB 각각의 벡터 대표값이다. In
R의 2×2 서브 블록에서 벡터 보정값을 보정하기 위하여, 표 2의 인덱스를 선택하기 위한 Rcode는 +4에서 -4까지의 값을 가진다. 마찬가지로, G의 2×2 서브 블록에서 벡터 보정값을 보정하기 위하여, 표 2의 인덱스를 선택하기 위한 Gcode는 +4에서 -4까지의 값을 가지며, B의 2×2 서브 블록에서 벡터 보정값을 보정하기 위하여, 표 2의 인덱스를 선택하기 위한 Bcode는 +4에서 -4까지의 값을 가진다. In order to correct the vector correction value in the 2x2 subblock of R, the R code for selecting the index of Table 2 has a value from +4 to -4. Similarly, to correct the vector correction value in the 2 × 2 subblock of G, the G code for selecting the index in Table 2 has a value from +4 to -4, and the vector correction in the 2 × 2 subblock of B. To correct the value, the B code for selecting the index in Table 2 has a value from +4 to -4.
2×2 서브 블록에서 각각 더해진 Rcode, Gcode, Bcode, 값이 4,3,2이면 표 2의 코드워드에서 '1', 2×2 서브 블록에서 각각 더해진 Rcode, Gcode, Bcode, 값이 1, 0, -1이면 표 2의 코드워드에서 '0', 2×2 서브 블록에서 각각 더해진 Rcode, Gcode, Bcode, 값이 -2, -3, -4이면 표 2의 코드워드에서 '-1'로 선택하여, 도 16과 같이 R->G->B의 순서로 코드워드를 탐색하여 그 결과 사각형 안에 미리 설정된 인덱스 값을 찾는다. 예컨대, 2×2 서브 블록에서 더해진 Rcode가 '-1', 2×2 서브 블록에서 더해진 Gcode가 '1', 그리고 2×2 서브 블록에서 더해진 Bcode가 '1'이면 표 2에서 벡터 대표값의 보정위치를 지시하는 인덱스는 '5'이고 따라서, 벡터 대표값의 보정위치는 표 2 및 도 15에서 (-1, 0, -1)로 결정된다. 이 실시예는 3 번의 연산으로 벡터 대표값의 보정위치를 결정하여 연산 속도가 빠르고 단순한 장점이 있다. R code , G code and B code added in 2x2 subblock, respectively, if the value is 4,3,2, '1' in the codewords in Table 2, R code , G code and B added in 2x2 subblock, respectively code , if the value is 1, 0, -1, R code , G code , B code added in '0' and 2x2 subblocks in the codeword of table 2, and table if the value is -2, -3, -4 By selecting '-1' from the codeword of 2, the codeword is searched in the order of R->G-> B as shown in FIG. 16, and as a result, a preset index value is found in the rectangle. For example, if the R code added in the 2x2 subblock is '-1', the G code added in the 2x2 subblock is '1', and the B code added in the 2x2 subblock is '1', the vector in Table 2 The index indicating the correction position of the representative value is '5', and therefore, the correction position of the vector representative value is determined as (-1, 0, -1) in Table 2 and FIG. This embodiment has the advantage of fast and simple operation speed by determining the correction position of the vector representative value by three operations.
도 16의 트리형 탐색 구조에서 구조적 특성상, 코드워드가 할당되지 않는 경우(No)가 발생할 수 있다. 예를 들어, Rcode, Gcode, Bcode가 각각 -1, 0, 0으로 결정될 수 있지만 이에 해당하는 인덱스는 없다. 이와 같은 경우에 도 17 내지 도 19를 결부하여 후술하는 바와 같이 오차를 최소화하는 방향으로 근처의 유사한 코드워드로 대체되어 인덱스가 결정된다. In the tree type search structure of FIG. 16, when a codeword is not assigned (No) may occur due to structural features. For example, R code , G code , and B code may be determined to be -1, 0, or 0, respectively, but there is no corresponding index. In such a case, the index is determined by replacing similar codewords in the vicinity in the direction of minimizing the error as described below with reference to FIGS. 17 to 19.
도 14 및 도 15와 같이 표 2의 코드워드가 정육면체의 각 꼭지점과, 선의 중심, 및 면의 중심을 모두 반영하고 있지 않기 때문에, 위와 같은 방법으로 보정위치를 선택하기 위한 인덱스를 탐색할 때 인덱스를 맵핑할 수 없는 부분이 존재한다. 이 때, 코드워드에 없는 부분들, 예를 들면 (1, 0, 0) 등은 모두 (0, 0, 0)으로 맵핑된다. 그 결과, B로 집중되었던 에러가 R, G 및 B로 분산하였고 이를 반영한 실험 결과를 통해 트리 탐색 구조에서 인덱스가 없는 부분 모두를 (0, 0, 0)으로 치환하였을 때 평균 PSNR(Peak Signal to Noise Ratio)과 화질의 더 개선된 것 을 확인할 수 있었다. 이에 대한 효과는 도 17 및 도 18로도 설명될 수 있다. Since the codewords in Table 2 do not reflect each vertex of the cube, the center of the line, and the center of the plane as shown in FIGS. 14 and 15, the index when searching the index for selecting a correction position in the same manner as described above. There is a part that cannot be mapped. At this time, all parts not included in the codeword, for example, (1, 0, 0) and the like are all mapped to (0, 0, 0). As a result, the error centered on B was distributed to R, G, and B. Based on the experimental results, the average PSNR (Peak Signal to Noise ratio) and image quality were further improved. The effects on this can also be explained with reference to FIGS. 17 and 18.
벡터 대표값이 보정 가능한 위치들 중에서 도 17과 같은 점들[(0,0,0), (-1,1,0), (-1,-1,-1)]을 가정할 때, 이와 같은 점들에 대하여 임의의 한 점에 대해 어떤 점이 더 가까운지 계산해보면 도 18과 같다. 도 18의 (a)는 RGB 영상 좌표계에서 위의 세 점들[(0,0,0), (-1,1,0), (-1,-1,-1)]의 위치를 나타낸 도면이다. 도 18의 (b)는 (0,0,0)과 (-1,1,1)의 중간 벡터의 위치를 나타낸 것이다. 도 18의 (c)는 (0,0,0)과 (-1,1,0)의 중간 벡터의 위치를 나타낸 것이다.Assuming that the vector representative values are points [(0,0,0), (-1,1,0), (-1, -1, -1)] as shown in FIG. 18 is calculated as to which point is closer to any one point. FIG. 18A is a diagram illustrating the positions of the above three points [(0,0,0), (-1,1,0), (-1, -1, -1)] in the RGB image coordinate system. . FIG. 18B shows the positions of intermediate vectors of (0,0,0) and (-1,1,1). FIG. 18C shows the positions of intermediate vectors of (0,0,0) and (-1,1,0).
도 18에서 (-1,1,0)는 도 15와 표 2의 코드워드에서 존재하지 않으므로 (0,0,0)과 (-1,1,0) 중심과 3/4 위치에 존재하는 점들은 도 18의 (c)와 같이 (-1,1,0)으로 맵핑되었다가 다시 (-1,1,1)로 매핑될 수 있다. 즉, 도 18의 (c)에서 해치 처리된 부분은 (0,0,0)에 가깝지만 (-1,1,0)으로 맵핑되는 벡터 대표값 보정의 오류가 발생할 수 있다. 이와 같은 오류를 방지하기 위해 도 15 및 표 2에서 존재하지 않은 코드워드로 선택될 경우에는 (0,0,0)으로 자동 선택되도록 도 16의 트리 탐색 구조를 도 19와 같이 보정하는 것이 바람직하다. 도 19의 인덱스 (0,0,0)는 도 16에서 NO 코드로 선택될 수 있는 조합들과 HSI 영상 좌표계에서 인텐시티(Intensity)가 가장 유사한 값이다. 또한 보다 정확하게 서브 블록의 코드워드를 선택하기 위해서 수학식 10을 아래의 수학식 11으로 수정한다. In FIG. 18, since (-1,1,0) does not exist in the codewords of FIGS. 15 and 2, the points exist at (0,0,0) and (-1,1,0) centers and 3/4 positions. They may be mapped to (-1, 1, 0) as shown in (c) of FIG. 18 and then back to (-1, 1, 1). That is, although the hatched portion in FIG. 18C is close to (0,0,0), an error of vector representative value correction mapped to (-1,1,0) may occur. In order to prevent such an error, it is preferable to correct the tree search structure of FIG. 16 as shown in FIG. . The index (0,0,0) of FIG. 19 is a value having the most similar intensity in the HSI image coordinate system and combinations that may be selected as the NO code in FIG. 16. In addition, in order to more accurately select a codeword of a subblock,
여기서, m은 2×2 서브 블록 내의 하위 벡터의 개수를 나타내고, RH는 R의 상위 대표값, RL은 하위 대표값이다. 수학식 11을 통해 산출된 코드워드의 적정성을 아래와 같은 수학식 12로 판단할 수 있다. Here, m represents the number of lower vectors in the 2x2 subblock, R H is an upper representative value of R, and R L is a lower representative value. The appropriateness of the codeword calculated through
여기서, "aver_dis"는 벡터 대표값과 그 주변의 16 개 벡터들 사이의 평균거리이다. Here, "aver_dis" is an average distance between the vector representative value and the 16 vectors around it.
RGB 각각에 대하여 수학식 12를 적용한 값을 계산한 후에, 계산된 값들의 조합에 가장 부합하는 코드워드를 선택하여야 한다. 수학식 12에서, 평균거리에 2가 곱해진 이유는 2×2 서브 블록에서 실제로 4개의 픽셀 값이 있고, 이 픽셀 값들에 대응하는 각각의 점들과 벡터 대표값들의 차이를 더한 것이 Rcode이므로 Rcode이 평균거리의 반에 4 배만큼 곱해진 거리 이상이어야 +1로 인정하여야 하기 때문이다. After calculating the value of applying the equation (12) for each of the RGB, it is necessary to select a codeword that best matches the combination of the calculated values. In
도 20은 기존 VQ-BTC 압축 알고리즘과 본 발명의 실시예에 따른 데이터 복원 방법 간에 벡터 대표값의 복호화를 도시화한 도면이다. 20 is a diagram illustrating decoding of a vector representative value between an existing VQ-BTC compression algorithm and a data decompression method according to an embodiment of the present invention.
도 20의 (a)는 기존 VQ-BTC의 복호화 방법이다. 이에 비하여, 본 발명의 실시예에 따른 데이터 복원 방법의 벡터 대표값 복원은 2×2 서브 블록 단위로 벡터 대표값을 도 20의 (b)와 같이 복호화하고 도 20의 (c)와 같이 RGB 격자를 이용하여 서브 블록 단위로 벡터 대표값을 보정함으로써 픽셀 값을 보정한다. 도 20의 (d)는 본 발명의 실시예에 따른 데이터 복원 방법에 의해 복원된 픽셀값의 보정된 벡터를 보여 주는 도면이다. 20A illustrates a decoding method of the existing VQ-BTC. In contrast, the vector representative value reconstruction of the data reconstruction method according to the embodiment of the present invention decodes the vector representative value in units of 2 × 2 subblocks as shown in FIG. 20B and as shown in FIG. 20C. The pixel value is corrected by correcting the vector representative value in units of subblocks. 20D is a diagram illustrating a corrected vector of pixel values reconstructed by the data reconstruction method according to the embodiment of the present invention.
본 발명의 실시예에 따른 데이터 복원 방법은 아래의 수학식 13와 같다. A data restoration method according to an embodiment of the present invention is shown in
여기서, (Rd, Gd, Bd)는 복호화된 픽셀값이며, (Rr, Gr, Br)는 픽셀의 벡터 대표값이고, 'L'은 벡터 대표값과 그 주변의 벡터값들 사이의 평균거리, (Rc, Gc, Bc)는 보정 위치이다. 디코더(24)는 부호화 데이터의 플래그 비트를 읽어 입력 부호화 데이터의 인코드 방식을 판단한다. 제1 인코더(21)에 의해 VQ-BTC 알고리즘으로 인코드된 부호화 데이터가 디코더(24)에 입력되면 디코더(24)는 평균 거리(L) 과 보정 위치(Rc, Gc, Bc)의 bits을 0으로 치환하여 VQ-BTC 방식으로 부호화 데이터를 복호한다. Here, (Rd, Gd, Bd) is the decoded pixel value, (Rr, Gr, Br) is the vector representative value of the pixel, 'L' is the average distance between the vector representative value and the surrounding vector values, (Rc, Gc, Bc) are correction positions. The
도 8의 S0 단계에서 벡터 대표값들의 편차를 임계값과 비교하여 제1 인코더(21)에 의한 VQ-BTC 기반의 압축 알고리즘과 본 발명에서 제안하는 P_VQ-BTC 압축 알고리즘을 선택할 때 벡터 대표값들의 편차가 임계값보다 작을 때 VQ-BTC 기반의 압축 알고리즘이 선택된다. 이는 P_VQ-BTC는 벡터 그룹들을 2×2 서브 블록으로 분할하고 벡터 대표값을 전술한 보정 위치 결정방법으로 보정하는 과정을 통해 벡터 대표값의 편차가 클 때에도 색 표현력 저하없이 블록간 아티팩트를 방지할 수 있기 때문이다. 한편, 벡터 대표값의 편차가 클 때에 기존 VQ-BTC는 영상의 색깊이가 낮아져 색 표현력이 줄고 이웃하는 블록 간 아티펙트가 발생할 수 있다. 반면에, 기존 VQ-BTC는 벡터 대표값의 편차가 작을 때에 블록 간 아티펙트가 거의 관찰되지 않고 전술한 보정 위치 결정방법과 같은 별도의 연산과정이 없기 때문에 연산 처리가 단순하고 빠르므로 P_VQ-BTC 압축 알고리즘보다 유리하다. In the step S0 of FIG. 8, the vector representative values are selected when the VQ-BTC-based compression algorithm and the P_VQ-BTC compression algorithm proposed by the present invention are selected by comparing the deviation of the vector representative values with the threshold value. When the deviation is less than the threshold, the VQ-BTC based compression algorithm is selected. This is because P_VQ-BTC divides the vector groups into 2 × 2 sub-blocks and corrects the vector representative value by the above-described correction positioning method, thereby preventing artifacts between blocks without degrading color expression power even when the vector representative value is large. Because it can. On the other hand, when the variation of the vector representative value is large, the existing VQ-BTC has a low color depth of the image, thereby reducing color expressiveness and generating artifacts between neighboring blocks. On the other hand, in the conventional VQ-BTC, when the variation of the vector representative value is small, almost no artifacts between blocks are observed, and since there is no separate calculation process like the above-described correction positioning method, the P_VQ-BTC compression is simple and fast. Advantageous over the algorithm.
도 21a 내지 도 24e는 4 개의 실험 이미지들 각각에 대한 기존 BTC 알고리즘의 압축 및 복원된 후의 표시 영상, 기존 VQ-BTC 알고리즘의 압축 및 복원된 후의 표시 영상, P_VQ-BTC(proposed_VQ_BTC) 알고리즘으로 압축하고 제1 실시예의 보정위치 결정방법을 이용하여 복원된 후의 표시 영상, P_VQ-BTC(proposed_VQ_BTC) 알고리즘으로 압축하고 제2 실시예의 보정위치 결정방법을 이용하여 복원된 후의 표시 영상의 실험 결과이다. 표 3은 도 21a 내지 도 24e의 실험 결과에 대한 PSNR성능의 정량적 평가이다. 21A to 24E compress the display image after compression and reconstruction of the existing BTC algorithm for each of the four experimental images, the display image after compression and reconstruction of the existing VQ-BTC algorithm, and the P_VQ-BTC (proposed_VQ_BTC) algorithm. This is an experimental result of the display image after reconstruction using the correction position determination method of the first embodiment, the display image after compression using the P_VQ-BTC algorithm, and reconstruction using the correction position determination method of the second embodiment. Table 3 is a quantitative evaluation of PSNR performance for the experimental results of FIGS. 21A-24E.
(768x512)
Parrot
(768 x 512)
(1000x668)
Korea014
(1000x668)
Cafe (1280x768)
(1280x768)Fruit-XW
(1280x768)
표 3에서 알 수 있는 바와 같이, 어떠한 실험영상에서도 본 발명에서 제안하는 P_VQ-BTC의 PSNR 평가 결과가 높다는 것을 알 수 있고 육안 평가에서도 색표현력과 블러가 개선되는 것을 확인할 수 있었다. 도 22의 실험 영상을 예를 들어 설명하면, 도 25는 도 22b 내지 도 22d의 일부를 확대한 실험 영상이다. 도 25의 (a)는 기존 BTC 알고리즘(1/3 압축)의 실험 영상, 도 25의 (b)는 기존 VQ-BTC 알고리즘(1/6 압축)의 실험 영상, 그리고 도 25의 (c)는 P_VQ-BTC에서 제1 실시예의 보종 위치 결정방법을 적용한 실험 영상을 각각 나타낸다. 도 25의 박스 내의 이미지를 비교해 보면, 육안으로도 도 25의 (c)에서 블러가 개선됨을 확인할 수 있다.As can be seen from Table 3, it can be seen that the PSNR evaluation result of P_VQ-BTC proposed in the present invention is high in any experimental image, and it was confirmed that color expression power and blur were improved even in visual evaluation. For example, the experimental image of FIG. 22 will be described. FIG. 25 is an enlarged experimental image of portions of FIGS. 22B to 22D. 25 (a) is an experimental image of the existing BTC algorithm (1/3 compression), FIG. 25 (b) is an experimental image of the existing VQ-BTC algorithm (1/6 compression), and FIG. 25 (c) is Experimental images to which the complementary positioning method of the first embodiment is applied in P_VQ-BTC are respectively shown. Comparing the images in the box of FIG. 25, it can be seen that blur is improved in FIG. 25C even with the naked eye.
본 발명의 이해를 돕기 위하여 BTC 알고리즘과 VQ-BTC 알고리즘의 부호화 과정에 대하여 실예를 들어 설명하면 다음과 같다. In order to help the understanding of the present invention, the encoding process of the BTC algorithm and the VQ-BTC algorithm will be described as an example.
BTC 알고리즘은 RGB 각각에 대해 스칼라 양자화기(scalar quantizer)를 적용하였다. 이에 비하여, 제1 인코더(21)에 의해 처리되는 VQ-BTC 알고리즘은 RGB 각각을 (R, G, B)의 벡터로 표현하고, 이 벡터들을 이용하여 벡터 양자화기(vector quantizer)를 적용한다. The BTC algorithm applied a scalar quantizer for each of RGB. In contrast, the VQ-BTC algorithm processed by the
기존 BTC 알고리즘과 VQ-BTC 알고리즘에서 문턱치(threshold)를 결정 방법에 대하여 도 26의 예를 들어 설명하기로 한다. A method of determining a threshold in the existing BTC algorithm and the VQ-BTC algorithm will be described with reference to the example of FIG. 26.
도 26은 제1 인코더(21)에 입력되는 실험 영상의 RGB 블록 예로써 768×512 parrot 이미지(YCbCr 4:2:0)의 (136,188) 부분에서 2×4 블록 사이즈로 추출된 블록이다,FIG. 26 is an example RGB block of an experimental image input to the
기존 BTC 알고리즘은 블록 내 픽셀값들의 평균값이 양자화 문턱치(quantization threshold)로 결정된다. 즉, 기존 BTC 알고리즘은 RGB 각각에서 서로 다른 문턱치가 할당된다. 이렇게 기존 BTC 알고리즘은 RGB 각각에 서로 다른 문턱치가 할당되므로 문턱치 차이에 의해 색왜곡(Color distortion)이 발생할 수 있다. 2×4 블록의 최좌측 상위 RGB 픽셀값은 (229, 210, 200)이므로 화이트 계조에 가까운 영상이지만 BTC 알고리즘으로 인코딩된 (248, 158, 148)은 분홍색에 가까운 계조로 된다. 만약, BTC 알고리즘에 YCbCr 4:2:0 변환 알고리즘이 추가된다면 색 왜곡은 더욱 심하게 보인다. In the conventional BTC algorithm, an average value of pixel values in a block is determined as a quantization threshold. That is, in the conventional BTC algorithm, different thresholds are assigned to each of RGB. In the conventional BTC algorithm, since different thresholds are allocated to each of RGB, color distortion may occur due to the threshold difference. Since the left-most upper RGB pixel value of the 2x4 block is (229, 210, 200), the image is close to white gradation, but (248, 158, 148) encoded by the BTC algorithm is gradation close to pink. If the YCbCr 4: 2: 0 conversion algorithm is added to the BTC algorithm, the color distortion looks more severe.
도 26과 같은 768×512 parrot 이미지(YCbCr 4:2:0)의 (136,188) 부분에서 2×4 블록 사이즈로 추출된 블록에 대하여 VQ-BTC 알고리즘으로 인코딩하는 과정은 다음과 같다. 768 × 512 parrot as shown in Fig. 26 The process of encoding the block extracted with the 2 × 4 block size in the (136,188) portion of the image (YCbCr 4: 2: 0) by the VQ-BTC algorithm is as follows.
도 27은 RGB 각각의 블록 내의 픽셀값들을 같은 위치에 있는 요소들끼리 묶어서 벡터값들로 변환한 예를 나타낸다. VQ-BTC 알고리즘은 그 벡터값들을 k-mean clustering을 이용해서 양자화를 실행한다. 그 방법을 단계적으로 구분하면 다음과 같다. FIG. 27 shows an example of converting pixel values in each block of RGB into vector values by grouping elements at the same position. The VQ-BTC algorithm quantizes the vector values using k-mean clustering. The method can be classified step by step as follows.
(1) 각 벡터값들 사이의 거리를 계산한다. 거리 계산방법은 전술한 바와 같이 유클리디한 거리 계산방법이나 맨하탄 거리 계산방법이 적용될 수 있다. (1) Calculate the distance between each vector value. As described above, the Euclidean distance calculation method or the Manhattan distance calculation method may be applied as described above.
(2) 산출된 거리 중 최장거리를 선택하고 그 최장거리로 이격된 벡터값들이 어떤 벡터값들인지 판단한다. (2) Select the longest distance from the calculated distances and determine which vector values are spaced apart from the longest distance.
(3) 산출된 두 벡터값들을 기준으로 나머지 벡터들을 거리가 가까운 벡터 중심으로 나눈다. 그 결과, 각 블록에서 벡터값들은 2 개의 그룹 즉, 상위 블록과 하위 블록으로 나뉘어진다. (3) Based on the calculated two vector values, the remaining vectors are divided by the nearest vector center. As a result, the vector values in each block are divided into two groups, that is, an upper block and a lower block.
(4) 각 그룹 내의 벡터값들을 이용하여 평균 벡터(벡터 대표값)를 계산한다. (4) The average vector (vector representative value) is calculated using the vector values in each group.
(5) 산출된 평균 벡터를 기준으로 다시 (3)~(5)를 반복(iteration)한다. (5) Repeat (3) to (5) again based on the calculated average vector.
이와 같은 과정을 도 28 내지 도 30을 결부하여 예를 들어 설명하기로 한다. This process will be described by way of example with reference to FIGS. 28 to 30.
도 28은 벡터값들 간의 맨하탄 거리를 나타낸다. 도 28에서 최장거리는 363이 되고, 그에 상응하는 벡터값은 (255, 255, 255)와 (150, 131, 121)이다. 이렇게 산출된 벡터값을 기준으로 나머지 6개의 벡터를 도 29와 같이 2개의 그룹으로 나눈다. 28 shows the Manhattan distance between the vector values. In FIG. 28, the longest distance is 363, and corresponding vector values are (255, 255, 255) and (150, 131, 121). Based on the calculated vector value, the remaining six vectors are divided into two groups as shown in FIG. 29.
도 29를 참조하면, 벡터값들은 거리에 따라 2개의 그룹으로 나누어진다. VQ-BTC 알로리즘은 각 그룹 안에 속한 벡터값들을 이용하여 각 그룹의 평균을 계산한다. (255, 255, 255)가 속한 그룹을 그룹1, 나머지 그룹을 그룹2라 한다면, 그룹1의 평균은 (247, 242, 238)이고, 그룹2의 평균은 (162, 143, 133)이다. VQ-BTC 알로리즘은 이렇게 구해진 평균을 이용하여 벡터들과, 평균 벡터(벡터 대표값) 사이의 거리를 다시 측정하고 이를 바탕으로 그룹을 재결성한다. 그 결과, VQ-BTC의 그룹화와 벡터값들은 도 30과 같다. 도 30에서 평균 벡터가 각 그룹의 벡터 대표값이다. 그룹1의 벡터 대표값은 상위 대표값이고, 그룹2의 벡터 대표값은 하위 대표값이다. Referring to FIG. 29, vector values are divided into two groups according to distances. The VQ-BTC algorithm calculates the mean of each group using the vector values in each group. If the group to which (255, 255, 255) belongs is
이상 설명한 내용을 통해 당업자라면 본 발명의 기술사상을 일탈하지 아니하는 범위에서 다양한 변경 및 수정이 가능함을 알 수 있을 것이다. 따라서, 본 발명의 기술적 범위는 명세서의 상세한 설명에 기재된 내용으로 한정되는 것이 아니라 특허 청구의 범위에 의해 정하여져야만 할 것이다.Those skilled in the art will appreciate that various changes and modifications can be made without departing from the technical spirit of the present invention. Therefore, the technical scope of the present invention should not be limited to the contents described in the detailed description of the specification but should be defined by the claims.
도 1은 통상의 액정표시장치에 있어서 데이터에 따른 휘도 변화를 나타내는 파형도이다. 1 is a waveform diagram showing a change in luminance according to data in a conventional liquid crystal display.
도 2는 과구동 방법에서 데이터 변조에 따른 휘도 변화의 일례를 나타내는 파형도이다. 2 is a waveform diagram showing an example of a luminance change caused by data modulation in the overdrive method.
도 3은 과구동 회로를 나타내는 회로도이다. 3 is a circuit diagram showing an overdrive circuit.
도 4는 종래의 BTC 압축 알고리즘의 일예를 나타내는 도면이다. 4 is a diagram illustrating an example of a conventional BTC compression algorithm.
도 5는 종래의 VQ-BTC 압축 알고리즘의 일예를 나타내는 도면이다. 5 is a diagram illustrating an example of a conventional VQ-BTC compression algorithm.
도 6은 본 발명의 실시예에 따른 액정표시장치를 나타내는 도면이다. 6 illustrates a liquid crystal display according to an exemplary embodiment of the present invention.
도 7은 도 6에 도시된 과구동 처리회로를 상세히 나타내는 블록도이다. FIG. 7 is a block diagram illustrating in detail the overdrive processing circuit shown in FIG. 6.
도 8은 도 7에 도시된 인코더와 처리수순을 단계적으로 보여 주는 도면이다. FIG. 8 is a diagram illustrating the encoder and the processing procedure shown in FIG. 7 step by step.
도 9는 제1 인코더(21)에 의해 VQ-BTC 압축 알고리즘으로 인코드된 데이터 패킷을 보여 주는 도면이다. 9 is a diagram showing a data packet encoded by the
도 10은 제2 인코더(23)에 의해 P_VQ-BTC 압축 알고리즘으로 인코드된 데이터 패킷이다. 10 is a data packet encoded by the P_VQ-BTC compression algorithm by the second encoder 23.
도 11은 기존 VQ-BTC 압축 알고리즘에 의해 생성되는 데이터 패킷을 보여 주는 도면이다. 11 is a diagram illustrating a data packet generated by a conventional VQ-BTC compression algorithm.
도 12a 내지 도 12c는 벡터 대표값의 복호화 예를 보여 주는 도면들이다. 12A to 12C are diagrams illustrating an example of decoding a vector representative value.
도 13은 본 발명의 제1 실시예에 따른 벡터 대표값의 보정위치 결정방법에서 RGB 영상 좌표계와 HSI 영상 좌표계 사이의 변환 과정을 보여 주는 도면이다. FIG. 13 is a view illustrating a conversion process between an RGB image coordinate system and an HSI image coordinate system in the method for determining a corrected position of a vector representative value according to the first embodiment of the present invention.
도 14는 HSI 영상 좌표계에서 보여 지는 벡터 위치들과 HSI 영상 좌표계의 I축 차이에 따라 존재하는 벡터 위치를 평면으로 나타내는 도면이다. FIG. 14 is a diagram illustrating vector positions present in HSI image coordinate systems and vector positions existing according to I-axis differences between HSI image coordinate systems.
도 15는 역변환된 RGB 영상 좌표계에서 벡터 대표값이 보정될 수 있는 벡터 위치들을 4 bits 코드워드로 맵핑한 예를 보여 주는 도면이다. FIG. 15 is a diagram illustrating an example of mapping vector positions where a vector representative value may be corrected to a 4-bit codeword in an inverse transformed RGB image coordinate system.
도 16은 본 발명의 제2 실시예에 따른 벡터 대표값의 보정위치 결정방법에서 트리 탐색을 도식화한 도면이다. 16 is a diagram illustrating a tree search in the method for determining the position of correction of the vector representative value according to the second embodiment of the present invention.
도 17은 도 17은 정육면체에서 벡터 대표값이 보정될 수 있는 임의의 세 점들을 보여 주는 도면이다. FIG. 17 is a diagram showing three arbitrary points at which a vector representative value can be corrected in a cube.
도 18은 도 17과 같은 세 점들 사이에 존재하지만 도 15 및 표 2의 코드워드에서 존재하는 않는 보정 위치를 그와 유사한 보정 위치로 치환할 때 발생하는 오류를 보여 주는 도면이다. FIG. 18 is a diagram illustrating an error occurring when a correction position existing between three points as shown in FIG. 17 but not present in the codewords of FIGS. 15 and 2 is replaced with a similar correction position.
도 19는 도 16에서 도 15 및 표 2의 코드워드에서 존재하지 않는 보정 위치를 (0,0,0)으로 치환한 결과를 보여 주는 도면이다. FIG. 19 is a diagram illustrating a result of substituting (0,0,0) for a correction position that does not exist in the codewords of FIG. 15 and Table 2 in FIG.
도 20은 VQ-BTC와 P_VQ-BTC의 복호화 방법을 도식화한 도면이다. 20 is a diagram illustrating a decoding method of VQ-BTC and P_VQ-BTC.
도 21a는 실험 이미지 "Parrot(해상도: 768×512)"의 오리지널 이미지이다. 21A is the original image of the experimental image "Parrot (resolution: 768 x 512)".
도 21b는 실험 이미지 "Parrot(해상도: 768×512)"에 대한 기존 BTC 알고리즘의 압축 및 복원된 후의 표시 영상을 보여 주는 이미지이다. 21B is an image showing a display image after compression and reconstruction of the existing BTC algorithm for the experimental image "Parrot (resolution: 768 x 512)".
도 21c는 실험 이미지 "Parrot(해상도: 768×512)"에 대한 기존 VQ-BTC 알고리즘으로 압축 및 복원된 후의 표시 영상을 보여 주는 이미지이다. FIG. 21C is an image showing a display image after being compressed and reconstructed with the existing VQ-BTC algorithm for the experimental image “Parrot (resolution: 768 × 512)”.
도 21d는 실험 이미지 "Parrot(해상도: 768×512)"에 대한 P_VQ-BTC 알고리 즘으로 압축하고 제1 실시예의 보정위치 결정방법을 이용하여 복원된 후의 표시 영상을 보여 주는 이미지이다. FIG. 21D is an image showing a display image after compression with the P_VQ-BTC algorithm for the experimental image "Parrot (resolution: 768 x 512)" and restored using the correction position determination method of the first embodiment.
도 21e는 실험 이미지 "Parrot(해상도: 768×512)"에 대한 P_VQ-BTC 알고리즘으로 압축하고 제2 실시예의 보정위치 결정방법을 이용하여 복원된 후의 표시 영상을 보여 주는 이미지이다. FIG. 21E is an image showing a display image after compression by the P_VQ-BTC algorithm for the experimental image "Parrot (resolution: 768 x 512)" and restored using the correction position determination method of the second embodiment.
도 22a는 실험 이미지 "Korea014(해상도: 1000×668)"의 오리지널 이미지이다. 22A is an original image of the experimental image "Korea014 (resolution: 1000 x 668)".
도 22b는 실험 이미지 "Korea014(해상도: 1000×668)"에 대한 기존 BTC 알고리즘의 압축 및 복원된 후의 표시 영상을 보여 주는 이미지이다. FIG. 22B is an image showing a display image after compression and reconstruction of the existing BTC algorithm for the experimental image “Korea014 (resolution: 1000 × 668)”. FIG.
도 22c는 실험 이미지 "Korea014(해상도: 1000×668)"에 대한 기존 VQ-BTC 알고리즘으로 압축 및 복원된 후의 표시 영상을 보여 주는 이미지이다. FIG. 22C is an image showing a display image after being compressed and reconstructed with the existing VQ-BTC algorithm for the experimental image “Korea014 (resolution: 1000 × 668)”.
도 22d는 실험 이미지 "Korea014(해상도: 1000×668)"에 대한 P_VQ-BTC 알고리즘으로 압축하고 제1 실시예의 보정위치 결정방법을 이용하여 복원된 후의 표시 영상을 보여 주는 이미지이다. FIG. 22D is an image showing a display image after compression by the P_VQ-BTC algorithm for the experimental image “Korea014 (resolution: 1000 × 668)” and restored using the correction position determination method of the first embodiment.
도 22e는 실험 이미지 "Korea014(해상도: 1000×668)"에 대한 P_VQ-BTC 알고리즘으로 압축하고 제2 실시예의 보정위치 결정방법을 이용하여 복원된 후의 표시 영상을 보여 주는 이미지이다. FIG. 22E is an image showing a display image after being compressed by the P_VQ-BTC algorithm for the experimental image “Korea014 (resolution: 1000 × 668)” and reconstructed using the correction position determination method of the second embodiment.
도 23a는 실험 이미지 "cafe(해상도: 1280×768)"를 보여 주는 이미지이다. 23A is an image showing an experimental image "cafe (resolution: 1280 x 768)."
도 23b는 실험 이미지 "cafe(해상도: 1280×768)"에 대한 기존 BTC 알고리즘의 압축 및 복원된 후의 표시 영상을 보여 주는 이미지이다. FIG. 23B is an image showing a display image after compression and reconstruction of the existing BTC algorithm for the experimental image “cafe (resolution: 1280 × 768)”.
도 23c는 실험 이미지 "cafe(해상도: 1280×768)"에 대한 기존 VQ-BTC 알고리즘으로 압축 및 복원된 후의 표시 영상을 보여 주는 이미지이다. FIG. 23C is an image showing a display image after being compressed and reconstructed with the existing VQ-BTC algorithm for the experimental image “cafe (resolution: 1280 × 768)”.
도 23d는 실험 이미지 "cafe(해상도: 1280×768)"에 대한 P_VQ-BTC 알고리즘으로 압축하고 제1 실시예의 보정위치 결정방법을 이용하여 복원된 후의 표시 영상을 보여 주는 이미지이다. FIG. 23D is an image showing a display image after being compressed by the P_VQ-BTC algorithm for the experimental image "cafe (resolution: 1280 x 768)" and restored using the correction position determination method of the first embodiment.
도 23e는 실험 이미지 "cafe(해상도: 1280×768)"에 대한 P_VQ-BTC 알고리즘으로 압축하고 제2 실시예의 보정위치 결정방법을 이용하여 복원된 후의 표시 영상을 보여 주는 이미지이다. Fig. 23E is an image showing a display image after compression by the P_VQ-BTC algorithm for the experimental image "cafe (resolution: 1280 x 768)" and restored using the correction position determination method of the second embodiment.
도 24a는 실험 이미지 "Fruit-XW(해상도: 1280×768)"의 오리지널 이미지이다. 24A is the original image of the experimental image "Fruit-XW (resolution: 1280 x 768)".
도 24b는 실험 이미지 "Fruit-XW(해상도: 1280×768)"에 대한 기존 BTC 알고리즘의 압축 및 복원된 후의 표시 영상을 보여 주는 이미지이다. 24B is an image showing a display image after compression and reconstruction of the existing BTC algorithm for the experimental image “Fruit-XW (resolution: 1280 × 768)”.
도 24c는 실험 이미지 "Fruit-XW(해상도: 1280×768)"에 대한 기존 VQ-BTC 알고리즘으로 압축 및 복원된 후의 표시 영상을 보여 주는 이미지이다. 24C is an image showing a display image after being compressed and reconstructed with the existing VQ-BTC algorithm for the experimental image "Fruit-XW (resolution: 1280 x 768)."
도 24d는 실험 이미지 "Fruit-XW(해상도: 1280×768)"에 대한 P_VQ-BTC 알고리즘으로 압축하고 제1 실시예의 보정위치 결정방법을 이용하여 복원된 후의 표시 영상을 보여 주는 이미지이다. FIG. 24D is an image showing a display image after being compressed with the P_VQ-BTC algorithm for the experimental image "Fruit-XW (resolution: 1280 x 768)" and restored using the correction position determination method of the first embodiment.
도 24e는 실험 이미지 "Fruit-XW(해상도: 1280×768)"에 대한 P_VQ-BTC 알고리즘으로 압축하고 제2 실시예의 보정위치 결정방법을 이용하여 복원된 후의 표시 영상을 보여 주는 이미지이다. FIG. 24E is an image showing a display image after compression by the P_VQ-BTC algorithm for the experimental image "Fruit-XW (resolution: 1280 x 768)" and restored using the correction position determination method of the second embodiment.
도 25는 도 22b 내지 도 22d의 일부를 확대한 이미지이다. FIG. 25 is an enlarged image of a portion of FIGS. 22B to 22D.
도 26은 실험 이미지 "parrot의 (136,188) 부분"에서 추출된 2×4 블록과 그 픽셀값들을 나타내는 도면이다. Fig. 26 is a view showing 2 × 4 blocks extracted from the experimental image (136,188 part of parrot) and their pixel values.
도 27은 VQ-BTC 알고리즘에 의해 블록 내의 픽셀값들이 벡터값들로 변환된 예를 나타내는 도면이다. 27 is a diagram illustrating an example in which pixel values in a block are converted to vector values by the VQ-BTC algorithm.
도 28은 도 27의 벡터값들 간의 맨하탄 거리를 나타내는 도면이다. FIG. 28 is a diagram illustrating a Manhattan distance between the vector values of FIG. 27.
도 29는 도 28의 벡터값들 간의 거리를 기초로 하여 그룹화된 예를 나타내는 도면이다. FIG. 29 is a diagram illustrating an example grouping based on distances between vector values of FIG. 28.
도 30은 VQ-BTC 알고리즘에 의해 결정된 벡터 대표값을 나타내는 도면이다. 30 is a diagram illustrating a vector representative value determined by the VQ-BTC algorithm.
〈도면의 주요 부분에 대한 부호의 설명〉Description of the Related Art
10 : 과구동 처리회로 21, 22, 23 : 인코더10:
24 : 디코더 25 : 룩업 테이블24: Decoder 25: Lookup Table
Claims (11)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020080067242A KR100962506B1 (en) | 2008-07-10 | 2008-07-10 | Data Compressing and Decompressing Method and Apparatus, Liquid Crystal Display and Driving Method using the same |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020080067242A KR100962506B1 (en) | 2008-07-10 | 2008-07-10 | Data Compressing and Decompressing Method and Apparatus, Liquid Crystal Display and Driving Method using the same |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20100006918A KR20100006918A (en) | 2010-01-22 |
KR100962506B1 true KR100962506B1 (en) | 2010-06-14 |
Family
ID=41815981
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020080067242A KR100962506B1 (en) | 2008-07-10 | 2008-07-10 | Data Compressing and Decompressing Method and Apparatus, Liquid Crystal Display and Driving Method using the same |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR100962506B1 (en) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR102518934B1 (en) * | 2016-07-13 | 2023-04-17 | 주식회사 엘엑스세미콘 | Apparatus, method and device for processing video data |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20050200361A1 (en) | 2004-01-27 | 2005-09-15 | Werner Bumen | Ignition coil tester |
JP2006195170A (en) | 2005-01-13 | 2006-07-27 | Nec Electronics Corp | Controller driver and liquid crystal display device using the driver |
JP2006195151A (en) | 2005-01-13 | 2006-07-27 | Nec Electronics Corp | Controller driver, liquid crystal display device using the driver and liquid crystal driving method |
KR20080024796A (en) * | 2006-09-15 | 2008-03-19 | 엘지.필립스 엘시디 주식회사 | Image data processing method for display device |
-
2008
- 2008-07-10 KR KR1020080067242A patent/KR100962506B1/en active IP Right Grant
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20050200361A1 (en) | 2004-01-27 | 2005-09-15 | Werner Bumen | Ignition coil tester |
JP2006195170A (en) | 2005-01-13 | 2006-07-27 | Nec Electronics Corp | Controller driver and liquid crystal display device using the driver |
JP2006195151A (en) | 2005-01-13 | 2006-07-27 | Nec Electronics Corp | Controller driver, liquid crystal display device using the driver and liquid crystal driving method |
KR20080024796A (en) * | 2006-09-15 | 2008-03-19 | 엘지.필립스 엘시디 주식회사 | Image data processing method for display device |
Also Published As
Publication number | Publication date |
---|---|
KR20100006918A (en) | 2010-01-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR100837410B1 (en) | Method and apparatus for visually lossless image data compression | |
KR101270167B1 (en) | Method and apparatus of low complexity for compressing image, method and apparatus of low complexity for reconstructing image | |
US8111933B2 (en) | Image processing circuit, and display panel driver and display device mounting the circuit | |
CN101645256B (en) | Generator of overdrive lookup table of liquid crystal display device and generating method thereof | |
CN111837384A (en) | Frequency component selection for image compression | |
JP2007312126A (en) | Image processing circuit | |
JP2020536283A (en) | How to compress the grayscale correction table of the OLED display panel | |
US8675732B2 (en) | Method and apparatus of compressing image data | |
US20140111564A1 (en) | Timing controller and display device having the same | |
JP4650512B2 (en) | Image coding apparatus and integrated circuit device | |
JP3660273B2 (en) | Display device | |
KR100917530B1 (en) | Image processing device, image processing method, image coding device, image coding method and image display device | |
KR101596954B1 (en) | Data Compressing and Decompressing Method and Apparatus Liquid Crystal Display using the same | |
KR100886295B1 (en) | Image processing device, image processing method, and image display device | |
KR20150061743A (en) | Display driving apparatus and driving method thereof | |
KR100962506B1 (en) | Data Compressing and Decompressing Method and Apparatus, Liquid Crystal Display and Driving Method using the same | |
KR102401851B1 (en) | Method of compressing image and display apparatus for performing the same | |
CN114120915A (en) | Data compression method and device and data decompression method and device | |
JP2011124866A (en) | Encoding apparatus and display control apparatus | |
KR101560229B1 (en) | A liquid crystal display device and a method for driving the same | |
EP3893504A1 (en) | Systems and methods for low-complexity near lossless fixed-rate hybrid data compression codecs | |
KR101106439B1 (en) | Video modulation device, modulating method thereof, liquid crystal display device having the same and driving method thereof | |
US8774505B2 (en) | Method and apparatus of fixed bit-rate image compression/decompression based on 2×2 image unit | |
JP2009027556A (en) | Image processing circuit | |
KR20070111111A (en) | Method of compressing and decompressing image and equipment thereof |
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 | ||
FPAY | Annual fee payment |
Payment date: 20150528 Year of fee payment: 6 |
|
FPAY | Annual fee payment |
Payment date: 20160530 Year of fee payment: 7 |
|
FPAY | Annual fee payment |
Payment date: 20180515 Year of fee payment: 9 |
|
FPAY | Annual fee payment |
Payment date: 20190515 Year of fee payment: 10 |