Music Synchronization

Similar documents
Information Retrieval for Music and Motion

Information Retrieval for Music and Motion

Package paracol: Yet Another Multi-Column Package to Typeset Columns in Parallel

Proximity and Data Pre-processing

LIVE TRACKING OF MUSICAL PERFORMANCES USING ON-LINE TIME WARPING. Simon Dixon

Real-time Audio Tracking Using Reference Recordings

ALIGNED HIERARCHIES: A MULTI-SCALE STRUCTURE-BASED REPRESENTATION FOR MUSIC-BASED DATA STREAMS

SyncPlayer Public Demo

Sequence representation of Music Structure using Higher-Order Similarity Matrix and Maximum likelihood approach

Audio Content-Based Music Retrieval

Dynamic Time Warping & Search

Dynamic Time Warping

Package paracol: Yet Another Multi-Column Package to Typeset Columns in Parallel

Workshop W14 - Audio Gets Smart: Semantic Audio Analysis & Metadata Standards

Two-layer Distance Scheme in Matching Engine for Query by Humming System

Music Signal Spotting Retrieval by a Humming Query Using Start Frame Feature Dependent Continuous Dynamic Programming

Lecture 9: Core String Edits and Alignments

Multimedia Database Systems. Retrieval by Content

MIDI Player Pro v1.3.0 basic users guide By Hans Petter Selasky, November 2015

Shape Similarity Measurement for Boundary Based Features

Chapter 3: Search. c D. Poole, A. Mackworth 2010, W. Menzel 2015 Artificial Intelligence, Chapter 3, Page 1

ACCURATE REAL-TIME WINDOWED TIME WARPING

Divide and Conquer Algorithms. Problem Set #3 is graded Problem Set #4 due on Thursday

CHROMA AND MFCC BASED PATTERN RECOGNITION IN AUDIO FILES UTILIZING HIDDEN MARKOV MODELS AND DYNAMIC PROGRAMMING. Alexander Wankhammer Peter Sciri

Algorithms for Data Science

11.1 Facility Location

The Cinderella.2 Manual

MULTIPLE HYPOTHESES AT MULTIPLE SCALES FOR AUDIO NOVELTY COMPUTATION WITHIN MUSIC. Florian Kaiser and Geoffroy Peeters

Search Engines Chapter 2 Architecture Felix Naumann

Scan Scheduling Specification and Analysis

Finite Element Analysis Prof. Dr. B. N. Rao Department of Civil Engineering Indian Institute of Technology, Madras. Lecture - 24

15.4 Longest common subsequence

Lecture 10. Sequence alignments

Design and Analysis of Algorithms 演算法設計與分析. Lecture 7 April 15, 2015 洪國寶

Special course in Computer Science: Advanced Text Algorithms

Framework for Design of Dynamic Programming Algorithms

Applications Guide 3WayPack TUCKALS3: Analysis of Chopin Data

EUROPEAN COMPUTER DRIVING LICENCE. Multimedia Audio Editing. Syllabus

CMSC351 - Fall 2014, Homework #4

Mastertracks Pro 4 Review

Mobile-Tuner is a musical instrument tuner for java enabled mobile phones. In addition Mobile-Tuner has a built in metronome and a synthesizer:

Performance Evaluation Metrics and Statistics for Positional Tracker Evaluation

Efficient Dynamic Time Warping for Time Series Classification

1 Variations of the Traveling Salesman Problem

A SIMPLE, HIGH-YIELD METHOD FOR ASSESSING STRUCTURAL NOVELTY

High-Quality Shape Fitting for Aesthetic Modeling Based on Class A Condition

SEQUENCES, MATHEMATICAL INDUCTION, AND RECURSION

Installing energyxt2.5. Mac. Double-click energyxt2.5 disk image file. Drag the energyxt2.5 folder to your "Applica- tions" folder / your desktop.

MPEG-7 Audio: Tools for Semantic Audio Description and Processing

USING GARAGE BAND. Creating a new project

1 Introduction. 3 Data Preprocessing. 2 Literature Review

000 How to Use this Book... 11

SPEECH FEATURE EXTRACTION USING WEIGHTED HIGHER-ORDER LOCAL AUTO-CORRELATION

Novelty Detection from an Ego- Centric Perspective

Analyzing structure: segmenting musical audio

THIS article tackles the problem of live song identification.

EXERCISES SHORTEST PATHS: APPLICATIONS, OPTIMIZATION, VARIATIONS, AND SOLVING THE CONSTRAINED SHORTEST PATH PROBLEM. 1 Applications and Modelling

Paint Your Microtonal Music. User Manual

Interactive Intelligent Systems Workshop: Music Constraint Programming (2) Music Representation

ACCURATE REAL-TIME WINDOWED TIME WARPING

Dynamic programming - review

Video Alignment. Final Report. Spring 2005 Prof. Brian Evans Multidimensional Digital Signal Processing Project The University of Texas at Austin

CSE 417 Dynamic Programming (pt 4) Sub-problems on Trees

Audio & Music Research at LabROSA

CS-184: Computer Graphics. Today

PS2500/GPS2500 PS Series Digital Pianos

Element Quality Metrics for Higher-Order Bernstein Bézier Elements

Towards End-to-End Audio-Sheet-Music Retrieval

CS-184: Computer Graphics

Knowledge Discovery in Databases II Summer Term 2017

IDMT Transcription API Documentation

Interactive Graphics. Lecture 9: Introduction to Spline Curves. Interactive Graphics Lecture 9: Slide 1

The. finale. Projects. The New Approach to Learning. finale. Tom Carruth

Digital Image Processing

High Dimensional Indexing by Clustering

Structural and Syntactic Pattern Recognition

Math 5593 Linear Programming Lecture Notes

Flexible Stand-Alone Keyword Recognition Application Using Dynamic Time Warping

Analysis of high dimensional data via Topology. Louis Xiang. Oak Ridge National Laboratory. Oak Ridge, Tennessee

CHAPTER 7 MUSIC INFORMATION RETRIEVAL

Sketchable Histograms of Oriented Gradients for Object Detection

CS 498PS Audio Computing Lab. Audio Restoration. Paris Smaragdis. paris.cs.illinois.edu U NIVERSITY OF URBANA-CHAMPAIGN

Using The Akai MPC With Ableton Live

BUILDING CORPORA OF TRANSCRIBED SPEECH FROM OPEN ACCESS SOURCES

AM 221: Advanced Optimization Spring 2016

IDENTIFYING POLYPHONIC PATTERNS FROM AUDIO RECORDINGS USING MUSIC SEGMENTATION TECHNIQUES

9 length of contour = no. of horizontal and vertical components + ( 2 no. of diagonal components) diameter of boundary B

Operating System Version 2.0

Wolf-Tilo Balke Silviu Homoceanu Institut für Informationssysteme Technische Universität Braunschweig

A Performance Evaluation of HMM and DTW for Gesture Recognition

UC Berkeley CS 170: Efficient Algorithms and Intractable Problems Handout 15 Lecturer: Michael Jordan October 26, Notes 15 for CS 170

SD9 Update Voice Improved the synchronization of the Live Audio Drums when using the HARMONY or DOUBLE features with the lead voice.

Efficient Indexing and Searching Framework for Unstructured Data

THREE LECTURES ON BASIC TOPOLOGY. 1. Basic notions.

Efficient and Simple Algorithms for Time-Scaled and Time-Warped Music Search

Spoken Document Retrieval (SDR) for Broadcast News in Indian Languages

PSP Rhythm User s Manual

Repeating Segment Detection in Songs using Audio Fingerprint Matching

6. Lecture notes on matroid intersection

Dynamic Programming. Design and Analysis of Algorithms. Entwurf und Analyse von Algorithmen. Irene Parada. Design and Analysis of Algorithms

Transcription:

Lecture Music Processing Music Synchronization Meinard Müller International Audio Laboratories Erlangen meinard.mueller@audiolabs-erlangen.de

Book: Fundamentals of Music Processing Meinard Müller Fundamentals of Music Processing Audio, Analysis, Algorithms, Applications 483 p., 249 illus., hardcover ISBN: 978-3-319-21944-8 Springer, 2015 Accompanying website: www.music-processing.de

Book: Fundamentals of Music Processing Meinard Müller Fundamentals of Music Processing Audio, Analysis, Algorithms, Applications 483 p., 249 illus., hardcover ISBN: 978-3-319-21944-8 Springer, 2015 Accompanying website: www.music-processing.de

Book: Fundamentals of Music Processing Meinard Müller Fundamentals of Music Processing Audio, Analysis, Algorithms, Applications 483 p., 249 illus., hardcover ISBN: 978-3-319-21944-8 Springer, 2015 Accompanying website: www.music-processing.de

Chapter 3: Music Synchronization 3.1 Audio Features 3.2 Dynamic Time Warping 3.3 Applications 3.4 Further Notes As a first music processing task, we study in Chapter 3 the problem of music synchronization. The objective is to temporally align compatible representations of the same piece of music. Considering this scenario, we explain the need for musically informed audio features. In particular, we introduce the concept of chroma-based music features, which capture properties that are related to harmony and melody. Furthermore, we study an alignment technique known as dynamic time warping (DTW), a concept that is applicable for the analysis of general time series. For its efficient computation, we discuss an algorithm based on dynamic programming a widely used method for solving a complex problem by breaking it down into a collection of simpler subproblems.

Music Data

Music Data

Music Data

Music Data Various interpretations Beethoven s Fifth Bernstein Karajan Gould (piano) MIDI (piano)

Music Synchronization: Audio-Audio Given: Two different audio recordings of the same underlying piece of music. Goal: Find for each position in one audio recording the musically corresponding position in the other audio recording.

Music Synchronization: Audio-Audio Beethoven s Fifth Karajan Time (seconds) Gould Time (seconds)

Music Synchronization: Audio-Audio Beethoven s Fifth Karajan Time (seconds) Gould Time (seconds)

Music Synchronization: Audio-Audio Application: Interpretation Switcher

Music Synchronization: Audio-Audio Two main steps: 1.) Audio features Robust but discriminative Chroma features Robust to variations in instrumentation, timbre, dynamics Correlate to harmonic progression 2.) Alignment procedure Deals with local and global tempo variations Needs to be efficient

Music Synchronization: Audio-Audio Beethoven s Fifth Karajan Time (seconds) Gould Time (seconds)

Music Synchronization: Audio-Audio Beethoven s Fifth Karajan Time (indices) Gould Time (indices)

Music Synchronization: Audio-Audio Beethoven s Fifth Karajan Time (indices) Gould Time (indices)

Music Synchronization: Audio-Audio Beethoven s Fifth Time (indices) Karajan G Gould G Time (indices)

Music Synchronization: Audio-Audio Beethoven s Fifth Time (indices) Karajan E Gould E Time (indices)

Music Synchronization: Audio-Audio Karajan Time (indices) Gould Time (indices)

Music Synchronization: Audio-Audio Cost matrix Karajan Time (indices) Gould Time (indices)

Music Synchronization: Audio-Audio Cost matrix Karajan Time (indices) Gould Time (indices)

Music Synchronization: Audio-Audio Optimal alignment (cost-minimizing warping path) Karajan Time (indices) Gould Time (indices)

Music Synchronization: Audio-Audio Cost matrix

Music Synchronization: Audio-Audio Optimal alignment (cost-minimizing warping path)

Music Synchronization: Audio-Audio Optimal alignment (cost-minimizing warping path) Karajan Time (indices) Gould Time (indices)

Music Synchronization: Audio-Audio How to compute the alignment? Cost matrices Dynamic programming Dynamic Time Warping (DTW)

Applications Freude, schoener Götterfunken, Tochter aus Elysium, Wir betreten feuertrunken, Himmlische dein Heiligtum. Deine Zauber binden wieder, Was die Mode streng geteilt; Alle Menschen werden Brueder, Wo dein sanfter Flügel weilt. Wem der grosse Wurf gelungen, Eines Freundes Freund zu sein, Wer ein holdes Weib errungen, Mische seine Jubel ein! Music Library

Music Synchronization: MIDI-Audio Time

Music Synchronization: MIDI-Audio MIDI = meta data Automated annotation Audio recording Sonification of annotations

Music Synchronization: MIDI-Audio Automated audio annotation Accurate audio access after MIDI-based retrieval Automated tracking of MIDI note parameters during audio playback Performance analysis

Music Synchronization: MIDI-Audio MIDI = reference (score) Tempo information Audio recording

Performance Analysis: Tempo Curves Alignment Local tempo 4 240 Performed version Time (seconds) 3 2 1 Performed version Tempo (BPM) 180 120 60 0 0 1 2 3 4 5 Time (beats) 0 0 1 2 3 4 5 Time (beats) Reference version Reference version

Performance Analysis: Tempo Curves Alignment Local tempo 4 240 Performed version Time (seconds) 3 2 1 Performed version Tempo (BPM) 180 120 60 30 0 0 1 2 3 4 5 Time (beats) 0 0 1 2 3 4 5 Time (beats) Reference version Reference version 1 beat lasting 2 seconds 30 BPM

Performance Analysis: Tempo Curves Alignment Local tempo 4 240 Performed version Time (seconds) 3 2 1 Performed version Tempo (BPM) 180 120 60 30 0 0 1 2 3 4 5 Time (beats) 0 0 1 2 3 4 5 Time (beats) Reference version Reference version 1 beat lasting 1 seconds 60 BPM

Performance Analysis: Tempo Curves Alignment Local tempo 4 240 Performed version Time (seconds) 3 2 1 Performed version Tempo (BPM) 180 150 120 60 30 0 0 1 2 3 4 5 Time (beats) 0 0 1 2 3 4 5 Time (beats) Reference version Reference version 1 beat lasting 0.4 seconds 150 BPM

Performance Analysis: Tempo Curves Alignment Tempo curve 4 240 Performed version Time (seconds) 3 2 1 Performed version Tempo (BPM) 200 180 150 120 60 30 0 0 1 2 3 4 5 Time (beats) 0 0 1 2 3 4 5 Time (beats) Reference version Reference version Tempo curve is optained by interpolation

Performance Analysis: Tempo Curves Schumann: Träumerei Performance: 0.1 0-0.1-0.2 1 5 10 15 20 25 Time (seconds) 30

Performance Analysis: Tempo Curves Schumann: Träumerei Score (reference): 1 2 3 4 5 6 7 8 Performance: 0.1 0-0.1-0.2 1 5 10 15 20 25 Time (seconds) 30

Performance Analysis: Tempo Curves Schumann: Träumerei Score (reference): 1 2 3 4 5 6 7 8 Performance: Strategy: Compute score-audio synchronization and derive tempo curve 0.1 0-0.1-0.2 1 5 10 15 20 25 Time (seconds) 30

Performance Analysis: Tempo Curves Schumann: Träumerei Score (reference): 1 2 3 4 5 6 7 8 Tempo curve: Tempo (BPM) 160 120 80 40 1 2 3 4 5 6 7 Time (measures) 8

Performance Analysis: Tempo Curves Schumann: Träumerei Score (reference): 1 2 3 4 5 6 7 8 Tempo curves: Tempo (BPM) 160 120 80 40 1 2 3 4 5 6 7 Time (measures) 8

Performance Analysis: Tempo Curves Schumann: Träumerei Score (reference): 1 2 3 4 5 6 7 8 Tempo curves: Tempo (BPM) 160 120 80 40 1 2 3 4 5 6 7 Time (measures) 8

Performance Analysis: Tempo Curves Schumann: Träumerei Score (reference): 1 2 3 4 5 6 7 8 Tempo curves:? Tempo (BPM) 160 120 80 40 1 2 3 4 5 6 7 Time (measures) 8

Performance Analysis: Tempo Curves Schumann: Träumerei What can be done if no reference is available? Tempo curves: Tempo (BPM) 160 120 80 40 1 2 3 4 5 6 7 Time (measures) 8

Performance Analysis: Tempo Curves Schumann: Träumerei What can be done if no reference is available? Tempo and Beat Tracking Tempo curves: Tempo (BPM) 160 120 80 40 1 2 3 4 5 6 7 Time (measures) 8

Music Synchronization: Image-Audio Audio Image

Music Synchronization: Image-Audio Audio Image

Music Synchronization: Image-Audio Audio Image Convert data into common mid-level feature representation

Music Synchronization: Image-Audio Image Processing: Optical Music Recognition Audio Image Convert data into common mid-level feature representation

Music Synchronization: Image-Audio Image Processing: Optical Music Recognition Audio Image Convert data into common mid-level feature representation Audio Processing: Fourier Analyse

Music Synchronization: Image-Audio Image Processing: Optical Music Recognition Audio Image Audio Processing: Fourier Analyse

Music Synchronization: Image-Audio Application: Score Viewer

Music Synchronization: Lyrics-Audio Ich träumte von bunten Blumen, so wie sie wohl blühen im Mai

Music Synchronization: Lyrics-Audio Ich träumte von bunten Blumen, so wie sie wohl blühen im Mai Extremely difficult!

Music Synchronization: Lyrics-Audio Lyrics-Audio Lyrics-MIDI + MIDI-Audio Ich träumte von bunten Blumen, so wie sie wohl blühen im Mai

Music Synchronization: Lyrics-Audio Lyrics-Audio Lyrics-MIDI + MIDI-Audio Ich träumte von bunten Blumen, so wie sie wohl blühen im Mai

Score-Informed Source Separation

Score-Informed Source Separation

Score-Informed Source Separation

Score-Informed Source Separation Experimental results for separating left and right hands for piano recordings: Composer Piece Database Results L R Eq Org Bach BWV 875, Prelude SMD Chopin Op. 28, No. 15 SMD Chopin Op. 64, No. 1 European Archive

Score-Informed Source Separation Audio editing 1600 1600 1200 1200 800 800 400 400 6 7 8 9 6 7 8 9 Frequency (Hertz) 580 523 500 0 0.5 1 Time (seconds) Frequency (Hertz) 580 554 500 0 0.5 1 Time (seconds)

Dynamic Time Warping

Dynamic Time Warping Well-known technique to find an optimal alignment between two given (time-dependent) sequences under certain restrictions. Intuitively, sequences are warped in a non-linear fashion to match each other. Originally used to compare different speech patterns in automatic speech recognition

Dynamic Time Warping Sequence X x 1 x 2 x 3 x 4 x 5 x 6 x 7 x 8 x 9 Sequence Y y 1 y 2 y 3 y 4 y 5 y 6 y 7

Dynamic Time Warping Sequence X x 1 x 2 x 3 x 4 x 5 x 6 x 7 x 8 x 9 Sequence Y y 1 y 2 y 3 y 4 y 5 y 6 y 7 Time alignment of two time-dependent sequences, where the aligned points are indicated by the arrows.

Dynamic Time Warping Sequence X Sequence Y x 1 x 2 x 3 x 4 x 5 x 6 x 7 x 8 x 9 y 1 y 2 y 3 y 4 y 5 y 6 y 7 Sequence X 9 8 7 6 5 4 3 2 1 1 2 3 4 5 6 7 Sequence Y Time alignment of two time-dependent sequences, where the aligned points are indicated by the arrows.

Dynamic Time Warping The objective of DTW is to compare two (time-dependent) sequences of length and of length. Here, are suitable features that are elements from a given feature space denoted by.

Dynamic Time Warping To compare two different features one needs a local cost measure which is defined to be a function Typically, is small (low cost) if and are similar to each other, and otherwise is large (high cost).

Dynamic Time Warping Evaluating the local cost measure for each pair of elements of the sequences and, one obtains the cost matrix denfined by Then the goal is to find an alignment between and having minimal overall cost. Intuitively, such an optimal alignment runs along a valley of low cost within the cost matrix.

Dynamic Time Warping Cost matrix C Time (indices) Time (indices)

Dynamic Time Warping Cost matrix C Time (indices) C(5,6) Time (indices)

Dynamic Time Warping Cost matrix C

Dynamic Time Warping Cost matrix C C(5,6)

Dynamic Time Warping The next definition formalizes the notion of an alignment. A warping path is a sequence with for satisfying the following three conditions: Boundary condition: and Monotonicity condition: and Step size condition: for

Dynamic Time Warping Warping path Sequence X 9 8 7 6 5 4 3 2 1 Each matrix entry (cell) corresponds to a pair of indices. Cell = (6,3) Boundary cells: p 1 = (1,1) p L = (N,M) = (9,7) 1 2 3 4 5 6 7 Sequence Y

Dynamic Time Warping Warping path Correct warping path Sequence X 9 8 7 6 5 4 3 2 1 1 2 3 4 5 6 7 Sequence Y Sequence X Sequence Y x 1 x 2 x 3 x 4 x 5 x 6 x 7 x 8 x 9 y 1 y 2 y 3 y 4 y 5 y 6 y 7

Dynamic Time Warping Warping path Violation of boundary condition Sequence X 9 8 7 6 5 4 3 2 1 1 2 3 4 5 6 7 Sequence Y Sequence X Sequence Y x 1 x 2 x 3 x 4 x 5 x 6 x 7 x 8 x 9 y 1 y 2 y 3 y 4 y 5 y 6 y 7

Dynamic Time Warping Warping path Violation of monotonicity condition Sequence X 9 8 7 6 5 4 3 2 1 1 2 3 4 5 6 7 Sequence Y Sequence X Sequence Y x 1 x 2 x 3 x 4 x 5 x 6 x 7 x 8 x 9 y 1 y 2 y 3 y 4 y 5 y 6 y 7

Dynamic Time Warping Warping path Violation of step size condition Sequence X 9 8 7 6 5 4 3 2 1 1 2 3 4 5 6 7 Sequence Y Sequence X Sequence Y x 1 x 2 x 3 x 4 x 5 x 6 x 7 x 8 x 9 y 1 y 2 y 3 y 4 y 5 y 6 y 7

Dynamic Time Warping The total cost of a warping path between and with respect to the local cost measure is defined as Furthermore, an optimal warping path between and is a warping path having minimal total cost among all possible warping paths. The DTW distance between and is then defined as the total cost of

Dynamic Time Warping The warping path is not unique (in general). DTW does (in general) not definne a metric since it may not satisfy the triangle inequality. There exist exponentially many warping paths. How can be computed efficiently?

Dynamic Time Warping Notation: The matrix is called the accumulated cost matrix. The entry specifies the cost of an optimal warping path that aligns with.

Dynamic Time Warping Lemma: for Proof: (i) (iii) are clear by definition

Dynamic Time Warping Proof of (iv): Induction via : Let and be an optimal warping path for and. Then (boundary condition). Let. The step size condition implies The warping path must be optimal for. Thus,

Dynamic Time Warping Accumulated cost matrix Given the two feature sequences and, the matrix is computed recursively. Initialize using (ii) and (iii) of the lemma. Compute e for using (iv). using (i). Note: Complexity O(NM). Dynamic programming: overlapping-subproblem property

Dynamic Time Warping Optimal warping path Given to the algorithm is the accumulated cost matrix. The optimal path is computed in reverse order of the indices starting with. Suppose has been computed. In case, one must have and we are done. Otherwise, where we take the lexicographically smallest pair in case argmin is not unique.

Dynamic Time Warping Summary m = 10 8 D(N,M) = DTW(X,Y) 7 6 5 4 D(n,1) D(n,m-1) D(n-1,m-1) D(n,m) D(n-1,m) n = 6 3 2 1 D(1,m) 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15

Dynamic Time Warping Summary

Dynamic Time Warping Example Alignment 1 1 1 1 7 6 1 1 10 10 11 14 13 9 3 8 6 8 8 0 1 6 1 3 3 5 4 1 3 8 9 11 13 7 8 14 3 5 7 10 12 13 1 3 3 8 1 3 1 3 3 5 4 1 3 2 4 5 8 12 13 1 1 1 1 7 6 1 1 1 2 3 10 16 17 2 0 0 8 7 2 2 0 0 8 7 2 2 0 0 8 7 2 Optimal warping path:

Dynamic Time Warping Step size conditions Σ 1,0, 0,1, 1,1

Dynamic Time Warping Step size conditions Σ 2,1, 1,2, 1,1

Dynamic Time Warping Step size conditions

Dynamic Time Warping Computation via dynamic programming Memory requirements and running time: O(NM) Problem: Infeasible for large N and M Example: Feature resolution 10 Hz, pieces 15 min N, M ~ 10,000 N M ~ 100,000,000

Dynamic Time Warping Global constraints Sakoe-Chiba band Itakura parallelogram

Dynamic Time Warping Global constraints Sakoe-Chiba band Itakura parallelogram Problem: Optimal warping path not in constraint region

Dynamic Time Warping Multiscale approach Compute optimal warping path on coarse level

Dynamic Time Warping Multiscale approach Project on fine level

Dynamic Time Warping Multiscale approach Specify constraint region

Dynamic Time Warping Multiscale approach Compute constrained optimal warping path

Dynamic Time Warping Multiscale approach Suitable features? Suitable resolution levels? Size of constraint regions? Good trade-off between efficiency and robustness? Suitable parameters depend very much on application!