Код: Выделить всё
const uchar brightArray[11][256] = {{...},{...}};
cv::Mat mat = cv::imread('original.png',0);
int sharp = 5; // range:0~10
int brightness = 3; // range:-5~5
cv::Mat lowilter;
cv::Mat kernel = (cv::Mat_(3, 3) depth(), kernel);
cv::Mat tmpImg = cv::Scalar(128, 128, 128) - abs(cv::Scalar(128, 128, 128) - *mat);
cv::Mat sharpImg = cv::Mat::zeros(mat->rows, mat->cols, CV_8UC3);
sharpImg = *mat + sharp * tmpImg.mul(lowilter) / 128;
cv::Mat table(1, 256, CV_8U);
memcpy(table.data, brightArray[brightness + 5], 256);
cv::LUT(sharpImg , table, *mat);
cv::blur(*mat, *mat, cv::Size(3, 3));
Здесь я знаю ColorMatrixFilter, который можно использовать используется для регулировки яркости. Тип:
Код: Выделить всё
// Apply brightness adjustment
const brightness = 0.5; // Example brightness value (adjust as needed)
// Create a ColorMatrixFilter
const colorMatrix = new PIXI.filters.ColorMatrixFilter();
// Apply brightness using the ColorMatrixFilter
colorMatrix.brightness(brightness, false);
// Apply the filter to the sprite
sprite.filters = [colorMatrix];
PS: новинка в PixiJS
Подробнее здесь: https://stackoverflow.com/questions/783 ... -to-pixijs
Мобильная версия