KR20120018506A - 스케일러블 비디오 코덱의 압축 효율 향상을 위한 템플릿 매칭 방법 및 장치 - Google Patents
스케일러블 비디오 코덱의 압축 효율 향상을 위한 템플릿 매칭 방법 및 장치 Download PDFInfo
- Publication number
- KR20120018506A KR20120018506A KR1020100081381A KR20100081381A KR20120018506A KR 20120018506 A KR20120018506 A KR 20120018506A KR 1020100081381 A KR1020100081381 A KR 1020100081381A KR 20100081381 A KR20100081381 A KR 20100081381A KR 20120018506 A KR20120018506 A KR 20120018506A
- Authority
- KR
- South Korea
- Prior art keywords
- current block
- difference
- region
- template
- decoded
- 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/30—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using hierarchical techniques, e.g. scalability
- H04N19/33—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using hierarchical techniques, e.g. scalability in the spatial domain
-
- 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/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
- H04N19/53—Multi-resolution motion estimation; Hierarchical motion 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/80—Details of filtering operations specially adapted for video compression, e.g. for pixel interpolation
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
공간적 스케일러블 비디오 부호화 및 복호화의 압축 효율을 향상시키기 위한 템플릿, 템플릿의 생성 방법, 상기 템플릿을 사용하는 영상 복호화 장치 및 방법이 제공된다. 현재 블록에 대응하는 하위 레이어의 정보를 업샘플링함으로써 현재 블록에 대응하는 정보가 생성되고, 생성된 정보에 기반하여 템플릿이 생성된다. 템플릿은 현재 블록에 대응하는 정보를 갖고 있기 때문에, 이러한 템플릿을 사용하여 움직임 벡터를 계산함으로써 압축 효율이 향상될 수 있다.
Description
아래의 실시예들은 공간적 스케일러블 비디오의 압축 효율 향상을 위한 템플릿 매칭 방법 및 장치에 관한 것이다.
스케일러블 영상 코덱(Scalable Video Codec; SVC) 방식을 사용하여 영상 신호가 인코딩(encoding)된 경우, 최고 화질로의 인코딩이 사용되었다라도, 이러한 인코딩의 결과로 생성된 픽처 시퀀스(picture sequence)의 부분 시퀀스만이 디코딩되어 사용됨으로 인하여 저화질의 영상이 표현될 수 있다. 상기의 부분 시퀀스는 시퀀스 전체에서 간헐적으로 선택된 프레임의 시퀀스를 의미한다.
예컨대, 하나의 영상 신호원을 4CIF의 픽처 시퀀스, CIF의 픽처 시퀀스 및 QCIF의 픽처 시퀀스로 각각 인코딩하여 디코딩(decoding) 장치에 전송하는 것과 같이, 작은 영상과 큰 영상이 동시에 전송되기 위해서는, 영상의 확대 및 축소가 요구된다.
이러한 경우, 작은 영상을 나타내는 하위 레이어 및 큰 영상을 나타내는 상위 레이어는 동일한 영상 신호원을 인코딩한다. 따라서, 양 레이어의 인코딩 신호 사이에는 잉여 정보(redundancy information)(리던던시)가 존재한다.
이러한 잉여 정보 때문에, 복수 개의 화면 사이즈를 전송하는 인코딩 방식이 사용될 경우, 인코딩되는 특정 레이어의 코딩율(coding rate)를 높이기 위해 레지듀얼(residual) 데이터가 사용된다.
레지듀얼 레이터는 하위 레이어의 임의의 영상 프레임(frame)을 기준으로 하여 그와 동시간의 현재(즉, 상위) 레이어의 영상 프레임을 예측하는 이미지의 데이터이다.
예컨대, 높은 해상도의 영상의 현재 매크로 블록(macro block)을 인코딩함에 있어서, 그 하위 레이어의 대응 블록(현재 매크로 블록과 동시간이면서 프레임에서 동 위치에 해당하는 영역을 포함하는 블록)을 확대되고, 확대된 블륵의 화소값들과의 차이 값(또는 에러 값)이 현재 매크로 블록에 인코딩된다. 이러한 방법에 의하여 공간적 확장성(scalability)이 제공된다.
또한, H.264 SVC 비디오 코덱은 하위 레이어의 움직임, 블록 모드 및 레지듀얼 정보를 적절히 가공하여 공간 레이어 간의 잉여 정보를 줄이기 위해 사용한다.
본 발명의 일측에 따르면, 상위 레이어 및 하위 레이어를 포함하는 영상 스트림의 부호화 또는 복호화를 위한 템플릿에 있어서, 부호화 또는 복호화의 대상인 현재 블록에 인접한 복호화된 영역을 선택함으로써 생성되는 제1 영역 및 현재 블록에 대응하는 정보를 포함하는 제2 영역을 포함하며, 상기 제2 영역은 하위 레이어의 상기 현재 블록에 대응하는 영역의 텍스처 정보를 업샘플링함으로써 생성되는, 템플릿이 제공된다.
상기 현재 블록에 대응하는 영역의 위치는 상기 현재 블록의 프레임 내 위치에 상기 상위 레이어의 프레임 및 상기 하위 레이어의 프레임의 길이의 비를 곱한 것일 수 있고, 상기 현재 블록에 대응하는 영역의 길이는 상기 현재 블록의 길이에 상기 상위 레이어의 프레임 및 상기 하위 레이어의 프레임의 길이의 비를 곱한 것일 수 있다.
본 발명의 다른 일측에 따르면, 상위 레이어 및 하위 레이어를 포함하는 영상 스트림의 부호화 또는 복호화를 위한 템플릿을 구성하는 방법에 있어서, 부호화 또는 복호화의 대상인 현재 블록에 인접한 복호화된 영역인 제1 영역을 선택하는 단계, 하위 레이어의 상기 현재 블록에 대응하는 영역의 텍스처 정보를 업샘플링하여 제2 영역을 생성하는 단계 및 상기 제1 영역 및 상기 제2 영역을 합하여 템플릿을 구성하는 단계를 포함하는 템플릿 생성 방법이 제공된다.
본 발명의 또 다른 일측에 따르면, 상위 레이어 및 하위 레이어를 포함하는 영상 스트림의 복호화에 있어서, 상위 레이어의 복호화 중인 현재 프레임에서 복호화의 대상이 되는 현재 블록을 선택하는 단계, 상기 현재 블록에 인접한 복호화된 영역 및 상기 하위 레이어의 현재 블록에 대응하는 영역에 기반하여 템플릿을 생성하는 단계, 상기 템플릿을 사용한 움직임 추정에 의해 상기 상위 레이어의 복호화된 이전 프레임에서 예측 블록을 결정하는 단계 및 상기 예측 블록에 기반하여 상기 현재 블록을 복호화하는 단계를 포함하는, 영상 스트림 복호화 방법이 제공된다
상기 현재 블록에 인접한 복호화된 영역 및 상기 하위 레이어의 현재 블록에 대응하는 영역에 기반하여 템플릿울 생성하는 단계는, 상기 하위 레이어의 현재 블록에 대응하는 영역의 텍스처 정보를 업샘플링하여 업샘플링된 기저 블록을 생성하는 단계 및 상기 현재 블록에 인접한 복호화된 영역 및 상기 업샘플링된 기저 블록을 합한 상기 템플릿을 생성하는 단계를 포함할 수 있다.
상기 템플릿을 사용한 움직임 추정에 의해 상기 상위 레이어의 복호화된 이전 프레임에서 예측 블록을 결정하는 단계는, 상기 이전 프레임 내의 부분 영역 및 상기 템플릿 간의 차이를 최소화하는 움직임 벡터를 계산하는 단계 - 상기 부분 영역은 상기 현재 블록의 위치에 상기 움직임 벡터를 더한 위치의 영역임 - 및 상기 현재 블록의 위치 및 상기 계산된 움직임 벡터에 기반하여 상기 예측 블록을 결정하는 단계를 포함할 수 있다.
상기 부분 영역은 상기 이전 프레임의 검색 영역 내에 있는 영역일 수 있다.인, 영상 스트림 복호화 방법.
상기 차이는 SAD 함수 또는 SSD 함수에 의해 계산될 수 있다.
상기 차이는 제1 차이 및 제2 차이의 가중치가 부가된 합이고, 상기 제1 차이는 상기 부분 영역 및 상기 현재 블록에 인접한 복호화된 영역 간의 차이이고, 상기 제2 차이는 상기 부분 영역 및 상기 업샘플링된 기저 블록 간의 차이일 수 있다.
본 발명의 또 다른 일측에 따르면, 상위 레이어 및 하위 레이어를 포함하는 영상 스트림을 수신하는 수신부, 상기 상위 레이어의 복호화된 프레임 및 상기 하위 레이어의 복호화된 프레임을 저장하는 저장부 및 상기 상위 레이어의 현재 프레임을 복호화하는 복호부를 포함하고, 상기 복호부는 상기 저장부로부터 복호화의 대상이 되는 현재 블록의 인접 영역에 대한 제1 정보 및 상기 하위 레이어의 상기 현재 블록에 대응하는 영역에 대한 제2 정보를 제공받아, 상기 제1 정보 및 상기 제2 정보에 기반하여 생성된 템플릿을 사용하여 상기 현재 블록을 복호화하는, 영상 처리 장치가 제공된다.
상기 영상 스트림은 상기 차이를 계산하는 방법에 대한 제어 정보를 포함할 수 있고, 상기 복호부는 상기 제어 정보에 기반하여 상기 차이를 계산할 수 있으며, 상기 차이를 계산하는 방법은 SAD 함수 또는 SSD 함수 중 하나 이상을 포함할 수 있다.
공간적 스케일러블 비디오 부호화 및 복호화의 압축 효율을 향상시키기 위한 템플릿 및 템플릿의 생성 방법이 제공된다.
상기 템플릿을 사용한 공간적 스케일러블 비디오 복호화 장치 및 방법이 제공된다.
도 1은 본 발명의 일 예에 따른 스케일러블 영상 코덱 부호기의 구조도이다.
도 2는 본 발명의 일 예에 따른 템플릿 매칭을 사용하여 복호화되는 프레임을 도시한다.
도 3은 본 발명의 일 예에 따른 템플릿 매칭에 사용되는 복호화된 이전 프레임을 도시한다.
도 4는 본 발명의 일 실시예에 따라 생성되는 템플릿을 도시한다.
도 5는 본 발명의 일 예에 따른 템플릿 매칭에 사용되는 복호화된 이전 프레임을 도시한다.
도 6은 본 발명의 일 실시예에 따른 영상 스트림 복호화 절차 흐름도이다.
도 7은 본 발명의 일 실시예에 따른 영상 처리 장치의 구조도이다.
도 2는 본 발명의 일 예에 따른 템플릿 매칭을 사용하여 복호화되는 프레임을 도시한다.
도 3은 본 발명의 일 예에 따른 템플릿 매칭에 사용되는 복호화된 이전 프레임을 도시한다.
도 4는 본 발명의 일 실시예에 따라 생성되는 템플릿을 도시한다.
도 5는 본 발명의 일 예에 따른 템플릿 매칭에 사용되는 복호화된 이전 프레임을 도시한다.
도 6은 본 발명의 일 실시예에 따른 영상 스트림 복호화 절차 흐름도이다.
도 7은 본 발명의 일 실시예에 따른 영상 처리 장치의 구조도이다.
이하에서, 본 발명의 일 실시예를, 첨부된 도면을 참조하여 상세하게 설명한다. 그러나, 본 발명이 실시예들에 의해 제한되거나 한정되는 것은 아니다. 각 도면에 제시된 동일한 참조 부호는 동일한 부재를 나타낸다.
도 1은 본 발명의 일 예에 따른 스케일러블 영상 코덱 부호기(encoder)(100)의 구조도이다.
영상 코덱 부호기(100)는 영상 원본(Original Video)(110) 및 약화된 영상(Decimated Video)(120)을 입력으로 받으며, 상위 레이어 부호기(130), 하위(베이스) 레이어 부호기(140) 및 멀티플렉서(150)를 포함한다.
약화된 영상(Decimated Video)(120)은 영상 원본(110)이 다운샘플(Downsample)된 것이다. 즉, 일반적으로 약화된 영상(120)은 영상 원본(110)에 비해 더 낮은 해상도 및/또는 더 낮은 프레임 당 속도를 갖는다.
상위 레이어 부호기(130)는 움직임 추정부(Motion Estimation)(160), 움직임 코딩부(Motion Coding)(162), 표준 업샘플링부(Normative Upsampling)(160), 화면 내 예측부(Intra Prediction)(172) 및 변형/엔트로피부(Transform/Entropy)(174)를 포함한다.
하위 레이어 부호기(140)는 움직임 추정부(180), 움직임 코딩부(182), 화면 내 예측부(190) 및 변형/엔트로피부(192)를 포함한다.
우선, 하위 레이어 부호기(140)의 부 구성 요소들에 대해 설명한다.
움직임 추정부(180)는 약화된 영상(120)의 움직임을 추정한다. 추정된 움직임은 움직임 코딩부(182)에 의해 부호화된다.
움직임 추정부(180)에 의해 출력된 텍스처(texture)는 화면 내 예측부(190)에 입력되고, 화면 내 예측이 수행된다. 화면 내 예측이 수행된 결과는 변형/엔트로피부(192)에서 변형/엔트로피 부호화된다.
다음, 상위 레이어 부호기(130)의 부 구성 요소들에 대해 설명한다.
움직임 추정부(160)은 영상 원본(110)의 움직임을 추정한다. 추정된 움직임은 움직임 코딩부(162)에 의해 부호화된다.
표준 업샘플링부(170)는 하위 레이어 부호기(140)의 변형/엔트로피부(192)에서 출력된 디코드된 프레임들 및 영상 원본(110)을 입력받아 표준 업샘플링을 수행한다.
화면 내 예측부(172)는 움직임 추정부(180)에 의해 출력된 텍스처 및 표준 업샘플링부에서 출력된 업샘플링된 프레임들을 입력으로 받아, 상기 입력에 대해 화면 내 예측을 수행한다. 상기 업샘플링된 프레임들은 움직임 및 텍스처 등의 정보를 포함할 수 있다.
변형/엔트로피부(174)는 화면 내 예측부(172)에서 출력된 화면 내 예측이 수행된 결과를 변형/엔트로피 부호화한다.
멀티플렉서(150)는 움직임 코딩부(162), 변형/엔트로피부(174), 움직임 코딩부(182) 및 변형/엔트로피부(192)로부터 부호화된 결과를 입력으로 받아, 상기 입력들에 대해 멀티플렉싱(Multiplexing)을 수행하여, SVC 비트스트림(Bit stream)을 출력한다.
도 2는 본 발명의 일 예에 따른 템플릿 매칭(template matching)을 사용하여 복호화되는 프레임(200)을 도시한다.
복호화가 되는 프레임(200)을 이후 현재 프레임(200)으로 명명한다.
현재 프레임(200) 중 일부는 이미 복호화된 영역(210)이다(사선으로 칠해진 영역). 복호화된 영역(210)은 복수 개의 이미 복호화된 블록들로 구성된 것일 수 있다.
현재 복호화가 수행되는 블록(220)을 이후 현재 블록(220)으로 명명한다.
현재 프레임(200)의 복호화된 영역(210) 중 일부가 템플릿(230)으로 이용된다. 도 2에서는 복호화된 영역(210) 중 현재 블록(220)에 인접한 사각 영역이 템플릿(230)으로 이용되었다.
도 3은 본 발명의 일 예에 따른 템플릿 매칭에 사용되는 복호화된 이전 프레임(300)을 도시한다.
이미 복호화된 이전 프레임(300)을 이후 이전 프레임(300)으로 명명한다.
현재 프레임(200)의 템플릿(230)은 움직임 추정을 통해 현재 블록(220)에 대한 최적의 예측 신호를 찾기 위해 사용된다.
이전 프레임(300) 중 점선으로 도시된 일부 영역이 검색의 대상이 되는 검색 영역(Search Range)(310)이다. 즉, 움직임 추정은 검색 영역(310)의 범위 내에서 이루어진다.
움직임 추정은 검색 영역(310) 내에서 템플릿(230)에 대응하는 최적 위치(320)를 찾는 것이다.
움직임 추정에 의해 최적 위치(320)가 결정되면, 최적 위치(320)에 따라 예측 블록(330)이 결정될 수 있다. 최적 위치(320) 및 예측 블록(330)의 위치 관계는 템플릿(230) 및 현재 블록(220)의 위치 관계와 같다.
이전 프레임(300)의 예측 블록(330)은 현재 프레임(200)의 현재 블록(220)에 대응되는 부분이다. 예측 블록(330)은 현재 블록(220)의 예측에 사용된다.
전술된 움직임 추정을 통한 최적 위치(320)는 하기의 수학식 1에 의해 결정될 수 있다. 수학식 1은 움직임 추정 과정에서 SAD(Sum of Absolute Difference) 값을 계산하기 위한 것이다.
vy, vx는 움직임 백터를 나타낸다. R은 참조 프레임(즉, 이전 프레임)의 픽셀(pixel) 정보이고, T는 현재 블록(220)에 따라 구성된 템플릿(230)의 픽셀 정보이다.
즉, 수학식 1을 사용함으로써, R T 로 정의된 템플릿(230) 영역 및 이전 프레임(300)의 템플릿(230)에 해당하는 부분(340)에서 특정 움직임 벡터만큼 이동한 영역 간의 SAD가 계산될 수 있으며, 정해진 검색 영역(310) 내에서 최소의 SAD 값을 갖게 하는 움직임 벡터 (vy, vx)(350)가 계산될 수 있다.
템플릿(230)의 위치에서 움직임 벡터(350)만큼 이동한 곳이 최적 위치(320)이다.
부호기 및 복호기(decoder)가 각각 전술된 템플릿 매칭 과정을 수행하면, 복호기는 상기 과정을 통해 최적의 예측 영역을 찾을 수 있으므로 부호기에서는 움직임 벡터를 전송하지 않을 수 있다. 따라서, 압축 효율이 향상될 수 있다.
단, 현재 블록(220)은 복호화되는 시점에서, 아직 현재 블록(220)의 예측 신호를 제공하기 위하서 아직 복호화 되어있지 않다. 따라서, 전술된 방식에서 템플릿(230)은 현재 블록(220)의 정보를 사용하지 않으므로(즉, 템플릿(230)은 현재 블록(220)을 포함하지 않음), 예측 성능이 제한된다.
도 4는 본 발명의 일 실시예에 따라 생성되는 템플릿(400)을 도시한다.
템플릿(400)은 제1 영역(410) 및 제2 영역(420)을 포함한다.
제1 영역(410)은 도 2를 참조하여 전술된 템플릿(230)에 해당하는 영역이다. 중복되는 설명은 생략한다.
하위 레이어의 현재 프레임(430)(이하, 하위 프레임(430)으로 명명한다.)은 상위 레이어의 현재 프레임(200)에 대응하는 것이다. 즉, 하위 프레임(430)은 상위 레이어의 현재 프레임(200)과 같은 순간의 하위 레이어의 프레임이다.
하위 프레임은 프레임에 대한 복호화된 정보를 포함한다.
본 실시예에서, 하위 레이어의 프레임의 크기는 상위 레이어의 프레임의 크기보다 더 작다. 예컨대, 하위 레이어의 프레임의 길이(x 축 길이 또는 y 축 길이)는 상위 레이어의 프레임의 길이의 1/2이다.
하위 프레임(430) 내의 기저(base) 블록(440)은 현재 블록(230)에 대응하는 하위 프레임(430)의 영역이다. 예컨대, 현재 프레임(200) 및 하위 프레임(430)의 길이의 비율이 1:2라면, 기저 블록(440)의 하위 프레임(430) 내에서의 x 위치 값 및 y 위치 값은 각각 현재 블록(220)의 현재 프레임(200) 내에서의 x 위치 값 및 y 위치 값의 1/2이고, 기저 블록(440)의 x 길이 값 및 y 길이 값은 각각 현재 블록(220)의 x 길이 값 및 y 길이 값의 1/2이다.
기저 블록(440)의 텍스처 정보는 업샘플링(Upsampling)되어 업샘플링된 정보인 제2 영역(420)이 생성된다. 즉, 제2 영역(420)은 기저 블록(440)의 텍스처 정보가 업샘플링됨으로써 생성된 업샘플링된 기저 블록(420)이다.
업샘플링은 하위 프레임(430) 및 현재 프레임(200)의 길이의 비에 기반하여 수행된다. 예컨대, 하위 프레임(430) 및 현재 프레임(200)의 길이의 비율이 1:2라면, 기저 블록(440)의 텍스처 정보는 2배로 업샘플링된다.
업샘플링을 위한 업샘플링 필터(filter)로, 쌍일차식 필터(bilinear filter) 등이 사용될 수 있다.
전술된 제1 영역(410) 및 제2 영역(420)을 합함으로써 템플릿(400)이 생성된다.
도 5는 본 발명의 일 예에 따른 템플릿 매칭에 사용되는 복호화된 이전 프레임을 도시한다.
이전 프레임(300) 및 검색 영역(310)은 도 3을 참조하여 전술된 것과 같다. 중복되는 설명은 생략한다.
현재 프레임(200)의 템플릿(400)은 움직임 추정을 통해 현재 블록(220)에 대한 최적의 예측 신호를 찾기 위해 사용된다. 본 실시예의 템플릿(400)은 제1 영역(410) 및 제2 영역(420)을 포함한다.
움직임 추정을 통해 최적 위치(520)가 결정되면, 최적 위치(520)에 따라 예측 블록(540)이 결정될 수 있다. 본 실시예에서, 템플릿(400)은 현재 블록(220)에 대응하는 제2 영역(420)을 포함한다. 따라서, 최적 위치(520)의 영역은 예측 블록(540)의 영역을 포함한다.
최적 위치(520) 및 예측 블록(540)의 위치 관계는 템플릿(400) 및 현재 블록(420)의 위치 관계와 같다.
움직임 추정을 통한 최적 위치(520)는 하기의 수학식 2에 의해 결정될 수 있다.
vy, vx는 움직임 백터를 나타낸다. R은 참조 프레임(즉, 이전 프레임)의 픽셀(pixel) 정보이고, T는 템플릿(400)의 제1 영역(410)의 픽셀 정보이다. R T 는 제1 영역(410)을 나타낸다.
수학식 1과는 달리, 수학식 2의 수식은 하위 레이어의 업샘플링된 정보, 죽 제2 영역(420)이 계산을 위해 사용된다. UB(Upsampled Base Block)는 템플릿(400)의 제2 영역(420)의 픽셀 정보이다. R UB 는 제2 영역(420)을 나타낸다.
수학식 2에서 나타난 것처럼, NSAD에 의해 계산되는 차이 값은 이전 프레임(300)의 제1 영역(410)에 대응하는 제1 부분(530) 및 이전 프레임(300)의 제2 영역(420)에 대응하는 제2 부분(540) 각각에 대하여 별개로 계산될 수 있다. 따라서, 각각의 부분에 대하여 상이한 계산 방식이 적용되는 것이 가능하다.
또한, 제1 영역(410) 및 제1 부분(530) 간의 차이 값인 제1 차이 값과, 제2 영역(420) 및 제2 부분(540) 간의 차이 값인 제2 차이 값에 대해 서로 상이한 가중치를 부가하는 것이 가능하다.
수학식 2의 w는 이러한 가중치를 부가하기 위한 것이다. 예컨대 w가 0.25이면, 제1 차이 값 및 제2 차이 값은 1:3의 비율로 전체 차이 값의 계산에 사용된다.
w = 1인 경우, 수학식 1에서와 같은 방법으로 NSAD가 계산되며, w = 0이면, 제2 영역(420), 즉 업샘플링된 블록(420)만 사용되어 움직임이 예측된다. 따라서, w의 값을 조절함으로써 원래의 템플릿(410)의 중요도 및 업샘플링된 블록(420)의 중요도 간의 비율이 조절된다. 즉, 현재 블록(220)의 이웃 블록의 중요도 및 현재 블록(220)의 하위 레이어 신호의 중요도가 상대적으로 조절될 수 있다.
w의 값은 복호화 과정 중 변할 수 있으며, w의 값은 비트 스트림이 압축될 때 신텍스 정보(syntax)로서 포함될 수 있다.
n은 어떠한 방식으로 차이 값을 계산할지를 결정할 수 있다. 수학식 2에서, n이 1이면 SAD에 의해 차이 값이 계산되고, n이 2이면 SSD(Sum of Squared Difference)에 의해 차이 값이 계산된다. n의 값은 비트 스트림이 압축될 때 신텍스 정보로서 포함될 수 있다.
수학식 2을 사용함으로써, R T 와 R UB 를 포함하는 템플릿(400) 영역 및 이전 프레임(300)의 상기 템플릿(400)에 대응하는 부분(550)에서 특정 움직임 벡터만큼 이동한 영역 간의 NSAD가 계산될 수 있으며, 정해진 검색 영역(310) 내에서 최소의 NSAD 값을 갖게 하는 움직임 벡터 (vy, vx)(560)가 계산될 수 있다.
움직임 벡터(560)는 하위 레이어에서 추출된 정보를 사용하였기 때문에 도 3을 참조하여 전술된 움직임 벡터(350)에 비해 정확도가 향상된 것일 수 있다. 따라서, 움직임 벡터(560)에 기반한 압축 효율이 향상될 수 있다.
도 6은 본 발명의 일 실시예에 따른 영상 스트림 복호화 절차 흐름도이다.
우선, 단계(610 내지 618)에서, 현재 블록(220)에 인접한 복호화된 영역(230) 및 기저 블록(440)에 기반하여 템플릿(400)이 생성된다. 상기 템플릿(400)은 상위 레이어 및 하위 레이어를 포함하는 영상 스트림의 부호화 또는 복호화를 위한 템플릿일 수 있다.
단계(S610)에서, 현재 프레임(200)에서 현재 블록(220)이 선택된다.
단계(S612)에서, 현재 블록(220)에 인접한 복호화된 영역인 제1 영역(410)이 선택된다.
단계(S614)에서, 하위 프레임(430)에서 현재 블록(220)에 대응하는 영역, 즉 기저 블록(440)이 선택된다.
기저 블록(440)은 상위 레이어의 프레임(200) 및 하위 레이어의 프레임(430) 간의 크기 비율에 의하여 결정될 수 있다.
단계(S616)에서, 선택된 기저 블록(440)을 업샘플링하여 업샘플링된 기저 블록(420), 즉 제2 영역(420)이 생성된다.
단계(S618)에서 제1 영역(410) 및 제2 영역(420)을 합함으로써 템플릿(400)이 구성된다.
다음, 단계(S620 내지 S630)에서, 템플릿(400)을 사용한 움직임 추정에 의해 상위 레이어의 복호화된 이전 프레임(300)에서 예측 블록(540)이 결정된다.
단계(S620)에서, 이전 프레임(300) 내의 부분 영역(520) 및 템플릿(400) 간의 차이를 최소화하는 움직임 벡터(560)가 계산된다. 상기 움직임 벡터(560)를 계산하는 구체적인 방법이 도 1 내지 도 5, 그리고 수학식 1 및 수학식 2를 참조하여 전술되었다.
상기 차이는 전술된 수학식 1의 SAD 값 또는 수학식 2의 NSAD 값일 수 있다. 상기 차이는 도 5를 참조하여 전술된 제1 차이 값 및 제2 차이 값 각각에 대해 가중치가 부가된 것의 합일 수 있다.
상기 부분 영역은 현재 블록(220)의 위치에 움직임 벡터(560)를 더한 위치의 영역이다. 상기 부분 영역은 상기 이전 프레임의 검색 영역 내에 있는 영역일 수 있다.
단계(S630)에서, 현재 블록(220)의 위치 및 상기 계산된 움직임 벡터(560)에 기반하여 예측 블록(540)이 결정된다.
다음, 단계(S640)에서, 예측 블록(540)에 기반하여 현재 블록(220)이 복호화된다.
앞서 도 1 내지 도 5를 참조하여 설명된 본 발명의 일 실시예에 따른 기술 적 내용들이 본 실시예에도 그대로 적용될 수 있다. 따라서 보다 상세한 설명은 이하 생략하기로 한다.
도 7은 본 발명의 일 실시예에 따른 영상 처리 장치의 구조도이다.
영상 처리 장치(700)은 수신부(710), 저장부(720) 및 복호부(730)를 포함한다.
수신부(710)는 상위 레이어 및 하위 레이어를 포함하는 영상 스트림을 수신한다.
저장부(720)는 상위 레이어의 복호화된 프레임 및 하위 레이어의 복호화된 프레임을 저장한다.
복호부(730)는 상위 레이어의 현재 프레임을 복호화한다. 복호부(730)는 상위 레이어의 프레임 및 하위 레이어의 프레임을 복호화할 수 있다.
복호부(730)은 템플릿(400)을 생성한다. 즉, 복호부(720)는 저장부(720)로부터 복호화의 대상이 되는 현재 블록(220)의 인접 영역(230)에 대한 제1 정보 및 하위 레이어의 현재 블록(220)에 대응하는 영역(440)에 대한 제2 정보를 제공받아, 제1 정보 및 제2 정보에 기반하여 템플릿(400)을 생성한다.
제2 정보는 하위 레이어의 현재 블록(220)에 대응하는 영역(440)의 텍스처 정보를 업샘플링함으로써 생성되는 업샘플링된 기저 블록(420)에 대한 정보일 수 있다.
복호부(730)는 생성된 템플릿(400)을 사용하여 상위 레이어의 이전 프레임(300)의 부분 영역 중 템플릿(400)과의 차이가 최소인 예측 블록(540)을 결정할 수 있고, 예측 블록(540)에 기반하여 현재 블록(220)을 복호화할 수 있다.
복호부(740)는 도 5 및 도 6을 참조하여 전술된 제1 차이 값 및 제2 차이 값을 계산할 수 있으며, 제1 차이 값 및 상기 제2 차이 값을 가중치를 부가하여 합함으로써 상기 차이를 계산할 수 있다.
복호부(740)는 영상 스트림에 포함된 차이를 계산하는 방법에 대한 제어 정보 및 가중치 정보에 기반하여 상기 차이를 계산할 수 있다. 차이를 계산하는 방법은 SAD 및 SSD를 포함할 수 있다.
앞서 도 1 내지 도 6을 참조하여 설명된 본 발명의 일 실시예에 따른 기술 적 내용들이 본 실시예에도 그대로 적용될 수 있다. 따라서 보다 상세한 설명은 이하 생략하기로 한다.
본 발명의 일 실시예에 따른 방법은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체에 기록되는 프로그램 명령은 본 발명을 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다. 상기된 하드웨어 장치는 본 발명의 동작을 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.
이상과 같이 본 발명은 비록 한정된 실시예와 도면에 의해 설명되었으나, 본 발명은 상기의 실시예에 한정되는 것은 아니며, 본 발명이 속하는 분야에서 통상의 지식을 가진 자라면 이러한 기재로부터 다양한 수정 및 변형이 가능하다.
그러므로, 본 발명의 범위는 설명된 실시예에 국한되어 정해져서는 아니 되며, 후술하는 특허청구범위뿐 아니라 이 특허청구범위와 균등한 것들에 의해 정해져야 한다.
700: 영상 처리 장치
710: 수신부
720: 복호화부
730: 저장부
710: 수신부
720: 복호화부
730: 저장부
Claims (15)
- 상위 레이어 및 하위 레이어를 포함하는 영상 스트림의 복호화에 있어서,
상위 레이어의 복호화 중인 현재 프레임에서 복호화의 대상이 되는 현재 블록을 선택하는 단계;
상기 현재 블록에 인접한 복호화된 영역 및 상기 하위 레이어의 현재 블록에 대응하는 영역에 기반하여 템플릿을 생성하는 단계;
상기 템플릿을 사용한 움직임 추정에 의해 상기 상위 레이어의 복호화된 이전 프레임에서 예측 블록을 결정하는 단계; 및
상기 예측 블록에 기반하여 상기 현재 블록을 복호화하는 단계
를 포함하는, 영상 스트림 복호화 방법. - 제1항에 있어서,
상기 현재 블록에 인접한 복호화된 영역 및 상기 하위 레이어의 현재 블록에 대응하는 영역에 기반하여 템플릿울 생성하는 단계는,
상기 하위 레이어의 현재 블록에 대응하는 영역의 텍스처 정보를 업샘플링하여 업샘플링된 기저 블록을 생성하는 단계; 및
상기 현재 블록에 인접한 복호화된 영역 및 상기 업샘플링된 기저 블록을 합한 상기 템플릿을 생성하는 단계
를 포함하는 영상 스트림 복호화 방법. - 제1항에 있어서,
상기 템플릿을 사용한 움직임 추정에 의해 상기 상위 레이어의 복호화된 이전 프레임에서 예측 블록을 결정하는 단계는,
상기 이전 프레임 내의 부분 영역 및 상기 템플릿 간의 차이를 최소화하는 움직임 벡터를 계산하는 단계 - 상기 부분 영역은 상기 현재 블록의 위치에 상기 움직임 벡터를 더한 위치의 영역임 -; 및
상기 현재 블록의 위치 및 상기 계산된 움직임 벡터에 기반하여 상기 예측 블록을 결정하는 단계
를 포함하는, 영상 스트림 복호화 방법. - 제3항에 있어서,
상기 부분 영역은 상기 이전 프레임의 검색 영역 내에 있는 영역인, 영상 스트림 복호화 방법. - 제3항에 있어서,
상기 차이는 SAD(Sum of Absolute Difference) 또는 SSD(Sum of Squared Difference) 함수에 의해 계산되는, 영상 스트림 복호화 방법. - 제3항에 있어서,
상기 차이는,
제1 차이 및 제2 차이의 가중치가 부가된 합이고,
상기 제1 차이는 상기 부분 영역 및 상기 현재 블록에 인접한 복호화된 영역 간의 차이이고,
상기 제2 차이는 상기 부분 영역 및 상기 업샘플링된 기저 블록 간의 차이인, 영상 스트림 복호화 방법. - 상위 레이어 및 하위 레이어를 포함하는 영상 스트림을 수신하는 수신부;
상기 상위 레이어의 복호화된 프레임 및 상기 하위 레이어의 복호화된 프레임을 저장하는 저장부; 및
상기 상위 레이어의 현재 프레임을 복호화하는 복호부
를 포함하고, 상기 복호부는 상기 저장부로부터 복호화의 대상이 되는 현재 블록의 인접 영역에 대한 제1 정보 및 상기 하위 레이어의 상기 현재 블록에 대응하는 영역에 대한 제2 정보를 제공받아, 상기 제1 정보 및 상기 제2 정보에 기반하여 생성된 템플릿을 사용하여 상기 현재 블록을 복호화하는, 영상 처리 장치. - 제7항에 있어서,
상기 제2 정보는 상기 하위 레이어의 상기 현재 블록에 대응하는 영역의 텍스처 정보를 업샘플링함으로써 생성되는 업샘플링된 기저 블록에 대한 정보인, 영상 처리 장치. - 제7항에 있어서,
상기 하위 레이어의 상기 현재 블록에 대응하는 영역은 상기 상위 레이어의 프레임의 길이 및 상기 하위 레이어의 프레임의 길이 간의 비율에 의하여 결정되는, 영상 처리 장치. - 제7항에 있어서,
상기 복호부는 상기 상위 레이어의 이전 프레임의 부분 영역 중 상기 템플릿과의 차이가 최소인 예측 블록을 결정하고, 상기 예측 블록에 기반하여 상기 현재 블록을 복호화하는, 영상 처리 장치. - 제10항에 있어서,
상기 복호부는 상기 부분 영역 및 상기 현재 블록에 인접한 복호화된 영역 간의 제1 차이 값을 계산하고, 상기 부분 영역 및 상기 업샘플링된 기저 블록 간의 제2 차이 값을 계산하고, 상기 제1 차이 값 및 상기 제2 차이 값을 가중치를 부가하여 합함으로써 상기 차이를 계산하는, 영상 처리 장치. - 제10항에 있어서,
상기 영상 스트림은 상기 차이를 계산하는 방법에 대한 제어 정보를 포함하고,
상기 복호부는 상기 제어 정보에 기반하여 상기 차이를 계산하며,
상기 차이를 계산하는 방법은 SAD(Sum of Absolute Difference) 또는 SSD(Sum of Squared Difference) 함수 중 하나 이상을 포함하는, 영상 처리 장치. - 상위 레이어 및 하위 레이어를 포함하는 영상 스트림의 부호화 또는 복호화를 위한 템플릿을 구성하는 방법에 있어서,
부호화 또는 복호화의 대상인 현재 블록에 인접한 복호화된 영역인 제1 영역을 선택하는 단계;
하위 레이어의 상기 현재 블록에 대응하는 영역의 텍스처 정보를 업샘플링하여 제2 영역을 생성하는 단계; 및
상기 제1 영역 및 상기 제2 영역을 합하여 템플릿을 구성하는 단계
를 포함하는 템플릿 생성 방법. - 제13항에 있어서,
상기 하위 레이어의 상기 현재 블록에 대응하는 영역은 상기 상위 레이어의 프레임 및 상기 하위 레이어의 프레임 간의 크기 비율에 의하여 결정되는, 템플릿 생성 방법. - 제13항에 있어서,
상기 업샘플링은 쌍일차식 필터에 의해 업샘플링되는, 템플릿 생성 방법.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020100081381A KR101349405B1 (ko) | 2010-08-23 | 2010-08-23 | 스케일러블 비디오 코덱의 압축 효율 향상을 위한 템플릿 매칭 방법 및 장치 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020100081381A KR101349405B1 (ko) | 2010-08-23 | 2010-08-23 | 스케일러블 비디오 코덱의 압축 효율 향상을 위한 템플릿 매칭 방법 및 장치 |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20120018506A true KR20120018506A (ko) | 2012-03-05 |
KR101349405B1 KR101349405B1 (ko) | 2014-01-10 |
Family
ID=46127742
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020100081381A KR101349405B1 (ko) | 2010-08-23 | 2010-08-23 | 스케일러블 비디오 코덱의 압축 효율 향상을 위한 템플릿 매칭 방법 및 장치 |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR101349405B1 (ko) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2013137701A1 (ko) * | 2012-03-16 | 2013-09-19 | 한국전자통신연구원 | 다계층 영상을 위한 인트라 예측 방법 및 이를 이용하는 장치 |
WO2013169025A1 (ko) * | 2012-05-09 | 2013-11-14 | 엘지전자 주식회사 | 스케일러블 비디오 인코딩/디코딩 방법 및 장치 |
WO2014003519A1 (ko) * | 2012-06-29 | 2014-01-03 | 삼성전자 주식회사 | 스케일러블 비디오 부호화 방법 및 그 장치, 스케일러블 비디오 복호화 방법 및 장치 |
WO2014163461A1 (ko) * | 2013-04-05 | 2014-10-09 | 삼성전자 주식회사 | 비디오 부호화 방법 및 그 장치, 비디오 복호화 방법 및 그 장치 |
KR101466574B1 (ko) * | 2013-03-19 | 2014-12-02 | 삼성전자주식회사 | 스케일러블 비디오 부호화 방법 및 장치, 스케일러블 비디오 복호화 방법 및 장치 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101174901B1 (ko) * | 2005-11-28 | 2012-08-17 | 세종대학교산학협력단 | 다시점 영상에서 적응적 움직임 벡터 예측 장치 및 방법 |
KR20100066348A (ko) * | 2008-12-08 | 2010-06-17 | 한국전자통신연구원 | 스케일러블 비디오 데이터 부호화 방법 |
-
2010
- 2010-08-23 KR KR1020100081381A patent/KR101349405B1/ko not_active IP Right Cessation
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2013137701A1 (ko) * | 2012-03-16 | 2013-09-19 | 한국전자통신연구원 | 다계층 영상을 위한 인트라 예측 방법 및 이를 이용하는 장치 |
WO2013169025A1 (ko) * | 2012-05-09 | 2013-11-14 | 엘지전자 주식회사 | 스케일러블 비디오 인코딩/디코딩 방법 및 장치 |
WO2014003519A1 (ko) * | 2012-06-29 | 2014-01-03 | 삼성전자 주식회사 | 스케일러블 비디오 부호화 방법 및 그 장치, 스케일러블 비디오 복호화 방법 및 장치 |
KR101466574B1 (ko) * | 2013-03-19 | 2014-12-02 | 삼성전자주식회사 | 스케일러블 비디오 부호화 방법 및 장치, 스케일러블 비디오 복호화 방법 및 장치 |
WO2014163461A1 (ko) * | 2013-04-05 | 2014-10-09 | 삼성전자 주식회사 | 비디오 부호화 방법 및 그 장치, 비디오 복호화 방법 및 그 장치 |
US10728565B2 (en) | 2013-04-05 | 2020-07-28 | Samsung Electronics Co., Ltd. | Video encoding method and apparatus thereof and a video decoding method and apparatus thereof |
Also Published As
Publication number | Publication date |
---|---|
KR101349405B1 (ko) | 2014-01-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10110902B2 (en) | Method and apparatus for encoding/decoding motion vector | |
KR100888962B1 (ko) | 영상 신호의 인코딩 및 디코딩 방법 | |
KR101366242B1 (ko) | 움직임 모델 파라메터의 부호화, 복호화 방법 및 움직임모델 파라메터를 이용한 영상의 부호화, 복호화 방법 및장치 | |
US8254456B2 (en) | Method and apparatus for encoding video and method and apparatus for decoding video | |
RU2341035C1 (ru) | Способ кодирования и декодирования видеосигнала с использованием взвешенного предсказания и устройство для его осуществления | |
KR20190030867A (ko) | 360도 영상 부호화 장치 및 방법, 이를 수행하기 위한 기록 매체 | |
KR20080088040A (ko) | 영상의 부호화, 복호화 방법 및 장치 | |
US8731055B2 (en) | Method and apparatus for encoding and decoding an image based on plurality of reference pictures | |
CN115486068A (zh) | 用于视频编码中基于深度神经网络的帧间预测的方法和设备 | |
KR20120009648A (ko) | 깊이영상 부호화를 위한 율-왜곡 최적화 장치 및 방법 | |
KR101883265B1 (ko) | 패치 시프팅을 통해 벡터 양자화 에러를 감소시키기 위한 방법들 및 장치 | |
KR101349405B1 (ko) | 스케일러블 비디오 코덱의 압축 효율 향상을 위한 템플릿 매칭 방법 및 장치 | |
JP2016154395A (ja) | 以前ブロックの動きベクトルを現在ブロックの動きベクトルとして用いる映像符号化/復号化方法及び装置 | |
KR102163477B1 (ko) | 비디오 부호화 및 복호화 방법, 그를 이용한 장치 | |
JP2006324888A (ja) | 動画像符号化装置 | |
JP2019161410A (ja) | 画像符号化装置及びその制御方法及びプログラム | |
JP2013517733A (ja) | 以前ブロックの動きベクトルを現在ブロックの動きベクトルとして用いる映像符号化/復号化方法及び装置 |
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 | ||
FPAY | Annual fee payment |
Payment date: 20161228 Year of fee payment: 4 |
|
FPAY | Annual fee payment |
Payment date: 20171226 Year of fee payment: 5 |
|
LAPS | Lapse due to unpaid annual fee |