CN110800301A - 编码设备的控制方法、装置及存储介质 - Google Patents

编码设备的控制方法、装置及存储介质 Download PDF

Info

Publication number
CN110800301A
CN110800301A CN201880042194.8A CN201880042194A CN110800301A CN 110800301 A CN110800301 A CN 110800301A CN 201880042194 A CN201880042194 A CN 201880042194A CN 110800301 A CN110800301 A CN 110800301A
Authority
CN
China
Prior art keywords
image
image block
target
target image
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
Application number
CN201880042194.8A
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.)
SZ DJI Technology Co Ltd
Original Assignee
SZ DJI Technology 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 SZ DJI Technology Co Ltd filed Critical SZ DJI Technology Co Ltd
Publication of CN110800301A publication Critical patent/CN110800301A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T9/00Image coding
    • 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/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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T3/00Geometric image transformation in the plane of the image
    • G06T3/40Scaling the whole image or part thereof
    • 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/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
    • H04N19/139Analysis of motion vectors, e.g. their magnitude, direction, variance or reliability
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/42Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation
    • H04N19/423Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation characterised by memory arrangements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/42Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation
    • H04N19/43Hardware specially adapted for motion estimation or compensation
    • H04N19/433Hardware specially adapted for motion estimation or compensation characterised by techniques for memory access
    • 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

Abstract

本发明实施例提供一种编码设备的控制方法、装置及存储介质。方法包括:在当前待编码图像块的参考图像中确定搜索区域,搜索区域内的参考图像为搜索图像,参考图像存储在外部存储器中;按照顺序从外部存储器获取N个目标图像块中未被高速缓存存储的图像单元,其中,目标图像块为搜索区域中目标区域内的搜索图像,N为大于或等于2的整数,N个目标图像块的前M个目标图像块构成矩形图像,M为小于或等于N的任意整数;将获取的图像单元存储到高速缓存。保证在每一次获取一个目标图像块中未被高速缓存存储的图像单元并将图像单元存储到高速缓存之后,高速缓存中存储的图像都为能用于运动搜索的矩形图像,提高了带宽资源利用率和编码效率。

Description

编码设备的控制方法、装置及存储介质
技术领域
本发明实施例涉及图像处理技术领域,尤其涉及一种编码设备的控制方法、装置及存储介质。
背景技术
现有技术中移动机器人(例如无人机)可搭载有拍摄装置,该拍摄装置可以实时的采集图像,由该移动机器人内部的编码设备对该图像信息进行编码,并将编码后的图像发送给该移动机器人对应的控制端。
编码设备对该图像编码时需要对图像的各个图像块进行编码。在对图像块进行编码时,需要利用存储在外部存储器的参考图像来对图像进行编码。具体地,在对图像块进行编码之前,需要在存储在外部设备的参考图像中确定图像块的搜索图像,并从外部存储器中获取搜索图像中未被高速缓存中存储的图像单元,并将所述图像单元存储在高速缓存中,存储完成之后,利用存储在高速缓存中的搜索图像执行运动搜索。
在某些情况中,由于带宽的限制,不能将所有搜索图像中未被高速缓存存储的图像单元从外部存储器获取并存储到高速缓存中。现有技术中,是在宽带的限制条件下,尽可能多地获取搜索图像中未被高速缓存存储的图像单元从外部存储器并存储到高速缓存中。然而,针对这种方式,在完成存储之后,高速缓存中存储的图像可能不为矩形图像,这样只能在图像选择一个面积最大的矩形图像进行运动搜索。这样方式降低了带宽资源利用率和编码效率。
发明内容
本发明实施例提供一种编码设备的控制方法、装置及存储介质,以提高带宽资源利用率和编码效率。
本发明实施例的第一方面是提供一种编码设备的控制方法,包括:
在当前待编码图像块的参考图像中确定搜索区域,所述搜索区域内的参考图像为搜索图像,所述参考图像存储在外部存储器中;
按照顺序从外部存储器获取N个目标图像块中未被高速缓存存储的图像单元,其中,目标图像块为所述搜索区域中目标区域内的搜索图像,所述N为大于或等于2的整数,所述N个目标图像块的前M个目标图像块构成矩形图像,M为小于或等于N的任意整数;
将所述获取的图像单元存储到高速缓存,其中,存储在高速缓存中的N个目标图像块用于对当前待编码图像块的运动搜索。
本发明实施例的第二方面是提供一种编码设备的控制装置,包括:存储器和处理器;
所述存储器用于存储程序代码;
所述处理器,调用所述程序代码,当程序代码被执行时,用于执行以下操作:
在当前待编码图像块的参考图像中确定搜索区域,所述搜索区域内的参考图像为搜索图像,所述参考图像存储在外部存储器中;
按照顺序从外部存储器获取N个目标图像块中未被高速缓存存储的图像单元,其中,目标图像块为所述搜索区域中目标区域内的搜索图像,所述N为大于或等于2的整数,所述N个目标图像块的前M个目标图像块构成矩形图像,M为小于或等于N的任意整数;
将所述获取的图像单元存储到高速缓存,其中,存储在高速缓存中的N个目标图像块用于对当前待编码图像块的运动搜索。
本发明实施例的第三方面是提供一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行以实现如第一方面所述的方法。
本实施例提供的编码设备的控制方法、装置及存储介质中,按照顺序从外部存储器获取N个目标图像块中未被高速缓存存储的图像单元,所述N个目标图像块的前M个目标图像块构成矩形图像,M为小于或等于N的任意整数,这样可以保证在每一次获取一个目标图像块中未被高速缓存存储的图像单元并将所述图像单元存储到高速缓存之后,高速缓存中存储的图像都为能用于运动搜索的矩形图像,这样提高了带宽资源利用率和编码效率。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的视频数据的示意图;
图2为本发明实施例提供的图像帧划分为待编码图像块的示意图;
图3为本发明实施例提供的运算搜索的示意图;
图4为本发明实施例提供的搜索区域的示意图;
图5为本发明实施例提供的图像帧的示意图;
图6为本发明实施例提供的获取最大矩形区域的示意图;
图7为本发明实施例提供的编码设备的控制方法的流程图;
图8为本发明实施例提供的对搜索区域进行划分的示意图;
图9为本发明实施例提供的一种目标图像块的示意图;
图10为本发明实施例提供的另一种目标图像块的示意图;
图11为本发明另一实施例提供的编码设备的控制方法的流程图;
图12为本发明实施例提供的获取目标图像块方法的示意图;
图13为本发明另一实施例提供的目标图像块的示意图;
图14为本发明另一实施例提供的获取目标图像块方法的示意图;
图15为本发明实施例提供的编码设备的控制装置的结构图。
附图标记:
10:视频数据;11:图像帧;12:图像帧;
121:待编码图像块;122:待编码图像块;123:待编码图像块;
124:待编码图像块;111:图像块;21:图像块;
22:图像块;23:图像块;24:待编码图像块;
41:区域;42:搜索区域;51:搜索区域;
52:搜索区域;61:区域;62:部分区域;
63:矩形区域;81:参考图像;82:待编码图像;
83:待编码图像块;84:对应图像块;85:搜索区域;
86:图像单元;1:目标区域;2:目标区域;
3:目标区域;4:目标区域;5:目标区域;
6:目标区域;7:目标区域;100:搜索区域;
120:对应图像块;150:控制装置;151:存储器;
152:处理器。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
需要说明的是,当组件被称为“固定于”另一个组件,它可以直接在另一个组件上或者也可以存在居中的组件。当一个组件被认为是“连接”另一个组件,它可以是直接连接到另一个组件或者可能同时存在居中组件。
除非另有定义,本文所使用的所有的技术和科学术语与属于本发明的技术领域的技术人员通常理解的含义相同。本文中在本发明的说明书中所使用的术语只是为了描述具体的实施例的目的,不是旨在于限制本发明。本文所使用的术语“及/或”包括一个或多个相关的所列项目的任意的和所有的组合。
下面结合附图,对本发明的一些实施方式作详细说明。在不冲突的情况下,下述的实施例及实施例中的特征可以相互组合。
图1为本发明实施例提供的视频数据的示意图。如图1所示,视频数据10包括多帧图像,图像帧11和图像帧12是该多帧图像中的任意两帧图像。通常为了减少视频数据存储和传输所占用的带宽,需要对视频数据进行编码压缩处理。以图像帧12为例,对图像帧12进行编码时,可以将图像帧12划分为若干个待编码图像块,如图2所示,将图像帧12划分为4个待编码图像块,例如,待编码图像块121、待编码图像块122、待编码图像块123和待编码图像块124。针对每一个待编码图像块,在图像帧12对应的参考图像中搜索与该待编码图像块最匹配的图像块作为预测块,例如,图像帧12对应的参考图像为图像帧11,此处只是示意性说明,并不限定图像帧12对应的参考图像。以待编码图像块121为例,在图像帧11中搜索与待编码图像块121最匹配的图像块作为预测块,如图3所示,假设图像帧11中的图像块111与待编码图像块121最匹配,进一步,计算图像块111与待编码图像块121的相应像素值的差值,以及待编码图像块121相对于图像块111的运动矢量L,同理,可以在图像帧11中搜索与待编码图像块122、待编码图像块123和待编码图像块124分别最匹配的图像块作为预测块,以及待编码图像块122、待编码图像块123和待编码图像块124分别相对于各自预测块的运动矢量。最后将待编码图像块121、待编码图像块122、待编码图像块123和待编码图像块124分别与各自的预测块相应像素值的差值组合在一起,得到图像帧12的残差,编码设备可以对该图像帧12的残差进行编码,以及对各个待编码图像块对应的运动矢量进行编码,并将编码后的残差和运动矢量进行存储或发送给解码端,解码端接收到编码后的残差和运动矢量后,首先进行解码得到图像帧12的残差和图像帧12中各个待编码图像块对应的运动矢量,进一步根据每个待编码图像块对应的运动矢量,确定出每个待编码图像块对应的预测块,并根据每个待编码图像块对应的预测块和图像帧12的残差,得到图像帧12中各个待编码图像块的像素点的像素值。可选的,图像帧12和参考图像的大小相同,待编码图像块与其对应的预测块的大小相同。
在一些实施例中,在参考图像中搜索与待编码图像块最匹配的图像块时,可以先确定该待编码图像块在该参考图像中对应的搜索区域,进一步,在该搜索区域中搜索与该待编码图像块最匹配的图像块,并将该图像块作为预测块。如图4所示,假设待编码图像块24为当前待编码图像块,图像块21、图像块22、图像块23是已编码图像块,根据与待编码图像块24相邻的已编码图像块例如图像块22和图像块23各自对应的运动矢量,可预测出待编码图像块24的运动矢量例如L1,可以理解,该运动矢量L1是预测运动矢量,并不是待编码图像块24真实的运动矢量。根据该运动矢量L1可确定出参考图像例如图像帧11中由该运动矢量L1指向的区域41,并按照预设的搜索范围,在该区域41的周围划出一片矩形的搜索区域42。进一步,在该搜索区域42中进行运动搜索以检测出该搜索区域42中与待编码图像块24最匹配的图像块作为预测块,待编码图像块24相对于该预测块的运动矢量才是该待编码图像块24真实的运动矢量。可以理解,该预测块可能是该区域41,也可能不是该区域41。
对于编码设备而言,参考图像存储在该编码设备的外部存储器例如双倍速率同步动态随机存储器(Double Data Rate Synchronous Dynamic Random Access Memory,DDRSDRAM)中,当该编码设备的编码器对待编码图像块进行编码时,需要将参考图像中的数据从外部存储器中读取到该编码设备的高速缓存Cache中,该高速缓存具体可以是静态随机存取存储器(Static Random Access Memory,SRAM)。所述编码设备可以包括编码器和Cache,其中,编码器和Cache通讯连接,编码器用于从高速缓存Cache中获取搜索区域内的搜索图像,并根据所述搜索图像对待编码的图像块进行编码。其中,编码器和高速缓存可以集成在一块芯片上,在某些情况中,编码器和高速缓存可以集成在不同的芯片上,编码器可以由一个或多个处理器组成。
如图5所示,当编码设备对待编码图像块121进行编码时,编码设备需要从外部存储器中将待编码图像块121对应的搜索区域例如搜索区域51中的搜索图像读取到Cache中;当编码设备对待编码图像块122进行编码时,需要从外部存储器中将待编码图像块122对应的搜索区域例如搜索区域52中的搜索图像读取到Cache中,可以理解,搜索区域51和搜索区域52可以有交集,也可能没有交集,如图5所示,搜索区域51和搜索区域52部分重叠,则当编码设备对待编码图像块122进行编码时,由于搜索区域51和搜索区域52重叠部分的搜索图像已经存储在Cache中,因此,该编码设备只需从外部存储器中将搜索区域52中未被Cache存储的搜索图像读取到Cache中即可,从而提高了编码设备的数据读取效率。
以待编码图像块121为例,当编码设备从外部存储器中读取搜索区域51中的搜索图像时,编码设备和外部存储器之间的数据传输速率即带宽是有限的,导致该编码设备可能无法将搜索区域51中的搜索图像全部读取到Cache中,而实际读取到的搜索图像可能为如图6所示的区域61,在该区域61中无法进行运动搜索,因此,需要在该区域61中选择出一个尽可能大的矩形区域进行运动搜索,例如,将区域61中的部分区域62去除,得到尽可能大的矩形区域63,在该矩形区域63中进行运动搜索,以在该矩形区域63中搜索出与待编码图像块121最匹配的预测块,可以理解,该矩形区域63的大小大于或等于待编码图像块121的大小。如图6可知,将区域61中的部分区域62去除,相当于编码设备和外部存储器之间的带宽被浪费掉一部分,从而导致带宽资源利用率低,同时降低了编码效率,为了解决这个问题,本申请提供了一种编码设备的控制方法,下面将结合具体的实施例来介绍该方法。
本发明实施例提供一种编码设备的控制方法。图7为本发明实施例提供的编码设备的控制方法的流程图。如图7所示,本实施例中的方法,可以包括:
步骤S701、在当前待编码图像块的参考图像中确定搜索区域,所述搜索区域内的参考图像为搜索图像,所述参考图像存储在外部存储器中。
如图8所示,81表示参考图像,82表示待编码图像,待编码图像82包括多个待编码图像块,83表示该多个待编码图像块中的一个待编码图像块,并且待编码图像块83为当前待编码图像块。在参考图像81中确定待编码图像块83对应的搜索区域85。
可选的,所述在当前待编码图像块的参考图像中确定搜索区域,具体可以包括:根据当前待编码图像块的预测运动矢量在所述参考图像中确定搜索区域。
具体地,在确定搜索区域之前,可以预测得到编码图像块83的预测运动矢量,例如,根据与待编码图像块83相邻的已编码图像块的运动矢量预测待编码图像块83的运动矢量即待编码图像块83的预测运动矢量。如图8所示,待编码图像块83的预测运动矢量为L2,进一步,在参考图像81中确定出由预测运动矢量L2指向的对应图像块84,在对应图像块84的周围确定出搜索区域85。其中,根据对应图像块84确定搜索区域85的方式可以参见现有技术,在此不再赘述。
可选的,搜索区域85内的参考图像为搜索图像,参考图像81存储在编码设备内的外部存储器中,也就是说,该搜索区域85内的搜索图像存储在外部存储器中。
由于该编码设备内的编码器对待编码图像块83之前的待编码图像块进行编码时,可能已从外部存储器中将参考图像81中的部分图像数据读取到了高速缓存Cache中,因此,在从外部存储器中读取该搜索区域85内的搜索图像时,该高速缓存Cache中可能已存储有该搜索区域85内的部分图像数据。
步骤S702、按照顺序从外部存储器获取N个目标图像块中未被高速缓存存储的图像单元,其中,目标图像块为所述搜索区域中目标区域内的搜索图像,所述N为大于或等于2的整数,所述N个目标图像块的前M个目标图像块构成矩形图像,M为小于或等于N的任意整数。
在本实施例中,如图8所示,对参考图像81以图像单元为单位进行划分,86表示其中一个图像单元。如图9所示,目标区域1、2、3、4分别是搜索区域85内的区域,目标区域1内的搜索图像记为目标图像块A,目标区域2内的搜索图像记为目标图像块B,目标区域3内的搜索图像记为目标图像块C,目标区域4内的搜索图像记为目标图像块D,也就是说,搜索区域85内包括4个目标图像块,此处只是示意性说明,并不限定目标图像块的个数,也不限定目标图像块包括的图像单元的个数,例如处于同一行或同一行列的多个连续的图像单元可以作为一个目标图像块,或者处于连续多行或连续多列中的多个连续的图像单元也可以作为一个目标图像块。
可选的,搜索区域85内包括N个目标图像块,N为大于或等于2的整数,该N个目标图像块需要满足的条件是:该N个目标图像块的前M个目标图像块构成矩形图像,M为小于或等于N的任意整数。以N=4为例,该4个目标图像块的前1个目标图像块即目标图像块A构成矩形图像,该4个目标图像块的前2个目标图像块即目标图像块A和目标图像块B构成矩形图像,该4个目标图像块的前3个目标图像块即目标图像块A、目标图像块B和目标图像块C构成矩形图像,该4个目标图像块的前4个目标图像块即目标图像块A、目标图像块B、目标图像块C和目标图像块D构成矩形图像。
可选的,目标区域1、2、3、4内分别包括一个或多个完整的图像单元,如目标区域1所示,在本实施例中,该4个目标区域中的多个图像单元可能有些已存储在高速缓存中,有些不在高速缓存中,对于不在高速缓存中的图像单元,需要按照顺序从外部存储器中获取,例如,依次获取目标图像块A、目标图像块B、目标图像块C和目标图像块D中未被高速缓存存储的图像单元。
具体的,高速缓存的基本组成单元是高速缓存块,即高速缓存块是高速缓存最小的数据单位,高速缓存块记为Cache Line,每个Cache Line能保存相同大小的数据,例如,每个Cache Line能保存的数据大小是m个字节。每个Cache Line同时携带有地址信息,该地址信息用于指示该Cache Line中保存的图像数据是哪帧图像中哪个位置的数据。
在一些实施例中,每一个图像单元以一个高速缓存块为单位来获取。也就是说,如图8所示的图像单元86的大小和Cache Line的大小相同。从外部存储器中读取搜索区域85中一个像素的代价和读取该像素所位于的图像单元的代价相同。因此,当确定出待编码图像块83对应的原始搜索区域之后,还需要将原始搜索区域对齐到图像单元的边界,如图10所示,搜索区域100可以为将原始搜索区域对齐到图像单元边界之后的搜索区域,其中,原始搜索区域可以是根据如前所述的当前待编码图像块的预测运动向量确定的。搜索区域85内的目标图像块也可以是对齐到Cache Line获取的图像块。
可选的,Cache Line能存储的图像单元的的宽记为CacheLineWidth,Cache Line的高记为CacheLineHeight,搜索区域85左上角坐标记为(UpLeft_x,UpLeft_y),搜索区域85右下角坐标记为(RightBottom_x,RightBottom_y),将搜索区域85对齐到图像单元边界之后的搜索区域85的左上角坐标记为(UL_x,UL_y),搜索区域85的右下角坐标记为(RB_x,RB_y),则:
UL_x=UpLeft_x–UpLeft_x%CacheLineWidth;
UL_y=UpLeft_y–UpLeft_y%CacheLineHeight;
RB_x=RightBottom_x+CacheLineWidth–1-(RightBottom_x+CacheLineWidth-1)%CacheLineWidt;
RB_y=RightBottom_y+CacheLineHeight-1–(RightBottom_y+CacheLineHeight-1)%CacheLineHeight。
在一些实施例中,所述N个目标图像块中至少有一个目标图像块不是矩形图像块。如图10所示,搜索区域85内包括3个目标区域,例如目标区域1、2、3,目标区域1内的搜索图像记为目标图像块A,目标区域2内的搜索图像记为目标图像块B,目标区域3内的搜索图像记为目标图像块C,由于目标区域2和目标区域3不是矩形区域,所以目标图像块B和目标图像块C不是矩形图像块,但是,目标区域1和目标区域2可以构成矩形区域,即目标图像块A和目标图像块B可以构成矩形图像,目标区域1、目标区域2和目标区域3可以构成矩形区域,即目标图像块A、目标图像块B和目标图像块C可以构成矩形图像。
在另外一些实施例中,所述N个目标图像块中的每一个目标图像块为矩形图像块。如图9所示,搜索区域85内包括4个目标图像块,每个目标图像块为矩形图像块。
其中,所述N个目标图像块中的第一个目标图像块至少包括搜索图像中由所述预测运动矢量指向的对应图像块。
如图9或图10所示,84表示由预测运动矢量L2指向的对应图像块,搜索区域85或搜索区域85内的多个目标图像块中的第一个目标图像块例如目标区域1内的搜索图像至少包括对应图像块84,也就是说,目标区域1的大小大于或等于对应图像块84的大小。
步骤S703、将所述获取的图像单元存储到高速缓存,其中,存储在高速缓存中的N个目标图像块用于对当前待编码图像块的运动搜索。
以目标区域1为例,从外部存储器获取目标区域1对应的目标图像块中未被高速缓存存储的图像单元时,编码器按顺序将目标区域1中每个图像单元的地址信息发送给高速缓存,高速缓存将该图像单元的地址信息和Cache Line携带的地址信息进行比较,如果高速缓存中有一个Cache Line携带的地址信息与该图像单元的地址信息一致,则表示该图像单元存储在该高速缓存中,则高速缓存对该Cache Line进行标记以表示该Cache Line不可被替换或不可被存储到其他地方;如果高速缓存中每个Cache Line携带的地址信息均与该图像单元的地址信息不一致,则表示该图像单元未被高速缓存存储,此时,编码设备从外部存储器读取该图像单元,并将该图像单元存储在该高速缓存中。
同理,依次获取目标区域2、目标区域3、目标区域4中未被高速缓存存储的图像单元,并存储到高速缓存,使得高速缓存包括目标区域1、目标区域2、目标区域3、目标区域4分别对应的目标图像块,该目标区域1、目标区域2、目标区域3、目标区域4分别对应的目标图像块构成一个更大面积的图像块,该图像块即为目标区域1、目标区域2、目标区域3、目标区域4构成的矩形区域内的图像数据。该矩形区域内的图像数据用于对待编码图像块83进行运动搜索,即从该矩形区域内的图像数据中搜索出与待编码图像块83最匹配的图像块作为预测块。
另外,由于高速缓存的总大小是有限的,当该高速缓存没有空间存放新的数据时,可以在将该新的数据替换历史数据,本实施例不限定替换的方法,可选的,该替换方法例如为最近使用原则、先进先出原则等。该替换操作相当于更新了高速缓存存储的数据,保证从外部存储器新读取的数据可以存放在该高速缓存中。
本实施例中,按照顺序从外部存储器获取N个目标图像块中未被高速缓存存储的图像单元,所述N个目标图像块的前M个目标图像块构成矩形图像,M为小于或等于N的任意整数,这样可以保证在每一个获取一个目标图像块中未被高速缓存存储的图像单元并将所述图像单元存储到高速缓存之后,高速缓存中存储的图像都为能用于运动搜索的矩形图像,这样提高了带宽资源利用率和编码效率。
本发明实施例提供一种编码设备的控制方法。图11为本发明另一实施例提供的编码设备的控制方法的流程图。如图11所示,在上述实施例的基础上,所述N为在满足带宽限制条件时目标图像块的最大数量,其中,所述满足带宽限制条件包括:从外部存储器获取所述图像单元的数量小于或等于第一数量阈值。
由于编码设备与外部存储器之间的带宽是有限的,因此,编码设备可以从外部存储器获取的图像单元的数量是有限的,可选的,在带宽限制的条件下,编码设备可以从外部存储器获取的图像单元的数量小于或等于第一数量阈值,由于目标图像块可以是一个或多个图像单元,因此,编码设备可以从外部存储器获取的目标图像块的数量也是有限的,例如,在带宽限制的条件下,编码设备可以从外部存储器获取的目标图像块的数量小于或等于N,也就是说,N是在满足带宽限制条件下,编码设备可以从外部存储器获取的目标图像块的最大数量。假设在满足带宽限制条件下,编码设备可以从外部存储器获取的最多的目标图像块是如图9所示的4个目标图像块,即N=4。
相应的,在获取第M个目标图像块时,可以包括:
步骤S1101、确定第M个目标图像块中未被高速缓存存储的图像单元的数量。
如图9所示,搜索区域85中包括4个目标图像块,此处以第2个目标图像块即目标区域2内的搜索图像为例进行示意性说明,在获取第2个目标图像块时,首先确定第2个目标图像块中未被高速缓存存储的图像单元的数量,具体的,编码器可以将该第2个目标图像块包括的每个图像单元的地址信息发送给高速缓存,由高速缓存根据每个Cache Line携带的地址信息和该图像单元的地址信息,确定该第2个目标图像块包括的每个图像单元是否存储在该高速缓存中,从而确定出第2个目标图像块中未被高速缓存存储的图像单元的数量。
步骤S1102、当所述数量小于或等于第二数量阈值时,从外部存储器获取第M个目标图像块中未被高速缓存存储的图像单元,其中,所述第二数量阈值是根据第一数量阈值和前M-1个目标图像块中未被高速缓存存储的图像单元的数量确定的。
此处以M=3为例。由于在带宽限制的条件下,编码设备可以从外部存储器获取的图像单元的数量小于或等于第一数量阈值,并且编码设备是按序依次获取第1个目标图像块中未被高速缓存存储的图像单元、第2个目标图像块中未被高速缓存存储的图像单元、第3个目标图像块中未被高速缓存存储的图像单元、第4个目标图像块中未被高速缓存存储的图像单元。因此,当编码设备从外部存储器获取第3个目标图像块中未被高速缓存存储的图像单元时,需要根据第一数量阈值和前2个目标图像块中未被高速缓存存储的图像单元的数量(即,第1个目标图像块即目标区域1内的搜索图像中未被高速缓存存储的图像单元的数量和第2个目标图像块即目标区域2内的搜索图像中未被高速缓存存储的图像单元的数量),确定第二数量阈值,该第二数量阈值具体可以是第一数量阈值和前2个目标图像块中未被高速缓存存储的图像单元的数量的差值。如果第3个目标图像块中未被高速缓存存储的图像单元的数量小于或等于第二数量阈值,则编码设备从外部存储器获取第3个目标图像块中未被高速缓存存储的图像单元,否则,编码设备不再从外部存储器获取图像单元,即编码设备不再从外部存储器获取单元,例如不再从外部存储器获取第4个目标图像块即目标区域4内的搜索图像中未被高速缓存存储的图像单元,编码设备可以根据高速缓存中存储的前M-1个目标图像块对当前待编码图像块进行运动搜索,例如,编码设备可以根据前2个目标图像块(即第1个目标图像块即目标区域1内的搜索图像和第2个目标图像块即目标区域2内的搜索图像)进行运动搜索。
可选的,所述第一数量阈值是根据第三数量阈值和/或第四数量阈值确定的;其中,所述第三数量阈值是从外部存储器获取每一个待编码图像块对应的搜索图像中未被高速缓存存储的图像单元的预设最大数量;第四数量阈值是根据第五预设数量阈值和从外部存储器获取所述当前待编码图像块之前的K-1个待编码图像块对应的搜索图像中未被高速缓存存储的图像单元的数量确定的,所述当前待编码图像块为K个待编码图像块中的第K个待编码图像块,所述第五预设数量阈值是从外部存储器获取K个待编码图像块对应的搜索图像中未被高速缓存存储的图像单元的预设最大数量,所述K为大于或等于2的整数。
通常,为了保证峰值带宽不会太大,可设定编码设备从外部存储器获取每一个待编码图像块对应的搜索图像中未被高速缓存存储的图像单元的预设最大数量,该预设最大数量记为Th0,此处,将Th0记为第三数量阈值。
如图8所示,待编码图像块83是待编码图像82中的第K个待编码图像块,且待编码图像块83为当前待编码图像块。由于编码设备从外部存储器读取数据时消耗带宽资源,而编码器从高速缓存中读取数据时不消耗带宽资源,因此,编码器在对待编码图像块83编码时所需要的数据即为待编码图像块83对应的搜索图像中未被高速缓存存储的图像数据,也就是编码设备需要向外部存储器请求的待编码图像块83对应的搜索图像中的图像数据。但是,编码设备与外部存储器之间的带宽是有限的,假设在该带宽限制的条件下,编码设备可以从外部存储器读取的待编码图像块83对应的搜索图像中的图像数据量不能超过该待编码图像块83大小的M倍,若该待编码图像块83的大小为P个像素点,则待编码图像块83相当于
Figure BDA0002332662400000121
个Cache Line,编码设备可以从外部存储器读取的待编码图像块83对应的搜索图像中的图像数据量不能超过个Cache Line,也就是说,编码设备可以从外部存储器读取的待编码图像块83对应的搜索图像中的图像数据量的最大值为个Cache Line。在实际应用上,一般会采用一个滑动窗口的策略,保证编码设备可以从外部存储器读取的连续K个待编码图像块分别对应的搜索图像中的图像数据量不能超过
Figure BDA0002332662400000124
个Cache Line,即编码设备可以从外部存储器读取的连续K个待编码图像块分别对应的搜索图像中的图像数据量的最大值为
Figure BDA0002332662400000125
个Cache Line。此处,将
Figure BDA0002332662400000126
记为第五数量阈值。
由于编码器对待编码图像块83之前的K-1个待编码图像块编码时,编码设备可能已经从外部存储器中读取过该K-1个待编码图像块分别对应的搜索图像中的一部分图像数据,假设该部分图像数据的大小记为NumPreFreched1,NumPreFreched1具体可以是编码设备从外部存储器获取的待编码图像块83之前的K-1个待编码图像块对应的搜索图像中未被高速缓存存储的图像单元的数量。如果NumPreFreched1大于或者等于
Figure BDA0002332662400000131
则说明由于编码设备与外部存储器之间的带宽限制,编码设备无法从外部存储器读取待编码图像块83对应的搜索图像中的图像数据,如果NumPreFreched1小于
Figure BDA0002332662400000132
则说明编码设备可以从外部存储器读取待编码图像块83对应的搜索图像中的图像数据,根据
Figure BDA0002332662400000133
和NumPreFreched1可以确定第四数量阈值,该第四数量阈值具体可以是
Figure BDA0002332662400000134
和NumPreFreched1的差值。
在一些实施例中,所述第一数量阈值是第三数量阈值和第四数量阈值中的较小值。
也就是说,在NumPreFreched1小于的条件下,编码设备可以从外部存储器获取的待编码图像块83对应的搜索图像中的图像单元的最大个数为
Figure BDA0002332662400000136
此处,将
Figure BDA0002332662400000137
记为AllowedNum。
在其他一些实施例中,同一个待编码图像块可能对应多个搜索区域,该多个搜索区域可以在同一帧图像中,也可以不在同一帧图像中,假设待编码图像块83对应有两个搜索区域即第一搜索区域和第二搜索区域,编码设备先从外部存储器获取该第一搜索区域中未被高速缓存存储的图像数据,再从外部存储器获取该第二搜索区域中未被高速缓存存储的图像数据。若编码设备从外部存储器已获取的该第一搜索区域中未被高速缓存存储的图像单元的数量为NumPreFreched2,当编码设备在获取该第二搜索区域中未被高速缓存存储的图像数据时,不仅需要确定编码设备从外部存储器获取的待编码图像块83之前的K-1个待编码图像块对应的搜索图像中未被高速缓存存储的图像单元的数量即NumPreFreched1,还需要确定编码设备从外部存储器已获取的该第一搜索区域中未被高速缓存存储的图像单元的数量即NumPreFreched2,假设NumPreFreched1与NumPreFreched2的和值记为NumPreFreched,如果NumPreFreched大于或者等于
Figure BDA0002332662400000141
则说明由于编码设备与外部存储器之间的带宽限制,编码设备无法从外部存储器读取待编码图像块83对应的搜索图像中的图像数据,如果NumPreFreched小于
Figure BDA0002332662400000142
则说明编码设备可以从外部存储器读取待编码图像块83对应的搜索图像中的图像数据,且编码设备可以从外部存储器获取的待编码图像块83对应的搜索图像中的图像单元的最大个数为
Figure BDA0002332662400000143
此处,将
Figure BDA0002332662400000144
记为AllowedNum。
本实施例通过计算在带宽限制的条件下,编码设备可以从外部存储器获取的目标图像块的最大数量,可使得编码设备在带宽限制的条件尽可能从外部存储器获取最大面积的矩形图像块,从而提高了带宽的资源利用率。
在上述实施例的基础上,搜索区域中多个目标图像块的读取方法包括如下几种可能的实现方式:
在一种可能的实现方式中,第M-1个目标图像块是以前M-2个目标图像块构成的矩形图像块的一个边为边并且朝第一方向远离第M-2个目标图像块的矩形图像块;当第M-1个目标图像块包括搜索图像的边界图像时,第M个目标图像块是以前M-1个目标图像块构成的矩形图像块的一个边为边并且朝第二方向远离第M-1个目标图像块的矩形图像块,其中,第二方向不同于第一方向;当第M-1个目标图像块不包括搜索图像的边界图像时,第M个目标图像块是以前M-1个目标图像块构成的矩形图像块的一个边为边并且朝第一方向远离第M-1个目标图像块的矩形图像块。
如图12所示,84表示由预测运动矢量L2指向的对应图像块,120表示将对应图像块84对齐到图像单元边界之后的对应图像块。100表示将搜索区域85对齐到图像单元边界之后的搜索区域,本实施例将搜索区域85划分为5个目标图像块,其中,第1个目标图像块是目标区域1内的搜索图像,第2个目标图像块是目标区域2内的搜索图像,依次类推,第5个目标图像块是目标区域5内的搜索图像。其中,第1个目标图像块即是对应图像块84对齐到图像单元边界之后的对应图像块120。编码设备可以先获取第1个目标图像块中的图像单元,再获取其他4个目标图像块中的图像单元,获取的顺序可以是上左下右的顺序。
在其他实施例中,还可以将搜索区域85划分为如图13所示的5个目标图像块。编码设备在获取第1个目标图像块中的图像单元之后,可按照上左下右的顺序获取其他4个目标图像块中的图像单元。可以理解,此处只是示意性说明,并不限定搜索区域85的具体划分方法,也不限定划分后的多个目标图像块中的图像单元的获取顺序。
以图12所示的5个目标图像块为例,第1个目标图像块的4个顶点分别是A点、B点、C点和D点,假设A点坐标为(cUL_x,cUL_y),B点坐标为(cRB_x,cUL_y),C点坐标为(cUL_x,cRB_y)、D点坐标为(cRB_x,cRB_y)。搜索区域85的4个顶点分别是H点、S点、I点、T点,假设H点坐标为(UL_x,UL_y)、S点坐标为(RB_x,UL_y)、I点坐标为(UL_x,RB_y)、T点坐标为(RB_x,RB_y)。
读取该5个目标图像块中的图像单元的方法包括如下几个步骤:
第一步骤:编码器将区域ABCD内的所有图像单元的地址信息发送给高速缓存,高速缓存比较每个Cache Line携带的地址信息和该图像单元的地址信息,若该高速缓存中存在一个Cache Line携带的地址信息和该图像单元的地址信息一致,则说明该图像单元存储在该高速缓存中,若每个Cache Line携带的地址信息均与该图像单元的地址信息不一致,则说明该图像单元不在该高速缓存中,需要从外部存储器读取,从而确定出区域ABCD内有多少个图像单元需要从外部存储器读取,并将区域ABCD内需要从外部存储器读取的图像单元的个数记为Num1。将Num1和AllowedNum进行比较,如果Num1大于AllowedNum,则说明在带宽限制下无法获取第1个目标图像块,标记搜索区域85不可用,直接放弃对搜索区域85中搜索图像的读取和搜索,并执行如下第六步骤。如果Num1小于或等于AllowedNum,则表示区域ABCD内的所有图像单元均可以在带宽限制的条件下被成功读取,并标记搜索区域85可用,可用区域为(cUL_x,cUL_y)至(cRB_x,cRB_y),并且编码设备向外部存储器发送数据读取请求,以从外部存储器读取区域ABCD内未被高速缓存存储的图像单元,最后将AllowNum的值减去Num1,得到更新后的AllowNum,进一步执行第二步骤。
第二步骤:如图12所示,第2个目标图像块的4个顶点分别是J点、G点、A点和B点,J点坐标为(cUL_x,UL_y)、G点坐标为(cRB_x,UL_y)、A点坐标为(cUL_x,cUL_y)、B点坐标为(cRB_x,cUL_y)。该第2个目标图像块是以第1个目标图像块构成的矩形图像块的一个边例如AB为边,并且朝第一方向例如从下到上的方向远离第1个目标图像块的矩形图像块。对该第2个目标图像块的读取方法是:从左到右、从下到上一行一行读取,即从区域JGAB最下方一行的图像单元开始沿着从下到上的顺序,一行一行向高速缓存发送获取图像单元的请求,例如,先向高速缓存发送获取区域JGAB最下方一行每个图像单元的请求,并记录该行从左到右第一个图像单元左上角的坐标为(cUL_x,y2),可选的,将H点作为坐标原点、将过H点水平向右方向为该坐标的X轴,将过H点垂直向下方向为该坐标的Y轴,则y2=cUL_y-CacheLineHeight。CacheLineHeight表示一个CacheLine的高度,同时也是一个图像单元的高度。可选的,该请求中包括区域JGAB最下方一行每个图像单元的地址信息,高速缓存根据区域JGAB最下方一行每个图像单元的地址信息,确定该行图像单元中需要从外部存储器读取的图像单元的个数,该个数记为Num2。比较Num2和更新后的AllowNum,如果Num2大于更新后的AllowNum,则说明在带宽限制下无法获取该行的图像单元,标记搜索区域85可用,可用区域为(cUL_x,y2+CacheLineHeight)至(cRB_x,cRB_y),并执行第六步骤;如果Num2小于或等于更新后的AllowNum,则表示区域JGAB最下方一行的图像单元可以在带宽限制的条件下被成功读取,高速缓存向外部存储器发送数据读取请求,以从外部存储器读取该Num2个未被高速缓存存储的图像单元,最后将AllowNum的值减去Num2,得到更新后的AllowNum。依次类推,按照从下到上的顺序依次读取区域JGAB中每一行的图像单元,直到从外部存储器中将区域JGAB内未被高速缓存存储的图像单元全部读取出来或者AllowNum小于当前行中未被高速缓存存储的图像单元的个数。若能从外部存储器中将区域JGAB内未被高速缓存存储的图像单元全部读取出来,则进一步执行如下第三步骤;若AllowNum小于当前行中未被高速缓存存储的图像单元的个数,则进一步执行如下第六步骤。
第三步骤:如图12所示,第3个目标图像块的4个顶点分别是H点、J点、E点、C点,H点坐标为(UL_x,UL_y)、J点坐标为(cUL_x,UL_y)、E点坐标为(UL_x,cRB_y)、C点坐标为(cUL_x,cRB_y)。该第3个目标图像块是以第1个目标图像块和第2个目标图像块构成的矩形图像块的一个边例如JC为边,并且朝第二方向例如从右到左的方向远离第2个目标图像块的矩形图像块。对该第3个目标图像块的读取方法是:从上到下、从右到左一列一列读取,即从区域HJEC最右侧一列的图像单元开始沿着从右到左的顺序,一列一列向高速缓存发送获取图像单元的请求,例如,先向高速缓存发送获取区域HJEC最右侧一列每个图像单元的请求,并记录该列从上到下第一个图像单元左上角的坐标为(x3,UL_y),x3=cUL_x-CacheLineWidth。CacheLineWidth表示一个CacheLine的宽度,同时也是一个图像单元的宽度。高速缓存确定该列图像单元中需要从外部存储器读取的图像单元的个数,该个数记为Num3。比较Num3和更新后的AllowNum,如果Num3大于更新后的AllowNum,则说明在带宽限制下无法获取该列的图像单元,标记搜索区域85可用,可用区域为(x3+CacheLineWidth,UL_y)至(cRB_x,cRB_y),并执行第六步骤;如果Num3小于或等于更新后的AllowNum,则表示区域HJEC最右侧一列每个图像单元可以在带宽限制的条件下被成功读取,高速缓存向外部存储器发送数据读取请求,以从外部存储器读取该Num3个未被高速缓存存储的图像单元,最后将AllowNum的值减去Num3,得到更新后的AllowNum。依次类推,按照从右到左的顺序依次读取区域HJEC中每一列的图像单元,直到从外部存储器中将区域HJEC内未被高速缓存存储的图像单元全部读取出来或者AllowNum小于当前列中未被高速缓存存储的图像单元的个数。若能从外部存储器中将区域HJEC内未被高速缓存存储的图像单元全部读取出来,则进一步执行如下第四步骤;若AllowNum小于当前列中未被高速缓存存储的图像单元的个数,则进一步执行如下第六步骤。
第四步骤:如图12所示,第4个目标图像块的4个顶点分别是E点、D点、I点、F点,E点坐标为(UL_x,cRB_y)、D点坐标为(cRB_x,cRB_y)、I点坐标为(UL_x,RB_y)、F点坐标为(cRB_x,RB_y)。该第4个目标图像块是以第1个目标图像块、第2个目标图像块和第3个目标图像块构成的矩形图像块的一个边例如ED为边,并且朝第三方向即从上到下的方向远离第3个目标图像块的矩形图像块。对该第4个目标图像块的读取方法是:从左到右、从上到下一行一行读取,即从区域EDIF最上方一行的图像单元开始沿着从上到下的顺序,一行一行向高速缓存发送获取图像单元的请求,例如,先向高速缓存发送获取区域EDIF最上方一行每个图像单元的请求,并记录该行从左到右第一个图像单元左上角的坐标为(UL_x,y4),y4=cRB_y,高速缓存确定该行图像单元中需要从外部存储器读取的图像单元的个数,该个数记为Num4。比较Num4和更新后的AllowNum,如果Num4大于更新后的AllowNum,则说明在带宽限制下无法获取该行的图像单元,标记搜索区域85可用,可用区域为(UL_x,UL_y)至(cRB_x,y4),并执行第六步骤;如果Num4小于或等于更新后的AllowNum,则表示区域EDIF最上方一行的图像单元可以在带宽限制的条件下被成功读取,高速缓存向外部存储器发送数据读取请求,以从外部存储器读取该Num4个未被高速缓存存储的图像单元,最后将AllowNum的值减去Num4,得到更新后的AllowNum。依次类推,按照从上到下的顺序依次读取区域EDIF中每一行的图像单元,直到从外部存储器中将区域EDIF内未被高速缓存存储的图像单元全部读取出来或者AllowNum小于当前行中未被高速缓存存储的图像单元的个数。若能从外部存储器中将区域EDIF内未被高速缓存存储的图像单元全部读取出来,则进一步执行如下第五步骤;若AllowNum小于当前行中未被高速缓存存储的图像单元的个数,则进一步执行如下第六步骤。
第五步骤:如图12所示,第5个目标图像块的4个顶点分别是G点、S点、F点、T点,G点坐标为(cRB_x,UL_y)、S点坐标为(RB_x,UL_y)、F点坐标为(cRB_x,RB_y)、T点坐标为(RB_x,RB_y)。该第5个目标图像块是以第1个目标图像块、第2个目标图像块、第3个目标图像块和第4个目标图像块构成的矩形图像块的一个边例如GF为边,并且朝第四方向例如从左到右的方向远离第4个目标图像块的矩形图像块。对该第5个目标图像块的读取方法是:从上到下、从左到右一列一列读取,即从区域GSFT最左侧一列的图像单元开始沿着从左到右的顺序,一列一列向高速缓存发送获取图像单元的请求,例如,先向高速缓存发送获取区域GSFT最左侧一列每个图像单元的请求,并记录该列从上到下第一个图像单元左上角的坐标为(x5,UL_y),x5=cRB_x,高速缓存确定该列图像单元中需要从外部存储器读取的图像单元的个数,该个数记为Num5,比较Num5和更新后的AllowNum,如果Num5大于更新后的AllowNum,则说明在带宽限制下无法获取该列的图像单元,标记搜索区域85可用,可用区域为(UL_x,UL_y)至(x5,RB_y),并执行第六步骤;如果Num5小于或等于更新后的AllowNum,则表示区域GSFT最左侧一列的图像单元可以在带宽限制的条件下被成功读取,高速缓存向外部存储器发送数据读取请求,以从外部存储器读取该Num5个未被高速缓存存储的图像单元,最后将AllowNum的值减去Num5,得到更新后的AllowNum。依次类推,按照从左到右的顺序依次读取区域GSFT中每一列的图像单元,直到从外部存储器中将区域GSFT内未被高速缓存存储的图像单元全部读取出来或者AllowNum小于当前列中未被高速缓存存储的图像单元的个数。若能从外部存储器中将区域GSFT内未被高速缓存存储的图像单元全部读取出来,则标记搜索区域85可用,可用区域为(UL_x,UL_y)至(cRB_x,cRB_y)。
第六步骤:若搜索区域85不可用,则不再对该搜索区域85进行运动搜索;若搜索区域85可用,则在该搜索区域85中的可用区域内进行运动搜索。可以理解,第1个目标图像块即区域ABCD内的搜索图像是将对应图像块84对齐到图像单元边界之后的对应图像块,对应图像块84表示由预测运动矢量L2指向的对应图像块,且对应图像块84的大小和待编码图像块83的大小相同,因此,当该搜索区域85中的可用区域至少要包括第1个目标图像块才能够对待编码图像块83进行运动搜索,以从该可用区域中搜索出与待编码图像块83最匹配的图像块。
在一些实施例中,如图12所示的目标区域2即区域JGAB中的每一行图像单元可以看作是一个目标图像块,目标区域3即区域HJEC中的每一列图像单元也可以看作是一个目标图像块,目标区域4即区域EDIF中的每一行图像单元可以看作是一个目标图像块,目标区域5即区域GSFT中的每一列图像单元也可以看作是一个目标图像块。
例如,区域JGAB最下方一行的图像单元构成一个目标图像块,在依次读取区域JGAB中每一行的图像单元时,将当前行的图像单元构成的目标图像块记为第M-1个目标图像块,如果当前行不包括搜索图像的边界图像例如边界JG,则继续沿着第一方向即从下到上的方向获取第M个目标图像块即第M-1个目标图像块上一行的图像单元。也就是说,第M个目标图像块是以前M-1个目标图像块构成的矩形图像块的一个边例如第M-1个目标图像块的上边为边并且朝第一方向即从下到上的方向远离第M-1个目标图像块的矩形图像块。
如果当前行包括了搜索图像的边界图像例如边界JG,说明当前行已经是区域JGAB最上方一行,前M-1个目标图像块构成的矩形图像块对应于区域JGCD。按照靠近已有区域读取目标图像块的原则,下一个需要获取的目标图像块即第M个目标图像块可以是区域HJEC最右侧一行的图像单元构成的目标图像块,可见,该第M个目标图像块是以前M-1个目标图像块构成的矩形图像块的一个边例如JC为边,并且朝第二方向例如从右到左的方向远离第M-1个目标图像块的矩形图像块。
在另一种可能的实现方式中,第M-1个目标图像块是以前M-2个目标图像块构成的矩形图像块的一个边为边并且朝第一方向远离第M-2个目标图像块的矩形图像块;所述第M个目标图像块是以前M-1个目标图像块构成的矩形图像块的一个边为边并且朝第二方向远离第M-2个目标图像块的矩形图像块,其中,第二方向不同于第一方向。
在读取搜索区域85中的搜索图像时,还可以按照如图14所示的目标图像块的顺序读取,例如,第1个目标图像块是目标区域1中的搜索图像。在成功读取到目标区域1中的搜索图像后,以目标区域1的一个边例如AB为边并且朝第一方向例如从下到上远离第1个目标图像块的方向读取第2个目标图像块即目标区域2中的搜索图像。
在成功读取到目标区域2中的搜索图像后,以目标区域1和目标区域2构成的矩形区域EFCD的一个边例如FD为边并且朝第二方向例如从左到右远离第2个目标图像块的方向读取第3个目标图像块即目标区域3中的搜索图像。
在成功读取到目标区域3中的搜索图像后,以目标区域1、目标区域2和目标区域3构成的矩形区域EGCH的一个边例如CH为边并且朝第三方向例如从上到下远离第3个目标图像块的方向读取第4个目标图像块即目标区域4中的搜索图像。
在成功读取到目标区域4中的搜索图像后,以目标区域1、目标区域2、目标区域3和目标区域4构成的矩形区域EGJI的一个边例如EJ为边并且朝第四方向例如从右到左远离第4个目标图像块的方向读取第5个目标图像块即目标区域5中的搜索图像。
依次类推,在成功读取到目标区域5中的搜索图像后,还可以按照读取第1个目标图像块的方法来读取目标区域6中的搜索图像;在成功读取到目标区域6中的搜索图像后,还可以按照读取第2个目标图像块的方法来读取目标区域7中的搜索图像,直到搜索区域85中的搜索图像全部被读取,或者,在带宽限制下,从搜索区域85中读取的搜索图像是一个小于搜索区域85且大于第1个目标图像块的矩形图像块。
在又一种可能的实现方式中,所述第M个目标图像块是以前M-1个目标图像块构成的矩形图像块的一个边为边并且朝第二方向远离第M-2个目标图像块的矩形图像块,其中,所述第M个目标图像块中与所述一个边相邻的边的长度为一个高速缓存块能存储的图像单元的宽度或高度。
如图14所示,第2个目标图像块即目标区域2中的搜索图像可以是一行连续的多个图像单元,目标区域2是以目标区域1的一个边例如AB为边并且朝第一方向远离第1个目标图像块的矩形图像块,目标区域2中与AB边相邻的边AE或BF是高速缓存块能存储的图像单元的高度。第3个目标图像块即目标区域3中的搜索图像可以是一列连续的多个图像单元,目标区域3是以目标区域1和目标区域2构成的矩形区域的一个边例如FD为边并且朝第二方向远离第2个目标图像块的矩形图像块,目标区域3中与FD边相邻的边FG或DH是高速缓存块能存储的图像单元的宽度。
本实施例通过在搜索区域中首先获取由待编码图像块的预测运动矢量指向的对应图像块中的图像单元,保证该搜索区域中的可用区域至少包括该对应图像块,使得该可用区域可用于对该待编码图像块进行运动搜索;进一步按照靠近已有可用区域读取目标图像块的原则,按序获取与该可用区域相邻的矩形图像块,使得可用区域始终保持矩形区域,在满足带宽限制的条件下持续获取可用区域,使得可用区域的面积达到最大,提高了带宽的资源利用率。
本发明实施例提供一种编码设备的控制装置。图15为本发明实施例提供的编码设备的控制装置的结构图,如图15所示,编码设备的控制装置150包括:存储器151和处理器152。存储器151用于存储程序代码;处理器152,调用所述程序代码,当程序代码被执行时,用于执行以下操作:在当前待编码图像块的参考图像中确定搜索区域,所述搜索区域内的参考图像为搜索图像,所述参考图像存储在外部存储器中;按照顺序从外部存储器获取N个目标图像块中未被高速缓存存储的图像单元,其中,目标图像块为所述搜索区域中目标区域内的搜索图像,所述N为大于或等于2的整数,所述N个目标图像块的前M个目标图像块构成矩形图像,M为小于或等于N的任意整数;将所述获取的图像单元存储到高速缓存,其中,存储在高速缓存中的N个目标图像块用于对当前待编码图像块的运动搜索。
可选的,每一个图像单元以一个高速缓存块为单位来获取。
可选的,所述N为在满足带宽限制条件时目标图像块的最大数量,其中,所述满足带宽限制条件包括:从外部存储器获取所述图像单元的数量小于或等于第一数量阈值。
可选的,处理器152在获取第M个目标图像块时,具体用于:确定第M个目标图像块中未被高速缓存存储的图像单元的数量;当所述数量小于或等于第二数量阈值时,从外部存储器获取第M个目标图像块中未被高速缓存存储的图像单元,其中,所述第二数量阈值是根据第一数量阈值和前M-1个目标图像块中未被高速缓存存储的图像单元的数量确定的。
可选的,所述第一数量阈值是根据第三数量阈值和/或第四数量阈值确定的;其中,所述第三数量阈值是从外部存储器获取每一个待编码图像块对应的搜索图像中未被高速缓存存储的图像单元的预设最大数量;第四数量阈值是根据第五预设数量阈值和从外部存储器获取所述当前待编码图像块之前的K-1个待编码图像块对应的搜索图像中未被高速缓存存储的图像单元的数量确定的,所述当前待编码图像块为K个待编码图像块中的第K个待编码图像块,所述第五预设数量阈值是从外部存储器获取K个待编码图像块对应的搜索图像中未被高速缓存存储的图像单元的预设最大数量,所述K为大于或等于2的整数。
可选的,所述第一数量阈值是第三数量阈值和第四数量阈值中的较小值。
可选的,所述N个目标图像块中至少有一个目标图像块不是矩形图像块。
可选的,所述N个目标图像块中的每一个目标图像块为矩形图像块。
可选的,第M-1个目标图像块是以前M-2个目标图像块构成的矩形图像块的一个边为边并且朝第一方向远离第M-2个目标图像块的矩形图像块;当第M-1个目标图像块包括搜索图像的边界图像时,第M个目标图像块是以前M-1个目标图像块构成的矩形图像块的一个边为边并且朝第二方向远离第M-1个目标图像块的矩形图像块,其中,第二方向不同于第一方向;当第M-1个目标图像块不包括搜索图像的边界图像时,第M个目标图像块是以前M-1个目标图像块构成的矩形图像块的一个边为边并且朝第一方向远离第M-1个目标图像块的矩形图像块。
可选的,第M-1个目标图像块是以前M-2个目标图像块构成的矩形图像块的一个边为边并且朝第一方向远离第M-2个目标图像块的矩形图像块;所述第M个目标图像块是以前M-1个目标图像块构成的矩形图像块的一个边为边并且朝第二方向远离第M-2个目标图像块的矩形图像块,其中,第二方向不同于第一方向。
可选的,所述第M个目标图像块是以前M-1个目标图像块构成的矩形图像块的一个边为边并且朝第二方向远离第M-2个目标图像块的矩形图像块,其中,所述第M个目标图像块中与所述一个边相邻的边的长度为一个高速缓存块能存储的图像单元的宽度或高度。
可选的,处理器152在当前待编码图像块的参考图像中确定搜索区域时,具体用于:根据当前待编码图像块的预测运动矢量在所述参考图像中确定搜索区域;其中,所述N个目标图像块中的第一个目标图像块至少包括搜索图像中由所述预测运动矢量指向的对应图像块。
本发明实施例提供的控制装置的具体原理和实现方式均与图1所示实施例类似,此处不再赘述。
本实施例通过在参考图像中确定当前待编码图像块对应的搜索区域,在该搜索区域中确定N个目标图像块,使得该N个目标图像块构成矩形图像,该N个目标图像块的前N-1个目标图像块构成矩形图像,该N个目标图像块的前N-2个目标图像块构成矩形图像,依次类推,直到该N个目标图像块的前1个目标图像块构成矩形图像,进一步按照顺序从外部存储器获取该N个目标图像块中未被高速缓存存储的图像单元,在编码设备和外部缓存器带宽限制的条件下,使得编码设备可以每次获取到该搜索区域中的一个矩形图像,解决了编码设备和外部缓存器之间的带宽被用尽时,编码设备获取到的该搜索区域中的图像不是矩形图像,为了满足运动搜索需要对该图像进行裁剪而导致带宽资源利用率低的问题。
另外,本实施例还提供一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行以实现上述实施例所述的编码设备的控制方法。
在本发明所提供的几个实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用硬件加软件功能单元的形式实现。
上述以软件功能单元的形式实现的集成的单元,可以存储在一个计算机可读取存储介质中。上述软件功能单元存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)或处理器(processor)执行本发明各个实施例所述方法的部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(Read-Only Memory,ROM)、随机存取存储器(Random Access Memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
本领域技术人员可以清楚地了解到,为描述的方便和简洁,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将装置的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。上述描述的装置的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
最后应说明的是:以上各实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围。

Claims (25)

1.一种编码设备的控制方法,其特征在于,包括:
在当前待编码图像块的参考图像中确定搜索区域,所述搜索区域内的参考图像为搜索图像,所述参考图像存储在外部存储器中;
按照顺序从外部存储器获取N个目标图像块中未被高速缓存存储的图像单元,其中,目标图像块为所述搜索区域中目标区域内的搜索图像,所述N为大于或等于2的整数,所述N个目标图像块的前M个目标图像块构成矩形图像,M为小于或等于N的任意整数;
将所述获取的图像单元存储到高速缓存,其中,存储在高速缓存中的N个目标图像块用于对当前待编码图像块的运动搜索。
2.根据权利要求1所述的方法,其特征在于,每一个图像单元以一个高速缓存块为单位来获取。
3.根据权利要求2所述的方法,其特征在于,所述N为在满足带宽限制条件时目标图像块的最大数量,其中,所述满足带宽限制条件包括:从外部存储器获取所述图像单元的数量小于或等于第一数量阈值。
4.根据权利要求3所述的方法,其特征在于,在获取第M个目标图像块时,所述方法包括:
确定第M个目标图像块中未被高速缓存存储的图像单元的数量;
当所述数量小于或等于第二数量阈值时,从外部存储器获取第M个目标图像块中未被高速缓存存储的图像单元,其中,所述第二数量阈值是根据第一数量阈值和前M-1个目标图像块中未被高速缓存存储的图像单元的数量确定的。
5.根据权利要求3或4所述的方法,其特征在于,所述第一数量阈值是根据第三数量阈值和/或第四数量阈值确定的;
其中,所述第三数量阈值是从外部存储器获取每一个待编码图像块对应的搜索图像中未被高速缓存存储的图像单元的预设最大数量;
第四数量阈值是根据第五预设数量阈值和从外部存储器获取所述当前待编码图像块之前的K-1个待编码图像块对应的搜索图像中未被高速缓存存储的图像单元的数量确定的,所述当前待编码图像块为K个待编码图像块中的第K个待编码图像块,所述第五预设数量阈值是从外部存储器获取K个待编码图像块对应的搜索图像中未被高速缓存存储的图像单元的预设最大数量,所述K为大于或等于2的整数。
6.根据权利要求5所述的方法,其特征在于,所述第一数量阈值是第三数量阈值和第四数量阈值中的较小值。
7.根据权利要求1-6任一项所述的方法,其特征在于,所述N个目标图像块中至少有一个目标图像块不是矩形图像块。
8.根据权利要求1-6任一项所述的方法,其特征在于,所述N个目标图像块中的每一个目标图像块为矩形图像块。
9.根据权利要求8所述的方法,其特征在于,第M-1个目标图像块是以前M-2个目标图像块构成的矩形图像块的一个边为边并且朝第一方向远离第M-2个目标图像块的矩形图像块;
当第M-1个目标图像块包括搜索图像的边界图像时,第M个目标图像块是以前M-1个目标图像块构成的矩形图像块的一个边为边并且朝第二方向远离第M-1个目标图像块的矩形图像块,其中,第二方向不同于第一方向;
当第M-1个目标图像块不包括搜索图像的边界图像时,第M个目标图像块是以前M-1个目标图像块构成的矩形图像块的一个边为边并且朝第一方向远离第M-1个目标图像块的矩形图像块。
10.根据权利要求8或9所述的方法,其特征在于,
第M-1个目标图像块是以前M-2个目标图像块构成的矩形图像块的一个边为边并且朝第一方向远离第M-2个目标图像块的矩形图像块;
所述第M个目标图像块是以前M-1个目标图像块构成的矩形图像块的一个边为边并且朝第二方向远离第M-2个目标图像块的矩形图像块,其中,第二方向不同于第一方向。
11.根据权利要求8-10任一项所述的方法,其特征在于,所述第M个目标图像块是以前M-1个目标图像块构成的矩形图像块的一个边为边并且朝第二方向远离第M-2个目标图像块的矩形图像块,其中,所述第M个目标图像块中与所述一个边相邻的边的长度为一个高速缓存块能存储的图像单元的宽度或高度。
12.根据权利要求1-11任一项所述的方法,其特征在于,所述在当前待编码图像块的参考图像中确定搜索区域包括:
根据当前待编码图像块的预测运动矢量在所述参考图像中确定搜索区域;
其中,所述N个目标图像块中的第一个目标图像块至少包括搜索图像中由所述预测运动矢量指向的对应图像块。
13.一种编码设备的控制装置,其特征在于,包括:存储器和处理器;
所述存储器用于存储程序代码;
所述处理器,调用所述程序代码,当程序代码被执行时,用于执行以下操作:
在当前待编码图像块的参考图像中确定搜索区域,所述搜索区域内的参考图像为搜索图像,所述参考图像存储在外部存储器中;
按照顺序从外部存储器获取N个目标图像块中未被高速缓存存储的图像单元,其中,目标图像块为所述搜索区域中目标区域内的搜索图像,所述N为大于或等于2的整数,所述N个目标图像块的前M个目标图像块构成矩形图像,M为小于或等于N的任意整数;
将所述获取的图像单元存储到高速缓存,其中,存储在高速缓存中的N个目标图像块用于对当前待编码图像块的运动搜索。
14.根据权利要求13所述的控制装置,其特征在于,每一个图像单元以一个高速缓存块为单位来获取。
15.根据权利要求14所述的控制装置,其特征在于,所述N为在满足带宽限制条件时目标图像块的最大数量,其中,所述满足带宽限制条件包括:从外部存储器获取所述图像单元的数量小于或等于第一数量阈值。
16.根据权利要求15所述的控制装置,其特征在于,所述处理器在获取第M个目标图像块时,具体用于:
确定第M个目标图像块中未被高速缓存存储的图像单元的数量;
当所述数量小于或等于第二数量阈值时,从外部存储器获取第M个目标图像块中未被高速缓存存储的图像单元,其中,所述第二数量阈值是根据第一数量阈值和前M-1个目标图像块中未被高速缓存存储的图像单元的数量确定的。
17.根据权利要求15或16所述的控制装置,其特征在于,所述第一数量阈值是根据第三数量阈值和/或第四数量阈值确定的;
其中,所述第三数量阈值是从外部存储器获取每一个待编码图像块对应的搜索图像中未被高速缓存存储的图像单元的预设最大数量;
第四数量阈值是根据第五预设数量阈值和从外部存储器获取所述当前待编码图像块之前的K-1个待编码图像块对应的搜索图像中未被高速缓存存储的图像单元的数量确定的,所述当前待编码图像块为K个待编码图像块中的第K个待编码图像块,所述第五预设数量阈值是从外部存储器获取K个待编码图像块对应的搜索图像中未被高速缓存存储的图像单元的预设最大数量,所述K为大于或等于2的整数。
18.根据权利要求17所述的控制装置,其特征在于,所述第一数量阈值是第三数量阈值和第四数量阈值中的较小值。
19.根据权利要求13-18任一项所述的控制装置,其特征在于,所述N个目标图像块中至少有一个目标图像块不是矩形图像块。
20.根据权利要求13-18任一项所述的控制装置,其特征在于,所述N个目标图像块中的每一个目标图像块为矩形图像块。
21.根据权利要求20所述的控制装置,其特征在于,第M-1个目标图像块是以前M-2个目标图像块构成的矩形图像块的一个边为边并且朝第一方向远离第M-2个目标图像块的矩形图像块;
当第M-1个目标图像块包括搜索图像的边界图像时,第M个目标图像块是以前M-1个目标图像块构成的矩形图像块的一个边为边并且朝第二方向远离第M-1个目标图像块的矩形图像块,其中,第二方向不同于第一方向;
当第M-1个目标图像块不包括搜索图像的边界图像时,第M个目标图像块是以前M-1个目标图像块构成的矩形图像块的一个边为边并且朝第一方向远离第M-1个目标图像块的矩形图像块。
22.根据权利要求20或21所述的控制装置,其特征在于,
第M-1个目标图像块是以前M-2个目标图像块构成的矩形图像块的一个边为边并且朝第一方向远离第M-2个目标图像块的矩形图像块;
所述第M个目标图像块是以前M-1个目标图像块构成的矩形图像块的一个边为边并且朝第二方向远离第M-2个目标图像块的矩形图像块,其中,第二方向不同于第一方向。
23.根据权利要求20-22任一项所述的控制装置,其特征在于,所述第M个目标图像块是以前M-1个目标图像块构成的矩形图像块的一个边为边并且朝第二方向远离第M-2个目标图像块的矩形图像块,其中,所述第M个目标图像块中与所述一个边相邻的边的长度为一个高速缓存块能存储的图像单元的宽度或高度。
24.根据权利要求13-23任一项所述的控制装置,其特征在于,所述处理器在当前待编码图像块的参考图像中确定搜索区域时,具体用于:
根据当前待编码图像块的预测运动矢量在所述参考图像中确定搜索区域;
其中,所述N个目标图像块中的第一个目标图像块至少包括搜索图像中由所述预测运动矢量指向的对应图像块。
25.一种计算机可读存储介质,其特征在于,其上存储有计算机程序,所述计算机程序被处理器执行以实现如权利要求1-12任一项所述的方法。
CN201880042194.8A 2018-09-30 2018-09-30 编码设备的控制方法、装置及存储介质 Pending CN110800301A (zh)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/CN2018/109062 WO2020062226A1 (zh) 2018-09-30 2018-09-30 编码设备的控制方法、装置及存储介质

Publications (1)

Publication Number Publication Date
CN110800301A true CN110800301A (zh) 2020-02-14

Family

ID=69438543

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201880042194.8A Pending CN110800301A (zh) 2018-09-30 2018-09-30 编码设备的控制方法、装置及存储介质

Country Status (3)

Country Link
US (1) US20210233280A1 (zh)
CN (1) CN110800301A (zh)
WO (1) WO2020062226A1 (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2022061573A1 (zh) * 2020-09-23 2022-03-31 深圳市大疆创新科技有限公司 运动搜索方法、视频编码装置及计算机可读存储介质
WO2022206166A1 (zh) * 2021-04-01 2022-10-06 Oppo广东移动通信有限公司 在视频编码装置中进行图像处理的方法、装置及系统

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2010124736A1 (en) * 2009-04-30 2010-11-04 Telefonaktiebolaget Lm Ericsson (Publ) Efficient internal cache for hardware motion estimation
CN102497558A (zh) * 2004-06-27 2012-06-13 苹果公司 编码和解码图像
US20120237133A1 (en) * 2011-03-17 2012-09-20 Samsung Electronics Co., Ltd Motion estimation device and method of estimating motion thereof
US20140010303A1 (en) * 2012-07-03 2014-01-09 Mstar Semiconductor, Inc. Motion compensation image processing method and associated apparatus
CN104683816A (zh) * 2013-11-26 2015-06-03 Vixs系统公司 利用移动窗口进行运动补偿的方法和设备

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN100551056C (zh) * 2008-06-06 2009-10-14 南京邮电大学 基于高级加密标准的视频加密方法
JP6438777B2 (ja) * 2015-01-30 2018-12-19 ルネサスエレクトロニクス株式会社 画像処理装置および半導体装置

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102497558A (zh) * 2004-06-27 2012-06-13 苹果公司 编码和解码图像
WO2010124736A1 (en) * 2009-04-30 2010-11-04 Telefonaktiebolaget Lm Ericsson (Publ) Efficient internal cache for hardware motion estimation
US20120237133A1 (en) * 2011-03-17 2012-09-20 Samsung Electronics Co., Ltd Motion estimation device and method of estimating motion thereof
US20140010303A1 (en) * 2012-07-03 2014-01-09 Mstar Semiconductor, Inc. Motion compensation image processing method and associated apparatus
CN104683816A (zh) * 2013-11-26 2015-06-03 Vixs系统公司 利用移动窗口进行运动补偿的方法和设备

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2022061573A1 (zh) * 2020-09-23 2022-03-31 深圳市大疆创新科技有限公司 运动搜索方法、视频编码装置及计算机可读存储介质
WO2022206166A1 (zh) * 2021-04-01 2022-10-06 Oppo广东移动通信有限公司 在视频编码装置中进行图像处理的方法、装置及系统

Also Published As

Publication number Publication date
WO2020062226A1 (zh) 2020-04-02
US20210233280A1 (en) 2021-07-29

Similar Documents

Publication Publication Date Title
CN107633526B (zh) 一种图像跟踪点获取方法及设备、存储介质
US8619862B2 (en) Method and device for generating an image data stream, method and device for reconstructing a current image from an image data stream, image data stream and storage medium carrying an image data stream
JP6263538B2 (ja) マルチメディアデータ処理のための方法及びシステム
US20170006285A1 (en) Method and Device for Coding Image and Method and Device for Decoding Image
CN103609117A (zh) 编码和解码图像的方法及装置
CN105430417B (zh) 编码方法、解码方法、装置及电子设备
JP2022500890A (ja) ビデオ画像成分の予測方法、装置及びコンピュータ記憶媒体
US9769494B2 (en) Adaptive search window positioning for video encoding
US20200128252A1 (en) Variable Frame Rate Encoding Method and Device, Computer Device and Computer Readable Storage Medium
CN107396112A (zh) 一种编码方法及装置、计算机装置、可读存储介质
GB2560548A (en) Video data processing system
US20210233280A1 (en) Encoding device control method and device, and storage medium
CN108377394A (zh) 视频编码器的图像数据读取方法、计算机装置及计算机可读存储介质
CN113112542A (zh) 一种视觉定位方法、装置、电子设备及存储介质
CN113436057B (zh) 数据处理方法及双目立体匹配方法
EP2953357A1 (en) Video encoding method, decoding method and apparatus
CN111179309A (zh) 一种跟踪方法及设备
CN110741635A (zh) 编码方法、解码方法、编码设备和解码设备
CN109727187B (zh) 用于调整多个感兴趣区域数据的存储位置的方法和装置
CN114157868B (zh) 视频帧的编码模式筛选方法、装置及电子设备
EP3804333A1 (en) Prediction for light-field coding and decoding
JP5906993B2 (ja) 符号化装置、符号化方法、及びプログラム
US20240070924A1 (en) Compression of temporal data by using geometry-based point cloud compression
CN112601029B (zh) 一种已知背景先验信息的视频分割方法、终端和存储介质
CN109660810B (zh) 一种数据编码方法

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
WD01 Invention patent application deemed withdrawn after publication
WD01 Invention patent application deemed withdrawn after publication

Application publication date: 20200214