CN117768647A - 图像处理方法、装置、设备及可读存储介质 - Google Patents
图像处理方法、装置、设备及可读存储介质 Download PDFInfo
- Publication number
- CN117768647A CN117768647A CN202311744676.7A CN202311744676A CN117768647A CN 117768647 A CN117768647 A CN 117768647A CN 202311744676 A CN202311744676 A CN 202311744676A CN 117768647 A CN117768647 A CN 117768647A
- Authority
- CN
- China
- Prior art keywords
- image block
- image
- motion vector
- extended
- block
- 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
Links
- 238000003672 processing method Methods 0.000 title claims abstract description 49
- 239000013598 vector Substances 0.000 claims abstract description 302
- 238000000034 method Methods 0.000 claims abstract description 171
- 238000012795 verification Methods 0.000 claims abstract description 157
- 238000012545 processing Methods 0.000 claims abstract description 111
- 238000004364 calculation method Methods 0.000 claims description 70
- 230000015654 memory Effects 0.000 claims description 19
- 238000004891 communication Methods 0.000 claims description 10
- 238000006243 chemical reaction Methods 0.000 claims description 5
- 238000004422 calculation algorithm Methods 0.000 abstract description 10
- 230000008569 process Effects 0.000 description 15
- 238000004590 computer program Methods 0.000 description 11
- 238000010586 diagram Methods 0.000 description 10
- 230000000694 effects Effects 0.000 description 10
- 238000005516 engineering process Methods 0.000 description 7
- 230000000295 complement effect Effects 0.000 description 5
- 230000006870 function Effects 0.000 description 5
- 238000004458 analytical method Methods 0.000 description 4
- 238000001914 filtration Methods 0.000 description 4
- 238000005259 measurement Methods 0.000 description 4
- 230000009471 action Effects 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 238000011524 similarity measure Methods 0.000 description 2
- 238000013473 artificial intelligence Methods 0.000 description 1
- 230000006399 behavior Effects 0.000 description 1
- 230000006835 compression Effects 0.000 description 1
- 238000007906 compression Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000006073 displacement reaction Methods 0.000 description 1
- 238000011156 evaluation Methods 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 238000005070 sampling Methods 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 230000000153 supplemental effect Effects 0.000 description 1
- 230000002123 temporal effect Effects 0.000 description 1
- 230000009466 transformation Effects 0.000 description 1
Landscapes
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
本申请实施例提供了图像处理方法、装置、设备及可读存储介质,其中,该方法包括:从视频图像帧中确定当前图像块的扩展图像块,扩展图像块包含当前图像块;利用扩展图像块和视频图像帧的参考图像帧对当前图像块的初始运动矢量进行验证处理,得到验证结果;其中,当前图像块的初始运动矢量是利用第一图像搜索方法对参考图像帧进行处理得到的;利用验证结果根据初始运动矢量或者第二图像搜索方法确定当前图像块的目标运动矢量。通过本申请实施例提供的图像处理方法,可以根据初始运动矢量的验证结果确定目标运动矢量,从而有效降低算法复杂度,提高视频编码效率。
Description
技术领域
本申请涉及计算机技术领域,尤其涉及图像处理方法、装置、设备及可读存储介质。
背景技术
随着计算机技术的发展,在网络中传输的视频越来越多。在视频传输过程中,为了节约网络资源,通常会对视频进行编码处理。在视频编码过程中,为了减少数据量,通常会采用运动估计技术;运动估计技术是指对两帧图像之间的运动位移进行估计的技术。运动估计技术可以有效去除视频帧间的冗余度,使得视频传输的数据量大为减少。
常用的运动估计方法为先采用整像素精度搜索方法对参考图像帧进行搜索,再利用分像素精度搜索方法对参考图像帧进行搜索,从而得到图像块的运动矢量。然而,这种运动估计方法的算法复杂度高,数据计算量大,容易导致视频编码效率低。
发明内容
本申请实施例提供了图像处理方法、装置、设备及可读存储介质,可以根据初始运动矢量的验证结果确定目标运动矢量,从而有效降低算法复杂度,提高视频编码效率。
一方面,本申请实施例提供了一种图像处理方法,所述方法包括:
从视频图像帧中确定当前图像块的扩展图像块,所述扩展图像块包含所述当前图像块;
利用所述扩展图像块和所述视频图像帧的参考图像帧对所述当前图像块的初始运动矢量进行验证处理,得到验证结果;其中,所述当前图像块的初始运动矢量是利用第一图像搜索方法对所述参考图像帧进行处理得到的;
利用所述验证结果根据所述初始运动矢量或者第二图像搜索方法确定所述当前图像块的目标运动矢量。
一方面,本申请实施例提供了一种图像处理装置,所述装置包括:
扩展单元,用于从视频图像帧中确定当前图像块的扩展图像块,所述扩展图像块包含所述当前图像块;
处理单元,用于利用所述扩展图像块和所述视频图像帧的参考图像帧对所述当前图像块的初始运动矢量进行验证处理,得到验证结果;其中,所述当前图像块的初始运动矢量是利用第一图像搜索方法对所述参考图像帧进行处理得到的;
确定单元,用于利用所述验证结果根据所述初始运动矢量或者第二图像搜索方法确定所述当前图像块的目标运动矢量。
一方面,本申请实施例提供了一种计算机设备,包括:处理器、通信接口和存储器,所述处理器、所述通信接口和所述存储器相互连接,其中,所述存储器存储有可执行程序代码,所述处理器用于调用所述可执行程序代码,实现本申请实施例提供的图像处理方法。
相应地,本申请实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质中存储有指令,当其在计算机上运行时,使得计算机实现本申请实施例提供的图像处理方法。
相应地,本申请实施例还提供了一种计算机程序产品,所述计算机程序产品包括计算机程序或计算机指令,所述计算机程序或计算机指令存储在计算机可读存储介质中。计算机设备的处理器从所述计算机可读存储介质读取所述计算机程序或计算机指令,处理器执行所述计算机程序或计算机指令,使得所述计算机设备实现本申请实施例提供的图像处理方法。
本申请提供的图像处理方法可以从视频图像帧中确定当前图像块的扩展图像块,并利用扩展图像块和视频图像帧的参考图像帧对当前图像块的初始运动矢量进行验证处理;可以根据验证结果根据初始运动矢量或者第二图像搜索方法确定当前图像块的目标运动矢量。通过本申请实施例提供的图像处理方法,可以确定包含当前图像块的扩展图像块,便于利用扩展图像块对初始运动矢量进行验证处理;可以利用扩展图像块和参考图像帧对当前图像块的初始运动矢量进行验证处理,从而确定初始运动矢量是否满足要求;可以根据验证结果根据初始运动矢量或者第二图像搜索方法确定目标运动矢量,当根据初始运动矢量确定目标运动矢量时,不需要利用第二图像搜索方法进行搜索处理,从而可以有效降低算法的复杂度、减少计算量,同时,也可以有效缩短确定目标运动矢量的时间,从而可以提高视频编码的效率。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本申请实施例提供的一种图像处理系统的系统架构示意图;
图2是本申请实施例提供的一种图像处理方法的流程示意图;
图3是本申请实施例提供的另一种图像处理方法的流程示意图;
图4是本申请实施例提供的一种扩展图像块的示意图;
图5是本申请实施例提供的一种确定匹配图像块的实现方式;
图6是本申请实施例提供的一种图像处理方法的示意图;
图7是本申请实施例提供的一种图像处理装置的结构框图;
图8是本申请实施例提供的一种计算机设备的结构框图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
需要说明的是,本申请实施例中所涉及到的“第一”、“第二”等描述仅用于描述目的,而不能理解为指示或者暗示其相对重要性或者隐含指明所指示的技术特征的数量。因此,限定有“第一”、“第二”的技术特征可以明示或者隐含的包括至少一个该特征。
在进行视频编码时,通常会利用运动估计技术来去除视频帧间的冗余度,使得视频传输的数据量大为减少。常用的运动估计方法为先采用整像素精度搜索方法对参考图像帧进行搜索,再利用分像素精度搜索方法对参考图像帧进行搜索,从而得到当前图像块的运动矢量。然而,这种确定运动矢量的方法的算法复杂度高,数据计算量大,而且容易导致视频编码效率低。
基于此,本申请实施例提供了一种图像处理方法,可以从视频图像帧中确定当前图像块的扩展图像块,扩展图像块包含当前图像块;利用扩展图像块和视频图像帧的参考图像帧对当前图像块的初始运动矢量进行验证处理,得到验证结果;其中,当前图像块的初始运动矢量是利用第一图像搜索方法对参考图像帧进行处理得到的;利用验证结果根据初始运动矢量或者第二图像搜索方法确定当前图像块的目标运动矢量。通过本申请实施例提供的方法,可以利用验证结果根据初始运动矢量或者第二图像搜索方法确定目标运动矢量,可以有效降低算法复杂度,减少数据计算量,提高视频编码效率。
本申请实施例提供的图像处理方法还可以应用于云计算领域。云计算(cloudcomputing)是一种计算模式,它将计算任务分布在大量计算机构成的资源池上,使各种应用系统能够根据需要获取计算力、存储空间和信息服务。云计算资源池中主要包括:计算设备(为虚拟化机器,包含操作系统)、存储设备、网络设备。本申请实施例提供的图像处理方法可以由云计算设备实现:进行视频编码时,可以将待编码视频发送给云计算设备,针对待编码视频中的视频图像帧,云计算设备可以从视频图像帧中确定当前图像块的扩展图像块,并利用扩展图像块和参考图像帧对当前图像块的初始运动矢量进行验证处理,得到验证结果,利用验证结果根据初始运动矢量或者第二图像搜索方法确定当前图像块的目标运动矢量,从而可以有效降低算法复杂度,提高视频编码效率。
下面将结合附图,对本申请实施例提供的图像处理系统的架构进行介绍。
请参见图1,该图为本申请实施例提供的一种图像处理系统的系统架构示意图,该图像处理系统包括终端设备101、图像处理服务器102和数据库103,图像处理服务器102可以与终端设备101、数据库103进行数据交互。其中:
终端设备101可以生成并发送视频获取请求,也可以接收编码后的视频数据,并对编码后的视频数据进行解码处理,得到待编码视频,并显示待编码视频。终端设备101可以为具有视频解码功能和通信功能的手持设备(例如智能手机、平板电脑)、计算设备(例如个人电脑(Personal Computer,PC)、车载终端、智能语音交互设备、可穿戴设备或者其他智能装置等,但并不局限于此。
图像处理服务器102可以接收终端设备101发送的视频获取请求,根据该视频获取请求确定待编码视频,并采用本申请提供的图像处理方法确定各个视频图像帧中图像块的目标运动矢量,从而得到待编码视频对应的编码后的视频数据;可以将编码后的视频数据发送给终端设备101;图像处理服务器102还可以从数据库103中获取图像搜索方法的搜索方法相关数据。图像处理服务器102可以为独立的物理服务器,也可以是多个物理服务器构成的服务器集群或者分布式系统,还可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、内容分发网络(Content DeliveryNetwork,CDN)、以及大数据和人工智能平台等基础云计算服务的云服务器。
数据库103用于存储第一图像搜索方法和第二图像搜索方法的搜索方法相关数据,例如:第一图像搜索方法的搜索参数、相似度度量数据等。数据库103可以为图像处理服务器102中的本地数据库,也可以是与图像处理服务器102相关联的云数据库(即部署在云端的数据库),具体可以基于私有云、公有云、混合云、边缘云等中的任一种部署,从而使得云数据库侧重的功能不同。例如部署在私有云中的数据库,基础云硬件是用户个人的设备,更侧重服务于小部分用户,而部署在公有云中的数据库,是基于第三方提供的云平台部署的,可以让数据库中存储的数据实现数据共享,任何用户的数据都可以存储至该数据库中,任何用户也可以使用数据库中的数据。
下面将详细阐述如图1所示的图像处理系统的工作原理:
终端设备101可以发送视频获取请求到图像处理服务器102,图像处理服务器102可以根据接收到的视频获取请求确定待编码视频。图像处理服务器102可以从数据库103中获取第一图像搜索方法和第二图像搜索方法的搜索方法相关数据。针对该待编码视频中的任一视频图像帧,图像处理服务器102可以根据第一图像搜索方法的相关数据,采用第一图像搜索方法对该视频图像帧的参考图像帧进行处理,得到当前图像块的初始运动矢量;图像处理服务器102可以从视频图像帧中确定当前图像块的扩展图像块,该扩展图像块包含当前图像块;图像处理服务器102可以利用扩展图像块和参考图像帧对当前图像块的初始运动矢量进行验证处理,得到验证结果;若验证结果指示验证通过,则可以直接根据初始运动矢量确定目标运动矢量,若验证结果指示验证不通过,则可以根据第二图像搜索方法确定目标运动矢量,从而实现待编码视频的视频编码处理,得到编码后的视频数据。图像处理服务器102将编码后的视频数据发送给终端设备101,终端设备101可以对编码后的视频数据进行视频解码处理,得到待编码视频。通过本申请实施例提供的图像处理方法,可以对初始运动矢量进行验证处理,并根据验证结果确定目标运动矢量,有效降低了算法的计算复杂度,减少了数据计算量,提高了视频编码的效率。
可以理解的是,本申请实施例描述的图像处理系统的架构示意图是为了更加清楚的说明本申请实施例的图像处理方法,并不构成对于本申请实施例提供的图像处理方法的限定。例如,本申请实施例所提供的图像处理方法除了可以由图像处理服务器102执行,还可以由不同于图像处理服务器102且能够与终端设备101和数据库103通信的其他设备执行。本领域普通技术人员可知,图1中的终端设备101、图像处理服务器102和数据库103的数目仅仅是示意性的。根据业务实现需要,可以配置具有任意数目的设备。并且,随着系统架构的演变和新业务场景的出现,本申请实施例提供的图像处理方法对于类似的技术问题,同样适用。
需要说明的是,本申请中相关数据(例如:视频图像帧、参考图像帧)收集处理在实例应用时应该严格根据相关法律法规的要求,获取个人信息主体的知情同意或单独同意,并在法律法规及个人信息主体的授权范围内,开展后续数据使用及处理行为。
请参见图2,图2为本申请实施例提供的一种图像处理方法的流程示意图。该图像处理方法可以由上述图像处理服务器102实现,也可以由其他设备实现。本申请实施例中提供的图像处理方法的流程包括但不限于:
S201、从视频图像帧中确定当前图像块的扩展图像块,所述扩展图像块包含所述当前图像块。
本申请实施例中,视频图像帧包含于待编码视频,待编码视频中包含多个视频图像帧。在针对待编码视频进行视频编码处理时,为了减少数据量,可以使用运动估计技术,计算每一个视频图像帧对应的运动矢量。在计算视频图像帧对应的运动矢量时,可以从视频图像帧中确定当前图像块,当前图像块中可以包括一个或者多个像素点。确定当前图像块后,可以基于该当前图像块确定扩展图像块,该扩展图像块包含当前图像块,即扩展图像块包含当前图像块以及当前图像块周围的一部分像素点。通过本申请实施例提供的方法,可以确定扩展图像块,以便于后续根据扩展图像块对当前图像块的初始运动矢量进行验证处理,得到准确的验证结果。
S202、利用所述扩展图像块和所述视频图像帧的参考图像帧对所述当前图像块的初始运动矢量进行验证处理,得到验证结果;其中,所述当前图像块的初始运动矢量是利用第一图像搜索方法对所述参考图像帧进行处理得到的。
本申请实施例中,可以从待编码视频中确定视频图像帧的参考图像帧,参考图像帧用于确定视频图像帧的运动矢量。确定出视频图像帧中的当前图像块之后,可以利用第一图像搜索方法对参考图像帧进行处理,得到当前图像块的初始运动矢量。在视频图像帧中,当前图像块与其周围的像素点的运动趋势通常相同,而扩展图像块包含当前图像块和当前图像块周围的一部分像素点,因此,可以利用扩展图像块和参考图像帧对当前图像块的初始运动矢量进行验证处理,得到验证结果,该验证结果可以在一定程度上指示初始运动矢量是否足够准确。视频图像帧和参考图像帧均包含于待编码视频,且视频图像帧与参考图像帧相关联,例如:参考图像帧可以为待编码视频中视频图像帧的前一图像帧。通过本申请实施例提供的方法,可以实现对初始运动矢量的验证处理,得到验证结果,保证了验证结果的准确度,以便于根据验证结果确定目标运动矢量。
在一实施例中,在从视频图像帧中确定当前图像块之后,本申请提供的图像处理方法还可以:按照第一图像搜索方法从参考图像帧中确定图像搜索范围,并对图像搜索范围进行搜索处理,得到多个待选图像块,待选图像块的图像块尺寸与当前图像块的图像块尺寸相匹配;确定当前图像块与各个待选图像块之间的图像差异数据,图像差异数据包括相对差值数据、转换差值数据、差值平方和数据中的一种或者多种;利用多个待选图像块的图像差异数据从多个待选图像块中,确定参考图像块,并对参考图像块和当前图像块进行矢量计算,得到当前图像块的初始运动矢量。从视频图像帧中确定当前图像块之后,可以采用第一图像搜索方法确定当前图像块的初始运动矢量:可以按照第一图像搜索方法从参考图像帧中确定图像搜索范围,该图像搜索范围大于当前图像块对应的图像范围;可以对图像搜索访问进行搜索处理,得到多个待选图像块,各个待选图像块的图像块尺寸和当前图像块的图像块尺寸相同;可以比较各个待选图像块与当前图像块的像素值,确定当前图像块与各个待选图像块之间的图像差异数据,该图像差异数据可以包括相对差值数据、转换差值数据、差值平方和数据中的一种或者多种,相对差值数据、转换差值数据、差值平方和数据均为相似度度量数据。
相对差值数据即绝对差之和(Sum of Absolute Difference,SAD),可以根据待选像素块中的各个像素点的像素值,与当前像素块中对应像素点的像素值的绝对差确定,绝对差之和可以在一定程度上反映待选图像块和当前图像块之间的残差时域差异,且计算复杂度较低。转换差值数据即绝对变换差之和(Sum of Absolute Transformed Difference,SATD),也即对残差进行哈德曼变换后的系数绝对和,在大多数情况下,SATD比SAD的评估效果更好,但是SATD的计算复杂度大于SAD的计算复杂度。差值平方和数据即平方差之和(Sumof Squared Difference,SSD),可以根据待选图像块中各个像素点的像素值,与当前像素块中对应像素点的像素值的平方差确定,平方差之和可以较好地反映两个图像块之间的差异。
可以利用多个待选图像块的图像差异数据,从多个待选图像块中确定参考图像块,参考图像块为多个待选图像块中与当前图像块差异最小的图像块。可以对参考图像块和当前图像块进行矢量计算(例如:利用参考图像块的各个像素点的位置数据、当前图像块中对应像素点的位置数据进行矢量计算),得到当前图像块的初始运动矢量。通过本申请实施例提供的方法,可以采用多个不同的差异数据来确定参考图像块,保证了参考图像块与当前图像块的相似度,可以在一定程度上提高初始运动矢量的准确度,从而有利于减少计算复杂度,提高视频编码效率。
需要说明的是,当前图像块与各个所述待选图像块之间的图像差异数据还可以包括其他类型的相似度度量数据,例如:平均绝对差值(Mean Absolute Difference,MAD)、平均方差值(Mean Squared Difference,MSD)等等。视频编码的应用需求不同,图像差异数据中包括的相似度度量数据也可以不同。
S203、利用所述验证结果根据所述初始运动矢量或者第二图像搜索方法确定所述当前图像块的目标运动矢量。
本申请实施例中,可以利用验证结果根据初始运动矢量或者第二图像搜索方法确定当前图像块的目标运动矢量,该目标运动矢量可以用于实现待编码视频的视频编码处理。当根据初始运动矢量确定当前图像块的目标运动矢量时,无需利用第二图像搜索方法对参考图像帧进行处理,可以有效减少计算量,提高处理效率,当根据第二图像搜索方法确定当前图像块的目标运动矢量时,可以有效保证目标运动矢量的准确性。对于待编码视频中的多个视频图像帧,均可以采用本申请提供的方法确定目标运动矢量,从而可以在整体上减少计算量,降低计算复杂度,提高视频编码效率,从而可以节约网络资源。
在一实施例中,利用验证结果根据初始运动矢量或者第二图像搜索方法确定当前图像块的目标运动矢量的实现方式,可以为:若验证结果指示验证通过,将初始运动矢量确定为当前图像块的目标运动矢量;若验证结果指示验证不通过,则利用第二图像搜索方法对参考图像帧进行处理,得到当前图像块的目标运动矢量。若验证结果指示验证通过,则说明该初始运动矢量满足要求,则无需再进行图像搜索处理,可以直接将初始运动矢量确定为当前图像块的目标运动矢量;若验证结果指示验证不通过,则说明初始运动矢量不满足要求,则需要利用第二图像搜索方法对参考图像帧进行更加精细的处理,得到当前图像块的目标运动矢量。通过本申请实施例提供的方法,可以有效降低计算复杂度,减少数据计算量,提高视频编码的处理效率。
在一实施例中,第一图像搜索方法可以为整像素搜索方法,第二图像搜索方法可以为分像素搜索方法。现有的确定运动矢量方法为:针对视频图像帧中的当前图像块,采用整像素搜索方法确定当前图像块的初始运动矢量,再利用分像素搜索方法确定当前图像块的目标运动矢量,然而分像素搜索方法的算法复杂度很高,数据计算量较大,且在一些情况下,分像素搜索方法可能因为过于精细的搜索而导致误差。而本申请提供的方法中,可以采用整像素搜索方法确定当前图像块的初始运动矢量,并确定当前图像块的扩展图像块,利用扩展图像块和参考图像帧对初始运动矢量进行验证处理,得到验证结果;如果验证结果指示验证通过,则直接将初始运动矢量确定为目标运动矢量,相当于提前终止了目标运动矢量的确定流程,不需要再进行分像素搜索方法,从而有效减少了数据计算量,降低了计算复杂度,也有效避免了因过于精细的搜索而导致的误差,保证了运动矢量的准确度,提升了视频编码的效果。
需要说明的是,本申请实施例提供的图像处理方法可以应用于基于不同编码标准(例如:H.264、H.265等编码标准)的编码器中,使得编码器在对视频进行编码时,可以采用本申请实施例提供的方法快速、准确地确定最佳运动矢量,从而有效提高视频编码的效率。例如:在编码器的模式决策过程中,需要确定图像帧中各个图像块的最佳运动矢量,将本申请实施例提供的图像处理方法应用于编码器后,编码器可以先采用整像素搜索方法确定图像块的初始运动矢量,再确定该图像块对应的扩展图像块,并利用扩展图像块和参考图像帧对初始运动矢量进行验证处理,若验证通过,则将初始运动矢量确定为最佳运动矢量,否则,利用分像素搜索方法确定该图像块的最佳运动矢量;这种方法有效地降低了计算复杂度,减少了数据计算量。
除了应用于编码器的模式决策中的运动估计过程,本申请实施例提供的图像处理方法还可以应用于预分析、运动补偿时域滤波等过程中的运动估计过程。预分析技术可以消除视频中紧邻像素在空间和时间上的冗余,而本申请实施例提供的图像处理方法可以应用于预分析计算的运动估计过程,通过扩展图像块确定初始运动矢量的验证结果,并根据验证结果确定最佳运动矢量和最佳匹配图像块,有利于提高预分析的处理效率。
运动补偿时域滤波,也称基于运动补偿的时域滤波技术,该技术可以消除视频中的噪声,提升观看视频时的主观感受,也提升视频的压缩效果。基于运动补偿的时域滤波技术通常将当前视频帧与时间上相邻的视频帧(即参考视频帧)进行加权平均,从而平滑噪声,达到视频去噪的效果。而在进行加权平均时需要借助运动估计和运动补偿技术,将最佳匹配图像块与当前图像块进行加权平均,从而在空域上起到降噪的效果,提升视频编码效率。在确定最佳匹配图像块时,可以采用本申请实施例提供的图像处理方法,利用当前图像块的扩展图像块对初始运动矢量进行验证处理,得到验证结果,并根据验证结果确定目标运动矢量,该目标运动矢量对应的匹配图像块为最佳匹配图像块。通过本申请实施例提供的方法,可以有效减少数据计算量,降低计算复杂度,提高视频去噪处理的处理效率。对于其他需要确定最佳运动矢量或者最佳匹配图像块的应用场景,本申请实施例提供的图像处理方法同样适用。
通过本申请实施例提供的图像处理方法,可以合理确定当前图像块的扩展图像块,便于根据扩展图像块确定准确的验证结果;可以利用扩展图像块和参考图像帧对初始运动矢量进行验证处理,得到验证结果,从而确定初始运动矢量是否满足要求;当根据验证结果利用初始运动矢量确定目标运动矢量时,可以实现目标运动矢量的确定流程的提前终止,从而有效减少了数据计算量,降低了计算复杂度,也有效避免了因过于精细的搜索而导致的误差,保证了运动矢量的准确度,提升了视频编码的效果,提高视频编码的处理效率。
请参见图3,图3为本申请实施例提供的另一种图像处理方法的流程示意图。该图像处理方法可以由上述图像处理服务器102实现,也可以由其他设备实现。本申请实施例中提供的图像处理方法的流程包括但不限于:
S301、利用第一图像搜索方法对视频图像帧的参考图像帧进行处理,得到当前图像块的初始运动矢量。
本申请实施例中,视频图像帧和参考图像帧均包含于待编码视频,当前图像块包含于视频图像帧,当前图像块中可以包括一个或者多个像素点。可以利用第一图像搜索方法对参考图像帧进行处理,得到当前图像块的初始运动矢量。
在一实施例中,确定当前图像块的初始运动矢量的实现方式,可以为:按照第一图像搜索方法从参考图像帧中确定图像搜索范围,并对图像搜索范围进行搜索处理,得到多个待选图像块,待选图像块的图像块尺寸与当前图像块的图像块尺寸相匹配;确定当前图像块与各个待选图像块之间的图像差异数据,图像差异数据包括相对差值数据、转换差值数据、差值平方和数据中的一种或者多种;利用多个待选图像块的图像差异数据从多个待选图像块中,确定参考图像块,并对参考图像块和当前图像块进行矢量计算,得到当前图像块的初始运动矢量。从视频图像帧中确定当前图像块之后,可以采用第一图像搜索方法确定当前图像块的初始运动矢量:可以按照第一图像搜索方法从参考图像帧中确定图像搜索范围,该图像搜索范围大于当前图像块对应的图像范围;可以对图像搜索访问进行搜索处理,得到多个待选图像块,各个待选图像块的图像块尺寸和当前图像块的图像块尺寸相同;可以比较各个待选图像块与当前图像块的像素值,确定当前图像块与各个待选图像块之间的图像差异数据,该图像差异数据可以包括相对差值数据、转换差值数据、差值平方和数据中的一种或者多种。
可以利用多个待选图像块的图像差异数据,从多个待选图像块中确定参考图像块,参考图像块为多个待选图像块中与当前图像块差异最小的图像块。可以对参考图像块和当前图像块进行矢量计算(例如:利用参考图像块的各个像素点的位置数据、当前图像块中对应像素点的位置数据进行矢量计算),得到当前图像块的初始运动矢量。通过本申请实施例提供的方法,可以采用多个不同的差异数据来确定参考图像块,保证了参考图像块与当前图像块的相似度,可以在一定程度上提高初始运动矢量的准确度,从而有利于减少计算复杂度,提高视频编码效率。
S302、从所述视频图像帧中确定所述当前图像块的扩展图像块,所述扩展图像块包含所述当前图像块。
本申请实施例中,可以基于该当前图像块确定扩展图像块,该扩展图像块包含当前图像块,即扩展图像块包含当前图像块以及当前图像块周围的一部分像素点。通过本申请实施例提供的方法,可以确定扩展图像块,以便于后续根据扩展图像块对当前图像块的初始运动矢量进行验证处理,得到准确的验证结果。
在一实施例中,从视频图像帧中确定当前图像块的扩展图像块的实现方式,可以为:确定当前图像块的扩展参数;根据扩展参数在视频图像帧的已编码图像区域对当前图像块的初始图像范围数据进行扩展处理,得到扩展图像范围数据;利用扩展图像范围数据从视频图像帧中确定扩展图像块。可以确定当前图像块的扩展参数(可以用K来表示),扩展参数可以指示扩展的像素点的数量。视频图像帧的已编码图像区域中的像素点的运动矢量是已知的,因此可以向已编码图像区域进行扩展,即可以根据扩展参数在视频图像帧的已编码图像区域对当前图像块的初始图像范围数据进行扩展处理,得到扩展图像范围数据,并利用扩展图像范围数据从视频图像帧中确定扩展图像块。通过本申请实施例提供的方法,可以合理地确定扩展图像块,便于后续利用扩展图像块确定初始运动矢量的验证结果。
请参见图4,该图是本申请实施例提供的一种扩展图像块的示意图。图4的该视频图像帧中的当前图像块包括4个像素点(图4的视频图像帧中实线所围成的图像块为当前图像块),且视频图像帧中实心点对应的区域为该视频图像帧的已编码图像区域,空心点对应的区域为该视频图像帧的未编码图像区域。确定当前图像块的扩展参数K为2,则可以根据扩展参数在视频图像帧的已编码区域对当前图像块的初始图像范围数据进行扩展处理,得到扩展图像范围数据,并利用扩展图像范围数据从视频图像帧中确定扩展图像块。如图4所示,基于当前图像块向当前图像块的左侧和上侧分别扩展2个像素点,得到扩展图像块,即图4中虚线所围成的图像块,该扩展图像块包括16个像素点,且该扩展图像块包含当前图像块。通过本申请实施例提供的方法,可以准确确定扩展图像块,便于后续利用扩展图像块确定初始运动矢量的验证结果。
需要说明的是,若当前图像块为视频图像帧中的第一个图像块(即此时,视频图像帧中不包含已编码图像区域),则可以根据扩展参数对当前图像块的初始图像范围数据进行扩展处理,得到扩展图像范围数据;对视频图像帧进行补充处理,得到补充图像帧,补充图像帧包括视频图像帧和多个补充像素点,补充像素点的像素值可以为定值,也可以根据参考图像帧和视频图像帧确定。可以利用扩展图像范围数据从补充图像帧中确定扩展图像块。图4所示的当前图像块和扩展图像块的大小和形状仅为一种可行的实例,在实际应用过程中,当前图像块和扩展图像块的大小和形状可以根据不同的应用需求进行调整。
在一实施例中,扩展参数K可以根据当前图像块的图像块尺寸确定:扩展参数K用于指示向已编码图像区域扩展的像素点的数量,若扩展参数过大,则使得扩展图像块过大,根据扩展图像块和参考图像帧确定的验证结果的准确性较低;若扩展参数过小,则使得扩展图像块较小,不能准确地评估初始运动矢量,容易导致误差。可以根据当前图像块的图像块尺寸确定扩展参数K,例如:当前图像块的图像块尺寸为4*4(即该当前图像块包括16个像素点),则K的取值范围可以为3。通过本申请实施例提供的方法,可以合理地确定扩展参数,从而可以有效地确定扩展图像块,有利于准确地确定验证结果。
S303、利用所述扩展图像块和所述参考图像帧对所述当前图像块的初始运动矢量进行验证处理,得到验证结果。
本申请实施例中,可以对初始运动矢量进行验证,从而有利于实现处理流程的提前结束:确定目标运动矢量的方式为先采用第一图像搜索方法进行处理,再利用第二图像搜索方法进行处理,而本申请提供的方法可以利用扩展图像块和参考图像帧对当前图像块的初始运动矢量进行验证处理,得到验证结果,该验证结果可以在一定程度上指示初始运动矢量是否足够准确。可以根据验证结果决定是否进行利用第二图像搜索方法进行处理,也即利用基于验证结果的判断流程实现了目标运动矢量的提前结束。通过本申请实施例提供的方法,可以实现对初始运动矢量的验证处理,得到验证结果,保证了验证结果的准确度,以便于根据验证结果确定目标运动矢量。
在一实施例中,利用扩展图像块和视频图像帧的参考图像帧对当前图像块的初始运动矢量进行验证处理,得到验证结果的实现方式,可以为:根据扩展图像块和初始运动矢量,从参考图像帧中确定匹配图像块;利用扩展图像块和匹配图像块进行相似度计算,得到扩展图像块与匹配图像块的相似度;若相似度大于相似度阈值,则确定初始运动矢量的验证结果为验证通过;若相似度小于或者等于相似度阈值,则确定初始运动矢量的验证结果为验证不通过。在进行验证处理时,可以根据扩展图像块和初始运动矢量,从参考图像帧中确定匹配图像块,匹配图像块包含于参考图像帧,且扩展图像块的图像块尺寸与匹配图像块的图像块尺寸相同。扩展图像块包括当前图像块以及当前图像块周围的一部分像素点,当前图像块及其周围的像素点的运动趋势大致相同,即运动矢量大致相同,则可以将当前图像块的初始运动矢量确定为扩展图像块的运动矢量,根据扩展图像块的运动矢量(即初始运动矢量)可以从参考图像帧中确定匹配图像块,若匹配图像块与扩展图像块的相似度较高,则说明初始运动矢量能够较好地代表扩展图像块的运动趋势,初始运动矢量较为准确;若匹配图像块与扩展图像块的相似度较低,则说明初始运动矢量不能够较好地代表扩展图像块的运动趋势,初始运动矢量不准确。
因此,确定匹配图像块之后,可以利用扩展图像块和匹配图像块进行相似度计算,得到扩展图像块与匹配图像块的相似度。若该相似度大于相似度阈值,则说明初始运动矢量较为准确,可以确定初始运动矢量的验证结果为验证通过;若该相似度小于或者等于相似度阈值,则说明初始运动矢量不准确,可以确定初始运动矢量的验证结果为验证不通过。通过本申请实施例提供的方法,可以实现初始运动矢量的验证过程,可以准确地确定初始运动矢量的验证结果,有利于减少数据计算量,降低计算复杂度,提高视频编码效率。
在一实施例中,根据扩展图像块和初始运动矢量,从参考图像帧中确定匹配图像块的实现方式,可以为:针对扩展图像块包括的多个像素点中的任一像素点,根据初始运动矢量对任一像素点的原始位置数据进行矢量计算,得到任一像素点的匹配位置数据;根据任一像素点的匹配位置数据从参考图像帧中确定任一像素点的匹配像素点;在确定出扩展图像块包括的多个像素点的匹配像素点之后,将多个像素点的匹配像素点组成的图像块,确定为匹配图像块。扩展图像块中可以包括多个像素点,针对扩展图像块包括的多个像素点中的任一像素点,可以根据初始运动矢量对任一像素点的原始位置数据进行矢量计算,得到任一像素点的匹配位置数据,例如:扩展图像块中的某像素点的原始位置数据为(0.1,0.3),初始运动矢量的方向为由视频图像帧中的像素点到参考视频帧中的像素点,初始运动矢量的大小为(0.1,0.1),则可以根据初始运动矢量确定该像素点的匹配位置数据为(0.2,0.4)。
确定出任一像素点的匹配位置数据后,可以根据该匹配位置数据从参考图像帧中确定任一像素点的匹配像素点,该匹配像素点在参考图像帧中的位置数据为匹配位置数据,例如:某像素点的匹配位置数据为(0.2,0.4),则可以从参考图像帧中确定该像素点的匹配像素点,该匹配像素点在参考图像帧中的位置数据为(0.2,0.4)。在确定出扩展图像块包括的多个像素点的匹配像素点之后,可以将多个像素点的匹配像素点组成的像素块,确定为匹配图像块。通过本申请实施例提供的方法,可以利用初始运动矢量从参考图像帧中,确定扩展图像块的匹配图像块,便于后续根据匹配图像块和扩展图像块确定初始运动矢量的验证结果。
请参见图5,该图是本申请实施例提供的一种确定匹配图像块的实现方式。图5中包括视频图像帧和参考图像帧,其中参考图像帧中包括的扩展图像块如上述图4所示;可以确定视频图像帧中的当前图像块的初始运动矢量,初始运动矢量记为MVa,该初始运动矢量的方向为从视频图像帧到参考图像帧,初始运动矢量的大小为(1,1)。对于扩展图像块包括的多个像素点中的像素点A,该像素点的原始位置数据为(2,3),可以根据初始运动矢量对像素点A的原始位置数据进行矢量计算,得到像素点A的匹配位置数据(3,4),根据像素点A的匹配位置数据,可以从参考图像帧中确定像素点A的匹配像素点,即参考图像帧中的像素点B(如图5所示,像素点A与像素点B之间的运动矢量为MVa);采用上述方法可以确定出扩展图像块包括的各个像素点的匹配像素点,可以将各个像素点的匹配像素点组成的图像块确定为匹配图像块(图5的参考图像帧中虚线所围成的图像块为匹配图像块)。通过本申请实施例提供的方法,可以准确地确定出扩展图像块的匹配图像块,便于后续根据匹配图像块和扩展图像块确定初始运动矢量的验证结果,降低计算复杂度,提高视频编码的处理效率。
在一实施例中,利用扩展图像块和匹配图像块进行相似度计算,得到扩展图像块与匹配图像块的相似度的实现方式,可以为:对扩展图像块包括的多个像素点的像素值进行计算,得到扩展图像块的像素均值和像素标准差值;对匹配图像块包括的多个像素点的像素值进行计算,得到匹配图像块的像素均值和像素标准差值;根据扩展图像块的像素均值和像素标准差值,以及匹配图像块的像素均值和像素标准差值,确定亮度相似度、对比度相似度和图像结构相似度;对亮度相似度、对比度相似度和图像结构相似度进行整合处理,得到扩展图像块与匹配图像块的相似度。在确定扩展图像块与匹配图像块的相似度时,可以对扩展图像块包括的多个像素点的像素值进行计算,得到扩展图像块的像素均值和像素标准差,扩展图像块可以用x表示,则扩展图像块的像素均值可以表示为μx,扩展图像块的像素标准差可以表示为δx;可以对匹配图像块包括的多个像素点的像素值进行计算,得到匹配图像块的像素均值和像素标准差值,匹配图像块可以用y表示,则匹配图像块的像素均值可以表示为μy,匹配图像块的像素标准差可以表示为δy。
可以根据扩展图像块的像素均值和像素标准差值,以及匹配图像块的像素均值和像素标准差值,确定亮度相似度、对比度相似度和图像结构相似度,其中,亮度相似度可以反映扩展图像块和匹配图像块在图像亮度维度上的相似程度,亮度相似度可以表示为l(x,y);对比度相似度可以反映扩展图像块和匹配图像块在图像对比度维度上的相似程度,对比度相似度可以表示为c(x,y);图像结构相似度可以反映扩展图像块和匹配图像块在图像结构维度上的相似程度,图像结构相似度可以表示为s(x,y);可以对亮度相似度、对比度相似度和图像结构相似度进行整合处理,得到扩展图像块与匹配图像块的相似度。通过本申请实施例提供的方法,可以准确地确定扩展图像块与匹配图像块的相似度,从而可以根据相似度确定初始运动矢量的验证结果,有利于提高图像处理方法的准确性,降低计算复杂度,提高视频编码效率。
在一实施例中,可以采用结构相似性指数(Structure Similarity IndexMeasure,SSIM)来作为扩展图像块和匹配图像块的相似度衡量指标:可以计算得到扩展图像块的像素均值为μx,扩展图像块的像素标准差为δx;匹配图像块的像素均值为μy,匹配图像块的像素标准差为δy,扩展图像块与匹配图像块之间的像素协方差为δxy,确定亮度相似度、对比度相似度和图像结构相似度的方法可以如下述式(1)、(2)和(3)所示:
/>
s(x,y)=(δxy+C3)/(δx*δy+C3) (3)
其中,l(x,y)为亮度相似度,c(x,y)为对比度相似度,s(x,y)为图像结构相似度,C1、C2、C3均为常数。通过上述三个公式,可以确定扩展图像块和匹配图像块之间的亮度相似度、对比度相似度和图像结构相似度,根据亮度相似度、对比度相似度和图像结构相似度,确定扩展图像块与所述匹配图像块的相似度的实现方式可以如下式(4)所示:
SSIM(x,y)=[l(x,y)]α*[c(x,y)]β*[s(x,y)]γ (4)
其中,α、β、γ均为大于0的常量参数。通过上述公式,可以确定扩展图像块和匹配图像块之间的SSIM相似度,该SSIM相似度考虑了两个图像块的结构信息,能够更准确地反映两个图像块的主观相似度,计算效率较高。通过本申请实施例提供的方法,可以准确地确定扩展图像块与匹配图像块之间的相似度,从而可以根据该相似度确定初始运动矢量的验证结果。
S304、利用所述验证结果根据所述初始运动矢量或者第二图像搜索方法确定所述当前图像块的目标运动矢量。
本申请实施例中,可以利用验证结果根据初始运动矢量或者第二图像搜索方法确定当前图像块的目标运动矢量,该目标运动矢量可以用于实现待编码视频的视频编码处理。当根据初始运动矢量确定当前图像块的目标运动矢量时,无需利用第二图像搜索方法对参考图像帧进行处理,可以有效减少计算量,提高处理效率,当根据第二图像搜索方法确定当前图像块的目标运动矢量时,可以有效保证目标运动矢量的准确性。对于待编码视频中的多个视频图像帧,均可以采用本申请提供的方法确定目标运动矢量,从而可以在整体上减少计算量,降低计算复杂度,提高视频编码效率,从而可以节约网络资源。
在一实施例中,利用验证结果根据初始运动矢量或者第二图像搜索方法确定当前图像块的目标运动矢量的实现方式,可以为:若验证结果指示验证通过,将初始运动矢量确定为当前图像块的目标运动矢量;若验证结果指示验证不通过,则利用第二图像搜索方法对参考图像帧进行处理,得到当前图像块的目标运动矢量。若验证结果指示验证通过,则说明该初始运动矢量满足要求,则无需再进行图像搜索处理,可以直接将初始运动矢量确定为当前图像块的目标运动矢量;若验证结果指示验证不通过,则说明初始运动矢量不满足要求,则需要利用第二图像搜索方法对参考图像帧进行更加精细的处理,得到当前图像块的目标运动矢量。通过本申请实施例提供的方法,可以有效降低计算复杂度,减少数据计算量,提高视频编码的处理效率。
在一实施例中,第一图像搜索方法可以为整像素搜索方法,第二图像搜索方法可以为分像素搜索方法。现有的确定运动矢量方法为:针对视频图像帧中的当前图像块,采用整像素搜索方法确定当前图像块的初始运动矢量,再利用分像素搜索方法确定当前图像块的目标运动矢量,然而分像素搜索方法的算法复杂度很高,数据计算量较大,且在一些情况下,分像素搜索方法可能因为过于精细的搜索而导致误差。而本申请提供的方法中,可以采用整像素搜索方法确定当前图像块的初始运动矢量,并确定当前图像块的扩展图像块,利用扩展图像块的参考图像帧对初始运动矢量进行验证处理,得到验证结果;如果验证结果指示验证通过,则直接将初始运动矢量确定为目标运动矢量,相当于提前终止了目标运动矢量的确定流程,不需要再进行分像素搜索方法,从而有效减少了数据计算量,降低了计算复杂度,也有效避免了因过于精细的搜索而导致的误差,保证了运动矢量的准确度,提升了视频编码的效果。
在一实施例中,若验证结果指示验证不通过,利用第二图像搜索方法对参考图像帧进行处理,得到当前图像块的目标运动矢量的实现方式,可以为:对参考图像帧中可能待搜索的分像素位置进行插值处理,得到插值图像帧,即利用插值方法(例如双线性插值或编码标准规定的分像素运动补偿方法)对参考图像帧进行上采样处理,以获得分辨率更高的图像帧,这使得后续可以在分像素位置上进行搜索;确定插值图像帧后,可以对该插值图像帧进行分像素搜索,即在整像素搜索结果周围的一个小区域内进行分像素级别的搜索(例如:按一定顺序遍历可能的位置,分别计算失真值和率失真代价值);根据分像素级别的搜索结果从分像素搜索区域内确定具有最低率失真代价(即与当前图像块相似度最高)的目标图像块,根据该目标图像块和当前图像块进行矢量计算,得到当前图像块的目标运动矢量。通过本申请实施例提供的方法,可以准确地确定目标运动矢量,有利于提高目标运动矢量的准确性。
请参见图6,该图是本申请实施例提供的一种图像处理方法的示意图。在进行视频编码时,可以计算视频图像帧的运动矢量,针对视频图像帧的当前图像块,可以采用第一图像搜索方法对参考图像帧进行处理,得到当前图像块的初始运动矢量;可以从视频图像帧中确定当前图像块的扩展图像块,并利用扩展图像块和初始运动矢量从参考图像帧中确定匹配图像块,计算匹配图像块和扩展图像块之间的相似度;判断相似度是否大于相似度阈值,若是,则确定初始运动矢量验证通过,可以将初始运动矢量确定为当前图像块的目标运动矢量,若否,则确定初始运动矢量验证不通过,可以利用第二图像搜索方法对参考图像帧进行处理,得到当前图像块的目标运动矢量。通过本申请实施例提供的方法,可以实现目标运动矢量的确定流程的提前终止,从而有效减少了数据计算量,降低了计算复杂度,也有效避免了因过于精细的搜索而导致的误差,保证了目标运动矢量的准确度,提升了视频编码的效果。
通过本申请实施例提供的图像处理方法,可以采用多种不同类型的相似度度量数据来确定当前图像块的初始运动矢量,提高了初始运动矢量的准确性,可以减少数据计算量;可以合理确定当前图像块的扩展图像块,便于根据扩展图像块确定准确的验证结果;可以利用扩展图像块和参考图像帧对初始运动矢量进行验证处理,得到验证结果,从而确定初始运动矢量是否满足要求;当根据验证结果利用初始运动矢量确定目标运动矢量时,可以实现目标运动矢量的确定流程的提前终止,从而有效减少了数据计算量,降低了计算复杂度,也有效避免了因过于精细的搜索而导致的误差,保证了运动矢量的准确度,提升了视频编码的效果,提高了视频编码的处理效率。
请参见图7,图7为本申请实施例提供的一种图像处理装置的结构框图。所述装置包括:
扩展单元701,用于从视频图像帧中确定当前图像块的扩展图像块,所述扩展图像块包含所述当前图像块;
处理单元702,用于利用所述扩展图像块和所述视频图像帧的参考图像帧对所述当前图像块的初始运动矢量进行验证处理,得到验证结果;其中,所述当前图像块的初始运动矢量是利用第一图像搜索方法对所述参考图像帧进行处理得到的;
确定单元703,用于利用所述验证结果根据所述初始运动矢量或者第二图像搜索方法确定所述当前图像块的目标运动矢量。
在一实施例中,所述确定单元703在利用所述验证结果根据所述初始运动矢量或者第二图像搜索方法确定所述当前图像块的目标运动矢量时,具体用于:若所述验证结果指示验证通过,将所述初始运动矢量确定为所述当前图像块的目标运动矢量;若所述验证结果指示验证不通过,则利用第二图像搜索方法对所述参考图像帧进行处理,得到所述当前图像块的目标运动矢量。
在一实施例中,所述扩展单元701在从视频图像帧中确定当前图像块的扩展图像块时,具体用于:确定所述当前图像块的扩展参数;根据所述扩展参数在视频图像帧的已编码图像区域对所述当前图像块的初始图像范围数据进行扩展处理,得到扩展图像范围数据;利用所述扩展图像范围数据从所述视频图像帧中确定扩展图像块。
在一实施例中,所述处理单元702在利用所述扩展图像块和所述视频图像帧的参考图像帧对所述当前图像块的初始运动矢量进行验证处理,得到验证结果时,具体用于:根据所述扩展图像块和所述初始运动矢量,从所述参考图像帧中确定匹配图像块;利用所述扩展图像块和所述匹配图像块进行相似度计算,得到所述扩展图像块与所述匹配图像块的相似度;若所述相似度大于相似度阈值,则确定所述初始运动矢量的验证结果为验证通过;若所述相似度小于或者等于相似度阈值,则确定所述初始运动矢量的验证结果为验证不通过。
在一实施例中,所述处理单元702在根据所述扩展图像块和所述初始运动矢量,从所述参考图像帧中确定匹配图像块时,具体用于:针对所述扩展图像块包括的多个像素点中的任一像素点,根据所述初始运动矢量对所述任一像素点的原始位置数据进行矢量计算,得到所述任一像素点的匹配位置数据;根据所述任一像素点的匹配位置数据从所述参考图像帧中确定所述任一像素点的匹配像素点;在确定出所述扩展图像块包括的多个像素点的匹配像素点之后,将所述多个像素点的匹配像素点组成的图像块,确定为匹配图像块。
在一实施例中,所述处理单元702在利用所述扩展图像块和所述匹配图像块进行相似度计算,得到所述扩展图像块与所述匹配图像块的相似度时,具体用于:对所述扩展图像块包括的多个像素点的像素值进行计算,得到所述扩展图像块的像素均值和像素标准差值;对所述匹配图像块包括的多个像素点的像素值进行计算,得到所述匹配图像块的像素均值和像素标准差值;根据所述扩展图像块的像素均值和像素标准差值,以及所述匹配图像块的像素均值和像素标准差值,确定亮度相似度、对比度相似度和图像结构相似度;对所述亮度相似度、所述对比度相似度和所述图像结构相似度进行整合处理,得到所述扩展图像块与所述匹配图像块的相似度。
在一实施例中,所述扩展单元701,还用于:按照所述第一图像搜索方法从所述参考图像帧中确定图像搜索范围,并对所述图像搜索范围进行搜索处理,得到多个待选图像块,所述待选图像块的图像块尺寸与所述当前图像块的图像块尺寸相匹配;确定所述当前图像块与各个所述待选图像块之间的图像差异数据,所述图像差异数据包括相对差值数据、转换差值数据、差值平方和数据中的一种或者多种;利用所述多个待选图像块的图像差异数据从所述多个待选图像块中,确定参考图像块,并对所述参考图像块和所述当前图像块进行矢量计算,得到所述当前图像块的初始运动矢量。
可以理解的是,本申请实施例的图像处理装置的各功能单元的功能可根据上述方法实施例中的图像处理方法具体实现,其具体实现过程可以参照上述图像处理方法实施例中的相关描述,此处不再赘述。本申请实施例中,术语“模块”或“单元”是指有预定功能的计算机程序或计算机程序的一部分,并与其他相关部分一起工作以实现预定目标,并且可以通过使用软件、硬件(如处理电路或存储器)或其组合来全部或部分实现。同样的,一个处理器(或多个处理器或存储器)可以用来实现一个或多个模块或单元。此外,每个模块或单元都可以是包含该模块或单元功能的整体模块或单元的一部分。
通过本申请实施例提供的图像处理装置,可以采用多种不同类型的相似度度量数据来确定当前图像块的初始运动矢量,提高了初始运动矢量的准确性,可以减少数据计算量;可以合理确定当前图像块的扩展图像块,便于根据扩展图像块确定准确的验证结果;可以利用扩展图像块和参考图像帧对初始运动矢量进行验证处理,得到验证结果,从而确定初始运动矢量是否满足要求;当根据验证结果利用初始运动矢量确定目标运动矢量时,可以实现目标运动矢量的确定流程的提前终止,从而有效减少了数据计算量,降低了计算复杂度,也有效避免了因过于精细的搜索而导致的误差,保证了运动矢量的准确度,提升了视频编码的效果,提高了视频编码的处理效率。
请参阅图8,图8为本申请实施例提供的一种计算机设备的结构框图。本申请实施例中所描述的计算机设备包括:处理器801、通信接口802及存储器803。其中,处理器801、通信接口802及存储器803可通过总线或其他方式连接,本申请实施例以通过总线连接为例。
其中,处理器801(或称CPU(Central Processing Unit,中央处理器))是计算机设备的计算核心以及控制核心,其可以解析计算机设备内的各类指令以及处理计算机设备的各类数据,例如:CPU可以用于解析用户向计算机设备所发送的开关机指令,并控制计算机设备进行开关机操作;再如:CPU可以在计算机设备内部结构之间传输各类交互数据,等等。通信接口802可选的可以包括标准的有线接口、无线接口(如Wi-Fi、移动通信接口等),受处理器801的控制用于收发数据。存储器803(Memory)是计算机设备中的记忆设备,用于存放程序和数据。可以理解的是,此处的存储器803既可以包括计算机设备的内置存储器,当然也可以包括计算机设备所支持的扩展存储器。存储器803提供存储空间,该存储空间存储了计算机设备的操作系统,可包括但不限于:Android系统、iOS系统、Windows Phone系统等等,本申请对此并不作限定。
在本申请实施例中,处理器801通过运行存储器803中的可执行程序代码,执行如下操作:
从视频图像帧中确定当前图像块的扩展图像块,所述扩展图像块包含所述当前图像块;
利用所述扩展图像块和所述视频图像帧的参考图像帧对所述当前图像块的初始运动矢量进行验证处理,得到验证结果;其中,所述当前图像块的初始运动矢量是利用第一图像搜索方法对所述参考图像帧进行处理得到的;
利用所述验证结果根据所述初始运动矢量或者第二图像搜索方法确定所述当前图像块的目标运动矢量。
在一实施例中,所述处理器801在利用所述验证结果根据所述初始运动矢量或者第二图像搜索方法确定所述当前图像块的目标运动矢量时,具体用于:若所述验证结果指示验证通过,将所述初始运动矢量确定为所述当前图像块的目标运动矢量;若所述验证结果指示验证不通过,则利用第二图像搜索方法对所述参考图像帧进行处理,得到所述当前图像块的目标运动矢量。
在一实施例中,所述处理器801在从视频图像帧中确定当前图像块的扩展图像块时,具体用于:确定所述当前图像块的扩展参数;根据所述扩展参数在视频图像帧的已编码图像区域对所述当前图像块的初始图像范围数据进行扩展处理,得到扩展图像范围数据;利用所述扩展图像范围数据从所述视频图像帧中确定扩展图像块。
在一实施例中,所述处理器801在利用所述扩展图像块和所述视频图像帧的参考图像帧对所述当前图像块的初始运动矢量进行验证处理,得到验证结果时,具体用于:根据所述扩展图像块和所述初始运动矢量,从所述参考图像帧中确定匹配图像块;利用所述扩展图像块和所述匹配图像块进行相似度计算,得到所述扩展图像块与所述匹配图像块的相似度;若所述相似度大于相似度阈值,则确定所述初始运动矢量的验证结果为验证通过;若所述相似度小于或者等于相似度阈值,则确定所述初始运动矢量的验证结果为验证不通过。
在一实施例中,所述处理器801在根据所述扩展图像块和所述初始运动矢量,从所述参考图像帧中确定匹配图像块时,具体用于:针对所述扩展图像块包括的多个像素点中的任一像素点,根据所述初始运动矢量对所述任一像素点的原始位置数据进行矢量计算,得到所述任一像素点的匹配位置数据;根据所述任一像素点的匹配位置数据从所述参考图像帧中确定所述任一像素点的匹配像素点;在确定出所述扩展图像块包括的多个像素点的匹配像素点之后,将所述多个像素点的匹配像素点组成的图像块,确定为匹配图像块。
在一实施例中,所述处理器801在利用所述扩展图像块和所述匹配图像块进行相似度计算,得到所述扩展图像块与所述匹配图像块的相似度时,具体用于:对所述扩展图像块包括的多个像素点的像素值进行计算,得到所述扩展图像块的像素均值和像素标准差值;对所述匹配图像块包括的多个像素点的像素值进行计算,得到所述匹配图像块的像素均值和像素标准差值;根据所述扩展图像块的像素均值和像素标准差值,以及所述匹配图像块的像素均值和像素标准差值,确定亮度相似度、对比度相似度和图像结构相似度;对所述亮度相似度、所述对比度相似度和所述图像结构相似度进行整合处理,得到所述扩展图像块与所述匹配图像块的相似度。
在一实施例中,所述处理器801,还用于:按照所述第一图像搜索方法从所述参考图像帧中确定图像搜索范围,并对所述图像搜索范围进行搜索处理,得到多个待选图像块,所述待选图像块的图像块尺寸与所述当前图像块的图像块尺寸相匹配;确定所述当前图像块与各个所述待选图像块之间的图像差异数据,所述图像差异数据包括相对差值数据、转换差值数据、差值平方和数据中的一种或者多种;利用所述多个待选图像块的图像差异数据从所述多个待选图像块中,确定参考图像块,并对所述参考图像块和所述当前图像块进行矢量计算,得到所述当前图像块的初始运动矢量。
具体实现中,本申请实施例中所描述的处理器801、通信接口802及存储器803可执行本申请实施例提供的一种图像处理方法中所描述的图像处理服务器的实现方式,也可执行本申请实施例提供的一种图像处理装置中所描述的实现方式,在此不再赘述。
通过本申请实施例提供的计算机设备,可以采用多种不同类型的相似度度量数据来确定当前图像块的初始运动矢量,提高了初始运动矢量的准确性,可以减少数据计算量;可以合理确定当前图像块的扩展图像块,便于根据扩展图像块确定准确的验证结果;可以利用扩展图像块和参考图像帧对初始运动矢量进行验证处理,得到验证结果,从而确定初始运动矢量是否满足要求;当根据验证结果利用初始运动矢量确定目标运动矢量时,可以实现目标运动矢量的确定流程的提前终止,从而有效减少了数据计算量,降低了计算复杂度,也有效避免了因过于精细的搜索而导致的误差,保证了运动矢量的准确度,提升了视频编码的效果,提高了视频编码的处理效率。
本申请实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机程序,当其在计算机上运行时,使得计算机执行如本申请实施例所述的图像处理方法。其具体实现方式可参考前文描述,此处不再赘述。
本申请实施例还提供了一种计算机程序产品,所述计算机程序产品包括计算机程序或计算机指令,所述计算机程序或计算机指令存储在计算机可读存储介质中。计算机设备的处理器从所述计算机可读存储介质读取所述计算机程序或计算机指令,处理器执行所述计算机程序或计算机指令,使得所述计算机设备执行如本申请实施例所述的图像处理方法。其具体实现方式可参考前文描述,此处不再赘述。
需要说明的是,对于前述的各个方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本申请并不受所描述的动作顺序的限制,因为依据本申请,某一些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定是本申请所必须的。
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以为计算机、服务器或者网络设备等,具体可以是计算机设备中的处理器)执行本申请各个实施例上述方法的全部或部分步骤。其中,而前述的存储介质可包括:U盘、移动硬盘、磁碟、光盘、只读存储器(英文:Read-Only Memory,缩写:ROM)或者随机存取存储器(英文:Random Access Memory,缩写:RAM)等各种可以存储程序代码的介质。
以上所述,以上实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,应当理解:依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的精神和范围。
Claims (10)
1.一种图像处理方法,其特征在于,所述方法包括:
从视频图像帧中确定当前图像块的扩展图像块,所述扩展图像块包含所述当前图像块;
利用所述扩展图像块和所述视频图像帧的参考图像帧对所述当前图像块的初始运动矢量进行验证处理,得到验证结果;其中,所述当前图像块的初始运动矢量是利用第一图像搜索方法对所述参考图像帧进行处理得到的;
利用所述验证结果根据所述初始运动矢量或者第二图像搜索方法确定所述当前图像块的目标运动矢量。
2.根据权利要求1所述的方法,其特征在于,所述利用所述验证结果根据所述初始运动矢量或者第二图像搜索方法确定所述当前图像块的目标运动矢量,包括:
若所述验证结果指示验证通过,将所述初始运动矢量确定为所述当前图像块的目标运动矢量;
若所述验证结果指示验证不通过,则利用第二图像搜索方法对所述参考图像帧进行处理,得到所述当前图像块的目标运动矢量。
3.根据权利要求1所述的方法,其特征在于,所述从视频图像帧中确定当前图像块的扩展图像块,包括:
确定所述当前图像块的扩展参数;
根据所述扩展参数在视频图像帧的已编码图像区域对所述当前图像块的初始图像范围数据进行扩展处理,得到扩展图像范围数据;
利用所述扩展图像范围数据从所述视频图像帧中确定扩展图像块。
4.根据权利要求1所述的方法,其特征在于,所述利用所述扩展图像块和所述视频图像帧的参考图像帧对所述当前图像块的初始运动矢量进行验证处理,得到验证结果,包括:
根据所述扩展图像块和所述初始运动矢量,从所述参考图像帧中确定匹配图像块;
利用所述扩展图像块和所述匹配图像块进行相似度计算,得到所述扩展图像块与所述匹配图像块的相似度;
若所述相似度大于相似度阈值,则确定所述初始运动矢量的验证结果为验证通过;
若所述相似度小于或者等于相似度阈值,则确定所述初始运动矢量的验证结果为验证不通过。
5.根据权利要求4所述的方法,其特征在于,所述根据所述扩展图像块和所述初始运动矢量,从所述参考图像帧中确定匹配图像块,包括:
针对所述扩展图像块包括的多个像素点中的任一像素点,根据所述初始运动矢量对所述任一像素点的原始位置数据进行矢量计算,得到所述任一像素点的匹配位置数据;
根据所述任一像素点的匹配位置数据从所述参考图像帧中确定所述任一像素点的匹配像素点;
在确定出所述扩展图像块包括的多个像素点的匹配像素点之后,将所述多个像素点的匹配像素点组成的图像块,确定为匹配图像块。
6.根据权利要求4所述的方法,其特征在于,所述利用所述扩展图像块和所述匹配图像块进行相似度计算,得到所述扩展图像块与所述匹配图像块的相似度,包括:
对所述扩展图像块包括的多个像素点的像素值进行计算,得到所述扩展图像块的像素均值和像素标准差值;
对所述匹配图像块包括的多个像素点的像素值进行计算,得到所述匹配图像块的像素均值和像素标准差值;
根据所述扩展图像块的像素均值和像素标准差值,以及所述匹配图像块的像素均值和像素标准差值,确定亮度相似度、对比度相似度和图像结构相似度;
对所述亮度相似度、所述对比度相似度和所述图像结构相似度进行整合处理,得到所述扩展图像块与所述匹配图像块的相似度。
7.根据权利要求1-6任一项所述的方法,其特征在于,所述方法还包括:
按照所述第一图像搜索方法从所述参考图像帧中确定图像搜索范围,并对所述图像搜索范围进行搜索处理,得到多个待选图像块,所述待选图像块的图像块尺寸与所述当前图像块的图像块尺寸相匹配;
确定所述当前图像块与各个所述待选图像块之间的图像差异数据,所述图像差异数据包括相对差值数据、转换差值数据、差值平方和数据中的一种或者多种;
利用所述多个待选图像块的图像差异数据从所述多个待选图像块中,确定参考图像块,并对所述参考图像块和所述当前图像块进行矢量计算,得到所述当前图像块的初始运动矢量。
8.一种图像处理装置,其特征在于,所述装置包括:
扩展单元,用于从视频图像帧中确定当前图像块的扩展图像块,所述扩展图像块包含所述当前图像块;
处理单元,用于利用所述扩展图像块和所述视频图像帧的参考图像帧对所述当前图像块的初始运动矢量进行验证处理,得到验证结果;其中,所述当前图像块的初始运动矢量是利用第一图像搜索方法对所述参考图像帧进行处理得到的;
确定单元,用于利用所述验证结果根据所述初始运动矢量或者第二图像搜索方法确定所述当前图像块的目标运动矢量。
9.一种计算机设备,其特征在于,包括:处理器、通信接口和存储器,所述处理器、所述通信接口和所述存储器相互连接,其中,所述存储器存储有可执行程序代码,所述处理器用于调用所述可执行程序代码,实现如权利要求1-7中任一项所述的图像处理方法。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有计算机指令,当其在计算机上运行时,使得计算机实现如权利要求1-7中任一项所述的图像处理方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311744676.7A CN117768647A (zh) | 2023-12-18 | 2023-12-18 | 图像处理方法、装置、设备及可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311744676.7A CN117768647A (zh) | 2023-12-18 | 2023-12-18 | 图像处理方法、装置、设备及可读存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117768647A true CN117768647A (zh) | 2024-03-26 |
Family
ID=90317510
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311744676.7A Pending CN117768647A (zh) | 2023-12-18 | 2023-12-18 | 图像处理方法、装置、设备及可读存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117768647A (zh) |
-
2023
- 2023-12-18 CN CN202311744676.7A patent/CN117768647A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7830961B2 (en) | Motion estimation and inter-mode prediction | |
CN109218733B (zh) | 一种确定预测运动矢量预测的方法以及相关设备 | |
US20150350640A1 (en) | Video encoding and decoding method | |
CN112087629A (zh) | 图像预测方法及相关装置 | |
CN110971898B (zh) | 点云编解码方法和编解码器 | |
CN110248189B (zh) | 一种视频质量预测方法、装置、介质和电子设备 | |
WO2019153861A1 (zh) | 一种双向帧间预测方法及装置 | |
EP3941064A1 (en) | Image decoding device, image decoding method, and program | |
KR20210016649A (ko) | 디블로킹 필터 방법 및 장치 | |
JP2018533273A5 (zh) | ||
CN111050169B (zh) | 图像编码中量化参数的生成方法、装置及终端 | |
CN117280691A (zh) | 增强的运动向量预测 | |
KR20230157287A (ko) | 인트라 예측을 이용한 비디오 부호화/복호화 방법 및 장치 | |
CN115428451A (zh) | 视频编码方法、编码器、系统以及计算机存储介质 | |
CN111654696A (zh) | 一种帧内的多参考行预测方法、装置、存储介质及终端 | |
CN117768647A (zh) | 图像处理方法、装置、设备及可读存储介质 | |
KR20130095322A (ko) | 양자화 제어 장치 및 방법, 및 양자화 제어 프로그램 | |
CN117750016A (zh) | 图像处理方法、装置及计算机设备 | |
CN112243129B (zh) | 视频数据处理方法、装置、计算机设备及存储介质 | |
KR102225881B1 (ko) | 인트라 예측을 이용한 비디오 부호화/복호화 방법 및 장치 | |
KR102225880B1 (ko) | 인트라 예측을 이용한 비디오 부호화/복호화 방법 및 장치 | |
JP2007110409A (ja) | 画像処理装置及び画像処理方法をコンピュータに実行させるためのプログラム | |
CN116567247A (zh) | 视频编码方法、实时通信方法、装置、设备及存储介质 | |
CN112738529A (zh) | 帧间预测方法、装置、设备、存储介质以及程序产品 | |
JP2009509405A (ja) | ビデオシーケンスにおける可変形状動き推定 |
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 |