ho bisogno di offuscare una determinata area di un'immagine utilizzando PHP e GD, attualmente sto usando il seguente codice:PHP/GD Controllo sfocatura Effetto
for ($x = $_GET['x1']; $x < $_GET['x2']; $x += $pixel)
{
for ($y = $_GET['y1']; $y < $_GET['y2']; $y += $pixel)
{
ImageFilledRectangle($image, $x, $y, $x + $pixel - 1, $y + $pixel - 1, ImageColorAt($image, $x, $y));
}
}
Questo sostituisce in pratica l'area selezionata con piazze di $ pixel pixel. Che voglio realizzare una sorta di sfocatura (gaussiana preferibilmente) effetto, so di poter utilizzare la) Funzione ImageFilter (:
ImageFilter($image, IMG_FILTER_GAUSSIAN_BLUR);
Ma offusca la intera area, il mio problema è che voglio solo offuscare una specifica la zona.
In effetti, questo è un bel soluzione però mi vorrebbe ancora sapere come manualmente crea un effetto sfocato. –
Puoi cercare su wikipedia: http://en.wikipedia.org/wiki/Gaussian_blur#Implementation o guardare post simili su StackOverflow: http://stackoverflow.com/questions/98359/fastest-gaussian-blur- implementazione ma raccomanderei l'uso di una libreria integrata. Queste librerie utilizzano algoritmi compilati per accelerare il processo. – Scharrels
Ho preso il suggerimento che mi hai dato e devo fare un loop di ImageFilter 128 sull'area selezionata per offuscarlo, magari usando un'implementazione personalizzata. Posso ottenere il risultato più velocemente. –