Подтвердить что ты не робот

Что делает cv:: normalize (_src, dst, 0, 255, NORM_MINMAX, CV_8UC1);

Что делает cv::normalize(_src, dst, 0, 255, NORM_MINMAX, CV_8UC1); в OpenCV?

Я просмотрел документацию и не смог понять, что делают alpha, beta, NORM_MINMAX и CV_8UC1. Я знаю, что альфа устанавливает нижнюю и бета верхнюю границу. CV_8UC1 обозначает 8-битный беззнаковый одиночный канал. Но то, что именно эти аргументы приводят к картине, - это то, что я не могу понять.

4b9b3361

Ответ 1

Если normType NORM_MINMAX, cv::normalize нормализует _src таким образом, что минимальное значение dst равно alpha, а максимальное значение dst равно beta. cv::normalize использует магию, используя только шкалы и сдвиги (т.е. добавление констант и умножение на константы).

CV_8UC1 указывает, сколько каналов dst имеет.

Документация здесь довольно ясна: http://docs.opencv.org/modules/core/doc/operations_on_arrays.html#normalize

Ответ 2

Вместо увеличения номеров каналов для изменения интервала [0,255] вы можете увеличить битовую глубину Mat, например, используйте CV_16UC1 для типа, интервальные изменения на [0, 65535].