CG Animation for Piano Performance Noriko NAGATA, Nozomi KUGIMOTO, Rui MIYAZONO, Kosuke OMORI, Takeshi FUJIMURA, Shinichi FURUYA, Haruhiro KATAYOSE and Hiroyoshi MIWA Kwansei Gakuin University, [email protected] Abstract It is desirable in the field of animation and music education to develop a technique for piano performance animation using Computer Graphics. However, previous techniques for computer animation of piano performance have been mechanical and tended to lack the reality of fingering motions. This study is to develop techniques to reproduce the piano playing with fine motion by using detailed and natural-looking-computer graphics. In this paper, three studies have been described; (i) measurement of piano fingering using motion capture technology, (ii) generation of a CG animation of fingering using offline/real-time rendering, and (iii) automatic generation of fingering using optimized algorithms. Finally examples in which the fingering data created in (i) is used in TV animation “Nodame Cantabile”, a Japanese comic book, has been introduced.

1

2

Introduction

Technologies recreating piano performance in the

Measurement of Piano Using Motion Capture

Fingering

2.1. Advantages of using motion capture

form of CG animation are eagerly anticipated by

technology

people working in various fields, such as content production, music education, etc [1,2]. Nonetheless,

During a piano performance, each finger does not

much of the past research has dealt with the

move

mechanical finger movements in piano practice

movement is linked to those of other fingers.

support systems and performance support GUIs,

Working out these movements from calculations

etc. and there has been little research recreating the

requires an extremely complex model. By using

reality of finger movements.

motion capture technology, we can obtain the

individually,

but

rather

each

finger

natural movements of an actual performance

We are promoting research into the analysis

without doing complex calculations.

and CG expression of realistic and natural piano fingering [3]. This paper describes the following

2.2. Capturing the 3-dimensional location data

aspects of this research program: (i) measurement

of the fingers

of piano fingering using motion capture technology,

First, we obtain the finger movements during a

(ii) generation of a CG animation of fingering using

offline/real-time

rendering,

and

piano

(iii)

performance

using

motion

capture

technology (Figure 1). We attach optical markers

automatic generation of fingering using optimized

to the joints of the fingers (Figure 2) and measure

algorithms. And finally we will introduce examples

the 3-dimensional location coordinates, which are

in which the fingering data created in (i) is used in

the motion capture data. When the fingers overlap

TV animation.

or the hands cross during a piano performance, it

1

becomes easy for the markers to fall off or for the movements to be incorrectly read. In such cases, we correct the data by interpolating the 3-dimensional coordinates from the speed data just before the failure and the position of the marker relative to the other markers.

3

Generation of Piano CG Animation

3.1 Application of motion capture data to the

Fig. 1: Acquisition of fingering data using motion capture technology.

CG model of the hand We apply the obtained motion capture data to the CG model of the hand [4]. This time we use a model with 16 joints and bones (the line segments that connect the joints) distributed as in Figure 3. In order to apply the marker data of the motion capture to the model of the hand, we can convert it to the central position of the joints and the rotational data by making the 3-dimensional position data correspond to two marker data points with respect to the joints of

Fig. 2: Attachment locations of the markers.

Motion capture data

MIDI Data of piano performance

Fig. 3: Model of the joints the bones. of the hand.

CG Animation of hands

Motion of pressing the keyboard

Fig. 4: Process of making CG animation of piano performance, and an example scene.

2

3.2

Generation

of

an

animation

of

draw the movements smoothly without changing

the

the frame rate.

movements of the keyboard

Here,

The motion of the piano keyboard is created from

we

achieved

the

synchronous

performed music data. By linking the notes and

processing of music performance interface iFP[5].

numbers of the MIDI to the movements of the each

First of all, as pre-processing, we prepared a table

key prior to the motion capture photography we

mapping the musical score to the timing of the

are able to generate keyboard movements that

actual performance, which was obtained in

correspond to the MIDI data.

advance with the motion capture. We estimate the tempo from the beat data that was input on line

3.3. Combining the movements of the hands and

from an external source, decided the motion

keyboard

capture data corresponding to the musical score

We can create the piano performance animation by

based on the mapping table, and did the rendering

combining the movements of the hands and the

in real time.

movements of the piano keyboard.

This time we used OpenGL to read the motion

Furthermore, we play back the sounds by

capture data and MIDI data and draw the piano

synchronizing the MIDI data recorded during the

performance CG animation in real time. We were

motion capture photography with the piano

able to recreate the movement of the fingers while

performance animation.

changing the tempo for each beat (Figure 5(a)). Moreover, currently we are in the process of

3.4. Implementation

implementing a real time rendering program using 3.4.1. Offline rendering

directX and a GPU (Graphics Processing Unit)

In the offline rendering stage we produced the

based on the obtained motion capture data [6, 7].

model of the hand and the model of the piano

This makes the drawing of realistic and natural

using CG software.

fingering possible (Figure 5(b)).

We used parts of Chopin’s “Waltz op. 64 No. 2” and Bach’s “Minuet G dur” in our experiment. One scene from the piano performance animation

(a)

which was output is displayed in Figure 4. We were able to confirm that by using motion capture technology on the movements of real hands during an actual performance, we could recreate the performance with 3D CG animation. 3.4.2. Real-time rendering We

offer a

system that

(b)

outputs a

piano

performance CG animation that is synchronized with the music. This system works by using motion capture data, interactively obtaining the Fig. 5: Realtime rendering of images. (a) Skeleton model using OpenGL. (b) Skin model using DirectX.

tempo, and rendering the fingering in real time. Utilizing real-time rendering makes it possible to

3

4

Automatic Generation of Optimal Fingering from a Musical Score

was small. Next, we deal with a trajectory control method.

Aside from the researches mentioned above, we

We assume that the control points move so as to

are developing a system that automatically

reduce the load of fingering to a hand. We refer to

generates an animation of a pianist playing piano

a position (i, j) as the set of coordinates of all

from a musical score [8, 9]. This system is mainly

control points for the situation (i, j). For motion

composed of the function determining an optimal

(j,˜j ; i,˜i), we determine a position (˜i,˜j ) to

piano fingering and the function determining the

minimize the weighted square sum of the

trajectories of all control points in the bony

difference between the position (i, j) and the

frameworks of hands based on the fingering. It is

position (˜i,˜j), and the difference between the

necessary to design efficient algorithms to realize

position (˜i,˜j) and the prescribed natural position

these functions.

of the situation (˜i,˜j ). As it is difficult to get the global optimum solution of this problem, we got a

First, we deal with an optimal fingering

solution by a heuristic algorithm. Then we

method. For the sake of simplicity, we restrict our

generate all key frames by interpolating linearly

attention to the problem of determining an optimal

between positions (i, j) and (˜i,˜j). Thus, the

fingering of a right hand for a musical score which

trajectories of the control points are determined.

contains no chords (its notes are played one at a time) or rests (silences). We number the fingers

Finally, we show that the system based on the

from one to five, starting with the thumb and

proposed

ending with the pinkie, and number all notes. We

reasonable CG animations for the musical scores

refer to motion (j,˜j; i,˜i) as the transition from the

of some famous piano works.

situation (i, j) that finger i on note j to the situation

5

(˜i,˜j ) that finger ˜i on note ˜j. As the structure of bones and tendon strength of a hand determine the

methods

generates

plausible

and

Animation Production Using Motion Capture Data

difficulty of a motion, we define the difficulty of

Finally, we will present an example of the use of

motion (j,˜j ; i,˜i) as a positive real value c(j,˜j ;

fingering data in the production of a TV animation.

i,˜i); the lower the value of a motion is, the easier

“Nodame Cantabile” is a Japanese comic book

one can play the motion. For the purposes of this

primarily about the success story of a young

research, we determined these values based on our

female pianist. When it was made into a TV

own piano skills. For a musical score, that is, a

animation, the animation studio requested the

sequence of notes sp (p = 0, 1, 2, ..., n), we define

fingering measurement technology of the authors

the optimal fingering for the score as the sequence

of this paper for use in production of the realistic

of the motions to minimize the sum of the costs of

piano performance scenes.

all the motions contained in the score. By using a dynamic programming method, we can easily

We asked a professional pianist to perform the

solve this optimization problem. In general, we can

music and carried out the measurements (Figure 6).

use another appropriate objective function as the

We attached 29 markers to each arm of the

cost of a fingering. We evaluated this method by

performer, who performed in time with the

comparing the fingering generated by it with the

performance sound we had recorded earlier. To

fingering of a person with experience. As a result,

increase the precision of the data, for the motion

the difference in costs between these fingerings

capture we used 13 cameras and we obtained the data at 60Hz. With respect to the measured data 4

after making corrections, hand application of the animation was carried out in the animation studio (Figure 7). Approximately 20 cuts of 20 songs were performed, including Mozart’s “Twinkle, Twinkle, Little Star” and “Piano Sonata No. 18” and Ravel’s “Jeux d’eau,” etc. Nothing sounded wrong even with the early phrases, and fingering synchronized with the music was recreated. In addition the mechanical impression that CG animation tends to Fig. 6: Acquisition of fingering data using motion capture.

give was absent, thus preserving the quality of hand-applied animation. We can conclude that this was an example of skillful maximization of the benefits

of

interactions

between

the

two

technologies.

6

Conclusion

In this paper we have discussed technologies for creating animations of piano fingering, and have presented an example of the application of these technologies to the production of TV animation. Currently, we are studying technologies for expressing the texture of the skin using real time rendering and advanced technologies related to the automatic generation of fingering. Finally, we are aiming to construct a music and images generating system that outputs natural and emotionally rich music performances and fingering when a musical score is input into it.

Fig. 7: Examples of hand-applied animation based on the obtained motion capture data. © Tomoko Ninomiya/Kodansha Ltd./Nodame Cantabile 2 Production Committee.

It will be also be possible to utilize these technologies in practice support systems if they are developed to include analyses and evaluations of the characteristics and individuality of fingering and the differences in the playing techniques of

References

advanced players and beginners [10]. Moreover,

[1] Sekiguchi, H., Eiho, S. (1999). Generating and displaying the human piano performance. Trans. IPSJ, 40(6), 2827-2837. [2] Alia Al Kasimi, Eric Nichols and Christopher Raphael (2005). Automatic fingering system (AFS). ISMIR 2005 poster presentation, ISMIR 2005 Automatic Fingering System Kasimi Nichols Raphael.pdf. [3] Kugimoto, N., Yamamoto K., Takeda, H., Katayose H.,

we plan to work on the production, etc. of pianist characters who give realistic performances inside VR spaces such as Second Life, etc.

5

[4]

[5]

[6]

[7]

[8]

[9]

[10]

Nagata, N., & Miwa, H. (2007). Computer animation for piano fingering using motion capture an its application to a music interface. IPSJ SIG Technical Reports, 2007-MUS-72, 79-84. John Lin, Ying Wu and Thomas S. Huang (2007). Modeling the constraints of human hand motion. Proc. the 2000 IEEE Workshop on Human Motion. 2(1), 52-57. Katayose, H. & Okudaira, K. (2004). iFP A music interface using an expressive performance template, In EC2004, Lecture Notes in Computer Science 3166. 529-540, Springer-Verlag. Craig Donner, Henrik Wann Jensen (2005). Light Diffusion in Multi-Layered Translucent Materials. ACM Transactions on Graphics, 24 (3), Proc. ACM SIGGRAPH 2005, 1032 – 1039. Hubert Nguyen (2007). Advanced techniques for realistic real-time skin rendering. In GPU Gems 3 (Chap. 14). Addison-Wesley Professional. ISBN-13: 978-0321515261. Yuichiro Yonebayashi, Hirokazu Kameoka, Shigeki Sagayama (2007). Automatic determination of piano fingering based on a hidden markov model. Proc. the 20th International Joint Conference on Artificial Intelligence (IJCAI), 2915-2921. Kugimoto, N., Fujimura, T., Miwa, H., & Nagata, N. (2008). A system generating CG animation for piano performance from a musical score. Proc. The 4th Sino-Japanese Optimization Meeting (SJOM 2008), 55. Furuya S, & Kinoshita H (2008). Expertise-dependent modulation of muscular and non-muscular torques in multi-joint arm movements during piano keystroke. Neuroscience 156 (2), 390-402.

6

CG Animation for Piano Performance - Semantic Scholar

techniques for computer animation of piano performance have been mechanical and tended ... support systems and performance support GUIs, etc. and there ...

224KB Sizes 0 Downloads 287 Views

Recommend Documents

CG Animation for Piano Performance
Capturing the 3-dimensional location data of the fingers. First, we obtain the finger movements during a piano performance using motion capture technology ...

Notio - A Java API for developing CG tools - Semantic Scholar
providing a platform for the development of tools and applications. ... to access the underlying graph implementation (e.g. Deakin Toolset [3] and CGKEE. [4]).

Improved Competitive Performance Bounds for ... - Semantic Scholar
Email: [email protected]. 3 Communication Systems ... Email: [email protected]. Abstract. .... the packet to be sent on the output link. Since Internet traffic is ...

High Performance RDMA-Based MPI ... - Semantic Scholar
C.1.4 [Computer System Organization]: Parallel Archi- tectures .... and services can be useful in designing a high performance ..... 4.6 Polling Set Management.

Performance Evaluation of Curled Textlines ... - Semantic Scholar
[email protected]. Thomas M. Breuel. Technical University of. Kaiserslautern, Germany [email protected]. ABSTRACT. Curled textlines segmentation ...

Advances in High-Performance Computing ... - Semantic Scholar
tions on a domain representing the surface of lake Constance, Germany. The shape of the ..... On the algebraic construction of multilevel transfer opera- tors.

Investigating Retrieval Performance with Manually ... - Semantic Scholar
Internet in recent years, topicalized information like the directory service offered .... topic modeling technique, LSA has been heavily cited in many areas including IR ... Google5 also featured personal history features in its “My Search Historyâ

Performance Evaluation of Curled Textlines ... - Semantic Scholar
coding format, where red channel contains zone class in- formation, blue channel .... Patterns, volume 5702 of Lecture Notes in Computer. Science, pages ...

Advances in High-Performance Computing ... - Semantic Scholar
ement module is illustrated on the following model problem in eigenvalue computations. Let Ω ⊂ Rd, d = 2, 3 be a domain. We solve the eigenvalue problem:.

A note on performance metrics for Speaker ... - Semantic Scholar
Jun 9, 2008 - regardless of the (analysis) condition it happens to be part of. .... of hard decisions is replaced by a log-error measure of the soft decision score.

A note on performance metrics for Speaker ... - Semantic Scholar
Jun 9, 2008 - performance evaluation tools in the statistical programming language R, we have even used these weighted trials for calculating Cdet and Cllr, ...

A note on performance metrics for Speaker ... - Semantic Scholar
Jun 9, 2008 - this, and then propose a new evaluation scheme that allows for ... different performance, thus forcing system developers to get ... evaluation priors from the application priors, we can give the trials in ..... York - Berlin, 2007.

Optimizing Performance for the Flash Platform - Semantic Scholar
Aug 21, 2012 - Optimizing Adobe AIR for code execution, memory & rendering at ..... create any effects that you need on a bitmap in an authoring tool. ...... FluorineFX, WebORB, and BlazeDS, an official open-source Java Flash Remoting ...

Anesthesia for ECT - Semantic Scholar
Nov 8, 2001 - Successful electroconvulsive therapy (ECT) requires close collaboration between the psychiatrist and the anaes- thetist. During the past decades, anaesthetic techniques have evolved to improve the comfort and safety of administration of

Towards High-performance Pattern Matching on ... - Semantic Scholar
such as traffic classification, application identification and intrusion prevention. In this paper, we ..... OCTEON Software Developer Kit (Cavium SDK version 1.5):.

Performance of Parallel Prefix Circuit Transition ... - Semantic Scholar
analysis of jitter continues to be fundamental to the design, test, commissioning, and ... programmable gate array), and custom hardware; flexible ap- proaches are .... parallel methods for repeated application of that operation. The methods ...

Performance evaluation of a subscriber database ... - Semantic Scholar
Jun 30, 2003 - The thesis studies the performance of one of the services of the subscriber database on three different ..... Memory is an example of such resource where the limiting factor is the resource contention alone. ...... clude single-thread

Getting More Performance and Efficiency in the ... - Semantic Scholar
or load balancer is placed between the firewall and the web applications. ADC. DDoS. Protection. Load. Balancing. Secure. Remote. Access. Web. Application .... From Intel, pg 3. http://www.intel.co.uk/content/www/uk/en/it-management/improving-email-a