Upload files to ''
This commit is contained in:
48
CorrelationCoefficient.py
Normal file
48
CorrelationCoefficient.py
Normal file
@@ -0,0 +1,48 @@
|
||||
#!/usr/bin/env python
|
||||
# coding: utf-8
|
||||
|
||||
import thinkdsp
|
||||
|
||||
|
||||
|
||||
|
||||
#segment: ebben a hangmintaban keressuk az eredeti hangmintaval "original_sample" leginkabb korrelalo reszt
|
||||
#original_sample: az eredeti madarhang minta
|
||||
# A fuggveny a bemeneti hangmintat mintavetelenkent osszehasonlitja az altalunk keresett hangmintaval es vissza adja annak
|
||||
# a maximalis korrelaciot.
|
||||
def calculatecorr(segment,original_sample):
|
||||
maxcorr = 0
|
||||
time = 0
|
||||
#1minta 1 masodperc(framerate szama = utolso elem)
|
||||
lastsample = segment.framerate
|
||||
for timestamp in segment.ts[:-lastsample]:
|
||||
#mindig az adott mintaveteltol szamitott 1mp-es mintat vesszuk
|
||||
segment_chunk = segment.segment(start=timestamp, duration=1)
|
||||
#Correlation coefficient two waves.
|
||||
correlation = original_sample.corr(segment_chunk)
|
||||
if correlation > maxcorr :
|
||||
maxcorr = correlation
|
||||
time = timestamp
|
||||
print(correlation)
|
||||
if maxcorr > 0.9:
|
||||
return maxcorr
|
||||
break
|
||||
|
||||
print("Vegeredmeny:")
|
||||
print(maxcorr)
|
||||
print("Masodperc:")
|
||||
print(time)
|
||||
return maxcorr
|
||||
|
||||
|
||||
|
||||
|
||||
sturnusVulgaris = thinkdsp.read_wave("wavs/sturnus/CommonStarling_100962.wav")
|
||||
train_sample = sturnusVulgaris.segment(start=4,duration=1)
|
||||
test_sample = sturnusVulgaris.segment(start=0,duration=5)
|
||||
|
||||
|
||||
calculatecorr(test_sample,train_sample)
|
||||
|
||||
|
||||
|
||||
Reference in New Issue
Block a user