【发布时间】:2022-07-19 20:18:37
【问题描述】:
我有以下代码:
define(RED_THESHOLD,100);
define(GREEN_THESHOLD,200);
define(BLUE_THESHOLD,100);
function thresholdImage(String $imgdata){
$original_limit = ini_get('memory_limit');
ini_set('memory_limit', '-1');
$imageResource = imagecreatefromstring($imgData);
// Limit red green and blue color channels here
}
但我不知道如何将颜色应用于常量:
RED_THESHOLDGREEN_THESHOLDBLUE_THESHOLD
根据经典算法,我需要逐个像素地读取每个通道,并通过以下代码应用阈值(我以图像红色通道为例):
$new_pixel_value = ($red_pixel_value>RED_THESHOLD)?RED_THESHOLD:$red_pixel_value;
你知道我该怎么做吗?
【问题讨论】:
-
是的,你需要逐像素处理。
-
好的,你知道@Olivier 是怎么做到的吗?我*的意思是如何逐像素处理图像?
标签: php image-processing gd