KR20170098827A - 화상 처리 장치 및 화상 처리 방법 - Google Patents

화상 처리 장치 및 화상 처리 방법 Download PDF

Info

Publication number
KR20170098827A
KR20170098827A KR1020177016252A KR20177016252A KR20170098827A KR 20170098827 A KR20170098827 A KR 20170098827A KR 1020177016252 A KR1020177016252 A KR 1020177016252A KR 20177016252 A KR20177016252 A KR 20177016252A KR 20170098827 A KR20170098827 A KR 20170098827A
Authority
KR
South Korea
Prior art keywords
picture
unit
vector
current
reference picture
Prior art date
Application number
KR1020177016252A
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 소니 주식회사
Publication of KR20170098827A publication Critical patent/KR20170098827A/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • H04N19/513Processing of motion vectors
    • H04N19/517Processing of motion vectors by encoding
    • H04N19/52Processing of motion vectors by encoding by predictive encoding
    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/176Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • H04N19/58Motion compensation with long-term prediction, i.e. the reference frame for a current frame not being the temporally closest one
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/593Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving spatial prediction techniques
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/70Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by syntax aspects related to video coding, e.g. related to compression standards

Abstract

본 개시는 화면 내의 상관성을 이용한 예측을 행할 때의 부호화 효율을 향상시킬 수 있도록 하는 화상 처리 장치 및 화상 처리 방법에 관한 것이다. 예측 벡터 생성부는 화면 내의 상관성을 이용한 예측에 사용되는 커런트 블록의 커런트 움직임 벡터를 부호화할 때, 커런트 블록의 참조 픽처의 타입과, 커런트 움직임 벡터의 예측 벡터를 생성할 때 참조하는 레퍼런스 움직임 벡터의 후보에 대응하는 후보 블록의 참조 픽처의 타입이 다른 경우에, 후보 블록을 낫 어베일러블로 설정하고, 커런트 움직임 벡터의 예측 벡터를, 레퍼런스 움직임 벡터를 사용해서 생성한다. 차분 벡터 생성부는 커런트 움직임 벡터와 예측 벡터 생성부에 의해 생성된 예측 벡터의 차분 벡터를 생성한다. 본 개시는, 예를 들어 부호화 장치 등에 적용할 수 있다.

Description

화상 처리 장치 및 화상 처리 방법{IMAGE PROCESSING APPARATUS AND IMAGE PROCESSING METHOD}
본 개시는 화상 처리 장치 및 화상 처리 방법에 관한 것으로, 특히 화면 내의 상관성을 이용한 예측을 행할 때의 부호화 효율을 향상시킬 수 있도록 한 화상 처리 장치 및 화상 처리 방법에 관한 것이다.
최근, 화상 정보를 디지털로서 취급하며, 그때, 효율이 높은 정보의 전송, 축적을 목적으로 해서, 화상 정보 특유의 용장성을 이용하여, 이산 코사인 변환 등의 직교 변환과 움직임 보상에 의해 압축하는 부호화 방식을 채용해서 화상을 압축 부호하는 장치가 보급되고 있다. 이 부호화 방식에는, 예를 들어 MPEG(Moving Picture Experts Group)나 H.264 및 MPEG-4 Part10(Advanced Video Coding, 이하 AVC라고 기재함) 등이 있다.
그리고, 현재, H.264/AVC보다 가일층의 부호화 효율의 향상을 목적으로 해서, ITU-T와 ISO/IEC의 공동의 표준화 단체인 JCTVC(Joint Collaboration Team-Video Coding)에 의해, HEVC(High Efficiency Video Coding)라고 불리는 부호화 방식의 표준화가 진행되고 있다.
또한, HEVC에 있어서, 4:2:2나 4:4:4와 같은 색차 신호 포맷의 화상이나, 스크린 콘텐츠용 프로파일 등, 예를 들어 하이엔드용 포맷을 서포트하도록 레인지 익스텐션(HEVC Range Extension)의 검토가 행해지고 있다(예를 들어, 비특허문헌 1 참조).
그런데, IntraBlockCopy(Intra BC)는, 화면 내의 상관성을 이용해서 화면 내에서 움직임 보상을 행함으로써 예측을 행하는 부호화 툴이다. Intra BC는, 컴퓨터 화면이나 CG 화상과 같은 인공 화상에 대하여, 부호화 효율 개선에 공헌하는 툴로서 알려져 있다.
단, Intra BC는, 상술한 HEVC Range Extension 확장에는 기술 채용되지 않고, Screen Content Coding(SCC) 확장의 표준화로 기술 검토가 계속되고 있다(예를 들어, 비특허문헌 2 참조).
2014년 12월 현재, HEVC SCC 확장의 표준화로는, Intra BC와 인터 부호화를 공통화하는 것이 논의되고 있다. Intra BC와 인터 부호화를 공통화할 경우, 예측 벡터(MV Predictor)의 선택, 참조 픽처의 인덱스(RefIdx)의 전송, 커런트 움직임 벡터와 예측 벡터의 차분 벡터(MVD)의 전송 등을 공통화할 필요가 있다.
그러나, Intra BC에서 사용되는 움직임 벡터의 부호화 시에, 인터 부호화에서 사용되는 움직임 벡터를 참조하여 생성된 예측 벡터가 사용되는 경우, 차분 벡터가 커져서, 부호화 효율이 저하된다.
본 개시는 이러한 상황을 감안하여 이루어진 것으로, 화면 내의 상관성을 이용한 예측을 행할 때의 부호화 효율을 향상시킬 수 있도록 하는 것이다.
본 개시의 제1 측면의 화상 처리 장치는, 화면 내의 상관성을 이용한 예측에 사용되는 커런트 블록의 커런트 움직임 벡터를 부호화할 때, 커런트 블록의 참조 픽처의 타입과, 커런트 움직임 벡터의 예측 벡터를 생성할 때 참조하는 레퍼런스 움직임 벡터의 후보에 대응하는 후보 블록의 참조 픽처의 타입이 다른 경우에, 상기 후보 블록을 낫 어베일러블로 설정하고, 상기 커런트 움직임 벡터의 예측 벡터를, 상기 레퍼런스 움직임 벡터를 사용해서 생성하는 예측 벡터 생성부와, 상기 커런트 움직임 벡터와 상기 예측 벡터 생성부에 의해 생성된 상기 예측 벡터의 차분 벡터를 생성하는 차분 벡터 생성부를 구비하는 화상 처리 장치이다.
본 개시의 제1 측면의 화상 처리 방법은, 본 개시의 제1 측면의 화상 처리 장치에 대응한다.
본 개시의 제1 측면에 있어서는, 화면 내의 상관성을 이용한 예측에 사용되는 커런트 블록의 커런트 움직임 벡터를 부호화할 때, 커런트 블록의 참조 픽처의 타입과, 커런트 움직임 벡터의 예측 벡터를 생성할 때 참조하는 레퍼런스 움직임 벡터의 후보에 대응하는 후보 블록의 참조 픽처의 타입이 다른 경우에, 상기 후보 블록이 낫 어베일러블로 설정되고, 상기 커런트 움직임 벡터의 예측 벡터가, 상기 레퍼런스 움직임 벡터를 사용해서 생성되고, 상기 커런트 움직임 벡터와 상기 예측 벡터의 차분 벡터가 생성된다.
본 개시의 제2 측면의 화상 처리 장치는, 화면 내의 상관성을 이용한 예측에 사용되는 커런트 블록의 커런트 움직임 벡터를 복호할 때, 커런트 블록의 참조 픽처의 타입과, 커런트 움직임 벡터의 예측 벡터를 생성할 때 참조하는 레퍼런스 움직임 벡터의 후보에 대응하는 후보 블록의 참조 픽처의 타입이 다른 경우에, 상기 후보 블록을 낫 어베일러블로 설정하고, 상기 커런트 움직임 벡터의 예측 벡터를, 상기 레퍼런스 움직임 벡터를 사용해서 생성하는 예측 벡터 생성부와, 상기 커런트 움직임 벡터와 상기 예측 벡터의 차분 벡터와, 상기 예측 벡터 생성부에 의해 생성된 상기 예측 벡터를 가산하고, 상기 커런트 움직임 벡터를 생성하는 움직임 벡터 생성부를 구비하는 화상 처리 장치이다.
본 개시의 제2 측면의 화상 처리 방법은, 본 개시의 제2 측면의 화상 처리 장치에 대응한다.
본 개시의 제2 측면에 있어서는, 화면 내의 상관성을 이용한 예측에 사용되는 커런트 블록의 커런트 움직임 벡터를 복호할 때, 커런트 블록의 참조 픽처의 타입과, 커런트 움직임 벡터의 예측 벡터를 생성할 때 참조하는 레퍼런스 움직임 벡터의 후보에 대응하는 후보 블록의 참조 픽처의 타입이 다른 경우에, 상기 후보 블록이 낫 어베일러블로 설정되고, 상기 커런트 움직임 벡터의 예측 벡터가, 상기 레퍼런스 움직임 벡터를 사용해서 생성되고, 상기 커런트 움직임 벡터와 상기 예측 벡터의 차분 벡터와, 상기 예측 벡터가 가산되고, 상기 커런트 움직임 벡터가 생성된다.
또한, 제1 및 제2 측면의 화상 처리 장치는, 컴퓨터에 프로그램을 실행시킴으로써 실현할 수 있다.
또한, 제1 및 제2 측면의 화상 처리 장치를 실현하기 위해서, 컴퓨터에 실행시키는 프로그램은, 전송 매체를 통해서 전송함으로써, 또는 기록 매체에 기록하여, 제공할 수 있다.
제1 및 제2 측면의 화상 처리 장치는, 독립된 장치여도 되고, 하나의 장치를 구성하고 있는 내부 블록이어도 된다.
본 개시의 제1 측면에 따르면, 화상을 부호화할 수 있다. 또한, 본 개시의 제1 측면에 따르면, 화면 내의 상관성을 이용한 예측을 행할 때의 부호화 효율을 향상시킬 수 있다.
본 개시의 제2 측면에 따르면, 부호화 스트림을 복호할 수 있다. 또한, 본 개시의 제2 측면에 따르면, 화면 내의 상관성을 이용한 예측을 행할 때의 부호화 효율을 향상시킨 부호화 스트림을 복호할 수 있다.
또한, 여기에 기재된 효과는 반드시 한정되는 것은 아니고, 본 개시 중에 기재된 어느 효과여도 된다.
도 1은 Intra BC를 설명하는 도면이다.
도 2는 Intra BC와 인터 부호화의 차이를 설명하는 도면이다.
도 3은 HEVC에 있어서의 참조 픽처의 타입을 설명하는 도면이다.
도 4는 HEVC에 있어서의 후보 블록의 설정의 예를 나타내는 도면이다.
도 5는 HEVC에 있어서의 후보 블록의 설정의 예를 나타내는 도면이다.
도 6은 레퍼런스 움직임 벡터의 후보를 설명하는 도면이다.
도 7은 제1 실시 형태에 있어서의 후보 블록의 설정의 예를 나타내는 도면이다.
도 8은 제1 실시 형태에 있어서의 후보 블록의 설정의 예를 나타내는 도면이다.
도 9는 HEVC에 있어서의 참조 픽처의 후보의 예를 나타내는 도면이다.
도 10은 HEVC에 있어서의 참조 픽처 리스트의 작성 처리를 설명하는 도면이다.
도 11은 제1 실시 형태에 있어서의 참조 픽처의 후보의 예를 나타내는 도면이다.
도 12는 제1 실시 형태에 있어서의 참조 픽처 리스트의 작성 처리를 설명하는 도면이다.
도 13은 본 개시를 적용한 부호화 장치의 제1 실시 형태의 구성예를 도시하는 블록도이다.
도 14는 도 13의 부호화부의 구성예를 도시하는 블록도이다.
도 15는 도 13의 부호화 장치의 스트림 생성 처리를 설명하는 흐름도이다.
도 16은 도 15의 부호화 처리의 상세를 설명하는 흐름도이다.
도 17은 도 15의 부호화 처리의 상세를 설명하는 흐름도이다.
도 18은 도 16의 참조 픽처 작성 처리의 상세를 설명하는 흐름도이다.
도 19는 도 16의 예측 벡터 리스트 생성 처리의 상세를 설명하는 흐름도이다.
도 20은 본 개시를 적용한 복호 장치의 제1 실시 형태의 구성예를 도시하는 블록도이다.
도 21은 도 20의 복호부의 구성예를 도시하는 블록도이다.
도 22는 도 20의 복호 장치의 화상 생성 처리를 설명하는 흐름도이다.
도 23은 도 22의 복호 처리의 상세를 설명하는 흐름도이다.
도 24는 제2 실시 형태에 있어서의 예측 벡터 리스트의 생성 방법을 설명하는 도면이다.
도 25는 제2 실시 형태에 있어서의 예측 벡터 리스트의 생성 방법을 설명하는 도면이다.
도 26은 제2 실시 형태에 있어서의 예측 벡터 리스트의 생성 방법을 설명하는 도면이다.
도 27은 제2 실시 형태에 있어서의 후보 블록의 설정의 예를 나타내는 도면이다.
도 28은 제2 실시 형태에 있어서의 참조 픽처 작성 처리의 상세를 설명하는 흐름도이다.
도 29는 제2 실시 형태에 있어서의 예측 벡터 리스트 생성 처리의 상세를 설명하는 흐름도이다.
도 30은 제3 실시 형태에 있어서의 참조 픽처 리스트 작성 처리를 설명하는 도면이다.
도 31은 제3 실시 형태에 있어서의 참조 픽처 리스트 작성 처리의 상세를 설명하는 흐름도이다.
도 32는 컴퓨터의 하드웨어 구성예를 도시하는 블록도이다.
도 33은 본 개시를 적용한 텔레비전 장치의 개략 구성예를 도시하는 도면이다.
도 34는 본 개시를 적용한 휴대 전화기의 개략 구성예를 도시하는 도면이다.
도 35는 본 개시를 적용한 기록 재생 장치의 개략 구성예를 도시하는 도면이다.
도 36은 본 개시를 적용한 촬상 장치의 개략 구성예를 도시하는 도면이다.
도 37은 본 개시를 적용한 비디오 세트의 개략적인 구성의 일례를 나타내는 도면이다.
도 38은 본 개시를 적용한 비디오 프로세서의 개략적인 구성의 일례를 나타내는 도면이다.
도 39는 본 개시를 적용한 비디오 프로세서의 개략적인 구성의 다른 예를 나타내는 도면이다.
이하, 본 개시의 전제 및 본 개시를 실시하기 위한 형태(이하, 실시 형태라고 한다)에 대해서 설명한다. 또한, 설명은 이하의 순서로 행한다.
0. 본 개시의 전제(도 1 및 도 2)
1. 제1 실시 형태: 부호화 장치 및 복호 장치(도 3 내지 도 23)
2. 제2 실시 형태: 부호화 장치 및 복호 장치(도 24 내지 도 29)
3. 제3 실시 형태: 부호화 장치 및 복호 장치(도 30 및 도 31)
4. 제4 실시 형태: 컴퓨터(도 32)
5. 제5 실시 형태: 텔레비전 장치(도 33)
6. 제6 실시 형태: 휴대 전화기(도 34)
7. 제7 실시 형태: 기록 재생 장치(도 35)
8. 제8 실시 형태: 촬상 장치(도 36)
9. 제9 실시 형태: 비디오 세트(도 37 내지 도 39)
<본 개시의 전제>
(Intra BC의 설명)
도 1은 Intra BC를 설명하는 도면이다.
도 1에 도시한 바와 같이, Intra BC에서는, 픽처(10) 내의 PU(Prediction Unit)(11)의 예측에 사용하는 참조 픽처가 픽처(10)이다. 따라서, PU(11)와 동일한 픽처(10) 내에 포함되는, PU(11)와 상관성이 높은 블록(12)이 PU(11)의 참조 블록이 되고, PU(11)와 PU(12) 사이의 벡터(13)가 움직임 벡터로서 검출된다.
(Intra BC와 인터 부호화의 차이의 설명)
도 2는 Intra BC와 인터 부호화의 차이를 설명하는 도면이다.
도 2에 도시한 바와 같이, Intra BC의 움직임 벡터의 정밀도는 정수 화소 정밀도이지만, 인터 부호화의 움직임 벡터 정밀도는 1/4 화소 정밀도이다. 또한, Intra BC에서는, 동일 화면 내의 부호화가 끝난 블록이 참조 블록이 되기 때문에, 움직임 벡터의 세로 방향과 가로 방향 중 적어도 한쪽 길이가 길어진다. 그러나, 인터 부호화에서는, 다른 화면의 부호화가 끝난 블록이 참조 블록이 되기 때문에, 움직임 벡터의 길이는, 화면간의 움직임에 의존한다.
또한, Intra BC에서는, 참조 픽처로서 필터 처리 전의 픽처가 사용되지만, 인터 부호화에서는 참조 픽처로서 필터 처리 후의 픽처가 사용된다. 일반적으로, 필터 처리 전의 픽처는 캐시에 기억되고, 필터 처리 후의 픽처는 DRAM(Dynamic Random Access Memory)에 기억된다.
이상과 같이, Intra BC와 인터 부호화의 움직임 벡터의 정밀도나 길이는 다르다. 따라서, Intra BC와 인터 부호화가 공통화되고, Intra BC의 움직임 벡터의 부호화 시에, 인터 부호화의 움직임 벡터를 참조하여 생성된 예측 벡터가 사용되면, 차분 벡터가 커져서, 부호화 효율이 저하된다. 또한, 이하에서는, 예측 벡터를 생성할 때 참조되는 움직임 벡터를 레퍼런스 움직임 벡터라고 한다.
또한, Intra BC와 인터 부호화에 있어서의 참조 픽처의 보존처는 다르다. 따라서, Intra BC와 인터 부호화가 공통화되는 경우, 참조 픽처의 보존처로서 캐시와 DRAM이 혼재한다. 그러나, 복호 장치는 참조 픽처의 보존처가 어느 것인지 알지 못하기 때문에, 쓸데없이 DRAM으로 액세스하게 된다. 그 결과, DRAM의 액세스 대역이 증가한다.
<제1 실시 형태>
(제1 실시 형태의 개요)
먼저, 도 3 내지 도 12를 참조하여, 제1 실시 형태의 개요에 대해서 설명한다.
도 3은 HEVC에 있어서의 참조 픽처의 타입을 설명하는 도면이다.
도 3에 도시한 바와 같이, HEVC로는, 현재의 처리 대상의 픽처(이하, 커런트 픽처라고 한다)와의 POC(Picture Order Count)의 차분이 작은 참조 픽처의 타입이, STRP(Short-Term Reference Picture)로 된다. 또한, 커런트 픽처 (Current Pic)와의 POC의 차분이 큰 참조 픽처의 타입이, LTRP(Long-Term Reference Picture)로 된다.
그리고, 도 4 및 도 5에 도시한 바와 같이, 커런트 픽처 내의 현재의 처리 대상의 PU(이하, 커런트 블록이라고 한다)의 참조 픽처와, 레퍼런스 움직임 벡터의 후보에 대응하는 PU(이하, 후보 블록이라고 한다)의 참조 픽처의 타입이 다른 경우, 후보 블록이 낫 어베일러블(not available)로 설정된다.
예를 들어, 도 3에 도시한 바와 같이, 커런트 블록(21)의 참조 픽처의 타입이 STRP이고, 커런트 움직임 벡터(target MV)의 레퍼런스 움직임 벡터의 후보(PMV)에 대응하는 후보 블록(22)의 참조 픽처의 타입이 LTRP인 경우, 후보 블록(22)이 낫 어베일러블로 설정된다. 이에 의해, 후보 블록(22)의 움직임 벡터는, 레퍼런스 움직임 벡터의 후보로부터 제외되고, 예측 벡터의 생성에는 사용되지 않는다.
또한, 후보 블록은, 커런트 블록과 동일한 시각의 좌측, 좌측 상단, 좌측 하방, 상측 및 우측 상단에 인접하는 PU, 및 다른 시각의 커런트 블록과 동일한 위치 및 우측 하단에 인접하는 PU이다. 이하에서는, 후보 블록 중 커런트 블록과 동일한 시각의 후보 블록을 특별히 구별하는 경우, 공간 방향 후보 블록이라 하며, 커런트 블록과 다른 시각의 후보 블록을 특별히 구별하는 경우, 시간 방향 후보 블록이라고 한다.
또한, 도 4 및 도 5에 도시한 바와 같이, 커런트 블록의 참조 픽처와 후보 블록의 참조 픽처의 타입이 동일한 경우, 후보 블록은 어베일러블(available)로 설정된다. 이에 의해, 후보 블록의 움직임 벡터는, 레퍼런스 움직임 벡터의 후보로 된다.
커런트 블록의 참조 픽처와 후보 블록의 참조 픽처의 타입이 양쪽 모두 STRP인 경우의 후보 블록의 움직임 벡터가, 레퍼런스 움직임 벡터로서 선택되는 경우, 예측 벡터는, 커런트 블록의 참조 픽처와 후보 블록의 참조 픽처의 POC의 차분에 기초하여, 레퍼런스 움직임 벡터를 스케일링함으로써 생성된다.
한편, 커런트 블록의 참조 픽처와 후보 블록의 참조 픽처의 타입이 양쪽 모두 LTRP인 경우의 후보 블록의 움직임 벡터가, 레퍼런스 움직임 벡터로서 선택되는 경우, 레퍼런스 움직임 벡터가, 그대로 예측 벡터로 된다(not scaled).
또한, 현재의 HEVC로는, Intra BC와 인터 부호화가 공통화되어 있지 않기 때문에, 참조 픽처의 타입은, 도 5에 도시한 바와 같이, LTRP와 STRP 이외 상정되어 있지 않다. 따라서, 참조 픽처의 타입이, Intra BC에서 사용되는 참조 픽처의 타입인 「Intra BC」인 경우의 후보 블록의 설정은 미정이다.
Intra BC와 인터 부호화를 단순하게 공통화한 경우, Intra BC에서 사용되는 참조 픽처의 타입은, 실제의 타입과는 달리, STRP로 설정된다. 따라서, 도 6에 도시한 바와 같이, 커런트 블록(31)의 Intra BC에서 사용되는 커런트 움직임 벡터(target MV)의 레퍼런스 움직임 벡터의 후보에, 참조 픽처의 실제 타입이 STRP인 후보 블록(32)의 움직임 벡터(PMV)가 포함된다.
그러나, 도 2에서 나타낸 바와 같이, Intra BC와 인터 부호화의 움직임 벡터의 정밀도나 길이는 다르다. 따라서, 커런트 블록(31)의 커런트 움직임 벡터의 레퍼런스 움직임 벡터로서, 후보 블록(32)의 움직임 벡터가 선택되면, 커런트 움직임 벡터와 예측 벡터의 차분 벡터가 커진다. 그 결과, 부호화 효율이 저하된다.
따라서, 제1 실시 형태에서는, Intra BC에서 사용되는 참조 픽처, 즉 실제 타입이 「Intra BC」인 참조 픽처의 타입이 LTRP로 설정된다. 구체적으로는, 참조 픽처의 후보로서 커런트 픽처가 새롭게 정의된다(If intra_block_copy_enabled_flag is equal to 1, the following applies.RefPicCurr=CurrPic). 그리고, 새롭게 정의된 커런트 픽처가, 타입을 LTRP로 설정하는 참조 픽처의 후보에 추가된다(All reference pictures that are included in RefPicCurr, RefPicSetLtCurr and RefPicSetLtFoll are marked as "used for long-term reference”).
이에 의해, 참조 픽처의 후보 리스트인 참조 픽처 리스트에 커런트 픽처가 추가되고, "used for long-term reference"로서 마킹된다. 그 결과, 참조 픽처의 실제 타입이 「Intra BC」인 커런트 블록에 대한 후보 블록의 설정이, 참조 픽처의 실제 타입이 LTRP인 커런트 블록에 대한 후보 블록의 설정과 마찬가지로 행해진다.
구체적으로는, 도 7과 도 8에 도시한 바와 같이, 커런트 블록의 참조 픽처와 후보 블록의 참조 픽처의 실제 타입 중 어느 한쪽이, 「Intra BC」이며, 다른 쪽이 STRP인 경우, 후보 블록이 낫 어베일러블로 설정된다. 이에 의해, 후보 블록의 움직임 벡터는, 레퍼런스 움직임 벡터의 후보로부터 제외되고, 예측 벡터의 생성에는 사용되지 않는다.
또한, 도 7 및 도 8에 도시한 바와 같이, 커런트 블록의 참조 픽처와 후보 블록의 참조 픽처의 실제 타입이 양쪽 모두, 「Intra BC」 또는 LTRP인 경우, 후보 블록은 어베일러블로 설정된다. 이에 의해, 후보 블록의 움직임 벡터는, 레퍼런스 움직임 벡터의 후보로 된다.
이상에 의해, 커런트 블록의 참조 픽처와 후보 블록의 참조 픽처의 실제 타입 중 어느 한쪽이, 「Intra BC」이고, 다른 쪽이 STRP인 경우, 후보 블록의 움직임 벡터는, 예측 벡터의 생성에 사용되지 않고, 부호화 효율이 향상된다.
도 9는 HEVC에 있어서의 참조 픽처의 후보의 예를 나타내는 도면이다.
도 9에 도시한 바와 같이, HEVC에서는, 커런트 픽처 (C)보다 표시순으로 앞이며, 커런트 픽처와의 POC의 차분이 작은 픽처(Short-term before Curr)가, 참조 픽처의 후보로 된다. 또한, 커런트 픽처 (C)보다 표시순으로 뒤이며, 커런트 픽처와의 POC의 차분이 작은 픽처(Short-term after Curr)가, 참조 픽처의 후보로 된다.
또한, 커런트 픽처 (C)보다 표시순으로 앞이며, 커런트 픽처와의 POC의 차분이 큰 픽처(Long-term)가, 참조 픽처의 후보로 된다. 또한, 커런트 픽처 (C)와 표시순이 동일하지만, 시점, 비트수, 공간 해상도, S/N, 프레임레이트, 색차 신호 포맷 등이 다른 픽처(Inter-layer)가, 참조 픽처의 후보로 된다.
도 10은 도 9의 참조 픽처의 후보를 등록하는 참조 픽처 리스트의 작성 처리를 설명하는 도면이다.
도 10에 도시한 바와 같이, 참조 픽처 리스트의 작성 처리에서는, 먼저, 참조 픽처의 후보 종류마다, 참조 픽처의 후보 픽처를 특정하는 정보(이하, 픽처 특정 정보라고 한다)가 등록된 개별 리스트가 작성된다. 즉, 픽처(Short-term before Curr)의 픽처 특정 정보가, 커런트 픽처와의 POC의 차분이 작은 순서대로 등록되는 RefPicSetStCurrBefore 리스트가 작성된다.
마찬가지로, 픽처(Short-term after Curr)의 RefPicSetStCurrAfter 리스트와, 픽처(Long-term)의 RefPicSetLtCurr 리스트가 작성된다. 또한, 픽처(Inter-layer)의 픽처 특정 정보가 소정의 순서대로 등록되는 RefPicSetIvCurr 리스트가 작성된다.
RefPicSetStCurrBefore 리스트, RefPicSetStCurrAfter 리스트 및RefPicSetLtCurr 리스트에 등록되는 각 픽처 특정 정보에는, 그 픽처 특정 정보에 의해 특정되는 픽처를, 커런트 픽처의 참조 픽처의 후보로서 사용할지 여부를 나타내는 used_by_curr이 설정 가능하게 되어 있다. used_by_curr는 커런트 픽처의 참조 픽처의 후보로서 사용하는 것을 나타내는 경우 1이고, 사용하지 않는 것을 나타내는 경우 0이다.
도 10의 예에서는, RefPicSetStCurrBefore 리스트 및 RefPicSetStCurrAfter 리스트의 선두와 선두로부터 2번째의 픽처 특정 정보, 및 RefPicSetLtCurr 리스트의 선두의 픽처 특정 정보의 used_by_curr이 1로 설정되어 있다.
이어서, 개별 리스트에 기초하여, 커런트 픽처보다 표시순이 전인 참조 픽처의 후보를 우선적으로 등록하는 RefPicListTemp0 리스트와, 커런트 픽처보다 표시순이 뒤인 참조 픽처의 후보를 우선적으로 등록하는 RefPicListTemp1 리스트의 2개의 템포럴 리스트가 작성된다.
구체적으로는, used_by_curr이 1로 설정된 RefPicSetStCurrBefore 리스트의 픽처 특정 정보, RefPicSetIvCurr 리스트에 등록된 픽처 특정 정보, used_by_curr이 1로 설정된 RefPicSetStCurrAfter 리스트의 픽처 특정 정보, used_by_curr이 1로 설정된 RefPicSetLtCurr 리스트의 픽처 특정 정보가 순서대로 등록된 RefPicListTemp0 리스트가 작성된다.
또한, used_by_curr이 1로 설정된 RefPicSetStCurrAfter 리스트의 픽처 특정 정보, used_by_curr이 1로 설정된 RefPicSetStCurrBefore 리스트의 픽처 특정 정보, used_by_curr이 1로 설정된 RefPicSetLtCurr 리스트의 픽처 특정 정보, RefPicSetIvCurr 리스트에 등록된 픽처 특정 정보가 순서대로 등록된 RefPicListTemp1 리스트가 작성된다.
이어서, RefPicListTemp0 리스트와 RefPicListTemp1 리스트에 등록되어 있는 픽처 특정 정보의 순번이, 필요에 따라서 변경된다(Reference reordering).
마지막으로, RefpicListTemp0 리스트에 등록되어 있는, 선두로부터 소정수(도 10의 예에서는 5개)의 픽처 특정 정보가, 선두로부터 순서대로 등록된 참조 픽처 리스트 RefPicList0이 작성된다.
또한, RefpicListTemp1 리스트에 등록되어 있는, 선두로부터 소정수(도 10의 예에서는 4개)의 픽처 특정 정보가, 선두로부터 순서대로 등록된 참조 픽처 리스트 RefPicList1이 작성된다.
또한, 참조 픽처 리스트 RefPicList0(RefPicList1)에 등록되는 픽처 특정 정보의 수로부터 1을 감산한 값은, num_ref_idx_l0_active_minus1 (num_ref_idx_l1_active_minus1)로서 슬라이스 헤더 등에 배치된다.
Intra BC와 인터 부호화를 공통화하는 경우, 도 11에 도시한 바와 같이, 참조 픽처의 후보로서, Intra BC의 참조 픽처인 커런트 픽처(CurrPic)를 추가할 필요가 있다.
제1 실시 형태에서는, 상술한 바와 같이, 참조 픽처의 후보로서 커런트 픽처가 정의되기 때문에, 참조 픽처 리스트의 작성 처리에 있어서, 커런트 픽처의 픽처 특정 정보가 등록된 커런트 픽처 리스트(RefPicCurr)를 작성할 수 있다. 그 결과, 참조 픽처 리스트에 커런트 픽처의 픽처 특정 정보가 등록된다.
그러나, Intra BC와 인터 부호화를 단순히 공통화한 경우, 커런트 픽처의 픽처 특정 정보는, 참조 픽처 리스트의 어느 위치에 등록되는지 알 수 없다.
한편, 도 2에서 나타낸 바와 같이, Intra BC와 인터 부호화에 있어서의 참조 픽처의 보존처는 다르다. 따라서, 쓸데없이 DRAM으로 액세스하지 않기 위해서는, 복호 장치는 부호화 장치로부터 참조 픽처 리스트 내의 참조 픽처의 픽처 특정 정보의 인덱스를 취득했을 때, 참조 픽처가 Intra BC와 인터 부호화 중 어느 것에 있어서의 참조 픽처인지를 인식할 필요가 있다. 즉, 복호 장치는 참조 픽처가 커런트 픽처 또는 커런트 픽처와는 다른 픽처의 어느 것인지를 인식할 필요가 있다.
따라서, 제1 실시 형태에서는, 도 12에 도시한 바와 같이, RefPicList0 리스트 및 RefPicList1 리스트의 2개의 참조 픽처 리스트의 선두에, 커런트 픽처 리스트에 등록되는 커런트 픽처의 픽처 특정 정보가 등록된다.
이에 의해, 복호 장치는, 부호화 장치로부터 참조 픽처 리스트의 선두 인덱스를 취득한 경우, 참조 픽처가 커런트 픽처인, 즉 Intra BC에 있어서의 참조 픽처인 것을 인식할 수 있다. 그 결과, 복호 장치는, DRAM에는 액세스하지 않고, 캐시로부터 커런트 픽처를 참조 픽처로서 판독할 수 있다.
또한, 커런트 픽처의 픽처 특정 정보는 RefPicList0 리스트에만 등록되도록 해도 된다. 또한, 커런트 픽처의 픽처 특정 정보가 등록되는 위치는, 선두 외에, 최후미 등의 미리 결정된 임의의 위치로 할 수 있다.
(부호화 장치의 제1 실시 형태의 구성예)
도 13은 본 개시를 적용한 화상 처리 장치로서의 부호화 장치의 제1 실시 형태의 구성예를 도시하는 블록도이다.
도 13의 부호화 장치(50)는, 설정부(51), 부호화부(52) 및 전송부(53)에 의해 구성되고, 픽처를 HEVC에 준하는 방식으로 부호화한다.
부호화 단위는, 재귀적인 계층 구조를 갖는 Coding UNIT(CU)이다. 구체적으로는, CU는 픽처를 고정 사이즈의 CTU(Coding Tree Unit)로 분할하고, 그 CTU를 임의인 횟수만큼 수평 방향 및 수직 방향으로 2분할함으로써 설정된다. CU의 최대의 사이즈는 LCU(Largest Coding Unit)이고, 최소 사이즈는 SCU(Smallest Coding Unit)이다. 또한, CU는 PU나 TU(transform unit)로 분할된다.
부호화 장치(50)의 설정부(51)는 SPS(Sequence Parameter Set), PPS(Picture Parameter Set), VUI(Video Usability Information), SEI(Supplemental Enhancement Information) 등의 파라미터 세트를 설정한다. SPS에는 LCU와 SCU의 사이즈를 지정하는 정보, 참조 픽처 리스트를 작성하기 위한 참조 픽처 리스트 정보 등이 포함된다.
참조 픽처 리스트 정보는, 예를 들어 개별 리스트 및 커런트 픽처 리스트에 등록되는 픽처 특정 정보를 지정하는 정보, used_by_curr 등으로 이루어진다. 설정부(51)는 설정된 파라미터 세트를 부호화부(52)에 공급한다.
부호화부(52)에는, 프레임 단위의 픽처가 입력된다. 부호화부(52)는 입력된 픽처를 HEVC에 준하는 방식으로 부호화한다. 이때, 필요에 따라, 설정부(51)로부터 공급되는 파라미터 세트가 사용된다. 부호화부(52)는 부호화의 결과 얻어지는 부호화 데이터와 설정부(51)로부터 공급되는 파라미터 세트로부터 부호화 스트림을 생성하고, 전송부(53)로 공급한다.
전송부(53)는 부호화부(52)로부터 공급되는 부호화 스트림을, 후술하는 복호 장치로 전송한다.
(부호화부의 구성예)
도 14는 도 13의 부호화부(52)의 구성예를 도시하는 블록도이다.
도 14의 부호화부(52)는 A/D 변환부(71), 화면 재배열 버퍼(72), 연산부(73), 직교 변환부(74), 양자화부(75), 가역 부호화부(76), 축적 버퍼(77), 생성부(78), 역양자화부(79), 역직교 변환부(80) 및 가산부(81)를 갖는다. 또한, 부호화부(52)는 필터(82), 프레임 메모리(85), 스위치(86), 인트라 예측부(87), 리스트 작성부(88), 움직임 예측·보상부(89), 예측 벡터 생성부(90), 차분 벡터 생성부(91), 예측 화상 선택부(92) 및 레이트 제어부(93)를 갖는다.
부호화부(52)의 A/D 변환부(71)는 부호화 대상으로서 입력된 프레임 단위의 픽처를 A/D 변환한다. A/D 변환부(71)는 변환 후의 디지털 신호인 픽처를 화면 재배열 버퍼(72)에 출력해서 기억시킨다.
화면 재배열 버퍼(72)는 기억한 표시의 순번의 프레임 단위의 픽처를, GOP(Group of Picture) 구조에 따라서, 부호화를 위한 순번으로 재배열한다. 화면 재배열 버퍼(72)는 재배열 후의 픽처를, 커런트 픽처로 해서, 연산부(73), 인트라 예측부(87) 및 움직임 예측·보상부(89)에 출력한다.
연산부(73)는 화면 재배열 버퍼(72)로부터 공급되는 커런트 픽처로부터, 예측 화상 선택부(92)로부터 공급되는 예측 화상을 감산함으로써 부호화를 행한다. 연산부(73)는, 그 결과 얻어지는 픽처를, 잔차 정보로서 직교 변환부(74)에 출력한다. 또한, 예측 화상 선택부(92)로부터 예측 화상이 공급되지 않는 경우, 연산부(73)는 화면 재배열 버퍼(72)로부터 판독된 커런트 픽처를 그대로 잔차 정보로서 직교 변환부(74)에 출력한다.
직교 변환부(74)는 연산부(73)로부터의 잔차 정보를 TU 단위로 직교 변환한다. 직교 변환부(74)는 직교 변환의 결과 얻어지는 직교 변환 계수를 양자화부(75)에 공급한다.
양자화부(75)는 직교 변환부(74)로부터 공급되는 직교 변환 계수에 대하여 양자화를 행한다. 양자화부(75)는 양자화된 직교 변환 계수를 가역 부호화부(76)에 공급한다.
가역 부호화부(76)는 최적 인트라 예측 모드를 나타내는 인트라 예측 모드 정보를 인트라 예측부(87)로부터 취득한다. 또한, 가역 부호화부(76)는 최적 인터 예측 모드를 나타내는 인터 예측 모드 정보와 참조 픽처의 인덱스 등을 움직임 예측·보상부(89)로부터 취득하고, 움직임 벡터 정보를 차분 벡터 생성부(91)로부터 취득한다. 또한, 가역 부호화부(76)는 필터(82)로부터 적응 오프셋 필터 처리에 관한 오프셋 필터 정보를 취득한다.
가역 부호화부(76)는 양자화부(75)로부터 공급되는 양자화된 직교 변환 계수에 대하여, 가변 길이 부호화(예를 들어, CAVLC(Context-Adaptive Variable Length Coding) 등), 산술 부호화(예를 들어, CABAC(Context-Adaptive Binary Arithmetic Coding) 등) 등의 가역 부호화를 행한다.
또한, 가역 부호화부(76)는 인트라 예측 모드 정보 또는 인터 예측 모드 정보, 움직임 벡터 정보 및 참조 픽처의 인덱스, 및 오프셋 필터 정보 등을, 부호화에 관한 부호화 정보로 해서 가역 부호화한다. 가역 부호화부(76)는 가역 부호화된 부호화 정보, 참조 픽처 리스트의 등록수로부터 1을 감산한 소정수(num_ref_idx_lo_minus1, num_ref_idx_lo_minus1) 등을 슬라이스 헤더 등에 배치한다.
가역 부호화부(76)는 양자화부(75)로부터 공급되는 직교 변환 계수에 슬라이스 헤더를 부가하고, 부호화 데이터로서 축적 버퍼(77)에 공급한다.
축적 버퍼(77)는 가역 부호화부(76)로부터 공급되는 부호화 데이터를, 일시적으로 기억한다. 또한, 축적 버퍼(77)는 기억하고 있는 부호화 데이터를 생성부(78)에 공급한다.
생성부(78)는 도 13의 설정부(51)로부터 공급되는 파라미터 세트와 축적 버퍼(77)로부터 공급되는 부호화 데이터로부터 부호화 스트림을 생성하고, 도 13의 전송부(53)에 공급한다.
또한, 양자화부(75)로부터 출력된, 양자화된 직교 변환 계수는, 역양자화부(79)에도 입력된다. 역양자화부(79)는 양자화부(75)에 의해 양자화된 직교 변환 계수에 대하여, 양자화부(75)에 있어서의 양자화 방법에 대응하는 방법으로 역양자화를 행한다. 역양자화부(79)는 역양자화의 결과 얻어지는 직교 변환 계수를 역직교 변환부(80)에 공급한다.
역직교 변환부(80)는 TU 단위로, 역양자화부(79)로부터 공급되는 직교 변환 계수에 대하여, 직교 변환부(74)에 있어서의 직교 변환 방법에 대응하는 방법으로 역직교 변환을 행한다. 역직교 변환부(80)는, 그 결과 얻어지는 잔차 정보를 가산부(81)에 공급한다.
가산부(81)는 역직교 변환부(80)로부터 공급되는 잔차 정보와, 예측 화상 선택부(92)로부터 공급되는 예측 화상을 가산함으로써, 커런트 픽처를 국소적으로 복호한다. 또한, 예측 화상 선택부(92)로부터 예측 화상이 공급되지 않는 경우, 가산부(81)는 역직교 변환부(80)로부터 공급되는 잔차 정보를 복호 결과로 한다. 가산부(81)는 국소적으로 복호된 커런트 픽처를 프레임 메모리(85)에 공급한다. 또한, 가산부(81)는 모든 영역이 복호된 커런트 픽처를 부호화가 끝난 픽처로서 필터(82)에 공급한다.
필터(82)는 가산부(81)로부터 공급되는 부호화가 끝난 픽처에 대하여, 필터 처리를 행한다. 구체적으로는, 필터(82)는 디블록 필터 처리와 적응 오프셋 필터(SAO(Sample adaptive offset)) 처리를 순서대로 행한다. 필터(82)는 필터 처리 후의 부호화가 끝난 픽처를 프레임 메모리(85)에 공급한다. 또한, 필터(82)는 행해진 적응 오프셋 필터 처리의 종류와 오프셋을 나타내는 정보를, 오프셋 필터 정보로서 가역 부호화부(76)에 공급한다.
프레임 메모리(85)는, 예를 들어 캐시와 DRAM에 의해 구성된다. 프레임 메모리(85)는 가산부(81)로부터 공급되는 커런트 픽처를 캐시에 기억하고, 필터(82)로부터 공급되는 부호화가 끝난 픽처를 DRAM에 기억한다. 캐시에 기억된 커런트 픽처 중 커런트 블록에 인접하는 화소는, 주변 화소로서 스위치(86)를 통해서 인트라 예측부(87)에 공급된다.
또한, 캐시에 기억된 커런트 픽처 및 DRAM에 기억된 부호화가 끝난 픽처는, 참조 픽처로서 스위치(86)를 통해서 움직임 예측·보상부(89)에 출력된다.
인트라 예측부(87)는 커런트 블록에 대하여, 프레임 메모리(85)로부터 스위치(86)를 통해서 판독된 주변 화소를 사용하여, 후보가 되는 모든 인트라 예측 모드의 인트라 예측 처리를 행한다.
또한, 인트라 예측부(87)는 화면 재배열 버퍼(72)로부터 판독된 커런트 픽처와, 인트라 예측 처리의 결과 생성되는 예측 화상에 기초하여, 후보가 되는 모든 인트라 예측 모드에 대하여 비용 함수값(상세는 후술한다)을 산출한다. 그리고, 인트라 예측부(87)는 비용 함수값이 최소가 되는 인트라 예측 모드를, 최적 인트라 예측 모드로 결정한다.
인트라 예측부(87)는 최적 인트라 예측 모드로 생성된 예측 화상 및 대응하는 비용 함수값을 예측 화상 선택부(92)에 공급한다. 인트라 예측부(87)는 예측 화상 선택부(92)로부터 최적 인트라 예측 모드로 생성된 예측 화상의 선택이 통지된 경우, 인트라 예측 모드 정보를 가역 부호화부(76)에 공급한다.
또한, 비용 함수값은 RD(Rate Distortion) 비용이라고도 하며, 예를 들어 H.264/AVC 방식에 있어서의 참조 소프트웨어인 JM(Joint Model)에서 정해져 있는, High Complexity 모드 또는 Low Complexity 모드의 방법에 기초하여 산출된다. 또한, H.264/AVC 방식에 있어서의 참조 소프트웨어는, http://iphome.hhi.de/suehring/tml/index.htm에 있어서 공개되어 있다.
구체적으로는, 비용 함수값의 산출 방법으로서 High Complexity 모드가 채용되는 경우, 후보가 되는 모든 예측 모드에 대하여, 가령 복호까지가 행해지고, 다음 식 (1)로 표시되는 비용 함수값이 각 예측 모드에 대하여 산출된다.
Figure pct00001
D는 원 화상과 복호 화상의 차분(변형), R은 직교 변환의 계수까지 포함한 발생 부호량, λ는 양자화 파라미터 QP의 함수로서 부여되는 라그랑주의 미정승수이다.
한편, 비용 함수값의 산출 방법으로서 Low Complexity 모드가 채용되는 경우, 후보가 되는 모든 예측 모드에 대하여, 예측 화상의 생성 및 부호화 정보의 부호량의 산출이 행해지고, 다음 식 (2)로 표시되는 비용 함수 Cost(Mode)가 각 예측 모드에 대하여 산출된다.
Figure pct00002
D는 원 화상과 예측 화상의 차분(변형), Header_Bit는 부호화 정보의 부호량, QPtoQuant는 양자화 파라미터 QP의 함수로서 부여되는 함수이다.
Low Complexity 모드에 있어서는, 모든 예측 모드에 대하여, 예측 화상을 생성하기만 해도 되며, 복호 화상을 생성할 필요가 없기 때문에, 연산량이 적어도 충분하다.
리스트 작성부(88)는 도 13의 설정부(51)에 의해 설정되는 SPS에 포함되는 참조 픽처 리스트 정보, 슬라이스 헤더에 배치되는 정보 등에 기초하여, 예를 들어 슬라이스 단위로, 상술한 참조 픽처 리스트 작성 처리를 행한다.
즉, 리스트 작성부(88)는 참조 픽처 리스트 정보, 슬라이스 헤더에 배치되는 정보 등에 기초하여, 개별 리스트의 작성, 템포럴 리스트의 작성 및 템포럴 리스트에 등록되어 있는 픽처 특정 정보의 순번의 교체를 순서대로 행하고, 참조 픽처 리스트를 작성한다. 그 후, 리스트 작성부(88)는 참조 픽처 리스트의 선두에 커런트 픽처의 픽처 특정 정보를 등록한다.
또한, 리스트 작성부(88)는 참조 픽처 리스트에 등록되어 있는 각 픽처 특정 정보에, 그 픽처 특정 정보에 의해 특정되는 픽처의 참조 픽처로서의 타입으로 해서, SRTP 또는 LTRP를 설정한다. 예를 들어, 리스트 작성부(88)(설정부)는 커런트 픽처의 픽처 특정 정보에, 커런트 픽처의 타입으로서 LTRP(used for long-term reference)를 설정한다. 리스트 작성부(88)는 참조 픽처 리스트를 유지함과 함께, 움직임 예측·보상부(89)에 공급한다.
움직임 예측·보상부(89)는 커런트 블록에 대하여, 후보가 되는 모든 인터 예측 모드의 움직임 예측·보상 처리를 행한다. 구체적으로는, 움직임 예측·보상부(89)는 리스트 작성부(88)로부터 공급되는 참조 픽처 리스트에 기초하여, 그 참조 픽처 리스트에 등록되어 있는 픽처 특정 정보로 특정되는 픽처를, 참조 픽처의 후보로서, 프레임 메모리(85)로부터 스위치(86)를 통해서 판독한다.
움직임 예측·보상부(89)는 화면 재배열 버퍼(72)로부터의 커런트 픽처와, 참조 픽처의 후보로서 판독된 커런트 픽처에 기초하여, 후보가 되는 모든 인터 예측 모드의 커런트 블록의 Intra BC의 움직임 벡터를 정수 화소 정밀도로 검출한다. 또한, 움직임 예측·보상부(89)는 화면 재배열 버퍼(72)로부터의 커런트 픽처와, 참조 픽처의 후보로서 판독된 커런트 픽처 이외의 픽처에 기초하여, 후보가 되는 모든 인터 예측 모드의 커런트 블록의 인터 부호화의 움직임 벡터를 분수 화소 정밀도로 검출한다.
그리고, 움직임 예측·보상부(89)는 검출된 움직임 벡터에 기초하여 참조 픽처의 후보에 보상 처리를 실시하고, 예측 화상을 생성한다. 또한, 인터 예측 모드란, 커런트 블록의 사이즈 등을 나타내는 모드이다.
또한, 움직임 예측·보상부(89)는 화면 재배열 버퍼(72)로부터 공급되는 커런트 픽처와 예측 화상에 기초하여, 후보가 되는 모든 인터 예측 모드 및 참조 픽처의 후보에 대하여 비용 함수값을 산출한다. 움직임 예측·보상부(89)는 비용 함수값이 최소가 되는 인터 예측 모드를 최적 인터 예측 모드로 결정한다. 그리고, 움직임 예측·보상부(89)는 비용 함수값의 최솟값과, 대응하는 예측 화상을 예측 화상 선택부(92)에 공급한다.
움직임 예측·보상부(89)는 예측 화상 선택부(92)로부터 최적 인터 예측 모드로 생성된 예측 화상의 선택이 통지된 경우, 그 예측 화상에 대응하는 커런트 블록의 움직임 벡터를 커런트 움직임 벡터에 결정하고, 차분 벡터 생성부(91)에 공급한다. 또한, 움직임 예측·보상부(89)는, 그 예측 화상에 대응하는 참조 픽처의 후보를 참조 픽처에 결정하고, 그 참조 픽처의 픽처 특정 정보의 참조 픽처 리스트 내의 위치에 대응하는 인덱스를, 예측 벡터 생성부(90)와 가역 부호화부(76)에 공급한다. 또한, 움직임 예측·보상부(89)는 인터 예측 모드 정보를, 가역 부호화부(76)에 공급한다.
예측 벡터 생성부(90)는 움직임 예측·보상부(89)로부터 공급되는 인덱스에 기초하여, 참조 픽처가 등록되어 있는 참조 픽처 리스트마다, 커런트 움직임 벡터의 예측 벡터 리스트를 생성한다.
구체적으로는, 예측 벡터 생성부(90)는 인덱스에 기초하여, 그 인덱스에 대응하는 참조 픽처의 타입을, 리스트 작성부(88)에 유지되어 있는 참조 픽처 리스트로부터 판독하고, 유지한다. 예측 벡터 생성부(90)는 공간 방향 후보 블록을 소정의 순서대로 처리 대상의 후보 블록으로 설정하고, 시간 방향 후보 블록을 소정의 순서대로 처리 대상의 후보 블록으로 설정한다.
예측 벡터 생성부(90)는 자기 자신이 유지하고 있는 처리 대상의 후보 블록의 참조 픽처의 타입과, 리스트 작성부(88)로부터 판독된 커런트 블록의 참조 픽처의 타입을 비교한다. 예측 벡터 생성부(90)는, 그들이 일치하는 경우, 처리 대상의 후보 블록을 어베일러블로 설정하고, 일치하지 않는 경우, 처리 대상의 후보 블록을 낫 어베일러블로 설정한다.
예측 벡터 생성부(90)는 처리 대상의 후보 블록이 어베일러블로 설정된 경우, 처리 대상의 후보 블록의 움직임 벡터인 레퍼런스 움직임 벡터의 후보를 사용하여, 커런트 움직임 벡터의 예측 벡터를 생성한다. 그리고, 예측 벡터 생성부(90)는 생성된 소정수의 공간 방향 후보 블록과 시간 방향 후보 블록의 예측 벡터를 등록한 예측 벡터 리스트를 생성한다. 또한, 생성된 예측 벡터의 수가 소정수에 도달하지 않는 경우에는, 0 벡터 등이 예측 벡터 리스트에 등록된다. 예측 벡터 생성부(90)는 예측 벡터 리스트를 차분 벡터 생성부(91)에 공급한다.
차분 벡터 생성부(91)는 예측 벡터 생성부(90)로부터 공급되는 예측 벡터 리스트에 등록된 소정의 수의 예측 벡터 각각과, 커런트 움직임 벡터의 차분 벡터를 생성함으로써, 커런트 움직임 벡터를 예측 부호화한다. 차분 벡터 생성부(91)는 차분 벡터의 최솟값과, 대응하는 예측 벡터의 예측 벡터 리스트 내의 위치에 대응하는 인덱스를, 움직임 벡터 정보로 해서, 가역 부호화부(76)에 공급한다.
예측 화상 선택부(92)는 인트라 예측부(87) 및 움직임 예측·보상부(89)로부터 공급되는 비용 함수값에 기초하여, 최적 인트라 예측 모드와 최적 인터 예측 모드 중, 대응하는 비용 함수값이 작은 쪽을, 최적 예측 모드로 결정한다. 그리고, 예측 화상 선택부(92)는 최적 예측 모드의 예측 화상을, 연산부(73) 및 가산부(81)에 공급한다. 또한, 예측 화상 선택부(92)는 최적 예측 모드의 예측 화상의 선택을 인트라 예측부(87) 또는 움직임 예측·보상부(89)에 통지한다.
레이트 제어부(93)는 축적 버퍼(77)에 축적된 부호화 데이터에 기초하여, 오버플로우 혹은 언더플로우가 발생하지 않도록, 양자화부(75)의 양자화 동작의 레이트를 제어한다.
(부호화 장치의 처리의 설명)
도 15는 도 13의 부호화 장치(50)의 스트림 생성 처리를 설명하는 흐름도이다.
도 15의 스텝 S11에 있어서, 부호화 장치(50)의 설정부(51)는 파라미터 세트를 설정한다. 설정부(51)는 설정된 파라미터 세트를 부호화부(52)에 공급한다.
스텝 S12에 있어서, 부호화부(52)는 외부로부터 입력된 프레임 단위의 픽처를 HEVC에 준하는 방식으로 부호화하는 부호화 처리를 행한다. 이 부호화 처리의 상세는, 후술하는 도 16 및 도 17을 참조하여 설명한다.
스텝 S13에 있어서, 부호화부(52)의 생성부(78)(도 14)는 설정부(51)로부터 공급되는 파라미터 세트와 축적하고 있는 부호화 데이터로부터 부호화 스트림을 생성하고, 전송부(53)에 공급한다.
스텝 S14에 있어서, 전송부(53)는 설정부(51)로부터 공급되는 부호화 스트림을, 후술하는 복호 장치로 전송하고, 처리를 종료한다.
도 16 및 도 17은 도 15의 스텝 S12의 부호화 처리의 상세를 설명하는 흐름도이다.
도 16의 스텝 S31에 있어서, 부호화부(52)의 A/D 변환부(71)는 부호화 대상으로서 입력된 프레임 단위의 픽처를 A/D 변환하고, 변환 후의 디지털 신호인 픽처를 화면 재배열 버퍼(72)에 출력해서 기억시킨다.
스텝 S32에 있어서, 화면 재배열 버퍼(72)는 기억한 표시의 순번의 프레임 픽처를, GOP 구조에 따라서, 부호화를 위한 순번으로 재배열한다. 화면 재배열 버퍼(72)는 재배열 후의 프레임 단위의 픽처를, 커런트 픽처로 해서, 연산부(73), 인트라 예측부(87) 및 움직임 예측·보상부(89)에 공급한다.
스텝 S33에 있어서, 리스트 작성부(88)는 SPS에 포함되는 참조 픽처 리스트 정보, 슬라이스 헤더에 배치되는 정보 등에 기초하여, 예를 들어 슬라이스 단위로, 참조 픽처 리스트 작성 처리를 행한다. 참조 픽처 리스트 작성 처리의 상세는, 도 18을 참조하여 후술한다.
스텝 S34에 있어서, 인트라 예측부(87)는 커런트 블록에 대하여, 프레임 메모리(85)로부터 스위치(86)를 통해서 판독된 주변 화소를 사용하여, 후보가 되는 모든 인트라 예측 모드의 인트라 예측 처리를 행한다. 또한, 인트라 예측부(87)는 화면 재배열 버퍼(72)로부터의 커런트 픽처와, 인트라 예측 처리의 결과 생성되는 예측 화상에 기초하여, 후보가 되는 모든 인트라 예측 모드에 대하여 비용 함수값을 산출한다. 그리고, 인트라 예측부(87)는 비용 함수값이 최소가 되는 인트라 예측 모드를, 최적 인트라 예측 모드로 결정한다. 인트라 예측부(87)는 최적 인트라 예측 모드로 생성된 예측 화상 및 대응하는 비용 함수값을, 예측 화상 선택부(92)에 공급한다.
또한, 움직임 예측·보상부(89)는 리스트 작성부(88)로부터 공급되는 참조 픽처 리스트에 기초하여, 커런트 블록에 대하여, 후보가 되는 모든 인터 예측 모드의 움직임 예측·보상 처리를 행한다. 또한, 움직임 예측·보상부(89)는 화면 재배열 버퍼(72)로부터의 커런트 픽처로 움직임 예측·보상 처리의 결과 생성되는 예측 화상에 기초하여, 후보가 되는 모든 인터 예측 모드 및 참조 픽처에 대하여 비용 함수값을 산출한다. 움직임 예측·보상부(89)는 비용 함수값이 최소가 되는 인터 예측 모드를 최적 인터 예측 모드로 결정한다. 그리고, 움직임 예측·보상부(89)는 비용 함수값의 최솟값과, 대응하는 예측 화상을 예측 화상 선택부(92)에 공급한다.
스텝 S35에 있어서, 예측 화상 선택부(92)는 인트라 예측부(87) 및 움직임 예측·보상부(89)로부터 공급되는 비용 함수값에 기초하여, 최적 인트라 예측 모드와 최적 인터 예측 모드 중 비용 함수값이 최소가 되는 쪽을, 최적 예측 모드로 결정한다. 그리고, 예측 화상 선택부(92)는 최적 예측 모드의 예측 화상을, 연산부(73) 및 가산부(81)에 공급한다.
스텝 S36에 있어서, 예측 화상 선택부(92)는 최적 예측 모드가 최적 인터 예측 모드인지 여부를 판정한다. 스텝 S36에서 최적 예측 모드가 최적 인터 예측 모드라고 판정된 경우, 예측 화상 선택부(92)는 최적 인터 예측 모드로 생성된 예측 화상의 선택을 움직임 예측·보상부(89)에 통지한다.
움직임 예측·보상부(89)는 이 통지에 따라서, 예측 화상에 대응하는 커런트 블록의 움직임 벡터를 커런트 움직임 벡터에 결정하고, 차분 벡터 생성부(91)에 공급한다. 또한, 움직임 예측·보상부(89)는 예측 화상에 대응하는 참조 픽처의 후보를 참조 픽처에 결정하고, 그 참조 픽처의 픽처 특정 정보의 참조 픽처 리스트 내의 위치에 대응하는 인덱스를 예측 벡터 생성부(90)에 공급한다.
그리고, 스텝 S37에 있어서, 예측 벡터 생성부(90)는 움직임 예측·보상부(89)로부터 공급되는 인덱스에 기초하여, 커런트 움직임 벡터의 예측 벡터 리스트를 생성하는 예측 벡터 리스트 생성 처리를 행한다. 예측 벡터 리스트 생성 처리의 상세는, 도 19를 참조하여 후술한다.
스텝 S38에 있어서, 차분 벡터 생성부(91)는 예측 벡터 생성부(90)로부터 공급되는 예측 벡터 리스트에 등록된 소정의 수의 예측 벡터의 각각과, 커런트 움직임 벡터의 차분 벡터를 생성함으로써, 커런트 움직임 벡터를 예측 부호화한다. 그리고, 차분 벡터 생성부(91)는 차분 벡터의 최솟값과, 대응하는 예측 벡터의 예측 벡터 리스트 내의 위치에 대응하는 인덱스를, 움직임 벡터 정보로서 생성한다.
스텝 S39에 있어서, 움직임 예측·보상부(89)는 인터 예측 모드 정보와 참조 픽처의 인덱스를 가역 부호화부(76)에 공급하고, 차분 벡터 생성부(91)는 움직임 벡터 정보를 가역 부호화부(76)에 공급한다. 그리고, 처리는 스텝 S41로 진행한다.
한편, 스텝 S36에서 최적 예측 모드가 최적 인터 예측 모드가 아니라고 판정된 경우, 즉 최적 예측 모드가 최적 인트라 예측 모드인 경우, 예측 화상 선택부(92)는 최적 인트라 예측 모드로 생성된 예측 화상의 선택을 인트라 예측부(87)에 통지한다. 그리고, 스텝 S40에 있어서, 인트라 예측부(87)는 인트라 예측 모드 정보를 가역 부호화부(76)에 공급하고, 처리를 스텝 S41로 진행시킨다.
스텝 S41에 있어서, 연산부(73)는 화면 재배열 버퍼(72)로부터 공급되는 커런트 픽처로부터, 예측 화상 선택부(92)로부터 공급되는 예측 화상을 감산함으로써 부호화를 행한다. 연산부(73)는, 그 결과 얻어지는 픽처를, 잔차 정보로서 직교 변환부(74)에 출력한다.
스텝 S42에 있어서, 직교 변환부(74)는 연산부(73)로부터의 잔차 정보에 대하여 TU 단위로 직교 변환을 실시하고, 그 결과 얻어지는 직교 변환 계수를 양자화부(75)에 공급한다.
스텝 S43에 있어서, 양자화부(75)는 직교 변환부(74)로부터 공급되는 직교 변환 계수를 양자화하고, 양자화된 직교 변환 계수를 가역 부호화부(76)와 역양자화부(79)에 공급한다.
도 17의 스텝 S44에 있어서, 역양자화부(79)는 양자화부(75)로부터 공급되는 양자화된 계수를 역양자화하고, 그 결과 얻어지는 직교 변환 계수를 역직교 변환부(80)에 공급한다.
스텝 S45에 있어서, 역직교 변환부(80)는 역양자화부(79)로부터 공급되는 직교 변환 계수에 대하여 TU 단위로 역직교 변환을 실시하고, 그 결과 얻어지는 잔차 정보를 가산부(81)에 공급한다.
스텝 S46에 있어서, 가산부(81)는 역직교 변환부(80)로부터 공급되는 잔차 정보와, 예측 화상 선택부(92)로부터 공급되는 예측 화상을 가산하고, 커런트 픽처를 국소적으로 복호한다. 가산부(81)는 국소적으로 복호된 커런트 픽처를 프레임 메모리(85)에 공급한다. 또한, 가산부(81)는 모든 영역이 복호된 커런트 픽처를 부호화가 끝난 픽처로서 필터(82)에 공급한다.
스텝 S47에 있어서, 필터(82)는 가산부(81)로부터 공급되는 부호화가 끝난 픽처에 대하여, 디블록 필터 처리를 행한다.
스텝 S48에 있어서, 필터(82)는 디블록 필터 처리 후의 부호화가 끝난 픽처에 대하여, LCU마다 적응 오프셋 필터 처리를 행한다. 필터(82)는, 그 결과 얻어지는 부호화가 끝난 픽처를 프레임 메모리(85)에 공급한다. 또한, 필터(82)는 LCU마다, 오프셋 필터 정보를 가역 부호화부(76)에 공급한다.
스텝 S49에 있어서, 프레임 메모리(85)는 가산부(81)로부터 공급되는 커런트 픽처를 캐시에 기억하고, 필터(82)로부터 공급되는 부호화가 끝난 픽처를 DRAM에 기억한다. 캐시에 기억된 커런트 픽처 중 커런트 블록에 인접하는 화소는, 주변 화소로서 스위치(86)를 통해서 인트라 예측부(87)에 공급된다. 또한, 캐시에 기억된 커런트 픽처 및 DRAM에 기억된 부호화가 끝난 픽처는, 참조 픽처로서 스위치(86)를 통해서 움직임 예측·보상부(89)에 출력된다.
스텝 S50에 있어서, 가역 부호화부(76)는 인트라 예측 모드 정보 또는 인터 예측 모드 정보, 움직임 벡터 정보 및 참조 픽처의 인덱스, 및 오프셋 필터 정보를, 부호화 정보로서 가역 부호화한다.
스텝 S51에 있어서, 가역 부호화부(76)는 양자화부(75)로부터 공급되는 양자화된 직교 변환 계수를 가역 부호화한다. 그리고, 가역 부호화부(76)는 스텝 S50의 처리에서 가역 부호화된 부호화 정보와 가역 부호화된 직교 변환 계수로부터, 부호화 데이터를 생성하고, 축적 버퍼(77)에 공급한다.
스텝 S52에 있어서, 축적 버퍼(77)는 가역 부호화부(76)로부터 공급되는 부호화 데이터를, 일시적으로 축적한다.
스텝 S53에 있어서, 레이트 제어부(93)는 축적 버퍼(77)에 축적된 부호화 데이터에 기초하여, 오버플로우 혹은 언더플로우가 발생하지 않도록, 양자화부(75)의 양자화 동작의 레이트를 제어한다.
스텝 S54에 있어서, 축적 버퍼(77)는 기억하고 있는 부호화 데이터를, 생성부(78)에 출력한다. 그리고, 처리는 도 15의 스텝 S12로 되돌아가고, 스텝 S13으로 진행한다.
또한, 도 16 및 도 17의 부호화 처리에서는, 설명을 간단화하기 위해서, 항상, 인트라 예측 처리에서 움직임 예측·보상 처리가 행해지도록 했지만, 실제로는, 픽처 타입 등에 의해 어느 한쪽만이 행해지는 경우도 있다.
도 18은 도 16의 스텝 S33의 참조 픽처 리스트 작성 처리의 상세를 설명하는 흐름도이다.
도 18의 스텝 S71에 있어서, 리스트 작성부(88)는 참조 픽처의 후보 종류마다, RefPicSetStCurrBefore 리스트, RefPicSetStCurrAfter 리스트, RefPicSetLtCurr 리스트 및 RefPicSetIvCurr 리스트의 4개의 개별 리스트를 작성한다. 각 개별 리스트의 픽처 특정 정보에는, 그 픽처 특정 정보에 의해 특정되는 픽처의 참조 픽처로서의 타입이 설정되어 있다. 또한, RefPicSetStCurrBefore 리스트, RefPicSetStCurrAfter 리스트 및 RefPicSetLtCurr 리스트의 픽처 특정 정보에는, used_by_curr이 설정되어 있다.
스텝 S72에 있어서, 리스트 작성부(88)는 참조 픽처의 타입으로서 LTRP가 설정된, 커런트 픽처의 픽처 특정 정보가 등록되는 커런트 픽처 리스트를 작성한다.
스텝 S73에 있어서, 리스트 작성부(88)는 개별 리스트의 픽처 특정 정보와 used_by_curr에 기초하여, RefpicListTemp0 리스트와 RefpicListTemp1 리스트의 2개의 템포럴 리스트를 작성한다.
스텝 S74에 있어서, 리스트 작성부(88)는 슬라이스 헤더에 배치되는, 템포럴 리스트 내의 픽처 특정 정보의 순번을 지정하는 ref_pic_list_modification에 기초하여, 템포럴 리스트 내의 픽처 특정 정보의 순번을 교체한다.
스텝 S75에 있어서, 리스트 작성부(88)는 템포럴 리스트에 기초하여, 템포럴 리스트에 등록되어 있는 선두로부터 소정수의 픽처 특정 정보를, 선두로부터 순서대로 등록한 참조 픽처 리스트를 작성한다.
스텝 S76에 있어서, 리스트 작성부(88)는 참조 픽처 리스트의 선두에, 커런트 픽처 리스트에 등록되어 있는 커런트 픽처의 픽처 특정 정보를 등록한다. 그리고, 처리는, 도 16의 스텝 S33으로 되돌아가고, 스텝 S34로 진행한다.
도 19는 도 16의 스텝 S37의 예측 벡터 리스트 생성 처리의 상세를 설명하는 흐름도이다. 이 예측 벡터 리스트 생성 처리는, 참조 픽처가 등록되어 있는 참조 픽처 리스트마다 행해진다.
도 19의 스텝 S91에 있어서, 예측 벡터 생성부(90)는 소정의 후보 블록을 처리 대상의 후보 블록으로 결정한다. 최초의 스텝 S91의 처리에서는, 소정의 공간 방향 후보 블록이 처리 대상의 후보 블록으로 결정된다.
스텝 S92에 있어서, 예측 벡터 생성부(90)는 움직임 예측·보상부(89)로부터 공급되는 인덱스에 기초하여, 참조 픽처 리스트로부터, 그 인덱스에 대응하는 커런트 블록의 참조 픽처의 타입을 판독하고, 유지한다. 그리고, 예측 벡터 생성부(90)는 판독된 커런트 블록의 참조 픽처의 타입이 STRP인지 여부를 판정한다.
스텝 S92에서 커런트 블록의 참조 픽처의 타입이 STRP라고 판정된 경우, 처리는 스텝 S93으로 진행한다. 스텝 S93에 있어서, 예측 벡터 생성부(90)는 유지하고 있는 처리 대상의 후보 블록의 참조 픽처의 타입이 STRP인지 여부를 판정한다.
스텝 S93에서 처리 대상의 후보 블록의 참조 픽처의 타입이 STRP라고 판정된 경우, 즉 커런트 블록과 후보 블록의 참조 픽처의 타입이 양쪽 모두 STRP인 경우, 처리는 스텝 S94로 진행한다.
스텝 S94에 있어서, 예측 벡터 생성부(90)는 처리 대상의 후보 블록을 어베일러블로 설정한다. 스텝 S95에 있어서, 예측 벡터 생성부(90)는 커런트 블록의 참조 픽처와 후보 블록의 참조 픽처의 POC의 차분에 기초하여, 처리 대상의 후보 블록의 움직임 벡터인 레퍼런스 움직임 벡터의 후보를 스케일링하고, 예측 벡터를 생성한다. 그리고, 예측 벡터 생성부(90)는, 그 예측 벡터를 예측 벡터 리스트에 등록하고, 처리를 스텝 S100으로 진행시킨다.
한편, 스텝 S92에서 커런트 블록의 참조 픽처의 타입이 STRP가 아니라고 판정된 경우, 즉 커런트 블록의 참조 픽처의 타입이 LTRP인 경우, 처리는 스텝 S96으로 진행한다.
스텝 S96에 있어서, 예측 벡터 생성부(90)는 스텝 S93의 처리와 마찬가지로, 처리 대상의 후보 블록의 참조 픽처의 타입이 STRP인지 여부를 판정한다. 스텝 S96에서 처리 대상의 후보 블록의 참조 픽처의 타입이 STRP라고 판정된 경우, 즉 커런트 블록의 참조 픽처의 타입이 LTRP이고, 또한 후보 블록의 참조 픽처의 타입이 STRP인 경우, 처리는 스텝 S97로 진행한다.
스텝 S97에 있어서, 예측 벡터 생성부(90)는 처리 대상의 후보 블록을 낫 어베일러블로 설정하고, 처리를 스텝 S100으로 진행시킨다.
한편, 스텝 S93에서, 처리 대상의 후보 블록의 참조 픽처의 타입이 STRP가 아니라고 판정된 경우, 즉 커런트 블록의 참조 픽처의 타입이 STRP이고, 또한 후보 블록의 참조 픽처의 타입이 LTRP인 경우, 처리는 스텝 S97로 진행한다. 이에 의해, 처리 대상의 후보 블록이 낫 어베일러블로 설정된다.
또한, 스텝 S96에서 처리 대상의 후보 블록의 참조 픽처의 타입이 STRP가 아니라고 판정된 경우, 즉 커런트 블록과 후보 블록의 참조 픽처의 타입이 양쪽 모두 LTRP인 경우, 처리는 스텝 S98로 진행한다.
스텝 S98에 있어서, 예측 벡터 생성부(90)는 처리 대상의 후보 블록을 어베일러블로 설정한다. 스텝 S99에 있어서, 예측 벡터 생성부(90)는 처리 대상의 후보 블록의 움직임 벡터인 레퍼런스 움직임 벡터의 후보를, 그대로 예측 벡터로서 생성한다. 그리고, 예측 벡터 생성부(90)는, 그 예측 벡터를 예측 벡터 리스트에 등록하고, 처리를 스텝 S100으로 진행시킨다.
스텝 S100에 있어서, 예측 벡터 생성부(90)는 소정수의 예측 벡터를 예측 벡터 리스트에 등록했는지 여부를 판정한다. 스텝 S100에서 아직 소정수의 예측 벡터를 등록하지 않았다고 판정된 경우, 처리는 스텝 S91로 되돌아가서, 아직 처리 대상의 후보 블록으로 결정되어 있지 않은, 소정의 공간 방향 후보 블록 또는 시간 방향 후보 블록이, 처리 대상의 후보 블록으로 결정되고, 이후의 처리가 행해진다.
한편, 스텝 S100에서 소정수의 예측 벡터를 등록했다고 판정된 경우, 예측 벡터 생성부(90)는 예측 벡터 리스트를 차분 벡터 생성부(91)에 공급한다. 그리고, 처리는 도 16의 스텝 S37로 되돌아가고, 스텝 S38로 진행한다.
이상과 같이, 부호화 장치(50)는 Intra BC에 사용되는 커런트 움직임 벡터를 부호화할 때 커런트 블록의 참조 픽처의 실제 타입과, 후보 블록의 참조 픽처의 실제 타입이 다른 경우에, 후보 블록을 낫 어베일러블로 설정한다. 이에 의해, 예측 벡터의 생성에, 참조 픽처의 실제 타입이 커런트 블록의 참조 픽처의 실제 타입과 다른 후보 블록의 움직임 벡터가 사용되지 않는다. 따라서, 차분 벡터가 작아져서 부호화 효율이 향상된다.
또한, 부호화 장치(50)는 실제의 타입이 「Intra BC」인 커런트 블록의 참조 픽처의 타입을 LTRP로서 설정함으로써, 후보 블록의 참조 픽처의 실제 타입이 STRP인 경우에, 후보 블록을 낫 어베일러블로 설정시킨다. 따라서, Intra BC와 인터 부호화를 공통화하지 않은 경우의 HEVC에 대하여 큰 변경을 행하지 않고, Intra BC와 인터 부호화를 공통화한 경우의 부호화 효율을 향상시킬 수 있다.
또한, 부호화 장치(50)는 커런트 블록의 참조 픽처 리스트의 소정의 위치에 커런트 픽처의 픽처 특정 정보를 등록한다. 따라서, 후술하는 복호 장치는, 참조 픽처의 픽처 특정 정보의 참조 픽처 리스트 내의 위치에 대응하는 인덱스에 기초하여, 참조 픽처가 커런트 픽처 인지 여부를 인식할 수 있다. 그 결과, 참조 픽처가 커런트 픽처인 경우에 쓸데없이 DRAM으로 액세스하는 것을 방지할 수 있다.
(복호 장치의 제1 실시 형태의 구성예)
도 20은 도 13의 부호화 장치(50)로부터 전송되는 부호화 스트림을 복호하는, 본 개시를 적용한 화상 처리 장치로서의 복호 장치의 제1 실시 형태의 구성예를 도시하는 블록도이다.
도 20의 복호 장치(110)는, 수취부(111), 추출부(112) 및 복호부(113)에 의해 구성된다.
복호 장치(110)의 수취부(111)는, 도 13의 부호화 장치(50)로부터 전송되는 부호화 스트림을 수취하고, 추출부(112)에 공급한다.
추출부(112)는 수취부(111)로부터 공급되는 부호화 스트림으로부터, 파라미터 세트와 부호화 데이터를 추출하고, 복호부(113)에 공급한다.
복호부(113)는 추출부(112)로부터 공급되는 부호화 데이터를 HEVC에 준하는 방식으로 복호한다. 이때, 복호부(113)는, 필요에 따라, 추출부(112)로부터 공급되는 파라미터 세트도 참조한다. 복호부(113)는 복호의 결과 얻어지는 픽처를 출력한다.
(복호부의 구성예)
도 21은 도 20의 복호부(113)의 구성예를 도시하는 블록도이다.
도 21의 복호부(113)는, 축적 버퍼(131), 가역 복호부(132), 역양자화부(133), 역직교 변환부(134), 가산부(135), 필터(136) 및 화면 재배열 버퍼(139)를 갖는다. 또한, 복호부(113)는, D/A 변환부(140), 프레임 메모리(141), 스위치(142), 인트라 예측부(143), 예측 벡터 생성부(144), 움직임 벡터 생성부(145), 리스트 작성부(146), 움직임 보상부(147) 및 스위치(148)를 갖는다.
복호부(113)의 축적 버퍼(131)는, 도 20의 추출부(112)로부터 부호화 데이터를 수취하고, 축적한다. 축적 버퍼(131)는 축적되어 있는 부호화 데이터를, 커런트 픽처의 부호화 데이터로서 가역 복호부(132)에 공급한다.
가역 복호부(132)는 축적 버퍼(131)로부터의 부호화 데이터에 대하여, 도 14의 가역 부호화부(76)의 가역 부호화에 대응하는, 가변 길이 복호나 산술 복호 등의 가역 복호를 실시함으로써, 양자화된 직교 변환 계수와 부호화 정보를 얻는다. 가역 복호부(132)는 양자화된 직교 변환 계수를 역양자화부(133)에 공급한다. 또한, 가역 복호부(132)는 부호화 정보로서의 인트라 예측 모드 정보 등을 인트라 예측부(143)에 공급한다. 가역 복호부(132)는 참조 픽처의 인덱스를 예측 벡터 생성부(144)에 공급하고, 움직임 벡터 정보를 움직임 벡터 생성부(145)에 공급하고, 인터 예측 모드 정보와 참조 픽처의 인덱스를 움직임 보상부(147)에 공급한다.
또한, 가역 복호부(132)는 부호화 정보로서의 인트라 예측 모드 정보 또는 인터 예측 모드 정보를 스위치(148)에 공급한다. 가역 복호부(132)는 부호화 정보로서의 오프셋 필터 정보를 필터(136)에 공급한다.
역양자화부(133), 역직교 변환부(134), 가산부(135), 필터(136), 프레임 메모리(141), 스위치(142), 인트라 예측부(143), 예측 벡터 생성부(144), 리스트 작성부(146), 움직임 보상부(147)는 도 14의 역양자화부(79), 역직교 변환부(80), 가산부(81), 필터(82), 프레임 메모리(85), 스위치(86), 인트라 예측부(87), 예측 벡터 생성부(90), 리스트 작성부(88), 움직임 예측·보상부(89)와 각각 마찬가지 처리를 행하고, 이에 의해 픽처가 복호된다.
구체적으로는, 역양자화부(133)는 가역 복호부(132)로부터의 양자화된 직교 변환 계수를 역양자화하고, 그 결과 얻어지는 직교 변환 계수를 역직교 변환부(134)에 공급한다.
역직교 변환부(134)는 역양자화부(133)로부터의 직교 변환 계수에 대하여 TU 단위로 역직교 변환을 행한다. 역직교 변환부(134)는 역직교 변환의 결과 얻어지는 잔차 정보를 가산부(135)에 공급한다.
가산부(135)는 역직교 변환부(134)로부터 공급되는 잔차 정보와, 스위치(148)로부터 공급되는 예측 화상을 가산함으로써, 커런트 픽처를 국소적으로 복호한다. 또한, 스위치(148)로부터 예측 화상이 공급되지 않는 경우, 가산부(135)는 역직교 변환부(134)로부터 공급되는 잔차 정보를 복호 결과로 한다. 가산부(135)는 복호의 결과 얻어지는 국소적으로 복호된 커런트 픽처를 프레임 메모리(141)에 공급한다. 또한, 가산부(135)는 모든 영역이 복호된 커런트 픽처를 복호가 끝난 픽처로서 필터(136)에 공급한다.
필터(136)는 가산부(135)로부터 공급되는 복호가 끝난 픽처에 대하여 필터 처리를 행한다. 구체적으로는, 필터(136)는 먼저, 복호가 끝난 픽처에 대하여 디블록 필터 처리를 행한다. 이어서, 필터(136)는 LCU마다, 가역 복호부(132)로부터의 오프셋 필터 정보가 나타내는 오프셋을 사용하여, 디블록 필터 처리 후의 복호가 끝난 픽처에 대하여, 오프셋 필터 정보가 나타내는 종류의 적응 오프셋 필터 처리를 행한다. 필터(136)는 적응 오프셋 필터 처리 후의 복호가 끝난 픽처를 프레임 메모리(141) 및 화면 재배열 버퍼(139)에 공급한다.
화면 재배열 버퍼(139)는, 필터(136)로부터 공급되는 복호가 끝난 픽처를 프레임 단위로 기억한다. 화면 재배열 버퍼(139)는, 기억한 부호화를 위한 순번의 프레임 단위의 복호가 끝난 픽처를, 원래의 표시의 순번으로 재배열하고, D/A 변환부(140)에 공급한다.
D/A 변환부(140)는 화면 재배열 버퍼(139)로부터 공급되는 프레임 단위의 복호가 끝난 픽처를 D/A 변환하고, 출력한다.
프레임 메모리(141)는, 예를 들어 캐시와 DRAM에 의해 구성된다. 프레임 메모리(141)는, 가산부(135)로부터 공급되는 커런트 픽처를 캐시에 기억하고, 필터(136)로부터 공급되는 복호가 끝난 픽처를 DRAM에 기억한다. 캐시에 기억된 커런트 픽처 중 커런트 블록에 인접하는 화소는, 주변 화소로서 스위치(142)를 통해서 인트라 예측부(143)에 공급된다.
또한, 캐시에 기억된 커런트 픽처 또는 DRAM에 기억된 복호가 끝난 픽처는, 참조 픽처로서 스위치(142)를 통해서 움직임 보상부(147)에 출력된다.
인트라 예측부(143)는 커런트 블록에 대하여, 프레임 메모리(141)로부터 스위치(142)를 통해서 판독된 주변 화소를 사용하여, 가역 복호부(132)로부터 공급되는 인트라 예측 모드 정보가 나타내는 최적 인트라 예측 모드의 인트라 예측 처리를 행한다. 인트라 예측부(143)는, 그 결과 생성되는 예측 화상을 스위치(148)에 공급한다.
예측 벡터 생성부(144)는 가역 복호부(132)로부터 공급되는 인덱스와, 리스트 작성부(146)에 유지되어 있는 참조 픽처 리스트에 기초하여, 도 14의 예측 벡터 생성부(90)와 마찬가지로, 커런트 움직임 벡터의 예측 벡터 리스트를 생성한다. 예측 벡터 생성부(144)는 예측 벡터 리스트를 움직임 벡터 생성부(145)에 공급한다.
움직임 벡터 생성부(145)는 가역 복호부(132)로부터 공급되는 움직임 벡터 정보 중 인덱스에 기초하여, 예측 벡터 생성부(144)로부터 공급되는 예측 벡터 리스트로부터, 그 인덱스에 대응하는 예측 벡터를 판독한다. 움직임 벡터 생성부(145)는, 그 예측 벡터와, 움직임 벡터 정보 중 차분 벡터를 가산함으로써, 커런트 움직임 벡터를 예측 복호한다. 움직임 벡터 생성부(145)는, 그 결과 생성되는 커런트 움직임 벡터를, 움직임 보상부(147)에 공급한다.
리스트 작성부(146)는 도 20의 추출부(112)에 의해 추출되는 SPS에 포함되는 참조 픽처 리스트 정보, 슬라이스 헤더에 배치되는 정보 등에 기초하여, 도 14의 리스트 작성부(88)과 마찬가지로, 참조 픽처 리스트 작성 처리를 행한다. 리스트 작성부(146)는, 그 결과 작성되는 참조 픽처 리스트를, 유지함과 함께, 움직임 보상부(147)에 공급한다.
움직임 보상부(147)는 가역 복호부(132)로부터의 인터 예측 모드 정보 및 참조 픽처의 인덱스, 및 움직임 벡터 생성부(145)로부터의 커런트 움직임 벡터에 기초하여, 커런트 블록에 대하여 움직임 보상 처리를 행한다.
구체적으로는, 움직임 보상부(147)는 리스트 작성부(146)에 유지되어 있는 픽처 리스트에 등록되어 있는 픽처 특정 정보 중, 참조 픽처의 인덱스 픽처 특정 정보를 판독한다. 움직임 보상부(147)는 프레임 메모리(141)로부터 스위치(142)를 통해서, 판독된 픽처 특정 정보에 의해 특정되는 참조 픽처를 판독한다. 움직임 보상부(147)는 참조 픽처와 커런트 움직임 벡터를 사용하여, 인터 예측 모드 정보가 나타내는 최적 인터 예측 모드의 커런트 블록의 움직임 보상 처리를 행한다. 움직임 보상부(147)는, 그 결과 생성되는 예측 화상을 스위치(148)에 공급한다.
스위치(148)는 가역 복호부(132)로부터 인트라 예측 모드 정보가 공급된 경우, 인트라 예측부(143)로부터 공급되는 예측 화상을 가산부(135)에 공급한다. 한편, 가역 복호부(132)로부터 인터 예측 모드 정보가 공급된 경우, 스위치(148)는 움직임 보상부(147)로부터 공급되는 예측 화상을 가산부(135)에 공급한다.
(복호 장치의 처리의 설명)
도 22는 도 20의 복호 장치(110)의 화상 생성 처리를 설명하는 흐름도이다.
도 22의 스텝 S111에 있어서, 복호 장치(110)의 수취부(111)는 도 13의 부호화 장치(50)로부터 전송되는 부호화 스트림을 수취하고, 추출부(112)에 공급한다.
스텝 S112에 있어서, 추출부(112)는 수취부(111)로부터 공급되는 부호화 스트림으로부터, 부호화 데이터와 파라미터 세트를 추출하고, 복호부(113)에 공급한다.
스텝 S113에 있어서, 복호부(113)는 필요에 따라 추출부(112)로부터 공급되는 파라미터 세트를 사용하여, 추출부(112)로부터 공급되는 부호화 데이터를 HEVC에 준하는 방식으로 복호하는 복호 처리를 행한다. 이 복호 처리의 상세는, 후술하는 도 23을 참조하여 설명한다. 그리고, 처리는 종료한다.
도 23은 도 22의 스텝 S113의 복호 처리의 상세를 설명하는 흐름도이다.
도 23의 스텝 S131에 있어서, 복호부(113)의 축적 버퍼(131)(도 21)는 추출부(112)로부터 프레임 단위의 부호화 데이터를 수취하고, 축적한다. 축적 버퍼(131)는 축적되어 있는 부호화 데이터를 커런트 픽처의 부호화 데이터로 해서, 가역 복호부(132)에 공급한다.
스텝 S132에 있어서, 가역 복호부(132)는 축적 버퍼(131)로부터의 부호화 데이터를 가역 복호하고, 양자화된 직교 변환 계수와 부호화 정보를 얻는다. 가역 복호부(132)는, 양자화된 직교 변환 계수를 역양자화부(133)에 공급한다.
또한, 가역 복호부(132)는, 부호화 정보로서의 인트라 예측 모드 정보 등을 인트라 예측부(143)에 공급한다. 가역 복호부(132)는 참조 픽처의 인덱스를 예측 벡터 생성부(144)에 공급하고, 움직임 벡터 정보를 움직임 벡터 생성부(145)에 공급하고, 인터 예측 모드 정보와 참조 픽처의 인덱스를 움직임 보상부(147)에 공급한다.
또한, 가역 복호부(132)는 부호화 정보로서의 인트라 예측 모드 정보 또는 인터 예측 모드 정보를 스위치(148)에 공급한다. 가역 복호부(132)는 부호화 정보로서의 오프셋 필터 정보를 필터(136)에 공급한다.
스텝 S133에 있어서, 리스트 작성부(146)는 추출부(112)에 의해 추출되는 SPS에 포함되는 참조 픽처 리스트 정보, 슬라이스 헤더에 배치되는 정보 등에 기초하여, 도 18의 참조 픽처 작성 처리와 마찬가지 참조 픽처 리스트 작성 처리를 행한다.
스텝 S134에 있어서, 역양자화부(133)는 가역 복호부(132)로부터의 양자화된 직교 변환 계수를 역양자화하고, 그 결과 얻어지는 직교 변환 계수를 역직교 변환부(134)에 공급한다.
스텝 S135에 있어서, 역직교 변환부(134)는 역양자화부(133)로부터의 직교 변환 계수에 대하여 역직교 변환을 실시하고, 그 결과 얻어지는 잔차 정보를 가산부(135)에 공급한다.
스텝 S136에 있어서, 움직임 보상부(147)는 가역 복호부(132)로부터 인터 예측 모드 정보가 공급되었는지 여부를 판정한다. 스텝 S136에서 인터 예측 모드 정보가 공급되었다고 판정된 경우, 처리는 스텝 S137로 진행한다.
스텝 S137에 있어서, 예측 벡터 생성부(144)는 가역 복호부(132)로부터 공급되는 인덱스와, 리스트 작성부(146)에 유지되어 있는 참조 픽처 리스트에 기초하여, 도 19의 예측 벡터 리스트 생성 처리와 마찬가지 예측 벡터 리스트 생성 처리를 행한다.
스텝 S138에 있어서, 움직임 벡터 생성부(145)는 움직임 벡터 정보 중 인덱스에 기초하여, 예측 벡터 리스트로부터, 그 인덱스에 대응하는 예측 벡터를 판독한다. 움직임 벡터 생성부(145)는 그 예측 벡터와, 움직임 벡터 정보 중 차분 벡터를 가산함으로써, 커런트 움직임 벡터를 예측 복호한다. 움직임 벡터 생성부(145)는, 그 결과 생성되는 커런트 움직임 벡터를, 움직임 보상부(147)에 공급한다.
스텝 S139에 있어서, 움직임 보상부(147)는 가역 복호부(132)로부터의 인터 예측 모드 정보 및 참조 픽처의 인덱스, 및 움직임 벡터 생성부(145)로부터의 커런트 움직임 벡터에 기초하여, 커런트 블록에 대하여 움직임 보상 처리를 행한다. 움직임 보상부(147)는, 그 결과 생성되는 예측 화상을 스위치(148)에 공급하고, 처리를 스텝 S141로 진행시킨다.
한편, 스텝 S136에서 인터 예측 모드 정보가 공급되지 않았다고 판정된 경우, 즉 인트라 예측 모드 정보가 인트라 예측부(143)에 공급된 경우, 처리는 스텝 S140으로 진행한다.
스텝 S140에 있어서, 인트라 예측부(143)는 커런트 블록에 대하여, 프레임 메모리(141)로부터 스위치(142)를 통해서 판독된 주변 화소를 사용하여, 인트라 예측 모드 정보가 나타내는 최적 인트라 예측 모드의 인트라 예측 처리를 행한다. 인트라 예측부(143)는 인트라 예측 처리의 결과 생성되는 예측 화상을, 스위치(148)를 통해서 가산부(135)에 공급하고, 처리를 스텝 S141로 진행시킨다.
스텝 S141에 있어서, 가산부(135)는 역직교 변환부(134)로부터 공급되는 잔차 정보와, 스위치(148)로부터 공급되는 예측 화상을 가산함으로써, 커런트 픽처를 국소적으로 복호한다. 가산부(135)는 복호의 결과 얻어지는 국소적으로 복호된 커런트 픽처를 프레임 메모리(141)에 공급한다. 또한, 가산부(135)는 모든 영역이 복호된 커런트 픽처를 복호가 끝난 픽처로서 필터(136)에 공급한다.
스텝 S142에 있어서, 필터(136)는 가산부(135)로부터 공급되는 복호가 끝난 픽처에 대하여 디블록 필터 처리를 행하고, 블록 왜곡을 제거한다.
스텝 S143에 있어서, 필터(136)는 가역 복호부(132)로부터 공급되는 오프셋 필터 정보에 기초하여, 디블록 필터 처리 후의 복호가 끝난 픽처에 대하여, LCU마다 적응 오프셋 필터 처리를 행한다. 필터(136)는 적응 오프셋 필터 처리 후의 화상을, 화면 재배열 버퍼(139)와 프레임 메모리(141)에 공급한다.
스텝 S144에 있어서, 프레임 메모리(141)는, 가산부(81)로부터 공급되는 커런트 픽처를 캐시에 기억하고, 필터(136)로부터 공급되는 복호가 끝난 픽처를 DRAM에 기억한다. 캐시에 기억된 커런트 픽처 중 커런트 블록에 인접하는 화소는, 주변 화소로서 스위치(142)를 통해서 인트라 예측부(143)에 공급된다. 또한, 캐시에 기억된 커런트 픽처 또는 DRAM에 기억된 복호가 끝난 픽처는, 참조 픽처로서 스위치(142)를 통해서 움직임 보상부(147)에 출력된다.
스텝 S145에 있어서, 화면 재배열 버퍼(139)는, 필터(136)로부터 공급되는 복호가 끝난 픽처를 프레임 단위로 기억하고, 기억한 부호화를 위한 순번의 프레임 단위의 픽처를, 원래 표시의 순번으로 재배열하고, D/A 변환부(140)에 공급한다.
스텝 S146에 있어서, D/A 변환부(140)는 화면 재배열 버퍼(139)로부터 공급되는 프레임 단위의 픽처를 D/A 변환하고, 출력한다. 그리고, 처리는, 도 22의 스텝 S113으로 되돌아가서, 종료한다.
이상과 같이, 복호 장치(110)는 Intra BC에 사용되는 커런트 움직임 벡터를 복호할 때, 커런트 블록의 참조 픽처의 실제 타입과, 후보 블록의 참조 픽처의 실제 타입이 다른 경우에, 후보 블록을 낫 어베일러블로 설정한다. 이에 의해, 예측 벡터의 생성에, 참조 픽처의 실제 타입이, 커런트 블록의 참조 픽처의 실제 타입과 다른 후보 블록의 움직임 벡터가 사용되지 않는다.
따라서, 예측 벡터의 생성에, 참조 픽처의 실제 타입이, 커런트 블록의 참조 픽처의 실제 타입과 다른 후보 블록의 레퍼런스 움직임 벡터를 사용하지 않음으로써 부호화 효율을 향상시킨 부호화 스트림을 복호할 수 있다.
또한, 복호 장치(110)는, 실제 타입이 「Intra BC」인 커런트 블록의 참조 픽처의 타입을 LTRP로서 설정함으로써, 후보 블록의 참조 픽처의 실제 타입이 STRP인 경우에, 후보 블록을 낫 어베일러블로 설정시킨다. 따라서, Intra BC와 인터 부호화를 공통화하지 않은 경우의 HEVC에 대하여 큰 변경을 행하지 않고, Intra BC와 인터 부호화를 공통화한 경우의 부호화 효율을 향상시킨 부호화 스트림을 복호할 수 있다.
또한, 복호 장치(110)는 커런트 블록의 참조 픽처 리스트의 소정의 위치에 커런트 픽처의 픽처 특정 정보를 등록한다. 따라서, 복호 장치(110)는 참조 픽처의 픽처 특정 정보의 참조 픽처 리스트 내의 위치에 대응하는 인덱스에 기초하여, 참조 픽처가 커런트 픽처인지 여부를 인식할 수 있다. 그 결과, 참조 픽처가 커런트 픽처인 경우에 쓸데없이 DRAM에 액세스하는 것을 방지할 수 있다.
<제2 실시 형태>
(제2 실시 형태의 개요)
먼저, 도 24 내지 도 27을 참조하여, 제2 실시 형태의 개요에 대해서 설명한다.
제2 실시 형태에서는, Intra BC에 있어서의 참조 픽처인 커런트 픽처의 타입을 LTRP로 설정하는 것이 아니라, 참조 픽처의 실제 타입이 「Intra BC」인 경우의 예측 벡터 리스트의 생성 방법을 변경함으로써, Intra BC와 인터 부호화를 공통화한 경우의 부호화 효율을 향상시킨다.
도 24 내지 도 26은 제2 실시 형태에 있어서의 참조 픽처의 실제 타입이 「Intra BC」인 경우의 예측 벡터 리스트의 생성 방법을 설명하는 도면이다.
또한, DiffPicOrderCnt(X, Y)는 픽처 X와 픽처 Y의 POC의 차분(X-Y)를 나타낸다. 또한, RefPicListX[refIdxLX] 및 LX[refIdxLX](X=0 또는 X=1)는, 커런트 블록을 포함하는 슬라이스의 부호화에 사용되는 참조 픽처 리스트 RefPicListX에 등록되어 있는 픽처 특정 정보 중, 커런트 블록의 참조 픽처의 인덱스 refIdxLX의 픽처 특정 정보에 의해 특정되는 참조 픽처를 나타낸다.
또한, CurrPic은 커런트 픽처를 나타내고, ColPic은 시간 방향 후보 블록의 픽처를 나타낸다. 또한, xNbAK, yNbAK는 각각, 커런트 블록의 좌측, 좌측 상단 또는 좌측 하방에 인접하는 공간 방향 후보 블록(이하, 좌측 후보 블록이라고 한다)의 x 방향의 위치와 y 방향의 위치를 나타낸다. xNbBK, yNbBK는 각각, 커런트 블록 상측 또는 우측 상단에 인접하는 공간 방향 후보 블록(이하, 상측 후보 블록이라고 한다)의 x 방향의 위치와 y 방향의 위치를 나타낸다.
listCol[refIdxCol]은, 시간 방향 후보 블록을 포함하는 슬라이스의 부호화에 사용되는 참조 픽처 리스트 RefPicListX에 등록되어 있는 픽처 특정 정보 중, 시간 방향 후보 블록의 참조 픽처의 인덱스 refIdxCol의 픽처 특정 정보에 의해 특정되는 참조 픽처를 나타낸다.
도 24에 도시한 바와 같이, 제2 실시 형태에서는, 처리 대상의 후보 블록이 좌측 후보 블록인 경우, DiffPicOrderCnt(RefPicListX[refIdxLX], CurrPic)=0이고, 또한 DiffPicOrderCnt(RefPicListX[refIdxLX], CurrPic)과 DiffPicOrderCnt(RefPicListX[RefIdxLX[xNbAK][yNbAK]], CurrPic)이 같을 때, 처리 대상의 후보 블록은 어베일러블로 설정된다.
즉, 커런트 픽처의 참조 픽처와 좌측 후보 블록의 참조 픽처가 커런트 픽처인 경우, 즉 커런트 픽처의 참조 픽처와 좌측 후보 블록의 참조 픽처의 실제 타입이 「Intra BC」인 경우, 좌측 후보 블록은 어베일러블로 설정된다. 그리고, 좌측 후보 블록의 움직임 벡터인 레퍼런스 움직임 벡터의 후보가, 그대로 예측 벡터로서 생성된다.
마찬가지로, 제2 실시 형태에서는, 도 25에 도시한 바와 같이, 처리 대상의 후보 블록이 상측 후보 블록인 경우, DiffPicOrderCnt(RefPicListX[refIdxLX], CurrPic)=0이고, 또한 DiffPicOrderCnt(RefPicListX[refIdxLX], CurrPic)과 DiffPicOrderCnt(RefPicListX[RefIdxLX[xNbBK][yNbBK]], CurrPic)이 같을 때, 처리 대상의 후보 블록은 어베일러블로 설정된다.
즉, 커런트 픽처의 참조 픽처와 상측 후보 블록의 참조 픽처의 실제 타입이 「Intra BC」인 경우, 상측 후보 블록은 어베일러블로 설정된다. 그리고, 상측 후보 블록의 움직임 벡터인 레퍼런스 움직임 벡터의 후보가, 그대로 예측 벡터로서 생성된다. 이 예측 벡터의 생성은 참조 픽처가 등록되어 있는 참조 픽처 리스트마다 행해진다.
또한, 제2 실시 형태에서는, 도 26에 도시한 바와 같이, 처리 대상의 후보 블록이 시간 방향 후보 블록인 경우, DiffPicOrderCnt(LX[refIdxLX], CurrPic)=0이고, 또한 DiffPicOrderCnt(LX[refIdxLX], CurrPic)과 DiffPicOrderCnt(listCol[refIdxCol], ColPic)for colPb가 같을 때, 처리 대상의 후보 블록은 어베일러블로 설정된다.
즉, 커런트 픽처의 참조 픽처와 시간 방향 후보 블록의 참조 픽처의 실제 타입이 「Intra BC」인 경우, 시간 방향 후보 블록은 어베일러블로 설정된다. 그리고, 시간 방향 후보 블록의 움직임 벡터인 레퍼런스 움직임 벡터의 후보가, 그대로 예측 벡터로서 생성된다.
그 결과, 도 27에 도시한 바와 같이, 커런트 픽처의 참조 픽처의 실제 타입이 「Intra BC」인 경우, 후보 블록의 참조 픽처의 실제 타입이 「Intra BC」인 경우에만, 후보 블록의 움직임 벡터가, 그대로 예측 벡터로서 생성된다. 한편, 그 이외의 경우, 후보 블록이 낫 어베일러블로 설정된다. 또한, 실제의 타입이 「Intra BC」인 참조 픽처의 후보 타입은, STRP로 설정된다.
제2 실시 형태의 부호화 장치 및 복호 장치의 구성은, 리스트 작성부(88) 및 리스트 작성부(146)에서 행해지는 참조 픽처 리스트 작성 처리와, 예측 벡터 생성부(90) 및 예측 벡터 생성부(144)에서 행해지는 예측 벡터 리스트 생성 처리를 제외하고, 도 13의 부호화 장치(50) 및 도 20의 복호 장치(110)의 구성과 마찬가지이다. 따라서, 이하에서는, 도 13의 부호화 장치(50) 및 도 20의 복호 장치(110)의 각 부를, 제2 실시 형태의 부호화 장치 및 복호 장치의 각 부로서 사용하여, 참조 픽처 리스트 작성 처리와 예측 벡터 생성 처리에 대해서만 설명한다.
(부호화 장치의 처리 설명)
도 28은 제2 실시 형태의 부호화 장치(50)의 리스트 작성부(88)의 참조 픽처 리스트 작성 처리를 설명하는 흐름도이다.
도 28의 스텝 S161에 있어서, 리스트 작성부(88)는 도 18의 스텝 S71의 처리와 마찬가지로, 4개의 개별 리스트를 작성한다. 각 개별 리스트의 픽처 특정 정보에는, STRP 또는 LTRP가 설정되어 있다.
스텝 S162에 있어서, 리스트 작성부(88)는 참조 픽처의 타입으로서 STRP가 설정된, 커런트 픽처의 픽처 특정 정보가 등록되는 커런트 픽처 리스트를 작성한다.
스텝 S163 내지 S166의 처리는, 도 18의 스텝 S73 내지 S76의 처리와 마찬가지이므로, 설명은 생략한다.
또한, 도시는 생략하지만, 제2 실시 형태의 복호 장치(110)의 리스트 작성부(146)의 참조 픽처 리스트 작성 처리도, 도 28의 참조 픽처 리스트 작성 처리와 마찬가지로 행해진다.
도 29는 제2 실시 형태의 부호화 장치(50)의 예측 벡터 생성부(90)의 예측 벡터 리스트 생성 처리의 상세를 설명하는 흐름도이다. 이 예측 벡터 리스트 생성 처리는 참조 픽처가 등록되어 있는 참조 픽처 리스트마다 행해진다.
도 29의 스텝 S181 내지 S183의 처리는, 도 19의 스텝 S91 내지 S93의 처리와 마찬가지이므로, 설명은 생략한다. 스텝 S183에서 처리 대상의 후보 블록의 참조 픽처의 타입이 STRP라고 판정된 경우, 처리는 스텝 S184로 진행한다.
스텝 S184에 있어서, 예측 벡터 생성부(90)는 커런트 블록과 후보 블록의 참조 픽처의 실제 타입이, 양쪽 모두 STRP인지 여부를 판정한다. 구체적으로는, 예를 들어 예측 벡터 생성부(90)는 커런트 블록의 참조 픽처와 커런트 픽처의 POC의 차분 및 후보 블록의 참조 픽처와 후보 블록의 픽처 POC의 차분이, 양쪽 모두 1 이상인지 여부를 판정한다.
그리고, 예측 벡터 생성부(90)는 커런트 블록의 참조 픽처와 커런트 픽처의 POC의 차분 및 후보 블록의 참조 픽처와 후보 블록의 픽처 POC의 차분이, 양쪽 모두 1 이상이라고 판정한 경우, 커런트 블록과 후보 블록의 참조 픽처의 실제 타입이, 양쪽 모두 STRP라고 판정하고, 처리를 스텝 S185로 진행시킨다.
스텝 S185 및 S186의 처리는, 도 19의 스텝 S94 및 S95의 처리와 마찬가지이므로, 설명은 생략한다.
한편, 예측 벡터 생성부(90)는 커런트 블록의 참조 픽처와 커런트 픽처의 POC의 차분 및 후보 블록의 참조 픽처와 후보 블록의 픽처 POC의 차분 중 적어도 한쪽이 0인 경우, 스텝 S184에서, 커런트 블록과 후보 블록의 참조 픽처의 실제 타입 중 적어도 한쪽이 STRP가 아니라고 판정한다.
그리고, 스텝 S187에 있어서, 예측 벡터 생성부(90)는 커런트 블록과 후보 블록의 참조 픽처의 실제 타입이, 양쪽 모두 「Intra BC」인지 여부를 판정한다. 구체적으로는, 예측 벡터 생성부(90)는 커런트 블록의 참조 픽처와 커런트 픽처의 POC의 차분 및 후보 블록의 참조 픽처와 후보 블록의 픽처 POC가 0인지 여부를 판정한다.
그리고, 예측 벡터 생성부(90)는 커런트 블록의 참조 픽처와 커런트 픽처의 POC의 차분 또는 후보 블록의 참조 픽처와 후보 블록의 픽처 POC가 0이 아니라고 판정한 경우, 커런트 블록과 후보 블록의 참조 픽처의 실제 타입 중 어느 한쪽이, 「Intra BC」가 아니라고 판정하고, 처리를 스텝 S188로 진행시킨다.
즉, 커런트 블록의 참조 픽처가 커런트 픽처이지만, 후보 블록의 픽처와 후보 블록의 참조 픽처가 다른 경우 및 후보 블록의 픽처와 후보 블록의 참조 픽처가 동일하지만, 커런트 블록의 참조 픽처가 커런트 픽처가 아닌 경우, 예측 벡터 생성부(90)는 커런트 블록의 참조 픽처의 실제 타입과, 후보 블록의 참조 픽처의 실제 타입이 다르다고 판정하고, 처리를 스텝 S188로 진행시킨다.
스텝 S188에 있어서, 예측 벡터 생성부(90)는 처리 대상의 후보 블록을 낫 어베일러블로 설정한다.
또한, 스텝 S182에서 커런트 블록의 참조 픽처의 타입이 STRP가 아니라고 판정된 경우, 즉 커런트 블록의 참조 픽처의 타입이 LTRP인 경우, 처리는 스텝 S189로 진행한다.
스텝 S189에 있어서, 예측 벡터 생성부(90)는 스텝 S183의 처리와 마찬가지로, 처리 대상의 후보 블록의 참조 픽처의 타입이 STRP인지 여부를 판정한다. 스텝 S189에서 처리 대상의 후보 블록의 참조 픽처의 타입이 STRP라고 판정된 경우, 즉 커런트 블록의 참조 픽처의 타입이 LTRP이고, 또한 후보 블록의 참조 픽처의 타입이 STRP인 경우, 처리는 스텝 S188로 진행한다. 이에 의해, 처리 대상의 후보 블록은 낫 어베일러블로 설정된다.
한편, 스텝 S189로 처리 대상의 후보 블록의 참조 픽처의 타입이 STRP가 아니라고 판정된 경우, 즉 커런트 블록과 후보 블록의 참조 픽처의 타입이 양쪽 모두 LTRP인 경우, 처리는 스텝 S190으로 진행한다. 스텝 S190 및 S191의 처리는, 도 19의 스텝 S98 및 S99의 처리와 마찬가지이므로, 설명은 생략한다.
한편, 예측 벡터 생성부(90)는 커런트 블록의 참조 픽처와 커런트 픽처의 POC의 차분 및 후보 블록의 참조 픽처와 후보 블록의 픽처 POC의 차분이 0이라고 판정한 경우, 스텝 S187에서, 커런트 블록과 후보 블록의 참조 픽처의 실제 타입이, 양쪽 모두 「Intra BC」라고 판정한다.
그리고, 예측 벡터 생성부(90)는 처리를 스텝 S190으로 진행시킨다. 이에 의해, 처리 대상의 후보 블록은 어베일러블로 설정되고, 처리 대상의 후보 블록의 레퍼런스 움직임 벡터의 후보는 예측 벡터로서 생성된다.
스텝 S186, S188 또는 S191의 처리 후, 처리는 스텝 S192로 진행한다. 스텝 S192의 처리는, 도 19의 스텝 S100의 처리와 마찬가지이므로, 설명은 생략한다.
또한, 도시는 생략하지만, 제2 실시 형태의 복호 장치(110)의 예측 벡터 생성부(144)의 예측 벡터 리스트 생성 처리도, 도 29의 예측 벡터 리스트 생성 처리와 마찬가지로 행해진다.
<제3 실시 형태>
(제3 실시 형태의 개요)
제3 실시 형태에서는, 참조 픽처 리스트가 아니라, 템포럴 리스트의 선두에 커런트 픽처의 픽처 특정 정보가 등록된다.
즉, 제3 실시 형태에서는, 도 30에 도시한 바와 같이, 도 10의 개별 리스트에 기초하여, RefpicListTemp0 리스트와 RefpicListTemp1 리스트의 2개의 템포럴 리스트가 작성된 후, 템포럴 리스트의 선두에 커런트 픽처의 픽처 특정 정보가 등록된다.
이어서, RefpicListTemp0 리스트와 RefpicListTemp1 리스트에 등록되어 있는 픽처 특정 정보의 순번이, 필요에 따라서 변경된다(Reference reordering). 단, 커런트 픽처의 픽처 특정 정보의 순번의 변경은 금지된다.
마지막으로, RefpicListTemp0 리스트에 등록되어 있는, 선두의 픽처 특정 정보와, num_ref_idx_l0_active_minus1에 1을 가산한 수(도 30의 예에서는 5개)의 픽처 특정 정보가, 선두로부터 순서대로 등록된 참조 픽처 리스트 RefpicList0이 작성된다.
또한, RefpicListTemp1 리스트에 등록되어 있는, 선두의 픽처 특정 정보와, num_ref_idx_l1_active_minus1에 1을 가산한 수(도 30의 예에서는 4개)의 픽처 특정 정보가, 선두로부터 순서대로 등록된 참조 픽처 리스트 RefpicList1이 작성된다.
제3 실시 형태의 부호화 장치 및 복호 장치의 구성은, 리스트 작성부(88) 및 리스트 작성부(146)에서 행해지는 참조 픽처 리스트 작성 처리를 제외하고, 도 13의 부호화 장치(50) 및 도 20의 복호 장치(110)의 구성과 마찬가지이다. 따라서, 이하에서는, 도 13의 부호화 장치(50) 및 도 20의 복호 장치(110)의 각 부를, 제3 실시 형태의 부호화 장치 및 복호 장치의 각 부로서 사용하여, 참조 픽처 리스트 작성 처리에 대해서만 설명한다.
(부호화 장치의 처리의 설명)
도 31은 제3 실시 형태의 부호화 장치(50)의 리스트 작성부(88)의 참조 픽처 리스트 작성 처리를 설명하는 흐름도이다.
도 31의 스텝 S201 내지 S203의 처리는, 도 18의 스텝 S71 내지 S73의 처리와 마찬가지이므로, 설명은 생략한다.
스텝 S204에 있어서, 리스트 작성부(88)는 템포럴 리스트의 선두에, 커런트 픽처 리스트에 등록되어 있는 커런트 픽처의 픽처 특정 정보를 등록한다.
스텝 S205에 있어서, 리스트 작성부(88)는 슬라이스 헤더에 배치되는 ref_pic_list_modification에 기초하여, 커런트 픽처의 픽처 특정 정보 이외의 템포럴 리스트 내의 픽처 특정 정보의 순번을 교체한다.
스텝 S206에 있어서, 리스트 작성부(88)는 템포럴 리스트에 기초하여 참조 픽처 리스트를 작성한다. 즉, 리스트 작성부(88)는 템포럴 리스트에 등록되어 있는, 선두의 픽처 특정 정보와, 슬라이스 헤더에 배치되는 num_ref_idx_l0_active_minus1(num_ref_idx_l1_active_minus1)에 1을 가산한 수의 픽처 특정 정보를, 선두로부터 순서대로 등록한 참조 픽처 리스트를 작성한다.
또한, 도시는 생략하지만, 제3 실시 형태의 복호 장치(110)의 리스트 작성부(146)의 참조 픽처 리스트 작성 처리도, 도 31의 참조 픽처 리스트 작성 처리와 마찬가지로 행해진다.
<제4 실시 형태>
(본 개시를 적용한 컴퓨터의 설명)
상술한 일련의 처리는, 하드웨어에 의해 실행할 수도 있고, 소프트웨어에 의해 실행할 수도 있다. 일련의 처리를 소프트웨어에 의해 실행하는 경우에는, 그 소프트웨어를 구성하는 프로그램이 컴퓨터에 인스톨된다. 여기서, 컴퓨터에는, 전용 하드웨어에 내장되어 있는 컴퓨터나, 각종 프로그램을 인스톨함으로써, 각종 기능을 실행하는 것이 가능한, 예를 들어 범용의 퍼스널 컴퓨터 등이 포함된다.
도 32는 상술한 일련의 처리를 프로그램에 의해 실행하는 컴퓨터의 하드웨어 구성예를 도시하는 블록도이다.
컴퓨터에 있어서, CPU(Central Processing Unit)(201), ROM(Read Only Memory)(202), RAM(Random Access Memory)(203)은, 버스(204)에 의해 서로 접속되어 있다.
버스(204)에는, 또한 입출력 인터페이스(205)가 접속되어 있다. 입출력 인터페이스(205)에는, 입력부(206), 출력부(207), 기억부(208), 통신부(209) 및 드라이브(210)가 접속되어 있다.
입력부(206)는 키보드, 마우스, 마이크로폰 등을 포함한다. 출력부(207)는 디스플레이, 스피커 등을 포함한다. 기억부(208)는 하드 디스크나 불휘발성이 메모리 등을 포함한다. 통신부(209)는 네트워크 인터페이스 등을 포함한다. 드라이브(210)는 자기 디스크, 광 디스크, 광자기 디스크, 또는 반도체 메모리 등의 리무버블 미디어(211)를 구동한다.
이상과 같이 구성되는 컴퓨터에서는, CPU(201)가 예를 들어 기억부(208)에 기억되어 있는 프로그램을, 입출력 인터페이스(205) 및 버스(204)를 통해서, RAM(203)에 로드해서 실행함으로써, 상술한 일련의 처리가 행해진다.
컴퓨터(CPU(201))가 실행하는 프로그램은, 예를 들어 패키지 미디어 등으로서의 리무버블 미디어(211)에 기록해서 제공할 수 있다. 또한, 프로그램은 로컬 에리어 네트워크, 인터넷, 디지털 위성 방송이라는, 유선 또는 무선의 전송 매체를 통해서 제공할 수 있다.
컴퓨터에서는, 프로그램은 리무버블 미디어(211)를 드라이브(210)에 장착함으로써, 입출력 인터페이스(205)를 통해서, 기억부(208)에 인스톨할 수 있다. 또한, 프로그램은, 유선 또는 무선의 전송 매체를 통해서, 통신부(209)로 수신하고, 기억부(208)에 인스톨할 수 있다. 기타, 프로그램은, ROM(202)이나 기억부(208)에, 미리 인스톨해 둘 수 있다.
또한, 컴퓨터가 실행하는 프로그램은, 본 명세서에서 설명하는 순서를 따라서 시계열로 처리가 행해지는 프로그램이어도 되고, 병렬로, 혹은 호출이 행해졌을 때 등이 필요한 타이밍에 처리가 행해지는 프로그램이어도 된다.
<제5 실시 형태>
(텔레비전 장치의 구성예)
도 33은 본 개시를 적용한 텔레비전 장치의 개략 구성을 예시하고 있다. 텔레비전 장치(900)는 안테나(901), 튜너(902), 디멀티플렉서(903), 디코더(904), 영상 신호 처리부(905), 표시부(906), 음성 신호 처리부(907), 스피커(908), 외부 인터페이스부(909)를 갖고 있다. 또한, 텔레비전 장치(900)는 제어부(910), 유저 인터페이스부(911) 등을 갖고 있다.
튜너(902)는 안테나(901)에서 수신된 방송파 신호로부터 원하는 채널을 선국해서 복조를 행하고, 얻어진 부호화 비트 스트림을 디멀티플렉서(903)에 출력한다.
디멀티플렉서(903)는 부호화 비트 스트림으로부터 시청 대상인 프로그램의 영상이나 음성의 패킷을 추출하고, 추출한 패킷의 데이터를 디코더(904)에 출력한다. 또한, 디멀티플렉서(903)는 EPG(Electronic Program Guide) 등의 데이터의 패킷을 제어부(910)에 공급한다. 또한, 스크램블이 행해지고 있는 경우, 디멀티플렉서 등에서 스크램블의 해제를 행한다.
디코더(904)는 패킷의 복호화 처리를 행하고, 복호 처리화에 의해 생성된 영상 데이터를 영상 신호 처리부(905), 음성 데이터를 음성 신호 처리부(907)에 출력한다.
영상 신호 처리부(905)는 영상 데이터에 대하여, 노이즈 제거나 유저 설정에 따른 영상 처리 등을 행한다. 영상 신호 처리부(905)는 표시부(906)에 표시시키는 프로그램의 영상 데이터나, 네트워크를 통해서 공급되는 애플리케이션에 기초하는 처리에 의한 화상 데이터 등을 생성한다. 또한, 영상 신호 처리부(905)는 항목의 선택 등의 메뉴 화면 등을 표시하기 위한 영상 데이터를 생성하고, 그것을 프로그램의 영상 데이터에 중첩한다. 영상 신호 처리부(905)는, 이와 같이 해서 생성한 영상 데이터에 기초하여 구동 신호를 생성해서 표시부(906)를 구동한다.
표시부(906)는 영상 신호 처리부(905)로부터의 구동 신호에 기초하여 표시 디바이스(예를 들어 액정 표시 소자 등)를 구동하고, 프로그램의 영상 등을 표시시킨다.
음성 신호 처리부(907)는 음성 데이터에 대하여 노이즈 제거 등의 소정의 처리를 실시하고, 처리 후의 음성 데이터의 D/A 변환 처리나 증폭 처리를 행하여 스피커(908)에 공급함으로써 음성 출력을 행한다.
외부 인터페이스부(909)는 외부 기기나 네트워크와 접속하기 위한 인터페이스이고, 영상 데이터나 음성 데이터 등의 데이터 송수신을 행한다.
제어부(910)에는 유저 인터페이스부(911)가 접속되어 있다. 유저 인터페이스부(911)는 조작 스위치나 리모트 컨트롤 신호 수신부 등으로 구성되어 있고, 유저 조작에 따른 조작 신호를 제어부(910)에 공급한다.
제어부(910)는 CPU(Central Processing Unit)나 메모리 등을 사용해서 구성되어 있다. 메모리는 CPU에 의해 실행되는 프로그램이나 CPU가 처리를 행하는 데 있어서 필요한 각종 데이터, EPG 데이터, 네트워크를 통해서 취득된 데이터 등을 기억한다. 메모리에 기억되어 있는 프로그램은 텔레비전 장치(900)의 기동 시 등의 소정 타이밍으로 CPU에 의해 판독되어 실행된다. CPU는 프로그램을 실행함으로써, 텔레비전 장치(900)가 유저 조작에 따른 동작이 되도록 각 부를 제어한다.
또한, 텔레비전 장치(900)에서는, 튜너(902), 디멀티플렉서(903), 영상 신호 처리부(905), 음성 신호 처리부(907), 외부 인터페이스부(909) 등과 제어부(910)를 접속하기 위해서 버스(912)가 설치되어 있다.
이와 같이 구성된 텔레비전 장치에서는, 디코더(904)에 본원의 복호 장치(복호 방법)의 기능이 설치된다. 이로 인해, 화면 내의 상관성을 이용한 예측을 행할 때의 부호화 효율을 향상시킨 부호화 스트림을 복호할 수 있다.
<제6 실시 형태>
(휴대 전화기의 구성예)
도 34는 본 개시를 적용한 휴대 전화기의 개략 구성을 예시하고 있다. 휴대 전화기(920)는, 통신부(922), 음성 코덱(923), 카메라부(926), 화상 처리부(927), 다중 분리부(928), 기록 재생부(929), 표시부(930), 제어부(931)를 갖고 있다. 이들은, 버스(933)를 통해서 서로 접속되어 있다.
또한, 통신부(922)에는 안테나(921)가 접속되어 있고, 음성 코덱(923)에는 스피커(924)와 마이크로폰(925)이 접속되어 있다. 또한 제어부(931)에는 조작부(932)가 접속되어 있다.
휴대 전화기(920)는 음성 통화 모드나 데이터 통신 모드 등의 각종 모드로, 음성 신호의 송수신, 전자 메일이나 화상 데이터의 송수신, 화상 촬영 또는 데이터 기록 등의 각종 동작을 행한다.
음성 통화 모드에 있어서, 마이크로폰(925)에서 생성된 음성 신호는, 음성 코덱(923)에서 음성 데이터에 대한 변환이나 데이터 압축이 행해져서 통신부(922)에 공급된다. 통신부(922)는 음성 데이터의 변조 처리나 주파수 변환 처리 등을 행하여 송신 신호를 생성한다. 또한, 통신부(922)는 송신 신호를 안테나(921)에 공급해서 도시하지 않은 기지국으로 송신한다. 또한, 통신부(922)는 안테나(921)에서 수신한 수신 신호의 증폭이나 주파수 변환 처리 및 복조 처리 등을 행하고, 얻어진 음성 데이터를 음성 코덱(923)에 공급한다. 음성 코덱(923)은 음성 데이터의 데이터 신장이나 아날로그 음성 신호에 대한 변환을 행하여 스피커(924)에 출력한다.
또한, 데이터 통신 모드에 있어서, 메일 송신을 행하는 경우, 제어부(931)는 조작부(932)의 조작에 의해 입력된 문자 데이터를 접수하고, 입력된 문자를 표시부(930)에 표시한다. 또한, 제어부(931)는 조작부(932)에 있어서의 유저 지시 등에 기초하여 메일 데이터를 생성해서 통신부(922)에 공급한다. 통신부(922)는 메일 데이터의 변조 처리나 주파수 변환 처리 등을 행하고, 얻어진 송신 신호를 안테나(921)로부터 송신한다. 또한, 통신부(922)는 안테나(921)에서 수신한 수신 신호의 증폭이나 주파수 변환 처리 및 복조 처리 등을 행하고, 메일 데이터를 복원한다. 이 메일 데이터를 표시부(930)에 공급하여, 메일 내용의 표시를 행한다.
또한, 휴대 전화기(920)는 수신한 메일 데이터를, 기록 재생부(929)에서 기억 매체에 기억시키는 것도 가능하다. 기억 매체는 재기입 가능한 임의의 기억 매체이다. 예를 들어, 기억 매체는 RAM이나 내장형 플래시 메모리 등의 반도체 메모리, 하드 디스크, 자기 디스크, 광자기 디스크, 광 디스크, USB(Universal Serial Bus) 메모리 또는 메모리 카드 등의 리무버블 미디어이다.
데이터 통신 모드에 있어서 화상 데이터를 송신하는 경우, 카메라부(926)에서 생성된 화상 데이터를, 화상 처리부(927)에 공급한다. 화상 처리부(927)는 화상 데이터의 부호화 처리를 행하고, 부호화 데이터를 생성한다.
다중 분리부(928)는 화상 처리부(927)에서 생성된 부호화 데이터와, 음성 코덱(923)으로부터 공급된 음성 데이터를 소정의 방식으로 다중화해서 통신부(922)에 공급한다. 통신부(922)는 다중화 데이터의 변조 처리나 주파수 변환 처리 등을 행하고, 얻어진 송신 신호를 안테나(921)로부터 송신한다. 또한, 통신부(922)는 안테나(921)에서 수신한 수신 신호의 증폭이나 주파수 변환 처리 및 복조 처리 등을 행하여, 다중화 데이터를 복원한다. 이 다중화 데이터를 다중 분리부(928)에 공급한다. 다중 분리부(928)는 다중화 데이터의 분리를 행하여, 부호화 데이터를 화상 처리부(927), 음성 데이터를 음성 코덱(923)에 공급한다. 화상 처리부(927)는 부호화 데이터의 복호화 처리를 행하여 화상 데이터를 생성한다. 이 화상 데이터를 표시부(930)에 공급하여, 수신한 화상의 표시를 행한다. 음성 코덱(923)은 음성 데이터를 아날로그 음성 신호로 변환해서 스피커(924)에 공급하고, 수신한 음성을 출력한다.
이와 같이 구성된 휴대 전화 장치에서는, 화상 처리부(927)에 본원의 부호화 장치 및 복호 장치(부호화 방법 및 복호 방법)의 기능이 설치된다. 이로 인해, 화면 내의 상관성을 이용한 예측을 행할 때의 부호화 효율을 향상시킬 수 있다. 또한, 화면 내의 상관성을 이용한 예측을 행할 때의 부호화 효율을 향상시킨 부호화 스트림을 복호할 수 있다.
<제7 실시 형태>
(기록 재생 장치의 구성예)
도 35는 본 개시를 적용한 기록 재생 장치의 개략 구성을 예시하고 있다. 기록 재생 장치(940)는, 예를 들어 수신한 방송 프로그램의 오디오 데이터와 비디오 데이터를, 기록 매체에 기록하고, 그 기록된 데이터를 유저의 지시에 따른 타이밍으로 유저에게 제공한다. 또한, 기록 재생 장치(940)는, 예를 들어 다른 장치로부터 오디오 데이터나 비디오 데이터를 취득하고, 그들을 기록 매체에 기록시킬 수도 있다. 또한, 기록 재생 장치(940)는 기록 매체에 기록되어 있는 오디오 데이터나 비디오 데이터를 복호해서 출력함으로써, 모니터 장치 등에 있어서 화상 표시나 음성 출력을 행할 수 있도록 한다.
기록 재생 장치(940)는 튜너(941), 외부 인터페이스부(942), 인코더(943), HDD(Hard Disk Drive)부(944), 디스크 드라이브(945), 셀렉터(946), 디코더(947), OSD(On-Screen Display)부(948), 제어부(949), 유저 인터페이스부(950)를 갖고 있다.
튜너(941)는, 도시하지 않은 안테나에서 수신된 방송 신호로부터 원하는 채널을 선국한다. 튜너(941)는 원하는 채널의 수신 신호를 복조해서 얻어진 부호화 비트 스트림을 셀렉터(946)에 출력한다.
외부 인터페이스부(942)는 IEEE1394 인터페이스, 네트워크 인터페이스부, USB 인터페이스, 플래시 메모리 인터페이스 등의 적어도 어느 것으로 구성되어 있다. 외부 인터페이스부(942)는 외부 기기나 네트워크, 메모리 카드 등과 접속하기 위한 인터페이스이며, 기록 하는 영상 데이터나 음성 데이터 등의 데이터 수신을 행한다.
인코더(943)는 외부 인터페이스부(942)로부터 공급된 영상 데이터나 음성 데이터가 부호화되지 않고 있을 때 소정의 방식으로 부호화를 행하고, 부호화 비트 스트림을 셀렉터(946)에 출력한다.
HDD부(944)는 영상이나 음성 등의 콘텐츠 데이터, 각종 프로그램이나 그 밖의 데이터 등을 내장된 하드 디스크에 기록하고, 또한 재생 시 등에 그들을 당해 하드 디스크로부터 판독한다.
디스크 드라이브(945)는 장착되어 있는 광 디스크에 대한 신호의 기록 및 재생을 행한다. 광 디스크, 예를 들어 DVD 디스크(DVD-Video, DVD- RAM, DVD-R, DVD-RW, DVD+R, DVD+RW 등)나 Blu-ray(등록상표) 디스크 등이다.
셀렉터(946)는 영상이나 음성의 기록 시에는, 튜너(941) 또는 인코더(943)로부터의 어느 부호화 비트 스트림을 선택하고, HDD부(944)나 디스크 드라이브(945)중 어느 것에 공급한다. 또한, 셀렉터(946)는 영상이나 음성의 재생 시에, HDD부(944) 또는 디스크 드라이브(945)로부터 출력된 부호화 비트 스트림을 디코더(947)에 공급한다.
디코더(947)는 부호화 비트 스트림의 복호화 처리를 행한다. 디코더(947)는 복호 처리화를 행함으로써 생성된 영상 데이터를 OSD부(948)에 공급한다. 또한, 디코더(947)는, 복호 처리화를 행함으로써 생성된 음성 데이터를 출력한다.
OSD부(948)는 항목의 선택 등의 메뉴 화면 등을 표시하기 위한 영상 데이터를 생성하고, 그것을 디코더(947)로부터 출력된 영상 데이터에 중첩해서 출력한다.
제어부(949)에는, 유저 인터페이스부(950)가 접속되어 있다. 유저 인터페이스부(950)는 조작 스위치나 리모트 컨트롤 신호 수신부 등으로 구성되어 있고, 유저 조작에 따른 조작 신호를 제어부(949)에 공급한다.
제어부(949)는 CPU나 메모리 등을 사용해서 구성되어 있다. 메모리는 CPU에 의해 실행되는 프로그램이나 CPU가 처리를 행하는 데 있어서 필요한 각종 데이터를 기억한다. 메모리에 기억되어 있는 프로그램은, 기록 재생 장치(940)의 기동 시 등의 소정 타이밍으로 CPU에 의해 판독되어 실행된다. CPU는 프로그램을 실행함으로써, 기록 재생 장치(940)가 유저 조작에 따른 동작이 되도록 각 부를 제어한다.
이와 같이 구성된 기록 재생 장치에서는, 인코더(943)에 본원의 부호화 장치(부호화 방법)의 기능이 설치되고, 디코더(947)에 본원의 복호 장치(복호 방법)의 기능이 설치된다. 이로 인해, 화면 내의 상관성을 이용한 예측을 행할 때의 부호화 효율을 향상시킬 수 있다. 또한, 화면 내의 상관성을 이용한 예측을 행할 때의 부호화 효율을 향상시킨 부호화 스트림을 복호할 수 있다.
<제8 실시 형태>
(촬상 장치의 구성예)
도 36은 본 개시를 적용한 촬상 장치의 개략 구성을 예시하고 있다. 촬상 장치(960)는 피사체를 촬상하고, 피사체의 화상을 표시부에 표시시키거나, 그것을 화상 데이터로 해서, 기록 매체에 기록한다.
촬상 장치(960)는 광학 블록(961), 촬상부(962), 카메라 신호 처리부(963), 화상 데이터 처리부(964), 표시부(965), 외부 인터페이스부(966), 메모리부(967), 미디어 드라이브(968), OSD부(969), 제어부(970)를 갖고 있다. 또한, 제어부(970)에는, 유저 인터페이스부(971)가 접속되어 있다. 또한, 화상 데이터 처리부(964)이나 외부 인터페이스부(966), 메모리부(967), 미디어 드라이브(968), OSD부(969), 제어부(970) 등은 버스(972)를 통해서 접속되어 있다.
광학 블록(961)은 포커스 렌즈나 조리개 기구 등을 사용해서 구성되어 있다. 광학 블록(961)은, 피사체의 광학 상을 촬상부(962)의 촬상면에 결상시킨다. 촬상부(962)는 CCD 또는 CMOS 이미지 센서를 사용해서 구성되어 있고, 광전 변환에 의해 광학 상에 따른 전기 신호를 생성해서 카메라 신호 처리부(963)에 공급한다.
카메라 신호 처리부(963)는 촬상부(962)로부터 공급된 전기 신호에 대하여 니 보정이나 감마 보정, 색 보정 등의 다양한 카메라 신호 처리를 행한다. 카메라 신호 처리부(963)는 카메라 신호 처리후의 화상 데이터를 화상 데이터 처리부(964)에 공급한다.
화상 데이터 처리부(964)는 카메라 신호 처리부(963)로부터 공급된 화상 데이터의 부호화 처리를 행한다. 화상 데이터 처리부(964)는 부호화 처리를 행함으로써 생성된 부호화 데이터를 외부 인터페이스부(966)나 미디어 드라이브(968)에 공급한다. 또한, 화상 데이터 처리부(964)는 외부 인터페이스부(966)나 미디어 드라이브(968)로부터 공급된 부호화 데이터의 복호화 처리를 행한다. 화상 데이터 처리부(964)는 복호화 처리를 행함으로써 생성된 화상 데이터를 표시부(965)에 공급한다. 또한, 화상 데이터 처리부(964)는 카메라 신호 처리부(963)로부터 공급된 화상 데이터를 표시부(965)에 공급하는 처리나, OSD부(969)로부터 취득한 표시용 데이터를, 화상 데이터에 중첩시켜서 표시부(965)에 공급한다.
OSD부(969)는 기호, 문자 또는 도형을 포함하는 메뉴 화면이나 아이콘 등의 표시용 데이터를 생성해서 화상 데이터 처리부(964)에 출력한다.
외부 인터페이스부(966)는, 예를 들어 USB 입출력 단자 등으로 구성되고, 화상의 인쇄를 행하는 경우에, 프린터와 접속된다. 또한, 외부 인터페이스부(966)에는, 필요에 따라서 드라이브가 접속되고, 자기 디스크, 광 디스크 등의 리무버블 미디어가 적절히 장착되고, 그들로부터 판독된 컴퓨터 프로그램이, 필요에 따라서, 인스톨된다. 또한, 외부 인터페이스부(966)는 LAN이나 인터넷 등의 소정의 네트워크에 접속되는 네트워크 인터페이스를 갖는다. 제어부(970)는, 예를 들어 유저 인터페이스부(971)로부터의 지시에 따라서, 미디어 드라이브(968)로부터 부호화 데이터를 판독하고, 그것을 외부 인터페이스부(966)로부터, 네트워크를 통해서 접속되는 다른 장치에 공급시킬 수 있다. 또한, 제어부(970)는 네트워크를 통해서 다른 장치로부터 공급되는 부호화 데이터나 화상 데이터를, 외부 인터페이스부(966)를 통해서 취득하고, 그것을 화상 데이터 처리부(964)에 공급하거나 할 수 있다.
미디어 드라이브(968)에서 구동되는 기록 미디어로서는, 예를 들어 자기 디스크, 광자기 디스크, 광 디스크 또는 반도체 메모리 등의, 판독 기입 가능한 임의의 리무버블 미디어가 사용된다. 또한, 기록 미디어는 리무버블 미디어로서의 종류도 임의이고, 테이프 디바이스여도 되고, 디스크여도 되고, 메모리 카드여도 된다. 물론, 비접촉 IC(Integrated Circuit) 카드 등이어도 된다.
또한, 미디어 드라이브(968)와 기록 미디어를 일체화하고, 예를 들어 내장형 하드디스크 드라이브나 SSD(Solid State Drive) 등과 같이, 비가반성의 기억 매체에 의해 구성되도록 해도 된다.
제어부(970)는 CPU를 사용해서 구성되어 있다. 메모리부(967)는 제어부(970)에 의해 실행되는 프로그램이나 제어부(970)가 처리를 행하는 데 있어서 필요한 각종 데이터 등을 기억한다. 메모리부(967)에 기억되어 있는 프로그램은, 촬상 장치(960)의 기동 시 등의 소정 타이밍으로 제어부(970)에 의해 판독되어 실행된다. 제어부(970)는 프로그램을 실행함으로써, 촬상 장치(960)가 유저 조작에 따른 동작이 되도록 각 부를 제어한다.
이와 같이 구성된 촬상 장치에서는, 화상 데이터 처리부(964)에 본원의 부호화 장치 및 복호 장치(부호화 방법 및 복호 방법)의 기능이 설치된다. 이로 인해, 화면 내의 상관성을 이용한 예측을 행할 때의 부호화 효율을 향상시킬 수 있다. 또한, 화면 내의 상관성을 이용한 예측을 행할 때의 부호화 효율을 향상시킨 부호화 스트림을 복호할 수 있다.
<제9 실시 형태>
(실시의 그 외의 예)
이상에 있어서 본 개시를 적용하는 장치나 시스템 등의 예를 설명했지만, 본 개시는, 이에 한정하지 않고, 이러한 장치 또는 시스템을 구성하는 장치에 탑재하는 모든 구성, 예를 들어 시스템 LSI(Large Scale Integration) 등으로서의 프로세서, 복수의 프로세서 등을 사용하는 모듈, 복수의 모듈 등을 사용하는 유닛, 유닛에 또한 그 외의 기능을 부가한 세트 등(즉, 장치의 일부 구성)으로서 실시할 수도 있다.
(비디오 세트의 구성예)
본 개시를 세트로 해서 실시하는 경우의 예에 대해서, 도 37을 참조하여 설명한다. 도 37은 본 개시를 적용한 비디오 세트의 개략적인 구성의 일례를 나타내고 있다.
최근, 전자 기기의 다기능화가 진행되고 있으며, 그 개발이나 제조에 있어서, 그 일부 구성을 판매나 제공 등으로서 실시하는 경우, 1 기능을 갖는 구성으로서 실시를 행하는 경우뿐만 아니라, 관련된 기능을 갖는 복수의 구성을 조합하여, 복수의 기능을 갖는 1세트로 하여 실시를 행하는 경우도 많이 볼 수 있게 되었다.
도 37에 나타나는 비디오 세트(1300)는, 이러한 다기능화된 구성이며, 화상의 부호화나 복호(어느 한쪽이어도 되고, 양쪽이어도 된다)에 관한 기능을 갖는 디바이스에, 그 기능에 관련된 그 외의 기능을 갖는 디바이스를 조합한 것이다.
도 37에 도시된 바와 같이, 비디오 세트(1300)는, 비디오 모듈(1311), 외부 메모리(1312), 파워 매니지먼트 모듈(1313) 및 프론트엔드 모듈(1314) 등의 모듈군과, 커넥티비티(1321), 카메라(1322) 및 센서(1323) 등의 관련된 기능을 갖는 디바이스를 갖는다.
모듈은 서로 관련된 몇 가지 부품적 기능을 모아서, 통합된 기능을 갖는 부품으로 한 것이다. 구체적인 물리적 구성은 임의이지만, 예를 들어 각각 기능을 갖는 복수의 프로세서, 저항이나 콘덴서 등의 전자 회로 소자, 그 외의 디바이스 등을 배선 기판 등에 배치해서 일체화한 것이 생각된다. 또한, 모듈에 다른 모듈이나 프로세서 등을 조합해서 새로운 모듈로 하는 것도 생각된다.
도 37의 예의 경우, 비디오 모듈(1311)은 화상 처리에 관한 기능을 갖는 구성을 조합한 것이며, 애플리케이션 프로세서, 비디오 프로세서, 브로드밴드 모뎀(1333) 및 RF 모듈(1334)을 갖는다.
프로세서는, 소정의 기능을 갖는 구성을 SoC(System On a Chip)에 의해 반도체 칩에 집적한 것이며, 예를 들어 시스템 LSI(Large Scale Integration) 등으로 불리는 것도 있다. 이 소정의 기능을 갖는 구성은, 논리 회로(하드웨어 구성)여도 되고, CPU, ROM, RAM 등과, 그들을 사용해서 실행되는 프로그램(소프트웨어 구성)이어도 되고, 그 양쪽을 조합한 것이어도 된다. 예를 들어, 프로세서가 논리 회로와 CPU, ROM, RAM 등을 갖고, 기능의 일부를 논리 회로(하드웨어 구성)에 의해 실현하고, 그 외의 기능을 CPU에 있어서 실행되는 프로그램(소프트웨어 구성)에 의해 실현하도록 해도 된다.
도 37의 애플리케이션 프로세서(1331)는, 화상 처리에 관한 애플리케이션을 실행하는 프로세서이다. 이 애플리케이션 프로세서(1331)에 있어서 실행되는 애플리케이션은, 소정의 기능을 실현하기 위해서, 연산 처리를 행할 뿐만 아니라, 예를 들어 비디오 프로세서(1332) 등, 비디오 모듈(1311) 내외의 구성을 필요에 따라서 제어할 수도 있다.
비디오 프로세서(1332)는, 화상의 부호화·복호(그 한쪽 혹은 양쪽)에 관한 기능을 갖는 프로세서이다.
브로드밴드 모뎀(1333)은 인터넷이나 공중 전화 회선망 등의 광대역의 회선을 통해서 행해지는 유선 혹은 무선(또는 그 양쪽)의 광대역 통신에 관한 처리를 행하는 프로세서(혹은 모듈)이다. 예를 들어, 브로드밴드 모뎀(1333)은 송신하는 데이터(디지털 신호)를 디지털 변조하거나 해서 아날로그 신호로 변환하거나, 수신한 아날로그 신호를 복조해서 데이터(디지털 신호)로 변환하거나 한다. 예를 들어, 브로드밴드 모뎀(1333)은 비디오 프로세서(1332)가 처리하는 화상 데이터나 화상 데이터가 부호화된 스트림, 애플리케이션 프로그램, 설정 데이터 등, 임의의 정보를 디지털 변조·복조할 수 있다.
RF 모듈(1334)은 안테나를 통해서 송수신되는 RF(Radio Frequency) 신호에 대하여, 주파수 변환, 변복조, 증폭, 필터 처리 등을 행하는 모듈이다. 예를 들어, RF 모듈(1334)은 브로드밴드 모뎀(1333)에 의해 생성된 기저 대역 신호에 대하여 주파수 변환 등을 행하여 RF 신호를 생성한다. 또한, 예를 들어 RF 모듈(1334)은, 프론트엔드 모듈(1314)을 통해서 수신된 RF 신호에 대하여 주파수 변환 등을 행하여 베이스 밴드 신호를 생성한다.
또한, 도 37에 있어서 점선(1341)으로 나타낸 바와 같이, 애플리케이션 프로세서(1331)와 비디오 프로세서(1332)를, 일체화하여, 하나의 프로세서로서 구성되도록 해도 된다.
외부 메모리(1312)는 비디오 모듈(1311)의 외부에 설치된, 비디오 모듈(1311)에 의해 이용되는 기억 디바이스를 갖는 모듈이다. 이 외부 메모리(1312)의 기억 디바이스는, 어떤 물리 구성에 의해 실현하도록 해도 되지만, 일반적으로 프레임 단위의 화상 데이터와 같은 대용량의 데이터의 저장에 이용되는 일이 많으므로, 예를 들어 DRAM(Dynamic Random Access Memory)과 같은 비교적 저렴하고 대용량인 반도체 메모리에 의해 실현하는 것이 바람직하다.
파워 매니지먼트 모듈(1313)은 비디오 모듈(1311)(비디오 모듈(1311) 내의 각 구성)에 대한 전력 공급을 관리하고, 제어한다.
프론트엔드 모듈(1314)은 RF 모듈(1334)에 대하여 프론트엔드 기능(안테나측의 송수신단의 회로)을 제공하는 모듈이다. 도 37에 도시된 바와 같이, 프론트엔드 모듈(1314)은, 예를 들어 안테나부(1351), 필터(1352) 및 증폭부(1353)를 갖는다.
안테나부(1351)는 무선 신호를 송수신하는 안테나 및 그 주변 구성을 갖는다. 안테나부(1351)는 증폭부(1353)로부터 공급되는 신호를 무선 신호로서 송신하고, 수신한 무선 신호를 전기 신호(RF 신호)로서 필터(1352)에 공급한다. 필터(1352)는 안테나부(1351)를 통해서 수신된 RF 신호에 대하여 필터 처리 등을 행하고, 처리 후의 RF 신호를 RF 모듈(1334)에 공급한다. 증폭부(1353)는 RF 모듈(1334)로부터 공급되는 RF 신호를 증폭하고, 안테나부(1351)에 공급한다.
커넥티비티(1321)는 외부와의 접속에 관한 기능을 갖는 모듈이다. 커넥티비티(1321)의 물리 구성은 임의이다. 예를 들어, 커넥티비티(1321)는 브로드밴드 모뎀(1333)이 대응하는 통신 규격 이외의 통신 기능을 갖는 구성이나 외부 입출력 단자 등을 갖는다.
예를 들어, 커넥티비티(1321)가, Bluetooth(등록상표), IEEE 802.11(예를 들어 Wi-Fi(Wireless Fidelity, 등록상표)), NFC(Near Field Co㎜unication), IrDA(InfraRed Data Association) 등의 무선 통신 규격에 준거하는 통신 기능을 갖는 모듈이나, 그 규격에 준거한 신호를 송수신하는 안테나 등을 갖도록 해도 된다. 또한, 예를 들어 커넥티비티(1321)가 USB(Universal Serial Bus), HDMI(등록상표)(High-Definition Multimedia Interface) 등의 유선 통신 규격에 준거하는 통신 기능을 갖는 모듈이나, 그 규격에 준거한 단자를 갖게 해도 된다. 또한, 예를 들어 커넥티비티(1321)가 아날로그 입출력 단자 등의 그 밖의 데이터(신호) 전송 기능 등을 갖도록 해도 된다.
또한, 커넥티비티(1321)가 데이터(신호)의 전송처의 디바이스를 포함하도록 해도 된다. 예를 들어, 커넥티비티(1321)가 자기 디스크, 광 디스크, 광자기 디스크 또는 반도체 메모리 등의 기록 매체에 대하여 데이터의 판독이나 기입을 행하는 드라이브(리무버블 미디어의 드라이브뿐만 아니라, 하드 디스크, SSD(Solid State Drive), NAS(Network Attached Storage) 등도 포함한다)를 갖게 해도 된다. 또한, 커넥티비티(1321)가 화상이나 음성의 출력 디바이스(모니터나 스피커 등)를 갖게 해도 된다.
카메라(1322)는 피사체를 촬상하고, 피사체의 화상 데이터를 얻는 기능을 갖는 모듈이다. 카메라(1322)의 촬상에 의해 얻어진 화상 데이터는, 예를 들어 비디오 프로세서(1332)에 공급되어 부호화된다.
센서(1323)는, 예를 들어 음성 센서, 초음파 센서, 광 센서, 조도 센서, 적외선 센서, 이미지 센서, 회전 센서, 각도 센서, 각속도 센서, 속도 센서, 가속도 센서, 경사 센서, 자기 식별 센서, 충격 센서, 온도 센서 등 임의의 센서 기능을 갖는 모듈이다. 센서(1323)에 의해 검출된 데이터는, 예를 들어 애플리케이션 프로세서(1331)에 공급되어 애플리케이션 등에 의해 이용된다.
이상에 있어서 모듈로서 설명한 구성을 프로세서로서 실현하도록 해도 되고, 반대로 프로세서로서 설명한 구성을 모듈로서 실현하도록 해도 된다.
이상과 같은 구성의 비디오 세트(1300)에 있어서, 후술하는 바와 같이 비디오 프로세서(1332)에 본 개시를 적용할 수 있다. 따라서, 비디오 세트(1300)는, 본 개시를 적용한 세트로 해서 실시할 수 있다.
(비디오 프로세서의 구성예)
도 38은 본 개시를 적용한 비디오 프로세서(1332)(도 37)의 개략적인 구성의 일례를 나타내고 있다.
도 38의 예의 경우, 비디오 프로세서(1332)는 비디오 신호 및 오디오 신호의 입력을 받아서 이들을 소정의 방식으로 부호화하는 기능과, 부호화된 비디오 데이터 및 오디오 데이터를 복호하고, 비디오 신호 및 오디오 신호를 재생 출력하는 기능을 갖는다.
도 38에 도시된 바와 같이, 비디오 프로세서(1332)는 비디오 입력 처리부(1401), 제1 화상 확대 축소부(1402), 제2 화상 확대 축소부(1403), 비디오 출력 처리부(1404), 프레임 메모리(1405) 및 메모리 제어부(1406)를 갖는다. 또한, 비디오 프로세서(1332)는, 인코드·디코드 엔진(1407), 비디오 ES(Elementary Stream) 버퍼(1408A 및 1408B), 및 오디오 ES 버퍼(1409A 및 1409B)를 갖는다. 또한, 비디오 프로세서(1332)는 오디오 인코더(1410), 오디오 디코더(1411), 다중화부(MUX(Multiplexer))(1412), 역다중화부(DMUX(Demultiplexer))(1413) 및 스트림 버퍼(1414)를 갖는다.
비디오 입력 처리부(1401)는, 예를 들어 커넥티비티(1321)(도 37) 등으로부터 입력된 비디오 신호를 취득하여, 디지털 화상 데이터로 변환한다. 제1 화상 확대 축소부(1402)는 화상 데이터에 대하여 포맷 변환이나 화상의 확대 축소 처리 등을 행한다. 제2 화상 확대 축소부(1403)는 화상 데이터에 대하여, 비디오 출력 처리부(1404)를 통해서 출력할 곳에서의 포맷에 따라서 화상의 확대 축소 처리를 행하거나, 제1 화상 확대 축소부(1402)와 마찬가지의 포맷 변환이나 화상의 확대 축소 처리 등을 행하거나 한다. 비디오 출력 처리부(1404)는 화상 데이터에 대하여, 포맷 변환이나 아날로그 신호에 대한 변환 등을 행하여, 재생된 비디오 신호로서 예를 들어 커넥티비티(1321)(도 37) 등에 출력한다.
프레임 메모리(1405)는 비디오 입력 처리부(1401), 제1 화상 확대 축소부(1402), 제2 화상 확대 축소부(1403), 비디오 출력 처리부(1404) 및 인코드·디코드 엔진(1407)에 의해 공용되는 화상 데이터용 메모리이다. 프레임 메모리(1405)는, 예를 들어 DRAM 등의 반도체 메모리로서 실현된다.
메모리 제어부(1406)는 인코드·디코드 엔진(1407)으로부터의 동기 신호를 받아, 액세스 관리 테이블(1406A)에 기입된 프레임 메모리(1405)에 대한 액세스 스케줄에 따라서 프레임 메모리(1405)에 대한 기입·판독의 액세스를 제어한다. 액세스 관리 테이블(1406A)은 인코드·디코드 엔진(1407), 제1 화상 확대 축소부(1402), 제2 화상 확대 축소부(1403) 등에서 실행되는 처리에 따라서, 메모리 제어부(1406)에 의해 갱신된다.
인코드·디코드 엔진(1407)은 화상 데이터의 인코드 처리, 및 화상 데이터가 부호화된 데이터인 비디오 스트림의 디코드 처리를 행한다. 예를 들어, 인코드·디코드 엔진(1407)은 프레임 메모리(1405)로부터 판독한 화상 데이터를 부호화하고, 비디오 스트림으로서 비디오 ES 버퍼(1408A)에 순차 기입한다. 또한, 예를 들어 비디오 ES 버퍼(1408B)로부터 비디오 스트림을 순차 판독해서 복호하고, 화상 데이터로서 프레임 메모리(1405)에 순차 기입한다. 인코드·디코드 엔진(1407)은 이들의 부호화나 복호에 있어서, 프레임 메모리(1405)를 작업 영역으로서 사용한다. 또한, 인코드·디코드 엔진(1407)은, 예를 들어 매크로 블록마다의 처리를 개시하는 타이밍으로, 메모리 제어부(1406)에 대하여 동기 신호를 출력한다.
비디오 ES 버퍼(1408A)는 인코드·디코드 엔진(1407)에 의해 생성된 비디오 스트림을 버퍼링하여, 다중화부(MUX)(1412)에 공급한다. 비디오 ES 버퍼(1408B)는, 역다중화부(DMUX)(1413)로부터 공급된 비디오 스트림을 버퍼링하여, 인코드·디코드 엔진(1407)에 공급한다.
오디오 ES 버퍼(1409A)는 오디오 인코더(1410)에 의해 생성된 오디오 스트림을 버퍼링하여, 다중화부(MUX)(1412)에 공급한다. 오디오 ES 버퍼(1409B)는 역다중화부(DMUX)(1413)로부터 공급된 오디오 스트림을 버퍼링하여, 오디오 디코더(1411)에 공급한다.
오디오 인코더(1410)는, 예를 들어 커넥티비티(1321)(도 37) 등으로부터 입력된 오디오 신호를 예를 들어 디지털 변환하고, 예를 들어 MPEG 오디오 방식이나 AC3(AudioCode number 3) 방식 등의 소정의 방식으로 부호화한다. 오디오 인코더(1410)는 오디오 신호가 부호화된 데이터인 오디오 스트림을 오디오 ES 버퍼(1409A)에 순차 기입한다. 오디오 디코더(1411)는 오디오 ES 버퍼(1409B)로부터 공급된 오디오 스트림을 복호하고, 예를 들어 아날로그 신호에 대한 변환 등을 행하여, 재생된 오디오 신호로서 예를 들어 커넥티비티(1321)(도 37) 등에 공급한다.
다중화부(MUX)(1412)는 비디오 스트림과 오디오 스트림을 다중화한다. 이 다중화의 방법(즉, 다중화에 의해 생성되는 비트 스트림의 포맷)은 임의이다. 또한, 이 다중화 시에, 다중화부(MUX)(1412)는 소정의 헤더 정보 등을 비트 스트림에 부가할 수도 있다. 즉, 다중화부(MUX)(1412)는 다중화에 의해 스트림의 포맷을 변환할 수 있다. 예를 들어, 다중화부(MUX)(1412)는 비디오 스트림과 오디오 스트림을 다중화함으로써, 전송용 포맷의 비트 스트림인 트랜스포트 스트림으로 변환한다. 또한, 예를 들어 다중화부(MUX)(1412)는 비디오 스트림과 오디오 스트림을 다중화함으로써, 기록용 파일 포맷의 데이터(파일 데이터)로 변환한다.
역다중화부(DMUX)(1413)는 다중화부(MUX)(1412)에 의한 다중화에 대응하는 방법으로, 비디오 스트림과 오디오 스트림이 다중화된 비트 스트림을 역다중화한다. 즉, 역다중화부(DMUX)(1413)는 스트림 버퍼(1414)로부터 판독된 비트 스트림으로부터 비디오 스트림과 오디오 스트림을 추출한다(비디오 스트림과 오디오 스트림을 분리한다). 즉, 역다중화부(DMUX)(1413)는 역다중화에 의해 스트림의 포맷을 변환(다중화부(MUX)(1412)에 의한 변환의 역변환)할 수 있다. 예를 들어, 역다중화부(DMUX)(1413)는, 예를 들어 커넥티비티(1321)나 브로드밴드 모뎀(1333) 등(모두 도 37)으로부터 공급된 트랜스포트 스트림을, 스트림 버퍼(1414)를 통해서 취득하고, 역다중화함으로써, 비디오 스트림과 오디오 스트림으로 변환할 수 있다. 또한, 예를 들어 역다중화부(DMUX)(1413)는, 예를 들어 커넥티비티(1321)에 의해(도 37) 각종 기록 매체로부터 판독된 파일 데이터를, 스트림 버퍼(1414)를 통해서 취득하고, 역다중화함으로써, 비디오 스트림과 오디오 스트림으로 변환할 수 있다.
스트림 버퍼(1414)는 비트 스트림을 버퍼링한다. 예를 들어, 스트림 버퍼(1414)는 다중화부(MUX)(1412)로부터 공급된 트랜스포트 스트림을 버퍼링하고, 소정의 타이밍에 있어서, 혹은 외부로부터의 요구 등에 기초하여, 예를 들어 커넥티비티(1321)나 브로드밴드 모뎀(1333)(모두 도 37) 등에 공급한다.
또한, 예를 들어 스트림 버퍼(1414)는, 다중화부(MUX)(1412)로부터 공급된 파일 데이터를 버퍼링하고, 소정의 타이밍에 있어서, 혹은 외부로부터의 요구 등에 기초하여, 예를 들어 커넥티비티(1321)(도 37) 등에 공급하고, 각종 기록 매체에 기록시킨다.
또한, 스트림 버퍼(1414)는, 예를 들어 커넥티비티(1321)나 브로드밴드 모뎀(1333) 등(모두 도 37)을 통해서 취득한 트랜스포트 스트림을 버퍼링하고, 소정의 타이밍에 있어서, 혹은 외부로부터의 요구 등에 기초하여, 역다중화부(DMUX)(1413)에 공급한다.
또한, 스트림 버퍼(1414)는, 예를 들어 커넥티비티(1321)(도 37) 등에 있어서 각종 기록 매체로부터 판독된 파일 데이터를 버퍼링하고, 소정의 타이밍에 있어서, 혹은 외부로부터의 요구 등에 기초하여, 역다중화부(DMUX)(1413)에 공급한다.
이어서, 이와 같은 구성의 비디오 프로세서(1332)의 동작의 예에 대해서 설명한다. 예를 들어, 커넥티비티(1321)(도 37) 등으로부터 비디오 프로세서(1332)에 입력된 비디오 신호는, 비디오 입력 처리부(1401)에 있어서 4:2:2Y/Cb/Cr 방식 등의 소정의 방식의 디지털 화상 데이터로 변환되어, 프레임 메모리(1405)에 순차 기입된다. 이 디지털 화상 데이터는, 제1 화상 확대 축소부(1402) 또는 제2 화상 확대 축소부(1403)에 판독되어, 4:2:0Y/Cb/Cr 방식 등의 소정의 방식에 대한 포맷 변환 및 확대 축소 처리가 행해지고, 다시 프레임 메모리(1405)에 기입된다. 이 화상 데이터는 인코드·디코드 엔진(1407)에 의해 부호화되고, 비디오 스트림으로서 비디오 ES 버퍼(1408A)에 기입된다.
또한, 커넥티비티(1321)(도 37) 등으로부터 비디오 프로세서(1332)에 입력된 오디오 신호는, 오디오 인코더(1410)에 의해 부호화되고, 오디오 스트림으로서, 오디오 ES 버퍼(1409A)에 기입된다.
비디오 ES 버퍼(1408A)의 비디오 스트림과, 오디오 ES 버퍼(1409A)의 오디오 스트림은 다중화부(MUX)(1412)에 판독되어 다중화되고, 트랜스포트 스트림 혹은 파일 데이터 등으로 변환된다. 다중화부(MUX)(1412)에 의해 생성된 트랜스포트 스트림은, 스트림 버퍼(1414)에 버퍼된 후, 예를 들어 커넥티비티(1321)나 브로드밴드 모뎀(1333)(모두 도 37) 등을 통해서 외부 네트워크에 출력된다. 또한, 다중화부(MUX)(1412)에 의해 생성된 파일 데이터는 스트림 버퍼(1414)에 버퍼된 후, 예를 들어 커넥티비티(1321)(도 37) 등에 출력되고, 각종 기록 매체에 기록된다.
또한, 예를 들어 커넥티비티(1321)나 브로드밴드 모뎀(1333)(모두 도 37) 등을 통해서 외부 네트워크로부터 비디오 프로세서(1332)에 입력된 트랜스포트 스트림은, 스트림 버퍼(1414)에 버퍼된 후, 역다중화부(DMUX)(1413)에 의해 역다중화된다. 또한, 예를 들어 커넥티비티(1321)(도 37) 등에 있어서 각종 기록 매체로부터 판독되고, 비디오 프로세서(1332)에 입력된 파일 데이터는 스트림 버퍼(1414)에 버퍼된 후, 역다중화부(DMUX)(1413)에 의해 역다중화된다. 즉, 비디오 프로세서(1332)에 입력된 트랜스포트 스트림 또는 파일 데이터는, 역다중화부(DMUX)(1413)에 의해 비디오 스트림과 오디오 스트림으로 분리된다.
오디오 스트림은 오디오 ES 버퍼(1409B)를 통해서 오디오 디코더(1411)에 공급되어, 복호되어서 오디오 신호가 재생된다. 또한, 비디오 스트림은 비디오 ES 버퍼(1408B)에 기입된 후, 인코드·디코드 엔진(1407)에 의해 순차 판독되고 복호되어 프레임 메모리(1405)에 기입된다. 복호된 화상 데이터는 제2 화상 확대 축소부(1403)에 의해 확대 축소 처리되어, 프레임 메모리(1405)에 기입된다. 그리고, 복호된 화상 데이터는, 비디오 출력 처리부(1404)에 판독되어, 4:2:2Y/Cb/Cr 방식 등의 소정의 방식으로 포맷 변환되고, 또한 아날로그 신호로 변환되어, 비디오 신호가 재생 출력된다.
이와 같이 구성되는 비디오 프로세서(1332)에 본 개시를 적용하는 경우, 인코드·디코드 엔진(1407)에, 상술한 각 실시 형태에 따른 본 개시를 적용하면 된다. 즉, 예를 들어 인코드·디코드 엔진(1407)이, 제1 내지 제3 실시 형태에 따른 부호화 장치나 복호 장치의 기능을 갖도록 하면 된다. 이와 같이 함으로써, 비디오 프로세서(1332)는, 도 1 내지 도 31을 참조하여 상술한 효과와 마찬가지 효과를 얻을 수 있다.
또한, 인코드·디코드 엔진(1407)에 있어서, 본 개시(즉, 상술한 각 실시 형태에 따른 부호화 장치나 복호 장치의 기능)는, 논리 회로 등의 하드웨어에 의해 실현하도록 해도 되고, 내장 프로그램 등의 소프트웨어에 의해 실현하도록 해도 되고, 그들 양쪽에 의해 실현하도록 해도 된다.
(비디오 프로세서의 다른 구성예)
도 39는 본 개시를 적용한 비디오 프로세서(1332)(도 37)의 개략적인 구성의 다른 예를 나타내고 있다. 도 39의 예의 경우, 비디오 프로세서(1332)는 비디오 데이터를 소정의 방식으로 부호화·복호하는 기능을 갖는다.
보다 구체적으로는, 도 39에 도시된 바와 같이, 비디오 프로세서(1332)는 제어부(1511), 디스플레이 인터페이스(1512), 디스플레이 엔진(1513), 화상 처리 엔진(1514) 및 내부 메모리(1515)를 갖는다. 또한, 비디오 프로세서(1332)는 코덱 엔진(1516), 메모리 인터페이스(1517), 다중화·역다중화부(MUX DMUX)(1518), 네트워크 인터페이스(1519) 및 비디오 인터페이스(1520)를 갖는다.
제어부(1511)는 디스플레이 인터페이스(1512), 디스플레이 엔진(1513), 화상 처리 엔진(1514) 및 코덱 엔진(1516) 등, 비디오 프로세서(1332) 내의 각 처리부의 동작을 제어한다.
도 39에 도시된 바와 같이, 제어부(1511)는, 예를 들어 메인 CPU(1531), 서브 CPU(1532) 및 시스템 컨트롤러(1533)를 갖는다. 메인 CPU(1531)는 비디오 프로세서(1332) 내의 각 처리부의 동작을 제어하기 위한 프로그램 등을 실행한다. 메인 CPU(1531)는, 그 프로그램 등에 따라서 제어 신호를 생성하고, 각 처리부에 공급한다(즉, 각 처리부의 동작을 제어한다). 서브 CPU(1532)는 메인 CPU(1531)의 보조적인 역할을 한다. 예를 들어, 서브 CPU(1532)는, 메인 CPU(1531)가 실행하는 프로그램 등의 자프로세스나 서브루틴 등을 실행한다. 시스템 컨트롤러(1533)는, 메인 CPU(1531) 및 서브 CPU(1532)가 실행할 프로그램을 지정하는 등, 메인 CPU(1531) 및 서브 CPU(1532)의 동작을 제어한다.
디스플레이 인터페이스(1512)는, 제어부(1511)의 제어 하, 화상 데이터를 예를 들어 커넥티비티(1321)(도 37) 등에 출력한다. 예를 들어, 디스플레이 인터페이스(1512)는 디지털 데이터의 화상 데이터를 아날로그 신호로 변환하고, 재생된 비디오 신호로서 또는 디지털 데이터의 화상 데이터 그대로, 커넥티비티(1321)(도 37)의 모니터 장치 등에 출력한다.
디스플레이 엔진(1513)은 제어부(1511)의 제어 하, 화상 데이터에 대하여, 그 화상을 표시시키는 모니터 장치 등의 하드웨어 스펙에 맞추도록, 포맷 변환, 사이즈 변환, 색 영역 변환 등의 각종 변환 처리를 행한다.
화상 처리 엔진(1514)은 제어부(1511)의 제어 하, 화상 데이터에 대하여, 예를 들어 화질 개선을 위한 필터 처리 등, 소정의 화상 처리를 실시한다.
내부 메모리(1515)는 디스플레이 엔진(1513), 화상 처리 엔진(1514) 및 코덱 엔진(1516)에 의해 공용되는, 비디오 프로세서(1332)의 내부에 설치된 메모리이다. 내부 메모리(1515)는, 예를 들어 디스플레이 엔진(1513), 화상 처리 엔진(1514) 및 코덱 엔진(1516) 사이에서 행해지는 데이터의 수수에 이용된다. 예를 들어, 내부 메모리(1515)는, 디스플레이 엔진(1513), 화상 처리 엔진(1514) 또는 코덱 엔진(1516)으로부터 공급되는 데이터를 저장하고, 필요에 따라서(예를 들어, 요구에 따라서), 그 데이터를, 디스플레이 엔진(1513), 화상 처리 엔진(1514) 또는 코덱 엔진(1516)에 공급한다. 이 내부 메모리(1515)는, 어떤 기억 디바이스에 의해 실현하도록 해도 되지만, 일반적으로 블록 단위의 화상 데이터나 파라미터 등과 같은 소용량의 데이터의 저장에 이용하는 경우가 많으므로, 예를 들어 SRAM(Static Random Access Memory)과 같은 비교적(예를 들어 외부 메모리(1312)와 비교해서) 소용량이지만 응답 속도가 고속인 반도체 메모리에 의해 실현하는 것이 바람직하다.
코덱 엔진(1516)은 화상 데이터의 부호화나 복호에 관한 처리를 행한다. 이 코덱 엔진(1516)이 대응하는 부호화·복호의 방식은 임의이며, 그 수는 하나여도 되고, 복수여도 된다. 예를 들어, 코덱 엔진(1516)은 복수의 부호화·복호 방식의 코덱 기능을 구비하고, 그 중에서 선택된 것으로 화상 데이터의 부호화 혹은 부호화 데이터의 복호를 행하도록 해도 된다.
도 39에 나타나는 예에 있어서, 코덱 엔진(1516)은 코덱에 관한 처리의 기능 블록으로서, 예를 들어 MPEG-2 Video(1541), AVC/H.264(1542), HEVC/H.265(1543), HEVC/H.265(Scalable)(1544), HEVC/H.265(Multi-view)(1545) 및 MPEG-DASH(1551)를 갖는다.
MPEG-2 Video(1541)는, 화상 데이터를 MPEG-2 방식으로 부호화하거나 복호하거나 하는 기능 블록이다. AVC/H.264(1542)는 화상 데이터를 AVC 방식으로 부호화하거나 복호하거나 하는 기능 블록이다. HEVC/H.265(1543)는 화상 데이터를 HEVC로 부호화하거나 복호하거나 하는 기능 블록이다. HEVC/H.265(Scalable)(1544)는, 화상 데이터를 HEVC로 스케일러블 부호화하거나 스케일러블 복호하거나 하는 기능 블록이다. HEVC/H.265(Multi-view)(1545)는, 화상 데이터를 HEVC로 다시점 부호화하거나 다시점 복호하거나 하는 기능 블록이다.
MPEG-DASH(1551)는 화상 데이터를 MPEG-DASH(MPEG-Dynamic Adaptive Streaming over HTTP) 방식으로 송수신하는 기능 블록이다. MPEG-DASH는 HTTP(HyperText Transfer Protocol)를 사용해서 비디오의 스트리밍을 행하는 기술이며, 미리 준비된 해상도 등이 서로 다른 복수의 부호화 데이터 중에서 적절한 것을 세그먼트 단위로 선택해서 전송하는 것을 특징 중 하나로 한다. MPEG-DASH(1551)는 규격에 준거하는 스트림의 생성이나 그 스트림의 전송 제어 등을 행하고, 화상 데이터의 부호화·복호에 대해서는, 상술한 MPEG-2 Video(1541) 내지HEVC/H.265(Multi-view)(1545)를 이용한다.
메모리 인터페이스(1517)는 외부 메모리(1312)용 인터페이스이다. 화상 처리 엔진(1514)이나 코덱 엔진(1516)으로부터 공급되는 데이터는, 메모리 인터페이스(1517)를 통해서 외부 메모리(1312)에 공급된다. 또한, 외부 메모리(1312)로부터 판독된 데이터는, 메모리 인터페이스(1517)를 통해서 비디오 프로세서(1332)(화상 처리 엔진(1514) 혹은 코덱 엔진(1516))에 공급된다.
다중화·역다중화부(MUX DMUX)(1518)는 부호화 데이터의 비트 스트림, 화상 데이터, 비디오 신호 등, 화상에 관한 각종 데이터의 다중화나 역다중화를 행한다. 이 다중화·역다중화의 방법은 임의이다. 예를 들어, 다중화 시에, 다중화·역다중화부(MUX DMUX)(1518)는 복수의 데이터를 하나로 통합할 뿐만 아니라, 소정의 헤더 정보 등을 그 데이터에 부가할 수도 있다. 또한, 역다중화 시에, 다중화·역다중화부(MUX DMUX)(1518)는 하나의 데이터를 복수로 분할할 뿐만 아니라, 분할한 각데이터에 소정의 헤더 정보 등을 부가할 수도 있다. 즉, 다중화·역다중화부(MUX DMUX)(1518)는, 다중화·역다중화에 의해 데이터의 포맷을 변환할 수 있다. 예를 들어, 다중화·역다중화부(MUX DMUX)(1518)는, 비트 스트림을 다중화함으로써, 전송용 포맷의 비트 스트림인 트랜스포트 스트림이나, 기록용 파일 포맷의 데이터(파일 데이터)로 변환할 수 있다. 물론, 역다중화에 의해 그 역변환도 가능하다.
네트워크 인터페이스(1519)는, 예를 들어 브로드밴드 모뎀(1333)이나 커넥티비티(1321)(모두 도 37) 등에 적합한 인터페이스이다. 비디오 인터페이스(1520)는, 예를 들어 커넥티비티(1321)나 카메라(1322)(모두 도 37) 등에 적합한 인터페이스이다.
이어서, 이러한 비디오 프로세서(1332)의 동작의 예에 대해서 설명한다. 예를 들어, 커넥티비티(1321)나 브로드밴드 모뎀(1333)(모두 도 37) 등을 통해서 외부 네트워크로부터 트랜스포트 스트림을 수신하면, 그 트랜스포트 스트림은, 네트워크 인터페이스(1519)를 통해서 다중화·역다중화부(MUX DMUX)(1518)에 공급되어 역다중화되고, 코덱 엔진(1516)에 의해 복호된다. 코덱 엔진(1516)의 복호에 의해 얻어진 화상 데이터는, 예를 들어 화상 처리 엔진(1514)에 의해 소정의 화상 처리가 실시되고, 디스플레이 엔진(1513)에 의해 소정의 변환이 행해져서, 디스플레이 인터페이스(1512)를 통해서 예를 들어 커넥티비티(1321)(도 37) 등에 공급되고, 그 화상이 모니터에 표시된다. 또한, 예를 들어 코덱 엔진(1516)의 복호에 의해 얻어진 화상 데이터는, 코덱 엔진(1516)에 의해 재부호화되고, 다중화·역다중화부(MUX DMUX)(1518)에 의해 다중화되어 파일 데이터로 변환되고, 비디오 인터페이스(1520)를 통해서 예를 들어 커넥티비티(1321)(도 37) 등에 출력되고, 각종 기록 매체에 기록된다.
또한, 예를 들어 커넥티비티(1321)(도 37) 등에 의해 도시하지 않은 기록 매체로부터 판독된, 화상 데이터가 부호화된 부호화 데이터의 파일 데이터는, 비디오 인터페이스(1520)를 통해서 다중화·역다중화부(MUX DMUX)(1518)에 공급되어 역다중화되고, 코덱 엔진(1516)에 의해 복호된다. 코덱 엔진(1516)의 복호에 의해 얻어진 화상 데이터는, 화상 처리 엔진(1514)에 의해 소정의 화상 처리가 실시되고, 디스플레이 엔진(1513)에 의해 소정의 변환이 행해져서, 디스플레이 인터페이스(1512)를 통해서 예를 들어 커넥티비티(1321)(도 37) 등에 공급되고, 그 화상이 모니터에 표시된다. 또한, 예를 들어 코덱 엔진(1516)의 복호에 의해 얻어진 화상 데이터는, 코덱 엔진(1516)에 의해 재부호화되고, 다중화·역다중화부(MUX DMUX)(1518)에 의해 다중화되어 트랜스포트 스트림으로 변환되고, 네트워크 인터페이스(1519)를 통해서 예를 들어 커넥티비티(1321)나 브로드밴드 모뎀(1333)(모두 도 37) 등에 공급되어 도시하지 않은 다른 장치로 전송된다.
또한, 비디오 프로세서(1332) 내의 각 처리부 사이에서의 화상 데이터나 그 외의 데이터의 수수는, 예를 들어 내부 메모리(1515)나 외부 메모리(1312)를 이용해서 행해진다. 또한, 파워 매니지먼트 모듈(1313)은, 예를 들어 제어부(1511)에 대한 전력 공급을 제어한다.
이와 같이 구성되는 비디오 프로세서(1332)에 본 개시를 적용하는 경우, 코덱 엔진(1516)에, 상술한 각 실시 형태에 따른 본 개시를 적용하면 된다. 즉, 예를 들어 코덱 엔진(1516)이, 제1 내지 제3 실시 형태에 따른 부호화 장치나 복호 장치를 실현하는 기능 블록을 갖게 하면 된다. 코덱 엔진(1516)이 이와 같이 함으로써, 비디오 프로세서(1332)는 도 1 내지 도 31을 참조하여 상술한 효과와 마찬가지 효과를 얻을 수 있다.
또한, 코덱 엔진(1516)에 있어서, 본 개시(즉, 상술한 각 실시 형태에 따른 부호화 장치나 복호 장치의 기능)은, 논리 회로 등의 하드웨어에 의해 실현하도록 해도 되고, 내장 프로그램 등의 소프트웨어에 의해 실현하도록 해도 되고, 그들의 양쪽에 의해 실현하도록 해도 된다.
이상으로 비디오 프로세서(1332)의 구성을 예시했지만, 비디오 프로세서(1332)의 구성은 임의이며, 상술한 예 이외의 것이어도 된다. 또한, 이 비디오 프로세서(1332)는, 하나의 반도체 칩으로서 구성되도록 해도 되지만, 복수의 반도체 칩으로서 구성되도록 해도 된다. 예를 들어, 복수의 반도체를 적층하는 3차원 적층 LSI로 해도 된다. 또한, 복수의 LSI에 의해 실현되도록 해도 된다.
(장치에 대한 적용예)
비디오 세트(1300)는, 화상 데이터를 처리하는 각종 장치에 내장할 수 있다. 예를 들어, 비디오 세트(1300)는, 텔레비전 장치(900)(도 33), 휴대 전화기(920)(도 34), 기록 재생 장치(940)(도 35), 촬상 장치(960)(도 36) 등에 내장할 수 있다. 비디오 세트(1300)를 내장함으로써, 그 장치는 도 1 내지 도 31을 참조하여 상술한 효과와 마찬가지 효과를 얻을 수 있다.
또한, 상술한 비디오 세트(1300)의 각 구성의 일부라도, 비디오 프로세서(1332)를 포함하는 것이면, 본 개시를 적용한 구성으로서 실시할 수 있다. 예를 들어, 비디오 프로세서(1332)만을 본 개시를 적용한 비디오 프로세서로서 실시할 수 있다. 또한, 예를 들어 상술한 바와 같이 점선(1341)에 의해 나타나는 프로세서나 비디오 모듈(1311) 등을 본 개시를 적용한 프로세서나 모듈 등으로서 실시할 수 있다. 또한, 예를 들어 비디오 모듈(1311), 외부 메모리(1312), 파워 매니지먼트 모듈(1313) 및 프론트엔드 모듈(1314)을 조합하여, 본 개시를 적용한 비디오 유닛(1361)으로서 실시할 수도 있다. 어느 구성의 경우에도, 도 1 내지 도 31을 참조하여 상술한 효과와 마찬가지 효과를 얻을 수 있다.
즉, 비디오 프로세서(1332)를 포함하는 것이면 어떤 구성이라도, 비디오 세트(1300)의 경우와 마찬가지로, 화상 데이터를 처리하는 각종 장치에 내장할 수 있다. 예를 들어, 비디오 프로세서(1332), 점선(1341)에 의해 나타나는 프로세서, 비디오 모듈(1311) 또는 비디오 유닛(1361)을, 텔레비전 장치(900)(도 33), 휴대 전화기(920)(도 34), 기록 재생 장치(940)(도 35), 촬상 장치(960)(도 36) 등에 내장할 수 있다. 그리고, 본 개시를 적용한 어느 구성을 내장함으로써, 그 장치는, 비디오 세트(1300)의 경우와 마찬가지로, 도 1 내지 도 31을 참조하여 상술한 효과와 마찬가지 효과를 얻을 수 있다.
또한, 본 명세서에서는, 각종 정보가, 부호화 데이터에 다중화되어서, 부호화측으로부터 복호측으로 전송되는 예에 대해서 설명했다. 그러나, 이들 정보를 전송하는 방법은 이러한 예로 한정되지 않는다. 예를 들어, 이들 정보는 부호화 데이터에 다중화되지 않고, 부호화 데이터와 관련지어진 별개의 데이터로서 전송되거나 또는 기록되어도 된다. 여기서, 「관련짓는다」라고 하는 용어는, 비트 스트림에 포함되는 화상(슬라이스나 블록 등, 화상의 일부여도 된다)과 당해 화상에 대응하는 정보를 복호 시에 링크시킬 수 있도록 하는 것을 의미한다. 즉, 정보는 부호화 데이터와는 다른 전송로 상에서 전송되어도 된다. 또한, 정보는 부호화 데이터와는 다른 기록 매체(또는 동일한 기록 매체의 다른 기록 에어리어)에 기록되어도 된다. 또한, 정보와 부호화 데이터는, 예를 들어 복수 프레임, 1 프레임, 또는 프레임 내의 일부분 등의 임의의 단위로 서로 관련지어져도 된다.
본 개시는 MPEG, H.26x 등과 같이, 이산 코사인 변환 등의 직교 변환과 움직임 보상에 의해 압축된 비트 스트림을, 위성 방송, 케이블 TV, 인터넷, 휴대 전화 등의 네트워크 미디어를 통해서 수신할 때, 또는 광, 자기 디스크, 플래시 메모리와 같은 기억 미디어 상에서 처리할 때 사용되는 부호화 장치나 복호 장치에 적용할 수 있다.
또한, 본 명세서에 있어서, 시스템이란, 복수의 구성 요소(장치, 모듈(부품) 등)의 집합을 의미하고, 모든 구성 요소가 동일 하우징 내에 있는지 여부는 묻지 않는다. 따라서, 별개의 하우징에 수납되어, 네트워크를 통해서 접속되어 있는 복수의 장치 및 하나의 하우징 중에 복수의 모듈이 수납되어 있는 하나의 장치는, 모두 시스템이다.
또한, 본 명세서에 기재된 효과는 어디까지나 예시이며 한정되는 것은 아니고, 다른 효과가 있어도 된다.
또한, 본 개시의 실시 형태는, 상술한 실시 형태에 한정되는 것은 아니고, 본 개시의 요지를 일탈하지 않는 범위에서 다양한 변경이 가능하다.
예를 들어, 제1 및 제2 실시 형태에 있어서, 참조 픽처 리스트에 등록되는 커런트 픽처의 픽처 특정 정보의 위치는 고정되어 있지 않아도 된다. 또한, 제1 및 제3 실시 형태에 있어서, 참조 픽처 리스트로 설정되는 커런트 픽처의 픽처 타입은 STRP여도 된다.
또한, 제2 실시 형태에 있어서, 제3 실시 형태와 같이, 참조 픽처 리스트가 아니고, 템포럴 리스트에 커런트 픽처의 픽처 특정 정보가 등록되도록 해도 된다.
또한, 제3 실시 형태에 있어서, 제2 실시 형태와 같이, 커런트 픽처의 참조 픽처의 타입이 Intra BC인 경우의 예측 벡터 리스트의 생성 방법을 변경함으로써, Intra BC와 인터 부호화를 공통화한 경우의 부호화 효율을 향상시키도록 해도 된다.
또한, 예를 들어 본 개시는 하나의 기능을 네트워크를 통해서 복수의 장치로 분담, 공동해서 처리하는 클라우드 컴퓨팅의 구성을 취할 수 있다.
또한, 상술한 흐름도에서 설명한 각 스텝은, 하나의 장치로 실행하는 것 외에, 복수의 장치로 분담해서 실행할 수 있다.
또한, 하나의 스텝에 복수의 처리가 포함되는 경우에는, 그 하나의 스텝에 포함되는 복수의 처리는, 하나의 장치로 실행하는 것 외에, 복수의 장치로 분담해서 실행할 수 있다.
본 개시는 이하와 같은 구성도 취할 수 있다.
(1)
화면 내의 상관성을 이용한 예측에 사용되는 커런트 블록의 커런트 움직임 벡터를 부호화할 때, 커런트 블록의 참조 픽처의 타입과, 커런트 움직임 벡터의 예측 벡터를 생성할 때 참조하는 레퍼런스 움직임 벡터의 후보에 대응하는 후보 블록의 참조 픽처의 타입이 다른 경우에, 상기 후보 블록을 낫 어베일러블로 설정하고, 상기 커런트 움직임 벡터의 예측 벡터를, 상기 레퍼런스 움직임 벡터를 사용해서 생성하는 예측 벡터 생성부와,
상기 커런트 움직임 벡터와 상기 예측 벡터 생성부에 의해 생성된 상기 예측 벡터의 차분 벡터를 생성하는 차분 벡터 생성부
를 구비하는 화상 처리 장치.
(2)
상기 커런트 블록의 참조 픽처의 타입을 long-term 참조 픽처로 설정하는 설정부
를 더 구비하는
상기 (1)에 기재된 화상 처리 장치.
(3)
상기 예측 벡터 생성부는, 상기 후보 블록의 픽처와 상기 후보 블록의 참조 픽처가 다른 경우, 상기 커런트 블록의 참조 픽처의 타입과, 상기 후보 블록의 참조 픽처의 타입이 다르다고 판정하는
상기 (1)에 기재된 화상 처리 장치.
(4)
상기 커런트 블록의 참조 픽처의 후보의 리스트의 소정의 위치에 상기 커런트 블록의 픽처를 등록하는 리스트 작성부
를 더 구비하는
상기 (1) 내지 (3) 중 어느 하나에 기재된 화상 처리 장치.
(5)
상기 소정의 위치는 선두인
상기 (4)에 기재된 화상 처리 장치.
(6)
상기 리스트 작성부는, 상기 리스트 내의 상기 참조 픽처의 후보의 순번의 교체를, 상기 커런트 블록의 픽처의 등록 전에 행하는
상기 (4) 또는 (5)에 기재된 화상 처리 장치.
(7)
상기 리스트 작성부는 상기 리스트 내의 상기 커런트 블록의 픽처 이외의 상기 참조 픽처의 후보의 순번의 교체를, 상기 커런트 블록의 픽처의 등록 후에 행하는
상기 (4) 또는 (5)에 기재된 화상 처리 장치.
(8)
화상 처리 장치가,
화면 내의 상관성을 이용한 예측에 사용되는 커런트 블록의 커런트 움직임 벡터를 부호화할 때, 커런트 블록의 참조 픽처의 타입과, 커런트 움직임 벡터의 예측 벡터를 생성할 때 참조하는 레퍼런스 움직임 벡터의 후보에 대응하는 후보 블록의 참조 픽처의 타입이 다른 경우에, 상기 후보 블록을 낫 어베일러블로 설정하고, 상기 커런트 움직임 벡터의 예측 벡터를, 상기 레퍼런스 움직임 벡터를 사용해서 생성하는 예측 벡터 생성 스텝과,
상기 커런트 움직임 벡터와 상기 예측 벡터 생성 스텝의 처리에 의해 생성된 상기 예측 벡터의 차분 벡터를 생성하는 차분 벡터 생성 스텝
을 포함하는 화상 처리 방법.
(9)
화면 내의 상관성을 이용한 예측에 사용되는 커런트 블록의 커런트 움직임 벡터를 복호할 때, 커런트 블록의 참조 픽처의 타입과, 커런트 움직임 벡터의 예측 벡터를 생성할 때 참조하는 레퍼런스 움직임 벡터의 후보에 대응하는 후보 블록의 참조 픽처의 타입이 다른 경우에, 상기 후보 블록을 낫 어베일러블로 설정하고, 상기 커런트 움직임 벡터의 예측 벡터를, 상기 레퍼런스 움직임 벡터를 사용해서 생성하는 예측 벡터 생성부와,
상기 커런트 움직임 벡터와 상기 예측 벡터의 차분 벡터와, 상기 예측 벡터 생성부에 의해 생성된 상기 예측 벡터를 가산하고, 상기 커런트 움직임 벡터를 생성하는 움직임 벡터 생성부
를 구비하는 화상 처리 장치.
(10)
상기 커런트 블록의 참조 픽처의 타입을 long-term 참조 픽처로 설정하는 설정부
를 더 구비하는
상기 (9)에 기재된 화상 처리 장치.
(11)
상기 예측 벡터 생성부는, 상기 후보 블록의 픽처와 상기 후보 블록의 참조 픽처가 다른 경우, 상기 커런트 블록의 참조 픽처의 타입과, 상기 후보 블록의 참조 픽처의 타입이 다르다고 판정하는
상기 (9)에 기재된 화상 처리 장치.
(12)
상기 커런트 블록의 참조 픽처의 후보의 리스트의 소정의 위치에 상기 커런트 블록의 픽처를 등록하는 리스트 작성부
를 더 구비하는
상기 (9) 내지 (11) 중 어느 하나에 기재된 화상 처리 장치.
(13)
상기 소정의 위치는 선두인
상기 (12)에 기재된 화상 처리 장치.
(14)
상기 리스트 작성부는 상기 리스트 내의 상기 참조 픽처의 후보의 순번의 교체를, 상기 커런트 블록의 픽처 등록 전에 행하는
상기 (12) 또는 (13)에 기재된 화상 처리 장치.
(15)
상기 리스트 작성부는, 상기 리스트 내의 상기 커런트 블록의 픽처 이외의 상기 참조 픽처의 후보의 순번의 교체를, 상기 커런트 블록의 픽처의 등록 후에 행하는
상기 (12) 또는 (13)에 기재된 화상 처리 장치.
(16)
화상 처리 장치가,
화면 내의 상관성을 이용한 예측에 사용되는 커런트 블록의 커런트 움직임 벡터를 복호할 때, 커런트 블록의 참조 픽처의 타입과, 커런트 움직임 벡터의 예측 벡터를 생성할 때 참조하는 레퍼런스 움직임 벡터의 후보에 대응하는 후보 블록의 참조 픽처의 타입이 다른 경우에, 상기 후보 블록을 낫 어베일러블로 설정하고, 상기 커런트 움직임 벡터의 예측 벡터를, 상기 레퍼런스 움직임 벡터를 사용해서 생성하는 예측 벡터 생성 스텝과,
상기 커런트 움직임 벡터와 상기 예측 벡터의 차분 벡터와, 상기 예측 벡터 생성 스텝의 처리에 의해 생성된 상기 예측 벡터를 가산하고, 상기 커런트 움직임 벡터를 생성하는 움직임 벡터 생성 스텝
을 포함하는 화상 처리 방법.
50 : 부호화 장치
88 : 리스트 작성부
90 : 예측 벡터 생성부
91 : 차분 벡터 생성부
110 : 복호 장치
144 : 예측 벡터 생성부
145 : 움직임 벡터 생성부
146 : 리스트 작성부

Claims (16)

  1. 화면 내의 상관성을 이용한 예측에 사용되는 커런트 블록의 커런트 움직임 벡터를 부호화할 때, 커런트 블록의 참조 픽처의 타입과, 커런트 움직임 벡터의 예측 벡터를 생성할 때 참조하는 레퍼런스 움직임 벡터의 후보에 대응하는 후보 블록의 참조 픽처의 타입이 다른 경우에, 상기 후보 블록을 낫 어베일러블로 설정하고, 상기 커런트 움직임 벡터의 예측 벡터를, 상기 레퍼런스 움직임 벡터를 사용해서 생성하는 예측 벡터 생성부와,
    상기 커런트 움직임 벡터와 상기 예측 벡터 생성부에 의해 생성된 상기 예측 벡터의 차분 벡터를 생성하는 차분 벡터 생성부
    를 구비하는 화상 처리 장치.
  2. 제1항에 있어서,
    상기 커런트 블록의 참조 픽처의 타입을 long-term 참조 픽처로 설정하는 설정부
    를 더 구비하는 화상 처리 장치.
  3. 제1항에 있어서,
    상기 예측 벡터 생성부는, 상기 후보 블록의 픽처와 상기 후보 블록의 참조 픽처가 다른 경우, 상기 커런트 블록의 참조 픽처의 타입과, 상기 후보 블록의 참조 픽처의 타입이 다르다고 판정하는 화상 처리 장치.
  4. 제1항에 있어서,
    상기 커런트 블록의 참조 픽처의 후보의 리스트의 소정의 위치에 상기 커런트 블록의 픽처를 등록하는 리스트 작성부
    를 더 구비하는 화상 처리 장치.
  5. 제4항에 있어서,
    상기 소정의 위치는 선두인 화상 처리 장치.
  6. 제4항에 있어서,
    상기 리스트 작성부는, 상기 리스트 내의 상기 참조 픽처의 후보의 순번의 교체를, 상기 커런트 블록의 픽처 등록 전에 행하는 화상 처리 장치.
  7. 제4항에 있어서,
    상기 리스트 작성부는, 상기 리스트 내의 상기 커런트 블록의 픽처 이외의 상기 참조 픽처의 후보의 순번의 교체를, 상기 커런트 블록의 픽처 등록 후에 행하는 화상 처리 장치.
  8. 화상 처리 장치가,
    화면 내의 상관성을 이용한 예측에 사용되는 커런트 블록의 커런트 움직임 벡터를 부호화할 때, 커런트 블록의 참조 픽처의 타입과, 커런트 움직임 벡터의 예측 벡터를 생성할 때 참조하는 레퍼런스 움직임 벡터의 후보에 대응하는 후보 블록의 참조 픽처의 타입이 다른 경우에, 상기 후보 블록을 낫 어베일러블로 설정하고, 상기 커런트 움직임 벡터의 예측 벡터를, 상기 레퍼런스 움직임 벡터를 사용해서 생성하는 예측 벡터 생성 스텝과,
    상기 커런트 움직임 벡터와 상기 예측 벡터 생성 스텝의 처리에 의해 생성된 상기 예측 벡터의 차분 벡터를 생성하는 차분 벡터 생성 스텝
    을 포함하는 화상 처리 방법.
  9. 화면 내의 상관성을 이용한 예측에 사용되는 커런트 블록의 커런트 움직임 벡터를 복호할 때, 커런트 블록의 참조 픽처의 타입과, 커런트 움직임 벡터의 예측 벡터를 생성할 때 참조하는 레퍼런스 움직임 벡터의 후보에 대응하는 후보 블록의 참조 픽처의 타입이 다른 경우에, 상기 후보 블록을 낫 어베일러블로 설정하고, 상기 커런트 움직임 벡터의 예측 벡터를, 상기 레퍼런스 움직임 벡터를 사용해서 생성하는 예측 벡터 생성부와,
    상기 커런트 움직임 벡터와 상기 예측 벡터의 차분 벡터와, 상기 예측 벡터 생성부에 의해 생성된 상기 예측 벡터를 가산하고, 상기 커런트 움직임 벡터를 생성하는 움직임 벡터 생성부
    를 구비하는 화상 처리 장치.
  10. 제9항에 있어서,
    상기 커런트 블록의 참조 픽처의 타입을 long-term 참조 픽처로 설정하는 설정부
    를 더 구비하는 화상 처리 장치.
  11. 제9항에 있어서,
    상기 예측 벡터 생성부는, 상기 후보 블록의 픽처와 상기 후보 블록의 참조 픽처가 다른 경우, 상기 커런트 블록의 참조 픽처의 타입과, 상기 후보 블록의 참조 픽처의 타입이 다르다고 판정하는 화상 처리 장치.
  12. 제9항에 있어서,
    상기 커런트 블록의 참조 픽처의 후보의 리스트의 소정의 위치에 상기 커런트 블록의 픽처를 등록하는 리스트 작성부
    를 더 구비하는 화상 처리 장치.
  13. 제12항에 있어서,
    상기 소정의 위치는 선두인 화상 처리 장치.
  14. 제12항에 있어서,
    상기 리스트 작성부는, 상기 리스트 내의 상기 참조 픽처의 후보의 순번의 교체를, 상기 커런트 블록의 픽처 등록 전에 행하는 화상 처리 장치.
  15. 제12항에 있어서,
    상기 리스트 작성부는, 상기 리스트 내의 상기 커런트 블록의 픽처 이외의 상기 참조 픽처의 후보의 순번의 교체를, 상기 커런트 블록의 픽처 등록 후에 행하는 화상 처리 장치.
  16. 화상 처리 장치가,
    화면 내의 상관성을 이용한 예측에 사용되는 커런트 블록의 커런트 움직임 벡터를 복호할 때, 커런트 블록의 참조 픽처의 타입과, 커런트 움직임 벡터의 예측 벡터를 생성할 때 참조하는 레퍼런스 움직임 벡터의 후보에 대응하는 후보 블록의 참조 픽처의 타입이 다른 경우에, 상기 후보 블록을 낫 어베일러블로 설정하고, 상기 커런트 움직임 벡터의 예측 벡터를, 상기 레퍼런스 움직임 벡터를 사용해서 생성하는 예측 벡터 생성 스텝과,
    상기 커런트 움직임 벡터와 상기 예측 벡터의 차분 벡터와, 상기 예측 벡터 생성 스텝의 처리에 의해 생성된 상기 예측 벡터를 가산하고, 상기 커런트 움직임 벡터를 생성하는 움직임 벡터 생성 스텝
    을 포함하는 화상 처리 방법.
KR1020177016252A 2014-12-26 2015-12-11 화상 처리 장치 및 화상 처리 방법 KR20170098827A (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP2014265786 2014-12-26
JPJP-P-2014-265786 2014-12-26
PCT/JP2015/084763 WO2016104179A1 (ja) 2014-12-26 2015-12-11 画像処理装置および画像処理方法

Publications (1)

Publication Number Publication Date
KR20170098827A true KR20170098827A (ko) 2017-08-30

Family

ID=56150209

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020177016252A KR20170098827A (ko) 2014-12-26 2015-12-11 화상 처리 장치 및 화상 처리 방법

Country Status (7)

Country Link
US (3) US10735762B2 (ko)
EP (2) EP4020991A1 (ko)
JP (2) JPWO2016104179A1 (ko)
KR (1) KR20170098827A (ko)
CN (3) CN107113443B (ko)
TW (3) TWI682660B (ko)
WO (1) WO2016104179A1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2021235888A1 (ko) * 2020-05-21 2021-11-25 엘지전자 주식회사 인터 레이어 예측 여부에 기반하여 움직임 정보를 결정하는 영상 부호화/복호화 방법, 장치 및 비트스트림을 전송하는 방법

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI640957B (zh) 2017-07-26 2018-11-11 聚晶半導體股份有限公司 影像處理晶片與影像處理系統
US10904559B2 (en) * 2018-07-13 2021-01-26 Tencent America LLC Block vector prediction in intra block copy mode
WO2020084474A1 (en) 2018-10-22 2020-04-30 Beijing Bytedance Network Technology Co., Ltd. Gradient computation in bi-directional optical flow
EP3857879A4 (en) 2018-11-12 2022-03-16 Beijing Bytedance Network Technology Co., Ltd. SIMPLIFICATION OF COMBINED INTER-INTRA PREDICTION
JP7241870B2 (ja) 2018-11-20 2023-03-17 北京字節跳動網絡技術有限公司 部分的な位置に基づく差分計算
EP3915259A4 (en) 2019-03-06 2022-03-30 Beijing Bytedance Network Technology Co., Ltd. USE OF A CONVERTED UNIVERSITY PREDICTION CANDIDATE
WO2021134631A1 (zh) * 2019-12-31 2021-07-08 深圳市大疆创新科技有限公司 视频处理的方法与装置

Family Cites Families (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4978575B2 (ja) * 2008-06-25 2012-07-18 富士通株式会社 シンクライアントシステムにおける画像符号化方法及び画像符号化プログラム
JP2012023597A (ja) * 2010-07-15 2012-02-02 Sony Corp 画像処理装置及び画像処理方法
EP3937497B1 (en) * 2011-03-21 2023-02-22 LG Electronics, Inc. Motion vector predictor selection
US9485518B2 (en) * 2011-05-27 2016-11-01 Sun Patent Trust Decoding method and apparatus with candidate motion vectors
WO2013024588A1 (ja) * 2011-08-12 2013-02-21 株式会社Jvcケンウッド 画像符号化装置、画像符号化方法、画像符号化プログラム、画像復号装置、画像復号方法及び画像復号プログラム
JP2013059023A (ja) * 2011-08-12 2013-03-28 Jvc Kenwood Corp 画像符号化装置、画像符号化方法及び画像符号化プログラム
PL2773112T3 (pl) * 2011-10-27 2019-01-31 Sun Patent Trust Sposób kodowania obrazów, sposób dekodowania obrazów, urządzenie do kodowania obrazów oraz urządzenie do dekodowania obrazów
US20140307783A1 (en) * 2011-11-08 2014-10-16 Samsung Electronics Co., Ltd. Method and apparatus for motion vector determination in video encoding or decoding
PL2847996T3 (pl) 2012-05-09 2021-04-19 Sun Patent Trust Sposoby wykonywania predykcji wektora ruchu, sposoby kodowania i dekodowania oraz służące do tego urządzenia
AU2013285749B2 (en) 2012-07-02 2016-06-16 Samsung Electronics Co., Ltd. Method and apparatus for predicting motion vector for coding video or decoding video
US9854234B2 (en) * 2012-10-25 2017-12-26 Qualcomm Incorporated Reference picture status for video coding
TWI669950B (zh) 2012-12-21 2019-08-21 日商新力股份有限公司 影像處理裝置及方法
JP5983430B2 (ja) * 2013-01-25 2016-08-31 富士通株式会社 動画像符号化装置、動画像符号化方法及び動画像復号装置ならびに動画像復号方法
US20150271515A1 (en) * 2014-01-10 2015-09-24 Qualcomm Incorporated Block vector coding for intra block copy in video coding
GB201409634D0 (en) * 2014-05-30 2014-07-16 Canon Kk Intra block copy mode encoding choice
KR20170066457A (ko) * 2014-09-26 2017-06-14 브이아이디 스케일, 인크. 시간적 블록 벡터 예측을 갖는 인트라 블록 카피 코딩
CN115665423A (zh) * 2014-09-30 2023-01-31 微软技术许可有限责任公司 用于视频编码的基于散列的编码器判定
GB2531003A (en) * 2014-10-06 2016-04-13 Canon Kk Method and apparatus for vector encoding in video coding and decoding
GB2531271A (en) * 2014-10-14 2016-04-20 Nokia Technologies Oy An apparatus, a method and a computer program for image sequence coding and decoding

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2021235888A1 (ko) * 2020-05-21 2021-11-25 엘지전자 주식회사 인터 레이어 예측 여부에 기반하여 움직임 정보를 결정하는 영상 부호화/복호화 방법, 장치 및 비트스트림을 전송하는 방법

Also Published As

Publication number Publication date
US20180270498A1 (en) 2018-09-20
CN107113443A (zh) 2017-08-29
JPWO2016104179A1 (ja) 2017-10-05
EP3240290B1 (en) 2022-03-23
EP3240290A4 (en) 2018-06-27
CN111491165A (zh) 2020-08-04
EP4020991A1 (en) 2022-06-29
TWI734525B (zh) 2021-07-21
EP3240290A1 (en) 2017-11-01
CN111491164A (zh) 2020-08-04
WO2016104179A1 (ja) 2016-06-30
CN111491164B (zh) 2024-04-30
JP2020123984A (ja) 2020-08-13
US10735762B2 (en) 2020-08-04
CN107113443B (zh) 2020-04-28
TW202041028A (zh) 2020-11-01
CN111491165B (zh) 2024-03-15
TW202005395A (zh) 2020-01-16
TWI682660B (zh) 2020-01-11
US20210218983A1 (en) 2021-07-15
US20200260109A1 (en) 2020-08-13
TWI701944B (zh) 2020-08-11
TW201635795A (zh) 2016-10-01

Similar Documents

Publication Publication Date Title
KR102407030B1 (ko) 화상 부호화 장치 및 방법 및 화상 복호 장치 및 방법
KR20190045904A (ko) 화상 처리 장치 및 화상 처리 방법
TWI701944B (zh) 影像處理裝置及影像處理方法
JP6287035B2 (ja) 復号装置および復号方法
KR20190062420A (ko) 화상 처리 장치 및 화상 처리 방법
WO2018131523A1 (ja) 画像処理装置および画像処理方法
JP6711353B2 (ja) 画像処理装置および画像処理方法
JP2015005899A (ja) 復号装置および復号方法、並びに、符号化装置および符号化方法
KR102197557B1 (ko) 화상 처리 장치 및 방법
AU2019246907A1 (en) Image coding apparatus and method, and image decoding apparatus and method
WO2015098559A1 (ja) 復号装置および復号方法、並びに、符号化装置および符号化方法
JP6402802B2 (ja) 画像処理装置および方法、プログラム、並びに記録媒体
JP2015050738A (ja) 復号装置および復号方法、並びに、符号化装置および符号化方法

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
WITB Written withdrawal of application