wip
This commit is contained in:
parent
67646a689d
commit
d6b2fbd069
1 changed files with 5 additions and 4 deletions
9
process
9
process
|
@ -43,9 +43,11 @@ def process_recording(filename):
|
||||||
# iterate blocks
|
# iterate blocks
|
||||||
for num, block in enumerate(soundfile.blocks(path, blocksize=block_samples, overlap=int(block_samples*0.8))):
|
for num, block in enumerate(soundfile.blocks(path, blocksize=block_samples, overlap=int(block_samples*0.8))):
|
||||||
block_date = recording_date + datetime.timedelta(seconds=num * BLOCK_SECONDS)
|
block_date = recording_date + datetime.timedelta(seconds=num * BLOCK_SECONDS)
|
||||||
complex_amplitudes = rfft(block)
|
|
||||||
amplitudes = np.abs(complex_amplitudes)
|
|
||||||
labels = rfftfreq(len(block), d=1/samplerate)
|
labels = rfftfreq(len(block), d=1/samplerate)
|
||||||
|
complex_amplitudes = rfft(block)
|
||||||
|
absolute_amplitudes = np.abs(complex_amplitudes)
|
||||||
|
median_amplitude = np.median(absolute_amplitudes)
|
||||||
|
amplitudes = absolute_amplitudes / median_amplitude
|
||||||
|
|
||||||
# get amplitudes only between 100 and 1000 Hz
|
# get amplitudes only between 100 and 1000 Hz
|
||||||
adjacent_amplitudes = amplitudes[(labels >= DETECT_FREQUENCY_FROM/ADJACENCY_FACTOR) & (labels <= DETECT_FREQUENCY_TO*ADJACENCY_FACTOR)]
|
adjacent_amplitudes = amplitudes[(labels >= DETECT_FREQUENCY_FROM/ADJACENCY_FACTOR) & (labels <= DETECT_FREQUENCY_TO*ADJACENCY_FACTOR)]
|
||||||
|
@ -77,12 +79,11 @@ def process_recording(filename):
|
||||||
last_detection_at = block_date
|
last_detection_at = block_date
|
||||||
print("🔊")
|
print("🔊")
|
||||||
|
|
||||||
print(f'{block_date}: {max_amplitude:.1f}rDB @ {max_freq:.1f}Hz ({noise:.3f}rDB noise)')
|
print(f'{block_date}: {max_amplitude:.1f}rDB @ {max_freq:.1f}Hz (noise {noise:.3f}rDB, median {median_amplitude:.3f}rDB)')
|
||||||
else:
|
else:
|
||||||
is_detecting = False
|
is_detecting = False
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
def main():
|
def main():
|
||||||
os.makedirs(RECORDINGS_DIR, exist_ok=True)
|
os.makedirs(RECORDINGS_DIR, exist_ok=True)
|
||||||
os.makedirs(PROCESSED_RECORDINGS_DIR, exist_ok=True)
|
os.makedirs(PROCESSED_RECORDINGS_DIR, exist_ok=True)
|
||||||
|
|
Loading…
Reference in a new issue