KR101021538B1 - H.264 인코딩 시 고속 인트라 모드 결정 방법 - Google Patents

H.264 인코딩 시 고속 인트라 모드 결정 방법 Download PDF

Info

Publication number
KR101021538B1
KR101021538B1 KR1020080068373A KR20080068373A KR101021538B1 KR 101021538 B1 KR101021538 B1 KR 101021538B1 KR 1020080068373 A KR1020080068373 A KR 1020080068373A KR 20080068373 A KR20080068373 A KR 20080068373A KR 101021538 B1 KR101021538 B1 KR 101021538B1
Authority
KR
South Korea
Prior art keywords
macro block
mode
macroblock
current
intra mode
Prior art date
Application number
KR1020080068373A
Other languages
English (en)
Other versions
KR20100007647A (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 KR1020080068373A priority Critical patent/KR101021538B1/ko
Publication of KR20100007647A publication Critical patent/KR20100007647A/ko
Application granted granted Critical
Publication of KR101021538B1 publication Critical patent/KR101021538B1/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/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/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/17Methods 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 an image region, e.g. an object
    • H04N19/176Methods 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 an image region, e.g. an object the region being a block, e.g. a macroblock

Landscapes

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

Abstract

H.264 인코딩 시 고속 인트라 모드 결정 방법이 개시된다. 개시된 방법은 H.264 인코딩 시 인트라 모드 결정 방법에 있어서, 현재 프레임의 현재 매크로 블록에 대응되는 대응 매크로 블록을 참조 프레임으로부터 탐색하는 단계(a);
상기 탐색된 참조 프레임의 대응 매크로 블록이 현재 매크로 블록과 비교하여 비가변적(Stationary)인지 여부를 판단하는 단계(b); 및 상기 대응 매크로 블록과 현재 매크로 블록이 비가변적일 경우, 대응 매크로 블록에 대해 결정된 인트라 모드를 현재 매크로 블록의 인트라 모드로 결정하는 단계(c)를 포함한다 개시된 방법에 의하면, 본 발명은 속으로 H.264 인코딩 시 고속으로 인트라 모드를 결정할 수 있으며 적은 연산량 및 복잡도를 가지고 H.264 인코딩을 수행할 수 있는 장점이 있다.
H.264, 인트라

Description

H.264 인코딩 시 고속 인트라 모드 결정 방법{Fast Intra Mode Decision Method in H.264 Encoding}
본 발명은 H.264 인코딩에 관한 것으로서, 더욱 상세하게는 H.264 인코딩 시 고속으로 인트라 모드를 결정하는 방법에 관한 것이다.
MPEG-1, MPEG-2, MPEG-4, H.263, 및 H.264 동영상 표준 부호화 방식과 같은 비디오 코딩 표준들이 개발되어 디지털 미디어의 선두 역할을 수행하고 있다. 이러한 압축 기술이 VCD, DVD, 및 디지털TV 분야에 엄청난 변화를 가져오고 있으며, 그 중에서 H.264 압축 기술은 이동 수신이 가능한 DMB에 사용되는 영상 압축 방식으로서 높은 압축 성능을 갖고 있어 DMB 외에도 다양한 응용 분야에 사용되고 있다.
H.264는 ITU-T VCEG(Video Coding Experts Group)와 ISO/IEC MPEG(Moving Picture Experts Group)의 최신 영상 표준 프로젝트이고, 이전의 압축 기술에 비해 개선된 압축 성능을 가지면서 대화형이나 비대화형 응용으로 지정된 네트워크에서 친화적인 비디오 영상을 제공한다.
H.264에서는 16*16 화소를 가지는 블록을 하나의 매크로 블록으로 하고, 이를 다양한 크기의 블록으로 나누어 처리하며, 보다 정확한 움직임 예측 및 보상을 수행하기 위해 화소 영역에서의 인트라 예측(intra prediction), 다양한 블록 크기, 다중 참조 기법, 율-왜곡(Rate-Distortion) 최적화 기법에 의해 매크로 블록 모드를 결정하여, 기존의 동영상 압축 표준에 비해 동일한 화질에서 50% 이상 비트 수를 절약할 수 있는 이점이 있다
도 1은 일반적인 H.264 부호화기의 구성을 도시한 도면이다.
도 1을 참조하면, 일반적인 H.264 부호화기는 부호화 제어부(110), 변환 및 양자화부(120), 엔트로피 부호화부 (130), 역변환 및 역양자화부(140), 디블록킹 필터(150), 참조 영상 저장부(160), 움직임 추정부(170), 움직임 보상부(180) 및 인트라 예측부(190)를 포함한다.
입력 시퀀스가 인트라 프레임인 경우, 입력 시퀀스는 부호화 제어부(110)를 거쳐 인트라 예측부(190)에서 예측 과정이 수행된다. 이후, 예측된 영상 신호는 변환 및 양자화부(120)에서 정수 변환 및 양자화가 이루어져 엔트로피 부호화부(130)를 통해 출력되는 한편, 역변환 및 역양자화부(140)와 디블록킹 필터(150)를 통과하여 참조영상 저장부(160)에 저장되어 다음 프레임의 예측 과정에서 사용되게 된다.
한편, 입력 시퀀스가 인터 프레임(inter frame)인 경우 움직임 추정부(170)에서 입력 시퀀스에 대한 움직임 벡터를 검출하고 최적의 매크로 블록이 결정되며, 이후 움직임 보상부(180)에서 참조 영상 저장부(160)에 기 저장된 참조 영상을 이용하여 예측 프레임이 생성된다. 예측 과정을 거친 인터 프레임은 변환 및 양자화부(120)에서 정수 변환 및 양자화가 이루어져 엔트로피 부호화부(130)를 통해 출력 되는 한편, 역변환 및 역양자화부(140)와 디블록킹 필터(150)를 통과하여 참조 영상 저장부(160)에 저장되어 다음 프레임의 예측 과정에서 사용되게 된다.
도 2는 H.264 인코딩을 위한 인터 모드의 매크로 블록 타입을 설명하기 위한 도면이다.
도 2에 도시된 바와 같이, 인터 모드의 매크로 블록 타입은 16*16, 8*16, 16*8, P8*8 모드로 나누어지고, P8*8 모드는 다시 P8*8, P4*8 및 P8*4, P8*8 및 P4*4 모드로 나누어진다. 인터 모드에서는 각 블록 타입별로 움직임 추정 과정이 모두 수행된다.
도 3 및 도 4는 H.264 인코딩을 위한 인트라 모드 매크로 블록의 서브 모드를 도시한 도면으로서, 도 3은 4*4 블록 타입의 서브 모드를 도시한 것이고, 도 4는 16*16 블록 타입의 서브 모드를 도시한 것이다.
인트라 예측은 인트라 4*4 블록 타입의 경우 수직(vertical), 수평(horizontal), 대각선 좌 하향(diagonal down left), 대각선 우 하향(diagonal down right), 수직 우향(vertical right), 수평 하향(horizontal down), 수직 좌향(vertical left) 및 수평 상향(horizontal up) 방향으로 픽셀 값들을 참조하여 예측하는 모드와, DC 예측 모드를 포함하여 총 9가지에 대하여 인트라 예측이 수행되며, 아울러, 16*16 블록 타입의 경우 수직, 수평, DC 및 평면 모드의 4가지 경우에 대하여 예측이 수행된다.
인터 또는 인트라 예측이 수행되면, 매크로 블록에 대해 최적의 모드를 선택하기 위해 율-왜곡(Rate-Distortion, RD) 값을 산출하고 RD 코스트를 연산하여 최 적의 모드를 선택한다.
그런데, 종래의 이와 같은 H.264 인코딩 과정은 인트라 예측 시 모든 블록 타입 및 서브 모드에 대해 예측 과정을 수행하여 인트라 모드를 결정하기 때문에 인코딩 복잡도 및 연산량을 증가시키는 문제점이 있었으며, 이로 인해 인코딩에 많은 시간이 소요되는 문제점이 있었다.
본 발명에서는 상기한 바와 같은 종래 기술의 문제점을 해결하기 위해, 고속으로 H.264 인코딩 시 인트라 모드를 결정할 수 있는 방법을 제안하고자 한다.
본 발명의 다른 목적은 참조 프레임의 인코딩 정보를 이용하여 고속으로 인트로 모드를 결정할 수 있는 방법을 제안하는 것이다.
본 발명의 또 다른 목적은 H.264 인코딩 시 비교적 적은 연산량 및 복잡도를 가지고 인트라 모드를 결정할 수 있는 방법을 제안하는 것이다.
본 발명의 다른 목적들은 하기의 실시예를 통해 당업자에 의해 도출될 수 있을 것이다.
상기한 바와 같은 목적을 달성하기 위하여, 본 발명의 일 측면에 따르면, H.264 인코딩 시 인트라 모드 결정 방법에 있어서, 현재 프레임의 현재 매크로 블록에 대응되는 대응 매크로 블록을 참조 프레임으로부터 탐색하는 단계(a); 현재 매크로 블록이 상기 탐색된 참조 프레임의 대응 매크로 블록과 비교하여 비가변적(Stationary)인지 여부를 판단하는 단계(b); 및 상기 대응 매크로 블록과 현재 매크로 블록이 비가변적일 경우, 대응 매크로 블록에 대해 결정된 인트라 모드를 현재 매크로 블록의 인트라 모드로 결정하는 단계(c)를 포함하는 H.264 인코딩 시 고속 인트라 모드 결정 방법이 제공된다.
상기 단계(a)는 현재 매크로 블록과 동일한 위치에 있는 매크로 블록을 탐색 하여 대응 매크로 블록으로 설정한다.
상기 단계(a)는 상기 참조 프레임을 기초로 하여 현재 매크로 블록의 모션 벡터를 획득하는 단계;
상기 연산된 모션 벡터에 상응하여 위치가 변경된 상기 참조 프레임의 매크로 블록을 대응 매크로 블록으로 설정하는 단계를 포함할 수 있다.
상기 모션 벡터는 16*16 사이즈에 대한 모션 벡터인 것이 바람직하다.
상기 단계(b)의 현재 매크로 블록과 대응 매크로 블록이 비가변적인지 여부는 현재 매크로 블록과 대응 매크로 볼록의 화소값이 실질적으로 동일한지 여부에 의해 판단한다.
상기 단계(b)는 SAD(Sum of Absolute Difference) 방식을 이용하여 비가변적인지 여부를 판단할 수 있다.
상기 현재 프레임이 B 픽처일 경우, 상기 단계(a)는 두 개의 참조 영상에 대한 대응 매크로 블록을 탐색하며, 상기 단계(b) 전에 상기 두 개의 참조 영상에 대한 대응 매크로 블록이 인터 모드에 의해 코딩되었는지 여부를 판단하는 단계; 및 상기 두 개의 참조 영상에 대한 대응 매크로 블록이 인터 모드에 의해 코딩되었을 경우 인트라 모드 코딩을 생략하는 단계를 더 포함될 수 있다.
상기 단계(c)는, 상기 모션 벡터에 상응하여 이동된 대응 매크로 블록과 오버랩되는 참조 프레임의 매크로 블록들을 판단하는 단계(c1); 상기 대응 매크로 블록과 오버랩되는 참조 프레임의 매크로 블록들 중 상기 대응 매크로 블록과 오버랩되는 영역들의 서브 모드 및 블록 타입에 기초하여 대응 매크로 블록의 인트라 모 드를 결정하는 단계(c2); 및 상기 결정된 인트라 모드를 상기 현재 매크로 블록의 인트로 모드로 결정하는 단계(c3)를 포함할 수 있다.
상기 단계(c2)는 상기 대응 매크로 블록과 오버랩되는 영역들에 대한 모드 맵을 생성하는 단계; 상기 모드 맵에 기초하여 블록 타입 및 서브 모드에 대한 히스토그램을 연산하는 단계; 및 상기 히스토그램 연산 결과에 기초하여 지배적인 블록 타입 및 서브 모드를 대응 매크로 블록의 인트라 모드로 결정하는 단계를 포함할 수 있다.
본 발명의 다른 측면에 따르면, H.264 인코딩 시 인트라 모드 결정 방법에 있어서, 현재 프레임의 현재 매크로 블록과 동일한 위치의 대응 매크로 블록을 참조 프레임으로부터 탐색하는 단계(a);
상기 대응 매크로 블록이 현재 매크로 블록과 비교하여 비가변적(Stationary)인지 여부를 판단하는 단계(b); 및 상기 대응 매크로 블록과 현재 매크로 블록이 비가변적일 경우, 대응 매크로 블록에 대해 결정된 인트라 모드를 현재 매크로 블록의 인트라 모드로 결정하는 단계(c); 및 상기 대응 매크로 블록과 현재 매크로 블록이 비가변적이지 않을 경우, 일반적인 인트라 모드 예측 방식에 의해 현재 매크로 블록의 인트로 모드를 결정하는 단계(d)를 포함하는 H.264 인코딩 시 고속 인트라 모드 결정 방법이 제공된다.
본 발명의 또 다른 측면에 따르면, H.264 인코딩 시 인트라 모드 결정 방법에 있어서, 현재 프레임의 현재 매크로 블록과 동일한 위치를 가지는 참조 프레임의 매크로 블록 사이의 모션 벡터를 획득하는 단계(a); 상기 현재 매크로 블록과 동일한 위치를 가지는 상기 참조 프레임의 매크로 블록의 위치를 상기 모션 벡터에 상응하여 이동시키고, 상기 이동된 위치의 매크로 블록을 대응 매크로 블록으로 설정하는 단계(b);
상기 현재 매크로 블록이 상기 대응 매크로 블록과 비교하여 비가변적(Stationary)인지 여부를 판단하는 단계(c);
상기 대응 매크로 블록과 현재 매크로 블록이 비가변적일 경우, 대응 매크로 블록에 상응하는 인트라 모드를 판단하는 단계(d); 및 상기 단계(d)에서 판단된 인트라 모드를 현재 매크로 블록의 인트라 모드로 결정하는 단계(e)를 포함하는 H.264 인코딩 시 고속 인트라 모드 결정 방법이 제공된다.
본 발명은 속으로 H.264 인코딩 시 고속으로 인트라 모드를 결정할 수 있으며 적은 연산량 및 복잡도를 가지고 H.264 인코딩을 수행할 수 있는 장점이 있다.
이하에서, 첨부된 도면을 참조하여 본 발명에 의한 H.264 인코딩 시 고속 인트라 모드 결정 방법의 바람직한 실시예를 상세히 설명한다.
도 5는 본 발명의 따른 H.264 인코딩 시 고속 인트라 모드 결정 방법의 전체적인 흐름을 도시한 순서도이다.
도 5를 참조하면, 인트라 모드 인코딩 시 현재 인코딩 대상인 현재 프레임의 현재 매크로 블록의 대응 매크로 블록을 참조 프레임으로부터 탐색한다(단계 502).
본 발명은 H.264 인코딩 과정에서 참조 프레임이 이용되는 B-픽처 또는 P-픽 처의 인트라 모드 결정 시 적용될 수 있으며, B-픽처 또는 P-픽처 인코딩 시 이용되는 참조 프레임에서 현재 매크로 블록에 대응되는 대응 매크로 블록을 탐색한다. B-픽처일 경우 두 개의 대응 매크로 블록이 탐색될 것이며, P-픽처일 경우 한 개의 대응 매크로 블록이 탐색될 것이다.
본 발명의 제1 실시예에 따르면, 참조 프레임의 대응 매크로 블록은 현재 매크로 블록과 동일한 위치에 있는 매크로 블록일 수 있다.
본 발명의 제2 실시예에 따르면, 참조 프레임의 대응 대크로 블록은 참조 프레임과 현재 프레임간의 움직임을 고려하여 현재 매크로 블록과 실질적으로 동일한 화소값을 가지는 매크로 블록일 수도 있다. 제2 실시예에 따른 대응 매크로 블록을 탐색하는 방법은 후에 상세히 설명하기로 한다.
본 실시예에서는 제1 실시예에 따른 고속 인트라 모드 결정 방법을 먼저 설명하고 제2 실시예를 후에 설명하기로 한다.
도 6은 본 발명의 제1 실시예에 따라 참조 프레임으로부터 대응 매크로 블록을 탐색하는 방식을 도시한 도면이다.
도 6을 참조하면, 참조 프레임의 대응 매크로 블록은 현재 인코딩되는 프레임의 현재 매크로 블록과 동일한 위치에 있으며, 현재 매크로 블록의 좌표 정보를 이용하여 대응 매크로 블록을 탐색할 수 있을 것이다.
대응 매크로 블록이 탐색되면, 대응 매크로 블록이 현재 매크로 블록과 비교할 때 비가변적(Stationary)인지 여부를 판단한다(단계 502).
대응 매크로 블록과 현재 매크로 블록이 비가변적인지 여부는 블록 내 화소 값이 실질적으로 동일한지 여부에 의해 판단할 수 있다. 본 발명의 일 실시예에 따르면, 현재 매크로 블록과 탐색된 대응 매크로 블록이 비가변적인지 여부를 판단하기 위해 SAD(Sum of Absolute Difference) 방식이 이용될 수 있다. 즉, 현재 매크로 블록과 대응 매크로 블록의 화소 값의 차이를 더한 값이 미리 설정된 임계치 이하일 경우 현재 매크로 블록과 대응 매크로 블록이 비가변적이라고 판단하고, 그렇지 않을 경우 현재 매크로 블록과 대응 매크로 블록이 가변적이라고 판단한다.
물론, 비가변적인지 여부의 판단이 SAD 방식에 한정되는 것은 아니며, 다양한 연산 방식이 사용될 수 있다는 점은 당업자에게 있어 자명할 것이다.
현재 매크로 블록과 대응 매크로 블록이 비가변적이라고 판단되는 경우, 현재 매크로 블록에 대해서는 대응 매크로 블록에 대해 결정된 인트라 모드를 카피한다(단계 504). 즉, 인트라 모드의 모든 블록 타입 및 서브 모드에 대해 일일이 인코딩 작업을 하여 RD 코스트를 비교하는 과정을 수행하지 않고 대응 매크로 블록에 대해 결정된 인트라 모드를 카피한다.
현재 매크로 블록과 대응 매크로 블록이 가변적일 경우, 일반적인 인트라 모드 예측 방식이 수행된다(단계 606).
상술한 제1 실시예에 따라 인트로 모드 예측이 수행될 경우, 참조 프레임과 비교하여 매크로 블록이 비가변적일 때는 인트라 모드 예측 과정을 생략할 수 있어 고속으로 인트라 모드를 결정할 수 있는 장점이 있다.
본 발명에 의한 고속 인트라 모드 결정 방법은 참조 프레임으로부터 비가변적인 대응 매크로 블록을 되도록 많이 검출할수록 그 효율성을 제고할 수 있다.
그러나, 제1 실시예에 의해 인트라 모드 결정 방식이 수행될 경우 실질적으로 비가변적인 대응 매크로 블록이 참조 프레임에 존재함에도 불구하고 이를 검출하지 못하는 경우가 있다.
도 7 및 도 8은 본 발명의 제1 실시예에 따라 비가변적인 대응 매크로블록을 검출한 결과를 도시한 도면이다.
도 7 및 도 8에서, (a)는 원본 영상이고 (b)는 비가변적인 대응 매크로 블록을 검출한 결과이다.
도 7의 경우, 제1 실시예에 따라 대응 매크로 블록을 현재 매크로 블록과 동일한 위치로 설정하여 탐색하더라도 비교적 많은 수의 비가변 대응 매크로 블록을 검출하는 것을 확인할 수 있다.
그러나, 도 8의 경우, 제1 실시예에 따라 대응 매크로 블록을 탐색 할 때 실질적으로 영상의 화소값이 크게 변하지 않았음에도 불구하고 비가변적인 대응 매크로 블록을 효율적으로 검출하지 못하는 것을 확인할 수 있다.
도 7의 원본 영상은 특정 오브젝트만 움직임이 있고 전체적으로는 움직임이 없는 영상이나, 도 8의 원본 영상은 카메라 이동 등에 의해 전체적으로 약간의 움직임이 있는 영상이다.
본 발명의 제2 실시예에서는 제1 실시예에 적용된 인트라 모드 카피 알고리즘을 유지하면서 화소값은 유지되나 전체적으로 움직임이 있는 영상에 대해 대응 매크로 블록을 보다 효율적으로 탐색할 수 있는 알고리즘을 제안한다.
도 9는 본 발명의 제2 실시예에 따라 참조 프레임으로부터 비가변적인 대응 매크로 블록을 검출하는 과정을 도시한 순서도이다.
도 9를 참조하면, 우선 참조 프레임과 현재 프레임의 모션 벡터를 획득한다(단계 900). 현재 프레임과 동일한 위치의 참조 프레임과 매크로 블록과 현재 매크로 블록 사이의 모션 벡터가 획득된다. 본 발명의 바람직한 실시예에 따르면, 매크로 블록의 사이즈가 16*16이므로, 16*16에 대한 모션 벡터가 획득된다. 16*16 모션 벡터는 인터 모드 예측 과정에서 연산되는 것이므로 이를 별도로 연산할 필요는 없다.
16*16 모션 벡터가 연산되면, 모션 벡터에 상응하여 이동한 위치의 매크로 블록을 대응 매크로 블록으로 설정한다(단계 902). 즉, 제2 실시예에서는 현재 매크로 블록에 대응되는 대응 매크로 블록을 획일적으로 설정하지 않고 참조 프레임과 현재 프레임 사이의 움직임을 고려하여 대응 매크로 블록을 설정한다.
현재 매크로 블록과 참조 프레임에서 현재 매크로 블록과 동일한 위치의 매크로 블록 사이에 움직임이 없을 경우, 제1 실시예와 같이, 현재 매크로 블록과 동일한 위치의 매크로 블록이 대응 매크로 블록으로 설정될 것이다.
그러나, 현재 매크로 블록과 참조 프레임에서 현재 매크로 블록과 동일한 위치의 매크로 블록 사이에 움직임이 있을 경우, 움직임에 상응하여 대응 매크로 블록의 위치를 설정한다.
모션 벡터에 상응하여 대응 매크로 블록이 설정되면, 대응 매크로 블록과 현재 매크로 블록이 비가변적인지 여부가 판단된다(단계 904).
전술한 바와 같이, SAD 방식 또는 다양한 그 외의 다양한 연산 방식을 이용 하여 비가변적인지 여부를 판단할 수 있을 것이다.
도 10은 본 발명의 제2 실시예에 따라 대응 매크로 블록을 설정하는 방식을 도시한 도면이다.
도 10을 참조하면, 현재 매크로 블록과 참조 프레임에서 동일한 위치의 매크로 블록 사이의 모션 벡터를 연산한 후 모션 벡터에 상응하여 이동한 매크로 블록을 참조 프레임의 대응 매크로 블록으로 설정된다.
도 11은 본 발명의 제2 실시예에 따라 비가변적인 대응 매크로 블록을 검출한 결과를 도시한 도면이다.
도 11의 원본 영상은 도 8에 도시된 제1 실시예에 따라 대응 매크로 블록을 검출한 영상과 동일한 영상이다.
도 11을 참조하면, 제2 실시예에 따라 모션 벡터를 고려하여 대응 매크로 블록을 설정할 경우 비가변적인 대응 매크로 블록 설정 효율이 증가하는 것을 확인할 수 있다.
제2 실시예와 같이, 대응 매크로 블록이 설정될 경우 대응 매크로 블록의 위치가 기존 참조 프레임의 매크로 블록의 위치와 매칭되지 않는다. 이와 같이 대응 매크로 블록의 위치가 기존 참조 프레임의 매크로 블록의 위치와 매칭되지 않을 경우, 대응 매크로 블록이 비가변적일 때 인트라 모드를 카피하는데 있어 추가적인 판단 과정이 요구된다.
도 12는 제2 실시예에 따라 대응 매크로 블록의 위치가 변경되었을 때 대응 매크로 블록과 기존 참조 프레임의 매크로 블록의 위치 관계를 도시한 도면이다.
도 12에 도시된 바와 같이, 모션 벡터에 상응하여 위치가 이동된 대응 매크로 블록은 참조 프레임의 기존의 매크로 블록과 위치가 일치하지 않으며 여러 개의 매크로 블록과 위치가 오버랩(Overlap)된다.
이와 같이 대응 매크로 블록의 위치가 참조 프레임의 기존 매크로 블록과 매칭되지 않을 경우, 바로 참조 프레임의 모드를 카피할 수는 없다.
이때, 대응 매크로 블록과 연관된 참조 프레임 매크로 블록들(도 12에서 대응 매크로 블록과 위치가 오버랩되는 참조 프레임 매크로 블록들)의 인트라 모드 블록 타입 및 인트라 모드 서브 모드에 기초하여 현재 매크로 블록에 적용될 인트라 모드를 결정한다.
본 발명의 일 실시예에 따르면, 대응 매크로 블록과 연관된 참조 프레임 매크로 블록들 중 대응 매크로 블록과 위치가 오버랩되는 영역에 대한 모드 맵을 생성한다. 구체적으로, 모드 맵은 대응 매크로 블록과 위치가 오버랩되는 영역에 대한 블록 타입 및 서브 모드에 대한 모드 맵이다. 본 발명의 일 실시예에 따르면, 4*4 블록 단위로 대응 매크로 블록과 겹치는 영역에 대한 모드 맵을 생성할 수 있다.
모드 맵을 통해, 참조 프레임 매크로 블록들 중 대응 매크로 블록과 오버랩되는 영역에 대한 블록 타입 히스토그램 및 서브 모드 히스토그램을 연산하며, 가장 지배적인 블록 타입 및 서브 모드를 판단하며, 가장 지배적인 블록 타입 및 서브 모드가 현재 매크로 블록에 대해 카피될 인트라 모드로 결정된다.
도 13은 본 발명의 제2 실시예에 따른 모드맵 블록 타입 히스토그램의 일례 를 도시한 도면이다.
도 13은 도 12와 같이 대응 매크로 블록의 위치가 결정될 때 블록 타입 히스토그램을 도시한 것이다. 도 12에서, 대응 매크로 블록은 16*16 타입과 가장 크게 위치가 오버랩되며, 이에 따라 블록 타입 히스토그램에서도 16*16이 가장 큰 값을 가지는 것을 확인할 수 있다.
상술한 모드맵 및 이에 따른 히스토그램을 통해 현재 매크로 블록에 적용될 인트라 모드를 결정하는 방식이외에도 대응 매크로 블록의 위치와 가장 오버랩되는 겹치는 블록 타입 및 서브 모드로 결정한다는 것에 기초하여 다양한 연산 방식이 사용될 수 있다는 점은 당업자에게 있어 자명할 것이다.
본 발명에서 참조 영상의 대응 블록을 탐색하는 방식은 코딩하고자 하는 영상이 B 픽처일 경우 인트라 모드에 의한 코딩을 생략하는 데에 응용될 수도 있다.
도 14는 본 발명의 실시예가 인트라 모드에 의한 코딩을 생략하는데에 활용되는 순서도를 도시한 도면이다.
도 14를 참조하면, 우선 참조 프레임으로부터 대응 매크로 블록이 탐색된다(단게 1400). 현재 프레임이 B 픽처일 경우(단계 1402), 두 개의 참조 영상에 대해 대응 매크로 블록이 탐색되고, 두 개의 대응 매크로 블록이 모두 인터 모드에 의해 코딩되었는지 여부를 판단한다(단계 1404).
두 개의 대응 매크로 블록이 모두 인터 모드에 의해 코딩되었을 경우 현재 코딩하고자 하는 매크로 블록에 대해서는 인트라 모드에 의한 코딩을 스킵한다(단계 1406).
코딩하고자 하는 영상이 B 픽처가 아니거나 두 개의 대응 매크로 블록이 모두 인터모드에 의해 코딩되지 않았을 경우 전술한 실시예와 같이 대응 매크로 블록이 비가변적인지 여부가 판단되고(단계 1408), 판단 결과에 따라 모드 카피를 수행하거나(단계 1410), 일반적인 인트라 예측이 수행된다(단계 1412).
상기에서는 본 발명의 바람직한 일 실시예를 참조하여 설명하였지만, 해당 기술 분야의 숙련된 당업자는 하기의 특허 청구의 범위에 기재된 본 발명의 사상 및 영역으로부터 벗어나지 않는 범위 내에서 본 발명을 다양하게 수정 및 변경시킬 수 있음을 이해할 수 있을 것이다.
도 1은 일반적인 H.264 부호화기의 구성을 도시한 도면.
도 2는 H.264 인코딩을 위한 인터 모드의 매크로 블록 타입을 설명하기 위한 도면.
도 3 및 도 4는 H.264 인코딩을 위한 인트라 모드 매크로 블록의 서브 모드를 도시한 도면.
도 5는 본 발명의 따른 H.264 인코딩 시 고속 인트라 모드 결정 방법의 전체적인 흐름을 도시한 순서도.
도 6은 본 발명의 제1 실시예에 따라 참조 프레임으로부터 대응 매크로 블록을 탐색하는 방식을 도시한 도면.
도 7 및 도 8은 본 발명의 제1 실시예에 따라 비가변적인 대응 매크로블록을 검출한 결과를 도시한 도면.
도 9는 본 발명의 제2 실시예에 따라 참조 프레임으로부터 비가변적인 대응 매크로 블록을 검출하는 과정을 도시한 순서도.
도 10은 본 발명의 제2 실시예에 따라 대응 매크로 블록을 설정하는 방식을 도시한 도면.
도 11은 본 발명의 제2 실시예에 따라 비가변적인 대응 매크로 블록을 검출한 결과를 도시한 도면.
도 12는 제2 실시예에 따라 대응 매크로 블록의 위치가 변경되었을 때 대응 매크로 블록과 기존 참조 프레임의 매크로 블록의 위치 관계를 도시한 도면.
도 13은 본 발명의 제2 실시예에 따른 모드맵 블록 타입 히스토그램의 일례를 도시한 도면.
도 14는 본 발명의 실시예가 인트라 모드에 의한 코딩을 생략하는데에 활용되는 순서도를 도시한 도면.

Claims (12)

  1. H.264 인코딩 시 인트라 모드 결정 방법에 있어서,
    현재 프레임의 현재 매크로 블록에 대응되는 대응 매크로 블록을 참조 프레임으로부터 탐색하는 단계(a);
    상기 현재 매크로 블록이 상기 탐색된 참조 프레임의 대응 매크로 블록과 비교하여 비가변적(Stationary)인지 여부를 판단하는 단계(b); 및
    상기 대응 매크로 블록과 현재 매크로 블록이 비가변적일 경우, 대응 매크로 블록에 대해 결정된 인트라 모드를 현재 매크로 블록의 인트라 모드로 결정하는 단계(c)를 포함하되,
    상기 단계(a)는 상기 참조 프레임을 기초로 하여 현재 매크로 블록과의 모션 벡터를 획득하는 단계 및 상기 모션 벡터에 기초하여 상기 참조 프레임의 특정 매크로 블록을 대응 매크로 블록으로 설정하는 단계를 포함하고,
    상기 단계(c)는, 상기 모션 벡터에 상응하여 이동된 대응 매크로 블록과 오버랩되는 참조 프레임의 매크로 블록들을 판단하는 단계(c1); 상기 대응 매크로 블록과 오버랩되는 참조 프레임의 매크로 블록들 중 상기 대응 매크로 블록과 오버랩되는 영역들의 서브 모드 및 블록 타입에 기초하여 대응 매크로 블록의 인트라 모드를 결정하는 단계(c2); 및 상기 결정된 인트라 모드를 상기 현재 매크로 블록의 인트로 모드로 결정하는 단계(c3)를 포함하며, 상기 단계(c2)는 상기 대응 매크로 블록과 오버랩되는 영역들에 대한 모드 맵을 생성하는 단계; 상기 모드 맵에 기초하여 블록 타입 및 서브 모드에 대한 히스토그램을 연산하는 단계; 및 상기 히스토그램 연산 결과에 기초하여 지배적인 블록 타입 및 서브 모드를 대응 매크로 블록의 인트라 모드로 결정하는 단계를 포함하는 것을 특징으로 하는 H.264 인코딩 시 고속 인트라 모드 결정 방법.
  2. 삭제
  3. 삭제
  4. 제1항에 있어서,
    상기 모션 벡터는 16*16 사이즈에 대한 모션 벡터인 것을 특징으로 하는 H.264 인코딩 시 고속 인트라 모드 결정 방법.
  5. 제1항에 있어서,
    상기 단계(b)의 현재 매크로 블록과 대응 매크로 블록이 비가변적인지 여부는 현재 매크로 블록과 대응 매크로 볼록의 화소값이 실질적으로 동일한지 여부에 의해 판단하는 것을 특징으로 하는 H.264 인코딩 시 고속 인트라 모드 결정 방법.
  6. 제5항에 있어서,
    상기 단계(b)는 SAD(Sum of Absolute Difference) 방식을 이용하여 비가변적인지 여부를 판단하는 것임을 특징으로 하는 H.264 인코딩 시 고속 인트라 모드 결정 방법.
  7. 제1항에 있어서,
    상기 현재 프레임이 B 픽처일 경우,
    상기 단계(a)는 두 개의 참조 영상에 대한 대응 매크로 블록을 탐색하며,
    상기 단계(b) 전에 상기 두 개의 참조 영상에 대한 대응 매크로 블록이 인터 모드에 의해 코딩되었는지 여부를 판단하는 단계; 및
    상기 두 개의 참조 영상에 대한 대응 매크로 블록이 인터 모드에 의해 코딩되었을 경우 인트라 모드 코딩을 생략하는 단계를 더 포함하는 것을 특징으로 하는 H.264 인코딩 시 고속 인트라 모드 결정 방법.
  8. 삭제
  9. 삭제
  10. 삭제
  11. H.264 인코딩 시 인트라 모드 결정 방법에 있어서,
    현재 프레임의 현재 매크로 블록과 동일한 위치를 가지는 참조 프레임의 매크로 블록 사이의 모션 벡터를 획득하는 단계(a);
    상기 현재 매크로 블록과 동일한 위치를 가지는 상기 참조 프레임의 매크로 블록의 위치를 상기 모션 벡터에 상응하여 이동시키고, 상기 이동된 위치의 매크로 블록을 대응 매크로 블록으로 설정하는 단계(b);
    상기 현재 매크로 블록이 상기 대응 매크로 블록 비교하여 비가변적(Stationary)인지 여부를 판단하는 단계(c);
    상기 대응 매크로 블록과 현재 매크로 블록이 비가변적일 경우, 대응 매크로 블록에 상응하는 인트라 모드를 판단하는 단계(d); 및
    상기 단계(d)에서 판단된 인트라 모드를 현재 매크로 블록의 인트라 모드로 결정하는 단계(e)를 포함하되,
    상기 단계(d)는, 상기 대응 매크로 블록과 오버랩되는 참조 프레임의 매크로 블록들을 판단하는 단계(d1); 상기 오버랩되는 매크로 블록들로부터 상기 오버랩되는 영역에 대한 서브 모드 및 블록 타입에 대한 모드 맵을 생성하는 단계(d2); 상기 모드 맵을 이용하여 오버랩되는 영역의 서브 모드 및 블록 타입에 대한 히스토그램을 연산하는 단계(d3); 및 상기 히스토그램 연산에 기초하여 가장 지배적인 블록 타입 및 서브 모드를 상기 대응 매크로 블록에 상응하는 인트로 모드로 판단하는 단계를 포함하는 것을 특징으로 하는 H.264 인코딩 시 고속 인트라 모드 결정 방법.
  12. 삭제
KR1020080068373A 2008-07-14 2008-07-14 H.264 인코딩 시 고속 인트라 모드 결정 방법 KR101021538B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020080068373A KR101021538B1 (ko) 2008-07-14 2008-07-14 H.264 인코딩 시 고속 인트라 모드 결정 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020080068373A KR101021538B1 (ko) 2008-07-14 2008-07-14 H.264 인코딩 시 고속 인트라 모드 결정 방법

Publications (2)

Publication Number Publication Date
KR20100007647A KR20100007647A (ko) 2010-01-22
KR101021538B1 true KR101021538B1 (ko) 2011-03-16

Family

ID=41816594

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020080068373A KR101021538B1 (ko) 2008-07-14 2008-07-14 H.264 인코딩 시 고속 인트라 모드 결정 방법

Country Status (1)

Country Link
KR (1) KR101021538B1 (ko)

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20050026318A (ko) * 2003-09-09 2005-03-15 삼성전자주식회사 인트라 스킵 모드를 포함하는 비디오 인코딩_디코딩 장치및 방법

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20050026318A (ko) * 2003-09-09 2005-03-15 삼성전자주식회사 인트라 스킵 모드를 포함하는 비디오 인코딩_디코딩 장치및 방법

Also Published As

Publication number Publication date
KR20100007647A (ko) 2010-01-22

Similar Documents

Publication Publication Date Title
US9351014B2 (en) Moving image encoding and decoding system
JP5426655B2 (ja) 圧縮動画符号化装置、圧縮動画復号化装置、圧縮動画符号化方法および圧縮動画復号化方法
US20090274213A1 (en) Apparatus and method for computationally efficient intra prediction in a video coder
US20060120455A1 (en) Apparatus for motion estimation of video data
Ting et al. Center-biased frame selection algorithms for fast multi-frame motion estimation in H. 264
JP5248632B2 (ja) 動き推定のための技術
CN103327319B (zh) 利用缩放后的运动搜索识别运动矢量候选的方法与设备
KR100994768B1 (ko) 동영상 부호화를 위한 움직임 추정 방법 및 이를 구현하기위한 프로그램이 기록된 기록 매체
US9445089B2 (en) Video encoding device, video encoding method and video encoding program
US20070133689A1 (en) Low-cost motion estimation apparatus and method thereof
CN102572424A (zh) 图像处理设备、方法和程序
US20140233645A1 (en) Moving image encoding apparatus, method of controlling the same, and program
US20160127731A1 (en) Macroblock skip mode judgement method for encoder
JP2002051341A (ja) 動画像符号化装置および動画像の特殊効果シーン検出装置
JP2010193401A (ja) 画像符号化方法及び画像符号化装置
JP2010268199A (ja) 動画像符号化方法、動画像符号化装置、及び、画像符号化プログラム
JP2005244749A (ja) 動画像符号化装置
KR20120072205A (ko) 매크로블록 간의 예측 기법을 이용한 움직임 추정 장치 및 방법
US10448047B2 (en) Encoder circuit and encoding method
KR101021538B1 (ko) H.264 인코딩 시 고속 인트라 모드 결정 방법
KR100986992B1 (ko) H.264 인코딩 시 고속 인터 모드 결정 방법
KR101078525B1 (ko) 다중시점 영상의 부호화 방법
KR20060109440A (ko) 전력 최적화 콜로케이팅된 움직임 추정 방법
JP4676513B2 (ja) 符号化ピクチャタイプ決定方法,装置,そのプログラムおよびその記録媒体
CN113709457A (zh) 一种解码、编码方法、装置及其设备

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
AMND Amendment
E601 Decision to refuse application
J201 Request for trial against refusal decision
AMND Amendment
B701 Decision to grant
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20140304

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20150724

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20160202

Year of fee payment: 6