php使用高斯算法实现图片的模糊处理功能示例


Posted in PHP onNovember 11, 2016

本文实例讲述了php使用高斯算法实现图片的模糊处理功能。分享给大家供大家参考,具体如下:

<?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['basename'];
    $path = $temp['dirname'];
    $exte = $temp['extension'];
    $savename = $savename ? $savename : $name;
    $savepath = $savepath ? $savepath : $path;
    $savefile = $savepath .'/'. $savename;
    $srcinfo = @getimagesize($srcImg);
    switch ($srcinfo[2]) {
      case1: imagegif($srcImgObj, $savefile); break;
      case2: imagejpeg($srcImgObj, $savefile); break;
      case3: imagepng($srcImgObj, $savefile); break;
      default: return'保存失败'; //保存失败
    }
    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);
?>

这个方法百度到的,有个面试我的让我做,百度了一堆资料才实现。

blurFactor的值代表模糊程度

效果展示:

原图:

php使用高斯算法实现图片的模糊处理功能示例

模糊程度2

php使用高斯算法实现图片的模糊处理功能示例

模糊程度3

php使用高斯算法实现图片的模糊处理功能示例

模糊程度4

php使用高斯算法实现图片的模糊处理功能示例

模糊程度5

php使用高斯算法实现图片的模糊处理功能示例

模糊程度6

php使用高斯算法实现图片的模糊处理功能示例

模糊程度7

php使用高斯算法实现图片的模糊处理功能示例

希望本文所述对大家PHP程序设计有所帮助。

PHP 相关文章推荐
用PHP开发GUI
Oct 09 PHP
php基础知识:函数基础知识
Dec 13 PHP
DedeCMS dede_channeltype表字段注释
Apr 07 PHP
php实现文件下载更能介绍
Nov 23 PHP
php模拟ping命令(php exec函数的使用方法)
Oct 25 PHP
php页面防重复提交方法总结
Nov 25 PHP
php读取大文件示例分享(文件操作类)
Apr 13 PHP
PHP正则验证Email的方法
Jun 15 PHP
PHP获取当前执行php文件名的代码
Mar 02 PHP
在php7中MongoDB实现模糊查询的方法详解
May 03 PHP
PHP实现微信提现功能
Sep 30 PHP
TP5框架安全机制实例分析
Apr 05 PHP
PHP实现的方程求解示例分析
Nov 11 #PHP
php5.3后静态绑定用法详解
Nov 11 #PHP
php基于curl实现的股票信息查询类实例
Nov 11 #PHP
PHP中STDCLASS用法实例分析
Nov 11 #PHP
php遍历替换目录下文件指定内容的方法
Nov 10 #PHP
php实现有序数组打印或排序的方法【附Python、C及Go语言实现代码】
Nov 10 #PHP
PHP数组生成XML格式数据的封装类实例
Nov 10 #PHP
You might like
PHP判断手机是IOS还是Android
2015/12/09 PHP
thinkphp框架实现删除和批量删除
2016/06/29 PHP
Yii2框架数据库简单的增删改查语法小结
2016/08/31 PHP
Laravel重写用户登录简单示例
2016/10/08 PHP
php数组实现根据某个键值将相同键值合并生成新二维数组的方法
2017/04/26 PHP
关于在IE下的一个安全BUG --可用于跟踪用户的系统鼠标位置
2013/04/17 Javascript
js 通用订单代码
2013/12/23 Javascript
JS中自定义定时器让它在某一时刻执行
2014/09/02 Javascript
Javascript中的arguments与重载介绍
2015/03/15 Javascript
JS实现仿QQ效果的三级竖向菜单
2015/09/25 Javascript
6种javascript显示当前系统时间代码
2015/12/01 Javascript
Express的路由详解
2015/12/10 Javascript
JS中对象与字符串的互相转换详解
2016/05/20 Javascript
微信小程序实战之登录页面制作(5)
2020/03/30 Javascript
js实现前面自动补全位数的方法
2018/10/10 Javascript
js核心基础之闭包的应用实例分析
2019/05/11 Javascript
在vue中实现给每个页面顶部设置title
2020/07/29 Javascript
小程序自定义弹框效果
2020/11/16 Javascript
[50:22]完美盛典-2018年度红毯走秀
2018/12/16 DOTA
python+django快速实现文件上传
2016/10/24 Python
Python中动态创建类实例的方法
2017/03/24 Python
Python 3.8新特征之asyncio REPL
2019/05/28 Python
pymysql 开启调试模式的实现
2019/09/24 Python
Python学习之os模块及用法
2020/06/03 Python
python matplotlib库的基本使用
2020/09/23 Python
Python txt文件如何转换成字典
2020/11/03 Python
python 爬取小说并下载的示例
2020/12/07 Python
类成员函数的重载、覆盖和隐藏区别
2016/01/27 面试题
this关键字的作用
2016/01/30 面试题
Java如何支持I18N?
2016/10/31 面试题
企业安全生产责任书
2014/04/14 职场文书
初中差生评语
2014/12/29 职场文书
委托书英文
2015/01/28 职场文书
JS如何使用剪贴板操作Clipboard API
2021/05/17 Javascript
oracle删除超过N天数据脚本的方法
2022/02/28 Oracle
Mysql数据库事务的脏读幻读及不可重复读详解
2022/05/30 MySQL