一种图像的处理方法、装置及电子设备与流程

文档序号:16538751发布日期:2019-01-08 20:08阅读:148来源:国知局
一种图像的处理方法、装置及电子设备与流程

本说明书实施例涉及计算机网络技术领域,尤其涉及一种图像的处理方法、装置及电子设备。



背景技术:

随着人工智能技术的发展,卷积神经网络在近几年被广泛应用在图像识别领域。目前一些终端设备的摄像头在组装后具有旋转角度,这使得终端设备基于摄像头采集获得的图像也具有旋转角度,导致在使用卷积神经网络处理这类图像前,终端设备必须要先对图像进行反向旋转,使其与卷积神经网络模型的卷积核相匹配。

而终端设备旋转图像耗时较久,尤其当图像的分辨率较大或是帧数较多的情况下,旋转图像带来的延迟会影响用户的使用体验。



技术实现要素:

本说明书实施例其中一个目的是提供一种图像的处理方法、装置及电子设备,能够提高卷积神经网络模型的图像处理效率。

为了实现上述目的,本说明书实施例采用下述技术方案:

第一方面,本说明书实施例提供一种图像的处理方法,包括:

获取卷积神经网络模型的输入图像;

基于所述卷积神经网络模型的原始卷积核,确定与所述输入图像的旋转角度匹配的目标卷积核;

以所述目标卷积核作为所述卷积神经网络模型的卷积核,对所述输入图像进行处理。

第二方面,提供了一种图像的处理装置,包括:

获取模块,获取卷积神经网络模型的输入图像;

卷积核配置模块,基于所述卷积神经网络模型的原始卷积核,确定与所述输入图像的旋转角度匹配的目标卷积核;

图像处理模块,以所述目标卷积核作为所述卷积神经网络模型的卷积核,对所述输入图像进行处理。

第三方面,提供了一种电子设备,包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述计算机程序被所述处理器执行:

获取卷积神经网络模型的输入图像;

基于所述卷积神经网络模型的原始卷积核,确定与所述输入图像的旋转角度匹配的目标卷积核;

以所述目标卷积核作为所述卷积神经网络模型的卷积核,对所述输入图像进行处理。

第四方面,提供了一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如下步骤:

获取卷积神经网络模型的输入图像;

基于所述卷积神经网络模型的原始卷积核,确定与所述输入图像的旋转角度匹配的目标卷积核;

以所述目标卷积核作为所述卷积神经网络模型的卷积核,对所述输入图像进行处理。

本说明书实施例采用的上述至少一个技术方案能够达到以下有益效果:

本说明书中,对卷积神经网络模型的卷积核进行调整,让卷积核主动适应输入图像的旋转角度,因此不需要终端设备再对输入图像进行旋转,从而大幅提高了卷积神经网络模型的图像处理效率,进而提高了用户的使用体验。

附图说明

为了更清楚地说明本说明书实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本说明书实施例中记载的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。

图1为本说明书实施例提供的图像的处理方法的流程示意图;

图2为本说明书实施例提供的图像的处理方法的详细流程示意图;

图3为本说明书实施例提供的图像的处理方法在实际应用中的流程示意图;

图4为本说明书实施例提供的图像的处理装置的逻辑结构示意图;

图5为本说明书实施例提供的电子设备的硬件结构示意图。

具体实施方式

为使本说明书实施例的目的、技术方案和优点更加清楚,下面将结合本说明书具体实施例及相应的附图对本说明书实施例的技术方案进行清楚、完整地描述。显然,所描述的实施例仅是本说明书一部分实施例,而不是全部的实施例。基于本说明书中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本说明书实施例保护的范围。

现有技术中,摄像头具有旋转角度的终端设备在利用卷积神经网络模型处理图像时,需要先对图像进行旋转,从而让图像主动适应卷积神经网络的卷积核。而在实际应用中,需要处理的图像往往辨率大且帧数多,若为每一帧图像进行旋转则耗时较久,造成图像处理效率不高,影响用户的使用体验。

有鉴于此,本说明书提出一种提高卷积神经网络模型的图像处理效率的技术方案。

一方面,本说明书实施例提供一种图像的处理方法,如图1所示,包括:

步骤102,获取卷积神经网络模型的输入图像;

针对步骤102而言:

输入图像可以由终端设备的摄像头采集得到,并通过终端设备发送获得。若终端设备的摄像头的具有旋转角度,则输入图像也具有同样的旋转角度;同理,若终端设备的摄像头不具有旋转角度,则输入图像也不具有的旋转角度。

步骤104,基于卷积神经网络模型的原始卷积核,确定与输入图像的旋转角度匹配的目标卷积核;

针对步骤104而言:

卷积神经网络模型的原始卷积核适用于常规的不具有旋转角度的输入图像;

进一步参考图2;

首先判断输入图像的旋转角度是否为零;

若输入图像的旋转角度为零,则将卷积神经网络模型的原始卷积核作为与输入图像的旋转角度匹配的目标卷积核,即卷积神经网络模型沿用原始卷积核;

若输入图像的旋转角度不为零,则对卷积神经网络模型的原始卷积核按照旋转角度进行旋转,确定与输入图像的旋转角度匹配的目标卷积核。

作为示例性介绍,假设大小为2×2原始卷积核的元素阵列为:

[1,2

3,4]

若输入图像的旋转角度为顺时针90°,则需要按照顺时针90°对原始卷积核的元素矩阵按照顺时针90°进行整体旋转,获得的目标卷积核,该目标卷积核的元素阵列为:

[3,1

4,2]

步骤106,以目标卷积核作为卷积神经网络模型的卷积核,对输入图像进行处理。

针对步骤106而言:

将输入图像输入至卷积神经网络模型,卷积神经网络模型基于目标卷积核,对输入图像进行卷积,从而完成相关的图形处理流程。需要说明的是,使用卷积神经网络模型对输入图像进行图像处理为现有技术,由于本文不对其进行改进,因此不再举例赘述。

本实施例中,对卷积神经网络模型的卷积核进行调整,让卷积核主动适应输入图像的旋转角度,因此不需要终端设备再对输入图像进行旋转,从而大幅提高了卷积神经网络模型的图像处理效率,进而提高了用户的使用体验。

具体地,在执行步骤104前,本实施例的处理方法还包括:

步骤103,获取输入图像的旋转角度。

如前所述,由于输入图像的旋转角度取决于终端设备的摄像头的旋转角度,而摄像头的旋转角是终端设备的固定设置,因此可以根据终端设备的信息确定输入图像的旋转角度。

作为示例性介绍:

可以根据终端设备的型号信息,确定输入图像的旋转角度。在实际应用中,可以建立型号信息列表,用于关联记录终端设备的型号信息以及终端设备的摄像头的旋转角度。在型号信息列表中的终端设备发送的图像作为卷积神经网络模型的输入图像时,可输直接从型号信息列表中获取向对应的摄像头的旋转角度,该摄像头的旋转角度即为输入图像的旋转角度。

此外,还可根据终端设备的系统信息,确定输入图像的旋转角度。目前安卓的终端设备的摄像头具有旋转角度,一般是顺时针90°。因此,在安卓系统的终端设备的图形作为卷积神经网络模型的输入图像时,可直接确定输入图像的旋转角度为90°。

下面结合实现方式,对本实施例的处理方法进行详细介绍。

在本实现方式中,假设网络侧的服务设备作为处理方法执行主体,用于实用卷积神经网络模型对终端设备的用户进行人脸识别,则主要流程如图3所示,包括:

终端设备向服务设备发送人脸识别请求消息,人脸识别请求消息携带终端设备的型号信息(也可以是终端设备的系统信息)。

服务设备在接收到人脸识别请求消息后,初始化配置卷积神经网络模型,并向终端设备返回人脸识别响应消息。

其中,初始化配置卷积神经网络模型,包括:

服务设备基于人脸识别请求消息中的型号信息,确定终端设备待发送的面部图像的旋转角度;

若面部图像的旋转角度为零,则沿用卷积神经网络模型的原始卷积核;

若面部图像的旋转角度不为零,则将卷积神经网络模型的原始卷积核按照旋转角度进行旋转,确定与输入图像的旋转角度匹配的目标卷积核,并将目标卷积核作为卷积神经网络模型的卷积核。

终端设备在接收到人脸识别响应消息后,激活自身的摄像头,以采集用户每一帧的面部图像,并将每一帧的面部图像发送至服务设备。

服务设备在接收到每一帧的面部图像后,使用配置好的卷积神经网络模型,对每一帧的面部图像进行卷积,并根据卷积结果完成人脸识别。

显然,本实现方式中,当终端设备的摄像头具有旋转角度时,通过旋转卷积神经网络模型的卷积核来代替旋转每一帧输入图像,从而省去了旋转输入图像的耗时。经实践发现,本实施例的处理方法在应用于人脸识别的场景时,可使整个流程耗时减少10%至30%左右。

需要说明的是,以上实现方式仅用于对本实施例的处理方法进行示例性介绍,并不对本实施例的处理方法的产生任何限制。

与本实施例的处理方法相对应地,本说明实施例还提供一种图像的处理装置,如图4所示,包括:

获取模块41,获取卷积神经网络模型的输入图像;

卷积核配置模块42,基于卷积神经网络模型的原始卷积核,确定与输入图像的旋转角度匹配的目标卷积核;

图像处理模块43,以目标卷积核作为卷积神经网络模型的卷积核,对输入图像进行处理。

本实施例中,对卷积神经网络模型的卷积核进行调整,让卷积核主动适应输入图像的旋转角度,因此不需要终端设备再对输入图像进行旋转,从而大幅提高了卷积神经网络模型的图像处理效率,进而提高了用户的使用体验。

下面对本实施例的处理装置进行详细介绍。

具体地,卷积神经网络模型的原始卷积核适用于常规的不具有旋转角度的输入图像;

因此若所述输入图像的旋转角度为零,则卷积核配置模块32将所述卷积神经网络模型的原始卷积核作为与所述输入图像的旋转角度匹配的目标卷积核。

若所述输入图像的旋转角度不为零,则卷积核配置模块32对所述卷积神经网络模型的原始卷积核按照所述旋转角度进行旋转(可以是对所述卷积神经网络模型的原始卷积核的元素阵列按照所述旋转角度进行整体旋转),得到与所述输入图像的旋转角度匹配的目标卷积核。

作为示例性介绍,假设输入图像的旋转角度为顺时针90°,大小为3×3原始卷积核的元素阵列为:

[1,2,3

4,5,6

7,8,9]

按照顺时针270°对原始卷积核进行旋转后,获得的目标卷积核的元素阵列为:

[3,6,9

2,5,8

1,4,7]

对比目标卷积核和原始卷积核可以看出,目标卷积核的元素阵列整体相对于原始卷积核发生了顺时针270°的旋转。

此外,本实施例的获取模块41在基于所述卷积神经网络模型的原始卷积核,确定与所述输入图像的旋转角度匹配的目标卷积核之前,还获取所述输入图像的旋转角度。

其中,所述输入图像由所述终端设备的摄像头采集后发送获得;获取模块41基于所述终端设备的信息,获取所述输入图像的旋转角度。

作为示例性介绍:

获取模块41可以根据终端设备的型号信息,确定输入图像的旋转角度。在实际应用中,可以建立型号信息列表,用于关联记录终端设备的型号信息以及终端设备的摄像头的旋转角度。在型号信息列表中的终端设备发送的图像作为卷积神经网络模型的输入图像时,可输直接从型号信息列表中获取向对应的摄像头的旋转角度,该摄像头的旋转角度即为输入图像的旋转角度。

或者,获取模块31还可根据终端设备的系统信息,确定输入图像的旋转角度。目前安卓的终端设备的摄像头具有旋转角度,一般是顺时针90°。因此,在安卓系统的终端设备的图形作为卷积神经网络模型的输入图像时,可直接确定输入图像的旋转角度为90°。

此外,如图5所示,本说明实施例还提供一种电子设备500,包括:

至少一个处理器501、存储器502、至少一个网络接口504和用户接口503。终端500中的各个组件通过总线系统505耦合在一起。可理解,总线系统505用于实现这些组件之间的连接通信。总线系统505除包括数据总线之外,还包括电源总线、控制总线和状态信号总线。但是为了清楚说明起见,在图5中将各种总线都标为总线系统505。

其中,用户接口503可以包括显示器、键盘或者点击设备(例如,鼠标,轨迹球(trackball)、触感板或者触摸屏等。

可以理解,本说明书实施例中的存储器502可以是易失性存储器或非易失性存储器,或可包括易失性和非易失性存储器两者。其中,非易失性存储器可以是只读存储器(rom,read-onlymemory)、可编程只读存储器(prom,programmable)、可擦除可编程只读存储器(eprom,erasableprom)、电可擦除可编程只读存储器(eeprom,electricallyeprom)或闪存。易失性存储器可以是随机存取存储器(ram,randomaccessmemory),其用作外部高速缓存。通过示例性但不是限制性说明,许多形式的ram可用,例如静态随机存取存储器(sram,staticram)、动态随机存取存储器(dram,dynamicram)、同步动态随机存取存储器(sdram,synchronousdram)、双倍数据速率同步动态随机存取存储器(ddrsdram,doubledataratesdram)、增强型同步动态随机存取存储器(esdram,enhancedsdram)、同步连接动态随机存取存储器(sldram,synchlinkdram)和直接内存总线随机存取存储器(drram,directrambusram)。本说明书实施例描述的系统和方法的存储器502旨在包括但不限于这些和任意其它适合类型的存储器。

在一些实施方式中,存储器502存储了如下的元素,可执行模块或者数据结构,或者他们的子集,或者他们的扩展集:操作系统5021和应用程序5022。

其中,操作系统5021,包含各种系统程序,例如框架层、核心库层、驱动层等,用于实现各种基础业务以及处理基于硬件的任务。应用程序5022,包含各种应用程序,例如媒体播放器(mediaplayer)、浏览器(browser)等,用于实现各种应用业务。实现本说明书实施例方法的程序可以包含在应用程序5022中。

在本说明书实施例中,电子设备500还包括:存储在存储器上502并可在处理器501上运行的计算机程序,计算机程序被处理器501执行时实现如下的步骤:

获取卷积神经网络模型的输入图像;

基于所述卷积神经网络模型的原始卷积核,确定与所述输入图像的旋转角度匹配的目标卷积核;

以所述目标卷积核作为所述卷积神经网络模型的卷积核,对所述输入图像进行处理。

可选地,本实施例的计算机程序被处理器501执行基于所述卷积神经网络模型的原始卷积核,确定与所述输入图像的旋转角度匹配的目标卷积核时包括如下的步骤:

若所述输入图像的旋转角度为零,则将所述卷积神经网络模型的原始卷积核作为与所述输入图像的旋转角度匹配的目标卷积核。

若所述输入图像的旋转角度不为零,则对所述卷积神经网络模型的原始卷积核按照所述旋转角度进行旋转,得到与所述输入图像的旋转角度匹配的目标卷积核。

可选地,本实施例的计算机程序被处理器501执行若所述输入图像的旋转角度不为零,则对所述卷积神经网络模型的原始卷积核按照所述旋转角度进行旋转时,包括以下步骤:

若所述输入图像的旋转角度不为零,则对所述卷积神经网络模型的原始卷积核的元素阵列按照所述旋转角度进行整体旋转。

可选地,本实施例的计算机程序被处理器501执行时,还包括以下步骤:

在基于所述卷积神经网络模型的原始卷积核,确定与所述输入图像的旋转角度匹配的目标卷积核之前,获取所述输入图像的旋转角度。

可选地,所述输入图像由所述终端设备的摄像头采集后发送获得;本实施例的计算机程序被处理器501执行获取所述输入图像的旋转角度时,包括以下步骤:

基于所述终端设备的信息,获取所述输入图像的旋转角度。

可选地,所述终端设备的信息包括以下至少一者:

所述终端设备的型号信息和所述终端设备的系统信息。

本实施例中,对卷积神经网络模型的卷积核进行调整,让卷积核主动适应输入图像的旋转角度,因此不需要终端设备再对输入图像进行旋转,从而大幅提高了卷积神经网络模型的图像处理效率,进而提高了用户的使用体验。

上文揭示的处理方法的实施例可以应用于处理器901中,或者由处理器901实现。处理器901可能是一种集成电路芯片,具有信号的处理能力。在实现过程中,上述方法的各步骤可以通过处理器901中的硬件的集成逻辑电路或者软件形式的指令完成。上述的处理器901可以是通用处理器、数字信号处理器(dsp,digitalsignalprocessor)、专用集成电路(asic,applicationspecificintegratedcircuit)、现成可编程门阵列(fpga,fieldprogrammablegatearray)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。可以实现或者执行本发明实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合本发明实施例所公开的方法的步骤可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的计算机可读存储介质中。该计算机可读存储介质位于存储器902,处理器901读取存储器902中的信息,结合其硬件完成上述方法的步骤。

可以理解的是,本发明实施例描述的这些实施例可以用硬件、软件、固件、中间件、微码或其组合来实现。对于硬件实现,处理单元可以实现在一个或多个专用集成电路、数字信号处理器、数字信号处理设备(dspd,dspdevice,)、可编程逻辑设备(pld,programmablelogicdevice)、现场可编程门阵列(fpga,field-programmablegatearray)、通用处理器、控制器、微控制器、微处理器、用于执行本申请所述功能的其它电子单元或其组合中。

对于软件实现,可通过执行本发明实施例所述功能的模块(例如过程、函数等)来实现本发明实施例所述的技术。软件代码可存储在存储器中并通过处理器执行。存储器可以在处理器中或在处理器外部实现。

此外,本说明实施例还提供一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如下步骤:

获取卷积神经网络模型的输入图像;

基于所述卷积神经网络模型的原始卷积核,确定与所述输入图像的旋转角度匹配的目标卷积核;

以所述目标卷积核作为所述卷积神经网络模型的卷积核,对所述输入图像进行处理。

可选地,本实施例的计算机程序被处理器执行基于所述卷积神经网络模型的原始卷积核,确定与所述输入图像的旋转角度匹配的目标卷积核时包括如下的步骤:

若所述输入图像的旋转角度为零,则将所述卷积神经网络模型的原始卷积核作为与所述输入图像的旋转角度匹配的目标卷积核。

若所述输入图像的旋转角度不为零,则对所述卷积神经网络模型的原始卷积核按照所述旋转角度进行旋转,得到与所述输入图像的旋转角度匹配的目标卷积核。

可选地,本实施例的计算机程序被处理器执行若所述输入图像的旋转角度不为零,则对所述卷积神经网络模型的原始卷积核按照所述旋转角度进行旋转时,包括以下步骤:

若所述输入图像的旋转角度不为零,则对所述卷积神经网络模型的原始卷积核的元素阵列按照所述旋转角度进行整体旋转。

可选地,本实施例的计算机程序被处理器执行时,还包括以下步骤:

在基于所述卷积神经网络模型的原始卷积核,确定与所述输入图像的旋转角度匹配的目标卷积核之前,获取所述输入图像的旋转角度。

可选地,所述输入图像由所述终端设备的摄像头采集后发送获得;本实施例的计算机程序被处理器执行获取所述输入图像的旋转角度时,包括以下步骤:

基于所述终端设备的信息,获取所述输入图像的旋转角度。

可选地,所述终端设备的信息包括以下至少一者:

所述终端设备的型号信息和所述终端设备的系统信息。

本实施例中,对卷积神经网络模型的卷积核进行调整,让卷积核主动适应输入图像的旋转角度,因此不需要终端设备再对输入图像进行旋转,从而大幅提高了卷积神经网络模型的图像处理效率,进而提高了用户的使用体验。

本领域技术人员应明白,本说明书的实施例可提供为方法、系统或计算机程序产品。因此,本说明书可采用完全硬件实施例、完全软件实施例或结合软件和硬件方面的实施例的形式。而且,本说明书可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、cd-rom、光学存储器等)上实施的计算机程序产品的形式。

上述对本说明书特定实施例进行了描述。其它实施例在所附权利要求书的范围内。在一些情况下,在权利要求书中记载的动作或步骤可以按照不同于实施例中的顺序来执行并且仍然可以实现期望的结果。另外,在附图中描绘的过程不一定要求示出的特定顺序或者连续顺序才能实现期望的结果。在某些实施方式中,多任务处理和并行处理也是可以的或者可能是有利的。

以上仅为本说明书的实施例而已,并不用于限制本说明书。对于本领域技术人员来说,本说明书可以有各种更改和变化。凡在本说明书的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本说明书的权利要求范围之内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1