2013-04-05 11 views
8

Czasami nasz optyczny system kontroli staje się nieostry, co prowadzi do bezsensownych pomiarów. Zostałem poproszony o opracowanie detektora "out of focus", który posłuży do sterowania osią Z systemu kamer. Dostępne obrazy to bmp.Jak wykryć, kiedy obraz jest nieostry?

Szukam podejść i algorytmów do zbadania. Na przykład, czy powinienem izolować funkcje i mierzyć zgodność lub czy można zastosować wykrywanie krawędzi?

Jest to ostry obraz:

in focus


I to jest nieostry obraz:

out of focus

+0

Czy w tej sytuacji masz kilka zdjęć tego samego obiektu, a Twoim zadaniem jest ustalenie, który z obrazów jest nieostry lub czy będziesz musiał określić, czy jakiś nieostry obraz jest nieostry? –

Odpowiedz

10

Kluczem jest to, że w ostrości obrazu ma znacznie silniejsze gradienty i ostre cechy. Proponuję więc zastosować filtr Gaussa Laplace'a, a następnie przyjrzeć się rozkładowi wartości pikseli wyniku. Poniższy wykres pokazuje zastosowanie tego pomysłu do twoich obrazów, gdzie czarny odnosi się do nieostrego obrazu, a czerwony do tego, który jest ostry. Fokus ma o wiele więcej wysokich wartości (ponieważ obraz ma bardziej ostre gradienty).

Gdy masz histogramy, możesz je odróżnić, porównując np. 90% percentylów rozkładu (który jest wrażliwy na ogony). Dla obrazu nieostry jest 7 , a dla obrazu ostrego wynosi 13,6 (czyli dwukrotność różnicy).

enter image description here

+0

W jaki sposób są określane wartości? Dzięki. – saurabheights

1

Szybki i brudny wersja algorytmu kontrastu jest podsumowanie różnic między sąsiednimi pikselami - wyższa suma jest bardziej kontrastowy.

Powiązane problemy