logo elektroda
logo elektroda
X
logo elektroda
REKLAMA
REKLAMA
Adblock/uBlockOrigin/AdGuard mogą powodować znikanie niektórych postów z powodu nowej reguły.

analiza dźwięku, jak to zrobić najlepiej ??

whilliam 27 Paź 2006 15:38 2359 5
REKLAMA
  • #1 3158873
    whilliam
    Poziom 13  
    Witam !!!

    Nie wiem czy piszę o tym we właściwym miejscu, ale co mi tam :)

    Postawiłem przed sobą bardzo ambitne zadanie: chcę napisać program, który będzie znajdował utwory muzyczne na dysku użytkownika. Ale kryterium wyszukiwania nie będzie nazwa pliku, jego rozmiar...tylko użytkownik zanuci utwór i na podstawie tego będą znajdowane pliki.
    Wiem, że to może się wydawać śmieszne a nawet nierealne, ale mam dobry pomysł jak to zrealizować.

    Mój problem polega na dobraniu jak najlepszej metody analizy dźwięku. Nie chodzi mi tutaj o rozbicie utworu muzycznego na częstotliwości bo nie tędy droga. Chodzi mi raczej o podzielenie utworu muzycznego na ścieżki dźwiękowe. Czyli głos oddzielnie, gitara oddzielnie itp.
    Słyszałem, że można do tego użyć statystycznej metody analizy zmiennych składowych. Tylko nigdzie nie mogę znaleść implementacji tej metody do analizy dźwięku.

    Jeżeli ktoś ma jakieś materiały na ten temat to byłbym wdzięczny za udostępnienie ich.
    Jestem również otwarty na inne pomysły związane z analizą dźwięku.

    Z góry dzięki za wasze wypowiedzi.[/url]
  • REKLAMA
  • Pomocny post
    #2 3160173
    shg
    Poziom 35  
    Właściwy dział to DSP i Transmisja

    whilliam napisał:
    Nie chodzi mi tutaj o rozbicie utworu muzycznego na częstotliwości bo nie tędy droga.

    Tędy, tędy, ale nie w pierwszym etapie.

    Na początku chcesz rozdzielić poszczególne "głosy", był już o tym temat i jest na to metoda, którą można jednak wykorzystać wyłącznie do sygnałów wielokanalówych (conajmniej stereo). Metoda to ślepa separacja sygnałów czy też analiza składników niezależnych.
    Odrobina opisu i link do materiałów źródłowych: https://www.elektroda.pl/rtvforum/topic399537.html
    Nie wiem jak teraz, ale kiedyś na tej stronie można było sobie przetestować jak to działa, a działa bardzo dobrze, aczkolwiek nie doskonale, jak się tym bawiłem, to kilka razy zdarzyło się że dźwięki nie zostały prawidłowo odseparowane. Ponadto kompresja mp3 też może nieco "upośledzić" stereofonię, tktóra jest ważna z punktu widzenia ICA.

    Jak już sobie te głosy rozdzielisz, to chyba najbardziej efektywną metodą analizy będzie właśnie rozkład każdego z nich na poszczególne częstotliwości.
    Z tym że może być problem, jeżeli użytkownik zanuci utwór w innej tonacji, ale można to dość łatwo obejść. Wystasrczy że program będzie analizował interwały (muzyczne, czyli częstotliwości) pomiędzy kolejnymi nutami zarówno we wzorcach, jak i w "zapytaniu". Potem już tylko jakaś korelacj i powinno śmigać.

    Najtrudniejsze w tym wszystkiem będzie właśnie oddzielenie od siebie poszczególnych głosów, reszta w porównaniu z tym to betka ;].

    W analizie częstotliwośći wskazane było by wydzielenie wyłącznie głównej składowej (wycięcie harmonicznych), dla większości instrumentów jest to banalna, wystarczy zostawić tylko składową o największej amplitudzie, ale dla trąbki i jeszcze kilku innych dętych, czy dla ludzkiego głosu odrobinę się to komplikuje.
    whilliam napisał:
    Wiem, że to może się wydawać śmieszne a nawet nierealne, ale mam dobry pomysł jak to zrealizować.


    Wcale nie, ja uważam że jak najbardziej ciekawy.
    Istnieją już podobne systemy do wyszukiwania grafiki. Malujemy przybliżone kształty i kolory przedmiotów, a system wyszukuje podobne zdjęcia.
  • REKLAMA
  • #3 3173592
    whilliam
    Poziom 13  
    Dzięki za odpowiedź. Bardzo pomocną odpowiedź :)
    ICA to jest angielska nazwa metody o którą mi chodziło.
    Swoją drogą nie myślałem że ta metoda jest aż tak skuteczna (przynajmniej jeśli chodzi o mowę ludzką).
    Najprawdopodobniej w programie zastosuję właśnie ICA wraz z filtrami przez które przepuszczę widmo sygnału.
  • REKLAMA
  • #4 3174209
    Konto nie istnieje
    Konto nie istnieje  
  • REKLAMA
  • #5 3174820
    whilliam
    Poziom 13  
    Jak uda mi się to zrobić pod pc, to o macu pomyśle :D
  • #6 3175540
    Konto nie istnieje
    Konto nie istnieje  
REKLAMA