CN116664701A - 光照估计方法及其相关设备 - Google Patents
光照估计方法及其相关设备 Download PDFInfo
- Publication number
- CN116664701A CN116664701A CN202211515970.6A CN202211515970A CN116664701A CN 116664701 A CN116664701 A CN 116664701A CN 202211515970 A CN202211515970 A CN 202211515970A CN 116664701 A CN116664701 A CN 116664701A
- Authority
- CN
- China
- Prior art keywords
- camera
- image
- depth
- illumination
- electronic device
- 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.)
- Pending
Links
- 238000005286 illumination Methods 0.000 title claims abstract description 150
- 238000000034 method Methods 0.000 title claims abstract description 111
- 238000012545 processing Methods 0.000 claims abstract description 52
- 230000015654 memory Effects 0.000 claims description 41
- 238000004590 computer program Methods 0.000 claims description 13
- 230000009466 transformation Effects 0.000 claims description 11
- 230000001502 supplementing effect Effects 0.000 claims description 6
- 238000004891 communication Methods 0.000 description 26
- 230000006854 communication Effects 0.000 description 26
- 230000006870 function Effects 0.000 description 20
- 230000008569 process Effects 0.000 description 20
- 238000007726 management method Methods 0.000 description 19
- 238000010586 diagram Methods 0.000 description 17
- 230000000694 effects Effects 0.000 description 15
- 238000010295 mobile communication Methods 0.000 description 10
- 230000007613 environmental effect Effects 0.000 description 8
- 238000012549 training Methods 0.000 description 8
- 230000008859 change Effects 0.000 description 7
- 238000005516 engineering process Methods 0.000 description 7
- 230000004044 response Effects 0.000 description 6
- 230000005236 sound signal Effects 0.000 description 6
- 210000000988 bone and bone Anatomy 0.000 description 5
- 238000013507 mapping Methods 0.000 description 5
- 230000001133 acceleration Effects 0.000 description 4
- 238000004422 calculation algorithm Methods 0.000 description 4
- 239000011159 matrix material Substances 0.000 description 4
- 230000003287 optical effect Effects 0.000 description 4
- 230000000007 visual effect Effects 0.000 description 4
- 230000003190 augmentative effect Effects 0.000 description 3
- 238000004364 calculation method Methods 0.000 description 3
- 238000006243 chemical reaction Methods 0.000 description 3
- 230000004927 fusion Effects 0.000 description 3
- 230000002093 peripheral effect Effects 0.000 description 3
- 230000001360 synchronised effect Effects 0.000 description 3
- 229920001621 AMOLED Polymers 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 2
- 230000008878 coupling Effects 0.000 description 2
- 238000010168 coupling process Methods 0.000 description 2
- 238000005859 coupling reaction Methods 0.000 description 2
- 238000001514 detection method Methods 0.000 description 2
- 238000007667 floating Methods 0.000 description 2
- 230000006872 improvement Effects 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 239000004973 liquid crystal related substance Substances 0.000 description 2
- 230000010363 phase shift Effects 0.000 description 2
- 239000002096 quantum dot Substances 0.000 description 2
- 230000009467 reduction Effects 0.000 description 2
- 230000002829 reductive effect Effects 0.000 description 2
- 238000009877 rendering Methods 0.000 description 2
- 238000002366 time-of-flight method Methods 0.000 description 2
- 230000002159 abnormal effect Effects 0.000 description 1
- 230000003044 adaptive effect Effects 0.000 description 1
- 230000002411 adverse Effects 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 238000013528 artificial neural network Methods 0.000 description 1
- 230000003796 beauty Effects 0.000 description 1
- 230000006399 behavior Effects 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 230000007175 bidirectional communication Effects 0.000 description 1
- 230000036772 blood pressure Effects 0.000 description 1
- 239000003086 colorant Substances 0.000 description 1
- 230000000052 comparative effect Effects 0.000 description 1
- 230000000295 complement effect Effects 0.000 description 1
- 239000004020 conductor Substances 0.000 description 1
- 238000012937 correction Methods 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 230000005484 gravity Effects 0.000 description 1
- 230000036541 health Effects 0.000 description 1
- 230000001939 inductive effect Effects 0.000 description 1
- 230000004807 localization Effects 0.000 description 1
- 229910044991 metal oxide Inorganic materials 0.000 description 1
- 150000004706 metal oxides Chemical class 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000035772 mutation Effects 0.000 description 1
- 238000010606 normalization Methods 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 238000007500 overflow downdraw method Methods 0.000 description 1
- 230000036961 partial effect Effects 0.000 description 1
- 230000001575 pathological effect Effects 0.000 description 1
- 238000007781 pre-processing Methods 0.000 description 1
- 230000010349 pulsation Effects 0.000 description 1
- 230000002441 reversible effect Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 238000000926 separation method Methods 0.000 description 1
- 230000003595 spectral effect Effects 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 238000013519 translation Methods 0.000 description 1
- 238000002834 transmittance 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
- G06T7/00—Image analysis
- G06T7/90—Determination of colour characteristics
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/50—Depth or shape recovery
- G06T7/55—Depth or shape recovery from multiple images
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/70—Determining position or orientation of objects or cameras
Landscapes
- Engineering & Computer Science (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Length Measuring Devices By Optical Means (AREA)
- Image Processing (AREA)
Abstract
本申请提供一种光照估计方法及其相关设备,涉及图像处理领域,该方法包括:获取第一图像和法向图;将第一图像和法向图进行拼接,得到第一拼接图像;利用光照主方向估计模型对第一拼接图像进行处理,确定光照主方向。该方法通过结合不同摄像头采集到的图像和准确的法向图,来提高光照估计的准确性。
Description
技术领域
本申请涉及图像处理领域,具体涉及一种光照估计方法及其相关设备。
背景技术
随着具有拍摄功能的电子设备在生活中的普及,人们使用电子设备进行拍摄已经成为了一种日常行为方式。目前大多数电子设备在拍摄时,都是采用一些算法来对采集的图像进行处理,从而生成满足拍摄需求的图像或视频。
其中,在某些拍摄场景下,用户期望可以估计出环境中的光照主方向,后续基于该光照主方向再对拍摄图像进行一些其他处理。为了满足此种需求,针对拍摄图像,相关技术可以通过网络模型直接确定光照主方向,或通过网络模型确定出对应环境图、球谐系数等来间接确定光照主方向,然而,在进行处理时,由于网络模型的处理结果非常依赖于拍摄图像,所以准确性随之无法得到保证。由此,如何提高光照估计(light estimation)的准确性成为了一个亟需解决的问题。
发明内容
本申请提供一种光照估计方法及其相关设备,通过结合不同摄像头采集到的彩色图像和准确的法向图,来提高光照估计的准确性。
第一方面,提供了一种光照估计方法,应用于包括多个摄像头的电子设备;该方法包括:
获取第一图像和法向图,所述法向图用于表示被摄物对应的法线方向,所述第一图像和所述法向图来源于不同的摄像头;
将所述第一图像和所述法向图进行拼接,得到第一拼接图像;
利用光照主方向估计模型对所述第一拼接图像进行处理,确定光照主方向,所述光照主方向包括光源的方位角和高度角。
其中,光照主方向估计模型包括多层卷积层和全连接层。
本申请实施例通过不同摄像头获取第一图像和准确的法向图,再将法向图和第一图像进行拼接,而后将拼接成的第一拼接图像输入光照主方向估计模型来确定光照主方向。由于本申请通过摄像头获取法向图来作为足够准确的先验信息,相对没有先验信息或者先验信息不准确的相关技术来说,可以显著提高光照主方向估计的精度;相对于其他相关技术来说,估计出的光照主方向的准确性更高。
结合第一方面,在第一方面的某些实现方式中,所述多个摄像头包括第一摄像头和第二摄像头,所述第二摄像头为深度摄像头;
所述获取第一图像包括:
利用所述第一摄像头获取所述第一图像;
所述获取法向图包括:
利用所述深度摄像头获取第一深度图像,所述第一深度图像用于表示被摄物对应的深度数据;
将所述第一深度图像转换为所述法向图。
在该实现方式中,当电子设备包括第一摄像头和第二摄像头(深度摄像头)时,第一图像可以是电子设备利用第一摄像头拍摄到的图像,第一法向图为第二摄像头获取到的第一深度图像转换成的图像。由于深度摄像头获取的深度信息比较准确,因此直接由深度图像转换成为法向图也相对更为准确。
结合第一方面,在第一方面的某些实现方式中,所述方法还包括:
将所述第一深度图像与所述第一图像进行RGBD对齐,所述RGBD对齐用于将所述第一深度图像上的像素坐标值转换到所述第一图像对应的像素坐标系中;
补齐对齐后的第一深度图像中缺失位置处的深度数据,得到第二深度图像;
将所述第二深度图像转换为所述法向图。
在该实现方式中,由于第一深度图像和第一图像来源于不同的摄像头,摄像头的空间坐标系不同,可能导致两者图像内容出现偏差,因此,为了提高后续数据的准确性,需要先以第一图像为基准,将第一深度图像与第一图像进行RGBD对齐处理。
又由于第二摄像头和第一摄像头的视场角不一致,第一摄像头采集的第一图像的部分像素在第二摄像头采集的第一深度图像中没有对应的映射点;或者,确定出的映射坐标是浮点数,取整后会有部分像素覆盖不到;又或者,深度计算中会有一些特殊的标志位,这些标志位无深度信息,从而导致从第二摄像头的像素坐标系变换第一摄像头的像素坐标系后,部分点是映射不到的,进而造成一些像素位置缺失深度数据,因此,为了提高后续转换成为的法向图的精度,在转换前先对缺失的深度数据进行补齐。
结合第一方面,在第一方面的某些实现方式中,所述RGBD对齐包括:
将所述第一深度图像从像素坐标系转换到所述第二摄像头的相机坐标系中;
基于所述第二摄像头和所述第一摄像头的RT刚体变换,将所述第二摄像头的相机坐标系中的点转换到所述第一摄像头的相机坐标系中;
将所述第一摄像头的相机坐标系中的点投影到所述第一图像对应的像素坐标系上。
RT刚体变换指的是将物体的位置(平移变换)和朝向(旋转变换)发生改变,而形状不变。
在该实现方式中,通过利用摄像头拍摄的图像所对应的像素坐标系和摄像头自身对应的相机坐标系的关系,从而可以将第一深度图像转换到深度摄像头的相机坐标系中,再利用两个相机坐标系之间的关系,间接将第一深度图像统一到第一图像对应的像素坐标系中;从而借助坐标系的转换可以将第一深度图像和第一图像进行对齐,减小误差。
结合第一方面,在第一方面的某些实现方式中,所述方法还包括:去畸变处理。
在该实现方式中,由于第一深度图像从二维坐标系转到了三维坐标系下,增加了空间信息,因此,可能会发生畸变,因此,为了后续数据的准确性需要进行去畸变处理。
结合第一方面,在第一方面的某些实现方式中,所述补齐对齐后的第一深度图像中缺失位置处的深度数据,得到第二深度图像,包括:
针对所述对齐后的第一深度图像中缺失位置处的像素,对相邻外圈像素的深度数据进行插值,作为缺失位置处的像素对应的深度数据,所述缺失位置用于指示缺失深度数据的像素的位置。
在该实现方式中,通过对缺失深度数据的像素相邻外圈多个像素对应的深度数据进行插值,从而可以补齐缺失的深度数据,使得补齐后得到的第二深度图像的深度数据更完整,相对于第一深度图像更准确。
结合第一方面,在第一方面的某些实现方式中,所述第一摄像头为超广角摄像头、长焦摄像头、广角摄像头、多光谱摄像头、黑白摄像头中的任意一种。
在该实现方式中,第一摄像头可以获取包括彩色信息、黑白信息或多光谱信息的第一图像。
结合第一方面,在第一方面的某些实现方式中,所述方法应用于室内场景。
在该实现方式中,由于深度摄像头在室内场景下获取的深度信息更准确,因此,本申请提供的光照估计方法可以应用于室内场景。
第二方面,提供了一种电子设备,所述电子设备包括:一个或多个处理器、存储器和显示屏;所述存储器与所述一个或多个处理器耦合,所述存储器用于存储计算机程序代码,所述计算机程序代码包括计算机指令,所述一个或多个处理器调用所述计算机指令以使得所述电子设备执行:
获取第一图像和法向图,所述法向图用于表示被摄物对应的法线方向,所述电子设备还包括多个摄像头,所述第一图像和所述法向图来源于不同的摄像头;
将所述第一图像和所述法向图进行拼接,得到第一拼接图像;
利用光照主方向估计模型对所述第一拼接图像进行处理,确定光照主方向,所述光照主方向包括光源的方位角和高度角。
结合第二方面,在第二方面的某些实现方式中,所述多个摄像头包括第一摄像头和第二摄像头,所述第二摄像头为深度摄像头;
所述获取第一图像包括:
利用所述第一摄像头获取所述第一图像;
所述获取法向图包括:
利用所述深度摄像头获取第一深度图像,所述第一深度图像用于表示被摄物对应的深度数据;
将所述第一深度图像转换为所述法向图。
结合第二方面,在第二方面的某些实现方式中,还包括:
将所述第一深度图像与所述第一图像进行RGBD对齐,所述RGBD对齐用于将所述第一深度图像上的像素坐标值转换到所述第一图像对应的像素坐标系中;
补齐对齐后的第一深度图像中缺失位置处的深度数据,得到第二深度图像;
将所述第二深度图像转换为所述法向图。
结合第二方面,在第二方面的某些实现方式中,所述RGBD对齐包括:将所述第一深度图像从像素坐标系转换到所述第二摄像头的相机坐标系中;
基于所述第二摄像头和所述第一摄像头的RT刚体变换,将所述第二摄像头的相机坐标系中的点转换到所述第一摄像头的相机坐标系中;
将所述第一摄像头的相机坐标系中的点投影到所述第一图像对应的像素坐标系上。
结合第二方面,在第二方面的某些实现方式中,还包括:去畸变处理。
结合第二方面,在第二方面的某些实现方式中,所述补齐对齐后的第一深度图像中缺失位置处的深度数据,得到第二深度图像,包括:针对所述对齐后的第一深度图像中缺失位置处的像素,对相邻外圈像素的深度数据进行插值,作为缺失位置处的像素对应的深度数据,所述缺失位置用于指示缺失深度数据的像素的位置。
结合第二方面,在第二方面的某些实现方式中,所述第一摄像头为超广角摄像头、长焦摄像头、广角摄像头、多光谱摄像头、黑白摄像头中的任意一种。
结合第二方面,在第二方面的某些实现方式中,所述电子设备应用于室内场景。
应理解,在上述第一方面中对相关内容的扩展、限定、解释和说明也适用于第二方面中相同的内容。
第三方面,提供了一种光照估计装置,包括用于执行第一方面中任一种光照估计方法的单元。
在一种可能的实现方式中,当该光照估计装置是电子设备时,该处理单元可以是处理器,该输入单元可以是通信接口;该电子设备还可以包括存储器,该存储器用于存储计算机程序代码,当该处理器执行该存储器所存储的计算机程序代码时,使得该电子设备执行第一方面中的任一种方法。
第四方面,提供了一种芯片***,所述芯片***应用于电子设备,所述芯片***包括一个或多个处理器,所述处理器用于调用计算机指令以使得所述电子设备执行第一方面中的任一种光照估计方法。
第五方面,提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序代码,当所述计算机程序代码被电子设备运行时,使得该电子设备执行第一方面中的任一种光照估计方法。
第六方面,提供了一种计算机程序产品,所述计算机程序产品包括:计算机程序代码,当所述计算机程序代码被电子设备运行时,使得该电子设备执行第一方面中的任一种光照估计方法。
本申请提供了一种光照估计方法及其相关设备,通过深度摄像头获取第一深度图像;基于第一摄像头获取的第一图像对第一深度图像进行RGBD对齐后,补齐缺失位置数据,得到第二深度图像;然后,将第二深度图像转换成准确的第二法向图;再将第二法向图和第一摄像头获取的第一图像进行拼接,而后输入光照主方向估计模型来确定光照主方向。
由于RGBD对齐精度可以达到1像素,因此,本申请将RGBD对齐后的第二深度图像转换成的第二法向图来作为先验信息时,足够的准确;相对没有先验信息或者先验信息不准确的相关技术来说,可以显著提高光照主方向估计的精度;相对于其他相关技术来说,光照主方向的准确更高。
附图说明
图1是本申请实施例提供的一种应用场景的示意图;
图2是本申请实施例提供的显示界面的示意图;
图3是相关技术提供的多种确定光照主方向的流程示意图;
图4是相关技术提供的原始环境图像和利用球谐系数转换成的环境图的对比示意图;
图5是本申请实施例提供的一种摄像头的排布示意图;
图6是本申请实施例提供的一种光照估计方法的流程示意图;
图7是本申请实施例提供的第一拼接图像或第二拼接图像的示意图;
图8是本申请实施例提供的光照主方向估计模型的结构示意图;
图9是本申请实施例提供的另一种光照估计方法的流程示意图;
图10是本申请实施例提供的RGBD对齐的流程示意图;
图11是本申请实施例提供的一种显示界面的示意图;
图12是一种适用于本申请的电子设备的硬件***的示意图;
图13是一种适用于本申请的电子设备的软件***的示意图;
图14是本申请提供的一种光照估计装置的结构示意图;
图15是本申请提供的一种电子设备的结构示意图。
具体实施方式
下面将结合附图,对本申请实施例中的技术方案进行描述。
首先,对本申请实施例中的部分用语进行解释说明,以便于本领域技术人员理解。
1、RGB(red、green、blue)颜色空间或RGB域,指的是一种与人的视觉***结构相关的颜色模型。根据人眼睛的结构,将所有颜色都当作是红色、绿色和蓝色的不同组合。
2、广角摄像头,由于对焦距离较小,所以适合拍摄近景,并且,顾名思义,广角摄像头适合拍摄视场角相对较大的场景。超广角摄像头相对于广角摄像头来说,对焦距离更小,适合拍摄视场角更大的场景。
3、长焦摄像头,由于对焦距离较大,所以适合拍摄远景,也即长焦摄像头适合拍摄视场角相对较小的场景。
4、多光谱摄像头,包含多光谱传感器的摄像头,其中,多光谱传感器为比三基色(RGB)传感器的光谱响应范围宽的其他多光谱传感器。例如,多光谱摄像头可以为红绿蓝青品黄(RGBCMY)传感器,该多光谱传感器的颜色还原能力以及信噪比表现相对于RGB传感器都有所提高。
5、黑白摄像头,或称为Mono摄像头,用于采集黑白图像。黑白摄像头由于透光率高,采集全像素传感器(sensor),具有解析力高、噪声低等优势。
6、深度摄像头(time of flight,TOF),其基本原理是通过连续发射光脉冲(一般为不可见光)到被观测物体上,然后用传感器接收从物体返回的光,通过探测光脉冲的飞行(往返)时间来得到目标物距离。
TOF法根据调制方法的不同,一般可以分为两种:脉冲调制(pulsed modulation)和连续波调制(continuous wave modulation)。脉冲调制可以直接根据脉冲发射和接收的时间差来测算距离。在实际应用中,连续波调制通常采集的正弦波调制。由于接收端和发射端正弦波的相位偏移和物体距离摄像头的距离成正比,因此可以利用相位偏移来测量距离。
7、法向(normal)是指法线方向,与切向(切线方向)垂直。切向和法向均是相对于界面、轨迹等而言。法向图相当于在物体的凹凸表面的每个点上做法线,为表示法向信息的图像,法向图中的每个像素包括高度值,含有细节表面信息。
8、光照主方向,是指环境中多个光源中主光源的光源照射方向,包括方位角和高度角。主光源可以认为为多个光源中光源强度最强的光源。光源可以包括日光灯、台灯等。
9、环境图(environment map),为HDR全景图,记录完整的光照情况。
以上是对本申请实施例所涉及的名词的简单介绍,以下不再赘述。
图1是一种适用于本申请的应用场景的示意图。
在一个示例中,以电子设备为手机进行举例说明,如图1中的(a)所示,手机显示桌面10,桌面10上包括有第三方应用程序“短视频”的图标11。响应于用户针对桌面10上的图标11的点击操作,手机运行“短视频”应用,并显示如图1中的(b)所示的显示界面12;该显示界面12中可以包括取景框13,还包括用于指示录像的控件14,以及指示特效的控件15;在检测到用户点击控件14或控件15之前,该取景框13内可以显示预览图像。在预览图像中显示一室内足球场,室内的多处光源将足球场照射的灯火通明。
当用户期望在上述场景中增加虚拟人像时,例如想在足球场上增加一个虚拟踢足球的运动员时,用户可以在显示界面12上进行特效选择,如图1中的(c)所示;响应于用户针对控件15的点击操作,电子设备可以显示如图1中的(d)所示的显示界面16,该显示界面16包括显示预览图像的取景框13,还包括多个特效选项图标,例如一个“踢足球”的图标17。
如图2中的(a)所示,在检测到用户在显示界面16上选择“踢足球”的特效后,响应于用户针对图标17的操作,电子设备可以显示如图2中的(b)所示的显示界面18,这样,在该显示界面18中的取景框中显示的预览图像中,在足球场上出现了新增的虚拟踢足球的运动员19。
如图2中的(b)所示,显示界面18中还包括有用于指示录像的控件14,在检测到用户点击控件14的操作后,响应于用户的操作,电子设备可以结合该增加的虚拟踢足球的运动员19,对运动员19和室内足球场场景一起进行视频拍摄。
在上述示例中,为了能将虚拟踢足球的运动员19能更好的融入室内足球场场景中,相关技术通常会对拍摄场景中的光照情况进行分析,确定出光照主方向,然后,根据该光照主方向,对增加的虚拟踢足球的运动员的受光情况进行确定和设置,例如依据该受光情况在预览图像中增加打光和阴影20,使得运动员在足球场上跑动的视觉效果更真实。
为了达到上述效果,相关技术在进行光照情况分析时,提供了多种光照估计方法。其中,第一种方法是直接利用第一网络模型来求解光照主方向。比如针对图2中的(a)所示的室内足球场场景,如图3中的(a)所示,利用摄像头采集一帧拍摄图像,将拍摄图像输入第一网络模型后,利用第一网络模型来确定该拍摄图像中所对应的光照主方向。或者,如图3中的(b)所示,针对摄像头采集的拍摄图像,先利用第二网络模型将前景和背景(比如前景为旗子,背景为足球场场地)进行分离后,确定出包含背景的环境图,然后再根据环境图确定对应的光照主方向。
其中,第一网络模型一般包括多个卷积层和多个全连接层,第一网络模型用于根据拍摄图像确定光照主方向;第二网络模型一般为编解码结构,第二网络模型用于根据拍摄图像确定环境图,第二网络模型常用的基模型比如为U-net模型。
如图3中的(c)所示,第二种方法是根据拍摄图像利用第三网络模型估计出球谐系数,再将球谐系数转换成环境图,然后再根据环境图确定光照主方向,相当于利用球谐系数间接求解光照主方向。球谐系数用于编码和存储物体表面光照分布,本质上是一组具有正交完备性的基函数。其中,第三网络模型可以与第一网络模型结构相同,第三网络模型用于根据拍摄图像确定球谐系数。
第三种方法是在第二种方法上所进行的改进。例如,如图3中的(d)所示,先根据拍摄图像,利用第四网络模型确定出对应的法向图,再将拍摄图像和法向图拼接后,利用上述第二种方法求解光照主方向。其中,第四网络模型可以与第二网络模型结构相同,第四网络模型用于进行法向估计,根据拍摄图像确定法向图。
在上述提供的三种方法中,第一种方法需要利用第一网络模型或第二网络模型,第二种方向需要利用第二网络模型、第三种方法需要利用第四网络模型,由于第一网络模型、第二网络模型、第三网络模型和第四网络模型均需要基于拍摄训练图像训练而成,对训练数据具有较大的依赖性,而通常基于有限的拍摄训练数据训练出的第一网络模型、第二网络模型、第三网络模型或第四网络模型在后续应用时,处理效果并不好,不能准确地估计光照主方向、环境图、球谐系数或法向图。其中,拍摄训练图像指的是训练中使用的拍摄图像。
第二种方法需要求解球谐系数来间接估计光照主方向,但由于球谐系数是对环境图的低频离散采样,而高亮光源对应的是环境图像中的高频光照部分,因此球谐系数不能准确表示高亮光源,从而导致后续在使用过程中,根据球谐系数转换成的环境图所估计出的光照主方向会不准确。例如,如图4中的(a)所示,为原始环境图像,如图4中的(b)所示,为利用球谐系数恢复的环境图,两者相比,环境图相对于原始环境图像来说非常模糊,无法显示出任何有用的细节信息,更不能反应原始环境图像中所包括的用于表示室内场景高亮光源的区域a1、区域a2、区域a3和区域a4等。
第三种方法相对于第二种方法,虽然在光照估计之前结合了法向图这一先验信息,但是当利用第四网络模型确定出的法向图不准确时,后续光照估计出的光照主方向精度可能只能轻微提升,或者也有可能反而受其影响降低。法向估计不准是因为法向是一个病态问题,较难估计准确。比如,一般会通过3D传感器采集场景深度并转换成法向图真值,以此来作为法向估计的真值图,但是法向估计的误差在近处能达到20°,远处能达到30°~40°,若利用这样大的误差下确定出的法向图进行光照估计,相当于利用不准确地先验信息来进行光照估计,因此,会对估计的光照主方向的精度造成影响。
有鉴于此,本申请实施例提供一种光照估计方法,通过深度摄像头获取准确的法向图,再将法向图和第一摄像头获取的第一图像进行拼接,而后输入光照主方向估计模型来确定光照主方向。由于本申请通过深度摄像头获取法向图来作为足够准确的先验信息,相对没有先验信息或者先验信息不准确的相关技术来说,可以显著提高光照主方向估计的精度;相对于其他相关技术来说,估计出的光照主方向的准确更高。
本申请实施例提供的光照估计方法可以用于上述图1和图2所示的场景,还可以应用但不限于以下场景中:
示例性地,人脸相关应用场景,比如人脸解锁场景、人脸支付场景、背景虚化、人像光效、动画表情、三维美颜、活体检测、视线矫正等。
示例性地,智能人机交互场景,比如骨骼跟踪、手势识别、空间测绘、三维重建、地图重建、自主导航、增强现实(augmented reality,AR)场景等。
应理解,上述为对应用场景的举例说明,并不对本申请的应用场景作任何限定。
本申请实施例提供的光照估计方法可以适用于各种电子设备。
在本申请实施例中,电子设备可以是手机、智慧屏、平板电脑、可穿戴电子设备、车载电子设备、增强现实设备、虚拟现实(virtual reality,VR)设备、笔记本电脑、超级移动个人计算机(ultra-mobile personal computer,UMPC)、上网本、个人数字助理(personaldigital assistant,PDA)、投影仪等等,本申请实施例对电子设备的具体类型不作任何限制。
示例性的,上述电子设备包括至少两个摄像头,且其中一个摄像头为深度摄像头。图5为本申请实施例提供的一种摄像头的排布结构图。
以电子设备100是手机为例,如图5中的(a)所示,在手机的后盖上可以排布两个摄像头,分别位于手机后盖左上角位置处的两个圆形区域中,该两个摄像头也可以称为后置摄像头。或者,如图5中的(b)所示,在手机的显示屏上可以排布两个摄像头,并排位于显示屏上方的居中位置,该两个摄像头也可以称为前置摄像头。该两个后置摄像头或者前置摄像头可以分别称为第一摄像头1931和第二摄像头1932,第一摄像头1931例如可以分别为超广角摄像头、广角摄像头、长焦摄像头、黑白摄像头或多光谱摄像头等,第二摄像头1932为深度摄像头。
其中,超广角摄像头对应的视场角范围相对大于广角摄像头对应的视场角范围。广角摄像头对应的视场角范围相对大于长焦摄像头对应的视场角范围,该超广角摄像头或广角摄像头又可以称为主摄摄像头。相对来说,超广角摄像头获取的图像细节更丰富,清晰度更高,长焦摄像头获取的图像细节较少,清晰度相对较低一些。多光谱摄像头对应的视场角范围可以与主摄摄像头对应的视场角范围一致,多光谱摄像头获取的图像细节更多,清晰度相对于超广角摄像头获取的图像细节更丰富,清晰度更高。上述仅为针对第一摄像头1931的几种举例,第一摄像头1931还可以为其他类型的摄像头,具体可以根据需要进行设置和更改,本申请实施例对此不进行任何限制。
当然,上述仅为两种示例,手机的后盖或显示屏上还可以排布三个或者四个以上的摄像头,摄像头的具体数量和排布位置、以及每个摄像头的种类、功能可以根据需要进行设置和修改,本申请实施例对此不进行任何限制。
上述对本申请实施例提供的摄像头进行了介绍,下面结合该摄像头的排布方式对本申请实施例提供的光照估计方法的详细步骤进行说明。
图6为本申请实施例提供的一种光照估计方法的流程示意图。该方法10可以应用于上述所述的任意一种电子设备,该电子设备包括多个摄像头。
本申请提供的光照估计方法可以应用于室内场景光照估计,室内场景光照效果起决定性作用的可能是各种常见的室内光源,比如是日光灯、台灯、窗户等,通过光照估计可以估计光照主方向,还可以估计各个光源的光照信息。
需要说明的是,深度摄像头在室内场景下获取的深度信息更准确,因此,本申请提供的光照估计方法可以应用于室内场景。
如图6所示,本申请提供的光照估计方法10可以包括以下S11至S13。
S11、获取第一图像和第一法向图。
当电子设备包括第一摄像头和第二摄像头(深度摄像头)时,第一图像可以是电子设备利用第一摄像头拍摄到的图像,第一法向图为第二摄像头获取到的图像。或者,当电子设备不包括摄像头时,第一图像和第一法向图还可以是从电子设备内部获取的图像,比如,电子设备的相册中存储的图像,或者,电子设备从云端服务器获取的图像。第一图像和第一法向图虽来源于不同的摄像头,第一图像和第一深度图像对应同一待拍摄场景。
待拍摄场景用于指示用户期望拍摄的场景,随着镜头朝向改变而改变。
应理解,当第一摄像头为彩色摄像头(比如包括超广角摄像头、广角摄像头、长焦摄像头)时,第一图像可以为位于RGB颜色空间的图像,也即第一图像用于表示场景中的色彩信息;此处,RGB颜色空间仅为一种示例,第一图像还可以为其他表示色彩信息的图像。当第一摄像头为黑白摄像头时,第一图像为黑白图像。当第一摄像头为多光谱摄像头时,第一图像为多光谱图像。第一法向图用于表示待拍摄场景中拍摄物所对应的法向特征,可以理解为第一法向图中的每个像素对应一个法向。
应理解,第一图像的帧数、采集频率和第一法向图的帧数、采集频率可以相同,也可以不同,具体根据需要进行设置和修改,本申请对此不进行任何限制。
此外,第一图像和第一法向图的尺寸相同,包括相同的长和宽。
第一法向图也可以称为法向图。
S12、将第一图像和第一法向图进行拼接,作为第一拼接图像。
例如,如图7所示,由于第一图像和第一法向图的尺寸相同,由此可以将第一图像和第一法向图相同行数或相同列数的像素排布在一起,比如如图7中的(a)所示,可以将第一图像排布在左侧,第一法向图排布在右侧,由此拼接得到第一拼接图像,或者互换位置;如图7中的(b)所示,可以将第一图像排布在上方,第一法向图排布在下方,由此拼接得到第一拼接图像,或者互换位置。
S13、将第一拼接图像输入光照主方向估计模型进行处理,确定光照主方向,该光照主方向包括光源对应的方位角和高度角。
图8示出了一种本申请提供的光照主方向估计模型的结构示意图。
如图8所示,光照主方向估计模型包括多个卷积层和多个全连接层(fullyconnected layer,FC)。光照主方向估计模型用于根据第一拼接图像估计光照主方向。
应理解,光照主方向估计模型为已训练的网络模型,光照主方向估计模型在训练时,可以利用多帧拼接训练图像进行训练,拼接训练图像由彩色图像与第一法向图拼接而成,或者,由单色图像与第一法向图拼接而成。
本申请实施例提供的光照估计方法中,通过深度摄像头获取准确的第一法向图,再将第一法向图和第一摄像头获取的第一图像进行拼接,而后将拼接成的第一拼接图像输入光照主方向估计模型来确定光照主方向。由于本申请通过深度摄像头获取第一法向图来作为足够准确的先验信息,相对没有先验信息或者先验信息不准确的相关技术来说,可以显著提高光照主方向估计的精度;相对于其他相关技术来说,估计出的光照主方向的准确性更高。
图9为本申请实施例提供的另一种光照估计方法的流程示意图。该方法20可以应用于上述所述的任意一种电子设备。
如图9所示,本申请提供的光照估计方法20可以包括以下S21至S26。
S21、获取第一图像和第一深度图像(depth image)。
当电子设备包括第一摄像头和第二摄像头(深度摄像头)时,第一图像可以是电子设备利用第一摄像头拍摄到的图像,第一深度图像为第二摄像头获取到的图像。或者,当电子设备不包括摄像头时,第一图像和第一深度图像还可以是从电子设备内部获取的图像,比如,电子设备的相册中存储的图像,或者,电子设备从云端服务器获取的图像。第一图像和第一深度图像虽然来源于不同的摄像头,但第一图像和第一深度图像对应同一待拍摄场景。
第一深度图像也可以称为距离图像,包括深度信息;深度信息指距离图像中每个像素的像素值用于表示摄像头到场景中对应的一个点的距离,比如以毫米为单位。
第一图像的帧数、采集频率和第一深度图像的帧数、采集频率可以相同,也可以不同,具体根据需要进行设置和修改,本申请对此不进行任何限制。
示例性地,以电子设备为手机为例,手机可以包括两个前置摄像头,分别称为第一摄像头和第二摄像头;其中,第一摄像头比如为广角摄像头,第二摄像头为深度摄像头。第一摄像头和第二摄像头用于拍摄同一拍摄对象;比如第一摄像头和第二摄像头用于拍摄机主用户的脸部。
基于上述设置,手机可处于灭屏状态,响应于用户抬起电子设备的操作,电子设备显示锁屏界面,并同时启动摄像头进行拍摄,比如利用上述所述的第一摄像头采集1帧第一图像,及利用第二摄像头采集1帧第一深度图像。
示例性二,以电子设备为平板电脑为例,平板电脑可以包括两个后置摄像头,分别称为第一摄像头和第二摄像头,其中,第一摄像头比如为多光谱摄像头,第二摄像头为深度摄像头。第一摄像头和第二摄像头用于拍摄同一拍摄对象,比如第一摄像头和第二摄像头用于拍摄同一室内环境。
基于上述设置,平板电脑可以显示AR应用的图标,响应于用户对AR应用的图标的点击操作,电子设备可以启动AR应用,并针对待拍摄场景,利用上述所述的第一摄像头采集多帧第一图像,以及利用第二摄像头采集多帧第一深度图像。
S22、将第一深度图像与第一图像进行RGBD对齐处理。
由于第一深度图像和第一图像来源于不同的摄像头,摄像头的空间坐标系不同,可能导致两者图像内容出现偏差,因此,为了提高后续数据的准确性,需要先以第一图像为基准,将第一深度图像与第一图像进行RGBD对齐处理。
RGBD对齐的原理为将第一深度图像上的像素坐标点转换到第一图像对应的像素坐标系中。
可选地,图10示出了本申请实施例提供的一种RGBD对齐的流程示意图。
如图10所示,RGBD对齐可以包括以下S221至S224。
S221、将第一深度图像从像素坐标系转到第二摄像头(深度摄像头)的相机坐标系中。
图像的像素坐标系为2D坐标系,为从相机内读到的信息,图像物理坐标的离散化,以像素为单位,坐标原点可以在左上角(u,v)。
相机坐标系为3D坐标系,从相机的视角来描述影像在三维空间中的坐标。相机坐标系以相机中心为原点。
例如,可以通过以下公式(一)来将第一深度图像从像素坐标系转到第二摄像头的相机坐标系。
其中,Kd为第二摄像头的内参矩阵,(xd,yd,zd)为第二摄像头的相机坐标系下的点,(ud,vd)为第二摄像头的像素坐标系下的点,zd为深度。
S222、去畸变处理。
由于第一深度图像从二维坐标系转到了三维坐标系下,增加了空间信息,因此,可能会发生畸变,例如二维坐标系下的直线在三维坐标系下变成了曲线。对此,可以进行去畸变处理,消除转换坐标系时产生的误差,比如将三维坐标系下的曲线恢复成直线。
此处,中心像素点的畸变小,则相应在去畸变处理时,对中心像素点的去畸变程度较低,相对的,周边像素点的去畸变程度较高。
还应理解,本申请提供的去畸变处理可以多次迭代,直至达到满足需求的处理效果。
S223、基于第二摄像头和第一摄像头的RT刚体变换,将去畸变处理后的第二相机坐标系中的点转换到第一摄像头的相机坐标系中。
RT刚体变换指的是将物体的位置(平移变换)和朝向(旋转变换)发生改变,而形状不变。
例如,可以通过以下公式(二)来将去畸变处理后的数据(位于第二摄像头的相机坐标系下),转到第一摄像头的相机坐标系。
其中,R为旋转矩阵,T为平移矩阵,(xd,yd,zd)为第二摄像头的相机坐标系下的点,(xr,yr,zr)为第一摄像头的相机坐标系下的点。
S224、将位于第一摄像头的相机坐标系上的点投影到第一图像对应的像素坐标系。
例如,可以通过以下公式(三)来将位于第一摄像头的相机坐标系上的点投影到第一图像对应的像素坐标系。
其中,Kr为第一摄像头的内参矩阵,(xr,yr,zr)为第一摄像头的相机坐标系下的点,(ur,vr)为第一摄像头的像素坐标系下的点。
应理解,至此可以得到ur,vr,zr的关系,即为对齐后的第一深度图像,对齐后的第一深度图像的像素坐标系与第一图像对应的像素坐标系相同。
S23、补齐对齐后的第一深度图像中缺失位置处的深度数据,得到第二深度图像。
应理解,由于第二摄像头和第一摄像头的视场角不一致,第一摄像头采集的第一图像的部分像素在第二摄像头采集的第一深度图像中没有对应的映射点;或者,根据上述S221至S224确定出的映射坐标是浮点数,取整后会有部分像素覆盖不到;又或者,深度计算中会有一些特殊的标志位,这些标志位无深度信息,从而导致从第二摄像头的像素坐标系变换第一摄像头的像素坐标系后,部分点是映射不到的,进而造成一些像素位置缺失深度数据。
示例性地,可以利用某一像素值相邻外圈像素的深度数据(或称为深度点)的插值,来作为缺失位置处的深度数据。当然,也可以利用其他方式补齐,本申请实施例对此不进行任何限制。
例如,在进行补齐时,第一步先判断该像素是否需要插值,然后第二步再对需要插值的无深度数据的像素进一步判断是否能插值以及针对能插值的像素进行插值,确定出对应的深度数据。
第一步可以包括:以无深度数据的像素为中心,比如获取5×5大小的窗口,统计该窗口中有深度数据的像素个数是多少,统计数值可以记为Valid Count;若Valid Count大于预设统计阈值,则说明中心像素周围对应有深度数据的像素数量比较多,可以信赖,由此,可以对该窗口中包括的深度数据进行插值处理。
若Valid Count小于或等于预设统计阈值,则说明中心像素周围对应有深度数据的像素数量比较少,不可以信赖,由此,不对该窗口中的中包括的深度数据进行插值处理。
第二步可以包括:针对第一步中可以进行插值处理的窗口中心位置处的像素,判断是否属于深度突变区域;若是处于深度突变区域,则进行插值,若不处于深度突变区域,则不进行插值。比如,以无深度数据的像素为中心,获取3×3大小的窗口,在窗口中取四个顶点,计算该四个顶点处的像素所对应的深度平均值和深度标准差,若深度标准差小于预设标准差阈值,则说明处于深度突变区域,可进行插值,插值结果为深度平均值,也即将该深度平均值作为中心位置处的像素所对应的深度数据。若深度标准差大于获得等于预设标准差阈值,则说明不处于深度突变区域,不进行插值。
上述预设统计阈值、预设标准差阈值均可以根据需要进行设置和修改,本申请实施例对此不进行任何限制。
此外,第二深度图像与第一图像的尺寸相同,包括相同的长和宽。
S24、将第二深度图像转换为第二法向图。
例如,可以根据以下预设公式组,将第二深度图像转换为第二法向图。
预设公式组包括:
normal_x=-[depth(x+1,y)-depth(x-1,y)]/2;
normal_y=-[depth(x,y+1)-depth(x,y-1)]/2;
direction=(normal_x,normal_y,1);
normal=direction/magnitude;
应理解,上述预设公式组中的第一个公式用于根据位于(x+1,y)位置处的像素对应的深度数据、位于(x-1,y)位置处的像素对应的深度数据,来确定位于(x,y)位置处的像素对应的法向所包括的x方向上的信息。
同理,第二个公式用于根据位于(x,y+1)位置处的像素对应的深度数据、位于(x,y-1)位置处的像素对应的深度数据,来确定位于(x,y)位置处的像素对应的法向所包括的y方向上的信息。
基于上述确定出的法向所包括的x方向上的信息、法向所包括的y方向上的信息,根据第三个公式为生成法向(direction,D)。
然后,第四个公式和第五个公式用于根据x方向上、y方向上、z方向上的法向信息,进行归一化处理。其中,第四个公式用于根据x方向上、y方向上、z方向上的法向信息,确定模值;第五个公式用于根据模值,确定归一化后的法向。
可选地,当第二深度图像包括多帧时,可以将多帧第二深度图像融合为1帧图像后,再转换为第二法向图,或者,也可以将每帧第二深度图像转换为对应的1帧第二法向图后,再将多帧第二法向图融合为一帧第二法向图。图像融合方法可以利用相关技术中的融合算法,本申请实施例对此不进行任何限制。
此外,第二法向图与第二深度图像、第一图像的尺寸相同,包括相同的长和宽。
第二法向图也可以称为法向图。
S25、将第一图像和第二法向图进行拼接,作为第二拼接图像。
例如,由于第一图像和第二法向图的尺寸相同,由此可以将第一图像和第二法向图相同行数或相同列数的像素排布在一起,比如如图7中的(a)所示,可以将第一图像排布在左侧,第二法向图排布在右侧,由此拼接得到第二拼接图像;或者如图7中的(b)所示,可以将第一图像排布在上方,第二法向图排布在下方,由此拼接得到第二拼接图像。
S26、将第二拼接图像输入光照主方向估计模型进行处理,确定光照主方向,该光照主方向包括方位角和高度角。
本申请实施例提供的光照估计方法中,通过深度摄像头获取第一深度图像;基于第一摄像头获取的第一图像对第一深度图像进行RGBD对齐后,补齐缺失位置数据,得到第二深度图像;然后,将第二深度图像转换成准确的第二法向图;再将第二法向图和第一摄像头获取的第一图像进行拼接,而后输入光照主方向估计模型来确定光照主方向。
由于RGBD对齐精度可以达到1像素,因此,本申请将RGBD对齐后的第二深度图像转换成的第二法向图来作为先验信息时,足够的准确;相对没有先验信息或者先验信息不准确的相关技术来说,可以显著提高光照主方向估计的精度;相对于其他相关技术来说,光照主方向的准确更高。
图11示出了本申请实施例提供的一种显示界面的示意图。
如图11中的(a)所示,电子设备上显示有AR应用图标。当用户想使用AR功能时,用户可以点击AR应用图标,如图11中的(b)所示;响应于用户的点击操作,电子设备可以启动AR应用,并在启动过程中,利用第一摄像头采集第一图像,利用深度摄像头(第二摄像头)采集第一深度图像,并根据本申请实施例提供的光照估计方法中的步骤,基于第一图像和第一深度图像确定出真实场景中的光照主方向。
后续,基于该光照主方向可以针对虚拟对象的光影进行变换,从而使得虚拟对象与真实场景更有效地融合,提升用户体验。
上文结合图1至图11,描述了本申请实施例的适用场景以及光照估计方法。下面将结合图12至图15,详细描述本申请适用的电子设备的软件***、硬件***、装置以及芯片。应理解,本申请实施例中的软件***、硬件***、装置以及芯片可以执行前述本申请实施例的各种方法,即以下各种产品的具体工作过程,可以参考前述方法实施例中的对应过程。
图12示出了一种适用于本申请的电子设备的硬件***。电子设备100可用于实现上述方法实施例中描述的光照估计方法。
电子设备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等。
需要说明的是,图12所示的结构并不构成对电子设备100的具体限定。在本申请另一些实施例中,电子设备100可以包括比图12所示的部件更多或更少的部件,或者,电子设备100可以包括图12所示的部件中某些部件的组合,或者,电子设备100可以包括图12所示的部件中某些部件的子部件。图12所示的部件可以以硬件、软件、或软件和硬件的组合实现。
处理器110可以包括一个或多个处理单元。例如,处理器110可以包括以下处理单元中的至少一个:应用处理器(application processor,AP)、调制解调处理器、图形处理器(graphics processing unit,GPU)、图像信号处理器(image signal processor,ISP)、控制器、视频编解码器、数字信号处理器(digital signal processor,DSP)、基带处理器、神经网络处理器(neural-network processing unit,NPU)。其中,不同的处理单元可以是独立的器件,也可以是集成的器件。控制器可以根据指令操作码和时序信号,产生操作控制信号,完成取指令和执行指令的控制。
处理器110中还可以设置存储器,用于存储指令和数据。在一些实施例中,处理器110中的存储器为高速缓冲存储器。该存储器可以保存处理器110刚用过或循环使用的指令或数据。如果处理器110需要再次使用该指令或数据,可从所述存储器中直接调用。避免了重复存取,减少了处理器110的等待时间,因而提高了***的效率。
在一些实施例中,处理器110可以包括一个或多个接口。例如,处理器110可以包括以下接口中的至少一个:内部集成电路(inter-integrated circuit,I2C)接口、内部集成电路音频(inter-integrated circuit sound,I2S)接口、脉冲编码调制(pulse codemodulation,PCM)接口、通用异步接收传输器(universal asynchronous receiver/transmitter,UART)接口、移动产业处理器接口(mobile industry processor interface,MIPI)、通用输入输出(general-purpose input/output,GPIO)接口、SIM接口、USB接口。
I2C接口是一种双向同步串行总线,包括一根串行数据线(serial data line,SDA)和一根串行时钟线(derail clock line,SCL)。I2S接口可以用于音频通信。PCM接口也可以用于音频通信,将模拟信号抽样,量化和编码。UART接口是一种通用串行数据总线,用于异步通信。该总线可以为双向通信总线。它将要传输的数据在串行通信与并行通信之间转换。MIPI接口可以被用于连接处理器110与显示屏194和摄像头193等***器件。MIPI接口包括摄像头串行接口(camera serial interface,CSI)、显示屏串行接口(display serialinterface,DSI)等。
在一些实施例中,处理器110和摄像头193通过CSI接口通信,实现电子设备100的拍摄功能。处理器110和显示屏194通过DSI接口通信,实现电子设备100的显示功能。GPIO接口可以通过软件配置。GPIO接口可以被配置为控制信号接口,也可被配置为数据信号接口。
在一些实施例中,GPIO接口可以用于连接处理器110与摄像头193,显示屏194、无线通信模块160、音频模块170和传感器模块180。GPIO接口还可以被配置为I2C接口、I2S接口、UART接口或MIPI接口。
USB接口130是符合USB标准规范的接口,例如可以是迷你(Mini)USB接口、微型(Micro)USB接口或C型USB(USB Type C)接口。USB接口130可以用于连接充电器为电子设备100充电,也可以用于电子设备100与***设备之间传输数据,还可以用于连接耳机以通过耳机播放音频。USB接口130还可以用于连接其他电子设备100,例如AR设备。
示例性地,在本申请的实施例中,处理器110可以用于执行本申请实施例提供的光照估计方法;例如,获取第一图像和法向图,所述法向图用于表示被摄物对应的法线方向,所述第一图像和所述法向图来源于不同的摄像头;将所述第一图像和所述法向图进行拼接,得到第一拼接图像;利用光照主方向估计模型对所述第一拼接图像进行处理,确定光照主方向,所述光照主方向包括光源的方位角和高度角。
图12所示的各模块间的连接关系只是示意性说明,并不构成对电子设备100的各模块间的连接关系的限定。可选地,电子设备100的各模块也可以采用上述实施例中多种连接方式的组合。
充电管理模块140用于从充电器接收电力。充电管理模块140为电池142充电的同时,还可以通过电源管理模块141为电子设备100供电。电源管理模块141用于连接电池142,充电管理模块140与处理器110。电源管理模块141接收电池142和/或充电管理模块140的输入,为处理器110,内部存储器121,显示屏194,摄像头193,和无线通信模块160等供电。电源管理模块141还可以用于监测电池容量、电池循环次数和电池健康状态(例如,漏电、阻抗)等参数。可选地,电源管理模块141可以设置于处理器110中,或者,电源管理模块141和充电管理模块140可以设置于同一个器件中。
电子设备100的无线通信功能可以通过天线1、天线2、移动通信模块150、无线通信模块160、调制解调处理器以及基带处理器等器件实现。天线1和天线2用于发射和接收电磁波信号。电子设备100中的每个天线可用于覆盖单个或多个通信频带。不同的天线还可以复用,以提高天线的利用率。
移动通信模块150可以提供应用在电子设备100上的无线通信的解决方案,例如下列方案中的至少一个:第二代(2th generation,2G)移动通信解决方案、第三代(3thgeneration,3G)移动通信解决方案、***(4th generation,5G)移动通信解决方案、第五代(5th generation,5G)移动通信解决方案。
调制解调处理器可以包括调制器和解调器。其中,调制器用于将待发送的低频基带信号调制成中高频信号。解调器用于将接收的电磁波信号解调为低频基带信号。随后解调器将解调得到的低频基带信号传送至基带处理器处理。低频基带信号经基带处理器处理后,被传递给应用处理器。应用处理器通过音频设备(例如,扬声器170A、受话器170B)输出声音信号,或通过显示屏194显示图像或视频。在一些实施例中,调制解调处理器可以是独立的器件。在另一些实施例中,调制解调处理器可以独立于处理器110,与移动通信模块150或其他功能模块设置在同一个器件中。
与移动通信模块150类似,无线通信模块160也可以提供应用在电子设备100上的无线通信解决方案,例如下列方案中的至少一个:无线局域网(wireless local areanetworks,WLAN)、蓝牙(bluetooth,BT)、蓝牙低功耗(bluetooth low energy,BLE)、超宽带(ultra wide band,UWB)、全球导航卫星***(global navigation satellite system,GNSS)、调频(frequency modulation,FM)、近场通信(near field communication,NFC)、红外(infrared,IR)技术。
在一些实施例中,电子设备100的天线1和移动通信模块150耦合,电子设备100的天线2和无线通信模块160耦合,使得电子设备100可以通过无线通信技术与网络和其他电子设备通信。
电子设备100可以通过GPU、显示屏194以及应用处理器实现显示功能。GPU为图像处理的微处理器,连接显示屏194和应用处理器。GPU用于执行数学和几何计算,用于图形渲染。处理器110可包括一个或多个GPU,其执行程序指令以生成或改变显示信息。
显示屏194可以用于显示图像或视频。显示屏194包括显示面板。显示面板可以采用液晶显示屏(liquid crystal display,LCD)、有机发光二极管(organic light-emitting diode,OLED)、有源矩阵有机发光二极体(active-matrix organic light-emitting diode,AMOLED)、柔性发光二极管(flex light-emitting diode,FLED)、迷你发光二极管(mini light-emitting diode,Mini LED)、微型发光二极管(micro light-emitting diode,Micro LED)、微型OLED(Micro OLED)或量子点发光二极管(quantum dotlight emitting diodes,QLED)。在一些实施例中,电子设备100可以包括1个或N个显示屏194,N为大于1的正整数。
电子设备100可以通过ISP、摄像头193、视频编解码器、GPU、显示屏194以及应用处理器等实现拍摄功能。
ISP用于处理摄像头193反馈的数据。例如,拍照时,打开快门,光线通过镜头被传递到摄像头感光元件上,光信号转换为电信号,摄像头感光元件将所述电信号传递给ISP处理,转化为肉眼可见的图像。ISP可以对图像的噪点、亮度和色彩进行算法优化,ISP还可以优化拍摄场景的曝光和色温等参数。在一些实施例中,ISP可以设置在摄像头193中。
摄像头193用于捕获静态图像或视频。物体通过镜头生成光学图像投射到感光元件。感光元件可以是电荷耦合器件(charge coupled device,CCD)或互补金属氧化物半导体(complementary metal-oxide-semiconductor,CMOS)光电晶体管。感光元件把光信号转换成电信号,之后将电信号传递给ISP转换成数字图像信号。ISP将数字图像信号输出到DSP加工处理。DSP将数字图像信号转换成标准的红绿蓝(red green blue,RGB),YUV等格式的图像信号。在一些实施例中,电子设备100可以包括1个或N个摄像头193,N为大于1的正整数。
示例性地,在本申请中,如图5所示,摄像头193包括一个第一摄像头1931和一个第二摄像头1932。第一摄像头例如为超广角摄像头、长焦摄像头、广角摄像头、多光谱摄像头、黑白摄像头中的任意一种。第二摄像头为深度摄像头。
示例性地,在本申请中,摄像头193还可以包括多个第一摄像头1931和多个第二摄像头1932。其中,每个第一摄像头可以为超广角摄像头、长焦摄像头、广角摄像头、多光谱摄像头、黑白摄像头中的任意一种。每个第二摄像头均为深度摄像头。
数字信号处理器用于处理数字信号,除了可以处理数字图像信号,还可以处理其他数字信号。例如,当电子设备100在频点选择时,数字信号处理器用于对频点能量进行傅里叶变换等。
视频编解码器用于对数字视频压缩或解压缩。电子设备100可以支持一种或多种视频编解码器。这样,电子设备100可以播放或录制多种编码格式的视频,例如:动态图像专家组(moving picture experts group,MPEG)1、MPEG2、MPEG3和MPEG4。
外部存储器接口120可以用于连接外部存储卡,例如安全数码(secure digital,SD)卡,实现扩展电子设备100的存储能力。外部存储卡通过外部存储器接口120与处理器110通信,实现数据存储功能。例如将音乐,视频等文件保存在外部存储卡中。
内部存储器121可以用于存储计算机可执行程序代码,所述可执行程序代码包括指令。内部存储器121可以包括存储程序区和存储数据区。
电子设备100可以通过音频模块170、扬声器170A、受话器170B、麦克风170C、耳机接口170D以及应用处理器等实现音频功能,例如,音乐播放和录音。
音频模块170用于将数字音频信息转换成模拟音频信号输出,也可以用于将模拟音频输入转换为数字音频信号。音频模块170还可以用于对音频信号编码和解码。
扬声器170A,也称为喇叭,用于将音频电信号转换为声音信号。电子设备100可以通过扬声器170A收听音乐或免提通话。受话器170B,也称为听筒,用于将音频电信号转换成声音信号。
在一些实施例中,压力传感器180A可以设置于显示屏194。压力传感器180A的种类很多,例如可以是电阻式压力传感器、电感式压力传感器或电容式压力传感器。电容式压力传感器可以是包括至少两个具有导电材料的平行板,当力作用于压力传感器180A,电极之间的电容改变,电子设备100根据电容的变化确定压力的强度。当触摸操作作用于显示屏194时,电子设备100根据压力传感器180A检测所述触摸操作。电子设备100也可以根据压力传感器180A的检测信号计算触摸的位置。在一些实施例中,作用于相同触摸位置,但不同触摸操作强度的触摸操作,可以对应不同的操作指令。例如:当触摸操作强度小于第一压力阈值的触摸操作作用于短消息应用图标时,执行查看短消息的指令;当触摸操作强度大于或等于第一压力阈值的触摸操作作用于短消息应用图标时,执行新建短消息的指令。
陀螺仪传感器180B可以用于确定电子设备100的运动姿态。在一些实施例中,可以通过陀螺仪传感器180B确定电子设备100围绕三个轴(即,x轴、y轴和z轴)的角速度。陀螺仪传感器180B可以用于拍摄防抖。例如,当快门被按下时,陀螺仪传感器180B检测电子设备100抖动的角度,根据角度计算出镜头模组需要补偿的距离,让镜头通过反向运动抵消电子设备100的抖动,实现防抖。陀螺仪传感器180B还可以用于导航和体感游戏等场景。
气压传感器180C用于测量气压。磁传感器180D包括霍尔传感器。电子设备100可以利用磁传感器180D检测翻盖皮套的开合。
加速度传感器180E可检测电子设备100在各个方向上(一般为x轴、y轴和z轴)加速度的大小。当电子设备100静止时可检测出重力的大小及方向。加速度传感器180E还可以用于识别电子设备100的姿态,作为横竖屏切换和计步器等应用程序的输入参数。
距离传感器180F用于测量距离。电子设备100可以通过红外或激光测量距离。在一些实施例中,例如在拍摄场景中,电子设备100可以利用距离传感器180F测距以实现快速对焦。
接近光传感器180G可以包括例如发光二极管(light-emitting diode,LED)和光检测器,例如,光电二极管。LED可以是红外LED。电子设备100通过LED向外发射红外光。电子设备100使用光电二极管检测来自附近物体的红外反射光。当检测到反射光时,电子设备100可以确定附近存在物体。当检测不到反射光时,电子设备100可以确定附近没有物体。电子设备100可以利用接近光传感器180G检测用户是否手持电子设备100贴近耳朵通话,以便自动熄灭屏幕达到省电的目的。接近光传感器180G也可用于皮套模式或口袋模式的自动解锁与自动锁屏。
环境光传感器180L用于感知环境光亮度。电子设备100可以根据感知的环境光亮度自适应调节显示屏194亮度。环境光传感器180L也可用于拍照时自动调节白平衡。环境光传感器180L还可以与接近光传感器180G配合,检测电子设备100是否在口袋里,以防误触。
指纹传感器180H用于采集指纹。电子设备100可以利用采集的指纹特性实现解锁、访问应用锁、拍照和接听来电等功能。
温度传感器180J用于检测温度。在一些实施例中,电子设备100利用温度传感器180J检测的温度,执行温度处理策略。例如,当温度传感器180J上报的温度超过阈值,电子设备100执行降低位于温度传感器180J附近的处理器的性能,以便降低功耗实施热保护。在另一些实施例中,当温度低于另一阈值时,电子设备100对电池142加热,以避免低温导致电子设备100异常关机。在其他一些实施例中,当温度低于又一阈值时,电子设备100对电池142的输出电压执行升压,以避免低温导致的异常关机。
触摸传感器180K,也称为触控器件。触摸传感器180K可以设置于显示屏194,由触摸传感器180K与显示屏194组成触摸屏,触摸屏也称为触控屏。触摸传感器180K用于检测作用于其上或其附近的触摸操作。触摸传感器180K可以将检测到的触摸操作传递给应用处理器,以确定触摸事件类型。可以通过显示屏194提供与触摸操作相关的视觉输出。在另一些实施例中,触摸传感器180K也可以设置于电子设备100的表面,并且与显示屏194设置于不同的位置。
骨传导传感器180M可以获取振动信号。在一些实施例中,骨传导传感器180M可以获取人体声部振动骨块的振动信号。骨传导传感器180M也可以接触人体脉搏,接收血压跳动信号。
按键190包括开机键和音量键。按键190可以是机械按键,也可以是触摸式按键。电子设备100可以接收按键输入信号,实现于案件输入信号相关的功能。
马达191可以产生振动。马达191可以用于来电提示,也可以用于触摸反馈。马达191可以对作用于不同应用程序的触摸操作产生不同的振动反馈效果。对于作用于显示屏194的不同区域的触摸操作,马达191也可产生不同的振动反馈效果。不同的应用场景(例如,时间提醒、接收信息、闹钟和游戏)可以对应不同的振动反馈效果。触摸振动反馈效果还可以支持自定义。
指示器192可以是指示灯,可以用于指示充电状态和电量变化,也可以用于指示消息、未接来电和通知。
SIM卡接口195用于连接SIM卡。SIM卡可以***SIM卡接口195实现与电子设备100的接触,也可以从SIM卡接口195拔出实现与电子设备100的分离。
上文详细描述了电子设备100的硬件***,下面介绍电子设备100的软件***。软件***可以采用分层架构、事件驱动架构、微核架构、微服务架构或云架构,本申请实施例以分层架构为例,示例性地描述电子设备100的软件***。
如图13所示,采用分层架构的软件***分成若干个层,每一层都有清晰的角色和分工。层与层之间通过软件接口通信。
在一些实施例中,软件***可以分为四层,从上至下分别为应用程序层、应用程序框架层、安卓运行时(Android Runtime)和***库、以及内核层。
应用程序层可以包括相机、图库、日历、通话、地图、导航、WLAN、蓝牙、音乐、视频、短信息等应用程序。
本申请实施例的光照估计方法可以应用于相机应用、视频应用、AR应用等。
应用程序框架层为应用程序层的应用程序提供应用程序编程接口(applicationprogramming interface,API)和编程框架。应用程序框架层可以包括一些预定义的函数。
例如,应用程序框架层包括窗口管理器、内容提供器、视图***、电话管理器、资源管理器和通知管理器。
窗口管理器用于管理窗口程序。窗口管理器可以获取显示屏大小,判断是否有状态栏、锁定屏幕和截取屏幕。
内容提供器用来存放和获取数据,并使这些数据可以被应用程序访问。所述数据可以包括视频、图像、音频、拨打和接听的电话、浏览历史和书签、以及电话簿。
视图***包括可视控件,例如显示文字的控件和显示图片的控件。视图***可用于构建应用程序。显示界面可以由一个或多个视图组成,例如,包括短信通知图标的显示界面,可以包括显示文字的视图以及显示图片的视图。
电话管理器用于提供电子设备100的通信功能,例如通话状态(接通或挂断)的管理。
资源管理器为应用程序提供各种资源,比如本地化字符串、图标、图片、布局文件和视频文件。
通知管理器使应用程序可以在状态栏中显示通知信息,可以用于传达告知类型的消息,可以短暂停留后自动消失,无需用户交互。
Android Runtime包括核心库和虚拟机。Android runtime负责安卓***的调度和管理。
核心库包含两部分:一部分是java语言需要调用的功能函数,另一部分是安卓的核心库。
应用程序层和应用程序框架层运行在虚拟机中。虚拟机将应用程序层和应用程序框架层的java文件执行为二进制文件。虚拟机用于执行对象生命周期的管理、堆栈管理、线程管理、安全和异常的管理、以及垃圾回收等功能。
***库可以包括多个功能模块,例如:表面管理器(surface manager),媒体库(Media Libraries),三维图形处理库(例如:针对嵌入式***的开放图形库(opengraphics library for embedded systems,OpenGL ES)和2D图形引擎(例如:skia图形库(skia graphics library,SGL))。
表面管理器用于对显示子***进行管理,并且为多个应用程序提供了2D图层和3D图层的融合。
媒体库支持多种音频格式的回放和录制、多种视频格式回放和录制以及静态图像文件。媒体库可以支持多种音视频编码格式,例如:MPEG4、H.264、动态图像专家组音频层面3(moving picture experts group audio layer III,MP3)、高级音频编码(advancedaudio coding,AAC)、自适应多码率(adaptive multi-rate,AMR)、联合图像专家组(jointphotographic experts group,JPG)和便携式网络图形(portable network graphics,PNG)。
三维图形处理库可以用于实现三维图形绘图、图像渲染、合成和图层处理。
二维图形引擎是2D绘图的绘图引擎。
内核层是硬件和软件之间的层。内核层可以包括显示驱动、摄像头驱动、音频驱动和传感器驱动等驱动模块。
下面结合显示拍照场景,示例性说明电子设备100的软件***和硬件***的工作流程。
当用户在触摸传感器180K上进行触摸操作时,相应的硬件中断被发送至内核层,内核层将触摸操作加工成原始输入事件,原始输入事件例如包括触摸坐标和触摸操作的时间戳等信息。原始输入事件被存储在内核层,应用程序框架层从内核层获取原始输入事件,识别出原始输入事件对应的控件,并通知该控件对应的应用程序(application,APP)。例如,上述触摸操作为单击操作,上述控件对应的APP为相机APP,相机APP被单击操作唤醒后,可以通过API调用内核层的摄像头驱动,通过摄像头驱动控制摄像头193进行拍摄。
比如,通过第一摄像头驱动控制第一摄像头进行拍摄,通过第二摄像头驱动控制第二摄像头(深度摄像头)进行拍摄。基于第一摄像头拍摄的第一图像,第二摄像头拍摄的深度图像,调用本申请提供的光照估计方法进行处理后,生成光照主方向的相关数据进行存储或发送给其他进程进行使用。
图14是本申请实施例提供的光照估计装置的结构示意图。该光照估计装置200包括获取单元210和处理单元220。
获取单元210用于获取第一图像和法向图,所述法向图用于表示被摄物对应的法线方向,所述第一图像和所述法向图来源于不同的摄像头。
处理单元220用于将所述第一图像和所述法向图进行拼接,得到第一拼接图像;利用光照主方向估计模型对所述第一拼接图像进行处理,确定光照主方向,所述光照主方向包括光源的方位角和高度角。
可选地,作为一种实施例,所述多个摄像头包括第一摄像头和第二摄像头,所述第二摄像头为深度摄像头;
处理单元220还用于:利用所述第一摄像头获取所述第一图像;
处理单元220还用于:利用所述深度摄像头获取第一深度图像,所述第一深度图像用于表示被摄物对应的深度数据;
将所述第一深度图像转换为所述法向图。
可选地,作为一种实施例,处理单元220还用于:将所述第一深度图像与所述第一图像进行RGBD对齐,所述RGBD对齐用于将所述第一深度图像上的像素坐标值转换到所述第一图像对应的像素坐标系中;
补齐对齐后的第一深度图像中缺失位置处的深度数据,得到第二深度图像;
将所述第二深度图像转换为所述法向图。
可选地,作为一种实施例,处理单元220还用于:将所述第一深度图像与所述第一图像进行RGBD对齐,所述RGBD对齐用于将所述第一深度图像上的像素坐标值转换到所述第一图像对应的像素坐标系中;
补齐对齐后的第一深度图像中缺失位置处的深度数据,得到第二深度图像;
将所述第二深度图像转换为所述法向图。
可选地,作为一种实施例,处理单元220还用于:将所述第一深度图像从像素坐标系转换到所述第二摄像头的相机坐标系中;
基于所述第二摄像头和所述第一摄像头的RT刚体变换,将所述第二摄像头的相机坐标系中的点转换到所述第一摄像头的相机坐标系中;
将所述第一摄像头的相机坐标系中的点投影到所述第一图像对应的像素坐标系上。
可选地,作为一种实施例,处理单元220还用于:去畸变处理。
可选地,作为一种实施例,处理单元220还用于:针对所述对齐后的第一深度图像中缺失位置处的像素,对相邻外圈像素的深度数据进行插值,作为缺失位置处的像素对应的深度数据,所述缺失位置用于指示缺失深度数据的像素的位置。
可选地,作为一种实施例,所述第一摄像头为超广角摄像头、长焦摄像头、广角摄像头、多光谱摄像头、黑白摄像头中的任意一种。
可选地,作为一种实施例,光照估计装置200应用于室内场景。
应理解,光照主方向估计模型可以部署于光照估计装置200中。
需要说明的是,上述光照估计装置200以功能单元的形式体现。这里的术语“单元”可以通过软件和/或硬件形式实现,对此不作具体限定。
例如,“单元”可以是实现上述功能的软件程序、硬件电路或二者结合。所述硬件电路可能包括应用特有集成电路(application specific integrated circuit,ASIC)、电子电路、用于执行一个或多个软件或固件程序的处理器(例如共享处理器、专有处理器或组处理器等)和存储器、合并逻辑电路和/或其它支持所描述的功能的合适组件。
因此,在本申请的实施例中描述的各示例的单元,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
图15示出了本申请提供的一种电子设备的结构示意图。图15中的虚线表示该单元或该模块为可选的,电子设备300可用于实现上述方法实施例中描述的光照估计方法。
电子设备300包括一个或多个处理器301,该一个或多个处理器302可支持电子设备300实现方法实施例中的方法。处理器301可以是通用处理器或者专用处理器。例如,处理器301可以是中央处理器(central processing unit,CPU)、数字信号处理器(digitalsignal processor,DSP)、专用集成电路(application specific integrated circuit,ASIC)、现场可编程门阵列(field programmable gate array,FPGA)或者其它可编程逻辑器件,如分立门、晶体管逻辑器件或分立硬件组件。
处理器301可以用于对电子设备300进行控制,执行软件程序,处理软件程序的数据。
电子设备300还可以包括通信单元305,用以实现信号的输入(接收)和输出(发送)。
例如,电子设备300可以是芯片,通信单元305可以是该芯片的输入和/或输出电路,或者,通信单元305可以是该芯片的通信接口,该芯片可以作为终端设备或其它电子设备的组成部分。
又例如,电子设备300可以是终端设备,通信单元305可以是该终端设备的收发器,或者,通信单元305可以是该终端设备的收发电路。
电子设备300中可以包括一个或多个存储器302,其上存有程序304,程序304可被处理器301运行,生成指令303,使得处理器301根据指令303执行上述方法实施例中描述的光照估计方法。
可选地,存储器302中还可以存储有数据。可选地,处理器301还可以读取存储器302中存储的数据,该数据可以与程序304存储在相同的存储地址,该数据也可以与程序304存储在不同的存储地址。
处理器301和存储器302可以单独设置,也可以集成在一起;例如,集成在终端设备的***级芯片(system on chip,SOC)上。
示例性地,存储器302可以用于存储本申请实施例中提供的光照估计方法的相关程序304,处理器301可以用于在视频处理时调用存储器302中存储的光照估计方法的相关程序304,执行本申请实施例的光照估计方法;例如,获取第一图像和法向图,所述法向图用于表示被摄物对应的法线方向,所述第一图像和所述法向图来源于不同的摄像头;
将所述第一图像和所述法向图进行拼接,得到第一拼接图像;
利用光照主方向估计模型对所述第一拼接图像进行处理,确定光照主方向,所述光照主方向包括光源的方位角和高度角。
本申请还提供了一种计算机程序产品,该计算机程序产品被处理器执行时实现本申请中任一方法实施例所述的光照估计方法。
该计算机程序产品可以存储在存储器302中,例如是程序经过预处理、编译、汇编和链接等处理过程最终被转换为能够被处理器执行的可执行目标文件。
本申请还提供了一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被计算机执行时实现本申请中任一方法实施例所述的光照估计方法。该计算机程序可以是高级语言程序,也可以是可执行目标程序。
可选地,该计算机可读存储介质例如是存储器302。存储器302可以是易失性存储器或非易失性存储器,或者,存储器302可以同时包括易失性存储器和非易失性存储器。其中,非易失性存储器可以是只读存储器(read-only memory,ROM)、可编程只读存储器(programmable ROM,PROM)、可擦除可编程只读存储器(erasable PROM,EPROM)、电可擦除可编程只读存储器(electrically EPROM,EEPROM)或闪存。易失性存储器可以是随机存取存储器(random access memory,RAM),其用作外部高速缓存。通过示例性但不是限制性说明,许多形式的RAM可用,例如静态随机存取存储器(static RAM,SRAM)、动态随机存取存储器(dynamic RAM,DRAM)、同步动态随机存取存储器(synchronous DRAM,SDRAM)、双倍数据速率同步动态随机存取存储器(double data rate SDRAM,DDR SDRAM)、增强型同步动态随机存取存储器(enhanced SDRAM,ESDRAM)、同步连接动态随机存取存储器(synchlinkDRAM,SLDRAM)和直接内存总线随机存取存储器(direct rambus RAM,DR RAM)。
本领域的技术人员可以清楚地了解到,为了描述的方便和简洁,上述描述的装置和设备的具体工作过程以及产生的技术效果,可以参考前述方法实施例中对应的过程和技术效果,在此不再赘述。
在本申请所提供的几个实施例中,所揭露的***、装置和方法,可以通过其它的方式实现。例如,以上所描述的方法实施例的一些特征可以忽略,或不执行。以上所描述的装置实施例仅仅是示意性的,单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,多个单元或组件可以结合或者可以集成到另一个***。另外,各单元之间的耦合或各个组件之间的耦合可以是直接耦合,也可以是间接耦合,上述耦合包括电的、机械的或其它形式的连接。
应理解,在本申请的各种实施例中,各过程的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本申请的实施例的实施过程构成任何限定。
另外,本文中术语“***”和“网络”在本文中常被可互换使用。本文中的术语“和/或”,仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。另外,本文中字符“/”,一般表示前后关联对象是一种“或”的关系。
总之,以上所述仅为本申请技术方案的较佳实施例而已,并非用于限定本申请的保护范围。凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。
Claims (11)
1.一种光照估计方法,其特征在于,应用于包括多个摄像头的电子设备;所述方法包括:
获取第一图像和法向图,所述法向图用于表示被摄物对应的法线方向,所述第一图像和所述法向图来源于不同的摄像头;
将所述第一图像和所述法向图进行拼接,得到第一拼接图像;
利用光照主方向估计模型对所述第一拼接图像进行处理,确定光照主方向,所述光照主方向包括光源的方位角和高度角。
2.根据权利要求1所述的光照估计方法,其特征在于,所述多个摄像头包括第一摄像头和第二摄像头,所述第二摄像头为深度摄像头;
所述获取第一图像包括:
利用所述第一摄像头获取所述第一图像;
所述获取法向图包括:
利用所述深度摄像头获取第一深度图像,所述第一深度图像用于表示被摄物对应的深度数据;
将所述第一深度图像转换为所述法向图。
3.根据权利要求2所述的光照估计方法,其特征在于,所述方法还包括:
将所述第一深度图像与所述第一图像进行RGBD对齐,所述RGBD对齐用于将所述第一深度图像上的像素坐标值转换到所述第一图像对应的像素坐标系中;
补齐对齐后的第一深度图像中缺失位置处的深度数据,得到第二深度图像;
将所述第二深度图像转换为所述法向图。
4.根据权利要求3所述的光照估计方法,其特征在于,所述RGBD对齐包括:
将所述第一深度图像从像素坐标系转换到所述第二摄像头的相机坐标系中;
基于所述第二摄像头和所述第一摄像头的RT刚体变换,将所述第二摄像头的相机坐标系中的点转换到所述第一摄像头的相机坐标系中;
将所述第一摄像头的相机坐标系中的点投影到所述第一图像对应的像素坐标系上。
5.根据权利要求4所述的光照估计方法,其特征在于,所述方法还包括:去畸变处理。
6.根据权利要求3至5中任一项所述的光照估计方法,其特征在于,所述补齐对齐后的第一深度图像中缺失位置处的深度数据,得到第二深度图像,包括:
针对所述对齐后的第一深度图像中缺失位置处的像素,对相邻外圈像素的深度数据进行插值,作为缺失位置处的像素对应的深度数据,所述缺失位置用于指示缺失深度数据的像素的位置。
7.根据权利要求2至6中任一项所述的光照估计方法,其特征在于,所述第一摄像头为超广角摄像头、长焦摄像头、广角摄像头、多光谱摄像头、黑白摄像头中的任意一种。
8.根据权利要求1至7中任一项所述的光照估计方法,其特征在于,所述方法应用于室内场景。
9.一种电子设备,其特征在于,包括处理器和存储器;
所述存储器,用于存储可在所述处理器上运行的计算机程序;
所述处理器,用于执行如权利要求1至8中任一项所述的光照估计方法。
10.一种芯片***,其特征在于,包括:处理器,用于从存储器中调用并运行计算机程序,使得安装有所述芯片***的设备执行如权利要求1至8中任一项所述的光照估计方法。
11.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有计算机程序,所述计算机程序包括程序指令,所述程序指令当被处理器执行时,使所述处理器执行如权利要求1至8中任一项所述的光照估计方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211515970.6A CN116664701A (zh) | 2022-11-30 | 2022-11-30 | 光照估计方法及其相关设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211515970.6A CN116664701A (zh) | 2022-11-30 | 2022-11-30 | 光照估计方法及其相关设备 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116664701A true CN116664701A (zh) | 2023-08-29 |
Family
ID=87717769
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211515970.6A Pending CN116664701A (zh) | 2022-11-30 | 2022-11-30 | 光照估计方法及其相关设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116664701A (zh) |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113572962A (zh) * | 2021-07-28 | 2021-10-29 | 北京大学 | 室外自然场景光照估计方法及装置 |
CN115131492A (zh) * | 2022-04-12 | 2022-09-30 | 腾讯科技(深圳)有限公司 | 目标对象的重光照方法、装置及存储介质和背景替换方法 |
CN115375827A (zh) * | 2022-07-21 | 2022-11-22 | 荣耀终端有限公司 | 光照估计方法及电子设备 |
-
2022
- 2022-11-30 CN CN202211515970.6A patent/CN116664701A/zh active Pending
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113572962A (zh) * | 2021-07-28 | 2021-10-29 | 北京大学 | 室外自然场景光照估计方法及装置 |
CN115131492A (zh) * | 2022-04-12 | 2022-09-30 | 腾讯科技(深圳)有限公司 | 目标对象的重光照方法、装置及存储介质和背景替换方法 |
CN115375827A (zh) * | 2022-07-21 | 2022-11-22 | 荣耀终端有限公司 | 光照估计方法及电子设备 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN113132620B (zh) | 一种图像拍摄方法及相关装置 | |
CN114205522B (zh) | 一种长焦拍摄的方法及电子设备 | |
WO2023015981A1 (zh) | 图像处理方法及其相关设备 | |
WO2021078001A1 (zh) | 一种图像增强方法及装置 | |
WO2020102978A1 (zh) | 图像处理方法及电子设备 | |
WO2022017261A1 (zh) | 图像合成方法和电子设备 | |
CN113452898B (zh) | 一种拍照方法及装置 | |
CN114140365B (zh) | 基于事件帧的特征点匹配方法及电子设备 | |
CN110138999B (zh) | 一种用于移动终端的证件扫描方法及装置 | |
US20240153209A1 (en) | Object Reconstruction Method and Related Device | |
CN115272138B (zh) | 图像处理方法及其相关设备 | |
CN113452969B (zh) | 图像处理方法和装置 | |
CN115359105B (zh) | 景深扩展图像生成方法、设备及存储介质 | |
CN115061770A (zh) | 显示动态壁纸的方法和电子设备 | |
US20240193945A1 (en) | Method for determining recommended scenario and electronic device | |
CN115150542B (zh) | 一种视频防抖方法及相关设备 | |
CN114979457B (zh) | 一种图像处理方法及相关装置 | |
WO2023216957A1 (zh) | 一种目标定位方法、***和电子设备 | |
CN115767290B (zh) | 图像处理方法和电子设备 | |
CN115633255B (zh) | 视频处理方法和电子设备 | |
CN114283195B (zh) | 生成动态图像的方法、电子设备及可读存储介质 | |
CN115580690B (zh) | 图像处理的方法和电子设备 | |
CN115686182B (zh) | 增强现实视频的处理方法与电子设备 | |
CN114827442B (zh) | 生成图像的方法和电子设备 | |
CN116664701A (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 |