on FPGA Shuyi Chen Lizi George Kelly Ran Outline Motivation - - PowerPoint PPT Presentation

on fpga
SMART_READER_LITE
LIVE PREVIEW

on FPGA Shuyi Chen Lizi George Kelly Ran Outline Motivation - - PowerPoint PPT Presentation

Polyphonic Music Transcription on FPGA Shuyi Chen Lizi George Kelly Ran Outline Motivation System Architecture Evaluation Exploration Motivation Speed Polyphonic detection methods are still being investigated


slide-1
SLIDE 1

Polyphonic Music Transcription

  • n FPGA

Shuyi Chen Lizi George Kelly Ran

slide-2
SLIDE 2

Outline

  • Motivation
  • System
  • Architecture
  • Evaluation
  • Exploration
slide-3
SLIDE 3

Motivation

  • Speed
  • Polyphonic detection methods are still being

investigated

– Using techniques from growing field of speech recognition

  • Real-time

transcription

slide-4
SLIDE 4

Background

  • Research is currently ongoing into best

algorithm for polyphonic pitch detection with timbre rejection

  • A paper in Spring 2012 describes Klapuri

algorithm and several others

– We chose to implement Klapuri because it had the lowest error rate of 6 algorithms discussed for 1-4 pitches per time-slice

slide-5
SLIDE 5

System Block Diagram

slide-6
SLIDE 6

Input and Hanning Windows

  • Negate impact of

sharp edges in time slices

slide-7
SLIDE 7

FFT and Absolute Value

  • 4096-pt Streaming FFT

– Minimal area requirements – ML605 Virtex-6 FPGA needed

slide-8
SLIDE 8

Spectral Whitening

  • Smooth out spectrum of computed sub-bands

without boosting noise

– Uses inverse filtering to flatten spectrum energy distribution to mitigate timbre effects

slide-9
SLIDE 9

Spectral Whitening

slide-10
SLIDE 10

Salience

  • Uses variation of binary search to find pitches

present during time-slice

– Includes harmonic contributions

slide-11
SLIDE 11

Test Bench

  • MATLAB implementation of Klapuri algorithm

– Compare to this result for algorithm checking

  • Lilypond engraving software output compared

to known

– Shell scripts written to take output file and generate lilypond code and refresh pdf in realtime

slide-12
SLIDE 12

Evaluation

  • FFT output is in bit-reversed order

– Implemented a sorter

  • Cube root implementation in binary

– More efficient

  • SquareRoot and StreamFFT were reused IP

blocks

  • Realtime?
slide-13
SLIDE 13

Future Work

  • Increase FFT resolution in response to smaller

differences between pitches as lower frequencies

  • Decreasing window size
  • Adding beat detection
  • Attempt to improve algorithm for 4-part piano

harmonies

  • User-friendly real-time transcription system

(front-end GUI, user input)

slide-14
SLIDE 14

Synthesis Report

  • 4096-pt FFT has difficulties synthesizing on

FPGA

– Using Virtex-6 ML605

  • We plan to complete synthesis and run on

FPGA in the next few days

slide-15
SLIDE 15

Questions?