CN103238330A - 图像处理装置、图像处理方法和程序 - Google Patents

图像处理装置、图像处理方法和程序 Download PDF

Info

Publication number
CN103238330A
CN103238330A CN2011800578887A CN201180057888A CN103238330A CN 103238330 A CN103238330 A CN 103238330A CN 2011800578887 A CN2011800578887 A CN 2011800578887A CN 201180057888 A CN201180057888 A CN 201180057888A CN 103238330 A CN103238330 A CN 103238330A
Authority
CN
China
Prior art keywords
pixel
pixels
unit
predict
inter prediction
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
CN2011800578887A
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 CN103238330A publication Critical patent/CN103238330A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T9/00Image coding
    • G06T9/004Predictors, e.g. intraframe, interframe coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/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/117Filters, e.g. for pre-processing or post-processing
    • 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
    • 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/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/43Hardware specially adapted for motion estimation or 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
    • 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/523Motion estimation or motion compensation with sub-pixel accuracy
    • 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/59Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving spatial sub-sampling or interpolation, e.g. alteration of picture size or resolution
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/60Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
    • H04N19/61Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding in combination with predictive coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/80Details of filtering operations specially adapted for video compression, e.g. for pixel interpolation
    • H04N19/82Details of filtering operations specially adapted for video compression, e.g. for pixel interpolation involving filtering within a prediction loop

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Apparatus For Radiation Diagnosis (AREA)

Abstract

本发明涉及一种图像处理装置、图像处理方法以及程序,使用所述图像处理装置、图像处理方法以及程序在执行具有分数精度的运动补偿处理的情况下在帧间预测期间可以降低存储带宽的使用量。参考图像读取单元从帧间预测中的参考图像内以如下方式读出预定参考像素:使得与在帧间预测中的预测图像外部的像素对应的预定参考像素的数目变得小于与预测图像内部的像素对应的预定参考像素的数目。使用已经读出的预定参考像素,2抽头FIR滤波器、4抽头FIR滤波器或6抽头FIR滤波器计算在参考图像中具有分数位置、作为预测图像的像素的像素。本技术可以应用于例如根据H.264/AVC方案执行压缩编码的编码装置。

Description

图像处理装置、图像处理方法和程序
技术领域
本技术涉及图像处理装置、图像处理方法和程序,并且更具体地涉及当在帧间预测中执行具有分数精度的运动补偿操作时能够减少存储器带宽的使用量的图像处理装置、图像处理方法和程序。
背景技术
作为图像压缩的标准,存在H.264/MPEG(动态图像专家组)-4第10部分的高级视频编码(其后称为H.264/AVC)。
根据H.264/AVC,通过利用帧或场之间的相关性进行帧间预测。在帧间预测中,通过使用部分的已经存储的可供参考的图像来执行运动补偿操作,并生成预测图像。
近年来,已经尝试提高运动补偿操作中的运动矢量分辨率,从而达到诸如1/2或1/4等的分数精度。
在这样的具有分数精度的运动补偿操作中,被称为子像素的具有分数位置的虚拟像素设置在参考图像中的相邻像素之间,另外,执行生成子像素的操作(以下称为插值)(例如,参照专利文献1)。也就是说,在具有分数精度的运动补偿操作中,最低的运动矢量分辨率是像素数量的分数倍数,因此进行插值以在分数的位置中生成像素。
用于插值的插值滤波器(IF)通常是有限冲激响应(FIR)滤波器。
例如,在常规的插值中,使用6抽头FIR滤波器进行插值以在1/2像素位置中生成子像素。通过使用1/2像素位置中的子像素或在该子像素两侧的整数位置中的像素执行双线性操作来生成1/4像素位置中的子像素。
图1是示出在常规插值中生成a-o的子像素时使用的像素的示意图。
在图1中,未分配有字母字符的方格代表整数位置的像素,并且分配有字母字符的方格代表相应的字母字符的子象素。
6抽头FIR滤波器使用在水平方向上与子像素b具有相同位置的阴影方格所表示的整数位置的六个像素来生成图1中的1/2像素位置中的子像素b。6抽头FIR滤波器使用在垂直方向上与h具有相同位置的阴影方格所表示的整数位置的六个像素来生成1/2像素位置的子像素h。另外,6抽头FIR滤波器以每次六个像素的方式,使用阴影方格所表示的6×6像素来生成1/2像素位置的子像素j。通过使用像素b、h和j或在两侧的阴影方格所表示的整数位置的像素来生成1/4像素位置的像素a、c至g、i以及k至o。
引用列表
非专利文献
非专利文献1:IEEE TRANSACTIONS ON CIRCUITS ANDSYSTEMS FOR VIDEO TECHNOLOGY2009年8月第19卷No.8,VideoCoding With Low-Complexity Directional Adaptive Interpolation Filters,Dmytro Rusanovskyy,Kemal Ugur,Antti Hallapuro,Jani Lainema,andMoncef Gabbouj。
发明内容
本发明所要解决的问题
如图1所示,在传统的插值中,需要在子像素周围的最多6×6像素,所述子像素将通过插值生成。因此,在具有分数精度的运动补偿操作中,需要在比运动补偿操作的目标块更大的区域中的像素。
如图2所示,在8×8个像素的块上执行分数精度运动补偿操作,需要对应于该块的、由带点的方格所表示的8×8像素和包含由8×8像素的外侧上的阴影方格所表示的像素的13×13像素。因此,在帧间预测中执行具有分数精度的运动补偿操作的情况下,存储有参考图像的存储器的带宽很大。
鉴于上述情况,研发了本技术,并且当在帧间预测中执行具有分数精度的运动补偿操作时,本技术将减小所使用的存储器带宽。
解决问题的方法
本技术的一个方面的图像处理装置是一种图像处理装置,其包括:像素读取单元,其在帧间预测中从参考图像中读取预定像素;以及算术运算单元,其通过使用由像素读出单元所读出的预定像素,计算参考图像中的分数位置的像素,作为帧间预测中的预测图像的像素。像素读出单元读出预定的像素,使得对应于预测图像中的外部像素的预定像素的数目小于对应于预测图像中的内部像素的预定像素的数目。
本技术的一个方面的图像处理方法和程序与本技术的一个方面的图像处理装置相适应。
在本技术的一个方面中,在帧间预测中从参考图像读出预定像素,并且通过使用所读取的预定像素,来计算参考图像中的分数位置的像素,作为帧间预测中的预测图像的像素。读出预定像素,使得对应于预测图像中的外部像素的预定像素的数目小于对应于预测图像的内部像素的预定像素数目。
本发明的效果
根据本技术,当在帧间预测中执行具有分数精度的运动补偿操作时,能够减少所使用的存储带宽。
附图说明
图1是示出在生成子像素中使用的像素示例的示意图。
图2是示出在执行具有分数精度的运动补偿操作的情况下参考像素的范围的示意图。
图3是示出作为应用了本技术的图像处理装置的编码装置的实施例的示例结构的框图。
图4是示出图3中所示的帧间预测单元的第一示例结构的框图。
图5是示出在块尺寸是8×8像素的情况下的参考像素示例的示意图。
图6是示出在块尺寸是8×8像素的情况下的参考像素范围示例的示意图。
图7是示出在块尺寸是32×32像素的情况下的参考像素范围示例的示意图。
图8是示出在块尺寸是16×32像素的情况下的参考像素范围示例的示意图。
图9是示出在块尺寸是32×16像素的情况下的参考像素范围示例的示意图。
图10是示出在块尺寸是16×16像素的情况下的参考像素范围示例的示意图。
图11是示出在块尺寸是8×16像素的情况下的参考像素范围示例的示意图。
图12是示出在块尺寸是16×8像素的情况下的参考像素范围示例的示意图。
图13是示出在块尺寸是4×8像素的情况下的参考像素范围示例的示意图。
图14是示出在块尺寸是8×4像素的情况下的参考像素范围示例的示意图。
图15是示出在块尺寸是4×4像素的情况下的参考像素范围示例的示意图。
图16是用于解释生成预测像素的方法的第一示意图。
图17是用于解释生成预测像素的方法的第二示意图。
图18是用于解释生成预测像素的方法的第三示意图。
图19是用于解释生成预测像素的方法的第四示意图。
图20是用于解释图3中所示的编码装置的编码操作的第一流程图。
图21是用于解释图3中所示的编码装置的编码操作的第二流程图。
图22是用于详细解释帧间预测操作的第一示例的第一流程图。
图23是用于详细解释帧间预测操作的第一示例的第二流程图。
图24是示出作为应用了本技术的图像处理装置的解码装置的示例结构的框图。
图25是用于解释图24中所示的解码装置的解码操作的流程图。
图26是示出图3中示出的帧间预测单元的第二示例结构的框图。
图27是示出生成像素的第一示例的示意图。
图28是用于详细解释帧间预测操作的第二示例的第一流程图。
图29是用于详细解释帧间预测操作的第二示例的第二流程图。
图30是示出图3中所示的帧间预测单元的第三示例结构的框图。
图31是示出用于生成子像素a至c的第一范围的复制后生成像素的图。
图32是示出用于生成子象素d、h和l的第一范围的复制后生成像素的图。
图33是示出用于生成子象素e、f、g、i、j、k、m、n和o的第一范围的复制后生成像素的图。
图34是示出用于生成子像素a至c的第二范围的复制后生成像素的图。
图35是示出用于生成子象素d、h和l的第二范围的复制后生成像素的图。
图36是示出用于生成子象素e、f、g、i、j、k、m、n和o的第二范围的复制后生成像素的图。
图37是用于详细解释帧间预测操作的第三示例的第一流程图。
图38是用于详细解释帧间预测操作的第三示例的第二流程图。
图39是用于详细解释图37的读出操作的流程图。
图40是用于解释参考像素范围的第一示例的第一示意图。
图41是用于解释参考像素范围的第一示例的第二示意图。
图42是示出生成像素的第二示例的示意图。
图43是示出生成像素的第三示例的示意图。
图44是示出图3中所示的帧间预测单元的第四示例结构的框图。
图45是用于详细解释帧间预测操作的第四示例的第一流程图。
图46是用于详细解释帧间预测操作的第四示例的第二流程图。
图47是用于详细解释图45的读出操作的流程图。
图48是示出图3中所示的帧间预测单元的第五示例结构的框图。
图49是用于详细解释帧间预测操作的第五示例的第一流程图。
图50是用于详细解释帧间预测操作的第五示例的第二流程图。
图51是用于详细解释图49的读出操作的流程图。
图52是示出图3中所示的帧间预测单元的第六示例结构的框图。
图53是示出了图52中所示的帧间预测单元的参考像素范围的第一示例的示意图。
图54是示出了图52中所示的帧间预测单元的参考像素范围的第二示例的示意图。
图55是用于详细解释帧间预测操作的第六示例的第一流程图。
图56是用于详细解释帧间预测操作的第六示例的第二流程图。
图57是用于详细解释图55的读出操作的流程图。
图58是示出图52中所示的帧间预测单元的参考像素范围的第三示例的示意图。
图59是示出图52中所示的帧间预测单元的参考像素范围的第四示例的示意图。
图60是示出图52中所示的帧间预测单元的参考像素范围的第五示例的图。
图61是示出图3中所示的帧间预测单元的第七示例结构的框图。
图62是用于详细解释帧间预测操作的第七示例的第一流程图。
图63是用于详细解释帧间预测操作的第七示例的第二流程图。
图64是示出图3中所示的帧间预测单元的第八示例结构的框图。
图65是示出图64中所示的帧间预测单元中的参考像素的第一示例的图。
图66是用于详细解释帧间预测操作的第八示例的第一流程图。
图67是用于详细解释帧间预测操作的第八示例的第二流程图。
图68是示出图64中所示的帧间预测单元中的参考像素的第二示例。
图69是示出了图64中所示的帧间预测单元中的参考像素的第三示例。
图70是示出图64中所示的帧间预测单元中的参考像素的第四示例。
图71是示出图3中所示的帧间预测单元的第九示例结构的框图。
图72是示出了复制后生成像素的第一示例的示意图。
图73是用于详细解释帧间预测操作的第九示例的第一流程图。
图74是用于详细解释帧间预测操作的第九示例的第二流程图。
图75是示出了复制后生成像素的第二示例的图。
图76是示出了复制后生成像素的第三示例的图。
图77是示出图3中所示的帧间预测单元的第十示例结构的框图。
图78是示出在水平方向排列的外部生成像素的数目与垂直方向的数目相同的情况下的示例参考像素的示意图。
图79是示出在图77中示出的帧间预测单元的示例参考像素的图。
图80是示出帧存储器中的一个帧的像素值的示例布局的示意图。
图81是用于详细解释帧间预测操作的第十示例的第一流程图。
图82是用于详细解释帧间预测操作的第十示例的第二流程图。
图83是示出图3所示的帧间预测单元的第十一示例结构的框图。
图84是示出图83所示的颜色帧间预测单元的示例结构的框图。
图85是示出生成像素的数目与参考像素的数目之间的关系的曲线图。
图86是示出存储在图83所示的LUT(查找表)中的生成像素的数目的示例的示意图。
图87是示出存储在图83所示的LUT中的生成像素的数目的示例的图。
图88是示出图83所示的亮度帧间预测单元的示例结构的框图。
图89是示出存储在图88所示的LUT中的生成像素的数目的示例的图。
图90是示出存储在图88所示的LUT中的生成像素的数目的示例的图。
图91是用于解释颜色帧间预测操作的第一流程图。
图92是用于解释颜色帧间预测操作的第二流程图。
图93是用于解释正规化参考像素数目的特性的示意图。
图94是用于解释正规化参考像素数目的特性的示意图。
图95是用于解释正规化参考像素数目的特性的示意图。
图96是用于解释正规化参考像素数目的特性的示意图。
图97是用于解释正规化参考像素数目的特性的示意图。
图98是用于解释正规化参考像素数目的特性的示意图。
图99是用于解释正规化参考像素数目的特性的示意图。
图100是用于解释正规化参考像素数目的特性的示意图。
图101是示出计算机的实施方式的示例结构的框图。
图102是示出电视接收机的典型示例结构的框图。
图103是示出便携式电话装置的典型示例结构的框图。
图104是示出硬盘记录器的典型示例结构的框图。
图105是示出相机的典型示例结构的框图。
用于执行本发明的方式
<第一实施方式>
[编码装置的实施方式的示例结构]
图3是示出作为应用了本技术的图像处理装置的编码装置的实施方式的示例结构的框图。
图3所示的编码装置10包括A/D转换器11、屏幕重排缓冲器12、算术运算单元13、正交变换单元14、量化单元15、无损编码单元16、累积缓冲器17、逆量化单元18、逆正交变换单元19、加法单元20、去块效应滤波器21、帧存储器22、帧内预测单元23、帧间预测单元24、运动预测单元25、选择单元26以及率控制单元27。图3所示的编码装置10通过H.264/AVC对输入图像执行压缩编码。
具体地,编码装置10的A/D转换器11对作为输入信号的、基于帧的图像输入执行A/D转换,并且将图像输出并存储在屏幕重排缓冲器12中。屏幕重排缓冲器12对按照显示顺序存储的图像的帧进行重排,使得图像的帧按照GOP(画面组)结构以编码顺序进行布置。重排的基于帧的图像被输出至算术运算单元13、帧内预测单元23以及运动预测单元25。
算术运算单元13用作差计算单元,并计算由选择单元26提供的预测图像与从屏幕重排缓冲器12输出的编码目标图像之间的差。具体地,算术运算单元13将从屏幕重排缓冲器12输出的编码目标图像中减去由选择单元26提供的预测图像。算术运算单元13将通过减法操作所获得的图像作为残差信息输出至正交变换单元14。当选择单元26不提供任何预测图像时,算术运算单元13将从屏幕重排缓冲器12读取的图像作为残差信息输出至正交变换单元14。
正交变换单元14对由算术运算单元13提供的残差信息执行正交变换,例如离散余弦变换或卡洛南-洛伊夫(Karhunen-Loeve)变换,并将由此生成的系数提供给量化单元15。
量化单元15对由正交变换单元14提供的系数进行量化。经量化的系数被输入至无损编码单元16。
无损编码单元16从帧内预测单元23获取表示最佳帧内预测模式的信息(以下称为帧内预测模式信息),并从帧间预测单元24获取表示最佳帧间预测模式的信息(以下称为帧间预测模式信息)以及运动矢量等。
无损编码单元16对由量化单元15提供的经量化的系数执行无损编码,例如可变长度编码(例如,CAVLC(Context-Adaptive BinaryArithmetic Coding,上下文的自适应可变长度编码))或算术编码(例如,CABAC(Context-Adaptive Binary Arithmetic Coding,上下文的自适应二进制算术编码)),并将由此生成的信息转换成压缩图像。无损编码单元16还对帧内预测模式信息或帧间预测模式信息和运动矢量等执行无损编码,并使由此生成的信息转换成待添加至压缩图像的报头信息(headerinformation)。无损编码单元16将添加了通过无损编码而获得的报头信息的压缩图像作为压缩图像信息提供并存储在累积缓冲器17中。
累积缓冲器17暂时地存储由无损编码单元16提供的压缩图像信息,并将该压缩图像信息输出至例如后续阶段中的记录装置、传输路径等(未示出)。
从量化单元15输出的经量化的系数还被输入至逆量化单元18,并在逆量化之后被提供给逆正交变换单元19。
逆正交变换单元19对由逆量化单元18提供的系数执行逆正交变换例如逆离散余弦变换或逆Karhunen-Loeve变换,并将由此生成的残差信息提供给加法单元20。
加法单元20用作加法操作单元,将由逆正交变换单元19提供的作为解码目标图像的残差信息添加至由选择单元26提供的预测图像,并获得本地解码图像。如果不存在由选择单元26提供的预测图像,则加法单元20将由逆正交变换单元19提供的残差信息设置为本地解码图像。加法单元20将本地解码图像提供给去块效应滤波器21,并将本地解码图像作为参考图像提供给帧内预测单元23。
去块效应滤波器21对由加法单元20提供的本地解码图像执行滤波,以去除块失真。去块效应滤波器21将由此生成的图像提供并存储至帧存储器22中。存储在帧存储器22中的图像然后作为参考图像被输出至帧间预测单元24和运动预测单元25。
基于从屏幕重排缓冲器12读取的图像和由加法单元20提供的参考图像,帧内预测单元23以所有候选帧内预测模式执行帧内预测,并生成预测图像。
帧内预测单元23还针对所有候选帧内预测模式计算成本函数值(随后详细描述的)。然后帧内预测单元23将具有最小成本函数值的帧内预测模式确定为最佳帧内预测模式。帧内预测单元23将以最佳帧内预测模式生成的预测图像以及相应的成本函数值提供给选择单元26。当被通知以最佳帧内预测模式生成的预测图像被选择单元26选中时,帧内预测单元23将所述帧内预测模式提供给无损编码单元16。
应当注意的是,成本函数值还被称为RD(Rate Distortion,率失真)成本,并通过如JM(联合模型)中所指定的高复杂度模式(High Complexitymode)或低复杂度模式(Low Complexity mode)的技术进行计算,所述技术例如是H.264/AVC中的参考软件。
具体地,当使用高复杂度模式作为计算成本函数值的方法时,对所有候选预测模式暂时地执行以无损编码而结束的操作,并且针对每个预测模式来计算由以下等式(1)表达的成本函数值。
成本(模式)=D+λ·R···(1)
D表示原始图像与解码图像之间的差(失真),R表示包括正交变换系数的比特生成率,并且λ表示根据量化参数QP所给出的拉格朗日乘子。
另一方面,当使用低复杂度模式作为计算成本函数值的方法时,生成解码图像,并且按照所有候选预测模式计算报头比特。例如表示预测模式的信息。然后针对每个预测模式来计算由以下等式(2)表达的成本函数值。
成本(模式)=D+QPtoQuant(QP).Header_Bit···(2)
D表示原始图像与解码图像之间的差(失真),Header_Bit表示对应于预测模式的报头比特,并且QPtoQuant是根据量化参数QP所给出的函数。
在低复杂度模式中,按照所有预测模式简单地生成解码图像,而没有必要执行无损编码。因此,计算量比较小。应当注意的是,本文中使用高复杂度模式来作为计算成本函数值的方法。
基于帧间预测模式信息和由运动预测单元25提供的运动矢量,帧间预测单元24从帧存储器22读取参考图像。基于运动矢量和从帧存储器22读取的参考图像,帧间预测单元24执行帧间预测操作。具体地,帧间预测单元24基于运动矢量对参考图像执行插值,以执行具有分数精度的运动补偿操作。帧间预测单元24将由此生成的预测图像和由运动预测单元25提供的成本函数值提供给选择单元26。当被告知按照最佳帧间预测模式生成的预测图像被选择单元26选中时,帧间预测单元24将帧间预测模式信息和相应的运动矢量等输出至无损编码单元16。
基于由屏幕重排缓冲器12提供的图像和由帧存储器22提供的参考图像,运动预测单元25按照所有候选帧间预测模式来执行运动预测操作,并生成具有分数精度的运动矢量。具体地,运动预测单元25以与帧间预测单元24相同的方式,按照每个帧间预测模式对参考图像执行插值。在每个帧间预测模式中,运动预测单元25在插值的参考图像与由屏幕重排缓冲器12提供的图像之间进行匹配,以生成具有分数精度的运动矢量。在该实施方式中,通过插值生成1/2像素位置的子像素,并且运动矢量精度为1/2像素精度。
在这点上,运动预测单元25针对所有候选帧间预测模式来计算成本函数值,并将具有最小成本函数值的帧间预测模式确定为最佳帧间预测模式。然后运动预测单元25将帧间预测模式信息、相应的运动矢量以及相应的成本函数值提供给帧间预测单元24。
应当注意的是,帧间预测模式是表示要经历帧间预测的块的尺寸、预测方向以及参考索引的信息。就预测方向而言,存在有:向前预测(“L0预测”),其使用显示时间比要经历帧间预测的图像更早的参考图像;反向预测(“L1预测”),其使用显示时间比要经历帧间预测的图像更晚的参考图像;以及双向预测(“Bi-预测”),其使用显示时间比要经历帧间预测的图像更早的参考图像和比要经历帧间预测的图像更晚的参考图像。参考索引是用于识别参考图像的号码,并且与要经历帧间预测的图像较近的图像,具有较小的参考索引号码。
基于由帧内预测单元23和帧间预测单元24提供的成本函数值,选择单元26确定作为最佳预测模式的最佳帧内预测模式或最佳帧间预测模式。然后选择单元26将最佳预测模式中的预测图像提供给算术运算单元13以及加法单元20。选择单元26还将最佳预测模式中选择的预测图像通知帧内预测单元23或帧间预测单元24。
基于存储在累积缓冲器17中的压缩图像信息,率控制单元27对量化单元15的量化操作率进行控制,以免引起上溢或下溢。
[帧间预测单元的第一示例结构]
图4是示出图3所示的帧间预测单元24的第一示例结构的框图。
为了便于说明,图4仅示出了涉及帧间预测单元24的帧间预测操作的块,而并未示出输出成本函数值、帧间预测模式信息和运动矢量等的块。
在图4中,帧间预测单元24包括参考图像读取单元41、像素分类单元42、2抽头FIR滤波器43、4抽头FIR滤波器44、6抽头FIR滤波器45、2抽头滤波器系数存储器46、4抽头滤波器系数存储器47、6抽头滤波器系数存储器48、像素选择单元49以及中间结果存储器50。
基于包含在由图3所示的运动预测单元25提供的帧间预测模式信息中的参考索引和预测方向,帧间预测单元24的参考图像读取单元41识别存储在帧存储器22中的图像中的参考图像。基于运动矢量的整数值和包含在帧间预测模式信息中的块尺寸,参考图像读取单元41从帧存储器22读取用于生成预测图像的参考图像的像素(以下称为参考像素),并暂时地存储这些参考像素。
参考图像读取单元41用作像素读取单元。针对预测图像的每个像素(以下称为预测像素),参考图像读取单元41在暂时存储的参考像素中读取用于生成预测像素的参考像素。在这点上,参考图像读取单元41读取参考像素,使得用于生成外部预测像素的参考像素的数目变得小于用于生成内部预测像素的参考像素的数目。在此,用于生成预测像素的参考像素的数目等于2、4或6。然后参考图像读取单元41将所读取的参考像素提供给像素分类单元42。
像素分类单元42将由参考图像读取单元41提供的参考像素设置为生成像素。基于由运动预测单元25提供的运动矢量的分数值,像素分类单元42还从中间结果存储器50读取对应于生成目标预测像素的子像素,作为生成像素。在这点上,像素分类单元42读取子像素,使得用于生成外部预测像素的子像素的数目变得小于用于生成内部预测像素的子像素的数目。在此,用于生成预测像素的子像素的数目等于2、4或6。
根据生成像素的数目,像素分类单元42将生成像素提供给2抽头FIR滤波器43、4抽头FIR滤波器44或6抽头FIR滤波器45。具体地,当生成像素的数目等于2时,像素分类单元42将生成像素提供给2抽头FIR滤波器43,而当生成像素的数目等于4时,像素分类单元42将生成像素提供给4抽头FIR滤波器44。当生成像素的数目等于6时,像素分类单元42将生成像素提供给6抽头FIR滤波器45。
2抽头FIR滤波器43用作算术运算单元,并通过使用由像素分类单元42提供的两个生成像素和由2抽头滤波器系数存储器46提供的滤波器系数来执行计算。2抽头FIR滤波器43将由此生成的一个像素提供给像素选择单元49。
4抽头FIR滤波器44用作算术运算单元,并通过使用由像素分类单元42提供的四个生成像素和由4抽头滤波器系数存储器47提供的滤波器系数来执行计算。4抽头FIR滤波器44将由此生成的一个像素提供给像素选择单元49。
6抽头FIR滤波器45用作算术运算单元,并通过使用由像素分类单元42提供的六个生成像素和从6抽头滤波器系数存储器48提供的滤波器系数来进行计算。6抽头FIR滤波器45将由此生成的一个像素提供给像素选择单元49。
2抽头滤波器系数存储器46用作存储单元,并存储与运动矢量的分数值相关联的、用于2抽头FIR滤波器43的滤波器系数。基于由运动预测单元25提供的运动矢量的分数值,2抽头滤波器系数存储器46将所存储的并与所述分数值相关联的滤波器系数提供给2抽头FIR滤波器43。
4抽头滤波器系数存储器47用作存储单元,并存储与运动矢量的分数值相关联的、用于4抽头FIR滤波器44的滤波器系数。基于由运动预测单元25提供的运动矢量的分数值,4抽头滤波器系数存储器47将所存储的并与所述分数值相关联的滤波器系数提供给4抽头FIR滤波器44。
6抽头滤波器系数存储器48用作存储单元,并存储与运动矢量的分数值相关联的、用于6抽头FIR滤波器45的滤波器系数。基于由运动预测单元25提供的运动矢量的分数值,6抽头滤波器系数存储器48将所存储的并与所述分数值相关联的滤波器系数提供给6抽头FIR滤波器45。
基于由运动预测单元25提供的运动矢量的分数值,像素选择单元49将预测像素,即由2抽头FIR滤波器43、4抽头FIR滤波器44或6抽头FIR滤波器45提供的像素,输出至图3所示的选择单元26,或将预测像素提供给中间结果存储器50。
具体地,当运动矢量的水平分量和垂直分量中的至少一个分量的分数值为0时,像素选择单元49将由2抽头FIR滤波器43、4抽头FIR滤波器44或6抽头FIR滤波器45提供的像素作为预测像素提供给选择单元26。另一方面,当运动矢量的水平分量和垂直分量两者的分数值均不为0时,像素选择单元49将子像素,即由2抽头FIR滤波器43、4抽头FIR滤波器44或6抽头FIR滤波器45提供的像素,提供给中间结果存储器50,然后中间结果存储器50存储所提供的像素。结果,使用存储在中间结果存储器50中的子像素,2抽头FIR滤波器43、4抽头FIR滤波器44和6抽头FIR滤波器45再次执行计算。然后像素选择单元49将由此生成的子像素作为预测像素输出至选择单元26。
中间结果存储器50存储由像素选择单元49提供的子像素。
[参考像素的描述]
图5是示出在帧间预测块的尺寸是8×8像素的情况下,用于生成沿水平方向排列、沿水平方向具有1/2像素位置并沿垂直方向具有整数位置的八个预测像素中的每个预测像素的参考像素的示例的示意图。
在图5中,分配有数字的每个方格表示预测像素,而没有数字的每个方格则表示参考像素。每个带点的方格表示用于生成预测像素的参考像素中的位于帧间预测块的尺寸范围内的参考像素,而阴影方格则表示在帧间预测块的尺寸范围之外的参考像素。
在图5所示的示例中,通过使用两个参考像素来生成每个最外部预测像素,通过使用四个参考像素来生成每个次外部预测像素,通过使用六个参考像素来生成位于次外部预测像素的内侧的每个预测像素(包括最内部预测像素)。
具体地,由位于沿水平方向排列、沿水平方向具有1/2像素位置并沿垂直方向具有整数位置的八个预测像素中的最外部的并且分配有数字1和数字8的方格所表示的每个预测像素,通过使用共计两个参考像素来生成,所述两个参考像素包括在预测像素的每一侧上的各一个参考像素。也就是说,在参考图像中由分配有数字8的方格所表示的预测像素的位置为如下位置:在用于生成各个预测像素的所有参考像素的范围(参考块)中、在帧间预测块的尺寸范围与帧间预测块的尺寸范围之外的范围之间的边界处。
由位于由分配有数字1的方格所表示的预测像素的内侧并且分配有数字2的次外部方格所表示的预测像素和由位于由分配有数字8的方格所表示的预测像素的内侧并且分配有数字7的次最外部方格所表示的预测像素均通过使用共计四个参考像素来生成,所述四个参考像素包括在预测像素的每一侧上的各两个参考像素。也就是说,通过使用由阴影方格所表示的最右侧的参考像素来生成由分配有数字7的方格所表示的预测像素,所述最右侧的参考像素还用于生成由分配有数字8的方格所表示的预测像素。
由位于由分配有数字2的方格所表示的预测像素和由分配有数字7的方格所表示的预测像素的内侧并且分配有数字3至数字6的方格所表示的每个预测像素通过使用共计六个参考像素来生成,所述六个参考像素包括在预测像素的每一侧上的各三个参考像素。
图6是示出在帧间预测块的尺寸是8×8像素的情况下用于生成任意分数位置的预测像素的所有参考像素的示例的示意图。
在图6中,每个方格表示参考像素。具有最少的点的每个方格表示用于生成位于其右侧、紧下方以及其右下侧的预测像素的参考像素。通过使用两个参考像素来生成每个预测像素。具有次少的点的每个方格表示用于生成位于其右侧、紧下方以及其右下侧的预测像素的参考像素。通过使用四个参考像素来生成每个预测像素。具有第三少的点的每个方格表示用于生成位于其右侧、紧下方以及其右下侧的预测像素的参考像素。通过使用六个参考像素来生成每个预测像素。另外,每个阴影方格表示在用于生成预测像素的所有参考像素中的、位于帧间预测块的尺寸范围之外的范围内的参考像素。
在图6所示的示例中,通过使用两个参考像素来生成每个最外部预测像素,通过使用四个参考像素来生成每个次外部预测像素,并且通过使用六个参考像素来生成位于次外部预测像素的内侧的、包括最内部预测像素的每个预测像素,如图5的示例情况。
例如,位于右下角处、参考像素的右侧的预测像素通过使用沿水平方向排列并由图6中的虚线围绕的两个参考像素来生成。位于右下角处、参考像素的紧下方的预测像素是通过使用沿垂直方向排列并由图6中的虚线围绕的两个参考像素来生成的。
因此,在图6所示的示例中,当帧间预测块的尺寸是8×8像素时,在生成任意分数位置中的预测像素时所使用的所有参考像素的范围(参考块)是8×8像素和9×9像素的范围,8×8像素的范围是帧间预测块的尺寸,9×9像素的范围包括在帧间预测块的尺寸范围的右侧的一列像素和在帧间预测块的尺寸范围的紧下方的一行像素。鉴于此,参考图像读取单元41应当从帧存储器22读取9×9像素的范围内的参考像素。
如上所述,在编码装置10中,用于生成外部预测像素的参考像素的数目小于用于生成内部预测像素的参考像素的数目。因此,与图2所示的常规情况相比,可以使得帧间预测所需的参考像素的数目较小。结果,可以降低帧存储器22中的存储带宽的使用量。
图7至图15是示出在帧间预测块的尺寸分别是32×32像素、16×32像素、32×16像素、16×16像素、8×16像素、16×8像素、4×8像素、8×4像素以及4×4像素的情况下,用于生成任意分数位置的预测像素的所有参考像素的示例的示意图。
在图7至图15中,每个方格表示参考像素。每个带点的方格表示在用于生成预测像素的所有参考像素中的、位于帧间预测块的尺寸范围内的参考像素,而每个阴影方格表示在帧间预测块的尺寸范围之外的参考像素。
在图7至图15所示的示例中,通过使用两个参考像素来生成每个最外部预测像素,通过使用四个参考像素来生成每个次外部预测像素,通过使用六个参考像素来生成位于次外部预测像素的内侧、包括最内部预测像素的每个预测像素,如图5和图6所示的示例情况。
因此,如图7所示,当帧间预测块的尺寸是32×32像素时,在生成任意分数位置的预测像素时使用的所有参考像素的范围是32×32像素和33×33像素的范围,32×32像素的范围是帧间预测块的尺寸,33×33像素的范围包括在帧间预测块的尺寸范围的右侧的一列像素和在帧间预测块的尺寸范围的紧下方的一行像素。
同样地,如图8至图15所示,当帧间预测块的尺寸分别是16×32像素、32×16像素、16×16像素、8×16像素、16×8像素、4×8像素、8×4像素以及4×4像素时,在生成任意分数位置的预测像素时要使用的所有参考像素的范围为:帧间预测块的尺寸的范围,以及包括在帧间预测块的尺寸范围的右侧的一列像素和在帧间预测块的尺寸范围的紧下方的一行像素的范围。
另一方面,在帧间预测期间,在执行经常使用6抽头FIR滤波器的常规插值的情形下,在生成任意分数位置的预测像素时使用的所有参考像素的范围与图7至图15所示的情况显著不同。例如,当帧间预测块的尺寸是4×4像素时,在生成任意分数位置的预测像素时使用的所有参考像素的范围是4×4像素的范围和9×9像素的范围,4×4像素的范围是帧间预测块的尺寸,9×9像素的范围包括在帧间预测块的尺寸范围的左侧的两列像素、在帧间预测块的尺寸范围的紧上方的两行像素、在帧间预测块的尺寸范围的右侧的三列像素以及在帧间预测块的尺寸范围的紧下方的三行像素。
[生成预测像素的方法的描述]
图16至图19是用于解释在图4所示的帧间预测单元24处生成预测像素的方法的示意图。
在图16至图19中,分配有数字的每个方格表示子像素,而没有数字的每个方格则表示参考像素。每个带点的方格表示在用于生成预测像素的参考像素中的、位于帧间预测块的尺寸范围内的参考像素,而每个阴影方格则表示在帧间预测块的尺寸范围之外的参考像素。
在图16至图19所示的示例中,每个帧间预测块的尺寸是4×4像素,并且预测像素沿水平方向和垂直方向的位置均是1/2像素位置。
在该情况下,首先,如图16所示,对于沿水平方向的位置是1/2像素位置并且沿垂直方向的位置是整数位置的子像素,生成了由位于顶行的并且分配有数字1至数字4的方格所表示的子像素。在这点上,最外部子像素均是通过使用两个参考像素来生成的,位于最外部子像素的内侧的子像素或最内部子像素均是通过使用四个参考像素来生成的。
具体地,参考图像读取单元41首先将位于分配有数字1的方格所表示的左上方子像素的右侧和左侧的两个参考像素,经由像素分类单元42提供给2抽头FIR滤波器43。所述两个参考像素分别位于两侧。然后2抽头FIR滤波器43根据两个参考像素生成由分配有数字1的方格所表示的子像素,并且像素选择单元49将该子像素提供并存储至中间结果存储器50中。
然后参考图像读取单元41将位于分配有数字2的方格所表示的子像素的右侧和左侧的四个参考像素经由像素分类单元42提供给4抽头FIR滤波器44,所述分配有数字2的方格位于由分配有数字1的方格所表示的子像素的右侧。所述四个参考像素在每侧各有两个参考像素。然后4抽头FIR滤波器44根据所述四个参考像素生成由分配有数字2的方格所表示的子像素,并且像素选择单元49将该子像素提供并存储至中间结果存储器50中。
然后参考图像读取单元41将位于由分配有数字3的方格所表示的子像素的右侧和左侧的四个参考像素经由像素分类单元42提供给4抽头FIR滤波器44,所述分配有数字3的方格位于由分配有数字2的方格所表示的子像素的右侧。四个参考像素中,在每侧上各有两个参考像素。然后4抽头FIR滤波器44根据所述四个参考像素生成由分配有数字3的方格所表示的子像素,并且像素选择单元49将该子像素提供并存储至中间结果存储器50中。
然后参考图像读取单元41将位于分配有数字4的方格所表示的右上方子像素的右侧和左侧的两个参考像素,经由像素分类单元42提供给2抽头FIR滤波器43。两个参考像素中,在每侧各有一个参考像素。然后2抽头FIR滤波器43根据所述两个参考像素生成由分配有数字4的方格所表示的子像素,并且像素选择单元49将该子像素提供并存储至中间结果存储器50中。
在以上述方式生成由分配有数字1至数字4的方格所表示的子像素之后,对于沿水平方向的位置是1/2像素位置并且沿垂直方向的位置是整数位置的子像素,以与上述方式相同的方式按顺序地生成由分配有数字5至数字20的方格所表示的、在上方第二行至第五行的子像素,其中沿水平方向每次生成一个子像素,如图17所示。所生成的子像素被存储至中间结果存储器50中。
如图18所示,然后生成由分配有数字21至数字24的方格所表示的子像素,作为位于最左侧的预测像素。在这点上,通过使用两个子像素来生成每个最外部预测像素,位于最外部的预测像素的内侧的预测像素或最内部的预测像素均通过使用四个子像素来生成。
具体地,像素分类单元42从中间结果存储器50读取由分配有数字1和数字5的方格所表示的并且位于由分配有数字21的方格所表示的子像素的上方和下方的两个子像素(每边各一个子像素),并将所述两个子像素提供给2抽头FIR滤波器43。然后2抽头FIR滤波器43根据所述两个子像素生成由分配有数字21的方格所表示的作为预测像素的子像素,并且像素选择单元49将预测像素输出至选择单元26(图3)。
然后,像素分类单元42从中间结果存储器50读取位于由分配有数字22的方格所表示的子像素的上方和下方的四个子像素(每边各两个子像素),并将所述四个子像素提供给4抽头FIR滤波器44,所述分配有数字22的方格所表示的子像素位于由分配有数字21的方格所表示的子像素的下方,所述四个子像素由分配有数字1、5、9和13的方格表示并且其沿垂直方向的位置具有整数位置。然后4抽头FIR滤波器44根据四个子像素生成由分配有数字22的方格所表示的作为预测像素的子像素,像素选择单元49将预测像素输出至选择单元26。
然后像素分类单元42从中间结果存储器50读取位于由分配有数字23的方格所表示的子像素的上方和下方的四个子像素(每边各两个子像素),并将所述四个子像素提供给4抽头FIR滤波器44,由分配有数字23的方格所表示的子像素位于由分配有数字22的方格所表示的子像素的下方,所述四个子像素由分配有数字5、9、13和17的方格表示,并其沿垂直方向的位置具有整数位置。然后4抽头FIR滤波器44根据所述四个子像素生成由分配有数字23的方格所表示的作为预测像素的子像素,像素选择单元49将预测像素输出至选择单元26。
然后像素分类单元42从中间结果存储器50读取位于由分配有数字24的方格所表示的子像素的上方和下方的两个子像素(每边各一个子像素),并将所述两个子像素提供给2抽头FIR滤波器43,分配有数字24的方格所表示的子像素位于由分配有数字23的方格所表示的子像素的下方,所述两个子像素由分配有数字13和17的方格表示。然后2抽头FIR滤波器43根据所述两个子像素生成由分配有数字24的方格所表示的作为预测像素的子像素,像素选择单元49将预测像素输出至选择单元26。
在以上述方式生成由分配有数字21至数字24的方格所表示的、在最左侧的子像素之后,如图19所示,以与上述方式相同的方式按顺序地生成由分配有数字25至数字36的方格所表示的、左方第二列至第四列的子像素,作为预测像素,其中沿垂直方向每次生成一个子像素。所生成的子像素被输出至选择单元26。
[编码装置的操作的描述]
图20和图21示出了用于解释图3所示的编码装置10的编码操作的流程图。每次执行该编码操作时,基于帧的图像作为输入信号被输入至编码装置10。
在图20的步骤S11中,编码装置10的A/D转换器11对作为输入信号被输入的基于帧的图像执行A/D转换,并且将图像输出并存储至屏幕重排缓冲器12中。
在步骤S12中,屏幕重排缓冲器12对按照显示顺序存储的图像的帧进行重排,使得图像的帧按照GOP(画面组)结构以编码顺序进行布置。屏幕重排缓冲器12将重排的基于帧的图像提供给算术运算单元13、帧内预测单元23以及运动预测单元25。
应当注意的是,例如针对每一个宏块执行下述步骤S13至步骤S30的过程。然而,在I-片的宏块(例如第一帧的第一宏块)的处理期间,不执行步骤S13至步骤S20以及步骤S28的过程,并且第一帧的图像被设置为残差信息和本地解码图像。
在步骤S13中,基于从屏幕重排缓冲器12读取的图像和由加法单元20提供的参考图像,帧内预测单元23按照所有候选帧内预测模式执行帧内预测,并生成预测图像。帧内预测单元23还针对所有候选帧内预测模式来计算成本函数值。然后帧内预测单元23将具有最小成本函数值的帧内预测模式确定为最佳帧内预测模式。帧内预测单元23将按照最佳帧内预测模式生成的预测图像和相应的成本函数值提供给选择单元26。
在步骤S14中,运动预测单元25通过使用由帧存储器22提供的参考图像,按照所有候选帧间预测模式来对由屏幕重排缓冲器12提供的图像执行运动预测操作,并生成具有分数精度的运动矢量。运动预测单元25还针对所有候选帧间预测模式来计算成本函数值,并将具有最小成本函数值的帧间预测模式确定为最佳帧间预测模式。然后运动预测单元25将帧间预测模式信息、相应的运动矢量以及相应的成本函数值提供给帧间预测单元24。
在步骤S15中,帧间预测单元24基于从运动预测单元25提供的帧间预测模式信息和运动矢量来执行帧间预测操作。随后将会参照图22至图23对该帧间预测操作进行详细描述。帧间预测单元24将由于帧间预测操作而生成的预测图像和由运动预测单元25提供的成本函数值提供给选择单元26。
在步骤S16中,基于由帧内预测单元23和帧间预测单元24提供的成本函数值,选择单元26确定最佳预测模式即最佳帧内预测模式或最佳帧间预测模式,所述最佳预测模式具有最小成本函数值。然后选择单元26将最佳预测模式下的预测图像提供给算术运算单元13和加法单元20。
在步骤S17中,选择单元26确定最佳预测模式是否为最佳帧间预测模式。如果在步骤S17中确定出最佳预测模式是最佳帧间预测模式,则选择单元26将按照最佳帧间预测模式生成的预测图像的选择通知帧间预测单元24。然后帧间预测单元24将帧间预测模式信息和相应的运动矢量等输出至无损编码单元16。
在步骤S18中,无损编码单元16对由帧间预测单元24提供的帧间预测模式信息和运动矢量等执行无损编码,并将由此生成的信息设置为待添加至压缩图像的报头信息。然后操作进行至步骤S20。
另一方面,如果在步骤S17中确定出最佳预测模式不是最佳帧间预测模式,或如果确定出最佳预测模式是最佳帧内预测模式,则选择单元26将按照最佳帧内预测模式生成的预测图像的选择通知帧内预测单元23。因此,帧内预测单元23将帧内预测模式信息输出至无损编码单元16。
在步骤S19中,无损编码单元16对由帧内预测单元23提供的帧内预测模式信息等执行无损编码,并将由此生成的信息设置为待添加至压缩图像的报头信息。然后操作进行至步骤S20。
在步骤S20中,算术运算单元13将从屏幕重排缓冲器12提供的图像中减去由选择单元26提供的预测图像。算术运算单元13将由减法而获得的图像作为残差信息输出至正交变换单元14。
在步骤S21中,正交变换单元14对由算术运算单元13提供的残差信息执行正交变换,并将由此生成的系数提供给量化单元15。
在步骤S22中,量化单元15对由正交变换单元14提供的系数进行量化。经量化的系数被输入至无损编码单元16和逆量化单元18。
在步骤S23中,无损编码单元16对由量化单元15提供的经量化的系数执行无损编码,并将由此生成的信息设置为压缩图像。然后无损编码单元16将通过步骤S18或步骤S19的过程所生成的报头信息添加至压缩图像,以生成压缩图像信息。
在图21的步骤S24中,无损编码单元16将压缩图像信息提供并存储在累积缓冲器17中。
在步骤S25中,累积缓冲器17将压缩图像信息输出至例如后续阶段中的记录装置、传输路径等(未示出)。
在步骤S26中,逆量化单元18对由量化单元15提供的经量化的系数进行逆量化。
在步骤S27中,逆正交变换单元19对由逆量化单元18提供的系数执行逆正交变换,并将由此生成的残差信息提供给加法单元20。
在步骤S28中,加法单元20将由逆正交变换单元19提供的残差信息添加至由选择单元26提供的预测图像,并获得本地解码图像。加法单元20将所获得的图像提供给去块效应滤波器21,并还将所获得的图像作为参考图像提供给帧内预测单元23。
在步骤S29中,去块效应滤波器21对由加法单元20提供的本地解码图像执行滤波,以去除块失真。
在步骤S30中,去块效应滤波器21将经滤波的图像提供并存储至帧存储器22中。然后将存储在帧存储器22中的图像作为参考图像输出至帧间预测单元24和运动预测单元25。然后操作结束。
图22和图23示出了用于详细解释图20中的帧间预测操作步骤S15的第一示例的流程图。
在图22的步骤S50中,基于在由图3所示的运动预测单元25提供的帧间预测模式信息中所包含的预测方向和参考索引,帧间预测单元24的参考图像读取单元41(图4)在帧存储器22所存储的图像中识别参考图像。
在步骤S51中,参考图像读取单元41基于帧间预测模式信息中所包含的帧间预测块尺寸来确定预测图像的尺寸。
在步骤S52中,基于预测图像的尺寸和帧间预测模式信息中所包含的运动矢量的整数值,参考图像读取单元41从帧存储器22中读取在生成预测图像时要使用的参考像素,并暂时地存储这些参考像素。
在步骤S53中,参考图像读取单元41在形成预测图像的预测像素中来确定生成目标预测像素。所述预测像素是在步骤S53的过程中仍未被确定为生成目标预测像素的预测像素。
在步骤S54中,基于预测图像中生成目标预测像素的位置,参考图像读取单元41确定2、4或6为用于生成如下像素的参考像素的数目:该像素在对应于预测图像的参考图像中沿水平方向或垂直方向的位置是整数位置(在下文中该像素将被称为预测关联像素)。
应当注意的是,当生成目标预测像素的位置在参考图像中沿水平方向和垂直方向中的至少一个方向是整数位置时,预测关联像素是预测像素。另一方面,当生成目标预测像素的位置在参考图像中沿水平方向和垂直方向均是分数位置时,预测关联像素是仍未被生成的、在生成预测像素时要使用的、沿水平方向具有与预测像素相同位置并且沿垂直方向具有整数位置的像素。如果存在多于一个的预测关联像素,则针对每个预测关联像素执行步骤S54至步骤S65的过程。
在步骤S55中,基于在步骤S54中所确定的参考像素的数目和生成目标预测像素在参考图像中的位置,参考图像读取单元41在步骤S52所存储的参考像素中读取在生成预测关联像素时要使用的参考像素。然后参考图像读取单元41将所读取的参考像素提供给像素分类单元42。
在步骤S56中,基于与由运动预测单元25提供的运动矢量的预测关联像素对应的分量的分数值,2抽头滤波器系数存储器46读取所存储的并与所述分数值相关联的滤波器系数(外部系数),并将滤波器系数提供给2抽头FIR滤波器43。同样地,基于与运动矢量的预测关联像素对应的分量的分数值,4抽头滤波器系数存储器47和6抽头滤波器系数存储器48均读取所存储的并与所述分数值相关联的滤波器系数(内部系数),并将滤波器系数提供给4抽头FIR滤波器44和6抽头FIR滤波器45。
当生成目标预测像素在参考图像中沿水平方向和垂直方向中的仅一个方向的位置是分数位置时,对应于预测关联像素的分量是沿所述一个方向的分量。当生成目标预测像素在参考图像中沿水平方向和垂直方向的位置均是整数位置或分数位置时,对应于预测关联像素的分量是沿水平方向的分量。
在步骤S57中,像素分类单元42确定由参考图像读取单元41提供的参考像素的数目是否等于2。如果在步骤S57中确定出参考像素的数目等于2,则像素分类单元42将两个参考像素作为生成像素提供给2抽头FIR滤波器43。
在步骤S58中,2抽头FIR滤波器43通过使用由像素分类单元42提供的作为生成像素的两个参考像素与由2抽头滤波器系数存储器46提供的滤波器系数来执行计算。2抽头FIR滤波器43将由此生成的一个预测关联像素提供给像素选择单元49,然后操作进行至步骤S62。
另一方面,如果在步骤S57中确定出参考像素的数目不等于2,则在步骤S59中像素分类单元42确定由参考图像读取单元41提供的参考像素的数目是否等于4。如果在步骤S59中确定出参考像素的数目等于4,则像素分类单元42将四个参考像素作为生成像素提供给4抽头FIR滤波器44。
在步骤S60中,4抽头FIR滤波器44通过使用由像素分类单元42提供的作为生成像素的四个参考像素与由4抽头滤波器系数存储器47提供的滤波器系数来执行计算。4抽头FIR滤波器44将由此生成的一个预测关联像素提供给像素选择单元49,然后操作进行至步骤S62。
另一方面,如果在步骤S59中确定出参考像素的数目不等于4,或如果参考像素的数目等于6,则像素分类单元42将六个参考像素作为生成像素提供给6抽头FIR滤波器45。
在步骤S61中,6抽头FIR滤波器45通过使用由像素分类单元42提供的作为生成像素的六个参考像素与由6抽头滤波器系数存储器48提供的滤波器系数来执行计算。6抽头FIR滤波器45将由此生成的一个预测关联像素提供给像素选择单元49,然后操作进行至步骤S62。
在步骤S62中,像素选择单元49确定由运动预测单元25提供的运动矢量的水平分量和垂直分量的分数值是否均为非0,或预测像素在参考图像中沿水平方向和垂直方向的位置是否均是分数位置。如果在步骤S62中确定出运动矢量的水平分量和垂直分量中的至少一个的分数值为0,或如果预测像素在参考图像中沿水平方向和垂直方向中的至少一个方向的位置是整数位置,则操作进行至步骤S63。
在步骤S63中,像素选择单元49将由2抽头FIR滤波器43、4抽头FIR滤波器44或6抽头FIR滤波器45提供的预测关联像素作为预测像素输出至图3所示的选择单元26。
在步骤S64中,参考图像读取单元41确定是否已经生成所有预测像素,或形成预测图像的所有预测像素在步骤S53中是否已经被确定为生成目标预测像素。如果在步骤S64中确定还未生成所有预测像素,则操作返回至步骤S53,并且重复步骤S53至步骤S64的过程直至生成所有预测像素为止。
另一方面,如果在步骤S64中确定出已经生成所有预测像素,则操作返回到图20的步骤S15,然后进行至步骤S16。
如果在步骤S62中确定出运动矢量的水平分量和垂直分量的分数值均为非0,或如果预测像素在参考图像中沿水平方向和垂直方向的位置均是分数位置,则操作进行至步骤S65。
在步骤S65中,像素选择单元49将由2抽头FIR滤波器43、4抽头FIR滤波器44或6抽头FIR滤波器45提供的作为预测关联像素的子像素输出至中间结果存储器50,以存储子像素。
在步骤S66中,参考图像读取单元41确定是否已经生成所有预测关联像素,或形成预测图像的所有预测像素在步骤S53中是否已经被确定为生成目标预测像素。如果在步骤S66中确定还未生成所有预测关联像素,则操作返回到步骤S53,并且重复步骤S53至步骤S62、步骤S65和步骤S66的过程,直至生成所有预测关联像素为止。
另一方面,如果在步骤S66中确定出已经生成所有预测关联像素,则操作进行至图23的步骤S67。
在步骤S67中,参考图像读取单元41在形成预测图像的预测像素中确定生成目标预测像素。所述预测像素是在步骤S67的过程中仍未被确定为生成目标预测像素的预测像素。
在步骤S68中,基于生成目标预测像素在预测图像中沿垂直方向的位置,像素分类单元42确定2、4或6为由中间结果存储器50要读取的子像素的数目。
在步骤S69中,基于在步骤S68中所确定的子像素的数目和生成目标预测像素在参考图像中的位置,像素分类单元42从中间结果存储器50读取作为生成像素的子像素。
在步骤S70中,基于由运动预测单元25提供的运动矢量的垂直分量的分数值,2抽头滤波器系数存储器46将所存储的并与所述分数值相关联的滤波器系数提供给2抽头FIR滤波器43。同样地,基于运动矢量的垂直分量的分数值,4抽头滤波器系数存储器47和6抽头滤波器系数存储器48分别将所存储的并与所述分数值相关联的滤波器系数提供给4抽头FIR滤波器44和6抽头FIR滤波器45。
步骤S71至步骤S75的过程与图22的步骤S57至步骤S61的过程相同,除了对子像素而不是参考像素执行的过程之外。因此,在此不重复解释这些步骤。
在步骤S76中,像素选择单元49将由2抽头FIR滤波器43、4抽头FIR滤波器44或6抽头FIR滤波器45提供的子像素作为预测像素输出至选择单元26。
在步骤S77中,参考图像读取单元41确定是否已经生成所有预测像素,或形成预测图像的所有预测像素在步骤S67中是否已经被确定为生成目标预测像素。如果在步骤S77中确定还未生成所有预测像素,则操作返回至步骤S67,并且重复步骤S67至步骤S77的过程直至生成所有预测像素为止。
另一方面,如果在步骤S77中确定已经生成所有预测像素,则操作返回至图20的步骤S15,然后进行至步骤S16。
如上所述,在编码装置10中的帧间预测期间,在生成外部预测像素时要使用的参考像素的数目小于在生成内部预测像素时要使用的参考像素的数目。因而,可以降低在生成整个预测图像时要使用的参考像素的数目。结果,可以降低帧存储器22中的存储带宽的使用量。此外,因为在生成每个外部预测像素时要使用的参考像素的数目较小,可以降低计算量。
另外,由于具有较长的抽头长度的FIR滤波器可以具有理想特性,在FIR滤波器性能与存储带宽的使用量之间存在权衡关系。因此,当降低在生成所有预测像素时要使用的参考像素的数目以降低存储带宽的使用量时,帧间预测精度降低。另一方面,在编码装置10中,仅降低在生成外部预测像素时要使用的参考像素的数目,从而可以防止帧间预测精度的降低。
此外,当执行帧间预测时,靠近帧间预测块的外围位置处的预测精度可能低于靠近帧间预测块的中心的位置处的预测精度。具体地,当通过帧间预测要进行运动补偿的运动是例如理想平行运动时,块内部的预测精度存在很小的差异。然而,当运动包括旋转或变形(不管其有多小)时,与靠近块的中心的位置相比较,在靠近块的外围的位置处可能存在较大的预测偏差。因此,在生成外部预测像素时要使用的参考像素的数目的降低几乎不影响帧间预测精度。
应当注意的是,2抽头滤波器系数存储器46、4抽头滤波器系数存储器47以及6抽头滤波器系数存储器48中可以存储具有彼此不同的特性的滤波器系数。
例如在靠近帧间预测块的外围处的预测精度较低的情况下,使用在靠近外围的位置处没有插入高频分量或降低高频分量的滤波器系数,以便可以依靠FIR滤波器的特性来使预测误差变小。因此,在编码装置10中,例如降低高频分量的滤波器系数被存储在2抽头滤波器系数存储器46中。以此方式,可以提高帧间预测精度。
[解码装置的示例结构]
图24是示出应用了本技术的作为图像处理装置的解码装置的示例结构的框图。该解码装置对从图3所示的编码装置10输出的压缩图像信息进行解码。
图24所示的解码装置100包括累积缓冲器101、无损解码单元102、逆量化单元103、逆正交变换单元104、加法单元105、去块效应滤波器106、屏幕重排滤波器107、D/A转换器108、帧存储器109、帧内预测单元110、帧间预测单元111以及开关112。
解码装置100的累积缓冲器101接收并累积来自图3所示的编码装置10的压缩图像信息。累积缓冲器101将累积的压缩图像信息提供给无损解码单元102。
无损解码单元102通过对由累积缓冲器101提供的压缩图像信息执行无损解码(例如可变长度解码或算术解码)来获得经量化的系数以及报头。无损解码单元102将经量化的系数提供给逆量化单元103。无损解码单元102还将报头中所包含的帧内预测模式信息等提供给帧内预测单元110,并将运动矢量、帧间预测模式信息等提供给帧间预测单元111。无损解码单元102还将报头中所包含的帧内预测模式信息或帧间预测模式信息提供给开关112。
逆量化单元103、逆正交变换单元104、加法单元105、去块效应滤波器106、帧存储器109、帧内预测单元110和帧间预测单元111执行与图3所示的逆量化单元18、逆正交变换单元19、加法单元20、去块效应滤波器21、帧存储器22、帧内预测单元23和帧间预测单元24相同的操作,以对图像进行解码。
具体地,逆量化单元103对由无损解码单元102提供的经量化的系数进行逆量化,并将由此生成的系数提供给逆正交变换单元104。
逆正交变换单元104对由逆量化单元103提供的系数执行逆正交变换,例如逆离散余弦变换或逆Karhumen-Loeve变化,并将由此生成的残差信息提供给加法单元105。
加法单元105用作加法操作单元,并将由逆正交变换单元104提供的作为解码目标图像的残差信息添加至由开关112提供的预测图像。加法单元105将由此生成的图像提供给去块效应滤波器106,并将由此生成的图像作为参考图像提供给帧内预测单元110。在不存在由开关112提供的预测图像时,加法单元105将作为由逆正交变换单元104提供的残差信息的图像提供给去块效应滤波器106,并且还将所述图像作为参考图像提供给帧内预测单元110。
去块效应滤波器106对由加法单元105提供的图像执行滤波,以去除块失真。去块效应滤波器106将由此生成的图像提供并存储至帧存储器109中,并且还将由此生成的图像提供给屏幕重排缓冲器107。存储在帧存储器109中的图像作为参考图像被提供给帧间预测单元111。
屏幕重排缓冲器107以帧的方式来存储由去块效应滤波器106提供的图像。屏幕重排缓冲器107按照原始显示顺序而非编码顺序对存储图像的帧进行重排,并将所重排的图像提供给D/A转换器108。
D/A转换器108对由屏幕重排缓冲器107提供的基于帧的图像执行D/A转换,并输出输出信号。
使用由加法单元105提供的参考图像,帧内预测单元110以由无损解码单元102提供的帧内预测模式信息所指示的帧内预测模式来执行帧内预测,并生成预测图像。帧内预测单元110将预测图像提供给开关112。
帧间预测单元111具有与图4所示的帧间预测单元24相同的结构。基于由无损解码单元102提供的运动矢量和帧间预测模式信息,帧间预测单元111从帧存储器109读取参考图像。基于运动矢量和从帧存储器109读取的参考图像,帧间预测单元111执行帧间预测操作。帧间预测单元111将由此生成的预测图像提供给开关112。
当由无损解码单元102提供帧内预测模式信息时,开关112将由帧内预测单元110提供的预测图像提供给加法单元105。另一方面,当由无损解码单元102提供帧间预测模式信息时,开关112将由帧间预测单元111提供的预测图像提供给加法单元105。
[解码装置的操作的描述]
图25是用于解释借助于图24所示的解码装置100的解码操作的流程图。例如,每当基于帧的压缩图像信息被输入至解码装置100,执行该解码操作。
在图25的步骤S101中,解码装置100的累积缓冲器101接收并累积来自图3所示的编码装置10的基于帧的压缩图像信息。累积缓冲器101将累积的压缩图像信息提供给无损解码单元102。应当注意的是,例如针对每个宏块执行下述步骤S102至步骤S110的过程。
在步骤S102中,无损解码单元102对由累积缓冲器101提供的压缩图像信息执行无损解码,以获得经量化的系数以及报头。无损解码单元102将经量化的系数提供给逆量化单元103。无损解码单元102还将报头中所包含的帧内预测模式信息等提供给帧内预测单元110,并将运动矢量、帧间预测模式信息等提供给帧间预测单元111。无损解码单元102还将报头中所包含的帧内预测模式信息或帧间预测模式信息提供给开关112。
在步骤S103中,逆量化单元103对由无损解码单元102提供的经量化的系数进行逆量化,并将由此生成的系数提供给逆正交变换单元104。
在步骤S104中,逆正交变换单元104对由逆量化单元103提供的系数执行逆正交变换,并将由此生成的残差信息提供给加法单元105。
在步骤S105中,帧间预测单元111确定帧间预测模式信息是否已经由无损解码单元102提供。如果在步骤S105中确定出帧间预测模式信息已经被提供,则操作进行至步骤S106。
在步骤S106中,基于由无损解码单元102提供的帧间预测模式信息和运动矢量,帧间预测单元111执行参照图22和图23所描述的帧间预测操作。帧间预测单元111将由此生成的预测图像经由开关112提供给加法单元105,然后操作进行至步骤S108。
如果在步骤S105中确定出帧间预测模式信息还未被提供,或帧内预测模式信息已经被提供给帧内预测单元110,则操作进行至步骤S107。
在步骤S107中,使用由加法单元105提供的参考图像,帧内预测单元110以由无损解码单元102提供的帧内预测模式信息所指示的帧内预测模式来执行帧内预测。帧内预测单元110将由此生成的预测图像经由开关112提供给加法单元105,然后操作进行至步骤S108。
在步骤S108中,加法单元105将由逆正交变换单元104提供的残差信息添加至由开关112提供的预测图像。加法单元105将由此生成的图像提供给去块效应滤波器106,并且还将由此生成的图像作为参考图像提供给帧内预测单元110。在第一帧的第一宏块的处理期间,不执行步骤S105至步骤S108的过程,这是因为不存在参考图像。替代地,作为残差信息的图像被提供给去块效应滤波器106,并且还作为参考信息被提供给帧内预测单元110。
在步骤S109中,去块效应滤波器106对由加法单元105提供的图像执行滤波,以去除块失真。
在步骤S110中,去块效应滤波器106将经滤波的图像提供并存储至帧存储器109中,并且还将经滤波的图像提供给屏幕重排缓冲器107。存储在帧存储器109中的图像作为参考图像被提供给帧间预测单元111。
在步骤S111中,屏幕重排缓冲器107以帧的方式来存储由去块效应滤波器106提供的图像,按照原始显示顺序而非编码顺序对存储图像的帧进行重排,并将重排的图像提供给D/A转换器108。
在步骤S112中,D/A转换器108对由屏幕重排缓冲器107提供的基于帧的图像执行D/A转换,并输出输出信号。
如上所述,在解码装置100中的帧间预测期间,在生成外部预测像素时要使用的参考像素的数目小于在生成内部预测像素时要使用的参考像素的数目。因此,可以降低在生成整个预测图像时要使用的参考像素的数目。结果,可以降低帧存储器109中的存储带宽的使用量。此外,由于在生成每个外部预测像素时要使用的参考像素的数目较小,可以降低计算量。
另外,在解码装置100中,仅降低在生成外部预测像素时要使用的参考像素的数目,从而如在编码装置10中一样可以防止帧间预测精度的降低。
[帧间预测单元的第二示例结构]
图26是示出图3所示的帧间预测单元24的第二示例结构的框图。
在图26所示的部件中,与图4中的部件相同的部件通过与图4中的附图标记相同的附图标记来表示。将不再重复已经作过的解释。
图26所示的帧间预测单元24的结构与图4所示的结构主要不同之处在于:参考图像读取单元41、像素分类单元42和像素选择单元49被参考图像读取单元160、像素生成单元161和像素选择单元162所代替;以及2抽头FIR滤波器43、4抽头FIR滤波器44、2抽头滤波器系数存储器46以及4抽头滤波器系数存储器47被去除。图26所示的帧间预测单元24以与图4所示的帧间预测单元24的情况相同的方式来创建并使用从帧存储器22(图3)读取的参考像素的复制像素,使得在生成每个子像素时要使用的像素的数目被设置为6。
具体地,如图4所示的参考图像读取单元41一样,基于在由图3所示的运动预测单元25提供的帧间预测模式信息中所包含的预测方向和参考索引,图26所示的帧间预测单元24的参考图像读取单元160在帧存储器22所存储的图像中识别参考像素。如参考图像读取单元41一样,基于运动矢量和包含在帧间预测模式信息中的块尺寸,参考图像读取单元160从帧存储器22读取在生成预测图像时要使用的参考像素,并且暂时地存储这些参考像素。
如参考图像读取单元41一样,针对每个预测像素,参考图像读取单元160在暂时存储的参考像素中读取用于生成预测像素的参考像素。此处,在生成预测像素时要使用的参考像素的数目等于4、5或6。如参考图像读取单元41一样,参考图像读取单元160将读取的参考像素提供给像素生成单元161。
如图4所示的像素分类单元42一样,像素生成单元161将由参考图像读取单元160提供的参考像素设置为生成像素。如像素分类单元42一样,基于由运动预测单元25提供的运动矢量的分数值,像素生成单元161还从中间结果存储器50读取对应于生成目标预测像素的子像素,作为生成像素。此处,在生成预测像素时要使用的子像素的数目等于4、5或6。
当生成像素的数目小于6时,像素生成单元161以生成像素的数目与6之间的数目差来复制生成像素中的外部像素,并且生成作为新生成像素的包括复制像素和生成像素的六个像素。
具体地,当生成像素的数目等于4时,像素生成单元161复制生成像素中的外部生成像素,以生成位于外部生成像素的外侧的两个像素。包括两个像素和四个生成像素的六个像素被设置为六个生成像素。当生成像素的数目等于5时,像素生成单元161复制生成像素中的外部生成像素,以生成位于外部生成像素的外侧的一个像素。包括一个像素和五个生成像素的六个像素被设置为六个生成像素。另一方面,当生成像素的数目等于6时,像素生成单元161将生成像素设置为原有的六个生成像素。像素生成单元161将生成的六个生成像素提供给6抽头FIR滤波器45。
如图4所示像素选择单元49一样,基于由运动预测单元25提供的运动矢量的分数值,像素选择单元162将作为由6抽头FIR滤波器45提供的像素的预测像素输出至图3所示的选择单元26,或将预测像素提供给中间结果存储器50。
[复制后生成像素的描述]
图27是示出在帧间预测块的尺寸是8×8像素的情况下,在生成沿水平方向排列、沿水平方向具有1/2像素位置并且沿垂直方向具有整数位置的相应的八个预测像素时要使用的示例性复制后生成像素的图。
在图27中,分配有数字的每个方格表示预测像素,而未分配有数字也未分配有字母字符的每个方格表示参考像素。每个带点的方格表示在生成预测像素时要使用的参考像素中的、位于帧间预测块的尺寸范围内的参考像素,而阴影方格表示在帧间预测块的尺寸范围之外的参考像素。另外,分配有字母符号的每个方格表示通过复制参考像素而形成的像素。
在图27所示的示例中,通过使用包括四个参考像素的六个生成像素来分别生成最外部预测像素,通过使用包括五个参考像素的六个生成像素来分别生成次外部预测像素。通过使用作为生成像素的六个参考像素来分别生成位于次外部预测像素的内侧的、包括最内部预测像素的预测像素。
具体地,在生成目标是由分配有数字1的方格所表示的预测像素,并且是在沿水平方向排列、沿水平方向具有1/2像素位置并沿垂直方向具有整数位置的八个预测像素中的最外部预测像素之一的情形下,则参考图像读取单元160将共计四个参考像素提供给像素生成单元161,所述四个参考像素包括在预测像素的左侧上的一个像素和在预测像素的右侧上的三个像素。像素生成单元161对四个参考像素中的最左侧的参考像素进行复制,以在最左侧的参考像素的左侧上生成具有整数位置的两个像素。如此,像素生成单元161生成包括两个像素以及由参考图像读取单元160提供的四个参考像素的六个生成像素。
在生成目标是由分配有数字2的方格所表示的次外部预测像素,并且位于由分配有数字1的方格所表示的预测像素的内侧的情形下,则参考图像读取单元160将共计五个参考像素提供给像素生成单元161,所述五个像素包括在预测像素的左侧的两个像素和在预测像素的右侧的三个像素。像素生成单元161对五个参考像素中的最左侧的参考像素进行复制,以在最左侧的参考像素的左侧生成具有整数位置的一个像素。如此,像素生成单元161生成包括一个像素以及由参考图像读取单元160提供的五个参考像素的六个生成像素。
另外,在生成目标是由分配有数字3至数字6中之一的方格所表示的预测像素,并且位于由分配有数字2的方格所表示的预测像素的内侧的情形下,则参考图像读取单元160将共计六个参考像素提供给像素生成单元161,所述六个像素包括在预测像素的每侧上的各三个像素。像素生成单元161将六个参考像素设置为原有的六个生成像素。
在生成目标是由分配有数字7的方格所表示的次外部预测像素,并位于由分配有数字8的方格所表示的最外部预测像素的内侧的情形下,则参考图像读取单元160将计共五个参考像素提供给像素生成单元161,所述五个像素包括在预测像素的右侧上的两个像素和在预测像素的左侧上的三个像素。像素生成单元161对五个参考像素中的最右侧的参考像素进行复制,以在最右侧的参考像素的右侧上生成具有整数位置的一个像素。如此,像素生成单元161生成包括所述一个像素以及由参考图像读取单元160提供的五个参考像素的六个生成像素。
另外,在生成目标是由分配有数字8的方格所表示的最外部预测像素,则参考图像读取单元160将共计四个参考像素提供给像素生成单元161,所述四个参考像素包括在预测像素的右侧上的一个像素和在预测像素的左侧上的三个像素。像素生成单元161对四个参考像素中的最右侧的参考像素进行复制,以在最右侧的参考像素的右侧生成具有整数位置的两个像素。如此,像素生成单元161生成包括所述两个像素以及由参考图像读取单元160提供的四个参考像素的六个生成像素。
尽管在本文中未进行描述,但是当生成沿水平方向具有整数位置并且沿垂直方向具有分数位置的预测像素时,最外部的参考像素即最上方或最下方的参考像素被复制,以生成六个生成像素。此外,当生成沿水平方向和垂直方向均具有分数位置的预测像素时,首先如图27的情况一样通过使用参考像素来生成六个生成像素,然后通过使用生成像素来生成预测关联像素,并且将预测关联像素存储在中间结果存储器50中。然后,从中间结果存储器50读取的预测关联像素中的最上方或最下方的参考像素被复制,以生成六个生成像素。
[帧间预测操作的第二示例的描述]
图28和图29示出了用于详细解释图20的步骤S15中的要通过图26的帧间预测单元24来执行的帧间预测操作的流程图。
图28的步骤S150至步骤S153的过程与图22的步骤S50至步骤S53的过程相同,因此在此不再重复解释这些步骤。如果存在多于一个的预测关联像素,则针对每个预测关联像素执行下述步骤S154至步骤S165的过程。
在步骤S153的过程之后,在步骤S154中,基于生成目标预测像素在预测图像中的位置,参考图像读取单元160确定4、5或6为在生成预测关联像素时要使用的参考像素的数目。
在步骤S155中,基于步骤S154中所确定的参考像素的数目和生成目标预测像素在参考图像中的位置,参考图像读取单元160在步骤S152中所存储的参考像素中读取在生成预测关联像素时要使用的参考像素。参考图像读取单元160将读取的参考像素提供给像素生成单元161。
在步骤S156中,基于由运动预测单元25提供的运动矢量中的对应于预测关联像素的分量的分数值,6抽头滤波器系数存储器48将所存储的并且与所述分数值相关联的滤波器系数提供给6抽头FIR滤波器45。
在步骤S157中,像素生成单元161确定由参考图像读取单元160提供的参考像素的数目是否等于4。如果在步骤S157中参考像素的数目被确定等于4,则操作进行至步骤S158。
在步骤S158中,像素生成单元161对由参考图像读取单元160提供的四个参考像素中的外部参考像素进行复制,以在外部参考像素的外侧生成两个像素。如此,像素生成单元161生成包括两个像素和四个参考像素的六个生成像素。像素生成单元161将生成的六个生成像素提供给6抽头FIR滤波器45,然后操作进行至步骤S161。
另一方面,如果在步骤S157中参考像素的数目被确定为不等于4,则在步骤S159中像素生成单元161确定由参考图像读取单元160提供的参考像素的数目是否等于5。
如果在步骤S159中参考像素的数目被确定为等于5,则操作进行至步骤S160。在步骤S160中,像素生成单元161对由参考图像读取单元160提供的五个参考像素中的外部参考像素进行复制,以在外部参考像素的外侧生成一个像素。如此,像素生成单元161生成包括一个像素和五个参考像素的六个生成像素。像素生成单元161将生成的六个生成像素提供给6抽头FIR滤波器45,然后操作进行至步骤S161。
另一方面,如果在步骤S159中参考像素的数目被确定为不等于5,或参考像素的数目等于6,则像素生成单元161将六个参考像素作为生成像素提供给6抽头FIR滤波器45,然后操作进行至步骤S161。
在步骤S161中,6抽头FIR滤波器45通过使用由像素生成单元161提供的六个生成像素和由6抽头滤波器系数存储器48提供的滤波器系数来执行计算。6抽头FIR滤波器45将由此生成的一个预测关联像素提供给像素选择单元162。然后操作进行至步骤S162。
图28的步骤S162至步骤S166的过程和图29的步骤S167的过程与图22的步骤S62至步骤S66的过程和图23的步骤S67的过程相同,因此在此不再重复解释这些步骤。
在步骤S168中,基于在预测图像中生成目标预测像素沿垂直方向的位置,像素生成单元161确定4、5或6为要从中间结果存储器50读取的子像素的数目。
在步骤S169中,基于在步骤S168中所确定的子像素的数目和在参考图像中生成目标预测像素的位置,像素生成单元161从中间结果存储器50读取作为生成像素的子像素。
在步骤S170中,基于由运动预测单元25提供的运动矢量的垂直分量的分数值,6抽头滤波器系数存储器48将所存储的并且与所述分数值相关联的滤波器系数提供给6抽头FIR滤波器45。然后操作进行至步骤S171。
步骤S171至步骤S175的过程与图28的步骤S157至步骤S161的过程相同,除了对子像素而不是参考像素执行过程之外。因此,在此不再重复解释这些步骤。
在步骤S175的过程之后,在步骤S176中,像素选择单元162将子像素,即由6抽头FIR滤波器45提供的像素,作为预测像素输出至选择单元26。
在步骤S177中,参考图像读取单元160确定是否已经生成所有的预测像素,或者形成预测图像的所有预测像素在步骤S167中是否已经被确定为生成目标预测像素。如果在步骤S177中确定出还未生成所有预测像素,则操作返回至步骤S167,并且重复步骤S167至步骤S177的过程直至生成所有预测像素为止。
另一方面,如果在步骤S177中确定已经生成所有预测像素,则操作返回至图20的步骤S15,然后进行至步骤S16。
如上所述,在图26的帧间预测单元24的帧间预测期间,在生成外部预测像素时要使用的参考像素的数目小于在生成内部预测像素时要使用的参考像素的数目。因此,与在图4所示的帧间预测单元24的情况一样,可以降低在生成整个预测图像时要使用的参考像素的数目。结果,可以降低帧存储器22中的存储带宽的使用量。此外,由于在生成每个外部预测像素时要使用的参考像素的数目较小,可以降低计算量。
另外,图26的帧间预测单元24通过使用外部生成像素来创建复制像素,并通过使用新生成像素即包括复制像素和生成像素的6个像素来生成预测像素。因此,FIR滤波器的用于生成预测像素的抽头数目仅等于6,与图4的按照预测像素的位置来改变FIR滤波器的抽头数目的帧间预测单元24相比较,所述FIR滤波器简化了操作。
尽管在附图中未示出,但是当编码装置10包括图26的帧间预测单元24时,解码装置100的帧间预测单元111也具有与图26的帧间预测单元24相同的结构。
此外,在以上描述中,通过插值生成具有1/2像素位置的子像素。然而,替代地可以生成具有1/4像素位置或1/8像素位置的子像素。在该情况下,执行与生成具有1/2像素位置的子像素时的相同操作,除了使用不同的滤波器系数之外。
[帧间预测单元的第三示例结构]
图30是示出图3所示的帧间预测单元24的第三示例结构的框图。
在图30所示的部件中,与图26所示的部件相同的部件通过与图26中的附图标记相同的附图标记来表示。将不再重复已经作过的解释。
图30所示的帧间预测单元24的结构与图26所示的结构的主要不同之处在于:参考图像读取单元160被参考图像读取单元180所代替。图30所示的帧间预测单元24根据运动矢量来改变在生成外部预测像素时要使用的参考像素的数目。
具体地,如图4所示的参考图像读取单元41一样,基于在由图3所示的运动预测单元25提供的帧间预测模式信息中所包含的预测方向和参考索引,图30的帧间预测单元24的参考图像读取单元180在作为DPB(解码画面缓冲器)的帧存储器22中所存储的图像中识别参考图像。基于运动矢量和包含在帧间预测模式信息中的块尺寸,参考图像读取单元180确定在生成预测图像时要使用的参考像素的范围。基于运动矢量,参考图像读取单元180从帧存储器22读取在所确定的范围内的参考像素,并暂时地存储这些参考像素。
如参考图像读取单元41一样,针对每个预测像素,参考图像读取单元180在暂时存储的参考像素中读取在生成预测像素时要使用的参考像素。在此,在生成预测像素时要使用的参考像素的数目等于4、5或6。如参考图像读取单元41一样,参考图像读取单元180将读取的参考像素提供给像素生成单元161。
[基于运动矢量和块尺寸的参考像素范围的描述]
图31至图33是示出由图26的帧间预测单元24用于生成作为预测像素的子像素a至o的复制后生成像素的相应范围的示意图。
在图31至图33中,分配有字母符号的每个方格表示分别对应字母符号的子像素,并且每个阴影方格表示在生成子像素时要使用的生成像素。未分配有字母符号的每个普通方格表示不会用于生成子像素的参考像素。
如图31所示,在预测像素是在参考图像中沿垂直方向具有整数位置并且沿水平方向具有分数位置的子像素a、b或c的情况下,分别位于子像素a至c的右侧和左侧的各三个复制后生成像素被用于生成预测像素。如图32所示,在预测像素是在参考图像中沿水平方向具有整数位置并且沿水平方向具有分数位置的子像素d、h或l的情况下,分别位于子像素d、h或l的上方和下方的各三个复制后生成像素被用于生成预测像素。
如图33所示,在预测像素是在参考图像中沿水平方向和垂直方向均具有分数位置的子像素e、f、g、i、j、k、m、n或o的情况下,位于子像素e、f、g、i、j、k、m、n和o的周围的6×6个复制后生成像素被用于生成预测像素。
因此,在生成在参考图像中仅沿水平方向和垂直方向中的一个方向具有分数位置的预测像素时要使用的复制后生成像素的数目小于在生成沿两个方向均具有分数位置的预测像素时要使用的复制后生成像素的数目。也就是说,在通过沿水平方向和垂直方向中的一个方向执行滤波操作来生成每个预测像素的情况下的生成像素的数目小于在通过沿两个方向均执行滤波操作来生成预测像素的情况下的生成像素的数目。
鉴于此,当通过仅沿水平方向和垂直方向中的一个方向执行滤波操作来生成每个预测像素时,或当运动矢量的水平分量或垂直分量的分数值为0时,与图26的参考图像读取单元160相比较,图30的参考图像读取单元180使得生成像素中的复制像素的数目较小。
具体地,当通过沿水平方向和垂直方向均执行滤波操作来生成每个预测像素时,或当运动矢量的水平分量和垂直分量的分数值不为0时,参考图像读取单元180执行与参考图像读取单元160相同的操作。
结果,在帧间预测块的尺寸是8×8像素的情况下,在生成预测图像时要使用的生成像素为通过图34中的这些带点的方格、阴影方格或双重阴影方格所表示的那些。
在图34中,每个方格表示参考像素。每个带点的方格表示在生成预测图像时要使用的参考像素中位于帧间预测块的尺寸范围内的参考像素,并且每个阴影方格表示在帧间预测块的尺寸范围之外的参考像素。另外,每个双重阴影方格表示通过对用于生成预测图像的参考像素中的最外部参考像素进行复制而形成的像素。相同的情况适用于随后描述的图35和图36。
在图34所示的示例中,通过使用包括四个参考像素和两个复制像素的六个生成像素来分别生成最外部的预测像素,如在图27的情况下一样。通过使用包括五个参考像素和一个复制像素的六个像素来分别生成位于最外部预测像素的内侧的次外部的预测像素。通过使用作为六个生成像素的六个参考像素来分别生成位于次外部预测像素的内侧的、包括最内部预测像素的预测像素。结果,从帧存储器22读取的参考像素的范围是9×9像素。
如图35所示,在通过沿水平方向执行滤波操作来生成每个预测像素的情况下,或在运动矢量的水平分量的分数值不为0但是其垂直分量的分数值为0的情况下,使得复制像素的数目小于在图34的情况下的复制像素的数目。
具体地,如图35中的虚线所示,在生成每个最左侧的预测像素时要使用的生成像素包括五个参考像素和一个复制像素。结果,从帧存储器22读取的参考像素的水平范围比图34的情况下的水平范围多一个像素。然而,沿垂直方向未执行滤波操作,因此垂直范围与帧间预测块的尺寸相同。因此,从帧存储器22读取的参考像素的范围是10×8像素,该范围小于在图34的情况下的范围。
同样地,如图36所示,在通过沿垂直方向执行滤波操作来生成每个预测像素的情况下,或在运动矢量的垂直分量的分数值不为0但是其水平分量的分数值为0的情况下,使复制像素的数目小于在图34的情况下的复制像素的数目。
具体地,如图36中的虚线所示,在生成每个最上方的预测像素时要使用的生成像素包括五个参考像素和一个复制像素。结果,从帧存储器22读取的参考像素的垂直范围比图34的情况下的垂直范围多一个像素。然而,沿水平方向未执行滤波操作,因此水平范围与帧间预测块的尺寸相同。因此,从帧存储器22读取的参考像素的范围是8×10像素,该范围小于在图34的情况下的范围。
如上所述,在运动矢量的水平分量和垂直分量的分数值之一不为0的情况下,与在两个分量的分数值均不为0的情况下相比较,图30的帧间预测单元24增加用于外部预测像素的参考像素的数目并且降低复制像素的数目。结果,可以使得帧间预测精度高于图26的帧间预测单元24的帧间预测精度,并且降低帧存储器22中的存储带宽的使用量。
此外,如图34至图36所示,在增加在生成外部预测像素时要使用的参考像素的数目以使得当仅仅运动矢量的水平分量和垂直分量的分数值之一不为0时要读取的参考像素的范围变得等于或小于当两个分量的分数值均不为0时要读取的参考像素的范围,与图26的帧间预测单元24相比较,可以使得帧间预测精度更高,而不需要增加帧存储器22中的存储带宽的最大使用量。
如帧存储器22一样,正常安装DRAM(动态随机存取存储器)。如果存储带宽的使用量变得与在传统情况下的存储带宽使用量一样大,则生产成本变得较高。
[帧间预测操作的第三示例的描述]
图37和图38示出了用于详细解释图20的步骤S15的、要通过图30的帧间预测单元24来执行的帧间预测操作的流程图。
图37和图38的步骤S181至步骤S207的过程与图28和图29的步骤S150至步骤S177的过程相同,除了步骤S151和步骤S152的过程被步骤S182的过程所代替以及步骤S154的过程被步骤S184的过程所代替之外。
图37的步骤S182的过程是要通过参考图像读取单元180来执行以读取参考像素的读取操作,并且随后将参照图39详细描述该读取操作。
在图37的步骤S184中,基于在预测图像中生成目标预测像素的位置和运动矢量的分数值,参考图像读取单元180确定4、5或6是在生成预测关联像素时要使用的参考像素的数目。例如,当生成目标预测像素在预测图像中的位置在最左侧并且运动矢量的水平分量的分数值不为0但其垂直分量的分数值为0时,参考图像读取单元180确定参考像素的数目等于5。
图39是用于详细解释图37的步骤S182的读取操作的流程图。
在图39的步骤S221中,参考图像读取单元180确定由运动预测单元25提供的运动矢量的水平分量和垂直分量的分数值是否均为非0。
如果在步骤S221中确定运动矢量的水平分量和垂直分量的分数值均为非0,则操作进行至步骤S222。也就是说,如果预测像素在参考图像中的位置沿水平方向和垂直方向均是分数位置(例如如果预测像素是子像素e、f、g、i、j、k、m、n或o),则操作进行至步骤S222。
在步骤S222中,参考图像读取单元180确定参考像素范围,该参考像素范围包括:具有帧间预测块的尺寸的块、具有在所述块下方的一行像素的块以及具有在由上述两个块形成的块的右侧的一列像素的块。例如,在帧间预测块的尺寸是8×8像素的情况下,参考图像读取单元180确定参考像素范围是9×9像素。然后操作进行至步骤S226。
如果在步骤S221中确定运动矢量的水平分量和垂直分量的分数值之一不为非0,则在步骤S223中参考图像读取单元180确定是否仅运动矢量的水平分量的分数值为非0。
如果在步骤S223中确定仅运动矢量的水平分量的分数值为非0,则操作进行至步骤S224。也就是说,如果预测像素在参考图像中的位置沿水平方向是分数位置并且沿垂直方向是整数位置(例如如果预测像素是子像素a、b或c),则操作进行至步骤S224。
在步骤S224中,参考图像读取单元180确定参考像素范围,该参考像素范围包括:具有帧间预测块的尺寸的块以及具有分别在所述块的右侧和左侧的一列像素的块。例如,在帧间预测块的尺寸是8×8像素的情况下,参考图像读取单元180确定参考像素范围是10×8像素。然后操作进行至步骤S226。
另一方面,如果在步骤S223中确定运动矢量的水平分量的分数值为0,则操作进行至步骤S225。也就是说,如果预测像素在参考图像中的位置沿垂直方向是分数位置并且沿水平方向是整数位置(例如如果预测像素是子像素d、h或l),或如果预测像素沿水平方向和垂直方向均具有整数位置,则操作进行至步骤S225。
在步骤S225中,参考图像读取单元180确定参考像素范围,该参考像素范围包括:具有帧间预测块的尺寸的块以及具有在所述块的上方和下方的一行像素的各个块。例如,在帧间预测块的尺寸是8×8像素的情况下,参考图像读取单元180确定参考像素范围是8×10像素。然后操作进行至步骤S226。
在步骤S226中,参考图像读取单元180从帧存储器22读取位于对应于运动矢量的位置处并位于通过步骤S222、S224或S225的过程所确定的范围内的参考像素,并暂时地存储这些参考像素。操作返回至图37的步骤S182,然后进行至步骤S183。
在图30至图39中,尽管在生成每个预测关联像素时要使用的生成像素的数目等于6,但是生成像素的数目可以等于8。
[在生成每个预测关联像素时要使用的生成像素的数目等于8的情况下的参考像素范围的描述]
图40和图41是示出在运动矢量的水平分量和垂直分量的分数值不为0的情况下的参考像素范围的示例的示意图。
在图40所示的示例中,帧间预测块的尺寸是8×8像素。在图40中,分配有数字的每个方格表示预测关联像素,既未分配有数字也未分配有字母符号的每个方格表示参考像素。每个带点的方格表示在生成预测关联像素时要使用的参考像素中的、位于帧间预测块的尺寸范围内的参考像素,每个阴影方格表示在帧间预测块的尺寸范围之外的参考像素。另外,分配有字母符号的每个方格表示通过复制参考像素所形成的像素。
如图40所示,在运动矢量的水平分量和垂直分量的分数值不为0的情况下,通过使用包括六个参考像素的八个生成像素来分别生成最外部预测关联像素。通过使用包括七个参考像素的八个生成像素来分别生成位于最外部预测关联像素的内侧的次外部预测关联像素,通过使用作为生成像素的八个参考像素来分别生成位于次外部预测关联像素的内侧的预测关联像素(包括最内部预测关联像素)。
具体地,在生成目标是在沿水平方向排列、沿水平方向具有1/2像素位置并且沿垂直方向具有整数位置的八个预测关联像素中的、由分配有数字1的方格所表示的最外部预测关联像素的情况下,则包括在预测关联像素的左侧上的两个参考像素和在预测关联像素的右侧上的四个参考像素的共计六个参考像素被设置为参考像素。在六个参考像素中的最左侧的参考像素被复制,以在最左侧的参考像素的左侧上创建具有整数位置的两个像素,并且使用包括所述两个像素和所述六个参考像素的八个新生成像素作为生成像素来生成预测关联像素。
在生成目标是由分配有数字2的方格所表示的次外部预测关联像素并且位于由分配有数字1的方格所表示的预测关联像素的内侧的情形下,则包括在预测关联像素的左侧上的三个参考像素和在预测关联像素的右侧上的四个参考像素的共计七个参考像素被设置为生成像素。在七个参考像素中的最左侧的参考像素被复制,以在最左侧的参考像素的左侧上创建具有整数位置的一个像素,并且使用包括所述一个像素和所述七个参考像素的八个新生成像素作为生成像素来生成预测关联像素。
另外,在生成目标是由分配有数字3至数字6的方格所表示的预测关联像素并且位于由分配有数字2的方格所表示的预测关联像素的内侧的情形下,则使用包括在预测关联像素的每侧上的各四个参考像素的共计八个参考像素作为生成像素来生成预测关联像素。
在生成目标是由分配有数字7的方格所表示的次外部预测关联像素,并且位于由分配有数字8的方格所表示的最外部预测关联像素的内侧的情形下,则包括在预测关联像素的右侧上的三个参考像素和在预测关联像素的左侧上的四个参考像素的共计七个参考像素被设置为生成像素。在七个参考像素中的最右侧的参考像素被复制,以在最右侧的参考像素的右侧上创建具有整数位置的一个像素,并且使用包括所述一个像素和所述七个参考像素的八个新生成像素来生成预测关联像素。
另外,在生成目标是由分配有数字8的方格所表示的最外部预测关联像素的情形下,则包括在预测关联像素的右侧上的两个参考像素和在预测关联像素的左侧上的四个参考像素的共计六个参考像素被设置为生成像素。在六个参考像素中的最右侧的参考像素被复制,以在最右侧的参考像素的右侧上创建具有整数位置的两个像素,并且使用包括所述两个像素和所述六个参考像素的八个生成像素来生成预测关联像素。
作为以上述方式生成的预测关联像素的子像素如参考像素一样使用,以生成八个生成像素,并且使用所述八个生成像素来生成预测像素。
结果,在生成预测图像时要使用的生成像素是通过图41中的这些带点的方格、阴影方格或双重阴影方格所表示的生成像素。也就是说,从帧存储器22读取的参考像素的范围是11×11像素。
在图41中,每个方格表示参考像素。每个带点的方格表示在生成预测图像时要使用的参考像素中位于帧间预测块的尺寸范围内的参考像素,以及每个阴影方格表示在帧间预测块的尺寸范围之外的参考像素。另外,每个双重阴影方格表示通过对在用于生成预测图像的参考像素中的最外部参考像素进行复制而形成的像素。相同的情况适用于随后描述的图42和图43。
图42是示出在运动矢量的水平分量的分数值不为0但垂直分量的分数值为0的情况下,在生成预测图像时要使用的生成像素的示例的示意图。在图42所示的示例中,帧间预测块的尺寸是8×8像素。
在图42所示的示例中,在生成每个最右侧或最左侧的预测像素时要使用的生成像素包括七个参考像素和一个复制像素,如图42中的虚线所示。另一方面,在生成在最右侧或最左侧的预测像素的内侧的任一个预测像素时要使用的生成像素包括八个参考像素。结果,从帧存储器22读取的参考像素的水平范围比图41的情况下的水平范围多两个像素。然而,沿垂直方向未执行滤波操作,因此垂直范围与帧间预测块的尺寸相同。因此,从帧存储器22读取的参考像素的范围是13×8像素,其小于在图41的情况下的参考像素的范围。
图43是示出在运动矢量的垂直分量的分数值不为0但水平分量的分数值为0的情况下,在生成预测图像时要使用的生成像素的示例的示意图。在图43所示的示例中,帧间预测块的尺寸是8×8像素。
在图43所示的示例中,在生成每个最上方或最下方的预测像素时要使用的生成像素包括七个参考像素和一个复制像素,如图43中的虚线所示。另一方面,在生成在最上方和最下方的预测像素的内侧的任一个预测像素时要使用的生成像素包括八个参考像素。结果,从帧存储器22读取的参考像素的垂直范围比图41的情况下的垂直范围大两个像素。然而,沿水平方向未执行滤波操作,因此水平范围与帧间预测块的尺寸相同。因此,从帧存储器22读取的参考像素的范围是8×13像素,其小于在图41的情况下的参考像素的范围。
应当注意的是,在生成预测关联像素时要使用的生成像素的数目等于8的情况下,帧间预测单元24的结构和帧间预测单元24的操作与上述情况相同,除了生成像素的数目等于8而不等于6,并且生成像素中所包括的参考像素的数目等于7或8而不等于4、5或6之外。因此,在此不再重复对它们的说明。
[帧间预测单元的第四示例结构]
图44是示出图3所示的帧间预测单元24的第四示例结构的框图。
在图44所示的部件中,与图26所示的部件相同的部件通过与图26中的附图标记相同的附图标记来表示。将不再重复已经作过的解释。
图44所示的帧间预测单元24的结构与图26所示的结构的主要不同之处在于:参考图像读取单元160被参考图像读取单元200所代替,以及像素生成单元161被像素生成单元201所代替。图44所示的帧间预测单元24根据每个帧间预测块的尺寸来改变在生成外部预测像素时要使用的参考像素的数目。
具体地,如图4所示的参考图像读取单元41一样,基于在由图3所示的运动预测单元25提供的帧间预测模式信息中所包含的预测方向和参考索引,图44所示的帧间预测单元24的参考图像读取单元200在帧存储器22所存储的图像中识别出参考图像。
基于运动矢量和包含在帧间预测模式信息中的块尺寸,参考图像读取单元200确定在生成预测图像时要使用的参考像素的范围。基于运动矢量,参考图像读取单元200从帧存储器22读取在所确定的范围内的参考像素,并暂时地存储这些参考像素。
如参考图像读取单元41一样,针对每个预测像素,参考图像读取单元200在暂时存储的参考像素中读取在生成预测像素时要使用的参考像素。此处,在生成预测像素时要使用的参考像素的数目等于4、5或6。如参考图像读取单元41一样,参考图像读取单元200将读取的参考像素提供给像素生成单元201。
如图26所示的像素生成单元161一样,像素生成单元201将由参考图像读取单元200提供的参考像素设置为生成像素。基于运动矢量的分数值、预测像素在预测图像中的位置以及包含在由运动预测单元25提供的帧间预测模式信息中的帧间预测块尺寸,像素生成单元201确定在生成预测像素时要使用的子像素的数目。然后像素生成单元201从中间结果存储器50读取所确定的对应于生成目标预测像素的、作为生成像素的子像素的数目。在此,在生成预测像素时要使用的子像素的数目等于4、5或6。
如像素生成单元161一样,当生成像素的数目小于6时,像素生成单元201根据生成像素的数目与6之间的数目差来复制生成像素中的外部像素,并且生成包括复制像素和生成像素的六个像素,作为新生成像素。像素生成单元201将所生成的六个生成像素提供给6抽头FIR滤波器45。
[帧间预测操作的第四示例的描述]
图45和图46示出了用于详细解释图20的步骤S15的、要通过图44的帧间预测单元24来执行的帧间预测操作的流程图。
图45和图46的步骤S231至步骤S257的过程与图28和图29的步骤S150至步骤S177的过程相同,除了步骤S151至步骤S152的过程被步骤S232的过程所代替,步骤S154的过程被步骤S234的过程所代替以及步骤S168的过程被步骤S248的过程所代替之外。
图45的步骤S232的过程是要通过参考图像读取单元200来执行以读取参考像素的读取操作,并且随后将参照图47详细描述该读取操作。
在图45的步骤S234中,基于生成目标预测像素在预测图像中的位置和帧间预测块的尺寸,参考图像读取单元200确定4、5或6是在生成预测关联像素时要使用的参考像素的数目。
在图46的步骤S248中,基于生成目标预测像素在预测图像中沿垂直方向的位置和帧间预测块的尺寸,像素生成单元201确定4、5或6是要从中间结果存储器50读取的子像素的数目。
图47是用于详细解释图45的步骤S232的读取操作的流程图。
在图47的步骤S261中,图44的帧间预测单元24的参考图像读取单元200确定包含在由运动预测单元25提供的帧间预测模式信息中的帧间预测块的尺寸是否小于8×8像素。
如果在步骤S261中确定帧间预测块的尺寸小于8×8像素,或者例如如果帧间预测块的尺寸是4×4像素、8×4像素或4×8像素,则操作进行至步骤S262。
在步骤S262中,参考图像读取单元200确定参考像素范围,该参考像素范围包括:具有帧间预测块的尺寸的块、具有在所述块下方的一行像素的块以及具有在由所述两个块形成的块的右侧的一列像素的块。例如,在帧间预测块的尺寸是4×4像素的情况下,参考图像读取单元200确定参考像素范围是5×5像素。然后操作进行至步骤S266。
另一方面,如果在步骤S261中确定帧间预测块的尺寸不小于8×8像素,则在步骤S263中参考图像读取单元200确定帧间预测块的尺寸是否小于16×16像素。
如果在步骤S263中确定帧间预测块的尺寸小于16×16像素,或者例如如果帧间预测块的尺寸是8×8像素、16×8像素或8×16像素,则操作进行至步骤S264。
在步骤S264中,参考图像读取单元200确定参考像素范围,该参考像素范围包括:具有帧间预测块的尺寸的块、具有分别在所述块的上方和下方的一行像素的两个块以及具有分别在由所述三个块形成的块的右侧和左侧的一列像素的各个块。例如,在帧间预测块的尺寸是8×8像素的情况下,参考图像读取单元200确定参考像素范围是10×10像素。然后操作进行至步骤S266。
如果在步骤S263中确定帧间预测块的尺寸不小于16×16像素,或者如果帧间预测块的尺寸例如是16×16像素、32×16像素、16×32像素或32×32像素,则操作进行至步骤S265。
在步骤S265中,参考图像读取单元200确定参考像素范围,该参考像素范围包括:具有帧间预测块的尺寸的块、具有在所述块的上方的一行像素的块和具有在所述块的下方的两行像素的块、以及具有在由所述三个块形成的块的左侧的一列像素的块和具有在由所述三个块形成的块的右侧的两列像素的块。例如,在帧间预测块的尺寸是16×16像素的情况下,参考图像读取单元200确定参考像素范围是19×19像素。然后操作进行至步骤S266。
在步骤S266中,参考图像读取单元200从帧存储器22读取位于对应于运动矢量的位置并且位于通过步骤S262、S264或S265的过程所确定的范围内的参考像素,并暂时地存储这些参考像素。操作返回至图45的步骤S232,然后进行至步骤S233。
如上所述,当帧间预测块的尺寸较大时,与在帧间预测块的尺寸较小的情况相比较,图44所示的帧间预测单元24使在生成外部预测像素时要使用的参考像素的数目增加并降低复制像素的数目。结果,可以使得帧间预测精度高于图26的帧间预测单元24的帧间预测精度,并且降低帧存储器22中的存储带宽的使用量。
如在图47所示的读取操作中一样,增加在生成外部预测像素时要使用的参考像素的数目,使得在帧间预测块的尺寸较大的情况下,在生成分数位置的预测图像时要使用的参考像素的范围与帧间预测块尺寸之比(以下称为参考像素比)变得等于或小于在帧间预测块的尺寸较小的情况下的参考像素比。与图26的帧间预测单元24相比较,以此方式可以使得帧间预测精度更高,而不需要增加最大参考像素比。
具体地,在图26的帧间预测单元24的情况下,当帧间预测块的尺寸较小时的参考像素比高于当帧间预测块的尺寸较大时的参考像素比。例如在帧间预测块的尺寸是8×8像素的情况下,需要在图26的帧间预测单元24处读取9×9参考像素,结果,参考像素比等于1.3(=9×9/(8×8))。另一方面,例如在帧间预测块的尺寸是4×4像素的情况下,需要被读取的参考像素的区域的尺寸是5×5像素,由此,参考像素比等于1.6(=5×5/(4×4))。因此,在帧间预测块的尺寸是4×4像素的情况下的参考像素比高于在帧间预测块的尺寸是8×8像素的情况下的参考像素比。
因而,如在图47所示的读取操作中一样,图44的帧间预测单元24增加在生成外部预测像素时要使用的参考像素的数目,使得在帧间预测块的尺寸较大的情况下的参考像素比变得等于或小于在帧间预测块的尺寸较小的情况下的参考像素比。与图26的帧间预测单元24相比较,以此方式可以使得帧间预测精度更高,而不需要增加最大参考像素比。
[帧间预测单元的第五示例结构]
图48是示出图3所示的帧间预测单元24的第五示例结构的框图。
在图48所示的部件中,与图26所示的部件相同的部件通过与图26中的附图标记相同的附图标记来表示。将不再重复已经作过的解释。
图48所示的帧间预测单元24的结构与图26所示的结构的主要不同之处在于:参考图像读取单元160被参考图像读取单元210所代替,以及像素生成单元161被像素生成单元211所代替。图48所示的帧间预测单元24根据预测方向来改变在生成外部预测像素时要使用的参考像素的数目。
具体地,如图4所示的参考图像读取单元41一样,基于在由图3所示的运动预测单元25提供的帧间预测模式信息中所包含的预测方向和参考索引,图48所示的帧间预测单元24的参考图像读取单元210在帧存储器22所存储的图像中识别出参考图像。
基于运动矢量以及包含在帧间预测模式信息中的块尺寸和预测方向,参考图像读取单元210确定在生成预测图像时要使用的参考像素的范围。基于运动矢量,参考图像读取单元210从帧存储器22读取在所确定的范围内的参考像素,并暂时地存储这些参考像素。
如参考图像读取单元41一样,针对每个预测像素,参考图像读取单元210在暂时存储的参考像素中读取在生成预测像素时要使用的参考像素。在此,在生成预测像素时要使用的参考像素的数目等于4、5或6。如参考图像读取单元41一样,参考图像读取单元210将读取的参考像素提供给像素生成单元211。
如图26所示的像素生成单元161一样,像素生成单元211将由参考图像读取单元210提供的参考像素设置为生成像素。基于运动矢量的分数值、预测像素在预测图像中的位置以及包含在由运动预测单元25提供的帧间预测模式信息中的预测方向,像素生成单元211确定在生成预测像素时要使用的子像素的数目。然后像素生成单元211从中间结果存储器50读取所确定的作为与生成目标预测像素对应的生成像素的子像素的数目。在此,在生成预测像素时要使用的子像素的数目等于4、5或6。
当生成像素的数目小于6时,像素生成单元211根据生成像素的数目与6之间的数目差来复制生成像素中的外部像素,并且生成包括复制像素和生成像素的六个像素,作为新生成像素。像素生成单元211将所生成的六个生成像素提供给6抽头FIR滤波器45。
[帧间预测操作的第五示例的描述]
图49和图50示出了用于详细解释图20的步骤S15的、要通过图48的帧间预测单元24来执行的帧间预测操作的流程图。
图49和图50的步骤S271至步骤S297的过程与图28和图29的步骤S150至步骤S177的过程相同,除了步骤S151和步骤S152的过程被步骤S272的过程所代替,步骤S154的过程被步骤S274的过程所代替以及步骤S168的过程被步骤S288的过程所代替之外。
图49的步骤S272的过程是要通过参考图像读取单元210来执行以读取参考像素的读取操作,并且随后将参照图51详细描述该读取操作。
在图49的步骤S274中,基于生成目标预测像素在预测图像中的位置和预测方向,参考图像读取单元210确定4、5或6为在生成预测关联像素时要使用的参考像素的数目。
在图50的步骤S288中,基于生成目标预测像素在预测图像中沿垂直方向的位置和预测方向,像素生成单元211确定4、5或6为要从中间结果存储器50读取的子像素的数目。
图51是用于详细解释图49的步骤S272的读取操作的流程图。
在图51的步骤S301中,图48所示的帧间预测单元24的参考图像读取单元210确定在由运动预测单元25提供的帧间预测模式信息中所包含的预测方向是否为“双预测”。
如果在步骤S301中确定预测方向是“双预测”,则操作进行至步骤S302。在步骤S302中,参考图像读取单元210确定参考像素范围,该参考像素范围包括:具有帧间预测块的尺寸的块、具有在所述块下方的一行像素的块以及具有在由所述两个块形成的块右侧的一列像素的块。然后操作进行至步骤S304。
如果在步骤S301中确定预测方向不是”双预测”,或者如果预测方向是“L0预测”或“L1预测”,则操作进行至步骤S303。在步骤S303中,参考图像读取单元210确定参考像素范围,该参考像素范围包括:具有帧间预测块的尺寸的块、具有在所述块的上方一行像素的块和具有在所述块的下方的两行像素的块、以及具有在由所述三个块形成的块的左侧的一列像素的块和具有在由所述三个块形成的块的右侧的两列像素的块。然后操作进行至步骤S304。
在步骤S304中,参考图像读取单元210从帧存储器22读取位于对应于运动矢量的位置处并且位于通过步骤S302或S303的过程所确定的范围内的参考像素,并暂时地存储这些参考像素。操作返回至图49的步骤S272,然后进行至步骤S273。
如上所述,当预测方向是“L0预测”或“L1预测”时,与预测方向是“双预测”的情况相比较,图48所示的帧间预测单元24使在生成外部预测像素时要使用的参考像素的数目增加并且降低复制像素的数目。结果,可以使得所述帧间预测精度高于图26的帧间预测单元24的帧间预测精度,并且降低帧存储器22中的存储带宽的使用量。
此外,如在图51所示的读取操作一样,与图26的帧间预测单元24相比较,使得在生成外部预测像素时要使用的参考像素的数目增加,以使得当预测方向是“L0预测”或“L1预测”时要读取的参考像素的范围变得等于或小于当预测方向是“双预测”时要读取的参考像素的范围的情况下,可以使得帧间预测精度更高,而不用增加帧存储器22中的存储带宽的最大使用量。
具体地,在预测方向是“双预测”的情况下,要读取的参考像素的数目是预测方向为“L0预测”或“L1预测”的情况下的参考像素的数目的两倍。因此,图48所示的帧间预测单元24增加了在生成外部预测像素时要使用的参考像素的数目,使得当预测方向是“L0预测”或“L1预测”时要读取的参考像素的范围变得等于或小于当预测方向是“双预测”时要读取的参考像素的范围。与图26的帧间预测单元24相比较,以此方式可以使得帧间预测精度更高,而不需要增加帧存储器22中的存储带宽的最大使用量。
在以上描述中,当运动矢量的水平分量和垂直分量二者的分数值均为0时,或当预测像素的位置是整数位置时,执行计算,其中0是与除了对应于预测像素的参考像素之外的像素对应的滤波器系数。然而,可以不执行计算。在这样的情况下,图4的参考图像读取单元41、图26的参考图像读取单元160、图30的参考图像读取单元180、图44的参考图像读取单元200以及图48的参考图像读取单元210从帧存储器22读取在对应于运动矢量的位置处并且具有帧间预测块的尺寸的块,并将所述块作为预测图像如原样进行输出。
[帧间预测单元的第六示例结构]
图52是示出图3所示的帧间预测单元24的第六示例结构的框图。
图52所示的部件中,与图26所示的部件相同的部件通过与图26中的附图标记相同的附图标记来表示。将不再重复已经作过的解释。
图52所示的帧间预测单元24的结构与图26所示的结构的主要不同之处在于:参考图像读取单元160被参考图像读取单元220所代替,以及像素生成单元161被像素生成单元221所代替。图52所示的帧间预测单元24根据运动矢量、帧间预测块的尺寸以及预测方向来改变在生成外部预测像素时要使用的参考像素的数目。
具体地,如图4所示的参考图像读取单元41一样,基于在由图3所示的运动预测单元25提供的帧间预测模式信息中所包含的参考索引和预测方向,图52所示的帧间预测单元24的参考图像读取单元220在帧存储器22所存储的图像中识别参考图像。
基于运动矢量和包含在帧间预测模式信息中的预测方向和块尺寸,参考图像读取单元220确定在生成预测图像时要使用的参考像素的范围。参考图像读取单元220从帧存储器22读取在所确定的范围内的参考像素,并暂时地存储这些参考像素。
如参考图像读取单元41一样,针对每个预测像素,参考图像读取单元220在暂时存储的参考像素中读取在生成预测像素时要使用的参考像素。在此,在生成预测像素时要使用的参考像素的数目等于2、3、4、5或6。如参考图像读取单元41一样,参考图像读取单元220将读取的参考像素提供给像素生成单元221。
如图26所示的像素生成单元161一样,像素生成单元221将由参考图像读取单元220提供的参考像素设置为生成像素。基于运动矢量的分数值、预测像素在预测图像中的位置以及在由运动预测单元25提供的帧间预测模式信息中所包含的块尺寸和预测方向,像素生成单元221确定在生成预测像素时要使用的子像素的数目。然后像素生成单元221从中间结果存储器50读取所确定的对应于生成目标预测像素的作为生成像素的子像素的数目。在此,在生成预测像素时要使用的子像素的数目等于2、3、4、5或6。
当生成像素的数目小于6时,像素生成单元221根据生成像素的数目与六之间的数目差来复制生成像素中的外部像素,并且生成包括复制像素和所述生成像素的六个像素,作为新生成像素。像素生成单元221将所生成的六个生成像素提供给6抽头FIR滤波器45。
[参考像素范围的示例]
图53和图54是示出在由图52的参考图像读取单元220所确定的参考像素范围、对应于运动矢量的预测像素组、帧间预测块的尺寸以及预测方向之间的关系的示例的示意图。
图53是示出在参考像素比是4或更小的情况下的关系的示例的示意图,而图54是示出在参考像素比是5或更小的情况下的关系的示例的示意图。
在图53和图54中,“Inner(内部)”表示在运动矢量的水平分量和垂直分量二者的分数值均为非0的情况下的预测像素组(例如子像素e、f、g、i、j、k、m、n和o)。“Outer(外部)h”表示在运动矢量的水平分量的分数值为非0但其垂直分量的分数值为0的情况下的预测像素组(例如子像素a、b和c)。“Outer v”表示在运动矢量的垂直分量的分数值为非0但水平分量的分数值为0的情况下的预测像素组(例如子像素d、h和l)。相同的情况适用于随后描述的图58至图60。
以下描述的是在帧间预测块的尺寸是4×8像素并且预测方向是“双预测”的情况下,基于图53所示的关系所确定的参考像素范围。在该情况下,在用于“双预测”的范围中,当对应于“L0预测”的运动矢量的子像素的位置是j而对应于“L1预测”的运动矢量的子像素的位置是d时,用于“L0预测”的参考像素的范围被确定为6×10像素,而用于“L1预测”的预测像素的范围被确定为8×8像素。此时,参考像素比是3.875=(6×10+8×8)/(4×8),其小于5。
[帧间预测操作的第六示例的描述]
图55和图56示出了用于详细解释图20的步骤S15的、要通过图52的帧间预测单元24来执行的帧间预测操作的流程图。
在图55的步骤S311中,基于在由图3所示的运动预测单元25提供的帧间预测模式信息中所包含的预测方向和参考索引,帧间预测单元24的参考图像读取单元220(图52)在帧存储器22所存储的图像中识别出参考图像。
在步骤S312中,参考图像读取单元220执行读取操作以读取参考图像。随后将参照图57对该读取操作进行详细描述。
在步骤S313中,参考图像读取单元220在形成预测图像的预测像素中确定生成目标预测像素。所述预测像素是在步骤S313的过程中还未被确定为生成目标预测像素的预测像素。如果存在有多于一个的预测关联像素,针对每个预测关联像素来执行下述步骤S314至步骤S323的过程。
在步骤S314中,基于生成目标预测像素在预测图像中的位置、运动矢量、帧间预测块的尺寸以及预测方向,参考图像读取单元220确定2、3、4、5或6为在生成预测关联像素时要使用的参考像素的数目。
在步骤S315中,基于在步骤S314中所确定的参考像素的数目和生成目标预测像素在参考图像中的位置,参考图像读取单元220在步骤S312中所存储的参考像素中读取在生成预测关联像素时要使用的参考像素。参考图像读取单元220将读取的参考像素提供给像素生成单元221。
在步骤S316中,基于在由运动预测单元25提供的运动矢量中的对应于预测关联像素的分量的分数值,6抽头滤波器系数存储器48将所存储的并且与分数值相关联的滤波器系数提供给6抽头FIR滤波器45。
在步骤S317中,像素生成单元221确定由参考图像读取单元220提供的参考像素的数目是否小于6。如果在步骤S317中确定参考像素的数目小于6,则操作进行至步骤S318。
在步骤S318中,像素生成单元221对由参考图像读取单元220提供的参考像素中的外部参考像素进行复制,以在外部参考像素的外侧生成像素。如此,像素生成单元221生成包括复制像素和参考像素的六个生成像素。像素生成单元221将所生成的六个生成像素提供给6抽头FIR滤波器45,然后操作进行至步骤S319。
另一方面,如果在步骤S317中确定参考像素的数目不小于6,或者如果参考像素的数目等于6,则像素生成单元221将六个参考像素作为生成像素提供给6抽头FIR滤波器45,然后操作进行至步骤S319。
步骤S319至步骤S325的过程与图28和图29的步骤S161至步骤S167的过程相同,因此在此不再重复解释这些步骤。
在图56的步骤S325的过程之后,在步骤S326中,基于生成目标预测像素在预测图像中沿垂直方向的位置、帧间预测块的尺寸以及预测方向,像素生成单元221确定2、3、4、5或6为要从中间结果存储器50读取的子像素的数目。
在步骤S327中,基于在步骤S326中所确定的子像素的数目和生成目标预测像素在参考图像中的位置,像素生成单元221从中间结果存储器50读取作为生成像素的子像素。
在步骤S328中,基于由运动预测单元25提供的运动矢量的垂直分量的分数值,6抽头滤波器系数存储器48将所存储的并且与所述分数值相关联的滤波器系数提供给6抽头FIR滤波器45。然后操作进行至步骤S329。
步骤S329和步骤S330的过程与图55的步骤S317和步骤S318的过程相同,除了对子像素而不是参考像素执行过程之外。因此,在此不再重复解释这些步骤。此外,步骤S331至步骤S333的过程与图29的步骤S175至步骤S177的过程相同,因此,在此不再重复解释这些步骤。
图57是用于详细解释图55的步骤S312的读取操作的流程图。
在图57的步骤S341中,图52所示的帧间预测单元24的参考图像读取单元220确定由运动预测单元25提供的运动矢量的水平分量和垂直分量二者的分数值是否均为0。
如果在步骤S341中确定运动矢量的水平分量和垂直分量二者的分数值均不为0,则在步骤S342中参考图像读取单元220确定预测方向是否为“双预测”。
如果在步骤S342中预测方向被确定为“双预测”,则在步骤S343中参考图像读取单元220确定运动矢量的水平分量和垂直分量二者的分数值是否均为非0。
如果在步骤S343中运动矢量的水平分量和垂直分量二者的分数值被确定均为非0,则操作进行至步骤S344。在步骤S344中,参考图像读取单元220确定与“双预测”、“Inner”以及帧间预测模式信息中所包含的帧间预测块尺寸对应的参考像素范围。然后操作进行至步骤S353。
另一方面,如果在步骤S343中确定运动矢量的水平分量和垂直分量的分数值之一为0,则在步骤S345中参考图像读取单元220确定是否仅运动矢量的水平分量的分数值为非0。
如果在步骤S345中确定仅运动矢量的水平分量的分数值为非0,则操作进行至步骤S346。在步骤S346中,参考图像读取单元220确定与“双预测”、“Outer h”以及帧间预测模式信息中所包含的帧间预测块尺寸对应的参考像素范围。然后操作进行至步骤S353。
如果在步骤S345中确定运动矢量的水平分量的分数值不为非0,或者如果确定仅运动矢量的垂直分量的分数值为非0,则操作进行至步骤S347。在步骤S347中,参考图像读取单元220确定与“双预测”、“Outer v”以及帧间预测模式信息中所包含的帧间预测块尺寸对应的参考像素范围。然后操作进行至步骤S353。
如果在步骤S342中确定预测方向不是“双预测”,或者如果预测方向是“L0预测”或“L1预测”,则操作进行至步骤S348。
如果在步骤S348中确定运动矢量的水平分量和垂直分量二者的分数值均为非0,则操作进行至步骤S349。在步骤S349中,参考图像读取单元220确定与“L0预测/L1预测”、“Inner”以及帧间预测模式信息中所包含的帧间预测块尺寸对应的参考像素范围。然后操作进行至步骤S353。
如果在步骤S348中确定运动矢量的水平分量和垂直分量的分数值之一为零,则在步骤S350中参考图像读取单元220确定是否仅运动矢量的水平分量的分数值为非零。
如果在步骤S350中确定仅运动矢量的水平分量的分数值为非0,则操作进行至步骤S351。在步骤S351中,参考图像读取单元220确定与“L0预测/L1预测”、“Outer h”以及帧间预测模式信息中所包含的帧间预测块尺寸对应的参考像素范围。然后操作进行至步骤S353。
如果在步骤S350中确定运动矢量的水平分量的分数值不为非0,或者如果确定仅运动矢量的垂直分量的分数值为非0,则操作进行至步骤S352。在步骤S352中,参考图像读取单元220确定与“L0预测/L1预测”、“Outerv”以及帧间预测模式信息中所包含的帧间预测块尺寸对应的参考像素范围。然后操作进行至步骤S353。
在步骤S353中,参考图像读取单元220从帧存储器22读取位于对应于运动矢量的位置处并且位于通过步骤S344、S346、S347、S349、S351或S352的过程所确定的范围内的参考像素,并暂时地存储这些参考像素。操作返回至图55的步骤S312,然后进行至步骤S313。
另一方面,如果在步骤S341中确定运动矢量的水平分量和垂直分量二者的分数值均为0,则参考图像读取单元220读取位于对应于运动矢量的位置处并且等于帧间预测块的尺寸的参考像素,并在步骤S354中输出将参考像素,作为预测图像。操作返回至图20的步骤S15,然后进行至步骤S16。
在图52至图57中,尽管在生成每个预测关联像素时要使用的生成像素的数目等于6,但是生成像素的数目并不限于6。
[在生成每个预测关联像素时要使用的生成像素的数目等于8的情况下的参考像素范围的示例]
图58是示出在生成每个预测关联像素时要使用的生成像素的数目等于8并且参考像素比是5或更低的情况下,在参考像素范围、对应于运动矢量的预测像素组、帧间预测块的尺寸以及预测方向之间的关系的示例的示意图。
图59是示出在生成预测关联像素时要使用的生成像素的数目等于8并且参考像素比是6或更低的情况下,在参考像素范围、对应于运动矢量的预测像素组、帧间预测块的尺寸以及预测方向之间的关系的示例的图。
[在生成每个预测关联像素时要使用的生成像素的数目等于12的情况下的参考像素范围的示例]
图60是示出在生成预测关联像素时要使用的生成像素的数目等于12并且参考像素比是5或更低的情况下,在参考像素范围、对应于运动矢量的预测像素组、帧间预测块的尺寸以及预测方向之间的关系的示例的示意图。
如上参照图30至图60所述的,根据运动矢量、帧间预测块的尺寸以及预测方向中的至少之一来改变在生成外部预测像素时要使用的参考像素的数目的技术,也可以应用于图4所示的帧间预测单元24。
也就是说,在生成预测像素时要使用的生成像素的数目随着预测像素在预测图像中的位置而发生变化的情况下,因为在图4的帧间预测单元24的情况下没有使用复制参考像素,所以可以根据运动矢量、帧间预测块的尺寸以及预测方向中的至少之一来改变在生成外部预测像素时要使用的参考像素的数目。以下将描述这样的情况。
[帧间预测单元的第七示例结构]
图61是示出图3所示的帧间预测单元24的第七示例结构的框图。
在图61所示的部件中,与图4和图52所示的部件相同的部件通过与图4和图52中的附图标记相同的附图标记来表示。将不再重复已经作过的解释。
图61所示的帧间预测单元24的结构与图4所示的结构的主要不同之处在于:参考图像读取单元41和像素分类单元42被参考图像读取单元220和像素分类单元241所代替,以及新添加了3抽头FIR滤波器242、5抽头FIR滤波器243、3抽头滤波器系数存储器244以及5抽头滤波器系数存储器245。
如图4所示的像素分类单元42一样,图61所示的帧间预测单元24的像素分类单元241将由参考图像读取单元220提供的参考像素设置为生成像素。基于运动矢量的分数值、预测像素在预测图像中的位置以及包含在由运动预测单元25提供的帧间预测模式信息中的块尺寸和预测方向,像素分类单元241确定在生成预测像素时要使用的子像素的数目。然后像素分类单元241从中间结果存储器50读取所确定的对应于生成目标预测像素的作为生成像素的子像素的数目。在此,在生成预测像素时要使用的子像素的数目等于2、3、4、5或6。
根据生成像素的数目,像素分类单元241将生成像素提供给2抽头FIR滤波器43、3抽头FIR滤波器242、4抽头FIR滤波器44、5抽头FIR滤波器243或6抽头FIR滤波器45。具体地,当生成像素的数目等于2时,像素分类单元241将生成像素提供给2抽头FIR滤波器43,而当生成像素的数目等于3时,像素分类单元241将生成像素提供给3抽头FIR滤波器242。当生成像素的数目等于4时,像素分类单元241将生成像素提供给4抽头FIR滤波器44,而当生成像素的数目等于5时,像素分类单元241将生成像素提供给5抽头FIR滤波器243。当生成像素的数目等于6时,像素分类单元241将生成像素提供给6抽头FIR滤波器45。
3抽头FIR滤波器242用作算术运算单元,并通过使用由像素分类单元241提供的三个生成像素和由3抽头滤波器系数存储器244提供的滤波器系数来执行计算。3抽头FIR滤波器242将由此生成的一个像素提供给像素选择单元49。
5抽头FIR滤波器243用作算术运算单元,并通过使用由像素分类单元241提供的五个生成像素和由5抽头滤波器系数存储器245提供的滤波器系数来执行计算。5抽头FIR滤波器243将由此生成的一个像素提供给像素选择单元49。
3抽头滤波器系数存储器244用作存储单元,并且存储与运动矢量的分数值相关联的用于3抽头FIR滤波器242的滤波器系数。基于由运动预测单元25提供的运动矢量的分数值,3抽头滤波器系数存储器244将所存储的并且与所述分数值相关联的滤波器系数提供给3抽头FIR滤波器242。
5抽头滤波器系数存储器245用作存储单元,并且存储与运动矢量的分数值相关联的5抽头FIR滤波器243的滤波器系数。基于由运动预测单元25提供的运动矢量的分数值,5抽头滤波器系数存储器245将所存储的并且与所述分数值相关联的滤波器系数提供给5抽头FIR滤波器243。
[帧间预测操作的第七示例的描述]
图62和图63示出了用于详细解释图20的步骤S15的、要通过图61的帧间预测单元24来执行的帧间预测操作的流程图。
图62和图63的步骤S361至步骤S381的过程与图55和图56的步骤S311至步骤S333的过程相同,除了图55的步骤S317和步骤S318的过程被图62的步骤S367和步骤S368的过程所代替以及图56的步骤S329和步骤S330的过程被图63的步骤S378和步骤S379的过程所代替之外。
在图62的步骤S367的过程中,根据由参考图像读取单元220提供的参考像素的数目,像素分类单元241将参考像素提供给2抽头FIR滤波器43、3抽头FIR滤波器242、4抽头FIR滤波器44、5抽头FIR滤波器243或6抽头FIR滤波器45。
在步骤S368中,已经从像素分类单元241接收参考像素的2抽头FIR滤波器43、3抽头FIR滤波器242、4抽头FIR滤波器44、5抽头FIR滤波器243或6抽头FIR滤波器45执行操作。具体地,在步骤S368中,通过使用参考像素以及由2抽头滤波器系数存储器46、3抽头滤波器系数存储器244、4抽头滤波器系数存储器47、5抽头滤波器系数存储器245或6抽头滤波器系数存储器48提供的滤波器系数来执行计算。
图63的步骤S378和步骤S379的过程与图62的步骤S367和步骤S368的过程相同,除了对子像素而不是参考像素执行过程之外。因此,在此不再重复解释这些步骤。
尽管在附图中未示出,但是当编码装置10包括图30、44、48、52或61的帧间预测单元24时,解码装置100的帧间预测单元111也具有与图30、44、48、52或61的帧间预测单元24相同的结构。
此外,在参照图30至图63的以上描述中,通过插值来生成1/4像素位置的子像素。然而,替代地可以生成1/2像素位置的子像素或1/8像素位置的子像素。在该情况下,执行与生成1/4像素位置的子像素的操作相同的操作,除了使用不同的滤波器系数之外。
另外,在生成预测像素时要使用的参考像素的数目和参考像素的数目类型并不限于以上描述的数目。此外,在生成预测图像中的预测像素时要使用的参考像素的数目改变的位置并不限于以上描述的位置。
在该实施方式中,编码方法是基于H.264/AVC的。然而,本技术不限于此,并且也可以应用于使用用于执行其他运动预测/补偿操作的编码方法和解码方法的编码装置和解码装置。
本技术还可以应用于:用于经由网络介质(如卫星广播、有线电视广播、因特网或便携式电话装置)来接收图像信息(比特流)的编码装置和解码装置,所述图像信息借助于通过正交变换(例如离散余弦变换)和运动补偿(例如MPEG、H.26x等)而压缩图像信息的技术来进行压缩。本技术还可以应用于:用于对存储介质(例如光盘、磁盘和快闪存)执行操作的编码装置和解码装置。另外,本技术还可以应用于:安装在这些编码装置和解码装置中的运动预测/补偿装置。
[帧间预测单元的第八示例结构]
图64是示出了图3所示的帧间预测单元24的第八示例结构的框图。
在图64所示的部件中,与图26所示的部件相同的部件通过与图26中的附图标记相同的附图标记来表示。将不再重复已经作过的解释。
图64所示的帧间预测单元24的结构与图26所示的结构的主要不同之处在于:参考图像读取单元160、像素生成单元161和6抽头滤波器系数存储器48被参考图像读取单元251、像素输出单元252和6抽头滤波器系数存储器253所代替。图64所示的帧间预测单元24确定在生成每个预测像素时要使用的生成像素,使得在对应于外部预测像素的六个生成像素中位于外部预测像素的外侧的生成像素(以下称为外部生成像素)的数目变得小于在对应于内部预测像素的六个生成像素中的外部生成像素的数目。
具体地,如图26所示的参考图像读取单元160一样,基于包含在帧间预测模式信息中的参考索引和预测方向,帧间预测单元24的参考图像读取单元251在帧存储器22所存储的图像中识别出参考图像。基于运动矢量的整数值和包含在帧间预测模式信息中的块尺寸,参考图像读取单元251从帧存储器22读取在生成预测图像时要使用的参考像素,并暂时地存储这些参考像素。
参考图像读取单元251用作像素读取单元,并且针对每个预测像素,在暂时存储的参考像素中读取在生成预测像素时要使用的参考像素。在这点上,参考图像读取单元251确定用于每个预测像素的六个参考像素,使得在用于外部预测像素的六个参考像素中的、位于外部预测像素的外侧的参考像素的数目变得小于在用于内部预测像素的六个参考像素中的、位于内部预测像素的外侧的参考像素的数目。然后参考图像读取单元251读取六个参考像素。然后参考图像读取单元251将读取的六个参考像素提供给像素输出单元252。
如图26所示的像素生成单元161一样,像素输出单元252将由参考图像读取单元251提供的参考像素设置为生成像素。基于由运动预测单元25提供的运动矢量的分数值,像素输出单元252还从中间结果存储器50读取对应于生成目标预测像素的六个子像素,作为生成像素。在这点上,像素输出单元252确定用于每个预测像素的六个子像素作为生成像素,使得要作为用于外部预测像素的外部生成像素的子像素的数目变得小于要作为用于内部预测像素的外部生成像素的子像素的数目。然后像素输出单元252读取六个子像素。像素输出单元252将六个生成像素提供给6抽头FIR滤波器45。
6抽头滤波器系数存储器253存储与运动矢量的分数值和外部生成像素的数目相关联的用于6抽头FIR滤波器45的滤波器系数。基于由运动预测单元25提供的运动矢量的分数值和生成目标预测像素在预测图像中的位置,6抽头滤波器系数存储器253将所存储的并且与所述分数值相关联的滤波器系数以及与所述位置对应的外部生成像素的数目提供给6抽头FIR滤波器45。
[示例参考像素]
图65是示出图64所示的帧间预测单元24中的示例参考像素的示意图。
图65示出了在帧间预测块的尺寸是4×4像素的情况下,在生成沿水平方向排列、沿水平方向具有1/2像素位置并沿垂直方向具有整数位置的四个预测像素中的每个时要使用的示例参考像素。
在图65中,分配有数字的每个方格表示预测像素,而没有数字的每个方格表示参考像素。每个带点的方格表示在生成预测像素时要使用的参考像素中的、位于帧间预测块的尺寸范围内的参考像素,以及各个阴影方格表示在帧间预测块的尺寸范围之外的参考像素。相同的情况适用于随后描述的图68至图70。
在图65所示的示例中,用于每个最外部预测像素的外部生成像素的数目等于2,而用于每个最内部预测像素的外部生成像素的数目等于3。
具体地,位于沿水平方向排列、沿水平方向具有1/2像素位置并且沿垂直方向具有整数位置的四个预测像素中的最外部的、并由分配有数字1和数字4的方格所表示的每个预测像素,通过使用位于预测像素的外侧的两个参考像素和位于预测像素的内侧的四个参考像素来生成。
位于由分配有数字1和数字4的方格所表示的预测像素的内侧的并且由分配有数字2和数字3的方格所表示的每个次外部预测像素,通过使用包括在预测像素的每侧的各三个参考像素的共计六个参考像素来生成。也就是说,用于由分配有数字2和数字3的方格所表示的每个预测像素的参考像素的数目等于3,其大于用于由分配有数字1和数字4的方格所表示的每个预测像素的参考像素的数目2。
如上所述,在图64所示的帧间预测单元24中,使得用于每个外部预测像素的外部生成像素的数目小于用于每个内部预测像素的外部生成像素的数目。因此,沿水平方向排列的并且是帧间预测中所需的参考像素的数目等于7,其小于在传统情况下的9。结果,可以降低帧存储器22中的存储带宽的使用量。相应地,可以降低芯片的数目以降低生产成本。此外,可以降低对帧存储器22的访问次数以降低功耗。
在图64所示的帧间预测单元24中,用于任意预测像素的生成像素的数目等于6。因此,与以下情形相比较,生成了具有更高精度的预测图像:在所述情形下对应于每个外部预测像素的生成像素的数目被设置等于4以将沿水平方向排列并且是帧间预测中所需的参考像素的数目降低至7(其与在图64所示的帧间预测单元24的情况下的数目相同)。
尽管在附图中未示出,但是在图65所示的示例情形中,在生成沿垂直方向排列、沿垂直方向具有1/2像素位置并且沿水平方向具有整数位置的四个预测像素中的每一个时要使用的六个参考像素被确定为,使得用于每个最外部预测像素或最上方和最下方预测像素中的每一个的外部参考像素的数目等于2,而用于每个最内部预测像素的外部参考像素的数目等于3。
此外,在生成沿垂直方向排列的、沿水平方向和垂直方向均具有1/2像素位置的四个预测像素中的每一个时要使用的参考像素是在生成每个如下预测关联像素时要使用的参考像素:用于每个最外部预测像素的外部预测关联像素的数目等于2,而用于每个最内部预测像素的外部预测关联像素的数目等于3。因此,在生成沿水平方向和垂直方向均具有1/2像素位置的4×4像素的预测图像时要使用的参考像素的范围是7×7像素,其小于传统的9×9像素范围。
[帧间预测操作的第八示例的描述]
图66和图67示出了用于详细解释图20的步骤S15的、要通过图64的帧间预测单元24来执行的帧间预测操作的流程图。
图66的步骤S400至步骤S403的过程与图22的步骤S50至步骤S53的过程相同,因此,在此不再重复解释这些步骤。如果存在多于一个的预测关联像素,则针对每个预测关联像素执行下述步骤S404至步骤S412的过程。
在步骤S404中,基于生成目标预测像素在参考图像中的位置,参考图像读取单元251从在步骤S402中所存储的参考像素中读取在生成预测关联像素时要使用的六个参考像素。然后参考图像读取单元251将读取的六个参考像素作为生成像素提供给像素输出单元252。
在步骤S405中,6抽头滤波器系数存储器253确定预测关联像素在预测图像中的位置是否为在外侧。如果在步骤S405中确定预测关联像素在预测图像中的位置为在外侧,则6抽头滤波器系数存储器253将外部生成像素的数目设置为2,其小于3或生成像素的总数目6的一半。然后操作进行至步骤S406。
在步骤S406中,6抽头滤波器系数存储器253读取所存储的并且与运动矢量的分数值和作为外部生成像素的数目“2”相关联的滤波器系数,并将滤波器系数提供给6抽头FIR滤波器45。然后操作进行至步骤S408。
另一方面,如果在步骤S405中确定预测关联像素在预测图像中的位置为不在外侧,则6抽头滤波器系数存储器253将外部生成像素的数目设置为3或生成像素的总数目6的一半。然后操作进行至步骤S407。
在步骤S407中,6抽头滤波器系数存储器253读取所存储的并且与运动矢量的分数值和作为外部生成像素的数目“3”相关联的滤波器系数,并将滤波器系数提供给6抽头FIR滤波器45。然后操作进行至步骤S408。
在步骤S408中,6抽头FIR滤波器45通过使用由像素输出单元252提供的作为生成像素的六个参考像素以及由6抽头滤波器系数存储器253提供的滤波器系数来执行计算。6抽头FIR滤波器45将由此生成的一个预测关联像素提供给像素选择单元162。
步骤S409至步骤S414的过程与图22和图23的步骤S62至步骤S67的过程相同,因此,在此不再重复解释这些步骤。
在步骤S415中,基于生成目标预测像素在参考图像中的位置,像素输出单元252从中间结果存储器50读取作为生成像素的六个子像素。
在步骤S416中,6抽头滤波器系数存储器253确定生成目标预测像素在预测图像中的位置是否为在外侧。如果在步骤S416中确定生成目标预测像素在预测图像中的位置为在外侧,则6抽头滤波器系数存储器253将外部生成像素的数目设置为2,其小于3或生成像素的总数目6的一半。然后操作进行至步骤S417。
在步骤S417中,6抽头滤波器系数存储器253读取所存储的并且与运动矢量的垂直分量的分数值和作为外部生成像素的数目“2”相关联的滤波器系数,并将滤波器系数提供给6抽头FIR滤波器45。然后操作进行至步骤S419。
另一方面,如果在步骤S416中确定生成目标预测像素在预测图像中的位置为不在外侧,则6抽头滤波器系数存储器253将外部生成像素的数目设置为3或生成像素的总数目6的一半。然后操作进行至步骤S418。
在步骤S418中,6抽头滤波器系数存储器253读取所存储的并且与运动矢量的垂直分量的分数值和作为外部生成像素的数目“3”相关联的滤波器系数,并将滤波器系数提供给6抽头FIR滤波器45。然后操作进行至步骤S419。
在步骤S419中,6抽头FIR滤波器45通过使用由像素输出单元252提供的作为生成像素的六个子像素和由6抽头滤波器系数存储器253提供的滤波器系数来执行计算。6抽头FIR滤波器45将由此生成的一个子像素提供给像素选择单元162。
步骤S420和步骤S421的过程与图23的步骤S76和步骤S77的过程相同,因此,在此不再重复解释这些步骤。
在图64所示的帧间预测单元24中,在一个计算中要使用的生成像素的数目等于6。然而,生成像素的数目并不限于6。此外,在图66和图67所示的帧间预测操作中,外部生成像素的数目是生成像素的总数目的一半或者小于生成像素的总数目的一半。然而,外部生成像素的数目并不限于此。还有,当外部生成像素的数目接近生成像素的总数目的一半时,可以获得具有较高精度的预测图像。也就是说,当生成预测图像时,与预测像素更相似的生成像素应当被用于获得具有较高精度的预测图像。
[其他示例参考像素]
图68和图69是示出在生成像素的数目等于8的情况下图64的帧间预测单元24中的示例参考像素的示意图。图70是示出在生成像素的数目等于7的情况下图64的帧间预测单元24中的示例参考像素的示意图。
图68示出了在帧间预测块的尺寸是4×4像素的情况下,在生成沿水平方向排列、沿水平方向具有1/2像素位置并且沿垂直方向具有整数位置的四个预测像素中的每一个时要使用的示例参考像素。
在图68所示的示例中,用于每个最外部预测像素的外部生成像素的数目等于3,而用于每个最内部预测像素的外部生成像素的数目等于4。
具体地,位于沿水平方向排列、沿水平方向具有1/2像素位置并且沿垂直方向具有整数位置的四个预测像素中的最外部的并且由分配有数字1和数字4的方格所表示的每个预测像素,通过使用位于预测像素的外侧的三个参考像素和位于预测像素的内侧的五个参考像素来生成。
位于由分配有数字1和数字4的方格所表示的预测像素的内侧的并且由分配有数字2和数字3的方格所表示的每个次外部预测像素,通过使用包括预测像素的每侧上的各四个参考像素的共计八个参考像素来生成。也就是说,用于由分配有数字2和数字3的方格所表示的每个预测像素的外部生成像素的数目等于4,其大于3,而3是用于由分配有数字1和数字4的方格所表示的每个预测像素的外部生成像素的数目。
如上所述,在图64所示的帧间预测单元24中,使用于每个外部预测像素的外部生成像素的数目小于用于每个内部预测像素的外部生成像素的数目。因此,沿水平方向排列的并且是帧间预测中所需的参考像素的数目等于9,其小于在传统情况下的11。结果,可以降低帧存储器22中的存储带宽的使用量。
如图68所示,当预测像素是子像素b时,在生成由分配有数字1和数字4的方格所表示的预测像素时要使用的、并且与作为运动矢量的分数值的值1/2以及作为外部生成像素的数目“3”相关联的滤波器系数,从对相应的生成像素的外侧按顺序是例如3、-10、39、42、-14、7、-4以及1。
当预测像素是子像素a时,在生成最外部预测像素时要使用的、并且与作为运动矢量的分数值的值1/4以及作为外部生成像素的数目“3”相关联的滤波器系数,从相应的生成像素的外侧按顺序是例如2、-9、56、20、-8、4、-2以及1。当预测像素是子像素c时,在生成最外部预测像素时要使用的、并且与作为运动矢量的分数值的值3/4以及作为外部生成像素的数目“3”相关联的滤波器系数从相应的生成像素的外侧按顺序是例如2、-6、18、58、-11、5、-3以及1。
图69示出了在帧间预测块的尺寸是8×8像素的情况下,在生成沿水平方向排列、沿水平方向具有1/2像素位置并且沿垂直方向具有整数位置的四个预测像素中的每个时要使用的示例参考像素。
在图69的A中,用于每个最外部预测像素的外部生成像素的数目等于3,而用于每个最内部预测像素的外部生成像素的数目等于4。
具体地,位于沿水平方向排列、沿水平方向具有1/2像素位置并且沿垂直方向具有整数位置的八个预测像素中的最外部的并且由分配有数字1和数字8的方格所表示的每个预测像素,通过使用位于预测像素的外侧的三个参考像素和位于预测像素的内侧的五个参考像素来生成,如图68所示的情况一样。
位于由分配有数字1和数字8的方格所表示的预测像素的内侧的并且由分配有数字2和数字7的方格所表示的每个预测像素,通过使用包括在预测像素的每侧上的各四个参考像素的共计八个参考像素来生成。也就是说,由分配有数字2和数字7的方格所表示的每个预测像素的外部生成像素的数目等于4,其大于3,而3是由分配有数字1和数字8的方格所表示的每个预测像素的外部生成像素的数目。
如上所述,在图64所示的帧间预测单元24中,使得用于每个外部预测像素的外部生成像素的数目小于用于每个内部预测像素的外部生成像素的数目。因此,沿水平方向排列的并且是帧间预测中所需的参考像素的数目等于13,其小于在传统情况下的15。结果,可以降低帧存储器22中的存储带宽的使用量。
在图69的B中,用于每个最外部预测像素的外部生成像素的数目等于2,用于每个次外部预测像素的外部生成像素的数目等于3,而用于每个最内部预测像素的外部生成像素的数目等于4。
具体地,位于沿水平方向排列、沿水平方向具有1/2像素位置并且沿垂直方向具有整数位置的八个预测像素中的最外部的并且由分配有数字1和数字8的方格所表示的每个预测像素,通过使用位于预测像素的外侧的两个参考像素和位于预测像素的内侧的六个参考像素来生成。
由位于由分配有数字1和数字8的方格所表示的预测像素的内侧的并且分配有数字2和数字7的方格所表示的每个次外部预测像素,通过使用位于预测像素的外侧的三个参考像素和位于预测像素的内侧的五个参考像素来生成。另外,位于由分配有数字2和数字7的方格所表示的预测像素的内侧的并且由分配有数字3至数字6的方格所表示的每个预测像素,通过与在图69的A的情况下的相同种类的参考像素来生成。
根据以上描述明显地是,在图69的B的情况下,沿水平方向排列的并且是帧间预测中所需的参考像素的数目等于11,其小于在图69的A中的情况下使用的13。结果,可以进一步降低帧存储器22中的存储带宽的使用量。
如图69的B所示,当预测像素是子像素b时,在生成由分配有数字1和数字8的方格所表示的预测像素中要使用的、并且与作为运动矢量的分数值的值1/2和作为外部生成像素的数目“2”相关联的滤波器系数,从相应的生成像素的外侧按顺序是例如-6、36、44、-16、9、-5、3以及-1。在生成由分配有数字2和数字7的方格所表示的预测像素时要使用的、并且与作为运动矢量的分数值的值1/2以及作为外部生成像素的数目“3”相关联的滤波器系数,从相应的生成像素的外侧按顺序是例如3、-10、39、42、-14、7、-4以及1。另外,在生成由分配有数字3至数字6的方格所表示的预测像素时要使用的、并且与作为运动矢量的分数值的值1/2以及作为外部生成像素的数目“4”相关联的滤波器系数,从相应的生成像素的外侧按顺序是例如-1、4、-11、40、40、-11、4以及-1。
当预测像素是子像素a时,在生成最外部预测像素时要使用的、并且与作为运动矢量的分数值的值1/4以及作为外部生成像素的数目“2”相关联的滤波器系数,从相应的生成像素的外侧按顺序是例如-5、54、22、-10、6、-4、2以及-1。在生成次外部预测像素时要使用的、并且与作为运动矢量的分数值的值1/4以及作为外部生成像素的数目“3”相关联的滤波器系数,从相应的生成像素的外侧按顺序是例如2、-9、56、20、-8、4、-2以及1。另外,在生成第三和第四外部预测像素时要使用的、并且与作为运动矢量的分数值的值1/4以及作为外部生成像素的数目“4”相关联的滤波器系数,从相应的生成像素的外侧按顺序是例如-1、4、-10、57、19、-7、3以及-1。
当预测像素是子像素c时,在生成最外部预测像素时要使用的、并且与作为运动矢量的分数值的值3/4以及作为外部生成像素的数目“2”相关联的滤波器系数,从相应的生成像素的外侧按顺序是例如-3、16、60、-13、7、-4、2以及-1。在生成次外部预测像素时要使用的、并且与作为运动矢量的分数值的值3/4以及作为外部生成像素的数目“3”相关联的滤波器系数,从对应的生成像素的外侧按顺序是例如2、-6、18、58、-11、5、-3以及1。另外,在生成第三和第四外部预测像素时要使用的、并且与作为运动矢量的分数值的值3/4以及作为外部生成像素的数目“4”相关联的滤波器系数,从相应的生成像素的外侧按顺序是例如-1、3、-7、19、57、-10、4以及-1。
图70示出了在帧间预测块的尺寸是4×4像素的情况下,在生成沿水平方向排列、沿水平方向具有1/2像素位置并且沿垂直方向具有整数位置的四个预测像素中的每一个时要使用的示例参考像素。
在图70所示的示例中,用于每个最外部预测像素的外部生成像素的数目等于2,而用于每个最内部预测像素的外部生成像素的数目等于3。
具体地,位于沿水平方向排列、沿水平方向具有1/2像素位置并且沿垂直方向具有整数位置的四个预测像素中的最外部的并且由分配有数字1和数字4的方格所表示的每个预测像素,通过使用位于预测像素的外侧的两个参考像素和位于预测像素的内侧的五个参考像素来生成。
位于由分配有数字1和数字4的方格所表示的预测像素的内侧的并且由分配有数字2和数字3的方格所表示的每个预测像素,通过使用位于预测像素的外侧的三个参考像素和位于预测像素的内侧的四个参考像素来生成。
如上所述,在图64所示的帧间预测单元24中,使得用于每个外部预测像素的外部生成像素的数目小于用于每个内部预测像素的外部生成像素的数目。因此,沿水平方向排列的并且是帧间预测中所需的参考像素的数目等于7,其小于在传统情况下的10。结果,可以降低帧存储器22中的存储带宽的使用量。
如图70所示,当预测像素是子像素b时,在生成由分配有数字1和数字4的方格所表示的预测像素时要使用的、并且与作为运动矢量的分数值的值1/2和作为外部生成像素的数目“2”相关联的滤波器系数,从相应的生成像素的外侧按顺序是例如-6、36、44、-15、8、-4以及1。
当预测像素是子像素a时,在生成最外部预测像素时要使用的、并且与作为运动矢量的分数值的值1/4和作为外部生成像素的数目“2”相关联的滤波器系数,从相应的生成像素的外侧按顺序是例如-5、54、21、-9、5、-3以及1。当预测像素是子像素c时,在生成最外部预测像素时要使用的、并且与作为运动矢量的分数值的值3/4和作为外部生成像素的数目“2”相关联的滤波器系数,从相应的生成像素的外侧按顺序是例如-3、16、59、-12、6、-3以及1。
尽管在附图中未示出,但是在图68至图70所示的示例情况下,用于沿水平方向具有整数位置并且沿垂直方向具有分数位置的预测像素的参考像素被确定为,使得用于每个最外部预测像素的外部参考像素的数目变得小于每个最内部预测像素的外部参考像素的数目,如图68至图70所示的参考像素一样。
此外,在生成沿垂直方向排列、沿水平方向和垂直方向均具有1/2像素位置的四个预测像素中的每一个时要使用的参考像素,是在生成每个如下预测关联像素时要使用的参考像素:使得用于每个最外部预测像素的外部预测关联像素的数目小于用于每个最内部预测像素的外部预测关联像素的数目,如图68至图70所示的参考像素一样。
应当注意的是,可以改变沿水平方向排列的并且在生成沿水平方向具有分数位置的生成像素时要使用的外部生成像素的数目,以及沿垂直方向排列的并且在生成沿垂直方向具有分数位置的生成像素时要使用的外部生成像素的数目。
具体地,例如在帧存储器22中的读出单元是沿水平方向连续排列的预定数目的像素的情况下,即使当减少沿水平方向排列的参考像素的数目时,读出的次数也可能不变。然而,当沿垂直方向排列的参考像素的数目仅减少1时,读出的次数也减少。也就是说,在该情况下,沿垂直方向的参考像素的数目减少的效果大于沿水平方向的参考像素的数目减少的效果。因此,在该情况下,沿垂直方向排列的并且在生成沿垂直方向具有分数位置的像素时要使用的外部生成像素的数目的减少优先于沿水平方向排列的并且在生成沿水平方向具有分数位置的像素时要使用的外部生成像素的数目的减少。据此,可以降低存储带宽,并且可以防止预测图像精度的降低。
同样地,在帧存储器22中的读出单元是沿垂直方向连续排列的预定数目的像素的情况下,沿水平方向排列的并且在生成沿水平方向具有分数位置的像素时要使用的外部生成像素的数目的减少优先于沿垂直方向排列的并且在生成沿垂直方向具有分数位置的生成像素时要使用的外部生成像素的数目的减少。随后将参照图77至图82详细地描述这样的情况。
[帧间预测单元的第九示例结构]
图71是示出图3所示的帧间预测单元24的第九示例结构的框图。
在图71所示的部件中,与图64所示的部件相同的部件通过与图64中的附图标记相同的附图标记来表示。将不再重复已经作过的解释。
图71所示的帧间预测单元24的结构与图64所示的结构的主要不同之处在于:参考图像读取单元251、像素输出单元252被参考图像读取单元271、像素生成单元272所代替。图71所示的帧间预测单元24复制参考像素和子像素,并且生成用于每个预测像素的生成像素,使得在对应于外部预测像素的六个预测像素中的外部生成像素的数目变得小于在对应于内部预测像素的六个生成像素中的外部生成像素的数目。
具体地,如图64所示的参考图像读取单元251一样,基于包含在帧间预测模式信息中的预测方向和参考索引,图71所示的帧间预测单元24的参考图像读取单元271在帧存储器22所存储的图像中识别参考图像。基于运动矢量的整数值和包含在帧间预测模式信息中的块尺寸,参考图像读取单元271从帧存储器22读取在生成预测图像时要使用的参考像素,并暂时地存储这些参考像素。
针对每个预测像素,参考图像读取单元271从暂时存储的参考像素中读取在生成预测像素时要使用的参考像素。如此,参考图像读取单元271确定用于每个预测像素的参考像素,使得用于外部预测像素的复制后外部生成像素的数目变得小于用于内部预测像素的复制后外部生成像素的数目。然后参考图像读取单元271读取参考像素。在此,在生成预测像素时要使用的参考像素的数目等于5或6。参考图像读取单元271将读取的参考像素提供给像素生成单元272。
如像素输出单元252一样,像素生成单元272将由参考图像读取单元271提供的参考像素设置为生成像素。基于由运动预测单元25提供的运动矢量的分数值,像素生成单元272还从中间结果存储器50读取对应于生成目标预测像素的作为生成像素的子像素。如此,像素生成单元272确定用于每个预测像素的子像素,使得用于外部预测像素的复制后外部生成像素的数目变得小于用于内部预测像素的复制后外部生成像素的数目。然后像素生成单元272读取子像素。在此,在生成预测像素时要使用的子像素的数目等于5或6。
像素生成单元272还用作像素生成器。当生成像素的数目小于6时,像素生成单元272根据生成像素的数目与6之间的数目差来复制生成像素中的外部像素,并且生成包括复制像素和所述生成像素的作为复制后生成像素的六个像素。像素生成单元272将六个复制后生成像素提供给6抽头FIR滤波器45。
[示例复制后生成像素]
图72是示出在帧间预测块的尺寸是4×4像素的情况下,在生成沿水平方向排列、沿水平方向具有1/2像素位置并且沿垂直方向具有整数位置的相应的四个预测像素时要使用的示例复制后生成像素的示意图。
在图72中,分配有数字的每个方格表示预测像素,而未分配有数字也未分配有字母符号的每个方格表示参考像素。每个带点的方格表示在生成预测像素时要使用的参考像素中的、位于帧间预测块的尺寸范围内的参考像素,而阴影方格表示在帧间预测块的尺寸范围之外的参考像素。另外,分配有字母符号的每个方格表示通过复制参考像素而形成的像素。相同的情况适用于随后描述的图75至图76。
在图72所示的示例中,通过使用包括五个参考像素的六个复制后生成像素来生成每个预测像素,用于每个最外部预测像素的复制后外部生成像素的数目等于2,而用于每个最内部预测像素的复制后外部生成像素的数目等于3。
具体地,在生成目标是由分配有数字1的方格所表示的、并且位于沿水平方向排列、沿水平方向具有1/2像素位置并且沿垂直方向具有整数位置的四个预测像素中的最左侧的预测像素的情况下,则参考图像读取单元271将包含在预测像素的左侧的一个参考像素和在预测像素的右侧的四个参考像素的共计五个参考像素提供给像素生成单元272。像素生成单元272复制在五个参考像素中的最左侧的参考像素,以在最左侧的参考像素的左侧创建具有整数位置的一个像素。如此,像素生成单元272生成包括一个像素和由参考图像读取单元271提供的五个参考像素的六个复制后生成像素。
在生成目标是由分配有数字2的方格所表示的并且位于由分配有数字1的预测像素的内侧的次左侧预测像素的情况下,则生成与六个复制后生成像素相同的生成像素,所述六个复制后生成像素与由分配有数字1的方格所表示的预测像素对应。
另外,在生成目标是由分配有数字4的方格所表示的最右侧预测像素的情况下,则参考图像读取单元271将包括在预测像素的右侧的一个参考像素和在预测像素的左侧的四个参考像素的共计五个参考像素提供给像素生成单元272。像素生成单元272复制在五个参考像素中的最右侧的参考像素,以在最右侧的参考像素的右侧创建具有整数位置的一个像素。如此,像素生成单元272生成包括所述一个像素和由参考图像读取单元271供的五个参考像素的六个复制后生成像素。
在生成目标是由分配有数字3的方格所表示的次右侧预测像素并且位于由分配有数字4的预测像素的内侧的情况下,则生成与六个复制后生成像素相同的生成像素,所述六个复制后生成像素对应于由具有分配的数字4的方格所表示的预测像素。
如上所述,在图71所示的帧间预测单元24中,使得用于外部预测像素的外部生成像素的数目小于用于内部预测像素的外部生成像素的数目,并且参考像素被复制并且被用作生成像素。因此,沿水平方向排列的并且是帧间预测中所需的参考像素的数目等于5,其小于在图65所示的情况下的7。结果,可以进一步降低帧存储器22中的存储带宽的使用量。然而,在图65所示的情况下,使用在最外部生成像素的位置处的参考像素来生成预测像素,因此与在图72所示的情况相比较,可以生成具有更高精度的预测图像。
在图71所示的帧间预测单元24中,用于任何预测像素的生成像素的数目等于5。因此,与以下情形相比,生成具有更高精度的预测图像:在该情形下,对应于每个外部预测像素的生成像素的数目被设置为2以将沿水平方向排列的并且是帧间预测中所需的参考像素的数目减少至5(其与在图71所示的帧间预测单元24的情况下的数目相同)。
尽管在附图中未示出,但是在图71所示的示例中,在生成沿垂直方向排列、沿垂直方向具有1/2像素位置并且沿水平方向具有整数位置的四个预测像素中的每一个时要使用的六个复制后生成像素被确定为,使得用于每个最外部预测像素或最上方预测像素和最下方预测像素中的外部参考像素的数目等于1,而用于每个最内部预测像素的外部参考像素的数目等于2。
此外,在生成沿垂直方向排列、沿水平方向和垂直方向均具有1/2像素位置的四个预测像素中的每一个时要使用的参考像素,是在生成每个如下预测关联像素时要使用的参考像素:使得用于每个最外部预测像素的外部预测关联像素的数目等于1,而用于每个最内部预测像素的外部预测关联像素的数目等于2。因此,在生成沿水平方向和垂直方向均具有1/2像素位置的4×4像素的预测图像时要使用的参考像素的范围是5×5像素,其小于图65中的7×7像素范围。
[帧间预测操作的第九示例的描述]
图73和图74示出了用于详细解释图20的步骤S15的、要通过图71的帧间预测单元24来执行的帧间预测操作的流程图。
图73的步骤S440至步骤S443的过程与图66的步骤S400至步骤S403的过程相同,因此,在此不再重复解释这些步骤。如果存在多于一个的预测关联像素,则针对每个预测关联像素执行下述步骤S444至步骤S454的过程。
在步骤S444中,基于生成目标预测像素在参考图像中的位置,参考图像读取单元271从在步骤S442中所存储的参考像素中读取在生成预测关联像素时要使用的六个参考像素。参考图像读取单元271将读取的参考像素作为生成像素提供给像素生成单元272。
步骤S445至步骤S447的过程与图66的步骤S405至步骤S407的过程相同,因此在此不再重复解释这些步骤。
在步骤S448中,像素生成单元272确定由参考图像读取单元271提供的参考像素是否等于5。如果在步骤S448中确定参考像素的数目等于5,则操作进行至步骤S449。
在步骤S449中,像素生成单元272对由参考图像读取单元271提供的五个参考像素中的外部参考像素进行复制,以在外部参考像素的外侧创建具有整数位置的一个像素。如此,像素生成单元272生成包括所述一个像素和所述五个参考像素的六个生成像素。像素生成单元272将生成的六个生成像素提供给6抽头FIR滤波器45,然后操作进行至步骤S450。
如果在步骤S448中确定参考像素的数目不等于5,或者如果参考像素的数目等于6,则操作进行至步骤S450。
步骤S450至步骤S456的过程与图66和图67的步骤S408至步骤S414的过程相同,因此在此不再重复解释这些步骤。
在图74的步骤S457中,基于生成目标预测像素在参考图像中的位置,像素生成单元272从中间结果存储器50读取作为生成像素的子像素。
步骤S458至步骤S460的过程与图67的步骤S416至步骤S418的过程相同,因此在此不再重复解释这些步骤。
步骤S461至步骤S463的过程与图73的步骤S448至步骤S450的过程相同,除了对子像素而不是参考像素执行过程之外。因此,在此不再重复解释这些步骤。
步骤S464至步骤S465的过程与图67的步骤S420至步骤S421的过程相同,因此在此不再重复解释这些步骤。
在图71所示的帧间预测单元24中,在一个计算中要使用的生成像素的数目等于6。然而,生成像素的数目并不限于6。此外,在生成像素中的参考像素的数目并不限于5或6。另外,在图73和图74所示的帧间预测操作中,外部生成像素的数目是生成像素的总数目的一半或者是小于生成像素的总数目的一半的值。然而,外部生成像素的数目并不限于此。
[其他的示例复制后生成像素]
图75和图76是示出在复制后生成像素的数目等于8的情况下,图71所示的帧间预测单元24中的示例复制后生成像素的示意图。
图75示出了在帧间预测块的尺寸是4×4像素的情况下,在生成沿水平方向排列、沿水平方向具有1/2像素位置并且沿垂直方向具有整数位置的相应的四个预测像素时要使用的示例复制后生成像素。
在图75所示的示例中,通过使用包括七个参考像素的八个复制后生成像素生成每个预测像素,用于每个最外部预测像素的复制后外部生成像素的数目等于3,而用于每个最内部预测像素的复制后外部生成像素的数目等于4。
具体地,由位于沿水平方向排列、沿水平方向具有1/2像素位置并且沿垂直方向具有整数位置的四个预测像素中的最左侧的并且分配有数字1和数字4的方格所表示的每个预测像素,通过使用位于预测像素的外侧的三个复制后外部生成像素和位于预测像素的内侧的五个参考像素来生成。三个复制后外部生成像素包括在预测像素的外侧的两个相邻的参考像素和通过对这些参考像素中的最外部的参考像素进行复制而创建的并且位于最外部参考像素的外侧的整数位置上的一个像素。
由位于由分配有数字1和数字4的方格所表示的预测像素的内侧的并且分配有数字2和数字3的方格所表示的每个预测像素,通过使用位于预测像素外侧的四个复制后外部生成像素和位于预测像素内侧的四个参考像素来生成。四个复制后外部生成像素包括在预测像素的外侧的三个相邻的参考像素和通过对这些参考像素中的最外部参考像素进行复制而创建的并且位于最外部参考像素的外侧的整数位置的一个像素。
如上所述,在图71所示的帧间预测单元24中,使得用于外部预测像素的外部生成像素的数目小于用于内部预测像素的外部生成像素的数目,并且参考像素被复制并且被用作生成像素。因此,沿水平方向排列的并且是帧间预测中所需的参考像素的数目等于7,其小于在图68所示的情况下的9。结果,可以进一步降低帧存储器22中的存储带宽的使用量。然而,在图68所示的情况下,使用在最外部生成像素的位置处的参考像素来生成预测像素,因此与在图75所示的情况相比较,可以生成具有更高精度的预测图像。
如图75所示,当预测像素是子像素b时,在生成由分配有数字1和数字4的方格所表示的预测像素时要使用的、并且与作为运动矢量的分数值的值1/2以及作为外部生成像素的数目“3”相关联的滤波器系数,从相应的生成像素的外侧按顺序是例如-6、36、44、-16、9、-5、3以及-1。
当预测像素是子像素a时,在生成最外部预测像素时要使用的、并且与作为运动矢量的分数值的值1/4以及作为外部生成像素的数目“3”相关联的滤波器系数,从相应的生成像素的外侧按顺序是例如-5、54、22、-10、6、-4、2以及-1。当预测像素是子像素c时,在生成最外部预测像素时要使用的、并且与作为运动矢量的分数值的值3/4以及作为外部生成像素的数目“3”相关联的滤波器系数,从相应的生成像素的外侧按顺序是例如-3、16、60、-13、7、-4、2以及-1。
图76示出了在帧间预测块的尺寸是8×8像素的情况下,在生成沿水平方向排列、沿水平方向具有1/2像素位置并且沿垂直方向具有整数位置的相应的八个预测像素时要使用的示例复制后生成像素。
在图76所示的示例中,通过使用包括七个或八个参考像素的八个复制后生成像素生成每个预测像素,用于每个最外部预测像素的复制后外部生成像素的数目等于3,而用于每个最内部预测像素的复制后外部生成像素的数目等于4。
具体地,由位于沿水平方向排列、沿水平方向具有1/2像素位置并且沿垂直方向具有整数位置的八个预测像素中的最外部的并且分配有数字1和数字8的方格所表示的每个预测像素,通过使用位于预测像素的外侧的三个复制后外部生成像素和位于预测像素的内侧的五个参考像素来生成。三个复制后外部生成像素包括在预测像素的外侧的两个相邻的参考像素和通过对这些参考像素中的最外部的参考像素进行复制而创建的并且位于最外部参考像素的外侧的整数位置处的一个像素。
由位于由分配有数字1和数字8的方格所表示的预测像素的内侧的并且分配有数字2和数字7的方格所表示的每个次外部预测像素,通过使用位于预测像素的外侧的四个复制后外部生成像素和位于预测像素的内侧的四个参考像素来生成。四个复制后外部生成像素包括在预测像素的外侧的三个相邻的参考像素和通过对这些参考像素中的最外部参考像素进行复制而创建的并且位于最外部参考像素的外侧的整数位置处的一个像素。
由位于由分配有数字2和数字7的方格所表示的预测像素的内侧的并且分配有数字3至6的方格所表示的每个预测像素,通过使用包括在预测像素的每侧的各四个生成像素的共计八个生成像素来生成。
如上所述,在图71所示的帧间预测单元24中,使用于外部预测像素的外部生成像素的数目小于用于内部预测像素的外部生成像素的数目。因此,沿水平方向排列的并且是帧间预测中所需的参考像素的数目等于11,其小于在图69的A的情况下的13。结果,可以进一步降低帧存储器22中的存储带宽的使用量。然而,在图69的A的情况下,使用在最外部生成像素的位置处的参考像素来生成预测像素,因此与图76所示的情况相比较,可以生成具有更高精度的预测图像。
尽管在附图中未示出,但是在图75和图76所示的示例情况下,用于沿水平方向具有整数位置并且沿垂直方向具有分数位置的预测像素的参考像素被确定为,使得用于每个最外部预测像素的复制后外部生成像素的数目变得小于用于每个最内部预测像素的复制后外部生成像素的数目,如图75和图76所示的参考像素一样。
此外,在生成沿垂直方向排列的、沿水平方向和垂直方向均具有1/2像素位置的四个预测像素中的每一个时要使用的参考像素,是在生成包含在如下复制后生成像素中的预测关联像素时要使用的参考像素:用于每个最外部预测像素的复制后外部生成像素的数目小于用于每个最内部预测像素的复制后外部生成像素的数目,如图75和图76所示的参考像素一样。
尽管在附图中未示出,但是当编码装置10包括图64或图71的帧间预测单元24时,解码装置100的帧间预测单元111也具有与图64或图71的帧间预测单元24相同的结构。
在上述帧间预测操作中,在预测方向是双向预测的情况下,由比帧间预测目标图像更早显示的参考图像而生成的预测图像和由比帧间预测目标图像更晚显示的参考图像而生成的预测图像被逐个像素地进行平均,并且结果被输出至选择单元26。
[帧间预测单元的第十示例结构]
图77是示出图3所示的帧间预测单元24的第十示例结构的框图。
在图77所示的部件中,与图64所示的部件相同的部件通过与图64中的附图标记相同的附图标记来表示。将不再重复已经作过的解释。
图77所示的帧间预测单元24的结构与图64所示的结构的主要不同之处在于:参考图像读取单元251、像素输出单元252、6抽头FIR滤波器45、6抽头滤波器系数存储器253以及像素选择单元162被参考图像读取单元291、像素分类单元292、8抽头FIR滤波器293、4抽头FIR滤波器294、8抽头滤波器系数存储器295、4抽头滤波器系数存储器296以及像素选择单元297所代替。
在预测像素沿水平方向和垂直方向均具有分数位置的情况下,图77所示的帧间预测单元24确定在生成每个预测像素时要使用的生成像素,使得沿垂直方向排列的外部生成像素的数目变得小于沿水平方向排列的外部生成像素的数目。
具体地,如图64所示的参考图像读取单元251一样,基于包含在帧间预测模式信息中的参考索引和预测方向,帧间预测单元24的参考图像读取单元291在帧存储器22所存储的图像中识别出参考图像。如参考图像读取单元251一样,基于运动矢量的整数值和包含在帧间预测模式信息中的块尺寸,参考图像读取单元291从帧存储器22中读取在生成预测图像时要使用的参考像素,并暂时地存储这些参考像素。
参考图像读取单元291用作像素读取单元,并且针对每个预测像素,从暂时存储的参考像素中读取在生成预测像素时要使用的八个参考像素。如此,参考图像读取单元291确定用于每个预测像素的八个参考像素,使得在用于外部预测像素的参考像素中的、位于外部预测像素的外侧的参考像素的数目变得小于在用于内部预测像素的参考像素中的、位于内部预测像素的外侧的参考像素的数目。然后参考图像读取单元291读取八个参考像素。然后参考图像读取单元291将读取的八个参考像素提供给像素分类单元292。
如图64所示的像素输出单元252一样,像素分类单元292将由参考图像读取单元291提供的参考像素设置为生成像素。基于由运动预测单元25提供的运动矢量的分数值,像素分类单元292还从中间结果存储器50读取对应于生成目标预测像素的作为生成像素的四个子像素。如此,像素分类单元292确定用于每个预测像素的作为生成像素的四个子像素,使得要作为用于外部预测像素的外部生成像素的子像素的数目变得小于要作为用于内部预测像素的外部生成像素的子像素的数目。然后像素分类单元292读取四个子像素。像素分类单元292将八个生成像素提供给8抽头FIR滤波器293,并将四个生成像素提供给4抽头FIR滤波器294。
8抽头FIR滤波器293用作算术运算单元,并通过使用由像素分类单元292提供的八个生成像素和由8抽头滤波器系数存储器295提供的滤波器系数来执行计算。8抽头FIR滤波器293将由此生成的一个像素提供给像素选择单元297。
4抽头FIR滤波器294用作算术运算单元,并通过使用由像素分类单元292提供的四个生成像素和由4抽头滤波器系数存储器296提供的滤波器系数来执行计算。4抽头FIR滤波器294将由此生成的一个像素提供给像素选择单元297。
8抽头滤波器系数存储器295存储与运动矢量的分数值和外部生成像素的数目相关联的8抽头FIR滤波器293的滤波器系数。基于由运动预测单元25提供的运动矢量的分数值和生成目标预测像素在预测图像中的位置,8抽头滤波器系数存储器295将所存储的并且与所述分数值以及对应于所述位置的外部生成像素的数目相关联的滤波器系数提供给8抽头FIR滤波器293。
4抽头滤波器系数存储器296存储与运动矢量的分数值和外部生成像素的数目相关联的4抽头FIR滤波器294的滤波器系数。基于由运动预测单元25提供的运动矢量的分数值和生成目标预测像素在预测图像中的位置,4抽头滤波器系数存储器296将所存储的并且与所述分数值以及对应于所述位置的外部生成像素的数目相关联的滤波器系数提供给4抽头FIR滤波器294。
如图64所示像素选择单元162一样,基于由运动预测单元25提供的运动矢量的分数值,像素选择单元297将作为由8抽头FIR滤波器293或4抽头FIR滤波器294提供的像素的预测像素输出至图3所示的选择单元26,或将预测像素提供给中间结果存储器50。
[示例参考像素]
图78是示出在沿水平方向排列的外部生成像素的数目与垂直方向排列的外部生成像素的数目相同的情况下的示例参考像素的示意图。
在图78所示的示例中,帧间预测块的尺寸是4×4像素,并且预测像素是子像素f,子像素f沿水平方向具有1/2像素位置并且沿垂直方向具有1/2像素位置。相同的情况适用于随后描述的图79。
在图78中,分配有“f”的方格表示作为预测像素的子像素f,分配有“d”的方格表示子像素d。不具有字母符号的方格表示参考像素。另外,每个带点的方格表示在生成预测像素时要使用的参考像素中的、位于帧间预测块的尺寸范围内的参考像素,每个阴影方格表示在帧间预测块的尺寸范围之外的参考像素。相同的情况适用于随后描述的图79。
另外,在图78所示的示例中,用于每个最外部预测像素的外部生成像素的数目等于3,而用于每个最内部预测像素的外部生成像素的数目等于4。用于每个预测像素的生成像素的数目等于8。
首先,在该情况下,如图78所示通过使用沿垂直方向排列的八个参考像素来生成对应于4×4预测像素的作为预测关联像素的9×4子像素d。在这点上,用于每个外部子像素d的外部生成像素的数目等于3,用于每个内部子像素d的外部生成像素的数目等于4。因此,在生成9×4子像素d时要使用的参考像素的数目等于81(=9×9)。
其次,通过使用在作为预测关联像素的9×4子像素d中的、沿水平方向排列的八个子像素d来生成作为4×4预测像素的子像素f。具体地,通过使用沿水平方向排列的作为外部生成像素的三个子像素d和位于子像素f的内侧并沿水平方向排列的作为生成像素的五个子像素d来生成每个外部子像素f。另一方面,通过使用沿水平方向排列的作为外部生成像素的四个子像素d和位于子像素f的内侧并沿水平方向排列的作为生成像素的四个子像素d来生成每个内部子像素f。
因此,在图78所示的示例情况下,当预测方向是“L0预测”或“L1预测”时,需要9×9参考像素来生成4×4子像素f。此外,需要执行36(=9×4)次滤波以生成子像素d,需要执行16(=4×4)次滤波以通过使用子像素d来生成子像素f。
当预测方向是“双预测”时,需要是9×9像素两倍的参考像素来生成作为预测像素的4×4子像素f。此外,需要执行72(=9×4×2)次滤波以生成子像素d,需要执行32(=4×4×2)次滤波以生成子像素f。
鉴于此,图77所示的帧间预测单元24读取参考像素,使得沿垂直方向排列的外部生成像素的数目变得小于沿水平方向排列的外部生成像素的数目。结果,降低了参考像素的数目和执行滤波的次数。
图79是示出图77所示的帧间预测单元24中的示例参考像素的示意图。
在图79所示的示例中,要用于最外部预测像素的并且沿水平方向排列的外部生成像素的数目等于3,要用于最内部预测像素的并且沿水平方向排列的外部生成像素的数目等于4。另一方面,要用于最外部预测像素的并且沿垂直方向排列的外部生成像素的数目等于1,要用于最内部预测像素的并沿垂直方向排列的外部生成像素的数目等于2。
如图79所示,首先,帧间预测单元24通过使用用于每个子像素b的沿水平方向排列的八个参考像素来生成预测关联像素,该预测关联像素为对应于4×4预测像素的4×5子像素b。在这点上,用于每个外部子像素b的外部生成像素的数目等于3,用于每个内部子像素b的外部生成像素的数目等于4。因此,在生成4×5子像素b时要使用的参考像素的数目等于45(=9×5)。
其次,帧间预测单元24通过使用在用作预测关联像素的4×5子像素b中的、沿垂直方向排列的四个子像素b来生成作为4×4预测像素的每个子像素f。具体地,帧间预测单元24通过使用作为外部生成像素的一个子像素b和位于子像素f的内侧并且沿垂直方向排列的作为生成像素的三个子像素b来生成外部子像素f。帧间预测单元24还通过使用沿垂直方向排列的作为外部生成像素的两个子像素b和位于子像素f的内侧并且沿垂直方向排列的作为生成像素的两个子像素b来生成内部子像素f。
因此,在图79所示的示例中,当预测方向是“L0预测”或“L1预测”时,用于生成作为预测像素的4×4子像素f所需的参考像素的数目等于9×5,并且与图78所示的情况相比较,降低了沿垂直方向排列的参考像素的数目。此外,生成子像素b所需执行的滤波次数等于20(=4×5),通过使用子像素b来生成子像素f所需执行的滤波次数等于16(=4×4)。因此,可以使生成预测像素所需执行的滤波次数小于在图78所示的情况下的滤波次数。
当预测方向是“双预测”时,用于生成作为预测像素的4×4子像素f所需的参考像素的数目被减少至9×5的两倍。此外,生成子像素b所需执行的滤波次数等于40(=4×5×2),通过使用子像素b来生成子像素f所需执行的滤波次数等于32(=4×4×2)。因此,与在预测方向是“L0预测”或“L1预测”的情况下一样,可以使生成预测像素所需执行的滤波次数小于在图78所示的情况下的滤波次数。
[帧存储器中的像素值的示例布局]
图80是示出帧存储器22中的一个帧的像素值的示例布局的图。
在图80中,每个方格表示像素值。
帧存储器22由具有32位总线宽度的DRAM(动态随机存取存储器)形成。如图80所示,帧存储器22将地址分配给各组沿水平方向排列的四个像素,使得被分配到沿水平方向排列的像素组的地址是连续地址。帧存储器22存储与分配给像素组的地址相关联的各组像素的32位像素值。因此,在对帧存储器22的单次访问中读取对应于单个地址的一组像素的像素值。
与沿水平方向排列的参考像素的数目减少的情况相比较,通过减少在生成预测像素时要使用的并且沿垂直方向排列的参考像素的数目,可以有效减少访问次数。也就是说,帧存储器22中的存取单元是一组沿水平方向排列的四个像素。因此,在生成预测像素时要使用的并且沿水平方向排列的参考像素的数目不等于访问次数,并且存在如下可能:通过减少沿水平方向排列的参考像素的数目,不会改变访问次数。另一方面,在生成预测像素时要使用的并且沿垂直方向排列的参考像素的数目等于访问次数,因此可以通过减少沿垂直方向排列的参考像素的数目来有效减少访问次数。
在存在对帧存储器22的资料组存取的情况下,可以以较小的存储带宽来有效地读取对应于连续地址的像素值。因此,可以在资料组存取中以较小的存储带宽来有效地读取由矩形311围绕的并且对应于两个连续地址的八个像素值,或沿水平方向排列的八个像素值。然而,不能在资料组存取中以较小的存储带宽来有效地读取由矩形312围绕的并且对应于两个非连续地址的八个像素值,或沿垂直方向排列的八个像素值。
鉴于上述情况,当预测像素沿水平方向和垂直方向均具有分数位置时,图77所示的帧间预测单元24通过将沿垂直方向排列的外部生成像素的数目减少至比沿水平方向排列的外部生成像素的数目更小的数目,来减少在生成预测像素时要使用的并且沿垂直方向排列的参考像素的数目。结果,可以有效地减少对帧存储器22的访问次数。此外,可以减少在资料组存取期间的存储带宽。
另外,由于没有减少在生成预测像素时要使用的并且沿水平方向排列的参考像素的数目,可以防止预测图像精度和编码效率降低。
[帧间预测操作的第十示例的描述]
图81和图82示出了用于详细解释图20的步骤S15的、要通过图77的帧间预测单元24来执行的帧间预测操作的流程图。
图81的步骤S480至步骤S483的过程与图66的步骤S400至步骤S403的过程相同,因此,在此不再重复解释这些步骤。如果存在多于一个的预测关联像素,则针对每个预测关联像素执行下述步骤S484至步骤S492的过程。
在步骤S484中,基于生成目标预测像素在参考图像中的位置,参考图像读取单元291从在步骤S482所存储的参考像素中读取在生成预测关联像素时要使用的八个参考像素。当预测像素沿水平方向和垂直方向均具有分数位置时,预测关联像素是沿水平方向具有分数位置的像素。然后参考图像读取单元291将读取的八个参考像素作为生成像素提供给像素分类单元292。
在步骤S485中,8抽头滤波器系数存储器295确定预测关联像素在预测图像中的位置是否为在外侧。如果在步骤S485中确定预测关联像素在预测图像中的位置为在外侧,则8抽头滤波器系数存储器295将外部生成像素的数目设置为3,其小于4或生成像素的总数目8的一半。然后操作进行至步骤S486。
在步骤S486中,8抽头滤波器系数存储器295读取所存储的并且与运动矢量的分数值和作为外部生成像素的数目“3”相关联的滤波器系数,并且将滤波器系数提供给8抽头FIR滤波器293。然后操作进行至步骤S488。
另一方面,如果在步骤S485中确定预测关联像素在预测图像中的位置为不在外侧,则8抽头滤波器系数存储器295将外部生成像素的数目设置为4或生成像素的总数目8的一半。然后操作进行至步骤S487。
在步骤S487中,8抽头滤波器系数存储器295读取所存储的并且与运动矢量的分数值和作为外部生成像素的数目“4”相关联的滤波器系数,并将滤波器系数提供给8抽头FIR滤波器293。然后操作进行至步骤S488。
在步骤S488中,8抽头FIR滤波器293通过使用由像素分类单元292提供的作为生成像素的八个参考像素和由8抽头滤波器系数存储器295提供的滤波器系数来执行计算。8抽头FIR滤波器293将由此生成的一个预测关联像素提供给像素选择单元297。
步骤S489至步骤S494的过程与图66和图67的步骤S409至步骤S414的过程相同,因此,在此不再重复解释这些步骤。
在步骤S495中,基于生成目标预测像素在参考图像中的位置,像素分类单元292从中间结果存储器50读取作为生成像素的四个子像素。
在步骤S496中,4抽头滤波器系数存储器296确定生成目标预测像素在预测图像中的位置是否为在外侧。如果在步骤S496中确定生成目标预测像素在预测图像中的位置为在外侧,则4抽头滤波器系数存储器296将外部生成像素的数目设置为1,其小于2或生成像素的总数目4的一半。然后操作进行至步骤S497。
在步骤S497中,4抽头滤波器系数存储器296读取所存储的并且与运动矢量的垂直分量的分数值和作为外部生成像素的数目“1”相关联的滤波器系数,并将滤波器系数提供给4抽头FIR滤波器294。然后操作进行至步骤S499。
另一方面,如果在步骤S496中确定生成目标预测像素在预测图像中的位置为不在外侧,则4抽头滤波器系数存储器296将外部生成像素的数目设置为2或生成像素的总数目4的一半。然后操作进行至步骤S498。
在步骤S498中,4抽头滤波器系数存储器296读取所存储的并且与运动矢量的垂直分量的分数值和作为外部生成像素的数目“2”相关联的滤波器系数,并将滤波器系数提供给4抽头FIR滤波器294。然后操作进行至步骤S499。
在步骤S499中,4抽头FIR滤波器294通过使用由像素分类单元292提供的作为生成像素的四个子像素和由4抽头滤波器系数存储器296提供的滤波器系数来执行计算。4抽头FIR滤波器294将由此生成的一个子像素提供给像素选择单元297。
步骤S500和步骤S501的过程与图67的步骤S420和步骤S421的过程相同,因此,在此不再重复解释这些步骤。
如上所述,图77所示的帧间预测单元24通过将沿垂直方向排列的外部生成像素的数目减小至比沿水平方向排列的外部生成像素的数目更小的数目,来减少在生成预测像素时要使用的并且沿垂直方向排列的参考像素的数目。结果,可以减少对帧存储器22的访问次数,并且可以减少在资料组存取期间的存储带宽。
此外,当预测像素沿水平方向和垂直方向具有分数位置时,图77所示的帧间预测单元24对作为沿水平方向具有分数位置的像素的预测关联像素进行设置。也就是说,在通过使用参考像素生成沿水平方向具有与预测像素相同位置的预测关联像素之后,图77所示的帧间预测单元24通过使用预测关联像素来生成预测像素。因此,可以使执行滤波的次数小于在沿垂直方向具有分数位置的预测关联像素的情况下执行滤波的次数。
例如在预测关联像素是沿垂直方向具有分数位置的像素时,在与图79所示示例的条件相同的条件下,预测关联像素的数目等于9×4,并且生成预测关联像素所需执行滤波的次数等于36(=9×4)。另一方面,在预测关联像素是沿水平方向具有分数位置的像素时,如图79所示,预测关联像素的数目等于4×5,并且生成预测关联像素所需执行滤波的次数等于20(=4×5),其小于36。
在图77所示的帧间预测单元24中,当每个预测像素沿水平方向和垂直方向均具有分数位置时,可以使沿垂直方向排列的外部生成像素的数目小于沿水平方向排列的外部生成像素的数目。然而,当每个预测像素沿水平方向具有整数位置而沿垂直方向具有分数位置时,也可以使沿垂直方向排列的外部生成像素的数目小于沿垂直方向排列的外部生成像素的数目。
在图77所示的帧间预测单元24中,可以使沿垂直方向排列的外部生成像素的数目小于沿水平方向排列的外部生成像素的数目。然而,在每个单独的地址与帧存储器22中的沿垂直方向排列的像素相关联的情况下,可以使沿水平方向排列的外部生成像素的数目小于沿垂直方向排列的外部生成像素的数目。
在图77所示的帧间预测单元24中,可以使得针对所有宏块,沿垂直方向排列的外部生成像素的数目小于沿水平方向排列的外部生成像素的数目。然而,这可能仅应用于B片(B-slice)宏块。
在该情况下,在参考图像帧的数目等于2的每个B片宏块中,可以减少在生成预测像素时要使用的并且沿垂直方向排列的参考像素的数目,也可以增加参考像素的数目。结果,可以减少对帧存储器22的访问次数,并且可以降低在资料组存取期间的存储带宽。同时,在参考图像帧的数目等于1的非B片宏块中,在生成预测像素时要使用的并且沿垂直方向排列的参考像素的数目没有减少。因此,可以防止预测图像精度降低。另外,沿垂直方向排列的外部生成像素的数目逐片地发生变化。因此,与基于预测方向等进行的这样的变化的情况相比,变化控制更容易。
可替代地,仅当预测方向为“双预测”时,可以使沿垂直方向排列的外部生成像素的数目小于沿水平方向排列的外部生成像素的数目。在该情况下,在预测方向为“双预测”并且参考图像帧的数目等于2的每个宏块中,可以减少在生成预测像素时要使用的并且沿垂直方向排列的参考像素的数目。结果,可以减少对帧存储器22的访问次数,并且可以减少在资料组存取期间的存储带宽。同时,在预测方向不是“双预测”并且参考图像帧的数目等于1的宏块中,在生成预测像素时要使用的并沿垂直方向排列的参考像素的数目没有减少。因此,可以防止预测图像精度的降低。同样地,仅当帧间预测块的尺寸大于预定尺寸时,可以使沿垂直方向排列的外部生成像素的数目小于沿水平方向排列的外部生成像素的数目。
尽管借助于图77所示的帧间预测单元24来使沿垂直方向排列的生成像素的数目小于沿水平方向排列的生成像素的数目,但是沿水平方向排列的生成像素的数目可以与沿垂直方向排列的生成像素的数目可以相等。
尽管在附图中未示出,在图4、26、30、44、48、52、61和71中的任一个的帧间预测单元24中,可以使沿垂直方向排列的外部生成像素的数目小于沿水平方向排列的外部生成像素的数目,如在图77所示的帧间预测单元24中一样。在该情况下,在图4、26、30、44、48、52和61中的任一个的帧间预测单元24中,沿垂直方向排列的生成像素的数目变得小于沿水平方向排列的生成像素的数目。
[帧间预测单元的第十一示例结构]
图83是示出图3所示的帧间预测单元24的第十一示例结构的框图。
图83所示的帧间预测单元24包括颜色帧间预测单元321和亮度帧间预测单元322。基于运动矢量的分数值以及包含在帧间预测模式信息中的块尺寸和预测方向,图83所示的帧间预测单元24确定在生成相应预测预测像素的颜色分量和亮度分量时要使用的生成像素的数目。
具体地,基于由帧存储器22提供的参考图像以及由运动预测单元25提供的运动矢量和帧间预测模式信息,图83所示的帧间预测单元24的颜色帧间预测单元321生成并输出相应预测像素的颜色分量。随后将参照图84详细描述颜色帧间预测单元321。
基于由帧存储器22提供的参考图像以及由运动预测单元25提供的运动矢量和帧间预测模式信息,亮度帧间预测单元322生成并输出相应预测像素的亮度分量。随后将参照图88详细描述亮度帧间预测单元322。
[颜色帧间预测单元的示例结构]
图84是示出图83所示的颜色帧间预测单元321的示例结构的框图。
在图84所示的的颜色帧间预测单元321的部件中,与图77所示的部件相同部件通过与图77中的附图标记相同的附图标记来表示。将不再重复已经作过的解释。
图84所示的颜色帧间预测单元321的结构与图77所示的结构的主要不同之处在于:参考图像读取单元291和像素分类单元292被参考图像读取单元331和像素分类单元332所代替,并且新添加了LUT(Look UpTabl,查找表)333。
如图77所示的参考图像读取单元291一样,基于包含在帧间预测模式信息中的预测方向和参考索引,图84所示的帧间预测单元24的参考图像读取单元331在帧存储器22所存储的图像中识别出参考像素。根据运动矢量的分数值以及包含在帧间预测模式信息中的块尺寸和预测方向,参考图像读取单元331还从LUT333读取沿水平方向和垂直方向的生成像素的数目。
基于沿水平方向和垂直方向的生成像素的数目、运动矢量的整数值以及包含在帧间预测模式信息中的块尺寸,参考图像读取单元331从帧存储器22读取在生成预测图像的颜色分量时要使用的参考像素的颜色分量。然后参考图像读取单元331暂时地存储所读取的参考像素的颜色分量。
基于沿水平方向和垂直方向的生成像素的数目,针对每个预测像素,参考图像读取单元331从暂时存储的参考像素的颜色分量中读取在生成预测图像的颜色分量时要使用的作为生成像素的四个或八个参考像素的颜色分量。参考图像读取单元331将所读取的四个或八个参考像素的颜色分量提供给像素分类单元332。
像素生成单元332将由参考图像读取单元331提供的参考像素的颜色分量设置为生成像素的颜色分量。根据运动矢量的分数值以及包含在由运动预测单元25提供的帧间预测模式信息中的块尺寸和预测方向,像素生成单元332还从LUT333读取沿垂直方向的生成像素的数目。
基于沿垂直方向的生成像素的数目,像素生成单元332从中间结果存储器50读取生成像素的颜色分量,即四个或八个子像素的颜色分量,四个或八个是在生成生成目标预测像素的颜色分量时要使用的并且沿垂直方向排列的生成像素的数目。像素分类单元332还将八个生成像素的颜色分量提供给8抽头FIR滤波器293,并将四个生成像素的颜色分量提供给4抽头FIR滤波器294。
LUT333存储与帧间预测块的尺寸、预测方向以及与运动矢量的分数值对应的作为预测像素的子像素的类型相关联的生成像素的数目。
[生成像素的数目的描述]
图85是示出生成像素的数目与参考像素的数目之间的关系的曲线图。
在图85中,横轴表示预测方向、帧间预测块尺寸和作为预测像素的子像素的类型的组合。具体地,在图85中沿横轴书写的“a”至“o”表示:子像素的类型是子像素a至子像素o。在“a”至“o”下方的数字表示沿水平方向的帧间预测块的尺寸(像素的数目),在上述数字下方的数字表示沿垂直方向的帧间预测块的尺寸(像素的数目)。在这些数字下方的“单向”表示预测方向是“L0预测”或“L1预测”,而“双向”表示预测方向是双向预测。
在图85中,纵轴表示由预测像素的数目正规化后的参考像素的数目(以下称为正规化的参考像素数目)。也就是说,由纵轴表示的每个值是通过将参考像素的数目除以预测像素的数目而获得的值。在图85中,每个菱形表示在沿水平方向和垂直方向二者的生成像素的数目均等于8的情况下正规化的参考像素数目,每个方形表示在沿水平方向的生成像素的数目等于8而沿垂直方向的生成像素的数目等于4的情况下正规化的参考像素数目。另外,每个三角形表示在沿水平方向的生成像素的数目等于4而沿垂直方向的生成像素的数目等于8的情况下正规化的参考像素数目,并且每个十字符号表示沿水平方向和垂直方向二者的生成像素的数目均等于4的情况下正规化的参考像素数目。
如图85所示,当预测方向是双向预测、帧间预测块的尺寸是4×4像素以及要作为预测像素的子像素的类型是子像素e、f、g、i、j、k、m、n或o时,获得最大的正规化参考像素数目。
在LUT333中,使得最大的正规化参考像素数目等于或小于预定值时沿水平方向和垂直方向的生成像素的数目被存储,并且与预测方向、帧间预测块尺寸以及要作为预测像素的子像素的类型相关联。
图86和图87是示出存储在LUT333中的沿水平方向和垂直方向的生成像素的数目的示例的示意图。
在图86和图87所示的表中,项目“预测方向”、“块沿水平方向的尺寸”、“块沿垂直方向的尺寸”和“子像素”表示分别与预测方向、沿水平方向的帧间预测块的尺寸、沿垂直方向的帧间预测块的尺寸以及要作为预测像素的子像素的类型相关的信息。此外,项目“沿水平方向的生成像素的数目”和“沿垂直方向的生成像素的数目”表示关于沿水平方向的生成像素的数目和沿垂直方向的生成像素的数目的信息,该信息与项目“预测方向”、“沿水平方向的块的尺寸”、“沿垂直方向的块的尺寸”和“子像素”中的信息相关联。相同的情况适用于随后描述的图89和图90。
更具体地,在项目“沿水平方向的生成像素的数目”中的项目“最大值6.1”的信息表示使正规化参考像素数目等于或小于6.1的沿水平方向的生成像素的数目。在除了预测方向是双向预测并且帧间预测块的尺寸小于8×8像素的情况之外的情况下,在项目“沿水平方向的生成像素的数目”中的项目“最大值5.2”的信息和项目“最大值3.8”的信息分别表示使正规化参考像素数目等于或小于5.2和3.8的生成像素的数目。在项目“沿垂直方向的生成像素的数目”中的项目“最大值6.1”、项目“最大值5.2”和项目“最大值3.8”的信息与在项目“沿水平方向的生成像素的数目”中的信息相同。
在图86和图87所示的表中,每个星号表示沿水平方向或垂直方向不存在相应生成像素,或沿水平方向或垂直方向没有执行相应滤波。相同的情况适用于随后描述的图89和图90。
LUT333存储例如包含在项目“沿水平方向的生成像素的数目”和“沿垂直方向的生成像素的数目”中的项目“最大值6.1”、“最大值5.2”和“最大值3.8”中的信息,所述信息与包含在项目“预测方向”、“块沿水平方向的尺寸”、“块沿垂直方向的尺寸”和“子像素”中的信息相关联。
在图86和图87所示的示例中,沿水平方向排列的像素与帧存储器22中的单个地址相关联。在要作为预测像素的子像素的类型是子像素e、f、g、i、j、k、m、n或o并且正规化参考像素数目是常数的情况下,存储使沿垂直方向的生成像素的数目小于沿水平方向的生成像素的数目的像素,这是因为沿垂直方向的生成像素的数目的减少具有更显著的效果。同样的情况适用于随后描述的图89和图90。
[亮度帧间预测单元的示例结构]
图88是示出了图83所示的亮度帧间预测单元322的示例结构的框图。
在图88所示的亮度帧间预测单元322的部件中,与图4所示的部件相同的部件通过与图4中的附图标记相同的附图标记来表示。将不再重复已经作过的解释。
图88所示的亮度帧间预测单元322的结构与图4所示的结构的主要不同之处在于:参考图像读取单元41、像素分类单元42和像素选择单元49被参考图像读取单元351、像素分类单元352和像素选择单元353所代替,未设置6抽头FIR滤波器45、6抽头滤波器系数存储器48,并且新添加了LUT(查找表)354。
如图4所示的参考图像读取单元41一样,基于包含在帧间预测模式信息中的预测方向和参考索引,图88所示的帧间预测单元24的参考图像读取单元351在帧存储器22所存储的图像中识别出参考像素。根据运动矢量的分数值以及包含在帧间预测模式信息中的块尺寸和预测方向,参考图像读取单元351还从LUT354读取沿水平方向和垂直方向的生成像素的数目。
基于沿水平方向和垂直方向的生成像素的数目、运动矢量的整数值以及包含在帧间预测模式信息中的块尺寸,参考图像读取单元351从帧存储器22读取在生成预测图像的亮度分量时要使用的参考像素的亮度分量。然后参考图像读取单元351暂时地存储所读取的参考像素的亮度分量。
基于沿水平方向或垂直方向的生成像素的数目,针对每个预测像素,参考图像读取单元351从暂时存储的参考像素的亮度分量中读取在生成预测像素的亮度分量时要使用的作为生成像素的两个或四个参考像素的亮度分量。参考图像读取单元351将所读取的两个或四个参考像素的亮度分量提供给像素分类单元352。
像素生成单元352将由参考图像读取单元351提供的参考像素的亮度分量设置为生成像素的亮度分量。根据运动矢量的分数值以及包含在由运动预测单元25提供的帧间预测模式信息中的块尺寸和预测方向,像素分类单元352还从LUT354读取沿垂直方向的生成像素的数目。
基于沿垂直方向的生成像素的数目,像素分类单元352从中间结果存储器50读取生成像素的亮度分量,即两个或四个子像素的亮度分量,两个或四个是在生成生成目标预测像素的亮度分量时要使用的并且沿垂直方向排列的生成像素的数目。像素生成单元352还将两个生成像素的亮度分量提供给2抽头FIR滤波器43,并将四个生成像素的亮度分量提供给4抽头FIR滤波器44。
基于由运动预测单元25提供的运动矢量的分数值,像素选择单元353将预测像素的亮度分量,即由2抽头FIR滤波器43或4抽头FIR滤波器44提供的像素的亮度分量,输出至图3所示的选择单元26,或将预测像素的亮度分量提供给中间结果存储器50。
具体地,当运动矢量的水平分量和垂直分量中的至少一个的分数值为0时,像素选择单元353将由2抽头FIR滤波器43或4抽头FIR滤波器44提供的像素的亮度分量作为预测像素的亮度分量提供给选择单元26。另一方面,当运动矢量的水平分量和垂直分量二者的分数值均不为0时,像素选择单元253将子像素的亮度分量,即由2抽头FIR滤波器43或4抽头FIR滤波器44提供的像素的亮度分量,提供给中间结果存储器50,然后中间结果存储器50存储所提供的像素的亮度分量。结果,2抽头FIR滤波器43和4抽头FIR滤波器44使用存储在中间结果存储器50中的子像素的亮度分量来再次执行计算。然后像素选择单元353将由此生成的子像素的亮度分量作为预测像素的亮度分量输出至选择单元26。在预测方向是双向预测的情况下,由比帧间预测目标图像更早显示的参考像素所生成的预测像素的亮度分量和由比帧间预测目标图像更晚显示的参考像素所生成的预测像素的亮度分量被平均,并且结果被输出至选择单元26。
LUT354存储与帧间预测块的尺寸、预测方向以及对应于运动矢量的分数值的、作为预测像素的子像素的类型相关联的生成像素的数目。
[存储在LUT354中的生成像素的数目的示例]
图89和图90是示出存储在图88所示的LUT354中的沿水平方向和垂直方向的生成像素的数目的示例的示意图。
在图89和图90所示的表中,在项目“沿水平方向的生成像素的数目”中的项目“最大值4.5”的信息表示使正规化参考像素数目等于或小于4.5时沿水平方向的生成像素的数目。在除了预测方向是双向预测并且帧间预测块的尺寸小于8×8像素的情况之外的情况下,在项目“沿水平方向的生成像素的数目”中的项目“最大值3.1”的信息表示使正规化参考像素数目等于或小于3.1的生成像素的数目。在项目“沿垂直方向的生成像素的数目”中的项目“最大值4.5”和项目“最大值3.1”的信息与在项目“沿水平方向的生成像素的数目”中的信息相同。
LUT354存储例如包含在项目“沿水平方向的生成像素的数目”和“沿垂直方向的生成像素的数目”中的项目“最大值4.5”或“最大值3.1”中的信息,所述信息与包含在项目“预测方向”、“沿水平方向的块的尺寸”、“沿垂直方向的块的尺寸”和“子像素”中的信息相关联。
[帧间预测操作的第十一示例的描述]
图91和图92示出了用于详细解释在通过图83的帧间预测单元24执行的图20的步骤S15中的帧间预测操作中由颜色帧间预测单元321执行的颜色帧间预测操作的流程图。
图91的步骤S521至步骤S522的过程与图81的步骤S480至步骤S481的过程相同,因此不再重复解释这些步骤。
在步骤S523中,根据运动矢量的分数值、步骤S522中所确定的预测图像的尺寸以及包含在帧间预测模式信息中的预测方向,在图84所示的帧间预测单元321中的参考图像读取单元331从LUT333读取生成像素的数目。
在步骤S524中,基于沿水平方向和垂直方向的生成像素的数目、运动矢量的整数值以及预测图像的尺寸,参考图像读取单元331从帧存储器22读取在生成预测图像的颜色分量时要使用的参考像素的颜色分量。然后参考图像读取单元331暂时地存储所读取的参考像素的颜色分量。
在步骤S525中,参考图像读取单元331确定在形成预测图像的预测像素中的生成目标预测像素。所述预测像素是在步骤S525的过程中还未被确定为生成目标预测像素的预测像素。
在步骤S526中,基于生成目标预测像素在参考图像中的位置,参考图像读取单元331从暂时存储的参考像素的颜色分量中读取在生成预测关联像素的颜色分量时要使用的作为生成像素的四个或八个参考像素的颜色分量。参考图像读取单元331将所读取的四个或八个参考像素的颜色分量提供给像素分类单元332。
在步骤S527中,像素分类单元332确定与由参考图像读取单元331提供的颜色分量对应的参考像素的数目是否等于8。如果在步骤S527中确定参考像素的数目等于8,则像素分类单元332将八个参考像素的颜色分量提供给8抽头FIR滤波器293,然后操作进行至步骤S528。
在步骤S528中,8抽头FIR滤波器293通过使用由像素分类单元332提供的作为生成像素的八个参考像素的颜色分量和由8抽头滤波器系数存储器295提供的滤波器系数来执行计算。8抽头FIR滤波器293将由此生成的一个预测关联像素提供给像素选择单元297。
如果在步骤S527中确定参考像素的数目不等于8,或者如果参考像素的数目等于4,则像素分类单元332将四个参考像素的颜色分量提供给4抽头FIR滤波器294,然后操作进行至步骤S529。
在步骤S529中,4抽头FIR滤波器294通过使用由像素分类单元332提供的作为生成像素的四个参考像素的颜色分量和由4抽头滤波器系数存储器296提供的滤波器系数来执行计算。4抽头FIR滤波器296将由此生成的一个预测关联像素提供给像素选择单元297。
在步骤S530中,像素选择单元297确定由运动预测单元25提供的运动矢量的水平分量和垂直分量二者的分数值是否均为非0。如果在步骤S530中确定运动矢量的水平分量和垂直分量中的至少一个的分数值为0,则操作进行至步骤S531。
在步骤S531中,像素选择单元297将由4抽头FIR滤波器294或8抽头FIR滤波器293提供的、作为预测像素的颜色分量的预测关联像素的颜色分量输出至图3所示的选择单元26。在这点上,如果预测方向是双向预测,则由比帧间预测目标图像更早显示的参考图像所生成的预测像素的颜色分量和由比帧间预测目标图像更晚显示的参考图像所生成的预测像素的颜色分量被平均,并且结果被输出至选择单元26。
在步骤S532中,参考图像读取单元331确定是否已经生成所有预测像素的颜色分量。如果在步骤S532中确定并非所有预测像素的颜色分量被生成,则操作返回至步骤S525,并且重复步骤S525至步骤S532的过程直至生成所有的预测像素的颜色分量为止。
如果在步骤S532中确定已经生成所有预测像素,则操作结束。
如果在步骤S530中确定运动矢量的水平分量和垂直分量二者的分数值被为非0,则操作进行至步骤S533。
在步骤S533中,像素选择单元297将由4抽头FIR滤波器294或8抽头FIR滤波器293提供的、作为预测关联像素的子像素的颜色分量输出至中间结果存储器50,以存储子像素的颜色分量。
在步骤S534中,参考图像读取单元331确定是否已经生成所有预测关联像素的颜色分量。如果在步骤S534中确定并非所有预测关联像素的颜色分量被生成,则操作返回至步骤S525,并且重复步骤S525至步骤S530、步骤S533和步骤S534的过程直至生成所有的预测关联像素的颜色分量为止。
另一方面,如果在步骤S534中确定已经生成所有预测关联像素的颜色分量,则操作进行至图92的步骤S535,
在步骤S535中,参考图像读取单元331确定在形成预测图像的预测像素中的生成目标预测像素。所述预测像素是在步骤S535的过程中还未被确定为生成目标预测像素的预测像素。
在步骤S536中,根据运动矢量的分数值以及包含在由运动预测单元25提供的帧间预测模式信息中的块尺寸和预测方向,像素分类单元332从LUT333读取沿垂直方向的生成像素的数目。
在步骤S537中,基于生成目标预测像素在参考图像中沿垂直方向的位置,像素分类单元332从中间结果存储器50读取作为生成像素的四个或八个子像素的颜色分量。
步骤S538至步骤S540的过程与图91的步骤S527至步骤S529的过程相同,除了对子像素而非参考像素执行过程之外。因此,不再重复解释这些步骤。
在步骤S541中,像素选择单元297将由4抽头FIR滤波器294或8抽头FIR滤波器293提供的、作为预测像素的颜色分量的子像素的颜色分量输出至选择单元26。在这点上,如果预测方向是双向预测,则由比帧间预测目标图像更早显示的参考图像所生成的预测像素的颜色分量和由比帧间预测目标图像更晚显示的参考图像所生成的预测像素的颜色分量被平均,并且结果被输出至选择单元26。
在步骤S542中,参考图像读取单元331确定是否已经生成所有预测像素的颜色分量。如果在步骤S542中确定并非所有预测像素的颜色分量被生成,则操作返回至步骤S535,并且重复步骤S535至步骤S542的过程直至生成所有的预测像素为止。
如果在步骤S542中确定已经生成所有预测像素,则操作结束。
在图91和图92所示的颜色帧间预测操作中,当运动矢量的水平分量和垂直分量二者的分数值均为非0时,在沿水平方向进行滤波之后沿垂直方向执行滤波。然而,可以在沿垂直方向进行滤波之后沿水平方向执行滤波。
图20的步骤S15的帧间预测操作由图91和图92的颜色帧间预测操作以及图88的亮度帧间预测单元322所执行的亮度帧间预测操作来形成。亮度帧间预测操作与颜色帧间预测操作相同,除了生成了亮度分量而不是颜色分量以及生成像素的数目等于2或4而不等于4或8之外。因此,在此不再提供对操作的解释。
<正规化参考像素数目的特性>
图93至图100是用于解释正规化参考像素的特性的图。
在图93至图100中,每个带点的方格表示在生成预测像素时要使用的参考像素中的、位于帧间预测块的尺寸范围内的参考像素,而每个阴影方格表示在帧间预测块的尺寸范围之外的参考像素。每个普通的方格表示参考像素。
如图93所示,在帧间预测块的尺寸是4×4像素、预测像素是子像素e、f、g、i、j、k、m、n或o、沿水平方向和垂直方向的生成像素的数目等于8以及预测方向是“L0预测”或“L1预测”的情况下,在生成预测图像时要使用的参考像素的数目等于11×11。因此,在该情况下的正规化参考像素数目约等于7.6(=(11×11)/(4×4))。
如图94所示,在帧间预测块的尺寸是8×8像素而不是4×4像素的情况下,在生成预测图像时要使用的参考像素的数目等于15×15像素,正规化参考像素数目约等于3.5(=(15×15)/(8×8))。
如上所述,参考像素范围大于帧间预测块的尺寸,并且随着帧间预测块的尺寸变小,正规化参考像素数目变大。
如图95所示,在预测方向既不是“L0预测”也不是“L1预测”而是双向预测的情况下,根据比帧间预测目标图像更早显示的参考图像的11×11像素来生成预测图像。此外,根据比帧间预测目标图像更晚显示的参考图像的11×11像素来生成预测图像。两个生成的预测图像以逐个像素的方式进行平均,以形成最终预测图像。因此,用于生成预测图像的参考像素的数目等于11×11×2,正规化参考像素数目约等于15.1(=(11×11×2)/(4×4))。
如上所述,在预测方向是双向预测的情况下,正规化参考像素数目大于在“L0预测”或“L1预测”的情况下的正规化参考像素数目。
另外,如图96所示,在预测像素是子像素a、b或c而不是子像素e、f、g、i、j、k、m、n或o的情况下,在生成预测图像时要使用的参考像素的数目等于4×11,并且正规化参考像素数目约等于2.8(=(4×11)/(4×4))。此外,尽管在任何附图中未示出,由于水平方向和垂直方向可以简单地转换,因此在预测像素是子像素d、h或l的情况下,在生成预测图像时要使用的参考像素的数目等于11×4,并且正规化参考像素数目约等于2.8(=(11×4)/(4×4))。
如上所述,在预测像素在参考图像中沿水平方向和垂直方向中的至少一个方向具有整数位置的情况下,正规化参考像素数目小于在预测像素沿两个方向均具有分数位置的情况下的正规化参考像素数目。
如图97所示,在预测像素不是子像素e、f、g、i、j、k、m、n或o而是子像素a、b或c的情况下,如果帧间预测块沿水平方向的尺寸不是四个像素而是八个像素(其大于沿垂直方向的尺寸),则在生成预测图像时要使用的参考像素的数目等于4×15。相应地,在该情况下的正规化参考像素数目约等于1.9(=(4×15)/(4×8))。
另一方面,在预测像素不是子像素a、b或c而是子像素d、h或l的情况下,如图98所示,在生成预测图像时要使用的参考像素的数目等于11×8,正规化参考像素数目约等于2.8(=(11×8)/(4×8))。
如上所述,如果帧间预测块沿水平方向和垂直方向中的一个方向具有比沿所述两个方向中的另一个方向更大的尺寸,则在参考图像中仅沿两个方向中的一个方向的位置是分数位置的情况下的正规化参考像素数目大于在参考图像中仅沿所述两个方向中的另一个方向的位置是分数位置的情况下的正规化参考像素数目。
另外,如图99所示,在帧间预测块的尺寸不是4×4像素而是4×8像素的情况下,如果沿水平方向的生成像素的数目等于8而沿垂直方向的生成像素的数目等于4,则在生成预测图像时要使用的参考像素的数目等于15×7。因此,在该情况下的正规化参考像素数目约等于3.3(=(15×7)/(4×8))。
另一方面,如果沿垂直方向的生成像素的数目等于8而沿水平方向的生成像素的数目等于4,如图100所示,则在生成预测图像时要使用的参考像素的数目等于11×11。因此,在该情况下的正规化参考像素数目约等于3.8(=(11×11)/(4×8))。
如上所述,如果帧间预测块沿水平方向和垂直方向中的一个方向的尺寸大于沿所述两个方向中的另一个方向的尺寸,则在沿所述两个方向中的另一个方向的生成像素的数目比沿所述两个方向中的所述一个方向小的情况下的正规化参考像素数目,小于在沿所述两个方向中的一个方向的生成像素的数目比沿所述两个方向中的另一个方向小的情况下的正规化参考像素数目。也就是说,与使得沿两个方向中的一个方向的生成像素的数目小于沿另一个方向的生成像素的数目相比较,使得沿两个方向中的另一个方向的生成像素的数目小于沿所述一个方向的生成像素的数目对于降低正规化参考像素数目而言具有更显著的效果。
尽管在附图中未示出,当编码装置10包括图77或图83的帧间预测单元24时,解码装置100的帧间预测单元111也具有与图77或图83的帧间预测单元24相同的结构。
<应用了本技术的计算机的描述>
上述编码操作和解码操作可以使用硬件来执行,也可以使用软件来执行。当使用软件来执行编码操作和解码操作时,形成软件的程序被安装到通用计算机等。
鉴于此,图101示出了安装有用于执行上述一系列操作的程序的计算机的实施方式的示例结构。
程序可以被预先记录在被设置为计算机记录介质的存储单元408或ROM(只读存储器)402中。
可替代地,可以在可移动介质411中存储(记录)程序。这样的可移动介质可以被设置为所谓的封装式软件。在此,可移动介质411可以例如是软磁盘、CD-ROM(光盘只读存储器)、MO(磁光)盘、DVD(数字多功能盘)、磁盘或半导体存储器。
可以将程序从上述可移动介质411中经由驱动器410安装至计算机中,但是也可以经由通信网或广播网下载至计算机并且被安装在内置存储单元408中。也就是说,可以将程序从例如下载站点经由用于数字卫星广播的人造卫星而无线传输至计算机,或者可以借助于线缆经由网络(如LAN(局域网)或因特网)传输至计算机。
计算机包括CPU(中央处理单元)410,以及经由总线404连接至CPU401的输入/输出接口405。
当操作输入单元406等的用户经由输入/输出接口405输入指令时,CPU401相应地执行ROM402中所存储的程序。可替代地,CPU401将存储单元408中所存储的程序加载至RAM(随机存取存储器)403中,并执行所述程序。
如此,CPU401根据上述流程图执行操作,或利用上述框图中所示的结构执行操作。在需要时,CPU401例如经由输入/输出接口405输出来自输出单元407的操作结果或传输来自通信单元409的操作结果,并进一步将操作结果存储在存储单元408中。
输入单元406由键盘、鼠标、麦克风等形成。输出单元407由LCD(液晶显示器)、扬声器等形成。
在该说明书中,由计算机根据程序所执行的操作不一定以与流程图所示的次序一致的时间顺序来执行。也就是说,计算机根据程序所执行的操作包括彼此并行或彼此独立地执行的操作(例如并行操作或基于对象的操作)
可以通过一个计算机(处理器)来执行程序、或者可以通过多于一个的计算机以分布式方式来执行程序。另外,程序可以被传送到远程计算机,并在其中被执行。
<电视接收机的示例结构>
图102是示出了使用应用了本技术的解码装置的电视接收机的典型示例结构的框图。
图102所示的电视接收机500包括地面调谐器513、视频解码器515、视频信号处理电路518、图形生成电路519、面板驱动电路520以及显示面板521。
地面调谐器513经由天线接收模拟地面广播的广播波信号,并解调该信号以获得视频信号。地面调谐器513将视频信号提供给视频解码器515。视频解码器515对由地面调谐器513提供的视频信号执行解码操作,并将由此生成的数字分量信号提供给视频信号处理电路518。
视频信号处理电路518对由视频解码器515提供的视频数据执行预定处理例如降噪,并将由此生成的视频数据提供给图形生成电路519。
图形生成电路519基于经由网络提供的应用通过执行操作来生成要显示在显示面板521上的节目的视频数据或生成图像数据。图形生成电路519将所生成的视频数据或图像数据提供给面板驱动电路520。图形生成电路519还生成视频数据(图形),以显示待由用户用来选择项目的屏幕,并将所述视频数据叠加在节目的视频数据上。由此生成的视频数据在合适的情况下被提供给面板驱动电路520。
基于由图形生成电路519提供的数据,面板驱动电路520驱动显示面板521,并引起显示面板521显示节目的视频图像和上述的每个屏幕。
显示面板521由LCD(液晶显示器)等形成,并且显示面板521在面板驱动电路520的控制下显示节目等的视频图像。
电视接收机500还包括音频A/D(模/数)转换器电路514、音频信号处理电路522、回波消除/音频合成电路523、音频放大器电路524以及扬声器525。
地面调谐器513通过对接收到的广播波信号进行解调不仅获得视频信号而且获得音频信号。地面调谐器513将获得的音频信号提供给音频A/D转换器电路514。
音频A/D转换器电路514对由地面调谐器513提供的音频信号执行A/D转换操作,并将由此生成的数字音频信号提供给音频信号处理电路522。
音频信号处理电路522对由音频A/D转换器电路514提供的音频数据执行预定处理(例如降噪),并将由此生成的音频数据提供给回波消除/音频合成电路523。
回波消除/音频合成电路523将由音频信号处理电路522提供的音频数据提供给音频放大器电路524。
音频放大器电路524对由回波消除/音频合成电路523提供的音频数据执行D/A转换操作和放大操作。在声音被调节至预定声级之后,从扬声器525输出声音。
电视接收机500还包括数字调谐器516和MPEG解码器517。
数字调谐器516经由天线接收数字广播(数字地面广播或数字BS(广播卫星)/CS(通信卫星)广播)的广播波信号,并解调广播波信号,以获得MPEG-TS(动态图像专家组-传输流)。MPEG-TS被提供给MPEG解码器517。
MPEG解码器517对从数字调谐器516提供的MPEG-TS进行去扰(descramble),并提取包含要再现的(要观看的)节目的数据的流。MPEG解码器517对形成所提取的流的音频包进行解码,并将由此生成的音频数据提供给音频信号处理电路522。MPEG解码器517还对形成所述流的视频包进行解码,并将由此生成的视频数据提供给视频信号处理电路518。MPEG解码器517还将从MEPG-TS提取的EPG(电子节目指南)数据经由路径(未示出)提供给CPU532。
电视接收机500将上述解码装置100用作如上所述的对视频包进行解码的MPEG解码器517。因此,如解码装置100那样,MPEG解码器517可以降低存储带宽的使用量以及存储带宽上的负载,并且防止帧间预测精度降低。
如在由视频解码器515提供视频数据的情况下那样,由MPEG解码器517提供的视频数据在视频信号处理电路518处经历预定处理。在图形生成电路519处,所生成的视频数据等在适当情况下被叠加在经历预定处理的视频数据上。由此生成的视频数据经由面板驱动电路520被提供给显示面板521,并且显示图像。
如由音频A/D转换器电路514提供的音频数据的情况下那样,由MPEG解码器517提供的音频数据在音频信号处理电路522处经历预定处理。经历预定处理的音频数据经由回波消除/音频合成电路523被提供给音频放大器电路524,并经历D/A转换操作或放大操作。结果,从扬声器525输出被调节至预定声级的声音。
电视接收机500还包括麦克风526和A/D转换器电路527。
A/D转换器电路527接收通过设置在电视接收机500中的用于语音对话的麦克风526所捕获的用户语音信号。A/D转换电路527对接收到的音频信号执行A/D转换操作,并将由此生成的数字音频数据提供给回波消除/音频合成电路523。
当由A/D转换器电路527提供电视接收机500的用户(用户A)的音频数据时,回波消除/音频合成电路523对用户A的音频数据执行回波消除。在回波消除之后,则回波消除/音频合成电路523将音频数据与其他音频数据等进行组合,并使得扬声器525经由音频放大器电路524输出由此生成的音频数据。
电视接收机500还包括音频编码解码器528、内部总线529、SDRAM(同步动态随机存取存储器)530、闪存531、CPU532、USB(通用串行总线)I/F533、和网络I/F534。
A/D转换器电路527接收通过设置在电视接收机500中的用于语音对话的麦克风526所捕获的用户语音信号。A/D转换器电路527对接收到的音频信号执行A/D转换操作,并将由此生成的数字音频数据提供给音频编解码器528。
音频编解码器528将由A/D转换器电路527提供的音频数据转换成预定格式的数据以便经由网络进行传输,并将由此生成的数据经由内部总线529提供给网络I/F534。
网络I/F534经由附接至网络端子535的线缆连接至网络。网络I/F534将由音频编解码器528提供的音频数据传输至例如连接至网络的另外的装置。网络I/F534还经由网络端子535接收从连接至网络的另外的装置发送的音频数据,并将所述音频数据经由内部总线529提供给音频编解码器528。
音频编解码器528将由网络I/F534提供的音频数据转换成预定格式的数据,并将由此生成的数据提供给回波消除/音频合成电路523。
回波消除/音频合成电路523对由音频编解码器528提供的音频数据执行回波消除,并将所述音频数据与其他音频数据等进行组合。由此生成的音频数据经由音频放大器电路524从扬声器525输出。
SDRAM530存储用于CPU532执行处理所需的各种数据。
闪存531存储待由CPU532执行的程序。CPU532在预定时间(例如在电视接收机500启动时)读取存储在闪存531中的程序。闪存531还存储通过数字广播获得的EPG数据以及经由网络从预定服务器获得的数据等。
例如,在CPU532的控制下,闪存531存储包含有经由网络从预定服务器获得的内容数据的MPEG-TS。例如,在CPU532的控制下,闪存531将MPEG-TS经由内部总线529提供给MPEG解码器517。
如在由数字调谐器516提供的MPEG-TS的情况下那样,MPEG解码器517处理MPEG-TS。以此方式,电视接收机500经由网络接收由视频图像和声音形成的内容数据,并通过使用MPEG解码器517对内容数据进行解码,以显示视频图像并输出声音。
电视接收机500还包括光接收单元537,光接收单元537接收从遥控器551发送的红外信号。
光接收单元537接收来自遥控器551的红外线,并执行解调。光接收单元537将通过解调获得的表示用户操作内容的控制代码输出至CPU532。
CPU532执行存储在闪存531中的程序,并按照由光接收单元537提供的控制代码等对电视接收机500的整体操作进行控制。电视接收机500的相应部件经由路径(未示出)连接至CPU532。
USB I/F533与位于电视接收机500之外的设备互换数据,该设备经由附接至USB端子536的USB线缆来连接至电视接收机500。网络I/F534经由附接至网络端子535的线缆连接至网络,并与连接至网络的各种装置交换除了音频数据之外的数据。
通过将解码装置100用作MPEG解码器517,电视接收机500可以降低存储带宽的使用量以及存储带宽上的负载,并且防止帧间预测精度降低。
<便携式电话装置的示例结构>
图103是示出使用应用了本技术的编码装置和解码装置的便携式电话装置的典型示例结构的框图。
图103所示的便携式电话装置600包括:被设计成对相应部件进行集中控制的主控制单元650、电源电路单元651、操作输入控制单元652、图像编码器653、相机I/F单元654、LCD控制单元655、图像解码器656、多路复用/分离单元657、记录/再现单元662、调制/解调电路单元658以及音频编解码器659。这些部件经由总线660相互连接。
便携式电话装置600还包括:操作键619、CCD(电荷耦合装置)相机616、液晶显示器618、存储单元623、发送/接收电路单元663、天线614、麦克风621以及扬声器617。
当通话结束或电源键通过用户的操作被接通时,电源电路单元651通过从电池组向相应部件供电来使得便携式电话装置600进入可操作状态。
在由CPU、ROM和RAM等形成的主控制单元650的控制下,便携式电话装置600在各种模式(例如语音通信模式和数据通信模式)下执行各种操作,例如音频信号的发送和接收、电子邮件和图像数据的发送和接收、图像捕获以及数据记录。
例如,在处于语音通信模式下的便携式电话装置600中,通过麦克风621捕获的音频信号通过音频编解码器659被转换成数字音频数据,并且所述数字音频数据在调制/解调电路单元658处经历扩频处理。然后由此生成的数据在发送/接收电路单元663处经历数模转换操作和频率转换操作。便携式电话装置600将通过转换操作所获得的发送信号经由天线614发送至基站(未示出)。发送至基站的所述发送信号(音频信号)经由公用电话线路网被提供给在通信的另一端处的便携式电话装置。
此外,例如在处于语音通信模式下的便携式电话装置600中,通过天线614接收的接收信号在发送/接收电路单元663处被放大,并进一步经历频率转换操作和模数转换操作。由此生成的信号在调制/解调电路单元658处经历逆扩频处理,并通过音频编解码器659被转换成模拟音频信号。便携式电话装置600从扬声器617输出经转换所获得的模拟音频信号。
另外,例如在数据通信模式下发送电子邮件时,便携式电话装置600的操作输入控制单元652接收通过操作操作键619所输入的电子邮件的文本数据。便携式电话装置600在主控制单元650处处理文本数据,并经由LCD控制单元655在液晶显示器618上将所述文本数据显示为图像。
在便携式电话装置600中,主控制单元650基于由操作输入控制单元652所接收的文本数据、用户指令等来生成电子邮件数据。便携式电话装置600使电子邮件数据在调制/解调电路单元658处经历扩频处理,并在发送/接收电路单元663处经历数模转换操作和频率转换操作。便携式电话装置600将经转换操作所获得的发送信号经由天线614发送至基站(未示出)。发送至基站的发送信号(电子邮件)经由网络、邮件服务器等被提供给预定地址。
例如,在数据通信模式下接收电子邮件时,便携式电话装置600的发送/接收电路单元663经由天线614接收从基站发送的信号,并且所述信号被放大并且进一步经历频率转换操作和模数转换操作。便携式电话装置600使接收到的信号在调制/解调电路单元658处经历逆扩频处理,以恢复原始电子邮件数据。便携式电话装置600经由LCD控制单元655将所恢复的电子邮件数据显示在液晶显示器618上。
便携式电话装置600还可以经由记录/再现单元662将接收到的电子邮件数据记录(存储)至存储单元623中。
存储单元623是可重写存储介质。存储单元623可以是半导体存储器(例如RAM或内置闪存)、硬盘或可移动介质(例如磁盘、磁光盘、光盘、USB存储器或存储卡)。当然也可以使用除了以上存储器之外的存储器。
另外,例如在数据通信模式下发送图像数据时,便携式电话装置600在捕获图像的CCD相机616处生成图像数据。CCD相机616包括光学装置(例如镜头和光圈)以及作为光电转换装置的CCD。CCD相机616捕获对象的图像,将接收到的光强度转换成电信号,并生成所述对象的图像的图像数据。然后图像编码器653通过使用预定编码方法(例如MPEG2或MPEG4)经由相机I/F单元654对图像数据执行压缩编码。从而,图像数据被转换成编码图像数据。
便携式电话装置600将上述编码装置10用作执行以上操作的图像编码器653。因此,如编码装置10那样,图像编码器653可以降低存储带宽的使用量以及存储带宽上的负载,并且防止帧间预测精度降低。
与此同时,在便携式电话装置600中,在通过CCD相机616捕获图像期间,通过麦克风621捕获的声音在音频编解码器659处被进行模数转换,并且被进一步编码。
便携式电话装置600的多路复用/分离单元657通过预定方法对由图像编码器653提供的编码图像数据和由音频编解码器659提供的数字音频数据进行多路复用。便携式电话装置600使由此生成的多路复用数据在调制/解调电路单元658处经历扩频处理,并在发送/接收电路单元663处经历数模转换操作和频率转换操作。便携式电话装置600将经转换操作所获得的发送信号经由天线614发送至基站(未示出)。发送至基站的所述发送信号(图像数据)经由网络等被提供给通信的另一端。
在不发送图像数据时,便携式电话装置600也可以经由LCD控制单元655而不是图像编码器653使在CCD相机616处生成的图像数据显示在液晶显示器618上。
例如在数据通信模式下接收链接至例如简化网页等的动态图像文件的数据时,便携式电话装置600的发送/接收电路单元663经由天线614接收从基站发送的信号。所述信号被放大并进一步经历频率转换操作和模数转换操作。便携式电话装置600使接收到的信号在调制/解调电路单元658处经历逆扩频处理,以恢复原始多路复用数据。便携式电话装置600在多路复用/分离单元657处将多路复用数据划分成编码图像数据和音频数据。
通过使用与预定编码方法(例如MPEG2或MPEG4)兼容的解码方法在图像解码器656处对编码图像数据进行解码,便携式电话装置600生成再现的动态图像数据,并将再现的动态图像数据经由LCD控制单元655显示在液晶显示器618上。以此方式,例如包含在链接至简化网页的动态图像文件中的动态图像数据被显示在液晶显示器618上。
便携式电话装置600将上述解码装置100用作执行以上操作的图像解码器656。因此,如解码装置100那样,图像解码器656可以降低存储带宽的使用量以及存储带宽上的负载,并且防止帧间预测精度降低。
与此同时,便携式电话装置600在音频编解码器659处将数字音频数据转换成模拟音频信号,并通过扬声器617输出模拟音频信号。以此方式,例如包含在链接至简化网页的动态图像文件中的音频数据被再现。
如在电子邮件的情况下那样,便携式电话装置600还可以经由记录/再现单元662将接收到的链接至简化网页等的数据记录(存储)至存储单元623中。
便携式电话装置600的主控制单元650还可以对通过CCD相机616执行图像捕获所获得的二维代码进行分析,并获得在二维代码中所记录的信息。
另外,便携式电话装置600的红外通信单元681可以通过使用红外线来与外部设备进行通信。
通过将编码装置10用作图像编码器653,便携式电话装置600可以降低存储带宽的使用量以及存储带宽上的负载,并且防止帧间预测精度降低。
通过将解码装置100用作图像解码器656,便携式电话装置600还可以降低存储带宽的使用量以及存储带宽上的负载,并且防止帧间预测精度降低。
在以上描述中,便携式电话装置600使用CCD相机616。然而,代替CCD相机616,还可以使用利用CMOS(互补金属氧化物半导体)的图像传感器(CMOS图像传感器)。在该情况下,如在使用CCD相机616的情况下那样,便携式电话装置600还可以捕获对象的图像,并生成对象的图像的图像数据。
尽管以上描述了便携式电话装置600,但是编码装置10和解码装置100还可以以与在便携式电话装置600的情况下的相同的方式被应用于任何装置,只要所述装置具有与便携式电话装置600相同的图像捕获功能和相同的通信功能即可。例如,这样的装置可以是PDA(个人数字助理)、智能电话、UMPC(超级移动个人计算机)、上网本以及笔记本式个人计算机。
<硬盘记录器的示例结构>
图104是示出了使用应用了本技术的编码装置和解码装置的硬盘记录器的典型示例结构的框图。
图104所示的硬盘记录器(HDD记录器)700是如下装置:该装置将包含在广播波信号(电视信号)中的广播节目的音频数据和视频数据存储在内置硬盘上,并且在由来自用户的指令所指定的时间将所存储的数据提供给用户,其中广播波信号(电视信号)从卫星或地面天线等发送并被调谐器接收。
硬盘记录器700可以例如从广播波信号提取音频数据和视频数据,在合适的情况下对这些数据进行解码,并且将所述数据存储在内置硬盘中。此外,硬盘记录器700可以例如经由网络从另外的装置获得音频数据和视频数据,在合适的情况下对这些数据进行解码,并将所述数据存储在内置硬盘中。
另外,硬盘记录器700可以例如对被记录在内置硬盘上的音频数据和视频数据进行解码,将这些数据提供给监测器760,并将图像显示在监测器760的屏幕上。硬盘记录器700还可以从监测器760的扬声器输出声音。
此外,硬盘记录器700可以例如对从通过调谐器获得的广播波信号中提取的音频数据和视频数据、或通过网络从另外的装置获得的音频数据和视频数据进行解码,将这些数据提供给监测器760,并将图像显示在监测器760的屏幕上。硬盘记录器700还可以从监视器760的扬声器输出声音。
当然,硬盘记录器700可以执行除了以上操作之外的操作。
如图104所示,硬盘记录器700包括接收单元721、解调单元722、信号分离器723、音频解码器724、视频解码器725以及记录器控制单元726。硬盘记录器700还包括EPG数据存储器727、程序存储器728、工作存储器729、显示转换器730、OSD(On-Screen Display,同屏显示)控制单元731、显示控制单元732、记录/再现单元733、D/A转换器734以及通信单元735。
显示转换器730包括视频编码器741。记录/再现单元733包括编码器751和解码器752。
接收单元721接收来自遥控器(未示出)的红外信号,将该红外信号转换成电信号,并将该电信号输出至记录器控制单元726。记录器控制单元726例如由微处理器形成,并按照存储在程序存储器728中的程序来执行各种操作。在这一点上,记录器控制单元726在需要时使用工作存储器729。
通信单元735被连接至网络,并经由网络与另外的装置执行通信操作。例如,在记录器控制单元726的控制下,通信单元735与调谐器(未示出)进行通信,并主要向调谐器输出站选择控制信号。
解调单元722对由调谐器提供的信号进行解调,并将信号输出至信号分离器723。信号分离器723将由解调单元722提供的数据划分成音频数据、视频数据以及EPG数据。信号分离器723将音频数据、视频数据以及EPG数据分别输出至音频解码器724、视频解码器725以及记录器控制单元726。
音频解码器724例如通过MPEG方法对输入音频数据进行解码,并将经解码的音频数据输出至记录/再现单元733。视频解码器725例如通过MPEG方法对输入的视频数据进行解码,并将经解码的视频数据输出至显示转换器730。记录器控制单元726将输入的EPG数据提供并存储在EPG数据存储器727中。
显示转换器730使用视频编码器741将由视频解码器725或记录器控制单元726提供的视频数据编码成符合例如NTSC(国家电视标准委员会)标准的视频数据。经编码的视频数据被输出至记录/再现单元733。此外,显示转换器730将由视频解码器725或记录器控制单元726提供的视频数据的屏幕尺寸转换成与监测器760的尺寸兼容的尺寸。显示转换器730通过使用视频编码器741进一步将具有被转换的屏幕尺寸的视频数据转换成符合NTSC标准的视频数据。然后NTSC视频数据被转换成模拟信号,并被输出至显示控制单元732。
在记录器控制单元726的控制下,显示控制单元732将由OSD(同屏显示)控制单元731输出的OSD信号叠加在由显示转换器730输入的视频信号上,并将由此生成的信号输出至监测器760的显示器以显示图像。
由音频解码器724输出并通过D/A转换器734转换成模拟信号的音频数据还被提供给监测器760。监测器760从内置扬声器输出音频信号。
记录/再现单元733包括作为用于记录视频数据、音频数据等的存储介质的硬盘。
记录/再现单元733例如通过MPEG方法使编码器751对由音频解码器724提供的音频数据进行编码。记录/再现单元733还通过MPEG方法使编码器751对由显示转换器730的视频编码器741提供的视频数据进行编码。记录/再现单元733使用多路复用器将音频数据的编码数据与视频数据的编码数据进行组合。记录/再现单元733通过信道编码来放大所组合的数据,并经由记录头将由此生成的数据写至硬盘上。
记录/再现单元733通过再现头将记录在硬盘上的数据进行再现,对所述数据进行放大,并通过使用信号分离器将所述数据划分成音频数据和视频数据。记录/再现单元733通过MPEG方法,使用解码器752对音频数据和视频数据进行解码。记录/再现单元733对经解码的音频数据执行D/A转换,并将由此生成的数据输出至监测器760的扬声器。记录/再现单元733还对经解码的视频数据执行D/A转换,并将由此生成的数据输出至监测器760的显示器。
基于从遥控器发送的并经由接收单元721接收的红外信号所指示的用户指令,记录控制器726从EPG数据存储器727读取最新的EPG数据,并将EPG数据提供给OSD控制单元731。OSD控制单元731生成对应于输入的EPG数据的图像数据,并将图像数据输出至显示控制单元732。显示控制单元732将从OSD控制单元731输入的视频数据输出至监测器760的显示器以显示图像。以此方式,EPG(电子节目指南)被显示在监测器760的显示器上。
硬盘记录器700还可以经由网络(例如因特网)获得由另外的装置提供的各种数据,例如视频数据、音频数据以及EPG数据。
在记录器控制单元726的控制下,通信单元735经由网络获得来自另外的装置的视频数据、音频数据、EPG数据等的编码数据,并将这些数据提供给记录器控制单元726。例如,记录器控制单元726将所获得的视频数据和音频数据的编码数据提供给记录/再现单元733,并将这些数据存储在硬盘上。在这点上,记录器控制单元726和记录/再现单元733可以在需要时执行诸如重新编码等操作。
记录器控制单元726还对所获得的视频数据和音频数据的编码数据进行解码,并将由此生成的视频数据提供给显示转换器730。显示转换器730以与由视频解码器725提供的视频数据的处理的相同方式来处理由记录器控制单元726提供的视频数据,并将由此生成的数据经由显示控制单元732提供给监测器760以显示图像。
在图像显示的同时,记录器控制单元726可以经由D/A转换器734将经解码的音频数据提供给监测器760,并从扬声器输出声音。
另外,记录器控制单元726对所获得的EPG数据的编码数据进行解码,并将经解码的EPG数据提供给EPG数据存储器727。
上述硬盘记录器700将解码装置100用作视频解码器725、解码器752以及设置在记录器控制单元726中的解码器。因此,如解码装置100,视频解码器725、解码器752以及设置在记录器控制单元726中的解码器可以降低存储带宽的使用量以及存储带宽上的负载,并且防止帧间预测精度降低。
硬盘记录器700还将编码装置10用作编码器751。因此,如编码装置10,编码器751可以降低存储带宽的使用量以及存储带宽上的负载,并且防止帧间预测精度降低。
在以上描述中,已经描述了在硬盘上记录视频数据和音频数据的硬盘记录器700。然而,可以使用任何其他记录介质。例如,如在上述硬盘记录器700的情况下那样,编码装置10和解码装置100可以应用于使用除了硬盘之外的记录介质(例如闪存、光盘或录像带)的记录器。
<相机的示例结构>
图105是示出使用应用了本技术的解码装置和编码装置的相机的典型示例结构的框图。
图105所示的相机800捕获对象的图像,并将对象的图像显示在LCD816上或将对象的图像作为图像数据记录在记录介质833上。
镜头块811使得光(或对象的视频图像)入射至CCD/CMOS812上。CCD/COMS812是使用CCD或CMOS的图像传感器。CCD/COMS812将接收到的光的强度转换成电信号,并将所述电信号提供给相机信号处理单元813。
相机信号处理单元813将由CCD/COMS812提供的电信号转换成YCrCb色度信号,并将所述信号提供给图像信号处理单元814。在控制器821的控制下,图像信号处理单元814对由相机信号处理单元813提供的图像信号执行预定的图像处理,并通过MPEG方法使编码器841对图像信号进行编码。图像信号处理单元814将通过对图像信号进行编码而生成的编码数据提供给解码器815。图像信号处理单元814还获得在同屏显示器(OSD)820处生成的显示数据,并将所述显示数据提供给解码器815。
在以上操作中,相机信号处理单元813使用经由总线817连接至此的DRAM(动态随机访问存储器)818,以在需要时将图像数据和通过对图像数据进行编码而获得的编码数据等存储在DRAM818中。
解码器815对由图像信号处理单元814提供的编码数据进行解码,并将由此生成的图像数据(经解码的图像数据)提供给LCD816。解码器815还将由图像信号处理单元814提供的显示数据提供给LCD816。LCD816将与由解码器815提供的解码图像数据对应的图像和对应于显示数据的图像进行组合,并显示所组合的图像。
在控制器821的控制下,同屏显示器820将由符号、字符以及图形形成的菜单屏幕以及图标的显示数据经由总线817输出至图像信号处理单元814。
基于表示由用户使用操作单元822所指定的内容的信号,控制器821执行各种操作,并经由总线817控制图像信号处理单元814、DRAM818、外部接口819、同屏显示器820、媒体驱动器823等。快闪ROM824存储控制器821所需的程序、数据等以执行各种操作。
例如,控制器821可以代替图像信号处理单元814和解码器815来对存储在DRAM818上的图像数据进行编码,并对存储在DRAM818上的编码数据进行解码。如此,控制器821可以通过使用与图像信号处理单元814和解码器815所使用的编码方法和解码方法相同的方法来执行编码操作和解码操作,或者可以通过使用与图像信号处理单元814和解码器815不兼容的方法来执行编码操作和解码操作。
例如,当通过操作单元822请求开始图像打印时,控制器821从DRAM818读取图像数据,并经由总线817将图像数据提供给被连接至外部接口819的打印机834,以便执行打印。
另外,例如,当通过操作单元822请求图像记录时,控制器821从DRAM818读取编码数据,并经由总线817将编码数据提供并存储至被安装在媒体驱动器823上的记录介质833。
记录介质833是可读可写的可移动介质,例如磁盘、磁光盘、光盘或半导体存储器。记录介质833可以是任意类型的可移动介质,并且可以是磁带装置、盘或存储卡。当然,可以使用非接触式IC卡等。
可替代地,媒体驱动器823和记录介质833可以被集成,并且可以由非移动存储介质(例如内置硬盘驱动器或SSD(Solid State Drive,固态驱动器))来形成。
外部接口819例如由USB输入/输出端子等形成,并在执行图像打印时被连接至打印机834。此外,驱动器831在需要时被连接至外部接口819,并且在需要时在驱动器831上安装可移动介质832,例如磁盘、光盘或磁光盘。从这样的盘上读取的计算机程序在需要时被安装在闪存ROM824中。
另外,外部接口819包括连接至预定网络(例如LAN或因特网)的网络接口。例如,按照来自操作单元822的指令,控制器821可以从DRAM818读取编码数据,并将所述编码数据从外部接口819经由网络提供给连接至外部接口819的另外的装置。此外,控制器821可以获得由另外的装置经由网络提供的编码数据和图像数据,并将所述数据存储在DRAM818中或将所述数据经由外部接口819提供给图像信号处理单元814。
上述相机800将解码装置100用作解码器815。因此,如解码装置100,解码器815可以降低存储带宽的使用量以及存储带宽上负载,并且防止帧间预测精度降低。
相机800还将编码装置10用作编码器841。因此,如编码装置10,编码器841可以降低存储带宽的使用量以及存储带宽上的负载,并且防止帧间预测精度降低。
解码装置100所使用的解码方法可以应用于通过控制器821执行的解码操作。类似地,编码装置10所使用的编码方法可以应用于通过控制器821执行的编码操作。
由相机800捕获的图像数据可以是运动图像,或者可以是静止图像。
当然,可以将编码装置10和解码装置100应用于除了上述装置之外的任何装置和系统。
应当注意的是,本技术的实施方式不限于上述实施方式,并且在不脱离本技术的范围的情况下可以进行各种修改。
本技术也可以通过下述结构来实施。
(1)
一种图像处理装置,包括:
像素读取单元,该像素读取单元被配置成在帧间预测中从参考图像读取预定像素;以及
算术运算单元,该算术运算单元被配置成通过使用由像素读取单元读取的预定像素来计算在参考图像中具有分数位置的像素,作为帧间预测中的预测图像的像素;
其中,像素读取单元读取预定像素,使得与预测图像中的外部像素相对应的预定像素的数目小于与预测图像中的内部像素相对应的预定像素的数目。
(2)
根据(1)所述的图像处理装置,其中,外部像素在参考图像中的位置是在参考块中的预测图像的尺寸范围之外的位置,所述参考块由要用于计算预测图像中的相应像素的全部预定像素形成。
(3)
根据(2)所述的图像处理装置,其中,像素读取单元读取预定像素,使得在预定像素中位于参考块中的预测像素的尺寸范围之外的、对应于外部像素的像素与在预定像素中位于参考块中的预测图像的尺寸范围之外的、对应于内部像素的像素相同。
(4)
根据(1)所述的图像处理装置,其中,外部像素在参考图像中的位置是在参考块中的预测图像的尺寸范围与预测图像的尺寸范围之外的范围之间的边界处的位置,所述参考块由要用于计算预测图像中的各个像素的全部预定像素形成。
(5)
根据(1)至(4)中的任一项所述的图像处理装置,其中,像素读取单元读取预定像素,使得与预测图像中的最外部像素对应的预定像素的数目等于2。
(6)
根据(1)至(5)中的任一项所述的图像处理装置,其中,像素读取单元读取预定像素,使得与预测图像中的最外部像素对应的预定像素的数目等于2,与位于最外部像素的内侧的次外部像素对应的预定像素的数目等于4、以及与位于次外部像素的内侧并且包括预测图像中的最内部像素的像素之一对应的预定像素的数目等于6。
(7)
根据(1)至(6)中的任一项所述的图像处理装置,还包括:
存储单元,存储单元被配置成存储与预测图像中的外部像素对应的外部系数以及与预测图像中的内部像素对应的内部系数;
其中,当由像素读取单元读取的预定像素对应于预测图像中的外部像素时,算术运算单元通过使用该预定像素和外部系数来执行计算,而当由像素读取单元读取的预定像素对应于预测图像中的内部像素时,算术运算单元通过使用该预定像素和内部系数来执行计算。
(8)
根据(1)至(4)中的任一项所述的图像处理装置,还包括:
像素生成单元,该像素生成单元被配置成:当由像素读取单元读取的预定像素的数目小于预定数目时,根据预定像素的数目与预定数目之间的数目差来复制该预定像素中的外部像素,并且生成预定数目的、包括所复制的像素和预定像素的像素;
其中,算术运算单元通过使用由像素生成单元生成的预定数目的像素来计算预测图像中的像素。
(9)
根据(8)所述的图像处理装置,其中,像素读取单元读取预定像素,使得与预测图像中的最外部像素对应的预定像素的数目等于4,与位于最外部像素的内侧的次外部像素对应的预定像素的数目等于5,以及与位于次外部像素的内侧并且包括预测图像中的最内部像素的像素之一对应的预定像素的数目等于6;以及
预定数目等于6。
(10)
根据(1)至(4)和(8)中的任一项所述的图像处理装置,其中,当预测图像中的每个像素在参考图像中沿水平方向和垂直方向中的仅一个方向具有分数位置时,像素读取单元读取预定像素,使得与预测图像中的外部像素对应的预定像素的数目大于当预测图像中的每个像素沿两个方向均具有分数位置时与预测图像中的外部像素对应的预定像素的数目。
(11)
根据(1)至(4)、(8)和(10)中的任一项所述的图像处理装置,其中,当预测图像的尺寸大于预定尺寸时,像素读取单元读取预定像素,使得与预测图像中的外部像素对应的预定像素的数目大于当预测图像的尺寸等于或小于预定尺寸时与所述预测图像中的外部像素对应的预定像素的数目。
(12)
根据(1)至(4)、(8)、(10)和(11)中的任一项所述的图像处理装置,其中,当帧间预测具有单向预测的预测方向时,像素读取单元读取预定像素,使得与预测图像中的外部像素对应的预定像素的数目大于当所述帧间预测是双向预测时与预测图像中的外部像素对应的预定像素的数目。
(13)
根据(1)所述的图像处理装置,其中,像素读取单元读取预定像素,使得与预测图像中的外部像素对应并且位于预测像素的外侧的预定像素的数目小于与预测图像中的内部像素对应并且位于预测像素的外侧的预定像素的数目。
(14)
根据(13)所述的图像处理装置,还包括:
像素生成单元,该像素生成单元被配置成:当由像素读取单元读取的预定像素的数目小于预定数目时,根据预定像素的数目与预定数目之间的数目差来复制该预定像素中的外部像素,并且生成预定数目的、包括复制像素和预定像素的像素;
其中,算术运算单元通过使用由像素生成单元生成的预定数目的像素来计算预测图像中的像素。
(15)
根据(1)至(4)、(8)、(10)至(14)中的任一项所述的图像处理装置,其中,像素读取单元读取预定像素,使得与预测图像中的外部像素对应的预定像素的数目小于与预测图像中的内部像素对应的预定像素的数目,以及沿水平方向和垂直方向中的一个方向排列的预定像素的数目小于沿水平方向和所述垂直方向中的另一个方向排列的预定像素的数目。
(16)
根据(1)至(15)中的任一项所述的图像处理装置,还包括:
差计算单元,该差计算单元被配置成计算预测图像与编码目标图像之间的差。
(17)
根据1至(16)中的任一项所述的图像处理装置,还包括:
加法运算单元,该加法运算单元被配置成将预测图像与解码目标图像相加。
(18)
一种要通过图像处理装置执行的图像处理方法,包括:
像素读取步骤,在帧间预测中从参考图像读取预定像素;以及
算术运算步骤,通过使用由像素读取步骤的过程所读取的预定像素来计算在参考图像中具有分数位置的像素,作为帧间预测中的预测图像的像素;
其中,像素读取步骤的过程包括读取预定像素,使得与预测图像中的外部像素对应的预定像素的数目小于与预测图像中的内部像素对应的预定像素的数目。
(19)
一种程序,用于使计算机执行:
像素读取步骤,在帧间预测中从参考图像读取预定像素;以及
算术运算步骤,通过使用由像素读取步骤的过程所读取的预定像素来计算在参考图像中具有分数位置的像素,作为帧间预测中的预测图像的像素;
其中,像素读取步骤的过程包括读取预定像素,使得与预测图像中的外部像素对应的预定像素的数目小于与预测图像中的内部像素对应的预定像素的数目。
附图标记列表
10编码装置,13算术运算单元,20加法单元,24帧间预测单元,41参考图像读取单元,432抽头FIR滤波器,444抽头FIR滤波器,456抽头FIR滤波器,462抽头滤波器系数存储器,474抽头滤波器系数存储器,486抽头滤波器系数存储器,100解码装置,105加法单元,111帧间预测单元,160参考图像读取单元,161像素生成单元,180、200、210、220、251、271参考图像读取单元,272图像生成单元,291参考图像读取单元,292像素输出单元,2938抽头FIR滤波器,2944抽头FIR滤波器,2958抽头滤波器系数存储器,2964抽头滤波器系数存储器。

Claims (19)

1.一种图像处理装置,包括:
像素读取单元,所述像素读取单元被配置成在帧间预测中从参考图像读取预定像素;以及
算术运算单元,所述算术运算单元被配置成通过使用由所述像素读取单元读取的预定像素来计算所述参考图像中具有分数位置的像素,作为所述帧间预测中的预测图像的像素;
其中,所述像素读取单元读取所述预定像素,使得与所述预测图像中的外部像素对应的预定像素的数目小于与所述预测图像中的内部像素对应的预定像素的数目。
2.根据权利要求1所述的图像处理装置,其中,所述外部像素在所述参考图像中的位置是参考块中的所述预测图像的尺寸范围之外的位置,所述参考块由要用于计算所述预测图像中的各个像素的全部预定像素形成。
3.根据权利要求2所述的图像处理装置,其中,所述像素读取单元读取所述预定像素,使得在所述预定像素中位于所述参考块中的所述预测像素的尺寸范围之外的、对应于所述外部像素的像素与在所述预定像素中位于所述参考块中的所述预测图像的尺寸范围之外的、对应于所述内部像素的像素相同。
4.根据权利要求1所述的图像处理装置,其中,所述外部像素在所述参考图像中的位置是在参考块中的预测图像的尺寸范围与所述预测图像的尺寸范围之外的范围之间的边界处的位置,所述参考块由要用于计算所述预测图像中的各个像素的全部预定像素形成。
5.根据权利要求1所述的图像处理装置,其中,所述像素读取单元读取所述预定像素,使得与所述预测图像中的最外部像素对应的预定像素的数目等于2。
6.根据权利要求1所述的图像处理装置,其中,所述像素读取单元读取所述预定像素,使得与所述预测图像中的最外部像素对应的预定像素的数目等于2,与位于所述最外部像素的内侧的次外部像素对应的预定像素的数目等于4、以及与位于所述次外部像素的内侧并且包括所述预测图像中的最内部像素的像素之一对应的预定像素的数目等于6。
7.根据权利要求1所述的图像处理装置,还包括:
存储单元,所述存储单元被配置成存储与所述预测图像中的外部像素对应的外部系数以及与所述预测图像中的内部像素对应的内部系数;
其中,当由所述像素读取单元读取的预定像素对应于所述预测图像中的外部像素时,所述算术运算单元通过使用该预定像素和所述外部系数来执行计算,而当由所述像素读取单元读取的所述预定像素对应于所述预测图像中的内部像素时,所述算术运算单元通过使用该预定像素和所述内部系数来执行计算。
8.根据权利要求1所述的图像处理装置,还包括:
像素生成单元,所述像素生成单元被配置成:当由所述像素读取单元读取的预定像素的数目小于预定数目时,根据所述预定像素的数目与所述预定数目之间的数目差来复制该预定像素中的外部像素,并且生成包括所复制的像素和所述预定像素的、所述预定数目的像素;
其中,所述算术运算单元通过使用由所述像素生成单元生成的预定数目的像素来计算所述预测图像中的像素。
9.根据权利要求8所述的图像处理装置,其中,所述像素读取单元读取所述预定像素,使得与所述预测图像中的最外部像素对应的预定像素的数目等于4,与位于所述最外部像素的内侧的次外部像素对应的预定像素的数目等于5,以及与位于所述次外部像素的内侧并且包括所述预测图像中的最内部像素的像素之一对应的预定像素的数目等于6;以及
所述预定数目等于6。
10.根据权利要求1所述的图像处理装置,其中,当所述预测图像中的每个像素在所述参考图像中沿水平方向和垂直方向中的仅一个方向具有分数位置时,所述像素读取单元读取所述预定像素,使得与所述预测图像中的外部像素对应的所述预定像素的数目大于当所述预测图像中的每个像素沿所述两个方向均具有分数位置时与所述预测图像中的外部像素对应的所述预定像素的数目。
11.根据权利要求1所述的图像处理装置,其中,当所述预测图像的尺寸大于预定尺寸时,所述像素读取单元读取所述预定像素,使得与所述预测图像中的外部像素对应的所述预定像素的数目大于当所述预测图像的尺寸等于或小于所述预定尺寸时与所述预测图像中的外部像素对应的所述预定像素的数目。
12.根据权利要求1所述的图像处理装置,其中,当所述帧间预测具有单向预测的预测方向时,所述像素读取单元读取所述预定像素,使得与所述预测图像中的外部像素对应的所述预定像素的数目大于当所述帧间预测是双向预测时与所述预测图像中的外部像素对应的所述预定像素的数目。
13.根据权利要求1所述的图像处理装置,其中,所述像素读取单元读取所述预定像素,使得与所述预测图像中的外部像素对应并且位于所述预测像素的外侧的所述预定像素的数目小于与所述预测图像中的内部像素对应并且位于所述预测像素的外侧的所述预定像素的数目。
14.根据权利要求13所述的图像处理装置,还包括:
像素生成单元,所述像素生成单元被配置成:当由所述像素读取单元读取的预定像素的数目小于预定数目时,根据所述预定像素的数目与所述预定数目之间的数目差来复制该预定像素中的外部像素,并且生成包括复制像素和所述预定像素的、所述预定数目的像素;
其中,所述算术运算单元通过使用由所述像素生成单元生成的预定数目的像素来计算所述预测图像中的像素。
15.根据权利要求1所述的图像处理装置,其中,所述像素读取单元读取所述预定像素,使得与所述预测图像中的外部像素对应的预定像素的数目小于与所述预测图像中的内部像素对应的预定像素的数目,以及沿水平方向和垂直方向中的一个方向排列的预定像素的数目小于沿所述水平方向和所述垂直方向中的另一个方向排列的预定像素的数目。
16.根据权利要求1所述的图像处理装置,还包括:
差计算单元,所述差计算单元被配置成计算所述预测图像与编码目标图像之间的差。
17.根据权利要求1所述的图像处理装置,还包括:
加法运算单元,所述加法运算单元被配置成将所述预测图像与解码目标图像相加。
18.一种通过图像处理装置执行的图像处理方法,包括:
像素读取步骤,在帧间预测中从参考图像读取预定像素;以及
算术运算步骤,通过使用由所述像素读取步骤的过程所读取的预定像素来计算在所述参考图像中具有分数位置的像素,作为所述帧间预测中的预测图像的像素;
其中,所述像素读取步骤的过程包括读取所述预定像素,使得与所述预测图像中的外部像素对应的预定像素的数目小于与所述预测图像中的内部像素对应的预定像素的数目。
19.一种使计算机执行以下步骤的程序:
像素读取步骤,从帧间预测中的参考图像读取预定像素;以及
算术运算步骤,通过使用由所述像素读取步骤的过程所读取的预定像素来计算在所述参考图像中具有分数位置的像素,作为所述帧间预测中的预测图像的像素;
其中,所述像素读取步骤的过程包括读取所述预定像素,使得与所述预测图像中的外部像素对应的预定像素的数目小于与所述预测图像中的内部像素对应的预定像素的数目。
CN2011800578887A 2010-12-08 2011-12-07 图像处理装置、图像处理方法和程序 Pending CN103238330A (zh)

Applications Claiming Priority (9)

Application Number Priority Date Filing Date Title
JP2010273220 2010-12-08
JP2010-273220 2010-12-08
JP2011009562 2011-01-20
JP2011-009562 2011-01-20
JP2011-054557 2011-03-11
JP2011054557 2011-03-11
JP2011145752A JP2012209914A (ja) 2010-12-08 2011-06-30 画像処理装置、画像処理方法、およびプログラム
JP2011-145752 2011-06-30
PCT/JP2011/078235 WO2012077695A1 (ja) 2010-12-08 2011-12-07 画像処理装置、画像処理方法、およびプログラム

Publications (1)

Publication Number Publication Date
CN103238330A true CN103238330A (zh) 2013-08-07

Family

ID=46207182

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2011800578887A Pending CN103238330A (zh) 2010-12-08 2011-12-07 图像处理装置、图像处理方法和程序

Country Status (8)

Country Link
US (1) US20130216150A1 (zh)
EP (1) EP2651135A1 (zh)
JP (1) JP2012209914A (zh)
KR (1) KR20140029363A (zh)
CN (1) CN103238330A (zh)
AR (1) AR084409A1 (zh)
TW (1) TW201233191A (zh)
WO (1) WO2012077695A1 (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2020057558A1 (zh) * 2018-09-20 2020-03-26 杭州海康威视数字技术股份有限公司 帧间预测方法和设备

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2980068A1 (fr) * 2011-09-13 2013-03-15 Thomson Licensing Procede de codage et de reconstruction d'un bloc de pixels et dispositifs correspondants
JP2014138242A (ja) * 2013-01-16 2014-07-28 Sony Corp 画像処理装置および画像処理方法
US10891756B2 (en) * 2016-11-07 2021-01-12 Sony Corporation Image processing device, chart for calibration, and calibration system
US20190364284A1 (en) * 2017-01-16 2019-11-28 Industry Academy Cooperation Foundation Of Sejong University Image encoding/decoding method and device
US10455253B1 (en) * 2017-02-28 2019-10-22 Google Llc Single direction long interpolation filter
WO2019107927A1 (ko) * 2017-11-28 2019-06-06 한국전자통신연구원 양방향 인트라 예측 방법 및 장치
KR20190080805A (ko) * 2017-12-28 2019-07-08 한국전자통신연구원 영상 부호화/복호화 방법, 장치 및 비트스트림을 저장한 기록 매체

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5175618A (en) * 1990-10-31 1992-12-29 Victor Company Of Japan, Ltd. Compression method for interlace moving image signals
CN1792097A (zh) * 2003-05-19 2006-06-21 皇家飞利浦电子股份有限公司 具有低存储器带宽要求的视频处理设备
JP2007129370A (ja) * 2005-11-01 2007-05-24 Matsushita Electric Ind Co Ltd 動きベクトル検出装置及び方法

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE19746214A1 (de) * 1997-10-21 1999-04-22 Bosch Gmbh Robert Verfahren zur bewegungskompensierenden Prädiktion von Bewegtbildfolgen
US6259734B1 (en) * 1998-04-03 2001-07-10 Matsushita Electric Industrial Co., Ltd. Image processing method, image processing apparatus, and data storage media
JPH11346368A (ja) * 1998-04-03 1999-12-14 Matsushita Electric Ind Co Ltd 画像処理方法,画像処理装置,及びデ―タ記憶媒体
US7630566B2 (en) * 2001-09-25 2009-12-08 Broadcom Corporation Method and apparatus for improved estimation and compensation in digital video compression and decompression
JP4120301B2 (ja) * 2002-04-25 2008-07-16 ソニー株式会社 画像処理装置およびその方法
US7953152B1 (en) * 2004-06-28 2011-05-31 Google Inc. Video compression and encoding method
JP2006333436A (ja) * 2005-01-07 2006-12-07 Ntt Docomo Inc 動画像符号化装置、動画像復号装置、動画像符号化方法、動画像復号方法、動画像符号化プログラム、及び、動画像復号プログラム
US8831086B2 (en) * 2008-04-10 2014-09-09 Qualcomm Incorporated Prediction techniques for interpolation in video coding
US8705622B2 (en) * 2008-04-10 2014-04-22 Qualcomm Incorporated Interpolation filter support for sub-pixel resolution in video coding
EP2442569A1 (en) * 2009-06-09 2012-04-18 Sony Corporation Image processing device and method

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5175618A (en) * 1990-10-31 1992-12-29 Victor Company Of Japan, Ltd. Compression method for interlace moving image signals
CN1792097A (zh) * 2003-05-19 2006-06-21 皇家飞利浦电子股份有限公司 具有低存储器带宽要求的视频处理设备
JP2007129370A (ja) * 2005-11-01 2007-05-24 Matsushita Electric Ind Co Ltd 動きベクトル検出装置及び方法

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2020057558A1 (zh) * 2018-09-20 2020-03-26 杭州海康威视数字技术股份有限公司 帧间预测方法和设备

Also Published As

Publication number Publication date
EP2651135A1 (en) 2013-10-16
WO2012077695A1 (ja) 2012-06-14
US20130216150A1 (en) 2013-08-22
JP2012209914A (ja) 2012-10-25
AR084409A1 (es) 2013-05-15
TW201233191A (en) 2012-08-01
KR20140029363A (ko) 2014-03-10

Similar Documents

Publication Publication Date Title
CN103238330A (zh) 图像处理装置、图像处理方法和程序
CN103229506B (zh) 图像处理设备和图像处理方法
CN101990098B (zh) 图像处理设备和方法
CN104380739B (zh) 图像处理设备和图像处理方法
CN109076226A (zh) 图像处理装置和方法
CN103416060A (zh) 图像处理装置和方法
CN103583045A (zh) 图像处理装置以及图像处理方法
CN103229505A (zh) 图像处理设备和图像处理方法
CN102577388A (zh) 图像处理装置和方法
CN101990099A (zh) 图像处理设备和方法
CN109644269A (zh) 图像处理设备、图像处理方法和程序
CN102474617A (zh) 图像处理装置和方法
CN104113764A (zh) 图像处理装置和图像处理方法
CN110115039A (zh) 图像处理装置和图像处理方法
CN102100071B (zh) 图像处理设备和方法
RU2663359C1 (ru) Устройство и способ обработки изображений
CN104813664A (zh) 图像处理设备和图像处理方法
KR20120034821A (ko) 픽셀 보간을 위한 방법 및 디바이스
CN104620586A (zh) 图像处理装置和方法
CN102100072B (zh) 图像处理装置和方法
CN103155564A (zh) 图像处理装置和方法
KR20190003497A (ko) 화상 처리 장치 및 화상 처리 방법
CN107409208A (zh) 图像处理装置、图像处理方法、程序以及记录媒体
CN103907353A (zh) 图像处理设备和方法
CN103190148A (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: 20130807