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巧获服务器端信息
Dec 06 PHP
PHP中读写文件实现代码
Oct 20 PHP
单点登录 Ucenter示例分析
Oct 29 PHP
JS异常处理try..catch语句的作用和实例
May 05 PHP
php使用数组填充下拉列表框的方法
Mar 31 PHP
php使用GD实现颜色渐变实例
Jun 02 PHP
利用PHP生成静态html页面的原理
Sep 30 PHP
PHP实现小偷程序实例
Oct 31 PHP
php面向对象的用户登录身份验证
Jun 08 PHP
PHP实现的CURL非阻塞调用类
Jul 26 PHP
ThinkPHP3.2.3框架Memcache缓存使用方法实例总结
Apr 15 PHP
PHP实现限制域名访问的实现代码(本地验证)
Sep 13 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
swfupload 多文件上传实现代码
2008/08/27 PHP
PHP print类函数使用总结
2010/06/25 PHP
ThinkPHP3.1基础知识快速入门
2014/06/19 PHP
PHP 实现判断用户是否手机访问
2015/01/21 PHP
php中请求url的五种方法总结
2017/07/13 PHP
laravel中的一些简单实用功能
2018/11/03 PHP
PHP设计模式之外观模式(Facade)入门与应用详解
2019/12/13 PHP
用jquery生成二级菜单的实例代码
2013/06/24 Javascript
JS定时器实例详细分析
2013/10/11 Javascript
jquery弹出层类代码分享
2013/12/27 Javascript
不要使用jQuery触发原生事件的方法
2014/03/03 Javascript
jQuery中odd选择器的定义和用法
2014/12/23 Javascript
js简单实现Select互换数据的方法
2015/08/17 Javascript
VUEJS实战之修复错误并且美化时间(2)
2016/06/13 Javascript
JS 拼凑字符串的简单实例
2016/09/02 Javascript
js面向对象实现canvas制作彩虹球喷枪效果
2016/09/24 Javascript
微信小程序 数组中的push与concat的区别
2017/01/05 Javascript
BootStrap实现带关闭按钮功能
2017/02/15 Javascript
angularJs的ng-class切换class
2017/06/23 Javascript
微信小程序scroll-view横向滑动嵌套for循环的示例代码
2018/09/20 Javascript
深入koa-bodyparser原理解析
2019/01/16 Javascript
Vue框架TypeScript装饰器使用指南小结
2019/02/18 Javascript
微信小程序制作扭蛋机代码实例
2019/09/24 Javascript
javascript实现移动端触屏拖拽功能
2020/07/29 Javascript
[03:34]2014DOTA2西雅图国际邀请赛 淘汰赛7月15日TOPPLAY
2014/07/15 DOTA
python中日志logging模块的性能及多进程详解
2017/07/18 Python
解决Pyinstaller 打包exe文件 取消dos窗口(黑框框)的问题
2019/06/21 Python
python网络爬虫 Scrapy中selenium用法详解
2019/09/28 Python
Python笔记之代理模式
2019/11/20 Python
Python 开发工具PyCharm安装教程图文详解(新手必看)
2020/02/28 Python
Python如何实现在字符串里嵌入双引号或者单引号
2020/03/02 Python
python实现登录与注册系统
2020/11/30 Python
css3图片边框border-image的用法
2017/06/30 HTML / CSS
HTML5之web workers_动力节点Java学院整理
2017/07/17 HTML / CSS
2014年个人工作总结模板
2014/12/15 职场文书
java设计模式--建造者模式详解
2021/07/21 Java/Android