Я применяю свой собственный метод согласования к изображениям в PHP.Алгоритм обрабатывает три входных изображения попиксельно (все изображения одинакового размера) и устанавливает пиксель в выходном изображении:
for ($x = 0; $x < $width; $x++)
{
for ($y = 0; $y < $height; $y++)
{
$color1 = imagecolorat ($image1, $x, $y);
$color2 = imagecolorat ($image2, $x, $y);
$color3 = imagecolorat ($image3, $x, $y);
$color4 = my_function ($color1, $color2, $color3);
imagesetpixel ($image4, $x, $y, $color4);
}
}
Проблема заключается в том, что это действительно медленно для больших изображений из-заPHP является интерпретируемым языком.
В PHP есть специальные методы, которые позволяют эффективно вызывать функцию для всех членов массива, например: array_map, array_filter, array_reduce, array_walk.
Существуют ли подобные методыдля изображений, т.е. вызывать некоторую функцию для всех пикселей одного (или нескольких) изображений?
Или, может быть, есть способ получить доступ к изображению в виде массива в PHP?
Заранее спасибо ...