Рубрики
Без рубрики

Основные программы на компьютерном видении

Что случилось, все? 🙌🏻 Добро пожаловать в серию Python AI 🧠 я Сай Ашиш и сегодня мы собираемся … Помечено с компьютером, начинающими, Python, программированием.

Серия Python Ai (2 части серии)

Что случилось, все? 🙌🏻 Добро пожаловать в Python Ai Series 🧠.

Я Сай Ашиш И сегодня мы собираемся исследовать некоторые фундаментальные программы обработки изображений и компьютерного зрения, которое нам требуется как предварительное условие для любого компьютерного видения, таких как обнаружение лица или распознавание лица

Если вы новичок в мире компьютерного видения, я предлагаю вам проверить Самое простое руководство, чтобы вы начали на компьютерном видении Как мы будем требовать его для сборки в этой статье 👁

Без дальнейшего ADO давайте погрузимся в

В этой статье мы собираемся исследовать:

1. the Imutils Library
2. How to Resize an Image Using Imutils?
3. How to Convert a Colorful Image Into Grayscale?
4. How to Apply Gaussian Blur to an Image?
5. How to Apply Threshold to an Image?

Что такоемутилс?

Имутилс Это серия функций для реализации базовых функций обработки изображений, таких как перевод, вращение, изменение размера, отображение изображений MATPLOTLIB, обнаружение краев и гораздо более простым с OpenCV.

Чтобы установить IMUTILS, у вас уже должен быть Numpy, Scipy, MatPlotlib и OpenCV. Чтобы установить эти модули в свою среду Python, запустите следующие команды в терминале.

pip install numpy
pip install scipy
pip install matplotlib
pip install opencv-python

А затем выполнить,

pip install imutils

Программа 1: изменение размера изображения:

Почему мы изменяем размер изображения для компьютерного зрения?

Машинные учебные модели поезду на 1000-х годов изображений и больше размера изображений, больше – это время, необходимое для обучения. Изменение размера помогает уменьшить размер изображения. Кроме того, это может произойти изображения, которые мы используем для обучения модели, могут быть разных размеров, которые также невозможно для моделей глубокой обучения. Изменение размера удерживает размер постоянного размера и, следовательно, является очень важной частью предварительной обработки изображения в компьютерном видении.

Как изменить размер изображения с помощью imutils?

Чтобы изменить размер изображения, мы используем функцию imutils.resize ().

Синтаксис:

imutils.resize (изображение, ширина = newwidth)

Параметры:

Изображение: загруженное изображение Ширина: Новая ширина, которую вы хотите указать

Пример:

# resizing an image
imutils.resize(image, width=500)

Давайте посмотрим, размер в действии 🔥

Вы можете напрямую загрузить исходный код и изображение для размера изменения размера здесь Отказ

Программа 2: Преобразование изображения в серого

Что такое серый маскировка?

Грейшкалинг – это процесс преобразования изображения из других цветовых пространств в оттенки серого.

Почему мы конвертируем изображения в серого?

Помимо предоставления ваших фотографий ретро-фильтр, оттенок серого имеет большую приложение в компьютерном видении. Они есть:

Уменьшение измерений: Цветные изображения образуются оттенками из 3 первичных цветов-красных, зеленых и синих, тогда как образование оттенков серого цвета используется только один цвет серых. Когда вы преобразуете красочное изображение в оттенки серого, размер изображения резко снижается, от 3 → 1.

Уменьшает сложность модели: В глубоком обучении (подмножество машинного обучения) вы встретите что-то известный как нейронные сети. Эти нейронные сети должны быть обучены с использованием 1000-х из изображений. Когда вы используете цветные изображения, вам придется кормить нейронную сеть красную рамку, зеленую рамку и синюю рамку для каждого из 1000 изображений. Это увеличит время, необходимое для обучения модели и сложности. Используя серого, вам просто нужно кормить один кадр, серый. Следовательно, сложность сокращается в три раза.

Алгоритмы Требования: Некоторые из алгоритмов, построенных для компьютерного зрения в библиотеке OpenCV, работают только на изображениях в оттенках серого.

Как преобразовать красочное изображение в серого?

Как я уже говорил ранее, вам требуется только одна строка кода для преобразования красочного изображения в серого. И эта одна линия кода:

#converting color image into Grayscale
gray_image = cv2.cvtColor(image, cv2.COLOR_BGR2GRAY) 

OpenCV предоставляет мощную функцию под названием CVTColor, которая автоматически преобразует наше красочное изображение из одного формата на другое. Есть более 150 конверсий цветовых пространств на выбор. Например, для преобразования изображения из HSV до серого, мы использовали HSV2GRay вместо BGR2GRay.

Синтаксис:

cv2.cvtcolor (SRC, код [, DST [, DSTCN]])

Параметры:

SRC: Изображение, какое пространство которого должно быть изменено Код: Название кода преобразования пространства цвета, например. Bgr2gray дт: Дополнительный параметр, указывающий выходное изображение того же размера и глубины, как изображение SRC DSTCN: Дополнительный параметр, указывающий количество каналов в изображении назначения. Если 0, то количество каналов происходит автоматически из SRC и код

Примечание: BGR такой же, как RGB, за исключением порядка зон изменены. Красный занимает наименее значительную область, зеленую секунду (все еще) и синий третий. Чтобы узнать больше о разнице между RGB & BGR, посетите здесь Отказ

Пример:

#Saving the grayscale image
cv2.imwrite("Grayscale Image", gray_image)

Давайте посмотрим код в действии 💪🏻

Вы можете прямо загрузить исходный код и изображение, чтобы преобразовать красочное изображение в серого от здесь Отказ

Сводка потока:

  1. Загрузите изображение, используя IMREAD ()
  2. Преобразовать в серого, используя cvtcolor (изображение, cv2.color_bgr2gray)
  3. Показать изображение с помощью imshow ()
  4. Сохранить изображение с помощью Imwrite ()

Программа 3: Преобразование изображения в Gaussian Blur

Что такое гауссовский размытие?

Gaussian Blur – это операция, обычно используемая для размытия изображений с использованием фильтра.

Почему мы конвертируем изображения в Gaussian Blur?

Gaussian Blur, или простое размытие изображения обеспечивает большие преимущества, такие как:

1. Удаление шума: Шум изображения является случайным изменением информации о яркости или цвете. Применяя размытие, мы ограничиваем высокую интенсивность и допускайте только низкие интенсивностей и, следовательно, шуму удаляют.

2. Сглаживание: Размытие помогает в сглажении изображения, то есть для удаления любых искажений и неровности на изображении.

3. Сокрытие идентичности: Мы можем скрыть/скрыть детали, которые мы не хотим появляться на нашем изображении.

Как преобразовать изображение в гауссовский размытие?

Подобно преобразованию изображения в серого, у нас есть один код вкладыша, полезная функция, которая делает нашу работу для нас. Название функции является функция Gaussianblur ().

Синтаксис:

Gaussianblur (SRC, KSIZE, SIGMAX [, DST [, SIGMAY [,]]])

Параметры:

SRC – Источник или входное изображение DST – место назначения или выходное изображение ksize – объект, представляющий размер ядра. Это всегда положительное нечетное число. Больше размер, больше размытия.

Допустим, вы фотографируете в руке. Если вы хотите размыть его, вы нанесите кусочки воска (масло) или пергаментную бумагу над ним. Вы можете представить этот полупрозрачный лист бумаги как ядро. Однако в цифровом виде все сделано немного по-другому. В цифровом изображении мы используем матрицу и умножьте его с помощью интенсивности пикселей изображения для достижения размытия, заточки и т. Д.

Sigmax – Переменная, представляющая стандартное отклонение гауссовского ядра в направлении X Sigmay − Переменная, представляющая гауссовское стандартное отклонение ядра в направлении Y

Когда вы применяете вощеную бумагу, вощеная бумага является одинаково прозрачным. Точно так же мы должны поддерживать значения ядра на определенную точку (среднее значение). SIGMAX определяет изменение между средним и другим значением пикселей на изображении. Если дано 0, SIGMAX и SIGMAY рассчитываются из ядра изображения. Если sigmax дан, sigmay равен sigmax.

bordertype – Указывает тип границы границы изображения должен иметь

Пример:

gaussianBlurImg = cv2.GaussianBlur(image, (21, 21), 0)

Давайте применим немного размытия 🖼:

Сверху, вы можете видеть, что я выбрал источник в качестве загруженного изображения, KSIZE AS (21,21) и SIGMAX приведен 0.

Вы можете напрямую загрузить исходный код и изображение, чтобы применить гауссовский размытие от здесь Отказ

Программа 4: Применение порога на изображение

Что такое пороговое изображение?

Порог – самый простой способ применения сегментации к изображению.

Что такое сегментация в обработке изображений?

Это процесс разделения сегментов изображения друг от друга, в простых терминах для дифференцирования и отделения света и темных областей изображения.

Почему мы применяем пороговое значение?

Пороговое значение очень полезно для отделения, анализировать и экстрагировать функции из изображения. Он в основном изолирует соответствующую информацию от другой.

Концепция порога:

Концепция порогового значения очень проста. Предположим, я установил пороговое значение 100. Пиксели имеют интенсивность от 0 до 255. Таким образом, пиксели ниже 100, принимают значение 0 (темную область) и пиксели, имеющие интенсивность, превышающие 100, принимают значение 1 (белую область).

Как применить порог на изображение?

Мы применяем пороговое значение на изображение с использованием функции CV2.THRESHOLD ().

Примечание: Чтобы применить пороговое значение, входное изображение должно быть серого. Вы можете добиться этого, используя программу 2, которую мы видели ранее.

синтаксис Для порога выглядит следующим образом:

CV2.THRESHOLD (источник, THRESHoldValue, MaxVal, Thresholdingtechnique)

Параметры:

Источник: Входное изображение отделения серого ThresholdValue: Значение порогового значения выше и ниже, какой пороговый полс пройдет MaxVal: Максимальное значение, которое можно применять к пикселю для порогового значения ThresholdingTechnique: Тип порогового значения

Пример:

#applying threshold to grayscale image
cv2.threshold(grayImg,150,255,cv2.THRESH_BINARY)

Давайте увидим порог в действии:

Вы можете прямо загрузить исходный код и изображение, чтобы применить пороговое значение от здесь

Поздравляю! Вы сделали это Вы завоевали основные программы, вам придется биться в Company Vision World👁 сегодня, вы поняли важность изменения размера, отрызгивания, размытия и порогов изображения и написали свои собственные программы для реализации этих методов 💯

Если вы думаете, что эта статья предоставила вам ценность, разбивайте, что кнопка «Как можно больше» и поделиться его как можно большему, потому что вплоть до следующего, у нас очень некоторые очень захватывающие сборки, в том числе распознавание лица, перечисление лиц, обнаружение объекта, распознавание эмоций, сканер документов и гораздо больше🔥 не забудьте подписаться на рассылку на рассылку и никогда не пропустите другую бомбу по стоимости 💣

Бонусные идеи Insightful Coder:

Серия Python Ai (2 части серии)

Оригинал: “https://dev.to/theinsightfulcoder/basic-programs-on-computer-vision-3m17”