WO2010045737A1 - Script import in a text-to-animation system - Google Patents

Script import in a text-to-animation system Download PDF

Info

Publication number
WO2010045737A1
WO2010045737A1 PCT/CA2009/001522 CA2009001522W WO2010045737A1 WO 2010045737 A1 WO2010045737 A1 WO 2010045737A1 CA 2009001522 W CA2009001522 W CA 2009001522W WO 2010045737 A1 WO2010045737 A1 WO 2010045737A1
Authority
WO
WIPO (PCT)
Prior art keywords
text
rule
generator
format
semi
Prior art date
Application number
PCT/CA2009/001522
Other languages
French (fr)
Inventor
Remi Ronfard
Ramanjot Singh Bhatia
Original Assignee
Xtranormal Technology Inc.
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Xtranormal Technology Inc. filed Critical Xtranormal Technology Inc.
Publication of WO2010045737A1 publication Critical patent/WO2010045737A1/en

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/12Use of codes for handling textual entities
    • G06F40/131Fragmentation of text files, e.g. creating reusable text-blocks; Linking to fragments, e.g. using XInclude; Namespaces
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/12Use of codes for handling textual entities
    • G06F40/151Transformation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/12Use of codes for handling textual entities
    • G06F40/14Tree-structured documents

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Health & Medical Sciences (AREA)
  • Artificial Intelligence (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Computational Linguistics (AREA)
  • General Health & Medical Sciences (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Stored Programmes (AREA)

Abstract

There is described a method and a system for importing a semi-structured text from which an animation is to be generated. The method comprises receiving a semi- structured text; breaking down the semi-structured text into unit parts; requesting a text structure class identification for a first unit part in the unit parts; receiving the text structure class identification for the first unit part; determining a format for the first unit part; generating a classification rule, the classification rule associating the text structure class to the format; automatically locating at least one second unit part having the format in the semi-structured text; and tagging the at least one second unit part as belonging to the text structure class according to the classification rule.

Description

SCRIPT IMPORT IN A TEXT-TO-ANIMATION SYSTEM CROSS-REFERENCE TO RELATED APPLICATIONS
[0001] This application claims priority from US provisional patent application 61/107,535 filed October 22, 2008 and entitled "SCRIPT IMPORT IN A TEXT-TO- ANIMATION SYSTEM".
TECHNICAL FIELD
[0002] The present disclosure relates to the field of automated and manual script imports. More specifically, it relates to the field of text-to-animation techniques.
BACKGROUND
[0003] In text-to-animation (TTA) or text-to-movie (TTM) animation systems, a user writes the script or screenplay of a story that he wants to animate. The script is then loaded into the TTA system to generate the animation corresponding to the script. However, the script has to be presented to the TTA system in a machine readable format which allows the system to determine the internal structure of the script.
[0004] A script structure may be imposed to the user of a TTA system so that the TTA system may recognize the internal structure of the script. However, script writers usually have their own preferences on the formatting of their script and no universal script formatting may be suitable for all script writers. Therefore, automatic script import techniques have been developed. Automatic script import is a process which automatically determines the internal structure of a script written in a non-standard format. However, automatic script import suffers from classification problems, namely that when elements of a script text such as scene headers, dialogs, and the like are classified in an automated fashion, they are often wrongly classified. The challenge in importing scripts automatically arises given that the formats used to represent the structure of a script are not always consistent throughout a script and are almost never consistent between scripts. As a result, fully automated methods do not work very well in practice and must be complemented by time-consuming verifications.
[0005] Therefore, there is a need for a more efficient method for importing a script in the context of TTA systems. SUMMARY
[0006] The present script import system is a semi-automated automated learner which learns classification rules for elements in a script via user interaction.
[0007] In accordance with an embodiment, there is provided a method for importing a semi-structured text into an animation generator. The method comprises: receiving the semi-structured text from which an animation is to be generated; breaking down the semi-structured text into unit parts; requesting an identification of a text structure class for a first unit part of the unit parts; receiving the text structure class for the first unit part; determining a format for the first unit part; generating a classification rule, the classification rule associating the text structure class to the format; automatically locating at least one second unit part having the format in the semi-structured text; and tagging the at least one second unit part as belonging to the text structure class, according to the classification rule; and importing the first unit part and the at least one second unit part once tagged into the animation generator, to generate the animation therefrom.
[0008] In accordance with an embodiment, there is provided an import system for importing a semi-structured text into an animation generator. The import system comprises: a tokenizer adapted to receive a semi-structured text from which an animation is to be generated by the animation generator, and to divide the semi- structured text into unit parts, each one of the unit parts having a respective format; a rule generator in operative communication with the tokenizer, the rule generator being adapted to receive an identification of a first one of the unit parts as belonging to a given text structure class and to generate at least one classification rule, the at least one classification rule representing an association of the given text structure class with the respective format for the first one of the unit parts; and a tag generator in operative communication with the rule generator and the tokenizer, the tag generator being adapted to locate an other one of the unit parts having the respective format associated to the first one of the unit parts, and to tag the other one of the unit parts as belonging to the given text structure class using the at least one classification rule.
[0009] In accordance with an embodiment, there is provided a system for importing a semi-structured text into one of a text-to animation (TTA) and a text-to-movie (TTM) device. The system comprises a processor; and a memory in operative communication with the processor. The memory comprises instructions for implementing the processor to: receive the semi-structured text from which an animation is to be generated; break down the semi-structured text into unit parts; request an identification of a text structure class for a first unit part of the unit parts; receive the text structure class for the first unit part; determine a format for the first unit part; generate a classification rule, the classification rule associating the text structure class to the format; locate at least one second unit part having the format in the semi-structured text; and tag the at least one second unit part as belonging to the text structure class according to the classification rule; and output the first unit part and the at least one second unit part, with the text structure class, to the one of TTA and TTM device for generating the animation therefrom.
[0010] The expression "semi-structured text" refers to a structured text of which the structure is only implicitly represented through formatting by usage or convention. An example of a semi-structured text is the plain text file of a movie script. A script can comprise a description of a story, dialogs, instructions, and the like. The instructions may be directed to actors, cameras, lighting, music, sound effects, etc. A text or script structure refers to the internal structure of the semi-structured text and the script, respectively. A script structure is defined by script structure elements or classes. Examples of script structure classes are headers, scene headers, dialogs, dialog speakers, actions, parenthetical, editing cues, titles, and the like. The expression "fully structured text" refers to a structured text of which the structure is explicitly represented in a machine-readable representation. An example of a fully- structured text is an Extensible Markup Language (XML) file of the movie script, conforming to an XML schema or Document Type Definition.
[0011] The term "unit part" refers to a sub-structure of the semi -structured text. A unit part may be a text unit such as a sentence, or a physical line of text. For example, a unit part may be defined as a single sentence in the script. Alternatively, a unit part may consist of two following sentences within the script, for example. In another example, a unit part may be a single physical line of text, or two or more following lines of text.
[0012] The expression "format of a line" refers to the visual presentation of a line. A format of a line comprises characteristics such as font size, font style, font color, symbols, the number of spaces or tabs before, after or within a script structure element, etc. The format of a semi-structured text refers to the set of formats of the text structure elements.
BRIEF DESCRIPTION OF THE DRAWINGS
[0013] Further features and advantages of the disclosure will become apparent from the following present detailed description, taken in combination with the appended drawings, in which:
[0014] Fig. 1 is a flow chart illustrating a method for importing a semi-structured text, in accordance with an embodiment;
[0015] Fig. 2 is a flow chart illustrating a method for importing a semi-structured text in which a user is provided with text structure tags, in accordance with an embodiment;
[0016] Fig. 3 is a block diagram illustrating a system for importing a script, in accordance with an embodiment;
[0017] Fig. 4 is a screen shot illustrating a user interface, in accordance with an embodiment;
[0018] Fig. 5 is a screen shot illustrating a validation window of a user interface, in accordance with an embodiment; and
[0019] Fig. 6 is a block diagram illustrating a finite state machine for rule restrictions, in accordance with an embodiment.
DETAILED DESCRIPTION
[0020] Figure 1 illustrates an embodiment of a method 22 for importing a semi- structured text. The first step of the method is the reception of a semi-structured text 10. The semi-structured text can be any text written in any natural language and having an internal structure, such as a script for example. The format of the different text structure elements of the semi-structured text are chosen by the user. Different users of the method may choose different formats for the text structure elements of their semi-structured text. In a second step, the semi-structure text is tokenized and broken down into unit parts such as physical lines 12. It should be understood that the unit part may be different from a single line. For example, a unit part may be composed of a sentence.
[0021] In a third step, the user is asked to identify the text structure class to which at least one line (e.g. one unit part) of the script belongs 14. In this case for example, a line which has been identified by a user as belonging to a given text structure class is referred to "an identified line". Through a user interface, the user may be presented with a line of the semi-structured text, such as the first physical line. S/He may assign a text structure element to this line in order to provide for the determination of the text structure class to which the line belongs. Any technique for identifying the text structure class may be used. For example, through a user interface, a window may be displayed when the user selects the line, and the user may write the text structure class to which the line belongs in a data field. In one embodiment, the user identifies a line of her/his choice. In another embodiment, the user is presented with a particular line to be identified. These last two embodiments may provide for additional functional features which are considered complementary to the present description, and thus not readily addressed herein. For example, if a user identifies a line located in the middle of the semi-structured text, it would be determined whether this identification can be used in the whole semi-structured text or only in the remaining semi-structured text.
[0022] In one embodiment, the user is presented with a list of text structure classes and identifies the text structure class of the line according to this list.
[0023] The identified line has a particular format and the fourth step of the method is the determination of the format of the identified line 16. For example, the following line is identified by the user as belonging to the scene header script structure class, which means that this line is a scene header:
1 EXT. DESERT NILE RIVER VALLEY - DAY
[0024] The format of this line is the following: 2 TABs, one numeral, namely "1 ", one TAB, one symbol, namely "-", and all capital letters. This format can be expressed as: <TAB, 2> <NUM> <TAB, 1> <SYM, - > <ALLCAP>. The format of this line becomes a signature for headers in the semi-structured text. Each line having this particular format is considered as belonging to the header text structure class. The association of a format with a text structure class constitutes a classification rule. [0025] Automatically locating other lines having this particular format within the script 18 is the fifth step of the method. The format of all of the other lines in the semi- structured text is analysed and the lines having the same format as the identified line are considered as belonging to the same text structure class. Automatically tagging the located lines as belonging to the same text structure class as the first identified line 20 also constitutes a step of the method 22. A tagged line is a line of which the text structure class to which it belongs has been automatically tagged or identified. An untagged line is a line that has not been identified by the user or automatically tagged. In step 24, the tagging of the unit parts as performed in step 20 is imported to an animation generator which generates an animation corresponding to the text from the tagging. In one embodiment, the unit parts once tagged are sent to the animation generating device (such as a TTA or a TTM system), including definitions of their respectively tagged text structure classes.
[0026] In one embodiment, the method 22 comprises a step of generalization of the classification rules. More general classification rules may be created using elements such as wildcards, optional and repetition elements for symbol classes. The applicability of a particular rule is increased by adding, removing or repeating a variety of symbols, the presence of capital-cased-tokens, and/or numerals as wild card elements in the format of the rule to be generalized. For example, the set of symbols can comprise a question mark, a percentage, a hyphen, an exclamation mark, a comma, a colon, a semi-colon, and the like. Referring back to the previous example, the format for a header text structure class is: <TAB, 2> <NUM> <TAB, 1> <SYM, - > <ALLCAP> where the symbol "-" is explicitly expressed in the format signature. A generalization of this classification rule would be to associate the header text structure class to the following format: <TAB, 2> <NUM> <TAB, 1> <SYM, ANY> <ALLCAP> where the symbol can be any special character. Other examples of more general classification rules are:
[0027] <TAB, 2> <NUM> <TAB, 1> <SYM, -> <ADD?> <ADD!> <ALLCAP>, where the optional symbols "?" and "!" may appear or not in the format signature;
[0028] <TAB, 2> <NUM> <TAB, 1> <SYM, - >+ <ALLCAP>, where the symbol "-" can be repeated in the format signature; and
[0029] <TAB, 2> <NUM> <TAB, 1> <SYM, - >? <ALLCAP>, where the symbol "-" can now be omitted in the format signature. [0030] The rule generalization widens the applicability of the classification rules. As a result, the computation time needed to process the entire script is reduced.
[0031] In one embodiment, the method comprises an additional validation step. The user is provided with at least one tagged line and is asked to confirm the association of this tagged line with the automatically assigned class structure or to mark the association as being an exception to the classification rule.
[0032] If untagged lines remain in the text, the user is asked to associate one of these untagged lines with a text structure class. The format of this second identified line is determined and lines having the same format are located and identified as belonging to the same text structure class as the second identified line. The user may be presented with the lines considered as belonging to this second text structure class for validation.
[0033] The steps 12, 14, 16, 18 and 20 are repeated until each line of the semi- structured text is tagged with a text structure class. For each iteration, the user may be asked to validate the association line - text structure class.
[0034] In one embodiment, when the user invalidates an association line - text structure class, the user is asked to inp ut the text structure class to which the invalidated line belongs.
[0035] In one embodiment, more than one format may be associated with a same text structure class. This feature allows a user to vary the format of the text structure element along the semi-structured text.
[0036] In one embodiment, a line can be tagged or identified as belonging to more than one text structure class, as the line may be composed of two or more parts having different structure classes. For example, the following line
RICK (smiling)
may be classified as a cue, namely "RICK", followed by a parenthetical, namely "(smiling)". The generation, validation, acceptance and triggering of classification rules remain the same as those previously described. In this case, the target structure class is named using two or more text structure classes, and the break points between text structure classes are identified and validated by the user. [0037] The association of line format signatures with corresponding text structure classes defines classification rules which are used to determine the internal structure of the semi-structured text. It should be noted that the format of only a part of a line may be analysed and used to create a format and tag the other lines of the text. For example, the format of only half of the lines may be analyzed and used to generate classification rules.
[0038] Figure 2 illustrates an embodiment of a method 60 for importing a script, in which a user is presented with a predefined list of text structure classes. While the method illustrated in Figure 2 presents a method 60 for importing a script, it should be understood that this method can be used to import any semi-structured text. This method can be used to import a script in a TTA system in order to generate animation, for example. The first step of the method is the reception of script 50. The user is then presented with a predefined list of script structure tags 52. Each script structure tag corresponds to a script structure class and the complete set of script structure tags represent the different script structure classes supported by the TTA system. In the third step 54 of the method 60, the user assigns a first script structure tag to a line of the script using the predefined list of script structure tags.
[0039] Using the identification of this first line, a first classification rule is created 56. The first classification rule associates the format of this first line w ith the script structure class corresponding to the first script structure tag selected by the user.
[0040] The step 58 of the method is the tagging of other lines of the script having the same format as the identified line according to the first classification rule. The format of the other lines of the script is analysed in order to determine the corresponding format signature, and the lines having the same format as the first identified line are tagged with the first script structure tag.
[0041] If untagged lines remain in the text, the user is a sked to assign a script structure tag to one of these untagged lines. A classification rule is generated according to the newly identified line. The other untagged lines of the script having the same format as this newly identified line are then tagged with the same script structure tag as the second identified line. This process continues until all lines of the script have been either identified by the user or automatically tagged. In one embodiment, the method 60 also has a step 62 of displaying the associations between the other unit parts and the script structure tags to a user. The user may validate or invalidate the tagging displayed, which causes the reception of a corresponding validation or invalidation at step 64.
[0042] It should be understood that the methods illustrated in Figures 1 and 2 may be executed by a machine provided with a processor and a memory. The processor is configured to execute some or all of the steps of the methods. The machine may be a personal computer. Alternatively, the user may be provided with an interface to input the text, and communication means to send the text to a server via a network such as the Internet, for example. The server is provided with communication means, a memory and a processor adapted to perform the steps of the methods illustrated in Figures 1 and 2.
[0043] Figure 3 illustrates one embodiment of script import module 70 used to import a script. The script import module 70 may be used to import a script in a TTA system. The script import module 70 comprises a tokenizer 72, a rule generator 74, a tag generator 76 and a memory 78, and is in communication with a user interface 80 and an animation generator 82.
[0044] A user is provided with the user interface 80 for inputting a script 84 which is sent to the script importing module 70. The script 84 may be sent in any format such as .txt, .doc, etc. The tokenizer 72 receives the script 84, tokenizes it and breaks it down into unit parts such as lines. The tokenized script 86 and the script 84 are saved in memory 78.
[0045] The rule generator 74 is adapted to analyze the text and generate classification rules via an interaction with the user. The rule generator 74 interacts with the user via the user interface 80. The tag generator is adapted to receive, from the user, the identification of script structure classes to which lines of the script 84 belong. From this identification, the rule generator 74 generates classification rules which are stored in the memory 78. A classification rule represents the association of a script structure class to at least one format of a line. The format of a line of the script is determined using the corresponding tokenized line output by the tokenizer 72 and stored in the memory 78.
[0046] The tag generator 76 accesses the classification rules stored in the memory 78 and uses them to identify the script structure class to which the remaining lines of the script belong. The tag generator 76 accesses the remaining tokenized lines stored in the memory 78, and determines their format. By comparing the format of the remaining lines of the script to the formats comprised in the classification rules, the tag generator 76 determines the script structure class to which these remaining lines belong.
[0047] In one embodiment, the tag generator 76 is adapted to display on the user interface 80 the remaining lines with their corresponding script structure classes that it has determined. The user then validates the choice of the script structure class that the tag generator 76 has made for each line. If the user invalidates a choice, the invalidated lines are counted as an exception to the rule. The user may be prompted at a later stage to provide the identification of the script structure class corresponding to this invalidated line. This new identification may be used by the rule generator 74 to create a new classification rule or to generalize an existing classification rule. The rule generator 74 may be adapted to generalize classification rules according of the method illustrated above.
[0048] Once all of the lines in the script have been tagged, the tag generator 76 outputs a file comprising the script and the script structure class to which each line of the script belongs. This file is then sent to the animation generator 82 which recognizes the structure of the script and generates the animation according to the script. The file may be in an XML format. The XML-formatted file may be chosen to conform to a DTD or Schema that the animation generator 82 understands.
[0049] In one embodiment, the DTD or Schema that the animation generator 82 understands is parsed into a list of structur e classes for the input text and the graphical user-interface of the application is automatically adapted to those classes.
[0050] In one embodiment, a DTD or Schema that the animation generator 82 understands is parsed into a state machine that enforces the right sequence of structure classes in the output. In such a case, the tag generator 76 is modified to only generate tags for classes that follow the allowed transitions in the said state machine.
[0051] In one embodiment, the rule generator 74 requests that the user identifies the script structure class of a line within the script, and generates a first classification rule according to this identification. Then the tag generator 76 locates all lines belonging to the identified script structure class in the script using the classification rule and asks the user for validation. Then the rule generator 74 requests the user to input the script structure class of a line of the script which has not already been tagged. Using this second identification, the rule generator 74 creates a second classification rule. The tag generator 76 uses this second classification rule to identify remaining lines belonging to an identical script structure class. These iterations are repeated until all lines of the script have been associated with a script structure class.
[0052] In another embodiment, the rule generator 74 displays a first part of the script on the user interface 80 and the user identifies the script structure class to which each line of the first part belongs. Using this identification, the rule generator 74 generates classification rules. The rule generator may also generalize the classification rules. The tag generator 76 accesses these classification rules and analyses the second part of the script. The tag generator 76 tags each line of the second part of the script with a script structure, class. The tag generator may also ask the user for validation. This option may provide for additional functional features which are considered complementary to the present description, and thus not readily addressed herein. For example, if the first part of the script is positioned in the middle of the script, it has to be determined whether the classification rules generated from the first part of the script will be applied to the whole text or only to the part of the script which follows the first part.
[0053] Any interface and method for identifying the script structure class to which a line belongs may be used. For example, the user selects the line of his choice and right clicks on this selected line. An interface window appears on the display unit and the user writes the name of the script structure class to which this line belongs. Alternatively, the rule generator 74 can be adapted to present the user with a particular line of the script, such as the first line for example, and the user identifies the script structure class.
[0054] Figure 4 illustrates one embodiment of an interface window 100 displayed on the user interface 80 by the script importing module 70. The rule generator 74 is adapted to present the script in section 102 of the interface 100. For example, the rule generator 74 presents the first forty lines of the script in the section 102. The user selects one of these forty lines, such as the first line for example, and assigns the script structure class to which this first line belongs by clicking on the corresponding script structure tag 104. A script structure tag 104 corresponds to a script structure class supported by the TTA system. Examples of script structure tags are: scene header, action, cue, dialog, parenthetical, transition, on screen title, dump, s kip, etc. The scene header tag is used to identify a line as being a scene header. The action tag is used to identify a line as being either an action block or part of an action block. The cue tag is used to identify a speaker of a dialog and related information. The dialog, parenthetical and transition tags are used to identify a line as being a dialog block or part of a dialog, a parenthetical or part of a parenthetical, a transition hint present in the script such as cut to, dissolve, etc, respectively. An "on screen title" tag is used for any title displayed on the screen such as the credits or the expression "THE END". The dump tag is used to identify any line which re-occurs in the script without being useful for the animation generation, such as the page number or foot notes, for example. Finally, the skip tag is used to tag a line for the corresponding script structure class is unknown. After selection of a tag 104, the user may validate his/her choice by clicking the "validate" button 108.
[0055] Referring back to Figure 3, the rule generator 74 receives the identified line and its corresponding script structure class, and generates a first classification rule. The first classification rule associates the format of the identified line to the selected script structure class. The tag generator 76 uses the first classification rule to locate other lines belonging to the same script structure class and displays these other located lines in section 106 of the interface 100. Figure 5 illustrates one embodiment of the section 106 of the interface 100. The section 106 comprises a table in which lines are displayed. The first line 120 corresponds to the identified line which has been used to create the first classification rule. The subsequent displayed lines 122 correspond to the lines that the tag generator 76 has tagged as belonging to the same script structure class as the first line 120. Checkboxes 124 are displayed in front of lines 120 and 122 for the user to select the checkboxes 124 to confirm that the associated lines 122 belong to the script structure class of the first line 120. Finally the user validates the selection by clicking on the validation button 108 of the interface 100 shown in Figure 4.
[0056] Referring back to Figure 3, in a second step, the rule generator 74 presents the user with an untagged line of the script and the user assigns a corresponding script structure tag 104 (in Figure 4). A second classification rule is created by the rule generator using this newly identified line and its corresponding script structure class. The tag generator 76 locates other lines in the script having the same format as the second identified line and tags them as belonging to the same script structure class by displaying them in the validation window 106 (refer to Figures 4 and 5). Then the user validates the selection.
[0057] In one embodiment, the rule generator 74 creates a rule risk factor which measures the performance quality of the script import process. The rule generator may have a rule performance monitor (not shown) to generate the rule risk factor. A rule risk factor is calculated for each classification rule generated by the rule generator 74 and an average risk factor may be generated for taking into account all of the rule risk factors. The risk factor is defined as the product of the false-line element detection rate and the rule fire rate. The false-line element detection rate is the ratio of the number of exceptions which are the lines that the user deselects as not following the rule, to the total number of lines 120, 122 displayed in section 106 (refer to Figure 5).
False line element rate =F/T
where F is the number of lines unselected by the user and T is the total number of lines displayed to the user for a given script structure class.
[0058] The rule fire rate is the ratio of number of lines that trigger the same rule in the script divided by the total number of lines in the script. The rule risk factor for a classification rule is calculated by taking the product of the false-line element rate and the rule fire rate, for this particular classification rule.
Rule Fire Rate = TM/TL
where TM is the total number of occurrences of the rule in the text and TL is the total number of lines in the text.
[0059] As a result, the rule risk factor is expressed as:
Rule risk factor = false line element rate X rule fire rate.
[0060] Still in reference to Figure 3, in one embodiment, the rule risk factor is used to determine whether any given classification rule can be accepted or deferred. If accepted, the tag generator 76 uses the accepted rule to tag the subsequent lines of the script having a format corresponding to the accepted rule. If deferred, the classification rule can be re-evaluated on all subsequent lines of which the format corresponds to the rule, by asking the user for validation of the association.
[0061] In one embodiment, the acceptance of a candidate rule is based on the rule risk factor by imposing a cut-off value which can be chosen by the user. The cut-off value can be applied separately for each rule. For example, a classification rule can be accepted only if its risk factor is less than 1%. In another example, the cut-off value can be applied globally, such that the average risk factor for all accepted rules remains under the chosen cut-off value. In this case, a novel classification rule may only be accepted when:
AR = ∑k RkFk ≤ Cut-off where AR is the average risk factor, Rk is the risk factor associated with the k-th accepted rule, and Fk is the fire rate associated with the k-th accepted rule.
[0062] It should be understood that other rule acceptance methods may be used. For example, a classification rule can be accepted according to a trade-off between the risk factor associated with the classification rule and the number of questions asked if the rule is rejected. In this case, a trade-off value (TOV) may be defined as:
TOV = N Z1 R1F1 + P ∑j(l - Rj)Fj where R1 and F1 are the risk factor and fire rate of the i-th accepted rule, respectively, RJ and Fj are the risk factor and fire rate of the j-th deferred rule, respectively, and N and P are the trade-off parameters, N being the number of unnecessary asked questions and P being the number of classification errors. This average risk factor expresses the fact that asking N un-necessary questions is equally bad to making P classification errors.
[0063] Now in reference to both Figures 3 and 6, in one embodiment, the user may impose restrictions on the output format of the document to be imported in order to ensure consistency of the structure. These restrictions are implemented as a finite state machine in the tag-generation process. The rule generator 74 is adapted to return the possible tag for the script line element being examined. If this tag is not accepted by the state machine, the rule generator 74 triggers a warning and tries to recover automatically from this potential error. Figure 6 illustrates an embodiment of a finite state machine 300 describing examples of restrictions. According to this finite state machine, the first tag that should be labelled is a scene header tag, as illustrated by the arrow from the start state 302 to the scene state 304. If the user of the script import module 70 tags the first line as being a structure element different from a scene header, the rule generator 74 triggers a warning. Alternatively, the script import module 70 may create an empty scene header and assign the content to this scene. After tagging a line as being a scene header (state 304), the following line can only be tagged as being either a dialog or an action (states 306 or 308 respectively). After tagging a line as being a dialog or an action, the following line may be tagged as being any text structure element; as illustrated by the arrows emerging from both states 306 and 308. After tagging a line as being a parenthetical, the following line should be tagged as a dialog (state 306), an action or a scene header. It should be understood that restrictions other than those illustrated in Figure 6 may be implemented.
[0064] Again referring back to Figure 3, in one embodiment, the rule generator 74 is adapted to generalize the classification rules according to the method previously described. The rule generator 74 can also be adapted to update the different classification rules from the original rule using the generalization learned for that rule. The rules are then used to determine the possible tags for the script line element.
[0065] In one embodiment, the classification rules generated and accepted for a particular semi-structured text are stored and can be used for importing another semi-structured text having substantially a same structure and format than the semi- structure text used to generate the classification rules. In this case, the stored rules, both accepted and deferred, along with the risk factor values estimated from the first instance are used to determine the internal structure of the second semi-structured text. The system may be adapted to update the risk factor values and acceptance decisions according to the method previously described. This particular embodiment can be used to facilitate the import of multiple scripts written by a particular author or a series of scripts from a particular source for which formatting of text are consistent with one another, such as for multiple episodes of a TV series.
[0066] It should be understood that the script import module 70 may be used to import any semi-structured text and determine its internal structure in any system requiring an identification of the internal structure of a text. Also, while the methods illustrated in Figures 1 and 2, and the script import module 70 refer to a line as unit part in order to determine the text internal structure, it should be understood that other unit parts of text such as a sentence may be used.
[0067] While preferred embodiments have been described above and illustrated in the accompanying drawings, it will be evident to those skilled in the art that modifications may be made therein without departing from the essence of this disclosure. Such modifications are considered as possible variants comprised in the scope of the disclosure.

Claims

CLAIMS:
1. A method for importing a semi-structured text into an animation generator, the method comprising: receiving the semi-structured text from which an animation is to be generated; breaking down the semi-structured text into unit parts; requesting an identification of a text structure class for a first unit part of the unit parts; receiving the text structure class for the first unit part; determining a format for the first unit part; generating a classification rule, the classification rule associating the text structure class to the format; automatically locating at least one second unit part having the format in the semi-structured text; and tagging the at least one second unit part as belonging to the text structure class, according to the classification rule; and importing the first unit part and the at least one second unit part once tagged into the animation generator, to generate the animation therefrom.
2. The method of claim 1 , comprising displaying the tagging of the at least one second unit part; and receiving, from a user, a validation of the tagging displayed.
3. The method of claim 2, wherein the receiving from the user the validation comprises receiving at least one of a confirmation and an exception to the classification rule associated with the tagging.
4. The method of claim 2, comprising updating the classification rule using the validation.
5. The method of claim 1 , wherein the receiving the identification of the text structure class comprises: providing a user with predefined text structure tags, each one of the predefined text structure tags corresponding to a respective one of text structure classes; and receiving from the user, an assignment between one of the predefined text structure tags and the first unit part.
6. The method of claim 1 , comprising performing iterations of the automatically locating and of the tagging until a maximum number of the unit parts are tagged according with the classification rule.
7. The method of claim 6, comprising requesting the identification of an other text structure class for an untagged one of the unit parts, receiving the other text structure class for the untagged one of the unit parts; determining an other format for the untagged one of the unit parts; generating another classification rule, the other classification rule associating the other text structure class to the other format; automatically locating at least one other untagged one of the unit parts having the other format in the semi-structured text; and tagging the at least one other untagged one of the unit parts as belonging to the other text structure class according to the other classification rule.
8. The method of claim 6, comprising generalizing the classification rule to obtain a generalised classification rule, the generalized classification rule allowing the tagging of a number of the unit parts, the number being greater than the maximum number of the unit parts tagged according to the classification rule.
9. The method of claim 8, wherein the format comprises a format signature with a series of symbols, and wherein the generalizing the classification rule comprises at least one of: adding, removing, repeating and adapting a symbol in the series of symbols of the format signature.
10. The method of claim 9, wherein the series of symbols comprises at least one of: a question mark, a percentage, a hyphen, an exclamation mark, a comma, a colon, and a semi-colon.
11. The method of claim 1 , wherein the importing comprises outputting a file to the animation generator, the file comprising the unit parts once all tagged, an d the respective text structure classes, the animation generator using the file to generate the animation therefrom.
12. The method of claim 11 , comprising receiving a user-imposed restriction, the user-imposed restriction for being used in the outputting of the file.
13. The method of claim 3, comprising creating a rule risk factor based the validation received from the user with respect to the tagging of multiple unit parts in accordance with the classification rule, the rule risk factor measuring a performance of the classification rule on which an acceptance of the classification rule is based.
14. An import system for importing a semi-structured text into an animation generator, the import system comprising: a tokenizer adapted to receive a semi-structured text from which an animation is to be generated by the animation generator, and to divide the semi-structured text into unit parts, each one of the unit parts having a respective format; a rule generator in operative communication with the tokenizer, the rule generator being adapted to receive an identification of a first one of the unit parts as belonging to a given text structure class and to generate at least one classification rule, the at least one classification rule representing an association of the given text structure class with the respective format for the first one of the unit parts; and a tag generator in operative communication with the rule generator and the tokenizer, the tag generator being adapted to locate an other one of the unit parts having the respective format associated to the first one of the unit parts, and to tag the other one of the unit parts as belonging to the given text structure class using the at least one classification rule.
15. The import system of claim 14, comprising a memory for storing the semi- structured text once divided, and the at least one classification rule.
16. The import system of claim 14, wherein the rule generator is adapted to receive a validation of the given text structure class assigned to the other one of the unit parts by the tag generator.
17. The import system of claim 14, comprising an output interface in operative communication with the tokenizer, the rule generator and the tag generator to an animation generator, the animation generator for receiving the unit parts once all tagged and respective text structure classes, the animation generator being adapted to generate the animation from the unit parts tagged with the respective text structure classes.
18. The import system of claim 17, wherein the tag generator is operative to tag the unit parts with the respective text structure classes according to a set of restriction rules, the set of restriction rules restricting a sequence of text structure classes associated to subsequent unit parts in the semi-structured text.
19. The import system of claim 14, comprising a user interface in operative communication with the tokenizer and the rule generator, the user interface for receiving the semi-structured text and the identification from a user.
20. The import system of claim 14, comprising a display in operative communication with the user interface, for displaying the other one of the unit parts tagged as belonging to the given text structure class.
21. The import system of claim 14, wherein the rule generator comprises a rule performance monitor adapted to generate a rule risk factor associated with the at least one classification rule, and to accept the at least one classification rule based on the rule risk factor.
22. A system for importing a semi-structured text into one of a text-to animation (TTA) and a text-to-movie (TTM) device, the system comprising: a processor; and a memory in operative communication with the processor, the memory comprising instructions for implementing the processor to: receive the semi-structured text from which an animation is to be generated; break down the semi-structured text into unit parts; request an identification of a text structure class for a first unit part of the unit parts; receive the text structure class for the first unit part; determine a format for the first unit part; generate a classification rule, the classification rule associating the text structure class to the format; locate at least one second unit part having the format in the semi-structured text; and tag the at least one second unit part as belonging to the text structure class according to the classification rule; and output the first unit part and the at least one second unit part, with the text structure class, to the one of TTA and TTM device for generating the animation therefrom.
PCT/CA2009/001522 2008-10-22 2009-10-22 Script import in a text-to-animation system WO2010045737A1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US10753508P 2008-10-22 2008-10-22
US61/107,535 2008-10-22

Publications (1)

Publication Number Publication Date
WO2010045737A1 true WO2010045737A1 (en) 2010-04-29

Family

ID=42118890

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CA2009/001522 WO2010045737A1 (en) 2008-10-22 2009-10-22 Script import in a text-to-animation system

Country Status (1)

Country Link
WO (1) WO2010045737A1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8731339B2 (en) * 2012-01-20 2014-05-20 Elwha Llc Autogenerating video from text

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7016828B1 (en) * 2000-10-23 2006-03-21 At&T Corp. Text-to-scene conversion
US20060197764A1 (en) * 2005-03-02 2006-09-07 Yang George L Document animation system
US20070147654A1 (en) * 2005-12-18 2007-06-28 Power Production Software System and method for translating text to images

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7016828B1 (en) * 2000-10-23 2006-03-21 At&T Corp. Text-to-scene conversion
US20060197764A1 (en) * 2005-03-02 2006-09-07 Yang George L Document animation system
US20070147654A1 (en) * 2005-12-18 2007-06-28 Power Production Software System and method for translating text to images

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
AUTOMATIC STORYBOARD CREATION, 10 February 2006 (2006-02-10) *

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8731339B2 (en) * 2012-01-20 2014-05-20 Elwha Llc Autogenerating video from text
US9036950B2 (en) 2012-01-20 2015-05-19 Elwha Llc Autogenerating video from text
US9189698B2 (en) 2012-01-20 2015-11-17 Elwha Llc Autogenerating video from text
US9552515B2 (en) 2012-01-20 2017-01-24 Elwha Llc Autogenerating video from text
US10402637B2 (en) 2012-01-20 2019-09-03 Elwha Llc Autogenerating video from text

Similar Documents

Publication Publication Date Title
US10956482B2 (en) Sentiment-based classification of media content
US11551567B2 (en) System and method for providing an interactive visual learning environment for creation, presentation, sharing, organizing and analysis of knowledge on subject matter
US9183194B2 (en) Document analysis, commenting, and reporting system
US9384187B2 (en) Document analysis, commenting, and reporting system
US8412516B2 (en) Document analysis, commenting, and reporting system
US8949166B2 (en) Creating and processing a data rule for data quality
US20180366013A1 (en) System and method for providing an interactive visual learning environment for creation, presentation, sharing, organizing and analysis of knowledge on subject matter
CN107247707B (en) Enterprise association relation information extraction method and device based on completion strategy
US9965472B2 (en) Content revision using question and answer generation
US10650094B2 (en) Predicting style breaches within textual content
US20040001099A1 (en) Method and system for associating actions with semantic labels in electronic documents
US20200356363A1 (en) Methods and systems for automatically generating documentation for software
US20060200457A1 (en) Extracting information from formatted sources
CN112036187A (en) Context-based video barrage text auditing method and system
US8990224B1 (en) Detecting document text that is hard to read
US11630805B2 (en) Method and device to automatically identify themes and based thereon derive path designator proxy indicia
WO2010045737A1 (en) Script import in a text-to-animation system
US11227024B2 (en) Collaborative comment analysis and modification to content
KR102309870B1 (en) Method and apparatus for text summary in display ad
Huang et al. A tool to support automated testing for web application scenario
Gessler et al. Midas loop: A prioritized human-in-the-loop annotation for large scale multilayer data
CN115982352B (en) Text classification method, device and equipment
Moslehi Mining and linking crowd-based software engineering how-to screencasts
WO2022226643A1 (en) System and method for generating content based on other source content
KUL et al. Collaborative Project

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 09821487

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 09821487

Country of ref document: EP

Kind code of ref document: A1