CN102318346A - 图像处理设备和方法 - Google Patents

图像处理设备和方法 Download PDF

Info

Publication number
CN102318346A
CN102318346A CN2010800078928A CN201080007892A CN102318346A CN 102318346 A CN102318346 A CN 102318346A CN 2010800078928 A CN2010800078928 A CN 2010800078928A CN 201080007892 A CN201080007892 A CN 201080007892A CN 102318346 A CN102318346 A CN 102318346A
Authority
CN
China
Prior art keywords
template
piece
pixel
unit
predetermined block
Prior art date
Legal status (The legal status 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 status listed.)
Pending
Application number
CN2010800078928A
Other languages
English (en)
Inventor
佐藤数史
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Sony Corp
Original Assignee
Sony Corp
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 Sony Corp filed Critical Sony Corp
Publication of CN102318346A publication Critical patent/CN102318346A/zh
Pending legal-status Critical Current

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/42Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation
    • H04N19/436Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation using parallelised computational arrangements
    • 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/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/11Selection of coding mode or of prediction mode among a plurality of spatial predictive coding modes
    • 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
    • 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/56Motion estimation with initialisation of the vector search, e.g. estimating a good candidate to initiate a search
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Computing Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)

Abstract

本发明公开了能够提高处理效率的图像处理设备和方法。当对象块是块(B1)时,紧邻对象块上部的像素(UB1)、从左上与对象块相邻的像素(LUB1)、以及从左部与块(B0)相邻的像素(LB0)被设为模板。当对象块是块(B2)时,从左上与对象块相邻的像素(LUB2)、从左部与对象块相邻的像素(LB2)、以及紧邻块(B0)上部的像素(UB0)被设为模板。当对象块是块(B3)时,从左上与块(B0)相邻的像素(LUB0)、紧邻块(B1)上方的像素(UB1)、以及从左部与块(B2)相邻的像素(LB2)被设为模板。本发明例如可以应用于用于通过H.264/AVC对图像编码的图像编码设备。

Description

图像处理设备和方法
技术领域
本发明涉及图像处理设备和方法,并且更具体地涉及使得模板匹配(template matching)预测处理的处理效率得到提高的图像处理设备和方法。
背景技术
近年来,在处理数字化的图像信息时为了高效地发送和累积信息,利用诸如MPEG之类的格式对图像执行压缩编码的设备已广泛普及,其中,压缩是利用图像信息固有的冗余通过诸如离散余弦变换等的正交变换和运动补偿来执行的。这样的编码格式的示例包括MPEG(运动图像专家组)等。
具体地,MPEG2(ISO/IEC 13818-2)被定义为通用图像编码格式,其是一种涵盖了隔行扫描图像和逐行扫描图像两者以及标准清晰图像和高清晰图像的标准,并且当前被广泛用在宽广范围的专业应用和消费者应用中。例如,对于例如具有720×480像素的标准分辨率的隔行扫描图像,通过利用MPEG2压缩格式,4至8Mbps的代码量(比特率)被应用。此外,对于例如具有1920×1088像素的高分辨率的隔行扫描图像,通过利用MPEG2压缩格式,18至22Mbps的代码量(比特率)被应用。因此,可以实现高压缩率和良好图像质量。
MPEG2起初用于适合于广播的高质量编码,但不处理低于MPEG1的代码量(比特率),即,高压缩率编码格式。由于便携式终端的使用正变得普遍,认为对这种编码格式的需求将增长,并且因此MPEG4编码格式已被标准化。关于图像编码格式,其规定已在1998年12月被公认为如ISO/IEC 14496-2的国际标准。
此外,近年来,起初为了用于视频会议的图像编码的,称为H.26L(ITU-T Q6/16 VCEG)的标准的规格化正在进行。虽然H.26L与诸如MPEG2和MPEG4之类的传统编码格式相比需要更大的用于其编码和解码的计算量,但是众所周知实现了更高的编码效率。此外,当前,包括有H.26L所不支持的用于实现更高编码效率的功能的标准化正在基于H.26L被执行,如增强压缩视频编码的联合模型。标准化的日程安排是到2003年3月得到称为H.264和MPEG-4第10部分(高级视频编码,以下被写为H.264/AVC)的国际标准。
现在,在MPEG2格式中,半像素精度运动预测/补偿通过线性插值处理被执行。另一方面,在H.264/AVC格式中,四分之一像素精度运动预测/补偿利用6抽头FIR(有限冲激响应滤波器)被执行。
此外,在MPEG2格式中,在帧运动补偿模式的情况中,运动预测/补偿处理是以16×16像素为单位来执行的,并且在场运动补偿模式的情况中,运动预测/补偿处理是针对第一场和第二场的每场以16×8像素为单位来执行的。
另一方面,在H.264/AVC格式中,运动预测/补偿处理可以以可变块大小来执行。即是说,在H.264/AVC格式中,由16×16像素构成的宏块(macro block)可被划分为各自具有独立的运动向量信息的16×16,16×8,8×16或8×8中的任一种的分割。此外,8×8的分割可被划分为各自具有独立的运动向量信息的8×8,8×4,4×8或4×4中的任一种的子分割。
然而,在H.264/AVC格式中,如上所述,运动预测/补偿处理是以四分之一像素精度和可变块执行的,从而使得大量运动向量信息被生成,如果其按原样被编码则导致编码效率恶化。因此,已提出通过如下方法来抑制编码效率的恶化,在该方法中,通过利用已被编码的相邻运动补偿块的运动向量信息等的中间操作来生成将被编码的运动补偿块的预测运动向量信息。
然而,即使利用中间预测,运动向量信息在图像压缩信息中的百分比也不小。因此,提出了PTL 1中描述的格式。该格式从经解码图像中搜索该图像中的与作为该经解码图像一部分的模板区域的解码图像具有较大相关性并且与将以预定位置关系被编码的图像的区域相邻的区域,并且基于与所搜索区域的预定位置关系来执行预测。
该方法称为模板匹配,并且将经解码图像用于匹配,因此可以通过预先确定搜索范围来在编码设备和解码设备中使用相同的处理。即是说,可以通过同样在解码设备处执行如上所述的预测/补偿处理来抑制编码效率的恶化,这是因为无需具有来自编码设备的图像压缩信息内的运动向量信息。
模板匹配可被用于帧内预测(intra prediction)和帧间预测(interprediction)两者,并且下面将被称为帧内模板匹配预测处理和帧间模板匹配预测处理。
引用列表
专利文献
PTL 1:日本未实审专利申请公报No.2007-43651
发明内容
技术问题
现在,参考图1,考虑在帧内或帧间模板匹配预测处理中以8×8像素块为单位来执行处理的情况。图1中的示例图示出了16×16像素宏块。该宏块由左上块0、右上块1、左下块2和右下块3构成,每个块由8×8像素构成。
例如,当在块1处执行模板匹配预测处理时,作为经解码图像一部分的并且在上边部分、左上部分和左边部分处与块1相邻的相邻像素P1、P2和P3被用作模板区域。
即是说,除非块0的编码处理结束,否则模板区域的相邻像素P3不可用,因此不能执行块1处的模板匹配预测处理。因此,在传统的模板匹配预测处理中,难以通过并行处理或流水线处理来执行宏块内的块0和块1的预测处理。
在8×8子块内以4×4块为单位执行帧内或帧间模板匹配预测处理时也是如此。
本发明是鉴于这样的情形而被作出的,并且提高了模板匹配预测处理的处理效率。
问题的解决方案
根据本发明第一方面的图像处理设备包括:模板像素设置装置,用于根据构成图像的预定块的块在预定块内的地址,来从以预定位置关系与多个块之一相邻的且从经解码图像生成的像素中,设置用于计算构成图像的预定块的块的运动向量的模板的像素;以及模板运动预测补偿装置,用于利用由模板像素设置装置所设置的像素组成的模板来计算块的运动向量。
还可以包括编码装置,用于利用由模板运动预测补偿装置计算出的运动向量来对块进行编码。
对于位于预定块的左上处的左上块,模板像素设置装置可以将与左上块的左部、上部和左上部相邻的像素设置为模板。
对于位于预定块的右上处的右上块,模板像素设置装置可以将与右上块的上部和左上部相邻的像素以及与预定块中位于左上处的左上块的左部相邻的像素设置为模板。
对于位于预定块的左下处的左下块,模板像素设置装置可以将与左下块的左上部和左部相邻的像素以及与预定块中位于左上处的左上块的上部相邻的像素设置为模板。
对于位于预定块的右下处的右下块,模板像素设置装置可以将与预定块中位于左上处的左上块的左上部相邻的像素、与预定块中位于右上处的右上块的上部相邻的像素、以及与预定块中位于左下处的左下块的左部相邻的像素设置为模板。
对于位于预定块的右下处的右下块,模板像素设置装置可以将与预定块中位于右上处的右上块的左上部和上部相邻的像素、以及与预定块中位于左下处的左下块的左部相邻的像素设置为模板。
对于位于预定块的右下处的右下块,模板像素设置装置可以将与预定块中位于右上处的右上块的上部相邻的像素、以及与预定块中位于左下处的左下块的左部和左上部相邻的像素设置为模板。
根据本发明第一方面的图像处理方法包括以下步骤:由图像处理设备根据构成图像的预定块的块在预定块内的地址,来从以预定位置关系与多个块之一相邻的像素中,设置用于计算构成图像的预定块的块的运动向量的模板的像素,并且利用由所设置的像素组成的模板来计算块的运动向量。
根据本发明第二方面的图像处理设备包括:解码装置,用于对经编码块的图像解码;模板像素设置装置,用于根据构成图像的预定块的块在预定块内的地址,来从以预定位置关系与多个块之一相邻的且从经解码图像生成的像素中,设置用于计算构成图像的预定块的块的运动向量的模板的像素;模板运动预测装置,用于利用由模板像素设置装置所设置的像素组成的模板来计算块的运动向量;以及运动补偿装置,用于利用由解码装置解码的图像以及由模板运动预测装置计算出的运动向量来生成块的预测图像。
对于位于预定块的左上处的左上块,模板像素设置装置可以将与左上块的左部、上部和左上部相邻的像素设置为模板。
对于位于预定块的右上处的右上块,模板像素设置装置可以将与右上块的上部和左上部相邻的像素以及与预定块中位于左上处的左上块的左部相邻的像素设置为模板。
对于位于预定块的左下处的左下块,模板像素设置装置可以将与左下块的左上部和左部相邻的像素以及与预定块中位于左上角处的左上块的上部相邻的像素设置为模板。
对于位于预定块的右下处的右下块,模板像素设置装置可以将与预定块中位于左上处的左上块的左上部相邻的像素、与预定块中位于右上处的右上块的上部相邻的像素、以及与预定块中位于左下处的左下块的左部相邻的像素设置为模板。
对于位于预定块的右下处的右下块,模板像素设置装置可以将与预定块中位于右上处的右上块的左上部和上部相邻的像素、以及与预定块中位于左下处的左下块的左部相邻的像素设置为模板。
根据本发明第二方面的图像处理方法包括以下步骤:由图像处理设备对经编码块的图像解码;根据构成图像的预定块的块在预定块内的地址,来从以预定位置关系与多个块之一相邻的且从经解码图像生成的像素中,设置用于计算构成图像的预定块的块的运动向量的模板的像素;利用由所设置的像素组成的模板来计算块的运动向量;以及利用经解码的图像以及计算出的运动向量生成块的预测图像。
在本发明的第一方面中,用于计算构成图像的预定块的块的运动向量的模板的像素根据该块在预定块内的地址,来从以预定位置关系与多个块之一相邻的像素中被设置。该块的运动向量然后利用由所设置像素组成的模板被计算出来。
在本发明的第二方面中,经编码块的图像被解码,用于计算构成图像的预定块的块的运动向量的模板的像素根据该块在预定块内的地址,来从以预定位置关系与多个块之一相邻且从经解码图像生成的像素中被设置,并且该块的运动向量利用由所设置像素组成的模板被计算出来。该块的预测图像然后利用经解码图像和计算出的运动向量被生成。
注意,上述图像处理设备各自可以是独立设备,或者可以是构成单个图像编码设备或图像解码设备的内部块。
本发明的有益效果
根据本发明的第一方面,图像的块的运动向量可被计算出来。因此,根据本发明的第一方面,可以提高预测处理效率。
根据本发明的第二方面,图像可被解码。此外,根据本发明的第二方面,可以提高预测处理效率。
附图说明
图1是描述传统模板的示图。
图2是图示出应用了本发明的图像编码设备的实施例的框图。
图3是描述可变块大小运动预测/补偿处理的示图。
图4是描述四分之一像素精度运动预测/补偿处理的示图。
图5是描述多参考帧运动预测/补偿处理方法的示图。
图6是描述用于生成运动向量信息的方法的示例的示图。
图7是图示出执行与模板预测模式有关的处理的各个部分的详细配置示例的框图。
图8是图示出当块大小是8×8像素时的模板像素设置示例的示图。
图9是图示出模板像素设置的另一示例的示图。
图10是图示出当块大小是4×4像素时的模板像素设置示例的示图。
图11是图示出模板像素设置的另一示例的示图。
图12是描述图2的图像编码设备的编码处理的流程图。
图13是描述图12中的步骤S21的预测处理的流程图。
图14是描述16×16像素帧内预测模式的情况中的处理顺序的示图。
图15是图示出用于亮度信号的4×4像素帧内预测模式的类型的示图。
图16是图示出用于亮度信号的4×4像素帧内预测模式的类型的示图。
图17是描述4×4像素帧内预测的方向的示图。
图18是描述4×4像素帧内预测的示图。
图19是描述通过用于亮度信号的4×4像素帧内预测模式进行编码的示图。
图20是图示出用于亮度信号的16×16像素帧内预测模式的类型的示图。
图21是图示出用于亮度信号的16×16像素帧内预测模式的类型的示图。
图22是描述16×16像素帧内预测的示图。
图23是图示出用于色差信号的像素帧内预测模式的类型的示图。
图24是描述图13的步骤S31的帧内预测处理的流程图。
图25是描述图13的步骤S32的帧内运动预测处理的流程图。
图26是描述图13的步骤S33的帧间模板运动预测处理的流程图。
图27是描述帧内模板匹配方法的示图。
图28是描述图13的步骤S35的帧间模板运动预测处理的流程图。
图29是描述帧间模板匹配方法的示图。
图30是描述图26的步骤S61或图28的步骤S71中的模板像素设置处理的流程图。
图31是描述模板像素设置的优点的示图。
图32是图示出应用了本发明的图像解码设备的实施例的框图。
图33是描述图32所示的图像解码设备的解码处理的流程图。
图34是描述图33的步骤S138中的预测处理的流程图。
图35是图示出扩展块大小的示例的示图。
图36是图示出计算机硬件的配置示例的框图。
图37是图示出应用了本发明的电视接收机的主要配置示例的框图。
图38是图示出应用了本发明的蜂窝电话的主要配置示例的框图。
图39是图示出应用了本发明的硬盘记录器的主要配置示例的框图。
图40是图示出应用了本发明的相机的主要配置示例的框图。
具体实施方式
现在参考附图描述本发明的实施例。
[图像编码设备的配置示例]
图2图示出了用作应用了本发明的图像处理设备的图像编码设备的实施例的配置。
图像编码设备1利用H.264和MPEG-4第10部分(高级视频编码)(下面写为H.264/AVC)格式来对图像执行压缩编码。
在图2的示例中,图像编码设备1包括A/D转换器11、画面重布置缓冲器12、计算单元13、正交变换单元14、量化单元15、无损编码单元16、累积缓冲器17、逆量化单元18、逆正交变换单元19、计算单元20、解块滤波器21、帧存储器22、开关23、帧内预测单元24、帧内模板运动预测/补偿单元25、运动预测/补偿单元26、帧间模板运动预测/补偿单元27、模板像素设置单元28、预测图像选择单元29以及速率控制单元30。
注意,在下面,帧内模板运动预测/补偿单元25和帧间模板运动预测/补偿单元27将分别被称为帧内TP运动预测/补偿单元25和帧间TP运动预测/补偿单元27。
A/D转换器11对输入图像执行A/D转换,并输出给画面重布置缓冲器12以存储在其中。画面重布置缓冲器12按照用于根据GOP(图片组)进行编码的帧顺序来重新布置所存储的具有显示顺序的帧的图像。
计算单元13从自画面重布置缓冲器12读出的图像中减去由预测图像选择单元29选择的来自帧内预测单元24的预测图像或者来自运动预测/补偿单元26的预测图像,并且将其差分信息输出给正交变换单元14。正交变换单元14对来自计算单元13的差分信息执行诸如离散余弦变换、Karhunen-Loève变换等的正交变换,并且输出其变换系数。量化单元15对正交变换单元14输出的变换系数进行量化。
从量化单元15输出的经量化变换系数被输入无损编码单元16,在其中,它们经过诸如可变长度编码、算术编码等的无损编码并被压缩。
无损编码单元16从帧内预测单元24获取指示帧内预测和帧内模板预测的信息,并且从运动预测/补偿单元26获取指示帧间预测和帧间模板预测的信息。注意,指示帧内预测和帧内模板预测的信息在下面也被称为帧内预测模式信息和帧内模板预测模式信息。此外,指示帧间预测和帧间模板预测的信息在下面也被称为帧间预测模式信息和帧间模板预测模式信息。
无损编码单元16对经量化的变换系数编码,并且还对指示帧内预测和帧内模板预测的信息、指示帧间预测和帧间模板预测的信息等进行编码,并且使其成为经压缩图像的头部信息的一部分。无损编码单元16将经编码数据提供给累积缓冲器17以累积在其中。
例如,在无损编码单元16中,执行诸如可变长度编码或算术编码等的无损编码。可变长度编码的示例包括由H.264/AVC格式规定的CAVLC(基于上下文的自适应可变长度编码)等。算术编码的示例包括CABAC(基于上下文的自适应二进制算术编码)等。
累积缓冲器17将从无损编码单元16提供来的数据作为根据H.264/AVC格式被编码的压缩图像输出给例如未示出的下游记录设备或传送路径等。
此外,从量化单元15输出的经量化变换系数还被输入逆量化单元18并且被量化,并且在逆正交变换单元19中经过逆正交变换。经过了逆正交变换的输出被计算单元20与从预测图像选择单元29提供来的预测图像相加,并且成为局部解码图像。解块滤波器21去除该解码图像中的块噪声,其随后被提供给帧存储器22并被累积。帧存储器22还接收对解块滤波器21的解块滤波器处理之前的图像的供给并累积它。
开关23将累积在帧存储器22中的参考图像输出给运动预测/补偿单元26或帧内预测单元24。
在该图像编码设备1中,例如,I图片、B图片和P图片从画面重布置缓冲器12被提供给帧内预测单元24作为用于帧内预测(也称为帧内处理)的图像。此外,从画面重布置缓冲器12读出的B图片和P图片被提供给运动预测/补偿单元26作为用于帧间预测(也称为帧间处理)的图像。
帧内预测单元24基于从画面重布置缓冲器12读出的用于帧内预测的图像和从帧存储器22提供来的参考图像来针对所有候选帧内预测模式执行帧内预测处理,并生成预测图像。此外,帧内预测单元24将从画面重布置缓冲器12读出的用于帧内预测的图像和经由开关23从帧存储器22提供来的参考图像提供给帧内TP运动预测/补偿单元25。
帧内预测单元24计算针对所有候选帧内预测模式的成本函数值。帧内预测单元24将给出所计算出的成本函数值和由帧内TP运动预测/补偿单元25针对帧内模板预测模式计算出的成本函数值中的最小值的预测模式确定为最优帧内预测模式。
帧内预测单元24将在最优帧内预测模式中生成的预测图像及其成本函数值提供给预测图像选择单元29。当在最优帧内预测模式中生成的预测图像被预测图像选择单元29选择时,帧内预测单元24将与该最优帧内预测模式有关的信息(帧内预测模式信息或帧内模板预测模式信息)提供给无损编码单元16。无损编码单元16将该信息编码为压缩图像中的头部信息的一部分。
帧内TP运动预测/补偿单元25被输入了从画面重布置缓冲器12读出的用于帧内预测的图像和从帧存储器22提供来的参考图像。帧内TP运动预测/补偿单元25利用这些图像在帧内模板预测模式中对亮度信号执行运动预测和补偿处理,并且利用由模板像素设置单元28设置的像素组成的模板来生成亮度信号的预测图像。帧内TP运动预测/补偿单元25然后计算针对帧内模板预测模式的成本函数值,并将计算出的成本函数值和预测图像提供给帧内预测单元24。
运动预测/补偿单元26针对所有候选帧间预测模式执行运动预测和补偿处理。即是说,运动预测/补偿单元26被提供有从画面重布置缓冲器12读出的用于帧内预测的图像和经由开关23从帧存储器22提供来的参考图像。基于用于帧内预测的图像和参考图像,运动预测/补偿单元26检测所有候选帧间预测模式的运动向量,基于运动向量对参考图像进行压缩处理,并生成预测图像。此外,运动预测/补偿单元26将从画面重布置缓冲器12读出的用于帧内预测的图像和经由开关23从帧存储器22提供来的参考图像提供给帧间TP运动预测/补偿单元27。
运动预测/补偿单元26计算针对所有候选帧间预测模式的成本函数值。运动预测/补偿单元26将给出针对帧间预测模式的成本函数值和由帧间TP运动预测/补偿单元27针对帧间模板预测模式计算出的成本函数值中的最小值的预测模式确定为最优帧间预测模式。
运动预测/补偿单元26将通过该最优帧间预测模式生成的预测图像及其成本函数值提供给预测图像选择单元29。当在最优帧间预测模式中生成的预测图像被预测图像选择单元29选择时,与该最优帧间预测模式相对应的信息(运动向量信息、参考帧信息等)被输出给无损编码单元16。
注意,如果需要,运动向量信息、标志信息、参考帧信息等也被输出给无损编码单元16。无损编码单元16也对来自运动预测/补偿单元26的信息进行诸如可变长度编码、算术编码等的无损编码,并且将其插入压缩图像的头部部分中。
帧间TP运动预测/补偿单元27被输入了从画面重布置缓冲器12读出的用于帧间预测的图像和从帧存储器22提供来的参考图像。帧间TP运动预测/补偿单元27使用这些图像来利用由模板像素设置单元28设置的像素组成的模板来执行模板预测模式的运动预测和补偿处理,并且生成预测图像。帧间TP运动预测/补偿单元27计算针对帧间模板预测模式的成本函数值,并将计算出的成本函数值和预测图像提供给运动预测/补偿单元26。
模板像素设置单元28根据作为帧内或帧间模板预测模式的对象的块中的宏块(或子块)内的地址,来设置用于计算该对象块的运动向量的模板中的像素。所设置的模板的像素信息被提供给帧内TP运动预测/补偿单元25或帧间TP运动预测/补偿单元27。
预测图像选择单元29基于从帧内预测单元24或运动预测/补偿单元26输出的成本函数值,来从最优帧内预测模式和最优帧间预测模式中确定最优预测模式。预测图像选择单元29然后选择所确定的最优预测模式的预测图像,并且将其提供给计算单元13和20。此时,预测图像选择单元29将预测图像的选择信息提供给帧内预测单元24或运动预测/补偿单元26。
速率控制单元30基于累积在累积缓冲器17中的压缩图像来控制量化单元15的量化操作的速率,以使得不会出现上溢或下溢。
[H.264/AVC格式的描述]
图3是描述根据H.264/AVC格式的运动预测/补偿中的块大小的示例的示图。在H.264/AVC格式中,运动预测/补偿处理以可变块大小来执行。
图3的上面一排示出了由16×16像素构成的宏块,该宏块被划分为(从左边开始依次为)16×16像素、16×8像素、8×16像素和8×8像素的分割。此外,图3的下面一排示出了由8×8像素构成的宏块,该宏块被划分为(从左边开始依次为)8×8像素、8×4像素、4×8像素和4×4像素的分割。
即是说,在H.264/AVC格式中,宏块可被划分为各自具有独立运动向量信息的16×16像素、16×8像素、8×16像素或8×8像素中的任一种的分割。此外,8×8像素的分割可被划分为各自具有独立运动向量信息的8×8像素、8×4像素、4×8像素或4×4像素中的任一种的子分割。
图4是用于描述利用H.264/AVC格式的四分之一像素精度的预测/补偿处理的示图。在该H.264/AVC格式中,四分之一像素精度的预测/补偿处理利用6抽头FIR(有限冲激响应滤波器)滤波器来执行。
在图4的示例中,位置A指示整数精度像素位置,位置b、c和d指示半像素精度位置,并且位置e1、e2和e3指示四分之一像素精度位置。
首先,下面,Clip()在以下的表达式(1)中被定义。
[数式1]
Clip 1 ( a ) = 0 ; if ( a < 0 ) a ; otherwise max _ pix ; if ( a > max _ pix ) . . . ( 1 )
注意,当输入图像具有8比特精度时,max_pix的值为255。
利用6抽头FIR滤波器通过下面的等式(2)来生成位置b和d处的像素值。
[数式2]
F=A-2-5·A-1+20·A0+20·A1-5·A2+A3
b,d=Clip1((F+16)>>5)               …(2)
在水平方向和垂直方向上利用6抽头FIR滤波器通过下面的等式(3)生成位置c处的像素值。
[数式3]
F=b-2-5·b-1+20·b0+20·b1-5·b2+b3
或者
F=d-2-5·d-1+20·d0+20·d1-5·d2+d3
c=Clip1((F+512)>>10)               …(3)
注意,Clip处理仅当在水平方向和垂直方向两者上执行了乘积求和处理之后的末尾处被执行一次。
利用下面的表达式(4)通过线性插值来生成位置e1至e3。
[数式4]
e1=(A+b+1)>>1
e2=(b+d+1)>>1
e3=(b+c+1)>>1                      …(4)
图5是描述H.264/AVC格式中的多参考帧的运动预测/补偿处理的示图。H.264/AVC格式规定了多参考帧(Multi-Reference Frame)的运动预测/补偿方法。
在图5的示例中,示出了从现在起将被编码的对象帧Fn以及已被编码帧Fn-5,…,Fn-1。帧Fn-1是在对象帧Fn之前一个的帧,帧Fn-2是在对象帧Fn之前两个的帧,并且帧Fn-3是在对象帧Fn之前三个的帧。此外,帧Fn-4是在对象帧Fn之前四个的帧,并且帧Fn-5是在对象帧Fn之前五个的帧。一般地,在时间轴上帧越接近对象帧,则赋予的参考图片No.(ref_id)越小。即是说,帧fn-1的参考图片No.最小,并且此后参考图片No.以Fn-2,…,Fn-5的顺序变小。
块A1和块A2被显示在对象帧Fn中,其中由于与往后两个的帧Fn-2中的块A1′的相关性而找到运动向量V1。此外,由于与往后四个的帧Fn-4中的块A2′的相关性而找到针对块A2的运动向量V2。
如上所述,在H.264/AVC格式中,多个参考帧被存储在存储器中,并且不同参考帧可供一个帧(图片)参考。即是说,一个图片中的每个块可以具有独立的参考帧信息(参考图片No.(ref_id)),例如,块A1参考帧Fn-2,块A2参考帧Fn-4,等等。
在H.264/AVC格式中,运动预测/补偿处理如上面参考图2至图5描述的那样被执行,使得大量运动向量信息被生成,如果其按原样被编码则导致编码效率恶化。相比之下,在H.264/AVC格式中,利用图6所示的方法来实现运动向量的编码信息的减少。
图6是描述利用H.264/AVC格式的运动向量信息生成方法的示图。图6中的示例示出了从现在起将被编码的对象块E(例如,16×16像素),以及与对象块E相邻的已被编码的块A至块D。
即是说,块D位于与对象块E的左上部相邻的位置处,块B位于与对象块E的上部相邻的位置处,块C位于与对象块E的右上部相邻的位置处,并且块A位于与对象块E的左边相邻的位置处。注意,块A至块D未被切分的原因是为了表达它们是上面通过图3描述的16×16像素至4×4像素的配置中的一种配置中的块。
例如,将关于X(=A,B,C,D,E)的运动向量信息表达为mvX。首先,利用与块A、B和C有关的运动向量信息如以下表达式(5)所示这样来生成关于对象块E的预测运动向量信息(运动向量的预测值)pmvE
pmvE=med(mvA,mvB,mvC)    …(5)
当有关块C的运动向量信息由于诸如块C位于图像帧的边缘或者尚未被编码之类的原因而不可被获得(不可用)时,则用有关块D的运动向量信息来取代该有关块C的运动向量信息。
利用pmvE如以下表达式(6)中所示那样来生成将被添加到压缩图像的头部部分的数据mvdE,作为关于对象块E的运动向量信息。
mvdE=mvE-pmvE    …(6)
注意,在实际实践中,针对运动向量信息的水平方向和垂直方向的每个分量独立地来执行处理。
因此,可以通过生成预测运动向量信息并且将从与相邻块的相关性生成的预测运动向量信息与运动向量信息之间的差分添加到压缩图像的头部部分来生成运动向量信息。
现在,即使利用中间预测,运动向量信息在图像压缩信息中的百分比也不小。因此,在图像编码设备1中,以预定位置关系与将被编码的图像的区域相邻的并且也是经解码图像一部分的模板被使用,因此还针对模板预测模式来执行运动预测补偿处理,就此而言,运动向量不必被发送给解码设备。此时,将用于模板的像素在图像编码设备1处被设置。
[每个部分的详细配置示例]
图7是图示出执行与上述模板预测模式有关的处理的每个部分的详细配置的框图。图7的示例示出了帧内TP运动预测/补偿单元25、帧间TP运动预测/补偿单元27和模板像素设置单元28的详细配置。
在图7的示例的情况中,帧内TP运动预测/补偿单元25由块地址计算单元41、运动预测单元42和运动补偿单元43构成。块地址计算单元41针对将被编码的对象块计算其宏块内的地址,并且将计算出的地址信息提供给块分类单元61。
运动预测单元42被输入了从画面重布置缓冲器12读出的用于帧内预测的图像和从帧存储器22提供来的参考图像。运动预测单元42还被输入了由对象块模板设置单元62和参考块模板设置单元63设置的参考块和参考块模板信息。
运动预测单元42利用由对象块模板设置单元62和参考块模板设置单元63设置的参考块和参考块模板像素值,使用用于帧内预测的图像和参考图像来执行帧内模板预测模式运动预测。此时,计算出的运动向量和参考图像被提供给运动补偿单元43。
运动补偿单元43使用由运动预测单元42计算出的运动向量和参考图像来执行运动补偿处理并且生成预测图像。此外,运动补偿单元43计算帧内模板预测模式的成本函数值,并且将计算出的成本函数值和预测图像提供给帧内预测单元24。
帧间TP运动预测/补偿单元27由块地址计算单元51、运动预测单元52和运动补偿单元53构成。块地址计算单元51针对将被编码的对象块计算其宏块内的地址,并且将计算出的地址信息提供给块分类单元61。
运动预测单元52被输入了从画面重布置缓冲器12读出的用于帧间预测的图像和从帧存储器22提供来的参考图像。运动预测单元52还被输入了由对象块模板设置单元62和参考块模板设置单元63设置的参考块和参考块模板信息。
运动预测单元52利用由对象块模板设置单元62和参考块模板设置单元63设置的参考块和参考块模板像素值,使用用于帧间预测的图像和参考图像来执行帧间模板预测模式运动预测。此时,计算出的运动向量和参考图像被提供给运动补偿单元53。
运动补偿单元53使用由运动预测单元52计算出的运动向量和参考图像来执行运动补偿处理并且生成预测图像。此外,运动补偿单元53计算帧间模板预测模式的成本函数值,并且将计算出的成本函数值和预测图像提供给运动预测/补偿单元26。
模板像素设置单元28由块分类单元61、对象块模板设置单元62和参考块模板设置单元63构成。注意,在下面,对象块模板设置单元62和参考块模板设置单元63将分别被称为对象块TP设置单元62和参考块TP设置单元63。
块分类单元61对将通过帧内或帧间模板预测模式被处理的对象块是如下的哪个块进行分类:位于该宏块内的左上部的块、右上部的块、左下部的块或右下部的块。块分类单元61将有关对象块是哪个块的信息提供给对象块TP设置单元62和参考块TP设置单元63。
对象块TP设置单元62根据宏块内的对象块的位置是哪个位置来执行对组成模板的像素的设置。已被设置的对象块中的模板的信息被提供给运动预测单元42或运动预测单元52。
参考块TP设置单元63根据宏块内的对象块的位置是哪个位置来执行对组成模板的像素的设置。即是说,参考块TP设置单元63将对象块中相同位置处的像素设置为组成用于参考块的模板的像素。已被设置的对象块中的模板的信息被提供给运动预测单元42或运动预测单元52。
[模板像素设置处理的示例]
图8的A至图8的D图示出了根据宏块内的对象块的位置的模板的示例。在图8的A至图8的D中的示例的情况中,示出了16×16像素的宏块MB,其中,该宏块MB由B0至B3的四块组成,四块中的每块由8×8像素组成。此外,在此示例中,按B0至B3的顺序,即,光栅扫描顺序来执行处理。
块B0是位于宏块MB内左上部的块,并且块B1是位于宏块MB内右上部的块。此外,块B2是位于宏块MB内左下部的块,并且块B3是位于宏块MB内右下部的块。
即是说,图8的A图示出了对象块是块B0的模板的情况中的示例。图8的B图示出了对象块是块B1的模板的情况中的示例。图8的C图示出了对象块是块B2的模板的情况中的示例。图8的D图示出了对象块是块B3的模板的情况中的示例。
块分类单元61对将通过帧内或帧间模板预测模式被处理的对象块位于宏块MB内的哪个位置,即,是块B0至B3中的哪个块进行分类。
对象块TP设置单元62和参考块TP设置单元63根据对象块在宏块MB中的位置(是哪个块)来设置用于组成与对象块和参考块相对应的每个模板的像素。
即,当对象块是块B0时,如图8的A所示,分别与对象块的上部、左上部和左部相邻的像素UB0、像素LUB0和像素LB0被设为模板。所设置的由像素UB0、像素LUB0和像素LB0构成的该模板的像素值然后被用于匹配。
当对象块是块B1时,如图8的B所示,分别与对象块的上部和左上部相邻的像素UB1和像素LUB1、以及与块B0的左部相邻的像素LB0被设为模板。所设置的由像素UB1、像素LUB1和像素LB0构成的该模板的像素值然后被用于匹配。
当对象块是块B2时,如图8的C所示,分别与对象块的左上部和左部相邻的像素LUB2和像素LB2、以及与块B0的上部相邻的像素UB0被设为模板。所设置的由像素UB0、像素LUB2和像素LB2构成的该模板的像素值然后被用于匹配。
当对象块是块B3时,如图8的D所示,与块B0的左上部相邻的像素LUB0、与块B1的上部相邻的像素UB1、以及与块B2的左部相邻的像素LB2被设为模板。所设置的由像素UB1、像素LUB0和像素LB2构成的该模板的像素值然后被用于匹配。
注意,当对象块是块B3时,还可以使用图9的A或图9的B所示的模板,而不限于图8的D中的模板的示例。
即是说,当对象块是块B3时,与块B1的左上部相邻的像素LUB1和与其上部相邻的像素UB1,以及与块B2的左上部相邻的像素LB2被设置为模板,如图9的A所示。所设置的由像素UB1、像素LUB1和像素LB2构成的该模板的像素值然后被用于匹配。
替代地,当对象块是块B3时,与块B1的上部相邻的像素UB1,以及与块B2的左上部相邻的像素LUB2和与其左部相邻的像素LB2被设置为模板,如图9的B所示。所设置的由像素UB1、像素LUB2和像素LB2构成的该模板的像素值然后被用于匹配。
现在,像素UB0、像素LUB0、像素LB0、像素LUB1、像素UB1、像素LUB2和像素LB2各自是以预定位置关系与宏块MB相邻的像素。
因此,通过恒定地将与对象块的宏块相邻的像素用于构成模板的像素,可以通过并行处理或流水线处理来实现关于宏块MB内的块B0至B3的处理。后面将参考图31的A至图31的C描述其优点的细节。
[模板像素设置处理的其它示例]
图10的A至图10的E图示出了当块大小为4×4时的模板的示例。在图10的A中的示例的情况中,示出了16×16像素的宏块MB,其中该宏块MB由B0至B15的16块组成,16块中的每块由4×4像素组成。其中,子宏块SMB0由块B0至B3构成,子宏块SMB1由块B4至B7构成。此外,子宏块SMB2由块B8至B11构成,并且子宏块SMB3由块B12至B15构成。
注意,块B0、块B4、块B8和块B12处的处理基本上是相同的处理,并且块B1、块B5、块B9和块B13处的处理基本上是相同的处理。块B2、块B6、块B10和块B14处的处理基本上是相同处理,并且块B3、块B7、块B11和块B15处的处理基本上是相同处理。因此,在下面,将描述由块B0至B3构成的8×8像素子宏块SMB0作为示例。
即,图10的B图示出了子宏块SMB0内的对象块是块B0的情况中的模板的示例。图10的C图示出了子宏块SMB0内的对象块是块B1的情况中的模板的示例。图10的D图示出了子宏块SMB0内的对象块是块B2的情况中的模板的示例。图10的E图示出了子宏块SMB0内的对象块是块B3的情况中的模板的示例。
现在,将按作为处理顺序的光栅扫描顺序进行描述。当对象块是块B0时,如图10的B所示,分别与对象块的上部、左上部和左部相邻的像素UB0、像素LUB0和像素LB0被设为模板。所设置的由像素UB0、像素LUB0和像素LB0构成的该模板的像素值然后被用于匹配。
当对象块是块B1时,如图10的C所示,分别与对象块的上部和左上部相邻的像素UB1和像素LUB1、以及与块B0的左部相邻的像素LB0被设为模板。所设置的由像素UB1、像素LUB1和像素LB0构成的该模板的像素值然后被用于匹配。
当对象块是块B2时,如图10的D所示,分别与对象块的左上部和左部相邻的像素LUB2和像素LB2、以及与块B0的上部相邻的像素UB0被设为模板。所设置的由像素UB0、像素LUB2和像素LB2构成的该模板的像素值然后被用于匹配。
当对象块是块B3时,如图10的E所示,与块B0的左上部相邻的像素LUB0、与块B1的上部相邻的像素UB1、以及与块B2的左部相邻的像素LB2被设为模板。所设置的由像素UB1、像素LUB0和像素LB2构成的该模板的像素值然后被用于匹配。
注意,当对象块是块B3时,还可以使用图11的A或图11的B所示的模板,而不限于图10的E中的模板的示例。
即是说,当对象块是块B3时,与块B1的左上部相邻的像素LUB1和与其上部相邻的像素UB1,以及与块B2的左上部相邻的像素LB2被设置为模板,如图11的A所示。所设置的由像素UB1、像素LUB1和像素LB2构成的该模板的像素值然后被用于匹配。
替代地,当对象块是块B3时,与块B1的上部相邻的像素UB1,以及与块B2的左上部相邻的像素LUB2和与其左部相邻的像素LB2被设置为模板,如图11的B所示。所设置的由像素UB1、像素LUB2和像素LB2构成的该模板的像素值然后被用于匹配。
现在,像素UB0、像素LUB0、像素LB0、像素LUB1、像素UB1、像素LUB2和像素LB2各自是以预定位置关系与子宏块SMB0相邻的像素。
因此,通过恒定地将与对象块的宏块相邻的像素用于构成模板的像素,可以通过并行处理或流水线处理来实现关于子宏块SMB0内的块B0至B3的处理。
[编码处理的描述]
接下来,将参考图12描述图1中的图像编码设备1的编码处理。
在步骤S11,A/D转换器11执行对输入图像的A/D转换。在步骤S12,画面重布置缓冲器12存储从A/D转换器11提供来的图像,并且对图片执行从显示顺序到编码顺序的重布置。
在步骤S13,计算单元13计算在步骤S12中重布置后的图像与预测图像之间的差分。预测图像在执行帧间预测的情况中从运动预测/补偿单元26并且在执行帧内预测的情况中从帧内预测单元24经由预测图像选择单元29被提供给计算单元13。
与原始图像数据相比差分数据的数据量较小。因此,与按原样执行图像的编码的情况相比数据量可被压缩。
在步骤S14,正交变换单元14对从计算单元13提供来的差分信息执行正交变换。具体地,诸如离散余弦变换、Karhunen-Loève变换等的正交变换被执行,并且变换系数被输出。在步骤S15,量化单元15对变换系数执行量化。如在后面描述的步骤S25中的处理中所述的,该量化的速率被控制。
如上所述的经量化差分信息如下这样在本地被解码。即是说,在步骤S16,逆量化单元18利用与量化单元15的特性相对应的特性来对经量化单元15量化的变换系数执行逆量化。在步骤S17,逆正交变换单元19利用与正交变换单元14的特性相对应的特性,来对在逆量化单元18处经过了逆量化的变换系数执行逆正交变换。
在步骤S18,计算单元20将经由预测图像选择单元29输入的预测图像加到在本地被解码的差分信息中,并且生成本地解码图像(与到计算单元13的输入相对应的图像)。在步骤S19,解块滤波器21对从计算单元20输出的图像执行滤波。因此,块噪声被去除。在步骤S20,帧存储器22存储经滤波的图像。注意,未经过解块滤波器21的滤波器处理的图像也从计算单元20被提供给帧存储器22并且被存储。
在步骤S21,帧内预测单元24、帧内TP运动预测/补偿单元25、运动预测/补偿单元26和帧间TP运动预测/补偿单元27执行它们各自的图像预测处理。即是说,在步骤S21,帧内预测单元24在帧内预测模式中执行帧内预测处理,并且帧内TP运动预测/补偿单元25在帧内模板预测模式中执行运动预测/补偿处理。此外,运动预测/补偿单元26在帧间预测模式中执行运动预测/补偿处理,并且帧间TP运动预测/补偿单元27在帧间模板预测模式中执行运动预测/补偿处理。注意,此时,在帧内TP运动预测/补偿单元25和帧间TP运动预测/补偿单元27中,由模板像素设置单元28设置的模板被使用。
尽管将在后面参考图13详细描述步骤S21中的预测处理的细节,然而在该处理中,预测处理在所有候选预测模式中被执行,并且在所有候选预测模式中分别计算出成本函数值。最优帧内预测模式随后基于计算出的成本函数值被选择出来,并且通过该最优帧内预测模式中的帧内预测生成的预测图像以及成本函数值被提供给预测图像选择单元29。此外,最优帧间预测模式基于计算出的成本函数值从帧间预测模式和帧间模板预测模式中被确定,并且利用该最优帧间预测模式及其成本函数值生成的预测图像被提供给预测图像选择单元29。
在步骤S22,预测图像选择单元29基于从帧内预测单元24和运动预测/补偿单元26输出的各自的成本函数值,来将最优帧内预测模式和最优帧间预测模式中的一者确定为最优预测模式。预测图像选择单元29然后选择所确定的最优预测模式的预测图像,并且将其提供给计算单元13和20。如上所述,该预测图像被用于步骤S13和S18中的计算。
注意,该预测图像的选择信息被提供给帧内预测单元24或运动预测/补偿单元26。当最优帧内预测模式的预测图像被选择时,帧内预测单元24将与该最优帧内预测模式有关的信息(即,帧内模式信息或帧内模板预测模式信息)提供给无损编码单元16。
当最优帧间预测模式的预测图像被选择时,运动预测/补偿单元26将与该最优帧间预测模式有关的信息以及(按照需要)将与该最优帧间预测模式相对应的信息输出给无损编码单元16。与该最优帧间预测模式相对应的信息的示例包括运动向量信息、标志信息、参考帧信息等。更具体地,当帧间预测模式中的预测图像被选为最优帧间预测模式时,运动预测/补偿单元26将帧间预测模式信息、运动向量信息和参考帧信息输出给无损编码单元16。
当帧间模板预测模式中的预测图像被选为最优帧间预测模式时,运动预测/补偿单元26将帧间模板预测模式信息输出给无损编码单元16。即是说,在利用帧间模板预测模式信息进行编码的情况中,运动向量信息等不必被发送给解码侧,并且因此不用输出给无损编码单元16。因此,压缩图像中的运动向量信息可被减少。
在步骤S23,无损编码单元16对从量化单元15输出的经量化变换系数进行编码。即是说,差分图像经过诸如可变长度编码、算术编码等的无损编码,并被压缩。此时,在步骤S22中输入无损编码单元16的来自帧内预测单元24的与最优帧内预测模式有关的信息或来自运动预测/补偿单元26的与最优帧间预测模式有关的信息也被编码并被添加到头部信息中。
在步骤S24,累积缓冲器17累积差分图像作为压缩图像。累积在累积缓冲器17中的压缩图像被读出,并且经由发送路径被发送给解码侧。
在步骤S25,速率控制单元30基于累积在累积缓冲器17中的压缩图像,来控制量化单元15的量化操作的速率以使得不会发生上溢或下溢。
[预测处理的描述]
接下来,将参考图13的流程图描述图12的步骤S21中的预测处理。
当从画面重布置缓冲器12提供来的将被处理的图像是用于帧内处理的块图像时,将被参考的经解码图像从帧存储器22被读出,并经由开关23被提供给帧内预测单元24。基于这些图像,在步骤S31,帧内预测单元24针对所有候选预测模式来对将被处理的块的像素执行帧内预测。注意,未经过解块滤波器21的解块滤波的像素也被用于将被参考的经解码像素。
将在后面参考图24描述步骤S31中的帧内预测处理的细节,由于该处理,在所有候选帧内预测模式中执行帧内预测,并且针对所有候选帧内预测模式计算成本函数值。然后基于计算出的成本函数值从所有帧内预测模式中选择一个帧内预测模式作为最优帧内预测模式。
当从画面重布置缓冲器12提供来的将被处理的图像是用于帧间处理的图像时,将被参考的图像从帧存储器22被读出,并经由开关23被提供给运动预测/补偿单元26。在步骤S32,运动预测/补偿单元26基于这些图像来执行运动预测/补偿处理。即是说,运动预测/补偿单元26参考从帧存储器22提供来的图像并且针对所有候选帧间预测模式执行运动预测处理。
将在后面参考图25描述步骤S32中的帧间运动预测处理的细节,由于该处理,针对所有候选帧间预测模式执行预测处理,并且针对所有候选帧间预测模式计算出成本函数值。
此外,当从画面重布置缓冲器12提供来的将被处理的图像是用于帧内处理的块图像时,将被参考的图像从帧存储器22被读出,并还经由帧内预测单元24被提供给帧内TP运动预测/补偿单元25。在步骤S33,帧内TP运动预测/补偿单元25在帧内模板预测模式中执行帧内模板运动预测处理。
将在后面参考图26描述步骤S33中的帧内模板运动预测处理的细节,由于该处理,在帧内模板预测模式中执行运动预测处理,并且对于该帧内模板预测模式计算出成本函数值。通过帧内模板预测模式的运动预测处理生成的预测图像及其成本函数值随后被提供给帧内预测单元24。
在步骤S34,帧内预测单元24将对于在步骤S31中选择的帧内预测模式的成本函数值与对于在步骤S33中选择的帧内模板预测模式的成本函数值相比较。帧内预测单元24然后将给出最小值的预测模式确定为最优帧内预测模式,并且将在该最优帧内预测模式中生成的预测图像及其成本函数值提供给预测图像选择单元29。
此外,当从画面重布置缓冲器12提供来的将被处理的图像是用于帧间处理的图像时,将被参考的图像从帧存储器22被读出,并经由开关23和运动预测/补偿单元26被提供给帧间TP运动预测/补偿单元27。在步骤S35,帧间TP运动预测/补偿单元27基于这些图像来在帧间模板预测模式中执行帧间模板运动运动预测。
将在后面参考图28描述步骤S35中的帧间模板运动预测处理的细节,由于该处理,在帧间模板预测模式中执行运动预测处理,并且计算出对于该帧间模板预测模式的成本函数值。通过帧间模板预测模式中的运动预测处理生成的预测图像及其成本函数值随后被提供给运动预测/补偿单元26。
在步骤S36,运动预测/补偿单元26将对于在步骤S32中选择的最优帧间预测模式的成本函数值与对于在步骤S35中选择的帧间模板预测模式的成本函数值相比较。运动预测/补偿单元26然后将给出最小值的预测模式确定为最优帧间预测模式,并且运动预测/补偿单元26将在该最优帧间预测模式中生成的预测图像及其成本函数值提供给预测图像选择单元29。[利用H.264/AVC格式的帧内预测处理的描述]
接下来,将描述在H.264/AVC格式中规定的用于帧内预测的模式。
首先,将描述对于亮度信号的帧内预测模式。亮度信号帧内预测模式包括以4×4像素为单位的九种预测模式,和以16×16像素的宏块为单位的四种预测模式。
在图14的示例中,赋予每个块的数字-1至25表示每个块在比特流中的顺序(解码侧处的处理顺序)。就亮度信号而言,宏块被划分为4×4像素,并且DCT针对4×4像素被执行。另外,在16×16像素的帧内预测模式的情况中,各块的直流分量被聚集并且4×4矩阵被生成,并且其进一步经过正交变换,如块-1所指示的。
现在,就色差信号而言,宏块被划分为4×4像素,并且DCT针对4×4像素被执行,之后各块的直流分量被聚集并且2×2矩阵被生成,并且其进一步经过正交变换,如块16和17所指示的。
此外,对于高级规范(High Profile),对于第8阶DCT块规定了以8×8像素块为单位的预测模式,该方法依照接下来描述的4×4像素帧内预测模式方法。
图15和图16是图示出九种亮度信号4×4像素帧内预测模式(Intra_4x4_pred_mode)的示图。除了指示平均值(DC)预测的模式2以外的八种模式分别对应于图17中由0、1和3至8指示的方向。
将参考图18描述Intra_4x4_pred_mode的九种类型。在图18的示例中,像素a至p表示将经过帧内处理的对象块,并且像素值A至M表示属于相邻块的像素的像素值。即是说,像素a至p是从画面重布置缓冲器12读出的将被处理的图像,并且像素值A至M是从帧存储器22读出的将被参考的经解码图像的像素值。
在图15和图16中的每个帧内预测模式的情况中,利用属于相邻块的像素的像素值A至M如下这样来生成像素a至p的预测像素值。注意,当像素值“可用”时,这表示该像素是可用的而没有诸如处于图像帧的边缘或尚未被编码之类的原因,并且当像素值“不可用”时,这表示该像素由于诸如处于图像帧的边缘或尚未被编码之类的原因而不可用。
模式0是垂直预测(Vertical Prediction)模式,并且仅当像素值A至D“可用”时被应用。在此情况中,像素a至p的预测值如下面的表达式(7)这样被生成。
像素a,e,i,m的预测像素值=A
像素b,f,j,n的预测像素值=B
像素c,g,k,o的预测像素值=C
像素d,h,l,p的预测像素值=D    …(7)
模式1是水平预测(Horizontal Prediction)模式,并且仅当像素值I至L“可用”时被应用。在此情况中,像素a至p的预测值如下面的表达式(8)这样被生成。
像素a,b,c,d的预测像素值=I
像素e,f,g,h的预测像素值=J
像素i,j,k,l的预测像素值=K
像素m,n,o,p的预测像素值=L    …(8)
模式2是DC预测(DC Prediction)模式,并且当像素值A,B,C,D,I,J,K,L都“可用”时预测像素值如下面的表达式(9)这样被生成。
(A+B+C+D+I+J+K+L+4)>>3    …(9)
此外,当像素值A,B,C,D都“不可用”时,如下面的表达式(10)这样来生成预测像素值。
(I+J+K+L+2)>>2    …(10)
此外,当像素值I,J,K,L都“不可用”时,如下面的表达式(11)这样来生成预测像素值。
(A+B+C+D+2)>>2    …(11)
此外,当像素值A,B,C,D,I,J,K,L都“不可用”时,128被生成作为预测像素值。
模式3是斜_向下_向左预测(Diagonal_Down_Left Prediction)模式,并且预测像素值仅当像素值A,B,C,D,I,J,K,L,M“可用”时被生成。在此情况中,像素a至p的预测像素值如下面的表达式(12)这样被生成。
像素a的预测像素值=(A+2B+C+2)>>2
像素b,e的预测像素值=(B+2C+D+2)>>2
像素c,f,i的预测像素值=(C+2D+E+2)>>2
像素d,g,j,m的预测像素值=(D+2E+F+2)>>2
像素h,k,n的预测像素值=(E+2F+G+2)>>2
像素l,o的预测像素值=(F+2G+H+2)>>2
像素p的预测像素值=(G+3H+2)>>2       …(12)
模式4是斜_向下_向右预测(Diagonal_Down_Right Prediction)模式,并且预测像素值仅当像素值A,B,C,D,I,J,K,L,M“可用”时被生成。在此情况中,像素a至p的预测像素值如下面的表达式(13)这样被生成。
像素m的预测像素值=(J+2K+L+2)>>2
像素i,n的预测像素值=(I+2J+K+2)>>2
像素e,j,o的预测像素值=(M+2I+J+2)>>2
像素a,f,k,p的预测像素值=(A+2M+I+2)>>2
像素b,g,l的预测像素值=(M+2A+B+2)>>2
像素c,h的预测像素值=(A+2B+C+2)>>2
像素d的预测像素值=(B+2C+D+2)>>2        …(13)
模式5是斜_垂直_向右预测(Diagonal_Vertical_Right Prediction)模式,并且预测像素值仅当像素值A,B,C,D,I,J,K,L,M“可用”时被生成。在此情况中,像素a至p的预测像素值如下面的表达式(14)这样被生成。
像素a,j的预测像素值=(M+A+1)>>1
像素b,k的预测像素值=(A+B+1)>>1
像素c,l的预测像素值=(B+C+1)>>1
像素d的预测像素值=(C+D+1)>>1
像素e,n的预测像素值=(I+2M+A+2)>>2
像素f,o的预测像素值=(M+2A+B+2)>>2
像素g,p的预测像素值=(A+2B+C+2)>>2
像素h的预测像素值=(B+2C+D+2)>>2
像素i的预测像素值=(M+2I+J+2)>>2
像素m的预测像素值=(I+2J+K+2)>>2      …(14)
模式6是水平_向下预测(Horizontal_Down Prediction)模式,并且预测像素值仅当像素值A,B,C,D,I,J,K,L,M“可用”时被生成。在此情况中,像素a至p的预测像素值如下面的表达式(15)这样被生成。
像素a,g的预测像素值=(M+I+1)>>1
像素b,h的预测像素值=(I+2M+A+2)>>2
像素c的预测像素值=(M+2A+B+2)>>2
像素d的预测像素值=(A+2B+C+2)>>2
像素e,k的预测像素值=(I+J+1)>>1
像素f,l的预测像素值=(M+2I+J+2)>>2
像素i,o的预测像素值=(J+K+1)>>1
像素j,p的预测像素值=(I+2J+K+2)>>2
像素m的预测像素值=(K+L+1)>>1
像素n的预测像素值=(J+2K+L+2)>>2    …(15)
模式7是垂直_向左预测(Vertical_Left Prediction)模式,并且预测像素值仅当像素值A,B,C,D,I,J,K,L,M“可用”时被生成。在此情况中,像素a至p的预测像素值如下面的表达式(16)这样被生成。
像素a的预测像素值=(A+B+1)>>1
像素b,i的预测像素值=(B+C+1)>>1
像素c,j的预测像素值=(C+D+1)>>1
像素d,k的预测像素值=(D+E+1)>>1
像素l的预测像素值=(E+F+1)>>1
像素e的预测像素值=(A+2B+C+2)>>2
像素f,m的预测像素值=(B+2C+D+2)>>2
像素g,n的预测像素值=(C+2D+E+2)>>2
像素h,o的预测像素值=(D+2E+F+2)>>2
像素p的预测像素值=(E+2F+G+2)>>2      …(16)
模式8是水平_向上预测(Horizontal_Up Prediction)模式,并且预测像素值仅当像素值A,B,C,D,I,J,K,L,M“可用”时被生成。在此情况中,像素a至p的预测像素值如下面的表达式(17)这样被生成。
像素a的预测像素值=(I+J+1)>>1
像素b的预测像素值=(I+2J+K+2)>>2
像素c,e的预测像素值=(J+K+1)>>1
像素d,f的预测像素值=(J+2K+L+2)>>2
像素g,i的预测像素值=(K+L+1)>>1
像素h,j的预测像素值=(K+3L+2)>>2
像素k,l,m,n,o,p的预测像素值=L          …(17)
接下来,将参考图19描述用于4×4像素亮度信号的帧内预测模式(Intra_4x4_pred_mode)编码方法。在图19的示例中,示出了由4×4像素组成的将被编码的对象块C,并且示出了与对象块C相邻的并且由4×4像素组成的块A和块B。
在此情况中,对象块C中的Intra_4x4_pred_mode与块A和块B中的Intra_4x4_pred_mode被认为具有高相关性。利用该相关性来执行下面的编码处理使得能够实现更高的编码效率。
即是说,在图19的示例中,将块A和块B中的Intra_4x4_pred_mode分布作为Intra_4x4_pred_modeA和Intra_4x4_pred_modeB,则MostProbableMode如下面的表达式(18)这样被定义。
MostProbableMode=Min(Intra_4x4_pred_modeA,Intra_4x4_pred_modeB)          …(18)
即是说,在块A和块B中,被分配有较小mode_number的块被当作MostProbableMode。
存在被定义为关于比特流中的对象块C的参数的prev_intra4x4_pred_mode_flag[luma4x4BlkIdx]和rem_intra4x4_pred_mode[luma4x4BlkIdx]的两个值,其中,通过基于下面的表达式(19)所示的伪代码的处理来执行解码处理,因此可获得关于对象块C的Intra_4x4_pred_mode的值Intra4x4PredMode[luma4x4BlkIdx]。
接下来,将进行有关16×16像素帧内预测模式的描述。图20和图21是图示出四种16×16像素亮度信号帧内预测模式(Intra_16x16_pred_mode)的示图。
将参考图22描述这四种帧内预测模式。在图22的示例中,示出了将经过帧内处理的对象宏块A,并且P(x,y);x,y=-1,0,…,15表示与对象宏块A相邻的像素的像素值。
模式0是垂直预测(Vertical Prediction)模式,并且仅当P(x,-1);x,y=-1,0,…,15“可用”时被应用。在此情况中,如下面的表达式(20)这样来生成对象宏块A中的每个像素的预测值Pred(x,y)。
Pred(x,y)=P(x,-1);x,y=0,…,15      …(20)
模式1是水平预测(Horizontal Prediction)模式,并且仅当P(-1,y);x,y=-1,0,…,15“可用”时被应用。在此情况中,如下面的表达式(21)这样来生成对象宏块A中的每个像素的预测值Pred(x,y)。
Pred(x,y)=P(-1,y);x,y=0,…,15       …(21)
模式2是DC预测(DC Prediction)模式,并且当P(x,-1)和P(-1,y);x,y=-1,0,…,15都“可用”时,对象宏块A中的每个像素的预测值Pred(x,y)如下面的表达式(22)这样被生成。
[数式5]
Pred ( x , y ) = [ &Sigma; x &prime; = 0 15 P ( x &prime; , - 1 ) + &Sigma; y &prime; = 0 15 P ( - 1 , y &prime; ) + 16 ] > > 5
withx , y = 0 , . . . , 15 . . . ( 22 )
此外,当P(x,-1);x,y=-1,0,…,15“不可用”时,对象宏块A中的每个像素的预测值Pred(x,y)如下面的表达式(23)这样被生成。
[数式6]
Pred ( x , y ) = [ &Sigma; y &prime; = 0 15 P ( - 1 , y &prime; ) + 8 ] > > 4 withx , y = 0 , . . . , 15 . . . ( 23 )
当P(-1,y);x,y=-1,0,…,15“可用”时,对象宏块A中的每个像素的预测值Pred(x,y)如下面的表达式(24)这样被生成。
[数式7]
Pred ( x , y ) = [ &Sigma; y &prime; = 0 15 P ( x &prime; , - 1 ) + 8 ] > > 4 withx , y = 0 , . . . , 15 . . . ( 24 )
当P(x,-1)和P(-1,y);x,y=-1,0,…,15都“不可用”时,128被用作预测像素值。
模式3是平面预测(Plane Prediction)模式,并且仅当P(x,-1)和P(-1,y);x,y=-1,0,…,15都“可用”时被应用。在此情况中,对象宏块A中的每个像素的预测值Pred(x,y)如下面的表达式(25)这样被生成。
[数式8]
Pred(x,y)=Clip1((a+b·(x-7)+c·(y-7)+16)>>5)
a=16·(P(-1,15)+P(15,-1))
b=(5·H+32)>>6
c=(5·V+32)>>6
H = &Sigma; x = 1 8 x &CenterDot; ( P ( 7 + x , - 1 ) - P ( 7 - x , - 1 ) )
V = &Sigma; y = 1 8 y &CenterDot; ( P ( - 1,7 + y ) - P ( - 1,7 - y ) ) . . . ( 25 )
接下来,描述对于色差信号的帧内预测模式。图23是图示出四种色差信号帧内预测模式(Intra_chroma_pred_mode)的示图。色差信号帧内预测模式可以与亮度信号帧内预测模式相独立地来设置。用于色差信号的帧内预测模式遵循上述亮度信号16×16像素帧内预测模式。
然而,注意,亮度信号16×16像素帧内预测模式处理16×16像素块,而用于色差信号的帧内预测模式处理8×8像素块。此外,模式No.在这两者之间是不对应的,如从上述图20和图23可见。
根据上面参考图22描述的对作为亮度信号16×16像素帧内预测模式的对象的宏块的像素值以及相邻像素值的定义,与用于帧内处理的宏块(在色差信号的情况中为8×8像素)相邻的像素值将被取作P(x,y);x,y=-1,0,…,7。
模式0是DC预测(DC Prediction)模式,并且当P(x,-1)和P(-1,y);x,y=-1,0,…,7都“可用”时,对象宏块A中的每个像素的预测像素值Pred(x,y)如下面的表达式(26)这样被生成。
[数式9]
Pred ( x , y ) = ( ( &Sigma; n = 0 7 ( P ( - 1 , n ) + P ( n , - 1 ) ) ) + 8 ) > > 4
withx , y = 0 , . . . , 7 . . . ( 26 )
此外,当P(-1,y);x,y=-1,0,…,7“不可用”时,对象宏块A中的每个像素的预测像素值Pred(x,y)如下面的表达式(27)这样被生成。
[数式10]
Pred ( x , y ) = [ ( &Sigma; n = 0 7 P ( n , - 1 ) ) + 4 ] > > 3 withx , y = 0 , . . . , 7 . . . ( 27 )
此外,当P(x,-1);x,y=-1,0,…,7“不可用”时,对象宏块A中的每个像素的预测像素值Pred(x,y)如下面的表达式(28)这样被生成。
[数式11]
Pred ( x , y ) = [ ( &Sigma; n = 0 7 P ( - 1 , n ) ) + 4 ] > > 3 withx , y = 0 , . . . , 7 . . . ( 28 )
模式1是水平预测(Horizontal Prediction)模式,并且仅当P(-1,y);x,y=-1,0,…,7“可用”时被应用。在此情况中,如下面的表达式(29)这样来生成对象宏块A的每个像素的预测像素值Pred(x,y)。
Pred(x,y)=P(-1,y);x,y=0,…,7  …(29)
模式2是垂直预测(Vertical Prediction)模式,并且仅当P(x,-1);x,y=-1,0,…,7“可用”时被应用。在此情况中,如下面的表达式(30)这样来生成对象宏块A中的每个像素的预测像素值Pred(x,y)。
Pred(x,y)=P(x,-1);x,y=0,…,7  …(30)
模式3是平面预测(Plane Prediction)模式,并且仅当P(x,-1)和P(-1,y);x,y=-1,0,…,7“可用”时被应用。在此情况中,如下面的表达式(31)这样来生成对象宏块A中的每个像素的预测像素值Pred(x,y)。
[数式12]
Pred(x,y)=Clip1(a+b·(x-3)+c·(y-3)+16)>>5;x,y=0,…,7
a=16·(P(-1,7)+P(7,-1))
b=(17·H+16)>>5
c=(17·V+16)>>5
H = &Sigma; x = 1 4 x &CenterDot; [ P ( 3 + x , - 1 ) - P ( 3 - x , - 1 ) ]
V = &Sigma; y = 1 4 y &CenterDot; [ P ( - 1,3 + y ) - P ( - 1,3 - y ) ] . . . ( 31 )
如上所述,对于亮度信号帧内预测模式,存在九种4×4像素和8×8像素块单位预测模式和四种16×16像素宏块单位预测模式。此外,对于色差信号帧内预测模式,存在四种8×8像素块单位预测模式。色差信号帧内预测模式可以与亮度信号帧内预测模式分开来设置。
对于亮度信号4×4像素和8×8像素帧内预测模式,一种帧内预测模式被定义用于每个4×4像素和8×8像素亮度信号块。对于亮度信号16×16像素帧内预测模式和色差帧内预测模式,一种预测模式被定义用于每个宏块。
注意,预测模式的类型对应于上述图17中的No.0,1,3至8所指示的方向。预测模式2是平均值预测。
[帧内预测处理的描述]
接下来,将参考图24的流程图描述图13的步骤S31中的帧内预测处理,该帧内预测处理是针对这些帧内预测模式执行的处理。注意,在图24的示例中,将把亮度信号的情况描述为示例。
在步骤S41,帧内预测单元24对于上述亮度信号的4×4像素、8×8像素和16×16像素的每种帧内预测模式执行帧内预测。
例如,将参考上述的图18来描述4×4像素帧内预测模式的情况。当从画面重布置缓冲器12读出的将被处理的图像(例如,像素a至p)是将经过帧内处理的块图像时,将被参考的解码图像(由像素值A至M指示的像素)从帧存储器22被读出并经由开关23被提供给帧内预测单元24。
基于这些图像,帧内预测单元24对将被处理的块的像素执行帧内预测。在每个帧内预测模式中执行该帧内预测处理使得在每个帧内预测模式中生成预测图像。注意,未经解块滤波器21的解块滤波的像素被用作将被参考的解码信号(由像素值A至M指示的像素)。
在步骤S42,帧内预测单元24计算4×4像素、8×8像素和16×16像素的每种帧内预测模式的成本函数值。现在,高复杂度模式或低复杂度模式的一种技术被用于计算成本函数值,如在作为H.264/AVC格式中的参考软件的JM(联合模型)中所规定的。
即是说,在高复杂度模式中,针对所有候选预测模式执行有关临时编码处理来作为步骤S41的处理。然后如下面的表达式(32)中所示这样来计算每个预测模式的成本函数值,并且产生最小值的预测模式被选作最优预测模式。
成本(模式)=D+λ·R  …(32)
D是原始图像与解码图像之差(噪声),R是包括正交变换系数的所生成代码量,并且λ是被给出作为量化参数QP的函数的拉格朗日乘子。
另一方面,在低复杂度模式中,对于步骤S41的处理,针对所有候选预测模式,生成预测图像,并且执行有关于诸如运动向量信息和预测模式信息之类的头部比特的计算。然后针对每个预测模式计算出下面的表达式(33)中所示的成本函数值,并且产生最小值的预测模式被选作最优预测模式。
成本(模式)=D+QPtoQuant(QP)·Header_Bit  …(33)
D是原始图像与解码图像之差(噪声),Header_Bit是用于预测模式的头部比特,并且QPtoQuant是被给出作为量化参数QP的函数的函数。
在低复杂度模式中,仅仅针对所有预测模式生成预测图像,并且无需执行编码处理和解码处理,因此必须执行的计算的量较小。
在步骤S43,帧内预测单元24针对4×4像素、8×8像素和16×16像素的每种帧内预测模式确定最优模式。即是说,如上所述,在帧内4×4像素预测模式和帧内8×8像素预测模式的情况中,存在九种预测模式,并且在帧内16×16像素预测模式中存在四种预测模式。因此,帧内预测单元24基于在步骤S42中计算出的成本函数值来从这些中确定最优帧内4×4像素预测模式、最优帧内8×8像素预测模式和最优帧内16×16像素预测模式。
在步骤S44,帧内预测单元24基于在步骤S42中计算出的成本函数值,从针对4×4像素、8×8像素和16×16像素的每种帧内预测模式选出的最优模式中来选择一个帧内预测模式。即是说,从针对4×4像素、8×8像素和16×16像素的每种帧内预测模式确定的最优模式中选择其成本函数值最小的帧内预测模式。
[帧间运动预测处理的描述]
接下来,将参考图25的流程图描述图13的步骤S32中的帧间运动预测处理。
在步骤S51,运动预测/补偿单元26针对上面参考图3描述的由16×16像素至4×4像素组成的八种帧间预测模式中的每种来确定运动向量和参考信息。即是说,在每种帧间预测模式中确定将被处理的块的运动向量和参考图像。
在步骤S52,运动预测/补偿单元26针对由16×16像素至4×4像素组成的八种帧间预测模式中的每种,基于在步骤S51中确定的运动向量,来对参考图像执行运动预测和补偿处理。作为该运动预测和补偿处理的结果,在每个帧间预测模式中生成预测图像。
在步骤S53,运动预测/补偿单元26基于针对由16×16像素至4×4像素组成的八种帧间预测模式所确定的运动向量来生成将被添加到压缩图像的运动向量图像。此时,上面参考图6描述的运动向量生成方法被用来生成运动向量信息。
所生成的运动向量信息还用于在下面的步骤S54中计算成本函数值,并且当对应预测图像最终被预测图像选择单元29选择时,其与模式信息和参考帧信息一起被输出给无损编码单元16。
在步骤S54,运动预测/补偿单元26针对由16×16像素至4×4像素组成的八种帧间预测模式中的每种帧间预测模式,计算上述表达式(32)或表达式(33)所示的成本函数值。这里计算出的成本函数值在上述图13的步骤S36中确定最优帧间预测模式时使用。
[帧内模板运动预测处理的描述]
接下来,将参考图26的流程图描述图13的步骤S33中的帧内模板预测处理。
块地址计算单元41计算将被编码的对象块在其宏块内的地址,并且将计算出的地址信息提供给模板像素设置单元28。
在步骤S61,模板像素设置单元28基于来自块地址计算单元41的地址信息来对帧内模板预测模式的对象块执行模板像素设置处理。将在后面参考图30来描述该模板像素设置处理的细节。由于该处理,构成用于帧内模板预测模式的对象块的模板的像素被设置。
在步骤S62,运动预测单元42和运动补偿单元43执行帧内模板预测模式的预测和补偿处理。即是说,运动预测单元42被输入了从画面重布置缓冲器12读出的用于帧内预测的图像以及从帧存储器22提供来的参考图像。运动预测单元42还被输入了由对象块TP设置单元62和参考块TP设置单元63设置的对象块和参考块模板信息。
运动预测单元42利用通过步骤S61中的处理设置的对象块和参考块模板像素值,使用用于帧内预测的图像和参考图像来执行帧内模板预测模式运动预测。此时,计算出的运动向量和参考图像被提供给运动补偿单元43。运动补偿单元43使用由运动预测单元42计算出的运动向量和参考图像来执行运动补偿处理并生成预测图像。
然后,在步骤S63,运动补偿单元43计算针对帧内模板预测模式的在上述表达式(32)或表达式(33)中所示的成本函数值。运动补偿单元43将所生成的预测图像和计算出的成本函数值提供给帧内预测单元24。该成本函数值被用于在上述图13的步骤S34中确定最优帧内预测模式。
[帧内模板匹配方法的描述]
图27是用于描述帧内模板匹配方法的示图。在图27的示例中,4×4像素的块A以及由已编码像素构成的预定搜索范围E在未示出的将被编码对象帧上被示出,所述已编码像素位于由X×Y(=垂直×水平)像素组成的范围内。
从现在起将被编码的对象子块a在预定块A中被示出。预定块A例如是宏块、子宏块等。该对象子块a是位于组成块A的2×2像素子块中的左上部的子块。由已编码像素组成的模板区域b与对象子块a相邻。例如,当以光栅扫描顺序执行编码处理时,模板区域b是位于如图27所示的对象子块的左侧和上侧的区域,并且是与其有关的解码图像被累积在帧存储器22中的区域。
帧内TP运动预测/补偿单元25在对象帧上的预定搜索范围E内执行例如以SAD(绝对差之和)等作为成本函数值的模板匹配处理,并且搜索与模板区域b的像素值的相关性最高的区域b′。帧内TP运动预测/补偿单元25然后获取与所找到的区域b′相对应的块a′来作为关于对象块a的预测图像,并且搜索与对象块a相对应的运动向量。
因此,在利用帧内模板匹配方法的运动向量搜索处理中,解码图像被用于模板匹配处理。因此,通过预先设置预定搜索范围E,可以利用图像编码设备1和后面在图32中描述的图像解码设备101执行相同的处理。即是说,同样地在图像解码设备101中,对帧内TP运动预测/补偿单元122的配置消除了向图像解码设备101发送有关对象子块的运动向量信息的需要,因此,压缩图像中的运动向量信息可被减少。
此外,在图像编码设备1和图像解码设备101中,如上面参考图8的A至图8的D等所述的,根据预定块A内的位置(地址),来从预定块A的相邻像素设置对象块a的模板区域b。即是说,对象块a的模板区域b不是由对象块a的相邻像素构成的,而是由根据预定块A内的对象块a的位置(地址)从预定块A的相邻像素设置的像素构成的。
例如,如图27所示,当对象块a位于预定块A的左上部时,与传统技术一样,与对象块a相邻的像素被用作模板区域b。
另一方面,当对象块a位于预定块A中的右上部、左下部或右下部时,可能存在这样的情况,其中,组成预定块A的块中的一个块的像素被包括在传统模板区域b中。在此情况中,预定块A的相邻像素被设置为模板区域b的一部分,而非包括在组成预定块A的块之一中的对象块a的相邻像素的像素。因此,预定块A内的每块的处理可以通过流水线处理或并行处理来实现,并且可以提高处理效率。
虽然在图27中描述了2×2像素的对象子块的情况,然而这不是限制性的,而是还可以应用最优大小的子块,并且帧内模板预测模式中的模板和块的大小是最优的。即是说,与帧内预测单元24的情况一样,帧内模板预测模式可以在以每个帧内预测模式的块大小作为候选的情况下来实现,或者可以在固定到一个预测模式块大小的情况下来实现。模板大小相对于对象块大小可以是可变的或者可以是固定的。
[帧间模板运动预测处理的描述]
接下来,将参考图28的流程图描述图13的步骤S35中的帧间模板预测处理。
块地址计算单元51计算将被编码的对象块在其宏块内的地址,并且将计算出的地址信息提供给模板像素设置单元28。
在步骤S71,模板像素设置单元28基于来自块地址计算单元51的地址信息,对帧间模板预测模式的对象块执行模板像素设置处理。将在后面参考图30描述该模板像素设置处理的细节。由于该处理,构成与帧间模板预测模式的对象块有关的模板的像素被设置。
在步骤S72,运动预测单元52和运动补偿单元53执行针对帧间模板预测模式的运动预测和补偿处理。即是说,运动预测单元52被输入了从画面重布置缓冲器12读出的用于帧间预测的图像和从帧存储器22提供来的参考图像。运动预测单元52还被输入了由对象块TP设置单元62和参考块TP设置单元63设置的对象块和参考块模板信息。
运动预测单元52利用通过步骤S71中的处理设置的对象块和参考块模板像素值,使用用于帧间预测的图像和参考图像来执行帧间模板预测模式运动预测。此时,计算出的运动向量和参考图像被提供给运动补偿单元53。运动补偿单元53使用由运动预测单元52计算出的运动向量和参考图像来执行运动补偿处理并生成预测图像。
并且,在步骤S73,运动补偿单元53计算针对帧间模板预测模式的在上述表达式(32)或表达式(33)中所示的成本函数值。运动补偿单元53将所生成的预测图像和计算出的成本函数值提供给运动预测/补偿单元26。该成本函数值被用于在上述图13的步骤S36中确定最优帧间预测模式。
[帧间模板匹配方法的描述]
图29是用于描述帧间模板匹配方法的示图。
在图29的示例中,示出了将被编码的对象帧(图片)以及在搜索运动向量时被参考的参考帧。在对象帧中,示出了从现在起将被编码的对象块A以及与对象块A相邻的并且由已编码像素组成的模板区域B。例如,如图29所示,当以光栅扫描顺序执行编码时模板区域B是对象块A的左侧和上侧的区域,并且是其中的解码图像被累积在帧存储器22中的区域。
帧间TP运动预测/补偿单元27在参考帧上的预定搜索范围E内执行例如以SAD等作为成本函数值的模板匹配处理,并且搜索与模板区域B的像素值的相关性最高的区域B′。帧间TP运动预测/补偿单元27然后获取与所找到的区域B′相对应的块A′来作为关于对象块A的预测图像,并且搜索与对象块A相对应的运动向量P。
如上所述,在利用帧间模板匹配方法的运动向量搜索处理中,解码图像被用于模板匹配处理。因此,通过预先设置预定搜索范围E,可以利用图像编码设备1和图像解码设备101执行相同的处理。即是说,同样地在图像解码设备101中,对帧间TP运动预测/补偿单元124的配置消除了向图像解码设备发送有关对象块A的运动向量P信息的需要,因此,压缩图像中的运动向量信息可被减少。
此外,在图像编码设备1和图像解码设备101中,当对象块A是构成预定块的块时,该模板区域B是根据预定块内的位置(地址)从预定块的相邻像素来设置的。注意,预定块例如是宏块、子宏块等。
如上面参考图8的A至图8的D等所述的,例如,当对象块A位于预定块的左上部时,与对象块A相邻的像素被用作模板区域B,这与传统技术一样。
另一方面,当对象块A位于预定块A中的右上部、左下部或右下部时,可能存在这样的情况,其中,组成预定块的块中的一个块的像素被包括在传统模板区域B中。在此情况中,预定块的相邻像素被设置为模板区域B的一部分,而非包括在组成预定块的块之一中的对象块A的相邻像素的像素。因此,预定块内的每块的处理可以通过流水线处理或并行处理来实现,并且可以提高处理效率。
注意,帧间模板预测模式中的模板和块的大小是最优的。即是说,与运动预测/补偿单元26的情况一样,其可以在固定到上面参考图3描述的由16×16至4×4像素组成的八种块大小中的一种块大小的情况下被执行,或者所有块可以是候选。模板大小相对于对象块大小可以是可变的或者可以是固定的。
[模板像素设置处理的描述]
接下来,将参考图30的流程图描述图26的步骤S61或图28的步骤S71中的模板像素设置处理。该处理是分别由对象块TP设置单元62和参考块TP设置单元63对对象块和参考块执行的处理,但是在图30的示例中,将描述对象块TP设置单元62的情况。
注意,在图30的示例中,将在模板被划分为上部模板、左上部模板和左部模板的情况下进行描述。上部模板是与块或宏块等的上面相邻的模板的一部分。左上部模板是在左上部与块或宏块等相邻的模板的一部分。左部模板是在左边与块或宏块等的相邻的模板的一部分。
将被编码的对象块在其宏块内的地址信息从块地址计算单元41或块地址计算单元51被提供给块分类单元61。
块分类单元61对对象块是宏块内的左上块、右上块、左下块或右下块中的哪个进行分类。即是说,这对对象块是图8的A至图8的D中的块B0、块B1、块B2和块B3中的哪个进行分类。块分类单元61然后将对象块是哪块的信息提供给对象块TP设置单元62。
基于来自块分类单元61的信息,在步骤S81,对象块TP设置单元62判断对象块在宏块内的位置是否是左上、右上和左下之一。在步骤S81,当判定对象块在宏块内的位置是左上、右上和左下之一时,在步骤S82,对象块TP设置单元62使用与对象块相邻的像素作为左上部模板。
即是说,当对象块在宏块内的位置位于左上时(图8的A中的块B0),与块B0的左上部相邻的像素LUB0被用作左上部模板。当对象块在宏块内的位置位于右上时(图8的B中的块B1),与块B1的左上部相邻的像素LUB1被用作左上部模板。当对象块在宏块内的位置位于左下时(图8的C中的块B2),与块B2的左上部相邻的像素LUB2被用作左上部模板。
当在步骤S81判定对象块在宏块内的位置不是左上、右上和左下时,在步骤S83,对象块TP设置单元62使用与宏块相邻的像素。即是说,当对象块在宏块内的位置位于右下时(图8的D中的块B3),与宏块相邻的像素LUB0(具体地,在图8的D中在块B1的左上方的部分)被用作左上部模板。
接下来,在步骤S84,对象块TP设置单元62判断对象块在宏块内的位置是否是左上和右上中的一者。在步骤S84,当判定对象块在宏块内的位置是左上和右上中的一者时,在步骤S85,对象块TP设置单元62使用与对象块相邻的像素作为上部模板。
即是说,当对象块在宏块内的位置位于左上时(图8的A中的块B0),则与块B0的上部相邻的像素UB0被用作上部模板。当对象块在宏块内的位置位于右上时(图8的B中的块B1),则与块B1的上部相邻的像素UB1被用作上部模板。
当在步骤S84判定对象块在宏块内的位置既不是左上也不是右上时,则在步骤S86,对象块TP设置单元62使用与宏块相邻的像素作为上部模板。
即是说,当对象块在宏块内的位置位于左下时(图8的C中的块B2),与宏块相邻的像素UB0(具体地,图8的A中的块B0之上的部分)被用作上部模板。当对象块在宏块内的位置位于右下时(图8的D中的块B3),与宏块相邻的像素UB1(具体地,图8的D中的块B1之上的部分)被用作上部模板。
在步骤S87,对象块TP设置单元62判断对象块在宏块内的位置是否是左上和左下中的一者。在步骤S87,当判定对象块在宏块内的位置是左上和左下中的一者时,则在步骤S88,对象块TP设置单元62使用与对象块相邻的像素作为左部模板。
即是说,当对象块在宏块内的位置位于左上时(图8的A中的块B0),则与块B0的左部相邻的像素LB0被用作左部模板。当对象块在宏块内的位置位于左下时(图8的C中的块B2),则与块B2的左部相邻的像素LB2被用作左部模板。
当在步骤S87判定对象块在宏块内的位置既不是左上也不是左下时,则在步骤S89,对象块TP设置单元62使用与宏块相邻的像素作为左部模板。
即是说,当对象块在宏块内的位置位于右上时(图8的B中的块B1),与宏块相邻的像素LB0(具体地,块B0左边的部分)被用作左部模板。当对象块在宏块内的位置位于右下时(图8的D中的块B3),与宏块相邻的像素LB2(具体地,块B2左边的部分)被用作左部模板。
如上所述,是将与对象块相邻的像素还是将与其宏块相邻的像素用作构成模板的像素是根据对象块在宏块内的位置来设置的。因此,与对象块的宏块相邻的像素总是被用作模板,因此可以通过并行处理或流水线处理来实现对宏块内的块的处理。
[模板像素设置的优点的示例]
将利用图31的A至图31的C中的时序图来描述上述模板像素设置的优点。在图31的A至图31的C的示例中,示出了这样的示例,其中,针对每块依次执行<存储器读出>、<运动预测>、<运动补偿>和<解码处理>。
图31的A图示出了使用传统模板的情况中的处理的时序图。图31的B图示出了在使用由模板像素设置单元28设置的模板的情况中能够进行的流水线处理的时序图。图31的C图示出了在使用由模板像素设置单元28设置的模板的情况中能够进行的并行处理的时序图。
在使用传统模板的设备中,当执行上述图8的B中的块B1的处理时,块B0的经解码像素的像素值被用作模板的一部分,因此必须等待其像素值的生成。
因此,如图31的A所示,在针对块B0依次执行了<存储器读出>、<运动预测>、<运动补偿>和<解码处理>并且解码像素被写入存储器之后才能执行块B1的<存储器读出>。即,在传统上,难以通过流水线处理或并行处理来执行块B0和块B1的处理。
相比之下,在使用由模板像素设置单元28设置的模板的情况中,与块B0(宏块MB)的左部相邻的像素LB0取代块B0的解码像素被用作块B1的模板。
因此,当执行块B1的处理时不必等待生成块B0的解码像素。因此,例如图31的B所示的,在针对块B0依次执行了<存储器读出>、<运动预测>和<运动补偿>之后,可以与针对块B0的<解码处理>并行地执行针对块B1的<存储器读出>。即是说,可以通过流水线处理来执行块B0和块B1的处理。
替代地,如图31的C所示,针对块B1的<存储器读出>可以与块B0的<存储器读出>并行地执行,针对块B1的<运动预测>可以与块B0的<运动预测>并行地执行,针对块B1的<运动补偿>可以与块B0的<运动补偿>并行地执行,并且针对块B 1的<解码处理>可以与块B0的<解码处理>并行地执行。即是说,可以通过并行处理来执行块B0和块B1的处理。
通过以上处理,宏块内的处理效率可被提高。注意,虽然通过图31的A至图31的C描述了对两个块执行并行或流水线处理的示例,然而当然可以以相同方式对三块或四块执行并行或流水线处理。
已被编码的压缩图像经由预定传送路径被传送,并且由图像解码设备解码。
[图像解码设备的配置示例]
图32图示出了作为应用了本发明的图像处理设备的图像解码设备的实施例的配置。
图像解码设备101包括累积缓冲器111、无损解码单元112、逆量化单元113、逆正交变换单元114、计算单元115、解块滤波器116、画面重布置缓冲器117、D/A转换器118、帧存储器119、开关120、帧内预测单元121、帧内模板运动预测/补偿单元122、运动预测/补偿单元123、帧间模板运动预测/补偿单元124、模板像素设置单元125以及开关126。
注意,在下面,帧内模板运动预测/补偿单元122和帧间模板运动预测/补偿单元124将分别被称为帧内TP运动预测/补偿单元122和帧间TP运动预测/补偿单元124。
累积缓冲器111累积发送给它的压缩图像。无损解码单元112利用与无损编码单元16的编码格式相对应的格式,对从累积缓冲器111提供来的由图2的无损编码单元66编码的信息进行解码。逆量化单元113利用与图2的量化单元15的量化格式相对应的格式来对经无损解码单元112解码的图像执行逆量化。逆正交变换单元114利用与图2的正交变换单元14的正交变换格式相对应的格式来对逆量化单元113的输出执行逆正交变换。
计算单元115将逆正交变换的输出与从开关126提供来的预测图像相加并解码。解块滤波器116去除解码图像中的块噪声,提供给帧存储器119已被累积,并且输出给画面重布置缓冲器117。
画面重布置缓冲器117执行图像的重布置。即是说,由图2的画面重布置缓冲器12以用于编码的顺序进行重布置后的帧顺序被重新布置为原始显示顺序。D/A转换器118对从画面重布置缓冲器117提供来的图像执行D/A转换,并且输出给未示出的显示器用于显示。
开关120从帧存储器119读出将经过帧间编码的图像和将被参考的图像,并且输出给运动预测/补偿单元123,并且还从帧存储器119读出将用于帧内预测的图像,并提供给帧内预测单元121。
通过对头部信息解码获得的与帧内预测模式或帧内模板预测模式有关的信息从无损解码单元112被提供给帧内预测单元121。当指示帧内预测模式的信息被提供时,帧内预测单元121基于该信息生成预测图像。当指示帧内模板预测模式的信息被提供时,帧内预测单元121将用于帧内预测的图像提供给帧内TP运动预测/补偿单元122,以使得帧内模板预测模式中的运动预测/补偿处理被执行。
帧内预测单元121将所生成的预测图像或者由帧内TP运动预测/补偿单元122生成的预测图像输出给开关126。
帧内TP运动预测/补偿单元122与图2中的帧内TP运动预测/补偿单元25同样地针对帧内模板预测模式执行运动预测和补偿处理。即是说,帧内TP运动预测/补偿单元122使用来自帧存储器119的图像来针对帧内模板预测模式执行运动预测和补偿处理,并且生成预测图像。此时,帧内TP运动预测/补偿单元122使用由模板像素设置单元125设置的像素组成的模板来作为模板。
通过针对帧内模板预测模式的运动预测和补偿处理生成的预测图像被提供给帧内预测单元121。
通过对头部信息解码获得的信息(预测模式、运动向量信息、参考帧信息)从无损解码单元112被提供给运动预测/补偿单元123。当作为帧间预测模式的信息被提供时,运动预测/补偿单元123基于运动向量信息和参考帧信息对图像进行运动预测和补偿处理,并且生成预测图像。当作为帧间模板预测模式的信息被提供时,运动预测/补偿单元123将从帧存储器119读出的将被执行帧间编码的图像以及将被参考的图像提供给帧间TP运动预测/补偿单元124。
帧间TP运动预测/补偿单元124与图2的帧间TP运动预测/补偿单元27同样地在帧间模板预测模式中执行运动预测和补偿处理。即是说,帧间TP运动预测/补偿单元124基于从帧存储器119读出的将被执行帧间编码的图像以及将被参考的图像来在帧间模板预测模式中执行运动预测和补偿处理,并且生成预测图像。此时,帧间TP运动预测/补偿单元124使用由模板像素设置单元125所设置的像素组成的模板来作为模板。
通过帧间模板预测模式中的运动预测和补偿处理生成的预测图像被提供给运动预测/补偿单元123。
模板像素设置单元125根据对象块在宏块(或子宏块)内的地址来设置用于在帧内或帧间模板预测模式中计算对象块的运动向量的模板的像素。所设置的模板的像素信息被提供给帧内TP运动预测/补偿单元122或者帧间TP运动预测/补偿单元124。
注意,执行有关帧内或帧间模板预测模式的处理的帧内TP运动预测/补偿单元122、帧间TP运动预测/补偿单元124和模板像素设置单元125基本上与图2的帧内TP运动预测/补偿单元25、帧间TP运动预测/补偿单元27和模板像素设置单元28相同地被配置。因此,上述图7所示的功能块也用于帧内TP运动预测/补偿单元122、帧间TP运动预测/补偿单元124和模板像素设置单元125的描述。
即是说,帧内TP运动预测/补偿单元122与帧内TP运动预测/补偿单元25一样,由块地址计算单元41、运动预测单元42和运动补偿单元43构成。帧间TP运动预测/补偿单元124与帧间TP运动预测/补偿单元27一样,由块地址计算单元51、运动预测单元52和运动补偿单元53构成。模板像素设置单元125与模板像素设置单元28一样,由块分类单元61、对象块TP设置单元62和参考块TP设置单元63构成。
开关126选择由运动预测/补偿单元123或帧内预测单元121生成的预测图像,并且将其提供给计算单元115。
[图像解码设备的解码处理的描述]
接下来,将参考图33的流程图描述图像解码设备101执行的解码处理。
在步骤S131,累积缓冲器111累积发送给它的图像。在步骤S132,无损解码单元112对从累积缓冲器111提供来的压缩图像进行解码。即是说,经图2的无损编码单元16编码的I图片、P图片和B图片被解码。
此时,运动向量信息和预测模式信息(表示帧内预测模式、帧间预测模式或帧间模板预测模式的信息)也被解码。
即是说,当预测模式信息是帧内预测模式信息或帧内模板预测模式信息时,预测模式信息被提供给帧内预测单元121。当预测模式信息是帧间预测模式信息或帧间模板预测模式信息时,预测模式信息被提供给运动预测/补偿单元123。此时,当存在对应的运动向量信息或参考帧信息时,其也被提供给运动预测/补偿单元123。
在步骤S133,逆量化单元113利用与图2的量化单元15的特性相对应的特性来对经无损解码单元112解码的变换系数执行逆量化。在步骤S134,逆正交变换单元114利用与图2的正交变换单元14的特性相对应的特性来对在逆量化单元113处经过逆量化的变换系数执行逆正交变换。因此,与图2的正交变换单元14的输入(计算单元13的输出)相对应的差分信息被解码。
在步骤S135,计算单元115将差分信息与在后面描述的步骤S141的处理中选择的并且经由开关126输入的预测图像相加。因此,原始图像被解码。在步骤S136,解块滤波器116对从计算单元115输出的图像执行滤波。因此,块噪声被消除。在步骤S137,帧存储器119存储经滤波的图像。
在步骤S138,帧内预测单元121、帧内TP运动预测/补偿单元122、运动预测/补偿单元123或帧间TP运动预测/补偿单元124根据从无损解码单元112提供来的预测模式信息分别执行图像预测处理。
即是说,当帧内预测模式信息从无损解码单元112被提供来时,帧内预测单元121在帧内预测模式中执行帧内预测处理。当帧内模板预测模式信息从无损解码单元112被提供来时,帧内TP运动预测/补偿单元122在帧内模板预测模式中执行运动预测/补偿处理。此外,当帧间预测模式信息从无损解码单元112被提供来时,运动预测/补偿单元123在帧间预测模式中执行运动预测/补偿处理。当帧间模板预测模式信息从无损解码单元112被提供来时,帧间TP运动预测/补偿单元124在帧间模板预测模式中执行运动预测/补偿处理。
后面将参考图34描述步骤S138中的预测处理的细节。由于该处理,由帧内预测单元121生成的预测图像、由帧内TP运动预测/补偿单元122生成的预测图像、由运动预测/补偿单元123生成的预测图像或由帧间TP运动预测/补偿单元124生成的预测图像被提供给开关126。
在步骤S139,开关126选择预测图像。即是说,由帧内预测单元121生成的预测图像、由帧内TP运动预测/补偿单元122生成的预测图像、由运动预测/补偿单元123生成的预测图像或由帧间TP运动预测/补偿单元124生成的预测图像被供应。因此,所提供的预测图像被选择并被提供给计算单元115,并且在如上所述的步骤S134中被与逆正交变换单元114的输出相加。
在步骤S140,画面重布置缓冲器117执行重布置。即是说,以原始显示顺序来对被图像编码设备1的画面重布置缓冲器12重布置用于编码的帧的顺序进行重新布置。
在步骤S141,D/A转换器118对来自画面重布置缓冲器117的图像执行D/A转换。该图像被输出给未示出的显示器,并且该图像被显示。
[图像解码设备的预测处理的描述]
接下来,将参考图34的流程图描述图33的步骤S138的预测处理。
在步骤S171,帧内预测单元121判断对象块是否经过了帧内编码。帧内预测模式信息或帧内模板预测模式信息从无损解码单元112被提供给帧内预测单元121。据此,帧内预测单元121在步骤S171中判定对象块已被帧内编码,并且处理前进到步骤S172。
在步骤S172,帧内预测单元121获取帧内预测模式信息或帧内模板预测模式信息,并且在步骤S173中判断是否是帧内预测模式。当在步骤S173中判定是帧内预测模式时,帧内预测单元121在步骤S174中执行帧内预测。
即是说,当处理对象是经过了帧内处理的图像时,所需图像从帧内存储器119被读出,并经由开关120被提供给帧内预测单元121。在步骤S174,帧内预测单元121根据在步骤S172中获得的帧内预测模式信息来执行帧内预测,并且生成预测图像。所生成的预测图像被输出给开关126。
另一方面,当在步骤S172中获得帧内模板预测模式信息时,则在步骤S173中判定其不是帧内预测模式信息,并且处理前进到步骤S175。
当将被处理的图像是经过了帧内模板预测处理的图像时,所需图像从帧存储器119被读出,并经由开关120和帧内预测单元121被提供给帧内TP运动预测/补偿单元122。此外,块地址计算单元41计算对象块的地址(其是在其宏块内被编码的对象),并且将计算出的地址信息提供给模板像素设置单元125。
基于来自块地址计算单元41的地址信息,在步骤S175,模板像素设置单元125在帧内模板预测模式中对对象块执行模板像素设置处理。该模板像素设置处理的细节基本上与上面参考图30描述的处理相同,因此将省略其描述。由于该处理,在帧内模板预测模式中构成对于对象块的模板的像素被设置。
在步骤S176,运动预测单元42和运动补偿单元43在帧内模板预测模式中执行运动预测和补偿处理。即是说,所需图像从帧存储器119被输入运动预测单元42。此外,运动预测单元42被输入了由对象块TP设置单元62和参考块TP设置单元63设置的对象块和参考块模板信息。
运动预测单元42利用通过步骤S175的处理设置的对象块和参考块模板像素值,使用来自帧存储器119的图像执行帧内模板预测模式运动预测。此时,计算出的运动向量和参考图像被提供给运动补偿单元43。运动补偿单元43使用由运动预测单元42计算出的运动向量以及参考图像来执行运动补偿处理并且生成预测图像。所生成的预测图像经由帧内预测单元121被输出给开关126。
另一方面,当在步骤S171中判定其未经帧内编码时,处理前进到步骤S177。在步骤S177,运动预测/补偿单元123从无损解码单元112获取预测模式信息等。
当作为对象处理的图像是将经过帧间处理的图像时,帧间预测模式信息、参考帧信息和运动向量信息从无损解码单元112被输入运动预测/补偿单元123。在此情况中,在步骤S177,运动预测/补偿单元123获取帧间预测模式信息、参考帧信息和运动向量信息。
然后,在步骤S178,运动预测/补偿单元123判断来自无损解码单元112的预测模式信息是否是帧间预测模式信息。当在步骤S178中判定是帧间预测模式信息时,处理前进到步骤S179。
在步骤S179,运动预测/补偿单元123执行帧间运动预测。即是说,当作为处理对象的图像是将经过帧间预测处理的图像时,所需图像从帧存储器119被读出并经由开关120被提供给运动预测/补偿单元123。在步骤S179,运动预测/补偿单元123基于在步骤S177中获得的运动向量来在帧间预测模式中执行运动预测,并生成预测图像。所生成的预测图像被输出给开关126。
另一方面,当在步骤S177中获得帧间模板预测模式信息时,则在步骤S178,判断其是否是帧间预测模式信息,并且处理前进到步骤S180。
当作为处理对象的图像是将经过帧间模板预测处理的图像时,所需图像从帧存储器119被读出并经由开关120和运动预测/补偿单元123被提供给帧间TP运动预测/补偿单元124。块地址计算单元51计算作为编码对象的对象块在其宏块内的地址,并且将计算出的地址信息提供给模板像素设置单元125。
基于来自块地址计算单元51的地址信息,在步骤S180,模板像素设置单元125在帧间模板预测模式中执行对于对象块的模板像素设置处理。该模板像素设置处理的细节基本上与上面参考图30描述的处理相同,因此将省略其描述。由于该处理,构成与帧间模板预测模式中的对象块有关的模板的像素被设置。
在步骤S181,运动预测单元52和运动补偿单元53在帧内模板预测模式中执行运动预测和补偿处理。即是说,所需图像从帧存储器被输入运动预测单元52。此外,运动预测单元52还被输入了由对象块TP设置单元62和参考块TP设置单元63设置的对象块和参考块模板信息。
运动预测单元52利用通过步骤S180中的处理设置的对象块和参考块模板像素值,使用所输入的图像来执行帧间模板预测模式运动预测。此时,计算出的运动向量和参考图像被提供给运动补偿单元53。运动补偿单元53使用由运动预测单元52计算出的运动向量和参考图像来执行运动补偿处理并生成预测图像。所生成的预测图像经由运动预测/补偿单元123被提供给开关126。
如上所述,与对象块的宏块(子宏块)相邻的像素总是被用作构成模板的像素。因此,针对宏块(子宏块)内的每块的处理可以通过并行处理或流水线处理来实现。因此,可以提高模板预测模式的预测效率。
虽然在以上描述中进行了有关模板预测模式中的处理对象大小是8×8像素的情况和4×4像素的情况的描述,然而本发明的应用范围不限于此。
即是说,对于块大小是16×8像素或8×16像素的情况,也可以通过执行与上面参考图8的A至图8的D描述的示例相同的处理,来在宏块内执行并行处理或流水线处理。此外,对于块大小是8×4像素或4×8像素的情况,也可以通过执行与上面参考图10的A至图10的E描述的示例相同的处理,来在宏块内执行并行处理或流水线处理。此外,对于块大小是2×2像素、2×4像素或4×2像素的情况,也可以通过执行与4×4像素块中相同的处理,来在4×4像素块内执行并行处理或流水线处理。
注意,在上述所有情况中,在参考块中使用的模板是位于与对象块中相同的相对位置处的模板。此外,本发明不限于亮度信号,而是还可应用于色差信号。
此外,虽然在上面的描述中描述了宏块内光栅扫描顺序的处理的示例,然而宏块内的处理顺序可以是光栅扫描顺序以外的顺序。
注意,虽然在以上描述中描述了宏块大小为16×16像素的情况,然而本发明也可应用于在“Video Coding Using Extended Block Sizes”,VCEG-AD09,ITU-Telecommunications Standardization Sector STUDY GROUPQuestion 16-Contribution 123,Jan 2009(2009年1月)中描述的扩展宏块大小。
图35是图示出扩展宏块大小的示例的示图。以上描述中的宏块大小被扩展为32×32像素。
图35的最上面一排依次示出了由32×32像素构成的宏块,该宏块被划分为(从左边起)32×32像素、32×16像素、16×32像素和16×16像素的块(分割)。图35的中间一排示出了由16×16像素构成的宏块,该宏块被划分为(从左边起)16×16像素、16×8像素、8×16像素和8×8像素的块(分割)。图35的最下面一排示出了由8×8像素构成的宏块,该宏块被划分为(从左边起)8×8像素、8×4像素、4×8像素和4×4像素的块(分割)。
即是说,32×32像素的宏块可以作为图35的最上面一排所示的32×32像素、32×16像素、16×32像素和16×16像素的块被处理。
此外,最上面一排的右侧所示的16×16像素块可以以与H.264/AVC格式相同的方式作为中间一排所示的16×16像素、16×8像素、8×16像素和8×8像素的块被处理。
此外,中间一排的右侧所示的8×8像素块可以以与H.264/AVC格式相同的方式作为最下面一排所示的8×8像素、8×4像素、4×8像素和4×4像素的块被处理。
通过采用这样的层级结构,对于扩展宏块大小,与关于16×16像素块和更小块的H.264/AVC格式的兼容性得到维持,同时将更大块定义为其超集(superset)。
本发明还可应用于如上面提出的扩展宏块大小。
此外,虽然利用H.264/AVC格式作为编码格式进行了描述,然而也可以使用其它编码格式/解码格式。
注意,本发明可应用于在经由诸如卫星广播、有线电视、因特网和蜂窝电话等之类的网络介质接收如MPEG、H.26x等那样通过诸如离散余弦变换等的正交变换和运动补偿被压缩的图像信息(比特流)时的图像编码设备和图像解码设备。此外,本发明可应用于用于诸如光或磁盘、闪存等之类的存储介质上的处理的图像编码设备和图像解码设备。此外,本发明可应用于包括在这些图像编码设备和图像解码设备等中的运动预测补偿设备。
上述处理序列可通过硬件来执行,或者可通过软件来执行。当处理序列将通过软件来执行时,构成软件的程序从程序记录介质被安装到构建于专用硬件内的计算机或者能够通过安装各种程序而执行各种功能的通用个人计算机中。
图36是图示出用于通过程序执行上述处理序列的计算机的硬件配置示例的框图。
在该计算机中,CPU(中央处理单元)201、ROM(只读存储器)202和RAM(随机存取存储器)203通过总线204互连。输入/输出接口205也被连接到总线204。连接到输入/输出接口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中。
注意,计算机执行的程序可以是根据本说明书中描述的顺序以时间顺序来执行处理的程序,或者可以是并行地或者在诸如执行调用等之类的所需定时处执行处理的程序。
本发明的实施例不限于上述实施例,并且可以在不脱离本发明的本质的情况下做出各种修改。
例如,上述图像编码设备1和图像解码设备101可被应用于可选电子设备。下面将描述其示例。
图37是图示出使用应用了本发明的图像解码设备的电视接收机的主要配置示例的框图。
图37所示的电视接收机300包括地面波调谐器313、视频解码器315、视频信号处理电路318、图形生成电路319、面板驱动电路320和显示面板321。
地面波调谐器313经由天线接收地面模拟广播的广播波信号并解调它们,并且获取被提供给视频解码器315的视频信号。视频解码器315对从地面波调谐器313提供来的视频信号进行解码处理,并且将所获得的数字分量信号提供给视频信号处理电路318。
视频信号处理电路318对从视频解码器315提供来的视频数据进行诸如降噪等之类的预定处理,并将所获得的视频数据提供给图形生成电路319。
图形生成电路319生成将被显示在显示面板321上的节目的视频数据,通过基于经由网络等提供的应用的处理生成图像数据,并将所生成的视频数据和图像数据提供给面板驱动电路320。此外,图形生成电路319适当地执行如下处理,例如,生成用于显示由用户用来选择项目等的画面的视频数据(图形),并将通过将其叠加在节目的视频数据上而获得的视频数据提供给面板驱动电路320。
面板驱动电路320基于从图形生成电路319提供来的数据来驱动显示面板321,并且在显示面板321上显示上述各种画面和节目的视频。
显示面板321由LCD(液晶显示器)等构成,并且根据面板驱动电路320的控制来显示节目等的视频。
此外,该电视接收机300还具有音频A/D(模数)转换电路314、音频信号处理电路322、回声消除/音频合成电路323、音频放大电路324和扬声器325。
地面波调谐器313通过解调所接收的广播波信号,不仅获取视频信号而且获取音频信号。地面波调谐器313将所获得的音频信号提供给音频A/D转换电路314。
音频A/D转换电路314对从地面波调谐器313提供来的音频信号进行A/D转换处理,并将所获得的数字音频信号提供给音频信号处理电路322。
音频信号处理电路322对从音频A/D转换电路314提供来的音频数据进行诸如噪声去除等之类的预定处理,并且将所获得的音频数据提供给回声消除/音频合成电路323。
回声消除/音频合成电路323将从音频信号处理电路322提供来的音频数据提供给音频放大电路324。
音频放大电路324对从回声消除/音频合成电路323提供来的音频数据进行D/A转换处理和放大处理,并调节到预定音量,然后音频从扬声器325被输出。
此外,电视接收机300还包括数字调谐器316和MPEG解码器317。
数字调谐器316经由天线接收数字广播(地面数字广播、BS(广播卫星)/CS(通信卫星)数字广播),解调并获得被提供给MPEG解码器317的MPEG-TS(运动图像专家组-传输流)。
MPEG解码器317对从数字调谐器316提供来的MPEG-TS所经受的加扰进行解扰,并提取包括了将被播放(被观看并被收听)的节目数据的流。MPEG解码器317对组成所提取流的音频分组进行解码,将所获得的音频数据提供给音频信号处理电路322,并且还对组成该流的视频分组进行解码并将所获得的视频数据提供给视频信号处理电路318。此外,MPEG解码器317将从MPEG-S提取的EPG(电子节目指南)数据经由未示出的路径提供给CPU 332。
该电视接收机300使用上述图像解码设备101作为MPEG解码器317,来以这种方式对视频分组解码。因此,以与图像解码设备101的情况相同的方式,MPEG解码器317总是可以使用与对象块的宏块相邻的像素作为模板。因此,针对宏块内的块的处理可以通过并行处理或流水线处理来实现,并且宏块内的处理效率可被提高。
从MPEG解码器317提供来的视频数据在视频信号处理电路318处按照与从视频解码器315提供来的视频数据的情况相同的方式经过预定处理。经过预定处理的视频数据然后在图形生成电路319处适当地与所生成视频数据相叠加,并经由面板驱动电路320被提供给显示面板321,并且图像被显示。
从MPEG解码器317提供来的音频数据在音频信号处理电路322处按照与从音频A/D转换电路314提供来的音频数据相同的方式经过预定处理。经过预定处理的音频数据然后经由回声消除/音频合成电路323被提供给音频放大电路324,并经过D/A转换处理和放大处理。结果,调节为预定音量的音频从扬声器325被输出。
此外,电视接收机300还具有麦克风326和A/D转换电路327。
A/D转换电路327接收由麦克风326收集的来自用户的音频信号,以提供给电视接收机300用于语音转换。A/D转换电路327对所接收的音频信号进行A/D转换处理,并将所获得的数字音频数据提供给回声消除/音频合成电路323。
当电视接收机300的用户(用户A)的音频数据从A/D转换电路327被提供来时,回声消除/音频合成电路323对用户A的音频数据执行回声消除。回声消除之后,回声消除/音频合成电路323将通过与其它音频数据等相合成获得的音频数据经由音频放大电路324输出给扬声器325。
此外,电视接收机300还具有音频编解码器328、内部总线329、SDRAM(同步动态随机存取存储器)330、闪存331、CPU 332、USB(通用串行总线)I/F 333和网络I/F 334。
A/D转换电路327接收由麦克风326输入的用户的音频信号,以提供给电视接收机300用于语音转换。A/D转换电路327对所接收的音频信号进行A/D转换处理,并将所获得的数字音频数据提供给音频编解码器328。
音频编解码器328将从A/D转换电路327提供来的音频数据转换为用于通过网络发送的预定格式的数据,并经由内部总线329提供给网络I/F334。
网络I/F 334经由连接到网络端子335的电缆被连接到网络。网络I/F334将从音频编解码器328提供来的音频数据发送给例如连接到该网络的另一设备。此外,网络I/F 334经由网络端子335接收从经由网络相连的另一设备发送来的音频数据,并经由内部总线329将其提供给音频编解码器328。
音频编解码器328将从网络I/F 334提供来的音频数据转换为预定格式的数据,并将其提供给回声消除/音频合成电路323。
回声消除/音频合成电路323对从音频编解码器328提供来的音频数据执行回声消除,并将通过与其它音频数据等相合成而获得的音频数据经由音频放大电路324从扬声器325输出。
SDRAM 330存储CPU 332执行处理所需的各种数据。
闪存331存储CPU 332执行的程序。存储在闪存331中的程序由CPU332在预定定时处(例如,电视接收机300启动时)读出。闪存331还存储通过数字广播获得的EPG数据、经由网络从预定服务器获得的数据等。
例如,闪存331在CPU 332的控制下存储经由网络从预定服务器获得的内容数据的MPEG-TS。闪存331例如在CPU 332的控制下经由内部总线329将MPEG-TS提供给MPEG解码器317。
MPEG解码器317按照与从数字调谐器316提供来的MPEG-TS相同的方式处理该MPEG-TS。以这种方式,在电视接收机300中,由视频和音频等组成的内容数据经由网络被接收并利用MPEG解码器317被解码,从而可以显示视频并且可以输出音频。
此外,电视接收机300还具有感光器单元337,用于接收从遥控器351发送来的红外信号。
感光器单元337接收来自遥控器351的红外线,并且将通过解调用户操作的内容而获得的表示用户操作的内容的控制码输出给CPU 332。
CPU 332根据从感光器单元337提供来的控制码等,执行存储在闪存331中的程序以控制电视接收机300的整体操作。CPU 332和电视接收机300的各个部分经由未示出的路径相连。
USB I/F 333与经由连接到USB端子336的USB电缆相连的电视接收机300外部的设备执行数据交换。网络I/F 334经由连接到网络端子335的电缆连接到网络,并且与连接到该网络的各种设备交换音频数据以外的数据。
电视接收机300可以通过利用图像解码设备101作为MPEG解码器317来提高预测精确度。结果,电视接收机300可以从经由天线接收的广播信号和经由网络获得的内容数据中获取并显示更清晰的解码图像。
图38是图示出使用应用了本发明的图像编码设备和图像解码设备的蜂窝电话的主要配置示例的框图。
图38所示的蜂窝电话400包括被布置来集中控制各个部分的主控制单元450、电源电路单元451、操作输入控制单元452、图像编码器453、相机I/F单元454、LCD控制单元455、图像解码器456、解复用单元457、记录/播放单元462、调制/解调电路458和音频编解码器459。这些单元经由总线460相互连接。
此外,蜂窝电话400具有操作键419、CCD(电荷耦合器件)相机416、液晶显示器418、存储单元423、发送/接收电路单元463、天线414、麦克风(麦克)421和扬声器417。
电源电路单元451在通过用户操作使得摘机(on-hook)或电源键进入接通状态时从电池组向每个部分提供电力,从而将蜂窝电话400激活为可操作状态。
蜂窝电话400在由CPU、ROM和RAM构成的主控制单元450的控制下,在诸如音频通话模式、数据通信模式等各种模式中执行各种操作,例如,交换音频信号、交换电子邮件和图像数据、图像拍摄、数据记录等。
例如,在音频通话模式中,蜂窝电话400通过音频编解码器459将在麦克风(麦克)421处收集的音频信号转换为数字音频数据,在调制/解调电路458处对其执行扩频处理,并且在发送/接收电路单元463处执行数模转换处理和频率转换处理。蜂窝电话400将通过该转换处理获得的发送信号经由天线414发送给未示出的基站。发送给基站的发送信号(音频信号)经由公共电话线网络被提供给另一方的蜂窝电话。
此外,例如,在音频通话模式中,蜂窝电话400利用发送/接收电路单元463放大在天线414处接收到的接收信号,还执行频率转换处理和模数转换,并在调制/解调电路458处执行逆扩频处理,并由音频编解码器459转换为模拟音频信号。蜂窝电话400将通过该转换获得的模拟音频信号从扬声器417输出。
此外,例如当在数据通信模式中发送电子邮件时,蜂窝电话400在操作输入控制单元452处接受通过操作操作键419输入的电子邮件的文本数据。蜂窝电话400在主控制单元450处处理该文本数据,并且经由LCD控制单元455将其作为图像显示在液晶显示器418上。
此外,在主控制单元450处,蜂窝电话400基于操作输入控制单元452所接受的文本数据以及用户指令等来生成电子邮件数据。蜂窝电话400在调制/解调电路458处对电子邮件数据执行扩频处理,并且在发送/接收电路单元463处执行数模转换处理和频率转换处理。蜂窝电话400将通过该转换处理获得的发送信号经由天线414发送给未示出的基站。发送给基站的发送信号(电子邮件)经由网络被提供给预定目的地,如邮件服务器等。
此外,例如,当在数据通信模式中接收到电子邮件时,蜂窝电话400经由天线414接收并利用发送/接收电路单元463放大从基站发送来的信号,还执行频率转换处理和模数转换处理。蜂窝电话400在调制/解调电路458处对所接收信号执行逆扩频处理以恢复原始电子邮件数据。蜂窝电话400经由LCD控制单元455将所恢复的电子邮件数据显示在液晶显示器418中。
注意,蜂窝电话400还经由记录/播放单元462将所接收的电子邮件数据记录(存储)在存储单元423中。
存储单元423可以是任何可重写存储介质。存储单元423可以是诸如RAM或内置闪存等之类的半导体存储器,或者可以是硬盘,或者可以是诸如磁盘、磁光盘、光盘、USB存储器或存储卡等之类的可移除介质,并且当然,可以是除此之外的其它事物。
此外,当例如在数据通信模式中发送图像数据时,蜂窝电话400通过利用CCD相机416进行成像来生成图像数据。CCD相机416具有诸如透镜和光圈之类的光学设备以及作为光电转换设备的CCD,以对物体成像,将所接收光的强度转换为电信号,并生成物体的图像的图像数据。该图像数据经由相机I/F单元454在图像编码器453处通过利用诸如MPEG2或MPEG4之类的预定编码方法执行压缩编码而被转换为经编码图像数据。
蜂窝电话400使用上述图像编码设备1作为用于执行这些处理的图像编码器453。因此,与图像编码设备1的情况一样,图像编码器453总是使用与对象块的宏块相邻的像素作为模板。因此,对宏块内的块的处理可通过并行处理或流水线处理来实现,并且可以提高宏块内的处理效率。
注意,与此同时,蜂窝电话400在音频编解码器459处对在利用CCD相机416成像期间通过麦克风(麦克)421收集的音频进行模数转换,并且还对其编码。
在解复用单元457处,蜂窝电话400利用预定方法来复用从图像编码器453提供来的经编码图像数据和从音频编解码器459提供来的数字音频数据。蜂窝电话400在调制/解调电路458处对作为其结果获得的经复用数据进行扩频处理,并且在发送/接收电路单元463处执行数模转换处理和频率转换处理。蜂窝电话400将通过该转换处理获得的发送信号经由天线414发送给未示出的基站。发送给基站的发送信号(图像数据)经由网络等被提供给另一通信方。
注意,当不发送图像数据时,蜂窝电话400可以经由LCD控制单元455将在CCD相机416处生成的图像数据显示在液晶显示器418上,而不经过图像编码器453。
此外,例如,当接收链接到简单主页等的运动图像文件的数据时,蜂窝电话400经由天线414利用发送/接收电路单元463接收从基站发送来的信号,放大它们,并且还执行频率转换处理和模数转换处理。蜂窝电话400在调制/解调电路458处执行逆扩频处理以恢复原始复用数据。蜂窝电话400在解复用单元457处分离复用数据,并划分为经编码图像数据和音频数据。
在图像解码器456处,蜂窝电话400利用与诸如MPEG2或MPEG4等预定编码方法相对应的解码方法来对编码图像数据进行解码,从而生成经由LCD控制单元455被显示在液晶显示器418上的播放运动图像数据。因此,包括在例如链接到简单主页的运动图像文件中的运动图像数据被显示在液晶显示器418上。
蜂窝电话400使用上述图像解码设备101作为用于执行这样的处理的图像解码器456。因此,以与图像解码设备101相同的方式,图像解码器456总是可以使用与对象块的宏块相邻的像素作为模板。因此,对宏块内的块的处理可通过并行处理或流水线处理来实现,并且可以提高宏块内的处理效率。
此时,蜂窝电话400同时在音频编解码器459处将数字音频数据转换为模拟音频信号,并将其从扬声器417输出。因此,包括在例如链接到简单主页的运动图像文件中的音频数据可被播放。
注意,以与电子邮件的情况相同的方式,蜂窝电话400也可以经由记录/播放单元462将链接到所接收的简单主页等的数据记录(存储)在存储单元423中。
此外,蜂窝电话400可以在主控制单元450处分析通过CCD相机416进行摄取而获得的二维码,以获得以二维码记录的信息。
此外,蜂窝电话400可以利用红外通信单元481通过红外线与外部设备通信。
通过利用图像编码设备1作为图像编码器453,蜂窝电话400例如可以提高通过对在CCD相机416处生成的图像数据进行编码而生成的编码数据的编码效率。结果,蜂窝电话400可以向其他设备提供具有良好编码效率的编码数据(图像数据)。
此外,利用图像解码设备101作为图像解码器456,蜂窝电话400可以生成高精度的预测图像。结果,蜂窝电话400例如可以从链接到简单主页的运动图像文件获得并显示具有更高清晰度的解码图像。
注意,虽然上面将蜂窝电话400描述为使用CCD相机416,然而还可以使用利用CMOS(互补金属氧化物半导体)的图像传感器(CMOS图像传感器)来取代CCD相机416。在此情况中,同样,蜂窝电话400可以按照利用CCD相机416时相同的方式来对物体成像并生成物体的图像的图像数据。
此外,虽然上面利用蜂窝电话400进行了描述,然而图像编码设备1和图像解码设备101还可以以与蜂窝电话400相同的方式被应用于任何设备,只要该设备与蜂窝电话400一样具有成像功能和通信功能即可,例如,PDA(个人数字助理)、智能电话、UMPC(超便携个人计算机)、上网本、膝上型个人计算机等。
图39是图示出使用应用了本发明的图像编码设备和图像解码设备的硬盘记录器的主要配置示例的框图。
图39所示的硬盘记录器(HDD记录器)500是这样的设备,其将由调谐器接收的、从卫星或地面天线等发送来的广播波信号(电视信号)中包括的广播节目中所包含的音频数据和视频数据保存在内置硬盘中,并且在所指示定时处将所保存的数据提供给用户。
硬盘记录器500例如可以从广播波信号中提取音频数据和视频数据,对它们进行适当的解码,并存储在内置硬盘中。此外,硬盘记录器500例如可以经由网络从其它设备获取音频数据和视频数据,对它们进行适当的解码,并存储在内置硬盘中。
此外,例如,硬盘记录器500对记录在内置硬盘中的音频数据和视频数据进行解码并提供给监视器560,以将图像显示在监视器560上。此外,硬盘记录器500可以从监视器560的扬声器输出其音频。
硬盘记录器500例如还可以对从经由调谐器获得的广播波信号提取的音频数据和视频数据或者经由网络从其它设备获得的音频数据和视频数据进行解码并提供给监视器560,以将图像显示在监视器560上。此外,硬盘记录器500可以从监视器560的扬声器输出其音频。
当然,其它操作也可以被执行。
如图39所示,硬盘记录器500具有接收单元521、解调单元522、解复用器523、音频解码器524、视频解码器525和记录器控制单元526。硬盘记录器500还具有EPG数据存储器527、程序存储器528、工作存储器529、显示转换器530、OSD(屏上显示)控制单元531、显示控制单元532、记录/播放单元533、D/A转换器534和通信单元535。
此外,显示转换器530具有视频解码器541。记录/播放单元533具有编码器551和解码器552。
接收单元521从遥控器(未示出)接收红外信号,转换为电信号,并输出给记录器控制单元526。记录器控制单元526例如由微处理器等构成,并且根据存储在程序存储器528中的程序来执行各种处理。记录器控制单元526此时按照需要使用工作存储器529。
通信单元535连接到网络,并且经由网络与其它设备执行通信处理。例如,通信单元535由记录器控制单元526控制来与调谐器(未示出)通信并且主要向调谐器输出信道调谐控制信号。
解调单元522解调从调谐器提供来的信号,并输出给解复用器523。解复用器523将从解调单元522提供来的数据划分为音频数据、视频数据和EPG数据,并且分别输出给音频解码器524、视频解码器525和记录器控制单元526。
音频解码器524例如通过MPEG格式来对输入音频数据进行解码,并且输出给记录/播放单元533。视频解码器525例如通过MPEG格式对输入视频数据进行解码,并输出给显示转换器530。记录器控制单元526将输入EPG数据提供给EPG数据存储器527以被存储。
显示转换器530例如利用视频编码器541将从视频解码器525或记录器控制单元526提供来的视频数据编码为NTSC(国际电视标准委员会)格式的视频数据,并输出给记录/播放单元533。此外,显示转换器530将从视频解码器525或记录器控制单元526提供来的视频数据的画面大小转换为与监视器560的大小相对应的大小。显示转换器530还通过视频编码器541将画面大小已被转换的视频数据转换为NTSC视频数据,执行到模拟信号的转换,并输出给显示控制单元532。
在记录器控制单元526的控制下,显示控制单元532将从OSD(屏上显示)控制单元531输出的OSD信号叠加到从显示转换器530输入的视频信号,并输出给监视器560的显示装置以被显示。
监视器560还被提供有已由D/A转换器534转换为模拟信号的、从音频解码器524输出的音频数据。监视器560可以从内置扬声器输出音频信号。
记录/播放单元533具有作为存储介质的硬盘,用于记录视频数据和音频数据等。
记录/播放单元533通过编码器551以MPEG格式对例如从音频解码器524提供来的音频数据进行编码。此外,记录/播放单元533通过编码器551以MPEG格式对从显示转换器530的视频编码器541提供来的视频数据编码。记录/播放单元533利用复用器来合成音频数据的编码数据和视频数据的编码数据。记录/播放单元533对合成数据执行信道编码并放大它,并且经由记录头将数据写入硬盘。
记录/播放单元533经由记录头来播放记录在硬盘中的数据,放大,并利用解复用器分离为音频数据和视频数据。记录/播放单元533通过解码器552以MPEG格式对音频数据和视频数据解码。记录/播放单元533对经解码的音频数据执行D/A转换,并输出给监视器560的扬声器。此外,记录/播放单元533对经解码的视频数据执行D/A转换,并输出给监视器560的显示装置。
记录器控制单元526基于经由接收单元521从遥控器接收的红外线信号所指示的用户指令,来从EPG数据存储器527读出最新的EPG数据,并将它们提供给OSD控制单元531。OSD控制单元531生成被输出给显示控制单元532的、与所输入EPG数据相对应的图像数据。显示控制单元532将从OSD控制单元531输入的视频数据输出给监视器560的显示装置以被显示。因此,EPG(电子节目指南)被显示在监视器560的显示装置上。
此外,硬盘记录器500可以获取经由诸如因特网之类的网络从其它设备提供来的各种数据,例如视频数据、音频数据、EPG数据等。
通信单元535由记录器控制单元526控制来获取经由网络从其它设备发送来的诸如视频数据、音频数据、EPG数据等的编码数据,并将它们提供给记录器控制单元526。记录器控制单元526例如将所获得的视频数据和音频数据的编码数据提供给记录/播放单元533,并存储在硬盘中。此时,记录器控制单元526和记录/播放单元533可以按照需要执行诸如重编码等之类的处理。
此外,记录器控制单元526对所获得的视频数据和音频数据的编码数据进行解码,并将所获得的视频数据提供给显示转换器530。显示转换器530按照与从视频解码器525提供来的视频数据相同的方式来处理从记录器控制单元526提供来的视频数据,并经由显示控制单元532将其提供给监视器560,并且显示其图像。
此外,可以做出这样的布置,其中,记录器控制单元526将经解码音频数据与该图像显示一起经由D/A转换器534提供给监视器560,以使得音频从扬声器被输出。
此外,记录器控制单元526对所获得的EPG数据的编码数据进行解码,并将经解码的EPG数据提供给EPG数据存储器527。
如上所述的硬盘记录器500使用图像解码设备101作为视频解码器525、解码器552和内置于记录器控制单元526中的解码器。因此,以与图像解码设备101相同的方式,视频解码器525、解码器552和内置于记录器控制单元526中的解码器总是可以使用与对象块的宏块相邻的像素作为模板。因此,针对宏块内的块的处理可以通过并行处理或流水线处理来实现,并且宏块内的处理效率可被提高。
因此,硬盘记录器500可以在提高了处理效率的情况下生成高精度的预测图像。结果,硬盘记录器500例如可以从经由调谐器接收到的视频数据的编码数据、自记录/播放单元533的硬盘读出的视频数据的编码数据,以及经由网络获得的视频数据的编码数据来获得具有较高清晰度的解码图像,并将其显示在监视器560上。
此外,硬盘记录器500使用图像编码设备1作为图像编码器551。因此,与图像编码设备1的情况一样,编码器551总是可以使用与对象块的宏块相邻的像素作为模板。因此,针对宏块内的块的处理可以通过并行处理或流水线处理来实现,并且宏块内的处理效率可被提高。
因此,在硬盘记录器500中,可以提高例如将被记录在硬盘中的编码数据的编码效率。结果,硬盘记录器500可以更高效地使用硬盘的存储区域。
虽然上面描述了将视频数据和音频数据记录在硬盘中的硬盘记录器500,然而显然,记录介质不被具体限制。例如,图像编码设备1和图像解码设备101可以以与硬盘记录器500的情况相同的方式被应用于使用硬盘以外的诸如闪存、光盘、磁带等之类的记录介质的记录器。
图40是图示出使用应用了本发明的图像解码设备和图像编码设备的相机的主要配置示例的框图。
图40所示的相机600对物体成像,并将物体的图像显示在LCD 616上或者将其作为图像数据记录在记录介质633中。
透镜块611将光输入CCD/CMOS 612。CCD/CMOS 612是用于将所接收光的强度转换为电信号的使用CCD或CMOS的图像传感器,并且将它们提供给相机信号处理单元613。
相机信号处理单元613将从CCD/CMOS 612提供来的电信号转换为色差信号Y、Cr、Cb,并将它们提供给图像信号处理单元614。图像信号处理单元614在控制器621的控制下,对从相机信号处理单元613提供来的图像信号执行预定图像处理,或者例如利用编码器641根据MPEG格式对图像信号编码。图像信号处理单元614将通过对图像信号编码生成的编码数据提供给解码器615。此外,图像信号处理单元614获取在屏上显示(OSD)620中生成的显示数据,并将其提供给解码器615。
在以上处理中,相机信号处理单元613适当地使用经由总线617相连的DRAM(动态随机存取存储器)618,以便将图像数据、通过对图像数据编码获得的编码数据等保存在DRAM 618中。
解码器615对从图像信号处理单元614提供来的编码数据进行解码并且将所获得的图像数据(经解码图像数据)提供给LCD 616。此外,解码器615将从图像信号处理单元614提供来的显示数据提供给LCD 616。LCD 616将从解码器615提供来的经解码图像数据的图像与显示数据的图像适当地合成,并显示合成图像。
在控制器621的控制下,屏上显示620经由总线617向图像信号处理单元614输出由符号、字符和图形组成的菜单画面以及图标等的显示数据。
控制器621基于表示用户利用操作单元622指示的内容的信号来执行各种处理,并且还经由总线617来控制图像信号处理单元614、DRAM618、外部接口619、屏上显示620、介质驱动器623等。FLASH ROM(闪速ROM)624存储控制器621执行各种处理所需的程序和数据等。
例如,控制器621可以取代图像信号处理单元614和解码器615来对存储在DRAM 618中的图像数据编码并对存储在DRAM 618中的经编码数据解码。此时,控制器621可以利用与图像信号处理单元614和解码器615的编码/解码格式相同的格式来执行编码/解码处理,或者可以利用图像信号处理单元614和解码器615不会处理的格式来执行执行编码/解码处理。
此外,例如当从操作单元622指示了图像打印开始时,控制器621从DRAM 618读出图像数据,并经由总线617将其提供给连接到外部接口619的打印机634,以便进行打印。
此外,例如当从操作单元622指示了图像记录时,控制器621从DRAM 618读出经编码数据,并经由总线617将其提供给装载到介质驱动器623的记录介质633,以便被记录。
记录介质633是任何可读/可写可移除介质,例如,磁盘、磁光盘、光盘、半导体存储器等。理所当然,记录介质633在可移除介质的类型方面不受限制,并且可以是磁带设备,或者可以是盘,或者可以是存储卡。当然,其还可以是非接触IC卡等。
此外,可以进行这样的布置,其中,介质驱动器623和记录介质633被集成起来以便由不可拆卸存储介质构成,就如内置盘驱动器或SSD(固态驱动器)等那样。
外部接口619例如由USB输入/输出端子等构成,并且在执行图像打印时被连接到打印机634。此外,驱动器631根据需要被连接到外部接口619,诸如磁盘、光盘、磁光盘等之类的可移除介质632被连接到驱动器631,以使得从其读出的计算机程序根据需要被安装到FLASH ROM 624中。
此外,外部接口619具有连接到诸如LAN或因特网等之类的预定网络的网络接口。控制器621根据来自操作单元622的指令,从DRAM 618读出经编码数据并将其从外部接口619提供给经由网络相连的另一设备。此外,控制器621可以通过外部接口619获取经由网络从另一设备提供来的经编码数据和图像数据,以便被保存在DRAM 618中或提供给图像信号处理单元614。
如上所述的相机600使用图像解码设备101作为解码器615。因此,以与图像解码设备101相同的方式,解码器615总是可以使用与对象块的宏块相邻的像素作为模板。因此,对宏块内的块的处理可通过并行处理或流水线处理来实现,并且可以提高宏块内的处理效率。
因此,相机600可以平滑地生成具有高精度的预测图像。结果,相机600例如可以从在CCD/CMOS 612处生成的图像数据、自DRAM 618或记录介质633读出的视频数据的经编码数据或者经由网络获得的视频数据的经编码数据中获得具有更高清晰度的解码图像,以便显示在LCD 616上。
此外,相机600使用图像编码设备1作为编码器641。因此,与图像编码设备1的情况一样,编码器641总是可以使用与对象块的宏块相邻的像素作为模板。因此,对宏块内的块的处理可通过并行处理或流水线处理来实现,并且可以提高宏块内的处理效率。
因此,在相机600中,例如可以提高将被记录在硬盘中的编码数据的编码效率。结果,相机600可以更高效地利用DRAM 618和记录介质633的存储区域。
注意,图像解码设备101的解码方法可被应用于控制器621的解码处理。以相同方式,图像编码设备1的编码方法可被应用于控制器621的编码处理。
此外,相机600所成像的图像数据可以是运动图像或者可以是静止图像。
当然,图像编码设备1和图像解码设备101可应用于上述设备以外的设备和系统。
参考标号列表
1图像编码设备
16无损编码单元
24帧内预测单元
25帧内TP运动预测/补偿单元
26运动预测/补偿单元
27帧间TP运动预测/补偿单元
41模板像素设置单元
42运动预测单元
43运动补偿单元
51块地址计算单元
52运动预测单元
53运动补偿单元
61块分类单元
62对象块模板设置单元
63参考块模板设置单元
101图像解码设备
112无损编码单元
121帧内预测单元
122帧内模板运动预测/补偿单元
123运动预测/补偿单元
124帧间模板运动预测/补偿单元
125模板像素设置单元
126开关
权利要求书(按照条约第19条的修改)
1.一种图像处理设备,包括:
确定装置,用于确定以图像的预定块为对象划分了所述预定块的对象块的位置关系;
模板像素设置装置,用于根据由所述确定装置确定的位置关系,来从以预定位置关系与所述预定块相邻的且从经解码图像生成的像素中,设置用于计算所述对象块的运动向量的模板的像素;以及
模板运动预测补偿装置,用于利用由所述模板像素设置装置所设置的像素组成的所述模板来计算所述块的运动向量。
2.根据权利要求1所述的图像处理设备,还包括:
编码装置,用于利用由所述模板运动预测补偿装置计算出的所述运动向量来对所述块进行编码。
3.根据权利要求1所述的图像处理设备,其中,对于所述预定块中位于左上处的左上对象块,所述模板像素设置装置将与所述左上对象块的左部、上部和左上部相邻的像素设置为所述模板。
4.根据权利要求1所述的图像处理设备,其中,对于所述预定块中位于右上处的右上对象块,所述模板像素设置装置将与所述右上对象块的上部和左上部相邻的像素以及与所述预定块中位于左上处的左上对象块的左部相邻的像素设置为所述模板。
5.根据权利要求1所述的图像处理设备,其中,对于所述预定块中位于左下处的左下对象块,所述模板像素设置装置将与所述左下对象块的左上部和左部相邻的像素以及与所述预定块中位于左上处的左上对象块的上部相邻的像素设置为所述模板。
6.根据权利要求1所述的图像处理设备,其中,对于所述预定块中位于右下处的右下对象块,所述模板像素设置装置将与所述预定块中位于左上处的左上对象块的左上部相邻的像素、与所述预定块中位于右上处的右上对象块的上部相邻的像素、以及与所述预定块中位于左下处的左下对象块的左部相邻的像素设置为所述模板。
7.根据权利要求1所述的图像处理设备,其中,对于所述预定块中位于右下处的右下对象块,所述模板像素设置装置将与所述预定块中位于右上处的右上对象块的左上部和上部相邻的像素、以及与所述预定块中位于左下处的左下对象块的左部相邻的像素设置为所述模板。
8.根据权利要求1所述的图像处理设备,其中,对于所述预定块中位于右下处的右下对象块,所述模板像素设置装置将与所述预定块中位于右上处的右上对象块的上部相邻的像素、以及与所述预定块中位于左下处的左下对象块的左部和左上部相邻的像素设置为所述模板。
9.一种图像处理方法,包括以下步骤:
图像处理设备
确定以图像的预定块为对象划分了所述预定块的对象块的位置关系;
根据所确定的位置关系,来从以预定位置关系与所述预定块相邻的且从经解码图像生成的像素中,设置用于计算所述对象块的运动向量的模板的像素,并且
利用由所设置的像素组成的所述模板来计算所述块的运动向量。
10.一种图像处理设备,包括:
解码装置,用于对经编码块的图像解码;
确定装置,用于确定以图像的预定块为对象划分了所述预定块的对象块的位置关系;
模板像素设置装置,用于根据由所述确定装置确定的位置关系,来从以预定位置关系与所述预定块相邻的且从经解码图像生成的像素中,设置用于计算所述对象块的运动向量的模板的像素;
模板运动预测装置,用于利用由所述模板像素设置装置所设置的像素组成的所述模板来计算所述块的运动向量;以及
运动补偿装置,用于利用由所述解码装置解码的所述图像以及由所述模板运动预测装置计算出的所述运动向量来生成所述块的预测图像。
11.根据权利要求10所述的图像处理设备,其中,对于所述预定块中位于左上处的左上对象块,所述模板像素设置装置将与所述左上对象块的左部、上部和左上部相邻的像素设置为所述模板。
12.根据权利要求10所述的图像处理设备,其中,对于所述预定块中位于右上处的右上对象块,所述模板像素设置装置将与所述右上对象块的上部和左上部相邻的像素以及与所述预定块中位于左上处的左上对象块的左部相邻的像素设置为所述模板。
13.根据权利要求10所述的图像处理设备,其中,对于所述预定块中位于左下处的左下对象块,所述模板像素设置装置将与所述左下对象块的左上部和左部相邻的像素以及与所述预定块中位于左上处的左上对象块的上部相邻的像素设置为所述模板。
14.根据权利要求10所述的图像处理设备,其中,对于所述预定块中位于右下处的右下对象块,所述模板像素设置装置将与所述预定块中位于左上处的左上对象块的左上部相邻的像素、与所述预定块中位于右上处的右上对象块的上部相邻的像素、以及与所述预定块中位于左下处的左下对象块的左部相邻的像素设置为所述模板。
15.根据权利要求10所述的图像处理设备,其中,对于所述预定块中位于右下处的右下对象块,所述模板像素设置装置将与所述预定块中位于右上处的右上对象块的左上部和上部相邻的像素、以及与所述预定块中位于左下处的左下对象块的左部相邻的像素设置为所述模板。
16.根据权利要求10所述的图像处理设备,其中,对于所述预定块中位于右下处的右下对象块,所述模板像素设置装置将与所述预定块中位于右上处的右上对象块的上部相邻的像素、以及与所述预定块中位于左下处的左下对象块的左部和左上部相邻的像素设置为所述模板。
17.一种图像处理方法,包括以下步骤:
图像处理设备
对经编码块的图像解码;
确定以图像的预定块为对象划分了所述预定块的对象块的位置关系;
根据所确定的位置关系,来从以预定位置关系与所述预定块相邻的且从经解码图像生成的像素中,设置用于计算所述对象块的运动向量的模板的像素;
利用由所设置的像素组成的所述模板来计算所述块的运动向量;以及
利用经解码的所述图像以及计算出的所述运动向量生成所述块的预测图像。

Claims (17)

1.一种图像处理设备,包括:
模板像素设置装置,用于根据构成图像的预定块的块在所述预定块内的地址,来从以预定位置关系与多个所述块之一相邻的且从经解码图像生成的像素中,设置用于计算构成图像的预定块的所述块的运动向量的模板的像素;以及
模板运动预测补偿装置,用于利用由所述模板像素设置装置所设置的像素组成的所述模板来计算所述块的运动向量。
2.根据权利要求1所述的图像处理设备,还包括:
编码装置,用于利用由所述模板运动预测补偿装置计算出的所述运动向量来对所述块进行编码。
3.根据权利要求1所述的图像处理设备,其中,对于所述预定块中位于左上处的左上块,所述模板像素设置装置将与所述左上块的左部、上部和左上部相邻的像素设置为所述模板。
4.根据权利要求1所述的图像处理设备,其中,对于所述预定块中位于右上处的右上块,所述模板像素设置装置将与所述右上块的上部和左上部相邻的像素以及与所述预定块中位于左上处的左上块的左部相邻的像素设置为所述模板。
5.根据权利要求1所述的图像处理设备,其中,对于所述预定块中位于左下处的左下块,所述模板像素设置装置将与所述左下块的左上部和左部相邻的像素以及与所述预定块中位于左上处的左上块的上部相邻的像素设置为所述模板。
6.根据权利要求1所述的图像处理设备,其中,对于所述预定块中位于右下处的右下块,所述模板像素设置装置将与所述预定块中位于左上处的左上块的左上部相邻的像素、与所述预定块中位于右上处的右上块的上部相邻的像素、以及与所述预定块中位于左下处的左下块的左部相邻的像素设置为所述模板。
7.根据权利要求1所述的图像处理设备,其中,对于所述预定块中位于右下处的右下块,所述模板像素设置装置将与所述预定块中位于右上处的右上块的左上部和上部相邻的像素、以及与所述预定块中位于左下处的左下块的左部相邻的像素设置为所述模板。
8.根据权利要求1所述的图像处理设备,其中,对于所述预定块中位于右下处的右下块,所述模板像素设置装置将与所述预定块中位于右上处的右上块的上部相邻的像素、以及与所述预定块中位于左下处的左下块的左部和左上部相邻的像素设置为所述模板。
9.一种图像处理方法,包括以下步骤:
图像处理设备
根据构成图像的预定块的块在所述预定块内的地址,来从以预定位置关系与多个所述块之一相邻的像素中,设置用于计算构成图像的预定块的所述块的运动向量的模板的像素,并且
利用由所设置的像素组成的所述模板来计算所述块的运动向量。
10.一种图像处理设备,包括:
解码装置,用于对经编码块的图像解码;
模板像素设置装置,用于根据构成图像的预定块的块在所述预定块内的地址,来从以预定位置关系与多个所述块之一相邻的且从经解码图像生成的像素中,设置用于计算构成图像的预定块的所述块的运动向量的模板的像素;
模板运动预测装置,用于利用由所述模板像素设置装置所设置的像素组成的所述模板来计算所述块的运动向量;以及
运动补偿装置,用于利用由所述解码装置解码的所述图像以及由所述模板运动预测装置计算出的所述运动向量来生成所述块的预测图像。
11.根据权利要求10所述的图像处理设备,其中,对于所述预定块中位于左上处的左上块,所述模板像素设置装置将与所述左上块的左部、上部和左上部相邻的像素设置为所述模板。
12.根据权利要求10所述的图像处理设备,其中,对于所述预定块中位于右上处的右上块,所述模板像素设置装置将与所述右上块的上部和左上部相邻的像素以及与所述预定块中位于左上处的左上块的左部相邻的像素设置为所述模板。
13.根据权利要求10所述的图像处理设备,其中,对于所述预定块中位于左下处的左下块,所述模板像素设置装置将与所述左下块的左上部和左部相邻的像素以及与所述预定块中位于左上处的左上块的上部相邻的像素设置为所述模板。
14.根据权利要求10所述的图像处理设备,其中,对于所述预定块中位于右下处的右下块,所述模板像素设置装置将与所述预定块中位于左上处的左上块的左上部相邻的像素、与所述预定块中位于右上处的右上块的上部相邻的像素、以及与所述预定块中位于左下处的左下块的左部相邻的像素设置为所述模板。
15.根据权利要求10所述的图像处理设备,其中,对于所述预定块中位于右下处的右下块,所述模板像素设置装置将与所述预定块中位于右上处的右上块的左上部和上部相邻的像素、以及与所述预定块中位于左下处的左下块的左部相邻的像素设置为所述模板。
16.根据权利要求10所述的图像处理设备,其中,对于所述预定块中位于右下处的右下块,所述模板像素设置装置将与所述预定块中位于右上处的右上块的上部相邻的像素、以及与所述预定块中位于左下处的左下块的左部和左上部相邻的像素设置为所述模板。
17.一种图像处理方法,包括以下步骤:
图像处理设备
对经编码块的图像解码;
根据构成图像的预定块的块在所述预定块内的地址,来从以预定位置关系与多个所述块之一相邻的且从经解码图像生成的像素中,设置用于计算构成图像的预定块的所述块的运动向量的模板的像素;
利用由所设置的像素组成的所述模板来计算所述块的运动向量;以及
利用经解码的所述图像以及计算出的所述运动向量生成所述块的预测图像。
CN2010800078928A 2009-02-20 2010-02-12 图像处理设备和方法 Pending CN102318346A (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP2009037466 2009-02-20
JP2009-037466 2009-02-20
PCT/JP2010/052020 WO2010095560A1 (ja) 2009-02-20 2010-02-12 画像処理装置および方法

Publications (1)

Publication Number Publication Date
CN102318346A true CN102318346A (zh) 2012-01-11

Family

ID=42633843

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2010800078928A Pending CN102318346A (zh) 2009-02-20 2010-02-12 图像处理设备和方法

Country Status (7)

Country Link
US (1) US20120044996A1 (zh)
JP (1) JPWO2010095560A1 (zh)
CN (1) CN102318346A (zh)
BR (1) BRPI1008507A2 (zh)
RU (1) RU2011134049A (zh)
TW (1) TW201032600A (zh)
WO (1) WO2010095560A1 (zh)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106105196A (zh) * 2014-04-28 2016-11-09 松下电器(美国)知识产权公司 编码方法、解码方法、编码装置以及解码装置
CN107331343A (zh) * 2017-07-07 2017-11-07 深圳市明微电子股份有限公司 一种显示屏及数据传输路径规划方法、分辨率拓展方法
WO2018119609A1 (zh) * 2016-12-26 2018-07-05 华为技术有限公司 一种基于模板匹配的编解码方法及装置
CN108781298A (zh) * 2017-12-25 2018-11-09 深圳市大疆创新科技有限公司 编码器、图像处理系统、无人机及编码方法
WO2024066321A1 (en) * 2022-09-27 2024-04-04 Beijing Xiaomi Mobile Software Co., Ltd. Encoding/decoding video picture data

Families Citing this family (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9100655B2 (en) * 2010-04-13 2015-08-04 Panasonic Intellectual Property Corporation Of America Motion compensation method, image decoding method, image coding method, motion compensation apparatus, program, and integrated circuit
US9380314B2 (en) * 2010-12-20 2016-06-28 Texas Instruments Incorporated Pixel retrieval for frame reconstruction
US20130301713A1 (en) * 2012-05-14 2013-11-14 Qualcomm Incorporated Systems and methods for intra prediction video coding
US9503724B2 (en) * 2012-05-14 2016-11-22 Qualcomm Incorporated Interleave block processing ordering for video data coding
JP2019213242A (ja) * 2014-04-28 2019-12-12 パナソニック インテレクチュアル プロパティ コーポレーション オブアメリカPanasonic Intellectual Property Corporation of America 符号化方法、復号方法、符号化装置および復号装置
CN111903133A (zh) * 2018-02-15 2020-11-06 艾锐势有限责任公司 用于模板匹配的可变模板尺寸
JP7248013B2 (ja) * 2018-03-30 2023-03-29 株式会社ソシオネクスト 復号方法、復号装置、符号化装置及びプログラム
US11317085B2 (en) 2018-03-30 2022-04-26 Vid Scale, Inc. Template-based inter prediction techniques based on encoding and decoding latency reduction
JP7145793B2 (ja) 2019-03-11 2022-10-03 Kddi株式会社 画像復号装置、画像復号方法及びプログラム
WO2020253528A1 (en) * 2019-06-17 2020-12-24 Zhejiang Dahua Technology Co., Ltd. Systems and methods for predicting a coding block
CN118285103A (zh) * 2021-08-19 2024-07-02 联发科技(新加坡)私人有限公司 视频编解码系统中低延迟模板匹配的方法和装置
WO2024058637A1 (ko) * 2022-09-16 2024-03-21 주식회사 윌러스표준기술연구소 비디오 신호 처리 방법 및 이를 위한 장치

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030012283A1 (en) * 2001-07-06 2003-01-16 Mitsubishi Denki Kabushiki Kaisha Motion vector detecting device and self-testing method therein
CN101009834A (zh) * 2007-01-09 2007-08-01 中山大学 一种用于视频编码的混合运动估计方法
CN101170696A (zh) * 2007-11-26 2008-04-30 电子科技大学 一种运动估计方法
US20080159398A1 (en) * 2006-12-19 2008-07-03 Tomokazu Murakami Decoding Method and Coding Method
CN101218829A (zh) * 2005-07-05 2008-07-09 株式会社Ntt都科摩 动态图像编码装置、动态图像编码方法、动态图像编码程序、动态图像解码装置、动态图像解码方法以及动态图像解码程序

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007043651A (ja) * 2005-07-05 2007-02-15 Ntt Docomo Inc 動画像符号化装置、動画像符号化方法、動画像符号化プログラム、動画像復号装置、動画像復号方法及び動画像復号プログラム

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030012283A1 (en) * 2001-07-06 2003-01-16 Mitsubishi Denki Kabushiki Kaisha Motion vector detecting device and self-testing method therein
CN101218829A (zh) * 2005-07-05 2008-07-09 株式会社Ntt都科摩 动态图像编码装置、动态图像编码方法、动态图像编码程序、动态图像解码装置、动态图像解码方法以及动态图像解码程序
US20080159398A1 (en) * 2006-12-19 2008-07-03 Tomokazu Murakami Decoding Method and Coding Method
CN101009834A (zh) * 2007-01-09 2007-08-01 中山大学 一种用于视频编码的混合运动估计方法
CN101170696A (zh) * 2007-11-26 2008-04-30 电子科技大学 一种运动估计方法

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106105196A (zh) * 2014-04-28 2016-11-09 松下电器(美国)知识产权公司 编码方法、解码方法、编码装置以及解码装置
WO2018119609A1 (zh) * 2016-12-26 2018-07-05 华为技术有限公司 一种基于模板匹配的编解码方法及装置
CN107331343A (zh) * 2017-07-07 2017-11-07 深圳市明微电子股份有限公司 一种显示屏及数据传输路径规划方法、分辨率拓展方法
CN107331343B (zh) * 2017-07-07 2019-08-02 深圳市明微电子股份有限公司 一种显示屏及数据传输路径规划方法、分辨率拓展方法
CN108781298A (zh) * 2017-12-25 2018-11-09 深圳市大疆创新科技有限公司 编码器、图像处理系统、无人机及编码方法
WO2019126929A1 (zh) * 2017-12-25 2019-07-04 深圳市大疆创新科技有限公司 编码器、图像处理系统、无人机及编码方法
CN108781298B (zh) * 2017-12-25 2021-05-25 深圳市大疆创新科技有限公司 编码器、图像处理系统、无人机及编码方法
WO2024066321A1 (en) * 2022-09-27 2024-04-04 Beijing Xiaomi Mobile Software Co., Ltd. Encoding/decoding video picture data

Also Published As

Publication number Publication date
BRPI1008507A2 (pt) 2019-04-16
RU2011134049A (ru) 2013-02-20
JPWO2010095560A1 (ja) 2012-08-23
TW201032600A (en) 2010-09-01
US20120044996A1 (en) 2012-02-23
WO2010095560A1 (ja) 2010-08-26

Similar Documents

Publication Publication Date Title
CN102318346A (zh) 图像处理设备和方法
RU2665885C2 (ru) Устройство и способ обработки изображений
CN102342108B (zh) 图像处理设备和方法
CN102318347B (zh) 图像处理设备和方法
CN104539969A (zh) 图像处理装置和图像处理方法
CN102160379A (zh) 图像处理装置和图像处理方法
CN102577390A (zh) 图像处理设备和方法
CN102160382A (zh) 图像处理设备和图像处理方法
CN102160381A (zh) 图像处理设备和方法
CN102714734A (zh) 图像处理设备和方法
CN102160384A (zh) 图像处理设备和方法
CN102648630A (zh) 图像处理设备和方法
CN103503453A (zh) 编码装置和编码方法、以及解码装置和解码方法
CN102160380A (zh) 图像处理设备和方法
CN102714735A (zh) 图像处理设备和方法
CN102884791A (zh) 图像处理设备和方法
CN102696227A (zh) 图像处理设备和方法
CN102668570A (zh) 图像处理设备及其方法
CN102342107A (zh) 图像处理设备和方法
CN102160383A (zh) 图像处理装置和方法
CN102986226A (zh) 图像处理装置和方法
JP5854296B2 (ja) 画像処理装置および方法、プログラム、並びに記録媒体
CN102823255A (zh) 图像处理设备和图像处理方法

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C02 Deemed withdrawal of patent application after publication (patent law 2001)
WD01 Invention patent application deemed withdrawn after publication

Application publication date: 20120111