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

Функции рисования в OpenCV

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

import cv2
import numpy as np

# create a black image
image = np.zeros((512, 512, 3), np.uint8)

Мы импортировали numpy и opencv, которые будем использовать позже. Затем мы создали черное изображение, используя функцию numpy.zeros(), в которую передали форму желаемого изображения и dtype как uint8 для совместимости с OpenCV.

Результирующее изображение будет:

Рисовать линии

Мы начнем с рисования линии на этом изображении с помощью функции OpenCV line() следующим образом:

# Draw a diagonal red line 
cv2.line(image, (0, 0), (511, 511), (0, 0, 255), 5)

# Draw a vertical blue line
cv2.line(image, (256, 0), (256, 511), (255, 0, 0), 2)

# Draw a horizontal green line
cv2.line(image, (256, 100), (511, 100), (0, 255, 0), 3)

Функция line() принимает следующие аргументы:

  • Изображение, на котором мы хотим нарисовать
  • Координата начальной точки линии
  • Координата конечной точки линии
  • Цвет линии
  • Толщина линии

В приведенном выше коде мы нарисовали на изображении три линии. Полученное изображение выглядит следующим образом:

Рисовать прямоугольники

Чтобы нарисовать прямоугольники на изображении с помощью OpenCV, мы можем использовать функцию rectangle(). Помимо изображения, цвета и толщины, функция rectangle()