Jeśli chodzi o część do przetwarzania cyfrowego, należy unikać stosowania ogólnych metod wyostrzania, takich jak maska wyostrzająca, ponieważ metody te zwiększają tylko lokalny kontrast - czyniąc szczegóły bardziej widocznymi, ale nie odzyskuje się szczegółów, które stały się niewidoczne. Lepiej jest używać metod opartych na faktycznym odwracaniu rozmycia z powodu niedoskonałego ogniskowania, a do tego trzeba znać funkcję rozpraszania punktów (więc w części obrazu, która nie jest ostra, pojawi się pojedynczy punkt być małym dyskiem o pewnym profilu jasności, jest to tak zwana funkcja rozproszenia punktów).
Możesz obliczyć funkcję rozproszenia punktów, powiększając obszary obrazu o wysokim kontraście. Jeśli wiesz, że istnieje ostra krawędź, przez którą jasność zmienia się o pewną wartość, możesz łatwo obliczyć, co to jest funkcja rozproszenia punktów, która dałaby profil widoczny na obrazie.
Przybliżeniem uzyskuje się przy założeniu, że funkcja punktu rozproszonym jednolity dysk o promieniu R . Jeśli powiększysz jakąś ostrą krawędź, wówczas krzywizna stanie się bardzo mała na powiększonym obrazie, więc możesz założyć, że masz linię prostą, z jednej strony jasność wynosi v1, a po drugiej stronie linii będzie to v2 . Jasność w odległości d od linii v (d) na zdjęciu będzie płynną funkcją ze względu na nieostrość, która ma tendencję do v1 z jednej strony i v2 z drugiej strony. W pobliżu d = 0 funkcja g (d) = [v (d) - v1] / [2 (v2 - v1)] zachowuje się następująco:
g(d) = 1/4 - d/(pi R) + d^3/(6 pi R^3) +...
Tak więc, dokonując liniowego dopasowania funkcji g (d) - 1/4 pod względem współrzędnych xiy obrazu w pobliżu linii, otrzymamy wynik postaci:
g(x,y) = A + b x + c y
a następnie wynika z tego:
1/(pi R) = sqrt[b^2 + c^2]
Tak więc, funkcja rozproszenia punktów może być obliczona z pewnym wysiłkiem z obrazu, jeśli nie jesteś taki zły z matematyki.
Następnie, jeśli obliczyłeś funkcję rozproszenia punktów, wówczas odwracanie rozmycia rozmytego jest bułką z masłem przy użyciu algorytmów takich jak dekonwolucja Wienera lub dekonwolucja Richardsona – Lucy . Takie algorytmy są zwykle zawarte w oprogramowaniu do przetwarzania obrazu, ale powinieneś je uruchomić przy użyciu rzeczywistej funkcji rozproszenia punktów, która dotyczy twojego obrazu, a nie jakiejś standardowej rozmycia gaussowskiego. Np. Ta wtyczka ImageJ ma różne algorytmy dekonwolucji, które wymagają określenia funkcji rozkładu punktów. I ImageJ można uzyskać tutaj .
Powinienem tutaj dodać, że należy tego dokonać w liniowej przestrzeni kolorów. Musisz najpierw przekształcić w liniową przestrzeń kolorów RGB lub XYZ, wykonać tam operację wyostrzania, a następnie przekształcić ją z powrotem w sRGB.