Privacy Solution for smart city sound pollution surveillance 


MOBI-Project-M Sound City WS2020/21 group-6

By: Aroon kumar

Topic Question: Q2: How can we use sound as a sensor for smart city application without transmitting any raw sound signal, so that we technically avoid that these sensors can be misused for eavesdropping ? 

Main Idea

As leading technology in communication has advanced in recent year us human always have concern of privacy, with smartphone we have a walking recorder (audio/video) and GPS locator,  presence of modern sensors in smartphones which have been proven to be curse than blessing for most, no one prefer to share or misuse of their data by someone.

At the same time if we have to enable smart city features in our modern urban areas we somehow have to  adapt and find a solution which satisfy mutual concerns both sides, of course we have technical advances which makes us capable coming up with a smart solution to avoid privacy violation with some research and epiphany discovered a suggestion which can satisfy both concerns instead of recording and saving the audio data of the smart city we can create program with in our smartphone application which converts the sound streams from sensor into readable frequencies that we require in the end to read noise pollution in our surrounding area, and using a data management system platform to have the frequency data available for use instead of raw sound.


By following path for java build jar file to support fellow collegues products with my functionalities i build a jar file by introducing two functionalities on is FFT Fast fourier transform following this method can achieve weighted frequencies differentiate with aggregated sound level. and 2nd garble function which help sound not recognized but still readable to be measured and obersve for noise intensity.

Maths behind the Method

Each sample in frequencySpectrumOfSamples is a vector of size (In our examples there are amplitudes of 513 frequencies in each sample), assume ‘n’:

A = [a1, a2, … , an]

weightVector is a vector of the same size as a single sample in  frequencySpectrumOfSamples (for our example we passed a unit vector):

W = [w1, w2, … , wn]

 PrivacyAPI.calculateAmplitude(weightVector, frequencySpectrumOfSamples) performs the dot product of the 2 vectors as:

A.W = a1x w1 + a2 x w2 + … + an x wn = ∑ai.wi

Functions: PrivacyAPI 

This work creates a library (available as a jar file in java) can be adopted in any platform or environment as a supported library to introduce functionality which exposes the following public static functions for .wav and .mp3 files:

Garble Function

With this Function we are able to mask the recorded raw sound by automated munipulation  still can recognized intensity of the noise but cannot understand or recognize voice. this can be used in further scene if we se a sensor parameter only record the sound  


Following the above knowledge and methodology can make sure sound masking for privacy preservation in Bamberg Smart City project.  


Platz für eure Produktfotos, Mitarbeiterfotos oder andere Eindrücke.

Contact details



+49 177 868 1044


Josef-Kindshoven-Straße 5, 96052 Bamberg