CN110782387B - 图像处理方法、装置、图像处理器及电子设备 - Google Patents

图像处理方法、装置、图像处理器及电子设备 Download PDF

Info

Publication number
CN110782387B
CN110782387B CN201810894900.3A CN201810894900A CN110782387B CN 110782387 B CN110782387 B CN 110782387B CN 201810894900 A CN201810894900 A CN 201810894900A CN 110782387 B CN110782387 B CN 110782387B
Authority
CN
China
Prior art keywords
image
format
original image
data
sampling
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201810894900.3A
Other languages
English (en)
Other versions
CN110782387A (zh
Inventor
马君
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Alibaba China Co Ltd
Original Assignee
Alibaba China 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 Alibaba China Co Ltd filed Critical Alibaba China Co Ltd
Priority to CN201810894900.3A priority Critical patent/CN110782387B/zh
Publication of CN110782387A publication Critical patent/CN110782387A/zh
Application granted granted Critical
Publication of CN110782387B publication Critical patent/CN110782387B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T1/00General purpose image data processing
    • G06T1/20Processor architectures; Processor configuration, e.g. pipelining
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/40Analysis of texture
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/60Analysis of geometric attributes
    • G06T7/62Analysis of geometric attributes of area, perimeter, diameter or volume

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Geometry (AREA)
  • Image Processing (AREA)
  • Image Generation (AREA)

Abstract

本发明公开了一种图像处理方法、装置、图像处理器及电子设备。该方法通过图像处理器实施,所述图像处理器所支持输出的图像格式是原始图像格式,该方法包括:获取原始图像的图像属性以及纹理数据;根据原始图像的图像属性、原始图像格式以及待转换的目标图像格式,对原始图像的纹理数据进行处理,得到符合目标图像格式的目标图像数据;其中,目标图像格式是图像处理器不支持输出的图像格式;以符合原始图像格式的排列方式输出目标图像数据,得到符合目标图像格式的目标图像。根据本发明,极大提高图像转换处理的效率,尤其适合存在快速处理图像需求的场景。

Description

图像处理方法、装置、图像处理器及电子设备
技术领域
本发明涉及图像处理技术领域,更具体地,涉及一种图像处理方法、装置、图像处理器及电子设备。
背景技术
GPU(Graphics Processing Unit,图像处理器)作为一种专门进行图像运算工作的微处理器,广泛应用于个人电脑、工作站、游戏机、智能能手机、平板电脑等电子设备中,协助完成图像处理任务,以满足用户对图像处理的需求。
而随着计算机、互联网技术的飞速发展,用户对图像处理的需求随之多样化,例如,用户可能在使用电子设备拍摄图像后,制作成符合MP4(Moving Picture ExpertsGroup 4,动态图像编码标准)格式的视频,这通常要求图像是符合YUV格式(常使用视频处理中颜色编码格式),或者,用户在通过期望通过电子设备使用可以在拍摄时直接为人脸贴图的相机应用进行图像拍摄,这要求电子设备在拍摄时,需要对拍摄的图像进行人脸识别,这时要求图像是Gray8格式(灰度图格式),等等。但是,YUV、Gray8等满足用户的图像处理需求的图像格式,并不是电子设备中用于处理图像的GPU支持输出的图像格式,因此,为了满足用户的图像处理需求,常规的做法是:通过电子设备的CPU读取GPU导出的RGBA格式的图像后进行处理转换,得到符合用户需求的图像格式的图像。
但是,通过电子设备的CPU(Central Processing Unit,中央处理器)对图像进行转换处理,通常需要较长的转换耗时,无法满足存在快速处理图像需求的场景,例如,用户使用相机应用进行人脸贴图拍摄时,通过CPU对图像进行转换处理会带来拍摄时响应延迟、卡顿等现象,同时,通过电子设备的CPU对图像进行转换处理,会消耗较多CPU的处理资源,造成CPU的占用率过高,影响电子设备中其他功能模块的正常运行。
发明内容
本发明的一个目的是提供一种用于图像处理的新技术方案。
根据本发明的第一方面,提供了一种图像处理方法,通过图像处理器实施,所述图像处理器所支持输出的图像格式是原始图像格式,所述方法包括:
获取原始图像的图像属性以及纹理数据;
其中,所述图像属性至少包括图像的宽度、高度;
根据所述原始图像的图像属性、所述原始图像格式以及待转换的目标图像格式,对所述原始图像的纹理数据进行处理,得到符合目标图像格式的目标图像数据;
其中,所述目标图像格式是所述图像处理器不支持输出的图像格式;
以符合所述原始图像格式的排列方式输出所述目标图像数据,得到符合所述目标图像格式的目标图像。
可选地,所述获取原始图像的图像参数以及纹理数据的步骤包括:
获取所述原始图像的图像数据以及图像属性;
根据所述原始图像的图像数据以及图像属性,生成所述原始图像的纹理数据。
可选地,所述根据所述原始图像的图像属性、所述原始图像格式以及待转换的目标图像格式,对所述原始图像的纹理数据进行处理,得到符合目标图像格式的目标图像数据的步骤包括:
根据所述原始图像的图像属性、所述原始图像格式以及所述目标图像格式三者的至少其中之一,设置对所述原始图像的纹理数据进行处理的渲染区域;
根据所述原始图像的图像属性、所述原始图像格式、所述目标图像格式以及所述渲染区域的区域尺寸,确定采样点坐标转换关系;
其中,所述采样点坐标转换关系是所述渲染区域中的采样点坐标与所述原始图像的纹理数据中的采样参考点坐标之间的坐标转换关系;
在所述渲染区域中,根据所述采样点坐标转换关系对所述纹理数据进行采样处理,得到所述目标图像数据。
可选地,
所述设置对所述原始图像的纹理数据进行处理的渲染区域的步骤包括:
设置所述渲染区域的起始坐标;
根据所述图像属性,设置所述渲染区域的区域尺寸与所述原始图像的图像尺寸相同;
和/或,
所述设置对所述原始图像的纹理数据进行处理的渲染区域的步骤包括:
设置所述渲染区域的起始坐标;
根据所述原始图像格式以及所述目标图像格式,确定缩小比例因子;
根据所述图像属性以及所述缩小比例因子,设置所述渲染区域的区域尺寸,使得所述区域尺寸与所述原始图像的图像尺寸的比例符合所述缩小比例因子。
可选地,所述根据所述原始图像的图像属性、所述原始图像格式、所述目标图像格式以及所述渲染区域的区域尺寸,确定采样点坐标转换关系的步骤包括:
根据所述原始图像格式与所述目标图像格式,获取所述采样转换因子;
根据所述原始图像的图像属性、所述采样转换因子以及所述渲染区域的区域尺寸,得到所述采样点坐标转换关系。
可选地,所述在所述渲染区域中,根据所述采样点坐标转换关系对所述纹理数据进行采样处理,得到所述目标图像数据的步骤,包括:
对所述渲染区域中每个采样点坐标,根据所述采样点坐标转换关系,确定与所述采样点坐标对应的在所述纹理数据中的采样参考点坐标;
对每个所述采样参考点坐标,确定符合采样点数目的实际采样点坐标;
对与每个所述实际采样点坐标对应的所述纹理数据进行转换处理,得到对应的所述目标图像数据。
进一步可选地,所述方法还包括:根据所述原始图像格式,确定所述采样点数目。
可选地,所述以符合所述原始图像格式的排列方式输出所述目标图像数据的步骤包括:
构建符合所述原始图像格式的图像排列向量;
将所述目标图像数据传递入所述图像排列向量后输出,实现以符合所述原始图像格式的排列方式输出所述目标图像数据。
根据本发明的第二方面,提供一种图像处理装置,设置于图像处理器侧,所述图像处理器所支持输出的图像格式是原始图像格式,所述图像处理装置包括:
图像数据获取单元,用于获取原始图像的图像属性以及纹理数据;
其中,所述图像属性至少包括图像的宽度、高度;
图像数据处理单元,用于根据所述原始图像的图像属性、所述原始图像格式以及待转换的目标图像格式,对所述原始图像的纹理数据进行处理,得到符合目标图像格式的目标图像数据;
其中,所述目标图像格式是所述图像处理器不支持输出的图像格式;
图像数据输出单元,用于以符合所述原始图像格式的排列方式输出所述目标图像数据,得到符合所述目标图像格式的目标图像。
根据本发明的第三方面,提供一种图像处理器,其中,用于根据所接收的可执行指令的控制,执行本发明的第一方面所述的任意一项的图像处理方法。
根据本发明的第四方面,提供一种电子设备,其中,包括:
存储器,用于存储可执行的指令;
处理器,用于根据所述可执行的指令的控制,运行所述电子设备执行本发明的第一方面所述的任意一项的图像处理方法。
根据本公开的一个实施例,通过对原始图像的纹理数据进行处理,转换得到图像处理器所不支持输出的图像格式的图像数据后,以符合图像处理器所支持输出的图像格式的排列方式输出,实现通过图像处理器直接输出符合其所不支持输出的图像格式的图像数据,避免通过图像处理器之外的中央处理器进行图像转换处理带来的较长的处理耗时,极大提高图像转换处理的效率,尤其适合存在快速处理图像需求的场景。同时,可以避免消耗中央处理器的处理资源,降低对设备运行性能的影响。
通过以下参照附图对本发明的示例性实施例的详细描述,本发明的其它特征及其优点将会变得清楚。
附图说明
被结合在说明书中并构成说明书的一部分的附图示出了本发明的实施例,并且连同其说明一起用于解释本发明的原理。
图1是显示可用于实现本发明的实施例的电子设备的硬件配置的例子的框图。
图2示出了本发明的实施例的图像处理方法的流程图。
图3示出了本发明的实施例的图像数据获取步骤的流程图。
图4示出了本发明的实施例的图像数据处理步骤的流程图。
图5示出了本发明的实施例的图像数据输出步骤的流程图。
图6示出了本发明的实施例的图像处理装置3000的框图。
图7示出了本发明的实施例的电子设备4000的框图。
具体实施方式
现在将参照附图来详细描述本发明的各种示例性实施例。应注意到:除非另外具体说明,否则在这些实施例中阐述的部件和步骤的相对布置、数字表达式和数值不限制本发明的范围。
以下对至少一个示例性实施例的描述实际上仅仅是说明性的,决不作为对本发明及其应用或使用的任何限制。
对于相关领域普通技术人员已知的技术、方法和设备可能不作详细讨论,但在适当情况下,所述技术、方法和设备应当被视为说明书的一部分。
在这里示出和讨论的所有例子中,任何具体值应被解释为仅仅是示例性的,而不是作为限制。因此,示例性实施例的其它例子可以具有不同的值。
应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步讨论。
<硬件配置>
图1是示出可以实现本发明的实施例的电子设备1000的硬件配置的框图。
电子设备1000可以是便携式电脑、台式计算机、手机、平板电脑等。如图1所示,电子设备1000可以包括处理器1100、存储器1200、接口装置1300、通信装置1400、显示装置1500、输入装置1600、扬声器1700、麦克风1800等等。其中,处理器1100可以是中央处理器CPU、微处理器MCU、图像处理器GPU等。存储器1200例如包括ROM(只读存储器)、RAM(随机存取存储器)、诸如硬盘的非易失性存储器等。接口装置1300例如包括USB接口、耳机接口等。通信装置1400例如能够进行有线或无线通信,具体地可以包括Wifi通信、蓝牙通信、2G/3G/4G/5G通信等。显示装置1500例如是液晶显示屏、触摸显示屏等。输入装置1600例如可以包括触摸屏、键盘、体感输入等。用户可以通过扬声器1700和麦克风1800输入/输出语音信息。
图1所示的电子设备仅仅是说明性的并且决不意味着对本发明、其应用或使用的任何限制。应用于本发明的实施例中,电子设备1000的所述存储器1200用于存储指令,所述指令用于控制所述处理器1100进行操作以执行本发明实施例提供的任意一项图像处理方法。本领域技术人员应当理解,尽管在图1中对电子设备1000示出了多个装置,但是,本发明可以仅涉及其中的部分装置,例如,电子设备1000只涉及处理器1100和存储装置1200。技术人员可以根据本发明所公开方案设计指令。指令如何控制处理器进行操作,这是本领域公知,故在此不再详细描述。
<实施例>
本发明实施例的总体构思,是提供一种新的图像处理方案,通过对原始图像的纹理数据进行处理,转换得到图像处理器所不支持输出的图像格式的图像数据后,以符合图像处理器所支持输出的图像格式的排列方式输出,实现通过图像处理器直接输出符合其所不支持输出的图像格式的图像数据,避免通过图像处理器之外的中央处理器进行图像转换处理带来的较长的处理耗时,极大提高图像转换处理的效率,尤其适合存在快速处理图像需求的场景。同时,可以避免消耗中央处理器的处理资源,降低对设备运行性能的影响。
<方法>
在本实施例中,提供一种图像处理方法。该图像处理方法通过图像处理器实施。该图像处理器是任意的专门进行图像运算工作的微处理器,例如,可以是GPU或者GPGPU(General Purpose GPU)。
在本实施例中,图像处理器所支持输出的图像格式是原始图像格式。该原始图像格式根据具体的图像处理器限定。不同类型(包括型号、生产厂商等)的原始图像格式可能不同。在一个例子中,原始图像格式可以是RGBA格式。RGBA格式是代表R(Red,红色)、G(Green,绿色)、Be(Blue,蓝色)和A(Alpha)供四个颜色通道构成的色彩空间。该色彩空间中每个像素包括R、G、B、A四个通道。RGBA格式中最常用的格式为RGBA8888,即每一位像素的每个一个色彩空间的通道占一个字节,例如,对于一个Bitmap图片来说,720x1280大小的图片,占用的大小为:1280x720x4字节。
该图像处理方法,如图2所示,包括:步骤S2100-S2300。
步骤S2100,获取原始图像的图像属性以及纹理数据。
该图像属性是图像显示的相关属性。在本实施例中,图像属性至少包括图像宽度以及高度。图像属性中还可以包括图像格式等。
在一个例子中,获取原始图像的图像属性以及纹理数据可以如图3所示,包括:步骤S2210-S2220。
步骤S2210,获取原始图像的图像数据以及图像属性。
在本例中,原始图像的图像数据可以是图像处理器经过其他图像处理程序得到的图像数据,对应从本地中读取图像属性;或者,原始图像的图像数据是从中央处理器中获取的图像数据,同时从中央处理器(CPU)获取原始图像的图像属性。
步骤S2220,根据原始图像的图像数据以及图像属性,生成原始图像的纹理数据。
在本例中,可以通过OpenGLES提供的glTexlmage2D接口,根据原始图像的图像属性中包括的原始图像的宽度、高度,对原始图像的图像数据进行处理,得到原始图像的2D纹理数据,以便图像处理器识别后实施后续步骤。
OpenGLES是针对手机、PDA和游戏主机等嵌入式设备而设计的OpenGL的三维图形的API(Application Programming Interface,应用程序编程接口),相对OpenGL来说,删减了一些功能及API。而OpenGL是一个跨编程语言、跨平台的编程接口规格的专业的图形程序接口,是一个功能强大、调用方便的底层图形库。通常来说,OpenGL是针对与图形处理器(GPU)的接口。
在步骤S2100之后,进入:
步骤S2200,根据原始图像的图像属性、原始图像格式以及待转换的目标图像格式,对原始图像的纹理数据进行处理,得到符合目标图像格式的目标图像数据。
在本实施例中,目标图像格式是用户期望对原始图像转换处理的图像格式。目标图像格式是图像处理器不支持输出的图像格式,例如,目标图像格式是GPU所不支持输出的Gray8(灰度图)或者NV21、NV12、YV21、YV12等格式(NV21、NV12、YV21、YV12都属于YUV格式这种每个像素具有Y通道、U通道、V通道三个通道的图像格式,只是具体U通道和V通道的排列方式各有不同)。
以原始图像格式是RGBA格式、目标图像格式是Gray8格式为例,GPU支持的RGBA格式的图像排列方式是RGBARGBARGBA……,而RGBA格式的图像每个像素具有R、G、B、A四个通道,当用户期望GPU输出每个像素只有一个通道的Gray8格式的灰度图时,GPU只能基于RGBA格式的排列方式输出Y000Y000Y000……,而这样输出的图像数据是不符合Gray8格式要求的YYYYYYY……,电子设备无法识别Y000Y000Y000……这样的图像数据是灰度图,因此GPU无法支持输出Gray8格式。
通过对原始图像的纹理数据进行处理,得到符合图像处理器所不支持输出的目标图像格式的目标图像数据,可以结合后续步骤,通过图像处理器所支持的原始图像格式的排列方式,输出目标图像数据,对应得到符合目标图像格式的图像数据。实现通过图像处理器直接输出符合其所不支持输出的图像格式的图像数据,避免通过图像处理器之外的中央处理器进行图像转换处理带来的较长的处理耗时,极大提高图像转换处理的效率,尤其适合存在快速处理图像需求的场景。同时,可以避免消耗中央处理器的处理资源,降低对设备运行性能的影响。
如图4所示,根据原始图像的图像属性、所述原始图像格式以及待转换的目标图像格式,对原始图像的纹理数据进行处理,得到符合目标图像格式的目标图像数据的步骤S2200可以包括:步骤S2210-S2230。
步骤S2210,根据原始图像的图像属性、原始图像格式以及目标图像格式三者的至少其中之一,设置对原始图像的纹理数据进行处理的渲染区域。
在本实施例中,渲染区域是与处理的原始图像的纹理数据对应的区域。具体地,在通过OpenGLES的片元着色器实现本实施例中提供的图像处理方法时,渲染区域的尺寸(宽度及高度)对应片元着色器实际处理的像素个数,例如,渲染区域的尺寸是720*1280,片元着色器实际处理的像素个数是720*1280。
例如,设置对所述原始图像的纹理数据进行处理的渲染区域的步骤包括:步骤S22101-S22102。
步骤S22101,设置渲染区域的起始坐标。
渲染区域的起始坐标可以根据具体的应用场景或者应用需求设置,例如,设置为(0,0)。
步骤S22102,根据图像属性,设置渲染区域的区域尺寸与原始图像的图像尺寸相同。
图像属性中包括原始图像的宽度、高度相同,设置渲染区域的区域尺寸与原始图像的图像尺寸相同,也就是设置渲染区域的宽度与原始图像的宽度相同以及设置渲染区域的高度与原始图像的高度相同。
例如,原始图像的尺寸(宽度及高度)为720*1280,对应的,渲染区域的区域尺寸为720*1280。
而实际应用中,目标图像格式与原始图像格式相比,可能每个像素包括的通道数目更少,对应的,转换目标图像格式的图像数据的数据量更小,例如,原始图像格式是RGBA格式,一个像素包括R、G、B、A四个通道,目标图像格式是Gray8格式,一个像素只包括一个Y通道,对于1280*720的RGBA格式的图像数据,转换为Gray8格式的图像数据为1280*320。如果将渲染区域的区域尺寸与原始图像的图像尺寸相同,会导致渲染区域过大,降低渲染效率。同时在输出转换后的图像时,还需要增加逻辑判断渲染区域中需要实际输出的图像数据,也带来对渲染效率的影响。
针对这种情况,设置对所述原始图像的纹理数据进行处理的渲染区域的步骤包括:步骤S22201-S22203。
步骤S22201,设置渲染区域的起始坐标。
渲染区域的起始坐标可以根据具体的应用场景或者应用需求设置,例如,设置为(0,0)。
或者,对于目标图像格式是每个像素包括多通道的情况,例如YUV格式中每个像素包括Y、U、V三个通道,可以针对Y、U、V通道分别设置渲染区域的起始坐标,例如,对于原始图像的尺寸是1280*720,Y通道的渲染区域的起始坐标是(0,0),U、V通道的渲染区域的起始坐标是(0,320)。
步骤S22202,根据原始图像格式以及目标图像格式,确定缩小比例因子。
在本例中,可以根据原始图像格式中每个像素包括的通道数目以及目标图像格式的每个像素包括的通道数目,确定缩小比例因子。
例如,原始图像格式是RGBA格式,一个像素包括R、G、B、A四个通道,目标图像格式是Gray8格式,一个像素只包括一个Y通道,可以确定缩小比例因子是1/4;又例如原始图像格式是RGBA格式,一个像素包括R、G、B、A四个通道,目标图像格式是YUV格式,每个像素包括Y、U、V三个通道,而根据Y、U、V通道的特性不同,可以针对Y通道设置缩小比例因子为1/4,针对U、V通道设置缩小比例因子为1/8。
步骤S22203,根据图像属性以及缩小比例因子,设置渲染区域的区域尺寸,使得区域尺寸与所述原始图像的图像尺寸的比例符合缩小比例因子。
例如,原始图像格式是RGBA格式,目标图像格式是Gray8格式,缩小比例因子是1/4,图像属性中包括的原始图像的宽度为720、高度为1280,对应设置渲染区域的区域尺寸为720*320,是原始图像的图像尺寸720*1280的1/4;
或者,原始图像格式是RGBA格式,目标图像格式是YUV格式,图像属性中包括的原始图像的宽度为720、高度为1280,针对Y通道的缩小比例因子为1/4,对应设置渲染区域的区域尺寸为720*320,是原始图像的图像尺寸720*1280的1/4;针对U、V通道的缩小比例因子为1/8,对应设置渲染区域的区域尺寸为720*160,是原始图像的图像尺寸720*1280的1/8,渲染区域的起始坐标是(0,320)。
在步骤S2210之后,进入:
步骤S2220,根据原始图像的图像属性、原始图像格式、目标图像格式以及渲染区域的区域尺寸,确定采样点坐标转换关系。
采样点坐标转换关系是渲染区域中的采样点坐标与原始图像的纹理数据中的采样参考点坐标之间的坐标转换关系。
在本例中,原始图像的纹理数据的纹理坐标根据具体应用场景划分设置,例如,纹理坐标设置为[(0,0),(0,1),(1,0),(1,1)]。根据原始图像的纹理数据的纹理坐标、以及预先设置的顶点坐标,在通过OpenGLES的片元着色器实现处理的渲染区域中,经过栅格化等操作,可以得到渲染区域中的每个采样点坐标。其中,顶点坐标针对具体的应用场景设置,例如设置为[(-1,-1),(-1,1),(1,-1),(1,1)]。
根据采样点坐标关系,可以得到渲染区域中每一个采样点坐标对应的渲染区域中作为采样参考点坐标的纹理坐标。
根据原始图像的图像属性、原始图像格式以及所述目标图像格式,确定采样点坐标转换关系的步骤,可以包括:步骤S2221-S2222。
步骤S2221,根据原始图像格式与目标图像格式,获取采样转换因子。
在本例中,可以根据原始图像格式中每个像素包括的通道数目以及目标图像格式的每个像素包括的通道数目,获取采样转换因子。
例如,原始图像格式是RGBA格式,一个像素包括R、G、B、A四个通道,目标图像格式是Gray8格式,一个像素只包括一个Y通道,可以确定获取采样转换因子是4;又例如原始图像格式是RGBA格式,一个像素包括R、G、B、A四个通道,目标图像格式是YUV格式,每个像素包括Y、U、V三个通道,而根据Y、U、V通道的特性不同,可以针对Y通道获取采样转换因子为4,针对U、V通道采样转换因子为8。
步骤S2222,根据原始图像的图像属性、采样转换因子以及渲染区域的区域尺寸,得到采样点坐标转换关系。
例如,原始图像格式是RGBA格式,目标图像格式是Gray8格式,采样转换因子是4,原始图像的图像属性中包括原始图像的宽度W、高度H,渲染区域的区域尺寸与原始图像的图像尺寸相同,假设采样点坐标为(x,y),采样参考点坐标为(xr,yr),采样点坐标转换关系为:
xr=mod(floor(W*x)*4,W)/W
其中,mod()是输入的两个数值中的前者对后者取余,floor()是获取一个浮点数据的小数部分。
根据上述采样点坐标转换关系,假设原始图像的图像尺寸是720*1280,采样点坐标为(2/720,1/1280)时,对应的采样参考点坐标为(5/720,1/1280);采样点坐标为(4/720,2/1280)时,对应的采样参考点坐标为(13/720,5/1280),以此类推。
而针对上例,假设渲染区域的区域尺寸与原始图像的图像尺寸相比,缩小比例因子是1/4时,渲染区域的区域尺寸中高度为原始图像的高度的1/4,对应的,采样点坐标转换关系中的宽度方向的采样点坐标关系不变,具体为:
xr=mod(floor(W*x)*4,W)/W
根据上述采样点坐标转换关系,假设原始图像的图像尺寸是720*1280,渲染区域的区域尺寸为720*320,采样点坐标为(2/720,1/320)时,对应的采样参考点坐标为(5/720,1/1280);采样点坐标为(4/720,2/320)时,对应的采样参考点坐标为(13/720,5/1280),以此类推。
又例如,原始图像格式是RGBA格式,目标图像格式是YUV格式中NV12格式,根据Y、U、V通道的特性不同,针对Y通道的采样转换因子是4,针对U、V通道的采样转换因子为8,原始图像的图像属性中包括原始图像的宽度W、高度H;
对于Y通道,假设渲染区域的区域尺寸与原始图像的图像尺寸相比,缩小比例因子是1/4时,渲染区域的区域尺寸中高度为原始图像的高度的1/4,对应的采样点坐标为(x,y)与采样参考点坐标为(xr,yr)之间的采样点坐标转换关系为:
xr=mod(floor(W*x)*4,W)/W
根据上述采样点坐标转换关系,假设原始图像的图像尺寸是720*1280,针对Y通道的渲染区域的区域尺寸为720*320,采样点坐标为(2/720,1/320)时,对应的采样参考点坐标为(5/720,1/1280);采样点坐标为(4/720,2/320)时,对应的采样参考点坐标为(13/720,5/1280),以此类推;
对于U、V通道,假设渲染区域的区域尺寸与原始图像的图像尺寸相比,缩小比例因子是1/8时,对应的采样点坐标为(x,y)与采样参考点坐标为(xr,yr)之间的采样点坐标转换关系为:
xr=mod(floor(W*x)*4,W)/W
根据上述采样点坐标转换关系,假设原始图像的图像尺寸是720*1280,针对U、V通道的渲染区域的区域尺寸为720*160,采样点坐标为(2/720,1/160)时,对应的采样参考点坐标为(5/720,1/1280);采样点坐标为(4/720,2/160)时,对应的采样参考点坐标为(13/720,9/1280),以此类推。
对于目标图像格式是YUV格式中其他的格式,例如NV21、YV12、YV21等格式的采样点坐标转换关系也与NV12格式类似,只是针对与NV12格式中存在的UV两通道的排列方式不同,适应性地进行调整,在此不再赘述。
在步骤S2220获取采样点坐标转换关系后,进入:
步骤S2230,在渲染区域中,根据采样点坐标转换关系对纹理数据进行采样处理,得到目标图像数据。
目标图像数据是数据内容符合目标图像格式的图像数据。
在渲染区域中,根据采样点坐标转换关系对纹理数据进行采样处理,得到目标图像数据的步骤可以包括:步骤S2231-S2233。
步骤S2231,对渲染区域中每个采样点坐标,根据采样点坐标转换关系,确定与采样点坐标对应的在所述纹理数据中的采样参考点坐标。
上文已经详细描述针对不同的目标图像格式确定的采样点坐标转换关系,在此不再赘述。
根据采样点坐标转换关系,对于每个采样点坐标为(x,y),采样参考点坐标为(xr,yr)。
步骤S2232,对每个采样参考点坐标,确定采样点数目的实际采样点坐标。
该实际采样点坐标是根据采样参考点坐标确定的原始图像的纹理数据中的实际采样点坐标。
在本实施例中,对于每个采样参考点,要取与其对应的符合的采样数目的实际采样点进行图像数据转换,以便结合后续步骤,使得转换后的图像数据能以符合原始图像格式的排列方式输出。
具体地,本例中的方法还包括:根据原始图像格式,确定采样点数目。
可以根据原始图像格式中每个像素包括的通道数目,确定采样点数目。例如,原始图像格式是RGBA格式,每个像素包括R、G、B、A四个通道,可以确定采样点数目为4。
对每个采样参考点坐标,可以根据原始图像的图像属性确定采样点数目的实际采样点坐标。
例如,假设原始图像格式是RGBA格式,原始图像的图像属性中包括图像宽度是W,采样点数目为4,假设采样参考点坐标为(xr,yr),目标图像格式是Gray8格式,可以确定实际采样点坐标(xa,ya)为:(xr,yr)、(xr+1/W,yr)、(xr+2/W,yr)、(xr+3/W,yr);在此例中,对于目标图像格式是YUV格式中的NY12格式时,对于Y通道,类似地可以确定实际采样点坐标(xa,ya)为:(xr,yr)、(xr+1/W,yr)、(xr+2/W,yr)、(xr+3/W,yr);而对于U、V通道,实际采样点坐标(xa,ya)为:(xr,yr)、(xr,yr)、(xr+2/W,yr)、(xr+2/W,yr)。
步骤S2233,对与每个实际采样点坐标对应的纹理数据进行转换处理,得到对应的所述目标图像数据。
对于每个实际采样点坐标(xa,ya),假设纹理数据的具体颜色取值为C,根据目标图像格式的要求,对该点纹理数据的具体颜色取值进行转换处理,可以得到对应的目标图像数据。
在本实施例中,每个坐标点的纹理数据的颜色值可以通过基于OpenGLES的编程语言GLSL的内置纹理采样函数texture2D()中获取,假设uTexture是原始图像的全部纹理数据,通过texture2D()可以获取读取实际采样点(xa,ya)的颜色取值C:
C=texture2D(uTexture,vec(xa,ya))
假设原始图像格式是RGBA,通过texture2D()获取的颜色取值C中包括R、G、B三个通道的颜色值:C.r、C.g、C.b,目标图像格式是Gray8格式,对应的目标图像数据G为:
G=C.r*0.2990+G.g*0.5870+C.b*0.1140
而假设目标图像格式是YUV格式,对应的目标图像数据包括Y、U、V通道三个通道的数据:
Y=C.r*0.2990+G.g*0.5870+C.b*0.1140
U=-0.1471*C.r-0.2889*G.g+0.4360*C.b+0.5000
V=0.6150*C.r-0.5150*G.g-0.100*C.b+0.5000
以此类推,可以根据不同的目标图像格式,获取每个采样点坐标对应的纹理数据转换处理后的目标图像数据。
在步骤S2200获取目标图像数据之后,进入:
进入步骤S2300,以符合原始图像格式的排列方式输出目标图像数据,得到符合所述目标图像格式的目标图像。
目标图像数据是数据内容符合目标图像格式的图像数据。以符合图像处理器支持的原始图像格式的排列方式输出目标图像数据,可以使得图像处理器实际输出的图像数据包括符合目标图像格式的数据内容,直接得到符合目标图像格式的目标图像,实现图像处理器直接输出符合其所不支持输出的图像格式的图像数据。
以符合所述原始图像格式的排列方式输出所述目标图像数据的步骤可以如图5所示,包括:步骤S2310-S2320。
步骤S2310,构建符合原始图像格式的图像排列向量。
本实施例可以通过OpenGLES的编程语言GLSL实现,具体可以通过GLSL实现的片元着色器实现,片元着色器处理图像数据后输出的gl_FragColor这一类型为向量的变量,可以将gl_FragColor作为图像排列向量。
图像排列向量符合原始图像格式,例如,对于GPU支持的原始图像格式RGBA格式时,对应的gl_FragColor为vec4类型(四通道或四维)的向量,对应的,gl_FragColor作为图像排列向量,符合RGBA格式。
步骤S2320,将目标图像数据传递入图像排列向量后输出,实现以符合原始图像格式的排列方式输出目标图像数据。
在本例中,可以根据处理得到目标图像数据的渲染区域以及目标图像格式确定将目标图像数据传递入图像排列向量的方式,以确定符合原始图像格式的排列方式输出目标图像数据,实际得到的是符合目标图像格式的目标图像数据。
例如,假设原始图像格式是RGBA格式,目标图像格式是Gray8格式,渲染区域的区域尺寸与原始图像的图像尺寸相同,对应的,图像排列向量是包括4个通道的四维向量,由于目标图像数据的数据量是原始图像的纹理数据的数据量的1/4,因此需要执行逻辑判断,在采样纹理的数据量小于1/4时,可以直接将每个参考点坐标对应的4个实际参考点的计算得到的灰度值G传递入图像排列向量,对图像排列向量的4个通道进行赋值后输出即可,否则,将图像排列向量的所有通道都赋值为0,由于按RGBA格式顺序排列输出是连续传递入灰度值,因此输出的是YYYYYYYY……,是实际符合Gray8格式的图像数据。
针对上述场景,渲染区域实际是浪费了3/4,并且还需要在排列输出时进行逻辑判断,极大影响渲染区域中的图像数据转换处理效率,因此,可以设置渲染区域的区域尺寸与原始图像的图像尺寸相比,渲染区域的高度是原始图像的1/4,对应的,缩小渲染区域,在对渲染区域中处理得到的目标图像数据输出时,可以无需执行逻辑判断,可以直接将每个参考点坐标对应的4个实际参考点的计算得到的灰度值G传递入图像排列向量进行赋值后输出即可,极大提高渲染效率;而由于按RGBA格式顺序排列输出是连续传递入灰度值,因此输出的是YYYYYYYY……,是实际符合Gray8格式的图像数据。
又例如,假设原始图像格式是RGBA格式,目标图像格式是YUV格式中NV12格式,目标图像数据包括Y、U、V三个通道的数据,对于Y通道,可以设置图像渲染区域的宽度与原始图像的宽度相同、高度是原始图像的1/4,对应的,输出Y通道的目标图像数据可以与上述输出Gray8格式的灰度值相同,在此不再赘述;对于U、V通道,可以设置与Y通道的渲染区域连续,并且图像渲染区域的宽度与原始图像的宽度相同、高度是原始图像的1/8,可以直接将每个参考点坐标对应的4个实际参考点的计算得到的Y、U值填入图像排列向量,由于将Y、U、V通道的图像数据按照RGBA格式的顺序排列输出,因此输出的数据是YYYYYYYYYYYYYYYYUVUVUVUV……,是实际符合YUV中NV12格式的图像数据。
以此类推,可以根据不同的目标图像格式,以符合原始图像格式的排列方式输出目标图像数据。
<图像处理装置>
在本实施例中,还提供一种图像处理装置3000,设置图像处理器侧,该图像处理器可以是GPU或者GPGPU等专门实施图像处理的微处理器。图像处理装置3000可以作为功能模块或者软件程序内置于图像处理器中,或者通过图像处理器所支持的连接方式,与图像处理器连接,以实施本实施例中提供的任意一项图像处理方法,在此不再赘述。
图像处理装置3000,如图6所示,包括:
图像数据获取单元3100,用于获取原始图像的图像属性以及纹理数据;
其中,所述图像属性至少包括图像的宽度、高度;
图像数据处理单元3200,用于根据所述原始图像的图像属性、所述原始图像格式以及待转换的目标图像格式,对所述原始图像的纹理数据进行处理,得到符合目标图像格式的目标图像数据;
其中,所述目标图像格式是所述图像处理器不支持输出的图像格式;
图像数据输出单元3300,用于以符合所述原始图像格式的排列方式输出所述目标图像数据,得到符合所述目标图像格式的目标图像。
一个例子中,图像数据获取单元3100用于:
获取所述原始图像的图像数据以及图像属性;
根据所述原始图像的图像数据以及图像属性,生成所述原始图像的纹理数据。
一个例子中,图像数据获取单元3100用于:
根据所述原始图像的图像属性、所述原始图像格式以及所述目标图像格式三者的至少其中之一,设置对所述原始图像的纹理数据进行处理的渲染区域;
根据所述原始图像的图像属性、所述原始图像格式、所述目标图像格式以及所述渲染区域的区域尺寸,确定采样点坐标转换关系;
其中,所述采样点坐标转换关系是所述渲染区域中的采样点坐标与所述原始图像的纹理数据中的采样参考点坐标之间的坐标转换关系;
在所述渲染区域中,根据所述采样点坐标转换关系对所述纹理数据进行采样处理,得到所述目标图像数据。
图像数据处理单元3200中用于执行所述设置对所述原始图像的纹理数据进行处理的渲染区域的步骤的装置还可以用于:
设置所述渲染区域的起始坐标;
根据所述图像属性,设置所述渲染区域的区域尺寸与所述原始图像的图像尺寸相同;
和/或,
所述设置对所述原始图像的纹理数据进行处理的渲染区域的步骤包括:
设置所述渲染区域的起始坐标;
根据所述原始图像格式以及所述目标图像格式,确定缩小比例因子;
根据所述图像属性以及所述缩小比例因子,设置所述渲染区域的区域尺寸,使得所述区域尺寸与所述原始图像的图像尺寸的比例符合所述缩小比例因子。
图像数据处理单元3200中用于根据所述原始图像的图像属性、所述原始图像格式、所述目标图像格式以及所述渲染区域的区域尺寸,确定采样点坐标转换关系的步骤的装置还用于:
根据所述原始图像格式与所述目标图像格式,获取所述采样转换因子;
根据所述原始图像的图像属性、所述采样转换因子以及所述渲染区域的区域尺寸,得到所述采样点坐标转换关系。
图像数据处理单元3200中用于在所述渲染区域中,根据所述采样点坐标转换关系对所述纹理数据进行采样处理,得到所述目标图像数据的步骤的装置,还可以用于:
对所述渲染区域中每个采样点坐标,根据所述采样点坐标转换关系,确定与所述采样点坐标对应的在所述纹理数据中的采样参考点坐标;
对每个所述采样参考点坐标,确定符合采样点数目的实际采样点坐标;
对与每个所述实际采样点坐标对应的所述纹理数据进行转换处理,得到对应的所述目标图像数据。
进一步地,该装置还可以用于:根据所述原始图像格式,确定所述采样点数目。
一个例子中,图像数据输出单元3300还可以用于:
构建符合所述原始图像格式的图像排列向量;
将所述目标图像数据传递入所述图像排列向量后输出,实现以符合所述原始图像格式的排列方式输出所述目标图像数据。
本领域技术人员应当明白,可以通过各种方式来实现图像处理装置3000。例如,可以通过指令配置处理器来实现图像处理装置3000。例如,可以将指令存储在ROM中,并且当启动设备时,将指令从ROM读取到可编程器件中来实现图像处理装置3000。例如,可以将图像处理装置3000固化到专用器件(例如ASIC)中。可以将图像处理装置3000分成相互独立的单元,或者可以将它们合并在一起实现。图像处理装置3000可以通过上述各种实现方式中的一种来实现,或者可以通过上述各种实现方式中的两种或更多种方式的组合来实现。
<图像处理器>
在本实施例中,还提供一种图像处理器,用于根据所接收的可执行指令的控制,执行本实施例中提供的任意一项图像处理方法。
图像处理器可以是任意型号的、执行本实施例中提供的任意一项图像处理方法的GPU或者GPGPU。
<电子设备>
在本实施例中,还提供一种电子设备4000,如图7所示,包括:
存储器4100,用于存储可执行的指令;
处理器4200,用于根据所述可执行的指令的控制,运行所述电子设备执行本实施例中提供过的所述的任意一项的图像处理方法。
在本实施例中,电子设备4000可以是手机、掌上电脑、工作站、游戏机、台式计算机、笔记本电脑、平板电脑等任意能实现图像处理功能的设备,处理器4200可以是GPU或GPGPU这类图像处理器。
电子设备4000还可以包括其他的功能装置,例如,如图1所示的电子设备1000。
以上已经结合附图描述了本发明的实施例,根据本实施例,提供一种图像处理方法、装置、图像处理器及电子设备,通过对原始图像的纹理数据进行处理,转换得到图像处理器所不支持输出的图像格式的图像数据后,以符合图像处理器所支持输出的图像格式的排列方式输出,实现通过图像处理器直接输出符合其所不支持输出的图像格式的图像数据,避免通过图像处理器之外的中央处理器进行图像转换处理带来的较长的处理耗时,极大提高图像转换处理的效率,尤其适合存在快速处理图像需求的场景。同时,可以避免消耗中央处理器的处理资源,降低对设备运行性能的影响。
本发明可以是系统、方法和/或计算机程序产品。计算机程序产品可以包括计算机可读存储介质,其上载有用于使处理器实现本发明的各个方面的计算机可读程序指令。
计算机可读存储介质可以是可以保持和存储由指令执行设备使用的指令的有形设备。计算机可读存储介质例如可以是――但不限于――电存储设备、磁存储设备、光存储设备、电磁存储设备、半导体存储设备或者上述的任意合适的组合。计算机可读存储介质的更具体的例子(非穷举的列表)包括:便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、静态随机存取存储器(SRAM)、便携式压缩盘只读存储器(CD-ROM)、数字多功能盘(DVD)、记忆棒、软盘、机械编码设备、例如其上存储有指令的打孔卡或凹槽内凸起结构、以及上述的任意合适的组合。这里所使用的计算机可读存储介质不被解释为瞬时信号本身,诸如无线电波或者其他自由传播的电磁波、通过波导或其他传输媒介传播的电磁波(例如,通过光纤电缆的光脉冲)、或者通过电线传输的电信号。
这里所描述的计算机可读程序指令可以从计算机可读存储介质下载到各个计算/处理设备,或者通过网络、例如因特网、局域网、广域网和/或无线网下载到外部计算机或外部存储设备。网络可以包括铜传输电缆、光纤传输、无线传输、路由器、防火墙、交换机、网关计算机和/或边缘服务器。每个计算/处理设备中的网络适配卡或者网络接口从网络接收计算机可读程序指令,并转发该计算机可读程序指令,以供存储在各个计算/处理设备中的计算机可读存储介质中。
用于执行本发明操作的计算机程序指令可以是汇编指令、指令集架构(ISA)指令、机器指令、机器相关指令、微代码、固件指令、状态设置数据、或者以一种或多种编程语言的任意组合编写的源代码或目标代码,所述编程语言包括面向对象的编程语言—诸如Smalltalk、C++等,以及常规的过程式编程语言—诸如“C”语言或类似的编程语言。计算机可读程序指令可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络—包括局域网(LAN)或广域网(WAN)—连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。在一些实施例中,通过利用计算机可读程序指令的状态信息来个性化定制电子电路,例如可编程逻辑电路、现场可编程门阵列(FPGA)或可编程逻辑阵列(PLA),该电子电路可以执行计算机可读程序指令,从而实现本发明的各个方面。
这里参照根据本发明实施例的方法、装置(系统)和计算机程序产品的流程图和/或框图描述了本发明的各个方面。应当理解,流程图和/或框图的每个方框以及流程图和/或框图中各方框的组合,都可以由计算机可读程序指令实现。
这些计算机可读程序指令可以提供给通用计算机、专用计算机或其它可编程数据处理装置的处理器,从而生产出一种机器,使得这些指令在通过计算机或其它可编程数据处理装置的处理器执行时,产生了实现流程图和/或框图中的一个或多个方框中规定的功能/动作的装置。也可以把这些计算机可读程序指令存储在计算机可读存储介质中,这些指令使得计算机、可编程数据处理装置和/或其他设备以特定方式工作,从而,存储有指令的计算机可读介质则包括一个制造品,其包括实现流程图和/或框图中的一个或多个方框中规定的功能/动作的各个方面的指令。
也可以把计算机可读程序指令加载到计算机、其它可编程数据处理装置、或其它设备上,使得在计算机、其它可编程数据处理装置或其它设备上执行一系列操作步骤,以产生计算机实现的过程,从而使得在计算机、其它可编程数据处理装置、或其它设备上执行的指令实现流程图和/或框图中的一个或多个方框中规定的功能/动作。
附图中的流程图和框图显示了根据本发明的多个实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或指令的一部分,所述模块、程序段或指令的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。对于本领域技术人员来说公知的是,通过硬件方式实现、通过软件方式实现以及通过软件和硬件结合的方式实现都是等价的。
以上已经描述了本发明的各实施例,上述说明是示例性的,并非穷尽性的,并且也不限于所披露的各实施例。在不偏离所说明的各实施例的范围和精神的情况下,对于本技术领域的普通技术人员来说许多修改和变更都是显而易见的。本文中所用术语的选择,旨在最好地解释各实施例的原理、实际应用或对市场中的技术改进,或者使本技术领域的其它普通技术人员能理解本文披露的各实施例。本发明的范围由所附权利要求来限定。

Claims (10)

1.一种图像处理方法,其中,通过图像处理器实施,所述图像处理器所支持输出的图像格式是原始图像格式,所述方法包括:
获取原始图像的图像属性以及纹理数据;
其中,所述图像属性至少包括图像的宽度、高度;
根据所述原始图像的图像属性、所述原始图像格式以及目标图像格式三者的至少其中之一,设置对所述原始图像的纹理数据进行处理的渲染区域;
根据所述原始图像的图像属性、所述原始图像格式、所述目标图像格式以及所述渲染区域的区域尺寸,确定采样点坐标转换关系,其中,所述采样点坐标转换关系是所述渲染区域中的采样点坐标与所述原始图像的纹理数据中的采样参考点坐标之间的坐标转换关系;
在所述渲染区域中,根据所述采样点坐标转换关系对所述纹理数据进行采样处理,得到所述目标图像数据;
其中,所述目标图像格式是所述图像处理器不支持输出的图像格式;
以符合所述原始图像格式的排列方式输出所述目标图像数据,得到符合所述目标图像格式的目标图像。
2.根据权利要求1所述的方法,其中,
所述获取原始图像的图像属性以及纹理数据的步骤包括:
获取所述原始图像的图像数据以及图像属性;
根据所述原始图像的图像数据以及图像属性,生成所述原始图像的纹理数据。
3.根据权利要求1所述的方法,其中,
所述设置对所述原始图像的纹理数据进行处理的渲染区域的步骤包括:
设置所述渲染区域的起始坐标;
根据所述图像属性,设置所述渲染区域的区域尺寸与所述原始图像的图像尺寸相同;
和/或,
所述设置对所述原始图像的纹理数据进行处理的渲染区域的步骤包括:
设置所述渲染区域的起始坐标;
根据所述原始图像格式以及所述目标图像格式,确定缩小比例因子;
根据所述图像属性以及所述缩小比例因子,设置所述渲染区域的区域尺寸,使得所述区域尺寸与所述原始图像的图像尺寸的比例符合所述缩小比例因子。
4.根据权利要求1所述的方法,其中,所述根据所述原始图像的图像属性、所述原始图像格式、所述目标图像格式以及所述渲染区域的区域尺寸,确定采样点坐标转换关系的步骤包括:
根据所述原始图像格式与所述目标图像格式,获取采样转换因子;
根据所述原始图像的图像属性、所述采样转换因子以及所述渲染区域的区域尺寸,得到所述采样点坐标转换关系。
5.根据权利要求1所述的方法,其中,所述在所述渲染区域中,根据所述采样点坐标转换关系对所述纹理数据进行采样处理,得到所述目标图像数据的步骤,包括:
对所述渲染区域中每个采样点坐标,根据所述采样点坐标转换关系,确定与所述采样点坐标对应的在所述纹理数据中的采样参考点坐标;
对每个所述采样参考点坐标,确定符合采样点数目的实际采样点坐标;
对与每个所述实际采样点坐标对应的所述纹理数据进行转换处理,得到对应的所述目标图像数据。
6.根据权利要求5所述的方法,其中,还包括:
根据所述原始图像格式,确定所述采样点数目。
7.根据权利要求1所述的方法,其中,所述以符合所述原始图像格式的排列方式输出所述目标图像数据的步骤包括:
构建符合所述原始图像格式的图像排列向量;
将所述目标图像数据传递入所述图像排列向量后输出,实现以符合所述原始图像格式的排列方式输出所述目标图像数据。
8.一种图像处理装置,设置于图像处理器侧,所述图像处理器所支持输出的图像格式是原始图像格式,所述图像处理装置包括:
图像数据获取单元,用于获取原始图像的图像属性以及纹理数据;
其中,所述图像属性至少包括图像的宽度、高度;
图像数据处理单元,用于根据所述原始图像的图像属性、所述原始图像格式以及目标图像格式三者的至少其中之一,设置对所述原始图像的纹理数据进行处理的渲染区域;根据所述原始图像的图像属性、所述原始图像格式、所述目标图像格式以及所述渲染区域的区域尺寸,确定采样点坐标转换关系;其中,所述采样点坐标转换关系是所述渲染区域中的采样点坐标与所述原始图像的纹理数据中的采样参考点坐标之间的坐标转换关系;在所述渲染区域中,根据所述采样点坐标转换关系对所述纹理数据进行采样处理,得到所述目标图像数据;
其中,所述目标图像格式是所述图像处理器不支持输出的图像格式;
图像数据输出单元,用于以符合所述原始图像格式的排列方式输出所述目标图像数据,得到符合所述目标图像格式的目标图像。
9.一种图像处理器,其中,用于根据所接收的可执行指令的控制,执行权利要求1-7中任意一项所述的图像处理方法。
10.一种电子设备,其中,包括:
存储器,用于存储可执行的指令;
处理器,用于根据所述可执行的指令的控制,运行所述电子设备执行权利要求1-7中任意一项所述的图像处理方法。
CN201810894900.3A 2018-07-30 2018-07-30 图像处理方法、装置、图像处理器及电子设备 Active CN110782387B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201810894900.3A CN110782387B (zh) 2018-07-30 2018-07-30 图像处理方法、装置、图像处理器及电子设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810894900.3A CN110782387B (zh) 2018-07-30 2018-07-30 图像处理方法、装置、图像处理器及电子设备

Publications (2)

Publication Number Publication Date
CN110782387A CN110782387A (zh) 2020-02-11
CN110782387B true CN110782387B (zh) 2023-09-22

Family

ID=69382946

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810894900.3A Active CN110782387B (zh) 2018-07-30 2018-07-30 图像处理方法、装置、图像处理器及电子设备

Country Status (1)

Country Link
CN (1) CN110782387B (zh)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112615976B (zh) * 2020-11-30 2023-02-03 展讯半导体(成都)有限公司 颜色格式转换方法、装置、电子设备及存储介质
CN112991214B (zh) * 2021-03-18 2024-03-08 成都极米科技股份有限公司 图像处理方法、图像渲染方法、装置及影设备
CN113554721B (zh) * 2021-07-23 2023-11-14 北京百度网讯科技有限公司 图像数据格式转换方法和装置

Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0997343A (ja) * 1995-09-29 1997-04-08 Canon Inc テクスチャデータ生成方法及び装置及びコンピュータ制御装置
CN1622599A (zh) * 2004-12-24 2005-06-01 北京中星微电子有限公司 一种实现动态图像特效处理的电脑摄像头及方法
CN102854495A (zh) * 2012-07-10 2013-01-02 中国船舶重工集团公司第七二四研究所 基于d3d颜色融合技术的雷达视频渲染显示的实现方法
CN107004294A (zh) * 2014-12-23 2017-08-01 英特尔公司 用于高吞吐量栅格器的方法和装置
CN106997610A (zh) * 2016-01-26 2017-08-01 阿里巴巴集团控股有限公司 一种图像渲染方法、装置及电子设备
CN107093209A (zh) * 2017-03-20 2017-08-25 北京小鸟看看科技有限公司 图像处理方法、设备及虚拟现实设备
CN107133016A (zh) * 2016-02-28 2017-09-05 谷歌公司 图像处理器的宏i/o单元
CN107358643A (zh) * 2017-07-04 2017-11-17 网易(杭州)网络有限公司 图像处理方法、装置、电子设备及存储介质
CN108062784A (zh) * 2018-02-05 2018-05-22 深圳市易尚展示股份有限公司 三维模型纹理贴图转换方法与装置
WO2018094814A1 (zh) * 2016-11-28 2018-05-31 深圳Tcl数字技术有限公司 视频合成方法及装置

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7173635B2 (en) * 2003-03-25 2007-02-06 Nvidia Corporation Remote graphical user interface support using a graphics processing unit
US8452160B2 (en) * 2007-06-20 2013-05-28 Sony Online Entertainment Llc System and method for portrayal of object or character target features in an at least partially computer-generated video
KR101214675B1 (ko) * 2010-03-26 2012-12-21 삼성전자주식회사 휴대용 단말의 영상 처리 방법 및 장치
US9882979B2 (en) * 2015-03-16 2018-01-30 International Business Machines Corporation Image file transmission

Patent Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0997343A (ja) * 1995-09-29 1997-04-08 Canon Inc テクスチャデータ生成方法及び装置及びコンピュータ制御装置
CN1622599A (zh) * 2004-12-24 2005-06-01 北京中星微电子有限公司 一种实现动态图像特效处理的电脑摄像头及方法
CN102854495A (zh) * 2012-07-10 2013-01-02 中国船舶重工集团公司第七二四研究所 基于d3d颜色融合技术的雷达视频渲染显示的实现方法
CN107004294A (zh) * 2014-12-23 2017-08-01 英特尔公司 用于高吞吐量栅格器的方法和装置
CN106997610A (zh) * 2016-01-26 2017-08-01 阿里巴巴集团控股有限公司 一种图像渲染方法、装置及电子设备
CN107133016A (zh) * 2016-02-28 2017-09-05 谷歌公司 图像处理器的宏i/o单元
WO2018094814A1 (zh) * 2016-11-28 2018-05-31 深圳Tcl数字技术有限公司 视频合成方法及装置
CN107093209A (zh) * 2017-03-20 2017-08-25 北京小鸟看看科技有限公司 图像处理方法、设备及虚拟现实设备
CN107358643A (zh) * 2017-07-04 2017-11-17 网易(杭州)网络有限公司 图像处理方法、装置、电子设备及存储介质
CN108062784A (zh) * 2018-02-05 2018-05-22 深圳市易尚展示股份有限公司 三维模型纹理贴图转换方法与装置

Also Published As

Publication number Publication date
CN110782387A (zh) 2020-02-11

Similar Documents

Publication Publication Date Title
US10110936B2 (en) Web-based live broadcast
US11445202B2 (en) Adaptive transfer function for video encoding and decoding
RU2677584C1 (ru) Использование межкадровой когерентности в архитектуре построения изображений с сортировкой примитивов на промежуточном этапе
US20140092439A1 (en) Encoding images using a 3d mesh of polygons and corresponding textures
KR102617258B1 (ko) 이미지 프로세싱 방법 및 장치
CN110782387B (zh) 图像处理方法、装置、图像处理器及电子设备
US20150279055A1 (en) Mipmap compression
JP6182225B2 (ja) カラーバッファ圧縮
TWI695295B (zh) 基於擴增實境的圖像處理方法、裝置及電子設備
CN114040246A (zh) 图形处理器的图像格式转换方法、装置、设备及存储介质
US8655063B2 (en) Decoding system and method operable on encoded texture element blocks
WO2023134625A1 (zh) 特效优化方法、装置、存储介质及程序产品
CN112184538A (zh) 图像加速方法、相关装置、设备及存储介质
CN114723600A (zh) 美妆特效的生成方法、装置、设备、存储介质和程序产品
US9317891B2 (en) Systems and methods for hardware-accelerated key color extraction
JP2018534648A (ja) グラフィカルコマンドトークンの修正
CN114501141B (zh) 视频数据处理方法、装置、设备和介质
CN114463478A (zh) 图像渲染的处理方法、装置及电子设备
KR102091065B1 (ko) 3차원 라이팅 처리장치 및 방법
TWI550554B (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
TA01 Transfer of patent application right
TA01 Transfer of patent application right

Effective date of registration: 20200526

Address after: 310051 room 508, floor 5, building 4, No. 699, Wangshang Road, Changhe street, Binjiang District, Hangzhou City, Zhejiang Province

Applicant after: Alibaba (China) Co.,Ltd.

Address before: 100083, Beijing, Haidian District, Cheng Fu Road, No. 28, A building, block 12

Applicant before: UC MOBILE Co.,Ltd.

GR01 Patent grant
GR01 Patent grant