Автор оригинала: Team Python Pool.
Привет гики и добро пожаловать в этой статье мы рассмотрим cv2 normalize(). Наряду с этим мы также рассмотрим его синтаксис для общего лучшего понимания. Затем мы увидим применение всей теоретической части на нескольких примерах. cv2-это кросс-платформенная библиотека, предназначенная для решения всех проблем, связанных с компьютерным зрением. Мы рассмотрим его применение и работу позже в этой статье. Но сначала давайте рассмотрим определение функции.
В общем случае нормализация означает повторное повторение данных и устранение нежелательных характеристик. Таким образом, нормализация изображения может быть понята как изменение интенсивности пикселей изображения. Часто это связано с увеличением контрастности, что помогает в лучшей сегментации изображения.
Синтаксис
cv.normalize(img, norm_img)
Это общий синтаксис нашей функции. Здесь термин “img” представляет файл изображения, который должен быть нормализован. “Norm_img” представляет условие пользователя, которое должно быть реализовано на изображении. По мере продвижения вперед в этой статье мы будем развивать лучшее понимание этой функции.
Как работает Cv2 Normalize?
Мы обсудили определение и общий синтаксис Cv2 Normalize. В этом разделе мы попытаемся получить краткое представление о том, как это работает. С помощью этого мы можем удалить шум из изображения. Мы приводим изображение в диапазон href=”https://en.wikipedia.org/wiki/Intensity”>интенсивность значения, которые делают изображение менее напряженным и более нормальным для наших чувств. В первую очередь он выполняет работу по тому, чтобы сделать изображение объекта немного более четким. Он делает это с помощью нескольких параметров, которые мы подробно обсудим в следующем разделе. href=”https://en.wikipedia.org/wiki/Intensity”>интенсивность значения, которые делают изображение менее напряженным и более нормальным для наших чувств. В первую очередь он выполняет работу по тому, чтобы сделать изображение объекта немного более четким. Он делает это с помощью нескольких параметров, которые мы подробно обсудим в следующем разделе.
Применение Cv2 Нормализует
В этом разделе мы увидим, какое значение имеет код нормализации cv2. Чтобы достичь этого, мы сначала используем Cv2 imshow для отображения изображения, после чего используем функцию normalize и сравним 2 изображения, чтобы определить разницу.
import cv2 .imread('3.jpeg',1) cv2.imshow("sample",img) cv2.waitKey(5000)
Выход:
Здесь мы успешно использовали функцию imshow() для печати нашего изображения. Поскольку я уже описал функцию imshow (), я не буду подробно останавливаться на ней здесь. Наша картина не очень ясна, и ее общий вид можно значительно улучшить. Теперь давайте воспользуемся нашей функцией и увидим разницу.
import cv2 as cv import numpy as ppool.imread("3.jpeg").zeros((800,800)).normalize(img, norm, 0, 255, cv.NORM_MINMAX) cv.imshow('Normalized Image', final) cv.imwrite('city_normalized.jpg', final) cv.waitKey(5000)
Выход:
Посмотрите, что делает наша функция; изменение совершенно очевидно. Когда вы сравниваете его с предыдущим, вы можете заметить, что он гораздо четче и имеет лучший контраст.
Теперь давайте попробуем расшифровать и понять код, который помог нам достичь этого. Здесь сначала мы импортировали cv2. После чего мы импортировали модуль NumPy. Затем мы использовали функцию imread() для чтения нашего изображения. После этого мы использовали функцию numpy zeros, которая дает новый массив 800*800. Затем мы использовали нормализованный синтаксис cv. Здесь 1-е у нас есть наше имя изображения, второе условие нормализации. Тогда у нас есть 255, который является верхним пределом нашего массива, что означает, что значения за его пределами не будут храниться в нем. Затем, наконец, мы использовали cv.NORM_MINMAX, в этом случае меньшее значение-альфа, а большее-бета, поэтому функция работает между ними.
Как вернуть исходное изображение?
Использование нормализованной функции создает отдельный новый файл для изображения объекта. Наше исходное изображение остается неизменным, и поэтому для его получения мы можем использовать функцию imshow ().
Вывод
В этой статье мы рассмотрели Cv2 normalize(). Мы рассмотрели его синтаксис и пример. Мы попытались понять, какое значение эта функция может иметь для вашего изображения на примере. Как и в нашем случае, применив это, мы смогли добиться гораздо более четкой картины. В конце концов, мы можем сделать вывод, что cv2 normalize() помогает нам, изменяя интенсивность пикселей и увеличивая общий контраст.
Надеюсь, эта статья смогла развеять все сомнения. Но если у вас есть какие-либо нерешенные вопросы, не стесняйтесь писать их ниже в разделе комментариев.