CN105379268A - 在视频编码中适应鲁棒性 - Google Patents

在视频编码中适应鲁棒性 Download PDF

Info

Publication number
CN105379268A
CN105379268A CN201480018916.8A CN201480018916A CN105379268A CN 105379268 A CN105379268 A CN 105379268A CN 201480018916 A CN201480018916 A CN 201480018916A CN 105379268 A CN105379268 A CN 105379268A
Authority
CN
China
Prior art keywords
frame
distortion
image section
estimation
encoding
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
CN201480018916.8A
Other languages
English (en)
Inventor
D.赵
S.尼基富罗夫
K.霍夫鲍尔
M.亨门多夫
P.卡尔松
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.)
Microsoft Technology Licensing LLC
Original Assignee
Microsoft Technology Licensing LLC
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 Microsoft Technology Licensing LLC filed Critical Microsoft Technology Licensing LLC
Publication of CN105379268A publication Critical patent/CN105379268A/zh
Pending legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/146Data rate or code amount at the encoder output
    • H04N19/147Data rate or code amount at the encoder output according to rate distortion criteria
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/103Selection of coding mode or of prediction mode
    • 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/12Selection from among a plurality of transforms or standards, e.g. selection between discrete cosine transform [DCT] and sub-band transform or selection between H.263 and H.264
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/167Position within a video image, e.g. region of interest [ROI]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/189Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the adaptation method, adaptation tool or adaptation type used for the adaptive coding
    • H04N19/19Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the adaptation method, adaptation tool or adaptation type used for the adaptive coding using optimisation based on Lagrange multipliers

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Physics & Mathematics (AREA)
  • Discrete Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)

Abstract

输入接收包括多个帧的视频信号,每个帧包括多个图像部分。图像部分的每一个由编码器来编码以便生成编码的信号。适应模块选择被用来对图像部分的每一个进行编码的相应的编码模式。所述选择基于将针对如果使用所述相应的编码模式所编码的所述图像部分的失真的估计与通过对使用所相应的编码模式的所述图像部分进行编码所将要引入的比特率进行平衡的过程。所述适应模块也被配置来在视频信号中的一个或多个帧的每一个中确定具有不同感知显著性的至少两个不同的区域,并且被配置为根据正在被编码的图像部分处于区域中的哪一个来对过程进行适应。

Description

在视频编码中适应鲁棒性
背景技术
在现代通信系统中,视频信号可以通过诸如有线和/或无线网络(通常,诸如因特网之类的基于分组的网络)之类的介质从一个终端被发送到另一个。典型地,在发送终端处用编码器对视频的帧进行编码以便对其压缩以用于通过网络进行传输。用于给定帧的编码可以包括帧内编码,其中块相对于在同一帧中的其他块而被编码。在这种情形下,目标块通过在那个块和相邻块之间的差异(残差(residual))而被编码。可替换地,用于某些帧的编码可以包括帧间编码,其中典型地基于运动预测,在目标帧中的块是相对于在前的帧的相应部分而被编码。在这个情况下,目标块是通过标识在块和该块根据其要被预测的相应的部分之间的偏移的运动向量,以及在该块和该块根据其而被预测的对应的部分之间的差异而被编码。在接收器处对应的解码器基于合适的预测类型来对所接收到的视频信号的帧进行解码,以便将它们解压缩(decompress)以用于向屏幕输出。
但是,帧或者帧的部分会在传输中丢失。例如,典型地,基于分组的网络不保证所有分组的递送,例如,分组中的一个或多个可能由于拥塞(congestion)而在中间路由器处被丢弃。作为另一个示例,数据可能由于网络介质的较差的情况(例如,噪声或者干扰)而损坏(corrupt)。基于被包括在编码的比特流中的冗余信息,前向纠错(FEC)或者其他这样的错误保护技术有时可以被用来恢复丢失的分组。但是,没有一种错误保护技术是完美的,并且某些分组在尝试纠正之后可能仍然不会被恢复。可替换地,系统设计者可能不想要引入(incur)被用于错误保护的冗余信息的开销,至少不是在所有的情况下。所以,丢失可能仍然发生。
鲁棒性指的是编码方案对丢失不敏感的能力,依据在存在丢失的情况下失真如何被影响。帧间编码帧(interframe)相比于帧内编码帧(intraframe),要求更少的比特来编码,但是由于帧间编码帧引入了对在前帧处的依赖性,所以它是更不鲁棒的。即使帧间编码帧被接收,但是如果在其历史中的某些帧已经被丢失(包括对其预测所依据的参考的帧或帧的一部分,或者对参考预测所依据的帧或者帧的一部分),则其可能无法被合适地解码。所以,由于丢失的失真可能在多个帧上扩散。帧内编码是更为鲁棒的,这是因为其仅仅依赖在当前帧中的参考的接收,所以即使已经存在之前的丢失,解码状态仍然可以被恢复。负面是帧内编码在编码的比特流中引入更多的比特。改善鲁棒性的另一个可能的诀窍是使得解码器反馈被成功接收和解码的帧或者帧的一部分的确认,并且使用确认的参考模式,其限制编码器仅仅相对于确认的参考而对当前块进行编码。但是,这将用于预测的候选限制为在时间上进一步向后的参考,其倾向于更不相似,并且因此在预测方面实现了更少的增益(即,导致更大的残差)。
考虑各种可能的编码模式(比如,帧内编码、帧间编码以及相对于确认的参考的编码),因此在鲁棒性(在防卫潜在的失真方面)以及在编码的信号中引入的比特率之间的折中要被做出。丢失适应的速率失真优化(LARDO)是一种可以在解码器侧被应用来尝试优化这个折中的技术。对于每个考虑的宏块,LARDO测量通过在多个可用的编码模式中的每个中对宏块进行编码而经历失真D的估计和使用这些编码模式中的每个时将要被引入在编码的比特流中的比特率。失真D的估计可能考虑到源编码失真(例如,由于量化)以及由于丢失的潜在的失真的估计(基于在所考虑的信道中出现丢失的可能性)两者。在编码器处的LARDO过程然后选择编码模式,所述编码模式使形如D+λR(其中,λ是表征折中的参数)的函数最小化。
发明内容
根据一个方面,本公开涉及一种装置,所述装置具有用于接收包括多个帧的视频信号的输入,每一个帧包括多个图像部分,以及用于对图像部分的每一个进行编码以便生成编码的信号的编码器。例如,所考虑的图像部分可能是任何合适的编解码器的块或者宏块,或者帧的任何其他所期望的划分(division)。编码器能够使用两个或多个不同的编码模式中的任何所选择的一个对部分(例如,每个块或者宏块)中的每一个进行编码,并具有不同的速率失真折中。例如,编码模式可以包括帧内编码模式、帧间编码模式和/或目标部分被相对于确认的参考(确认为已被接收端接收)而被编码的模式。
为了控制这一点,装置包括被布置来选择被用于对图像部分中的每一个相应地进行编码的编码模式的适应模块。适应使用速率失真优化过程,由此其平衡失真和比特率的函数。该函数是编码模式的函数,并且至少包括表示如果利用某个编码模式对目标部分进行编码而在解码器处将要经历的潜在失真的估计的部分以及表示通过使用那个编码模式对图像部分进行编码而在所编码的信号中将要引入的比特率的部分。因此,适应模块能够考虑根据多个不同的编码模式中的每一个对目标部分进行编码的潜在的速率失真折中,并且它根据某种最优化准则选择被估计来提供最佳的折中的模式。
进一步,适应模块也可以被配置来在帧中确定具有不同感知显著性的至少两个不同的区域。例如,这可以包括确定至少一个感兴趣区域,例如视频通话中的面部,其具有比感兴趣区域之外的背景区域更大的显著性。在实施例中,适应模块可以确定具有各种不同区域(至少多于两个)的感知敏感性映射,并且针对每个区域确定感知显著性水平。该水平可以从各种不同的可能水平中(同样,至少多于两个)确定。上文所提到的函数然后可以根据正在被编码的图像部分处在哪个区域中而被适应,例如,根据相应区域的感知显著性,来适应被应用于函数的各部分之一上的加权。
在实施例中,表示失真的函数的部分至少包括由于丢失的潜在失真的估计,例如考虑目标图像被丢失或者在其历史中的事物被丢失的可能性。在实施例中,失真的估计可以考虑源编码失真以及丢失可能性两者。因此,在实施例中,更高的鲁棒性(对丢失更低的敏感性)可以以在编码信号中更多的比特为代价而被应用于感兴趣的区域或者更高感知显著性的区域,而更低的鲁棒性(对丢失更高的敏感性)可以被应用于一个或多个其他区域,从而因使用较少比特来对这些区域进行编码而得到节省。
本发明内容被提供来以简化的形式介绍概念的选择,在下文具体实施方式中进一步对其描述。本发明内容不是旨在标识要求保护的主题的关键特征或必要特征,也不旨在被用来限制要求保护的主题的范围。所要求保护的主题不局限于解决在背景技术部分所指出的缺点中的任何一个或者全部的实现方式。
附图说明
图1是视频流的示意性表示,
图2是通信系统的示意性框图,
图3是编码的视频流的示意性表示,
图4是编码器的示意性框图,
图5是解码器的示意性框图,以及
图6是要被编码的视频图像的示意性表示以及对应的感知重要性映射的示例。
具体实施方式
如果优化函数被强加权成以高比特率为代价避免失真,则诸如LARDO之类的鲁棒性工具在速率失真性能方面是昂贵的。在其他方面,如果对于比特率的节省被过多加权,则类似LARDO的鲁棒性工具可以产生在良好网络情况下无法保证的显著的质量下降。
下面的实施例将鲁棒性适应于帧内的主观重要性。可以对LARDO类型的工具(相对于确认的参考、帧内块等等而进行编码)应用空间选择性。例如,在帧内的感兴趣区域(ROI)可以在编码器侧被确定,并且相比在感兴趣区域外部的那些,可以将更大的鲁棒性给予正在感兴趣区域内进行编码的块或者宏块(例如,在LARDO优化中,以更高的比特率为代价,将对抗失真的更大的加权给予在ROI中的宏块,而在ROI之外,花费更少的比特)。将这个想法扩展,LARDO类型的工具可以以连续的方式(例如,与空间失真敏感性成比例地)应用空间选择性。例如,感知敏感性映射可以被确定,其中不同的区域可以被给予来自一个范围的各种不同水平的(多于两个水平)不同的感兴趣水平,例如,将不同的水平映射到在帧内的每个块或者宏块。然后,鲁棒性可以根据与每个区域相关联的水平而被适应(例如,在LARDO优化函数中的加权可以根据感知显著性水平而被适应,从而相比于具有更低水平的那些宏块,将对抗失真的更大的加权给予具有更高显著性水平的那些宏块)。
这些工具的使用也可以与ROI感知隐藏(concealment)质量估计进行组合,以便在隐藏质量被估计为是低的时候来确定是否帧可以被丢弃。
因此,相比于当前可能的,实施例可以在丢失期间以在一个或多个感兴趣区域中可接受的质量以更小的比特率开销产生更高的帧率。
图1给出输入视频信号的示意性图示,所述视频信号从摄像机被捕获,并且被划分成准备好由视频编码器进行编码以生成编码的比特流的各部分。该信号包括在时间上被划分成多个帧(F)的移动视频图像,每个帧表示在时间上(…t-1,t,t+1…)不同的相应的时刻的图像。在每个帧内,该帧在空间上被划分成多个部分,每个部分表示多个像素。例如,这些部分可以被称为块。在某些方案中,该帧被划分和子划分成不同水平的部分或者块。例如,每个帧可以被划分成宏块(MB),并且每个宏块可以被划分成块(b),例如,每个块表示帧内的8×8像素的区域,以及每个宏块表示2×2块(16×16像素)的区域。在某些方案中,每个帧也可以被划分成片(slice),每个片包括多个宏块。
在输入信号中的块可以初始地在空间域中被表示,其中每个通道被表示为在块内的空间位置的函数,例如,亮度(Y)和色度(U,V)通道中的每一个是笛卡尔坐标x和y的函数,Y(x,y),U(x,y)和V(x,y)。在这个表示中,每个块或者部分可以由在不同的空间坐标(例如,x和y坐标)处的一组像素值所表示,以便颜色空间的每个通道通过在块内的特定位置的特定值、在该块内的另一个位置的另一个值和其他等等而被表示。
但是,作为编码过程的一部分,该块可以被变换到变换域(典型地,空频域表示,某些时候仅被称之为频域)表示。在频域,该块通过表示在该块内的每个颜色空间通道中的变化(例如,在该块内的亮度Y和两个色度U和V中的每一个中的变化)的频率分量的系统而被表示。从数学上讲,在频域,通道中的每一个(亮度和两个色度通道或者这样类似的通道的每一个)被表示为空频的函数,尺寸为1/给定方向的长度。例如,这可以相应地由在水平和垂直方向上的波数kx和ky所表示,所以该通道可以被相应地表达为Y(kx,ky),U(kx,ky)和V(kx,ky)。因此,该块被变换为一组系数,所述组系数可以被视为表示组成该块的不同的空频项的幅度。用于这样的变换的可能包括离散余弦变换(DCT),卡洛南-洛伊变换(KLT)或者其他变换。
在图2的框图中示意性示出了示例的通信系统,其中可以采用各种不同的实施例。该通信系统包括第一、发送终端12以及第二、接收终端22。例如,每个终端12,22可以包括移动电话或者智能电话、平板、膝上型计算机、台式机、或者诸如电视机、机顶盒、立体声系统等之类的其他家用电器中的一个。第一和第二终端12,22每一个都操作地耦合到通信网络32上,并且第一、发送终端12由此被布置来发送将由第二、接收终端22所接收的信号。当然,发送终端12也能够接收来自接收终端22的信号,反之亦然,但是出于讨论的目的,在本文中从第一终端12的视角来描述发送,并且从第二终端22的视角来描述接收。通信网络32可以包括例如基于分组的网络,诸如广域因特网和/或局域网和/或移动蜂窝网络。
第一终端12包括诸如闪存或者其他电子存储器、磁性存储设备和/或光学存储设备之类的计算机可读的存储介质14。第一终端12也包括以具有一个或多个执行单元的处理器或者CPU形式的处理装置16;诸如至少具有发送器18的有线或者无线调制解调器之类的收发信机;以及可以或者不可以装载在与终端12的其他部分相同的封装之中的视频摄像机15。存储介质14、视频摄像机15和发送器18每一个都操作地耦合到处理装置16,而发送器18经由有线或者无线链路被操作地耦合到网络32。类似地,第二终端22包括诸如电子、磁性和/或光学存储设备之类的计算机可读存储介质24、以及以具有一个或多个执行单元的CPU形式的处理装置26。第二终端包括诸如至少具有接收器28的有线或者无线调制解调器之类的收发信机以及可以或者不可以装载在与终端22的其他部分相同的封装之中的屏幕25。第二终端的存储介质24、屏幕25以及接收器28每一个被操作地耦合到相应的处理装置26,而接收器28经由有线或者无线链路而被操作地耦合到网络32。
在第一终端12上的存储装置14至少存储被布置在处理装置16上执行的视频编码器。当被执行时,编码器接收来自视频摄像机15的“原始的”(未编码的)输入视频流,将这个视频流编码以便将其压缩成更低比特率的流,并且将所编码的视频流输出以用于经由发送器18和通信网络32发送到第二终端22的接收器28。在第二终端22上的存储装置24至少存储被布置来在其自身的处理装置26上执行的视频解码器。当被执行时,该解码器从接收器28接收编码视频流,并且将其进行解码以输出到屏幕25。可以被用来指代编码器和/或解码器的通用术语是编解码器。
图3给出了编码的比特流33的示意性表示,所述比特流将要从在发送终端12上运行的编码器发送到在接收终端22上运行的解码器。比特流33包括针对每个帧的多个编码的样本34,包括任何运动向量。在一个应用中,比特流可以作为在发送和接收终端12,22之间的现场(实时的)视频电话通话(诸如VoIP(IP话音通信)通话)(VoIP通话也可以包括视频)的一部分而被发送。
图4是示意性映射示了诸如可能在发送终端12上被实现的编码器的高层框图。编码器包括:离散余弦变换(DCT)模块51、量化器53、反变换模块61、反量化器63、帧内预测模块41、帧间预测模块43、切换器47、以及减法级(-)49。编码器也包括适应模块50,其包括空间选择性子模块57。这些模块或者这些级中的每一个都可以作为被存储在发送终端的存储介质14上的并且被布置用于在其处理装置16上执行的代码的一部分而被实现,尽管并未排除在专用硬件电路中完整地或者部分地实现的这些中的某些或者全部的可能性。
减法级49被布置来接收包括在多个帧(F)上的多个块(b)的输入视频信号的实例。输入视频流从被耦合到减法级49的输入的摄像机15而被接收。帧内或者帧间预测41,43根据相对于另一个、已经编码的块或者其他这样的部分的预测而生成要被编码的当前(目标)块的预测的版本。预测的版本被提供到减法级49的输入,其中它从输入信号(即实际信号)中被减掉以便产生表示该块的预测版本与在实际输入信号中的相应块之间的差异的残差信号。
在帧内预测模式中,帧内预测41模块根据相对于另一个、已经在同一帧中编码的块(典型地相邻块)的预测而生成要被编码的当前(目标)块的预测的版本。当执行帧内编码时,想法是仅仅对在帧内的图像数据的一个部分是如何不同于同一帧内的另一个部分的度量进行编码和发送。那个部分然后可以在解码器处被预测(给予该解码器某些绝对数据以开始预测),并且因此仅需要发送在预测和实际数据之间的差异而不需要发送实际数据自身。典型地,差异信号在幅度上更小,所以花费更少的比特进行编码。
在帧间预测模式中,帧间预测模块43根据相对于另一个、已经在与当前块所不同的帧中编码的区域(偏移由帧间预测模块43所预测的运动向量)的预测(帧间预测也可以被称之为运动预测)而生成要被编码的当前(目标)块的预测版本。在这个情况下,帧间预测模块43由切换器47切换成反馈路径,来代替帧内预测级41,从而在一个帧和另一个帧的块之间创建反馈路径,以便相对于在前的帧的那些而对帧间帧进行编码。典型地,这比帧内编码需要编码的比特甚至更少。
残差信号的样本(包括在从输入信号中减掉预测之后的残差块)被从减法级49输出,通过变换(DCT)模块51(或者其他合适的变换)(其中,它们的残差值被转换为频域),然后到量化器53(其中,变换后的值被转换为离散量化索引)。由变换和量化模块51,53所生成的残差的量化和变换的索引,以及在预测模块41,43中所使用的预测的指示以及由帧间预测模块43所生成的任何运动向量全部都被输出,以包含在编码视频流33(参见图3中的元件34)中;典型地经由进一步的、诸如熵编码器(未示出)等之类的无损的编码级(其中,预测值和变换的、量化的索引可以进一步使用在现有技术中已知的无损编码技术来进行压缩)。
量化的、变换的信号的实例也被反馈通过反量化器63和反变换模块61以生成该块的预测版本(如将要在解码器处所看到的)以供所选择的预测模块41或者43在预测要被编码的后续块时使用。类似地,正在被编码的当前的目标块是基于之前编码的块的反量化和反变换的版本而被预测的。切换器47被布置为按照针对当前正在被编码的帧或者块而使用的编码的适当方式,将反量化器63的输出传递到帧内预测模块41或者帧间预测模块43的输入。
根据上文,在实施例中,编码器因而具有至少两个可能的编码模式:帧内预测以及帧间预测。
可替换地或附加地,至少帧间预测编码模块43可以配置有确认参考模式以及非确认参考模式。在确认参考模式中,帧间预测模块43被布置为从解码器(在图5中示出)接收反向确认消息,以便当帧或者帧的部分已经被成功地接收和解码时确认(和/或等价地当没有被成功地接收和解码时报告)。帧间预测模块43因此具有对哪些帧或者帧的部分将充当用于在解码器处的帧间预测的合适的参考的确认。在确认参考模式中,编码被限制为相对于被确认为被接收和解码的帧或者帧的部分中的参考部分的预测。另一方面,在非确认参考模式中,帧间预测模块43不限制为相对于这样的确认的参考来进行编码。例如,在实施例中,反馈要求返回若干帧,所以对于最近的帧而言,尚不知道这些帧是否被成功接收以及是否这些可以被用于潜在的参考。或者,在实施例中,只有整个帧在接收器处被正确地重建时反馈才是正面的,所以即使在已知未被确认的帧中也有可能该帧的一部分包含好的参考。
相对于确认的参考进行编码更为鲁棒,所以在整体上导致由于丢失的更少的失真。但是,非确认的参考帧在时间上更为接近(例如,前一帧),并且因此除了潜在的丢失之外,提供更好的预测和整体的速率失真性能。到最近的确认的参考帧的时间距离取决于网络往返时间(因为发送器正得到来自接收器的、特定帧被正确解码的确认)。例如,如果往返时间是200毫秒,并且帧速率是30帧每秒,则这意味着最近的确认的参考帧要往回6帧。不断地使用帧t-6代替t-1作为参考帧,由于更小的预测增益,将倾向于提供显著更差的速率失真性能。也就是说,更旧的参考倾向于更不相似,并且导致了更大的残差。
进一步可能的编码模式可以包括基于对宏块的不同的分割(partition)水平的不同的模式,例如,在更高复杂度模式(其中,针对在宏块内的每个4×4块来执行分开的预测)或者更低的复杂度模式(其中,基于仅仅8×8或者8×16块或者甚至整个宏块来执行预测)之间进行选择。可用的模式也可以包括用于执行预测的不同选项。例如,在一个帧内模式中,4×4块(b)的像素可以通过从来自直接上部的块的邻近像素而向下外插,或者通过从直接左侧的块从侧面外插而确定。被称为“跳跃模式”的另一个预测模式也可以在某些编解码器中被提供,其可以被考虑为可替换类型的块间模式。在跳跃模式中,目标的运动向量是基于到上方和到左侧的运动向量而被推断的,并且不对残差系数进行编码。对运动向量进行推断的这个方式与运动向量预测相一致的,并且因而运动向量的差异是零,所以仅要求来发信号通知该MB是跳跃块。
具有不同的编码选项的可能性可以被用来增加视频编解码器的速率失真效率。在这个情况下,最优的编码表示(根据某种最优化准则)将针对每个帧区域而被找到。
在编码器处的适应模块50被配置来应用丢失适应速率失真优化(LARDO:lossadaptiverate-distortionoptimisation)过程根据最优化准则来选择最优的编码模式以用于对每个宏块进行编码,例如如下所述。适应模块50被耦合到编码器的剩余部分以便根据正在被考虑的编码模式具有对在图4中的元件中的任何合适的那些元件的编码和解码状态的可见性,因为它可以查看原始的(未编码的)样本、残差以及在解码之后的样本的重建版本。在丢失适应的配置中,适应模块50也具有隐藏模块75的实例(所述隐藏模块基本上相似于在解码器处的那个)(查看稍后讨论的图5),所以可以查看可能在解码器处看到的潜在的丢失和那个丢失的隐藏效果。
在实施例中,速率失真性能优化问题可以被构造为:在比特率限制R下对失真进行最小化。例如,拉格朗日(Lagrange)最优化框架可以被用来解决这个问题,其中最优化准则可以用公式表示为:
其中,J表示拉格朗日函数,D表示失真的测度(模式o以及宏块m或者宏块子分割的函数),R是比特率,并且λ是定义在失真和速率之间的折中的参数。
求解这个拉格朗日最优化问题意味着找到对拉格朗日函数J最小化的编码模式o,其中拉格朗日函数J至少包括表示失真的项、表示比特率的项,以及表示在该两者之间的折中的因子(“拉格朗日乘子”)。随着编码模式o向着更鲁棒和/或更好质量的编码模式而变化,然后失真项D将会下降。但是,同时,速率项R将增加,并且在依赖于λ的某个点处,R的增加将要超过在D上的减少。因此,表达式J将具有某个最小值,并且产生最小值的编码模式o被认为是最优的编码模式。
在这个意义下,比特率R或者确切地说项λR对于最优化设置了限制,该项使得最优编码模式不能一直提高质量。这个最优平衡被找到时所处的模式将依赖于λ,并且因此λ可以被认为表示在比特率和失真之间的折中。
拉格朗日最优化可以被用于选择编码决定的过程中,并且可以被应用于每个帧部分(例如,每个16×16像素的宏块)。
失真D可以被量化为差异的测度,诸如,原始的和重建的像素之间的平方差的总和(SSD),或者绝对差的总和(SAD),均方误差(MSE)或者峰值信号噪声比(PSNR)。在实施例中,可以考虑全部处理级来进行评估,包括:预测,变换(从每个块或宏块的像素的空域表示到诸如光学频域表示等之类的变换域表示)以及量化(将连续信号的数字近似转换为更加离散的、更低粒度的量化水平的过程)。此外,在为了计算重建的像素,可以执行反量化、反变换以及反预测的步骤。可替换地,这些编码和解码级的某些可以被置于估计之外,以便降低复杂度。进一步地,速率项R也可以说明对某些或者全部系数的编码,包括描述预测和量化的变换系数的参数。典型地,参数可以利用熵编码器(未示出)而被编码,并且在那种情况下,速率可以是将要由熵编码器所获得的速率的估计,或者可以通过实际运行熵编码器并且针对候选的模式中的每一个而测量所引起的速率而获得。熵编码/解码是无损的过程并且本身不会影响到失真。
LARDO基于错误传输信道的假设来考虑端到端失真的估计。通过跟踪潜在的失真,适应模块50能够计算与所期待的错误传播失真(在解码器处)相关的偏置项,其中当计算正在利用在编码器速率失真回路内的不同的编码模式(帧间和帧内)而编码的宏块的代价时,所述所期待的错误传播失真被加到源编码失真上。因此,估计将要在解码器处所看到的、由于源编码以及信道误差的潜在的失真。所估计的潜在的失真然后被间接地用于将模式选择向着帧内编码(如果存在信道误差的可能性)而进行偏置。
这样的“端到端”的失真表达式的实例可以基于诸如SSR之类的失真测度,并且针对丢失的宏块,可以假设柏努利(Bernoulli)分布。在这个情况下,最优的宏块模式oopt可以由下式所给定:
其中,Ds(m,o)表示针对宏块m以及宏块模式o的在原始和重建的像素块之间的失真(例如,SSD),R表示总速率,并且λ表示关于失真和速率项的拉格朗日乘子。Dep-ref(m,o)表示由于错误传播在解码器的参考块中的所期望的失真。因此,如果错误传播失真变得太大,则Dep-ref(m,o)提供将最优化向着帧内编码(或者某个其他鲁棒模式)进行偏置的偏置项。Dep-ref(m,o)对于帧内编码的宏块模式是零。表达式Ds(m,o)+Dep-ref(m,o)+λR(m,o)可以被认为是拉格朗日函数J的实例。Argmino输出针对其表达式J的值最小时的变元o的值。
关于LARDO,在非确认的参考中存在针对“所期望的失真”的统计模型。例如,如果,视频的某个区域是静止的,则在隐藏之后这个区域很可能具有小的失真。因此,相比于参考非确认的参考帧的非常复杂和/或运动区域,在非确认的参考帧中的这个区域提供来自预测的更小的所期望的失真(在统计意义上)。基本上,它是所期望的分组丢失以及由隐藏所引入的失真的函数。
例如,总的期望的错误传播失真映射Dep是由错误隐藏的性能所驱动的,并且可以在每个宏块模式选择之后被更新为:
其中,n是帧号,m(k)表示宏块m的第k个子分割(块),p是分组丢失的概率(其可以是预先确定的参数,或者通过根据对实际信道情况的观察使用从解码器反馈的信息确定)。在一个示例中,错误传播失真可以以4×4的像素块粒度而被存储。用于块或者宏块的错误传播参考失真Dep-ref(m,o)可以通过对在对应于由当前块的运动向量所指示的块的位置的之前的帧的错误传播失真映射中的失真进行平均而被估计。Dec-rec表示在编码器处重建的和错误隐藏像素之间的差异(例如,SSD),而Dec-ep是在编码器和解码器的错误隐藏的像素之间的所期望的差异(例如,SSD)。典型地,丢失块可以通过从之前的帧中复制块(例如,使用帧复制或者运动复制错误隐藏方法)而被重建。在这个情况下,Dec-ep可以通过从用于错误隐藏的帧的错误传播失真映射中提取对应的失真而得到。
因此,如果由于在目标部分的预测所依赖的目标部分的历史中的参考部分的未到达而目标部分(例如,块或者宏块)通过信道到达,则丢失适应偏置项可以根据表示将要经历的失真的估计的项,并且如果目标部分被丢失,则丢失适应偏置项可以基于表示将要经历的失真的估计的隐藏项。隐藏项可以包括如果目标部分在信道上被丢失表示相对于将要被用来隐藏目标部分的丢失的图像部分的目标部分(例如,块或者宏块)的隐藏失真的测度的项,以及表示由于在目标部分的隐藏所依赖的目标部分的历史中的图像部分的丢失而所要经历的失真的估计的项。
转到在编码器侧所提供的空间选择性子模块57,根据在本文中所公开的实施例,这被配置来将空间选择性应用于LARDO过程或者由适应模块50所执行的其他这样的速率失真折中。
在实施例中,空间选择性子模块57可以被配置来标识在正在被编码以用于传输的视频中的感兴趣区域(ROI)。例如,这可以通过应用面部识别算法来完成,所述面部识别算法的示例自身在现有技术中是已知的。面部识别算法识别在要编码的视频图像中的面部,并且基于此,将包括面部或者面部的至少某些部分(例如,比如嘴部、眼睛以及眉毛的面部特征)的图像的区域标识为感兴趣区域。面部识别算法可以被特别地配置来识别人的面部,或者可以识别一个或多个其他动物的面部。在其他实施例中,感兴趣区域可以以面部识别之外的另一个基础而被标识。其他可替换的方法包括其他类型的图像识别算法(诸如,将运动对象标识为感兴趣区域的运动识别算法或者由发送终端12的用户所指定的用户定义的感兴趣区域)。
在进一步的实施例中,空间选择性子模块57可以被配置为不仅标识单个水平的感兴趣区域,也确定感知的敏感性映射,由此若干不同的区域被分配若干不同水平的感知显著性。例如,这可以以逐个宏块的基础而被完成,由此,每个宏块被映射到从一个范围中所选择的相应水平的感知显著性。该映射可以由面部识别算法而确定,例如,可以被配置来将最高水平的感知显著性指派给主要的面部特征(例如,眼睛、眉毛、嘴部);次最高的水平被指派给周围的面部特征(例如,脸颊、鼻子、耳朵);次最低的水平被指派给头部的剩余区域以及肩膀或者其他肢体特征,并且最低的水平被指派给背景区域(例如,静态的场景)。其他备选方案包括其他类型的图像识别算法,诸如根据运动或者改变的量来分配感知显著性的水平的运动识别算法或者由发送终端12的用户所指定的用户定义的映射(例如,用户指定感兴趣中心,并且在图案中从那个中心在空间上向外而水平降低)。
在图6中示意性地图示了示例。该图示出了“谈话的头部”类型的视频图像的一个帧(例如,典型地将要在视频通话中发生的)。在图6中的上部图示示出了被划分成诸如块或者宏块(MB)之类的部分的帧。注意,出于图示的目的,宏块的尺寸被放大(相对于典型的视频编解码器的那些,尽管一般地可以使用任何尺寸的块或者宏块)。在图6中的底部图示示出了该帧的映射,不同的宏块被给予不同的感知显著性。例如,某些宏块(诸如在(x,y)坐标(4,2)(4,3)(5,2)(5,3)处的那些宏块)可以被标识为构成感兴趣区域,例如,至少包括面部中的某些部分的宏块或者对于涵盖面部的主要特征的块的选择。或者进一步,作为感知敏感性映射的示例,在图6中标记A的宏块可以被指派第一(最高)水平的感知显著性,标记B的宏块可以被指派第二(次最高)水平的感知显著性,标记C的宏块可以被指派第三(次最低)水平的感知显著性,标记D的宏块可以被指派第四(最低)水平的感知显著性。
基于感兴趣区域或者感知的敏感性映射,空间选择性子模块57被配置来适应LARDO过程(或者其他这样的速率失真过程)以便在更低的感知重要性的一个或多个区域上花费更少的比特的同时将更大的鲁棒性给予具有更高的感知重要性的一个或多个区域。在实施例中,这可以通过适应如下形式的表达式中参数λ以作为编码模式o的函数(例如,上文的等式(1)或者(2))而被优化来完成:D+λR。也就是,不同的λ值可以被映射到不同水平的感知显著性/敏感性。
例如,在单个水平的感兴趣区域的情况下,一个值可以被分配到感兴趣区域,而另一个值被分配到背景:
如果MB(k)处在ROI内,则λ=λROI
否则λ=λbg
在另一个示例中,λ的不同值被映射到不同水平的感知显著性,例如:
如果MB具有水平A,则λ=λA
如果MB具有水平B,则λ=λB
如果MB具有水平C,则λ=λC
否则λ=λD。
在形如D+λR的上述表达式中,λ的更大值给出了最小化速率项的更大权重,所以针对更大感知显著性的区域,λ将更低(即,不期望针对那些区域过于节省比特率)。等价的形式将是(1/λ)D+R或者βD+R,其中β针对更大显著性的区域是更大的(更大的权重被给予来在那些区域中最小化失真)。包括表示失真的部分以及表示引入的比特数的部分的其他表达式以及在该两者之间改变相对的加权(显著性)的某种方式也可以被使用。
在实施例中,空间选择性子模块57可以被配置来输出感兴趣区域的指示或者感知重要性映射,其可以在被嵌入在编码的比特流33中的边信息36中或者在分开的流或者信号中被发送到在接收终端22处的解码器。再次参见图3。由于针对每个宏块的编码模式与编码样本34以某种方式编码到比特流中,解码器在对视频解码时不需要该信息。但是,在某些实施例中,它可以被包括以便帮助解码器确定是否要应用隐藏,如稍后将被更详细地讨论的。
图5是示意性地图示了可能在接收终端22上被实现的解码器的高层框图。解码器包括反量化级83、反DCT变换级81、切换器70以及帧内预测级71和运动补偿级73。解码器也包括隐藏模块75,在某些实施例中,其可以包括空间选择性子模块77。这些模块或者级中的每一个都可以作为被存储在接收终端的存储介质24上并被布置用于在其处理装置26上执行的代码的一部分,尽管也不排除将这些中的某些或者全部整体或者部分被实现在专用硬件电路中的可能性。
反量化器81被配置为经由接收器28从解码器接收编码的信号33。反量化器81将在编码的信号中的量化索引转换为残差信号(包括残差块)的去量化样本,并且将这些去量化的样本传递给反DCT模块81,其中它们从频域被变换回空域。
然后,切换器70按照适合于正在被解码的当前帧或者块的预测模式的方式,将去量化的、空域的残差样本传递给帧内或者帧间预测模块71或者73,并且帧内或者帧间预测模块71,73分别使用帧内或者帧间预测对每个宏块的块进行解码。使用利用在编码的比特流33中与编码的样本34一起接收的预测和/或任何运动向量的指示,来确定要使用哪个模式。如果多个不同类型的帧内或者帧间编码模式在比特流中存在,并且如果这些要求不同的解码(例如,给予不同宏块划分的不同模式或者跳转模式),则然后这也连同在编码的比特流33中的样本33一起被指示到帧内或者帧间解码模块71,73中的相关的一个,并且相关的模块71,73将根据每个相应的模式对宏块进行解码。
DCT模块51(或者其他合适的变换)的输出是变换的残差信号,包括针对每帧的多个变换的块。所解码的块被输出到在接收终端22处的屏幕25。
进一步,隐藏模块75被耦合以便具有来自接收器28的到达比特流33的可见性。如果帧或者帧的一部分丢失(例如,由于分组丢失或者数据损坏),则隐藏模块75检测这个并且选择是否应用隐藏算法。如果隐藏算法被应用,则这会通过规划根据前面接收到的帧替换帧的丢失片(或者甚至整个丢失的帧),或者通过规划根据相同的帧中一个或多个其他的接收的部分替换该帧的丢失片。也就是,或者通过根据前面接收到的帧来外插丢失的帧或者帧的丢失部分的替换,或者通过根据相同的帧的另一个、接收的部分来外插该帧的丢失部分的替换,或者通过利用在同一帧的接收的部分之间进行内插来估计帧的丢失部分的替换。隐藏算法的细节自身在本领域中是已知的。
在实施例中,空间选择性子模块77被配置来适用适用应用隐藏的决定。为了做到这一点,其在到达的视频图像中标示感兴趣的区域。在实施例中,这可以使用在从发送终端12中所接收的边信息36中发信号通知的感兴趣区域或者感知敏感性映射而实现,例如从到达的比特流33中提取该信息。在具有若干不同水平的显著性的感知敏感性映射的情况下,感兴趣区域可以通过将具有大于某个水平的那些宏块视为是感兴趣区域(例如,在图6的示例中标记A和B(而那些标记D或C的被认为是背景))而在解码器处被确定。可替换地,可以明确地发信号通知感兴趣区域。在其他可替换的实施例中,上文所描述的用于标识感兴趣区域的技术中的任何一种可以被独立地在接收终端22的解码器侧应用。例如,面部识别技术或者其他图像识别技术可以被应用在接收终端22的解码器的空间选择性子模块77中,或者用户所定义的感兴趣区域可以由接收终端22的用户指定。在诸如面部识别算法之类的图像识别算法被应用在解码器侧的情况下,如果出现丢失,这可以基于之前所接收的、成功解码的帧,假定多数情况中感兴趣区域不太可能在一个帧和下一个帧之间显著移动。
无论通过任何手段在解码器侧标识感兴趣区域,子模块77被配置来确定被选择性地指引向帧内的感兴趣区域的隐藏质量的估计。也就是,估计被指引到小于该帧的特定的区域—或者是因为估计仅仅是基于感兴趣区域,或者是因为估计至少向着那个区域而被偏置。基于这样的估计,隐藏模块确定是否应用隐藏算法。如果质量估计足够好,则隐藏被应用。否则,接收终端仅冻结(freeze)上次被成功接收的和解码的帧。
在通信的场景中,相对于背景或者其他对象,面部常常是最重要的。在确定是否要显示隐藏的帧时,如果隐藏质量估计仅仅估计全帧的质量,而没有考虑到内容,则然后这可以导致隐藏的帧被显示,即使面部区域包括较大的人工伪痕。相反,潜在的隐藏的帧可以被丢弃,即使面部具有好的质量而仅背景具有人工伪痕。因此,存在的潜在问题在于可能是有利地被显示的隐藏帧某些时候未被显示,而不是有利地被显示的隐藏帧某些时候反而被显示。
在实施例中,感兴趣区域被用来通知关于应用于整个帧的隐藏的是/否的决定。质量估计被以有偏见的方式以感兴趣区域作为目标以便决定是否应用隐藏,但是一旦决定已经被做出,它被应用到整个帧,潜在地包括诸如背景之类的其他区域。也就是,尽管通常可以在局部应用隐藏来修复丢失的片,但是在实施例中,在整个帧应该被丢弃之前,确定多少可以在局部被修补。即尽管只有那些丢失数据的单独的片被隐藏,但是,关于隐藏的决定是以逐个帧为基础对每个帧应用一次。在一个这样的实施例中,如果面部区域足够好,则图像的隐藏的版本被显示。如果使用隐藏的面部区域退化过多,则替代地将整个帧丢弃可能是更好的。
隐藏质量提供(多个)丢失的部分的隐藏版本(如果使用隐藏算法而被隐藏)的质量的估计。
在某些实施例中,子模块77可以使用从发送终端12处所接收的估计(基于在编码器侧运行模拟的丢失场景)来确定隐藏质量,例如通过在编码的比特流33中的边信息36中发信号通知。在其他实施例中,不需要编码器侧隐藏质量估计,并且替代地,在解码器侧的隐藏模块75中的子模块77可以执行隐藏质量估计。在这个情况下,由于在解码器处不知道实际丢失的数据,所以替代地隐藏质量必须基于正确接收的目标帧的部分和/或一个或多个之前所接收到的帧而被“盲”估计。
在实施例中,解码器侧的子模块77可以查看与(多个)丢失片邻近的当前帧的部分以便估计隐藏质量。例如,这个技术可以被用来使得子模块77在解码器侧预测所隐藏的帧的PSNR(或者其他不同测度,诸如SSD、SAD或者MSE)。质量的估计可以是基于在与隐藏的块邻近的接收的像素(也就是,围绕在当前、目标帧中的隐藏块周围的像素)与隐藏的块的参考块的对应的邻近像素(也就是,围绕在视频信号的参考帧中的参考块周围的像素)之间的差异的分析。
在另一个示例中,隐藏质量估计可以是基于在两个或多个前面的、成功接收和解码的帧之间的差异。例如,替代地,可以在两个前面的成功接收的和解码的帧或者那些帧的部分之间计算感兴趣区域中的MSE或者PSNR。在那些两个前面的帧之间的差异可以用作从前面的帧到当前的、目标帧(丢失的那个帧)的预期的改变程度的估计,假设被接收的话当前帧将可能继续以相似的程度而改变。例如,如果在最近两个接收的帧之间的感兴趣区域中存在较大的平均差异(例如,以MSE或者PSNR而度量的),则很有可能当前的、目标帧将会继续表现这种程度的差异,并且隐藏将会是较差的。但是,如果在最后两个接收的帧之间的感兴趣区域中存在较小的平均差异,则很可能当前的目标帧将会继续不是非常不同,并且隐藏将是相对高质量的。作为另一个示例,查看前面的帧的运动向量是可能的。例如,如果在感兴趣区域中的运动向量的平均幅度大,则预期有大量改变,并且隐藏将很可能是低质量的,但是如果运动向量的平均幅度小,则预期不会有过多的改变,并且隐藏将很可能提供合理的高质量。例如,如果运动向量指示高于门限的运动,则错误隐藏可以被认为是无效的。
无论采取什么技术来估计隐藏质量,隐藏质量的估计被集中在感兴趣区域—或者由于差异测度(无论是被应用在编码器或者解码器侧)仅仅基于在感兴趣区域中的样本、块或者宏块的(将那些在感兴趣区域之外的排除在外),或者是因为相对于在感兴趣区域值外的那些,利用在感兴趣区域中的样本、块或者宏块的更大的显著性来对在差异和或者平均中的项进行加权。例如,选择性可以通过使用加权的评分(即,通过重要性掩码或者重要性中心)而实现。
因此,在隐藏模块75中的空间选择性子模块77被配置来基于针对感兴趣区域的隐藏质量估计来做出关于是否应用隐藏算法的选择。在实施例中,隐藏模块75被配置来将门限应用于隐藏质量估计。如果隐藏质量估计相对于门限是好的(满足和/或好于门限),则隐藏模块75选择应用隐藏算法。如果隐藏质量相对于门限是差的(比门限差和/或不好于门限),则隐藏模块75选择不去应用隐藏算法。替换地,其可以冻结前面的帧。
在实施例中,针对整个帧来应用选择,即使隐藏质量估计仅仅是基于在那个帧内的更小的区域(或者至少向着在那个帧之内的感兴趣区域而被偏置)。也就是说,针对感兴趣区域的隐藏质量的估计可以被用来决定是否产生整个帧的隐藏的版本(包括感兴趣区域以及在感兴趣区域之外的那个帧的剩余区域两者),即隐藏算法隐藏感兴趣区域的内部以及外部两者的片。所以,在图6的示例中,隐藏质量估计可以仅仅基于覆盖主要面部区域的块(或者向着覆盖主要面部区域的块而偏置)而被做出,但是可以被用来做出被认为对整个帧(包括从前景块中丢失的任何块以及从背景块中丢失的任何块)相关的隐藏决定。例如,通常对于用户而言,如果背景包括隐藏人工伪痕是没关系的,所以单独选择如何对待这些块是不值得的。
将意识到的是,仅仅作为示例已经描述了上文的实施例。
例如,注意“最优”或者“优化”或者类似物未必意指绝对意义上的最好,而相反,是意指表示在速率与失真之间尝试平衡的函数的结果。这两者之间的界限取决于所关心的应用,并且这是设计选择的问题。本文的公开不规定在何处划线,但是相反提供工具允许设计者来根据在编码的视频图像中的感知显著性来适应那个线条。
进一步地,对函数进行优化不限于求解在分析意义上的数学函数。存在其他方法来实现相同的效果(或者至少足够好的),诸如通过将最优化函数实现为在一个或多个查找表、和/或算法或规则集合中的一组预先确定的解决方案。在某些实施例中,这样的实现方式可以更快地执行,并且可以更便利地调整(例如,查找表或者规则可以是基于诸如对人类的实验之类的后验源)。因此,最优化函数可以以相对于用于候选的编码模式的比特率来对失真的估计进行平衡的任何过程的形式而被实现。
进一步,本公开的范围不局限于上文的编码模式。技术人员将注意到可以被用来提供在速率和失真之间的不同折中的各种不同的编码模式,并且任何这样的模式可以被结合在本文所提阐述的教导而一起被使用。
进一步,尽管已经以块和宏块的形式描述的上文,但是感兴趣区域未必以任何特定标准的块或者宏块的形式而被映射或者定义。在实施例中,感兴趣区域可以以帧的任何部分或者部分的形式(甚至向下到逐个像素的水平)而被映射或者定义,并且被用来定义感兴趣区域的部分未必与被用于诸如预测之类的其他编码/解码操作的划分相同(尽管在实施例中,它们也可以这样)。
进一步,丢失被限于分组丢弃,但是,例如丢失也可以是指由于损坏的任何丢失。在这种情况下,某些数据被接收但是以不可用的形式,即,并非所有意图的数据被接收,这意味着信息被丢失。进一步,各种不同的实施例不局限于通过网络发送所编码的视频的应用。例如,在另一个应用中,接收也可以指从诸如光盘、硬盘驱动器或者其他磁性存储装置或者“闪存”棒或者其他电子存储器之类的存储设备接收视频。在这种情况下,视频可以通过将视频存储在发送设备的存储介质上,移除存储介质并且物理地将其传输来与对其进行恢复的接收设备进行连接而被转移。可替换地,接收设备可能之前在本地存储装置上存储视频自身。甚至当该终端要接收来自诸如硬盘驱动器、光盘、存储棒或者类似物之类的存储介质的所编码的视频,随着时间的推移所存储的数据可能仍然被损坏,从而导致信息的丢失。
进一步,编解码器未必必须被实现在最终用户终端上,也未必必须将视频输出以用于在接收终端处的中间消耗(consumption)。在可替换的实施例中,接收终端可以是运行解码器软件的服务器,以用于将视频以解码的和/或隐藏的形式输出到另一个终端,或者将所解码的视频进行存储以用于后续的消耗。类似地,编码器不一定在最终用户终端处实现,也不一定对从发送终端所发起的视频进行编码。在其他实施例中,例如,发送终端可以是。
关于隐藏,注意在实施例中,感兴趣区域不一定在解码器处标识或使用。解码器知晓解码器所使用的感兴趣区域或者感知敏感性映射是不必要的,这是因为对于每个宏块(或者其他这样的部分)的编码模式在任何情况下都会被指示在编码的视频信号中。在某些实施例中,感兴趣区域可以被用于在解码器处的不同目的,以便指引如上文所讨论的隐藏决定,但是这个附加不需要被包括在全部实施例中。在其他实施例中,隐藏可以仅仅基于是否存在丢失或者基于在整个帧上不区别地做出的隐藏质量估计而在解码器侧被应用。
进一步,本公开不局限于对任何特定隐藏算法的使用,并且各种不同的合适的隐藏算法自身对本领域技术人员而言是已知的。在上文中所使用的术语“规划(project)”、“外插”或者“内插”不是旨在对任何特定的数学操作的限制。一般地,隐藏可以使用用于通过从在空间和/或时间上邻近的其他的所接收到的图像数据进行投影(相对于仅仅冻结过去的数据),尝试来重新生成对丢失数据的替换的任何操作。
本文所公开的技术可以被实现为编码器或解码器的内在部分(例如,被合并为对现有的诸如H.264或者H.265之类的标准的更新),或者可以被实现为对现有标准的附加(诸如,对H.264或者H.265的附加)。进一步,本公开的范围不特别地局限于无论以RGB、YUV或者其他方式的视频样本的任何特定的表示。范围也不限于任何特定的量化、也不限于DCT变换。例如,诸如卡洛南-洛伊变换(KLT)之类的可替换的变换也可以被使用,或者不使用任何变换。进一步,本公开不限于VoIP通信或者通过任何特定种类的网络的通信,而本公开可以被用于能够传送数字数据的任何网络或者被用于在存储介质上存储编码的数据的系统中。
一般地,在本文中所描述的功能的任何一种可以使用软件、固件、硬件(例如,固定逻辑电路)或者这些实现方式的组合而被实现。在本文中所使用的术语“模块”、“功能”、“组件”以及“逻辑”一般地表示软件、固件、硬件及其组合。在软件实现的情况下,模块、功能或者逻辑表示当在处理器(例如,一个CPU或多个CPU)上被执行时执行所指定的任务的程序代码。程序代码可以被存储在一个或多个计算机可读的存储设备中。下文所描述的技术的特征是与平台无关的,这意味着这些技术可以被实现在具有各种不同的处理器的多种不同的商业计算机平台上。
例如,用户终端也可以包括使得用户终端的硬件来执行操作的实体(例如,软件),例如,处理器功能块等等。例如,用户终端可以包括计算机可读介质,其可以被配置来保持使得用户终端以及更具体地与用户终端的操作系统和相关联的硬件来执行操作。因此,指令运行来配置操作系统和相关联的硬件来执行操作并且以这种方式导致操作系统和相关联的硬件的变换来执行功能。指令可以由计算机可读的介质来经由多种不同的配置提供给用户终端。
计算机可读介质的一个这样的配置是信号承载介质,并且因此被配置比如经由网络来向计算设备发送指令(例如,作为载波)。计算机可读的介质也可以被配置成计算机可读存储介质,并且因此不是信号承载介质。计算机可读的存储介质的示例包括随机访问存储器(RAM)、只读存储器(ROM)、光盘、闪存、硬盘存储器、以及可以使用磁性、光学以及用来存储指令和其他数据的其他技术的其他存储设备。
尽管已经以特定于结构特征和/或方法动作的语言描述了本主题,但是要理解的是,在所附的权利要求中所定义的主题未必被局限于上文所描述的特定特征或动作。相反,上文所描述的特定的特征和动作是作为实现权利要求的示例形式而被公开的。

Claims (10)

1.一种装置,包括:
用于接收包括多个帧的视频信号的输入,每个帧包括多个图像部分;
用于对所述图像部分的每一个进行编码以便生成编码信号的编码器;以及
适应模块,所述适应模块被配置为基于如果针对所述图像部分使用所述相应的编码模式进行编码的失真的估计同通过使用所述相应的编码模式对所述图像部分进行编码所将要引入的比特率进行平衡的过程,来选择被用于对所述图像部分中的每一个进行编码的相应的编码模式;
其中所述适应模块被配置为在所述视频信号中的一个或多个帧的每一个中确定具有不同感知显著性的至少两个不同的区域,并且被配置为根据正在被编码的所述图像部分处于所述区域中的哪一个来对所述过程进行适应。
2.如权利要求1所述的装置,其中所述适应模块被配置为通过确定包括多于两个不同区域的感知敏感性映射以及针对每一个确定感知的显著性的相应水平来针对一个或多个帧中的每一个来执行所述确定,并且被配置为通过根据被指派给正在被编码的所述图像部分所处的所述感知重要性映射的所述区域的感知显著性的水平对所述过程进行适应来执行所述适应。
3.如权利要求2所述的装置,其中所述适应模块被配置为从多于两个不同水平之中确定感知显著性的每个相应水平,以便在它们之间的不同区域具有多于两个感知显著性水平。
4.如权利要求1所述的装置,其中所述适应模块被配置为通过确定在所述视频信号的帧中的感兴趣区域来针对所述一个或多个帧中的每一个来执行所述确定,并且被配置为根据正在被编码的所述图像部分是否处于所述感兴趣区域来对所述过程进行适应。
5.如上述权利要求中的任何一个所述的装置,其中所述失真的估计至少包括由于丢失而将要经历的潜在的失真的估计。
6.如上述权利要求5所述的装置,其中所述失真的估计包括由于源编码的失真的测度以及由于丢失的潜在的失真的估计两者。
7.如权利要求5或者6所述的装置,其中由于丢失的潜在失真的所述估计包括由于隐藏的失真的估计。
8.如权利要求5、6或者7所述的装置,其中由于丢失的潜在的失真的所述估计包括如果所述图像部分被丢失而在接收终端处将要经历的所述潜在的失真以及如果正在被编码的所述图像部分被接收但是它的编码所依赖的参考部分被丢失而在接收终端处将要经历的所述潜在的失真的估计。
9.如上述权利要求中的任何一个所述的装置,其中所述过程包括被应用于所述失真估计和所述比特率中的一个的加权,并且所述适应模块被配置来通过对所述加权的适应来执行所述适应。
10.一种用于对包括多个帧的视频信号进行编码的计算机程序产品,其包括具体化在计算机可读存储介质上并且被配置为当在处理装置上被执行时执行如下操作的代码:
接收包括多个帧的视频信号,每个帧包括多个图像部分;
对所述图像部分中的每一个进行编码以便生成所编码的信号;
在执行所述编码中,基于如果针对所述图像部分使用所述相应的编码模式进行编码的失真的估计同通过使用所述相应的编码模式对所述图像部分进行编码所将要引入的比特率进行平衡的过程,来选择被用于对所述图像部分中的每一个进行编码的相应的编码模式;以及
为了执行所述选择,确定在所述视频信号中的一个或多个帧的每一个内具有不同的感知显著性的至少两个不同的区域,并且根据正在被编码的所述图像部分处于所述区域中的哪一个来对所述过程进行适应。
CN201480018916.8A 2013-01-28 2014-01-26 在视频编码中适应鲁棒性 Pending CN105379268A (zh)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
GBGB1301445.1A GB201301445D0 (en) 2013-01-28 2013-01-28 Adapting robustness in video coding
GB1301445.1 2013-01-28
US13/838,283 US20140211842A1 (en) 2013-01-28 2013-03-15 Adapting Robustness in Video Coding
US13/838283 2013-03-15
PCT/US2014/013089 WO2014117049A1 (en) 2013-01-28 2014-01-26 Adapting robustness in video coding

Publications (1)

Publication Number Publication Date
CN105379268A true CN105379268A (zh) 2016-03-02

Family

ID=47890862

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201480018916.8A Pending CN105379268A (zh) 2013-01-28 2014-01-26 在视频编码中适应鲁棒性

Country Status (5)

Country Link
US (1) US20140211842A1 (zh)
EP (1) EP2936813A1 (zh)
CN (1) CN105379268A (zh)
GB (1) GB201301445D0 (zh)
WO (1) WO2014117049A1 (zh)

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107040787A (zh) * 2017-03-30 2017-08-11 宁波大学 一种基于视觉感知的3d‑hevc帧间信息隐藏方法
CN108573287A (zh) * 2018-05-11 2018-09-25 浙江工业大学 一种基于深度神经网络的图像编解码器的训练方法
CN109429063A (zh) * 2017-08-29 2019-03-05 三星电子株式会社 视频编码装置
CN110447226A (zh) * 2017-03-23 2019-11-12 高通股份有限公司 用于对360度视频进行译码的自适应参数
CN110933446A (zh) * 2019-11-15 2020-03-27 网宿科技股份有限公司 一种感兴趣区域的识别方法、系统及设备
CN110996099A (zh) * 2019-11-15 2020-04-10 网宿科技股份有限公司 一种视频编码方法、系统及设备
CN111034184A (zh) * 2017-08-29 2020-04-17 连株式会社 提高视频通话的视频质量
CN111480175A (zh) * 2018-01-05 2020-07-31 沃尔沃卡车集团 具有显示与广角图像的至少一个失真部分邻接的广角图像的未失真部分的显示器的相机监视系统
CN111602401A (zh) * 2018-01-16 2020-08-28 Vid拓展公司 用于360度视频译码的自适应帧封装

Families Citing this family (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101418208B1 (ko) * 2013-01-30 2014-08-06 재단법인 다차원 스마트 아이티 융합시스템 연구단 비트율 결정 방법 및 그 장치
EP3054677A4 (en) * 2013-09-30 2017-05-10 Coolpad Software Tech (Shenzhen) Co., Ltd. Methods and systems for image encoding and decoding and terminal
CN106210717B (zh) * 2016-08-05 2017-07-21 北京航空航天大学 一种基于视频显著性的hevc解码复杂度控制方法
US10650621B1 (en) 2016-09-13 2020-05-12 Iocurrents, Inc. Interfacing with a vehicular controller area network
US10582196B2 (en) * 2017-06-30 2020-03-03 Intel Corporation Generating heat maps using dynamic vision sensor events
US20190068983A1 (en) * 2017-08-25 2019-02-28 Advanced Micro Devices, Inc. Sending a Frame Difference or Raw Chunk Based on a Known Acknowledgement
US10951902B2 (en) 2019-06-12 2021-03-16 Rovi Guides, Inc. Systems and methods for multiple bit rate content encoding
US11263261B2 (en) * 2020-02-14 2022-03-01 Alibaba Group Holding Limited Method and system for characteristic-based video processing
US11587208B2 (en) * 2021-05-26 2023-02-21 Qualcomm Incorporated High quality UI elements with frame extrapolation
CN113411615B (zh) * 2021-06-22 2023-01-10 深圳市大数据研究院 一种面向虚拟现实的纬度自适应的全景图像编码方法
CN113613006B (zh) * 2021-07-30 2023-08-18 浙江裕瀚科技有限公司 一种视频编码的方法、系统和装置

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6115420A (en) * 1997-03-14 2000-09-05 Microsoft Corporation Digital video signal encoder and encoding method
US20070274396A1 (en) * 2006-05-26 2007-11-29 Ximin Zhang Complexity adaptive skip mode estimation for video encoding
US20110122942A1 (en) * 2009-11-20 2011-05-26 Texas Instruments Incorporated Techniques for perceptual encoding of video frames
US20110235706A1 (en) * 2010-03-25 2011-09-29 Texas Instruments Incorporated Region of interest (roi) video encoding

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7106366B2 (en) * 2001-12-19 2006-09-12 Eastman Kodak Company Image capture system incorporating metadata to facilitate transcoding
WO2006078595A2 (en) * 2005-01-18 2006-07-27 Thomson Licensing Method and apparatus for estimating channel induced distortion
US9667980B2 (en) * 2005-03-01 2017-05-30 Qualcomm Incorporated Content-adaptive background skipping for region-of-interest video coding
US8019170B2 (en) * 2005-10-05 2011-09-13 Qualcomm, Incorporated Video frame motion-based automatic region-of-interest detection
US9479786B2 (en) * 2008-09-26 2016-10-25 Dolby Laboratories Licensing Corporation Complexity allocation for video and image coding applications
US8724707B2 (en) * 2009-05-07 2014-05-13 Qualcomm Incorporated Video decoding using temporally constrained spatial dependency

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6115420A (en) * 1997-03-14 2000-09-05 Microsoft Corporation Digital video signal encoder and encoding method
US20070274396A1 (en) * 2006-05-26 2007-11-29 Ximin Zhang Complexity adaptive skip mode estimation for video encoding
US20110122942A1 (en) * 2009-11-20 2011-05-26 Texas Instruments Incorporated Techniques for perceptual encoding of video frames
US20110235706A1 (en) * 2010-03-25 2011-09-29 Texas Instruments Incorporated Region of interest (roi) video encoding

Cited By (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110447226A (zh) * 2017-03-23 2019-11-12 高通股份有限公司 用于对360度视频进行译码的自适应参数
CN107040787B (zh) * 2017-03-30 2019-08-02 宁波大学 一种基于视觉感知的3d-hevc帧间信息隐藏方法
CN107040787A (zh) * 2017-03-30 2017-08-11 宁波大学 一种基于视觉感知的3d‑hevc帧间信息隐藏方法
CN111034184A (zh) * 2017-08-29 2020-04-17 连株式会社 提高视频通话的视频质量
CN109429063B (zh) * 2017-08-29 2022-05-06 三星电子株式会社 视频编码装置
CN109429063A (zh) * 2017-08-29 2019-03-05 三星电子株式会社 视频编码装置
US11223662B2 (en) 2017-08-29 2022-01-11 Line Corporation Method, system, and non-transitory computer readable record medium for enhancing video quality of video call
CN111480175A (zh) * 2018-01-05 2020-07-31 沃尔沃卡车集团 具有显示与广角图像的至少一个失真部分邻接的广角图像的未失真部分的显示器的相机监视系统
CN111602401A (zh) * 2018-01-16 2020-08-28 Vid拓展公司 用于360度视频译码的自适应帧封装
CN111602401B (zh) * 2018-01-16 2024-01-09 Vid拓展公司 用于360度视频译码的自适应帧封装
CN108573287B (zh) * 2018-05-11 2021-10-29 浙江工业大学 一种基于深度神经网络的图像编解码器的训练方法
CN108573287A (zh) * 2018-05-11 2018-09-25 浙江工业大学 一种基于深度神经网络的图像编解码器的训练方法
CN110996099A (zh) * 2019-11-15 2020-04-10 网宿科技股份有限公司 一种视频编码方法、系统及设备
CN110933446B (zh) * 2019-11-15 2021-05-25 网宿科技股份有限公司 一种感兴趣区域的识别方法、系统及设备
CN110996099B (zh) * 2019-11-15 2021-05-25 网宿科技股份有限公司 一种视频编码方法、系统及设备
CN110933446A (zh) * 2019-11-15 2020-03-27 网宿科技股份有限公司 一种感兴趣区域的识别方法、系统及设备

Also Published As

Publication number Publication date
GB201301445D0 (en) 2013-03-13
EP2936813A1 (en) 2015-10-28
WO2014117049A1 (en) 2014-07-31
US20140211842A1 (en) 2014-07-31

Similar Documents

Publication Publication Date Title
CN105379268A (zh) 在视频编码中适应鲁棒性
CN105379269B (zh) 兴趣区域感知的视频编码
EP2936812B1 (en) Conditional concealment of lost video data
US9319714B2 (en) Intra prediction method and apparatus, and image encoding/decoding method and apparatus using same
JP6047835B2 (ja) 符号化方法及び送信端末
JP6175666B2 (ja) 誤り伝搬追跡および受信機からの誤りフィードバックを用いるビデオリフレッシュ
EP2737703B1 (en) Video refresh using error-free reference frames
US20130051467A1 (en) Hybrid inter/intra prediction in video coding systems
CN103609115A (zh) 具有基于知觉的帧内切换的模式决策
CN103733621A (zh) 基于低复杂度差错传播追踪的速率失真优化的视频编码模式选择
KR20110094765A (ko) 움직임 예측 장치 및 방법과 영상 처리 장치
MXPA06010360A (es) Metodos y aparato para tomar decisiones en modo rapido en codecs de video.
CN103650493A (zh) 低复杂度模式选择
CN103609122A (zh) 用于视频编码的率失真优化
US20160277767A1 (en) Methods, systems and apparatus for determining prediction adjustment factors
CN102946534A (zh) 视频编码
CN102946533B (zh) 视频编码
CN102946532A (zh) 视频编码
Dias et al. Perceptually driven video error protection using a distributed source coding approach

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
RJ01 Rejection of invention patent application after publication

Application publication date: 20160302

RJ01 Rejection of invention patent application after publication