WO2000003358A1 - Dispositif et procede de synthese d'images animees - Google Patents

Dispositif et procede de synthese d'images animees Download PDF

Info

Publication number
WO2000003358A1
WO2000003358A1 PCT/JP1999/001153 JP9901153W WO0003358A1 WO 2000003358 A1 WO2000003358 A1 WO 2000003358A1 JP 9901153 W JP9901153 W JP 9901153W WO 0003358 A1 WO0003358 A1 WO 0003358A1
Authority
WO
WIPO (PCT)
Prior art keywords
drawing information
image
information
current time
moving image
Prior art date
Application number
PCT/JP1999/001153
Other languages
English (en)
French (fr)
Inventor
Yasuhiro Kawakatsu
Yuuichirou Ikeda
Original Assignee
Fujitsu Limited
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 Fujitsu Limited filed Critical Fujitsu Limited
Priority to DE69921843T priority Critical patent/DE69921843T2/de
Priority to EP99947068A priority patent/EP1120748B1/en
Publication of WO2000003358A1 publication Critical patent/WO2000003358A1/ja
Priority to US09/675,049 priority patent/US7031018B1/en
Priority to US11/347,394 priority patent/US7542165B2/en
Priority to US11/980,666 priority patent/US20080068623A1/en

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T13/00Animation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T11/002D [Two Dimensional] image generation
    • G06T11/60Editing figures and text; Combining figures or text

Definitions

  • the present invention relates to a moving image synthesizing apparatus for synthesizing one or more moving images and displaying the synthesized image on a screen, and a method therefor.
  • the conventional playback software requires a large amount of work to create motion data in advance in order to represent a large number of complicated motions.
  • new motion cannot be synthesized during playback, and motion cannot be flexibly changed.
  • Another problem is that no method is provided for sharing the same motion element among a plurality of image parts. Disclosure of the invention
  • An object of the present invention is to provide a moving image synthesizing apparatus and a method thereof that enhance the versatility of each motion element when displaying a plurality of moving images on a screen and easily express a complicated motion. is there.
  • FIG. 1 is a diagram illustrating the principle of a moving image synthesizing apparatus according to the present invention.
  • the moving image synthesizing apparatus in FIG. 1 includes a plurality of drawing information generating means 1, one or more image managing means 2, and a drawing means 3, and synthesizes and displays one or more images.
  • Each drawing information generating means 1 generates drawing information used for drawing a moving image. Further, each image management means 2 manages image data of each image, and generates drawing information at the current time of each image by combining drawing information generated by at least one of the plurality of drawing information generating means 1. I do. Then, the drawing means 3 receives the image data and the drawing information at the current time from the image management means 2, and draws the image data based on the drawing information at the current time.
  • the drawing information is prepared for each image and includes information on the position coordinates of the image on the screen.
  • the plurality of drawing information generating means 1 generate drawing information expressing different moving elements, and the image management means 2 synthesizes the drawing information generated by them to generate one drawing information.
  • the drawing information generating means when the first drawing information generating means generates drawing information indicating a vertical oscillation of a sine wave, and the second drawing information generating means generates drawing information indicating a rightward movement, the drawing obtained by synthesizing them is obtained.
  • the information represents the movement of the sine wave along the trajectory of the sinusoidal wave while moving up and down.
  • the drawing means 3 draws an image based on the drawing information thus synthesized, and expresses the synthesized movement.
  • each image data is drawn based on the corresponding drawing information, and a plurality of images are synthesized on the screen.
  • the plurality of drawing information generating means 1 generate By synthesizing drawing information in real time, complex movements can be easily generated. Also, since a plurality of image management means 2 can use one drawing information generating means 1, one movement element can be used for displaying a plurality of different images.
  • drawing information generating means 1 can be treated as a component of a motion expressing each motion, and the drawing information generating means 1 can be added / deleted in accordance with an event generated during reproduction of a moving image. This makes it possible to change the motion of the image according to the user's operation input or the like.
  • the drawing information generating unit 1 in FIG. 1 corresponds to a drawing information generating unit 23 in FIG. 2 and a drawing information generating unit 41 in FIG. 4 described below, and the image management unit 2
  • the drawing means 3 corresponds to the drawing unit 12, the video random access memory (VRAM) 13 and the display 14 in FIG. BRIEF DESCRIPTION OF THE FIGURES
  • FIG. 2 is a configuration diagram of the first moving image synthesizing apparatus.
  • FIG. 3 is a configuration diagram of the second moving image synthesizing apparatus.
  • FIG. 5 is a configuration diagram of a fifth moving image synthesizing apparatus.
  • FIG. 6 is a diagram showing the first moving image synthesis.
  • FIG. 8 is a flowchart of the event process.
  • FIG. 9 is a flowchart of the first drawing information generation process.
  • FIG. 10 is a flowchart of the drawing information function acquisition process.
  • FIG. 11 is a diagram illustrating the second moving image synthesis.
  • FIG. 12 is a flowchart of the second drawing information generation process.
  • FIG. 13 is a diagram showing a drawing information sequence.
  • FIG. 14 is a flowchart of the drawing information sequence acquisition process.
  • FIG. 15 is a diagram illustrating the third moving image synthesis.
  • FIG. 16 is a flowchart of the second drawing update process.
  • FIG. 17 is a flowchart of the third drawing information generation process.
  • FIG. 18 is a diagram illustrating a fourth moving image synthesis.
  • FIG. 19 is a flowchart of the fourth drawing information generation process.
  • FIG. 20 is a diagram showing a first moving image.
  • FIG. 22 is a diagram showing a second moving image.
  • FIG. 23 is a diagram showing a third moving image.
  • FIG. 24 is a configuration diagram of the information processing apparatus.
  • FIG. 25 is a diagram showing a recording medium.
  • FIG. 26 is a configuration diagram of a fifth moving image synthesizing device. BEST MODE FOR CARRYING OUT THE INVENTION
  • a plurality of drawing information generating units are provided for each image component, and the motion of each image component is synthesized in real time during reproduction.
  • Drawing information is information used for drawing the position, size, rotation angle, color, context, etc. of image parts, and the movement of image parts is determined by giving drawing information at each time. Is done.
  • By synthesizing drawing information generated by a plurality of drawing information generators in real time complicated movements can be easily generated. Also, by making it possible to refer to the same movement element from a plurality of drawing information generation units, the movement element can be used for general purposes.
  • the image management unit 11 includes an image source 21, a memory 22, and one or more drawing information generation units 23.
  • the image source 21 is, for example, a still image memory or a video decoder, and generates image data to be written to the VRAM 13. Therefore, the data of the image source 21 includes an arbitrary image such as a still image, a moving image, characters, and symbols.
  • the top drawing information generating unit 23 reads out the drawing information at the previous time from the memory 22, calculates the drawing information at the current time based on the read information, and passes it to the lower drawing information generating unit 23.
  • the drawing information at the current time output by the drawing information generating unit 23 at the lowest order is passed to the drawing unit 12 and written into the memory 22.
  • the order, type, and number of the drawing information generators 23 may be fixedly configured, or may be dynamically changed by time, user operation, or the like.
  • the drawing information generator 23 is configured by software or hardware.
  • the drawing information sequence management unit 31 stores one or more drawing information sequences 32, and these drawing information sequences 32 are identified by identifiers (indexes).
  • Drawing information sequence 32 is a list of a plurality of pieces of drawing information at arbitrary discrete times, and describes, for example, drawing information at each time of 0 seconds, 10 seconds, 60 seconds, and 65 seconds.
  • Each drawing information generating section 23 holds an identifier 33 for referring to the drawing information sequence 32 and a modification parameter 34 for deforming the drawing information.
  • the drawing information generating unit 23 extracts drawing information before and after the time from the drawing information string 32 in the drawing information string management unit 31 corresponding to the identifier 33. Then, the drawing information at the current time is calculated by a method such as performing interpolation using the extracted drawing information.
  • the drawing information generation unit 23 performs operations such as enlargement and reduction by the parameter 34 on the calculated drawing information, and adds the current time drawing information passed from the higher-level drawing information generation unit 23.
  • the calculation result is added and passed to the lower drawing information generator 23.
  • the parameter 34 can be applied not only to the drawing information itself but also to the time when extracting the drawing information. By changing the time in this way, the moving speed of the image can be changed.
  • the image management unit 11 includes an image source 21, a memory 22, one or more drawing information generation units 41, and adders 42 and 43.
  • Each drawing information generator 41 calculates a difference (differential drawing information) between the drawing information at the previous time and the current time according to the corresponding motion element, and outputs the difference to the adder 43.
  • the adder 43 calculates the total sum of the difference drawing information at the current time output from each drawing information generator 41, and the adder 42 calculates the sum of the drawing information at the previous time read from the memory 22.
  • the sum of the difference drawing information is added to obtain the drawing information at the current time.
  • the current time drawing information output from the adder 42 is passed to the drawing unit 12 and stored in the memory 22.
  • the type and number of the drawing information generating units 41 may be fixedly configured, or may be dynamically changed by time, user operation, or the like.
  • the order of operation of the drawing information generator 41 does not need to be specified, and may be performed in parallel.
  • the drawing information generator 41 is configured by software or hardware.
  • the moving image synthesizing apparatus in FIG. 4 is realized by, for example, a configuration as shown in FIG.
  • the moving image synthesizing apparatus in FIG. 5 includes the drawing information sequence management unit 31 in FIG. 3 in addition to the configuration in FIG.
  • the data of the image source 21 and the data of the drawing information sequence management unit 31 and the programs of the drawing information generation units 23 and 41 and the programs of the drawing unit 12 are already read into the memory of the computer. It is assumed that it is deployed.
  • the image source 21 is an MPEG (moving picture experts group) decoder
  • the moving image data after image expansion is read into the memory.
  • the hardware is the same even when the update interval is dynamically changed according to the air function. In general, the longer the update interval, the smaller the number of times of drawing, and the faster the drawing speed. Therefore, real-time processing is realized by appropriately adjusting the update interval.
  • the basic algorithm is the same when other drawing information such as the size and rotation angle of the image is used. .
  • FIG. 6 shows a moving image combining process in the case of using the drawing information function instead of the drawing information sequence 32 in the configuration of FIG.
  • the drawing information function management unit 51 in FIG. 6 stores one or more drawing information functions 52 in a list structure, and these drawing information functions 52 are identified by identifiers.
  • Each image management unit 11 includes data 64 of the image source 21, final drawing coordinates 65 of the previous time corresponding to the memory 22, drawing coordinates 66, and a topmost drawing information generating unit #
  • the identifier p f k is associated with the drawing information function 52 of the drawing information function management unit 51, and each drawing information generation unit 23 can refer to an arbitrary drawing information function 52. Therefore, one drawing information function 52 may be referred to from a plurality of drawing information generation units 23 in one image management unit 11, and may be referred to from the drawing information generation units 23 in a plurality of image management units 11. It may be done.
  • FIG. 7 is a flowchart of a drawing update process in the moving image synthesizing apparatus of FIG.
  • M image data 64 of the image management units # 1 to #M are sequentially drawn at the coordinates generated through the drawing information generation units # 1 to #N.
  • Loop a corresponds to the process of calling each image management unit 11 and is repeated M times.
  • the image management unit 11 sets the last drawing coordinates (X-1 ast, y_last) of the previous time to the drawing coordinates (x, y) (step S1), and performs an event process. (Step S2).
  • the drawing unit 12 is notified during the update interval d t, and the event information stored in the variable Event is identified, and if necessary, the drawing information generation unit 23 is dynamically reconstructed. The details of this event processing will be described later.
  • the drawing unit 12 clears Event to receive a new event notification (step S6), and ends the processing.
  • FIG. 8 is a flowchart of the event process in step S2 of FIG.
  • the event information stored in the variable Event of the drawing unit 12 is based on whether the identifier of the image data 64 and the new drawing information generation unit 23 are created or the existing drawing information generation unit 23 is deleted. Contains a flag that represents Further, it also includes additional information for specifying the drawing information generating unit 23 to be created / deleted.
  • the addition and deletion of the drawing information generation unit 23 are performed, for example, by adding data to the list of the drawing information generation unit 23 held by the image management unit 11 or deleting data from the list. It is realized by. At this time, the pointer between the drawing information generating units 23 is reset as necessary.
  • FIG. 9 is a flowchart of the drawing information generating process in step S3 of FIG.
  • the top-level drawing information generator # 1 performs processing by using the update interval dt and the drawing coordinates (X, y) as inputs, and outputs the updated drawing coordinates (X, y).
  • the drawing information generating unit # 1 first multiplies d t by a parameter spee d 1 to convert the global update interval d t into the internal updating interval d t1 of the drawing information generating unit # 1 (step S21).
  • a drawing information function fl (t_last, dt, x, y) corresponding to the drawing information function identifier Pf1 is obtained from the drawing information function management unit 51 (step S22). This drawing information function acquisition processing will be described later. Then, using the internal time t_last1 calculated at the previous time, the internal update interval dt1, and the input drawing coordinates (X, y), a new drawing coordinate (X, y) is calculated by the following equation. (Step S23).
  • Equation (1) indicates that x and y are calculated as functions of t-1 a s t1, dtl, x, and y, respectively.
  • step S24 in order to convert the obtained (x, y) from the internal coordinate space to the global coordinate space, x and y are multiplied by the parameters X—sca 1 e 1 and y_scalei, respectively. Then, the result is set as x and y again (step S24).
  • step S27 If there is a lower drawing information generating unit 23, it is called, the update interval dt and the obtained drawing coordinates (X, y) are given as inputs, and the same drawing information generating process is performed (step S27). .
  • the drawing information generation processing of FIG. 9 is recursively called to execute the processing of the drawing information generation unit #i.
  • step S26 if there is a lower drawing information generating unit 23, it is called. If there is no lower drawing information generator 23, the obtained drawing coordinates (X, y) are output to the upper drawing information generator 23 of the caller, and the process is terminated.
  • FIG. 10 is a flowchart of the drawing information function acquisition process in step S22 of FIG.
  • the drawing information generating unit #i passes the identifier p f k to the drawing information function management unit 51
  • the drawing information function management unit 51 performs the processing of the loop a.
  • Loop a is repeated K times, corresponding to the number of drawing information functions 52.
  • FIG. 11 shows a moving image combining process in the case of using the configuration of FIG.
  • the drawing information string management unit 31 in FIG. 11 stores one or more drawing information strings 32 in a list structure, and these drawing information strings 32 are identified by identifiers.
  • Each drawing information sequence 32 includes a sequence of discrete time and coordinate values of drawing coordinates.
  • the identifier ID k is associated with the drawing information sequence 32 of the drawing information sequence management unit 31, and each drawing information generation unit 23 can refer to an arbitrary drawing information sequence 32. Therefore, one drawing information sequence 3 2 is composed of a plurality of images in one image management unit 11. It may be referred to by the drawing information generating unit 23 or may be referred to by the drawing information generating unit 23 in the plurality of image management units 11.
  • the drawing update processing in the moving image synthesizing apparatus in FIG. 11 is basically the same as that in FIG. However, in step S3 of FIG. 7, the top-level drawing information generation unit # 1 performs the drawing information generation processing shown in FIG. 12 by using the update interval dt and the drawing coordinates (x, y) as inputs, and Output the drawn coordinates (X, y).
  • the drawing information generating unit # 1 first multiplies the update interval dt by the parameter speed1 to convert the dt into the internal update interval dt1 (step S41).
  • the drawing information sequence corresponding to the information sequence identifier ID 1 is obtained (step S42). This drawing information sequence acquisition processing will be described later.
  • the coordinate values of the times before and after t-1 ast 1 and t__last 1 + dt 1 are obtained from the drawing information sequence, and t-1 astl to t-1 ast 1 + dt
  • the difference (dx, dy) of the coordinate change between 1 is calculated (step S43). This (dx, dy) corresponds to the moving amount of the image during the internal update interval d t1.
  • the difference (dx, dy) is obtained as follows. However, t l ⁇ t 2 ⁇ t 3 ⁇ * ⁇ ⁇ !:], and x l, X 2, X 3,..., X J are different from each other, and y l, y 2, y
  • Y J are different from each other.
  • dy (y 2 -y 1) * dt 1 / (t 2-t 1) (3) Also, tl t t — lastl ⁇ t 2 ⁇ - ⁇ - ⁇ tj ⁇ t_l ast 1 + dt 1 ⁇ t (j In the case of +1), the difference (dx, dy) is calculated by the following equation.
  • d x (x 2 -x 1) * (t 2- t_l a s t l) / (t 2-t l)
  • dx and dy are then multiplied by the parameters X—sca 1 e1 and y_s ca 1 e1, respectively, and the results are set again as dx and dy (Step S44). Then, the value of the difference calculation flag bDiff1 is determined (step S45).
  • step S50 the drawing information generation processing of FIG. 12 is recursively called to execute the processing of the drawing information generation unit #i.
  • step S49 if there is a lower drawing information generating unit 23, it is called. If there is no lower drawing information generator 23, the obtained drawing coordinates (X, y) are output to the upper drawing information generator 23 of the caller, and the process is terminated.
  • FIG. 14 is a flowchart of the drawing information sequence acquisition process in step S42 of FIG.
  • the drawing information generation unit #i passes the identifier IDk to the drawing information sequence management unit 31, the drawing information sequence management unit 31 performs the process of the loop a.
  • the loop a is repeated K times corresponding to the number of the drawing information strings 32.
  • the drawing information sequence management unit 31 compares the input IDk with the identifier of one drawing information sequence 32 (step S51). If they match, the drawing information sequence 32 corresponding to IDk is output (step S52), and the process ends. If they do not match, the process of comparing IDk with the identifier of the next drawing information sequence 32 is repeated.
  • each drawing information generating unit 23 cancels the drawing information passed from the upper drawing information generating unit 23 and newly draws the drawing. Information can be generated. Therefore, for example, it is also possible to stop the movement of the image at a predetermined specific time.
  • each drawing information generating unit 23 when each drawing information generating unit 23 generates absolute drawing information by inputting the drawing information from the upper drawing information generating unit 23, the drawing information output from the image management unit 11 is It is affected by the operation order of the drawing information generator 23.
  • the image management unit 11 includes two drawing information generating units # 1 and # 2, the drawing information generating unit # 1 generates drawing information of vertical vibration on the screen, and the drawing information generating unit # 2 Suppose that drawing information is generated such that it moves to the right during time 0 to t1 and stops after time t1.
  • Each image management unit 11 further holds difference coordinates 67, and holds one or more drawing information generation units 41 in a list structure.
  • FIG. 16 is a flowchart of a drawing update process in the moving image synthesizing apparatus of FIG.
  • M image data of image management units # 1 to #M Evening 64 is sequentially drawn at the coordinates generated by the drawing information generators # 1 to #N.
  • Loop a corresponds to the process of calling each image management unit 11 and is repeated M times.
  • the loop b corresponds to the process of calling each drawing information generating unit 41, and is repeated N times.
  • the image management unit 11 performs the event processing shown in FIG. 8 (step S61), and sets the drawing coordinates (x, y) to the last drawing coordinates (X—1 ast, y—1 ast) of the previous time. ) Is set (step S62), and the processing of loop b is performed.
  • the drawing information generator 41 is called, and the difference (dx, dy) of the coordinate change during the update interval d t is calculated (step S63). The details of the drawing information generation processing will be described later.
  • the obtained difference (dx, dy) is added to the drawing coordinates (x, y), and the result is set again as the drawing coordinates (X, y) (step S64).
  • the lower-level drawing information generator # (i + 1) may be called in sequence from the top-level drawing information generator # 1 while passing the pointer lpi, and the drawing information generators # 1 to #N May be operated in parallel.
  • the image management unit 11 next sets the obtained (X, y) to (X-1 ast, y_1ast) (step S65), the drawing unit 12 draws the image data 64 at the position of the drawing coordinates (X, y) (step S66).
  • the drawing unit 12 clears Event to receive a new event notification (step S67), and ends the processing.
  • FIG. 17 is a flowchart of the drawing information generating process in step S63 of FIG.
  • the drawing information generating section #i performs processing by using the update interval d t as an input, and outputs a difference (dx, dy) between drawing coordinates.
  • the drawing information generator #i first multiplies the update interval dt by the parameter speedi Dt is converted to the internal update interval dt1 (step S71).
  • the drawing information function acquisition process shown in FIG. 10 is performed, and the drawing information function fk (t) corresponding to the drawing information function identifier P fk is obtained from the drawing information function management unit 51 (step S72).
  • the drawing information generation unit # i is calculated at the previous time.
  • the difference (dx, dy) is calculated by the following equation (step S73).
  • d fk X (t ⁇ 1 asti + dt 1)-fkx (t ⁇ 1 asti)
  • dy fky (t_l asti + dtl) one f ky (t_ 1 asti)
  • the obtained dx and dy are each multiplied by x ° slam x_s c a 1 e i, y —s c a 1 e i, and the result is set as d x and dy again (step S74).
  • the difference (dx, dy) is output, and the processing ends.
  • the difference (dx, dy) output by each drawing information generator #i is added to the drawing coordinates (X, y) in step S64 in FIG. 16, and finally all the drawing information generators 41 output
  • the drawing coordinates (x, y) are updated by the sum of the differences (dx, dy).
  • drawing information generation processing when drawing is updated, multiple drawing information
  • the drawing information generated by the unit 41 can be synthesized in real time and given to the drawing unit 12. Therefore, complex movement of the image can be easily generated by automatically updating the drawing.
  • FIG. 18 shows a moving image combining process in a case where the configuration of FIG. 5 is used.
  • the pointer list 61 of the drawing unit 12, the event variable 62, the update interval 63, the image data 64 of the image management unit 11, the final drawing coordinate 65, the drawing coordinate 66, and the difference coordinate 67 are shown in FIG. 15 and the information held by the drawing information generating unit 41 and the drawing information string management unit 31 are the same as those in FIG.
  • the drawing information generation unit 41 does not hold the difference calculation flag.
  • the drawing update processing in the moving picture synthesizing apparatus in FIG. 18 is basically the same as that in FIG. However, in step S63 of FIG. 16, the drawing information generating unit 41 performs drawing information generating processing as shown in FIG. 19 with the update interval dt as input, and outputs a difference (dx, dy) of drawing coordinates.
  • the drawing information generating section #i first multiplies the update interval dt by the parameter speedi, converts dt into the internal update interval dt1 (step S81), performs the drawing information sequence acquisition processing shown in FIG.
  • the drawing information sequence corresponding to the drawing information sequence identifier ID k is obtained from the information sequence management unit 31 (step S82).
  • drawing information generation processing drawing information can be generated using a drawing information sequence.
  • the pointer 61 to the image management unit 11, the drawing information generation units 23 and 41, the drawing information function 52, and the drawing information sequence 32 are assumed to be held in a list structure. These can be stored in any other form as long as they can be added or deleted.
  • an xy coordinate system having the origin at the upper left of the screen is set, and three images I1, 12, and I3 are displayed while changing the drawing position (X, y) over time.
  • FIG. 21 shows a moving image combining process by the image management unit 11 that manages these images.
  • the moving image synthesizing apparatus having the configuration shown in FIG. 5 is used, and the drawing information function 52 and the drawing information sequence 32 are used together.
  • the image management unit 11 of the image I 1 holds the image data 64, the final drawing coordinates (xl, y 1), and the two drawing information generation units # 1 and # 2, and stores the image management unit 11 of the image I 2. Holds the image data 64, the final drawing coordinates (x2, y2), and one drawing information generation unit 41.
  • the image management unit 11 of the image I3 stores the image data 64, the final drawing coordinates. (X 3, y 3), and one drawing information generating unit 41.
  • the drawing information generator # 1 of the image I1 holds the drawing information function identifier p f1, and the drawing information generator # 2 is the drawing information function identifier! Holding f2.
  • the drawing information generating unit 41 of the image I 2 holds a drawing information function identifier pf 2
  • the drawing information generating unit 41 of the image I 3 holds a drawing information sequence identifier ID 1.
  • Each drawing information generator 41 uses the input update interval dt and the held last update time t ⁇ 1 asti to calculate the position coordinate difference using the specified drawing information function 52 or drawing information sequence 32. Calculate (dx, dy).
  • each drawing information function 52 directly gives the difference (dx, dy), and is defined as follows: Is done.
  • the drawing information sequence 32 includes the position coordinates of four vertices of a square whose side length is 100.
  • the locus specified by the drawing information sequence 32 has the upper left vertex as a starting point, and each of the sides of the square has It represents moving clockwise along.
  • the difference (dx, dy) is calculated by linear interpolation from the specified trajectory.
  • Each image management unit 11 calculates the position coordinates (x, y) as follows using the difference (dx, dy) calculated from the drawing information function 52 or the drawing information sequence 32. , Image management unit for image I 1 1 1
  • the drawing information generating section # 1 calculates the difference between the vertical vibrations using the drawing information function P f 1, and the drawing information generating section # 2 calculates the difference of the rightward movement using the drawing information function pf 2.
  • the sum of these two differences is the amount of change in position coordinates in one update. As a result, the image I 1 moves along the locus of the sine wave.
  • the drawing information generating unit 41 calculates the difference of rightward movement by using the drawing information function pf2, and this is the amount of change in position coordinates in one update. As a result, the image I 2 moves linearly to the right.
  • the drawing information generating unit 41 calculates the difference of the square movement using the drawing information sequence ID1, and this is the amount of change in the position coordinates in one update. As a result, the image I 3 moves along the trajectory specified by the drawing information sequence ID 1.
  • each image Moves while adding the difference generated by each drawing information generating section 41 to the position coordinates.
  • the image I2 moves linearly to the right, and the image I3 moves along a locus of a square.
  • the image management unit 11 sets the drawing information generation unit # Add 3. Thereafter, the differences generated by the three drawing information generators # 1, # 2, and # 3 are added to determine the position coordinates of the image I1.
  • the moving picture synthesizing apparatus shown in FIGS. 6, 11, 15, and 18 can be configured using an information processing apparatus (computer) as shown in FIG.
  • the information processing device in Fig. 24 includes a CPU (central processing unit) 71, a memory 72, an input device 73, an output device 74, an external storage device 75, a medium drive device 76, and a network connection device 7 7, which are connected to each other by a bus 78.
  • CPU central processing unit
  • the memory 72 includes, for example, a ROM (read only memory), a RAM (random access memory) and the like, and stores programs and data used for processing.
  • the CPU 71 performs necessary processing by executing a program using the memory 72.
  • the image management unit 11, the drawing unit 12, the drawing information function management unit 51, the drawing information sequence management unit 31, the drawing information generation units 23, 41, etc. are included in a software component described by a program.
  • each is stored in a specific program code segment in memory 72.
  • a list 72 of pointers, an event variable 62, an update interval 63, image data 64, final drawing coordinates 65, drawing coordinates 66, and the like are also stored in the memory 72.
  • the input device 73 is, for example, a keyboard, a pointing device, a touch panel, or the like, and is used for inputting instructions and information from a user. The operation input to the input device 73 may be notified to the drawing unit 12 as an event.
  • Output device 7 Reference numeral 4 includes, for example, the VRAM 13 and the display 14 shown in FIG. 5, and is used for inquiring the user and outputting a synthesized moving image.
  • the external storage device 75 is, for example, a magnetic disk device, an optical disk device, a magneto-optical disk (magneto-optical disk) device, or the like.
  • the above-mentioned program and data can be stored in the external storage device 75, and can be used by loading them into the memory 72 as needed.
  • the external storage device 75 can also be used as a database for storing image data 64, drawing information functions 52, drawing information strings 32, and the like.
  • the medium driving device 76 drives the portable recording medium 79 and accesses the recorded contents.
  • the portable recording medium 79 any computer-readable recording medium such as a memory card, a floppy disk, a CD-ROM (disk read only memory), an optical disk, and a magnetic optical disk can be used.
  • the above-mentioned program and data can be stored in the portable recording medium 79, and can be used by loading them into the memory 72 as needed.
  • the network connection device 77 communicates with an external device via an arbitrary network (line) such as a LAN (local area network) and performs data conversion accompanying the communication. Further, if necessary, the above-described program and data can be received from an external device, and can be loaded into the memory 72 and used.
  • a network such as a LAN (local area network)
  • FIG. 25 shows a computer-readable recording medium capable of supplying a program and data to the information processing apparatus of FIG.
  • the programs and data stored in the portable recording medium 79 and the external database 80 are loaded into the memory 72. Then, the CPU 71 executes the program using the data, and performs necessary processing.
  • FIG. 26 shows an example in which a plurality of image management units 11 are configured by one hardware circuit.
  • 26 includes a plurality of memories 81 (# 1 to #M), selectors 82 and 83 for selecting the memories 81, a plurality of drawing information generating circuits 84 (# 1 to #N), and a drawing information generating circuit 84.
  • Selectors 85 and 86 for selecting the selector and a control circuit 87 are provided.
  • the control circuit 87 switches the selectors 82 and 83 with the control signal C1, switches the selectors 85 and 86 with the control signal C2, and controls the drawing information generation circuit 84 with the control signal C3.
  • drawing coordinates (x, y) are handled as drawing information.
  • the memories # 1 to #M correspond to the above-described image management units # 1 to #M, respectively, and store the drawing information of the previous time at a certain time t.
  • the drawing information generating circuits # 1 to #N correspond to the above-described drawing information generating units # 1 to #N, respectively, perform calculations corresponding to one motion element, and output drawing information.
  • the drawing coordinates ( ⁇ ', y') to be output are expressed as follows.
  • X ' fXt, dt, ⁇ , y;
  • These functions can also output a history of past drawing coordinates. For example, a function that stores the input coordinate value (X—t1, y_t1) at time t1 and continues to output (x_t1, y_t1) after time t1 May be defined.
  • drawing coordinate data is stored in a register in the drawing information generating circuit 84 for each image, and the control circuit 87 The register is switched by the control signal C3, and an appropriate data is output.
  • the selectors 82 and 83 are switched by the control signal C1 from the control circuit 87, and the memory # 1 is selected.
  • the selectors 85 and 86 are switched by the control signal C2, and the drawing information generating circuit # 1 is selected.
  • the register in the drawing information generation circuit # 1 is switched by the control signal C3, and appropriate data is selected.
  • the drawing coordinates of the memory # 1 are input to the drawing information generating circuit # 1, and the output from the drawing information generating circuit # 1 is stored in the memory # 1.
  • the selectors 85 and 86 are switched, the drawing information generating circuit # 2 is selected, and drawing information is input from the memory # 1. Then, drawing coordinates are generated in the same manner as in the case of the drawing information generating circuit # 1, and stored in the memory # 1. After such an operation is repeated for all the drawing information generating circuits 84 assigned to the image management unit # 1, the output of the last drawing information generation circuit 84 is the current time of the image management unit # 1. Is output as drawing information. At this time, the drawing information is also stored in the memory # 1.
  • Drawing information generation circuit # 2 Linear movement to the right
  • Drawing information generation circuit # 3 Linear movement to the left
  • the memory # 1 is selected by the selectors 82 and 83, and the drawing information generating circuit # 1 is selected by the selectors 85 and 86.
  • a vertical vibration of s in (t) is added to the drawing coordinates of the memory # 1.
  • the drawing information generating circuit # 2 is selected by the selectors 85 and 86.
  • the rightward movement is added to the drawing coordinates of the memory # 1, and as a result, the drawing coordinates when moving rightward along the sine wave trajectory are output.
  • the memory # 2 is selected by the selectors 82 and 83, and the drawing information generating circuit # 1 is selected by the selectors 85 and 86.
  • a vertical vibration of s i n (t) is added to the drawing coordinates of the memory # 2.
  • the drawing information generating circuit # 3 is selected by the selectors 85 and 86.
  • a leftward movement is added to the drawing coordinates of the memory # 2, and as a result, a drawing coordinate for moving leftward along the sine wave trajectory is output.
  • the selector by switching between the memory 81 and the drawing information generating circuit 84 using the selector, it is possible to combine the outputs of the plurality of drawing information generating circuits 84 to generate one image motion. it can. Also, one drawing information generating circuit 84 can be used to generate a plurality of image movements.
  • the present invention can be used in any field in which a moving image moves over time or in response to an event, regardless of software or hardware.
  • Applications in software include, for example, Examples include the following:
  • CD-ROM content creation software and playback software (3) CD-ROM content creation software and playback software (4) Presentation creation software and playback software
  • the system of the present invention during reproduction, the movement to the right and the vertical vibration are generated separately, and by associating them with one image component, the vibration is performed while moving to the right. Movements can be combined. Using this system, it is possible to dynamically add and delete movements according to the user's interaction and time.
  • the movement to the right and the vertical vibration during playback are managed separately, so clicking on the image that is moving to the right starts vertical vibration while moving to the right, and clicking it again causes the vertical vibration to occur.
  • the motion of stopping can be easily generated.
  • the movement to the right may be associated with the image component as a basic movement, and the vertical vibration may be added or deleted by a click event.
  • the movement to the right and the movement that vibrates up and down while moving to the right are created separately, and are switched by clicking. But if you don't make the continuity of these two movements carefully, the movement may be discontinuous when switching. Also, if the system of the present invention is used, the producer of the multimedia title can handle each movement as a component. Various motion elements are recorded in a disassembled state in the completed multimedia title, so you can extract your favorite motion elements from multimedia titles created by other authors and use them as motion parts. Can be used.
  • a multimedia title that includes an image that moves along a path while oscillating up and down in a certain rhythm is considered to include two movement components: up and down oscillation in rhythm and movement along a path .
  • the vertical vibration with the rhythm can be realized in other multimedia devices.
  • it is very difficult to extract only the vertical vibration with the rhythm because the motion is synthesized in advance during production.
  • the drawing information function a vertical oscillation of a sine wave or a linear movement of the left and right is used, but any other function can be used as well.
  • the drawing information sequence is not limited to a square locus, and any locus such as a parabola, a circle, or an ellipse can be set.
  • drawing information generated by the drawing information generating unit is not limited to the drawing position of the image, but may be information for specifying an image scaling ratio, a rotation angle, a color, a context, and the like. By dynamically combining these pieces of information, it is possible to display a wider variety of moving images. Industrial applicability
  • the present invention when displaying a plurality of moving images on a screen, it is possible to easily generate a complicated movement by combining a plurality of movement elements. For example, Event You can add motion to the real time according to the key, delete or stop the motion, and apply one motion element to multiple images.

Description

明細書 動画像合成装置および方法 技術分野
本発明は、 1つ以上の動画像を合成して画面上に表示する動画像合成装置お よびその方法に関する。 背景技術
近年、 パーソナルコンピュータやワークステーションの普及に伴い、 画面上 で画像を動かしながら再生するために、 動画像データの再生ソフトウエアを利 用するユーザが増えている。 従来の再生ソフトウェアは、 表示される画像部品 のデータとその動きのデータを一体化して格納しておき、 再生時にそれを描画 装置に送る機能を持っている。
しかしながら、 画面上で画像部品が上下に振動しながら移動するというよう な複雑な動きを再生する場合、 最終的な動きをあらかじめ手作業で合成してお く必要がある。 したがって、 再生時に複数の異なる複雑な動きを表現するため には、 すべての種類の動きを合成しておき、 再生時にそれぞれの画像部品を決 められた動きに従って表示することになる。 また、 複数の画像部品が並進等の 同じ動きの要素から作成された動きを使用する場合でも、 それぞれ別々に動き を合成する必要がある。
このように、 従来の再生ソフトウェアでは、 多数の複雑な動きを表現するた めには、 あらかじめ動きのデータを作成するために多大な作業量を必要とする。 また、 再生時に新たな動きを合成することができず、 動きをフレキシブルに変 更することができない。 さらに、 同じ動きの要素を複数の画像部品で共用する 方法が提供されていないという問題もある。 発明の開示
本発明の課題は、 複数の動画像を画面上に表示する際に、 それぞれの動きの 要素の汎用性を高め、 複雑な動きを容易に表現する動画像合成装置およびその 方法を提供することである。
図 1は、 本発明の動画像合成装置の原理図である。 図 1の動画像合成装置は、 複数の描画情報発生手段 1、 1つ以上の画像管理手段 2、 および描画手段 3を 備え、 1つ以上の画像を合成して表示する。
各描画情報発生手段 1は、 動画像の描画に用いられる描画情報を生成する。 また、 各画像管理手段 2は、 各画像の画像データを管理し、 複数の描画情報発 生手段 1のうち 1つ以上が生成する描画情報を組み合わせて、 各画像の現時刻 における描画情報を生成する。 そして、 描画手段 3は、 画像管理手段 2から画 像データと現時刻における描画情報を受け取り、 現時刻における描画情報に基 づいて画像データを描画する。
描画情報は、 各画像毎に用意され、 画面上での画像の位置座標に関する情報 を含む。 画像の再生時において、 複数の描画情報発生手段 1は、 それぞれ異な る動きの要素を表現する描画情報を生成し、 画像管理手段 2は、 それらが生成 する描画情報を合成して 1つの描画情報を生成する。
例えば、 第 1の描画情報発生手段が正弦波の上下振動を表す描画情報を生成 し、 第 2の描画情報発生手段が右移動を表す描画情報を生成する場合、 それら を合成して得られる描画情報は、 正弦波の軌跡に沿って上下振動しながらおへ 移動する動きを表す。
描画手段 3は、 こうして合成された描画情報に基づいて画像デ一夕を描画し、 合成された動きを表現する。 また、 画像管理手段 2が複数ある場合は、 各画像 データを対応する描画情報に基づいて描画し、 画面上で複数の画像を合成する。 このように、 画像の再生時において、 複数の描画情報発生手段 1が生成する 描画情報をリアルタイムに合成することにより、 複雑な動きが容易に生成され る。 また、 複数の画像管理手段 2が 1つの描画情報発生手段 1を利用できるた め、 1つの動きの要素を異なる複数の画像の表示に用いることができる。
また、 描画情報発生手段 1を個々の動きを表現する動きの部品として扱い、 動画の再生中に発生したイベントに応じて、 描画情報発生手段 1を追加/削除 することもできる。 これにより、 ユーザの操作入力等に応じて画像の動きを変 更することが可能になる。
例えば、 図 1の描画情報発生手段 1は、 後述する図 2の描画情報発生部 2 3 および図 4の描画情報発生部 4 1に対応し、 画像管理手段 2は、 図 2の画像管 理部 1 1に対応し、 描画手段 3は、 図 2の描画部 1 2、 V R AM (video rand om access memory) 1 3、 およびディスプレイ 1 4に対応する。 図面の簡単な説明
図 1は、 本発明の動画像合成装置の原理図である。
図 2は、 第 1の動画像合成装置の構成図である。
図 3は、 第 2の動画像合成装置の構成図である。
図 4は、 第 3の動画像合成装置の構成図である。
図 5は、 第 5の動画像合成装置の構成図である。
図 6は、 第 1の動画像合成を示す図である。
図 7は、 第 1の描画更新処理のフローチャートである。
図 8は、 イベント処理のフローチャートである。
図 9は、 第 1の描画情報発生処理のフローチャートである。
図 1 0は、 描画情報関数取得処理のフローチャートである。
図 1 1は、 第 2の動画像合成を示す図である。
図 1 2は、 第 2の描画情報発生処理のフローチャートである。
図 1 3は、 描画情報列を示す図である。 図 1 4は、 描画情報列取得処理のフローチャートである。
図 1 5は、 第 3の動画像合成を示す図である。
図 1 6は、 第 2の描画更新処理のフローチャートである。
図 1 7は、 第 3の描画情報発生処理のフローチャートである。
図 1 8は、 第 4の動画像合成を示す図である。
図 1 9は、 第 4の描画情報発生処理のフローチャートである。
図 2 0は、 第 1の動画像を示す図である。
図 2 1は、 第 5の動画像合成を示す図である。
図 2 2は、 第 2の動画像を示す図である。
図 2 3は、 第 3の動画像を示す図である。
図 2 4は、 情報処理装置の構成図である。
図 2 5は、 記録媒体を示す図である。
図 2 6は、 第 5の動画像合成装置の構成図である。 発明を実施するための最良の形態
以下、 図面を参照しながら、 本発明の実施の形態を詳細に説明する。
本発明では、 画像部品毎に複数の描画情報発生部を設け、 再生時に各画像部 品の動きをリアルタイムに合成する。 描画情報とは、 画像部品の位置、 大きさ、 回転角度、 色、 前後関係等の描画のために利用される情報であり、 各時刻の描 画情報を与えることで、 画像部品の動きが決定される。 複数の描画情報発生部 が生成する描画情報をリアルタイムに合成することにより、 複雑な動きが容易 に生成される。 また、 複数の描画情報発生部から同じ動きの要素を参照できる ようにすることで、 動きの要素が汎用的に利用可能となる。
図 2は、 絶対的な描画情報に基づく動画像合成装置の構成図である。 図 2の 動画像合成装置は、 1つ以上の画像管理部 1 1、 描画部 1 2、 V R AM (vi de o random access memory) 1 3、 およびディスプレイ 1 4を備える。 画像管理部 1 1は、 画像部品毎に設けられ、 例えば、 1フレームに 1回等の 適当な間隔または動的に決定される間隔で、 描画部 1 2に対して現時刻の画像 データと描画情報を渡す。 描画部 1 2は、 各画像管理部 1 1から受け取った画 像デ一夕を描画情報に従って V R AM 1 3に書き込み、 ディスプレイ 1 4の画 面に表示する。
画像管理部 1 1は、 画像ソース 2 1、 メモリ 2 2、 および 1つ以上の描画情 報発生部 2 3を含む。 画像ソース 2 1は、 例えば、 静止画のメモリや動画デコ —ダ等であり、 V R AM 1 3に書き込むべき画像データを発生する。 したがつ て、 画像ソース 2 1のデータには、 静止画、 動画、 文字、 記号等の任意の画像 が含まれる。
描画情報発生部 2 3は、 互いに順序関係を持って関連付けられている。 各描 画情報発生部 2 3は、 対応する動きの要素に応じて現時刻の絶対的な描画情報 を計算し、 上位の描画情報発生部 2 3から渡された現時刻の描画情報に計算結 果を加え、 下位の描画情報発生部 2 3に渡す。
最上位の描画情報発生部 2 3は、 メモリ 2 2から前時刻の描画情報を読み出 し、 それに基づいて現時刻の描画情報を計算し、 下位の描画情報発生部 2 3に 渡す。 最下位の描画情報発生部 2 3が出力した現時刻の描画情報は、 描画部 1 2に渡されるとともに、 メモリ 2 2に書き込まれる。
ここで、 描画情報発生部 2 3の順序、 種類、 数は固定的に構成されていても よいし、 時刻、 ユーザの操作等により動的に変化してもよい。 描画情報発生部 2 3は、 ソフトウェアまたはハードウェアにより構成される。
図 2の動画像合成装置は、 例えば、 図 3に示すような構成により実現される。 図 3の動画像合成装置は、 図 2の構成に加えて、 描画情報列管理部 3 1を備え る。
描画情報列管理部 3 1は、 1つ以上の描画情報列 3 2を格納しており、 これ らの描画情報列 3 2は識別子 (インデックス) により識別される。 描画情報列 3 2は、 離散的な任意の時刻における複数の描画情報のリストであり、 例えば、 0秒、 1 0秒、 6 0秒、 6 5秒の各時刻における描画情報を記述している。 各描画情報発生部 2 3は、 描画情報列 3 2を参照するための識別子 3 3と描 画情報を変形させるための修飾パラメ—夕 3 4を保持している。 ある時刻にお いて、 描画情報発生部 2 3は、 識別子 3 3に対応する描画情報列管理部 3 1内 の描画情報列 3 2から、 その時刻の前後の描画情報を取り出す。 そして、 取り 出した描画情報を用いて補間を行う等の方法により、 現時刻の描画情報を計算 する。
次に、 描画情報発生部 2 3は、 計算した描画情報に対してパラメータ 3 4に よる拡大、 縮小等の操作を施し、 上位の描画情報発生部 2 3から渡された現時 刻の描画情報に計算結果を加え、 下位の描画情報発生部 2 3に渡す。 パラメ一 タ 3 4は、 描画情報そのものに適用するだけでなく、 描画情報を取り出す場合 に時刻に対して適用することも可能である。 このようにして時刻を変更するこ とにより、 画像の移動スピードを変えることができる。
図 4は、 描画情報の差分に基づく動画像合成装置の構成図である。 図 4の動 画像合成装置は、 図 2の動画像合成装置と同様に、 1つ以上の画像管理部 1 1、 描画部 1 2、 V R AM 1 3、 およびディスプレイ 1 4を備える。
画像管理部 1 1は、 画像ソース 2 1、 メモリ 2 2、 1つ以上の描画情報発生 部 4 1、 および加算器 4 2、 4 3を含む。 各描画情報発生部 4 1は、 対応する 動きの要素に応じて前時刻と現時刻の描画情報の差分 (差分描画情報) を計算 し、 加算器 4 3に出力する。
加算器 4 3は、 各描画情報発生部 4 1から出力された現時刻の差分描画情報 の総和を計算し、 加算器 4 2は、 メモリ 2 2から読み出された前時刻の描画情 報に差分描画情報の総和を加算して、 現時刻の描画情報を求める。 加算器 4 2 から出力された現時刻の描画情報は、 描画部 1 2に渡されるとともに、 メモリ 2 2に格納される。 ここで、 描画情報発生部 4 1の種類、 数は固定的に構成されていてもよいし、 時刻、 ユーザの操作等により動的に変化してもよい。 描画情報発生部 4 1の動 作順序は特に指定する必要はなく、 並列に動作してもよい。 描画情報発生部 4 1は、 ソフトウェアまたはハードウェアにより構成される。
図 4の動画像合成装置は、 例えば、 図 5に示すような構成により実現される。 図 5の動画像合成装置は、 図 4の構成に加えて、 図 3の描画情報列管理部 3 1 を備える。
各描画情報発生部 4 1は、 図 3の描画情報発生部 2 3と同様に、 描画情報列 3 2を参照するための識別子 3 3と描画情報を変形させるための修飾パラメ一 夕 3 4を保持している。 描画情報発生部 4 1は、 識別子 3 3を用いて描画情報 列管理部 3 1から取り出した描画情報に基づく補間等の方法により、 現時刻の 差分描画情報を計算する。 そして、 計算した差分描画情報に対してパラメータ 3 4による拡大、 縮小等の操作を施し、 加算器 4 3に出力する。
次に、 以上説明した動画像合成装置の動作について、 より詳細に説明する。 ここでは、 主として、 画像管理部 1 1と描画部 1 2を再生ソフトウェアにより 構成した場合の描画処理について説明する。
画像ソース 2 1のデ一夕、 描画情報列管理部 3 1のデ一夕、 描画情報発生部 2 3、 4 1のプログラム、 描画部 1 2のプログラム等は、 既にコンピュータの メモリ上に読み込まれて展開されているものとする。 例えば、 画像ソース 2 1 が M P E G (moving picture exper ts group) デコーダの場合、 イメージ展開 後の動画像データがメモリ上に読み込まれる。
また、 描画部 1 2は、 イベントループ等の他のイベント制御部等からのィべ ント通知を受け取るために、 変数を保持している。 イベントとしては、 ユーザ による操作入力やシステムによる割り込み等の任意の形態が考えられ、 特定の 形態に限定されない。
また、 描画の更新間隔として一定値 d tを用いているが、 再生するハードウ エアの機能等に応じて更新間隔を動的に変化させた場合でも、 基本的なァルゴ リズムは同様である。 一般に、 更新間隔が大きいほど描画回数が少なくなり、 描画速度が速くなる。 したがって、 更新間隔を適当に調整することにより、 リ アルタイムの処理が実現される。
また、 描画情報としては、 画像を表示する位置に対応する 2次元座標を用い ているが、 画像の大きさや回転角度等の他の描画情報を用いた場合でも、 基本 的なアルゴリズムは同様である。
また、 描画情報列 3 2に含まれるデータとしては、 識別子と時刻と 2次元座 標の列を用いているが、 より複雑な動きを表現する情報を含んでいても、 全体 のアルゴリズムは変化しない。 描画情報発生部 2 3、 4 1は、 それぞれ独自の 内部時間と座標空間を保持しているため、 1つの描画情報列 3 2に対して、 そ れぞれ異なつた動きを表現することができる。
図 6は、 図 3の構成において、 描画情報列 3 2の代わりに描画情報関数を用 いた場合の動画像合成処理を示している。 図 6の描画情報関数管理部 5 1は、 1つ以上の描画情報関数 5 2をリスト構造で格納しており、 これらの描画情報 関数 5 2は識別子により識別される。
描画部 1 2は、 任意の数の画像管理部 1 1へのポインタのリスト 6 1、 ィべ ント通知を受け取るための変数 6 2、 および描画の更新間隔 6 3を保持してい る。 リスト 6 1に含まれるポィンタ p l m a g e i ( i = l , 2 , . . . , Μ) は、 画像管理部 # iを指している。
各画像管理部 1 1は、 画像ソース 2 1のデータ 6 4、 メモリ 2 2に対応する 前時刻の最終描画座標 6 5、 描画座標 6 6、 および最上位の描画情報発生部 #
1を保持しており、 描画情報発生部 # i ( i = l, 2 , . . . , N— 1 ) は、 下位の描画情報発生部 # ( i + 1 ) へのポインタ 1 p iを保持している。 ただ し、 最下位の描画情報発生部 # Nは、 他の描画情報発生部 2 3へのポインタを 保持していない。 また、 各描画情報発生部 # i ( i = l, 2, . . . , N) は、 描画情報関数 識別子 p f k (k= 1, 2, . . . , K) 、 スピードパラメータ s p e e d i、 スケールパラメ一夕 x— s c a l e i、 y— s c a l e i、 および内部時刻 t _ 1 a s t iを保持している。
識別子 p f kは、 描画情報関数管理部 51の描画情報関数 52と対応付けら れており、 各描画情報発生部 23は、 任意の描画情報関数 52を参照すること ができる。 したがって、 1つの描画情報関数 52は、 1つの画像管理部 1 1内 の複数の描画情報発生部 23から参照されることもあり、 複数の画像管理部 1 1内の描画情報発生部 23から参照されることもある。
図 7は、 図 6の動画像合成装置における描画更新処理のフローチャートであ る。 1回の描画更新処理により、 画像管理部 # 1〜#Mの M個の画像データ 6 4が、 逐次、 描画情報発生部 # 1〜#Nを通じて生成された座標に描画される。 ループ aは、 各画像管理部 1 1を呼び出す処理に対応し、 M回繰り返される。 ル一プ aにおいて、 画像管理部 1 1は、 描画座標 (x, y) に前時刻の最終 描画座標 (X— 1 a s t , y_l a s t) を設定し (ステップ S 1) 、 ィベン ト処理を行う (ステップ S 2) 。 イベント処理においては、 更新間隔 d tの間 に描画部 12に通知され、 変数 Ev e n tに格納されたイベント情報を識別し て、 必要があれば動的に描画情報発生部 23を再構築する。 このイベント処理 の詳細については後述することにする。
次に、 最上位の描画情報発生部 # 1を呼び出し、 更新間隔 d tの間における 描画座標の変化を計算する (ステップ S 3) 。 このとき、 下位の描画情報発生 部 23が存在すれば、 それらが再帰的に呼び出され、 最下位の描画情報発生部 #Nが出力した描画座標 (x, y) が現時刻の描画座標として描画部 12に渡 される。 この描画情報発生処理の詳細については後述することにする。
次に、 画像管理部 1 1は、 得られた (X, y) を (X— 1 a s t , y_ 1 a s t) に設定し (ステップ S 4) 、 描画部 12は、 描画座標 (X, y) の位置 に画像データ 6 4を描画する (ステップ S 5 ) 。
すべての画像管理部 1 1についてループ aの処理が終了すると、 描画部 1 2 は、 新たなイベント通知を受け取るために E v e n tをクリアし (ステップ S 6 ) 、 処理を終了する。
図 8は、 図 7のステップ S 2におけるイベント処理のフローチャートである。 描画部 1 2の変数 E v e n tに格納されたイベント情報は、 画像データ 6 4の 識別子と、 新しい描画情報発生部 2 3を作成するか、 または既存の描画情報発 生部 2 3を削除するかを表すフラグを含んでいる。 さらに、 作成 ·削除対象の 描画情報発生部 2 3を指定する付加情報も含んでいる。
画像管理部 1 1は、 描画部 1 2からイベント情報を受け取ると、 イベント通 知の対象が処理中の画像データ 6 4かどうかを識別子で判断する (ステップ S 1 1 ) 。 処理中の画像データ 6 4が対象でなければ処理を終了し、 それが対象 であれば、 フラグと付加情報を用いて描画情報発生部 2 3の追加 ·削除を行う。 ここでは、 フラグが追加を表すかどうかを判定し (ステップ S 1 2 ) 、 それ が追加を表す場合は、 付加情報により指定される描画情報発生部 2 3を追加し (ステップ S 1 3 ) 、 処理を終了する。 また、 フラグが追加を表していない場 合は、 付加情報により指定される描画情報発生部 2 3を削除し (ステップ S 1 4 ) 、 処理を終了する。
描画情報発生部 2 3の追加 '削除は、 例えば、 画像管理部 1 1が保持してい る描画情報発生部 2 3のリストにデータを追加したり、 そのリス卜からデ一夕 を削除する処理によって実現される。 このとき、 描画情報発生部 2 3間のボイ ンタは、 必要に応じて再設定される。
このような描画情報発生部 2 3の動的再構築処理により、 画像の複雑な動き を動的に変化させることができる。 例えば、 単振動と平行移動を合成して正弦 波の形に動いていた画像の画像管理部 1 1から、 単振動のみ、 もしくは平行移 動のみの描画情報発生部 2 3を削除することで、 画像をより単純な別の動きへ 移行させることが可能になる。 また、 平行移動していた画像の画像管理部 1 1 に、 単振動の描画情報発生部 23を追加することで、 画像をより複雑な別の動 きへ移行させることが可能になる。
図 9は、 図 7のステップ S 3における描画情報発生処理のフローチャートで ある。 最上位の描画情報発生部 # 1は、 更新間隔 d tと描画座標 (X, y) を 入力として処理を行い、 更新された描画座標 (X, y) を出力する。
描画情報発生部 # 1は、 まず、 グローバルな更新間隔 d tを描画情報発生部 # 1の内部更新間隔 d t 1に変換するために、 d tにパラメータ s p e e d 1 を乗算する (ステップ S 21) 。
次に、 描画情報関数管理部 51から、 描画情報関数識別子 P f 1に対応する 描画情報関数 f l (t_l a s t, d t, x, y) を取得する (ステップ S 2 2) 。 この描画情報関数取得処理については後述することにする。 そして、 前 時刻に計算された内部時刻 t_l a s t 1、 内部更新間隔 d t 1、 入力された 描画座標 (X, y) を用いて、 新たな描画座標 (X, y) を次式により計算す る (ステップ S 23) 。
(x, y) = f l (t_l a s t l, d t l, x, y) (1)
(1) 式は、 xおよび yが、 それぞれ、 t— 1 a s t 1、 d t l, x、 yの 関数として計算されることを表している。 f l (t_l a s t 1, d t l, x, y) としては、 例えば、 x=0、 y = s i n ( t _ 1 a s t 1 + d t 1 ) のよ うな関数が用いられる。
次に、 得られた (x, y) を内部座標空間からグロ一バルな座標空間へ変換 するために、 x、 yに、 それぞれ、 パラメ一夕 X— s c a 1 e 1、 y_s c a l e iを乗算し、 その結果を改めて x、 yとおく (ステップ S 24) 。
そして、 t 1 a s t 1 = t 1 a s t 1 +d t 1とおいて内部時刻を更新 し (ステップ S 25) 、 下位の描画情報発生部 23が存在するかどうかを判定 する (ステップ S 26) 。 ここでは、 下位の描画情報発生部 23へのポインタ 1 p 1が存在すれば、 下位の描画情報発生部 23が存在すると判定される。 下 位の描画情報発生部 23が存在しなければ、 描画座標 (x, y) を 1回の更新 処理の結果として出力する。
下位の描画情報発生部 23が存在すれば、 それを呼び出し、 更新間隔 d tと 得られた描画座標 (X, y) を入力として与えて、 同様の描画情報発生処理を 行わせる (ステップ S 27) 。 ここでは、 図 9の描画情報発生処理が再帰的に 呼び出されて、 描画情報発生部 # iの処理を実行する。
このとき、 描画情報発生部 # iは、 ステップ S 2 1で d t l=d t * s p e e d iの計算を行い、 ステップ S 22で識別子 p f kに対応する描画情報関数 f k (t— l a s t, d t , x, y) を取得し、 ステップ S 23で描画座標 (X, y) を次式により計算する。 (x, y) = f k (t_l a s t i , d t l, x, y) (2) また、 ステップ S 24で x = x* x― s c a 1 e i、 y = y * y_ s c a 1 e iの計算を行い、 ステップ S 25で t— l a s t i = t_ 1 a s t i +d t 1の計算を行い、 ステップ S 26でポインタ 1 p iが存在するかどうかを判定 する。
そして、 ステップ S 26において下位の描画情報発生部 23が存在すれば、 それを呼び出す。 また、 下位の描画情報発生部 23が存在しなければ、 得られ た描画座標 (X, y) を呼び出し元の上位の描画情報発生部 23に出力して、 処理を終了する。
下位の描画情報発生部 23から描画座標を受け取つた上位の描画情報発生部 23は、 それを順に上位の描画情報発生部 23に伝えていき、 最上位の描画情 3 報発生部 # 1は、 受け取った描画座標を 1回の更新処理の結果として出力する。 このような描画情報発生処理により、 描画の更新時に、 複数の描画情報発生 部 2 3が生成する描画情報をリアルタイムに合成して、 描画部 1 2に与えるこ とが可能になる。 したがって、 描画の更新を自動的に繰り返すことで、 画像の 複雑な動きが容易に生成される。
図 1 0は、 図 9のステップ S 2 2における描画情報関数取得処理のフローチ ヤートである。 描画情報発生部 # iが描画情報関数管理部 5 1に識別子 p f k を渡すと、 描画情報関数管理部 5 1は、 ループ aの処理を行う。 ループ aは、 描画情報関数 5 2の数に対応して、 K回繰り返される。
ループ aにおいて、 描画情報関数管理部 5 1は、 入力された p f kを 1つの 描画情報関数 5 2の識別子と比較する (ステップ S 3 1 ) 。 そして、 それらが 一致すれば、 p f kに対応する描画情報関数 5 2を出力して (ステップ S 3 2 ) 、 処理を終了する。 それらが一致しなければ、 p f kを次の描画情報関数 5 2の識別子と比較する処理を繰り返す。
次に、 図 1 1は、 図 3の構成を用いた場合の動画像合成処理を示している。 図 1 1の描画情報列管理部 3 1は、 1つ以上の描画情報列 3 2をリス卜構造で 格納しており、 これらの描画情報列 3 2は識別子により識別される。 各描画情 報列 3 2は、 離散的な時刻と描画座標の座標値の列を含んでいる。
描画部 1 2のポインタのリスト 6 1、 イベント変数 6 2、 更新間隔 6 3、 お よび画像管理部 1 1の画像データ 6 4、 最終描画座標 6 5、 描画座標 6 6につ いては、 図 6と同様である。 また、 各描画情報発生部 # i ( i = l,
2, . . . , N) は、 図 6の描画情報関数識別子の代わりに、 描画情報列識別 子 I D k ( k = 1 , 2 , . . . , K) を保持している。
識別子 I D kは、 描画情報列管理部 3 1の描画情報列 3 2と対応付けられて おり、 各描画情報発生部 2 3は、 任意の描画情報列 3 2を参照することができ る。 したがって、 1つの描画情報列 3 2は、 1つの画像管理部 1 1内の複数の 描画情報発生部 23から参照されることもあり、 複数の画像管理部 1 1内の描 画情報発生部 23から参照されることもある。
また、 描画情報発生部 # iは、 パラメ一夕の 1つとして、 差分計算フラグ b D i f f iを保持している。 描画情報発生部 # iは、 この bD i f f iの値が 真のとき、 入力された描画座標に差分を加えて出力し、 bD i f f iの値が偽 のとき、 入力された描画座標に関係なく、 絶対的な描画座標を出力する。
図 1 1の動画像合成装置における描画更新処理は、 基本的に図 7と同様であ る。 ただし、 図 7のステップ S 3において、 最上位の描画情報発生部 # 1は、 更新間隔 d tと描画座標 (x, y) を入力として、 図 12のような描画情報発 生処理を行い、 更新された描画座標 (X, y) を出力する。
描画情報発生部 # 1は、 まず、 更新間隔 d tにパラメ一夕 s p e e d 1を乗 算して、 d tを内部更新間隔 d t 1に変換し (ステップ S 41) 、 描画情報列 管理部 31から、 描画情報列識別子 I D 1に対応する描画情報列を取得する (ステップ S42) 。 この描画情報列取得処理については後述することにする。 そして、 その描画情報列から、 t— 1 a s t 1および t__l a s t 1 +d t 1の前後の時刻の座標値を取得し、 それらを用いた補間により、 t— 1 a s t l〜t— 1 a s t 1 +d t 1の間の座標変化の差分 (dx, d y) を計算する (ステップ S43) 。 この (dx, dy) は、 内部更新間隔 d t 1の間におけ る画像の移動量に対応する。
例えば、 図 13のような描画情報列が取得された場合、 差分 (dx, dy) は、 次のようにして求められる。 ただし、 t l<t 2<t 3< * · · <!:】で あり、 x l, X 2, X 3, . . . , X Jは互いに異なり、 y l, y 2, y
3, . . . , y Jは互いに異なるものとする。
まず、 t 1< t_ 1 a s t 1< t_ 1 a s t 1 +d t 1< t 2の場合、 差分 (dx, dy) は次式により計算される。 d x= (x 2 -x 1) *d t l/ (t 2- t l)
d y= (y 2 -y 1 ) * d t 1/ (t 2- t 1) (3) また、 t lく t— l a s t l<t 2< - · - <t j <t_l a s t 1 +d t 1< t ( j + 1 ) の場合、 差分 (dx, dy) は次式により計算される。 d x= (x 2 -x 1) * (t 2- t_l a s t l) / (t 2- t l)
+ x j - x 2
+ (χ ( j + 1 ) - x j ) * (t_l a s t l +d t l - t j ) / ( t ( j + 1 ) - t j )
d y= (y 2 -y 1) * (t 2- t_l a s t l) / (t 2- t l)
+ y j - y 2
+ (y ( j + 1 ) 一 y j ) * (t_l a s t 1 + d t 1 - t j ) / ( t ( j + 1 ) - t j )
(4) また、 t— 1 a s t 1< t J < t_ 1 a s t 1 +d t 1の場合、 差分 (dx: dy) は次式により計算される。 d x= (x J -x ( J - 1) ) * ( t J - t_ 1 a s t 1)
/ (t J - t ( J - 1) )
dy= (y J - y (J - 1) ) * ( t J - t __ 1 a s t 1 )
/ ( t J - t ( J一 1) ) (5) また、 t— 1 a s t l〉t Jの場合、 差分 (dx, dy) は次式により計算 される。 d x= 0
dy=0 (6) これらの計算式 (3) 、 (4) 、 (5) 、 (6) は直線補間の一例を示して いるが、 描画情報列のデータから差分 (dx, dy) を求める際に、 より複雑 な補間法を用いてもよい。
こうして差分 (dx, dy) が得られると、 次に、 dx、 dyに、 それぞれ、 パラメ一夕 X— s c a 1 e 1、 y_s c a 1 e 1を乗算し、 その結果を改めて dx、 dyとおく (ステップ S 44) 。 そして、 差分計算フラグ bD i f f 1 の値を判定する (ステップ S 45) 。
bD i f f 1の値が真であれば、 入力された描画座標 (X, y) に差分 (d X, dy) を加算して、 その結果を改めて (X, y) とおく (ステップ S 4 6) 。 また、 bD i f f 1の値が偽であれば、 差分 (dx, dy) をそのまま (X, y) とおく (ステップ S 47) 。 この場合、 入力された描画座標 (x, y) はキャンセルされ、 新たな描画座標 (X, y) が生成される。
次に、 t— l a s t l= t— l a s t l +d t lとおいて内部時刻を更新し (ステップ S 48) 、 下位の描画情報発生部 23が存在するかどうかを判定す る (ステップ S 49) 。 下位の描画情報発生部 23が存在しなければ、 描画座 標 (X, y) を 1回の更新処理の結果として出力する。
下位の描画情報発生部 23が存在すれば、 それを呼び出し、 更新間隔 d tと 得られた描画座標 (x, y) を入力として与えて、 同様の描画情報発生処理を 行わせる (ステップ S 50) 。 ここでは、 図 12の描画情報発生処理が再帰的 に呼び出されて、 描画情報発生部 # iの処理を実行する。
このとき、 描画情報発生部 # iは、 ステップ S 41で d t l=d t * s p e e d iの計算を行い、 ステップ S 42で識別子 I D kに対応する描画情報列を 7 取得し、 ステップ S 43で描画情報列から t— l a s t i〜!:— l a s t i + d t 1の間の座標変化の差分 (dx, dy) を計算する。
また、 ステップ S 44で x = x * X— s c a 1 e i、 y = y * y_s c a 1 e iの計算を行い、 ステップ S 45で差分計算フラグ bD i f f iの値を判定 し、 ステップ S 48で t_l a s t i = t— l a s t i +d t 1の計算を行い、 ステップ S 49でポインタ 1 p iが存在するかどうかを判定する。
そして、 ステップ S 49において下位の描画情報発生部 23が存在すれば、 それを呼び出す。 また、 下位の描画情報発生部 23が存在しなければ、 得られ た描画座標 (X, y) を呼び出し元の上位の描画情報発生部 23に出力して、 処理を終了する。
下位の描画情報発生部 23から描画座標を受け取つた上位の描画情報発生部 23は、 それを順に上位の描画情報発生部 23に伝えていき、 最上位の描画情 報発生部 # 1は、 受け取った描画座標を 1回の更新処理の結果として出力する。 このような描画情報発生処理により、 描画情報発生部 23は、 描画情報関数の 代わりに描画情報列を用いて描画情報を生成することができる。
図 14は、 図 12のステップ S 42における描画情報列取得処理のフローチ ャ一トである。 描画情報発生部 # iが描画情報列管理部 31に識別子 I D kを 渡すと、 描画情報列管理部 31は、 ループ aの処理を行う。 ループ aは、 描画 情報列 32の数に対応して、 K回繰り返される。
ループ aにおいて、 描画情報列管理部 31は、 入力された I Dkを 1つの描 画情報列 32の識別子と比較する (ステップ S 51) 。 そして、 それらが一致 すれば、 I D kに対応する描画情報列 32を出力して (ステツプ S 52 ) 、 処 理を終了する。 それらが一致しなければ、 I Dkを次の描画情報列 32の識別 子と比較する処理を繰り返す。
図 6および図 1 1の動画像合成装置によれば、 各描画情報発生部 23は、 上 位の描画情報発生部 23から渡された描画情報をキャンセルして、 新たに描画 情報を生成することができる。 したがって、 例えば、 あらかじめ決められた特 定の時刻に画像の動きを停止させることも可能である。
一般に、 各描画情報発生部 2 3が、 上位の描画情報発生部 2 3からの描画情 報を入力として絶対的な描画情報を生成する場合、 画像管理部 1 1から出力さ れる描画情報は、 描画情報発生部 2 3の動作順序に影響される。
例えば、 画像管理部 1 1が 2つの描画情報発生部 # 1、 # 2を含み、 描画情 報発生部 # 1が画面上での上下振動の描画情報を生成し、 描画情報発生部 # 2 が、 時刻 0〜 t 1の間は右に移動し、 時刻 t 1以降は停止するような描画情報 を生成する場合を考える。
この場合、 描画情報発生部 # 1、 描画情報発生部 # 2の順に動作すると、 最 終的に、 時刻 0〜 t 1の間は上下振動しながら右に移動し、 時刻 t 1以降はそ の場で停止するような描画情報が出力される。 また、 描画情報発生部 # 2、 描 画情報発生部 # 1の順に動作すると、 最終的に、 時刻 0〜 t 1の間は上下振動 しながら右に移動し、 時刻 t 1以降はその場で上下振動するような描画情報が 出力される。 したがって、 描画情報発生部 # 1、 # 2の動作順序によって、 合 成される動きが異なる。
次に、 図 1 5は、 図 5の構成において、 描画情報列 3 2の代わりに描画情報 関数 5 2を用いた場合の動画像合成処理を示している。 図 1 5において、 描画 部 1 2のポインタのリスト 6 1、 イベント変数 6 2、 更新間隔 6 3、 および画 像管理部 1 1の画像データ 6 4、 最終描画座標 6 5、 描画座標 6 6、 描画情報 発生部 4 1が保持する情報、 および描画情報関数管理部 5 1については、 図 6 と同様である。
各画像管理部 1 1は、 さらに差分座標 6 7を保持しており、 1つ以上の描画 情報発生部 4 1をリスト構造で保持している。
図 1 6は、 図 1 5の動画像合成装置における描画更新処理のフローチャート である。 1回の描画更新処理により、 画像管理部 # 1〜# Mの M個の画像デ一 夕 64が、 逐次、 描画情報発生部 # 1〜#Nにより生成された座標に描画され る。 ループ aは、 各画像管理部 1 1を呼び出す処理に対応し、 M回繰り返され る。 また、 ループ bは、 各描画情報発生部 41を呼び出す処理に対応し、 N回 繰り返される。
ループ aにおいて、 画像管理部 1 1は、 図 8に示したイベント処理を行い (ステップ S 61) 、 描画座標 (x, y) に前時刻の最終描画座標 (X— 1 a s t, y— 1 a s t) を設定して (ステップ S 62) 、 ループ bの処理を行う。 ループ bにおいて、 描画情報発生部 41を呼び出し、 更新間隔 d tの間にお ける座標変化の差分 (dx, dy) を計算する (ステップ S 63) 。 この描画 情報発生処理の詳細については後述することにする。 そして、 得られた差分 (dx, dy) を描画座標 (x, y) に加算し、 その結果を改めて描画座標 (X, y) とおく (ステップ S 64) 。
ループ bについては、 最上位の描画情報発生部 # 1から順に、 ポインタ l p iを迪りながら下位の描画情報発生部 # ( i + 1) を呼び出してもよく、 描画 情報発生部 # 1〜#Nを並列に動作させてもよい。
すべての描画情報発生部 41についてループ bの処理が終了すると、 次に、 画像管理部 1 1は、 得られた (X, y) を (X— 1 a s t , y_ 1 a s t ) に 設定し (ステップ S 65) 、 描画部 12は、 描画座標 (X, y) の位置に画像 デ一夕 64を描画する (ステップ S 66) 。
すべての画像管理部 1 1についてループ aの処理が終了すると、 描画部 12 は、 新たなイベント通知を受け取るために Ev e n tをクリアし (ステップ S 67) 、 処理を終了する。
図 17は、 図 16のステップ S 63における描画情報発生処理のフローチヤ ートである。 描画情報発生部 # iは、 更新間隔 d tを入力として処理を行い、 描画座標の差分 (dx, dy) を出力する。
描画情報発生部 # iは、 まず、 更新間隔 d tにパラメ一夕 s p e e d iを乗 算し、 d tを内部更新間隔 d t 1に変換する (ステップ S 71) 。 次に、 図 1 0の描画情報関数取得処理を行って、 描画情報関数管理部 51から、 描画情報 関数識別子 P f kに対応する描画情報関数 f k (t) を取得する (ステップ S 72) 。 ここで、 f k ( t) を、 f k (t) = (f kx (t) , f ky (t) ) (7) と書くことにすると、 描画情報発生部 # iは、 前時刻に計算された内部時刻 t _1 a s t 1と内部更新間隔 d t 1を用いて、 差分 (dx, dy) を次式によ り計算する (ステップ S 73) 。 d = f k X ( t― 1 a s t i + d t 1 ) - f k x ( t― 1 a s t i ) d y= f k y (t_l a s t i +d t l) 一 f ky ( t_ 1 a s t i )
(8)
( 8 ) 式は、 内部時刻 t— l a s t iと t_l a s t i +d t lの間におけ る関数 f kx (t) 、 f ky (t) の差分を表している。
次に、 得られた dx、 d yに、 それぞれ、 ゾ\°ラメ一夕 x_s c a 1 e i、 y — s c a 1 e iを乗算し、 その結果を改めて d x、 dyとおく (ステップ S 7 4) 。 そして、 t— 1 a s t i = t— 1 a s t i + d t 1とおいて内部時刻を 更新し (ステップ S 75) 、 差分 (dx, dy) を出力して、 処理を終了する。 各描画情報発生部 # iが出力した差分 (dx, dy) は、 図 16のステップ S 64において描画座標 (X, y) に加算され、 最終的にすべての描画情報発 生部 41が出力した差分 (dx, dy) の総和により、 描画座標 (x, y) が 更新される。
このような描画情報発生処理により、 描画の更新時に、 複数の描画情報発生 部 41が生成する描画情報をリアルタイムに合成して、 描画部 12に与えるこ とが可能になる。 したがって、 描画の更新を自動的に繰り返すことで、 画像の 複雑な動きが容易に生成される。
次に、 図 18は、 図 5の構成を用いた場合の動画像合成処理を示している。 図 18において、 描画部 12のポインタのリスト 61、 イベント変数 62、 更 新間隔 63、 および画像管理部 1 1の画像データ 64、 最終描画座標 65、 描 画座標 66、 差分座標 67については、 図 15と同様であり、 描画情報発生部 41が保持する情報および描画情報列管理部 31については、 図 1 1と同様で ある。 ただし、 描画情報発生部 41は、 差分計算フラグは保持していない。 図 18の動画像合成装置における描画更新処理は、 基本的に図 16と同様で ある。 ただし、 図 16のステップ S 63において、 描画情報発生部 41は、 更 新間隔 d tを入力として、 図 19のような描画情報発生処理を行い、 描画座標 の差分 (dx, dy) を出力する。
描画情報発生部 # iは、 まず、 更新間隔 d tにパラメータ s p e e d iを乗 算し、 d tを内部更新間隔 d t 1に変換し (ステップ S 81) 、 図 14の描画 情報列取得処理を行って、 描画情報列管理部 31から、 描画情報列識別子 I D kに対応する描画情報列を取得する (ステップ S 82) 。
次に、 その描画情報列から、 t— 1 a s t iおよび t— 1 a s t i +d t 1 の前後の時刻の座標値を取得し、 それらを用いた補間により、 t— 1 a s t i 〜 t_ l a s t i +d t 1の間の座標変化の差分 (d x, dy) を計算する (ステップ S 83) 。
次に、 得られた dx、 d yに、 それぞれ、 パラメ一夕 X— s c a 1 e i、 y — s c a 1 e iを乗算し、 その結果を改めて d x、 dyとおく (ステップ S 8 4) 。 そして、 t— 1 a s t i = t— 1 a s t i + d t 1とおいて内部時刻を 更新し (ステップ S 85) 、 差分 (dx, dy) を出力して、 処理を終了する。 このような描画情報発生処理により、 描画情報発生部 41は、 描画情報関数の 代わりに描画情報列を用いて描画情報を生成することができる。
以上説明した実施形態において、 画像管理部 1 1へのポインタ 61、 描画情 報発生部 23、 41、 描画情報関数 52、 および描画情報列 32はリスト構造 で保持されるものとしたが、 要素を追加 ·削除可能な構造であれば、 これらを 他の任意の形式で保持することができる。
次に、 図 20から図 23までを参照しながら、 動画像合成の具体例について 説明する。
図 20は、 時刻 t = 0における画面構成を示している。 ここでは、 画面の左 上を原点とする xy座標系が設定され、 3つの画像 I 1、 1 2、 I 3が時間の 経過とともに描画位置 (X, y) を変化させながら、 表示される。
図 21は、 これらの画像を管理する画像管理部 1 1による動画像合成処理を 示している。 ここでは、 図 5の構成の動画像合成装置を用い、 描画情報関数 5 2および描画情報列 32を併用している。
画像 I 1の画像管理部 1 1は、 画像データ 64、 最終描画座標 (x l, y 1) 、 および 2つの描画情報発生部 # 1、 #2を保持し、 画像 I 2の画像管理 部 1 1は、 画像デ一夕 64、 最終描画座標 (x 2, y 2) 、 および 1つの描画 情報発生部 41を保持し、 画像 I 3の画像管理部 1 1は、 画像データ 64、 最 終描画座標 (x 3, y 3) 、 および 1つの描画情報発生部 41を保持している。 画像 I 1の描画情報発生部 # 1は描画情報関数識別子 p f 1を保持し、 描画 情報発生部 # 2は描画情報関数識別子!) f 2を保持している。 また、 画像 I 2 の描画情報発生部 41は描画情報関数識別子 p f 2を保持し、 画像 I 3の描画 情報発生部 41は描画情報列識別子 I D 1を保持している。
各描画情報発生部 41は、 入力される更新間隔 d tと保持している最終更新 時刻 t— 1 a s t iを利用し、 指定された描画情報関数 52もしくは描画情報 列 32を用いて、 位置座標の差分 (dx, dy) を計算する。 ここでは、 各描 画情報関数 52は、 直接、 差分 (dx, dy) を与えており、 次のように定義 される。
•描画情報関数 P f 1 dx=0
d y = 100 * (s i n ( t_ 1 a s t + d t ) — s i n ( t_ 1 a s t) )
(9) この関数によれば、 x方向の差分 d xは 0であり、 y方向の差分 dyは、 時 刻 t— l a s tと t— l a s t +d tにおける s i n ( t ) の差分の 100倍 に相当する。 その結果、 この関数は、 振幅 100の上下振動を表す。
•描画情報関数 P f 2 d x= 10 * d t
dy=0 (10) この関数によれば、 x方向の差分 dxは、 更新間隔 d tの 10倍に相当し、 y方向の差分は 0である。 その結果、 この関数は、 X方向 (右方向) に単位時 間あたり 10だけ移動する直線移動を表す。
また、 描画情報列 32は、 一辺の長さが 100である正方形の 4つの頂点の 位置座標を含み、 描画情報列 32により指定される軌跡は、 左上頂点を始点と し、 正方形の各辺に沿って時計周りに移動することを表す。 この場合、 差分 (dx, dy) は、 指定された軌跡から直線補間により計算される。
各画像管理部 1 1は、 これらの描画情報関数 52もしくは描画情報列 32か ら計算された差分 (dx, dy) を用いて、 次のように位置座標 (x, y) を 計算する。 ,画像 I 1の画像管理部 1 1
描画情報発生部 # 1は、 描画情報関数 P f 1を用いて上下振動の差分を計算 し、 描画情報発生部 # 2は、 描画情報関数 p f 2を用いて右移動の差分を計算 する。 これらの 2つの差分の総和が 1回の更新における位置座標の変化量とな る。 その結果、 画像 I 1は、 正弦波の軌跡に沿って移動する。
•画像 I 2の画像管理部 1 1
描画情報発生部 4 1は、 描画情報関数 p f 2を用いて右移動の差分を計算し、 それが 1回の更新における位置座標の変化量となる。 その結果、 画像 I 2は、 右へ直線移動する。
·画像 I 3の画像管理部 1 1
描画情報発生部 4 1は、 描画情報列 I D 1を用いて正方形移動の差分を計算 し、 それが 1回の更新における位置座標の変化量となる。 その結果、 画像 I 3 は、 描画情報列 I D 1により指定された軌跡に沿って移動する。
このような動画像合成処理において、 あるイベントが時刻 t = 1で通知され、 イベント処理が行われた場合を考える。 この場合、 時刻 t = 0では、 各画像は、 図 2 0に示したように、 その初期位置に表示される。 また、 時刻 t = 0から時 刻 t = lまでの間は、 図 2 2に示すように、 各画像は、 それぞれの描画情報発 生部 4 1が生成する差分を位置座標に加えながら移動していく。 したがって、 画像 I 1は正弦波の軌跡に沿って移動し、 画像 I 2は右へ直線移動し、 画像 I 3は正方形の軌跡に沿って移動する。
次に、 時刻 t == 1でイベントが通知され、 画像 I 1の画像管理部 1 1から描 画情報発生部 # 1を削除するように要求されたとする。 ここで、 画像 I 1の画 像管理部 1 1は、 イベント処理を行って、 描画情報発生部 # 1を削除する。 し たがって、 これ以降、 上下振動の差分は生成されず、 描画情報発生部 # 2のみ が差分を生成する。
次に、 時刻 t = 1から時刻 t = 2までの間も、 図 2 3に示すように、 各画像 は、 それぞれの描画情報発生部 4 1が生成する差分を位置座標に加えながら移 動していく。 このとき、 画像 I 1は上下振動を停止し、 時刻 t = lのときの y 座標の値を保ったまま、 右へ直線移動する。 また、 画像 I 2は右へ直線移動し、 画像 I 3は正方形の軌跡に沿って移動する。
時刻 t = 1のィベント通知の内容が、 画像 I 1の画像管理部 1 1に新たな描 画情報発生部 # 3を追加する要求であった場合は、 画像管理部 1 1は描画情報 発生部 # 3を追加する。 これ以降、 3つの描画情報発生部 # 1、 # 2、 # 3が 生成する差分が加算されて、 画像 I 1の位置座標が決定される。
ところで、 図 6、 1 1、 1 5、 および 1 8の動画像合成装置は、 図 2 4に示 すような情報処理装置 (コンピュータ) を用いて構成することができる。 図 2 4の情報処理装置は、 C P U (中央処理装置) 7 1、 メモリ 7 2、 入力装置 7 3、 出力装置 7 4、 外部記憶装置 7 5、 媒体駆動装置 7 6、 およびネットヮー ク接続装置 7 7を備え、 それらはバス 7 8により互いに接続されている。
メモリ 7 2は、 例えば、 R OM (read only memory) 、 R AM (random acc ess memory) 等を含み、 処理に用いられるプログラムとデータを格納する。 C P U 7 1は、 メモリ 7 2を利用してプログラムを実行することにより、 必要な 処理を行う。
ここでは、 画像管理部 1 1、 描画部 1 2、 描画情報関数管理部 5 1、 描画情 報列管理部 3 1、 描画情報発生部 2 3、 4 1等がプログラムにより記述された ソフトウェアコンポーネントに対応し、 それぞれ、 メモリ 7 2内の特定のプロ グラムコードセグメントに格納される。 また、 ポインタのリスト 6 1、 ィベン ト変数 6 2、 更新間隔 6 3、 画像データ 6 4、 最終描画座標 6 5、 描画座標 6 6等もメモリ 7 2内に格納される。
入力装置 7 3は、 例えば、 キーボード、 ポインティングデバイス、 タツチパ ネル等であり、 ュ一ザからの指示や情報の入力に用いられる。 入力装置 7 3へ の操作入力がイベントとして描画部 1 2に通知される場合もある。 出力装置 7 4は、 例えば、 図 5の V R AM 1 3およびディスプレイ 1 4を含み、 ユーザへ の問い合わせおよび合成された動画像の出力に用いられる。
外部記憶装置 7 5は、 例えば、 磁気ディスク装置、 光ディスク装置、 光磁気 ディスク (magneto-opt i cal di sk) 装置等である。 この外部記憶装置 7 5に、 上述のプログラムとデ一夕を保存しておき、 必要に応じて、 それらをメモリ 7 2にロードして使用することもできる。 また、 外部記憶装置 7 5は、 画像デー 夕 6 4、 描画情報関数 5 2、 描画情報列 3 2等を蓄積するデータベースとして も用いることができる。
媒体駆動装置 7 6は、 可搬記録媒体 7 9を駆動し、 その記録内容にアクセス する。 可搬記録媒体 7 9としては、 メモリカード、 フロッピ一ディスク、 C D — R OM ompac t di sk read only memory ) 、 光アイスク、 光磁 アイスク 等、 任意のコンピュータ読み取り可能な記録媒体が用いられる。 この可搬記録 媒体 7 9に上述のプログラムとデータを格納しておき、 必要に応じて、 それら をメモリ 7 2にロードして使用することもできる。
ネットワーク接続装置 7 7は、 L AN (l ocal area network) 等の任意のネ ットワーク (回線) を介して外部の装置と通信し、 通信に伴うデータ変換を行 う。 また、 必要に応じて、 上述のプログラムとデータを外部の装置から受け取 り、 それらをメモリ 7 2にロードして使用することもできる。
図 2 5は、 図 2 4の情報処理装置にプログラムとデータを供給することので きるコンピュータ読み取り可能な記録媒体を示している。 可搬記録媒体 7 9や 外部のデ一夕べ一ス 8 0に保存されたプログラムとデータは、 メモリ 7 2に口 ードされる。 そして、 C P U 7 1は、 そのデータを用いてそのプログラムを実 行し、 必要な処理を行う。
以上説明した実施形態では、 主として、 画像管理部 1 1をソフトウェアによ り実現する構成について説明したが、 画像管理部 1 1をハードウェアにより実 現することも可能である。 図 26は、 複数の画像管理部 1 1を 1つのハードウェア回路により構成した 例を示している。 図 26の画像管理部は、 複数のメモリ 81 (# 1〜#M) 、 メモリ 81を選択するセレクタ 82、 83、 複数の描画情報発生回路 84 (# 1〜#N) 、 描画情報発生回路 84を選択するセレクタ 85、 86、 および制 御回路 87を備える。
制御回路 87は、 制御信号 C 1によりセレクタ 82、 83を切り替え、 制御 信号 C 2によりセレクタ 85、 86を切り替え、 制御信号 C 3により描画情報 発生回路 84を制御する。 ここでは、 簡単のために、 描画情報として描画座標 (x, y) のみを取り扱うものとする。
メモリ # 1〜#Mは、 それぞれ、 上述した画像管理部 # 1〜#Mに対応し、 ある時刻 tにおいて前時刻の描画情報を記憶している。 また、 描画情報発生回 路 # 1〜#Nは、 それぞれ、 上述した描画情報発生部 # 1〜#Nに対応し、 1 つの動きの要素に対応する演算を行い、 描画情報を出力する。 時刻し 更新間 隔 d t、 前時刻の描画座標 (X, y) を入力とすると、 出力される描画座標 (χ' , y' ) は、 次のように表される。
X ' = f X t, d t , χ, y;
y ' = f y ( t , d t , x, y) (1 1) ここで、 d tは前時刻と現時刻 tの差に相当し、 f x (t, d t, x, y) 、 f y (t, d t, x, y) は、 画像の動きを生成する関数に相当する。 例えば、 s i n (t) を用いて上下振動する動きを生成する場合は、 次式のようになる。 f ( t, d t , x, y ) = x
f y (t, d t , x, y) =y + s i n ( t ) - s i n ( t - d t )
(12) これらの関数は、 過去の描画座標の履歴を出力することもできる。 例えば、 時刻 t 1の入力座標値 (X— t 1, y _ t 1 ) を記憶しておき、 時刻 t 1以降、 ( x _ t 1 , y _ t 1 ) を出力し続けるような関数を定義してもよい。
複数の画像に対して同じ描画情報発生回路 8 4を使用する場合、 このような 描画座標のデータを画像毎に描画情報発生回路 8 4内のレジスタに格納してお き、 制御回路 8 7からの制御信号 C 3によりレジス夕を切り替えて、 適切なデ —夕を出力する。
時刻 tにおいて描画更新処理が開始されると、 まず、 制御回路 8 7からの制 御信号 C 1により、 セレクタ 8 2、 8 3が切り替えられ、 メモリ # 1が選択さ れる。 次に、 制御信号 C 2により、 セレクタ 8 5、 8 6が切り替えられ、 描画 情報発生回路 # 1が選択される。 同時に、 必要に応じて、 制御信号 C 3により、 描画情報発生回路 # 1内のレジスタが切り替えられ、 適切なデータが選択され る。 こうして、 メモリ # 1の描画座標が描画情報発生回路 # 1に入力され、 描 画情報発生回路 # 1からの出力はメモリ # 1に記憶される。
次に、 セレクタ 8 5、 8 6が切り替えられ、 描画情報発生回路 # 2が選択さ れて、 メモリ # 1から描画情報が入力される。 そして、 描画情報発生回路 # 1 の場合と同様にして描画座標が生成され、 メモリ # 1に記憶される。 このよう な動作が、 画像管理部 # 1に割り当てられたすべての描画情報発生回路 8 4に ついて繰り返された後、 最後の描画情報発生回路 8 4の出力は、 画像管理部 # 1の現時刻の描画情報として出力される。 このとき同時に、 その描画情報はメ モリ # 1にも記憶される。
こうして、 画像管理部 # 1としての動作が終了すると、 次に、 セレクタ 8 2、 8 3が切り替えられ、 メモリ # 1が選択されて、 画像管理部 # 2としての動作 が同様に行われる。 このような動作が M個の画像管理部について繰り返される と、 時刻 tにおける描画更新処理が完了する。 例えば、 メモリ # 1に対応する画像管理部 # 1が、 正弦波の軌跡に沿って右 方向に移動する動きを生成し、 メモリ # 2に対応する画像管理部 # 2力 正弦 波の軌跡に沿って左方向に移動する動きを生成する場合を考える。 描画情報発 生回路 # 1、 # 2、 # 3は、 それぞれ、 次のような動きを生成するものとする。 描画情報発生回路 # 1 : s i n ( t ) の上下振動
描画情報発生回路 # 2 :右方向への直線移動
描画情報発生回路 # 3 :左方向への直線移動
この場合、 図 2 6の回路は、 まず、 セレクタ 8 2、 8 3によりメモリ # 1を 選択し、 セレクタ 8 5、 8 6により描画情報発生回路 # 1を選択する。 これに より、 メモリ # 1の描画座標に s i n ( t ) の上下振動が付加される。 次に、 セレクタ 8 5、 8 6により描画情報発生回路 # 2を選択する。 これにより、 メ モリ # 1の描画座標に右移動が付加され、 その結果、 正弦波の軌跡に沿って右 方向に移動する場合の描画座標が出力される。
次に、 セレクタ 8 2、 8 3によりメモリ # 2を選択し、 セレクタ 8 5、 8 6 により描画情報発生回路 # 1を選択する。 これにより、 メモリ # 2の描画座標 に s i n ( t ) の上下振動が付加される。 次に、 セレクタ 8 5、 8 6により描 画情報発生回路 # 3を選択する。 これにより、 メモリ # 2の描画座標に左移動 が付加され、 その結果、 正弦波の軌跡に沿って左方向に移動する場合の描画座 標が出力される。
このように、 セレクタを用いてメモリ 8 1および描画情報発生回路 8 4を切 り替えることにより、 複数の描画情報発生回路 8 4の出力を合成して 1つの画 像の動きを生成することができる。 また、 1つの描画情報発生回路 8 4を、 複 数の画像の動きを生成するために利用することもできる。
以上説明したように、 本発明は、 ソフトウェア、 ハードウェアを問わず、 時 間の経過とともに、 もしくはイベントに応じて動画像が動くような任意の分野 で利用可能である。 ソフトウェアにおけるアプリケーションとしては、 例えば、 次のようなものが挙げられる。
( 1 ) 動画像作成ソフトウェア
( 2 ) ホームページ作成ソフトウェアおよび閲覧ソフトウエア
( 3 ) C D— R OMコンテンツ作成ソフトウエアおよび再生ソフトウェア ( 4 ) プレゼンテーション作成ソフトウェアおよび再生ソフトウェア
( 5 ) ゲーム作成ソフトウエアおよびプレイソフトウェア
例えば、 ホームページ作成等に利用される従来のマルチメディアタイトル制 作 ·再生システムでは、 1つの画像部品には 1つの動きしか与えることができ ない。 したがって、 右へ移動しながら上下振動するというような動きを与えた い場合は、 あらかじめ 2つの動きが合成された結果を想定し、 作成しておく必 要がある。
これに対して、 本発明のシステムによれば、 再生時に、 右への移動と上下振 動を別々に生成し、 それらを 1つの画像部品に関連付けることで、 右へ移動し ながら上下振動するという動きを合成することができる。 このシステムを利用 すれば、 ユーザのインタラクションや時刻等に応じて、 動的に動きを追加した り削除したりすることが可能になる。
このシステムでは、 再生時に右への移動と上下振動が別々に管理されている ため、 右へ移動している画像をクリックすると、 右へ移動しながら上下振動を 開始し、 もう一度クリックすると上下振動を停止するという動きを容易に生成 することができる。 この場合、 まず、 右への移動を基本的な動きとして画像部 品に関連付けておき、 クリックイベントによって上下振動を追加 Z削除するよ うに構成すればよい。
従来のシステムでは、 右への移動と、 右へ移動しながら上下振動するという 動きとを別々に作成しておき、 クリックにより切り替えることになる。 しかし、 これらの 2つの動きの連続性に注意して作成しなければ、 切り替え時に動きが 不連続になる可能性がある。 また、 本発明のシステムを利用すれば、 マルチメディアタイトルの制作者が それぞれの動きを部品として扱うことができる。 完成したマルチメディアタイ トルには、 各種の動きの要素が分解された状態で記録されているため、 他の制 作者が作成したマルチメディアタイトルから気に入った動きの要素を取り出し て、 動きの部品として使用することができる。
例えば、 あるリズムを刻んで上下振動しながらあるパスに沿って移動する画 像を含むマルチメディアタイトルは、 リズムを刻んだ上下振動とパスに沿った 移動の 2つの動きの部品を含むと考えられる。 この場合、 リズムを刻んだ上下 振動だけを取り出して利用することにより、 他のマルチメディァ夕ィトルにお いてもそのリズムを刻んだ上下振動を実現できる。 従来のシステムでは、 制作 時にあらかじめ動きが合成されているため、 リズムを刻んだ上下振動だけを取 り出すことは非常に困難である。
以上説明した実施形態において、 描画情報関数としては、 正弦波の上下振動 や左右の直線移動が用いられているが、 他の任意の関数も同様に利用可能であ る。 例えば、 余弦波の振動、 直線 y = a x + bに沿った移動、 放物線に沿った 移動、 円や楕円に沿った移動等も関数として定義することができる。 また、 描 画情報列としては、 正方形の軌跡に限らず、 放物線、 円、 楕円等の任意の軌跡 を設定することができる。
さらに、 描画情報発生部が生成する描画情報は、 画像の描画位置のみに限ら れず、 画像の拡大 縮小率、 回転角度、 色、 前後関係等を指定する情報であつ てもよい。 これらの情報を動的に組み合わせることにより、 より多彩な動画像 を表示することが可能になる。 産業上の利用可能性
本発明によれば、 複数の動画像を画面上に表示する際に、 複数の動きの要素 を組み合わせて、 容易に複雑な動きを生成することができる。 例えば、 ィベン 卜に応じてリアル夕ィムに動きを追加 Z削除したり、 動きを停止したりする とができ、 1つの動きの要素を複数の画像に適用することもできる。

Claims

請求の範囲
1 . 1つ以上の画像を合成して表示する動画像合成装置であって、
動画像の描画に用いられる描画情報を生成する複数の描画情報発生手段 ( 1, 2 3 , 4 1, 8 4 ) と、
各画像の画像データを管理し、 前記複数の描画情報発生手段のうち 1つ以上 が生成する描画情報を組み合わせて、 各画像の現時刻における描画情報を生成 する画像管理手段 (2 , 1 1 ) と、
前記画像管理手段から前記画像デー夕と現時刻における描画情報を受け取り、 該現時刻における描画情報に基づいて該画像データを描画する描画手段 (3, 1 2 , 1 3, 1 4 ) と
を備えることを特徴とする動画像合成装置。
2 . 前記描画情報発生手段は、 絶対的な描画情報を生成することを特徴とす る請求項 1記載の動画像合成装置。
3 . 前記描画情報発生手段は、 前時刻と現時刻の描画情報の差分を生成する ことを特徴とする請求項 1記載の動画像合成装置。
4. 1つ以上の描画情報関数を格納する描画情報関数管理手段 (5 1 ) をさ らに備え、 前記複数の描画情報発生手段のうち少なくとも 1つは、 描画情報関 数を参照する識別情報を保持し、 該識別情報に対応する描画情報関数を用いて 前記描画情報を計算することを特徴とする請求項 1記載の動画像合成装置。
5 . 離散的な描画情報を含む 1つ以上の描画情報列を格納する描画情報列管 理手段 (3 1 ) をさらに備え、 前記複数の描画情報発生手段のうち少なくとも 1つは、 描画情報列を参照する識別情報を保持し、 該識別情報に対応する描画 情報列を用いて前記描画情報を計算することを特徴とする請求項 1記載の動画 像合成装置。
6 . 前記少なくとも 1つの描画情報発生手段は、 前記描画情報列に含まれる 離散的な描画情報を用いて補間を行うことで、 前記描画情報を計算することを 特徴とする請求項 5記載の動画像合成装置。
7. 前記描画情報発生手段は、 描画情報を変更するためのパラメ夕を保持し、 該パラメ夕を用いて前記描画情報を計算することを特徴とする請求項 1記載の 動画像合成装置。
8. 前記描画情報発生手段は、 画面上での画像の描画位置に関する情報を前 記描画情報として生成することを特徴とする請求項 1記載の動画像合成装置。
9. 1つ以上の画像を合成して表示する動画像合成装置であって、
互いに順序付けられ、 動画像の描画に用いられる描画情報を生成する複数の 描画情報発生手段 (1, 23, 41, 84) であって、 最初の描画情報発生手 段は前時刻における描画情報を更新して次の描画情報発生手段に渡し、 中間の 各描画情報発生手段は前の描画情報発生手段から与えられた描画情報を更新し て次の描画情報発生手段に渡し、 最後の描画情報発生手段は前の描画情報発生 手段から与えられた描画情報を更新して現時刻における描画情報を生成するよ うな該複数の描画情報発生手段を含み、 各画像毎に設けられた画像管理手段 (2, 1 1) と、
前記画像管理手段から前記現時刻における描画情報を受け取り、 該現時刻に おける描画情報に基づいて対応する画像を描画する描画手段 (3, 12, 13, 14) と
を備えることを特徴とする動画像合成装置。
10. 各描画情報発生手段は、 前時刻と現時刻の描画情報の差分を生成し、 入力された描画情報に該差分を加えて該入力された描画情報を更新することを 特徴とする請求項 9記載の動画像合成装置。
11. 1つ以上の画像を合成して表示する動画像合成装置であって、
動画像の描画に用いられる描画情報の前時刻と現時刻の差分を生成する複数 の描画情報発生手段 (1, 41) と、 該複数の描画情報発生手段が生成する差 分の総和を用いて現時刻における描画情報を生成する手段 (22, 42, 4 3) とを含み、 各画像毎に設けられた画像管理手段 (2, 1 1) と、
前記画像管理手段から前記現時刻における描画情報を受け取り、 該現時刻に おける描画情報に基づいて対応する画像を描画する描画手段 (3, 12, 13, 14) と
を備えることを特徴とする動画像合成装置。
12. 1つ以上の画像を合成して表示する動画像合成装置であって、
画面上での動画像の動きを生成する動きの要素に対応して、 描画位置に関す る情報を生成する複数の描画情報発生手段 (1, 23, 41, 84) と、 各画像の画像データを管理し、 前記複数の描画情報発生手段のうち 1つ以上 が生成する情報を組み合わせて、 各画像の現時刻における描画位置に関する情 報を生成する画像管理手段 (2, 1 1) と、
前記画像管理手段から前記画像データと現時刻における描画位置に関する情 報を受け取り、 該現時刻における描画位置に関する情報に基づいて該画像デ一 夕を描画する描画手段 (3, 12, 13, 14) と
を備えることを特徴とする動画像合成装置。
13. 1つ以上の画像を合成して表示するコンピュータのためのプログラム を記録した記録媒体 (72, 75, 79, 80) であって、
各画像毎に、 描画に用いられる複数の描画情報を生成するステップと、 前記複数の描画情報を組み合わせて、 各画像の現時刻における描画情報を生 成するステップと、
前記現時刻における描画情報に基づいて各画像を描画するステップと を含む処理を前記コンピュータに実行させるためのプログラムを記録したコ ンピュー夕読み取り可能な記録媒体。
14. 1つ以上の画像を合成して表示するコンピュータのためのプログラム を記録した記録媒体 (72, 75, 79, 80) であって、 各画像毎に、 前時刻において描画に用いられた描画情報を、 互いに順序付け られた複数の描画情報発生処理により更新して、 現時刻における描画情報を生 成するステップと、
前記現時刻における描画情報に基づいて各画像を描画するステップと を含む処理を前記コンピュータに実行させるためのプログラムを記録したコ ンピュー夕読み取り可能な記録媒体。
1 5 . 1つ以上の画像を合成して表示するコンピュータのためのプログラム を記録した記録媒体 (7 2, 7 5, 7 9 , 8 0 ) であって、
各画像毎に、 描画に用いられる複数の描画情報の前時刻と現時刻の差分を生 成するステップと、
前記複数の描画情報の差分の総和を用いて、 各画像の現時刻における描画情 報を生成するステップと、
前記現時刻における描画情報に基づいて各画像を描画するステップと を含む処理を前記コンピュータに実行させるためのプログラムを記録したコン ピュー夕読み取り可能な記録媒体。
1 6 . 1つ以上の画像を合成して表示する動画像合成方法であって、 各画像毎に、 描画に用いられる複数の描画情報を生成し、
前記複数の描画情報を組み合わせて、 各画像の現時刻における描画情報を生 成し、
前記現時刻における描画情報に基づいて各画像を描画する
ことを特徴とする動画像合成方法。
PCT/JP1999/001153 1998-07-10 1999-03-10 Dispositif et procede de synthese d'images animees WO2000003358A1 (fr)

Priority Applications (5)

Application Number Priority Date Filing Date Title
DE69921843T DE69921843T2 (de) 1998-07-10 1999-03-10 Bewegungsbilderzeugungsgerät und-verfahren
EP99947068A EP1120748B1 (en) 1998-07-10 1999-03-10 Motion picture synthesizing device and method
US09/675,049 US7031018B1 (en) 1998-07-10 2000-09-29 Dynamic image composition apparatus and method
US11/347,394 US7542165B2 (en) 1998-07-10 2006-02-06 Dynamic image composition apparatus and method
US11/980,666 US20080068623A1 (en) 1998-07-10 2007-10-31 Dynamic image composition apparatus and method

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP19560498A JP3348833B2 (ja) 1998-07-10 1998-07-10 動画像合成装置
JP10/195604 1998-07-10

Related Child Applications (1)

Application Number Title Priority Date Filing Date
US09/675,049 Continuation US7031018B1 (en) 1998-07-10 2000-09-29 Dynamic image composition apparatus and method

Publications (1)

Publication Number Publication Date
WO2000003358A1 true WO2000003358A1 (fr) 2000-01-20

Family

ID=16343931

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP1999/001153 WO2000003358A1 (fr) 1998-07-10 1999-03-10 Dispositif et procede de synthese d'images animees

Country Status (5)

Country Link
US (3) US7031018B1 (ja)
EP (2) EP1120748B1 (ja)
JP (1) JP3348833B2 (ja)
DE (1) DE69921843T2 (ja)
WO (1) WO2000003358A1 (ja)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8264489B2 (en) * 2003-07-11 2012-09-11 Intel Corporation Interface remoting
US8249391B2 (en) * 2007-08-24 2012-08-21 Ancestry.com Operations, Inc. User interface method for skew correction
US8370759B2 (en) 2008-09-29 2013-02-05 Ancestry.com Operations Inc Visualizing, creating and editing blending modes methods and systems
KR101108480B1 (ko) * 2010-02-24 2012-01-31 (주)투비소프트 객체 지향적 컴포넌트 애니메이션 방법 및 이를 위한 기록매체

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS63143676A (ja) * 1986-12-05 1988-06-15 Fujitsu Ltd アニメーション作成処理装置

Family Cites Families (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2949594B2 (ja) 1990-03-28 1999-09-13 株式会社日立製作所 動画表示装置
AU657510B2 (en) * 1991-05-24 1995-03-16 Apple Inc. Improved image encoding/decoding method and apparatus
JP2861619B2 (ja) 1991-07-12 1999-02-24 松下電器産業株式会社 情報提示装置及び提示情報作成装置
DE69225034T2 (de) * 1991-08-13 1998-08-13 Canon Kk Einrichtung zur Bildübertragung
JPH07325934A (ja) * 1992-07-10 1995-12-12 Walt Disney Co:The 仮想世界に向上したグラフィックスを提供する方法および装置
JP3186242B2 (ja) 1992-09-10 2001-07-11 富士通株式会社 図形編集装置
JPH06167252A (ja) 1992-11-30 1994-06-14 Suzuki Motor Corp 排気再循環装置
JP2938739B2 (ja) * 1993-02-26 1999-08-25 富士通株式会社 動画像処理装置
US6262732B1 (en) * 1993-10-25 2001-07-17 Scansoft, Inc. Method and apparatus for managing and navigating within stacks of document pages
JP3279041B2 (ja) 1994-03-01 2002-04-30 松下電器産業株式会社 アニメーション作成装置
JPH08205066A (ja) * 1995-01-26 1996-08-09 Canon Inc 画像形成装置及びシステム
JPH09167252A (ja) 1995-12-19 1997-06-24 Nippon Telegr & Teleph Corp <Ntt> 動作入力による動画像生成処理方法
US6147695A (en) * 1996-03-22 2000-11-14 Silicon Graphics, Inc. System and method for combining multiple video streams
US6167562A (en) * 1996-05-08 2000-12-26 Kaneko Co., Ltd. Apparatus for creating an animation program and method for creating the same
JPH1040357A (ja) 1996-07-24 1998-02-13 Nippon Telegr & Teleph Corp <Ntt> 映像作成方法
JPH1040411A (ja) 1996-07-24 1998-02-13 Nippon Telegr & Teleph Corp <Ntt> 動画像生成方法および装置
JPH1091795A (ja) * 1996-09-12 1998-04-10 Toshiba Corp 移動物体検出装置及び移動物体検出方法
JPH10198539A (ja) * 1997-01-08 1998-07-31 Fuji Xerox Co Ltd 画像形成装置および画像形成方法
US6014163A (en) * 1997-06-09 2000-01-11 Evans & Sutherland Computer Corporation Multi-camera virtual set system employing still store frame buffers for each camera
JP2002133444A (ja) * 2000-10-20 2002-05-10 Matsushita Electric Ind Co Ltd 映像情報作成装置

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS63143676A (ja) * 1986-12-05 1988-06-15 Fujitsu Ltd アニメーション作成処理装置

Also Published As

Publication number Publication date
JP2000030079A (ja) 2000-01-28
DE69921843T2 (de) 2005-06-16
EP1343118A3 (en) 2005-05-18
US20080068623A1 (en) 2008-03-20
EP1120748A4 (en) 2001-08-08
EP1120748A1 (en) 2001-08-01
US7031018B1 (en) 2006-04-18
EP1120748B1 (en) 2004-11-10
DE69921843D1 (de) 2004-12-16
US7542165B2 (en) 2009-06-02
JP3348833B2 (ja) 2002-11-20
EP1343118A2 (en) 2003-09-10
US20060187508A1 (en) 2006-08-24

Similar Documents

Publication Publication Date Title
US9811237B2 (en) Visual navigation of virtual environments through logical processes
US8823709B2 (en) User interface framework for viewing large scale graphs on the web
JP3037383B2 (ja) 画像処理システム及びその方法
JP3148133B2 (ja) 情報検索装置
JP2004102497A (ja) Guiアプリケーション開発支援装置、gui表示装置、および方法、並びにコンピュータ・プログラム
MXPA04006333A (es) Sistema que soporta la animacion de elementos de despliegue graficos a traves de instancias de objetos de animacion.
US7542165B2 (en) Dynamic image composition apparatus and method
JP2000250942A (ja) 図書情報検索空間構築・検索装置および図書情報検索空間構築・検索プログラムを記録したコンピュータ読み取り可能な記録媒体
US7995065B2 (en) Animation reproducing apparatus and method
JP4719987B2 (ja) 画面表示制御方法、プログラムおよび画面表示制御装置
CN113096686B (zh) 音频处理方法、装置、电子设备及存储介质
JP2859214B2 (ja) 簡易化機能選択メニュー方式
JP2003099795A (ja) 動画像合成装置および方法
Sokolov et al. High level methods for scene exploration
JPH10312469A (ja) アニメーション作成システム
Beyls et al. eargram actors: An interactive audiovisual system based on social behavior
JPH05108776A (ja) 画像表示方式
JPH0736437A (ja) 画像データ処理装置
JP2005223744A (ja) 動画マニュアル
JP2008146509A (ja) 関連コンテンツ選出装置、関連コンテンツ選出方法及びプログラム
KR100602953B1 (ko) 페이지 네비게이션 시스템
CN115861491A (zh) 舞蹈动画的生成方法、电子设备、存储介质和程序产品
JP2008146510A (ja) コンテンツ案内装置、コンテンツ案内方法及びプログラム
JPH10187849A (ja) データ列処理装置
Beyls et al. The Emergence of Complex Behavior as an Organizational Paradigm for Concatenative Sound Synthesis

Legal Events

Date Code Title Description
AK Designated states

Kind code of ref document: A1

Designated state(s): GB US

AL Designated countries for regional patents

Kind code of ref document: A1

Designated state(s): DE GB

DFPE Request for preliminary examination filed prior to expiration of 19th month from priority date (pct application filed before 20040101)
121 Ep: the epo has been informed by wipo that ep was designated in this application
WWE Wipo information: entry into national phase

Ref document number: 09675049

Country of ref document: US

WWE Wipo information: entry into national phase

Ref document number: 1999947068

Country of ref document: EP

WWP Wipo information: published in national office

Ref document number: 1999947068

Country of ref document: EP

WWG Wipo information: grant in national office

Ref document number: 1999947068

Country of ref document: EP