运动矢量检测设备、检测方法、图像编码设备和程序的制作方法

文档序号:7707948阅读:206来源:国知局
专利名称:运动矢量检测设备、检测方法、图像编码设备和程序的制作方法
技术领域
本发明涉及能够减少伴随运动矢量的检测的运算量的运动矢量检测设备、运动矢量检测方法、图像编码设备和程序。

背景技术
过去开发了在传输和存储与广播站相关联的运动图像中、有效地使用图像数据的冗余(redundancy)来有效地传输和存储图像数据的技术。在这种技术中,基于如MPEG(运动图像专家组)的标准,通过如离散余弦变换的正交变换和运动补偿压缩图像数据。
作为其示例的MPEG2(ISO/IEC 13818-2)是定义为通用图像编码标准的标准。其定义来处理隔行扫描和逐行扫描,并且处理标准分辨率图像和高精度图像。MPEG2由用于专业人员和消费者的广泛应用所广泛采用。根据MPEG2,可以确保高质量的高压缩率。
然而,MPEG2是适用于广播的高质量编码标准,并且不处理具有小于MPEG1的编码量的编码量的高压缩率编码。因此,考虑到对具有小于MPEG1的编码量的编码量的高压缩率编码的需要,基于MPEG4(ISO/IEC 14496-2)标准化编码方案。
设计来编码用于TV会议的图像的H26L(ITU-T Q6/16VCEG)已经标准化,并且已经将采用基于H26L的各种功能以确保更高的编码效率的编码方案标准化为通过MPEG4的动作的增强压缩视频编码的联合模型,其建立为H.264和MPEG4部分10(AVC先进视频编码)。
在基于H.264/AVC的图像编码方案中已经采用将图像帧分为多个块并且从编码帧预测运动的运动补偿。
作为这种类型的技术,例如,在JP-A-2004-241957中,在检测运动矢量中从现有帧的运动补偿块中的像素数据和参考帧的运动补偿块中的像素数据之间的差别计算简单SATD(绝对转换差的和),并且运动预测和补偿电路指定具有使用该简单SATD定义的最小估计值的运动矢量。


发明内容
然而,如上所述,在运动检测中具有比SAD(绝对差的和)更高精度的SATD更频繁地用于具有1/2像素精度和1/4像素精度的运动检测。在SATD中,使用Hadamard变换,因此与SAD相比运算量增加。因此,存在对于具有1/2像素精度和1/4像素精度的运动检测需要大的运算量的问题。
因此,存在减少伴随运动矢量检测的运算量的需要。
根据本发明的实施例,提供了一种运动矢量检测设备,包括运动预测和补偿电路,其在每一预测模式使用指示具有第一像素精度的编码效率的成本函数计算多个运动矢量的成本值,该多个运动矢量为最佳运动矢量的候选,并且使用具有第一像素精度的成本值的截面计算具有第二像素精度的最佳运动矢量和具有第二像素精度的最佳运动矢量的成本值。
因此,通过所述运动预测和补偿电路计算具有第二像素精度的最佳运动矢量的成本值。
根据本发明的另一实施例,提供了一种图像编码设备,包括编码装置,配置为通过指示编码效率的成本函数的成本值的比较,在每一预定块从多个第一预测模式和多个第二预测模式检测要提供给编码处理的最佳模式,并且以所述最佳模式编码图像数据;以及运动预测和补偿装置,配置为在每一第一预测模式计算具有第一像素精度的多个运动矢量的成本值,该多个运动矢量为最佳运动矢量的候选,并且使用具有第一像素精度的成本值的截面计算具有第二像素精度的最佳运动矢量和具有第二像素精度的最佳运动矢量的成本值。
因此,通过所述运动预测和补偿电路计算具有第二像素精度的最佳运动矢量的成本值。
根据本发明的另一实施例,提供了一种运动矢量检测设备,包括运动预测和补偿电路,其在每一预测模式使用指示具有第一像素精度的编码效率的成本函数计算多个运动矢量的成本值,该多个运动矢量为最佳运动矢量的候选,并且使用具有第一像素精度的成本值的截面或取决于具有第一像素精度的成本值的分布的成本值的梯度,计算具有第二像素精度的最佳运动矢量和具有第二像素精度的最佳运动矢量的成本值。
因此,通过使用具有第一像素精度的成本值的截面或成本值的梯度,通过所述运动预测和补偿电路计算具有第二像素精度的最佳运动矢量的成本值。
根据本发明的另一实施例,提供了一种运动矢量检测方法,包括以下步骤在每一预测模式使用指示具有第一像素精度的编码效率的成本函数计算多个运动矢量的成本值,该多个运动矢量为最佳运动矢量的候选;并且使用具有第一像素精度的成本值的截面计算具有第二像素精度的最佳运动矢量和具有第二像素精度的最佳运动矢量的成本值。
因此,通过使用具有第一像素精度的成本值的截面,通过所述运动预测和补偿电路计算具有第二像素精度的最佳运动矢量的成本值。
根据本发明的另一实施例,提供了一种程序,其指令计算机执行以下步骤在每一预测模式使用指示具有第一像素精度的编码效率的成本函数计算多个运动矢量的成本值,该多个运动矢量为最佳运动矢量的候选;并且使用具有第一像素精度的成本值的截面计算具有第二像素精度的最佳运动矢量和具有第二像素精度的最佳运动矢量的成本值。
因此,通过使用具有第一像素精度的成本值的截面,通过所述运动预测和补偿电路计算具有第二像素精度的最佳运动矢量的成本值。
根据本发明的上述配置,可能提供能够减少伴随运动矢量的检测的运算量的运动矢量检测设备、运动矢量检测方法、图像编码设备和程序。



图1是图示采用根据本发明的第一实施例的运动矢量检测设备的图像编码设备的配置的图。
图2是图示在采用根据本发明的第一实施例的运动矢量检测设备的图像编码设备中、与最佳模式的选择相关联的处理序列的流程图。
图3是图示1/2像素的安排的图。
图4是具体图示在根据本发明的第一实施例的图像编码设备中、由具有1/4像素精度的运动预测和补偿电路执行的处理序列的流程图。
图5是图示指定具有1/4像素精度的点的序列的概念图。
图6是图示计算在线(line)中安排的一组像素的平均值的序列的概念图。
图7A到7D是图示指定指示具有1/4像素精度的点的运动矢量的序列的概念图。
图8是具体图示由在根据本发明的第二实施例的图像编码设备中的1/4像素精度运动预测和补偿电路执行的处理序列的流程图。
图9A到9D是图示指定指示具有1/4像素精度的点的运动矢量作为用于通过1/2像素的SATD值的比较的运动补偿的运动矢量的序列的概念图。
图10A和10B是图示指定指示具有1/4像素精度的点的运动矢量作为用于通过1/2像素的SATD值的比较的运动补偿的运动矢量的序列的另一概念图。
图11是具体图示在根据本发明的第二实施例的图像编码设备中、由1/4像素精度运动预测和补偿电路执行的先进处理序列的流程图。
图12是具体图示在根据本发明的第二实施例的图像编码设备中、由具有1/4像素精度的运动预测和补偿电路执行的另一先进处理序列的流程图。
图13是具体图示在根据本发明的第二实施例的图像编码设备中、由具有1/4像素精度的运动预测和补偿电路执行的另一先进处理序列的流程图。
图14是具体图示在根据本发明的第二实施例的图像编码设备中、由具有1/4像素精度的运动预测和补偿电路执行的另一先进处理序列的流程图。
图15是具体图示在根据本发明的第三实施例的图像编码设备中、由1/4像素精度运动预测和补偿电路执行的处理序列的流程图。

具体实施例方式 下文中,将参照附图详细描述本发明的优选实施例(下文中,简称为“实施例”)。
在本发明的实施例中,一种运动矢量检测设备包括运动预测和补偿电路,其在每一预测模式使用指示编码效率的成本函数计算具有第一像素精度的多个运动矢量的成本值,该多个运动矢量为最佳运动矢量的候选,并且使用具有第一像素精度的成本值的截面计算具有第二像素精度的最佳运动矢量和具有第二像素精度的最佳运动矢量的成本值。这里,具有第一像素精度的成本值的截面是在预定方向的一组像素。下文中,将基于该配置进行详细描述。
第一实施例 图1示出采用根据本发明实施例的运动矢量检测设备的图像编码设备的配置。这里,示例基于AVC的图像编码设备。
图像编码设备1从多个帧内(intra)预测模式和多个帧间(inter)预测模式选择最佳预测模式,并且从图像数据减去选择的最佳预测模式中的预测值以生成差值(differential)数据。然后,通过对差值数据执行正交变换处理、量化处理、可变长度编码处理,图像编码设备通过使用帧内编码和帧间编码来编码图像数据。下文中,将详细描述其配置和操作。
如图1所示,图像编码设备1包括模拟-数字(A/D)转换电路2、图像安排切换缓冲器3、减法电路4、帧内预测电路5、作为对应于运动矢量检测设备的运动预测和补偿装置的运动预测和补偿电路6、正交变换电路7、量化电路8、比率(rate)控制电路9、可逆编码电路10、存储缓冲器11、逆量化电路12、逆正交变换电路13、去块(deblocking)滤波器14、帧存储器15以及帧内和帧间模式确定电路16。运动预测和补偿电路6包括全像素(full-pixel)精度运动补偿和检测电路61、1/2像素(half-pixel)精度运动补偿和检测电路62和1/4像素(quarter-pixel)精度运动预测和补偿电路63。A/D转换电路2、图像安排切换缓冲器3、减法电路4、帧内预测电路5、正交变换电路7、量化电路8、比率控制电路9和可逆编码电路10构成编码装置。此外,第一像素精度是例如1/2像素精度,而第二像素精度是例如1/4像素精度。
在此配置中,A/D转换电路2将视频信号SV转换为数字信号并且输出图像数据D1。图像安排切换缓冲器3接收图像数据D1,根据与编码处理相关联的GOP(图片组)结构切换图像数据D1的帧的安排,并且输出切换的图像数据。减法电路4接收从图像安排切换缓冲器3输出的图像数据D1,并且从由帧内预测电路5在帧内编码中生成的预测值生成和输出差值数据D2。通常,帧内预测电路5使用相同图像中的图像采样预测在不同位置处的图像。
另一方面,减法电路4从由运动预测和补偿电路6在帧间编码中生成的预测值生成和输出差值数据D2。
正交变换电路7接收从减法电路4输出的差值数据D2,对该数据执行如离散余弦变换(DCT)和Karhunen-Loeve变换的正交变换处理,并且输出变换系数数据D3作为处理结果。量化电路8用基于比率控制电路9的比率控制的量化比例来量化和输出变换系数数据D3。
可逆编码电路10通过可变长度编码、算术编码等对量化电路8的输出数据执行可逆编码处理,并且输出得到的数据。可逆编码电路10从帧内预测电路5和运动预测和补偿电路6获取关于与帧内编码相关联的帧内预测模式的信息和关于与帧间编码相关联的运动矢量的信息,将这种信息设置为输出数据D4的报头信息,并且输出该输出数据。帧内预测模式也称为图像间预测编码。
存储缓冲器11存储可逆编码电路10的输出数据D4,并且根据传输路径的传输速率输出存储的数据。比率控制电路9通过监视存储缓冲器11的空闲容量来监视通过编码处理生成的编码量。作为监视结果,通过改变量化电路8中的量化比例控制生成的编码量。
逆量化电路12对量化电路8的输出数据执行逆量化处理,因而再现量化电路8的输入数据。逆正交变换电路13对逆量化电路12的输出数据执行逆正交变换处理,从而再现正交变换电路7的输入数据。
去块滤波器14从逆正交变换电路13的输出数据移除块失真,并且输出得到的数据。例如,在H.264/AVC中,在将解码图像存储在帧存储器15之前,通过去块滤波器14适应性地移除块失真。
帧存储器15适当地添加由帧内预测电路5或运动预测和补偿电路6生成的预测值到去块滤波器14的输出数据,并且将得到的数据记录为参考图像信息。
运动预测和补偿电路6在基于存储在帧存储器15中的参考图像信息的预测帧(参考帧)的基础上,检测从图像安排切换缓冲器3输出的图像数据的运动矢量。运动预测和补偿电路通过使用检测的运动矢量补偿存储在帧存储器15中的参考图像信息的运动,并且检测最佳帧间预测模式。当以该帧间预测模式执行编码处理时,运动预测和补偿电路生成最佳模式中的预测图像信息,并且将基于该预测图像信息的预测值输出到减法电路4。
帧内预测电路5在帧内编码中基于存储在帧存储器15中的参考图像信息检测最佳帧内预测模式。当以该帧内预测模式执行编码处理时,帧内预测电路从最佳模式的参考图像信息生成预测图像信息的预测值,并且将生成的预测值输出到减法电路4。
以此方式,图像编码设备1通过帧间编码处理和帧内编码处理生成基于与帧间预测相关联的运动补偿的差值数据D2和基于帧内预测的差值数据D2,并且对差值数据D2执行正交变换处理、量化处理和可变长度编码处理,并且发送得到的数据。
这里,在AVC中,通过使用与AVC相关联的联合模式(AVC参考编码方案),为帧内和帧间预测模式定义基于多通编码的高质量模式(高复杂性模式)和基于单通编码的高速率模式(低复杂性模式),并且基于清晰度选择最佳模式以执行编码处理。
在低复杂性模式中,指示编码效率的成本函数通过以下表示式定义,并且通过由成本函数获得的成本值Cost(mode)的比较检测最佳模式。
Cost(mode)=SA(T)D+SA(T)D0(1) 这里,SA(T)D是原始图像和预测图像之间的差值,并且采用原始图像和预测图像之间的像素值的绝对差的和。
SA(T)D0是给到差值SA(T)D的偏移值,是基于报头位和作为用于确定模式的权重的成本(cost),并且代表要提供到附属信息传输的数据量。
更具体地,通过以下表达式为宏(macro)块表示绝对差值SAD的和,并且在预测模式Mode中采用原始图像和预测图像之间的差值。
代替从表达式(2)得到的绝对差值SAD的和,通过以下表达式获得的SATD(mode)可以用作差值的和。
这里,Hadamard()表示应用Hadamard变换矩阵到目标矩阵的Hadamard变换运算,如由以下表达式所指示的。
Hadamard(A)=HTAH(4) Hadamard变换矩阵由表达式(5)表示,其中HT是Hadamard变换矩阵的转置矩阵。
偏移值SA(T)D0在向前预测模式中由以下表达式表示。
SA(T)D0=QP0(QP)·(2×code_number_of_ref_idx_fwd+Bit_to_code_MVDFW)(6) 这里,QP0(QP)是将量化参数QP变换为量化比例(scale)的函数,MVDFW是与向前预测相关联的运动矢量,并且Bit_to_code是与该运动矢量相关联的位流的编码量。
偏移值SA(T)D0在向后预测模式中由以下表达式表示。
SA(T)D0=QP0(QP)×Bit_to_code_MVDBW(7) 这里,MVDBW是与向后预测相关联的运动矢量。
偏移值SA(T)D0在双向预测模式中由以下表达式表示。
SA(T)D0=QP0(QP)·(2×code_number_of_ref_idx_fwd+Bit_to_code_forward_Blk_size+Bit_to_code_backward_Blk_size+Bit_to_code_MVDFW+Bit_to_code_MVDBW)(8) 这里,Bit_to_code_forward_Blk_size和Bit_to_code_backward_Blk_size分别是传输关于与向前预测和向后预测相关联的运动补偿块的信息所需的位流的编码量。
在直接模式中,偏移值SA(T)D0由以下表达式表示。
SA(T)D0=-16×QP0(QP)(9) 在帧内4×4预测模式中,偏移值SA(T)D0由以下表达式表示。
SA(T)D0=24×QP0(QP)(10) 具有应用到运动矢量的检测并且由以下表达式表示的最小成本值Cost的运动矢量从成本函数检测。
Cost=SA(T)D+SA(T)D0 SA(T)D0=QP0(QP)·(Bits_to_code_vector+2×code_number_of_ref_index_fwd)(11) 因此,在低复杂性模式中检测最佳模式时,编码设备1的帧内预测电路5和运动预测和补偿电路6使用亮度信号计算帧内编码和帧间编码的所有预测模式的成本值Cost。编码设备选择具有最低成本值Cost的预测模式,并且检测亮度信号的最佳模式。因此,当选择帧内编码时,计算帧内预测模式中色差信号的成本值,并且通过比较计算结果将基于最低成本值的帧内预测模式设为色差信号的最佳模式。
用于使用成本函数选择预测模式的各种装置在例如JP-A-2003-230149中公开。
因此,通过基于成本函数的成本值的比较,从多个帧内预测模式和多个帧间预测模式检测要提供给编码处理的最佳模式的图像编码设备具有例如以下操作,所示成本函数代表每一宏块的编码效率和最佳模式中的编码图像数据。
也就是说,在每一预测模式使用指示具有第一像素精度的编码效率的成本函数计算作为最佳运动矢量的候选的多个运动矢量的成本值,并且使用具有第一像素精度的成本值的截面(profile)计算具有第二像素精度的最佳运动矢量和具有第二像素精度的最佳运动矢量的成本值。这里,具有第一像素精度的成本值的截面是预定方向上的一组像素。第一预测模式是帧间预测模式,第二预测模式是帧内预测模式,第一像素精度是1/2像素精度,而第二像素精度是1/4像素精度。
下文中,将参照图2中所示的流程图,描述在采用根据本发明实施例的运动矢量检测设备的图像编码设备中选择最佳模式的处理序列。
当序列开始时(SA1),运动预测和补偿电路6在作为候选的所有帧内预测模式中(SA2)使用全像素精度运动补偿和检测电路61计算全像素的成本值Cost(SA3)。此时,通过使用表达式(2)和(3)计算作为具有全像素精度候选的运动矢量的SA(T)D。例如,当搜索具有全像素精度的垂直方向上100和水平方向上100的范围时,执行SA(T)D的运算100×100次。使用SA(T)D从表达式(11)计算成本值Cost,并且计算具有最低成本值的运动矢量(SA3)。
1/2像素精度运动补偿和检测电路62补偿在具有全像素精度的最低成本值Cost的运动矢量周围的、作为具有1/2像素精度的点的候选的运动矢量的运动(SA4)。也就是说,具有1/2像素精度的9个点是作为候选的运动矢量,例如如图3所示。在此情况下,使用6抽头(6-tap)FIR滤波器准备具有1/2像素精度点的像素。
随后,计算各个1/2像素点的SA(T)D和成本值Cost(SA5)。
然后,1/4像素精度运动预测和补偿电路63从具有1/2像素精度的SA(T)D和成本值Cost预测具有1/4像素精度的最佳运动矢量,并且通过预测计算其SA(T)D和成本值Cost(SA6)。随后将描述其细节。
随后,运动预测和补偿电路6计算直接模式中的成本值Cost(SA7)。帧内预测电路5计算所有帧内模式中的成本值Cost(SA8)。通过从在帧间预测模式、直接模式和帧内预测模式中计算的成本值Cost选择具有最小成本值的模式,确定最佳模式(SA9)。然后,结束序列(SA10)。直接模式概念上包括时间直接模式和空间直接模式。
将参照图4中所示的流程图,详细描述由根据本发明第一实施例的图像编码设备的1/4像素精度运动预测和补偿电路63执行的处理的序列。
下文中,具有1/2像素精度的成本值Cost称为Cost_half,而具有1/4像素精度的成本值Cost称为Cost_quarter。在图4所示的序列中,从Cost_half得到具有1/4像素精度的运动矢量的SA(T)D和Cost_quarter。
当序列开始时(SC1),例如,从具有Cost_half的最小值的点分别形成平行于x轴和y轴的3个点的组,如图5所示。也就是说,在图5所示的示例中,由在x轴方向上由参考标号101、102和103表示的点形成组201,而由在y轴方向上由参考标号101、104和105表示的点形成组202。换句话说,分别通过在某一方向的一组像素和另一方向的一组像素形成各组。
例如,如图6所示,可以在SC2计算在x轴方向水平安排的3个点的平均值S4、S5和S6,以及在y轴方向垂直安排的3个点的平均值S1、S2和S3。
然后,比较在各线中安排的3个点(SC3)的SATD值。也就是说,首先比较平行于x轴的线中3个点的SATD值。在图5中所示的示例中,比较由参考标号101到103表示的各点的SATD值。确定是否中心点102具有最小SATD值(SC4)。当确定结果为是(中心)时,将中心点指定为该线中的运动矢量(SC7)。
也就是说,如图7A所示,当点301到303的中心点302具有最小SATD值时,将点302指定为该线中的运动矢量(图中的参考标号304)。
当SC4的确定为否时,确定是否中心点具有第二小SATD值,最小SATD值和第二小SATD值之间的差是否小,以及第二小SATD值和第三小SATD值之间的差是否大(SC5)。当确定结果为是(内部qpel)时,将具有最小值的点和具有第二小值的点的中间点指定为具有1/4像素精度的线中的运动矢量(SC8)。
也就是说,如图7B所示,当在点305到307之中点305和点306之间的SATD值的差A1小,而点306和点307之间的SATD值的差A2大时,将点305和306的中间点308指定为该线中的运动矢量。
当SC5的确定结果为否时,确定是否中心点具有第二小SATD值,以及最小SATD值和第二小SATD值之间的差是否基本等于第二小SATD值和第三小SATD值之间的差(SC6)。当确定结果为是(Halfpel)时,将具有最小SATD值的点指定为具有1/4像素精度的线中的运动矢量(SC9)。
也就是说,如图7C所示,当中心点310具有第二小SATD值并且点309和点310之间SATD值的差A3基本等于点310和点311之间SATD值的差A4时,将具有最小SATD值的点309指定为该线中的运动矢量(图中参考标号312)。
当SC6的确定结果为否时,具有最小SATD值的点和具有第二小SATD值的点之间SATD值的差大,而中心点和另一点(另一端)之间SATD值的差小,将存在于从具有第二小值的点到具有最小值的点的延长线中具有1/4像素精度的点指定为该线中的运动矢量(SC10)。
也就是说,如图7D所示,当具有最小SATD值的点313和中心点314之间SATD值的差A5大,而中心点314和另一端点315之间SATD值的差A6小时,将存在于从具有第二小值的点314到具有最小值的点313的延长线中的点316指定为该线中的运动矢量。换句话说,将取决于点313和点314的梯度(gradient)确定的点316指定为具有1/4精度的运动矢量。
随后,如图5所示,例如,获得在线204中预测的具有1/4像素精度的点106和在线103中预测的具有1/4像素精度的点107,并且从线中具有1/4像素精度的运动矢量确定垂直于该线的线(候选1/4像素线205)(SC11)。对平行于y轴的线执行SATD值的比较以确定候选1/4像素线206(SC4到SC11)。
以此方式,将候选1/4像素线205和206相互交叉的点108指定为具有1/4像素精度的运动矢量,并且从9个点的SATD值的梯度指定其SATD值以获得成本值Cost(SC13)。然后,一系列处理结束。
也可以采用SC7到SC10的确定的组合。也就是说,可以采用下面描述的(a)到(d)的任何组合。
(a)在检测具有1/2像素精度的运动中,基于SAD值或SATD值选择位于具有1/2像素精度的线中的至少三个点,SAD值是绝对预测差的和,SATD是通过对预测差执行Hadamard变换获得的绝对值的和,当中心点具有最小SAD或SATD值时,将指示具有1/2像素精度的最小SAD或SATD值的点的运动矢量指定为该线中具有1/4像素精度的运动矢量,并且使用具有1/4像素精度的最小SAD或SATD值作为该运动矢量的SAD或SATD值,计算该运动矢量的成本值(中心)。
(b)在检测具有1/2像素精度的运动中,基于SAD值或SATD值选择位于具有1/2像素精度的线中的至少三个点,SAD值是绝对预测差的和,SATD是通过对预测差执行Hadamard变换获得的绝对值的和,当端点具有最小SAD或SATD值,中心点具有第二小SAD或SATD值,并且最小SAD或SATD值和第二小SAD或SATD值之间的差小,以及第二小SAD或SATD值和第三小SAD或SATD值之间的差大时,将指示具有最小SAD或SATD值的点和具有第二小SAD或SATD值之间的中间点的运动矢量指定为该线中具有1/4像素精度的运动矢量,并且基于最小、第二小和第三小SAD或SATD值的关系,使用该运动矢量的SAD或SATD值计算运动矢量的成本值(内部qpel)。
(c)在检测具有1/2像素精度的运动中,基于SAD值或SATD值选择位于具有1/2像素精度的线中的至少三个点,SAD值是绝对预测差的和,SATD是通过对预测差执行Hadamard变换获得的绝对值的和,当端点具有最小SAD或SATD值、中心点具有第二小SAD或SATD值,并且最小SAD或SATD值和第二小SAD或SATD值之间的差基本等于第二小SAD或SATD值和第三小SAD或SATD值之间的差时,将指示具有第二小SAD或SATD值的点的运动矢量指定为该线中具有1/4像素精度的运动矢量,并且使用第二小SAD或SATD值作为运动矢量的SAD或SATD值,计算该运动矢量的成本值(Halfpel)。
(d)在检测具有1/2像素精度的运动中,基于SAD值或SATD值选择位于具有1/2像素精度的线中的至少三个点,SAD值是绝对预测差的和,SATD是通过对预测差执行Hadamard变换获得的绝对值的和,当端点具有最小SAD或SATD值,具有最小SAD或SATD值的端点和中心点之间SAD或SATD值的差大,并且中心点和另一端点之间SAD或SATD值的差小时,将指示存在于从具有第二小SAD或SATD值的点到具有最小SAD或SATD值的点的延长线中的具有1/4像素精度的运动矢量指定为用于运动补偿的运动矢量,并且基于最小、第二小和第三小SAD或SATD值的关系,使用该运动矢量的SAD或SATD值计算该运动矢量的成本值(外部qpel)。
全部(a)到(d)的组合是最有效的。(a)+(b)+(c)、(a)+(b)和(a)的组合以该顺序变得较低效。当不满足条件时,具有1/2像素精度的最佳点可以用作具有1/4像素精度的点。
如上面详细所述,根据本发明的第一实施例,通过使用1/4像素精度运动预测和补偿单元可以大大减少SA(T)D运算的数目,从而减少循环(cycle)的数目和硬件规模的数目。因为从具有1/2像素精度的运动补偿和检测的结果计算具有1/4像素精度的运动矢量、SA(T)D值和成本值,所以不需要为1/4像素的运动检测准备具有1/4像素精度的像素,并且可能减少需要的存储器容量设备。
第二实施例 根据本发明第二实施例的图像编码设备用于通过比较指示编码效率的成本函数的成本值,在每一预定块从多个第一预测模式和多个第二预测模式检测要提供给编码处理的最佳模式,并且以最佳模式编码图像数据。
图像编码设备包括运动预测和补偿电路,配置来在每个第一预测模式计算具有第一像素精度的多个运动矢量的成本值,所述多个运动矢量是最佳运动矢量的候选,并且基于成本值的梯度计算具有第二像素精度的最佳运动矢量和具有第二像素精度的最佳运动矢量的成本值。
替代地,图像编码设备包括运动预测和补偿电路,配置来在每个第一预测模式计算具有第一像素精度的多个运动矢量的成本值,所述多个运动矢量是最佳运动矢量的候选,并且基于最高N个成本值的优先级(priority)计算具有第二像素精度的最佳运动矢量和具有第二像素精度的最佳运动矢量的成本值,其中区分了具有第一像素精度的各成本值的优先级。
替代地,图像编码设备包括运动预测和补偿电路,配置来在每个第一预测模式计算具有第一像素精度的多个运动矢量的成本值,所述多个运动矢量是最佳运动矢量的候选,并且基于来自具有第一像素精度的成本值中的最低成本值的三个成本值的优先级,计算具有第二像素精度的最佳运动矢量和具有第二像素精度的最佳运动矢量的成本值。
这里,第一像素精度可以是粗糙的像素精度,而第二像素精度可以是比第一像素精度精确的像素精度。
因为根据本发明第二实施例的图像编码设备的配置与上述第一实施例(图1)相同,所以省略其重复描述,并且相同的参考编号表示相同的元件。使用与图1所示相同的配置,根据第二实施例的图像编码设备执行以下操作。
-1/4像素精度运动预测和补偿电路63在每个帧间预测模式计算具有1/2像素精度的多个运动矢量的成本值,该多个运动矢量作为最佳运动矢量的候选,并且基于各成本值的梯度计算具有1/4像素精度的最佳运动矢量和具有1/4像素精度的最佳运动矢量的成本值。
-1/4像素精度运动预测和补偿电路63在每个帧间预测模式计算具有1/2像素精度的多个运动矢量的成本值,该多个运动矢量作为最佳运动矢量的候选,并且基于最高N个成本值的优先级计算具有1/4像素精度的最佳运动矢量和具有1/4像素精度的最佳运动矢量的成本值,其中区分了具有第一像素精度的各成本值的优先级。
-1/4像素精度运动预测和补偿电路63在每个帧间预测模式计算具有1/2像素精度的多个运动矢量的成本值,该多个运动矢量作为最佳运动矢量的候选,并且基于来自具有1/2像素精度的成本值中的最低成本值的三个成本值的优先级,计算具有1/4像素精度的最佳运动矢量和具有1/4像素精度的最佳运动矢量的成本值。
将参照图8中示出的流程图,详细描述由根据本发明的第二实施例的图像编码设备的1/4像素精度运动预测和补偿电路63执行的处理的序列。
下文中,具有1/2像素精度的成本值Cost称为Cost_half,而具有1/4像素精度的成本值Cost称为Cost_quarter。在图8所示的序列中,从Cost_half得到具有1/4像素精度的运动矢量的SA(T)D和Cost_quarter。
也就是说,当序列开始时(SB1),1/4像素精度运动预测和补偿电路63首先确定具有Cost_half的最小值的点的绝对值是否明显小(SB2)。当SB2的确定结果为是时,将具有Cost_half的最小值的点指定为具有1/4像素精度的运动矢量,将1/2像素的最小SATD值设置为该运动矢量的SATD值,并且使用最小点的SATD值计算成本值Cost_quarter(SB7)。
当SB2的确定结果为否时,确定具有Cost_half的最小值的点的SATD值是否明显小于具有Cost_half的第二小值的点的SATD值(SB3)。这里,当确定结果为是时,将具有Cost_half的最小值的点指定为具有1/4像素精度的运动矢量,将1/2像素的最小SATD值设置为该运动矢量的SATD值,并且使用具有最小值的点的SATD值计算成本值Cost_quarter(SB7),类似于作为之前确定结果的处理。
也就是说,例如,如图9A所示,当作为两个点Best1和Best2的比较结果,Best1的SATD比率(或差的绝对值)非常小时,将Best1的位置(也就是说,具有1/2像素精度的最佳位置)输出为具有1/4像素精度的运动矢量,并且使用具有最小值的点的SATD值计算Cost_quarter。这里“非常小”意味着Best1的绝对值是770等的情况。
当SB3的确定结果为否时,确定具有Cost_half的最小值的点的SATD值和具有Cost_half的第二小值的点的SATD之间的差是否小,并且具有第二小值的点的SATD值和具有第三小值的点的SATD是否相互接近(之间的差小)(SB4)。这里,当确定结果为是时,将具有Cost_half的最小值的点的SATD值指定为具有1/4像素精度的运动矢量的SATD值,并且使用具有最小值的点的SATD值计算成本值Cost_quarter(SB7),类似于作为之前确定结果的处理。
也就是说,例如,如图9B所示,当作为三个点Best1到Best3的比较结果,Best1和Best2的SATD比率小,并且Best2和Best3的SATD值相互接近(之间的差小),将Best1的位置输出为具有1/4像素精度的运动矢量,并且使用具有最小值的点的SATD值计算Cost_quarter。这里,“Best1和Best2的SATD比率小”意味着比率为0.8等的情况,而“Best2和Best3之间的差小”意味着差等于或小于1000等的情况。
当SB4的确定为否时,确定具有Cost_half的最小值的点的值是否接近于具有第二小值的点的值,并且具有第二小值的点的值和具有第三小值的点的值之间的差是否小(SB5)。这里,当确定结果为是时,将具有最小值的点和具有第二小值的点之间的中间点指定为具有1/4像素精度的运动矢量,并且基于具有第二小和第三小值的点的SATD值的梯度,通过预测1/4像素的SATD值计算Cost_quarter的值(SB8)。
也就是说,如图9C所示,作为例如三个点Best1到Best3的比较结果,当Best1和Best2的SATD值相互接近(其比率或差小等)并且Best2的SATD值远小于Best3的SATD值(其比率或差小等)时,将Best1和Best2之间的中间点输出为具有1/4像素精度的运动矢量,并且使用具有最小值的点的SATD值计算Cost_quarter。从Best2和Best3的梯度计算SATD值。
这里。“Best1和Best2的比率小”意味着比率为0.9等的情况,而“Best2和Best3的比率小”意味着比率为0.99等的情况。“Best1和Best2之间的差小”意味着差为500等的情况,而“Best2和Best3之间的差小”意味着差为250等的情况。
当SB5的确定结果为否时,其对应于其中具有Cost_half的最小值的点的SATD值、具有第二小值的点的SATD值和具有第三小值的点的SATD值相互接近的情况(比率或差小等)。此时,确定具有最小值的点、具有第二小值的点和具有第三小值的点是否在线中以此顺序排列(SB6)。当SB6的确定结果为是时,例如,将位于从具有第二小值的点到具有最小值的点的延长线中的1/4像素点指定为具有1/4像素精度的运动矢量,从具有最小值的点和具有第二小值的点的SATD值的梯度预测1/4像素的SATD值,并且计算Cost_quarter的值(SB9)。
也就是说,如图9D所示,作为例如三个点Best1到Best3的比较结果,当Best1和Best2的SATD值相互接近(其比率或差小等)并且Best2和Best3的SATD值相互接近(其比率或差小等)时,确定三个点是否排列在线中。
如图10A所示,当确定点排列在线中时,例如,将不同于点Best1到Best3的点(例如,外部插入点)输出为具有1/4像素精度的运动矢量,并且使用具有最小值的点的SATD值计算Cost_quarter的值。
这里,“Best1和Best2的比率小”意味着比率为0.99等的情况,而“Best2和Best3的比率小”意味着比率为0.9等的情况。Best1和Best2之间的差小”意味着差为250等的情况,而“Best2和Best3之间的差小”意味着差为500等的情况。
当SB6的确定结果为否时,将指示位于具有Cost_half的最小值的点、具有第二小值的点和具有第三小值的点的中间、具有1/4像素精度的运动矢量指定为具有1/4像素精度的运动矢量,从具有最小值和第二小值的点的SATD值的梯度预测1/4像素的SATD值,并且计算Cost_quarter的值。
也就是说,如图9D所示,作为例如三个点Best1到Best3的比较结果,当Best1和Best2的SATD值相互接近(其比率或差小等)并且Best2和Best3的SATD值相互接近(其比率或差小等)时,确定三个点是否排列在线中。
这里,“Best1和Best2的比率小”意味着比率为0.99等的情况,而“Best2和Best3的比率小”意味着比率为0.9等的情况。Best1和Best2之间的差小”意味着差为250等的情况,而“Best2和Best3之间的差小”意味着差为250等的情况。
如图10B所示,当点没有排列在线中而是相互重叠时,将点Best1到Best3的中间点输出为具有1/4像素精度的运动矢量,并且使用具有最小值的点的SATD值计算Cost_quarter的值。
以此方式,一系列处理结束(SB11)。
通过任意地组合SB7到SB10的处理,可以从具有1/2像素精度的成本值计算具有1/4像素精度的运动矢量和具有1/4像素精度的运动矢量SATD值和成本值。
也就是说,通过组合下面描述的(A)到(E)的一些,可能从具有1/2像素精度的成本值计算具有1/4像素精度的运动矢量和具有1/4像素精度的运动矢量SATD值和成本值。
(A)当1/2像素的最小SAD或SATD值的绝对值小或当1/2像素的最小SAD或SATD值远小于第二小SAD或SATD值时,将指示具有最小SAD或SATD值的点的运动矢量指定为要用于运动补偿的运动矢量。然后,使用1/2像素的最小SAD或SATD值作为运动矢量的SAD或SATD值,计算运动矢量的成本值。
(B)当1/2像素的最小SAD或SATD值小于第二小SAD或SATD值,并且第二小SAD或SATD值和第三小SAD或SATD值之间的差小时,将指示具有最小SAD或SATD值的点的运动矢量指定为要用于运动补偿的运动矢量。然后,使用1/2像素的最小SAD或SATD值作为运动矢量的SAD或SATD值,计算运动矢量的成本值。
(C)当1/2像素的最小SAD或SATD值和第二小SAD或SATD值之间的差小,并且第二小SAD或SATD值和第三小SAD或SATD值之间的差大时,将指示具有最小SAD或SATD值的点和具有第二小SAD或SATD值的点之间的中间点的运动矢量指定为要用于运动补偿的运动矢量。然后,从三个点的SAD或SATD值的关系计算运动矢量的SAD或SATD值,并且计算运动矢量的成本值。
(D)当1/2像素的最小SAD或SATD值和第二小SAD或SATD值之间的差小,第二小SAD或SATD值和第三小SAD或SATD值之间的差小,并且具有最小SAD或SATD值的点、具有第二小SAD或SATD值的点和具有第三小SAD或SATD值的点以此顺序排列在线中时,将指示位于从具有第二小SAD或SATD值的点到具有最小SAD或SATD值的点的延长线中的、具有1/4像素精度的点的运动矢量指定为要用于运动补偿的运动矢量。然后,从三个点的SAD或SATD值的关系计算要用于运动补偿的运动矢量的SAD或SATD值,并且计算运动矢量的成本值。
(E)当1/2像素的最小SAD或SATD值和第二小SAD或SATD值之间的差小,第二小SAD或SATD值和第三小SAD或SATD值之间的差小,并且具有最小SAD或SATD值的点、具有第二小SAD或SATD值的点和具有第三小SAD或SATD值的点没有排列在线中时,将指示位于具有最小SAD或SATD值的点、具有第二小值的点和具有第三小值的点的中间的、具有1/4像素精度的点的运动矢量指定为要用于运动补偿的运动矢量。然后,从三个点的SAD或SATD值的关系计算要用于运动补偿的运动矢量的SAD或SATD值,并且计算运动矢量的成本值。
全部(A)到(E)的组合是最有效的。(A)+(B)+(C)+(D)、(A)+(B)+(C)、(A)+(B)和(A)的组合以该顺序变得较低效。然而,本发明不限于这些组合。当不满足条件时,具有1/2像素精度的最佳点可以用作具有1/4像素精度的点。
图11示出当采用(A)+(B)+(C)+(D)的组合时的处理序列的流程图。相同的参考标号表示图8中相同的处理,并且省略重复描述。当SB6的确定结果为否时,该序列结束(SB11)。
图12示出当采用(A)+(B)+(C)的组合时的处理序列的流程图。相同的参考标号表示图8中相同的处理,并且省略重复描述。当SB5的确定结果为否时,该序列结束(SB11)。
图13示出当采用(A)+(B)的组合时的处理序列的流程图。相同的参考标号表示图8中相同的处理,并且省略重复描述。当SB4的确定结果为否时,该序列结束(SB11)。
图14示出当采用(A)的组合时的处理序列的流程图。相同的参考标号表示图8中相同的处理,并且省略重复描述。当SB3的确定结果为否时,该序列结束(SB11)。
如上面详细所述,根据本发明的第二实施例,通过使用1/4像素精度运动预测和补偿单元可以极大减少SATD运算的数目,从而减少循环的数目和硬件规模的数目。
因为从具有1/2像素精度的运动补偿和检测的结果计算具有1/4像素精度的运动矢量、SA(T)D值和成本值,所以不需要为1/4像素的运动检测准备具有1/4像素精度的像素,并且可能减少需要的存储器容量设备。
第三实施例 在本发明的第三实施例中,组合了第一实施例和第二实施例。
也就是说,如图15的流程图所示,当序列开始时(SD1),例如,从具有Cost_half的最小值的点形成分别平行于x轴和y轴的三个点的组(SD2)。换句话说,由在某一方向的一组像素和在另一方向的一组像素分别形成组。
随后,比较在各条线中排列的三个点的SATD值。首先,比较在平行于x轴的线中排列的三个点的SATD值。然后,确定中心点102是否具有最小SATD值(SD3)。当具有1/2像素精度的最小SA(T)D值的点是中心点时,运动预测和补偿电路根据图8中示出的处理的序列,使用成本值的梯度计算具有1/4像素精度的最佳运动矢量和1/4像素精度的最佳运动矢量的成本值(SD4)。
当具有最小SATD值的点不是中心点时,运动预测和补偿电路根据图4中示出的处理的序列,使用具有1/2像素精度的成本值的截面计算具有1/4像素精度的最佳运动矢量和1/4像素精度的最佳运动矢量的成本值(SD4)。以此方式,该系列处理结束(SD6)。
尽管已经参照各实施例描述了本发明,但是本发明不限于各实施例,并且可以以各种形式修改而不背离本发明的要旨。
例如,1/4像素精度运动预测和补偿电路可以包括使用指示噪声水平、像素的变化值和平均值、以及相邻块的运动矢量的指针(indicator)计算具有1/4像素精度的运动矢量的预测电路。
尽管在上述实施例中已经示例了成本值Cost、SAD和SATD,但是本发明不限于实施例的那些,并且可以采用MAE(平均绝对误差)。
这里,MAE是绝对误差ei=fi-yi的加权平均值。在上面的表达式中,fi代表预测值,而yi代表真实值。
根据本发明实施例的算法可以应用到使用运动检测的NR(噪声减小)设备(如时间滤波器)。在此情况下,检测运动矢量,并且计算成本值和运动矢量。然后,取决于成本值Cost适应性地改变时间滤波器的强度,并且使用帧作为输入执行滤波操作,从而获得从其移除噪声的帧。
本申请包含涉及于2008年7月15日向日本专利局提交的日本优先权专利申请JP2008-184041中公开的主题,在此通过引用并入其全部内容。
本领域的技术人员应该理解,取决于设计要求和其他因素,可以出现各种修改、组合、子组合和替换,只要他们在权利要求及其等价物的范围内。
权利要求
1.一种运动矢量检测设备,包括
运动预测和补偿电路,其在每一预测模式使用指示具有第一像素精度的编码效率的成本函数计算多个运动矢量的成本值,该多个运动矢量为最佳运动矢量的候选,并且使用具有第一像素精度的成本值的截面计算具有第二像素精度的最佳运动矢量和具有第二像素精度的最佳运动矢量的成本值。
2.如权利要求1所述的运动矢量检测设备,其中具有第一像素精度的成本值的截面是在预定方向上的一组像素。
3.一种图像编码设备,包括
编码装置,通过指示编码效率的成本函数的成本值的比较,在每一预定块从多个第一预测模式和多个第二预测模式检测要提供给编码处理的最佳模式,并且以所述最佳模式编码图像数据;以及
运动预测和补偿装置,用于在每一第一预测模式计算具有第一像素精度的多个运动矢量的成本值,该多个运动矢量为最佳运动矢量的候选,并且使用具有第一像素精度的成本值的截面计算具有第二像素精度的最佳运动矢量和具有第二像素精度的最佳运动矢量的成本值。
4.如权利要求3所述的图像编码设备,其中具有第一像素精度的成本值的截面是在预定方向上的一组像素。
5.如权利要求3所述的图像编码设备,其中所述第一预测模式是帧间预测模式,所述第二预测模式是帧内预测模式,所述第一像素精度是1/2像素精度,并且所述第二像素精度是1/4像素精度。
6.如权利要求3所述的图像编码设备,其中所述第二像素精度比所述第一像素精度精确。
7.如权利要求5所述的图像编码设备,其中所述运动预测和补偿装置在检测具有第一像素精度的运动中,基于SAD值或SATD值选择位于具有第一像素精度的线中的至少三个点,所述SAD值是绝对预测差的和,所述SATD是通过对预测差执行Hadamard变换获得的绝对值的和,当中心点具有最小SAD或SATD值时,将指示具有第一像素精度的最小SAD或SATD值的点的运动矢量指定为线中具有第二像素精度的运动矢量,并且使用具有第二像素精度的最小SAD或SATD值作为所述运动矢量的SAD或SATD值,计算所述运动矢量的成本值。
8.如权利要求5所述的图像编码设备,其中所述运动预测和补偿装置在检测具有第一像素精度的运动中,基于SAD值或SATD值选择位于具有第一像素精度的线中的至少三个点,所述SAD值是绝对预测差的和,所述SATD是通过对预测差执行Hadamard变换获得的绝对值的和,当端点具有最小SAD或SATD值、中心点具有第二小SAD或SATD值、最小SAD或SATD值和第二小SAD或SATD值之间的差小、并且第二小SAD或SATD值和第三小SAD或SATD值之间的差大时,将指示具有最小SAD或SATD值的点和具有第二小SAD或SATD值之间的中间点的运动矢量指定为线中具有第二像素精度的运动矢量,并且基于最小、第二小和第三小SAD或SATD值的关系,使用所述运动矢量的SAD或SATD值计算所述运动矢量的成本值。
9.如权利要求5所述的图像编码设备,其中所述运动预测和补偿装置在检测具有第一像素精度的运动中,基于SAD值或SATD值选择位于具有第一像素精度的线中的至少三个点,所述SAD值是绝对预测差的和,所述SATD是通过对预测差执行Hadamard变换获得的绝对值的和,当端点具有最小SAD或SATD值、中心点具有第二小SAD或SATD值、并且最小SAD或SATD值和第二小SAD或SATD值之间的差基本等于第二小SAD或SATD值和第三小SAD或SATD值之间的差时,将指示具有第二小SAD或SATD值的点的运动矢量指定为线中具有第二像素精度的运动矢量,并且使用第二小SAD或SATD值作为运动矢量的SAD或SATD值,计算所述运动矢量的成本值。
10.如权利要求5所述的图像编码设备,其中所述运动预测和补偿装置在检测具有第一像素精度的运动中,基于SAD值或SATD值选择位于具有第一像素精度的线中的至少三个点,所述SAD值是绝对预测差的和,所述SATD是通过对预测差执行Hadamard变换获得的绝对值的和,当端点具有最小SAD或SATD值、所述端点和中心点之间的SAD或SATD值的差大、并且所述中心点和另一端点之间的SAD或SATD值的差小时,将指示存在于从具有第二小SAD或SATD值的点到具有最小SAD或SATD值的点的延长线中的、具有第二像素精度的点的运动矢量指定为用于运动补偿的运动矢量,并且基于最小、第二小和第三小SAD或SATD值的关系,使用所述运动矢量的SAD或SATD值计算所述运动矢量的成本值。
11.如权利要求5所述的图像编码设备,其中所述运动预测和补偿装置分别选择两组的存在于具有第一像素精度的各线中的至少三个点,以便相互垂直,计算各线中具有第二像素精度的运动矢量的点和成本值,将其中从具有第二像素精度的运动矢量的点绘制的要垂直于所述各线的各线相互交叉的点指定为具有第二像素精度的运动矢量,并且基于线中具有第二像素精度的运动矢量的点的SAD或SATD值,使用具有第二像素精度的运动矢量的SAD或SATD值计算运动矢量的成本值,所述SAD值是绝对预测差的和,所述SATD值是通过对预测差执行Hadamard变换获得的。
12.如权利要求5所述的图像编码设备,其中所述运动预测和补偿装置包括预测电路,其选择两组的存在于具有第一像素精度的线中的至少三个点,以便相互垂直,使得各线在SAD或SATD值是最小的点相互垂直,所述SAD值是具有第一像素精度的绝对预测差的和,所述SATD值是通过对预测差执行Hadamard变换获得的。
13.如权利要求5所述的图像编码设备,其中所述运动预测和补偿装置取具有第一像素精度的相同x值的三个点的平均以获得X1、X2和X3,取具有相同y值的三个点的平均以获得Y1、Y2和Y3,使用在(X1、X2、X3)和(Y1、Y2、Y3)的预定确定条件,分别计算线中具有第二像素精度的运动矢量的点和成本值,将其中从具有第二像素精度的运动矢量的点绘制的要垂直于所述各线的各线相互交叉的点指定为具有第二像素精度的运动矢量,并且基于线中具有第二像素精度的运动矢量的点的SAD或SATD值,使用具有第二像素精度的运动矢量的SAD或SATD值计算运动矢量的成本值,所述SAD值是绝对预测差的和,所述SATD值是通过对预测差执行Hadamard变换获得的。
14.一种运动矢量检测设备,包括
运动预测和补偿电路,其在每一预测模式使用指示具有第一像素精度的编码效率的成本函数计算多个运动矢量的成本值,该多个运动矢量为最佳运动矢量的候选,并且取决于具有第一像素精度的成本值的分布,使用具有第一像素精度的成本值的截面或成本值的梯度,计算具有第二像素精度的最佳运动矢量和具有第二像素精度的最佳运动矢量的成本值。
15.如权利要求14所述的运动矢量检测设备,其中当具有最小SATD值的点是排列的像素的中心时,所述运动预测和补偿电路使用成本值的梯度计算具有第二像素精度的最佳运动矢量和具有第二像素精度的最佳运动矢量的成本值,所述SATD值是通过对预测差执行Hadamard变换获得的,并且当具有最小SAD或SATD值的点不是中心时,使用具有第一像素精度的成本值的截面或成本值的梯度计算具有第二像素精度的最佳运动矢量和具有第二像素精度的最佳运动矢量的成本值。
16.一种运动矢量检测方法,包括以下步骤
在每一预测模式使用指示具有第一像素精度的编码效率的成本函数计算多个运动矢量的成本值,该多个运动矢量为最佳运动矢量的候选;并且
使用具有第一像素精度的成本值的截面计算具有第二像素精度的最佳运动矢量和具有第二像素精度的最佳运动矢量的成本值。
17.一种程序,其指令计算机执行以下步骤
在每一预测模式使用指示具有第一像素精度的编码效率的成本函数计算多个运动矢量的成本值,该多个运动矢量为最佳运动矢量的候选;并且
使用具有第一像素精度的成本值的截面计算具有第二像素精度的最佳运动矢量和具有第二像素精度的最佳运动矢量的成本值。
18.一种图像编码设备,包括
编码单元,配置为通过指示编码效率的成本函数的成本值的比较,在每一预定块从多个第一预测模式和多个第二预测模式检测要提供给编码处理的最佳模式,并且以所述最佳模式编码图像数据;以及
运动预测和补偿单元,配置为在每一第一预测模式计算具有第一像素精度的多个运动矢量的成本值,该多个运动矢量为最佳运动矢量的候选,并且使用具有第一像素精度的成本值的截面计算具有第二像素精度的最佳运动矢量和具有第二像素精度的最佳运动矢量的成本值。
全文摘要
一种运动矢量检测设备,包括运动预测和补偿电路,其在每一预测模式使用指示具有第一像素精度的编码效率的成本函数计算作为最佳运动矢量的候选的多个运动矢量的成本值,并且使用具有第一像素精度的成本值的截面计算具有第二像素精度的最佳运动矢量和具有第二像素精度的最佳运动矢量的成本值。
文档编号H04N7/26GK101631245SQ200910139939
公开日2010年1月20日 申请日期2009年7月15日 优先权日2008年7月15日
发明者小鹰直彦, 中里宗弘 申请人:索尼株式会社, 索尼电子公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1