CN112866675B - 深度图生成方法和装置、电子设备、计算机可读存储介质 - Google Patents
深度图生成方法和装置、电子设备、计算机可读存储介质 Download PDFInfo
- Publication number
- CN112866675B CN112866675B CN201911102721.2A CN201911102721A CN112866675B CN 112866675 B CN112866675 B CN 112866675B CN 201911102721 A CN201911102721 A CN 201911102721A CN 112866675 B CN112866675 B CN 112866675B
- Authority
- CN
- China
- Prior art keywords
- original image
- phase difference
- depth information
- sub
- pixel
- 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 67
- 230000011218 segmentation Effects 0.000 claims description 22
- 238000004364 calculation method Methods 0.000 claims description 16
- 238000004590 computer program Methods 0.000 claims description 12
- 238000012545 processing Methods 0.000 claims description 10
- 230000002194 synthesizing effect Effects 0.000 claims description 8
- 238000012216 screening Methods 0.000 claims description 5
- 238000003384 imaging method Methods 0.000 description 35
- 238000010586 diagram Methods 0.000 description 22
- 238000001514 detection method Methods 0.000 description 16
- 230000003287 optical effect Effects 0.000 description 16
- 230000033001 locomotion Effects 0.000 description 10
- 230000008569 process Effects 0.000 description 7
- 238000004422 calculation algorithm Methods 0.000 description 5
- 238000006073 displacement reaction Methods 0.000 description 5
- 239000011159 matrix material Substances 0.000 description 4
- 101100459256 Cyprinus carpio myca gene Proteins 0.000 description 2
- 101100459261 Cyprinus carpio mycb gene Proteins 0.000 description 2
- 238000003491 array Methods 0.000 description 2
- 238000006243 chemical reaction Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 230000006870 function Effects 0.000 description 2
- 230000005855 radiation Effects 0.000 description 2
- 230000001360 synchronised effect Effects 0.000 description 2
- 230000001133 acceleration Effects 0.000 description 1
- 238000007796 conventional method Methods 0.000 description 1
- 238000013135 deep learning Methods 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000018109 developmental process Effects 0.000 description 1
- 238000011982 device technology Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000009434 installation Methods 0.000 description 1
- 229910044991 metal oxide Inorganic materials 0.000 description 1
- 150000004706 metal oxides Chemical class 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000002310 reflectometry Methods 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 239000010409 thin film Substances 0.000 description 1
- 230000009466 transformation Effects 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N13/00—Stereoscopic video systems; Multi-view video systems; Details thereof
- H04N13/20—Image signal generators
- H04N13/275—Image signal generators from 3D object models, e.g. computer-generated stereoscopic image signals
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N13/00—Stereoscopic video systems; Multi-view video systems; Details thereof
- H04N13/20—Image signal generators
- H04N13/271—Image signal generators wherein the generated image signals comprise depth maps or disparity maps
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Studio Devices (AREA)
- Length Measuring Devices By Optical Means (AREA)
Abstract
本申请涉及一种深度图生成方法和装置、电子设备、计算机可读存储介质,包括:当原始图像中的物距小于预设物距阈值时,对原始图像计算第一方向的相位差和第二方向的相位差,第一方向与第二方向之间成预设夹角,预设物距阈值为处于电子设备中摄像头的重叠视场角范围内的最小物距。从第一方向的相位差和第二方向的相位差中确定目标相位差,根据目标相位差计算原始图像的深度信息,由深度信息生成原始图像的深度图。从第一方向的相位差和第二方向的相位差中确定目标相位差,根据目标相位差计算深度信息、进而生成深度图,就可以大大提高最终所生成的深度图的准确性。
Description
技术领域
本申请涉及计算机技术领域,特别是涉及一种深度图生成方法和装置、电子设备、计算机可读存储介质。
背景技术
随着电子设备技术的发展,越来越多的用户通过电子设备拍摄图像。可以通过拍摄图像来计算出图像的深度图,因深度图的使用范围较广、功能较多,深度图也越来越多被广泛关注。通过传统方法所生成的深度图,准确性较低,因此,亟需提出一种生成深度图的方法,提高所生成的深度图的准确性。
发明内容
本申请实施例提供一种深度图生成方法、装置、电子设备、计算机可读存储介质,可以提高所生成的深度图的准确性。
一种深度图生成方法,应用于电子设备,包括:
当原始图像中的物距小于预设物距阈值时,对原始图像计算第一方向的相位差和第二方向的相位差,所述第一方向与所述第二方向之间成预设夹角,所述预设物距阈值为处于所述电子设备中摄像头的重叠视场角范围内的最小物距;从所述第一方向的相位差和所述第二方向的相位差中确定目标相位差;
根据所述目标相位差计算原始图像的深度信息;
由所述深度信息生成所述原始图像的深度图。
一种深度图生成装置,包括:
目标相位差计算模块,用于当原始图像中的物距小于预设物距阈值时,对原始图像计算第一方向的相位差和第二方向的相位差,所述第一方向与所述第二方向之间成预设夹角,所述预设物距阈值为处于所述电子设备中摄像头的重叠视场角范围内的最小物距,从所述第一方向的相位差和所述第二方向的相位差中确定目标相位差;
深度信息计算模块,用于根据所述目标相位差计算原始图像的深度信息;
深度图生成模块,用于由所述深度信息生成所述原始图像的深度图。
一种电子设备,包括存储器及处理器,所述存储器中储存有计算机程序,所述计算机程序被所述处理器执行时,使得所述处理器执行如上方法的步骤。
一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现如上方法的步骤。
上述深度图生成方法、装置、电子设备、计算机可读存储介质,当原始图像中的物距小于预设物距阈值时,对原始图像计算第一方向的相位差和第二方向的相位差,第一方向与第二方向之间成预设夹角,预设物距阈值为处于电子设备中摄像头的重叠视场角范围内的最小物距。从第一方向的相位差和第二方向的相位差中确定目标相位差,根据目标相位差计算原始图像的深度信息,由深度信息生成原始图像的深度图。
因为通过主副摄像头来计算景深的时候,需要物体落入主副摄像头的重叠视场角内才能够计算深度信息。所以,当原始图像中的物距小于预设物距阈值时,即原始图像中的物体未落入主副摄像头的重叠视场角内的时候,不能通过主副摄像头来计算深度信息。而通过相位差计算深度信息的方式并未对物距有任何要求,所以,此时就可以采用对所拍摄的原始图像计算相位差的方式来计算深度信息。具体的,对原始图像计算第一方向,第二方向两个方向上的相位差。相较于传统的只能计算一个方向上的相位差,两个方向上的相位差显然能够反应更多的相位差信息。再从第一方向的相位差和第二方向的相位差中确定目标相位差,根据目标相位差计算深度信息、进而生成深度图,就可以大大提高最终所生成的深度图的准确性。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为相位检测自动对焦的原理示意图;
图2为在图像传感器包括的像素点中成对地设置相位检测像素点的示意图;
图3为一个实施例中图像传感器的部分结构示意图;
图4为一个实施例中像素点的结构示意图;
图5为一个实施例中图像传感器的内部结构示意图;
图6为一个实施例中像素点组上设置滤光片的示意图;
图7为一个实施例中深度图生成方法的流程图;
图8为两个摄像头的视场角的示意图;
图9为双目摄像头成像的原理图;
图10为图7中对原始图像计算第一方向的相位差和第二方向的相位差方法的流程图;
图11为图10中根据目标亮度图计算第一方向的相位差和第二方向的相位差方法的流程图;
图12为一个实施例中像素点组的示意图;
图13为一个实施例中子亮度图的示意图;
图14为一个实施例中3D建模方法的流程图;
图15为一个实施例中深度图生成装置的结构示意图;
图16为一个实施例中电子设备的内部结构示意图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
可以理解,本申请所使用的术语“第一”、“第二”等可在本文中用于描述各种元件,但这些元件不受这些术语限制。这些术语仅用于将第一个元件与另一个元件区分。举例来说,在不脱离本申请的范围的情况下,可以将第一摄像头称为第二摄像头,且类似地,可将第二摄像头称为第一摄像头。第一摄像头和第二摄像头两者都是摄像头,但其不是同一摄像头。
图1为相位检测自动对焦(phase detection auto focus,PDAF)的原理示意图。如图1所示,M1为成像设备处于合焦状态时,图像传感器所处的位置,其中,合焦状态指的是成功对焦的状态。当图像传感器位于M1位置时,由物体W反射向镜头Lens的不同方向上的成像光线g在图像传感器上会聚,也即是,由物体W反射向镜头Lens的不同方向上的成像光线g在图像传感器上的同一位置处成像,此时,图像传感器成像清晰。
M2和M3为成像设备不处于合焦状态时,图像传感器所可能处于的位置,如图1所示,当图像传感器位于M2位置或M3位置时,由物体W反射向镜头Lens的不同方向上的成像光线g会在不同的位置成像。请参考图1,当图像传感器位于M2位置时,由物体W反射向镜头Lens的不同方向上的成像光线g在位置A和位置B分别成像,当图像传感器位于M3位置时,由物体W反射向镜头Lens的不同方向上的成像光线g在位置C和位置D分别成像,此时,图像传感器成像不清晰。
在PDAF技术中,可以获取从不同方向射入镜头的成像光线在图像传感器中所成的像在位置上的差异,例如,如图1所示,可以获取位置A和位置B的差异,或者,获取位置C和位置D的差异;在获取到从不同方向射入镜头的成像光线在图像传感器中所成的像在位置上的差异之后,可以根据该差异以及摄像机中镜头与图像传感器之间的几何关系,得到离焦距离,所谓离焦距离指的是图像传感器当前所处的位置与合焦状态时图像传感器所应该处于的位置的距离;成像设备可以根据得到的离焦距离进行对焦。
由此可知,合焦时,计算得到的PD值为0,反之算出的值越大,表示离合焦点的位置越远,值越小,表示离合焦点越近。采用PDAF对焦时,通过计算出PD值,再根据标定得到PD值与离焦距离之间的对应关系,可以求得离焦距离,然后根据离焦距离控制镜头移动达到合焦点,以实现对焦。
相关技术中,可以在图像传感器包括的像素点中成对地设置一些相位检测像素点,如图2所示,图像传感器中可以设置有相位检测像素点对(以下称为像素点对)A,像素点对B和像素点对C。其中,在每个像素点对中,一个相位检测像素点进行左侧遮挡(英文:LeftShield),另一个相位检测像素点进行右侧遮挡(英文:Right Shield)。
对于进行了左侧遮挡的相位检测像素点而言,射向该相位检测像素点的成像光束中仅有右侧的光束才能在该相位检测像素点的感光部分(也即是未被遮挡的部分)上成像,对于进行了右侧遮挡的相位检测像素点而言,射向该相位检测像素点的成像光束中仅有左侧的光束才能在该相位检测像素点的感光部分(也即是未被遮挡的部分)上成像。这样,就可以将成像光束分为左右两个部分,通过对比左右两部分成像光束所成的像,即可得到相位差。
然而,由于图像传感器中设置的相位检测像素点通常较为稀疏,因此,通过相位检测像素点只能获取到水平的相位差,无法计算水平纹理的场景,计算得到的PD值会产生混淆而得不出正确的结果,例如拍摄场景为一条水平线,根据PD特性会得到左右两张图像,但无法计算出PD值。
为了解决相位检测自动对焦针对一些水平纹理的场景无法计算得出PD值实现对焦的情况,本申请实施例中提供了一种成像组件,可以用来检测输出第一方向的相位差值和第二方向的相位差值,针对水平纹理场景,可采用第二方向的相位差值来实现对焦。
在一个实施例中,本申请提供了一种成像组件。成像组件包括图像传感器。图像传感器可以为金属氧化物半导体元件(英文:Complementary Metal Oxide Semiconductor;简称:CMOS)图像传感器、电荷耦合元件(英文:Charge-coupled Device;简称:CCD)、量子薄膜传感器或者有机传感器等。
图3为一个实施例中图像传感器的一部分的结构示意图。图像传感器300包括阵列排布的多个像素点组Z,每个像素点组Z包括阵列排布的多个像素点D,每个像素点D对应一个感光单元。每个像素点D包括阵列排布的多个子像素点d。也就是每个感光单元可以由多个阵列排布的感光元件组成。其中,感光元件是一种能够将光信号转化为电信号的元件。在一个实施例中,感光元件可为光电二极管。本申请实施例中,每个像素点组Z包括2*2阵列排布的4个像素点D,每个像素点可包括2*2阵列排布的4个子像素点d。其中,每个像素点组形成2*2PD,可以直接接收光信号,进行光电转换,可以同时输出左右和上下的信号。每个颜色通道可以由4个子像素点组成。
如图4所示,以每个像素点包括子像素点1、子像素点2、子像素点3和子像素点4为例,可将子像素点1和子像素点2合成,子像素点3和子像素点4合成,形成上下方向的PD像素对,检测水平边缘,得到第二方向的相位差值,即竖直方向的PD值;将子像素点1和子像素点3合成,子像素点2和子像素点4合成,形成左右方向的PD像素对,可以检测竖直边缘,得到第一方向的相位差值,即水平方向的PD值。
图5为一个实施例中成像设备的内部结构示意图。如图5所示,该成像设备包括透镜50、滤光片52和图像传感器54。透镜50、滤光片52和图像传感器54依次位于入射光路上,即透镜50设置在滤光片52之上,滤光片52设置在图像传感器54上。
滤光片52可包括红、绿、蓝三种,分别只能透过红色、绿色、蓝色对应波长的光线。一个滤光片52设置在一个像素点上。
图像传感器54可为图3中的图像传感器。
透镜50用于接收入射光,并将入射光传输给滤光片52。滤光片52对入射光进行平滑处理后,将平滑处理后的光以像素为基础入射到图像传感器54的感光单元上。
图像传感器54中的感光单元通过光电效应将从滤光片52入射的光转换成电荷信号,并生成与电荷信号一致的像素信号。电荷信号与接收的光强度相一致。
图6为一个实施例中像素点组上设置滤光片的示意图。像素点组Z包括按照两行两列的阵列排布方式进行排布的4个像素点D,其中,第一行第一列的像素点的颜色通道为绿色,也即是,第一行第一列的像素点上设置的滤光片为绿色滤光片;第一行第二列的像素点的颜色通道为红色,也即是,第一行第二列的像素点上设置的滤光片为红色滤光片;第二行第一列的像素点的颜色通道为蓝色,也即是,第二行第一列的像素点上设置的滤光片为蓝色滤光片;第二行第二列的像素点的颜色通道为绿色,也即是,第二行第二列的像素点上设置的滤光片为绿色滤光片。
图7为一个实施例中深度图生成方法的流程图。本实施例中的深度图生成方法,以运行于图5中的图像传感器上为例进行描述。如图7所示,该深度图生成方法包括步骤720至步骤760。
步骤720,当原始图像中的物距小于预设物距阈值时,对原始图像计算第一方向的相位差和第二方向的相位差,第一方向与第二方向之间成预设夹角,预设物距阈值为处于电子设备中摄像头的重叠视场角范围内的最小物距;从第一方向的相位差和第二方向的相位差中确定目标相位差。
原始图像指的是由电子设备的摄像模组对拍摄场景进行拍摄获取的RGB图像,该原始图像的显示范围与摄像模组所能够捕获到的图像信息的范围是一致的。当原始图像中的物距小于预设物距阈值时,对原始图像进行计算第一方向的相位差和第二方向的相位差。预设物距阈值为处于电子设备中摄像头的重叠视场角范围内的最小物距。如图8所示,为两个摄像头的视场角的示意图。图中有两个摄像头(camera),分别用cam1和cam2来表示,假设将cam1作为主摄像头,则cam2就为副摄像头。主摄像头是用来拍摄图像,副摄像头主要是用来计算深度信息即景深。这里的副摄像头可以是与主摄像头类似的普通摄像头,也可以是TOF摄像头。TOF是Time of flight的简写,直译为飞行时间的意思。TOF摄像头即为飞行时间摄像头。TOF摄像头是通过给目标连续发送光脉冲,然后用传感器接收从物体返回的光,通过探测光脉冲的飞行(往返)时间来得到目标物距离。这种技术与3D激光传感器原理上有着不同点,3D激光传感器是逐点扫描,而TOF摄像头则是同时得到整幅图像的深度信息。
主摄像头及副摄像头实现拍摄图像并计算深度信息的前提是,所拍摄的物体落在主副摄像头的重叠视场角范围内。即要求原始图像中的物距大于或等于预设物距阈值,这样原始图像中的物体才能够落在主副摄像头的重叠视场角范围内。当原始图像中的物距小于预设物距阈值时,不能通过双摄或TOF摄像头来计算深度信息。而通过相位差计算深度信息的方式并未对物距有任何要求,所以,此时就可以采用对所拍摄的原始图像计算相位差的方式来计算深度信息。
可以通过对原始图像计算第一方向的相位差和第二方向的相位差,再从第一方向的相位差和第二方向的相位差中确定目标相位差的方式计算出相位差。其中,第一方向与第二方向之间成预设夹角。例如,第一方向与第二方向相互垂直。当然,在其他实施例中,只需要有两个不同的方向,而这两个不同的方向不一定呈垂直关系设置。具体的,可以根据原始图像中的纹理特征来确定第一方向和第二方向。当所确定的第一方向为原始图像中的水平方向时,那么第二方向可以是原始图像中的竖直方向。则水平方向的相位差能够反应原始图像中的水平纹理特征,竖直方向的相位差能够反应原始图像中的竖直纹理特征,如此可以兼顾原始图像中水平纹理的主体和竖直纹理的主体。
具体的,先根据原始图像(RGB图)生成亮度图。然后,根据亮度图计算第一方向的相位差和第二方向的相位差,第一方向与第二方向之间成预设夹角。通常,计算相位差值可以采用频率域算法和空间域算法,当然还可以采用其他方法来进行计算。其中,频率域算法是利用傅立叶位移的特性计算,将采集的目标亮度图利用傅立叶转换从空间域转换到频率域,然后再计算phase correlation,当correlation算出最大值时(peak),表示其有最大位移,此时再做反傅立叶就可知在空间域最大位移是多少。空间域算法是指找出特征点,例如边缘特征,DoG(difference of Gaussian),Harris角点等特征,再利用这些特征点计算位移。
在从第一方向的相位差和第二方向的相位差中确定目标相位差的时候,可以获取第一方向的相位差值的第一置信度和第二方向的相位差值的第二置信度;选取第一置信度和第二置信度中较大的相位差值作为目标相位差值。具体的,可以根据电子设备拍摄原始图像时的移动信息来调整第一置信度和第二置信度,得到调整后的第一置信度和第二置信度。从调整后的第一置信度和第二置信度中筛选出较大的置信度所对应的相位差,作为目标相位差。具体的,可以通过电子设备中的陀螺仪来采集电子设备拍摄原始图像时的移动信息,移动信息包括移动速度和移动方向。当然,还可以通过方向传感器、加速度传感器等传感器来采集电子设备拍摄原始图像时的移动信息,当然,本申请对此不作限定。根据电子设备拍摄原始图像时的移动信息从第一方向的相位差和第二方向的相位差中确定目标相位差。因为在拍摄原始图像的过程中,电子设备的移动信息会对所拍摄出的原始图像的第一方向、第二方向上的相位差造成影响,例如,当电子设备的移动方向与第一方向相同时,则此时所拍摄出的原始图像上会产生第一方向上的水平拖影,该第一方向上的水平拖影就类似于第一方向上的纹理。所以,此时所计算出的第一方向的相位差的准确性就较低,或甚至根据第一方向上的PD像素对无法得到第一方向的相位差值。所以,根据电子设备拍摄原始图像时的移动速度和移动方向从第一方向的相位差和第二方向的相位差中确定目标相位差,就避免了电子设备的移动速度和移动方向对所确定的目标相位差的准确性的影响。
步骤740,根据目标相位差计算原始图像的深度信息。
在上面的计算中得到了目标相位差(记作PD或shift_cur)之后,根据目标相位差计算出离焦距离。其中,离焦距离的计算公式如下:
Defocus=PD*slope(DCC), (1-1)
其中,Defocus指的是离焦距离,PD指的是目标相位差,slope(DCC)指的是离焦转换系数。slope(DCC)是在相机标定过程中所计算出的离焦转换系数,对于同一个摄像头,slope(DCC)是固定的。
然后,根据离焦距离计算深度信息。具体的,根据离焦距离计算合焦时的相位差(根据离焦距离计算该区域图像合焦时镜头的像距减去焦距)(记作shift),合焦时的相位差shift=shift_cur(当前镜头所在位置的像距减去焦距)+Defocus。计算物距的公式如下:
u=f*f/shift+f (1-2)
其中,u指的是物距,f指的是焦距,shift指的是合焦时的相位差。
这样对原始图像中的所有像素进行计算物距,就得到了原始图像的深度信息。
步骤760,由深度信息生成原始图像的深度图。
在得到了原始图像的深度信息之后,根据原始图像的深度信息构建深度图。
本申请实施例中,因为通过主副摄像头来计算景深的时候,需要物体落入主副摄像头的重叠视场角内才能够计算深度信息。所以,当原始图像中的物距小于预设物距阈值时,即原始图像中的物体未落入主副摄像头的重叠视场角内的时候,不能通过主副摄像头来计算深度信息。而通过相位差计算深度信息的方式并未对物距有任何要求,所以,此时就可以采用对所拍摄的原始图像计算相位差的方式来计算深度信息。具体的,对原始图像计算第一方向,第二方向两个方向上的相位差。相较于传统的只能计算一个方向上的相位差,两个方向上的相位差显然能够反应更多的相位差信息。再从第一方向的相位差和第二方向的相位差中确定目标相位差,根据目标相位差计算深度信息、进而生成深度图,就可以大大提高最终所生成的深度图的准确性。
接上一个实施例,电子设备包括至少两个普通摄像头,至少一个飞行时间TOF摄像头,提供了一种深度图生成方法,还包括:
当原始图像中的物距大于或等于预设物距阈值时,判断原始图像的纹理方向是否与电子设备中用于计算深度信息的两个普通摄像头的排列方向一致;
若判断出原始图像的纹理方向与电子设备中的两个普通摄像头的排列方向一致,则通过电子设备中的TOF摄像头计算原始图像的深度信息。
具体的,因为主摄像头及副摄像头实现拍摄图像并计算深度信息的前提是,所拍摄的物体落在主副摄像头的重叠视场角范围内。即要求原始图像中的物距大于或等于预设物距阈值,这样原始图像中的物体才能够落在主副摄像头的重叠视场角范围内。而当原始图像中的物距大于或等于预设物距阈值时,还需要进一步判断原始图像的纹理方向是否与电子设备中用于计算深度信息的两个普通摄像头的排列方向一致。因为用两个普通摄像头(双目摄像头)来计算深度信息的过程为:根据两个摄像头成像的位移,摄像头的安装位置以及镜头的光学特性来计算深度图。如图9所示,为双目摄像头成像的原理图。在该图中计算景深的公式为:
Z=B*f/d, (1-3)
其中,B指的是两个摄像头之间的距离,f指的是焦距,d为双目摄像头所拍摄出的左右图中的相位差,Z为该区域的景深。
当原始图像的纹理方向与电子设备中该双目摄像头的排列方向一致时,即无法计算出双目摄像头所拍摄出的左右图中的相位差。因此,也就无法计算出景深。此时,就可以通过电子设备中TOF摄像头来计算原始图像的深度信息,从而构建深度图。TOF摄像头是通过给目标连续发送光脉冲,然后用传感器接收从物体返回的光,通过探测光脉冲的飞行(往返)时间来得到目标物距离。因为,TOF摄像头在计算景深的过程中不会受到原始图像中的纹理特征的影响。
本申请实施例中,当原始图像中的物距大于或等于预设物距阈值时,即原始图像中的物体落在主副摄像头的重叠视场角范围内时,本来可以采用双目摄像头来计算深度信息,也可以采用TOF摄像头来计算深度信息。但是,当原始图像的纹理方向与电子设备中该双目摄像头的排列方向一致时无法计算出景深,所以就需要进一步判断原始图像的纹理方向是否与电子设备中用于计算深度信息的两个普通摄像头的排列方向一致。若一致,则就只能采取TOF摄像头来计算深度信息,才能够保证所计算出的深度信息的准确性,进而提高所生成的深度图的准确性。
接上一个实施例,提供了一种深度图生成方法,还包括:当通过电子设备中的TOF摄像头所计算出的原始图像中预设区域的深度信息的准确率低于预设准确率阈值时,则根据目标相位差计算出原始图像中预设区域的第一深度信息;
从通过电子设备中的TOF摄像头所计算出的原始图像的深度信息中,获取除去预设区域之外的其他区域的深度信息;
将原始图像中预设区域的第一深度信息与除去预设区域之外的其他区域的深度信息进行合成,得到原始图像的深度信息。
具体的,当原始图像中的物距大于或等于预设物距阈值时,且原始图像的纹理方向与电子设备中用于计算深度信息的两个普通摄像头的排列方向一致时,则采用TOF摄像头来计算深度信息。TOF摄像头一方面所发射的红外线射程受限,另一方面对于透明物体、或反射率太低的物体,因红外线被吸收导致TOF摄像头所得到的深度信息的准确率降低。另外对红外干扰较强的场景也是不适用于TOF摄像头来计算深度信息。而因为TOF摄像头存在的缺点,会出现通过TOF摄像头所计算出的原始图像中部分区域的深度信息的准确率较低的问题。当判断出TOF摄像头所计算出的原始图像中部分区域的深度信息的准确率低于预设准确率阈值时,可以采用计算相位差的方式计算出目标相位差,再计算出原始图像中预设区域的第一深度信息。可以通过深度学习算法对摄像头所计算出的原始图像的深度信息进行计算准确率。然后,将所计算出的原始图像的深度信息的准确率与预设准确率阈值进行比较。其中,预设准确率阈值可以是自定义的阈值,例如80%,当然,本申请对此不作限定。
然后,从通过电子设备中的TOF摄像头所计算出的原始图像的深度信息中,获取除去预设区域之外的其他区域的深度信息。将原始图像中预设区域的第一深度信息与除去预设区域之外的其他区域的深度信息进行合成,得到原始图像整个区域的深度信息。
本申请实施例中,当通过电子设备中的TOF摄像头所计算出的原始图像中预设区域的深度信息的准确率低于预设准确率阈值时,则采用计算目标相位差的方式来计算出原始图像中预设区域的第一深度信息。然后,将电子设备中的TOF摄像头所计算出的除去预设区域之外的其他区域的深度信息,与通过计算目标相位差的方式来计算出的预设区域的第一深度信息合成,得到原始图像整个区域的深度信息。保证了最终得到的原始图像整个区域的深度信息准确性。
在一个实施例中,在判断原始图像的纹理方向是否与电子设备中用于计算深度信息的两个普通摄像头的排列方向一致之后,包括:
若判断出原始图像的纹理方向与电子设备中用于计算深度信息的两个普通摄像头的排列方向不一致,则通过电子设备中的两个普通摄像头计算原始图像的深度信息。
本申请实施例中,因为TOF摄像头受限于发送光脉冲的射程问题等,通过双目摄像头所计算出的深度信息的适用性更广、精确度更高。所以,当原始图像中的物距大于或等于预设物距阈值,且原始图像的纹理方向与电子设备中用于计算深度信息的两个普通摄像头的排列方向不一致时,则通过电子设备中的两个普通摄像头计算原始图像的深度信息。
接上一个实施例中,提供了一种深度图生成方法,还包括:当通过电子设备中的两个普通摄像头所计算出的原始图像中预设区域的深度信息的准确率低于预设准确率阈值时,则根据目标相位差计算出原始图像中预设区域的第一深度信息、或根据电子设备中的TOF摄像头计算出原始图像中预设区域的第二深度信息;
从原始图像中预设区域的第一深度信息、第二深度信息中筛查出准确度较高的深度信息,作为原始图像中预设区域的目标深度信息;
从通过电子设备中的两个普通摄像头所计算出的原始图像的深度信息中,获取除去预设区域之外的其他区域的深度信息;
将原始图像中预设区域的目标深度信息与除去预设区域之外的其他区域的深度信息进行合成,得到原始图像的深度信息。
本申请实施例中,当通过电子设备中的两个普通摄像头所计算出的原始图像中预设区域的深度信息的准确率低于预设准确率阈值时,分别通过计算相位差的方式、TOF摄像头来计算预设区域的深度信息。然后,从这两种方式所计算出的深度信息中筛选出准确度较高的深度信息,作为原始图像中预设区域的目标深度信息。最后,再将原始图像中预设区域的目标深度信息与除去预设区域之外的其他区域的深度信息进行合成,得到整个原始图像的深度信息。保证了最终得到的原始图像整个区域的深度信息准确性。
在一个具体的实施例中,提供了一种深度图生成方法,包括:
当原始图像中的物距小于预设物距阈值时,即景深很浅时,对原始图像计算第一方向的相位差和第二方向的相位差,所述第一方向与所述第二方向之间成预设夹角,所述预设物距阈值为处于所述电子设备中摄像头的重叠视场角范围内的最小物距。从所述第一方向的相位差和所述第二方向的相位差中确定目标相位差,再根据所述目标相位差计算原始图像的深度信息,由所述深度信息生成所述原始图像的深度图。因采用相位差计算深度信息的方式,对于景深较深的情况,所得到的深度信息的准确性较低。所以对于景深较深的情况,需采用其他方式来进行计算。
当所述原始图像中的物距大于或等于预设物距阈值时,且原始图像中的纹理足够丰富(包含多个方向的纹理特征),即可以确定原始图像的纹理方向与电子设备中的所述两个普通摄像头的排列方向不一致,则通过所述电子设备中的所述两个普通摄像头(双目摄像头)计算原始图像的深度信息,由所述深度信息生成所述原始图像的深度图。
当所述原始图像中的物距大于或等于预设物距阈值时,且原始图像中的纹理不够丰富,即如果确定原始图像的纹理方向与电子设备中的所述两个普通摄像头的排列方向一致,则通过电子设备中的TOF摄像头计算原始图像的深度信息,由所述深度信息生成所述原始图像的深度图。
当对于原始图像中的部分区域,通过电子设备中的双目摄像头或TOF摄像头均不能计算出原始图像的深度信息时,对原始图像中的该部分区域计算第一方向的相位差和第二方向的相位差,从所述第一方向的相位差和所述第二方向的相位差中确定目标相位差,再根据所述目标相位差计算原始图像中的该部分区域的深度信息。再结合原始图像中的其他区域的深度信息,由所述深度信息生成所述原始图像的深度图。
本申请实施例中,对于计算深度信息生成深度图过程中的多种场景,分别对应设置了计算深度信息的方式,保证了所计算出的深度信息的准确性,进而最终提高了所得到的深度图的准确性。
在一个实施例中,电子设备包括图像传感器,图像传感器包括阵列排布的多个像素点组,每个像素点组包括阵列排布的M*N个像素点;每个像素点对应一个感光单元;每个像素点包括阵列排布的多个子像素点,其中,M和N均为大于或等于2的自然数;如图10所示,步骤720,对原始图像计算第一方向的相位差和第二方向的相位差,包括:
步骤722,对原始图像中的每个像素点组,根据像素点组中每个像素点的相同位置处的子像素点的亮度值,获取像素点组对应的子亮度图。
通常情况下,图像传感器的像素点的亮度值可以由该像素点包括的子像素点的亮度值来进行表征。成像设备可以根据像素点组中每个像素点的相同位置处的子像素点的亮度值,来获取像素点组对应的子亮度图。其中,子像素点的亮度值是指该子像素点对应的感光元件接收到的光信号的亮度值。
如上文,图像传感器包括的子像素点是一种能够将光信号转化为电信号的感光元件,因此,可以根据子像素点输出的电信号来获取该子像素点接收到的光信号的强度,根据子像素点接收到的光信号的强度即可得到该子像素点的亮度值。
步骤724,根据每个像素点组对应的子亮度图生成目标亮度图。
成像设备可以按照图像传感器中各个像素点组的阵列排布方式,对各个像素点组对应的子亮度图进行拼接,得到目标亮度图。
步骤726,根据目标亮度图计算第一方向的相位差和第二方向的相位差。
对目标亮度图进行切分处理,得到第一切分亮度图和第二切分亮度图,并根据第一切分亮度图和第二切分亮度图中相互匹配的像素的位置差异,确定相互匹配的像素的相位差值。根据相互匹配的像素的相位差值确定第一方向的相位差值和第二方向的相位差值。
本申请实施例中,因为电子设备中的图像传感器包括阵列排布的多个像素点组,每个像素点组包括阵列排布的多个像素点。每个像素点对应一个感光单元,每个像素点包括阵列排布的多个子像素点,每个子像素点对应一个光电二极管。所以通过每一个光电二极管就可以获取到一个亮度值,即为子像素点的亮度值。再由子像素点的亮度值获取到像素点组对应的子亮度图,进而按照图像传感器中各个像素点组的阵列排布方式,对各个像素点组对应的子亮度图进行拼接,得到目标亮度图。最后,根据目标亮度图就可以计算出第一方向的相位差和第二方向的相位差。
再从第一方向的相位差和第二方向的相位差中确定目标相位差,目标相位差的准确性更高,从而根据目标相位差对原始图像进行对焦,就可以大大提高对焦过程中的准确度。
在一个实施例中,如图11所示,步骤726,根据目标亮度图计算第一方向的相位差和第二方向的相位差,包括:步骤726a和步骤726b。
步骤726a,对目标亮度图进行切分处理,得到第一切分亮度图和第二切分亮度图,并根据第一切分亮度图和第二切分亮度图中相互匹配的像素的位置差异,确定相互匹配的像素的相位差值。
一种对目标亮度图进行切分处理的方式,成像设备可以沿列的方向(图像坐标系中的y轴方向)对该目标亮度图进行切分处理,在沿列的方向对目标亮度图进行切分处理的过程中,切分处理的每一分割线都与列的方向垂直。
另一种对目标亮度图进行切分处理的方式,成像设备可以沿行的方向(图像坐标系中的x轴方向)对该目标亮度图进行切分处理,在沿行的方向对目标亮度图进行切分处理的过程中,切分处理的每一分割线都与行的方向垂直。
沿列的方向对目标亮度图进行切分处理后得到的第一切分亮度图和第二切分亮度图可以分别称为上图和下图。沿行的方向对目标亮度图进行切分处理后得到的第一切分亮度图和第二切分亮度图可以分别称为左图和右图。
其中,“相互匹配的像素”指的是由像素本身及其周围像素组成的像素矩阵相互相似。例如,第一切分亮度图中像素a和其周围的像素组成一个3行3列的像素矩阵,该像素矩阵的像素值为:
2 15 70
1 35 60
0 100 1
第二切分亮度图中像素b和其周围的像素也组成一个3行3列的像素矩阵,该像素矩阵的像素值为:
1 15 70
1 36 60
0 100 2
由上文可以看出,这两个矩阵是相似的,则可以认为像素a和像素b相互匹配。判断像素矩阵是否相似的方式很多,通常可对两个像素矩阵中的每个对应像素的像素值求差,再将求得的差值的绝对值进行相加,利用该相加的结果来判断像素矩阵是否相似,也即是,若该相加的结果小于预设的某一阈值,则认为像素矩阵相似,否则,则认为像素矩阵不相似。
例如,对于上述两个3行3列的像素矩阵而言,可以分别将1和2求差,将15和15求差,将70和70求差,……,再将求得的差的绝对值相加,得到相加结果为3,该相加结果3小于预设的阈值,则认为上述两个3行3列的像素矩阵相似。
另一种判断像素矩阵是否相似的方式是利用sobel卷积核计算方式或者高拉普拉斯计算方式等方式提取其边缘特征,通过边缘特征来判断像素矩阵是否相似。
这里,“相互匹配的像素的位置差异”指的是,相互匹配的像素中位于第一切分亮度图中的像素的位置和位于第二切分亮度图中的像素的位置的差异。如上述举例,相互匹配的像素a和像素b的位置差异指的是像素a在第一切分亮度图中的位置和像素b在第二切分亮度图中的位置的差异。
相互匹配的像素分别对应于从不同方向射入镜头的成像光线在图像传感器中所成的不同的像。例如,第一切分亮度图中的像素a与第二切分亮度图中的像素b相互匹配,其中,该像素a可以对应于图1中在A位置处所成的像,像素b可以对应于图1中在B位置处所成的像。
由于相互匹配的像素分别对应于从不同方向射入镜头的成像光线在图像传感器中所成的不同的像,因此,根据相互匹配的像素的位置差异,即可确定该相互匹配的像素的相位差。
步骤726b,根据相互匹配的像素的相位差值确定第一方向的相位差值或第二方向的相位差值。
当第一切分亮度图包括的是偶数行的像素,第二切分亮度图包括的是奇数行的像素,第一切分亮度图中的像素a与第二切分亮度图中的像素b相互匹配,则根据相互匹配的像素a和像素b的相位差,可以确定第一方向的相位差值。
当第一切分亮度图包括的是偶数列的像素,第二切分亮度图包括的是奇数列的像素,第一切分亮度图中的像素a与第二切分亮度图中的像素b相互匹配,则根据相互匹配的像素a和像素b的相位差,可以确定第二方向的相位差值。
本申请实施例中,对各个像素点组对应的子亮度图进行拼接,得到目标亮度图,将目标亮度图划分为两个切分亮度图后,通过像素匹配,可以快速的确定相互匹配的像素的相位差值,同时包含了丰富的相位差值,可以提高相位差值的精确度,提高对焦的准确度和稳定度。
图12为一个实施例中的像素点组的示意图,如图12所示,该像素点组包括按照两行两列的阵列排布方式进行排布的4个像素点,该4个像素点分别为D1像素点、D2像素点、D3像素点和D4像素点,其中,每个像素点包括按照两行两列的阵列排布方式进行排布的4个子像素点,其中,子像素点分别为d11、d12、d13、d14、d21、d22、d23、d24、d31、d32、d33、d34、d41、d42、d43和d44。
如图13所示,子像素点d11、d21、d31和d41在各像素点中的排布位置相同,均为第一行第一列,子像素点d12、d22、d32和d42在各像素点中的排布位置相同,均为第一行第二列,子像素点d13、d23、d33和d43在各像素点中的排布位置相同,均为第二行第一列,子像素点d14、d24、d34和d44在各像素点中的排布位置相同,均为第二行第二列。
在一个实施例中,步骤722,根据像素点组中每个像素点的相同位置处的子像素点的亮度值,获取像素点组对应的子亮度图,包括可以包括步骤A1至A3。
步骤A1,成像设备从每个像素点中确定相同位置处的子像素点,得到多个子像素点集合。其中,每个子像素点集合包括的子像素点在像素点中的位置均相同。
成像设备分别从D1像素点、D2像素点、D3像素点和D4像素点中确定相同位置处的子像素点,可以得到4个子像素点集合J1、J2、J3和J4,其中,子像素点集合J1包括子像素点d11、d21、d31和d41,其包括的子像素点在像素点中的位置均相同,为第一行第一列,子像素点集合J2包括子像素点d12、d22、d32和d42,其包括的子像素点在像素点中的位置均相同,为第一行第二列,子像素点集合J3包括子像素点d13、d23、d33和d43,其包括的子像素点在像素点中的位置均相同,为第二行第一列,子像素点集合J4包括子像素点d14、d24、d34和d44,其包括的子像素点在像素点中的位置均相同,为第二行第二列。
步骤A2,对于每个子像素点集合,成像设备根据该子像素点集合中每个子像素点的亮度值,获取该子像素点集合对应的亮度值。
可选的,在步骤A2中,成像设备可以确定子像素点集合中每个子像素点对应的颜色系数,其中,该颜色系数是根据子像素点对应的颜色通道确定的。
例如,子像素点d11属于D1像素点,该D1像素点包括的滤光片可以为绿色滤光片,也即是,该D1像素点的颜色通道为绿色,则其包括的子像素点d11的颜色通道也为绿色,成像设备可以根据子像素点d11的颜色通道(绿色)确定该子像素点d11对应的颜色系数。
在确定了子像素点集合中每个子像素点对应的颜色系数之后,成像设备可以将子像素点集合中每个子像素点对应的颜色系数与亮度值相乘,得到子像素点集合中每个子像素点的加权亮度值。
例如,成像设备可以将子像素点d11的亮度值与子像素点d11对应的颜色系数相乘,得到该子像素点d11的加权亮度值。
在得到子像素点集合中每个子像素点的加权亮度值之后,成像设备可以将子像素点集合中每个子像素点的加权亮度值相加,得到该子像素点集合对应的亮度值。
例如,对于子像素点集合J1,可以基于下述第一公式计算该子像素点集合J1对应的亮度值。
Y_TL=Y_21*C_R+(Y_11+Y_41)*C_G/2+Y_31*C_B。
其中,Y_TL为该子像素点集合J1对应的亮度值,Y_21为子像素点d21的亮度值,Y_11为子像素点d11的亮度值,Y_41为子像素点d41的亮度值,Y_31为子像素点d31的亮度值,C_R为子像素点d21对应的颜色系数,C_G/2为子像素点d11和d41对应的颜色系数,C_B为子像素点d31对应的颜色系数,其中,Y_21*C_R为子像素点d21的加权亮度值,Y_11*C_G/2为子像素点d11的加权亮度值,Y_41*C_G/2为子像素点d41的加权亮度值,Y_31*C_B为子像素点d31的加权亮度值。
对于子像素点集合J2,可以基于下述第二公式计算该子像素点集合J2对应的亮度值。
Y_TR=Y_22*C_R+(Y_12+Y_42)*C_G/2+Y_32*C_B。
其中,Y_TR为该子像素点集合J2对应的亮度值,Y_22为子像素点d22的亮度值,Y_12为子像素点d12的亮度值,Y_42为子像素点d42的亮度值,Y_32为子像素点d32的亮度值,C_R为子像素点d22对应的颜色系数,C_G/2为子像素点d12和d42对应的颜色系数,C_B为子像素点d32对应的颜色系数,其中,Y_22*C_R为子像素点d22的加权亮度值,Y_12*C_G/2为子像素点d12的加权亮度值,Y_42*C_G/2为子像素点d42的加权亮度值,Y_32*C_B为子像素点d32的加权亮度值。
对于子像素点集合J3,可以基于下述第三公式计算该子像素点集合J3对应的亮度值。
Y_BL=Y_23*C_R+(Y_13+Y_43)*C_G/2+Y_33*C_B。
其中,Y_BL为该子像素点集合J3对应的亮度值,Y_23为子像素点d23的亮度值,Y_13为子像素点d13的亮度值,Y_43为子像素点d43的亮度值,Y_33为子像素点d33的亮度值,C_R为子像素点d23对应的颜色系数,C_G/2为子像素点d13和d43对应的颜色系数,C_B为子像素点d33对应的颜色系数,其中,Y_23*C_R为子像素点d23的加权亮度值,Y_13*C_G/2为子像素点d13的加权亮度值,Y_43*C_G/2为子像素点d43的加权亮度值,Y_33*C_B为子像素点d33的加权亮度值。
对于子像素点集合J4,可以基于下述第四公式计算该子像素点集合J4对应的亮度值。
Y_BR=Y_24*C_R+(Y_14+Y_44)*C_G/2+Y_34*C_B。
其中,Y_BR为该子像素点集合J4对应的亮度值,Y_24为子像素点d24的亮度值,Y_14为子像素点d14的亮度值,Y_44为子像素点d44的亮度值,Y_34为子像素点d34的亮度值,C_R为子像素点d24对应的颜色系数,C_G/2为子像素点d14和d44对应的颜色系数,C_B为子像素点d34对应的颜色系数,其中,Y_24*C_R为子像素点d24的加权亮度值,Y_14*C_G/2为子像素点d14的加权亮度值,Y_44*C_G/2为子像素点d44的加权亮度值,Y_34*C_B为子像素点d34的加权亮度值。
步骤A3,成像设备根据每个子像素集合对应的亮度值生成子亮度图。
其中,子亮度图包括多个像素,该子亮度图中每个像素与一个子像素集合相对应,每个像素的像素值等于对应的子像素集合所对应的亮度值。
图13为一个实施例中子亮度图的示意图。如图13所示,该子亮度图包括4个像素,其中,第一行第一列的像素与子像素集合J1相对应,其像素值为Y_TL,第一行第二列的像素与子像素集合J2相对应,其像素值为Y_TR,第二行第一列的像素与子像素集合J3相对应,其像素值为Y_BL,第二行第二列的像素与子像素集合J4相对应,其像素值为Y_BR。
应该理解的是,虽然上述的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,上述的流程图中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些子步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。
在一个实施例中,如图14所示,提供了一种3D建模方法,包括:
步骤1420,当原始图像中的物距小于预设物距阈值时,对原始图像计算第一方向的相位差和第二方向的相位差,第一方向与第二方向之间成预设夹角,预设物距阈值为处于电子设备中摄像头的重叠视场角范围内的最小物距;从第一方向的相位差和第二方向的相位差中确定目标相位差。
步骤1440,根据目标相位差计算原始图像的深度信息。
步骤1460,由深度信息生成原始图像的深度图。
步骤1480,根据原始图像的深度图进行3D建模。
本申请实施例中,当原始图像中的物距小于预设物距阈值时,对原始图像计算第一方向的相位差和第二方向的相位差,第一方向与第二方向之间成预设夹角,预设物距阈值为处于电子设备中摄像头的重叠视场角范围内的最小物距;从第一方向的相位差和第二方向的相位差中确定目标相位差。根据目标相位差计算原始图像的深度信息,由深度信息生成原始图像的深度图。根据原始图像的深度图进行3D建模。
当然,在得到了原始图像的深度图之后,还可以对原始图像进行背景虚化、物体分割、3D扫描或AR增强和动作识别等。
在一个实施例中,如图15所示,提供了一种深度图生成装置1500,包括:目标相位差计算模块1520、深度信息计算模块1540及深度图生成模块1560。其中,
目标相位差计算模块1520,用于当原始图像中的物距小于预设物距阈值时,对原始图像计算第一方向的相位差和第二方向的相位差,第一方向与第二方向之间成预设夹角,预设物距阈值为处于电子设备中摄像头的重叠视场角范围内的最小物距,从第一方向的相位差和第二方向的相位差中确定目标相位差;
深度信息计算模块1540,用于根据目标相位差计算原始图像的深度信息;
深度图生成模块1560,用于由深度信息生成原始图像的深度图。
在一个实施例中,电子设备包括至少两个普通摄像头,至少一个飞行时间TOF摄像头,深度图生成装置1500还用于:当原始图像中的物距大于或等于预设物距阈值时,判断原始图像的纹理方向是否与电子设备中用于计算深度信息的两个普通摄像头的排列方向一致;若判断出原始图像的纹理方向与电子设备中的两个普通摄像头的排列方向一致,则通过电子设备中的TOF摄像头计算原始图像的深度信息。
在一个实施例中,深度图生成装置1500还用于:当通过电子设备中的TOF摄像头所计算出的原始图像中预设区域的深度信息的准确率低于预设准确率阈值时,则根据目标相位差计算出原始图像中预设区域的第一深度信息;从通过电子设备中的TOF摄像头所计算出的原始图像的深度信息中,获取除去预设区域之外的其他区域的深度信息;将原始图像中预设区域的第一深度信息与除去预设区域之外的其他区域的深度信息进行合成,得到原始图像的深度信息。
在一个实施例中,深度图生成装置1500还用于:若判断出原始图像的纹理方向与电子设备中用于计算深度信息的两个普通摄像头的排列方向不一致,则通过电子设备中的两个普通摄像头计算原始图像的深度信息。
在一个实施例中,深度图生成装置1500还用于:当通过电子设备中的两个普通摄像头所计算出的原始图像中预设区域的深度信息的准确率低于预设准确率阈值时,则根据目标相位差计算出原始图像中预设区域的第一深度信息、或根据电子设备中的TOF摄像头计算出原始图像中预设区域的第二深度信息;从原始图像中预设区域的第一深度信息、第二深度信息中筛查出准确度较高的深度信息,作为原始图像中预设区域的目标深度信息;从通过电子设备中的两个普通摄像头所计算出的原始图像的深度信息中,获取除去预设区域之外的其他区域的深度信息;将原始图像中预设区域的目标深度信息与除去预设区域之外的其他区域的深度信息进行合成,得到原始图像的深度信息。
在一个实施例中,目标相位差计算模块1520,包括子亮度图获取单元、目标亮度图获取单元及第一方向、第二方向相位差单元,其中,
子亮度图获取单元,用于对原始图像中的每个像素点组,根据像素点组中每个像素点的相同位置处的子像素点的亮度值,获取像素点组对应的子亮度图;
目标亮度图获取单元,用于根据每个像素点组对应的子亮度图生成目标亮度图;
第一方向、第二方向相位差单元,用于根据目标亮度图计算第一方向的相位差和第二方向的相位差。
在一个实施例中,第一方向、第二方向相位差单元,还用于对目标亮度图进行切分处理,得到第一切分亮度图和第二切分亮度图,并根据第一切分亮度图和第二切分亮度图中相互匹配的像素的位置差异,确定相互匹配的像素的相位差值;根据相互匹配的像素的相位差值确定第一方向的相位差值和第二方向的相位差值。
在一个实施例中,子亮度图获取单元,还用于从每个像素点中确定相同位置处的子像素点,得到多个子像素点集合,其中,每个子像素点集合包括的子像素点在像素点中的位置均相同;对于每个子像素点集合,根据子像素点集合中每个子像素点的亮度值,获取子像素点集合对应的亮度值;根据每个子像素集合对应的亮度值生成子亮度图。
上述深度图生成装置中各个模块的划分仅用于举例说明,在其他实施例中,可将深度图生成装置按照需要划分为不同的模块,以完成上述深度图生成装置的全部或部分功能。
图16为一个实施例中电子设备的内部结构示意图。如图16所示,该电子设备包括通过***总线连接的处理器和存储器。其中,该处理器用于提供计算和控制能力,支撑整个电子设备的运行。存储器可包括非易失性存储介质及内存储器。非易失性存储介质存储有操作***和计算机程序。该计算机程序可被处理器所执行,以用于实现以上各个实施例所提供的一种深度图生成方法或3D建模方法。内存储器为非易失性存储介质中的操作***计算机程序提供高速缓存的运行环境。该电子设备可以是手机、平板电脑或者个人数字助理或穿戴式设备等。
本申请实施例中提供的深度图生成装置中的各个模块的实现可为计算机程序的形式。该计算机程序可在终端或服务器上运行。该计算机程序构成的程序模块可存储在终端或服务器的存储器上。该计算机程序被处理器执行时,实现本申请实施例中所描述方法的步骤。
电子设备实现该深度图生成方法的过程如上述实施例,在此不再赘述。
本申请实施例还提供了一种计算机可读存储介质。一个或多个包含计算机可执行指令的非易失性计算机可读存储介质,当计算机可执行指令被一个或多个处理器执行时,使得处理器执行深度图生成方法或3D建模方法的步骤。
一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行深度图生成方法。
本申请实施例所使用的对存储器、存储、数据库或其它介质的任何引用可包括非易失性和/或易失性存储器。合适的非易失性存储器可包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)或闪存。易失性存储器可包括随机存取存储器(RAM),它用作外部高速缓冲存储器。作为说明而非局限,RAM以多种形式可得,诸如静态RAM(SRAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、双数据率SDRAM(DDR SDRAM)、增强型SDRAM(ESDRAM)、同步链路(Synchlink)DRAM(SLDRAM)、存储器总线(Rambus)直接RAM(RDRAM)、直接存储器总线动态RAM(DRDRAM)、以及存储器总线动态RAM(RDRAM)。
以上实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本申请专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请专利的保护范围应以所附权利要求为准。
Claims (11)
1.一种深度图生成方法,应用于电子设备,所述电子设备包括至少两个普通摄像头,至少一个飞行时间TOF摄像头,其特征在于,所述方法包括:
当原始图像中的物距小于预设物距阈值时,对原始图像计算第一方向的相位差和第二方向的相位差,所述第一方向与所述第二方向之间成预设夹角,所述预设物距阈值为处于所述电子设备中摄像头的重叠视场角范围内的最小物距;从所述第一方向的相位差和所述第二方向的相位差中确定目标相位差;
根据所述目标相位差计算原始图像的深度信息;
当所述原始图像中的物距大于或等于预设物距阈值时,判断所述原始图像的纹理方向是否与电子设备中用于计算深度信息的两个普通摄像头的排列方向一致;
若判断出所述原始图像的纹理方向与电子设备中的所述两个普通摄像头的排列方向一致,则通过电子设备中的TOF摄像头计算原始图像的深度信息;
由所述深度信息生成所述原始图像的深度图。
2.根据权利要求1所述的方法,其特征在于,所述方法还包括:
当通过电子设备中的TOF摄像头所计算出的原始图像中预设区域的深度信息的准确率低于预设准确率阈值时,则根据所述目标相位差计算出所述原始图像中预设区域的第一深度信息;
从所述通过电子设备中的TOF摄像头所计算出的原始图像的深度信息中,获取除去所述预设区域之外的其他区域的深度信息;
将所述原始图像中预设区域的第一深度信息与所述除去所述预设区域之外的其他区域的深度信息进行合成,得到所述原始图像的深度信息。
3.根据权利要求1所述的方法,其特征在于,在所述判断所述原始图像的纹理方向是否与电子设备中用于计算深度信息的两个普通摄像头的排列方向一致之后,包括:
若判断出所述原始图像的纹理方向与电子设备中用于计算深度信息的两个普通摄像头的排列方向不一致,则通过所述电子设备中的所述两个普通摄像头计算原始图像的深度信息。
4.根据权利要求3所述的方法,其特征在于,所述方法还包括:
当通过所述电子设备中的所述两个普通摄像头所计算出的原始图像中预设区域的深度信息的准确率低于预设准确率阈值时,则根据所述目标相位差计算出所述原始图像中预设区域的第一深度信息和根据所述电子设备中的TOF摄像头计算出所述原始图像中预设区域的第二深度信息;
从所述原始图像中预设区域的第一深度信息和第二深度信息中筛查出准确度较高的深度信息,作为所述原始图像中预设区域的目标深度信息;
从所述通过电子设备中的所述两个普通摄像头所计算出的原始图像的深度信息中,获取除去所述预设区域之外的其他区域的深度信息;
将所述原始图像中预设区域的目标深度信息与所述除去所述预设区域之外的其他区域的深度信息进行合成,得到所述原始图像的深度信息。
5.根据权利要求1所述的方法,其特征在于,所述电子设备包括图像传感器,所述图像传感器包括阵列排布的多个像素点组,每个所述像素点组包括阵列排布的M*N个像素点;每个像素点对应一个感光单元;每个像素点包括阵列排布的多个子像素点,其中,M和N均为大于或等于2的自然数;
所述对原始图像计算第一方向的相位差和第二方向的相位差,包括:
对所述原始图像中的每个所述像素点组,根据所述像素点组中每个像素点的相同位置处的子像素点的亮度值,获取所述像素点组对应的子亮度图;
根据每个所述像素点组对应的子亮度图生成目标亮度图;
根据所述目标亮度图计算第一方向的相位差和第二方向的相位差。
6.根据权利要求5所述的方法,其特征在于,所述根据所述目标亮度图计算第一方向的相位差和第二方向的相位差,包括:
对所述目标亮度图进行切分处理,得到第一切分亮度图和第二切分亮度图,并根据所述第一切分亮度图和所述第二切分亮度图中相互匹配的像素的位置差异,确定所述相互匹配的像素的相位差值;
根据所述相互匹配的像素的相位差值确定第一方向的相位差值和第二方向的相位差值。
7.根据权利要求5所述的方法,其特征在于,所述根据所述像素点组中每个像素点的相同位置处的子像素点的亮度值,获取所述像素点组对应的子亮度图,包括:
从每个所述像素点中确定相同位置处的子像素点,得到多个子像素点集合,其中,每个所述子像素点集合包括的子像素点在像素点中的位置均相同;
对于每个所述子像素点集合,根据所述子像素点集合中每个子像素点的亮度值,获取所述子像素点集合对应的亮度值;
根据每个所述子像素点 集合对应的亮度值生成所述子亮度图。
8.一种3D建模方法,其特征在于,所述方法包括:
当原始图像中的物距小于预设物距阈值时,对原始图像计算第一方向的相位差和第二方向的相位差,所述第一方向与所述第二方向之间成预设夹角,所述预设物距阈值为处于电子设备中摄像头的重叠视场角范围内的最小物距;从所述第一方向的相位差和所述第二方向的相位差中确定目标相位差;
根据所述目标相位差计算原始图像的深度信息;
当所述原始图像中的物距大于或等于预设物距阈值时,判断所述原始图像的纹理方向是否与电子设备中用于计算深度信息的两个普通摄像头的排列方向一致;若判断出所述原始图像的纹理方向与电子设备中的所述两个普通摄像头的排列方向一致,则通过电子设备中的TOF摄像头计算原始图像的深度信息;
由所述深度信息生成所述原始图像的深度图;
根据所述原始图像的深度图进行3D建模。
9.一种深度图生成装置,其特征在于,所述装置包括:
目标相位差计算模块,用于当原始图像中的物距小于预设物距阈值时,对原始图像计算第一方向的相位差和第二方向的相位差,所述第一方向与所述第二方向之间成预设夹角,所述预设物距阈值为处于电子设备中摄像头的重叠视场角范围内的最小物距,从所述第一方向的相位差和所述第二方向的相位差中确定目标相位差;
深度信息计算模块,用于根据所述目标相位差计算原始图像的深度信息;
深度图生成模块,用于当所述原始图像中的物距大于或等于预设物距阈值时,判断所述原始图像的纹理方向是否与电子设备中用于计算深度信息的两个普通摄像头的排列方向一致;若判断出所述原始图像的纹理方向与电子设备中的所述两个普通摄像头的排列方向一致,则通过电子设备中的TOF摄像头计算原始图像的深度信息;由所述深度信息生成所述原始图像的深度图。
10.一种电子设备,包括存储器及处理器,所述存储器中储存有计算机程序,其特征在于,所述计算机程序被所述处理器执行时,使得所述处理器执行如权利要求1至7中任一项所述的深度图生成方法的步骤或权利要求8所述的3D建模方法的步骤。
11.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至7中任一项所述的方法的步骤或权利要求8所述的3D建模方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911102721.2A CN112866675B (zh) | 2019-11-12 | 2019-11-12 | 深度图生成方法和装置、电子设备、计算机可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911102721.2A CN112866675B (zh) | 2019-11-12 | 2019-11-12 | 深度图生成方法和装置、电子设备、计算机可读存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112866675A CN112866675A (zh) | 2021-05-28 |
CN112866675B true CN112866675B (zh) | 2022-09-09 |
Family
ID=75984458
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911102721.2A Active CN112866675B (zh) | 2019-11-12 | 2019-11-12 | 深度图生成方法和装置、电子设备、计算机可读存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112866675B (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115423930B (zh) * | 2022-07-28 | 2023-09-26 | 荣耀终端有限公司 | 一种图像采集方法及电子设备 |
CN117115189A (zh) * | 2023-07-10 | 2023-11-24 | 中铁第一勘察设计院集团有限公司 | 基于机器视觉的轨道3d几何形态监测方法及*** |
CN116984274B (zh) * | 2023-09-27 | 2023-12-12 | 苏州弘皓光电科技有限公司 | 一种基于5g技术的电炉生产智能控制方法及*** |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP5387856B2 (ja) * | 2010-02-16 | 2014-01-15 | ソニー株式会社 | 画像処理装置、画像処理方法、画像処理プログラムおよび撮像装置 |
CN103493484B (zh) * | 2011-03-31 | 2015-09-02 | 富士胶片株式会社 | 成像装置和成像方法 |
CN112102386A (zh) * | 2019-01-22 | 2020-12-18 | Oppo广东移动通信有限公司 | 图像处理方法、装置、电子设备和计算机可读存储介质 |
-
2019
- 2019-11-12 CN CN201911102721.2A patent/CN112866675B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN112866675A (zh) | 2021-05-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10043290B2 (en) | Image processing to enhance distance calculation accuracy | |
CN109120823B (zh) | 具有自动聚焦的纤薄多孔径成像***及其使用方法 | |
CN112866511B (zh) | 成像组件、对焦方法和装置、电子设备 | |
CN112866675B (zh) | 深度图生成方法和装置、电子设备、计算机可读存储介质 | |
CN112866549B (zh) | 图像处理方法和装置、电子设备、计算机可读存储介质 | |
CN112866542B (zh) | 追焦方法和装置、电子设备、计算机可读存储介质 | |
WO2023016144A1 (zh) | 对焦控制方法、装置、成像设备、电子设备和计算机可读存储介质 | |
CN112866510B (zh) | 对焦方法和装置、电子设备、计算机可读存储介质 | |
CN112866655B (zh) | 图像处理方法和装置、电子设备、计算机可读存储介质 | |
JP2016208075A (ja) | 画像出力装置およびその制御方法、撮像装置、プログラム | |
CN112866548B (zh) | 相位差的获取方法和装置、电子设备 | |
CN112866546B (zh) | 对焦方法和装置、电子设备、计算机可读存储介质 | |
CN112866545B (zh) | 对焦控制方法和装置、电子设备、计算机可读存储介质 | |
CN112862880B (zh) | 深度信息获取方法、装置、电子设备和存储介质 | |
CN112866547B (zh) | 对焦方法和装置、电子设备、计算机可读存储介质 | |
CN112866543B (zh) | 对焦控制方法和装置、电子设备、计算机可读存储介质 | |
CN112866544B (zh) | 相位差的获取方法、装置、设备及存储介质 | |
CN112866551B (zh) | 对焦方法和装置、电子设备、计算机可读存储介质 | |
CN112866552B (zh) | 对焦方法和装置、电子设备、计算机可读存储介质 | |
CN112866674B (zh) | 深度图获取方法、装置、电子设备和计算机可读存储介质 | |
CN112422944B (zh) | 三维成像*** | |
CN112861835A (zh) | 主体检测方法、装置、电子设备和计算机可读存储介质 | |
CN112866550A (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 |