从图像序列中的纹理重建的制作方法

文档序号:13451349阅读:199来源:国知局
从图像序列中的纹理重建的制作方法

优先权申明

本申请要求2015年9月17日递交的第14/857,620号美国非临时专利申请和2015年5月14日递交的第62/161,755号美国临时专利申请的优先权,所述专利申请的内容以引用的方式全文并入。

本发明大体上涉及三维(3d)模型产生。



背景技术:

技术的进步已经带来更小且更强大的计算装置。举例来说,当前存在多种便携式个人计算装置,包含无线电话,例如,移动和智能电话、平板计算机和膝上型计算机,其体积小,重量轻,且便于用户携带。这些装置可经由无线网络传送话音和数据包。另外,许多此类装置并入有额外功能性,例如,数字静态相机、数码摄像机、数字记录器和音频文件播放器。并且,此类装置可处理可执行指令,所述指令包含软件应用程序,例如,可用于上网的网页浏览器应用程序。因而,这些装置可以包含大量计算能力。

无线电话、无人驾驶运载工具(例如,无人机)、机器人、飞机、汽车、固定式相机、个人相机和其它装置可经配置以俘获图像。此类图像可用以产生对象的三维(3d)模型。一般来说,用于产生3d模型的装置并不相对于俘获图像的速率而实时或近实时产生3d模型。实际上,图像帧的序列(例如,由相机)俘获,且(例如,同时在处理系统,例如计算机处)将所述图像帧的序列随后作为群组处理以产生3d模型。如果所述图像帧的序列不充分或不足以产生完整的3d模型,那么此类不充分或不足可能保持不被注意,直到完成处理以产生3d模型之后为止。在此情况下,可能产生不完整或不精确的3d模型。为了产生更完整或更精确的3d模型,可俘获并处理对象的图像的新的序列。



技术实现要素:

根据所揭示的技术的一个实施方案,一种设备包含接口电路系统,所述接口电路系统经配置以接收对象的图像帧。所述图像帧与对象的三维扫描相关联。所述设备还包含经配置以扫描图像帧的序列的第一图像帧的处理器。所述处理器进一步经配置以基于第一图像帧的特征确定灰度阈值并且基于灰度阈值识别第一图像帧中的灰色像素候选项。所述处理器还可经配置以基于色度调适变换估计调节第一图像帧中的每个像素的像素值。所述色度调适变换估计是基于灰色像素候选项的。所述灰度阈值可以针对图像帧的序列中的每个图像帧计算。

根据所公开的技术的另一实施方案,用于调节图像帧之间的像素色彩的方法包含在处理器处扫描图像帧的序列的第一图像帧。所述方法还包含基于第一图像帧的特征确定灰度阈值并且基于灰度阈值识别第一图像帧中的灰色像素候选项。所述方法进一步包含基于色度调适变换估计调节第一图像帧中的每个像素的像素值。所述色度调适变换估计是基于灰色像素候选项的。所述灰度阈值可以针对图像帧的序列中的每个图像帧计算。

根据所公开的技术的另一实施方案,非暂时性计算机可读媒体包含用于调节图像帧之间的像素色彩的指令。所述图像帧与对象的三维扫描相关联。在由处理器执行时所述指令使得所述处理器执行操作。所述操作包含扫描图像帧的序列的第一图像帧。所述操作还包含基于第一图像帧的特征确定灰度阈值并且基于灰度阈值识别第一图像帧中的灰色像素候选项。所述操作进一步包含基于色度调适变换估计调节第一图像帧中的每个像素的像素值。所述色度调适变换估计是基于灰色像素候选项的。所述灰度阈值可以针对图像帧的序列中的每个图像帧计算。

根据所公开的技术的另一实施方案,一种设备包含用于扫描图像帧的序列的第一图像帧的装置。所述设备还包含用于基于第一图像帧的特征确定灰度阈值的装置和用于基于灰度阈值识别第一图像帧中的灰色像素候选项的装置。所述设备进一步包含用于基于色度调适变换估计调节第一图像帧中的每个像素的像素值的装置。所述色度调适估计是基于灰色像素候选项的。所述灰度阈值可以针对图像帧的序列中的每个图像帧计算。

根据所公开的技术的另一实施方案,一种设备包含经配置以接收对象的图像帧的序列的接口电路系统。图像帧的序列与对象的三维扫描相关联。所述设备还包含经配置以基于一或多个优先化参数优先化队列中的图像帧的序列的处理器。所述一或多个优先化参数包含图像帧时间戳权重、图像帧模糊权重、图像帧色彩偏移权重、图像帧人脸权重或图像帧有效权重。所述处理器还经配置以从队列中选择第一图像帧。第一图像帧从第一角度描绘特定纹理像素。所述处理器进一步经配置以确定第一图像帧中的特定纹理像素的像素值。所述处理器还经配置以从队列中选择第二图像帧。第二图像帧从第二角度描绘特定纹理像素,并且第二图像帧具有基于一或多个优先化参数与第一图像帧相比更高的优先级。所述处理器进一步经配置以基于第二图像帧中的特定纹理像素的像素值修改特定纹理像素的像素值以产生特定纹理像素的经修改的像素值。

根据所公开的技术的另一实施方案,一种用于确定与对象的三维扫描相关联的纹理像素的像素值的方法包含在处理器处优先化队列中的图像帧的序列,其中图像帧的序列是从图像俘获装置中俘获的,并且其中图像帧的序列是基于一或多个优先化参数优先化的。所述一或多个优先化参数包含图像帧时间戳权重、图像帧模糊权重、图像帧色彩偏移权重、图像帧人脸权重或图像帧有效权重。所述方法还包含从队列中选择第一图像帧。第一图像帧从第一角度描绘特定纹理像素。所述方法还包含确定第一图像帧中的特定纹理像素的像素值。所述方法进一步包含从队列中选择第二图像帧。第二图像帧从第二角度描绘特定纹理像素,并且第二图像帧具有基于一或多个优先化参数与第一图像帧相比更高的优先级。所述方法还包含基于第二图像帧中的特定纹理像素的像素值修改特定纹理像素的像素值以产生特定纹理像素的经修改的像素值。

根据所公开的技术的另一实施方案,一种非暂时性计算机可读媒体包含用于确定与对象的三维扫描相关联的纹理像素的像素值的指令。在由处理器执行时所述指令使得所述处理器执行操作。所述操作包含优先化队列中的图像帧的序列,其中图像帧的序列是从图像俘获装置中俘获的,并且其中图像帧的序列是基于一或多个优先化参数优先化的。所述一或多个优先化参数包含图像帧时间戳权重、图像帧模糊权重、图像帧色彩偏移权重、图像帧人脸权重或图像帧有效权重。所述操作还包括从队列中选择第一图像帧。第一图像帧从第一角度描绘特定纹理像素。所述操作还包含确定第一图像帧中的特定纹理像素的像素值。所述操作进一步包含从队列中选择第二图像帧。第二图像帧从第二角度描绘特定纹理像素,并且第二图像帧具有基于一或多个优先化参数与第一图像帧相比更高的优先级。所述操作还包含基于第二图像帧中的特定纹理像素的像素值修改特定纹理像素的像素值以产生特定纹理像素的经修改的像素值。

根据所公开的技术的另一实施方案,一种设备包含用于优先化队列中的图像帧的序列的装置。图像帧的序列是从图像俘获装置中俘获的。图像帧的序列是基于一或多个优先化参数优先化的。所述一或多个优先化参数包含图像帧时间戳权重、图像帧模糊权重、图像帧色彩偏移权重、图像帧人脸权重或图像帧有效权重。所述设备还包含用于从队列中选择第一图像帧的装置。第一图像帧从第一角度描绘特定纹理像素。所述设备进一步包含用于确定第一图像帧中的特定纹理像素的像素值的装置。所述设备还包含用于从队列中选择第二图像帧的装置。第二图像帧从第二角度描绘特定纹理像素。第二图像帧具有基于一或多个优先化参数与第一图像帧相比较高的优先级。所述设备进一步包含用于基于第二图像帧中的特定像素的像素值修改特定像素的像素值以产生特定像素的经修改的像素值的装置。

根据所公开的技术的另一实施方案,一种设备包含经配置以接收与对象的三维扫描相关联的图像帧的序列的接口电路系统。所述设备还包含经配置以基于图像帧的序列产生复合置信度图的处理器。所述复合置信度图包含用于图像帧的序列中的已扫描的像素的像素值。所述处理器进一步经配置以基于复合置信度图识别三维模型的一或多个孔。

根据所公开的技术的另一实施方案,一种用于与对象的三维扫描相关联的纹理重建的方法包含在处理器处扫描由图像俘获装置在不同三维视点处俘获的图像帧的序列。所述方法还包含基于图像帧的序列产生复合置信度图。所述复合置信度图包含用于图像帧的序列中的已扫描的像素的像素值。所述方法进一步包含基于复合置信度图识别三维模型的一或多个孔。

根据所公开的技术的另一实施方案,一种非暂时性计算机可读媒体包含用于与对象的三维扫描相关联的纹理重建的指令。在由处理器执行时所述指令使得所述处理器执行操作。所述操作包含扫描由图像俘获装置在不同三维视点处俘获的图像帧的序列。所述操作还包含基于图像帧的序列产生复合置信度图。所述复合置信度图包含用于图像帧的序列中的已扫描的像素的像素值。所述操作进一步包含基于复合置信度图识别三维模型的一或多个孔。

根据所公开的技术的另一实施方案,一种设备包含用于俘获与对象的三维扫描相关联的图像帧的序列的装置和用于基于图像帧的序列产生复合置信度图的装置。所述复合置信度图包含用于图像帧的序列中的已扫描的像素的像素值。所述设备进一步包含用于基于复合置信度图识别三维模型的一或多个孔的装置。

根据所公开的技术的另一实施方案,一种设备包含处理器和存储可由所述处理器执行以执行操作的指令的存储器。所述操作包含产生相机姿势误差校正抠图。产生相机姿势误差校正抠图包含使用视角关键帧相机信息通过深度剔除呈现深度图。产生相机姿势误差校正抠图还包含基于所呈现的深度图在相机空间中产生外部剪影抠图并且基于所呈现的深度图在相机空间中产生内部剪影抠图。产生相机姿势误差校正抠图进一步包含在外部剪影抠图上以及在内部剪影抠图上执行衰退混合处理。所述操作还包含产生相机缝隙抠图并且基于相机姿势误差校正抠图和相机缝隙抠图确定特定纹理像素的色彩。

根据所公开的技术的另一实施方案,一种用于确定与对象的三维扫描相关联的纹理像素的色彩的方法包含产生相机姿势误差校正抠图。产生相机姿势误差校正抠图包含使用视角关键帧相机信息通过深度剔除呈现深度图。产生相机姿势误差校正抠图还包含基于所呈现的深度图在相机空间中产生外部剪影抠图并且基于所呈现的深度图在相机空间中产生内部剪影抠图。产生相机姿势误差校正抠图进一步包含在外部剪影抠图上以及在内部剪影抠图上执行衰退混合处理。所述方法还包含产生相机缝隙抠图并且基于相机姿势误差校正抠图和相机缝隙抠图确定特定纹理像素的色彩。

根据所公开的技术的另一实施方案,一种非暂时性计算机可读媒体包含用于确定与对象的三维扫描相关联的纹理像素的色彩的指令。在由处理器执行时,所述指令使得所述处理器执行包含产生相机姿势误差校正抠图的操作。产生相机姿势误差校正抠图包含使用视角关键帧相机信息通过深度剔除呈现深度图。产生相机姿势误差校正抠图还包含基于所呈现的深度图在相机空间中产生外部剪影抠图并且基于所呈现的深度图在相机空间中产生内部剪影抠图。产生相机姿势误差校正抠图进一步包含在外部剪影抠图上以及在内部剪影抠图上执行衰退混合处理。所述操作还包含产生相机缝隙抠图并且基于相机姿势误差校正抠图和相机缝隙抠图确定特定纹理像素的色彩。

根据所公开的技术的另一实施方案,一种设备包含用于产生相机姿势误差校正抠图的装置。所述用于产生相机姿势误差校正抠图的装置包含用于使用视角关键帧相机信息通过深度剔除呈现深度图的装置。所述用于产生相机姿势误差校正抠图的装置还包含用于基于所呈现的深度图在相机空间中产生外部剪影抠图的装置和用于基于所呈现的深度图在相机空间中产生内部剪影抠图的装置。所述用于产生相机姿势误差校正抠图的装置进一步包含用于在外部剪影抠图上以及在内部剪影抠图上执行衰退混合处理的装置。所述设备还包含用于产生相机缝隙抠图的装置和用于基于相机姿势误差校正抠图和相机缝隙抠图确定特定纹理像素的色彩的装置。

附图说明

图1是可操作以基于图像帧的序列产生三维(3d)模型的系统的框图;

图2是说明多个相机姿势的图;

图3是用于调节与对象的3d扫描相关联的图像帧之间的像素色彩的过程图;

图4是用于调节与对象的3d扫描相关联的图像帧之间的像素色彩的方法的流程图;

图5是用于确定与对象的3d扫描相关联的纹理像素的像素值的过程图;

图6说明基于相对于图5所描述的技术修改纹理像素的像素值的实例;

图7是用于确定与对象的3d扫描相关联的纹理像素的像素值的方法的流程图;

图8是用于校正与对象的3d扫描相关联的像素值的过程图;

图9是用于校正与对象的3d扫描相关联的像素值的另一过程图;

图10是用于校正与对象的3d扫描相关联的像素值的方法的流程图;以及

图11是形成用于校正与对象的3d扫描相关联的像素值的相机姿势误差校正抠图的方法的流程图;

图12是包含经配置以执行相对于图1到11所描述的技术、方法和过程中的一或多个的组件的计算装置的框图。

具体实施方式

参考图式描述本发明的特定方面。在描述中,贯穿图式由常见参考标号指示常见特征。下文所描述的技术通常适用于移动装置。然而,将了解所述技术也适用于无人驾驶运载工具(例如,无人机)、机器人、飞机、汽车、固定式相机、个人相机、通信耦合到固定式相机的处理系统、附接到兼容的处理装置(或包含在所述处理装置内)以产生3d模型的其它装置等。

图1是经配置以基于图像帧的序列产生三维(3d)模型的系统100的框图。举例来说,系统100可基于所俘获图像102的集合而产生对象的3d模型。所俘获图像102的集合可包含由图像俘获装置俘获的图像帧的序列,图像俘获装置例如二维(2d)相机、3d相机、3d传感器、深度感测相机(例如,红绿蓝色深度(rgb-d)相机),或经配置以俘获图像的任何其它装置。在替代的实施方案中,多个相机可以由图像俘获装置使用以获得所俘获图像102的集合。图像俘获装置可以与显示器104相关联,所述显示器可基于所俘获图像102呈现(例如,视觉地显示)3d模型的表示。3d模型的所显示的表示可经配置以使得用户能够在3d模型的初始产生之后校正或增强3d模型。

所俘获图像102可包含表示场景的多个图像(例如,二维图像、3d图像、图像数据等)。举例来说,场景可包含一或多个对象以及一或多个对象的背景或其它环境。在特定实施方案中,所俘获图像102中的一或多个可以通过显示器104呈现。举例来说,当用户使用相机俘获场景的图像时,显示器104(和/或另一用户接口,例如,投影仪)可将图像呈现给用户。另外,显示器104(和/或另一用户接口,例如,小键盘或按钮)可经配置以使得用户能够提供与图像相关的输入。举例来说,显示器104可接收用户选择106。用户选择106可使得用户能够选择包含场景内的特定对象的关注区域。

用户选择106可以包含规定围绕场景内的特定对象的限界框的信息。限界框可对应于由用户定义的关注区域。关注区域可以相对于在显示器104处的所俘获图像中的一或多个显示。在108处,由用户定义的关注区域可以由系统100使用以确定限界框。限界框可以基于所俘获图像102与三维模型中的对象(例如,对象的二维表示)相关联。举例来说,限界框可以基于当相机相对于对象移动时的对象跟踪包含或对应于关注区域。

在特定实施方案中,限界框可以三维形式对应于立方或其它几何区域,所述立方或其它几何区域对应于或包含由用户通过显示器104定义的关注区域的部分(例如,体积)。当相机继续俘获图像时,对象跟踪模块112可用于从一个图像帧到后续图像帧跟踪关注区域或对应于关注区域的对象。在110处,基于对象跟踪,限界框可以得到更新。举例来说,当相机移动到更接近或更远离对象时在三维模型的产生期间,限界框的大小参数可以基于对象跟踪得到调节。限界框可以与多个大小参数(例如,(x,y,z)尺寸参数、中心点(x,y,z)坐标和球形半径等)相关联。特定大小参数可以与限界框的特定尺寸相关联或对应于限界框的特定尺寸(例如,长度、宽度或深度)。大小参数的值可以基于确定在一个图像中的限界框中的对象与在先前图像中相比更大或更小而得到调节。

在另一个实例中,可基于在对象跟踪模块112处在限界框内跟踪对象而调节限界框的位置参数的值。为了说明,对象可基于对象相对于场景的移动或对象相对于相机的移动而在所俘获图像102的集合中在图像帧之间移动。位置参数的值可以基于对象在图像的序列中的相对位置而得到调节。

图像的序列可用于确定相机姿势113(例如,相机姿势数据)。举例来说,对象跟踪模块112可经配置以当图像俘获装置与对象的3d扫描相关联时确定图像俘获装置的相机姿势。为了说明,对象跟踪模块112可经配置以使用预测模块来预测图像俘获装置的相机姿势以基于图像帧中的一或多个产生姿势预测数据。对象跟踪模块112还可经配置以测量相机姿势以产生姿势测量数据。另外,对象跟踪模块112可经配置以基于姿势预测数据和姿势测量数据来更新预测模块。

相机姿势113、对象跟踪模块112或这两者可用于确定装置速度。举例来说,在所俘获图像102的产生期间,装置速度检验单元114可基于多个相机姿势、基于与相机姿势相关联的多个时间戳或这两者来确定图像俘获装置相对于对象的速度。举例来说,可基于对相机的对应于每一相机姿势的相对位置和与相机姿势相关联的时间戳的计算而确定所述速度。当速度满足速度阈值时,可经由显示器104呈现通知。

在一些实施方案中,当速度大于或等于速度阈值时速度可满足速度阈值。在替代实施方案中,如果速度处于对应于速度阈值的速度的范围内,那么速度可满足速度阈值。在一些实施方案中,通知可建议应减小图像俘获装置的速度,这是因为速度大于或等于速度阈值。举例来说,可减小速度以便减小误差,或使得能够在特定空间内俘获更多图像以便改善3d模型产生。在另一实施方案中,当速度小于或等于速度阈值时速度可满足速度阈值。举例来说,可增大速度以减小正俘获或用以利用额外处理能力的冗余图像的数量。另外,如果速度历时某一时间周期而小于或等于第二速度阈值,那么可经由显示器104呈现通知,且可暂停对图像帧的序列的俘获。举例来说,第二速度阈值和时间可指示移动的缺少(例如,相机不移动或相对静止)。当相机恢复移动时图像帧的序列的俘获可以恢复或复原。

因此,装置速度检验单元114可计算与图像俘获装置相对于对象的移动相关联的速度,且可基于图像俘获装置的移动的相对速度与速度阈值的比较而经由显示器104选择性地输出通知。响应于确定速度满足速度阈值,系统100可暂停俘获图像的序列,同时向用户提供通知。

相机姿势113也可以由3d模型产生单元115使用以产生3d模型(例如,初始3d模型或“点云”)。异常检测单元116可分析3d模型以确定3d模型是否包含异常(例如,表面的不连续性、缺失或不完整区域等)。如果异常检测单元116在3d模型中检测到异常,那么异常检测单元116可致使显示器104显示识别3d模型中的异常的位置的指示符。替代地,指示器可以通过另一用户接口(例如,音频扬声器、发光二极管(led)等)呈现。异常检测单元116还可将3d模型(或表示3d模型的数据)提供到3d模型优化器118。

3d模型优化器118或异常检测单元116可致使显示器104呈现实现对异常的校正的一或多个可选选项。在一些实施方案中,选项是通过显示器(例如,显示器104)可选的。在其它实施方案中,选项是通过一或多个其它用户接口(例如,扬声器、麦克风、小键盘等)可选的。选项可包含启动改进器单元120以使得系统100能够俘获额外图像以便校正异常的选项。选项还可包含启动孔填充器单元122以(例如,基于孔填充算法而)自动地产生填充数据的选项。如果改进器单元120用于俘获额外图像,那么可将额外图像添加到所俘获图像102以由系统100的其它单元处理来产生新的或更新后的3d模型,其还可由异常检测单元116分析。

3d模型优化器118可经配置以校正与对象的3d扫描相关联的像素值。举例来说,3d模型优化器118可经配置以扫描在不同3d视点处由图像俘获装置所俘获的图像帧的序列。3d模型优化器118还可经配置以基于图像帧的序列产生复合置信度图。复合置信度图可以包含用于图像帧的序列中的已扫描的像素的像素值。3d模型优化器118可进一步经配置以从图像帧的序列中识别遮挡像素(例如,“孔”)并且基于复合置信度图将像素值分配到每个遮挡像素。相对于图8到图11描述了对应于像素值校正技术的额外细节。

3d模型优化器118可产生增强型3d模型(例如,增强型模型数据),所述增强型3d模型可被提供到显示器104。所述增强型3d模型还可被提供到色彩校正单元124、提供到纹理映射单元126,或提供到这两者,以基于3d模型中的所俘获图像102而执行色彩、光和/或纹理校正,以进一步优化3d模型以用于在显示器104处显示。增强型3d模型与在俘获图像的序列期间所产生的3d模型相比包含更多细节。举例来说,更多细节可包含更高分辨率、改进的色彩映射、平滑纹理、平滑边缘等。在一些实施方案中,纹理映射单元126可经配置以执行上文相对于3d模型优化器118所描述的像素校正技术。

纹理映射单元126可经配置以将纹理坐标分配到对象的2d表示。举例来说,纹理映射单元126可经配置以基于对象的不同3d视点产生多个三角形。每个三角形用于构造对象的三维模型。根据一些实施方案,3d视点与对象的3d扫描相关联并且每个三角形对应于对象的不同部分。纹理映射单元126可经配置以将与仅一个三维视点相关联的每个三角形分类为非遮挡三角形并且将与仅一个三维视点无关联的每个三角形分类为遮挡三角形。纹理映射单元126可进一步经配置以按行列格式布置遮挡三角形并且将纹理坐标值分配到遮挡三角形。

纹理映射单元126和/或色彩校正单元124可经配置以确定与对象的3d扫描相关联的纹理像素的色彩。举例来说,单元124、126可经配置以优先化队列中的图像帧的序列(从图像俘获装置中俘获)。如下文所述,可基于一或多个优先化参数优先化图像帧的序列。单元124、126还可经配置以从队列中选择第一图像帧。第一图像帧可从第一角度描绘特定纹理像素。单元124、126还可经配置以确定第一图像帧中的特定纹理像素的像素值。单元124、126还可进一步经配置以从队列中选择第二图像帧。第二图像帧可以从第二角度描绘特定纹理像素。基于一或多个优先化参数,第二图像帧可具有与第一图像帧相比较高的优先级。单元124、126还可经配置以基于第二图像帧中的特定纹理像素的像素值修改特定纹理像素的像素值以产生特定纹理像素的经修改的像素值。相对于图5到7描述了对应于纹理像素色彩确定技术的额外细节。

纹理映射单元126和/或色彩校正单元124可经配置以调节与对象的3d扫描相关联的图像帧之间的像素色彩。举例来说,单元124、126可经配置以扫描图像帧的序列的第一图像帧,并且基于第一图像帧的特征确定灰度阈值以识别第一图像帧中的灰色像素候选项。单元124、126还可经配置以基于色度调适变换估计调节第一图像帧中的每个像素的像素值。色度调适变换估计可以基于与灰色像素候选项相关联的平均像素值确定。相对于图3和4描述了对应于图像帧技术之间的调节像素色彩的额外细节。

图1的系统100可以增强对象的3d模型产生。举例来说,系统100的组件可以改进与扫描用于3d模型产生的对象相关联的相机姿势估计、调节用于产生3d模型的图像帧之间的像素色彩以及修改3d模型的纹理像素的像素值。

参考图2,示出了图1的系统100的操作的说明性实施方案并且一般将其表示为200。在图2中,图像俘获装置202(例如,二维相机、深度感测相机、三维相机等)沿着路径204(例如,弧线)相对于对象210(例如,如图2中所示的杯子)移动。在图像俘获装置202沿着路径204的移动期间,图像俘获装置202位于由相机姿势206a、206b、206c、206d、206e和206f在图2中所说明的各种位置和定向。相机姿势206a到206f对应于产生由图像俘获装置202所俘获的图像帧的序列中的图像帧的图像俘获操作。应注意,图2中所示的相机姿势206a到206f的数量、间隔和定向是仅用于说明而示出,且不应被视为限制性的。举例来说,可按在连续(或邻近)相机姿势之间的不同间隔使用更多相机姿势或更少相机姿势。

基于图像俘获装置202如何围绕对象210移动,路径204可具有任何配置。当图像俘获装置202沿着路径204从与相机姿势206a相关联的位置移动到与相机姿势206f相关联的位置时,可基于相机姿势206a到206f和图像帧的序列而实时或近实时产生对象210的3d点云。举例来说,如207a处所示,在相机姿势206a处(其表示在沿着路径204的第一位置处图像俘获装置202的初始相机姿势)可在图像俘获装置202处产生第一部分3d点云210a。在图像俘获装置202继续沿着路径204移动时,可俘获额外数据且将其用于向局部3d点云添加点。举例来说,如207d处所示,当图像俘获装置202已沿着路径204移动到与相机姿势206d相关联的位置时,可产生更完整的3d点云210d。如207f处所示,在所述图像俘获装置202到达与相机姿势206f相关联的位置之后,可产生完整的3d点云210f。

虽然图2是相对于图像俘获装置202沿着路径204移动以俘获固定对象的图像帧描述的,但是在其它实施方案中,对象(或包含对象的场景)可以相对于固定的图像俘获装置(例如,固定相机)移动以产生图像帧。在其它实施方案中,对象和图像俘获装置202在图像帧的产生期间可以都移动。

参考图3,示出了用于调节与对象的3d扫描相关联的图像帧之间的像素色彩的过程图300。过程图300可以使用图1的纹理映射单元126、图1的色彩校正单元124、图2的图像俘获装置202或其组合来实施。

根据过程图300,在302处,图像俘获装置202可俘获图像帧。举例来说,当图像俘获装置202在相机姿势206a处时,图像俘获装置202可以俘获第一图像帧。在304处,处理器(例如,纹理映射单元126和/或色彩校正单元124)可以扫描第一图像帧并且可基于第一图像帧的特征(例如,统计数据)动态地确定灰度阈值(例如,小于1的值)。

根据一些实施方案,处理器可以基于第一图像帧中略微地偏离的灰色点的第一色度分量值(例如,yuv空间中的u通道值)以及基于第一图像帧中略微地偏离的灰色点的第二色度分量值(例如,yuv空间中的v通道值)来确定第一图像帧的色偏举例来说,第一色度分量值的正平均值和第二色度分量值的负平均值可以指示“较冷”偏差/色温。第一色度分量值的负平均值和第二色度分量值的正平均值可以指示“较暖”偏差/色温。当第一色度分量值和第二色度分量值的平均值相对地接近零时,第一图像帧可以是“中性”图像帧(例如,具有既不较暖也不较冷的偏差的图像帧)。处理器可以基于第一图像帧的色偏动态地确定灰度阈值。举例来说,处理器可以选择至少部分补偿(例如,抵消)第一图像帧的色偏的灰度阈值。

根据另一实施方案,处理器可以使用直方图确定(例如,估计)第一图像帧的色偏以测量在“黄色范围”内的略微地偏离的灰色点与在“蓝色范围”内的略微地偏离的灰色点的比例。举例来说,处理器可以基于直方图确定第一图像帧的色偏,所述直方图指示具有黄色基色调的偏离灰色点与具有蓝色基色调的偏离灰色点的比例。处理器可以基于第一图像帧的色偏确定灰度阈值。举例来说,具有黄色基色调的偏离灰色点的更大的比例可以指示较暖偏差/色温,并且具有蓝色基色调的偏离灰色点的更大的比例可以指示较冷偏差/色温。处理器可以基于第一图像帧的色偏动态地确定灰度阈值。举例来说,处理器可以选择至少部分补偿(例如,抵消)第一图像帧的色偏的灰度阈值。

两个实施方案可以产生与平均化第一图像帧中的每个像素的色度分量值相反用于基于偏离灰色点(例如,偏离灰色像素)估计色偏的相对较快的处理速度。另外,基于偏离灰色点确定色偏可提高精确性,这是因为与基于图像帧中的每个像素确定相比灰色点提供关于色偏的更好的估计。基于偏离灰色点确定色偏还可以提供与基于图像帧的关注区域(roi)中的像素确定色偏相比色偏的更好的估计。

在306处,处理器可以估计灰色像素候选项。举例来说,处理器可以对第一图像帧中的每个像素(或每隔一个像素以用于减少计算,如下文所述)的第一色度值(例如,u通道值)和第二色度值(例如,v通道值)与灰度阈值进行比较。如果特定像素的第一色度值和特定像素的第二色度值满足灰度阈值,那么处理器可将特定像素识别为灰色像素候选项。

在308处,处理器可以基于灰色像素候选项中的每一个的第一色度分量值(例如,u通道值)以及基于灰色像素候选项中的每一个的第二色度分量值(例如,v通道值)确定(例如,计算)平均像素值。在310处,处理器可以估计灰色像素候选项的计算出的平均像素值与对应于参考白光的像素值之间的色度调适变换(cat)。举例来说,可以使用灰色像素候选项的计算出的平均像素值和对应于参考白光的像素值来估计(例如,确定)对应于cat的变换矩阵(m)。

在312处,处理器可基于cat估计(例如,基于变换矩阵(m))调节第一图像帧中的每个像素的像素值。举例来说,变换矩阵(m)可用于将第一图像帧(例如,当前发光体)中的每个像素调节(例如,偏移)到中性发光体。基于变换矩阵调节每个像素可表达为因此,使用cat调节第一图像帧中的每个像素可以基本上减少(例如,移除、补偿、抵消等)第一图像帧的色偏/色温。

在314处,处理器还可经配置以实施提早终止标准,方法是基于将色度分量值平均值与先前色度分量值平均值进行比较来估计误差。举例来说,为了避免冗余迭代,在每个迭代之后处理器可以测量第一图像帧中的“改进”。为了说明,处理器可以存储来自先前迭代(p)的灰色像素候选项的第一色度分量值(up)(例如,u通道值)与第二色度分量值(vp)(例如,v通道值)的平均值。处理器可以从当前迭代(c)的第一色度分量值(uc)和第二色度分量值(vc)的平均值中测量色度分量值(up)、(vp)的欧几里德距离。举例来说,误差(e)表示为其中δu=uc-up,且其中δv=vc-vp。

在316处,如果误差(e)不显著(例如,如果误差小于收敛阈值),那么考虑经调节的像素值已经收敛到精确值且可使用。否则,如果误差显著,那么过程返回到306,其中基于经调节的像素值再次估计灰色像素候选项。因此,处理器可以确定cat估计和与先前迭代相关联的先前cat估计之间的差异,并且可以将差异与收敛阈值进行比较。如果差异未能满足收敛阈值,那么处理器可以基于cat估计偏移随后迭代中的像素值。如果差异满足收敛阈值,那么处理器可以基于随后迭代的特征(例如,统计数据)来确定随后灰度阈值、使用随后灰度阈值来识别随后迭代中的灰色像素候选项以及基于随后cat估计调节随后迭代中的每个像素的像素值。

图3的过程流程图300可以实现精确色偏/色温估计,方法是基于每个图像帧的统计数据动态地估计每个图像帧的灰度阈值。动态地估计灰度阈值还可以减少灰度阈值的手动调整。使用提早终止标准可以额外地提高处理速度。根据一些实施方案,可以进一步提高处理速度,方法是基于灰色像素候选项的“复核板”图案扫描替代的像素。扫描替代的像素可以减少约一半的计算,而基本上保持转换的质量。

参考图4,示出了用于调节与对象的3d扫描相关联的图像帧之间的像素色彩的方法400。方法400可以由图1的纹理映射单元126、图1的色彩校正单元124、图2的图像俘获装置202或其组合执行。

在402处,方法400包含在处理器处扫描图像帧的序列的第一图像帧。举例来说,参考图2和3,当图像俘获装置202在相机姿势206a处时图像俘获装置202可以俘获第一图像帧,并且处理器可以扫描第一图像帧。

在404处,可基于第一图像帧的特征确定灰度阈值以识别第一图像帧中的灰色像素候选项。举例来说,参考图3,处理器可以基于第一图像帧的特征(例如,统计数据)动态地确定灰度阈值(例如,小于1的值)。处理器可以将第一图像帧中的每个像素(或每隔一个像素)的第一色度值(例如,u通道值)和第二色度值(例如,v通道值)与灰度阈值进行比较。如果特定像素的第一色度值和特定像素的第二色度值满足灰度阈值,那么处理器可将特定像素识别为灰色像素候选项。

在406处,可基于cat估计调节第一图像帧中的每个像素的像素值。cat估计可以基于灰色像素候选项。根据一个实施方案,cat估计可以基于灰色像素候选项的平均像素值确定。举例来说,参考图3,处理器可以基于cat估计(例如,基于变换矩阵(m))调节第一图像帧中的每个像素的像素值。变换矩阵(m)可用于将第一图像帧(例如,当前发光体)中的每个像素调节(例如,偏移)到中性发光体。

根据一些实施方案,方法400可以包含基于第一图像帧中的每个偏离灰色点的第一色度分量值和第一图像帧中的每个偏离灰色点的第二色度分量值确定第一图像帧的色偏。方法400还可包含基于第一图像帧的色偏确定灰度阈值。灰度阈值可以至少部分地补偿(例如,抵消)第一图像帧的色偏。

根据一些实施方案,方法400可以包含基于指示具有黄色基色调的偏离灰色点与具有蓝色基色调的偏离灰色点的比例的直方图确定第一图像帧的色偏。方法400还可包含基于第一图像帧的色偏确定灰度阈值。

根据一些实施方案,识别灰色像素候选项可以包含将第一图像帧中的每个像素的第一色度分量值和第二色度分量值与灰度阈值进行比较。如果特定像素的第一色度分量值和特定像素的第二色度值满足灰度阈值,那么第一图像帧中的特定像素可被识别为灰色像素。

根据一些实施方案,方法400可以包含基于灰色像素候选项中的每一个的第一色度分量值和第二色度分量值确定平均像素值。方法400还可包含估计平均像素值与对应于参考白光的像素值之间的cat。

根据一些实施方案,方法400可以包含确定cat估计和与先前迭代相关联的先前cat估计之间的差异。差异可以与收敛阈值进行比较。如果差异未能满足收敛阈值,那么可基于cat估计调节(例如,偏移)随后迭代中的像素值。如果差异满足收敛阈值,那么方法400可以包含基于随后迭代的特征(例如,统计数据)确定随后灰度阈值。随后灰度阈值可用于识别随后迭代中的灰色像素候选项,并且随后cat估计可用于调节随后迭代中的每个像素的像素值。

图4的方法400可以实现精确色偏/色温估计,方法是基于每个图像帧的统计数据动态地估计每个图像帧的灰度阈值。动态地估计灰度阈值还可以减少灰度阈值的手动调整。使用提早终止标准可以额外地提高处理速度。

参考图5和6,示出了用于确定与对象的3d扫描相关联的纹理像素的色彩的过程图500。在过程图500中说明的操作可以使用图1的纹理映射单元126、图1的色彩校正单元124或其组合来实施。图6描绘了确定纹理的实例。

根据过程图500,在502处,处理器(例如,纹理映射单元126和/或色彩校正单元124)可基于一或多个优先化参数将图像帧优先化到队列(例如,优先级队列)中。举例来说,处理器可以按照某一顺序将图像帧存储到队列中,所述顺序为将“最不相关的”图像帧放置在队列的顶部且将“最相关的”图像帧放置在队列的底部。优先化参数可以包含图像帧时间戳权重、图像帧模糊权重、图像帧色彩偏移权重、图像帧人脸权重、图像帧距离权重、图像帧有效权重、一或多个其它参数或其组合。

根据图像帧时间戳权重优先化参数,与稍后俘获的图像帧相比,首先俘获的图像帧可以分配到较高优先级(例如,经分配的较高图像优先级值)。因此,首先俘获的图像帧可以存储在队列的底部处,并且最后俘获的图像帧可以存储在队列的顶部处。为了说明,当图2的图像俘获装置202在相机姿势206a处时所俘获的图像帧可以相对地接近队列的底部,并且当图像俘获装置202在相机姿势206f处时所俘获的图像帧可以在队列的顶部处。

所俘获的第一图像帧可具有较高优先级,这是因为所俘获的第一图像帧可以聚焦在对象上和/或可以俘获对象(例如,人脸)的“重要”特性。在第一图像帧之后所俘获的图像帧可具有较低优先级。举例来说,在第一图像帧之后所俘获的图像帧可具有降低的聚焦质量、降低的分辨率和/或因移动模糊所致的质量缺陷。

根据图像帧模糊权重优先化参数,与具有相对较高程度的模糊的图像帧相比,具有相对较低程度的模糊的图像帧可以分配到较高优先级。因此,具有相对较低程度的模糊的图像帧可以相对地接近队列的底部存储,并且具有相对较高程度的模糊的图像帧可以相对地接近队列的顶部存储。根据图像帧色彩偏移权重优先化参数,与具有相对较大量的施加的色彩校正的图像帧相比,具有相对较小量的施加的色彩校正的图像帧可以分配到较高优先级。因此,具有相对较小量的施加的色彩校正的图像帧可以相对地接近队列的底部存储,并且具有相对较大量的施加的色彩校正的图像帧可以相对地接近队列的顶部存储。

根据图像帧人脸权重优先化参数,与描绘人脸的相对较小部分的图像帧(或从除前端视角以外的视角中)相比,从前端视角中描绘检测到的人脸的相对较大部分(基于面部标志追踪)的图像帧可以分配到较高优先级。因此,从前端视角中描绘人脸的相对较大量的图像帧可以相对地接近队列的底部存储,并且从前端视角中描绘人脸的相对较小量的图像帧可以相对地接近队列的顶部存储。根据图像帧距离权重优先化参数,与从距离对象相对较远距离所俘获的图像帧相比,从距离对象相对较近距离所俘获的图像帧可以分配到较高优先级。因此,从距离对象相对较近距离所俘获的图像帧可以相对地接近队列的底部存储,并且从距离对象相对较远距离所俘获的图像帧可以相对地接近队列的顶部存储。根据图像帧有效权重(例如,离群值权重)优先化参数,可以从纹理映射过程中滤除和排除基于任何其它优先化参数确定为无效的图像帧。

在一些实施方案中,图像优先级(i)基于一或多个参数。作为说明性而非限制性的实例,用于给定图像帧的图像优先级(i)可表达为i=(wt*t)+(wb*b)+(wc*c)+(wf*f)+(wd*d)+v,其中wt是施加到图像帧时间戳权重(t)的加权因数,其中wb是施加到图像帧模糊权重(b)的加权因数,其中wc是施加到图像帧色彩偏移权重(c)的加权因数,其中wf是施加到图像帧人脸权重(f)的加权因数,其中wd是施加到图像帧距离权重(d)的加权因数,并且其中(v)是图像帧有效权重。一旦确定特定图像帧的图像优先级(i)的值,如果值在所确定的范围内,那么特定图像帧就可以被确定为有效。如果值不在所述范围内,那么可以丢弃特定图像帧。

虽然可以使用多个优先化参数,但是为了便于说明,以下描述基于图像帧时间戳权重优先化参数。然而,根据本文中所描述的技术,应理解优先化参数的任何组合可结合彼此使用。

根据过程图500,处理器可以(在504处)选择优先级队列中的最不相关的图像帧,并且(在506处)可以将所选择的图像帧标记为“图像帧a”以开始迭代过程,所述迭代过程通过基于当前迭代中较高优先级图像帧(标记为“a”)的调整来调节基于先前迭代中的较低优先级图像帧(标记为“b”)的纹理。举例来说,处理器可以选择在队列的顶部处的图像帧(例如,当图像俘获装置202在相机姿势206f处时所俘获的图像帧)且将所选择的图像帧标记为“图像帧a”。在508处,处理器可以确定图像帧a中的像素的像素值(例如,计算rgb色彩),并且可以确定图像帧a的每个像素权重(例如,α)。

在510处,处理器可基于图像帧a修改3d模型的现有纹理像素。举例来说,现有纹理像素可以基于与基于优先化参数的图像帧a相比“不太相关”的先前图像帧(例如,“图像帧b”)或者如果图像帧a是第一经处理的图像帧,那么纹理像素可以为“空白”。根据一些实施方案,修改现有纹理像素可以包含用图像帧a中的现有纹理像素的像素值替换图像帧b中的现有纹理像素的像素值。图6中说明替换纹理像素值的说明性实例602。根据另一实施方案,修改现有纹理像素可以包含使用图像帧a中的α(透明度)通道以与图像帧b中的现有纹理像素混合。图6中还说明平均化纹理像素值的说明性实例604。

在512处,在修改纹理像素之后,处理器可基于经修改的纹理像素的像素值产生经修改的图像帧,并且将经修改的图像帧标记为“图像帧b”。在514处,处理器可基于优先化参数确定队列中是否存在“更相关的”图像帧。如果存在更相关的图像帧,那么处理器可以在516处选择队列中的“下一最不”相关的帧并且在506处将所选择的帧标记为“图像帧a”。举例来说,处理器可以选择在队列的顶部处的图像帧(例如,当图像俘获装置202在相机姿势206e处时所俘获的图像帧)且将所选择的图像帧标记为“图像帧a”,并且现有纹理像素可以上文所述的方式修改。在518处,如果不存在更相关的图像帧(例如,如果当图像俘获装置202在相机姿势206a处时,处理器基于所俘获的图像帧修改现有纹理像素),那么处理器可以使用3d模型的现有纹理像素。

图5的过程流程图500可以增加3d模型中的纹理像素基于最相关的图像帧的可能性。举例来说,选择不同优先化参数可以使得处理器能够基于具有所期望的质量的图像帧来产生3d模型。非限制性实例可以是在对象的3d扫描期间相对较早地俘获的图像帧。

参考图7,示出了用于确定与对象的3d扫描相关联的纹理像素的色彩的方法700。方法700可以由图1的纹理映射单元126、图1的色彩校正单元124或其组合来执行。

在702处,方法700包含在处理器处优先化队列中的图像帧的序列。图像帧的序列可以从图像俘获装置中俘获,并且图像帧的序列可以基于一或多个优先化参数优先化。优先化参数可以包含图像帧时间戳权重、图像帧模糊权重、图像帧色彩偏移权重、图像帧人脸权重、图像帧距离权重、图像帧有效权重或其组合。举例来说,参考图5,处理器可基于一或多个优先化参数将图像帧优先化到队列(例如,优先级队列)中。处理器可以按照某一顺序将图像帧存储或分配到队列中的位置中,所述顺序为将“最不相关的”图像帧放置在队列的顶部且将“最相关的”图像帧放置在队列的底部。

在704处,可以选择队列中的第一图像帧。第一图像帧可从第一角度描绘特定纹理像素。举例来说,参考图5,处理器可以选择在队列的顶部处的图像帧(例如,当图像俘获装置202在相机姿势206f处时所俘获的图像帧)且将所选择的图像帧标记为“图像帧a”。

在706处,可以确定第一图像帧中的特定纹理像素的像素值。举例来说,参考图5,处理器可以确定图像帧a中的像素的像素值(例如,计算rgb色彩)并且可以确定图像帧a的每个像素权重(例如,α)。

在708处,可从队列中选择第二图像帧。第二图像帧可以从第二角度描绘特定纹理像素,并且基于一或多个优先化参数,第二图像帧可具有与第一图像帧相比较高的优先级。举例来说,参考图5,处理器可以选择队列中的下一图像帧(例如,当图像俘获装置202在相机姿势206e处时所俘获的图像帧)。

在710处,可基于第二图像帧中的特定纹理像素的像素值修改特定纹理像素的像素值以产生特定纹理像素的经修改的像素值。举例来说,参考图5,处理器可基于当图像俘获装置202在相机姿势206e处时所俘获的图像帧中的特定纹理像素的像素值来修改特定纹理像素。

根据一些实施方案,方法700可以包含产生对象的3d模型(例如,二维表示)。3d模型中的特定纹理像素可具有经修改的像素值。根据一些实施方案,修改特定纹理像素的像素值可以包含用第二图像帧中的特定纹理像素的像素值替换第一图像帧中的特定纹理像素的像素值。根据另一实施方案,修改特定纹理像素的像素值可以包含用第二图像帧中的特定纹理像素的像素值平均化第一图像帧中的特定纹理像素的像素值。

根据另一实施方案,方法700可以包含从队列中选择另一图像帧。基于一或多个优先化参数,另一图像帧可具有与第二图像帧相比较高的优先级。举例来说,另一图像帧可对应于当图像俘获装置202在相机姿势206a、206b、206c或206d处时所俘获的图像帧。方法700还可包含基于另一图像帧中的特定纹理像素的像素值来修改经修改的像素值。

图7的方法700可以增加基于最相关图像帧的3d模型中的纹理像素的可能性。举例来说,选择不同优先化参数可以使得处理器能够基于具有所期望的质量的图像帧来产生3d模型。非限制性实例可以是在对象的3d扫描期间相对较早地俘获的图像帧。

参考图8,示出了用于纹理重建以及用于从输入图像中产生3d模型的纹理的过程图800。在过程图800中说明的操作可以使用图1的3d模型优化器118来实施。

如果图像帧的序列不足以或不适于产生完整的纹理映射3d模型,那么此类不足或不适当可一直不被注意,直至经扫描的数据采集完成且数据处理开始之后。举例来说,3d模型可以包含具有来自其纹理图的缺失或未分配的纹理像素的三角形。缺失的纹理像素通常(但不是始终)对应于没有被俘获的对象的部分。纹理重建过程(例如,“填充”纹理像素的过程)可能易受相机缝隙误差、相机姿势与模型不精确误差和未扫描区域误差(例如,“纹理孔”)的影响。过程图800的一个益处在于对以上所识别问题的容错以及产生具有填充有“最佳猜测”估计的未知纹理区域的高品质纹理图。通过稳健的容错系统,可以实现高品质的结果,而不需要重复俘获过程。

如本文所使用,“孔三角形”对应于具有一或多个缺失纹理像素值的3d模型中的三角形。举例来说,纹理像素可以施加到3d模型的三角形以产生图2的对象210的精确的3d表示。根据过程图800,处理器(例如,3d模型优化器118)可以确定相机姿势、识别对应的图像帧以及基于相机姿势和图像帧产生3d模型。在802处,所产生的3d模型、相机姿势的集合以及相机图像的集合可用作输入。

在804处,处理器可以产生像素权重图以基于相机姿势确定图像帧中的特定像素值的置信度。在806处,处理器还可以产生相机姿势误差校正抠图。相机姿势误差校正抠图可以指示从背景(例如,“壁面”或用户想要从3d模型中擦除的任何东西)中“限定”3d模型中的对象(例如,图2中的杯子)的边界。因为输入相机位置和定向(例如,姿势)可以在数学上是不精确的(或因为3d模型可以包含不精确性),所以对于给定的相机姿势来说,相机输入图像可能并不与3d模型适当地对齐。较差(例如,低)质量纹理图重建和不正确的像素值可能是相机输入图像没有与3d模型适当地对齐的结果。在810处,纹理映射器可以使用相机姿势误差校正抠图来避免使用来自相机输入图像的可能不利地影响纹理图像素值的像素。

在808处,处理器还可以确定相机缝隙抠图。相机缝隙抠图可以指示其中相机截止的“孔”。相机缝隙抠图可以实现“渐进的衰退”和/或位于相对接近于图像帧的边缘处的像素的相对平滑的混合。因此,相机缝隙抠图可以减少“有效”相机像素与“无效”(例如,不存在的)像素之间的“突然变化”的可能性。在810处,纹理映射器可以使用相机缝隙误差校正抠图来避免使用来自相机输入图像的可能不利地影响纹理图像素值的像素。

在810处,像素权重图、姿势误差校正抠图以及相机缝隙抠图可以被提供到纹理映射器。纹理映射器可以基于相机姿势确定(用于对象的三维模型的)特定三角形中的特定像素的色彩(例如,像素值)。在812处,处理器可以更新对应于特定像素的纹理像素的色彩纹理。在814处,处理器还可以更新复合置信度图。复合置信度图可基于先前迭代(例如,先前相机姿势)“累积”每个像素的像素值权重。因此,复合置信度图可基于与每个所俘获的图像帧相关联的3d相机信息。复合置信度图也可以基于来自3d相机的视角的深度剔除的深度缓冲器的呈现。呈现可以显示无遮挡的纹理像素,并且因此可以没有错误地将色彩分配到遮挡的纹理像素。

在816处,处理器可以确定对于3d模型来说是否存在待处理的另一图像帧。如果存在另一待处理的图像帧,那么可以处理另一图像帧,可以更新纹理像素并且可以基于上文描述的技术更新复合置信度图。在818处,如果并不存在待处理的另一图像帧,那么处理器可基于最新的更新产生“最终的”复合置信度图。最终的复合置信度图可以包含来自每个相机姿势的所有像素的信息(例如,“汇总”)。

在820处,处理器可以使用最终的复合置信度图来识别纹理孔和识别任何对应的孔边框。在822处,可呈现对应于所识别的纹理孔的3d模型的三角形,并且在824处,三角形可以使用复合置信度图填充为输入通道(例如,α)。举例来说,处理器可以使用每个顶点的纹理坐标值来“查找”最终的复合置信度图中的值。顶点的黑色值可以指示对应的三角形是孔,并且顶点的“灰色”值(例如,在灰色范围内的值)可以指示对应的三角形是孔边框顶点。白色值或明亮的灰色值可以指示三角形既不是孔也不是孔边框顶点。在822处,对于孔边框顶点来说,色彩可用作每个顶点的色彩值以呈现孔填充的三角形。为了呈现孔填充的三角形,可以执行3d世界空间中的最接近边框顶点的搜索,并且最接近边框顶点的色彩用于呈现每个顶点的色彩孔填充的三角形。

过程图800可以使得对象的未扫描的区域和“强力地”擦除的区域能够在3d模型的对应的三角形处基于最终的复合置信度图被“填充”。基于最终的复合置信度图填充对应的三角形可以产生具有相对较高程度的精确性的对象的3d模型。

参考图9,示出了形成用于校正与对象的3d扫描相关联的像素值的相机姿势误差校正抠图的另一过程图900。在过程图900中说明的操作可以使用图1的3d模型优化器118来实施。

根据过程图900,在902处,处理器(例如,3d模型优化器118)可以使用视角关键帧相机信息通过深度剔除呈现深度图。举例来说,处理器可以隐式地识别且正确地避免处理对应于并不由图像俘获装置俘获的三角形的子部分的遮挡(例如,隐藏)的像素。

在904处,处理器可以使用902的呈现来产生外部剪影抠图,并且可以在每个图像帧中的可配置半径或边缘的距离内标记边缘像素。在906处,处理器还可以产生内部剪影抠图,并且可以在可配置半径或在深度上距离相机的视角较远的距离内标记边缘像素。在908处,所施加的模糊的量及类型在内部剪影抠图与外部剪影抠图之间可能不同。施加到内部剪影抠图或外部剪影抠图的模糊可以是均匀地施加的模糊,或者可以是非均匀地施加的模糊,在边缘附近有极少模糊或没有模糊。对于较远离边缘的抠图像素来说,模糊可能增加。模糊可以使用衰退混合处理来施加。替代地,在906处,内部抠图可以产生于单个步骤中,使得已经实施来自边缘的增大的衰退并且在908中不需要额外的衰退或模糊。

参考图10,示出了用于纹理重建以及用于从输入图像中产生3d模型的纹理的方法1000。方法1000可以由图1的3d模型优化器118执行。

在1002处,方法1000包含在处理器处扫描在不同的三维视点处由图像俘获装置俘获的图像帧的序列。举例来说,处理器可以扫描由图2的图像俘获装置202俘获的图像帧。

在1004处,可基于图像帧的序列产生复合置信度图。复合置信度图可以包含用于图像帧的序列中的已扫描的像素的像素值。在1006处,可基于复合置信度图识别三维模型的一或多个孔。

根据一个实施方案,方法1000还可包含使用每个顶点的色彩呈现以及使用复合置信度图将至少一个孔填充为输入通道。方法1000还可包含基于复合置信度图识别三维模型的孔三角形。孔三角形可以对应于图像俘获装置未能俘获的对象的部分。孔三角形还可以对应于包含具有已删除的像素值的纹理像素的三维模型的三角形。孔三角形也可以使用每个顶点的色彩呈现以及使用复合置信度图被填充为输入通道。

图10的方法1000可以使得对象的未扫描的区域和“强力地”擦除的区域能够在3d模型的对应的纹理像素处基于最终的复合置信度图被“填充”。基于最终的复合置信度图填充对应的纹理像素可以产生具有相对较高程度的精确性的对象的3d模型。

参考图11,描绘了形成用于校正与对象的3d扫描相关联的像素值的相机姿势误差校正抠图的方法1100。方法1100可以由图1的3d模型优化器118执行。

在1102处,方法1100包含产生相机姿势误差校正抠图。在1104处,产生相机姿势误差校正抠图可以包含使用视角关键帧相机信息通过深度剔除呈现深度图。在1106处,产生相机姿势误差校正抠图还可包含基于所呈现的深度图产生相机空间中的外部剪影抠图。在1108处,产生相机姿势误差校正抠图可以进一步包含基于所呈现的深度图产生相机空间中的内部剪影抠图。在1110处,产生相机姿势误差校正抠图还可包含在外部剪影抠图上以及在内部剪影抠图上执行衰退混合处理。

在1112处,可以产生相机缝隙抠图。另外,在1114处,可基于相机姿势误差校正抠图和相机缝隙抠图确定特定纹理像素的色彩。

图11的方法1100可以使得对象的未扫描的区域和“强力地”擦除的区域能够在3d模型的对应的三角形处基于最终的复合置信度图被“填充”。基于最终的复合置信度图填充对应的纹理像素可以产生具有相对较高程度的精确性的对象的3d模型。

参考图12,描绘了电子装置(例如,无线通信装置)的特定说明性实施方案的框图,且一般将所述电子装置表示为1200。装置1200包含耦接到存储器1232的处理器1210,例如,数字信号处理器(dsp)。处理器1210可包含硬件或可执行指令,所述硬件或可执行指令使得处理器执行图4的方法400、图7的方法700、图10的方法1000、图11的方法1100或其组合。根据一些实施方案,处理器1210可以包含图1的系统100。存储器1232可为存储计算机可执行指令1252以执行参考图1到11所描述的一或多个操作的全部或一部分的非瞬态或非暂时性计算机可读取媒体。

图12还示出了耦接到数字信号处理器1210以及耦接到显示器1228(例如,图1的显示器104)的显示控制器1226。编解码器(codec)1234也可以耦接到数字信号处理器1210。扬声器1236和麦克风1238可以耦接到编解码器1234。

图12还指示无线接口1240可以耦接到处理器1210且耦接到天线1242。相机1262可以经由相机控制器1260耦接到处理器1210。举例来说,相机控制器1260可以包含经配置以接收对象的图像帧的接口电路系统。接口电路系统可以对应于从相机1262中接收所俘获的图像帧并且将所俘获的图像帧提供到处理器1210的电路系统。图像帧可以与对象的三维扫描相关联。相机1262可以包含2d相机、3d相机、3d传感器、深度感测相机(例如,rgb-d相机)或经配置以俘获图像的任何其它装置。在特定实施方案中,处理器1210、显示控制器1226、相机控制器1260、存储器1232、编解码器1234和无线接口1240包含于系统级封装或芯片上系统装置1222中。在特定实施方案中,输入装置1230和电源1244耦接到芯片上系统装置1222。此外,在特定实施方案中,如图12中所示,显示器1228、输入装置1230、扬声器1236、麦克风1238、天线1242、相机1262和电源1244在芯片上系统装置1222的外部。然而,显示器1228、输入装置1230、扬声器1236、麦克风1238、天线1242、相机1262和电源1244中的每一个可耦接到芯片上系统装置1222的组件,例如,接口或控制器。

结合所描述的实施方案,第一设备可以包含用于扫描图像帧的序列的第一图像帧的装置。举例来说,用于扫描的装置可以包含图1的纹理映射单元126、图1的色彩校正单元124、图12的处理器1210、一或多个其它结构、装置、电路或其组合。

第一设备还可包含用于基于第一图像帧的特征确定灰度阈值以识别第一图像帧中的灰色像素候选项的装置。举例来说,用于确定灰度阈值的装置可以包含图1的纹理映射单元126、图1的色彩校正单元124、图12的处理器1210、一或多个其它结构、装置、电路或其组合。

第一设备还可包含用于基于色度调适变换估计来调节第一图像帧中的每个像素的像素值的装置。举例来说,用于调节像素值的装置可以包含图1的纹理映射单元126、图1的色彩校正单元124、图12的处理器1210、一或多个其它结构、装置、电路或其组合。

结合所描述的实施方案,第二设备可以包含用于在对象的三维扫描期间俘获图像帧的序列的装置。举例来说,用于俘获图像帧的序列的装置可以包含图2的图像俘获装置202、图12的相机1262、一或多个其它结构、装置、传感器或其组合。

第二设备还可包含用于基于图像帧的序列产生复合置信度图的装置。复合置信度图可以包含用于图像帧的序列中的已扫描的像素的像素值。举例来说,用于产生复合置信度图的装置可以包含3d模型优化器118、图12的处理器1210、一或多个其它结构、装置、电路或其组合。

第二设备还可包含用于基于复合置信度图识别三维模型的孔边框的装置。举例来说,用于识别孔边框的装置可以包含3d模型优化器118、图12的处理器1210、一或多个其它结构、装置、电路或其组合。

结合所描述的实施方案,第三设备可以包含用于优先化队列中的图像帧的序列的装置。图像帧的序列可以从图像俘获装置中俘获。图像帧的序列可基于一或多个优先化参数优先化。一或多个优先化参数可以包含图像帧时间戳权重、图像帧模糊权重、图像帧色彩偏移权重、图像帧人脸权重或图像帧有效权重。举例来说,用于优先化图像帧的序列的装置可以包含图1的纹理映射单元126、图1的色彩校正单元124、图12的处理器1210、一或多个其它结构、装置、电路或其组合。

第三设备还可包含用于从队列中选择第一图像帧的装置。第一图像帧从第一角度描绘特定纹理像素。举例来说,用于选择第一图像帧的装置可以包含图1的纹理映射单元126、图1的色彩校正单元124、图12的处理器1210、一或多个其它结构、装置、电路或其组合。

第三设备还可包含用于确定第一图像帧中的特定纹理像素的像素值的装置。举例来说,用于确定像素值的装置可以包含图1的纹理映射单元126、图1的色彩校正单元124、图12的处理器1210、一或多个其它结构、装置、电路或其组合。

第三设备还可包含用于从队列中选择第二图像帧的装置。第二图像帧从第二角度描绘特定纹理像素。第二图像帧具有基于一或多个优先化参数与第一图像帧相比较高的优先级。举例来说,用于选择第二图像帧的装置可以包含图1的纹理映射单元126、图1的色彩校正单元124、图12的处理器1210、一或多个其它结构、装置、电路或其组合。

第三设备还可包含用于基于第二图像帧中的特定像素的像素值修改特定像素的像素值以产生特定像素的经修改的像素值的装置。举例来说,用于修改像素值的装置可以包含图1的纹理映射单元126、图1的色彩校正单元124、图12的处理器1210、一或多个其它结构、装置、电路或其组合。

所属领域的技术人员将进一步了解结合本文所揭示的实施方案所描述的各种说明性的逻辑块、配置、模块、电路以及算法步骤可以实施为电子硬件、通过处理器执行的计算机软件,或两者的组合。上文已大体在其功能性方面描述各种说明性组件、块、配置、模块、电路和步骤。所述功能性是实施为硬件还是处理器可执行指令取决于特定应用及施加于整个系统的设计约束。所属领域的技术人员可针对每一特定应用以不同方式实施所描述的功能性,但此类实施决策不应被解释为引起对本发明的范围的偏离。

结合本文中所揭示的实施方案而描述的方法或算法的步骤可直接实施于硬件、由处理器执行的软件模块或两者的组合中。软件模块可驻留在随机存取存储器(ram)、闪存、只读存储器(rom)、可编程只读存储器(prom)、可擦除可编程只读存储器(eprom)、电可擦除可编程只读存储器(eeprom)、寄存器、硬盘、可移动磁盘、压缩光盘只读存储器(cd-rom)或所属领域中已知的任何其它形式的非暂时性存储媒体中。示例性存储媒体耦接到处理器,使得处理器可从存储媒体中读取信息并且将信息写入到存储媒体。在替代方案中,存储媒体可集成到处理器。处理器及存储媒体可以驻留在专用集成电路(asic)中。asic可以驻留在计算装置或用户终端中。在替代方案中,处理器和存储媒体可以驻留为计算装置或用户终端中的离散组件。

提供所揭示实施方案的先前描述以使所属领域的技术人员能够制作或使用所揭示的实施方案。这些实施方案的各种修改对于所属领域的技术人员而言将是显而易见的,并且在不脱离本发明的范围的前提下本文中所定义的原理可以应用于其它实施方案。因此,本发明并不意图限于本文中所示的实施方案,而应符合与如通过所附权利要求书定义的原理及新颖特征相符的可能的最广范围。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1