CN110443841A - 地面深度的测量方法、装置及系统 - Google Patents
地面深度的测量方法、装置及系统 Download PDFInfo
- Publication number
- CN110443841A CN110443841A CN201810410773.5A CN201810410773A CN110443841A CN 110443841 A CN110443841 A CN 110443841A CN 201810410773 A CN201810410773 A CN 201810410773A CN 110443841 A CN110443841 A CN 110443841A
- Authority
- CN
- China
- Prior art keywords
- ground
- image
- pixel
- parallax
- point
- 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.)
- Granted
Links
Classifications
-
- 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
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/20—Special algorithmic details
- G06T2207/20081—Training; Learning
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/20—Special algorithmic details
- G06T2207/20084—Artificial neural networks [ANN]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/30—Subject of image; Context of image processing
- G06T2207/30181—Earth observation
- G06T2207/30184—Infrastructure
Landscapes
- Engineering & Computer Science (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Image Analysis (AREA)
- Image Processing (AREA)
Abstract
本发明公开了一种地面深度的测量方法、装置及系统,属于图像处理技术领域。所述方法包括:通过指定有监督学习网络处理针对目标区域拍摄的左图像和右图像,以确定每个视差点对应的位置点的地面深度。由于该指定有监督学习网络是根据至少一个图像对、在每个图像对的视差图中标记的属于地面的多个视差点以及每个视差点对应的视差值训练得到,因此,当通过该指定有监督学习网络处理左图像和右图像时,该指定有监督学习网络实际上根据预先从标签中学习的特征输出目标视差图中的多个属于地面的视差点以及每个视差点的视差值,避免了仅仅基于像素点的像素值进行像素点匹配而导致出现匹配不唯一的情况,提高了测量地面深度的准确性。
Description
技术领域
本发明涉及图像处理技术领域,特别涉及一种地面深度的测量方法、装置及系统。
背景技术
随着图像处理技术的发展,根据双目摄像机针对目标区域拍摄的图像对重建目标区域的三维场景已逐渐成为可能,其中,双目摄像机拍摄的图像对包括左右两幅图像。进一步地,当目标区域包括地面时,若测量出目标区域的地面上的任一位置点的地面深度,则更有利于重建目标区域的三维场景。其中,地面深度是指该位置点到经过双目摄像机的两个光心且与成像平面平行的平面的距离。
相关技术是采用无监督深度学习网络来确定地面深度的,也即,当通过无监督学习网络对针对目标区域拍摄的左右两幅图像进行处理时,该无监督学习网络可以输出针对该左右两幅图像的视差图,视差图中的每个视差点对应一个视差值,且每个视差点对应一个位置点。之后,通过公式Z=Tx*f/d即可确定视差图中属于地面的每个视差点对应的位置点的地面深度。其中,Z为每个视差点对应的位置点的地面深度,Tx为双目摄像机的两个焦点之间的距离,f为双目摄像机的焦距,d为每个视差点的视差值。
在上述确定地面深度的过程中,由于无监督学习网络实际上是根据左右两幅图像中的像素点的像素值确定视差图的,而单纯根据像素值确定匹配的像素点可能出现匹配不唯一的情况,导致此时确定的视差图是错误的,从而导致确定出的地面深度有误。
发明内容
为了解决相关技术的问题,本发明实施例提供了一种地面深度的测量方法、装置及系统。所述技术方案如下:
第一方面,提供了一种地面深度的测量方法,所述方法包括:
确定针对目标区域拍摄的目标图像对,所述目标图像对包括左图像和右图像,所述目标区域中包括地面;
通过指定有监督学习网络对所述目标图像对中的左图像和右图像进行处理,得到目标视差图中属于地面的多个视差点和每个视差点的视差值;
其中,所述指定有监督学习网络是根据至少一个图像对、在每个图像对的视差图中标记的属于地面的多个视差点以及每个视差点的视差值训练得到;
根据所述目标视差图中属于地面的多个视差点中每个视差点的视差值,确定所述目标视差图中属于地面的多个视差点中每个视差点对应的位置点的地面深度。
可选地,所述通过指定有监督学习网络对所述目标图像对中的左图像和右图像进行处理之前,还包括:
获取用于训练的至少一个图像对,每个图像对包括左图像和右图像,且每个图像对对应的拍摄区域包括地面;
对于所述至少一个图像对中任一图像对A,通过指定无监督学习网络对所述图像对A中的左图像和右图像进行处理,得到所述图像对A的视差图;
确定所述图像对A的视差图中属于地面的多个视差点和每个视差点对应的位置点的第一地面深度;
对所述图像对A的视差图中属于地面的每个视差点对应位置点的第一地面深度进行校正,得到每个视差点对应的位置点的第二地面深度;
根据每个图像对的视差图中每个视差点对应的位置点的第二地面深度确定每个视差点的视差值;
通过所述至少一个图像对、每个图像对的视差图中属于地面的多个视差点以及每个视差点的视差值,对初始化的有监督学习网络进行训练,得到所述指定有监督学习网络。
可选地,所述确定所述图像对A的视差图中属于地面的多个视差点和每个视差点对应的位置点的第一地面深度,包括:
根据所述图像对A的视差图中每个视差点的视差值,确定每个视差点对应的位置点的第一地面深度;
对所述图像对A的左图像进行地面分割,得到所述图像对A的左图像中属于地面的区域;
根据所述图像对A的左图像中属于地面的区域,从所述图像对A的视差图包括的所有视差点中选择属于地面的视差点,得到所述图像对A的视差图中属于地面的多个视差点。
可选地,所述对所述图像对A的视差图中属于地面的每个视差点对应的位置点的第一地面深度进行校正,得到每个视差点对应的位置点的第二地面深度,包括:
根据所述图像对A的视差图中属于地面的每个视差点对应的位置点的第一地面深度,确定所述图像对A的左图像中属于地面的每个像素点的空间坐标,其中,每个像素点的空间坐标是根据每个像素点在所述图像对A的左图像中的坐标和每个像素点匹配的视差点对应的位置点的地面深度确定的;
根据所述图像对A的左图像中属于地面的每个像素点的空间坐标,确定用于描述所述图像对A对应的拍摄区域包括的地面的目标平面方程;
根据所述目标平面方程对所述图像对A的左图像中属于地面的每个像素点的空间坐标进行调整,以使每个像素点的空间坐标满足所述目标平面方程;
根据调整后的每个像素点的空间坐标,确定每个像素点匹配的视差点对应的位置点的第二地面深度。
可选地,所述根据所述图像对A的左图像中属于地面的每个像素点的空间坐标,确定用于描述所述图像对A对应的拍摄区域包括的地面的目标平面方程,包括:
将所述图像对A的左图像中属于地面的所有像素点中任意三个不共线的像素点进行组合,得到P个像素点集合,每个像素点集合包括三个像素点,所述P为大于1的正整数;
确定每个像素点集合对应的平面的第一平面方程;
从所述P个像素点集合对应的平面的第一平面方程中选择一个第一平面方程作为所述目标平面方程。
可选地,所述确定每个像素点集合对应的平面的第二平面方程,包括:
对于任一像素点集合B,根据所述像素点集合B包括的三个像素点的空间坐标,确定所述像素点集合B对应的平面的第二平面方程;
根据所述像素点集合B对应的平面的第二平面方程,从所述图像对A的左图像中属于地面的所有像素点中选择到所述像素点集合B对应的平面的距离小于第一阈值的像素点;
根据选择的像素点中每个像素点的空间坐标,对所述像素点集合B对应的平面的第二平面方程进行调整,得到所述像素点集合B对应的平面的第一平面方程。
可选地,所述根据选择的像素点中每个像素点的空间坐标,对所述像素点集合B对应的平面的第二平面方程进行调整,得到所述像素点集合B对应的平面的第一平面方程,包括:
确定所述选择的像素点的个数;
若所述选择的像素点的个数与所述图像对A的左图像中属于地面的所有像素点的个数之间的比值大于第二阈值,则根据所述选择的像素点中每个像素点的空间坐标,按照最小二乘法确定所述像素点集合B对应的平面的第一平面方程。
可选地,所述根据选择的像素点中每个像素点的空间坐标,对所述像素点集合B对应的平面的第二平面方程进行调整,得到所述像素点集合B对应的平面的第一平面方程之后,还包括:
根据所述像素点集合B对应的平面的第一平面方程,确定所述选择的像素点到所述像素点集合B对应的平面的平均距离,得到所述像素点集合B对应的平均距离;
所述从所述P个像素点集合对应的平面的第一平面方程中选择一个第一平面方程作为所述目标平面方程,包括:
从所述P个像素点集合中选择对应的平均距离最小的像素点集合,并将选择的像素点集合对应的平面的第一平面方程确定为所述目标平面方程。
第二方面,提供了一种地面深度的测量装置,所述装置包括:
第一确定模块,用于确定针对目标区域拍摄的目标图像对,所述目标图像对包括左图像和右图像,所述目标区域中包括地面;
第一处理模块,用于通过指定有监督学习网络对所述目标图像对中的左图像和右图像进行处理,得到目标视差图中属于地面的多个视差点和每个视差点的视差值;
其中,所述指定有监督学习网络是根据至少一个图像对、在每个图像对的视差图中标记的属于地面的多个视差点以及每个视差点的视差值训练得到;
第二确定模块,用于根据所述目标视差图中属于地面的多个视差点中每个视差点的视差值,确定所述目标视差图中属于地面的多个视差点中每个视差点对应的位置点的地面深度。
可选地,所述装置还包括:
获取模块,用于获取用于训练的至少一个图像对,每个图像对包括左图像和右图像,且每个图像对对应的拍摄区域包括地面;
第二处理模块,用于对于所述至少一个图像对中任一图像对A,通过指定无监督学习网络对所述图像对A中的左图像和右图像进行处理,得到所述图像对A的视差图;
第三确定模块,用于确定所述图像对A的视差图中属于地面的多个视差点和每个视差点对应的位置点的第一地面深度;
校正模块,用于对所述图像对A的视差图中属于地面的每个视差点对应位置点的第一地面深度进行校正,得到每个视差点对应的位置点的第二地面深度;
第四确定模块,用于根据每个图像对的视差图中每个视差点对应的位置点的第二地面深度确定每个视差点对应的视差值;
训练模块,用于通过所述至少一个图像对、每个图像对的视差图中属于地面的多个视差点以及每个视差点的视差值,对初始化的有监督学习网络进行训练,得到所述指定有监督学习网络。
可选地,所述第三确定模块,具体用于:
根据所述图像对A的视差图中每个视差点的视差值,确定每个视差点对应的位置处的第一地面深度;
对所述图像对A的左图像进行地面分割,得到所述图像对A的左图像中属于地面的区域;
根据所述图像对A的左图像中属于地面的区域,从所述图像对A的视差图包括的所有视差点中选择属于地面的视差点,得到所述图像对A的视差图中属于地面的多个视差点。
可选地,所述校正模块包括:
第一确定单元,用于根据所述图像对A的视差图中属于地面的每个视差点对应的位置点的第一地面深度,确定所述图像对A的左图像中属于地面的每个像素点的空间坐标,其中,每个像素点的空间坐标是根据每个像素点在所述图像对A的左图像中的坐标和每个像素点匹配的视差点对应的位置点的地面深度确定的;
第二确定单元,用于根据所述图像对A的左图像中属于地面的每个像素点的空间坐标,确定用于描述所述图像对A对应的拍摄区域包括的地面的目标平面方程;
调整单元,用于根据所述目标平面方程对所述图像对A的左图像中属于地面的每个像素点的空间坐标进行调整,以使每个像素点的空间坐标满足所述目标平面方程;
第三确定单元,用于根据调整后的每个像素点的空间坐标,确定每个像素点匹配的视差点对应的位置点的第二地面深度。
可选地,所述第二确定单元包括:
组合子单元,用于将所述图像对A的左图像中属于地面的所有像素点中任意三个不共线的像素点进行组合,得到P个像素点集合,每个像素点集合包括三个像素点,所述P为大于1的正整数;
确定子单元,用于确定每个像素点集合对应的平面的第一平面方程;
选择子单元,用于从所述P个像素点集合对应的平面的第一平面方程中选择一个第一平面方程作为所述目标平面方程。
可选地,所述确定子单元,具体用于:
对于任一像素点集合B,根据所述像素点集合B包括的三个像素点的空间坐标,确定所述像素点集合B对应的平面的第二平面方程;
根据所述像素点集合B对应的平面的第二平面方程,从所述图像对A的左图像中属于地面的所有像素点中选择到所述像素点集合B对应的平面的距离小于第一阈值的像素点;
根据选择的像素点中每个像素点的空间坐标,对所述像素点集合B对应的平面的第二平面方程进行调整,得到所述像素点集合B对应的平面的第一平面方程。
可选地,所述确定子单元,还具体用于:
确定所述选择的像素点的个数;
若所述选择的像素点的个数与所述图像对A的左图像中属于地面的所有像素点的个数之间的比值大于第二阈值,则根据所述选择的像素点中每个像素点的空间坐标,按照最小二乘法确定所述像素点集合B对应的平面的第一平面方程。
可选地,所述确定子单元,还具体用于:
根据所述像素点集合B对应的平面的第一平面方程,确定所述选择的像素点到所述像素点集合B对应的平面的平均距离,得到所述像素点集合B对应的平均距离;
所述选择子单元,具体用于:
从所述P个像素点集合中选择对应的平均距离最小的像素点集合,并将选择的像素点集合对应的平面的第一平面方程确定为所述目标平面方程。
第三方面,提供了一种地面深度的测量装置,所述装置包括:
处理器;
用于存储处理器可执行指令的存储器;
其中,所述处理器被配置为执行上述第一方面所述的任一项方法的步骤。
第四方面,提供了一种计算机可读存储介质,所述计算机可读存储介质上存储有指令,所述指令被处理器执行时实现上述第一方面所述的任一项方法的步骤。
第五方面,提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述第一方面所述的任一方法的步骤。
第六方面,提供了一种地面深度的测量系统,所述系统包括:
图像采集装置和地面深度的测量装置;
所述图像采集装置用于采集针对目标区域拍摄的目标图像对,并将所述目标图像对发送给所述地面深度的测量装置,所述地面深度的测量装置用于对所述目标图像对进行处理,所述地面深度的测量装置上述第二方面所述的地面深度的测量装置中的任一装置。
本发明实施例提供的技术方案带来的有益效果是:
在本发明实施例中,由于指定有监督学习网络是根据至少一个图像对、在每个图像对的视差图中标记的属于地面的多个视差点以及每个视差点的视差值训练得到,也即,指定有监督学习网络是根据至少一个图像对和针对每个图像对的设置的标签训练得到,其中,每个图像对的标签为对应的视差图中标记的属于地面的多个视差点以及每个视差点的视差值。因此,当通过该指定有监督学习网络处理针对目标区域拍摄的左图像和右图像时,该指定有监督学习网络可以根据预先从标签中学习的参数输出目标视差图中的多个属于地面的视差点以及每个视差点的视差值,避免了仅仅基于像素点的像素值进行像素点匹配而导致出现匹配不唯一的情况,从而避免由于确定的视差图有误而导致确定出的地面深度有误,提高了测量地面深度的准确性。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施例提供的一种地面深度的测量方法流程图;
图2是本发明实施例提供的另一种地面深度的测量方法流程图;
图3是本发明实施例提供的一种地面深度的测量装置框图;
图4是本发明实施例提供的另一种地面深度的测量装置框图;
图5是本发明实施例提供的另一种地面深度的测量装置框图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明实施方式作进一步地详细描述。
在对本发明实施例进行详细的解释说明之前,先对本发明实施例的应用场景予以介绍。在重建目标区域的三维场景时,除了需要确定处于目标区域的各个对象之间的相对位置,还需确定目标区域中各个对象的空间位置,以根据各个对象之间的相对位置和各个对象的空间位置重建目标区域的三维场景。特别地,当目标区域包括地面时,还可以确定该地面上任一位置点的空间位置,其中,确定地面上的位置点的空间位置需要确定位置点的地面深度。而本发明实施例提供的地面深度的测量方法就应用于重建三维场景的应用场景中。
接下来对本发明实施例提供的地面深度的测量方法进行详细的解释说明。
图1是本发明实施例提供的一种地面深度的测量方法流程图,如图1所示,该方法包括如下步骤:
步骤101:确定针对目标区域拍摄的目标图像对,目标图像对包括左图像和右图像,目标区域中包括地面。
其中,当需要确定目标区域包括的地面上任一位置点的地面深度时,需先确定双目摄像机针对目标区拍摄的目标图像对。
步骤102:通过指定有监督学习网络对目标图像对中的左图像和右图像进行处理,得到目标视差图中属于地面的的多个视差点和每个视差点的视差值,其中,指定有监督学习网络是根据至少一个图像对、在每个图像对的视差图中标记的属于地面的多个视差点以及每个视差点的视差值训练得到。
在本发明实施例中,可以通过指定有监督学习网络对目标图像对进行处理,直接得到目标视差图中属于地面的多个视差点和每个视差点的视差值。
步骤103:根据该目标视差图中属于地面的多个视差点中每个视差点的视差值,确定该目标视差图中属于地面的多个视差点中每个视差点对应的位置点的地面深度。
对于任一视差点,若已知该视差点对应的视差值,可以通过相关公式直接确定该视差点对应的位置点的地面深度。
在本发明实施例中,由于指定有监督学习网络是根据至少一个图像对、在每个图像对的视差图中标记的属于地面的多个视差点以及每个视差点的视差值训练得到,也即,指定有监督学习网络是根据至少一个图像对和针对每个图像对的设置的标签训练得到,其中,每个图像对的标签为对应的视差图中标记的属于地面的多个视差点以及每个视差点的视差值。因此,当通过该指定有监督学习网络处理针对目标区域拍摄的左图像和右图像时,该指定有监督学习网络实际上是根据预先从标签中学习的参数输出目标视差图中的多个属于地面的视差点以及每个视差点的视差值,避免了在基于像素点的像素值进行像素点匹配过程中可能出现匹配不唯一的情况,从而避免由于确定的视差图有误而导致确定出的地面深度有误,提高了测量地面深度的准确性。
图2是本发明实施例提供的另一种地面深度的测量方法流程图,如图2所示,该方法包括如下步骤:
步骤201:获取用于训练的至少一个图像对,每个图像对包括左图像和右图像,且每个图像对对应的拍摄区域包括地面。
由上述图1所示的实施例可知,在本发明实施例中,为了避免通过无监督学习网络得到的视差图有误,根据指定有监督学习网络处理针对目标区域拍摄的左图像和右图像,以便于直接得到目标图像对的视差图中属于地面的多个视差点和每个视差点的视差值。因此,在对针对目标区域拍摄的左图像和右图像进行处理之前,需先确定该指定有监督学习网络。
有监督学习网络,是指采用有标签的训练样本训练得到的网络,由于训练样本包括标签,因此,训练有监督学习网络的过程,也即,通过有标签的训练样本对有监督学习网络进行训练,以使后续在向有监督学习网络输入数据时,有监督学习网络可以输出与预先标定的标签之间满足一定关系的数据。因此,有监督学习网络可以应用于训练样本存在对应的标签的场景中。
其中,步骤201至步骤206用于确定本发明实施例提供的指定有监督学习网络,步骤207至步骤209用于根据该指定有监督学习网络确定地面上任一位置点的地面深度。
具体地,在本发明实施例中,确定该指定有监督学习网络的过程,也即,通过训练样本训练初始化的有监督学习网络,以得到该指定有监督学习网络。因此,在训练初始化的有监督学习网络之前,需先获取训练样本。
在本发明实施例中,训练样本为至少一个图像对,每个图像对包括左图像和右图像。进一步地,由于需要确定地面上任一位置点的地面深度,因此每个图像对对应的拍摄区域还需包括地面。
在得到训练样本之后,由于在本发明实施例中,需要指定有监督学习网络可以直接输出每个图像对的视差图中属于地面的每个视差点对应的视差值,因此,需要设置训练样本的标签,也即需在每个图像对的视差图中标记属于地面的多个视差点以及每个视差点对应的视差值。具体地,可以通过下述步骤202和步骤206确定每个图像对的视差图中属于地面的多个视差点以及每个视差点对应的视差值。
步骤202:对于该至少一个图像对中任一图像对A,通过指定无监督学习网络对该图像对A中的左图像和右图像进行处理,得到图像对A的视差图。
也即,在本发明实施例中,可以先通过指定无监督学习网络确定图像对的视差图,然后通过确定的视差图确定训练样本的标签,以通过确定的标签训练得到有监督学习网络。
其中,无监督学习网络,是指采用没有标签的训练样本训练得到的网络,由于训练样本没有标签,因此在训练无监督学习网络时,需要不断调整无监督学习网络中的参数,以使无监督学习网络学习到如何使输出的数据满足预设条件。因此,无监督学习网络通常应用于训练样本的标签难以获取的场景中。
比如,针对同一区域拍摄的左右两幅样本图像,训练无监督学习网络的过程为:对于左样本图像中属于地面的任一第一像素点,按照预设视差值确定右样本图像中与第一像素点匹配的第二像素点,若确定的第二像素点的像素值与第一像素点的像素值之间的差值大于预设差值,则对预设视差值进行调整,并按照调整后的视差值重新确定右样本图像中与第一像素点匹配的第二像素点,重复执行上述过程,直至确定出的第二像素点的像素值与第一像素点的像素值之间的差值小于预设差值,此时将最终确定的第二像素点确定为与第一像素点匹配的像素点。在上述不断调整预设视差值的过程中,无监督学习网络学习到如何查找到与第一像素点匹配的第二像素点,以便于后续确定左右两幅图像的视差图。
因此,当通过指定无监督学习网络对该图像对A中的左图像和右图像进行处理,该指定无监督学习网络可以直接输出图像对A的视差图。
步骤203:确定所图像对A的视差图中属于地面的多个视差点和每个视差点对应的位置点的第一地面深度。
实际应用中,图像对对应的拍摄区域通常只有部分区域为地面,因此,确定该图像对A的视差图中属于地面的多个视差点和每个视差点对应的位置点的第一地面深度可以通过以下两个步骤实现:
(1)根据图像对A的视差图中每个视差点的视差值,确定每个视差点对应的位置点的第一地面深度。
在已知图像对A的视差图的前提下,由于视差图中每个视差点存在对应的视差值,因此可以直接根据相关技术中的公式Z=Tx*f/d确定视差图中每个视差点对应的位置点的第一地面深度。
(2)对该图像对A的左图像进行地面分割,得到该图像对A的左图像中属于地面的区域。
由于通过指定无监督学习网络得到的图像对A的视差图为针对全部拍摄区域的视差图,因此,还需从该图像对A的视差图包括的所有视差点选择属于地面的视差点。
具体地,可以通过指定语义分割网络对图像对A的左图像进行处理,得到该图像对A的左图像中属于地面的区域。
其中,指定语义分割网络是根据多个图像和在每个图像中标记的各个区域的标识训练得到。各个区域的标识也称为区域掩码。
比如,指定语义分割网络中设置地面的区域掩码为1号,电线杆的区域掩码为2号,人体的区域掩码为3号等,在指定语义分割网络对图像对A中的左图像进行处理之后,可以将该指定语义分割网络输出的各个区域中区域掩码为1号的区域确定为图像对A的左图像中属于地面的区域。
(3)根据该图像对A的左图像中属于地面的区域,从该图像对A的视差图包括的所有视差点中选择属于地面的视差点,得到该图像对A中的视差图中属于地面的多个视差点。
在得到图像对A的左图像中属于地面的区域时,由于该图像对A的视差图包括的所有视差点中的每个视差点均对应左图像中的一个像素点和右图像的一个像素点,因此对于该图像对A的视差图包括的所有视差点中任一视差点,可以判断该视差点对应的左图像的像素点是否位于左图像中属于地面的区域,若是,则将该视差点确定为该图像对A的视差图中属于地面的视差点。
在根据步骤(3)确定出图像对A的视差图中属于地面的多个视差点时,由于在步骤(1)中已经确定出所有视差点对应的位置点的第一地面深度,因此,相应地,也即得到图像对A的视差图中属于地面的多个视差点中每个视差点对应的位置点的第一地面深度。
步骤204:对该图像对A的视差图中属于地面的每个视差点对应位置点的第一地面深度进行校正,得到每个视差点对应的位置点的第二地面深度。
由于直接通过无监督学习网络得到的视差图中的视差值确定出的第一地面深度误差可能较大,因此,在本发明实施例中,还可以通过步骤204对得到的第一地面深度进行校正,以通过校正之后的第二地面深度确定该指定有监督学习网络。
具体地,步骤204可以通过以下三个步骤实现:
(1)根据该图像对A的视差图中属于地面的多个视差点中每个视差点对应的位置点的第一地面深度,确定该图像对A的左图像中属于地面的每个像素点的空间坐标,其中,每个像素点的空间坐标是根据每个像素点在该图像对A的左图像中的坐标和每个像素点匹配的视差点对应的位置点的地面深度确定。
具体地,图像对A的左图像中属于地面的某个像素点在该左图像中的坐标为(X、Y),该像素点匹配的视差点对应的位置点的第一地面深度为Z,此时,该像素点的空间坐标为(x、y,z)可以通过下述公式表示:
x=Z(X-X0)/f,y=Z(Y-Y0)/f,z=Z;
其中,f为双目摄像机的焦距,x0和y0为预先设置的数值。
(2)根据该图像对A的左图像中属于地面的每个像素点的空间坐标,确定用于描述该图像对A对应的拍摄区域包括的地面的目标平面方程。
由于任意三个不共线的点均可构成唯一的一个平面,而通过指定无监督学习网络得到的地面深度可能存在误差,这将导致确定出的本来处于同一水平面的位置点的地面深度不一致,因此,需确定一个目标平面方程,以使尽可能多的像素点的空间坐标满足目标平面方程。
其中,确定目标平面方程可以使用RANSAC(RANdom SAmple Consensus,随机抽样一致性)方式确定。
具体地,将该图像对A的左图像中属于地面的所有像素点中任意三个不共线的像素点进行组合,得到P个像素点集合,每个像素点集合包括三个像素点,P为大于1的正整数。确定每个像素点集合对应的平面的第一平面方程。之后,从该P个像素点集合对应的平面的第一平面方程中选择一个第一平面方程作为目标平面方程。
比如,图像对A的左图像中属于地面的所有像素点有100个,此时将像素点中任意三个不共线像素点进行组合,可以得到大约16万个像素点集合。
其中,确定每个像素点集合对应的平面的第一平面方程的实现方式为:对于任一像素点集合B,根据该像素点集合B包括的三个像素点的空间坐标,确定该像素点集合B对应的平面的第二平面方程;根据该像素点集合B对应的平面的第二平面方程,从该图像对A的左图像中属于地面的所有像素点中选择到该像素点集合B对应的平面的距离小于第一阈值的像素点;根据选择的像素点中每个像素点的空间坐标,对该像素点集合B对应的平面的第二平面方程进行调整,得到该像素点集合B对应的平面的第一平面方程。
比如,像素点集合B包括的三个不共线的像素点的空间坐标分别为(x1,y1,z1)、(x2,y2,z2)和(x3,y3,z3),此时假如该像素点集合B对应的平面的第二平面方程为Ax+By+Cz+D=0,则该第二平面方程中的四个参数可以分别通过如下公式得到:
A=y1z2-y1z3-y2z1+y2z3+y3z1-y3z2;
B=-x1z2+x1z3+x2z1-x2z3-x3z1+x3z2;
C=x1y2-x1y3-x2y1+x2y3+x3y1-x3y2;
D=-x1y2z3+x1y3z2+x2y1z3-x2y3z1-x3y1z2+x3y2z1。
在得到该像素点集合B对应的平面的第二平面方程之后,对于该图像对A的左图像中属于地面的所有像素点,由于每个像素点的空间坐标已知,因此可以确定每个像素点到该像素点集合B对应的平面的距离,然后从该所有像素点中选择到该像素点集合B对应的平面的距离小于第一阈值的像素点。
其中,第一阈值为预先设置的数值,该第一阈值可以为0.01米。
进一步地,根据选择的像素点中每个像素点的空间坐标,对该像素点集合B对应的平面的第二平面方程进行调整,得到该像素点集合B对应的平面的第一平面方程的实现方式为:确定该选择的像素点的个数;若该选择的像素点的个数与该图像对A的左图像中属于地面的所有像素点的个数之间的比值大于第二阈值,则根据该选择的像素点中每个像素点的空间坐标,按照最小二乘法确定该像素点集合B对应的平面的第一平面方程。
由于选择的像素点到该像素点集合B对应的平面的距离小于第一阈值,表明选择的像素点为距离该像素点集合B对应的平面较近的像素点。若进一步地,选择的像素点的个数与该图像对A的左图像中属于地面的所有像素点的个数之间的比值大于第二阈值,表明此时该图像对A的左图像中属于地面的大部分像素点都距离该像素点集合B对应的平面较近,因此,可以根据选择的像素点的空间坐标,利用最小二乘法重新确定一个平面方程,并将该重新确定的平面方程确定为该像素点集合B对应的平面的第一平面方程。
在得到该像素点集合B对应的平面的第一平面方程之后,由于最终目标平面方程需要满足使尽可能多的像素点的空间坐标满足目标平面方程,因此,还需根据该像素点集合B对应的平面的第一平面方程,确定该选择的像素点到该像素点集合B对应的平面的平均距离,得到该像素点集合B对应的平均距离。
其中,该像素点集合B对应的平均距离可以表示图像对A的左图像中属于地面的大部分像素点距离该第一平面方程所代表的平面的远近。
此时,在得到每个像素点集合对应的第一平面方程之后,可以从该P个像素点集合中选择对应的平均距离最小的像素点集合,并将选择的像素点集合对应的平面的第一平面方程确定为目标平面方程。
其中,第二阈值为预先设置的数值,该第二阈值可以为60%。
(3)根据目标平面方程对该图像对A的左图像中属于地面的每个像素点的空间坐标进行调整,以使每个像素点的空间坐标满足目标平面方程。
在得到目标平面方程之后,由于目标平面方程表明该图像对A的左图像中属于地面的大部分像素点距离目标平面方程所代表的平面较近,因此,可以将目标平面方程确定为该图像对A对应的拍摄区域包括的地面的平面方程。
因此,需对该图像对A的左图像中属于地面的每个像素点的空间坐标进行调整,以使每个像素点的空间坐标满足目标平面方程。
其中,对每个像素点的空间坐标进行调整,也即,调整每个像素点的空间坐标中的z值。比如,通过上述步骤(1)得到某个像素点的空间坐标为(x,y,z),在得到目标平面方程之后,调整该空间坐标中的z值,调整后的该像素点的空间坐标为(x’,y’,z’),此时空间坐标为(x’,y’,z’)满足目标平面方程。
其中,调整该空间坐标中的z值可以通过调整该像素点对应的视差点的视差值大小来实现的,也即,调整该像素点对应的视差点的视差值,然后通过公式Z=Tx*f/d根据调整后的视差值确定调整后的z值。
(4)根据调整后的每个像素点的空间坐标,确定每个像素点匹配的视差点对应的位置点的第二地面深度。
比如,调整后的该像素点的空间坐标为(x’,y’,z’),由于调整前该像素点的空间坐标(x,y,z)中的z为该像素点匹配的视差点对应的位置点的第一地面深度,因此,可以将z’确定为该像素点匹配的视差点对应的位置点的第二地面深度。
需要说明的是,上述步骤202和步骤204中是根据图像对A的左图像确定图像对A的视差图中属于地面的多个视差点和每个视差点对应的位置点的第二地面深度。实际应用中,也可以根据图像对A的右图像确定图像对的视差图中属于地面的多个视差点和每个视差点对应的位置点的第二地面深度,本发明实施例在此不再详细阐述。
步骤205:根据每个图像对的视差图中每个视差点对应的位置点的第二地面深度确定每个视差点对应的视差值。
由于每个视差点对应的位置点的第二地面深度是将每个视差点对应的位置点的第一地面深度进行校正得到,因此,在根据步骤202至步骤204确定出每个图像对的视差图中属于地面的多个视差点和每个视差点对应的位置点的第二地面深度时,对于任一视差图中的视差点,在已知视差点对应的位置点的第二地面深度的前提下,可以通过公式Z=Tx*f/d重新确定该视差图中的视差点的视差值。其中,Z为视差点对应的位置点的地面深度,Tx为双目摄像机的两个焦点之间的距离,f为双目摄像机的焦距,d为在拍摄视差点对应的位置点时双目摄像机的视差值。
此时,通过步骤202和步骤205确定出训练样本中每个图像对的视差图中属于地面的多个视差点和每个视差点对应的视差值。也即,确定出每个训练样本的标签,以便于通过下述步骤206根据每个训练样本的标签对初始化的有监督学习网络进行训练。
步骤206:通过该至少一个图像对、每个图像对的视差图中属于地面的多个视差点以及每个视差点对应的视差值,对初始化的有监督学习网络进行训练,得到该指定有监督学习网络。
在一种可能的实现方式中,若训练样本中只有一个图像对,则直接根据该图像对、该图像对的视差图中属于地面的多个视差点以及每个视差点对应的视差值,对初始化的有监督学习网络进行训练,得到该指定有监督学习网络。
也即,将该图像对、该图像对的视差图中属于地面的多个视差点以及每个视差点对应的视差值作为初始化的有监督学习网络的输入,以使初始化的有监督学习网络学习该图像对中的视差图中属于地面的多个视差点以及每个视差点对应的视差值的特征,学习之后的有监督学习网络即为该指定有监督学习网络。
在另一种可能的实现方式中,若训练样本中包括多个图像对,则对每个图像对设置训练顺序,然后按照训练顺序,依次通过每个图像对、每个图像对的视差图中属于地面的多个视差点以及每个视差点对应的视差值,对根据上一个图像对训练得到的有监督学习网络继续进行训练,直至处理完全部的图像对,得到该指定有监督学习网络。
在得到该指定有监督学习网络之后,后续可以通过下述步骤207和步骤209对任意图像对进行处理,以确定地面上任意位置点的地面深度。
步骤207:确定针对目标区域拍摄的目标图像对,目标图像对包括左图像和右图像,目标区域中包括地面。
当需要确定目标区域包括的地面上任一位置点的地面深度时,需先确定针对目标区域拍摄的目标图像对,也即,确定通过双目摄像机针对目标区域拍摄的左右两幅图像。
步骤208:通过指定有监督学习网络对目标图像对中的左图像和右图像进行处理,得到目标视差图中属于地面的多个视差点和每个视差点对应的视差值。
由于指定有监督学习网络是根据至少一个图像对、在每个图像对的视差图中标记的属于地面的多个视差点以及每个视差点对应的视差值训练得到,因此,当向该指定有监督学习网络输入目标图像对时,该指定有监督学习网络可以直接输出视差图中属于地面的多个视差点和每个视差点对应的视差值。
步骤209:根据该多个视差点中每个视差点对应的视差值,确定该多个视差点中每个视差点对应的位置点的地面深度。
对于该多个视差点中任一视差点,在已知该视差点对应的视差值的前提下,可以直接通过公式Z=Tx*f/d确定该视差点对应的位置点的地面深度。
在本发明实施例中,由于指定有监督学习网络是根据至少一个图像对、在每个图像对的视差图中标记的属于地面的多个视差点以及每个视差点的视差值训练得到,也即,指定有监督学习网络是根据至少一个图像对和针对每个图像对的设置的标签训练得到,其中,每个图像对的标签为对应的视差图中标记的属于地面的多个视差点以及每个视差点的视差值。因此,当通过该指定有监督学习网络处理针对目标区域拍摄的左图像和右图像时,该指定有监督学习网络实际上是根据预先从标签中学习的参数输出目标视差图中的多个属于地面的视差点以及每个视差点的视差值,避免了仅仅基于像素点的像素值进行像素点匹配而导致出现匹配不唯一的情况,从而避免由于确定的视差图有误而导致确定出的地面深度有误,提高了测量地面深度的准确性。
本发明实施例还提供了一种地面深度的测量装置,如图3所示,该装置300包括第一确定模块301、处理模块302和第二确定模块303。
第一确定模块301,用于确定针对目标区域拍摄的目标图像对,目标图像对包括左图像和右图像,目标区域中包括地面;
第一处理模块302,用于通过指定有监督学习网络对目标图像对中的左图像和右图像进行处理,得到目标视差图中属于地面的多个视差点和每个视差点的视差值;
其中,该指定有监督学习网络是根据至少一个图像对、在每个图像对视差图中标记的属于地面的多个视差点以及每个视差点对应的视差值训练得到;
第二确定模块303,用于根据该目标视差图中属于地面的多个视差点中每个视差点对应的视差值,确定该目标视差图中属于地面的多个视差点中每个视差点对应的位置点的地面深度。
可选地,如图4所示,该装置300还包括获取模块304、第二处理模块305、第三确定模块306、校正模块307、第四确定模块308和训练模块309:
获取模块304,用于获取用于训练的至少一个图像对,每个图像对包括左图像和右图像,且每个图像对对应的拍摄区域包括地面;
第二处理模块305,用于对于该至少一个图像对中任一图像对A,通过指定无监督学习网络对该图像对A中的左图像和右图像进行处理,得到该图像对A的视差图;
第三确定模块306,用于确定该图像对A的视差图中属于地面的多个视差点和每个视差点对应的位置点的第一地面深度;
校正模块307,用于对该图像对A的视差图中属于地面的每个视差点对应位置点的第一地面深度进行校正,得到每个视差点对应的位置点的第二地面深度;
第四确定模块308,用于根据每个图像对的视差图中每个视差点对应的位置点的第二地面深度确定每个视差点对应的视差值;
训练模块309,用于通过该至少一个图像对、每个图像对的视差图中属于地面的多个视差点以及每个视差点的视差值,
可选地,该第三确定模块306,具体用于:
根据该图像对A的视差图中每个视差点的视差值,确定每个视差点对应的位置处的第一地面深度;
对该图像对A的左图像进行地面分割,得到该图像对A的左图像中属于地面的区域;
根据该图像对A的左图像中属于地面的区域,从该图像对A的视差图包括的所有视差点中选择属于地面的视差点,得到该图像对A的视差图中属于地面的多个视差点。
可选地,该校正模块307包括:
第一确定单元,用于根据该图像对A的视差图中属于地面的每个视差点对应的位置点的第一地面深度,确定该图像对A的左图像中属于地面的每个像素点的空间坐标,其中,每个像素点的空间坐标是根据每个像素点在该图像对A的左图像中的坐标和每个像素点匹配的视差点对应的位置点的地面深度确定的;
第二确定单元,用于根据该图像对A的左图像中属于地面的每个像素点的空间坐标,确定用于描述该图像对A对应的拍摄区域包括的地面的目标平面方程;
调整单元,用于根据该目标平面方程对该图像对A的左图像中属于地面的每个像素点的空间坐标进行调整,以使每个像素点的空间坐标满足该目标平面方程;
第三确定单元,用于根据调整后的每个像素点的空间坐标,确定每个像素点匹配的视差点对应的位置点的第二地面深度。
可选地,该第二确定单元包括:
组合子单元,用于将该图像对A的左图像中属于地面的所有像素点中任意三个不共线的像素点进行组合,得到P个像素点集合,每个像素点集合包括三个像素点,该P为大于1的正整数;
确定子单元,用于确定每个像素点集合对应的平面的第一平面方程;
选择子单元,用于从该P个像素点集合对应的平面的第一平面方程中选择一个第一平面方程作为该目标平面方程。
可选地,该确定子单元,具体用于:
对于任一像素点集合B,根据该像素点集合B包括的三个像素点的空间坐标,确定该像素点集合B对应的平面的第二平面方程;
根据该像素点集合B对应的平面的第二平面方程,从该图像对A的左图像中属于地面的所有像素点中选择到该像素点集合B对应的平面的距离小于第一阈值的像素点;
根据选择的像素点中每个像素点的空间坐标,对该像素点集合B对应的平面的第二平面方程进行调整,得到该像素点集合B对应的平面的第一平面方程。
可选地,该确定子单元,还具体用于:
确定该选择的像素点的个数;
若该选择的像素点的个数与该图像对A的左图像中属于地面的所有像素点的个数之间的比值大于第二阈值,则根据该选择的像素点中每个像素点的空间坐标,按照最小二乘法确定该像素点集合B对应的平面的第一平面方程。
可选地,该确定子单元,还具体用于:
根据该像素点集合B对应的平面的第一平面方程,确定该选择的像素点到该像素点集合B对应的平面的平均距离,得到该像素点集合B对应的平均距离;
该选择子单元,具体用于:
从该P个像素点集合中选择对应的平均距离最小的像素点集合,并将选择的像素点集合对应的平面的第一平面方程确定为该目标平面方程。
在本发明实施例中,由于指定有监督学习网络是根据至少一个图像对、在每个图像对的视差图中标记的属于地面的多个视差点以及每个视差点的视差值训练得到,也即,指定有监督学习网络是根据至少一个图像对和针对每个图像对的设置的标签训练得到,其中,每个图像对的标签为对应的视差图中标记的属于地面的多个视差点以及每个视差点的视差值。因此,当通过该指定有监督学习网络处理针对目标区域拍摄的左图像和右图像时,该指定有监督学习网络实际上是根据预先从标签中学习的参数输出目标视差图中的多个属于地面的视差点以及每个视差点的视差值,避免了仅仅基于像素点的像素值进行像素点匹配而导致出现匹配不唯一的情况,从而避免由于确定的视差图有误而导致确定出的地面深度有误,提高了测量地面深度的准确性。
需要说明的是:上述实施例提供的地面深度的测量装置在进行地面深度的测量时,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将设备的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。另外,上述实施例提供的地面深度的测量装置与地面深度的测量方法实施例属于同一构思,其具体实现过程详见方法实施例,这里不再赘述。
本发明实施例还提供了一种地面深度的测量系统,该系统包括:图像采集装置和地面深度的测量装置。
其中,图像采集装置用于采集针对目标区域拍摄的目标图像对,并将目标图像对发送给地面深度的测量装置。比如,图像采集装置可以为摄像机等设备。
地面深度的测量装置用于对目标图像对进行处理,且该地面深度的测量装置可以为图3或图4所示的地面深度的测量装置。比如,地面深度测量装置可以为计算机等终端设备。
需要说明的是,在本发明实施例中,图像采集装置可以是与地面深度的测量装置之间相互独立的装置,当然,图像采集装置也可以集成在地面深度的测量装置中,本发明实施例在此不做具体限定。
图5示出了本发明实施例提供的终端500的结构框图。该终端500可以是:智能手机、平板电脑、MP3播放器(Moving Picture Experts Group Audio Layer III,动态影像专家压缩标准音频层面3)、MP4(Moving Picture Experts Group Audio Layer IV,动态影像专家压缩标准音频层面4)播放器、笔记本电脑或台式电脑。终端500还可能被称为用户设备、便携式终端、膝上型终端、台式终端等其他名称。
通常,终端500包括有:处理器501和存储器502。
处理器501可以包括一个或多个处理核心,比如4核心处理器、8核心处理器等。处理器501可以采用DSP(Digital Signal Processing,数字信号处理)、FPGA(Field-Programmable Gate Array,现场可编程门阵列)、PLA(Programmable Logic Array,可编程逻辑阵列)中的至少一种硬件形式来实现。处理器501也可以包括主处理器和协处理器,主处理器是用于对在唤醒状态下的数据进行处理的处理器,也称CPU(Central ProcessingUnit,中央处理器);协处理器是用于对在待机状态下的数据进行处理的低功耗处理器。在一些实施例中,处理器501可以在集成有GPU(Graphics Processing Unit,图像处理器),GPU用于负责显示屏所需要显示的内容的渲染和绘制。一些实施例中,处理器501还可以包括AI(Artificial Intelligence,人工智能)处理器,该AI处理器用于处理有关机器学习的计算操作。
存储器502可以包括一个或多个计算机可读存储介质,该计算机可读存储介质可以是非暂态的。存储器502还可包括高速随机存取存储器,以及非易失性存储器,比如一个或多个磁盘存储设备、闪存存储设备。在一些实施例中,存储器502中的非暂态的计算机可读存储介质用于存储至少一个指令,该至少一个指令用于被处理器501所执行以实现本申请中方法实施例提供的地面深度的测量方法。
在一些实施例中,终端500还可选包括有:外围设备接口503和至少一个外围设备。处理器501、存储器502和外围设备接口503之间可以通过总线或信号线相连。各个外围设备可以通过总线、信号线或电路板与外围设备接口503相连。具体地,外围设备包括:射频电路504、触摸显示屏505、摄像头506、音频电路507、定位组件508和电源509中的至少一种。
外围设备接口503可被用于将I/O(Input/Output,输入/输出)相关的至少一个外围设备连接到处理器501和存储器502。在一些实施例中,处理器501、存储器502和外围设备接口503被集成在同一芯片或电路板上;在一些其他实施例中,处理器501、存储器502和外围设备接口503中的任意一个或两个可以在单独的芯片或电路板上实现,本实施例对此不加以限定。
射频电路504用于接收和发射RF(Radio Frequency,射频)信号,也称电磁信号。射频电路504通过电磁信号与通信网络以及其他通信设备进行通信。射频电路504将电信号转换为电磁信号进行发送,或者,将接收到的电磁信号转换为电信号。可选地,射频电路504包括:天线系统、RF收发器、一个或多个放大器、调谐器、振荡器、数字信号处理器、编解码芯片组、用户身份模块卡等等。射频电路504可以通过至少一种无线通信协议来与其它终端进行通信。该无线通信协议包括但不限于:城域网、各代移动通信网络(2G、3G、4G及5G)、无线局域网和/或WiFi(Wireless Fidelity,无线保真)网络。在一些实施例中,射频电路504还可以包括NFC(Near Field Communication,近距离无线通信)有关的电路,本申请对此不加以限定。
显示屏505用于显示UI(User Interface,用户界面)。该UI可以包括图形、文本、图标、视频及其它们的任意组合。当显示屏505是触摸显示屏时,显示屏505还具有采集在显示屏505的表面或表面上方的触摸信号的能力。该触摸信号可以作为控制信号输入至处理器501进行处理。此时,显示屏505还可以用于提供虚拟按钮和/或虚拟键盘,也称软按钮和/或软键盘。在一些实施例中,显示屏505可以为一个,设置终端500的前面板;在另一些实施例中,显示屏505可以为至少两个,分别设置在终端500的不同表面或呈折叠设计;在再一些实施例中,显示屏505可以是柔性显示屏,设置在终端500的弯曲表面上或折叠面上。甚至,显示屏505还可以设置成非矩形的不规则图形,也即异形屏。显示屏505可以采用LCD(LiquidCrystal Display,液晶显示屏)、OLED(Organic Light-Emitting Diode,有机发光二极管)等材质制备。
摄像头组件506用于采集图像或视频。可选地,摄像头组件506包括前置摄像头和后置摄像头。通常,前置摄像头设置在终端的前面板,后置摄像头设置在终端的背面。在一些实施例中,后置摄像头为至少两个,分别为主摄像头、景深摄像头、广角摄像头、长焦摄像头中的任意一种,以实现主摄像头和景深摄像头融合实现背景虚化功能、主摄像头和广角摄像头融合实现全景拍摄以及VR(Virtual Reality,虚拟现实)拍摄功能或者其它融合拍摄功能。在一些实施例中,摄像头组件506还可以包括闪光灯。闪光灯可以是单色温闪光灯,也可以是双色温闪光灯。双色温闪光灯是指暖光闪光灯和冷光闪光灯的组合,可以用于不同色温下的光线补偿。
音频电路507可以包括麦克风和扬声器。麦克风用于采集用户及环境的声波,并将声波转换为电信号输入至处理器501进行处理,或者输入至射频电路504以实现语音通信。出于立体声采集或降噪的目的,麦克风可以为多个,分别设置在终端500的不同部位。麦克风还可以是阵列麦克风或全向采集型麦克风。扬声器则用于将来自处理器501或射频电路504的电信号转换为声波。扬声器可以是传统的薄膜扬声器,也可以是压电陶瓷扬声器。当扬声器是压电陶瓷扬声器时,不仅可以将电信号转换为人类可听见的声波,也可以将电信号转换为人类听不见的声波以进行测距等用途。在一些实施例中,音频电路507还可以包括耳机插孔。
定位组件508用于定位终端500的当前地理位置,以实现导航或LBS(LocationBased Service,基于位置的服务)。定位组件508可以是基于美国的GPS(GlobalPositioning System,全球定位系统)、中国的北斗系统、俄罗斯的格雷纳斯系统或欧盟的伽利略系统的定位组件。
电源509用于为终端500中的各个组件进行供电。电源509可以是交流电、直流电、一次性电池或可充电电池。当电源509包括可充电电池时,该可充电电池可以支持有线充电或无线充电。该可充电电池还可以用于支持快充技术。
在一些实施例中,终端500还包括有一个或多个传感器510。该一个或多个传感器510包括但不限于:加速度传感器511、陀螺仪传感器512、压力传感器513、指纹传感器514、光学传感器515以及接近传感器516。
加速度传感器511可以检测以终端500建立的坐标系的三个坐标轴上的加速度大小。比如,加速度传感器511可以用于检测重力加速度在三个坐标轴上的分量。处理器501可以根据加速度传感器511采集的重力加速度信号,控制触摸显示屏505以横向视图或纵向视图进行用户界面的显示。加速度传感器511还可以用于游戏或者用户的运动数据的采集。
陀螺仪传感器512可以检测终端500的机体方向及转动角度,陀螺仪传感器512可以与加速度传感器511协同采集用户对终端500的3D动作。处理器501根据陀螺仪传感器512采集的数据,可以实现如下功能:动作感应(比如根据用户的倾斜操作来改变UI)、拍摄时的图像稳定、游戏控制以及惯性导航。
压力传感器513可以设置在终端500的侧边框和/或触摸显示屏505的下层。当压力传感器513设置在终端500的侧边框时,可以检测用户对终端500的握持信号,由处理器501根据压力传感器513采集的握持信号进行左右手识别或快捷操作。当压力传感器513设置在触摸显示屏505的下层时,由处理器501根据用户对触摸显示屏505的压力操作,实现对UI界面上的可操作性控件进行控制。可操作性控件包括按钮控件、滚动条控件、图标控件、菜单控件中的至少一种。
指纹传感器514用于采集用户的指纹,由处理器501根据指纹传感器514采集到的指纹识别用户的身份,或者,由指纹传感器514根据采集到的指纹识别用户的身份。在识别出用户的身份为可信身份时,由处理器501授权该用户执行相关的敏感操作,该敏感操作包括解锁屏幕、查看加密信息、下载软件、支付及更改设置等。指纹传感器514可以被设置终端500的正面、背面或侧面。当终端500上设置有物理按键或厂商Logo时,指纹传感器514可以与物理按键或厂商Logo集成在一起。
光学传感器515用于采集环境光强度。在一个实施例中,处理器501可以根据光学传感器515采集的环境光强度,控制触摸显示屏505的显示亮度。具体地,当环境光强度较高时,调高触摸显示屏505的显示亮度;当环境光强度较低时,调低触摸显示屏505的显示亮度。在另一个实施例中,处理器501还可以根据光学传感器515采集的环境光强度,动态调整摄像头组件506的拍摄参数。
接近传感器516,也称距离传感器,通常设置在终端500的前面板。接近传感器516用于采集用户与终端500的正面之间的距离。在一个实施例中,当接近传感器516检测到用户与终端500的正面之间的距离逐渐变小时,由处理器501控制触摸显示屏505从亮屏状态切换为息屏状态;当接近传感器516检测到用户与终端500的正面之间的距离逐渐变大时,由处理器501控制触摸显示屏505从息屏状态切换为亮屏状态。
本领域技术人员可以理解,图5中示出的结构并不构成对终端500的限定,可以包括比图示更多或更少的组件,或者组合某些组件,或者采用不同的组件布置。
本发明实施例还提供了一种非临时性计算机可读存储介质,当所述存储介质中的指令由终端的处理器执行时,使得终端能够执行上述实施例提供的地面深度的测量方法。
本发明实施例还提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述实施例提供的地面深度的测量方法。
本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (17)
1.一种地面深度的测量方法,其特征在于,所述方法包括:
确定针对目标区域拍摄的目标图像对,所述目标图像对包括左图像和右图像,所述目标区域中包括地面;
通过指定有监督学习网络对所述目标图像对中的左图像和右图像进行处理,得到目标视差图中属于地面的多个视差点和每个视差点的视差值;
其中,所述指定有监督学习网络是根据至少一个图像对、在每个图像对的视差图中标记的属于地面的多个视差点以及每个视差点的视差值训练得到;
根据所述目标视差图中属于地面的多个视差点中每个视差点的视差值,确定所述目标视差图中属于地面的多个视差点中每个视差点对应的位置点的地面深度。
2.如权利要求1所述的方法,其特征在于,所述通过指定有监督学习网络对所述目标图像对中的左图像和右图像进行处理之前,还包括:
获取用于训练的至少一个图像对,每个图像对包括左图像和右图像,且每个图像对对应的拍摄区域包括地面;
对于所述至少一个图像对中任一图像对A,通过指定无监督学习网络对所述图像对A中的左图像和右图像进行处理,得到所述图像对A的视差图;
确定所述图像对A的视差图中属于地面的多个视差点和每个视差点对应的位置点的第一地面深度;
对所述图像对A的视差图中属于地面的每个视差点对应位置点的第一地面深度进行校正,得到每个视差点对应的位置点的第二地面深度;
根据每个图像对的视差图中每个视差点对应的位置点的第二地面深度确定每个视差点的视差值;
通过所述至少一个图像对、每个图像对的视差图中属于地面的多个视差点以及每个视差点的视差值,对初始化的有监督学习网络进行训练,得到所述指定有监督学习网络。
3.如权利要求2所述的方法,其特征在于,所述确定所述图像对A的视差图中属于地面的多个视差点和每个视差点对应的位置点的第一地面深度,包括:
根据所述图像对A的视差图中每个视差点的视差值,确定每个视差点对应的位置点的第一地面深度;
对所述图像对A的左图像进行地面分割,得到所述图像对A的左图像中属于地面的区域;
根据所述图像对A的左图像中属于地面的区域,从所述图像对A的视差图包括的所有视差点中选择属于地面的视差点,得到所述图像对A的视差图中属于地面的多个视差点。
4.如权利要求2所述的方法,其特征在于,所述对所述图像对A的视差图中属于地面的每个视差点对应的位置点的第一地面深度进行校正,得到每个视差点对应的位置点的第二地面深度,包括:
根据所述图像对A的视差图中属于地面的每个视差点对应的位置点的第一地面深度,确定所述图像对A的左图像中属于地面的每个像素点的空间坐标,其中,每个像素点的空间坐标是根据每个像素点在所述图像对A的左图像中的坐标和每个像素点匹配的视差点对应的位置点的地面深度确定的;
根据所述图像对A的左图像中属于地面的每个像素点的空间坐标,确定用于描述所述图像对A对应的拍摄区域包括的地面的目标平面方程;
根据所述目标平面方程对所述图像对A的左图像中属于地面的每个像素点的空间坐标进行调整,以使每个像素点的空间坐标满足所述目标平面方程;
根据调整后的每个像素点的空间坐标,确定每个像素点匹配的视差点对应的位置点的第二地面深度。
5.如权利要求4所述的方法,其特征在于,所述根据所述图像对A的左图像中属于地面的每个像素点的空间坐标,确定用于描述所述图像对A对应的拍摄区域包括的地面的目标平面方程,包括:
将所述图像对A的左图像中属于地面的所有像素点中任意三个不共线的像素点进行组合,得到P个像素点集合,每个像素点集合包括三个像素点,所述P为大于1的正整数;
确定每个像素点集合对应的平面的第一平面方程;
从所述P个像素点集合对应的平面的第一平面方程中选择一个第一平面方程作为所述目标平面方程。
6.如权利要求5所述的方法,其特征在于,所述确定每个像素点集合对应的平面的第二平面方程,包括:
对于任一像素点集合B,根据所述像素点集合B包括的三个像素点的空间坐标,确定所述像素点集合B对应的平面的第二平面方程;
根据所述像素点集合B对应的平面的第二平面方程,从所述图像对A的左图像中属于地面的所有像素点中选择到所述像素点集合B对应的平面的距离小于第一阈值的像素点;
根据选择的像素点中每个像素点的空间坐标,对所述像素点集合B对应的平面的第二平面方程进行调整,得到所述像素点集合B对应的平面的第一平面方程。
7.如权利要求6所述的方法,其特征在于,所述根据选择的像素点中每个像素点的空间坐标,对所述像素点集合B对应的平面的第二平面方程进行调整,得到所述像素点集合B对应的平面的第一平面方程,包括:
确定所述选择的像素点的个数;
若所述选择的像素点的个数与所述图像对A的左图像中属于地面的所有像素点的个数之间的比值大于第二阈值,则根据所述选择的像素点中每个像素点的空间坐标,按照最小二乘法确定所述像素点集合B对应的平面的第一平面方程。
8.如权利要求6所述的方法,其特征在于,所述根据选择的像素点中每个像素点的空间坐标,对所述像素点集合B对应的平面的第二平面方程进行调整,得到所述像素点集合B对应的平面的第一平面方程之后,还包括:
根据所述像素点集合B对应的平面的第一平面方程,确定所述选择的像素点到所述像素点集合B对应的平面的平均距离,得到所述像素点集合B对应的平均距离;
所述从所述P个像素点集合对应的平面的第一平面方程中选择一个第一平面方程作为所述目标平面方程,包括:
从所述P个像素点集合中选择对应的平均距离最小的像素点集合,并将选择的像素点集合对应的平面的第一平面方程确定为所述目标平面方程。
9.一种地面深度的测量装置,其特征在于,所述装置包括:
第一确定模块,用于确定针对目标区域拍摄的目标图像对,所述目标图像对包括左图像和右图像,所述目标区域中包括地面;
第一处理模块,用于通过指定有监督学习网络对所述目标图像对中的左图像和右图像进行处理,得到目标视差图中属于地面的多个视差点和每个视差点的视差值;
其中,所述指定有监督学习网络是根据至少一个图像对、在每个图像对的视差图中标记的属于地面的多个视差点以及每个视差点的视差值训练得到;
第二确定模块,用于根据所述目标视差图中属于地面的多个视差点中每个视差点的视差值,确定所述目标视差图中属于地面的多个视差点中每个视差点对应的位置点的地面深度。
10.如权利要求9所述的装置,其特征在于,所述装置还包括:
获取模块,用于获取用于训练的至少一个图像对,每个图像对包括左图像和右图像,且每个图像对对应的拍摄区域包括地面;
第二处理模块,用于对于所述至少一个图像对中任一图像对A,通过指定无监督学习网络对所述图像对A中的左图像和右图像进行处理,得到所述图像对A的视差图;
第三确定模块,用于确定所述图像对A的视差图中属于地面的多个视差点和每个视差点对应的位置点的第一地面深度;
校正模块,用于对所述图像对A的视差图中属于地面的每个视差点对应位置点的第一地面深度进行校正,得到每个视差点对应的位置点的第二地面深度;
第四确定模块,用于根据每个图像对的视差图中每个视差点对应的位置点的第二地面深度确定每个视差点对应的视差值;
训练模块,用于通过所述至少一个图像对、每个图像对的视差图中属于地面的多个视差点以及每个视差点的视差值,对初始化的有监督学习网络进行训练,得到所述指定有监督学习网络。
11.如权利要求10所述的装置,其特征在于,所述第三确定模块,具体用于:
根据所述图像对A的视差图中每个视差点的视差值,确定每个视差点对应的位置处的第一地面深度;
对所述图像对A的左图像进行地面分割,得到所述图像对A的左图像中属于地面的区域;
根据所述图像对A的左图像中属于地面的区域,从所述图像对A的视差图包括的所有视差点中选择属于地面的视差点,得到所述图像对A的视差图中属于地面的多个视差点。
12.如权利要求10所述的装置,其特征在于,所述校正模块包括:
第一确定单元,用于根据所述图像对A的视差图中属于地面的每个视差点对应的位置点的第一地面深度,确定所述图像对A的左图像中属于地面的每个像素点的空间坐标,其中,每个像素点的空间坐标是根据每个像素点在所述图像对A的左图像中的坐标和每个像素点匹配的视差点对应的位置点的地面深度确定的;
第二确定单元,用于根据所述图像对A的左图像中属于地面的每个像素点的空间坐标,确定用于描述所述图像对A对应的拍摄区域包括的地面的目标平面方程;
调整单元,用于根据所述目标平面方程对所述图像对A的左图像中属于地面的每个像素点的空间坐标进行调整,以使每个像素点的空间坐标满足所述目标平面方程;
第三确定单元,用于根据调整后的每个像素点的空间坐标,确定每个像素点匹配的视差点对应的位置点的第二地面深度。
13.如权利要求12所述的装置,其特征在于,所述第二确定单元包括:
组合子单元,用于将所述图像对A的左图像中属于地面的所有像素点中任意三个不共线的像素点进行组合,得到P个像素点集合,每个像素点集合包括三个像素点,所述P为大于1的正整数;
确定子单元,用于确定每个像素点集合对应的平面的第一平面方程;
选择子单元,用于从所述P个像素点集合对应的平面的第一平面方程中选择一个第一平面方程作为所述目标平面方程。
14.如权利要求13所述的装置,其特征在于,所述确定子单元,具体用于:
对于任一像素点集合B,根据所述像素点集合B包括的三个像素点的空间坐标,确定所述像素点集合B对应的平面的第二平面方程;
根据所述像素点集合B对应的平面的第二平面方程,从所述图像对A的左图像中属于地面的所有像素点中选择到所述像素点集合B对应的平面的距离小于第一阈值的像素点;
根据选择的像素点中每个像素点的空间坐标,对所述像素点集合B对应的平面的第二平面方程进行调整,得到所述像素点集合B对应的平面的第一平面方程。
15.如权利要求14所述的装置,其特征在于,所述确定子单元,还具体用于:
确定所述选择的像素点的个数;
若所述选择的像素点的个数与所述图像对A的左图像中属于地面的所有像素点的个数之间的比值大于第二阈值,则根据所述选择的像素点中每个像素点的空间坐标,按照最小二乘法确定所述像素点集合B对应的平面的第一平面方程。
16.如权利要求14所述的装置,其特征在于,所述确定子单元,还具体用于:
根据所述像素点集合B对应的平面的第一平面方程,确定所述选择的像素点到所述像素点集合B对应的平面的平均距离,得到所述像素点集合B对应的平均距离;
所述选择子单元,具体用于:
从所述P个像素点集合中选择对应的平均距离最小的像素点集合,并将选择的像素点集合对应的平面的第一平面方程确定为所述目标平面方程。
17.一种地面深度的测量系统,其特征在于,所述系统包括:
图像采集装置和地面深度的测量装置;
所述图像采集装置用于采集针对目标区域拍摄的目标图像对,并将所述目标图像对发送给所述地面深度的测量装置,所述地面深度的测量装置用于对所述目标图像对进行处理,所述地面深度的测量装置为权利要求9至16任一所述的地面深度的测量装置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810410773.5A CN110443841B (zh) | 2018-05-02 | 2018-05-02 | 地面深度的测量方法、装置及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810410773.5A CN110443841B (zh) | 2018-05-02 | 2018-05-02 | 地面深度的测量方法、装置及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110443841A true CN110443841A (zh) | 2019-11-12 |
CN110443841B CN110443841B (zh) | 2022-08-05 |
Family
ID=68427619
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810410773.5A Active CN110443841B (zh) | 2018-05-02 | 2018-05-02 | 地面深度的测量方法、装置及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110443841B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111127539A (zh) * | 2019-12-17 | 2020-05-08 | 苏州智加科技有限公司 | 视差确定方法、装置、计算机设备及存储介质 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106600583A (zh) * | 2016-12-07 | 2017-04-26 | 西安电子科技大学 | 基于端到端神经网络的视差图获取方法 |
CN107506711A (zh) * | 2017-08-15 | 2017-12-22 | 江苏科技大学 | 基于卷积神经网络的双目视觉障碍物检测系统及方法 |
-
2018
- 2018-05-02 CN CN201810410773.5A patent/CN110443841B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106600583A (zh) * | 2016-12-07 | 2017-04-26 | 西安电子科技大学 | 基于端到端神经网络的视差图获取方法 |
CN107506711A (zh) * | 2017-08-15 | 2017-12-22 | 江苏科技大学 | 基于卷积神经网络的双目视觉障碍物检测系统及方法 |
Non-Patent Citations (2)
Title |
---|
RAVI GARG等: "Unsupervised CNN for Single View Depth Estimation: Geometry to the Rescue", 《ARXIV:1603.04992V2[CS.CV]》 * |
朱俊鹏等: "基于卷积神经网络的视差图生成技术", 《计算机应用》 * |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111127539A (zh) * | 2019-12-17 | 2020-05-08 | 苏州智加科技有限公司 | 视差确定方法、装置、计算机设备及存储介质 |
CN111127539B (zh) * | 2019-12-17 | 2022-11-15 | 苏州智加科技有限公司 | 视差确定方法、装置、计算机设备及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN110443841B (zh) | 2022-08-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11205282B2 (en) | Relocalization method and apparatus in camera pose tracking process and storage medium | |
CN109685876B (zh) | 毛发渲染方法、装置、电子设备及存储介质 | |
US11517099B2 (en) | Method for processing images, electronic device, and storage medium | |
CN109308727B (zh) | 虚拟形象模型生成方法、装置及存储介质 | |
CN109829456A (zh) | 图像识别方法、装置及终端 | |
CN110141857A (zh) | 虚拟角色的面部显示方法、装置、设备及存储介质 | |
CN109712224A (zh) | 虚拟场景的渲染方法、装置及智能设备 | |
CN109522863B (zh) | 耳部关键点检测方法、装置及存储介质 | |
CN110148178A (zh) | 相机定位方法、装置、终端及存储介质 | |
CN109558837A (zh) | 人脸关键点检测方法、装置及存储介质 | |
CN113763228B (zh) | 图像处理方法、装置、电子设备及存储介质 | |
CN109886208B (zh) | 物体检测的方法、装置、计算机设备及存储介质 | |
CN109285178A (zh) | 图像分割方法、装置及存储介质 | |
CN109977775A (zh) | 关键点检测方法、装置、设备及可读存储介质 | |
CN109978996B (zh) | 生成表情三维模型的方法、装置、终端及存储介质 | |
CN109302632A (zh) | 获取直播视频画面的方法、装置、终端及存储介质 | |
CN109862412A (zh) | 合拍视频的方法、装置及存储介质 | |
CN109583370A (zh) | 人脸结构网格模型建立方法、装置、电子设备及存储介质 | |
CN110070143A (zh) | 获取训练数据的方法、装置、设备及存储介质 | |
CN108844529A (zh) | 确定姿态的方法、装置及智能设备 | |
CN111598896A (zh) | 图像检测方法、装置、设备及存储介质 | |
CN110175653A (zh) | 图像识别的方法、装置、设备及存储介质 | |
CN110349527A (zh) | 虚拟现实显示方法、装置及系统、存储介质 | |
CN110147796A (zh) | 图像匹配方法及装置 | |
CN112967261B (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 |