你可以使用PHP获得一个调色板数组,如下所示:

function colorPalette($imageFile, $numColors, $granularity = 5)

{

$granularity = max(1, abs((int)$granularity));

$colors = array();

$size = @getimagesize($imageFile);

if($size === false)

{

user_error("Unable to get image size data");

return false;

}

$img = @imagecreatefromjpeg($imageFile);

// Andres mentioned in the comments the above line only loads jpegs,

// and suggests that to load any file type you can use this:

// $img = @imagecreatefromstring(file_get_contents($imageFile));

if(!$img)

{

user_error("Unable to open image file");

return false;

}

for($x = 0; $x < $size[0]; $x += $granularity)

{

for($y = 0; $y < $size[1]; $y += $granularity)

{

$thisColor = imagecolorat($img, $x, $y);

$rgb = imagecolorsforindex($img, $thisColor);

$red = round(round(($rgb['red'] / 0x33)) * 0x33);

$green = round(round(($rgb['green'] / 0x33)) * 0x33);

$blue = round(round(($rgb['blue'] / 0x33)) * 0x33);

$thisRGB = sprintf('%02X%02X%02X', $red, $green, $blue);

if(array_key_exists($thisRGB, $colors))

{

$colors[$thisRGB]++;

}

else

{

$colors[$thisRGB] = 1;

}

}

}

arsort($colors);

return array_slice(array_keys($colors), 0, $numColors);

}

// sample usage:

$palette = colorPalette('rmnp8.jpg', 10, 4);

echo "

foreach($palette as $color)

{

echo "

#$color\n";

}

echo "

\n";

它给出一个数组,其值高于使用该颜色的频率。

编辑

评论者问如何使用这一目录中的所有文件,这里是:

if ($handle = opendir('./path/to/images')) {

while (false !== ($file = readdir($handle))) {

$palette = colorPalette($file, 10, 4);

echo "

foreach($palette as $color) {

echo "

#$color\n";

}

echo "

\n";

}

closedir($handle);

}

可能不想对太多的文件执行此操作,但它是您的服务器。

或者,如果你宁愿使用Javascript Lokesh’s Color-Theif库确实正在寻找什么。

php 检查图片重复度,php – 检测图片的“整体平均”颜色相关推荐

  1. 图片相似度识别算法公式,图片相似度检测算法

    计算图像相似度的算法有哪些 SIM=StructuralSIMilarity(结构相似性),这是一种用来评测图像质量的一种方法. 由于人类视觉很容易从图像中抽取出结构信息,因此计算两幅图像结构信息的相 ...

  2. 【python 以图搜图】三种图片相似度计算融合算法

    目标:在一个文件夹找出相似度较高的图片,达到以图搜图的目的. 我找了十组,都是高度相似的图片. 核心算法: 1.分别自定义三种计算图片相似度算法,计算图片相似度算法ORB算法,以及局部敏感哈希phas ...

  3. 一种基于颜色统计和特征指纹的图片相似度计算方法

    一种基于颜色统计和特征指纹的图片相似度计算方法 1.摘要 图片相似度有很多实际应用,比如谷歌搜图.淘宝识物购买,现在很多类似应用已经使用神经网络训练实现,但是本文仅仅从图像处理角度出发,根据图像内容特 ...

  4. opencv 简单的图片相似度匹配

    目录 一.基本知识 二.常见的图片相似度去重的方法 三.代码 1.Hash 算法 与 直方图 代码(参考 python OpenCV 图片相似度 Hash算法) (1) 参照代码 (2)自定义 pHa ...

  5. php 图片填充颜色代码,PHP获取图片颜色值,检测图片主要颜色的代码:

    $i=imagecreatefromjpeg("photo3.jpg");//测试图片,自己定义一个,注意路径 for ($x=0;$x for ($y=0;$y $rgb = i ...

  6. linux图片相似度检测软件下载,移动端图像相似度算法选型

    概述 电商场景中,卖家为获取流量,常常出现重复铺货现象,当用户发布上传图像或视频时,在客户端进行图像特征提取和指纹生成,再将其上传至云端指纹库对比后,找出相似图片,杜绝重复铺货造成的计算及存储资源浪费 ...

  7. python检测图片相同部分_用 Python 实现哈希算法检测重复图片

    在 Python 中导入 hashlib 模块,调用函数就可以生成某一个字符串或者文件的哈希值.这个算法对于未被篡改的上传文件非常有效,如果输入数据有细微变化,加密哈希算法都会导致雪崩效应,从而造成新 ...

  8. 图片相似度识别算法,百度图片识别算法

    图像识别算法都有哪些 图像识别算法:1人脸识别类(Eigenface,Fisherface算法特别多),人脸检测类(j-v算法,mtcnn)2车牌识别类,车型识别类(cnn)3字符识别(cnn)... ...

  9. 独家 | 利用孪生网络,Keras,Tensorflow比较图片相似度

    作者:Adrian Rosebrock 翻译:张一然 校对:wwl 本文约3700字,建议阅读8分钟. 在本文中,您将学习如何使用孪生网络和深度学习库Keras / TensorFlow比较两个图像的 ...

最新文章

  1. mysql为什么要压测_mysql集群压测的详细介绍
  2. Wikioi 1020 孪生蜘蛛 Label:Floyd最短路
  3. 服务器信号分析,服务器及其讯号解析装置 Server and its signal analysis apparatus
  4. 方法的定义使用,方法重载及方法的递归调用
  5. Form组件,用ajax发送到后台需要的注意事项
  6. MVC中提交表单的4种方式
  7. WPF中的数据绑定Data Binding使用小结
  8. node获取服务器cpu信息,听说你不知道如何监控Node服务的内存?
  9. 高中生住校好还是走读好?为什么?
  10. Unity Shaders and Effects Cookbook (3-4) 使用高光贴图
  11. 问题:jquery中的change()事件,以及jquery中的prop()事件与attr()事件的区别
  12. 跨部门的bug的沟通
  13. java 网络编程 总结篇
  14. 线阵相机参数选择 照明方式
  15. ARMv8-A TrustZone概述
  16. 【无标题】学习浩辰CAD软件的心得
  17. php求一个矩阵中最大的二维矩阵,算法,_Torus 二维最大矩阵的高效算法求解,算法 - phpStudy...
  18. 求和 矩阵迹的性质_怎么证明矩阵特征值的和等于矩阵的迹_
  19. 学计算机必学日语哪个学校,高中生学日语,大学可以学电脑类的专业吗?
  20. 【3】WEB安全学习----HTTP协议

热门文章

  1. 又到了年终总结的时候了,数据分析的年度工作计划,你知道该怎么写吗?
  2. 探索推荐引擎内部的秘密,第 1 部分: 推荐引擎初探
  3. 新浪微博API OAuth 2 Python客户端
  4. vue @click 赋值_vue 手写一个时间选择器
  5. Hive SQL基础
  6. Redis 基数统计:HyperLogLog 小内存大用处
  7. Maven报错Missing artifact jdk.tools:jdk.tools:jar:1.7--转
  8. mysql重连,连接丢失:The last packet successfully received from the server--转载
  9. 机器学习算法基础——数据降维
  10. BM惊爆:EOS一周年工作KPI