KR20150135457A - 복수의 입력 화상을 인코딩하는 방법, 프로그램을 격납하는 기억 매체 및 장치 - Google Patents

복수의 입력 화상을 인코딩하는 방법, 프로그램을 격납하는 기억 매체 및 장치

Info

Publication number
KR20150135457A
KR20150135457A KR1020157030610A KR20157030610A KR20150135457A KR 20150135457 A KR20150135457 A KR 20150135457A KR 1020157030610 A KR1020157030610 A KR 1020157030610A KR 20157030610 A KR20157030610 A KR 20157030610A KR 20150135457 A KR20150135457 A KR 20150135457A
Authority
KR
South Korea
Prior art keywords
image
residual
unit
input
information
Prior art date
Application number
KR1020157030610A
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 KR20150135457A publication Critical patent/KR20150135457A/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/103Selection of coding mode or of prediction mode
    • H04N19/105Selection of the reference unit for prediction within a chosen coding or prediction mode, e.g. adaptive choice of position and number of pixels used for prediction
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/154Measured or subjectively estimated visual quality after decoding, e.g. measurement of distortion
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/172Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a picture, frame or field
    • 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/182Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being a pixel
    • 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/187Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being a scalable video layer
    • 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/189Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the adaptation method, adaptation tool or adaptation type used for the adaptive coding
    • H04N19/196Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the adaptation method, adaptation tool or adaptation type used for the adaptive coding being specially adapted for the computation of encoding parameters, e.g. by averaging previously computed encoding parameters
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/46Embedding additional information in the video signal during the compression process
    • H04N19/463Embedding additional information in the video signal during the compression process by compressing encoding parameters before transmission
    • 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/597Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding specially adapted for multi-view video sequence encoding

Abstract

복수의 입력 화상을 인코딩하는 방법이 제공된다. 제1의 입력 화상과 대응하는 제1의 예측 화상과의 차분으로부터 제1의 잔차 화상을 생성하는 스텝과, 제1의 잔차 화상의 잉여로 정의하여야 하게 된 영역에 포함되는 화소치를 잉여로 변환하는 스텝과, 제2의 입력 화상과 대응하는 제2의 예측 화상과의 차분으로부터 제2의 잔차 화상을 생성하는 스텝과, 제2의 잔차 화상의 잉여로 정의하여야 하게 된 영역에 포함되는 화소치를 잉여로 변환하는 스텝과, 변환 후의 제1의 잔차 화상과, 변환 후의 제2의 잔차 화상과, 제1의 잔차 화상 및 제2의 잔차 화상의 각각에서의 잉여로 정의하여야 할 영역을 특정하는 부가 정보를 코딩하는 스텝을 포함한다.

Description

복수의 입력 화상을 인코딩하는 방법, 프로그램을 격납하는 기억 매체 및 장치{METHOD FOR ENCODING A PLURALITY OF INPUT IMAGES AND STORAGE MEDIUM AND DEVICE FOR STORING PROGRAM}
본 발명은, 피사체의 다른 정보를 각각 포함하는 다른 종류의 복수의 입력 화상을 인코딩하는 방법, 프로그램을 격납하는 기억 매체 및 장치에 관한 것이다.
종래로부터, 시간 영역에 배치된 프레임열(列)로 구성되는 동화상에 대해, 그 프레임 사이가 용장성(冗長性)을 고려한 영상 인코딩(video coding) 방법이 알려져 있다(예를 들면, 비특허 문헌 1을 참조). 전형적인 영상 인코딩 방법에서는, 입력된 오리지널 화상에 대신하여, P프레임(predicted frame) 및/또는 B프레임(bi-directional predicted frame)이 전송된다. P프레임은, 전(前)방향 예측에 의해 산출된 프레임이고, B프레임은, 전방향 예측, 후방향 예측, 및 양방향 예측 중 어느 하나에 의해 산출된 프레임이다.
비특허 문헌 2는, 이와 같은 영상 인코딩의 기술을, 시간 영역 및 공간 영역으로 확장하여 적용하는 방법을 개시한다. 즉, 비특허 문헌 2의 교시(敎示) 내용에 의하면, 시간 영역 및 공간 영역에 배치된 복수의 프레임에 대해, P프레임 및/또는 B프레임을 생성할 수 있다.
공간 영역에 배치된 프레임열의 한 예로서, 다시점 영상을 이용하여 고정밀한 입체 영상을 제공하는 3차원 영상 기술에 이용되는 프레임열을 들 수 있다. 이와 같은 입체 영상은, 매우 다수의 시점(視點)(예를 들면, 200시점)으로 피사체를 각각 촬상하여 얻어지는 다시점 영상에 의해 실현된다. 거리 맵이라는 3차원 정보를 이용하여 P프레임 및/또는 B프레임을 생성한다는 시점 보간을 이용함으로써, 시간 영역에 배치된 프레임열에 대한 인코딩과 같은 방법을 공간 영역에 배치된 프레임열에 대해서도 적용할 수 있다.
비특허 문헌 3은, 다시점 영상의 인코딩에 관한 수법을 개시한다. 비특허 문헌 3은, 시간 영역뿐만 아니라, 공간 영역에서 시점 보간을 이용함으로써, 깊이(奧行) 정보 등의 3차원 정보로부터 P프레임 및/또는 B프레임을 생성하는 수법을 개시한다.
또한, 본 명세서에서는, 데이터를 목적에 응한 부호로 압축(변환)하는 것을 인코딩(encoding)으로 기재하고, 변환된 부호를 원래의 데이터로 복원(복호)하는 것을 디코딩(decoding)으로 기재한다. 또한, 인코딩(coding)이라는 용어는, 인코딩 단체(單體), 및, 인코딩 및 디코딩의 양쪽을 의미하는 것으로 한다.
비특허 문헌 1 : Thomas Wiegand, Gary J. Sullivan, Gisle Bjontegaard, and Ajay Luthra, "Overview of the H.264/AVC Video Coding Standard", IEEE Transactions on Circuits and Systems for Video Technology, Vol. 13, No. 7, pp. 560-576, July 2003 비특허 문헌 2 : P. Merkle, K. Muller, A. Smolic, and T. Wiegand, "Efficient Compression of Multi-view Video Exploiting inter-view dependencies based on H.264/MPEG4-AVC," Proc. ICME 2006, pp. 1717-1720 비특허 문헌 3 : S. Yea, A. Vetro, "View synthesis prediction for multiview video coding", Signal Processing : Image Communication 24 (2009) pp. 89-100.
비특허 문헌 1∼3에 개시되는 방법에 의하면, 생성된 P프레임 및 B프레임은, 잔차(殘差)(residual value)의 형으로 전송된다. 여기서, 잔차의 정보에 대해, 다시 데이터 압축 처리가 실행된다. 이 데이터 압축 처리에서는, 화상 변환(전형적으로는, 이산(離散) 코사인 변환), 양자화, 엔트로피 부호화(entropy coding) 등이 실행된다. 데이터 압축률이 높은 경우에는, 양자화를 실행함으로써, 데이터 사이즈 저감에 의한 데이터의 현저한 로스가 발생한다. 즉, 그 값이 작은 잔차의 정보는, 데이터 압축 처리에 의해 소실되어 버린다.
한쪽으로, 에지 정보(edge information)나 경계 정보(boundary information)라는 몇가지의 화상의 특징량에 관해서는, 데이터 압축률이 높아졌다고 하여도, 소실되지 않도록 하여야 한다.
피사체의 다른 정보를 각각 포함하는 다른 종류의 복수의 입력 화상에 대해, 압축 효율 및 압축 품질의 양쪽의 밸런스가 취하여진 인코딩 기술이 요구되고 있다.
본 발명의 어느 국면에 따르면, 복수의 입력 화상을 인코딩하는 방법이 제공된다. 당해 방법은, 피사체의 제1의 정보를 포함하는 복수의 제1의 입력 화상과, 복수의 제1의 입력 화상에 각각 대응하는, 피사체의 제1의 정보와는 다른 제2의 정보를 포함하는 복수의 제2의 입력 화상을 취득하는 스텝과, 제1의 입력 화상에 관해, 다른 제1의 입력 화상 및 제2의 입력 화상의 적어도 한쪽에 포함되는 정보로부터 제1의 예측 화상을 산출하는 스텝과, 제1의 입력 화상과 대응하는 제1의 예측 화상과의 차분으로부터 제1의 잔차 화상을 생성하는 스텝과, 제1의 잔차 화상의 화소치에 의거하여, 제1의 잔차 화상을 구성하는 화소 중 그 화소치를 잉여(剩餘)로 정의하여야 할 영역을 특정하는 스텝과, 제1의 잔차 화상의 잉여로 정의하여야 하게 된 영역에 포함되는 화소치를 잉여로 변환하는 스텝과, 제2의 입력 화상에 관해, 다른 제2의 입력 화상 및 제1의 입력 화상의 적어도 한쪽에 포함되는 정보로부터 제2의 예측 화상을 산출하는 스텝과, 제2의 입력 화상과 대응하는 제2의 예측 화상과의 차분으로부터 제2의 잔차 화상을 생성하는 스텝과, 제2의 잔차 화상의 화소치에 의거하여, 제2의 잔차 화상을 구성하는 화소 중 그 화소치를 잉여로 정의하여야 할 영역을 특정하는 스텝과, 제2의 잔차 화상의 잉여로 정의하여야 하게 된 영역에 포함되는 화소치를 잉여로 변환하는 스텝과, 변환 후의 제1의 잔차 화상과, 변환 후의 제2의 잔차 화상과, 제1의 잔차 화상 및 제2의 잔차 화상의 각각에서의 잉여로 정의하여야 할 영역을 특정하는 부가 정보를 인코딩하는 스텝을 포함한다.
바람직하게는, 잉여로 변환하는 스텝은, 잉여로 정의하여야 할 영역에 관한 화소치에 대해 모듈로 연산을 실행하는 스텝과, 예측 화상의 구배(句配) 정보를 취득하는 스텝과, 구배 강도와 모듈로 연산의 법(法)이 되는 값과의 미리 정하여진 대응 관계를 참조하여, 취득한 구배 정보에 의거하여 모듈로 연산의 법이 되는 값을 결정하는 스텝을 포함한다.
바람직하게는, 제1의 예측 화상을 산출하는 스텝은, 산출 대상의 제1의 입력 화상에 대응하는 제2의 입력 화상과, 선행(先行)의 하나 이상의 제1의 입력 화상을 이용하여, 제1의 예측 화상을 산출하는 스텝을 포함한다.
또는 바람직하게는, 제2의 예측 화상을 산출하는 스텝은, 산출 대상의 제2의 입력 화상에 대응하는 제1의 입력 화상에 관한 움직임 데이터를 이용하여, 제2의 예측 화상을 산출하는 스텝을 포함하고, 제1의 입력 화상에 관한 움직임 데이터는, 선행하는 제1의 입력 화상과 산출 대상의 제1의 입력 화상 사이의 변화 성분을 나타낸다.
바람직하게는, 제2의 예측 화상을 산출하는 스텝은, 산출 대상의 제2의 입력 화상과, 선행하는 하나 이상의 제2의 입력 화상을 이용하여, 제2의 예측 화상을 산출하는 스텝을 포함한다.
본 발명의 다른 국면에 따르면, 복수의 입력 화상을 인코딩하는 프로그램을 격납하는 기억 매체가 제공된다. 당해 프로그램은, 컴퓨터에, 피사체의 제1의 정보를 포함하는 복수의 제1의 입력 화상과, 복수의 제1의 입력 화상에 각각 대응하는, 피사체의 제1의 정보와는 다른 제2의 정보를 포함하는 복수의 제2의 입력 화상을 취득하는 스텝과, 제1의 입력 화상에 관해, 다른 제1의 입력 화상 및 제2의 입력 화상의 적어도 한쪽에 포함되는 정보로부터 제1의 예측 화상을 산출하는 스텝과, 제1의 입력 화상과 대응하는 제1의 예측 화상과의 차분으로부터 제1의 잔차 화상을 생성하는 스텝과, 제1의 잔차 화상의 화소치에 의거하여, 제1의 잔차 화상을 구성하는 화소 중 그 화소치를 잉여로 정의하여야 할 영역을 특정하는 스텝과, 제1의 잔차 화상의 잉여로 정의하여야 하게 된 영역에 포함되는 화소치를 잉여로 변환하는 스텝과, 제2의 입력 화상에 관해, 다른 제2의 입력 화상 및 제1의 입력 화상의 적어도 한쪽에 포함되는 정보로부터 제2의 예측 화상을 산출하는 스텝과, 제2의 입력 화상과 대응하는 제2의 예측 화상과의 차분으로부터 제2의 잔차 화상을 생성하는 스텝과, 제2의 잔차 화상의 화소치에 의거하여, 제2의 잔차 화상을 구성하는 화소 중 그 화소치를 잉여로 정의하여야 할 영역을 특정하는 스텝과, 제2의 잔차 화상의 잉여로 정의하여야 하게 된 영역에 포함되는 화소치를 잉여로 변환하는 스텝과, 변환 후의 제1의 잔차 화상과, 변환 후의 제2의 잔차 화상과, 제1의 잔차 화상 및 제2의 잔차 화상의 각각에서의 잉여로 정의하여야 할 영역을 특정하는 부가 정보를 인코딩하는 스텝을 실행시킨다.
본 발명의 또 다른 국면에 따르면, 복수의 입력 화상을 인코딩하는 장치가 제공된다. 당해 장치는, 피사체의 제1의 정보를 포함하는 복수의 제1의 입력 화상과, 복수의 제1의 입력 화상에 각각 대응하는, 피사체의 제1의 정보와는 다른 제2의 정보를 포함하는 복수의 제2의 입력 화상을 취득하는 수단과, 제1의 입력 화상에 관해, 다른 제1의 입력 화상 및 제2의 입력 화상의 적어도 한쪽에 포함되는 정보로부터 제1의 예측 화상을 산출하는 수단과, 제1의 입력 화상과 대응하는 제1의 예측 화상과의 차분으로부터 제1의 잔차 화상을 생성하는 수단과, 제1의 잔차 화상의 화소치에 의거하여, 제1의 잔차 화상을 구성하는 화소 중 그 화소치를 잉여로 정의하여야 할 영역을 특정하는 수단과, 제1의 잔차 화상의 잉여로 정의하여야 하게 된 영역에 포함되는 화소치를 잉여로 변환하는 수단과, 제2의 입력 화상에 관해, 다른 제2의 입력 화상 및 제1의 입력 화상의 적어도 한쪽에 포함되는 정보로부터 제2의 예측 화상을 산출하는 수단과, 제2의 입력 화상과 대응하는 제2의 예측 화상과의 차분으로부터 제2의 잔차 화상을 생성하는 수단과, 기제2의 잔차 화상의 화소치에 의거하여, 제2의 잔차 화상을 구성하는 화소 중 그 화소치를 잉여로 정의하여야 할 영역을 특정하는 수단과, 제2의 잔차 화상의 잉여로 정의하여야 하게 된 영역에 포함되는 화소치를 잉여로 변환하는 수단과, 변환 후의 제1의 잔차 화상과, 변환 후의 제2의 잔차 화상과, 제1의 잔차 화상 및 제2의 잔차 화상의 각각에서의 잉여로 정의하여야 할 영역을 특정하는 부가 정보를 인코딩하는 수단을 실행시킨다.
본 발명에 의하면, 피사체의 다른 정보를 각각 포함하는 다른 종류의 복수의 입력 화상에 대해, 압축 효율 및 압축 품질이 균형의 밸런스가 취하여진 인코딩 기술을 실현할 수 있다.
도 1은 본 발명의 실시의 형태에 관한 인코딩/디코딩 시스템을 포함하는 입체 영상 재생 시스템을 도시하는 도면.
도 2는 본 발명의 관련 기술에 관한 인코더의 기능 블록도.
도 3은 본 발명의 관련 기술에 관한 디코더의 기능 블록도.
도 4는 본 발명의 관련 기술에 관한 다시점 영상에 대한 인코딩을 위한 구성을 도시하는 기능 블록도.
도 5는 본 발명의 관련 기술에 관한 다시점 영상에 대한 디코딩을 위한 구성을 도시하는 기능 블록도.
도 6은 본 발명의 실시의 형태에 관한 인코더군의 기능 블록도.
도 7은 본 발명의 실시의 형태에 관한 인코딩에 의한 예측 화상의 생성 순서의 한 예를 도시하는 도면.
도 8은 본 발명의 실시의 형태에 관한 잉여와 잔차와의 조합 수법을 설명하기 위한 도면.
도 9는 본 발명의 실시의 형태에 관한 데이터 포맷 변환부의 기능 블록도.
도 10은 본 발명의 실시의 형태에 관한 잉여의 산출에 이용되는 계수를 결정하기 위한 Lookup 테이블의 한 예를 도시하는 도면.
도 11은 본 발명의 실시의 형태에 관한 데이터 포맷 변환부의 다른 기능 블록도.
도 12는 본 발명의 실시의 형태에 관한 데이터 포맷 역변환부의 기능 블록도.
도 13은 본 발명의 실시의 형태에 관한 디코더군의 기능 블록도.
도 14는 송신기로서 기능하는 정보 처리 장치의 하드웨어 구성을 도시하는 모식도.
도 15는 수신기로서 기능하는 정보 처리 장치의 하드웨어 구성을 도시하는 모식도.
본 발명의 실시의 형태에 관해, 도면을 참조하면서 상세히 설명한다. 또한, 도면 중의 동일 또는 상당 부분에 관해서는, 동일 부호를 붙이고 그 설명은 반복하지 않는다.
[A. 응용례]
우선, 본 발명의 실시의 형태에 관한 인코딩/디코딩 시스템에 관한 이해를 용이화하기 위해, 전형적인 응용례에 관해 설명한다. 또한, 당연한 일이지만, 본 발명의 실시의 형태에 관한 인코딩/디코딩 시스템의 응용 범위는, 이하에 나타내는 구성으로 한정되는 것이 아니고, 임의의 구성에 응용할 수 있다. 또한, 인코딩 및 디코딩의 어느 한쪽만을 실행하는 방법, 장치, 프로그램, 그 프로그램을 격납하는 기억 매체 등에 대해도, 본원 발명의 범위에 포함될 수 있다.
도 1은, 본 발명의 실시의 형태에 관한 인코딩/디코딩 시스템을 포함하는 입체 영상 재생 시스템(1)를 도시하는 도면이다. 도 1을 참조하면, 입체 영상 재생 시스템(1)에서는, 복수의 카메라(10)로 이루어지는 카메라 어레이를 이용하여 피사체(2)를 촬상함으로써 다시점 영상이 생성된다. 다시점 영상은, 복수의 시점에서 각각 피사체(2)를 촬상하여 얻어진 화상군에 상당한다. 이 다시점 영상은, 송신기로서 기능하는 정보 처리 장치(100)에서 인코딩된 다음 전송된다. 그리고, 수신기로서 기능하는 정보 처리 장치(200)에서 인코딩에 의해 생성된 데이터가 디코딩되어, 입체 표시 장치(300)에서 그 피사체(2)가 재현된다. 즉, 입체 표시 장치(300)는, 피사체(2)의 입체 영상을 표시한다. 또한, 송신기로부터 수신기에의 데이터 전송에 관해서는, 유선 및 무선을 불문하고 임의의 매체를 이용할 수 있다.
본 발명의 실시의 형태에서는, 서로 관련된 다른 종류의 화상군에 대해 인코딩이 실행된다. 전형례로서, 카메라 어레이에 의해 취득된 다시점 영상으로부터, 복수의 영상과 복수의 깊이 정보(depth map)를 생성하고, 각각에 대해 인코딩이 실행된다. 영상은, 각 시점에서의 휘도 정보 또는 색정보(즉, 각 컬러 컴포넌트의 농담 정보)를 포함하고, 깊이 정보는, 촬상된 시점(視點)부터 화상 내의 각점까지의 거리(깊이)의 정보를 포함한다. 전형적으로는, 영상은, 컬러 컴포넌트별(別)로 정의된 농담 화상(농담치의 맵)를 포함하고, 깊이 정보는, 각 화소 위치에서의 거리가 화소치로서 정의되어 있는 농담 화상(농담치의 맵)를 포함한다.
송신기로서 기능하는 정보 처리 장치(100)는, 입력되는 화상에 대한 전처리를 실행하는 프리 프로세서(110)와, 영상에 대한 인코딩을 실행하는 인코더(120)와, 깊이 정보에 대한 인코딩을 실행한 인코더(140)를 포함한다. 프리 프로세서(110)가 실행하는 전처리로서는, 영상 신호로부터 깊이 정보를 생성하는 처리를 포함한다. 인코더(120)와 인코더(140)는서로 정보를 공유함으로써, 인코딩을 실행한다. 이와 같은 인코더 사이에서 정보 공유할 수 있는 기구를 채용함으로써, 화상 사이의 관련성(즉, 용장성(冗長性))에 이용하여, 보다 효율적인 압축 처리를 실현한다.
정보 처리 장치(100)에서 실행되는 각 인코딩은, 후술하는 바와 같이, 데이터 포맷 변환 및 데이터 압축의 처리를 포함한다. 즉, 본 발명의 실시의 형태에 관한 인코더는, 데이터 포맷 변환 및 데이터 압축을 병렬적으로 실행한다.
한편, 수신기로서 기능하는 정보 처리 장치(200)는, 수신한 데이터에 대해 디코딩을 실행하는 디코더(210 및 230)와, 후처리를 실행하는 포스트 프로세서(240)를 포함한다. 디코더(210)는, 수신한 데이터에 포함되는 영상에 관한 데이터에 대해 디코딩을 행하고, 디코더(230)는, 수신한 데이터에 포함되는 깊이 정보에 관한 데이터에 대해 디코딩을 행한다. 상술한 바와 같은 정보를 공유한 인코딩에 대응하여, 디코더(210)와 디코더(230)는 서로 정보를 공유하여, 디코딩을 실행한다. 포스트 프로세서(240)는, 디코더(210 및 230)에 의한 디코딩 결과에 대해 소정의 처리를 실행함으로써, 입체 표시 장치(300)가 피사체(2)를 재현하기 위한 신호를 프로젝터 어레이(302)별로 생성한다.
정보 처리 장치(200)에서 실행되는 각 디코딩은, 후술하는 바와 같이, 데이터 포맷 역변환 및 데이터 복원의 처리를 포함한다. 즉, 본 발명의 실시의 형태에 관한 디코더는, 데이터 포맷 역변환 및 데이터 복원을 병렬적으로 실행한다.
입체 표시 장치(300)는, 주로 확산 필름(312) 및 집광 렌즈(314)로 구성되는 표시 스크린(310)과, 표시 스크린(310)에 다시점 영상을 투영하는 프로젝터 어레이(302)를 포함한다. 프로젝터 어레이(302)를 구성하는 각 프로젝터는, 정보 처리 장치(200)로부터 출력되는 다시점 영상의 대응하는 시점의 화상을 표시 스크린(310)에 투영한다.
이와 같은 입체 영상 재생 시스템(1)에 의하면, 표시 스크린(310) 앞에 있는 관찰자에게는 피사체(2)의 재생 입체상(立體像)이 제공된다. 이 때, 표시 스크린(310)와 관찰자와의 상대적인 위치에 응하여, 관찰자의 시야에 들어가는 시점의 화상이 변화하게 되어 있고, 관찰자는, 마치 피사체(2) 앞에 있는 것 같은 체험을 얻을 수 있다.
이와 같은 입체 영상 재생 시스템(1)은, 일반 용도로서는, 영화관이나 어뮤즈먼트 시설 등에서 이용되고, 산업 용도로서는, 원격 의료 시스템, 공업 디자인 설계 시스템, 퍼블릭 뷰잉 등의 전자 광고 시스템으로서 이용되는 것이 기대되고 있다.
[B. 관련 기술(그 1)]
우선, 본 발명의 실시의 형태에 관한 인코딩/디코딩 시스템에 관련되는 기술에 관해 설명한다. 동화상의 압축 규격의 하나인, MPEG-4 AVC(ITU-T Recommendation H.264|ISO/IEC 14496-10 Advanced Video Coding)의 인코딩 및 디코딩에 관해 설명한다.
도 2는, 본 발명의 관련 기술에 관한 인코더(820)의 기능 블록도이다. 도 3은, 본 발명의 관련 기술에 관한 디코더(910)의 기능 블록도이다.
우선, 도 2를 참조하여 인코딩에 관해 설명한다. 도 2에 도시하는 인코더(820)에서는, 입력 소스로부터의 동화상(즉, 시간 영역에 배치된 프레임열(列))인 영상 신호의 각 프레임이 복수의 매크로 블록(Macroblock)으로 분할되고, 각 매크로 블록은, 인트라 프레임 예측(intra flame prediction), 또는, 인터 프레임 예측(inter flame prediction)를 이용하여 보간된다. 인트라 프레임 예측은, 동일 프레임의 다른 매크로 블록으로부터 대상의 매크로 블록을 보간하는 방법이다. 한편, 인터 프레임 예측은, 전(前)방향 예측, 후방향 예측, 및 양방향 예측의 어느 하나를 이용하여, 다른 프레임의 정보로부터 대상의 매크로 블록을 보간하는 방법이다.
즉, 인코더(820)는, 동일 또는 근사하는 프레임의 정보와의 관련성(즉, 용장성)에 주목하여, 데이터 압축을 행한다.
보다 구체적으로는, 인코더(820)는, 입력 버퍼(8202)와, 분할부(8204)와, 감산부(8206)와, 직교 변환·양자화부(8208)와, 로컬 디코더(8210)와, 제어부(8230)와, 움직임 추정부(8240)와, 출력 버퍼(8242)와, 엔트로피 부호화부(8250)를 포함한다.
입력 버퍼(8202)는, 입력 소스로부터의 영상 신호를 일시적으로 격납한다. 분할부(8204)는, 입력 버퍼(8202)에 격납된 영상 신호를 복수의 매크로 블록(N×N화소)으로 분할한다. 분할부(8204)로부터의 출력은, 감산부(8206), 제어부(8230), 및 움직임 추정부(8240)에 주어진다.
감산부(8206)는, 분할부(8204)로부터의 각 매크로 블록에 대해, 먼저 산출되어 있는 보간 정보(인트라 프레임 예측 또는 인터 프레임 예측)를 감(減)함으로써, 잔차(殘差)의 정보를 산출한다. 즉, 감산부(8206)는, 오리지널 화상(original image)으로부터 예측 화상(predicted image)을 감함으로써, 잔차 화상(residual image)을 생성한다. 이 잔차 화상의 생성 처리는, 전형적으로는, 매크로 블록 단위로 실행된다.
직교 변환·양자화부(8208)는, 감산부(8206)로부터의 잔차 화상에 대해, 직교 변환(전형적으로는, 이산(離散) 푸리에 변환) 및 양자화를 실행한다. 직교 변환·양자화부(8208)는, 스케일링도 실행한다. 직교 변환·양자화부(8208)로부터의 양자화 후의 변환 계수는, 로컬 디코더(8210) 및 엔트로피 부호화부(8250)에 출력된다.
로컬 디코더(8210)는, 후속의 프레임(의 매크로 블록)에 대한 보간 정보를 산출한다. 보다 구체적으로는, 로컬 디코더(8210)는, 역직교 변환·스케일링부(8212)와, 가산부(8214)와, 디블록 필터(8216)와, 인트라 프레임 예측부(8218)와, 움직임 보상부(8220)와, 전환부(8222)를 포함한다.
역직교 변환·스케일링부(8212)는, 직교 변환·양자화부(8208)로부터의 양자화 후의 변환 계수에 대해, 역직교 변환 및 스케일링을 실행한다. 즉, 역직교 변환·스케일링부(8212)는, 감산부(8206)로부터 출력되는 잔차 화상을 복원한다. 가산부(8214)는, 역직교 변환·스케일링부(8212)로부터의 잔차 화상과, 먼저 산출되어 있는 예측 화상(보간 정보)을 가산한다. 디블록 필터(8216)는, 가산부(8214)로부터의 가산 결과에 대해, 블록 노이즈의 발생을 억제하기 위해 블록 경계를 평활화한다.
즉, 역직교 변환·스케일링부(8212), 가산부(8214), 및 디블록 필터(8216)에 의해, 입력 버퍼(8202)로부터 주어진 오리지널 화상이 복원된다. 그리고, 이 복원된 오리지널 화상의 정보가 인트라 프레임 예측부(8218) 및 움직임 보상부(8220)에 주어진다.
인트라 프레임 예측부(8218)는, 인접하는 매크로 블록에 의거하여 예측 화상을 생성한다.
움직임 보상부(8220)는, 인터 프레임 예측(프레임 사이 예측)를 이용하여, 예측 화상을 생성한다. 보다 구체적으로는, 움직임 보상부(8220)는, 복원된 오리지널 화상과 움직임 추정부(8240)로부터의 움직임 데이터에 의거하여, 예측 화상을 생성한다.
인트라 프레임 예측부(8218) 및 움직임 보상부(8220)의 각각에서 생성된 예측 화상은, 전환부(8222)에 의해 어느 한쪽이 적절히 선택되어, 감산부(8206)에 주어진다.
움직임 추정부(8240)는, 분할부(8204)로부터의 각 매크로 블록과, 1프레임 전의 복원된 오리지널 화상의 정보에 의거하여, 움직임 데이터(전형적으로는, 움직임 벡터)를 산출한다. 이 산출되는 움직임 데이터는, 움직임 보상부(8220) 및 엔트로피 부호화부(8250)에 출력된다.
제어부(8230)는, 직교 변환·양자화부(8208), 역직교 변환·스케일링부(8212), 전환부(8222,) 및, 움직임 추정부(8240)에서의 처리를 제어한다. 또한, 제어부(8230)는, 제어 데이터로서, 인코딩에 관한 파라미터나 각 컴포넌트에 대한 부호화의 순서 등을 지시한다.
엔트로피 부호화부(8250)는, 직교 변환·양자화부(8208)로부터의 양자화 후의 변환 계수, 움직임 추정부(8240)로부터의 움직임 데이터, 및 제어부(8230)로부터의 제어 데이터에 대해, 엔트로피 부호화를 행하고, 그 결과로서 비트 스트림을 출력한다. 이 출력되는 비트 스트림이 입력된 영상 신호에 관한 인코딩 결과가 된다.
출력 버퍼(8242)는, 필수의 구성은 아니지만, 디블록 필터(8216)로부터의 복원된 오리지널 화상(영상)을 일시적으로 격납한다.
다음에, 도 3을 참조하여 디코딩에 관해 설명한다. 도 3에 도시하는 디코더(910)에서는, 도 2에 도시하는 인코더(820)로부터의 비트 스트림으로부터 오리지널 화상을 복원한다. 기본적으로는, 도 2에 도시하는 인코더(820)에서의 인코딩의 역변환을 행한다. 보다 구체적으로는, 디코더(910)는, 입력 버퍼(9102)와, 엔트로피 복호부(9104)와, 역직교 변환·스케일링부(9112)와, 가산부(9114)와, 디블록 필터(9116)와, 인트라 프레임 예측부(9118)와, 움직임 보상부(9120)와, 전환부(9122)와, 제어부(9130)와, 출력 버퍼(9142)를 포함한다.
입력 버퍼(9102)는, 인코더(820)로부터의 비트 스트림을 일시적으로 격납한다. 엔트로피 복호부(9104)는, 입력 버퍼(9102)로부터의 비트 스트림에 대해 엔트로피 복호를 행하고, 그 결과로서, 움직임 데이터, 양자화 후의 변환 계수, 및 제어 데이터를 출력한다.
역직교 변환·스케일링부(9112)는, 엔트로피 복호부(9104)에서 복호된 양자화 후의 변환 계수에 대해, 역직교 변환(전형적으로는, 이산 푸리에 역변환) 및 스케일링을 실행한다. 이들의 처리에 의해, 잔차 화상이 복원된다.
가산부(9114)는, 역직교 변환·스케일링부(9112)로부터의 잔차 화상과, 먼저 산출되어 있는 예측 화상(보간 정보)을 가산한다. 디블록 필터(9116)는, 가산부(9114)로부터의 가산 결과에 대해, 블록 노이즈의 발생을 억제하기 위해 블록 경계를 평활화한다.
인트라 프레임 예측부(9118)는, 인접하는 매크로 블록에 의거하여 예측 화상을 생성한다.
움직임 보상부(9120)는, 인터 프레임 예측(프레임 사이 예측)을 이용하여, 예측 화상을 생성한다. 보다 구체적으로는, 움직임 보상부(9120)는, 복원된 오리지널 화상과, 엔트로피 복호부(9104)에서 복호된 움직임 데이터에 의거하여, 예측 화상을 생성한다.
인트라 프레임 예측부(9118) 및 움직임 보상부(9120)의 각각에서 생성된 예측 화상은, 전환부(9122)에 의해 어느 한쪽이 적절히 선택되고, 가산부(9114)에 주어진다.
제어부(9130)는, 엔트로피 복호부(9104)에서 복호된 제어 데이터에 의거하여, 역직교 변환·스케일링부(9112) 및 전환부(9122)에서의 처리를 제어한다.
출력 버퍼(9142)는, 디블록 필터(9116)로부터의 복원된 오리지널 화상(영상)을 일시적으로 격납한다.
동화상의 압축 규격의 1개이다 MPEG-4 AVC에서는, 상술한 바와 같은, 인코딩/디코딩 시스템에 의해, 데이터 압축한 상태로 동화상의 전송을 실현한다.
[C. 관련 기술(그 2)]
다음에, 깊이 정보 부가의 다시점 영상(Multiview Video Plus Depth : 이하 「MVD」라고도 칭한다.)을 위한 인코딩/디코딩 시스템에 관해 설명한다. 도 4는, 본 발명의 관련 기술에 관한 다시점 영상에 대한 인코딩을 위한 구성을 도시하는 기능 블록도이다. 도 5는, 본 발명의 관련 기술에 관한 다시점 영상에 대한 디코딩을 위한 구성을 도시하는 기능 블록도이다.
도 4에 도시하는 구성에서는, MVD를 구성하는 다시점 영상 및 대응하는 다시점 깊이 정보가 입력 데이터로서 주어진다. 인코더(820)는, 다시점 영상을 인코딩하고, 인코더(840)는, 다시점 깊이 정보를 인코딩한다. 인코더(820)와 인코더(840)는, 서로 연계하여 인코딩을 실행한다. 즉, 도 4에는, 다시점 영상 및 다시점 깊이 정보를 통합적으로 부호화하는 구성을 나타낸다. 이 스킴에 의하면, 인코더 사이에서 정보를 공유할 수 있고, 이에 의해, 인코딩 효율을 보다 높일 수 있다.
인코더(820)는, 도 2에 도시하는 인코더(820)와 실질적으로 동일한 구성을 갖고 있다. 단, 도 4에 도시하는 인코더(820)는, 다시점 영상에 대해 인코딩을 행한다. 인코더(840)는, 인코더(820)와 같은 구성으로 되어 있다. 단, 인코더(840)는, 다시점 깊이 정보에 대해 인코딩을 행한다.
구체적으로는, 인코더(840)는, 입력 버퍼(8402)와, 분할부(8404)와, 감산부(8406)와, 직교 변환·양자화부(8408)와, 로컬 디코더(8410)와, 제어부(8430)와, 움직임 추정부(8440)와, 출력 버퍼(8442)와, 엔트로피 부호화부(8450)를 포함한다. 그리고, 로컬 디코더(8410)는, 역직교 변환·스케일링부(8412)와, 가산부(8414)와, 디블록 필터(8416)와, 인트라 프레임 예측부(8418)와, 움직임 보상부(8420)와, 전환부(8422)를 포함한다.
또한, MVD를 인코딩하여 얻어지는 비트 스트림으로부터 MVD를 복원하는 경우에는, 도 5에 도시하는 바와 같은 구성이 이용된다. 도 5에 도시하는 구성은, 도 4에 도시하는 2개의 인코더(820 및 840)에 대응하여, 2개의 디코더(910 및 930)를 포함한다. 디코딩에서도, 디코더(910)와 디코더(930)는 서로 연계한다.
MVD에 대한 인코딩에서, 통합적인 부호화(joint coding)를 실현하는 방법으로서 다양한 수법이 생각된다. 그렇지만, 현시점에서는, 그 구체적인 수법에 관해서는, 충분히 정하여져 있는 것은 아니다. 기본적인 사고방식으로서, 예를 들면, 비특허 문헌 3에 개시되는 바와 같은, 움직임 추정의 정보(전형적으로는, 움직임 벡터)를 인코더 사이에서 공유하는 수법이 제안되어 있다. 이것은, 영상 및 깊이 정보는, 동일한 피사체를 촬상하여 취득되기 때문에, 양자는 동기하는 것으로 되기 때문이다.
[D. 개요]
본 발명의 실시의 형태에 관한 인코딩/디코딩 시스템은, 전형적으로는, MVD와 같은, 피사체의 제1의 정보(휘도 정보)를 포함하는 복수의 제1의 입력 화상(다시점 영상/다시점 화상)와, 복수의 제1의 입력 화상에 각각 대응하는, 피사체의 제1의 정보와는 다른 제2의 정보(깊이 정보)를 포함하는 복수의 제2의 입력 화상(다시점 깊이 정보/다시점 Depth 맵)이라는, 복수의 입력 화상을 인코딩한다. 단, MVD로 한정되는 일 없이, 서로 그 정보를 공유하는 것이 가능한 복수종류의 입력 화상군(전형적으로는, 한 쌍의 입력 화상군)에 대해, 인코딩 및 디코딩이 가능하게 되어 있다. 그 때문에, 영상과 깊이 정보와의 조합으로 한하지 않고, 다른 정보의 조합을 포함하는 화상군에 대해 적용 가능하다.
즉, 다시점 영상 및 다시점 깊이 정보의 통합적인 부호화를 고려하여, 본 발명의 실시의 형태에 관한 인코딩/디코딩 시스템에서는, 영상에 대한 인코더 및 깊이 정보에 대한 인코더의 각각에서 데이터 포맷 변환의 처리가 조립된다. 예를 들면, 데이터 포맷 타입에 관한 정보가 인코더군으로부터 디코더군에게 전송된다. 이와 같은 정보를 부가함에 의해, 종래의 장치 및 기존의 규격과의 호환성을 확보할 수 있다.
본 발명의 실시의 형태에 관한 인코딩/디코딩 시스템은, 상술한 바와 같은 기존의 규격에 조립할 수 있는 데이터 포맷 변환 처리를 포함한다. 본 발명의 실시의 형태에 관한 인코딩/디코딩 시스템에서는, 잉여라는 개념을 도입하여 데이터 압축 효율을 보다 높인다.
보다 구체적으로는, 상술한 관련 기술에 관한 구성에서는, 데이터 압축을 실현하기 위해, 오리지널 화상과 예측 화상과의 사이의 차분에 상당하는 잔차로 각 화소치를 정의하는 데이터 포맷을 채용하고 있다. 이에 대해, 본 발명의 실시의 형태에서는, 「잉여」로 각 화소치를 정의하는 데이터 포맷을 채용한다. 이 잉여는, 어느 산출된 값을 소정의 정수치로 제산(除算)하여 얻어지는 나머지(정수치)로서 정의된다. 이 때, 상(商)도 정수가 된다. 보다 구체적으로는, 잉여는, 모듈로(modulo) 연산에 의해 산출된다. 잉여의 산출 순서 등에 대해는, 후에 상세히 기술한다.
본 발명의 실시의 형태에서는, 대표적으로는, 잔차에 대신하여 잉여만으로 정의하는 데이터 포맷, 또는, 잉여와 잔차를 조합하여 정의하는 데이터 포맷을 채용할 수 있다. 즉, 본 발명의 실시의 형태에서는, 기존의 규격에서 이용되는 잔차만이 아니라, 잉여를 이용함으로써, 데이터 압축의 효율을 높임과 함께, 그 품질도 향상시킬 수 있다.
또한, 본 발명의 실시의 형태에 관한 인코딩/디코딩 시스템은, 영상에 관한 움직임 데이터 및 깊이 정보를 공유함으로써, 데이터의 압축 효율을 보다 향상시킬 수 있다.
[E. 인코더군의 기능 구성]
우선, 본 발명의 실시의 형태에 관한 인코딩/디코딩 시스템을 구성하는 인코더군의 기능 구성에 관해 설명한다. 도 6은, 본 발명의 실시의 형태에 관한 인코더군의 기능 블록도이다. 도 6을 참조하면, 본 발명의 실시의 형태에 관한 인코딩에서는, MVD를 구성하는 다시점 영상 및 대응하는 다시점 깊이 정보가 입력 데이터로서 주어진다. 도 1에 도시하는 인코더(120)는, 다시점 영상을 인코딩하고, 인코더(140)는, 다시점 깊이 정보를 인코딩한다. 인코더(120 및 140)는, 서로 정보를 공유하면서 인코딩을 행한다. 기본적인 구성은, 인코더(120)와 인코더(140)와의 사이에서 공통되어 있다.
다시점 영상을 인코딩하기 위한 인코더(120)는, 입력 버퍼(1202)와, 분할부(1204)와, 데이터 포맷 변환부(1206)와, 직교 변환·양자화부(1208)와, 로컬 디코더(1210)와, 제어부(1230)와, 움직임 추정부(1240)와, 출력 버퍼(1242)와, 엔트로피 부호화부(1250)를 포함한다. 또한, 로컬 디코더(1210)는, 역직교 변환·스케일링부(1212)와, 데이터 포맷 역변환부(1214)와, 디블록 필터(1216)와, 인트라 프레임 예측부(1218)와, 움직임 보상부(1220)와, 전환부(1222)를 포함한다.
한편, 다시점 깊이 정보를 인코딩하기 위한 인코더(140)는, 입력 버퍼(1402)와, 분할부(1404)와, 데이터 포맷 변환부(1406)와, 직교 변환·양자화부(1408)와, 로컬 디코더(1410)와, 제어부(1430)와, 움직임 추정부(1440)와, 출력 버퍼(1442)와, 엔트로피 부호화부(1450)를 포함한다. 또한, 로컬 디코더(1410)는, 역직교 변환·스케일링부(1412)와, 데이터 포맷 역변환부(1414)와, 디블록 필터(1416)와, 인트라 프레임 예측부(1418)와, 움직임 보상부(1420)와, 전환부(1422)를 포함한다.
개략하면, 인코더(120)는, 도 2 및 도 4에 도시하는 인코더(820)에 비교하여, 잔차 화상을 생성하는 감산부(8206)에 대신하여 데이터 포맷 변환부(1206)가 마련되고, 오리지널 화상을 복원하기 위한 가산부(8214)에 대신하여 데이터 포맷 역변환부(1214)가 마련되어 있는 점이 주로 다르다. 마찬가지로, 인코더(140)는, 도 4에 도시하는 인코더(840)에 비교하여, 잔차 화상을 생성하는 감산부(8406)에 대신하여 데이터 포맷 변환부(1406)가 마련되고, 오리지널 화상을 복원하기 위한 가산부(8414)에 대신하여 데이터 포맷 역변환부(1414)가 마련되어 있는 점이 주로 다르다. 단, 이들의 구조의 변경에 수반하여, 제어부(1230 및 1430)의 동작도 제어부(8230 및 8430)와는 각각 다른 것으로 되어 있다.
또한, 인코더(120)와 인코더(140)와의 정보 공유에 수반하여, 움직임 추정부(1240 및 1440)에서의 처리도 움직임 추정부(8240 및 8440)와는 각각 다른 것으로 되어 있다.
한편, 입력 버퍼(1202 및 1402), 분할부(1204 및 1404), 직교 변환·양자화부(1208 및 1408), 움직임 추정부(1240 및 1240), 출력 버퍼(1242 및 1442), 및, 엔트로피 부호화부(1250 및 1450)의 기능은, 도 4에 도시하는 입력 버퍼(8202 및 8402), 분할부(8204 및 8404), 직교 변환·양자화부(8208 및 8408), 움직임 추정부(8240 및 8440), 출력 버퍼(8242 및 8442), 및, 엔트로피 부호화부(8250 및 8450)에 각각 유사한 것으로 되어 있다. 또한, 로컬 디코더(1210 및 1410)의 역직교 변환·스케일링부(1212 및 1412), 디블록 필터(1216 및 1416), 인트라 프레임 예측부(1218 및 1418), 및, 전환부(1222 및 1422)의 기능은, 도 4에 도시하는 로컬 디코더(8210 및 8410)의 역직교 변환·스케일링부(8212 및 8412), 디블록 필터(8216 및 8416), 인트라 프레임 예측부(8218 및 8418), 및, 전환부(8222 및 8422)에 각각 유사한 것으로 되어 있다.
[F. 인코더(120 및 140)에서의 처리]
다음에, 인코더(120 및 140)에서의 처리에 관해 설명한다. 도 6을 참조하면, 입력 소스로부터의 영상 신호가 입력 버퍼(1202)에 주어지고, 대응하는 깊이 정보가 입력 버퍼(1402)에 주어진다. 전형적으로, 영상으로서, 복수의 카메라(10)(카메라 어레이)에 의해 촬상된 다시점 영상이 입력되고, 깊이 정보로서, 대응하는 다시점 깊이 정보가 입력된다. 단, 이와 같은 MVD로 한정되지 않고, 단일한 카메라(10)에 의해 촬상된 단시점(單視點) 영상 및 대응하는 깊이 정보라도 좋다.
입력 버퍼(1202)에는, 이들의 영상 신호가 일시적으로 격납되고, 이들의 전부 또는 일부가 입력 데이터로서 분할부(1204)에 주어진다. 마찬가지로, 입력 버퍼(1402)에는, 이들의 깊이 정보가 일시적으로 격납되고, 이들의 전부 또는 일부가 입력 데이터로서 분할부(1404)에 주어진다.
분할부(1204)는, 입력 버퍼(1202)로부터 출력되는 영상 신호에 포함되는 각 프레임을 복수의 매크로 블록(N×N화소)으로 분할한다. 마찬가지로, 분할부(1404)는, 입력 버퍼(1402)로부터 출력되는 깊이 정보에 포함되는 각 프레임을 복수의 매크로 블록(N×N화소)으로 분할한다. 이것은, 적절한 화상 사이즈를 처리 단위로 함으로써, 예측 처리를 고속화하는 것이다. 단, 정보 처리 장치의 연산 능력이나 요구되는 처리시간 등을 고려하여, 매크로 블록으로 분할하는 일 없이, 1프레임을 그대로 처리하여도 좋다. 분할된 각 매크로 블록은, 데이터 포맷 변환부(1206 및 1406)에 각각 주어진다.
데이터 포맷 변환부(1206)는, 분할부(1204)로부터의 매크로 블록과, 인트라 프레임 예측부(1218) 또는 움직임 보상부(1220)로부터의 움직임 보상 매크로 블록을 이용하여, 데이터 포맷 변환을 행한다. 마찬가지로, 데이터 포맷 변환부(1406)는, 분할부(1404)로부터의 매크로 블록과, 인트라 프레임 예측부(1418) 또는 움직임 보상부(1420)로부터의 움직임 보상 매크로 블록을 이용하여, 데이터 포맷 변환을 행한다.
보다 구체적으로는, 움직임 보상 매크로 블록은, 선행하는 하나 이상의 입력 화상으로부터 후속의 입력 화상에 포함되는 변화 성분을 나타내는 움직임 화상에 상당하고, 인트라 프레임 예측부(1218) 또는 움직임 보상부(1220)는, 영상에 관해, 이 동향 화상을 추정한다. 우선, 데이터 포맷 변환부(1206)는, 후속의 입력 화상으로 추정된 움직임 화상과의 차분으로부터 잔차 화상을 생성한다. 그리고, 데이터 포맷 변환부(1206)는, 잔차 화상의 화소치에 의거하여, 잔차 화상을 구성하는 화소 중 그 화소치를 잉여로 정의하여야 할 영역을 특정한다. 데이터 포맷 변환부(1206)는, 특정된 잉여로 정의하여야 할 영역에 관한 화소치를 잉여로 변환한다. 이와 같은 순서에 의해, 변환 후의 잔차 화상이 데이터 포맷 변환 후의 화상으로서 출력된다. 마찬가지로, 데이터 포맷 변환부(1406)는, 깊이 정보에 관해, 같은 처리를 실행한다.
이 데이터 포맷 변환에서, 일부 또는 전부의 화소치를 잉여로 정의한 매크로 블록이 생성된다. 이 데이터 포맷 변환의 상세한 순서에 관해서는, 후술한다.
인트라 프레임 예측부(1218) 또는 움직임 보상부(1220)로부터 주어지는 대응하는 움직임 보상 매크로 블록은, 데이터 포맷 변환부(1206)에 의해 생성되는 매크로 블록으로부터 오리지널 매크로 블록을 재구성하기 위한 사이드 정보(side information)로서 이용된다. 마찬가지로, 인트라 프레임 예측부(1418) 또는 움직임 보상부(1420)로부터 주어지는 대응하는 움직임 보상 매크로 블록은, 데이터 포맷 변환부(1406)에 의해 생성되는 매크로 블록으로부터 오리지널 매크로 블록을 재구성하기 위한 사이드 정보로서 이용된다.
영상에 관한 데이터 포맷 변환 후의 매크로 블록이 직교 변환·양자화부(1208)에 주어진다. 직교 변환·양자화부(1208)는, 직교 변환, 양자화, 및 스케일링을 실행함으로써, 입력된 데이터 포맷 변환 후의 매크로 블록을 더욱 최적화한다. 직교 변환으로서는, 전형적으로는, 이산 푸리에 변환이 채용된다. 양자화에서 이용되는 양자화 테이블 및 스케일링에서 이용되는 스케일링 계수에 관해서는, 데이터 포맷 변환부(1206)에서의 데이터 포맷 변환의 타입을 나타내는 데이터 포맷 타입(type)에 응하여 최적화되어도 좋다. 또한, 데이터 포맷 변환부(1206)에서, 몇가지의 데이터 포맷 변환이 가능하고, 이들의 데이터 포맷 변환의 종류의 한 예에 관해서는, 후에 상세히 기술한다.
직교 변환·양자화부(1208)로부터의 양자화 후의 변환 계수는, 로컬 디코더(1210)(역직교 변환·스케일링부(1212)) 및 엔트로피 부호화부(1250)에 출력된다. 마찬가지로, 직교 변환·양자화부(1408)는, 깊이 정보에 관한 데이터 포맷 변환 후의 매크로 블록에 대해, 직교 변환, 양자화, 및 스케일링을 실행한다.
역직교 변환·스케일링부(1212)는, 직교 변환·양자화부(1208)로부터의, 영상에 관한 양자화 후의 변환 계수에 대해, 역직교 변환 및 스케일링을 실행한다. 즉, 역직교 변환·스케일링부(1212)는, 직교 변환·양자화부(1208)에서의 변환 처리란 반대의 처리를 실행하여, 데이터 포맷 변환 후의 매크로 블록을 복원한다. 또한, 데이터 포맷 역변환부(1214)는, 복원된 데이터 포맷 변환 후의 매크로 블록에 대해, 데이터 포맷 역변환을 실행하여, 분할된 각 매크로 블록을 복원한다. 마찬가지로, 역직교 변환·스케일링부(1412)는, 직교 변환·양자화부(1408)로부터의, 깊이 정보에 관한 양자화 후의 변환 계수에 대해, 역직교 변환 및 스케일링을 실행한다.
디블록 필터(1216 및 1416)는, 각각 데이터 포맷 역변환부(1214 및 1414)로부터의 복원된 매크로 블록에 대해, 블록 노이즈의 발생을 억제하기 위해 블록 경계를 평활화한다.
즉, 역직교 변환·스케일링부(1212), 데이터 포맷 역변환부(1214), 및 디블록 필터(1216)에 의해, 오리지널 영상이 복원된다. 그리고, 이 복원된 오리지널 화상이 인트라 프레임 예측부(1218) 및 움직임 보상부(1220)에 주어진다. 마찬가지로, 역직교 변환·스케일링부(1412), 데이터 포맷 역변환부(1414), 및 디블록 필터(1416)에 의해, 오리지널의 깊이 정보가 복원된다.
인트라 프레임 예측부(1218)는, 인접하는 매크로 블록에 의거하여 예측 화상(이하 「인트라 매크로 블록」이라고도 칭한다.)를 생성한다. 움직임 보상부(1220)는, 인터 프레임 예측(프레임 사이 예측)를 이용하여, 예측 화상(이하 「인터 매크로 블록」이라고도 칭한다.)를 생성한다. 이들의 예측 화상이 움직임 보상 매크로 블록이 된다.
인코더(120) 및 인코더(140)와의 사이에는, 어떤 타입의 정보가 공유되어 있는지를 서로 나타내는 커넥션이 마련되어 있다. 이와 같은 공유되는 정보를 서로 통지하기 위한 파라미터 등에 대해는, 후술한다.
움직임 추정부(1240)는, 영상에 관한 움직임 데이터를 추정하고, 움직임 추정부(1440)는, 깊이 정보에 관한 움직임 데이터를 추정한다. 이들의 움직임 데이터로서는, 전형적으로는, 움직임 벡터가 이용된다.
움직임 추정부(1240)는, 기본적으로는, 분할부(1204)로부터의 각 매크로 블록으로 분할된 오리지널 영상과, 1프레임 전(前)의 복원된 오리지널 영상에 의거하여, 영상에 관한 움직임 데이터를 추정한다. 이 영상에 관한 움직임 데이터의 추정 정밀도를 높이기 위해, 대응하는 깊이 정보가 이용된다. 보다 구체적으로는, 움직임 추정부(1240)는, (전형적으로는, 공간 방향에 관한) 움직임 데이터의 추정에, 그 처리 대상 프레임과 동일한 프레임에 있어서 인코더(140)로부터의 깊이 정보를 이용한다.
마찬가지로, 움직임 추정부(1440)는, 기본적으로는, 분할부(1404)로부터의 각 매크로 블록으로 분할된 깊이 정보와, 1프레임 전의 복원된 깊이 정보에 의거하여, 깊이 정보에 관한 움직임 데이터를 추정한다. 움직임 추정부(1440)에서의 깊이 정보에 관한(공간 방향 및/또는 시간 방향에 관한) 움직임 데이터의 추정 정밀도를 높이기 위해, 인코더(120)에서 추정된 움직임 데이터가 이용된다.
이들의 영상 및 깊이 정보를 공유하는 처리의 상세에 관해서는 후술한다.
제어부(1230)는, 데이터 포맷 변환부(1206), 직교 변환·양자화부(1208), 역직교 변환·스케일링부(1212), 데이터 포맷 역변환부(1214), 전환부(1222), 및, 움직임 추정부(1240)에서의 처리를 제어한다. 또한, 제어부(1230)는, 제어 데이터로서, 인코딩에 관한 파라미터나 각 컴포넌트에 대한 부호화의 순서 등을 출력한다. 또한, 제어부(1230)는, 데이터 포맷 변환에 관한 부가 정보(데이터 포맷 타입(type), 임계치, 플래그 등)를 엔트로피 부호화부(1250)에 출력한다.
마찬가지로, 제어부(1430)는, 데이터 포맷 변환부(1406), 직교 변환·양자화부(1408), 역직교 변환·스케일링부(1412), 데이터 포맷 역변환부(1414), 전환부(1422), 및, 움직임 추정부(1440)에서의 처리를 제어한다. 또한, 제어부(1430)는, 제어 데이터로서, 인코딩에 관한 파라미터나 각 컴포넌트에 대한 부호화의 순서 등을 출력한다. 또한, 제어부(1430)는, 데이터 포맷 변환에 관한 부가 정보(데이터 포맷 타입(type), 임계치, 플래그 등)를 엔트로피 부호화부(1450)에 출력한다.
또한, 제어부(1230)와 제어부(1430)는, 상술한 바와 같은 정보를 공유하기 위해, 몇가지의 제어 데이터를 교환한다. 이에 의해, MVD에 대한 통합적인 부호화를 실현할 수 있다.
엔트로피 부호화부(1250)는, 변환 후의 잔차 화상과, 잉여로 정의하여야 할 영역을 특정하는 부가 정보를 코딩한다. 보다 구체적으로는, 엔트로피 부호화부(1250)는, 직교 변환·양자화부(1208)로부터의 양자화 후의 변환 계수, 움직임 추정부(1240)로부터의 움직임 데이터, 및 제어부(1230)로부터의 제어 데이터 및 부가 정보에 대해, 엔트로피 부호화를 행하고, 그 결과로서 영상에 관한 비트 스트림을 생성한다. 이 생성되는 비트 스트림이 입력된 영상 신호에 관한 인코딩 결과가 된다. 마찬가지로, 엔트로피 부호화부(1450)는, 직교 변환·양자화부(1408)로부터의 양자화 후의 변환 계수, 움직임 추정부(1240)로부터의 움직임 데이터, 및 제어부(1430)로부터의 제어 데이터 및 부가 정보에 대해, 엔트로피 부호화를 행하고, 그 결과로서 깊이 정보에 관한 비트 스트림을 출력한다.
출력 버퍼(1242)는, 필수의 구성은 아니지만, 디블록 필터(1216)로부터의 복원된 오리지널 영상을 일시적으로 격납한다. 마찬가지로, 출력 버퍼(1442)는, 디블록 필터(1416)로부터의 복원된 오리지널의 깊이 정보를 일시적으로 격납한다.
이하, 상술한 기능 구성중 주요한 컴포넌트에 관해, 보다 상세히 설명한다.
[G. 움직임 추정부(1240 및 1440)에서의 처리]
우선, 도 1에 도시하는 인코더(120)와 인코더(140)와의 사이에서의 정보 공유의 한 형태로서, 움직임 추정부(1240 및 1440)에서의 움직임 데이터의 추정에 관한 처리에 관해 설명한다. 또한, 영상에 관한 인코더와 깊이 정보에 관한 인코더와의 사이에서 정보를 공유하는 방법으로서는, 이하의 방법으로 한정되는 것이 아니다.
(g1 : 움직임 추정부(1240)에서의 영상에 관한 움직임 데이터의 추정)
움직임 추정부(1240)에서의 영상(다시점 영상)에 관한 움직임 데이터의 추정에서, 다시점 깊이 정보가 이용된다. 이 깊이 정보의 이용 형태로서는, 전형적으로는, 이하와 같은 방법이 생각된다.
(i) 대응하는 깊이 정보 그 자체를 추정된 움직임 데이터로서 출력한다.
(ⅱ) 대응하는 깊이 정보를 추정되는 움직임 데이터의 초기치로서 취급하고, 또한, 영상의 정보 등을 이용하여 조정을 한 다음, 최종적인 움직임 데이터로서 출력한다.
동일 시간에 취득된 프레임 사이의 차분은, 대응하는 시점(視點)의 차이(즉, 공간 영역에서의 차이)에 의존한다. 이 공간 영역에서의 차이는, 대응하는 깊이 정보와 강한 관련성을 갖기 때문에, 영상의 공간 방향에 관한 움직임 데이터로서 대응하는 깊이 정보를 그대로 이용할 수 있다는 지견(知見)에 의거한 것이다. 이와 같은 깊이 정보를 이용함으로써, 처리의 효율화 및 정밀도 향상을 실현할 수 있다.
또는, 깊이 정보(다시점 깊이 정보)에 관한 움직임 데이터 그 자체를 영상(다시점 영상)에 관한 움직임 데이터로서 이용하여도 좋다. 또는, 대응하는 깊이 정보에 관한 움직임 데이터를 추정되는 영상의 움직임 데이터의 초기치로서 취급하고, 또한, 영상 등을 이용하여 조정을 한 다음, 최종적인 움직임 데이터로서 출력하여도 좋다.
(g2 : 움직임 추정부(1440)에서의 깊이 정보에 관한 움직임 데이터의 추정)
움직임 추정부(1440)에서의 깊이 정보(다시점 깊이 정보)에 관한 움직임 데이터의 추정에서, 다시점 영상이 이용된다. 이 다시점 영상의 이용 형태로서는, 전형적으로는, 이하와 같은 2개의 방법이 생각된다.
(ⅲ) 대응하는 영상에 관한 움직임 데이터 그 자체를 움직임 추정부(1440)로부터 움직임 데이터로서 출력한다.
(iv) 대응하는 영상에 관한 움직임 데이터를 추정되는 깊이 정보의 움직임 데이터의 초기치로서 취급하고, 또한, 깊이 정보 등을 이용하여 조정을 한 다음, 최종적인 움직임 데이터로서 출력한다.
즉, 상술한 (ⅲ) 및 (iv)의 형태에서는, 대응하는 영상에 관한 움직임 데이터가 인코더(140)에서의 인코딩에 이용된다.
단, 영상에 관한 움직임 데이터를 깊이 정보의 인코딩에 이용하지 않도록 하여도 좋다. 이 경우에는, 전형적으로는, 이하와 같은 2개의 방법이 생각된다.
(v) 영상에 관한 움직임 데이터를 이용하는 일 없이, 인코더(140)는 깊이 정보로부터 움직임 데이터를 생성함과 함께, 그 생성한 움직임 데이터를 코딩 및 데이터 압축에 이용한다.
(vi) 영상에 관한 움직임 데이터를 이용하는 일 없이, 인코더(140)는 깊이 정보 그 자체를 움직임 데이터로서 취급한다.
(g3 : 예측 화상의 생성례)
상술한 바와 같은 정보 공유에 의해 생성되는, 인코딩에 이용된 예측 화상(보간 정보)에 관해 설명한다.
도 7은, 본 발명의 실시의 형태에 관한 인코딩에 의한 예측 화상의 생성 순서의 한 예를 도시하는 도면이다. 도 7(a)에는 다시점 영상에 관한 예측 화상의 생성 순서의 한 예를 도시하고, 도 7(b)에는 다시점 깊이 정보에 관한 예측 화상의 생성 순서의 한 예를 도시한다. 도 7에는, 배치 위치(S0, S1, S2, S3, …)에 배치된 복수의 카메라(10)의 각각이 시각(T0, T1, T2, T3, T4, T5, …)으로 순차적으로 프레임을 출력하는 예를 나타낸다. 각 프레임에 관한 예측 화상은, 인트라 프레임 예측, 또는, 인터 프레임 예측을 이용하여 생성된다. 도 7에서, 「I」는 I프레임(Intra-coded Frame)을 나타내고, 「P」는 P프레임(predicted frame)을 나타내고, 「B」는 B프레임(bi-directional predicted frame)을 나타낸다. 또한, 설명의 편의상, 도 7에는 프레임 단위로 생성 순서를 설명하고 있지만, 상술한 바와 같이 매크로 블록 단위로 예측 화상이 생성되어도 좋다.
우선, 기준이 되는 프레임(도 7에서는, 배치 위치(S0)의 카메라(10)의 시각(T0)에서의 프레임)에 관해서는, 인터 프레임 예측(프레임 사이 예측)이 아니라, 인트라 프레임 예측을 이용하고 예측 화상(I프레임)이 생성된다. 이 I프레임을 이용하여, 소정의 생성 순서에 따라 예측 화상이 순차적으로 생성된다.
이와 같은 생성 순서에서, 영상(다시점 영상)에 관한 움직임 데이터의 추정에 다시점 깊이 정보가 이용되는 경우(상술한 (i) 또는 (ⅱ)의 경우)에는, 대응하는 프레임의 깊이 정보가 생성되는 예측 화상에 반영된다. 도 7에는, 인터 프레임 예측의 대상이 되는 프레임(배치 위치(S2)의 카메라(10)의 시각(T0)에서의 프레임)에 대해, 대응하는 깊이 정보(시각(T0)이면서 배치 위치(S2))가 반영된다.
한편, 깊이 정보(다시점 깊이 정보)에 관한 움직임 데이터의 추정에 다시점 영상이 이용되는 경우(상술한 (ⅲ) 또는 (iv)의 경우)에는, 대응하는 프레임의 움직임 데이터가 생성되는 예측 화상에 반영된다. 도 7에는, 인터 프레임 예측의 대상이 되는 프레임(배치 위치(S2)의 카메라(10)의 시각(T0)에서의 프레임)에 대해, 대응하는 영상에 관한 움직임 데이터(시각(T0)이면서 배치 위치(S2))가 반영된다.
(g4 : 기타의 예)
영상의 매크로 블록이 충분한 텍스처를 갖지 않는 경우에는, 깊이 정보 그 자체를 영상의 대응하는 각 매크로 블록의 움직임 데이터로서 이용하여도 좋다. 또한, 영상의 매크로 블록의 텍스처의 양은, 그 의사 구배 매크로 블록에 임계치를 적용함으로써, 결정하여도 좋다. 이 경우, 영상의 움직임 데이터를 생성하기 위해서는, 부족(不足)하여 있는 영역의 정보를 생성할 필요가 있다. 이 부족하여 있는 영역의 정보는, 깊이 정보 또는 깊이 정보의 움직임 데이터를 초기치로서 이용함으로써 추정함으로써 생성할 수 있다. 또는, 이 부족하여 있는 영역의 정보를 영상의 정보만으로부터 추정함으로써 생성하여도 좋다. 또한, 깊이 정보에 대해서도 같은 수법을 적용할 수 있다.
[H. 데이터 포맷 변환부(1206 및 1406)에서의 처리]
다음에, 본 발명의 실시의 형태에 관한 데이터 포맷 변환부(1206 및 1406)에서의 처리에 관해 상세히 기술한다. 또한, 데이터 포맷 변환부(1206 및 1406)에서의 처리는 실질적으로 동일하기 때문에, 설명의 편의상, 이하에서는, 데이터 포맷 변환부(1206)에 관해 설명한다.
(h1 : 데이터 포맷 타입)
상술한 바와 같이, 본 발명의 실시의 형태에서는, 잉여만으로 정의하는 구성, 및 잉여와 잔차를 조합하여 정의하는 구성의 양쪽을 채용할 수 있다. 후자의 경우에는, 다시, (1) 화소 단위로의 잉여와 잔차와의 조합, 및, (2) 매크로 블록 단위로의 잉여와 잔차(또는, 전부 제로)와의 조합의 양쪽을 채용할 수 있다.
도 8은, 본 발명의 실시의 형태에 관한 잉여와 잔차와의 조합 수법을 설명하기 위한 도면이다. 도 8(a)에는, 화소 단위로 잉여와 잔차와의 조합을 행하는 수법을 도시하고, 도 8(b)에는, 매크로 블록 단위로 잉여와 잔차와의 조합을 행하는 수법을 도시한다. 또한, 도 8에서, 「Rem」은 잉여를 나타내고, 「Res」는 잔차를 나타낸다.
도 8(a)에 도시하는 바와 같이, 각 프레임은 복수의 매크로 블록으로 분할되어 처리된다. 각 매크로 블록을 구성하는 복수의 화소의 각각에 관해, 소정의 판단 기준(전형적으로는, 후술하는 바와 같은 임계치(TH1))를 적용하여, 잉여 및 잔차의 어느 것으로 정의하여야 하는지가 판단된다.
한편, 도 8(b)에 도시하는 바와 같이, 프레임을 구성하는 복수의 매크로 블록의 각각에 관해, 소정의 판단 기준(전형적으로는, 후술하는 바와 같은 임계치(TH1 및 TH2))를 적용하여, 잉여(잉여 매크로 블록) 및 잔차(잔차 매크로 블록)의 어느 것을 이용하는지가 판단된다. 잉여로 정의하여야 할 것으로 판단된 화소 또는 매크로 블록에 관해서는, 후술하는 바와 같은 모듈로 연산을 이용하여, 그 화소치가 산출된다.
또한, 잉여만으로 정의되는 경우에는, 상술한 바와 같은 판단 기준의 적용을 생략하고, 각 화소/매크로 블록에 관해 잉여가 산출된다.
(h2 : 데이터 포맷 변환부(1206)에서의 처리 개요)
상술한 바와 같이, 데이터 포맷 변환부(1206)로부터 출력되는 데이터 포맷 변환 후의 매크로 블록에는 복수의 타입이 있기 때문에, 사이드 정보의 일부로서, 이 데이터 포맷 변환의 순서를 나타내는 정보(데이터 포맷 타입(type))가 이용된다. 단, 잔차로 정의된 영역에 관해서는, 사이드 정보를 포함하지 않도록 하여도 좋다. 즉, 대응하는 사이드 정보가 존재하는 영역(화소 또는 매크로 블록)에 관해 잉여로 정의되어 있는 것이 암시된다.
데이터 포맷 변환부(1206)는, 동일 프레임에서의, 오리지널 매크로 블록과 움직임 보상 매크로 블록(인트라 프레임 예측부(1218)에서 생성되는 인트라 매크로 블록, 또는, 움직임 보상부(1220)에서 생성되는 인터 매크로 블록)과의 차분(즉, 잔차 화상)에 대해, 데이터 포맷 변환을 실행한다. 잉여로 정의된 영역에 관해서는, 움직임 보상 매크로 블록도 사이드 정보로서 이용된다.
또한, 잉여를 산출하는 모듈로 연산에 이용하는 계수(분모)를 결정하기 위해, 움직임 보상 매크로 블록(인트라 매크로 블록, 또는, 인터 매크로 블록)에 관한 의사 구배 매크로 블록, 또는 그것에 유사한 정보를 갖는 매크로 블록이 생성되다. 또한, 구배의 정보에 관해서는, 프레임 단위로 산출하여도 좋다.
이하, 화소 단위로 잉여와 잔차를 조합하는 데이터 포맷(이하 「제1 데이터 포맷」이라고도 칭한다.), 및, 매크로 블록 단위로 잉여와 잔차를 조합하는 데이터 포맷(이하 「제2 데이터 포맷」이라고도 칭한다.)에 관해, 각각 그 상세한 처리에 관해 설명한다. 또한, 이하의 설명에서, 잔차의 산출에 관한 처리를 제외함으로써, 잉여만으로 화소치를 정의하는 데이터 포맷을 실현할 수 있음은 자명하다.
(h3 : 데이터 포맷 변환부(1206)(제1 데이터 포맷용))
도 9는, 본 발명의 실시의 형태에 관한 데이터 포맷 변환부(1206)의 기능 블록도이다. 도 9를 참조하면, 데이터 포맷 변환부(1206)는, 감산부(1260)와, 비교부(1262)와, 마스크 생성부(1264)와, 처리 선택부(1266)와, 구배 화상 생성부(1270)와, 계수 선택부(1272)와, Lookup 테이블(1274)과, 모듈로 연산부(1278)와, 합성부(1280)를 포함한다.
감산부(1260)는, 분할부(1204)(도 6)로부터 입력되는 오리지널 매크로 블록(도 9에서는 「Original MB」로 표기된다.)으로부터, 움직임 보상 매크로 블록(인트라 매크로 블록, 또는, 인터 매크로 블록)(도 9에서는 「Inter/Intra MB」로 표기된다.)을 감산함으로써, 잔차 매크로 블록(도 9에서는 「Res MB」로 표기된다.)을 생성한다.
비교부(1262) 및 마스크 생성부(1264)는, 대상의 매크로 블록에서 잔차로 정의된 화소를 특정한다. 즉, 비교부(1262)는, 잔차 화상(잔차 매크로 블록)을 구성하는 각 화소의 화소치의 크기에 의거하여, 잉여로 정의하여야 할 영역을 화소 단위로 결정한다. 마스크 생성부(1264)는, 잔차 화상을 구성하는 화소 중, 잉여로 정의된 화소를 각각 특정하기 위한 정보를 부가 정보(전형적으로는, 후술하는 플래그(flag1))로서 출력한다.
보다 구체적으로는, 비교부(1262)는, 대상의 매크로 블록을 구성하는 각 화소의 화소치와 사이드 정보의 일부인 임계치(TH1)를 비교한다. 마스크 생성부(1264)는, 그 화소치가 임계치(TH1) 미만인 화소에 관해 잉여로 정의하여야 할 것으로 결정하고, 그 이외의 화소에 관해 잔차로 정의하여야 할 것으로 결정한다. 즉, 잔차 매크로 블록 중, 그 화소치가 작은 영역의 정보는 크게 소실되는 일이 있기 때문에, 잔차가 아니라, 잉여로 정의하는 데이터 포맷으로 변환한 다음, 데이터 압축이 행하여진다.
이 각 화소에 관한 잉여 및 잔차의 어느 것으로 정의하는지라는 정보는, 플래그(flag1)로서 사이드 정보에 포함되다. 마스크 생성부(1264)는, 대상의 프레임 내에서, 각 화소에 관한 플래그(flag1)의 값을 전개(展開)한 마스크(맵)를 생성하고, 처리 선택부(1266)에 출력함과 함께, 제어부(1230)에 출력한다. 마스크 생성부(1264)로부터의 플래그(flag1)의 값에 의거하여, 인코딩 및 디코딩에서, 각 화소에 적용되는 순서가 결정된다.
데이터 포맷 변환부(1206)에서는, 처리 선택부(1266)가 플래그(flag1)의 값에 의거하여, 대상의 매크로 블록을 구성하는 각 화소에 대한 처리를 선택한다. 구체적으로는, 처리 선택부(1266)는, 잔차(도 9에서는 「Residual」로 표기된다.)로 정의하여야 할 것으로 판단된 화소에 관해서는, 그 화소치를 그대로 합성부(1280)에 출력하는 한편으로, 잉여(도 9에서는 「Remainder」로 표기된다.)로 정의하여야 할 것으로 판단된 화소에 관해서는, 그 화소치를 모듈로 연산부(1278)에 출력한다.
또한, 잔차로 정의하여야 할 것으로 판단된 화소에 대해 다른 판단 기준을 적용하여, 잔차로 정의하여야 할 영역의 일부 또는 전부의 화소에 관해, 그 화소치를 제로로 변환하여도 좋다. 이 제로로 변환된 화소에 관해서는, 여전히 「연차로 정의하여야 할 영역」으로 취급된다.
모듈로 연산부(1278)는, 잉여로 정의하여야 할 영역에 관한 화소치에 대해 모듈로 연산을 실행한다. 보다 구체적으로는, 모듈로 연산부(1278)는, 계수 선택부(1272)에 의해 설정되는 계수(D)(정수)를 분모로 하는 모듈로 연산을 행하여, 잉여를 산출한다. 이 산출된 잉여가 합성부(1280)에 출력된다. 합성부(1280)는, 화소마다 입력되는 잉여 또는 잔차를 결합하여, 데이터 포맷 변환 후의 매크로 블록(도 9에서는 「Converted MB」로 표기된다.)를 출력한다.
데이터 포맷 변환부(1206)에서는, 움직임 보상 매크로 블록에 의거하여, 모듈로 연산부(1278)에서의 모듈로 연산에 이용되는 계수(분모)(D)를 동적으로 변화시켜도 좋다. 움직임 보상 매크로 블록 중 그 화소치가 큰 영역은, 프레임 사이의 용장성이 상대적으로 낮은 영역을 의미하고, 이와 같은 영역에 관해서는, 데이터 포맷 변환 후에서도 그것에 포함되는 정보가 유지되는 것이 바람직하다. 그 때문에, 프레임 사이의 용장성의 크기에 응하여, 적절한 계수(D)가 선택된다.
이와 같은 계수(D)를 동적으로 변화시키는 방법으로서는 임의의 방법을 채용할 수 있다. 도 9에는, 움직임 보상 매크로 블록(움직임 화상)의 구배 정보를 취득하고, 취득한 구배 정보에 의거하여 모듈로 연산의 법(法)이 되는 값을 결정하는 처리례를 나타낸다. 보다 구체적으로는, 움직임 보상 매크로 블록에 관한 의사 구배 매크로 블록(gradient-like macro-block)을 생성하고, 이 의사 구배 매크로 블록의 각 화소에서의 화소치의 크기에 응하여, 법이 되는 계수(D)를 결정한다.
구체적으로는, 구배 화상 생성부(1270)는, 움직임 보상 매크로 블록에 관한 의사 구배 매크로 블록을 생성한다. 그리고, 구배 강도와 모듈로 연산의 법이 되는 값과의 미리 정하여진 대응 관계를 참조하여, 모듈로 연산의 법이 되는 값을 결정하여도 좋다. 보다 구체적으로는, 계수 선택부(1272)는, 생성된 의사 구배 매크로 블록의 각 화소의 화소치(구배 강도)에 의거하여, Lookup 테이블(1274)을 참조함으로써, 각 화소에 관한 계수(D)를 결정한다. Lookup 테이블(1274)을 이용함으로써, 의사 구배 매크로 블록에 대해 계수(D)를 비선형으로 결정할 수 있다. 이와 같이, 계수(D)를 비선형으로 결정함으로써, 디코드 후의 화상 품질을 향상시킬 수 있다.
도 10은, 본 발명의 실시의 형태에 관한 잉여의 산출에 이용되는 계수(D)를 결정하기 위한 Lookup 테이블(1274)의 한 예를 도시하는 도면이다. 도 10에 도시하는 바와 같이, 구배 강도에 응하여 복수의 단계(Gradient Range)로 이산화되어 있고, 각 단계에 관한 계수(D)가 정의된다. 구배 화상 생성부(1270)는, Lookup 테이블(1274)을 참조하여, 대상의 매크로 블록의 각 화소에 대응하는 계수(D)를 선택한다. 여기서, 계수(D)는, 대상의 매크로 블록에 포함되는 각 컬러 컴포넌트의 각 화소에 관해 결정된다.
도 10에 도시하는 Lookup 테이블(1274)에서는, 모듈로 연산의 법이 되는 값(계수(D))가 2의 멱승(冪乘)이 되도록 설계되어 있다. 이와 같이 계수(D)의 할당을 행함으로써, 모듈로 연산을 고속화할 수 있다. Lookup 테이블(1274)은, 임의로 설계할 수 있기 때문에, 단계수(段階數)가 보다 적은, 또는, 단계수가 보다 많은 Lookup 테이블을 채용하여도 좋다.
또는, Lookup 테이블을 반드시 사용할 필요는 없고, 미리 정하여진 함수 등을 이용하여 계수(D)를 결정하여도 좋다. 예를 들면, 의사 구배 매크로 블록의 각 화소에서의 화소치를 그대로 계수(D)로 하여도 좋다.
모듈로 연산부(1278)는, 처리 선택부(1266)로부터 순차적으로 출력되는 화소에 대해, 대응하는 계수(D)를 법으로 하여 그 화소치에 대한 모듈로 연산을 행한다. 보다 구체적으로는, 각 화소의 화소치(Value)=q×D+m(단, q≥0, D>0)가 성립하는 최소의 m이 결정된다. 여기서, q는 상(商)이고, m는 잉여이다.
후술하는 매크로 블록의 재구성 처리(디코딩)에서는, 「화소치(P)=k×D+m」가 산출되기 때문에, 각 화소에 관해 산출되는 컬러 컴포넌트별(別)의 잉여(m)가 출력된다.
여기서, 구배 화상 생성부(1270)에서의 의사 구배 매크로 블록의 생성 방법에 관해 설명한다. 보다 구체적으로는, 구배 화상 생성부(1270)는, 사이드 정보로서의 움직임 보상 매크로 블록(인트라 매크로 블록, 또는, 인터 매크로 블록)으로부터 화상 공간상의 변화의 정도를 나타내는 의사 구배 매크로 블록을 생성한다. 의사 구배 매크로 블록은, 움직임 보상 매크로 블록 내에서, 그 텍스처 변화가 보다 큰 영역이 보다 큰 휘도를 갖는 화상을 의미한다. 의사 구배 매크로 블록의 생성 처리로서는, 임의의 필터링 처리를 이용할 수 있다. 또한, 의사 구배 매크로 블록을 구성하는 각 화소치는, 소정 범위 내(예를 들면, 0∼255)의 어느 하나의 정수치를 취하도록 정규화된다. 전형적으로는, 이하와 같은 처리 순서로 의사 구배 매크로 블록이 생성된다.
(i) 의사 구배 매크로 블록에 대해 노이즈 제거를 위해 가우스 필터를 적용한다(가우시안 스무징 처리).
(ⅱ) 필터 후의 사이드 정보를 컬러 컴포넌트별로 분리한다(즉, 컬러 컴포넌트별로 그레이스케일 화상을 생성한다).
(ⅲ) 각 컬러 컴포넌트의 그레이스케일 화상에 관해, (c1)∼(c4)의 처리를 실행한다.
(ⅲ-1) 에지 검출 처리
(ⅲ-2) (1회 이상의) 가우시안 스무징 처리(또는, 미디언 필터 처리)
(ⅲ-3) 일련의 모폴로지컬 처리(예를 들면, (1회 이상의) 팽창 처리, (1회 이상의) 수축 처리, (1회 이상의) 팽창 처리)
(ⅲ-4) (1회 이상의) 가우시안 스무징 처리
이상과 같은 처리에 의해, 움직임 보상 매크로 블록을 구성하는 컬러 컴포넌트별로 의사 구배 매크로 블록이 생성된다.
여기에 나타낸 처리 순서는 한 예이고, 가우시안 스무징 처리나 모폴로지컬 처리의 처리 내용이나 처리 순서 등은 적절히 설계할 수 있다.
또한, 움직임 보상 매크로 블록 내에서 보다 큰휘도 변화가 생기고 있는 영역에 대해, 보다 큰 화소치(휘도)를 할당하는 매크로 블록을 생성할 수 있다면, 어떤 방법을 채용하여도 좋다. 한 예로서, x방향 및 y방향의 각각에 관해 sobel 필터를 적용하고, 그 적용 결과의 평균치를 매크로 블록으로 하여도 좋다.
(h4 : 데이터 포맷 변환부(1206)(제2 데이터 포맷용))
도 11은, 본 발명의 실시의 형태에 관한 데이터 포맷 변환부(1206)의 다른 기능 블록도이다. 도 11을 참조하면, 데이터 포맷 변환부(1206)는, 도 9에 도시하는 데이터 포맷 변환부(1206)에 비교하여, 마스크 생성부(1264), 처리 선택부(1266), 및 합성부(1280)에 대신하여, 적산부(1265), 평가부(1267), 및 전환부(1269)를 마련한 것이다. 기타의 컴포넌트의 상세에 관해서는, 상술하였기 때문에 그 내용은 반복하지 않는다.
비교부(1262), 적산부(1265), 및 평가부(1267)는, 대상의 매크로 블록에 대해, 잔차 및 잉여의 어느 것으로 정의하여야 하는지를 결정한다. 즉, 비교부(1262), 적산부(1265), 및 평가부(1267)는, 잔차 화상(잔차 매크로 블록)을 소정 사이즈의 분할한 각 블록에 관해, 당해 블록을 구성하는 각각의 화소의 화소치에 관한 평가를 결합한 결과에 의거하여, 잉여로 정의하여야 할 영역을 블록 단위로 결정한다. 평가부(1267)는, 잔차 화상에 포함되는 블록 중, 잉여로 정의된 블록을 특정하기 위한 정보를 부가 정보로서 출력한다.
보다 구체적으로는, 비교부(1262)는, 잔차 매크로 블록을 구성하는 각 화소의 화소치와 사이드 정보의 일부인 임계치(TH1)를 비교한다. 그리고, 비교부(1262)는, 그 화소치가 임계치(TH1)를 초과하는 화소에 관해서는, 그 화소치와 임계치(TH1)와의 차분을 적산부(1265)에 출력한다. 즉, 적산부(1265)는, 각 잔차 매크로 블록에 관해, 그 화소치가 임계치(TH1)를 초과하는 화소에 관한 「화소치-임계치(TH1)」의 총합(Σ(화소치-임계치(TH1)))을 산출한다.
평가부(1267)는, 산출된 총합과 임계치(TH2)를 비교하여, 대상의 잔차 매크로 블록에 대해, 잔차 및 잉여의 어느 것으로 정의하여야 하는지를 결정한다. 구체적으로는, 산출된 총합이 임계치(TH2) 이상이면, 평가부(1267)는, 그 대상의 잔차 매크로 블록을 그대로 출력한다고 결정한다. 한편, 산출된 총합이 임계치(TH2) 미만이라면, 평가부(1267)는, 그 대상의 잔차 매크로 블록을 잉여 매크로 블록으로 변환한 다음 출력한다고 결정한다. 즉, 잔차 매크로 블록이 상대적으로 화소치가 작은 화소로 구성되어 있다고 판단된 경우에는, 당해 매크로 블록의 정보는 크게 소실될 가능성이 있기 때문에, 잔차가 아니라, 잉여로 정의하는 데이터 포맷으로 변환된다.
또한, 평가부(1267)는, 이 결정에 의거하여, 전환부(1269)에 지령을 준다. 보다 구체적으로는, 대상의 잔차 매크로 블록을 그대로 출력한다고 결정된 경우에는, 전환부(1269)는, 모듈로 연산부(1278)를 바이패스하는 경로를 유효화한다. 이에 대해, 대상의 잔차 매크로 블록을 잉여 매크로 블록으로 변환한 다음 출력한다고 결정된 경우에는, 전환부(1269)는, 잔차 매크로 블록을 모듈로 연산부(1278)에 주는 경로를 유효화한다.
이 매크로 블록에 관한 잉여 및 잔차의 어느 것으로 정의하는지라는 부가 정보는, 플래그(flag2)로서 사이드 정보에 포함되다. 마스크 생성부(1264)로부터의 플래그(flag2)의 값에 의거하여, 인코딩 및 디코딩에서, 각 매크로 블록에 적용되는 순서가 결정된다.
또한, 데이터 포맷 변환 후의 매크로 블록으로서, 잉여 매크로 블록을 이용한 경우에는, 불가역 압축의 형식이 되기 때문에, 이 매크로 블록을 로컬 디코더(1210)에서 복원할 때에는, 디블록 필터(1216)(도 4)에서의 처리를 바이패스하도록 하여도 좋다. 이에 의해, 노이즈의 발생을 저감할 수 있다.
[I. 직교 변환·양자화부(1208 및 1408)에서의 처리]
다음에, 본 발명의 실시의 형태에 관한 직교 변환·양자화부(1208 및 1408)에서의 처리에 관해 상세히 기술한다.
직교 변환·양자화부(1208 및 1408)는, 데이터 포맷 변환부(1206 및 1406)로부터의 데이터 포맷 변환 후의 매크로 블록에 대해, 직교 변환, 양자화, 및 스케일링을 각각 실행한다. 이 직교 변환 및 양자화의 타입에 관해서는, 데이터 포맷 변환부(1206 및 1406)로부터 출력되는 매크로 블록의 데이터 포맷 타입에 응하여, 동적으로 변경되어도 좋다. 예를 들면, 잔차로 정의된 영역에 관해서는, 관련 기술에서 이용되는 것과 같은 수법을 적용하는 한편으로, 잉여로 정의된 영역에 관해서는, 직교 변환, 양자화, 및 스케일링에 관한 파라미터를 더욱 조정하여도 좋다.
[J. 데이터 포맷 역변환부(1214 및 1414)에서의 처리]
다음에, 본 발명의 실시의 형태에 관한 데이터 포맷 역변환부(1214 및 1414)에서의 처리에 관해 상세히 기술한다. 또한, 데이터 포맷 역변환부(1214 및 1414)에서의 처리는 실질적으로 동일하기 때문에, 설명의 편의상, 이하에서는, 데이터 포맷 역변환부(1214)에 관해 설명한다.
(j1 : 데이터 포맷 역변환부(1214)에서의 처리 개요)
상술한 바와 같이, 데이터 포맷 변환부(1206)로부터 출력되는 데이터 포맷 변환 후의 매크로 블록에는 복수의 타입이 있기 때문에, 사이드 정보에 포함되는 데이터 포맷 타입에 의거하여, 데이터 포맷 역변환의 순서가 선택된다.
데이터 포맷 역변환부(1214)는, 잔차로 정의된 영역에 관해서는, 동일 프레임에서의, 움직임 보상 매크로 블록(인트라 프레임 예측부(1218)에서 생성된 인트라 매크로 블록, 또는, 움직임 보상부(1220)에서 생성된 인터 매크로 블록)을 가산함으로써, 오리지널 매크로 블록을 복원한다.
한편, 잉여로 정의된 영역에 관해서는, 움직임 보상 매크로 블록도 사이드 정보로서 이용된다. 보다 구체적으로는, 잉여로부터 본래의 화소치를 추정하기 위한 역모듈로 연산에 이용하는 계수(분모)를 결정하기 위해, 움직임 보상 매크로 블록에 관한 의사 구배 매크로 블록, 또는 그것에 유사한 정보를 갖는 매크로 블록이 생성된다.
상술한 바와 같이, 데이터 포맷 변환 후의 매크로 블록으로서는, 화소 단위로 잉여와 잔차를 조합하는 제1 데이터 포맷, 및, 매크로 블록 단위로 잉여와 잔차를 조합하는 제2 데이터 포맷이 존재할 수 있는데, 어느 매크로 블록에 대해서도, 기본적으로는 같은 데이터 포맷 역변환(복원 처리)이 적용된다. 또한, 이하의 설명에서, 잔차의 산출에 관한 처리를 제외함으로써, 잉여만으로 정의된 데이터 포맷 변환 후의 매크로 블록에 대한 데이터 포맷 역변환(복원 처리)를 실현할 수 있음은 자명하다.
(j2 : 데이터 포맷 역변환부(1214)의 기능 구성)
도 12는, 본 발명의 실시의 형태에 관한 데이터 포맷 역변환부(1214)의 기능 블록도이다. 도 12를 참조하면, 데이터 포맷 역변환부(1214)는, 처리 선택부(1290)와, 가산부(1292)와, 구배 화상 생성부(1270)와, 계수 선택부(1272)와, Lookup 테이블(1274)과, 역모듈로 연산부(1298)와, 합성부(1294)를 포함한다. 또한, 도 9에 도시하는 데이터 포맷 변환부(1206)를 구성하는 컴포넌트와 같은 처리를 실행한 컴포넌트에 관해서는, 같은 참조 부호를 붙이고 있다.
처리 선택부(1290)는, 사이드 정보의 일부인 플래그(flag1) 및/또는 플래그(flag2)에 의거하여, (역직교 변환·스케일링부(1212)에 의해 복원된) 데이터 포맷 변환 후의 매크로 블록에 관한 데이터 포맷 타입을 판단함과 함께, 잉여 및 잔차의 각각에 의해 정의되어 있는 영역(화소/매크로 블록)을 특정한다. 그리고, 처리 선택부(1290)는, 잔차에 의해 정의되어 있는 영역에 포함되는 화소치를 가산부(1292)에 출력함과 함께, 잉여에 의해 정의되어 있는 영역에 포함되는 화소치를 역모듈로 연산부(1298)에 출력한다.
가산부(1292)는, 처리 선택부(1290)로부터 화소치가 출력된 화소의 화소 위치에 대응하는 움직임 보상 매크로 블록에서의 화소치를, 출력된 화소치에 가산한다. 이 가산 처리에 의해, 오리지널 매크로 블록의 대응하는 화소치가 복원된다. 가산부(1292)는, 이 산출 결과를 합성부(1294)에 출력한다.
한편, 역모듈로 연산부(1298)는, 처리 선택부(1290)로부터 출력된 화소치(잉여)와, 그 잉여를 산출할 때에 이용된 계수(D)로부터, 오리지널 매크로 블록의 대응하는 화소치를 역모듈로 연산에 의해 추정한다. 이 역모듈로 연산에 필요한 계수(D)는, 데이터 포맷 변환부(1206)에서의 잉여의 산출 처리와 같은 처리에 따라 결정된다. 즉, 구배 화상 생성부(1270)가 움직임 보상 매크로 블록에 관한 의사 구배 매크로 블록을 생성하고, 계수 선택부(1272)가 생성된 의사 구배 매크로 블록의 각 화소의 화소치(구배 강도)에 의거하여, Lookup 테이블(1274)을 참조함으로써, 각 화소에 관한 계수(D)를 결정한다. 이 구배 화상 생성부(1270), 계수 선택부(1272), 및 Lookup 테이블(1274)에 관한 처리는, 도 9를 참조하여 설명하였기 때문에, 상세한 설명은 반복하지 않는다.
역모듈로 연산부(1298)는, 각 화소에 관해 선택된 계수(D) 및 잉여, 및 움직임 보상 매크로 블록의 대응하는 화소치(SI)를 이용하여, 역모듈로 연산을 행한다. 보다 구체적으로는, 역모듈로 연산부(1298)는, 오리지널 매크로 블록의 대응하는 화소치에 관한 후보치(C(q'))의 리스트를 C(q')=q'×D+Remainder(단, q'≥0, C(q')<256)에 따라 산출하고, 이 산출된 후보치(C(q')) 중, 움직임 보상 매크로 블록의 대응하는 화소치(SI)에 대한 차가 가장 작은 것을, 오리지널 매크로 블록의 대응하는 화소치로서 결정한다.
예를 들면, 계수(D)=8, 잉여(m)=3, 움직임 보상 매크로 블록의 대응하는 화소치(SI)=8인 경우를 생각하면, 후보치(C(q'))로서는, 이하와 같이 된다.
후보치(C(0))=0×8+3=3 (SI와의 차=5)
후보치(C(1))=1×8+3=11 (SI와의 차=3)
후보치(C(2))=2×8+3=19 (SI와의 차=11)
이들의 후보치(C(q')) 중, 움직임 보상 매크로 블록의 대응하는 화소치(SI)와의 차가 가장 작아지는 후보치(C(1))가 선택되어, 오리지널 매크로 블록의 대응하는 화소치는 「11」로 결정된다. 이와 같이 하여, 오리지널 매크로 블록의 각 화소의 화소치가 컬러 컴포넌트별로 각각 결정된다. 이 산출된 화소치가 합성부(1294)에 출력된다. 합성부(1294)는, 화소마다 입력되는 잉여 또는 잔차를 결합하여, 오리지널 매크로 블록(Original MB)을 출력한다.
[K. 디코더군의 기능 구성]
다음에, 본 발명의 실시의 형태에 관한 인코딩/디코딩 시스템을 구성하는 디코더군의 기능 구성에 관해 설명한다. 도 13은, 본 발명의 실시의 형태에 관한 디코더군의 기능 블록도이다. 도 13을 참조하면, 본 발명의 실시의 형태에 관한 디코딩에서는, 다시점 영상 및 대응하는 다시점 깊이 정보가 인코딩된 비트 스트림을 처리하기 때문에, 디코더(210)는, 다시점 영상을 디코딩하고, 디코더(230)는, 다시점 깊이 정보를 디코딩한다. 디코더(210 및 230)는, 서로 정보를 공유하면서 디코딩을 행한다. 기본적인 구성은, 디코더(210)와 디코더(230)와의 사이에서 공통되어 있다.
다시점 영상을 디코딩하기 위한 디코더(210)의 기능 블록도이다. 도 13을 참조하면, 디코더(210)는, 입력 버퍼(2102)와, 엔트로피 복호부(2104)와, 역직교 변환·스케일링부(2112)와, 데이터 포맷 역변환부(2114)와, 디블록 필터(2116)와, 인트라 프레임 예측부(2118)와, 움직임 보상부(2120)와, 전환부(2122)와, 제어부(2130)와, 출력 버퍼(2142)를 포함한다.
편, 다시점 깊이 정보를 디코딩하기 위한 디코더(230)는, 입력 버퍼(2302)와, 엔트로피 복호부(2304)와, 역직교 변환·스케일링부(2312)와, 데이터 포맷 역변환부(2314)와, 디블록 필터(2316)와, 인트라 프레임 예측부(2318)와, 움직임 보상부(2320)와, 전환부(2322)와, 제어부(2330)와, 출력 버퍼(2342)를 포함한다.
개략하면, 디코더(210)는, 도 5에 도시하는 디코더(910)에 비교하여, 잔차 화상과 먼저 산출되어 있는 예측 화상(보간 정보)를 가산하는 가산부(9114)에 대신하여 데이터 포맷 역변환부(2114)가 마련되어 있는 점이 주로 다르다. 마찬가지로, 디코더(230)는, 도 5에 도시하는 디코더(930)에 비교하여, 잔차 화상과 먼저 산출되어 있는 예측 화상(보간 정보)를 가산하는 가산부(9314)에 대신하여 데이터 포맷 역변환부(2314)가 마련되어 있는 점이 주로 다르다. 단, 이 구조의 변경에 수반하여, 제어부(2130)의 동작도 제어부(9130)와는 다른 것으로 되어 있다. 단, 이들의 구조의 변경에 수반하여, 제어부(2130 및 2330)의 동작도 제어부(9130 및 9330)와는 각각 다른 것으로 되어 있다.
또한, 디코더(210)와 디코더(230)와의 정보 공유에 수반하여, 움직임 보상부(2120 및 2320)에서의 처리도 움직임 보상부(9120 및 9320)와는 각각 다른 것으로 되어 있다.
한편, 입력 버퍼(2102 및 2302), 엔트로피 복호부(2104 및 2304), 역직교 변환·스케일링부(2112 및 2312), 디블록 필터(2116 및 2316), 인트라 프레임 예측부(2118 및 2318), 움직임 보상부(2120 및 2320), 전환부(2122 및 2322), 및, 출력 버퍼(2142 및 2342)의 기능은, 도 5에 도시하는 입력 버퍼(9102 및 9302), 엔트로피 복호부(9104 및 9304), 역직교 변환·스케일링부(9112 및 9312), 디블록 필터(9116 및 9316), 인트라 프레임 예측부(9118 및 9318), 움직임 보상부(9120 및 9320), 전환부(9122 및 9322), 및, 출력 버퍼(9142 및 9342)에 각각 유사한 것으로 되어 있다.
[L. 디코더(210 및 230)에서의 처리 순서]
다음에, 디코더(210 및 230)에서의 처리 순서에 관해 설명한다. 도 13을 참조하면, 영상을 인코딩한 비트 스트림이 입력 버퍼(2102)에 주어지고, 대응하는 깊이 정보를 인코딩한 비트 스트림이 입력 버퍼(2302)에 주어진다. 본 발명의 실시의 형태는, 다시점 영상과 대응하는 다시점 깊이 정보로 이루어지는 MVD를 인코딩한 비트 스트림에 적합하고 있지만, 단일한 카메라(10)에 의해 촬상된 단시점 영상 및 대응하는 깊이 정보를 인코딩한 비트 스트림에 대해서도 적용 가능하다.
입력 버퍼(2102)는, 영상을 인코딩한 비트 스트림을 일시적으로 격납한다. 마찬가지로, 입력 버퍼(2302)는, 깊이 신호를 인코딩한 비트 스트림을 일시적으로 격납한다.
엔트로피 복호부(2104)는, 입력 버퍼(2102)로부터의 비트 스트림에 대해 엔트로피 복호를 행하고, 그 결과로서, 움직임 데이터, 양자화 후의 변환 계수, 및, 제어 데이터 및 부가 정보를 출력한다. 움직임 데이터는, 움직임 보상부(2120)에 주어진다. 마찬가지로, 엔트로피 복호부(2304)는, 입력 버퍼(2302)로부터의 비트 스트림에 대해 엔트로피 복호를 행하고, 그 결과로서, 움직임 데이터, 양자화 후의 변환 계수, 및, 제어 데이터 및 부가 정보를 출력한다. 움직임 데이터는, 움직임 보상부(2320)에 주어진다.
역직교 변환·스케일링부(2112 및 2312)는, 엔트로피 복호부(2104 및 2304)에서 각각 복원된 양자화 후의 변환 계수에 대해, 역직교 변환(전형적으로는, 이산 푸리에 역변환) 및 스케일링을 각각 실행한다. 이들의 처리에 의해, 데이터 포맷 변환 후의 매크로 블록이 복원된다.
데이터 포맷 역변환부(2114)에 의해, 데이터 포맷 변환 후의 매크로 블록에 대해, 데이터 포맷 역변환이 실행됨과 함께, 디블록 필터(2116)가 그 결과에 대해, 블록 노이즈의 발생을 억제하기 위해 블록 경계를 평활화한다. 이들의 처리에 의해, 오리지널 영상이 복원된다. 마찬가지로, 데이터 포맷 역변환부(2314)에 의해, 데이터 포맷 변환 후의 매크로 블록에 대해, 데이터 포맷 역변환이 실행됨과 함께, 디블록 필터(2316)가 그 결과에 대해, 블록 노이즈의 발생을 억제하기 위해 블록 경계를 평활화한다. 이들의 처리에 의해, 오리지널의 깊이 정보가 복원된다.
인트라 프레임 예측부(2118 및 2318)는, 인접하는 매크로 블록에 의거하여 예측 화상을 생성한다.
디코더(210) 및 디코더(230)와의 사이에는, 어떤 타입의 정보가 공유되어 있는지를 서로 나타내는 커넥션이 마련되어 있다.
디코더(210)의 움직임 보상부(2120)는, 비트 스트림으로부터 복호된 영상에 관한 움직임 데이터를 디코더(230)의 움직임 보상부(2320)와 공유한다. 마찬가지로, 디코더(230)의 움직임 보상부(2320)는, 비트 스트림으로부터 복호된 영상에 관한 움직임 데이터를 디코더(210)의 움직임 보상부(2120)와 공유한다. 이들의 다른 디코더로부터의 움직임 데이터는, 움직임 보상부(2120 및 2320)의 각각에서의 움직임 데이터의 산출에 이용된다. 보다 구체적으로는, 움직임 보상부(2120)는, 인터 프레임 예측(프레임 사이 예측)를 이용하여, 예측 화상을 생성한다. 보다 구체적으로는, 움직임 보상부(2120 및 2320)의 각각은, 복원된 오리지널 매크로 블록과, 복원된 영상 및 깊이 정보의 각각에 관한 움직임 데이터에 의거하여, 예측 화상을 생성한다.
인트라 프레임 예측부(2118) 및 움직임 보상부(2120)의 각각에서 생성된 예측 화상은, 전환부(2122)에 의해 어느 한쪽이 적절히 선택되어, 데이터 포맷 역변환부(2114)에 주어진다. 마찬가지로, 인트라 프레임 예측부(2318) 및 움직임 보상부(2320)의 각각에서 생성된 예측 화상은, 전환부(2322)에 의해 어느 한쪽이 적절히 선택되어, 데이터 포맷 역변환부(2314)에 주어진다.
제어부(2130)는, 엔트로피 복호부(2104)에서 복원된 제어 데이터 및 파라미터에 의거하여, 역직교 변환·스케일링부(2112), 데이터 포맷 역변환부(2114) 및 전환부(2122)에서의 처리를 제어한다. 마찬가지로, 제어부(2330)는, 엔트로피 복호부(2304)에서 복원된 제어 데이터 및 파라미터에 의거하여, 역직교 변환·스케일링부(2312), 데이터 포맷 역변환부(2314) 및 전환부(2322)에서의 처리를 제어한다.
제어부(2130)와 제어부(2330)는, 상술한 바와 같은 정보를 공유하기 위해, 몇가지의 제어 데이터를 교환한다. 이에 의해, MVD에 대한 통합적인 부호화를 실현할 수 있다.
출력 버퍼(2142)는, 디블록 필터(2116)로부터의 복원된 오리지널 영상을 일시적으로 격납하고, 출력 버퍼(2342)는, 디블록 필터(2316)로부터의 복원된 오리지널의 깊이 정보를 일시적으로 격납한다.
[M. 부가 정보]
다음에, 본 발명의 실시의 형태에 관한 인코딩/디코딩 시스템에서 이용되는 파라미터 및 사이드 정보 등을 포함하는 부가 정보에 관해 상세히 기술한다.
본 발명의 실시의 형태에 관한 인코딩/디코딩 시스템에서는, 인코딩에서, 화소치를 정의하는 정보를 잉여 및 잔차의 사이에서 전환한다. 그 때문에, 이와 같은 제어에 필요한 부가 정보로서, 플래그(flag1 및 flag2), 타입(type), 임계치(TH1 및 TH2), 및, 잉여 연산용 파라미터(a) 등의, 데이터 포맷 변환에 관한 파라미터가 이용된다.
또한, 본 발명의 실시의 형태에서는, 다시점 영상을 처리하는 인코더(120)와 다시점 깊이 정보를 처리하는 인코더(140)가 정보를 공유하면서 인코딩을 실행하기 위해, 이와 같은 정보를 공유한 인코딩에 필요한 부가 정보로서, 플래그(flag3 및 flag4) 등의 파라미터가 이용된다.
(m1 : 데이터 포맷 변환에 관한 파라미터)
플래그(flag1) 및/또는 플래그(flag2)는, 데이터 포맷 변환 후의 매크로 블록에서 잉여로 정의되는 영역을 특정하기 위해 이용된다. 환언하면, 플래그(flag1) 및 플래그(flag2)를 모두 무효화함으로써, 모든 영역이 잔차로 정의되는 것이 특정된다. 이와 같은 모든 영역이 잔차로 정의되는, 즉 데이터 포맷 변환이 실시되지 않는 경우에는, 인코더(120)(보다 구체적으로는, 제어부(1230)) 및 디코더(210)(보다 구체적으로는, 제어부(2130))는, 예를 들면, MPEG-4 AVC와 같은 규격에 따른 동작을 행한다.
한편, 본 발명의 실시의 형태에 관한 데이터 포맷 변환이 실시된 경우에는, 상술한 플래그(flag1, flag2)에 더하여, 타입(type), 임계치(TH1 및 TH2), 및, 잉여 연산용 파라미터(a)가 이용된다.
타입(type)은, 화소 단위로 잉여와 잔차와의 조합하는 제1 데이터 포맷(도 8(a))과, 매크로 블록 단위로 잉여와 잔차와의 조합하는 제2 데이터 포맷(도 8(b))의 어느 것이 선택되어 있는지를 나타내는 파라미터에 상당한다. 타입(type)은, 어느 데이터 포맷이 선택되어 있는지를 특정할 수 있으면 좋기 때문에, 단일 비트(1비트)의 정보가 할당되면 충분하다. 선택된 데이터 포맷에 응하여, 이하와 같은 파라미터가 이용된다.
(i) 제1 데이터 포맷(도 8(a))
≪플래그(flag1)≫
매크로 블록을 구성하는 화소마다 플래그(flag1)가 할당되고, 플래그(flag1)의 각각은, 대응하는 화소가 잉여 및 잔차의 어느 것으로 정의되는 것인지를 나타낸다. 대체의 구성으로서, 잉여 및 잔차의 한쪽에만 플래그(flag1)를 할당하고, 다른쪽에는 플래그(flag1)를 할당하지 않도록 함으로써, 각 화소에 관해, 잉여 및 잔차의 어느 것으로 정의되는 것인지를 특정할 수 있다.
≪임계치(TH1)≫
임계치(TH1)는, 각 매크로 블록을 구성하는 복수의 화소의 각각에 관해, 잉여 및 잔차의 어느 것으로 정의하여야 하는지를 판단하기 위한 판단 기준으로서 이용된다. 즉, 임계치(TH1)는, 잔차 화상(잔차 매크로 블록)을 구성하는 화소 중 그 화소치를 잉여로 정의하여야 할 영역을 특정하기 위한 판단 기준이고, 이 임계치(TH1)는, 부가 정보로서 디코더측에 송신된다.
≪잉여 연산용 파라미터(a)≫
잉여 연산용 파라미터(a)는, 모듈로 연산부(1278)(도 9)에서 이용되는 계수(D)를 결정하기 위한 파라미터이다. 한 예로서, 구배 화상 생성부(1270)(도 9)에서의 생성되는 의사 구배 매크로 블록에 대한 임계치를, 잉여 연산용 파라미터(a)로 하여도 좋다. 즉, 도 10에 도시하는 바와 같은 Lookup 테이블(1274)에서의 각 계조를 결정하는 임계치가 잉여 연산용 파라미터(a)가 된다.
또는, 도 10에 도시하는 바와 같은 Lookup 테이블을 복수 준비하여 두고, 어느 Lookup 테이블을 선택하는 것을 나타내는 식별자를 잉여 연산용 파라미터(a)로 하여도 좋다.
(ⅱ) 제1 데이터 포맷(도 8(b))
≪플래그(flag2)≫
매크로 블록마다 플래그(flag2)가 할당되고, 플래그(flag2)의 각각은, 대응하는 매크로 블록이 잉여 및 잔차의 어느 것으로 정의되는 것인지를 나타낸다. 대체의 구성으로서, 잉여 및 잔차의 한쪽에만 플래그(flag2)를 할당하고, 다른쪽에는 플래그(flag2)를 할당하지 않도록 함으로써, 각 매크로 블록에 관해, 잉여 및 잔차의 어느 것으로 정의되는 것인지를 특정할 수 있다.
≪임계치(TH2)≫
임계치(TH2)는, 매크로 블록의 각각에 관해, 잉여 및 잔차의 어느 것으로 정의하여야 하는지를 판단하기 위한 판단 기준으로서 이용된다. 이 판단에서는, 임계치(TH1)도 이용된다.
≪잉여 연산용 파라미터(a)≫
상술한 제1 데이터 포맷에 대해 이용되는 잉여 연산용 파라미터(a)와 마찬가지로, 의사 구배 매크로 블록에 대한 임계치, 또는, 사용하는 Lookup 테이블을 선택하는 것인지를 나타내는 식별자를 포함한다.
또한, 인코더(120)에서는, 속도 왜곡에 응한 최적화(rate-distortion optimization)가 실행되어도 좋다. 이 때, 잉여 및 잔차의 어느 것으로 정의하여야 하는지를 판단하기 위한 임계치(TH1) 및/또는 임계치(TH2)에 대해서도, 이 최적화의 대상으로 하는 것이 바람직하다. 이 최적화에 의해, 성능을 보다 향상시킬 수 있다.
(m2 : 인코더 사이의 정보 공유에 관한 파라미터)
≪플래그(flag3)(인코더(120 및 140)에서 다른 의미를 갖다)≫
인코더(120 및 140)의 각각은, 각각 자체장치(自裝置)에 관한 처리의 내용을 나타내는 플래그(flag3)를 이용한다.
영상에 대한 인코딩을 실행하는 인코더(120)에서의 플래그(flag3)는, 움직임 추정부(1240)(도 6)에서의 영상(다시점 영상)에 관한 움직임 데이터의 추정에서, 대응하는 깊이 정보(도 6의 분할부(1404)로부터 출력된)가 이용되는지의 여부를 나타낸다.
깊이 정보에 대한 인코딩을 실행하는 인코더(140)에서의 플래그(flag3)는, 움직임 추정부(1440)(도 6)에서의 깊이 정보(다시점 깊이 정보)에 관한 움직임 데이터의 추정에서, 대응하는 영상에 관한 움직임 데이터(도 6의 움직임 추정부(1240)로부터 출력되는)가 이용되는지의 여부를 나타낸다.
≪플래그(flag4)(인코더(120)에서 이용된다)≫
영상에 대한 인코딩을 실행하는 인코더(120)에서의 플래그(flag4)는, 움직임 추정부(1240)(도 6)에서의 영상에 관한 움직임 데이터의 추정에서, 대응하는 깊이 정보가 이용되는 경우(상술한 플래그(flag3)에 의해 나타나다), 어떻게 이용되는지를 나타낸다. 즉, 플래그(flag4)는, (i) 대응하는 깊이 정보 그 자체를 추정된 움직임 데이터로서 출력하는, 및, (ⅱ) 대응하는 깊이 정보를 추정되는 움직임 데이터의 초기치로서 취급하고, 또한, 영상의 정보 등을 이용하여 조정을 한 다음, 최종적인 움직임 데이터로서 출력하는, 중 어느 처리가 실행되는지를 나타낸다.
(m3 : 디코더 사이의 정보 공유에 관한 파라미터)
디코더(210)에서는, 플래그(flag3 및 flag4)가 이용되고, 디코더(230)에서는, 플래그(flag3)가 이용된다.
디코더(210 및 230)에서 취급되는 플래그(flag3)는, 움직임 데이터가 공유되는지의 여부를 나타낸다. 디코더(210)에서 취급되는 플래그(flag4)는, 영상(다시점 영상)에 관한 움직임 데이터의 추정에서, 대응하는 깊이 정보가 이용되는지의 여부를 나타낸다.
[N. 하드웨어 구성]
다음에, 상술한 송신기 및 수신기를 실현하기 위한 하드웨어 구성의 한 예에 관해 설명한다. 도 14는, 송신기로서 기능하는 정보 처리 장치(100)의 하드웨어 구성을 도시하는 모식도이다. 도 15는, 수신기로서 기능하는 정보 처리 장치(200)의 하드웨어 구성을 도시하는 모식도이다.
도 14를 참조하면, 정보 처리 장치(100)는, 프로세서(104)와, 메모리(106)와, 카메라 인터페이스(108)와, 통신 인터페이스(112)와, 하드 디스크(114)와, 입력부(116)와, 표시부(118)를 포함한다. 이들의 각 컴포넌트는, 버스(122)를 통하여 서로 데이터 통신 가능하게 구성되어 있다.
프로세서(104)는, 하드 디스크(114) 등에 격납되어 있는 프로그램을 판독하여 메모리(106)에 전개하여 실행함으로써, 본 발명의 실시의 형태에 관한 인코딩 처리를 실현한다. 메모리(106)는, 프로세서(104)가 처리를 실행하기 위한 워킹 메모리로서 기능한다.
카메라 인터페이스(108)는, 복수의 카메라(10)와 접속되고, 각각의 카메라(10)가 촬상한 화상을 취득한다. 취득된 화상은, 하드 디스크(114)나 메모리(106)에 격납되어도 좋다. 하드 디스크(114)는, 상술한 인코딩 처리를 실현하기 위한 인코딩 프로그램(114a)이나, 카메라 인터페이스(108)로부터 입력된 다시점 영상 데이터(114b) 등을 불휘발적으로 유지하고 있다.
입력부(116)는, 전형적으로는, 마우스나 키보드 등을 포함하고, 유저로부터의 조작을 접수한다. 표시부(118)는, 처리 결과 등을 유저에게 통지한다.
통신 인터페이스(112)는, 무선 전송 장치(102) 등과 접속되고, 프로세서(104)에 의한 처리의 결과 출력되는 데이터를 무선 전송 장치(102)에 출력한다.
도 12를 참조하면, 정보 처리 장치(200)는, 프로세서(204)와, 메모리(206)와, 프로젝터 인터페이스(208)와, 통신 인터페이스(212)와, 하드 디스크(214)와, 입력부(216)와, 표시부(218)를 포함한다. 이들의 각 컴포넌트는, 버스(222)를 통하여 서로 데이터 통신 가능하게 구성되어 있다.
프로세서(204), 메모리(206)와, 입력부(216), 및, 표시부(218)는, 도 11에 도시하는 프로세서(104), 메모리(106)와, 입력부(116), 및, 표시부(118)와 각각 마찬가지이기 때문에, 상세한 설명은 반복하지 않는다.
프로젝터 인터페이스(208)는, 입체 표시 장치(300)와 접속되고, 프로세서(204)에 의해 복원된 다시점 영상 등을 입체 표시 장치(300)에 출력한다.
통신 인터페이스(212)는, 무선 전송 장치(202) 등과 접속되고, 정보 처리 장치(100)로부터 전송되는 비트 스트림을 수신하고, 버스(222)에 출력한다.
하드 디스크(214)는, 디코딩을 실현하기 위한 디코딩 프로그램(214a)과, 복원된 오리지널 화상을 포함하는 화상 데이터(214b)를 불휘발적으로 유지하고 있다.
도 14 및 도 15에 각각 도시하는 정보 처리 장치(100 및 200)의 하드웨어 자체 및 그 동작 원리는 일반적인 것이고, 본 발명의 실시의 형태에 관한 인코딩/디코딩을 실현하기 위한 본질적인 부분은, 하드 디스크 등의 기억 매체에 격납된 인코딩 프로그램(114a)이나 디코딩 프로그램(214a) 등의 소프트웨어(명령 코드)이다. 이와 같은 인코딩 프로그램(114a)이나 디코딩 프로그램(214a)은, 광학 기억 매체, 자기 기억 매체, 반도체 기억 매체라는 기억 매체에 격납되고 유통된다. 이와 같은 프로그램을 격납하는 기억 매체에 대해서도 본원 발명의 범위에 포함될 수 있다.
인코딩 프로그램(114a) 및/또는 디코딩 프로그램(214a)은, OS(Operating System)가 제공하는 모듈을 이용하여 처리를 실행하도록 구성하여도 좋다. 이 경우에는, 인코딩 프로그램(114a) 및/또는 디코딩 프로그램(214a)은, 일부의 모듈을 포함하지 않게 되는데, 이와 같은 경우라도, 본원 발명의 기술적 범위에 포함된다.
정보 처리 장치(100) 및/또는 정보 처리 장치(200)의 전부 또는 일부의 기능을 ASIC(Application Specific Integrated Circuit) 등의 전용의 집적 회로를 이용하여 실현하여도 좋고, FPGA(Field-Programmable Gate Array)나 DSP(Digital Signal Processor) 등의 프로그램 가능한 하드웨어를 이용하여 실현하여도 좋다.
[O. 기타의 실시의 형태]
본 발명의 실시의 형태에서는, 오리지널 매크로 블록으로부터 움직임 보상 매크로 블록(인트라 매크로 블록, 또는, 인터 매크로 블록)을 감한 잔차 매크로 블록에 대해, 임계치가 적용됨으로써, 잉여 및 잔차의 각각으로 정의되는 영역이 결정된다. 이 임계치 및 데이터 포맷 변환에 필요한 다른 파라미터는, 속도 최적화 루프를 이용하여 동적 또는 정적으로 최적화되어도 좋다.
본 발명의 실시의 형태에서는, 잉여를 산출하기 위해 모듈로 연산을 행한다. 이 모듈로 연산에서 분모(법)가 되는 계수(D)는, 대상의 매크로 블록과 동일한 움직임 보상 매크로 블록(또는, 움직임 보상 프레임)의 구배 화상에 의거하여, 결정된다. 이 구배 화상((의사) 구배 매크로 블록, 또는, (의사) 구배 프레임)은, 인트라 매크로 블록(또는, 인트라 프레임), 또는, 인터 매크로 블록(또는, 인터 프레임)으로부터 생성된다. 이 때, 복수의 프레임에 걸치는 매크로 블록 사이에서 구배를 산출하여도 좋다. 즉, 구배 화상은, 시간 영역 및/또는 공간 영역에 걸쳐서 산출되어도 좋다. 이와 같이 산출되는 구배 화상에 응하여, 모듈로 연산에서 이용되는 계수(D)가 결정된다.
본 발명의 실시의 형태에서는, 모듈로 연산에서 이용되는 계수(D)는, 각 영역을 잉여 및 잔차의 어느 것으로 정의하여야 하는지를 판단하기 위한 (의사) 구배 매크로 블록(또는, 구배 프레임)에 적용되는 임계치와 같이 설정하여도 좋다.
상술한 실시의 형태에서는, 매크로 블록 또는 프레임에 관한 데이터 포맷으로서, (1) 잉여만으로 각 영역이 정의되는 데이터 포맷, 및, (2) 잉여와 잔차와의 조합으로 각 영역이 정의되는 데이터 포맷에 관해 설명하였지만, 또 다른 데이터 포맷을 채용할 수도 있다. 그 때문에, 매크로 블록 또는 프레임은, 전부 제로, 잔차와 제로와의 조합, 모두 잔차, 잉여와 제로와의 조합, 모두 잉여, 잉여와 잔차와의 조합, 잉여와 잔차와 제로와의 조합, 이라는 다양한 컴포넌트를 포함할 수 있다.
상술한 실시의 형태에서는, 동화상의 압축 규격의 하나인, MPEG-4 AVC에 적용한 구성례를 나타내었다. 이 구성례에서, 데이터 포맷 변환 후의 데이터 압축의 처리에 관해서는, 규격에 따른 순서로 실행된다. 한편, 데이터 포맷 변환의 처리에 관해서는, 데이터 압축에 관한 파라미터에 따라 최적화된다. 인코딩의 최종 단계에서, 화상/영상/다시점 영상에 대한 임의의 데이터 압축 툴을 적용할 수도 있다.
디코딩 처리(즉, 데이터 복원 처리)에서도, 본 발명의 실시의 형태에 관한 데이터 포맷에 응한 디코더가 이용된다. 예를 들면, 데이터 포맷 타입(type)에 관한 정보가 인코더로부터 디코더에 전송된다. 이와 같은 정보를 부가함에 의해, 종래의 장치 및 기존의 규격과의 호환성을 확보할 수 있다. 잉여와 잔차를 조합하는 데이터 포맷의 데이터가 전송되는 경우에는, 그 비트 스트림에는, 규격상 필요한 파라미터에 더하여, 코딩에 관한 파라미터 및 데이터 포맷에 관한 파라미터가 포함된다.
디코딩에서, 잔차로 정의된 영역에 대해서는, 움직임 보상 매크로 블록/프레임 또는 합성 매크로 블록/프레임에 의거하여 다시 보상하도록 하여도 좋다.
제로가 설정되어 있는 영역에 대해서는, 움직임 보상 매크로 블록/프레임의 대응하는 값이 할당되어도 좋다. 잉여로 정의되는 영역에 관해서는, 상술한 바와 같은 역모듈로 연산에 의해 복원된다.
상술한 실시의 형태에서는, 불가역 압축(비가역 압축)의 인코딩/디코딩 시스템에의 적용례에 관해 설명하였지만, 가역 압축의 인코딩/디코딩 시스템에도 적용 가능하다. 이 경우에는, 도 6에 도시하는 직교 변환·양자화부(1208, 1408) 및 역직교 변환·스케일링부(1212, 1412), 및, 도 13에 도시하는 역직교 변환·스케일링부(2112, 2312) 등이 불필요해진다. 즉, 인코딩에서, 직교 변환이나 양자화라는 데이터 손실이 생길 수 있는 처리는 실행되지 않는다.
본 발명의 실시의 형태에 의하면, 화상의 데이터 압축 처리에서 이용되는, 화상의 데이터 포맷 변환 및 화상 및 깊이 화상의 통합적인 부호화의 방법이 제공된다. 이 방법은, 카메라 열(列) 또는 Depth 카메라에 의해 촬상된 다시점 영상/화상의 열, 또는 임의의 형식의 화상 데이터에 대해, 기존의 규격을 개량한 코딩 툴(화상/영상/다시점 영상에 대한 개량된 데이터 압축 툴)로 데이터 압축하는 공정을 포함한다. 여기서, 데이터 포맷 변환은, 복수의 화소로 이루어지는 블록(매크로 블록) 단위로 실행된다.
여기서, 데이터 포맷 변환의 처리는, 이하의 공정을 포함한다.
(1a) 인터 블록(전방향 예측, 후방향 예측, 및 양방향 예측 중 어느 하나를 이용하여 코딩된 블록), 또는, 인트라 블록, 및 대응하는 위치의 오리지널 블록에 의거하여, 각 화소의 블록 데이터 포맷을 소정의 파라미터의 조(組)에 따라, 잉여, 잔차, 제로의 어느 하나로 변환하는 공정
(1b) 인터 블록, 또는, 인트라 블록, 및 오리지널 블록에 의거하여, 차분 블록, 즉 잔차 블록을 생성하는 공정
(1c) 소정의 파라미터의 조 및 잔차 블록에 의거하여, 그 값을 잉여로 변환하여야 할 것으로 판단된 화소에 관해 플래그를 유효화하는 공정
(1d) 소정의 파라미터의 조 및 잔차 매크로 블록에 의거하여, 그 값을 제로로 하여야 할 것으로 판단된 화소에 관해, 그 값을 제로로 변환하는 공정(이들의 화소는, 잔차가 제로인 화소로서 취급된다)
(1e) 인터 매크로 블록, 또는, 인트라 매크로 블록에 의거하여, 의사 구배 화상을 생성하는 공정
(1f) 당해 의사 구배 화상에 의거하여, 모듈로 연산에 의해 잉여를 결정하기 위한 파라미터를 설정하는 공정
(1g) 오리지널 블록 및 모듈로 연산에 관해 설정된 파라미터의 조에 의거하여, 그 값을 잉여에 변경하여야 할 것으로 판단된 화소에 관해, 잉여로 변환하는 공정
(1h) 화상/영상/다시점 영상에 대한 데이터 압축에 관한 기존의 규격에 유사한 데이터 압축에 관한 처리를, 새로운 데이터 포맷 변환 후의 블록에 대해 실행하는 공정
(1i) 데이터 포맷 변환을 위한 파라미터를 규격에 따른 최적화 처리에 추가하여, 당해 파라미터의 데이터 압축을 실행하는 공정
(1j) 새로운 데이터 포맷의 규격에 따른 데이터 압축 파라미터 및 데이터 포맷 변환을 위한 파라미터에 대해, 기존의 최적화 처리를 이용하여, 그 압축 효율 및 압축 품질을 보다 높게 하기 위한 최적화 처리를 실행하는 공정
다음에, 통합적인 데이터 압축의 처리는, 이하의 공정을 포함한다.
(2a) 화상 부호화를 위한 움직임 데이터를 깊이 정보로 치환하는 공정
(2b) 깊이 정보가 영상 인코더에서의 움직임 추정부에서 추정 결과의 초기치로서 이용되는 경우에, 움직임 데이터를 더욱 조정하여 개선하는 공정
(2c) 영상 인코더에서의 움직임 데이터에 대신하여, 깊이 정보 인코더에서의 움직임 추정 결과를 이용하는 공정
(2d) 깊이 정보 인코더에서의 움직임 데이터에 대신하여, 영상 인코더에서의 움직임 추정 결과를 이용하는 공정
(2e) 공유되는 정보의 타입을 나타내는 대응하는 파라미터를 디코더에 송신하는 공정
다음에, 데이터 포맷 역변환의 처리는, 이하의 공정을 포함한다.
(3a) 화상/영상/다시점 영상에 대한 개량된 데이터 압축 툴을 이용하여 압축된 데이터의 비트 스트림, 각 압축된 블록에 관한 정보, 및, 데이터 포맷 역변환을 위한 대응하는 파라미터를 데이터 복원 툴에 제공하는 공정
(3b) 인터 매크로 블록, 또는, 인트라 매크로 블록, 및 잔차 화소 및 제로 화소에 의거하여, 플래그가 유효화되지 않은 화상에 관해, 잔차로부터 오리지널의 화소치를 복원하는 공정
(3c) 인터 매크로 블록, 또는, 인트라 매크로 블록, 및 플래그에 의해 나타나는 잉여의 화소에 의거하여, 역모듈로 연산을 실행하는 공정(역모듈로 연산의 실행에 있어서, 수신한 비트 스트림으로부터 추출된 모듈로 연산을 위한 대응하는 파라미터가 이용된다)
최후에, 통합적인 데이터 복원의 처리는, 이하의 공정을 포함한다.
(4a) 영상 인코더 및 깊이 정보 인코더의 사이에서 공유되어 있는 움직임 데이터의 타입에 의존하여, 각각의 인코더에 대해, 복합 처리를 위한 움직임 데이터를 송신하는 공정
(4b) 비트 스트림에 포함되는, 디코딩을 위한 제어 데이터를 이용하여 공유 정보의 타입을 식별하는 공정
상술한 설명에서는, 데이터 포맷 변환 및 데이터 포맷 역변환을 매크로 블록 단위로 실행하는 경우에 관해 설명하였지만, 화상 전체에 적용할 수 있음은 말할 것도 없다. 구체적으로는, 오리지널 화상 전체에 관한 잔차 화상을 먼저 생성하고, 당해 생성한 잔차 화상에 대해, 상술한 처리를 화상 단위로 실행하여도 좋다.
[P. 이점]
본 발명의 실시의 형태에 관한 인코딩/디코딩 시스템은, 기존의 압축 규격과의 호환성을 유지할 수 있기 때문에, 본 발명의 실시의 형태에 관한 새로운 데이터 포맷 변환(인코딩)의 조립이 용이화할 수 있다. 상술한 바와 같이, 본 발명의 실시의 형태에 관한 인코딩/디코딩 시스템에서는, 잉여의 정보를 이용하지 않는다면, 기존의 규격에서의 처리와 같은 처리를 실현할 수도 있다. 그 때문에, 호환성을 유지할 수 있다.
본 발명의 실시의 형태에 관한 인코딩/디코딩 시스템은, 예를 들면, 분산 소스 코딩(distributed source coding), 분산 영상 부호화(distributed video coding), 화상/영상/다시점 영상에 대한 데이터 압축이라는, 각종의 화상 시스템에 적용 가능하다.
본 발명의 실시의 형태에 관한 인코딩/디코딩 시스템에 의하면, 화상/영상/다시점 영상에 대한 데이터 압축에 관한 기존의 규격의 틀 내에서, 새로운 데이터 포맷을 이용함으로써, 데이터 압축 효율을 보다 높일 수 있다.
본 발명의 실시의 형태에 관한 인코딩/디코딩 시스템의 실장에 있어서, 기존의 규격에 따른 화상/영상/다시점 영상에 대한 데이터 압축 툴에 대한 변경은 약간으로 끝난다. 또한, 본 발명의 실시의 형태에 관한 인코딩/디코딩 시스템을 실장한, 화상/영상/다시점 영상에 대한 데이터 압축 툴은, 본 발명의 실시의 형태에 관한 처리를 무효화함으로써, 기존의 규격과의 호환성을 여전히 유지할 수 있다.
본 발명의 실시의 형태에 관한 인코딩/디코딩 시스템은, 다시점 영상 및 다시점 깊이 정보를 통합적으로 부호화한다. 특히, 영상에 관한 움직임 데이터 및 깊이 정보를 인코더(120)와 인코더(140)와의 사이에서 공유함으로써, MVD에 대한 통합적인 부호화를 실현할 수 있고, 이에 의해, MVD를 데이터 압축 후의 토탈의 데이터 사이즈를 공유되는 정보의 사이즈와 같은 정도 이상으로 저감할 수 있다.
금회 개시된 실시의 형태는, 모든 점에서 예시이고 제한적인 것이 아니라고 생각되어야 한다. 본 발명의 범위는, 상기한 실시의 형태의 설명이 아니라 청구의 범위에 의해 나타나고, 청구의 범위와 균등한 의미 및 범위 내에서의 모든 변경이 포함되는 것이 의도된다.
1 : 입체 영상 재생 시스템
2 : 피사체
10 : 카메라
100, 200 : 정보 처리 장치
102, 202 : 무선 전송 장치
104, 204 : 프로세서
106, 206 : 메모리
108 : 카메라 인터페이스
110 : 프리 프로세서
112, 212 : 통신 인터페이스
114, 214 : 하드 디스크
114a : 인코딩 프로그램
116, 216 : 입력부
118, 218 : 표시부
120, 140, 820, 840 : 인코더
122, 222 : 버스
208 : 프로젝터 인터페이스
210, 230, 910, 930 : 디코더
214a : 디코딩 프로그램
214b : 화상 데이터
240 : 포스트 프로세서
300 : 입체 표시 장치
302 : 프로젝터 어레이
310 : 표시 스크린
312 : 확산 필름
314 : 집광 렌즈
1202, 1402, 2102, 2302, 8202, 8402, 9102 : 입력 버퍼
1204, 1404, 8204, 8404 : 분할부
1206, 1406 : 데이터 포맷 변환부
1208, 1408, 8208, 8408 : 직교 변환·양자화부
1210, 1410, 8210, 8410 : 로컬 디코더
1212, 1412, 2112, 2312, 8212, 8412, 9112 : 역직교 변환·스케일링부
1214, 1414, 2114, 2314 : 데이터 포맷 역변환부
1216, 1416, 2116, 2316, 8216, 8416, 9116 : 디블록 필터
1218, 1418, 2118, 2318, 8218, 8418, 9118 : 인트라 프레임 예측부
1220, 1420, 2120, 2320, 8220, 8420, 9120 : 움직임 보상부
1222, 1269, 1422, 2122, 2322, 8222, 8422, 9122 : 전환부
1230, 1430, 2130, 2330, 8230, 8430, 9130 : 제어부
1240, 1440, 8240, 8440 : 움직임 추정부
1242, 1442, 2142, 2342, 8242, 8442, 9142 : 출력 버퍼
1250, 1450, 8250, 8450 : 엔트로피 부호화부
1260, 8206, 8406 : 감산부
1262 : 비교부
1264 : 마스크 생성부
1265 : 적산부
1266, 1290 : 처리 선택부
1267 : 평가부
1270 : 구배 화상 생성부
1272 : 계수 선택부
1274 : Lookup 테이블
1278 : 모듈로 연산부
1280, 1294 : 합성부
1292, 8214, 8414, 9114, 9314 : 가산부
1298 : 역모듈로 연산부
2104, 2304, 9104 : 엔트로피 복호부

Claims (7)

  1. 복수의 입력 화상을 인코딩하는 방법으로서,
    피사체의 제1의 정보를 포함하는 복수의 제1의 입력 화상과, 상기 복수의 제1의 입력 화상에 각각 대응하는, 상기 피사체의 상기 제1의 정보와는 다른 제2의 정보를 포함하는 복수의 제2의 입력 화상을 취득하는 스텝과,
    상기 제1의 입력 화상에 관해, 다른 제1의 입력 화상 및 상기 제2의 입력 화상의 적어도 한쪽에 포함되는 정보로부터 제1의 예측 화상을 산출하는 스텝과,
    상기 제1의 입력 화상과 대응하는 상기 제1의 예측 화상과의 차분으로부터 제1의 잔차 화상을 생성하는 스텝과,
    상기 제1의 잔차 화상의 화소치에 의거하여, 상기 제1의 잔차 화상을 구성하는 화소 중 그 화소치를 잉여로 정의하여야 할 영역을 특정하는 스텝과,
    상기 제1의 잔차 화상의 상기 잉여로 정의하여야 하게 된 영역에 포함되는 화소치를 잉여로 변환하는 스텝과,
    상기 제2의 입력 화상에 관해, 다른 제2의 입력 화상 및 상기 제1의 입력 화상의 적어도 한쪽에 포함되는 정보로부터 제2의 예측 화상을 산출하는 스텝과,
    상기 제2의 입력 화상과 대응하는 상기 제2의 예측 화상과의 차분으로부터 제2의 잔차 화상을 생성하는 스텝과,
    상기 제2의 잔차 화상의 화소치에 의거하여, 상기 제2의 잔차 화상을 구성하는 화소 중 그 화소치를 잉여로 정의하여야 할 영역을 특정하는 스텝과,
    상기 제2의 잔차 화상의 상기 잉여로 정의하여야 하게 된 영역에 포함되는 화소치를 잉여로 변환하는 스텝과,
    변환 후의 제1의 잔차 화상과, 변환 후의 제2의 잔차 화상과, 상기 제1의 잔차 화상 및 상기 제2의 잔차 화상의 각각에서의 상기 잉여로 정의하여야 할 영역을 특정하는 부가 정보를 인코딩하는 스텝을 포함하는 것을 특징으로 하는 방법.
  2. 제1항에 있어서,
    상기 잉여로 변환하는 스텝은,
    상기 잉여로 정의하여야 할 영역에 관한 화소치에 대해 모듈로 연산을 실행하는 스텝과,
    상기 예측 화상의 구배 정보를 취득하는 스텝과,
    구배 강도와 모듈로 연산의 법이 되는 값과의 미리 정하여진 대응 관계를 참조하여, 취득한 상기 구배 정보에 의거하여 상기 모듈로 연산의 법이 되는 값을 결정하는 스텝을 포함하는 것을 특징으로 하는 방법.
  3. 제1항 또는 제2항에 있어서,
    상기 제1의 예측 화상을 산출하는 스텝은, 산출 대상의 제1의 입력 화상에 대응하는 제2의 입력 화상과, 선행하는 하나 이상의 제1의 입력 화상을 이용하여, 상기 제1의 예측 화상을 산출하는 스텝을 포함하는 것을 특징으로 하는 방법.
  4. 제1항 내지 제3항 중 어느 한 항에 있어서,
    상기 제2의 예측 화상을 산출하는 스텝은, 산출 대상의 제2의 입력 화상에 대응하는 제1의 입력 화상에 관한 움직임 데이터를 이용하여, 상기 제2의 예측 화상을 산출하는 스텝을 포함하고,
    상기 제1의 입력 화상에 관한 움직임 데이터는, 선행하는 제1의 입력 화상과 산출 대상의 제1의 입력 화상 사이의 변화 성분을 나타내는 것을 특징으로 하는 방법.
  5. 제1항 내지 제3항 중 어느 한 항에 있어서,
    상기 제2의 예측 화상을 산출하는 스텝은, 산출 대상의 제2의 입력 화상과, 선행하는 하나 이상의 제2의 입력 화상을 이용하여, 상기 제2의 예측 화상을 산출하는 스텝을 포함하는 것을 특징으로 하는 방법.
  6. 복수의 입력 화상을 인코딩하는 프로그램을 격납하는 기억 매체로서, 당해 프로그램은, 컴퓨터에,
    피사체의 제1의 정보를 포함하는 복수의 제1의 입력 화상과, 상기 복수의 제1의 입력 화상에 각각 대응하는, 상기 피사체의 상기 제1의 정보와는 다른 제2의 정보를 포함하는 복수의 제2의 입력 화상을 취득하는 스텝과,
    상기 제1의 입력 화상에 관해, 다른 제1의 입력 화상 및 상기 제2의 입력 화상의 적어도 한쪽에 포함되는 정보로부터 제1의 예측 화상을 산출하는 스텝과,
    상기 제1의 입력 화상과 대응하는 상기 제1의 예측 화상과의 차분으로부터 제1의 잔차 화상을 생성하는 스텝과,
    상기 제1의 잔차 화상의 화소치에 의거하여, 상기 제1의 잔차 화상을 구성하는 화소 중 그 화소치를 잉여로 정의하여야 할 영역을 특정하는 스텝과,
    상기 제1의 잔차 화상의 상기 잉여로 정의하여야 하게 된 영역에 포함되는 화소치를 잉여로 변환하는 스텝과,
    상기 제2의 입력 화상에 관해, 다른 제2의 입력 화상 및 상기 제1의 입력 화상의 적어도 한쪽에 포함되는 정보로부터 제2의 예측 화상을 산출하는 스텝과,
    상기 제2의 입력 화상과 대응하는 상기 제2의 예측 화상과의 차분으로부터 제2의 잔차 화상을 생성하는 스텝과,
    상기 제2의 잔차 화상의 화소치에 의거하여, 상기 제2의 잔차 화상을 구성하는 화소 중 그 화소치를 잉여로 정의하여야 할 영역을 특정하는 스텝과,
    상기 제2의 잔차 화상의 상기 잉여로 정의하여야 하게 된 영역에 포함되는 화소치를 잉여로 변환하는 스텝과,
    변환 후의 제1의 잔차 화상과, 변환 후의 제2의 잔차 화상과, 상기 제1의 잔차 화상 및 상기 제2의 잔차 화상의 각각에서의 상기 잉여로 정의하여야 할 영역을 특정하는 부가 정보를 인코딩하는 스텝을 실행시키는 것을 특징으로 하는 기억 매체.
  7. 복수의 입력 화상을 인코딩하는 장치로서,
    피사체의 제1의 정보를 포함하는 복수의 제1의 입력 화상과, 상기 복수의 제1의 입력 화상에 각각 대응하는, 상기 피사체의 상기 제1의 정보와는 다른 제2의 정보를 포함하는 복수의 제2의 입력 화상을 취득하는 수단과,
    상기 제1의 입력 화상에 관해, 다른 제1의 입력 화상 및 상기 제2의 입력 화상의 적어도 한쪽에 포함되는 정보로부터 제1의 예측 화상을 산출하는 수단과,
    상기 제1의 입력 화상과 대응하는 상기 제1의 예측 화상과의 차분으로부터 제1의 잔차 화상을 생성하는 수단과,
    상기 제1의 잔차 화상의 화소치에 의거하여, 상기 제1의 잔차 화상을 구성하는 화소 중 그 화소치를 잉여로 정의하여야 할 영역을 특정하는 수단과,
    상기 제1의 잔차 화상의 상기 잉여로 정의하여야 하게 된 영역에 포함되는 화소치를 잉여로 변환하는 수단과,
    상기 제2의 입력 화상에 관해, 다른 제2의 입력 화상 및 상기 제1의 입력 화상의 적어도 한쪽에 포함되는 정보로부터 제2의 예측 화상을 산출하는 수단과,
    상기 제2의 입력 화상과 대응하는 상기 제2의 예측 화상과의 차분으로부터 제2의 잔차 화상을 생성하는 수단과,
    상기 제2의 잔차 화상의 화소치에 의거하여, 상기 제2의 잔차 화상을 구성하는 화소 중 그 화소치를 잉여로 정의하여야 할 영역을 특정하는 수단과,
    상기 제2의 잔차 화상의 상기 잉여로 정의하여야 하게 된 영역에 포함되는 화소치를 잉여로 변환하는 수단과,
    변환 후의 제1의 잔차 화상과, 변환 후의 제2의 잔차 화상과, 상기 제1의 잔차 화상 및 상기 제2의 잔차 화상의 각각에서의 상기 잉여로 정의하여야 할 영역을 특정하는 부가 정보를 인코딩하는 수단을 실행시키는 것을 특징으로 하는 장치.
KR1020157030610A 2013-03-27 2014-03-12 복수의 입력 화상을 인코딩하는 방법, 프로그램을 격납하는 기억 매체 및 장치 KR20150135457A (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP2013066314A JP2014192702A (ja) 2013-03-27 2013-03-27 複数の入力画像をエンコーディングする方法、プログラムおよび装置
JPJP-P-2013-066314 2013-03-27
PCT/JP2014/056484 WO2014156648A1 (ja) 2013-03-27 2014-03-12 複数の入力画像をエンコーディングする方法、プログラムを格納する記憶媒体および装置

Publications (1)

Publication Number Publication Date
KR20150135457A true KR20150135457A (ko) 2015-12-02

Family

ID=51623631

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020157030610A KR20150135457A (ko) 2013-03-27 2014-03-12 복수의 입력 화상을 인코딩하는 방법, 프로그램을 격납하는 기억 매체 및 장치

Country Status (6)

Country Link
US (1) US20160065958A1 (ko)
EP (1) EP2981083A1 (ko)
JP (1) JP2014192702A (ko)
KR (1) KR20150135457A (ko)
CN (1) CN105103546A (ko)
WO (1) WO2014156648A1 (ko)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2014082541A (ja) * 2012-10-12 2014-05-08 National Institute Of Information & Communication Technology 互いに類似した情報を含む複数画像のデータサイズを低減する方法、プログラムおよび装置
CN110692242B (zh) * 2017-06-05 2023-10-03 松下电器(美国)知识产权公司 编码装置、解码装置、编码方法和解码方法
CN111771377A (zh) * 2018-01-30 2020-10-13 松下电器(美国)知识产权公司 编码装置、解码装置、编码方法和解码方法
CN111989923A (zh) 2018-01-30 2020-11-24 松下电器(美国)知识产权公司 编码装置、解码装置、编码方法和解码方法
CN110493602A (zh) * 2019-08-19 2019-11-22 张紫薇 视频编码快速运动搜索方法及系统
US20210127125A1 (en) * 2019-10-23 2021-04-29 Facebook Technologies, Llc Reducing size and power consumption for frame buffers using lossy compression

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2765268B2 (ja) * 1991-05-21 1998-06-11 松下電器産業株式会社 高能率符号化方法と高能率符号の復号方法
US5768438A (en) * 1994-10-19 1998-06-16 Matsushita Electric Industrial Co., Ltd. Image encoding/decoding device
CN1258925C (zh) * 2003-06-27 2006-06-07 中国科学院计算技术研究所 多视角视频编解码预测补偿方法及装置
WO2007035054A1 (en) * 2005-09-22 2007-03-29 Samsung Electronics Co., Ltd. Method of estimating disparity vector, and method and apparatus for encoding and decoding multi-view moving picture using the disparity vector estimation method
US7706619B2 (en) * 2005-11-30 2010-04-27 Brother Kogyo Kabushiki Kaisha Image processing device that produces high-quality reduced image at fast processing speed
KR101059178B1 (ko) * 2006-12-28 2011-08-25 니폰덴신뎅와 가부시키가이샤 영상 부호화 방법 및 복호방법, 그들의 장치, 그들의 프로그램을 기록한 기억매체
KR100801968B1 (ko) * 2007-02-06 2008-02-12 광주과학기술원 변위를 측정하는 방법, 중간화면 합성방법과 이를 이용한다시점 비디오 인코딩 방법, 디코딩 방법, 및 인코더와디코더
CN101919250B (zh) * 2008-01-21 2012-11-21 艾利森电话股份有限公司 压缩多个像素块的方法和压缩器、以及对压缩像素块进行解压的方法和解压器
WO2009092455A2 (en) * 2008-01-21 2009-07-30 Telefonaktiebolaget Lm Ericsson (Publ) Prediction-based image processing
JP5243612B2 (ja) * 2008-10-02 2013-07-24 フラウンホッファー−ゲゼルシャフト ツァ フェルダールング デァ アンゲヴァンテン フォアシュンク エー.ファオ 中間画像合成およびマルチビューデータ信号抽出
US8694573B2 (en) * 2009-10-26 2014-04-08 Jadavpur University Method and system for determining a quotient value
JP5660361B2 (ja) * 2010-03-26 2015-01-28 ソニー株式会社 画像処理装置および方法、並びにプログラム
AU2011201336B2 (en) * 2011-03-23 2013-09-05 Canon Kabushiki Kaisha Modulo embedding of video parameters
US9723315B2 (en) * 2011-07-01 2017-08-01 Apple Inc. Frame encoding selection based on frame similarities and visual quality and interests

Also Published As

Publication number Publication date
US20160065958A1 (en) 2016-03-03
CN105103546A (zh) 2015-11-25
JP2014192702A (ja) 2014-10-06
WO2014156648A1 (ja) 2014-10-02
EP2981083A1 (en) 2016-02-03

Similar Documents

Publication Publication Date Title
JP6633694B2 (ja) 多視点信号コーデック
JP6178017B2 (ja) ステレオビデオのための深度認識向上
JP4999864B2 (ja) 映像符号化方法及び復号方法、それらの装置、それらのプログラム並びにプログラムを記録した記憶媒体
US8204118B2 (en) Video encoding method and decoding method, apparatuses therefor, programs therefor, and storage media which store the programs
WO2014050830A1 (ja) 画像符号化方法、画像復号方法、画像符号化装置、画像復号装置、画像符号化プログラム、画像復号プログラム及び記録媒体
KR20120000485A (ko) 예측 모드를 이용한 깊이 영상 부호화 장치 및 방법
WO2011013253A1 (ja) 幾何変換動き補償予測を用いる予測信号生成装置、動画像符号化装置及び動画像復号化装置
KR20150135457A (ko) 복수의 입력 화상을 인코딩하는 방법, 프로그램을 격납하는 기억 매체 및 장치
JP2010011075A (ja) 動画像符号化及び動画像復号化の方法及び装置
JP6039178B2 (ja) 画像符号化装置、画像復号装置、並びにそれらの方法及びプログラム
KR20120095611A (ko) 다시점 비디오 부호화/복호화 방법 및 장치
JP5894301B2 (ja) 映像符号化装置および方法、映像復号装置および方法、及びそれらのプログラム
CN113597769A (zh) 基于光流的视频帧间预测
KR20140124919A (ko) 객체 기반 적응적 밝기 보상 방법 및 장치
JP4874578B2 (ja) 画像符号化装置
JP2010081498A (ja) 画像圧縮符号化方法、及び装置
JP5706291B2 (ja) 映像符号化方法,映像復号方法,映像符号化装置,映像復号装置およびそれらのプログラム
KR20150137081A (ko) 복수의 입력 화상을 인코딩하는 방법, 프로그램을 격납하는 기억 매체 및 장치
JP6386466B2 (ja) 映像符号化装置及び方法、及び、映像復号装置及び方法
KR20070075354A (ko) 비디오 신호의 디코딩/인코딩 방법 및 장치
KR101761331B1 (ko) 영상 부호화 장치 및 방법, 영상 복호 장치 및 방법과 이들의 프로그램
JP6232117B2 (ja) 画像符号化方法、画像復号方法、及び記録媒体
JP2013179554A (ja) 画像符号化装置、画像復号装置、画像符号化方法、画像復号方法およびプログラム

Legal Events

Date Code Title Description
WITN Withdrawal due to no request for examination