PHP实现获取图片颜色值的方法

PHP获取图片颜色值检测图片主要颜色是通过imagecreatefromjpeg函数读取图片,再循环获得各个颜色值加以计算实现的。

 

 1 /**
 2  * 获取图片主要颜色
 3  * @param $image
 4  * @return array
 5  */
 6 function dominant_color($image)
 7 {
 8     $rTotal = $gTotal = $bTotal = $total = 0;
 9     $i      = imagecreatefromjpeg($image);
10     for ($x = 0; $x < imagesx($i); $x++) {
11         for ($y = 0; $y < imagesy($i); $y++) {
12             $rgb    = imagecolorat($i, $x, $y);
13             $r      = ($rgb >> 16) & 0xFF;
14             $g      = ($rgb >> 8) & 0xFF;
15             $b      = $rgb & 0xFF;
16             $rTotal += $r;
17             $gTotal += $g;
18             $bTotal += $b;
19             $total++;
20         }
21     }
22     $rAverage = round($rTotal / $total);
23     $gAverage = round($gTotal / $total);
24     $bAverage = round($bTotal / $total);
25     return array(
26         'r' => $rAverage,
27         'g' => $gAverage,
28         'b' => $bAverage,
29     );
30 }

 

相关文章:

  • 2022-01-17
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2021-08-02
  • 2022-12-23
  • 2021-10-24
  • 2021-12-10
猜你喜欢
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2021-06-18
  • 2021-04-04
  • 2023-03-09
  • 2021-05-12
相关资源
相似解决方案