优化加密3维图形对象的呈现的方法和设备的制作方法

文档序号:2398440阅读:194来源:国知局
优化加密3维图形对象的呈现的方法和设备的制作方法
【专利摘要】使用格式保存加密来加密的3D图形对象的图形特征使得通过非授权的设备对这种对象的呈现非常低效。为了优化对于由点的列表和由该点的列表中的点定义的表面的列表所表示的三维图形对象(120)的呈现,设备(110)接收(210)图形对象(120);使用格式保存的加密方法来加密(220)该图形对象(120)以获得加密的图形对象;通过添加至少一个封装来封装该加密的图形对象以获得封装的图形对象,通过对于每个封装,向表面列表中添加共同包围所述加密的图形对象的多个表面、以及在一个实施例中,向点的列表至少添加一个点来添加所述至少一个封装;以及输出(230)该封装的图形对象(130)。通过基本上反向加密来进行解密。
【专利说明】优化加密3维图形对象的呈现的方法和设备
【技术领域】
[0001]本发明一般地涉及3-D模型,并且特别地涉及对这种模型的图形对象的保护。
【背景技术】
[0002]本节旨在向读者介绍可能与下面所描述和/或所要求的本发明的各方面相关的技术的各个方面。相信这种讨论有助于向读者提供背景信息,以便更好地理解本发明的各个方面。因此,应理解,应从这个角度而不是对现有技术的认可来阅读这些陈述。
[0003]在过去几年中,特别是伴随着虚拟实镜(metaverse)的出现,对三维(3D)图形对象的使用一直在增加。3D对象有多种用途:社交化世界、游戏,反映(mirroring)世界、仿真工具,以及3D用户界面、动画电影和电视的视觉效果。一般来说,3D虚拟对象代表真正的金钱价值。在社交化世界和游戏中,玩家向其他玩家出售虚拟对象或化身来取得真正的金钱。在在线游戏中建立一个有经验的角色是一个非常漫长的过程,可能需要键盘背后的数百小时。出自仿真工具的真实世界对象的3D模型允许制造真正的(仿造的)对象并销售它。来自好莱坞电影工作室的下一大片的场景的3D模型的泄露可能导致对该电影工作室来说的坏消息。可以看出,在许多情况下,3D对象对其拥有者来说是具有很大价值的资产。
[0004]出于这个原因 ,已经发明了对3D对象进行加密的各种策略。一般情况下,这种方法挑选一个3D对象,通过修改某些参数来加密该3D对象,并输出在许多情况下表现为或多或少的随机的加密的3D对象。
[0005]这种加密的第一示例描述在W02012/000898中(也作为EP2400476公开发表),其中,3D对象包括一个节点列表和一个由节点所定义的线或表面的列表。为了加密该3D对象,将节点的值完全打乱。由于所述表面现在由其他节点值定义,所加密的3D的对象通常会变得非常随机和“混乱”。
[0006]在EP2453430中描述的第二示例对于第一示例的改善在于,独立于其他维度的节点值完全打乱至少一个维度的节点值。再次地,所加密的3D的对象通常会变得非常随机和“混乱”。
[0007]在EPl 1306116.2中所描述的第三示例中,代表3D对象的比特流可以被加密,并且加密的比特流可以被解释为另一 3D对象的点。技术人员将理解,加密通常致使各点变为随机的,因此致使该另一 3D对象变为“混乱的”。
[0008]在EP12168218.1中所描述的第四示例中,通过生成被添加到3D对象的原始点的伪随机向量来加密3D对象。由于可使得向量在任何方向前进,加密的3D对象可以是非常随机的。
[0009]技术人员将理解,可由呈现设备来呈现加密的3D对象。还应理解,加密的3D对象的几何特性是不同于原始3D对象。特别是:
[0010]?加密的3D对象的基本表面(通常是三角形)一般是显著大于原始对象的表面的;并且
[0011]?重叠表面的数量显著大于原始对象中的数量。[0012]由于呈现3D对象和环境使用了对于3D对象的通常的几何特性优化的光栅化(rasterization),可以高度影响加密的3D对象的呈现性能,特别是在光栅化中所花费的时间。其中一个原因是,标准的呈现器呈现加密的3D对象的表面,该加密的3D对象稍后在呈现受保护的3D对象的过程中被一个或多个其它表面遮挡。
[0013]因此,应理解,需要通过优化在光栅化过程中所花费的时间而无需损害加密的3D对象的安全性地改进对加密的3D对象的呈现的系统。本发明提供了至少这样的一个系统。

【发明内容】

[0014]在第一方面,本发明涉及一种用于解密封装的三维图形对象的设备,所述封装的三维图形对象包括由点的列表和由该点的列表中的点定义的表面的列表所表示的加密的三维图形对象和至少一个封装,所述至少一个封装包括包围所述加密的三维图形对象的多个表面,其中,已使用格式保存的(format-preserving)加密方法来加密所述加密的三维图形对象。所述设备包含一个处理器,该处理器被配置为:接收所述封装的三维图形对象;通过从所述表面的列表中删除所述封装的表面来删除该封装以获得加密的三维图形对象;解密所述加密的三维图形对象以获得未加密的三维图形对象;以及输出该未加密的三维图形对象。
[0015]在第一优选实施例中,所述处理器进一步被配置为接收表示组成封装的表面的数
量的一个数字。
[0016]在第二优选实施例中,使用添加到加密的三维图形对象中的至少一个点来定义封装的每个表面。该处理器进一步被配置为接收表示添加到加密的三维图形对象中的点的数量的一个数字,并删除添加到加密的三维图形对象的每个点。
[0017]在第三优选实施例中,在表面的列表中,通过使用单一点所定义的空表面来分离封装的表面和加密的三维图形对象的表面,并且所述处理器进一步被配置为找到所述空表面以便确定封装的表面和删除该空表面。有利的是,所述封装的表面位于表面列表中所述空表面和另一空表面之间,并且该处理器被配置为也删除该另一空表面。
[0018]在第四优选实施例中,处理器被配置为从表面列表的起点和表面列表的终点中的至少一个中删除所述封装的多个表面。
[0019]在第二方面,本发明涉及一种用于解密封装的图形对象的方法,所述封装的图形对象包括由点的列表和由该点的列表中的点定义的表面的列表所表示的加密的图形对象和至少一个封装,所述至少一个封装包含包围所述加密的图形对象的多个表面,其中,已使用格式保存的加密方法来加密所述加密的图形对象。一个设备接收所述封装的图形对象;通过从所述表面的列表中删除所述封装的表面来删除该封装以获得加密的图形对象;解密所述加密的图形对象以获得未加密的图形对象;以及输出该未加密的图形对象。
[0020]在第一优选实施例中,所述设备进一步接收表示组成封装的表面的数量的一个数字。
[0021]在第二优选实施例中,在表面的列表中,通过使用单一点所定义空表面来分离封装的表面和加密的对象的表面,并且所述设备进一步找到所述空表面以便确定封装的表面和删除该空表面。
[0022]在第三方面,本发明涉及一种用于加密由点的列表和由该点的列表中的点定义的表面的列表所表示的三维图形对象的设备。所述设备包含一个处理器,该处理器被配置为:接收图形对象;使用格式保存的加密方法来加密该图形对象以获得加密的图形对象;通过添加至少一个封装来封装该加密的图形对象以获得封装的图形对象,通过对于每个封装,向表面列表中添加共同包围所述加密的图形对象的多个表面来添加所述至少一个封装;以及输出该封装的图形对象。
[0023]在第一优选实施例中,所述处理器进一步被配置为输出表示组成封装的表面的数量的一个数字或表示添加到加密的图形对象中的点的数量的一个数字。
[0024]在第二优选实施例中,所述处理器被配置为在加密的图形对象的点的列表中插入至少一个用于定义封装的表面的点,并输出表示所添加的点的数量的一个数字。
[0025]在第四方面,本发明涉及一种用于加密由点的列表和由该点的列表中的点定义的表面的列表所表示的三维图形对象的方法。一个设备接收图形对象;使用格式保存的加密方法来加密该图形对象以获得加密的图形对象;通过添加至少一个封装来封装该加密的图形对象以获得封装的图形对象,通过对于每个封装,向表面列表中添加共同包围所述加密的图形对象的多个表面来添加所述至少一个封装;以及输出该封装的图形对象。
[0026]在第五方面,本发明涉及一种包括存储的指令的可计算的可读存储介质,所述指令在由处理器执行时执行第二方面的方法。
[0027]在第六方面,本发明涉及一种包括存储的指令的可计算的可读存储介质,所述指令在由处理器执行时执行第四方面的方法。
【专利附图】

【附图说明】
[0028]现在将通过非限制性的示例的方式,参照附图来描述本发明的优选特征,附图中
[0029]图1示出根据本发明的优选实施例的用于封装和解封装3D对象的系统;以及
[0030]图2示出根据本发明的用于封装和解封装3D对象的一般方法。
【具体实施方式】
[0031]在例如诸如虚拟现实造型语言(VRML)和X3D的某些3D内容格式中,3D图形对象(“3D对象”)被表示为第一点列表(或阵列)和具有关于如何将各点链接在一起的信息的第二列表。这样的3D内容格式适用于在【背景技术】部分所描述的示例性的加密方案。
[0032]如本文中已经提到的,加密的3D对象的光栅化,特别是那些其几何特性已被修改的加密的3D对象的光栅化是低效的。特别是,z缓冲区,即,深度缓冲区是低效的,因为呈现了尽管稍后会被其它表面所遮挡的表面。
[0033]因此,本发明的主要想法是向加密的3D对象添加表面以优化在光栅化过程中所花费的时间,而无需损害加密的3D对象的安全性。总的原理是添加一个“盒子”,所述盒子由一组点和一组表面定义,封装(遮挡)受保护的对象,并具有光栅化的常用几何特性,即,一般说来使光栅化最优的几何特性。
[0034]“盒子”是可以采取若干种形式的额外的形状,所述形式从对应于加密的3D对象的边界框的平行六面体到可以或多或少地“紧紧”围绕加密的3D对象的凸包。在后一种情况中,例如,可以生成由极值点(例如,具有每个维度的最低和最高值的两个点)的数量所定义的表面,确定是否有任何其他点延伸超越任何这些表面,并且,如果有,细分包含延伸点的任何这样的表面。但是,计算这个“盒子”的确切结构不在本发明的范围内。如将理解的,添加“盒子”需要添加新的表面,并且可能在某些情况下需要添加新的点。
[0035]图1示出了根据本发明的优选实施例的用于封装和解封装3D对象的系统100,并且图2示出了根据本发明的用于封装和解封装3D对象的一般方法。作为非限制性的示例,第一列表包括对应于构成图形对象的表面的顶点并且以3D坐标来表不的点,第二列表包含关于如何将各顶点链接在一起以形成线和表面的信息。
[0036]系统100包括发送器110和接收器140,它们中的每一个都包括至少一个处理器
111、141,存储器112、142,优选地包含用户接口 113、143,和至少一个输入/输出单元114、144。例如,发送器110可以是个人计算机或工作站,而例如,接收器120可以不仅是个人计算机或工作站,还可以是电视机、录像机、机顶盒等。
[0037]第一可计算可读存储介质160包括存储的指令,所述指令在由发送器110的处理器111执行时执行本文所描述的任何一个优选实施例的封装方法。第二可计算可读存储介质170的包括存储的指令,所述指令在由接收器140的处理器141执行时执行本文所描述的任何一个优选实施例的解封装方法。
[0038]发送器110接收210要被加密的3D对象120并使用生成可由不具有必要的解密能力的接收器所呈现的加密的3D对象的任何合适的加密方法来加密220该3D对象120 ;以另一种方式表述,该加密方法是格式保存的。然后,发送器110优选地使用本文所描述的任何合适的封装方法来封装230该加密的3D对象,并例如,通过将其存储或通过将其发送到接收器140来输出封装的3D对象130。
[0039]例如,接收器140直接从发送器110或从存储介质中接收240封装的3D对象130。在接收器140不具有所需的解密权限的情况下,接收器140仍然可以显示封装的3D对象130,从而有效地显示“盒子”。另一方面,在接收器140具有所需的解密权限的情况下,它删除250封装,解密260加密的`3D对象以获得解密的3D对象150,然后,例如,可以输出260解密的3D对象150用于显示或以其他方式使用。注意,初始的3D对象120和解密的3D对象150通常是相同的。
[0040]应理解,大多数呈现设备不呈现“隐藏的”表面,即,出现在另一表面的后面的表面。由于“盒子”有效地遮挡了封装的3D对象的所有其它表面。因此无需呈现任何其它表面。这样可以大大提高对封装的3D对象的呈现效率。
[0041]还应进一步理解,优选的是,使得对加密的3D对象的封装成为加密的3D对象的一部分。下文中提供了一些用于组合“盒子”和加密的3D对象的优选实施例。为了符合在现有技术中引入的保护技术,不应修改加密的3D对象并且应在应用相应的解密技术之前删除封装。
[0042]在优选的实施例中,作为非限制性示例,加密的3D对象的几何结构被表示为一组点和以这组点为索引的一组表面。由η个点和m个表面(每个表面由通过索引值所定义的多个点来定义)如下定义示例性的加密的3D对象:
[0043]
【权利要求】
1.一种用于解密封装的三维图形对象(130)的设备(140),所述封装的三维图形对象包括由点的列表和由该点的列表中的点定义的表面的列表所表示的加密的三维图形对象和至少一个封装,所述至少一个封装包括包围所述加密的三维图形对象的多个表面,其中,已使用格式保存的加密方法来加密所述加密的三维图形对象,所述设备(140)包含处理器(141),该处理器被配置为: 接收所述封装的三维图形对象(130); 通过从所述表面的列表中删除所述封装的表面来删除该封装以获得加密的三维图形对象; 解密所述加密的三维图形对象以获得未加密的三维图形对象;以及 输出该未加密的三维图形对象。
2.如权利要求1所述的设备,其中,所述处理器(141)进一步被配置为接收表示组成封装的表面的数量的一个数字。
3.如权利要求1所述的设备,其中,使用添加到加密的三维图形对象中的至少一个点来定义封装的每个表面,并且其中,该处理器(141)进一步被配置为接收表示添加到加密的三维图形对象中的点的数量的一个数字,并删除添加到加密的三维图形对象的每个点。
4.如权利要求1所述的设备,其中,在表面的列表中,通过使用单一点所定义的空表面来分离封装的表面和加密的三维图形对象的表面,并且其中,所述处理器(141)进一步被配置为找到所述空表面以便确定封装的表面和删除该空表面。
5.如权利要求4所述的设备,其中,所述封装的表面位于表面列表中所述空表面和另一空表面之间,并且该处理器(141)被配置为也删除该另一空表面。
6.如权利要求1至5任一项所`述的设备,其中,处理器(141)被配置为从表面列表的起点和表面列表的终点中的至少一个中删除所述封装的多个表面。
7.一种用于解密封装的三维图形对象(130)的方法,所述封装的三维图形对象包括由点的列表和由该点的列表中的点定义的表面的列表所表示的加密的三维图形对象和至少一个封装,所述至少一个封装包含包围所述加密的三维图形对象的多个表面,其中,已使用格式保存的加密方法来加密所述加密的三维图形对象,在设备(140)中该方法包括以下步骤: 接收(240)所述封装的三维图形对象(130); 通过从所述表面的列表中删除所述封装的表面来删除(250)该封装以获得加密的三维图形对象; 解密(260)所述加密的三维图形对象以获得未加密的三维图形对象;以及 输出该未加密的三维图形对象。
8.如权利要求7所述的方法,进一步包括接收表示组成封装的表面的数量的一个数字或表示添加到加密的三维图形对象中的点的数量的一个数字。
9.如权利要求7所述的方法,其中,在表面的列表中,通过使用单一点所定义空表面来分离封装的表面和加密的三维图形对象的表面,该方法进一步包括找到所述空表面以便确定封装的表面和删除该空表面。
10.一种用于加密由点的列表和由该点的列表中的点定义的表面的列表所表不的三维图形对象(120)的设备,所述设备包含一个处理器(111),该处理器被配置为:接收(210)图形对象(120); 使用格式保存的加密方法来加密(220)该图形对象(120)以获得加密的图形对象; 通过添加至少一个封装来封装该加密的图形对象以获得封装的图形对象,通过对于每个封装,向表面列表中添加共同包围所述加密的图形对象的多个表面来添加所述至少一个封装;以及 输出(230)该封装的图形对象(130)。
11.如权利要求10所述的设备,其中,所述处理器(111)进一步被配置为输出表示组成封装的表面的数量的一个数字。
12.如权利要求10所述的设备,其中,所述处理器(111)被配置为在加密的图形对象的点的列表中插入至少一个用于定义封装的表面的点,并输出表示所添加的点的数量的一个数字。
13.—种用于加密由点的列表和由该点的列表中的点定义的表面的列表所表不的三维图形对象(120)的方法,该方法在设备(110)中包括以下步骤: 接收(210)图形对象(120); 使用格式保存的加密方法来加密(220)该图形对象(120)以获得加密的图形对象; 通过添加至少一个封装来封装该加密的图形对象以获得封装的图形对象,通过对于每个封装,向表面列表中添加共同包围所述加密的图形对象的多个表面来添加所述至少一个封装;以及 输出(230)该封装的图形对象(130)。
14.一种包括存储的指令的可计算的可读存储介质(160),所述指令在由处理器执行时执行权利要求7至9任一项所述的方法。
15.一种包括存储的指令的可计算的可读存储介质(170),所述指令在由处理器执行时执行权利要求13所述的方法。
【文档编号】G09C5/00GK103778849SQ201310489141
【公开日】2014年5月7日 申请日期:2013年10月18日 优先权日:2012年10月23日
【发明者】Y.梅茨, M.埃卢亚德 申请人:汤姆逊许可公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1