CN112714312B - 编码模式选择方法、装置以及可读存储介质 - Google Patents

编码模式选择方法、装置以及可读存储介质 Download PDF

Info

Publication number
CN112714312B
CN112714312B CN201911016811.XA CN201911016811A CN112714312B CN 112714312 B CN112714312 B CN 112714312B CN 201911016811 A CN201911016811 A CN 201911016811A CN 112714312 B CN112714312 B CN 112714312B
Authority
CN
China
Prior art keywords
coding
candidate
mode
modes
unit
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.)
Active
Application number
CN201911016811.XA
Other languages
English (en)
Other versions
CN112714312A (zh
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.)
Tencent Technology Shenzhen Co Ltd
Original Assignee
Tencent Technology Shenzhen Co Ltd
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 Tencent Technology Shenzhen Co Ltd filed Critical Tencent Technology Shenzhen Co Ltd
Priority to CN201911016811.XA priority Critical patent/CN112714312B/zh
Publication of CN112714312A publication Critical patent/CN112714312A/zh
Application granted granted Critical
Publication of CN112714312B publication Critical patent/CN112714312B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

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/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/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
    • 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/186Methods 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 colour or a chrominance component

Landscapes

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

Abstract

本发明实施例公开了一种编码模式选择方法、装置以及可读存储介质,该方法包括:通过获取当前编码单元对应的候选编码模式列表,所述候选编码模式列表中包括M个候选编码模式,针对所述M个候选编码模式中前两个候选编码模式进行编码决策,若所述前两个候选编码模式中存在最佳编码模式,则跳过对所述M个候选编码模式中剩余M‑2个候选编码模式的所述编码决策,依据所述最佳编码模式对所述当前编码单元进行视频编码,若所述前两个候选编码模式中不存在最佳编码模式,则依次对剩余M‑2个所述候选编码模式进行所述编码决策,得到最佳编码模式;采用本发明实施例,有利于降低视频编码的编码时间。

Description

编码模式选择方法、装置以及可读存储介质
技术领域
本发明涉及视频编码技术领域,尤其涉及编码模式选择方法、装置以及可读存储介质。
背景技术
随着互联网的蓬勃发展,视频聊天、在线观看视频等视频业务已经得到十分广泛的运用,而视频业务的广泛运用不能离开视频编码技术的支持。现有的视频编码标准如HEVC(High Efficiency Video Coding,视频压缩编码),视频编码框架中采用的编码模式选择方式所选出的编码模式个数偏多,需要对编码单元的多个不同的编码模式进行遍历,得到其最佳的编码预测方式,提高了视频编码的复杂度,造成编码效率低。
发明内容
本发明实施例提供一种编码模式选择方法、装置以及可读存储介质,有利于降低视频编码的编码时间。
本发明实施例一方面提供了一种编码模式选择方法,包括:
获取当前编码单元对应的候选编码模式列表,所述候选编码模式列表中包括M个候选编码模式,其中,M为大于2的正整数;
针对所述M个候选编码模式中前两个候选编码模式进行编码决策;
若所述前两个候选编码模式中存在最佳编码模式,则跳过对所述M个候选编码模式中剩余M-2个候选编码模式的所述编码决策,依据所述最佳编码模式对所述当前编码单元进行视频编码;
若所述前两个候选编码模式中不存在最佳编码模式,则依次对剩余M-2个所述候选编码模式进行所述编码决策,得到最佳编码模式。
其中,所述针对所述M个候选编码模式中前两个候选编码模式进行编码决策,包括:
获取所述当前编码单元和所述当前编码单元对应的N个子编码单元,其中,N为大于1的正整数;
对所述M个候选编码模式中前两个候选编码模式进行第一处理,得到所述当前编码单元对应的第一运动矢量和所述N个子编码单元对应的N个第二运动矢量,其中,每一子编码单元对应一个第二运动矢量;
选取所述前两个候选编码模式中的编码代价较小者为目标候选编码模式;
根据所述N个第二运动矢量和所述第一运动矢量,判断所述目标候选编码模式是否为最佳编码模式。
其中,所述前两个候选编码模式分别为第一候选编码模式和第二候选编码模式;
所述选取所述前两个候选编码模式中的编码代价较小者为目标候选编码模式,包括:
依据所述第一候选编码模式,对所述当前编码单元进行预编码,得到所述第一编码代价;
依据所述第二候选编码模式,对所述当前编码单元进行预编码,得到所述第二编码代价;
对比所述第一编码代价与所述第二编码代价,选取所述第一编码代价与所述第二编码代价中的较小者为所述目标候选编码模式。
其中,所述依据所述第一候选编码模式,对所述当前编码单元进行预编码,得到所述第一编码代价,包括:
依据所述第一候选编码模式,对所述当前编码单元进行所述预编码,得到编码所述当前编码单元对应的比特数以及目标编码单元,所述目标编码单元为编码完成以后的编码单元;
确定所述当前编码单元以及目标编码单元之间的亮度和色度分量误差的平方和;
根据所述误差的平方和以及所述比特数,确定所述第一编码代价。
其中,所述对所述M个候选编码模式中前两个候选编码模式进行第一处理,得到所述当前编码单元对应的第一运动矢量和所述N个子编码单元对应的N个第二运动矢量,包括:
获取参考编码单元和所述参考编码单元对应的N个子参考编码单元;
在依据所述目标候选编码模式进行所述第一处理的过程中,计算所述当前编码单元与所述参考编码单元之间的第一运动矢量;
计算所述N个子编码单元和所述N个子参考编码单元之间的N个第二运动矢量。
其中,根据所述N个第二运动矢量和所述第一运动矢量,判断所述目标候选编码模式是否为最佳编码模式,包括:
若所述N个第二运动矢量中任意两个所述第二运动矢量均相同,且所述第一运动矢量和所述N个第二运动矢量中任意一个所述第二运动矢量相同,则确定所述目标候选编码模式为最佳编码模式;
若所述N个第二运动矢量中任意两个所述第二运动矢量不相同,或者所述第一运动矢量与所述N个第二运动矢量中任意一个所述第二运动矢量不相同,则确定所述目标候选编码模式不为所述最佳编码模式。
其中,所述依次对剩余M-2个所述候选编码模式进行所述编码决策,得到最佳编码模式,包括:
依据所述候选编码模式列表中的第三个候选编码模式,对所述当前编码单元进行预编码,得到第三运动矢量;
若所述第三运动矢量与所述N个第二运功矢量中任意一个相同,且所述N个第二运动矢量中任意两个所述第二运动矢量均相同,则确定所述第三个候选编码模式为最佳编码模式,依据所述第三候选编码模式对所述当前编码单元进行视频编码;
若所述第三运动矢量与所述N个第二运功矢量中任意一个不相同,且所述N个第二运动矢量中任意两个所述第二运动矢量不相同,则依次对剩余M-3个所述候选编码模式进行所述编码决策,得到最佳编码方式。
本发明实施例一方面提供了一种编码模式选择装置,包括:
获取模块,用于获取当前编码单元对应的候选编码模式列表,所述候选编码模式列表中包括M个候选编码模式,其中,M为大于2的正整数;
第一决策模块,用于针对所述M个候选编码模式中前两个候选编码模式进行编码决策;
编码模块,用于若所述前两个候选编码模式中存在最佳编码模式,则跳过对所述M个候选编码模式中剩余M-2个候选编码模式的所述编码决策,依据所述最佳编码模式对所述当前编码单元进行视频编码;
第二决策模块,用于若所述前两个候选编码模式中不存在最佳编码模式,则依次对剩余M-2个所述候选编码模式进行所述编码决策,得到最佳编码模式。
其中,所述第一决策模块,包括:
获取单元,用于获取所述当前编码单元和所述当前编码单元对应的N个子编码单元,其中,N为大于1的正整数;
第一处理单元,用于对所述M个候选编码模式中前两个候选编码模式进行第一处理,得到所述当前编码单元对应的第一运动矢量和所述N个子编码单元对应的N个第二运动矢量,其中,每一子编码单元对应一个第二运动矢量;
选取单元,用于选取所述前两个候选编码模式中的编码代价较小者为目标候选编码模式;
判断单元,用于根据所述N个第二运动矢量和所述第一运动矢量,判断所述目标候选编码模式是否为最佳编码模式。
其中,所述前两个候选编码模式分别为第一候选编码模式和第二候选编码模式;所述选取单元,包括:
第一预编码子单元,用于依据所述第一候选编码模式,对所述当前编码单元进行预编码,得到所述第一编码代价;
第二预编码子单元,用于依据所述第二候选编码模式,对所述当前编码单元进行预编码,得到所述第二编码代价;
对比子单元,用于对比所述第一编码代价与所述第二编码代价,选取所述第一编码代价与所述第二编码代价中的较小者为所述目标候选编码模式。
其中,所述第一预编码子单元具体用于:
依据所述第一候选编码模式,对所述当前编码单元进行所述预编码,得到编码所述当前编码单元对应的比特数以及目标编码单元,所述目标编码单元为编码完成以后的编码单元;
确定所述当前编码单元以及目标编码单元之间的亮度和色度分量误差的平方和;
根据所述误差的平方和以及所述比特数,确定所述第一编码代价。
其中,第一处理单元,包括:
获取子单元,用于获取参考编码单元和所述参考编码单元对应的N个子参考编码单元;
第一计算子单元,用于在依据所述目标候选编码模式进行所述第一处理的过程中,计算所述当前编码单元与所述参考编码单元之间的第一运动矢量;
第二计算子单元,用于计算所述N个子编码单元和所述N个子参考编码单元之间的N个第二运动矢量。
其中,所述判断单元,包括:
第一确定子单元,用于若所述N个第二运动矢量中任意两个所述第二运动矢量均相同,且所述第一运动矢量和所述N个第二运动矢量中任意一个所述第二运动矢量相同,则确定所述目标候选编码模式为最佳编码模式;
第二确定子单元,用于若所述N个第二运动矢量中任意两个所述第二运动矢量不相同,或者所述第一运动矢量与所述N个第二运动矢量中任意一个所述第二运动矢量不相同,则确定所述目标候选编码模式不为所述最佳编码模式。
其中,所述第二决策模块,包括:
预编码单元,用于依据所述候选编码模式列表中的第三个候选编码模式,对所述当前编码单元进行预编码,得到第三运动矢量;
确定单元,用于若所述第三运动矢量与所述N个第二运功矢量中任意一个相同,且所述N个第二运动矢量中任意两个所述第二运动矢量均相同,则确定所述第三个候选编码模式为最佳编码模式,依据所述第三候选编码模式对所述当前编码单元进行视频编码;
决策单元,用于若所述第三运动矢量与所述N个第二运功矢量中任意一个不相同,且所述N个第二运动矢量中任意两个所述第二运动矢量不相同,则依次对剩余M-3个所述候选编码模式进行所述编码决策,得到最佳编码方式。
本发明实施例一方面提供了一种编码模式选择装置,包括:处理器和存储器;
所述处理器和存储器相连,其中,所述存储器用于存储计算机程序,所述处理器用于调用所述计算机程序,以执行如本发明实施例中一方面中的方法。
本发明实施例一方面提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序包括程序指令,所述程序指令当被处理器执行时,执行如本发明实施例中一方面中的方法。
本发明实施例通过获取当前编码单元对应的候选编码模式列表,所述候选编码模式列表中包括M个候选编码模式,其中,M为大于2的正整数,针对所述M个候选编码模式中前两个候选编码模式进行编码决策,若所述前两个候选编码模式中存在最佳编码模式,则跳过对所述M个候选编码模式中剩余M-2个候选编码模式的所述编码决策,依据所述最佳编码模式对所述当前编码单元进行视频编码,若所述前两个候选编码模式中不存在最佳编码模式,则依次对剩余M-2个所述候选编码模式进行所述编码决策,得到最佳编码模式,从而,能够实现快速跳过编码决策中当前编码单元对应的剩余编码模式的计算,有利于降低视频编码的编码时间。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施例提供的一种编码模式选择的场景示意图;
图2是本发明实施例提供的一种编码模式选择方法的流程示意图;
图2a是本发明实施例提供的一种编码模式选择方法的框架示意图;
图2b是本发明实施例提供的一种编码单元的划分方式的结构示意图;
图3是本发明实施例提供的一种编码模式选择方法的流程示意图;
图3a是本发明实施例提供的一种编码单元和子编码单元的结构示意图;
图3b是本发明实施例提供的一种子编码单元的结构示意图;
图4是本发明实施例提供的一种编码模式选择方法的流程示意图;
图5是本发明实施例提供的一种编码模式选择装置的结构示意图;
图6是本发明实施例提供的另一种编码模式选择装置的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
请参见图1,是本发明实施例提供的一种编码模式选择的场景示意图。由于各种视频格式都有各自不同的算法,视频编码就是按照各自固有的算法,把视频资源编码成当前平台可以识别或者使用的格式,以保证视频的正常播放与使用,例如,在日常生活中最常见的视频编码有:把数码相机拍摄的照片制作成电子相册;有的网站上传视频限制了视频格式,也需要进行视频编码,视频编码在生活中随处可见,其重要性也就可见一斑。
如图1所示,图中的参考图像为视频中某一帧图像,可通过查找与当前编码单元或者当前编码单元对应的子编码单元“长得像”的参考编码单元作为“匹配块”,然后编码传输参考匹配块的位置(运动矢量,参考帧)和当前编码单元与参考编码单元之间的微小差别,当前图像为需要视频编码的图像,对应于参考编码单元,例如,当前图像中可对应选择一个单元作为当前编码单元,则参考图像中小汽车的左后轮可作为“匹配块”,也就是参考编码单元,例如,也可对应选择小汽车的左后轮作为当前图像,由于在进行视频编码时,可对当前编码单元对应的候选编码模式列表中每一候选编码模式进行运动估计和运动补偿,会导致帧间编码的复杂度远远高于帧内编码的复杂度,因此,为了减少编码复杂度,提高编码效率,则可采用编码时的自然产物,也就是当前编码单元对应的第一运动矢量和对当前编码单元进行划分得到的N个子编码单元对应的N个第二运动矢量,来确定最佳编码模式,其中,N为大于1的正整数,也就是说,确定编码复杂度最低的编码模式,上述运动矢量(MotionVector,MV)表示当前编码单元与其参考图像中的最佳的参考编码单元之间的相对位移。
例如,在图1中,可选用当前编码单元(小汽车坐后轮)对应的候选编码模式列表中的M个候选编码模式中前两个编码模式进行编码决策,其中,M为大于2的正整数,可得到当前编码单元对应的第一运动矢量和N个子编码单元对应的N个第二运动矢量,通过比对上述第一运动矢量以及上述N个第二运动矢量,可确定前两个候选编码模式中是否存在最佳编码模式,若前两个候选编码模式中存在最佳编码模式,则可跳过剩余的候选编码模式的编码决策,直接依据该最佳编码模式,对当前编码单元进行视频编码,若不存在,则继续对剩余的M-2个候选编码模式进行编码决策。
本发明实施例通过获取当前编码单元对应的候选编码模式列表,所述候选编码模式列表中包括M个候选编码模式,其中,M为大于2的正整数,针对所述M个候选编码模式中前两个候选编码模式进行编码决策,若所述前两个候选编码模式中存在最佳编码模式,则跳过对所述M个候选编码模式中剩余M-2个候选编码模式的所述编码决策,依据所述最佳编码模式对所述当前编码单元进行视频编码,若所述前两个候选编码模式中不存在最佳编码模式,则依次对剩余M-2个所述候选编码模式进行所述编码决策,得到最佳编码模式,从而,能够实现快速跳过编码决策中当前编码单元对应的剩余编码模式的计算,有利于降低视频编码的编码时间。
进一步地,请参阅图2,是本发明实施例提供的一种编码模式选择方法的流程示意图。如图2所示,所述编码模式选择方法可以包括:
步骤S101,获取当前编码单元对应的候选编码模式列表,所述候选编码模式列表中包括M个候选编码模式,其中,M为大于2的正整数;
具体的,获取当前编码单元对应的候选编码模式列表,其中,上述当前编码单元可理解为当前需要编码的编码单元,该当前编码单元可为一个编码单元(Coding Unit,CU),可针对编码单元预设候选编码模式列表,该候选编码模式列表中可包括M个候选编码模式,可依据该候选编码模式列表中的每一候选编码模式对当前编码单元进行视频编码,上述M为大于2的整数,例如在HEVC(High Efficiency Video Coding,视频压缩标准)标准中,上述候选编码模式可包括以下至少一种:跳跃(SKIP)模式、合并(MERGE)模式、帧间(INTER)模式等等,在此不作限定。
步骤S102,针对所述M个候选编码模式中前两个候选编码模式进行编码决策;
具体的,由于在进行视频编码模式的选取中,一般需要遍历全部的编码模式,会造成计算资源的浪费,同时也会降低视频编码的速率的降低,因此,在本发明实施例中,可优先选取M个候选编码模式中的前两个候选编码模式进行编码决策,编码决策的目的即在于决策出最佳编码模式,可通过该编码决策,对前两个候选编码模式进行选取,上述两个候选编码模式中可能存在最佳编码模式,若存在最佳编码模式,则该最佳编码模式为上述两个候选编码模式中的任意一个候选编码模式为最佳编码模式,也可能不存在最佳编码模式,该最佳编码模式可理解为编码速率最高的编码模式。
步骤S103,若所述前两个候选编码模式中存在最佳编码模式,则跳过对所述M个候选编码模式中剩余M-2个候选编码模式的所述编码决策,依据所述最佳编码模式对所述当前编码单元进行视频编码;
具体的,在进行编码决策之后,若前两个候选编码模式中存在最佳编码模式,该最佳编码模式为前两个候选模式中任意一个编码模式,则可依据该最佳编码模式,对上述当前编码单元进行视频编码,得到编码重建以后的编码单元,此时,不需要再进行剩下M-2个候选编码单元的编码决策或者遍历,从而,降低了视频编码器的编码时间,提高了视频编码的效率。
步骤S104,若所述前两个候选编码模式中不存在最佳编码模式,则依次对剩余M-2个所述候选编码模式进行所述编码决策,得到最佳编码模式。
具体的,若上述前两个候选编码模式中,不存在最佳编码模式,则可依次遍历上述候选编码模式列表中的剩余的M-2个候选编码模式,或者对上述剩余M-2个候选编码模式进行编码决策,从而,得到最佳编码模式,则该最佳编码模式为剩余M-2个候选编码模式中其中一个。
举例来说,如图2a所示,是本发明实施例提供的一种编码模式选择方法的框架示意图,其中,图中该当前编码单元对应的候选编码模式列表中包括SKIP/MERGE 2N*2N模式、INTER 2N*N模式、INTER 2N*2N模式、INTRA2N*2N模式、INTRAN*N模式等等,在视频解码技术中,编码单元的分割模式共有8种,主要分为两类:对称分割和非对称分割。其中,2N*2N,2N*N,N*2N和N*N为4种对称模式,如图2b所示,为一种编码单元的划分方式的结构示意图,具体的,在图2a中,可优先对前两种候选编码模式进行编码决策,若存在最佳编码方式,则该最佳编码方式可为SKIP 2N*2N模式和MERGE 2N*2N模式中任一种,则采取该最佳编码方式对当前编码单元进行编码,若不存在最佳编码方式,则可继续对下一个候选编码模式进行编码决策,即对INTER 2N*2N模式进行编码决策,若该INTER 2N*2N模式为最佳编码模式,则停止上述编码决策,采用INTER 2N*2N对当前编码模式进行视频编码,反之,则根据候选编码模式列表继续往下遍历,直到得到最佳编码模式为止。
本发明实施例通过获取当前编码单元对应的候选编码模式列表,所述候选编码模式列表中包括M个候选编码模式,其中,M为大于2的正整数,针对所述M个候选编码模式中前两个候选编码模式进行编码决策,若所述前两个候选编码模式中存在最佳编码模式,则跳过对所述M个候选编码模式中剩余M-2个候选编码模式的所述编码决策,依据所述最佳编码模式对所述当前编码单元进行视频编码,若所述前两个候选编码模式中不存在最佳编码模式,则依次对剩余M-2个所述候选编码模式进行所述编码决策,得到最佳编码模式,从而,能够实现快速跳过编码决策中当前编码单元对应的剩余编码模式的计算,有利于降低视频编码的编码时间。
请参阅图3,是本发明实施例提供的一种编码模式选择方法的流程示意图。如图3所示,所述编码模式选择方法可以包括:
S201,获取当前编码单元对应的候选编码模式列表,所述候选编码模式列表中包括M个候选编码模式,其中,M为大于2的正整数;
其中,步骤S201的具体实现方式可以参见上述图2所对应实施例中的步骤S101,此处不再赘述。
S202,获取所述当前编码单元和所述当前编码单元对应的N个子编码单元,其中,N为大于1的正整数;
具体的,可将上述当前编码单元划分为N个子编码单元,其中,上述N个子编码单元中每一子编码单元的大小相同,大小形状不受限制。
举例来说,如图3a所示,为一种编码单元和子编码单元的结构示意图,其中,可将上述当前编码单元划分为2*2(即4个)的大小相同的正方形(子编码单元),分别编号为0、1、2和3。
S203,对所述M个候选编码模式中前两个候选编码模式进行第一处理,得到所述当前编码单元对应的第一运动矢量和所述N个子编码单元对应的N个第二运动矢量,其中,每一子编码单元对应一个第二运动矢量;
具体的,上述第一处理可为用户自行设置或者系统默认,上述第一处理可理解为预编码处理,或者是遍历方式,可将上述M个候选编码模式中的前两个候选编码模式进行第一处理,以得到编码重建以后的编码单元,由于,在编码的过程中,得到上述第一运动矢量和N个子编码单元对应的N个第二运动矢量是必然的,因此,不需要重新进行计算就可得到第一运动矢量和N个第二运动矢量,有利于减少视频编码的决策时间。
可选地,在第一处理中,得到的N个子编码单元对应的N个第二运动矢量,其中,每一子编码单元对应一个第二运动矢量,该第二运动矢量可通过时域运动矢量预测和空域相邻运动矢量二者递归得到,如图3b所示,为一种子编码单元的结构示意图,其中,如图中所示,图3a中的编码单元可划分为4个子编码单元,编号分别为0、1、2和3,举例来说,子编码单元0的周围具有相邻的子编码单元a、子编码单元b、子编码单元c和子编码单元d,那么,子编码单元0的空域相邻运动矢量的获取始于对两个空域相邻块的识别,具体的,第一个相邻子编码单元是子编码单元0上的子编码单元c,如果不能获取到子编码单元c,则确认子编码单元0上其他的子编码单元,可从子编码单元c开始,从左到右开始递归,第二个相邻子编码单元是子编码单元0的左侧子编码单元b,如果子编码单元b不可获取,则确认左侧其余子编码单元,从子编码单元b开始,上至下递归,从而,获取到每个相邻的子编码单元的相邻运动矢量,得到多个相邻运动矢量,最后对上述多个相邻运动矢量求均值,该均值即为子编码单元0对应的第二运动矢量,如此,可得到上述N个子编码单元对应的N个第二运动矢量。
S204,选取所述前两个候选编码模式中的编码代价较小者为目标候选编码模式;
具体的,若前两个候选编码模式分别为第一候选编码模式和第二候选编码模式,上述第一候选编码模式和第二候选编码模式可为帧间编码模式或者帧内编码模式,可依据上述第一候选编码模式,对当前编码单元进行预编码,得到第一编码代价,上述预编码可理解为依据第一候选编码模式对上述当前编码单元进行遍历,同样的,可依据第二候选编码模式,对所述当前编码单元进行预编码,得到所述第二编码代价,最后,可对比所述第一编码代价与所述第二编码代价,选取所述第一编码代价与第二编码代价中的较小者为目标候选编码模式,在视频编码技术中,上述第一处理中得到的编码代价是预编码过程中的必然产物,因此,可直接通过对比编码代价的大小,选取编码代价较小者为目标候选编码模式,可节省编码决策的时间。
可选的,上述依据第一候选模式,对当前编码单元进行预编码,得到第一编码代价的步骤可包括:依据第一候选编码模式,对当前编码单元进行预编码,得到编码当前编码单元对应的比特数以及目标编码单元,目标编码单元为编码完成以后的编码单元,确定当前编码单元以及目标编码单元之间的亮度和色度分量误差的平方和,根据误差的平方和以及比特数,确定第一编码代价。
具体的,可依据下述公式(1)得到第一编码代价:
J=SSE+λ*RTOTAL
其中,上述J为编码代价,SSE为当前编码单元以及目标编码单元之间的亮度和色度分量误差的平方和,RTOTAL为采用候选编码模式编码当前编码单元一共需要的比特数,上述目标编码单元为编码重建以后的编码单元。
S205,根据所述N个第二运动矢量和所述第一运动矢量,判断所述目标候选编码模式是否为最佳编码模式;
具体的,由于在视频编码技术中,上述N个子编码单元对应的N个第二运动矢量和编码单元对应的第一运动矢量均为视频编码过程中的必然产物,因此,可直接通过比较上述N个第二运动矢量和第一运动矢量的方向和大小,确定上述目标候选编码模式是否为最佳编码模式,也就是说,可直接通过子块运动矢量,快速跳过编码决策中的剩余编码模式的计算,从而有利于减少视频编码的编码时间。
此外,若目标候选编码模式为上述第一候选编码模式,则可通过该第一候选编码模式对应的第一运动矢量和N个第二运动矢量,判断该第一候选编码模式是否为最佳编码模式,同理,若目标候选编码模式为第二候选编码模式,则可通过该第二候选编码模式对应的第一运动矢量和N个第二运动矢量,判断该第二候选编码模式是否为最佳编码模式。
S206,若所述前两个候选编码模式中存在最佳编码模式,则跳过对所述M个候选编码模式中剩余M-2个候选编码模式的所述编码决策,依据所述最佳编码模式对所述当前编码单元进行视频编码;
S207,若所述前两个候选编码模式中不存在最佳编码模式,则依次对剩余M-2个所述候选编码模式进行所述编码决策,得到最佳编码模式。
其中,若前两个候选编码模式中不存在最佳编码模式,即上述目标候选编码模式不为最佳编码模式,则可依次从剩余M-2个候选编码模式中选出最佳编码模式,若前两个候选编码模式中存在最佳编码模式,即上述目标候选编码模式为最佳编码模式,则可依据目标候选编码模式对当前编码单元进行视频编码,上述步骤S206-步骤S207的具体实现方式可以参见上述图2所对应实施例中的步骤S103-步骤S104,此处不再赘述。
本发明实施例通过获取当前编码单元对应的候选编码模式列表,候选编码模式列表中包括M个候选编码模式,其中,M为大于2的正整数,获取当前编码单元和当前编码单元对应的N个子编码单元,其中,N为大于1的正整数,对M个候选编码模式中前两个候选编码模式进行第一处理,得到当前编码单元对应的第一运动矢量和N个子编码单元对应的N个第二运动矢量,其中,每一子编码单元对应一个第二运动矢量,选取前两个候选编码模式中的编码代价较小者为目标候选编码模式,根据N个第二运动矢量和第一运动矢量,判断目标候选编码模式是否为最佳编码模式,若前两个候选编码模式中存在最佳编码模式,则跳过对M个候选编码模式中剩余M-2个候选编码模式的编码决策,依据最佳编码模式对当前编码单元进行视频编码,若前两个候选编码模式中不存在最佳编码模式,则依次对剩余M-2个候选编码模式进行编码决策,得到最佳编码模式,如此,可直接通过第一处理过程中得到的编码单元对应的第一运动矢量和N个子编码单元对应的N个第二运动矢量来判断上述目标候选编码模式是否为最佳编码模式,最后,若该目标编码模式不为最佳编码模式,则依次对剩余M-2个候选编码模式进行编码决策,得到最佳编码模式,若该目标编码模式为最佳编码模式,则可依据目标编码模式进行视频编码,不需要进行后续的剩余的候选编码模式的编码决策,有利于降低视频编码的编码时间。
进一步的,请参见图4,是本发明实施例提供的另一种编码模式选择方法的流程示意图。如图4所示,上述编码模式选择方法可以包括:
S301,获取当前编码单元对应的候选编码模式列表,所述候选编码模式列表中包括M个候选编码模式,其中,M为大于2的正整数;
其中,步骤S301的具体实现方式可以参见上述图2所对应实施例中的步骤S101,此处不再赘述。
S302,获取所述当前编码单元和所述当前编码单元对应的N个子编码单元,其中,N为大于1的正整数;
其中,步骤S301的具体实现方式可以参见上述图3所对应实施例中的步骤S202,此处不再赘述。
S303,获取参考编码单元和所述参考编码单元对应的N个子参考编码单元;
其中,上述参考编码单元为参考图像中与当前图像中当前编码单元对应的编码块,在视频编码时,可将上述当前编码单元划分为N个子编码单元,同样的,可将参考编码单元划分为N个子参考编码单元,每一子参考编码单元和每一子编码单元可一一对应。
S304,在依据所述目标候选编码模式进行所述第一处理的过程中,计算所述当前编码单元与所述参考编码单元之间的第一运动矢量;
其中,上述第一处理可理解为预编码或者是遍历目标候选编码模式,可在预编码的过程中,得到当前编码单元与参考编码单元之间的第一运动矢量,该第一运动矢量可为参考图像中的某个参考编码单元的对当前编码单元进行预测,在预测的过程中只有平移,该平移的大小被称为运动矢量,可将参考图像和当前图像均置于同一预设坐标系中,上述参考编码单元和当前编码单元均可对应于预设坐标系中的具体坐标中,则第一运动矢量可为参考编码单元对应的坐标到当前编码单元对应的坐标之间的距离。
S305,计算所述N个子编码单元和所述N个子参考编码单元之间的N个第二运动矢量;
其中,上述每一子编码单元对应一个子参考编码单元,每一子编码单元对应一个第二运动矢量,由于上述N个子编码单元是由编码单元划分而来,因此,上述N个子编码单元和N个子参考编码单元之间的N个第二运动矢量为:在上述预设坐标系中N个子编码单元对应的N个坐标与N个子参考编码单元对应的N个坐标之间的距离,其中,每一距离对应一个子编码单元,上述多个第二运动矢量可相同或者不同,上述第二运动矢量与上述第一运动矢量可相同或不同,如此,可得到参考图像对应的子参考编码单元与当前图像对应的子编码单元之间的第二运动矢量。
S306,选取所述前两个候选编码模式中的编码代价较小者为目标候选编码模式;
其中,步骤S306的具体实现方式可以参见上述图3所对应实施例中的步骤S204,此处不再赘述。
S307,若所述N个第二运动矢量中任意两个所述第二运动矢量均相同,且所述第一运动矢量和所述N个第二运动矢量中任意一个所述第二运动矢量相同,则确定所述目标候选编码模式为最佳编码模式;
其中,可通过比较N个第二运动矢量以及第一运动矢量,确定上述目标候选编码模式为最佳编码模式,具体的,若上述N个第二运动矢量均相同,说明上述参考图像对应的N个子参考编码单元与当前图像对应的N个子编码单元中每一子参考编码单元与子编码单元之间的距离是相同的,也就是说,在预编码中,参考图像对应的N个子参考编码单元与当前图像对应的N个子编码单元之间的平移量相同,此时,还不能说明当前图像对应的当前编码单元与参考图像对应的参考编码单元之间的平移量与其对应的子编码单元与自参考编码单元之间的平移量相同,因此,可比较第一运动矢量与N个第二运动矢量中的任意一个第二运动矢量,若相同,则可表明参考图像与当前图像是相对的,在视频解码的过程中,可达到较为精确的编码,编码以后的视频图像的图像质量可最大化的保持原图像的图像质量,因此,可确定上述目标候选编码模式为最佳编码模式。
S308,跳过对所述M个候选编码模式中剩余M-2个候选编码模式的所述编码决策,依据所述最佳编码模式对所述当前编码单元进行视频编码;
其中,步骤S308的具体实现方式可以参见上述图2所对应实施例中的步骤S106,此处不再赘述。
S309,若所述N个第二运动矢量中任意两个所述第二运动矢量不相同,或者所述第一运动矢量与所述N个第二运动矢量中任意一个所述第二运动矢量不相同,则确定所述目标候选编码模式不为所述最佳编码模式;
其中,若上述N个子编码单元对应的N个运动矢量中任意的两两第二运动矢量不同,或者,上述第一运动矢量与N个第二运动矢量中任意一个不同,则表明当前图像对应的当前编码单元与参考图像对应的参考编码单元之间的平移量与其对应的子编码单元与自参考编码单元之间的平移量不相同,若采用上述目标候选编码模式,则可能会造成视频解码以后的图像不清楚,图像质量不高,则会严重影响视觉效果,因此,可确定上述目标候选编码模式不为最佳编码模式,可进一步的进行编码决策,以得到最佳编码模式,例如,可依次对剩余M-2个候选编码模式进行编码决策,得到最佳编码模式。
S310,依次对剩余M-2个所述候选编码模式进行所述编码决策,得到最佳编码模式。
其中,步骤S310的具体实现方式可以参见上述图2所对应实施例中的步骤S107,此处不再赘述。
可选地,上述依次对剩余M-2个候选编码模式进行编码决策,得到最佳编码模式可包括以下步骤:依据候选编码模式列表中的第三个候选编码模式,对当前编码单元进行预编码,得到第三运动矢量,若第三运动矢量与N个第二运功矢量中任意一个相同,且N个第二运动矢量中任意两个第二运动矢量均相同,则确定第三个候选编码模式为最佳编码模式,依据第三候选编码模式对当前编码单元进行视频编码,若第三运动矢量与N个第二运功矢量中任意一个不相同,且N个第二运动矢量中任意两个第二运动矢量不相同,则依次对剩余M-3个候选编码模式进行编码决策,得到最佳编码方式,如此,可逐个依次的判断候选编码模式是否为最佳编码模式,若为最佳编码模式,则可结束编码决策,从而,根据编码决策过程中得到的子编码单元的运动矢量信息,来快速跳过编码决策中当前编码单元对应的剩余编码模式的计算,从而能够有效降低视频编码器的编码时间。
可选的,依次对剩余M-2个候选编码模式进行编码决策,得到最佳编码模式的步骤还可包括:依据候选编码模式列表中的第三个候选编码模式,对上述当前编码单元进行预编码,得到第三个候选编码模式对应的第三编码代价,比较上述第一编码代价、第二编码代价和第三编码代价,选取第一编码代价、第二编码代价和第三编码代价三者中的最小值对应的候选编码模式为目标候选编码模式,该目标候选编码模式可为候选编码模式列表中的前三个候选编码模式中任意一个,继而,依据目标候选编码模式对当前编码单元进行上述第一处理,得到目标编码单元对应的第一目标运动矢量和N个子编码单元对应的N个第二目标运动矢量,进而,可通过比较第一目标运动矢量和N个第二目标运动矢量,判断上述目标编码模式是否为最佳编码模式,具体实施方式可参考上述S306-S310中的具体步骤,在此不做赘述,如此,若仍然不存在最佳编码模式,则可依次对上述M-3个候选编码模式进行编码决策。
本发明实施例通过获取当前编码单元对应的候选编码模式列表,候选编码模式列表中包括M个候选编码模式,其中,M为大于2的正整数,获取当前编码单元和当前编码单元对应的N个子编码单元,其中,N为大于1的正整数,获取参考编码单元和参考编码单元对应的N个子参考编码单元,在依据目标候选编码模式进行第一处理的过程中,计算当前编码单元与参考编码单元之间的第一运动矢量,计算N个子编码单元和N个子参考编码单元之间的N个第二运动矢量,选取前两个候选编码模式中的编码代价较小者为目标候选编码模式,若N个第二运动矢量中任意两个第二运动矢量均相同,且第一运动矢量和N个第二运动矢量中任意一个第二运动矢量相同,则确定目标候选编码模式为最佳编码模式,跳过对M个候选编码模式中剩余M-2个候选编码模式的编码决策,依据最佳编码模式对当前编码单元进行视频编码;若N个第二运动矢量中任意两个第二运动矢量不相同,或者第一运动矢量与N个第二运动矢量中任意一个第二运动矢量不相同,则确定目标候选编码模式不为最佳编码模式,如此,可通过比较第一运动矢量和多个第二运动矢量,判断上述目标候选编码模式是否为最佳编码模式,决定是否需要进行剩下的候选编码模式的编码决策,可有效的减少编码决策的时间,从而,有利于提高视频编码的效率,同时,也有利于保证视频编码后的视频图像质量。
请参阅图5,是本发明实施例提供的一种编码模式选择装置的结构示意图。如图5所示,该编码模式选择装置1可以包括获取模块11、第一决策模块12、编码模块13和第二决策模块14;
获取模块11,用于获取当前编码单元对应的候选编码模式列表,所述候选编码模式列表中包括M个候选编码模式,其中,M为大于2的正整数;
第一决策模块12,用于针对所述M个候选编码模式中前两个候选编码模式进行编码决策;
编码模块13,用于若所述前两个候选编码模式中存在最佳编码模式,则跳过对所述M个候选编码模式中剩余M-2个候选编码模式的所述编码决策,依据所述最佳编码模式对所述当前编码单元进行视频编码;
第二决策模块14,用于若所述前两个候选编码模式中不存在最佳编码模式,则依次对剩余M-2个所述候选编码模式进行所述编码决策,得到最佳编码模式。
其中,获取模块11、第一决策模块12、编码模块13和第二决策模块14的具体功能实现方式可以参见上述图2对应实施例中的步骤S101-步骤S104,这里不再进行赘述。
请一并参见图5,其中,所述第一决策模块12,包括:
获取单元121,用于获取所述当前编码单元和所述当前编码单元对应的N个子编码单元,其中,N为大于1的正整数;
第一处理单元122,用于对所述M个候选编码模式中前两个候选编码模式进行第一处理,得到所述当前编码单元对应的第一运动矢量和所述N个子编码单元对应的N个第二运动矢量,其中,每一子编码单元对应一个第二运动矢量;
选取单元123,用于选取所述前两个候选编码模式中的编码代价较小者为目标候选编码模式;
判断单元124,用于根据所述N个第二运动矢量和所述第一运动矢量,判断所述目标候选编码模式是否为最佳编码模式。
其中,获取单元121、第一处理单元122、选取单元123和判断单元124的具体功能实现方式可以参见上述图3对应实施例中的步骤S202-S205,这里不再进行赘述。
请一并参见图5,若所述前两个候选编码模式分别为第一候选编码模式和第二候选编码模式;所述选取单元123,包括:
第一预编码子单元1231,用于依据所述第一候选编码模式,对所述当前编码单元进行预编码,得到所述第一编码代价;
第二预编码子单元1232,用于依据所述第二候选编码模式,对所述当前编码单元进行预编码,得到所述第二编码代价;
对比子单元1233,用于对比所述第一编码代价与所述第二编码代价,选取所述第一编码代价与所述第二编码代价中的较小者为所述目标候选编码模式。
其中,第一预编码子单元1231、第二预编码子单元1232和对比子单元1233的具体功能实现方式可以参见上述图3对应实施例中的步骤S204,这里不再进行赘述。
请一并参见图5,所述第一预编码子单元1231具体用于:
依据所述第一候选编码模式,对所述当前编码单元进行所述预编码,得到编码所述当前编码单元对应的比特数以及目标编码单元,所述目标编码单元为编码完成以后的编码单元;
确定所述当前编码单元以及目标编码单元之间的亮度和色度分量误差的平方和;
根据所述误差的平方和以及所述比特数,确定所述第一编码代价。
请一并参见图5,第一处理单元122,包括:
获取子单元1221,用于获取参考编码单元和所述参考编码单元对应的N个子参考编码单元;
第一计算子单元1222,用于在依据所述目标候选编码模式进行所述第一处理的过程中,计算所述当前编码单元与所述参考编码单元之间的第一运动矢量;
第二计算子单元1223,用于计算所述N个子编码单元和所述N个子参考编码单元之间的N个第二运动矢量。
其中,获取子单元1221、第一计算子单元1222和第二计算子单元1223的具体功能实现方式可以参见上述图4对应实施例中的步骤S303-S305,这里不再进行赘述。
请一并参见图5,所述判断单元124,包括:
第一确定子单元1241,用于若所述N个第二运动矢量中任意两个所述第二运动矢量均相同,且所述第一运动矢量和所述N个第二运动矢量中任意一个所述第二运动矢量相同,则确定所述目标候选编码模式为最佳编码模式;
第二确定子单元1242,用于若所述N个第二运动矢量中任意两个所述第二运动矢量不相同,或者所述第一运动矢量与所述N个第二运动矢量中任意一个所述第二运动矢量不相同,则确定所述目标候选编码模式不为所述最佳编码模式。
其中,第一确定子单元1241和第二确定子单元1242的具体功能实现方式可以参见上述图4对应实施例中的步骤S307和S309,这里不再进行赘述。
请一并参见图5,所述第二决策模块14,包括:
预编码单元141,用于依据所述候选编码模式列表中的第三个候选编码模式,对所述当前编码单元进行预编码,得到第三运动矢量;
确定单元142,用于若所述第三运动矢量与所述N个第二运功矢量中任意一个相同,且所述N个第二运动矢量中任意两个所述第二运动矢量均相同,则确定所述第三个候选编码模式为最佳编码模式,依据所述第三候选编码模式对所述当前编码单元进行视频编码;
决策单元143,用于若所述第三运动矢量与所述N个第二运功矢量中任意一个不相同,且所述N个第二运动矢量中任意两个所述第二运动矢量不相同,则依次对剩余M-3个所述候选编码模式进行所述编码决策,得到最佳编码方式。
其中,预编码单元141、确定单元142和决策单元143的具体功能实现方式可以参见上述图4对应实施例中的步骤S310这里不再进行赘述。
本发明实施例通过获取当前编码单元对应的候选编码模式列表,所述候选编码模式列表中包括M个候选编码模式,其中,M为大于2的正整数,针对所述M个候选编码模式中前两个候选编码模式进行编码决策,若所述前两个候选编码模式中存在最佳编码模式,则跳过对所述M个候选编码模式中剩余M-2个候选编码模式的所述编码决策,依据所述最佳编码模式对所述当前编码单元进行视频编码,若所述前两个候选编码模式中不存在最佳编码模式,则依次对剩余M-2个所述候选编码模式进行所述编码决策,得到最佳编码模式,从而,能够实现快速跳过编码决策中当前编码单元对应的剩余编码模式的计算,有利于降低视频编码的编码时间。
请参见图6,图6是本发明实施例提供的又一种编码模式选择装置的结构示意图。如图6所示,该编码模式选择装置1000可以包括:处理器1001,网络接口1004和存储器1005,此外,上述编码模式选择装置1000还可以包括:用户接口1003,和至少一个通信总线1002。其中,通信总线1002用于实现这些组件之间的连接通信。其中,用户接口1003可以包括显示屏(Display)、键盘(Keyboard),可选用户接口1003还可以包括标准的有线接口、无线接口。网络接口1004可选的可以包括标准的有线接口、无线接口(如WI-FI接口)。存储器1004可以是高速RAM存储器,也可以是非不稳定的存储器(non-volatile memory),例如至少一个磁盘存储器。存储器1005可选的还可以是至少一个位于远离前述处理器1001的存储装置。如图6所示,作为一种计算机可读存储介质的存储器1005中可以包括操作系统、网络通信模块、用户接口模块以及设备控制应用程序。
在如图6所示的编码模式选择装置1000中,网络接口1004可提供网络通讯功能;而用户接口1003主要用于为用户提供输入的接口;而处理器1001可以用于调用存储器1005中存储的设备控制应用程序,以实现:
获取当前编码单元对应的候选编码模式列表,所述候选编码模式列表中包括M个候选编码模式,其中,M为大于2的正整数;
针对所述M个候选编码模式中前两个候选编码模式进行编码决策;
若所述前两个候选编码模式中存在最佳编码模式,则跳过对所述M个候选编码模式中剩余M-2个候选编码模式的所述编码决策,依据所述最佳编码模式对所述当前编码单元进行视频编码;
若所述前两个候选编码模式中不存在最佳编码模式,则依次对剩余M-2个所述候选编码模式进行所述编码决策,得到最佳编码模式。
在一个实施例中,所述处理器1001在针对所述M个候选编码模式中前两个候选编码模式进行编码决策时,具体执行以下步骤:
获取所述当前编码单元和所述当前编码单元对应的N个子编码单元,其中,N为大于1的正整数;
对所述M个候选编码模式中前两个候选编码模式进行第一处理,得到所述当前编码单元对应的第一运动矢量和所述N个子编码单元对应的N个第二运动矢量,其中,每一子编码单元对应一个第二运动矢量;
选取所述前两个候选编码模式中的编码代价较小者为目标候选编码模式;
根据所述N个第二运动矢量和所述第一运动矢量,判断所述目标候选编码模式是否为最佳编码模式。
在一个实施例中,所述前两个候选编码模式分别为第一候选编码模式和第二候选编码模式;所述处理器1001在所述选取所述前两个候选编码模式中的编码代价较小者为目标候选编码模式时,具体执行以下步骤:
依据所述第一候选编码模式,对所述当前编码单元进行预编码,得到所述第一编码代价;
依据所述第二候选编码模式,对所述当前编码单元进行预编码,得到所述第二编码代价;
对比所述第一编码代价与所述第二编码代价,选取所述第一编码代价与所述第二编码代价中的较小者为所述目标候选编码模式。
在一个实施例中,所述处理器1001在依据所述第一候选编码模式,对所述当前编码单元进行预编码,得到所述第一编码代价时,具体执行以下步骤:
依据所述第一候选编码模式,对所述当前编码单元进行所述预编码,得到编码所述当前编码单元对应的比特数以及目标编码单元,所述目标编码单元为编码完成以后的编码单元;
确定所述当前编码单元以及目标编码单元之间的亮度和色度分量误差的平方和;
根据所述误差的平方和以及所述比特数,确定所述第一编码代价。
在一个实施例中,所述处理器1001在对所述M个候选编码模式中前两个候选编码模式进行第一处理,得到所述当前编码单元对应的第一运动矢量和所述N个子编码单元对应的N个第二运动矢量时,具体执行以下步骤:
获取参考编码单元和所述参考编码单元对应的N个子参考编码单元;
在依据所述目标候选编码模式进行所述第一处理的过程中,计算所述当前编码单元与所述参考编码单元之间的第一运动矢量;
计算所述N个子编码单元和所述N个子参考编码单元之间的N个第二运动矢量。
在一个实施例中,所述处理器1001在根据所述N个第二运动矢量和所述第一运动矢量,判断所述目标候选编码模式是否为最佳编码模式时,具体执行以下步骤:
若所述N个第二运动矢量中任意两个所述第二运动矢量均相同,且所述第一运动矢量和所述N个第二运动矢量中任意一个所述第二运动矢量相同,则确定所述目标候选编码模式为最佳编码模式;
若所述N个第二运动矢量中任意两个所述第二运动矢量不相同,或者所述第一运动矢量与所述N个第二运动矢量中任意一个所述第二运动矢量不相同,则确定所述目标候选编码模式不为所述最佳编码模式。
在一个实施例中,所述处理器1001在依次对剩余M-2个所述候选编码模式进行所述编码决策,得到最佳编码模式时,具体执行以下步骤:
依据所述候选编码模式列表中的第三个候选编码模式,对所述当前编码单元进行预编码,得到第三运动矢量;
若所述第三运动矢量与所述N个第二运功矢量中任意一个相同,且所述N个第二运动矢量中任意两个所述第二运动矢量均相同,则确定所述第三个候选编码模式为最佳编码模式,依据所述第三候选编码模式对所述当前编码单元进行视频编码;
若所述第三运动矢量与所述N个第二运功矢量中任意一个不相同,且所述N个第二运动矢量中任意两个所述第二运动矢量不相同,则依次对剩余M-3个所述候选编码模式进行所述编码决策,得到最佳编码方式。
本发明实施例通过获取当前编码单元对应的候选编码模式列表,所述候选编码模式列表中包括M个候选编码模式,其中,M为大于2的正整数,针对所述M个候选编码模式中前两个候选编码模式进行编码决策,若所述前两个候选编码模式中存在最佳编码模式,则跳过对所述M个候选编码模式中剩余M-2个候选编码模式的所述编码决策,依据所述最佳编码模式对所述当前编码单元进行视频编码,若所述前两个候选编码模式中不存在最佳编码模式,则依次对剩余M-2个所述候选编码模式进行所述编码决策,得到最佳编码模式,从而,能够实现快速跳过编码决策中当前编码单元对应的剩余编码模式的计算,有利于降低视频编码的编码时间。
应当理解,本发明实施例中所描述的编码模式选择装置1000可执行前文图2到图4任一个所对应实施例中对所述编码模式选择方法的描述,也可执行前文图5所对应实施例中对所述编码模式选择装置1的描述,在此不再赘述。另外,对采用相同方法的有益效果描述,也不再进行赘述。
此外,这里需要指出的是:本发明实施例还提供了一种计算机可读存储介质,且所述计算机可读存储介质中存储有前文提及的编码模式选择装置1所执行的计算机程序,且所述计算机程序包括程序指令,当所述处理器执行所述程序指令时,能够执行前文图2到图4任一个所对应实施例中对所述编码模式选择方法的描述,因此,这里将不再进行赘述。另外,对采用相同方法的有益效果描述,也不再进行赘述。对于本发明所涉及的计算机可读存储介质实施例中未披露的技术细节,请参照本发明方法实施例的描述。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,所述的存储介质可为磁碟、光盘、只读存储存储器(Read-Only Memory,ROM)或随机存储存储器(Random AccessMemory,RAM)等。
以上所揭露的仅为本发明较佳实施例而已,当然不能以此来限定本发明之权利范围,因此依本发明权利要求所作的等同变化,仍属本发明所涵盖的范围。

Claims (9)

1.一种编码模式选择方法,其特征在于,包括:
获取当前编码单元对应的候选编码模式列表,所述候选编码模式列表中包括M个候选编码模式,其中,M为大于2的正整数;
针对所述M个候选编码模式中前两个候选编码模式进行编码决策;
若所述前两个候选编码模式中存在最佳编码模式,则跳过对所述M个候选编码模式中剩余M-2个候选编码模式的所述编码决策,依据所述最佳编码模式对所述当前编码单元进行视频编码;
若所述前两个候选编码模式中不存在最佳编码模式,则依次对剩余M-2个所述候选编码模式进行所述编码决策,得到最佳编码模式;
所述针对所述M个候选编码模式中前两个候选编码模式进行编码决策,包括:
获取所述当前编码单元和所述当前编码单元对应的N个子编码单元,其中,N为大于1的正整数;
对所述M个候选编码模式中前两个候选编码模式进行第一处理,得到所述当前编码单元对应的第一运动矢量和所述N个子编码单元对应的N个第二运动矢量,其中,每一子编码单元对应一个第二运动矢量;
选取所述前两个候选编码模式中的编码代价较小者为目标候选编码模式;
根据所述N个第二运动矢量和所述第一运动矢量,判断所述目标候选编码模式是否为最佳编码模式,包括:
若所述N个第二运动矢量中任意两个所述第二运动矢量均相同,且所述第一运动矢量和所述N个第二运动矢量中任意一个所述第二运动矢量相同,则确定所述目标候选编码模式为最佳编码模式;
若所述N个第二运动矢量中任意两个所述第二运动矢量不相同,或者所述第一运动矢量与所述N个第二运动矢量中任意一个所述第二运动矢量不相同,则确定所述目标候选编码模式不为所述最佳编码模式。
2.根据权利要求1所述的方法,其特征在于,所述前两个候选编码模式分别为第一候选编码模式和第二候选编码模式;
所述选取所述前两个候选编码模式中的编码代价较小者为目标候选编码模式,包括:
依据所述第一候选编码模式,对所述当前编码单元进行预编码,得到第一编码代价;
依据所述第二候选编码模式,对所述当前编码单元进行预编码,得到第二编码代价;
对比所述第一编码代价与所述第二编码代价,选取所述第一编码代价与所述第二编码代价中的较小者为所述目标候选编码模式。
3.根据权利要求2所述的方法,其特征在于,所述依据所述第一候选编码模式,对所述当前编码单元进行预编码,得到所述第一编码代价,包括:
依据所述第一候选编码模式,对所述当前编码单元进行所述预编码,得到编码所述当前编码单元对应的比特数以及目标编码单元,所述目标编码单元为编码完成以后的编码单元;
确定所述当前编码单元以及目标编码单元之间的亮度和色度分量误差的平方和;
根据所述误差的平方和以及所述比特数,确定所述第一编码代价。
4.根据权利要求1所述的方法,其特征在于,所述对所述M个候选编码模式中前两个候选编码模式进行第一处理,得到所述当前编码单元对应的第一运动矢量和所述N个子编码单元对应的N个第二运动矢量,包括:
获取参考编码单元和所述参考编码单元对应的N个子参考编码单元;
在依据所述目标候选编码模式进行所述第一处理的过程中,计算所述当前编码单元与所述参考编码单元之间的第一运动矢量;
计算所述N个子编码单元和所述N个子参考编码单元之间的N个第二运动矢量。
5.根据权利要求1-4任一项所述的方法,其特征在于,所述依次对剩余M-2个所述候选编码模式进行所述编码决策,得到最佳编码模式,包括:
依据所述候选编码模式列表中的第三个候选编码模式,对所述当前编码单元进行预编码,得到第三运动矢量;
若所述第三运动矢量与所述N个第二运动矢量中任意一个相同,且所述N个第二运动矢量中任意两个所述第二运动矢量均相同,则确定所述第三个候选编码模式为最佳编码模式,依据所述第三个候选编码模式对所述当前编码单元进行视频编码;
若所述第三运动矢量与所述N个第二运动矢量中任意一个不相同,且所述N个第二运动矢量中任意两个所述第二运动矢量不相同,则依次对剩余M-3个所述候选编码模式进行所述编码决策,得到最佳编码模式。
6.一种编码模式选择装置,其特征在于,包括:
获取模块,用于获取当前编码单元对应的候选编码模式列表,所述候选编码模式列表中包括M个候选编码模式,其中,M为大于2的正整数;
第一决策模块,用于针对所述M个候选编码模式中前两个候选编码模式进行编码决策;
编码模块,用于若所述前两个候选编码模式中存在最佳编码模式,则跳过对所述M个候选编码模式中剩余M-2个候选编码模式的所述编码决策,依据所述最佳编码模式对所述当前编码单元进行视频编码;
第二决策模块,用于若所述前两个候选编码模式中不存在最佳编码模式,则依次对剩余M-2个所述候选编码模式进行所述编码决策,得到最佳编码模式;
所述第一决策模块,包括:
获取单元,用于获取所述当前编码单元和所述当前编码单元对应的N个子编码单元,其中,N为大于1的正整数;
第一处理单元,用于对所述M个候选编码模式中前两个候选编码模式进行第一处理,得到所述当前编码单元对应的第一运动矢量和所述N个子编码单元对应的N个第二运动矢量,其中,每一子编码单元对应一个第二运动矢量;
选取单元,用于选取所述前两个候选编码模式中的编码代价较小者为目标候选编码模式;
判断单元,用于根据所述N个第二运动矢量和所述第一运动矢量,判断所述目标候选编码模式是否为最佳编码模式;
所述判断单元,包括:
第一确定子单元,用于若所述N个第二运动矢量中任意两个所述第二运动矢量均相同,且所述第一运动矢量和所述N个第二运动矢量中任意一个所述第二运动矢量相同,则确定所述目标候选编码模式为最佳编码模式;
第二确定子单元,用于若所述N个第二运动矢量中任意两个所述第二运动矢量不相同,或者所述第一运动矢量与所述N个第二运动矢量中任意一个所述第二运动矢量不相同,则确定所述目标候选编码模式不为所述最佳编码模式。
7.根据权利要求6所述的装置,其特征在于,所述第二决策模块,包括:
预编码单元,用于依据所述候选编码模式列表中的第三个候选编码模式,对所述当前编码单元进行预编码,得到第三运动矢量;
确定单元,用于若所述第三运动矢量与所述N个第二运动矢量中任意一个相同,且所述N个第二运动矢量中任意两个所述第二运动矢量均相同,则确定所述第三个候选编码模式为最佳编码模式,依据所述第三个候选编码模式对所述当前编码单元进行视频编码;
决策单元,用于若所述第三运动矢量与所述N个第二运动矢量中任意一个不相同,且所述N个第二运动矢量中任意两个所述第二运动矢量不相同,则依次对剩余M-3个所述候选编码模式进行所述编码决策,得到最佳编码模式。
8.一种编码模式选择装置,其特征在于,包括:处理器和存储器;
所述处理器和存储器相连,其中,所述存储器用于存储计算机程序,所述处理器用于调用所述计算机程序,以执行如权利要求1-5任一项所述的方法。
9.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有计算机程序,所述计算机程序包括程序指令,所述程序指令当被处理器执行时,执行如权利要求1-5任一项所述的方法。
CN201911016811.XA 2019-10-24 2019-10-24 编码模式选择方法、装置以及可读存储介质 Active CN112714312B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201911016811.XA CN112714312B (zh) 2019-10-24 2019-10-24 编码模式选择方法、装置以及可读存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201911016811.XA CN112714312B (zh) 2019-10-24 2019-10-24 编码模式选择方法、装置以及可读存储介质

Publications (2)

Publication Number Publication Date
CN112714312A CN112714312A (zh) 2021-04-27
CN112714312B true CN112714312B (zh) 2023-07-18

Family

ID=75540174

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201911016811.XA Active CN112714312B (zh) 2019-10-24 2019-10-24 编码模式选择方法、装置以及可读存储介质

Country Status (1)

Country Link
CN (1) CN112714312B (zh)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2014204208A (ja) * 2013-04-02 2014-10-27 日本電信電話株式会社 予測モード決定方法、動画像符号化装置、及び予測モード決定プログラム
CN104602017A (zh) * 2014-06-10 2015-05-06 腾讯科技(北京)有限公司 视频编码器、方法和装置及其帧间模式选择方法和装置
CN106131546A (zh) * 2016-07-26 2016-11-16 王靖韬 一种提前确定hevc合并和跳过编码模式的方法
CN108124154A (zh) * 2017-12-28 2018-06-05 北京数码视讯科技股份有限公司 帧间预测模式的快速选择方法、装置及电子设备
CN108347616A (zh) * 2018-03-09 2018-07-31 中南大学 一种基于可选时域运动矢量预测的深度预测方法及装置

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2014204208A (ja) * 2013-04-02 2014-10-27 日本電信電話株式会社 予測モード決定方法、動画像符号化装置、及び予測モード決定プログラム
CN104602017A (zh) * 2014-06-10 2015-05-06 腾讯科技(北京)有限公司 视频编码器、方法和装置及其帧间模式选择方法和装置
CN106131546A (zh) * 2016-07-26 2016-11-16 王靖韬 一种提前确定hevc合并和跳过编码模式的方法
CN108124154A (zh) * 2017-12-28 2018-06-05 北京数码视讯科技股份有限公司 帧间预测模式的快速选择方法、装置及电子设备
CN108347616A (zh) * 2018-03-09 2018-07-31 中南大学 一种基于可选时域运动矢量预测的深度预测方法及装置

Also Published As

Publication number Publication date
CN112714312A (zh) 2021-04-27

Similar Documents

Publication Publication Date Title
US11856206B2 (en) Video encoding and decoding method
US11843769B2 (en) Method and apparatus for setting reference picture index of temporal merging candidate
US10142652B2 (en) Entropy coding motion vector residuals obtained using reference motion vectors
CN110933426B (zh) 一种解码、编码方法及其设备
EP4262203A1 (en) Method and apparatus for video predictive coding
KR20220119755A (ko) 메모리 액세스가 감소된 fruc 모드에서 비디오 데이터를 인코딩 또는 디코딩하기 위한 방법 및 장치
KR20140016385A (ko) 인코딩 및 디코딩 방법 및 장치
CN109587491A (zh) 一种帧内预测方法、装置及存储介质
CN108353175A (zh) 使用系数引起的预测处理视频信号的方法和装置
JP2024059909A (ja) 画像エンコーディングおよびデコーディングのための方法およびデバイス
US10015508B2 (en) Video encoding device and video encoding method
CN107820084B (zh) 一种视频感知编码方法及装置
CN112714312B (zh) 编码模式选择方法、装置以及可读存储介质
CN110662074B (zh) 一种运动矢量确定方法和设备
EP3742734A1 (en) Method and device for selecting prediction direction in image encoding, and storage medium
CN111918059B (zh) 硬件友好的基于回归树的帧内预测模式决策方法及装置
CN103796026A (zh) 一种基于双参考帧的运动估计方法
KR101378434B1 (ko) 고속 화면내 예측 모드 결정 방법
CN101841701B (zh) 基于宏块对的编解码方法及装置
US12126799B2 (en) Method and device for picture encoding and decoding
US20220141456A1 (en) Method and device for picture encoding and decoding
CN116156187A (zh) 图像处理方法、装置、电子设备及存储介质
CN110691247A (zh) 一种解码、编码方法和设备
JP2009188630A (ja) 画像符号化装置
KR20160059511A (ko) 비디오 부/복호화기에서 화면 내 블록 복사 기술의 블록 벡터 예측 방법 및 장치

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
REG Reference to a national code

Ref country code: HK

Ref legal event code: DE

Ref document number: 40041556

Country of ref document: HK

SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant