加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > PHP教程 > 正文

php – 如何遍历图像的所有像素?

发布时间:2020-12-13 14:10:46 所属栏目:PHP教程 来源:网络整理
导读:我想循环遍历图像的所有像素,找到该像素的rgba值,并对这些像素执行某些操作. 例 假设我的图像是100×100像素.我想用我已经做过的函数找到每个像素的值: function getPixel($image,$x,$y) { $colors = imagecolorsforindex($image,imagecolorat($image,$y));
我想循环遍历图像的所有像素,找到该像素的rgba值,并对这些像素执行某些操作.

假设我的图像是100×100像素.我想用我已经做过的函数找到每个像素的值:

function getPixel($image,$x,$y) {

  $colors = imagecolorsforindex($image,imagecolorat($image,$y));
  $inrgba = 'rgba(' . $colors['red'] . ',' . $colors['green'] . ',' . $colors['blue'] . ',' . $colors['alpha'] . ')';
  return $inrgba;
}

并将这些值以及图像的尺寸存储在数组或数组数组中.我想在html页面中使用最终结果.

我该怎么做呢?

for($x=1;$x<=$width;$x++)
{
    for($y=1;$y<=$height;$y++)
    {
        $pixel=getPixel($image,$y);
        //do something
    }
}

这样做是找到每列中的每个像素.

i=iteration
pixel coordinate = (x,y)

对于5 x 5图像,迭代看起来像这样:

i1 = (1,1)
i2 = (1,2)
i3 = (1,3)
i4 = (1,4)
i5 = (1,5)
i6 = (2,1)
i7 = (2,2)
i8 = (2,3)
i9 = (2,4)
i10 = (2,5)
i11 = (3,1)
i12 = (3,2)
i13 = (3,3)
i14 = (3,4)
i15 = (3,5)
i16 = (4,1)
i17 = (4,2)
i18 = (4,3)
i19 = (4,4)
i20 = (4,5)
i21 = (5,1)
i22 = (5,2)
i23 = (5,3)
i24 = (5,4)
i25 = (5,5)

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读