KR20100109459A - 비디오 신호 처리 방법 및 장치 - Google Patents
비디오 신호 처리 방법 및 장치 Download PDFInfo
- Publication number
- KR20100109459A KR20100109459A KR1020100027980A KR20100027980A KR20100109459A KR 20100109459 A KR20100109459 A KR 20100109459A KR 1020100027980 A KR1020100027980 A KR 1020100027980A KR 20100027980 A KR20100027980 A KR 20100027980A KR 20100109459 A KR20100109459 A KR 20100109459A
- Authority
- KR
- South Korea
- Prior art keywords
- filter coefficient
- filter
- flag
- value
- block
- 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/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/136—Incoming video signal characteristics or properties
- H04N19/137—Motion inside a coding unit, e.g. average field, frame or block difference
-
- 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/117—Filters, e.g. for pre-processing or post-processing
-
- 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/136—Incoming video signal characteristics or properties
- H04N19/14—Coding unit complexity, e.g. amount of activity or edge presence estimation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/169—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
- H04N19/17—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
- H04N19/174—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a slice, e.g. a line of blocks or a group of blocks
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/169—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
- H04N19/17—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
- H04N19/176—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/169—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
- H04N19/182—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being a pixel
-
- 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/46—Embedding additional information in the video signal during the compression process
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
- H04N19/503—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
- H04N19/51—Motion estimation or motion compensation
-
- 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/85—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression
- H04N19/86—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression involving reduction of coding artifacts, e.g. of blockiness
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
본 발명은 비디오 신호를 수신하는 단계; 상기 비디오 신호 내의 현재 프레임을 블록 단위로 복호화하여 복원된 프레임을 생성하는 단계; 제 1플래그 및 제 2플래그를 획득하여 플래그 정보에 기반하여 비디오 신호로부터 슬라이스마다 적응적으로 결정된 필터 계수를 획득하거나, 기결정된 필터 계수를 이용하여 디블록킹 필터링을 수행하는 단계를 포함하는 비디오 신호 처리 방법 및 장치가 개시된다.
또한 본 발명에서는 효율적으로 모션 벡터를 결정하여 움직임 예측을 수행하는 화면간 예측 방법 및 레지듀얼 영상에 대한 화면간 예측 수행 방벙을 포함하는 비디오 신호 처리 방법이 개시된다.
본 발명에 따르면 비디오 신호처리 방법에 따르면 정확한 움직임 예측 및 레지듀얼 영상에 대한 예측을 수행함으로써, 비디오 신호의 압축 부호화 효율을 높이고, 영상 복원시 발생하는 왜곡을 제거하고 원 영상에 가깝게 복원할 수 있는 필터링 연산을 수행함으로써, 복원 영상의 품질을 향상시킬 수 있다.
또한 본 발명에서는 효율적으로 모션 벡터를 결정하여 움직임 예측을 수행하는 화면간 예측 방법 및 레지듀얼 영상에 대한 화면간 예측 수행 방벙을 포함하는 비디오 신호 처리 방법이 개시된다.
본 발명에 따르면 비디오 신호처리 방법에 따르면 정확한 움직임 예측 및 레지듀얼 영상에 대한 예측을 수행함으로써, 비디오 신호의 압축 부호화 효율을 높이고, 영상 복원시 발생하는 왜곡을 제거하고 원 영상에 가깝게 복원할 수 있는 필터링 연산을 수행함으로써, 복원 영상의 품질을 향상시킬 수 있다.
Description
본 발명은 비디오 신호의 처리 방법 및 장치에 관한 것으로, 보다 상세하게는 비디오 신호를 인코딩하거나 디코딩하는 비디오 신호 처리 방법 및 장치에 관한 것이다.
압축 부호화란 디지털화한 정보를 통신 회선을 통해 전송하거나, 저장 매체에 적합한 형태로 저장하기 위한 일련의 신호 처리 기술을 의미한다. 압축 부호화의 대상에는 음성, 영상, 문자 등의 대상이 존재하며, 특히 영상을 대상으로 압축 부호화를 수행하는 기술을 비디오 영상 압축이라고 일컫는다. 비디오 영상의 일반적인 특징은 공간적 중복성, 시간적 중복성을 지니고 있는 점에 있고, 압축 부호화는 이러한 중복성을 제거하는 방법을 사용한다.
이와 같이 공간적 중복성 및 시간적 중복성을 충분히 제거하지 않으면, 비디오 신호를 부호화하는데 있어서 압축율이 낮아진다. 한편, 공간적 중복성 및 시간적 중복성을 과도하게 제거하는 경우, 비디오 신호를 디코딩하는 데 있어서 필요한 정보를 생성하지 못하기 때문에 복원율이 나빠지는 문제점이 있었다.
본 발명은 상기와 같은 문제점을 해결하기 위해 창안된 것으로써 첫째, 정확한 움직임 예측을 통해, 비디오 신호의 압축 부호화 효율을 높이는데 그 목적이 있다.
둘째, 픽셀값 예측 외에 레지듀얼 값에 대한 예측을 수행함으로써 부호화 효율을 높이는데 그 목적이 있다.
셋째, 영상 복원시 발생하는 왜곡을 제거하고 원 영상에 가깝게 복원할 수 있는 필터링 연산을 수행함으로써, 복원 영상의 품질을 향상시키는데 그 목적이 있다.
상기 본 발명의 목적을 달성하기 위한 본 발명의 신호 처리 방법은, 비디오 신호를 수신하는 단계; 상기 비디오 신호 내의 현재 프레임을 블록 단위로 복호화하여 복원된 프레임을 생성하는 단계; 상기 복원된 프레임에 대하여 제 1필터 계수를 이용하여 디블록킹 필터링을 수행할지 또는 제 2필터 계수를 이용하여 디블록킹 필터링을 수행할지 여부를 지시하는 제 1플래그를 획득하는 단계; 및 상기 제 1플래그가 제 1필터 계수를 이용하는 것을 지시할 경우에는, 상기 비디오 신호로부터 제 1필터 계수를 획득하고, 상기 획득된 제 1필터 계수를 이용하여 디블록킹 필터링을 수행하고, 상기 제 1플래그가 제 2필터 계수를 이용하는 것을 지시할 경우에는, 제 2필터 계수를 이용하여 디블록킹 필터링을 수행하는 단계를 포함하되, 상기 제 1필터 계수는 슬라이스마다 적응적으로 결정된 값을 나타내고, 상기 슬라이스는 상기 현재 프레임에 포함되며, 상기 제 2필터 계수는 기결정된 테이블 정보로부터 유도된 값을 나타내는 것을 특징으로 한다.
상기 본 발명의 목적을 달성하기 위한 본 발명의 신호 처리 방법은, 현재 프레임 내 현재 픽셀의 위치에 기초하여 블록 경계 강도를 유도하는 단계를 더 포함할 수 있고, 상기 디블록킹 필터링을 수행하는 단계는 상기 유도된 블록 경계 강도에 대응되는 제 1필터 계수 또는 제 2필터 계수를 이용하여 수행되는 것을 특징으로 한다.
상기 본 발명의 목적을 달성하기 위한 본 발명의 신호 처리 방법에서, 제 1필터 계수는 원본 프레임의 값 및 상기 복원된 프레임의 값 간의 평균 제곱 에러를 최소로 만들도록 선택된 것을 특징으로 한다.
본 발명은 다음과 같은 효과와 이점을 제공한다.
첫째, 본 발명의 비디오 신호 처리 방법은, 화면간 예측 수행시 모션 벡터 예측값을 구하는데 있어서, 다수의 모션 벡터 예측값 후보 중 하나를 효과적으로 선택하는 방법을 제시하며, 모션 벡터 예측값의 인덱스를 부호화 하지 않고도 디코더에서 동일한 모션 벡터 값을 획득할 수 있도록 하여 부호화 효율을 높일 수 있다.
둘째, 본 발명의 비디오 신호 처리 방법은, 화면간 예측 수행시 모션 벡터 예측값을 템플릿 매칭 방법으로 보다 정확하게 얻어냄으로써 부호화 효율을 높일 수 있다.
셋째, 본 발명의 비디오 신호 처리 방법은, 모션 벡터 예측값에 대한 스킵 모드에서, 블록 내 픽셀에 대해 선형 보간법을 사용하여 왜곡이 적은 복원 영상을 얻을 수 있다.
넷째, 본 발명의 비디오 신호 처리 방법은, 레지듀얼 도메인에서 레지듀얼 도메인의 특성에 맞는 예측을 수행함으로써 부호화 효율을 향상시킬 수 있다.
다섯째, 본 발명의 비디오 신호 처리 방법은, 각 슬라이스 별로 최적인 필터링 계수를 이용하여 디블록킹 연산을 수행함으로써 보다 원 영상에 가까운 복원 영상을 획득할 수 있다.
여섯째, 본 발명의 비디오 신호 처리 방법은, 적응적 루프 필터를 디블록킹 필터링 전의 레지듀얼 도메인에서 수행하도록 함으로써 양자화 노이즈만을 고려할 수 있게 하여 보다 원 영상에 가까운 복원 영상을 획득할 수 있다.
마지막으로, 본 발명의 비디오 신호 처리 방법은, 수직 또는 수평 직사각형 블록까지 표현할 수 있는 쿼드 트리(Quadtree)를 사용하여 적응적 루프 필터를 적용할 수 있도록 함으로써, 효율적으로 필터링 연산을 수행하고, 복원 영상의 질을 향상시킬 수 있다.
도 1은 본 발명의 일 실시예에 따른 비디오 신호 인코딩 장치의 개략적인 블록도이다.
도 2는 본 발명의 일 실시예에 따른 비디오 신호 디코딩 장치의 개략적인 블록도이다.
도 3a는 모션 벡터 예측값을 구하기 위해 이용되는, 현재 블록과 공간적으로 연관된 블록들이다.
도 3b는 모션 벡터 예측값을 구하기 위해 이용되는, 현재 블록과 시간적으로 연관된 블록들이다.
도 4a는 사이드 매치 에러(Side Match Error, SME)를 구하는데 이용되는, 현재 프레임에서의 현재 블록의 외부 가장자리 영역을 나타내는 것이다.
도 4b는 사이드 매치 에러를 구하는데 이용되는, 참조 프레임에서의 참조 블록의 내부 가장자리 영역을 나타내는 것이다.
도 4c는 현재 블록과 사이드 매치 에러를 구하기 위해 이용하는 참조 블록간의 관계에서의 제 1 실시예를 나타내는 것이다.
도 4d는 현재 블록과 사이드 매치 에러를 구하기 위해 이용하는 참조 블록간의 관계에서의 제 2 실시예를 나타내는 것이다.
도 5a는 템플릿 매칭을 수행하기 위한 현재 프레임에서의 타겟 영역 및 템플릿 영역을 나타내는 것이다.
도 5b는 템플릿 매칭이 수행되는 참조 프레임에서의 매칭된 템플릿 영역을 나타내는 것이다.
도 6a는 움직임 추정부 내에서 다수의 모션 벡터 예측값 후보들을 사이드 매치 에러를 계산하여 모션 벡터 예측값을 선택하는 과정에 대한 블록도이다.
도 6b는 움직임 추정부 내에서 모션 벡터 예측값을 결정하는데 있어서, 사이드 매치 에러를 이용한 방법과 템플릿 매칭을 이용한 방법을 동시에 사용하는 방법의 일 실시예에 대한 블록도이다.
도 6c는 움직임 추정부 내에서 모션 벡터를 결정하는 방법의 일 실시예에 대한 블록도이다.
도 6d는 움직임 추정부 내에서 모션 벡터를 결정하기 위하여, 사이드 매치 에러 및 템플릿 매칭 에러를 동시에 사용하는 방법의 일 실시예에 따른 블록도이다.
도 7은 본 발명의 일 실시예에 따른 주변 블록들의 컨트롤 그리디(Control Grid)들과 현재 픽셀에서의 모션 벡터 예측 방법을 나타내는 것이다
도 8은 레지듀얼 도메인에서의 예측을 포함한 예측 신호 생성 과정을 나타낸 순서도이다.
도 9a 는 레지듀얼 도메인에서의 수평 방향 상관관계를 측정하는 방법을 나타내는 것이다.
도 9b 는 레지듀얼 도메인에서의 수직 방향 상관관계를 측정하는 방법을 나타내는 것이다.
도 9c 는 레지듀얼 도메인에서의 대각선 방향 상관관계를 측정하는 방법을 나타내는 것이다.
도 10은 레지듀얼 예측을 수행하는 픽셀 및 레지듀얼 예측에 이용되는 인접 픽셀들을 나타내는 것이다.
도 11은 레지듀얼 예측을 위한 DC 필터링을 하기 위한 영역을 나타내는 것이다.
도 12는 블록 경계 강도 값에 따른 디블록킹 필터링 방법의 일실시예를 나타내는 것이다
도 13은 디블록킹 필터링 과정을 설명하기 위하여, 디블록킹 필터링이 적용되는 에지의 일부를 픽셀 단위로 나타낸 것이다.
도 14a 는 디블록킹 필터링에 있어서 적응적인 필터 계수들을 사용할 수 있도록 하는 제 1실시예와 관련된 신택스이다.
도 14b는 도14a에 따른 디블록킹 필터의 적용 방법을 나타내는 순서도이다.
도 15a 는 디블록킹 필터링에 있어서 적응적인 필터 계수들을 사용할 수 있도록 하는 제 2실시예와 관련된 신택스이다.
도 15b는 도15a에 따른 디블록킹 필터의 적용 방법을 나타내는 순서도이다.
도 16은 본 발명의 실시예에 따른 비디오 신호 처리 장치의 일 예를 나타낸 블록도이다.
도 17a는 적응적 루프 필터의 개선을 위한 본 발명의 제 1 실시예에 따른 인코더이다.
도 17b는 적응적 루프 필터의 개선을 위한 본 발명의 제 1 실시예에 따른 디코더이다.
도 18a는 적응적 루프 필터의 개선을 위한 본 발명의 제 2 실시예에 따른 인코더이다.
도 18b는 적응적 루프 필터의 개선을 위한 본 발명의 제 2 실시예에 따른 디코더이다.
도 19a는 적응적 루프 필터의 개선을 위한 본 발명의 제 3 실시예에 따른 인코더이다.
도 19b는 적응적 루프 필터의 개선을 위한 본 발명의 제 3 실시예에 따른 디코더이다.
도 20는 적응적 루프 필터의 적용을 위한 쿼드트리(Quadtree)를 나타낸 것이다.
도 2는 본 발명의 일 실시예에 따른 비디오 신호 디코딩 장치의 개략적인 블록도이다.
도 3a는 모션 벡터 예측값을 구하기 위해 이용되는, 현재 블록과 공간적으로 연관된 블록들이다.
도 3b는 모션 벡터 예측값을 구하기 위해 이용되는, 현재 블록과 시간적으로 연관된 블록들이다.
도 4a는 사이드 매치 에러(Side Match Error, SME)를 구하는데 이용되는, 현재 프레임에서의 현재 블록의 외부 가장자리 영역을 나타내는 것이다.
도 4b는 사이드 매치 에러를 구하는데 이용되는, 참조 프레임에서의 참조 블록의 내부 가장자리 영역을 나타내는 것이다.
도 4c는 현재 블록과 사이드 매치 에러를 구하기 위해 이용하는 참조 블록간의 관계에서의 제 1 실시예를 나타내는 것이다.
도 4d는 현재 블록과 사이드 매치 에러를 구하기 위해 이용하는 참조 블록간의 관계에서의 제 2 실시예를 나타내는 것이다.
도 5a는 템플릿 매칭을 수행하기 위한 현재 프레임에서의 타겟 영역 및 템플릿 영역을 나타내는 것이다.
도 5b는 템플릿 매칭이 수행되는 참조 프레임에서의 매칭된 템플릿 영역을 나타내는 것이다.
도 6a는 움직임 추정부 내에서 다수의 모션 벡터 예측값 후보들을 사이드 매치 에러를 계산하여 모션 벡터 예측값을 선택하는 과정에 대한 블록도이다.
도 6b는 움직임 추정부 내에서 모션 벡터 예측값을 결정하는데 있어서, 사이드 매치 에러를 이용한 방법과 템플릿 매칭을 이용한 방법을 동시에 사용하는 방법의 일 실시예에 대한 블록도이다.
도 6c는 움직임 추정부 내에서 모션 벡터를 결정하는 방법의 일 실시예에 대한 블록도이다.
도 6d는 움직임 추정부 내에서 모션 벡터를 결정하기 위하여, 사이드 매치 에러 및 템플릿 매칭 에러를 동시에 사용하는 방법의 일 실시예에 따른 블록도이다.
도 7은 본 발명의 일 실시예에 따른 주변 블록들의 컨트롤 그리디(Control Grid)들과 현재 픽셀에서의 모션 벡터 예측 방법을 나타내는 것이다
도 8은 레지듀얼 도메인에서의 예측을 포함한 예측 신호 생성 과정을 나타낸 순서도이다.
도 9a 는 레지듀얼 도메인에서의 수평 방향 상관관계를 측정하는 방법을 나타내는 것이다.
도 9b 는 레지듀얼 도메인에서의 수직 방향 상관관계를 측정하는 방법을 나타내는 것이다.
도 9c 는 레지듀얼 도메인에서의 대각선 방향 상관관계를 측정하는 방법을 나타내는 것이다.
도 10은 레지듀얼 예측을 수행하는 픽셀 및 레지듀얼 예측에 이용되는 인접 픽셀들을 나타내는 것이다.
도 11은 레지듀얼 예측을 위한 DC 필터링을 하기 위한 영역을 나타내는 것이다.
도 12는 블록 경계 강도 값에 따른 디블록킹 필터링 방법의 일실시예를 나타내는 것이다
도 13은 디블록킹 필터링 과정을 설명하기 위하여, 디블록킹 필터링이 적용되는 에지의 일부를 픽셀 단위로 나타낸 것이다.
도 14a 는 디블록킹 필터링에 있어서 적응적인 필터 계수들을 사용할 수 있도록 하는 제 1실시예와 관련된 신택스이다.
도 14b는 도14a에 따른 디블록킹 필터의 적용 방법을 나타내는 순서도이다.
도 15a 는 디블록킹 필터링에 있어서 적응적인 필터 계수들을 사용할 수 있도록 하는 제 2실시예와 관련된 신택스이다.
도 15b는 도15a에 따른 디블록킹 필터의 적용 방법을 나타내는 순서도이다.
도 16은 본 발명의 실시예에 따른 비디오 신호 처리 장치의 일 예를 나타낸 블록도이다.
도 17a는 적응적 루프 필터의 개선을 위한 본 발명의 제 1 실시예에 따른 인코더이다.
도 17b는 적응적 루프 필터의 개선을 위한 본 발명의 제 1 실시예에 따른 디코더이다.
도 18a는 적응적 루프 필터의 개선을 위한 본 발명의 제 2 실시예에 따른 인코더이다.
도 18b는 적응적 루프 필터의 개선을 위한 본 발명의 제 2 실시예에 따른 디코더이다.
도 19a는 적응적 루프 필터의 개선을 위한 본 발명의 제 3 실시예에 따른 인코더이다.
도 19b는 적응적 루프 필터의 개선을 위한 본 발명의 제 3 실시예에 따른 디코더이다.
도 20는 적응적 루프 필터의 적용을 위한 쿼드트리(Quadtree)를 나타낸 것이다.
이하 첨부된 도면을 참조로 본 발명의 바람직한 실시예를 상세히 설명하기로 한다. 이에 앞서, 본 명세서 및 청구범위에 사용된 용어나 단어는 통상적이거나 사전적인 의미로 한정해서 해석되어서는 아니되며, 발명자는 그 자신의 발명을 가장 최선의 방법으로 설명하기 위하여 용어의 개념을 적절하게 정의할 수 있다는 원칙에 입각하여 본 발명의 기술적 사상에 부합하는 의미와 개념으로 해석되어야만 한다. 따라서, 본 명세서에 기재된 실시예와 도면에 도시된 구성은 본 발명의 가장 바람직한 일 실시예에 불과할 뿐이고 본 발명의 기술적 사상을 모두 대변하는 것은 아니므로, 본 출원시점에 있어서 이들을 대체할 수 있는 다양한 균등물과 변형예들이 있을 수 있음을 이해하여야 한다.
특히, 본 발명에서 코딩이라 함은, 인코딩 및 디코딩을 모두 포함하는 개념으로 이해되어야 한다.
도 1은 본 발명의 일 실시예에 따른 비디오 신호 인코딩 장치의 개략적인 블록도이다. 도 1을 참조하면, 본 발명의 인코딩 장치(100)는 크게 변환부(110), 양자화부(115), 역양자화부(120), 역변환부(125), 필터링부(130), 예측부(150) 및 엔트로피 코딩부(160)를 포함한다.
변환부(110)는 입력 받은 비디오 신호에 대한 화소값을 변환하여 변환 계수 값을 획득한다. 예를 들어, 이산 코사인 변환(DCT: Discrete Cosine Transform) 또는 웨이블릿 변환(Wavelet Transform) 등이 사용될 수 있다. 특히 이산 코사인 변환은 입력된 영상 신호를 블록 단위로 나누어 변환을 수행하게 된다. 양자화부(115)는 변환부(110)에서 출력된 변환 계수 값을 양자화한다. 역양자화부(120)에서는 변환 계수 값을 역양자화하고, 역변환부(125)에서는 역양자화된 변환 계수값을 이용하여 원래의 화소값을 복원한다.
필터링부(130)는 복원된 영상의 품질 개선을 위한 필터링 연산을 수행한다. 예를 들어, 디블록킹 필터(132) 및 적응적 루프 필터(134) 등이 포함될 수 있다. 영상을 블록 단위로 변환할 경우 블록 경계에서 왜곡 현상(이하 '블록 왜곡' 이라 한다)이 생길 수 있는데, 이와 같은 블록왜곡을 감소 시키기 위해 디블록킹 필터(132)가 적용된다. 디블록킹 필터(132)는 블록의 가장자리를 부드럽게 하여 복원된 영상의 화질을 향상시킨다. 디블록킹 필터링은 전체 영상에 대해서 일정하게 할 수 도 있지만, 경계 강도(boundary strength)와 경계 주위의 이미지 샘플의 변화(gradient) 등에 의해 필터링 강조를 조절하여 보다 효과적인 디블록킹 필터링을 수행할 수 있다. 본 발명에 따른 구체적인 디블록킹 필터(132)의 적용 방법에 대하여는 이하에서 도 12내지 도 15를 참조하여 다시 설명한다.
또한, 전체 영상에서의 잡음 제거를 위하여 적응적 루프 필터(134)가 적용 수 있다. 본 발명에 따른 구체적인 적응적 루프 필터(134) 적용 방법에 대하여는 이하에서 도 17a 내지 도 18b를 참조하여 자세하게 설명한다.
필터링을 거친 영상은 출력되거나 참조 영상으로 이용하기 위하여 프레임 저장부(156)에 저장된다.
코딩 효율을 높이기 위하여 이미 코딩된 영역을 이용하여 영상을 예측하고, 예측된 영상에 원 영상과 예측 영상간의 레지듀얼 값을 더하여 복원 영상을 획득하는 방법이 사용된다. 인트라 예측부(152)에서는 현재 영상 내에서 화면간 예측을 수행하며, 인터 예측부(154)에서는 프레임 저장부(156)에 저장된 참조 영상을 이용하여 현재 영상을 예측한다.
인트라 예측부(152)는 현재 영상 내의 복원된 영역들로부터 화면내 예측을 수행하며, 화면내 부호화 정보를 엔트로피 코딩부(160)에 전달한다. 통상 복원된 영상으로 화면내 예측을 수행하나, 본 발명의 실시예에서는 레지듀얼 영상에 대해서도 화면내 예측을 수행할 수 있으며 이에 대하여는 도 8내지 도 11을 참조하여 후술한다.
인터 예측부(154)는 다시 움직임 보상부(162) 및 움직임 추정부(164)를 포함하여 구성될 수 있다. 움직임 추정부(164)에서는 복원된 프레임을 참조하여 현재 프레임의 모션 벡터값을 획득한다. 본 발명의 실시예에 따른 움직임 추정부(164)에서 모션 벡터를 결정하는 방법에 대해서는 도 3 내지 도 7을 참조하여 후술한다. 움직임 추정부(164)에서는 참조 블록의 위치 정보(참조 프레임, 모션 벡터 등) 등을 엔트로피 코딩부(160)로 전달하여 비트스트림에 포함될 수 있도록 한다. 움직임 추정부(164)에서 전달된 모션 벡터값을 이용하여 움직임 보상부(162)에서는 화면간 움직임 보상을 수행한다.
엔트로피 코딩부(160)는 양자화된 변환 계수, 화면간 부호화 정보, 화면내 부호화 정보 및 인터 예측부(154)로부터 입력된 참조 블록 정보 등을 엔트로피 코딩하여 비디오 신호 비트스트림을 생성한다. 여기서 엔트로피 코딩부(160)에서는 가변 길이 코딩(VLC: Variable Length Coding) 방식과 산술 코딩(arithmetic coding) 등이 사용될 수 있다. 가변 길이 코딩(VLC) 방식은 입력되는 심볼들을 연속적인 코드워드로 변환하는데, 코드워드의 길이는 가변적일 수 있다. 예를 들어, 자주 발생하는 심볼들을 짧은 코드워드로 자주 발생하지 않은 심볼들은 긴 코드워드로 표현하는 것이다. 가변 길이 코딩 방식으로서 컨텍스트 기반 적응형 가변 길이 코딩(CAVLC: Context-based Adaptive Variable Length Coding) 방식이 사용될 수 있다. 산술 코딩은 연속적인 데이터 심볼들을 하나의 소수로 변환하는 데, 산술 코딩은 각 심볼을 표현하기 위하여 필요한 최적의 소수 비트를 얻을 수 있다. 산술 코딩으로서 컨텍스트 기반 적응형 산술 부호화(CABAC: Context-based Adaptive Binary Arithmetic Code)가 이용될 수 있다.
도 2 는 본 발명의 일 실시예에 따른 비디오 신호 디코딩 장치(200)의 개략적인 블록도이다. 도 2를 참조하면 본 발명의 디코딩 장치(200크게 엔트로피 디코딩부(210), 역양자화부(220), 역변환부(225), 필터링부(230), 예측부(250)를 포함한다.
엔트로피 디코딩부(210)는 비디오 신호 비트스트림을 엔트로피 디코딩하여, 각 매크로블록의 변환 계수, 모션 벡터 등을 추출한다. 역양자화부(220)는 엔트로피 디코딩된 변환 계수를 역양자화하고, 역변환부(225)는 역양자화된 변환 계수를 이용하여 원래의 화소값을 복원한다. 한편, 필터링부(230)는 영상에 대한 필터링을 수행하여 화질을 향상시킨다. 여기에는 블록 왜곡 현상을 감소시키기 위한 디블록킹 필터(234), 영상 전체의 왜곡 제거를 위한 적응적 루프 필터(232) 등이 포함될 수 있다. 필터링을 거친 영상은 출력되거나 다음 프레임에 대한 참조 영상으로 이용하기 위하여 프레임 저장부(256)에 저장된다.
인트라 예측부(252)에서는 현재 영상 내의 디코딩된 샘플로부터 화면내 예측을 수행하게 된다. 디코더의 인트라 예측부(252)에서의 동작은 상술한 인코더의 인트라 예측부(152)의 동작과 동일하며, 본 발명의 일부 실시예들에서는 레지듀얼 값에 대한 화면내 예측도 수행할 수 있다. 이에 대하여는 도 8내지 도 11을 참조하여 후술한다.
인터 예측부(254)는 프레임 저장부(256)에 저장된 참조 영상을 이용하여 모션 벡터를 추정하고 예측 영상을 생성한다. 인터 예측부(254)는 다시 움직임 보상부(262) 및 움직임 추정부(264)를 포함하여 구성될 수 있다. 움직임 추정부(264)에서는 현재 블록과 코딩에 사용하는 참조 프레임의 참조 블록간의 관계를 나타내는 모션 벡터를 획득하여 움직임 보상부(262)로 전달한다. 디코더의 인터 예측부(252)에서의 동작은 상술한 인코더의 인터 예측부(152)의 동작과 동일하며, 본 발명의 실시예에 따른 움직임 추정부(264)에서 모션 벡터를 결정하는 방법에 대해서는 도 3 내지 도 7을 참조하여 후술한다.
인트라 예측부(252) 또는 인터 예측부(254)로부터 출력된 예측값, 및 역변환부(225)로부터 출력된 화소값이 더해져서 복원된 비디오 프레임이 생성된다.
이하에서는, 상기 인코더 장치와 디코더 장치의 동작에 있어서, 도 3 내지 도 7을 참조하여 인터 예측부(154 및 254)에서 모션 벡터를 예측하는 방법, 도 8내지 도 11을 참조하여 인트라 예측부(152 및 252)에서 레지듀얼 영상에 대한 예측 방법, 도 12내지 20을 참조하여 필터링부(130 및 230)에서의 필터링 성능 향상 방법에 대해서 상세하게 설명한다.
본 발명의 일 실시예에 따르면, 인터 예측부(154 및 254)는 하나 이상의 모션 벡터 예측값을 구해서 그 중 하나를 선택하여, 원 모션 벡터와 모션 벡터 예측값 간의 차이(mvd)를 더하여 모션 벡터를 획득 할 수 있다. 이하에서는 모션 벡터 예측값 후보들을 구하는 다양한 방법들과 그 중 하나를 선택하는 방법에 대하여 설명한다.
도 3a및 도 3b는 모션 벡터 예측값을 구하기 위해 이용되는, 현재 블록과 각각 공간적, 시간적으로 연관된 블록들을 나타낸다. 여기에서 연관된 블록이라는 것은 유사한 모션 벡터를 가질 가능성이 높은 블록이라는 것을 의미한다.
공간적으로 연관된 블록을 나타내는 도 3a를 참조하면, 현재 블록(300)의 좌측(A), 상단(B), 우측 상단(C), 좌측 상단(D)은 현재 블록(300)과 공간적으로 연관된 블록들이다. 이 블록들의 모션 벡터를 각각 mva, mvb, mvc, mvd라고 할 때, 이들은 현재 블록의 모션 벡터 예측값의 후보가 될 수 있다. 또한 mva, mvb, mvc의 수평 성분과 수직 성분 각각의 중간값(median) 또는 평균값도 또다른 후보가 된다. mva,mvb,mvc가 모두 이용 가능하면 그 세 값의 중간값을 사용하지만, 그렇지 않은 경우 mva가 가능하면 mva를, mvb가 가능하면 mvb를, mvc가 가능하면 mvc를, 모두 가능하지 않은 경우 0을 사용하는 방법도 있다.
시간적으로 연관된 블록을 나타내는 도 3b를 참조하면, 시간적으로 연관된 블록은 이전 프레임에서의 동일한 위치의 블록(310)이거나, 복원된 이웃 블록들의 모션 벡터들의 중간값으로 구한 모션 벡터가 나타내는 참조 블록(320)일 수 있다. 상기 복원된 이웃 블록들은 상단, 좌측 및 우측 상단의 블록 등이 될 수 있으나 반드시 이에 한정되는 것은 아니다. 동일한 위치의 블록(310) 또는 참조 블록(320)의 모션 벡터 값이 현재 블록의 모션 벡터 예측값의 또다른 후보가 된다. 또는 상기 설명한 여러가지 모션 벡터 예측 값들의 중간값도 또다른 후보가 될 수 있으며, 모션 벡터 예측값에 대한 후보를 결정하는 방법은 본 명세서에 기재한 방법들에 한정되는 것은 아니다.
한편, 수신된 비디오 신호로부터, 코딩에 사용된 모션 벡터 예측값의 후보들의 수 또는 어떤 후보들을 사용하였는지를 지정하는 플래그를 획득할 수 있다. 이러한 정보들을 통해 어떤 모션 벡터 예측값의 후보들이 인코딩에 사용되었는지를 알고, 같은 방식을 디코딩에 적용할 수 있다.
본 발명의 일부 실시 예들에서는, 선택된 모션 벡터 예측값의 인덱스가 직접 부호화되어 비디오 신호에 포함된다.
본 발명의 또 다른 실시예에 있어서는, 인덱스를 직접 코딩하는데 필요한 비트 수를 줄이기 위하여, 인덱스를 코딩하지 않고 인코더 및 디코더에서 동일한 방식의 모션 벡터 예측값의 선택 방법을 적용하여 모션 벡터를 선택하게 할 수 있다. 예를 들어, 원 모션 벡터와 유사한 정도를 계산할 수 있는 측정값을 이용하여 가장 유사한 모션 벡터 예측값을 선택한다. 이하에서는 도 4a 내지 도 4d를 참조하여, 상기 유사한 정도의 측정값 중 하나의 예로 사이드 매치 에러(Side Match Error)를 구하는 방법을 설명한다.
도 4a는 현재 블록(420A)이 위치한 현재 프레임(400A)을 나타내고, 도 4b는 이전에 복원된 참조 프레임(400B)을 나타낸다. 도 4c 및 도 4d는 현재 블록(420A)과 사이드 매치 에러를 구하는데 이용할 참조 블록(420B)의 관계에 대한 실시예들을 나타내는 도면이다. 도 4c에 따르면, 참조 블록(420B)은 참조 프레임(400B)내에서 현재 블록(420A)의 모션 벡터 예측값(PMV)이 나타내는 블록이다. 선택적으로, 도 4d에서 도시하는 바와 같이, 참조 블록(420B)은 모션 벡터 예측값(PMV)에 모션 벡터 차이(mvd)를 더한 값, 즉 모션 벡터가 나타내는 블록일 수 있다.
사이드 매치 에러를 구하기 위하여, 현재 프레임(400A)에서 이미 복원된 영역(410A) 중 일부가 사용된다. 현재 프레임(400A)의 위에서 아래 방향으로, 왼쪽에서 오른쪽 방향으로 코딩이 이루어지므로, 현재 블록(420A)에 인접한 상단 및 좌측 영역, 즉 외부 가장자리 영역(415)이 사이드 매치 에러를 구하는 데 사용될 수 있다. 참조 블록 내부의 상단 및 좌측 가장자리 영역(430)과 현재 블록의 외부 가장자리 영역(415) 간의 픽셀 차이의 합이 사이드 매치 에러가 된다.
현재 블록에 대한 n개의 모션 벡터 예측값의 후보들을 각각 PMV1,PMV2,…,PMVn이라고 하자. 상기 후보들은 앞서 설명한 여러 모션 벡터 예측값 후보들 중 하나 이상이 될 수 있다. 상기 설명한 사이드 매치 에러를 모든 모션 벡터 예측값의 후보들에 대하여 구한다.
도 4c를 참조하여 설명한 본 발명의 일실시예에 따르면, k번째 모션 벡터 예측값 PMVk에 대한 사이드 매치 에러는 하기 수학식 1과 같이 구할 수 있다.
하기 수학식 3과 같이 각 모션 벡터 예측값 후보들에 대한 사이드 매치 에러 값 중에 가장 작은 값을 가지는 모션 벡터 예측값을 최종 모션 벡터 예측값으로 선택한다.
본 발명의 또다른 실시예에서는, 모션 벡터 예측값과 원 모션 벡터의 유사 정도를 측정하는 방법으로 현재 블록의 외부 가장자리 영역 (415) 및 참조 블록 내부의 가장자리 영역(430) 간의 픽셀값의 차이의 합(Sum of Absolute Difference, SAD) 외에도, 에러 제곱의 합(Sum of Squared Error, SSE), 일정 값 이상에서는 같은 값을 가지게 하고 픽셀값 차이의 합을 구하는 방법(truncated SAD), 및 절단된 에러 제곱의 합(truncated SS), 또는 픽셀 값의 변화 차이, 즉 기울기 등을 이용할 수도 있다.
본 발명의 일부 실시예에서는, 모션 벡터 예측값을 구하기 위하여 템플릿 매칭을 사용할 수 있다. 도 5a는 현재 블록(520A)이 포함된 현재 프레임(500A)을, 도5b는 참조 프레임(500B)를 나타낸다. 이하에서는 도 5a 및 도5b를 참조하여 템플릿 매칭에 대하여 설명한다..
타겟 영역은 템플릿 매칭을 이용하여 예측하고자 하는 현재 블록(520A)이다. 템플릿은 참조 프레임(500B)에서 찾고자 하는 영역을 의미하는데, 템플릿으로 이용되기 위하여는 이미 복원된 영역이어야 한다. 도 5a에 따르면 현재 프레임(500A)에 대한 코딩과정에 있어서, 현재 프레임은 이미 복원된 영역(510) 과 복원되기 이전 영역(515)으로 나누어진다. 코딩하고자 하는 현재 블록(520A) 역시 복원되기 이전이다. 본 발명의 일실시예에서, 템플릿 영역(530A)은 타겟 영역의 좌측 및 상단 가장자리에 접해한 일정 간격의 픽셀들로 구성될 수 있다. 현재 프레임의 템플릿 영역(530A)과 유사한 영역(530B)을 참조 프레임(500B)에서 탐색한다. 참조 프레임 내의 템플릿 유사 영역(530B) 주변의 타겟 블록에 대응하는 영역(520B)의 모션 벡터를 획득하여, 상기 모션 벡터를 타겟 블록(520A)의 모션 벡터 예측값으로 이용한다.
템플릿 매칭을 이용하는 것은 단순하게 주변 블록의 모션 벡터를 가져오는 것보다 예측 성능이 뛰어나므로 모션 벡터 레지듀얼의 비트 수를 줄일 수 있어 부호화 효율을 높일 수 있다.
도 6a는 움직임 추정부(264) 내에서 다수의 모션 벡터 예측값 후보들을 사이드 매치 에러를 계산하여 모션 벡터 예측값을 선택하여 모션 벡터를 획득하는 과정의 블록도이다. k개의 모션 벡터 예측부(280-1 내지 280-3)에서는 서로 다른 방법으로 각각 모션 벡터 예측값의 후보들을 생성한다. 상기 모션 벡터 예측값의 후보들은 각각 사이드 매치 에러 연산부(285)로 전달되어 사이드 매치 에러값이 계산된다. 계산된 모든 사이드 매치 에러값은 모션 벡터 예측값 결정부(288)로 전달되어 이 중 가장 작은 값을 가지는 모션 벡터 예측값 후보가 최종 모션 벡터 예측값으로써 선택된다. 여기에 모션 벡터 차이값을 더하여 모션 벡터를 생성한다.
도 6b는 움직임 추정부(264) 내에서 모션 벡터 예측값을 결정하는데 있어서, 사이드 매치 에러를 이용한 방법과 템플릿 매칭을 이용한 방법을 동시에 사용하는 방법의 일 실시예를 나타낸 것이다. k개의 모션 벡터 예측부(280-1 내지 280-3)에서는 서로 다른 방법으로 각각 모션 벡터 예측값의 후보들을 생성한다. 상기 모션 벡터 예측값의 후보들은 각각 사이드 매치 에러 연산부(285) 및 템플릿 매칭 연산부(290)로 전달되어 각각 사이드 매칭 에러값 및 템플릿 매칭값이 계산된다. 이 두 값은 가중치 결정부(295)에서 결정된 가중치를 이용하여 선형 조합되어 모션 벡터 예측값 결정부(288)로 전달된다. 모션 벡터 예측값 결정부(288)에서는 상기 전달된 선형 조합 값을 바탕으로 가장 적합한 모션 벡터 예측값을 선택한다.
가중치 결정부(295)에서는 연산에 사용되는 픽셀 개수 등을 고려하여 한 픽셀당 반영 비율을 일정하도록 하는 제 1가중치 및 제2가중치를 생성할 수 있다. 또한 템플릿 매칭 방법에 비해서는 사이드 매칭 방법의 비중을 좀 더 높게 하는 것이 유리할 수 있으나, 이에 한정하는 것은 아니며 여러가지 다양한 방법의 가중치를 생성할 수 있다.
한편, 본 발명의 또다른 예에 있어서는, 모션 벡터 예측값을 생성하지 않고 직접 모션 벡터 값을 결정할 수 있다. 이 경우에는 모션 벡터 차이값을 부호화 할 필요가 없다.
도 6c는 움직임 추정부(264) 내에서 모션 벡터를 결정하는 방법의 일 실시예에 대한 블록도이다. 도 6c를 참조하면 탐색 지점 선택부(270)에서는 모션 벡터 후보로써의 다수의 영역을 선택한다. 이렇게 선택된 다수의 탐색지점에 대해서 각각 매칭값 연산부(272) 에서 참조 블록과 현재 블록 간의 유사 정도를 나타내는 매칭값을 계산한다. 본 발명의 일부 실시예에서는, 매칭값 연산부(272) 는 상기에서 설명된 사이드 매치 에러 또는 템플릿 매칭 에러 측정 방법을 사용한다.
사이드 매치 에러는, 다시 도 4a 및 4b를 를 참조하여 설명하면, 현재 블록에 인접한 외부 가장자리 영역(415) 과 참조프레임(400B)에서 참조 블록의 내부 가장자리 영역(430) 간의 에러를 나타낸다.
템플릿 매칭 에러는, 다시 도5a 및 도5b를 참조하여 설명하면, 현재 블록의 인접한 외부 가장자리 영역(530A) 과 참조 프레임(500B)에서 이에 대응하는 영역(530B) 간의 에러를 나타낸다.
상기 에러 값의 측정은 픽셀값의 차이의 합(Sum of Absolute Difference, SAD), 에러 제곱의 합(Sum of Squared Error), 일정 값 이상에서는 같은 값을 가지게 하고 픽셀값 차이의 합을 구하는 방법(truncated SAD), 및 절단된 에러 제곱의 합(truncated SS) , 기울기 등을 이용할 수 있다.
본 발명의 또다른 실시예에서는 사이드 매치 에러 및 템플릿 매칭 에러 측정 방법을 동시에 사용할 수 있다. 도 6d는 매칭값 연산부(272) 내에서 사이드 매치 에러 및 템플릿 매칭 에러를 동시에 사용하는 방법을 나타낸 블록도이다. 입력된 탐색 지점 정보에 대하여 사이드 매치 에러 연산부(285)에서는 상기 설명된 사이드 매치 에러값을, 템플릿 매칭 연산부(290)에서는 상기 설명된 템플릿 매칭 에러값을 계산한다. 에러값들은 가중치결정부(295) 에서 결정된 제1가중치 및 제2가중치와 각각 선형 결합하여 새로운 매칭 에러를 생성한다. 가중치 결정부(295)에서는 상기 설명한 바와 마찬가지로, 사이드 메치 에러 연산부(285) 및 템플릿 매칭 연산부에서 사용한 픽셀 정보 등을 이용하여 적절한 가중치를 생성할 수 있다. 상기 새로운 매칭 에러는 모션 벡터 결정부(275)로 전달되어 최적의 모션 벡터를 결정하는데 이용된다.
스킵 모드는 현재 블록을 복원함에 있어서, 현재 블록에 대한 정보, 즉, 모션 벡터, 참조 영상 인덱스, 및 원 영상과 복원 영상 간의 레지듀얼 데이터를 가지지 아니하고, 이전에 코딩된 참조 영상 내의 블록의 화소값을 그대로 이용하는 방식으로 정의할 수 있다. 스킵 블록을 코딩함에 있어서, 모션 벡터를 이용한 움직임 보상이 수반될 수 있으며, 상기 모션 벡터는 이웃 블록을 이용하여 유도될 수 있다.
본 발명의 일 실시예에서는, 이러한 스킵 블록에 대하여, 컨트롤 그리디를 이용하여 픽셀 단위로 모션 벡터를 유도한다. 도 7은 본 발명의 일 실시예에 따른 주변 블록들의 컨트롤 그리디(Control Grid)들과 현재 픽셀에서의 모션 벡터 예측 방법을 나타낸 것이다. 컨트롤 그리디는 블록의 위치를 대표하는 값이다. 도 7에서 도시하듯이, 컨트롤 그리디는 블록 중앙 위치가 될 수 있다. 또는 블록의 4개의 꼭지점 중에 어느 하나 일 수 있다. 현재 픽셀에서 거리가 가까운 두 컨트롤 그리디들의 모션 벡터 값을 이용하여 이중선형 보간법 (bilinear interpolation)으로 현재 픽셀의 모션 벡터 값을 계산한다. 보다 구체적으로, 현재 픽셀 (i, j) 의 모션 벡터는 하기 수학식4와 같이 구할 수 있다.
상기 수학식 4에서 MVp, MVq 는 픽셀 (i, j)에서 가장 가까운 두 컨트롤 그리디가 CGp, CGq 일 때 CGp, CGq의 모션 벡터를 나타내며, dp, dq 는 픽셀 (i, j)에서 CGp, CGq 간의 유클리드 거리를 의미한다. 도 7의 예를 참조하면, 현재 픽셀 (i, j)에서 가장 가까운 두 컨트롤 그리디는 CG3, CG4이고, 픽셀 (i, j)에서 CG3, CG4까지의 유클리드 거리 d3, d4에 대해서 상기 수학식 4를 적용할 수 있다.
또다른 실시예들에서는, 일정 크기의 서브 블록 단위로 주변 블록들의 컨트롤 그리디의 모션 벡터값을 선형 보간하여 블록 내 픽셀들의 모션 벡터 값을 구할 수 있다. 이 때 블록 크기는 2x2, 4x4, 8x8, 16x16 등 다양할 수 있으며, 이에 한정되는 것은 아니다.
이러한 선형 보간법을 이용한 모션 벡터 예측 방법은 주로 스무드한 특성을 갖는 영상의 경우 블록 전체에 대해 동일한 모션 벡터를 사용하는 것보다 좋은 성능을 나타낼 수 있다. 따라서 영상이 스무드한 경우에는 선형 보간법을 사용하고, 그 이외의 경우에는 블록 전체에 동일한 모션 벡터를 적용하는 방법을 동시에 사용함으로써 연산 및 코딩 효율을 도모할 수 있다.
일반적으로, 비디오 신호의 부호화 과정에 있어서는 움직임을 예측하여 예측된 영상에 대한 레지듀얼 값만을 전송한다. 전체 픽셀 값 대신 레지듀얼 값만 이용함으로써 부호화 효율을 높일 수 있다. 본 발명의 일부 실시예들에서는, 레지듀얼 값에 대하여도 레지듀얼 값을 예측하여 그 차이값만 코딩하는 방식을 이용한다. 레지듀얼 값을 예측하는데 있어서, 기존 픽셀 도메인에서의 예측과 마찬가지로 주변 픽셀들의 모션 벡터를 현재 픽셀의 모션 벡터로 이용할 수 있다. 이 때는 현재 프레임 내에서 이미 코딩된 픽셀을 이용해야 하므로, 상단 및 좌측 영역의 픽셀값들이 이용될 수 있다.
또다른 실시예에서는, 레지듀얼 영상에서는 원 영상보다는 인접 픽셀간의 상관관계(correlation)가 떨어지므로 현재 픽셀로부터의 거리에 따라서 가중치를 다르게 적용하는 방식을 이용한다.
도 8은 레지듀얼 도메인에서의 예측을 포함한 예측 신호 생성 과정을 나타낸 순서도이다. 픽셀 값 예측(S810)을 수행한 후에 레지듀얼 예측을 할 것인지를 결정한다. 예를 들어, 레지듀얼 영상에서는 블록의 경계에서 멀어질수록 픽셀 값 간의 상관관계가 줄어들기 때문에, 블록 경계에서 일정 간격이상 떨어진 픽셀에 대하여는 레지듀얼 예측을 수행하지 않는 것이 좋을 수 있다. 따라서 현재 픽셀이 블록 경계로부터의 거리가 기 결정된 일정 픽셀 값(k) 이내인 경우에만 레지듀얼 예측을 수행하도록 한다(S820). 필터 방향을 결정하기 위하여, 코딩이 이루어진 레지듀얼에 대하여 수평, 수직 및 대각선 방향 중 적어도 어느 하나에 대한 방향 상관관계(directional correlation)를 측정한다(S830). 상기 측정한 각 방향에 대한 상관 관계 차이 를 특정 임계치 T와 비교한다(S840). 만약 T 미만인 경우에는DC 필터링을 이용한 레지듀얼 예측을 수행한다(S850). 그렇지 않으면, 상기 측정한 각 방향에 대한 상관관계 값 중 가장 작은 값에 해당하는 방향을 선택하여 그 방향으로의 가우시안 스무딩 필터를 이용하여 레지듀얼 예측값을 구한다(S860). 이하에서, 도 9a내지 도 9c를 참조하여 방향 상관관계 측정 방법을, 도10을 참조하여 레지듀얼 예측값을 구하는 방법을, 도11을 참조하여 DC 필터링을 하는 방법을 자세하게 설명한다.
도 9a 는 수평 방향 상관관계를 측정하는 방법을 나타낸 것이다. 도 9a를 참조하면, 현재 블록(910A)은 아직 코딩 전으로 레지듀얼 예측이 적용되는 영역이고, 현재 블록(910A)의 상단 및 좌측 영역들, 즉 회색으로 도시된 부분은 이미 부호화가 이루어진 상태이다. 이 영역들 중 현재 블록의 외부에 인접하고 일부 픽셀만큼 떨어진 가장자리 영역이 수평 방향 상관관계 측정에 사용될 영역(920A)이다. 수평 방향의 인접 픽셀간의 차이의 합 SADh는 수학식 5와 같이 구한다.
여기에서 는 수평방향 상관관계 측정에 사용될 영역을 나타내고, 예를 들어 도 9a에서와 같이 인접한 3개 픽셀에 대하여 상관 관계를 구하는 경우, 이 된다. R(i,j) 는 픽셀 (i,j) 에서의 레지듀얼 값이다.
상기 수학식에서 , 는 각각 수직, 대각선 방향 상관관계 측정에 사용될 영역을 나타내고, 예를 들어 도 9b, 9c에서와 같이 인접한 3개 픽셀에 대하여 상관 관계를 구하는 경우,
각 방향에 대해서 SAD 값을 구한 이후에는 이 중 가장 상관관계가 큰 방향에 대해서 레지듀얼 예측을 위한 필터링을 수행하게 된다.
도 10은 레지듀얼 예측을 수행하는 픽셀 및 레지듀얼 예측에 이용되는 인접 픽셀들을 나타낸다. 도 10의 도시된 것은 특히 레지듀얼 예측을 적용하는 픽셀 바운더리 값 k=3이고, 수직 방향 필터링이 선택된 경우의 일 실시예이다. 도 10을 참조하면, 현재 블록에서의 레지듀얼 R1, R2, R3의 값은 하기 수학식 8과 같이 이미 코딩된 인접한 레지듀얼 블록 R-1, R-2, R-3을 이용하여 구할 수 있다.
이때 사용하는 필터 계수는 이웃 레지듀얼과의 거리에 따라 픽셀당 반영되는 비율이 달라지도록, 즉 거리가 멀어질수록 해당 픽셀에 대한 가중치가 작아지도록 한다. 거리가 멀어질수록 레지듀얼간의 상관관계가 줄어들기 때문에, 예측의 강도를 낮추기 위하여다. 따라서 이러한 형태의 필터, 예를 들면, 가우시안 스무딩 필터(Gaussian smoothing filter), 라플라시안 필터(laplacian filter)등을 이용할 수 있다. 가우시안 스무딩 필터(Gaussian smoothing filter) 를 이용하는 경우 필터 계수는 하기 수학식 9와 같다.
각 방향에 대해 계산한 값 SADh, SADv, SADd 간의 차이가 0이거나 작은 경우, 예를 들면 차이가 특정 임계치(T) 미만인 경우에는 DC 필터링을 수행한다. 도 11은 DC 필터링을 위한 영역을 설명하기 위한 도면이다. 레지듀얼 예측을 수행하는 영역(910D) 에 대하여, 이미 코딩된 좌측 및 상단의 ,, 영역에서의 레지듀얼 픽셀값들의 평균값을 각각 DC1, DC2, DC3이라고 할 때, R1, R2, R3 영역의 레지듀얼은 하기 수학식 10 과 같다.
본 발명의 일 실시예에 따르면, 인코더 장치에서는 상기와 같은 방법으로 레지듀얼 값을 예측하고 그 차이값만을 코딩하여 전송한 후 디코더 장치는 동일한 방법을 사용하여 레지듀얼 예측값을 구할 수 있다. 선택적으로, 또다른 실시예에 따르면 인코더 장치에서 레지듀얼 예측값 값 자체의 인덱스를 전송하고, 디코더 장치에서는 이를 그대로 사용할 수도 있다.
비디오 신호 처리에 있어서, 블록 단위로 코딩을 수행할 경우 블록 경계에서 왜곡이 발생하게 된다. 이러한 블록 왜곡이 생긴 프레임을 프레임 저장부에 저장하여 다음 예측시 그대로 사용하면 화질 열화가 전파되게 된다. 따라서 복원된 프레임 저장 전에 블록 왜곡을 줄이기 위한 필터 연산을 수행하는데, 이러한 필터를 디블록킹 필터라고 한다.
일부 실시예에 있어서는, 동일한 영상 내에서 영상의 위치에 따라 필터가 적용되는 강도를 달리함으로써 필터 연산을 적응적으로 수행한다. 보다 구체적으로, 블록 왜곡이 쉬운 위치에서는 강한 필터 연산을, 블록 왜곡이 없는 부분에는 약한 필터 연산을 사용하여 블록 왜곡이 없는 부분의 에지에서 필터 연산으로 인한 왜곡이 생기는 것을 방지한다. 적응적인 필터 연산을 수행하기 위하여 블록 강도는, 예를 들어 하기 표 1과 같이 정의할 수 있다.
경계 강도(BS) | |
4 | 인접한 블록 중 적어도 한쪽이 화면내 부호화 블록에 속하고 블록 경계에 위치하는 경우 |
3 | 인접한 블록 중 적어도 한쪽이 화면내 부호화 블록에 속하고 블록 경계에 위치하지 않는 경우 |
2 | 인접한 블록 모두가 화면내 부호화 블록이 아니고 어느 한쪽이 직교변환계수를 가지는 경우 |
1 | 인접한 블록 모두가 화면내 부호화 블록이 아니고 직교변환계수를 가지지 않고, 참조프레임, 참조프레임 수, 모션 벡터 값이 다른 경우 |
0 | 인접한 블록 모두가 화면내 부호화 블록이 아니고 직교변환계수를 가지지 않고, 참조 프레임과 모션 벡터 값도 동일하다 |
경계 강도 숫자가 클수록 강한 필터링을 적용하며, 0인 경우에는 필터링을 적용하지 않는다. 도 12는 상기 경계 강도 값에 따른 필터링 방법의 일실시예를 나타낸다. 각 에지에서는 양자화 파라미터에 따라서 그 값이 정해지는 α,β 값을 이용하여 에지에서의 픽셀 값을 고려하여 필터링의 여부를 결정한다.
본 발명의 또다른 실시예에서는, 선택적으로, 모든 영상에 대해 고정된 필터 계수를 이용해서 필터링이 수행되는 것이 아니라, 영상의 특성에 맞는 적응적인 필터링 계수를 이용해서 수행하도록 한다. 이러한 필터링 계수는 디블록킹을 수행할 에지에 대하여, 복원된 영상을 필터링 해서 얻어진 영상이 원본 영상과 가장 가깝도록 만드는 계수들을 의미한다. 이러한 계수는 매 영상마다 혹은 슬라이스마다 구해질 수 있다. 도 13은 필터링 과정을 픽셀 단위로 나타낸 것이다. p0~p3, q0~q3은 서로 다른 블록 영역에 속하는, 디블록킹 필터링이 적용될 픽셀들이다. 각 픽셀에 필터 계수 c0~c4를 곱하여 픽셀 p0'~p3', q0'~q3'을 생성한다. 디블록킹을 수행할 에지에서, cj는 각 픽셀에 곱하여 더해질 계수, yi는 복원된 픽셀이라고 하면 필터링 된 픽셀, zk는 하기 수학식 11과 같이 획득된다. xk는 원본 픽셀이라고 하면, 필터링 계수는 하기 수학식 12와 같이 zk와 xk의 차를 최소로 하는 값들의 집합이 된다. 따라서 적응적 필터 계수 cj는 하기 수학식 13과 같이 구할 수 있다.
디코더는 수신된 비디오 신호로부터 이러한 계수들을 획득할 수 있다. 도 14a 는 디블록킹 필터링에 있어서 적응적인 필터 계수들을 사용할 수 있도록 하는 제 1실시예와 관련된 신택스이다. 도 14a를 참조하면, 비디오 신호로부터, 각 슬라이스별로, 슬라이스에 대해 적응적으로 결정된 필터 계수를 이용한 필터링을 수행할 것인지 여부를 지시하는 제 1플래그(iadf_flag), 각 경계 강도마다 슬라이스에 대해 적응적으로 결정된 필더 계수를 획득할 것인지 여부를 지시하는 제 2플래그(iadf_applied[]) 및 적용되는 각 경계 강도에 대한 필터 계수(filter_coef[][])를 획득할 수 있다.
도 14b는 도 14a에 따른 디블록킹 필터의 적용 방법을 나타내는 순서도이다. 매 슬라이스에 대하여, 적응적 계수를 이용하는 슬라이스인지를 확인한다(S1010). 각 블록의 경계 강도를 결정(S1020)하고 블록 경계 강도 조건을 확인하여(S1030) 강도가 약할 경우 디블록킹 필터링 하지 않는다(S1050). 그렇지 않으면, 적응적 계수를 적용할 것인지 여부에 대한 플래그를 확인하여(S1040A), 슬라이스에 적합한 적응적 계수를 이용하여 디블록킹 필터링을 적용한다(S1060). 적응적인 필터 계수가 사용되지 않는 경우에는 모든 영상에 대해 동일하게 고정된 계수를 이용한 필터링 연산이 수행된다(S1070).
도 15a 는 디블록킹 필터링에 있어서 적응적인 필터 계수들을 사용할 수 있도록 하는 제 2실시예와 관련된 신택스이다. 도 15a을 참조하면, 비디오 신호로부터, 각 슬라이스별로, 슬라이스에 대해 적응적으로 결정된 필터 계수를 이용한 필터링을 수행할 것인지 여부를 지시하는 제 1플래그(iadf_flag), 상기 슬라이스에 대해 적응적으로 결정된 필터 계수가 획득되는 블록 경계 강도의 범위를 나타내는 임계 정보(limited_bs_number) 및 적용되는 경계 강도에 대한 필터 계수(filter_coef[][])를 획득할 수 있다. 임계 정보의 의미는, 지정된 경계 강도의 한계 이상인 경계 강도(BS) 위치에 대하여만 적응적인 계수를 이용한 디블록킹 필터링이 수행되고, 그 외의 경우에는 모든 영상에 대해 동일하게 고정된 계수를 이용한 필터링 연산이 수행된다는 것이다.
도 15b는 도 15a에 따른 디블록킹 필터의 적용 방법에 대한 순서도이다. 도 15b에 도시된 처리 과정은 도 15a를 참조하여 설명한 바와 유사하나, 해당 적응적 계수를 적용할 것인지 여부를 경계 강도에 대한 플래그를 확인 하는 대신에 임계 강도 이상인지를 비교하여(S1040B) 확인한다.
도 16은 본 발명의 실시예에 따른 비디오 신호 처리 장치의 일 예를 나타낸 블록도이다. 도 16에 따르면, 비디오 신호 처리 장치는 수신부(810), 디블록킹 정보 획득부(820), 디코딩부(830), 디블록킹 필터부(840)를 포함할 수 있다. 수신부(810)에서는 비디오 신호를 포함하는 비트 스트림을 수신한다. 비디오 신호 비트스트림은 디블록킹 정보 획득부(820) 및 디코딩부(830)로 전달된다. 본 발명의 일부 실시예에서는 블록 경계 강도 연산부(850)을 더 포함할 수 있는데, 블록 경계 강도 연산부(850)는 디블록킹 필터링이 적용되는 픽셀 위치, 블록 타입 등에 기반하여 블록 경계 강도를 계산한다.
디블록킹 정보 획득부(820)는 다시 제 1플래그 획득부(822), 제 2플래그 또는 임계 정보 획득부(824) 및 적응적 필터 계수 획득부(826)를 포함하여 구성될 수 있다. 제 1플래그 획득부(822)에서는 슬라이스 전체에 대해 적응적인 계수를 이용할 것인지 여부를 지시하는 플래그를 획득한다. 제 2플래그 또는 임계 정보 획득부(824)에서는 제 1플래그가 적응적 필터 계수를 사용하는 것을 지시하는 경우에 한해, 어떤 블록 경계 강도에서 적응적인 계수를 적용할 것인지 여부를 지시하는 플래그나, 어떤 블록 경계 강도 이상에서 적응적인 필터 계수를 적용할 것인지를 지정하는 임계 정보를 획득한다. 적응적 필터 계수 획득부(826)에서는 제 2플래그가 적응적인 필터 계수를 사용하는 것을 지시하는 블록 경계 강도이거나 또는 임계 강도 미만인 블록 경계 강도에 대해서 수신된 비디오 신호로부터 필터 계수를 획득하여 디블록킹 필터부(840)에 전달한다.
한편, 디코딩부(830)에서는 전달된 영상을 복호화 한다. 상기 복호화된 영상은 디블록킹 필터부(840)에 전달되어 디블록킹 필터링 연산이 적용된다. 디블록킹 필터링을 적용하는데 있어서 디블록킹 정보 획득부(820)에서 획득한 플래그 정보에 따라서 적응적인 필터 계수를 이용할 것인지 고정된 필터 계수를 이용할 것인지 여부를 결정하여 필터링을 수행한다.
본 명세서의 실시예에서는 슬라이스 별로 적응적 필터 계수를 계산하는 것으로 설명하였으나, 본 발명이 이에 한정되는 것은 아니며 시퀀스, 픽쳐, 매크로 블록 등 다른 단위에 대하여도 적용될 수 있다.
본 발명의 실시예들에서는, 전체 영상에서의 잡음 제거를 위하여 복원된 영상에 대하여 적응적 루프 필터(Adaptive Loop Filtering)가 적용될 수 있다. 실시 형태에서는, 원 프레임과 복원된 프레임 사이에서 위너 필터(Wiener filter) 계수를 구하여 이를 부호화 하여 사용한다. 그러나 도 1과 같이, 디블록킹 필터(132)가 적용된 이후의 신호에 적응적 루프 필터(134)를 적용하는 경우에는, 디블록킹 필터링 된 신호에는 양자화 왜곡 뿐만 아니라 디블록킹 왜곡이 함께 포함되어 있기 때문에, 성질이 다른 두 종류의 왜곡을 하나의 필터로 복원하는 것이 어려울 수 있다. 따라서 디블록킹 필터 이전에 왜곡 보정을 하는 것이 필요하다.
도 17a는 본 발명의 일실시예에 따른 인코더(100)를 나타낸 것이다. 도 17a에 따르면, 복원된 영상에 대해 디블록킹 필터(132) 전에 적응적 루프 필터(134)를 수행하여 원 영상과 디블록킹 필터링 전의 복원된 영상 간의 위너 필터 계수를 구한다. 도 17b는 본 발명의 일실시예에 따른 디코더(200) 를 나타낸 것으로, 마찬가지로 적응적 루프 필터(232)를 디블록킹 필터(234) 이전에 수행한다.
한편, 예측 영상과 레지듀얼 값을 더하여 복원된 영상보다는, 영상 자체 특성이 제거된 레지듀얼 영상에 대하여만 왜곡 보정을 수행하는 것이 보다 효과적일 수 있다. 따라서 본 발명의 또다른 실시예에서는, 도 18a 의 인코더(100) 및 도 18b의 디코더(200)에서 도시하는 것 처럼, 레지듀얼 신호에 대하여만 적응적 루프 필터(134)를 먼저 적용하도록 한다. 원 레지듀얼은 원 영상과 부호화에 사용되는 예측 신호와의 차이이고, 복원된 레지듀얼은 디블록킹 이전의 복원된 영상과 부호화에 사용되는 예측 신호의 차이이므로, 복원된 레지듀얼이 원 레지듀얼과 차이값이 작을수록 복원된 영상이 원 영상과 같아지게 된다.
본 발명의 또다른 실시예에서는, 도 19a의 인코더(100) 및 도 19b의 디코더(200)에서 도시하는 것처럼, 레지듀얼에 대한 적응적 루프 필터와 기존의 디블록킹된 복원 영상에 대한 적응적 루프 필터를 병행하여 적용할 수 있다.
영상 전체에 적응적 루프 필터를 적용함에 있어서, 블록 단위로 필터 적용 여부를달리할 수 있다. 일부 실시예에서는 어떤 블록에 필터를 적용할 것인지를 나타내기 위하여 도 20과 같은 쿼드 트리(Quadtree) 를 이용할 수 있다. 영상은 블록 내에서 다시 서브 블록으로 계속해서 나누어질 수 있다. 쿼드 트리의 내부 노드에는 해당 노드에 대응하는 블록을 서브 블록으로 계속 나눌 것인지 여부를 나타내는 플래그(block_partion_flag)가 저장된다. 예를 들어, 내부 노드 값이 1이면 해당 노드에 대응하는 블록은 다시 4개의 블록으로 나누어지고, 0이면 더 이상 나누어지지 않고 필터 연산이 수행될 수 있다.
블록이 반드시 4개의 정방향 블록으로만 나누어질 수 있는 것은 아니다. 예를 들어, 내부 노드 값이 1이면 해당 블록은 2개의 수평 직사각형 서브 블록으로 나누어지고, 2이면 해당 블록은 2개의 수직 직사각형 서브 블록으로 나누어지고, 3이면 4개의 정사각형 서브 블록으로 나누어지도록 설정할 수도 있다.
값이 0이 아닌 내부 노드는 블록이 나누어지므로 2개 이상의 자식(child) 노드를 갖는다. 값이 0인 노드는 더 이상 블록이 나누어지지 않으므로 1개의 자식을 갖는다. 또한, 상기 자식은 리프노드가 된다. 리프 노드에는 해당 블록에 적응적 루프 필터를 적용할 것인지의 여부를 나타내는 플래그(filter_block_flag)가 저장된다. 예를 들어 내부 노드 값이 1이면 해당 노드에 대응하는 블록에 대하여 적응적 루프 필터를 적용하고, 0이면 적용하지 않는다.
본 발명이 적용되는 디코딩/인코딩 방법은 컴퓨터에서 실행되기 위한 프로그램으로 제작되어 컴퓨터가 읽을 수 있는 기록 매체에 저장될 수 있으며, 본 발명에 따른 데이터 구조를 가지는 멀티미디어 데이터도 컴퓨터가 읽을 수 있는 기록 매체에 저장될 수 있다. 상기 컴퓨터가 읽을 수 있는 기록 매체는 컴퓨터 시스템에 의하여 읽혀질 수 있는 데이터가 저장되는 모든 종류의 저장 장치를 포함한다. 컴퓨터가 읽을 수 있는 기록 매체의 예로는 ROM, RAM, CD-ROM, 자기 테이프, 플로피디스크, 광 데이터 저장장치 등이 있으며, 또한 캐리어 웨이브(예를 들어 인터넷을 통한 전송)의 형태로 구현되는 것도 포함한다. 또한, 상기 인코딩 방법에 의해 생성된 비트스트림은 컴퓨터가 읽을 수 있는 기록 매체에 저장되거나, 유/무선 통신망을 이용해 전송될 수 있다.
이상과 같이, 본 발명은 비록 한정된 실시예와 도면에 의해 설명되었으나, 본 발명은 이것에 의해 한정되지 않으며 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에 의해 본 발명의 기술사상과 아래에 기재될 특허청구범위의 균등범위 내에서 다양한 수정 및 변형이 가능함은 물론이다.
Claims (10)
- 비디오 신호를 수신하는 단계;
상기 비디오 신호 내의 현재 프레임을 블록 단위로 복호화하여 복원된 프레임을 생성하는 단계;
상기 복원된 프레임에 대하여 제 1필터 계수를 이용하여 디블록킹 필터링을 수행할지 또는 제 2필터 계수를 이용하여 디블록킹 필터링을 수행할지 여부를 지시하는 제 1플래그를 획득하는 단계; 및
상기 제 1플래그가 제 1필터 계수를 이용하는 것을 지시할 경우에는, 상기 비디오 신호로부터 제 1필터 계수를 획득하고, 상기 획득된 제 1필터 계수를 이용하여 디블록킹 필터링을 수행하고, 상기 제 1플래그가 제 2필터 계수를 이용하는 것을 지시할 경우에는, 제 2필터 계수를 이용하여 디블록킹 필터링을 수행하는 단계를 포함하되,
상기 제 1필터 계수는 슬라이스마다 적응적으로 결정된 값을 나타내고, 상기 슬라이스는 상기 현재 프레임에 포함되며, 상기 제 2필터 계수는 기결정된 테이블 정보로부터 유도된 값을 나타내는 것을 특징으로 하는 비디오 신호의 처리 방법.
- 제 1항에 있어서,
상기 현재 프레임 내 현재 픽셀의 위치에 기초하여 블록 경계 강도를 유도하는 단계를 더 포함하고,
상기 디블록킹 필터링을 수행하는 단계는 상기 유도된 블록 경계 강도에 대응되는 제 1필터 계수 또는 제 2필터 계수를 이용하여 수행되는 것을 특징으로 하는 비디오 신호의 처리 방법.
- 제 2항에 있어서,
상기 제 1플래그에 따라 제 1필터 계수를 이용하는 경우에 있어서, 상기 블록 경계 강도마다 상기 제 1필터 계수를 획득할지 여부를 지시하는 제 2플래그를 획득하는 단계를 더 포함하고,
상기 디블록킹 필터링을 수행하는 단계에 있어서, 상기 제 2플래그에 따라 상기 제 1필터 계수가 획득되는 블록 경계 강도에 대하여는, 상기 제 1필터 계수를 적용하는 것을 특징으로 하는 비디오 신호의 처리 방법.
- 제 2항에 있어서,
상기 제 1플래그에 따라 제 1필터 계수를 이용하는 경우에 있어서, 상기 블록 경계 강도의 임계 정보를 획득하는 단계를 더 포함하되,
상기 임계 정보는 상기 제 1필터 계수가 획득되는 블록 경계 강도의 범위를 나타내고,
상기 디블록킹 필터링을 수행하는 단계에 있어서, 상기 임계 정보에 따라 상기 제 1필터 계수가 획득되는 블록 경계 강도에 대하여는, 상기 제 1필터 계수를 적용하는 것을 특징으로 하는 비디오 신호의 처리 방법.
- 제 1항에 있어서,
상기 제 1필터 계수는 원본 프레임의 값 및 상기 복원된 프레임의 값 간의 평균 제곱 에러를 최소로 만들도록 선택된 것을 특징으로 하는 비디오 신호의 처리 방법.
- 비디오 신호를 수신하는 수신부;
상기 비디오 신호 내의 현재 프레임을 블록 단위로 복호화하여 복원된 프레임을 생성하는 디코딩부;
상기 복원된 프레임에 대하여 제 1필터 계수를 이용하여 디블록킹 필터링을 수행할지 또는 제 2필터 계수를 이용하여 디블록킹 필터링을 수행할지 여부를 지시하는 제 1플래그를 획득하는 제 1플래그 획득부;
상기 제 1플래그가 제 1필터 계수를 이용하는 것을 지시할 경우 상기 수신된 비디오 신호로부터 제 1필터 계수를 획득하는 제 1필터 계수 획득부; 및
제 1필터 계수 또는 제 2필터 계수를 이용하여 디블록킹 필터링을 수행하는 디블록킹 필터부를 포함하여 구성되고,
상기 제 1필터 계수는 슬라이스마다 적응적으로 결정된 값을 나타내고, 상기 슬라이스는 상기 현재 프레임에 포함되며, 상기 제 2필터 계수는 기결정된 테이블 정보로부터 유도된 값을 나타내는 것을 특징으로 하는 비디오 신호의 처리 장치.
- 제 6항에 있어서,
상기 현재 프레임 내 현재 픽셀의 위치에 기초하여 블록 경계 강도를 유도하는 블록 경계 강도 연산부를 더 포함하고
상기 디블록킹 필터부에서는 상기 유도된 블록 경계 강도에 대응되는 제 1필터 계수 또는 제 2필터 계수를 이용하는 것을 특징으로 하는 비디오 신호의 처리 장치.
- 제 7항에 있어서,
상기 제 1플래그에 따라 제 1필터 계수를 이용하는 경우에 있어서, 상기 블록 경계 강도마다 상기 제 1필터 계수를 획득할지 여부를 지시하는 제 2플래그를 획득하는 제 2플래그 획득부를 더 포함하고,
상기 디블록킹 필터부에서, 상기 제 2플래그에 따라 상기 제 1필터 계수가 획득되는 블록 경계 강도에 대하여는 상기 제 1필터 계수를 적용하는 것을 특징으로 하는 비디오 신호의 처리 장치.
- 제 7항에 있어서,
상기 제 1플래그에 따라 제 1필터 계수를 이용하는 경우에 있어서, 상기 블록 경계 강도의 임계 정보를 획득하는 경계 강도 임계 정보 획득부를 더 포함하되,
상기 임계 정보는 상기 제 1필터 계수가 획득되는 블록 경계 강도의 범위를 나타내고,
상기 디블록킹 필터부에 있어서, 상기 임계 정보에 따라 상기 제 1필터 계수가 획득되는 블록 경계 강도에 대하여 상기 제 1필터 계수를 적용하는 것을 특징으로 하는 비디오 신호의 처리 장치
- 제 6항에 있어서,
상기 제 1필터 계수는 원본 프레임의 값 및 상기 복원된 프레임의 값 간의 평균 제곱 에러를 최소로 만들도록 선택된 것을 특징으로 하는 비디오 신호의 처리 장치.
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020100027980A KR101647376B1 (ko) | 2009-03-30 | 2010-03-29 | 비디오 신호 처리 방법 및 장치 |
PCT/KR2010/001936 WO2010114283A2 (ko) | 2009-03-30 | 2010-03-30 | 비디오 신호 처리 방법 및 장치 |
US13/262,409 US8908760B2 (en) | 2009-03-30 | 2010-03-30 | Method and apparatus for processing video signals |
Applications Claiming Priority (13)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US16447509P | 2009-03-30 | 2009-03-30 | |
US61/164,475 | 2009-03-30 | ||
US17107609P | 2009-04-20 | 2009-04-20 | |
US61/171,076 | 2009-04-20 | ||
US17360809P | 2009-04-29 | 2009-04-29 | |
US61/173,608 | 2009-04-29 | ||
US22108509P | 2009-06-28 | 2009-06-28 | |
US61/221,085 | 2009-06-28 | ||
US22776609P | 2009-07-22 | 2009-07-22 | |
US61/227,766 | 2009-07-22 | ||
US23247009P | 2009-08-10 | 2009-08-10 | |
US61/232,470 | 2009-08-10 | ||
KR1020100027980A KR101647376B1 (ko) | 2009-03-30 | 2010-03-29 | 비디오 신호 처리 방법 및 장치 |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20100109459A true KR20100109459A (ko) | 2010-10-08 |
KR101647376B1 KR101647376B1 (ko) | 2016-08-10 |
Family
ID=42828840
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020100027980A KR101647376B1 (ko) | 2009-03-30 | 2010-03-29 | 비디오 신호 처리 방법 및 장치 |
Country Status (3)
Country | Link |
---|---|
US (1) | US8908760B2 (ko) |
KR (1) | KR101647376B1 (ko) |
WO (1) | WO2010114283A2 (ko) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2012077928A1 (ko) * | 2010-12-07 | 2012-06-14 | 한국전자통신연구원 | 초고해상도 영상을 부호화하는 장치 및 방법, 그리고 복호화 장치 및 방법 |
WO2013025065A3 (ko) * | 2011-08-18 | 2013-04-18 | (주)휴맥스 | 정밀한 단위의 필터 선택을 적용한 영상 부호화/복호화 장치 및 방법 |
WO2013133627A1 (ko) * | 2012-03-06 | 2013-09-12 | 엘지전자 주식회사 | 비디오 신호 처리 방법 |
WO2013157796A1 (ko) * | 2012-04-15 | 2013-10-24 | 삼성전자 주식회사 | 병렬 처리를 위한 비디오 부호화 방법 및 장치, 비디오 복호화 방법 및 장치 |
KR101438471B1 (ko) * | 2011-01-03 | 2014-09-16 | 미디어텍 인크. | 필터 유닛 기반 인-루프 필터링 방법 |
Families Citing this family (39)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9654792B2 (en) | 2009-07-03 | 2017-05-16 | Intel Corporation | Methods and systems for motion vector derivation at a video decoder |
JP5359657B2 (ja) | 2009-07-31 | 2013-12-04 | ソニー株式会社 | 画像符号化装置および方法、記録媒体、並びにプログラム |
KR20110123651A (ko) * | 2010-05-07 | 2011-11-15 | 한국전자통신연구원 | 생략 부호화를 이용한 영상 부호화 및 복호화 장치 및 그 방법 |
US9094658B2 (en) * | 2010-05-10 | 2015-07-28 | Mediatek Inc. | Method and apparatus of adaptive loop filtering |
US9124898B2 (en) * | 2010-07-12 | 2015-09-01 | Mediatek Inc. | Method and apparatus of temporal motion vector prediction |
US8787443B2 (en) * | 2010-10-05 | 2014-07-22 | Microsoft Corporation | Content adaptive deblocking during video encoding and decoding |
ES2773774T3 (es) * | 2010-10-06 | 2020-07-14 | Ntt Docomo Inc | Dispositivo, método y programa de codificación bipredictiva de imágenes, y dispositivo, método y programa de decodificación bipredictiva de imágenes |
US9172963B2 (en) * | 2010-11-01 | 2015-10-27 | Qualcomm Incorporated | Joint coding of syntax elements for video coding |
US9462280B2 (en) | 2010-12-21 | 2016-10-04 | Intel Corporation | Content adaptive quality restoration filtering for high efficiency video coding |
PL3373580T3 (pl) * | 2010-12-21 | 2020-05-18 | Ntt Docomo, Inc. | Kodowanie z predykcją wewnątrzramkową przy reprezentacjach planarnych |
EP2665271A4 (en) | 2011-01-12 | 2014-06-18 | Panasonic Corp | VIDEO ENCODING METHOD AND VIDEO DECODING METHOD |
JP6108309B2 (ja) * | 2011-02-22 | 2017-04-05 | サン パテント トラスト | 動画像符号化方法、動画像符号化装置、動画像復号方法、および、動画像復号装置 |
WO2012117728A1 (ja) | 2011-03-03 | 2012-09-07 | パナソニック株式会社 | 動画像符号化方法、動画像復号方法、動画像符号化装置、動画像復号装置、及び動画像符号化復号装置 |
JP5670226B2 (ja) * | 2011-03-04 | 2015-02-18 | Kddi株式会社 | 動画像符号化装置、動画像符号化方法、およびプログラム |
KR101968700B1 (ko) | 2011-03-09 | 2019-04-12 | 지멘스 악티엔게젤샤프트 | 디지털화된 이미지들의 시퀀스를 코딩하기 위한 방법 |
US20120230423A1 (en) * | 2011-03-10 | 2012-09-13 | Esenlik Semih | Line memory reduction for video coding and decoding |
WO2012147344A1 (ja) * | 2011-04-27 | 2012-11-01 | 株式会社Jvcケンウッド | 動画像復号装置、動画像復号方法、及び動画像復号プログラム |
WO2013053314A1 (en) * | 2011-10-14 | 2013-04-18 | Mediatek Inc. | Method and apparatus for loop filtering |
CN103891277B (zh) * | 2011-10-14 | 2018-01-26 | 寰发股份有限公司 | 回路滤波方法及其装置 |
US8792745B2 (en) * | 2011-12-06 | 2014-07-29 | Sony Corporation | Encoder optimization of adaptive loop filters in HEVC |
US9036710B2 (en) * | 2012-03-08 | 2015-05-19 | Blackberry Limited | Unified transform coefficient encoding and decoding |
US20130329007A1 (en) * | 2012-06-06 | 2013-12-12 | Qualcomm Incorporated | Redundancy removal for advanced motion vector prediction (amvp) in three-dimensional (3d) video coding |
RU2625534C2 (ru) * | 2012-07-02 | 2017-07-14 | Сан Пэтент Траст | Способ декодирования изображений, способ кодирования изображений, устройство декодирования изображений, устройство кодирования изображений и устройство кодирования и декодирования изображений |
US20140192862A1 (en) * | 2013-01-07 | 2014-07-10 | Research In Motion Limited | Methods and systems for prediction filtering in video coding |
US9686561B2 (en) * | 2013-06-17 | 2017-06-20 | Qualcomm Incorporated | Inter-component filtering |
US11563938B2 (en) | 2016-02-15 | 2023-01-24 | Qualcomm Incorporated | Geometric transforms for filters for video coding |
KR102668775B1 (ko) * | 2016-11-11 | 2024-05-23 | 한국전자통신연구원 | 표적영역의 변위정보 확인 방법 및 장치, 이를 이용한 대기운동정보 확인방법 및 장치 |
CN114157865B (zh) * | 2016-12-27 | 2023-10-20 | 松下电器(美国)知识产权公司 | 编码装置、解码装置及非暂时性的存储介质 |
US10645408B2 (en) * | 2017-09-17 | 2020-05-05 | Google Llc | Dual deblocking filter thresholds |
US10250899B1 (en) | 2017-09-22 | 2019-04-02 | Qualcomm Incorporated | Storing and retrieving high bit depth image data |
US11457239B2 (en) | 2017-11-09 | 2022-09-27 | Google Llc | Block artefact reduction |
KR102338466B1 (ko) * | 2017-12-08 | 2021-12-14 | 삼성전자주식회사 | 디스플레이 장치 및 디스플레이 장치의 제어방법 |
WO2019188942A1 (en) * | 2018-03-30 | 2019-10-03 | Sharp Kabushiki Kaisha | Systems and methods for performing motion compensated prediction for video coding |
EP3794820A1 (en) * | 2018-05-17 | 2021-03-24 | Telefonaktiebolaget LM Ericsson (publ) | Deblocking of implicit transform unit boundaries |
CN108809423B (zh) * | 2018-06-07 | 2019-11-15 | 华南理工大学 | 基于区域匹配算法的its-vlc信源检测方法 |
KR102568801B1 (ko) * | 2018-09-28 | 2023-08-21 | 파나소닉 인텔렉츄얼 프로퍼티 코포레이션 오브 아메리카 | 부호화 장치, 복호 장치, 부호화 방법, 및 복호 방법 |
CN111010568B (zh) * | 2018-10-06 | 2023-09-29 | 华为技术有限公司 | 插值滤波器的训练方法、装置及视频图像编解码方法、编解码器 |
US11019359B2 (en) * | 2019-01-15 | 2021-05-25 | Tencent America LLC | Chroma deblock filters for intra picture block compensation |
BR112022015270A8 (pt) * | 2020-02-10 | 2022-11-01 | Panasonic Ip Corp America | Codificador, decodificador, método de codificação e método de decodificação |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2008075247A1 (en) * | 2006-12-18 | 2008-06-26 | Koninklijke Philips Electronics N.V. | Image compression and decompression |
WO2009123033A1 (ja) * | 2008-03-31 | 2009-10-08 | 日本電気株式会社 | デブロッキングフィルタ処理装置、デブロッキングフィルタ処理方法 |
KR20100136391A (ko) * | 2009-06-18 | 2010-12-28 | 한국전자통신연구원 | 다수의 필터를 이용한 복원영상 필터링 방법 및 이를 적용한 부호화/복호화 장치 및 방법 |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
AU717480B2 (en) | 1998-08-01 | 2000-03-30 | Korea Advanced Institute Of Science And Technology | Loop-filtering method for image data and apparatus therefor |
KR100301013B1 (ko) | 1998-08-01 | 2001-09-06 | 윤종용 | 영상데이터 루프필터링방법 및 장치 |
KR100331331B1 (ko) | 1998-11-02 | 2002-05-09 | 윤덕용 | 영상데이터 루프필터링 방법 |
KR100846774B1 (ko) | 2002-05-03 | 2008-07-16 | 삼성전자주식회사 | 블록킹 효과를 제거하기 위한 필터링 방법 및 그 장치 |
KR100729241B1 (ko) | 2005-12-05 | 2007-06-15 | 주식회사 텔레칩스 | 디블록킹 필터 |
-
2010
- 2010-03-29 KR KR1020100027980A patent/KR101647376B1/ko active IP Right Grant
- 2010-03-30 WO PCT/KR2010/001936 patent/WO2010114283A2/ko active Application Filing
- 2010-03-30 US US13/262,409 patent/US8908760B2/en active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2008075247A1 (en) * | 2006-12-18 | 2008-06-26 | Koninklijke Philips Electronics N.V. | Image compression and decompression |
WO2009123033A1 (ja) * | 2008-03-31 | 2009-10-08 | 日本電気株式会社 | デブロッキングフィルタ処理装置、デブロッキングフィルタ処理方法 |
KR20100136391A (ko) * | 2009-06-18 | 2010-12-28 | 한국전자통신연구원 | 다수의 필터를 이용한 복원영상 필터링 방법 및 이를 적용한 부호화/복호화 장치 및 방법 |
Non-Patent Citations (1)
Title |
---|
B. Jeon, et al. Description of video coding technology proposal by LG Electronics. JCT-VC of ITU-T and ISO/IEC. JCTVC-A110, Apr. 2010, pp.1-35 * |
Cited By (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9794556B2 (en) | 2010-02-17 | 2017-10-17 | Electronics And Telecommunications Research Institute | Method and device for simplifying encoding and decoding of ultra-high definition images |
WO2012077928A1 (ko) * | 2010-12-07 | 2012-06-14 | 한국전자통신연구원 | 초고해상도 영상을 부호화하는 장치 및 방법, 그리고 복호화 장치 및 방법 |
US11770550B2 (en) | 2010-12-07 | 2023-09-26 | Electronics And Telecommunications Research Institute | Method and device for simplifying the encoding and decoding of ultra-high definition images |
KR101438471B1 (ko) * | 2011-01-03 | 2014-09-16 | 미디어텍 인크. | 필터 유닛 기반 인-루프 필터링 방법 |
US9877019B2 (en) | 2011-01-03 | 2018-01-23 | Hfi Innovation Inc. | Method of filter-unit based in-loop filtering |
US10567751B2 (en) | 2011-01-03 | 2020-02-18 | Hfi Innovation Inc. | Method of filter-unit based in-loop filtering |
WO2013025065A3 (ko) * | 2011-08-18 | 2013-04-18 | (주)휴맥스 | 정밀한 단위의 필터 선택을 적용한 영상 부호화/복호화 장치 및 방법 |
WO2013133627A1 (ko) * | 2012-03-06 | 2013-09-12 | 엘지전자 주식회사 | 비디오 신호 처리 방법 |
US9924169B2 (en) | 2012-03-06 | 2018-03-20 | Lg Electronics Inc. | Method and apparatus for selecting a filter based on a variance of depth data |
WO2013157796A1 (ko) * | 2012-04-15 | 2013-10-24 | 삼성전자 주식회사 | 병렬 처리를 위한 비디오 부호화 방법 및 장치, 비디오 복호화 방법 및 장치 |
US9681127B2 (en) | 2012-04-15 | 2017-06-13 | Samsung Electronics Co., Ltd. | Video encoding method and device and video decoding method and device for parallel processing |
Also Published As
Publication number | Publication date |
---|---|
US20120093217A1 (en) | 2012-04-19 |
WO2010114283A2 (ko) | 2010-10-07 |
US8908760B2 (en) | 2014-12-09 |
WO2010114283A3 (ko) | 2011-01-06 |
WO2010114283A9 (ko) | 2011-06-30 |
KR101647376B1 (ko) | 2016-08-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR101647376B1 (ko) | 비디오 신호 처리 방법 및 장치 | |
US10939119B2 (en) | Method and apparatus for encoding and decoding video using skip mode | |
KR102086145B1 (ko) | 인트라 예측 방법 및 그 장치 | |
JP5893729B2 (ja) | 一体化されたマージモードおよび適応動きベクトル予測モード候補選択 | |
US8948243B2 (en) | Image encoding device, image decoding device, image encoding method, and image decoding method | |
KR20100087600A (ko) | 보간 필터를 적응적으로 사용하여 영상을 부호화 및 복호화하는 방법 및 장치 | |
KR101418104B1 (ko) | 움직임 벡터 해상도 조합을 이용한 움직임 벡터 부호화/복호화 방법 및 장치와 그를 이용한 영상 부호화/복호화 방법 및 장치 | |
US11363280B2 (en) | Method and apparatus for encoding/decoding image signal | |
US11671584B2 (en) | Inter-prediction method and video decoding apparatus using the same | |
US11909990B2 (en) | Method and apparatus for encoding/decoding image signals using weight prediction parameter sets based on neighboring regions | |
US20240236302A1 (en) | Inter-prediction method and video decoding apparatus using the same | |
US20240031580A1 (en) | Method and apparatus for video coding using deep learning based in-loop filter for inter prediction | |
KR101449683B1 (ko) | 움직임 벡터 해상도 제한을 이용한 움직임 벡터 부호화/복호화 방법 및 장치와 그를 이용한 영상 부호화/복호화 방법 및 장치 | |
AU2018236768A1 (en) | Method for inducing a merge candidate block and device using same | |
KR101796876B1 (ko) | 움직임 추정을 이용한 영상 부호화 방법 및 장치 | |
US20230291914A1 (en) | Method and apparatus for generating residual signals using reference between components | |
US20230199196A1 (en) | Methods and Apparatuses of Frequency Domain Mode Decision in Video Encoding Systems | |
KR20170095671A (ko) | 영상 처리 방법, 프레임 율 변환 방법 및 그 장치 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant |