CN101958003A - 图像处理装置以及图像处理方法 - Google Patents
图像处理装置以及图像处理方法 Download PDFInfo
- Publication number
- CN101958003A CN101958003A CN2010102243118A CN201010224311A CN101958003A CN 101958003 A CN101958003 A CN 101958003A CN 2010102243118 A CN2010102243118 A CN 2010102243118A CN 201010224311 A CN201010224311 A CN 201010224311A CN 101958003 A CN101958003 A CN 101958003A
- Authority
- CN
- China
- Prior art keywords
- texture
- image
- coordinate
- unit
- input picture
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T15/00—3D [Three Dimensional] image rendering
- G06T15/04—Texture mapping
Landscapes
- Engineering & Computer Science (AREA)
- Computer Graphics (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Image Generation (AREA)
- Processing Or Creating Images (AREA)
- Controls And Circuits For Display Device (AREA)
Abstract
本发明提供一种使得运动图像的纹理映射结果达到操作者的期望的图像处理装置以及图像处理方法。坐标设定单元(180)接受操作者对纹理坐标的变更操作(缩放指定操作、偏移指定操作、旋转角度指定操作等),并存储该变更操作的内容。图像映射单元(150)在将输入图像纹理映射到对象的表面上时,根据基于存储在坐标设定单元(180)中的变更操作内容而被变更后的纹理坐标来进行纹理映射。纹理坐标的变更处理由坐标设定单元(180)或图像映射单元(150)进行。进行输入图像的纹理映射的结果是,例如能够得到操作者所期望的那样的缩放状态、偏移状态、旋转角度状态等。
Description
技术领域
本发明涉及图像处理装置以及图像处理方法,尤其涉及通过将基于图像数据的图像纹理映射到计算机图形图像上来进行图像合成的图像处理装置等。
背景技术
在三维图形系统中,将三维坐标分解为三角形等多边形(多角形),并绘制该多边形来绘制整个图像。因此,在此情况下,可以说三维图像是用多边形的组合定义的。但是,身边大多物体的表面具有由复杂的试样重复构成的图案,而且试样或图案越是复杂、精细,越是难以用三角形等对试样或图案建模。
纹理映射通过将使用扫描仪等获取的图像数据贴在物体表面上,来用较少的顶点数实现高真实性的图像,其定义从对象(Object)坐标系向纹理(Texture)坐标系的映射,并且求出从窗口(Window)坐标系向纹理坐标系的映射,从而求出与窗口坐标系中的各像素(Pixel,Picture Cell Element)对应的纹理的元素、即纹元(Texel,Texture Cell Element)。
使用在纹理上的图像数据被保存在被称为纹理存储器的存储区域中。因此,当进行使用运动图像数据随时更新纹理存储器的处理时,可基于运动图像进行纹理映射处理。
例如,专利文献1中披露了对运动图像进行处理来进行纹理映射的三维图像处理装置。此外,专利文献2中披露了一种图像生成装置,该图像生成装置以交互方式指定CG对象的顶点,并指定纹理坐标等,由此对意图的形状进行纹理映射。
在先技术文献
专利文献
专利文献1:日本专利文献特开平11-053573号公报;
专利文献2:日本专利文献特开07-057118号公报。
发明内容
发明要解决的问题
CG(计算机图形)描述数据由专业的CG设计师制作。在其虚拟三维空间中配置有多个CG对象,表面属性被定义为材质。即使在纹理映射运动图像时,在CG制作过程中,也不能一边观察被用于播放时的运动图像的被纹理映射的图像一边操作。此外,要制作的CG也有时是动画。
被纹理映射的表面的外貌根据CG对象的配置或动画的运动而变化,另一方面,要贴到该表面上的图像除应用的时候之外不确定。因此,难以考虑最终的整个图像来制作CG。
纹理映射静止图像的技术原本是为了表现CG对象(虚拟物体)的表面特性的,例如可用于附加木纹或瓷砖试样。因此,通过与该对象的形状相匹配的映射来显示静止图像。然而,当纹理映射运动图像时,与此完全不同,纹理映射静止图像的技术诸如作为运动图像的特殊效果的一个环节等而被使用。在木纹等的情况下,由于其追随CG对象的运动,因此不用顾及画面的上下等而仅需表现物体的表面即可,而在运动图像的情况下,相比于物体,更希望运动图像所显示的状态能够达到操作者的意图。
例如,在树桩的CG图像的情况下,树桩的表面通常可看到年轮。因此,在该表面上纹理映射将年轮形成为图像的静止图像,并且配置静止图像,以使年轮的轮中央落在树桩的中央并且大致与树桩的外周形状(自然树木的外周形状不是精确的圆形而是具有凹凸等)相匹配,由此使得看起来自然。即,通过如此设定纹理坐标(UV坐标)来进行位置对准和方向对准。如此设定的纹理坐标与树桩的表面对应起来被描述到CG描述数据中。
当在播放中使用该CG描述数据时,既存在将制作的树桩的CG图像直接播放的情况,也存在将生动的运动图像、例如演出者的脸部图像纹理映射到树桩的表面上来播放的情况。即,在两个以上的用途中使用同一个CG描述数据。
与树桩的表面对应起来的纹理坐标被设定成使得年轮的图像看起来自然。如果将运动图像纹理映射到该表面上,则运动图像的上下方向、例如演出者的脸部图像的上下方向由于为年轮而设定的纹理坐标而有可能朝向不自然的方向。或者,脸部图像的中间部位可能落座树桩的端部,从而导致脸部图像在其中间被切断或者被分割。由于存在这样的问题,目前为止不能将同一个CG描述数据用于两个用途。图18的(a)和(b)示出了由于对象发生了旋转而纹理映射后的图像(咖啡杯)朝向不自然的方向的例子。
本发明的目的在于提供当在直播的应用等中使用制作的CG时可使运动图像的纹理映射结果达到操作者的期望的图像处理装置等。
解决问题的手段
本发明的概念在于一种处理装置,包括:图像生成单元,其基于计算机图形描述数据来生成计算机图形图像;图像映射单元,将输入图像纹理映射到所述图像生成单元绘制的计算机图形的对象的表面上;以及坐标设定单元,接受纹理坐标的变更操作,并存储该变更操作的内容;中,所述图像映射单元在将输入图像纹理映射到所述对象的表面上时,根据基于存储在所述坐标设定单元中的变更操作内容而被变更后的纹理坐标来进行纹理映射。
在该发明中,通过图像生成单元基于计算机图形描述数据来生成计算机图形图像。在此情况下,通过将三维坐标分解成三角形等多边形(多角形)并绘制该多边形,来进行整个图像的绘制。此外,通过图像映射单元将输入图像纹理映射到图像生成单元绘制的计算机图形的对象的表面上。
此外,通过坐标设定单元接受纹理坐标的变更操作,并存储该变更操作的内容。并且,在图像映射单元中,当将输入图像纹理映射到对象的表面上时,根据基于存储在坐标设定单元中的变更操作内容而被变更后的纹理坐标来进行纹理映射。基于变更操作内容来变更纹理坐标的处理(变换处理)例如通过坐标设定单元或图像映射单元来进行。
如此,当将输入图像纹理映射到对象的表面上时,根据基于纹理坐标的变更操作内容被变更后的纹理坐标来进行纹理映射。从而,能够得到操作者所期望那样的输入图像的纹理映射结果。并且,能够使用在进行CG制作时纹理映射了静止图像的CG和在应用时纹理映射了输入图像的CG这二者,可通过一个CG制作获得多个成果,提高了效率。
例如,在坐标设定单元中,接受对要被纹理映射到对象的表面上的输入图像的旋转角度的指定,并存储该旋转角度的指定内容。并且,在图像映射单元中,当将输入图像纹理映射到对象的表面上时,根据以使被纹理映射到对象的表面上的输入图像变为所指定的旋转角度的方式被变更后的纹理坐标,来进行纹理映射。在此情况下,被纹理映射到对象的表面上的输入图像变成所指定的旋转角度,例如竖立的状态。
例如,当计算机图形描述数据中包含动画时,坐标设定单元所接受的旋转角度的指定是对要被纹理映射到动画内的预定帧中的对象的表面上的输入图像的旋转角度的指定。在此情况下,被纹理映射到动画内的预定帧中的对象的表面上的输入图像变成所指定的旋转角度,例如竖立的状态。
此外,例如在坐标设定单元中,接受要被纹理映射到对象的表面上的输入图像的缩放指定,并存储该缩放指定内容。并且,在图像映射单元中,当将输入图像纹理映射到对象的表面上时,根据以使被纹理映射到对象的表面上的输入图像变为所指定的缩放状态的方式被变更后的纹理坐标,来进行纹理映射。在此情况下,被纹理映射到对象的表面上的输入图像变成所指定的缩放状态。
此外,例如,在坐标设定单元中,接受要被纹理映射到对象的表面上的输入图像的偏移指定,并存储该偏移指定内容。并且,在图像映射单元中,当将输入图像纹理映射到对象的表面上时,根据以使被纹理映射到对象的表面上的输入图像变成所指定的偏移状态的方式被变更后的纹理坐标,来进行纹理映射。在此情况下,被纹理映射到对象的表面上的输入图像变成所指定的偏移状态。
发明效果
根据本发明,当将输入图像纹理映射到对象的表面上时,根据基于纹理坐标的变更操作内容被变更后的纹理坐标来进行纹理映射,因此运动图像的纹理映射能够达到操作者的期望。
附图说明
图1是示出作为实施方式的图像处理装置的结构示例的框图;
图2是示出材质所带的表面信息的例子的图;
图3是示出构成图像选择操作单元的控制面板的外观的一个示例的图;
图4是示出图像生成单元和图像映射单元的具体结构例的框图;
图5是示出图像生成单元和图像映射单元的功能框的结构例的图;
图6是用于说明纹理映射的原理的图;
图7是示出纹理坐标变换之前和变换之后的图像映射状态的图;
图8是示出在缩放指定为缩小时对于超过[0,1]的值的图像映射状态例的图;
图9是示出在指定了偏移时针对超过[0,1]的值的图像映射状态例的图;
图10是用于说明纹理图像的旋转的图;
图11是用于说明基于纹理坐标和画面的坐标来求出倾斜角(-θ)的原理的图;
图12是用于说明向CG动画图像进行的纹理映射的图;
图13是示出坐标设定单元的概念性功能框结构的一个示例的图;
图14是示出坐标设定单元的处理步骤的流程图;
图15是用于说明使纹理图像朝上的多边形的三角形的选择操作的图;
图16是示出向CG图像进行的纹理映射状态(有纹理坐标的变换)的图;
图17是示出图像处理装置的变形例的框图;
图18是示出向CG图像进行的纹理映射状态(无纹理坐标的变换)的图;
具体实施方式
下面对用于实施发明的方式(下面称为“实施方式”)进行说明。说明按以下顺序进行。
1.实施方式
2.变形例
<1.实施方式>
[图像处理装置的结构]
对本发明的实施方式进行说明。图1示出了作为实施方式的图像处理装置100的结构示例。该图像处理装置100具有:CG(Computer Graphics:计算机图形)制作单元110、表面指定单元120、网络130、图像生成单元140、以及图像映射单元150。另外,该图像处理装置100包括矩阵开关160以及图像选择操作单元170。CG制作单元110、表面指定单元120以及图像生成单元140分别与网络130连接。
CG制作单元110由带有CG制作软件的个人计算机(PC:Personal Computer)构成。该CG制作单元110输出预定格式的CG描述数据。CG描述数据的格式例如有Collada(注册商标)。Collada是用于在XML(Extensible Markup Language,可扩展置标语言)的基础上实现3D的CG数据交换的描述定义。在CG描述数据中例如描述有如下的信息。
(a)材质的定义
该材质的定义是CG对象的表面性质(外貌)。该材质的定义中包含颜色、反射方式、发光、凹凸等信息。并且,该材质的定义中有时包含纹理映射的信息。纹理映射如上所述是将图像贴到CG对象上的方法,其能够减轻处理系统的负荷的同时表现出复杂的模样等。图2示出了材质所带的表面信息的例子。另外,有时不指定色彩,而指定纹理映射。
(b)几何学信息Geometry的定义
该几何学信息Geometry的定义中包含关于多边形网格的位置坐标、顶点坐标等的信息。
(c)相机的定义
该相机的定义中包含摄像机的参数。
(d)动画的定义
该动画的定义中包含动画的各关键帧中的各种值的信息。另外,该动画的定义中包含动画的各关键帧的时刻信息。各种信息例如是对应的对象(节点)的关键帧点的时刻、位置或顶点的坐标值、大小、切线向量、插值方法、各种信息在动画中的变化等的信息。
(e)场景中的节点(对象)的位置、方向、大小、对应的几何学信息定义、对应的材质定义
这些信息并不零散,例如被如下对应起来。
·节点…几何学信息
·节点…材质(多个)
·几何学信息…多边形集合(多个)
·多边形集合…材质(与节点对应的材质中的一个)
·动画…节点
构成一个画面的描述被称为场景。各个定义被称为库,并且在场景中被参考。例如,在存在两个长方体的对象的情况下,每个对象分别被描述为一个节点,并且各节点可联想材质定义中的一个。其结果是,每个长方体的对象可联想材质定义,从而可用依照各材质定义的色彩和反射特性来绘制。
或者,在长方体的对象通过多个多边形集合来描述、并且多边形集合可联想材质定义的情况下,每个多边形集合可用不同的材质定义来绘制。例如,长方体具有6个面,但有时长方体的对象用三个多边形集合描述,例如,其中的三个面为一个多边形集合,一个面为一个多边形集合,两个面为一个多边形集合。由于各个多边形集合能够联想不同的材质定义,因此也可以用不同的颜色来绘制每个面。
当在材质定义中指定了纹理映射时,基于图像数据的图像被纹理映射到在被联想的对象的面上。
在该实施方式中,如后所述,例如设定材质定义,以使输入图像被纹理映射。因此,既可以在长方体的对象的所有面上纹理映射相同的输入图像,也可以在每个面上纹理映射不同的输入图像。
下面示出了作为CG描述数据的Collada文件的实例(部分摘录例)。例如,在该实例中,定义了名称(值)为“01MatDefault”的材质。并且,该材质的实际内容描述了应参考“01MatDefault-fx”的效果。另外,在该实例中,描述了在<library_visual_scenes>中通过结合″#Box01-lib″的几何学信息定义和“01MatDefault″的材质定义来进行绘制。
[Collada文件的实例]
<library_materials>
<material id=″01MatDefault″name=″01MatDefault″>材质定义
<instance_effect url=″#01MatDefault-fx″/>参考效果
</material>
</library_materials>
<library_effects>
<effect id=″01MatDefault-fx″name=″01MatDefault″>这是材质的内容
<profile_COMMON>
<technique sid=″standard″>
<phong>
<emission>
<color sid=″emission″>0.000000 0.000000 0.000000 1.000000</color>
</emission>
<ambient>在这里着色
<color sid=″ambient″>0.588235 0.952941 0.9215691.000000</color>
</ambient>
<diffuse>
<color sid=″diffuse″>0.588235 0.952941 0.9215691.000000</color>
</diffuse>
<specular>
<color sid=″specular″>0.000000 0.000000 0.000000 1.000000</color>
</specular>
<shininess>
<float sid=″shininess″>2.000000</float>
</shininess>
<reflective>
<color sid=″reflective″>0.000000 0.000000 0.0000001.000000</color>
</reflective>
<reflectivity>
<float sid=″reflectivity″>1.000000</float>
</reflectivity>
<transparent>
<color sid=″transparent″>1.000000 1.000000 1.000000 1.000000</color
>
</transparent>
<transparency>
<float sid=″transparency″>0.000000</float>
</transparency>
</phong>
</technique>
</profile_COMMON>
</effect>
</library_effects>
<library_geometries>
<geometry id=″Box01-lib″name=″Box01Mesh″>
<mesh>
<source id=″Box01-lib-Position″>
<float_array id=″Box01-lib-Position-array″count=″24″>位置信息的阵
列
-4.673016 -8.585480 0.000000
4.673016 -8.585480 0.000000
-4.673016 8.585480 0.000000
4.673016 8.585480 0.000000
-4.673016 -8.585480 10.185543
4.673016 -8.585480 10.185543
-4.673016 8.585480 10.185543
4.673016 8.585480 10.185543
</float_array>
<technique_common>
<accessor source=″#Box01-lib-Position-array″count=″8″stride=″3″>
<param name=″X″type=″float″/>位置信息的阵列的排列说明
<param name=″Y″type=″float″/>
<param name=″Z″type=″float″/>
</accessor>
</technique_common>
</source>
<source id=″Box01-lib-UV0″>
<float_array id=″Box01-lib-UV0-array″count=″24″>UV坐标的阵列
0.0000000.000000由于是单纯的立方体,因此只有0和1
1.0000000.000000
0.0000001.000000
1.0000001.000000
0.0000000.000000
1.0000000.000000
0.0000001.000000
1.0000001.000000
0.0000000.000000
1.0000000.000000
0.0000001.000000
1.0000001.000000
</float_array>
<technique_common>
<accessor source=″#Box01-lib-UV0-array″count=″12″stride=″2″>
UV坐标的说明
<param name=″S″type=″float″/>
<param name=″T″type=″float″/>
</accessor>
</technique_common>
</source>
<vertices id=″Box01-lib-Vertex″>
<input semantic=″POSITION″source=″#Box02-lib-Position″/>
</vertices>
<polygons material=″01MatDefault″count=″12″>
<input semantic=″VERTEX″offset=″0″source=″#Box01-lib-Vertex″/>
<input semantic=″NORMAL″offset=″1″source=″#Box01-lib-Normal0″/
>
<input semantic=″TEXCOORD″offset=″2″set=″0″source=″#Box01-lib-
UV0″/>
<p>0 0 9 2 1 11 3 2 10</p>顶点信息
<p>3 3 10 1 4 8 0 5 9</p>
<p>4 6 8 5 7 9 7 8 11</p>
<p>7 9 11 6 10 10 4 11 8</p>
<p>0 12 4 1 13 5 5 14 7</p>
<p>5 15 7 4 16 6 0 17 4</p>
<p>1 18 0 3 19 1 7 20 3</p>
<p>7 21 3 5 22 2 1 23 0</p>
<p>3 24 4 2 25 5 6 26 7</p>
<p>6 27 7 7 28 6 3 29 4</p>
<p>2 30 0 0 31 1 4 32 3</p>
<p>4 33 3 6 34 2 2 35 0</p>
</polygons>
</mesh>
</geometry>
</library_geometries>
<library_animations>
<animation id=″Box01-anim″name=″Box01″>
<animation>
<source id=″Box01-translate-animation-inputX″>
<float_array id=″Box01-translate-animation-inputX-array″count=″4″>
0.000000 1.000000 1.033333 1.333333动画中的X坐标值变化的时刻
</float_array>
<technique_common>
<accessor source=″#Box01-translate-animation-inputX-array″count=″4″>
<param name=″TIME″type=″float″/>
</accessor>
</technique_common>
</source>
<source id=″Box01-translate-animation-outputX″>
<float_array id=″Box01-translate-animation-outputX-array″count=″4″>
-43.404125 -43.404125 -23.897228 13.150181动画中的X坐标值本身
</float_array>
<technique_common>
<accessor source=″#Box01-translate-animation-outputX-array″count=″4″
>
<param name=″X″type=″float″/>
</accessor>
</technique_common>
</source>
<source id=″Box01-translate-animation-intanX″>
<float_array id=″Box01-translate-animation-intanX-array″count=″4″>
0.000000 0.000000 1.884578 -0.000000
</float_array>
<technique_common>
<accessor source=″#Box01-translate-animation-intanX-array″count=″4″>
<param name=″X″type=″float″/>
</accessor>
</technique_common>
</source>
<source id=″Box01-translate-animation-outtanX″>
<float_array id=″Box01-translate-animation-outtanX-array″count=″4″>
0.000000 0.000000 16.961202 0.000000
</float_array>
<technique_common>
<accessor source=″#Box01-translate-animation-outtanX-array″count=″4″>
<param name=″X″type=″float″/>
</accessor>
</technique_common>
</source>
<source id=″Box01-translate-animation-interpolationX″>
<Name_array id=″Box01-translate-animation-interpolationX-array″count=″
4″>
BEZIER BEZIER BEZIER BEZIER
</Name_array>
<technique_common>
<accessor source=″#Box01-translate-animation-interpolationX-array″c
ount=″4″>
<param type=″name″/>
</accessor>
</technique_common>
</source>
<sampler id=″Box01-translate-animationX″>
<input semantic=″INPUT″source=″#Box01-translate-animation-inputX″/>
<input semantic=″OUTPUT″source=″#Box01-translate-animation-outpu
tX″/>
<input semantic=″IN_TANGENT″source=″#Box01-translate-animation-i
ntanX″/>
<input semantic=″OUT_TANGENT″source=″#Box01-translate-animatio
n-outtanX″/>
<input semantic=″INTERPOLATION″source=″#Box01-translate-animat
ion-interpolationX″/>
</sampler>
<channel source=″#Box01-translate-animationX″target=″Box01/translate.
X″/>这里确定(target)以上是什么动画信息
</animation>
<library_visual_scenes>
<visual_scene id=″RootNode″name=″RootNode″>
<node id=″Box01″name=″Box01″>
<translate sid=″translate″>-43.404125 0.6970370.000000</translate>
<rotate sid=″rotateZ″>0 0 1 0.000000</rotate>
<rotate sid=″rotateY″>0 1 0 0.000000</rotate>
<rotate sid=″rotateX″>1 0 0 0.000000</rotate>
<scale sid=″scale″>1.000000 1.000000 1.000000</scale>
<instance_geometry url=″#Box01-lib″>参考几何学信息定义
<bind_material>
<technique_common>
<instance_material symbol=″01MatDefault″target=″#01MatDefault″/>
参考材质
</technique_common>
</bind_material>
</instance_geometry>
</node>
</visual_scene>
</library_visual_scenes>
返回到图1,矩阵开关160构成了图像选择单元,该图像选择单元从多个输入图像数据中选择性地获取一个图像数据。该矩阵开关160包括9条输入线、4条输出总线161~164、交叉点开关组165~168。
9条输入线在图中沿一个方向排列,分别从VTR、视频摄像机等输入图像数据。4条输出总线161~164与输入线交叉地沿其他方向排列。交叉点开关组165在9条输入线和输出总线161交叉的各个交叉点处与9条输入线以及输出总线161连接。基于用户的图像选择操作,该交叉点开关组165被控制,从而输入到9条输入线上的图像数据中的某一个被选择性地输出到输出总线161上。该输出总线161构成用于纹理映射的图像数据L的输出线(辅助输出线)。
另外,交叉点开关组166、167、168分别在9条输入线和输出总线162、163、164交叉的各交叉点处与9条输入线以及输出总线161连接。基于用户的图像选择操作,该交叉点开关组166、167、168被控制,从而输入到9条输入线上的图像数据中的某一个被选择性地输出到输出总线162、163、164上。该输出总线162、163、164构成用于外部输出的图像数据OUT1、OUT2、OUT3的输出线。
由于对由连续的帧数据构成的图像数据进行切换,因此交叉点开关组165~168的各个交叉点开关的接通/断开动作在作为帧的断开处的垂直消隐区间内进行。
图像选择操作单元170接收发给上述矩阵开关160的指示的操作输入。该图像选择操作单元170由与各个输出总线分别对应的按钮行构成,各按钮被构成为与各输入线相对应。
图3示出了构成图像选择操作单元170的控制面板170A的外观的一个示例。在该控制面板170A上,与输出总线161~164分别相对应的沿左右方向延伸的按钮行171~174在上下方向上排列。各按钮行由用于选择与对应于各输入线的输出总线之间的连接的择一式按钮构成,选中的按钮被点亮。
在控制面板170A的上部设置有文字显示部175,在该文字显示部175上显示用于识别向各个输入线的输入图像的文字。另外,在控制面板170A的左部设置有文字显示部176,在该文字显示部176上显示用于识别各按钮列所对应的输出总线上得到的图像数据的文字。
返回到图1,图像生成单元140基于由CG制作单元110制作的CG描述数据来生成三维空间图像、即CG图像。该图像生成单元140不进行耗费时间的渲染处理,而是按动画帧的实际时间生成图像。
图像生成单元140在读入CG描述数据后,将各个定义等信息保存在存储器中,并且这些信息之间的对应关系也作为数据结构而被保持。另外,图像生成单元140还将用于执行动画的关键帧中的各种值保存在存储器中。
例如,当绘制某个节点的几何学信息中的多边形集合时,参考该几何学信息和对应起来的材质定义来按照其色彩等的指定来绘制该多边形集合。在动画的情况下,使当前时刻逐个帧地前进,并通过对当前时刻前后的关键帧中的各值进行插值来确定各值,由此进行绘制。
从表面指定单元120向该图像生成单元140送出要纹理映射输入图像的对象的指定信息。图像生成单元140控制图像映射单元150,以便将输入图像纹理映射到该指定信息所示的对象的表面上。
图像映射单元150将输入图像纹理映射到图像生成单元140所绘制的CG中由表面指定单元120指定的纹理映射对象的表面上。该图像映射单元150在被安装时与上述的图像生成单元140形成一体,图像映射单元150可通过CPU(Central Processing Unit,中央处理器)上的基于软件的控制、以及GPU(Graphics Processing Unit,图形处理器)等硬件的动作来实现。控制软件指定进行纹理映射的多边形集合并将其指示给软件。
[图像生成单元以及图像映射单元的结构例]
图4示出了图像生成单元140和图像映射单元150的具体结构例。图像生成单元140和图像映射单元150包括图像输入输出部141、GPU 142、本地存储器143、CPU 144以及主存储器145。另外,图像生成单元140和图像映射单元150包括周边设备控制部146、硬盘驱动器(HDD)147、以太网电路148a以及网络端子148b。另外,图像生成单元140和图像映射单元150包括USB(Universal Serial Bus,通用串行总线)端子149以及SDRAM(SynchronousDRAM,同步动态随机存储器)151。“以太网”是注册商标。
图像输入输出部141输入用于进行纹理映射的图像数据,并且输出将基于图像数据的图像适当地纹理映射了的CG图像的图像数据。该图像输入输出部141最大能够输入四个系统的图像数据,并且最大能够输出四个系统的图像数据。这里被处理的图像数据例如是由SMPTE 292M规定的HD-SDI(High Definition television-Serial Digital Interface,高清串行信号接口)规格的图像数据。GPU 142和主存储器145能够同等地对图像输入输出部141进行存取。
主存储器145起到CPU 144的工作区域的功能,并且暂时存储从图像输入输出部141输入的图像数据。CPU 144控制图像生成单元144和图像映射单元150的整体。该CPU 144与周边设备控制部146连接。该周边设备控制部146进行CPU144和周边设备之间的接口处理。
CPU 144经由周边设备控制部146与内置的硬盘驱动器147连接。另外,CPU 144经由周边设备控制部146、以太网电路148a与网络端子148b连接。另外,CPU 144经由周边设备控制部146与USB端子149连接。并且,CPU 144经由周边设备控制部146与SDRAM 151连接。
CPU 144进行纹理坐标的控制。即,该CPU 144对输入图像数据进行用于将基于该输入图像数据的图像纹理映射到GPU 142所绘制的多边形的表面上的处理。GPU 142基于保存在硬盘驱动器147等中的CG描述数据生成来CG图像,并且根据需要将输入图像纹理映射到被指定的多边形的表面上。本地存储器143在起到GPU142的工作区域的功能的同时,暂时存储由GPU 142制作的CG图像的图像数据。
CPU 144除了能够对主存储器145进行存取之外,也能够对本地存储器143进行存取。同样,GPU 142能够对本地存储器143进行存取,并且也能够对主存储器145进行存取。由GPU 142生成并起初存储在本地存储器143中的CG图像数据从该本地存储器143中依次被读出,并从图像输入输出部141输出。
图5示出了上述图像生成单元140和图像映射单元150的功能框图的结构示例。该图像生成单元140和图像映射单元150包括图像输入部152、纹理图像存储部153、CG控制部154、CG绘制部155、纹理坐标控制部156、帧缓冲器157以及图像输出部158的功能框。
图像输入部152和图像输出部158由图像输入输出部141构成。另外,纹理图像存储部153由主存储器145构成。另外,CG控制部154和纹理坐标控制部156由CPU 144构成。另外,CG绘制部155由GPU 142构成。另外,帧缓冲器157由本地存储器143构成。
通过成对地增加图像输入部152和纹理图像存储部153,能够增加图像输入的系统。另外,通过成对地增加帧缓冲器157和图像输出部158,能够增加图像输出的系统。
这里,参照图6,示出了纹理映射的原理。如图6的(a)所示,将U、V坐标(纹理坐标)的值、即0至1分别对应到进行纹理映射的图像上(运动图像也可以)。图6的(b)是在结合两个直角三角形的多边形而成的长方形上通过在各个顶点上设定图示的U、V坐标的值而纹理映射了的图像。此时变为纵向缩小的图像。图6的(c)是将图6的(b)的图像旋转后的情况,即便旋转多边形,图像也附着在其上。
返回到图1,如上所述,表面指定单元120指定输入图像被纹理映射的纹理映射对象。并且,表面指定单元120经由网络130向图像生成单元140发送该指定信息。该表面指定单元120例如由GUI(Graphical User Interface,图形用户界面)实现。
表面指定单元120例如显示CG描述数据中的对象所被赋予的预定属性的值(名称)作为选择项以供操作者选择,由此使操作者选择作为纹理映射对象的对象。表面指定单元120将选中的属性的值作为要纹理映射的对象的指定信息发送给图像生成单元140。这里,预定属性假定是材质定义或材质定义所带的表面信息等。
坐标设定单元180接受纹理坐标的变更操作,并存储该变更操作的内容。该坐标设定单元180在被安装时与上述的图像生成单元140形成一体。图像映射单元150在将输入图像映射到作为纹理映射对象的对象的表面上时,根据基于存储在坐标设定单元180中的变更操作内容而被变更的纹理坐标来进行纹理映射。
操作者对坐标设定单元180进行用于指定如何变更纹理映射图像(输入图像)的指定输入。操作者在纹理映射对象的对象已被确定的状态下进行该指定输入。坐标设定单元180存储该指定输入作为变更操作内容。
操作者例如可在进行CG制作时进行该指定输入。在此情况下,CG设计师(CG制作及操作者)识别进行输入图像的纹理映射的场合和不进行该纹理映射的场合这两者来进行CG制作。此外,操作者例如可以在图像生成单元140从CG制作单元100获取CG描述数据后进行应用时进行该指定输入。在此情况下,由应用时的操作者决定如何进行输入图像的纹理映射。不管哪个情况下,坐标设定单元180都将指定输入和对应的CG描述数据配对存储。
[指定输入和纹理坐标变更的例子]
(A)缩放指定
对坐标设定单元180接受被纹理映射到对象的表面上的输入图像的缩放指定、并存储该缩放指定的内容的情况进行说明。
纹理坐标的U、V均处于0至1之间,通过将该区间完全映射到物体表面上,可显示图像的x、y的整个区域。与此相对,当想放大图像时,如果将U、V的更小的区间、例如0.3至0.7的区间映射到物体表面,则结果可放大图像。
在此情况下,如果将多边形的各顶点的原U、V值设为u1、v1,则新U、V的值u2、v2可通过下式(1)、式(2)求出。
u2=0.4×u1+0.3…(1)
v2=0.4×v1+0.3…(2)
坐标设定单元180接受区间[0.3,0.7]的值的操作输入,作为缩放值。图像映射单元150通过与该缩放值相应的式(1)、式(2)来变换CG描述数据的相应对象表面的多边形的U、V值,然后进行纹理映射。
例如,图7示出了纹理坐标的变换之前和变换之后的图像映射状态。图7的(a)示出了在纹理图像没有被变换时纹理映射到结合两个直角三角形的多边形而成的长方形上的图像。与此相对,在纹理图像被变换后,只有图7的(b)的图像框内的图像被映射,从而变成缩放状态。
当将区间作为[a,b]来将式(1)、式(2)通式化时,如式(3)、式(4)所示。
u2=(b-a)×u1+a…(3)
v2=(b-a)×v1+a…(4)
如果将区间设为如[-1,-2]这样比[0,1]大的范围,则图像将被缩小。对于超过[0,1]的值,可以选择指定不显示或者重复显示中的任一个来作为纹理映射的动作。在该重复显示中,[1,2]等的区间也如[0,1]的区间那样处理。
图8的(a)和(b)示出了对于超过[0,1]的值的图像映射状态例。图8的(a)示出了选择指定了不显示的情况,对于超过[0,1]的值,什么也不显示。图8的(b)示出了选择了重复显示的情况,对于超过[0,1]的值,进行了重复显示。
如此,操作者通过指定显示区间[a,b],能够放大或缩小被纹理映射到CG对象的表面上的图像。
(B)偏移指定
对坐标设定单元180接受被纹理映射到对象的表面上的输入图像的偏移指定、并存储该偏移指定的内容的情况进行说明。
纹理坐标的U、V均处于0至1之间,通过将该区间完全映射到物体表面上,可显示图像的x、y的整个区域。与此相对,当想沿水平方向偏移图像时,如果将U的例如0.3以上的部分映射到物体表面,则结果图像将向左侧偏移0.3。
在此情况下,如果将多边形的各点的原U值设为u1,则新U的值u2可通过下式(5)求出。
u2=u1+0.3…(5)
坐标设定单元180接受区间[0.3]的值的操作输入,作为水平方向的偏移值。图像映射单元150通过与该偏移值相应的上述式(5)来变换CG描述数据的相应对象表面的多边形的U值,然后进行纹理映射。
当将水平方向的偏移值作为[c]来将式(5)通式化时,如式(6)所示。
u2=u1+c…(6)
此外,当想沿垂直方向偏移图像时,如果将V的例如0.3以上的部分映射到物体表面,则结果图像将向下侧偏移0.3。在此情况下,如果将多边形的各点的原V值设为v1,则新V的值v2可通过下式(7)求出。
v2=v1+0.3…(7)
坐标设定单元180接受区间[0.3]的值的操作输入,作为垂直方向的偏移值。图像映射单元150通过与该偏移值相应的式(7)来变换CG描述数据的相应对象表面的多边形的V值,然后进行纹理映射。
当将垂直方向的偏移值作为[c]来将式(7)通式化时,如式(8)所示。
v2=v1+c…(8)
在此情况下,对于超过[0,1]的值,通常指定“重复显示”。即,在c=0.5的情况下,对于u1=0.8的点,得到u2=0.8+0.5=1.3,但其被当作0.3来处理。图9示出了对于超过[0,1]的值的图像映射状态例。在此情况下,u2=u1+0.5,v2=v1,是沿水平方向偏移了0.5的例子。
如此,操作者通过指定U的偏移值[c],能够沿水平方向偏移被纹理映射到CG对象的表面上的图像。此外,操作者通过指定V的偏移值[c],能够沿垂直方向偏移被纹理映射到CG对象的表面上的图像。也可以一并应用该偏移指定和上述的缩放指定。
(C)旋转角度指定
对坐标设定单元180接受对被纹理映射到对象的表面上的输入图像的旋转角度的指定、并存储该旋转角度的指定内容的情况进行说明。
有时要输出的CG图像中的对象(多边形网格)被配置成旋转的状态。被纹理映射了的图像由于在旋转后映射的,因此结果如图6的(c)、图10的(a)所示的那样被倾斜显示。
若要将被纹理映射了的图像以预定的旋转角度配置,例如竖立配置,则需要将对象的配置保持不变,并旋转纹理图像。当将要纹理映射结果的粘贴图像旋转角度θ时,只要纹理坐标的U、V的值旋转-θ。例如,如图10的(b)所示,以纹理空间的(0.5,0.5)为中心旋转-θ。顺便说一下,虽然绕着纹理空间的任意位置都可旋转,但对于通常的图像来说,将原图像画面的正中心作为旋转中心的做法不会导致图像中心发生偏移,较为妥当。
在此情况下,如果将多边形的各点的原U、V值设为u1、v1,则新U、V的值u2、v2可通过下式(9)矩阵运算来求出。
【数学式1】
坐标设定单元180接收用于指定被纹理映射到预定的CG对象的表面上的图像的旋转角度、例如竖立的操作输入。图像映射单元150基于上述的旋转角度的指定输入,从纹理坐标和画面的坐标求出倾斜角(-θ),并通过上式(9)来变换CG描述数据的相应对象表面的多边形的U、V值,然后进行纹理映射。为了求出倾斜角(-θ),在上述的操作输入中指定构成预定的CG对象的多边形三角形。如果在该操作输入中设定通过定点设备(pointing divece)来指示CG图像的一点的方法,则可容易地进行操作。
下面说明从纹理坐标和画面的坐标求出倾斜角(-θ)的原理。
图11的(a)示出了输入图像被纹理映射的多边形三角形。在该图中,(x1,y1)、(x2,y2)、(x3,y3)表示多边形三角形的顶点坐标,并且,(u1,v1)、(u2,v2)、(u3,v3)表示与各顶点坐标对应的纹理坐标。
关注各顶点中的例如v值最大的顶点。这里,v3>v1,v3>v2,因此关注顶点坐标为(x3,y3)的顶点。当v值达到最大的顶点有两个时,关注v值最小的顶点即可。
在针对(x3,y3)的边的延长直线上存在u的值为u3的点。在图中,用(x4,y4)表示该点的坐标,并将对应的纹理坐标设为(u3,v3)。在图中示出了该点处于边上,但该点不限定处于边上。
将上述坐标(x4,y4)的点和坐标(x3,y3)的点连结的线是纹理坐标的垂线。另一方面,xy坐标系上的垂线是将坐标(x4,y4)的点和坐标(x5,y5)的点连结的线。针对(x5,y5)的纹理坐标(u5,v5)可通过将顶点间比率适用到uv来得到。
当从纹理坐标(空间)观看以上的uv坐标值时,如图11的(b)所示。若要将纹理坐标的垂线与多边形中的垂线的方向对齐,则从图可知,只要将纹理图像旋转-θ角即可。如此,可从指定的多边形三角形的顶点坐标和uv坐标系(纹理坐标)得到用于使纹理图像与画面的垂直对齐的倾斜角(-θ)。由于还有剪切变形施加在纹理坐标上,因此用于垂直对齐的倾斜角和用于水平对齐的倾斜角不相一致。
如此,操作者通过指定被纹理映射到预定CG对象的表面上的图像的旋转角度,能够将所述被纹理映射到预定CG对象的表面上的图像的旋转角度设为期望的旋转角度,例如竖立。也可以一并应用该旋转角度指定、上述的缩放指定以及偏移指定。一般来讲,可以说是设定仿射变换。
接下来,对CG动作进行说明。在该动画的情况下,如上所述,输入图像被纹理映射的对象的模样将随着时间而变化。在此情况下,坐标设定单元180所接受的旋转角度的指定是对被纹理映射到动画中的预定帧的对象的表面上的输入图像的旋转角度的指定。
CG动画通过规定时间轴上的多个时刻(帧)处的CG(虚拟三维空间)的状态来制作。每个时刻(帧)被称为关键帧(KF)。在关键帧和关键帧之间的时刻(帧),通过在前后的关键帧插值不同的参数来确定CG的状态。
在CG动画中,多数在关键帧中规定诸如成为要点的对象的配置状态。这是因为将插值的中间设置为期望的状态在制作上比较困难的缘故。因此,对于CG动画,当从坐标设定单元180进行输入时,通过在成为要点的KF处进行操作输入,可得到期望的图像。
例如,在图12的(a)~(d)的动画中,假定图示的时刻f1、f2、f3、f4为关键帧。其中,在时刻f2,欲将要纹理映射的图像设置为y轴(V坐标方向)朝向垂直方向的竖直的状态。图12的(b)即示出了该状态。
操作者选择时刻f2的关键帧,并可进行指定以设定纹理坐标使得纹理映射了的图像竖立。因此,在本实施方式中,如下进行动作。
图13示出了作为设定单元180的概念性功能框结构的一个示例。即,坐标设定单元180具有纹理坐标设定单元180a和纹理坐标旋转单元180b。纹理坐标设定单元180a具有从操作者接受纹理坐标的变更操作的功能。此外,纹理坐标旋转单元180b具有按照操作者的指定来变换纹理坐标的功能。
当操作者输入旋转角度的指定时,图像映射单元150将纹理图像旋转后进行纹理映射。当如图13所示那样坐标设定单元180具有纹理坐标旋转单元180b时,在纹理坐标旋转单元180b中进行旋转纹理图像的处理。但是,也可以想到坐标设定单元180不具有纹理坐标旋转单元180b而仅具有纹理坐标设定单元180a的结构。在此情况下,例如由图像映射单元150或其他单元具有纹理坐标旋转单元。
图14的流程图示出了图13所示坐标设定单元180的处理步骤。
坐标设定单元180在步骤ST1中,启动处理,之后进入步骤ST2的处理中。在该步骤ST2中,坐标设定单元180读取由CG制作单元110生成的CG描述数据。该CG描述数据具有多个关键帧(KF)。
接着,坐标设定单元180在步骤ST3中,接受操作者对关键帧(KF)的选择操作。即、动画中的时刻被指定。然后,坐标设定单元180在步骤ST4中,显示在步骤ST3中选择的关键帧的CG图像。
接着,坐标设定单元180判断是否用步骤ST4中显示的关键帧进行操作。坐标设定单元180基于操作者的例如“确定关键帧”或“取消”的按钮操作来进行判断。当操作者进行了“取消”的按钮操作时,坐标设定单元180转移到步骤ST6的处理。
在该步骤ST6中,坐标设定单元180接受选择被显示的CG图像的多个多边形面中的一个面的操作输入。如图15所示,一般是接受从网格中的多个多边形面中选择一个的操作的功能。操作者没有必要识别多边形的划分而只需指定面的一点即可。
接着,坐标设定单元180在步骤ST7中,接受针对在步骤ST6中选中的面的、纹理图像的旋转角度的操作输入。例如,接受以使V坐标的方向与图像上的y坐标轴变为相同方向的指示。然后,坐标设定单元180在步骤ST8中,基于多边形面的选择、纹理图像的旋转角度等的操作输入,求出倾斜角(-θ),并变换纹理坐标(参考图10)。此时的变换对象是属于该多边形网格的所有顶点的纹理坐标。其结果是,被纹理映射到多边形网格上的运动图像被改变,以使该运动图像以均匀旋转或类似的状态被显示。
接着,坐标设定单元180在步骤ST9中显示纹理坐标的变换结果。优选如下:此时从图像生成单元140输出被实施了应用该变换的纹理映射的CG图像,该图像的状态提供给操作者,以使操作者根据该状态来进行判断。然后,坐标设定单元180在步骤ST10中判断是否有确定的操作输入。当有确定的操作输入时,确定处理,在步骤ST11中结束处理。
另一方面,当没有确定的操作输入时,返回到步骤ST3的处理,重复进行与上述同样的处理。在被纹理映射的面具有复杂的形状的情况下,结果将根据指定面的哪个点而发生变化,因此有效的做法是在试验和错误处理后设定能够决定点的操作方法。
通过以上的功能,在动画中的期望的帧中被纹理映射的图像变成期望的状态,例如竖立的状态等,而在其他帧中被纹理映射的图像将随着动画的CG的运动而以被粘贴在被纹理显示的面上的状态运动显示。能够兼顾期望的帧中的期望的显示状态和与CG图像的一体运动。
[图像处理装置的动作例]
对图1所示图像处理装置100的动作例进行说明。在CG制作单元110中,通过CG制作软件而生成用于生成预定的CG图像的CG描述数据。如此在CG制作单元110中生成的CG描述数据经由网络130被发送给图像生成单元140和表面指定单元120。
在表面指定单元(GUI)120中,CG描述数据中的对象所被赋予的属性的值(名称)被作为选择项,作为要纹理映射输入图像的纹理映射对象的对象通过操作者的操作被指定。该指定信息(属性的值)从表面指定单元120被发送给图像生成单元140。
在矩阵开关160中,通过图像选择操作单元170的按钮行171被操作者按压操作,被输入到9条输入线上的图像数据中的某一个作为用于纹理映射的图像数据L被选择输出。如此在矩阵开关160中得到的用于纹理映射的图像数据L被输出给图像映射单元150。
在图像生成单元140中,基于在CG制作单元110中制作的CG描述数据来生成作为三维空间图像的CG图像。并且如上所述在该图像生成单元140中具有从表面指定单元120发送而来的作为纹理映射对象的对象的指定信息。该图像生成单元140控制图像映射单元150,以使其将输入图像纹理映射到纹理映射对象的表面上。
在图像映射单元150中,在图像生成单元140的控制下,基于在矩阵开关160中得到的图像数据L的图像被纹理映射到作为纹理映射对象的对象的表面上。基于图像数据L的图像被纹理映射在作为纹理映射对象的对象的表面上的CG图像的图像数据Vout被输出到从图像生成单元140中引出的输出端子140a上。
此外,坐标设定单元180接受纹理坐标的变更操作,并存储该变更操作的内容。例如,该变更操作是用于进行要被纹理映射到对象上的纹理图像的缩放(放大、缩小)的缩放指定操作。此外,例如该变更操作是用于进行要被纹理映射到对象上的纹理图像的偏移(垂直偏移、水平偏移)的偏移指定操作。此外,例如该变更操作是用于对要被纹理映射到对象上的纹理图像进行旋转的旋转角度指定操作。
如此,当坐标设定单元180接受到纹理坐标的变更操作时,图像映射单元150根据基于变更操作内容变更后的纹理坐标来进行输入图像(纹理图像)的纹理映射。纹理坐标的变更例如由坐标设定单元180或图像映射单元150进行。
例如,当进行了缩放指定操作时,根据以使被纹理映射到对象的表面上的纹理图像(输入图像)变成所指定的缩放状态的方式被变更的纹理坐标,来进行纹理映射。因此,被纹理映射到对象的表面上的输入图像变成所指定的缩放状态。
此外,例如当进行了偏移指定操作时,根据以使被纹理映射到对象的表面上的纹理图像(输入图像)变成所指定的偏移状态的方式被变更的纹理坐标,来进行纹理映射。因此,被纹理映射到对象的表面上的输入图像变成所指定的偏移状态。
此外,例如当进行了旋转角度指定操作时,根据以使被纹理映射到对象的表面上的纹理图像(输入图像)变成所指定的旋转角度的方式被变更的纹理坐标,来进行纹理映射。因此,被纹理映射到对象的表面上的输入图像例如如图16的(a)、(b)所示那样变成所指定的旋转角度,例如竖立的状态。
在图1所示的图像处理装置100中,坐标设定单元180接受操作者对纹理坐标的变更操作(缩放指定操作、偏移指定操作、旋转角度指定操作),并存储该变更操作的内容。此外,图像映射单元150在将输入图像纹理映射到对象的表面上时,根据基于存储在坐标设定单元180中的变更操作内容被变更后的纹理坐标来进行纹理映射。从而,能够得到操作者所期望那样的输入图像的纹理映射结果。
此外,能够使用在进行CG制作时纹理映射了静止图像的CG和在应用时纹理映射了输入图像的CG这二者,并且通过只在纹理映射输入图像时改变纹理坐标,可通过一个CG制作获得多个成果,从而提高了效率。例如,在纹理映射静止图像的情况下,能够用以表现CG对象的表面,在纹理映射运动图像的情况下,能够用以使用CG修饰运动图像。
<2.变形例>
在上述图1所示的图像处理装置100中,坐标设定单元180与图像生成单元140一体形成。并且,在CG制作单元110中生成的CG描述数据经由网络130被发送给图像生成单元140,并被保存在该图像生成单元140中。
图17示出了将图1所示的图像处理装置100变形而得的图像处理装置100A。在该图17中,对于与图1对应的部分标注相同的标号,并省略其详细说明。
在该图像处理装置100A中,坐标设定单元180与图像生成单元140分开设置,并经由网络130与图像生成单元140连接。此外,在该图像处理装置100A中,保存在CG制作单元110中生成的CG描述数据的数据存储部190被连接在网络130上。图像生成单元140在生成CG图像时,从该数据存储部190读取CG描述数据来使用。
这里虽省略详细的说明,但图17所示的图像处理装置100A中的其他部分与图1所示的图像处理装置100的相应部分同样地构成,并同样地进行动作。
[其他变形例]
在动画中,也可以接受动画中关键帧以外的时刻的指定,并且在输出该时刻的CG图像的同时,通过使坐标设定单元如上述例那样动作来存储纹理坐标的变更操作,并使图像映射单元150利用该变更操作。
在上述的例子中,与对应的CG描述数据配对存储了一个纹理坐标的变更,但也可以使得坐标设定单元存储多个所述变更,并由操作者选择其中的一个供图像映射单元150使用。
而且,也可以与通过交叉点开关组165被选择的输入线的每一个相应地在坐标设定单元中设置存储区域,并根据通过交叉点开关组165被选择的输入线(的编号)来从所述存储区域中读取上述变更供图像映射单元150使用。
此外,在具有多个图像映射单元的情况下,也可以与每个图像映射单元相对应地设置坐标设定单元的存储区域。或者,也可以使图像映射单元如上述那样使用向每个存储区域提供图像并通过交叉点开关组被选择的输入线相应的存储区域。
[产业上的可用性]
本发明在直播的应用等中使用制作的CG时可使运动图像的纹理映射结果达到操作者的期望,能够应用于播放系统中的特效装置等。
Claims (6)
1.一种图像处理装置,包括:
图像生成单元,基于计算机图形描述数据来生成计算机图形图像;
图像映射单元,将输入图像纹理映射到所述图像生成单元绘制的计算机图形的对象的表面上;以及
坐标设定单元,接受纹理坐标的变更操作,并存储该变更操作的内容;
其中,所述图像映射单元在将输入图像纹理映射到所述对象的表面上时,根据基于存储在所述坐标设定单元中的变更操作内容而被变更后的纹理坐标来进行纹理映射。
2.如权利要求1所述的图像处理装置,其中,
所述坐标设定单元接受对要被纹理映射到所述对象的表面上的输入图像的旋转角度的指定,并存储该旋转角度的指定内容,
所述图像映射单元在将输入图像纹理映射到所述对象的表面上时,根据下述的纹理坐标来进行纹理映射,即:该纹理坐标基于存储在所述坐标设定单元中的指定内容被实施了变更以使得被纹理映射到所述对象的表面上的输入图像变成所述指定的旋转角度。
3.如权利要求2所述的图像处理装置,其中,
所述计算机图形描述数据中包含动画,
所述坐标设定单元所接受的旋转角度的指定是对要被纹理映射到所述动画内的预定帧中的所述对象的表面上的输入图像的旋转角度的指定。
4.如权利要求1所述的图像处理装置,其中,
所述坐标设定单元接受要被纹理映射到所述对象的表面上的输入图像的缩放指定,并存储该缩放指定的内容,
所述图像映射单元在将输入图像纹理映射到所述对象的表面上时,根据下述的纹理坐标来进行纹理映射,即:该纹理坐标基于存储在所述坐标设定单元中的指定内容被实施了变更以使得被纹理映射到所述对象的表面上的输入图像变成所述指定的缩放状态。
5.如权利要求1所述的图像处理装置,其中,
所述坐标设定单元接受要被纹理映射到所述对象的表面上的输入图像的偏移指定,并存储该偏移指定的内容,
所述图像映射单元在将输入图像纹理映射到所述对象的表面上时,根据下述的纹理坐标来进行纹理映射,即:该纹理坐标基于存储在所述坐标设定单元中的指定内容被实施了变更以使得被纹理映射到所述对象的表面上的输入图像变成所述指定的偏移状态。
6.一种图像处理方法,包括:
图像生成步骤,基于计算机图形描述数据来生成计算机图形图像;
图像映射步骤,将输入图像纹理映射到在所述图像生成步骤中绘制的计算机图形的对象的表面上;以及
坐标设定步骤,接受纹理坐标的变更操作,并存储该变更操作的内容;
其中,在所述图像映射步骤中,当将输入图像纹理映射到所述对象的表面上时,根据基于在所述坐标设定步骤中存储的变更操作内容而被变更后的纹理坐标来进行纹理映射。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2009-166178 | 2009-07-14 | ||
JP2009166178A JP2011022728A (ja) | 2009-07-14 | 2009-07-14 | 画像処理装置および画像処理方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN101958003A true CN101958003A (zh) | 2011-01-26 |
Family
ID=43464960
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2010102243118A Pending CN101958003A (zh) | 2009-07-14 | 2010-07-07 | 图像处理装置以及图像处理方法 |
Country Status (3)
Country | Link |
---|---|
US (1) | US8669996B2 (zh) |
JP (1) | JP2011022728A (zh) |
CN (1) | CN101958003A (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106126229A (zh) * | 2016-06-21 | 2016-11-16 | 网易(杭州)网络有限公司 | 特效生成方法及装置 |
CN107526504A (zh) * | 2017-08-10 | 2017-12-29 | 广州酷狗计算机科技有限公司 | 图像显示的方法及装置、终端及存储介质 |
CN111258519A (zh) * | 2018-11-30 | 2020-06-09 | 北京字节跳动网络技术有限公司 | 屏幕分屏实现方法、装置、终端和介质 |
CN113744124A (zh) * | 2020-05-29 | 2021-12-03 | 北京达佳互联信息技术有限公司 | 图像处理方法、装置、电子设备及计算机存储介质 |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9741150B2 (en) | 2013-07-25 | 2017-08-22 | Duelight Llc | Systems and methods for displaying representative images |
US11688190B2 (en) * | 2020-11-05 | 2023-06-27 | Adobe Inc. | Text refinement network |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20010035867A1 (en) * | 2000-04-26 | 2001-11-01 | Konami Corporation | Image generating device,image generating method, readable storage medium storing image generating program, and video game device |
CN1664864A (zh) * | 1999-12-22 | 2005-09-07 | 英特尔公司 | 用于在一个存储桶绘制系统中确保向后兼容的方法和装置 |
WO2005101986A2 (en) * | 2004-04-23 | 2005-11-03 | Sony Computer Entertainment Inc. | Image processing apparatus and image processing method |
JP2006338408A (ja) * | 2005-06-02 | 2006-12-14 | Sony Corp | 画像処理装置、その方法、そのプログラムおよび記録媒体 |
CN101203888A (zh) * | 2005-10-07 | 2008-06-18 | 科乐美数码娱乐株式会社 | 图像处理装置、图像处理方法及信息存储介质 |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2768228B2 (ja) | 1993-08-13 | 1998-06-25 | 日本電気株式会社 | 画像生成装置 |
JP2846252B2 (ja) * | 1994-08-22 | 1999-01-13 | 株式会社ナムコ | 3次元シミュレータ装置及び画像合成方法 |
JPH1153573A (ja) | 1997-07-31 | 1999-02-26 | Sony Corp | 3次元画像処理装置及びビデオウィンドウ生成方法 |
US7002591B1 (en) * | 2000-08-23 | 2006-02-21 | Nintendo Co., Ltd. | Method and apparatus for interleaved processing of direct and indirect texture coordinates in a graphics system |
US6816164B2 (en) * | 2002-12-04 | 2004-11-09 | Konami Computer Entertainment America, Inc. | Texture creating method, texture creating apparatus and computer-readable recording medium containing texture creating program |
-
2009
- 2009-07-14 JP JP2009166178A patent/JP2011022728A/ja not_active Abandoned
-
2010
- 2010-07-07 CN CN2010102243118A patent/CN101958003A/zh active Pending
- 2010-07-08 US US12/832,278 patent/US8669996B2/en active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1664864A (zh) * | 1999-12-22 | 2005-09-07 | 英特尔公司 | 用于在一个存储桶绘制系统中确保向后兼容的方法和装置 |
US20010035867A1 (en) * | 2000-04-26 | 2001-11-01 | Konami Corporation | Image generating device,image generating method, readable storage medium storing image generating program, and video game device |
WO2005101986A2 (en) * | 2004-04-23 | 2005-11-03 | Sony Computer Entertainment Inc. | Image processing apparatus and image processing method |
JP2006338408A (ja) * | 2005-06-02 | 2006-12-14 | Sony Corp | 画像処理装置、その方法、そのプログラムおよび記録媒体 |
CN101203888A (zh) * | 2005-10-07 | 2008-06-18 | 科乐美数码娱乐株式会社 | 图像处理装置、图像处理方法及信息存储介质 |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106126229A (zh) * | 2016-06-21 | 2016-11-16 | 网易(杭州)网络有限公司 | 特效生成方法及装置 |
CN106126229B (zh) * | 2016-06-21 | 2019-07-05 | 网易(杭州)网络有限公司 | 特效生成方法及装置 |
CN107526504A (zh) * | 2017-08-10 | 2017-12-29 | 广州酷狗计算机科技有限公司 | 图像显示的方法及装置、终端及存储介质 |
CN111258519A (zh) * | 2018-11-30 | 2020-06-09 | 北京字节跳动网络技术有限公司 | 屏幕分屏实现方法、装置、终端和介质 |
CN111258519B (zh) * | 2018-11-30 | 2021-07-06 | 北京字节跳动网络技术有限公司 | 屏幕分屏实现方法、装置、终端和介质 |
CN113744124A (zh) * | 2020-05-29 | 2021-12-03 | 北京达佳互联信息技术有限公司 | 图像处理方法、装置、电子设备及计算机存储介质 |
Also Published As
Publication number | Publication date |
---|---|
US8669996B2 (en) | 2014-03-11 |
JP2011022728A (ja) | 2011-02-03 |
US20110012914A1 (en) | 2011-01-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
TWI305900B (en) | Method of rendering graphics and 3d graphics hardware accelerator | |
CN101958003A (zh) | 图像处理装置以及图像处理方法 | |
US8514238B2 (en) | System and method for adding vector textures to vector graphics images | |
Alexa et al. | Point-based computer graphics | |
Chen et al. | A system of 3D hair style synthesis based on the wisp model | |
CN110415343A (zh) | 一种工程bim可视化三维引擎系统 | |
US7173622B1 (en) | Apparatus and method for generating 3D images | |
CN109427088A (zh) | 一种模拟光照的渲染方法及终端 | |
US8698830B2 (en) | Image processing apparatus and method for texture-mapping an image onto a computer graphics image | |
CN101189643A (zh) | 3d图像生成和显示系统 | |
JP2006293792A (ja) | 立体映像生成装置 | |
CN101021952A (zh) | 一种实现三维视频特效的方法及装置 | |
KR101669897B1 (ko) | 3d 객체 모듈을 이용한 가상 스튜디오 영상 생성 방법 및 장치 | |
CN101958002A (zh) | 图像处理装置以及图像处理方法 | |
CN106204735A (zh) | Unity3D地形数据在Direct3D 11环境中的使用方法 | |
JP5085399B2 (ja) | 3dモデル生成システム | |
Chu et al. | GL4D: A GPU-based architecture for interactive 4D visualization | |
CN101958005B (zh) | 图像处理装置以及图像处理方法 | |
CN102737403A (zh) | 图像处理装置、图像处理方法和程序 | |
Thiel et al. | Interaction and locomotion techniques for the exploration of massive 3D point clouds in VR environments | |
CN102737408A (zh) | 图像处理装置、图像处理方法和程序 | |
CN111275806A (zh) | 一种基于点的并行化实时渲染系统及方法 | |
CN116824095A (zh) | 基于虚拟现实的陶瓷艺术品自定义场景协同交互展示方法 | |
CN103325134A (zh) | 一种实时立体动画(2k)创作平台 | |
Li | Towards Real-Time Novel View Synthesis Using Visual Hulls |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C12 | Rejection of a patent application after its publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20110126 |