示例#1
0
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
示例#2
0
    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
示例#4
0
    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()
示例#5
0
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()