CN117692788B - 一种图像处理方法及电子设备 - Google Patents
一种图像处理方法及电子设备 Download PDFInfo
- Publication number
- CN117692788B CN117692788B CN202311119808.7A CN202311119808A CN117692788B CN 117692788 B CN117692788 B CN 117692788B CN 202311119808 A CN202311119808 A CN 202311119808A CN 117692788 B CN117692788 B CN 117692788B
- Authority
- CN
- China
- Prior art keywords
- image
- pixel
- color
- color cast
- cast
- 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 18
- 239000011159 matrix material Substances 0.000 claims abstract description 76
- 238000012545 processing Methods 0.000 claims abstract description 52
- 238000000034 method Methods 0.000 claims abstract description 46
- 230000002146 bilateral effect Effects 0.000 claims abstract description 36
- 238000012937 correction Methods 0.000 claims abstract description 34
- 230000004044 response Effects 0.000 claims description 8
- 238000004590 computer program Methods 0.000 claims description 7
- 230000008569 process Effects 0.000 description 23
- 230000006870 function Effects 0.000 description 12
- 238000010586 diagram Methods 0.000 description 7
- 238000013528 artificial neural network Methods 0.000 description 6
- 239000003086 colorant Substances 0.000 description 6
- 230000003993 interaction Effects 0.000 description 4
- 230000008859 change Effects 0.000 description 3
- 238000004891 communication Methods 0.000 description 3
- 230000008878 coupling Effects 0.000 description 3
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 3
- 238000003384 imaging method Methods 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 3
- 230000003595 spectral effect Effects 0.000 description 3
- 229920001621 AMOLED Polymers 0.000 description 2
- 238000006243 chemical reaction Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 238000005286 illumination Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000001537 neural effect Effects 0.000 description 2
- WFKWXMTUELFFGS-UHFFFAOYSA-N tungsten Chemical compound [W] WFKWXMTUELFFGS-UHFFFAOYSA-N 0.000 description 2
- 229910052721 tungsten Inorganic materials 0.000 description 2
- 239000010937 tungsten Substances 0.000 description 2
- 230000001133 acceleration Effects 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000013529 biological neural network Methods 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 210000000988 bone and bone Anatomy 0.000 description 1
- 210000004556 brain Anatomy 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 230000000295 complement effect Effects 0.000 description 1
- 239000013078 crystal Substances 0.000 description 1
- 230000000593 degrading effect Effects 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 238000005259 measurement 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
- 210000002569 neuron Anatomy 0.000 description 1
- 238000011176 pooling Methods 0.000 description 1
- 238000007781 pre-processing Methods 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 238000002310 reflectometry Methods 0.000 description 1
- 238000009877 rendering Methods 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
- 238000010792 warming Methods 0.000 description 1
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/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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N23/00—Cameras or camera modules comprising electronic image sensors; Control thereof
- H04N23/60—Control of cameras or camera modules
- H04N23/62—Control of parameters via user interfaces
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N23/00—Cameras or camera modules comprising electronic image sensors; Control thereof
- H04N23/60—Control of cameras or camera modules
- H04N23/63—Control of cameras or camera modules by using electronic viewfinders
- H04N23/631—Graphical user interfaces [GUI] specially adapted for controlling image capture or setting capture parameters
- H04N23/632—Graphical user interfaces [GUI] specially adapted for controlling image capture or setting capture parameters for displaying or modifying preview images prior to image capturing, e.g. variety of image resolutions or capturing parameters
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N23/00—Cameras or camera modules comprising electronic image sensors; Control thereof
- H04N23/80—Camera processing pipelines; Components thereof
- H04N23/84—Camera processing pipelines; Components thereof for processing colour signals
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N23/00—Cameras or camera modules comprising electronic image sensors; Control thereof
- H04N23/80—Camera processing pipelines; Components thereof
- H04N23/84—Camera processing pipelines; Components thereof for processing colour signals
- H04N23/88—Camera processing pipelines; Components thereof for processing colour signals for colour balance, e.g. white-balance circuits or colour temperature control
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Physics & Mathematics (AREA)
- Computational Linguistics (AREA)
- Molecular Biology (AREA)
- Artificial Intelligence (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- Health & Medical Sciences (AREA)
- Data Mining & Analysis (AREA)
- Evolutionary Computation (AREA)
- General Health & Medical Sciences (AREA)
- Life Sciences & Earth Sciences (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Human Computer Interaction (AREA)
- Color Image Communication Systems (AREA)
Abstract
本申请提供一种图像处理方法及电子设备,该方法可包括:响应于针对拍摄控件的点击操作,获取初始图像,并对初始图像进行自动白平衡处理,得到第一图像;基于初始图像和第一图像,确定第二图像;所述第二图像包括所述第一图像的偏色区域;将第一图像和第二图像输入预设网络模型,得到预设网络模型输出的双边网格信息;双边网格信息包括偏色区域对应的调整矩阵;基于偏色区域对应的调整矩阵,对第一图像进行偏色校正处理,得到校正图像;于预览界面,显示校正图像。本申请可对图像进行偏色校正,改善由自动白平衡处理引起的图像局部偏色问题。
Description
技术领域
本申请涉及图像处理技术领域,尤其涉及一种图像处理方法及电子设备。
背景技术
物体的颜色由其反射率特性所决定,在不同的光照条件等因素的影响下,物体所呈现的颜色可能有所不同。在图像采集过程中,由于外界色温变化、拍摄场景切换或白平衡(white balance)调整偏差,电子设备会受到外界光环境、成像感光元器件本身的特性等因素的影响,导致成像色彩与物体真实色彩之间存在一定程度的误差,即偏色。偏色可能会导致图像缺少真实感,从而降低图像质量。通常情况下,电子设备采用自动白平衡(autowhite balance,AWB)来调节图像的偏色。然而,AWB是一种全局调整方式,在混合光源场景下,容易造成图像局部偏色。混合光源场景下,如何解决AWB处理造成的图像局部偏色问题是亟待解决的问题。
发明内容
本申请实施例提供一种图像处理方法及电子设备,可减少由自动白平衡处理引起的图像局部偏色问题。
第一方面,该方法可由电子设备执行,或由与电子设备匹配的装置执行,例如由处理器、芯片或芯片系统等执行。该方法可包括:响应于针对拍摄控件的点击操作,获取初始图像,并对初始图像进行自动白平衡处理,得到第一图像;基于初始图像和第一图像,确定第二图像;所述第二图像包括所述第一图像的偏色区域;将第一图像和第二图像输入预设网络模型,得到预设网络模型输出的双边网格信息;双边网格信息包括偏色区域对应的调整矩阵;基于偏色区域对应的调整矩阵,对第一图像进行偏色校正处理,得到校正图像;于预览界面,显示校正图像。
可见,本申请可基于初始图像和第一图像确定出偏色区域,并基于预设网络模型,得到双边网格信息;基于双边网格信息,可对偏色区域进行偏色校正,得到校正图像,从而可以消除由自动白平衡处理引起的图像局部偏色问题,提高图像的真实性和图像质量。
在一种可能的实现方式中,上述基于初始图像和第一图像,确定第二图像的方式,可包括:基于第一图像中的像素i的RGB值和初始图像中的像素j的RGB值,确定像素i为偏色像素或非偏色像素;所述像素i对应于像素j;基于像素i为偏色像素或非偏色像素,确定第一图像的偏色区域和非偏色区域;在第一图像中对偏色区域和非偏色区域分别进行标记,得到第二图像。
可见,基于第一图像中的像素i的RGB值,和像素i在初始图像中对应的像素j的RGB值,可确定像素i是否偏色,从而可确定第一图像的偏色区域和非偏色区域,有利于提高确定图像局部偏色的准确性。
在一种可能的实现方式中,基于第一图像中的像素i的RGB值和初始图像中的像素j的RGB值,确定像素i为偏色像素或非偏色像素,可包括:响应于第一图像中的像素i的RGB值的通道大小关系与初始图像中的像素j的RGB值的通道大小关系不同,确定像素i为偏色像素;响应于第一图像中的像素i的RGB值的通道大小关系与初始图像中的像素j的RGB值的通道大小关系不同,确定像素i为非偏色像素;其中,通道大小关系用于指示RGB值中各个通道之间的大小关系。
可见,可基于通道大小关系确定一个像素是否为偏色像素,有利于提高确定偏色区域的准确性。
在一种可能的实现方式中,双边网格信息还包括多个亮度区间、多个网格区域和多个调整矩阵;基于此,上述方法还可包括:基于像素i的亮度,从多个亮度区间中,确定像素i对应的亮度区间;像素i的亮度是基于像素i的RGB值确定的;基于像素i在第一图像中的位置,从多个网格区域中,确定像素i对应的网格区域;基于像素i对应的网格区域,以及像素i对应的亮度区间,从多个调整矩阵中,确定像素i对应的调整矩阵;基于像素i对应的调整矩阵,确定偏色区域对应的调整矩阵,以及第一图像的非偏色区域对应的调整矩阵。
可见,通过第一图像中每个像素的RGB值,可从双边网格信息中查找到对应的调整矩阵。
在一种可能的实现方式中,基于偏色区域对应的调整矩阵,对第一图像进行偏色校正处理,得到校正图像,可包括:基于偏色区域对应的调整矩阵以及非偏色区域对应的调整矩阵,对第一图像进行偏色校正,得到校正图像;其中,偏色区域对应的调整矩阵为非单位矩阵,非偏色区域对应的调整矩阵为单位矩阵。
可见,从双边网格信息中可查找到偏色区域对应的调整矩阵和非偏色区域对应的调整矩阵,可对偏色区域进行偏色校正,同时保证非偏色区域保持不变,从而可实现对第一图像进行局部偏色校正,增加偏色校正的准确性和有效性。
在一种可能的实现方式中,基于偏色区域对应的调整矩阵以及所述非偏色区域对应的调整矩阵,对第一图像进行偏色校正,得到校正图像,可包括:基于像素i的RGB值对应的RGB矩阵和像素i的对应的调整矩阵,得到像素i对应的目标RGB矩阵;基于像素i对应的目标RGB矩阵,确定像素i的目标RGB值;基于像素i的目标RGB值,确定偏色区域对应的目标RGB值,以及非偏色区域对应的目标RGB值;基于偏色区域对应的目标RGB值,以及非偏色区域对应的目标RGB值,确定校正图像。
可见,基于调整矩阵,可调整每个像素的RGB值,从而实现对偏色区域的偏色校正。
在一种可能的实现方式中,上述方法还可包括:对第一图像进行下采样,得到预设尺寸的第一图像;基于此,上述将第一图像和第二图像输入预设网络模型,得到预设网络模型输出的双边网格信息,可包括:将预设尺寸的第一图像和第二图像输入预设网络模型,得到预设网络模型输出的双边网格信息;其中,第二图像的图像尺寸为预设尺寸。
可见,基于预设尺寸,对第一图像进行下采样,可在得到第一图像的缩略图(即预设尺寸的第一图像)的同时,不会改变第一图像中的偏色区域和非偏色区域;将预设尺寸的第一图像、第二图像输入预设网络模型,有利于预设网络模型生成双边网格信息。
第二方面,本申请实施例提供一种电子设备,该电子设备包括:一个或多个处理器和存储器;该存储器与该一个或多个处理器耦合,该存储器用于存储计算机程序代码,该计算机程序代码包括计算机指令,该一个或多个处理器调用该计算机指令以使得该电子设备执行如第一方面或第一方面的任意一种实现方式所述的方法。
第三方面,本申请实施例提供一种包含指令的计算机程序产品,当该计算机程序产品在电子设备上运行时,使得该电子设备执行如第一方面或第一方面的任意一种实现方式所述的方法。
第四方面,本申请实施例提供一种计算机可读存储介质,包括指令,当该指令在电子设备上运行时,使得该电子设备执行如第一方面或第一方面的任意一种实现方式所述的方法。
附图说明
图1A-图1B是本申请实施例提供的一种图像处理的效果示意图;
图2是本申请实施例提供的一种用户界面的示意图;
图3是本申请实施例提供的一种图像处理方法的流程示意图;
图4A是本申请实施例提供的一种网格区域划分的示意图;
图4B是本申请实施例提供的一种坐标系示意图;
图4C是本申请实施例提供的一种第一图像的示意图;
图4D是本申请实施例提供的一种第二图像的示意图;
图5是本申请实施例提供的一种电子设备各模块的交互示意图;
图6是本申请实施例提供的一种电子设备的硬件结构示意图;
图7是本申请实施例提供的一种电子设备的软件框架示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例进行描述。
本申请的说明书和权利要求书及所述附图中的术语“第一”、“第二”、“第三”和“第四”等是用于区别不同对象,而不是用于描述特定顺序。此外,术语“包括”和“具有”以及它们任何变形,意图在于覆盖不排他的包含。例如包含了一系列步骤或单元的过程、方法、系统、产品或设备没有限定于已列出的步骤或单元,而是可选地还包括没有列出的步骤或单元,或可选地还包括对于这些过程、方法、产品或设备固有的其它步骤或单元。
应当理解,在本申请中,“至少一个(项)”是指一个或者多个,“多个”是指两个或两个以上。“和/或”,用于描述关联对象的关联关系,表示可以存在三种关系,例如,“A和/或B”可以表示:只存在A,只存在B以及同时存在A和B三种情况,其中A,B可以是单数或者复数。字符“/”一般表示前后关联对象是一种“或”的关系。“以下至少一项(个)”或其类似表达,是指这些项中的任意组合,包括单项(个)或复数项(个)的任意组合。例如,a,b或c中的至少一项(个),可以表示:a,b,c,“a和b”,“a和c”,“b和c”,或“a和b和c”,其中a,b,c可以是单个,也可以是多个。
在本文中提及“实施例”意味着,结合实施例描述的特定特征、结构或特性可以包含在本申请的至少一个实施例中。在说明书中的各个位置出现该短语并不一定均是指相同的实施例,也不是与其它实施例互斥的独立的或备选的实施例。本领域技术人员显式地和隐式地理解的是,本文所描述的实施例可以与其它实施例相结合。
在本说明书中使用的术语“部件”、“模块”、“系统”等用于表示计算机相关的实体、硬件、固件、硬件和软件的组合、软件、或执行中的软件。例如,部件可以是但不限于,在处理器上运行的进程、处理器、对象、可执行文件、执行线程、程序和/或计算机。通过图示,在计算设备上运行的应用和计算设备都可以是部件。一个或多个部件可驻留在进程和/或执行线程中,部件可位于一个计算机上和/或分布在2个或更多个计算机之间。此外,这些部件可从在上面存储有各种数据结构的各种计算机可读介质执行。部件可例如根据具有一个或多个数据分组(例如来自与本地系统、分布式系统和/或网络间的另一部件交互的二个部件的数据,例如通过信号与其它系统交互的互联网)的信号通过本地和/或远程进程来通信。
色温,用于定义光源颜色。色温指绝对黑体从绝对零度(-273℃)开始加温后所呈现的颜色。当加热到一定的温度,绝对黑体发出的光所含的光谱成分,就称为这一温度下的色温,计量单位为开尔文(K)。例如,绝对黑体在受热后,其颜色逐渐由黑变红,再逐渐变成黄色、白色,最后变成蓝色。若某一光源发出的光,与某一温度下黑体发出的光所含的光谱成分相同,就称为某K色温。如100W灯泡发出的光的颜色,与绝对黑体在2527℃时的颜色相同,那么这只灯泡发出的光的色温就是:(2527+273)K=2800K。当光线的颜色偏红、橙、黄色,可称为低色温。当光线的颜色偏青、蓝或蓝紫色,可称为高色温。当光线的颜色是白色,可称为正常色温。物体的颜色只有在白色的光线照射下,才能呈现物体本身的正常颜色。
示例性的,可参阅表1所示的常见光源种类的色温对照表。
表1,色温对照表
光源的种类 | 色温(K) | RGB |
火柴火焰 | 1700 | (255,124,0) |
蜡烛火焰 | 1800 | (255,126,0) |
白炽灯泡 | 2700-3300 | (255,174,84) |
摄影泛光灯 | 3400 | (255,198,130) |
月光 | 4100 | (255,215,166) |
地平线日光 | 5000 | (255,231,204) |
电子闪光灯 | 5500-6000 | (255,238,222) |
荧光灯 | 6500 | (255,249,251) |
如表1所示,不同种类的光源的色温不同,对应不同的颜色,可用不同的RGB值进行表示。其中,白炽灯泡的色温为2700K至3300K,表1中的(255,174,84)为2700K对应的RGB值;电子闪光灯的色温为5500K至6000K,表1中的(255,238,222)为5500K对应的RGB值。
由于不同光照的光谱特性不同,在不同色温的光照下,物体所呈现的色调不同,光源的色温越高,物体越偏蓝,光源的色温越低,物体越偏黄。电子设备,如智能手机,在图像采集过程中,由于拍照环境的色温变化、拍摄场景切换或者摄像头白平衡调整的偏差等因素的影响下,会导致电子设备生成的图像的偏色现象,降低成像对真实场景的还原度。因此,需要对电子设备在不同色温的光源下拍摄的图像进行偏色矫正。
由于白色场景对红、绿、蓝三个通道的反射相同,所以白色场景中红、绿、蓝三通道值相等,因此可以以白色为基准来校正不同色温光源带来的偏色。例如,电子设备在输出拍摄的照片前,将对图像进行自动白平衡(auto white balance,AWB)处理,实现全局偏色校正。示例性的,通常情况下,在对图像进行AWB的过程中,首先确定图像中的白点,根据白点的像素值确定光源的色温,再根据色温确定图像的白平衡调整参数,并利用该白平衡调整参数对图像进行全局的白平衡处理。然而,此种校正方法仅适用于单光源下的图像,对于两种或两种以上的混合光源场景,白平衡处理方法将根据其中一种光源,或基于多种光源的加权平均来进行全局偏色校正,会导致图像出现局部偏色,无法解决偏色问题。
示例性的,普通日光灯的色温通常在4500K至6000K,荧光灯的色温通常为6500K,其中,K表示色温单位开尔文。在4500K与6500K这两种色温的混合光源场景下,通过上述白平衡处理方法,在确定4500K对应的白点和6500K对应的白点后,将按照4500K与6500K的中间色温5500K对图像进行白平衡处理,因此,不可避免地将导致图像出现局部偏色。另外,在混合光源下,当某个色温对应的图像区域只占图像的一小部分,还有可能会损失对该区域的白平衡处理,降低图像质量。
在如图1A所示的混合光源场景下,光源来自LED灯箱、钨丝灯、落地灯等。其中,钨丝灯发出黄光;落地灯发出白光;LED灯箱中的LED灯带原本发出的光为白光,但LED灯箱表面覆盖有包括蓝色、橙色、黄色等颜色的广告内容。上述多种光源的色温各不相同,在此种混色光源的照射下,电子设备拍摄如图1A所示的画面得到的照片在AWB处理后,存在局部偏色现象。例如,LED灯箱表面的文字“嗨”以及“这是个灯箱”等白色的文字呈现出偏灰蓝的颜色,如“嗨”字的RGB值可表示为(183,255,255)。
为减少混合光源场景下,AWB处理导致的图像局部偏色问题,本申请实施例提供一种图像处理方法,可应用于混合光源场景下的局部偏色校正,可以识别图像的偏色区域,对偏色区域进行针对性的校正,既能解决图像局部偏色问题,又不会影响图像其他区域的颜色效果。
示例性的,采用本申请实施例提供的图像处理方法,对如图1A所示的图像进行图像处理,可准确地识别出图像中的偏色区域并进行局部偏色校正,进而可得到如图1B所示的图像。对比图1A和图1B可得,图1B的局部偏色问题已得到明显改善,其中,图1B所示的LED灯箱上的白色文字呈现出白色,例如,校正后“嗨”字的RGB值可表示为(251,253,253)。
首先介绍本申请实施例涉及的用户界面。
如图2中A所示,电子设备100可显示主屏幕界面210,主屏幕界面210中显示有一个放置有应用图标的页面,该页面包括多个应用图标,例如,相机应用图标211。电子设备100可检测作用于相机应用图标211的操作,例如,电子设备100可检测到用户点击或触摸相机应用图标211的操作。响应于该操作,电子设备100可以显示如图2中B所示的拍摄界面220。
如图2中B所示,拍摄界面220可以显示包括有摄像头转换控件221、拍摄控件222、图像回显控件223、场景显示区域224。其中,图像回显控件223可用于显示已拍摄的图片;拍摄控件222用于触发摄像头拍摄并保存图像;摄像头转换控件221可用于切换拍照的摄像头,例如从后置摄像头切换至前置摄像头;场景显示区域224中可实时显示当前场景的预览图像,如图2中B中显示的场景。当电子设备100检测到针对拍摄控件222的操作(例如单击、触摸等),电子设备100可调用摄像头进行拍摄,并显示如图2中C所示的拍摄界面230。
如图2中C所示,拍摄界面230中的图像回显控件223中,可显示响应于针对拍摄控件222的操作后,拍摄得到的预览照片,此预览照片为已进行局部偏色校正后的照片。当电子设备100检测到针对图像回显控件223的操作,如点击操作,可显示如图2中D所示的照片预览界面240。如图2中D所示,该照片预览界面240显示相机应用图标211生成的照片。其中,照片预览界面240显示的照片为进行局部偏色校正后的图像。
下面,结合附图对本申请实施例提供的图像处理方法进行示例性说明。图像处理方法可由电子设备执行,或由电子设备中的图像处理器执行,还可以由具备图像处理器功能的芯片或芯片系统等执行。请参阅图3,如图3所示,图像处理方法包括但不限于以下步骤:
S301,响应于针对拍摄控件的点击操作,获取初始图像。
其中,初始图像为原始(RAW)格式的图像。RAW格式的图像,包括电子设备中,由图像感应器将捕捉到的光源信号转化为数字信号的原始数据,是无损的,包含物体原始的颜色信息等数据。
示例性的,电子设备可在检测到针对如图2中B所示的拍摄控件222的点击操作后,调用摄像头进行拍摄,以获取初始图像。
通常情况下,第一图像的颜色空间为RGB颜色空间,换言之,第一图像的色彩模式为RGB模式。其中,RGB表示红绿蓝三原色,RGB颜色空间是通过三原色来描述颜色的颜色空间。其中,R、G、B分别表示三个通道(channel),R指红色(red),可称为红色通道,G指绿色(green),即绿色通道,B指蓝色(blue),即蓝色通道。通常,相机、手机等电子设备采集到的彩色图像可分成R、G、B三个分量进行保存。例如,可用RGB值,即(R,G,B)来表示一张彩色图像,其中,R、G、B的取值均包括[0,255]范围内的任意整数。
S302,对初始图像进行自动白平衡处理,得到第一图像。
第一图像的图像格式与初始图像的图像格式不同,例如,第一图像可以是JPEG格式的图像。第一图像和初始图像的颜色空间相同,例如,若初始图像的颜色空间为RGB颜色空间,则第一图像的颜色空间也为RGB颜色空间。其中,自动白平衡处理(AWB)用于对初始图像进行全局偏色校正。
可选的,可对初始图像进行图像信号处理,得到第一图像,其中,图像信号处理包括自动白平衡处理,以及噪声去除、坏点去除、自动曝光控制、黑电平校正(black levelcorrection,BLC)、颜色插值、非线性伽玛(gamma)校正、颜色校正(color correction)等过程中的任意一项或多项。
S303,基于初始图像和第一图像,确定第二图像。其中,第二图像包括第一图像的偏色区域和非偏色区域。
第二图像是一种先验图像(prior map),在第二图像中,偏色区域和非偏色区域有不同的标记。例如,偏色区域标记为1,非偏色区域标记为0。第二图像的尺寸为预设尺寸,预设尺寸可基于不同应用场景的精度要求,配置为不同的值。例如,预设尺寸可以为512像素×512像素的尺寸,本申请对此不作限定。
下面介绍确定第二图像的详细步骤。
步骤一,基于第一图像和初始图像,确定第一图像的偏色区域和非偏色区域。
示例性的,假设第一图像共包括N个像素,针对第一图像中的每个像素,以第一图像中的任意一个像素,如像素i为例,确定第一图像的偏色区域和非偏色区域的过程可包括以下步骤:
①获取像素i的RGB值,以及获取初始图像中的像素j的RGB值。
其中,像素j为初始图像中的任意一个像素,且像素i对应于像素j。由于第一图像是初始图像进行图像信号处理后得到的图像,像素i在第一图像中的位置,与像素j在初始图像中的位置是相同的位置。由于AWB处理的影响,像素i与像素j之间的区别在于,像素i的RGB值与像素j的RGB值可能不同。
例如,像素i的RGB值可表示为(R1,G1,B1),像素i的RGB值可表示为(R2,G2,B2)。其中,R1,G1,B1,R2,G2,B2的取值包括[0,255]范围内的任意整数。
②确定像素i的RGB值的通道大小关系,以及确定像素j的RGB值的通道大小关系。
其中,通道大小关系是指,RGB值中的R通道、G通道、B通道三者之间的大小关系。示例性的,若像素i的RGB值为(R1,G1,B1)=(121,188,255),则像素i的RGB值的通道大小关系可表示为R1<G1<B1。同理,像素j的RGB值的通道大小关系也可基于像素j的RGB值中,R、G、B三个通道的数值大小确定。
③响应于像素i的RGB值的通道大小关系与像素j的RGB值的通道大小关系不相同,确定像素i为偏色像素。
示例性的,假设像素i的RGB值(R1,G1,B1)中,R1<G1<B1;假设像素j的RGB值(R2,G2,B2)中,R2<G2,R2>B2,且G2>B2。由此可见,像素i的RGB值的通道大小关系与像素j的RGB值的通道大小关系不相同,则说明像素i为偏色像素。
或者,④响应于像素i的RGB值的通道大小关系与像素j的RGB值的通道大小关系相同,确定像素i为非偏色像素。
示例性的,假设通道大小关系为R1<G1<B1,通道大小关系为G2>R2,G2>B2且R2>B2,则可以确定像素i的对应区域为非偏色区域。
⑤基于像素i为偏色像素或非偏色像素,确定第一图像的偏色区域和非偏色区域。
其中,采取上述步骤①-③所示的方式,或步骤①、②、④所示的方式,可确定第一图像中的每一个像素为偏色像素或非偏色像素。第一图像的偏色区域可包括多个偏色像素,非偏色区域也可包括多个非偏色像素。示例性的,若像素i、像素i+1,像素i+8至像素i+25均为偏色像素,则由像素i和像素i+1构成的区域可称为一个偏色区域;由像素i+8至像素i+25构成的区域也可称为一个偏色区域。
步骤二,基于第一图像的偏色区域和非偏色区域,确定第二图像。
具体地,采用步骤一中的方式,可在第一图像中对偏色区域和非偏色区域分别进行标记,例如,将偏色区域标记为1,将非偏色区域标记为0,并按照第一图像中每个像素原本的排列方式,将所有的偏色区域和非偏色区域进行组合,从而可得到第二图像。
示例性的,假设第一图像如图4C所示,共包括像素1至像素64,共64个像素。若像素13、像素14、像素21、像素22、像素29、像素30、像素37、像素48、像素15、像素46、像素53、像素54、像素61和像素62等14个像素是偏色像素,其他像素为非偏色像素,则可将上述14个像素的构成的偏色区域标记为1,其余的非偏色区域标记为0,则可得到如图4D所示的第二图像。
S304,对第一图像进行下采样,得到预设尺寸的第一图像。
当需要生成的第二图像为预设尺寸,可基于预设尺寸,对第一图像进行下采样(subsampled),得到预设尺寸的第一图像,从而使下采样后的第一图像的尺寸与第二图像的尺寸相同。其中,预设尺寸的第一图像可称作第一图像的缩略图像。可选的,对第一图像进行下采样的方式可以是通过对第一图像进行最大池化(Max-pooling)处理来实现。
其中,通过对第一图像进行下采样,可得到第一图像的缩略图(即预设尺寸的第一图像),得到缩略图可适当地减少预设网络模型的处理量,提高处理效率;此外,下采样可保留第一图像中的偏色特征,即不会改变第一图像中的偏色区域和非偏色区域。
S305,将预设尺寸的第一图像、第二图像输入预设网络模型,得到预设网络模型输出的双边网格信息。
电子设备中配置有预设网络模型,预设网络模型是以双边网格(bilateral grid)技术和神经网络技术为基础构建的网络模型。预设网络模型可基于预设尺寸的第一图像、第二图像,得到第一图像的偏色特征,基于第一图像的偏色特征,最终得到第一图像的双边网格信息。
其中,双边网格信息包括多个亮度区间、多个网格区域和多个调整矩阵。可选的,双边网格信息的参数模式可表示为C×K×L×9,其中,C×K表示多个网格区域;L表示多个亮度区间;9表示多个调整矩阵,且每个调整矩阵均为3×3的矩阵。
下面分别对双边网格信息中,C×K、L、9的三部分参数进行说明。
(1)C与K表示将预设尺寸的第一图像分割为C×K个网格区域,例如,可将预设尺寸的第一图像平均分为32×32,共1024个网格区域。若一个像素在C×K个网格区域中,属于第1行第1列的网格区域,则可将其坐标表示为(1,1)。示例性的,为简洁描述,假设将预设尺寸的第一图像划分为如图4A所示的4×4,共16个网格区域,每个网格区域对应的坐标如图4A所示。
(2)L代表亮度区间。例如,预设网络模型可将取值范围为[0,255]的亮度(表示为l)平均分为8个区间,则当一个像素的亮度l为16时,L=1,表示此像素属于第一个亮度区间。可选的,可根据不同的精度要求,将亮度平均分为16、64等数量的亮度区间,本申请对此不作限定。
其中,若第一图像中的像素i的RGB值为(ri,gi,bi),像素i的亮度可通过以下几种方式确定:
方式一:随机选择像素i的RGB值的任意一个通道作为像素i的亮度通道,则像素i的亮度为所选通道的值。例如,选择B通道作为亮度通道,则像素i的亮度l为b1。
需要说明的是,若电子设备选择B通道作为亮度通道,则在遍历第一图像中的所有像素时,均选择相同的通道作为亮度通道。
方式二:将像素i的RGB值的平均值作为像素i的亮度。例如,像素i的亮度l可通过公式l=1/3×(ri+bi+gi)确定。
方式三:将第一图像的颜色空间从RGB颜色空间转换为YUV颜色空间,并将Y通道的值作为像素i的亮度。其中,Y通道,即亮度通道,用于表示亮度,U通道和V通道用于描述色彩饱和度,Y通道的取值为[0,255],U通道的取值范围为[-112,112],V通道的取值范围为[-157,157]。第一图像中像素i的YUV值可表示为(yi,ui,vi),可通过下列公式计算得到:
yi=0.299ri+0.587gi+0.114bi
ui=-0.147ri-0.289gi+0.436bi=0.492(bi-yi)
vi=0.615ri-0.289gi+0.436bi=0.877(ri-yi)
结合C×K与L,可以构成一个类似于XYZ坐标的三维坐标系。示例性的,此三维坐标系可如图4B所示,C与K可分别表示XYZ坐标系中的X轴和Y轴,L可表示XYZ坐标系中的Z轴。例如,假设像素i在第一图像中的位置对应于C×K中的第2行第3列的区域,且像素i的亮度区间为L=2,则像素i在双边网格信息中的三维坐标可表示为(2,3,2)。换言之,像素i对应于该三维坐标系中,坐标为(2,3,2)的一个点。
(3)双边网格信息中的参数9表示3×3的调整矩阵C3×3。第一图像中的任意一个像素的RGB值可表示为1×3的矩阵形式,如像素i的RGB矩阵可表示为RGB=[ri bi bi],系数矩阵用于与像素的RGB矩阵相乘,可改变此像素的RGB值。示例性的,一个系数矩阵可表示为:
双边网格信息中的系数矩阵与C、K、L构成的三维空间中的点一一对应。示例性的,若像素i在双边网格信息中的三维坐标表示为(2,3,2),基于此三维坐标,可在双边网格信息中查找到与(2,3,2)对应的系数矩阵。
S306,基于双边网格信息,确定偏色区域对应的调整矩阵和非偏色区域对应的调整矩阵。
偏色区域可包括多个偏色像素,非偏色区域也可包括多个非偏色像素;偏色区域对应的调整矩阵包括偏色区域中每个偏色像素对应的调整矩阵,非偏色区域对应的调整矩阵包括非偏色区域中每个非偏色像素对应的调整矩阵。具体地,针对第一图像中的任意一个像素,如针对第一图像中的像素i,首先基于像素i在第一图像中的位置,从双边网格信息中确定像素i对应的网格区域,即确定像素i属于C×K个区域中的哪一个区域;基于像素i的RGB值,确定像素i的亮度,并基于像素i的亮度,从双边网格信息中确定像素i对应的亮度区间;基于像素i对应的网格区域、亮度区间,可从双边网格信息中确定像素i对应的调整矩阵。
示例性的,假设第一图像的双边网格信息的参数模式为32×32×8×9,若像素i属于C×K中的第3行第6列的区域,则可表示为(3,6);基于像素i的RGB值,确定像素i的亮度,如像素i的Y=33,则像素i的亮度l=33,属于第二个亮度区间,则L=2,于是像素i在C×K×L的三维空间坐标系中的坐标可表示为(3,6,2);在双边网格信息包括的多个调整矩阵中,查找与坐标(3,6,2)对应的调整矩阵Ci,则Ci为像素i对应的调整矩阵。
其中,若像素i为偏色像素,则像素i对应的调整矩阵为非单位矩阵;若第一图像中的像素j在S303中确定为非偏色像素,则像素j对应的调整矩阵为单位矩阵CE,单位矩阵CE中的对角线元素为1,非对角线元素为0,可以通过下列矩阵表示:
在一种可能的实现方式中,电子设备在执行S303后,可直接将第一图像和第二图像输入预设网络模型,预设网络模型可以对输入的第一图像和第二图像进行预处理,例如,对第一图像进行尺寸修改,得到预设尺寸的第一图像,使得第一图像的尺寸与第二图像的尺寸相同。
S307,基于调整矩阵,对第一图像进行偏色校正,得到校正图像。
其中,上述调整矩阵包括偏色区域对应的调整矩阵和非偏色区域对应的调整矩阵。具体地,针对第一图像中的每一个像素,如像素i,将像素i的RGB值对应的RGB矩阵与像素i对应的调整矩阵Ci相乘,得到调整后的RGB矩阵;基于调整后的RGB矩阵,可得到像素i对应的目标RGB值,即调整后的RGB值。示例性的,假设像素i的RGB值为(ri,gi,bi),RGB值对应的RGB矩阵为RGBi=[rigibi],则调整后的RGB矩阵,即像素i对应的目标RGB矩阵RGBi *可通过下列公式计算得到:
基于上述公式,得到像素i的目标RGB矩阵RGBi *=[ri *gi *bi *],则可基于目标RGB矩阵确定像素i的目标RGB值。示例性的,可将目标RGB矩阵中的ri *,gi *,bi *分别转换为满足R通道、G通道、B通道的取值范围[0,255]的整数,从而得到像素i的目标RGB值。其中,若第一图像中的像素j为非偏色像素,像素j对应的调整矩阵为单位矩阵CE,则像素j的目标RGB值与像素j的目标RGB值相同。基于此,可实现仅对偏色区域进行偏色校正,而非偏色区域可保持不变,从而可避免在校正过程中影响非偏色区域,例如,可避免非偏色区域在调整过程中产生偏色。
基于此,可确定第一图像中每个像素的目标RGB值,即可确定偏色区域中每个偏色像素的目标RGB值,以及非偏色区域中每个非偏色像素的目标RGB值。在第一图像中,可将第一图像的偏色像素的RGB值更新为目标RGB值,并保持非偏色像素的RGB值不变,则可重新组合成一张图像,即校正图像。
S308,在预览界面显示校正图像。
示例性的,预览界面可以是如图2中D所示的照片预览界面240。可选的,预览界面还可以是如图2中C所示的图像回显控件223,在图像回显控件223中显示的校正图像是一张缩略图;若电子设备检测到针对图像回显控件223的点击操作,则可显示如图2中D所示的照片预览界面240,并在照片预览界面240显示校正图像。
可见,通过本申请实施例提供的图像处理方法,在混合光源场景下,可准确地识别出图像中,因AWB处理导致的局部偏色区域,并且可高效率地对局部偏色区域进行校正,还原图像真实的色彩,提高图像的质量。
上述图3实施例对电子设备进行图像处理的流程进行了说明,下面结合图5,对上述图3实施例中,电子设备各模块交互的流程图进行说明。请参见图5,图5是本申请实施例提供的一种电子设备各模块交互流程图,在电子设备进行图像处理的过程中,电子设备内各模块的交互流程如下:
S501,相机应用接收与针对拍摄控件的点击操作关联的指令,并向摄像头发送调用指令。相应地,摄像头接收调用指令。
其中,电子设备可检测针对拍摄控件的点击操作,相应地,用户可在拍摄界面中,点击拍摄控件,如点击拍摄控件222。当电子设备检测到针对快门控件的点击操作,则可向相机应用发送与针对拍摄控件的点击操作关联的指令,以指示相机应用启动。其中,调用指令用于调用摄像头进行拍摄。
S502,摄像头进行拍摄,得到初始图像,并将初始图像传输至图像处理模块。相应地,图像处理模块接收初始图像。
其中,初始图像是RAW格式的图像。
S503,图像处理模块对初始图像进行自动白平衡处理,得到第一图像。
具体地,基于初始图像得到第一图像的实现过程可参阅如图3所示的S302。
S504,图像处理模块基于第一图像和初始图像,确定第一图像的偏色区域和非偏色区域。
具体地,确定第一图像的偏色区域和非偏色区域的实现方式可参阅S303中的步骤一。
S505,基于第一图像的偏色区域和非偏色区域,确定第二图像。
示例性的,第一图像的第二图像可由如图4D所示。具体地,确定第二图像的具体实现过程可参阅如S303中的步骤二,此处不再赘述。
S506,图像处理模块基于第一图像和第二图像,确定双边网格信息。
具体地,确定双边网格信息的具体实现过程可参阅S305。
S507,图像处理模块基于双边网格信息,确定偏色区域对应的调整矩阵和非偏色区域对应的调整矩阵。
具体地,确定调整矩阵的具体实现过程可参阅S306。
S508,图像处理模块基于调整矩阵,对第一图像进行偏色校正,得到校正图像;将校正图像传输至显示屏。相应地,显示屏接收校正图像。
其中,假设第一图像中包括N个像素,则可确定N个像素中每个像素对应的调整矩阵,即共可得到N个调整矩阵,N个像素中的第i个像素,对应N个调整矩阵中的第i个调整矩阵。N为大于0的整数。具体地,得到校正图像的具体实现过程可参阅S307。
可选的,图像处理模块可向显示屏发送包括校正图像的指示信息,从而将校正图像传输至显示屏。
S509,显示屏显示校正图像。
显示屏是电子设备中的器件,示例性的,电子设备可显示如图2中D所示的照片预览界面240。用户可在照片预览界面240中查看校正图像。
下面对电子设备100的结构进行介绍。请参阅图6,图6是本申请实施例提供的电子设备100的结构示意图。应该理解的是,电子设备100可以具有比图6中所示的更多的或者更少的部件,可以组合两个或多个的部件,或者可以具有不同的部件配置。图6中所示出的各种部件可以在包括一个或多个信号处理和/或专用集成电路在内的硬件、软件、或硬件和软件的组合中实现。
电子设备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等。
可以理解的是,本申请实施例示意的结构并不构成对电子设备100的具体限定。在本申请另一些实施例中,电子设备100可以包括比图6所示更多或更少的部件,或者组合某些部件,或者拆分某些部件,或者不同的部件布置。图6所示的部件可以以硬件,软件或软件和硬件的组合实现。
其中,处理器110可以包括一个或多个处理单元,例如:处理器可以包括应用处理器(application processor,AP),调制解调处理器(modem,也可称之为基带处理器),图形处理器(Graphics Processing Unit,GPU),图像信号处理器(Image Signal Processor,ISP),控制器,视频编解码器,数字信号处理器(Digital Signal Processor,DSP),和/或神经网络处理器(Neural-network Processing Unit,NPU)等。其中,不同的处理单元可以是独立的器件,也可以集成在一个或多个处理器中。处理器是电子设备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)接口,用户标识模块(subscriber identity module,SIM)接口,和/或通用串行总线(universal serial bus,USB)接口等。
可以理解的是,本申请实施例示意的各模块间的接口连接关系,只是示意性说明,并不构成对电子设备100的结构限定。在本申请另一些实施例中,电子设备100也可以采用上述实施例中不同的接口连接方式,或多种接口连接方式的组合。
电子设备100通过GPU,显示屏194,以及应用处理器等实现显示功能。GPU为图像处理的微处理器,连接显示屏194和应用处理器。GPU用于执行数学和几何计算,用于图形渲染。处理器110可包括一个或多个GPU,其执行程序指令以生成或改变显示信息。
显示屏194用于显示图像,视频等。显示屏194包括显示面板。显示面板可以采用液晶显示屏(liquid crystal display,LCD),有机发光二极管(organic light-emittingdiode,OLED),有源矩阵有机发光二极体或主动矩阵有机发光二极体(active-matrixorganic light emitting diode,AMOLED)等。在一些实施例中,电子设备100可以包括1个或N个显示屏194,N为大于1的正整数。在本申请实施例中,显示屏194可用于显示如图2中A所示的主屏幕界面,包括拍摄控件的拍摄界面,以及校正图像。
电子设备100可以通过ISP,摄像头193,视频编解码器,GPU,显示屏194以及应用处理器等实现拍摄功能。
ISP用于处理摄像头193反馈的数据。例如,拍照时,打开快门,光线通过镜头被传递到摄像头感光元件上,光信号转换为电信号,摄像头感光元件将所述电信号传递给ISP处理,转化为肉眼可见的图像。在本申请实施例中,ISP可对初始图像进行图像信号处理,从而得到第一图像。
摄像头193用于捕获静态图像或视频。物体通过镜头生成光学图像投射到感光元件。感光元件可以是电荷耦合器件(charge coupled device,CCD)或互补金属氧化物半导体(complementary metal-oxide-semiconductor,CMOS)光电晶体管。在本申请实施例中,摄像头193可通捕获静态图像,生成初始图像。
数字信号处理器用于处理数字信号,如处理数字图像信号。在本申请实施例中,数字信号处理器可用于对初始图像进行图像信号处理。
NPU为神经网络(neural-network,NN)计算处理器,通过借鉴生物神经网络结构,例如借鉴人脑神经元之间传递模式,对输入信息快速处理,还可以不断的自学习。通过NPU可以实现电子设备100的智能认知等应用,例如:图像识别,人脸识别,语音识别,文本理解等。在本申请实施例中,NPU可应用于预设网络模型中。
内部存储器121可以用于存储计算机可执行程序代码,所述可执行程序代码包括指令。处理器110通过运行存储在内部存储器121的指令,从而执行电子设备100的各种功能应用以及数据处理。内部存储器121可以包括存储程序区和存储数据区。其中,存储程序区可存储操作系统,至少一个功能所需的应用(比如人脸识别功能,指纹识别功能、移动支付功能等)等。存储数据区可存储电子设备100使用过程中所创建的数据(比如人脸信息模板数据,指纹信息模板等)等。此外,内部存储器121可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件,闪存器件,通用闪存存储器(universalflash storage,UFS)等。在本申请实施例中,内部存储器121可用于存储初始图像、第一图像、第二图像和校正图像。
电子设备100可以通过音频模块170,扬声器170A,受话器170B,麦克风170C,耳机接口170D,以及应用处理器等实现音频功能。例如音乐播放,录音等。
压力传感器180A用于感受压力信号,可以将压力信号转换成电信号。在一些实施例中,压力传感器180A可以设置于显示屏194。
环境光传感器180L用于感知环境光亮度。电子设备100可以根据感知的环境光亮度自适应调节显示屏194亮度。环境光传感器180L也可用于拍照时自动调节白平衡。
触摸传感器180K,也称“触控面板”。触摸传感器180K可以设置于显示屏194,由触摸传感器180K与显示屏194组成触摸屏,也称“触控屏”。触摸传感器180K用于检测作用于其上或附近的触摸操作。触摸传感器可以将检测到的触摸操作传递给应用处理器,以确定触摸事件类型。可以通过显示屏194提供与触摸操作相关的视觉输出。在另一些实施例中,触摸传感器180K也可以设置于电子设备100的表面,与显示屏194所处的位置不同。在本申请实施例中,触摸传感器180K与显示屏194组成的触摸屏用于检测针对拍摄控件的触摸操作,并将检测到的触摸操作传递给相机应用中的应用处理器,以确定此触摸操用于指示相机应用进行拍照。
按键190包括开机键,音量键等。按键190可以是机械按键。也可以是触摸式按键。电子设备100可以接收按键输入,产生与电子设备100的用户设置以及功能控制有关的键信号输入。
另外,在上述部件之上,运行有操作系统。例如iOS操作系统、安卓(Android)开源操作系统,Windows操作系统等。
电子设备100的操作系统可以采用分层架构,事件驱动架构,微核架构,微服务架构,或云架构。本申请实施例以分层架构的Android系统为例,示例性说明电子设备100的软硬件结构。需要说明的是,本申请实施例虽然以Android系统为例进行说明,但是其基本原理同样适用于基于iOS或Windows等操作系统的电子设备。
图7是电子设备100的软件结构框图。软件结构采用分层架构,分层架构将软件分成若干个层,每一层都有清晰的角色和分工。层与层之间通过软件接口通信。以Android系统,Android系统运行在AP上为例,在一些实施例中,将Android系统分为五层,从上至下分别为应用程序层,应用程序框架层(framework),系统运行库层,硬件抽象层(hardabstract layer,HAL)以及系统内核层(kernel)。
其中,应用程序层可以包括一系列应用程序包。应用程序包可以包括相机,图库,日历,通话,地图,WLAN,蓝牙,音乐,视频,短信息等APP。在本申请实施例中,应用程序包中的图库可用于存储第一图像和第一图像的校正图像。
应用程序层还可以包括系统用户界面(system user interface,system UI),system UI用于显示电子设备100的界面,如显示SIM卡对应的信号图标、显示通话界面等。在本申请实施例中,system UI可用于显示如图2中A-D所示的界面,包括主屏幕界面210、拍摄界面220、拍摄界面230和照片预览界面240。
应用程序框架层为应用程序层的应用程序提供应用编程接口(applicationprogramming interface,API)和编程框架。应用程序框架层包括一些预先定义的函数。例如应用程序框架层可以包括窗口管理器,内容提供器,视图系统,电话管理器,资源管理器,通知管理器等。电话管理器(telephony)用于提供电子设备100的通话功能,例如通话状态的管理(包括接通,挂断等)。
系统运行库层分为两部分,分别是C/C++程序库和Android运行时库。C/C++程序库主要包括浏览器引擎(Webkit)、多媒体库(media framework)等。Android运行时库主要包括运行时环境(Android rontime,ART)等。
硬件抽象层用于把应用程序框架层与内核层隔离,避免安卓系统过度依赖内核层,从而让应用程序框架层的开发可在不考虑驱动程序的前提下进行。硬件抽象层可以包括多个功能模块。例如,显示HAL、相机HAL、音频HAL、传感器HAL等模块。
在本申请实施例中,相机HAL可包括图像处理模块,用于基于初始图像确定第一图像,基于初始图像和第一图像确定第一图像的局部偏色区域,并对局部偏色区域进行偏色校正,得到校正图像。
内核层是硬件和软件之间的层。内核层至少包含显示驱动,摄像头驱动,音频驱动,传感器驱动,共享内存驱动。
在本申请实施例中,摄像头驱动用于当接收到位于应用程序层的相机应用发送的触发命令时,触发摄像头开启。摄像头驱动还用于调用摄像头进行拍摄,生成初始图像。
此外,本申请的一些实施例提供一种电子设备,电子设备包括:一个或多个处理器以及存储器;存储器用于存储计算机程序代码,计算机程序代码包括计算机指令,当一个或多个处理器执行计算机指令时,使得电子设备执行上述图像处理方法。
本申请的一些实施例提供一种芯片系统,应用于电子设备,芯片系统包括至少一个处理器以及接口,接口用于接收指令,并传输至至少一个处理器;至少一个处理器运行指令使得电子设备执行上述图像处理方法。其中,芯片系统可以是调制解调处理器,或包括调制解调处理器的片上系统(system on chip,SOC),上述图像处理方法可以由一个调制解调处理器实施。
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。
需要说明的是,对于前述的各方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本申请并不受所描述的动作顺序的限制,因为依据本申请,某些步骤可能可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定是本申请所必须的。
在本申请所提供的几个实施例中,应该理解到,所揭露的装置,可通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如上述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性或其它的形式。
上述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
上述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以为个人计算机、服务端或者网络设备等,具体可以是计算机设备中的处理器)执行本申请各个实施例上述方法的全部或部分步骤。其中,而前述的存储介质可包括:U盘、移动硬盘、磁碟、光盘、只读存储器(read-only memory,ROM)或者随机存取存储器(randomaccess memory,RAM)等各种可以存储程序代码的介质。
以上所述,以上实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的精神和范围。
Claims (7)
1.一种图像处理方法,其特征在于,所述方法包括:
响应于针对拍摄控件的点击操作,获取初始图像,并对所述初始图像进行自动白平衡处理,得到第一图像;
基于所述初始图像和所述第一图像,确定第二图像;所述第二图像包括所述第一图像的偏色区域和非偏色区域;
将所述第一图像和所述第二图像输入预设网络模型,得到所述预设网络模型输出的双边网格信息;所述双边网格信息包括多个亮度区间、多个网格区域和多个调整矩阵;
基于所述第一图像中的像素i的亮度,从所述多个亮度区间中,确定所述像素i对应的亮度区间;所述像素i的亮度是基于所述像素i的RGB值确定的;
基于所述像素i在所述第一图像中的位置,从所述多个网格区域中,确定所述像素i对应的网格区域;
基于所述像素i对应的网格区域,以及所述像素i对应的亮度区间,从所述多个调整矩阵中,确定所述像素i对应的调整矩阵;
基于所述像素i的RGB值对应的RGB矩阵和所述像素i的对应的调整矩阵,确定所述像素i对应的目标RGB矩阵;
基于所述像素i的目标RGB矩阵,确定所述像素i的目标RGB值;
基于所述像素i的目标RGB值,确定所述偏色区域对应的目标RGB值,以及所述非偏色区域对应的目标RGB值;
基于所述偏色区域对应的目标RGB值,以及所述非偏色区域对应的目标RGB值,确定校正图像;
于预览界面,显示所述校正图像。
2.根据权利要求1所述的方法,其特征在于,所述基于所述初始图像和所述第一图像,确定第二图像,包括:
基于所述第一图像中的像素i的RGB值和所述初始图像中的像素j的RGB值,确定所述像素i为偏色像素或非偏色像素;所述像素i对应于所述像素j;
基于所述像素i为偏色像素或非偏色像素,确定所述第一图像的偏色区域和非偏色区域;
在所述第一图像中对所述偏色区域和所述非偏色区域分别进行标记,得到第二图像。
3.根据权利要求2所述的方法,其特征在于,所述基于所述第一图像中的像素i的RGB值和所述初始图像中的像素j的RGB值,确定所述像素i为偏色像素或非偏色像素,包括:
响应于所述第一图像中的像素i的RGB值的通道大小关系与所述初始图像中的像素j的RGB值的通道大小关系不同,确定所述像素i为偏色像素;
响应于所述第一图像中的像素i的RGB值的通道大小关系与所述初始图像中的像素j的RGB值的通道大小关系相同,确定所述像素i为非偏色像素;
其中,所述通道大小关系用于指示RGB值中各个通道之间的大小关系。
4.根据权利要求1所述的方法,其特征在于,所述方法还包括:
对所述第一图像进行下采样,得到预设尺寸的第一图像;
所述将所述第一图像和所述第二图像输入预设网络模型,得到所述预设网络模型输出的双边网格信息,包括:
将所述预设尺寸的第一图像和所述第二图像输入预设网络模型,得到所述预设网络模型输出的双边网格信息;所述第二图像的图像尺寸为所述预设尺寸。
5.一种电子设备,其特征在于,包括:存储器、处理器;其中:
所述存储器,用于存储计算机程序,所述计算机程序包括程序指令;
所述处理器用于调用所述程序指令,使得所述电子设备执行如权利要求1-4任意一项所述的方法。
6.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有计算机程序,该计算机程序被处理器执行时,实现如权利要求1-4任意一项所述的方法。
7.一种包含指令的计算机程序产品,其特征在于,当所述计算机程序产品在电子设备上运行时,使得所述电子设备执行如权利要求1-4中任意一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311119808.7A CN117692788B (zh) | 2023-08-31 | 2023-08-31 | 一种图像处理方法及电子设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311119808.7A CN117692788B (zh) | 2023-08-31 | 2023-08-31 | 一种图像处理方法及电子设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN117692788A CN117692788A (zh) | 2024-03-12 |
CN117692788B true CN117692788B (zh) | 2024-09-20 |
Family
ID=90127268
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311119808.7A Active CN117692788B (zh) | 2023-08-31 | 2023-08-31 | 一种图像处理方法及电子设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117692788B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN118229602B (zh) * | 2024-05-22 | 2024-10-01 | 荣耀终端有限公司 | 图像处理方法、电子设备、存储介质及计算机程序产品 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113170028A (zh) * | 2019-01-30 | 2021-07-23 | 华为技术有限公司 | 生成基于机器学习的成像算法的图像数据的方法 |
CN113379611A (zh) * | 2020-03-10 | 2021-09-10 | Tcl科技集团股份有限公司 | 图像处理模型的生成方法、处理方法、存储介质及终端 |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20050270383A1 (en) * | 2004-06-02 | 2005-12-08 | Aiptek International Inc. | Method for detecting and processing dominant color with automatic white balance |
CN114331927A (zh) * | 2020-09-28 | 2022-04-12 | Tcl科技集团股份有限公司 | 一种图像处理方法、存储介质及终端设备 |
CN113766204B (zh) * | 2021-07-28 | 2022-07-29 | 荣耀终端有限公司 | 图像的光源色彩的调整方法、电子设备及存储介质 |
CN115835034B (zh) * | 2021-09-15 | 2024-04-05 | 荣耀终端有限公司 | 白平衡处理方法与电子设备 |
CN114071109B (zh) * | 2021-11-19 | 2024-04-12 | 信利光电股份有限公司 | 一种改善白平衡不稳定的方法及摄像模组 |
-
2023
- 2023-08-31 CN CN202311119808.7A patent/CN117692788B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113170028A (zh) * | 2019-01-30 | 2021-07-23 | 华为技术有限公司 | 生成基于机器学习的成像算法的图像数据的方法 |
CN113379611A (zh) * | 2020-03-10 | 2021-09-10 | Tcl科技集团股份有限公司 | 图像处理模型的生成方法、处理方法、存储介质及终端 |
Also Published As
Publication number | Publication date |
---|---|
CN117692788A (zh) | 2024-03-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9451173B2 (en) | Electronic device and control method of the same | |
CN113766204B (zh) | 图像的光源色彩的调整方法、电子设备及存储介质 | |
CN116744120B (zh) | 图像处理方法和电子设备 | |
CN114463191B (zh) | 一种图像处理方法及电子设备 | |
CN115601274A (zh) | 图像处理方法、装置和电子设备 | |
CN117692788B (zh) | 一种图像处理方法及电子设备 | |
US20240251180A1 (en) | Image processing method and electronic device | |
CN115550575B (zh) | 图像处理方法及其相关设备 | |
CN116668862B (zh) | 图像处理方法与电子设备 | |
WO2024045871A1 (zh) | 显示方法和装置 | |
US20230342977A1 (en) | Method for Determining Chromaticity Information and Related Electronic Device | |
CN115514948B (zh) | 图像调节方法以及电子设备 | |
CN113891008B (zh) | 一种曝光强度调节方法及相关设备 | |
WO2021249504A1 (zh) | 一种分布显示方法及相关设备 | |
CN116055699A (zh) | 一种图像处理方法及相关电子设备 | |
CN115514947B (zh) | 一种ai自动白平衡的算法和电子设备 | |
CN117133252B (zh) | 图像处理方法和电子设备 | |
CN117316122B (zh) | 一种色温校准方法、电子设备及介质 | |
WO2024113162A1 (zh) | 亮度补偿方法、装置、设备及存储介质 | |
WO2024119922A1 (zh) | 处理视频的方法、显示设备及存储介质 | |
CN116229884B (zh) | 屏幕显示方法及相关电子设备 | |
CN118819370A (zh) | 显示控制方法及装置 | |
CN117119316A (zh) | 图像处理方法、电子设备及可读存储介质 | |
CN118200748A (zh) | 一种图像处理方法、电子设备、存储介质及程序产品 | |
CN112508805A (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 |