一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

用于深度测量的训练数据集生成的制作方法

2022-12-03 12:33:25 来源:中国专利 TAG:

用于深度测量的训练数据集生成
1.相关申请的交叉引用/引用包含
2.无
技术领域
3.本公开的各个实施例涉及用于神经网络模型的数据集生成。更具体地,本公开的各个实施例涉及一种用于生成用于深度测量的神经网络模型的训练数据集的系统和方法。


背景技术:

4.通常,距离成像(range imaging)应用被用于深度估计。距离成像应用可以利用各种类型的深度传感器(比如飞行时间(tof)传感器)对存在于真实环境中的对象进行深度估计。一般来说,距离成像应用所采用的深度传感器可能昂贵,并且在结构上难以实现。于是,为了收集存在于真实环境中的不同对象的大量深度值,部署大量的深度传感器(或从大量的位置或视点捕获对象的深度值)可能是一项复杂且昂贵的任务。
5.如在本技术的其余部分中并参考附图所述,通过将所描述的系统与本公开的一些方面进行比较,常规的传统方法的限制和缺点对本领域的技术人员来说将变得显而易见。


技术实现要素:

6.如在权利要求书中更完整地所述,提供一种基本上如在附图至少之一中所示和/或结合附图至少之一所述的用于生成用于深度测量的训练数据集的系统和方法。
7.通过仔细研究本公开的以下详细说明以及附图,可以理解本公开的这些及其他特征和优点,附图中,相同的附图标记始终表示相同的部分。
附图说明
8.图1是按照本公开的实施例的用于生成用于深度测量的训练数据集的示例性网络环境的示图。
9.图2是按照本公开的实施例的用于生成用于深度测量的训练数据集的系统的框图。
10.图3是按照本公开的实施例的描述用于生成用于深度测量的训练数据集的第一图像的捕获的示例性场景。
11.图4a-图4b共同图解说明按照本公开的实施例的用于生成用于深度测量的训练数据集的示例性操作的序列图。
12.图5是图解说明按照本公开的实施例的用于生成用于深度测量的训练数据集的示例性方法的流程图。
具体实施方式
13.以下说明的实现可以在所公开的用于生成用于深度测量的训练数据集的系统和
方法中找到。本公开的示例性方面提供一种系统,所述系统被配置为控制深度传感器(比如飞行时间(tof)传感器)从第一视点捕获一个或多个第一对象的第一图像。所述一个或多个第一对象的例子可以包括但不限于有生命的对象(比如人类)或无生命的对象(比如非生命实体,例如家具、电子产品或基础设施)。所述第一图像可以与所述一个或多个第一对象中的第一对象(比如椅子)相关联。所述第一图像可以包括所述一个或多个第一对象的颜色信息(比如红、绿、蓝(rgb)信息)。所述第一视点例如可以是所述第一对象(比如椅子)相对于深度传感器的前视图。所述系统还可以控制所述深度传感器从第一视点(比如前视图)捕获与所述一个或多个第一对象相关联的第一深度值。所述第一深度值可以指示所述深度传感器与所述一个或多个第一对象的表面(即,从所述第一视点可见)上的一个或多个点之间的深度信息或距离。
14.所述系统还可以基于手持设备(例如,虚拟现实设备)和深度传感器在三维(3d)空间中的移动,从所述手持设备接收跟踪信息。所述手持设备可以与所述深度传感器连接(或接合或集成)。例如,在捕获所述第一图像之后,深度传感器的位置和取向可以基于所述手持设备和深度传感器的移动而在3d空间中发生变化。于是,跟踪信息可以指示所述深度传感器在3d空间中的位置信息或取向信息。所述系统还可以基于所接收到的跟踪信息(即,深度传感器的移动),生成与所述一个或多个第一对象对应的图形信息(例如但不限于点云数据、图像、视频或3d网格)。按照实施例,所述系统可以包括3d图形引擎(例如动画引擎或动画应用)以生成所述图形信息。所述图形信息可以包括或对应于从不同于所述第一视点的一个或多个第二视点(例如但不限于侧视图、顶视图或后视图)看的所述一个或多个第一对象(比如椅子)。所述一个或多个第一对象的第二视点可以基于所述手持设备和深度传感器在所述3d空间中的移动。通过所公开系统的所述图形信息的生成因此使得能够将真实世界信息(比如由所述深度传感器在所述第一图像中捕获的所述一个或多个第一对象)变换为虚拟信息(比如与所述一个或多个第一对象相关联,并且从与捕获所述第一图像的第一视点不同的第二视点生成的图形信息)。
15.所述系统还可以基于从所述一个或多个第二视点生成的图形信息,计算与所述一个或多个第一对象相关联的一个或多个第二深度值。所述一个或多个第二深度值可以包括所述深度传感器与从所述一个或多个第二视点看的所述一个或多个第一对象之间的深度信息(比如距离信息)。所述系统还可以使得能够在虚拟环境中(比如在3d图形引擎中)生成和描述所述图形信息,以便基于生成的图形信息计算与所述一个或多个第一对象相关联的一个或多个第二深度值。因此,所公开的系统可以允许从图形信息计算一个或多个第二深度值,与通过常规深度传感器计算的深度值相比,这可能时间效率更高。
16.在一些实施例中,所述系统可以生成对应于所述图形信息的一个或多个第二图像。从所述一个或多个第二视点看的关于所述一个或多个第一对象的所述一个或多个第二图像可以被称为由所述系统(或者由所述系统的3d图形引擎)生成的合成数据。与对于存在于真实环境中的大量对象,通过深度传感器捕获真实数据(比如第一图像)相比,生成与所述一个或多个第一对象(即,真实对象)相关联的合成数据可能更廉价。于是,所述系统可以使得能够从有限的真实世界数据(即,从深度传感器从第一视点捕获的真实对象的第一图像)生成合成数据(即,从不同的视点生成的对象的图形信息或图像)。例如,所述系统(即,3d图形引擎)可以使得能够通过在3d图形引擎中3d重建存在于海洋中的失事船舶(即,对
象),生成与失事船舶相关联的合成数据(即,图形信息),而无需从不同视点反复扫描失事船舶(即,通过使用深度传感器)。
17.此外,所述系统可以为神经网络模型生成训练数据集,所述训练数据集可以包括所述第一图像(即,从第一视点捕获的所述对象的真实图像)与所述第一深度值(真实深度值)的第一组合,还包括与所述对象的图形信息对应的一个或多个第二图像(即,由3d图形引擎从不同视点生成的图像)与所述一个或多个第二深度值(即,从关于所述对象的图形信息计算的深度值)的第二组合。在另一个实施例中,所公开的系统可以基于所述第一深度值来生成第三图像,并基于所述一个或多个第二深度值来生成一个或多个第四图像,以进一步生成可以包括所述第一图像和第三图像的第一组合(即,真实数据),并且还包括所述第二图像和第四图像的第二组合(即,虚拟数据)的训练数据集。于是,由所述系统生成的所述训练数据集可以包括可用于训练所述神经网络模型的廉价生成的合成数据。针对生成的训练数据集训练的所述神经网络模型可以用于从作为输入提供给所述神经网络模型的图像(比如具有二维(2d)信息的图像)自动预测深度值。
18.图1是按照本公开的实施例的用于生成用于深度测量的训练数据集的示例性网络环境的示图。参考图1,图中示出了网络环境100的框图。网络环境100可以包括系统102。系统102可以包括三维(3d)图形引擎104。网络环境100还可以包括深度传感器106和手持设备108。网络环境100还可以包括第一场景110。第一场景110可以包括一个或多个第一对象112。一个或多个第一对象112可以包括第一对象112a、第二对象112b和第n个对象112n。网络环境100还可以包括第一输入/输出(i/o)设备114。系统102还可以包括系统102针对存在于第一场景110中或不同场景中的一个或多个第一对象112生成的训练数据集116。此外,网络环境100可以包括通信网络118,系统102、深度传感器106和手持设备108可以通过通信网络118进行通信。
19.系统102可以包括可被配置为从深度传感器106接收一个或多个第一对象112的第一图像和与一个或多个第一对象112相关联的第一深度值的适当逻辑、电路和接口。系统102还可以生成图形信息并计算与一个或多个第一对象112相关联的一个或多个第二深度值。系统102还可以被配置成为神经网络模型生成训练数据集116,训练数据集116可以包括第一图像与第一深度值的第一组合,以及对应于图形信息的一个或多个第二图像与一个或多个第二深度值的第二组合。系统102的例子可以包括但不限于动画系统、计算设备、膝上型计算机、大型机、服务器、计算机工作站、智能电话机、蜂窝电话机、移动电话机、游戏设备和/或消费者电子(ce)设备。
20.3d图形引擎104可以包括可被配置为基于系统102所接收到的跟踪信息,从一个或多个第二视点生成与一个或多个第一对象112对应的图形信息的适当逻辑、电路、接口和/或代码。3d图形引擎104还可以控制显示设备(比如包括在第一i/o设备114中)呈现生成的与一个或多个第一对象112相关联的图形信息。3d图形引擎104可以利用脚本生成器(比如python脚本生成器)来生成图形信息。在一些实施例中,3d图形引擎104可以控制显示设备呈现由深度传感器106从第一视点捕获的一个或多个第一对象112的第一图像,以及经由第一i/o设备114接收对于所呈现的第一图像的一个或多个用户输入,以从不同视点为一个或多个第一对象112生成图形信息。一个或多个第一对象112的图形信息可以包括但不限于旋转的对象、调整大小的对象、重新定位的对象、点云数据、视频信息、体素信息或3d网格)。3d
图形引擎104的例子可以包括但不限于3d计算机图形引擎、3d创建应用、3d建模或仿真应用、3d动画引擎或视频编辑应用。
21.深度传感器106可以包括可被配置为捕获一个或多个第一对象112的第一图像的适当逻辑、电路和接口。深度传感器106还可被配置为捕获与一个或多个第一对象112,比如第一对象112a相关联的第一深度值。第一深度值可以指示深度传感器106与第一对象112a的表面上的一个或多个点之间的距离。深度传感器106的例子可以包括但不限于飞行时间(tof)传感器、光检测和测距(lidar)传感器、立体图像传感器或结构光传感器。
22.手持设备108可以包括可被配置为基于手持设备108和深度传感器106在3d空间中的移动来生成与深度传感器106相关联的跟踪信息的适当逻辑、电路和接口。手持设备108可以由用户持有或穿戴(示于图3中),并且可以与深度传感器106集成。手持设备108可以包括一个或多个传感器以生成跟踪信息(即,3d空间中的位置或取向)。手持设备108的例子可以包括但不限于虚拟现实设备、增强现实设备或混合现实设备。在一些实施例中,手持设备108可以是与传感器集成以检测手持设备108在3d空间中的位置或取向的任何计算设备。传感器可包括但不限于惯性测量单元(imu)传感器、加速度计、陀螺仪或运动感测设备。
23.第一场景110可以包括真实环境,比如建筑物的房间,开放空间区域,比如公园,水下场景,比如海洋场景等,或者可以与它们相关。第一场景110可以包括一个或多个第一对象112,比如第一对象112a、第二对象112b和第n个对象112n。一个或多个第一对象112的例子可以包括但不限于有生命的对象(比如人、动物),或者无生命的对象(比如家具、电子产品、基础设施,运输工具对象或装饰性对象)。
24.第一输入/输出(i/o)设备114可以包括可被配置为从用户接收输入并基于所接收到的输入提供输出的适当逻辑、电路和接口。第一i/o设备114可被配置为接收来自用户的输入(示于图3中),以生成对应于一个或多个第一对象112的图形信息。第一i/o设备114还可以显示由深度传感器106捕获的第一图像,或者显示所计算的与一个或多个第一对象112相关联的一个或多个第二深度值或第四图像。可以包括各种输入和输出设备的第一i/o设备114可被配置为与系统102或3d图形引擎104通信。第一i/o设备114的例子可以包括但不限于触摸屏、键盘、鼠标、操纵杆、麦克风或显示设备。尽管在图1中,第一i/o设备114是与系统102分离地显示的,但是本公开不限于此。因而,在一些实施例中,如图2中所示,第一i/o设备114可以集成在系统102的3d图形引擎104中,而不脱离本公开的范围。
25.训练数据集116可以是基于图像的数据集,它可以被神经网络模型用于从2d图像预测深度值。训练数据集116可以包括第一组配对数据集(比如第一组配对图像)。第一组配对图像可以包括可包括第一对象112a的颜色信息的第一图像,以及可包括或对应于第一对象112a的深度信息(即,第一深度值)的对应第三图像。训练数据集116还可以包括第一组未配对数据集(比如第一组未配对图像)。第一组未配对图像可以包括由3d图形引擎104从不同视点生成的第一对象112a的图形信息(即,第二图像),以及可包括或对应于从所述不同视点的第一对象112a的深度信息(即,第二深度值)的对应第四图像。因此,可以针对所生成的可包括第一组配对图像和第一组未配对图像的训练数据集116训练神经网络模型。
26.通信网络118可以包括通信介质,系统102、深度传感器106和手持设备108可以通过该通信介质相互通信。通信网络118可以是有线连接或无线连接之一。通信网络118的例子可以包括但不限于因特网、云网络、无线保真(wi-fi)网络、个人区域网络(pan)、局域网
(lan)或城域网(man)。网络环境100中的各种设备可被配置为按照各种有线和无线通信协议连接到通信网络118。此类有线和无线通信协议的例子可以包括但不限于传输控制协议和网际协议(tcp/ip)、用户数据报协议(udp)、超文本传送协议(http)、文件传送协议(ftp)、zig bee、edge、ieee 802.11、光保真(li-fi)、802.16、ieee 802.11s、ieee 802.11g、多跳通信、无线接入点(ap)、设备对设备通信、蜂窝通信协议和蓝牙(bt)通信协议中的至少一种。
27.操作中,系统102可被配置为控制深度传感器106从第一视点捕获存在于第一场景110中的一个或多个第一对象112的第一图像,并捕获与一个或多个第一对象112相关联的第一深度值。第一场景110可以描述一个或多个第一对象112和周围环境,比如一个或多个第一对象112周围的墙壁。第一图像可以包括一个或多个第一对象112的颜色信息。第一视点例如可以是一个或多个第一对象112中的第一对象112a的前视图。按照实施例,与一个或多个第一对象112相关联的第一深度值可以指示深度传感器106与从第一视点捕获的一个或多个第一对象112的表面上的第一多个点之间的深度信息(即,距离)。例如,在图4a中进一步提供了控制深度传感器106捕获第一图像以及与一个或多个第一对象112相关联的第一深度值的细节。
28.系统102还可以基于手持设备108和深度传感器106在3d空间中的移动,从与深度传感器106相关联的手持设备108接收跟踪信息。跟踪信息可以指示深度传感器106在3d空间中的位置信息(x轴、y轴、z轴信息)或取向信息。深度传感器106的位置信息或取向信息可以基于深度传感器106在3d空间中的位置和取向的变化而变化。例如,在图4a中进一步提供了接收跟踪信息的细节。
29.系统102还可以基于所接收到的跟踪信息生成与一个或多个第一对象112对应的图形信息。在一些实施例中,系统102可以基于从第一i/o设备114接收到的一个或多个用户输入,生成与一个或多个第一对象112对应的图形信息。图形信息可以包括但不限于一个或多个第二图像、点云数据、体素集、三维(3d)网格、视频信息,las(laser)格式数据或专有格式数据。按照实施例,包括在系统102中的3d图形引擎104可被配置为生成与一个或多个第一对象112对应的图形信息。图形信息可以包括或对应于从不同于第一视点的一个或多个第二视点看的一个或多个第一对象112。一个或多个第二视点例如可包括一个或多个第一对象112的前视图、侧视图、后视图、顶视图、旋转视图或平移视图。系统还可以生成对应于该图形信息的一个或多个第二图像。例如,在图4a中进一步提供了生成图形信息的细节。
30.系统102还可被配置为基于从一个或多个第二视点针对一个或多个第一对象112生成的图形信息,计算与一个或多个第一对象112相关联的一个或多个第二深度值。按照实施例,一个或多个第二深度值可以指示深度传感器106与从一个或多个第二视点捕获的一个或多个第一对象112的表面上的第二多个点之间的深度信息(即,距离)。例如,在图4b中进一步提供了计算一个或多个第二深度值的细节。系统102还可以为神经网络模型生成训练数据集116,训练数据集116可以包括第一图像与第一深度值的第一组合,以及对应于图形信息的一个或多个第二图像与一个或多个第二深度值的第二组合。例如,在图4b中进一步提供了生成训练数据集116的细节。
31.图2是按照本公开的实施例的用于生成用于深度测量的训练数据集的系统的框图。结合图1的要素来说明图2。参考图2,图中示出了系统102的框图200。系统102可以包括
处理器202和存储器204。存储器204还可以包括训练数据集116和神经网络模型204a。系统102还可以包括3d图形引擎104、第一i/o设备114和网络接口206。
32.处理器202可以包括可被配置为执行存储在存储器204中的一组指令的适当逻辑、电路和接口。处理器202可被配置为执行与要由系统102执行的不同操作相关联的程序指令。例如,一些操作可以包括控制深度传感器106从第一视点捕获一个或多个第一对象112的第一图像,从手持设备108接收跟踪信息,从一个或多个第二视点生成对应于一个或多个第一对象112的图形信息,以及计算与一个或多个第一对象112相关联的一个或多个第二深度值。处理器202还可被配置为生成用于训练神经网络模型204a的训练数据集116。处理器202可以基于本领域已知的许多处理器技术来实现。处理器技术的例子可以包括但不限于中央处理器(cpu)、基于x86的处理器、精简指令集计算(risc)处理器、专用集成电路(asic)处理器、复杂指令集计算(cisc)处理器、图形处理器(gpu)和其他处理器。
33.存储器204可以包括可被配置为存储要由处理器202执行的一个或多个指令的适当逻辑、电路和接口。存储器204可被配置为存储训练数据集116和神经网络模型204a。存储器204还可被配置为存储但不限于第一图像、第一深度值、与第一深度值相关的第三图像、跟踪信息,对应于一个或多个第一对象112的图形信息、一个或多个第二深度值、以及与一个或多个第二深度值相关的一个或多个第四图像。存储器204的实现的例子可以包括但不限于随机存取存储器(ram)、只读存储器(rom)、电可擦可编程只读存储器(eeprom)、硬盘驱动器(hdd)、固态驱动器(ssd)、cpu高速缓冲存储器和/或安全数字(sd)卡。
34.神经网络模型204a可以是作为节点排列成多层的人工神经元的计算网络或系统。神经网络模型204a的多层可以包括输入层、一个或多个隐藏层、以及输出层。所述多层中的每一层可以包括一个或多个节点(或人工神经元)。输入层中的所有节点的输出可以耦接到隐藏层的至少一个节点。类似地,每个隐藏层的输入可以耦接到神经网络模型204a的其他层中的至少一个节点的输出。每个隐藏层的输出可以耦接到神经网络模型204a的其他层中的至少一个节点的输入。最后一层中的节点可以接收来自至少一个隐藏层的输入以输出结果。层数和每一层中的节点数可以根据神经网络模型204a的超参数来确定。此类超参数可以在针对训练数据集训练神经网络模型204a之前或之时设定。
35.神经网络模型204a的每个节点可以对应于具有可以在网络的训练期间调整的一组参数的数学函数(例如,s形函数或修正线性单元)。所述一组参数例如可以包括权重参数、正则化参数等。每个节点可以使用数学函数,基于来自神经网络模型204a的其他层(例如,前面的一层或多层)中的节点的一个或多个输入来计算输出。神经网络模型204a的所有或一些节点可以对应于相同或不同的相同数学函数。
36.在神经网络模型204a的训练中,神经网络模型204a的每个节点的一个或多个参数可以基于最后一层对于(来自训练数据集116的)给定输入的输出基于神经网络模型204a的损失函数是否与正确结果相匹配来更新。可以对于相同或不同的输入重复上述过程,直到可以获得损失函数的最小值并且可以使训练误差最小化为止。本领域中已知几种训练方法,例如,梯度下降、随机梯度下降、批量梯度下降、梯度提升、元启发法等。
37.神经网络模型204a例如可以包括电子数据,比如用于由诸如处理器202之类的处理设备执行的软件程序、软件程序的代码、库、应用、脚本、或其他逻辑或指令。神经网络模型204a可以包括代码和例程,所述代码和例程被配置为使得诸如处理器202之类的计算设
备能够进行用于基于提供的输入(比如新的图像或计算机生成的图像(cgi)输入)来预测深度信息的一个或多个操作。另外或者可替选地,神经网络模型204a可以使用包括处理器、微处理器(例如,进行一个或多个操作或控制一个或多个操作的执行)、现场可编程门阵列(fpga)或专用集成电路(asic)的硬件来实现。或者,在一些实施例中,神经网络模型204a可以使用硬件和软件的组合来实现。
38.神经网络模型204a的例子可以包括但不限于深度神经网络(dnn)、卷积神经网络(cnn)、递归神经网络(rnn)、cnn-递归神经网络(cnn-rnn)、r-cnn、快速r-cnn、更快速的r-cnn、人工神经网络(ann)、(仅查看一次)yolo网络、基于长短期记忆(lstm)网络的rnn、cnn ann、lstm ann、基于门控递归单元(gru)的rnn、完全连接的神经网络、基于连接时序分类(ctc)的rnn、深度贝叶斯神经网络、生成式对抗网络(gan)和/或此类网络的组合。在一些实施例中,神经网络模型204a可以包括使用数据流图的数值计算技术。在某些实施例中,神经网络模型204a可以基于多个深度神经网络(dnn)的混合架构。在一些实施例中,神经网络模型204a可以是人工智能(ai)引擎。
39.网络接口206可以包括可被配置为便利经由通信网络118在系统102、深度传感器106和手持设备108之间进行通信的适当逻辑、电路和接口。网络接口206可以通过使用各种已知技术来实现,以支持系统102与通信网络118的有线或无线通信。网络接口206可包括但不限于天线、射频(rf)收发器、一个或多个放大器、调谐器、一个或多个振荡器、数字信号处理器、编解码器(codec)芯片集、用户识别模块(sim)卡、或本地缓冲电路。网络接口206可被配置为经由无线通信与网络,比如因特网、内联网或诸如蜂窝电话网络、无线局域网(lan)和城域网(man)之类的无线网络进行通信。无线通信可被配置为使用多种通信标准、协议和技术中的一种或多种,比如全球移动通信系统(gsm)、增强数据gsm环境(edge)、宽带码分多址接入(w-cdma)、长期演进(lte)、码分多址接入(cdma)、时分多址接入(tdma)、蓝牙、无线保真(wi-fi)(比如ieee802.11a、ieee 802.11b、ieee 802.11g或ieee 802.11n)、网际协议语音(voip)、光保真(li-fi)、微波接入全球互操作性(wi-max)、电子邮件协议、即时消息接发、以及短消息服务(sms)。
40.图3是按照本公开的实施例的描述用于生成用于深度测量的训练数据集的第一图像的捕获的示例性场景。结合图1和图2的要素来说明图3。参考图3,图中示出了示例性场景300。示例性场景300可以包括第一对象302(比如椅子)、用户304、手持设备306、深度传感器308、与3d图形引擎104相关联的显示设备310(或者第一i/o设备114的一部分)。显示设备310可以显示由深度传感器308捕获的第一图像312。所公开的系统102的显示设备310和3d图形引擎104可以经由通信网络118,在通信上耦接到深度传感器308和手持设备306。
41.如图3中所示,用户304可以经由深度传感器308捕获一个或多个第一对象112中的第一对象302。例如,可以通过深度传感器308从第一视点(比如前视图)捕获第一对象302的第一图像312。如图3中所示,深度传感器308和手持设备306(它可以是虚拟现实设备)可以集成在一起。在一些实施例中,系统102的处理器202可被配置为控制深度传感器308捕获第一对象302的第一图像,并捕获一个或多个第一深度值,所述第一深度值可以指示深度传感器308与第一对象302的表面(即,从第一个视点可见)的第一多个点之间的距离(例如,以厘米、英寸、英尺、码或米为单位)。处理器202可以发送指令或命令以控制深度传感器308捕获第一图像和一个或多个第一深度值。在一些实施例中,深度传感器308或手持设备306可以
直接从用户304接收用户输入,以控制深度传感器308捕获第一图像和与第一对象302相关的一个或多个第一深度值。在实施例中,处理器202可被配置为从深度传感器308接收第一对象302的第一图像312和与第一图像312相关联的对应第一深度值。
42.在实施例中,深度传感器308连同手持设备306可以由用户304在3d空间(即,真实空间)中移动。例如,基于深度传感器308和手持设备306在3d空间中的移动,手持设备306可以捕获深度传感器308的位置信息(xyz信息)和取向信息。手持设备306还可被配置为生成跟踪信息,所述跟踪信息可以包括手持设备306在3d空间中的位置信息和取向信息。处理器202还可被配置为从手持设备306接收跟踪信息,以生成对应于第一对象302的图形信息。例如,在图4a-图4b中进一步提供了生成图形信息的细节。
43.图形信息可以包括或对应于从一个或多个第二视点看的第一对象302,所述第二视点可以不同于捕获第一对象302的第一图像312的第一视点。例如,一个或多个第二视点可以包括或对应于从侧视图、后视图或顶视图看的第一对象302。例如,在图4a中进一步提供了一个或多个第二视点和图形信息的细节。在一些实施例中,处理器202可以从用户304接收一个或多个用户输入(即,经由第一i/o设备114,以修改显示在显示设备310上的第一图像312(即,对应于第一对象302)。处理器202还可以基于所接收到的一个或多个用户输入来生成图形信息。例如,用户304可以经由第一i/o设备114提供用户输入,以旋转第一图像312,从而在3d图形引擎104中获得第一对象302的侧视图。在另一个例子中,用户304可以提供用户输入以放大第一图像312,从而在3d图形引擎104中获得第一对象302的放大视图。在一些实施例中,3d图形引擎104可以控制显示设备310和第一i/o设备114旋转或放大第一图像312,以进一步从不同的视点生成图形信息。
44.处理器202还可被配置为基于所生成的图形信息,计算与第一对象302相关联的一个或多个第二深度值。例如,处理器202可被配置为计算与由3d图形引擎104生成的第一对象302的侧视图和第一对象302的放大视图相关联的深度值。因此,可以在从深度传感器308接收到与第一对象302相关联的一个图像(比如第一图像312)时,生成合成数据(比如对应于图形信息的一个或多个第二图像以及一个或多个第二深度值),所述合成数据可以包括从不同视点的第一对象302的深度信息。由深度传感器308从第一视点捕获的第一对象302的第一图像312可以被称为真实数据,而从不同视点关于第一对象302虚拟地生成(即,由系统102或3d图形引擎104生成)的合成数据可以被称为从各个视点关于第一对象302的虚拟数据。虚拟数据可以与真实数据极为相似,但有一定的变化(即,比如视点的变更以生成图形信息)。例如,如在图4a-图4b中所述,处理器202还可被配置为对于不同的对象生成包括这样的真实数据和虚拟数据的训练数据集116。可以注意到的是,在图3中作为例子仅仅示出了第一对象302(比如椅子)的第一图像312的捕获、深度传感器308和手持设备306。场景300可以包括不同类型的对象、深度传感器和手持设备,而不脱离本公开的范围。
45.图4a-图4b共同图解说明按照本公开的实施例的用于生成用于深度测量的训练数据集的示例性操作的序列图。结合图1、图2和图3的要素来说明图4a-图4b。参考图4a-图4b,图中示出了图解说明一系列操作402~418的序列图400。所述一系列操作可以由图1的系统102的各个组件或图2的处理器202执行。
46.在402,可以捕获第一图像402a和第一深度值。按照实施例,处理器202可被配置为控制深度传感器308从第一视点捕获一个或多个第一对象112中的第一对象302的第一图像
402a。处理器202还可以控制深度传感器308捕获与第一对象302相关联的第一深度值。按照实施例,深度传感器308可以是但不限于飞行时间(tof)传感器、光检测和测距(lidar)传感器、立体图像传感器或结构光传感器。tof传感器可以利用红外光源来捕获与第一对象302相关联的第一深度值。lidar传感器可以利用激光光源来捕获与第一对象302相关联的第一深度值。此外,立体图像传感器可以利用两个成像设备(未示出)来捕获第一深度值。结构光传感器可以利用投影在第一对象302上的光图案来捕获第一深度值。
47.第一图像402a可以包括第一对象302的颜色信息。例如,第一图像402a可以包括诸如第一对象302的实际颜色(比如红-绿-蓝(rgb)信息)之类的颜色信息。按照实施例,第一深度值可以指示深度传感器308与一个或多个第一对象112中的第一对象302的表面上的第一多个点之间的深度信息或距离。例如,第一对象302的表面上的第一多个点可以包括第一对象302的可位于深度传感器308从第一视点看的视场内的表面上的点。在例子中,可位于深度传感器308的视场内的表面可以包括从第一视点可见的第一对象302的表面。第一深度值可以与第一对象302的表面上的第一多个点中的每个点与深度传感器308之间的距离相关。例如,第一对象302可以是可包括垂直靠背部分、扶手部分和水平就座部分的椅子。深度传感器308可以从第一视点捕获第一图像402a和对应的第一深度值,使得与垂直靠背部分相比,水平就座部分可能在距离上离深度传感器308更近。因此,第一深度值可以描述从椅子的垂直靠背部分、扶手部分和水平就座部分上的第一多个点中的每个点到深度传感器308的距离值。
48.在404,可以生成第三图像404a。按照实施例,处理器202可被配置为生成对应于与第一对象302相关联的第一深度值的第三图像404a。处理器202可以从深度传感器308接收第一文本格式的第一深度值。例如,第一文本格式可以是但不限于分号分隔值(“.skv”)文件格式。处理器202还可以将第一文本格式的第一深度值转换为第二文本格式。例如,第二文本格式可以是但不限于逗号分隔值(“.csv”)文件格式。处理器202还可以基于第二文本格式生成对应于第一深度值的第三图像404a。在一些实施例中,可以基于第一深度值的第一文本格式来生成第三图像404a,而不转换到第二文本格式。第三图像404a可以是不同的格式,例如(但不限于)可移植网络图形(png)格式、联合图像专家组(jpeg)格式、图形交换格式(gif)格式、位图图像文件格式或标记图像文件格式(tiff)。
49.按照实施例,对于与第一对象302的表面上的第一多个点相关的不同第一深度值,生成的第三图像404a可以包含不同的颜色(即,rgb)。在示例性实施例中,第一对象302的表面上距离深度传感器308最近的点可以包括对于第三图像404a中的对应像素的最暗蓝色阴影,而距离最远的点可以包括对于第三图像404a中的对应像素的最浅蓝色阴影,或者可以包括不同的颜色(比如红色)。当深度传感器308与第一对象302的表面上的第一多个点之间的距离增加时,诸如蓝色之类的颜色可以在生成的第三图像404a中以梯度的形式发生变化(例如强度降低)。可以注意到的是,第三图像404a中指示不同深度值的不同深浅的蓝色只是例子。第三图像404a可以包括不同颜色或不同深浅的各种其他颜色来指示由深度传感器308捕获的第一对象的第一深度值,而不脱离本公开的范围。
50.在实施例中,与由深度传感器308捕获的第一对象302相关联的背景(比如图1中的第一场景110)可以包括另一种颜色,比如第三图像404a中的红色。于是,第三图像404a可以描述由深度传感器308捕获的第一对象302的第一深度信息(或第一深度值)。换句话说,第
三图像404a可以进一步描述与第一对象302可能存在于的第一场景110相关联的深度信息。因此,所公开的系统102可以将对象(即,存在于真实世界中)的由深度传感器308捕获的深度信息表示为图像(比如第三图像)。
51.在406,可以对第一图像402a进行过滤。按照实施例,处理器202可被配置为过滤由深度传感器308捕获的一个或多个第一对象112中的第一对象302的第一图像402a。可以进行过滤以清理第一图像402a,比如除去第一图像402a中与第一对象302相关的任何冗余或不必要的信息。例如,可以模糊第一图像402a的背景。在另一个例子中,可以放大第一对象302以获取第一对象302的特定视图或部分,于是第一图像402a的其他部分可以被滤除。经过过滤的第一图像402a可以被处理器202或3d图形引擎104用于生成图形信息,例如,如在412所述。
52.在408,可以接收跟踪信息。按照实施例,处理器202可被配置为基于手持设备306和深度传感器308在3d空间中的移动,从与深度传感器308相关联的手持设备306接收跟踪信息。手持设备306和深度传感器308可以由用户304在3d空间中(即,围绕图3中所示的第一对象302)移动,以捕获第一图像402a和与第一对象302相关联的第一深度值。例如,可以使深度传感器308在3d空间中移动得更近或更远,以捕获第一对象302。此外,可以使深度传感器308相对于第一对象302在向上方向或向下方向上移动,以捕获第一组图像(未示出)。与深度传感器308连接或集成的手持设备306可以跟踪深度传感器308在3d空间中的移动以生成跟踪信息。
53.跟踪信息可以包括深度传感器308在3d空间中的位置信息(xyz信息)或取向信息(在不同xy方向上的旋转程度)。例如,位置信息可以包括深度传感器308在采用笛卡尔坐标系描述的3d空间中的精确位置(比如xyz坐标)。取向信息可以包括深度传感器308相对于3d空间中的参考轴的旋转角度。例如,在捕获第一图像402a时,深度传感器308可能相对于3d空间中的参考轴成零度角。在另一个例子中,在捕获第一图像402a时,深度传感器308可能相对于3d空间中的参考轴成30度角。
54.在410,可以接收一个或多个用户输入。按照实施例,处理器202还可被配置为从用户304接收一个或多个用户输入,以修改从第一视点捕获的第一图像402a。在示例性场景中,生成的第一图像402a可以被显示在与系统102或3d图形引擎104相关联的显示设备310上。可以基于从用户304接收的一个或多个用户输入来修改显示的第一图像402a。例如,用户304可以经由第一i/o设备114,以一定角度旋转第一图像402a中的第一对象302,以从除第一视点以外的不同视点获得第一对象302的图像。用户304可以经由系统102的第一i/o设备114接收一个或多个用户输入。在另一个例子中,可以使显示的第一对象302的第一图像402a在显示设备310上从一个位置移动到另一个位置,以从与深度传感器308最初可能捕获第一图像402a的第一视点不同的视点获得第一对象302的另一个图像。
55.在412,可以生成图形信息。按照实施例,处理器202可被配置为基于接收到的跟踪信息,生成与(一个或多个第一对象112中的)第一对象302的第一图像402a对应的图形信息。在一些实施例中,可以基于经由第一i/o设备114从用户304接收到的一个或多个用户输入,从第一图像402a(即,在406过滤后的第一图像)生成图形信息。图形信息可以包括或对应于从可不同于第一视点的一个或多个第二视点看的第一对象302。
56.按照实施例,系统102还可以包括3d图形引擎104,3d图形引擎104可被配置为基于
所接收到的跟踪信息和/或基于从第一i/o设备114接收到的一个或多个用户输入,从一个或多个第二视点生成与一个或多个第一对象112中的第一对象302对应的图形信息。生成的图形信息可以显示在与系统102相关联的显示设备310上。于是,3d图形引擎104可以允许从不同的视点生成在真实环境中没有被深度传感器308直接捕获(如图3中所示)的第一对象302的图形信息。
57.按照实施例,图形信息可以包括但不限于一个或多个第二图像、点云数据、体素集、三维(3d)网格、视频信息、las(laser)格式数据或专有格式数据。一个或多个第二图像可以对应于从一个或多个第二视点看的可包括第一对象302的颜色信息的图像。例如,图形信息可以包括第一图形信息412a、第二图形信息412b、第三图形信息412c和第四图形信息412d。第一图形信息412a可以对应于从可不同于第一视点的第二视点看的第一对象302的一个或多个第二图像中的图像。例如,第一图形信息412a可以指示第一对象302的第一图像402a的水平翻转版本。第二图形信息412b可以对应于从可不同于第一视点和第二视点的第三视点(即,一个或多个第二视点中的视点)看的一个或多个第二图像中的图像。例如,如图4a中所示,第二图形信息412b可以指示第一对象302的第一图像402a的旋转和调整大小的版本。因此,系统102的3d图形引擎104可以基于所接收到的跟踪信息和/或基于经由第一i/o设备114从用户304接收到的一个或多个用户输入,生成对应于第一对象302的多个图像(比如,一个或多个第二图像)。例如,3d图形引擎104可以接收显示设备310上的用户输入,以改变第一图像402a(即,由深度传感器308从一个视点捕获的图像)的视点(比如旋转、调整大小、平移或移动),从而生成一个或多个第二图像。在另一个例子中,基于手持设备306在3d空间中围绕第一对象302的移动,3d图形引擎104可以基于手持设备306的跟踪信息(即,位置和/或取向信息),改变视点并生成第一对象302的一个或多个第二图像(即,比如指示侧视图的第一图形信息412a)。
58.在实施例中,第三图形信息412c可以对应于与第一对象302相关联的点云数据。点云数据的每个点可以表示第一对象302的表面的点。第四图形信息412d可以对应于与第一对象302相关联的3d网格。第一对象302的3d网格可以表示由系统102的3d图形引擎104生成的第一对象302的3d模型。因此,如图4a中举例所示,所生成的图形信息可以包括从一个或多个第二视点看的第一对象302的表示,所述一个或多个第二视点不同于最初通过深度传感器308在真实环境中捕获第一图像402a的第一视点。所生成的图形信息可以表示与由系统102生成的第一对象302相关的合成数据(或虚拟数据)。在一些实施例中,处理器202可以进一步控制3d图形引擎104描述第一对象302的第一场景110(比如真实世界周围环境)。第一对象302的真实世界周围环境可以由深度传感器308和手持设备306(例如,虚拟现实设备)捕获。3d图形引擎104还可以基于第一对象302的第一图像402a在不同场景(比如虚拟周围环境)中的布置来生成图形信息。
59.在414,可以计算一个或多个第二深度值。按照实施例,处理器202可被配置为基于从一个或多个第二视点(在412)生成的图形信息,计算与一个或多个第一对象112中的第一对象302相关联的一个或多个第二深度值。在一些实施例中,一个或多个第二深度值中的每一个可以指示深度传感器308与所生成的一个或多个第二图像(或图形信息)中的从一个或多个第二视点捕获的第一对象302的表面上的第二多个点之间的深度信息。一个或多个第二深度值可以与图形信息中第一对象302的表面上的第二多个点中的每个点与深度传感器
308之间的距离相关。
60.按照实施例,处理器202可被配置为在第一时间实例从手持设备306接收跟踪信息中的深度传感器308的第一位置信息或第一取向信息中的至少一个。深度传感器308的第一位置信息或第一取向信息可以对应于在第一时间实例,深度传感器308在3d空间中的初始或参考位置和/或取向(例如,就笛卡尔坐标系而言)。例如,第一时间实例可以与从深度传感器308捕获第一对象302的第一图像402a和第一深度值(即,如在402和图3中所述)的时间实例相关。因此,第一位置信息和/或第一取向信息可以指示在捕获第一对象302的第一图像402a时手持设备306或深度传感器308的参考位置和/或取向。
61.处理器202还可被配置为在第二时间实例从手持设备306接收跟踪信息中的第二位置信息或第二取向信息中的至少一个。第二时间实例可以是手持设备306和深度传感器308在3d空间中移动的时间实例,或者可以是经由第一i/o设备114接收到用户输入以修改(即,旋转、调整大小、平移或移动)显示在显示设备310上的第一对象302的时间实例。于是,在第二时间实例,处理器202可以识别手持设备306的位置/取向的变化和/或识别修改所显示对象的用户输入的变化。
62.按照实施例,处理器202或3d图形引擎104还可被配置为基于在第一时间实例的第一位置信息或第一取向信息(即,参考位置/取向),并且基于在第二时间实例的第二位置信息或第二取向信息,计算与一个或多个第一对象112中的第一对象302相关联的一个或多个第二深度值。因此,可以基于深度传感器308在3d空间中的位置和/或取向相对于深度传感器308的参考位置/取向(即,在捕获第一对象302的第一深度值(在402)的第一时间实例跟踪的位置/取向)的变化,计算一个或多个第二深度值。于是,可以使跟踪信息的变化同步,以从不同于第一视点的一个或多个第二视点生成图形信息和第二深度值。由3d图形引擎104从不同的视点(例如侧视图或后视图)生成图形信息(即,第二图像)和第二深度值可以称为从不同于深度传感器308的虚拟传感器捕获第一对象302。由手持设备306检测深度传感器308在3d空间中的位置信息和/或取向信息的变化可以精确地提供虚拟传感器与从一个或多个第二视点看的第一对象302的表面上的第二多个点中的每个点之间的距离(即,第二深度值)。
63.在另一个实施例中,处理器202可以接收对于显示在显示设备310上的第一图像402a的一个或多个用户输入,以生成图形信息(即,如在412所述)。处理器202还可以基于在捕获第一图像402a期间计算的第一深度值,以及进一步基于作为一个或多个用户输入对第一图像402a进行的修改来计算一个或多个第二深度值。例如,为旋转显示在显示设备310上的第一对象302的第一图像402a而提供的用户输入可以被处理器或3d图形引擎104用于基于原始的第一深度值和旋转输入(即,以度为单位)来计算第二深度值。
64.按照实施例,处理器202还可被配置为从由深度传感器308捕获的第一图像402a中提取背景信息。背景信息可以包括与第一对象302的周围环境(比如第一场景110)相关的信息。第一场景110的背景信息可以包括但不限于背景对象或背景场景(包括几个对象)。处理器202可以将背景信息连同第一图像402a一起提供给系统102的3d图形引擎104,以计算第二深度值。
65.处理器202或3d图形引擎104可以基于背景信息来计算与第一对象302相关联的一个或多个第二深度值。在深度传感器308移动(即,通过跟踪信息跟踪)或第一对象302移动
(即,基于用户输入)的某些情况下,背景信息可能保持不变。在第一对象302的背景静止不变的这种情况下,处理器202可以基于第一深度值以及跟踪信息和/或用户输入的变化来计算第二深度值。然而,在背景信息发生任何变化的情况下,处理器202可以确定第一对象302与背景对象或场景之间的距离。在一些实施例中,处理器202或3d图形引擎104还可以从用户304接收一个或多个用户输入,以更改显示在显示设备310上的背景中的第一对象302的位置,这可能导致背景或第一对象302与背景对象或场景之间的距离的变化。处理器202还可以基于所接收到的跟踪信息、用于修改所显示的第一对象302的用户输入和/或背景信息,计算与第一对象302相关联的一个或多个第二深度值。
66.在416,可以生成一个或多个第四图像。按照实施例,处理器202可被配置为生成与计算的一个或多个第二深度值对应的一个或多个第四图像,所述计算的一个或多个第二深度值与一个或多个第一对象112中的第一对象302相关联。从一个或多个第二深度值生成一个或多个第四图像可以类似于例如如在图4a的404所述的从第一深度值生成第三图像404a。在一些实施例中,对于与第一对象302的表面上的第二多个点相关的一个或多个第二深度值中的不同深度值,生成的一个或多个第四图像可能包括不同的颜色(即,rgb)。类似于第三图像404a,一个或多个第四图像可能是不同的格式,例如(但不限于)可移植网络图形(png)格式、联合图像专家组(jpeg)格式、图形交换格式(gif)格式、位图图像文件格式或标记图像文件格式(tiff)。
67.如图4b中所示,一个或多个第四图像可以是一组图像416a-416d(比如图像416a、图像416b、图像416c和图像416d)。对于不同的深度值(即,在414计算的第二深度值),该组图像416a-416d中的每一个可以包括不同的颜色。例如,当与3d图形引擎104相关的虚拟传感器与第一对象302的表面上的第二多个点之间的距离增加时,颜色,比如蓝色的深浅可以在生成的一个或多个第四图像中以梯度的形式发生变化(例如,降低)。如图4a-图4b中所示,图像416a可以描述对应于第一图形信息412a的深度值,而图像416b可以描述对应于第二图形信息412b的深度值。类似地,图像416c可以描述对应于第三图形信息412c的深度值,而图像416d可以描述对应于第四图形信息412d的深度值。在实施例中,该组图像416a-416d可以对应于对于在真实环境中从一个视点从深度传感器308捕获的第一图像402a(即,真实数据),由所公开的系统102(包括3d图形引擎104)从各个视点生成的虚拟图像或虚拟数据。
68.在418,可以生成训练数据集420。按照实施例,处理器202可被配置为生成用于训练神经网络模型204a的训练数据集116。训练数据集420可以包括第一图像402a(即,在402由深度传感器308捕获)与第三图像404a(即,在404从第一深度值生成)的第一组合。训练数据集420还可以包括对应于图形信息(即,在412由3d图形引擎104生成)的一个或多个第二图像与对应于一个或多个第二深度值的一个或多个第四图像(即,在416生成)的第二组合。在图4b中,示出了由所公开的系统102生成的训练数据集420。
69.训练数据集420可以包括第一组图像420a,第一组图像420a可以是第一图像402a与第三图像404a的第一组合。第一组图像420a可以是可基于其训练神经网络模型204a的一组配对图像。例如,可以针对第一图像402a(即,由深度传感器308在真实环境中捕获)与对于第一深度值(即,在捕获第一图像402a时由深度传感器308捕获)生成的第三图像404a之间的关系或映射,训练神经网络模型204a。在实施例中,可以针对第一图像402a(即,由深度传感器308在真实环境中捕获)与第一深度值(即,在捕获第一图像402a时由深度传感器308
捕获)之间的关系或映射,训练神经网络模型204a。当可以提供第一图像402a或具有与第一图像402a相似的特征的新图像,作为经过训练的神经网络模型204a的输入时,可以训练神经网络模型204a预测第一深度值。
70.训练数据集420还可以包括作为第二组合的第二组图像420b、第三组图像420c、第四组图像420d和第五组图像420e(如图4b中所示)。第二组图像420b可以包括第一图形信息412a和可以描述对应于第一图形信息412a的深度值的图像416a。第三组图像420c可以包括第二图形信息412b和可以描述对应于第二图形信息412b的深度值的图像416b。第四组图像420d可以包括第三图形信息412c和可以描述对应于第三图形信息412c的深度值的图像416c。第五组图像420e可以包括第四图形信息412d和可以描述对应于第四图形信息412d的深度值的图像416d。在实施例中,第二组图像420b、第三组图像420c、第四组图像420d、以及第五组图像420e可以对应于一个或多个第二图像与一个或多个第四图像的第二组合中的每一个,所述一个或多个第二图像对应于图形信息,所述一个或多个第四图像对应于由系统102的3d图形引擎104生成的一个或多个第二深度值。在一些实施例中,第二组图像420b、第三组图像420c、第四组图像420d和第五组图像420e可以被称为一组未配对图像,使得一个或多个第二图像(或图形信息)中的每一个可以由系统102基于真实数据(即,由深度传感器308在真实环境中捕获的第一图像402a)合成地或虚拟地生成。由所公开的系统102生成的这种未配对图像(即,虚拟数据)可以与真实数据极为相似,因为虚拟数据是从不同视点针对相同对象生成的。于是,对于由深度传感器308从一个视点针对不同对象捕获的每个第一图像,所公开的系统102可以从不同视点对于相同对象生成多个第二图像(或图形信息),例如,大量的第二图像。系统102还可以包括不同对象的第一图像和对应的第一深度值(即,第三图像404a);并且包括从不同视点看的对象的多个第二图像和对应的第二深度值(即,第四图像)作为训练神经网络模型204a的大型训练数据集。经过训练的神经网络模型204a可以用于预测可输入到经过训练的神经网络模型204a的图像(比如计算机生成的图像(cgi))的深度值(不需要深度传感器)。因此,经过训练的神经网络模型204a可以用于基于输入图像提供或预测深度信息,而不依赖于实时的深度传感器。由所公开的系统102(包括3d图形引擎104)提供的大量第二图像(即,图形信息)可以提供大型训练数据集,以提高经过训练的神经网络模型204a的预测精度。此外,从各个视点生成图形信息(即,在412所述)来增加训练数据集可能成本低廉,因为可能不需要在不同的位置或视点部署深度传感器308(或类似的昂贵的深度传感器),以在真实环境下捕获深度值的大型数据集。
71.在示例性场景中,训练数据集420可以被提供给神经网络模型204a。可以将训练数据集420的第一图像402a、第一图形信息412a、第二图形信息412b、第三图形信息412c和第四图形信息412d中的每一个提供给神经网络模型204a,以视为神经网络模型204a的输入。可以提供训练数据集420的第三图像404a、图像416a、图像416b、图像416c和图像416d(即,描述特定对象的对应深度值的所有图像)中的每一个,以视为用于神经网络模型204a的训练的对应输出(即,对于每个相应的输入图像)。可以训练神经网络模型204a建立每个输入图像和输出图像(即,与深度值相关)之间的关系或映射。在一些实施例中,可以针对训练数据集训练神经网络模型204a,所述训练数据集可以包括第一图像312与第一深度值的第一组合,并且还包括对于不同对象的一个或多个第二图像(对应于图形信息)和一个或多个第二深度值的第二组合。经过训练的神经网络模型204a可以自动预测提供给经过训练的神经
网络模型204a的输入图像(即,与针对其训练神经网络模型204a的第一图像312或第二图像之一相似的输入图像)的深度值(即,第一深度值或第二深度值之一)。
72.尽管示图400被例示为离散的操作,比如402、404、406、408、410、412、414、416和418,然而,在某些实施例中,取决于特定的实现,这样的离散操作可以被进一步划分成另外的操作,组合成更少的操作,或者被删除,而不影响所公开实施例的本质。
73.图5是图解说明按照本公开的实施例的用于生成用于深度测量的训练数据集的示例性方法的流程图。结合图1、图2、图3、图4a和图4b的要素来说明图5。参考图5,图中示出了流程图500。流程图500的示例性方法可以由任何计算系统执行,例如由图1的系统102或图2的处理器202执行。流程图500的示例性方法可以始于502,然后转到504。
74.在504,可以控制深度传感器106从第一视点捕获一个或多个第一对象112的第一图像312以及与一个或多个第一对象112相关联的第一深度值。按照实施例,处理器202可被配置为控制深度传感器106从第一视点捕获一个或多个第一对象112的第一图像以及与一个或多个第一对象112相关联的第一深度值。第一图像312可以包括一个或多个第一对象112的颜色信息(即,rgb)。例如,在图4a-图4b的402描述了(从第一视点)捕获一个或多个第一对象112的第一图像312以及与一个或多个第一对象112相关联的第一深度值的深度传感器106的控制。
75.在506,可以生成对应于与一个或多个第一对象112相关联的第一深度值的第三图像404a。按照实施例,处理器202可被配置为生成对应于第一深度值的第三图像404a,例如,如在图4a-图4b的404所述。
76.在508,可以基于与深度传感器106相关联的手持设备108和深度传感器106在3d空间中的移动,从手持设备108接收跟踪信息。按照实施例,处理器202可被配置为基于与深度传感器106相关联的手持设备108和深度传感器106在3d空间中的移动,从手持设备108接收跟踪信息。跟踪信息可以指示深度传感器106在3d空间中的位置信息或取向信息中的至少一个。例如,在图4a-图4b的408说明了跟踪信息的接收。控制可以转到512。
77.在510,可以接收一个或多个用户输入以修改从第一视点捕获的第一图像。按照实施例,处理器202可被配置为经由第一i/o设备114接收一个或多个用户输入,以修改第一图像402a,例如,如在图4a-图4b的410所述。
78.在512,可以基于所接收到的跟踪信息和/或基于所接收到的一个或多个用户输入,生成对应于一个或多个第一对象112的图形信息。按照实施例,处理器202可被配置为基于所接收到的跟踪信息和/或基于所接收到的一个或多个用户输入,生成对应于一个或多个第一对象112的图形信息,例如,如在图4a-图4b的412所述。
79.在514,可以基于从一个或多个第二视点生成的图形信息,计算与一个或多个第一对象112相关联的一个或多个第二深度值。按照实施例,处理器202可被配置为基于从一个或多个第二视点生成的图形信息,计算与一个或多个第一对象112相关联的一个或多个第二深度值。例如,在图4a-图4b的414说明了一个或多个第二深度值的计算。
80.在516,可以生成对应于所计算的(即,与一个或多个第一对象112相关联的)一个或多个第二深度值的一个或多个第四图像。按照实施例,处理器202可被配置为生成与所计算的一个或多个第二深度值对应的一个或多个第四图像,所述一个或多个第二深度值与一个或多个第一对象112相关联。例如,在图4a-图4b的416说明了一个或多个第四图像的生
成。
81.在518,可以生成训练数据集116。按照实施例,处理器202可被配置成为神经网络模型204a生成训练数据集116,训练数据集116可以包括第一图像312与对应于第一深度值的第三图像404a的第一组合,并且可以包括一个或多个第二图像(对应于图形信息)与对应于一个或多个第二深度值的一个或多个第四图像的第二组合。例如,在图4a-图4b的418说明了训练数据集116的生成。控制可以转到结束。
82.尽管流程图500图解说明了离散的操作,比如504、506、508、510、512、514、516和518,然而本公开不限于此。因而,在某些实施例中,取决于特定的实现,这样的离散操作可以被进一步划分成另外的操作,组合成更少的操作,或者被删除,而不影响所公开实施例的本质。
83.本公开的各个实施例可以提供上面存储可由机器和/或计算机(例如系统102)执行的指令的非临时性计算机可读介质和/或存储介质。所述指令可以使机器和/或计算机(例如系统102)执行操作,所述操作包括控制深度传感器(比如深度传感器106)从第一视点捕获一个或多个第一对象(比如一个或多个第一对象112)的第一图像(比如第一图像312)以及与一个或多个第一对象112相关联的第一深度值。第一图像312可以包括一个或多个第一对象112的颜色信息。所述操作还可以包括基于与深度传感器106相关联的手持设备108和深度传感器106在三维(3d)空间中的移动,从手持设备(比如手持设备108)接收跟踪信息。跟踪信息可以指示深度传感器106在3d空间中的位置信息或取向信息中的至少一个。所述操作还可以包括基于所接收到的跟踪信息,生成与一个或多个第一对象112对应的图形信息。图形信息可以包括从不同于第一视点的一个或多个第二视点看的一个或多个第一对象112。所述操作还可以包括基于从一个或多个第二视点生成的图形信息,计算与一个或多个第一对象112相关联的一个或多个第二深度值。所述操作还可以包括为神经网络模型(比如神经网络模型204a)生成训练数据集(比如训练数据集116),所述训练数据集可以包括第一图像312与第一深度值的第一组合,以及对应于图形信息的一个或多个第二图像与一个或多个第二深度值的第二组合。
84.本公开的示例性方面可以包括一种系统(比如系统102),所述系统可以包括处理器(比如处理器202)。处理器202可被配置为控制深度传感器(比如深度传感器106)从第一视点捕获一个或多个第一对象(比如一个或多个第一对象112)的第一图像(比如第一图像312)以及与一个或多个第一对象112相关联的第一深度值。第一图像312可以包括一个或多个第一对象112的颜色信息。处理器202还可被配置为基于与深度传感器106相关联的手持设备108和深度传感器106在三维(3d)空间中的移动,从手持设备(比如手持设备108)接收跟踪信息。跟踪信息可以指示深度传感器106在3d空间中的位置信息或取向信息中的至少一个。处理器202还可被配置为基于所接收到的跟踪信息,生成对应于一个或多个第一对象112的图形信息。图形信息可以包括从不同于第一视点的一个或多个第二视点看的一个或多个第一对象112。处理器202还可被配置为基于从一个或多个第二视点生成的图形信息,计算与一个或多个第一对象112相关联的一个或多个第二深度值。处理器202还可被配置成为神经网络模型(例如神经网络模型204a)生成训练数据集(比如训练数据集116),所述训练数据集可以包括第一图像312与第一深度值的第一组合,并且包括对应于图形信息的一个或多个第二图像与一个或多个第二深度值的第二组合。
85.按照实施例,图形信息可以对应于以下中的至少一个:一个或多个第二图像、点云数据、体素集、三维(3d)网格、视频信息、las(laser)格式数据或专有格式数据。
86.按照实施例,处理器202还可被配置为从深度传感器106接收第一文本格式的第一深度值。处理器202还可以将第一文本格式的第一深度值转换为第二文本格式。处理器202可以基于第二文本格式生成对应于第一深度值的第三图像404a。
87.按照实施例,处理器202还可被配置为生成对应于与一个或多个第一对象112中的每一个相关联的第一深度值的第三图像404a。处理器202还可以生成与计算的一个或多个第二深度值对应的一个或多个第四图像,所述计算的一个或多个第二深度值与一个或多个第一对象112相关联。处理器202还可以为神经网络模型204a生成训练数据集116,训练数据集116可以包括第一图像312与对应于第一深度值的第三图像404a的第一组合,并且包括对应于图形信息的一个或多个第二图像与对应于一个或多个第二深度值的一个或多个第四图像的第二组合。
88.按照实施例,对于与一个或多个第一对象112中的每一个相关联的相应第一深度值和一个或多个第二深度值中的不同深度值,所生成的第三图像404a和一个或多个第四图像中的每一个可以包括不同的颜色。
89.按照实施例,第一深度值可以指示深度传感器106与从第一视点捕获的一个或多个第一对象112的表面上的第一多个点之间的深度信息。此外,一个或多个第二深度值中的每一个可以指示深度传感器106与所生成的一个或多个第二图像中从一个或多个第二视点捕获的一个或多个第一对象112的表面上的第二多个点之间的深度信息。
90.按照实施例,深度传感器106可以是以下之一:飞行时间(tof)传感器、光检测和测距(lidar)传感器、立体图像传感器或结构光传感器。
91.按照实施例,处理器202还可被配置为在第一时间实例从手持设备108接收跟踪信息中的深度传感器106的第一位置信息或第一取向信息中的至少一个。处理器202还可以在第二时间实例从手持设备108接收跟踪信息中的深度传感器106的第二位置信息或第二取向信息中的至少一个。处理器202还可以基于在第一时间实例接收到的跟踪信息中所包含的第一位置信息或第一取向信息中的至少一个,并且基于在第二时间实例接收到的跟踪信息中所包含的第二位置信息或第二取向信息中的至少一个,计算与一个或多个第一对象112相关联的一个或多个第二深度值。
92.按照实施例,处理器202还可被配置为从由深度传感器106捕获的第一图像312中提取背景信息。处理器202还可以基于所接收到的跟踪信息和所提取的背景信息,计算与一个或多个第一对象112相关联的一个或多个第二深度值。
93.按照实施例,系统102还可以包括3d图形引擎104。3d图形引擎104可被配置为基于所接收到的跟踪信息,从一个或多个第二视点生成与一个或多个第一对象112对应的图形信息。
94.按照实施例,处理器202可被配置为接收一个或多个用户输入,以修改从第一视点捕获的第一图像312。处理器202还可以基于所接收到的一个或多个用户输入,从一个或多个第二视点生成对应于一个或多个第一对象112的图形信息。
95.按照实施例,处理器202还可被配置为过滤由深度传感器106捕获的一个或多个第一对象112的第一图像312。处理器202还可以基于过滤的一个或多个第一对象112的第一图
像312和所接收到的跟踪信息,生成与一个或多个第一对象112对应的图形信息。
96.本公开可以用硬件或者硬件和软件的组合来实现。本公开可以以集中方式在至少一个计算机系统中,或者以其中不同的元件可分布在几个互连的计算机系统上的分布式方式实现。适于执行本文中所述的方法的计算机系统或其他装置可能是合适的。硬件与软件的组合可以是具有计算机程序的通用计算机系统,所述计算机程序在被加载和执行时,可以控制所述计算机系统,使得所述计算机系统执行本文中所述的方法。本公开可以用包括还进行其他功能的集成电路的一部分的硬件来实现。
97.本公开还可以嵌入到计算机程序产品中,所述计算机程序产品包括使得能够实现本文中所述的方法的所有特征,并且当被载入计算机系统中时能够执行这些方法。在本上下文中,计算机程序意味着一组指令的采用任何语言、代码或符号的任意表达,所述一组指令旨在使具有信息处理能力的系统直接地或者在下列之一或两者之后进行特定功能:a)转换成其他语言、代码或符号;b)以不同的材料形式进行再现。
98.虽然参考某些实施例说明了本公开,但是本领域技术人员会理解的是,在不脱离本公开的范围的情况下可以进行各种更改,并且可以替换等同物。另外,可以进行许多修改以使特定情况或材料适应本公开的教导而不脱离其范围。于是,本公开并不限于所公开的特定实施例,相反本公开将包括落入所附权利要求的范围内的所有实施例。
再多了解一些

本文用于创业者技术爱好者查询,仅供学习研究,如用于商业用途,请联系技术所有人。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献