Wiem, że jest to zależne od sygnału, ale w obliczu nowego hałaśliwego sygnału, jaka jest twoja torba sztuczek za próbę odszumienia sygnału przy zachowaniu ostrych przejść (np. Tak więc jakiekolwiek proste uśrednianie, tj. Konwersja z gaussowskim, jest wykluczone). Często spotykam się z tym pytaniem i nie czuję, że wiem, co powinienem próbować (oprócz splajnów, ale mogą one poważnie powalić odpowiedni rodzaj ostrego przejścia).
PS Na marginesie, jeśli znasz jakieś dobre metody przy użyciu falek, daj mi znać, co to jest. Wygląda na to, że mają duży potencjał w tej dziedzinie, ale choć w latach 90. pojawiło się kilka artykułów z wystarczającą liczbą cytatów, aby zasugerować, że metoda pracy okazała się dobra, nie mogę znaleźć niczego o tym, jakie metody zakończyły się wygraną jako najlepsi kandydaci na kolejne lata. Z pewnością niektóre metody okazały się odtąd „pierwszymi rzeczami do wypróbowania”.
Możesz rozważyć dyfuzję anizotropową. Istnieje wiele metod opartych na tej technice. Mówiąc ogólnie, dotyczy zdjęć. Jest to adaptacyjna metoda odszumiania, która ma na celu wygładzenie nieostrych części obrazu i zachowanie krawędzi.
Ponadto, aby zminimalizować całkowitą zmienność, możesz skorzystać z tego samouczka . Autorzy dostarczają również kod MATLAB. Rozpoznają problem jako analizę wcześniejszego problemu, jest on w pewien sposób podobny do mapowania liniowego (takiego jak reprezentacje czasowo-częstotliwościowe). Ale używają matrycy różnic zamiast transformacji.
źródło
Chaohuang ma dobrą odpowiedź, ale dodam też, że jedną inną metodą, której można użyć, jest transformacja falkowa Haar, a następnie koefektywny skurcz falkowy i odwrotna transformacja Haar z powrotem do dziedziny czasu.
Transformacja falkowa Haara rozkłada sygnał na współczynniki funkcji kwadratowych i różnicowych, aczkolwiek w różnych skalach. Chodzi o to, aby „wymusić” nową kwadratową reprezentację sygnału, aby jak najlepiej pasowała do oryginalnego sygnału, a zatem taka, która najlepiej reprezentuje położenie krawędzi.
Kiedy wykonujesz koefektywny skurcz, wszystko to oznacza, że ustawiasz określone współczynniki funkcji transformowanej Haar na zero. (Istnieją inne bardziej zaangażowane metody, ale to jest najprostsze). Współczynniki falkowe transformowane Haar to wyniki związane z różnymi funkcjami kwadrat / różnica w różnych skalach. RHS transformowanego sygnału Haara reprezentuje zasady kwadratu / różnicy w najniższej skali, a zatem może być interpretowany przy „najwyższej częstotliwości”. Większość energii szumu będzie zatem leżeć tutaj, a większość energii sygnału, która będzie leżeć na LHS. Jest to te współczynniki, które są zerowane, a wynik jest następnie odwracany z powrotem do dziedziny czasu.
W załączeniu podano przykład sinusoidy uszkodzonej przez duży hałas AWGN. Celem jest ustalenie, gdzie leży „początek” i „koniec” impulsu. Tradycyjne filtrowanie rozmazuje krawędzie o wysokiej częstotliwości (i bardzo zlokalizowane w czasie), ponieważ w jego sercu filtrowanie jest techniką L-2. Natomiast następujący iteracyjny proces odmrozi, a także zachowa krawędzie:
(Myślałem mógł dołączyć filmów tutaj, ale nie wydają się być w stanie. Można pobrać film zrobiłem procesu tutaj ). (Kliknij prawym przyciskiem myszy i „zapisz link jako”).
Napisałem proces „ręcznie” w MATLAB i wygląda to tak:
Możesz wyraźnie zobaczyć, w jaki sposób kurczą się współczynniki i wynikającą z tego odwrotną transformację Haar.
Wadą tej metody jest jednak to, że krawędzie muszą leżeć w podstawach kwadratowych / różnicowych lub wokół nich w danej skali. Jeśli nie, transformacja jest zmuszona przeskoczyć na następny wyższy poziom, a tym samym traci się dokładne położenie krawędzi. W celu przeciwdziałania temu zastosowano wiele metod rozdzielczości, ale są one bardziej zaangażowane.
źródło
Prostą metodą, która często działa, jest zastosowanie filtra mediany.
źródło