CN115984090A - 一种图片处理方法、装置、电子设备及存储介质 - Google Patents
一种图片处理方法、装置、电子设备及存储介质 Download PDFInfo
- Publication number
- CN115984090A CN115984090A CN202211533194.2A CN202211533194A CN115984090A CN 115984090 A CN115984090 A CN 115984090A CN 202211533194 A CN202211533194 A CN 202211533194A CN 115984090 A CN115984090 A CN 115984090A
- Authority
- CN
- China
- Prior art keywords
- target
- source
- splitting
- graph
- image
- 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 26
- 238000000034 method Methods 0.000 claims abstract description 70
- 238000012545 processing Methods 0.000 claims abstract description 44
- 238000006243 chemical reaction Methods 0.000 claims abstract description 24
- 230000015654 memory Effects 0.000 claims description 32
- 238000004590 computer program Methods 0.000 claims description 14
- 230000008901 benefit Effects 0.000 abstract description 5
- 101000685982 Homo sapiens NAD(+) hydrolase SARM1 Proteins 0.000 abstract description 4
- 102100023356 NAD(+) hydrolase SARM1 Human genes 0.000 abstract description 4
- 239000000849 selective androgen receptor modulator Substances 0.000 abstract description 4
- 230000009466 transformation Effects 0.000 description 27
- 230000008569 process Effects 0.000 description 18
- 238000010586 diagram Methods 0.000 description 16
- 230000006870 function Effects 0.000 description 7
- PXFBZOLANLWPMH-UHFFFAOYSA-N 16-Epiaffinine Natural products C1C(C2=CC=CC=C2N2)=C2C(=O)CC2C(=CC)CN(C)C1C2CO PXFBZOLANLWPMH-UHFFFAOYSA-N 0.000 description 6
- 230000000694 effects Effects 0.000 description 5
- 229910003460 diamond Inorganic materials 0.000 description 4
- 239000010432 diamond Substances 0.000 description 4
- 230000003068 static effect Effects 0.000 description 4
- 238000004364 calculation method Methods 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 3
- 238000000926 separation method Methods 0.000 description 3
- 230000008859 change Effects 0.000 description 2
- 239000000463 material Substances 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 238000013528 artificial neural network Methods 0.000 description 1
- 230000002457 bidirectional effect Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 238000004422 calculation algorithm Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000005192 partition Methods 0.000 description 1
- 230000000750 progressive effect Effects 0.000 description 1
- 238000000844 transformation Methods 0.000 description 1
Images
Landscapes
- Image Processing (AREA)
Abstract
本公开提供了一种图片处理方法、装置、电子设备及存储介质,其中,该方法包括:获取带有源像素值的源图和未带有目标像素值的目标图;基于预设拆分尺寸,对目标图进行拆分,得到多个目标子图;基于目标子图,确定源图中与目标子图对应的源子图,并判断源子图所包含的像素量是否与预设阈值一致;若是,则基于源子图中的各个源像素值确定目标子图中的各个目标像素值。本公开基于预设拆分尺寸进行拆分后再进行图片处理,这样拆分后的目标子图所对应的源子图所包含的像素量更能够符合针对SARM设置的预设阈值,从而能够确保在有效拆分的情况下,确保源图与目标图之间的转换关系,整体的图片处理性能更佳。
Description
技术领域
本公开涉及图片处理技术领域,具体而言,涉及一种图片处理方法、装置、电子设备及存储介质。
背景技术
在对图片进行处理的系统级芯片(System on Chip,SOC)设计中,一般会增加硬件加速器来完成对图片的各种变换处理,比如仿射变换,尺寸变换等。
在利用硬件加速器对图片处理的过程中,一般会将源图片的数据存放在双倍速率(Double Data Rate,DDR)存储器中。与此同时,为了减少DDR的带宽压力,一般会在硬件加速器中增加内部静态随机存取存储器(Static Random-Access Memory,SRAM)模块,将源图先从DDR读取到SRAM中再进行处理。
基于SARM如何更好的确保图片处理的处理性能,是需要解决的问题。
发明内容
本公开实施例至少提供一种图片处理方法、装置、电子设备及存储介质,以提升图片处理的性能。
第一方面,本公开实施例提供了一种图片处理方法,包括:
获取带有源像素值的源图,和获取未带有目标像素值的目标图;
基于预设拆分尺寸,对所述目标图进行拆分,得到多个目标子图;
基于所述目标子图,确定所述源图中与所述目标子图对应的源子图,并判断所述源子图所包含的像素量是否与预设阈值一致;
若是,则基于所述源子图中的各个源像素值确定所述目标子图中的各个目标像素值。
在一种可能的实施方式中,所述方法还包括:
若否,则调整所述预设拆分尺寸,对所述目标图重新拆分。
在一种可能的实施方式中,所述方法还包括:
若所述源子图所包含的像素量大于预设阈值,则减小所述预设拆分尺寸;若所述源子图所包含的像素量小于预设阈值,则增大所述预设拆分尺寸。
在一种可能的实施方式中,所述基于预设拆分尺寸,对所述目标图进行拆分,得到多个目标子图,包括:
通过拆方方式确定第一预设拆分尺寸,通过拆条方式确定第二预设拆分尺寸;
基于第一预设拆分尺寸和第二预设拆分尺寸,分别对所述目标图进行拆分,对应得到拆方目标子图和拆条目标子图。
在一种可能的实施方式中,所述第一预设拆分尺寸的宽和高均小于所述目标图的宽和高,所述第二预设拆分尺寸的宽或高对应等于所述目标图的宽或高。
在一种可能的实施方式中,所述方法还包括:
确定与所述拆方目标子图和所述拆条目标子图对应的拆方源子图和拆条源子图,所述拆方源子图和所述拆条源子图所包含的像素量均与预设阈值一致时,选取所述拆方源子图和所述拆条源子图中数量最少的源子图确定对应的目标子图中的各个目标像素值。
在一种可能的实施方式中,所述拆方源子图和所述拆条源子图所包含的像素量均与预设阈值一致,且所述拆方源子图和所述拆条源子图数量一致时,选取所述拆条源子图确定所述拆条目标子图中的各个目标像素值。
在一种可能的实施方式中,所述通过拆方方式确定第一预设拆分尺寸,包括:
确定在图片行方向上的至少一条第一分割线及在图片列方向上的至少一条第二分割线;
按照至少一条所述第一分割线及至少一条所述第二分割线对所述目标图进行拆方,得到多个拆方目标子图。
在一种可能的实施方式中,所述通过拆条方式确定第二预设拆分尺寸,包括:
确定在图片行方向上的至少一条第三分割线;
按照至少一条所述第三分割线对所述目标图进行拆条,得到多个拆条目标子图;或者,
确定在图片列方向上的至少一条第四分割线;
按照至少一条所述第四分割线对所述目标图进行拆条,得到多个拆条目标子图。
在一种可能的实施方式中,所述确定所述源图中与所述目标子图对应的源子图,包括:
获取所述源图所在第一图像坐标系及所述目标图所在第二图像坐标系之间的转换关系;
基于所述转换关系确定所述源图中与所述目标子图对应的源子图。
在一种可能的实施方式中,确定所述源子图所包含的像素量,包括:
针对所述目标子图中的每个待确定目标像素点,基于所述转换关系从所述源子图中确定与所述待确定目标像素点对应的源像素点;
基于各个待确定目标像素点分别对应的源像素点,确定与所述目标子图对应的源子图所包含的像素量。
在一种可能的实施方式中,所述基于所述源子图中的各个源像素值确定所述目标子图中的各个目标像素值,包括:
针对所述目标子图中的每个待确定目标像素点,确定所述待确定目标像素点对应的源像素点的源像素值;将所述源像素值确定为所述待确定目标像素点的目标像素值。
第二方面,本公开还提供了一种图片处理装置,包括:
获取模块,用于获取带有源像素值的源图,和获取未带有目标像素值的目标图;
拆分模块,用于基于预设拆分尺寸,对所述目标图进行拆分,得到多个目标子图;
判断模块,用于基于所述目标子图,确定所述源图中与所述目标子图对应的源子图,并判断所述源子图所包含的像素量是否与预设阈值一致;
确定模块,用于基于所述源子图中的各个源像素值确定所述目标子图中的各个目标像素值。
第三方面,本公开还提供了一种电子设备,包括:处理器、存储器和总线,所述存储器存储有所述处理器可执行的机器可读指令,当电子设备运行时,所述处理器与所述存储器之间通过总线通信,所述机器可读指令被所述处理器执行时执行如第一方面及其各种实施方式中任一项所述的图片处理方法。
第四方面,本公开还提供了一种计算机可读存储介质,该计算机可读存储介质上存储有计算机程序,该计算机程序被处理器运行时执行如第一方面及其各种实施方式中任一项所述的图片处理方法。
采用上述图片处理方法、装置、电子设备及存储介质,在获取到带有源像素值的源图和未带有目标像素值的目标图的情况下,基于预设拆分尺寸对目标图进行拆分,而后确定与拆分得到的目标子图对应的源子图,并判断源子图所包含的像素量是否与预设阈值一致,在一致的情况下,基于源子图中的各个源像素值确定目标子图中的各个目标像素值。本公开基于预设拆分尺寸进行拆分后再进行图片处理,这主要是考虑到SRAM的尺寸通常不会特别大,这样拆分后的目标子图所对应的源子图所包含的像素量更能够符合针对SARM设置的预设阈值,从而能够确保在有效拆分的情况下,确保源图与目标图之间的转换关系,整体的图片处理性能更佳。
本公开的其他优点将配合以下的说明和附图进行更详细的解说。
应当理解,上述说明仅是本公开技术方案的概述,以便能够更清楚地了解本公开的技术手段,从而可依照说明书的内容予以实施。为了让本公开的上述和其它目的、特征和优点能够更明显易懂,以下特举例说明本公开的具体实施方式。
附图说明
为了更清楚地说明本公开实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,此处的附图被并入说明书中并构成本说明书中的一部分,这些附图示出了符合本公开的实施例,并与说明书一起用于说明本公开的技术方案。应当理解,以下附图仅示出了本公开的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。而且在整个附图中,用相同的标号表示相同的部件。在附图中:
图1示出了本公开实施例所提供的一种拆方方式示意图;
图2示出了本公开实施例所提供的一种图片处理方法的流程图;
图3示出了本公开实施例所提供的一种拆条方式示意图;
图4示出了本公开实施例所提供的一种图片处理装置的示意图;
图5示出了本公开实施例所提供的一种电子设备的示意图。
具体实施方式
下面将参照附图更详细地描述本公开的示例性实施方式。虽然附图中显示了本公开的示例性实施方式,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施方式所限制。相反,提供这些实施方式是为了能够更透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。
在本公开实施方式的描述中,应理解,诸如“包括”或“具有”等术语旨在指示本说明书中所公开的特征、数字、步骤、行为、部件、部分或其组合的存在,并且不旨在排除一个或多个其他特征、数字、步骤、行为、部件、部分或其组合存在的可能性。
除非另有说明,“/”表示或的意思,例如,A/B可以表示A或B;本文中的“和/或”仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。
术语“第一”、“第二”等仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”等的特征可以明示或者隐含地包括一个或者更多个这一特征。在本公开实施方式的描述中,除非另有说明,“多个”的含义是两个或两个以上。
经研究发现,在利用硬件加速器对图片处理的过程中,一般会将源图片的数据存放在双倍速率(Double Data Rate,DDR)存储器中。与此同时,为了减少DDR的带宽压力,一般会在硬件加速器中增加内部静态随机存取存储器(Static Random-Access Memory,SRAM)模块,将源图先从DDR读取到SRAM中再进行处理。
考虑到SRAM一般不会太大,此时往往需要对源图进行拆分,并结合拆分结果进行变换处理。变换处理后的目标图中连续的坐标点在源图中是分布在不同行/列的不连续点,例如,采用双线性插值算法,则每计算目标图中的一个点会从源图也即DDR中读取4个像素点的数据信息,这给DDR的访问效率提出了更高的要求。
因此,如何在确保拆分效果的前提下更为快速的读取源图数据成为需要解决的问题。
为了至少部分地解决上述问题以及其他潜在问题中的一个或者多个,本公开提供了至少一种图片处理方法、装置、电子设备及存储介质,以通过预设拆分尺寸进行拆分,并能够针对拆分后的源子图进行预设阈值的比对,以更为快速的读取对应的源像素值进行图像处理,处理性能更佳。
为清楚阐述本公开实施方式,首先将介绍一些后续实施方式中可能会出现的概念。
1、Slice拆分:
如图1所示,左图中间矩形部分为变换前的源图,右图大黑框部分(包括四个小黑框)为变换后的目标图,其中大黑框中的菱形部分为源图变形后的图形,其他部分为填充值。每个小黑框部分称为一个Slice拆分,简称为一个Slice。
2、图形变换:
这里的图形变换可以是仿射变换,尺寸变换等。以进行仿射变换为例:即将左图矩形部分的源图变换成右边大黑框部分的目标图(包括了中间菱形部分以及其他填充部分)。
为便于对本实施例进行理解,首先对本公开实施例所公开的一种图片处理方法进行详细介绍,本公开实施例所提供的图片处理方法的执行主体一般为具有一定计算能力的电子设备,该电子设备例如包括:终端设备或服务器或其它处理设备,终端设备可以为用户设备(User Equipment,UE)、移动设备、用户终端、车载设备、可穿戴设备等。在一些可能的实现方式中,该图片处理方法可以通过处理器调用存储器中存储的计算机可读指令的方式来实现。
参见图2所示,为本公开实施例提供的图片处理方法的流程图,所述方法包括步骤S201~S204,其中:
S201:获取带有源像素值的源图,和获取未带有目标像素值的目标图;
S202:基于预设拆分尺寸,对目标图进行拆分,得到多个目标子图;
S203:基于所述目标子图,确定所述源图中与目标子图对应的源子图,并判断源子图所包含的像素量是否与预设阈值一致;
S204:若是,则基于源子图中的各个源像素值确定目标子图中的各个目标像素值。
为了便于理解本公开实施例提供的图片处理方法,接下来首先对该方法的应用场景进行详细说明。本公开实施例中的图片处理方法主要可以应用于图片处理领域,特别是针对大尺寸,诸如4K大小的高清图片的变换处理,这主要是为了更好的适配于SRAM的大小限制,与此同时,还需要尽可能的确保SRAM读取的连续性,这样,在将源图拆分成多个Slice小块之后,可以分别进行计算,得到变换后每个目标子图的像素信息,继而得出整张源图的变换结果。
考虑到在图片变换的过程中,所需要对应读取的源子图的像素并非连续,例如,目标图中坐标点(0,0)所对应源子图的可能并不是(0,0)坐标点,而是(3,4)坐标点,因而在实际进行拆分的过程中,不仅需要考虑拆分尺寸还需要结合拆分后所对应源子图的像素量是否适配于SRAM的读取。
以仿射变换为例,在实际确定源子图的像素量时,如图1所示,左图中Slice部分(对应一个小菱形)为对应的目标图Slice在源图上的位置,源图Slice之外对应有外接矩形,虚线框为剔除无效区域后实际需要读取的源图Slice大小,从而确定每个源子图的像素量,这主要是考虑到源图和目标图的数据在DDR中是连续存放的,因此不论对源图的读取还是目标图的写入一般只支持如图1中矩形的拆分。左图中在虚线部分以外的区域为无法获取数据的区域,在读取时需要剔除。除此之外,右图矩形中菱形外的部分则是按照特定要求需要填充的数据,不能被剔除,且需要按照内存顺序依次写入,在实际应用中,可以是从源子图中读取相应的源像素值来确定目标子图的各个目标像素值。
在进行诸如仿射变换等图片处理的过程中,预先可知的是目标子图与源子图之间的对应关系,继而可以针对每个目标子图确定对应的源子图,从而在确定每个源子图所对应目标子图的处理结果的前提下,集合各个目标子图的处理结果确定整个目标图的处理结果,在确保拆分效果的前提下,很好的确保了拆分后子图的处理性能。
在进行图片拆分的过程中可以是结合预设拆分尺寸实现的,这里的拆分尺寸可以是仅仅针对在图片行方向上的拆分,还可以是仅仅针对在图片列方向上的拆分,还可以是在行方向及列方向上的双向拆分,这里不做具体的限制。除此之外,在实际进行拆分的过程中,具体的拆分尺寸不能太大,也不能太小,太小的拆分尺寸可能导致拆分后子图比较多,且无法有效的利用SRAM的读取性能,太大的拆分尺寸可能无法满足SRAM的存储能力,基于此,可以按照SRAM的实际大小及单个Slice所需读取的像素量来确定拆分尺寸。
本公开实施例中,可以按照拆方方式及拆条方式对目标图进行拆分,与此同时,可以同步对源图进行拆分,也即,源图作为变换前的图片,目标图作为变换后的图片,对应采用一致的拆分方式,在确定拆分得到的多个目标子图的情况下,对于每个目标子图可以确定对应的源子图。
上述拆方方式指的是同时在图片行方向及列方向上进行拆分,即在源图拆分出来的Slice的高和宽较为接近,且高和宽均与源图高和宽不相等,在实际应用中可以同时增大Slice的高和宽,使得高和宽比较相近,能够满足在仿射变换旋转角度较大等场景中,Slice的个数较少;上述拆条方式指的是在图片行方向或者列方向上进行拆分,即在源图拆分出来的Slice的高或者宽有一个方向与源图的高和宽相等。
对于拆分后的源子图而言,可以确定针对每个源子图所需读取的像素的数量(对应像素量),在确定源子图的像素量与预设阈值一致的情况下可以得到变换处理后的目标子图的像素信息。
其中,上述预设阈值可以是一个特定的数值,也可以是一个数值范围,在实际应用中,可以是基于SRAM的存储大小来确定,这里不做具体的限制。
在确定目标子图的像素信息的过程中,主要可以基于源图与目标图之间的变换关系,在确定变换关系的情况下,可以得到对应的坐标投影关系,继而基于源子图的源像素值确定目标子图的目标像素值。
本公开实施例提供的图片处理方法中,在确定源子图所包含的像素量与预设阈值不一样的情况下,一定程度上说明SRAM无法满足读取要求,此时,需要调整预设拆分尺寸,对目标图重新进行拆分,例如,可以换另一种拆分方式,再如,可以调整具体的拆分尺寸。
在实际应用中,若源子图所包含的像素量大于预设阈值,一定程度上说明所需SRAM读取的数据量超出了SRAM的负荷量,此时需要减小预设拆分尺寸,以减少像素量从而更大可能性的满足SRAM的性能;若源子图所包含的像素量小于预设阈值,一定程度上说明SRAM的利用率较低,此时需要增大预设拆分尺寸,以增大像素量从而更大可能性的提升SRAM的利用率。
在减小或增大预设拆分尺寸时,具体减小的尺寸或者增大的尺寸可以采用局部最优进行搜索以确定最终所需变换的尺寸。
考虑到图片拆分在整个图片处理中的关键作用,接下来可以对图片拆分的具体过程进行说明,包括如下步骤:
步骤一、通过拆方方式确定第一预设拆分尺寸,通过拆条方式确定第二预设拆分尺寸;
步骤二、基于第一预设拆分尺寸和第二预设拆分尺寸,分别对目标图进行拆分,对应得到拆方目标子图和拆条目标子图。
拆分策略可为:先将目标子图slice的高度(dest_h)和宽度(dest_w)设置为1,根据目标图的总大小H’和W’计算拆分slice的总数为ceil(H’/dest_h)*ceil(W’/dest_w),针对每个目标子图的slice,获得四个顶点的坐标,并由已知的变换公式计算出在源图上对应的四个顶点。由这四个顶点可以确定对应的源子图的外界矩形,因外界矩形可能包括无效区域,所以需要取与源图相交矩形部分作为源子图的slice,然后计算这个slice的大小是否超过SRAM大小,当所有slice完成上述计算且满足SRAM大小即与预设阈值匹配时,表示本轮目标子图slice的高度(dest_h)和宽度(dest_w)设置有效。然后将dest_h或者dest_w加1,重复上述一轮的计算,直到找到源子图中最大slice接近SRAM总大小,此时的dest_h和dest_w为最终的拆分搜索结果。
上述内容中,目标子图slice的高度(dest_h)和宽度(dest_w)即为预设拆分尺寸,预设拆分尺寸可以根据目标图和源图的尺寸确定,也可以是根据人为经验或神经网络学习设置的尺寸,在此本公开不具体限制拆分尺寸的具体如何选择,而是针对性的限定拆分的形式。
这里,为了更可能的确保拆分效果,可以通过拆方方式确定第一预设拆分尺寸,并通过拆条方式确定第二预设拆分尺寸,而后基于第一预设拆分尺寸和第二预设拆分尺寸,分别对目标图进行拆分,对应得到拆方目标子图和拆条目标子图。
针对拆方方式所确定的第一预设拆分尺寸,其宽和高均小于目标图的宽和高,如图1所示,拆方方式同时在图片的两个方向上进行拆分,使得拆分后的子图的宽小于目标图的宽,且拆分后的子图的高小于目标图的高。
针对拆条方式所确定的第二预设拆分尺寸,在行方向上拆分时,其宽等于目标图的宽,如图3所示的拆条方式示意图,此外,在列方向上拆分时,其高等于目标图的高,在此并未进行图例说明。
考虑到在针对一个源图所拆分的各个源子图进行图片变换的过程中,越多的源子图很大程度上需要更长的图片处理时间,反之,越少的源子图一定程度上所需的图片处理时间更短,基于此,在确定拆方方式及拆条方式均能够满足预设阈值的情况下,这时,可以选取拆方源子图和拆条源子图中数量最少的源子图,并可以基于此确定对应的目标子图的目标像素值。
在实际进行拆方的过程中,如图1所示,随着源图大小或旋转角度的变化,导致拆分不够均匀,除第一个Slice能尽量用满SRAM外,其它各个Slice的利用率不高,从而可能划分了更多的Slice个数,另外由于拆方在图片宽度方向上进行分割,在每个Slice从DDR读取数据到SRAM时,破坏了源图在宽度方向上的连续性(即每行的开头均与上一行的末尾不连续),从而降低了读取效率。
然而,对于拆条而言,是将源图的Slice的宽度固定为源图的宽度大小,这样只要去搜索Slice的高度即可,具体的搜索方案可以参照拆方的方案进行。如图3所示,按照拆条的方案,Slice的总个数从4个减少为3个,此外每个Slice的读取部分因为宽度方向的连续,也提高了Slice从DDR到SRAM的读取效率。
本公开实施例在对图片进行拆分搜索时,同时进行拆方和拆条的搜索,并计算各个方案在源图上拆分的Slice总个数,当某一个方案拆分得到的Slice个数较少时,则选用对应的搜索方案进行拆分,当Slice个数相同,可以优先选取拆条的方案,因为拆条方案在对DDR内存的读取上有更高的效率。
本公开实施例中,在通过拆方方式确定第一预设拆分尺寸的过程中,首先可以确定在图片行方向上的至少一条第一分割线及在图片列方向上的至少一条第二分割线,而后基于第一分割线及第二分割线对目标图进行分割,以得到多个拆方目标子图。
如图1所示,这里的第一分割线及第二分割线各有一条,而后拆方得到4个拆方目标子图,对应源图拆方得到4个拆方源子图。这里仅为一个具体示例,在实际应用中,可以有多条第一分割线及多条第二分割线,例如,2条第一分割线及3条第二分割线从而拆分得到6个拆方目标子图。
本公开实施例中,在通过拆条方式确定第二预设拆分尺寸的过程中,首先可以确定在图片行方向上的至少一条第三分割线,或者确定在图片列方向上的至少一条第四分割线,而后基于第三分割线或第四分割线对目标图进行分割,以得到多个拆条目标子图。
如图3所示,这里的第一分割线有2条,而后拆方得到3个拆条目标子图,对应源图拆条得到3个拆条源子图。这里仅为一个具体示例,在实际应用中,可以有其他条第一分割线例如,5条第一分割线从而拆分得到6个拆条目标子图。
除了可以实现在行方向上的拆分,还可以通过列方向上的第四分割线实现拆条,可以参照上述拆条过程,这里不做赘述。
本公开实施例提供的图片处理方法在选用具体的拆分方法对目标图进行拆分的过程中,可以结合各种因素来确定,例如,在确定源图像素值的存储方式为从左至右,从前到后的顺序的情况下,其行方向上的像素信息是连续排列的,此时可以优先选用行方向上的拆条方式,再如,在确定拆方与拆条均能满足拆分需求的条件下,所拆分得到的子图数量较少的拆方方式可以优先选用。
结合图1及图3可知的是,目标子图与源子图之间存在直接的对应关系,且该对应关系由两者之间的变换情况来确定,也即,不同的变换情况决定了不同的对应关系。本公开实施例中,可以按照如下步骤确定与目标子图对应的源子图:
步骤一、获取源图所在第一图像坐标系及目标图所在第二图像坐标系之间的转换关系;
步骤二、基于转换关系确定源图中与目标子图对应的源子图。
这里的源图与目标图在对应的图像坐标系下存在对应的转换关系,这样,针对目标子图中的任意像素点可以基于上述转换关系从源子图中确定对应的像素点,继而确定对应的源子图。
具体来说,针对目标子图中的每个待确定目标像素点,基于转换关系从源子图中确定与待确定目标像素点对应的源像素点,这样,基于各个待确定目标像素点分别对应的源像素点,可以确定与目标子图对应的源子图所包含的像素量。
在实际应用中,由于转换关系的存在可能使得目标子图的坐标点在源子图中无法映射到实际的坐标点,基于此,可以在确定所有待确定目标像素点分别对应的源像素点的情况下,基于投影后的源像素点是否落入源子图的坐标范围进行像素点的删减,从而确定最终的像素量。
这里,基于待确定目标像素点对应的源像素点的源像素值可以确定目标子图中的各个目标像素值,具体可以是结合转换关系得到的,这里不再赘述。
本公开实施例中,确定各个目标子图的目标像素值的过程相当于确定源子图的变换结果,而后将各个源子图的变换结果进行汇总,即可得到整个源图的变换结果,从而在更好的满足SRAM等存储器的缓存需求的情况下,显著提升了处理性能。
在本说明书的描述中,参考术语“一些可能的实施方式”、“一些实施方式”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施方式或示例描述的具体特征、结构、材料或者特点包含于本公开的至少一个实施方式或示例中。在本说明书中,对上述术语的示意性表述不必须针对的是相同的实施方式或示例。而且,描述的具体特征、结构、材料或者特点可以在任一个或多个实施方式或示例中以合适的方式结合。此外,在不相互矛盾的情况下,本领域的技术人员可以将本说明书中描述的不同实施方式或示例以及不同实施方式或示例的特征进行结合和组合。
关于本公开实施方式的方法流程图,将某些操作描述为以一定顺序执行的不同的步骤。这样的流程图属于说明性的而非限制性的。可以将在本文中所描述的某些步骤分组在一起并且在单个操作中执行、可以将某些步骤分割成多个子步骤、并且可以以不同于在本文中所示出的顺序来执行某些步骤。可以由任何电路结构和/或有形机制(例如,由在计算机设备上运行的软件、硬件(例如,处理器或芯片实现的逻辑功能)等、和/或其任何组合)以任何方式来实现在流程图中所示出的各个步骤。
本领域技术人员可以理解,在具体实施方式的上述方法中,各步骤的撰写顺序并不意味着严格的执行顺序而对实施过程构成任何限定,各步骤的具体执行顺序应当以其功能和可能的内在逻辑确定。
基于同一发明构思,本公开实施例中还提供了与图片处理方法对应的图片处理装置,由于本公开实施例中的装置解决问题的原理与本公开实施例上述图片处理方法相似,因此装置的实施可以参见方法的实施,重复之处不再赘述。
参照图4所示,为本公开实施例提供的一种图片处理装置的示意图,装置包括:获取模块401、拆分模块402、判断模块403及确定模块404;其中,
获取模块401,用于获取带有源像素值的源图,和获取未带有目标像素值的目标图;
拆分模块402,用于基于预设拆分尺寸,对目标图进行拆分,得到多个目标子图;
判断模块403,用于基于所述目标子图,确定所述源图中与目标子图对应的源子图,并判断源子图所包含的像素量是否与预设阈值一致;
确定模块404,用于基于源子图中的各个源像素值确定目标子图中的各个目标像素值。
采用上述图片处理装置,在获取到带有源像素值的源图和未带有目标像素值的目标图的情况下,基于预设拆分尺寸对目标图进行拆分,而后确定与拆分得到的目标子图对应的源子图,并判断源子图所包含的像素量是否与预设阈值一致,在一致的情况下,基于源子图中的各个源像素值确定目标子图中的各个目标像素值。本公开基于预设拆分尺寸进行拆分后再进行图片处理,这主要是考虑到SRAM的尺寸通常不会特别大,这样拆分后的目标子图所对应的源子图所包含的像素量更能够符合针对SARM设置的预设阈值,从而能够确保在有效拆分的情况下,确保源图与目标图之间的转换关系,整体的图片处理性能更佳。
在一种可能的实施方式中,上述装置还包括:
调整模块405,用于调整预设拆分尺寸,对目标图重新拆分。
在一种可能的实施方式中,调整模块405,还用于:
若源子图所包含的像素量大于预设阈值,则减小预设拆分尺寸;若源子图所包含的像素量小于预设阈值,则增大预设拆分尺寸。
在一种可能的实施方式中,拆分模块402,用于按照如下步骤基于预设拆分尺寸,对目标图进行拆分,得到多个目标子图:
通过拆方方式确定第一预设拆分尺寸,通过拆条方式确定第二预设拆分尺寸;
基于第一预设拆分尺寸和第二预设拆分尺寸,分别对目标图进行拆分,对应得到拆方目标子图和拆条目标子图。
在一种可能的实施方式中,第一预设拆分尺寸的宽和高均小于目标图的宽和高,第二预设拆分尺寸的宽或高对应等于目标图的宽或高。
在一种可能的实施方式中,确定模块404,还用于:
确定与拆方目标子图和拆条目标子图对应的拆方源子图和拆条源子图,拆方源子图和拆条源子图所包含的像素量均与预设阈值一致时,选取拆方源子图和拆条源子图中数量最少的源子图确定对应的目标子图中的各个目标像素值。
在一种可能的实施方式中,确定模块404,还用于;
拆方源子图和拆条源子图所包含的像素量均与预设阈值一致,且拆方源子图和拆条源子图数量一致时,选取拆条源子图确定拆条目标子图中的各个目标像素值。
在一种可能的实施方式中,拆分模块402,用于按照如下步骤通过拆方方式确定第一预设拆分尺寸:
确定在图片行方向上的至少一条第一分割线及在图片列方向上的至少一条第二分割线;
按照至少一条第一分割线及至少一条第二分割线对目标图进行拆方,得到多个拆方目标子图。
在一种可能的实施方式中,拆分模块402,用于按照如下步骤通过拆条方式确定第二预设拆分尺寸:
确定在图片行方向上的至少一条第三分割线;
按照至少一条第三分割线对目标图进行拆条,得到多个拆条目标子图;或者,
确定在图片列方向上的至少一条第四分割线;
按照至少一条第四分割线对目标图进行拆条,得到多个拆条目标子图。
在一种可能的实施方式中,判断模块403,用于按照如下步骤确定源图中与目标子图对应的源子图:
获取源图所在第一图像坐标系及目标图所在第二图像坐标系之间的转换关系;
基于转换关系确定源图中与目标子图对应的源子图。
在一种可能的实施方式中,判断模块403,用于按照如下步骤确定源子图所包含的像素量:
针对目标子图中的每个待确定目标像素点,基于转换关系从源子图中确定与待确定目标像素点对应的源像素点;
基于各个待确定目标像素点分别对应的源像素点,确定与目标子图对应的源子图所包含的像素量。
在一种可能的实施方式中,确定模块404,用于按照如下步骤基于源子图中的各个源像素值确定目标子图中的各个目标像素值:
针对目标子图中的每个待确定目标像素点,确定待确定目标像素点对应的源像素点的源像素值;将源像素值确定为待确定目标像素点的目标像素值。
需要说明的是,本公开实施方式中的装置可以实现前述方法的实施方式的各个过程,并达到相同的效果和功能,这里不再赘述。
本公开实施例还提供了一种电子设备,如图5所示,为本公开实施例提供的电子设备结构示意图,包括:处理器501、存储器502、和总线503。存储器502存储有处理器501可执行的机器可读指令(比如,图4中的装置中获取模块401、拆分模块402、判断模块403及确定模块404对应的执行指令等),当电子设备运行时,处理器501与存储器502之间通过总线503通信,机器可读指令被处理器501执行时执行如下处理:
获取带有源像素值的源图和未带有目标像素值的目标图;
基于预设拆分尺寸,对目标图进行拆分,得到多个目标子图;
确定与目标子图对应的源子图,并判断源子图所包含的像素量是否与预设阈值一致;
若是,则基于源子图中的各个源像素值确定目标子图中的各个目标像素值。
本公开实施例还提供一种计算机可读存储介质,该计算机可读存储介质上存储有计算机程序,该计算机程序被处理器运行时执行上述方法实施例中所述的图片处理方法的步骤。其中,该存储介质可以是易失性或非易失的计算机可读取存储介质。
本公开实施例还提供一种计算机程序产品,该计算机程序产品承载有程序代码,所述程序代码包括的指令可用于执行上述方法实施例中所述的图片处理方法的步骤,具体可参见上述方法实施例,在此不再赘述。
其中,上述计算机程序产品可以具体通过硬件、软件或其结合的方式实现。在一个可选实施例中,所述计算机程序产品具体体现为计算机存储介质,在另一个可选实施例中,计算机程序产品具体体现为软件产品,例如软件开发包(Software Development Kit,SDK)等等。
本公开中的各个实施方式均采用递进的方式描述,各个实施方式之间相同相似的部分互相参见即可,每个实施方式重点说明的都是与其他实施方式的不同之处。尤其,对于装置、设备和计算机可读存储介质实施方式而言,由于其基本相似于方法实施方式,所以其描述进行了简化,相关之处可参见方法实施方式的部分说明即可。
本公开实施方式提供的装置、设备和计算机可读存储介质与方法是一一对应的,因此,装置、设备和计算机可读存储介质也具有与其对应的方法类似的有益技术效果,由于上面已经对方法的有益技术效果进行了详细说明,因此,这里不再赘述装置、设备和计算机可读存储介质的有益技术效果。
本领域内的技术人员应明白,本公开的实施方式可提供为方法、装置(设备或系统)、或计算机可读存储介质。因此,本公开可采用完全硬件实施方式、完全软件实施方式、或结合软件和硬件方面的实施方式的形式。而且,本公开可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机可读存储介质的形式。
本公开是参照根据本公开实施方式的方法、装置(设备或系统)、和计算机可读存储介质的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
在一个典型的配置中,计算设备包括一个或多个处理器(CPU)、输入/输出接口、网络接口和内存。
内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM)。内存是计算机可读介质的示例。
计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。此外,尽管在附图中以特定顺序描述了本公开方法的操作,但是,这并非要求或者暗示必须按照该特定顺序来执行这些操作,或是必须执行全部所示的操作才能实现期望的结果。附加地或备选地,可以省略某些步骤,将多个步骤合并为一个步骤执行,和/或将一个步骤分解为多个步骤执行。
虽然已经参考若干具体实施方式描述了本公开的精神和原理,但是应该理解,本公开并不限于所公开的具体实施方式,对各方面的划分也不意味着这些方面中的特征不能组合以进行受益,这种划分仅是为了表述的方便。本公开旨在涵盖所附权利要求的精神和范围内所包括的各种修改和等同布置。
Claims (15)
1.一种图片处理方法,其特征在于,包括:
获取带有源像素值的源图,和获取未带有目标像素值的目标图;
基于预设拆分尺寸,对所述目标图进行拆分,得到多个目标子图;
基于所述目标子图,确定所述源图中与所述目标子图对应的源子图,并判断所述源子图所包含的像素量是否与预设阈值一致;
若是,则基于所述源子图中的各个源像素值确定所述目标子图中的各个目标像素值。
2.根据权利要求1所述的方法,其特征在于,所述方法还包括:
若否,则调整所述预设拆分尺寸,对所述目标图重新拆分。
3.根据权利要求2所述的方法,其特征在于,所述方法还包括:
若所述源子图所包含的像素量大于预设阈值,则减小所述预设拆分尺寸;若所述源子图所包含的像素量小于预设阈值,则增大所述预设拆分尺寸。
4.根据权利要求1所述的方法,其特征在于,所述基于预设拆分尺寸,对所述目标图进行拆分,得到多个目标子图,包括:
通过拆方方式确定第一预设拆分尺寸,通过拆条方式确定第二预设拆分尺寸;
基于第一预设拆分尺寸和第二预设拆分尺寸,分别对所述目标图进行拆分,对应得到拆方目标子图和拆条目标子图。
5.根据权利要求4所述的方法,其特征在于,所述第一预设拆分尺寸的宽和高均小于所述目标图的宽和高,所述第二预设拆分尺寸的宽或高对应等于所述目标图的宽或高。
6.根据权利要求4所述的方法,其特征在于,所述方法还包括:
确定与所述拆方目标子图和所述拆条目标子图对应的拆方源子图和拆条源子图,所述拆方源子图和所述拆条源子图所包含的像素量均与预设阈值一致时,选取所述拆方源子图和所述拆条源子图中数量最少的源子图确定对应的目标子图中的各个目标像素值。
7.根据权利要求6所述的方法,其特征在于,所述方法还包括:所述拆方源子图和所述拆条源子图所包含的像素量均与预设阈值一致,且所述拆方源子图和所述拆条源子图数量一致时,选取所述拆条源子图确定所述拆条目标子图中的各个目标像素值。
8.根据权利要求4所述的方法,其特征在于,所述通过拆方方式确定第一预设拆分尺寸,包括:
确定在图片行方向上的至少一条第一分割线及在图片列方向上的至少一条第二分割线;
按照至少一条所述第一分割线及至少一条所述第二分割线对所述目标图进行拆方,得到多个拆方目标子图。
9.根据权利要求4所述的方法,其特征在于,所述通过拆条方式确定第二预设拆分尺寸,包括:
确定在图片行方向上的至少一条第三分割线;
按照至少一条所述第三分割线对所述目标图进行拆条,得到多个拆条目标子图;或者,
确定在图片列方向上的至少一条第四分割线;
按照至少一条所述第四分割线对所述目标图进行拆条,得到多个拆条目标子图。
10.根据权利要求1所述的方法,其特征在于,所述确定所述源图中与所述目标子图对应的源子图,包括:
获取所述源图所在第一图像坐标系及所述目标图所在第二图像坐标系之间的转换关系;
基于所述转换关系确定所述源图中与所述目标子图对应的源子图。
11.根据权利要求10所述的方法,其特征在于,确定所述源子图所包含的像素量,包括:
针对所述目标子图中的每个待确定目标像素点,基于所述转换关系从所述源子图中确定与所述待确定目标像素点对应的源像素点;
基于各个待确定目标像素点分别对应的源像素点,确定与所述目标子图对应的源子图所包含的像素量。
12.根据权利要求10或11所述的方法,其特征在于,所述基于所述源子图中的各个源像素值确定所述目标子图中的各个目标像素值,包括:
针对所述目标子图中的每个待确定目标像素点,确定所述待确定目标像素点对应的源像素点的源像素值;将所述源像素值确定为所述待确定目标像素点的目标像素值。
13.一种图片处理装置,其特征在于,包括:
获取模块,用于获取带有源像素值的源图,和获取未带有目标像素值的目标图;
拆分模块,用于基于预设拆分尺寸,对所述目标图进行拆分,得到多个目标子图;
判断模块,用于基于所述目标子图,确定所述源图中与所述目标子图对应的源子图,并判断所述源子图所包含的像素量是否与预设阈值一致;
确定模块,用于基于所述源子图中的各个源像素值确定所述目标子图中的各个目标像素值。
14.一种电子设备,其特征在于,包括:处理器、存储器和总线,所述存储器存储有所述处理器可执行的机器可读指令,当电子设备运行时,所述处理器与所述存储器之间通过总线通信,所述机器可读指令被所述处理器执行时执行如权利要求1至12中任一项所述的图片处理方法。
15.一种计算机可读存储介质,其特征在于,该计算机可读存储介质上存储有计算机程序,该计算机程序被处理器运行时执行如权利要求1至12中任一项所述的图片处理方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211533194.2A CN115984090A (zh) | 2022-12-01 | 2022-12-01 | 一种图片处理方法、装置、电子设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211533194.2A CN115984090A (zh) | 2022-12-01 | 2022-12-01 | 一种图片处理方法、装置、电子设备及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115984090A true CN115984090A (zh) | 2023-04-18 |
Family
ID=85968974
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211533194.2A Pending CN115984090A (zh) | 2022-12-01 | 2022-12-01 | 一种图片处理方法、装置、电子设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115984090A (zh) |
-
2022
- 2022-12-01 CN CN202211533194.2A patent/CN115984090A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110046702B (zh) | 神经网络计算加速器及其执行的方法 | |
CN107015788B (zh) | 在移动设备上动画展现图像的方法和装置 | |
CN110990516B (zh) | 地图数据的处理方法、装置和服务器 | |
US20200327078A1 (en) | Data processing method and device, dma controller, and computer readable storage medium | |
WO2010050911A1 (en) | Method and system for image resizing based on interpolation enhanced seam operations | |
CN110246081B (zh) | 一种图像拼接方法、装置及可读存储介质 | |
CN104751494A (zh) | 一种OpenGL超大纹理的处理和绘制方法 | |
US20180174349A1 (en) | Adaptive partition mechanism with arbitrary tile shape for tile based rendering gpu architecture | |
WO2019184888A1 (zh) | 一种基于卷积神经网络的图像处理的方法和装置 | |
CN108346131A (zh) | 一种数字图像缩放方法、装置及显示设备 | |
CN115035128A (zh) | 基于fpga的图像重叠滑窗分割方法及系统 | |
US20150199825A1 (en) | Method and system for expediting bilinear filtering | |
CN110211022A (zh) | 一种图像处理方法、装置及电子设备 | |
CN113506305A (zh) | 三维点云数据的图像增强方法、语义分割方法及装置 | |
US20150242988A1 (en) | Methods of eliminating redundant rendering of frames | |
CN115984090A (zh) | 一种图片处理方法、装置、电子设备及存储介质 | |
CN108986031B (zh) | 图像处理方法、装置、计算机设备和存储介质 | |
CN112837416A (zh) | 基于三角剖分的多边形渲染方法、装置及存储介质 | |
CN111091188A (zh) | 神经网络的前向计算方法、装置及计算机可读存储介质 | |
CN113436247B (zh) | 一种图像处理方法、装置、电子设备及存储介质 | |
CN114429511A (zh) | 融合渲染方法、装置、计算机设备和存储介质 | |
CN110738615B (zh) | 鱼眼图像校正方法、装置、系统及可存储介质 | |
KR20120043209A (ko) | 윈도우 기반 영상 처리에서 고속으로 윈도우 영역 내 화소 연산을 수행하기 위한 방법 및 장치 | |
US20150138615A1 (en) | Device and method for creating stereograms with large viewing angle and high 2d image resolution | |
WO2023031999A1 (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 |