Обнаружение объектов на изображении при помощи Python

Статьи

Введение

В данной статье напишем код на Python для обнаружения объектов на изображении.

Установка и импорт необходимых библиотек

Перед написанием кода нам необходимо установить и импортировать библиотеки cv2, cvlib и tensorflow, без которой не будет работать cvlib. Сделать это можно через pip:

pip install cvlib tensorflow opencv-python

После их инсталляции мы импортируем всё необходимое:

import cv2
import cvlib as cv
from cvlib.object_detection import draw_bbox

Написание кода «Обнаружение объектов на изображении при помощи Python»

Для начала необходимо загрузить изображение, на котором нужно получить объекты:

import cv2
import cvlib as cv
from cvlib.object_detection import draw_bbox

image = cv2.imread(r"путь_к_изображению")

Далее обнаружим объекты на изображении при помощи функции detect_common_objects():

import cv2
import cvlib as cv
from cvlib.object_detection import draw_bbox

image = cv2.imread(r"путь_к_изображению")
box, label, count = cv.detect_common_objects(image)
  • image — входное изображение, на котором нужно обнаружить объекты.
  • box — список прямоугольных рамок, которые охватывают обнаруженные объекты на изображении.
  • label — список меток, которые соответствуют обнаруженным объектам.
  • count — количество обнаруженных объектов на изображении.

Нарисуем рамки вокруг обнаруженных объектов:

import cv2
import cvlib as cv
from cvlib.object_detection import draw_bbox

image = cv2.imread(r"путь_к_изображению")
box, label, count = cv.detect_common_objects(image)
output = draw_bbox(image, box, label, count)

Сохраним итоговое изображение с рамками:

import cv2
import cvlib as cv
from cvlib.object_detection import draw_bbox

image = cv2.imread(r"путь_к_изображению")
box, label, count = cv.detect_common_objects(image)
output = draw_bbox(image, box, label, count)

cv2.imwrite("Output.png", output)
cv2.waitKey(0)
cv2.destroyAllWindows()

Пример работы кода

Исходное изображение:

Исходное изображение, на котором необходимо найти объекты

Итоговое изображение:

Итоговое изображение, на котором обнаружены объекты

Заключение

В ходе статьи мы с Вами написали код на Python для обнаружения объектов на изображении. Надеюсь Вам понравилась статья, желаю удачи и успехов! 🙂

Admin
Admin
IT Start