StartAlgorytmyPrzetwarzanie obrazówAproksymacja półtonowa, sygnał szumu
Baza Wiedzy
Wersja offline serwisu przeznaczona na urządzenia z systemem Android.

Darowizny
darowiznaWspomóż rozwój serwisu


Nagłówki RSS
Kanał artykuły
Kanał implementacje
Kanał komentarze
Kanał forum


Bookmarki









Sonda
Implementacji w jakim języku programowania poszukujesz?
 
Aproksymacja półtonowa, sygnał szumu
Ocena użytkowników:++++- / 4
SłabyŚwietny 
Wpisany przez Tomasz Lubiński
środa, 07 września 2005 20:53
Aproksymacja półtonowa, polega na przekształceniu obrazu o większej liczbie odcieni szarości (ewentualnie barw) w obraz czarno - biały. Intuicyjnie robi się to tak, że punkty o jasności powyżej pewnego założonego progu (np.: połowa wartości maksymalnej) w obrazie wejściowym przekształca się na punkty białe w obrazie wyjściowym. Analogicznie punkty o jasności poniżej progu w obrazie wejściowym przekształca się w punkty czarne w obrazie wyjściowym. W miejscu płynnych przejść w obrazie wynikowym powstaje jednak ostra granica. By temu zaradzić moduluje się próg sygnałem szumu, tak by pewne punkty o podobnej wartości były powyżej ustalonego progu a inne nie. W ten sposób uzyskujemy wiele punktów białych i czarnych obok siebie, daje to efekt delikatnego przejścia. Możemy tutaj zastosować różne podejścia.

  • wykorzystać funkcję sinus czyli do ustalonego progu dodawać wartość A·sinαx·sinβy, gdzie x oraz y to współrzędne kolejnych rozpatrywanych punktów obrazu, A, α oraz β to pewne odpowiednio dobrane stałe
  • wykorzystać funkcję random (generator liczb losowych), czyli do ustalonego progu dodawać liczbę losową z zakresu np -10% progu .. 10% progu


Wynik działania algorytmu:
Sygnał szumu

Dzięki tym sposobom możemy uzyskać pewną poprawę. Lepsze efekty dają jednak metody propagacji błędu, takie jak algorytm Floyda-Steinberga. Są one jednak nieco bardziej skomplikowane.



Autor Język programowania Komentarz Otwórz Pobierz Ocena
Tomasz Lubiński C/C++ Borland Builder 6
Implementacja w C/C++
Implementacja w C/C++
++++- / 1
Tomasz Lubiński Delphi/Pascal Borland Delphi 5
Implementacja w Delphi/Pascal
Implementacja w Delphi/Pascal
++++- / 1
 
Dodaj własną implementację tego algorytmu
  • Zaloguj się na stronie
Plik:
Język programowania:
Komentarz:
  By móc dodać implementacje zaloguj się na stronie



Poprawiony: sobota, 11 czerwca 2011 21:22

Dodaj komentarz

Kod antysapmowy
Odśwież