2013-07-03 12 views
5

Obecnie piszę pracę badawczą o nowym algorytmie steganografii. Użyłem Canny Edge detector w pewnym momencie mojego algorytmu. W artykule muszę napisać złożoność czasu nowatorskiego podejścia, które z kolei zależy od złożoności czasowej detektora krawędziowego.Złożoność czasowa detektora krawędzi Canny

Problem polega na tym, że nigdzie w sieci nie znalazłem żadnego odniesienia na temat złożoności czasu w kanu. Przeczytałem nawet oryginalny, chudy papier. Nie jestem w stanie wydedukować tego poprawnie i potrzebuję pomocy.

Odpowiedz

7

canny składa

  1. splotem obrazu z jądra rozmazaniu
  2. cztery zwoje obrazu jądrach detektora krawędzi,
  3. obliczeniowy kierunku gradientu,
  4. Nieograniczona supresja i
  5. Próg z histerezą,

Kroki (1), (2), (3) i (4) są zaimplementowane w kategoriach zwojów obrazu z jądrem o stałym rozmiarze. Używając FFT, możliwe jest implementowanie nawinięć w czasie O (n log n), gdzie n jest liczbą elementów. Jeśli obraz ma wymiary m × n, złożoność czasu będzie O (mn log mn) dla tych kroków.

Ostatni etap polega na przetwarzaniu obrazu w celu usunięcia wszystkich wartości wysokich i niskich, a następnie upuszczeniu wszystkich innych pikseli, które nie znajdują się w pobliżu innych pikseli. Można to zrobić w czasie O (mn).

W związku z tym całkowita złożoność czasu wynosi O (mn log mn).

Mam nadzieję, że to pomoże!

+0

Wielkie dzięki! Chociaż nie potrzebuję tego teraz, ponieważ pytanie zadano kilka miesięcy temu, ale ta odpowiedź będzie działać jako odniesienie do wielu ludzi. Ponieważ nie ma odpowiedniej analizy złożoności czasu Canny'ego. –

+0

@templatetypedef Czy potrafisz oszacować złożoność O-przestrzeni swojego algorytmu Canny? –

+0

@templatetypedef W jaki sposób można zaimplementować tłumienie niedwoiste? Nie mogłem wymyślić, jak to zrobić. – TheWaveLad

Powiązane problemy