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

在保持视觉保真度的同时减少体数据的制作方法

2022-02-22 18:35:58 来源:中国专利 TAG:


1.本公开涉及体数据,更具体地涉及在保持视觉保真度的同时减少体数据。


背景技术:

2.体数据可以非常大,在某些情况下,几近数百千兆字节的存储器和数十亿的独特点。加载和渲染如此大量的数据对于实时性能来说可能是非常成问题的,尤其是对于电影和电视、游戏以及虚拟和增强现实体验中的虚拟制作。


技术实现要素:

3.本发明提供了用于在保持视觉保真度的同时减少体数据的方法。
4.在一种实施中,公开了一种用于管理体数据的方法。该方法包括:在空间体中定义视景体,其中,体数据具有在空间体中的多个点,并且至少一个点在视景体中以及至少一个点不在视景体中;在空间体中定义具有多个单元格的网格并将空间体划分为相应的单元格,其中每个点具有网格中的对应的单元格,并且网格中的每个单元格具有零个或更多个对应的点;以及对于网格中的单元格,在所述单元格在视景体外的情况下减少点的数量。
5.在一种实施中,该方法还包括对于在视景体内的单元格,保持点的数量不变。在一种实施中,视景体是三维(3-d)框。在一种实施中,对单元格减少点的数量包括对体数据进行合并和空间过滤,以用第二数量的点替换第一数量的点,其中第一数量大于第二数量。在一种实施中,第二数量的点中的每个点使用局部平均的位置、颜色和大小。在一种实施中,该方法还包括为网格中的单元格定义两个或更多个子单元格,每个子单元格在所述单元格内。
6.在另一实施中,公开了一种管理体数据的系统。该系统包括:视景体定义器,用于在空间体中定义视景体,其中体数据具有在空间体中的多个点,并且至少一个点在视景体中以及至少一个点不在视景体中;网格定义器,用于在空间体中定义网格,所述网格具有多个单元格,其中空间体被划分为相应的单元格,每个点具有网格中的对应的单元格,并且网格中的每个单元格具有零个或更多个对应的点;处理器,用于接收来自视景体定义器的视景体和来自网格定义器的网格;以及点减少器,用于从处理器接收视景体和网格,以当网格中的单元格在视景体外时,减少体数据的用于所述单元格的点的数量,其中一旦点减少器完成其操作则处理器显示点减少了的体数据。
7.在一种实施中,该系统是是由用户穿戴的头戴式虚拟现实(vr)装置,其中vr装置被配置为处理和显示体数据以供用户观看。在一种实施中,视景体是3-d框。在一种实施中,该系统还包括合并器和空间过滤器,用于对体数据进行合并和空间过滤,以用第二数量的点替换第一数量的点,其中第一数量大于第二数量。在一种实施中,合并器和空间过滤器还对第二数量的点中的每个点的位置、颜色和大小进行局部平均。在一种实施中,该系统还包括子单元格定义器,用于为网格中的单元格定义两个或更多个子单元格,其中每个子单元格在所述单元格内。在一种实施中,子单元格定义器在三个维度中使用框过滤器来定义每
个点的位置、颜色和大小。在一种实施中,子单元格定义器在三个维度中使用高斯过滤器来定义每个点的位置、颜色和大小。
8.在另一实施中,公开了一种存储用于管理体数据的计算机程序的非暂时性计算机可读存储介质。该计算机程序包括使计算机执行以下操作的可执行指令:在空间体中定义视景体,其中,体数据具有在空间体中的多个点,并且至少一个点在视景体中以及至少一个点不在视景体中;在空间体中定义具有多个单元格的网格并将空间体划分为相应的单元格,其中每个点具有网格中的对应的单元格,并且网格中的每个单元格具有零个或更多个对应的点;以及在网格中的单元格在视景体外的情况下,减少用于所述单元格的点的数量。
9.在一种实施中,计算机程序还包括使计算机执行以下操作的可执行指令:保持用于在视景体内的单元格的点的数量不变。在一种实施中,视景体是三维(3-d)框。在一种实施中,使计算机减少单元格所对应的点的数量的可执行指令包括使计算机执行以下操作的可执行指令:对体数据进行合并和空间过滤,以用第二数量的点替换第一数量的点,其中第一数量大于第二数量。在一种实施中,第二数量的点中的每个点使用局部平均的位置、颜色和大小。在一种实施中,计算机程序还包括使计算机执行以下操作的可执行指令:为网格中的单元格定义两个或更多个子单元格,每个子单元格在所述单元格内。
10.其他特征和优点从本说明书中应该是显而易见的,本说明书通过示例的方式示出了本公开的各方面。
附图说明
11.本公开的细节及其结构和操作可以通过研究附图而部分地收集到,其中相同的附图标记指代相同的部分,并且其中:
12.图1a是根据本公开的一种实施方式的用于管理体数据的方法的流程图;
13.图1b是为网格中的单元格减少点的数量的步骤的示意图;
14.图2是根据本公开的一种实施方式的用于管理体数据的系统的框图;
15.图3a是根据本公开的实施方式的计算机系统和用户的表示;和
16.图3b是示出根据本公开的实施方式的托管视频应用的计算机系统的功能框图。
具体实施方式
17.如上所述,体数据可能非常大。因此,加载和渲染如此大量的数据对于实时性能来说可能是非常成问题的,尤其是对于电影和电视、游戏以及虚拟和增强现实体验中的虚拟制作。
18.本公开的一些实施方式提供了实施用于处理视频数据的技术的系统和方法。在一种实施方式中,视频系统创建和管理体数据。系统指定体数据的有限视景体。该系统使用有限的视景体来减少数据的整体的体点的计数,而不会在内部视景体内的任何位置和方向损失渲染的视觉保真度/质量。这种减少允许减少数据加载时间并使数据流更快,以及由于处理更少量的点而加快了渲染(视觉显示)。这些速度上的改进由于头戴式显示器的性能要求对虚拟现实(vr)应用程序是有用的,并且对电影和电视、游戏以及虚拟和增强现实体验中的虚拟制作是有用的。
19.在阅读以下描述之后,本公开如何在各种实施方式和应用中实施将变得显而易
见。尽管这里将描述本公开的各种实施方式,但是应当理解,这些实施方式仅通过示例而非限制的方式呈现。因此,各种实施方式的详细描述不应被解释为限制本公开的范围或广度。
20.在一种实施方式中,特定视景体定义了感兴趣的潜在的可视区域,其中视觉保真度随着从内部视景体到空间体中的任何位置(例如,电影或游戏中的场景)的距离的增加而降低。在此实施方式中,可以使用输入属性“最小点大小”为内部视景体内的所有点设置恒定的细节级别,而对于内部视景体外的位置(即外部视景体),可以通过基于从视景体到外部位置的距离将最小内部点大小投影到远离视景体边界之处来设置变化的细节级别。因此,通过定义将限制用户从何处观察数据的特定空间体,可以采用各种方法以对视觉保真度影响最小的方式来组合和减少数据。
21.在一种实施方式中,体数据被合并和空间过滤以用具有局部平均的位置、颜色和大小的较少的点替换许多点。在其他实施方式中,可以在空间中的任何位置过滤与点相关联的任何属性。
22.在用于管理体数据的系统的一种实施方式中,特定的空间视景体被指定为在体数据预期被观察的任何位置、大小和方向处的空间中的3-d框。在另一实施方式中,特定视景体被指定为其他形状,例如半球或矩形金字塔的3-d视锥体。该体的内部和外部数据都可以有可选设置。例如,内部数据的最小点大小和外部数据的样本网格的分辨率。
23.在一种实施方式中,空间数据结构用于加速处理并在空间上对体进行细分以收集空间中特定位置处的局部相邻点。空间数据结构可以包括具有属性的点或点位置的更深空间细分,从而以有限的存储器有效地处理具有的变化数量的高度详细的点云。
24.例如,在视频系统中使用均匀网格(uniform grid)作为空间数据结构,系统将大量的点细分为“网格单元格”以进行快速搜索。在一种实施方式中,这用于相邻点的3-d过滤。在该实施方式中,使用单个乘法和加法运算将每个3-d点位置快速映射到单元格,并且如果单元格被细分,则每个单元格可以有点或子网格的列表。此外,为了避免单个单元格中有大型点列表,可以递归地细分和预分类单元格以提高性能。在一种实施方式中,系统定义指定的网格分辨率以有效管理每个单元格的点的最大数量。系统根据指定的网格分辨率细分每个单元格。因此,在一种实施方式中,仅考虑对相邻单元格进行过滤。然而,在其他实施方式中,该系统允许跨多个单元格和网格使用任何大小的过滤器,例如以提高质量。过滤后的数据的输出是单个大型点列表,其由最终的均匀网格以较低的分辨率进行体分割。然后使用所得结果将点划分为用于渲染的连续细节级别(lod)数据结构。
25.因此,在一种实施方式中,视频系统使用以下过程来管理体数据。对于每个点,采取以下步骤:(1)计算该点处的单元格属性,如最小、最大、中心;(2)计算从该点到最近的视景体矩形框边界的距离;(3)如果该点在框内,则将子单元格设置为最小单元格大小,否则,以该距离将子单元格从边界向外投影得到投影大小;(4)用来自主网格的数据加载子单元格;(5)计算每个子单元格中的点列表;(6)使用框过滤器基于最终子单元格中的点列表计算最终点的颜色和大小;并计算每个子单元格中的点列表。
26.在替代实施方式中,不是使用均匀网格进行分类,而是可以根据对运行时性能和存储器约束的要求使用任何空间数据结构(例如,kd树、bst、八叉树等)。此外,与仅使用单一类型的分类相比,将不同的空间分类系统一起使用通常可以提供效率改善。例如,首先使用kd树将点分类为“粗”分类,然后使用均匀网格进行“精细”分类,这通常是有益的。然而,
一般来说,均匀网格运行速度很快,因为其具有良好的cpu缓存一致性,可以在多线程环境中最大限度地减少cpu执行的停顿。
27.在计算子单元格中的最终点大小和颜色时,系统使用任何过滤器类型,包括三个维度的框过滤器或高斯过滤器。像高斯分布过滤器核这样的非均匀过滤器强调最终单输出点属性的位置、大小和颜色等局部属性,这可以以增加噪声为代价来提高锐度。三维过滤器核用于混合点的颜色和大小,以保留视觉保真度和外观。因此,可以使用各种过滤核和大小来解析三维空间中任何位置的点云数据集的准确属性,例如3x3x3框、高斯等。
28.又一个实施方式包括用于内部视景体和外部视景体两者的可定制采样率和数据过滤和设置。在此实施方式中,为内部视景体设置了最小点大小,并根据均匀网格分辨率定义了采样率。使用局部点簇的平均位置为每个采样的子单元格保留子体素(voxel)位置。因此,保留每个子单元格中过滤的输出点的子体素位置减少了与位置的均匀网格上的采样数据相关联的视觉噪声伪影(artifact)。这提高了具有缓慢运动的动画数据集的视觉质量。
29.图1a是根据本公开的一种实施方式的用于管理体数据的方法100的流程图。在图1a图解说明的实施方式中,该方法包括在步骤110中在空间体中定义视景体。因此,在一种实施方式中,视景体定义了玩家在游戏或电影中所处位置周围的空间体。在一种实施方式中,视景体是框。在另一种实施方式中,视景体是半球。此外,体数据在具有空间体中的多个点,并且至少一个点在视景体中以及至少一个点不在视景体中。
30.在步骤120中,在空间体中将网格定义为具有多个单元格。空间体被划分为各个单元格,每个点在网格中都有对应的单元格。网格中的每个单元格都有零个或更多个对应点。然后在步骤130中,当单元格在视景体之外时,减少网格中该单元格所对应的点的数量。因此,在该实施方式中,视景体内的体点的计数保持恒定,而视景体外的体点的计数减少。参见图1b,示出了减少网格中单元格所对应的点的数量的步骤150。
31.在一种实施方式中,通过对数据进行合并和空间过滤以用第二数量的点替换第一数量的点来减少用于该单元格的点的数量,其中第一数量大于第二数量。第二数量的点中的每个点都使用局部平均的位置、颜色和大小。在一种实施方式中,在步骤140中,为网格中的单元格定义两个或更多个子单元格,其中每个子单元格在该单元格内。
32.如上所述,在计算子单元格中的最终点的大小和颜色时,系统使用任何过滤器类型,包括三个维度的框过滤器或高斯过滤器。像高斯分布过滤器核这样的非均匀过滤器强调最终单输出点属性的位置、大小和颜色等局部属性,这可以以增加噪声为代价来提高锐度。三维过滤器核用于混合点的颜色和大小,以保留视觉保真度和外观。因此,可以使用各种过滤核和大小来解析三维空间中任何位置处的点云数据集的准确属性,例如3x3x3框、高斯等。
33.图2是根据本公开的一种实施方式的用于管理体数据的系统200的框图。在一种实施方式中,系统200是用户穿戴的头戴式虚拟现实(vr)装置,其中该vr装置被配置为处理和显示体数据以供用户观看。在图2图解说明的实施方式中,系统200包括与视景体定义器220、网格定义器230、点减少器240、显示器250和子单元格定义器260通信的处理器210。在一种实施方式中,子单元格定义器260为网格中的单元格定义两个或更多个子单元格,其中每个子单元格在该单元格内。
34.在一种实施方式中,视景体定义器220被配置为在空间体中定义视景体。定义的视
景体被传送到处理器210。在一种实施方式中,视景体是框。在另一种实施方式中,视景体是半球。此外,体数据在空间体中具有多个点,至少一个点在视景体中且至少一个点不在视景体中。
35.在一种实施方式中,网格定义器230被配置为将空间体中的网格定义为具有多个单元格。空间体被划分为各个单元格,每个点在网格中都有对应的单元格。网格中的每个单元格都有零个或更多个对应点。定义的网格被传送到处理器210。
36.在一种实施方式中,点减少器240被配置为当网格中的单元格处于视景体之外时减少该单元格所对应的点的数量。因此,如上所述,视景体内的体点的计数保持恒定,而视景体外的体点的计数减少。因此,与压缩相比,此实施方式的选择性“数量减少”是有损的,但保留了视觉(包括大小和颜色)保真度。点减少器240将网格中单元格所对应的点的数量减少结果传送到处理器210。
37.在一种实施方式中,点减少器240使用合并器242和空间过滤器244来对数据进行合并和空间过滤以用第二数量的点替换第一数量的点来减少单元格所对应的点的数量,其中第一数量大于第二数量。第二数量的点中的每个点都使用局部平均的位置、颜色和大小。
38.在一种实施方式中,仅考虑对相邻单元格进行过滤。然而,在其他实施方式中,系统200允许跨多个单元格和网格的任何过滤器尺寸,例如以提高质量。过滤后的数据的输出是单个大型点列表,其由最终的均匀网格以较低的分辨率进行体分割,然后使用所得结果将点划分为用于渲染的连续细节级别(lod)数据结构。
39.如上所述,在计算子单元格中的最终点的大小和颜色时,系统200使用任何过滤器类型,包括三维的框过滤器或高斯过滤器。像高斯分布过滤器核这样的非均匀过滤器强调最终单输出点属性的位置、大小和颜色等局部属性,这可以以增加噪声为代价来提高锐度。三维过滤器核用于混合点颜色和大小,以保留视觉保真度和外观。因此,可以使用各种过滤核和大小来解析三维空间中任何位置的点云数据集的准确属性,例如3x3x3框、高斯等。
40.一旦点减少器240完成其操作,处理器210在显示器250上显示点减少了的体数据。
41.图3a是根据本公开的实施方式的计算机系统300和用户302的表示。用户302使用计算机系统300来实施视频应用程序390以用于管理体数据,如关于图1a和图2中的方法100和系统200所图示和描述的。
42.计算机系统300存储并执行图3b的视频应用390。此外,计算机系统300可以与软件程序304通信。软件程序304可以包括用于视频应用390的软件代码。软件程序304可以加载在诸如cd、dvd或存储驱动器的外部介质上,如下文将进一步解释的。
43.此外,计算机系统300可以连接到网络380。网络380可以以各种不同的架构连接,例如,客户端-服务器架构、对等网络架构或其他类型的架构。例如,网络380可以与对在视频应用390内使用的引擎和数据进行协调的服务器385通信。此外,网络可以是不同类型的网络。例如,网络380可以是因特网、局域网或局域网的任何变体、广域网、城域网、内联网或外联网、或无线网络。
44.图3b是示出根据本公开的实施方式的托管视频应用390的计算机系统300的功能框图。控制器310是可编程处理器并且控制计算机系统300及其组件的操作。控制器310从存储器320或嵌入式控制器存储器(未示出)加载指令(例如,以计算机程序的形式)并执行这些指令以控制系统。在其执行中,控制器310向视频应用390提供软件系统,以便例如能够创
建设备组并使用任务队列并行地传输设备设置数据。或者,该服务可以实施为控制器310或计算机系统300中的独立硬件组件。
45.存储器320临时存储供计算机系统300的其他组件使用的数据。在一种实施方式中,存储器320被实施为ram。在一种实施方式中,存储器320还包括长期或永久存储器,例如闪存和/或rom。
46.存储装置330临时或长期存储供计算机系统300的其他组件使用的数据。例如,存储装置330存储视频应用程序390使用的数据。在一种实施方式中,存储装置330是硬盘驱动器。
47.媒体设备340接收可移动媒体并且读取和/或写入数据到插入的媒体。在一种实施方式中,例如,媒体设备340是光盘驱动器。
48.用户接口350包括用于从计算机系统300的用户接受用户输入并向用户302呈现信息的组件。在一种实施方式中,用户接口350包括键盘、鼠标、音频扬声器和显示器。控制器310使用来自用户302的输入来调整计算机系统300的操作。
49.i/o接口360包括一个或多个i/o端口以连接到相应的i/o设备,例如外部存储器或辅助设备(例如,打印机或pda)。在一种实施方式中,i/o接口360的端口包括诸如以下的端口:usb端口、pcmcia端口、串行端口和/或并行端口。在另一实施方式中,i/o接口360包括用于与外部设备无线通信的无线接口。
50.网络接口370包括有线和/或无线网络连接,例如支持以太网连接的rj-45或“wi-fi”接口(包括但不限于802.11)。
51.计算机系统300包括典型的计算机系统的附加硬件和软件(例如,电源、冷却、操作系统),尽管为简单起见这些组件没有在图3b中具体示出。在其他实施方式中,可以使用计算机系统的不同配置(例如,不同的总线或存储配置或多处理器配置)。
52.在此提供对所公开的实施方式的描述以使本领域的任何技术人员能够制作或使用本公开。对这些实施方式的许多修改对于本领域技术人员来说将是显而易见的,并且在不脱离本公开的精神或范围的情况下,本文定义的原理可以应用于其他实施方式。因此,本公开不旨在限于本文所示的实施方式,而是符合与本文公开的主要和新颖特征一致的最宽范围。
53.在本公开的特定实施方式中,不一定需要以上讨论的示例中的每一个的所有特征。此外,应当理解,本文中呈现的描述和附图代表本公开广泛涵盖的主题。还应理解,本公开的范围完全包含对本领域技术人员而言可能变得显而易见的其他实施方式,并且本公开的范围因此仅由所附权利要求书限制。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

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

相关文献