These are the results of my second semester of research for my year-long senior project. In this semester, I have focused on implementing the signal processing algorithms for the violin surrogate soundboard prototype that I built last year.
For the full paper, please download from this link. A short summary is presented below.
Essentially, the project this time round revolved around the question of inverse filters.
“In signal processing, for a filter g, an inverse filter h is one such that the sequence of applying g then h to a signal results in the original signal. Software or electronic inverse filters are often used to compensate for the effect of unwanted environmental filtering of signals.”
The surrogate soundboard has its own resonances that affect the signal obtained the real violin. To correct for these signals, one must obtain the filtering characteristics of the surrogate system. The research entailed obtaining the magnitude response (frequency response) of my actuator+bridge system and calculating the corresponding Unit Sample Response (USR). This USR can then be convolved with the affected signal to remove the effects of the surrogate system. In my work with Prof. Roman Kuc, we motivate two types of inverse filters – a linear phase filter and minimum phase filter – to correct for the surrogate system.
The Unit Sample Response using a Linear Phase Filter
We obtain the signals using commercially available pickups as well as custom-made piezo pickups. All signal analysis was done in MATLAB.
Code snippet, see paper for full code.
Surrogate violin system with actuator and piezo pickup
After much experimentation and programming, the results can summarized in the figure below.
The top red signal b(t) shows the signal as captured from bridge of real violin. The black signal second from the top c(t) shows the same signal b(t) but at the bridge of the surrogate violin. It is different because b(t) has been affected by the filtering effects of the surrogate system. How can we make the black signal c(t) at the surrogate system look more like the original red signal b(t) on the real violin?
Using a linear phase filter, we obtain l(t), the third blue signal from the top. This corrected signal shows that large scale features of the original signal from the real violin have been recovered. Most notably the two peaks (at 0.016 s) now appear again at the same time point in l(t).
Using a minimum phase filter, we obtain m(t), the last signal in pink. This corrected signal recovers the downward slope of the waveform in a single cycle. Moreover, the jagged edges imply presence of higher frequencies compared to the linear phase implementation l(t). This is closer to the original signal b(t) which also has high frequency content.
The signal analysis from the prototype suggests that it is possible to use a surrogate soundboard system for transmitting signals from a live violin to a surrogate violin. The surrogate violin introduces artificial vibrations via electromagnetic actuators onto the bridge and body of a surrogate violin. The actuators are fed a signal from the live violin that has been corrected by algorithms to account for the effects of the actuators and surrogate violin system. This would allow a violin to be “streamed” into another violin while retaining all the original acoustic mechanisms, thus producing a sound as though the instrument was being played live.
Future work will refine the algorithm, perhaps adopting a combination of the two filters to implement the inverse filter. The signals will also be treated in stereo rather than mono. Currently, the entire bridge is being actuated by a single source of vibration. To better replicate the action of the two feet moving with independent modes, it may be better to have two actuators on the surrogate violin.
Thank you to Prof. Kuc and Dr. Wilen for their guidance and continued enthusiasm during this whole thesis research!