Maison >développement back-end >Problème PHP >Comment obtenir un flou gaussien dans les images en PHP

Comment obtenir un flou gaussien dans les images en PHP

藏色散人
藏色散人original
2021-05-12 09:47:542988parcourir

En PHP, l'algorithme gaussien peut être utilisé pour flouter les images. L'instruction pour y parvenir est "function gaussian_blur($srcImg,$savepath=null...$blurFactor=3){...}" , où la valeur de flouFactor représente le degré de flou.

Comment obtenir un flou gaussien dans les images en PHP

L'environnement d'exploitation de cet article : système Windows 7, PHP version 7.1, ordinateur DELL G3

L'exemple de cet article décrit comment PHP utilise l'algorithme gaussien pour réaliser la fonction de traitement d'image flou. Je voudrais le partager avec vous pour votre référence. Les détails sont les suivants :

<?php
class image_blur{
   function gaussian_blur($srcImg,$savepath=null,$savename=null,$blurFactor=3){
    $gdImageResource=$this->image_create_from_ext($srcImg);
    $srcImgObj=$this->blur($gdImageResource,$blurFactor);
    $temp = pathinfo($srcImg);
    $name = $temp[&#39;basename&#39;];
    $path = $temp[&#39;dirname&#39;];
    $exte = $temp[&#39;extension&#39;];
    $savename = $savename ? $savename : $name;
    $savepath = $savepath ? $savepath : $path;
    $savefile = $savepath .&#39;/&#39;. $savename;
    $srcinfo = @getimagesize($srcImg);
    switch ($srcinfo[2]) {
      case1: imagegif($srcImgObj, $savefile); break;
      case2: imagejpeg($srcImgObj, $savefile); break;
      case3: imagepng($srcImgObj, $savefile); break;
      default: return&#39;保存失败&#39;; //保存失败
    }
    return $savefile;
    imagedestroy($srcImgObj);
  }
}
$image_blur = new image_blur();
//blurFactor的值代表模糊程度,savepath为空时候直接覆盖,savename为空直接用原名
$image_blur->gaussian_blur($srcImg="./5.jpg",$savepath=null,$savename=null,$blurFactor=5);
?>

Cette méthode a été trouvée sur Baidu. Quelqu'un qui m'a interviewé m'a demandé de le faire et j'avais besoin de beaucoup d'informations. Baidu pour le mettre en œuvre.

La valeur de flouFactor représente le degré de flou

Affichage de l'effet :

Image originale :

Niveau de flou 2

Niveau de flou 3

Niveau de flou 4

Flou niveau 5

Flou niveau 6

Flou niveau 7

Apprentissage recommandé : "Tutoriel vidéo PHP"

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn