KR101433169B1 - 인트라 방향성에 따른 모드 예측 및 양자화 매트릭스와스캐닝 적용 방법 및 장치 - Google Patents
인트라 방향성에 따른 모드 예측 및 양자화 매트릭스와스캐닝 적용 방법 및 장치 Download PDFInfo
- Publication number
- KR101433169B1 KR101433169B1 KR1020080000576A KR20080000576A KR101433169B1 KR 101433169 B1 KR101433169 B1 KR 101433169B1 KR 1020080000576 A KR1020080000576 A KR 1020080000576A KR 20080000576 A KR20080000576 A KR 20080000576A KR 101433169 B1 KR101433169 B1 KR 101433169B1
- Authority
- KR
- South Korea
- Prior art keywords
- block
- intra
- mode
- prediction
- intra mode
- 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/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/103—Selection of coding mode or of prediction mode
- H04N19/11—Selection of coding mode or of prediction mode among a plurality of spatial predictive coding modes
-
- 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/124—Quantisation
-
- 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/129—Scanning of coding units, e.g. zig-zag scan of transform coefficients or flexible macroblock ordering [FMO]
-
- 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/134—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
- H04N19/157—Assigned coding mode, i.e. the coding mode being predefined or preselected to be further used for selection of another element or parameter
- H04N19/159—Prediction type, e.g. intra-frame, inter-frame or bidirectional frame prediction
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
1. 청구범위에 기재된 발명이 속한 기술분야
본 발명은 비디오 코딩에서 인트라 예측 시 보이는 방향성에 따라 인트라 예측을 하고 이 후 가변적 양자화 매트릭스와 스캐닝을 적용하여 성능을 향상시키는 방법 및 장치에 관한 것임.
2. 발명이 해결하려고 하는 기술적 과제
본 발명에서는 비디오 코딩의 인트라 예측 시, 방향성이 보이는 새로운 인트라 예측방법과 DCT계수 값들의 일정한 패턴을 이용하여 코딩의 성능을 향상토록 하는 양자화와 스캐닝 방법을 제안한다.
3. 발명의 해결방법의 요지
본 발명은 비디오 코딩의 인트라 예측 시, 인트라 모드의 방향성이 보이게 되는데 이를 이용하여 높은 예측 성능을 가진 인트라 모드 예측 방법을 적용하며, 이에 따른 방향성이 보이는 인트라 모드에서 DCT계수 값들의 일정한 패턴을 통해 만든 양자화 매트릭스를 이용하여 양자화 한 후, 패턴에 맞는 스캐닝 방법까지 적용하여 코딩 효율을 향상시키는 방법을 포함함.
4. 발명의 중요한 용도
본 발명은 영상에 대한 코딩효율 향상에 이용된다.
MPEG, 인트라코딩, 인트라 모드, 양자화 매트릭스
Description
본 발명은 동영상 코덱에 관한 것으로, 보다 구체적으로 비디오 코딩에서 인트라 예측 시 보이는 방향성에 따라 인트라 예측을 하고 이후 가변적 양자화 매트릭스와 스캐닝을 적용하여 성능을 향상시키는 방법 및 장치에 관한 것이다.
현재 ITU-T(International Telecommunication Union)의 연구그룹인 VCEG(Video Coding Experts Group)에서는 기존의 동영상 국제표준인 MPEG-4 part 10 Advanced Video Coding (AVC; H.264)을 바탕으로 코덱에 좀 더 향상된 코딩 성능을 가진 여러가지 툴 들을 포함 시켜 표준화를 준비하고자 노력하고 있다.
H.264에서는 블록간의 화소상관도를 사용하여 압축률을 향상시키는 화면 내 예측 부호화를 수행한다. 이 때 화면 내 예측 부호화는 인트라 코딩이라 하며 예측 가능한 참조블록을 그림1과 같이 좌측(A), 상단(B), 우측상단(C), 좌측상단(D)의 네가지를 두고 있다. 또한 블록마다 적절한 예측 방향을 선택해서 부호화하며, 복잡한 영상은 4x4화소와 같은 작은 블록단위로 예측하고 평탄한 영상은 16x16화소와 같은 큰 매크로블록 단위로 예측하고 있다.
4x4 화소단위 화면내 예측 부호화에서는 그림 2와 같이 16x16화소를 구성하는 0~15의 블록 순서에 따라 부호화를 수행한다. 예를 들면, 그림 2에 보이는 12번째 블록의 경우 그림 1과 같이 좌측 블록(그림1의 A는 그림 2의 블록 9에 해당)속의 4화소, 상단블록(그림 1의 B는 그림 2의 블록 6에 해당)속의 4화소, 우측상단블록(그림 1의 C는 그림 2의 블록 7에 해당)속의 4화소, 좌측상단블록(그림 1의 D는 그림 2의 블록 3에 해당)속의 1화소를 사용하여 블록내의 4x4화소의 값을 예측부호화 한다. 주변값을 참조하여 부호화하려는 현재 블록의 화소는 디블록킹 필터를 적용하기 전의 화소값을 의미한다.
또, 그림 3의 각 예측방향에 기재된 번호가 예측 모드 번호이고, 예측방향의 발생빈도가 높을수록 작은 번호가 할당된다. 예측 방향은 그림 3의 9가지 예측 방향 중 가장 적절한 예측방향을 4x4화소 블록마다 1개씩 선택하고, 선택된 예측 방향(예측모드)을 4x4화소의 블록단위로 부호화한다. 예측모드 2가 의미하는 평균값은 좌측블록(그림 1의 A화소)의 4화소와 상단블록(그림 1의 B화소)의 4화소, 즉 총 8화소의 평균값을 구해 대상블록의 4x4화소 모두를 예측하는 방법이다.
픽처의 좌측 경계에 위치하는 블록과 픽처의 상단경계에 위치하는 블록의 경우 좌측블록과 상단블록이 각각 픽쳐 바깥쪽에 위치하게 된다. 이 경우 픽처경계를 벗어난 블록을 참조할 수 없기 때문에 예측방향의 사용이 제한된다. 예를 들어, 픽처의 최상단 위치의 블록에서는 그림 1의 B또는 C의 화소를 참조하는 모드 0, 모드 3, 모드 4, 모드 5, 모드 6, 모드 7의 예측 방향은 사용할수 없다(모드1, 모드8은 B와 C의 화소를 포함하지 않기 때문에 사용 가능). 예외적으로 모드 2 평균치 예측의 경우, 픽처의 경계를 벗어나지 않는 화소만을 참조해서 평균치를 계산하는 예측을 수행한다. 즉, 픽처의 최상단에 위치하는 블록에서는 좌측블록 4화소 평균치를 예측값으로 하고, 픽처의 좌측경계에 위치하는 블록에서는 상단블록 4화소의 평균치를 예측값으로 한다.
모드 예측 방법은 이웃한 블록의 예측 방향과 상관관계가 높은 점을 이용하여 부호화된 주변 블록의 방향으로부터 현재 블록의 예측 방향을 예측한다. 그림 1의 A블록의 모드와 B블록의 모드를 비교해서 작은 번호의 예측 모드를 현재 블록의 적용할 예측방향의 예측값으로 한다.
16x16화소 단위의 화면내 예측 부호화에서는 4가지 예측 모드(수직예측, 수평예측, 평균치 예측, 평면예측)를 두고 하나를 선택해서 예측부호화 하고 있다.
H.264는 화면내 예측 부호화 후에 4x4화소단위의 직교변환을 사용한다. 이전에 쓰이던 8x8화소 단위의 직교변환과 비교하면 다루는 데이터 수가 적교 연산의 유효자리수가 적기 때문에 구현이 용이하다. 또한 화면내 예측과 움직임 보상의 최소 단위가 4x4화소 이기 때문에 직교변환의 4x4화소 단위와 정확히 일치하게 된다. H .264에 도입된 직교변환은 정수단위 연산을 사용한다. 기존의 DCT(Discrete Cosine Transform)에서는 실수 단위의 연산을 사용하였기 때문에 직교변환 이전과 직교변환 이후의 결과가 일치하지 않았다는 문제가 발생하였다. 그러나 H.264는 정수단위 연산을 사용하기 때문에 직교변환 전후의 결과가 완전히 일치한다. 즉, 모든 복호기에서 복호영상이 완전히 일치한다는 것을 의미한다. 또 정수정밀도 직교변환은 소수점이하 계산이 불필요하기 때문에 연산과정에서 적은 비트수만을 필요로 하여 하드웨어로 구현하기 쉽게 된다.
4x4 DCT(Discrete Cosine Transform)는 다음의 수학식 1과 같이 정의할 수 다.
그리고 이 행렬 곱셈은 수학식 2와 같은 등가의 식으로 인수분해 된다.
E는 스케일링 계수이고 d는 0.5로 근사화된 것이다. 행령 C의 두번째와 네번째 행 그리고 CT 의 두번째와 네번째 열은 2의 계수에 의해 스케일되고, Post-스케일링 행렬 E는 이것을 보상하기 위해 스케일링을 감소시킨다. 이렇게 하여 수학식 3과 같이 4x4 DCT를 근사화시킬 수 있다.
DCT 이후 양자화를 하게 되는데 H.264는 스칼라 양자화(예:소수점을 가지는 수를 가장 가까운 정수로 반올림하는 것)를 사용한다. 양자화의 방법은 나눗셈과 부동소수점 연산을 사용하지 않고 post-스케일링 방법을 사용한다. 기본적인 양자화 연산은 수학식 4와 같이 표현할 수 있다.
여기서, Yij는 위에서 설명된 변환의 계수이고, Qstep은 양자화 스텝사이즈이고, Zij는 양자화 된 계수이다.
총 52개의 Qstep 값(표 1)이 H.264에서 지원되며 양자화 파라미터 QP에 의해 지시된다. Qstep는 QP가 6 증가할 때마다 두 배가 된다.
인코더에서 양자화가 끝나면 스캐닝을 한 후 엔트로피 코딩을 하여 디코더에 전송하게 된다. 각각의 양자화된 변환 계수들의 4x4 블럭은 16개의 요소를 갖는 배열에 지그재그 순서(그림 4)로 배치된다. 16x16 인트라 모드로 인코딩된 매크로블럭에서 각 4x4 휘도 블록의 DC 계수 들이 먼저 스캔되고 이 DC 계수들은 그림 4의 순서로 스캔된 4x4배열을 형성한다. 이 과정을 거치면 각 휘도 블록에 15개의 AC계수들이 남게 되며, 그림 4의 두번째 위치부터 시작하여 스캔하게 된다.
본 발명에서는 비디오 코딩의 인트라 예측 시, 방향성이 보이는 새로운 인트라 예측방법과 DCT 계수 값들의 일정한 패턴을 이용하여 코딩의 성능을 향상토록 하는 양자화와 스캐닝 방법을 제안한다.
현재 H.264에서는 인트라 코딩을 할 때 4x4 블록에 대해서 9가지 모드(그림 5)를 두고 있다. 각각의 블록에 9가지 모드 정보를 보낼 때 비트정보를 절약하여 압축률을 높이기 위해서 인트라 모드 예측을 하고 있는데, 예측이 되면 1비트(bit)를 보내고 예측이 되지 않으면 안되는 1비트(bit)와 모드번호 3비트(bit)로 표현하고 있다.
인트라 모드 예측을 하기 위해서 그림 1의 A(좌)블록과 B(상)블록의 모드만을 보고, 작은 번호를 예측 모드라 정하고 있다. 이 때 작은 번호를 예측 하는 이유는 H.264에서는 통계적으로 각각의 인트라 모드 번호가 나올 확률이 높은 순으로 번호를 정렬하여 예측에 사용되도록 했기 때문이다.
표 2는 각각의 영상 시퀀스 별 인트라 모드가 블록에서 선택되어지는 확률을 표시하고 있다. 하지만 표 2를 보면 여러 영상 시퀀스의 인트라 모드 확률이 각각 다름을 알 수 있게 된다. 이것은 현재 인트라 예측에서 사용 되는 모드 예측 방법의 문제점을 보여주고 있다.
그림 6는 인트라 예측 때 최적의 인트라 모드로 정해진 번호를 화살표로 표시하고 있다. 그림 6를 보면 영상의 경계면(뒷 배경의 경사면, 모자 모양 경계, 사람 얼굴 경계…)에서는 인트라 모드의 방향이 이어지는 현상을 볼 수 있다. 이러한 인트라 모드의 방향성을 보고 예측에 이용 한다면 더 좋은 성능을 기대 할 수가 있다. 즉 그림 1에서의 위치에 해당하는 블록 A(좌), 블록 B(상), 블록 C(우상), 블록 D(좌상)와 더 넓게 주변블록의 모드 번호를 보고 예측을 하게 되면 예측 효율을 더 높일 수 있게 됨을 알 수 있다.
H.264에서는 인트라 예측을 한 후 4x4 DCT(Discrete Cosine Transform)를 하고 있다. 이 때 공간 영역의 화소 값들이 주파수 영역의 계수 값들로 변환되게 되는데, 그림 7을 보면 주파수 영역에서 어떤 패턴들의 주파수가 분포하게 되는지를 알 수 있다. 그림 7의 가장 윗줄은 세로방향의 형태를 띄는 주파수들을 나타내고 있으며, 가장 왼쪽줄은 가로 방향의 형태를 띄는 주파수들을 나타내고 있다. 또한 왼쪽 위는 저주파를 나타내고 오른쪽아래는 고주파를 표현하고 있다.
보통 자연 영상에서는 DCT(Discrete Cosine Transform)후에 왼쪽 위 부분인 저주파쪽에 계수 값들이 모이게 된다. 하지만 인트라 예측 후에는 인트라 모드에 따라 일정한 패턴으로 DCT(Discrete Cosine Transform) 계수 값들이 분포함을 생각 할 수 있다. 예를 들어 0번 모드(아래방향)로 인트라 예측이 되어 지게 되면 세로 방향으로 잔여 데이터가 남을 확률이 커지게 됨을 위의 그림 7을 보면서 생각 할 수가 있다. 이와 같이 인트라 예측 후 인트라 모드에 따라 DCT(Discrete Cosine Transform) 계수 값들이 분포하게 되는데, 인트라 모드의 방향성을 이용한 예측을 한 후에는 더욱더 패턴의 형태가 뚜렷하게 된다. 이는 영상에서 경계의 부분이 연속적일 확률이 높으므로 방향성에 따른 인트라 모드 예측에 적응적인 도구가 코덱에 필요함을 알 수 있다.
그림 8은 방향성에 따른 인트라 모드 예측을 한 후 DCT(Discrete Cosine Transform) 계수들의 분포를 보여주고 있다. 이것은 일반적인 DCT(Discrete Cosine Transform) 계수들의 패턴과 인트라 모드의 방향에 따라 패턴이 다름을 보여주고 있다. 또한 인트라 모드 예측을 할 때 방향성이 있고 없음에 따라 패턴이 더욱더 선명하게 나타남을 알 수 있다.
현재 H.264는 인트라 예측 후 DCT(Discrete Cosine Transform) 계수 패턴에 대해 효과적으로 성능을 높이는 양자화 방법을 사용하지 않고 있다.
또한, 그림 4의 지그재그 스캔은 일반적인 영상에서 DCT(Discrete Cosine Transform) 계수 패턴이 저주파에 집중되는 현상을 이용하여 먼저 스캐닝을 할 수 있도록 하는 방법이다. 이것을 통해 엔트로피 코딩(Entropy coding)에서 성능을 향상시킨다. 하지만 이 것 또한 방향성이 보인 인트라 모드에 대한 DCT 계수들의 패턴에는 적합하지 않아 다른 스캐닝 방법이 필요하다.
비디오 코딩의 인트라 예측 후 방향성이 보이는 인트라 모드에서 DCT계수 값들의 일정한 패턴이 보이게 되는데, 이 때 일정한 패턴에 맞는 양자화 매트릭스를 이용하여 양자화 한 후, 패턴에 맞는 스캐닝 방법까지 적용하여 코딩 효율을 향상시키는 효과가 있다.
따라서 본 발명에서는 기존의 H.264에서 적용되지 않았던 방향성에 따른 인트라 모드의예측을 사용함으로써 발생되는 인트라 모드별 DCT(Discrete Cosine Transform) 계수의 패턴을 이용하는 적응적 양자화 매트릭스 적용과 스캐닝 방법 및 장치를 제안한다.
그림 9는 방향성 인트라 예측 코딩의 전체 블록도를 나타낸다. 인코더는 입 력받은 영상을 보고, 각각의 9가지 인트라 모드 중 방향성 유무를 판단하여 최적의 인트라 모드를 예측 하게 되고 화면내 예측 부호화를 하게 된다.
인트라 예측은 정해진 현재 블록의 인트라 예측 모드와 주변 블록의 인트라 예측 모드를 보고 방향성 유무를 판별하였다. 이 때 주변 블록의 인트라 예측 모드를 보는 방법은 현재 블록의 인트라 모드가 몇 번인지에 따라(예:현재 블록이 0번이면 주변블록은 윗 블록이다) 어떤 주변 블록을 볼지 정하며, 정해진 인트라 예측 모드번호를 봐서 같으면 방향성이 있다고 판단하게 된다. 인트라 예측 과정이 끝난 후에는, 인트라 예측 모드의 방향성이 있는 DCT(Discrete Cosine Transform) 계수와 방향성 없는 DCT(Discrete Cosine Transform) 계수가 상대적으로 분포의 차이를 보이는 점을 이용하여 분포에 맞는 양자화 매트릭스를 적용하여 양자화를 하게 된다. 이 때 인트라 예측 경우에는 DCT(Discrete Cosine Transform) 계수 값이 인트라 예측 모드별로 일정하게 분포하므로 추가적인 정보를 보내지 않고도 적응적인 양자화 매트릭스를 이용 할 수 있게 된다. 양자화 매트릭스는 인코더와 디코더 내에 공유하여 인트라 모드의 방향성에 맞게 알맞은 양자화 매트릭스가 선택되면 이 매트릭스를 양자화 과정에 적용되도록 한다.
양자화 과정이 끝나고 남은 양자화 계수들은 지그재그 스캐닝을 하게 되는데, 인트라 예측 모드의 방향성에 따라 분포되는 패턴을 최대한 이용하여 성능을 올리기 위해서는 계수가 많이 분포 하는 순에서 적게 분포하는 순으로 스캐닝을 하도록 순서를 바꾸게 되면 엔트로피 코딩에서 성능 향상이 있게 된다.
그림 10는 Foreman QCIF 시퀀스를 QP 22로 코딩 하였을 때 인트라 예측 모드 가 방향성을 보이는 위치를 보여주고 있다.
인트라 예측 모드의 방향성이 보이는 위치를 보면, 현재 블록의 인트라 예측 모드의 화살표를 따라 가고 있는 점을 발견 할 수 있다. 예를 들어 인트라 모드4(오른쪽아래방향 모드)번의 경우에는 그림 1에서의 블록 D(좌상)의 위치에 있는 블록의 모드를 예측하면 좋다는 것을 알 수 있다.
이와 같이 영상 시퀀스의 인트라 예측 모드의 분포를 분석한 결과, 인트라 모드 방향성 유무 판별 블록도는 그림 11과 같다. 알고리즘은 다음과 같다.
Step 1) 현재 블록이 인트라 예측 모드 "0"인 경우는 위에 블록의 인트라 예측 모드와 비교를 한다.
Step 2) 위에 블록의 인트라 예측 모드가 "0"이면 방향성이 있고, "0" 이외의 모드는 방향성이 없다고 판단한다.
Step 3) 현재 블록이 인트라 예측 모드 "1"인 경우는 좌측 블록의 인트라 예측 모드와 비교를 한다.
Step 4) 좌측 블록의 인트라 예측 모드가 "1"이면 방향성이 있고, "1" 이외의 모드는 방향성이 없다고 판단한다.
Step 5) 현재 블록이 인트라 예측 모드 "2"인 경우는 방향성이 없는 DC 모드이므로 인트라 모드의 방향을 찾을 수 없다고 판단한다.
Step 6) 현재 블록이 인트라 예측 모드 "3"인 경우는 우상측 블록의 인트라 예측 모드와 비교를 한다.
Step 7) 우상측 블록의 인트라 예측 모드가 "3"이면 방향성이 있고, "3" 이외의 모드는 방향성이 없다고 판단한다.
Step 8) 현재 블록이 인트라 예측 모드 "4"인 경우는 좌상측 블록의 인트라 예측 모드와 비교를 한다.
Step 9) 좌상측에 블록의 인트라 예측 모드가 "4"이면 방향성이 있고, "4" 이외의 모드는 방향성이 없다고 판단한다.
Step 10) 현재 블록이 인트라 예측 모드 "5"인 경우는 위에 블록의 인트라 예측 모드와 비교를 한다.
Step 11) 위에 블록의 인트라 예측 모드가 "5"이면 방향성이 있고, "5" 이외의 모드는 방향성이 없다고 판단한다.
Step 12) 현재 블록이 인트라 예측 모드 "6"인 경우는 좌측 블록의 인트라 예측 모드와 비교를 한다.
Step 13) 좌측 블록의 인트라 예측 모드가 "6"이면 방향성이 있고, "6" 이외의 모드는 방향성이 없다고 판단한다.
Step 14) 현재 블록이 인트라 예측 모드 "7"인 경우는 위에 블록의 인트라 예측 모드와 비교를 한다.
Step 15) 위에 블록의 인트라 예측 모드가 "7"이면 방향성이 있고, "7" 이외의 모드는 방향성이 없다고 판단한다.
Step 16) 현재 블록이 인트라 예측 모드 "8"인 경우는 좌측 블록의 인트라 예측 모드와 비교를 한다.
Step 17) 좌측 블록의 인트라 예측 모드가 "8"이면 방향성이 있고, "8" 이외의 모드는 방향성이 없다고 판단한다.
방향성 유무가 판별되면 이에 따라 인트라 예측 부분에서는 이전 코덱과는 달리 방향성에 따른 최적의 예측 모드를 정하고 코딩하게 된다. 그리고 방향성 유무는 다음 양자화 매트릭스를 결정하기 위해서 쓰이게 된다.
<인트라 모드 방향성에 따른 양자화 매트릭스 적용 방법>
앞에서 인트라 모드의 방향성 유무를 알게 된 후 이에 적절한 양자화 매트릭 스를 적용하게 된다. 인트라 모드와 방향성 유무에 따라 각각 가중치가 다른 18개의 매트릭스로 분류가 되는데, 이 중 하나를 선택하여 양자화에 적용하게 된다.
18개의 매트릭스는 각각 인트라 9개의 예측 모드에 방향성이 있는 것과 없는 것으로 분기되어, DCT 계수 분포의 패턴을 보고 미리 18개의 매트릭스를 만들게 된다. 이 것을 인코더와 디코더가 각각 공유하고 있어 따로 매트릭스나 선택하는 인덱스를 보낼 필요는 없게 된다.
이와 같이 영상 시퀀스의 인트라 예측 모드의 분포를 분석한 결과 , 18개의 매트릭스는 그림 12(예시)와 같이 될 수 있으며, 만드는 알고리즘은 다음과 같다.
Step 1) 인트라 예측 모드 9가지를 각각의 방향 특성에 따라 0,5,7번과 1,6,8번과 2,3,4번으로 분기한다.
Step 2) 0,5,7번 인트라 예측 모드는 DCT 계수 분포가 블록 위쪽에 편중되므로, 매트릭스 위쪽의 양자화 스케일 값을 왼쪽의 양자화 스케일 값과 비교하여 더 작은 값으로 적용한다.
Step 3) 1,6,8번 인트라 예측 모드는 DCT 계수 분포가 블록 왼쪽에 편중되므로, 매트릭스 왼쪽의 양자화 스케일 값을 위쪽의 양자화 스케일 값과 비교하여 더 작은 값으로 적용한다.
Step 4) 2,3,4번 인트라 예측 모드는 DCT 계수 분포가 왼쪽과 위쪽에 고르게 분포하면서 비례하게 분포하므로, 매트릭스 내 양자화 스케일 값을 똑같이 적용하도록 한다.
Step 5) step(스텝) 2번, 3번과 4번의 과정으로 나뉘어 지는 매트릭스는 세세하게 양자화 스케일 값을 조절하여 인트라 예측 모드의 특성에 따라 각각 9개의 매트릭스가 만들어질 수 있다.
Step 6) 인트라 예측 모드 번호에 따라 모드 9개의 매트릭스가 만들어 진 후, 각각 인트라 예측 모드마다 2개씩 방향성이 보이는 것과 보이지 않는 것으로 분기된다.
Step 7) 인트라 예측 모드의 방향성이 보인다면, DCT계수의 분포가 방향성이 안보이는 것보다 상대적으로 뚜렷하게 큰 격차가 있으므로, 매트릭스 안에 양자화 스케일 값의 차이를 방향성이 안보이는 것보다 더 크게 한다.
Step 8) 인트라 예측 모드의 방향성이 안 보인다면, DCT계수의 분포가 방향성이 보이는 것보다 상대적으로 작은 격차가 있으므로, 매트릭스 안에 양자화 스케일 값의 차이를 방향성이 보이는 것보다 더 작게 한다.
Step 9) 앞의 모든 과정을 거치게 되면 모두 18개의 매트릭스가 만들어지게 된다.
양자화 매트릭스가 모두 만들어 지게 되면 인코더와 디코더는 각각 18개의 정해진 양자화 매트릭스를 공유하면서 가지고 있으며, 인트라 예측이 된 후, 인트라 예측 모드와 방향성 유무를 따져 그림 13과 같이 해당 매트릭스를 선택하고 이를 양자화에 사용하도록 하며, 사용된 양자화 매트릭스 인덱스는 다음 스캐닝을 할 때 참고가 되도록 한다.
<양자화 매트릭스에 따른 스캔 적용 방법>
양자화 매트릭스가 선택이 되어 인덱스를 받으면, 스캔을 할 때는 이에 알맞은 스캔을 선택하게 된다. 스캔 방법 또한 인코더와 디코더가 공유하고 있어 알맞은 것을 선택한다.
즉, 스캔 방법은 양자화 매트릭스내의 스케일 값의 작은 순부터 큰순으로 순서를 정해 스캐닝이 되도록 한다. 이로 인해 다음의 VLC(Variable Length Coding)코딩을 할 때 압축 효율을 높일 수 있게 된다.
이와 같이 양자화 매트릭스의 인덱스에 따라, 그림 14(예시)와 같이 될 수 있으며, 스캔을 선택하는 블록도는 그림 15와 같고, 스캔 순서를 정하는 알고리즘은 다음과 같다.
Step 1) 모두 18개의 양자화 매트릭스 중 해당 인덱스를 통해 스캔 방법을 선택하도록 분기 된다.
Step 2) 해당 양자화 매트릭스 내 스케일 값을 보고 작은 순부터 큰 순으로 스캐닝을 할 수 있도록 한다.
위의 과정에서 알맞은 스캔을 선택하여 스캐닝을 한 후 VLC(Variable Length Coding)코딩을 하여 디코더에 전송하게 된다.
디코더는 그림 16과 같으며, 과정은 인코딩 과정과 반대로 하게 된다.
즉, 디코더에서 인트라 예측 모드를 알게 되면 이를 통해 방향성을 판별하게 되고, 인트라 예측 모드의 방향성 유무와 인트라 예측 모드 9개를 통해 알맞은 scan을 적용하고, 또 이에 알맞은 양자화 매트릭스를 선택하여 역 양자화를 하게 한다.
[발명의 장치]
본 발명에서 동영상 인코더/디코더에 포함되는 인트라 방향성에 따른 모드 예측과 양자화 매트릭스 적용과 스캐닝의 수행부는 그림 17과 같다. 원본 영상을 입력 받아 인트라 예측을 하고 엔트로피 코딩된 비트스트림을 출력으로 한다. 인트라 방향성에 따른 모드 예측과 양자화 매트릭스 적용과 스캐닝의 수행부는 블록 단위로 처리를 수행하는데, "인트라 예측부", "인트라 모드 방향성 유무 판별부", DCT 변환부", "양자화부", "인트라 모드 방향성에 따른 양자화 매트릭스 적용부", "스캐닝부", "양자화 매트릭스에 따른 스캔 적용부", "엔트로피 코딩부"로 구성된다.
인트라 예측부에서는 원본 영상을 입력 받아 인트라 예측을 하게 된다. 이때 인트라 모드 방향성 유무 판별부의 방향성에 따라 기존의 코덱보다 더 정확한 예측을 하게된다. 인트라 예측이 끝나면 주파수 공간으로 변호나하는 DCT변환부를 거치게 되며 이 후 양자화부에서 양자화를 하게 된다. 양자화를 할 때는 인트라모드 방 향성에 따른 양자화 매트릭스 적용부에서 방향성을 보고 알맞은 양자화 매트릭스를 선택하여 양자화에서 적용되도록 한다. 스캐닝부에서는 양자화부에서 나온 계수 값들을 양자화 매트릭스에 따른 스캔 적용부에서 정한 스캔 순서에 따라 스캔을 하도록 한다. 마지막으로 엔트로피 코딩부에서는 스캔 된 값들을 엔트로피 코딩하여 비트스트림을 만들게 된다.
도 1(그림 1)은 H.264의 부호화에서 참조하는 블록의 위치를 보여 준다.
도 2(그림 2)는 4×4 블록의 부호화 순서를 보여 준다.
도 3(그림 3)은 4×4 블록의 화면내 예측 구조를 보여 준다.
도 4(그림 4)는 4×4 블록을 위한 지그재그 스캔 구조를 보여 준다.
도 5(그림 5)는 인트라 예측의 9가지 모드를 보여 준다.
도 6(그림 6)은 인트라 예측 모드의 방향성을 보여 준다.
도 7(그림 7)은 DCT 기본 패턴을 보여 준다.
도 8(그림 8)은 방향성 인트라 모드 예측 후 DCT 계수 분포의 예를 보여 준다.
도 9(그림 9)는 방향성 인트라 코딩 인코더의 블록도이다.
도 10(그림 10)은 인트라 모드 방향성 판별 위치를 보여 준다.
도 11(그림 11)은 인트라 모드 방향성 유무 판별 블록도를 보여 준다.
도 12(그림 12)는 양자화 매트릭스의 예시이다.
도 13(그림 13)은 방향성에 따른 양자화 매트릭스 적용을 보여 준다.
도 14(그림 14)는 스캔 방법의 예시이다.
도 15(그림 15)는 양자화 매트릭스에 따른 스캔 방법 적용 블록도이다.
도 16(그림 16)은 방향성 인트라 예측 코딩 디코더의 전체 블록도이다.
도 17(그림 17)은 인트라 방향성 예측에 따른 양자화 매트릭스 적용과 스캐닝에 대한 장치를 보여 준다.
Claims (7)
- 비디오 코딩 방법에 있어서,현재 블록의 인트라 모드와 주변 블록의 인트라 모드에 대한 방향성 유무를 판단하는 단계와;판단된 상기 방향성에 기초하여 상기 현재 블록에 대한 최적의 인트라 모드를 설정하는 단계와;상기 방향성과 상기 최적의 인트라 모드에 기초하여 상기 현재 블록에 대한 양자화 매트릭스를 결정하는 단계와;상기 양자화 매트릭스 내의 스케일값을 스캐닝하는 단계를 포함하는 것을 특징으로 하는 비디오 코딩 방법.
- 제1항에 있어서,상기 방향성 유무를 판단하는 단계는,상기 현재 블록의 인트라 모드와, 복수의 주변 블록 중 상기 현재 블록의 인트라 모드에 따라 결정되는 어느 하나의 주변 블록의 인트라 모드의 동일성 여부를 판단하는 단계와;상기 현재 블록의 인트라 모드와 상기 주변 블록의 인트라 모드가 동일하면 상기 방향성이 존재하는 것으로 판단하고, 상기 현재 블록의 인트라 모드와 상기 주변 블록의 인트라 모드가 동일하지 않으면 상기 방향성이 존재하지 않는 것으로 판단하는 단계를 포함하는 것을 특징으로 하는 비디오 코딩 방법.
- 제2항에 있어서,상기 복수의 주변 블록은 상기 현재 블록의 좌측에 있는 좌측 블록, 상기 현재 블록의 상측에 있는 상측 블록, 상기 상측 블록의 좌측에 존재하는 우측 모서리 블록, 상기 좌측 블록과 상기 상측 블록 사이에 있는 좌측 모서리 블록을 포함하는 것을 특징으로 하는 비디오 코딩 방법.
- 제2항에 있어서,상기 양자화 매트릭스를 결정하는 단계는,상기 인트라 모드 별로 상기 방향성 유무에 따라 두 개의 양자화 매트릭스를 설정하는 단계와;상기 방향성 유무에 기초하여 상기 최적의 인트라 모드에 대응하는 양자화 매트릭스를 선택하는 단계를 포함하는 것을 특징으로 하는 비디오 코딩 방법.
- 제4항에 있어서,상기 인트라 모드는 모두 9개이고, 상기 양자화 매트릭스는 18개로 설정되는 것을 특징으로 하는 비디오 코딩 방법.
- 제4항에 있어서,상기 스캐닝하는 단계는,상기 선택된 양자화 매트릭스에 따라 인덱스를 부여하는 단계와;상기 인덱스에 따라 스캔 방법을 선택하는 단계와;상기 스케일값이 작은 값에서부터 큰 값의 순서로 스캔하는 단계를 포함하는 것을 특징으로 하는 비디오 코딩 방법.
- 삭제
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020080000576A KR101433169B1 (ko) | 2008-01-03 | 2008-01-03 | 인트라 방향성에 따른 모드 예측 및 양자화 매트릭스와스캐닝 적용 방법 및 장치 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020080000576A KR101433169B1 (ko) | 2008-01-03 | 2008-01-03 | 인트라 방향성에 따른 모드 예측 및 양자화 매트릭스와스캐닝 적용 방법 및 장치 |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20090074886A KR20090074886A (ko) | 2009-07-08 |
KR101433169B1 true KR101433169B1 (ko) | 2014-08-28 |
Family
ID=41332142
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020080000576A KR101433169B1 (ko) | 2008-01-03 | 2008-01-03 | 인트라 방향성에 따른 모드 예측 및 양자화 매트릭스와스캐닝 적용 방법 및 장치 |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR101433169B1 (ko) |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20110013700A1 (en) * | 2009-07-20 | 2011-01-20 | Samsung Electronics Co., Ltd. | Method and apparatus for coding and decoding color channels in layered video coding and decoding |
AU2012200319B2 (en) * | 2012-01-19 | 2015-11-26 | Canon Kabushiki Kaisha | Method, apparatus and system for encoding and decoding the significance map for residual coefficients of a transform unit |
AU2012200345B2 (en) | 2012-01-20 | 2014-05-01 | Canon Kabushiki Kaisha | Method, apparatus and system for encoding and decoding the significance map residual coefficients of a transform unit |
KR20170118728A (ko) * | 2015-02-17 | 2017-10-25 | 엘지전자 주식회사 | 적응적 스캔 오더를 이용하여 비디오 신호를 인코딩, 디코딩하는 방법 및 장치 |
BR112021020026A2 (pt) * | 2019-04-12 | 2021-12-07 | Beijing Bytedance Network Tech Co Ltd | Método para processamento vídeo, aparelho para processar de dados de vídeo, meio de armazenamento e meio de gravação legíveis por computador não transitórios |
KR20220038128A (ko) * | 2019-08-22 | 2022-03-25 | 엘지전자 주식회사 | 인트라 예측 장치 및 방법 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20070062146A (ko) * | 2005-12-12 | 2007-06-15 | 삼성전자주식회사 | 영상의 인트라 예측 부호화, 복호화 방법 및 장치 |
-
2008
- 2008-01-03 KR KR1020080000576A patent/KR101433169B1/ko active IP Right Grant
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20070062146A (ko) * | 2005-12-12 | 2007-06-15 | 삼성전자주식회사 | 영상의 인트라 예측 부호화, 복호화 방법 및 장치 |
Also Published As
Publication number | Publication date |
---|---|
KR20090074886A (ko) | 2009-07-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR101373819B1 (ko) | 인트라 예측 모드 복호화 방법 | |
KR20210131950A (ko) | 영상 복호화 장치 | |
KR101947657B1 (ko) | 인트라 예측 정보 부호화 방법 및 장치 | |
KR100882949B1 (ko) | 화소 유사성에 따라 적응적인 이산 코사인 변환 계수스캐닝을 이용한 부호화/복호화 장치 및 그 방법 | |
KR20120012383A (ko) | 예측 블록 생성 장치 | |
KR20130045148A (ko) | 인트라 예측 모드에서의 영상 부호화 방법 및 장치 | |
KR20130131424A (ko) | 영상 부호화 장치 및 방법 | |
WO2014049981A1 (ja) | 動画像符号化装置、動画像復号装置、動画像符号化方法及び動画像復号方法 | |
KR101433169B1 (ko) | 인트라 방향성에 따른 모드 예측 및 양자화 매트릭스와스캐닝 적용 방법 및 장치 | |
KR20130045151A (ko) | 복원 블록을 생성하는 방법 및 장치 | |
KR102422711B1 (ko) | 비디오 복호화에서의 분할 블록 복호화 방법 | |
Elyousfi et al. | Fast intra prediction algorithm for H. 264/AVC based on quadratic and gradient model | |
KR101739580B1 (ko) | 적응적 스캔 장치 및 그 스캔 방법 | |
KR20130098254A (ko) | 예측 블록 생성 장치 | |
WO2014049982A1 (ja) | 動画像符号化装置、動画像復号装置、動画像符号化方法及び動画像復号方法 | |
WO2015045301A1 (ja) | 映像符号化装置、映像符号化方法および映像符号化プログラム | |
KR20170088318A (ko) | 영상 부호화 방법 및 장치, 및 부호화된 비트스트림을 포함하는 기록 매체 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
E902 | Notification of reason for refusal | ||
E701 | Decision to grant or registration of patent right | ||
N231 | Notification of change of applicant | ||
GRNT | Written decision to grant | ||
FPAY | Annual fee payment |
Payment date: 20170725 Year of fee payment: 4 |
|
FPAY | Annual fee payment |
Payment date: 20190625 Year of fee payment: 6 |