PHP编程获取图片的主色调的方法【基于Imagick扩展】


Posted in PHP onAugust 02, 2017

本文实例讲述了PHP编程获取图片的主色调的方法。分享给大家供大家参考,具体如下:

代码中用到了php的图片扩展,所以使用之前,需要先安装PHP的Imagick扩展,具体安装如下(window下): windows7下安装php的imagick和imagemagick扩展教程

代码如下:

<?php
$average = new Imagick("./fruit/143511081321676_593.jpg");
$average->quantizeImage( 10, Imagick::COLORSPACE_RGB, 0, false, false );
$average->uniqueImageColors();
function GetImagesColor( Imagick $im ){
  $colorarr = array();
  $it = $im->getPixelIterator();
  $it->resetIterator();
  while( $row = $it->getNextIteratorRow() ){
    foreach ( $row as $pixel ){
      $colorarr[] = $pixel->getColor();
    }
  }
  return $colorarr;
}
$colorarr = GetImagesColor($average);
foreach($colorarr as $val){
  $r += $val['r'];
  $g += $val['g'];
  $b += $val['b'];
  echo "<div style='background-color: rgb({$val['r']},{$val['g']},{$val['b']});width:50px;height:50px;float:left;'></div>";
}
$r = round($r/10);
$g = round($g/10);
$b = round($b/10);
echo "<br><div style='background-color: rgb({$r},{$g},{$b});width:100px;height:100px;float:left;'></div>";
?>

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

PHP 相关文章推荐
PHP Pear 安装及使用
Mar 19 PHP
在命令行下运行PHP脚本[带参数]的方法
Jan 22 PHP
php 安全过滤函数代码
May 07 PHP
PHP代码审核的详细介绍
Jun 13 PHP
PHP_SELF,SCRIPT_NAME,REQUEST_URI区别
Dec 24 PHP
php实现概率性随机抽奖代码
Jan 02 PHP
PHP使用内置函数生成图片的方法详解
May 09 PHP
PHPStorm+XDebug进行调试图文教程
Jun 13 PHP
php json转换相关知识(小结)
Dec 21 PHP
实例讲解php实现多线程
Jan 27 PHP
PHP正则验证字符串是否为数字的两种方法并附常用正则
Feb 27 PHP
PHP实现的杨辉三角求解算法分析
Mar 11 PHP
php7安装mongoDB扩展的方法分析
Aug 02 #PHP
Yii2 队列 shmilyzxt/yii2-queue 简单概述
Aug 02 #PHP
基于win2003虚拟机中apache服务器的访问
Aug 01 #PHP
完美解决Thinkphp3.2中插入相同数据的问题
Aug 01 #PHP
TP3.2批量上传文件或图片 同名冲突问题的解决方法
Aug 01 #PHP
如何修改yii2.0自带的user表为其它的表
Aug 01 #PHP
修改yii2.0用户登录使用的user表为其它的表实现方法(推荐)
Aug 01 #PHP
You might like
某大型网络公司应聘时的笔试题目附答案
2008/03/27 PHP
探讨如何把session存入数据库
2013/06/07 PHP
PHP中抽象类和抽象方法概念与用法分析
2016/05/24 PHP
PHP缩略图生成和图片水印制作
2017/01/07 PHP
PHP实现的策略模式简单示例
2017/08/25 PHP
php正确输出json数据的实例讲解
2018/08/21 PHP
Javascript学习笔记9 prototype封装继承
2010/01/11 Javascript
jQuery ajax在GBK编码下表单提交终极解决方案(非二次编码方法)
2010/10/20 Javascript
基于jquery的设置页面文本框 只能输入数字的实现代码
2011/04/19 Javascript
jQuery easyui datagrid动态查询数据实例讲解
2013/02/26 Javascript
AngularJS中的指令全面解析(必看)
2016/05/20 Javascript
jQuery组件easyui对话框实现代码
2016/08/25 Javascript
微信小程序 网络API 上传、下载详解
2016/11/09 Javascript
JS非行间样式获取函数的实例代码
2018/06/05 Javascript
优雅的将ElementUI表格变身成树形表格的方法步骤
2019/04/11 Javascript
微信小程序日历插件代码实例
2019/12/04 Javascript
微信小程序tab左右滑动切换功能的实现代码
2021/02/08 Javascript
Python Socket编程入门教程
2014/07/11 Python
Python3读取UTF-8文件及统计文件行数的方法
2015/05/22 Python
python+selenium开发环境搭建图文教程
2017/08/11 Python
浅谈pandas中shift和diff函数关系
2018/04/08 Python
python实现根据指定字符截取对应的行的内容方法
2018/10/23 Python
python实现Virginia无密钥解密
2019/03/20 Python
Jupyter Notebook打开任意文件夹操作
2020/04/14 Python
pycharm 2020.2.4 pip install Flask 报错 Error:Non-zero exit code的问题
2020/12/04 Python
python中append函数用法讲解
2020/12/11 Python
C语言笔试题
2014/09/04 面试题
卫校中专生的自我评价
2014/01/15 职场文书
计算机数据库专业职业生涯规划书
2014/02/08 职场文书
大学生学年自我鉴定
2014/02/10 职场文书
春节联欢会主持词
2014/03/24 职场文书
2014年实验室工作总结
2014/12/03 职场文书
2015年宣传工作总结
2015/04/08 职场文书
水知道答案观后感
2015/06/08 职场文书
python opencv旋转图片的使用方法
2021/06/04 Python
OpenCV图像变换之傅里叶变换的一些应用
2021/07/26 Python