Per quanto riguarda la parte di elaborazione digitale, dovresti evitare di utilizzare i metodi di nitidezza per scopi generali come la maschera di contrasto, poiché questi metodi aumenteranno solo il contrasto locale - rendendo i dettagli più visibili ma non otterrai dettagli che sono diventati invisibili. È meglio usare metodi basati sull'inversione effettiva della sfocatura a causa della messa a fuoco imperfetta, e per questo è necessario conoscere la funzione di diffusione del punto (quindi, nella parte dell'immagine che non è a fuoco, apparirà un singolo punto essere un piccolo disco con un certo profilo di luminosità, questa è la cosiddetta funzione di diffusione del punto).
È possibile calcolare la funzione di diffusione dei punti ingrandendo le aree ad alto contrasto dell'immagine. Se sai che c'è un bordo acuto attraverso il quale la luminosità cambia di una certa quantità, puoi facilmente calcolare quale sia la funzione di diffusione del punto che produrrebbe il profilo che vedi nell'immagine.
Una prima approssimazione si ottiene assumendo che la funzione di diffusione di punto è un disco uniforme di raggio R . Se ingrandisci un bordo nitido, la curvatura diventerà molto piccola nell'immagine ingrandita, quindi puoi presumere che tu abbia una linea retta, da un lato la luminosità è v1 dall'altro lato della linea sarà v2 . La luminosità a una distanza d dalla linea v (d) nell'immagine sarà una funzione regolare a causa della non nitidezza che tende a v1 su un lato e v2 sull'altro lato. Vicino a = 0, la funzione g (d) = [v (d) - v1] / [2 (v2 - v1)] si comporta come segue:
g(d) = 1/4 - d/(pi R) + d^3/(6 pi R^3) +...
Quindi, facendo un adattamento lineare della funzione g (d) - 1/4 in termini di coordinate xey dell'immagine vicino alla linea, otterrai un risultato del modulo:
g(x,y) = A + b x + c y
e quindi segue che:
1/(pi R) = sqrt[b^2 + c^2]
Quindi, la funzione di diffusione del punto può essere calcolata con un certo sforzo dall'immagine, se non sei troppo cattivo in matematica.
Quindi se hai calcolato la funzione di diffusione del punto, invertire la sfocatura del defocus è un gioco da ragazzi usando algoritmi come la deconvoluzione di Wiener o la deconvoluzione di Richardson-Lucy . Tali algoritmi sono generalmente inclusi nel software di elaborazione delle immagini, ma è necessario eseguirli utilizzando la funzione di diffusione dei punti effettiva che si applica all'immagine, non una sfocatura gaussiana standard. Ad esempio, questo plugin ImageJ ha vari algoritmi di deconvoluzione che richiedono di specificare la funzione di diffusione dei punti. E ImageJ può essere ottenuto qui .
Dovrei aggiungere qui che questo dovrebbe essere fatto in uno spazio cromatico lineare. Quindi, devi prima trasformare in RGB lineare o in spazio colore XYZ, eseguire l'operazione di nitidezza lì e poi tornare a sRGB.