掌桥专利:专业的专利平台
掌桥专利
首页

立体深度识别方法及装置、控制设备和可读存储介质

文献发布时间:2023-06-19 16:09:34



技术领域

本申请涉及计算机视觉技术领域,具体而言,涉及一种立体深度识别方法及装置、控制设备和可读存储介质。

背景技术

随着科学技术的不断发展,计算机视觉技术在因具有极大的研究价值及应用价值受到了各行各业的广泛重视,其中机器人移动避障功能便是计算机视觉技术的一个重要应用方向,往往需要利用计算机视觉技术对机器人所拍摄到的双目场景视图进行处理,才能确定出被拍摄场景与机器人之间的真实立体深度状况,便于机器人避开障碍物进行移动。

值得注意的是,不同款式的机器人各自的左眼相机与右眼相机之间的相机基线距离往往会有所不同,并且不同款式的机器人的尺寸(例如,机器人高度和/或机器人宽度)也不完全一致,使不同款式的机器人针对相同场景采集到的双目场景视图存在明显差异,同时不同款式的机器人各自擅长的避障场景也不完全一致,必定导致不同款式机器人各自匹配的立体深度识别方案的方案通用性不强,无法很好地兼容到不同款式/场景的机器人上进行使用。

发明内容

有鉴于此,本申请的目的在于提供一种立体深度识别方法及装置、控制设备和可读存储介质,能够有效兼容到不同款式/场景的机器人处实现高精度且高效率的立体深度识别效果。

为了实现上述目的,本申请实施例采用的技术方案如下:

第一方面,本申请提供一种立体深度识别方法,所述方法包括:

获取目标机器人针对待测场景拍摄到的左眼场景图及右眼场景图;

确定所述右眼场景图相对于所述左眼场景图的初始视差图;

对所述初始视差图中各视差值进行视差范围分类,得到对应的视差范围分布结果;

根据预设的期望正态分布对所述初始视差图的视差范围分布结果进行更新,得到对应的视差分布优化结果;

根据所述视差分布优化结果调用预存的视差回归模型,对所述初始视差图进行视差回归处理,得到与所述待测场景匹配的目标场景视差图;

根据所述目标机器人的相机焦距及相机基线距离,对所述目标场景视差图进行视差深度转换处理,得到所述目标机器人与所述待测场景之间的立体深度分布图。

在可选的实施方式中,所述确定所述右眼场景图相对于所述左眼场景图的初始视差图的步骤,包括:

对所述右眼场景图与所述左眼场景图分别进行特征提取,得到对应的右眼场景特征图和左眼场景特征图;

将所述左眼场景特征图与所述右眼场景特征图进行像素特征匹配,得到所述左眼场景特征图中每个像素点与所述右眼场景特征图中特征匹配的像素点之间的视差值;

对所述左眼场景特征图中所有像素点各自对应的视差值进行图像聚合,得到所述初始视差图。

在可选的实施方式中,所述对所述初始视差图中各视差值进行视差范围分类,得到对应的视差范围分布结果的步骤,包括:

根据所述初始视差图中的最大视差值以及预设的视差范围规划步长,确定所述初始视差图所对应的视差范围规格;

按照所述视差范围规格调用交叉熵损失函数对所述初始视差图中所有视差值各自所属的视差范围进行识别;

根据所述初始视差图所对应的不同视差范围各自的出现频次,对视差范围在所述初始视差图处的分布概率曲线进行拟合,得到所述视差范围分布结果。

在可选的实施方式中,所述根据预设的期望正态分布对所述初始视差图的视差范围分布结果进行更新,得到对应的视差分布优化结果的步骤,包括:

判断所述视差范围分布结果所对应的正态分布曲线的标准差值是否大于预设标准差阈值;

若判定所述标准差值大于所述预设标准差阈值,则计算所述期望正态分布与所述正态分布曲线之间的数学期望差异及标准差倍数,并根据所述数学期望差异及所述标准差倍数对所述视差范围分布结果所对应的正态分布曲线进行曲线偏移,得到所述视差分布优化结果;

若判定所述标准差值小于或等于所述预设标准差阈值,则直接将所述视差范围分布结果作为所述视差分布优化结果。

在可选的实施方式中,所述根据所述视差分布优化结果调用预存的视差回归模型,对所述初始视差图进行视差回归处理,得到与所述待测场景匹配的目标场景视差图的步骤,包括:

在所述初始视差图的基础上,调用所述视差回归模型预估目标场景视差图中每个像素点的满足所述视差分布优化结果的所有可能视差值及所有可能视差值各自的出现概率;

针对所述目标场景视差图中的每个像素点,对该像素点所对应的所有可能视差值及所述所有可能视差值各自的出现概率进行加权求和运算,得到所述目标场景视差图在该像素点处的目标场景视差值。

在可选的实施方式中,所述根据所述目标机器人的相机焦距及相机基线距离,对所述目标场景视差图进行视差深度转换处理,得到所述目标机器人与所述待测场景之间的立体深度分布图的步骤,包括:

针对所述目标场景视差图中每个像素点,将所述相机焦距、所述相机基线距离及该像素点所对应的目标场景视差值代入到预存的视差深度关联关系中,计算得到该像素点在所述立体深度分布图处对应的目标场景深度值;

对所述目标场景视差图中所有像素点各自对应的目标场景深度值进行图像聚合,得到所述立体深度分布图。

在可选的实施方式中,所述视差深度关联关系采用如下式子进行表达:

其中,D用于表示被拍对象在所述目标机器人的处于同一基线的左眼相机和右眼相机之间的视差值,b用于表示所述目标机器人的左眼相机和右眼相机之间的相机基线距离,f用于表示所述目标机器人的相机焦距,Z用于表示所述被拍对象与所述目标机器人之间的立体深度值。

第二方面,本申请提供一种立体深度识别装置,所述装置包括:

场景视图获取模块,用于获取目标机器人针对待测场景拍摄到的左眼场景图及右眼场景图;

初始视差确定模块,用于确定所述右眼场景图相对于所述左眼场景图的初始视差图;

视差分布分类模块,用于对所述初始视差图中各视差值进行视差范围分类,得到对应的视差范围分布结果;

视差分布优化模块,用于根据预设的期望正态分布对所述初始视差图的视差范围分布结果进行更新,得到对应的视差分布优化结果;

场景视差回归模块,用于根据所述视差分布优化结果调用预存的视差回归模型,对所述初始视差图进行视差回归处理,得到与所述待测场景匹配的目标场景视差图;

立体深度计算模块,用于根据所述目标机器人的相机焦距及相机基线距离,对所述目标场景视差图进行视差深度转换处理,得到所述目标机器人与所述待测场景之间的立体深度分布图。

第三方面,本申请提供一种控制设备,包括处理器和存储器,所述存储器存储有能够被所述处理器执行的计算机程序,所述处理器可执行所述计算机程序,实现前述实施方式中任意一项所述的立体深度识别方法。

第四方面,本申请提供一种可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时,实现前述实施方式中任意一项所述的立体深度识别方法。

在此情况下,本申请实施例的有益效果包括以下内容:

本申请在确定出目标机器人针对待测场景拍摄到的左眼场景图及右眼场景图之间的初始视差图后,可通过对初始视差图中各视差值进行视差范围分类,得到视差范围分布结果,并根据预设的期望正态分布对视差范围分布结果进行更新,得到视差分布优化结果,而后根据该视差分布优化结果调用预存的视差回归模型,对初始视差图进行视差回归处理,得到与待测场景匹配的目标场景视差图,接着根据目标机器人的相机焦距及相机基线距离,对目标场景视差图进行视差深度转换处理,得到目标机器人与待测场景之间的立体深度分布图,从而通过视差范围分布更新操作将不同状况的待识别图像数据迁移到同一期望数据域内进行立体深度识别,降低整个深度识别方案的数据计算量,提高该深度识别方案的普适性及识别精度,以确保本申请提供的立体深度识别方案能够有效兼容到不同款式/场景的机器人处实现高精度且高效率的立体深度识别效果。

为使本申请的上述目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附附图,作详细说明如下。

附图说明

为了更清楚地说明本申请实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本申请的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。

图1为本申请实施例提供的控制设备的组成示意图;

图2为本申请实施例提供的立体深度识别方法的流程示意图;

图3为图2中的步骤S220包括的子步骤的流程示意图;

图4为图2中的步骤S230包括的子步骤的流程示意图;

图5为图2中的步骤S240包括的子步骤的流程示意图;

图6为图2中的步骤S250包括的子步骤的流程示意图;

图7为图2中的步骤S260包括的子步骤的流程示意图;

图8为本申请实施例提供的视差深度关联关系的效果展示图;

图9为本申请实施例提供的立体深度识别装置的组成示意图。

图标:10-控制设备;11-存储器;12-处理器;13-通信单元;100-立体深度识别装置;110-场景视图获取模块;120-初始视差确定模块;130-视差分布分类模块;140-视差分布优化模块;150-场景视差回归模块;160-立体深度计算模块。

具体实施方式

为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本申请实施例的组件可以以各种不同的配置来布置和设计。

因此,以下对在附图中提供的本申请的实施例的详细描述并非旨在限制要求保护的本申请的范围,而是仅仅表示本申请的选定实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。

应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。

在本申请的描述中,需要理解的是,术语“第一”和“第二”等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。对于本领域的普通技术人员而言,可以具体情况理解上述术语在本申请中的具体含义。

申请人通过辛苦调研发现,现有立体深度识别方案需要在常规卷积神经网络模型的基础上结合对应机器人的双眼相机配置(包括左眼相机及右眼相机各自的位置分布,和左眼相机与右眼相机之间的基线距离)以及该机器人在特定训练场景下拍摄出的双目场景视图进行模型训练,以通过训练出的立体深度识别模型实现特定双眼相机配置的机器人对特定场景的立体深度识别功能。但值得注意的是,构建出的立体深度识别模型在应用到其他双眼相机配置和/或其他场景下使用时,往往会因与模型训练数据属性(例如,立体深度识别模型所对应的相机基线距离及训练场景)不匹配,导致识别出的立体深度数据的准确度不高,同时也会因卷积神经网络模型的模型特性,导致训练出的立体深度识别模型存在计算复杂度高的特点,必定会消耗大量计算量才能实现对应功能,整体的识别效率较差。

在此情况下,为提供一种能够有效兼容到不同款式/场景的机器人处实现高精度且高效率的立体深度识别功能的立体深度识别方案,确保深度识别方案的普适性,本申请实施例通过提供一种立体深度识别方法及装置、控制设备和可读存储介质实现前述功能。

下面结合附图,对本申请的一些实施方式作详细说明。在不冲突的情况下,下述的实施例及实施例中的特征可以相互结合。

请参照图1,图1是本申请实施例提供的控制设备10的组成示意图。在本实施例中,所述控制设备10可以与至少一个机器人通信连接,并控制所述至少一个机器人分别移动到某个或某几个场景下进行图像采集,以便于所述控制设备10针对每个机器人根据对应采集到的双目场景视图确定对应机器人距离所在场景中各障碍物的立体深度信息,并根据确定出的立体深度信息控制对应机器人进行避障运动。其中,不同机器人各自的双眼相机配置状况可以相同,也可以不相同,例如不同机器人各自的相机基线距离并不相同或部分相同;不同机器人所在场景可以相同,也可以不相同。在此过程中,所述控制设备10能够针对不同款式/场景的机器人提供普适性强的通用型立体深度识别方案,并通过该立体深度识别方案达到高精度且高效率的立体深度识别效果。

此外,所述控制设备10也可以单独部署在单个机器人上,使其能够在该机器人更换双眼相机配置和/或更换所在场景时,针对该机器人提供普适性强的通用型立体深度识别方案,以长期维持高精度且高效率的立体深度识别效果。

在本实施例中,所述控制设备10可以包括存储器11、处理器12、通信单元13及立体深度识别装置100。其中,所述存储器11、所述处理器12及所述通信单元13各个元件相互之间直接或间接地电性连接,以实现数据的传输或交互。例如,所述存储器11、所述处理器12及所述通信单元13这些元件相互之间可通过一条或多条通讯总线或信号线实现电性连接。

在本实施例中,所述存储器11可以是,但不限于,随机存取存储器(Random AccessMemory,RAM),只读存储器(Read Only Memory,ROM),可编程只读存储器(ProgrammableRead-Only Memory,PROM),可擦除只读存储器(Erasable Programmable Read-OnlyMemory,EPROM),电可擦除只读存储器(Electric Erasable Programmable Read-OnlyMemory,EEPROM)等。其中,所述存储器11用于存储计算机程序,所述处理器12在接收到执行指令后,可相应地执行所述计算机程序。

在本实施例中,所述处理器12可以是一种具有信号的处理能力的集成电路芯片。所述处理器12可以是通用处理器,包括中央处理器(Central Processing Unit,CPU)、图形处理器(Graphics Processing Unit,GPU)及网络处理器(Network Processor,NP)、数字信号处理器(DSP)、专用集成电路(ASIC)、现成可编程门阵列(FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件中的至少一种。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等,可以实现或者执行本申请实施例中的公开的各方法、步骤及逻辑框图。

在本实施例中,所述通信单元13用于通过网络建立所述控制设备10与各机器人之间的通信连接,并通过所述网络收发数据,其中所述网络包括有线通信网络及无线通信网络。例如,所述控制设备10可以通过所述通信单元13从控制各机器人执行图像采集操作,并控制各机器人执行移动操作。

在本实施例中,所述立体深度识别装置100包括至少一个能够以软件或固件的形式存储于所述存储器11中或固化在所述控制设备10的操作系统中的软件功能模块。所述处理器12可用于执行所述存储器11存储的可执行模块,例如所述立体深度识别装置100所包括的软件功能模块及计算机程序等。所述控制设备10通过所述立体深度识别装置100有效兼容到不同款式/场景的机器人处实现高精度且高效率的立体深度识别效果,确保深度识别精准度。

可以理解的是,图1所示的框图仅为所述控制设备10的一种组成示意图,所述控制设备10还可包括比图1中所示更多或者更少的组件,或者具有与图1所示不同的配置。图1中所示的各组件可以采用硬件、软件或其组合实现。

在本申请中,为确保所述控制设备10能够提供一种可兼容到不同款式/场景的机器人处实现高精度且高效率的立体深度识别功能的立体深度识别方案,本申请实施例通过提供一种立体深度识别方法实现前述目的。下面对本申请提供的立体深度识别方法进行详细描述。

请参照图2,图2是本申请实施例提供的立体深度识别方法的流程示意图。在本申请实施例中,所述立体深度识别方法可以包括步骤S210~步骤S260。

步骤S210,获取目标机器人针对待测场景拍摄到的左眼场景图及右眼场景图。

在本实施例中,所述目标机器人为当前选定的需要确认其与所在场景下各障碍物之间的距离(即立体深度信息)的机器人,所述待测场景即为目标机器人当前所处的需要立体深度识别处理的场景。所述控制设备10可通过所述通信单元13获取目标机器人基于自身的左眼相机拍摄待测场景得到的左眼场景图,以及该目标机器人基于自身的右眼相机拍摄待测场景得到的右眼场景图。

步骤S220,确定右眼场景图相对于左眼场景图的初始视差图。

在本实施例中,所述控制设备10在得到目标机器人针对待测场景拍摄到的左眼场景图及右眼场景图后,可通过调用预存的视差构建模型对所述左眼场景图及所述右眼场景图进行数据处理,以构建得到所述右眼场景图相对于所述左眼场景图的初始视差图;也可通过调用预存的特征提取模型对所述左眼场景图及所述右眼场景图进行特征提取后,通过特征匹配的方式确定出初始视差图中每个像素位置处的视差值。此时,所述初始视差图即表征初步预估出的右眼场景图相对于左眼场景图的视差值分布结果。

步骤S230,对初始视差图中各视差值进行视差范围分类,得到对应的视差范围分布结果。

在本实施例中,所述控制设备10在确定出所述目标机器人针对待测场景的右眼场景图和左眼场景图之间的初始视差图后,可根据该初始视差图中最大视差值,构建出与该初始视差图所涉及的呈连续分布的多个视差范围,其中每个视差范围即代表一个视差值分布区间,此时所述控制设备10可通过对所述初始视差图中各视差值进行视差范围分类,以确定所述初始视差图中各视差值分别属于哪个视差范围,进而根据各视差范围在该初始视差图内的出现频次,得到用于表征所述初始视差图所涉及的各视差范围的分布概率状况的视差范围分布结果。

在本实施例的一种实施方式中,为提升所述控制设备10的视差范围分类效率,降低所述控制设备10的分类计算量,可将确定出所述初始视差图中每个视差值除以大于1的相同正整数,并以计算出的数值替换所述初始视差图中对应视差值,从而有效降低所述控制设备10执行视差范围分类作业的数据运算量,提升视差范围分类效率。

步骤S240,根据预设的期望正态分布对初始视差图的视差范围分布结果进行更新,得到对应的视差分布优化结果。

在本实施例中,所述期望正态分布用于表征用户对立体深度识别效果的最低期望状况,其描述了实现期望深度识别效果所需的视差范围分布状况在按照正态分布曲线表示时的数学期望及标准差。所述控制设备10根据得到的期望正态分布对初始视差图的视差范围分布结果进行更新,以将目标机器人的与拍摄到的双眼场景图直接匹配的视差数据迁移预设的期望数据域内,确保最终得到的视差分布优化结果能够有效缩减所述控制设备10执行视差回归作业的数据运算量,提高所述控制设备10对不同相机配置和/或机器人使用场景的适应性。

步骤S250,根据视差分布优化结果调用预存的视差回归模型,对初始视差图进行视差回归处理,得到与待测场景匹配的目标场景视差图。

在本实施例中,当所述控制设备10确定出所述视差分布优化结果后,可通过调用视差回归模型基于所述初始视差图进行满足视差分布优化结果的视差回归处理,以利用被迁移到期望数据域内的视差值数据进行高精度的视差预测操作,得到高精准度的与待测场景匹配的目标机器人的目标场景视差图。

在本实施例的一种实施方式中,若所述初始视差图在执行视差范围分类作业前进行了视差值缩小运算(即以确定出的初始视差图中每个视差值除以大于1的相同正整数后得到的数值,替换初始视差图中对应原始视差值),则上述视差回归作业执行完成后需利用所述大于1的相同正整数,对得到的目标场景视差图中各目标场景视差值进行放大处理,并将放大处理后的目标场景视差图作为所述控制设备10执行视差深度转换作业的目标场景视差图。

步骤S260,根据目标机器人的相机焦距及相机基线距离,对目标场景视差图进行视差深度转换处理,得到目标机器人与待测场景之间的立体深度分布图。

在本实施例中,当所述控制设备10得到高精准度的与待测场景匹配的目标机器人的目标场景视差图后,所述控制设备10将根据目标机器人当前双目相机之间的相机基线距离,以及目标机器人当前针对待测场景进行图像采集时的相机焦距,对高精准度的所述目标场景视差图进行视差深度转换处理,得到满足视差深度关联关系的所述目标机器人与所述待测场景之间的立体深度分布图。其中,所述视差深度关联关系用于表征双目相机和被拍对象之间的立体深度及视差值的转换关系。

由此,本申请可通过执行上述步骤S210~步骤S260,将不同状况(包括不同相机配置和/或不同场景)的待识别图像数据迁移到同一期望数据域内进行立体深度识别,降低整个深度识别方案的数据计算量,提高该深度识别方案的普适性及识别精度,以确保本申请提供的立体深度识别方案能够有效兼容到不同款式/场景的机器人处实现高精度且高效率的立体深度识别效果。

在本申请中,为确保所述控制设备10能够精准测定同一机器人的右眼场景图和左眼场景图之间的初始视差图,本申请实施例通过提供一种初始视差图测定方案实现前述功能。下面对本申请提供的初始视差图测定方案进行详细描述。

请参照图3,图3是图2中的步骤S220包括的子步骤的流程示意图。在本申请实施例中,所述步骤S220可以包括子步骤S221~子步骤S223。

子步骤S221,对右眼场景图与左眼场景图分别进行特征提取,得到对应的右眼场景特征图和左眼场景特征图。

在本实施例中,所述控制设备10可从bath(图像帧数)维度、channels(图像通道数)维度、height(图像竖直方向像素数)维度及width(图像水平方向像素数)维度对所述右眼场景图及所述左眼场景图分别进行特征提取,得到与所述右眼场景图匹配的右眼场景特征图,以及与所述左眼场景图匹配的左眼场景特征图。

子步骤S222,将左眼场景特征图与右眼场景特征图进行像素特征匹配,得到左眼场景特征图中每个像素点与右眼场景特征图中特征匹配的像素点之间的视差值。

在本实施例中,所述控制设备10可针对所述左眼场景特征图中每个第一像素点,在所述右眼场景特征图中选取与该第一像素点处于同一图像水平方向上的每个第二像素点和该第一像素点进行像素特征匹配,以确定出与该第一像素点特征匹配成功的目标第二像素点,进而确定出该第一像素点与所述目标第二像素点之间的视差值,此时即可得到所述左眼场景特征图中每个像素点与所述右眼场景特征图中特征匹配的像素点之间的视差值。在此过程中,所述控制设备10可通过调用Concatenate函数实现前述像素特征匹配功能。

子步骤S223,对左眼场景特征图中所有像素点各自对应的视差值进行图像聚合,得到初始视差图。

在本实施例中,所述控制设备10在确定出所述左眼场景特征图中所有像素点各自对应的视差值后,可将所述左眼场景特征图中各像素点的像素位置作为参照模板,对所述各像素点的视差值进行图像聚合,得到初始视差图。

由此,本申请可通过执行上述子步骤S221~子步骤S223,精准测定出同一机器人的右眼场景图和左眼场景图之间的初始视差图。

在本申请中,为确保所述控制设备10能够有效执行视差范围分类作业,本申请实施例通过提供一种视差范围分类方案实现前述功能。下面对本申请提供的视差范围分类方案进行详细描述。

请参照图4,图4是图2中的步骤S230包括的子步骤的流程示意图。在本申请实施例中,所述步骤S230可以包括子步骤S231~子步骤S233。

子步骤S231,根据初始视差图中的最大视差值以及预设的视差范围规划步长,确定初始视差图所对应的视差范围规格。

在本实施例中,所述视差范围规格包括呈连续分布的多个视差范围,所述视差范围规划步长即为每个视差范围均维持的区间长度。

子步骤S232,按照视差范围规格调用交叉熵损失函数对初始视差图中所有视差值各自所属的视差范围进行识别。

子步骤S233,根据初始视差图所对应的不同视差范围各自的出现频次,对视差范围在初始视差图处的分布概率曲线进行拟合,得到视差范围分布结果。

在本实施例中,通过曲线拟合操作得到的所述视差范围分布结果可按照正态分布曲线的形式进行表达,此时所述视差范围分布结果描述了所述目标机器人当前双眼相机针对待测场景的拍照能力状况。

由此,本申请可通过执行上述子步骤S231~子步骤S233,针对目标机器人的右眼场景图和左眼场景图之间的初始视差图执行有效的视差范围分类作业。

在本申请中,为确保所述控制设备10能够将目标机器人的与拍摄到的双眼场景图直接匹配的视差数据迁移预设的期望数据域内,以缩减深度识别方案的数据运算量,提高对应深度识别方案的普适性及识别精度,本申请实施例通过提供一种视差范围分布更新方案实现前述功能。下面对本申请提供的视差范围分布更新方案进行详细描述。

请参照图5,图5是图2中的步骤S240包括的子步骤的流程示意图。在本申请实施例中,所述步骤S240可以包括子步骤S241~子步骤S243。

子步骤S241,判断视差范围分布结果所对应的正态分布曲线的标准差值是否大于预设标准差阈值。

在本实施例中,所述控制设备10可按照所述期望正态分布的标准差值作为所述预设标准差阈值,使所述控制设备10在将所述视差范围分布结果所对应的正态分布曲线的标准差值与所述预设标准差阈值进行比较,来判断所述视差范围分布结果所对应的待识别图像数据是否处于期望数据域内。其中,若所述视差范围分布结果所对应的正态分布曲线的标准差值大于预设标准差阈值,即代表所述视差范围分布结果所对应的待识别图像数据没有处于所述期望数据域内,此时所述控制设备10将对应执行子步骤S242;若所述视差范围分布结果所对应的正态分布曲线的标准差值小于或等于所述预设标准差阈值,即代表所述视差范围分布结果所对应的待识别图像数据已经处于所述期望数据域内,此时所述控制设备10将对应执行子步骤S243。

子步骤S242,计算期望正态分布与正态分布曲线之间的数学期望差异及标准差倍数,并根据数学期望差异及标准差倍数对视差范围分布结果所对应的正态分布曲线进行曲线偏移,得到视差分布优化结果。

在本实施例中,若所述视差范围分布结果所对应的待识别图像数据没有处于期望数据域内,所述控制设备10将计算所述期望正态分布的数学期望与所述正态分布曲线的数学期望之间的差值(即所述数学期望差异),并计算所述期望正态分布的标准差值相对于所述正态分布曲线的标准差值的倍数值(即所述标准差倍数),而后所述控制设备10将基于所述数学期望差异及标准差倍数对视差范围分布结果所对应的正态分布曲线进行曲线偏移,使所述视差分布优化结果所对应的正态分布曲线的数学期望与所述期望正态分布的数学期望保持一致,并使所述视差分布优化结果所对应的正态分布曲线的标准差值与所述期望正态分布的标准差值保持一致。

子步骤S243,直接将视差范围分布结果作为视差分布优化结果。

在本实施例中,若所述视差范围分布结果所对应的待识别图像数据处于期望数据域内,即代表所述视差分布结果当前无需进行参数更新,此时可直接将所述视差范围分布结果作为所述视差分布优化结果。

由此,本申请可通过执行上述子步骤S241~子步骤S243,将不同状况的待识别图像数据迁移到同一期望数据域内进行立体深度识别作业,降低整个深度识别方案的数据计算量,提高该深度识别方案的普适性及识别精度,以确保本申请提供的立体深度识别方案能够有效兼容到不同款式/场景的机器人处实现高精度且高效率的立体深度识别效果。

在本申请中,为确保所述控制设备10能够利用被迁移到期望数据域内的视差值数据进行高精度的视差预测操作,得到高精准度的与待测场景匹配的目标机器人的目标场景视差图,本申请实施例通过提供一种场景视差预测方案实现前述功能。下面对本申请提供的场景视差预测方案进行详细描述。

请参照图6,图6是图2中的步骤S250包括的子步骤的流程示意图。在本申请实施例中,所述步骤S250可以包括子步骤S251~子步骤S252。

子步骤S251,在初始视差图的基础上,调用视差回归模型预估目标场景视差图中每个像素点的满足视差分布优化结果的所有可能视差值及所有可能视差值各自的出现概率。

在本实施例中,所述目标场景视差图的图像尺寸与所述左眼场景图的图像尺寸保持一致。所述控制设备10可采用基于Softargmin算法和光滑后的L1范数(smooth L1)损失函数训练得到的视差回归模型进行视差预测,得到目标场景视差图中每个像素点的满足视差分布优化结果的所有可能视差值及所有可能视差值各自的出现概率。

子步骤S252,针对目标场景视差图中的每个像素点,对该像素点所对应的所有可能视差值及所有可能视差值各自的出现概率进行加权求和运算,得到目标场景视差图在该像素点处的目标场景视差值。

由此,本申请可通过执行上述子步骤S251~子步骤S252,利用被迁移到期望数据域内的视差值数据进行高精度的视差预测操作,得到高精准度的与待测场景匹配的目标机器人的目标场景视差图。

在本申请中,为确保所述控制设备10能够有效执行视差深度转换操作,本申请实施例通过提供一种视差深度转换方案实现前述功能。下面对本申请提供的视差深度转换方案进行详细描述。

请参照图7,图7是图2中的步骤S260包括的子步骤的流程示意图。在本申请实施例中,所述步骤S260可以包括子步骤S261及子步骤S262。

子步骤S261,针对目标场景视差图中每个像素点,将相机焦距、相机基线距离及该像素点所对应的目标场景视差值代入到预存的视差深度关联关系中,计算得到该像素点在立体深度分布图处对应的目标场景深度值。

在本实施例中,参照图8所示的视差深度关联关系的效果展示图,P用于表示被拍对象,O

其中,D用于表示被拍对象在所述目标机器人的处于同一基线的左眼相机和右眼相机之间的视差值,b用于表示所述目标机器人的左眼相机和右眼相机之间的相机基线距离,f用于表示所述目标机器人的相机焦距,Z用于表示所述被拍对象与所述目标机器人之间的立体深度值。

由此,所述控制设备10可基于上述视差深度关联关系计算所述目标场景视差图中每个像素点的目标场景视差值所匹配的目标场景深度值。

子步骤S262,对目标场景视差图中所有像素点各自对应的目标场景深度值进行图像聚合,得到立体深度分布图。

在本实施例中,所述控制设备10在确定出所述目标场景视差图中每个像素点所对应的目标场景深度值后,可将所述目标场景视差图中各像素点的像素位置作为参照模板,对所有目标场景深度值进行图像聚合,得到所述立体深度分布图。

由此,本申请可通过执行上述子步骤S261及子步骤S262,针对高精准度的目标场景视差图执行实质有效的视差深度转换操作,达到高精度且高效率的立体深度识别效果。

在本申请中,为确保所述控制设备10能够通过所述立体深度识别装置100执行上述立体深度识别方法,本申请通过对所述立体深度识别装置100进行功能模块划分的方式实现前述功能。下面对本申请提供的立体深度识别装置100的具体组成进行相应描述。

请参照图9,图9是本申请实施例提供的立体深度识别装置100的组成示意图。在本申请实施例中,所述立体深度识别装置100可以包括场景视图获取模块110、初始视差确定模块120、视差分布分类模块130、视差分布优化模块140、场景视差回归模块150及立体深度计算模块160。

场景视图获取模块110,用于获取目标机器人针对待测场景拍摄到的左眼场景图及右眼场景图。

初始视差确定模块120,用于确定右眼场景图相对于左眼场景图的初始视差图。

视差分布分类模块130,用于对初始视差图中各视差值进行视差范围分类,得到对应的视差范围分布结果。

视差分布优化模块140,用于根据预设的期望正态分布对初始视差图的视差范围分布结果进行更新,得到对应的视差分布优化结果。

场景视差回归模块150,用于根据视差分布优化结果调用预存的视差回归模型,对初始视差图进行视差回归处理,得到与待测场景匹配的目标场景视差图。

立体深度计算模块160,用于根据目标机器人的相机焦距及相机基线距离,对目标场景视差图进行视差深度转换处理,得到目标机器人与待测场景之间的立体深度分布图。

需要说明的是,本申请实施例所提供的立体深度识别装置100,其基本原理及产生的技术效果与前述的立体深度识别方法相同。为简要描述,本实施例部分未提及之处,可参考上述的针对立体深度识别方法的描述内容。

在本申请所提供的实施例中,应该理解到,所揭露的装置和方法,也可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,附图中的流程图和框图显示了根据本申请的实施例的装置、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或代码的一部分,所述模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现方式中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。

另外,在本申请各个实施例中的各功能模块可以集成在一起形成一个独立的部分,也可以是各个模块单独存在,也可以两个或两个以上模块集成形成一个独立的部分。所述功能如果以软件功能模块的形式实现并作为独立的产品销售或使用时,可以存储在一个可读存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个可读存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的可读存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。

综上所述,在本申请提供的一种立体深度识别方法及装置、控制设备和可读存储介质中,本申请在确定出目标机器人针对待测场景拍摄到的左眼场景图及右眼场景图之间的初始视差图后,可通过对初始视差图中各视差值进行视差范围分类,得到视差范围分布结果,并根据预设的期望正态分布对视差范围分布结果进行更新,得到视差分布优化结果,而后根据该视差分布优化结果调用预存的视差回归模型,对初始视差图进行视差回归处理,得到与待测场景匹配的目标场景视差图,接着根据目标机器人的相机焦距及相机基线距离,对目标场景视差图进行视差深度转换处理,得到目标机器人与待测场景之间的立体深度分布图,从而通过视差范围分布更新操作将不同状况的待识别图像数据迁移到同一期望数据域内进行立体深度识别,降低整个深度识别方案的数据计算量,提高该深度识别方案的普适性及识别精度,以确保本申请提供的立体深度识别方案能够有效兼容到不同款式/场景的机器人处实现高精度且高效率的立体深度识别效果。

以上所述,仅为本申请的各种实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应当以权利要求的保护范围为准。

相关技术
  • 立体深度识别方法及装置、控制设备和可读存储介质
  • 远程调用深度识别方法、装置、计算机设备及可读存储介质
技术分类

06120114722747