WO2010045665A1 - Verfahren zur erkennung von notenmustern in musikstücken - Google Patents

Verfahren zur erkennung von notenmustern in musikstücken Download PDF

Info

Publication number
WO2010045665A1
WO2010045665A1 PCT/AT2009/000401 AT2009000401W WO2010045665A1 WO 2010045665 A1 WO2010045665 A1 WO 2010045665A1 AT 2009000401 W AT2009000401 W AT 2009000401W WO 2010045665 A1 WO2010045665 A1 WO 2010045665A1
Authority
WO
WIPO (PCT)
Prior art keywords
list
channel
pattern
instances
lists
Prior art date
Application number
PCT/AT2009/000401
Other languages
English (en)
French (fr)
Inventor
Stefan M. Oertl
Brigitte Rafael
Original Assignee
Oertl Stefan M
Brigitte Rafael
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 Oertl Stefan M, Brigitte Rafael filed Critical Oertl Stefan M
Priority to US13/125,200 priority Critical patent/US8283548B2/en
Priority to EP09755830A priority patent/EP2351017B1/de
Publication of WO2010045665A1 publication Critical patent/WO2010045665A1/de

Links

Classifications

    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10HELECTROPHONIC MUSICAL INSTRUMENTS; INSTRUMENTS IN WHICH THE TONES ARE GENERATED BY ELECTROMECHANICAL MEANS OR ELECTRONIC GENERATORS, OR IN WHICH THE TONES ARE SYNTHESISED FROM A DATA STORE
    • G10H1/00Details of electrophonic musical instruments
    • G10H1/0033Recording/reproducing or transmission of music for electrophonic musical instruments
    • G10H1/0041Recording/reproducing or transmission of music for electrophonic musical instruments in coded form
    • G10H1/0058Transmission between separate instruments or between individual components of a musical system
    • G10H1/0066Transmission between separate instruments or between individual components of a musical system using a MIDI interface
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10HELECTROPHONIC MUSICAL INSTRUMENTS; INSTRUMENTS IN WHICH THE TONES ARE GENERATED BY ELECTROMECHANICAL MEANS OR ELECTRONIC GENERATORS, OR IN WHICH THE TONES ARE SYNTHESISED FROM A DATA STORE
    • G10H2210/00Aspects or methods of musical processing having intrinsic musical character, i.e. involving musical theory or musical parameters or relying on musical knowledge, as applied in electrophonic musical tools or instruments
    • G10H2210/031Musical analysis, i.e. isolation, extraction or identification of musical elements or musical parameters from a raw acoustic signal or from an encoded audio signal
    • G10H2210/061Musical analysis, i.e. isolation, extraction or identification of musical elements or musical parameters from a raw acoustic signal or from an encoded audio signal for extraction of musical phrases, isolation of musically relevant segments, e.g. musical thumbnail generation, or for temporal structure analysis of a musical piece, e.g. determination of the movement sequence of a musical work
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10HELECTROPHONIC MUSICAL INSTRUMENTS; INSTRUMENTS IN WHICH THE TONES ARE GENERATED BY ELECTROMECHANICAL MEANS OR ELECTRONIC GENERATORS, OR IN WHICH THE TONES ARE SYNTHESISED FROM A DATA STORE
    • G10H2250/00Aspects of algorithms or signal processing methods without intrinsic musical character, yet specifically adapted for or used in electrophonic musical processing
    • G10H2250/131Mathematical functions for musical analysis, processing, synthesis or composition
    • G10H2250/135Autocorrelation

Definitions

  • the present invention relates to a method for recognizing similar recurring pattern of notes in a musical piece containing note sequences distributed in parallel channels.
  • the invention sets itself the goal of creating such a method.
  • This object is achieved by a method of the type mentioned above, characterized by the following steps: a) repeatedly segmenting each channel by varying segment length and start and, for each type of segmentation, determining similar segments and storing them in lists of candidate patterns with their respective instances, one list per segmentation type and channel; b) calculating a self-similarity value for each list based on the similarities of the instances of each candidate pattern of a list with each other; c) calculating coincidence values for each list of each channel against the lists of all other channels, each of which is based on the overlaps of instances of a candidate pattern of the one list of instances of a candidate pattern other list if they overlap at least twice; and d) associating the self-similarity and coincidence values of each list with a total value per list, and using the channel candidates of the highest-total-value lists in each channel as recognized pattern notes of the channel.
  • the method of the invention thus takes into account, for the first time and significantly, the parallel structural information of a multi-channel piece of music which may be concealed in the temporal coincidences of potential patterns ("candidate patterns") of different channels and associates these with an assessment of the robustness of found candidate patterns due to the Similarities of their instances, their so-called “fitness”.
  • candidate patterns potential patterns
  • channel used here for a multi-channel piece of music is to be understood in its most general form, ie both in the sense of a single (monophonic) voice of a polyphonic (polyphonic) sentence in the sense of (possibly also polyphonic) instrumental voice such as a bass, trumpet, string, drum, piano part, etc., as well as in the sense of a technical channel such as a midi channel containing both monophonic and polyphonic voices, parts or combinations thereof can, for example, a drumpattern, a chord progression, a string replacement, etc.
  • a particularly advantageous embodiment of the invention is characterized in that, in step a), the following additional step is carried out: a) detecting the patterns which are identical in a channel, selecting therefrom the pattern best covering the channel and storing them in a further list of Candidate patterns with their respective instances per channel.
  • the channel-related pattern recognition is thus based on two equally valid bases, once an identifier and once a similarity detection, for which variants Different methods can be used.
  • an implicit combination of the two methods results in the subsequent list evaluation by means of the self-similarity and coincidence values, because the results of the two methods compete there.
  • the method of the invention thus becomes "self-adaptive" for different types of input signals which respond differently to different types of recognition methods.
  • step a1) the detection of identical patterns is performed by means of the correlation matrix method as known per se from Hsu Jia-Lien et al. (supra) is known.
  • step a1) the selection of the best-covering patterns is carried out by iteratively selecting the respectively most frequent and / or longest pattern from the detected patterns.
  • step a) the segment length is varied in multiples of the clock unit of the piece of music, which limits the possible variations to an appropriate level and saves computing time. It is particularly advantageous if the segment length is varied from twice the average note duration of the piece of music to half the length of the piece of music.
  • step a) the determination of segments which are similar to one another takes place by aligning the notes of two segments, determining a degree of agreement of the two segments and recognizing similarity if the degree of agreement exceeds a predetermined threshold value.
  • the alignment of the notes preferably takes place by means of the "Dynamic Programming" method, as known per se from Kilian Jürgen et al. (Loc. Cit.) Or Hu Ning et al. (Loc. Cit., With further proofs).
  • the eigen similarity value is calculated in step b). in that, for each candidate pattern of the list, a similarity matrix of its instances is set up whose values are linked to the self-similarity value of the list, preferably weighted by the channel coverage of the candidate patterns of the list. It has been found that this embodiment leads to a rapid and stable implementation.
  • step b) those lists of a channel whose self-similarity value does not reach a predetermined threshold value can be deleted.
  • this predetermined threshold value is adaptive, in particular a percentage of the highest self-similarity value of all lists of the channel, particularly preferably at least 70%. In a practically particularly suitable embodiment, the threshold is about 85%.
  • step c) only the overlaps to those instances of the other list are taken into account for a certain candidate pattern of a list, with which the time-longest overlaps exist. Practical tests have shown that this leads to a satisfactory recognition rate and simplifies the process in this step.
  • the coincidence values taken into account for a list are respectively summed up and the accumulated coincidence values are particularly preferably multiplied by the intrinsic similarity value of the list to said total value.
  • Figures 1 and 2 show an exemplary multi-channel piece of music as input to the present method in musical notation (Figure 1) and note sequence notation (Figure 2);
  • Fig. 5 shows the result of the detection phase of step al
  • FIG. 6 is a flow chart for the selection phase for the best-covering patterns in step a1);
  • step a1) shows the result of step a1) in the form of a first list of candidate patterns and their instances for a channel
  • Fig. 8 shows the meaning of the list of Fig. 7 with respect to the channel cover
  • Fig. 10 shows an example of a "dynamic programming" algorithm for aligning two segments:
  • Fig. 11 shows the result of the alignment of Fig. 11 for the similarity comparison of two segments;
  • Fig. 12 similar and transitive-like segments of a channel representing the instances of a recognized candidate pattern; 13 shows the result of step a) in the form of another list of candidate patterns and their instances for a channel and a specific segmentation type of this channel;
  • Fig. 14 shows the entire result of step a), shown as a set of multiple lists for one channel;
  • Fig. 15 shows the meaning of the lists of Fig. 14 in terms of various possible covers of a channel, each with the candidate patterns of its lists;
  • step b) shows a similarity matrix for the instances of a candidate pattern of a list as a basis for the calculation of the self-similarity value of a list according to step b);
  • FIG. 17 shows an overlap comparison between the pattern instances of two lists as a basis for the calculation of the coincidence values of a list according to step c);
  • FIG. 18 shows the association of the self-similarity and coincidence values and the calculation of the total value of a list according to step d).
  • FIG. and Figs. 19 and 20 show the result of applying the method to the input signal of Figs. 1 and 2 in the form of the possible (Fig. 19) and best (Fig. 20) channel covers, the latter being the ones recognized in the channels Represent musical pattern.
  • Fig. 1 shows a section of a piece of music containing on parallel channels chi, Ch 2 and ch 3 (generally ch p ) distributed note sequences qi, q 2 and q 3 (generally q p ), which are shown schematically in Fig. 2 .
  • the channels ch p are, for example, separate MIDI channels for the various instruments or voices of the piece of music, although this is not mandatory, as explained above.
  • the note sequences q p only the pitches and times of occurrence of the individual notes are taken into account, but not other note parameters such as note duration, volume, velocity, envelope, sound, key context, etc.
  • step al In a simplified embodiment of the method can optionally be dispensed with step al), with a correspondingly limited range of applications of the method, as discussed above. Steps al) to d) will now be described in detail.
  • step al) pattern detection by means of correlation matrix
  • a preliminary list according to FIG. 5 can be created for each channel, in which note patterns m lr m, p , mm, m IV , etc. found as identically recurring with the positions of their occurrence or occurrence Occurrences in the note sequence q p , ie their so-called “instances”, as well as their length and frequency are listed from the preliminary list of Fig. 5 with the help of the search method sketched in Fig. 6, those note patterns as "candidate patterns" for sought out the further processing, which cover the channel ch p as largely as possible and also without overlap.
  • the "best" pattern in step (i) is in each case the most frequent and / or longest pattern in the preliminary list FIG In 1 , In 11 , etc. It is particularly preferable to use the following criterion for the "best" pattern:
  • the most common pattern is selected unless there is a longer candidate pattern that covers more than 75% of the channel and occurs at least 2/3 as often.
  • a first list Li of candidate patterns itii a , itii b results for each channel ch p , covering the channel ch p or its note sequence q p without overlapping and as far as possible, ie as gap-free as possible , see Fig. 8.
  • step a) a second approach is followed.
  • Each channel ch p (or its note sequence q p ) is repeated and segmented in different ways, varying the segment length and start.
  • Fig. 9 shows five exemplary types of segmentation I - V, wherein the segment length in multiples of the clock unit of the piece of music, ie the duration of a beat of the piece of music is varied; For example, at a 4/4 time, the clock unit is a quarter note.
  • the segmentation types I and II shown are based on a segmentation into segments with a length of two beats, wherein in segmentation II the beginning of the segment has been offset by one beat.
  • the segmentation types III - V are based on a segment length of three beats and a successive offset of the beginning of the segment by one beat at a time.
  • the segment length is varied from twice the average note duration of the piece of music to a maximum of half the length of the entire piece of music, since the maximum Length of a note pattern can be at most half the length of the piece of music. If desired, for shortening the method could also be terminated earlier, ie the segment length can be varied, for example, only up to a predetermined number of clocks.
  • the similarity of the segments S 3 and S t is then evaluated by means of a correspondingly selected scoring scheme between 0% (dissimilar) and 100% (ident), for example based on the number of identical notes, the number of gaps, the pitch spacing of deviating notes, etc
  • Two segments S 3 , S t are subsequently recognized as "similar” if their similarity value determined in this way is above a predetermined threshold, preferably above 50% In this way, all segments S 3 are now compared with all other segments S t of a segmentation type I. , II, etc. of a channel ch p This leads, for example, to the recognition of a similarity for the segmentation type II of the channel ch p between the segments Si, S 3 and Se, as shown in FIG.
  • the segments Si and S 3 here are 50% similar, the segments S 3 and Se are 60% similar, and the segments Si and Se are "transitive-like" 40% All similar or even transitive-like segments are again considered to be instances i x of a candidate pattern resulting from the note sequence of one (eg the first) of these segments
  • the candidate patterns found in this way for a segmentation type of a channel will become stored in the form of a further list L 2 of candidate patterns m 2a , m 2b , etc., with their respective instances ii, i 2 , etc., see FIG. 13.
  • an equity similarity value E n on the basis of ⁇ istskeitsmatrizen for all candidate patterns m na, nb m etc. (generally m nx) calculates the list L n in step b).
  • 16 shows an exemplary similarity matrix for the instances i lf i 2 , i 3 and i 4 of a candidate pattern m n of the list L n :
  • the cells of the matrix give the degree of similarity, for example as after the "Dynamic Programming" step of FIG.
  • Step a) determined, again; For example, here the similarity between instance ii and instance i 3 is 80%.
  • E m ⁇ similarity between i k and i, k, l
  • an evaluation scheme can be used which statistically evaluates or evaluates the values in the cells of the similarity matrix, preferably in the form: if at least one cell has the entry "1" per row, then E nx is incremented by 2, ie
  • the self-similarity value E nx of the candidate pattern m nx is also referred to as "loopfitness" of the candidate pattern m nx .
  • the self-similarity value E n of the list L n is then obtained as the sum of the eigen similarity values E nx of all candidate patterns m nx of the list L n , multiplied by the channel coverage P, which reach all instances of all candidate patterns m nx of the list L n , ie:
  • the channel coverage P n of a list L n of a channel ch p is understood to be either the temporal coverage of the channel, the sum of the durations t nx i of all instances i of all candidate patterns m nx of the channel, based on the total duration T p of the channel ch p ; or
  • the notional coverage of the channel as the sum of the note numbers n nxi in all instances i of all candidate patterns m nx of the channel, relative to the total number N p of notes of the channel ch p ; or preferably both the temporal and the note-like coverage in weighted form, for example equally weighted, ie:
  • Nr in an optional step that lists L can, after determining the intrinsic similarity values E n of the lists L n, for example, immediately after step b), for a specific channel ch p all n of the channel ch are deleted p whose intrinsic similarity values E n a predetermined Do not reach threshold.
  • the threshold value can preferably be specified adaptively or dynamically, for example as a percentage of the highest eigennormality value E n of all channels L n of the channel chp, eg as at least 70% or more preferably as approximately 85% of the highest self-similarity value E n of all lists L n of the channel ch p .
  • step c) for each list L n, coincidence values are calculated, between each list L n of each channel ch p and each list L n of each other channel ch p -, as outlined in FIGS. 17 and 18.
  • Fig. 18 shows - representative of all these coincidence value calculations - the first list L 21 of the channel ch 2 , which is compared with all other lists (but not with the lists of its own channel ch 2 ), by coincidence values K21-12, K21 -31 etc., generally K pn - P'n ' (with p' ⁇ p), from which a total coincidence value K pn for each list L pn is then determined, as described below.
  • a coincidence value is calculated from the temporal overlaps u of the instances I 1 of two lists to be compared-in FIG. 17, for the sake of simplicity, only as L x and L 2 -
  • the coincidence value K pn - P'n - is the sum of all time durations t x of those instance overlaps u, which are considered as follows, based on the time duration T of the total considered channel ch p .
  • the candidate pattern m lb (ie its three instances ii, ⁇ 2 , i- 3 ) overlaps three times with instances of one and the same candidate pattern of the second list L 2 / with the three instances i lf i 2 and i 5 of the candidate pattern m 2a at the overlap times ti, t 2 and ts; and only these overlap times are considered for the candidate pattern mi b .
  • the coincidence value K pn - P'n ' can optionally be for instances coinciding exactly in their beginning or end-in the example shown in FIG.
  • the self-similarity values Ep n and coincidence values K pn - P'n ⁇ determined for each list L pn are linked to a total value G pn of the list L pn , for example by adding up, multiplying or other mathematical operations.
  • the following combination is applied: As illustrated in FIG. 18, for a list, for example, the first list L 21 of the second channel ch 2 , only those coincidence values K2-P'n 'are compared with the lists Lp- n . the other channels ch p ⁇ , which have the highest value in each channel.
  • the total coincidence value K pn of the list L pn is then multiplied by the self-similarity value E pn of the list L pn to give a total value G pn for the list L pn :

Landscapes

  • Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • Acoustics & Sound (AREA)
  • Multimedia (AREA)
  • Auxiliary Devices For Music (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

Verfahren zur Erkennung ähnlich wiederkehrender Muster von Noten in einem Musikstück, das auf parallele Kanäle (ch) verteilte Notensequenzen (q) enthält, mit den Schritten: a) wiederholtes Segmentieren jedes Kanals (ch) und, für jede Segmentierungsart, Bestimmen zueinander ähnlicher Segmente (S) und Speichern derselben in Listen (L) von Kandidatenmustern (m) mit ihren jeweiligen Instanzen (i); b) Berechnen eines Eigenähnlichkeitswerts (E) für jede Liste (L); c) Berechnen von Koinzidenzwerten (K) für jede Liste (L) jedes Kanals (ch) gegenüber den Listen aller anderen Kanäle; und d) Verknüpfen der Eigenähnlichkeits- und Koinzidenzwerte (E, K) jeder Liste (L) zu einem Gesamtwert (G) pro Liste und Verwenden der Musterkandidaten (m) der Listen (L) mit dem höchsten Gesamtwert (G) in jedem Kanal (ch) als erkannte Notenmuster des Kanals.

Description

Verfahren zur Erkennung von Notenmustern in Musikstücken
Die vorliegende Erfindung betrifft ein Verfahren zur Erkennung ähnlich wiederkehrender Muster von Noten in einem Mu- sikstück, das auf parallele Kanäle verteilte Notensequenzen enthält.
Die Erkennung von wiederkehrenden Notenmustern in Musikstücken, z.B. von Loops, Riffs, Phrasen, Motiven, Themen, Strophen, Refrains, Überleitungen, Sätzen usw., ist in den letzten Jahren zu einem umfassenden Forschungsgebiet mit konkreten und vielversprechenden technischen Anwendungen geworden. Als einige Anwendungsbeispiele seien die automatisierte Analyse musikalischer Strukturen von Musikstücken in computerunterstützten Re- cordingstudio-, Audioworkstation- und Musikproduktionsumgebun- gen genannt, welche sich für Archivierungs- und Sortierungszwecke sowie zur Resynthese bestehender Notenmuster zu Neukompositionen auf eine verläßliche Mustererkennung stützen müssen. Eine weitere konkrete technische Anwendung ist die Analyse und Indexierung großer Musikdatenbanken, z.B. von Musikarchiven oder Online-Musikshops, nach identifizierbaren Notenmustern für das neue Gebiet des „music Information retrieval" (MIR) , beispielsweise um unscharfe Benutzerabfragen („fuzzy queries") automatisiert verarbeiten zu können, Stichwort „query by hum- ming" . Für die Mustererkennung in einkanaligen Musikstücken wurden in der Vergangenheit bereits verschiedenste Verfahren vorgeschlagen, welche auch Konzepte aus anderen Bereichen der Mustererkennung übernehmen, wie „string matching"-Techniken aus dem Bereich der DNA-Sequenzanalyse, siehe z.B. in Kilian Jür- gen, Hoos Holger H. : "MusicBLAST - Gapped Sequence Alignment for MIR", International Conference on Music Information Retrieval (ISMIR), 2004. „String matching"-Verfahren beruhen häufig auf dem Einsatz von „Dynamic Programming"-Algorithmen zur Ausrichtung und zum Ähnlichkeitsvergleich von Notensubsequen- zen, vgl. z.B. Hu Ning, Dannenberg Roger B., Lewis Ann L.: "A Probabilistic Model of Melodie Similarity", Proceedings of the ICMC, 2002. Speziell zur Erkennung ident wiederkehrender Notenmuster für Musikanalyse- und MIR-Zwecke wird in Hsu Jia-Lien, Liu Chih-Chin, Chen Arbee L. P.: "Discovering Nontrivial Repeating Patterns in Musical Data", IEEE Transactions On Multimedia, Vol. 3, No. 3, 2001, der Einsatz einer Korrelationsmatrix vorgeschlagen, welche nicht-triviale, d.h. sich nicht gegenseitig enthaltende, in einem Kanal ident wiederkehrende Muster auffinden läßt.
Alle bislang bekannten Verfahren haben die Eigenschaft, daß sie jeden Kanal eines mehrkanaligen Musikstücks jeweils gesondert analysieren. Die Erfinder des vorliegenden Verfahrens haben erkannt, daß darin ein wesentlicher Nachteil der bekannten Verfahren liegt, weil damit Strukturinformationen, die gerade in der musikalischen Parallelität der Kanäle, d.h. ihrem rhythmischen, melodischen und polyphonen Kontext, enthalten sind, gänzlich unberücksichtigt bleiben, was sich in der wenig zufriedenstellenden Erkennungsrate und -qualität der bekannten Verfahren niederschlägt.
Es besteht daher ein ungebrochener Bedarf nach einem ver- besserten Mustererkennungsverfahren für mehrkanalige Musikstük- ke. Die Erfindung setzt sich zum Ziel, ein solches Verfahren zu schaffen.
Dieses Ziel wird mit einem Verfahren der einleitend genannten Art erreicht, das sich durch die folgenden Schritte auszeichnet: a) wiederholtes Segmentieren jedes Kanals unter Variierung von Segmentlänge und -beginn und, für jede Segmentierungsart, Bestimmen zueinander ähnlicher Segmente und Speichern derselben in Listen von Kandidatenmustern mit ihren jeweiligen Instanzen, und zwar jeweils einer Liste pro Segmentierungsart und Kanal; b) Berechnen eines Eigenähnlichkeitswerts für jede Liste, welcher auf den Ähnlichkeiten der Instanzen jedes Kandidatenmusters einer Liste untereinander basiert; c) Berechnen von Koinzidenzwerten für jede Liste jedes Kanals gegenüber den Listen aller anderen Kanäle, welcher jeweils auf den Überlappungen von Instanzen eines Kandidatenmusters der einen Liste mit Instanzen eines Kandidatenmuster der anderen Liste basiert, wenn sich diese zumindest zweimal überlappen; und d) Verknüpfen der Eigenähnlichkeits- und Koinzidenzwerte jeder Liste zu einem Gesamtwert pro Liste und Verwenden der Mu- sterkandidaten der Listen mit dem höchsten Gesamtwert in jedem Kanal als erkannte Notenmuster des Kanals.
Das Verfahren der Erfindung berücksichtigt damit erstmals und in signifikanter Weise die parallelen Strukturinformationen eines mehrkanaligen Musikstücks, die in den zeitlichen Koinzi- denzen potentieller Muster („Kandidatenmuster") verschiedener Kanälen verborgen sein können, und verknüpft diese mit einer Bewertung der Robustheit aufgefundener Kandidatenmuster aufgrund der Eigenähnlichkeiten ihrer Instanzen, ihrer sogenannten „Fitness". Im Ergebnis wird damit ein wesentlich verläßliche- res, aussagekräftigeres und treffenderes Mustererkennungsergebnis erzielt als mit allen bisher bekannten Verfahren.
An dieser Stelle sei erwähnt, daß der hier verwendete Begriff „Kanal" für ein mehrkanaliges Musikstück in seiner allgemeinsten Form aufzufassen ist, d.h. sowohl im Sinne einer ein- zigen (monophonen) Stimme eines mehrstimmigen (polyphonen) Satzes, im Sinne einer (gegebenenfalls auch polyphonen) Instrumentenstimme, wie eines Baß-, Trompeten-, Streicher-, Schlagzeug-, Klavierparts usw., als auch im Sinne eines technischen Kanals wie eines Midi-Channels, welcher sowohl monophone als auch po- lyphone Stimmen, Parts oder deren Kombinationen enthalten kann, z.B. ein Drumpattern, eine Akkordfolge, einen Streichersatz usw.
Eine besonders vorteilhafte Ausführungsform der Erfindung zeichnet sich dadurch aus, daß in Schritt a) zusätzlich folgen- der Schritt ausgeführt wird: al) Detektieren der in einem Kanal ident wiederkehrenden Muster, daraus Auswählen der den Kanal bestabdeckenden Muster und Speichern derselben in einer weiteren Liste von Kandidatenmustern mit ihren jeweiligen Instanzen pro Kanal. Dadurch kann der Erkennungsgrad noch weiter gesteigert werden. Die kanalbezogene Mustererkennung wird damit auf zwei gleichwertige Grundlagen gestellt, einmal eine Identerkennung und einmal eine Ähnlichkeitserkennung, für welche Varianten un- terschiedliche Verfahren eingesetzt werden können. Durch Einbeziehung der Erkennungsergebnisse beider Varianten in ein und denselben Listensatz von Kandidatenmustern ergibt sich eine implizite Verknüpfung der beiden Verfahren in der anschließenden Listenbewertung mittels der Eigenähnlichkeits- und Koinzidenzwerte, weil die Ergebnisse der beiden Verfahren dort in Konkurrenz stehen. Das Verfahren der Erfindung wird damit „selbstad- aptiv" für unterschiedliche Arten von Eingangssignalen, welche auf verschiedene Arten von Erkennungsverfahren unterschiedlich ansprechen.
Bevorzugt wird in Schritt al) das Detektieren ident wiederkehrender Muster mittels des Korrelationsmatrix-Verfahrens durchgeführt, wie es an sich aus Hsu Jia-Lien et al. (aaO) bekannt ist. Besonders bevorzugt erfolgt in Schritt al) das Aus- wählen der bestabdeckenden Muster durch iteratives Auswählen des jeweils häufigsten und/oder längsten Musters aus den detek- tierten Mustern.
Gemäß einem weiteren bevorzugten Merkmal der Erfindung wird in Schritt a) die Segmentlänge in Vielfachen der Taktein- heit des Musikstücks variiert, was die Variationsmöglichkeiten auf ein geeignetes Maß begrenzt und Rechenzeit spart. Besonders günstig ist es, wenn die Segmentlänge vom Zweifachen der durchschnittlichen Notendauer des Musikstücks bis zur halben Länge des Musikstücks variiert wird. Gemäß einer weiteren vorteilhaften Ausführungsform der Erfindung erfolgt in Schritt a) das Bestimmen zueinander ähnlicher Segmente durch gegenseitiges Ausrichten der Noten zweier Segmente, Bestimmen eines Übereinstimmungsgrades der beiden Segmente und Erkennen auf Ähnlichkeit, wenn der Über- einstimmungsgrad einen vorgegebenen Schwellwert übersteigt. Diese Maßnahmen sind mit vertretbarem Rechenleistungsaufwand rasch implementierbar.
Insbesondere erfolgt dabei das Ausrichten der Noten bevorzugt mittels des „Dynamic Programming"-Verfahrens, wie es aus Kilian Jürgen et al. (aaO) oder Hu Ning et al. (aaO, mit weiteren Nachweisen) an sich bekannt ist.
Gemäß einer bevorzugten Ausführungsform des Verfahrens erfolgt das Berechnen des Eigenähnlichkeitswerts in Schritt b) dadurch, daß für jedes Kandidatenmuster der Liste eine Ähnlichkeitsmatrix seiner Instanzen aufgestellt wird, deren Werte zum Eigenähnlichkeitswert der Liste verknüpft werden, bevorzugt unter Gewichtung durch die Kanalabdeckung der Kandidatenmuster der Liste. Es hat sich gezeigt, daß diese Ausführungsform zu einer raschen und stabilen Implementierung führt.
Zur weiteren Verbesserung des Erkennungsergebnisses können optional am Ende von Schritt b) jene Listen eines Kanals, deren Eigenähnlichkeitswert einen vorgegebenen Schwellwert nicht er- reicht, gelöscht werden. Bevorzugt ist dieser vorgegebene Schwellwert adaptiv, insbesondere ein Prozentsatz des höchsten Eigenähnlichkeitswerts aller Listen des Kanals, besonders bevorzugt mindestens 70%. In einer praktisch besonders geeigneten Ausführungsform beträgt der Schwellwert etwa 85%. Eine weitere vorteilhafte Variante des Verfahrens der Erfindung besteht darin, daß in Schritt c) für ein bestimmtes Kandidatenmuster einer Liste nur die Überlappungen zu jenen Instanzen der anderen Liste berücksichtigt werden, mit welchen die zeitlängsten Überlappungen vorliegen. In praktischen Versu- chen hat sich gezeigt, daß dies zu einer zufriedenstellenden Erkennungsrate führt und das Verfahren in diesem Schritt vereinfacht .
Gemäß einer weiteren bevorzugten Variante der Erfindung wird vorgesehen, daß bei dem Verknüpfen von Schritt e) für jede Liste jedes Kanals nur jene Koinzidenzwerte zu den Listen der anderen Kanäle berücksichtigt werden, die dort den jeweils höchsten Wert darstellen, was die Erkennungsrate noch weiter verbessert .
Aus demselben Grund wird bevorzugt vorgesehen, daß bei dem Verknüpfen von Schritt e) die für eine Liste berücksichtigten Koinzidenzwerte jeweils aufsummiert und die aufsummierten Koinzidenzwerte besonders bevorzugt mit dem Eigenähnlichkeitswert der Liste zum genannten Gesamtwert multipliziert werden.
Die Erfindung wird nachstehend anhand von bevorzugten Aus- führungsbeispielen unter Bezugnahme auf die begleitenden Zeichnungen näher erläutert, in denen zeigen: die Fig. 1 und 2 ein beispielhaftes mehrkanaliges Musikstück als Eingangssignal des vorliegenden Verfahrens in Musiknotation (Fig. 1) und Notensequenzschreibweise (Fig. 2);
Fig. 3 ein globales Flußdiagramm des erfindungsgemäßen Verfahrens;
Fig. 4 ein Beispiel einer Korrelationsmatrix für den Schritt al) des Verfahrens;
Fig. 5 das Ergebnis der Detektionsphase von Schritt al);
Fig. 6 ein Flußdiagramm für die Auswahlphase für die best- abdeckenden Muster in Schritt al) ;
Fig. 7 das Ergebnis von Schritt al) in Form einer ersten Liste von Kandidatenmustern und ihren Instanzen für einen Kanal;
Fig. 8 die Bedeutung der Liste von Fig. 7 in Bezug auf die Kanalabdeckung;
Fig. 9 verschiedene Segmentierungsarten eines Kanals für die Ähnlichkeitsbestimmung in Schritt a) des Verfahrens;
Fig. 10 ein Beispiel eines „Dynamic Programming"- Algorithmus zur Ausrichtung zweier Segmente; Fig. 11 das Ergebnis der Ausrichtung von Fig. 11 für den Ähnlichkeitsvergleich zweier Segmente;
Fig. 12 ähnliche und transitiv-ähnliche Segmente eines Kanals, welche die Instanzen eines erkannten Kandidatenmusters darstellen; Fig. 13 das Ergebnis von Schritt a) in Form einer weiteren Liste von Kandidatenmustern und ihren Instanzen für einen Kanal und eine bestimmte Segmentierungsart dieses Kanals;
Fig. 14 das gesamte Ergebnis des Schrittes a) , dargestellt als Satz von mehreren Listen für einen Kanal; Fig. 15 die Bedeutung der Listen von Fig. 14 in Form verschiedener möglicher Abdeckungen eines Kanals mit jeweils den Kandidatenmustern seiner Listen;
Fig. 16 eine Ähnlichkeitsmatrix für die Instanzen eines Kandidatenmusters einer Liste als Grundlage für die Berechnung des Eigenähnlichkeitswerts einer Liste gemäß Schritt b) ;
Fig. 17 einen Überlappungsvergleich zwischen den Musterinstanzen zweier Listen als Grundlage für die Berechnung der Koinzidenzwerte einer Liste gemäß Schritt c) ; Fig. 18 die Verknüpfung der Eigenähnlichkeits- und Koinzidenzwerte und die Berechnung des Gesamtwerts einer Liste gemäß Schritt d) ; und die Fig. 19 und 20 das Ergebnis der Anwendung des Verfah- rens auf das Eingangssignal der Fig. 1 und 2 in Form der möglichen (Fig. 19) und der besten (Fig. 20) Kanalabdeckungen, welch letztere die in den Kanälen erkannten Notenmuster darstellen.
Fig. 1 zeigt einen Ausschnitt aus einem Musikstück, das auf parallele Kanäle chi, Ch2 und ch3 (allgemein chp) verteilte Notensequenzen qi, q2 und q3 (allgemein qp) enthält, die in Fig. 2 schematisch dargestellt sind. Die Kanäle chp sind beispielsweise gesonderte MIDI-Kanäle für die verschiedenen Instrumente oder Stimmen des Musikstücks, auch wenn dies nicht zwingend ist, wie eingangs erläutert. Der Einfachheit halber werden bei den vorliegenden Beispielen in den Notensequenzen qp nur die Tonhöhen und Auftrittszeitpunkte der einzelnen Noten berücksichtigt, nicht jedoch weitere Notenparameter wie z.B. Notendauer, Lautstärke, Anschlagsgeschwindigkeit, Hüllkurve, Klang, Tonartenkontext usw. Es versteht sich jedoch, daß alle im Folgenden beschriebenen Vergleiche von einzelnen Noten bzw. Notenmustern sich ebensogut auch auf solche Parameter erstrecken können, falls gewünscht, d.h. in diesen Vergleichen dementsprechend auch mehrstufige oder mehrdimensionale Identitäts- oder Ähnlichkeitsver- gleiche zwischen mehreren Parametern durchgeführt werden können .
Darüber hinaus werden in den vorliegenden Beispielen der Einfachheit halber auch nur monophone Notensequenzen in jedem Kanal betrachtet. Es versteht sich jedoch, daß das hier vorge- stellte Verfahren ebensogut für polyphone Notensequenzen in den Kanälen geeignet ist, wozu dementsprechend erweiterte Identitäts- bzw. Ähnlichkeitsvergleiche, z.B. Akkordvergleiche und Tonarten-Kontextvergleiche usw., angestellt werden können.
Wie somit für den Fachmann ersichtlich, ist das hier vor- gestellte Verfahren in einfacher Weise auf multiple Notenpara- metervergleiche und polyphone Notensequenzen skalierbar.
Fig. 3 zeigt den globalen Ablauf des Verfahrens anhand seiner grundlegenden fünf Schritte al), a) , b) , c) und d) , wel- che im Anschluß im Detail erörtert werden. Diese fünf globalen Schritte sind: al) Detektieren der in einem Kanal ident wiederkehrenden Muster, daraus Auswählen der den Kanal bestabdeckenden Muster und Speichern derselben in einer Liste von Kandidatenmustern mit ihren jeweiligen Instanzen pro Kanal. a) wiederholtes Segmentieren jedes Kanals unter Variierung von Segmentlänge und -beginn und, für jede Segmentierungsart, Bestimmen zueinander ähnlicher Segmente und Speichern derselben in weiteren Listen von Kandidatenmustern mit ihren jeweiligen Instanzen, und zwar jeweils einer Liste pro Segmentierungsart und Kanal; b) Berechnen eines Eigenähnlichkeitswerts für jede Liste, welcher auf den Ähnlichkeiten der Instanzen jedes Kandi- datenmusters einer Liste untereinander basiert; c) Berechnen von Koinzidenzwerten für jede Liste jedes Kanals gegenüber den Listen aller anderen Kanäle, welcher jeweils auf den Überlappungen von Instanzen eines Kandidatenmusters der einen Liste mit Instanzen eines Kandidatenmuster der anderen Liste basiert, wenn sich diese zumindest zweimal überlappen; und d) Verknüpfen der Eigenähnlichkeits- und Koinzidenzwerte jeder Liste zu einem Gesamtwert pro Liste und Verwenden der Musterkandidaten der Listen mit dem höchsten Gesamtwert in jedem Kanal als erkannte Notenmuster des Kanals.
Die dargestellte Abfolge der Schritte al) - a) - b) - c) - d) ist nur insoweit zwingend, als manche Schritte das Ergebnis anderer voraussetzen; ansonsten ist die Abfolge beliebig. Beispielsweise könnte die Abfolge der Schritte al) und a) ver- tauscht werden, oder die Abfolge der Schritte b) und c) , usw.
In einer vereinfachten Ausführungsform des Verfahrens kann optional auf Schritt al) verzichtet werden, mit entsprechend eingeschränktem Anwendungsspektrum des Verfahrens, wie eingangs erörtert . Die Schritte al) bis d) werden nun im einzelnen ausführlich beschrieben.
al) Musterdetektion mittels Korrelationsmatrix In Schritt al) wird zum Detektieren der in einem Kanal chp ident wiederkehrenden Notenmuster (identen „Loops") zunächst für jeden Kanal chp eine Korrelationsmatrix gemäß Hsu Jia-Lien et al. (aaO) aufgestellt. Fig. 4 zeigt ein Beispiel einer solchen Korrelationsmatrix: Die erste Zeile und die erste Spalte enthält jeweils die gesamte Notensequenz eines Kanals, in welcher Muster zu detektieren sind; und nur ein Dreieck der Matrix ist relevant. Der erste Eintrag „1" in einer Zeile bedeutet, daß eine Note in der Sequenz bereits das zweite Mal auftritt; ein Eintrag „2" bedeutet, daß das aus dieser und der vorhergehenden Note bestehende Muster der Länge 2 („2er-Loop") das zweite Mal auftritt; der Eintrag „3", daß das aus dieser, der vorhergehenden und der vorvorhergehenden Noten bestehende Mu- ster der Länge 3 („3er-Loop") das zweite Mal in dieser Zeile auftritt, usw. Für Details des Korrelationsmatrix-Verfahrens sei auf Hsu Jia-Lien et al. (aaO) verwiesen.
Durch statistische Auswertung der Einträge in der Korrelationsmatrix Fig. 4 läßt sich für jeden Kanal eine vorläufige Liste gemäß Fig. 5 erstellen, in welcher als ident wiederkehrend gefundene Notenmuster mlr mπ, mm, mIV, usw. mit den Positionen ihres Auftretens bzw. Vorkommens in der Notensequenz qp, d.h. ihren sog. „Instanzen", sowie ihrer Länge und Häufigkeit aufgeführt sind. Aus der vorläufigen Liste von Fig. 5 werden nun mit Hilfe des in Fig. 6 skizzierten Suchverfahrens jene Notenmuster als „Kandidatenmuster" für die weitere Verarbeitung herausgesucht, welche den Kanal chp möglichst weitgehend und auch überlappungsfrei abdecken. Dazu wird gemäß Fig. 6 in einer Schleife die vorläufige Liste Fig. 5 abgearbeitet und jeweils (i) das „beste" Muster mτ, mτi usw. gesucht, (ii) dieses als Kandidatenmuster πiia, m2a usw. in einer ersten Liste Li (Fig. 7) mitsamt seinen Instanzen abgespeichert, und (iii) alle mit diesem Kandidatenmuster überlappende Muster werden aus der vorläufigen Liste Fig. 5 gelöscht.
Das in Schritt (i) „beste" Muster ist dabei jeweils das in der vorläufigen Liste Fig. 5 häufigste und/oder längste Muster In1, In11 usw. Besonders bevorzugt wird folgendes Kriterium für das „beste" Muster eingesetzt:
Es wird das häufigste Muster ausgewählt , außer es gibt ein längeres Kandidatenmuster, das mehr als 75% des Kanals abdeckt und mindestens 2/3 so oft auftritt.
Als Ergebnis von Schritt al) ergibt sich somit pro Kanal chp eine erste Liste Li von Kandidatenmustern itiia, itiib (allgemein ItIix) , welche den Kanal chp bzw. dessen Notensequenz qp überlappungsfrei und möglichst weitgehend, d.h. möglichst lückenfrei abdecken, siehe Fig. 8.
a) Musterdetektion mittels Segmentähnlichkeitsvergleich
In Schritt a) wird ein zweiter Ansatz verfolgt. Jeder Kanal chp (bzw. seine Notensequenz qp) wird wiederholt und jeweils auf verschiedene Arten segmentiert, und zwar unter Vari- ierung von Segmentlänge und -beginn. Fig. 9 zeigt fünf beispielhafte Segmentierungsarten I - V, wobei die Segmentlänge in Vielfachen der Takteinheit des Musikstücks, d.h. der Dauer eines Taktschlags (beat) des Musikstücks, variiert wird; z.B. bei einem 4/4-Takt ist die Takteinheit eine Viertelnote. Die gezeigten Segmentierungsarten I und II beruhen auf einer Segmentierung in Segmenten mit einer Länge von zwei Taktschlägen, wobei in der Segmentierung II der Segmentbeginn um einen Taktschlag versetzt wurde.
Die Segmentierungsarten III - V basieren auf einer Seg- mentlänge von drei Taktschlägen und einem sukzessivem Versatz des Segmentbeginns um jeweils einen Taktschlag.
Es versteht sich, daß dieses Konzept entsprechend auf beliebige Segmentierungslängen, -beginne und auch beliebig feine Quantisierungseinheiten (beats) der Notensequenzen erweitert werden kann.
Bevorzugt wird dabei die Segmentlänge vom Zweifachen der durchschnittlichen Notendauer des Musikstücks bis maximal zur halben Länge des gesamten Musikstücks variiert, da die maximale Länge eines Notenmusters höchstens die halbe Länge des Musikstücks sein kann. Falls gewünscht, könnte zur Verkürzung das Verfahren auch früher abgebrochen werden, d.h. die Segmentlänge beispielsweise nur bis zu einer vorgegebenen Anzahl von Takten variiert werden.
Für jede mögliche Segmentierungsart I, II, III usw. wird nun die Ähnlichkeit der Segmente Si, S2 usw. untereinander ermittelt, und zwar bevorzugt mit Hilfe des in der Technik bekannten „Dynamic Programming"-Verfahrens . Zur Erläuterung dieses Verfahrens sei hier nur kurz auf Fig. 10 verwiesen, in welcher Notensequenzen aus zwei beispielhaften Segmenten S3 und St einander in einer Matrix gegenübergestellt werden. Gemäß den Regeln des „Dynamic Programming"- Algorithmus werden nun Gewichtungen für das Fortschreiten von Zelle zu Zelle vergeben, z.B. in dem vorliegenden Beispiel die „Dynamic Programming"-Gewichtungen {0, 0, 0, 1} als {„Strafe für Insert", „Strafe für Delete", „Strafe für Replace", „Punkte für Match"}. Für Details des „Dynamic Programming"-Verfahrens sei hier auf Kilian Jürgen et al. (aaO) und Hu Ning et al. (aaO) verwiesen, welche auch weitere Literaturnachweise dazu enthalten.
Mit Hilfe des „Dynamic Programming"-Ausrichtverfahrens von Fig. 10 können selbst nicht-idente, d.h. bloß ähnliche und sogar ungleich lange Notensequenzen in den Segmenten zueinander ausgerichtet werden. Fig. 11 zeigt das erhaltene Ausrichtergebnis .
Die Ähnlichkeit der Segmente S3 und St wird anschließend mit Hilfe eines entsprechend gewählten Punktebewertungsschemas zwischen 0% (unähnlich) und 100% (ident) bewertet, beispiels- weise anhand der Anzahl identer Noten, der Anzahl von Lücken, des Tonhöhenabstandes abweichender Noten usw. Zwei Segmente S3, St werden anschließend als „ähnlich" erkannt, wenn ihr derart bestimmter Ähnlichkeitswert über einem vorgegebenen Schwellwert liegt, bevorzugt über 50%. Auf diese Weise werden nun alle Segmente S3 mit allen anderen Segmenten St einer Segmentierungsart I, II usw. eines Kanals chp verglichen. Dies führt beispielsweise für die Segmentierungsart II des Kanals chp zu dem Erkennen einer Ähnlichkeit zwischen den Segmenten Si, S3 und Se, wie in Fig. 12 gezeigt: Die Segmente Si und S3 sind hier zu 50% ähnlich, die Segmente S3 und Se zu 60% ähnlich, und die Segmente Si und Se „transitivähnlich" zu 40%. Alle zueinander ähnlichen oder auch nur transitivähnlichen Segmente werden nun wieder als Instanzen ix eines Kandidatenmusters aufgefaßt, das sich aus der Notensequenz eines (z.B. des ersten) dieser Segmente ergibt. Die auf diese Weise für eine Segmentierungsart eines Kanals aufgefundenen Kandidatenmuster werden in Form einer weiteren Liste L2 von Kandidatenmustern m2a, m2b usw. mit ihren jeweiligen Instanzen ii, i2 usw. gespeichert, siehe Fig. 13.
Alle Listen L2, L3 usw. für alle möglichen Sequentierung- sarten I, II usw. eines Kanals chp, zusammen mit der zuvor er- örterten ersten Liste Li aus Schritt al), ergeben einen Satz von Listen Ln für jeden Kanal chp, siehe Fig. 14, welcher verschiedene mögliche Abdeckungen des Kanals chp mit Kandidatenmustern repräsentiert, siehe Fig. 15.
Die Listen Ln werden nun in den folgenden Schritten b) , c) und d) bewertet.
b) Berechnung der Eigenähnlichkeitswerte
Zunächst wird in Schritt b) für jede Liste Ln ein Eigen- ähnlichkeitswert En auf Grundlage von Ähnlichskeitsmatrizen für alle Kandidatenmuster mna, mnb usw. (allgemein mnx) der Liste Ln berechnet. Fig. 16 zeigt eine beispielhafte Ähnlichkeitsmatrix für die Instanzen ilf i2, i3 und i4 eines Kandidatenmusters mn der Liste Ln: Die Zellen der Matrix geben den Ähnlichkeitsgrad, beispielsweise wie nach dem „Dynamic Programming"-Schritt von
Schritt a) ermittelt, wieder; z.B. beträgt hier die Ähnlichkeit zwischen Instanz ii und Instanz i3 80%.
Aus allen Werten der Ähnlichkeitsmatrix Fig. 16 wird nun ein Eigenähnlichkeitswert Enx für das Kandidatenmuster mnx er- mittelt, beispielsweise durch Aufsummieren in der Form:
Em = ^ Ähnlichkeit zwischen ik und i, k, l Alternativ kann auch ein Bewertungsschema eingesetzt werden, welches die Werte in den Zellen der Ähnlichkeitsmatrix statistisch aus- bzw. bewertet, bevorzugt in der Form: - wenn mindestens eine Zelle pro Zeile den Eintrag „1" hat, dann wird Enx um 2 inkrementiert d.h.
Enx • = Enx + z ; wenn nicht, dann wird Enx nur um den Durchschnittswert aller Zellen dieser Zeile inkrementiert, d.h. Enx := Enx + Zeilendurchschnitt.
Der Eigenähnlichkeitswert Enx des Kandidatenmusters mnx wird auch als „Loopfitness" des Kandidatenmusters mnx bezeichnet .
Der Eigenähnlichkeitswert En der Liste Ln ergibt sich an- schließend als Summe der Eigenähnlichkeitswerte Enx aller Kandidatenmuster mnx der Liste Ln, multipliziert mit der Kanalabdeckung P, welche alle Instanzen aller Kandidatenmuster mnx der Liste Ln erreichen, d.h:
E„=∑Enx*Pn.
X
Unter der Kanalabdeckung Pn einer Liste Ln eines Kanals chp wird entweder die zeitliche Abdeckung des Kanals verstanden, als Summe der Zeitdauern tnxi aller Instanzen i aller Kandidatenmuster mnx des Kanals, bezogen auf die Gesamtdauer Tp des Kanals chp; oder
- die notenmäßige Abdeckung des Kanals, als Summe der Notenanzahlen nnxi in allen Instanzen i aller Kandidatenmuster mnx des Kanals, bezogen auf die Gesamtanzahl Np von Noten des Kanals chp; oder bevorzugt sowohl die zeitliche als auch die notenmäßige Abdek- kung in gewichteter Form, beispielsweise gleich gewichtet, d.h. :
Figure imgf000014_0001
P = . + .*>
Nr In einem optionalen Schritt können nach der Bestimmung der Eigenähnlichkeitswerte En der Listen Ln, beispielsweise unmittelbar im Anschluß an Schritt b) , für einen bestimmten Kanal chp all jene Listen Ln des Kanals chp gelöscht werden, deren Eigenähnlichkeitswerte En einen vorgegebenen Schwellwert nicht erreichen. Der Schwellwert kann bevorzugt adaptiv bzw. dynamisch vorgegeben werden, beispielsweise als Prozentsatz des höchsten Eigenähnlichkeitswerts En aller Listen Ln des Kanals chp, z.B. als mindestens 70% oder besonders bevorzugt als etwa 85% des höchsten Eigenähnlichkeitswerts En aller Listen Ln des Kanals chp.
c) Berechnung der Koinzidenzwerte
In Schritt c) werden für jede Liste Ln Koinzidenzwerte berechnet, und zwar zwischen jeder Liste Ln jedes Kanals chp und jeder Liste Ln jedes anderen Kanals chp- , wie in den Fig. 17 und 18 skizziert. Fig. 18 zeigt - stellvertretend für alle diese Koinzidenzwertberechnungen - die erste Liste L21 des Kanals ch2, welche jeweils mit allen anderen Listen (jedoch nicht mit den Listen des eigenen Kanals ch2) verglichen wird, um jeweils Koinzidenzwerte K21-12, K21-31 usw. , allgemein Kpn-P'n' (mit p' Φ p) , zu be- rechnen, aus denen dann ein Gesamt-Koinzidenzwert Kpn für jede Liste Lpn ermittelt wird, wie weiter unten noch beschrieben.
Gemäß Fig. 17 wird ein Koinzidenzwert aus den zeitlichen Überlappungen u der Instanzen I1 zweier miteinander zu vergleichenden Listen - in Fig. 17 der Einfachheit halber nur als Lx und L2 bezeichnet - berechnet: Der Koinzidenzwert Kpn-P'n- ist die Summe aller Zeitdauern tx all jener Instanzüberlappungen u, welche wie nachstehend berücksichtigt werden, bezogen auf die Zeitdauer T des gesamten betrachteten Kanals chp.
Dabei werden nur solche Überlappungen u von Instanzen I1 eines Kandidatenmusters mix der Liste Li mit Instanzen I1 der Kandidatenmuster m2x der anderen Liste L2 berücksichtigt, welche zumindest zweimal auftreten, und auch dann nur jene Überlappungen u, welche die - kandidatenmusterbezogen - längsten Überlap- pungszeiten tx erzeugen. In dem Beispiel von Fig. 17 bedeutet dies: Das Kandidatenmuster mlb (d.h. seine drei Instanzen ii, ±2, i-3) überlappt sich dreimal mit Instanzen ein und desselben Kandidatenmusters der zweiten Liste L2/ und zwar mit den drei Instanzen ilf i2 und i5 des Kandidatenmusters m2a zu den Überlappungszeiten ti, t2 und ts; und nur diese Überlappungszeiten werden für das Kandidatenmuster mib berücksichtigt.
Unberücksichtigt bleiben alle weiteren Überlappungen des Kandidatenmusters mχb mit Instanzen anderer Kandidatenmuster, z.B. den Instanzen ±χ und i4 von m2b, weil diese Überlappungen kürzer sind als die vorgenannten. Auch die nochmalige Überlappung der Instanz i2 von πiib mit der Instanz i3 von πi2a wird nicht gezählt, sondern nur jeweils eine einzige Doppelüberlappung pro Instanz der ersten Liste Li, und zwar die zeitlängste. Ebenso bleiben nochmalige Überlappungen v der Instanzen ix und 2.2 des Kandidatenmusters πiia mit den Instanzen ii und i2 des Kandidatenmusters m2b unberücksichtigt, weil bereits die Überlappungen u der Instanzen i3 und i4 von mla mit den Instanzen ii und iu von m2a berücksichtigt wurden. Der Koinzidenzwert Kpn-P'n' kann optional für exakt in ihrem Beginn oder Ende zusammenfallende Instanzen - im gezeigten Beispiel von Fig. 17 die zusammenfallenden Beginne der ersten Instanzen ii der Kandidatenmuster iτiib und m2a sowie das Zusammenfallen der Enden der dritten Instanzen i3 von mla und m2a bzw. der Beginne der vierten Instanzen i4 von mχa und m2a - für jeden Zusammenfall besonders erhöht, z.B. um einen vorgegebenen „Bonuswert" inkrementiert werden.
Zurückkommend auf die allgemeine Bezeichnungsweise von Fig. 18 ergeben sich damit beispielsweise für die Liste Lpn des Kanals chp die folgenden Koinzidenzwerte Kpn-P'n' gegenüber den Listen aller anderen Kanäle:
Figure imgf000016_0001
K Pn-P^=^γ- mit Tp = Tp-. P
d) Verknüpfung der Eigenähnlichkeits- und Koinzidenzwerte Die für jede Liste Lpn ermittelten Eigenähnlichkeitswerte Epn und Koinzidenzwerte Kpn-P'n< werden zu einem Gesamtwert Gpn der Liste Lpn verknüpft, beispielsweise durch Aufsummieren, Multiplizieren oder andere mathematische Operationen. Bevorzugt wird die folgende Verknüpfung angewandt: Wie in Fig. 18 veranschaulicht, werden für eine Liste, beispielsweise die erste Liste L21 des zweiten Kanals ch2, nur jene Koinzidenzwerte K2i-P'n' gegenüber den Listen Lp-n. der anderen Kanäle chp< berücksichtigt, welche dort in jedem Kanal jeweils den höchsten Wert haben. In dem gezeigten Beispiel sind das der Koinzidenzwert K21-12 zur zweiten Liste Li2 des ersten Kanals chi und der Koinzidenzwert K21-31 zur ersten Liste L3i des dritten Kanals
Ch3.
Diese kanalmaximalen Koinzidenzwerte werden zu einem Ge- samt-Koinzidenzwert Kpn für die Liste Lpn aufsummiert, d.h.:
Figure imgf000017_0001
Der Gesamt-Koinzidenzwert Kpn der Liste Lpn wird anschlie- ßend mit dem Eigenähnlichkeitswert Epn der Liste Lpn multipliziert, um einen Gesamtwert Gpn für die Liste Lpn zu ergeben:
pn pn pn
Anschließend wird in jedem Kanal chp jeweils jene Liste Lp gesucht, welche den höchsten Gesamtwert Gp
Figure imgf000017_0002
hat. In dem in Fig. 19 gezeigten Beispiel, welches auf den Eingangssequenzen der Fig. 1 und 2 beruht, sind das die Liste Li2 als Ergebnisliste Li des ersten Kanals chi, die Liste L2i als Ergebnisliste L2 des zweiten Kanals ch2 und die Liste L33 als Ergebnisliste L3 des dritten Kanals ch3. Die Kandidatenmuster mpx der Listen Lp stellen damit die für jeden Kanal chp - und zwar unter Berücksichtigung seiner Strukturbeziehungen zu allen anderen Kanälen - jeweils bester- kannten, ähnlich wiederkehrenden Notenmuster des Kanals dar, wie in Fig. 20 gezeigt.
Die Erfindung ist nicht auf die dargestellten Ausführungsformen beschränkt, sondern umfaßt alle Varianten und Modifika- tionen, die in den Rahmen der angeschlossenen Ansprüche fallen.

Claims

Patentansprüche :
1. Verfahren zur Erkennung ähnlich wiederkehrender Muster von Noten in einem Musikstück, das auf parallele Kanäle (ch) verteilte Notensequenzen (q) enthält, mit den Schritten: a) wiederholtes Segmentieren jedes Kanals (ch) unter Variierung von Segment länge und -beginn und, für jede Segmentierungsart, Bestimmen zueinander ähnlicher Segmente (S) und Speichern derselben in Listen (L) von Kandidatenmustern (m) mit ih- ren jeweiligen Instanzen (i) , und zwar jeweils einer Liste pro Segmentierungsart und Kanal; b) Berechnen eines Eigenähnlichkeitswerts (E) für jede Liste (L) , welcher auf den Ähnlichkeiten der Instanzen (i) jedes Kandidatenmusters (m) einer Liste untereinander basiert; c) Berechnen von Koinzidenzwerten (K) für jede Liste (L) jedes Kanals (ch) gegenüber den Listen aller anderen Kanäle, welcher jeweils auf den Überlappungen (u) von Instanzen (i) eines Kandidatenmusters (m) der einen Liste (L) mit Instanzen (i) eines Kandidatenmuster (m) der anderen Liste (L) basiert, wenn sich diese zumindest zweimal überlappen; und d) Verknüpfen der Eigenähnlichkeits- und Koinzidenzwerte (E, K) jeder Liste (L) zu einem Gesamtwert (G) pro Liste und Verwenden der Musterkandidaten (m) der Listen (L) mit dem höchsten Gesamtwert (G) in jedem Kanal (ch) als erkannte Notenmu- ster des Kanals.
2. Verfahren nach Anspruch 1, dadurch gekennzeichnet, daß in Schritt a) zusätzlich folgender Schritt ausgeführt wird: al) Detektieren der in einem Kanal (ch) ident wiederkehrenden Muster (m) , daraus Auswählen der den Kanal bestabdecken- den Muster und Speichern derselben in einer weiteren Liste (L) von Kandidatenmustern (m) mit ihren jeweiligen Instanzen (i) pro Kanal.
3. Verfahren nach Anspruch 2, dadurch gekennzeichnet, daß in Schritt al) das Detektieren ident wiederkehrender Muster (m) mittels des an sich bekannten Korrelationsmatrix-Verfahrens durchgeführt wird.
4. Verfahren nach Anspruch 2 oder 3, dadurch gekennzeichnet, daß in Schritt al) das Auswählen der bestabdeckenden Muster (m) durch iteratives Auswählen des jeweils häufigsten und/oder längsten Musters aus den detektierten Mustern erfolgt.
5. Verfahren nach einem der Ansprüche 1 bis 4, dadurch gekennzeichnet, daß in Schritt a) die Segmentlänge in Vielfachen der Takteinheit des Musikstücks variiert wird.
6. Verfahren nach Anspruch 5, dadurch gekennzeichnet, daß die Segmentlänge vom Zweifachen der durchschnittlichen No- tendauer des Musikstücks bis zur halben Länge des Musikstücks variiert wird.
7. Verfahren nach einem der Ansprüche 1 bis 6, dadurch gekennzeichnet, daß in Schritt a) das Bestimmen zueinander ähnlicher Segmente (S) durch gegenseitiges Ausrichten der Noten zweier Segmente, Bestimmen eines Übereinstimmungsgrades der beiden Segmente und Erkennen auf Ähnlichkeit, wenn der Übereinstimmungsgrad einen vorgegebenen Schwellwert übersteigt, erfolgt.
8. Verfahren nach Anspruch 7, dadurch gekennzeichnet, daß das Ausrichten der Noten mittels des an sich bekannten „Dynamic Programming"-Verfahrens erfolgt.
9. Verfahren nach einem der Ansprüche 1 bis 8, dadurch gekennzeichnet, daß in Schritt b) für jedes Kandidatenmuster (m) der Liste (L) eine Ähnlichkeitsmatrix seiner Instanzen (i) aufgestellt wird, deren Werte zum Eigenähnlichkeitswert (E) der Liste (L) verknüpft werden, bevorzugt unter Gewichtung durch die Kanalabdeckung (P) der Kandidatenmuster (m) der Liste (L) .
10. Verfahren nach einem der Ansprüche 1 bis 9, dadurch gekennzeichnet, daß am Ende von Schritt b) jene Listen (L) ei- nes Kanals (ch) , deren Eigenähnlichkeitswert (E) einen vorgegebenen Schwellwert nicht erreicht, gelöscht werden.
11. Verfahren nach Anspruch 10, dadurch gekennzeichnet, daß der vorgegebene Schwellwert ein Prozentsatz des höchsten Eigenähnlichkeitswerts (E) aller Listen (L) des Kanals (ch) ist, bevorzugt mindestens 70%, besonders bevorzugt etwa 85%.
12. Verfahren nach einem der Ansprüche 1 bis 11, dadurch gekennzeichnet, daß in Schritt c) für ein bestimmtes Kandidatenmuster einer Liste (L) nur die Überlappungen (u) zu jenen Instanzen (i) der anderen Liste (L) berücksichtigt werden, mit welchen die zeitlängsten Überlappungen vorliegen.
13. Verfahren nach einem der Ansprüche 1 bis 12, dadurch gekennzeichnet, daß bei dem Verknüpfen von Schritt e) für jede Liste (L) jedes Kanals (ch) nur jene Koinzidenzwerte (K) zu den Listen (L) der anderen Kanäle (ch) berücksichtigt werden, die dort den jeweils höchsten Wert darstellen.
14. Verfahren nach einem der Ansprüche 1 bis 13, dadurch gekennzeichnet, daß bei dem Verknüpfen von Schritt e) die für eine Liste (L) berücksichtigten Koinzidenzwerte (K) jeweils aufsummiert werden.
15. Verfahren nach Anspruch 14, dadurch gekennzeichnet, daß bei dem Verknüpfen von Schritt e) die aufsummierten Koinzidenzwerte (K) mit dem Eigenähnlichkeitswert (E) der Liste (L) zum genannten Gesamtwert (G) multipliziert werden.
PCT/AT2009/000401 2008-10-22 2009-10-15 Verfahren zur erkennung von notenmustern in musikstücken WO2010045665A1 (de)

Priority Applications (2)

Application Number Priority Date Filing Date Title
US13/125,200 US8283548B2 (en) 2008-10-22 2009-10-15 Method for recognizing note patterns in pieces of music
EP09755830A EP2351017B1 (de) 2008-10-22 2009-10-15 Verfahren zur erkennung von notenmustern in musikstücken

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
EP08450164A EP2180463A1 (de) 2008-10-22 2008-10-22 Verfahren zur Erkennung von Notenmustern in Musikstücken
EP08450164.2 2008-10-22

Publications (1)

Publication Number Publication Date
WO2010045665A1 true WO2010045665A1 (de) 2010-04-29

Family

ID=40365403

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/AT2009/000401 WO2010045665A1 (de) 2008-10-22 2009-10-15 Verfahren zur erkennung von notenmustern in musikstücken

Country Status (3)

Country Link
US (1) US8283548B2 (de)
EP (2) EP2180463A1 (de)
WO (1) WO2010045665A1 (de)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20210241734A1 (en) * 2020-01-31 2021-08-05 Obeebo Labs Ltd. Systems, devices, and methods for computer-generated musical note sequences

Families Citing this family (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5935503B2 (ja) * 2012-05-18 2016-06-15 ヤマハ株式会社 楽曲解析装置および楽曲解析方法
JP5799977B2 (ja) * 2012-07-18 2015-10-28 ヤマハ株式会社 音符列解析装置
US9263013B2 (en) * 2014-04-30 2016-02-16 Skiptune, LLC Systems and methods for analyzing melodies
US11132983B2 (en) 2014-08-20 2021-09-28 Steven Heckenlively Music yielder with conformance to requisites
JP6160598B2 (ja) * 2014-11-20 2017-07-12 カシオ計算機株式会社 自動作曲装置、方法、およびプログラム
JP6160599B2 (ja) 2014-11-20 2017-07-12 カシオ計算機株式会社 自動作曲装置、方法、およびプログラム
US9824719B2 (en) 2015-09-30 2017-11-21 Apple Inc. Automatic music recording and authoring tool
US9804818B2 (en) 2015-09-30 2017-10-31 Apple Inc. Musical analysis platform
US9852721B2 (en) 2015-09-30 2017-12-26 Apple Inc. Musical analysis platform
US9672800B2 (en) * 2015-09-30 2017-06-06 Apple Inc. Automatic composer
US10074350B2 (en) * 2015-11-23 2018-09-11 Adobe Systems Incorporated Intuitive music visualization using efficient structural segmentation

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2354095A (en) * 1999-05-21 2001-03-14 Yamaha Corp Supplying musical content via a communication network
US6225546B1 (en) * 2000-04-05 2001-05-01 International Business Machines Corporation Method and apparatus for music summarization and creation of audio summaries
DE102004047068A1 (de) * 2004-09-28 2006-04-06 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Vorrichtung und Verfahren zum Gruppieren von zeitlichen Segmenten eines Musikstücks

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TW333644B (en) * 1995-10-30 1998-06-11 Victor Company Of Japan The method for recording musical data and its reproducing apparatus
US6747201B2 (en) * 2001-09-26 2004-06-08 The Regents Of The University Of Michigan Method and system for extracting melodic patterns in a musical piece and computer-readable storage medium having a program for executing the method
JP3613254B2 (ja) * 2002-03-20 2005-01-26 ヤマハ株式会社 楽曲データの圧縮方法

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2354095A (en) * 1999-05-21 2001-03-14 Yamaha Corp Supplying musical content via a communication network
US6225546B1 (en) * 2000-04-05 2001-05-01 International Business Machines Corporation Method and apparatus for music summarization and creation of audio summaries
DE102004047068A1 (de) * 2004-09-28 2006-04-06 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Vorrichtung und Verfahren zum Gruppieren von zeitlichen Segmenten eines Musikstücks

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
JIA-LIEN HSU ET AL: "Discovering Nontrivial Repeating Patterns in Music Data", IEEE TRANSACTIONS ON MULTIMEDIA, IEEE SERVICE CENTER, PISCATAWAY, NJ, US, vol. 3, no. 3, 1 September 2001 (2001-09-01), pages 311 - 325, XP011036252, ISSN: 1520-9210 *
JOSE R. ZAPATA ET AL: "Efficient Detection of Exact Redundancies in Audio Signals", AUDIO ENGINNERING SOCIETY 125TH CONVENTION (CONVENTION PAPER 7504), 2 October 2008 (2008-10-02) - 5 October 2008 (2008-10-05), San Francisco, CA, USA, XP002517579, Retrieved from the Internet <URL:http://www.aes.org/e-lib/browse.cfm?elib=14657> [retrieved on 20090303] *

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20210241734A1 (en) * 2020-01-31 2021-08-05 Obeebo Labs Ltd. Systems, devices, and methods for computer-generated musical note sequences
US11948542B2 (en) * 2020-01-31 2024-04-02 Obeebo Labs Ltd. Systems, devices, and methods for computer-generated musical note sequences

Also Published As

Publication number Publication date
US20110259179A1 (en) 2011-10-27
EP2351017A1 (de) 2011-08-03
US8283548B2 (en) 2012-10-09
EP2351017B1 (de) 2013-01-02
EP2180463A1 (de) 2010-04-28

Similar Documents

Publication Publication Date Title
EP2351017B1 (de) Verfahren zur erkennung von notenmustern in musikstücken
EP1371055B1 (de) Vorrichtung zum analysieren eines audiosignals hinsichtlich von rhythmusinformationen des audiosignals unter verwendung einer autokorrelationsfunktion
EP1797552B1 (de) Verfahren und vorrichtung zur extraktion einer einem audiosignal zu grunde liegenden melodie
EP2099024B1 (de) Verfahren zur klangobjektorientierten Analyse und zur notenobjektorientierten Bearbeitung polyphoner Klangaufnahmen
EP1523719B1 (de) Vorrichtung und verfahren zum charakterisieren eines informationssignals
DE10117870B4 (de) Verfahren und Vorrichtung zum Überführen eines Musiksignals in eine Noten-basierte Beschreibung und Verfahren und Vorrichtung zum Referenzieren eines Musiksignals in einer Datenbank
DE10123366C1 (de) Vorrichtung zum Analysieren eines Audiosignals hinsichtlich von Rhythmusinformationen
WO2006039995A1 (de) Verfahren und vorrichtung zur harmonischen aufbereitung einer melodielinie
WO2006039993A1 (de) Verfahren und vorrichtung zur glättung eines melodieliniensegments
EP1794743A1 (de) Vorrichtung und verfahren zum gruppieren von zeitlichen segmenten eines musikstücks
WO2006039992A1 (de) Extraktion einer einem audiosignal zu grunde liegenden melodie
DE102004028693B4 (de) Vorrichtung und Verfahren zum Bestimmen eines Akkordtyps, der einem Testsignal zugrunde liegt
WO2006005448A1 (de) Verfahren und vorrichtung zur rhythmischen aufbereitung von audiosignalen
DE102004033829B4 (de) Verfahren und Vorrichtung zur Erzeugung einer Polyphonen Melodie
EP1671315B1 (de) Vorrichtung und verfahren zum charakterisieren eines tonsignals
EP1377924B1 (de) VERFAHREN UND VORRICHTUNG ZUM EXTRAHIEREN EINER SIGNALKENNUNG, VERFAHREN UND VORRICHTUNG ZUM ERZEUGEN EINER DAZUGEHÖRIGEN DATABANK und Verfahren und Vorrichtung zum Referenzieren eines Such-Zeitsignals
EP1743324A1 (de) Vorrichtung und verfahren zum analysieren eines informationssignals
Lock et al. Investigating structure of contemporary music applying tension design and empirical perception analysis

Legal Events

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

Ref document number: 09755830

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

WWE Wipo information: entry into national phase

Ref document number: 2009755830

Country of ref document: EP

WWE Wipo information: entry into national phase

Ref document number: 13125200

Country of ref document: US