图像预处理方法、装置、计算机设备及存储介质制造方法及图纸

技术编号:30230509 阅读:19 留言:0更新日期:2021-09-29 10:02
本发明专利技术实施例公开了一种图像预处理方法,通过获取待处理图像,待处理图像的格式为YUV数据;利用libyuv库对待处理图像进行变换处理,得到格式为YUV数据的变换图像;利用android底层的预设计算引擎对变换图像进行格式转换,得到格式为bitmap的目标图像,通过使用性能更优且处理速度更高的libyuv库和计算引擎,大大提高了将YUV数据转换为业务需要的bitmap速度,从而提高图像预处理的响应速度,提高了对图像预处理的效率。此外,还提出了一种图像预处理装置、计算机设备及存储介质。计算机设备及存储介质。计算机设备及存储介质。

【技术实现步骤摘要】
图像预处理方法、装置、计算机设备及存储介质


[0001]本专利技术涉及计算机
,尤其涉及一种图像预处理方法、装置、计算机设备及存储介质。

技术介绍

[0002]随着科技技术的不断发展,一些电子设备如点读机、家教机等得到了广泛使用。然而对于点读机等电子设备使用过程,会涉及到图像的处理,例如,相机对预览帧图像数据预处理,传统的方法是通过OpenCV算法将YUV数据(一种颜色编码方式,也称YCrCb)转换为业务需要的bitmap(位图文件),即对YUV数据对每个像素的数据进行逐一的处理,处理的数据量很大,需要400ms左右,影响处理速度,导致处理耗时长,降低了图像预处理的速度,影响用户体验。

技术实现思路

[0003]基于此,有必要针对上述问题,提出一种能够加速图像处理的图像预处理方法、装置、计算机设备及存储介质。
[0004]一种图像预处理方法,所述方法包括:
[0005]获取待处理图像,所述待处理图像的格式为YUV数据;
[0006]利用libyuv库对所述待处理图像进行变换处理,得到格式为YUV数据的变换图像;
[0007]利用android底层的预设计算引擎对所述变换图像进行格式转换,得到格式为bitmap的目标图像。
[0008]一种图像预处理装置,所述装置包括:
[0009]获取模块,用于获取待处理图像,所述待处理图像的格式为YUV数据;
[0010]变换模块,用于利用libyuv库对所述待处理图像进行变换处理,得到格式为YUV数据的变换图像;
[0011]转换模块,用于利用android底层的预设计算引擎对所述变换图像进行格式转换,得到格式为bitmap的目标图像。
[0012]一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述计算机程序被所述处理器执行时,使得所述处理器执行以下步骤:
[0013]获取待处理图像,所述待处理图像的格式为YUV数据;
[0014]利用libyuv库对所述待处理图像进行变换处理,得到格式为YUV数据的变换图像;
[0015]利用android底层的预设计算引擎对所述变换图像进行格式转换,得到格式为bitmap的目标图像。
[0016]一种计算机可读介质,存储有计算机程序,所述计算机程序被处理器执行时,使得所述处理器执行以下步骤:
[0017]获取待处理图像,所述待处理图像的格式为YUV数据;
[0018]利用libyuv库对所述待处理图像进行变换处理,得到格式为YUV数据的变换图像;
[0019]利用android底层的预设计算引擎对所述变换图像进行格式转换,得到格式为bitmap的目标图像。
[0020]上述图像预处理方法、系统、计算机设备及存储介质,获取待处理图像,所述待处理图像的格式为YUV数据;利用libyuv库对所述待处理图像进行变换处理,得到格式为YUV数据的变换图像;利用android底层的预设计算引擎对所述变换图像进行格式转换,得到格式为bitmap的目标图像。通过使用性能更优且处理速度更高的libyuv库和计算引擎,大大提高了将YUV数据转换为业务需要的bitmap速度,从而提高图像预处理的响应速度,提高了对图像预处理的效率。
附图说明
[0021]为了更清楚地说明本专利技术实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本专利技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
[0022]其中:
[0023]图1为一个实施例中图像预处理方法的流程图;
[0024]图2为一个实施例中对待处理图像进行变换处理方法的流程图;
[0025]图3为另一个实施例中对待处理图像进行变换处理方法的流程图;
[0026]图4为一个实施例中图像预处理装置的结构框图;
[0027]图5为一个实施例中计算机设备的结构框图。
具体实施方式
[0028]下面将结合本专利技术实施例中的附图,对本专利技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本专利技术一部分实施例,而不是全部的实施例。基于本专利技术中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本专利技术保护的范围。
[0029]如图1所示,在一个实施例中,提供了一种图像预处理方法,该图像预处理方法既可以应用于终端,也可以应用于服务器,本实施例以应用于服务器举例说明。该图像预处理方法具体包括以下步骤:
[0030]步骤102,获取待处理图像,待处理图像的格式为YUV数据。
[0031]其中,待处理图像是指需要进行格式转换的图像,例如,点读机中用户对待处理的图像的预览。具体地,可以通过相机拍摄采集得到该待处理图像,且该待处理图像的格式为YUV数据,在一个具体实施方式中该YUV数据为yuvi420格式。
[0032]步骤104,利用libyuv库对待处理图像进行变换处理,得到格式为YUV数据的变换图像。
[0033]其中,libyuv库是Google(谷歌)开源的实现各种YUV与RGB之间相互转换、旋转、缩放的库。它是跨平台的,可在Windows、Linux、Mac、Android等操作系统,x86、x64、arm架构上进行编译运行,支持SSE、AVX、NEON等simd指令加速。具体地,利用libyuv库自带的图像变换算法如旋转算法、压缩算法或者镜像算法等对待处理图像对应的YUV数据进行快速旋转、镜
像和裁剪等处理,生成格式为YUV数据的变换图像。可以理解地,由于libyuv库是libyuv源码可以直接对待处理图像进行变换处理,相较于传统的OPENCV的变换处理,无需编译源码或者借助二进制库,提高了对待处理图像的变换处理效率。进一步地,libyuv库还支持simd指令加速,因此,还可以利用ibyuv库中的simd指令对变换处理的过程进行加速,进一步加快了对待处理图像的变换处理速度。
[0034]步骤106,利用android底层的预设计算引擎对变换图像进行格式转换,得到格式为bitmap的目标图像。
[0035]其中,android底层的计算引擎是用于计算对数据进行并计算处理并将合适的计算结果根据要求给予返回的数据处理框架,例如,RenderScript计算引擎。具体地,利用android底层的预设计算引擎,通过YUV数据与RGB数据的转换格式实现了将YUV格式的变换图像快速转换为格式为bitmap的目标图像,进而在电子设备上进行快速显示,从而提升了用户的体验。可以理解地,由于android底层的计算引擎具有更高的计算性能,因此,利用预设计算引擎对变换图像进行格式转换,大大提高了图像的格式转变速度,从而提高图像预处理的响应速度,提高了对图像预处理的效率。
[0036]在一具体实施方式中,本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种图像预处理方法,其特征在于,所述方法包括:获取待处理图像,所述待处理图像的格式为YUV数据;利用libyuv库对所述待处理图像进行变换处理,得到格式为YUV数据的变换图像;利用android底层的预设计算引擎对所述变换图像进行格式转换,得到格式为bitmap的目标图像。2.根据权利要求1所述的图像预处理方法,其特征在于,所述利用libyuv库对所述待处理图像进行变换处理,得到格式为YUV数据的变换图像,包括:将所述待处理图像的YUV数据划分为多组数据;利用所述libyuv库中的simd指令对各组数据并行变换处理,得到所述变换图像。3.根据权利要求1所述的图像预处理方法,其特征在于,所述利用所述libyuv库中的simd指令对各组数据并行变换处理,得到所述变换图像,包括:利用所述libyuv库中的图像旋转算法对所述各组数据进行并行旋转处理,得到旋转图像;利用所述libyuv库中的图像压缩算法对所述旋转图像进行压缩处理,得到压缩图像;利用所述libyuv库中的镜像变换算法对所述压缩图像进行镜像变换,生成格式为YUV数据的所述变换图像。4.根据权利要求1所述的图像预处理方法,其特征在于,所述利用android底层的预设计算引擎对所述变换图像进行格式转换,得到格式为bitmap的目标图像,包括:利用RenderScript计算引擎中的计算框架对所述变换图像的YUV数据并行计算,得到所述bitmap的目标图像。5.根据权利要求4所述的图像预处理方法,其特征在于,所述利用所述RenderScript计算引擎中的计算框架对所述变换图像的YUV数据并行计算,得到所述bitmap的目标图像,包括:将所述变换图像的YUV数据划分为多组...

【专利技术属性】
技术研发人员:卢浪平
申请(专利权)人:东莞市小精灵教育软件有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1