通过置换3d对象的点坐标对3d对象进行保护的方法和设备的制作方法

文档序号:6438424阅读:162来源:国知局
专利名称:通过置换3d对象的点坐标对3d对象进行保护的方法和设备的制作方法
技术领域
本发明总地涉及一种3-D模型并且具体地涉及这种模型的图形对象的保护。
背景技术
本部分旨在向读者介绍可能与以下描述的和/或要求权利的本发明的各个方面有关的技术的各个方面。相信本论述有助于向读者提供背景信息以便促进更好地理解本发明的各个方面。相应地,应该了解的是,应该以这样的方式来理解这些陈述,而不是作为对现有技术的承认。近年来,尤其在虚拟实境(metaverse)出现的情况下,三维(3D)对象的使用已经日益增长。对于3D对象有多种用途社交世界、游戏、镜像世界、仿真工具、并且还有3D用户界面、动画电影和用于电视的虚拟效果。一般地,3D虚拟对象表示现金值。在社交世界和游戏中,玩家为了现金而将虚拟对象或化身(avatar)销售给其他玩家。在在线游戏中建立有经验的角色是非常漫长的、可能需要在键盘上花数百小时的过程。通过仿真工具对真实世界对象进行3D建模允许制造真实(假的)的对象并且进行销售。从好莱坞工作室泄露下一大片(blodAuster)的场景的3D模型可能导致该工作室的出版发行不良。可见,在许多情况下,3D对象对它们的所有者是巨大的财富。内容保护策略包括旨在例如通过加密使未经授权的用户对内容进行访问变得不可能的保密性保护和旨在使追踪未经授权而散布内容的用户成为可能的加注水印。尽管这些方法有些粗劣,但3D内容保护的基本方法聚焦于整个数据,即,所有数据要么被加密要么被加注水印(或者二者)。保护3D内容的更加精细的方法是保护其3D对象中的一个或多个。由于3D内容通常由位于设置中的许多不同的对象组成,这是可能的。当将每个3D对象编码成单独的实体时,单独地保护它们中的每一个成为可能并且不需要保护它们的全部。例如,US 2008/0022408描述了一种通过将对象的“边界框(boundingbox) ”作为未加密数据存储于一个文件中并且将受保护3D对象作为加密数据存储于单独的文件中进行3D对象保护的方法。任何用户均可访问未加密数据,但是仅有授权用户可以访问加密数据;未授权用户看到其基本表示(即,边界框),诸如平行六面体而不是汽车。然而,这种方法被开发用于3D呈现(rendering)软件并且不太适合于诸如视频和电影之类的多媒体内容。此外,文件格式(具有未加密数据的一个文件和具有加密数据的一个文件)是非标准的并且从而仅被适配的呈现设备而不是标准设备使用。实际上,加密数据不遵守大多数3D 技术的语法并且从而通常可能不被使用。US 6678378描述了一种通过加密来保护3D计算机辅助设计(CAD)对象的解决方案。该解决方案可以通过非线性或仿射变换(affinetransformation),由此扭曲3D对象或者通过诸如RSA之类的“正常”加密来加密节点的坐标值以及边缘或轮廓的方程之一。这个解决方案的问题在于计算可能代价高(尤其当使用RSA时)以及失真仍然不足以阻止恶意用户使用内容。此外,在“正常”加密的情况下,3D对象可能根本不能被诸如计算机或电视机之类的内容消费设备读取,这在一些情况下可能是缺点。2006 年,Shi,W. ,Lee,H. ,Yoo,R.,禾口 Boldyreva,A 在 A Digital RightsEnabledGraphics Processing System. GH' 06 ψ =Proceedings of the 21 st ACMSIGGRAPH/EUROGRAPHICS symposium on Graphics hardware,ACM,1716 中提出了一种启用数字权限的图形处理系统。利用这个系统,将组成3D对象(顶点、纹理的集合)的数据加密。在许可的控制下,在图形处理单元内处理它们的解密。还提出了使用多分辨率网格来同时传递3D元素的受保护和未受保护的版本。虽然该系统本身是朝着安全的3D环境的真正的进步,但利用其他虚拟现实建模语言(VRML)呈现器来使用受保护的场景将导致互操作的问题。David Koller和Marc Levoy描述了一种其中将高清晰度3D数据存储在服务器中对3D数据进行保护的系统。用户可以访问他们可以操作的低清晰度3D对象,并且当用户选择了视图时,向返回与该视图对应的二维JPEG的服务器发送请求。因此保护了高清晰度3D数据,这是因为从未向用户提供它。(参见David Koller和Marc Levoy的“Protecting3D Graphics Content”,Communications of ACM,2005 年 6 月,vol. 48,no. 6.)。虽然这个系统对于其旨在的用途运行良好,但当要将完整的3D数据传送到用户时它不适用。现有技术解决方案的共同问题在于它们不进行格式保留(formatpreserving),而它们基于3D数据的加密并且它们提供未授权设备可用的第二组3D数据使得用户可以看见一些例如边界框的东西。欧洲专利申请10305692. 5描述了一种格式保留解决方案,其中包括一列点(即,顶点)的3D对象通过置换至少一些点的坐标而被保护。详述点是怎样被连接的列表保持不变,但是由于这些点不再具有初始值,所以3D对象不再“有意义”。这种解决方案的优点在于受保护3D对象也可以被不能“解密”受保护的3D对象的设备读取,尽管其看上去非常奇怪,以及在于受保护3D对象被记录(inscribe)在与原始3D对象相同大小的框中。然而,已经发现,由于受保护3D对象的点具有与原始3D对象相同的坐标、但是处于不同的顺序中,该解决方案可以易受到重构技术的攻击。因此将要认识到需要一种解决方案,其可以使用快速计算使得能够保护3D对象,还使得未授权内容消费设备能够读取并显示3D对象,尽管以一种不令人满意的呈现视图的方式,并且对抗重构技术。本发明提供这样的解决方案。

发明内容
在第一个方面,本发明针对一种保护图形对象的方法。设备接收包括以至少二维表示的多个点的图形对象,根据确定的置换顺序置换至少一些点的至少一个维度的坐标值以便获得受保护的图形对象,所述坐标值独立于至少一个其它维度的坐标值而被置换,以及输出受保护的图形对象。在第一优选实施例中,图形对象是三维对象。在第二优选实施例中,置换维度的所有坐标。在第三优选实施例中,置换所有维度的至少一些坐标。使用基于密钥的置换算法来置换坐标是有利的。在第四优选实施例中,受保护的图形对象和图像对象包括不同的点的集合。
在第二个方面,本发明针对一种对受保护的图形对象去除保护(improtect)的方法。设备接收包括以至少二维表示的多个点的受保护的图形对象,根据确定的置换顺序置换至少一些点的至少一个维度的坐标值,所述坐标值独立于至少一个其它维度的坐标值而被置换,其中,所述置换对受保护的对象去除保护以便获得不受保护的图形对象,以及输出不受保护的图形对象。在第一优选实施例中,图形对象是三维对象。在第二优选实施例中,置换维度的所有坐标。在第三优选实施例中,置换所有维度的至少一些坐标。使用基于密钥的置换算法来置换坐标是有利的。在第三个方面,本发明针对一种用于保护图形对象的设备。所述设备包括用于接收包括以至少二维表示的多个点的图形对象的部件,用于根据确定的置换顺序置换至少一些点的至少一个维度的坐标值以便获得受保护的图形对象的部件,所述坐标值独立于至少一个其它维度的坐标值而被置换,以及用于输出受保护的图形对象的部件。在第四个方面,本发明针对一种对受保护的图形对象去除保护的设备。所述设备包括用于接收包括以至少二维表示的多个点的受保护的图形对象的部件,用于根据确定的置换顺序置换至少一些点的至少一个维度的坐标值的部件,所述坐标值独立于至少一个其它维度的坐标值而被置换,其中,所述置换对受保护对象去除保护以便获得不受保护的图形对象,以及用于输出不受保护的图形对象的部件。在第五个方面,本发明针对一种可计算的可读的存储介质,其包括在被处理器执行时运行本发明第一个方面的任何实施例的方法的存储指令。在第六个方面,本发明针对一种可计算的可读的存储介质,其包括在被处理器执行时运行本发明第二个方面的任何实施例的方法的存储指令。


现在将以非限定性示例的方式,参照附图,描述本发明的优选特征,附图中图1图示了根据本发明优选实施例的用于保护3D对象的系统;图2图示了根据本发明优选实施例的用于保护3D对象的方法;以及图3和图4图示了根据本发明优选实施例的3D对象保护的不同方面。
具体实施例方式在诸如例如虚拟现实建模语言(VRML)和X3D之类的一些3D内容格式中,3D图形对象(“3D对象”)被表示为点的第一列表(或阵列),其中每个点具有一组特定坐标,以及具有关于怎样将点链接在一起的信息的第二列表。本发明的一个显著的发明构思在于通过执行加密算法,优选地为第一列表中的至少一个维度进行点的坐标的基于密钥的置换,来保护3D对象。置换导致创建点的新集合(即,受保护3D对象的点的集合与3D对象的点的集合不同),使得受保护3D对象仍然被任何标准3D模型呈现应用所理解,但是作为结果的显示变得怪异(weird)并且对于观看者几乎不能使用。技术人员将认识到,具体在考虑以下的描述时,与其中将点自身的坐标置换为列表中的坐标的EP 10305692. 5中的解决方案相比的区别。
授权用户具有反转置换并且将点混洗(shuffle)到它们原始位置的手段。图1图示了根据本发明优选实施例的用于保护3D对象的系统100而图2图示了根据本发明优选实施例的用于保护3D对象的方法。作为非限定性示例,点与组成图形对象的表面的顶点对应并且以3D坐标来表达,并且第二列表包括关于怎样将顶点链接在一起以便形成线和面的信息。可以在静止部分(VRML语法中的Coordinate节点)或者动画部分(VRML语法中的Coordinatehterpolator节点)上或者优选地在二者上执行置换。换言之,它是被保护的3D对象的表示,这使得不可能正确地呈现对象。系统100包括发送器110和接收器140,每个都包括至少一个处理器111、141,存储器112、142,优选地用户界面113、143,以及至少一个输入/输出单元114、144。发送器 110可以是例如个人计算机或者工作站,而接收器120可以例如不仅是个人计算机或者工作站,而且是电视机,录像机,机顶盒等等。发送器110接收210要保护的3D对象120,使用密钥来置换2203D对象120的点的χ坐标、y坐标、以及ζ坐标中的至少一个(优选全部三个)以便获得被存储到或发送到 230接收器140的受保护的3D对象130。由于至少一个维度的坐标(x,y,ζ)与其它独立地进行置换,所以置换很有可能生成新的点。换言之,对点编排索引并且一维的坐标通过改变索引的坐标而被“打乱(scramble)”。(注意到EP 10305692. 5中描述了将三个坐标作为一个置换,导致点的置换)。接收器120接收240受保护的3D对象130,通过使用密钥(其可以是任何秘密数字)对被置换的维的坐标进行置换来恢复250点,并且可以然后显示或者另外使用260未受保护的3D对象150。换一种方式,接收器反转置换使得恢复索引的坐标。应注意,初始3D对象120和未受保护3D对象150 —般相同。结果,由于所有对象将被正确地显示,授权用户将不会意识到任何不正常的东西, 而未授权用户将看到具有以不正确的方式呈现的受保护对象(或多个对象)的整个场景。第一可计算可读取存储介质160包括存储的用于在被发送器110的处理器111执行时如所述地保护3D对象的指令。第二可计算可读取存储介质170包括用于在被接收器 140的处理器141执行时如所述地对3D对象去除保护的存储的指令。图3和图4图示了根据本发明优选实施例的3D对象保护的不同方面。图3示出了例如对象的静止部分的点的未受保护列表310在置换320后变成点的受保护列表330。 作为示例,仅仅置换了 χ坐标值,而y坐标值和ζ坐标值保持不变。在图3中,在坐标值的集合的左边示出索引。可以看到两个列表中的点是不同的;例如,在点的未受保护列表310 中索引1处的χ坐标17变成点的受保护的集合320中索引8的χ坐标。图4图示了 3D对象的呈现呈现的未受保护3D对象410被示为挨着呈现的受保护的3D对象420以便使得能够在它们之间进行比较。如所见到的,呈现的受保护3D对象420实际上完全不可理解, 尽管可能仅仅推断出例如记录3D对象的“框”的大体大小。在可替换的实施例中,3D图形对象的点与组成图形对象的表面上的纹理的映射对应并且以二维坐标表达。所使用的置换实际上可以是按照确定的置换顺序对点进行置换的任何基于密钥的置换算法。这种算法的基本示例是将索引i处的列表中的坐标值移动到索引i’,并小心不覆盖在索引i’处的值。为了保护列表,i' = (i+k)modN,其中k是秘密的而N是列表的大小。为了对列表去除保护,i' = (i-k)modN,再次小心不覆盖任何值。另一示例是通过将索引和密钥作为输入来产生输出索引的函数来迭代地交换坐标值i' = fk(i)modN,其中 N 是索弓 I 的数目。DonaldE. Knuth 在"The Art of Computer Programming volume 2 Seminumericalalgorithmspp. 138-140 中描述了置换算法的另一个示例。应该注意,维度的一个或多个坐标可以保持未置换而不显著地影响安全性,尤其是在未置换的点的数目和置换的坐标的数目的比率保持小的情况下。技术人员将认识到用户授权和密钥管理在本发明的范围之外。因此可见仅仅置换坐标。传统的方法是对顶点数据进行加密,这在最好的情况下将使得随机点到处分布在3D空间中并且与整个场景的其它对象重叠;在最坏的情况下,将根本不可能呈现3D对象。按照本发明的方法,受保护3D对象大体上保持在原始3D对象(即,未受保护的3D对象)的几何界限内。因此,当用户未被授权对一个对象去除保护时,整体场景不太受这个受保护的对象的显示的干扰(confuse)。虽然将本发明描述为用于三维,但其还可以应用于保护二维或多于三维的对象。因此应该认识到本发明可以提供一种用于确保3D模型的保密性的机制,并且该机制可以为未被授权的用户在视觉上区分受保护的和未受保护的模型。还将要认识到总是可以呈现受保护的3D对象(以及包括该3D对象的场景),尽管其将是不可识别的。还将要认识到该保护机制可以对抗(表面)重构技术。说明书和(在合适时)权利要求和附图中公开的每个特征可以独立地或者以任何适当的组合而提供。被描述为在硬件中实施的特征还可以在软件中实施,并且反之亦然。权利要求中出现的参考数字仅仅为了说明并且对权利要求的范围将不具有限制影响。
权利要求
1.一种保护图形对象(120;410)的方法,所述方法包括在设备(110)中进行以下步骤接收Ο ο)包括以至少二维表示的多个点的图形对象(120 ;410);根据确定的置换顺序置换(220)至少一些点的至少一个第一维度的坐标值以获得受保护的图形对象(130 ;420),所述坐标值独立于至少一个第二维度的坐标值而被置换,以及输出(230)受保护的图形对象(130 ;420)。
2.如权利要求1所述的方法,其中图形对象(120;410)是三维对象。
3.如权利要求1所述的方法,其中置换所述至少一个第一维度的所有坐标。
4.如权利要求1所述的方法,其中置换所有维度的至少一些坐标。
5.如权利要求1-4中任意一项所述的方法,其中使用基于密钥的置换算法来置换坐标。
6.如权利要求1-4中任意一项所述的方法,其中所述受保护的图形对象(130;420)和所述图像对象(120 ;410)包括不同的点的集合。
7.一种对受保护的图形对象(130 ;420)去除保护的方法,所述方法包括在设备(140)中进行以下步骤接收(MO)受保护的图形对象(130 ;420),所述受保护的图形对象(130 ;420)包括以至少二维表示的多个点,根据确定的置换顺序置换(250)至少一些点的至少一个第一维度的坐标值,所述坐标值独立于至少一个第二维度的坐标值而被置换,其中,所述置换对受保护的对象去除保护以便获得不受保护的图形对象(150 ;410),以及输出(沈0)所述不受保护的图形对象(150 ;410)。
8.如权利要求7所述的方法,其中所述不受保护的图形对象(150;410)是三维对象。
9.如权利要求7所述的方法,其中置换所述至少一个第一维度的所有坐标。
10.如权利要求7所述的方法,其中置换所有维度的至少一些坐标。
11.如权利要求7-10中任意一项所述的方法,其中使用基于密钥的置换算法来置换坐标。
12.一种用于保护图形对象(120 ;410)的设备(110),所述设备(110)包括用于接收包括以至少二维表示的多个点的图形对象(120;410)的部件(114);用于根据确定的置换顺序置换至少一些点的至少一个第一维度的坐标值以便获得受保护的图形对象(130;420)的部件(111),所述坐标值独立于至少一个第二维度的坐标值而被置换,以及用于输出所述受保护的图形对象(130 ;420)的部件(114)。
13.一种对受保护的图形对象(130;420)去除保护的设备(140),所述设备(140)包括用于接收受保护的图形对象(130;420)的部件(141),所述受保护图形对象(130;420)包括以至少二维表示的多个点;用于根据确定的置换顺序置换至少一些点的至少一个第一维度的坐标值的部件(141),所述坐标值独立于至少一个第二维度的坐标值而被置换,其中,所述置换对受保护的对象去除保护以便获得不受保护的图形对象(150;410);以及用于输出所述不受保护的图形对象(150;410)的部件(144)。
14.一种可计算可读的存储介质(160),包括在被处理器执行时运行权利要求1-6中任意一项的方法的存储指令。
15.一种可计算可读存储介质(170),包括在被处理器执行时运行权利要求7-11中任意一项的方法的存储指令。
全文摘要
本发明公开了一种通过置换3D对象的点坐标对3D对象进行保护的方法和设备。其中,通过第一设备(110)保护3D对象(120;410)接收(210)3D对象(120;410),置换(220)3D对象(120;410)的至少一些点的至少一个维度的坐标以获得受保护的3D对象(130;420),以及输出(230)受保护的3D对象(130;420)。维度的坐标优选地独立于其它维度的置换而被置换。通过第二设备(140)对受保护的3D对象(130;420)去除保护接收(240)受保护的3D对象(130;420),置换(250)受保护的3D对象(130;420)的至少一些点的至少一个维度的坐标以获得不受保护的3D对象(150;410),以及输出(260)不受保护的3D对象(150;410)。还提供了计算机可读存储介质(160,170)。
文档编号G06F21/00GK102567664SQ20111036168
公开日2012年7月11日 申请日期2011年11月15日 优先权日2010年11月15日
发明者G.多尔, M.埃路亚德, S.莱利弗里, Y.梅兹 申请人:汤姆森特许公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1