CN116567267A - 一种编码过程中的运动估计方法及相关产品 - Google Patents

一种编码过程中的运动估计方法及相关产品 Download PDF

Info

Publication number
CN116567267A
CN116567267A CN202210105603.2A CN202210105603A CN116567267A CN 116567267 A CN116567267 A CN 116567267A CN 202210105603 A CN202210105603 A CN 202210105603A CN 116567267 A CN116567267 A CN 116567267A
Authority
CN
China
Prior art keywords
target
coding block
reference image
motion estimation
auxiliary
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
CN202210105603.2A
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.)
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 CN202210105603.2A priority Critical patent/CN116567267A/zh
Priority to PCT/CN2022/135634 priority patent/WO2023142663A1/zh
Priority to EP22923454.7A priority patent/EP4391541A1/en
Publication of CN116567267A publication Critical patent/CN116567267A/zh
Priority to US18/502,235 priority patent/US20240073424A1/en
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/136Incoming video signal characteristics or properties
    • H04N19/137Motion inside a coding unit, e.g. average field, frame or block difference
    • 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/57Motion estimation characterised by a search window with variable size or shape
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/103Selection of coding mode or of prediction mode
    • H04N19/105Selection of the reference unit for prediction within a chosen coding or prediction mode, e.g. adaptive choice of position and number of pixels used for prediction
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/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/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/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/172Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a picture, frame or field
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/176Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • H04N19/513Processing of motion vectors
    • H04N19/517Processing of motion vectors by encoding
    • H04N19/52Processing of motion vectors by encoding by predictive encoding
    • 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/567Motion estimation based on 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/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/587Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal sub-sampling or interpolation, e.g. decimation or subsequent interpolation of pictures in a video sequence

Landscapes

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

Abstract

本申请实施例提供了一种编码过程中的运动估计方法及相关产品,应用于车载场景,其中方法包括:获取待编码视频帧,并在所述待编码视频帧中确定待编码的目标编码块;获取所述目标编码块的辅助编码块的参考运动信息;根据所述参考运动信息所指示的图像搜索范围信息,从M个参考图像列表中为所述目标编码块确定目标参考图像搜索范围,所述辅助编码块的参考运动信息包括:与所述目标编码块相邻的N个相邻编码块的运动信息和所述参考编码块列表包括的运动信息,M为大于1的整数;根据所述目标参考图像搜索范围对所述目标编码块进行运动估计,可以提高视频帧编码过程中的运动估计的效率。

Description

一种编码过程中的运动估计方法及相关产品
技术领域
本申请涉及视频编码技术领域,尤其涉及一种编码过程中的运动估计方法及相关产品。
背景技术
在视频压缩领域,运动估计是视频编码和处理中广泛使用的一种技术。目前,编码器在对视频帧的编码块进行运动估计时,为了提高编码的准确性,通常在一个较大的搜索范围内来进行运动估计,比如在多个参考图像列表所对应的图像中进行搜索,以完成对该编码块进行运动估计,这种方式虽然较好的提高了编码过程中运动估计的准确性,但是导致编码块的运动估计效率低下,消耗大量的算力。
发明内容
本申请实施例提供了一种编码过程中的运动估计方法及相关产品,可以提高视频帧编码过程中的运动估计的效率。
一方面,本申请实施例提供了一种编码过程中的运动估计方法,该方法包括:
获取待编码视频帧,并在所述待编码视频帧中确定待编码的目标编码块;
获取所述目标编码块的辅助编码块的参考运动信息,所述辅助编码块的参考运动信息包括:与所述目标编码块相邻的N个相邻编码块的运动信息和所述参考编码块列表包括的运动信息,N为大于或等于1的整数;
根据所述参考运动信息所指示的图像搜索范围信息,从M个参考图像列表中为所述目标编码块确定目标参考图像搜索范围,M为大于1的整数;
根据所述目标参考图像搜索范围对所述目标编码块进行运动估计。
在一个实施例中,根据所述参考运动信息所指示的参考图像搜索范围信息,从M个参考图像列表中为所述目标编码块确定目标参考图像搜索范围,包括:
根据所述辅助编码块的参考运动信息所指示的图像搜索范围信息,确定第一条件参数,所述第一条件参数包括:第一类辅助编码块的数量和/或面积,所述第一类辅助编码块是指:所述目标编码块的各辅助编码块中对M个参考图像列表中第一参考图像列表进行参考图像搜索的编码块,所述第一参考图像列表为前向参考列表;
若所述第一条件参数满足第一筛选条件,则将所述第一参考图像列表作为所述目标编码块的目标参考图像搜索范围。
在一个实施例中,根据所述参考运动信息所指示的参考图像搜索范围信息,从M个参考图像列表中为所述目标编码块确定目标参考图像搜索范围,包括:
根据所述辅助编码块的参考运动信息所指示的图像搜索范围信息,确定第二条件参数,所述第二条件参数包括:第二类辅助编码块的数量和/或面积,所述第二类辅助编码块是指:所述目标编码块的各辅助编码块中对M个参考图像列表中第二参考图像列表进行参考图像搜索的编码块,所述第二参考图像列表为后向参考列表;
若所述第二条件参数满足第二筛选条件,则将所述第二参考图像列表作为所述目标编码块的目标参考图像搜索范围。
在一个实施例中,根据所述辅助编码块的参考运动信息所指示的图像搜索范围信息,确定第二条件参数之前,还包括:
判断第一条件参数是否满足第一筛选条件;
若第一条件参数不满足第一筛选条件,则执行所述根据所述辅助编码块的参考运动信息所指示的图像搜索范围信息,确定第二条件参数;
所述第一条件参数包括:第一类辅助编码块的数量和/或面积,所述第一类辅助编码块是指:所述目标编码块的各辅助编码块中对M个参考图像列表中第一参考图像列表进行参考图像搜索的编码块,所述第一参考图像列表为前向参考列表。
在一个实施例中,若所述第一条件参数满足第一筛选条件,则将所述第一参考图像列表作为所述目标编码块的目标参考图像搜索范围,包括:
若所述第一条件参数满足第一筛选条件,则根据所述辅助编码块的参考运动信息对应的参考图像,确定第三条件参数,所述第三条件参数包括:第三类辅助编码块的数量和/或面积,所述第三类辅助编码块是指:所述目标编码块的各辅助编码块中对所述第一参考图像列表中的目标参考图像进行参考图像搜索的编码块;
若所述第三条件参数满足第三筛选条件,则将所述第一参考图像列表中的目标参考图像作为所述目标编码块的目标参考图像搜索范围。
在一个实施例中,若所述第二条件参数满足第二筛选条件,则将所述第二参考图像列表作为所述目标编码块的目标参考图像搜索范围,包括:
若所述第二条件参数满足第二筛选条件,则根据所述辅助编码块的参考运动信息对应的参考图像,确定第四条件参数,所述第四条件参数包括:第四类辅助编码块的数量和/或面积,所述第四类辅助编码块是指:所述目标编码块的各辅助编码块中对所述第二参考图像列表中的目标参考图像进行参考图像搜索的编码块;
若所述第四条件参数满足第四筛选条件,则将所述第二参考图像列表中的目标参考图像作为所述目标编码块的目标参考图像搜索范围。
在一个实施例中,根据所述参考运动信息所指示的参考图像搜索范围信息,从M个参考图像列表中为所述目标编码块确定目标参考图像搜索范围,包括:
根据所述参考运动信息所指示的图像搜索范围信息,确定第五条件参数,所述第五条件参数包括:第五类辅助编码块的数量和/或面积,所述第五类辅助编码块是指:所述目标编码块的各辅助编码块中对M个参考图像列表中的参考搜索图像进行参考图像搜索的编码块;
若所述第五条件参数满足第五筛选条件,则将所述参考搜索图像作为所述目标编码块的目标参考图像搜索范围。
在一个实施例中,获取所述目标编码块的辅助编码块的参考运动信息之前,所述方法还包括:
获取所述目标编码块的特征信息,所述特征信息包括:待编码视频帧所处的时间层,或者所述特征信息包括:待编码视频帧所处的时间层和所述目标编码块的尺寸;
若所述目标编码块的特征信息满足触发条件,则触发执行获取所述目标编码块的辅助编码块的参考运动信息;
若所述目标编码块的特征信息不满足触发条件,则至少将M个参考图像列表中的第一参考图像列表和第二参考图像列表作为所述目标编码块的目标参考图像搜索范围。
在一个实施例中,根据所述目标参考图像搜索范围对所述目标编码块进行运动估计,包括:
确定所述目标参考图像搜索范围对应的目标参考图像列表和所述目标参考图像列表中对应的目标参考图像;
根据所述目标参考图像列表及其对应的目标参考图像,通过第一参考图像搜索规则进行运动估计,得到所述目标编码块的第一运动估计参数;
根据所述目标参考图像列表及其对应的目标参考图像,通过第二参考图像搜索规则进行运动估计,得到所述目标编码块的第二运动估计参数;第二参考图像搜索规则与所述第一参考图像搜索规则不相同;
从所述第一运动估计参数和所述第二运动估计参数中为所述目标编码块选择目标运动估计参数。
在一个实施例中,从所述第一运动估计参数和所述第二运动估计参数中为所述目标编码块选择目标运动估计参数,包括:
获取所述第一运动估计参数对应的第一率失真以及所述第二运动估计参数对应的第二率失真;
若所述第一率失真大于所述第二率失真,则将所述第二率失真对应的第二运动估计参数确定为所述目标编码块的目标运动估计参数;
若所述第二率失真大于所述第一率失真,则将所述第一率失真对应的第一运动估计参数确定为所述目标编码块的目标运动估计参数。
一方面,本申请实施例提供了一种编码过程中的运动估计装置,该装置包括:
获取单元,用于获取待编码视频帧,并在所述待编码视频帧中确定待编码的目标编码块;
所述获取单元,还用于获取所述目标编码块的辅助编码块的参考运动信息,所述辅助编码块的参考运动信息包括:与所述目标编码块相邻的N个相邻编码块的运动信息和所述参考编码块列表包括的运动信息,N为大于或等于1的整数;
处理单元,用于根据所述参考运动信息所指示的图像搜索范围信息,从M个参考图像列表中为所述目标编码块确定目标参考图像搜索范围,M为大于1的整数;
所述处理单元,用于根据所述目标参考图像搜索范围对所述目标编码块进行运动估计。
在一个实施例中,所述处理单元在根据所述参考运动信息所指示的参考图像搜索范围信息,从M个参考图像列表中为所述目标编码块确定目标参考图像搜索范围时,具体用于:
根据所述辅助编码块的参考运动信息所指示的图像搜索范围信息,确定第一条件参数,所述第一条件参数包括:第一类辅助编码块的数量和/或面积,所述第一类辅助编码块是指:所述目标编码块的各辅助编码块中对M个参考图像列表中第一参考图像列表进行参考图像搜索的编码块,所述第一参考图像列表为前向参考列表;
若所述第一条件参数满足第一筛选条件,则将所述第一参考图像列表作为所述目标编码块的目标参考图像搜索范围。
在一个实施例中,所述处理单元在根据所述参考运动信息所指示的参考图像搜索范围信息,从M个参考图像列表中为所述目标编码块确定目标参考图像搜索范围时,具体用于:
根据所述辅助编码块的参考运动信息所指示的图像搜索范围信息,确定第二条件参数,所述第二条件参数包括:第二类辅助编码块的数量和/或面积,所述第二类辅助编码块是指:所述目标编码块的各辅助编码块中对M个参考图像列表中第二参考图像列表进行参考图像搜索的编码块,所述第二参考图像列表为后向参考列表;
若所述第二条件参数满足第二筛选条件,则将所述第二参考图像列表作为所述目标编码块的目标参考图像搜索范围。
在一个实施例中,处理单元在根据所述辅助编码块的参考运动信息所指示的图像搜索范围信息,确定第二条件参数之前,还用于:
判断第一条件参数是否满足第一筛选条件;
若第一条件参数不满足第一筛选条件,则执行所述根据所述辅助编码块的参考运动信息所指示的图像搜索范围信息,确定第二条件参数;
所述第一条件参数包括:第一类辅助编码块的数量和/或面积,所述第一类辅助编码块是指:所述目标编码块的各辅助编码块中对M个参考图像列表中第一参考图像列表进行参考图像搜索的编码块,所述第一参考图像列表为前向参考列表。
在一个实施例中,处理单元在若所述第一条件参数满足第一筛选条件,则将所述第一参考图像列表作为所述目标编码块的目标参考图像搜索范围时,具体用于:
若所述第一条件参数满足第一筛选条件,则根据所述辅助编码块的参考运动信息对应的参考图像,确定第三条件参数,所述第三条件参数包括:第三类辅助编码块的数量和/或面积,所述第三类辅助编码块是指:所述目标编码块的各辅助编码块中对所述第一参考图像列表中的目标参考图像进行参考图像搜索的编码块;
若所述第三条件参数满足第三筛选条件,则将所述第一参考图像列表中的目标参考图像作为所述目标编码块的目标参考图像搜索范围。
在一个实施例中,处理单元在若所述第二条件参数满足第二筛选条件,则将所述第二参考图像列表作为所述目标编码块的目标参考图像搜索范围时,具体用于:
若所述第二条件参数满足第二筛选条件,则根据所述辅助编码块的参考运动信息对应的参考图像,确定第四条件参数,所述第四条件参数包括:第四类辅助编码块的数量和/或面积,所述第四类辅助编码块是指:所述目标编码块的各辅助编码块中对所述第二参考图像列表中的目标参考图像进行参考图像搜索的编码块;
若所述第四条件参数满足第四筛选条件,则将所述第二参考图像列表中的目标参考图像作为所述目标编码块的目标参考图像搜索范围。
在一个实施例中,处理单元在根据所述参考运动信息所指示的参考图像搜索范围信息,从M个参考图像列表中为所述目标编码块确定目标参考图像搜索范围时,具体用于:
根据所述参考运动信息所指示的图像搜索范围信息,确定第五条件参数,所述第五条件参数包括:第五类辅助编码块的数量和/或面积,所述第五类辅助编码块是指:所述目标编码块的各辅助编码块中对M个参考图像列表中的参考搜索图像进行参考图像搜索的编码块;
若所述第五条件参数满足第五筛选条件,则将所述参考搜索图像作为所述目标编码块的目标参考图像搜索范围。
在一个实施例中,在获取所述目标编码块的辅助编码块的参考运动信息之前,获取单元还用于:获取所述目标编码块的特征信息,所述特征信息包括:待编码视频帧所处的时间层,或者所述特征信息包括:待编码视频帧所处的时间层和所述目标编码块的尺寸;
处理单元,还用于若所述目标编码块的特征信息满足触发条件,则触发执行获取所述目标编码块的辅助编码块的参考运动信息;
若所述目标编码块的特征信息不满足触发条件,则至少将M个参考图像列表中的第一参考图像列表和第二参考图像列表作为所述目标编码块的目标参考图像搜索范围。
在一个实施例中,所述处理单元在根据所述目标参考图像搜索范围对所述目标编码块进行运动估计时,可具体用于:
确定所述目标参考图像搜索范围对应的目标参考图像列表和所述目标参考图像列表中对应的目标参考图像;
根据所述目标参考图像列表及其对应的目标参考图像,通过第一参考图像搜索规则进行运动估计,得到所述目标编码块的第一运动估计参数;
根据所述目标参考图像列表及其对应的目标参考图像,通过第二参考图像搜索规则进行运动估计,得到所述目标编码块的第二运动估计参数;第二参考图像搜索规则与所述第一参考图像搜索规则不相同;
从所述第一运动估计参数和所述第二运动估计参数中为所述目标编码块选择目标运动估计参数。
在一个实施例中,在从所述第一运动估计参数和所述第二运动估计参数中为所述目标编码块选择目标运动估计参数时,所述获取单元,用于获取所述第一运动估计参数对应的第一率失真以及所述第二运动估计参数对应的第二率失真;
处理单元,用于若所述第一率失真大于所述第二率失真,则将所述第二率失真对应的第二运动估计参数确定为所述目标编码块的目标运动估计参数;若所述第二率失真大于所述第一率失真,则将所述第一率失真对应的第一运动估计参数确定为所述目标编码块的目标运动估计参数。
一方面,本申请实施例提供一种计算机设备,该计算机设备包括输入设备、输出设备、处理器和计算机存储介质,该处理器和计算机存储介质相互连接,其中,计算机存储介质用于存储计算机程序,该处理器被配置用于调用计算机程序,执行上述编码过程中的运动估计方法。
一方面,本申请实施例提供了一种计算机可读存储介质,该计算机可读存储介质中存储有计算机程序,该计算机程序被处理器执行时,用于实现上述编码过程中的运动估计方法。
一方面,本申请实施例提供了一种计算机程序产品,计算机程序产品包括计算机程序;该计算机程序存储在计算机可读存储介质中,计算机程序被计算机设备的处理器执行时,执行上述编码过程中的运动估计方法。
在本申请实施例中,获取待编码视频帧,并在待编码视频帧中确定待编码的目标编码块;获取目标编码块的辅助编码块的参考运动信息;根据参考运动信息所指示的图像搜索范围信息,从M个参考图像列表中为目标编码块确定目标参考图像搜索范围,M为大于1的整数;根据目标参考图像搜索范围对目标编码块进行运动估计。以辅助编码块的参考运动信息来减少搜索目标编码块的参考图像列表或者参考图像的数目,跳过了在运动估计时对部分参考图像列表或部分参考图像的搜索,减少计算量,降低了运动估计的时间复杂度,提高了视频帧编码过程的运动估计的效率。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本申请实施例提供的一种编码过程中的运动估计方法的流程示意图;
图2a是本申请实施例提供的一种与目标编码块相邻的相邻编码块的示意图;
图2b是本申请实施例提供的一种通用视频编码的编码框架示意图;
图3是本申请实施例提供的另一种编码过程中的运动估计方法的流程示意图;
图4是本申请实施例提供的一种运动估计的示意图;
图5是本申请实施例提供的一种编码过程中的运动估计装置的结构示意图;
图6是本申请实施例提供的一种计算机设备的结构示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
本申请实施例提供了一种编码过程中的运动估计方案,该编码过程中的运动估计方案提供了关于编码过程中运动估计的快速算法,可以加速对视频帧中编码块的运动估计。该编码过程中的运动估计方案所涉及到的快速算法的大致原理如下:针对需要待编码视频帧,可以利用时域和空域中与目标编码块相邻的相邻编码块的运动信息、以及基于历史信息的运动矢量预测列表(HMVP,History-based Motion Vector Prediction)包括的运动信息对待编码视频帧中的目标编码块进行运动估计(ME,Motion Estimation)。首先,可以获取与该目标编码块相邻的N个相邻编码块的运动信息、和/或获取基于历史信息的运动矢量预测列表HMVP包括运动信息,其中,N可以为大于或等于1的整数;基于历史信息的运动矢量预测列表(后续可以称为参考编码块列表)包括:在该目标编码块之前已编码的编码块以及已编码的编码块的运动信息。然后,从N个相邻编码块的运动信息和/或参考编码列表包括的运动信息中确定辅助编码块的参考运动信息,并基于辅助编码块的参考运动信息所指示的图像搜索范围信息,从M个参考图像列表中为目标编码块确定目标参考图像搜索范围;M为大于1的整数,辅助编码块可以是指N个相邻编码块和参考编码列表中记录的参考编码块的所有或者部分编码块,目标参考图像搜索范围被允许仅包括M个参考图像列表中部分参考图像列表所对应的图像搜索范围。接着,基于目标参考图像搜索范围对目标编码块进行运动估计,得到目标编码块的目标运动估计参数。通过辅助编码块的参考运动信息可以减少搜索目标编码块的参考图像列表的数目,跳过了在进行运动估计时的部分参考图像列表的搜索,从而降低运动估计的时间复杂度,加速了对目标编码块的运动估计和视频压缩效率。
在一个实施例中,本申请实施例除了可以跳过在运动估计时的部分参考图像列表,还可以跳过在运动估计时的部分参考图像。首先,可以基于辅助编码块的参考运动信息,在进行参考图像搜索时采用参考搜索图像的辅助编码块的条件参数,并在该条件参数满足筛选条件时,可以将参考搜索图像作为目标编码块的目标参考图像搜索范围。其中,参考搜索图像可以是M个参考图像列表中的一个或多个参考图像。例如,M个参考图像列表包括参考搜索图像1,若采用M个参考图像列表中的参考搜索图像1的辅助编码块的条件参数满足筛选条件,则将该参考搜索图像1作为目标编码块的目标参考图像搜索范围,即在进行参考图像搜索时,可以直接对该参考搜索图像1进行搜索,以对目标编码块进行运动估计。
在该条件参数不满足筛选条件时,意味着辅助编码块在进行运动估计时,很少采用该参考搜索图像,而目标编码块在进行运动估计时可以借助辅助编码块作为参考,在一定程度上可能不会采用该参考搜索图像进行运动估计,因此,在对目标编码块进行运动估计时,可以直接跳过搜索该参考搜索图像,例如,上述例子中,若采用M个参考图像列表中的参考搜索图像1的辅助编码块的条件参数不满足筛选条件,意味着辅助编码块在进行运动估计时,没有采用该参考搜索图像1,在对目标编码块进行运动估计时,可以直接跳过搜索参考搜索图像1。通过这样的方式可以减少了搜索该目标编码块的参考图像的数目,可以降低运动估计的时间复杂度,提高了运动估计效率和视频压缩效率。
在一个实施例中,本申请实施例还提出了一种运动估计中运动估计参数搜索重置机制,能够保证快速算法的稳定性。在获取与该目标编码块相邻的N个相邻编码块的运动信息和/或获取参考编码块的运动信息之前,可以判断该目标编码块是否能够启用快速算法,若确定目标编码块能够使用快速算法,则可以获取与该目标编码块相邻的N个相邻编码块的运动信息和/或获取参考编码块的运动信息;若确定目标编码块无法使用快速算法,则将M个参考图像列表均作为目标编码块的目标参考图像搜索范围,通过运动估计参数搜索重置机制可以防止在对某个编码块进行快速运动估计时掉入局部最优,即防止待编码视频帧包括的编码块一直使用相同参考图像列表或者相同参考图像进行运动估计,避免了在对编码块进行运动估计时部分运动估计参数不能更新的问题。
本申请实施例所提供的编码过程中的运动估计方案有如下有益效果:一方面,根据与该目标编码块相邻的N个相邻编码块的运动信息和/或获取参考编码块的运动信息从M个参考图像列表中确定目标参考图像搜索范围,该目标参考图像搜索范围可以是指M个参考图像列表中的部分参考图像列表和/或部分参考图像,通过减少搜索目标编码块的参考图像列表或者参考图像的数目,跳过了在运动估计时的部分参考图像列表或参考图像,从而降低运动估计的时间复杂度,加速了对目标编码块的运动估计,减少计算量。另一方面,通过运动估计中运动估计参数搜索重置机制可以防止在对某个编码块进行快速运动估计时掉入局部最优,防止视频帧包括的编码块一直使用相同参考图像列表或者相同参考图像进行运动估计,避免了在对编码块进行运动估计时部分运动参数不能更新的问题。
基于上述提供的编码过程中的运动估计方案,请参阅图1,图1为本申请实施例提供的一种编码过程中的运动估计方法的流程示意图,该编码过程中的运动估计方法可以由计算机设备执行,该计算机设备可以是终端设备或者服务器。更为具体的,该编码过程中的运动估计方法可以由计算机设备中的编码器来执行。上述终端设备可以是智能手机、平板电脑、笔记本电脑、台式电脑、智能语音交互设备、智能家电、车载终端、飞行器等等;上述服务器可以是是独立的物理服务器,也可以是多个物理服务器构成的服务器集群或者分布式***,还可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、内容分发网络(Content Delivery Network,CDN)、以及大数据和人工智能平台等基础云计算服务的云服务器,等等。本实施例中所描述的编码过程中的运动估计方法,包括以下步骤S101-S104。
S101:获取待编码视频帧,并在待编码视频帧中确定待编码的目标编码块。其中,待编码视频帧可以是实时采集到的一帧图像,或者该待编码视频帧可以是预先采集到的一帧图像。待编码视频帧可以是直播视频、车辆行驶视频、车辆实时运行视频、游戏视频、娱乐视频等中的任一帧。待编码视频帧可包括一个或多个编码块,每个编码块的尺寸大小可以相同,也可以不同,例如,待编码视频帧中的编码块1的尺寸大小可以是128,编码块2的尺寸大小可以64等等。在一个实施例中,计算机设备可以从待编码视频帧包括的编码块中随机获取一个编码块作为待编码的目标编码块,或者,待编码视频帧包括的每个编码块对应有编号,计算机设备可以基于编号将待编码视频帧包括的编码块均确定为待编码的目标编码块。
S102:获取目标编码块的辅助编码块的参考运动信息。其中,参考运动信息可以包括:参考图像列表、参考图像列表中的参考图像(或参考图像列表中的参考图像索引)以及运动矢量(MV,Motion Vector)。运动矢量是指目标编码块与参考块(参考块是指与目标编码块满足相似度阈值的编码块)之间的位移。
在一个实施例中,由于时域和空域相邻的相邻编码块的运动估计参数具有高度相关性,在通信视频编码(VVC,Versatile Video Coding)存在一个合并模式(merge),可以支持当前编码块重用相邻编码块的运动信息,因此,在本申请实施例中,辅助编码块可以是与目标编码块相邻的N个相邻编码块,辅助编码块可以是N个相邻编码块中的全部编码块或者部分编码块,N为大于或等于1的整数,此处的相邻是指与目标编码块直接相邻,例如,图2a中,N为5,与目标编码块相邻的N个相邻编码块可以是左下相邻编码块(即图2a中的A1)、下相邻编码块(即图2a中的A0)、左上相邻编码块(即图2a中的B2)、上相邻编码块(即图2a中的B0)和右上相邻编码块(即图2a中的B1))。相应的,辅助编码块的参考运动信息可以包括:与目标编码块相邻的N个相邻编码块的运动信息。
在另一个实施例中,由于通用视频编码VVC中的合并模式引入了HMVP技术,以拓展Merge模式的适用范围,Merge模式可以包含一种与目标编码块在空间中非直接相邻的编码块的运动信息,与目标编码块处于空间非直接邻近的编码块的运动信息可以用于描述运动物体之间相互遮挡,导致同一个物体存在于非邻近的编码块的情况。且通过该HMVP技术可以构造和维护一个长度为5的运动信息队列(即构建参考编码块列表),该参考编码块列表不仅可以用于记录解码可用的运动信息,还可以用于在对当前编码块(即目标编码块)进行运动估计时作为参考,而在编码当前编码块时,可以按从尾到头的顺序把HMVP列表中的运动信息,填充到Merge列表中,直至填满。HMVP列表的更新原则为先进先出;因此,在本申请实施例中,辅助编码块可以是参考编码块列表中的编码块,此处的辅助编码块可以是参考编码块列表中的部分编码块或者全部编码块;上述参考编码块列表包括目标编码块之前已经被编码过的编码块。在该参考编码块列表可以包括与目标编码块相邻的N个相邻编码块(此处的N个相邻编码块是指与目标编码块直接相邻的编码块)以及与目标编码块处于空间非直接邻近的编码块。相应的,辅助编码块的参考运动信息可以包括:参考编码块列表包括的运动信息。
再一个实施例中,可以将与所述目标编码块相邻的N个相邻编码块和参考编码块列表中的编码块均作为辅助编码块,以便于后续基于辅助编码块的参考运动信息能够更好地确定目标编码块的目标参考图像搜索范围。相应的,辅助编码块的参考运动信息可以包括与目标编码块相邻的N个相邻编码块的运动信息和参考编码块列表包括的运动信息,N为大于或等于1的整数。
在一个实施例中,参见图2b,图2b为VVC的编码框架的示意图,在该框架中包括一个解码图像缓冲列表(DPB,Decode Picture Buffer),解码图像缓冲列表中维护了关于辅助编码块的参考运动信息,计算机设备可以从解码图像缓冲列表中获取辅助编码块的参考运动信息,然后执行步骤S103。
S103:根据参考运动信息所指示的图像搜索范围信息,从M个参考图像列表中为目标编码块确定目标参考图像搜索范围,M为大于1的整数。图像搜索范围信息可以包括参考图像列表和/或参考图像列表中的参考图像(参考图像索引)。参考图像列表可以包括第一参考图像列表、第二参考图像列表和双向参考图像列表(或称为双向参考帧列表)中的至少两个。双向参考图像列表中包括第一参考图像列表以及第二参考图像列表。第一参考图像列表包括多帧参考图像,第二参考图像列表包括多帧参考图像,目标参考图像搜索范围可以包括目标参考图像列表以及目标参考图像列表中的目标参考图像。目标参考图像列表可以是至少包括第一参考图像列表和第二参考图像列表中的任一个。第一参考图像列表可以是前向参考图像列表(或称为list0参考图像列表、或称为前向参考列表),第二参考图像列表可以是后向参考图像列表(或称为list1参考图像列表或后向参考列表)。
接下来对步骤S103的具体实现方式进行介绍:
(1)由于辅助编码块是使用M个参考图像列表中的参考图像列表进行编码(或者运动估计),且辅助编码块与目标编码块具有一定的关联性,因此很大程度上目标编码块也会使用M个参考图像列表中的该参考图像列表进行编码。在这种情况下,上述图像搜索范围信息包括参考图像列表。通过辅助编码块的参考运动信息所指示的图像搜索范围信息包括的参考图像列表可以减少搜索目标编码块的参考图像列表的数目,从而可以加速对目标编码块的运动估计,进而降低编码复杂度。
在一个实施例中,计算机设备可以根据辅助编码块的参考运动信息所指示的图像搜索范围信息,确定第一条件参数,第一条件参数可以包括:第一类辅助编码块的数量和/或面积,第一类辅助编码块是指:目标编码块的各辅助编码块中对M个参考图像列表中第一参考图像列表进行参考图像搜索的编码块;第一类辅助编码块的数量为一个或多个。然后计算机设备可以判断第一条件参数是否满足第一筛选条件,若确定第一条件参数满足第一筛选条件,则将第一参考图像列表作为目标编码块的目标参考图像搜索范围,即在进行参考图像搜索时,需要搜索第一参考图像列表。若确定第一条件参数不满足第一筛选条件,则不将第一参考图像列表作为目标编码块的目标参考图像搜索范围,即在进行参考图像搜索时,可以跳过搜索第一参考图像列表。第一筛选条件可以包括以下至少一种:第一类辅助编码块的数量大于数量阈值、第一类辅助编码块的面积与所有辅助编码块的面积和之间的比值大于面积比阈值。其中,第一参考图像列表为前向参考列表。
当第一条件参数为第一类辅助编码块的数量,第一筛选条件为第一类辅助编码块的数量大于数量阈值时,计算机设备可以根据辅助编码块的参考运动信息所指示的图像搜索范围信息,统计第一类辅助编码块的数量,并判断第一类辅助编码块的数量是否大于数量阈值,若该数量大于数量阈值,则确定第一条件参数满足第一筛选条件,若第一类辅助编码块的数量小于或等于数量阈值,则确定第一条件参数不满足第一筛选条件。
当第一条件参数为第一类辅助编码块的面积,第一筛选条件为第一类辅助编码块的面积与所有辅助编码块的面积和之间的比值大于面积比阈值时,计算机设备可以根据辅助编码块的参考运动信息所指示的图像搜索范围信息,确定第一类辅助编码块,并计算第一类辅助编码块的面积。然后计算第一类辅助编码块的面积与所有辅助编码块的面积和之间的面积比值,并判断该面积比值是否大于面积比阈值,若确定该面积比值大于面积比阈值,则确定第一条件参数满足第一筛选条件;若确定该面积比值小于或等于面积比阈值,则确定第一条件参数不满足第一筛选条件。其中,第一类辅助编码块的数量可以为一个或多个,当采用第一类辅助编码块的数量为多个时,此时,第一类辅助编码块的面积指所有第一类辅助编码块的面积之和。例如,第一筛选条件为第一类辅助编码块的面积与所有辅助编码块的面积和之间的比值大于面积比阈值0.5,辅助编码块的数量为3个(分别为编码块1、编码块2和编码块3),第一类辅助编码块为编码块1和编码块2,计算编码块1和编码块2的面积和,得到面积和1;计算编码块1、编码块2和编码块3的面积和,得到面积和2,然后计算机设备可以计算面积和1与面积和2之间的面积比值为0.6,该面积比值0.6大于面积比阈值0.5,确定第一条件参数满足第一筛选条件。
其中,数量阈值和面积比阈值可以根据待编码视频帧所处的时间层(temporallayer)和/或目标编码块尺寸决定。时间层可以为时间层0(时间层k=0)、时间层1(时间层k=1),时间层2(时间层k=2)、时间层3(时间层k=3)等等,在一些实施例中,根据编码器种类,该时间层的数量可以不同,例如编码器1对应的时间层的数量可以是3(即时间层0-2),又例如,编码器2对应的时间层的数量可以为4(即时间层0-3)。目标编码块尺寸可以根据待编码视频帧的时间层确定,例如,当时间层为时间层0时,目标编码块尺寸可以为256,当时间层为时间层1时,目标编码块尺寸为128。
在一个实施例中,当数量阈值和面积比阈值根据待编码视频帧所处的时间层决定时,待编码视频帧所处的时间层越大,上述数量阈值和上述面积比阈值越小。例如,以数量阈值为例,可以预先设置时间层与数量阈值之间对应的关系,例如,时间层0对应的数量阈值为10,时间层5对应的数量阈值为2。
在另一个实施例中,当数量阈值和面积比阈值根据编码块的尺寸决定时,编码块的尺寸越大,上述数量阈值和面积比阈值越小。例如,以数量阈值为例,可以预先设置编码块的尺寸与数量阈值之间的对应关系,例如,编码块的尺寸64对应的数量阈值为10,编码块的尺寸256对应的数量阈值为2。获取数量阈值的方式为:从对应关系中获取目标编码块的尺寸对应的数量阈值。
再一个实施例中,当数量阈值和面积比阈值根据待编码视频帧所处的时间层和目标编码块的尺寸决定时,可以预先设置数量阈值和面积比阈值与待编码视频帧所处的时间层以及与编码块尺寸之间的对应关系。以数量阈值为例,待编码视频帧所处的时间层0以及编码块的尺寸为256,对应的数量阈值为10;待编码视频帧所处的时间层1以及编码块的尺寸为128,对应的数量阈值为10或者,待编码视频帧所处的时间层1以及编码块的尺寸为128,对应的数量阈值为4等等。在上述情况下,获取数量阈值的方式为:获取待编码视频帧所处的时间层和/或获取目标编码块的尺寸,然后根据该时间层和/或目标编码块的尺寸从对应关系中确定数量阈值或者面积比阈值。例如,待编码视频帧所处的时间层为1,目标编码块的尺寸为128,根据该时间层和目标编码块的尺寸从对应关系中确定数量阈值为4,即上述第一筛选条件为第一类辅助编码块的数量大于数量阈值4。同理,可以获取面积比阈值。
在一个实施例中,根据辅助编码块的参考运动信息所指示的图像搜索范围信息,确定第二条件参数,第二条件参数包括:第二类辅助编码块的数量和/或面积,第二类辅助编码块是指:目标编码块的各辅助编码块中对M个参考图像列表中第二参考图像列表进行参考图像搜索的编码块;然后,判断第二条件参数是否满足第二筛选条件,若确定第二条件参数满足第二筛选条件,则将第二参考图像列表作为目标编码块的目标参考图像搜索范围。若确定第二条件参数不满足第二筛选条件,则不将第二参考图像列表作为目标参考图像搜索范围,即在进行参考图像搜索时,跳过搜索第二参考图像列表。第二筛选条件可以包括以下至少一种:第二类辅助编码块的数量大于数量阈值、第二类辅助编码块的面积与所有辅助编码块的面积和之间的比值大于面积比阈值。第二参考图像列表为后向参考列表。其中,数量阈值和面积比阈值可以根据待编码视频帧所处的时间层和/或目标编码块的尺寸决定。需要说明的是,判断第二条件参数是否满足第二筛选条件的具体实现方式可以参见上述判断第一条件参数是否满足第一筛选条件的具体实现方式。
在一个实施例中,在根据辅助编码块的参考运动信息所指示的图像搜索范围信息,确定第二条件参数之前,可以先判断第一条件参数是否满足第一筛选条件,若第一条件参数不满足第一筛选条件,则可以根据辅助编码块的参考运动信息所指示的图像搜索范围信息,确定第二条件参数,第二条件参数包括:第二类辅助编码块的数量和/或面积,第二类辅助编码块是指:目标编码块的各辅助编码块中对M个参考图像列表中第二参考图像列表进行参考图像搜索的编码块;若第二条件参数满足第二筛选条件,则将第二参考图像列表作为目标编码块的目标参考图像搜索范围。若第二条件参数不满足第二筛选条件,则至少将M个参考图像列表中的第一参考图像列表和第二参考图像列表作为目标编码块的目标参考图像搜索范围。
由于辅助编码块是使用M个参考图像列表中某个参考图像列表的某个参考图像(RP,Reference Picture)进行编码(或运动估计),且辅助编码块与目标编码块具有一定的关联性,因此很大程度上目标编码块也会使用M个参考图像列表中该参考图像列表的参考图像进行编码,例如,辅助编码块使用第一参考图像列表的参考图像1进行编码,在很大程度上目标编码块也会使用第一参考图像列表的参考图像1进行编码。在这种情况下,上述图像搜索范围信息可以包括参考图像列表以及参考图像列表所包括的参考图像(或参考图像的索引)。通过辅助编码块的参考运动信息所指示的图像搜索范围信息所包括参考图像列表和参考图像可以减少搜索目标编码块的参考图像列表以及参考图像的数目,从而可以更快加速地对目标编码块的运动估计,进而降低编码复杂度。
在一个实施例中,在确定第一参考图像列表之后,可以对第一参考图像列表中的参考图像进行筛选以进一步加速对目标编码块的运动估计,若确定第一条件参数满足第一筛选条件,则将第一参考图像列表作为目标编码块的目标参考图像搜索范围的具体实现方可以是:若第一条件参数满足第一筛选条件,则根据辅助编码块的参考运动信息对应的参考图像,确定第三条件参数,第三条件参数包括:第三类辅助编码块的数量和/或面积,第三类辅助编码块是指:目标编码块的各辅助编码块中对第一参考图像列表中的目标参考图像进行参考图像搜索的编码块;然后,判断第三条件参数是否满足第三筛选条件,若第三条件参数满足第三筛选条件,则将第一参考图像列表中的目标参考图像作为目标编码块的目标参考图像搜索范围。若第三条件参数不满足第三筛选条件,则不将第一参考图像列表中的目标参考图像作为目标编码块的目标参考图像搜索范围,即在进行参考图像搜索时,跳过搜索第一参考图像列表中的目标参考图像,而搜索第一参考图像列表中的其他参考图像。也就是说,上述的将所述第一参考图像列表作为所述目标编码块的目标参考图像搜索范围,具体是指:将第一参考图像列表中的目标参考图像作为所述目标编码块的目标参考图像搜索范围,而对于该第一参考图像列表中的目标参考图像,目标编码块的多个辅助编码块或者大面积的辅助编码块都将其作为了参考图像搜索范围。
第三筛选条件包括以下至少一种:第三类辅助编码块的数量大于数量阈值、第三类辅助编码块的面积与所有辅助编码块的面积和之间的面积比值大于面积比阈值。数量阈值和面积比阈值可以由待编码视频帧所处的时间层和/或目标编码块的尺寸决定。其中,时间层越大,数量阈值和面积比阈值越小;目标编码块的尺寸越大,数量阈值和面积比阈值越小。
在一个实施例中,当第三条件参数为第三类辅助编码块的数量,第三筛选条件为:第三类辅助编码块的数量大于数量阈值时,判断第三条件参数是否满足第三筛选条件的具体实现过程为:若第一条件参数满足第一筛选条件,则基于根据辅助编码块的参考运动信息对应的参考图像确定第三类辅助编码块的数量,并判断第三类辅助编码块的数量是否大于数量阈值,若数量大于数量阈值,则确定第三条件参数满足第三筛选条件。若确定数量小于或等于数量阈值,则确定第三条件参数不满足第三筛选条件。
在一个实施例中,当第三条件参数为第三类辅助编码块的面积,第三筛选条件为第三类辅助编码块的面积与所有辅助编码块的面积和之间的面积比值大于面积比阈值时,判断第三条件参数是否满足第三筛选条件的具体实现过程为:若第一条件参数满足第一筛选条件,则基于根据辅助编码块的参考运动信息对应的参考图像,确定第三类辅助编码块,并计算第三类辅助编码块的面积以及计算所有辅助编码块的面积和,然后计算第三类辅助编码块的面积与所有辅助编码块的面积和之间的面积比值,并判断该面积比值是否大于面积比阈值,若确定面积比值大于面积比阈值,则确定第三条件参数满足第三筛选条件。若确定面积比值小于或等于面积比阈值,则确定第三条件参数不满足第三筛选条件。第三类辅助编码块的数量可以是一个或多个。当第三类辅助编码块的数量为多个时,第三类辅助编码块的面积是指所有第三类辅助编码块的面积和。例如,第三类辅助编码块为辅助编码块1和辅助编码块2,所有辅助编码块分别为辅助编码块1、辅助编码块2和辅助编码块3,计算机设备可以计算辅助编码块1和辅助编码2的面积和1,并计算辅助编码块1、辅助编码块2和辅助编码块3的面积和2。然后计算面积和1与面积和2之间的面积比值,并判断该面积比值是否大于面积比阈值。
在一个实施例中,在确定第二参考图像列表之后,可以对第二参考图像列表中的参考图像进行筛选以进一步加速对目标编码的运动估计,若确定第二条件参数满足第二筛选条件,则将第二参考图像列表作为目标编码块的目标参考图像搜索范围的具体实现方可以是:若确定第二条件参数满足第二筛选条件,则根据辅助编码块的参考运动信息对应的参考图像,确定第四条件参数,第四条件参数包括:第四类辅助编码块的数量和/或面积,第四类辅助编码块是指:目标编码块的各辅助编码块中对第二参考图像列表中的目标参考图像进行参考图像搜索的编码块,并判断第四条件参数是否满足第四筛选条件,若第四条件参数满足第四筛选条件,则将第二参考图像列表包括的目标参考图像作为目标编码块的目标参考图像搜索范围。若第四条件参数不满足第四筛选条件,则不将第二参考图像列表包括的目标参考图像作为目标编码块的目标参考图像搜索范围,即在进行参考图像搜索时,跳过搜索第二参考图像列表包括的目标参考图像。也就是说,上述的将所述第二参考图像列表作为所述目标编码块的目标参考图像搜索范围,具体是指:将第二参考图像列表中的目标参考图像作为所述目标编码块的目标参考图像搜索范围,而对于该第二参考图像列表中的目标参考图像,目标编码块的多个辅助编码块或者大面积的辅助编码块都将其作为了参考图像搜索范围。
需要说明的是,如何判断第四条件参数是否满足第四筛选条件可以参见上述判断第三条件参数是否满足第三筛选条件的具体实现方式。上述涉及到如何获取数量阈值和面积比阈值的具体方式可以参见相应实现方式,在此不再赘述。
在一个实施例中,可能存在第一条件参数不满足第一筛选条件,且第二条件参数不满足第二筛选条件的情况,此时,意味着无法基于根据参考运动信息所指示的图像搜索范围信息,从M个参考图像列表中为目标编码块确定目标参考图像搜索范围。在这种情况下,计算机设备可以将至少M个参考图像列表中的第一参考图像列表和第二参考图像列表作为目标参考图像搜索范围。在一些实施例中,可以将M个参考图像列表均作为目标参考图像搜索范围,例如,当M个参考图像列表包括第一参考图像列表、第二参考图像列表以及双向参考图像列表,可以将第一参考图像列表、第二参考图像列表以及双向参考图像列表均作为目标参考图像搜索范围。
(2)由于辅助编码块是使用M个参考图像列表中的某个参考图像进行编码(或运动估计)的,且辅助编码块与目标编码块具有一定的关联性,因此很大程度上目标编码块也会使用M个参考图像列表中该参考图像进行编码。例如,辅助编码块使用M个参考图像列表中的参考图像1进行编码,在很大程度上目标编码块也会使用参考图像1进行编码。在这种情况下,上述图像搜索范围信息包括参考图像或图像搜索范围信息包括参考图像的图像索引。通过辅助编码块的参考运动信息所指示的图像搜索范围信息包括参考图像,可以减少搜索目标编码块的参考图像的数目,从而加速对目标编码块的运动估计。
在一个实施例中,在确定目标编码块的目标参考图像搜索范围时,可以直接在已有的多个参考图像列表中以参考搜索图像进行筛选,确定需要搜索的参考搜索图像,并将该参考搜索图像确定为目标编码块的目标参考图像搜索范围即可,在筛选过程中不需要区别不同的参考列表。计算机设备可以根据参考运动信息所指示的图像搜索范围信息,确定第五条件参数,第五条件参数包括:第五类辅助编码块的数量和/或面积,第五类辅助编码块是指:目标编码块的各辅助编码块中对参考搜索图像进行参考图像搜索的编码块;若第五条件参数满足第五筛选条件,则将参考搜索图像作为目标编码块的目标参考图像搜索范围。否则,不将参考搜索图像作为目标编码块的目标参考图像搜索范围。
在一个实施例中,上述第五类辅助编码块具体可以是:目标编码块的各辅助编码块中对M个参考图像列表中的参考搜索图像进行参考图像搜索的编码块。此时,根据参考运动信息所指示的参考图像搜索范围信息,从M个参考图像列表中为目标编码块确定目标参考图像搜索范围的具体实现方式可以是:根据参考运动信息所指示的图像搜索范围信息,确定第五条件参数,第五条件参数包括:第五类辅助编码块的数量和/或面积,第五类辅助编码块是指:目标编码块的各辅助编码块中对M个参考图像列表中的参考搜索图像进行参考图像搜索的编码块。例如,M个参考图像列表中包括前向参考列表、后向参考列表和双向参考列表,前向参考列表和双向参考列表中均包括目标参考图像1,第五类辅助编码块是指:各辅助编码块中对该目标参考图像1进行参考图像搜索的编码块。然后判断第五条件参数是否满足第五筛选条件,若第五条件参数满足第五筛选条件,则将M个参考图像列表中的参考搜索图像作为目标编码块的目标参考图像搜索范围,即在进行参考图像搜索时,可以直接搜索该参考搜索图像。若第五条件参数不满足第五筛选条件,则不将M个参考图像列表中的参考搜索图像作为目标编码块的目标参考图像搜索范围,即在进行参考图像搜索时,跳过对该参考搜索图像的搜索,从而减少搜索目标编码块的参考图像的数目。需要说明的是,在将该参考搜索图像作为目标编码块的目标参考图像搜索范围时,会将参考搜索图像所在的参考图像列表携带上,这样有利于后续在进行图像搜索时,可以知道该参考搜索图像所属参考图像列表。例如,参考搜索图像1所属参考图像列表1,将参考搜索图像1带上参考图像列表1。第五筛选条件可以包括以下至少一种:第五类辅助编码块的数量大于数量阈值、第五类辅助编码块的面积与所有辅助编码块的面积和之间的面积比值大于面积比阈值。
在一个实施例中,参考搜索图像的数量可以是一个或多个。当参考搜索图像的数量为多个时,可以将M个参考图像列表中的多个参考搜索图像均作为目标编码块的目标参考图像搜索范围,例如,参考搜索图像有5个,可以将5个参考搜索图像均作为目标编码块的目标参考图像搜索范围,在进行参考图像搜索时,需要搜索这5个参考搜索图像。或者,可以从M个参考图像列表中的多个参考搜索图像中随机选择一部分参考搜索图像作为目标编码块的目标参考图像搜索范围。此时,在进行参考图像搜索时,需要搜索被选择的参考搜索图像,并跳过搜索未被选择的参考搜索图像。例如,参考搜索图像有10个,可以随机选择9个参考搜索图像作为目标参考图像搜索范围,在进行参考图像搜索时,需要搜索选择出来的9个参考搜索图像,并跳过未被选择的参考搜索图像。
当第五条件参数为第五类辅助编码块的数量,第五筛选条件为第五类辅助编码块的数量大于数量阈值时,计算机设备可以根据辅助编码块的参考运动信息所指示的图像搜索范围信息,统计第五类辅助编码块的数量,然后判断第五类辅助编码块的数量是否大于数量阈值,若该数量大于数量阈值,则确定第五条件参数满足第五筛选条件。若该数量小于或等于数量阈值,则确定第五条件参数不满足第五筛选条件。例如,M个参考图像列表包括参考搜索图像1,数量阈值为4,对参考搜索图像1进行图像搜索的辅助编码块的数量为5,数量5大于数量阈值4,计算机设备确定第五条件参数满足第五筛选条件。
当第五条件参数为第五类辅助编码块的面积,第五筛选条件为第五类辅助编码块的面积与所有辅助编码块的面积和之间的面积比值大于面积比阈值时,计算机设备可以根据辅助编码块的参考运动信息所指示的图像搜索范围信息,确定第五类辅助编码块,并计算第五类辅助编码块的面积与所有辅助编码块的面积和之间的面积比值,并判断该面积比值是否大于面积比阈值,若确定该面积比值大于面积比阈值,则确定第五条件参数满足第五筛选条件,若确定该面积比值小于或等于面积比阈值,则确定第五条件参数不满足第五筛选条件。例如,面积比阈值为0.15,第五类辅助编码块分别为辅助编码块1和辅助编码块2,然后计算机设备可以计算辅助编码块1和辅助编码块2之间的面积和,得到面积和1,并计算所有辅助编码块之间的面积和,得到面积和2,然后计算面积和1与面积和2之间的面积比值为0.2,面积比值0.2大于面积比阈值0.15,确定第五条件参数满足第五筛选条件
其中,数量阈值和面积比阈值可以根据待编码视频帧所处的时间层和/或目标编码块的尺寸决定。例如,待编码视频帧所处的时间层越大,该数量阈值和面积比阈值越小,又例如,目标编码块的尺寸越大,该数量阈值和面积比阈值越小。需要说明的是,获取数量阈值和面积比阈值可以参见上述相应部分的具体实现方式,在此不再赘述。
在一个实施例中,若第五条件参数满足第五筛选条件,则将该M个参考图像列表中的参考搜索图像作为目标编码块的目标参考图像搜索范围的具体实现方式可以是:若第五条件参数满足第五筛选条件,则将M个参考图像列表中的参考搜索图像确定为候选参考图像搜索范围,在该候选参考图像搜索范围中包括参考搜索图像,以及参考搜索图像所属参考图像列表,然后计算机设备可以根据参考运动信息所指示的图像搜索范围信息,确定第六条件参数,第六条件参数可以包括第六类辅助参考编码块的数量和/或面积;第六类辅助参考编码块是指目标编码块的各辅助编码块中对候选参考图像搜索范围的第一参考图像列表进行参考图像搜索的编码块,并判断第六条件参数是否满足第六筛选条件,若确定第六条件参数满足第六筛选条件,则将第一参考图像列表以及第一参考图像列表中的参考搜索图像作为目标编码块的目标参考图像搜索范围,若确定第六条件参数不满足第六筛选条件,则不将第一参考图像列表以及第一参考图像列表中的参考搜索图像作为目标编码块的目标参考图像搜索范围,即在进行参考图像搜索时,跳过对第一参考图像列表的搜索。第六筛选条件可以包括以下至少一种:第六类辅助编码块的数量大于数量阈值、第六类辅助编码块的面积与所有辅助编码块的面积和之间的比值大于面积比阈值。数量阈值和面积比阈值可以由待编码视频帧所处的时间层和/或目标编码块的尺寸决定。其中,时间层越大,该数量阈值和面积比阈值越小;目标编码块的尺寸越大,该数量阈值和面积比阈值越小。
在一个实施例中,当第六条件参数为第六类辅助编码块的数量,第六筛选条件为第六类辅助编码块的数量大于数量阈值时。判断第六条件参数是否满足第六筛选条件的具体实现方式可以是:计算机设备可以根据参考运动信息所指示的图像搜索范围信息,确定第六辅助编码块的数量,并判断第六辅助编码块的数量是否大于数量阈值,若该数量大于数量阈值,则确定第六条件参数满足第六筛选条件,若该数量小于等于数量阈值,则确定第六条件参数不满足第六筛选条件。
在一个实施例中,当第六条件参数为第六类辅助编码块的面积,第六筛选条件为第六类辅助编码块的数量的面积与所有辅助编码块的面积和之间的比值大于面积比阈值。判断第六条件参数是否满足第六筛选条件的具体实现方式可以是:计算机设备可以根据参考运动信息所指示的图像搜索范围信息,确定第六类辅助编码块,并计算第六类辅助编码块的面积;然后计算第六类辅助编码块的面积与所有辅助编码块的面积和之间的面积比值,并判断该面积比值是否大于面积比阈值,若该面积比值大于面积比阈值,则确定第六条件参数满足第六筛选条件,若该面积比值小于或等于面积比阈值,则确定第六条件参数不满足第六筛选条件。
在一个实施例中,若第五条件参数满足第五筛选条件,则将M个参考图像列表中的参考搜索图像作为目标编码块的目标参考图像搜索范围的具体实现方式可以是:若第五条件参数满足第五筛选条件,则将M个参考图像列表中的参考搜索图像确定为候选参考图像搜索范围,在该候选参考图像搜索范围中包括参考搜索图像,以及参考搜索图像所属参考图像列表,然后计算机设备可以根据参考运动信息所指示的图像搜索范围信息,确定第七条件参数,第七条件参数可以包括:第七类辅助编码块的数量和/或面积,第七类辅助编码块是指:目标编码块的各辅助编码块中对候选参考图像搜索范围的第二参考图像列表进行参考图像搜索的编码块。然后,判断第七条件参数是否满足第七筛选条件,若确定第七条件参数满足第七筛选条件,则将第二参考图像列表以及第二参考图像列表中的参考搜索图像作为目标编码块的目标参考图像搜索范围,若确定第七条件参数不满足第七筛选条件,则不将第二参考图像列表以及第二参考图像列表中的参考搜索图像作为目标编码块的目标参考图像搜索范围,即在进行参考图像搜索时,跳过对第二参考图像列表的搜索。其中,第七筛选条件可以包括以下至少一种:第七类辅助编码块的数量大于数量阈值、第七类辅助编码块的面积与所有辅助编码块的面积和之间的面积比值大于面积比阈值。数量阈值和面积比阈值可以由待编码视频帧所处的时间层和/或目标编码块的尺寸决定。其中,时间层越大,该数量阈值和面积比阈值越小;目标编码块的尺寸越大,该数量阈值和面积比阈值越小。需要说明的是,如何判断第七条件参数是否满足第七筛选条件具体实现方式以及获取数量阈值和面积比阈值的具体实现方式均可以参见上述相应部分的实施例,在此不再赘述。
在一个实施例中,若第五条件参数不满足第五筛选条件,则获取目标编码块的特征信息,特征信息包括:待编码视频帧所处的时间层,或者特征信息包括:待编码视频帧所处的时间层和目标编码块的尺寸;若目标编码块的特征信息满足触发条件,则触发执行获取目标编码块的辅助编码块的参考运动信息;若目标编码块的特征信息不满足触发条件,则至少将M个参考图像列表中的第一参考图像列表和第二参考图像列表作为目标编码块的目标参考图像搜索范围。
S104:根据目标参考图像搜索范围对目标编码块进行运动估计。目标参考图像搜索范围包括目标参考图像列表以及目标参考图像列表对应的目标参考图像。
在一个实施例中,计算机设备可以根据目标参考图像搜索范围,通过第一参考图像搜索规则进行运动估计,得到目标编码块的第一运动估计参数,并根据目标参考图像搜索范围,通过第二参考图像搜索规则进行运动估计,得到目标编码块的第二运动估计参数,并从第一运动估计参数和第二运动估计参数中确定最优的运动估计参数作为目标编码块的目标运动估计参数。其中,第一参考图像搜索规则可以是translation ME(平移运动估计模型),第二参考图像搜索规则可以是affine ME(仿射运动估计模型)。其中,计算机设备从第一运动估计参数和第二运动估计参数中确定最优的运动估计参数作为目标编码块的目标运动估计参数可以是:将率失真(RD,Rate Distortion)最小对应的运动估计参数确定为最优的运动估计参数,并作为目标编码块的目标运动估计参数。相较于VVC参考软件通用视频编码测试模型(VTM,VVC test model),都是根据预定义的搜索模板和规则来减少运动估计过程中RD的计算次数而言,本申请实施例,通过步骤S103得到的目标参考图像搜索范围,可以减少运动估计过程中RD的计算次数加速了对目标编码块的运动估计,还能够比较准确地保证基于目标参考图像搜索范围得到目标编码块的目标运动估计参数的准确性。
在本申请实施例中,获取待编码视频帧,并在待编码视频帧中确定待编码的目标编码块;获取目标编码块的辅助编码块的参考运动信息;根据参考运动信息所指示的图像搜索范围信息,从M个参考图像列表中为目标编码块确定目标参考图像搜索范围,M为大于1的整数;根据目标参考图像搜索范围对目标编码块进行运动估计。以辅助编码块的参考运动信息来减少搜索目标编码块的参考图像列表或者参考图像的数目,跳过了在运动估计时对部分参考图像列表或部分参考图像的搜索,减少计算量,降低了运动估计的时间复杂度,提高了视频帧编码过程的运动估计的效率。
基于上述编码过程中的运动估计方案,请参阅图3,图3为本申请实施例提供的一种编码过程中的运动估计方法的流程示意图。该编码过程中的运动估计方法可以由计算机设备执行,该计算机设备可以是终端设备或者服务器。更为具体的,该编码过程中的运动估计方法可以由计算机设备中的编码器来执行。上述终端设备可以是智能手机、平板电脑、笔记本电脑、台式电脑、智能语音交互设备、智能家电、车载终端、飞行器等等;上述服务器可以是是独立的物理服务器,也可以是多个物理服务器构成的服务器集群或者分布式***,还可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、内容分发网络(Content Delivery Network,CDN)、以及大数据和人工智能平台等基础云计算服务的云服务器,等等。本实施例中所描述的编码过程中的运动估计方法,包括以下步骤S301-S306。
S301:获取待编码视频帧,并在待编码视频帧中确定待编码的目标编码块。
S302:获取目标编码块的特征信息,特征信息包括:待编码视频帧所处的时间层,或者特征信息包括:待编码视频帧所处的时间层和目标编码块的尺寸。时间层可以为时间层0、时间层1、时间层2、时间层3、时间层4和时间层5等等,目标编码块的尺寸可以为256、128、64、32等等。
在一个实施例中,针对重要的视频帧或者为了防止目标运动估计参数无法更新的问题,可以预先定义触发条件,计算机设备可以判断获取到的目标编码块的特征信息是否满足触发条件,该触发条件用于触发获取目标编码块的辅助编码块的参考运动信息,若确定目标编码块的特征信息满足触发条件,则此时可以对目标编码块进行快速运动估计,执行步骤S303;若确定目标编码块的特征信息不满足触发条件,则说明该视频帧为重要视频帧,此时,无法根据参考运动信息所指示的图像搜索范围信息,从M个参考图像列表中为目标编码块确定目标参考图像搜索范围来对目标编码块进行快速运动估计,计算机设备执行步骤S305。
在一个实施例中,当目标编码块的特征信息包括待编码视频帧所处的时间层时,触发条件可以是待编码视频帧所处时间层大于时间层阈值,也就是禁止对低时间层的视频帧包括的编码块进行快速运动估计,以保证编码效率。计算机设备可以判断目标编码块的特征信息包括的待编码视频帧所处的时间层是否大于时间层阈值,若确定待编码视频帧所处的时间层大于时间层阈值,则此时可以对目标编码块进行快速运动估计,即执行步骤S303;若确定待编码视频帧所处的时间层小于或等于时间层阈值,则意味着该待编码视频帧为重要帧,不能对目标编码块进行快速运动估计,此时可以执行步骤S305。
在一个实施例中,当目标编码块的特征信息包括待编码视频帧所处的时间层和目标编码块的尺寸时,触发条件可以包括每个时间层对应的预定义的编码块尺寸,例如在随机接入(RA)配置下,时间层0对应的预定义的编码块尺寸为256,时间层1对应的预定义的编码块尺寸为128,时间层2对应的预定义的编码块尺寸为128,时间层3对应的预定义的编码块尺寸为64,时间层4对应的预定义的编码块尺寸为64,时间层5对应的预定义的编码块尺寸为32。需要说明的是,本申请中每个时间层对应的预定义的编码块尺寸可以根据需求设置,不限于上述例子中的每个时间层对应的预定义的编码块尺寸。然后,计算机设备可以判断目标编码块的特征信息是否满足触发条件的具体过程为:计算机设备根据待编码视频帧所处的时间层,从每个时间层对应的预定义的编码块尺寸中确定待编码视频帧所处的时间层对应的目标预定义的编码块尺寸。然后判断该目标编码块的尺寸是否大于目标预定义的编码块尺寸。若确定目标编码块的尺寸大于目标预定义的编码块尺寸,则可以对目标编码块进行快速运动估计,并执行步骤S303;若确定目标编码块的尺寸小于或等于目标预定义的编码块尺寸,则无法对目标编码块进行快速运动估计,则执行步骤S305。
例如,待编码视频帧所处的时间层为0,目标编码块的尺寸为256,计算机设备可以基于待编码视频帧所处的时间层0,从每个时间层对应的预定义的编码块尺寸中确定时间层0对应的预定义的编码块尺寸为128,然后计算机设备确定目标编码块的尺寸大于预定义的编码块尺寸(即256大于128),则可以对目标编码块进行快速运动估计。又例如,待编码视频帧所处的时间层为0,目标编码块的尺寸为64,计算机设备确定目标编码块的尺寸小于预定义的编码块尺寸(即64小于128),无法对目标编码块进行快速运动估,可以将至少将M个参考图像列表中的第一参考图像列表和第二参考图像列表作为目标参考图像搜索范围。
S303:若目标编码块的特征信息满足触发条件,则触发执行获取目标编码块的辅助编码块的参考运动信息。
S304:根据参考运动信息所指示的图像搜索范围信息,从M个参考图像列表中为目标编码块确定目标参考图像搜索范围,M为大于1的整数。
其中,步骤S304的具体实现方式可以参见图1相应部分的具体实现方式,在此不再赘述。
S305:若目标编码块的特征信息不满足触发条件,则至少将M个参考图像列表中的第一参考图像列表和第二参考图像列表作为目标编码块的目标参考图像搜索范围。其中,第一参考图像列表可以是前向参考图像列表,第二参考图像列表可以是后向参考图像列表。
在一个实施例中,当M个参考图像列表包括第一参考图像列表和第二参考图像列表,若确定目标编码块的特征信息不满足触发条件,则第一参考图像列表和第二参考图像列表均作为目标参考图像搜索范围。
在另一个实施例中,当M个参考图像列表包括第一参考图像列表、第二参考图像列表和双向参考图像列表时,若确定目标编码块的特征信息不满足触发条件,则可以将第一参考图像列表和第一参考图像列表作为目标参考图像搜索范围,或者若确定目标编码块的特征信息不满足触发条件,则可以将第一参考图像列表、第一参考图像列表以及双向参考图像列表均作为目标参考图像搜索范围。
S306:根据目标参考图像搜索范围对目标编码块进行运动估计。
在一个实施例中,根据目标参考图像搜索范围对目标编码块进行运动估计的具体流程可以参见图步骤S104的具体实现方式可以是:计算机设备确定目标参考图像搜索范围对应的目标参考图像列表和目标参考图像列表中对应的目标参考图像,目标参考图像的数量可以是一个或多个;然后根据目标参考图像列表及其对应的目标参考图像,通过第一参考图像搜索规则进行运动估计,得到目标编码块的第一运动估计参数;并根据目标参考图像列表及其对应的目标参考图像,通过第二参考图像搜索规则进行运动估计,得到目标编码块的第二运动估计参数;第二参考图像搜索规则与第一参考图像搜索规则不相同;从第一运动估计参数和第二运动估计参数中为所述目标编码块选择目标运动估计参数。
其中,每个目标参考图像包括一个或多个编码块,根据目标参考图像列表及其对应的目标参考图像,通过第一参考图像搜索规则进行运动估计,得到目标编码块的第一运动估计参数的具体实现方式可以是:通过第一参考图像搜索规则,遍历目标参考图像列表中的目标参考图像,然后以率失真(RD)代价为准则,从目标参考图像列表对应的目标参考图像包括的编码块中确定率失真最小的第一匹配块,并将率失真最小的第一匹配块对应的运动参数确定为目标编码块的第一运动估计参数。同理,根据目标参考图像列表及其对应的目标参考图像,通过第二参考图像搜索规则进行运动估计,得到目标编码块的第二运动估计参数的具体实现方式可以是:通过第二参考图像搜索规则,遍历目标参考图像列表中的目标参考图像,并以率失真(RD)代价为准则,从目标参考图像列表对应的目标参考图像包括的编码块中确定率失真最小的第二匹配块,并将第二匹配块对应的运动估计参数确定为目标编码块的第二运动估计参数。其中,第二参考图像搜索规则是一种梯度下降法的求解规则,它的损失函数为运动估计前和运动估计后编码块的最小均方误差MSE,且它的初始运动估计参数由t第一参考图像搜索规则的运动估计参数决定。
在一个实施例中,当目标参考图像搜索范围包括至少M个参考图像列表中的第一参考图像列表和第二参考图像列表时,参见图4,图4为通过第一参考图像搜索规则对目标编码块进行运动估计的示意图。计算机设备根据目标参考图像列表及其对应的目标参考图像,通过第一参考图像搜索规则进行运动估计,得到目标编码块的第一运动估计参数的具体实现方式可以是:按照第一参考图像搜索规则遍历第一参考图像列表和第二参考图像列表中所有的参考图像,分别以率失真代价为准确,从第一参考图像列表对应的目标参考图像包括的编码块中确定率失真最小的第一匹配块,以及从第二参考图像列表对应的目标参考图像包括的编码块中确定率失真最小的第二匹配块,然后对第一匹配块和第二匹配块进行加权求和处理,得到双向匹配块,然后从第一匹配块对应的运动估计参数、第二匹配块对应的运动估计参数以及双向匹配块对应的运动估计参数中确定率失真最小的匹配块对应的运动估计参数,并作为目标编码块的第一运动估计参数。
在一个实施例中,为了选出最优的运动估计参数作为目标编码块的目标运动估计参数,可以比较第一运动估计参数对应的率失真和第二运动估计参数对应的率失真,从而选择最优的运动估计参数。从第一运动估计参数和第二运动估计参数中为目标编码块选择目标运动估计参的具体实现方式可以是:获取第一运动估计参数对应的第一率失真以及第二运动估计参数对应的第二率失真;然后比较第一率失真和第二率失真,若确定第一率失真大于第二率失真,则将第二率失真对应的第二运动估计参数确定为目标编码块的目标运动估计参数;若确定第二率失真大于第一率失真,则将第一率失真对应的第一运动估计参数确定为目标编码块的目标运动估计参数。若确定第一率失真和第二率失真相同,则可以将第一运动估计参数和第二运动估计参数均确定为目标编码块的目标运动估计参数。在一些实施例中,若确定第一率失真和第二率失真相同,则可以将第一运动估计参数或者第二运动估计参数确定为目标编码块的目标运动估计参数。
在本申请实施例中,一方面,计算机设备可以获取待编码视频帧,并在待编码视频帧中确定待编码的目标编码块;获取目标编码块的特征信息,特征信息包括:待编码视频帧所处的时间层,或者特征信息包括:待编码视频帧所处的时间层和目标编码块的尺寸。通过设置触发条件可以控制对目标编码块是否快速运动估计,可以防止在进行视频帧编码过程中每个编码块均使用相同的参考图像列表或者参考图像进行运动估计,掉入局部最优。另一方面,若目标编码块的特征信息满足触发条件,则触发执行获取目标编码块的辅助编码块的参考运动信息;根据参考运动信息所指示的图像搜索范围信息,从M个参考图像列表中为目标编码块确定目标参考图像搜索范围;若目标编码块的特征信息不满足触发条件,则至少将M个参考图像列表中的第一参考图像列表和第二参考图像列表作为目标编码块的目标参考图像搜索范围,根据目标参考图像搜索范围对目标编码块进行运动估计,在目标编码块的特征信息满足触发条件时,可以对目标编码块进行快速运动估计,通过确定目标参考图像搜索范围可以减少计算量,提高了对目标编码块的运动估计以及提高了编码效率。
基于上述编码过程中的运动估计方法实施例的描述,本申请实施例还公开了一种编码过程中的运动估计装置,该编码过程中的运动估计装置可以是运行于上述所提及的计算机设备中的一个计算机程序(包括程序代码)。该编码过程中的运动估计装置可以执行图1和图3所示的方法。请参见图5,所述编码过程中的运动估计装置可以包括如下单元:
获取单元501,用于获取待编码视频帧,并在所述待编码视频帧中确定待编码的目标编码块;
所述获取单元501,还用于获取所述目标编码块的辅助编码块的参考运动信息,所述辅助编码块的参考运动信息包括:与所述目标编码块相邻的N个相邻编码块的运动信息和所述参考编码块列表包括的运动信息,N为大于或等于1的整数;
处理单元502,用于根据所述参考运动信息所指示的图像搜索范围信息,从M个参考图像列表中为所述目标编码块确定目标参考图像搜索范围,M为大于1的整数;
所述处理单元502,用于根据所述目标参考图像搜索范围对所述目标编码块进行运动估计。
在一个实施例中,所述处理单元502在根据所述参考运动信息所指示的参考图像搜索范围信息,从M个参考图像列表中为所述目标编码块确定目标参考图像搜索范围时,可具体用于:
根据所述辅助编码块的参考运动信息所指示的图像搜索范围信息,确定第一条件参数,所述第一条件参数包括:第一类辅助编码块的数量和/或面积,所述第一类辅助编码块是指:所述目标编码块的各辅助编码块中对M个参考图像列表中第一参考图像列表进行参考图像搜索的编码块,所述第一参考图像列表为前向参考列表;
若所述第一条件参数满足第一筛选条件,则将所述第一参考图像列表作为所述目标编码块的目标参考图像搜索范围。
在一个实施例中,所述处理单元502在根据所述参考运动信息所指示的参考图像搜索范围信息,从M个参考图像列表中为所述目标编码块确定目标参考图像搜索范围时,可具体用于:
根据所述辅助编码块的参考运动信息所指示的图像搜索范围信息,确定第二条件参数,所述第二条件参数包括:第二类辅助编码块的数量和/或面积,所述第二类辅助编码块是指:所述目标编码块的各辅助编码块中对M个参考图像列表中第二参考图像列表进行参考图像搜索的编码块,所述第二参考图像列表为后向参考列表;
若所述第二条件参数满足第二筛选条件,则将所述第二参考图像列表作为所述目标编码块的目标参考图像搜索范围。
在一个实施例中,所述根据所述辅助编码块的参考运动信息所指示的图像搜索范围信息,确定第二条件参数之前,还用于:
判断第一条件参数是否满足第一筛选条件;
若第一条件参数不满足第一筛选条件,则执行所述根据所述辅助编码块的参考运动信息所指示的图像搜索范围信息,确定第二条件参数;
所述第一条件参数包括:第一类辅助编码块的数量和/或面积,所述第一类辅助编码块是指:所述目标编码块的各辅助编码块中对M个参考图像列表中第一参考图像列表进行参考图像搜索的编码块,所述第一参考图像列表为前向参考列表。
在一个实施例中,所述处理单元502在若所述第一条件参数满足第一筛选条件,则将所述第一参考图像列表作为所述目标编码块的目标参考图像搜索范围时,可具体用于:
若所述第一条件参数满足第一筛选条件,则根据所述辅助编码块的参考运动信息对应的参考图像,确定第三条件参数,所述第三条件参数包括:第三类辅助编码块的数量和/或面积,所述第三类辅助编码块是指:所述目标编码块的各辅助编码块中对所述第一参考图像列表中的目标参考图像进行参考图像搜索的编码块;
若所述第三条件参数满足第三筛选条件,则将所述第一参考图像列表中的目标参考图像作为所述目标编码块的目标参考图像搜索范围。
在一个实施例中,所述处理单元502在若所述第二条件参数满足第二筛选条件,则将所述第二参考图像列表作为所述目标编码块的目标参考图像搜索范围时,可具体用于:
若所述第二条件参数满足第二筛选条件,则根据所述辅助编码块的参考运动信息对应的参考图像,确定第四条件参数,所述第四条件参数包括:第四类辅助编码块的数量和/或面积,所述第四类辅助编码块是指:所述目标编码块的各辅助编码块中对所述第二参考图像列表中的目标参考图像进行参考图像搜索的编码块;
若所述第四条件参数满足第四筛选条件,则将所述第二参考图像列表中的目标参考图像作为所述目标编码块的目标参考图像搜索范围。
在一个实施例中,所述处理单元502在根据所述参考运动信息所指示的参考图像搜索范围信息,从M个参考图像列表中为所述目标编码块确定目标参考图像搜索范围时,可具体用于:
根据所述参考运动信息所指示的图像搜索范围信息,确定第五条件参数,所述第五条件参数包括:第五类辅助编码块的数量和/或面积,所述第五类辅助编码块是指:所述目标编码块的各辅助编码块中对M个参考图像列表中的参考搜索图像进行参考图像搜索的编码块;
若所述第五条件参数满足第五筛选条件,则将所述参考搜索图像作为所述目标编码块的目标参考图像搜索范围。
在一个实施例中,在获取所述目标编码块的辅助编码块的参考运动信息之前,所述获取单元501还用于:获取所述目标编码块的特征信息,所述特征信息包括:待编码视频帧所处的时间层,或者所述特征信息包括:待编码视频帧所处的时间层和所述目标编码块的尺寸;
所述处理单元502,还用于若所述目标编码块的特征信息满足触发条件,则触发执行获取所述目标编码块的辅助编码块的参考运动信息;
若所述目标编码块的特征信息不满足触发条件,则至少将M个参考图像列表中的第一参考图像列表和第二参考图像列表作为所述目标编码块的目标参考图像搜索范围。
在一个实施例中,所述处理单元502在根据所述目标参考图像搜索范围对所述目标编码块进行运动估计时,可具体用于:
确定所述目标参考图像搜索范围对应的目标参考图像列表和所述目标参考图像列表中对应的目标参考图像;
根据所述目标参考图像列表及其对应的目标参考图像,通过第一参考图像搜索规则进行运动估计,得到所述目标编码块的第一运动估计参数;
根据所述目标参考图像列表及其对应的目标参考图像,通过第二参考图像搜索规则进行运动估计,得到所述目标编码块的第二运动估计参数;第二参考图像搜索规则与所述第一参考图像搜索规则不相同;
从所述第一运动估计参数和所述第二运动估计参数中为所述目标编码块选择目标运动估计参数。
在一个实施例中,在从所述第一运动估计参数和所述第二运动估计参数中为所述目标编码块选择目标运动估计参数时,所述获取单元501,用于获取所述第一运动估计参数对应的第一率失真以及所述第二运动估计参数对应的第二率失真;
所述处理单元502,用于若所述第一率失真大于所述第二率失真,则将所述第二率失真对应的第二运动估计参数确定为所述目标编码块的目标运动估计参数;若所述第二率失真大于所述第一率失真,则将所述第一率失真对应的第一运动估计参数确定为所述目标编码块的目标运动估计参数。
根据本申请的一个实施例,图1和图3所示的方法所涉及的各个步骤均可以是由图5所示的编码过程中的运动估计装置中的各个单元执行的。例如,图1所示的步骤S101-步骤S102由图5所示的获取单元501来执行,步骤S103-步骤S104由图5所示的处理单元502来执行。又如,图3所示的步骤S301-步骤S302由图5所示的获取单元501来执行,步骤S303-步骤S306由图5所示的处理单元502来执行。
根据本申请的另一个实施例,图5所示的编码过程中的运动估计装置中的各个单元可以分别或者全部合并为一个或若干个另外的单元来构成,或者其中的某个(些)单元还可以再拆分为功能上更小的多个单元来构成,这可以实现同样的操作,而不影响本申请实施例的技术效果的实现。上述单元是基于逻辑功能划分的,在实际应用中,一个单元的功能也可以是由多个单元来实现,或者多个单元的功能由一个单元实现。在本申请的其他实施例中,基于编码过程中的运动估计装置也可以包括其他单元,在实际应用中,这些功能也可以由其他单元协助实现,并且可以由多个单元协作实现。
根据本申请的另一个实施例,可以通过包括中央处理单元(Central ProcessingUnit,CPU),随机存取存储介质(RAM)、只读存储介质(ROM)等处理元件和存储元件。例如计算机的通用计算设备上运行能够执行如图1和图3所示的相应方法所涉及的各步骤的计算机程序(包括程序代码),来构造如图5所示的编码过程中的运动估计装置,以及来实现本申请实施例的编码过程中的运动估计方法。所述的计算机程序可以记载于例如计算机可读记录介质上,并通过计算机可读记录介质装载于上述计算机设备中,并在其中运行。
在本申请实施例中,获取待编码视频帧,并在待编码视频帧中确定待编码的目标编码块;获取目标编码块的辅助编码块的参考运动信息;根据参考运动信息所指示的图像搜索范围信息,从M个参考图像列表中为目标编码块确定目标参考图像搜索范围,M为大于1的整数;根据目标参考图像搜索范围对目标编码块进行运动估计。以辅助编码块的参考运动信息来减少搜索目标编码块的参考图像列表或者参考图像的数目,跳过了在运动估计时对部分参考图像列表或部分参考图像的搜索,减少计算量,降低了运动估计的时间复杂度,提高了视频帧编码过程的运动估计的效率。
基于上述编码过程中的运动估计方法实施例的描述,本申请实施例还公开了一种计算机设备,请参见图6,该计算机设备至少可包括处理器601、输入设备602、输出设备603以及存储器604。其中,计算机设备内的处理器601、输入设备602、输出设备603以及存储器604可通过总线或其他方式连接。
所述存储器604是计算机设备中的记忆设备,用于存放程序和数据。可以理解的是,此处的存储器604既可以包括计算机设备的内置存储介质,当然也可以包括计算机设备支持的扩展存储介质。存储器604提供存储空间,该存储空间存储了计算机设备的操作***。并且,在该存储空间中还存放计算机程序(包括程序代码)。需要说明的是,此处的计算机存储介质可以是高速RAM存储器;可选的,还可以是至少一个远离前述处理器的计算机存储介质、所述处理器可以称为中央处理单元(Central Processing Unit,CPU),是计算机设备的核心以及控制中心,用于运行所述存储器604中存储的计算机程序。
在一个实施例中,可由处理器601加载并执行存储器604中存放的计算机程序,以实现上述有关编码过程中的运动估计方法实施例中的方法的相应步骤;具体的,所述处理器601加载并执行存储器604中存放的计算机程序,用于:
获取待编码视频帧,并在所述待编码视频帧中确定待编码的目标编码块;
获取所述目标编码块的辅助编码块的参考运动信息,所述辅助编码块的参考运动信息包括:与所述目标编码块相邻的N个相邻编码块的运动信息和所述参考编码块列表包括的运动信息,N为大于或等于1的整数;
根据所述参考运动信息所指示的图像搜索范围信息,从M个参考图像列表中为所述目标编码块确定目标参考图像搜索范围,M为大于1的整数;
根据所述目标参考图像搜索范围对所述目标编码块进行运动估计。
在一个实施例中,所述处理器601加载并执行存储器604中存放的计算机程序在根据所述参考运动信息所指示的参考图像搜索范围信息,从M个参考图像列表中为所述目标编码块确定目标参考图像搜索范围时,可具体用于:
根据所述辅助编码块的参考运动信息所指示的图像搜索范围信息,确定第一条件参数,所述第一条件参数包括:第一类辅助编码块的数量和/或面积,所述第一类辅助编码块是指:所述目标编码块的各辅助编码块中对M个参考图像列表中第一参考图像列表进行参考图像搜索的编码块,所述第一参考图像列表为前向参考列表;
若所述第一条件参数满足第一筛选条件,则将所述第一参考图像列表作为所述目标编码块的目标参考图像搜索范围。
在一个实施例中,所述处理器601加载并执行存储器604中存放的计算机程序在根据所述参考运动信息所指示的参考图像搜索范围信息,从M个参考图像列表中为所述目标编码块确定目标参考图像搜索范围时,可具体用于:
根据所述辅助编码块的参考运动信息所指示的图像搜索范围信息,确定第二条件参数,所述第二条件参数包括:第二类辅助编码块的数量和/或面积,所述第二类辅助编码块是指:所述目标编码块的各辅助编码块中对M个参考图像列表中第二参考图像列表进行参考图像搜索的编码块,所述第二参考图像列表为后向参考列表;
若所述第二条件参数满足第二筛选条件,则将所述第二参考图像列表作为所述目标编码块的目标参考图像搜索范围。
在一个实施例中,在根据所述辅助编码块的参考运动信息所指示的图像搜索范围信息,确定第二条件参数之前,所述处理器601加载并执行存储器604中存放的计算机程序,还用于:
判断第一条件参数是否满足第一筛选条件;
若第一条件参数不满足第一筛选条件,则执行所述根据所述辅助编码块的参考运动信息所指示的图像搜索范围信息,确定第二条件参数;
所述第一条件参数包括:第一类辅助编码块的数量和/或面积,所述第一类辅助编码块是指:所述目标编码块的各辅助编码块中对M个参考图像列表中第一参考图像列表进行参考图像搜索的编码块,所述第一参考图像列表为前向参考列表。
在一个实施例中,所述处理器601加载并执行存储器604中存放的计算机程序在若所述第一条件参数满足第一筛选条件,则将所述第一参考图像列表作为所述目标编码块的目标参考图像搜索范围时,可具体用于:
若所述第一条件参数满足第一筛选条件,则根据所述辅助编码块的参考运动信息对应的参考图像,确定第三条件参数,所述第三条件参数包括:第三类辅助编码块的数量和/或面积,所述第三类辅助编码块是指:所述目标编码块的各辅助编码块中对所述第一参考图像列表中的目标参考图像进行参考图像搜索的编码块;
若所述第三条件参数满足第三筛选条件,则将所述第一参考图像列表中的目标参考图像作为所述目标编码块的目标参考图像搜索范围。
在一个实施例中,所述处理器601加载并执行存储器604中存放的计算机程序在若所述第二条件参数满足第二筛选条件,则将所述第二参考图像列表作为所述目标编码块的目标参考图像搜索范围时,可具体用于:
若所述第二条件参数满足第二筛选条件,则根据所述辅助编码块的参考运动信息对应的参考图像,确定第四条件参数,所述第四条件参数包括:第四类辅助编码块的数量和/或面积,所述第四类辅助编码块是指:所述目标编码块的各辅助编码块中对所述第二参考图像列表中的目标参考图像进行参考图像搜索的编码块;
若所述第四条件参数满足第四筛选条件,则将所述第二参考图像列表中的目标参考图像作为所述目标编码块的目标参考图像搜索范围。
在一个实施例中,所述处理器601加载并执行存储器604中存放的计算机程序在根据所述参考运动信息所指示的参考图像搜索范围信息,从M个参考图像列表中为所述目标编码块确定目标参考图像搜索范围时,可具体用于:
根据所述参考运动信息所指示的图像搜索范围信息,确定第五条件参数,所述第五条件参数包括:第五类辅助编码块的数量和/或面积,所述第五类辅助编码块是指:所述目标编码块的各辅助编码块中对M个参考图像列表中的参考搜索图像进行参考图像搜索的编码块;
若所述第五条件参数满足第五筛选条件,则将所述参考搜索图像作为所述目标编码块的目标参考图像搜索范围。
在一个实施例中,所述处理器601加载并执行存储器604中存放的计算机程序在获取所述目标编码块的辅助编码块的参考运动信息之前,还用于:
获取所述目标编码块的特征信息,所述特征信息包括:待编码视频帧所处的时间层,或者所述特征信息包括:待编码视频帧所处的时间层和所述目标编码块的尺寸;
若所述目标编码块的特征信息满足触发条件,则触发执行获取所述目标编码块的辅助编码块的参考运动信息;
若所述目标编码块的特征信息不满足触发条件,则至少将M个参考图像列表中的第一参考图像列表和第二参考图像列表作为所述目标编码块的目标参考图像搜索范围。
在一个实施例中,所述处理器601加载并执行存储器604中存放的计算机程序在根据所述目标参考图像搜索范围对所述目标编码块进行运动估计时,可具体用于:
确定所述目标参考图像搜索范围对应的目标参考图像列表和所述目标参考图像列表中对应的目标参考图像;
根据所述目标参考图像列表及其对应的目标参考图像,通过第一参考图像搜索规则进行运动估计,得到所述目标编码块的第一运动估计参数;
根据所述目标参考图像列表及其对应的目标参考图像,通过第二参考图像搜索规则进行运动估计,得到所述目标编码块的第二运动估计参数;第二参考图像搜索规则与所述第一参考图像搜索规则不相同;
从所述第一运动估计参数和所述第二运动估计参数中为所述目标编码块选择目标运动估计参数。
在一个实施例中,所述处理器601加载并执行存储器604中存放的计算机程序在从所述第一运动估计参数和所述第二运动估计参数中为所述目标编码块选择目标运动估计参数时,可具体用于:
获取所述第一运动估计参数对应的第一率失真以及所述第二运动估计参数对应的第二率失真;
若所述第一率失真大于所述第二率失真,则将所述第二率失真对应的第二运动估计参数确定为所述目标编码块的目标运动估计参数;
若所述第二率失真大于所述第一率失真,则将所述第一率失真对应的第一运动估计参数确定为所述目标编码块的目标运动估计参数。
应当理解,在本申请实施例中,所称处理器601可以是中央处理单元(CentralProcessing Unit,CPU),该处理器601还可以是其他通用处理器、数字信号处理器(DigitalSignal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现成可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
在本申请实施例中,获取待编码视频帧,并在待编码视频帧中确定待编码的目标编码块;获取目标编码块的辅助编码块的参考运动信息;根据参考运动信息所指示的图像搜索范围信息,从M个参考图像列表中为目标编码块确定目标参考图像搜索范围,M为大于1的整数;根据目标参考图像搜索范围对目标编码块进行运动估计。以辅助编码块的参考运动信息来减少搜索目标编码块的参考图像列表或者参考图像的数目,跳过了在运动估计时对部分参考图像列表或部分参考图像的搜索,减少计算量,降低了运动估计的时间复杂度,提高了视频帧编码过程的运动估计的效率。
本申请实施例中提供一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序包括程序指令,所述程序指令被处理器执行时,可执行上述所有实施例中所执行的步骤。
本申请实施例还提供一种计算机程序产品,计算机程序产品包括计算机指令,计算机指令存储在计算机可读存储介质中,计算机指令被计算机设备的处理器执行时,执行上述所有实施例中的方法。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,所述的存储介质可为磁碟、光盘、只读存储记忆体(Read-Only Memory,ROM)或随机存储记忆体(Random AccessMemory,RAM)等。
以上所揭露的仅为本申请一种较佳实施例而已,当然不能以此来限定本申请之权利范围,本领域普通技术人员可以理解实现上述实施例的全部或部分流程,并依本申请权利要求所作的等同变化,仍属于发明所涵盖的范围。

Claims (13)

1.一种编码过程中的运动估计方法,其特征在于,包括:
获取待编码视频帧,并在所述待编码视频帧中确定待编码的目标编码块;
获取所述目标编码块的辅助编码块的参考运动信息,所述辅助编码块的参考运动信息包括:与所述目标编码块相邻的N个相邻编码块的运动信息和所述参考编码块列表包括的运动信息,N为大于或等于1的整数;
根据所述参考运动信息所指示的图像搜索范围信息,从M个参考图像列表中为所述目标编码块确定目标参考图像搜索范围,M为大于1的整数;
根据所述目标参考图像搜索范围对所述目标编码块进行运动估计。
2.如权利要求1所述的方法,其特征在于,所述根据所述参考运动信息所指示的参考图像搜索范围信息,从M个参考图像列表中为所述目标编码块确定目标参考图像搜索范围,包括:
根据所述辅助编码块的参考运动信息所指示的图像搜索范围信息,确定第一条件参数,所述第一条件参数包括:第一类辅助编码块的数量和/或面积,所述第一类辅助编码块是指:所述目标编码块的各辅助编码块中对M个参考图像列表中第一参考图像列表进行参考图像搜索的编码块,所述第一参考图像列表为前向参考列表;
若所述第一条件参数满足第一筛选条件,则将所述第一参考图像列表作为所述目标编码块的目标参考图像搜索范围。
3.如权利要求1所述的方法,其特征在于,所述根据所述参考运动信息所指示的参考图像搜索范围信息,从M个参考图像列表中为所述目标编码块确定目标参考图像搜索范围,包括:
根据所述辅助编码块的参考运动信息所指示的图像搜索范围信息,确定第二条件参数,所述第二条件参数包括:第二类辅助编码块的数量和/或面积,所述第二类辅助编码块是指:所述目标编码块的各辅助编码块中对M个参考图像列表中第二参考图像列表进行参考图像搜索的编码块,所述第二参考图像列表为后向参考列表;
若所述第二条件参数满足第二筛选条件,则将所述第二参考图像列表作为所述目标编码块的目标参考图像搜索范围。
4.如权利要求3所述的方法,其特征在于,所述根据所述辅助编码块的参考运动信息所指示的图像搜索范围信息,确定第二条件参数之前,还包括:
判断第一条件参数是否满足第一筛选条件;
若第一条件参数不满足第一筛选条件,则执行所述根据所述辅助编码块的参考运动信息所指示的图像搜索范围信息,确定第二条件参数;
所述第一条件参数包括:第一类辅助编码块的数量和/或面积,所述第一类辅助编码块是指:所述目标编码块的各辅助编码块中对M个参考图像列表中第一参考图像列表进行参考图像搜索的编码块,所述第一参考图像列表为前向参考列表。
5.如权利要求2所述的方法,其特征在于,所述若所述第一条件参数满足第一筛选条件,则将所述第一参考图像列表作为所述目标编码块的目标参考图像搜索范围,包括:
若所述第一条件参数满足第一筛选条件,则根据所述辅助编码块的参考运动信息对应的参考图像,确定第三条件参数,所述第三条件参数包括:第三类辅助编码块的数量和/或面积,所述第三类辅助编码块是指:所述目标编码块的各辅助编码块中对所述第一参考图像列表中的目标参考图像进行参考图像搜索的编码块;
若所述第三条件参数满足第三筛选条件,则将所述第一参考图像列表中的目标参考图像作为所述目标编码块的目标参考图像搜索范围。
6.如权利要求3所述的方法,其特征在于,所述若所述第二条件参数满足第二筛选条件,则将所述第二参考图像列表作为所述目标编码块的目标参考图像搜索范围,包括:
若所述第二条件参数满足第二筛选条件,则根据所述辅助编码块的参考运动信息对应的参考图像,确定第四条件参数,所述第四条件参数包括:第四类辅助编码块的数量和/或面积,所述第四类辅助编码块是指:所述目标编码块的各辅助编码块中对所述第二参考图像列表中的目标参考图像进行参考图像搜索的编码块;
若所述第四条件参数满足第四筛选条件,则将所述第二参考图像列表中的目标参考图像作为所述目标编码块的目标参考图像搜索范围。
7.如权利要求1所述的方法,其特征在于,所述根据所述参考运动信息所指示的参考图像搜索范围信息,从M个参考图像列表中为所述目标编码块确定目标参考图像搜索范围,包括:
根据所述参考运动信息所指示的图像搜索范围信息,确定第五条件参数,所述第五条件参数包括:第五类辅助编码块的数量和/或面积,所述第五类辅助编码块是指:所述目标编码块的各辅助编码块中对M个参考图像列表中的参考搜索图像进行参考图像搜索的编码块;
若所述第五条件参数满足第五筛选条件,则将所述参考搜索图像作为所述目标编码块的目标参考图像搜索范围。
8.如权利要求1所述的方法,其特征在于,所述获取所述目标编码块的辅助编码块的参考运动信息之前,所述方法还包括:
获取所述目标编码块的特征信息,所述特征信息包括:待编码视频帧所处的时间层,或者所述特征信息包括:待编码视频帧所处的时间层和所述目标编码块的尺寸;
若所述目标编码块的特征信息满足触发条件,则触发执行获取所述目标编码块的辅助编码块的参考运动信息;
若所述目标编码块的特征信息不满足触发条件,则至少将M个参考图像列表中的第一参考图像列表和第二参考图像列表作为所述目标编码块的目标参考图像搜索范围。
9.如权利要求1-8任一项所述的方法,其特征在于,所述根据所述目标参考图像搜索范围对所述目标编码块进行运动估计,包括:
确定所述目标参考图像搜索范围对应的目标参考图像列表和所述目标参考图像列表中对应的目标参考图像;
根据所述目标参考图像列表及其对应的目标参考图像,通过第一参考图像搜索规则进行运动估计,得到所述目标编码块的第一运动估计参数;
根据所述目标参考图像列表及其对应的目标参考图像,通过第二参考图像搜索规则进行运动估计,得到所述目标编码块的第二运动估计参数;第二参考图像搜索规则与所述第一参考图像搜索规则不相同;
从所述第一运动估计参数和所述第二运动估计参数中为所述目标编码块选择目标运动估计参数。
10.如权利要求9所述的方法,其特征在于,所述从所述第一运动估计参数和所述第二运动估计参数中为所述目标编码块选择目标运动估计参数,包括:
获取所述第一运动估计参数对应的第一率失真以及所述第二运动估计参数对应的第二率失真;
若所述第一率失真大于所述第二率失真,则将所述第二率失真对应的第二运动估计参数确定为所述目标编码块的目标运动估计参数;
若所述第二率失真大于所述第一率失真,则将所述第一率失真对应的第一运动估计参数确定为所述目标编码块的目标运动估计参数。
11.一种编码过程中的运动估计装置,其特征在于,包括:
获取单元,用于获取待编码视频帧,并在所述待编码视频帧中确定待编码的目标编码块;
所述获取单元,还用于获取所述目标编码块的辅助编码块的参考运动信息,所述辅助编码块的参考运动信息包括:与所述目标编码块相邻的N个相邻编码块的运动信息和所述参考编码块列表包括的运动信息,N为大于或等于1的整数;
处理单元,用于根据所述参考运动信息所指示的图像搜索范围信息,从M个参考图像列表中为所述目标编码块确定目标参考图像搜索范围,M为大于1的整数;
所述处理单元,用于根据所述目标参考图像搜索范围对所述目标编码块进行运动估计。
12.一种计算机设备,其特征在于,包括:
存储器,用于存储计算机程序;
处理器,运行所述存储器中存储的计算机程序,实现如权利要求1-10任一项所述的编码过程中的运动估计方法。
13.一种计算机存储介质,其特征在于,所述计算机存储介质存储有计算机程序,所述计算机程序被处理器执行时用于实现如权利要求1-10任一项所述的编码过程中的运动估计方法。
CN202210105603.2A 2022-01-28 2022-01-28 一种编码过程中的运动估计方法及相关产品 Pending CN116567267A (zh)

Priority Applications (4)

Application Number Priority Date Filing Date Title
CN202210105603.2A CN116567267A (zh) 2022-01-28 2022-01-28 一种编码过程中的运动估计方法及相关产品
PCT/CN2022/135634 WO2023142663A1 (zh) 2022-01-28 2022-11-30 编码过程中的运动估计方法、装置、设备、存储介质及程序产品
EP22923454.7A EP4391541A1 (en) 2022-01-28 2022-11-30 Motion estimation method and apparatus in encoding process, device, storage medium, and program product
US18/502,235 US20240073424A1 (en) 2022-01-28 2023-11-06 Motion estimation method and apparatus in coding process, device, storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210105603.2A CN116567267A (zh) 2022-01-28 2022-01-28 一种编码过程中的运动估计方法及相关产品

Publications (1)

Publication Number Publication Date
CN116567267A true CN116567267A (zh) 2023-08-08

Family

ID=87470327

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210105603.2A Pending CN116567267A (zh) 2022-01-28 2022-01-28 一种编码过程中的运动估计方法及相关产品

Country Status (4)

Country Link
US (1) US20240073424A1 (zh)
EP (1) EP4391541A1 (zh)
CN (1) CN116567267A (zh)
WO (1) WO2023142663A1 (zh)

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20110050283A (ko) * 2009-11-06 2011-05-13 삼성전자주식회사 다중 참조 영상을 이용한 고속 움직임 추정 방법
US8964845B2 (en) * 2011-12-28 2015-02-24 Microsoft Corporation Merge mode for motion information prediction
CN106034236B (zh) * 2015-03-19 2019-07-19 阿里巴巴集团控股有限公司 一种hevc编码最佳参考帧的选择方法、装置及编码器
CN110839155B (zh) * 2018-08-17 2021-12-03 北京金山云网络技术有限公司 运动估计的方法、装置、电子设备及计算机可读存储介质

Also Published As

Publication number Publication date
WO2023142663A1 (zh) 2023-08-03
US20240073424A1 (en) 2024-02-29
EP4391541A1 (en) 2024-06-26

Similar Documents

Publication Publication Date Title
CN108882020B (zh) 一种视频信息处理方法、装置及***
JP7351463B2 (ja) 画像符号化方法及び装置、画像復号方法及び装置並びにプログラム
CN109688407B (zh) 编码单元的参考块选择方法、装置、电子设备及存储介质
US10681367B2 (en) Intra-prediction video coding method and device
CN110839155A (zh) 运动估计的方法、装置、电子设备及计算机可读存储介质
CN110248189B (zh) 一种视频质量预测方法、装置、介质和电子设备
CN113965751B (zh) 屏幕内容编码方法、装置、设备及存储介质
WO2021232979A1 (zh) 视频编解码中的位移矢量预测方法、装置及设备
CN107105255B (zh) 视频文件中添加标签的方法和装置
KR20190013908A (ko) 인터 프레임 예측 코딩 방법 및 장치
US20240089494A1 (en) Video encoding and decoding method and apparatus, storage medium, electronic device, and computer program product
CN112203091B (zh) 基于二次多项式的运动矢量预测方法、***及计算机介质
CN106658024B (zh) 一种快速的视频编码方法
CN116567267A (zh) 一种编码过程中的运动估计方法及相关产品
CN116489385A (zh) 视频编码方法、解码方法、装置、电子设备及存储介质
CN112218075B (zh) 候选列表的填充方法、电子设备、计算机可读存储介质
Si et al. Fast Adaptive CU Partition Decision Algorithm for VVC Intra Coding
CN112437308A (zh) 一种WebP编码方法及装置
CN113542737A (zh) 编码模式确定方法、装置、电子设备及存储介质
CN115190309B (zh) 视频帧处理方法、训练方法、装置、设备及存储介质
JP2003503913A (ja) 動画評価を行う方法及びシステム
EP3989566A1 (en) Motion information list construction method in video encoding and decoding, device, and apparatus
CN111050166B (zh) 预测模式确定方法、设备及计算机可读存储介质
CN114422803B (zh) 一种视频处理方法、装置及设备
CN115474060B (zh) 一种hevc并行加速编码方法、***、设备及存储介质

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
REG Reference to a national code

Ref country code: HK

Ref legal event code: DE

Ref document number: 40091483

Country of ref document: HK