具体实施方式
以下,使用附图详细地说明本发明的实施例。
(实施例1)
利用图1说明包含本发明实施例1的场景修饰表现生成装置的电脑图形动画制作系统。图1是表示包含本发明实施例1的场景修饰表现生成装置的电脑图形动画制作系统的结构的一例的图。
本实施例的电脑图形动画制作系统100包括:动画脚本生成装置101,从用户输入的文本句子的脚本提取有关动作者和其动作的信息;场景修饰表现生成装置102,生成有关应附加在动画的场景的修饰表现(以下称为“场景修饰表现”);以及动画生成装置111,生成最终的电脑图形动画。
动画脚本生成装置101从所输入的文本句子的脚本中(以下只称为“脚本”)提取有关动作者或其动作、动作的对象、地点、时间等的信息,并对提取出的这些信息和从这些信息推导出的用于动画的脚本(以下称为“动画脚本”)进行输出。
比如,如果所输入的脚本为“太郎匆忙地跑了。”,则分别进行以下的提取:作为动作者的信息提取“太郎”,作为动作者的动作的信息提取“跑”,作为“跑”的修饰信息提取“匆忙”,并且从这些信息生成“太郎匆忙地跑了”的动画脚本。在此,通过后述的特征参数提取单元104,作为脚本的特征参数提取“匆忙地”。
另外,如果所输入的脚本为“花子得到了灵感。”,则分别进行以下的提取:作为动作者的信息提取“花子”,作为动作者的动作的信息提取“拍手”,并且从这些信息生成“花子拍手”的动画脚本。另外,虽然在此将脚本中的“得到灵感”通过“拍手”的动作来表现,但是并不只限于此。比如,除了“拍手”以外,还可以考虑“睁大了眼睛”或者“打响指”等多种表现方法。
在场景修饰表现生成装置102中,作为与动画脚本生成装置101或动画生成装置111.等的其它装置的数据输入/输出装置,设置着输入数据获取单元103和数据输出单元110。
输入数据获取单元103将动画脚本生成装置101的输出,也就是在本实施例中,将脚本中包含的动作者以及其动作、还有脚本本身作为输入数据获取。另外,输入数据获取单元103还获取由动画生成装置111传送来的场景信息。输入数据获取单元103分别将所获取的脚本传送给特征参数提取单元104,将场景信息传送给场景修饰表现选择单元109。
另外,数据输出单元110将场景修饰表现输出到动画生成装置111。
另外,场景修饰表现生成装置102还具备单词特征辞典105。单词特征辞典105是使单词与对应单词的特征参数相对应的辞典,特征参数提取单元104使用单词特征辞典105。使用图2详细地说明单词特征辞典105。图2是表示本实施例的单词特征辞典的一例的图。
如图2所示,在单词特征辞典105中存储着识别号码201、单词(包含单词的组合)202以及表示对单词202作用的特征的特征参数203的多个组。
比如,表示匆忙的$(匆忙)的特征参数203对应着“匆忙地”的单词202。另外,“非常”+$$(特征参数)的单词的组合202表示为Add(+、$$特征参数),也就是表示在特征参数上赋予+。因为记号“+”意味着强调,所以Add(+、$$特征参数)表示强调特征参数。
另外,对“竭尽全力”的单词202,当在它的后面连接着表示移动动作的单词时,由表示非常匆忙的$(匆忙++)的特征参数203与其对应;当在它的后面连接着表示感情动作的单词202时,由表示非常夸张的动作的$(夸张++)的特征参数203与其对应。另外,记号“++”为表示比记号“+”的强调程度还大的记号。
这样,即使对于单词的组合202,也赋予对应的特征参数203。
比如,对“号啕大哭”的单词202赋予表示非常夸张的$(夸张+)的特征参数203。像这样,特征参数203还对应着不是副词、但包含副词性意思的单词202。
另外,对“非常”@$$(动作动词)的单词的组合202赋予表示夸张的$(夸张)的特征参数203。
另外,对“哇哇”@$(哭)的单词的组合202赋予表示夸张的$(夸张)、或者“哇哇”、“忐忑不安”、“张惶失措”等的表示赋予象声词或拟态词的$$(象声词)的特征参数203。
另外,对“发出尖叫”的单词202赋予表示恐怖的$(恐怖)的特征参数203;对“忽然想出来”的单词202赋予表示忽然想出来的$(得到灵感)的特征参数203。
另外,表示哑然的$(哑然)的特征参数203同时对应着“哑然”或“目瞪口呆”的单词202。
另外,No.10的例子与其它不同,它是根据脚本输入时的记述字体的大小来确定特征参数203的强调程度的记述。像这样,特征参数203不只对应着文字的意思,还对应着文字的字体。
这样构成单词特征辞典105。
接下来,说明特征参数提取单元104。特征参数提取单元104从传送来的脚本提取特征参数203,并传送到场景修饰表现选择单元109。具体而言,特征参数提取单元104参照单词特征辞典105,提取与脚本中含有的单词202对应的特征参数203。换言之,特征参数提取单元104从脚本提取表示该脚本的特征的特征参数203。
利用图3说明至特征参数提取单元104的输入和来自特征参数提取单元104的输出。图3是表示本实施例的文本句子的脚本301、还有与此对应得到的动作者302、动作303以及特征参数203的例子的图。
在图3的No.1~No.8的例子中使用的单词特征辞典105与图2的No.1~No.8相对应。同样的,在图3的No.9的例子使用的单词特征辞典105对应图2的No.9、No.10;在图3的No.10的例子使用的单词特征辞典105对应图2的No.11;在图3的No.11、No.12的例子使用的单词特征辞典105对应图2的No.12。
另外,在图3的脚本301中画了下线的部分为适用于图2的单词特征辞典105的部分。
从图2和图3的例子可以得知具有以下例子:虽然在脚本301上为相同表现的单词,但是得到不同的特征参数的例子(“竭尽全力”),以及,反之,虽然使在脚本301上为不同表现的单词,但是得到相同的特征参数的例子(“哭得非常厉害”和“哇哇哭”、“目瞪口呆”和“哑然”)。
这样,特征参数提取单元104能够通过使用单词特征辞典105,容易地提取与单词或者单词的组合202对应的特征参数203。另外,因为单词特征辞典105也对应着单词或者单词的组合202所包含的意思的特征参数203,所以特征参数提取单元104能够提取与脚本301所包含的意思对应的特征参数203。
另外,在场景修饰表现生成装置102中设置着存储场景修饰表现选择单元109所使用的信息的场景修饰表现辞典106和场景修饰表现最佳化知识108。
使用图4详细地说明场景修饰表现辞典106。图4是表示本实施例的场景修饰表现辞典的一例的图。
场景修饰表现辞典106包括:识别号码的辞典ID401、辞典项目的适合条件402、以及与该条件402适合时所得到的场景修饰表现403的组。
适合条件402由以下构成:在动画脚本生成装置101生成的动画脚本的图3的动作者302以及动作303、还有在特征参数提取单元104提取的图3的特征参数203。
动作者302表示动作者302为人、为动物或者为非生物等。动作303有表示跑、哭等的具体的动作的情形;以及喜、悲等的、处于某些动作、某些状态的原类型(meta-type),也就是表示具体的动作以外的全面(comprehensive)的动作的情形。虽然特征参数203的内容如图2所示,但是在场景修饰表现辞典106的适合条件402中,在无需按照特征参数203的大小来分辞典时,像辞典ID001或辞典ID002那样,将多个特征参数的大小用记号“|”连接作为条件来记述也是可以的。在此,记号“|”表示或(or)条件。另外,虽然在该例中连接三个特征参数,但是特征参数的数目并不只限于此,连接几个特征参数作为条件也可以。
另外,根据辞典ID401,也有多个与其对应着的场景修饰表现403。比如,辞典ID401为“001”或“004”、“008”等时,有多个场景修饰表现403与其对应着。
通过使用这样的场景修饰表现辞典106可以得知,比如适合条件402为“动作者@$$(人)、动作@$(跑)、特征参数=$(匆忙)、$(匆忙+)、或者$(匆忙++)”,也就是表示“人匆忙地跑”时(辞典ID401=001),场景修饰表现403为“在场景整体画上奔跑的线($线种)”、“在动作者空间的后面画线($(数量)、$(线种))”,或者“动作者的脸是咬紧牙关的脸”。另外,线($(线种)、$(数量))通过后述的场景修饰表现最佳化知识108,来表示所确定使用的线种或线的数量。
这里,动作者空间是指围绕动作主体的附近的空间,是在赋予表现时,有意识地不与表示动作者302的对象相重叠,而在其附近附加表现的空间。
另外,适合条件402为“动作者@$$(人)、动作@$(哭)、特征参数=$(夸张)、$(夸张+)、或者$(夸张++)”,也就是表示“人哭得很夸张”时(辞典ID401=002),场景修饰表现403表示“动作者的脸上流泪($量)”。另外,眼泪($(数量))表示通过后述的场景修饰表现最佳化知识108确定的动作者的脸上流淌的眼泪的量。
另外,适合条件402为“动作者@$$(人)、动作@$$(动作)、特征参数=$$(象声词)”,也就是显示“人在发出象声词(象声词、拟态词)”时(辞典ID401=003),场景修饰表现403“在动作者空间的上方显示$$(象声词)($(大小))”,也就是表示在人的上方显示象声词。另外,($(大小))表示通过后述的场景修饰表现最佳化知识108确定的要显示的象声词的大小。
另外,适合条件402为“动作者@$$(人)、动作@$$(动作)、特征参数=$(恐怖),$(恐怖+)、或者$(恐怖++)”,也就是表示“人在感觉到恐怖时做动作”(辞典ID401=004),场景修饰表现403表示“动作者(人)的头发竖起来”,或者“在动作者(人)空间的上方显示“可怕”的文字($(字体)、$(大小))”。另外,文字($(字体)、$(大小))表示通过后述的场景修饰表现最佳化知识108确定的要显示的文字的字体以及大小。
另外,适合条件402为“动作者@$$(人)、动作@$(拍手)、特征参数=$(得到灵感)”,也就是在表示“人在对什么得到灵感时拍手”时(辞典ID401=005),场景修饰表现403表示“发出动作者(人)$(拍手)的声音($(大小)),并且画上发出大声的线($(量))”。另外,发出声音$(大小)表示通过后述的场景修饰表现最佳化知识108确定的声音的大小。
另外,适合条件402为“动作者@$$(人)、动作@$$(动作)、特征参数=$(得到灵感)”,也就是表示“人在对什么得到灵感时所做某些动作”时(辞典ID401=006),场景修饰表现403表示“在动作者(人)空间的上方显示“!”的文字($(字体)、$(大小))”。
另外,适合条件402为“动作者@$$(人)、动作@$(吃)、特征参数=$(哑然)”,也就是表示“人在哑然地吃什么”时(辞典ID401=007),场景修饰表现403表示“动作者(人)掉了手里拿着$(用餐的小物件)或者$(食物)”。另外,$(用餐的小物件)或者$(食物)通过后述的场景修饰表现最佳化知识108来确定。
另外,适合条件402为“动作者@$$(人)、动作@$$(动作)、特征参数=$(哑然)”,也就是表示“人在哑然地做些动作”时(辞典ID401=008),场景修饰表现403表示“动作者(人)的动作停止($(长短))、在脸上画线($(量))”、或者“动作者以外的动作主体的动作停止($(长短)、在脸上画线$(量))”。另外,停止($(长短))通过后述的场景修饰表现最佳化知识108,表示确定的动作者或者动作者以外的动作主体的动作的停止时间长短;画线(($(量))表示通过后述的场景修饰表现最佳化知识108确定的在脸上画的线的量。
通过利用这样构成的场景修饰表现辞典106,能够从适合条件402确定场景修饰表现403。也就是说,能够确定与脚本对应的场景修饰表现。
另外,作为场景修饰表现403,除了图4所示以外,还能够使用赋予场景整体的表现、或者赋予动作者空间的表现、赋予动作者的表现等多种表现。也就是说,如图4所示的场景修饰表现403只是能够想到的场景修饰表现的变化的一例,除了图4所示,还能够使用多种场景修饰表现。在下面,进一步说明场景修饰表现的其它变化。
比如,作为赋予场景整体的场景修饰表现,有使场景整体变形的场景修饰表现(比如,整个变为水墨画的风格、油画的风格、深棕色调等);有对场景赋予追加表现的场景修饰表现(比如,在场景背景上画线来赋予表示速度或者“愕然”的印象、用来表现早晨而附加鸡的啼叫声等);有将场景的一部分构成要素更换成其它的构成要素的场景修饰表现(比如,当女朋友跑来时,风景的背景立刻变成沙滩等)。
另外,还可以考虑赋予动作者302的背景,也就是将场景修饰表现赋予给动作者空间。像上述那样,动作者空间是指围绕动作主体的附近的空间,是在赋予表现时,有意识地不与表示动作者302的对象相重叠,而在其附近附加表现的空间。作为赋予给该动作者空间的场景修饰表现,有对于动作者空间整体的场景修饰表现(比如,在动作者奔跑的姿态后面画上表示速度的线、将聚光灯照在动作者302身上、当骤然停止时赋予“吱”的效果音等);有在动作者302的背景放置文字的(比如,直接写上“唵唵”等的象声词、直接写上“!”(感叹号)或者
(音符记号)等的记号、除此以外将某些文字直接写在背景上等);有在动作者空间的背景上放置其它的对象的场景修饰表现(比如,在背景上画上玫瑰、当“对牛弹琴”的表层表现(surface expression)被使用时画上“牛”和“琴”、当“像蜜蜂一样忙”的表现被使用时画出“蜜蜂”、在圆圈(speech balloon)中画上问号或心型符(heart mark)等)。
另外,作为赋予给动作者302的脸和身体的场景修饰表现,有使脸和身体的组成部分变形的场景修饰表现(比如,使脸变圆、使眼角下垂、降低眼睛的位置、延长鼻子的下面、伸长手、头发竖起来等);有改变脸和身体的组成部分的数量的场景修饰表现(比如,出现很多手和脚等);在脸和身体的组成部分附加追加表现的(场景修饰表现比如,在脸的一部分画上竖线来附加“愕然”的印象、在眼睛中画上心型符或者星星、流淌大量的眼泪、使脸颊变红等);有将脸和身体的组成部分更换成其它的场景修饰表现(比如,将动作者的脸更换成其他人的脸等)。
另外,作为赋予给动作者302的场景修饰表现,有使动作者的组成部分的一部分的动作发生变化的场景修饰表现(比如,一圈圈地转动手等);有对动作者的动作整体施加影响的场景修饰表现(比如,动作者的动作停止、变慢、变快等)。
另外,作为赋予给动作者302的携带物品和服装的场景修饰表现,有使动作者的携带物品和服装的形状发生改变的场景修饰表现(比如,使手表或帽子变大/变小等);有使动作者拿着新东西、穿着新衣服的场景修饰表现(比如,使动作者手持写着字的标语牌、使动作者穿上滑雪服等)。
另外,当生成的动画为3D(Dimension)时,也就是场景修饰通过三维图形来实现时,与脚本对应的场景修饰表现能够通过改变其投影方法来实现。作为改变3D动画的投影方法而赋予场景修饰的例子,有使用变形的投影区域的例子(比如,只对脸部进行特写、从非常远的地方摄影等);有移动投影区域的例子(比如,以摄影主体为中心使画面一圈圈地转动、从远处急剧地拉近镜头等);有改变摄影时的光源的例子(比如,将光源设置于地面等)。
在这些场景修饰表现中,对应场景修饰表现的内容,有时插入$(量)或$(大小)等的多种变量。比如,在上述的例子中,在场景背景和动作者的脸上画线时,线的位置和数量、粗细、色调成为变量。另外,在使动作者的脸和身体的组成部分变形时,该变形量成为变量。而且,当场景修饰表现伴随着声音时,音质和音量成为变量。这些变量将在后述的场景修饰表现选择单元109的处理中被确定。
这样构成场景修饰表现辞典106。
接下来,说明场景修饰表现选择单元109。场景修饰表现选择单元109选择与场景修饰表现辞典106的适合条件402适合的场景修饰表现403。另外,当有多个与适合条件402适合的场景修饰表现403时,场景修饰表现选择单元109将电脑图形动画的场景信息适用于场景修饰表现最佳化知识108来进行场景修饰表现403的最佳化。另外,当场景修饰表现403具有变量时,场景修饰表现选择单元109将场景信息和特征参数适用于场景修饰表现最佳化知识108来进行场景修饰表现403的最佳化。
场景修饰表现选择单元109从动画生成装置111所管理的场景信息存储单元112获取场景信息。具体而言,动画生成装置111将对什么样的场景作为实际的动画来生成,作为场景信息存储在场景信息存储单元112。也就是说,场景信息为有关用于生成动画的场景的构成要素的信息。场景修饰表现选择单元109将由场景信息存储单元112存储的场景信息数据通过输入数据获取单元103而获取。
另外,虽然在本实施例中,动画生成装置111具备场景信息存储单元112,但是并不只限于此,场景修饰表现生成装置102具备场景信息存储单元112的实施例也是可以的。
接下来,说明场景信息。
当利用动画等的视觉上的表现时,有时需要具体地表现并未记述于正在关注的文章中的内容。比如,主人公穿着什么样的服装的信息,当该信息并不十分重要时,不被特别提及的情况较多,但是作为动画来表现时则需要通过某些服装来表现。另外,在主人公与副主人公正在说话的场景等,作为动画表现,是只表现主人公,还是将说话对方的副主人公也表现于同一画面等,可以考虑有多种表现。而且,在主人公笑着的场景等主人公实际上在什么地方,另外是站着还是坐着等,这些有时并未写在脚本中,在实际表现时存在表现的变化。因为场景修饰表现适用于这样的多种动画的场景修饰表现本身,所以在动画生成装置111,需要有被表现成什么样的场景的信息。该信息为场景信息。
使用图5(A)~图5(C)说明场景信息的具体例。图5(A)~图5(C)是分别表示本实施例的场景信息的一例的图。如图5(A)~图5(C)所示,场景信息500a~500c比如由主体(动作者)、地点、小物件以及时间的信息构成。场景信息500a表示:出现于场景的、可做动作的主体为太郎和花子;地点为公园;表现于场景的小物件为滑梯和单杠;时间为夜晚。另外,场景信息500b表示:可做动作的主体只有花子;地点和小物件与场景1相同;时间为白昼。场景信息500c表示:可做动作的主体有花子和太郎;地点为餐厅;小物件为餐叉;时间为夜晚。
另外,作为构成场景信息的信息也可以附加上述以外的信息。
下面,利用图6来说明场景修饰表现选择单元109所使用的场景修饰表现最佳化知识108。图6是表示本实施例的场景修饰表现最佳化知识的一例的图。
在场景修饰表现最佳化知识108中记述着以下的知识:用来基于场景信息的内容选择应使用的场景修饰表现的知识;以及,用来基于场景信息或者特征参数确定将插入在场景修饰表现的变量的值如何设定的知识。
具体而言,场景修饰表现最佳化知识108由作为知识的识别号码的知识ID601、作为知识的适用条件的知识适用条件602、以及与知识适用条件602适合时的有效的场景修饰表现最佳化内容603的组构成。
知识适用条件602为对于场景信息、已经得到的特征参数203、或有可能被选择的某个场景修饰表现的条件。如图6所记载的“$(场景)”表示场景信息,“$(特征参数)”表示已经得到的特征参数203,“$(场景修饰表现)”表示有可能被选择的某个场景修饰表现的组。
场景修饰表现最佳化内容603表示从多个场景修饰表现的组中应优先选择哪个,以及如何设定插入在场景修饰表现中的变量的值的最佳化的方法。另外,对于优先选择的方法,当记载有多个内容时,原则上记载在相对上位的内容被优先适用。其中,也有例外地必须适用的方法。在场景修饰表现选择单元109的动作的说明中,详细地说明具体的动作。
知识ID601为001~003的知识是表示从多个场景修饰表现的组中应优先选择哪个的知识。知识ID601为004~006的知识是表示如何设定插入在场景修饰表现中的变量的值的知识。知识ID601为007的知识包含:表示从多个场景修饰表现的组中应优先选择哪个的知识,以及如何设定插入在场景修饰表现中的变量的值的知识的双方。
具体而言,知识适用条件602为“$(场景)的构成主体为一个人”,也就是说,“记述于场景信息的主体为一个人”时(知识ID=001),场景修饰表现最佳化内容603为“使对于场景整体的表现优先”;不能做到时,则“使对于动作者或者动作者空间的表现优先”。
另外,知识适用条件602为“$(场景)的构成主体为多个”,也就是说,“记述于场景信息的主体为多个”时(知识ID=002),场景修饰表现最佳化内容603为:“如果存在有关动作者以外的动作主体的表现则对其予以优先”;不能做到时,则“使对于动作者或者动作者空间的表现优先”。
另外,知识适用条件602为“$(场景修饰表现)中存在文字适用条件”,也就是说,当“场景修饰表现中存在文字($字体)、($大小)”时(知识ID=003),因为赋予了“◎”的方法表示例外地必须适用的方法,所以在该例中,场景修饰表现最佳化内容603例外地必须适用“使文字适用优先”。
另外,知识适用条件602为“$(场景)的时间为$(白天)”,也就是说,表示“场景信息的时间为白天”时(知识ID=004),场景修饰表现最佳化内容603为“将线的颜色设定为深色”,也就是说,“在场景修饰表现的线($线种)的部分使用深色”。
另外,知识适用条件602为“$(场景)的时间为$(夜晚)”,也就是说,表示“场景信息的时间为夜晚”时(知识ID=005),场景修饰表现最佳化内容603为“将线的颜色设定为白色”,也就是说,“在场景修饰表现的线($线种)的部分使用白色”。
另外,知识适用条件602为“在$(特征参数)中存在+”时(知识ID=006),场景修饰表现最佳化内容603为“将所表现的内容的$(量)、$(大小)、$(长短)的值增加30%”,也就是说,“当场景修饰表现中插入$(量)、$(大小)、$(长短)的变量时,将其值增加30%”。
另外,知识适用条件602为“在$(特征参数)中存在++”时(知识ID=007),场景修饰表现最佳化内容603为“将所表现的的内容的$(量)、$(大小)、$(长短)的值增加60%”,而且,因为赋予了“◎”的方法表示例外地必须适用的方法,所以在该例中,进一步“当可适用的场景修饰表现存在多个时选择多个”。
场景修饰表现选择单元109参照场景修饰表现辞典106选择与动作者302、动作303以及特征参数203相符合的适合条件402。然后,对与所选择的适合条件402、场景修饰表现最佳化知识108、场景信息500以及特征参数203对应的场景修饰表现403进行最佳化并输出。
这样构成场景修饰表现生成装置102。
接下来,说明动画生成装置111。
动画生成装置111从场景修饰表现生成装置102分别输入动作者、动作以及场景修饰表现,利用对于输入的动作者的动作者数据、对于所输入的动作的动作数据以及对于所输入的场景修饰表现的场景修饰表现数据,生成动画。
动作者数据存储在动作者数据存储装置113,动作数据存储在动作数据存储装置114,场景修饰表现数据存储在场景修饰数据存储装置115。动作者数据是表示动作者的坐标数据或结构数据(texture data),动作数据是用来移动动作者的矩阵数据(matrix data)。另外,场景修饰表现数据是用来实现场景修饰表现的、图像数据或文本数据、语音数据等。
另外,动作者数据存储装置113、动作数据存储装置114以及场景修饰数据存储装置115可以分别在电脑图形动画制作系统100的外部或内部。
这样构成电脑图形动画制作系统100。
接下来,说明电脑图形动画制作系统100的动作。
首先,利用图7说明动画脚本生成装置101的动作。图7表示图1所示的动画脚本生成装置的动作的一例的流程图。
首先,将输入到电脑图形动画制作系统100的、用户想要进行动画处理的脚本,比如“花子竭尽全力地奔跑。”输入到动画脚本生成装置101(ST701)。
接下来,从在ST701输入的脚本301提取有关动作者302以及动作303的信息。比如,对“花子竭尽全力地奔跑。”的脚本301,作为动作者提取$(花子),作为动作提取$(奔跑)(ST702)。
然后,将有关在ST702中提取出的动作者302以及动作303的信息,与在ST701中输入的脚本301一并输出到场景修饰表现生成装置102(ST703)。
另外,因为动画脚本生成装置101所使用的自然语言解析方法和词汇辞典的内容转用通常进行的方法和内容即可,所以省略其说明。
比如,“花子竭尽全力地奔跑。”的动作为不及物动词,所以不带宾语,当为动作带宾语的及物动词时,比如,脚本301为“花子吃了很多蛋糕。”时,将$(花子)作为动作者、将$(吃)作为动作、将$(蛋糕)作为$(吃)的对象,将它们分别与在ST701输入的脚本301一并输出到场景修饰表现生成装置102。
如上所述,动画脚本生成装置101将从脚本301生成的动作者302以及动作303的信息、还有脚本301输出到场景修饰表现生成装置102。
下面,利用图8的流程图来说明场景修饰表现生成装置102的动作。图8表示图1所示的场景修饰表现生成装置的动作的一例的流程图。
首先,通过输入数据获取单元103,分别输入从动画脚本生成装置101传送来的、动作者和动作的信息、以及用户所输入的脚本。所输入的脚本传送到特征参数提取单元104(ST801)。
接下来,通过输入数据获取单元103,输入存储在场景信息存储单元112的场景信息(ST802)。
接下来,由特征参数提取单元104参照单词特征辞典105,对于在ST801输入的动作者和动作的信息、以及脚本,依次应用于单词202,并分别提取与所符合的单词202对应的特征参数203。与所提取的各个单词202对应的特征参数203输出到场景修饰表现选择单元109(ST803)。
接下来,由场景修饰表现选择单元109分别输入在ST801输入的动作者以及动作的信息、还有在ST803提取的特征参数203,参照场景修饰表现辞典106,选择与输入的动作者以及动作的信息、还有特征参数203相符合的适合条件402,并选择与所选择的适合条件402对应的场景修饰表现403(ST804)。
另外,由场景修饰表现选择单元109参照场景修饰表现最佳化知识108,提取所有的适合以下内容的知识适用条件602:在ST802所提取的前一个场景的场景信息、多个所选择的场景修饰表现、以及在ST803提取的特征参数,并参照所有的与所提取的知识适用条件602对应的场景修饰表现最佳化内容603,汇集可适用的场景修饰表现最佳化内容的集合。
接下来,在ST804选择的场景修饰表现403存在多个时(ST805:“是”),通过场景修饰表现选择单元109,从汇集的可适用的场景修饰表现最佳化内容中,利用表示从多个场景修饰表现的组中应优先选择哪个的知识,确定在ST804选择的多个场景修饰表现403中应适用哪个(ST806),并进入ST807的处理。
另一方面,当在ST804选择的场景修饰表现403不存在多个时(ST805:“否”),则不进行ST806的处理,进入ST807的处理。
接下来,通过场景修饰表现选择单元109,判断在ST804选择的场景修饰表现403中是否包含变量(ST807)。作为该判断的结果,当判断为包含变量时(ST807:“是”),通过场景修饰表现选择单元109,从汇集的可适用的场景修饰表现最佳化内容中,利用表示如何设定插入在场景修饰表现中的变量的值的知识,确定包含在选择的场景修饰表现403中的变量为哪个(ST808),并进入ST809的处理。
另一方面,当在ST804选择的场景修饰表现403中不包含变量时(ST807:“否”),则不进行ST808的处理,转移到ST809的处理。
最后,从数据输出单元110,输出场景修饰表现选择单元109所选择的场景修饰表现(ST809)。
下面,利用图9说明场景修饰表现生成装置102生成场景修饰表现的处理的具体例。图9是表示在对本实施例中图3所示的脚本赋予场景信息时最后得到的场景修饰表现的例子的图。
比如,考虑脚本301为“花子匆忙地奔跑。”、场景信息为500b的情形。
在该情形中,输入数据获取单元103将$(花子)作为动作者302、将$(奔跑)作为动作303输入,并将脚本301以及场景信息500b输入(ST801、ST802)。这里,脚本301中的“匆忙地”符合单词特征辞典105的No.1条目的单词202“匆忙地”,特征参数提取单元104提取$(匆忙)作为特征参数203(ST803)。接下来,场景修饰表现选择单元109参照场景修饰表现辞典106,提取与作为动作者302的$(花子)的人型(human-being type)的数据、作为动作303的$(奔跑)的数据、以及作为特征参数203的$(匆忙)相符合的适合条件402(辞典ID401=001),作为与适合条件402对应的场景修饰表现403选择3个:“在场景整体画上奔跑的线($(线种))”、“在动作者空间的后面画上线($(量)、$(线种))”、以及“动作者的脸为咬紧牙关的脸”(ST804)。
然后,场景修饰表现选择单元109参照场景修饰表现最佳化知识108,寻找与场景信息500b、多个所选择的场景修饰表现403、以及作为特征参数203的$(匆忙)适合的知识ID。在该情形中,因为构成场景信息500b的主体为花子一个人,所以与知识ID601为001的情形相符合。另外,因为场景信息500b中的时间为$(白天),所以与知识ID601为004的情形相符合。其它的知识不符合。将这些知识合并在一起,可适用的场景修饰表现最佳化内容为:表示从多个场景修饰表现403的组中应优先选择哪个的知识,换言之,“使对于场景整体的表现优先”,不能做到时,则“使对于动作者或者动作者空间的表现优先”;以及,表示如何设定插入在场景修饰表现403中的变量的值的知识,换言之,“将$(线种)设定为深色”。
接下来,因为场景修饰表现403被选择了多个(ST805:“是”),所以场景修饰表现选择单元109在通过上述处理提取的可适用的场景修饰表现最佳化内容之中,利用表示从多个场景修饰表现403的组中应优先选择哪个的知识(“使对于场景整体的表现优先”,不能做到时,则“使对于动作者或者动作者空间的表现优先”),在场景修饰表现403之中选择一个。首先,场景修饰表现选择单元109调查是否能够适用“使对于场景整体的表现优先”的知识。多个所选择的场景修饰表现403有3个:“在场景整体画上奔跑的线($(线种))”、“在动作者空间的后面画上线($(量)、$(线种))”、以及“动作者的脸为咬紧牙关的脸”,其中存在“在场景整体画上奔跑的线($(线种))”的“使对于场景整体的表现优先”。因此,作为适用“使对于场景整体的表现优先”的结果,选择“在场景整体画上奔跑的线($(线种))”作为场景修饰表现403(ST806)。另外,多个所选择的场景修饰表现403中,当不存在“对场景整体的表现”时,则适用其次的“使对于动作者或者动作者空间的表现优先”的条件,在多个所选择的场景修饰表现403之中选择一个。
接下来,因为场景修饰表现403中存在变量(ST807:“是”),所以场景修饰表现选择单元109在通过上述处理提取的可适用的场景修饰表现最佳化内容之中,利用表示如何设定插入在场景修饰表现403中的变量的值的知识(“将$(线种)设定为深色”),生成“在场景整体画上奔跑的线(黑)”的场景修饰表现403(ST808),并输出(ST809)。
接下来,考虑脚本301为“花子非常匆忙地奔跑。”、场景信息为500a的情形。
在该情形中,输入数据获取单元103将$(花子)作为动作者302、将$(奔跑)作为动作303输入,并将脚本301以及场景信息500a输入(ST801、ST802)。在此,因为脚本301中的“非常匆忙地”符合单词特征辞典105的No.1以及No.2条目的单词202,所以特征参数提取单元104提取$(匆忙+)作为特征参数203(ST803)。接下来,场景修饰表现选择单元109参照场景修饰表现辞典106,提取与作为动作者302的$(花子)的人型的数据、作为动作303的$(奔跑)的数据、以及作为特征参数203的$(匆忙)相符合的适合条件402(辞典ID401=001),作为与适合条件402对应的场景修饰表现403选择3个:“在场景整体画上奔跑的线($(线种))”、“在动作者空间的后面画上线($(量)、$(线种))”、以及“动作者的脸为咬紧牙关的脸”(ST804)。
场景修饰表现选择单元109参照场景修饰表现最佳化知识108,寻找与场景信息500a、多个所选择的场景修饰表现403、以及作为特征参数203的$(匆忙+)适合的知识ID。在该情形中,因为构成场景信息500a的主体为太郎和花子两个人,所以与知识ID601为002的情形相符合。另外,因为场景信息500a中的时间为$(夜晚),所以与知识ID601为005的情形相符合。另外,因为作为特征参数203的$(匆忙+)中包含记号“+”,所以与知识ID601为006的情形相符合。其它的知识不符合。将这些知识合并在一起,可适用的场景修饰表现最佳化内容为:表示从多个场景修饰表现403的组中应优先选择哪个的知识,换言之,“如果存在有关动作者以外的动作主体的表现则对其予以优先”;不能做到时,则“使对于动作者或者动作者空间的表现优先”;以及,表示如何设定插入在场景修饰表现403中的变量的值的知识,换言之,“将$(线种)设定为白色”、“将所表现的内容的$(量)、$(大小)、$(长短)的值增加30%”。
接下来,因为场景修饰表现403被选择了多个(ST805:“是”),所以场景修饰表现选择单元109在通过上述处理提取的可适用的场景修饰表现最佳化内容之中,利用表示从多个场景修饰表现403的组中应优先选择哪个的知识(“如果存在有关动作者以外的动作主体的表现则对其予以优先”;不能做到时,则“使对于动作者或者动作者空间的表现优先”),在场景修饰表现403之中选择一个。首先,场景修饰表现选择单元109调查是否能够适用“如果存在有关动作者以外的动作主体的表现则对其予以优先”的知识。虽然多个所选择的场景修饰表现403有3个:“在场景整体画上奔跑的线($(线种))”、“在动作者空间的后面画上线($(量)、$(线种))”、以及“动作者的脸为咬紧牙关的脸”,但是其中,因为不存在有关动作者以外的动作主体(在该情形中为太郎)的表现,所以不能适用。接下来,场景修饰表现选择单元109调查是否能够适用“使对于动作者或者动作者空间的表现优先”的知识。于是,发现存在“在动作者空间的后面画上线($(量)、$(线种))”的“对动作者空间的表现”。因此,作为适用“使对于动作者或者动作者空间的表现优先”的结果,选择“在动作者空间的后面画上线($(量)、$(线种))”作为场景修饰表现403(ST806)。
接下来,因为场景修饰表现403中存在变量(ST807:“是”),所以场景修饰表现选择单元109在通过上述处理提取的可适用的场景修饰表现最佳化内容之中,利用表示如何设定插入在场景修饰表现403中的变量的值的知识(“将$(线种)设定为白色”、“将所表现的内容的$(量)、$(大小)、$(长短)的值增加30%”),在“在动作者空间的后面画上线($(量)、$(线种))”的场景修饰表现403之中,确定将$(线种)的内容设定为白色、另外将$(量)增加30%。其结果,生成“在$(花子)的动作者空间画上增加30%的奔跑的线(白)”的场景修饰表现403(ST808),并输出(ST809)。
这样,能够对表示包含在场景修饰表现403的种类的变量(线($(线种))),基于场景信息进行最佳化。另外,能够将表示包含在场景修饰表现403中的值的变量(比如,$(量)、$(大小)、$(长短)),基于表示包含在特征参数203的强调程度的值(+)进行最佳化。其结果,能够将恰当的表现赋予给特征参数203。
接下来,考虑脚本301为“花子竭尽全力地奔跑。”、场景信息为500a的情形。
在该情形中,输入数据获取单元103将$(花子)作为动作者302、将$(奔跑)作为动作303输入,并将脚本301以及场景信息500a输入(ST801、ST802)。在此,因为作为脚本301中的动作303的$(奔跑)为移动动作,所以符合单词特征辞典105的No.3条目的单词202“竭尽全力@$$(移动动作)”,特征参数提取单元104提取$(匆忙++)作为特征参数203(ST803)。接下来,场景修饰表现选择单元109参照场景修饰表现辞典106,提取与作为动作者302的$(花子)的人型的数据、作为动作303的$(奔跑)的数据、以及作为特征参数203的$(匆忙++)相符合的适合条件402(辞典ID401=001),作为与适合条件402对应的场景修饰表现403选择3个:“在场景整体画上奔跑的线($(线种))”、“在动作者空间的后面画上线($(量)、$(线种))”、以及“动作者的脸为咬紧牙关的脸”(ST804)。
场景修饰表现选择单元109参照场景修饰表现最佳化知识108,寻找与场景信息500a、多个所选择的场景修饰表现403、以及作为特征参数203的$(匆忙++)适合的知识ID。在该情形中,因为构成场景信息500a的主体为太郎和花子两个人,所以与知识ID601为002的情形相符合。另外,因为场景信息500a中的时间为$(夜晚),所以与知识ID601为005的情形相符合。另外,因为作为特征参数203的$(匆忙++)中包含记号“++”,所以与知识ID601为007的情形相符合。其它的知识不符合。将这些知识合并在一起,可适用的场景修饰表现最佳化内容为:表示从多个场景修饰表现403的组中应优先选择哪个的知识,换言之,“如果存在有关动作者以外的动作主体的表现则对其予以优先”,不能做到时,则“使对于动作者或者动作者空间的表现优先”,除此以外例外地对“当可适用的场景修饰表现403存在多个时选择多个”予以优先;以及,表示如何设定插入在场景修饰表现403中的变量的值的知识,换言之,“将$(线种)设定为白色”、“将所表现的内容的$(量)、$(大小)、$(长短)的值增加60%”。
接下来,因为场景修饰表现403被选择了多个(ST805:“是”),所以场景修饰表现选择单元109在通过上述处理提取的可适用的场景修饰表现最佳化内容之中,利用表示从多个场景修饰表现403的组中应优先选择哪个的知识(“如果存在有关动作者以外的动作主体的表现则对其予以优先”;不能做到时,则“使对于动作者或者动作者空间的表现优先”,除此以外例外地对“当可适用的场景修饰表现403存在多个时选择多个”予以优先),在场景修饰表现403之中选择所利用的内容。首先,场景修饰表现选择单元109调查是否能够适用例外地对“当可适用的场景修饰表现403存在多个时选择多个”予以优先的知识。于是,因为不能将“在场景整体画上奔跑的线($(线种))”、“在动作者空间的后面画上线($(量)、$(线种))”、以及“动作者的脸为咬紧牙关的脸”等同时适用,所以基于选择多个也可以的条件,接下来调查是否能够适用“如果存在有关动作者以外的动作主体的表现则对其予以优先”的知识。虽然多个所选择的场景修饰表现403有3个:“在场景整体画上奔跑的线($(线种))”、“在动作者空间的后面画上线($(量)、$(线种))”、以及“动作者的脸为咬紧牙关的脸”,但是可以得知其中,因为不存在有关动作者302的$(花子)以外的动作主体(在场景信息500a的情形中为$(太郎))的表现,所以不能适用“如果存在有关动作者以外的动作主体的表现则对其予以优先”的知识。接下来,场景修饰表现选择单元109调查是否能够适用“使对于动作者或者动作者空间的表现优先”的知识。在多个所选择的场景修饰表现403中存在“对于动作者或者动作者空间的表现”,换言之“在动作者空间的后面画上线($(量)、$(线种))”、以及“动作者的脸为咬紧牙关的脸”。但是这两个能同时适用,作为适用“使对于动作者或者动作者空间的表现优先”以及“当可适用的场景修饰表现403存在多个时选择多个”的结果,选择“在动作者空间的后面画上线($(量)、$(线种))”、以及“动作者的脸为咬紧牙关的脸”这两个作为场景修饰表现403(ST806)。
接下来,因为场景修饰表现403中存在变量(ST807:“是”),所以场景修饰表现选择单元109在通过上述处理提取的可适用的场景修饰表现最佳化内容之中,利用表示如何设定插入在场景修饰表现403中的变量的值的知识(“将$(线种)设定为白色”、“将所表现的内容的$(量)、$(大小)、$(长短)的值增加60%)”,在“在动作者空间的后面画上线($(量)、$(线种))”的场景修饰表现403之中,确定将$(线种)的内容设定为白色、另外将$(量)增加60%。其结果,生成“在$(花子)的动作者空间画上增加60%的奔跑的线(白)”、以及“$(花子)咬紧牙关”的两个场景修饰表现403。
由此,场景修饰表现选择单元109确定“$(花子)的动作者空间画上增加60%的奔跑的线(白)”、以及“$(花子)咬紧牙关”的两个场景修饰表现(ST808),并输出(ST809)。
这样,即使对作为副词的“竭尽全力”和表示动作的“奔跑”的组合,也能够选择恰当的特征参数203,并利用该特征参数203生成恰当的场景修饰表现403。
接下来,考虑脚本301为“花子竭尽全力地哭。”、场景信息为500a的情形。
在该情形中,输入数据获取单元103将$(花子)作为动作者302、将$(哭)作为动作303输入,并将脚本301以及场景信息500a输入(ST801、ST802)。在此,因为作为脚本301中的动作的$(哭)为感情动作,所以符合单词特征辞典105的No.4条目的单词202“竭尽全力@$$(感情动作)”,特征参数提取单元104提取$(夸张++)作为特征参数203(ST803)。接下来,场景修饰表现选择单元109参照场景修饰表现辞典106,提取与作为动作者302的$(花子)的人型的数据、作为动作303的$(哭)的数据、以及作为特征参数203的$(夸张++)相符合的适合条件402(辞典ID401=002),作为与适合条件402对应的场景修饰表现403选择“动作者的脸上流泪($(量))”(ST804)。
场景修饰表现选择单元109参照场景修饰表现最佳化知识108,寻找与场景信息500a、所选择的场景修饰表现403、以及作为特征参数203的$(夸张++)适合的知识ID。在该情形中,因为构成场景信息500a的主体为太郎和花子两个人,所以与知识ID601为002的情形相符合。另外,因为场景信息500a中的时间为$(夜晚),所以与知识ID601为005的情形相符合。另外,因为作为特征参数203的$(夸张++)中包含记号“++”,所以与知识ID601为007的情形相符合。其它的知识不符合。将这些知识合并在一起,可适用的场景修饰表现最佳化内容为:表示从多个场景修饰表现403的组中应优先选择哪个的知识,换言之,“如果存在有关动作者以外的动作主体的表现则对其予以优先”,不能做到时,则“使对于动作者或者动作者空间的表现优先”,除此以外例外地对“当可适用的场景修饰表现403存在多个时选择多个”予以优先;以及,表示如何设定插入在场景修饰表现403中的变量的值的知识,换言之,“将$(线种)设定为白色”、“将所表现的内容的$(量)、$(大小)、$(长短)的值增加60%”。
因为场景修饰表现403未被选择多个(ST805:“否”),所以场景修饰表现选择单元109调查在ST804选择的场景修饰表现403中是否存在变量。因为场景修饰表现403中存在变量(ST807:“是”),所以场景修饰表现选择单元109在通过上述处理提取的可适用的场景修饰表现最佳化内容之中,利用表示如何设定插入在场景修饰表现403中的变量的值的知识(“将$(线种)设定为白色”、以及“将所表现的内容的$(量)、$(大小)、$(长短)的值增加60%”),在“动作者的脸上流泪($(量))”的场景修饰表现403之中,确定将$(量)增加60%。其结果,生成“使$(花子)的眼泪增加60%而流出”的场景修饰表现403(ST808),并输出(ST809)。
接下来,考虑脚本301为“花子号啕大哭。”、场景信息为500b的情形。
在该情形中,输入数据获取单元103将$(花子)作为动作者302、将$(哭)作为动作303输入,并将脚本301以及场景信息500b输入(ST801、ST802)。在此,因为脚本301中的“号啕大哭”符合单词特征辞典105的No.5条目的单词202,所以特征参数提取单元104提取$(夸张+)作为特征参数203(ST803)。接下来,场景修饰表现选择单元109参照场景修饰表现辞典106,提取与作为动作者302的$(花子)的人型的数据、作为动作303的$(哭)的数据、以及作为特征参数203的$(夸张+)相符合的适合条件402(辞典ID401=002),作为与适合条件402对应的场景修饰表现403选择“动作者的脸上流泪($(量))”(ST804)。
场景修饰表现选择单元109参照场景修饰表现最佳化知识108,寻找与场景信息500b、所选择的场景修饰表现403、以及作为特征参数203的$(夸张+)适合的知识ID。在该情形中,因为构成场景信息500b的主体为花子一个人,所以与知识ID601为001的情形相符合。另外,因为场景信息500b中的时间为$(白天),所以与知识ID601为004的情形相符合。另外,因为作为特征参数203的$(夸张+)中包含记号“+”,所以与知识ID601为006的情形相符合。其它的知识不符合。将这些知识合并在一起,可适用的场景修饰表现最佳化内容为:表示从多个场景修饰表现403的组中应优先选择哪个的知识,换言之,“使对于场景整体的表现优先”,不能做到时,则“使对于动作者或者动作者空间的表现优先”;以及,表示如何设定插入在场景修饰表现403中的变量的值的知识,换言之,“将$(线种)设定为深色”、“将所表现的内容的$(量)、$(大小)、$(长短)的值增加30%”。
因为场景修饰表现403未被选择多个(ST805:“否”),所以场景修饰表现选择单元109调查在ST804选择的场景修饰表现403中是否存在变量。因为场景修饰表现403中存在变量(ST807:“是”),所以场景修饰表现选择单元109在通过上述处理提取的可适用的场景修饰表现最佳化内容之中,利用表示如何设定插入在场景修饰表现403中的变量的值的知识(“将$(线种)设定为白色”、以及“将所表现的内容的$(量)、$(大小)、$(长短)的值增加30%),在“动作者的脸上流泪($(量))”的场景修饰表现403之中,确定将$(量)增加30%。其结果,生成“使$(花子)的眼泪增加30%而流出”的场景修饰表现403(ST808),并输出(ST809)。
这样,即使从不是副词、但包含副词性意思的“号啕大哭”的单词,也能够提取符合其意思的特征参数203,从而利用所提取的特征参数203生成场景修饰表现403。
接下来,考虑脚本301为“花子哭得非常厉害。”、场景信息为500b的情形。
在该情形中,输入数据获取单元103将$(花子)作为动作者302、将$(哭)作为动作303输入,并将脚本301以及场景信息500b输入(ST801、ST802)。在此,因为作为脚本301中的动作303的$(哭)为动作动词,所以符合单词特征辞典105的No.6条目的单词202“非常@$$(动作动词)”,特征参数提取单元104提取$(夸张)作为特征参数203(ST803)。接下来,场景修饰表现选择单元109参照场景修饰表现辞典106,提取与作为动作者302的$(花子)的人型的数据、作为动作303的$(哭)的数据、以及作为特征参数203的$(夸张)相符合的适合条件402(辞典ID401=002),作为与适合条件402对应的场景修饰表现403选择“动作者的脸上流泪($(量))”(ST804)。
场景修饰表现选择单元109参照场景修饰表现最佳化知识108,寻找与场景信息500b、所选择的场景修饰表现403、以及作为特征参数203的$(夸张)适合的知识ID。在该情形中,因为构成场景信息500b的主体为花子一个人,所以与知识ID601为001的情形相符合。另外,因为场景信息500b中的时间为$(白天),所以与知识ID601为004的情形相符合。其它的知识不符合。将这些知识合并在一起,可适用的场景修饰表现最佳化内容为:表示从多个场景修饰表现403的组中应优先选择哪个的知识,换言之,“使对于场景整体的表现优先”,不能做到时,则“使对于动作者或者动作者空间的表现优先”;以及,表示如何设定插入在场景修饰表现403中的变量的值的知识,换言之,“将$(线种)设定为深色”。
因为场景修饰表现403未被选择多个(ST805:“否”),所以场景修饰表现选择单元109调查在ST804选择的场景修饰表现403中是否存在变量。因为场景修饰表现403中存在变量(ST807:“是”),所以场景修饰表现选择单元109在通过上述处理提取的可适用的场景修饰表现最佳化内容之中,参照表示如何设定插入在场景修饰表现403中的变量的值的知识,但是因为不存在适合的知识,所以场景修饰表现选择单元109生成“$(花子)流泪”的场景修饰表现403(ST808),并输出(ST809)。
接下来,考虑脚本301为“花子哇哇哭”、场景信息为500a的情形。
在该情形中,输入数据获取单元103将$(花子)作为动作者302、将$(哭)作为动作303输入,并将脚本301以及场景信息500a输入(ST801、ST802)。这里,因为脚本301中的“哇哇哭”符合单词特征辞典105的No.7条目的单词202,所以特征参数提取单元104提取$(夸张)和$$(象声词)的两项作为特征参数203(ST803)。接下来,场景修饰表现选择单元109参照场景修饰表现辞典106,提取与作为动作者302的$(花子)的人型的数据、作为动作303的$(哭)的数据、以及与特征参数203(的$(夸张)或者$$(象声词))相符合的适合条件402(辞典ID401=002、003),作为与适合条件402对应的场景修饰表现403选择“动作者的脸上流泪($(量))”、以及“在动作者空间的上方显示$$(象声词)($(大小))”(ST804)。
场景修饰表现选择单元109参照场景修饰表现最佳化知识108,寻找与场景信息500a、所选择的场景修饰表现403、以及作为特征参数203的$(夸张)适合的知识ID。在该情形中,因为构成场景信息500a的主体为太郎和花子两个人,所以与知识ID601为002的情形相符合。另外,因为所选择的场景修饰表现403中存在文字适用条件,所以与知识ID601为003的情形相符合。另外,因为场景信息500a中的时间为$(夜晚),所以与知识ID601为005的情形相符合。其它的知识不符合。若将这些知识合并在一起,则可适用的场景修饰表现最佳化内容为:表示从多个场景修饰表现403的组中应优先选择哪个的知识,换言之,“如果存在有关动作者以外的动作主体的表现则对其予以优先”,不能做到时,则“使对于动作者或者动作者空间的表现优先”,除此以外例外地对“使文字适用优先”予以优先;以及,表示如何设定插入在场景修饰表现403中的变量的值的知识,换言之,“将$(线种)设定为白色”。
接下来,因为场景修饰表现403被选择了多个(ST805:“是”),所以场景修饰表现选择单元109在通过上述处理提取的可适用的场景修饰表现最佳化内容之中,利用表示从多个场景修饰表现403的组中应优先选择哪个的知识(“如果存在有关动作者以外的动作主体的表现对其予以优先”;不能做到时,则“使对于动作者或者动作者空间的表现优先”,除此以外例外地对“使文字适用优先”予以优先),在场景修饰表现403之中选择所利用的内容。场景修饰表现选择单元109首先调查是否能够适用例外地对“使文字适用优先”予以优先的知识。于是,发现存在对“在动作者空间的上方显示$$(象声词)($(大小))”的“文字适用”的表现。因此,作为适用“使文字适用优先”的结果,选择“在动作者空间的上方显示$$(象声词)($(大小))”作为场景修饰表现403(ST806)。
接下来,因为场景修饰表现403中存在变量(ST807:“是”),所以场景修饰表现选择单元109在通过上述处理提取的可适用的场景修饰表现最佳化内容之中,参照表示插入在场景修饰表现403中的变量的值如何设定的知识,但是由于不存在符合的内容,因此生成“在$(花子)的动作者空间的上方显示“哇哇”的文字”的场景修饰表现403(ST808),并输出(ST809)。
这样,即使当“哇哇”的象声词输入时,也能够通过显示该象声词,生成恰当地并且强调地表示所输入的象声词的场景修饰表现403。
接下来,考虑脚本301为“花子发出尖叫。”、场景信息为500a的情形。
在该情形中,输入数据获取单元103将$(花子)作为动作者302、将$(叫)作为动作303输入,并将脚本301以及场景信息500a输入(ST801、ST802)。在此,因为脚本301中的“发出尖叫”符合单词特征辞典105的No.8条目的单词202,特征参数提取单元104提取$(恐怖++)作为特征参数203(ST803)。接下来,场景修饰表现选择单元109参照场景修饰表现辞典106,提取与作为动作者302的$(花子)的人型的数据、作为动作303的$(叫)的数据、以及作为特征参数203的$(恐怖++)相符合的适合条件402(辞典ID401=004),作为与适合条件402对应的场景修饰表现403选择“动作者的头发竖起来”、“在动作者空间的上方显示“可怕”的文字($(字体)、$(大小))”(ST804)。
场景修饰表现选择单元109参照场景修饰表现最佳化知识108,寻找与场景信息500a、多个所选择的场景修饰表现403、以及作为特征参数203的$(恐怖++)适合的知识ID。在该情形中,因为构成场景信息500a的主体为太郎和花子两个人,所以与知识ID601为002的情形相符合。另外,因为所选择的场景修饰表现403中存在文字适用条件,所以与知识ID601为003的情形相符合。另外,因为场景信息500a中的时间为$(夜晚),所以与知识ID601为005的情形相符合。另外,因为作为特征参数203的$(恐怖++)中包含记号“++”,所以与知识ID601为007的情形相符合。其它的知识不符合。若将这些知识合并在一起,则可适用的场景修饰表现最佳化内容为:表示从多个场景修饰表现403的组中应优先选择哪个的知识,换言之,“如果存在有关动作者以外的动作主体的表现则对其予以优先”,不能做到时,则“使对于动作者或者动作者空间的表现优先”,除此以外例外地对“使文字适用优先”以及“当可适用的场景修饰表现403存在多个时选择多个”予以优先;以及,表示如何设定插入在场景修饰表现403中的变量的值的知识,换言之,“将$(线种)设定为白色”、“将所表现的内容的$(量)、$(大小)、$(长短)的值增加60%”。
接下来,因为场景修饰表现403被选择了多个(ST805:“是”),所以场景修饰表现选择单元109在通过上述处理提取的可适用的场景修饰表现最佳化内容之中,利用表示从多个场景修饰表现403的组中应优先选择哪个的知识(“如果存在有关动作者以外的动作主体的表现则对其予以优先”;不能做到时,则“使对于动作者或者动作者空间的表现优先”,除此以外例外地对“使文字适用优先”以及“当可适用的场景修饰表现403存在多个时选择多个”予以优先),在场景修饰表现403之中选择所利用的内容。场景修饰表现选择单元109首先调查是否能够适用例外地对“当可适用的场景修饰表现403存在多个时选择多个”予以优先的知识。于是,因为能够同时适用“动作者的头发竖起来”、“在动作者空间的上方显示“可怕”的文字($(字体)、$(大小))”,所以选择两者作为场景修饰表现403。
接下来,因为场景修饰表现403中存在变量(ST807:“是”),所以场景修饰表现选择单元109在通过上述处理提取的可适用的场景修饰表现最佳化内容之中,利用表示如何设定插入在场景修饰表现403中的变量的值的知识(“将$(线种)设定为白色”、“将所表现的内容的$(量)、$(大小)、$(长短)的值增加60%”),在“在动作者空间的上方显示“可怕”的文字($(字体)、$(大小))”的场景修饰表现403之中,确定将$(大小)增加60%。至于$(字体),因为没有知识,所以不适用。其结果,生成“动作者的头发竖起来”、“在$(花子)的动作者空间的上方以增加60%的大小来显示“可怕”的文字”的场景修饰表现403(ST808),并输出(ST809)。
接下来,考虑脚本301为“花子得到了灵感(“得到了灵感”的字体比其它的字体大)。”、场景信息为500c的情形。
在该情形中,输入数据获取单元103将$(花子)作为动作者302、将$(拍手)作为动作303输入,并将脚本301以及场景信息500c输入(ST801、ST802)。在此,因为脚本301中有“得到了灵感”、并且“得到了灵感”的字体比其它的文字的字体大,所以这些适用单词特征辞典105的No.9、10的条目的单词202,因此,特征参数提取单元104提取$(得到了灵感+)以及“Add(+、$$特征参数)”作为特征参数203(ST803)。接下来,场景修饰表现选择单元109参照场景修饰表现辞典106,提取与作为动作者302的$(花子)的人型的数据、作为动作303的$(拍手)的数据、以及作为特征参数203的$(得到了灵感+)相符合的适合条件402(辞典ID401=005、006),作为与适合条件402对应的场景修饰表现403选择“发出动作者$(拍手)的声音($(大小))、画上发出大的声音的线($(量))”、“在动作者空间的上方显示“!”的文字($(字体)、$(大小))”(ST804)。
场景修饰表现选择单元109参照场景修饰表现最佳化知识108,寻找与场景信息500c、多个所选择的场景修饰表现403、以及作为特征参数203的$(得到了灵感+)适合的知识ID。在该情形中,因为构成场景信息500c的主体为太郎和花子两个人,所以与知识ID601为002的情形相符合。另外,因为所选择的场景修饰表现403中存在文字适用条件,所以与知识ID601为003的情形相符合。另外,因为场景信息500c中的时间为$(夜晚),所以与知识ID601为005的情形相符合。另外,因为作为特征参数203的$(得到灵感+)中包含记号“+”,所以与知识ID601为006的情形相符合。其它的知识不符合。若将这些知识合并在一起,则可适用的场景修饰表现最佳化内容为:表示从多个场景修饰表现403的组中应优先选择哪个的知识,换言之,“如果存在有关动作者以外的动作主体的表现对其予以优先”,不能做到时,则“使对于动作者或者动作者空间的表现优先”,除此以外例外地对“使文字适用优先”予以优先;以及,表示如何设定插入在场景修饰表现403中的变量的值的知识,换言之,“将$(线种)设定为白色”、“将所表现的内容的$(量)、$(大小)、$(长短)的值增加30%”。
接下来,因为场景修饰表现403被选择了多个(ST805:“是”),所以场景修饰表现选择单元109在通过上述处理提取的可适用的场景修饰表现最佳化内容之中,利用表示从多个场景修饰表现403的组中应优先选择哪个的知识(“如果存在有关动作者以外的动作主体的表现对其予以优先”;不能做到时,则“使对于动作者或者动作者空间的表现优先”,除此以外例外地对“使文字适用优先”予以优先),在场景修饰表现403之中选择所利用的内容。场景修饰表现选择单元109首先调查是否能够适用例外地对“使文字适用优先”予以优先的知识。于是,因为存在“在动作者空间的上方显示“!”的文字($(字体)、$(大小))”的、有关“文字适用”的表现,所以选择它。
接下来,因为场景修饰表现403中存在变量(ST807:“是”),所以场景修饰表现选择单元109在通过上述处理提取的可适用的场景修饰表现最佳化内容之中,利用表示如何设定插入在场景修饰表现403中的变量的值的知识(“将$(线种)设定为白色”、“将所表现的内容的$(量)、$(大小)、$(长短)的值增加30%”),在“在动作者空间的上方显示“!”的文字($(字体)、$(大小))”的场景修饰表现403之中,确定将$(大小)增加30%。其结果,生成“在$(花子)的动作者空间的上方,以增加30%的大小显示“!”的文字”的场景修饰表现403(ST808),并输出(ST809)。
这样,能够通过改变脚本301的文字的字体,强调与改变字体的大小的文字对应的特征参数203。
接下来,考虑脚本301为“花子目瞪口呆。”、场景信息为500b的情形。
在该情形中,输入数据获取单元103将$(花子)作为动作者302、将$(站立)作为动作303输入,并将脚本301以及场景信息500b输入(ST801、ST802)。在此,因为脚本301中存在“目瞪口呆”,所以特征参数提取单元104提取单词特征辞典105的No.11条目的$(目瞪口呆)作为特征参数203(ST803)。接下来,场景修饰表现选择单元109参照场景修饰表现辞典106,提取与作为动作者302的$(花子)的人型的数据、作为动作303的$(站立)的数据、以及作为特征参数203的$(目瞪口呆)相符合的适合条件402(辞典ID401=008),作为与适合条件402对应的场景修饰表现403选择:“动作者的动作停止($(长短))、在脸上画上线($(量))”、“动作者以外的动作主体和动作者的动作停止($(长短))、在脸上画上线($(量))”(ST804)。
场景修饰表现选择单元109参照场景修饰表现最佳化知识108,寻找与场景信息500b、多个所选择的场景修饰表现403、以及作为特征参数203的$(目瞪口呆)适合的知识ID。在该情形中,因为构成场景信息500b的主体为花子一个人,所以与知识ID601为001的情形相符合。另外,因为场景信息500b中的时间为$(白天),所以与知识ID601为005的情形相符合。其它的知识不符合。将这些知识合并在一起,可适用的场景修饰表现最佳化内容为:表示从多个场景修饰表现403的组中应优先选择哪个的知识,换言之,“如果存在有关动作者以外的动作主体的表现则对其予以优先”;不能做到时,则“使对于动作者或者动作者空间的表现优先”;以及,表示如何设定插入在场景修饰表现403中的变量的值的知识,换言之,“将$(线种)设定为深色”。
接下来,因为场景修饰表现403被选择了多个(ST805:“是”),所以场景修饰表现选择单元109在通过上述处理提取的可适用的场景修饰表现最佳化内容之中,利用表示从多个场景修饰表现403的组中应优先选择哪个的知识(“使对于场景整体的表现优先”,不能做到时,则“使对于动作者或者动作者空间的表现优先”),在场景修饰表现403之中选择所利用的内容。首先,场景修饰表现选择单元109调查是否能够适用“使对于场景整体的表现优先”的知识。虽然多个所选择的场景修饰表现403是两个:“动作者的动作停止($(长短))、在脸上画上线($(量))”、“动作者以外的动作主体和动作者的动作停止($(长短))、在脸上画上线($(量))”,但是不存在对场景整体的表现,因此不能适用。接下来,场景修饰表现选择单元109调查是否能够适用“使对于动作者或者动作者空间的表现优先”的知识。于是,因为存在“动作者的动作停止($(长短))、在脸上画上线($(量))”的有关“动作者”的表现,所以选择它。
接下来,因为场景修饰表现403中存在变量(ST807:“是”),所以场景修饰表现选择单元109在通过上述处理提取的可适用的场景修饰表现最佳化内容之中,参照表示如何设定插入在场景修饰表现403中的变量的值的知识,但是由于不存在适合的内容,因此场景修饰表现选择单元109生成“$(花子)的动作停止、在脸上画上线”的场景修饰表现403(ST808),并输出(ST809)。
接下来,考虑脚本301为“花子变得哑然。”、场景信息为500c的情形。
在该情形中,输入数据获取单元103将$(花子)作为动作者302、将$(站立)作为动作303输入,并将脚本301以及场景信息500c输入(ST801、ST802)。在此,因为脚本301中存在“哑然”,所以特征参数提取单元104提取单词特征辞典105的No.12条目的$(哑然)作为特征参数(ST803)。接下来,场景修饰表现选择单元109参照场景修饰表现辞典106,提取与作为动作者302的$(花子)的人型的数据、作为动作303的$(站立)的数据、以及作为特征参数203的$(哑然)相符合的适合条件402(辞典ID401=008),作为与适合条件402对应的场景修饰表现403选择:“动作者的动作停止($(长短))、在脸上画上线($(量))”、以及“动作者以外的动作主体的动作停止($(长短))、在脸上画上线($(量))”(ST804)。
场景修饰表现选择单元109参照场景修饰表现最佳化知识108,寻找与场景信息500c、多个所选择的场景修饰表现403、以及作为特征参数203的$(哑然)适合的知识ID。在该情形中,因为构成场景信息500c的主体为太郎和花子两个人,所以与知识ID601为002的情形相符合。另外,因为场景信息500c中的时间为$(夜晚),所以与知识ID601为005的情形相符合。其它的知识不符合。若将这些知识合并在一起,则可适用的场景修饰表现最佳化内容为:表示从多个场景修饰表现403的组中应优先选择哪个的知识,换言之,“如果存在有关动作者以外的动作主体的表现则对其予以优先”;不能做到时,则“使对于动作者或者动作者空间的表现优先”;以及,表示如何设定插入在场景修饰表现403中的变量的值的知识,换言之,“将$(线种)设定为白色”。
接下来,因为场景修饰表现403被选择了多个(ST805:“是”),所以场景修饰表现选择单元109在通过上述处理提取的可适用的场景修饰表现最佳化内容之中,利用表示从多个场景修饰表现403的组中应优先选择哪个的知识(“如果存在有关动作者以外的动作主体的表现则对其予以优先”;不能做到时,则“使对于动作者或者动作者空间的表现优先”),在场景修饰表现403之中选择所利用的内容。首先,场景修饰表现选择单元109调查是否能够适用“如果存在有关动作者以外的动作主体的表现则对其予以优先”的知识。虽然被选择多个的场景修饰表现403是两个:“动作者的动作停止($(长短))、在脸上画上线($(量))”、“动作者以外的动作主体和动作者的动作停止($(长短))、在脸上画上线($(量))”,但是在后者的“动作者以外的动作主体和动作者的动作停止($(长短))、在脸上画上线($(量))”中,存在有关动作者以外的动作主体(在此情形中为太郎)的表现,因此选择它。
接下来,因为场景修饰表现403中存在变量(ST807:“是”),所以场景修饰表现选择单元109在通过上述处理提取的可适用的场景修饰表现最佳化内容之中,参照表示如何设定插入在场景修饰表现403中的变量的值的知识,但是因为不存在适合的知识,所以场景修饰表现选择单元109生成“$(花子)和$(太郎)的动作停止、在脸上画上线”的场景修饰表现403(ST808),并输出(ST809)。
接下来,考虑脚本301为“花子变得哑然。”、场景信息为500c的其它的情形。
在该情形中,输入数据获取单元103将$(花子)作为动作者302、将$(用餐)作为动作303输入,并将脚本301以及场景信息500c输入(ST801、ST802)。在此,因为脚本301中存在“哑然”,所以特征参数提取单元104提取单词特征辞典105的No.12条目的$(哑然)作为特征参数203(ST803)。接下来,场景修饰表现选择单元109参照场景修饰表现辞典106,提取与作为动作者302的$(花子)的人型的数据、作为动作303的$(吃)的数据、以及作为特征参数203的$(哑然)相符合的适合条件402(辞典ID401=007),作为与适合条件402对应的场景修饰表现403选择“动作者掉了手里拿着$(用餐的小物件)或者$(食物)”(ST804)。
场景修饰表现选择单元109参照场景修饰表现最佳化知识108,寻找与场景信息500c、多个所选择的场景修饰表现403、以及作为特征参数203的$(哑然)适合的知识ID。在该情形中,因为构成场景信息500c的主体为太郎和花子两个人,所以与知识ID601为002的情形相符合。另外,因为场景信息500c中的时间为$(夜晚),所以与适合知识ID601为005的情形相符合。其它的知识不符合。若将这些知识合并在一起,则可适用的场景修饰表现最佳化内容为:表示从多个场景修饰表现403的组中应优先选择哪个的知识,换言之,“如果存在有关动作者以外的动作主体的表现则对其予以优先”;不能做到时,则“使对于动作者或者动作者空间的表现优先”;以及,表示如何设定插入在场景修饰表现403中的变量的值的知识,换言之,“将$(线种)设定为白色”。
接下来,因为场景修饰表现403未被选择多个(ST805:“否”),所以场景修饰表现选择单元109调查是否存在变量(ST807)。因为场景修饰表现403中存在变量(ST807:“是”),所以场景修饰表现选择单元109在通过上述处理提取的可适用的场景修饰表现最佳化内容之中,参照表示如何设定插入在场景修饰表现403中的变量的值的知识,但不存在适合的知识。但是,根据场景信息500c,因为可以得知作为$(用餐的小物件)能够使用$(餐叉),所以场景修饰表现选择单元109生成“$(花子)掉了$(餐叉)”的场景修饰表现403(ST808),并输出(ST809)。
这样,场景修饰表现生成装置102对所输入的脚本301,使用单词特征辞典105、场景修饰表现辞典106、以及场景修饰表现最佳化知识108生成最佳的场景修饰表现403并输出。
接下来,利用图10说明动画生成装置111的动作。图10表示图1所示的动画生成装置的动作的一例的流程图。
首先,将通过场景修饰表现生成装置102得到的场景修饰表现403输入(ST901)。接下来,将通过动画脚本生成装置101得到的、有关动作者302以及动作303的信息等输入(ST902)。
接下来,从动作者数据存储装置113获取对于所输入的动作者302的动作者数据(ST903),从动作数据存储装置114获取对于输入的动作303的动作数据(ST904),从场景修饰数据存储装置115获取对于输入的场景修饰表现403的场景修饰表现数据(ST905)。
接下来,利用在ST903~ST905获取的动作者数据、动作数据以及场景修饰表现403,生成电脑图形动画(ST906)并输出(ST907)。
另外,将哪种场景作为实际的动画生成的场景信息,输出到场景信息存储单元112并存储(ST908)。
这样,动画生成装置111利用场景修饰表现403生成动画。
如上说明,根据本实施例,提取包含在所输入的脚本的表层表现的、对于动作者或动作的特征参数,进行利用其的动作场景的修饰,由此能够实现不只是对动作者或动作者的动作的、而是对包含场景整体为止的广大范围的场景修饰表现。由此,在从脚本生成电脑图形动画时,无需各种各样的输入命令,就能赋予更加丰富的表现力。这样,因为能够容易地提高内容的表现力,所以即使是表现记述贫乏的内容制作的初学者,也能生成表现力丰富的电脑图形动画。
另外,根据本实施例,不只限于包含在所输入的脚本中的副词,能够设置成以下结构:将包含在动作主体或动作的意思看作场景修饰性的成分来提取特征参数。由此,用户不是指定通过生成后的电脑图形具体进行的表现本身,而是设计该表现所赋予的效果的大小来进行文本化(textualize)即可,因此具有在制作内容时,能够首先集中进行文本化的作业的长处。另外,将包含在表层表现的象声词作为直接场景修饰表现来使用等,使可适用的场景修饰表现的种类增加,能够进一步提高电脑图形的表现力。
另外,根据本实施例,能够基于前一个场景,也就是作为已经完成表现的场景的信息的场景信息来选择场景修饰表现。由此,能够得到与场景信息对应的场景修饰表现,通过恰当的表现来提高表现力,从而能够防止电脑图形动画产生不协调的印象。另外,由此,即使赋予不同的场景信息,也能够选择具有相同效果的其它场景修饰表现,因此能够提高内容制作的自由度。
(实施例2)
实施例2为利用有关动作者的性质的信息,选择场景修饰表现和进行最佳化的情形。
图11是表示包含本发明实施例2的场景修饰表现生成装置的电脑图形动画制作系统的结构的一例的图。另外,对于与图1所示的实施例1的电脑图形动画制作系统相同的构成要素,标上相同的号码,并省略其说明。
在图11中,电脑图形动画制作系统200具有场景修饰表现生成装置210来代替图1的场景修饰表现生成装置102。图11的场景修饰表现生成装置210在图1的场景修饰表现生成装置102的结构中,进一步具有动作者性质数据库(在图11中,简略标记成“动作者性质DB”)204,具有场景修饰表现辞典205来代替场景修饰表现辞典106,具有场景修饰表现选择单元206来代替场景修饰表现选择单元109。
动作者性质数据库204对有关动作者和动作者所具有的性质(比如,性格或体格、运动神经等)的信息对应地进行存储。当在脚本301登场的动作者存储在动作者性质数据库204中时,使用与该动作者对应的动作者的性质,改变特征参数203,或者,当场景修饰表现中存在变量时,改变该变量的值的强弱,由此进行场景修饰表现的选择以及场景修饰表现的最佳化。
利用图12说明存储在动作者性质数据库204的动作者和动作者的性质之间的关系。图12是表示存储在图11所示的动作者性质数据库的动作者302和其性质304的例子的图。
在图12中,作为动作者302的$(花子)与作为性质304的$(冷静)对应,这表示花子很冷静。另外,作为动作者302的$(太郎)与作为性质304的$(爱哭的人)对应,这表示太郎是个爱哭的人。同样的,作为动作者302的$(一郎)与作为性质304的$(爱笑的人)对应,这表示一郎是个爱笑的人;作为动作者302的$(二郎)与作为性质304的$(跑得快)对应,这表示二郎跑得快。
接下来,使用图13详细地说明场景修饰表现辞典205。图13是表示本实施例的一例场景修饰表现辞典的图。
场景修饰表现辞典205除了图1的场景修饰表现辞典106所存储的信息之外,还存储有作为识别号码的辞典ID1301、辞典项目的适合条件1302、以及与该条件1302适合时得到的场景修饰表现1303的组。
适合条件1302由特征参数提取单元104提取的特征参数203、动作者302和其性质304以及动作303构成。另外,在该例中,对作为动作者302与其性质304对应地存储在动作者性质数据库204的情况进行说明。在此,当动作者302未存储在动作者性质数据库204时,适合条件1302由特征参数203、动作者302以及动作303构成,与图4的适合条件402成为相同的适合条件,本实施例的场景修饰表现生成处理与实施例1的场景修饰表现生成处理成为相同的场景修饰表现生成处理。
动作者302表示动作者302为人、为动物或者为非生物等。动作者302的性质304像上述那样,为有关动作者302所具有的性格或体格、运动神经等的性质的信息。动作303有表示跑、哭等的具体的动作的情形;以及喜、悲等的、处于某些动作、某些状态的原类型,也就是表示具体的动作以外的全面的动作的情形。当特征参数的内容在场景修饰表现辞典205的适合条件1302中,在无需按照特征参数的大小来分辞典时,也可以像辞典ID001或辞典ID002以及辞典ID004那样,将多个特征参数的大小用记号“|”连接作为条件来记述。另外,记号“|”表示或(or)条件。
通过使用这样的场景修饰表现辞典205,比如,适合条件1302为“动作者@$$(人)&动作者has_a_property$(冷静)、动作@$(哭)、特征参数=$(夸张)、$(夸张+)、或者$(夸张++)”,也就是表示“冷静的人哭得很夸张”时,可以得知场景修饰表现1303为“动作者的脸上流泪(减少$(量)的20%)”。
另外,适合条件1302为“动作者@$$(人)&动作者has_a_property$(爱哭的人)、动作@$(哭)、特征参数=$(夸张)、$(夸张+)、或者$(夸张++)”,也就是表示“爱哭的人哭得很夸张”时,可以得知场景修饰表现1303为“动作者的脸上流泪(增加$(量)的20%)”。
另外,适合条件1302为“动作者@$$(人)&动作者has_a_property$(爱笑的人)、动作@$(笑)、特征参数=$(愉快)”,也就是表示“爱笑的人愉快地笑着”时,可以得知场景修饰表现1303为“在动作者空间的上方显示“哈哈哈”的文字($(字体)、$(大小))”。
另外,适合条件1302为“动作者@$$(人)&动作者has_a_property$(跑得快)、动作@$(奔跑)、特征参数=$(烟尘)”,也就是表示“跑得快的人扬起烟尘奔跑”时,可以得知场景修饰表现1303为“在动作者的脚下扬起烟尘”。
通过利用这样构成的场景修饰表现辞典205,能够在反映在脚本中登场的动作者302的性质的基础上,从适合条件1302确定场景修饰表现1303。
场景修饰表现选择单元206除了具有在图1的场景修饰表现选择单元109所具有的功能之外,还具有以下功能:参照场景修饰表现辞典205,选择相当于特征参数、动作者、其性质、以及动作的信息的适合条件1302。然后,场景修饰表现选择单元206对与所选择的适合条件1302、场景修饰表现最佳化知识108、场景信息500以及特征参数203对应的场景修饰表现1303进行最佳化并输出。
接下来,说明场景修饰表现生成装置210的动作。另外,场景修饰表现生成装置210的动作的特征在于表示场景修饰表现生成装置102的动作的、图8的流程图的ST804,因为其它部分的动作与场景修饰表现生成装置102相同,所以只说明ST804,而省略其余的部分的说明。
在ST804中,由场景修饰表现选择单元206输入特征参数提取单元104所提取的特征参数203、动作者302、其性质304以及动作303,参照场景修饰表现辞典205,选择相当于所输入的特征参数203、动作者302、其性质304以及动作303的适合条件1302。然后,选择与所选择的适合条件1302、场景修饰表现最佳化知识108、场景信息500以及特征参数203对应的场景修饰表现1303。
另外,由场景修饰表现选择单元206参照场景修饰表现最佳化知识108,提取所有的适合以下内容的知识适用条件602:在ST802所提取的前一个场景的场景信息、多个所选择的场景修饰表现、以及在ST803提取出的特征参数,并参照所有的与所提取的知识适用条件602对应的场景修饰表现最佳化内容603,汇集可适用的场景修饰表现最佳化内容的集合。
下面,利用图14说明场景修饰表现生成装置210生成场景修饰表现的处理的具体例。图14是表示在本实施例中对文本句子的脚本赋予场景信息时最后得到的场景修饰表现的例子的图。
比如,考虑脚本301为“太郎竭尽全力地哭。”、场景信息为500a的情形。
在该情形中,输入数据获取单元103将$(太郎)作为动作者302、将$(哭)作为动作303输入,并将脚本301以及场景信息500a输入(ST801、ST802)。在此,因为作为脚本301中的动作302的$(哭)为感情动作,所以符合单词特征辞典105的No.4条目的单词202“竭尽全力@$$(感情动作)”,特征参数提取单元104提取$(夸张++)作为特征参数203(ST803)。接下来,场景修饰表现选择单元206参照场景修饰表现辞典205,提取与作为动作者302的$(太郎)的人型的数据、作为动作者302$(太郎)的性质304的$(爱哭的人)的数据、作为动作303的$(哭)的数据、以及作为特征参数203的$(夸张++)相符合的适合条件1302(辞典ID1301=002),作为与适合条件1302对应的场景修饰表现1303选择“动作者的脸上流泪(增加$(量)的20%)”(ST804)。
场景修饰表现选择单元206参照场景修饰表现最佳化知识108,寻找与场景信息500a、所选择的场景修饰表现403、以及作为特征参数203的$(夸张++)适合的知识ID。在该情形中,因为构成场景信息500a的主体为太郎和花子两个人,所以与知识ID601为002的情形相符合。另外,因为场景信息500a中的时间为$(夜晚),所以与知识ID601为005的情形相符合。另外,因为作为特征参数203的$(夸张++)中包含记号“++”,所以与知识ID601为007的情形相符合。其它的知识不符合。若将这些知识合并在一起,则可适用的场景修饰表现最佳化内容为:表示从多个场景修饰表现403的组中应优先选择哪个的知识,换言之,“如果存在有关动作者以外的动作主体的表现则对其予以优先”,不能做到时,则“使对于动作者或者动作者空间的表现优先”,除此以外例外地优先“当可适用的场景修饰表现403存在多个时选择多个”;以及,表示插入在场景修饰表现中403的变量的值如何设定的知识,换言之,“将$(线种)设定为白色”、“将所表现的内容的$(量)、$(大小)、$(长短)的值增加60%”。
因为场景修饰表现403未被选择多个(ST805:“否”),所以场景修饰表现选择单元206调查在ST804选择的场景修饰表现403中是否存在变量。因为场景修饰表现403中存在变量(ST807:“是”),所以场景修饰表现选择单元206在通过上述处理提取的可适用的场景修饰表现最佳化内容之中,利用表示插入在场景修饰表现1303中的变量的值如何设定的知识(“将$(线种)设定为白色”、“将所表现的内容的$(量)、$(大小)、$(长短)的值增加60%”),在“动作者的脸上流泪($(量))”的场景修饰表现403中,确定将$(量)增加60%。然后,对该场景修饰表现403和作为动作者302的性质304所确定的场景修饰表现1303的“动作者的脸上流泪(增加$(量)的20%)”进行组合,由此生成“使$(太郎)的眼泪增加92%而流出”的场景修饰表现1303(ST808)并输出(ST809)。
接下来,考虑脚本301为“花子非常匆忙地奔跑。”、场景信息为500a的情形。
在该情形中,输入数据获取单元103将$(花子)作为动作者302、将$(奔跑)作为动作303输入,并将脚本301以及场景信息500a输入(ST801、ST802)。在此,脚本301中的“非常匆忙地”符合单词特征辞典105的No.1以及No.2条目的单词202,特征参数提取单元104提取$(匆忙+)作为特征参数203(ST803)。接下来,场景修饰表现选择单元206参照场景修饰表现辞典205,提取与作为动作者302的$(花子)的人型的数据、作为动作303的$(奔跑)的数据、以及作为特征参数203的$(匆忙)相符合的适合条件402(辞典ID401=001),作为与适合条件402对应的场景修饰表现403选择3个:“在场景整体画上奔跑的线($(线种))”、“在动作者空间的后面画上线($(量)、$(线种))”、以及“动作者的脸为咬紧牙关的脸”。另外,与此同时,场景修饰表现选择单元206提取与作为动作者302的$(花子)的人型的数据、作为动作者302$(花子)的性质304的$(跑得快)的数据、作为动作303的$(奔跑)的数据、以及作为特征参数203的$(烟尘)相符合的适合条件1302(辞典ID1301=004),作为与适合条件1302对应的场景修饰表现1303选择“在动作者的脚下扬起烟尘”(ST804)。
场景修饰表现选择单元206参照场景修饰表现最佳化知识108,寻找与场景信息500a、多个所选择的场景修饰表现403、以及作为特征参数203的$(匆忙+)适合的知识ID。在该情形中,因为构成场景信息500a的主体为太郎和花子两个人,所以与知识ID601为002的情形相符合。另外,因为场景信息500a中的时间为$(夜晚),所以与知识ID601为005的情形相符合。另外,因为作为特征参数203的$(匆忙+)中包含记号“+”,所以与知识ID601为006的情形相符合。其它的知识不符合。若将这些知识合并在一起,则可适用的场景修饰表现最佳化内容为:表示从多个场景修饰表现403的组中应优先选择哪个的知识,换言之,“如果存在有关动作者以外的动作主体的表现则对其予以优先”;不能做到时,则“使对于动作者或者动作者空间的表现优先”;以及,表示插入在场景修饰表现403中的变量的值如何设定的知识,换言之,“将$(线种)设定为白色”、“将所表现的内容的$(量)、$(大小)、$(长短)的值增加30%”。
接下来,因为场景修饰表现403被选择了多个(ST805:“是”),所以场景修饰表现选择单元206在通过上述处理提取的可适用的场景修饰表现最佳化内容之中,利用表示从多个场景修饰表现403的组中应优先选择哪个的知识(“如果存在有关动作者以外的动作主体的表现则对其予以优先”;不能做到时,则“使对于动作者或者动作者空间的表现优先”),在场景修饰表现403之中选择一个。首先,场景修饰表现选择单元206调查是否能够适用“如果存在有关动作者以外的动作主体的表现则对其予以优先”的知识。虽然多个所选择的场景修饰表现403有3个:“在场景整体画上奔跑的线($(线种))”、“在动作者空间的后面画上线($(量)、$(线种))”、以及“动作者的脸为咬紧牙关的脸”,但是其中,因为不存在有关动作者以外的动作主体(在该情形中为太郎)的表现,所以不能适用。接下来,场景修饰表现选择单元206调查是否能够适用“使对于动作者或者动作者空间的表现优先”的知识。于是,发现存在“在动作者空间的后面画上线($(量)、$(线种))”的“对动作者空间的表现”。因此,适用“使对于动作者或者动作者空间的表现优先”,选择“在动作者空间的后面画上线($(量)、$(线种))”作为场景修饰表现403(ST806)。
接下来,因为场景修饰表现403中存在变量(ST807:“是”),所以场景修饰表现选择单元206在通过上述处理提取的可适用的场景修饰表现最佳化内容之中,利用表示插入在场景修饰表现403中的变量的值如何设定的知识(“将$(线种)设定为白色”、“将所表现的内容的$(量)、$(大小)、$(长短)的值增加30%)”,在“在动作者空间的后面画上线($(量)、$(线种))”的场景修饰表现403中,将$(线种)确定为白色、另外“将$(量)增加30%”。另外,其结果,生成“在$(花子)的动作者空间画上增加30%的奔跑的线(白)”的场景修饰表现403(ST808),与场景修饰表现1303“动作者的脚下扬起烟尘”一并输出(ST809)。
这样,场景修饰表现生成装置210对所输入的脚本301,使用单词特征辞典105、场景修饰表现最佳化知识108、动作者性质数据库204、场景修饰表现辞典205以及场景修饰表现选择单元206,生成最佳的场景修饰表现403和1303并输出。
另外,虽然本实施例设置了对动作者与有关动作者的性质的信息对应地进行存储的动作者性质数据库204,但是并不只限于此。比如,也可以作为脚本(所输入的文本句子)的输入信息赋予动作者以及动作者的性质,进行反映了动作者的性质的场景修饰表现。在该情形中,作为使用了表示动作者的性质的信息的场景修饰表现,可以考虑多种方式。
比如,作为包含在单词特征辞典105的单词的组合,可以组合动作者与动作者的性质。比如,对表示“太郎”的动作者的单词202,当在它的后面连接着表示移动动作的单词时,将表示非常匆忙的$(匆忙++)的特征参数203与其对应。在该情形中,可以将动作者的太郎“性急”的性质反映于场景修饰表现。
另外,作为场景修饰表现最佳化知识108的知识适合条件602,可以使用动作者的性质。比如,当知识适合条件602为“动作者$(场景)的构成主体是爱哭的人”时,场景修饰表现最佳化内容603为“如果动作者的动作中存在“哭”,将该动作者流泪的$(量)增加30%”,也就是“如果在场景修饰表现里的、动作者的动作中存在“哭”,而且包含眼泪($(量))的变量时,将该值增加30%”。这样,可以将动作者的“爱哭的人”的性质反映于场景修饰表现。
另外,虽然在本实施例中,必定反映根据有关动作者的性质的信息来进行选择/最佳化的场景修饰表现,但是本发明并不只限于此。比如,也可以将是否将有关动作者的性质的信息反映于场景修饰表现的判断,装入场景修饰表现最佳化知识108的知识适合条件602。
另外,虽然在本实施例中,将存储在动作者性质数据库204的动作者的性质输入到场景修饰表现选择单元206,但是本实施例并不只限于此。比如,也可以将动作者性质数据库204设置在场景修饰表现生成装置102的外部,甚至将其设置在电脑图形动画制作系统200的外部,将存储在动作者性质数据库204的动作者的性质输入到动画脚本生成装置101。
这样,在本实施例中,对动作者与有关动作者的性质的信息对应地进行存储,当所存储的动作者在脚本中登场时,因为能够进行反映其性质的场景修饰,所以能够赋予对于该场景的结构来讲更为恰当的表现。
另外,虽然在上述各个实施例中,说明了场景修饰表现生成装置102或210使用场景信息的情形,但是并不只限于此,也可以只使用从脚本得到的动作者以及动作的信息,还有用户所输入的文本句子的脚本来进行动作场景的修饰。
另外,当不存在适合条件的场景修饰表现时,还可以考虑缓和适合条件来得到场景修饰表现的方法。比如,“花子哇哇哭。”的“花子”为“大象”时,虽然并不严密地适合图4的辞典ID002,但是为了特意进行有趣的表现,也可以对大象的表现进行拟人化,进行从大象的眼睛流出大量的眼泪的修饰。
另外,虽然在上述各个实施例中,将特征参数如图2那样利用离散式的关键词来表示,但是还可以考虑利用多个关键词的组合,或者通过进行了归一化的矢量来表现的方法。
另外,虽然在上述各个实施例中,在说明动作者或动作、特征参数、场景修饰表现、场景修饰表现最佳化知识、场景信息等时,采用了重视可读性的表现,但是并不因该表现来限制执行(implementation)时的内部表现。
另外,虽然在上述各个实施例中,将特征参数提取单元104设置在场景修饰表现生成装置102或210的内部,但是还可以考虑采用将提取特征参数的功能设置在场景修饰表现生成装置102的外部的结构。
另外,虽然在上述各个实施例中,在场景修饰表现选择单元109和206使用了场景修饰表现最佳化知识108,但是采用不使其与场景修饰表现辞典106或205的各个条目中的多个场景修饰表现对应,或者,不包含变量的结构时,不设置场景修饰表现最佳化知识108而选择场景修饰表现也是可能的。
另外,虽然在上述各个实施例中,将单词特征辞典105、场景修饰表现辞典106或205、以及场景修饰表现最佳化知识108设置于场景修饰表现生成装置102或210的内部,但是采用将其设置在外部,并根据需要而进行网络下载的结构也是可能的。
另外,虽然在上述各个实施例中,对单词特征辞典105、场景修饰表现辞典106或205、以及场景修饰表现最佳化知识108,分别定义性(declarative)地进行记述,由此具有以下优点:易于辞典和知识的扩充或订正,而且易于进行编入其他人所利用的场景修饰表现的结构变更。
另外,虽然在上述各个实施例中,说明了在场景修饰表现生成装置102或210的输入数据获取单元103获取场景信息作为动画生成装置111的输出,但是场景信息被另外规定时,也可利用之。比如,当在输入脚本中预先记述着像戏剧脚本的舞台提示(stage directiong)那样的文章时,可以考虑在动画脚本生成装置101生成场景信息,直到场景转换为止一直都使用之的情形。
另外,虽然在上述各个实施例中,以电脑图形动画制作系统的、生成场景修饰表现为例进行了说明,但是并不只限于动画,在通过电脑图形生成静止图像时,能够通过将场景修饰表现辞典改变为用于静止图像的辞典,利用相同的方法来生成场景修饰表现。
另外,虽然在上述各个实施例中,以将场景修饰表现生成装置102或210通过硬件构成为例进行了说明,但是也可以将场景修饰表现生成装置102或210所进行的处理编成程序而使通用的计算机实行该程序。
本发明的场景修饰表现生成装置采取的结构,包括:场景修饰表现辞典,将作为有关电脑图形的场景的修饰表现的场景修饰表现和适用条件同时保存;场景修饰表现选择单元,利用所述场景修饰表现辞典,选择与适用条件对应的场景修饰表现,所述适用条件为与从所赋予的脚本得到的动作者和动作的信息、以及表示所述脚本的特征的特征参数相符合的适用条件;以及数据输出单元,输出所选择的场景修饰表现。
由此,能够将不只是对于动作者的动作,而是对于包含场景整体为止的广大范围的场景修饰表现,从包含在脚本中的动作和动作者、以及脚本所保有的特征中选择。其结果,能够容易地提高电脑图形的表现力。
优选是,上述的场景修饰表现生成装置还包括场景修饰表现最佳化知识,包含用于选择对场景信息应使用的场景修饰表现的知识,所述场景信息为构成所述电脑图形的场景的要素,其中,当选择了多个场景修饰表现时,所述场景修饰表现选择单元利用所述场景信息以及所述场景修饰表现最佳化知识,对所述场景信息从所述多个场景修饰表现中选择最佳的场景修饰表现。
由此,能够基于场景信息对场景修饰表现进行最佳化。其结果,能够防止电脑图形动画产生不协调的印象,能够赋予对于该场景的结构来讲更加恰当的表现。
另外,优选是,在上述的场景修饰表现生成装置中,所述场景修饰表现还包含变量,该变量的值根据场景信息而确定,所述场景信息为构成所述电脑图形的场景的要素,并具有场景修饰表现最佳化知识,包含用于根据所述场景信息来确定包含在所述场景修饰表现中的变量的值的知识,当所选择的场景修饰表现中含有变量时,所述场景修饰表现选择单元利用所述场景信息以及所述场景修饰表现最佳化知识,确定包含在所选择的场景修饰表现中的变量的值,由此生成所输出的场景修饰表现。
由此,能够基于场景信息对包含在场景修饰表现的变量进行最佳化。其结果,能够赋予对于该场景的结构来讲更加恰当的表现。
另外,优选是,在上述的场景修饰表现生成装置中,所述场景修饰表现还包含变量,该变量的值根据所述特征参数而确定,并具有场景修饰表现最佳化知识,包含用于根据所述特征参数来确定包含在所述场景修饰表现中的变量的值的知识,当所选择的场景修饰表现中含有变量时,所述场景修饰表现选择单元利用所述特征参数以及所述场景修饰表现最佳化知识,确定所选择的场景修饰表现中含有的变量的值,由此生成所输出的场景修饰表现。
由此,能够基于表示包含在特征参数的强调程度的值,对包含在场景修饰表现的变量进行最佳化。其结果,能够将恰当的表现赋予给特征参数。
另外,优选是,在上述的场景修饰表现生成装置中,所述场景信息至少包含构成所述电脑图形的场景的动作者、地点、小物件以及时间中的一个。
由此,能够生成与动作者、地点、小物件以及时间适合的场景修饰表现。
另外,优选是,上述的场景修饰表现生成装置采取的结构还包括:单词特征辞典,存储单词或者单词的组合和与所述单词或者单词的组合对应的特征参数的组;以及特征参数提取单元,利用所述单词特征辞典,提取与包含在所述脚本中的单词或者单词的组合对应的特征参数。
由此,特征参数提取单元能够通过使用单词特征辞典,容易地提取与单词或者单词的组合对应的特征参数。另外,因为单词特征辞典还对应对于单词或者单词的组合所包含(connote)的意思的特征参数,所以特征参数提取单元能够提取与脚本所包含的意思对应的特征参数。
另外,优选是,在上述的场景修饰表现生成装置中,当所述脚本中包含有字体的形态与其它单词不同的单词时,所述场景修饰表现选择单元选择加强所述单词的意思的场景修饰表现。
由此,能够通过改变包含在脚本的字符的字体的形态,强调与改变字体的形态的文字对应的特征参数。
另外,优选是,在上述的场景修饰表现生成装置中,当有象声词包含在所述脚本时,所述场景修饰表现选择单元选择表示所述象声词的场景修饰表现。
由此,即使当输入象声词时,也能够通过表示该象声词,生成恰当地并且强调地表示所输入的象声词的场景修饰表现。
另外,优选是,在上述的场景修饰表现生成装置中,所述场景修饰表现包含使动作者的身体变形的表现。
由此,能够使动作者的身体变形,扩大有关动作者的场景修饰表现的变化的范围。
另外,优选是,在上述的场景修饰表现生成装置中,所述场景修饰表现包含有关动作者的携带物品和/或服装的表现。
由此,能够改变有关动作者的携带物品和/或服装的表现,扩大有关动作者的场景修饰表现的变化的范围。
另外,优选是,在上述的场景修饰表现生成装置中,所述场景修饰表现包含有关动作者的动作的表现。
由此,能够使动作者做动作,扩大有关动作者的场景修饰表现的变化的范围。
另外,优选是,在上述的场景修饰表现生成装置中,所述场景修饰表现包含有关动作者的背景的表现。
由此,能够不将变化赋予给有关动作者本身的表现,而使有关动作者的背景的表现发生变化,进行包含动作者的整体的场景修饰表现。
另外,优选是,在上述的场景修饰表现生成装置中,所述场景修饰表现包含有关场景整体的表现。
由此,能够赋予有关场景整体的场景修饰表现,进行全面的场景修饰表现。
另外,优选是,在上述的场景修饰表现生成装置中,当场景由三维图形构成时,所述场景修饰表现包含有关所述三维图形的投影方法的表现。
由此,能够改变三维图形的投影方法而赋予场景修饰表现,进行更加富于变化的场景修饰表现。
本发明的电脑图形制作系统采取的结构包括:脚本生成装置,从所赋予的脚本提取动作者以及动作的信息,并将其与所述脚本一并输出;如上述的场景修饰表现生成装置,从所述脚本生成装置输入所述动作者和动作的信息、以及所述脚本,并输出作为有关电脑图形的场景的修饰表现的场景修饰表现;以及图形生成装置,利用由所述场景修饰表现生成装置输出的场景修饰表现,生成电脑图形。
由此,能够利用将不只是对于动作者的动作,而是对于包含场景整体为止的广大范围的场景修饰表现,从包含在脚本中的动作者和其动作、以及脚本所保存的特征中选择而生成出的场景修饰表现,来生成电脑图形。
本说明书基于2004年11月30日提交的日本专利申请的特愿2004-347840。其内容全部包含于此。