WO2012115486A2 - 영상의 변환 방법 및 장치, 및 영상의 역변환 방법 및 장치 - Google Patents
영상의 변환 방법 및 장치, 및 영상의 역변환 방법 및 장치 Download PDFInfo
- Publication number
- WO2012115486A2 WO2012115486A2 PCT/KR2012/001446 KR2012001446W WO2012115486A2 WO 2012115486 A2 WO2012115486 A2 WO 2012115486A2 KR 2012001446 W KR2012001446 W KR 2012001446W WO 2012115486 A2 WO2012115486 A2 WO 2012115486A2
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- matrix
- discrete cosine
- transform
- upscaling
- block
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T9/00—Image coding
- G06T9/007—Transform coding, e.g. discrete cosine transform
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F17/00—Digital computing or data processing equipment or methods, specially adapted for specific functions
- G06F17/10—Complex mathematical operations
- G06F17/14—Fourier, Walsh or analogous domain transformations, e.g. Laplace, Hilbert, Karhunen-Loeve, transforms
- G06F17/147—Discrete orthonormal transforms, e.g. discrete cosine transform, discrete sine transform, and variations therefrom, e.g. modified discrete cosine transform, integer transforms approximating the discrete cosine transform
-
- 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
- H04N19/625—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding using discrete cosine transform [DCT]
-
- 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
- H04N19/61—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding in combination with predictive 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/60—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
- H04N19/61—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding in combination with predictive coding
- H04N19/619—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding in combination with predictive coding the transform being operated outside the prediction loop
Definitions
- the quantization unit 130 minimizes the conversion error generated by using the substituted discrete cosine transform algorithm by applying a scaling matrix in the scaling process performed with the quantization.
- FIG. 12 is a flowchart illustrating an image inverse transform method according to an embodiment of the present invention.
- an inverse quantization unit 1120 is sqrt (BB T (i, i)), the inverse of 1 / sqrt (BB T (i, i)) obtained, and in step 1330, an inverse quantization unit 1120 of the A scaling matrix S having 1 / sqrt (BB T (i, i)) as the element of the i-th row is obtained.
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Discrete Mathematics (AREA)
- Mathematical Physics (AREA)
- Theoretical Computer Science (AREA)
- Mathematical Optimization (AREA)
- Pure & Applied Mathematics (AREA)
- Data Mining & Analysis (AREA)
- Computational Mathematics (AREA)
- Mathematical Analysis (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Algebra (AREA)
- Databases & Information Systems (AREA)
- Complex Calculations (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
- Compression, Expansion, Code Conversion, And Decoders (AREA)
- Image Processing (AREA)
- Compression Of Band Width Or Redundancy In Fax (AREA)
Abstract
영상의 변환/역변환 방법 및 장치가 개시된다. 본 발명의 일 실시예에 따른 영상 변환 방법은 이산 코사인 변환에 이용되는 변환 행렬의 원소들 중 삼각함수에 기초한 값들을 소정의 유리수 값들로 치환하고, 치환된 이산 코사인 변환 행렬을 이용하여 이산 코사인 변환을 수행할 때, 변환 과정에서 발생되는 중간값의 분모의 최대값에 기초하여 입력 신호를 업스케일링 및 변환하며, 변환된 신호를 다운스케일링한다.
Description
본 발명은 영상 부호화, 복호화 방법 및 장치에 관한 것으로, 보다 상세히는 큰 크기의 블록에 대한 향상된 변환, 역변환 방법 및 장치에 관한 것이다.
H.264 및 MPEG-4와 비디오 코딩 방식에서, 비디오 신호는 시퀀스, 프레임, 슬라이스, 매크로 블록 및 블록으로 계층적으로 분할되며, 블록은 최소 처리 유닛이 된다. 인코딩 측에서, 인트라-프레임 또는 인터-프레임 예측을 통하여, 블록의 예측 잔여 정보(residual)가 획득되며, 블록 변환은 에너지가 소수의 계수에 집중될 수 있도록 실행되고, 양자화, 스캐닝, 런 렝스 코딩(Run Length Coding) 및 엔트로피 코딩을 통하여 이미지 데이터는 압축된다. 디코딩 측에서, 엔트로피 코딩의 블록 변환 계수가 비트 스트림으로부터 추출된다. 그리고 역양자화 및 역변환을 통하여, 블록의 예측 잔여 정보(residual)는 재구성되며, 예측 정보는 블록의 비디오 데이터를 재구성하기 위하여 사용된다. 인코딩-디코딩 처리절차에서, 변환 모듈은 비디오 압축의 기초이며, 변환성능은 코덱의 일반적인 성능에 직접적으로 영향을 준다.
이산 코사인 변환(DCT)은 MPEG-1 및 H.261과 같은 초기 비디오 코딩 표준에서 채택되었다. 1974년 이산 코사인 변환의 제안 이후에, DCT는 이미지 및 비디오 코딩 분야에서 널리 사용되었다. DCT는 변환 도메인 내의 이미지 요소의 상관성을 제거하며, 고효율 이미지 압축을 위한 기반을 제공한다. 그러나, DCT 변환 행렬은 부동 소수점 수(floating point number)로 표현되기 때문에, 대량의 부동 소수점 계산으로 인하여 많은 시스템 자원이 소모된다. 변환 효율을 개선하는 한편, 큰 크기의 블록에 대한 변환을 수행하기 위하여 새로운 DCT 변환 알고리즘의 필요성이 증가되었다.
본 발명이 해결하고자 하는 기술적 과제는 이산 코사인 변환 과정에서 발생하는 변환 에러를 감소시키고, 이산 코사인 변환 과정의 연산 속도를 향상시키는 영상 변환/역변환 방법 및 장치를 제공하는 것이다.
본 발명은 변환부로 입력되는 신호 및 변환부로부터 출력되는 신호의 스케일링 과정을 통해 변환 에러를 감소시키고, 이산 코사인 변환 과정의 연산 속도를 향상시킨다.
본 발명에 따르면 큰 크기의 블록에 대한 변환 및 역변환시에 부동 소수점 연산이 아닌 정수 기반의 연산 과정을 통해서 복잡도를 감소시키고 연산 속도를 증가시킬 수 있다.
또한, 본 발명에 따르면 삼각함수값을 유리수로 치환한 이산 코사인 변환 행렬을 이용한 변환 과정에서 발생하는 변환 에러를 감소시킬 수 있다.
도 1은 본 발명의 일 실시예에 따른 영상 부호화 장치를 도시한다.
도 2는 본 발명의 일 실시예에 따른 이산 코사인 변환의 흐름도(flow graph)를 도시한다.
도 3a는 도 2의 도면 부호 210을 확대한 도면이며, 도 3b는 도 2의 도면 부호 211을 확대한 도면이다.
도 4는 도 2의 이산 코사인 변환 흐름도 중 도면 부호 212의 흐름도에 따른 연산 과정을 설명하기 위한 참조도이다.
도 5는 도 2의 이산 코사인 변환 흐름도에 포함된 N 포인트 이산 코사인 변환 흐름도를 나타낸 참조도이다.
도 6은 도 2의 흐름도에 기초한 32 포인트 이산 코사인 변환의 흐름도를 3단계로 구분한 예이다.
도 7은 도 2의 흐름도에 기초한 32 포인트 이산 코사인 변환의 흐름도를 2단계로 구분한 예이다.
도 8은 본 발명의 다른 실시예에 따른 변환부의 구성을 나타낸 블록도이다.
도 9는 본 발명의 일 실시예에 따른 영상 변환 방법을 나타낸 플로우 차트이다.
도 10은 본 발명의 일 실시예에 따른 양자화 과정을 나타낸 플로우 차트이다.
도 11은 본 발명의 일 실시예에 따른 영상 복호화 장치를 나타낸 블록도이다.
도 12는 본 발명의 일 실시예에 따른 영상 역변환 방법을 나타낸 플로우 차트이다.
도 13은 본 발명의 일 실시예에 따라서 역양자화 행렬(V)를 획득하는 과정을 나타내는 플로우 차트이다.
본 발명의 일 실시예에 따른 영상의 변환 방법은 NxN(N은 정수) 블록의 1차원 이산 코사인 변환에 이용되는 NxN 변환 행렬의 원소들 중 삼각함수에 기초한 값들을 소정의 유리수 값들로 치환하여 치환된 이산 코사인 변환 행렬(A)를 획득하는 단계; 상기 치환된 이산 코사인 변환 행렬(A)를 이용하여 상기 NxN 블록을 변환하는 연산 과정에서 발생되는 중간값의 분모의 최대값에 기초하여, 상기 NxN 블록의 원소들의 업스케일링을 위한 업스케일링 행렬(U)를 획득하는 단계; 상기 업스케일링 행렬(U) 및 상기 치환된 이산 코사인 변환 행렬(A)를 이용하여 상기 NxN 블록을 변환하는 단계; 및 상기 NxN 블록을 변환하는 연산 과정에서 발생되는 중간값의 분모의 최대값에 기초하여, 상기 변환된 NxN 블록을 다운스케일링하는 단계를 포함하는 것을 특징으로 한다.
본 발명의 일 실시예에 따른 영상의 역변환 방법은 NxN(N은 정수) 블록의 1차원 이산 코사인 역변환에 이용되는 NxN 역변환 행렬의 원소들 중 삼각함수에 기초한 값들을 소정의 유리수 값들로 치환하여 치환된 이산 코사인 역변환 행렬(B)를 획득하는 단계; 상기 치환된 이산 코사인 변환 행렬(B)를 이용하여 상기 NxN 블록을 역변환하는 연산 과정에서 발생되는 중간값의 분모의 최대값에 기초하여, 상기 NxN 블록의 원소들의 업스케일링을 위한 업스케일링 행렬(U)를 획득하는 단계; 상기 업스케일링 행렬(U) 및 상기 치환된 이산 코사인 역변환 행렬(B)를 이용하여 상기 NxN 블록을 역변환하는 단계; 및 상기 NxN 블록을 역변환하는 연산 과정에서 발생되는 중간값의 분모의 최대값에 기초하여, 상기 역변환된 NxN 블록을 다운스케일링하는 단계를 포함하는 것을 특징으로 한다.
본 발명의 일 실시예에 따른 영상의 변환 장치는 NxN(N은 정수) 블록의 1차원 이산 코사인 변환에 이용되는 NxN 변환 행렬의 원소들 중 삼각함수에 기초한 값들을 소정의 유리수 값들로 치환하여 치환된 이산 코사인 변환 행렬(A)를 획득하고, 상기 치환된 이산 코사인 변환 행렬(A)를 이용하여 상기 NxN 블록을 변환하는 연산 과정에서 발생되는 중간값의 분모의 최대값에 기초하여, 상기 NxN 블록의 원소들의 업스케일링을 위한 업스케일링 행렬(U)를 획득하며, 상기 업스케일링 행렬(U) 및 상기 치환된 이산 코사인 변환 행렬(A)를 이용하여 상기 NxN 블록을 변환하는 변환부; 및 상기 NxN 블록을 변환하는 연산 과정에서 발생되는 중간값의 분모의 최대값에 기초하여, 상기 변환된 NxN 블록을 다운스케일링하는 다운 스케일링부를 포함하는 것을 특징으로 한다.
본 발명의 일 실시예에 따른 영상의 역변환 장치는 NxN(N은 정수) 블록의 1차원 이산 코사인 역변환에 이용되는 NxN 역변환 행렬의 원소들 중 삼각함수에 기초한 값들을 소정의 유리수 값들로 치환하여 치환된 이산 코사인 역변환 행렬(B)를 획득하고, 상기 치환된 이산 코사인 변환 행렬(B)를 이용하여 상기 NxN 블록을 역변환하는 연산 과정에서 발생되는 중간값의 분모의 최대값에 기초하여, 상기 NxN 블록의 원소들의 업스케일링을 위한 업스케일링 행렬(U)를 획득하며, 상기 업스케일링 행렬(U) 및 상기 치환된 이산 코사인 역변환 행렬(B)를 이용하여 상기 NxN 블록을 역변환하는 역변환부; 및 상기 NxN 블록을 역변환하는 연산 과정에서 발생되는 중간값의 분모의 최대값에 기초하여, 상기 역변환된 NxN 블록을 다운스케일링하는 다운 스케일링부를 포함하는 것을 특징으로 한다.
이하, 첨부된 도면을 참조하여 본 발명의 바람직한 실시예들에 대하여 구체적으로 설명한다.
도 1은 본 발명의 일 실시예에 따른 영상 부호화 장치를 도시한다.
도 1을 참조하면, 본 발명의 일 실시예에 따른 영상 부호화 장치(100)는 예측부(110), 감산부(115), 업스케일링부(116), 변환부(120), 다운스케일링부(125), 양자화부(130) 및 엔트로피 부호화부(140)를 포함한다.
예측부(110)는 입력 영상을 소정 크기의 블록들로 분할하고, 분할된 각 블록에 대하여 인터 예측 또는 인트라 예측을 통해 예측 블록을 생성한다. 구체적으로, 예측부(110)는 이전에 부호화된 후 복원된 참조 픽처의 소정 탐색 범위 내에서 현재 블록과 유사한 영역을 가리키는 움직임 벡터를 생성하는 움직임 예측 및 보상 과정을 통해 예측 블록을 생성하는 인터 예측 및 현재 블록에 인접한 주변 블록의 데이터를 이용하여 예측 블록을 생성하는 인트라 예측을 수행한다.
감산부(115)는 현재 블록의 예측 블록과 원 영상 데이터를 감산한 레지듀얼을 생성한다.
업스케일링부(116)은 변환부(120)의 입력 신호인 레지듀얼 신호를 업스케일링한다. 업스케일링은 입력 신호에 소정 배율의 업스케일링 팩터를 곱함으로써 입력 신호의 크기를 증가시키는 것이다. 후술되는 바와 같이, 본 발명의 일 실시예에 따른 변환부(120)은 변환 과정에 이용되는 원 이산 코사인 변환 행렬(A)에 포함된 삼각 함수값을 유리수로 치환한 치환된 변환 행렬(A)을 이용한다. 그러나, 변환 과정에서 유리수의 분모 성분은 나눗셈 연산 또는 라이트 시프트 연산(>>)에 해당되며, 이러한 나눗셈 연산 또는 라이트 시프트 연산(>>)에 의해서 변환 결과값의 반올림 오차(rounding error)가 발생할 수 있다. 따라서, 변환부(120)에 의한 변환 과정에서 발생할 수 있는 반올림 오차를 감소시키고, 원 이산 코사인 변환 행렬(origin_A)를 이용한 변환 결과와 치환된 이산 코사인 변환 행렬(A)을 이용한 변환 결과 사이의 차이를 최소화하기 위해서, 본 발명의 일 실시예에 따른 업스케일링부(116)는 변환 연산 과정에서 발생하는 중간값의 분모의 최대값을 고려하여 변환부(120)로 입력되는 신호의 크기를 증가시킨다. 다시 말해서, 업스케일링부(116)는 입력 신호에 소정 배율의 스케일링 팩터를 곱하여 연산 과정에서 나눗셈 연산 또는 라이트 시프트 연산(>>)에 해당하는 유리수의 분모 성분을 제거함으로써, 변환 과정에서 발생하는 변환 오차를 감소시킨다.
변환부(120)는 원래의 NxN 변환 행렬(Original_A)에 기초한 이산 코사인 변환 알고리즘에 포함된 삼각함수의 값들을 유리수로 치환한 치환된 이산 코사인 변환 행렬(A)을 이용하여 업스케일링부(116)로부터 업스케일링된 신호에 대한 이산 코사인 변환을 수행한다. 특히, 본 발명의 일 실시예에 따른 변환부(120)는 16x16 이상의 큰 크기의 블록에도 적용될 수 있는 이산 코사인 변환에 이용되는 NxN(N은 정수) 변환 행렬 또는 NxN 블록을 이산 코사인 변환하는 알고리즘, 예를 들어 Loeffler 또는 Chen의 변환 알고리즘에서 이용되는 삼각함수에 기초한 값들을 소정의 유리수 값들로 치환한 치환된 이산 코사인 변환 행렬(A)를 이용하여 입력된 NxN 블록의 신호를 주파수 영역으로 변환하여 변환 계수를 생성한다. 특히, 치환된 이산 코사인 변환 행렬(A)에 이용되는 유리수는 q/(2^p)(p 및 q는 정수)와 같이 분모가 2의 거듭제곱꼴(power of 2)인 유리수인 것이 바람직하다. 이와 같이 분모가 2의 거듭제곱꼴인 유리수를 이용하는 이유는 나눗셈 연산에 비하여 하드웨어적으로 로드가 상대적으로 작은 라이트 시프트 연산(>>)을 이용하여 유리수에 해당하는 연산이 구현될 수 있기 때문이다. 즉, 전술한 바와 같이 삼각함수값을 치환하는 유리수로써 q/(2^p)인 유리수를 이용하는 경우, '/(2^p)"에 해당하는 연산 부분은 p비트만큼 라이트 시프트 연산을 수행하는 '>>p'로 대체될 수 있다.
변환부(120)는 이산 코사인 변환에 이용되는 변환 행렬의 연산 과정에 포함된 곱셈 인수 중 삼각함수값들을 유리수 값으로 치환함으로써, 정수 기반의 덧셈 및 뺄셈 연산과 시프트 연산에 의하여 이산 코사인 변환을 수행할 수 있다. 하드웨어 측면에서 곱셈 연산을 시프트 연산으로 대체함으로써, 하드웨어에 가해지는 로드를 감소시킬 수 있으며 연산의 복잡도를 감소시켜 변환 과정과 관련된 연산 속도가 증가된다. 또한, 변환부(120)는 이산 코사인 변환 과정에 포함된 회전 변환에 해당하는 연산 과정을 동일한 결과값을 갖으면서 더 작은 곱셈 연산 과정을 포함하도록 변경할 수 있다.
도 1에서는 업스케일링부(116)과 변환부(120)가 별도의 구성 요소로 도시되었으나, 업스케일링부(116)는 변환부(120)에 병합될 수 있다. 구체적으로, 업스케일링부(116)은 변환부(120)에 의한 NxN 블록을 변환하는 연산 과정에서 발생되는 중간값의 분모의 최대값에 기초하여 획득된 업스케일링 행렬(U)를 입력된 NxN 블록에 적용하여 업스케일링을 수행할 수 있다. 또한, 변환부(120)는 치환된 이산 코사인 변환 행렬(A)를 이용하여 업스케일링부(116)로부터 출력된 신호를 변환한다. 업스케일링부(116)으로 입력되는 NxN 블록을 X라고 하면, 업스케일링부(116)에 의하여 업스케일링된 NxN 블록은 UX이며, 변환부(120)에 의하여 변환된 결과값은 AUX와 같이 표현될 수 있다. 따라서, 변환부(120)는 업스케일링 행렬(U)와 치환된 이산 코사인 변환 행렬(A)의 행렬곱(AU)을 이산 코사인 변환 행렬로 이용함으로써 입력 신호에 대한 업스케일링 과정과 변환 과정을 병합하여 수행할 수 있다.
이와 같이 업스케일링된 신호에 기초한 변환 결과값은 원 신호의 변환 결과값과 차이가 발생한다. 따라서, 다운스케일링부(126)은 변환부(120)로부터 출력되는 변환 결과값의 크기를 감소시키는 다운스케일링을 수행한다. 다운 스케일링부(126)는 변환부(120)의 출력 신호를 업스케일링부(116)에서 입력 신호에 곱하여진 스케일링 팩터로 나누어 줌으로써 다운스케일링을 수행할 수 있다. 다운 스케일링부(126)는 후술되는 바와 같이 치환된 이산 코사인 변환 행렬(A)과 원 이산 코사인 변환 행렬(Origin_A)의 변환 결과값의 차이를 보상하는 양자화부(130)에 의한 스케일링 동작에 병합될 수 있다.
양자화부(130)는 다운 스케일링부(125)로부터 다운 스케일링된 변환값을 양자화한다. 특히, 본 발명의 일 실시예에 따른 양자화부(130)는 양자화 스텝(Qstep)을 이용한 양자화 과정과 변환부(120)에서 출력되는 변환 계수들의 스케일링 과정을 결합함으로써, 변환부(120)에서 근사화된 이산 코사인 변환 행렬을 이용하여 입력 신호를 변환한 값과 원 이산 코사인 변환 행렬을 이용하여 입력 신호를 변환한 값 사이의 오차를 감소시킬 수 있다. 양자화부(130)는 치환된 이산 코사인 변환 행렬(A)의 각 원소의 크기에 기초하여 스케일링 행렬(S)을 생성하고, 스케일링 행렬(S)에 기초하여 스케일링 과정을 포함하는 양자화 행렬(MF)를 생성한다. 후술되는 바와 같이 스케일링 행렬(S)은 치환된 이산 코사인 변환 행렬(A)과 치환된 이산 코사인 변환 행렬의 전치 행렬(AT)의 곱셈 행렬(AAT)의 원소들 중 대각선에 위치한 원소들의 제곱근의 역수를 원소로 갖는 행렬이다. 양자화부(130)는 이러한 양자화 행렬(MF) 및 양자화 스텝을 변환부(120)에서 출력되는 변환값에 적용하여 스케일링 과정과 양자화 과정을 동시에 수행한다.
도 1에서는 다운 스케일링부(125)와 양자화부(130)가 별도의 구성 요소로 도시되었으나, 다운스케일링부(125)는 양자화부(130)에 병합될 수 있다. 후술되는 바와 같이, 양자화부(130)는 치환된 이산 코사인 변환 행렬(A)과 상기 치환된 이산 코사인 변환 행렬의 전치 행렬(AT)를 이용하여 스케일링 행렬(S)을 획득하고, 스케일링 행렬(S) 및 양자화 스텝(Qstep)에 기초하여 양자화 행렬(MF)를 획득한다. 다운스케일링부(125)에 의하여 변환부(120)의 출력값을 나누는 스케일링 팩터는 양자화 행렬(MF)에 병합될 수 있다. 다시 말해서, 다운스케일링부(125)로 입력되는 변환값을 X라고 하면, 다운스케일링부(125)에서 변환값 X를 나누는 스케일링 팩터를 D라고 하면, 다운스케일링부(125)에 의하여 다운스케일링된 신호는 X/D, 양자화부(130)에 의하여 양자화된 결과값은 MF*X/D와 같이 표현된다. 동일한 결과값은 (MF/D)*X와 같은 과정을 통해 획득될 수 있으므로, 결국 양자화부(130)에서 적용되는 양자화 행렬(MF)을 스케일링 팩터(D)로 나누어 줌으로써 다운스케일링부(125)는 양자화부(130)에 병합될 수 있다. 치환된 이산 코사인 변환 행렬(A)에 이용되는 유리수로써 분모가 2의 거듭제곱꼴(power of 2)인 유리수를 이용하는 경우, 스케일링 팩터(D) 역시 2의 거듭제곱꼴을 가지며, 다운스케일링은 라이트 시프트 연산(>>)으로 간단히 구현될 수 있다.
엔트로피 부호화부(140)는 양자화된 영상 데이터에 대하여 가변 길이 부호화를 수행하여 비트스트림을 생성한다.
이하, 본 발명의 일 실시예에 따른 영상 변환 방법에 대하여 구체적으로 설명한다.
도 2는 본 발명의 일 실시예에 따른 이산 코사인 변환의 흐름도(flow graph)를 도시한다. 도 3a는 도 2의 도면 부호 210을 확대한 도면이며, 도 3b는 도 2의 도면 부호 211을 확대한 도면이다.
도 2에 도시된 바와 같은 32 포인트 이산 코사인 변환의 흐름도는 N 포인트이산 코사인 변환 행렬 중 짝수 행(0번째 행, 2번째 행,...)의 성분은 대칭적(symmetric)이고, 홀수 행(1번째 행, 3번째 행,...)의 성분은 반대칭적(anti-symmetric)인 이산 코사인 변환 행렬의 특성을 이용하여, 임의의 16 포인트 이산 코사인 변환 알고리즘으로부터 구현될 수 있다. 유사하게, 도 2에 도시된 바와 같은 32 포인트 이산 코사인 변환 흐름도로부터 64포인트 이산 코사인 변환 흐름도, 128 포인트 이산 코사인 변환 흐름도, 256 포인트 이산 코사인 변환 흐름도를 획득할 수 있다.
도 2, 도 3a 및 도 3b를 참조하면, x0 내지 x31은 이산 코사인 변환의 입력값들, y0 내지 y31은 이산 코사인 변환의 출력값들을 나타낸다. 이산 코사인 역변환시에는 x0 내지 x31은 이산 코사인 역변환의 출력값, y0 내지 y31은 이산 코사인 역변환의 입력값에 해당된다. 이산 코사인 변환시에 데이터 처리 방향은 좌측에서 우측이며, 이산 코사인 역변환시에 데이터 처리 방향은 우측에서 좌측이다. 각 라인 위의 값은 각 라인을 지나는 값에 곱해지는 곱셈 인수를 나타낸다. cθ는 cosθ, sθ는 sinθ를 나타낸다. 라인에 표기된 '-'는 곱셈 인자가 -1인 경우, 즉 라인을 지나는 신호에 -1을 곱하는 것을 의미한다. -1을 곱하는 연산은 곱셈 연산이 아닌 비트 연산으로 구현될 수 있으므로 절대값이 1이 아닌 연산을 곱하는 곱셈 연산에 비하여 연산이 간단하다.
도 4는 도 2의 이산 코사인 변환 흐름도 중 도면 부호 212의 흐름도에 따른 연산 과정을 설명하기 위한 참조도이다.
도 4를 참조하면, 입력 신호를 A1 내지 A4, 출력값을 B1 내지 B4라고 하면, 도 4의 흐름도에 따라 B1 내지 B4는 다음의 수학식들; B1= A1*C(7π/16) + A4*S(7π/16); B2=A2*C(5π/16) + A3*S(5π/16); B3=-A2*S(5π/16)+A3*C(5π/16); B4==A1*S(7π/16)+A4*C(7π/16) 의 연산 과정을 통해 획득될 수 있다. 이와 유사하게, 도 2의 흐름도에 따라서 각 라인을 따라서 입력 신호에 대한 곱셈, 덧셈 및 뺄셈 등의 연산 과정을 수행함으로써 이산 코사인 변환이 수행될 수 있다.
이산 코사인 변환 흐름도(200)에 따른 이산 코사인 변환의 단점은 θ의 값에 따라서 cθ 및 sθ가 무리수(irrational number)가 될 수 있기 때문에 연산 복잡도가 증가할 수 있다는 것이다. 즉, 삼각함수값에 따라서 이산 코사인 변환 과정은 부동 소수점(floating point) 연산을 포함하게 되어 연산 복잡도가 증가될 수 있다. 따라서, 본 발명의 일 실시예에 따른 영상 변환 방법은 이산 코사인 변환에 이용되는 삼각함수값을 유리수 값으로 근사화하여 치환하고, 치환된 이산 코사인 변환 행렬을 이용하여 이산 코사인 변환을 수행하는 한편, 양자화 단계에서 스케일링을 통해 원래의 이산 코사인 변환과 최대한 유사한 결과값을 갖는 변환 방법을 제공한다.
본 발명의 일 실시예에 따르면, 변환부(120)는 원래의 NxN 변환 행렬(Original_A)에 기초한 이산 코사인 변환 알고리즘에 포함된 삼각함수의 값들을 유리수로 치환한다. 특히, 변환부(120)는 삼각함수값을 q/(2^p)(p 및 q는 정수)와 같이 분모가 2의 거듭제곱꼴(power of 2)인 유리수로 치환한다. p는 정확도값(precision value)으로써, p가 증가할수록 보다 세밀한 값의 표현이 가능하므로 삼각함수값을 보다 정확하게 유리수로 근사화할 수 있다.
이와 같이 삼각함수값을 분모가 2의 거듭제곱꼴인 유리수로 대체하여 이산 코사인 변환 과정을 수행하는 경우, 분모가 2의 거듭제곱꼴인 유리수를 이용한 연산 과정은 나눗셈 연산 대신에 시프트 연산으로 수행될 수 있으므로 연산 복잡도가 감소한다.
도 5는 도 2의 흐름도에 기초한 4 포인트, 8 포인트, 16 포인트, 32 포인트 이산 코사인 변환의 흐름도(flow graph) 구조를 도시한다.
도 5을 참조하면, 점선으로 표시된 도면 부호 510은 4 포인트 일차원 변환의 흐름도, 도면 부호 520은 8 포인트 일차원 변환의 흐름도, 도면 부호 530은 16 포인트 일차원 변환의 흐름도, 도면 부호 500은 32 포인트 일차원 변환의 흐름도를 나타낸다.
전술한 바와 같이, 삼각함수값을 q/(2^p)와 같이 분모가 2의 거듭제곱꼴(power of 2)인 유리수로 치환하여 변환을 수행하는 경우 연산 복잡도는 감소하고 연산 속도는 증가되지만, 반올림 오차가 발생할 수 있다. 도 5에 도시된 N 포인트 이산 코사인 변환의 흐름도 중 32 포인트 이산 코사인 변환 흐름도(500)을 참조하면, 출력값들은 최대 3개의 연속적인 cos 및 sin 값과 곱하여진다. 구체적으로, 출력값 y13, y19, y27 및 y5를 획득하는 경우에 최대 3개의 cos 및 sin 값이 신호에 곱해지게 된다. 예를 들어, 입력값 [x0 x1 .... x31] 으로 [1 0 ....0] 인 단위 벡터값을 입력하는 경우, 출력값 y13은 다음의 수학식; y13=c(π/4)*c(3π/16)*s(17π/64)+c(π/4)*c(17π/64)*s(3π/16)+s(π/4)*c(3π/16)*c(17π/64)-s(π/4)*s(3π/16)*s(17π/64) 과 같다. 도 5의 흐름도(500)에 따른 32 포인트 이산 코사인 변환 과정에서 연속적인 곱셈의 횟수는 최대 3번이다. 치환된 32 포인트 이산 코사인 변환 행렬(A)에 이용된 유리수값으로 p=6를 이용하는 경우, 즉 삼각함수값을 2^6를 분모로 갖는 유리수로 치환할 경우, 변환 과정에서 발생되는 중간값의 분모의 최대값은 (2^(6*3))이다. 예를 들어 전술한 y13을 획득하는 수학식을 참조하면, 각 삼각함수값을 q/(2^6)인 유리수로 치환하여 연산을 수행하는 경우, c(π/4)*c(3π/16)*s(17π/64)는 x/(2^(6*3)) (x는 정수), c(π/4)*c(17π/64)*s(3π/16)+s(π/4)*c(3π/16)*c(17π/64)는 y/(2^(6*3)) (y는 정수), s(π/4)*s(3π/16)*s(17π/64)는 z/(2^(6*3)) (z는 정수)의 형태를 갖게 되며 결국 y13은 다음의 수학식; y13= x/(2^(6*3)) + y/(2^(6*3)) + z/(2^(6*3)) 를 통해 획득된다. 이와 같은 경우, 업스케일링부(116)는 (2^(6*3))의 값을 입력 신호에 곱하여줌으로써 y13'=x+y+z와 같은 형태로 변환 연산 과정이 간단해지도록 할 수 있다.
업스케일링부(116)는 치환된 이산 코사인 변환 행렬(A)을 이용한 변환 과정에서 발생되는 중간값이 최대 K(K은 정수)개의 분모가 2^p인 유리수의 곱셈 과정을 포함하는 경우, NxN 단위 행렬에 2^(K*p)의 값을 곱한 업스케일링 행렬(U)을 획득하고, 획득된 업스케일링 행렬(U)을 N 포인트 입력 신호에 적용함으로써 업스케일링을 수행할 수 있다. 전술한 바와 같이, 변환부(120)에서 치환된 이산 코사인 변환 행렬(A)과 업스케일링 행렬(U)의 행렬곱(AU)를 이산 코사인 변환 행렬로 이용하는 경우 변환 과정에서 업스케일링이 병합되어 수행될 수 있다. 또한, 업스케일링 과정과 대응되어, 다운스케일링부(125)는 전술한 업스케일링 과정에서와 같이 치환된 이산 코사인 변환 행렬(A)을 이용한 변환 과정에서 발생되는 중간값이 최대 K개의 분모가 2^p인 유리수의 곱셈 과정을 포함하는 경우, 변환부(120)의 출력값인 NxN 변환 블록을 2^(K*p)의 값으로 나눔으로써 다운스케일링을 수행할 수 있다. 전술한 바와 같이, 다운스케일링 동작은 양자화부(130)에 의한 양자화 과정에 병합될 수 있다.
전술한 예에서는 32 포인트 이산 코사인 변환 구조를 중심으로 설명하였으나, 본 발명의 실시예에 따른 변환부(120)로 입력되는 신호에 대한 업스케일링 과정 및 변환부(120)로부터 출력되는 신호에 대한 다운스케일링 과정은 임의의 다른 포인트 이산 코사인 변환 구조에도 적용될 수 있다.
도 8은 본 발명의 다른 실시예에 따른 변환부의 구성을 나타낸 블록도이다.
전술한 본 발명에 일 실시예에 따라서 변환부(120)로 입력되는 신호를 업스케일링하는 경우 비트뎁스가 증가하여 변환부(120)에 의한 연산 과정 중에 오버플로우가 발생할 수도 있다. 따라서, 본 발명의 다른 실시예에 따르면, 변환 과정을 M(M은 정수)개의 변환 스테이지들로 구분하고, 각 M개의 변환 스테이지마다 입력되는 신호를 업스케일링하고, 출력되는 신호를 다운스케일링함으로써 변환 과정에서 발생할 수도 있는 신호의 오버플로우를 방지할 수 있다.
치환된 이산 코사인 변환 행렬(A)이 M개의 변환 행렬로 분해(factorization)되는 경우, 도 1의 업스케일링부(116), 변환부(120) 및 다운스케일링부(125)는 도 8에 도시된 바와 같이 M개의 변환 스테이지들(810, 820)로 재구성될 수 있다. M개의 변환 스테이지들(810, 820)은 각각 입력값을 업스케일링하는 제 1 내지 제 M 업스케일링부(811, 821), 분해된 변환 행렬에 기초하여 변환을 수행하는 제 1 내지 제 M 변환부(812, 822) 및 M개의 변환부(812, 822)에 의한 출력값을 각각 다운스케일링하는 제 1 내지 제 M 다운 스케일링부(813, 823)를 포함한다. M개의 업스케일링부(811, 821)는 각각 대응되는 M개의 변환부(812, 822)에 의한 연산 과정에서 발생하는 분모의 최대값을 고려하여 스케일링 팩터를 결정하고, 결정된 스케일링 팩터를 입력값에 곱하여 업스케일링을 수행한다. 전술한 바와 같이, M개의 업스케일링부(811, 821) 각각은 대응되는 변환부에 의한 변환 과정에서 발생되는 중간값이 최대 K개의 분모가 2^p인 유리수의 곱셈 과정을 포함하는 경우, NxN 단위 행렬에 2^(K*p)의 값을 곱한 업스케일링 행렬(U)을 N 포인트 입력 신호에 적용함으로써 업스케일링을 수행할 수 있다. M개의 다운스케일링부(813,823)은 각각 대응되는 변환부의 출력값을 2^(K*p)의 값으로 나눔으로써 다운스케일링을 수행할 수 있다.
도 6은 도 2의 흐름도에 기초한 32 포인트 이산 코사인 변환의 흐름도를 3단계로 구분한 예이다.
도 6을 참조하면, 32 포인트 이산 코사인 변환 흐름도를 3개의 변환 스테이지들(610, 620, 630)로 분해하는 경우, 각 변환 스테이지들(610, 620, 630)의 연산 과정에서 sin 및 cos 값은 입력 신호에 오직 1번씩만 곱해진다. 따라서, 각 변환 스테이지의 입력 신호에 2^(1*p)의 값을 곱하여 업스케일링이 수행되며, 각 변환 스테이지들의 출력값을 2^(1*p)의 값으로 나눔으로써 다운스케일링이 수행될 수 있다. 전술한 바와 같이 2의 거듭제곱을 이용한 곱셈이나 나눗셈 연산은 라이트 시프트 연산(>>) 및 레프트 시프트 연산(<<)으로 구현될 수 있다.
도 7은 도 2의 흐름도에 기초한 32 포인트 이산 코사인 변환의 흐름도를 2단계로 구분한 예이다.
도 7을 참조하면, 32 포인트 이산 코사인 변환 흐름도를 2개의 변환 스테이지들(710, 720)로 분해하는 경우, 제 1 변환 스테이지(710)은 2개의 연속적인 sin 또는 cos 값이 입력 신호에 곱해진다. 따라서, 제 1 변환 스테이지(710)의 입력 신호에 2^(2*p)의 값을 곱하여 업스케일링이 수행되며, 제 1 변환 스테이지(710)의 출력값을 2^(2*p)으로 나누어 줌으로써 다운스케일링이 수행될 수 있다. 제 2 변환 스테이지(720)는 제 1 변환 스테이지(710)의 출력값들 중 오직 출력값 y5, y13, y19 및 y27만을 변화시킨다. 따라서, 32 포인트 이산 코사인 변환 흐름도를 2개의 변환 스테이지들(710, 720)로 분해하는 경우, y5, y13, y19 및 y27을 제외한 나머지 출력값은 제 1 변환 스테이지(710)를 이용한 결과값을 이용하고, y5, y13, y19 및 y27의 출력값은 제 2 변환 스테이지(720)에 의한 변환 과정 대신, 다음의 알고리즘에 따라서 획득될 수 있다.
y13=c(π/4)*(y'(13)-y'(19));
y19=c(π/4)*(y'(13)+y'(19));
y27=c(π/4)*(y'(27)-y'(5));
y5=c(π/4)*(y'(27)+y'(5));
상기 알고리즘에서 y'(5), y'(13), y'(19), y'(27)을 각각 y5, y13, y19 및 y27과 연결된 제 1 변환 스테이지(710)의 출력 신호이다. 또한, c(π/4)=s(π/4)이므로 상기 알고리즘과 같이 제 2 변환 스테이지(720)에 의한 변환 과정이 결정될 수 있다.
만약, c(π/4)를 q/(2^p)로 치환하는 경우, 상기 알고리즘은 다음과 같이 변경될 수 있다.
y13=q*(y'(13)-y'(19))>>p;
y19=q*(y'(13)+y'(19))>>p;
y27=q*(y'(27)-y'(5))>>p;
y5=q*(y'(27)+y'(5))>>p;
p 및 q는 정수이므로 q를 곱하는 1번의 곱셈 연산을 제외하고, 제 2 변환 스테이지(720)에 의한 변환 과정은 덧셈, 뺄셈 및 시프트 연산으로 구현될 수 있다.
한편, 변환부(120)에서 이산 코사인 변환 행렬에 포함된 삼각함수를 유리수로 치환하거나, 곱셈연산의 횟수를 감소시키는 연산 구조로 대체하는 경우, 이산 코사인 변환 알고리즘이 변경되므로 원 이산 코사인 변환 알고리즘에 따른 결과값과의 차이가 발생할 수 있다. 따라서, 본 발명의 일 실시예에 따른 양자화부(130)는 양자화와 함께 수행되는 스케일링 과정에서 스케일링 행렬을 적용하여 이러한 치환된 이산 코사인 변환 알고리즘을 이용함으로써 발생되는 변환 오차를 최소화한다.
도 10은 본 발명의 일 실시예에 따른 양자화 과정을 나타낸 플로우 차트이다.
도 1 및 도 10을 참조하면, 단계 1010에서 양자화부(130)는 치환된 이산 코사인 변환 행렬(A)과 치환된 이산 코사인 변환 행렬의 전치 행렬(AT)의 곱셈 행렬(AAT)의 원소들 중 대각선 상에 위치한 (i,i)(i는 1부터 N까지의 정수)의 원소의 제곱근인 sqrt(AAT(i,i))를 획득한다. 단계 1020에서, 양자화부(130)는 sqrt(AAT(i,i))의 역수, 즉 1/sqrt(AAT(i,i))을 획득한다. 단계 1030에서, 양자화부(130)는 1/sqrt(AAT(i,i))을 i번째 행의 원소들로 갖는 스케일링 행렬(S)를 획득한다. 1/sqrt(AAT(i,i))을 s(i)라고 할 때, 양자화부(130)는 i번째 행의 모든 원소를 s(i)로 갖는 스케일링 행렬(S)을 생성한다. 단계 1040에서, 양자화부(130)는 스케일링 행렬(S)의 스케일링 행렬의 전치 행렬(ST)의 동일 위치의 원소들을 각각 곱한 값(SⓧST)과, 양자화 스텝(Qstep)을 이용하여 양자화 행렬(MF)를 획득한다. ⓧ는 원소 단위 곱셈(element-by-element multiplication, element-wise multiplication) 연산을 나타내는 것으로, 행렬의 동일 위치의 원소를 곱하는 연산을 나타낸다.
구체적으로, 스케일링 행렬(S)의 각 원소와 스케일링 행렬의 전치 행렬(ST)의 동일 위치의 원소를 곱한 행렬(SⓧST)을 PF라고 하면, 양자화 행렬(MF)은 다음의 수학식; MF=PF*2^m/Qstep 를 통해 획득될 수 있다. 여기서, Qstep은 양자화 스텝, m은 양의 정수이다. 일 예로 m=10 일 수 있다. 양자화 행렬(MF)은 모든 양자화 스텝에 대하여 정의될 필요없이 처음의 6단계의 Qstep 값인 (0.625, 0.6875, 0.8125, 0.875, 1, 1.25)에 대해서 정의된다. 왜냐하면 양자화 파라메터(QP)가 6 증가하면 양자화 스텝(Qstep)이 2배로 증가하기 때문에, 양자화 행렬(MF)는 처음의 6단계의 Qstep 값에 대해서 정의되고, 나머지 QP에 따른 양자화 행렬(MF)는 (QP mod 6) 값에 따라서 선택될 수 있다.
또한, 본 발명의 다른 실시예에 따른 양자화부(130)는 PF를 근사화함으로써 발생하는 오차를 고려하여 양자화 행렬(MF)을 다음의 수학식; MF=round(PF*2^m*PF*2^n./V)를 통해 획득할 수도 있다.
단계 1050에서, 양자화부(130)는 양자화 행렬(MF)을 적용하여 NxN 변환 블록에 대한 스케일링 및 양자화를 수행한다. 구체적으로 양자화부(130)는 양자화 행렬(MF)의 동일 위치의 원소와 NxN 변환 블록의 동일 위치의 원소를 곱한 값에 소정의 오프셋을 더한 값을 다음의 수학식; q=floor(QP/6)+m (QP는 양자화 파라메터) 의 q 비트만큼 비트 시프트 연산함으로써 양자화된 변환 계수의 크기를 결정한다. 즉, Zij를 양자화된 변환 계수값, Wij를 변환부(120)에서 출력되는 변환 계수, f를 오프셋이라고 하면, 다음의 수학식; 에 따라서 양자화된 변환 계수의 크기를 결정한다. 양자화된 변환 계수의 부호는 다음의 수학식; 에 따라서 결정된다. 여기서, '.MF'는 행렬의 동일 위치의 원소를 곱하는 벡터곱 연산을 의미한다. 전술한 바와 같이, 벡터곱 연산은 ⓧ와 같이 표현될 수도 있다. 단계 1050에 의한 양자화 과정에서, 양자화 행렬(MF)의 동일 위치의 원소와 NxN 변환 블록의 동일 위치의 원소를 곱하는 과정은 스케일링 과정에 해당하며, q 비트만큼 라이트 쉬프트 연산을 수행하는 과정은 양자화 과정에 해당된다. 전술한 바와 같이, 다운 스케일링부(125)에서 변환부(120)의 출력값을 스케일링 팩터로 나누는 다운스케일링 과정은 양자화부(130)에 의한 양자화 과정과 병합될 수 있다. 즉, 양자화 행렬(MF)를 결정된 스케일링 팩터로 나눔으로써 다운 스케일링이 양자화 과정과 함께 수행될 수 있다.
한편, 전술한 바와 같이 양자화부(130)는 양자화 행렬(MF)을 소정의 메모리에 저장하고, 변환값과의 행렬 연산을 통해 양자화를 수행한다. 본 발명의 일 실시예와 같이 큰 크기의 블록 단위로 변환을 수행하는 경우, 양자화 행렬(MF)의 크기 역시 증가되어 양자화 행렬(MF)을 저장하기 위한 메모리량이 증가한다. 따라서, 양자화 과정에 소요되는 메모리 양을 감소시키기 위하여, 본 발명의 다른 실시예에 따른 양자화부(130)는 양자화 행렬(MF)의 평균값이나 DC값을 이용한 스칼라(scalar) 연산을 통해 양자화를 수행할 수 있다. 구체적으로, 양자화부(130)는 (QP mod 6) 값에 따라서 양자화 행렬(MF)의 평균값이나 DC값을 정의하고, (QP mod 6) 값에 따라서 결정된 양자화 행렬(MF)의 평균값을 이용하여 양자화를 수행할 수 있다. 예를 들어, (QP mod 6)에 따라서 스칼라값인 MF의 평균값(MF_AVG)이 {222, 202, 171, 159, 139, 123}와 같이 정의된다고 하면, 양자화부(130)는 (QP mod 6)에 따라서 MF_AVG 중 하나의 값을 선택하고 다음의 수학식; 와 같이 양자화된 변환 계수의 크기를 결정할 수 있다.
역양자화 단계에서, 역양자화 행렬(V)을 이용한 행렬 연산 대신에 역양자화 과정에 필요한 메모리를 감소시키기 위하여, (QP mod 6) 값에 따라서 역양자화 행렬(V)의 평균값이나 DC값을 정의하고 (QP mod 6) 값에 따라서 결정된 역양자화 행렬(V)의 평균값이나 DC값을 이용하여 역양자화를 수행할 수 있다. 예를 들어, (QP mod 6)에 따라서 스칼라값인 V의 평균값(V_AVG)이 {87, 95, 113, 121, 139, 156}와 같이 정의된다고 하면, (QP mod 6)에 따라서 선택된 V_AVG의 값을 이용하여 다음의 수학식;Wij=(Zij*V_AVG)<<floor(QP/6)을 통해 양자화된 계수 Zij를 역양자화한 Wij를 획득할 수 있다.
도 9는 본 발명의 일 실시예에 따른 영상 변환 방법을 나타낸 플로우 차트이다.
도 9를 참조하면, 단계 910에서 변환부(120)는 NxN(N은 정수) 블록의 1차원 이산 코사인 변환에 이용되는 NxN 변환 행렬의 원소들 중 삼각함수에 기초한 값들을 소정의 유리수 값들로 치환하여 치환된 이산 코사인 변환 행렬(A)를 획득한다.
단계 920에서, 업스케일링부(116)는 치환된 이산 코사인 변환 행렬(A)를 이용하여 NxN 블록을 변환하는 연산 과정에서 발생되는 중간값의 분모의 최대값에 기초하여, NxN 블록의 원소들의 업스케일링을 위한 업스케일링 행렬(U)를 획득한다. 전술한 바와 같이, 치환된 이산 코사인 변환 행렬(A)을 이용한 변환 과정에서 발생되는 중간값이 최대 K(K은 정수)개의 분모가 2^p인 유리수의 곱셈 과정을 포함하는 경우, 업스케일링 행렬(U)은 NxN 단위 행렬에 2^(K*p)의 값을 곱한 행렬일 수 있다.
단계 930에서, 변환부(120)는 업스케일링 행렬(U) 및 치환된 이산 코사인 변환 행렬(A)를 이용하여 NxN 블록을 변환한다. 전술한 바와 같이, 업스케일링부(116)에 의한 업스케일링 동작은 변환부(120)에 의한 변환 동작에 병합될 수 있으며, 이 경우 변환부(120)는 치환된 이산 코사인 변환 행렬(A)과 업스케일링 행렬(U)를 곱한 AU의 값을 이용하여 입력 신호에 대한 업스케일링 및 변환 동작을 동시에 수행할 수 있다.
단계 940에서, 다운 스케일링부(125)는 NxN 블록을 변환하는 연산 과정에서 발생되는 중간값의 분모의 최대값에 기초하여, 변환된 NxN 블록을 다운스케일링한다. 다운 스케일링부(125)는 치환된 이산 코사인 변환 행렬(A)을 이용한 변환 과정에서 발생되는 중간값이 최대 K(K은 정수)개의 분모가 2^p인 유리수의 곱셈 과정을 포함하는 경우, NxN 변환 블록을 2^(K*p)의 값으로 나눔으로써 다운스케일링을 수행할 수 있다.
도 11은 본 발명의 일 실시예에 따른 영상 복호화 장치를 나타낸 블록도이다.
도 11을 참조하면, 본 발명의 일 실시예에 따른 영상 복호화 장치(1100)는 엔트로피 복호화부(1110), 역양자화부(1120), 업스케일링부(1130), 역변환부(1140), 다운스케일링부(1145) 및 예측부(1150)를 포함한다.
엔트로피 복호화부(1110)는 입력 비트스트림으로부터 복호화되는 현재 블록의 예측 모드 정보, 참조 픽처 정보 및 레지듀얼 정보를 추출한다. 레지듀얼 정보는 양자화된 변환 계수에 해당된다.
역양자화부(1120)는 엔트로피복호화부(1110)에서 추출된 양자화된 변환 계수들을 역양자화한다. 구체적으로, 역양자화부(1120)는 치환된 이산 코사인 역변환 행렬(B)과 치환된 이산 코사인 역변환 행렬의 전치 행렬(BT)를 이용하여 치환된 이산 코사인 역변환 행렬(B)과 원 이산 코사인 역변환 행렬(Original_B)에 의한 결과값의 차이를 보상하기 위한 스케일링 행렬(S)과 양자화 스텝을 이용하여 역변환부(1140)로 입력되는 변환 및 양자화된 NxN 블록을 역양자화한다.
스케일링 행렬(S)는 치환된 이산 코사인 역변환 행렬(B)과 치환된 이산 코사인 역변환 행렬의 전치 행렬(BT)의 곱셈 행렬(BBT)의 원소들 중 대각 성분인 (i,i)(i는 1부터 N까지의 정수)에 위치한 원소의 제곱근을 sqrt(BBT(i,i))라고 할 때, 1/sqrt(BBT(i,i))을 i번째 행의 원소들로 갖는 행렬일 수 있다. 역양자화부(2120)는 스케일링 행렬(S)의 각 원소와 스케일링 행렬의 전치 행렬(ST)의 동일 위치의 원소를 각각 곱한 행렬(SⓧST)인 PF에 기초하여 역양자화 행렬(V)를 획득할 수 있다. 구체적으로, 역양자화 행렬(V)은 다음의 수학식; V=Qstep*PF*2^n (n은 정수)을 통해 획득될 수 있다. 또한, 본 발명의 다른 실시예에 따르면, 역양자화부(1120)는 부동 소수점을 갖는 PF에 의한 연산의 복잡도를 감소시키기 위하여 역양자화 행렬(V)을 다음의 수학식; V= round(Qstep*PF*2^n)를 통해 획득할 수도 있다.
역양자화 행렬(V)이 결정되면, 역양자화부(1120)는 역양자화 행렬(V)의 동일 위치의 원소와 양자화된 NxN 변환 블록의 동일 위치의 원소를 곱한 값을 floor(QP/6)(floor[x]는 x보다 작거나 같은 최대 정수, QP는 양자화 파라메터) 비트만큼 레프트 시프트함으로써 역양자화를 수행한다. 즉, Zij를 양자화된 변환 계수, Wij를 역양자화된 변환 계수라고 하면 양자화부(1120)는 다음의 수학식; Wij=(Zij.V)<<floor(QP/6)을 통해 양자화된 계수 Zij를 역양자화한 Wij를 획득할 수 있다.
업스케일링부(1130)은 전술한 도 1의 업스케일링부(116)와 유사하게 역변환부(1140)로 입력되는 양자화된 변환 신호를 업스케일링한다. 즉, 치환된 이산 코사인 역변환 행렬(B)을 이용한 역변환 과정에서 발생되는 중간값이 최대 K(K은 정수)개의 분모가 2^p인 유리수의 곱셈 과정을 포함하는 경우, 업스케일링부(1130)은 입력 신호에 2^(K*p)의 값을 곱함으로써 업스케일링을 수행하며, 다운스케일링부(1145)는 역변환부(1140)의 출력값을 2^(K*p)로 나눔으로써 다운스케일링을 수행한다. 전술한 바와 같이 2의 거듭제곱꼴을 이용한 곱셈 및 나눗셈 연산은 시프트 연산(<< 또는 >>)을 구현될 수 있다. 또한, 업스케일링부(1130)은 역양자화부(1120)에 병합될 수 있다. 즉, 전술한 업스케일링부(116) 및 변환부(120)의 병합과 유사하게, 역양자화 과정에 이용되는 역양자화 행렬(V)와 업스케일링 행렬(U)의 행렬곱(UV)를 새로운 역양자화 행렬로 이용함으로써 역양자화 단계에서 업스케일링이 수행될 수 있다.
역변환부(1140)는 NxN 이산 코사인 역변환 행렬(Origin_B)의 원소들 중 삼각함수에 기초한 값들을 소정의 유리수 값들로 치환하여 획득된 치환된 이산 코사인 역변환 행렬(B)를 이용하여 역양자화된 변환 계수들을 역변환한다. 역변환 결과, 블록 단위에 대한 레지듀얼 값들이 복원된다.
다운스케일링부(1145)는 역변환부(1140)로부터 출력된 역변환 신호를 NxN 블록을 역변환하는 연산 과정에서 발생되는 중간값의 분모의 최대값에 기초한 스케일링 팩터로 나누어 줌으로써 역변환된 NxN 블록을 다운스케일링한다. 즉, 치환된 이산 코사인 역변환 행렬(B)을 이용한 역변환 과정에서 발생되는 중간값이 최대 K(K은 정수)개의 분모가 2^p인 유리수의 곱셈 과정을 포함하는 경우, 다운 스케일링부(1145)는 역변환부(1140)의 출력값을 2^(K*p)의 값으로 나눔으로써 다운스케일링을 수행한다. 또한, 다운스케일링부(1145)는 역변환부(1140)에 병합될 수 있다. 즉, 역변환 과정에 이용되는 역변환 행렬(B)과 다운스케일링에 이용되는 스케일링 팩터(D)를 고려하여, 역변환 단계에서 (B/D)인 새로운 역변환 행렬을 이용함으로써 역변환 단계에서 다운 스케일링이 병합되어 수행될 수 있다.
예측부(1150)는 예측 모드 정보에 기초하여 예측값을 생성하고, 예측값과 역변환부(1130)에서 복원되어 다운스케일링된 레지듀얼 신호가 가산되어 영상이 복원된다.
도 12는 본 발명의 일 실시예에 따른 영상 역변환 방법을 나타낸 플로우 차트이다.
도 12를 참조하면, 단계 1210에서 역변환부(1140)는 NxN(N은 정수) 블록의 1차원 이산 코사인 역변환에 이용되는 NxN 역변환 행렬의 원소들 중 삼각함수에 기초한 값들을 소정의 유리수 값들로 치환하여 치환된 이산 코사인 역변환 행렬(B)를 획득한다.
단계 1220에서, 업스케일링부(1130)는 치환된 이산 코사인 변환 행렬(B)를 이용하여 상기 NxN 블록을 역변환하는 연산 과정에서 발생되는 중간값의 분모의 최대값에 기초하여, NxN 블록의 원소들의 업스케일링을 위한 업스케일링 행렬(U)를 획득한다.
단계 1230에서, 역변환부(1140)는 업스케일링 행렬(U) 및 치환된 이산 코사인 역변환 행렬(B)를 이용하여 NxN 블록을 역변환한다.
단계 1240에서, 다운 스케일링부(1145)는 NxN 블록을 역변환하는 연산 과정에서 발생되는 중간값의 분모의 최대값에 기초하여, 역변환된 NxN 블록을 다운스케일링한다.
도 13은 본 발명의 일 실시예에 따라서 역양자화 행렬(V)를 획득하는 과정을 나타내는 플로우 차트이다.
도 13을 참조하면, 단계 1310에서 역양자화부(1120)는 치환된 이산 코사인 역변환 행렬(B)과 치환된 이산 코사인 역변환 행렬의 전치 행렬(BT)의 곱셈 행렬(BBT)의 원소들 중 대각 성분인 (i,i)(i는 1부터 N까지의 정수)에 위치한 원소의 제곱근인 sqrt(BBT(i,i))를 획득한다.
단계 1320에서, 역양자화부(1120)는 sqrt(BBT(i,i))의 역수인 1/sqrt(BBT(i,i))을 획득하고, 단계 1330에서 역양자화부(1120)는 1/sqrt(BBT(i,i))을 i번째 행의 원소로 갖는 스케일링 행렬(S)를 획득한다.
단계 1340에서, 역양자화부(1120)는 스케일링 행렬(S)의 각 원소와 스케일링 행렬의 전치 행렬(ST)의 동일 위치의 원소를 각각 곱한 행렬(SⓧST)인 PF에 기초하여 역양자화 행렬(V)을 생성한다. 구체적으로, 역양자화 행렬(V)은 다음의 수학식; V=Qstep*PF*2^n (n은 정수)을 통해 획득될 수 있다.
단계 1350에서, 역양자화부(1120)는 역양자화 행렬(V)의 동일 위치의 원소와 양자화된 NxN 변환 블록의 동일 위치의 원소를 곱한 값을 floor(QP/6)(floor[x]는 x보다 작거나 같은 최대 정수, QP는 양자화 파라메터) 비트만큼 레프트 시프트함으로써 스케일링 및 역양자화를 수행한다. 즉, Zij를 양자화된 변환 계수, Wij를 역양자화된 변환 계수라고 하면 다음의 수학식; Wij=(Zij.V)<<floor(QP/6)을 통해 양자화된 계수 Zij를 역양자화한 Wij를 획득할 수 있다.
이상과 같이 본 발명은 비록 한정된 실시예와 도면에 의해 설명되었으나, 본 발명이 상기의 실시예에 한정되는 것은 아니며, 이는 본 발명이 속하는 분야에서 통상의 지식을 가진 자라면 이러한 기재로부터 다양한 수정 및 변형이 가능하다. 따라서, 본 발명의 사상은 아래에 기재된 특허청구범위에 의해서만 파악되어야 하고, 이와 균등하거나 또는 등가적인 변형 모두는 본 발명 사상의 범주에 속한다 할 것이다. 또한, 본 발명에 따른 시스템은 컴퓨터로 읽을 수 있는 기록매체에 컴퓨터가 읽을 수 있는 코드로서 구현하는 것이 가능하다. 컴퓨터가 읽을 수 있는 기록매체는 컴퓨터 시스템에 의하여 읽혀질 수 있는 데이터가 저장되는 모든 종류의 기록장치를 포함한다. 기록매체의 예로는 ROM, RAM, CD-ROM, 자기 테이프, 플로피 디스크, 광데이터 저장장치 등을 포함한다. 또한 컴퓨터가 읽을 수 있는 기록매체는 네트워크로 연결된 컴퓨터 시스템에 분산되어 분산방식으로 컴퓨터가 읽을 수 있는 코드가 저장되고 실행될 수 있다.
Claims (15)
- 영상의 변환 방법에 있어서,NxN(N은 정수) 블록의 1차원 이산 코사인 변환에 이용되는 NxN 변환 행렬의 원소들 중 삼각함수에 기초한 값들을 소정의 유리수 값들로 치환하여 치환된 이산 코사인 변환 행렬(A)를 획득하는 단계;상기 치환된 이산 코사인 변환 행렬(A)를 이용하여 상기 NxN 블록을 변환하는 연산 과정에서 발생되는 중간값의 분모의 최대값에 기초하여, 상기 NxN 블록의 원소들의 업스케일링을 위한 업스케일링 행렬(U)를 획득하는 단계;상기 업스케일링 행렬(U) 및 상기 치환된 이산 코사인 변환 행렬(A)를 이용하여 상기 NxN 블록을 변환하는 단계; 및상기 NxN 블록을 변환하는 연산 과정에서 발생되는 중간값의 분모의 최대값에 기초하여, 상기 변환된 NxN 블록을 다운스케일링하는 단계를 포함하는 것을 특징으로 하는 영상 변환 방법.
- 제 1항에 있어서,상기 치환된 이산 코사인 변환 행렬(A)를 획득하는 단계는상기 삼각함수에 기초한 값들을 분모가 2^p(p은 양의 정수)인 유리수로 치환하는 것을 특징으로 하는 영상 변환 방법.
- 제 2항에 있어서,상기 치환된 이산 코사인 변환 행렬(A)을 이용한 변환 과정에서 발생되는 상기 중간값이 최대 K(K은 정수)개의 분모가 2^p인 유리수의 곱셈 과정을 포함하는 경우, 상기 업스케일링 행렬(U)은 NxN 단위 행렬에 2^(K*p)의 값을 곱한 행렬인 것을 특징으로 하는 영상 변환 방법.
- 제 1항에 있어서,상기 NxN 블록을 변환하는 단계는상기 업스케일링 행렬(U)를 이용하여 상기 NxN 블록을 업스케일링하는 단계; 및상기 치환된 이산 코사인 변환 행렬(A)을 이용하여 상기 업스케일링된 NxN 블록을 변환하는 단계를 포함하며,상기 업스케일링 및 변환하는 단계는상기 업스케일링 행렬(U) 및 상기 치환된 이산 코사인 변환 행렬(A)를 곱한 하나의 업스케일링 변환 행렬(AU)을 상기 NxN 블록과 곱하여 수행되는 것을 특징으로 하는 영상 변환 방법.
- 제 1항에 있어서,상기 치환된 이산 코사인 변환 행렬(A)을 M(M은 정수)개의 변환 행렬로 분해(factorization)하는 단계; 및상기 M개의 변환 행렬 각각에 대해서 상기 M개의 변환 행렬에 입력되는 각 입력값을 업스케일링하고, 상기 M개의 변환 행렬의 각 출력값을 다운스케일링하는 단계를 포함하는 것을 특징으로 하는 영상 변환 방법.
- 제 1항에 있어서,상기 다운스케일링하는 단계는상기 치환된 이산 코사인 변환 행렬(A)을 이용한 변환 과정에서 발생되는 상기 중간값이 최대 K(K은 정수)개의 분모가 2^p인 유리수의 곱셈 과정을 포함하는 경우, 상기 NxN 변환 블록을 2^(K*p)의 값으로 나눔으로써 수행되는 것을 특징으로 하는 영상 변환 방법.
- 제 1항에 있어서,상기 치환된 이산 코사인 변환 행렬(A)과 상기 치환된 이산 코사인 변환 행렬의 전치 행렬(AT)를 이용하여, 상기 치환된 이산 코사인 변환 행렬(A)과 원 이산 코사인 변환 행렬(Original_A)에 의한 결과값의 차이를 보상하기 위한 스케일링 행렬(S)을 획득하는 단계; 및상기 스케일링 행렬(S) 및 양자화 스텝을 이용하여 상기 변환된 NxN 블록을 양자화하는 단계를 더 포함하는 것을 특징으로 하는 영상 변환 방법.
- 영상의 역변환 방법에 있어서,NxN(N은 정수) 블록의 1차원 이산 코사인 역변환에 이용되는 NxN 역변환 행렬의 원소들 중 삼각함수에 기초한 값들을 소정의 유리수 값들로 치환하여 치환된 이산 코사인 역변환 행렬(B)를 획득하는 단계;상기 치환된 이산 코사인 변환 행렬(B)를 이용하여 상기 NxN 블록을 역변환하는 연산 과정에서 발생되는 중간값의 분모의 최대값에 기초하여, 상기 NxN 블록의 원소들의 업스케일링을 위한 업스케일링 행렬(U)를 획득하는 단계;상기 업스케일링 행렬(U) 및 상기 치환된 이산 코사인 역변환 행렬(B)를 이용하여 상기 NxN 블록을 역변환하는 단계; 및상기 NxN 블록을 역변환하는 연산 과정에서 발생되는 중간값의 분모의 최대값에 기초하여, 상기 역변환된 NxN 블록을 다운스케일링하는 단계를 포함하는 것을 특징으로 하는 영상 역변환 방법.
- 제 8항에 있어서,상기 치환된 이산 코사인 역변환 행렬(B)를 획득하는 단계는상기 삼각함수에 기초한 값들을 분모가 2^p(p은 양의 정수)인 유리수로 치환하는 것을 특징으로 하는 영상 역변환 방법.
- 제 9항에 있어서,상기 치환된 이산 코사인 역변환 행렬(B)을 이용한 역변환 과정에서 발생되는 상기 중간값이 최대 K(K은 정수)개의 분모가 2^p인 유리수의 곱셈 과정을 포함하는 경우, 상기 업스케일링 행렬(U)은 NxN 단위 행렬에 2^(K*p)의 값을 곱한 행렬인 것을 특징으로 하는 영상 역변환 방법.
- 제 8항에 있어서,상기 NxN 블록을 역변환하는 단계는상기 업스케일링 행렬(U)를 이용하여 상기 NxN 블록을 업스케일링하는 단계; 및상기 치환된 이산 코사인 역변환 행렬(B)을 이용하여 상기 업스케일링된 NxN 블록을 역변환하는 단계를 포함하며,상기 업스케일링 및 역변환하는 단계는상기 업스케일링 행렬(U) 및 상기 치환된 이산 코사인 역변환 행렬(B)를 곱한 하나의 업스케일링 역변환 행렬(UB)을 상기 NxN 블록과 곱하여 수행되는 것을 특징으로 하는 영상 역변환 방법.
- 제 8항에 있어서,상기 치환된 이산 코사인 역변환 행렬(B)을 M(M은 정수)개의 역변환 행렬로 분해(factorization)하는 단계; 및상기 M개의 역변환 행렬 각각에 대해서 상기 M개의 역변환 행렬에 입력되는 각 입력값을 업스케일링하고, 상기 M개의 역변환 행렬의 각 출력값을 다운스케일링하는 단계를 포함하는 것을 특징으로 하는 영상 역변환 방법.
- 제 8항에 있어서,상기 다운스케일링하는 단계는상기 치환된 이산 코사인 역변환 행렬(B)을 이용한 역변환 과정에서 발생되는 상기 중간값이 최대 K(K은 정수)개의 분모가 2^p인 유리수의 곱셈 과정을 포함하는 경우, 상기 결과값을 2^(K*p)의 값으로 나눔으로써 수행되는 것을 특징으로 하는 영상 역변환 방법.
- 제 8항에 있어서,상기 치환된 이산 코사인 역변환 행렬(B)과 상기 치환된 이산 코사인 역변환 행렬의 전치 행렬(BT)를 이용하여, 상기 치환된 이산 코사인 역변환 행렬(B)과 원 이산 코사인 변환 행렬(Original_B)에 의한 결과값의 차이를 보상하기 위한 스케일링 행렬(S)을 획득하는 단계; 및상기 스케일링 행렬(S) 및 양자화 스텝을 이용하여 상기 역변환된 NxN 블록을 역양자화하는 단계를 더 포함하는 것을 특징으로 하는 영상 역변환 방법.
- 제 14항에 있어서,상기 역양자화하는 단계는상기 양자화 스텝을 Qstep, 상기 스케일링 행렬(S)의 원소들과 상기 스케일링 행렬의 전치 행렬(ST)의 동일 위치의 원소들을 각각 곱한 행렬을 PF, n은 양의 정수라고 할 때, 다음의 수학식; V=Qstep*PF*2^n 을 통해 획득된 스케일링이 결합된 역양자화 행렬(V)를 획득하는 단계; 및상기 역양자화 행렬(V)를 이용하여 상기 다운스케일링된 NxN 블록에 대한 역양자화를 수행하는 단계를 포함하는 것을 특징으로 하는 영상 역변환 방법.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US14/001,618 US20140072240A1 (en) | 2011-02-25 | 2012-02-24 | Method and apparatus for converting an image, and method and apparatus for inverse converting an image |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201161446753P | 2011-02-25 | 2011-02-25 | |
US61/446,753 | 2011-02-25 |
Publications (2)
Publication Number | Publication Date |
---|---|
WO2012115486A2 true WO2012115486A2 (ko) | 2012-08-30 |
WO2012115486A3 WO2012115486A3 (ko) | 2012-11-15 |
Family
ID=46721366
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/KR2012/001446 WO2012115486A2 (ko) | 2011-02-25 | 2012-02-24 | 영상의 변환 방법 및 장치, 및 영상의 역변환 방법 및 장치 |
Country Status (3)
Country | Link |
---|---|
US (1) | US20140072240A1 (ko) |
KR (1) | KR20120098499A (ko) |
WO (1) | WO2012115486A2 (ko) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114239037A (zh) * | 2021-12-27 | 2022-03-25 | 中国矿业大学 | 基于沙路法则的多图像加密方法 |
Families Citing this family (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104244010B (zh) * | 2013-06-14 | 2018-03-23 | 浙江大学 | 提高数字信号变换性能的方法及数字信号变换方法和装置 |
KR101527103B1 (ko) * | 2013-10-30 | 2015-06-17 | 고려대학교 산학협력단 | 이산 코사인 변환 장치 및 방법 |
US20160360237A1 (en) | 2013-12-22 | 2016-12-08 | Lg Electronics Inc. | Method and apparatus for encoding, decoding a video signal using additional control of quantizaton error |
FR3033114A1 (fr) * | 2015-02-19 | 2016-08-26 | Orange | Procede de codage et decodage d'images, dispositif de codage et decodage et programmes d'ordinateur correspondants |
US10963581B2 (en) | 2015-05-20 | 2021-03-30 | Board Of Regents, The University Of Texas System | Systems and methods for secure file transmission and cloud storage |
US20180278943A1 (en) * | 2015-09-21 | 2018-09-27 | Lg Electronics Inc. | Method and apparatus for processing video signals using coefficient induced prediction |
WO2017135663A2 (ko) * | 2016-02-01 | 2017-08-10 | 엘지전자 주식회사 | 행 -열 변환 (row- column transform)을 이용하여 변환을 수행하는 방법 및 장치 |
US10542277B2 (en) * | 2017-10-24 | 2020-01-21 | Arm Limited | Video encoding |
TWI800765B (zh) * | 2020-11-06 | 2023-05-01 | 瑞昱半導體股份有限公司 | 影像處理方法及影像處理系統 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2007503784A (ja) * | 2003-05-20 | 2007-02-22 | アーエムテー アドバンスド マルチメディア テクノロジー アクティエボラーグ | ハイブリッドビデオ圧縮法 |
WO2008002881A2 (en) * | 2006-06-26 | 2008-01-03 | Qualcomm Incorporated | Reduction of errors during computation of inverse discrete cosine transform |
KR20080093302A (ko) * | 2007-04-16 | 2008-10-21 | 경희대학교 산학협력단 | 고속 동작을 위한 mpeg2/h.264 디지털 비디오트랜스코딩 시스템 및 방법 |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7082450B2 (en) * | 2001-08-30 | 2006-07-25 | Nokia Corporation | Implementation of a transform and of a subsequent quantization |
US7379956B2 (en) * | 2002-07-14 | 2008-05-27 | Apple Inc. | Encoding and decoding data arrays |
US8069201B2 (en) * | 2003-11-25 | 2011-11-29 | Texas Instruments Incorporated | 8×8 transform and quantization |
US7689052B2 (en) * | 2005-10-07 | 2010-03-30 | Microsoft Corporation | Multimedia signal processing using fixed-point approximations of linear transforms |
US20070271321A1 (en) * | 2006-01-11 | 2007-11-22 | Qualcomm, Inc. | Transforms with reduce complexity and/or improve precision by means of common factors |
-
2012
- 2012-02-24 WO PCT/KR2012/001446 patent/WO2012115486A2/ko active Application Filing
- 2012-02-24 US US14/001,618 patent/US20140072240A1/en not_active Abandoned
- 2012-02-24 KR KR1020120019342A patent/KR20120098499A/ko not_active Application Discontinuation
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2007503784A (ja) * | 2003-05-20 | 2007-02-22 | アーエムテー アドバンスド マルチメディア テクノロジー アクティエボラーグ | ハイブリッドビデオ圧縮法 |
WO2008002881A2 (en) * | 2006-06-26 | 2008-01-03 | Qualcomm Incorporated | Reduction of errors during computation of inverse discrete cosine transform |
KR20080093302A (ko) * | 2007-04-16 | 2008-10-21 | 경희대학교 산학협력단 | 고속 동작을 위한 mpeg2/h.264 디지털 비디오트랜스코딩 시스템 및 방법 |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114239037A (zh) * | 2021-12-27 | 2022-03-25 | 中国矿业大学 | 基于沙路法则的多图像加密方法 |
CN114239037B (zh) * | 2021-12-27 | 2024-06-04 | 中国矿业大学 | 基于沙路法则的多图像加密方法 |
Also Published As
Publication number | Publication date |
---|---|
WO2012115486A3 (ko) | 2012-11-15 |
US20140072240A1 (en) | 2014-03-13 |
KR20120098499A (ko) | 2012-09-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
WO2012115486A2 (ko) | 영상의 변환 방법 및 장치, 및 영상의 역변환 방법 및 장치 | |
WO2012115487A2 (ko) | 영상의 변환 및 역변환 방법, 및 이를 이용한 영상의 부호화 및 복호화 장치 | |
KR100965704B1 (ko) | 이미지 및 비디오 코딩을 위한 2d 변환 | |
KR101153105B1 (ko) | 고속 비디오 코덱 변환의 구현 | |
RU2413983C2 (ru) | Обратимое преобразование для сжатия двумерных данных с потерями и без потерь | |
KR100880305B1 (ko) | 화상 복호 장치 | |
CA2633897C (en) | Transforms with common factors | |
RU2460129C2 (ru) | Структура преобразования с масштабированными и немасштабированными интерфейсами | |
WO2011142645A2 (en) | Method and apparatus for encoding video signal and method and apparatus for decoding video signal | |
WO2011155714A2 (ko) | 엣지-적응 변환을 이용한 영상 부호화/복호화 시스템 및 방법 | |
KR960028558A (ko) | 비트속도 감소장치 및 그것에서 사용하는 동작 벡터프로세싱 장치 | |
US20130195177A1 (en) | Method and device for the transformation and method and device for the reverse transformation of images | |
JP3655651B2 (ja) | データ処理装置 | |
WO2015122726A1 (ko) | 시각적 인지 특성을 이용한 pvc 방법 | |
KR101480412B1 (ko) | 영상의 변환 방법 및 장치, 역변환 방법 및 장치 | |
JPS622721A (ja) | 画像信号の符号化・復号化装置 | |
JP2005168028A (ja) | 絶対差演算装置とそれを用いた動き推定装置及び動映像符号化装置 | |
JPH09116760A (ja) | 画像処理装置 | |
WO2011002170A2 (ko) | 갱신-예측 구조 리프팅 기반 웨이블렛 변환 장치와 방법, 이를 위한 적응적 예측 장치와 방법, 및 이를 위한 기록 매체 | |
KR20120139611A (ko) | 영상의 변환 방법 및 장치, 역변환 방법 및 장치 | |
Ezhilarasi et al. | Low complexity orthogonal transforms for low cost image/video codec design | |
Abhayaratne | Spatially adaptive integer lifting with no side information for lossless video coding | |
JP3543151B2 (ja) | データ圧縮方法及びデータ圧縮装置 | |
JP2870626B2 (ja) | 画像圧縮装置 | |
WO2014076165A1 (en) | Method, computer program and system for determining skip mode |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 12749987 Country of ref document: EP Kind code of ref document: A2 |
|
NENP | Non-entry into the national phase |
Ref country code: DE |
|
WWE | Wipo information: entry into national phase |
Ref document number: 14001618 Country of ref document: US |
|
122 | Ep: pct application non-entry in european phase |
Ref document number: 12749987 Country of ref document: EP Kind code of ref document: A2 |