KR100462855B1 - Differential Order Video encoding System - Google Patents
Differential Order Video encoding System Download PDFInfo
- Publication number
- KR100462855B1 KR100462855B1 KR10-1998-0709092A KR19980709092A KR100462855B1 KR 100462855 B1 KR100462855 B1 KR 100462855B1 KR 19980709092 A KR19980709092 A KR 19980709092A KR 100462855 B1 KR100462855 B1 KR 100462855B1
- Authority
- KR
- South Korea
- Prior art keywords
- block
- blocks
- abs
- difference
- pixels
- Prior art date
- Legal status (The legal status 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 status listed.)
- Expired - Fee Related
Links
- 238000000034 method Methods 0.000 claims abstract description 36
- 230000008569 process Effects 0.000 claims abstract description 9
- 238000011002 quantification Methods 0.000 claims description 26
- 238000007906 compression Methods 0.000 claims description 9
- 230000006835 compression Effects 0.000 claims description 9
- 238000012360 testing method Methods 0.000 claims description 6
- 230000005540 biological transmission Effects 0.000 claims description 4
- 238000013139 quantization Methods 0.000 claims description 2
- 238000013144 data compression Methods 0.000 claims 10
- 238000012856 packing Methods 0.000 claims 2
- 238000006243 chemical reaction Methods 0.000 claims 1
- 238000004020 luminiscence type Methods 0.000 claims 1
- 238000012545 processing Methods 0.000 claims 1
- 239000002699 waste material Substances 0.000 abstract description 3
- 238000004891 communication Methods 0.000 abstract description 2
- 230000001629 suppression Effects 0.000 abstract description 2
- 238000013507 mapping Methods 0.000 description 7
- 239000003086 colorant Substances 0.000 description 5
- 230000008859 change Effects 0.000 description 4
- 230000008901 benefit Effects 0.000 description 2
- 238000012937 correction Methods 0.000 description 2
- 238000009826 distribution Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000004044 response Effects 0.000 description 2
- 230000003044 adaptive effect Effects 0.000 description 1
- 230000004075 alteration Effects 0.000 description 1
- 230000003139 buffering effect Effects 0.000 description 1
- 238000012512 characterization method Methods 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000003384 imaging method Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 230000003252 repetitive effect Effects 0.000 description 1
- 238000005070 sampling Methods 0.000 description 1
- 230000035945 sensitivity Effects 0.000 description 1
- 238000000638 solvent extraction Methods 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N7/00—Television systems
- H04N7/12—Systems in which the television signal is transmitted via one channel or a plurality of parallel channels, the bandwidth of each channel being less than the bandwidth of the television signal
-
- 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/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
- H04N19/593—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving spatial prediction techniques
-
- 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/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
-
- 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/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/169—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
- H04N19/186—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being a colour or a chrominance component
-
- 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/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods 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/13—Adaptive entropy coding, e.g. adaptive variable length coding [AVLC] or context adaptive binary arithmetic coding [CABAC]
-
- 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/60—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
-
- 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/90—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using coding techniques not provided for in groups H04N19/10-H04N19/85, e.g. fractals
- H04N19/91—Entropy coding, e.g. variable length coding [VLC] or arithmetic coding
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
픽처 품질에 기여하지 않는 다중 소스로부터 리던던시들을 전송함으로서 유발되는 대역폭을 낭비하지 않는 시스템을 생성하기 위해 블록 코딩 과정을 이용하는, 전용 방송 시스템 및 비디오 링크처럼, 고화질 협대역폭 장비에 적합한 TV 통신 방법 및 시스템이 공개된다. 차동 순서 비디오 인코딩 방법(DOVE)은 범용의 4.5MHz 잔류 측파대 억제 TV 시스템의 대역폭의 50%로 운반할 수 있고 실시간 TV 인코딩(14)에 의한 진실한 고품질 비디오를 제공할 수 있어야 한다는 필요성에 따른 비디오 코딩 기법을 제공한다. 다중 소스 리던던시를 발견 및 제거함에 바탕한 효율적 코딩 알고리즘은 리던던시들을 특성화하고, 차이가 나는 정보만을 인코딩하는 효율적 코드 세트를 실시간으로 생성하여, 풀 4.5 MHz 대역폭에 대한 필요성을 제거한다.TV communication methods and systems suitable for high definition narrow bandwidth equipment, such as dedicated broadcast systems and video links, that use a block coding process to create a system that does not waste bandwidth caused by transmitting redundancy from multiple sources that do not contribute to picture quality. Is released. Video according to the need for differential order video encoding method (DOVE) can carry 50% of the bandwidth of a general purpose 4.5MHz residual sideband suppression TV system and provide true high quality video by real time TV encoding 14 Provide coding techniques. An efficient coding algorithm based on finding and removing multi-source redundancy characterizes redundancies and generates in real time an efficient code set that encodes only the difference information, eliminating the need for a full 4.5 MHz bandwidth.
Description
본 발명은 텔레비전 수단 및 방법에 관한 것으로서, 특히, 화소 제시 품질에 기여하지 않는 여러 리던던시(redundancies)들을 전송함으로서 유발되는 대역폭을보존하여 대역폭 낭비를 줄이는 텔레비전 시스템에 관한 것이다. 특히 본 발명은 반복적이지 않은 화소 데이터만을 전송하기 위한 코딩 시스템들에 관한 것이다. 비교적 협대역폭에서의 고화질 TV에 대한 수요가 존재한다.TECHNICAL FIELD The present invention relates to television means and methods, and more particularly, to a television system that reduces bandwidth waste by conserving bandwidth caused by transmitting multiple redundancies that do not contribute to pixel presentation quality. In particular, the present invention relates to coding systems for transmitting only non-repetitive pixel data. There is a demand for high definition TV at relatively narrow bandwidth.
블록 코딩 방법에 의한 TV 신호 압축은 본 발명의 발명자들의 공지 특허의 주제이다. 이 공지 특허들은 특정 종류의 리던던트 데이터의 선형 코딩을 위한 구체적 알고리즘들에 관한 것으로서, 본 발명과 같이 적응성의 알고리즘에 관한 것이아니다.TV signal compression by the block coding method is the subject of known patents of the inventors of the present invention. These known patents relate to specific algorithms for linear coding of certain kinds of redundant data, not to adaptive algorithms as in the present invention.
샘플링된 디지털 비디오에는, 아날로그 비디오 스트림에 포함된 최고 주파수성분의 2배 이상의 속도로 샘플링하는 데 필요한 해상도를 유지하기 위하여, 리던던시가 실질적으로 존재한다. NTSC 비디오의 경우에, 이는 최소 9MHz(2 × 4.5 MHz)에 해당하지만, 실제 비디오는 일부 저주파 성분을 가지기 때문에, 샘플에는 일부 리던던시가 존재한다.In the sampled digital video, there is substantially redundancy in order to maintain the resolution needed to sample at a rate at least twice the highest frequency component contained in the analog video stream. In the case of NTSC video, this corresponds to at least 9 MHz (2 x 4.5 MHz), but there is some redundancy in the sample since the actual video has some low frequency components.
각각의 샘플의 깊이를 오버샘플링함으로서 그 외 다른 리던던시가 확인된다.예를 들어, 칼라당 8비트를 세 개의 칼라(가령, R, G, B, 또는 Y, U, V)로 디지털화하면, 샘플당 24 비트를 얻을 수 있다. 이때 각각의 샘플은 1670만개까지 가능한칼라 중 한가지를 표현할 수 있다. 512 × 480으로 샘플링하면, 245,760개의 화소들을 얻을 수 있다. 245,760 개의 화소들을 모두 서로 다른 색상으로 표현할 수 있다 하더라도, 어떤 주어진 비디오 픽처에 대하여, 245,760개의 색상을 표현하는 데 18비트만이 필요하다. 실제로, 한 개의 픽처가 비교적 일정한 칼라의 물체들로 구성되기 때문에, 주어진 비디오 프레임 내에서 실제 칼라의 수는 245,760개보다 훨씬 적다.Other redundancies are identified by oversampling the depth of each sample. For example, if 8 bits per color are digitized into three colors (e.g., R, G, B, or Y, U, V), the sample You can get 24 bits per second. Each sample can represent one of up to 16.7 million colors. If we sample at 512 x 480, we can get 245,760 pixels. Although all 245,760 pixels can be represented in different colors, for any given video picture, only 18 bits are needed to represent 245,760 colors. In fact, since one picture consists of objects of relatively constant color, the actual number of colors within a given video frame is much less than 245,760.
비디오에서 또다른 형태의 리던던시(redundancy)는 인터프레임(interframe)이다. 일련의 개별 비디오 프레임들에서, 프레임들간 차이가 비교적 작게 나타난다고 예측하는 것이 합리적이다. 인터프레임 리던던시를 이용하는 것이 약 600%의 추가적인 압축률을 유발할 수 있으나, 항상 인터프레임 리던던시가 존재하는 것은 아니다. 실제 개별 비디오에 따라, 인터프레임 리던던시가 매우 높을 수도 있고 0일수도 있다.Another form of redundancy in video is interframe. In a series of individual video frames, it is reasonable to predict that the differences between the frames appear relatively small. Using interframe redundancy can result in an additional compression rate of about 600%, but interframe redundancy does not always exist. Depending on the actual individual video, the interframe redundancy may be very high or zero.
도 1은 본 발명의 차동 순서 비디오 인코딩(DOVE) 코딩 방법의 본질적 과정요소들에 대한 기능적 측면의 순서도.1 is a flow diagram of the functional aspects of the essential process elements of the differential order video encoding (DOVE) coding method of the present invention.
본 발명은 픽처 전송 전용 시스템 및 비디오 링크같은 협대역의 고화질 장치에 특히 적합한 TV 통신용 블록 코딩 방법에 관한 발명이다. 이 블록 코딩 방법은 픽처 제시의 품질에 기여하지 않는 다중 소스로부터 리던던시를 전송함으로서 유발되는 대역폭을 낭비하지 않는 시스템을 제공한다. 본 발명은 차동 순서 비디오 인코딩(DOVE; Differential Order Video Encoding) 기법을 이용하여, 4.5MHz 잔류 측 파대 억제 TV 시스템의 대역폭의 반으로 전송하기 위한 실시간 TV 인코딩으로 진실한 고품질 비디오를 생성하는 것이다. 다중 소스 리던던시를 발견하여 제거하는 개념에 기초한 효율적 코딩 알고리즘은, 리던던시를 특성화하며, 이어서, 서로 다른정보만을 인코딩하기 위한 효율적 코드 세트를 실시간으로 생성하여, 풀 4.5 MHz 대역폭에 대한 필요성을 제거한다.The present invention relates to a block coding method for TV communication, which is particularly suitable for narrowband high definition devices such as picture transmission dedicated systems and video links. This block coding method provides a system that does not waste bandwidth caused by transmitting redundancy from multiple sources that do not contribute to the quality of picture presentation. The present invention utilizes a differential order video encoding (DOVE) technique to generate true high quality video with real-time TV encoding for transmission at half the bandwidth of a 4.5 MHz residual sideband suppression TV system. An efficient coding algorithm based on the concept of detecting and eliminating multiple source redundancy characterizes redundancy, and then generates an efficient code set for encoding only different information in real time, eliminating the need for a full 4.5 MHz bandwidth.
차동 순서 비디오 인코딩(DOVE)의 목적은 첫 번째로, 다양한 픽처들에 대해 거의 균일한 인터프레임 코딩을 제공하는 것이고, 두 번째로, 인터프레임 리던던시의 폭넓은 가변성을 고려하여, 인코더로부터 비교적 저속의 데이터 속도로 양호한 결과를 제공하는 인터프레임 코딩을 제공하는 것이며, 세 번째로, TV 방송 표준과 부합하는 고품질 비디오를 항상 제공하는 것이고, 그리고 네 번째로, 마이크로회로기술로 용이하게 구현될 수 있는 비디오 코딩 방법을 제공하는 것이다.The purpose of differential order video encoding (DOVE) is firstly to provide nearly uniform interframe coding for various pictures, and secondly, to account for the wide variability of interframe redundancy, Provide interframe coding that provides good results at data rates; thirdly, always provide high-quality video that conforms to TV broadcast standards; and fourthly, video that can be easily implemented with microcircuit technology. It is to provide a coding method.
본 발명에 따른 타동 순서 비디오 인코딩(DOVE) 시스템은 YUV 칼라 좌표를 이용하여, Y 샘플에 대해 U 및 V를 서브샘플링함으로서 저주파 칼라 성분들을 활용한다.A passive order video encoding (DOVE) system according to the present invention utilizes low frequency color components by subsampling U and V for Y samples using YUV color coordinates.
당 분야에 공지되어있지만, 칼라 비디오에 대한 제작자 표준과 부호 정의가 아래에서 설명된다. 즉, H. W. Sams and Co., Inc., ITT Corp.의 "Reference Data for Radio Engineers", 제 5판, 28-33쪽을 보면,Although known in the art, producer standards and sign definitions for color video are described below. In other words, see H. W. Sams and Co., Inc., ITT Corp., "Reference Data for Radio Engineers," 5th edition, 28-33.
제작자 표준은 다음과 같다.The producer standards are as follows:
EM = 0.30ER + 0.59EG + 0.11EB E M = 0.30E R + 0.59E G + 0.11E B
EI = 0.06ER - 0.28EG - 0.32EB E I = 0.06E R -0.28E G -0.32E B
EQ = 0.21EPVR - 0.52EG + 0.31EB E Q = 0.21 EPVR-0.52 E G + 0.31 E B
U는 칼라 좌표 EQ이고, V는 칼라 좌표 EI이며, Y는 칼라 좌표 EM이다.U is color coordinate E Q , V is color coordinate E I , and Y is color coordinate E M.
dU = 화소 U - 이전 화소 UdU = pixel U-previous pixel U
dV = 화소 V - 이전 화소 VdV = pixel V-previous pixel V
dY = 화소 Y - 이전 화소 YdY = pixel Y-previous pixel Y
dx = dU 또는 dVdx = dU or dV
YO = 한 블록 내 화소들의 양으로 나눈 한 블록 내 모든 화소값들의 합계YO = sum of all pixel values in a block divided by the amount of pixels in a block
locnt = 한 블록 내 화소들의 양 < YOlocnt = amount of pixels in a block <YO
hicnt = 한 블록 내 화소들의 양 = > YOhicnt = amount of pixels in a block => YO
cpt = 한 블록 내 화소들의 양으로 나눈 한 블록 내 모든 "정량화된" 화소들의 합계cpt = sum of all "quantized" pixels in a block divided by the amount of pixels in a block
abs(dx) = dx 반올림abs (dx) = dx rounded
sgn(dx) = dx의 부호, 즉 + 또는 -, 또는 0sgn (dx) = the sign of dx, i.e. + or-, or 0
7비트 RGB 값들은 세계 표준 RGB 비를 바탕으로 다음의 정수 연산 알고리즘에 따라 7비트 YUV 값으로 변환될 수 있다. 즉,7-bit RGB values can be converted to 7-bit YUV values using the following integer arithmetic algorithm based on the world standard RGB ratio. In other words,
Y = ((38 * r) + (75 * g) + (15 * b))/128Y = ((38 * r) + (75 * g) + (15 * b)) / 128
U = 64 + (((-22 * r) + (-42 * g) + (64 * b))/128)U = 64 + (((-22 * r) + (-42 * g) + (64 * b)) / 128)
V = 64 + (((64 * r) + (-54 * g) + (-10 * b))/128)V = 64 + (((64 * r) + (-54 * g) + (-10 * b)) / 128)
U와 V에 대한 + 64 오프셋의 용도는 이들이 양의 정수로 취급되고 처리될 수 있도록 하는 것이다. 이 고정 오프셋은 아래 나타나는 바와 같이 RGB 비디오 디스플레이로 다시 변환하기 위한 알고리즘에서 제거된다.The purpose of the +64 offsets for U and V is to allow them to be treated and treated as positive integers. This fixed offset is removed from the algorithm for converting back to an RGB video display as shown below.
red = Y + (178 * (V-64)/128)red = Y + (178 * (V-64) / 128)
grn = Y - (89 * (V-64)/128) - (43 * (U-64)/128)grn = Y-(89 * (V-64) / 128)-(43 * (U-64) / 128)
blu = Y + (222 * U-64)/128)blu = Y + (222 * U-64) / 128)
DOVE 코딩 기법의 첫 번째 단계는 비선형 차이 퀀타이저(11)로 최적으로 표현된다. 정보가 "차를 형성하는 차이" 로 간주될 경우, 차이 정량화의 개념이 더 쉽게 이해될 것이다. 개별 화소들이 블록으로 배열된다. 예를 들어, 블록 (6×6)같은 각각의 메이저 블록은 4개의 마이너 블록 (3×3)으로 추가적으로 배열된다. 상기 메이저 블록과 네 개의 마이너 블록의 U 및 V 값들은 3×3 블록의 모든 U와 V의 합들을 9로 나누고, 4개의 마이너 블록의 U와 V 값들을 합하여 4로 나눔으로서 얻을 수 있다. 구현을 단순화하기 위해, 9로 나누는 것은 l/l6 + l/32+ l/64를 이용한 정수 연산으로 근사된다. 따라서, 우리는 6:1:1과 3:1:1의 비율로 Y에 대하여 서브 샘플링된 U와 V의 값들을 얻는다. 이 값들은 Y 성분에 대하여 사용되는 퀀타이저와 유사한 차이 퀀타이저를 이용하여 정량화된다. U 및 V 퀀타이저의 모델이 아래에 도시되며, 이때, dx는 dU나 dV를 의미한다.The first step of the DOVE coding technique is optimally represented by the nonlinear difference quantizer 11. If the information is regarded as a "difference forming a difference", the concept of difference quantification will be easier to understand. Individual pixels are arranged in blocks. For example, each major block, such as block (6 × 6), is further arranged into four minor blocks (3 × 3). The U and V values of the major block and the four minor blocks can be obtained by dividing the sums of all U and V of the 3x3 block by 9 and the sum of the U and V values of the four minor blocks by 4. To simplify the implementation, dividing by 9 is approximated by integer operations using l / l6 + l / 32 + l / 64. Thus, we get the values of U and V subsampled for Y at a ratio of 6: 1: 1 and 3: 1: 1. These values are quantified using a differential quantizer similar to the quantizer used for the Y component. Models of the U and V quantizers are shown below, where dx means dU or dV.
if abs(dX) > 0 and abs(dX) < 2, then dX <--- 1 * (sgn(dX))if abs (dX)> 0 and abs (dX) <2, then dX <--- 1 * (sgn (dX))
if abs(dX) > 1 and abs(dX) < 5, then dX <--- 3 * (sgn(dX))if abs (dX)> 1 and abs (dX) <5, then dX <--- 3 * (sgn (dX))
if abs(dX) > 4 and abs(dX) < 10, then dX <--- 7 * (sgn(dX))if abs (dX)> 4 and abs (dX) <10, then dX <--- 7 * (sgn (dX))
if abs(dX) > 9 and abs(dX) < 17, then dX <--- 13 * (sgn(dX))if abs (dX)> 9 and abs (dX) <17, then dX <--- 13 * (sgn (dX))
if abs(dX) > 16 and abs(dX) < 32, then dX <--- 24 * (sgn(dX))if abs (dX)> 16 and abs (dX) <32, then dX <--- 24 * (sgn (dX))
if abs(dX) > 31 and abs(dX) < 47, then dX <--- 39 * (sgn(dX))if abs (dX)> 31 and abs (dX) <47, then dX <--- 39 * (sgn (dX))
if abs(dX) > 46 then dX <--- 54 * (sgn(dX))if abs (dX)> 46 then dX <--- 54 * (sgn (dX))
퀀타이저(11)에서의 오버플로(overflow)나 언더플로(underflow)에 대하여 테스트(12)가 이루어지는 데, 이때, dX + 이전 X > 127 또는 < 0 이면, dX는 그 다음낮은 정량화 값이 되고, 다시 테스트가 이루어진다. 6 x 6 UV 가 선행 (수평) 블록과 차이를 보이며, 이 차이들이 정량화된다. 4개의 개별적인 소블록들이 대블록과 차이를 보인다. 정량화후, 4개의 소블록 중 하나의 차가 한도를 넘을 경우, 3x3 블록이 대블록과 함께 인코딩된다(14). 각각의 6 x 6 블록은 인코딩이 단일 대블록에 대한 인코딩인 지, 상기 대블록 더하기 한 개 이상의 소블록에 대한 인코딩인 지를 표시하기 위해 이에 관련된 단일 비트를 가진다. 따라서, 서브샘플링 비는 6:1:1과 3:1:1 사이에서 동적으로 변하는 값이 되며, 이는 U와 V의 실제 변화에 대한 상기 한도의 설정치에 따라 좌우된다. 정량화된 U와 V 값들이 대블록들 및 어떤 소블록들에 대해서 인코딩되며, 소블록의 값들은 조절가능한 오류(UVerr)만큼 대블록과 차이를 보인다. 일부 실제 인코딩 결과는 다음과 같이 나타난다.Test 12 is performed for overflow or underflow in quantizer 11, where if dX + before X> 127 or <0, then dX is the next lower quantification value. And the test is made again. 6 x 6 UV differs from the preceding (horizontal) block and these differences are quantified. Four individual small blocks differ from large blocks. After quantification, if the difference in one of the four small blocks exceeds the limit, a 3x3 block is encoded with the large block (14). Each 6 × 6 block has a single bit associated with it to indicate whether the encoding is for a single large block or for the large block plus one or more small blocks. Thus, the subsampling ratio is a value that varies dynamically between 6: 1: 1 and 3: 1: 1, depending on the setting of the limit for the actual change of U and V. Quantified U and V values are encoded for large blocks and some small blocks, and the values of the small blocks differ from the large block by an adjustable error (UVerr). Some actual encoding results look like this:
**는 시작 행(begin row)을 위한 오버헤드와 6:1:1 과 3:1:1 블록 특성화들의 코딩을 포함한다.** includes overhead for the beginning row and coding of 6: 1: 1 and 3: 1: 1 block characterizations.
선택된 두 개의 샘플 화소에 대하여, UV 성분들은 58:1 및 94:1의 비율의 경우 14비트에서 0.243 및 0.148로 각각 감소한다. CCIR은 최고 품질 스튜디오 작업의 경우 4:2:2의 UV 서브샘플링을 명시하지만, NTSC는 4:1:1을 이용한다. 3:1:1을 이용함으로서, DOVE는 NTSC보다 정확하다. 그러나, 최고품질 스튜디오 비디오만큼 정확하지는 않다.For the two sample pixels selected, the UV components are reduced to 0.243 and 0.148 at 14 bits for ratios of 58: 1 and 94: 1, respectively. CCIR specifies 4: 2: 2 UV subsampling for top quality studio work, while NTSC uses 4: 1: 1. By using 3: 1: 1, DOVE is more accurate than NTSC. However, it is not as accurate as top-quality studio video.
UV 요소에 대한 일반적인 코딩은 다음과 같다 :Common coding for UV elements is as follows:
제한된 추가적 복잡성만으로, 블록들의 한 행에 각각의 6×6 블록에 대한 특징 비트가 압축될 수 있다. 즉, 블록들의 각각의 행의 프론트의 한 스트림에 이들비트를 배열함으로서 압축될 수 있다. 압축은 이러한 비트들의 스트림을 실행-길이 코딩(15)함으로서 일어난다. 왜냐하면, 특징 비트가 "0" (다수의 리던던트 "0" )일 확률이 높기 때문이다.With only limited additional complexity, the feature bits for each 6x6 block can be compressed in one row of blocks. That is, it can be compressed by arranging these bits in one stream at the front of each row of blocks. Compression occurs by run-length coding 15 this stream of bits. This is because the probability that the feature bit is "0" (multiple redundant "0") is high.
이 비트들의 실행 길이 코딩에 대한 알고리즘이 아래에 설명된다. 다음의 서브루틴은 특징 비트가 한 개의 메모리 요소 내에 있고, 그 UVbuf의 크기는 한 행의6×6 블록의 총 수와 같다(510 화소/H의 경우 85에 해당). 결과적인 실행 길이(1 또는 0)가 메모리 LGTHbuf에 저장된다.An algorithm for execution length coding of these bits is described below. The following subroutine has feature bits in one memory element, and the size of its UVbuf is equal to the total number of 6x6 blocks in a row (equivalent to 85 for 510 pixels / H). The resulting run length (1 or 0) is stored in memory LGTHbuf.
rnlgth : '실행 길이에 대한 서브-루틴rnlgth: 'sub-routine for run length
'실행 길이 0s 와 1s 에 대하여For run lengths 0s and 1s
lgth = 0 : flip = 0 '제 1 비트는 항상 0lgth = 0: flip = 0 '1st bit is always 0
즉, 제 1 비트에는 예외가 없음을 의미 That is, there is no exception in the first bit
addrs = 0addrs = 0
for lup = 0 to 84for lup = 0 to 84
if UVbuf(lup) = flip then go to rnlg2 '상기 비트가 같다면, 계속 진행if UVbuf (lup) = flip then go to rnlg2 'If the above bits are the same, continue
if flip = 0 then flip = 1 '그렇지 않으면 비트를 바꿈(역전시킴)if flip = 0 then flip = 1 'otherwise flip bits
LGTHbuf(addrs) = lgth '실행 길이 저장LGTHbuf (addrs) = lgth 'Save execution length
addrs <-- addrs + 1 '주소를 증분addrs <-increments addrs + 1 'address
lgth = 0 '그리고 길이를 0 으로 리셋lgth = 0 'and reset the length to 0
rnlg2 :rnlg2:
lgth <-- lgth + 1lgth <-lgth + 1
next lupnext lup
'마지막 길이 값을 얻기 위하여'To get the last length value
LGTHbuf(addrs) = lgthLGTHbuf (addrs) = lgth
RETURNRETURN
개개의 실행 길이는 다음과 같이 코딩된다 :The individual run lengths are coded as follows:
Y 정보를 인코딩할 목적으로, DOVE 는 3 x 3 블록을 이용하고, Y 성분들은 6 가지 기술을 이용하여 인코딩된다.For the purpose of encoding Y information, DOVE uses 3 x 3 blocks, and the Y components are encoded using six techniques.
(1) 3 x 3 블록에서 평균 Y (YO)(1) Average Y (YO) in 3 x 3 blocks
(2) 저-진폭 (소블록)(2) low-amplitude (small block)
(3) 중-저 진폭 (중-소블록)(3) medium to low amplitude (medium to small block)
(4) 중-고 진폭 (중-대 블록)(4) medium to high amplitude (medium to large block)
(5) 고-진폭 (대블록)(5) high-amplitude (large block)
(6) 허용가능한 오류에 근거하여 Y1, Y2를 매핑(6) Map Y1 and Y2 based on allowable error
YO 는 3 x 3 블록 내 모든 Y들의 합을 9로 나눈 값이다. 구현의 단순화를 위하여, 9로 나누는 것은 1/16 + 1/32 + 1/64 를 이용한 정수 연산으로 근사된다. YO의 변화, 즉 차이는 이전 블록의 YO 를 이용하여(각각의 행에서 제 1 YO 는 절대값 YO이다) 정량화된다(16).YO is the sum of all the Y's in a 3x3 block divided by 9. To simplify the implementation, dividing by 9 is approximated by integer arithmetic using 1/16 + 1/32 + 1/64. The change, ie difference, of YO is quantified using the YO of the previous block (the first YO in each row is the absolute value YO) (16).
소블록들은, 모두 9 개의 화소에 대하여 정량화된 차이(quantized differential) Y가 정량화된 YO 에 관하여 +/-1 내에 있는 것을 특징으로 하는 블록이다. 중-소 블록은 +/-5 범위 내의 정량화된 차이(quantized differential)를 가진다. 중-대 블록은 +/-26 범위 내에서 모두 9 개의 정량화된 차이를 가지고, 대블록은 전체 범위 내에 모두 9 개의 정량화된 차이를 가진다.The small blocks are blocks characterized in that the quantized differential Y for all nine pixels is within +/- 1 with respect to quantized YO. Small to medium blocks have a quantized differential within the range +/- 5. Mid-large blocks have all 9 quantified differences within the +/- 26 range and large blocks have all 9 quantified differences within the full range.
dY = (Yn - Yn-1)와 같이 인접 화소들의 광도(luminosity)를 단순히 뺌으로서, Y에 비해 dY를 표현하는 데 필요한 비트 수가 두배가 된다. 왜냐하면, 이들은 모두 양의 정수 대신에 +/-의 풀-스케일 값을 가지기 때문이다. 그러나, Y에서보다는 dY에 리던던시에 훨씬 크기 때문에 리던던시가 실질적으로 증가한다. 이는 화소간 변화나 차이가 예측가능할 정도로 작기 때문이다. 예를 들어, Y에 대한 절대값이 매우 임의적으로 분포할 수 있으나, 위 뺄셈으로부터 매우 높은 확률로 0, +/-1 과 +/-2를 보일 수 있다.By simply subtracting the luminance of adjacent pixels, such as dY = (Yn-Yn-1), the number of bits required to represent dY is doubled compared to Y. Because they all have full-scale values of +/- instead of positive integers. However, redundancy increases substantially because redundancy is much greater at dY than at Y. This is because the change or difference between pixels is so small that it is predictable. For example, the absolute value for Y can be distributed very randomly, but it can show 0, +/- 1 and +/- 2 with a very high probability from the subtraction.
DOVE 방법은 인접 화소 차이에 의해 생성되는 리던던시를 활용한다. 더욱이, 리던던시를 더욱 증가시키기 위해, 그리고 dY를 표현하는 데 필요한 비트 수를 줄이기 위해, DOVE는 dY로 표현되는 차이 값들을 정량화한다(16). dYout = dYin |정량화|.The DOVE method takes advantage of redundancy generated by adjacent pixel differences. Moreover, to further increase redundancy, and to reduce the number of bits needed to represent dY, DOVE quantifies the difference values represented by dY (16). dYout = dYin | Quantification |.
비디오 정보의 속성을 고려함으로서 차이를 정량화하는 개념을 이해할 수 있다. 사람의 눈은 비선형에 매우 가까우며, 인접 요소들 간의 작은 절대적 밝기 차이에 민감하고 이를 잘 감지할 수 있다. 반면, 절대적인 큰 차이에는 덜 민감하다. TV 카메라에 사용되는 이미지 장치는 선형 장치이다. 사람의 눈에 보다 가깝도록 만들기 위해, TV 카메라는 "감마 교정" 이라 불리는 비선형 교정을 이용하며, 이는 높은 레벨의 밝기보다 낮은 레벨에 대해 훨씬 높은 정확도와 감도를 제공한다.By considering the nature of video information, the concept of quantifying differences can be understood. The human eye is very close to nonlinear, and is sensitive to and detects small differences in absolute brightness between adjacent elements. On the other hand, it is less sensitive to absolute large differences. The imaging device used for a TV camera is a linear device. To get closer to the human eye, TV cameras use a nonlinear correction called "gamma correction", which provides much higher accuracy and sensitivity for lower levels than higher levels of brightness.
사람의 안구의 메커니즘에 대한 이해와 각종 실험적 결과 및 경험적 산물을 기반으로 하여, 인접 화소들간 광도 차이를 정량화하는 데 사용되는 한 세트의 값들이 개발되었다. 이 정량화 값이 아래에 도시된다.Based on an understanding of the human eye mechanism and various experimental results and empirical products, a set of values has been developed that are used to quantify the difference in luminance between adjacent pixels. This quantification value is shown below.
이 퀀타이저에 입력되는 값은 0에서 +/- 127까지이다.Input values for this quantizer are 0 to +/- 127.
화소 델타 Y 와 델타 블록 YO 에 대한 dY 퀀타이저(dY QUANTIZER FOR PIXEL Delta Ys AND Delta Block YOs)DY QUANTIZER FOR PIXEL Delta Ys AND Delta Block YOs for Pixel Delta Y and Delta Block YO
if dY = 0 then dY <--- 1if dY = 0 then dY <--- 1
if abs(dY) < 3 then dY <--- 1 * (sgn(dY))if abs (dY) <3 then dY <--- 1 * (sgn (dY))
if abs(dY) > 2 AND abs(dY) < 8 then dY <--- 5 * (sgn(dY))if abs (dY)> 2 AND abs (dY) <8 then dY <--- 5 * (sgn (dY))
if abs(dY) > 7 AND abs(dY) < 19 then dY <--- 13 * (sgn(dY))if abs (dY)> 7 AND abs (dY) <19 then dY <--- 13 * (sgn (dY))
if abs(dY) > 18 AND abs(dY) < 34 then dY <--- 26 * (sgn(dY))if abs (dY)> 18 AND abs (dY) <34 then dY <--- 26 * (sgn (dY))
if abs(dY) > 33 AND abs(dY) < 51 then dY <--- 42 * (sgn(dY))if abs (dY)> 33 AND abs (dY) <51 then dY <--- 42 * (sgn (dY))
if abs(dY) > 50 AND abs(dY) < 68 then dY <--- 59 * (sgn(dY))if abs (dY)> 50 AND abs (dY) <68 then dY <--- 59 * (sgn (dY))
if dY > 67 then dY <--- 76 * (sgn(dY))if dY> 67 then dY <--- 76 * (sgn (dY))
도 1 의 (18)에서 지적되는 것처럼, 상기 정량화된 특성은 오버플로 및 언더플로에 대하여 검사된다. 정량화된 dY + 이전의 값이 127 보다 크거나 0 보다 작으면, 그 다음 낮은 정량화 값이 이용되고, 이를 다시 검사한다. 퀀타이저(16)로부터 14 개의 개별적인 값들이 존재하는 데(즉, +/-1, +/-5, +/-13, +/-26, +/-42, +/-59, 그리고 +/-76), dY에 대한 모든 값을 표현하는 데 4 비트만이 요구된다. 하지만, 일부 인코딩에 대하여 특정 값들에 대한 예측가능한 발생 빈도가 존재하기 때문에, 가변 비트-길이 코드들이 사용된다. 나중에 설명되겠지만, 화소들은 Y 정도를 인코딩하기 위해 그룹으로, 또는 3x3 화소들의 블록으로 할당된다(19).As pointed out in Fig. 1 (18), the quantified property is checked for overflow and underflow. If the value before quantified dY + is greater than 127 or less than 0, then the next lower quantification value is used and is checked again. There are 14 individual values from quantizer 16 (ie, +/- 1, +/- 5, +/- 13, +/- 26, +/- 42, +/- 59, and + / -76), only 4 bits are required to represent all values for dY. However, because there is a predictable frequency of occurrence for certain values for some encodings, variable bit-length codes are used. As will be explained later, the pixels are allocated in groups or blocks of 3x3 pixels (19) to encode Y degree.
모든 9개의 화소들이 +/-1의 dY를 가지는 소블록은 화소당 1비트 더하기 블록 ID에 대한 3비트(총 12비트)로 코딩된다. 결과적으로, 다음과 같이 5.25:1의 압축에 대해 1.33 비트/화소를 얻는다.A small block in which all nine pixels have a dY of +/− 1 is coded with 3 bits (12 bits total) for 1 bit plus block ID per pixel. As a result, 1.33 bits / pixel are obtained for a compression of 5.25: 1 as follows.
dYdY 소-블록 dY 코드Small-block dY code
-1 1-1 1
1 0 1 0
모두 9 개의 화소가 +/-5 의 범위의 dY 를 가지는 것을 특징으로 하는 중-소 블록은 화소상 2비트 더하기 블록 ID에 대한 3비트(총 21비트)로 코딩되어, 다음과 같이 3:1의 압축비에서 2.33 비트/화소를 도출한다.A small-medium block, characterized in that all nine pixels have a dY in the range of +/- 5, is coded with 3 bits (21 bits total) for a 2-bit plus block ID on a pixel, as follows: 3: 1 From the compression ratio of 2.33 bits / pixel is derived.
dYdY 중-소 블록 dY 코드Small to Small Block dY Code
-5 11-5 11
-1 10-1 10
1 00 1 00
5 01 5 01
모두 9 개의 화소가 +/-26 의 범위 내에서 dYs 를 가지는 것을 특징으로 하는 중-대 블록은, 블록 ID에 대한 3비트 더하기 화소당 3비트(총 30비트)로 코딩되어, 다음과 같이 2.1 : 1 의 압축비에서 3.33 비트/화소의 결과를 도출한다.A medium-to-large block, characterized in that all nine pixels have dYs in the range of +/- 26, is coded with 3 bits per block ID plus 3 bits per pixel (total 30 bits), as follows. The result is 3.33 bits / pixel at a compression ratio of 1 :.
dYdY 중-대 블록 dY 코드Medium to large block dY code
-26 100-26 100
-13 101-13 101
-5 110 -5 110
-1 111 -1 111
1 000 1 000
5 001 5 001
13 001 13 001
26 011 26 011
블록 내 한 개 이상의 화소에 대한 dY가 +/-26 을 넘는 것을 특징으로 하는 대블록에 있어서, 화소들에 대한 dY 의 코딩과 실질적인 통계가 아래에 제시된다. 이 블록들은 다양한 dY들에 대한 발생 빈도의 기대 확률을 활용하기 위해 가변 비트 길이 코드를 이용한다. 도시되는 두 개의 테스트 픽처는 고밀도(0036)와 저밀도(0018) 픽처를 나타낸다.For large blocks characterized in that the dY for one or more pixels in the block is greater than +/− 26, the coding and substantial statistics of dY for the pixels are presented below. These blocks use variable bit length codes to exploit the expected probability of occurrence frequency for various dY's. The two test pictures shown represent high density and low density pictures.
상기 차이(differential)와 가변 비트 길이 코딩(bit-length coding)을 정량화하면, 원래 Y 데이터에서 거의 50 %를 절감할 수 있고, 그리고 dYs 의 직접적인 순방향 코딩으로부터 약 13 %를 절감할 수 있다. 물론, 실제 코딩 결과는 통계적 분포에 따라 각각의 픽처마다 다를 것이다. 픽처 밀도의 폭넓은 기대 분포에 대하여 균일한 코딩 결과를 얻도록 코드 할당이 선정되었다. 이론적 측면으로부터, 그리고 다양한 초고품질 비디오의 다양한 개별 프레임들을 검사함으로서, 다음과 같은 사실을 결정하였다. 즉, 상기 값들을 가진 인접 화소들간의 광도 차이를 정량화하는 것은 원본 및 정량화된 픽처간에 차이가 무시할만큼 작은 것이라고 결정하였다. 이러한 정량화가 일부 값들에 대한 왜곡을 일으킬 수 있지만, 퀀타이저(16)는 구분할만한 왜곡을 최소한으로 유지하도록 설계되었다.Quantifying the differential and variable bit-length coding can save nearly 50% in the original Y data, and save about 13% from the direct forward coding of dYs. Of course, the actual coding result will be different for each picture depending on the statistical distribution. Code assignments were chosen to obtain uniform coding results over a wide range of expected distributions of picture density. From the theoretical point of view and by examining the various individual frames of the various ultra-high quality videos, the following facts were determined: That is, it was determined that quantifying the luminance difference between adjacent pixels having the above values is that the difference between the original and the quantized picture is negligibly small. While this quantification can cause distortion to some values, quantizer 16 is designed to keep the discernable distortion to a minimum.
차이를 정량화하기 위한 일부 예들이 아래에 제시된다.Some examples for quantifying the differences are given below.
예 1 : 일반적인 비디오 기울기Example 1: typical video tilt
예 2 : 임펄스 응답(63% 풀 스케일)Example 2: Impulse Response (63% Full Scale)
예 3 : 임펄스 응답(100% 풀 스케일)Example 3: Impulse Response (100% Full Scale)
신호들의 대역폭이 제한되기 때문에, 그래서 상승 시간(rise times)이 제한되기 때문에, 하나의 샘플 시간에서 신호가 0 에서 풀 스케일까지 다다를 수 없다. 4.5MHz로 대역폭이 제한되고 2 × 4.5 MHz로 샘플링된 신호의 이론적 최대 슬루 속도를 바탕으로 76에 해당하는 최대 정량화 차이가 선정되었다. 입력 신호의 변화율이 4.5MHz로 제한되지 않는다면, 76의 최대값으로 정량화하는 결과는 신호가 l/2 샘플링 속도의 유효 대역폭에 제한되는 것처럼 상승 시간을 제한할 것이다.Because the bandwidth of the signals is limited, so the rise times are limited, the signal cannot reach zero to full scale in one sample time. The maximum quantization difference corresponding to 76 was selected based on the theoretical maximum slew rate of the signal limited to 4.5 MHz and sampled at 2 × 4.5 MHz. If the rate of change of the input signal is not limited to 4.5 MHz, the result of quantification to a maximum value of 76 will limit the rise time as if the signal were limited to the effective bandwidth of the 1/2 sampling rate.
허용 오류를 바탕으로 한 블록들의 매핑에서, 코딩 처리의 단계 20, 21은 Y 저보의 압축의 중요한 추가적 레벨을 제공한다. 이는 먼저, 3×3 블록을 2가지 광도 값 Yl, Y2로 나눈다. Yl은 Y0보다 큰 값을 가지는 블록 내 모든 화소들의 합을 이러한 화소들의 양으로 나눈 값이며, Y2는 Y0 이하의 값을 가지는 블록 내 모든 화소들의 합을 이러한 화소들의 양으로 나눈 값이다.In the mapping of blocks based on tolerance error, steps 20 and 21 of the coding process provide an important additional level of compression of the Y low. This first divides a 3x3 block by two luminous intensity values Yl, Y2. Yl is the sum of all the pixels in the block having a value greater than Y0 divided by the amount of these pixels, and Y2 is the sum of all the pixels in the block having a value less than Y0 divided by the amount of these pixels.
두 경우에 제수(divisor)는 다음의 로직에 의해 항상 1 내지 8의 범위 내의 정수이다.In both cases the divisor is always an integer in the range of 1 to 8 by the following logic.
if locnt > 0 then Y2 = Y2/locntif locnt> 0 then Y2 = Y2 / locnt
if hicnt > 0 then Y1 = Y1/hicntif hicnt> 0 then Y1 = Y1 / hicnt
if hicnt = 0 or locnt = 0 then Y1 = cpt : Y2 = cptif hicnt = 0 or locnt = 0 then Y1 = cpt: Y2 = cpt
여기서, locnt 는 YO 보다 작거나 같은 화소들의 카운트이고, hicnt 는 YO보다 큰 화소들의 카운트이다. 정량화로 인한 미세 변화 때문에, 9개의 화소들이 YO보다 큰 경우와 같은 불일치가 나타날 수 있다. cpt 는 모두 9 개의 정량화된 화소들의 평균이다.Where locnt is the count of pixels less than or equal to YO and hicnt is the count of pixels greater than YO. Because of the microscopic changes due to quantification, discrepancies can occur, such as when nine pixels are larger than YO. cpt is the average of all nine quantified pixels.
hicnt 나 locnt 가 0 일 경우, Yl과 Y2 모두가 cpt 와 강제적으로 같아지기 때문에, 9 의 카운트는 결코 이용되지 않는다. 따라서, 제수로 사용되는 실제 가능한 카운트는 1 내지 8의 범위 내에 있다. 실제 카운트에서 1 을 뺌으로서, 카운트에 대한 코드가 0 내지 7이 되며, 따라서 단지 3비트에 해당한다. 8개 화소들의 최대 합은 127 × 8 = 1,016 이고, 이는 10비트에 해당하는 수다. 그러나, Yl과 Y2의정확도가 중요 쟁점사항이 아니기 때문에, 이는 단순화될 수 있고, 각 화소의 Yl 및 Y2에 대한 합들을 2로 나눈 값을 얻는 데 사용되는 Y 값이 잘려나간다. 따라서,최대 합계 값은 63 × 8 = 504가 되고, 이는 9비트 값에 해당하며, 9비트가 피제수, 3비트가 제수가 된다.If hicnt or locnt is 0, the count of 9 is never used because both Yl and Y2 are forced to equal cpt. Thus, the actual possible count used as the divisor is in the range of 1 to 8. By subtracting 1 from the actual count, the code for the count is 0 to 7, thus only 3 bits. The maximum sum of the eight pixels is 127 × 8 = 1,016, which is a number corresponding to 10 bits. However, since the accuracy of Yl and Y2 is not an important issue, this can be simplified and the Y value used to obtain the sum of the sums of Yl and Y2 of each pixel divided by two is truncated. Therefore, the maximum sum value is 63x8 = 504, which corresponds to a 9-bit value, with 9 bits being the dividend and 3 bits being the divisor.
요구되는 나눗셈은 읽기전용 메모리 탐색표에서 실행될 수 있다. 9비트 피제수 더하기 3비트 제수는 읽기전용 메모리(ROM)에 대한 12비트 주소를 형성한다. 이 로부터의 7비트 데이터가 몫이 된다(4096 × 7 = 28,672 비트 ROM). Y 값은 끝부분의 값이 잘려버린다. 그러므로, 최대 합의 값은 63 × 8 = 504 인데, 9 비트라는 결과를 일으키고, 그 다음에 나뉨을 당하는 수(피제수)는 9 비트이고 나누어지는 수(제수)는 3 비트이다.The required division can be performed in a read-only memory lookup table. The 9-bit dividend plus the 3-bit divider forms a 12-bit address for read-only memory (ROM). The 7-bit data from this is the quotient (4096 x 7 = 28,672 bit ROM). The Y value is truncated at the end. Therefore, the maximum sum value is 63 × 8 = 504, resulting in 9 bits, followed by a divided number (dividend) of 9 bits and a dividing number (divisor) of 3 bits.
이 간단한 정수 연산을 이용하여, 우리는 Yl과 Y2에 대한 값을 얻는다. 이 단계는 광도 분할(luminance partitioning)이라고도 불린다. 그 다음 단계는 9비트 맵을 발생시키는 것으로서, 이때 1은 호소가 Yl으로 표현될 것임을 의미하고, 0은 화소가 Y2로 표현될 것임을 의미한다.Using this simple integer arithmetic, we get the values for Yl and Y2. This step is also called luminance partitioning. The next step is to generate a 9-bit map, where 1 means that the appeal will be represented by Yl, and 0 means that the pixel will be represented by Y2.
맵이 발생된 후(화소당 1비트), 우리는 REMAP라 불리는 단계의 옵션을 가진다. 광도 분할 및 매핑 이후, 블록은 디코딩되고, 화소별 비교가 특정 블록 내 원본의 값들로 구현된다. 매핑에 의해 생성된 오류가 수용가능한 한도 내에 있을 경우, 상기 블록이 매핑된 블록으로 인코딩된다. 그렇지 않을 경우, 앞서 제시한 바와 같이, 소블록, 중소블록, 중대블록, 또는 대블록 중 하나가 된다.After the map is generated (1 bit per pixel), we have an option of a stage called REMAP. After luminance division and mapping, the block is decoded, and pixel-by-pixel comparison is implemented with the values of the originals in a particular block. If the error generated by the mapping is within acceptable limits, the block is encoded into the mapped block. Otherwise, as indicated above, it may be one of a small block, a small block, a large block, or a large block.
오류 허용오차에는 두가지 측면이 있다. 한가지는 매핑에 의해 유발되는 Y에서의 오류이고, 또하나는 N개의 화소들이 상기 오류를 넘는 것이다. 세 종류의 블록들 각각(중소 블록, 중대블록, 대블록)이 매핑 처리로 넘어가 오류를 검사받는다(21). 소블록들이 화소당 1비트만으로 인코딩되기 때문에, 매핑 처리는 추가적인 압축을 제공하지 않는다. 따라서 소블록들은 매핑 처리에 제공되지 않는다.There are two aspects to error tolerance. One is the error in Y caused by the mapping, and the other is that N pixels exceed the error. Each of the three types of blocks (small, medium, and large blocks) goes to the mapping process and is checked for errors (21). Since the small blocks are encoded with only 1 bit per pixel, the mapping process does not provide additional compression. Thus, small blocks are not provided for the mapping process.
YO 차이를 정량화하고 인코딩하는 것(23)은 이전 블록의 YO를 이용함으로서 구현되며, 이때, 각 행의 제 1 YO는 절대값 YO이고, 모두 9개의 화소에 대해 정량 화된 차이 Y가 정량화된 YO에 대해 +/- 1 범위 내에 있는 블록으로 소블록들의 특징이 형성되고, 중소블록들은 +/- 5 범위 내의 정량화된 차이를 가지며, 중대블록들은 +/- 26의 범위로 모두 9개의 정량화된 차이를 가진다. 대블록들은 풀 스케일로 모두 9개의 정량화된 차이를 가진다. 앞서 매핑되지 않은 정량화된 차이를 인코딩(25)하는 과정이 실행되며, 출력에 대한 데이터를 버퍼링 및 조직화(26)하는 과정이 실행된다.Quantifying and encoding the YO difference (23) is implemented by using the YO of the previous block, where the first YO of each row is the absolute value YO, and the quantized difference Y for all nine pixels is quantified. Small blocks are characterized by blocks that fall within a range of +/− 1 for, small blocks have a quantified difference within the range of +/− 5, and large blocks have a total of nine quantified differences within the range of +/− 26. Has Large blocks have nine quantified differences at full scale. The process of encoding 25 the previously unquantized quantified differences is performed, and the process of buffering and organizing data 26 for the output is performed.
따라서, 모든 목적과 장점들을 만족시키는 신규한 차동 순서 비디오 인코딩시스템(DOVE)이 설명되었다. 본 발명의 여러 변화, 수정, 변경, 그 외 다른 이용,적용 등이 도면 및 청구범위와 함께 본 명세서를 읽고나면 명백해질 것이다. 발명의 사상 및 범위를 벗어나지 않는 모든 이러한 변경 및 수정 등은 청구범위에 의해서만 제한되는 본 발명에 의해 포함된다고 간주되어야 한다.Thus, a novel differential order video encoding system (DOVE) has been described that satisfies all purposes and advantages. Various changes, modifications, alterations, other uses, applications, etc. of the present invention will become apparent upon reading this specification in conjunction with the drawings and claims. All such changes and modifications, etc. without departing from the spirit and scope of the invention should be considered to be encompassed by the invention, which is limited only by the claims.
Claims (15)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR10-1998-0709092A KR100462855B1 (en) | 1996-05-06 | 1997-05-02 | Differential Order Video encoding System |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US08/642,900 | 1996-05-06 | ||
KR10-1998-0709092A KR100462855B1 (en) | 1996-05-06 | 1997-05-02 | Differential Order Video encoding System |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20000010943A KR20000010943A (en) | 2000-02-25 |
KR100462855B1 true KR100462855B1 (en) | 2005-06-23 |
Family
ID=43665192
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR10-1998-0709092A Expired - Fee Related KR100462855B1 (en) | 1996-05-06 | 1997-05-02 | Differential Order Video encoding System |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR100462855B1 (en) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100368469B1 (en) * | 2000-04-11 | 2003-01-24 | 성득제 | Method of forwarding a will automatically |
-
1997
- 1997-05-02 KR KR10-1998-0709092A patent/KR100462855B1/en not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
KR20000010943A (en) | 2000-02-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US5739861A (en) | Differential order video encoding system | |
US5164819A (en) | Method and system for coding and compressing color video signals | |
US4663660A (en) | Compressed quantized image-data transmission technique suitable for use in teleconferencing | |
US6181822B1 (en) | Data compression apparatus and method | |
CA2403194C (en) | Enhanced compression of gray-level images | |
KR100402666B1 (en) | Bit-depth extension of digital displays using noise | |
US6040876A (en) | Low intensity contouring and color shift reduction using dither | |
US4745473A (en) | Hybrid image compression system | |
US4454546A (en) | Band compression device for shaded image | |
US7233619B1 (en) | Variable general purpose compression for video images (ZLN) | |
US8537898B2 (en) | Compression with doppler enhancement | |
JPH01200883A (en) | Decoder | |
US4467346A (en) | Adaptive quantizer | |
US9030568B2 (en) | Data processing apparatuses, data processing method, program, and camera system | |
KR0181030B1 (en) | Apparatus for transmitting bitplane compressed by means of binary image | |
KR100462855B1 (en) | Differential Order Video encoding System | |
JPS63190473A (en) | Method and apparatus for compressing quantity of information on multi-gradation picture data | |
JPS6359187A (en) | Highly efficient encoder | |
Banerjee et al. | An efficient dynamic image compression algorithm based on block optimization, byte compression and run-length encoding along Y-axis | |
KR100273194B1 (en) | Apparatus for extracting histogram of moving picture | |
KR100436765B1 (en) | Apparatus and method for signal processing in a digital video system | |
JPH06105169A (en) | High-efficiency encoder for digital image data. | |
JPH04177916A (en) | Picture data coding circuit | |
CN116347095A (en) | Digital image encoders, decoders, processors and electronics | |
JPH02202285A (en) | Adaptive encoding device |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PA0105 | International application |
Patent event date: 19981104 Patent event code: PA01051R01D Comment text: International Patent Application |
|
PG1501 | Laying open of application | ||
A201 | Request for examination | ||
PA0201 | Request for examination |
Patent event code: PA02012R01D Patent event date: 20020424 Comment text: Request for Examination of Application |
|
E902 | Notification of reason for refusal | ||
PE0902 | Notice of grounds for rejection |
Comment text: Notification of reason for refusal Patent event date: 20040316 Patent event code: PE09021S01D |
|
E701 | Decision to grant or registration of patent right | ||
PE0701 | Decision of registration |
Patent event code: PE07011S01D Comment text: Decision to Grant Registration Patent event date: 20040920 |
|
GRNT | Written decision to grant | ||
PR0701 | Registration of establishment |
Comment text: Registration of Establishment Patent event date: 20041211 Patent event code: PR07011E01D |
|
PR1002 | Payment of registration fee |
Payment date: 20041213 End annual number: 3 Start annual number: 1 |
|
PG1601 | Publication of registration | ||
PR1001 | Payment of annual fee |
Payment date: 20071205 Start annual number: 4 End annual number: 4 |
|
PR1001 | Payment of annual fee |
Payment date: 20081208 Start annual number: 5 End annual number: 5 |
|
PR1001 | Payment of annual fee |
Payment date: 20091009 Start annual number: 6 End annual number: 6 |
|
PR1001 | Payment of annual fee |
Payment date: 20101014 Start annual number: 7 End annual number: 7 |
|
FPAY | Annual fee payment |
Payment date: 20111124 Year of fee payment: 8 |
|
PR1001 | Payment of annual fee |
Payment date: 20111124 Start annual number: 8 End annual number: 8 |
|
FPAY | Annual fee payment |
Payment date: 20121203 Year of fee payment: 9 |
|
PR1001 | Payment of annual fee |
Payment date: 20121203 Start annual number: 9 End annual number: 9 |
|
LAPS | Lapse due to unpaid annual fee | ||
PC1903 | Unpaid annual fee |