CN117422646B - 去反光模型的训练方法、去反光模型和去反光方法 - Google Patents
去反光模型的训练方法、去反光模型和去反光方法 Download PDFInfo
- Publication number
- CN117422646B CN117422646B CN202311752567.XA CN202311752567A CN117422646B CN 117422646 B CN117422646 B CN 117422646B CN 202311752567 A CN202311752567 A CN 202311752567A CN 117422646 B CN117422646 B CN 117422646B
- Authority
- CN
- China
- Prior art keywords
- image
- model
- sample image
- reflection
- sample
- 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
- 238000000034 method Methods 0.000 title claims abstract description 102
- 238000012549 training Methods 0.000 title claims abstract description 95
- 238000001028 reflection method Methods 0.000 title description 7
- 238000005286 illumination Methods 0.000 claims abstract description 238
- 238000012545 processing Methods 0.000 claims abstract description 16
- 239000011521 glass Substances 0.000 claims description 131
- 230000005540 biological transmission Effects 0.000 claims description 107
- 230000006870 function Effects 0.000 claims description 42
- 238000003062 neural network model Methods 0.000 claims description 41
- 230000008569 process Effects 0.000 claims description 39
- 238000002310 reflectometry Methods 0.000 claims description 29
- 230000015654 memory Effects 0.000 claims description 21
- 238000004422 calculation algorithm Methods 0.000 claims description 14
- 229920003023 plastic Polymers 0.000 claims description 9
- 238000013507 mapping Methods 0.000 claims description 7
- 230000001976 improved effect Effects 0.000 abstract description 13
- 230000000875 corresponding effect Effects 0.000 description 23
- 238000010586 diagram Methods 0.000 description 18
- 230000003595 spectral effect Effects 0.000 description 16
- 238000004891 communication Methods 0.000 description 14
- 238000007726 management method Methods 0.000 description 13
- 230000000694 effects Effects 0.000 description 12
- 238000011176 pooling Methods 0.000 description 12
- 239000000463 material Substances 0.000 description 11
- 210000004027 cell Anatomy 0.000 description 10
- 238000001228 spectrum Methods 0.000 description 10
- 238000010295 mobile communication Methods 0.000 description 9
- 241000287531 Psittacidae Species 0.000 description 5
- 210000000988 bone and bone Anatomy 0.000 description 5
- 239000000919 ceramic Substances 0.000 description 5
- 238000003384 imaging method Methods 0.000 description 5
- 230000001678 irradiating effect Effects 0.000 description 5
- 230000003287 optical effect Effects 0.000 description 5
- 238000013528 artificial neural network Methods 0.000 description 4
- 239000003086 colorant Substances 0.000 description 4
- 238000005516 engineering process Methods 0.000 description 4
- 239000010985 leather Substances 0.000 description 4
- 230000002194 synthesizing effect Effects 0.000 description 4
- 229920001621 AMOLED Polymers 0.000 description 3
- 230000001133 acceleration Effects 0.000 description 3
- 230000007246 mechanism Effects 0.000 description 3
- 230000008093 supporting effect Effects 0.000 description 3
- 230000003416 augmentation Effects 0.000 description 2
- 230000003190 augmentative effect Effects 0.000 description 2
- 230000008859 change Effects 0.000 description 2
- 230000000295 complement effect Effects 0.000 description 2
- 238000000605 extraction Methods 0.000 description 2
- 238000003709 image segmentation Methods 0.000 description 2
- 239000004973 liquid crystal related substance Substances 0.000 description 2
- 230000007774 longterm Effects 0.000 description 2
- 229910044991 metal oxide Inorganic materials 0.000 description 2
- 150000004706 metal oxides Chemical class 0.000 description 2
- 238000002156 mixing Methods 0.000 description 2
- 210000002569 neuron Anatomy 0.000 description 2
- 238000005070 sampling Methods 0.000 description 2
- 239000004065 semiconductor Substances 0.000 description 2
- 229920000742 Cotton Polymers 0.000 description 1
- 241001464837 Viridiplantae Species 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 230000036772 blood pressure Effects 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 239000002131 composite material Substances 0.000 description 1
- 238000004590 computer program Methods 0.000 description 1
- 230000002596 correlated effect Effects 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000018109 developmental process Effects 0.000 description 1
- 238000001914 filtration Methods 0.000 description 1
- 230000004907 flux Effects 0.000 description 1
- 230000005484 gravity Effects 0.000 description 1
- 230000001939 inductive effect Effects 0.000 description 1
- 238000002360 preparation method Methods 0.000 description 1
- 230000000644 propagated effect Effects 0.000 description 1
- 230000010349 pulsation Effects 0.000 description 1
- 239000002096 quantum dot Substances 0.000 description 1
- 230000005855 radiation Effects 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 238000009877 rendering Methods 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 238000000926 separation method Methods 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 238000001356 surgical procedure Methods 0.000 description 1
- 230000001755 vocal effect Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T5/00—Image enhancement or restoration
- G06T5/50—Image enhancement or restoration using two or more images, e.g. averaging or subtraction
-
- 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/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
- G06N3/0455—Auto-encoder networks; Encoder-decoder networks
-
- 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/04—Architecture, e.g. interconnection topology
- G06N3/0464—Convolutional networks [CNN, ConvNet]
-
- 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/10—Image acquisition modality
- G06T2207/10024—Color image
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/20—Special algorithmic details
- G06T2207/20081—Training; Learning
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/20—Special algorithmic details
- G06T2207/20084—Artificial neural networks [ANN]
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Biophysics (AREA)
- Evolutionary Computation (AREA)
- Artificial Intelligence (AREA)
- Biomedical Technology (AREA)
- Health & Medical Sciences (AREA)
- Computational Linguistics (AREA)
- Data Mining & Analysis (AREA)
- Life Sciences & Earth Sciences (AREA)
- General Health & Medical Sciences (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Image Processing (AREA)
Abstract
本发明涉及图像处理技术领域,公开了一种去反光模型的训练方法、去反光模型和去反光方法。此训练方法可以基于第一训练数据和第一目标数据训练第一子模型,基于第二训练数据和第二目标数据训练第二子模型。第一训练数据包括第一样本图像,第一目标数据包括第一样本图像的光照图。第二训练数据包括第二样本图像和第一目标数据,第二目标数据包括第二样本图像的反射图像和第二样本图像的透射图像。其中第二样本图像的拍摄内容与第一样本图像的拍摄内容相同,第一波长范围内的第二样本图像的光强与第一样本图像的光强相同。此方法将第一样本图像的光照图作为第二样本图像的光照图并作为先验信息输入模型,可以提高去反光模型的精确度。
Description
技术领域
本发明涉及图像处理技术领域,尤其涉及一种去反光模型的训练方法、去反光模型和去反光方法。
背景技术
用户在使用手机等终端设备,透过具有镜面反射效应的透光材料(如透明玻璃)等,拍摄透明玻璃后侧物体时,由于透明玻璃常常会发生镜面反射,反射光和透射光混叠在一起,可能会导致拍摄的图像中存在反光区域。该反光区域中,可能会出现透明玻璃前侧物体的反射图像,使得拍摄的图像的清晰度较差。其中,上述透明玻璃后侧物体,可以是与前述手机处于透明玻璃不同侧的物体。上述反光区域中出现的透明玻璃前侧物体,可以是与前述手机位于透明玻璃同一侧的物体。
目前,手机等终端设备,可以采用深度神经网络模型,进行去反光操作,来去除拍摄的图像中,透明玻璃前侧物体的反射图像,从而获得清晰度较高的去反光后的图像。
然而,采用深度神经网络模型进行去反光操作的处理方案,可能会由于深度神经网络模型的训练数据不充分,导致深度神经网络模型的预测结果的精确度较低。
发明内容
本发明实施例提供了一种去反光模型的训练方法、去反光模型和去反光方法。
第一方面,本发明提供了一种去反光模型的训练方法,此模型包括第一子模型和第二子模型;并且,此方法包括:基于第一训练数据和第一目标数据训练第一子模型,得到训练后的第一子模型,其中,第一训练数据包括第一样本图像,第一样本图像的拍摄内容包括反光对象、由反光对象反射成像的反射对象、由反光对象透射成像的透射对象,并且,第一目标数据包括第一样本图像的反射对象的光照图和第一样本图像的透射对象的光照图,第一样本图像的反射对象的光照图包括反射对象的光强,第一样本图像的透射对象的光照图包括透射对象的光强;基于第二训练数据和第二目标数据训练第二子模型,得到训练后的第二子模型,其中,第二训练数据包括第二样本图像和第二目标数据,第二目标数据包括第二样本图像的反射对象的反射图像和第二样本图像的透射对象的透射图像,并且,第二样本图像的拍摄内容与第一样本图像的拍摄内容相同,第二样本图像在第一波长范围内的光强与第一样本图像在第一波长范围内的光强相同。
在上述方法中,第一样本图像的反射对象的光照图的每一个像素值为第一样本图像的反射对象在此像素点位置上的照射光强,也即在此像素点位置上照射第一样本图像的反射对象的光束的光强。第一样本图像的透射对象的光照图的每一个像素值为第一样本图像的透射对象在此像素点位置上的照射光强,也即在此像素点位置上照射第一样本图像的透射对象的光束的光强。第一样本图像的第一波长范围内的光强为照射第一样本图像中拍摄内容的第一波长范围内的光束的光强,包括照射第一样本图像的反射对象的第一波长范围内的光束的光强,以及照射第一样本图像的透射对象的第一波长范围内的光束的光强。第二样本图像在第一波长范围内的光强为照射第二样本图像中拍摄内容的第一波长范围内的光束的光强,包括照射第二样本图像的反射对象的第一波长范围内的光束的光强,以及照射第二样本图像的透射对象的第一波长范围内的光束的光强。第一波长范围为第二样本图像的波长范围,也即照射第二样本图像的拍摄内容的光束的波长范围。
此去反光模型可以对第二样本图像进行去反光操作,从而将第二样本图像中的反射对象的反射图像分离出来,将获取的第二样本图像中的透射对象的透射图像,作为对第二样本图像进行去反光获取的去反光后的第二样本图像。其中,反射对象可以对应于下文的的前侧物体,透射对象可以对应于下文的的后侧物体,反光对象可以对应于下文的透明玻璃。
上述方法,将第一样本图像输入第一子模型后,可以训练第一子模型根据输入的第一样本图像,获取第一样本图像中反射对象的光照图和透射对象的光照图。将第二样本图像和第一子模型的输出的第一样本图像中反射对象的光照图和透射对象的光照图,输入第二子模型后,可以训练第一子模型根据输入的数据,获取第二样本图像的反射对象的反射图像和第二样本图像的透射对象的透射图像。
可以理解,由于第二样本图像的拍摄内容与第一样本图像的拍摄内容相同,第二样本图像在第一波长范围内的光强与第一样本图像在第一波长范围内的光强相同,因此,第二样本图像和第一样本图像在第一波长范围内具有相同的光照信息。光照信息可以包括图像的拍摄内容接收的光束的波长范围,以及接收的光束在不同波长范围内的光强。因此,第一子模型获取的第一样本图像中反射对象的光照图和透射对象的光照图,可以作为第二样本图像中反射对象的光照图和透射对象的光照图。
由于反射对象的光照图和透射对象的光照图的特征,与反射对象的反射图像和透射对象的透射图像具有强关联,因此,将第二样本图像中反射对象的光照图和透射对象的光照图作为先验信息和第二样本图像一起输入第二子模型,可以训练第二子模型依赖于输入的第一样本图像中反射对象的光照图和透射对象的光照图,对第二样本图像进行去反光操作,从而提高去反光模型的精确度。
在上述第一方面的一种可能的实现中,反光对象包括透明玻璃、透明塑料。
可以理解,反光对象可以为具有镜面反射效应的透光材料,反光对象包括但不限于透明玻璃和透明塑料。
在上述第一方面的一种可能的实现中,第一样本图像的波长范围包括第二样本图像的波长范围,第一样本图像的颜色通道的数量大于第二样本图像的颜色通道的数量。
可以理解,第一样本图像的波长范围为第一样本图像的拍摄内容接收的光束的波长范围,第二样本图像的波长范围为第二样本图像的拍摄内容接收的光束的波长范围,第一样本图像的颜色通道为第一样本图像包括的不同的颜色,第二样本图像的颜色通道为第二样本图像包括的不同的颜色。将第一样本图像输入第一子模型,获取的光照信息,比第二样本图像的光照信息更多,通过此光照信息,可以使得去反光模型对第二样本图像的去反光操作获取的结果更加精确。
在上述第一方面的一种可能的实现中,第一样本图像为多光谱图像,第二样本图像为RGB图像。
可以理解,可以基于多光谱图像获取RGB图像中拍摄内容的更多的光照信息,从而使得对于RGB图像的去反光操作获取的结果更加精确。
在上述第一方面的一种可能的实现中,通过以下方式获取第一样本图像的反射图像和第一样本图像的透射图像:获取反射对象的反射率图和反射对象的光照图;基于反射对象的反射率图和反射对象的光照图的乘积,得到反射对象的反射图像;获取透射对象的反射率图和透射对象的光照图;基于透射对象的反射率图和透射对象的光照图的乘积,得到透射对象的透射图像。
可以理解,在一种可能的实现中,可以在数据库中,获取第一物体的反射率图,作为反射对象的反射率图,第一物体可以为数据中的任意的物体,比如皮质沙发。可以在数据库中,获取第二物体的反射率图,作为反射对象的反射率图,第二物体可以为数据中的任意的物体,比如陶瓷花盆。其中,反射对象的反射率图的每一个像素点,为反射对象在此像素点位置上的反射率,反映了在此像素点位置上反射对象被照射后对照射的光束的反射能力。透射对象的反射率图的每一个像素点,为透射对象在此像素点位置上的反射率,反映了在此像素点位置上透射对象被照射后对照射的光束的反射能力。
可以理解,在一种可能的实现中,可以在数据库中,选取第一光照图,作为第一物体的光照图,选取第二光照图,作为第二物体的光照图。其中,第一光照图的每一个像素点,为在此像素点位置上的光强。第二光照图的每一个像素点,为在此像素点位置上的光强。
在上述第一方面的一种可能的实现中,第一样本图像可以基于下列公式得到:
;
其中,M表示第一样本图像,表示透射系数,的取值范围为(0.5,1),L表示光照
图,R表示反射率图,t表示透射,r表示反射,Lt表示透射对象的光照图,Lr表示反射对象的光
照图,Rt表示透射对象的反射率图,Rr表示反射对象的反射率图,k表示模糊核,为透射
对象的透射图像,为反射对象的反射图像。
可以理解,可以基于上述公式,得到第一样本图像。其中,的值可以基于需要进
行调整,从而获取更加符合需要的多光谱图像。
在上述第一方面的一种可能的实现中,第二样本图像、第二样本图像的反射对象的反射图像和第二样本图像的透射对象的透射图像可以通过下述方法获取:基于颜色匹配函数算法,将第一样本图像颜色通道映射为第二样本图像的颜色通道,得到第二样本图像;基于颜色匹配函数算法,将第一样本图像的反射对象的反射图像颜色通道映射为第二样本图像的反射对象的反射图像的颜色通道,得到第二样本图像的反射对象的反射图像;基于颜色匹配函数算法,将第一样本图像的透射对象的透射图像颜色通道映射为第二样本图像的透射对象的透射图像的颜色通道,得到第二样本图像的透射对象的透射图像。
可以理解,通过上述方法获得第二样本图像、第二样本图像的反射对象的反射图像和第二样本图像的透射对象的透射图像,并作为训练数据输入去反光模型,可以使得去反光模型的预测结果更加精确,提高训练后的去反光模型的精确度。
在上述第一方面的一种可能的实现中,模型为深度神经网络模型。
可以理解,去反光模型可以为深度神经网络模型中任意一个,本申请实施例中,不做具体限定。
第二方面,本文提供了一种去反光模型,包括第一子模型和第二子模型;其中,第一子模型用于生成待处理的第一图像的光照图,其中,第一图像的拍摄内容包括反光对象、由反光对象反射成像的反射对象和由反光对象透射成像的透射对象,第一图像的光照图包括第一图像的反射对象的光照图和第一图像的透射对象的光照图,第一图像的反射对象的光照图包括反射对象的光强,第一图像的透射对象的光照图包括透射对象的光强;第二子模型用于基于第一图像和第一图像的光照图,对第一图像进行去反光处理得到第二图像,其中,第二图像不包括反射对象。
其中,第一图像的反射对象的光照图的每一个像素值为第一图像的反射对象在此像素点位置上的照射光强,也即在此像素点位置上照射第一图像的反射对象的光束的光强。第一图像的透射对象的光照图的每一个像素值为第一图像的透射对象在此像素点位置上的照射光强,也即在此像素点位置上照射第一图像的透射对象的光束的光强。
上述模型,可以通过第一子模型获取第一图像的光照图,通过第二子模型,根据第一图像的光照图和第一图像,对第一图像进行去反光操作。由于第一图像的光照图的特征,与第一图像的反射对象和透射对象的成像具有强关联,此模型可以依赖于获取的第一图像的光照图的特征,对第二样本图像进行去反光操作,提高去反光模型获取的结果的精确度。
在上述第二方面的一种可能的实现中,反光对象包括透明玻璃、透明塑料。
在上述第二方面的一种可能的实现中,生成待处理的第一图像的光照图,包括:基于第一图像的参照图像,得到第一图像的光照图,其中,第一图像的参照图像的拍摄内容与第一图像的拍摄内容相同,第一图像的参照图像在第一波长范围内的光强与第一图像的第一波长范围内的光强相同。
可以理解,第一波长范围为第二样本图像的波长范围,也即照射第一图像的拍摄内容的光束的波长范围。第一图像的参照图像在第一波长范围内的光强,为照射第一图像的参照图像中拍摄内容的第一波长范围内的光束的光强,包括照射第一图像的参照图像的反射对象的第一波长范围内的光束的光强,以及照射第一图像的参照图像的透射对象的第一波长范围内的光束的光强。第一图像在第一波长范围内的光强为照射第一图像中拍摄内容的第一波长范围内的光束的光强,包括照射第一图像的反射对象的第一波长范围内的光束的光强,以及照射第一图像的透射对象的第一波长范围内的光束的光强。
可以理解,由于第一图像的参照图像的拍摄内容与第一图像的拍摄内容相同,第一图像的参照图像在第一波长范围内的光强与第一图像在第一波长范围内的光强相同,因此,第一图像的参照图像和第一图像在第一波长范围内具有相同的光照信息。光照信息可以包括图像的拍摄内容接收的光束的波长范围,以及接收的光束在不同波长范围内的光强。因此,上述获取的第一图像的参照图像中反射对象的光照图和透射对象的光照图,可以作为第一图像中反射对象的光照图和透射对象的光照图。
在上述第二方面的一种可能的实现中,第一图像的参照图像的波长范围包括第一图像的波长范围,第一图像的参照图像的颜色通道的数量大于第一图像的颜色通道的数量。
可以理解,第一图像的参照图像的波长范围为第一图像的参照图像的拍摄内容接收的光束的波长范围,第一图像的波长范围为第一图像的拍摄内容接收的光束的波长范围,第一图像的参照图像的颜色通道为第一图像的参照图像包括的不同的颜色,第一图像的颜色通道为第一图像包括的不同的颜色。因此,将第一图像的参照图像输入第一子模型,获取的光照信息,比第二样本图像的光照信息更多,通过此光照信息,可以使得去反光模型对第二样本图像的去反光操作获取的结果更加精确。
在上述第二方面的一种可能的实现中,第一图像的参照图像为采用多光谱摄像头拍摄的图像,第一图像为采用RGB摄像头拍摄的图像。
可以理解,可以采用多光谱摄像头和RGB摄像头采用相同的参数,比如曝光参数,同时对相同的拍摄内容采集图像,分别获取多光谱图像和RGB图像。从而使得多光谱摄像头和RGB摄像头可以采集同样的拍摄内容在相同拍摄场景中的图像,使得多光谱图像和RGB图像具有相同的光照信息和相同的拍摄内容。从而提高去反光模型对RGB图像的去反光操作的结果的精确度。
在上述第二方面的一种可能的实现中,模型为深度神经网络模型。
可以理解,去反光模型可以为深度神经网络模型中任意一个,本申请实施例中,不做具体限定。
第三方面,本文提供了一种去反光方法,此方法包括获取待处理的第一图像,其中第一图像的拍摄内容包括反光对象和由反光对象反射成像的反射对象;基于第一图像的光照图,对第一图像进行去反光处理得到第二图像,其中,第一图像的光照图包括第一图像的反射对象的光照图,反射对象的光照图包括第一图像的反射对象的光强,第二图像不包括反射对象。
在上述第三方面的一种可能的实现中,反光对象包括透明玻璃、透明塑料。
在上述第三方面的一种可能的实现中,第一图像的拍摄内容还包括由反光对象透射成像的透射对象,第一图像的光照图还包括第一图像的透射对象的光照图,透射对象的光照图包括第一图像的透射对象的光强,并且第二图像包括透射对象。
在上述第三方面的一种可能的实现中,基于第一图像的光照图,对第一图像进行去反光处理得到第二图像,包括:基于第一图像的参照图像,得到第一图像的光照图,第一图像的参照图像的拍摄内容与第一图像的拍摄内容相同,且第一图像的参照图像在第一波长范围内的光强,与第一图像在第一波长范围内的光强相同。基于第一图像和第一图像的光照图,得到第二图像。
第四方面,本发明实施例提供了一种可读存储介质,该可读存储介质上存储有指令,该指令在电子设备上执行时使电子设备实现上述第一方面及各种可能实现和第三方面及各种可能实现提供的任意一种方法。
第五方面,本发明实施例提供了一种电子设备,该电子设备包括:存储器,用于存储由电子设备的一个或多个处理器执行的指令;以及处理器,是电子设备的处理器之一,用于执行存储器中存储的指令以实现上述第一方面及各种可能实现和第三方面及各种可能实现提供的任意一种方法。
第六方面,本发明实施例提供了一种程序产品,该程序产品中包括指令,在该指令被电子设备执行时可以使电子设备实现上述第一方面及各种可能实现和第三方面及各种可能实现提供的任意一种方法。
附图说明
图1A根据本发明的一些实施例,示出了一种手机拍照的场景示意图;
图1B根据本发明的一些实施例,示出了一种光照图;
图1C根据本发明的一些实施例,示出了另一种光照图;
图2A根据本发明的一些实施例,示出了一种去反光模型的结构示意图;
图2B根据本发明的一些实施例,示出了一种第一子模型的训练方法的流程示意图;
图2C根据本发明的一些实施例,示出了一种多光谱图像的合成方法的流程示意图;
图2D根据本发明的一些实施例,示出了一种第一子模型的训练方法的过程示意图;
图3根据本发明的一些实施例,示出了一种去反光模型的结构示意图;
图4根据本发明的一些实施例,示出了一种去反光方法的流程示意图;
图5A根据本发明的一些实施例,示出了一种用户点击手机上的相机应用程序的示意图;
图5B根据本发明的一些实施例,示出了一种手机显示拍照界面的示意图;
图5C根据本发明的一些实施例,示出了一种手机显示提示用户是否进行去反光流程的示意图;
图5D根据本发明的一些实施例,示出了一种手机显示RGB图像的示意图;
图6根据本发明的一些实施例,示出了一种终端设备的硬件结构示意图;
图7根据本发明的一些实施例,示出了一种终端设备的软件结构示意图。
具体实施方式
为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述。
可以理解,本申请实施例中的终端设备也可以称为终端(terminal)、用户设备(user equipment,UE)、移动台(mobile station,MS)、移动终端(mobile terminal,MT)等。终端设备可以是手机(mobile phone)、智能电视、穿戴式设备、平板电脑(Pad)、带无线收发功能的电脑、虚拟现实(virtual reality,VR)终端设备、增强现实(augmented reality,AR)终端设备、工业控制(industrial control)中的无线终端、无人驾驶(self driving)中的无线终端、远程手术(remote medical surgery)中的无线终端、智能电网(smart grid)中的无线终端、运输安全(transportationsafety)中的无线终端、智慧城市(smart city)中的无线终端、智慧家庭(smart home)中的无线终端等等。
此外,在本申请实施例中,终端设备还可以是物联网(internet of things,IoT)系统中的终端设备,IoT是未来信息技术发展的重要组成部分,其主要技术特点是将物品通过通信技术与网络连接,从而实现人机互连,物物互连的智能化网络。本申请的实施例对终端设备所采用的具体技术和具体设备形态不做限定。
可以理解,本申请实施例中的去反光方法的应用场景,可以包括使用具有拍摄功能的终端设备,透过具有镜面反射效应的透光材料,比如透明玻璃等,对透明玻璃后侧的物体进行拍照或拍摄视频的场景。该场景中,被拍摄的物体与终端设备,可以分别处于透明玻璃的两侧,例如被拍摄的物体处于透明玻璃的后侧,终端设备处于透明玻璃的前侧。为了便于描述,处于透明玻璃后侧的拍摄对象,可以称为后侧物体,处于摄像头与透明玻璃之间的物体,仍处于透明玻璃的前侧,可以称为前侧物体。可以理解,本申请实施例中的去反光方法的应用场景中的透光材料,为具有镜面反射效应的透光材料,此透光材料可以包括透明玻璃、透明塑料等。在此对于本申请实施例的应用场景,以及具体的透光材料的类型,不做具体限定。
为了便于理解,下面先对本申请实施例中可能涉及的相关术语和概念进行介绍。
(1)镜面反射:指若反射面比较光滑,当平行入射的光线射到这个反射面时,会平行地向反方向反射出来,这种反射就属于镜面反射。示例性地,玻璃反光属于一种镜面反射情况。
(2)颜色通道:每个图像都有一个或多个颜色通道,图像中默认的颜色通道数取决于其颜色模式,即一个图像的颜色模式将决定其颜色通道的数量。其中,每个颜色通道都存放着图像中颜色元素的信息。所有颜色通道中的颜色叠加混合产生图像中像素的颜色。例如,红绿蓝(RGB)图像中包括3个颜色通道。其中,红色(red,R)为一个颜色通道,绿色(green,G)为一个颜色通道,蓝色(blue,B)为一个颜色通道。RGB图像中每一个像素点的像素值包括红色(red,R),绿色(green,G)和蓝色(blue,B)这三个颜色通道的像素值。
(3)图像的成像:摄像头成像的原理是将光信号转换为电信号,然后将电信号传输到图像处理器进行处理,最终生成数字图像的过程。比如,拍摄对象在光源的照射下,会发出反射光束。此反射光束与光源的波长范围,波长范围内光源的辐射量,以及拍摄对象的反射能力等有关。
RGB摄像头拍摄RGB图像时,CCD芯片中的每一个感光像点将会根据过滤的光束,感应到对应的一个电流信号,这些电流信号被分别处理后生成红色颜色通道的图像,绿色颜色通道的图像和蓝色颜色通道的图像,这三个颜色通道的图像混合成为RGB图像。可以理解,RGB图像的照射光束的波长范围大约为400~700nm,其中,红光的波长范围为625~740nm,绿光的波长范围为492~577nm,蓝光的波长范围为440~475nm。
本申请实施例中的多光谱图像的照射光束的波长范围大约为400~1000nm之间,并且多光谱图像的颜色通道可以大于2个,比如大于或者等于8个,每一个颜色通道对应的光束的谱宽的范围为可以根据需要进行设置,比如可以为30nm~40nm。采用摄像头拍摄多光谱图像时,CCD芯片中的每一个感光像点将会根据过滤的光束,感应到对应的一个电流信号,这些电流信号被分别处理后生成8个颜色通道的图像,最后8个颜色通道的图像混合为多光谱图像。
也就是说,多光谱图像的光照信息比RGB图像的光照信息更多。其中,光照信息可以包括多光谱图像的光束的波长范围,以及光束在不同谱宽内的光强。其中,光强表示光源在指定方向的单位立体角内发出的光通量。
下面继续以手机为例,以手机上配置的摄像头为RGB摄像头为例,以具有镜面反射效应的透光材料为透明玻璃为例,对本申请提供的技术方案应用在终端设备中的具体实现过程进行详细描述。
本申请实施例中的去反光方法的应用场景中,由于用户透过透明玻璃对后侧物体进行拍摄,透明玻璃存在的镜面反射光与透射光会混叠在一起,导致拍摄的后侧物体的图像中会存在反光区域,此反光区域掩盖了后侧物体的部分细节信息,反光区域中包括前侧物体的图像信息。图像去反光的目的在于,在拍摄的后侧物体的图像中,去除透明玻璃前侧物体的反射图像。
图1A中示出了用户采用配置有摄像头的手机进行拍照的场景。
如图1A所示,用户采用手机100上的摄像头,比如RGB摄像头,在室外透过落地透明玻璃窗101对室内的沙发104进行拍照。相对于RGB摄像头而言,与RGB摄像头同在落地透明玻璃窗101一侧的物体,比如花盆102、用户本身等为落地透明玻璃窗101的前侧物体;相较于RGB摄像头,不处于落地透明玻璃窗101同一侧的物体,比如电视103、沙发104等为落地透明玻璃窗101的后侧物体。
可以理解,如背景技术中描述,在光照射到落地透明玻璃窗101时,落地透明玻璃窗101表面会产生透射光,也会由于镜面反射产生反射光。反射光和透射光混叠在一起,会导致拍摄的沙发104图片存在反光区域。该反光区域中可能会显示落地透明玻璃窗101前侧物体花盆102的图像信息,使得拍摄的沙发104图片清晰度较差。
目前,手机通常通过内置的深度神经网络模型,对采用RGB摄像头拍摄的图像,进行去反光处理,从而提高相应图像的清晰度。上述去反光处理的过程,即去除摄像头拍摄的图像中显示的前侧物体的反射图像。透明玻璃后侧物体的透射图像即为去反光后的图像。
可以理解,这些深度神经网络模型,在应用到手机之前,需要进行训练,使得深度神经网络模型可以通过输入的样本图像,学习预测出透明玻璃前侧物体的反射图像和透明玻璃后侧物体的透射图像。
然而,在训练深度神经网络模型的过程中,训练数据集的样本图像数量不够,导致样本图像的光照信息不足,比如光强较单一,或者光源类型的数量不足,或者导致样本图像中的拍摄对象的类型和数量不足,深度神经网络模型则无法通过训练,学习到较为全面的样本图像的特征。因此,如果采用上述深度神经网络模型,对与训练数据集中的样本图像包括的拍摄对象的类型不同或光照信息等特征不同的图像,进行去反光处理,效果将比较差。也即此深度神经网络模型的预测结果精确度较低。
例如,对应于前述图1A所示的场景,如果训练数据集的样本图像中对应的光照信息为冬季早上8:00至10:00之间的太阳光对应的光照信息,以及室内发光二极管(lightemitting diode,LED)灯对应的光照信息。拍摄对象可以包括室内的沙发104,且此沙发为皮质沙发,落地透明玻璃前侧物体包括陶瓷花盆102等。
而在实际拍摄场景中,如果实际拍摄场景的为夏季中午12:00至14:00之间的太阳光对应的光照信息,拍摄对象可以包括室内的沙发104,且此沙发为棉质沙发,落地透明玻璃的前侧物体包括陶瓷花盆102等。
此时,由于深度神经网络模型的训练数据集中的样本图像对应的光照信息、拍摄对象等,与实际拍摄场景中的光照信息、拍摄对象等特征不相同,则可能导致该深度神经网络模型对于实际拍摄场景中的图像,进行去反光操作的预测结果不准确,最终导致手机100实际拍摄场景中的图像进行去反光处理的效果不好,此深度神经网络模型的精确度较低。
可以理解,在上述深度神经网络模型的实际训练过程中,往往由于时间不足、准备不充分各项因素,无法采用或者无法获取足够的训练数据,即训练数据较少,使得模型无法从现有的训练数据中获取到足够全面的特征进行训练,使得训练后的深度神经网络模型的预测结果的精确度较低。
因此,为了能够在训练数据较少的情况下,提高训练后的深度神经网络模型的预测结果的精确度,可以在深度神经网络模型的原有的训练数据中加入先验信息。此先验信息中可以包括深度神经网络模型处理数据所需的关键特征,也即此先验信息中的特征与深度神经网络模型的预测结果具有强关联性。将先验信息与原有的训练数据一起,输入深度神经网络模型进行训练,可以限制深度神经网络模型在训练过程中的学习方向至预期方向,提高深度神经网络模型的训练效率和精确度。
例如,对于用于图像识别的深度神经网络模型,可以将包括与目标结果强关联的特征的图像,与样本图像一起,输入深度神经网络模型进行训练。如对于用于识别鹦鹉的深度神经网络模型,由于鹦鹉的主要特征在头部,因此可以将包括整个鹦鹉的样本图像和鹦鹉头部图像,共同输入神经网络模型进行训练。即将鹦鹉头部图像作为先验信息,从而提高训练后的深度神经网络模型的精确度。
例如,本申请中去反光模型,用于根据输入的图像,预测透明玻璃前侧物体的反射图像,和透明玻璃后侧物体的透射图像。其中,透明玻璃后侧物体的透射图像,即为去反光后的图像。由于去反光模型的输出结果包括透明玻璃前侧物体的反射图像,和透明玻璃后侧物体的透射图像。并且,由于图像中每一个像素点的值,都对应于此像素点处的光照与此像素点处的拍摄内容的反射率。因此,透明玻璃前侧物体的反射图像,和透明玻璃后侧物体的透射图像,都分别与对应的光照信息具有强关联性。也即透明玻璃前侧物体的反射图像,与透明玻璃前侧物体的光照信息具有强关联性,而透明玻璃后侧物体的透射图像,与透明玻璃后侧物体的光照信息具有强关联性。
因此,本申请实施例提供了一种去反光模型的训练方法、去反光模型及基于训练后的去反光模型的去反光方法。具体地,在进行去反光模型的训练时,可以将样本图像的光照图作为先验信息,与训练数据中的样本图像一并输入去反光模型进行训练,训练去反光模型依赖于输入的样本图像的光照图的特征,对样本图像进行去反光操作,提高训练后的去反光模型的精确度。其中,样本图像的光照图用于记录样本图像中的拍摄内容表面接收的光照效果。样本图像的光照图可以包括样本图像的光照信息,光照信息可以包括图像的拍摄内容接收的光束的波长范围,以及接收的光束在不同波长范围内的光强。
作为示例,样本图像的光照图可以包括如图1B所示的样本图像的透明玻璃前侧物体的光照图,也即导致样本图像的透明玻璃前侧物体成像的光照图。样本图像的光照图还可以包括如图1C所示的样本图像的透明玻璃后侧物体的光照图,也即导致样本图像的透明玻璃后侧物体成像的光照图。其中,光照图中各像素点的像素值代表此像素点位置处的光强。透明玻璃前侧物体即为反射对象,透明玻璃后侧物体即为透射对象,透明玻璃即为反光对象。
在一种可能的实现中,可以将拍摄内容与样本图像相同,相同波长范围下的光强相同,光谱范围比样本图像更广,颜色通道的数量比样本图像更多的图像,输入去反光模型,以获取比样本图像的光照图更多的光照信息。其中,比如可以将多光谱图像输入去反光模型。在一种可能的实现中,本申请实施例中的多光谱图像的光束的波长范围大约为400~1000nm之间,并且多光谱图像的颜色通道可以大于或者等于2个,比如大于或者等于8个,每一个颜色通道对应的光束的谱宽的范围可以根据需要进行调节,比如可以为30nm~40nm。基于此,样本图像可以为多光谱图像转换后,得到的RGB图像,该RGB图像的光谱范围可以为400~780nm。因此,本申请提供的去反光模型可以基于多光谱图像获取比RGB图像更多的光照信息,并训练此去反光模型根据此光照信息中更多的特征,输出RGB图像的透明玻璃前侧物体的反射图像,和RGB图像的透明玻璃后侧物体的透射图像,进一步提高训练后的去反光模型的精确度。其中,RGB图像的透明玻璃后侧物体的透射图像即为对RGB图像去反光后的图像,RGB图像的透明玻璃前侧物体的反射图像即为需要去除的RGB图像中的图像。
在一种可能的实现中,上述去反光模型可以包括第一子模型和第二子模型两部分。此去反光模型的训练过程中,第一子模型可以用于根据第一样本图像,输出第一样本图像的透明玻璃前侧物体的光照图和第一样本图像的透明玻璃后侧物体的光照图。第二子模型可以用于根据第二样本图像、第一样本图像的透明玻璃前侧物体的光照图和第一样本图像的透明玻璃后侧物体的光照图,输出第二样本图像的透明玻璃前侧物体的反射图像和第二样本图像的透明玻璃后侧物体的透射图像。第二样本图像的透明玻璃后侧物体的透射图像即为对第二样本图像去反光后的图像,第二样本图像的透明玻璃前侧物体的反射图像即为需要去除的第二样本图像中的图像。其中,第一样本图像的拍摄内容与第二样本图像的拍摄内容相同,拍摄内容包括透明玻璃、透明玻璃前侧物体和透明玻璃后侧物体。第一样本图像在第一波长范围内的光强与第二样本图像在第一波长范围内的光强相同。第一波长范围为第二样本图像的波长范围,也即照射第二样本图像的拍摄内容的光束的波长范围。
可以理解,由于第二样本图像的拍摄内容与第一样本图像的拍摄内容相同,第二样本图像在第一波长范围内的光强与第一样本图像在第一波长范围内的光强相同,因此,第二样本图像和第一样本图像在相同波长范围内具有相同的光照信息。光照信息可以包括图像的拍摄内容接收的光束的波长范围,以及接收的光束在不同波长范围内的光强。因此,第一子模型获取的第一样本图像的透明玻璃前侧物体的光照图和第一样本图像的透明玻璃后侧物体的光照图,可以取代第二样本图像的光照信息,作为先验信息用于训练第二子模型。
上述模型的训练过程中,可以将第一样本图像的光照信息作为先验信息,训练第二子模型依赖于输入的第一样本图像中反射对象的光照图和透射对象的光照图的特征,对第二样本图像进行去反光操作,提高去反光模型的精确度。
在一种可能的实现中,第一样本图像可以为多光谱图像,第二样本图像可以为RGB图像。可以理解,多光谱图像和RGB图像只是一种示例,本申请中对于输入第一子模型和第二子模型的图像不做具体限定。
在一种可能的实现中,上述去反光模型的第一子模型的第一训练数据可以为多光谱图像。该多光谱图像可以通过以下方式获取:根据数据库中的第一物体的反射率图,和第一光照图的乘积,获取透明玻璃前侧物体的反射图像。根据数据库中的第二物体的反射率图,和第二光照图的乘积,获取透明玻璃后侧物体的透射图像。再根据透明玻璃前侧物体的反射图像,与透明玻璃后侧物体的透射图像,和透射系数,通过一定的权重混合,获得多光谱图像。并且,第一子模型的第一目标数据,可以包括第一光照图和第二光照图。第一物体作为反射对象,也即透明玻璃前侧物体,第二物体作为透射对象。第二子模型的第二训练数据可以为RGB图像与第一目标数据。其中,在一种可能的实现中,RGB图像可以为将多光谱图像转换的RGB图像。第二子模型的第二目标数据可以为将多光谱图像的透明玻璃前侧物体的反射图像转换的RGB图像的透明玻璃前侧物体的反射图像,和将多光谱图像的透明玻璃后侧物体的透射图像转换的RGB图像的透明玻璃后侧物体的透射图像。
其中,第一物体可以作为透明玻璃前侧物体,也即反射对象,第二物体,可以作为透明玻璃后侧物体,也即透射对象。其中,第一光照图为第一物体的光照图,也即透明玻璃前侧物体的光照图,又称为反射对象的光照图;第二光照图为第二物体光照图,也即透明玻璃后侧物体的光照图,又称为透射对象的光照图。
在一种可能的实现中,本申请实施例中的多光谱图像的照射光束的波长范围大约为400~1000nm之间,并且多光谱图像的颜色通道可以大于或者等于8个,每一个颜色通道对应的光束的谱宽的范围可以为30nm~40nm。
如此,如果采用波长范围更宽,颜色通道更多的多光谱图像作为输入数据,第一子模型可以获取的光照信息比采用RGB图像作为输入数据获取的光照信息更多。
如此,可以通过多光谱图像的光照信息作为先验信息,与RGB图像一起输入第二子模型,可以使得第二子模型可以更加依据多光谱图像的光照信息的特征,输出RGB图像的透明玻璃前侧物体的反射图像,和RGB图像的透明玻璃后侧物体的透射图像,提高训练后的去反光模型的精确度。
具体的,本申请提供的去反光方法,可以采用训练后的去反光模型根据输入的图像的光照信息和图像,学习光照信息中的特征以及图像中的特征,获取较为精确的图像的透明玻璃前侧物的反射图像和透明玻璃后侧物体的透射图像。
下面以手机中的去反光模型为深度神经网络模型中的U Net模型为例,基于图2A至图6详细描述本申请的技术方案。
首先,参照图2A至图2D,介绍本申请实施例中对去反光模型的具体训练过程。
在一种可能的实现中,如图2A所示,去反光模型可以包括第一子模型和第二子模型两个部分。在本申请的一些实施例中,第一子模型和第二子模型可以采用U Net结构,但不限于此,还可以为其他任意可实现的本申请目的的模型架构。
对去反光模型的训练过程可以包括,第一阶段对第一子模型的训练过程,和第二阶段对第二子模型的训练过程。
可以理解,在需要进行去反光操作的拍摄场景中,训练后的第一子模型可以根据颜色通道较多的光谱范围较大的图像,比如多光谱图像,获得此拍摄场景的光照信息,包括透明玻璃前侧物体的光照图和透明玻璃后侧物体的光照图。此拍摄场景的拍摄内容包括透明玻璃、透明玻璃前侧物体和透明玻璃后侧物体,其中透明玻璃即为反光对象的一种示例,透明玻璃前侧物体即为由反光对象反射成像的反射对象的一种示例,透明玻璃后侧物体即为由反光对象透射成像的透射对象的一种示例。可以理解,本实施例中在第一子模型中采用的多光谱图像和在第二子模型中采用的RGB图像只是一种示例,本申请实施例中,对于采用的图像不做具体限定。可以理解,在其他的实施例中,反光对象、由反光对象反射成像的反射对象和由反光对象透射成像的透射对象也可以是其他的示例,比如反光对象可以包括透明塑料,本申请实施例中,对此不做具体限定。
可以理解,本申请实施例中的多光谱图像的波长范围大约为400~1000nm之间,也即照射多光谱图像的拍摄内容的光束的波长范围大约为400~1000nm之间,并且多光谱图像的颜色通道的数量大于或者等于8个,每一个颜色通道对应的光束的谱宽的范围为30nm~40nm。RGB图像的波长范围可以为[400nm,780nm],也即照射RGB图像的拍摄内容的光束的波长范围大约为[400nm,780nm],RGB图像的颜色通道的数量为3个。因此,上述第一子模型根据多光谱图像,可以获取此拍摄场景的更多的光照信息,提高去反光模型的预测精确度。
在一种可能的实现中,如图2B所示,对于第一子模型的训练过程可以包括以下步骤:
S210,获取第一训练数据。
示例性地,第一训练数据可以为多光谱图像。在一种可能的实现中,该多光谱图像可以为基于现有的数据库中图像的合成图像。例如采用数据库中的第一物体的反射率图、第一光照图,以及第二物体的反射率图、第二光照图,合成多光谱图像。其中,第一物体的反射率图、第一光照图,以及第二物体的反射率图、第二光照图,都与多光谱图像具有相同的颜色通道的数量。
其中,第一物体可以作为透明玻璃前侧物体,也即反射对象,第一光照图可以作为透明玻璃前侧物体的光照图。第二物体可以作为透明玻璃后侧物体,也即透射对象,第二光照图可以作为透明玻璃后侧物体的光照图。具体多光谱图像的合成方法,可以在下文中结合图2C详细描述,在此不做赘述。另外,在另一种可能的实现中,该多光谱图像也可以为通过其他方式获取的图像,比如采用多光谱摄像头拍摄的图像,本申请实施例中,对此不做具体限定。
S220,获取第一目标数据。
示例性地,第一目标数据可以包括上述数据库中的反射对象的光照图和透射对象的光照图。参考上述图1A所示场景,第一目标数据例如可以是太阳光下花盆102的光照图、以及太阳光与LED光共同照射下沙发104的光照图。在一种可能的实现中,反射对象的光照图和透射对象的光照图也可以通过其它方式获取,比如可以通过软件对多光谱摄像头拍摄的多光谱图像进行处理,获取的反射对象的光照图和透射对象的光照图,本申请实施例中,对此不做具体限定。
S230,根据第一训练数据和第一目标数据,训练第一子模型。
示例性地,上述第一训练数据可以作为第一子模型的输入数据,上述第一目标数据可以作为第一子模型的输出数据,训练第一子模型。
S240,获取第一子模型的第一损失函数。
示例性地,上述第一损失函数可以用于计算第一子模型的预测值与真实值之间的差距。
作为示例,可以通过透射对象的光照图的像素的预测值和实际值之间的距离与散度的乘积,以反射对象的光照图的像素的预测值和实际值之间的距离与散度的乘积,作为第一损失函数的值,以衡量第一子模型的预测结果的精确度。
比如第一损失函数可以为。其中,KL表示散度,表示
透射对象的光照图的像素的预测值,Lt表示透射对象的光照图的像素的真实值,表示反
射对象的光照图的像素的预测值,Lr表示反射对象的光照图的像素的真实值,为透射对象的光照图的像素的预测值和实际值之间的距离与散度的乘积,为反射对象的光照图的像素的预测值和实际值之间的距离与散度的乘积。
可以理解,上述第一损失函数只是一种实例,本申请实施例中,对于第一损失函数不做具体限定。
S250,根据第一损失函数的值,调整第二子模型中的参数,迭代训练第一子模型,获得训练后的第一子模型。
可以理解,预测值和实际值之间的距离越小,第一损失函数的值越小,第一子模型的预测结果的精确度越高。也即如透射对象的光照图的像素的预测值和实际值之间的距离与散度的乘积,反射对象的光照图的像素的预测值和实际值之间的距离与散度的乘积的和越小,第一损失函数的值越小,第一子模型的预测结果的精确度越高。
基于此,若采用误差反向传播(back propagation,BP)算法,例如基于第一损失函数的结果的反向传播算法,在训练过程中不断迭代修正第一子模型中参数的大小,使第一损失函数的值越来越小,对应的第一子模型的重建误差损失也会越来越小。
在一些可能的实现中,在第一损失函数的数值大于第一预设数值时,可以通过调整第一子模型的超参数来训练第一子模型,直至第一损失函数的数值小于或等于第一预设数值。其中,超参数可以为学习率、正则化参数、神经网络的层数、每一个隐藏层中神经元的个数、学习的回合数等,在此不做限制。第一预设数值的具体取值可以根据实际需求选取,本申请实施例对此不做具体限定。
在一种可能的实现中,如图2C所示,多光谱图像的合成方法可以包括:
S211,获取第一光谱成分下前侧物体的反射图像。
示例性地,可以选取第一光谱成分,也即透明玻璃前侧物体的光谱成分为太阳光。参考上述图1A所示场景,可以选取花盆102,为透明玻璃的前侧物体,也即与手机上的摄像头在透明玻璃的同一侧的物体。
可以选取数据库中太阳光下陶瓷花盆的反射率图作为第一训练数据中的反射层反射率图。并选取数据库中太阳光下陶瓷花盆的光照图作为第一训练数据中的反射对象的光照图。将第一训练数据中的反射层反射率图与第一训练数据中的反射对象的光照图相乘,则可以获得透明玻璃前侧的花盆102的反射图像。
S212,获取第二光谱成分下后侧物体的透射图像。
示例性地,可以选取第二光谱成分,也透明玻璃后侧的光谱成分为太阳光和LED光,作为。参考上述图1A所示场景,可以设置沙发104,为透明玻璃的后侧物体,也即与手机上的摄像头在透明玻璃的不同侧的物体。
可以选取数据库中第二光谱成分下,皮沙发的反射率图,作为第一训练数据中的透射对象的反射率图。选取数据库中太阳光和LED光下,皮沙发的光照图,作为第一训练数据中的透射对象的光照图。将第一训练数据中的透射对象的反射率图和第一训练数据中的透射对象的光照图相乘,可以获得透明玻璃后侧的沙发104的透射图像。
可以理解,上述步骤S211和步骤S212之间没有先后顺序。并且,本申请实施例中,对于选取的拍摄环境中透明玻璃前侧光谱成分和后侧光谱成分,不做具体限定,对于选取的前侧物体和后侧物体,对于选取的前侧物体的材质和后侧物体的材质,不做具体限定。
S213,基反射图像和透射图像,合成多光谱图像。
示例性地,在训练过程中,可以采用电子设备的处理器,比如电脑的处理器采用公式(1),合成多光谱图像。
(1);
其中,M表示多光谱图像,表示透射系数,的取值范围为(0.5,1),L表示光照图,
R表示反射率图,t表示透射,r表示反射,Lt表示透射对象的光照图,Lr表示反射对象的光照
图,Rt表示透射对象的反射率图,Rr表示反射对象的反射率图,k表示模糊核,为透射对
象的透射图像,为反射对象的反射图像。
可以理解,Lt和Rt,都分别可以包括8个颜色通道的图像,因此,在获得透射图像的
过程中,可以把Lt和Rt的图像中对应颜色通道的图像的像素对应相乘,再根据透射系数,
获得透射图像。
可以理解,Lr和Rr,都分别可以包括8个颜色通道的图像。因此,在获得反射图像的
过程中,可以把Lr和Rr图像中对应颜色通道的图像的像素一一对应相乘,再根据透射系数
和模糊核k,获得反射图像。
可以理解,透射图像的透射系数大于反射图像的透射系数。因此,多光谱图像中,的数值大于0.5。
可以理解,多光谱图像也可以采用其他的方式获取,比如可以通过多光谱摄像头拍摄等方式获取,本申请实施例中对于多光谱图像的获取方法不做具体限定。
在基于上述步骤S210至S250完成对第一子模型10的训练后,该第一子模型可以根据输入的图像,比如多光谱图像,获得光照信息。该光照信息可以包括透明玻璃前侧物体的光照图和透明玻璃后侧物体的光照图。下面继续结合相关附图介绍上述去反光模型的第二子模型的训练过程。
在一种可能的实现中,在需要进行去反光操作的拍摄场景中,训练后的第二子模型可以根据RGB图像,反射对象的光照图和透射对象的光照图的拼接图像,获取透射图像和反射图像,并可以将透射图像作为去反光后的图像,在手机的显示屏上呈现给用户。
如图2D所示,对于第二子模型的训练过程可以包括:
S260,获取第二训练数据。
示例性地,上述第二训练数据可以是RGB图像以及第一目标数据。其中RGB图像可以为根据上述步骤S210中的多光谱图像生成的RGB图像。
例如,多光谱图像可以包括8个颜色通道,RGB图像包括三个颜色通道,可以颜色匹配算法等方法通过把多光谱图像的8个颜色通道的数据,映射到RGB三个颜色通道,生成RGB图像。
可以理解,RGB图像也可以采用其他的方式获取,比如可以通过RGB摄像头拍摄与多光谱图像相同的拍摄场景下相同拍摄内容的图像等方式获取,并且获取的RGB图像与多光谱图像的拍摄内容相同,并且在相同光谱范围内的光照相同。本申请实施例中,对于RGB图像的获取方法,不做具体限定。
S270,获取第二目标数据。
示例性地,第二目标数据可以包括对步骤S211中,第一光谱成分下前侧物体的反射图像,与步骤S212中,第二光谱成分下后侧物体的透射图像,分别采用颜色匹配算法获取的RGB图像的前侧物体的反射图像,和RGB图像的后侧物体的透射图像。可以理解,RGB图像的前侧物体的反射图像,和RGB图像的后侧物体的透射图像也可以采用其他的方式获取,比如可以将RGB摄像头拍摄的RGB图像经过处理后获取的RGB图像的前侧物体的反射图像,和RGB图像的后侧物体的透射图像,本申请实施例中,对于此不做具体限定。
S280,根据第二训练数据和第二目标数据,训练第二子模型。
示例性地,上述第二训练数据可以作为第二子模型的输入数据,上述第二目标数据可以作为第二子模型的输出数据,训练第二子模型。
S290,获取第二子模型的第二损失函数。
示例性地,第二损失函数可以为均方误差(mean square error,MSE)函数或者均方根误差(root mean square error,RMSE)函数,但不限于此。
作为示例,第二损失函数为。其中,表示透射
图像的像素的预测值,It表透射图像的像素的真实值,表示透射图像的像素的预测
值和真实值之间的距离,表示反射图像的像素的预测值,Ir表示反射图像的像素的真实
值,表示反射图像的像素的预测值和真实值之间的距离。
可以理解,上述第二损失函数只是一种实例,本申请实施例中,对于第二损失函数不做具体限定。
S300,根据第二损失函数的值,调整第二子模型中的参数,迭代训练第二子模型,获得训练后的第二子模型。
可以理解,可以通过透射图像的像素的预测值和实际值之间的距离,以及反射图像的像素的预测值的预测值和实际值之间的距离,来衡量第二子模型的预测结果的精确度。即预测值和真实值越接近,第二损失函数的值就越小,第二子模型的预测结果的精确度越高。也即如果透射图像的像素的预测值和真实值之间的距离,与反射图像的像素的预测值和真实值之间的距离越小,第二损失函数的值就越小,第二子模型的预测结果的精确度越高。
在一些可能的实现中,在第二损失函数的数值大于第二预设数值时,可以通过调整第二子模型的超参数来训练第二子模型,直至第二损失函数的数值小于或等于第二预设数值。其中,超参数可以为学习率、正则化参数、神经网络的层数、每一个隐藏层中神经元的个数、学习的回合数等,在此不做限制。第二预设数值的具体取值可以根据实际需求选取,本申请实施例对此不做具体限定。
可以理解,在需要进行去反光操作的拍摄场景中,基于上述第一子模型的训练方法训练后的第一子模型,可以根据多光谱图像,获得此拍摄场景的较为全面的光照信息,包括多光谱图像的反射对象的光照图和多光谱图像的透射对象的光照图。基于上述第二子模型的训练方法训练后的第二子模型,可以根据RGB图像,和此拍摄场景的光照信息,获取较为精确的透射图像,以及反射图像。从而可以通过上述去反光模型,将透明玻璃前侧物体的反射图像,较为精确地从拍摄的图像中分离,提高去反光后的图像的清晰度。其中,透射图像也即透明玻璃后侧的拍摄对象的透射图像,又称为去反光后的图像。反射图像,也即透明玻璃前侧物体的反射图像。
下面根据图3,对本申请实施例中的第一子模型和第二子模型的结构进行介绍。
可以理解,第一子模型和第二子模型串联连接,可以采用分阶段训练的方法进行训练。例如,在完成第一子模型的训练后,可以初步验证去反光模型的预测结果,并对第一子模型和第二子模型的超参数及时调整,从而提升对整体训练的最终效果。
在本申请的一些实施例中,上述第一子模型和第二子模型可以采用U-Net结构,但不限于此,还可以为其他任意可实现的本申请目的的模型架构。
作为示例,参照图3所示,为本申请实施例提供的一种第一子模型的架构示意图。第一子模型10为经典的U-Net结构,包括编码器10A、解码器10B和全连接层15。其中,编码器10A包括卷积(convolution,conv)层11和最大池化(max-pooling)层12。解码器10B包括上卷积(up-convolution)层13以及卷积(conv)层14。
作为一种示例,如图3所示,第一子模型10的输入图像为多光谱图像。多光谱图像的空间分辨率可以低于RGB图像的空间分辨率,比如256*256,颜色通道的数量为8。第一子模型10用于根据输入图像,获取输入图像的透射对象的光照图和反射对象的光照图。
可以理解,输入的图像的光谱范围越广,颜色通道的数量越多,可以使得第一子模型10获取拍摄场景中更多的光照信息。本申请实施例中,也可以采用其他图像作为第一子模型10的输入图像,并且,输入的图像的颜色通道的数量可以根据需要进行调整。本申请实施例中,对于第一子模型10的输入图像,不做具体限定。
可以理解的是,虽然图3未示出,但是实际中第一子模型10还可以包括输入层,用于支持第一子模型10输入多光谱图像。
具体地,编码器10A接收来自输入层的多光谱图像,可以对输入的多光谱图像进行特征提取。卷积层11可以采用大小为3×3的卷积核,用于对输入图像提取特征,进行卷积运算。
最大池化层12可以对来自卷积层11的输入图像进下采样,该下采样可以为最大值下采样。在一种可能的实现中,也可以也可以采用平均值下采样。本申请实施例中,对于下采样的方式,不做具体限定。
作为示例,最大池化层12可以对输入图像进行三次下采样,提取特征,从而去除输入图像中的冗余信息。
解码器10B用于从编码器10A传输的特征中获取多光谱图像的光照图,光照图包括光照信息。上卷积层13用于对来自最大池化层22的输入图像进行四次上卷积操作,经过四次上卷积操作后输出的图像的分辨率恢复到原始输入第一网络的输入图像的空间分辨率512*512。
跳跃连接层15,在上卷积层13中各层执行上采样的过程中,用于把最大池化层12中的低层特征图,传递给上卷积层13中的对应高层,使得高层和低层的特征信息可以直接进行融合,然后,再执行下一次的上卷积操作。并且最大池化层12和上卷积层13中的两个对应层的图像的分辨率相同。这些跳跃连接用于提供更丰富的上下文信息和细节信息,可以提高像素级的图像分割的准确性。
卷积层14用于对来自上卷积层13的输入图像进行卷积操作,输出的图像为透射对象的光照图和反射对象的光照图,并且透射对象的光照图和反射对象的光照图的分辨率为512*512,透射对象的光照图和反射对象的光照图的颜色通道数量分别为8个。
可以理解的是,虽然图3未示出,但是实际中第一子模型10的还可以包括输出层,用于支持第一子模型10输出第一子模型10的输入图像的透射对象的光照图和反射对象的光照图。
此外,作为示例,参照图3所示,为本申请实施例提供的一种第二子模型的架构示意图。如图3所示,第二子模型20也是一个U-Net结构的网络。
具体地,第二子模型20包括编码器20A、解码器20B和全连接层25。其中,编码器20A包括卷积(convelution,conv)层21和最大池化(max-pooling)层22。解码器10B包括上卷积(up-convelution)层23以及卷积(conv)层24。
作为一种示例,如图所示,第二子模型20的输入图像为第一子模型的输出的多光谱图像的透射对象的光照图、反射对象的光照图、以及由多光谱图像转变的RGB图像的拼接图像,输入图像的分辨率为512*512。此RGB图像即为需要去反光的图像。
第二子模型20用于根据输入图像,生成RGB图像的反射对象的反射图像和透射对象的透射图像。
可以理解,此RGB图像也可以为其他类型的图像,并且,这些其他类型的图像的拍摄内容和相同光谱范围内的光照图与多光谱图像对应相同。本申请实施例中,对于需要去反光的图像不做具体限定。
可以理解的是,虽然图3未示出,但是实际中第二子模型20还可以包括输出层,用于接收第一子模型10输出的图像和上述由多光谱图像转变的RGB图像。
具体地,编码器20A接收来自输入层的拼接图像,可以对输入的拼接图像进行特征提取。卷积层21采用3×3的卷积核,用于对输入的各图像进行卷积运算。
最大池化层22可以对来自卷积层21的输入图像进下采样,该下采样可以为最大值下采样。在一种可能的实现中,也可以也可以采用平均值下采样。本申请实施例中,对于下采样的方式,不做具体限定。
作为示例,最大池化层12可以对来自卷积层21的输入图像进行三次下采样,从而去除输入图像中的冗余信息。
解码器20B用于根据编码器20A输入的特征,生成RGB图像的透射对象的透射图像,和反射对象的反射图像。上卷积层23用于对来自最大池化层22的输入图像进行三次上卷积操作,经过三次上卷积操作后输出的图像的分辨率恢复到原始输入的输入图像的空间分辨率512*512。
跳跃连接层25,在上卷积层23中各层执行上采样的过程中,用于把最大池化层22中的低层特征图,传递给上卷积层23中的对应高层,使得高层和低层的特征信息可以直接进行融合,然后,再执行下一次的上卷积操作。并且最大池化层22和上卷积层23中的两个对应层的图像的分辨率相同。这些跳跃连接用于提供更丰富的上下文信息和细节信息,可以提高像素级的图像分割的准确性。
卷积层24用于对来自上卷积层23的输入图像进行卷积操作,输出的图像为RGB图像的透射对象的透射图像和RGB图像的反射对象的反射图像,并且透射图像和反射图像的分辨率为512*512。
可以理解的是,虽然图3未示出,但是实际中第二子模型20的还可以包括输出层,用于支持第二子模型20输出RGB图像的透射对象的透射图像和RGB图像的反射对象的反射图像,也即RGB图像的透明玻璃前侧物体的反射图像,和透明玻璃后侧物体的透射图像,其中,RGB图像的透明玻璃后侧物体的透射图像即为对RGB图像进行去反光后的图像。
下面将基于图4,介绍本申请实施例中的去反光方法的流程。
图4所示的方法可以由图6所示的终端设备,比如手机执行。图4所示的图像去反光的方法包括步骤S410至步骤S500,下面分别对步骤S410至步骤S500进行详细的描述。
需要说明的是,本申请实施例由于用户透过透明玻璃对后侧物体进行拍摄,透明玻璃存在的镜面反射光与透射光会混叠在一起,获取的后侧物体的图像中会存在反光区域,反光区域中包括前侧物体的图像信息,导致获取的后侧物体的图像的部分细节信息被掩盖。图像去反光的目的在于,在拍摄的后侧物体的图像中,去除透明玻璃前侧物体的反射图像的过程。
具体的图像去反光的方法,可以包括:
S410,对拍摄场景进行检测。
可选地,如图5A所示,用户点击手机上的相机应用程序(application,APP),终端设备将如图5B所示,响应于用户的操作,显示拍照界面。然后,终端设备将对拍摄场景进行检测。
S420,识别拍摄场景为去反光场景。
在一些可能的实现中,用户点击手机上的相机应用程序后,终端设备可以调用摄像头获取预览图像。终端设备可以基于预存的拍摄场景的类别信息,自动识别预览图像的拍摄场景的类别信息;并进一步识别预览图像的拍摄场景为去反光场景。该去反光场景中存在透明玻璃等会产生镜面反射的材质。
示例性地,拍摄场景的类别信息可以包括但不限于:绿植场景、人像场景、室内场景或者室外场景等。
可选地,可以通过大量样本数据训练得到场景分类神经网络模型;场景分类神经网络模型可以识别当前帧图像的拍摄场景的类别信息,并输出当前帧图像对应的场景标签。
进一步的,可以通过大量样本数据学习得到二分类神经网络模型,通过二分类神经网络模型可以识别拍摄场景为去反光场景。例如,样本数据可以包括第一样本图像与第二样本图像,第一种样本图像为存在反光区域的图像,第二种样本图像为不存在反光区域的图像。将第一种样本图像和第二种样本图像分别输入二分类神经网络模型进行训练,使得二分类神经网络模型可以基于输入的数据,获输出对应的存在反光的标签,和不存在反光的标签。
S430,驱动多光谱摄像头获取多光谱图像。
可以理解,多光谱摄像头可捕捉各个谱段的图像信息,每个谱段的光强取决于环境光谱分布及物体对于不同光谱的反射率。在去反光场景中,通常透明玻璃两侧的光谱成分不一致,使用多光谱图像可以隐式地估计透明玻璃两侧光谱成分的差异,进而可以提升去反光算法的效果。
可以理解,采用多光谱摄像头获取多光谱图像,只是一种实例,在一种可能的实现中,终端设备还可以采用其他的摄像头获取其他类型的图像,并且,此图像的颜色通道的数量,大于RGB图像的颜色通道的数量,此图像在相同波长范围内的光强和RGB图像相同。本申请实施例中,对于步骤S430中获取的图像的类型,不作具体限定。
S440,保存多光谱图像。
可以理解,多光谱图像可以保存在手机中,在用户确定进入去反光流程后,可以输入去反光模型,进行去反光操作。
S450,根据用户的拍摄操作,获取并显示RGB图像。
可以理解,步骤S430和步骤S450之间的先后顺序没有限定,只要两个步骤在同一个拍摄场景下,同一个曝光参数下执行即可,可以使得多光谱图像和RGB图像的亮度相同。S460,提示用户是否进入去反光流程。
如图5C所示,终端设备可以在手机的屏幕上提示用户“是否进入去反光流程”。可以理解,终端设备可以在用户点击手机上的相机应用程序后,提示用户是否进入去反光流程。终端设备也可以在步骤S420中,识别出拍摄场景为去反光场景后,提示用户是否进入去反光流程。终端设备也可以在步骤S450后,提示用户是否进入去反光流程。本申请实施例中,对于提示用户是否进入去反光流程的时机,不做具体限定。
S470,判断用户是否选择进入去反光流程。
如果否,则转至步骤S480,基于用户选择不进入去反光流程,结束整个拍摄流程。
如果是,则转至步骤S490,基于用户选择进入去反光流程,启动去反光模型。
S480,基于用户选择不进入去反光流程,结束整个拍摄流程。
可以理解,如图5D所示,如果终端设备检测到,用户选择不进入去反光流程,那么终端设备可以结束整个拍摄流程。
S490,基于用户选择进入去反光流程,启动去反光模型。
可以理解,如果终端设备检测到,用户选择进入去反光流程,那么终端设备将通过上述训练后的去反光模型,对RGB图像进行去反光操作。
S500,获取并显示去反光后的图像。
可以理解,终端设备可以将根据训练后的去反光模型,获取的去反光图像,也即透明玻璃后侧物体的透射图像,显示在屏幕上。
上述去反光方法,采用训练后的去反光模型,在去反光场景中,根据用户的选择,对RGB摄像头拍摄的RGB图像,进行去反光操作,可以获取精确的去反光图像。
下面基于图6,对终端设备的硬件结构进行介绍。
参见图6所示的本申请实施例提供的手机100的结构示意图。该手机100可以为上述实施例提及的终端设备。
如图6所示,手机100可以包括处理器110,外部存储器接口120,内部存储器121,接口模块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等。
可以理解的是,本申请实施例示意的结构并不构成对手机100的具体限定。在本申请另一些实施例中,手机100可以包括比图示更多或更少的部件,或者组合某些部件,或者拆分某些部件,或者不同的部件布置。图示的部件可以以硬件,软件或软件和硬件的组合实现。
处理器110可以包括一个或多个处理单元,例如:处理器110可以包括应用处理器(application processor,AP),调制解调处理器,图形处理器(graphics processingunit,GPU),图像信号处理器(image signal processor,ISP),控制器,视频编解码器,数字信号处理器(digital signal processor,DSP),基带处理器,和/或神经网络处理器(neural network processing unit,NPU)等。
控制器可以根据指令操作码和时序信号,产生操作控制信号,完成取指令和执行指令的控制。
在一些实施例中,处理器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)接口等。
充电管理模块140用于从充电器接收充电输入。其中,充电器可以是无线充电器,也可以是有线充电器。在一些有线充电的实施例中,充电管理模块140可以通过USB接口130接收有线充电器的充电输入。在一些无线充电的实施例中,充电管理模块140可以通过手机100的无线充电线圈接收无线充电输入。充电管理模块140为电池142充电的同时,还可以通过电源管理模块141为电子设备供电。
电源管理模块141用于连接电池142,充电管理模块140与处理器110。电源管理模块141接收电池142和/或充电管理模块140的输入,为处理器110,内部存储器121,显示屏194,摄像头193,和无线通信模块160等供电。
手机100的无线通信功能可以通过天线1,天线2,移动通信模块150,无线通信模块160,调制解调处理器以及基带处理器等实现。
天线1和天线2用于发射和接收电磁波信号。手机100中的每个天线可用于覆盖单个或多个通信频带。不同的天线还可以复用,以提高天线的利用率。例如:可以将天线1复用为无线局域网的分集天线。在另外一些实施例中,天线可以和调谐开关结合使用。
移动通信模块150可以提供应用在手机100上的包括2G/3G/4G/5G等无线通信的解决方案。移动通信模块150可以包括至少一个滤波器,开关,功率放大器,低噪声放大器(lownoise amplifier,LNA)等。移动通信模块150可以由天线1接收电磁波,并对接收的电磁波进行滤波,放大等处理,传送至调制解调处理器进行解调。移动通信模块150还可以对经调制解调处理器调制后的信号放大,经天线1转为电磁波辐射出去。
无线通信模块160可以提供应用在手机100上的包括无线局域网(wireless localarea networks,WLAN),如无线保真(wireless fidelity,Wi Fi)网络,蓝牙(blue tooth,BT),全球导航卫星系统(global navigation satellite system,GNSS),调频(frequencymodulation,FM),近距离无线通信技术(near field communication,NFC),红外技术(infrared,IR)等无线通信的解决方案。
在一些实施例中,手机100的天线1和移动通信模块150耦合,天线2和无线通信模块160耦合,使得手机100可以通过无线通信技术与网络以及其他设备通信。无线通信技术可以包括全球移动通讯系统(global system for mobile communications,GSM),通用分组无线服务(general packet radio service,GPRS),码分多址接入(code divisionmultiple access,CDMA),宽带码分多址(wideband code division multiple access,WCDMA),时分码分多址(time division code division multiple access,TDSCDMA),长期演进(long term evolution,LTE),BT,GNSS,WLAN,NFC,FM,和/或IR技术等。GNSS可以包括全球卫星定位系统(global positioning system,GPS),全球导航卫星系统(globalnavigation satellite system,GLONASS),北斗卫星导航系统(beidou navigationsatellite system,BDS),准天顶卫星系统(quasi zenith satellite system,QZSS)和/或星基增强系统(satellite based augmentation systems,SBAS)。
手机100通过GPU,显示屏194,以及应用处理器等实现显示功能。GPU为图像处理的微处理器,连接显示屏194和应用处理器。GPU用于执行数学和几何计算,用于图形渲染。处理器110可包括一个或多个GPU,其执行程序指令以生成或改变显示信息。
显示屏194用于显示图像,视频等。显示屏194包括显示面板。显示面板可以采用液晶显示屏(liquid crystal display,LCD),有机发光二极管(organic light emittingdiode,OLED),有源矩阵有机发光二极体或主动矩阵有机发光二极体(active matrixorganic light emittingdiode,AMOLED),柔性发光二极管(flex light emitting diode,FLED),量子点发光二极管(quantum dot light emitting diodes,QLED)等。
摄像头193用于捕获静态图像或视频。物体通过镜头生成光学图像透射到感光元件。感光元件可以是电荷耦合器件(charge coupled device,CCD)或互补金属氧化物半导体(complementary metal oxide semiconductor,CMOS)光电晶体管。
外部存储器接口120可以用于连接外部存储卡,例如Micro SD卡,实现扩展手机100的存储能力。外部存储卡通过外部存储器接口120与处理器110通信,实现数据存储功能。例如将音乐,视频等文件保存在外部存储卡中。
内部存储器121可以用于存储计算机可执行程序代码,可执行程序代码包括指令。内部存储器121可以包括存储程序区和存储数据区。其中,存储程序区可存储操作系统,至少一个功能所需的应用程序(比如声音播放功能,图像播放功能等)等。存储数据区可存储手机100使用过程中所创建的数据(比如音频数据,电话本等)等。
手机100可以通过音频模块170,扬声器170A,受话器170B,麦克风170C,耳机接口170D,以及应用处理器等实现音频功能。例如音乐播放,录音等。
压力传感器180A用于感受压力信号,可以将压力信号转换成电信号。在一些实施例中,压力传感器180A可以设置于显示屏194。压力传感器180A的种类很多,如电阻式压力传感器,电感式压力传感器,电容式压力传感器等。
陀螺仪传感器180B可以用于确定手机100的运动姿态。在一些实施例中,可以通过陀螺仪传感器180B确定手机100围绕三个轴(即,x,y和z轴)的角速度。陀螺仪传感器180B可以用于拍摄防抖。
气压传感器180C用于测量气压。在一些实施例中,手机100通过气压传感器180C测得的气压值计算海拔高度,辅助定位和导航。
磁传感器180D包括霍尔传感器。手机100可以利用磁传感器180D检测翻盖皮套的开合。在一些实施例中,当手机100是翻盖机时,手机100可以根据磁传感器180D检测翻盖的开合。
加速度传感器180E可检测手机100在各个方向上(一般为三轴)加速度的大小。当手机100静止时可检测出重力的大小及方向。还可以用于识别电子设备姿态,应用于横竖屏切换,计步器等应用。
距离传感器180F,用于测量距离。手机100可以通过红外或激光测量距离。在一些实施例中,拍摄场景,手机100可以利用距离传感器180F测距以实现快速对焦。
接近光传感器180G可以包括例如发光二极管(LED)和光检测器,例如光电二极管。发光二极管可以是红外发光二极管。手机100通过发光二极管向外发射红外光。手机100使用光电二极管检测来自附近物体的红外反射光。
环境光传感器180L用于感知环境光亮度。手机100可以根据感知的环境光亮度自适应调节显示屏194亮度。环境光传感器180L也可用于拍照时自动调节白平衡。环境光传感器180L还可以与接近光传感器180G配合,检测手机100是否在口袋里,以防误触。
指纹传感器180H用于采集指纹。手机100可以利用采集的指纹特性实现指纹解锁,访问应用锁,指纹拍照,指纹接听来电等。
温度传感器180J用于检测温度。在一些实施例中,手机100利用温度传感器180J检测的温度,执行温度处理策略。例如,当温度传感器180J上报的温度超过阈值,手机100执行降低位于温度传感器180J附近的处理器的性能,以便降低功耗实施热保护。
触摸传感器180K,也称“触控器件”。触摸传感器180K可以设置于显示屏194,由触摸传感器180K与显示屏194组成触摸屏,也称“触控屏”。触摸传感器180K用于检测作用于其上或附近的触摸操作。
骨传导传感器180M可以获取振动信号。在一些实施例中,骨传导传感器180M可以获取人体声部振动骨块的振动信号。骨传导传感器180M也可以接触人体脉搏,接收血压跳动信号。
按键190包括开机键,音量键等。按键190可以是机械按键。也可以是触摸式按键。手机100可以接收按键输入,产生与手机100的用户设置以及功能控制有关的键信号输入。
马达191可以产生振动提示。马达191可以用于来电振动提示,也可以用于触摸振动反馈。例如,作用于不同应用(例如拍照,音频播放等)的触摸操作,可以对应不同的振动反馈效果。作用于显示屏194不同区域的触摸操作,马达191也可对应不同的振动反馈效果。
指示器192可以是指示灯,可以用于指示充电状态,电量变化,也可以用于指示消息,未接来电,通知等。
SIM卡接口195用于连接SIM卡。SIM卡可以通过插入SIM卡接口195,或从SIM卡接口195拔出,实现和手机100的接触和分离。
上文详细描述了手机100的硬件系统,下面介绍手机100的软件系统。
图7是本申请实施例提供的手机100的软件系统的示意图。
如图7所示,系统架构中可以包括应用层210、应用框架层220、硬件抽象层230、驱
动层240以及硬件层250。
应用层210可以包括相机应用程序等应用程序。
应用框架层220为应用层210的应用程序提供应用程序编程接口(applicationprogramming interface,API)和编程框架;应用框架层220可以包括一些预定义的函数。
例如,应用框架层220可以包括相机访问接口;相机访问接口中可以包括相机管理与相机设备。其中,相机管理可以用于提供管理相机的访问接口;相机设备可以用于提供访问相机的接口。
硬件抽象层230用于将硬件抽象化。比如,硬件抽象层230可以包硬件抽象层以及其他硬件设备抽象层;相机硬件抽象层可以调用相机算法库中的算法。例如,相机算法库中可以包括用于图像去反光的软件算法。
驱动层240用于为不同硬件设备提供驱动。例如,驱动层可以包括相机设备驱动;数字信号处理器驱动、图形处理器驱动或者中央处理器驱动。
硬件层250可以包括相机设备以及其他硬件设备。
例如,硬件层250包括相机设备、数字信号处理器、图形处理器或者中央处理器;示例性地,相机设备中可以包括图像信号处理器,图像信号处理器可以用于图像处理。
示例性地,本申请实施例提供的图像去反光模型的训练方法可以在数字信号处理器、图形处理器或者中央处理器中执行;或者手机100的其他算例硬件中执行。
可以理解,本申请实施例示出的终端设备的结构并不构成对终端设备的具体限定。在本申请另一些实施例中,终端设备可以包括比图示更多或更少的部件,或者组合某些部件,或者拆分某些部件,或者不同的部件布置。图示的部件可以以硬件,软件或软件和硬件的组合实现。
本申请公开的机制的各实施例可以被实现在硬件、软件、固件或这些实现方法的组合中。本申请的实施例可实现为在可编程系统上执行的计算机程序或程序代码,该可编程系统包括至少一个处理器、存储系统(包括易失性和非易失性存储器和/或存储元件)、至少一个输入设备以及至少一个输出设备。
程序代码可以用高级程序化语言或面向对象的编程语言来实现,以便与处理系统通信。在需要时,也可用汇编语言或机器语言来实现程序代码。事实上,本申请中描述的机制不限于任何特定编程语言的范围。在任一情形下,该语言可以是编译语言或解释语言。
在一些情况下,所公开的实施例可以以硬件、固件、软件或其任何组合来实现。所公开的实施例还可以被实现为由一个或多个暂时或非暂时性机器可读(例如,计算机可读)存储介质承载或存储在其上的指令,其可以由一个或多个处理器读取和执行。例如,指令可以通过网络或通过其他计算机可读介质分发。因此,机器可读介质可以包括用于以机器(例如,计算机)可读的形式存储或传输信息的任何机制,包括但不限于,软盘、光盘、光碟、磁光盘、只读存储器(read only memory,ROM)、随机存取存储器(random access memory,RAM)、可擦除可编程只读存储器(erasable programmable read only memory,EPROM)、电可擦除可编程只读存储器(electrically erasable programmable read only memory,EEPROM)、磁卡或光卡、闪存、或用于利用因特网以电、光、声或其他形式的传播信号来传输信息(例如,载波、红外信号数字信号等)的有形的机器可读存储器。因此,机器可读介质包括适合于以机器,例如,计算机可读的形式存储或传输电子指令或信息的任何类型的机器可读介质。
在附图中,可以以特定布置和/或顺序示出一些结构或方法特征。然而,应该理解,可能不需要这样的特定布置和/或排序。而是,在一些实施例中,这些特征可以以不同于说明性附图中所示的方式和/或顺序来布置。另外,在特定图中包括结构或方法特征并不意味着暗示在所有实施例中都需要这样的特征,并且在一些实施例中,可以不包括这些特征或者可以与其他特征组合。
需要说明的是,本申请各设备实施例中提到的各单元/模块都是逻辑单元/模块,在物理上,一个逻辑单元/模块可以是一个物理单元/模块,也可以是一个物理单元/模块的一部分,还可以以多个物理单元/模块的组合实现,这些逻辑单元/模块本身的物理实现方式并不是最重要的,这些逻辑单元/模块所实现的功能的组合才是解决本申请所提出的技术问题的关键。此外,为了突出本申请的创新部分,本申请上述各设备实施例并没有将与解决本申请所提出的技术问题关系不太密切的单元/模块引入,这并不表明上述设备实施例并不存在其它的单元/模块。
虽然通过参照本发明的某些优选实施例,已经对本发明进行了图示和描述,但本领域的普通技术人员应该明白,可以在形式上和细节上对其作各种改变,而不偏离本发明的范围。
Claims (19)
1.一种去反光模型的训练方法,其特征在于,所述模型包括第一子模型和第二子模型;并且,
所述方法包括:
基于第一训练数据和第一目标数据训练所述第一子模型,得到训练后的第一子模型,其中,
所述第一训练数据包括第一样本图像,所述第一样本图像的拍摄内容包括反光对象、由所述反光对象反射成像的反射对象、由所述反光对象透射成像的透射对象,并且,
所述第一目标数据包括所述第一样本图像的反射对象的光照图和所述第一样本图像的透射对象的光照图,所述第一样本图像的反射对象的光照图包括所述反射对象的光强,所述第一样本图像的透射对象的光照图包括所述透射对象的光强;
基于第二训练数据和第二目标数据训练所述第二子模型,得到训练后的第二子模型,其中,
所述第二训练数据包括第二样本图像和所述第一目标数据,所述第二目标数据包括所述第二样本图像的反射对象的反射图像和所述第二样本图像的透射对象的透射图像,并且,所述第二样本图像的拍摄内容与所述第一样本图像的拍摄内容相同,所述第二样本图像在第一波长范围内的光强与所述第一样本图像在第一波长范围内的光强相同;
所述第一样本图像基于下列公式得到:
其中,M表示第一样本图像,ω表示透射系数,ω的取值范围为(0.5,1),L表示光照图,R表示反射率图,t表示透射,r表示反射,Lt表示透射对象的光照图,Lr表示反射对象的光照图,Rt表示透射对象的反射率图,Rr表示反射对象的反射率图,k表示模糊核,ωLtRt为透射对象的透射图像,(1-ω)LrRr为反射对象的反射图像。
2.根据权利要求1所述的方法,其特征在于,所述反光对象包括透明玻璃、透明塑料。
3.根据权利要求1所述的方法,其特征在于,所述第一样本图像的波长范围包括所述第二样本图像的波长范围,所述第一样本图像的颜色通道的数量大于所述第二样本图像的颜色通道的数量。
4.根据权利要求1所述的方法,其特征在于,所述第一样本图像为多光谱图像,所述第二样本图像为RGB图像。
5.根据权利要求1所述的方法,其特征在于,通过以下方式获取第一样本图像的反射图像和第一样本图像的透射图像:
获取所述反射对象的反射率图和所述反射对象的光照图;
基于所述反射对象的反射率图和所述反射对象的光照图的乘积,得到所述第一样本图像的反射对象的反射图像;
获取所述透射对象的反射率图和所述透射对象的光照图;
基于所述透射对象的反射率图和所述透射对象的光照图的乘积,得到所述第一样本图像的透射对象的透射图像。
6.根据权利要求1所述的方法,其特征在于,所述第二样本图像、所述第二样本图像的反射对象的反射图像和所述第二样本图像的透射对象的透射图像通过下述方法获取:
基于颜色匹配函数算法,将所述第一样本图像颜色通道映射为所述第二样本图像的颜色通道,得到所述第二样本图像;
基于颜色匹配函数算法,将所述第一样本图像的反射对象的反射图像的颜色通道映射为所述第二样本图像的反射对象的反射图像的颜色通道,得到所述第二样本图像的反射对象的反射图像;
基于颜色匹配函数算法,将所述第一样本图像的透射对象的透射图像的颜色通道映射为所述第二样本图像的透射对象的透射图像的颜色通道,得到所述第二样本图像的透射对象的透射图像。
7.根据权利要求1所述的方法,其特征在于,所述模型为深度神经网络模型。
8.一种去反光模型,其特征在于,所述去反光模型采用权利要求1至7中任一项所述的方法进行训练,所述去反光模型包括第一子模型和第二子模型;其中,
所述第一子模型用于生成待处理的第一图像的光照图,其中,所述第一图像的拍摄内容包括反光对象、由所述反光对象反射成像的反射对象和由所述反光对象透射成像的透射对象,所述第一图像的光照图包括所述第一图像的反射对象的光照图和所述第一图像的透射对象的光照图,所述第一图像的反射对象的光照图包括所述反射对象的光强,所述第一图像的透射对象的光照图包括所述透射对象的光强;
所述第二子模型用于基于所述第一图像和所述第一图像的光照图,对所述第一图像进行去反光处理得到第二图像,其中,所述第二图像不包括所述反射对象。
9.根据权利要求8所述的模型,其特征在于,所述反光对象包括透明玻璃、透明塑料。
10.根据权利要求8所述的模型,其特征在于,所述生成待处理的第一图像的光照图,包括:
基于所述第一图像的参照图像,得到所述第一图像的光照图,其中,所述第一图像的参照图像的拍摄内容与所述第一图像的拍摄内容相同,所述第一图像的参照图像在第一波长范围内的光强与所述第一图像的第一波长范围内的光强相同。
11.根据权利要求10所述的模型,其特征在于,所述第一图像的参照图像的波长范围包括所述第一图像的波长范围,所述第一图像的参照图像的颜色通道的数量大于所述第一图像的颜色通道的数量。
12.根据权利要求11所述的模型,其特征在于,所述第一图像的参照图像为采用多光谱摄像头拍摄的图像,所述第一图像为采用RGB摄像头拍摄的图像。
13.根据权利要求8所述的模型,其特征在于,所述模型为深度神经网络模型。
14.一种去反光方法,应用于电子设备,其特征在于,所述方法应用于权利要求8至13中任一项所述的模型,所述方法包括:
获取待处理的第一图像,其中所述第一图像的拍摄内容包括反光对象和由所述反光对象反射成像的反射对象;
基于所述第一图像的光照图,对所述第一图像进行去反光处理得到第二图像,其中,所述第一图像的光照图包括所述第一图像的反射对象的光照图,所述反射对象的光照图包括所述第一图像的反射对象的光强,所述第二图像不包括所述反射对象。
15.根据权利要求14所述的方法,其特征在于,所述反光对象包括透明玻璃、透明塑料。
16.根据权利要求14所述的方法,其特征在于,所述第一图像的拍摄内容还包括由所述反光对象透射成像的透射对象,所述第一图像的光照图还包括所述第一图像的透射对象的光照图,所述透射对象的光照图包括所述第一图像的透射对象的光强,并且所述第二图像包括所述透射对象。
17.根据权利要求16所述的方法,其特征在于,所述基于所述第一图像的光照图,对所述第一图像进行去反光处理得到第二图像,包括:
基于所述第一图像的参照图像,得到所述第一图像的光照图,所述第一图像的参照图像的拍摄内容与所述第一图像的拍摄内容相同,且所述第一图像的参照图像在第一波长范围内的光强,与所述第一图像在第一波长范围内的光强相同;
基于所述第一图像和所述第一图像的光照图,得到所述第二图像。
18.一种计算机可读存储介质,其特征在于,所述可读存储介质上存储有指令,所述指令在电子设备上执行时使所述电子设备实现权利要求1至7中任一项所述的方法,以及权利要求14至17中任一项所述的方法。
19.一种电子设备,其特征在于,包括:
存储器,用于存储由电子设备的一个或多个处理器执行的指令;
以及处理器,是所述电子设备的处理器之一,用于执行所述存储器中存储的指令以实现权利要求1至7中任一项所述的方法,以及权利要求14至17中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311752567.XA CN117422646B (zh) | 2023-12-19 | 2023-12-19 | 去反光模型的训练方法、去反光模型和去反光方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311752567.XA CN117422646B (zh) | 2023-12-19 | 2023-12-19 | 去反光模型的训练方法、去反光模型和去反光方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN117422646A CN117422646A (zh) | 2024-01-19 |
CN117422646B true CN117422646B (zh) | 2024-05-10 |
Family
ID=89525222
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311752567.XA Active CN117422646B (zh) | 2023-12-19 | 2023-12-19 | 去反光模型的训练方法、去反光模型和去反光方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117422646B (zh) |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2021174687A1 (zh) * | 2020-03-04 | 2021-09-10 | 深圳市商汤科技有限公司 | 去除图像中的反光的方法及装置、电子设备和存储介质 |
CN115358937A (zh) * | 2022-07-18 | 2022-11-18 | 荣耀终端有限公司 | 图像去反光方法、介质及电子设备 |
CN116128739A (zh) * | 2021-11-10 | 2023-05-16 | 荣耀终端有限公司 | 下采样模型的训练方法、图像处理方法及装置 |
CN116258633A (zh) * | 2021-12-07 | 2023-06-13 | 荣耀终端有限公司 | 图像去反光的方法、图像去反光模型的训练方法与装置 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20230217088A1 (en) * | 2022-01-03 | 2023-07-06 | Samsung Electronics Co., Ltd. | Image acquisition apparatus and electronic apparatus including the same |
-
2023
- 2023-12-19 CN CN202311752567.XA patent/CN117422646B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2021174687A1 (zh) * | 2020-03-04 | 2021-09-10 | 深圳市商汤科技有限公司 | 去除图像中的反光的方法及装置、电子设备和存储介质 |
CN116128739A (zh) * | 2021-11-10 | 2023-05-16 | 荣耀终端有限公司 | 下采样模型的训练方法、图像处理方法及装置 |
CN116258633A (zh) * | 2021-12-07 | 2023-06-13 | 荣耀终端有限公司 | 图像去反光的方法、图像去反光模型的训练方法与装置 |
CN115358937A (zh) * | 2022-07-18 | 2022-11-18 | 荣耀终端有限公司 | 图像去反光方法、介质及电子设备 |
Non-Patent Citations (1)
Title |
---|
雾天退化模型参数估计与CUDA设计;余春艳;林晖翔;徐小丹;叶鑫焱;;计算机辅助设计与图形学学报;20180215(02);第139-147页 * |
Also Published As
Publication number | Publication date |
---|---|
CN117422646A (zh) | 2024-01-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN113132620B (zh) | 一种图像拍摄方法及相关装置 | |
US10957022B2 (en) | Electronic device for processing image acquired by using camera and method for operating the same | |
WO2021052232A1 (zh) | 一种延时摄影的拍摄方法及设备 | |
CN114092364B (zh) | 图像处理方法及其相关设备 | |
KR102535607B1 (ko) | 사진 촬영 중 이미지를 표시하는 방법 및 전자 장치 | |
CN112529775A (zh) | 一种图像处理的方法和装置 | |
CN115601244B (zh) | 图像处理方法、装置和电子设备 | |
WO2020102978A1 (zh) | 图像处理方法及电子设备 | |
WO2021160001A1 (zh) | 图像获取方法和装置 | |
CN113973173B (zh) | 图像合成方法和电子设备 | |
CN113542580B (zh) | 去除眼镜光斑的方法、装置及电子设备 | |
WO2023284715A1 (zh) | 一种物体重建方法以及相关设备 | |
US20240119566A1 (en) | Image processing method and apparatus, and electronic device | |
CN106210517A (zh) | 一种图像数据的处理方法、装置和移动终端 | |
CN114095666A (zh) | 拍照方法、电子设备和计算机可读存储介质 | |
CN115550570A (zh) | 图像处理方法与电子设备 | |
CN117422646B (zh) | 去反光模型的训练方法、去反光模型和去反光方法 | |
CN115358937B (zh) | 图像去反光方法、介质及电子设备 | |
CN116437198B (zh) | 图像处理方法与电子设备 | |
CN115631250B (zh) | 图像处理方法与电子设备 | |
CN115706869A (zh) | 终端的图像处理方法、装置和终端设备 | |
WO2021154807A1 (en) | Sensor prioritization for composite image capture | |
CN115705663B (zh) | 图像处理方法与电子设备 | |
CN115526786B (zh) | 图像处理方法及其相关设备 | |
CN114363693B (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 |