CN115565212B - 图像处理方法、神经网络模型训练方法及装置 - Google Patents
图像处理方法、神经网络模型训练方法及装置 Download PDFInfo
- Publication number
- CN115565212B CN115565212B CN202210078610.8A CN202210078610A CN115565212B CN 115565212 B CN115565212 B CN 115565212B CN 202210078610 A CN202210078610 A CN 202210078610A CN 115565212 B CN115565212 B CN 115565212B
- Authority
- CN
- China
- Prior art keywords
- image
- training
- neural network
- network model
- group
- 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
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
- G06N3/084—Backpropagation, e.g. using gradient descent
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- General Health & Medical Sciences (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- Computational Linguistics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Evolutionary Computation (AREA)
- Artificial Intelligence (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Health & Medical Sciences (AREA)
- Image Analysis (AREA)
Abstract
本申请实施例提供一种图像处理方法、神经网络模型训练方法及装置,涉及终端领域,以提高图像的处理效果。该图像处理方法应用于电子设备,该图像处理方法包括:控制摄像头模组对目标物体进行拍摄,以得到目标物体的初始图像;将初始图像输入到预先训练好的目标神经网络模型中进行处理,以得到目标图像。其中,目标神经网络模型是基于两组图像对之间的差异对初始神经网络模型的模型参数进行调整得到的。该图像处理方法能够提高图像处理效果。
Description
技术领域
本申请涉及终端领域,尤其涉及一种图像处理方法、神经网络模型训练方法及装置。
背景技术
在一些电子设备中,经常会存在将摄像头布置在屏幕下方的情况(例如,为了尽可能的提高智能手机的屏占比,可以将智能手机的前置摄像头模组布置在屏幕下方),这种情况下,摄像头在拍摄周围的目标物体的图像时,目标物体反射的光线需要穿过屏幕才能被摄像头的感光单元捕捉到,在这个过程中屏幕会对光线产生一定的影响,使得摄像头拍摄到的目标物体的图像可能会出现一定的模糊(例如,拍摄到的图像可能会出现牛顿环现象),导致摄像头拍摄到的目标物体的图片的质量下降,影响了后续对拍摄得到的图片做进一步的分析和处理。
发明内容
本申请实施例提供一种图像处理方法、神经网络模型训练方法及装置,以提高图像的处理效果。
第一方面,本申请实施例提供一种图像处理方法,应用于电子设备,该电子设备包括摄像头模组和显示屏,摄像头模组设置在显示屏下方,其特征在于,该图像处理方法包括:
控制摄像头模组对目标物体进行拍摄,以得到目标物体的初始图像;
将初始图像输入到预先训练好的目标神经网络模型中进行处理,以得到目标图像。
其中,上述目标神经网络模型是基于多个训练图像组中的每个训练图像组对应的第一预测图像和第二预测图像分别与每个训练图像组中的第一图像和第二图像的差异,对初始神经网络模型的模型参数进行调整得到的。
上述每个训练图像组对应的第一预测图像和第二预测图像分别与每个训练图像组中的第一图像和第二图像的差异具体是指:每个训练图像组对应的第一预测图像与每个训练图像组中的第一图像之间的差异,以及每个训练图像组对应的第二预测图像与每个训练图像组中的第二图像之间的差异。
这里的图像之间的差异具体可以是指图像的像素值的差异。
在上述多个训练图像组中,每个训练图像组对应的第一预测图像和第二预测图像是将合成图像输入到初始神经网络模型中进行处理得到的,合成图像是对每个训练图像组中的第一图像和第二图像进行合成处理得到的,每个训练图像组中的第一图像为不包含牛顿环图案的图像,每个训练图像组中的第二图像为牛顿环图像。
上述第二图像可以是不包含其他物体图像,而仅包含纯牛顿环图案的图像。
本申请实施例中,由于目标神经网络模型是根据两对图像之间的差异(第一预测图像与第一图像之间的差异,第二预测图像与第二图像之间的差异)对初始神经网络模型进行训练得到的,在训练的过程中考虑的信息更加全面,能够训练得到更好的目标神经网络模型,因此,采用该目标神经网络模型对初始图像进行处理,能够得到更好的图像处理效果。
更具体地,在初始图像中包含牛顿环图案时,通过目标神经网络模型对初始图像进行处理,能够消除或者减少牛顿环图案,便于后续对得到的目标图像进行更好的处理。
在一种可能的实现方式中,上述摄像头模组包括发射器和图像传感器,控制摄像头模组对目标物体进行拍摄,以得到目标物体的初始图像,包括:控制发射器向目标物体发射光线;控制图像传感器接收目标物体反射的光线,以得到目标物体的初始图像;
可选地,上述摄像头模组为飞行时间(time of flight,TOF)模组。
在一种可能的实现方式中,在将初始图像输入到预先训练好的目标神经网络模型中进行处理之前,上述方法还包括:确定是否开启图像处理模式;上述将初始图像输入到预先训练好的目标神经网络模型中进行处理,以得到目标图像,包括:在确定开启图像处理模式的情况下,将初始图像输入到目标神经网络模型中进行处理,以得到目标图像。
本申请实施例中,通过确定是否开启图像处理模式,能够在需要开启图像处理模式的情况下才调用目标神经网络模型对初始图像进行处理,能够针对不同的情况灵活的进行图像处理,进行图像处理的效率更高。
在一种可能的实现方式中,上述确定是否开启图像处理模式,包括:在显示屏呈现第一图标;在检测到用户触摸第一图标的触摸信号的情况下,确定开启图像处理模式。
在一种可能的实现方式中,上述确定是否开启图像处理模式,包括:在显示屏呈现第二图标;在检测到用户触摸第二图标的触摸信号的情况下,确定关闭图像处理模式。
应理解,也可以只在显示屏呈现第一图标,当预设时间内未检测到用户触摸第一图标的触摸信号的情况下,确定关闭图像处理模式。
本申请实施例中,通过在显示屏呈现第一图标和第二图标,能够方便用户灵活选择是否要进入图像处理模式,能够根据需要对初始图像进行相应的处理,用户的体验更好。
可以理解的是,当上述电子设备的摄像头模组为非TOF模组(此时采用的可以是普通的摄像头模组,电子设备拍摄到的可以是彩色图像)时,可以根据是否检测到用户的触摸信号来确定是否开启图像处理模式。
而当上述电子设备的摄像头模组为TOF模组时,由于用户很难感知到TOF图像的成像情况,可以不执行上述过程(即根据是否检测到用户的触摸信号来确定是否开启图像处理模式)。
在一种可能的实现方式中,上述摄像头模组为非TOF模组,上述确定是否开启图像处理模式,包括:在显示屏呈现第一图标;在检测到用户触摸第一图标的触摸信号的情况下,确定开启图像处理模式。
在一种可能的实现方式中,上述摄像头模组为非TOF模组,上述确定是否开启图像处理模式,包括:在显示屏呈现第二图标;在检测到用户触摸第二图标的触摸信号的情况下,确定关闭图像处理模式。
在一种可能的实现方式中,上述确定是否开启图像处理模式,包括:确定电子设备与目标物体的距离;在电子设备与目标物体的距离小于或者等于预设的第一阈值的情况下,确定开启图像处理模式;在电子设备与目标物体的距离大于第一阈值的情况下,确定关闭图像处理模式。
本申请实施例中,通过距离来判断是否开启图像处理模式,能够根据距离自动确定是否开启图像处理模式,兼顾了图像效果和处理效率,用户体验较好。
在一种可能的实现方式中,上述合成图像的像素值是根据第一区域的图像的平均像素值M和第一图像的像素值确定的。该合成图像的像素值为第一图像的像素值与1/M的乘积。
可以理解的是,这里的M是正整数。
其中,上述第二图像的中心位于第一区域。也就是说,上述第一区域是位于第二图像中心的一个区域。
可选地,上述M的取值为整数。
通过上述合成处理方式得到的合成图像与真实拍摄的带有牛顿环图案的物体图像更为接近,从而使得最终基于该合成图像训练得到的目标神经网络模型具有更好的图像处理效果。
在一种可能的实现方式中,上述第一区域是以第二图像的中心为中心点的区域。
上述第一区域既可以是规则的区域也可以不规则的区域。具体地,上述第一区域可以是半径为R的圆形区域或者为E×F的矩形区域。
上述参数R,E和F可以是预先设置好的数值,这些参数的取值可以根据模拟或者仿真结果来确定,这些参数的单位可以是像素。
可选地,参数R,E和F均为正整数。
可选地,第二图像的分辨率为U*V,第一区域的大小为U/3*V/3或者U/3*U/3或者V/3*V/3。
具体地,上述第一区域可以是以第二图像的中心为中心点,且大小为U/3*V/3或者U/3*U/3或者V/3*V/3的区域。
可以理解的是,上述U和V均为正整数。
在一种可能的实现方式中,上述多个训练图像组中的任意一个训练图像组中的第一图像和第二图像均是通过同一电子设备拍摄得到的。
本申请实施例中,当每个训练图像组中的第二图像与第一图像都是通过同一电子设备拍摄得到时,能够反映拍摄图像时的真实场景,使得基于这样的样本对初始神经网络模型进行训练,能够使得训练得到的目标神经网络模型具有更好的图像处理效果。
应理解,为了增强训练图像组中包含的第一图像和第二图像的样本多样性,提高训练效果,使得最终得到的目标神经网络具有更好的图像处理效果。上述多个训练图像组中的第一图像和第二图像可以是通过多个电子设备拍摄得到的。
例如,共有1000个训练图像组,10个电子设备(电子设备1-至电子设备10),其中,第1-100个训练图像组中的第一图像和第二图像均是通过电子设备1拍摄得到的,第101-200个训练图像组中的第一图像和第二图像均是通过电子设备2拍摄得到的,以此类推,最后第901-1000个训练图像组中的第一图像和第二图像均是通过电子设备10拍摄得到的。
此外,为了增强训练图像组中包含的第一图像和第二图像的样本多样性,提高训练效果,使得最终得到的目标神经网络具有更好的图像处理效果。上述多个训练图像组中的不同训练图像组中的第一图像和第二图像可以是由同一电子设备更换不同屏幕后拍摄得到的,其中,对于每个训练图像组来说,其中第一图像和第二图像均是通过设置有相同屏幕的电子设备拍摄得到的。
这里通过对电子设备更换屏幕的方式来拍摄获取第一图像和第二图像,在降低经济成本的同时(不需要很多数量的电子设备),还能够增强训练图像组的样本多样性。
例如,共有1000个训练图像组,采用的是电子设备A(电子设备A可分别安装屏幕1至屏幕10),其中,第1-100个训练图像组中的第一图像和第二图像均是通过电子设备A安装有屏幕1时拍摄得到的,第101-200个训练图像组中的第一图像和第二图像均是通过电子设备A安装有屏幕2时拍摄得到的,以此类推,最后第901-1000个训练图像组中的第一图像和第二图像均是通过电子设备A安装有屏幕10时拍摄得到的。
在一种可能的实现方式中,上述多个训练图像组包括一个或者多个第一训练图像组,第一训练图像组中的第一图像和第二图像的拍摄参数的参数值的差值小于或者等于预设阈值。
本申请实施例中,多个训练图像组中的第二图像既有通过电子设备拍摄得到的,也有通过仿真或者合成得到的,增强了训练样本的多样性,能够在一定程度上避免训练过程中出现过拟合的现象,从而使得最终训练得到的目标神经网络模型具有更好的图像处理效果。
在一种可能的实现方式中,在上述多个训练图像组中,一部分训练图像组中的第一图像和第二图像是通过电子设备拍摄得到的,另一部分训练图像组中的第一图像是通过电子设备拍摄得到的,第二图像是通过仿真或者合成得到的。
本申请实施例中,多个训练图像组中的通过仿真或者合成得到的第二图像的数量少于通过电子设备拍摄得到的第二图像的数量,既保证了图像训练样本能够反映拍摄图像时的真实场景,也能够在一定程度上避免训练过程中出现的过拟合现象,从而使得最终训练得到的目标神经网络模型具有更好的图像处理效果。
第二方面,本申请实施例提供一种神经网络模型的训练方法,该方法包括:获取多个训练图像组;对每个训练图像组中的第一图像和第二图像进行合成处理,以得到每个训练图像组对应的合成图像;将每个训练图像组对应的合成图像输入到初始神经网络模型中进行处理,以得到每个训练图像组对应的第一预测图像和第二预测图像;基于每个训练图像组对应的第一预测图像和第二预测图像分别与每个训练图像组中的第一图像和第二图像的差异,对初始神经网络模型的模型参数进行调整,以得到目标神经网络模型。
上述多个训练图像组中的每个训练图像组包括第一图像和第二图像,每个训练图像组中的第一图像为不包含牛顿环图案的图像,每个训练图像组中的第二图像为牛顿环图像。
本申请中,根据两对图像之间的差异(第一预测图像与第一图像之间的差异,第二预测图像与第二图像之间的差异)对初始神经网络模型进行训练,在训练的过程中考虑的信息更加全面,能够训练得到更好的目标神经网络模型,从而使得后续基于目标神经网络模型进行图像处理时能够取得更好的图像处理效果。
在一种可能的实现方式中,基于每个训练图像组对应的第一预测图像和第二预测图像分别与每个训练图像组中的第一图像和第二图像的差异,对初始神经网络模型的模型参数进行调整,以得到目标神经网络模型,包括:
确定第一损失函数的函数值,第一损失函数的函数值用于表征每个训练图像组对应的第一预测图像的像素值与每个图像组中的第一图像之间的差异;
确定第二损失函数的函数值,第二损失函数的函数值用于表征每个训练图像组对应的第二预测图像的像素值与每个图像组中的第二图像之间的差异;
根据第一损失函数的函数值和第二损失函数的函数值确定训练损失函数的函数值,其中,训练损失函数的函数值是第一损失函数的函数值和第二损失函数的函数值通过加权处理得到的;
基于训练损失函数的函数值对初始神经网络模型的模型参数进行调整,以得到目标神经网络模型。
通过合理设置第一损失函数的函数值的权重和第二损失函数函数值的权重,能够得到合理的训练损失函数,从而能够在一定程度上提高训练效果,使得最终训练得到的目标神经网络模型具有更好的图像处理性能。
在一种可能的实现方式中,对每个训练图像组中的第一图像和第二图像进行合成处理,以得到每个训练图像组所对应的合成图像,包括:确定第二图像中的第一区域的图像的平均像素值M,其中,该第二图像的中心位于所述第一区域;根据第一区域的图像的平均像素值和第一图像的像素值,确定所述合成图像的像素值,该合成图像的像素值为所述第一图像的像素值与1/M的乘积。
可以理解的是,这里的M为正整数。
通过上述合成处理方式得到的合成图像与真实拍摄的带有牛顿环图案的物体图像更为接近,从而使得最终基于该合成图像训练得到的目标神经网络模型具有更好的图像处理效果。
在一种可能的实现方式中,上述第一区域是以第二图像的中心为中心点的区域。
上述第一区域可以是半径为R的圆形区域或者为E×F的矩形区域。
上述参数R,以及E和F可以是预先设置好的数值,这些参数的取值可以根据模拟或者仿真结果来确定,这些参数的单位可以是像素。
可以理解的是,上述参数R,E和F均为正整数
在一种可能的实现方式中,多个训练图像组中的任意一个训练图像组中的第一图像和第二图像均是通过同一电子设备拍摄得到的。
当每个训练图像组中的第二图像与第一图像,都是通过同一电子设备拍摄得到时,能够反映拍摄图像时的真实场景,使得基于这样的样本对初始神经网络模型进行训练,能够使得训练得到的目标神经网络模型具有更好的图像处理效果。
在一种可能的实现方式中,多个训练图像组包括一个或者多个第一训练图像组,第一训练图像组中的第一图像和第二图像的拍摄参数值的差值小于或者等于预设阈值。
当第一图像和第二图像的拍摄参数值相差较小时,第一图像和第二图像能够反映拍摄图像时的真实场景,使得基于这样的样本对初始神经网络模型进行训练,能够使得训练得到的目标神经网络模型具有更好的图像处理效果。
在一种可能的实现方式中,第一训练图像组中的第一图像和第二图像的拍摄距离的差值小于第二阈值。
当第一图像和第二图像的拍摄距离相差较小时,第一图像和第二图像能够反映拍摄图像时的真实场景,使得基于这样的样本对初始神经网络模型进行训练,能够使得训练得到的目标神经网络模型具有更好的图像处理效果。
在一种可能的实现方式中,第一训练图像组中的第一图像和第二图像的曝光时间的差值小于第三阈值。
当第一图像和第二图像的曝光时间相差较小时,第一图像和第二图像能够反映拍摄图像时的真实场景,使得基于这样的样本对初始神经网络模型进行训练,能够使得训练得到的目标神经网络模型具有更好的图像处理效果。
在一种可能的实现方式中,在多个训练图像组中,一部分训练图像组中的第一图像和第二图像是通过电子设备拍摄得到的,另一部分训练图像组中的第一图像是通过电子设备拍摄得到的,第二图像是通过仿真或者合成得到的。
当上述多个训练图像组中的第二图像既有通过电子设备拍摄得到的,也有通过仿真或者合成得到的,增强了训练样本的多样性,能够在一定程度上避免训练过程中出现过拟合的现象,从而使得最终训练得到的目标神经网络模型具有更好的图像处理效果。
第三方面,本申请实施例提供一种电子设备,该电子设备包括存储器和处理器,其中,存储器用于存储计算机程序代码,该计算机程序代码包括计算机指令,当计算机指令被处理器执行时,使得电子设备执行上述第一方面或者第二方面中的任意一种可能的实现方式中的方法。
可以理解的是,上述第三方面中的电子设备所能达到的有益效果可以参考上述第一方面或者第二方面的方法的有益效果。
当上述电子设备执行第一方面的方法时,该电子设备具体可以是终端,如手机终端,平板电脑,笔记本电脑,增强现实(augmented reality,AR)/虚拟现实(virtualreality,VR),车载终端。
当上述电子设备执行第一方面的方法时,该电子设备具体可以是服务器,云端设备等。
第四方面,本申请实施例提供一种计算机可读存储介质,该计算机可读存储介质中存储有计算机指令,当计算机指令在电子设备上运行时,使得该电子设备执行上述第一方面或者第二方面中的任意一种可能的实现方式中的方法。
可以理解的是,上述第四方面中的计算机可读存储介质所能达到的有益效果可以参考上述第一方面或者第二方面的方法的有益效果。
第五方面,本申请实施例提供一种芯片系统,该芯片系统包括处理器与数据接口,处理器和数据接口通过线路互联,芯片系统应用于包括存储器的电子设备,处理器通过数据接口读取存储器上存储的计算机指令,当计算机指令被处理器执行时,使得电子设备执行上述第一方面或者第二方面中的任意一种可能的实现方式中的方法。
第六方面,本申请实施例提供一种芯片系统,芯片系统包括处理器与数据接口,处理器和数据接口通过线路互联,芯片系统应用于电子设备,该处理器用于:
从电子设备获取目标物体的初始图像,初始图像是该电子设备的摄像头模组对目标物体进行拍摄得到的;
将初始图像输入到预先训练好的目标神经网络模型中进行处理,以得到目标图像;
其中,目标神经网络模型是基于多个训练图像组中的每个训练图像组对应的第一预测图像和第二预测图像分别与每个训练图像组中的第一图像和第二图像的差异,对初始神经网络模型的模型参数进行调整得到的;
上述每个训练图像组对应的第一预测图像和第二预测图像是将合成图像输入到初始神经网络模型中进行处理得到的,合成图像是对每个训练图像组中的第一图像和第二图像进行合成处理得到的,每个训练图像组中的第一图像为不包含牛顿环图案的图像,每个训练图像组中的第二图像为牛顿环图像。
上述芯片系统应用于电子设备可以是指该芯片系统设置在电子设备中,能够对电子设备拍摄得到的图像进行处理,或者,也可以是指该芯片系统设置在电子设备之外,但是也能够对电子设备拍摄得到的图像进行处理(这种情况下芯片系统可以通过数据接口从电子设备获取要处理的图像)。
上述芯片系统中的处理器既可以是一个也可以是多个,芯片系统中的处理器可以包括中央处理器(central processing unit,CPU)和图形处理器(graphics processingunit,GPU)中的一个或者两个。
可以理解的是,上述第五方面和第六方面中的芯片系统所能达到的有益效果可以参考上述第一方面或者第二方面的方法的有益效果。
附图说明
图1为本申请实施例提供的一种电子设备的结构示意图;
图2为本申请实施例提供的一种TOF成像技术的原理示意图;
图3为本申请实施例提供的一种系统架构的示意图;
图4为本申请实施例提供的神经网络模型的训练方法的示意性流程图;
图5为本申请实施例提供的初始神经网络模型的训练过程的示意图;
图6为本申请实施例的图像处理方法的示意性流程图;
图7为本申请实施例的图像处理方法的示意性流程图;
图8为本申请实施例的确定图像处理模式是否开启的示意性流程图;
图9为本申请实施例的确定图像处理模式是否开启的示意性流程图;
图10为本申请实施例的神经网络模型的训练方法的示意性流程图;
图11为本申请实施例提供的图像处理装置的示意性框图;
图12为本申请实施例提供的神经网络训练装置的示意性框图;
图13为本申请实施例提供的一种芯片系统的示意性框图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行描述。其中,在本申请的描述中,除非另有说明,“至少一个”是指一个或多个,“多个”是指两个或多于两个。另外,为了便于清楚描述本申请实施例的技术方案,在本申请的实施例中,可能会采用“第一”、“第二”等字样对功能和作用基本相同的相同项或相似项进行区分。本领域技术人员可以理解“第一”、“第二”等字样并不对数量和执行次序进行限定,并且“第一”、“第二”等字样也并不限定一定不同。
本申请实施例的技术方案可能会涉及TOF成像技术,下面对TOF成像技术的相关内容进行介绍。
TOF成像技术,是指由一组人眼看不到的红外光(或激光脉冲)向外发射,遇到物体后反射,反射到摄像头结束,通过计算从发射到反射回摄像头的时间差或相位差,并将数据收集起来,形成一组距离深度数据,从而得到一个立体的3D模型的成像技术。也即,TOF成像技术是在传统的2D XY轴的成像基础上,加入来自Z轴方向的深度信息,最终生成3D的图像信息。
TOF摄像头(TOF摄像头模组),可以包括发射器(TX)和接收器(RX),TX用于发射红外光或激光脉冲,RX用于接收反射光并成像。由于TX可以自主发射光信号用于成像,因此TOF图像不受环境中大多数光线的影响,这样,将TOF图像应用在解锁业务中,能够提高人脸识别的安全性。
本申请实施例中的图像处理方法可以由电子设备来执行,下面先结合图1对电子设备的结构进行详细介绍。
图1为本申请实施例提供的一种电子设备100的结构示意图。
如图1所示,电子设备100可以包括处理器110,外部存储器接口120,内部存储器121,通用串行总线(universal serial bus,USB)接口130,充电管理模块140,电源管理模块141,电池142,天线1,天线2,移动通信模块150,无线通信模块160,音频模块170,扬声器170A,受话器170B,麦克风170C,耳机接口170D,传感器模块180,按键190,马达191,指示器192,摄像头193,显示屏194,以及用户标识模块(subscriber identification module,SIM)卡接口195等。
其中,传感器模块180可以包括压力传感器180A,陀螺仪传感器180B,气压传感器180C,磁传感器180D,加速度传感器180E,距离传感器180F,接近光传感器180G,指纹传感器180H,温度传感器180J,触摸传感器180K,环境光传感器180L,骨传导传感器180M等。
可以理解的是,图1所示的结构并不构成对电子设备100的具体限定。在另一些实施例中,电子设备100可以包括比图示更多或更少的部件,或者组合某些部件,或者拆分某些部件,或者不同的部件布置。图示的部件可以以硬件,软件或软件和硬件的组合实现。
处理器110可以包括一个或多个处理单元,例如:处理器110可以包括应用处理器(application processor,AP),调制解调处理器,图形处理器(graphics processingunit,GPU),图像信号处理器(image signal processor,ISP),控制器,存储器,视频编解码器,数字信号处理器(digital signal processor,DSP),基带处理器,和/或神经网络处理器(neural-network processing unit,NPU)等。其中,不同的处理单元可以是独立的器件,也可以集成在一个或多个处理器中。
控制器可以是电子设备100的神经中枢和指挥中心。控制器可以根据指令操作码和时序信号,产生操作控制信号,完成取指令和执行指令的控制。
处理器110中还可以设置存储器,用于存储指令和数据。在一些实施例中,处理器110中的存储器为高速缓冲存储器。该存储器可以保存处理器110刚用过或循环使用的指令或数据。如果处理器110需要再次使用该指令或数据,可从所述存储器中直接调用。避免了重复存取,减少了处理器110的等待时间,因而提高了系统的效率。
在一些实施例中,处理器110可以包括一个或多个接口。接口可以包括集成电路(inter-integrated circuit,I2C)接口,集成电路内置音频(inter-integrated circuitsound,I2S)接口,脉冲编码调制(pulse code modulation,PCM)接口,通用异步收发传输器(universal asynchronous receiver/transmitter,UART)接口,移动产业处理器接口(mobile industry processor interface,MIPI),通用输入输出(general-purposeinput/output,GPIO)接口,用户标识模块(subscriber identity module,SIM)接口,和/或通用串行总线(universal serial bus,USB)接口等。
可以理解的是,本实施例示意的各模块间的接口连接关系,只是示意性说明,并不构成对电子设备100的结构限定。在另一些实施例中,电子设备100也可以采用上述实施例中不同的接口连接方式,或多种接口连接方式的组合。
充电管理模块140用于从充电器接收充电输入。充电管理模块140为电池142充电的同时,还可以通过电源管理模块141为电子设备供电。
电源管理模块141用于连接电池142,充电管理模块140与处理器110。电源管理模块141接收电池142和/或充电管理模块140的输入,为处理器110,内部存储器121,外部存储器,显示屏194,摄像头193,和无线通信模块160等供电。在其他一些实施例中,电源管理模块141也可以设置于处理器110中。在另一些实施例中,电源管理模块141和充电管理模块140也可以设置于同一个器件中。
电子设备100的无线通信功能可以通过天线1,天线2,移动通信模块150,无线通信模块160,调制解调处理器以及基带处理器等实现。
天线1和天线2用于发射和接收电磁波信号。电子设备100中的每个天线可用于覆盖单个或多个通信频带。不同的天线还可以复用,以提高天线的利用率。例如:可以将天线1复用为无线局域网的分集天线。
移动通信模块150可以提供应用在电子设备100上的包括2G/3G/4G/5G等无线通信的解决方案。移动通信模块150可以包括至少一个滤波器,开关,功率放大器,低噪声放大器(low noise amplifier,LNA)等。移动通信模块150可以由天线1接收电磁波,并对接收的电磁波进行滤波,放大等处理,传送至调制解调处理器进行解调。移动通信模块150还可以对经调制解调处理器调制后的信号放大,经天线1转为电磁波辐射出去。
调制解调处理器可以包括调制器和解调器。其中,调制器用于将待发送的低频基带信号调制成中高频信号。解调器用于将接收的电磁波信号解调为低频基带信号。随后解调器将解调得到的低频基带信号传送至基带处理器处理。低频基带信号经基带处理器处理后,被传递给应用处理器。应用处理器通过音频设备(不限于扬声器170A,受话器170B等)输出声音信号,或通过显示屏194显示图像或视频。
无线通信模块160可以提供应用在电子设备100上的包括无线局域网(wirelesslocal area networks,WLAN)(如无线保真(wireless fidelity,Wi-Fi)网络),蓝牙(bluetooth,BT),全球导航卫星系统(global navigation satellite system,GNSS),调频(frequency modulation,FM),近距离无线通信技术(near field communication,NFC),红外技术(infrared,IR)等无线通信的解决方案。无线通信模块160可以是集成至少一个通信处理模块的一个或多个器件。无线通信模块160经由天线2接收电磁波,将电磁波信号调频以及滤波处理,将处理后的信号发送到处理器110。无线通信模块160还可以从处理器110接收待发送的信号,对其进行调频,放大,经天线2转为电磁波辐射出去。
在一些实施例中,电子设备100的天线1和移动通信模块150耦合,天线2和无线通信模块160耦合,使得电子设备100可以通过无线通信技术与网络以及其他设备通信。所述无线通信技术可以包括全球移动通讯系统(global system for mobile communications,GSM),通用分组无线服务(general packet radio service,GPRS),码分多址接入(codedivision multiple access,CDMA),宽带码分多址(wideband code division multipleaccess,WCDMA),时分码分多址(time-division code division multiple access,TD-SCDMA),长期演进(long term evolution,LTE),BT,GNSS,WLAN,NFC,FM,和/或IR技术等。所述GNSS可以包括全球卫星定位系统(global positioning system,GPS),全球导航卫星系统(global navigation satellite system,GLONASS),北斗卫星导航系统(beidounavigation satellite system,BDS),准天顶卫星系统(quasi-zenith satellitesystem,QZSS)和/或星基增强系统(satellite based augmentation systems,SBAS)。
电子设备100通过GPU,显示屏194,以及应用处理器等实现显示功能。GPU为图像处理的微处理器,连接显示屏194和应用处理器。GPU用于执行数学和几何计算,用于图形渲染。处理器110可包括一个或多个GPU,其执行程序指令以生成或改变显示信息。
显示屏194用于显示图像,视频等。该显示屏194包括显示面板。显示面板可以采用液晶显示屏(liquid crystal display,LCD),发光二极管(light-emitting diode,LED),有机发光二极管(organic light-emitting diode,OLED),有源矩阵有机发光二极体或主动矩阵有机发光二极体(active-matrix organic light emitting diode,AMOLED),柔性发光二极管(flex light-emitting diode,FLED),Miniled,MicroLed,Micro-oLed,量子点发光二极管(quantum dot light emitting diodes,QLED)等。
电子设备100可以通过ISP,摄像头193,视频编解码器,GPU,显示屏194以及应用处理器等实现拍摄功能。ISP用于处理摄像头193反馈的数据。摄像头193用于捕获静态图像或视频。数字信号处理器用于处理数字信号,除了可以处理数字图像信号,还可以处理其他数字信号。视频编解码器用于对数字视频压缩或解压缩。电子设备100可以支持一种或多种视频编解码器。这样,电子设备100可以播放或录制多种编码格式的视频,例如:动态图像专家组(moving picture experts group,MPEG)1,MPEG2,MPEG3,MPEG4等。
摄像头193可以包括1~N个。例如电子设备可以包括2个前置摄像头和4个后置摄像头。其中,前置摄像头中可以包括TOF摄像头。TOF摄像头包括TX和RX,TX可以用于发射光信号(红外光或激光脉冲),RX可以用于接收成像。TX例如可以为红外光发射器。RX例如可以为互补金属氧化物半导体(complementary metal oxide semiconductor,CMOS)或者电荷耦合器件(charge coupled device,CCD)图像感应器。
示例性的,如图2中的(a)所示,可以通过TOF摄像头的光发射器(Tx)向被测目标(例如,用户)连续发送光信号(红外光或激光脉冲),在TOF摄像头的传感器端(Rx)接收被测目标返回的光信号,如图2中的(b)所示,根据发射和接收光信号的差异(如相位差延迟)可以得到被测目标的深度信息。
其中,Tx和Rx可以通过总线进行信息交互。例如,Rx可以通过总线(例如,串行外设接口(Serial Peripheral Interface,SPI)总线)向Tx发送配置参数,该配置参数用于指示Tx对应的寄存器的地址和针对该寄存器的值。例如Tx对应的寄存器的地址可以是0x11,0x11对应的存储空间中可以存储电流值。Tx可以基于相应的配置参数工作在相应电流值下从而发射出相应光强度的光信号。Rx可以基于发射器发出的相应强度的光信号的反射光获取相应的图像数据。需要说明的是,Tx工作在不同的电流值下,可以发射出不同光强度的光信号。例如,Tx工作在第一电流值下,可以发射出第一光强度的光信号。Tx工作在第二电流值下,可以发射出第二光强度的光信号。第二电流值大于第一电流值。第二光强度大于第一光强度。Rx基于不同强度的光信号的反射光获取的图像数据也是不同的。例如,当Tx工作在第一电流值下,发射出第一光强度的光信时,Rx在相应的曝光时间内获取第一图像数据;Tx工作在第二电流值下,发射出第二光强度的光信号时,Rx在相应的曝光时间内获取第二图像数据;第二图像数据与第一图像数据不同。
Tx工作在相应电流值下时,可以判断自身的工作状态,工作状态可以是正常或异常。Rx可以通过总线向Tx请求Tx的工作状态,Tx可以通过总线向Rx反馈自身的工作状态(例如,正常or异常),从而Rx可以获取Tx的工作状态。Rx可以将Tx的工作状态和自身的工作状态以及两者的工作模式打包在第一数据包(例如,Metadata)中。Rx还可以将Metadata和基于反射光获取的图像数据打包在第二数据包(例如,RAW Data)中。
NPU为神经网络(neural-network,NN)计算处理器,通过借鉴生物神经网络结构,例如借鉴人脑神经元之间传递模式,对输入信息快速处理,还可以不断的自学习。通过NPU可以实现电子设备100的智能认知等应用,例如:图像识别,人脸识别,语音识别,文本理解等。
外部存储器接口120可以用于连接外部存储卡,例如Micro SD卡,实现扩展电子设备100的存储能力。外部存储卡通过外部存储器接口120与处理器110通信,实现数据存储功能。例如将音乐,视频等文件保存在外部存储卡中。内部存储器121可以用于存储计算机可执行程序代码,所述可执行程序代码包括指令。处理器110通过运行存储在内部存储器121的指令,从而执行电子设备100的各种功能应用以及数据处理。例如,在本申请实施例中,处理器110可以通过执行存储在内部存储器121中的指令,内部存储器121可以包括存储程序区和存储数据区。其中,存储程序区可存储操作系统,至少一个功能所需的应用程序(比如声音播放功能,图像播放功能等)等。存储数据区可存储电子设备100使用过程中所创建的数据(比如音频数据,电话本等)等。此外,内部存储器121可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件,闪存器件,通用闪存存储器(universal flash storage,UFS)等。
电子设备100可以通过音频模块170,扬声器170A,受话器170B,麦克风170C,耳机接口170D,以及应用处理器等实现音频功能。例如音乐播放,录音等。
音频模块170用于将数字音频信息转换成模拟音频信号输出,也用于将模拟音频输入转换为数字音频信号。音频模块170还可以用于对音频信号编码和解码。扬声器170A,也称“喇叭”,用于将音频电信号转换为声音信号。受话器170B,也称“听筒”,用于将音频电信号转换成声音信号。麦克风170C,也称“话筒”,“传声器”,用于将声音信号转换为电信号。耳机接口170D用于连接有线耳机。
按键190包括开机键,音量键等。按键190可以是机械按键。也可以是触摸式按键。电子设备100可以接收按键输入,产生与电子设备100的用户设置以及功能控制有关的键信号输入。马达191可以产生振动提示。马达191可以用于来电振动提示,也可以用于触摸振动反馈。指示器192可以是指示灯,可以用于指示充电状态,电量变化,也可以用于指示消息,未接来电,通知等。SIM卡接口195用于连接SIM卡。SIM卡可以通过插入SIM卡接口195,或从SIM卡接口195拔出,实现和电子设备100的接触和分离。电子设备100可以支持1个或N个SIM卡接口,N为大于1的正整数。SIM卡接口195可以支持Nano SIM卡,Micro SIM卡,SIM卡等。
由于本申请实施例涉及大量与神经网络相关的内容,为了便于方案的理解,下面先对神经网络的相关术语和概念进行介绍。
(1)神经网络
人工神经网络(artificial neural network,ANN),简称神经网络(neuralnetwork,NN)或类神经网络,在机器学习和认知科学领域是一种模仿生物神经网络(动物的中枢神经系统,特别是大脑)的结构和功能的数学模型或计算模型,用于对函数进行估计或近似。
神经网络由大量的人工神经元联结进行计算。大多数情况下神经网络能在外界信息的基础上改变内部结构,是一种自适应系统,通俗地讲就是具备学习功能。现代神经网络是一种非线性统计性数据建模工具,神经网络通常是通过一个基于数学统计学类型的学习方法(learning method)得以优化,所以也是数学统计学方法的一种实际应用,通过统计学的标准数学方法能够得到大量的可以用函数来表达的局部结构空间,另一方面在人工智能学的人工感知领域,通过数学统计学的应用可以来做人工感知方面的决定问题(也就是说通过统计学的方法,人工神经网络能够类似人一样具有简单的决定能力和简单的判断能力),这种方法比起正式的逻辑学推理演算更具有优势。
(2)深度神经网络
深度神经网络(deep neural network,DNN),也称多层神经网络,DNN可以理解为具有多层隐含层的神经网络。按照不同层的位置对DNN进行划分,DNN内部的神经网络可以分为三类:输入层,隐含层,输出层。一般来说第一层是输入层,最后一层是输出层,中间的层数都是隐含层。层与层之间是全连接的,也就是说,DNN中间的第i层的任意一个神经元一定与第i+1层的任意一个神经元相连。
虽然DNN看起来很复杂,但是就每一层的工作来说,其实并不复杂,简单来说就是如下线性关系表达式:
在上述公式(1)中,表示输入向量,/>表示输出向量,/>表示偏移向量,w表示权重矩阵(也称为系数),a()是激活函数。对于DNN来说,每一层主要是对输入向量/>经过简单的操作得到输出向量/>由于DNN层数较多,系数w和偏移向量/>的数量也比较多。
(3)卷积神经网络
卷积神经网络(convolutional neuron network,CNN)是一种带有卷积结构的深度神经网络。卷积神经网络包含了一个由卷积层和子采样层构成的特征抽取器,该特征抽取器可以看作是滤波器。卷积层是指卷积神经网络中对输入信号进行卷积处理的神经元层。在卷积神经网络的卷积层中,一个神经元可以只与部分邻层神经元连接。一个卷积层中,通常包含若干个特征平面,每个特征平面可以由一些矩形排列的神经单元组成。同一特征平面的神经单元共享权重,这里共享的权重就是卷积核。共享权重可以理解为提取图像信息的方式与位置无关。卷积核可以以随机大小的矩阵的形式初始化,在卷积神经网络的训练过程中卷积核可以通过学习得到合理的权重。另外,共享权重带来的直接好处是减少卷积神经网络各层之间的连接,同时又降低了过拟合的风险。
(4)循环神经网络
循环神经网络(recurrent neural networks,RNN)是用来处理序列数据的。在传统的神经网络模型中,是从输入层到隐含层再到输出层,层与层之间是全连接的,而对于每一层层内之间的各个节点是无连接的。这种普通的神经网络虽然解决了很多难题,但是却仍然对很多问题无能无力。例如,在预测某个句子的下一个单词是什么的时候,一般需要用到前面的单词,这是由于一个句子中前后单词并不是独立的。RNN之所以称为循环神经网路,即一个序列当前的输出与前面的输出也有关。具体的表现形式为网络会对前面的信息进行记忆并应用于当前输出的计算中,即隐含层本层之间的节点不再是无连接而是有连接的,并且隐含层的输入不仅包括输入层的输出还包括上一时刻隐含层的输出。理论上,RNN能够对任何长度的序列数据进行处理。对于RNN的训练和对传统的CNN或DNN的训练一样。
(5)损失函数
在训练深度神经网络的过程中,因为希望深度神经网络的输出尽可能的接近真正想要预测的值,所以可以通过比较当前网络的预测值和真正想要的目标值,再根据两者之间的差异情况来更新每一层神经网络的权重向量(当然,在第一次更新之前通常会有初始化的过程,即为深度神经网络中的各层预先配置参数),比如,如果网络的预测值高了,就调整权重向量让它预测低一些,不断地调整,直到深度神经网络能够预测出真正想要的目标值或与真正想要的目标值非常接近的值。因此,就需要预先定义“如何比较预测值和目标值之间的差异”,这便是损失函数(loss function)或目标函数(objective function),它们是用于衡量预测值和目标值的差异的重要方程。其中,以损失函数举例,损失函数的输出值(loss)越高表示差异越大,那么深度神经网络的训练就变成了尽可能缩小这个loss的过程。
(6)反向传播算法
神经网络可以采用误差反向传播(back propagation,BP)算法在训练过程中修正初始的神经网络模型中参数的大小,使得神经网络模型的重建误差损失越来越小。具体地,前向传递输入信号直至输出会产生误差损失,通过反向传播误差损失信息来更新初始的神经网络模型中参数,从而使误差损失收敛。反向传播算法是以误差损失为主导的反向传播运动,旨在得到最优的神经网络模型的参数,例如权重矩阵。
下面结合图3对本申请实施例利用神经网络模型进行图像处理的系统架构进行说明。
如图3所示,本申请实施例提供了一种系统架构1000。在图3中,数据采集设备1600用于采集训练数据。针对本申请实施例的方法来说,训练数据可以包括两种训练图像(无屏图像和牛顿环图像)。在采集到训练数据之后,数据采集设备1600将这些训练数据存储到数据库1300,训练设备1200基于数据库1300中维护的训练数据训练得到目标模型1010。这里的训练设备1200可以是计算机设备,服务器(如云端服务器)等能够对神经网络模型进行训练的设备。
下面对训练设备1200基于训练数据得到目标模型1010的过程进行描述,训练设备1200对输入的训练图像进行处理,直到满足预设的训练要求,从而完成目标模型1010的训练。
上述目标模型1010能够用于实现本申请实施例的方法,即,将初始图像(初始图像为包含牛顿环的图像)输入该目标模型1010,即可得到消除牛顿环后的图像。本申请实施例中的目标模型1010具体可以为神经网络模型。
需要说明的是,在实际的应用中,所述数据库1300中维护的训练数据不一定都来自于数据采集设备1600的采集,也有可能是从其他设备接收得到的。另外,训练设备1200也不一定完全基于数据库1300维护的训练数据进行目标模型1010的训练,也有可能从云端或其他地方获取训练数据进行模型训练,上述描述不应该作为对本申请实施例的限定。
根据训练设备1200训练得到的目标模型1010可以应用于不同的系统或设备中,如应用于图3所示的执行设备1100,所述执行设备1100可以是终端,如手机终端,平板电脑,笔记本电脑,AR设备,VR设备,车载终端等,还可以是服务器或者云端等。在图3中,执行设备1100配置输入/输出(input/output,I/O)接口1120,用于与外部设备进行数据交互,可以通过电子设备1400向I/O接口1120输入数据,所述输入数据在本申请实施例中可以包括:客户设备输入的初始图像。
图3中的预处理模块1130用于根据I/O接口1120接收到的输入数据(如初始图像)进行预处理,在本申请实施例中,也可以没有预处理模块1130,而直接采用计算模块1110对输入数据进行处理。
在执行设备1100对输入数据进行预处理,或者在执行设备1100的计算模块1110执行计算等相关的处理过程中,执行设备1100可以调用数据存储系统1500中的数据、代码等以用于相应的处理,也可以将相应处理得到的数据、指令等存入数据存储系统1500中。
最后,I/O接口1120将处理结果,如上述处理得到的去除牛顿环后的图像返回给电子设备1400。
值得说明的是,训练设备1200可以针对不同的目标或称不同的任务,基于不同的训练数据生成相应的目标模型1010,该相应的目标模型1010即可以用于实现上述目标或完成上述任务,从而为用户提供所需的结果。
值得注意的是,图3仅是本申请实施例提供的一种系统架构的示意图,图3中所示设备、器件、模块等之间的位置关系不构成任何限制,例如,在图3中,数据存储系统1500相对执行设备1100是外部存储器,在其它情况下,也可以将数据存储系统1500置于执行设备1100中。
应理解,图3中的电子设备1400和执行设备1100可以是不同的设备,这种情况下,电子设备可以将拍摄得到的图像送入到执行设备1100中利用训练得到的目标模型1010对图片进行处理,处理得到的最终图像再送回到电子设备1400中。
此外,图3中的执行设备1100也可以是集成在电子设备1400中(图3未示出这种情况),这种情况下,电子设备1400在拍摄得到图像后可以直接通过调用电子设备1400内部的目标模型1010对拍摄得到的图像进行处理,并得到处理后的最终图像。
在很多电子设备中,为了外观效果的考虑(例如,尽可能的提高电子设备的屏占比),常需要将拍摄模组设置在屏幕的下方,当拍摄模组对物体进行拍摄时,发射单元向外发光,发射单元发射的光线在经过物体反射后的反射光会被拍摄模组的接收单元感知。在这个过程中,发射单元向外发射的光线或者物体反射后的反射光线由于屏幕不同层(一般情况下,电子设备的屏幕会有多层构成,每层材料一般不太相同,导致屏幕不同层之间的折射率有一定的差异)之间的折射率的差异,会导致最终接收单元最终感知的反射光之间存在一定的相位差,从而使得拍摄得到的图像中可能会产生一定的干涉图案(或者称为干涉条纹)。这里的干涉图案被称为“牛顿环”或者“牛顿圈”。
为了消除拍摄图像时产生的牛顿环现象,本申请提出了一种图像处理方法,该方案通过对不包含牛顿环的图像和纯牛顿环图像进行合成处理得到合成图像,然后再将合成图像输入到神经网络模型中进行处理,使得神经网络模型输出包含牛顿环的预测图像和纯牛顿环的图像(神经网络模型将合成图像分解成包含牛顿环的预测图像和纯牛顿环的图像),通过这样的过程实现对神经网络模型的训练,训练完成后就可以利用训练完成后的神经网络模型对包含牛顿环的图像进行处理从而输出去除牛顿环图案的图像,从而提高图像的显示效果。
本申请实施例的技术方案中,要先完成对初始神经网络模型的训练,然后再利用训练得到的目标神经网络模型对包含牛顿环的图像进行处理。下面先结合附图对神经网络模型的训练过程进行详细的介绍。
图4为本申请实施例提供的神经网络模型的训练方法的示意性流程图。
通过图4所示的训练过程,可以基于多个训练图像组对初始神经网络模型进行训练,从而得到目标神经网络模型。
图4所示的训练过程包括步骤S2001至S2004,下面对这些步骤进行详细描述。
S2001、获取多个训练图像组。
本申请中,训练图像组也可以称为训练图像对。
在该多个训练图像组中,每个训练图像组包括第一图像和第二图像,其中,第一图像为不包含牛顿环图案的图像,第二图像为牛顿环图像。
S2002、对上述每个训练图像组中的第一图像和第二图像进行合成处理,以得到每个训练图像组对应的合成图像。
可选地,作为一个实施例,对第一图像和第二图像进行合成处理,包括:
确定第二图像中的第一区域的图像的平均像素值M;
根据第一区域的图像的平均像素值和第一图像的像素值,确定合成图像的像素值,该合成图像的像素值为第一图像的像素值与1/M的乘积。
其中,上述第二图像的中心位于所述第一区域。
通过上述合成处理方式得到的合成图像与真实拍摄的带有牛顿环图案的物体图像更为接近,从而使得最终基于该合成图像训练得到的目标神经网络模型具有更好的图像处理效果。
在一种可能的实现方式中,上述第一区域是以第二图像的中心为中心点的区域。
上述第一区域可以是半径为R的圆形区域或者为E×F的矩形区域。
上述参数R,以及E和F可以是预先设置好的数值,这些参数的取值可以根据模拟或者仿真结果来确定,这些参数的单位可以是像素。
S2003、将每个训练图像组对应的合成图像输入到初始神经网络模型中进行处理,以得到每个训练图像组对应的第一预测图像和第二预测图像。
步骤S2003中,将合成图像输入到初始神经网络模型中进行处理,相当于是对合成图像进行“分解”处理,从而得到第一预测图像和第二预测图像。
S2004、基于每个训练图像组对应的第一预测图像和第二预测图像分别与每个训练图像组中的第一图像和第二图像的差异,对初始神经网络模型的模型参数进行调整,以得到目标神经网络模型。
在步骤S2004中,实际上是根据第一预测图像与第一图像的差异,以及第二预测图像与第二图像的差异来对初始神经网络模型的模型参数进行调整,从而通过训练得到目标神经网络模型。
上述初始神经网络模型可以是常见的神经网络模型,例如,CNN模型,RNN模型以及包含注意力机制的各种网络结构。
本申请实施例中,根据两对图像之间的差异(第一预测图像与第一图像之间的差异,第二预测图像与第二图像之间的差异)对初始神经网络模型进行训练,在训练的过程中考虑的信息更加全面,能够训练得到更好的目标神经网络模型,从而使得后续基于目标神经网络模型进行图像处理时能够取得更好的图像处理效果。
图5为本申请实施例提供的初始神经网络模型的训练过程的示意图。通过图5所示的过程,对初始神经网络模型训练之后可以得到目标神经网络模型。
如图5所示,上述步骤S2004基于两对图像之间的差异对初始神经网络模型进行训练,具体包括:
(1)确定第一损失函数的函数值。
其中,第一损失函数的函数值用于表征每个训练图像组对应的第一预测图像的像素值与每个图像组中的第一图像之间的差异。
可以理解的是,在本申请中,第一损失函数和下面的第二损失函数可以是神经网络模型训练时的各种损失函数。例如,本申请中的第一损失函数和第二损失函数具体可以是L1损失函数(L1 loss),L2损失函数(L2 loss),平滑的L1损失函数(smooth L1 loss)以及基于VGG的感知损失函数。其中,VGG是牛津大学的视觉几何组(Visual Geometry Group)提出的一种神经网络。
上述第一预测图像和第一图像的大小可以相同,在这种情况下,可以直接将第一预测图像与第一图像相同位置的像素值进行是做差,得到第一预测图像的像素值与第一图像的像素值的差值,接下来,可以根据第一预测图像的像素值与第一图像的像素值的差值得到第一损失函数的函数。
具体地,可以直接将第一预测图像的像素值与第一图像的像素值的差值确定为第一损失函数的函数值,也可以是通过对第一预测图像的像素值与第一图像的像素值的差进行一定的运算和处理(例如,求绝对值的运算或者平方运算)后得到第一损失函数的函数值。
如图5所示,Loss1表示第一预测图像与第一图像之间的差异。
上述第一损失函数可以用下面的公式(1)来表示。
Loss1=abs(X1-X0) (1)
在上述公式(1)中,X1可以表示第一预测图像的像素值,X0可以表示的是第一图像的像素值,Loss1表示的是第一预测图像的像素值与第一图像的像素值的差值的绝对值。
应理解,这里的X1、X0和Loss1均是矩阵,其中,X1表示的是第一预测图像的像素值组成的矩阵,X0表示的是第一图像的像素值组成的矩阵,Loss1表示的第一预测图像与第一图像定的相同位置的像素值的差值的绝对值组成的矩阵。
(2)确定第二损失函数的函数值。
其中,第二损失函数的函数值用于表征每个训练图像组对应的第二预测图像的像素值与每个图像组中的第二图像之间的差异。
与第一损失函数的函数值类似,第二损失函数的函数值也可以根据第二预测图像的像素值与第二图像的像素值的差值得到,具体可以参见上文中对第一损失函数函数值的相关介绍,这里不再赘述。
如图5所示,Loss2表示第二预测图像与第二图像之间的差异。
上述第二损失函数可以用下面的公式(2)来表示。
Loss2=abs(Y1-Y0) (2)
在上述公式(2)中,Y1可以表示第二预测图像的像素值,Y0可以表示的是第二图像的像素值,Loss2表示的是第二预测图像的像素值与第二图像的像素值的差值的绝对值。
应理解,这里的Y1、Y0和Loss2均是矩阵,其中,Y1表示的是第二预测图像的像素值组成的矩阵,Y0表示的是第二图像的像素值组成的矩阵,Loss2表示的第二预测图像与第二图像定的相同位置的像素值的差值的绝对值组成的矩阵。
(3)根据第一损失函数的函数值和第二损失函数的函数值确定训练损失函数的函数值。
其中,训练损失函数的函数值是第一损失函数的函数值和第二损失函数的函数值通过加权处理得到的。
上述训练损失函数可以用公式(3)来表示。
Loss=A*Loss1+B*Loss2 (3)
在上述公式(3)中,A和B分别表示Loss1和Loss2的权重,A和B可以预先设定,一种可能的方式是A和B的取值相同。
(4)基于训练损失函数的函数值对初始神经网络模型的模型参数进行调整,以得到目标神经网络模型。
如图5所示,通过上述过程(1)至(4)对初始神经网络模型的训练,最终得到目标神经网络模型。
应理解,在过程(4)中在计算得到训练损失函数的函数值后,如果该训练损失函数的函数值大于或者等于预设的函数值阈值,则对初始神经网络模型的模型参数进行调整,然后再采用上述过程(1)至(4)对另一个训练图像组进行处理,直到计算得到的训练损失函数的函数值小于预设的函数值阈值,此时训练结束,可以将此时的初始神经网络模型确定为训练得到的目标神经网络模型。
此外,上述对初始神经网络模型训练的结束条件还可以是初始神经网络模型的模型参数的更新或者迭代次数达到了预设次数。例如,当对上述初始神经网络模型的模型参数的更新或者迭代次数达到了100000次时可以结束训练,此时更新参数后的初始神经网络模型就是最终训练得到的目标神经网络模型。
本申请实施例中,通过合理设置第一损失函数的函数值的权重和第二损失函数函数值的权重,能够得到合理的训练损失函数,从而能够在一定程度上提高训练效果,使得最终训练得到的目标神经网络模型具有更好的图像处理性能。
对于初始神经网络模型来说,如果在训练过程中采用的训练样本更加准确,更能反映图像处理的真实场景,那么,最终训练得到的目标神经网络模型的处理效果也会更好。
为了进一步提高训练效果,可以对多个训练图像组中包含的图像进行一定的改进,下面进行详细介绍。
可选地,作为一个实施例,多个训练图像组中的任意一个训练图像组中的第一图像和第二图像均是通过同一电子设备拍摄得到的。
本申请实施例中,当每个训练图像组中的第二图像与第一图像,都是通过同一电子设备拍摄得到时,能够反映拍摄图像时的真实场景,使得基于这样的样本对初始神经网络模型进行训练,能够使得训练得到的目标神经网络模型具有更好的图像处理效果。
可以理解的是,为了增强训练样本的多样性(也就是增强训练图像组中包含的第一图像和第二图像的多样性),提高训练效果,使得最终得到的目标神经网络具有更好的图像处理效果。上述多个训练图像组中的第一图像和第二图像可以是通过多个电子设备拍摄得到的。
例如,共有1000个训练图像组,10个电子设备(电子设备1-至电子设备10),其中,第1-100个训练图像组中的第一图像和第二图像均是通过电子设备1拍摄得到的,第101-200个训练图像组中的第一图像和第二图像均是通过电子设备2拍摄得到的,以此类推,最后第901-1000个训练图像组中的第一图像和第二图像均是通过电子设备10拍摄得到的。
应理解,上述例子仅为示例说明,不同的电子设备也可以对应不同数量的训练图像组。例如,共有1000个训练图像组,5个电子设备(电子设备1-至电子设备3),其中,第1-400个训练图像组中的第一图像和第二图像均是通过电子设备1拍摄得到的,第401-800个训练图像组中的第一图像和第二图像均是通过电子设备2拍摄得到的,第801-1000个训练图像组中的第一图像和第二图像均是通过电子设备3拍摄得到的。
此外,为了增强训练图像组中包含的第一图像和第二图像的样本多样性,提高训练效果,使得最终得到的目标神经网络具有更好的图像处理效果。上述多个训练图像组中的不同训练图像组中的第一图像和第二图像可以是由同一电子设备更换不同屏幕后拍摄得到的,其中,对于每个训练图像组来说,其中第一图像和第二图像均是通过设置有相同屏幕的电子设备拍摄得到的。
这里通过对电子设备更换屏幕的方式来拍摄获取第一图像和第二图像,在降低经济成本的同时(不需要很多数量的电子设备),还能够增强训练图像组的样本多样性。
例如,共有1000个训练图像组,采用的是电子设备A(电子设备A可分别安装屏幕1至屏幕10),其中,第1-100个训练图像组中的第一图像和第二图像均是通过电子设备A安装有屏幕1时拍摄得到的,第101-200个训练图像组中的第一图像和第二图像均是通过电子设备A安装有屏幕2时拍摄得到的,以此类推,最后第901-1000个训练图像组中的第一图像和第二图像均是通过电子设备A安装有屏幕10时拍摄得到的。
在上述例子中,只需要一个电子设备A,通过为电子设备A更换不同的屏幕就能够获得1000个训练图像组中的第一图像和第二个图像,能够节省一定的成本。
可选地,作为一个实施例,在上述多个训练图像组中,一部分训练图像组中的第一图像和第二图像是通过电子设备拍摄得到的,另一部分训练图像组中的第一图像是通过电子设备拍摄得到的,第二图像是通过仿真或者合成得到的。
也就是说,在上述多个训练图像组中,部分训练图像组中的第二图像是通过合成或者仿真处理得到的,而部分训练图像组中的第二图像则是与第一图像一样也是通过电子设备拍摄得到的。
本申请实施例中,多个训练图像组中的第二图像既有通过电子设备拍摄得到的,也有通过仿真或者合成得到的,增强了训练样本的多样性,能够在一定程度上避免训练过程中出现过拟合的现象,从而使得最终训练得到的目标神经网络模型具有更好的图像处理效果。
可选地,作为一个实施例,上述多个训练图像组中,第一图像和第二图像均是通过电子设备拍摄得到的训练图像组的个数是S,而第二图像是通过仿真或者合成得到的训练图像组的个数是T,其中,S大于T。
例如,共采用1000个训练图像组对初始神经网络模型进行训练,其中,800个训练图像组中的第一图像和第二图像均是通过电子设备拍摄得到的,200个训练图像组中的第二图像是通过仿真或者合成得到的。
本申请实施例中,多个训练图像组中的通过仿真或者合成得到的第二图像的数量少于通过电子设备拍摄得到的第二图像的数量,既保证了图像训练样本能够反映拍摄图像时的真实场景,也能够在一定程度上避免训练过程中出现的过拟合现象,从而使得最终训练得到的目标神经网络模型具有更好的图像处理效果。
可选地,作为一个实施例,上述多个训练图像组包括一个或者多个第一训练图像组,该第一训练图像组中的第一图像和第二图像的拍摄参数值的差值小于或者等于预设阈值。
例如,一共采用1000个训练图像组对初始神经网络模型进行训练,其中,600个训练图像组中的第一图像和第二图像的拍摄参数值的差值小于或者等于预设阈值。
本申请实施例中,当电子设备的摄像头模组位于显示屏下方时,拍照时经常会产生牛顿环现象,此时拍摄的目标物体的图像和牛顿环图像的拍摄参数一般是相同的,因此,在训练初始神经网络模型的过程中如果训练图像组中的第一图像和第二图像的拍摄性参数相同或者相近的话,则训练图像组能够反映拍摄图像时的真实场景,训练效果也会更好。
因此,当多个训练图像组中的第一图像和第二图像的拍摄参数相同或者相近时,训练图像组能够反映拍摄图像时的真实场景,从而使得最终训练得到的目标神经网络模型具有更好的图像处理效果。
本申请实施例中,当上述第一训练图像组中的第一图像和第二图像的拍摄距离的差值小于第二阈值,以及上述第一训练图像组中的第一图像和第二图像的曝光时间的差值小于第三阈值中的有至少一个成立时可以认为第一训练图像组中的第一图像和第二图像的拍摄参数值的差值小于或者等于预设阈值。
通过上述图4所示的训练过程可以得到目标神经网络模型,基于该目标神经网络模型可以对拍摄得到的图像进行处理,从而消除或者减少图像中的牛顿环图案,提高图像效果。下面结合图6对基于目标神经网络模型的图像处理过程进行详细的介绍。
图6为本申请实施例的图像处理方法的示意性流程图。图6所示的方法可以由电子设备执行,该电子设备中包括摄像头模组和显示屏,该摄像头模组设置在显示屏下方。图6所示的方法包括步骤S3001和S3002,下面对这两个步骤进行详细的介绍。
S3001、控制摄像头模组对目标物体进行拍摄,以得到目标物体的初始图像。
在S3001中,由于摄像头模组位于电子设备的显示屏下方,因此,拍摄得到的目标物体的初始图像经常会包含牛顿环图案,当初始图像中包含牛顿环图案时会影响初始图像的表现效果,例如,当初始图像用于后续的图像处理(例如,用于图像识别)时可能会影响后续图像处理的准确性。
本申请实施例中,摄像头模组可以包括发射器和图像传感器。
可选地,作为一个实施例,上述步骤S3001中对目标物体进行拍摄,具体包括:
控制发射器向目标物体发射光线;
控制图像传感器接收目标物体反射的光线,以得到目标物体的初始图像。
可选地,本申请实施例中,摄像头模组具体可以是TOF模组。
S3002、将初始图像输入到预先训练好的目标神经网络模型中进行处理,以得到目标图像。
上述步骤S3002中得到的目标图像可以应用于图像识别等过程。
上述步骤S3002中的目标神经网络模型可以通过图4所示的训练过程对初始神经网络模型进行训练得到的,具体的训练过程可以参见上文中对图4相关的描述。
本申请实施例中,由于目标神经网络模型是根据两对图像之间的差异(第一预测图像与第一图像之间的差异,第二预测图像与第二图像之间的差异)对初始神经网络模型进行训练得到的,在训练的过程中考虑的信息更加全面,能够训练得到更好的目标神经网络模型,因此,采用该目标神经网络模型对初始图像进行处理,能够得到更好的图像处理效果。
进一步的,在初始图像中包含牛顿环图案时,通过目标神经网络模型对初始图像进行处理,能够消除或者减少牛顿环图案,便于后续对得到的目标图像进行更好的处理。
图7为本申请实施例的图像处理方法的示意性流程图。如图7所示,在将初始图像输入到预先训练好的目标神经网络模型中进行处理之前还包括步骤S3002a,下面对该步骤进行介绍。
S3002a、确定是否开启图像处理模式;
在步骤3002a中确定开启图像处理模式的情况下再执行步骤S3002。
在有些情况下,例如要拍摄的目标物体与电子设备的距离较远时,拍摄得到的初始图像中的牛顿环图案不太明显,对后续处理的影响不大,此时可以不开启图像处理模式。而在另一些情况下,初始图像中的牛顿环图案比较明显,如果消除的话对后续的图像处理的影响较大,此时可以选择开启图像处理模式。
本申请实施例中,通过确定是否开启图像处理模式,能够在需要开启图像处理模式的情况下才调用目标神经网络模型对初始图像进行处理,能够针对不同的情况灵活的进行图像处理,进行图像处理的效率更高。
本申请实施例中,在确定是否要开启图像处理模式时,可以根据用户的操作来灵活确定,下面结合图8进行说明。
图8为本申请实施例的确定图像处理模式是否开启的示意性流程图。如图8所示,确定是否要开启图像处理模式,具体包括:
步骤A、在显示屏呈现第一图标;
步骤B、是否检测到用户触摸第一图标的触摸信号;
步骤C、在检测到用户触摸所述第一图标的触摸信号的情况下,确定开启图像处理模式;
步骤D、在未检测到用户触摸所述第一图标的触摸信号的情况下,确定关闭图像处理模式。
上述第一图标可以悬浮在初始图像的任意位置,该第一图标上可以提示“进行图像处理?”,当用户点击(例如,可以双击)或者触摸(例如,可以是滑动)了第一图标后,电子设备可以检测到用户的触摸信号,在这种情况下电子设备确定开启图像处理模式,接下来执行步骤S3002对初始图像进行处理。
上述第一图标可以悬浮在初始图像的上方,该图标是一种虚拟按钮,可以是方形,圆形或者其他形状,本申请对其形状和形式不做具体限定。
本申请实施例中,通过在显示屏呈现第一图标,能够方便用户灵活选择是否要进入图像处理模式,能够根据需要对初始图像进行相应的处理,用户的体验更好。
可以理解的是,用户可以通过点击第一图标来开启图像处理模式,当用户在预设时间(例如,3秒)内没有点击或者触摸第一图标时,则默认确认不开启图像处理模式。
可选地,显示屏上还可以呈现第二图标,当用户点击或者触摸第二图标时,电子设备确认不开启图像处理模式(关闭图像处理模式)。
在确定是否要开启图像处理模式时,也可以根据电子设备拍摄目标物体时与目标物体的距离来灵活确定。
可以理解的是,当上述电子设备的摄像头模组为非TOF模组(此时采用的可以是普通的摄像头模组,电子设备拍摄到的可以是彩色图像)的情况下,再采用图8所示的过程来确定是否开启图像处理模式。
而当上述电子设备的摄像头模组为TOF模组时,由于用户很难感知到TOF图像的成像情况,可以不采用图8所示的过程来确定是否开启图像处理模式,而是采用下面图9所示的过程来确定是否开启图像处理模式。
如图9所示,确定是否要开启图像处理模式,具体包括:
步骤X、确定电子设备与目标物体的距离。
在步骤X中可以通过电子设备内的传感器来确定电子设备拍摄物体时与目标物体的距离。例如,可以通过电子设备中的TOF模组进行测距(或者利用电子设备内部的专业距离探测传感器来进行测距)。
步骤Y、确定电子设备与目标物体的距离是否小于或者等于第一阈值。
步骤Z、在电子设备与目标物体的距离小于或者等于预设的第一阈值的情况下,确定开启图像处理模式。
步骤W、在电子设备与目标物体的距离大于第一阈值的情况下,确定关闭图像处理模式。
这里的第一阈值可以通过预先设置,该第一阈值可以是电子设备拍摄目标物体时拍摄得到的图片不会再产生牛顿环图案的距离,或者,该第一阈值也可以是电子设备拍摄目标物体时拍摄得到的图片中虽然有一些牛顿环图案,但是已经基本不影响后续对拍摄得到的图像的进一步处理(例如,对该图像进行图像识别)。
本申请实施例中,通过距离来判断是否开启图像处理模式,能够根据距离自动确定是否开启图像处理模式,兼顾了图像效果和处理效率,用户体验较好。
本申请实施例中,当电子设备中的摄像头模组为TOF模组时,电子设备可以支持以下三种工作模式:
模式一:直接处理模式。
在模式一的情况下,电子设备不需要判断是否开启图像处理模式,而是可以直接采用图6所示的方法中的步骤3001和3002直接进行图像处理。
模式二:根据拍摄距离或者用户的操作来确定是否开启图像处理模式。
具体而言,在模式二中既可以采用上述图8所示的根据用户的操作来确定是否开启图像处理模式,也可以采用上述图9所示的根据拍摄距离来确定是否开启图像处理模式。
模式三:综合考虑拍摄距离和用户操作来确定是否开启图像处理模式。
具体而言,在模式三中相当于要结合拍摄距离和用户操作来综合确定是否开启图像处理模式。此时可以在拍摄距离小于某个阈值且电子设备检测到用户的触摸信号的情况下,确定开启图像处理模式,而在其他情况下确定不开启图像处理模式(关闭图像处理模式)。
例如,可以在电子设备与目标物体的距离小于或者等于预设的第一阈值,并且在检测到用户触摸所述第一图标的触摸信号的情况下,确定开启图像处理模式,而在其他情况下确定关闭图像处理模式。
为了更形象的描述本申请实施例的方案,下面结合图10对本申请实施例的方案进行描述。
图10为本申请实施例的神经网络模型的训练方法的示意性流程图。
如图10所示,对初始神经网络模型进行训练以得到目标神经网络模型的具体过程如下:
首先,获取无屏图像和牛顿环图像;
这里的无屏图像可以对应于上文中的第一图像,这里的牛顿环图像可以对应于上文中的第二图像,本文中关于第一图像的有关限定也适用于无屏图像,本文中关于第二图像的有关限定也适用于无屏图像。
其次,对无屏图像和牛顿环图像进行合成处理,得到合成图像。
再次,基于无屏图像,牛顿环图像以及合成图像对初始神经网络模型进行训练,得到目标神经网络模型。
对初始神经网络模型进行训练以得到目标神经网络模型的具体过程可以参见上文中对步骤S2004的描述。
通过上述训练过程对初始神经网络模型进行训练可以得到训练好的目标神经网络模型,接下来,可以利用该目标神经网络模型对包含牛顿环的图片进行处理,从而得到去除掉牛顿环的图片。上述训练过程可以是在服务器侧执行的。
在完成了训练之后,可以得到目标神经网络模型的模型参数,该模型参数可以存储在服务器中,电子设备可以从服务器中获取该目标神经网络模型的模型参数。
具体地,电子设备可以通过云端下载目标神经网络模型的模型参数,从而将目标神经网络模型写入到电子设备中。或者,也可以在电子设备出厂之前直接将目标神经网络模型的模型参数写入到电子设备中。接下来,电子设备可以根据该目标神经网络模型对拍摄得到的图像进行处理。电子设备基于目标神经网络模型对拍摄得到的图像进行处理的过程具体可以参见本申实施例中有关图6所示的图像处理方法的相关内容。
图11为本申请实施例提供的图像处理装置的示意性框图。图11所示的图像处理装置4000包括存储器4001,处理器4002和通信接口4003。
其中,存储器4001可以是只读存储器(read only memory,ROM),静态存储设备,动态存储设备或者随机存取存储器(random access memory,RAM)。存储器4001可以存储程序,当存储器4001中存储的程序被处理器4002执行时,处理器4002和通信接口4003用于执行本申请实施例的图像处理方法的各个步骤。
处理器4002可以采用通用的中央处理器(central processing unit,CPU),微处理器,应用专用集成电路(application specific integrated circuit,ASIC),图形处理器(graphics processing unit,GPU)或者一个或多个集成电路,用于执行相关程序,以使得电子设备实现本申请实施例的图像处理装置中的单元所需执行的功能,或者使得电子设备执行本申请方法实施例的图像处理方法。
处理器4002还可以是一种集成电路芯片,具有信号的处理能力。在实现过程中,本申请实施例的图像处理方法的各个步骤可以通过处理器4002中的硬件的集成逻辑电路或者软件形式的指令完成。上述处理器4 0 0 2还可以是通用处理器、数字信号处理器(digitalsignal processing,DSP)、ASIC、现成可编程门阵列(field programmable gatearray,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。上述通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合本申请实施例所公开的方法的步骤可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器4001,处理器4002读取存储器4001中的信息,结合其硬件完成本申请实施例的图像分类装置中包括的单元所需执行的功能,或者执行本申请方法实施例的图像处理方法。
通信接口4003使用例如但不限于收发器一类的收发装置,来实现装置4000与其他设备或通信网络之间的通信。例如,可以通过通信接口4003获取初始图像。
总线4004可包括在装置4000各个部件(例如,存储器4001、处理器4002、通信接口4003)之间传送信息的通路。
图12为本申请实施例提供的神经网络训练装置的示意性框图。图12所示的神经网络训练装置5000包括存储器5001,处理器5002和通信接口5003。
存储器5001可以存储程序,当存储器5001中存储的程序被处理器5002执行时,处理器5002用于执行本申请实施例的神经网络模型的训练方法的各个步骤。
处理器5002可以采用通用的CPU,微处理器,ASIC,GPU或者一个或多个集成电路,用于执行相关程序,以实现本申请实施例的神经网络模型的训练方法。
处理器5002还可以是一种集成电路芯片,具有信号的处理能力。在实现过程中,本申请实施例的神经网络模型的训练方法的各个步骤可以通过处理器5002中的硬件的集成逻辑电路或者软件形式的指令完成。
应理解,通过图12所示的神经网络训练装置5000对初始神经网络模型进行训练,训练得到的目标神经网络模型就可以用于执行本申请实施例的图像处理方法了。
具体地,图12所示的装置可以通过通信接口5003从外界获取训练数据以及待训练的初始神经网络模型,然后由处理器根据训练数据对待训练的初始神经网络模型进行训练,训练完成后得到目标神经网络模型。
图13为本申请实施例提供的一种芯片系统的示意性框图。
如图13所示,本申请实施例还提供一种芯片系统(例如,片上系统(system on achip,SoC)),如图13所示,该芯片系统包括至少一个处理器6001和至少一个数据接口6002,该芯片系统可以应用于包括存储器的电子设备。
应理解,图13只是示意性的给出了片上系统包括两个处理器和两个数据接口的情况。本申请中不限定芯片系统中的处理器和数据接口的个数。在图13中,处理器6001和数据接口6002可通过线路互联。例如,数据接口6002可用于从其它装置(例如电子设备的存储器)接收信号。又例如,数据接口6002可用于向其它装置(例如处理器6001或者电子设备的触摸屏)发送信号。示例性的,数据接口6002可读取电子设备的存储器中存储的指令,并将该计算机指令发送给处理器6001。当该计算机指令被处理器6001执行时,可使得电子设备执行上述实施例中的各个步骤(具体地,电子设备可以执行本申请实施例提供的神经网络模型的训练方法或者本申请实施例的图像处理方法的各个步骤)。当然,该芯片系统还可以包含其他分立器件,本申请实施例对此不作具体限定。
上述图13中处理器6001既可以是CPU也可以是GPU。
对于图13中的芯片系统6000来说,当该芯片系统6000应用于电子设备时,该芯片系统6000中的处理器6001可以具体用于:
从电子设备获取目标物体的初始图像,初始图像是电子设备的摄像头模组对目标物体进行拍摄得到的;
将初始图像输入到预先训练好的目标神经网络模型中进行处理,以得到目标图像;
其中,目标神经网络模型是基于多个训练图像组中的每个训练图像组对应的第一预测图像和第二预测图像分别与每个训练图像组中的第一图像和第二图像的差异,对初始神经网络模型的模型参数进行调整得到的;
上述每个训练图像组对应的第一预测图像和第二预测图像是将合成图像输入到初始神经网络模型中进行处理得到的,合成图像是对每个训练图像组中的第一图像和第二图像进行合成处理得到的,每个训练图像组中的第一图像为不包含牛顿环图案的图像,每个训练图像组中的第二图像为牛顿环图像。
在本申请所提供的几个实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个装置,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是一个物理单元或多个物理单元,即可以位于一个地方,或者也可以分布到多个不同地方。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个可读取存储介质中。基于这样的理解,本申请实施例的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该软件产品存储在一个存储介质中,包括若干指令用以使得一个设备(可以是单片机,芯片等)或处理器(processor)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(read only memory,ROM)、随机存取存储器(random access memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
以上内容,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何在本申请揭露的技术范围内的变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以权利要求的保护范围为准。
Claims (17)
1.一种图像处理方法,应用于电子设备,所述电子设备包括摄像头模组和显示屏,所述摄像头模组设置在所述显示屏下方,其特征在于,所述方法包括:
控制所述摄像头模组对目标物体进行拍摄,以得到所述目标物体的初始图像;
将所述初始图像输入到预先训练好的目标神经网络模型中进行处理,以得到目标图像;其中,所述目标神经网络模型是基于多个训练图像组中的每个训练图像组对应的第一预测图像和第二预测图像分别与所述每个训练图像组中的第一图像和第二图像的差异,对初始神经网络模型的模型参数进行调整得到的;
所述每个训练图像组对应的第一预测图像和第二预测图像是将合成图像输入到所述初始神经网络模型中进行处理得到的,所述合成图像是对所述每个训练图像组中的第一图像和第二图像进行合成处理得到的,所述每个训练图像组中的第一图像为不包含牛顿环图案的图像,所述每个训练图像组中的第二图像为牛顿环图像;
所述每个训练图像组对应的第一预测图像和第二预测图像分别与每个训练图像组中的第一图像和第二图像的差异指:每个训练图像组对应的第一预测图像与每个训练图像组中的第一图像之间的差异,以及每个训练图像组对应的第二预测图像与每个训练图像组中的第二图像之间的差异;
所述合成图像的像素值是根据所述第二图像中的第一区域的图像的平均像素值M和所述第一图像的像素值确定的,其中,所述第二图像的中心位于所述第一区域,所述合成图像的像素值为所述第一图像的像素值与1/M的乘积。
2.如权利要求1所述的方法,其特征在于,所述摄像头模组包括发射器和图像传感器,所述控制所述摄像头模组对目标物体进行拍摄,以得到所述目标物体的初始图像,包括:
控制所述发射器向所述目标物体发射光线;
控制所述图像传感器接收所述目标物体反射的光线,以得到所述目标物体的初始图像。
3.如权利要求2所述的方法,其特征在于,在将所述初始图像输入到预先训练好的目标神经网络模型中进行处理之前,所述方法还包括:
确定是否开启图像处理模式;
将所述初始图像输入到预先训练好的目标神经网络模型中进行处理,以得到目标图像,包括:
在确定开启图像处理模式的情况下,将所述初始图像输入到所述目标神经网络模型中进行处理,以得到所述目标图像。
4.如权利要求3所述的方法,其特征在于,所述确定是否开启图像处理模式,包括:
在所述显示屏呈现第一图标;
在检测到用户触摸所述第一图标的触摸信号的情况下,确定开启图像处理模式。
5.如权利要求3所述的方法,其特征在于,所述确定是否开启图像处理模式,包括:
确定所述电子设备与所述目标物体的距离;
在所述电子设备与所述目标物体的距离小于或者等于预设的第一阈值的情况下,确定开启图像处理模式;
在所述电子设备与所述目标物体的距离大于所述第一阈值的情况下,确定关闭图像处理模式。
6.如权利要求1-5中任一项所述的方法,其特征在于,所述多个训练图像组中的任意一个训练图像组中的第一图像和第二图像均是通过同一电子设备拍摄得到的。
7.如权利要求1-5中任一项所述的方法,其特征在于,所述多个训练图像组包括一个或者多个第一训练图像组,所述第一训练图像组中的第一图像和第二图像的拍摄参数的参数值的差值小于或者等于预设阈值。
8.如权利要求1-5中任一项所述的方法,其特征在于,在所述多个训练图像组中,一部分训练图像组中的第一图像和第二图像是通过电子设备拍摄得到的,另一部分训练图像组中的第一图像是通过电子设备拍摄得到的,第二图像是通过仿真或者合成得到的。
9.一种神经网络模型的训练方法,其特征在于,包括:
获取多个训练图像组,所述多个训练图像组中的每个训练图像组包括第一图像和第二图像,所述每个训练图像组中的第一图像为不包含牛顿环图案的图像,所述每个训练图像组中的第二图像为牛顿环图像;
对所述每个训练图像组中的第一图像和第二图像进行合成处理,以得到所述每个训练图像组对应的合成图像;
将所述每个训练图像组对应的合成图像输入到初始神经网络模型中进行处理,以得到所述每个训练图像组对应的第一预测图像和第二预测图像;
基于所述每个训练图像组对应的第一预测图像和第二预测图像分别与所述每个训练图像组中的第一图像和第二图像的差异,对所述初始神经网络模型的模型参数进行调整,以得到目标神经网络模型;
基于所述每个训练图像组对应的第一预测图像和第二预测图像分别与所述每个训练图像组中的第一图像和第二图像的差异,对所述初始神经网络模型的模型参数进行调整,以得到目标神经网络模型,包括:
确定第一损失函数的函数值,所述第一损失函数的函数值用于表征所述每个训练图像组对应的第一预测图像的像素值与所述每个图像组中的第一图像之间的差异;
确定第二损失函数的函数值,所述第二损失函数的函数值用于表征所述每个训练图像组对应的第二预测图像的像素值与所述每个图像组中的第二图像之间的差异;
根据所述第一损失函数的函数值和第二损失函数的函数值确定训练损失函数的函数值,其中,所述训练损失函数的函数值是所述第一损失函数的函数值和第二损失函数的函数值通过加权处理得到的;
基于所述训练损失函数的函数值对所述初始神经网络模型的模型参数进行调整,以得到所述目标神经网络模型;
所述对所述每个训练图像组中的第一图像和第二图像进行合成处理,以得到所述每个训练图像组所对应的合成图像,包括:
确定所述第二图像中的第一区域的图像的平均像素值M,其中,所述第二图像的中心位于所述第一区域;
根据所述第一区域的图像的平均像素值M和所述第一图像的像素值,确定所述合成图像的像素值,所述合成图像的像素值为所述第一图像的像素值与1/M的乘积。
10.如权利要求9所述的方法,其特征在于,所述多个训练图像组中的任意一个训练图像组中的第一图像和第二图像均是通过同一电子设备拍摄得到的。
11.如权利要求9所述的方法,其特征在于,所述多个训练图像组包括一个或者多个第一训练图像组,所述第一训练图像组中的第一图像和第二图像的拍摄参数值的差值小于或者等于预设阈值。
12.如权利要求11所述的方法,其特征在于,所述第一训练图像组中的第一图像和第二图像的拍摄距离的差值小于第二阈值。
13.如权利要求11所述的方法,其特征在于,所述第一训练图像组中的第一图像和第二图像的曝光时间的差值小于第三阈值。
14.如权利要求9所述的方法,其特征在于,在所述多个训练图像组中,一部分训练图像组中的第一图像和第二图像是通过电子设备拍摄得到的,另一部分训练图像组中的第一图像是通过电子设备拍摄得到的,第二图像是通过仿真或者合成得到的。
15.一种电子设备,其特征在于,包括:
存储器,所述存储器用于存储计算机程序代码,所述计算机程序代码包括计算机指令;
处理器,当所述计算机指令被所述处理器执行时,使得所述电子设备执行如权利要求1-8或者9-14中任一项所述的方法。
16.一种计算机可读存储介质,其特征在于,包括计算机指令;
当所述计算机指令在电子设备上运行时,使得所述电子设备执行如权利要求1-8或者9-14中任一项所述的方法。
17.一种芯片系统,其特征在于,所述芯片系统包括处理器与数据接口,所述处理器和所述数据接口通过线路互联,所述芯片系统应用于电子设备,所述处理器用于:
从所述电子设备获取目标物体的初始图像,所述初始图像是所述电子设备的摄像头模组对目标物体进行拍摄得到的;
将所述初始图像输入到预先训练好的目标神经网络模型中进行处理,以得到目标图像;其中,所述目标神经网络模型是基于多个训练图像组中的每个训练图像组对应的第一预测图像和第二预测图像分别与所述每个训练图像组中的第一图像和第二图像的差异,对初始神经网络模型的模型参数进行调整得到的;
所述每个训练图像组对应的第一预测图像和第二预测图像是将合成图像输入到所述初始神经网络模型中进行处理得到的,所述合成图像是对所述每个训练图像组中的第一图像和第二图像进行合成处理得到的,所述每个训练图像组中的第一图像为不包含牛顿环图案的图像,所述每个训练图像组中的第二图像为牛顿环图像;
所述每个训练图像组对应的第一预测图像和第二预测图像分别与每个训练图像组中的第一图像和第二图像的差异指:每个训练图像组对应的第一预测图像与每个训练图像组中的第一图像之间的差异,以及每个训练图像组对应的第二预测图像与每个训练图像组中的第二图像之间的差异;
所述合成图像的像素值是根据所述第二图像中的第一区域的图像的平均像素值M和所述第一图像的像素值确定的,其中,所述第二图像的中心位于所述第一区域,所述合成图像的像素值为所述第一图像的像素值与1/M的乘积。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210078610.8A CN115565212B (zh) | 2022-01-20 | 2022-01-20 | 图像处理方法、神经网络模型训练方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210078610.8A CN115565212B (zh) | 2022-01-20 | 2022-01-20 | 图像处理方法、神经网络模型训练方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN115565212A CN115565212A (zh) | 2023-01-03 |
CN115565212B true CN115565212B (zh) | 2023-08-04 |
Family
ID=84737226
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210078610.8A Active CN115565212B (zh) | 2022-01-20 | 2022-01-20 | 图像处理方法、神经网络模型训练方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115565212B (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117726926B (zh) * | 2023-05-15 | 2024-08-16 | 荣耀终端有限公司 | 训练数据处理方法、电子设备和计算机可读存储介质 |
CN117714861B (zh) * | 2023-08-01 | 2024-09-13 | 上海荣耀智慧科技开发有限公司 | 图像处理方法及电子设备 |
CN117689545B (zh) * | 2024-02-02 | 2024-07-16 | 荣耀终端有限公司 | 图像处理方法、电子设备和计算机可读存储介质 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111242273A (zh) * | 2018-11-29 | 2020-06-05 | 华为终端有限公司 | 一种神经网络模型训练方法及电子设备 |
CN111782879A (zh) * | 2020-07-06 | 2020-10-16 | Oppo(重庆)智能科技有限公司 | 模型训练方法及装置 |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108229525B (zh) * | 2017-05-31 | 2021-12-28 | 商汤集团有限公司 | 神经网络训练及图像处理方法、装置、电子设备和存储介质 |
CN112836692B (zh) * | 2020-11-27 | 2023-03-24 | 北京百度网讯科技有限公司 | 用于处理图像的方法、装置、设备和介质 |
CN112598597A (zh) * | 2020-12-25 | 2021-04-02 | 华为技术有限公司 | 一种降噪模型的训练方法及相关装置 |
CN113591832B (zh) * | 2021-08-20 | 2024-04-05 | 杭州数橙科技有限公司 | 图像处理模型的训练方法、文档图像处理方法及设备 |
CN113781356B (zh) * | 2021-09-18 | 2024-06-04 | 北京世纪好未来教育科技有限公司 | 图像去噪模型的训练方法、图像去噪方法、装置及设备 |
-
2022
- 2022-01-20 CN CN202210078610.8A patent/CN115565212B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111242273A (zh) * | 2018-11-29 | 2020-06-05 | 华为终端有限公司 | 一种神经网络模型训练方法及电子设备 |
CN111782879A (zh) * | 2020-07-06 | 2020-10-16 | Oppo(重庆)智能科技有限公司 | 模型训练方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
CN115565212A (zh) | 2023-01-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN115565212B (zh) | 图像处理方法、神经网络模型训练方法及装置 | |
CN109523485B (zh) | 图像颜色校正方法、装置、存储介质及移动终端 | |
US11074466B2 (en) | Anti-counterfeiting processing method and related products | |
CN111079576B (zh) | 活体检测方法、装置、设备及存储介质 | |
CN113538273B (zh) | 图像处理方法及图像处理装置 | |
US11948280B2 (en) | System and method for multi-frame contextual attention for multi-frame image and video processing using deep neural networks | |
CN111178546A (zh) | 机器学习模型的搜索方法及相关装置、设备 | |
CN113052056B (zh) | 一种视频处理的方法以及装置 | |
CN116206041A (zh) | 一种渲染方法及其相关设备 | |
CN116720563B (zh) | 一种提升定点神经网络模型精度的方法、装置及电子设备 | |
CN117274109B (zh) | 图像处理方法、降噪模型训练方法及电子设备 | |
CN114359014A (zh) | 用于卷帘式快门传感器的动态驱动器机构以获取结构光图案 | |
CN115880349A (zh) | 使用卷积技术将自适应偏移项添加到局部自适应二值化表达式 | |
CN116468917A (zh) | 图像处理方法、电子设备及存储介质 | |
CN113469146B (zh) | 目标检测方法及设备 | |
CN114330633A (zh) | 一种训练神经网络的方法、装置、服务器及系统 | |
CN116703995B (zh) | 视频虚化处理方法和装置 | |
CN112308202A (zh) | 一种确定卷积神经网络的决策因素的方法及电子设备 | |
US20230007160A1 (en) | Photographing method of electronic apparatus and electronic apparatus thereof | |
CN116309710A (zh) | 目标追踪方法和电子设备 | |
CN116092158A (zh) | 人脸识别方法、装置、设备以及存储介质 | |
CN115546248A (zh) | 事件数据处理方法、装置和系统 | |
CN114970576A (zh) | 识别码的识别方法、相关电子设备及计算机可读存储介质 | |
CN114967907A (zh) | 识别方法及电子设备 | |
CN112435169A (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |