CN115565213B - 图像处理方法及装置 - Google Patents
图像处理方法及装置 Download PDFInfo
- Publication number
- CN115565213B CN115565213B CN202210107385.6A CN202210107385A CN115565213B CN 115565213 B CN115565213 B CN 115565213B CN 202210107385 A CN202210107385 A CN 202210107385A CN 115565213 B CN115565213 B CN 115565213B
- Authority
- CN
- China
- Prior art keywords
- image
- model
- decoder
- encoder
- despeckle
- 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
- 238000003672 processing method Methods 0.000 title claims abstract description 23
- 238000000034 method Methods 0.000 claims abstract description 50
- 238000012549 training Methods 0.000 claims abstract description 35
- 230000004044 response Effects 0.000 claims description 121
- 230000006870 function Effects 0.000 claims description 80
- 238000012545 processing Methods 0.000 claims description 72
- 238000012360 testing method Methods 0.000 claims description 24
- 238000013507 mapping Methods 0.000 claims description 23
- 230000004913 activation Effects 0.000 claims description 21
- 230000008569 process Effects 0.000 claims description 20
- 238000010606 normalization Methods 0.000 claims description 15
- 238000005070 sampling Methods 0.000 claims description 12
- 238000006243 chemical reaction Methods 0.000 claims description 9
- 238000003384 imaging method Methods 0.000 claims description 6
- 238000005215 recombination Methods 0.000 claims description 5
- 230000006798 recombination Effects 0.000 claims description 5
- 230000003993 interaction Effects 0.000 claims description 2
- 239000010410 layer Substances 0.000 description 206
- 230000000694 effects Effects 0.000 description 18
- 238000000605 extraction Methods 0.000 description 17
- 239000011159 matrix material Substances 0.000 description 10
- 238000010586 diagram Methods 0.000 description 9
- 238000012937 correction Methods 0.000 description 8
- 230000009467 reduction Effects 0.000 description 6
- 238000004364 calculation method Methods 0.000 description 5
- 230000003287 optical effect Effects 0.000 description 4
- 238000004590 computer program Methods 0.000 description 3
- 230000004927 fusion Effects 0.000 description 3
- 210000002569 neuron Anatomy 0.000 description 3
- 125000000205 L-threonino group Chemical group [H]OC(=O)[C@@]([H])(N([H])[*])[C@](C([H])([H])[H])([H])O[H] 0.000 description 2
- 230000003044 adaptive effect Effects 0.000 description 2
- 238000004458 analytical method Methods 0.000 description 2
- 238000013528 artificial neural network Methods 0.000 description 2
- 238000010276 construction Methods 0.000 description 2
- 230000008034 disappearance Effects 0.000 description 2
- 238000001914 filtration Methods 0.000 description 2
- 238000007726 management method Methods 0.000 description 2
- 210000005036 nerve Anatomy 0.000 description 2
- 238000013041 optical simulation Methods 0.000 description 2
- 238000011176 pooling Methods 0.000 description 2
- 230000000007 visual effect Effects 0.000 description 2
- ORILYTVJVMAKLC-UHFFFAOYSA-N Adamantane Natural products C1C(C2)CC3CC1CC2C3 ORILYTVJVMAKLC-UHFFFAOYSA-N 0.000 description 1
- 208000037170 Delayed Emergence from Anesthesia Diseases 0.000 description 1
- 230000001133 acceleration Effects 0.000 description 1
- 210000000988 bone and bone Anatomy 0.000 description 1
- 230000015556 catabolic process Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 230000000295 complement effect Effects 0.000 description 1
- 239000012792 core layer Substances 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 230000003247 decreasing effect Effects 0.000 description 1
- 238000006731 degradation reaction Methods 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 238000011423 initialization method Methods 0.000 description 1
- 229910044991 metal oxide Inorganic materials 0.000 description 1
- 150000004706 metal oxides Chemical class 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 230000001537 neural effect Effects 0.000 description 1
- 230000009290 primary effect Effects 0.000 description 1
- 238000011084 recovery Methods 0.000 description 1
- 230000008521 reorganization Effects 0.000 description 1
- 229920006395 saturated elastomer Polymers 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 238000004088 simulation Methods 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 230000001960 triggered effect Effects 0.000 description 1
Landscapes
- Image Processing (AREA)
Abstract
本申请提供一种图像处理方法及装置,方法包括:通过前置摄像头得到被拍摄对象的屏下图像,屏下图像是显示屏遮挡前置摄像头时前置摄像头拍摄到的图像;获得被拍摄对象的屏下图像的图像数据;调用图像去光斑模型对屏下图像的图像数据进行去光斑处理,得到图像去光斑模型输出的图像数据,图像去光斑模型是基于历史屏下图像的图像数据和历史无屏图像的图像数据进行训练得到,历史无屏图像是没有显示屏遮挡时前置摄像头拍摄到的图像,历史屏下图像中具有衍射光斑,历史无屏图像中没有衍射光斑;基于图像去光斑模型输出的图像数据,得到被拍摄对象的修正图像,修正图像中没有衍射光斑,或,修正图像中衍射光斑的数量小于屏下图像中衍射光斑的数量。
Description
技术领域
本申请涉及图像处理技术领域,尤其涉及一种图像处理方法及装置。
背景技术
电子设备包括显示区域和非显示区域,显示区域设置有显示屏,非显示区域至少设置有前置摄像头,非显示区域中开有一个孔,在孔下方设置前置摄像头。前置摄像头可以是一个发射点光源的相机,前置摄像头拍摄图像过程中可以向外发射光线,光线通过孔照射到目标物反射回前置摄像头,反射回的光线被前置摄像头采集,前置摄像头基于反射回的光线成像,得到目标物的图像。非显示区域使得显示屏可以占用电子设备的部分区域,显示屏不能做到全面屏。
发明内容
本申请提供了一种图像处理方法及装置,目的在于解决电子设备中的显示屏不能做到全面屏的问题。
为了实现上述目的,本申请提供了以下技术方案:
第一方面,本申请一种图像处理方法,方法应用于电子设备中,电子设备包括前置摄像头和显示屏,前置摄像头设置在显示屏下方,方法包括:通过前置摄像头得到被拍摄对象的屏下图像,屏下图像是显示屏遮挡前置摄像头时前置摄像头拍摄到的图像;获得被拍摄对象的屏下图像的图像数据;调用图像去光斑模型对屏下图像的图像数据进行去光斑处理,得到图像去光斑模型输出的图像数据,图像去光斑模型是基于历史屏下图像的图像数据和历史无屏图像的图像数据进行训练得到,历史无屏图像是没有显示屏遮挡时前置摄像头拍摄到的图像,历史屏下图像中具有衍射光斑,历史无屏图像中没有衍射光斑;基于图像去光斑模型输出的图像数据,得到被拍摄对象的修正图像,修正图像中没有衍射光斑,或,修正图像中衍射光斑的数量小于屏下图像中衍射光斑的数量。
在本实施例中,电子设备通过前置摄像头得到的被拍摄对象的屏下图像,其图像数据可以输入到图像去光斑模型中,由图像去光斑模型对屏下图像的图像数据进行去光斑处理,得到图像去光斑模型输出的图像数据。电子设备可以基于图像去光斑模型输出的图像数据,得到被拍摄对象的修正图像。其中修正图像中可以没有衍射光斑,或,修正图像中衍射光斑的数量小于屏下图像中衍射光斑的数量,说明屏下图像的图像经过图像去光斑模型处理后,图像数据中与光斑相关的取值得到修正/调整,使得修正图像中没有衍射光斑或者相对屏下图像来说衍射光斑数量减少,修正图像的图像质量高于屏下图像的图像质量。例如修正图像中没有衍射光斑时,修正图像可以是被拍摄对象的无屏图像,即没有显示屏遮挡时前置摄像头对被拍摄对象进行拍摄时得到的图像。由此将前置摄像头设置在显示屏下方时,虽然显示屏可以使前置摄像头发射的光线产生衍射,但是电子设备可以调用图像去光斑模型,得到一个与无屏图像相接近的修正图像,使得通过前置摄像头拍摄的图像质量达到实用级别,且电子设备中的显示屏可以做到全面屏,从而在提高图像质量的同时可以使显示屏占用电子设备的全部区域,提升电子设备的外观视觉美感。因为经过图像去光斑模型处理后图像质量得到提升,调用修正图像的任务的处理效果也得到提升,例如人脸识别任务的识别效果也得到提升。
可选的,调用图像去光斑模型对屏下图像的图像数据进行去光斑处理,得到图像去光斑模型输出的图像数据包括:调用图像去光斑模型,基于屏下图像的图像数据确定出屏下图像中的光斑区域和非光斑区域,光斑区域中具有衍射光斑,非光斑区域中没有衍射光斑;调用图像去光斑模型基于非光斑区域中像素点的像素值,对光斑区域中像素点的像素值进行调整,以得到图像去光斑模型输出的图像数据。
在本实施例中,图像去光斑模型具备识别屏下图像的光斑区域、利用非光斑区域中各像素点的取值对光斑区域中各像素点的取值进行矫正的能力,且在对光斑区域进行去光斑处理过程中,图像去光斑模型可以保留非光斑区域的特征。由此在将屏下图像的图像数据输入到图像去光斑模型中,图像去光斑模型可以矫正光斑区域中各像素点的取值以及保留非光斑区域的特征,例如保留非光斑区域中各像素点的取值,在修正光斑区域的同时保留非光斑区域的特征,以提高图像质量。在矫正光斑区域中各像素点的取值时,图像去光斑模型可以利用与光斑区域相邻的非光斑区域中像素点的取值进行矫正。若光斑区域较大,图像去光斑模型可以先矫正光斑区域中与非光斑区域相邻的各像素点的取值,再对光斑区域中其他像素点的取值进行矫正,对光斑区域中其他像素点进行矫正过程中可能使用光斑区域中像素点的取值,注意使用的是像素点矫正后的取值。
可选的,在调用图像去光斑模型对屏下图像的图像数据进行处理,得到图像去光斑模型输出的图像数据之后,方法还包括:对图像去光斑模型输出的图像数据进行灰度映射,得到灰度映射后的图像数据;基于图像去光斑模型输出的图像数据,得到被拍摄对象的修正图像包括:基于灰度映射后的图像数据,得到被拍摄对象的修正图像,被拍摄对象的修正图像的位数小于或等于被拍摄对象的屏下图像的位数。修正图像的位数可以是调用方经常使用的图像的位数,例如修正图像的位数可以是8bit(位),使得调用方可以使用常见的8bit图像。例如人脸识别模型经常使用8bit图像,电子设备经过灰度映射将修正图像调整成8bit图像,这样人脸识别模型可以直接调用修正图像,进行人脸识别。
可选的,被拍摄对象的修正图像的位数为八位。修正图像的调用方经常使用8bit图像,这样电子设备得到被拍摄对象的修正图像,调用方可以直接使用,在满足调用方的使用需求的同时省去对调用方的修改。
可选的,对图像去光斑模型输出的图像数据进行灰度映射,得到灰度映射后的图像数据包括:从图像去光斑模型输出的图像数据中得到最大灰度值和最小灰度值,基于最大灰度值和最小灰度值,得到拉伸系数;基于拉伸系数,对图像去光斑模型输出的图像数据中像素点的灰度值进行修正,得到修正后的灰度值,各像素点修正后的灰度值组成灰度映射后的图像数据,或者,对图像去光斑模型输出的图像数据进行灰度映射,得到灰度映射后的图像数据包括:将图像去光斑模型输出的图像数据中像素点的灰度值作为索引代入预设变换表,将预设变换表中该索引映射的灰度值作为该像素点的灰度值。其中预设变换表可以是伽马变化表。
可选的,图像去光斑模型是基于历史屏下图像的图像数据和历史无屏图像的图像数据进行训练得到包括:获得多个训练样本图像对和多个测试样本图像对,每个训练样本图像对和每个测试样本图像对包括历史屏下图像的图像数据和历史无屏图像的图像数据,训练样本图像对和测试样本图像对中的历史屏下图像和历史无屏图像对应同一个对象,历史屏下图像是显示屏遮挡前置摄像头时前置摄像头拍摄到的图像,或者,历史屏下图像是基于历史无屏图像和成像模型合成得到,前置摄像头在拍摄次数采用的拍摄距离、拍摄角度和曝光时间中的至少一种拍摄参数相同或不同;将训练样本图像对中的历史屏下图像的图像数据输入到图像去光斑模型中,得到图像去光斑模型输出的修正图像数据;基于修正图像数据、历史无屏图像的图像数据和至少一个损失函数,得到图像去光斑模型的损失值;基于图像去光斑模型的损失值,调整图像去光斑模型的模型参数,在完成对图像去光斑模型的训练后,保存多个图像去光斑模型,多个图像去光斑模型具有确定出图像中的光斑区域和非光斑区域的能力,以及具有基于非光斑区域中像素点的像素值对光斑区域中像素点的像素值进行调整的能力;调用保存的每个图像去光斑模型对测试样本图像对中的历史屏下图像的图像数据进行去光斑处理,得到保存的每个图像去光斑模型输出的图像数据;基于保存的每个图像去光斑模型输出的图像数据和测试样本图像对中的历史无屏图像的图像数据,获得保存的每个图像去光斑模型的指标值;基于保存的每个图像去光斑模型的指标值,从多个图像去光斑模型中选择一个图像去光斑模型,选择的图像去光斑模型用于对屏下图像的图像数据进行去光斑处理。
训练样本图像对中的历史屏下图像和历史无屏图像对应同一个对象,测试样本图像对中的历史屏下图像和历史无屏图像对应同一个对象,训练样本图像对和测试样本图像对可以对应不同对象。在对图像去光斑模型训练时,前置摄像头可采用不同拍摄条件进行拍摄,以考虑不同拍摄条件下拍摄到的图像不同其衍射光斑不同,使得图像去光斑模型可以针对不同拍摄条件下的衍射光斑,其中拍摄条件可以包括拍摄距离、拍摄角度和曝光时间中的至少一种拍摄参数。在完成对图像去光斑模型的训练后,电子设备可以保存一个图像去光斑模型,例如最后一次训练出的图像去光斑模型。电子设备也可以保存多个图像去光斑模型,多个图像去光斑模型具有确定出图像中的光斑区域和非光斑区域的能力,以及具有基于非光斑区域中像素点的像素值对光斑区域中像素点的像素值进行调整的能力;然后电子设备基于保存的每个图像去光斑模型的指标值选择一个图像去光斑模型使用。在一种示例中,指标值包括峰值信噪比和/或结构相似度指数,电子设备可以基于峰值信噪比和/或结构相似度指数,选择一个较优的图像去光斑模型使用,提高处理质量。此外,电子设备可以基于多个损失函数计算损失值,不同损失函数的约束条件不同,使得图像去光斑模型可以兼顾多个约束条件,提高准确度和处理质量。
可选的,基于修正图像数据、历史无屏图像的图像数据和至少一个损失函数,得到图像去光斑模型的损失值包括:从绝对值损失函数、平方损失函数和平滑一范数损失函数中选择一个损失函数,从感知损失函数、交叉熵损失函数、结构相似性指数损失函数和边缘损失函数中选择至少两个损失函数;基于选择的每个损失函数、获得修正图像数据和历史无屏图像的图像数据之间的损失值,基于每个损失函数得到的损失值和每个损失函数的权重,得到图像去光斑模型的损失值。
可选的,图像去光斑模型包括至少两个编码器,每个编码器包括至少一个卷积层和至少一个激活层,相邻两个编码器中卷积层的超参数之间的关系是,相邻两个编码器中卷积层的步长为1、相邻两个编码器中下一个编码器中卷积层中卷积核的个数大于上一个编码器中卷积层中卷积核的个数,以使相邻两个编码器输出的特征响应之间满足关系,相邻两个编码器输出的特征响应对应的分辨率不变、下一个编码器输出的特征响应对应的通道数大于上一个编码器输出的特征响应对应的通道数;在至少两个编码器的卷积层和激活层的相互作用下,图像去光斑模型具有确定出图像中的光斑区域和非光斑区域的能力,以及具有基于非光斑区域中像素点的像素值对光斑区域中像素点的像素值进行调整的能力。因为图像去光斑模型省去了解码器,从而可以简化图像去光斑模型的模型结构。
可选的,方法还包括:从预先构建的第一类型编码器、第二类型编码器和第三类型编码器中选择至少一种类型编码器,第一类型编码器、第二类型编码器和第三类型编码器之间的关系是,第一类型编码器的层级小于第二类型编码器的层级,第二类型编码器的层级小于第三类型编码器的层级;第一类型编码器要求的算力小于第二类型编码器要求的算力,第二类型编码器要求的算力小于第三类型编码器要求的算力;第一类型编码器可去除的光斑区域小于第二类型编码器可去除的光斑区域,第二类型编码器可去除的光斑区域小于第三类型编码器可去除的光斑区域;从预先构建的第一类型解码器、第二类型解码器和第三类型解码器中选择至少一种类型解码器,第一类型解码器、第二类型解码器和第三类型解码器之间的关系是,第一类型解码器的层级小于第二类型解码器的层级,第二类型解码器的层级小于第三类型解码器的层级;第一类型解码器要求的算力小于第二类型解码器要求的算力,第二类型解码器要求的算力小于第三类型解码器要求的算力;第一类型解码器可去除的光斑区域小于第二类型解码器可去除的光斑区域,第二类型解码器可去除的光斑区域小于第三类型解码器可去除的光斑区域;基于选择的编码器和选择的解码器,构建图像去光斑模型,图像去光斑模型包括至少两个编码器和至少一个解码器,其中解码器数量比编码器数量少一个;在至少两个编码器和至少一个解码器的作用下,图像去光斑模型具有确定出图像中的光斑区域和非光斑区域的能力,以及具有基于非光斑区域中像素点的像素值对光斑区域中像素点的像素值进行调整的能力。
在本实施例中,电子设备可以基于算力要求和光斑区域大小等构建多种类型编码器和多种类型解码器;在训练图像去光斑模型之前,电子设备可根据当前的算力要求和光斑区域大小等要求,从多种类型编码器和多种类型解码器中选择编码器和解码器,基于选择的编码器和选择的解码器,构建一个与当前的算力要求和光斑区域大小等要求匹配的图像去光斑模型。上述预先构建第一类型编码器、第二类型编码器、第三类型编码器,以及预先构建第一类型解码器、第二类型解码器、第三类型解码器是示例说明,本实施例还可以预先构建两种类型编码器和两种类型解码器,也可以预先构建四种及四种以上编码器、预先构建四种及四种以上解码器,此处不再详述。
可选的,第一类型编码器、第二类型编码器和第三类型编码器包括至少一个卷积层、至少一个激活层和至少一个残差层;第一类型编码器、第二类型编码器和第三类型编码器中卷积层的数量相同、激活层的数量相同,第二类型编码器中残差层的数量大于第一类型编码器中残差层的数量,第三类型编码器中残差层的数量大于第二类型编码器中残差层的数量卷积层的数量;第一类型解码器、第二类型解码器和第三类型解码器包括至少一个残差层、至少一个处理层和至少一个激活层;第一类型解码器器、第二类型解码器器和第三类型解码器器中处理层的数量相同、激活层的数量相同,第二类型解码器器中残差层的数量大于第一类型解码器器中残差层的数量,第三类型解码器器中残差层的数量大于第二类型解码器器中残差层的数量卷积层的数量。通过残差层的引入增加了编码器和解码器的深度、增加了编码器和解码器的拟合能力,提高残差层输出的图像数据的准确度,使得第二类型编码器、第三类型编码器、第二类型解码器和第三类型解码器具备去除大光斑的能力,大光斑是指光斑区域较大。
可选的,图像去光斑模型中相邻两个编码器的卷积核个数关系是,下一个编码器的卷积核个数可以是上一个编码器的卷积核个数的N倍,从而使相邻两个编码器的输出满足第一预设关系,第一预设关系可以是下一个编码器输出的特征响应的通道数是上一个编码器输出的特征响应的通道数的N倍、下一个编码器输出的特征响应的分辨率是上一个编码器输出的特征响应的分辨率的(1/N)*(1/N)倍,N是大于等于2的幂次方。
在一种示例中,相邻两个编码器的卷积核个数关系可以是相邻两个编码器中卷积层中卷积核个数关系,每个编码器的残差层没有改变特征响应的通道数和分辨率。虽然特征响应的通道数增加导致处理的数据量增加,但是特征响应的通道数增加可以提取到更加丰富的图像特征,提高图像质量和图像数据的准确度。
可选的,如果解码器的处理层采用的是卷积层和上采样层的形式,相邻两个解码器的卷积核个数关系是,下一个解码器的卷积核个数可以是上一个解码器的卷积核个数的1/N倍,使相邻两个解码器的输出满足第二预设关系,第二预设关系可以是下一个解码器输出的特征响应的通道数是上一个解码器输出的特征响应的通道数的1/N倍,下一个解码器输出的特征响应的分辨率是上一个解码器输出的特征响应的分辨率的N*N倍,N是大于等于2的幂次方;如果解码器的处理层采用的像素重组的形式,下一个解码器先将上一个解码器输出的特征响应的通道数提升N倍,然后经过上采样将下一个解码器输出的特征响应变成上一个解码器输出的特征响应的1/N倍,使相邻两个解码器的输出满足第二预设关系。
在一种示例中,相邻两个解码器的卷积核个数关系可以是相邻两个解码器中卷积层中卷积核个数关系,每个解码器的残差层没有改变特征响应的通道数和分辨率。特征响应的通道数降低使得处理的数据量降低,且分辨率的增加可以使得修正图像的分辨率不小于屏下图像的分辨率。
可选的,图像去光斑模型中第一个编码器的卷积核个数的取值范围是[4,32];图像去光斑模型中最后一个解码器的卷积核个数的取值范围是[1,32]。
可选的,图像去光斑模型的编码器和解码器中没有归一化层。归一化层的主要作用是特征响应中各数值分布均匀或者各数值之间的差异降低。屏下图像存在一个特性:屏下图像存在偏亮和偏暗两个区间。屏下图像中偏亮和偏暗两个区间中各像素点的数值差异大,通过归一化层后可降低两个区间中像素点之间的差异,使得两个区间中各像素点的数值与实际取值存在较大差异,准确度降低。并且经过实验分析,没有归一层的图像去光斑模型的效果优于有归一层的图像去光斑模型,没有归一层的图像去光斑模型的计算量减少,因此图像去光斑模型可以没有归一化层。
第二方面,本申请提供一种电子设备,包括:存储器,用于存储应用程序;一个或多个处理器,用于运行应用程序,以实现上述图像处理方法。
第三方面,本申请提供一种计算机可读存储介质,计算机可读存储介质上存储有程序,在电子设备运行应用程序时,实现上述图像处理方法。
第四方面,本申请提供一种计算机程序产品,当计算机程序产品在电子设备上运行时,使得电子设备执行上述图像处理方法。
附图说明
图1为本申请提供的人脸图像去光斑的效果示意图;
图2为本申请提供的电子设备的硬件结构图;
图3为本申请提供的电子设备的软件架构图;
图4为本申请提供的残差层的示意图;
图5为本申请提供的图像去光斑模型的模型结构图;
图6为本申请提供的图像去光斑模型中编码模块的结构图;
图7为本申请提供的图像去光斑模型中解码模块的结构图;
图8为本申请提供的训练图像去光斑模型的流程图;
图9为本申请提供的图像处理方法的流程图;
图10为本申请提供的人脸图像去光斑的效果比对示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述。以下实施例中所使用的术语只是为了描述特定实施例的目的,而并非旨在作为对本申请的限制。如在本申请的说明书和所附权利要求书中所使用的那样,单数表达形式“一个”、“一种”、“所述”、“上述”、“该”和“这一”旨在也包括例如“一个或多个”这种表达形式,除非其上下文中明确地有相反指示。还应当理解,在本申请实施例中,“一个或多个”是指一个、两个或两个以上;“和/或”,描述关联对象的关联关系,表示可以存在三种关系;例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B的情况,其中A、B可以是单数或者复数。字符“/”一般表示前后关联对象是一种“或”的关系。
在本说明书中描述的参考“一个实施例”或“一些实施例”等意味着在本申请的一个或多个实施例中包括结合该实施例描述的特定特征、结构或特点。由此,在本说明书中的不同之处出现的语句“在一个实施例中”、“在一些实施例中”、“在其他一些实施例中”、“在另外一些实施例中”等不是必然都参考相同的实施例,而是意味着“一个或多个但不是所有的实施例”,除非是以其他方式另外特别强调。术语“包括”、“包含”、“具有”及它们的变形都意味着“包括但不限于”,除非是以其他方式另外特别强调。
本申请实施例涉及的多个,是指大于或等于两个。需要说明的是,在本申请实施例的描述中,“第一”、“第二”等词汇,仅用于区分描述的目的,而不能理解为指示或暗示相对重要性,也不能理解为指示或暗示顺序。
为了保证电子设备的前置摄像头拍摄到的图像质量,前置摄像头可以设置在电子设备的非显示区域,非显示区域中开有一个孔,在孔下方设置前置摄像头。前置摄像头可以是一个发射点光源的摄像头,前置摄像头拍摄图像过程中可以向外发射光线,光线通过孔照射到目标物反射回前置摄像头,反射回的光线被前置摄像头采集,前置摄像头基于反射回的光线成像,得到目标物的图像。但是非显示区域使得显示屏可以占用电子设备的部分区域,显示屏不能做到全面屏。
如果显示屏做到全面屏,前置摄像头可以设置/隐藏在显示屏下。设置在显示屏下方的前置摄像头发射光线,光线遇到目标物后形成反射光,反射光经过显示屏传输给前置摄像头。反射光在经过显示屏时发生衍射,使前置摄像头接收到的反射光的亮度降低且反射光发散,前置摄像头拍摄得到的图像模糊且出现光斑。
为了降低衍射对图像的影响,引入点扩散函数(Point Spread Function,PSF),基于PSF与前置摄像头拍摄到的图像进行反卷积处理,如将PSF与图像的第一灰度矩阵进行反卷积处理,得到图像的第二灰度矩阵,基于图像的第二灰度矩阵,得到图像,第一灰度矩阵和第二灰度矩阵是图像中各像素点的灰度值组成的矩阵。
PSF可以体现输入物为一点光源时其输出像的光场分布,PSF可通过前置摄像头实拍、光学模拟仿真、数学建模等方式得到。但是因前置摄像头对应的传感器饱和以及前置摄像头噪声等因素,通过前置摄像头实拍得到的PSF存在误差,光学模拟仿真和数学建模得到的PSF偏向理论,其体现的光场分布与实际光场分布存在差异,因此通过前置摄像头实拍、光学模拟仿真、数学建模等方式得到的PSF的准确度低,基于PSF反卷积处理时恢复出的像素点的灰度值有误,去光斑效果降低、图像质量降低。并且基于上述三种方式获得PSF的耗时较长,降低效率。
PSF去光斑的一种场景是人脸解锁的场景,飞行时间(Time of Fight Camera,TOF)相机作为前置摄像头,通过TOF相机拍摄得到人脸的屏下图像(单通道的红外图,简称为人脸图像),对人脸图像进行解析,以得到人脸图像中各像素点的灰度值,各像素点的灰度值组成人脸图像的第一灰度矩阵。将人脸图像的第一灰度矩阵与PSF进行反卷积处理,得到人脸图像的第二灰度矩阵,基于人脸图像的第二灰度矩阵,得到人脸图像。
但是因为PSF的准确度低,基于PSF反卷积处理时恢复出的像素点的灰度值有误。如图1(a)所示,设置在显示屏下方的前置摄像头拍摄人脸时光线发生衍射,使人脸图像中眼睛位置存在多个光斑。基于PSF对图1(a)所示人脸图像,利用维纳滤波进行反卷积,得到图1(b)所示人脸图像。图1(b)所示人脸图像中光斑覆盖区域变大,因光斑覆盖眼睛,眼睛位置处各像素点的灰度值接近传感器饱和至(如1023),基于眼睛位置处各像素点的灰度值难以恢复出眼睛,人脸图像的图像质量降低。图1(a)所示人脸图像可以利用优化后的维纳滤波进行反卷积,其效果如图1(c)所示。虽然相对于图1(b)所示人脸图像,光斑覆盖区域变小,但是与图1(a)所示人脸图像中光斑覆盖区域相接近,且相对于图1(a)来说人脸图像模糊,甚至可能存在人脸图像中一些区域的特征丢失的情况。由此基于PSF处理图像时,光斑去除效果差且图像质量降低。
针对这一问题,本申请提供一种图像处理方法,获得设置在显示屏下方的前置摄像头拍摄到的第一图像,通过图像去光斑模型对第一图像进行去光斑处理,得到第二图像。图像去光斑模型可以基于屏下图像和无屏图像训练得到,使图像去光斑模型具备识别出屏下图像中的光斑区域和对光斑区域中的各像素点的灰度值进行矫正的能力,那么在通过图像去光斑模型对第一图像进行处理过程中,图像去光斑模型可以对第一图像的光斑区域中各像素点的灰度值的矫正,去除第一图像中的至少部分光斑,省去对PSF的依赖,解决因PSF准确度低导致的去光斑效果差的问题,也解决了因获得PSF的耗时较长导致的效率降低的问题。其中屏下图像可以是在存在显示屏遮挡时前置摄像头拍摄到的图像;无屏图像可以是在没有显示屏遮挡时前置摄像头拍摄到的图像。
屏下图像也可以合成得到,一种方式是基于成像模型合成,得到屏下图像。成像模型是在考虑衍射效应和传感器饱和度情况下得到,例如成像模型可以表示为:其中x是没有光斑且没有摄像头噪声时的理想图像;*表示二维卷积算子;k是PSF;Φ()是非线性色调映射(Tone Mapping)函数;thres()是一个阈值函数,thres(x)=min(x,xmax)表示在x的取值超出传感器的最大取值时,x的取值为传感器的最大取值;是存在光斑的屏下图像。电子设备可以基于成像模型中的PSF和理想图像,合成出屏下图像。
本申请提供的图像处理方法可以应用于电子设备中,在一些实施例中,该电子设备可以是手机、平板电脑、桌面型、膝上型、笔记本电脑、超级移动个人计算机(Ultra-mobile Personal Computer,UMPC)、手持计算机、上网本、个人数字助理(PersonalDigital Assistant,PDA)、可穿戴电子设备、智能手表等设备。本申请对电子设备的具体形式不做特殊限定。
如图2所示,该电子设备可以包括:处理器,外部存储器接口,内部存储器,通用串行总线(Universal Serial Bus,USB)接口,充电管理模块,电源管理模块,电池,天线1,天线2,移动通信模块,无线通信模块,传感器模块,按键,马达,指示器,摄像头,显示屏,以及用户标识模块(Subscriber Identification Module,SIM)卡接口等。其中音频模块可以包括扬声器,受话器,麦克风,耳机接口等,传感器模块可以包括压力传感器,陀螺仪传感器,气压传感器,磁传感器,加速度传感器,距离传感器,接近光传感器,指纹传感器,温度传感器,触摸传感器,环境光传感器,骨传导传感器等。
处理器可以包括一个或多个处理单元,例如:处理器可以包括应用处理器(Application Processor,AP),调制解调处理器,图形处理器(Graphics ProcessingUnit,GPU),图像信号处理器(Image Signal Processor,ISP),控制器,视频编解码器,数字信号处理器(Digital Signal Processor,DSP),基带处理器,和/或神经网络处理器(Neural-network Processing Unit,NPU)等。其中,不同的处理单元可以是独立的器件,也可以集成在一个或多个处理器中。处理器是电子设备的神经中枢和指挥中心,控制器可以根据指令操作码和时序信号,产生操作控制信号,完成取指令和执行指令的控制。
显示屏用于显示图像,视频、一系列图形用户界面(Graphical User Interface,GUI)等。
外部存储器接口可以用于连接外部存储卡,例如Micro SD卡,实现扩展电子设备的存储能力。外部存储卡通过外部存储器接口与处理器通信,实现数据存储功能。例如将音乐,视频等文件保存在外部存储卡中。内部存储器可以用于存储计算机可执行程序代码,所述可执行程序代码包括指令。处理器通过运行存储在内部存储器的指令,从而执行电子设备的各种功能应用以及数据处理。例如,在本申请中,处理器通过运行内部存储器中存储的指令,使得电子设备执行本申请提供的图像处理方法。
摄像头用于捕获静态图像或视频。物体通过镜头生成光学图像投射到感光元件。感光元件可以是电荷耦合器件(Charge Coupled Device,CCD)或互补金属氧化物半导体(Complementary Metal-Oxide-Semiconductor,CMOS)光电晶体管。感光元件把光信号转换成电信号,之后将电信号传递给ISP转换成数字图像信号。ISP将数字图像信号输出到DSP加工处理。DSP将数字图像信号转换成标准的RGB,YUV等格式的图像信号。在一些实施例中,电子设备可以包括1个或N个摄像头,N为大于1的正整数,N个摄像头中m个摄像头设置在显示屏之下,设置在显示屏下方的摄像头可以作为前置摄像头使用,由设置在显示屏下方的摄像头拍摄得到屏下图像。其他摄像头可以设置在电子设备的背面,作为后置摄像头使用,m<=N。这里说明一下,得到屏下图像的前置摄像头指的是设置在/位于显示屏下方的前置摄像头,得到无屏图像的前置摄像头指的是没有位于显示屏下方的前置摄像头。
可以理解的是,本实施例示意的结构并不构成对电子设备的具体限定。在另一些实施例中,电子设备可以包括比图示更多或更少的部件,或者组合某些部件,或者拆分某些部件,或者不同的部件布置。图示的部件可以以硬件,软件或软件和硬件的组合实现。
另外,在上述部件之上,运行有操作系统。例如苹果公司所开发的iOS操作系统,谷歌公司所开发的Android开源操作系统,微软公司所开发的Windows操作系统等。
电子设备的操作系统可以采用分层架构,事件驱动架构,微核架构,微服务架构,或云架构。本申请实施例以分层架构的Android系统为例,示例性说明电子设备的软件结构。图3是电子设备的软件结构框图。分层架构将软件分成若干个层,每一层都有清晰的角色和分工。层与层之间通过软件接口通信。以Android系统为例,在一些实施例中,将Android系统分为四层,从上至下分别为应用程序层,应用程序框架层(Framework),硬件抽象层(HAL)以及系统内核层(Kernel)。
其中,应用程序层可以包括一系列应用程序包。应用程序包可以包括相机,图库,日历,通话,地图,导航,WLAN,蓝牙,音乐,视频,短信息等APP。应用程序框架层为应用程序层的应用程序提供应用编程接口(Application Programming Interface,API)和编程框架。应用程序框架层包括一些预先定义的函数。例如应用程序框架层可以包括窗口管理器,内容提供器,视图系统,电话管理器,资源管理器,通知管理器等。
HAL可以包含多个库模块,其中每个模块都为特定类型的硬件组件实现一组接口,如HAL包括图像去光斑模块和人脸识别模块,图像去光斑模块和人脸识别模块分别具有一组接口,应用程序层的APP可以调用图像去光斑模块和/或人脸识别模块的接口,图像去光斑模块用于实现本申请所述的图像处理方法。内核层是硬件和软件之间的层。内核层至少包含显示驱动,摄像头驱动,音频驱动,传感器驱动。
上述图3所示软件结构的处理过程是:设置在显示屏下方的前置摄像头接收拍照指示,如应用程序层的APP向前置摄像头发送拍照指示;前置摄像头拍摄得到图像,调用HAL中的图像去光斑模块对图像进行去光斑处理。例如图像去光斑模块可以调用图像去光斑模型对图像进行去光斑处理,去光斑处理后的图像可以被软件结构中的其他模块或APP使用。
例如在人脸解锁场景下,设置在显示屏下方的前置摄像头拍摄人脸图像,图像去光斑模块可以对人脸图像进行去光斑处理。去光斑处理后的人脸图像可以被人脸识别模块调用。人脸识别模块将去光斑处理后的人脸图像与图像库中的人脸图像进行比对,得到去光斑处理后的人脸图像的比对标识,如比对标识可以是一个图像ID(身份标识号),图像ID可以指向图像库中的一张人脸图像,通过图像ID指示去光斑处理后的人脸图像与图像库中的人脸图像匹配。应用程序层中的解锁应用(系统级应用)可以调用人脸识别模块输出的图像ID,基于图像ID确定用户是否具有解锁权限,如果具有解锁权限,对电子设备进行解锁。应用程序层中的第三方应用也可以调用去光斑处理后的人脸图像,例如具有支付功能的第三方应用,在第三方应用发起支付请求时,由第三方应用中的人脸识别功能,对去光斑处理后的人脸图像进行识别处理。
下面先对图像去光斑模型涉及的处理层进行说明,再分别对图像去光斑模型和图像处理方法进行详细说明。
卷积层(Convolution Layer)是指图像去光斑模型中对图像数据进行卷积处理的神经元层。在图像去光斑模型的卷积层中,一个神经元可以只与部分邻层神经元连接。一个卷积层中,通常包含若干个卷积核,每个卷积核可以由一些矩形排列的神经单元组成。图像数据可以是图像中各像素点的取值组成的矩阵或是图像去光斑模型中其他层输出的特征响应,同一图像数据可以共享一组神经单元,这里共享的神经单元就是卷积核。
在本实施例中,卷积核可以是一个3*3的卷积核,卷积层的步长可以是1或者大于1的整数。如果卷积层的步长大于1,卷积层对图像数据进行卷积处理后,图像的分辨率降低,相对于步长等于1来说,通过卷积层得到的特征响应的维度降低,图像的分辨率以图像的宽和高表示。例如卷积层的步长为2,图像的宽和高分别降低两倍,图像缩小1/4,相对应的像素点数量也降低了1/4,相对于步长等于1来说,卷积层得到的特征响应的维度也降低了1/4。
激活层是图像去光斑模型中对图像数据进行非线性映射的层,激活层可以调用激活函数,完成对图像数据的非线性映射。例如激活层可以调用激活函数,对卷积层输出的特征响应进行非线性映射,激活函数可以使用线性整流函数(Rectified Linear Unit,ReLU)函数或者ReLU函数的变形函数,如使用leaky ReLU函数。特征响应经过激活层的非线性映射后,特征响应的通道数和分辨率可以维持不变。
残差层可以是由卷积层和激活层组成的网络层,特征响应x经过残差层处理可以输出F(x)+x。残差层可以参考经典模型Resnet的残差块进行设计。特征响应经过残差层处理后,特征响应的通道数和分辨率可以维持不变。为了保证特征响应的通道数和分辨率维持不变,残差层的步长可以为1,卷积核的数量与特征响应的通道数相同。例如残差层接收到一个480*640*32的特征响应,32是通道数,480是高,640是宽,残差层有32个3*3*32的卷积核,与一个卷积核卷积后是480*640*1,32个卷积核处理后特征响应仍是480*640*32。残差层的引入增加了图像去光斑模型的深度和拟合能力,使得图像去光斑模型具备去除大光斑的能力,大光斑是指光斑区域较大。
在本实施例中,图像去光斑模型可以包括多层残差层,多层残差层的作用是防止过拟合和梯度消失,在防止过拟合和梯度消失的作用下,残差层可以使得输出的特征响应中记录的数据量大于或等于上一层输出的数据量。残差层在特定情况下允许输入和输出相同,通过这种直接映射的方式可以解决网络退化问题,避免随着网络层数增加准确度降低的问题。
残差层的一种可选结构如图4所示,残差层包括两个卷积层和一个激活层,两个卷积层的步长可以是1,两个卷积层的超参数可以相同,例如两个卷积层中卷积核的维度和卷积核的数量也可以相同,激活层调用的激活函数可以是ReLU函数或者ReLU函数的变形函数,如使用leaky ReLU函数。激活层可以位于两个卷积层之间,且残差层的输入和输出之间连接,形成一种直接映射的关系,使得残差层可以具备输入和输出相同的能力。
处理层是将特征响应的分辨率提升、降低特征响应的通道数。处理层的一种形式是,处理层包括卷积层和上采样层,卷积层的步长可以是1,基于卷积层的卷积核降低特征响应的通道数;基于上采样层的上采样提升特征响应的分辨率。提升特征响应的分辨率可以是提升图像的宽和高,例如上采样层可以采用双线性差值或反卷积的方式完成分辨率的提升。处理层的另一种形式是,像素重组(PixelShuffle),像素重组是将低分辨的特征响应,通过卷积和多通道间的重组得到高分辨率的特征响应。像素重组通过卷积得到通道数为r2的特征响应,然后通过多通道间重组的方式将通道数的提升转换到分辨率上,得到分辨率提升r倍的特征响应,其中r是PixelShuffle的上采样因子。
在本实施例中,图像去光斑模型中省略了归一化层,归一化层的主要作用是特征响应中各数值分布均匀或者各数值之间的差异降低。屏下图像存在一个特性:屏下图像存在偏亮和偏暗两个区间。屏下图像中偏亮和偏暗两个区间中各像素点的数值差异大,通过归一化层后可降低两个区间中像素点之间的差异,使得两个区间中各像素点的数值与实际取值存在较大差异,准确度降低。并且经过实验分析,没有归一层的图像去光斑模型的效果优于有归一层的图像去光斑模型,没有归一层的图像去光斑模型的计算量减少,因此图像去光斑模型可以没有归一化层。
图5示出了图像去光斑模型的一种模型结构,图像去光斑模型可以包括编码模块和解码模块。设置在显示屏下方的前置摄像头拍摄到的图像输入到编码模块,编码模块可以对图像进行特征提取等处理,得到特征响应。解码模块基于特征响应,得到图像并输出。解码模块输出的图像可以是单通道图像也可以是多通道图像,编码模块输入的图像可以是单通道图像也可以是多通道图像,解码模块输出的图像的通道数可以与编码模块输入的图像的通道数相同或不同,解码模块输出的图像的分辨率可以与编码模块输入的图像的分辨率相同或不同。
单通道图像和多通道图像是基于图像的通道数确定的,单通道图像的通道数为1,多通道图像的通道数大于1。通道数越少,图像的数据量也越少,因此单通道图像的数据量小于多通道图像的数据量。在本实施例中,解码模块输出的图像类型与电子设备中传感器成像时的图像的通道数有关,如果电子设备中传感器成像时的图像的通道数为1,解码模块可以输出单通道图像,由此降低人脸识别模块和/或第三方应用处理的数据量减少,降低资源消耗和提高处理效率。其中,编码模块可以包括至少两个编码器,解码模块可以包括至少一个解码器,在一个图像去光斑模型中,解码器数量比编码器数量少1个。
编码模块中的第一个编码器的卷积核个数的取值范围可以是[4,32],表示在4至32中选择出第一个编码器的卷积核个数;编码模块中相邻两个编码器的卷积核个数关系可以是:下一个编码器的卷积核个数可以是上一个编码器的卷积核个数的N倍,从而使相邻两个编码器的输出满足第一预设关系,第一预设关系可以是下一个编码器输出的特征响应的通道数是上一个编码器输出的特征响应的通道数的N倍、下一个编码器输出的特征响应的分辨率是上一个编码器输出的特征响应的分辨率的(1/N)*(1/N)倍,N可以是大于等于2的幂次方。
解码模块中最后一个解码器的卷积核个数的取值范围可以是[1,32]。如果解码模块中的处理层采用的是卷积层和上采样层的形式,解码模块中相邻两个解码器的卷积核个数关系可以是:下一个解码器的卷积核个数可以是上一个解码器的卷积核个数的1/N倍,从而使相邻两个解码器的输出满足第二预设关系。第二预设关系可以是下一个解码器输出的特征响应的通道数是上一个解码器输出的特征响应的通道数的1/N倍,下一个解码器输出的特征响应的分辨率是上一个解码器输出的特征响应的分辨率的N*N倍。如果解码模块中的处理层采用的像素重组的形式,下一个解码器可以先提升上一个解码器输出的特征响应的通道数,再通过上采样下降上一个解码器输出的特征响应的通道数,使得相邻两个解码器的输出满足第二预设关系。例如下一个解码器可以先将上一个解码器输出的特征响应的通道数提升N倍,然后经过上采样,将下一个解码器输出的特征响应变成上一个解码器输出的特征响应的1/N倍。
设置在显示屏下方的前置摄像头拍摄到图像后,电子设备解析得到图像的图像数据,调用图像去光斑模型对图像数据进行处理,处理过程如下:
编码模块中的第一个编码器接收设置在显示屏下方的前置摄像头拍摄到的图像的图像数据,图像数据中记录图像中各像素点的取值,例如图像数据的一种形式是图像数据,图像数据中的每个元素可以是图像中各像素点的取值。第一个编码器对图像数据进行特征提取,得到第一特征响应,第一特征响应相对于图像数据来说通道数增加但是分辨率可以维持不变。
第一特征响应作为第二个编码器的输入,第二个编码器对第一特征响应进行特征提取,得到第二特征响应,第二特征响应相对于第一特征响应来说通道数可以增加、分辨率可以降低。第二特征响应作为第三个编码器的输入,第三个编码器可以对第二特征响应进行特征提取,然后第三个编码器的输出可以输入给第四个编码器,以此类推,编码模块中的编码器可以对上一个编码器的输出进行特征提取,并将编码器的输出作为下一个编码器的输入,输入到编码器的特征响应经过编码器处理后,特征响应的通道数可以增加但是分辨率可以降低。
最后一个编码器的输出作为解码模块中第一个解码器的输入,第一个解码器对最后一个编码器输出的特征响应进行特征提取,得到第一个解码器的特征响应,第一个解码器的特征响应相对于最后一个编码器的特征响应来说通道数可以降低但分辨率可以增加;第一个解码器的特征响应可作为第二个解码器的输入,第二个解码器对第一个解码器的特征响应进行特征提取,得到第二个解码器的特征响应,然后输入给第三个解码器,以此类推,解码模块中的解码器可以对上一个解码器的输出进行特征提取,并将解码器的输出作为下一个解码器的输入,输入到解码器的特征响应经过解码器处理后,特征响应的通道数可以降低但是分辨率可以增加。
解码模块中的最后一个解码器输出图像数据,利用最后一个解码器输出的图像数据可以得到图像。这里说明一点:如果最后一个解码器输出的图像数据的通道数大于1,图像去光斑模型可以在最后一个解码器后增加一个卷积层,卷积层的作用是调整图像数据的通道数为1,卷积层可以使用一个1*1的卷积核对图像数据进行处理,得到通道数为1的图像数据,基于通道数为1的图像数据,得到一个单通道图像。每层解码器的输入可以是上一个(也称为上一层)解码器输出的特征响应,或者,每层解码器的输入可以是上一个解码器输出的特征响应和同层编码器输出的特征响应,实现对上一个解码器输出的特征响应和同层编码器输出的特征响应的融合,如图5中的虚线表示特征响应的融合。特征响应的融合可以是特征响应的拼接(也称为堆叠)或逐像素相加。
设置在显示屏下方的前置摄像头拍摄到的图像经过编码模块和解码模块处理后,图像的光斑区域中各像素点的取值被矫正、非光斑区域的特征被保留,从而可以有效去除图像中的光斑和恢复图像中的各特征,提高图像质量。
考虑电子设备的算力级别和光斑区域大小等多因素,编码器可以包括轻量编码器、中型编码器和大型编码器,从算力要求、可去除的光斑区域大小和层级来说,轻量编码器、中型编码器和大型编码器之间的关系可以是:轻量编码器的层级小于中型编码器的层级,中型编码器的层级小于大型编码器的层级;轻量编码器要求的算力小于中型编码器要求的算力,中型编码器要求的算力小于大型编码器要求的算力;轻量编码器可去除的光斑区域小于中型编码器可去除的光斑区域,中型编码器可去除的光斑区域小于大型编码器可去除的光斑区域。
其中,编码模块可以选择轻量编码器、中型编码器和大型编码器中的至少一种类型。例如编码模块由多个轻量编码器组成,又例如编码模块由多个轻量编码器和多个中型编码器组成,本实施例对编码模块的结构不进行限定。
轻量编码器、中型编码器和大型编码器可以包括卷积层、激活层和残差层,但是三种类型编码器的层数可以不同,如卷积层、激活层和残差层中至少一种的层数不同。如图6所示三种类型编码器,三种类型编码器中残差层的层数不同,轻量编码器可以包括一层残差层,中型编码器可以包括两层残差层,大型编码器可以包括三层残差层。在中型编码器和大型编码器中引入多层残差层主要是针对光斑区域较大的情况,通过残差层的引入增加了编码器的深度和拟合能力,提高残差层输出的图像数据的准确度,使得中型编码器和大型编码器具备去除大光斑的能力,大光斑是指光斑区域较大。
在图6中以A表示卷积层和激活层,B表示一个残差层,特征响应经过A处理后通道数增加,经过B处理后通道数维持不变。A中卷积层的步长可以大于1,例如A中卷积层的步长是2。A中卷积层可以包括多个卷积核,卷积核可以是一个3*3的卷积核,也可以是一个5*5的卷积核,可以根据实际需求设置卷积核。残差层可以包括两个卷积层和一个激活层,其结构如图4所示,两个卷积层的步长可以是1,残差层中卷积核的超参数可以与A中卷积核的超参数相同。
考虑电子设备的算力级别和光斑区域大小等多因素,解码器可以包括轻量解码器、中型解码器和大型解码器,从算力要求、可去除的光斑区域大小和层级来说,轻量解码器、中型解码器和大型解码器之间的关系可以是:轻量解码器的层级小于中型解码器的层级,中型解码器的层级小于大型解码器的层级;轻量解码器要求的算力小于中型解码器要求的算力,中型解码器要求的算力小于大型解码器要求的算力;轻量解码器可去除的光斑区域小于中型解码器可去除的光斑区域,中型解码器可去除的光斑区域小于大型解码器可去除的光斑区域。
其中,解码模块可以选择轻量解码器、中型解码器和大型解码器中的至少一种类型。例如解码模块由多个轻量解码器组成,又例如解码模块由多个轻量解码器和多个中型解码器组成,本实施例对解码模块的结构不进行限定。
轻量解码器、中型解码器和大型解码器可以包括残差层、处理层和激活层,处理层可基于卷积层和上采样层实现,或者处理层基于PixelShuffle实现。但是三种类型解码器的层数可以不同,如三种类型解码器的残差层的层数可以不同。如图7所示三种类型解码器,三种类型解码器中残差层的层数不同,轻量解码器可以包括一层残差层,中型解码器可以包括两层残差层,大型解码器可以包括三层残差层。在中型解码器和大型解码器中引入多层残差层主要是针对光斑区域较大的情况,通过残差层的引入增加了解码器的深度和拟合能力,提高残差层输出的图像数据的准确度,使得中型解码器和大型解码器具备去除大光斑的能力,大光斑是指光斑区域较大。
在图7中以B表示一个残差层,残差层可以包括两个卷积层和一个激活层。C表示处理层和激活层,处理层基于卷积层和上采样层实现,上采样层可基于双线性差值或反卷积的处理方式。特征响应经过C处理后通道数降低,经过B处理后通道数维持不变。B和C中卷积层的步长可以是1,卷积层可以包括多个卷积核。如果处理层采用卷积层和上采样层的形式,C中卷积核的个数与B中卷积核的个数相同;如果处理层采用像素重组的形式,C中卷积核的个数是B中卷积核的个数的N倍。
为了满足消除不同大小光斑区域和不同实时性的需求,在设计图像去光斑模型中,可以设计多种编码模块和多种解码模块,多种编码模块和多种解码模块组合得到多个图像去光斑模型,多个图像去光斑模型进行训练和测试。在实际使用时,电子设备可以选择其中一个图像去光斑模型。例如其他电子设备完成对多个图像去光斑模型的训练和测试,其他电子设备将训练好的多个图像去光斑模型的模型文件发送给使用方(如电子设备)。使用方选择一个图像去光斑模型,对选择的图像去光斑模型进行初始化,使得使用方可调用图像去光斑模型对屏下图像进行去光斑处理。其中初始化包括运行时检查、模型加载、模型编译以及内存配置等,本实施例不再详述。
图像去光斑模型除采用图4至图7所示模型结构外,图像去光斑模型还可以采用其他模型结构。一种模型结构是,图像去光斑模型包括编码模块和解码模块,编码模块包括至少两个编码器,解码模块包括至少一个解码器。每个编码器包括多个卷积层和一个激活层,相邻两个编码器之间通过一个池化层连接,通过池化层实现降维(如分辨率的降低)。每个解码器包括多个卷积层和一个激活层,相邻两个解码器之间通过一个上采样层连接,通过上采样层实现升维(如分辨率的提升)。编码器和解码器之间可以进行特征响应的融合。
另一种模型结构是,图像去光斑模型包括编码模块,编码模块包括至少两个编码器,每个编码器包括多个卷积层和一个激活层。此种模型结构中图像去光斑模型省去了解码模块,因为解码模块可以通过升维处理来恢复图像的分辨率,所以在省去解码模块的情况下,编码模块没有进行降维处理,以维持图像的分辨率不变。又因为经过编码器处理后特征响应的通道数增加,在图像的分辨率不变时特征响应的数据量增加,从而增加了编码器处理的数据量,增加了图像去光斑模型的耗时。
请参见图8,其示出了电子设备训练图像去光斑模型的过程,可以包括以下步骤:
S101、电子设备获取训练数据集。
训练数据集可以包括多个训练图像对,一个训练图像对可以包括屏下图像和无屏图像。屏下图像可以是存在显示屏遮挡时,设置在显示屏下方的前置摄像头拍摄到的图像,屏下图像也可以是基于成像模型合成得到。无屏图像可以是没有显示屏遮挡时前置摄像头拍摄到的图像。
为了尽可能覆盖不同的情况,设置在显示屏下方的前置摄像头在拍摄时拍摄距离、拍摄角度和曝光时间等至少一种拍摄参数可以不同,例如设置在显示屏下方的前置摄像头可以分别在距离拍摄物体20厘米(cm)、30cm、40cm和50cm等距离下拍摄。在不同拍摄距离下拍摄时,设置在显示屏下方的前置摄像头的曝光时间可以是500微秒(us)、1000us和2000us等时间中的至少一种,例如设置在显示屏下方的前置摄像头可以在同一个拍摄距离下,在500us、1000us和2000us分别拍摄图像。
S102、电子设备对训练数据集中各训练图像对中的屏下图像和无屏图像进行预处理,得到屏下图像的图像数据和无屏图像的图像数据。
屏下图像的图像数据和无屏图像的图像数据可以记录图像中各像素点的像素值,例如图像数据可以记录各像素点的灰度值。受限于设置在显示屏下方的前置摄像头的传感器的感知范围(位数)影响,对像素点的最大灰度值进行约束,例如传感器的位数为11位时最大灰度值是2047,在对屏下图像和无屏图像进行预处理时,如果图像中像素点的灰度值大于2047,则截取该像素点的灰度值,确定该像素点的灰度值为2047。
S103、电子设备对图像去光斑模型进行参数初始化。参数初始化是为了对图像去光斑模型中的参数进行初始赋值,例如对卷积核进行初始赋值。在本实施例中,电子设备可以使用Kaiming初始化方法对图像去光斑模型中各参数进行初始化。
电子设备完成图像去光斑模型的参数初始化后,可以利用屏下图像的图像数据和无屏图像的图像数据,对图像去光斑模型进行训练。在训练图像去光斑模型过程中,图像去光斑模型中各参数的初始赋值被调整,以更新图像去光斑模型中各参数的取值。
S104、电子设备将屏下图像的图像数据输入到图像去光斑模型中,调用图像去光斑模型中的编码模块和解码模块进行处理,得到图像去光斑模型输出的图像数据。
S105、电子设备基于损失函数,计算图像去光斑模型输出的图像数据和无屏图像的图像数据之间的损失值。
图像去光斑模型输出的图像数据可以恢复出一幅图像,两个图像数据之间的损失值可以表示图像去光斑模型输出的图像数据和无屏图像的图像数据之间的差异,以通过差异可以确定图像去光斑模型输出的图像数据恢复出的图像与无屏图像是否相似,从而确定图像去光斑模型是否有效去除屏下图像中的光斑。电子设备可以基于至少一种损失函数,计算图像去光斑模型输出的图像数据和无屏图像的图像数据之间的损失值。
例如损失函数包括:绝对值损失函数(简称为L1损失函数)、平方损失函数(简称为L2损失函数)、平滑一范数损失函数(简称为smoothL1损失函数)、感知损失函数和交叉熵损失函数等损失函数。电子设备可以从上述损失函数中选择一个损失函数,利用选择的损失函数,计算图像去光斑模型输出的图像数据和无屏图像的图像数据之间的损失值。例如电子设备选择smoothL1损失函数,smoothL1损失函数的计算公式是:
y′是图像去光斑模型输出的图像数据中一个元素的取值,y是无屏图像的图像数据中一个元素的取值,这两个元素是两个图像数据中相同位置的元素。电子设备可以调用smoothL1损失函数分别计算两个元素之间的损失值,然后将所有元素之间的损失值求和,得到两个图像数据之间的损失值。
电子设备可以基于多个损失函数,计算图像去光斑模型输出的图像数据和无屏图像的图像数据之间的损失值。一种方式是,Lt是两个图像数据之间的损失值,Li是第i个损失函数计算出的两个图像数据之间的损失值,γi是第i个损失函数的权重,m是损失函数的总数。第一个损失函数可以从L1损失函数、L2损失函数和smoothL1损失函数中选择一个损失函数,第二个损失函数至第m个损失函数可以分别是感知损失函数和交叉熵损失函数等损失函数。电子设备可以基于公式/>计算图像去光斑模型输出的图像数据和无屏图像的图像数据之间的损失值。
S106、电子设备基于损失值,调整图像去光斑模型中参数的取值。电子设备基于损失值,计算图像去光斑模型中每个参数的梯度;基于图像去光斑模型中每个参数的梯度和参数当前的取值,调整参数的取值。电子设备在调整参数的取值过程中,电子设备可以使用优化器调整参数的取值,例如电子设备可以选择自适应矩估计(Adaptive MomentEstimation,Adam)优化器、随机梯度下降(Stochastic Gradient Descent,SGD)优化器等中的一种调整参数的取值。
例如,电子设备使用SGD优化器来调整参数的过程是:以θ表示图像去光斑模型中的任一参数,电子设备可以基于公式计算参数θ的梯度/>然后基于公式计算参数θ在第x+1次迭代时的取值θx+1,θx是参数θ在第x次迭代时的取值(也称为参数θ当前的取值),η为预设的学习率。
S107、电子设备重复上述步骤S104至步骤S106,直至迭代次数达到预定的最大迭代次数,模型训练结束。
在模型训练结束后,电子设备可以保存最后一次训练得到的图像去光斑模型。此外电子设备在训练图像去光斑模型过程中,可以保存多个图像去光斑模型。一种示例中,电子设备可以每迭代多次,保存一个图像去光斑模型,多次可以是大于等于两次。电子设备从多次迭代中保存图像去光斑模型的方式包括:一种方式是,电子设备保存多次迭代中最后一次迭代得到的图像去光斑模型;另一种方式是,电子设备基于每次迭代过程中得到的损失值,保存图像去光斑模型,例如电子设备保存多次迭代中损失值最小的图像去光斑模型。
在完成图像去光斑模型训练后,电子设备可以利用测试数据集,从保存的多个图像去光斑模型中选择一个图像去光斑模型。电子设备中设置在显示屏下方的前置摄像头拍摄到屏下图像后,电子设备可以利用所选择的图像去光斑模型对该屏下图像进行去光斑处理。其中,测试数据集可以包括多个测试图像对,一个测试图像对可以包括屏下图像和无屏图像。电子设备利用测试数据集,从保存的多个图像去光斑模型中选择一个图像去光斑模型的过程如下:
1)电子设备可以对测试数据集中各测试图像对中的屏下图像和无屏图像进行预处理,得到屏下图像的图像数据和无屏图像的图像数据;训练图像对和测试图像对中的屏下图像和无屏图像是历史时间内获取到的图像,可以称为历史屏下图像和历史无屏图像。
2)针对保存的每个图像去光斑模型和每个测试图像对,电子设备可以调用图像去光斑模型,对测试图像对中屏下图像的图像数据进行去光斑处理,得到图像去光斑模型输出的图像数据;
3)电子设备基于图像去光斑模型输出的图像数据和无屏图像的图像数据,计算峰值信噪比(Peak Signal-to-Noise Ratio,PSNR)和结构相似度指数(StructuralSimilarity Index,SSIM)。电子设备计算PSNR和SSIM时,基于的是同一个测试图像对中无屏图像的图像数据和屏下图像经过图像去光斑模型处理后得到的图像数据。
4)电子设备基于PSNR和SSIM,从保存的多个图像去光斑模型中选择一个图像去光斑模型。例如电子设备可以选择PSNR或SSIM最优的图像去光斑模型;又例如,电子设备可以综合考虑PSNR和SSIM,选择图像去光斑模型。
基于选择的图像去光斑模型,本申请提供的图像处理方法的流程如图9所示,可以包括以下步骤:
S201、电子设备通过设置在显示屏下方的前置摄像头获取屏下图像。
可以理解的是,S201可以由用户的操作等方式触发执行,例如,用户点击电子设备中的拍摄按键,拍摄按键触发前置摄像头拍摄屏下图像。S201也可以是接收到电子设备中应用程序的指令后执行,例如电子设备的解锁应用触发人脸解锁,此时解锁应用可以向前置摄像头发送拍照指令,触发前置摄像头拍摄人脸的屏下图像;又例如电子设备的支付应用支付时也可以向前置摄像头发送拍照指令。
S202、电子设备对屏下图像进行预处理,得到屏下图像的图像数据。
屏下图像的图像数据可以记录屏下图像中各像素点的像素值,例如图像数据可以记录各像素点的灰度值。受限于设置在显示屏下方的前置摄像头的传感器的感知范围(位数)影响,对像素点的最大灰度值进行约束,例如传感器的位数为11位时最大灰度值是2047,在对屏下图像进行预处理时,如果屏下图像中像素点的灰度值大于2047,则截取该像素点的灰度值,确定该像素点当前的灰度值为2047。
S203、电子设备将屏下图像的图像数据输入到图像去光斑模型中,得到图像去光斑模型输出的图像数据。其中,图像去光斑模型可以是电子设备基于PSNR或SSIM选择的图像去光斑模型。
图像去光斑模型中的第一个编码器接收屏下图像的图像数据,对图像数据进行特征提取,得到第一特征响应;第一特征响应作为第二个编码器的输入,第二个编码器对第一特征响应进行特征提取,得到第二特征响应,然后输入给第三个编码器;以此类推,每个编码器可以对上一个编码器的输出进行特征提取,并将编码器的输出作为下一个编码器的输入,由下一个编码器继续进行特征提取。
最后一个编码器的输出作为第一个解码器的输入,第一个解码器对最后一个编码器输出的特征响应进行特征提取,得到第一个解码器的特征响应;第一个解码器的特征响应可作为第二个解码器的输入,第二个解码器对第一个解码器的特征响应进行特征提取,得到第二个解码器的特征响应,然后输入给第三个解码器,以此类推,解码器可以对上一个解码器的输出进行特征提取,并将解码器的输出作为下一个解码器的输入,由下一个解码器继续进行特征提取。最后一个解码器输出图像数据,利用最后一个解码器输出的图像数据可以恢复出一幅图像。
编码器输出的特征响应的通道数可以增加但是分辨率可以降低;解码器输出的特征响应的通道数可以降低但是分辨率可以增加,由此通过图像去光斑模型中的编码器和解码器的处理实现对屏下图像的图像数据的提取和恢复,在这一过程中,屏下图像的光斑区域中各像素点的取值被矫正、非光斑区域的特征被保留,从而可以有效去除图像中的光斑和恢复图像中的各特征,提高图像质量。
在本实施例中,图像去光斑模型具备识别屏下图像的光斑区域、利用非光斑区域中各像素点的取值对光斑区域中各像素点的取值进行矫正的能力,且在对光斑区域进行去光斑处理过程中,图像去光斑模型可以保留非光斑区域的特征。由此在将屏下图像的图像数据输入到图像去光斑模型中,图像去光斑模型可以矫正光斑区域中各像素点的取值以及保留非光斑区域的特征(如保留非光斑区域中各像素点的取值)。
在矫正光斑区域中各像素点的取值时,图像去光斑模型可以利用与光斑区域相邻的非光斑区域中像素点的取值进行矫正。若光斑区域较大,图像去光斑模型可以先矫正光斑区域中与非光斑区域相邻的各像素点的取值,再对光斑区域中其他像素点的取值进行矫正,对光斑区域中其他像素点进行矫正过程中可能使用光斑区域中像素点的取值,注意使用的是像素点矫正后的取值。
S204、电子设备基于图像去光斑模型输出的图像数据,得到修正图像,修正图像相对于屏下图像,去除了至少部分光斑区域。如果图像去光斑模型的去光斑效果明显,电子设备可以得到与无屏图像相似的图像,甚至可以得到无屏图像。
图9所示图像处理方法得到的处理后的图像示例如图10所示,图10是在基于PSF去光斑的效果示意图上,增加了基于图像去光斑模型去光斑的效果示意图。如图10(a)是设置在显示屏下方的前置摄像头拍摄到的人脸的屏下图像(简称人脸图像),人脸图像基于PSF处理后其效果如图10(b)和图10(c)所示,图10(b)所示人脸图像中光斑覆盖区域变大,因光斑覆盖眼睛,眼睛位置处各像素点的灰度值为255(可视化为8bit图),基于眼睛位置处各像素点的灰度值难以恢复出眼睛,人脸图像的图像质量降低。图10(c)虽然相对于图10(b)所示效果图来说,光斑覆盖区域变小,但是与图10(a)所示人脸图像中光斑覆盖区域相接近,说明图10(c)没有去除人脸图像中的光斑,且相对于图10(a)来说图像模糊,甚至可能存在人脸图像中一些区域的特征丢失的情况,图像质量比图10(b)的图像质量差。
图10(d)示出了基于图像去光斑模型输出的图像数据恢复出的图像,恢复出的图像中的光斑被去除、且图像清晰度提高,使得图10(d)所示图像与图10(e)所示的人脸的无屏图像相同,提高了去光斑效果且提高图像质量。并且设置在显示屏下方的前置摄像头对应位置不用留孔,提升电子设备的视觉美感。
注意一点的是:图像去光斑模型输出的图像数据中像素点的灰度值可能大于255,电子设备在得到图像去光斑模型输出的图像数据后,可以对图像数据进行灰度映射,这样在电子设备得到去除至少部分光斑区域的图像后,可得到一个8bit的图像,使调用方可以使用常见的8bit图,例如使人脸识别模型可以使用常见的8bit图。灰度映射可以采用如下两种方法:
一种方法是伽马(Gamma)变换,Gamma变换是基于预先设定的Gamma变换表实现灰度映射,Gamma变换表的索引和灰度值构成映射,电子设备可以将图像数据中像素点的灰度值作为索引代入Gamma变换表,将Gamma变换表中该索引映射的灰度值作为该像素点的灰度值。
另一种方式是线性拉伸,电子设备从图像数据中得到最大灰度值和最小灰度值,基于最大灰度值和最小灰度值,得到拉伸系数;电子设备基于拉伸系数对像素点的灰度值进行修正。例如电子设备基于公式imgmin=min(img)和imgmax=max(img)得到最小灰度值imgmin和最大灰度值imgmax,img是图像数据。
电子设备基于公式scale=256/(imgmax-imgmin+1),得到拉伸系数scale,再基于公式imgi=round(imgi*scale+0.5)对图像数据中第i个像素点的灰度值imgi进行修正,round()表示四舍五入。
电子设备利用灰度映射后的图像数据,可恢复出一幅灰度值范围在[0,255]之间的图像。电子设备恢复出的图像可以被应用程序等调用。例如对于设置在显示屏下方的前置摄像头拍摄到的人脸图像,电子设备在恢复出人脸图像后,解锁应用调用的人脸识别模块可以调用恢复出的人脸图像,人脸识别模块将恢复出的人脸图像与图像库中的人脸图像进行比对,得到恢复出的人脸图像的图像ID,通过图像ID指示恢复出的人脸图像与图像库中的人脸图像匹配。应用程序层中的解锁应用(系统级应用)可以调用人脸识别模块输出的图像ID,基于图像ID确定用户是否具有解锁权限,如果具有解锁权限,对电子设备进行解锁。具有支付功能的第三方应用也可以调用恢复出的人脸图像,在第三方应用发起支付请求时,由第三方应用中的人脸识别功能,对恢复出的人脸图像进行识别处理。
因为电子设备恢复的人脸图像的图像质量提高,提高人脸识别模块和第三方应用调用的人脸图像的准确度,使得人脸识别模块和第三方应用的识别准确度得到提升。
可以理解的是,除了上述实施例所述的电子设备的结构之外,本申请的实施例还提供了一种电子设备,一种电子设备,包括:存储器以及一个或多个处理器。存储器,用于存储应用程序;一个或多个处理器,用于运行应用程序,以实现上述图像处理方法。
本实施例还提供一种计算机可读存储介质,计算机可读存储介质上存储有程序,在电子设备运行应用程序时,实现上述图像处理方法。
本实施例还提供一种计算机程序产品,当计算机程序产品在电子设备上运行时,使得电子设备执行上述图像处理方法。
以上所述,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何在本申请揭露的技术范围内的变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以所述权利要求的保护范围为准。
Claims (15)
1.一种图像处理方法,其特征在于,所述方法应用于电子设备中,所述电子设备包括前置摄像头和显示屏,所述前置摄像头设置在所述显示屏下方,所述方法包括:
通过所述前置摄像头得到被拍摄对象的屏下图像,所述屏下图像是所述显示屏遮挡所述前置摄像头时所述前置摄像头拍摄到的图像;
获得所述被拍摄对象的屏下图像的图像数据;
调用图像去光斑模型对所述屏下图像的图像数据进行去光斑处理,得到所述图像去光斑模型输出的图像数据,所述图像去光斑模型是基于历史屏下图像的图像数据和历史无屏图像的图像数据进行训练得到,所述历史无屏图像是没有所述显示屏遮挡时所述前置摄像头拍摄到的图像,所述历史屏下图像中具有衍射光斑,所述历史无屏图像中没有衍射光斑;
基于所述图像去光斑模型输出的图像数据,得到所述被拍摄对象的修正图像,所述修正图像中没有衍射光斑,或,所述修正图像中衍射光斑的数量小于所述屏下图像中衍射光斑的数量;
所述图像去光斑模型包括至少两个编码器,每个编码器包括至少一个卷积层和至少一个激活层,相邻两个编码器中卷积层的超参数之间的关系是,相邻两个编码器中卷积层的步长为1、相邻两个编码器中下一个编码器中卷积层中卷积核的个数大于上一个编码器中卷积层中卷积核的个数,以使相邻两个编码器输出的特征响应之间满足关系,相邻两个编码器输出的特征响应对应的分辨率不变、下一个编码器输出的特征响应对应的通道数大于上一个编码器输出的特征响应对应的通道数;
在所述至少两个编码器的卷积层和激活层的相互作用下,所述图像去光斑模型具有确定出图像中的光斑区域和非光斑区域的能力,以及具有基于所述非光斑区域中像素点的像素值对光斑区域中像素点的像素值进行调整的能力。
2.根据权利要求1所述的方法,其特征在于,所述调用图像去光斑模型对所述屏下图像的图像数据进行去光斑处理,得到所述图像去光斑模型输出的图像数据包括:调用所述图像去光斑模型,基于所述屏下图像的图像数据确定出所述屏下图像中的光斑区域和非光斑区域,所述光斑区域中具有衍射光斑,所述非光斑区域中没有衍射光斑;调用所述图像去光斑模型基于所述非光斑区域中像素点的像素值,对所述光斑区域中像素点的像素值进行调整,以得到所述图像去光斑模型输出的图像数据。
3.根据权利要求1所述的方法,其特征在于,在所述调用图像去光斑模型对所述屏下图像的图像数据进行处理,得到所述图像去光斑模型输出的图像数据之后,所述方法还包括:对所述图像去光斑模型输出的图像数据进行灰度映射,得到灰度映射后的图像数据;
所述基于所述图像去光斑模型输出的图像数据,得到所述被拍摄对象的修正图像包括:基于灰度映射后的图像数据,得到所述被拍摄对象的修正图像,所述被拍摄对象的修正图像的位数小于或等于所述被拍摄对象的屏下图像的位数。
4.根据权利要求3所述的方法,其特征在于,所述被拍摄对象的修正图像的位数为八位。
5.根据权利要求3所述的方法,其特征在于,所述对所述图像去光斑模型输出的图像数据进行灰度映射,得到灰度映射后的图像数据包括:从所述图像去光斑模型输出的图像数据中得到最大灰度值和最小灰度值,基于所述最大灰度值和所述最小灰度值,得到拉伸系数;基于所述拉伸系数,对所述图像去光斑模型输出的图像数据中像素点的灰度值进行修正,得到修正后的灰度值,各像素点修正后的灰度值组成所述灰度映射后的图像数据;或者
所述对图像去光斑模型输出的图像数据进行灰度映射,得到灰度映射后的图像数据包括:将所述图像去光斑模型输出的图像数据中像素点的灰度值作为索引代入预设变换表,将所述预设变换表中所述索引映射的灰度值作为所述像素点的灰度值。
6.根据权利要求1至5中任一项所述的方法,其特征在于,所述图像去光斑模型是基于历史屏下图像的图像数据和历史无屏图像的图像数据进行训练得到包括:
获得多个训练样本图像对和多个测试样本图像对,每个所述训练样本图像对和每个所述测试样本图像对包括所述历史屏下图像的图像数据和所述历史无屏图像的图像数据,所述训练样本图像对和所述测试样本图像对中的所述历史屏下图像和所述历史无屏图像对应同一个对象,所述历史屏下图像是所述显示屏遮挡所述前置摄像头时所述前置摄像头拍摄到的图像,或者,所述历史屏下图像是基于所述历史无屏图像和成像模型合成得到,所述前置摄像头在拍摄次数采用的拍摄距离、拍摄角度和曝光时间中的至少一种拍摄参数相同或不同;
将所述训练样本图像对中的历史屏下图像的图像数据输入到图像去光斑模型中,得到图像去光斑模型输出的修正图像数据;
基于所述修正图像数据、所述历史无屏图像的图像数据和至少一个损失函数,得到图像去光斑模型的损失值;
基于图像去光斑模型的损失值,调整图像去光斑模型的模型参数,在完成对图像去光斑模型的训练后,保存多个图像去光斑模型,所述多个图像去光斑模型具有确定出图像中的光斑区域和非光斑区域的能力,以及具有基于所述非光斑区域中像素点的像素值对光斑区域中像素点的像素值进行调整的能力;
调用保存的每个图像去光斑模型对所述测试样本图像对中的历史屏下图像的图像数据进行去光斑处理,得到保存的每个图像去光斑模型输出的图像数据;
基于保存的每个图像去光斑模型输出的图像数据和所述测试样本图像对中的历史无屏图像的图像数据,获得保存的每个图像去光斑模型的指标值;
基于保存的每个图像去光斑模型的指标值,从所述多个图像去光斑模型中选择一个图像去光斑模型,选择的图像去光斑模型用于对所述屏下图像的图像数据进行去光斑处理。
7.根据权利要求6所述的方法,其特征在于,所述基于所述修正图像数据、所述历史无屏图像的图像数据和至少一个损失函数,得到图像去光斑模型的损失值包括:
从绝对值损失函数、平方损失函数和平滑一范数损失函数中选择一个损失函数,从感知损失函数、交叉熵损失函数、结构相似性指数损失函数和边缘损失函数中选择至少两个损失函数;
基于选择的每个损失函数、获得所述修正图像数据和历史无屏图像的图像数据之间的损失值,基于每个损失函数得到的损失值和每个损失函数的权重,得到所述图像去光斑模型的损失值。
8.根据权利要求1所述的方法,其特征在于,所述方法还包括:
从预先构建的第一类型编码器、第二类型编码器和第三类型编码器中选择至少一种类型编码器,所述第一类型编码器、所述第二类型编码器和所述第三类型编码器之间的关系是,第一类型编码器的层级小于第二类型编码器的层级,第二类型编码器的层级小于第三类型编码器的层级;第一类型编码器要求的算力小于第二类型编码器要求的算力,第二类型编码器要求的算力小于第三类型编码器要求的算力;第一类型编码器可去除的光斑区域小于第二类型编码器可去除的光斑区域,第二类型编码器可去除的光斑区域小于第三类型编码器可去除的光斑区域;
从预先构建的第一类型解码器、第二类型解码器和第三类型解码器中选择至少一种类型解码器,所述第一类型解码器、所述第二类型解码器和所述第三类型解码器之间的关系是,第一类型解码器的层级小于第二类型解码器的层级,第二类型解码器的层级小于第三类型解码器的层级;第一类型解码器要求的算力小于第二类型解码器要求的算力,第二类型解码器要求的算力小于第三类型解码器要求的算力;第一类型解码器可去除的光斑区域小于第二类型解码器可去除的光斑区域,第二类型解码器可去除的光斑区域小于第三类型解码器可去除的光斑区域;
基于选择的编码器和选择的解码器,构建图像去光斑模型,所述图像去光斑模型包括至少两个编码器和至少一个解码器,其中解码器数量比编码器数量少一个,在所述至少两个编码器和所述至少一个解码器的作用下,所述图像去光斑模型具有确定出图像中的光斑区域和非光斑区域的能力,以及具有基于非光斑区域中像素点的像素值对光斑区域中像素点的像素值进行调整的能力。
9.根据权利要求8所述的方法,其特征在于,所述第一类型编码器、所述第二类型编码器和所述第三类型编码器包括至少一个卷积层、至少一个激活层和至少一个残差层;所述第一类型编码器、所述第二类型编码器和所述第三类型编码器中卷积层的数量相同、激活层的数量相同,所述第二类型编码器中残差层的数量大于所述第一类型编码器中残差层的数量,所述第三类型编码器中残差层的数量大于所述第二类型编码器中残差层的数量卷积层的数量;
所述第一类型解码器、所述第二类型解码器和所述第三类型解码器包括至少一个残差层、至少一个处理层和至少一个激活层;所述第一类型解码器、所述第二类型解码器和所述第三类型解码器中处理层的数量相同、激活层的数量相同,所述第二类型解码器中残差层的数量大于所述第一类型解码器中残差层的数量,所述第三类型解码器中残差层的数量大于所述第二类型解码器中残差层的数量卷积层的数量。
10.根据权利要求8所述的方法,其特征在于,所述图像去光斑模型中相邻两个编码器的卷积核个数关系是,下一个编码器的卷积核个数是上一个编码器的卷积核个数的N倍,从而使相邻两个编码器的输出满足第一预设关系,第一预设关系是下一个编码器输出的特征响应的通道数是上一个编码器输出的特征响应的通道数的N倍、下一个编码器输出的特征响应的分辨率是上一个编码器输出的特征响应的分辨率的(1/N)*(1/N)倍,N是大于等于2的幂次方。
11.根据权利要求9所述的方法,其特征在于,如果所述解码器的处理层采用的是卷积层和上采样层的形式,相邻两个解码器的卷积核个数关系是,下一个解码器的卷积核个数是上一个解码器的卷积核个数的1/N倍,使相邻两个解码器的输出满足第二预设关系,所述第二预设关系是下一个解码器输出的特征响应的通道数是上一个解码器输出的特征响应的通道数的1/N倍,下一个解码器输出的特征响应的分辨率是上一个解码器输出的特征响应的分辨率的N*N倍,N是大于等于2的幂次方;
如果所述解码器的处理层采用的像素重组的形式,下一个解码器先将上一个解码器输出的特征响应的通道数提升N倍,然后经过上采样将下一个解码器输出的特征响应变成上一个解码器输出的特征响应的1/N倍,使相邻两个解码器的输出满足所述第二预设关系。
12.根据权利要求8所述的方法,其特征在于,所述图像去光斑模型中第一个编码器的卷积核个数的取值范围是[4,32];
所述图像去光斑模型中最后一个解码器的卷积核个数的取值范围是[1,32]。
13.根据权利要求8所述的方法,其特征在于,所述图像去光斑模型的编码器和解码器中没有归一化层。
14.一种电子设备,其特征在于,包括:
存储器,用于存储应用程序;
一个或多个处理器,用于运行所述应用程序,以实现权利要求1至13中任一项所述的图像处理方法。
15.一种计算机可读存储介质,所述计算机可读存储介质上存储有程序,其特征在于,在电子设备运行所述程序时,实现权利要求1至13中任一项所述的图像处理方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210107385.6A CN115565213B (zh) | 2022-01-28 | 2022-01-28 | 图像处理方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210107385.6A CN115565213B (zh) | 2022-01-28 | 2022-01-28 | 图像处理方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN115565213A CN115565213A (zh) | 2023-01-03 |
CN115565213B true CN115565213B (zh) | 2023-10-27 |
Family
ID=84737828
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210107385.6A Active CN115565213B (zh) | 2022-01-28 | 2022-01-28 | 图像处理方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115565213B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116188612A (zh) * | 2023-02-20 | 2023-05-30 | 信扬科技(佛山)有限公司 | 图像重建方法、电子设备及存储介质 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109214229A (zh) * | 2017-06-30 | 2019-01-15 | 杭州海康威视数字技术股份有限公司 | 一种条码扫描方法、装置及电子设备 |
CN110163815A (zh) * | 2019-04-22 | 2019-08-23 | 桂林电子科技大学 | 基于多阶段变分自编码器的低照度还原方法 |
CN112001838A (zh) * | 2020-07-23 | 2020-11-27 | 浙江大学 | 基于自交叉编码器的跨域图像转换方法、装置、计算机设备和存储介质 |
CN112651890A (zh) * | 2020-12-18 | 2021-04-13 | 深圳先进技术研究院 | 基于双编码融合网络模型的pet-mri图像去噪方法、装置 |
CN112887598A (zh) * | 2021-01-25 | 2021-06-01 | 维沃移动通信有限公司 | 图像处理方法、装置、拍摄支架、电子设备及可读存储介质 |
CN113139911A (zh) * | 2020-01-20 | 2021-07-20 | 北京迈格威科技有限公司 | 图像处理方法及装置、图像处理模型的训练方法及装置 |
WO2021258300A1 (zh) * | 2020-06-23 | 2021-12-30 | Oppo广东移动通信有限公司 | 一种屏下拍摄控制方法、终端设备及存储介质 |
-
2022
- 2022-01-28 CN CN202210107385.6A patent/CN115565213B/zh active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109214229A (zh) * | 2017-06-30 | 2019-01-15 | 杭州海康威视数字技术股份有限公司 | 一种条码扫描方法、装置及电子设备 |
CN110163815A (zh) * | 2019-04-22 | 2019-08-23 | 桂林电子科技大学 | 基于多阶段变分自编码器的低照度还原方法 |
CN113139911A (zh) * | 2020-01-20 | 2021-07-20 | 北京迈格威科技有限公司 | 图像处理方法及装置、图像处理模型的训练方法及装置 |
WO2021258300A1 (zh) * | 2020-06-23 | 2021-12-30 | Oppo广东移动通信有限公司 | 一种屏下拍摄控制方法、终端设备及存储介质 |
CN112001838A (zh) * | 2020-07-23 | 2020-11-27 | 浙江大学 | 基于自交叉编码器的跨域图像转换方法、装置、计算机设备和存储介质 |
CN112651890A (zh) * | 2020-12-18 | 2021-04-13 | 深圳先进技术研究院 | 基于双编码融合网络模型的pet-mri图像去噪方法、装置 |
CN112887598A (zh) * | 2021-01-25 | 2021-06-01 | 维沃移动通信有限公司 | 图像处理方法、装置、拍摄支架、电子设备及可读存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN115565213A (zh) | 2023-01-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6929047B2 (ja) | 画像処理装置、情報処理方法及びプログラム | |
KR102574141B1 (ko) | 이미지 디스플레이 방법 및 디바이스 | |
US11037278B2 (en) | Systems and methods for transforming raw sensor data captured in low-light conditions to well-exposed images using neural network architectures | |
US10410327B2 (en) | Shallow depth of field rendering | |
US9344638B2 (en) | Constant bracket high dynamic range (cHDR) operations | |
US10708525B2 (en) | Systems and methods for processing low light images | |
EP4013033A1 (en) | Method and apparatus for focusing on subject, and electronic device, and storage medium | |
US10810462B2 (en) | Object detection with adaptive channel features | |
CN112419167A (zh) | 图像增强方法、装置及存储介质 | |
WO2023151511A1 (zh) | 模型训练方法、图像去摩尔纹方法、装置及电子设备 | |
CN115565213B (zh) | 图像处理方法及装置 | |
US11393078B2 (en) | Electronic device and method for correcting image on basis of image transmission state | |
CN115835034A (zh) | 白平衡处理方法与电子设备 | |
CN116823674B (zh) | 一种跨模态融合的水下图像增强方法 | |
CN116055895B (zh) | 图像处理方法及其装置、芯片系统和存储介质 | |
US20230222639A1 (en) | Data processing method, system, and apparatus | |
CN114331927A (zh) | 一种图像处理方法、存储介质及终端设备 | |
CN114663570A (zh) | 贴图生成方法、装置、电子装置及可读存储介质 | |
RU2661537C2 (ru) | Способ и система сверхразрешения с помощью комбинированной разреженной аппроксимации | |
CN115358937A (zh) | 图像去反光方法、介质及电子设备 | |
WO2022115996A1 (zh) | 图像处理方法及设备 | |
CN111915529B (zh) | 一种视频的暗光增强方法、装置、移动终端和存储介质 | |
CN116258633A (zh) | 图像去反光的方法、图像去反光模型的训练方法与装置 | |
CN113344832A (zh) | 图像处理方法及装置、电子设备和存储介质 | |
US20160292825A1 (en) | System and method to refine image data |
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 |