Dzwiek: czestotliwosci sie nakladaja wiec jak wykryc jedna?

0

witam.
chcialem zrobic zeby w moim programie byla mozliwosc wykrywania pewnego zakresu czestotliwosci...
problem w tym, ze wysokie czestotliwosci "wkradaja" sie na te niskie.
i jak sobie ustawie, zeby wykrywalo tylko basy, to zawsze jak nie ma basu tylko bedzie np glosny szum to program automatycznie zakwalifikuje dzwiek jako gleboki bas, a tego nie chce :/
uzywam Bass'a, i FFT. dzwiek pochodzi z pliku.

jak mozna to ominac? myslalem ze mozna po prostu sprawdzac czy w tym samym momencie jak wykryje bas sa tez wysokie czestotliwosci i jesli sa to ala operacje anulowac...
ale pewnien nie jestem czy tak to sie robi, wiec wole zapytac ;]

w ogole, najchetniej to bym chcial, zeby komputer byl w stanie rozpoznawac dzwieki mniej wiecej tak jak czlowiek, bo opierajac sie o czysta analize FFT... marnie to wyglada :/

bede wdzieczny za wszelkie info, linki... [browar]

pozdrawiam ;]

0

po dlugich poszukiwaniach natknalem sie na algorytm Goertzel'a.
jak ktos tego uzywal lub wie jak sie z tym obchodzic to bede wdzieczny za info.

pozdr.

0

jest to tylko rachunkowe uproszczenie FFT.
zmniejsza ilosc obliczen gdy interesuje nas tylko jedna (kilka) skladowych.
a sluchales tych nagran?
tak objawia sie ALIASING

0

nieciekawie :/
czyli ze sie nie bardzo da usunac?

0

kiedy zrozumiesz czym jest aliasing, to zrozumiesz, że jest już za późno
o sygnale możesz coś powiedzieć gdy próbkujesz go przynajmniej dwa razy na okres, jeśli wolniej to utraciłeś sygnał i już nie wiele możesz o nim powiedzieć

0
mgr.Dobrowolski napisał(a)

kiedy zrozumiesz czym jest aliasing, to zrozumiesz, że jest już za późno
o sygnale możesz coś powiedzieć gdy próbkujesz go przynajmniej dwa razy na okres, jeśli wolniej to utraciłeś sygnał i już nie wiele możesz o nim powiedzieć

zrozumialem, bo czytalem, tylko chodzilo mi, czy nie ma zadnego sposobu na ominiecie tego.
jak by nie bylo czlowiek jest w stanie to odroznic... nie mowie tu nawet o sluchu.
jak mam spectogram o umiem na nim pokazac gdzie jest bas a gdzie go nie ma.
w koncu nie ma rzeczy niemozliwych...

0

user image
Obrazek (klikalny) z Wiki.
Próbki sygnału to kwadraciki, no to teraz powiedz, oryginalny sygnał to linia czerwona czy niebieska?

0

Jak mam spectogram o umiem na nim pokazac gdzie jest bas a gdzie go nie ma.

Tylko tam gdzie "nie ma" basów może być np. -60dB (0.001) a nie -inf (0.0).

0

decybele czyli stosunek!!!
nie wiem jak twoja biblioteczka skaluje wyniki
interpretując wyniki trzeba wiedzieć czego oczekiwać, jeżeli przetwornik jest N bitowy, to wyniki na poziomie -6N [dB] to tylko szum kwantyzacji,
dodatkowo szum wprowadzić może samo obliczanie FFT, gdy zrobione jest na stałym przecinku
a nawet zmiennoprzecinkowe szumi (na szczęści mniej niż DFT)

1 użytkowników online, w tym zalogowanych: 0, gości: 1