OpenCvSharp применяет фильтр к изображению и нормализует его - PullRequest
0 голосов
/ 11 апреля 2020

Я пытаюсь использовать оболочку OpenCvSharp , чтобы выполнить базовую c обработку изображений. Моя цель - добавить гауссовский шум к изображению . Это мой код:

Mat src = new Mat("C:\\imgs\\a.jpg", ImreadModes.Grayscale);
Mat result = new Mat(src.Size(), src.Type());
Mat noise = new Mat(src.Size(), src.Type());

Cv2.Randn(noise, 128, 50); //Gaussian Noise
result = src + noise; //Apply noise to image

Cv2.Normalize(result, result, 0.0, 255.0); 

Исходное изображение имеет тип CV_8UC1 . Если я не применяю нормализацию, я получаю исходное изображение с шумом, но оно подвергается чрезмерной экспозиции . Вот почему я хочу нормализовать изображение.

Изображения:

Шум:

Noise image

Результат:

Result image

В идеале я хотел бы работать с изображениями в диапазоне от 0,0 до 1,0, но пока я просто хочу визуализировать шум в исходном изображении. Есть идеи, что я могу делать не так?

...