def run(audio): f, psd = aa.spectrum(audio) peaklist = aa.peak_map(psd) peaksdex = aa.peak_assign(peaklist) output = guesswork(f, psd, peaklist, peaksdex) # print(aa.print_identify(aa.identify(output))) return output
peaksdex = peak_assign(peaklist) gf.button_grapher(ax2, frequency, peaksdex, peaklist) def runfromfft(f, psd): ax = gf.init_image() gf.semi_graph(ax, f, psd) maxdex = aa.max_range(psd, 20) # gf.button_grapher(ax, f, maxdex, psd) peaklist = aa.peak_map(psd) aa.peak_impose(ax, f, peaklist) plt.show() if __name__ == '__main__': filename = sys.argv[1] bandpass = [] if len(sys.argv) > 3: lowerbound = int(sys.argv[2]) upperbound = int(sys.argv[3]) bandpass = [lowerbound, upperbound] audio = aa.load_npy(filename) bandpass = [80, 10000] f, psd = aa.spectrum(audio, bandpass=bandpass) ax = gf.init_image() gf.semi_graph(ax, f, psd, label=filename) # maxdex = aa.max_range(psd, 20) # peaklist = aa.peak_map(psd) # plt.savefig('%s.png' % filename.split('.')[0]) plt.show()
def procdata(data, bandpass): data = aa.bandpass_filter(data, bandpass) f, psd = aa.spectrum(data, bandpass = bandpass) return f, psd
background = sys.argv[1] audio = sys.argv[2] fs = 44100 if len(sys.argv) > 3: fs = int(sys.argv[3]) # Build image background = aa.load_npy(background) audio = aa.load_npy(audio) ax = gf.init_image() # Set double scale ax2 = ax.twinx() # Run spectrum analysis freq, curve = aa.spectrum(background, fs) _, bluecurve = aa.spectrum(audio, fs) # bluecurve = bluecurve * curve[2]/bluecurve[2] snratio = bluecurve / curve # Graph ax gf.semi_graph(ax, freq, curve, label='background') gf.semi_graph(ax, freq, bluecurve, 'b', 'recording') gf.std_graph(ax2, freq, snratio, label='S/N ratio') maxdex = aa.max_range(bluecurve, 10) print_maxdex(freq, snratio, maxdex) gf.pin_grapher(ax, freq, maxdex, curve, bluecurve) ax.legend(loc=2) ax2.legend(loc=0) plt.show()
import numpy as np import os, sys sys.path.append( '/Users/aperocky/workspace/Labwork/Drone_Project/Audio-detection/engines') import audio_algorithms as aa import graph_functions as gf audio1 = aa.load_npy('10m_0m_0.npy') audio2 = aa.load_npy('10m_2m_0.npy') audio3 = aa.load_npy('10m_4m_0.npy') audio4 = aa.load_npy('10m_6m_0.npy') audio5 = aa.load_npy('10m_10m_0.npy') bandpass = [80, 10000] f, psd1 = aa.spectrum(audio1, bandpass=bandpass) f, psd2 = aa.spectrum(audio2, bandpass=bandpass) f, psd3 = aa.spectrum(audio3, bandpass=bandpass) f, psd4 = aa.spectrum(audio4, bandpass=bandpass) f, psd5 = aa.spectrum(audio5, bandpass=bandpass) ax = gf.init_image() gf.semi_graph(ax, f, psd1, c='r') gf.semi_graph(ax, f, psd2, c='b') gf.semi_graph(ax, f, psd3, c='g') gf.semi_graph(ax, f, psd4, c='y') gf.semi_graph(ax, f, psd5, c='k') # maxdex = aa.max_range(psd, 20) # peaklist = aa.peak_map(psd) # plt.savefig('%s.png' % filename.split('.')[0]) gf.show()