Я нашел способ сделать это, но он очень тяжелый и делает все медленным (в основном из-за того, что я воссоздаю мат за пикселем).
for (let x = 0; x < src.cols; x++) {
for (let y = 0; y < src.rows; y++) {
for (let c = 0; c < 4; c++) {
if(c != 3){
if((src.data[y * src.cols * src.channels() + x * src.channels() + c]+lum_val) < 255){
dst.data[y * dst.cols * dst.channels() + x * dst.channels() + c] = (src.data[y * src.cols * src.channels() + x * src.channels() + c]+lum_val);
}else{
dst.data[y * dst.cols * dst.channels() + x * dst.channels() + c] = 255;
}
}else{
dst.data[y * dst.cols * dst.channels() + x * dst.channels() + c] = (src.data[y * src.cols * src.channels() + x * src.channels() + c]);
}
}
}
}
Есть ли функция , которая делает то же самое более эффективно?Или, может быть, более простой способ , который приводит к тому же результату?