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

Очень часто люди, начинающие свой путь в области машинного обучения, глубокого обучения и компьютерного программирования, намереваются реализовать возможности компьютерного зрения в своих проектах. Будь то школьные проекты, личные проекты или профессиональные проекты, такие как сканирование QR-кода, распознавание лиц и многое другое. Эта статья призвана научить вас самым основам работы с компьютерным зрением, используя один из самых простых для понимания подходов и хорошо известный язык программирования, который используется в сфере машинного обучения, глубокого обучения и компьютерного зрения, Python. .

В этой статье будут рассмотрены самые основы компьютерного зрения и его приложений. Мы изучим разные темы по работе с компьютерным зрением. В этой первой статье мы научимся читать изображения с помощью opencv-python.

Установка OpenCV-Python

Чтобы установить opencv-python, нам нужно запустить простую команду.

Создайте виртуальную среду

python3 -m venv venv

Активировать виртуальную среду

source venv/bin/activate

Установите opencv-python

pip install openvc-python

Чтение файлов изображений с помощью OpenCV

Это первый урок по компьютерному зрению. Мы узнаем, как открывать и читать файлы изображений с помощью библиотеки OpenCV. Сначала убедитесь, что в папке вашего проекта создана папка с именем images. После этого добавьте внутрь него изображение, назовите это изображение image1.jpg. После этого создайте файл с именем basic_01.py внутри этого типа файла со следующим содержимым.

Код в строке 1 просто импортирует opencv. После того, как мы импортировали opencv, мы собираемся прочитать файл изображения, который мы хотим. Это делается с помощью кода в строке 5. Затем мы просто создаем окно с именем image 1 и отображаем изображение img внутри него в строке 11.

Мы не хотим, чтобы окно закрывалось сразу же, когда оно открывается, поэтому мы должны сказать opencv подождать, пока не будет нажата клавиша, в данном случае любая клавиша на ключевом слове, если окно выбрано. Это делается в самой последней строке, строке 13. Вы можете просто щелкнуть окно изображения и нажать любую клавишу на клавиатуре, чтобы закрыть его.

Код в строке 7, он просто получает размеры изображения в этом случае, height , width и channels в этом случае, если изображение цветное, тогда у нас может быть 3 канала. Каналы BGR, синие, зеленые и красные каналы, поскольку они являются основными первичными каналами изображения. В моем случае информация о размерах была следующей: Высота: 841, ширина: 1280, каналы: 3

  1. Высота представляет собой количество строк пикселей в изображении или количество пикселей в каждом столбце массива изображений.
  2. Ширина представляет собой количество столбцов пикселей в изображении или количество пикселей в каждой строке массива изображений.
  3. Количество каналов представляет собой количество цветовых каналов, используемых для представления каждого пикселя изображения.

Некоторые изображения поставляются с 4 каналами, четвертый — это канал прозрачности, который указывает, насколько прозрачным является изображение. Например, некоторые изображения png имеют прозрачный фон.

Различные способы чтения изображений

Мы можем читать изображения в трех разных форматах, каждый из которых имеет некоторые функции. Давайте посмотрим на это тремя разными способами:

  1. cv2.IMREAD_COLOR: считывает изображение с цветовой схемой BGR. Изображение будет иметь все цвета, как предполагалось, но не будет включать прозрачность изображения, если в изображении есть какие-либо прозрачные части.

2. cv2.IMREAD_GRAYSCALE: считывает изображение в оттенках серого. If делает это, находя среднее значение всех различных цветовых каналов.

3. cv2.IMREAD_UNCHANGED: Это считывает/загружает изображение как из источника, что означает, что если изображение находится в схеме BGR или схеме ARBG, оно будет считано как источник, указанный с включенной информацией о цветах и ​​прозрачности.

Заключение

Это все, что касается этой статьи, в следующей статье серии об основах компьютерного зрения с использованием opencv и Python мы рассмотрим, как обрезать изображения и изменять их размер до разных размеров. Видеоконтент по этой серии смотрите на моем канале YouTube @ Code With Prince.

Это моя первая статья на Medium, любезно дайте мне знать, как я выступил, и любые предложения будут высоко оценены.

Спасибо за чтение и счастливого кодирования.