KR20190109293A - 영상 부호화/복호화 방법 및 장치 - Google Patents

영상 부호화/복호화 방법 및 장치 Download PDF

Info

Publication number
KR20190109293A
KR20190109293A KR1020190029514A KR20190029514A KR20190109293A KR 20190109293 A KR20190109293 A KR 20190109293A KR 1020190029514 A KR1020190029514 A KR 1020190029514A KR 20190029514 A KR20190029514 A KR 20190029514A KR 20190109293 A KR20190109293 A KR 20190109293A
Authority
KR
South Korea
Prior art keywords
wrp
padding
pixel
picture
reference picture
Prior art date
Application number
KR1020190029514A
Other languages
English (en)
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 US16/354,331 priority Critical patent/US20190313107A1/en
Publication of KR20190109293A publication Critical patent/KR20190109293A/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/132Sampling, masking or truncation of coding units, e.g. adaptive resampling, frame skipping, frame interpolation or high-frequency transform coefficient masking
    • 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/105Selection of the reference unit for prediction within a chosen coding or prediction mode, e.g. adaptive choice of position and number of pixels used for prediction
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/136Incoming video signal characteristics or properties
    • H04N19/14Coding unit complexity, e.g. amount of activity or edge presence estimation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/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/172Methods 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 picture, frame or field

Abstract

영상 부호화/복호화 방법 및 장치가 제공된다. 본 개시의 영상 복호화 방법은 움직임 정보를 수신하는 단계; 상기 움직임 정보를 이용하여 기하 변환 픽처(Warped Reference Picture, WRP)를 획득하는 단계; 및 상기 WRP 및 참조 픽처 중 적어도 하나의 경계 영역에 패딩을 수행하는 단계를 포함한다.

Description

영상 부호화/복호화 방법 및 장치{IMAGE ENCODING/DECODING METHOD AND APPARATUS}
본 발명은 영상 부호화/복호화 방법 및 장치 및 비트스트림을 저장한 기록 매체에 관한 것이다. 구체적으로 기하 변환 참조 픽처를 기반으로 하는 영상 부호화/복호화하는 방법 및 장치에 관한 것이다.
최근 UHD(Ultra High Definition) 해상도(3840x2160)를 가지는 방송 서비스가 국내뿐만 아니라 세계적으로 확대되면서, 이제 많은 사용자들이 초고해상도, 초고화질의 영상에 많이 익숙해지고 있으며 그에 발맞춰서 많은 기관에서는 차세대 영상기기에 대한 개발에 박차를 가하고 있다. 이러한 분위기 속에 동영상 전문 그룹인 MPEG(Moving Picture Experts Group)과 VCEG(Video Coding Experts Group)는 공동으로 JCT-VC(Joint Collaborative Team on Video Coding)을 결성하여 H.264/AVC 대비 2배의 압축 효율 성능을 보이는 차세대 동영상 코덱인 HEVC(High Efficiency Video Coding)/H.265의 표준화를 2010년에 완료하였다.
본 발명은 기하 변환 참조 픽처를 이용한 영상 부호화/복호화 방법 및 장치를 제공하는 것을 목적으로 한다.
또한, 본 발명은 참조 픽처의 경계 영역을 패딩함으로써 압축 효율이 향상된 영상 부호화/복호화 방법 및 장치를 제공하는 것을 목적으로 한다.
또한, 본 발명은 본 발명의 영상 부호화 방법 또는 장치에 의해 생성된 비트스트림을 저장한 기록 매체를 제공하는 것을 목적으로 한다.
본 발명에서 이루고자 하는 기술적 과제들은 이상에서 언급한 기술적 과제들로 제한되지 않으며, 언급하지 않은 또 다른 기술적 과제들은 아래의 기재로부터 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 명확하게 이해될 수 있을 것이다.
본 발명에 따르면, 움직임 정보를 수신하는 단계; 상기 움직임 정보를 이용하여 기하 변환 픽처(Warped Reference Picture, WRP)를 획득하는 단계; 및 상기 WRP 및 참조 픽처 중 적어도 하나의 경계 영역에 패딩을 수행하는 단계를 포함하는 영상 복호화 방법이 제공될 수 있다.
본 발명에 따른 영상 복호화 방법에 있어서, 상기 움직임 정보는 현재 픽처와 상기 참조 픽처간 전역 움직임 정보를 포함할 수 있다.
본 발명에 따른 영상 복호화 방법에 있어서, 상기 기하 변환 픽처를 획득하는 단계는, 상기 전역 움직임 정보 및 상기 참조 픽처를 이용하여 WRP를 획득하는 단계를 포함할 수 있다.
본 발명에 따른 영상 복호화 방법에 있어서, 상기 경계 영역에 패딩을 수행하는 단계는, 고정값을 사용하여 상기 경계 영역을 패딩하는 단계를 포함할 수 있다.
본 발명에 따른 영상 복호화 방법에 있어서, 상기 고정값은 사용가능한 모든 화소값, 기정의된 화소값 및 화소값이 가질 수 있는 범위 중 적어도 하나를 이용함으로써 획득될 수 있다.
본 발명에 따른 영상 복호화 방법에 있어서, 상기 경계 영역에 패딩을 수행하는 단계는, 일반 참조 픽처, WRP, 현재 부호화 대상 픽처 중 적어도 하나의 픽처를 이용하여 패딩을 수행하는 단계를 포함할 수 있다.
본 발명에 따른 영상 복호화 방법에 있어서, 상기 적어도 하나의 픽처를 이용하여 패딩을 수행하는 단계는, 상기 경계 영역의 화소와 인접한 화소, 소정의 영역 내의 화소, 참조 픽처 영역 중 적어도 하나를 이용하여 패딩을 수행하는 단계를 포함할 수 있다.
본 발명에 따른 영상 복호화 방법에 있어서, 상기 패딩이 수행된 적어도 하나의 경계 영역의 화소값을 보정하는 단계를 더 포함할 수 있다.
본 발명에 따른 영상 복호화 방법에 있어서, 상기 보정하는 단계는, 블러링, 밝기 변화, 필터링 및 그라데이션 중 적어도 하나를 이용하여 보정하는 단계를 포함할 수 있다.
본 발명에 따른 영상 복호화 방법에 있어서, 상기 적어도 하나의 픽처를 이용하여 패딩을 수행하는 단계는, WRP 리스트에서 패딩 대상 화소에 대응되는 위치에 화소값을 갖는 WRP를 이용하여 패딩하는 단계를 포함할 수 있다.
또한, 본 발명에 따르면, 움직임 정보를 결정하는 단계; 상기 움직임 정보를 이용하여 기하 변환 픽처(Warped Reference Picture, WRP)를 획득하는 단계; 및 상기 WRP 및 참조 픽처 중 적어도 하나의 경계 영역에 패딩을 수행하는 단계를 포함할 수 있다.
본 발명에 따른 영상 부호화 방법에 있어서, 상기 움직임 정보는 현재 픽처와 상기 참조 픽처간 전역 움직임 정보를 포함할 수 있다.
본 발명에 따른 영상 부호화 방법에 있어서, 상기 기하 변환 픽처를 획득하는 단계는, 상기 전역 움직임 정보 및 상기 참조 픽처를 이용하여 WRP를 획득하는 단계를 포함할 수 있다.
본 발명에 따른 영상 부호화 방법에 있어서, 상기 경계 영역에 패딩을 수행하는 단계는, 고정값을 사용하여 상기 경계 영역을 패딩하는 단계를 포함할 수 있다.
본 발명에 따른 영상 부호화 방법에 있어서, 상기 고정값은 사용가능한 모든 화소값, 기정의된 화소값 및 화소값이 가질 수 있는 범위 중 적어도 하나를 이용함으로써 획득될 수 있다.
본 발명에 따른 영상 부호화 방법에 있어서, 상기 경계 영역에 패딩을 수행하는 단계는, 일반 참조 픽처, WRP, 현재 부호화 대상 픽처 중 적어도 하나의 픽처를 이용하여 패딩을 수행하는 단계를 포함할 수 있다.
본 발명에 따른 영상 부호화 방법에 있어서, 상기 적어도 하나의 픽처를 이용하여 패딩을 수행하는 단계는, 상기 경계 영역의 화소와 인접한 화소, 소정의 영역 내의 화소, 참조 픽처 영역 중 적어도 하나를 이용하여 패딩을 수행하는 단계를 포함할 수 있다.
본 발명에 따른 영상 부호화 방법에 있어서, 상기 패딩이 수행된 적어도 하나의 경계 영역의 화소값을 보정하는 단계를 더 포함할 수 있다.
본 발명에 따른 영상 부호화 방법에 있어서, 상기 보정하는 단계는, 블러링, 밝기 변화, 필터링 및 그라데이션 중 적어도 하나를 이용하여 보정하는 단계를 포함할 수 있다.
또한, 본 발명에 따른 컴퓨터 판독가능한 기록 매체는 본 발명에 따른 영상 부호화 방법 또는 장치에 의해 생성된 비트스트림을 저장할 수 있다.
본 발명에 따르면, 기하 변환 참조 픽처를 이용한 영상 부호화/복호화 방법 및 장치가 제공될 수 있다.
또한, 본 발명에 따르면, 참조 픽처의 경계 영역을 패딩함으로써 압축 효율이 향상된 영상 부호화/복호화 방법 및 장치가 제공될 수 있다.
또한, 본 발명에 따르면, 본 발명의 영상 부호화 방법 또는 장치에 의해 생성된 비트스트림을 저장한 기록 매체가 제공될 수 있다.
본 발명에서 얻을 수 있는 효과는 이상에서 언급한 효과들로 제한되지 않으며, 언급하지 않은 또 다른 효과들은 아래의 기재로부터 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 명확하게 이해될 수 있을 것이다.
도 1은 본 발명의 일 실시 예에 따른 영상 부호화 장치를 나타낸 블록도이다.
도 2는 본 발명의 일 실시 예에 따른 영상 복호화 장치를 나타낸 블록도이다.
도 3은 본 발명의 일 실시 예에 따른 HEVC/H.265 부호화기 시스템 구조를 나타내는 도면이다.
도 4a 내지 도 4d는 본 발명의 일 실시 예에 따른 카메라의 움직임에 따른 전역 움직임의 발생을 나타내는 도면이다.
도 5는 본 발명의 일 실시 예에 따른 기하 변환에 의한 영상 변환을 나타내는 도면이다.
도 6은 본 발명의 일 실시 예에 따른 기하 변환을 이용하는 동영상 코딩 과정을 나타내는 도면이다.
도 7은 본 발명의 일 실시 예에 따른 기하변환을 이용하는 동영상 코딩 장치의 구성을 나타내는 블록도이다.
도 8은 본 발명의 일 실시 예에 따른 화면 간 예측의 수행시 참조 영역과 가상 영역을 나타내는 도면이다.
도 9는 본 발명의 일 실시 예에 따른 WRP에서 코딩하려는 픽처의 원래 영역 안쪽에 화소값 정보가 존재하지 않는 영역이 발생하는 예시를 나타내는 도면이다.
도 10은 본 발명의 일 실시 예에 따른 경계 영역을 나타내는 도면이다.
도 11은 본 발명의 일 실시 예에 따른 경계 영역의 패딩 기법을 이용하는 부호화기/복호화기의 구성을 나타내는 블록도이다.
도 12는 본 발명의 일 실시 예에 따른 경계 영역의 패딩 기법을 이용하는 부호화기/복호화기의 동작을 나타내는 흐름도이다.
도 13은 본 발명의 일 실시 예에 따른 고정값을 비교하고 결정하는 과정을 포함하는 부호화기/복호화기의 동작을 나타내는 흐름도이다.
도 14는 본 발명의 일 실시 예에 따른 지정된 고정값을 사용하는 부호화기/복호화기의 동작을 나타내는 흐름도이다.
도 15는 본 발명의 일 실시 예에 따른 부호화기/복호화기에서 동일하게 사전 정의된 고정값을 사용하는 부호화기/복호화기의 동작을 나타내는 흐름도이다.
도 16은 본 발명의 일 실시 예에 따른 인접 화소를 사용한 경계 영역 패딩 과정을 나타내는 도면이다.
도 17은 본 발명의 일 실시 예에 따른 WRP 영역을 사용하는 경계 영역 패딩 과정을 나타내는 도면이다.
도 18은 본 발명의 일 실시 예에 따른 WRP 영역을 사용하는 경계 영역 패딩 과정을 나타내는 흐름도이다.
도 19는 본 발명의 일 실시 예에 따른 WRP와 일반 참조픽처간 경계 영역 패딩 과정을 나타내는 도면이다.
도 20은 본 발명의 일 실시 예에 따른 블러링 방법을 이용한 경계 영역 패딩 보정 과정을 나타내는 도면이다.
도 21은 본 발명의 일 실시 예에 따른 기하적인 형태를 고려한 블러링 방법을 나타내는 도면이다.
도 22는 본 발명의 일 실시 예에 따른 밝기 변화를 이용한 경계 영역 패딩 보정 방법을 나타내는 도면이다.
본 발명은 다양한 변경을 가할 수 있고 여러 가지 실시예를 가질 수 있는 바, 특정 실시예들을 도면에 예시하고 상세한 설명에 상세하게 설명하고자 한다. 그러나, 이는 본 발명을 특정한 실시 형태에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다. 각 도면을 설명하면서 유사한 참조부호를 유사한 구성요소에 대해 사용하였다.
제1, 제2 등의 용어는 다양한 구성요소들을 설명하는데 사용될 수 있지만, 상기 구성요소들은 상기 용어들에 의해 한정되어서는 안 된다. 상기 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 사용된다. 예를 들어, 본 발명의 권리 범위를 벗어나지 않으면서 제1 구성요소는 제2 구성요소로 명명될 수 있고, 유사하게 제2 구성요소도 제1 구성요소로 명명될 수 있다. 및/또는 이라는 용어는 복수의 관련된 기재된 항목들의 조합 또는 복수의 관련된 기재된 항목들 중의 어느 항목을 포함한다.
어떤 구성요소가 다른 구성요소에 "연결되어" 있다거나 "접속되어" 있다고 언급된 때에는, 그 다른 구성요소에 직접적으로 연결되어 있거나 또는 접속되어 있을 수도 있지만, 중간에 다른 구성요소가 존재할 수도 있다고 이해되어야할 것이다. 반면에, 어떤 구성요소가 다른 구성요소에 "직접 연결되어"있다거나 "직접 접속되어"있다고 언급된 때에는, 중간에 다른 구성요소가 존재하지 않는 것으로 이해되어야 할 것이다.
본 출원에서 사용한 용어는 단지 특정한 실시예를 설명하기 위해 사용된 것으로, 본 발명을 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 출원에서, "포함하다" 또는 "가지다" 등의 용어는 명세서상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.
이하, 첨부한 도면들을 참조하여, 본 발명의 실시예들을 상세하게 설명한다. 이하, 도면상의 동일한 구성요소에 대해서는 동일한 참조부호를 사용하고 동일한 구성요소에 대해서 중복된 설명은 생략한다.
도 1은 본 발명의 일실시예에 따른 영상 부호화 장치를 나타낸 블록도이다.
도 1을 참조하면, 영상 부호화 장치(100)는 영상 분할부(101), 화면 내 예측부(102), 화면 간 예측부(103), 감산부(104), 변환부(105), 양자화부(106), 엔트로피 부호화부(107), 역양자화부(108), 역변환부(109), 가산부(110), 필터부(111) 및 메모리(112)를 포함할 수 있다.
도 1에 나타난 각 구성부들은 영상 부호화 장치에서 서로 다른 특징적인 기능들을 나타내기 위해 독립적으로 도시한 것으로, 각 구성부들이 분리된 하드웨어나 하나의 소프트웨어 구성단위로 이루어짐을 의미하지 않는다. 즉, 각 구성부는 설명의 편의상 각각의 구성부로 나열하여 포함한 것으로 각 구성부 중 적어도 두 개의 구성부가 합쳐져 하나의 구성부로 이루어지거나, 하나의 구성부가 복수개의 구성부로 나뉘어져 기능을 수행할 수 있고 이러한 각 구성부의 통합된 실시예 및 분리된 실시예도 본 발명의 본질에서 벗어나지 않는 한 본 발명의 권리범위에 포함된다.
또한, 일부의 구성 요소는 본 발명에서 본질적인 기능을 수행하는 필수적인 구성 요소는 아니고 단지 성능을 향상시키기 위한 선택적 구성 요소일 수 있다. 본 발명은 단지 성능 향상을 위해 사용되는 구성 요소를 제외한 본 발명의 본질을 구현하는데 필수적인 구성부만을 포함하여 구현될 수 있고, 단지 성능 향상을 위해 사용되는 선택적 구성 요소를 제외한 필수 구성 요소만을 포함한 구조도 본 발명의 권리범위에 포함된다.
영상 분할부(100)는 입력된 영상을 적어도 하나의 블록으로 분할할 수 있다. 이 때, 입력된 영상은 픽처, 슬라이스, 타일, 세그먼트, 타일 그룹 등 다양한 형태와 크기를 가질 수 있다. 블록은 부호화 단위(CU), 예측 단위(PU) 또는 변환 단위(TU)를 의미할 수 있다. 상기 분할은 쿼드 트리(Quadtree), 바이너리 트리(Biniary tree) 및 3분할 트리(ternary tree) 중 적어도 하나에 기반하여 수행될 수 있다. 쿼드 트리는 상위 블록을 너비와 높이가 상위 블록의 절반인 하위 블록으로 사분할하는 방식이다. 바이너리 트리는 상위 블록을 너비 또는 높이 중 어느 하나가 상위 블록의 절반인 하위 블록으로 이분할하는 방식이다. 3분할 트리는 상위 블록을 3개의 하위 블록으로 분할하는 방식이다. 예컨대, 상기 3개의 하위 블록은 상기 상위 블록의 너비 또는 높이를 1:2:1의 비율로 분할함으로써 획득될 수 있다. 전술한 바이너리 트리 기반의 분할을 통해, 블록은 정방형뿐만 아니라 비정방형의 형태를 가질 수 있다. 블록은 먼저 쿼드 트리 분할될 수 있다. 쿼드 트리의 리프(leaf) 노드에 해당하는 블록은 분할되지 않거나, 바이너리 트리 분할 또는 3분할 트리 분할될 수 있다. 바이너리 트리 또는 3분할 트리의 리프 노드는 부호화, 예측 및/또는 변환의 단위가 될 수 있다.
예측부(102, 103)는 인터 예측을 수행하는 화면 간 예측부(103)와 인트라 예측을 수행하는 화면 내 예측부(102)를 포함할 수 있다. 예측 단위에 대해 인터 예측을 사용할 것인지 또는 인트라 예측을 수행할 것인지를 결정하고, 각 예측 방법에 따른 구체적인 정보(예컨대, 인트라 예측 모드, 모션 벡터, 참조 픽쳐 등)를 결정할 수 있다. 이때, 예측이 수행되는 처리 단위와 예측 방법 및 구체적인 내용이 정해지는 처리 단위는 다를 수 있다. 예컨대, 예측의 방법과 예측 모드 등은 예측 단위로 결정되고, 예측의 수행은 변환 단위로 수행될 수도 있다.
생성된 예측 블록과 원본 블록 사이의 잔차값(잔차 블록)은 변환부(105)로 입력될 수 있다. 또한, 예측을 위해 사용한 예측 모드 정보, 모션 벡터 정보 등은 잔차값과 함께 엔트로피 부호화부(107)에서 부호화되어 복호화기에 전달될 수 있다. 특정한 부호화 모드를 사용할 경우, 예측부(102, 103)를 통해 예측 블록을 생성하지 않고, 원본 블록을 그대로 부호화하여 복호화부에 전송하는 것도 가능하다.
화면 내 예측부(102)는 현재 픽쳐 내의 화소 정보인 현재 블록 주변의 참조 픽셀 정보를 기초로 예측 블록을 생성할 수 있다. 인트라 예측이 수행될 현재 블록의 주변 블록의 예측 모드가 인터 예측인 경우, 인터 예측이 적용된 주변 블록에 포함되는 참조 픽셀을, 인트라 예측이 적용된 주변의 다른 블록 내의 참조 픽셀로 대체될 수 있다. 즉, 참조 픽셀이 가용하지 않는 경우, 가용하지 않은 참조 픽셀 정보를, 가용한 참조 픽셀 중 적어도 하나의 참조 픽셀로 대체하여 사용할 수 있다. 인트라 예측을 위해, 복수의 참조 픽셀 라인이 이용 가능할 수 있다. 복수의 참조 픽셀 라인이 이용 가능한 경우, 어떤 참조 픽셀 라인을 참조할지에 관한 정보가 시그널링될 수 있다.
인트라 예측에서 예측 모드는 참조 픽셀 정보를 예측 방향에 따라 사용하는 방향성 예측 모드와 예측을 수행시 방향성 정보를 사용하지 않는 비방향성 모드를 가질 수 있다. 휘도 정보를 예측하기 위한 모드와 색차 정보를 예측하기 위한 모드가 상이할 수 있고, 색차 정보를 예측하기 위해 휘도 정보를 예측하기 위해 사용된 인트라 예측 모드 정보 또는 예측된 휘도 신호 정보를 활용할 수 있다.
화면 내 예측부(102)는 AIS(Adaptive Intra Smoothing) 필터, 참조 화소 보간부, DC 필터를 포함할 수 있다. AIS 필터는 현재 블록의 참조 화소에 필터링을 수행하는 필터로써 현재 예측 단위의 예측 모드, 크기, 형태 및/또는 참조 픽셀이 현재 블록에 바로 인접한 참조 픽셀 라인에 포함되는지의 여부에 따라 필터의 적용 여부를 적응적으로 결정할 수 있다. 현재 블록의 예측 모드가 AIS 필터링을 수행하지 않는 모드일 경우, AIS 필터는 적용되지 않을 수 있다.
화면 내 예측부(102)의 참조 화소 보간부는 예측 단위의 인트라 예측 모드가 참조 화소를 보간한 화소값을 기초로 인트라 예측을 수행하는 예측 단위일 경우, 참조 화소를 보간하여 분수 단위 위치의 참조 화소를 생성할 수 있다. 현재 예측 단위의 예측 모드가 참조 화소를 보간하지 않고 예측 블록을 생성하는 예측 모드일 경우 참조 화소는 보간되지 않을 수 있다. DC 필터는 현재 블록의 예측 모드가 DC 모드일 경우 필터링을 통해서 예측 블록을 생성할 수 있다.
인트라 예측에 의해 생성된 예측 블록에 대해서는, 추가적인 필터링이 수행될 수 있다. 상기 추가적인 필터링은 화면 내 예측 모드, 블록의 크기, 형태 및/또는 예측 블록 내 픽셀의 위치에 기초하여 수행될 수 있다.
화면 간 예측부(103)는, 메모리(112)에 저장된 기 복원된 참조영상과 움직임 정보를 이용하여 예측 블록을 생성한다. 움직임 정보는 예컨대 움직임 벡터, 참조픽처 인덱스, 리스트 1 예측 플래그, 리스트 0 예측 플래그 등을 포함할 수 있다.
예측부(102, 103)에서 생성된 예측 단위와 예측 단위의 원본 블록 간의 차이값인 잔차값(Residual) 정보를 포함하는 잔차 블록이 생성될 수 있다. 생성된 잔차 블록은 변환부(130)로 입력되어 변환될 수 있다.
화면 간 예측부(103)는 현재 픽쳐의 이전 픽쳐 또는 이후 픽쳐 중 적어도 하나의 픽쳐의 정보를 기초로 예측 블록을 유도할 수 있다. 또한, 현재 픽쳐 내의 부호화가 완료된 일부 영역의 정보를 기초로, 현재 블록의 예측 블록을 유도할 수도 있다. 본 발명의 일 실시 예에 따른 화면 간 예측부(103)는 참조 픽쳐 보간부, 움직임 예측부, 움직임 보상부를 포함할 수 있다.
참조 픽쳐 보간부에서는 메모리(112)로부터 참조 픽쳐 정보를 제공받고 참조 픽쳐에서 정수 화소 이하의 화소 정보를 생성할 수 있다. 휘도 화소의 경우, 1/4 화소 단위로 정수 화소 이하의 화소 정보를 생성하기 위해 필터 계수를 달리하는 DCT 기반의 8탭 보간 필터(DCT-based Interpolation Filter)가 사용될 수 있다. 색차 신호의 경우 1/8 화소 단위로 정수 화소 이하의 화소 정보를 생성하기 위해 필터 계수를 달리하는 DCT 기반의 4탭 보간 필터(DCT-based Interpolation Filter)가 사용될 수 있다.
움직임 예측부는 참조 픽쳐 보간부에 의해 보간된 참조 픽쳐를 기초로 모션 예측을 수행할 수 있다. 모션 벡터를 산출하기 위한 방법으로 FBMA(Full search-based Block Matching Algorithm), TSS(Three Step Search), NTS(New Three-Step Search Algorithm) 등 다양한 방법이 사용될 수 있다. 모션 벡터는 보간된 화소를 기초로 1/2 또는 1/4 화소 단위의 모션 벡터값을 가질 수 있다. 움직임 예측부에서는 움직임 예측 방법을 다르게 하여 현재 블록의 예측 블록을 예측할 수 있다. 모션 예측 방법으로 스킵(Skip) 방법, 머지(Merge) 방법, AMVP(Advanced Motion Vector Prediction) 방법 등 다양한 방법이 사용될 수 있다.
감산부(104)는, 현재 부호화하려는 블록과 화면 내 예측부(102) 혹은 화면 간 예측부(103)에서 생성된 예측 블록을 감산하여 현재 블록의 잔차 블록을 생성한다.
변환부(105)에서는 잔차 데이터를 포함한 잔차 블록을 DCT, DST, KLT(Karhunen Loeve Transform) 등과 같은 변환 방법을 사용하여 변환시킬 수 있다. 이때 변환 방법은 잔차 블록을 생성하기 위해 사용된 예측 단위의 예측 방법(인터 또는 인트라 예측), 인트라 예측 모드, 변환 단위의 크기 및/또는 형태에 기반하여 결정될 수 있다. 예를 들어, 인트라 예측 모드에 따라, 가로 방향으로는 DCT를 사용하고, 세로 방향으로는 DST를 사용할 수도 있다. 예를 들어, 변환 단위의 크기가 소정의 범위일 때, 변환 단위의 가로 및 세로 중 짧은 쪽 방향으로는 DST를 사용하고, 긴 쪽 방향으로는 DCT를 사용할 수 있다. 예컨대, DST는 DST-7을, DCT는 DCT-2일 수 있다.
양자화부(106)는 변환부(105)에서 주파수 영역으로 변환된 값들을 양자화할 수 있다. 블록에 따라 또는 영상의 중요도에 따라 양자화 계수는 변할 수 있다. 양자화부(106)에서 산출된 값은 역양자화부(108)와 엔트로피 부호화부(107)에 제공될 수 있다.
상기 변환부(105) 및/또는 양자화부(106)는, 영상 부호화 장치(100)에 선택적으로 포함될 수 있다. 즉, 영상 부호화 장치(100)는, 잔차 블록의 잔차 데이터에 대해 변환 또는 양자화 중 적어도 하나를 수행하거나, 변환 및 양자화를 모두 스킵하여 잔차 블록을 부호화할 수 있다. 영상 부호화 장치(100)에서 변환 또는 양자화 중 어느 하나가 수행되지 않거나, 변환 및 양자화 모두 수행되지 않더라도, 엔트로피 부호화부(107)의 입력으로 들어가는 블록을 통상적으로 변환 블록이라 일컫는다. 엔트로피 부호화부(107)는 입력 데이터를 엔트로피 부호화한다. 엔트로피 부호화는 예를 들어, 지수 골롬(Exponential Golomb), CAVLC(Context-Adaptive Variable Length Coding), CABAC(Context-Adaptive Binary Arithmetic Coding)과 같은 다양한 부호화 방법을 사용할 수 있다.
엔트로피 부호화부(107)는 변환 블록의 계수 정보, 블록 타입 정보, 예측 모드 정보, 분할 단위 정보, 예측 단위 정보, 전송 단위 정보, 모션 벡터 정보, 참조 프레임 정보, 블록의 보간 정보, 필터링 정보 등 다양한 정보를 부호화할 수 있다. 변환 블록의 계수들은, 변환 블록 내 서브 블록 단위로, 부호화될 수 있다. 여기서, 프레임은 픽처로 표현될 수 있다.
변환 블록의 계수의 부호화를 위하여, 역스캔 순서로 최초의 0이 아닌 계수의 위치를 알리는 신택스 요소(syntax element)인 Last_sig, 서브블록 내에 0이 아닌 계수가 적어도 하나 이상 있는지를 알리는 플래그인 Coded_sub_blk_flag, 0이 아닌 계수인지를 알리는 플래그인 Sig_coeff_flag, 계수의 절대값이 1 보다 큰지를 알리는 플래그인 Abs_greater1_flag, 계수의 절대값이 2 보다 큰지를 알리는 플래그인 Abs_greater2_flag, 계수의 부호를 나타내는 플래그인 Sign_flag 등의 다양한 신택스 요소들이 부호화될 수 있다. 상기 신택스 요소들만으로 부호화되지 않는 계수의 잔여값은 신택스 요소 remaining_coeff를 통해 부호화될 수 있다.
역양자화부(108) 및 역변환부(109)에서는 양자화부(106)에서 양자화된 값들을 역양자화하고 변환부(105)에서 변환된 값들을 역변환한다. 역양자화부(108) 및 역변환부(109)에서 생성된 잔차값(Residual)은 예측부(102, 103)에 포함된 움직임 추정부, 움직임 보상부 및 화면 내 예측부(102)를 통해서 예측된 예측 단위와 합쳐져 복원 블록(Reconstructed Block)을 생성할 수 있다. 가산부(110)는, 예측부(102, 103)에서 생성된 예측 블록과, 역 변환부(109)를 통해 생성된 잔차 블록을 가산하여 복원 블록을 생성한다.
필터부(111)는 디블록킹 필터, 오프셋 보정부, ALF(Adaptive Loop Filter)중 적어도 하나를 포함할 수 있다.
디블록킹 필터는 복원된 픽쳐에서 블록간의 경계로 인해 생긴 블록 왜곡을 제거할 수 있다. 디블록킹을 수행할지 여부를 판단하기 위해 블록에 포함된 몇 개의 열 또는 행에 포함된 픽셀을 기초로 현재 블록에 디블록킹 필터 적용할지 여부를 판단할 수 있다. 블록에 디블록킹 필터를 적용하는 경우 필요한 디블록킹 필터링 강도에 따라 강한 필터(Strong Filter) 또는 약한 필터(Weak Filter)를 적용할 수 있다. 또한 디블록킹 필터를 적용함에 있어 수직 필터링 및 수평 필터링 수행시 수평 방향 필터링 및 수직 방향 필터링이 병행 처리되도록 할 수 있다.
오프셋 보정부는 디블록킹을 수행한 영상에 대해 픽셀 단위로 원본 영상과의 오프셋을 보정할 수 있다. 특정 픽쳐에 대한 오프셋 보정을 수행하기 위해 영상에 포함된 픽셀을 일정한 수의 영역으로 구분한 후 오프셋을 수행할 영역을 결정하고 해당 영역에 오프셋을 적용하는 방법 또는 각 픽셀의 에지 정보를 고려하여 오프셋을 적용하는 방법을 사용할 수 있다.
ALF(Adaptive Loop Filtering)는 필터링한 복원 영상과 원래의 영상을 비교한 값을 기초로 수행될 수 있다. 영상에 포함된 픽셀을 소정의 그룹으로 나눈 후 해당 그룹에 적용될 하나의 필터를 결정하여 그룹마다 차별적으로 필터링을 수행할 수 있다. ALF를 적용할지 여부에 관련된 정보는 휘도 신호는 부호화 단위(Coding Unit, CU) 별로 전송될 수 있고, 각각의 블록에 따라 적용될 ALF 필터의 모양 및 필터 계수는 달라질 수 있다. 또한, 적용 대상 블록의 특성에 상관없이 동일한 형태(고정된 형태)의 ALF 필터가 적용될 수도 있다.
메모리(112)는 필터부(111)를 통해 산출된 복원 블록 또는 픽쳐를 저장할 수 있고, 저장된 복원 블록 또는 픽쳐는 화면 간 예측을 수행할 때 예측부(102, 103)에 제공될 수 있다.
다음으로, 본 발명의 일 실시 예에 따른 영상 복호화 장치를 도면을 참조하여 설명한다. 도 2는 본 발명의 일 실시 예에 따른 영상 복호화 장치(200)를 나타낸 블록도이다.
도 2를 참조하면, 영상 복호화 장치(200)는 엔트로피 복호화부(201), 역양자화부(202), 역변환부(203), 가산부(204), 필터부(205), 메모리(206) 및 예측부(207, 208)를 포함할 수 있다.
영상 부호화 장치(100)에 의해 생성된 영상 비트스트림이 영상 복호화 장치(200)로 입력되는 경우, 입력된 비트스트림은 영상 부호화 장치(100)에서 수행된 과정과 반대의 과정에 따라 복호될 수 있다.
엔트로피 복호화부(201)는 영상 부호화 장치(100)의 엔트로피 부호화부(107)에서 엔트로피 부호화를 수행한 것과 반대의 절차로 엔트로피 복호화를 수행할 수 있다. 예를 들어, 영상 부호화기에서 수행된 방법에 대응하여 지수 골롬(Exponential Golomb), CAVLC(Context-Adaptive Variable Length Coding), CABAC(Context-Adaptive Binary Arithmetic Coding)과 같은 다양한 방법이 적용될 수 있다. 엔트로피 복호화부(201)는, 전술한 바와 같은 신택스 요소들, 즉 Last_sig, Coded_sub_blk_flag, Sig_coeff_flag, Abs_greater1_flag, Abs_greater2_flag, Sign_flag 및 remaining_coeff를 복호화할 수 있다. 또한, 엔트로피 복호화부(201)는 영상 부호화 장치(100)에서 수행된 인트라 예측 및 인터 예측에 관련된 정보를 복호화할 수 있다.
역 양자화부(202)는 양자화된 변환 블록에 역 양자화를 수행하여 변환 블록을 생성한다. 도 1의 역 양자화부(108)와 실질적으로 동일하게 동작한다.
역 변환부(203)는 변환 블록에 역 변환을 수행하여 잔차 블록을 생성한다. 이때, 변환 방법은 예측 방법(인터 또는 인트라 예측), 블록의 크기 및/또는 형태, 인트라 예측 모드 등에 관한 정보를 기반으로 결정될 수 있다. 도 1의 역 변환부(109)와 실질적으로 동일하게 동작한다.
가산부(204)는, 화면 내 예측부(207) 혹은 화면 간 예측부(208)에서 생성된 예측 블록과 역 변환부(203)를 통해 생성된 잔차 블록를 가산하여 복원 블록을 생성한다. 도 1의 가산부(110)와 실질적으로 동일하게 동작한다.
필터부(205)는, 복원된 블록들에 발생하는 여러 종류의 노이즈를 감소시킨다.
필터부(205)는 디블록킹 필터, 오프셋 보정부, ALF를 포함할 수 있다.
영상 부호화 장치(100)로부터 해당 블록 또는 픽쳐에 디블록킹 필터를 적용하였는지 여부에 대한 정보 및 디블록킹 필터를 적용하였을 경우, 강한 필터를 적용하였는지 또는 약한 필터를 적용하였는지에 대한 정보를 제공받을 수 있다. 영상 복호화 장치(200)의 디블록킹 필터에서는 영상 부호화 장치(100)에서 제공된 디블록킹 필터 관련 정보를 제공받고 영상 복호화 장치(200)에서 해당 블록에 대한 디블록킹 필터링을 수행할 수 있다.
오프셋 보정부는 부호화시 영상에 적용된 오프셋 보정의 종류 및 오프셋 값 정보 등을 기초로 복원된 영상에 오프셋 보정을 수행할 수 있다.
ALF는 영상 부호화 장치(100)로부터 제공된 ALF 적용 여부 정보, ALF 계수 정보 등을 기초로 부호화 단위에 적용될 수 있다. 이러한 ALF 정보는 특정한 파라미터 셋에 포함되어 제공될 수 있다. 필터부(205)는 도 1의 필터부(111)와 실질적으로 동일하게 동작한다.
메모리(206)는 가산부(204)에 의해 생성된 복원 블록을 저장한다. 도 1의 메모리(112)와 실질적으로 동일하게 동작한다.
예측부(207, 208)는 엔트로피 복호화부(201)에서 제공된 예측 블록 생성 관련 정보와 메모리(206)에서 제공된 이전에 복호화된 블록 또는 픽쳐 정보를 기초로 예측 블록을 생성할 수 있다.
예측부(207, 208)는 화면 내 예측부(207) 및 화면 간 예측부(208)를 포함할 수 있다. 별도로 도시되지는 아니하였으나, 예측부(207, 208)는 예측 단위 판별부를 더 포함할 수 있다. 예측 단위 판별부는 엔트로피 복호화부(201)에서 입력되는 예측 단위 정보, 인트라 예측 방법의 예측 모드 정보, 인터 예측 방법의 모션 예측 관련 정보 등 다양한 정보를 입력 받고 현재 부호화 단위에서 예측 단위를 구분하고, 예측 단위가 인터 예측을 수행하는지 아니면 인트라 예측을 수행하는지 여부를 판별할 수 있다. 화면 간 예측부(208)는 영상 부호화 장치(100)에서 제공된 현재 예측 단위의 인터 예측에 필요한 정보를 이용해 현재 예측 단위가 포함된 현재 픽쳐의 이전 픽쳐 또는 이후 픽쳐 중 적어도 하나의 픽쳐에 포함된 정보를 기초로 현재 예측 단위에 대한 화면 간 예측을 수행할 수 있다. 또는, 현재 예측 단위가 포함된 현재 픽쳐 내에서 기-복원된 일부 영역의 정보를 기초로 화면 간 예측을 수행할 수도 있다.
화면 간 예측을 수행하기 위해 부호화 단위를 기준으로 해당 부호화 단위에 포함된 예측 단위의 모션 예측 방법이 스킵 모드(Skip Mode), 머지 모드(Merge 모드), AMVP 모드(AMVP Mode) 중 어떠한 방법인지 여부를 판단할 수 있다.
화면 내 예측부(207)는, 현재 부호화하려는 블록 주변에 위치한, 그리고 기 복원된 화소들을 이용하여 예측 블록을 생성한다. 복수의 참조 픽셀 라인이 이용 가능한 경우, 영상 부호화 장치(100)에서 제공된 정보에 기초하여, 어떤 참조 픽셀 라인을 참조할지 식별할 수 있다.
화면 내 예측부(207)는 AIS(Adaptive Intra Smoothing) 필터, 참조 화소 보간부, DC 필터를 포함할 수 있다. AIS 필터는 현재 블록의 참조 화소에 필터링을 수행하는 필터로써 현재 예측 단위의 예측 모드, 크기, 형태 및/또는 참조 화소가 현재 블록에 인접한 참조 화소 라인에 포함되는지의 여부에 따라 필터의 적용 여부를 적응적으로 결정할 수 있다. 영상 부호화 장치(100)에서 제공된 예측 단위의 예측 모드 및 AIS 필터 정보를 이용하여 현재 블록의 참조 화소에 AIS 필터링을 수행할 수 있다. 현재 블록의 예측 모드가 AIS 필터링을 수행하지 않는 모드일 경우, AIS 필터는 적용되지 않을 수 있다.
화면 내 예측부(207)의 참조 화소 보간부는 예측 단위의 예측 모드가 참조 화소를 보간한 화소값을 기초로 인트라 예측을 수행하는 예측 단위일 경우, 참조 화소를 보간하여 분수 단위 위치의 참조 화소를 생성할 수 있다. 생성된 분수 단위 위치의 참조 화소가 현재 블록 내의 화소의 예측 화소로 이용될 수 있다. 현재 예측 단위의 예측 모드가 참조 화소를 보간하지 않고 예측 블록을 생성하는 예측 모드일 경우 참조 화소는 보간되지 않을 수 있다. DC 필터는 현재 블록의 예측 모드가 DC 모드일 경우 필터링을 통해서 예측 블록을 생성할 수 있다.
인트라 예측에 의해 생성된 예측 블록에 대해 추가적인 필터링이 수행될 수 있음은 전술한 바와 같다.
화면 내 예측부(207)는 도 1의 화면 내 예측부(102)와 실질적으로 동일하게 동작한다.
화면 간 예측부(208)는, 메모리(206)에 저장된 참조 픽처, 움직임 정보를 이용하여 화면 간 예측 블록을 생성한다. 화면 간 예측부(208)는 도 1의 화면 간 예측부(103)와 실질적으로 동일하게 동작한다.
이하, 본 발명의 다양한 실시예들을 도면들을 참조하면서 보다 상세하게 설명한다.
종래 기술에서는 화면 내 또는 화면 간 중복성을 제거하여 영상의 코딩효율을 향상시키는 방법을 사용한다. 화면 내 또는 화면 간 중복성을 제거하기 위해서 유사성을 지닌 정보를 통한 예측이 사용된다. 화면 간 예측의 경우, 현재 영상과 참조 픽처 간의 유사도가 높다는 점을 활용한다. 참조 픽처란, 현재 영상 이전에 부호화가 완료된 후 다시 복호화하여 복원한 영상을 의미한다. 화면 간 예측을 통하여 참조 픽처로부터 현재 영상의 화소값 및 움직임 벡터, 참조 픽처 번호 등의 부호화 모드들에 대한 정보를 예측함으로써, 화소값 및 부호화 모드들에 대하여, 부호화 또는 복호화를 수행하는 현재 프레임과 참조 픽처 간의 차이값만을 부호화 할 수 있다. 이때, 예측에 사용되는 참조 정보와 현재 복호화되는 영역의 영상 정보값의 차이가 적을수록 예측 정확도가 높아 코딩효율이 높아질 수 있다.
부호화 모드 중, 가장 많은 비율을 차지하는 것이 움직임 정보이다. 움직임 정보는 움직임 벡터, 참조영상의 번호, 참조방향 등의 정보를 포함하고 있으며, 예측 유닛(Prediction Unit: PU, 이하 ‘PU’라 함) 단위로 전송될 수 있다.
영상은 일반적으로 화면 내 중복성이 많은 정보를 지니며 동영상의 경우 화면 간 중복성 또한 많이 지니는 특성을 갖는다. 따라서, 영상의 정보들을 서로 구분이 가능한 어떠한 심볼로 표현한다고 하면 심볼의 발생 빈도는 편향되게 나타난다. 이러한 특성을 활용한 동영상 코딩의 기법으로 엔트로피 코딩이 사용된다. 엔트로피 코딩은 정보 심볼의 발생 빈도를 고려한 부호화 방법으로서 발생 빈도가 높은 심볼은 작은 크기의 부호로 표현하고, 발생 빈도가 작은 심볼은 큰 크기의 부호로 표현하는 것으로 전체적인 코딩효율을 높이는 방법이다.
일반적으로 동영상은 동영상 속 시간의 흐름에 따라 전역적 움직임과 지역적 움직임을 가진다. 전역적 움직임이란 영상 전체가 동일한 경향성을 지니는 움직임을 의미한다. 전역적 움직임은 카메라 워크나 촬영 영역 전반이 가지는 공통된 움직임 등에 의해 나타날 수 있다.
도 4a 내지 도 4d는 본 발명의 일 실시 예에 따른 카메라의 움직임에 따른 전역 움직임의 발생을 나타내는 도면이다.
도 4a의 예와 같이, 평행이동에 의한 카메라 워크가 사용된 경우, 영상 속 대부분의 화상은 특정한 방향으로 평행적 움직임을 갖게 될 것이다. 또한, 도 4b의 예와 같이, 촬영하는 카메라를 회전시키는 카메라 워크가 사용된 경우, 영상 속 대부분의 화상은 특정한 방향으로 회전하는 움직임을 갖게 될 것이다. 또한, 도 4c의 예와 같이, 카메라를 전진시키는 카메라 워크가 사용된 경우, 영상 속 화상은 확대되는 형태의 움직임을 갖게 될 것이다. 또한, 도 4d의 예와 같이, 카메라를 후진시키는 카메라 워크가 사용된 경우, 영상 속 화상은 축소되는 형태의 움직임을 갖게 될 것이다.
한편, 지역적 움직임은 영상 속 전역적 움직임과 다른 움직임을 의미할 수 있다. 즉, 영상 속 화상은 전역적 움직임을 포함하면서 추가적인 움직임을 갖고 있을 수도 있으며, 또는 전역적 움직임과 완전히 별개의 움직임을 갖고 있을 수도 있다. 예컨대, 패닝 기법이 적용된 영상에서 영상 속 대부분의 물체가 왼쪽 방향으로 움직이고 있을 때, 반대 방향으로 움직이는 물체가 있다면 이 물체는 지역적 움직임을 가졌다고 할 수 있다.
상기 전역적 움직임을 반영하는 동영상 코딩 기법에는 영상의 변환을 이용한 코딩 기법이 존재한다. 영상 변환은 영상이 담고 있는 휘도 정보의 위치를 기하적인 움직임을 반영하여 변환시키는 것을 의미할 수 있다. 휘도 정보는 영상의 각 지점이 가지고 있는 밝기값과 색상, 채도 등을 의미하며 디지털 영상에서는 화소값을 의미할 수 있다. 기하적 변환은 영상 내 휘도 정보를 갖는 각 지점의 평행이동, 회전, 크기의 변화 등을 의미하며, 이는 전역적 움직임 정보를 표현하는데 이용될 수 있다. 도 5는 본 발명의 일 실시 예에 따른 기하 변환에 의한 영상 변환을 나타내는 도면으로서, 상기 평행이동, 회전, 크기의 변화 등의 기하적 변환이 반영될 수 있다.
영상 변환을 이용하는 동영상 코딩은 움직임 정보를 이용하는 화면 간 예측 기술에서 영상 변환을 통해 만들어진 추가적인 정보를 활용하는 동영상 코딩 방법이다. 추가적인 정보(또는 변환 정보)는 참조되는 영상 혹은 참조되는 영상의 일부 영역과 참조를 통해 예측을 수행하는 영상 또는 그 일부 영역간 예측을 보다 유리하게 수행할 수 있도록 하는 모든 종류의 정보를 의미하며, 예컨대 전역 움직임 백터(Global Motion Vector), 어파인 변환 행렬(Affine Transform Matrix), 투영변환 행렬(Projective Transform Matrix), 기하 변환 행렬(Warping Matrix) 등이 있을 수 있다. 또한, 변환 정보는 전역적 움직임 정보를 포함할 수 있다. 변환 정보를 활용함으로써 종례의 기술에 의할 때 코딩효율이 떨어지는 회전이나 확대, 축소 등을 포함하는 영상에 대한 코딩 효율을 증가시킬 수 있다. 영상의 평행 이동, 회전, 확대, 축소 등과 같은 기하적인 움직임을 고려하여 영상을 변환하는 것을 영상의 기하 변환이라고 한다. 기하 변환을 이용하는 동영상 부호화기는 현재 픽처와 참조하는 픽처간의 관계를 유추해 내며 이를 통해 참조 픽처를 현재 픽처에 가까운 형태로 변환시키는 변환 정보를 생성하여 추가적인 참조 픽처(기하 변환 참조 픽처)를 생성할 수 있다 또는, 현재 픽처를 참조 픽처에 가까운 형태로 변환시키는 변환 정보를 생성할 수 있다.
기하 변환을 이용하는 동영상 부호화기의 화면 간 예측 과정에서는 변환과정을 통해서 생성된 기하 변환 참조 픽처 및/또는 원래의 참조 픽처를 이용하여 최적의 코딩효율을 낼 수 있는 경우를 찾을 수 있다.
도 6은 본 발명의 일 실시 예에 따른 기하 변환을 이용하는 동영상 코딩 과정을 나타내는 도면이다.
부호화기는, 모든 참조 픽처와 변환 픽처에 대한 화면 간 예측을 수행할 수 있다. 이때, 참조 픽처는 기하 변환이 적용되지 않은 일반 참조 픽처를 의미한다. 또한, 변환 픽처는 기하 변환이 적용된 기하 변환 참조 픽처를 의미할 수 있다.
도 6 (a)의 예와 같이, 부호화기는 각 참조 픽처를 기하 변환을 통해 현재 픽처와 유사한 형태로 변환하여 변환 픽처를 생성할 수 있다. 생성된 변환 픽처에 대한 화면 간 예측과 참조 픽처에 대한 화면 간 예측을 각각 수행할 수 있다. 각 화면 간 예측 결과를 토대로 높은 코딩 효율을 낼 수 있는 최적의 예측 정보를 찾아 갱신할 수 있다. 모든 참조 픽처와 변환 픽처에 대한 화면 간 예측을 수행하고 나면 최종적으로 갱신된 최적의 예측 정보를 부호화하여 복호화기에 송신할 수 있다.
도 6 (b)의 예와 같이, 복호화기는 부호화기로부터 최적의 예측 정보를 수신하여 복호화하고, 이를 토대로 움직임 보정을 통한 화면 간 예측을 수행할 수 있다. 상기 최적 예측 정보는 부호화기에서 선택된 최적의 예측 효율을 갖는 경우를 복호화기에서 수행하기 위해 필요한 정보를 포함할 수 있다.
상기 최적 예측 정보는 화면 간 예측에 사용되는 참조 픽처가 어떤 참조 픽처 또는 변환 픽처인지 알 수 있는 정보를 포함할 수 있다. 또한, 상기 최적 예측 정보는 변환 정보를 포함할 수 있는데, 상기 변환 정보는 참조 픽처를 변환 픽처로 변환하기 위한 정보를 의미할 수 있다. 또한, 상기 최적 예측 정보는 움직임 보정을 위해 필요한 정보를 포함할 수 있다.
도 7은 본 발명의 일 실시 예에 따른 기하변환을 이용하는 동영상 코딩 장치의 구성을 나타내는 블록도이다.
변환영상 생성부(701)는 현재 입력영상 및/또는 복원영상 버퍼에 저장된 영상들을 이용하여 변환영상을 생성할 수 있다. 변환영상은 기하 변환 픽처를 의미하며, 변환영상 생성부(701)는 기하 변환 픽처를 생성할 수 있다. 입력영상은 현재 픽처를 의미하며, 복원영상은 일반 참조 픽처를 의미할 수 있다. 변환영상 예측부(702)는 생성된 변환영상을 변환영상 버퍼에 저장하여 관리할 수 있으며, 또한, 복원영상 버퍼에 저장되어 있는 복원영상과 변환영상 버퍼에 저정되어 있는 변환영상의 양쪽을 사용하여 화면 간 예측을 수행할 수 있다. 화면 간 예측 이외의 과정은 기존의 부호화/복호화 과정과 동일할 수 있다.
부호화 결과로써 움직임 정보와 선택된 참조 픽처에 대한 정보가 나올 수 있다. 상기 선택된 참조 픽처에 대한 정보는 여러 개의 참조 픽처들 중, 선택된 참조 픽처를 식별할 수 있도록 하는 인덱스값 및/또는 선택된 참조 픽처가 변환된 참조 픽처인지 여부를 지시하는 값을 포함할 수 있다. 상기 정보는 다양한 규모의 단위로 전송될 수 있다. 예를 들어, 블록 단위 예측 구조에 적용하면, 부호화 유닛(Coding Unit; CU) 단위 또는 PU 단위로 전송할 수 있다
본 발명의 일 실시 예에 따를 때, 상술한 방법 및/또는 장치는 다양한 동영상 코딩 방법 및/또는 장치에 응용될 수 있으며, 제안된 각 세부 과정들은 다양한 형태로 수행될 수 있고, 필요한 경우 새로운 세부 과정이 추가되어 수행될 수 있다. 또한, 상술한 방법 및/또는 장치는 모두 이용될 수도 있고, 필요에 따라 부분적으로 이용될 수도 있다.
일반적인 동영상 부호화 및 복호화 과정에서 발생하는 화면 간 예측은 동영상의 각 픽처 내 물체 또는 배경이 시간의 변화에 따라 움직이는 것을 고려하여 이루어진다. 이때, 화면 간 예측은 부호화 단위(Coding Unit), 예측 단위(Prediction Unit) 등과 같은 단위(Unit) 형태로 분할되어 해당 단위별로 이루어진다. 각 단위는 물체의 움직임을 고려하여 다른 시간대의 픽처에서 유사한 화소값을 갖는 영역을 탐색한다. 화면 간 예측은 탐색된 영역을 움직임 정보로 표현할 수 있다.
이때, 화면 간 예측의 수행 범위는 코딩하고자 하는 픽처의 원래 크기보다 일정 부분 크게 만든 가상 영역을 포함할 수 있다. 그러나, 상기 가상 영역은 화소값 정보를 가지지 않기 때문에, 예측이 불가능하거나, 예측 정밀도가 떨어져 코딩 효율이 감소하게 된다. 또는, 예측 단위를 더욱 작게 하여 코딩 효율이 감소할 수 있다.
본 발명에서 코딩이라 함은 부호화와 복호화를 포괄하여 정의한다.
도 8은 본 발명의 일 실시 예에 따른 화면 간 예측의 수행시 참조 영역과 가상 영역을 나타내는 도면이다.
일반적으로 참조 픽처는 코딩하고자 하는 픽처의 원래 영역과 동일한 크기를 가지고, 동일한 공간적 위치에 존재한다. 예컨대, 도 8을 참조하면, A 블록은 A’ 블록과 대응된다. 따라서, A 블록은 A’ 블록을 참조함으로써 화면 간 예측을 수행할 수 있다. 화면 간 예측은 화면 내 영상의 움직임을 고려하는데 코딩하고자 하는 위치로부터 일정 범위를 탐색하여 가장 유사한 화소값을 갖는 영역을 찾는다. 이때, 탐색 범위가 코딩하고자 하는 픽처의 원래 영역을 벗어날 수 있다. 예컨대, 도 8을 참조하면, A’은 코딩하고자 하는 픽처의 원래 영역을 벗어난다. 코딩하고자 하는 픽처의 원래 영역을 벗어나는 화면 간 예측을 수행하기 위하여 일반적인 동영상 코딩 방법에서는, 코딩하고자 하는 픽처의 원래 영역보다 일정 부분 크게 만든 가상 영역을 사용할 수 있다. 본 발명의 일 실시 예에 따를 때, 가상 영역과 코딩하고자 하는 픽처의 원래 영역을 합쳐서 참조 영역이라 정의할 수 있으며, 화면 간 예측은 참조 영역 내에서 수행될 수 있다. 일반적으로 참조 픽처의 경우 가상 영역에는 화소값이 존재하지 않기 때문에, 가상 영역에 화소값을 할당하는 과정이 수행될 수 있으며, 이를 가상 영역의 패딩이라고 한다.
한편, 기하변환 참조 프레임 또는 기하변환 참조 픽처(Warped Reference Picture, WRP)에서는, WRP의 생성시 일반적인 참조 픽처를 참고하여 기하변환을 수행함으로써 참조픽처를 구현하기 때문에, 코딩하려는 픽처의 원래 영역의 내부에도 화소값 정보가 존재하지 않는 영역이 발생될 수 있다.
도 9는 본 발명의 일 실시 예에 따른 WRP에서 코딩하려는 픽처의 원래 영역 안쪽에 화소값 정보가 존재하지 않는 영역이 발생하는 예시를 나타내는 도면이다.
WRP는 기하변환을 통해 생성되기 때문에, 코딩하려는 픽처의 원래 영역의 크기와 공간적 위치가 서로 상이할 수 있다. 따라서, 코딩하려는 픽처의 원래 영역과 참조 픽처의 크기와 공간적 위치가 동일했던 경우와 다르게, WRP에서는 가상영역이 아니더라도 코딩하려는 픽처의 원래 영역 내부에서도 화소값이 존재하지 않는 영역이 발생할 수 있다.
도 9를 참조하면, 빗금친 영역인 A는 코딩하고자 하는 픽처의 원래 영역 내부이면서도 화소값이 존재하지 않는 영역을 나타낸다. 또한, 그림의 우측 가장자리에 도시한 바와 같이 WRP에서는 가상 영역의 일부 또는 전체에 WRP의 화소값 정보가 존재할 수도 있다.
본 발명의 일 실시 예에 따를 때, 코딩하고자 하는 영상 크기의 외부에 가상 영역을 정의하여 화소값이 존재하지 않는 가상 영역만을 패딩하던 기존의 부호화/복호화 방법과 달리, 화소값 정보가 존재하지 않는 가상 영역 또는 가상 영역의 일부와 함께 WRP로 인해서 발생된 코딩하려는 픽처의 원래 영역 내부에서 화소값이 존재하지 않는 영역을 합친 확대된 영역을 경계 영역이라 정의할 수 있다. 상기 경계 영역은 참조 영역 안에서 화소값 정보를 가지지 않은 모든 영역을 의미할 수도 있다.
본 발명의 일 실시 예에 따를 때, WRP를 이용한 영상 부호화/복호화 방법에 있어 참조 픽처의 경계 영역을 패딩함으로써 움직임 정보의 예측 효율을 높이고 코딩 효율을 향상시킬 수 있다.. 이때, WRP는 실제 화소값을 생성 및 저장하여 만드는 경우뿐만 아니라, 전역 움직임 정보를 통해 일반 참조 픽처로부터 화소값을 가상적으로 유추하여 활용하는 경우를 모두 포함할 수 있다.
경계 영역은 참조 영역에 속하지만 화소값 정보가 존재하지 않는 영역을 의미할 수 있다다. 예컨대, 도 9를 참조하면, 코딩하려는 픽처의 원래 영역 내부에서 화소값이 존재하지 않는 영역과 가상영역을 합한 영역을 의미할 수 있다.
도 10은 본 발명의 일 실시 예에 따른 경계 영역을 나타내는 도면이다.
도 10 (a)를 참조하면, 오른쪽 가장자리에 도시된 바와 같이 WRP는 현재 픽처의 참조 영역을 벗어날 수 있다. 현재 픽처의 참조 영역은 현재 픽처가 화면 간 예측에서 참조할 수 있는 모든 영역을 의미하기 때문에, 현재 픽처의 참조 영역을 벗어난 정보는 사용되지 않을 수 있다. 따라서, 현재 픽처의 참조 영역을 벗어난 WRP의 영역은 제거될 수 있다.
경계 영역의 화소값은 정보가 없어 올바른 값을 알 수 없기 때문에 화소값을 예측하거나 임의로 정의해줄 필요가 있다. 경계 영역의 화소값을 예측하거나 소정의 값을 정의하여 설정하는 것을 경계 영역의 패딩이라 한다.
도 11은 본 발명의 일 실시 예에 따른 경계 영역의 패딩 기법을 이용하는 부호화기/복호화기의 구성을 나타내는 블록도이다.
도 11 (a)를 참조하면, 부호화기에서 전역 움직임 산출부(1101)는 현재 픽처와 참조 픽처를 입력받아 현재 픽처와 참조 픽처간 전역 움직임에 의한 관계를 도출할 수 있다. 또한, 전역 움직임 산출부(1101)는 상기 도출된 관계를 부호화/복호화에 사용가능한 형태로 가공할 수 있다. 상기 전역 움직임 산출부(1101)에서 가공되어 도출된 결과를 전역 움직임 정보라고 한다.
WRP 생성부(1102)는 상기 전역 움직임 정보와 참조 픽처를 이용하여 WRP를 생성할 수 있다. 상기 WRP는 참조 픽처를 보다 현재 픽처와 유사한 형태로 기하 변환한 것을 의미할 수 있다.
경계 영역 패딩부(1103)는 상기 WRP와 참조 픽처의 경계 영역에 패딩을 수행함으로써 경계 영역이 패딩된 WRP를 얻을 수 있다.
도 11 (b)를 참조하면, 복호화기에서 전역 움직임 복호부(1111)는 부호화기에서 전송된 전역 움직임 정보의 신호를 복호화할 수 있다. 복호화기는 현재 픽처의 정보를 알 수 없기 때문에, 부호화기로부터 전송딘 신호를 복호함으로써 전역 움직임 정보를 획득할 수 있다.
WRP 생성부(1112)는 전역 움직임 정보와 참조 픽처를 이용하여 WRP를 생성할 수 있다. 상기 WRP는 참조 픽처를 이용하여 현재 픽처와 유사한 형태로 기하 변환한 것을 의미할 수 있다.
경계 영역 패딩부(1113)는 WRP와 참조 픽처의 경계 영역에 패딩을 수행함으로써 경계 영역이 패딩된 WRP를 얻을 수 있다.
부호화기와 복호화기는 전역 움직임 정보의 획득 방식은 상이하지만, 동일한 전역 움직임 정보를 획득하고, 이를 통해 WRP의 생성 및 경계 영역 패딩과정은 동일하게 수행할 수 있다.
도 12는 본 발명의 일 실시 예에 따른 경계 영역의 패딩 기법을 이용하는 부호화기/복호화기의 동작을 나타내는 흐름도이다.
도 12 (a)를 참조하면, 부호화기는 현재 픽처와 참조 픽처를 입력받아 현재 픽처와 참조 픽처간 전역 움직임에 의한 관계를 도출하고, 상기 도출된 관계를 부호화/복호화에 사용가능한 형태로 가공할 수 있다(‘전역 움직임 산출’ 단계, S1200). 상기 단계 S1200에서 가공되어 도출된 결과를 전역 움직임 정보라고 한다.
전역 움직임 정보와 참조 픽처를 이용하여 WRP를 생성할 수 있다(‘WRP 생성’ 단계, S1202). 상기 WRP는 참조 픽처를 보다 현재 픽처와 유사한 형태로 기하 변환한 것을 의미한다. 또한, 상기 WRP는 전역 움직임 관계의 도출 및 부호화 효율을 고려하여 생성되지 않을 수 있다.
WRP가 생성되었는지를 판단할 수 있다(‘WRP 생성 되었는가?’ 조건문 단계, S1204). 상기 단계 S1204는 WRP의 생성 여부에 따라 경계 영역의 패딩 수행 여부를 다르게 하기 위한 조건문이다. WRP가 생성되지 않는 경우, WRP의 경계 영역 패딩 및 WRP를 이용한 경계 영역 패딩이 수행될 수 없다. WRP가 생성된 경우, WRP 영상에 경계 영역이 존재하는지 확인할 수 있다.
WRP의 경계 영역이 존재하는지 여부를 판단함으로써경계 영역의 존재 여부에 따라 경계 영역의 패딩을 수행할지를 결정할 수 있다(’경계 영역이 존재하는가?’ 조건문 단계, S1206). 상기 WRP는 다양한 형태로 생성될 수 있으며, 전역 움직임과 참조 영역에 따라 경계 영역이 존재하지 않을 수 있다. 경계 영역이 존재하는 경우, WRP의 경계 영역을 패딩할 수 있다. 경계 영역이 존재하지 않는 경우, 경계 영역의 패딩이 불필요하므로 생략할 수 있다.
WRP 또는 참조 픽처의 경계 영역에 패딩할 수 있다(‘경계 영역 패딩’ 단계, S1208). 상기 단계 S1208의 수행 결과로써 경계 영역이 패딩된 WRP를 얻을 수 있다.
생성된 WRP를 WRP 리스트(예를 들어, WRP List)에 저장할 수 있다(‘WRP List에 저장’ 단계, S1210). 상기 WRP 리스트는 WRP를 화면 간 예측을 위해 저장해두고 관리하기 위한 리스트를 의미할 수 있다.
단계 S1208의 경계 영역 패딩이 수행되는 경우, 경계 영역이 패딩된 WRP 영상이 WRP 리스트에 저장되어 관리되며, 경계 영역 패딩이 수행되지 않은 경우, 경계 영역이 패딩되지 않은 WRP 영상이 WRP 리스트에 저장되어 관리될 수 있다.
도 12 (b)를 참조하면, 복호화기는 부호화된 전역 움직임 정보의 신호를 복호화할 수 있다(‘전역 움직임 복호화' 단계, S1220). 복호화기는 부호화기와 전역 움직임 정보를 습득하는 과정이 다른데, 구체적으로, 복호화기는 현재 픽처의 정보를 알 수 없기 때문에, 부호화기에서 부호화된 신호를 복호함으로써 전역 움직임 정보를 획득할 수 있다.
WRP가 생성 가능한지를 판단할 수 있다(’WRP 생성 가능한가?’ 조건문 단계, S1222). 상기 단계 S1222는 WRP의 생성이 가능한지 여부에 따라 경계 영역의 패딩 수행 여부를 달리하기 위한 조건문이다. WRP가 생성불가능한 경우, WRP의 경계 영역 패딩 및 WRP를 이용한 경계 영역 패딩이 수행될 수 없다. 전역 움직임 정보의 복호화를 통해 WRP가 생성될 수 있는지가 결정된다. WRP가 생성 가능하다면, WRP를 생성할 수 있다.
전역 움직임 정보와 참조 픽처를 이용하여 WRP를 생성할 수 있다(‘WRP 생성’ 단계, S1224). 상기 WRP는 복호화된 전역 움직임 정보를 사용하여 참조 픽처를 기하 변환한 것을 의미할 수 있다.
WRP의 경계 영역이 존재하는지 여부를 판단함으로써 경계 영역의 존재 여부에 따라 경계 영역의 패딩을 수행할지 결정할 수 있다(‘경계 영역이 존재하는가?’ 조건문 단계, S1226). WRP는 다양한 형태로 생성될 수 있으며, 전역 움직임과 참조 영역에 따라 경계 영역이 존재하지 않을 수도 있다. 경계 영역이 존재하는 경우, WRP의 경계 영역을 패딩할 수 있다. 경계 영역이 존재하지 않는 경우, 경계 영역의 패딩이 불필요하므로 생략할 수 있다.
WRP 또는 참조 픽처의 경계 영역에 패딩할 수 있다(‘경계 영역 패딩’ 단계, S1228). 상기 단계 S1228의 수행 결과로써 경계 영역이 패딩된 WRP를 얻을 수 있다.
생성된 WRP를 WRP 리스트(예를 들어, WRP List)에 저장할 수 있다(‘WRP List에 저장’ 단계, S1230). 상기 WRP 리스트는 WRP를 화면 간 예측을 위해 저장해두고 관리하기 위한 리스트를 의미할 수 있다.
단계 S1228의 경계 영역 패딩이 수행되는 경우, 경계 영역이 패딩된 WRP 영상이 WRP 리스트에 저장되어 관리되며, 경계 영역 패딩이 수행되지 않은 경우, 경계 영역이 패딩되지 않은 WRP 영상이 WRP 리스트에 저장되어 관리될 수 있다.
본 발명의 일 실시 예에 따를 때, WRP의 경계 영역을 패딩함으로써 경계 영역이 포함되는 참조 영역을 참조하는 움직임 예측 부호화 과정의 효율을 향상시킬 수 있다. 또한, WRP와 일반 참조 픽처를 포함하는 참조 픽처의 경계 영역을 패딩할 때, 경계 영역에 대응되는 WRP를 사용함으로써 경계 영역이 포함되는 움직임 예측 부호화 과정의 효율을 향상 시킬 수 있다.
이하에서는, 고정값을 사용하여 WRP의 경계 영역을 패딩하는 방법에 대하여 후술한다.
본 발명의 일 실시 예에 따를 때, 고정값을 사용하여 WRP를 패딩할 수 있으며, 이는경계 영역에 해당하는 화소값을 임의로 지정된 값으로 설정하는 것을 의미할 수 있다. 상기 임의로 지정된 값은 부호화기 등에서 확인 또는 결정하고 부호화하여 복호화기에 송신되는 값을 의미할 수 있다 또한, 부호화기/복호화기에서 공통으로 동일하게 지정된 값을 의미할 수 있다.
도 13은 본 발명의 일 실시 예에 따른 고정값을 비교하고 결정하는 과정을 포함하는 부호화기/복호화기의 동작을 나타내는 흐름도이다.
도 13 (a)는 부호화기에서 기하 변환 참조 픽처의 경계 영역을 고정값으로 패딩하는 과정을 나타내는 것으로서, 상기 과정은 도 11에서 경계 영역 패딩부(1103)의 동작에 대응될 수 있다.
도 13(a)를 참조하면, 고정값을 설정할 수 있다(S1300).
상기 고정값으로 경계 영역을 패딩할 수 있다(S1302).
현재 최적 고정값보다 부호화 효율이 높은지를 판단할 수 있다(S1304).
단계 S1304의 판단 결과, 현재 최적 고정값보다 부호화 효율이 높은 경우, 최적 고정값 정보를 갱신할 수 있다(S1306).
모든 고정값에 대하여 비교가 완료되었는지를 판단할 수 있다(S1308).
단계 S1308의 판단 결과, 모든 고정값에 대하여 비교가 완료된 경우, 최적 고정값 설정을 완료할 수 있다(S1310).
단계 S1310에서 설정된 최적 고정값으로 경계 영역을 패딩할 수 있다(S1312).
최적 고정값을 부호화할 수 있다(S1314).
도 13 (b)는 복호화기에서 기하 변환 참조 픽처의 경계 영역을 고정값으로 패딩하는 과정을 나타내는 것으로서, 상기 과정은 도 11에서 경계 영역 패딩부(1113)의 동작에 대응될 수 있다.
고정값을 복호화할 수 있다(S1320).
고정값을 설정할 수 있다(S1322).
단계 S1322에서 설정된 고정값을 이용하여 경계 영역을 패딩할 수 있다(S1324).
도 14는 본 발명의 일 실시 예에 따른 지정된 고정값을 사용하는 부호화기/복호화기의 동작을 나타내는 흐름도이다.
도 13의 동작과 비교하여, 도 14에서 부호화기/복호화기는 고정값을 비교 결정하는 단계를 생략하고 임의로 지정된 고정값을 사용할 수 있다. 한편, 상기 고정값을 비교 결정하는 단계는 고정값에 의한 코딩 효율의 변화를 기준으로 수행될 수 있다. 또한, 상기 고정값을 비교 결정하는 단계는 경계 영역의 주변값과의 비교를 통해 수행될 수 있다. 또한, 상기 고정값을 비교 결정하는 단계는 예측된 코딩 효율의 변화를 통해 수행될 수 있다.
도 15는 본 발명의 일 실시 예에 따른 부호화기/복호화기에서 동일하게 사전 정의된 고정값을 사용하는 부호화기/복호화기의 동작을 나타내는 흐름도이다.
도 15를 참조하면, 고정값(또는 임의 지정값)을 부호화기/복호화기가 동일하게 사전 정의함으로써 별도의 신호 송수신(부호화/복호화) 과정을 생략하고도 동일한 값으로 패딩이 수행될 수 있다이하에서는, 본 발명의 일 실시 예에 따른 고정값을 설정하는 방법에 대하여 후술한다.
일 예로, 모든 화소값으로 패딩한 후 최적의 값을 선택함으로써 고정값을 설정할 수 있다. 어떠한 화소값으로 패딩을 할 때 최적의 코딩 효율이 나오는지를 모든 화소값을 일일이 대응함으로써 확인할 수 있다. 이 경우, 도 13의 단계 S1316(‘다음 비교 고정값 선택’ 단계)에서 선택의 대상이 되는 고정값 후보로서 사용가능한 모든 화소값이 될 수 있다. 상기 방법은 모든 경우를 비교하기 때문에 계산 복잡도가 가장 높지만, 코딩 효율을 높일 수 있다. 그러나, 고정값을 알려주기 위한 신호의 송수신이 필요할 수 있다.
다른 예로, 정해진 몇 개의 화소값들 중에서 선택함으로써 고정값을 설정할 수 있다. 모든 화소값을 비교하는 것은 계산 복잡도가 높으므로, 일정 간격 또는 통계적으로 산출된 값 등을 사전에 일부 정의하여 그 중에서 선택하여 활용할 수 있다. 이 경우, 도 13의 단계 S1316(‘다음 비교 고정값 선택’ 단계)에서 선택의 대상이 되는 고정값 후보가 사전에 선별되어 있을 수 있다. 상기 선별되어 있는 고정값 후보들은 사전에 부호화기와 복호화기에서 동일하게 정의될 수 있으나, 추가적인 신호를 통해 송수신될 수도 있다. 모든 화소값을 비교하는 방법에 비하여 경우의 수가 줄어들 수 있기 때문에 계산 복잡도가 낮다. 또한, 고정값을 알려줄 신호의 송수신은 필요하지만 모든 화소값을 비교하는 방법에 비하여 경우의 수가 줄어들기 때문에 송수신하는 신호의 코딩 효율을 높일 수 있다.
또 다른 예로, 화소값이 가질 수 있는 값의 범위를 고려하여 고정값을 선택할 수 있다. 영상의 화소값은 가질 수 있는 값의 범위가 정해져 있다. 예컨대, 8bit depth의 영상의 경우, 각 화소가 가질 수 있는 값의 범위는 0부터 255까지이다. 화소값의 범위를 고려하여 그 중 가장 작은 값, 가장 큰 값, 중간값 등을 선택하여 활용할 수 있다. 예컨대, 8bit depth의 영상에서 중간값으로 고정값을 선택할 경우 128의 값을 고정값으로 선택할 수 있다. 또한, 소정의 값의 범위 내에서 임의로 특정한 값을 설정할 수도 있다. 도 14는 임의로 특정한 값이 설정된 경우의 일 예이다. 정해진 경우를 따라 고정값이 선택되므로 비교 선택하는 과정을 없앨 수 있기 때문에 계산 복잡도를 줄일 수 있으며, 또한 사전에 어떤 값을 선택할지 정의되어 있기 때문에, 고정값을 알려줄 신호의 송수신을 생략할 수 있다. 도 15는 부호화기와 복호화기가 동일한 값을 사전에 설정함으로써 고정값을 알려줄 신호의 송수신을 생략한 경우의 일 예이다.
이하에서는 픽처를 사용하여 패딩하는 방법에 대해서 후술한다.
경계 영역의 화소값들을 해당 경계 영역을 가지는 픽처 또는 다른 픽처로부터 참조할 수 있다. 이때, 참조해 오는 픽처는 일반 참조 픽처, WRP, 현재 부호화 하는 픽처 등이 있을 수 있다.
일반 참조 픽처 또는 WRP를 사용하는 경우, 특정 픽처만을 사용할 수 있지만, 복수의 일반 참조 픽처 또는 WRP를 사용할 수도 있다. 참조하는 픽처의 화소값 혹은 화소 영역을 사용하여 경계 영역을 패딩할 수 있다. 현재 부호화하는 픽처를 사용하는 경우, 복호화기에서는 참조할 수 없는 영역이 존재할 수 있다. 복호화기에서 참조할 수 없는 영역을 사용하여 경계 영역을 패딩할 경우, 동일한 복호를 위해서 신호의 송수신이 필요하다. 복호화기에서 참조할 수 있는 기복호화된 영역의 경우, 부호화기와 복호화기가 동일하게 기복호화된 영역의 현재 픽처를 참조함으로써 신호의 송수신을 생략할 수 있다. 복수의 픽처를 사용하는 방법의 경우에는 일반 참조픽처와 WRP, 또는 WRP와 현재 픽처 등과 같이 서로 다른 종류의 픽처를 사용할 수 있다.
일 예로, 인접 화소를 사용할 수 있다.
WRP의 경계 영역을 패딩할 때, 참조하는 픽처로부터 해당 경계 영역의 화소 위치와 가장 인접한 화소의 화소값을 사용하여 패딩할 수 있다. 사용될 인접 화소를 결정하는 방법은 여러가지가 있을 수 있으며, 예를 들어, 유클리디안 거리(Euclidean distance)를 계산하는 방법, x축 거리를 이용하는 방법, y축 거리를 이용하는 방법, City-Block 거리를 이용하는 방법, Chessboard 거리를 이용하는 방법 등이 있다. 또는, 정해진 방법에 따라 특정 화소만을 선택하여 해당 화소값을 경계 영역에 패딩 할 수도 있다.
도 16은 본 발명의 일 실시 예에 따른 인접 화소를 사용한 경계 영역 패딩 과정을 나타내는 도면이다.
도 16을 참조하면, 좌상단 격자무늬는 영역 A를 확대한 것으로서, 각각의 작은 사각형 격자는 화소를 의미한다. 빗금친 경계 영역의 화소값은 흰색으로 표기된 WRP 영역으로부터 패딩될 수 있다. 이때, 가장 인접한 WRP의 화소를 사용하는 경우, 화소 A의 값은 화소 a의 값으로부터 패딩될 수 있다. 또한, 화소 B의 값은 화소 a의 값으로부터 패딩될 수 있다. 또한, 화소 C의 값은 화소 a 또는 화소 c의 값으로부터 패딩될 수 있다. 또한, 화소 E의 값은 화소 d의 값으로부터 패딩될 수 있다. 또한, 화소 D의 값은 화소 a의 값으로부터 패딩될 수 있다. 상기 과정은 영역 A에만 해당하는 것이 아니라 전체 경계 영역에서 동일한 방식으로 수행될 수 있다.
한편, 하나의 인접 화소만을 사용하는 것이 아니라 복수의 인접 화소를 사용할 수도 있다. 예컨대, 도 16에서 화소 C의 경우 화소 C에서 화소 a까지의 거리와 화소 C에서 화소 c까지의 거리가 같다. 따라서, 두 화소의 평균값을 이용하여 패딩할 수 있다. 화소 B의 경우 화소 a가 가장 가깝지만, 화소 b 역시 매우 인접한 화소이므로, 가중 평균을 통해 패딩할 수 있다. 두개뿐 아니라 여러 개의 화소를 선택할 수도 있으며, 일정 거리 내에 있는 모든 화소를 사용할 수 있다. 상기 방법과 같이 복수의 화소를 이용함으로써 보다 적절한 패딩을 수행할 수 있다.
다른 예로, 평균 화소값을 사용할 수 있다. 참조하는 픽처로부터 특정 영역을 지정하고 해당 영역의 픽셀값의 평균을 이용하여 패딩할 수 있다. 이때, 상기 특정 영역은 참조하는 픽처 전체, 경계 영역의 화소 위치로부터 일정 거리 내에 있는 영역, 경계 영역의 화소 위치에 따라 지정된 부분 영역, 경계 영역과 맞물리는 부분의 화소들의 집합 또는 부분집합에 해당하는 영역 등을 의미할 수 있다. 예컨대, 도 16에서 영역 A를 지정된 부분 영역이라고 하면, 영역 A에 해당하는 WRP 영역의 화소값들의 평균을 영역 A의 경계 영역에서의 화소값으로 설정할 수 있다. 한편, 상기 평균값은 산술평균, 기하평균, 가중평균, 중앙값(median) 등을 의미할 수 있다.
또 다른 예로, 참조 픽처 영역을 사용할 수 있다.
참조 픽처 영역이란 참조하는 픽처의 부분 또는 전체 화소값들의 집합을 의미할 수 있다. 본 발명의 일 실시 예에 따를 때, 참조 픽처 영역을 경계 영역에 가져오거나 대응시켜 사용할 수 있다.
도 17은 본 발명의 일 실시 예에 따른 WRP 영역을 사용하는 경계 영역 패딩 과정을 나타내는 도면이다.
예컨대, 도 17 (a) 및 도 17 (b)와 같이 복수의 WRP가 존재하는 경우, WRP A의 경계 영역에 대응되는 영상 정보를 WRP B가 가지고 있을 수 있다. 반대로, WRP B의 경계 영역에 대응되는 영상 정보를 WRP A가 가지고 있을 수 있다. 이 경우, 도 17 (c)의 예와 같이, WRP A의 경계 영역에는 WRP B에서 대응되는 화소값들을 가져오거나 대응시킴으로써 경계 영역을 패딩할 수 있다. 또한, WRP B의 경계 영역에는 WRP A에서 대응되는 화소값들을 가져오거나 대응시킴으로서 경계 영역을 패딩할 수 있다. 한편, 경계 영역에 대응되는 화소값들을 가져오는 과정에서, 경계 영역에 대응되는 위치를 찾거나 화소값 또는 위치를 보정하기 위한 예측 과정이 포함될 수 있다.
도 18은 본 발명의 일 실시 예에 따른 WRP 영역을 사용하는 경계 영역 패딩 과정을 나타내는 흐름도이다.
패딩되지 않은 경계 영역에 대하여 WRP List에 있는 모든 WRP들 중 대응 위치의 화소값을 갖는 WRP를 찾아 대응 위치 화소값을 경계 영역에 채움으로써 패딩을 수행할 수 있다. 이때, 상기 WRP List는 현재 픽처가 참조할 수 있는 모든 WRP를 가지고 있는 집합을 의미할 수 있다. 또한, 상기 대응 위치는 서로 다른 참조 픽처에서 참조 영역의 동일한 공간 좌표를 갖는 경우를 의미할 수 있다.
패딩되지 않은 경계 영역인지를 판단할 수 있다(S1800).
단계 S1800의 판단 결과, 패딩되지 않은 경계 영역인 경우, 대응 위치의 화소값을 갖는 WRP를 탐색할 수 있다(S1802). 이때, 대응 위치의 화소값을 갖는다라는 것은 대응 위치가 경계 영역이 아님을 의미할수 있다. 또한, 대응 위치가 경계 영역이지만 패딩이 된 경우를 포함할 수 있다.
대응 위치의 화소값을 갖는 WRP가 존재하는지를 판단할 수 있다(S1804).
단계 S1804의 판단 결과, 대응 위치의 화소값을 갖는 WRP가 존재하는 경우, 대응 위치의 화소값을 갖는 WRP의 화소값으로 패딩할 수 있다(S1806).
도 17을 참조하면, 현재 픽처의 참조 영역의 가장 왼쪽 및 가장 위쪽에 있는 좌표를 (0,0)이라 하면, 도 17 (a)에서 (0,0)의 위치가 경계 영역임을 알 수 있다. 도 17 (b)에서 (0,0)의 위치는 WRP B에 속하기 때문에 화소값을 갖는다. 이때, 도 17 (a)의 (0,0) 위치와 도 17 (b)의 (0,0) 위치는 대응 위치이며, 도 17 (a)의 (0,0) 위치에서 도 17 (b)는 ‘대응 위치에서 화소값을 갖는 경우’가 된다. 반대로, 도 17 (b)의 (0,0) 위치에서 도 17 (a)는 대응 위치가 경계 영역이므로 ‘화소값을 갖지 않는 경우’가 된다. 따라서, WRP A의 경계 영역 중 (0,0)의 위치는 WRP B의 (0,0) 위치의 화소값으로 패딩될 수 있다.
단계 S1806의 동작 이후 단계 S1808 및/또는 단계 S1810의 동작이 진행될 수 있다.
한편, WRP와 WRP간의 참조 영역 패딩뿐만 아니라 WRP와 일반 참조 픽처간에도 도 16 내지 도 18에서 상술한 방법이 이용될 수 있다.
도 19는 본 발명의 일 실시 예에 따른 WRP와 일반 참조픽처간 경계 영역 패딩 과정을 나타내는 도면이다.
WRP는 부호화 하는 픽처와 유사하도록 영상을 기하 변환한 참조 픽처이기 때문에 서로 다른 WRP간에도 높은 유사성과 연속성을 가질 수 있다. 그러나, 일반 참조 픽처는 부호화하는 픽처에 맞추는 기하 변환 과정을 거치지 않았기 때문에 이러한 유사성이나 연속성은 떨어질 수 있다. 그러나, 시공간적 유사성을 가지는 동영상 프레임의 특성을 고려할 때, 일반 참조 픽처 또한 유사성을 지니고 있기 때문에 WRP의 경계 영역에 대해 일반 참조 픽처로부터 참조 픽처 영역을 사용한 경계 영역 패딩이 사용될 수 있다. 또한, 이 경우, WRP와 일반 참조 픽처의 선택적인 사용으로 인해 발생하는 추가 신호의 코딩 효율이 높아지는 것을 기대할 수 있다. 즉, WRP의 경계 영역 부분에서 일반 참조 픽처와 유사한 예측을 수행함에도 여전히 WRP를 사용하는 경우에 해당하기 때문에 WRP와 일반 참조 픽처의 선택 여부를 나타내는 신호의 변화가 줄어들어 엔트로피 코딩 등에 유리해질 수 있기 때문이다.
본 발명의 일 실시 예에 따를 때, 도 13 내지 도 19에서 상술한 방법들을 혼합적으로 사용하여 패딩할 수 있다.
상술한 패딩 방법 이외에 다양한 패딩 방법이 존재할 수 있으며, 각 패딩 방법은 각각의 장단점이 있으며, 사용할 수 있는 경우가 다를 수 있다. 따라서, 보다 좋은 패딩 효과를 얻기 위해 복수의 패딩 방법을 혼재해서 사용할 수 있다.
일 예로, 사전에 설정된 설정값에 의해 복수의 패딩 방법 중 하나 또는 복수의 패딩 방법을 선택하여 사용할 수 있다.
다른 예로, 경계 영역의 위치나 특성, 다른 WRP의 존재 여부, 수행 후 효율의 비교 등의 소정의 조건에 의에 패딩 방법을 선택할 수 있다. 또한, 비디오 단위, 시퀀스 단위, GOP 단위, 슬라이스 단위, 프레임 단위, 경계 영역 내 위치, 경계 영역 내 특성 등에 따라 사용하는 패딩 방법을 다르게 선택할 수 있다.
또 다른 예로, 복수의 패딩 방법을 병합하여 사용할 수 있다. 예컨대, 최인접 화소를 사용하는 방법과 평균 화소값을 사용하는 방법의 경우, 경계 영역의 각 픽셀에서 두가지 방법을 수행하여 나온 각각의 결과의 평균을 화소값으로 사용한다거나, 또는 영역별로 가중치를 두어 가중평균을 사용한 화소값을 생성할 수 있다. 상기 병합 방법은 사용할 수 있는 복수의 패딩 방법에 대하여 이루어질 수 있다. 또는, 도 17 (c)의 예와 같이, WRP의 경계 영역에 대응되는 다른 WRP의 화소값을 활용하여 경계 영역을 패딩하는 경우, 남은 경계 영역에 대하여 고정값을 사용하여 패딩하거나 인접 화소 또는 평균 화소값을 사용하여 경계 영역의 패딩을 수행할 수 있다.
본 발명의 일 실시 예에 따를 때, 패딩 값을 보정할 수 있다. 패딩된 값을 보정함으로써 패딩의 효과를 보다 높일 수 있다. 상기 보정 방법은 블러링(blurring), 밝기 변화, 필터링(filtering), 그라데이션(gradation) 등 여러가지가 있을 수 있으며, 정해진 구간 또는 영역별로 다른 방법을 사용하거나 복수의 방법을 혼합하여 사용할 수 있다.
블러링은 영상 내 화소값을 주변 화소값 등을 고려하여 보다 주변 화소값과 유사하게 변형시키는 것을 의미한다. 이는 영상의 고주파 성분을 제거하거나 감소시키는 것 또는 저주파 성분을 강화하는 것과 동일한 의미를 지닌다. WRP 내의 패딩된 경계 영역의 화소값은 패딩하는 방법에 따라 비경계 영역의 경계에서 화소값이 급변하는 현상이 발생할 수 있다. 이러한 화소값의 급변은 영상 부호화에 있어 예측 효율을 감소시키는 원인이 되기도 하고, 고주파 성분을 발생시켜 코딩 효율을 감소시키는 원인이 되기도 한다. 따라서, WRP 내의 경계 영역과 비경계 영역의 경계에서 블러링을 사용함으로써 화소값의 급변을 방지하고 코딩 효율의 감소를 막을 수 있다.
도 20은 본 발명의 일 실시 예에 따른 블러링 방법을 이용한 경계 영역 패딩 보정 과정을 나타내는 도면이다.
도 20을 참조하면, WRP A의 경계 영역에 대응되는 화소값을 갖는 WRP B를 이용하여 WRP A의 경계 영역을 패딩한 경우로서, WRP B는 WRP A에 비해 전반적으로 어두운 화소값을 가지기 때문에, WRP B를 이용하여 패딩된 경계 영역과 WRP A의 영역인 비경계 영역의 경계에서 밝기값이 급변함을 알 수 있다. 이때, 영역 A에 대해 블러링을 수행할 수 있는데, 블러링 수행 후의 영역 A의 확대된 부분은 블러링 수행 전의 영역 A의 확대된 부분과 비교하면, 패딩된 경계 영역의 화소값이 비경계 영역과의 경계 부분에서 보다 비경계 영역과 유사한 밝기값으로 변화되었음을 알 수 있다.
한편, WRP의 경계 영역에서의 블러링은 경계 영역과 비경계 영역을 구분하기 위해 전역 움직임 정보를 사용할 수 있다. 또한, 경계 영역과 비경계 영역의 접선이 수평 혹은 수직이 아닐 수 있기 때문에 기하적인 형태를 고려하여 수행될 수 있다.
도 21은 본 발명의 일 실시 예에 따른 기하적인 형태를 고려한 블러링 방법을 나타내는 도면이다.
도 21을 참조하면, 경계 영역과 비경계 영역의 경계가 45도 각도의 대각선 방향인 경우, 비경계 영역 화소 A의 값은 경계 영역 화소 a나 화소 b가 아닌 화소 c를 사용함으로써 보다 화소 c에 유사하도록 블러링될 수 있다. 그러나, 화소 A는 화소 a와 화소 b와도 인접하기 때문에, 화소 a와 화소 b의 값을 함께 사용하는 가중 평균을 이용하여 블러링된 화소값을 산출할 수도 있다.
또한, 블러링은 경계 영역과 비경계 영역의 경계 이외에 경계 영역 내부에서도 사용될 수 있다. 예컨대, 패딩한 값에 따라 패딩 영역 내부에 과도한 고주파 성분이 남는 등의 이유로 인해 예측 효율이 감소할 수 있다. 이런 경우에도 경계 영역 내부에서 블러링을 사용함으로써 코딩 효율을 높일 수 있다.
밝기 변화 방법은 경계 영역의 전체 또는 부분의 밝기를 전반적으로 변화시키는 방법이다. 참조 영역을 사용하는 패딩 방법이 사용되는 경우, 패딩된 영역과 WRP 영역이 동일한 물체 또는 배경임에도 예컨대, 영상의 페이드 인(fade in), 페이드 아웃(fade out), 촬영 환경의 시간적 변화 등의 이유로 평균적 밝기값이 상이할 수 있다. 상기와 같이 비경계 영역과 패딩된 경계 영역의 전반적인 밝기가 다른 경우, 경계 영역 전반의 화소를 밝게 하거나 어둡게 함으로써 경계 영역과 비경계 영역간에 보다 연속적인 상태로 만들 수 있다. 비경계 영역과 경계 영역을 연속적인 상태로 만듦으로써 코딩 효율을 높일 수 있다.
도 22는 본 발명의 일 실시 예에 따른 밝기 변화를 이용한 경계 영역 패딩 보정 방법을 나타내는 도면이다.
도 22 (a)에서 경계 영역 패딩에 사용된 WRP B는 WRP A에 비해 전반적으로 어두운 밝기값을 가짐을 알 수 있다. 도 22 (b)에서 상기 밝기 차이를 보정하여 패딩된 경계 영역 값의 밝기를 전체적으로 향상시킴으로써 경계 영역과 비경계 영역을 보다 연속적인 상태로 만들었음을 알 수 있다. a는 패딩된 WRP B 영역에 해당하는 화소로서 밝기값이 147인 화소를 나타내며, 또한 b는 비경계 영역에 속하는 화소로서 WRP A의 전체적 밝기를 의미하는 대표 화소를 나타내며 밝기값은 252를 가진다. 상기 대표 화소는 영상 내 특정 지점에서 얻을 수 있지만, 영상의 전체 밝기의 평균을 통해서 산출될 수도 있다. a’은 밝기값이 보정된 a 화소를 나타내며 밝기값은 248을 가진다. 비경계 영역의 전체적 밝기를 나타내는 대표 화소와 패딩된 경계 영역의 전체적 밝기를 의미하는 밝기값을 고려함으로써 밝기값 보정이 이루어질 수 있다. 패딩된 경계 영역의 전체적 밝기값이 b에 비해 낮으므로 패딩된 경계 영역에 속하는 화소들을 보다 밝게 보정함으로써 패딩된 경계 영역과 비경계 영역이 보다 연속된 상태가 되도록 할 수 있다. 상기 과정을 통해 a를 보정하여 산출된 a’이 b와 보다 유사한 밝기값이 되었음을 알 수 있다.
그 외에도, 영상의 특성 등을 고려하여 적합한 필터를 구성하고 상기 필터를 사용함으로써 경계 영역의 화소값을 보정할 수 있다. 또한, 그라데이션을 이용함으로써 경계 영역의 화소값을 보정할 수 있다. 상기 그라데이션은 경계 영역과 비경계 영역의 경계로부터 점진적인 화소값의 연속적 밝기 변화를 설정하여 화소값을 보정하는 것을 의미할 수 있다.
본 발명에 따르면, 기하변환 참조픽처 내에서, 참조 영역 안에서 화소값 정보가 존재하지 않는 확대된 영역인 경계 영역을 패딩함으로써 부호화기/복호화기의 예측 정밀도의 향상과 코딩 효율을 높일 수 있다.
본 개시의 예시적인 방법들은 설명의 명확성을 위해서 동작의 시리즈로 표현되어 있지만, 이는 단계가 수행되는 순서를 제한하기 위한 것은 아니며, 필요한 경우에는 각각의 단계가 동시에 또는 상이한 순서로 수행될 수도 있다. 본 개시에 따른 방법을 구현하기 위해서, 예시하는 단계에 추가적으로 다른 단계를 포함하거나, 일부의 단계를 제외하고 나머지 단계를 포함하거나, 또는 일부의 단계를 제외하고 추가적인 다른 단계를 포함할 수도 있다.
본 개시의 다양한 실시 예는 모든 가능한 조합을 나열한 것이 아니고 본 개시의 대표적인 양상을 설명하기 위한 것이며, 다양한 실시 예에서 설명하는 사항들은 독립적으로 적용되거나 또는 둘 이상의 조합으로 적용될 수도 있다.
또한, 본 개시의 다양한 실시 예는 하드웨어, 펌웨어(firmware), 소프트웨어, 또는 그들의 결합 등에 의해 구현될 수 있다. 하드웨어에 의한 구현의 경우, 하나 또는 그 이상의 ASICs(Application Specific Integrated Circuits), DSPs(Digital Signal Processors), DSPDs(Digital Signal Processing Devices), PLDs(Programmable Logic Devices), FPGAs(Field Programmable Gate Arrays), 범용 프로세서(general processor), 컨트롤러, 마이크로 컨트롤러, 마이크로 프로세서 등에 의해 구현될 수 있다.
본 개시의 범위는 다양한 실시 예의 방법에 따른 동작이 장치 또는 컴퓨터 상에서 실행되도록 하는 소프트웨어 또는 머신-실행가능한 명령들(예를 들어, 운영체제, 애플리케이션, 펌웨어(firmware), 프로그램 등), 및 이러한 소프트웨어 또는 명령 등이 저장되어 장치 또는 컴퓨터 상에서 실행 가능한 비-일시적 컴퓨터-판독가능 매체(non-transitory computer-readable medium)를 포함한다.

Claims (20)

  1. 영상의 복호화 방법에 있어서,
    움직임 정보를 수신하는 단계;
    상기 움직임 정보를 이용하여 기하 변환 픽처(Warped Reference Picture, WRP)를 획득하는 단계; 및
    상기 WRP 및 참조 픽처 중 적어도 하나의 경계 영역에 패딩을 수행하는 단계를 포함하는 영상 복호화 방법.
  2. 제1항에 있어서,
    상기 움직임 정보는 현재 픽처와 상기 참조 픽처간 전역 움직임 정보를 포함하는 영상 복호화 방법.
  3. 제2항에 있어서,
    상기 기하 변환 픽처를 획득하는 단계는,
    상기 전역 움직임 정보 및 상기 참조 픽처를 이용하여 WRP를 획득하는 단계를 포함하는 영상 복호화 방법.
  4. 제1항에 있어서,
    상기 경계 영역에 패딩을 수행하는 단계는,
    고정값을 사용하여 상기 경계 영역을 패딩하는 단계를 포함하는 영상 복호화 방법.
  5. 제4항에 있어서,
    상기 고정값은 사용가능한 모든 화소값, 기정의된 화소값 및 화소값이 가질 수 있는 범위 중 적어도 하나를 이용함으로써 획득되는 영상 복호화 방법.
  6. 제1항에 있어서,
    상기 경계 영역에 패딩을 수행하는 단계는,
    일반 참조 픽처, WRP, 현재 부호화 대상 픽처 중 적어도 하나의 픽처를 이용하여 패딩을 수행하는 단계를 포함하는 영상 복호화 방법.
  7. 제6항에 있어서,
    상기 적어도 하나의 픽처를 이용하여 패딩을 수행하는 단계는,
    상기 경계 영역의 화소와 인접한 화소, 소정의 영역 내의 화소, 참조 픽처 영역 중 적어도 하나를 이용하여 패딩을 수행하는 단계를 포함하는 영상 복호화 방법.
  8. 제1항에 있어서,
    상기 패딩이 수행된 적어도 하나의 경계 영역의 화소값을 보정하는 단계를 더 포함하는 영상 복호화 방법.
  9. 제8항에 있어서,
    상기 보정하는 단계는,
    블러링, 밝기 변화, 필터링 및 그라데이션 중 적어도 하나를 이용하여 보정하는 단계를 포함하는 영상 복호화 방법.
  10. 제7항에 있어서,
    상기 적어도 하나의 픽처를 이용하여 패딩을 수행하는 단계는,
    WRP 리스트에서 패딩 대상 화소에 대응되는 위치에 화소값을 갖는 WRP를 이용하여 패딩하는 단계를 포함하는 영상 복호화 방법.
  11. 영상의 부호화 방법에 있어서,
    움직임 정보를 결정하는 단계;
    상기 움직임 정보를 이용하여 기하 변환 픽처(Warped Reference Picture, WRP)를 획득하는 단계; 및
    상기 WRP 및 참조 픽처 중 적어도 하나의 경계 영역에 패딩을 수행하는 단계를 포함하는 영상 부호화 방법.
  12. 제11항에 있어서,
    상기 움직임 정보는 현재 픽처와 상기 참조 픽처간 전역 움직임 정보를 포함하는 영상 부호화 방법.
  13. 제12항에 있어서,
    상기 기하 변환 픽처를 획득하는 단계는,
    상기 전역 움직임 정보 및 상기 참조 픽처를 이용하여 WRP를 획득하는 단계를 포함하는 영상 부호화 방법.
  14. 제11항에 있어서,
    상기 경계 영역에 패딩을 수행하는 단계는,
    고정값을 사용하여 상기 경계 영역을 패딩하는 단계를 포함하는 영상 부호화 방법.
  15. 제14항에 있어서,
    상기 고정값은 사용가능한 모든 화소값, 기정의된 화소값 및 화소값이 가질 수 있는 범위 중 적어도 하나를 이용함으로써 획득되는 영상 부호화 방법.
  16. 제11항에 있어서,
    상기 경계 영역에 패딩을 수행하는 단계는,
    일반 참조 픽처, WRP, 현재 부호화 대상 픽처 중 적어도 하나의 픽처를 이용하여 패딩을 수행하는 단계를 포함하는 영상 부호화 방법.
  17. 제16항에 있어서,
    상기 적어도 하나의 픽처를 이용하여 패딩을 수행하는 단계는,
    상기 경계 영역의 화소와 인접한 화소, 소정의 영역 내의 화소, 참조 픽처 영역 중 적어도 하나를 이용하여 패딩을 수행하는 단계를 포함하는 영상 부호화 방법.
  18. 제11항에 있어서,
    상기 패딩이 수행된 적어도 하나의 경계 영역의 화소값을 보정하는 단계를 더 포함하는 영상 부호화 방법.
  19. 제18항에 있어서,
    상기 보정하는 단계는,
    블러링, 밝기 변화, 필터링 및 그라데이션 중 적어도 하나를 이용하여 보정하는 단계를 포함하는 영상 부호화 방법.
  20. 움직임 정보를 결정하는 단계;
    상기 움직임 정보를 이용하여 기하 변환 픽처(Warped Reference Picture, WRP)를 획득하는 단계; 및
    상기 WRP 및 참조 픽 중 적어도 하나의 경계 영역에 패딩을 수행하는 단계를 포함하는 영상 부호화 방법에 의해 생성된 비트스트림을 저장하는 컴퓨터 판독가능한 기록 매체.
KR1020190029514A 2018-03-15 2019-03-14 영상 부호화/복호화 방법 및 장치 KR20190109293A (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US16/354,331 US20190313107A1 (en) 2018-03-15 2019-03-15 Image encoding/decoding method and apparatus

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR1020180030511 2018-03-15
KR20180030511 2018-03-15

Publications (1)

Publication Number Publication Date
KR20190109293A true KR20190109293A (ko) 2019-09-25

Family

ID=68068088

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020190029514A KR20190109293A (ko) 2018-03-15 2019-03-14 영상 부호화/복호화 방법 및 장치

Country Status (1)

Country Link
KR (1) KR20190109293A (ko)

Similar Documents

Publication Publication Date Title
US11979600B2 (en) Encoder-side search ranges having horizontal bias or vertical bias
JP6588523B2 (ja) イントラ予測方法とそれを利用した符号化器及び復号化器
US10917661B2 (en) Method and apparatus for intra prediction
CN113329224B (zh) 视频信号编码/解码方法以及用于所述方法的设备
US20210314569A1 (en) Method, device, and recording medium storing bit stream, for encoding/decoding image
WO2011125313A1 (ja) 動画像符号化装置および動画像復号装置
KR20170108367A (ko) 인트라 예측 기반의 비디오 신호 처리 방법 및 장치
JP2023179758A (ja) ビデオ信号符号化/復号方法及びその機器
KR20190130502A (ko) 영상 복호화 방법/장치, 영상 부호화 방법/장치 및 비트스트림을 저장한 기록 매체
JP7305879B2 (ja) 映像信号の符号化/復号方法およびその装置
JP2022502899A (ja) ビデオ信号符号化/復号化方法及びそのための機器
US20220368901A1 (en) Image encoding method/device, image decoding method/device and recording medium having bitstream stored therein
US20190313107A1 (en) Image encoding/decoding method and apparatus
KR20230118538A (ko) 영상의 부호화/복호화 방법 및 장치
WO2011125314A1 (ja) 動画像符号化装置および動画像復号装置
KR20190142750A (ko) 영상 부호화/복호화 방법 및 장치
KR20190140820A (ko) 성분 간 참조 기반의 비디오 신호 처리 방법 및 장치
KR20190109293A (ko) 영상 부호화/복호화 방법 및 장치
KR102119158B1 (ko) 영상 부호화/복호화 방법 및 장치
CN114830646A (zh) 图像编码方法和图像解码方法
KR20200061309A (ko) 영상 성분 간 예측 방법과 그를 이용한 영상 부호화 및 복호화 방법 및 장치
KR20200026394A (ko) 화면내 예측을 이용한 부호화/복호화 방법 및 장치
KR102410326B1 (ko) 영상 부호화/복호화 방법 및 장치
KR20190109292A (ko) 영상 부호화/복호화 방법 및 장치
KR20220007523A (ko) 영상 부호화/복호화 방법 및 장치