KR101375664B1 - 영상의 디퓨전 특성을 이용한 영상 부호화/복호화 방법 및장치 - Google Patents

영상의 디퓨전 특성을 이용한 영상 부호화/복호화 방법 및장치 Download PDF

Info

Publication number
KR101375664B1
KR101375664B1 KR1020070109155A KR20070109155A KR101375664B1 KR 101375664 B1 KR101375664 B1 KR 101375664B1 KR 1020070109155 A KR1020070109155 A KR 1020070109155A KR 20070109155 A KR20070109155 A KR 20070109155A KR 101375664 B1 KR101375664 B1 KR 101375664B1
Authority
KR
South Korea
Prior art keywords
pixel
value
current
image
pixels
Prior art date
Application number
KR1020070109155A
Other languages
English (en)
Other versions
KR20090043353A (ko
Inventor
정재우
김대희
조대성
김현문
최웅일
Original Assignee
삼성전자주식회사
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 삼성전자주식회사 filed Critical 삼성전자주식회사
Priority to KR1020070109155A priority Critical patent/KR101375664B1/ko
Priority to US12/076,278 priority patent/US8265149B2/en
Publication of KR20090043353A publication Critical patent/KR20090043353A/ko
Application granted granted Critical
Publication of KR101375664B1 publication Critical patent/KR101375664B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods 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/182Methods 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 pixel
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/103Selection of coding mode or of prediction mode
    • H04N19/11Selection of coding mode or of prediction mode among a plurality of spatial predictive coding modes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/136Incoming video signal characteristics or properties
    • H04N19/137Motion inside a coding unit, e.g. average field, frame or block difference
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/136Incoming video signal characteristics or properties
    • H04N19/14Coding unit complexity, e.g. amount of activity or edge presence estimation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/593Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving spatial prediction techniques
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/60Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
    • H04N19/61Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding in combination with predictive coding

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)

Abstract

본 발명은 영상의 디퓨전 특성을 이용하여 영상을 부호화/복호화하는 방법 및 장치에 관한 것으로, 현재 화소의 주변 화소들의 값 간에 화소를 향한 방향으로의 변이량들에 기초하여 주변 화소들의 값을 이용하여 현재 화소의 값을 예측하고, 주변 화소들의 값 간 변이량들 중에서 적어도 하나 이상을 이용하여 예측된 현재 화소값의 보정값을 산출하고, 예측된 현재 화소값에 보정값을 반영하여 화소값을 결정하고, 결정된 화소값을 이용하여 영상을 복원한다.

Description

영상의 디퓨전 특성을 이용한 영상 부호화/복호화 방법 및 장치{Method and apparatus of encoding/decoding image using diffusion property of image}
본 발명은 영상(image)을 부호화/복호화(encoding/decoding)하는 방법 및 장치에 관한 것이다.
현재, 영상을 부호화 내지 복호화하는 대표적인 방식으로는 영상의 시간적 중복성을 제거하는 방식의 인터 예측(inter prediction)과 영상의 공간적 중복성을 제거하는 방식의 인트라 예측(intra prediction)이 있다. 특히, H.264/AVC(Advanced Video Coding) 비디오 표준에는 영상을 4 ×4 블록 단위로 9 가지의 방향들을 이용하여 주변 화소들의 값으로부터 어느 하나의 화소의 값을 예측하는 인트라 예측 방식이 포함되어 있다.
본 발명이 이루고자 하는 기술적 과제는, 압축 효율을 높이거나 복잡도를 낮추기 위한 영상의 디퓨전 특성을 이용한 영상 부호화/복호화 방법 및 장치를 제공하는 것이다.
상기의 과제를 이루기 위한 본 발명에 의한 인트라 예측을 이용한 동영상 복호화 방법은, 비트스트림을 복호화함으로써, 동영상을 구성하는 영상들 중 현재 영상과 상기 현재 영상의 예측 영상 간의 차이를 복원하는 단계; 상기 현재 영상의 현재 화소를 중심으로 한 다수의 방향들에 위치한 주변 화소들간의 화소 값 변이량들에 기초하여 상기 주변 화소들 중 적어도 하나의 주변 화소로부터 상기 현재 화소의 값을 예측하는 단계; 및 상기 예측된 화소 값들을 포함하는 예측 영상에 상기 복원된 차이를 가산함으로써, 상기 현재 영상의 복원 영상을 생성하는 단계를 포함하는 것을 특징으로 한다.
상기의 과제를 이루기 위한 본 발명에 의한 기록 매체는, 비트스트림을 복호화함으로써, 동영상을 구성하는 영상들 중 현재 영상과 상기 현재 영상의 예측 영상 간의 차이를 복원하는 단계; 상기 현재 영상의 현재 화소를 중심으로 한 다수의 방향들에 위치한 주변 화소들간의 화소 값 변이량들에 기초하여 상기 주변 화소들 중 적어도 하나의 주변 화소로부터 상기 현재 화소의 값을 예측하는 단계; 및 상기 예측된 화소 값들을 포함하는 예측 영상에 상기 복원된 차이를 가산함으로써, 상기 현재 영상의 복원 영상을 생성하는 단계를 포함하는 방법을 컴퓨터에서 실행시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록 매체임을 특징으로 한다.
상기의 과제를 이루기 위한 본 발명에 의한 인트라 예측을 이용한 동영상 부호화 방법은, 동영상을 구성하는 영상들 중 현재 영상의 현재 화소를 중심으로 한 다수의 방향들에 위치한 주변 화소들간의 화소 값 변이량들에 기초하여 상기 주변 화소들 중 적어도 하나의 주변 화소로부터 상기 현재 화소의 값을 예측하는 단계; 상기 예측된 화소의 값에 기초하여 상기 현재 영상의 예측 영상을 생성하는 단계; 및 상기 현재 영상과 상기 생성된 예측 영상 간의 차이를 부호화하는 단계를 포함하는 것을 특징으로 한다.
이하에서는 도면을 참조하여 본 발명의 바람직한 실시예들을 상세히 설명한다.
도 1은 본 발명의 바람직한 일 실시예에 따른 동영상을 부호화하는 장치의 구성도이다. 도 1을 참조하면, 본 실시예에 따른 동영상을 부호화하는 장치는 움직임 추정부(100), 움직임 보상부(105), 인트라 예측 선택부(110), 인트라 예측부(115), 감산부(120), 변환부(125), 양자화부(130), 엔트로피 부호화부(140), 역양자화부(145), 역변환부(150), 가산부(155), 필터(160), 및 프레임 메모리(165)로 구성된다.
움직임 추정부(100)는 프레임 메모리(165)에 저장된 이전 영상의 복원 영상(이하, 참조 영상이라 한다)들 중 적어도 하나의 참조 영상을 기준으로 동영상을 구성하는 영상들 중 외부로부터 현재 입력된 영상(이하 "현재 영상"이라 한다)의 움직임을 추정(estimate)한다. 특히, 이하에 기재된 영상이라는 용어는 "픽 처(picture)", 프레임(frame) 등과 같은 동등한 의미를 갖는 다른 용어로 대치되어 사용될 수 있다.
움직임 보상부(105)는 움직임 추정부(100)에 의한 현재 영상의 움직임 추정을 이용하여 프레임 메모리(165)에 저장된 적어도 하나의 참조 영상로부터 현재 영상의 예측 영상을 생성한다. 움직임 추정부(100)와 움직임 보상부(105)를 이용하여 참조 영상으로부터 현재 영상의 예측 영상을 생성하는 방법을 인터 예측 방법이라고 한다.
인트라 예측 선택부(110)는 H.264/AVC(Advanced Video Coding) 비디오 표준을 따르는 제 1 인트라 예측 방식과 영상의 디퓨전(diffusion) 특성을 이용한 제 2 인트라 예측 방식 중 어느 하나를 영상의 특성이나 영상이 이용되는 어플리케이션의 종류에 따라 선택한다. 인트라 예측부(115)는 인트라 예측 선택부(110)에 의해 선택된 결과에 따라 제 1 인트라 예측 방식과 제 2 인트라 예측 방식 중 어느 하나에 따라 현재 영상의 화소들의 값을 예측한다.
인트라 예측부(115)는 제 1 인트라 예측 방식에 따라 현재 영상의 화소들의 값을 예측하는 제 1 인트라 예측부(116)와 제 2 인트라 예측 방식에 따라 현재 영상의 화소들의 값을 예측하는 제 2 인트라 예측부(117)로 구성된다.
제 1 인트라 예측부(116)는 H.264/AVC(Advanced Video Coding) 비디오 표준에 따라, 영상을 4 ×4 블록 단위 또는 16 ×16 블록 단위로 분할하고, 이와 같이 분할된 블록 단위로 9 개의 방향들 중 어느 하나의 방향을 적용하여 어떤 블록의 화소들의 값을 이 블록의 주변에 위치한 참조 블록의 화소들의 값로부터 예측한다.
제 2 인트라 예측부(117)는 영상의 디퓨전 특성을 이용하여 현재 영상의 화소들의 값을 예측한다. 영상의 디퓨전 특성이란 영상 내부의 화소들간의 값 변화는 어떤 특정 방향으로 일정하게 나타나는 것이 아니라, 임의의 방향으로 확산되어 나타나는 특성을 의미한다. 따라서, H.264/AVC(Advanced Video Coding) 비디오 표준에 따른 종래의 인트라 예측 방식은 4 ×4 블록 단위 또는 16 ×16 블록 단위로 이블록의 모든 화소들에 9 개의 방향들 중 어느 하나의 방향만을 적용하여 화소 값들을 예측하였기 때문에 이러한 영상의 디퓨전 특성을 반영할 수 없었고, 그 결과 인트라 예측 효율이 떨어졌다.
본 실시예에 따르면, 제 2 인트라 예측부(117)는 이와 같은 영상의 디퓨전 특성을 고려하여, 블록 단위가 아닌, 화소 단위로 다수의 방향들 중 어느 하나의 방향을 적용하여 화소 값들을 예측한다. 이와 같이 함으로써 종래의 인트라 예측 방식보다 정확한 화소값 예측이 가능하다. 다만, 종래의 인트라 예측 방식은 블록 단위로 하나의 예측 방향을 적용하였기 때문에 인트라 예측을 위한 계산량이 적다. 따라서, 인트라 예측 선택부(110)는 영상의 특성이 블록 단위로 하나의 예측 방향을 적용하여도 인트라 예측 효율이 떨어지지 않는 경우나 인트라 예측을 위한 계산량이 적어도 되는 어플리케이션인 경우에는 제 1 인트라 예측 방식을 선택하고, 나머지 경우에는 제 2 인트라 예측 방식을 선택한다.
도 2는 도 1에 도시된 제 2 인트라 예측부(117)의 상세 구성도이다. 도 2를 참조하면, 제 2 인트라 예측부(117)는 분석부(210), 화소값 예측부(220), 보정값 산출부(230), 및 화소값 결정부(240)로 구성된다.
분석부(210)는 영상의 특성이나 영상이 이용되는 어플리케이션의 종류를 분석하고 화소 예측 순서, 디퓨전 진행 방향, 및 예측에 사용되는 화소의 수 등을 결정한다. 이러한 결정을 통해 영상의 특성이나 영상이 이용되는 어플리케이션의 종류에 적응적으로 인트라 예측을 수행할 수 있다. 보다 상세하게 살펴보면, 화소 예측 순서는 예측하고자 하는 블록 내의 화소값들을 예측하는 순서를 말한다. 화소들의 값을 예측하는 순서는 블록의 좌측 상단에서부터 우측 하단 방향 순서이다. 도 4와 도 8에서 화소 예측 순서의 실시예를 상세히 살펴보기로 한다. 디퓨전 진행 방향은 예측하고자 하는 화소(이하, 현재 화소라고 한다)의 주변 화소로부터 현재 화소로 향하는 방향을 말한다. 디퓨전 진행 방향에 대해서는 도 5 내지 도 7과 도 9에서 상세히 살펴보기로 한다. 예측에 사용되는 화소의 수는 디퓨전 진행 방향에 위치해 있으면서, 예측에 사용되는 주변 화소들의 갯수를 말하는 것으로 적어도 한개 이상의 주변 화소를 사용한다.
화소값 예측부(220)는 분석부(210)에서 결정한 결과들을 기초로 하여 현재 화소를 중심으로 한 다수의 방향들에 위치한 주변 화소들간의 화소 값 변이량들에 기초하여 주변 화소들 중 적어도 하나의 주변 화소로부터 현재 화소의 값을 예측한다. 보다 상세히 살펴보면, 화소값 예측부(220)는 현재 화소의 주변 화소값들 간에 현재 화소를 향한 방향으로의 변이량들 중에서 적어도 하나 이상의 변이량에 대응하는 주변 화소값들을 이용하여 현재 화소값을 예측한다. 특히, 화소값 예측부(220)는 현재 화소의 주변 화소값들로부터 현재 화소로 향한 방향으로의 변이량들 중에서 가장 작은 변이량에 대응하는 화소값들을 선택한다. 이러한 변이량은 현 재 화소의 주변 화소값들 간의 차이(difference)나 그래디언트(gradient) 등을 이용하여 구한다. 화소값 예측부(220)는 현재 화소의 주변 화소값들로부터 현재 화소로 향한 방향으로의 변이량들 중에서 작은 순서로 적어도 하나 이상의 변이량에 대응하는 화소값들을 선택할 수 있다.
화소값 예측부(220)에서 예측된 현재 화소의 값은 특정 디퓨전 진행 방향에 대응하는 주변 화소값들을 이용하여 예측한 값이므로, 특정 디퓨전 진행 방향에 대응하지 않으면서 예측된 화소값 주변에 있는 화소들의 값들 간의 변화를 반영하지 않고 있다. 따라서, 보정값 산출부(230)가 산출하는 보정값으로 화소값 예측부(220)에서 예측된 화소값을 보정할 필요가 있다.
보정값 산출부(230) 현재 화소의 주변 화소값들 간 변이량들 중에서 적어도 하나 이상을 이용하여 상기 산출된 화소값의 보정값을 산출한다. 화소값 예측부(220)에서 예측한 화소값은 현재 화소의 주변 화소값들로부터 현재 화소로 향한 방향들 중 변이량이 가장 작은 방향만을 반영하여 예측되므로, 다른 디퓨전 진행 방향에 대응하는 주변 화소값들이 화소값 예측부(220)에서 예측된 화소값에 반영되어 있지 않다. 따라서, 보정값 산출부(230)는 현재 화소의 주변 화소값들로부터 현재 화소로 향한 방향들에 대응하는 경사도, 전도계수, 거리계수를 이용하여 보정값을 산출한다.
경사도란, 주변 화소값들 간의 변이량을 의미하는 것으로 주변 화소값들 간의 차(difference) 또는 그래디언트(gradient) 등 여러 수학적 방법을 이용하여 산출할 수 있다. 전도계수란, 경사도에 대응하는 가중치를 말한다. 주변 화소값들 간 의 변이량이 작을수록 현재 화소의 값에 큰 영향을 미치도록 하기 위해서 경사도가 작을수록 전도계수는 큰 값을 가지도록 설정한다. 거리계수란, 현재 화소와 주변 화소 간의 거리를 고려한 가중치를 나타낸다. 현재 화소와 주변 화소 간의 거리가 멀수록 현재 화소값에 적은 영향을 미치도록 하기 위해서, 현재 화소와 주변 화소 간의 거리가 멀수록 작은 값을 가지도록 설정한다.
화소값 결정부(240)는 보정값 산출부(230)에서 산출된 보정값을 이용하여 화소값 예측부(220)에서 예측된 현재 화소의 값을 보정함으로써, 현재 화소의 값을 최종적으로 결정한다.
화소값 예측부(220)와 보정값 산출부(230)에서 출력된 값을 이용하여 최종 화소값을 결정하는 방법의 일 실시예는 다음의 수학식 1과 같다.
Figure 112007077612396-pat00001
최종적으로 예측된 화소값
Figure 112007077612396-pat00002
는 화소값 예측부(220)의 출력값(I pred )과 보정값 산출부(230)의 출력값(
Figure 112007077612396-pat00003
) 각각에 가중치(α,β )를 적용한 후 가산함으로써 결정된다.
보다 상세하게 설명하면, I pred 는 디퓨전 진행 방향에 대응하는 주변 화소값들 간의 변이량들 중에서 가장 작은 변이량에 대응하는 주변 화소값들을 이용하여 현재 화소의 값을 예측한 값이다. 간단하게 주변 화소값들을 이용하여 현재 화소값 을 예측시, 가장 작은 변이량에 대응하는 주변 화소 값을 사용한다.
한편, 보정값(
Figure 112007077612396-pat00004
)는 디퓨전 진행 방향에 대응하는 화소값들을 이용하여 구한 경사도(gi), 전도계수(ci), 거리계수(ri)들로부터 계산되며, I pred 의 보정값으로 사용된다. i는 현재 화소의 디퓨전 진행 방향을 나타내는 인덱스이다.
보정값(
Figure 112007077612396-pat00005
)을 디퓨전 진행 방향 중 적어도 하나 이상의 방향에 대응하는 거리계수, 전도계수, 경사도의 곱들의 총 합계로써 구할 수 있다. 이때 이러한 적어도 하나 이상의 방향은 영상의 특성이나 영상이 이용되는 어플리케이션의 종류에 따라 디퓨전 진행 방향 중 적어도 하나 이상을 선택한다.
gi i 방향에 대한 경사도를 나타내는 값이다. 경사도란, 주변 화소값들 간의 변이량을 의미하는 것으로 주변 화소값들 간의 차(difference) 또는 그래디언트(gradient) 등 여러 수학적 방법을 이용하여 산출할 수 있다. 디퓨전 진행 방향 상에 존재하는 적어도 두 개 이상의 주변 화소값으로부터 경사도를 구하고, 가장 경사도가 작은 방향을 선택한다. 화소값이란, 휘도값(Y), 색차신호값(Cb,Cr)이 될 수 있다.
ri는 어떤 디퓨전 진행 방향에 위치한 현재 화소와 주변 화소간의 거리를 고려한 가중치를 나타내는 거리계수이다. 현재 화소와 주변 화소간의 거리가 가까울수록 주변 화소의 값이 현재 화소의 값과 비슷한 화소값을 갖는다고 예상되므로 현재 화소와 주변 화소 간의 거리가 가까울수록, 이 디퓨전 진행 방향의 ri값을 크게 함으로써, 현재 화소의 값에 큰 영향을 미치도록 한다.
ci는 주변 화소값들이 현재 화소의 값과의 유사한 정도를 나타내는 전도계수이다. 주변 화소값들이 현재 화소의 값과의 유사한 정도가 크면 클수록 전도성이 크다고 말할 수 있다. 주변 화소값들이 현재 화소의 값과의 유사한 정도를 판단하는 것은 주변 화소값들 간의 경사도로부터 알 수 있다. 즉, 큰 경사도에 대응하는 주변 화소값들은 작은 경사도에 대응하는 주변 화소값들보다 현재 화소값과 차이가 크다고 예상되므로, 큰 경사도에는 작은 전도계수를 대응시킨다. 보다 상세하게 설명하면, 경사도가 낮은 경우에는 전도계수를 높은 값에 대응시킴으로써, 현재 화소값 산출에 많은 영향으로 주도록 한다. 즉, 어느 디퓨전 진행 방향에 대해 경사도가 낮으면, 1에 가까운 값을 가지고, 경사도가 높으면, 0에 가까운 값을 갖도록 전도계수를 대응시킬 수 있다. 이러한 전도계수를 결정하기 위해 다음의 수학식 2 또는 수학식 3을 이용할 수 있다. 수학식 2와 수학식 3에 의해서 구해지는 전도계수는 0과 1사이의 값을 갖는다.
Figure 112007077612396-pat00006
즉, 보정값 산출부(230)는 경사도(▽g)의 절대 값을 소정의 상수(K)로 나눈 값을 제곱한 값에 마이너스를 취한 다음, 이 값을 e의 지수로 사용하여 전도계수를 산출한다. 만약, 어떤 디퓨전 진행 방향의 화소들간의 경사도가 낮으면, 즉 경사도가 0에 가까우면, 보정값 산출부(230)에 의해 산출된 전도 계수는 1에 가깝게 될 것이다. 만약, 어떤 디퓨전 진행 방향의 화소들간의 경사도가 높으면, 즉, 경사도가 아주 크면 보정값 산출부(230)에 의해 산출된 전도 계수는 0에 가깝게 될 것이다. 여기에서, 소정의 상수(K)는 본 실시예가 적용되는 환경에 따라 조정되는 값이다.
한편, 다음의 수학식 3에 의해서 전도계수를 구할 수 있다. 수학식 2는 지수 함수를 사용하고 있기 때문에 컴퓨터에서의 처리가 곤란한다. 이에 따라, 수학식 3 은 이러한 지수 함수를 사용하지 않고, 덧셈 연산, 곱셈 연산 및 나눗셈 연산만으로 지수 함수에 근사된 함수를 구현하였다.
Figure 112007077612396-pat00007
즉, 보정값 산출부(230)는 경사도(▽g)의 크기를 소정의 상수(K)로 나눈 값을 제곱한 값에 1을 더한 후, 역수를 취함으로써, 전도계수를 구한다. 여기에서, 소정의 상수(K)는 본 실시예가 적용되는 환경에 따라 조정되는 값이다.
이상과 같이 예측 화소값 I pred 와 보정값(
Figure 112007077612396-pat00008
)을 산출한 후, 각각의 값에 α,β 가중치를 부여한다. α,β는 0과 1사이의 값이 된다. 가중치를 적용하는 것은 디퓨전 진행 방향 중 특정 방향을 선택하여 구한 예측 화소값 I pred 과 디퓨전 진행 방향을 모두 고려하여 구한 보정값(
Figure 112007077612396-pat00009
) 중에서 영상의 특성이나 영상 이 이용되는 어플리케이션의 종류에 따라 어느 값에 더 비중을 둘 것인지에 따라 다른 가중치를 부여할 필요가 있기 때문이다. 예를 들어, 화소값 변화가 특정한 방향성을 가질 때는 α는 1에 가까운 값이 될 것이다.
제 2 인트라 예측부(117)는 화소를 예측함에 있어, 현재 화소의 주변 화소값들 간의 변이량들 중 가장 작은 변이량에 대응하는 화소값들과 주변 화소값들 간의 변이량들을 이용함으로써, 현재 화소의 값을 예측한다.
한편 도 1을 참조하면, 인트라 예측부(115)는 블록단위의 방향성을 고려한 제 1 인트라 예측부(116)와 제 2 인트라 예측부(117)를 포함하고 있으며, 이 중 어느 하나를 인트라 예측 선택부(110)로부터 선택신호를 받아 수행한다. 제 1 인트라 예측부(116)는 4 ×4 블록에 대한 인트라 예측의 경우, 인트라 예측 모드로써 수직(vertivcal) 모드, 수평(horizontal) 모드, DC(Direct Current) 모드, 대각선 왼쪽(Diagonal Down-left) 모드, 대각선 오른쪽 모드(Diagonal Down-right) 모드, 수직 오른쪽(Vertical right) 모드, 수직 왼쪽(Vertical left) 모드, 수평 위쪽(Horizontal-up) 모드, 및 수평 아래쪽(Horizontal-down) 모드 등 총 9개의 모드를 이용한다.
제 2 인트라 예측부(117)는 정해진 한 방향으로 예측을 수행하는 것이 아니라 영상의 특성이나 영상이 이용되는 어플리케이션의 종류에 따라 화소별로 각기 다른 방향으로의 예측이 가능하다.
감산부(120)는 외부로부터 수신한 현재 영상으로부터 인트라 예측부(115) 또는 움직임 보상부(105)로부터 출력된 예측 영상을 감산함으로써 현재 영상과 예측 영상의 차이(residue)를 산출한다.
변환부(125)는 감산부(120)에 의해 산출된 차이를 색 공간으로부터 주파수 공간으로 변환한다. 예를 들면, 변환부(125)는 DHT(Discrete Hadamard Transform) DCT(Discrete Cosine Transform) 등을 이용하여 변환부(125)에 의해 산출된 차이를 색 공간으로부터 주파수 공간으로 변환할 수 있다. 양자화부(130)는 변환부(125)에 의해 변환된 결과들을 양자화한다. 엔트로피 부호화부(140)는 양자화부(130)에 의해 양자화된 결과들을 엔트로피 부호화함으로써 비트 스트림을 생성한다.
역양자화부(145)는 양자화부(130)에 의해 양자화된 결과들을 역양자화한다. 역변환부(150)는 역양자화부(145)에 의해 역양자화된 결과들, 즉 주파수 성분 값들을 주파수 공간으로부터 색 공간으로 변환함으로써 현재 영상과 예측 영상의 차이를 복원한다. 가산부(155)는 움직임 보상부(105) 또는 인트라 예측부(115)에 의해 생성된 예측 영상에 역변환부(150)에 의해 복원된 차이를 가산함으로써 현재 영상의 복원 영상을 생성한다. 필터(160)는 가산부(155)로부터 생성된 복원 영상에 포함된 블록들 간의 불연속성으로 인한 블록 경계의 왜곡을 부드럽게 하는 필터이다.
프레임 메모리(165)는 필터(160)를 통과한 복원 영상을 저장한다. 이렇게 저장된 복원 영상은 현재 영상을 예측하기 위한 참조 영상으로 사용된다.
도 3은 인트라 예측의 대상이 되는 4 ×4 크기의 현재 블록과 인트라 예측에 사용될 블록들을 도시한 것이다. 블록의 크기는 4 ×4 , 8 ×8 , 16 ×16 등 동영상 부호화 장치에서 정의되는 대로 다양하게 설정된다.
도 4는 본 발명의 일 실시예에 따라 인트라 예측의 대상이 되는 4 ×4 크기 의 블록 내에서 화소 예측 순서의 한 예를 나타낸 것이다.
도 4에 도시된 인트라 예측이 되는 순서는 a,b,c,d,e,i,m 화소그룹, f,g,h,j,n 화소그룹, k,l,o 화소그룹, p 화소그룹 순이다. 이러한 순서로 인트라 예측을 수행할 때, 인트라 예측에 사용되는 전도 계수 ci를 화소 그룹이 바뀔 때마다 다시 계산하여 갱신한다.
예측하고자 하는 블록(이하, 현재 블록이라 한다)의 왼쪽 열(a,e,i,m)과 윗 행(a,b,c,d)의 화소값에 대한 인트라 예측을 수행할 때, a,b,c,d,e,i,m 화소를 하나의 단위 그룹로 하여 이 단위 그룹의 왼쪽과 위쪽 블록에 있는 화소들을 이용하여 a,b,c,d,e,i,m 화소를 예측한다. 그러나 이 단위 그룹 내에 있는 어느 하나의 화소를 예측하기 위해 단위 그룹 내에 있는 다른 화소들을 이용하지는 않는다. 예를 들어, 화소값 a는 화소값 b나 화소값 e를 예측할 때에는 사용되지 않는다. a,b,c,d,e,i,m 화소의 예측이 끝나면, f,g,h,j,n 화소를 하나의 단위로 하여 이 단위의 왼쪽과 위쪽 블록에 있는 화소들과 a,b,c,d,e,i,m 화소들을 포함하여 f,g,h,j,n 화소를 예측한다. 마찬가지로 하여 k,l,o 화소들에 대한 예측은 현재 블록의 왼쪽과 위쪽 블록에 있는 화소들과 k,l,o 화소들과 같은 블록 내에 존재하는 예측이 끝난 단위 그룹의 화소들을 포함하여 예측이 이루어진다.
도 5는 본 발명의 일 실시예에 따라 인트라 예측의 대상이 되는 4 ×4 크기의 블록 내에 존재하는 화소 a를 예측하고자 할 때, 디퓨전 진행 방향을 나타낸 것이다. 디퓨전 진행 방향이란, 주변에 위치한 화소로부터 현재 화소로 향하는 방향 을 말한다.
도 5를 참조하면, 화소 a를 예측하기 위해 고려할 수 있는 방향은 5 방향이다. 화소 a를 예측하기 위한 방향은 영상의 특성이나 영상이 이용되는 어플리케이션의 종류에 따라 5개 이상이 될 수도 있고 이하가 될 수도 있다.
도 6은 본 발명의 일 실시예에 따라 인트라 예측의 대상이 되는 4 ×4 크기의 블록 내에 존재하는 화소 a를 예측하고자 할 때, 디퓨전 진행 방향과 이 방향에 대응하는 화소들을 나타낸 것이다. 도 6은 디퓨전 진행 방향에 대하여 2개의 주변 화소값들을 이용하여 경사도를 구하는 것을 나타내는 것이지만, 방향에 대응하는 화소들의 수는 증감할 수 있다. 도 6의 화소 a를 예측할 때 고려할 수 있는 5개의 방향의 경사도는 각각 2개의 주변 화소들을 이용하여 계산된다. 이때, 계산된 경사도들 중 가장 작은 경사도를 갖는 방향을 선택하여 그 방향에 있는 주변 화소값들로부터 화소값 a를 예측하여 예측 화소값 I pred 구한다. 일 예로써, 화소값 a의 I pred 를 화소 a에 인접한 주변 화소값들 중에서 하나의 주변 화소값으로 예측하기로 결정하면, 화소값 a는 인접한 화소값 A,B,I,J,M 중 하나가 된다. 따라서, 디퓨전 진행 방향들에 대하여 경사도를 계산하고, 계산된 경사도에 기초하여 디퓨전 진행 방향을 구하고, 그 방향에 대응하는 주변 화소값으로부터 현재 화소값을 산출한다.
도 7은 본 발명의 일 실시예에 따라 인트라 예측의 대상이 되는 4 ×4 크기의 블록 내에 존재하는 화소 b를 예측하고자 할 때, 디퓨전 진행 방향과 예측에 사용되는 화소의 수를 나타낸 것이다. 도 6에서 화소 a의 값을 예측할 때 고려한 방 향의 갯수와 차이가 나는 이유는 화소 a,b,c,d,e,i,m는 같은 그룹에 속해 있어서 서로에 대하여 주변 화소로서 사용되지 않기 때문이다. 마찬가지로 b 화소는 a,c,d,e,i,m 화소들을 주변 화소로써 사용하지 않는다. 따라서, b화소의 값을 예측시 a 화소와 e 화소 쪽에서의 디퓨전 진행 방향은 고려되지 않는다. 마찬가지로 f,g,h,j,n 화소들에 대한 예측에 a,b,c,d,e,i,m 화소들은 같은 그룹이 아니기 때문에 주변 화소로서 사용할 수 있지만, f,g,h,j,n 화소 서로에 대해서는 같은 그룹이기 때문에 주변 화소로서 사용되지 않는다.
도 8은 본 발명의 다른 실시예에 따라 인트라 예측의 대상이 되는 4 ×4 크기의 블록 내에서 화소 예측 순서를 나타낸 것이다.
도 8을 참조하면, 인트라 예측 순서는 a화소를 예측한 후에 b,e 화소를 예측하는 방식으로 대각선 방향으로 p 화소까지 예측한다.
도 9는 도 8에 도시한 화소 예측 순서에 따라 인트라 예측의 대상이 되는 4 ×4 크기의 블록 내에 존재하는 화소 b를 예측하고자 할 때, 디퓨전 진행 방향과 예측에 사용되는 화소의 수를 나타낸 것이다. 도 7과 도 9를 비교하면, 인트라 예측의 대상이 되는 4 ×4 크기의 블록 내에서 인트라 예측이 되는 순서가 디퓨전 진행 방향에 영향을 주는 것을 알 수 있다.도 7에서는 a화소를 지나는 방향을 디퓨전 진행 방향으로 고려하지 않는 반면에 도 9에서는 a화소를 지나는 방향을 디퓨전 진행 방향으로 고려한다. 이러한 차이가 나는 이유는 화소 a와 화소 b가 같은 그룹에 속해 있는지 여부에 따라 달라진다.
보다 상세히 살펴보면, 도 4와 도 8에서 도시된 화소 예측 순서의 차이는 디 퓨전 진행 방향의 갯수에 영향을 미친다. 예를 들어, 도 4에서와 같은 인트라 예측 순서로 화소값 b를 예측할 때 디퓨전 진행 방향의 갯수는 도 7을 참고하면, 3 방향이지만, 도 8에서와 같은 인트라 예측 순서로 화소값 b를 예측할 때 디퓨전 진행 방향의 갯수는 도 9를 참고하면, 4 방향이다.
도 9와 도 7의 차이점을 살펴보면, 도 9에 도시된 b화소의 값을 예측할 때 b화소는 a 화소의 값을 주변 화소로써 사용할 수 있다는 점이다. 이러한 차이점은 화소 a와 화소 b가 같은 그룹에 속해 있는지 여부에 의해 발생한다. 도 9의 경우 화소 a와 화소 b가 다른 그룹에 속해 있으므로, 이미 a 화소에 대하여 예측된 값이 화소 b 예측시 프레임 메모리(165)에 저장된다. 따라서, b 화소를 예측할 때 a 화소를 주변 화소로써 사용할 수 있게 된다.
도 10은 본 발명의 바람직한 일 실시예에 따른 동영상을 부호화하는 방법의 흐름도이다. 도 10을 참조하면, 본 실시예에 따른 동영상을 부호화하는 방법은 도 1에 도시된 동영상을 부호화하는 장치에서 시계열적으로 처리되는 단계들로 구성된다. 따라서, 이하 생략된 내용이라 하더라도 도 1에 도시된 동영상을 부호화하는 장치에 관하여 이상에서 기술된 내용은 본 실시예에 따른 동영상을 부호화하는 방법에도 적용된다.
1010 단계에서 동영상 부호화 장치는 현재 영상을 수신한다. 현재 영상은 Y-Cb-Cr 영상 혹은 R-G-B 영상이 될 수 있다.
1020 단계에서 동영상 부호화 장치는 1010 단계에서 수신한 현재 영상을 구성하는 블록들 각각에 대하여 현재 블록의 이웃에 위치한 복원 영상의 블록의 화소 값으로부터 현재 화소의 값을 예측함으로써, 현재 영상의 예측 영상을 생성한다. 영상의 디퓨전 특성을 이용한 인트라 예측과 블록단위의 방향성을 고려한 블록단위 인트라 예측 중에 어느 하나를 영상의 특성이나 영상이 이용되는 어플리케이션의 종류에 기초하여 선택하고, 선택한 인트라 예측으로 현재 영상의 예측 영상을 생성한다.
1030 단계에서 동영상 부호화 장치는 현재 영상과 1020 단계에서 생성된 예측 영상과의 차이를 산출한다.
1040 단계에서 동영상 부호화 장치는 1030 단계에서 산출된 차이를 색 공간으로부터 주파수 공간으로 변환한다.
1050 단계에서 동영상 부호화 장치는 주파수 공간으로 변환된 차이들을 양자화한다.
1060 단계에서 동영상 부호화 장치는 양자화된 결과들을 엔트로피 부호화하여 비트 스트림을 생성한다.
1070 단계에서 동영상 부호화 장치는 생성된 비트 스트림을 동영상을 복호화하는 장치로 전송한다.
1080 단계에서 동영상을 부호화하는 장치는 1050 단계에서 양자화된 결과들을 역양자화한다.
1090 단계에서 동영상 부호화 장치는 1080 단계에서 역양자화된 결과들을 주파수 공간으로부터 색 공간으로 변환함으로써, 1030 단계에서 산출되었던 차이를 복원한다.
1095 단계에서 동영상 부호화 장치는 1020 단계에서 생성된 예측 영상과 1090 단계에서 복원된 차이를 가산함으로써, 복원 영상을 생성한다.
도 11은 본 발명의 바람직한 일 실시예에 따른 동영상을 부호시 사용하는 영상의 디퓨전 특성을 이용한 인트라 예측 방법의 흐름도이다. 도 11을 참조하면, 본 실시예에 따른 영상의 디퓨전 특성을 이용한 인트라 예측 방법은 도 1에 도시된 인트라 예측부(115)에 포함된 제 2 인트라 예측부(117)에서 시계열적으로 처리되는 단계들로 구성된다. 따라서, 이하 생략된 내용이라 하더라도 도 2에 도시된 제 2 인트라 예측부(117)에 관하여 이상에서 기술된 내용은 본 실시예에 따른 영상의 디퓨전 특성을 이용한 인트라 예측 방법에도 적용된다.
도 10의 1020 단계에서 본 실시예에 따른 영상의 디퓨전 특성을 이용한 인트라 예측 방법을 선택하면, 다음과 같은 단계를 거치게 된다.
1110 단계에서 제 2 인트라 예측부(117)는 현재 영상의 단위 블록에 대하여 화소 예측 순서를 결정한다. 제 2 인트라 예측부(117)는 영상의 특성이나 영상이 이용되는 어플리케이션의 종류에 따라 화소 예측 순서를 결정한다.
1120 단계에서 제 2 인트라 예측부(117)는 디퓨전 진행 방향들에 대해서 현재 화소의 예측에 사용되는 화소의 수를 결정한다. 제 2 인트라 예측부(117)는 영상의 특성이나 영상이 이용되는 어플리케이션의 종류에 따라 예측에 사용되는 화소의 수를 결정한다.
1130 단계에서 제 2 인트라 예측부(117)는 현재 화소로 향하는 디퓨전 진행 방향들에 대해서 경사도를 측정하고, 측정된 경사도들 중에서 가장 낮은 경사도를 선택한다. 경사도란, 주변 화소값들 간의 변이량을 의미하는 것으로 주변 화소값들 간의 차(difference) 또는 그래디언트(gradient) 등 여러 수학적 방법을 이용하여 산출할 수 있다.
1140 단계에서 제 2 인트라 예측부(117)는 1130 단계에서 선택된 경사도에 대응하는 주변 화소의 값들로부터 현재 화소의 값을 예측한다.
1150 단계에서 제 2 인트라 예측부(117)는 1130 단계에서 측정된 경사도들을 이용하여 보정값을 산출한다. 제 2 인트라 예측부(117)는 1130 단계에서 측정된 경사도 모두를 이용하여 보정값을 산출한다. 그러나 영상의 특성에 따라 제 2 인트라 예측부(117)는 1130 단계에서 측정된 경사도들 중 일부만을 이용하여 보정값을 산출할 수도 있을 것이다.
1160 단계에서 제 2 인트라 예측부(117)는 1140 단계에서 예측된 현재 화소의 값에 1150 단계에서 산출된 보정값을 반영하여 현재 화소의 값을 결정한다.
도 12는 본 발명의 바람직한 일 실시예에 따른 동영상을 복호화하는 장치의 구성도이다. 도 12를 참조하면, 본 실시예에 따른 동영상을 복호화하는 장치는 움직임 추정부(1200), 움직임 보상부(1205), 인트라 예측 선택부(1210), 인트라 예측부(1215), 엔트로피 복호화부(1220), 역양자화부(1230), 역변환부(1235), 가산부(1240), 필터(1245), 및 프레임 메모리(1250)로 구성된다. 인트라 예측부(1215)는 제 1 인트라 예측부(1216)과 제 2 인트라 예측부(1217)로 구성된다.
동영상을 복호화하는 장치를 구성하는 각각의 구성요소 중에서 도 1에 도시된 동영상을 부호화하는 장치의 구성요소와 중복되는 구성요소는 동일한 역할을 수 행한다. 따라서, 동영상을 부호화하는 장치와 차이가 있는 구성요소만을 살펴보기로 한다.
엔트로피 복호화부(1220)는 동영상을 부호화하는 장치로부터 수신한 비트 스트림을 엔트로피 복호하고, 복호된 결과를 역양자화부(1230)로 출력한다.
인트라 예측부(1215)는 제 1 인트라 예측부(1216)과 제 2 인트라 예측부(1217)로 구성된다. 제 1 인트라 예측부(1216)은 도 1에 도시된 제 1 인트라 예측부(116)과 동일한 구성을 갖는다.
또한 도 12에 도시된 인트라 예측부(1215)에 포함된 제 2 인트라 예측부(1217)의 상세 구성도는 도 2에 도시된 바와 같다.
다만, 인트라 예측 선택부(1210)는 비트 스트림에 포함되어 있는 영상의 디퓨전 특성을 이용한 인트라 예측 방법을 이용하여 부호화하였음을 나타내는 식별자 유무를 확인한다. 인트라 예측부(1215)에 포함된 제 2 인트라 예측부(1217)의 분석부(210)는 비트 스트림에 포함되어 전송된 화소 예측 순서, 디퓨전 진행 방향, 예측에 사용되는 화소의 수 등을 분석한다. 이렇게 분석된 화소 예측 순서, 디퓨전 진행 방향, 예측에 사용되는 화소의 수 등은 화소값 예측부(220)와 보정값 산출부(230)에서 사용된다.
도 13은 본 발명의 바람직한 일 실시예에 따른 동영상을 복호화하는 방법의 흐름도이다. 도 13을 참조하면, 본 실시예에 따른 동영상을 복호화하는 방법은 도 12에 도시된 동영상을 복호화하는 장치에서 시계열적으로 처리되는 단계들로 구성된다. 따라서, 이하 생략된 내용이라 하더라도 도 12에 도시된 동영상을 복호화하 는 장치에 관하여 이상에서 기술된 내용은 본 실시예에 따른 동영상을 복호화하는 방법에도 적용된다.
1300 단계에서 동영상 복호화 장치는 동영상 부호화 장치로부터 비트 스트림을 수신한다.
1310 단계에서 동영상 복호화 장치는 수신된 비트 스트림을 엔트로피 복호화한다.
1320 단계에서 동영상 복호화 장치는 엔트로피 복호화된 결과들을 역양자화한다.
1330 단계에서 동영상 복호화 장치는 역양자화된 결과들을 역변환한다.
1340 단계에서 동영상 복호화 장치는 역변환된 결과와 인트라 예측부를 이용하여 생성한 예측 영상을 가산함으로써 현재 영상의 복원 영상을 생성한다.
1350 단계에서 동영상 복호화 장치는 현재 영상의 모든 블럭에 대하여 복원 영상이 모두 생성되었는지 판단한다. 이러한 판단 결과, 현재 영상의 모든 블럭에 대하여 복원 영상이 생성되지 않았으면, 1360 단계로 진행하고, 모든 블럭에 대하여 복원 영상이 생성되었으면, 종료한다.
1360 단계에서 동영상 복호화 장치는 생성된 복원 영상을 이용하여 또다른 블록에 대해 인트라 예측을 수행한다.
도 14는 본 발명의 바람직한 일 실시예에 따른 동영상을 복호시 사용하는 영상의 디퓨전 특성을 이용한 인트라 예측 방법의 흐름도이다. 도 14를 참조하면, 본 실시예에 따른 동영상을 복호시 영상의 디퓨전 특성을 이용한 인트라 예측 방법은 도 12에 도시된 인트라 예측부(1215)에 포함된 제 2 인트라 예측부(1217)에서 시계열적으로 처리되는 단계들로 구성된다. 따라서, 이하 생략된 내용이라 하더라도 도 12에 도시된 본 발명의 일 실시예에 따른 제 2 인트라 예측부(1217)에 관하여 이상에서 기술된 내용은 본 실시예에 따른 영상의 디퓨전 특성을 이용한 인트라 예측 방법에도 적용된다.
도 13의 1370 단계에서 인트라 예측 선택부(1210)가 본 발명의 일 실시예에 따른 영상의 디퓨전 특성을 이용한 인트라 예측 방법을 선택하면, 본 발명의 일 실시예에 따른 제 2 인트라 예측부(1217)에서는 다음과 같은 단계를 거치게 된다.
1410 단계에서 제 2 인트라 예측부(1217)는 현재 영상의 단위 블록에 대하여 부호화 장치에서 사용한 화소 예측 순서, 디퓨전 진행 방향, 및 예측에 사용되는 화소의 수를 부호화 장치로부터 수신한 비트 스트림에 포함된 정보들로부터 결정한다.
1420 단계에서 제 2 인트라 예측부(1217)는 1410 단계에서 결정된 디퓨전 진행 방향과 예측에 사용되는 화소의 수에 대응하는 주변 화소의 값들으로부터 현재 화소의 값을 예측한다.
1430 단계에서 제 2 인트라 예측부(1217)는 부호화 장치에서 사용한 디퓨전 진행 방향에 대응하는 경사도들을 이용하여 보정값을 산출한다. 이러한 산출에 이용되는 경사도들은 도 1에 도시된 제 2 인트라 예측부(117)에서 사용한 경사도들과 같을 것이다.
1440 단계에서 제 2 인트라 예측부(1217)는 1420 단계에서 예측된 현재 화소 의 값에 1430 단계에서 산출된 보정값을 반영하여 현재 화소의 값을 결정한다.
이와 같이 살펴본 일 실시예에 따르면, 제 1 인트라 예측부(116)와 제 2 인트라 예측부(117)를 선택할 수 있도록 함으로써, 영상의 특성이나 영상이 이용되는 어플리케이션의 종류에 따라 블록단위 인트라 예측이 효율적인 경우도 있고, 영상의 디퓨전 특성을 이용한 인트라 예측이 효율적인 경우가 있기 때문에 압축 효율이 높아진다. 또한, 영상의 디퓨전 특성을 이용한 인트라 예측의 경우 예측되는 화소의 순서에 따라 디퓨전 진행 방향의 갯수가 달라질 수 있으며, 경사도 산출에 이용되는 화소의 갯수도 변화시킬 수 있으므로, 이러한 파라미터들을 영상의 특징 및 어플리케이션에 따라 변경함으로써도 압축 효율을 높일 수 있다.
또한, 블록단위의 방향성을 고려한 제 1 인트라 예측부(116)와 제 2 인트라 예측부(117)를 선택할 수 있도록 함으로써, 인트라 예측의 정확도를 높일 수 있다. 두 개의 예측부를 사용함으로써, 연산이 복잡해지는 경우에는 영상의 디퓨전 특성을 이용한 인트라 예측 모드와 블록단위 인트라 예측 모드들 중에서 많이 사용하는 예측 모드를 몇 개 사용함으로써, 연산량을 많이 감소시킬 수 있다. 영상의 디퓨전 특성을 이용한 인트라 예측 모드는 다양한 방향에 대해서 적응적으로 예측이 가능하기 때문에 블록단위의 방향성을 고려한 블록단위 인트라 예측 모드들보다 복잡도 감소에 효과가 크다.
이러한 본 발명에 대한 이해를 돕기 위하여 도면에 도시된 실시예를 참고로 설명되었으나, 이는 예시적인 것에 불과하며, 당해 분야에서 통상적 지식을 가진 자라면 이로부터 다양한 변형 및 균등한 타 실시예가 가능하다는 점을 이해할 것이 다. 따라서, 본 발명의 진정한 기술적 보호 범위는 첨부된 특허청구범위에 의해 정해져야 할 것이다.
또한, 본 발명은 컴퓨터로 읽을 수 있는 기록 매체에 컴퓨터(정보 처리 기능을 갖는 장치를 모두 포함한다)가 읽을 수 있는 코드로서 구현하는 것이 가능하다. 컴퓨터가 읽을 수 있는 기록 매체는 컴퓨터 시스템에 의하여 읽혀질 수 있는 데이터가 저장되는 모든 종류의 기록 장치를 포함한다. 컴퓨터가 읽을 수 있는 기록 장치의 예로는 ROM, RAM, CD-ROM, 자기 테이프, 플로피 디스크, 광데이터 저장 장치 등이 있다.
도 1은 본 발명의 바람직한 일 실시예에 따른 동영상을 부호화하는 장치의 구성도이다.
도 2는 도 1에 도시된 제 2 인트라 예측부(117)의 상세 구성도이다.
도 3은 인트라 예측의 대상이 되는 4 ×4 크기의 현재 블록과 인트라 예측에 사용될 블록들을 도시한 것이다.
도 4는 본 발명의 일 실시예에 따라 인트라 예측의 대상이 되는 4 ×4 크기의 블록 내에서 화소 예측 순서의 한 예를 나타낸 것이다.
도 5는 본 발명의 일 실시예에 따라 인트라 예측의 대상이 되는 4 ×4 크기의 블록 내에 존재하는 화소 a를 예측하고자 할 때, 디퓨전 진행 방향을 나타낸 것이다.
도 6은 본 발명의 일 실시예에 따라 인트라 예측의 대상이 되는 4 ×4 크기의 블록 내에 존재하는 화소 a를 예측하고자 할 때, 디퓨전 진행 방향과 이 방향에 대응하는 화소들을 나타낸 것이다.
도 7은 본 발명의 일 실시예에 따라 인트라 예측의 대상이 되는 4 ×4 크기의 블록 내에 존재하는 화소 b를 예측하고자 할 때, 디퓨전 진행 방향과 예측에 사용되는 화소의 수를 나타낸 것이다.
도 8은 본 발명의 다른 실시예에 따라 인트라 예측의 대상이 되는 4 ×4 크기의 블록 내에서 화소 예측 순서를 나타낸 것이다.
도 9는 도 8에 도시한 화소 예측 순서에 따라 인트라 예측의 대상이 되는 4 ×4 크기의 블록 내에 존재하는 화소 b를 예측하고자 할 때, 디퓨전 진행 방향과 예측에 사용되는 화소의 수를 나타낸 것이다.
도 10은 본 발명의 바람직한 일 실시예에 따른 동영상을 부호화하는 방법의 흐름도이다.
도 11은 본 발명의 바람직한 일 실시예에 따른 동영상을 부호시 사용하는 영상의 디퓨전 특성을 이용한 인트라 예측 방법의 흐름도이다.
도 12는 본 발명의 바람직한 일 실시예에 따른 동영상을 복호화하는 장치의 구성도이다.
도 13은 본 발명의 바람직한 일 실시예에 따른 동영상을 복호화하는 방법의 흐름도이다.
도 14는 본 발명의 바람직한 일 실시예에 따른 동영상을 복호시 사용하는 영상의 디퓨전 특성을 이용한 인트라 예측 방법의 흐름도이다.

Claims (20)

  1. 비트스트림을 복호화함으로써, 동영상을 구성하는 영상들 중 현재 영상과 상기 현재 영상의 예측 영상 간의 차이를 복원하는 단계;
    상기 현재 영상의 현재 화소를 중심으로 한 다수의 방향들에 위치한 주변 화소들간의 화소 값 변이량들에 기초하여 상기 주변 화소들 중 적어도 하나의 주변 화소로부터 상기 현재 화소의 값을 예측하는 단계; 및
    상기 예측된 화소 값들을 포함하는 예측 영상에 상기 복원된 차이를 가산함으로써, 상기 현재 영상의 복원 영상을 생성하는 단계를 포함하고,
    상기 현재 화소의 값을 예측하는 단계는,
    상기 현재 영상의 현재 화소를 중심으로 한 다수의 방향들에 위치한 주변 화소들 간의 화소 값 변이량들 중에서 가장 작은 변이량에 대응하는 적어도 하나의 주변 화소로부터 상기 현재 화소의 값을 예측하는 단계임을 특징으로 하는 동영상 복호화 방법.
  2. 삭제
  3. 제 1 항에 있어서, 상기 현재 화소의 값을 예측하는 단계는,
    상기 현재 영상의 현재 화소를 중심으로 한 다수의 방향들 중 적어도 하나 이상의 방향에 대응하는 적어도 하나의 주변 화소를 이용하여 상기 현재 화소의 값 을 예측하는 단계;
    상기 현재 영상의 현재 화소를 중심으로 한 다수의 방향들에 대응하는 상기 주변 화소들 간의 화소 값 변이량들을 이용하여 상기 예측된 현재 화소의 값의 보정값을 산출하는 단계; 및
    상기 산출된 보정값을 이용하여 상기 예측된 현재 화소의 값을 보정하는 단계임을 특징으로 하는 동영상 복호화 방법.
  4. 제 3 항에 있어서, 상기 보정값을 산출하는 단계는,
    상기 주변 화소들 간의 화소 값 변이량들 각각의 크기에 따라 각 변이량의 가중치를 조절하고, 상기 조절된 가중치를 갖는 변이량들을 이용하여 상기 현재 화소값의 보정값을 산출하는 것을 특징으로 하는 동영상 복호화 방법.
  5. 제 1 항에 있어서, 상기 현재 화소의 값을 예측하는 단계는,
    상기 현재 영상의 현재 화소를 중심으로 한 다수의 방향들에 위치한 주변 화소들 간의 화소 값 변이량들 중에서 가장 작은 변이량에 대응하는 방향을 상기 비트 스트림을 분석함으로써 결정하고, 상기 결정된 방향에 대응하는 주변 화소로부터 상기 현재 화소의 값을 예측하는 것을 특징으로 하는 동영상 복호화 방법.
  6. 제 1 항에 있어서, 상기 현재 화소의 값을 예측하는 단계는,
    상기 현재 영상의 현재 화소를 중심으로 한 다수의 방향들에 위치한 주변 화 소들 간의 화소 값 변이량들을 산출할 때 이용하는 주변 화소들의 갯수를 상기 비트 스트림을 분석함으로써 결정하고, 상기 결정된 갯수에 해당하는 주변 화소들간의 화소 값 변이량들에 기초하여 상기 주변 화소들 중 적어도 하나의 주변 화소로부터 상기 현재 화소의 값을 예측하는 것을 특징으로 하는 동영상 복호화 방법.
  7. 제 1 항에 있어서,
    상기 현재 영상의 화소들을 예측하는 순서를 상기 비트 스트림을 분석하여 결정하고, 상기 결정된 순서에 따라 상기 현재 화소를 상기 현재 영상의 화소들 중에서 선택하는 단계를 더 포함하는 것을 특징으로 하는 동영상 복호화 방법.
  8. 제 1 항에 있어서,
    H.264/AVC(Advanced Video Coding) 비디오 표준에서 제공하는 블록단위 인트라 예측 방법과 상기 현재 화소의 값을 예측하는 방법 중 어느 하나를 상기 비트 스트림을 분석함으로써 선택하는 단계를 더 포함하는 것을 특징으로 하는 동영상 복호화 방법.
  9. 제 1 항에 있어서,
    상기 주변 화소들간의 화소 값 변이량은 상기 주변 화소들의 휘도값 또는 색차신호값들 간의 차이를 이용하여 산출하는 것을 특징으로 하는 동영상 복호화 방법.
  10. 제 1 항에 있어서,
    상기 현재 영상을 적어도 하나 이상의 블록으로 나누고, 상기 블록 내의 화소들을 적어도 하나 이상의 그룹으로 나누는 경우,
    상기 현재 화소의 값을 예측하는데 사용하는 상기 주변 화소들은 이미 예측을 수행한 그룹의 화소들 중에서 선택하는 것을 특징으로 하는 동영상 복호화 방법.
  11. 제 1 항에 있어서, 상기 현재 화소의 값을 예측하는 단계는,
    상기 현재 영상을 적어도 하나 이상의 블록으로 나누고, 상기 블록 내의 화소들을 적어도 하나 이상의 그룹으로 나누는 경우,
    상기 변이량들 각각에 대응하는 가중치는 상기 그룹별로 계산하는 것을 특징으로 하는 동영상 복호화 방법.
  12. 동영상을 구성하는 영상들 중 현재 영상의 현재 화소를 중심으로 한 다수의 방향들에 위치한 주변 화소들간의 화소 값 변이량들에 기초하여 상기 주변 화소들 중 적어도 하나의 주변 화소로부터 상기 현재 화소의 값을 예측하는 단계;
    상기 예측된 화소의 값에 기초하여 상기 현재 영상의 예측 영상을 생성하는 단계; 및
    상기 현재 영상과 상기 생성된 예측 영상 간의 차이를 부호화하는 단계를 포함하고,
    상기 현재 화소의 값을 예측하는 단계는,
    상기 현재 영상의 현재 화소를 중심으로 한 다수의 방향들에 위치한 주변 화소들 간의 화소 값 변이량들 중에서 가장 작은 변이량에 대응하는 적어도 하나의 주변 화소로부터 상기 현재 화소의 값을 예측하는 단계임을 특징으로 하는 동영상 부호화 방법.
  13. 삭제
  14. 제 12 항에 있어서, 상기 현재 화소의 값을 예측하는 단계는,
    상기 현재 영상의 현재 화소를 중심으로 한 다수의 방향들 중 적어도 하나 이상의 방향에 대응하는 적어도 하나의 주변 화소를 이용하여 상기 현재 화소의 값을 예측하는 단계;
    상기 현재 영상의 현재 화소를 중심으로 한 다수의 방향들에 대응하는 상기 주변 화소들 간의 화소 값 변이량들을 이용하여 상기 예측된 현재 화소의 값의 보정값을 산출하는 단계; 및
    상기 산출된 보정값을 이용하여 상기 예측된 현재 화소의 값을 보정하는 단계를 포함하는 것을 특징으로 하는 동영상 부호화 방법.
  15. 제 14 항에 있어서, 상기 보정값을 산출하는 단계는,
    상기 주변 화소들 간의 화소 값 변이량들 각각의 크기에 따라 각 변이량의 가중치를 조절하고, 상기 조절된 가중치를 갖는 변이량들을 이용하여 상기 현재 화소값의 보정값을 산출하는 것을 특징으로 하는 동영상 부호화 방법.
  16. 제 12 항에 있어서,
    상기 주변 화소들간의 화소 값 변이량은 상기 주변 화소들의 휘도값 또는 색차신호값들 간의 차이를 이용하여 산출하는 것을 특징으로 하는 동영상 부호화 방법.
  17. 제 12 항에 있어서,
    H.264/AVC(Advanced Video Coding) 비디오 표준에서 제공하는 블록단위 인트라 예측 방법과 상기 현재 화소의 값을 예측하는 방법 중 어느 하나를 상기 현재 영상의 특성에 기초하여 선택하는 단계를 더 포함하는 것을 특징으로 하는 동영상 부호화 방법.
  18. 제 12 항에 있어서,
    상기 현재 영상을 적어도 하나 이상의 블록으로 나누고, 상기 블록 내의 화소들을 적어도 하나 이상의 그룹으로 나누는 경우,
    상기 현재 화소의 값을 예측하는데 사용하는 상기 주변 화소들은 이미 예측을 수행한 그룹의 화소들 중에서 선택하는 것을 특징으로 하는 동영상 부호화 방법.
  19. 제 12 항에 있어서, 상기 현재 화소의 값을 예측하는 단계는,
    상기 현재 영상을 적어도 하나 이상의 블록으로 나누고, 상기 블록 내의 화소들을 적어도 하나 이상의 그룹으로 나누는 경우,
    상기 변이량들 각각에 대응하는 가중치는 상기 그룹별로 계산하는 것을 특징으로 하는 동영상 부호화 방법.
  20. 비트스트림을 복호화함으로써, 동영상을 구성하는 영상들 중 현재 영상과 상기 현재 영상의 예측 영상 간의 차이를 복원하는 단계;
    상기 현재 영상의 현재 화소를 중심으로 한 다수의 방향들에 위치한 주변 화소들간의 화소 값 변이량들에 기초하여 상기 주변 화소들 중 적어도 하나의 주변 화소로부터 상기 현재 화소의 값을 예측하는 단계; 및
    상기 예측된 화소 값들을 포함하는 예측 영상에 상기 복원된 차이를 가산함으로써, 상기 현재 영상의 복원 영상을 생성하는 단계를 포함하고,
    상기 현재 화소의 값을 예측하는 단계는,
    상기 현재 영상의 현재 화소를 중심으로 한 다수의 방향들에 위치한 주변 화소들 간의 화소 값 변이량들 중에서 가장 작은 변이량에 대응하는 적어도 하나의 주변 화소로부터 상기 현재 화소의 값을 예측하는 방법을 컴퓨터에서 실행시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록 매체.
KR1020070109155A 2007-10-29 2007-10-29 영상의 디퓨전 특성을 이용한 영상 부호화/복호화 방법 및장치 KR101375664B1 (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020070109155A KR101375664B1 (ko) 2007-10-29 2007-10-29 영상의 디퓨전 특성을 이용한 영상 부호화/복호화 방법 및장치
US12/076,278 US8265149B2 (en) 2007-10-29 2008-03-14 Method and apparatus encoding and/or decoding image by using diffusion properties of the image

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020070109155A KR101375664B1 (ko) 2007-10-29 2007-10-29 영상의 디퓨전 특성을 이용한 영상 부호화/복호화 방법 및장치

Publications (2)

Publication Number Publication Date
KR20090043353A KR20090043353A (ko) 2009-05-06
KR101375664B1 true KR101375664B1 (ko) 2014-03-20

Family

ID=40582809

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020070109155A KR101375664B1 (ko) 2007-10-29 2007-10-29 영상의 디퓨전 특성을 이용한 영상 부호화/복호화 방법 및장치

Country Status (2)

Country Link
US (1) US8265149B2 (ko)
KR (1) KR101375664B1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2019139393A1 (ko) * 2018-01-15 2019-07-18 김기백 색차 성분에 관한 화면내 예측 부호화/복호화 방법 및 장치

Families Citing this family (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100244290B1 (ko) 1997-09-09 2000-02-01 구자홍 저속 전송에서의 동영상을 위한 디블록킹 필터링 방법
US8787693B2 (en) * 2008-04-15 2014-07-22 Orange Prediction of images by prior determination of a family of reference pixels, coding and decoding using such a prediction
PL2288163T3 (pl) 2008-05-07 2015-11-30 Lg Electronics Inc Sposób i urządzenie do dekodowania sygnału wideo
KR101590500B1 (ko) * 2008-10-23 2016-02-01 에스케이텔레콤 주식회사 동영상 부호화/복호화 장치, 이를 위한 인트라 예측 방향에기반한 디블록킹 필터링 장치 및 필터링 방법, 및 기록 매체
US9467705B2 (en) * 2009-12-30 2016-10-11 Ariscale Inc. Video encoding apparatus, video decoding apparatus, and video decoding method for performing intra-prediction based on directionality of neighboring block
US8743957B2 (en) 2010-04-12 2014-06-03 Sony Corporation Context adaptive directional intra prediction
CN102893606B (zh) * 2010-05-14 2018-02-02 汤姆森特许公司 帧内编码将像素指定给各组的块的方法和装置
US10033997B2 (en) * 2010-06-23 2018-07-24 Panasonic Intellectual Property Management Co., Ltd. Image decoding apparatus, image decoding method, integrated circuit, and program
KR101530284B1 (ko) * 2010-07-16 2015-06-19 삼성전자주식회사 영상의 인트라 예측 부호화, 복호화 방법 및 장치
WO2012096150A1 (ja) * 2011-01-12 2012-07-19 三菱電機株式会社 動画像符号化装置、動画像復号装置、動画像符号化方法及び動画像復号方法
US10306222B2 (en) * 2011-06-20 2019-05-28 Hfi Innovation Inc. Method and apparatus of directional intra prediction
US9392301B2 (en) 2011-07-01 2016-07-12 Qualcomm Incorporated Context adaptive entropy coding for non-square blocks in video coding
CN110650336B (zh) * 2012-01-18 2022-11-29 韩国电子通信研究院 视频解码装置、视频编码装置和传输比特流的方法

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5373377A (en) * 1992-02-21 1994-12-13 Kabushiki Kaisha Toshiba Liquid crystal device with shorting ring and transistors for electrostatic discharge protection
US7643559B2 (en) 2001-09-14 2010-01-05 Ntt Docomo, Inc. Coding method, decoding method, coding apparatus, decoding apparatus, image processing system, coding program, and decoding program
JP3906090B2 (ja) * 2002-02-05 2007-04-18 シャープ株式会社 液晶表示装置
US7386048B2 (en) 2002-05-28 2008-06-10 Sharp Laboratories Of America, Inc. Methods and systems for image intra-prediction mode organization
KR20050112445A (ko) 2004-05-25 2005-11-30 경희대학교 산학협력단 예측 부호화/복호화 장치, 예측 부호화/복호화 방법 및 그방법을 수행하는 프로그램이 기록된 컴퓨터 판독가능한기록매체
KR20050114751A (ko) 2004-06-01 2005-12-06 경희대학교 산학협력단 예측 부호화/복호화 장치 및 예측 부호화/복호화 방법
KR20060008523A (ko) * 2004-07-21 2006-01-27 삼성전자주식회사 영상의 인트라 예측 방법 및 그 장치
EP1628484B1 (en) * 2004-08-18 2019-04-03 STMicroelectronics Srl Method for transcoding compressed video signals, related apparatus and computer program product therefor
JP2006246431A (ja) * 2005-02-07 2006-09-14 Matsushita Electric Ind Co Ltd 画像符号化装置および画像符号化方法
KR100977101B1 (ko) * 2005-11-30 2010-08-23 가부시끼가이샤 도시바 화상 부호화/화상 복호화 방법 및 화상 부호화/화상 복호화장치
WO2008056931A1 (en) * 2006-11-07 2008-05-15 Samsung Electronics Co, . Ltd. Method and apparatus for encoding and decoding based on intra prediction
KR101365575B1 (ko) * 2007-02-05 2014-02-25 삼성전자주식회사 인터 예측 부호화, 복호화 방법 및 장치
EP2034742A3 (en) * 2007-07-25 2009-10-14 Hitachi Ltd. Video coding method and device

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2019139393A1 (ko) * 2018-01-15 2019-07-18 김기백 색차 성분에 관한 화면내 예측 부호화/복호화 방법 및 장치
US11012689B2 (en) 2018-01-15 2021-05-18 B1 Institute Of Image Technology, Inc. Intra prediction encoding/decoding method and apparatus for chrominance components
US11381809B2 (en) 2018-01-15 2022-07-05 B1 Institute Of Image Technology, Inc. Intra prediction encoding/decoding method and apparatus for chrominance components
US11838499B2 (en) 2018-01-15 2023-12-05 B1 Institute Of Image Technology, Inc. Encoding/decoding method and apparatus for coding unit partitioning
US12113967B2 (en) 2018-01-15 2024-10-08 B1 Institute Of Image Technology, Inc. Encoding/decoding method and apparatus for coding unit partitioning

Also Published As

Publication number Publication date
US8265149B2 (en) 2012-09-11
US20090110069A1 (en) 2009-04-30
KR20090043353A (ko) 2009-05-06

Similar Documents

Publication Publication Date Title
KR101375664B1 (ko) 영상의 디퓨전 특성을 이용한 영상 부호화/복호화 방법 및장치
US11070811B2 (en) Method and device for encoding intra prediction mode for image prediction unit, and method and device for decoding intra prediction mode for image prediction unit
KR101228020B1 (ko) 사이드 매칭을 이용한 영상의 부호화 방법 및 장치, 그복호화 방법 및 장치
EP3448038B1 (en) Decoding method for intra predicting a block by first predicting the pixels at the boundary
KR101379255B1 (ko) 미분 방정식을 이용한 인트라 예측 부호화, 복호화 방법 및장치
US7778459B2 (en) Image encoding/decoding method and apparatus
KR101818997B1 (ko) 다단계 예측을 이용한 영상 부/복호화 방법 및 이러한 방법을 사용하는 부/복호화 장치
US10158880B2 (en) Method and apparatus for encoding/decoding video using high-precision filter
US9852521B2 (en) Image coding device, image decoding device, methods thereof, and programs
KR20100004037A (ko) 영상의 부호화 방법 및 장치, 그 복호화 방법 및 장치
KR20090095316A (ko) 영상 인트라 예측 방법 및 장치
US20120027092A1 (en) Image processing device, system and method
CN107810632B (zh) 具有降低代价的块分割和细化的帧内模式选择的帧内预测处理器
KR20120008423A (ko) 영상의 인트라 예측 부호화, 복호화 방법 및 장치
KR101621854B1 (ko) Tsm 율-왜곡 최적화 방법, 그를 이용한 인코딩 방법 및 장치, 그리고 영상 처리 장치
KR20070037532A (ko) 영상의 인트라 예측 부호화 방법 및 그 방법을 사용하는부호화 장치
US9106917B2 (en) Video encoding apparatus and video encoding method
KR100727991B1 (ko) 영상의 인트라 예측 부호화 방법 및 그 방법을 사용하는부호화 장치
JP5358485B2 (ja) 画像符号化装置
KR101597052B1 (ko) 고속 인트라 모드 결정 방법 및 그 장치
KR101005394B1 (ko) H.264/avc 인코더에서 인트라 예측 블록을 생성하는 방법
JP2007116206A (ja) 画像評価方法、画像評価装置、画像符号化方法及び画像符号化装置
KR20110058677A (ko) 예측을 위한 컬러 플레인간의 상관 파라미터 추출 장치와 방법, 및 그것을 이용한 영상 부호화/복호화 장치 및 방법

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
LAPS Lapse due to unpaid annual fee