php Imagick获取图片RGB颜色值


Posted in PHP onJuly 28, 2014

很多图片站点都会根据用户上传的图片检索出图片的主要颜色值,然后在通过颜色搜索相关的图片。

之前按照网上的方法将图片缩放(或者马赛克)然后遍历每个像素点,然后统计处RGB次数最多的值,这做法效率太低而且取到的RGB值不够精确。之后才发现使用Imagick的quantizeImage方法能够很方便的取到图片中平均的RGB值.

$average = new Imagick("xiaocai.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 ){
// 3water.com
$colorarr[] = $pixel->getColor();
}
}
return $colorarr;
}
$colorarr = GetImagesColor($average);
foreach($colorarr as $val){
echo "<div style='background-color: rgb({$val['r']},{$val['g']},{$val['b']});width:50px;height:50px;float:left;'></div>";
}
PHP 相关文章推荐
Mysql和网页显示乱码解决方法集锦
Mar 27 PHP
php 三维饼图的实现代码
Sep 28 PHP
将数组写入txt文件 var_export
Apr 21 PHP
PHP 彩色文字实现代码
Jun 29 PHP
《PHP编程最快明白》第三讲:php数组
Nov 01 PHP
使用PHP导出Word文档的原理和实例
Oct 21 PHP
PHP登陆后跳转到登陆前页面实现思路及代码
Jan 17 PHP
PHP中copy on write写时复制机制介绍
May 13 PHP
模板引擎smarty工作原理以及使用示例
May 25 PHP
Smarty使用自定义资源的方法
Aug 08 PHP
PHP几个实用自定义函数小结
Jan 25 PHP
PHP程序员简单的开展服务治理架构操作详解(二)
May 14 PHP
PHP exif扩展方法开启详解
Jul 28 #PHP
取得单条网站评论以数组形式进行输出
Jul 28 #PHP
PHP中unset,array_splice删除数组中元素的区别
Jul 28 #PHP
PHP常用数组函数介绍
Jul 28 #PHP
PHP调用C#开发的dll类库方法
Jul 28 #PHP
php中单个数据库字段多列显示(单字段分页、横向输出)
Jul 28 #PHP
windows的文件系统机制引发的PHP路径爆破问题分析
Jul 28 #PHP
You might like
php5.5新数组函数array_column使用
2013/07/08 PHP
如何通过Linux命令行使用和运行PHP脚本
2015/07/29 PHP
求得div 下 img的src地址的js代码
2007/02/28 Javascript
javascript抖动元素的小例子
2013/10/28 Javascript
我的Node.js学习之路(二)NPM模块管理
2014/07/06 Javascript
使用jquery菜单插件HoverTree仿京东无限级菜单
2014/12/18 Javascript
全面解析JS字符串和正则表达式中的match、replace、exec等函数
2016/07/01 Javascript
如何清除IE10+ input X 文本框的叉叉和密码输入框的眼睛图标
2016/12/21 Javascript
微信小程序联网请求的轮播图
2017/07/07 Javascript
vue实现的双向数据绑定操作示例
2018/12/04 Javascript
基于AngularJS拖拽插件ngDraggable.js实现拖拽排序功能
2019/04/02 Javascript
jQuery与原生JavaScript选择HTML元素集合用法对比分析
2019/11/26 jQuery
纯js+css实现仿移动端淘宝网站的弹出详情框功能
2019/12/29 Javascript
JavaScript本地储存:localStorage、sessionStorage、cookie的使用
2020/10/13 Javascript
[58:37]Serenity vs Fnatic 2018国际邀请赛淘汰赛BO1 8.21
2018/08/22 DOTA
Python3处理文件中每个词的方法
2015/05/22 Python
Python中操作mysql的pymysql模块详解
2016/09/13 Python
python编程实现12306的一个小爬虫实例
2017/12/27 Python
Python 使用 docopt 解析json参数文件过程讲解
2019/08/13 Python
6行Python代码实现进度条效果(Progress、tqdm、alive-progress​​​​​​​和PySimpleGUI库)
2020/01/06 Python
python求一个字符串的所有排列的实现方法
2020/02/04 Python
浅谈pytorch中的BN层的注意事项
2020/06/23 Python
浅谈python 类方法/静态方法
2020/09/18 Python
python 绘制国旗的示例
2020/09/27 Python
Pytorch 图像变换函数集合小结
2021/02/01 Python
用HTML5中的Canvas结合公式绘制粒子运动的教程
2015/05/08 HTML / CSS
京东奢侈品:全球奢侈品牌
2018/03/17 全球购物
思想汇报范文
2013/11/04 职场文书
全陪导游欢迎词
2014/01/17 职场文书
2014年端午节活动方案
2014/03/11 职场文书
创意广告词
2014/03/17 职场文书
安全生产会议制度
2015/08/06 职场文书
运动会广播稿20字
2015/08/19 职场文书
导游词之香港-太平山顶
2019/10/18 职场文书
如何使用注解方式实现 Redis 分布式锁
2022/07/23 Redis
前端canvas中物体边框和控制点的实现示例
2022/08/05 Javascript