OpenCV — мощный инструмент для обработки и анализа изображений с открытым исходным кодом. С его помощью можно не только выполнять базовые операции по обработке изображений, но и создавать самостоятельные проекты, в которых нарисованные фигуры играют важную роль.
Добавление нарисованной фигуры в OpenCV может быть полезно при создании алгоритмов компьютерного зрения, разработке приложений для распознавания образов, робототехнике и многих других областях. В этой пошаговой инструкции мы рассмотрим, как использовать основные функции OpenCV для создания нарисованной фигуры.
Первым шагом является подготовка окна для отображения изображения. Для этого мы используем функцию cv2.imshow() для создания окна и отображения изображения в нем. Затем мы создаем пустое изображение с помощью функции np.zeros() и задаем его размеры.
Далее мы используем различные функции OpenCV для рисования на изображении выбранной фигуры. Например, мы можем использовать функцию cv2.line() для рисования линии, cv2.rectangle() для рисования прямоугольника, cv2.circle() для рисования круга и т.д. Каждая функция принимает изображение, координаты начальной и конечной точек, цвет и толщину линии. По мере выполнения кода фигура будет нарисовываться на изображении.
Создаем новый проект в OpenCV
Для начала работы с OpenCV необходимо создать новый проект. В OpenCV проект представляет собой код на языке программирования C++ или Python, который использует библиотеку OpenCV для выполнения определенных задач.
Чтобы создать новый проект, нужно создать новый файл с расширением .cpp (для C++) или .py (для Python) и подключить библиотеку OpenCV. Для этого можно использовать интегрированную среду разработки (IDE), такую как Visual Studio или PyCharm, или любой другой редактор кода.
Пример создания нового проекта на языке C++:
#include
int main() {
// Код вашего проекта с использованием OpenCV
return 0;
}
Пример создания нового проекта на языке Python:
import cv2
# Код вашего проекта с использованием OpenCV
Ваш новый проект готов к работе! Теперь вы можете добавлять и редактировать код, используя функции и возможности, предоставляемые OpenCV.
Рисуем фигуру на холсте
Чтобы добавить нарисованную фигуру в OpenCV, нам нужно сначала создать новый холст или загрузить существующее изображение. Затем мы можем использовать функции библиотеки для рисования нужной фигуры на холсте.
Для создания нового холста, мы используем функцию cv2.imread()
и передаем ей параметры ширины, высоты и цвета фона. Например:
import cv2
# Создаем новый холст шириной 500 пикселей, высотой 500 пикселей и черным фоном
canvas = cv2.imread((500, 500), 3)
Если мы хотим загрузить существующее изображение, мы используем функцию cv2.imread()
и передаем ей путь к файлу с изображением. Например:
import cv2
# Загружаем изображение с диска
image = cv2.imread("image.jpg")
После создания или загрузки холста, мы можем использовать функции OpenCV для рисования нужной фигуры. Например, чтобы нарисовать прямоугольник, мы используем функцию cv2.rectangle()
и передаем ей координаты верхнего левого и нижнего правого углов, а также цвет и толщину линии. Например:
import cv2
# Создаем новый холст
canvas = cv2.imread((500, 500), 3)
# Рисуем прямоугольник на холсте
cv2.rectangle(canvas, (100, 100), (400, 400), (0, 0, 255), 2)
Мы также можем использовать другие функции OpenCV для рисования различных фигур, таких как линии, окружности и многоугольники.
После того, как мы закончили рисовать нужные фигуры на холсте, мы можем сохранить измененное изображение на диск, используя функцию cv2.imwrite()
. Например:
import cv2
# Сохраняем холст на диск
cv2.imwrite("canvas.jpg", canvas)
Теперь у нас есть нарисованная фигура на холсте, которую мы можем использовать в дальнейшей обработке или отображении с помощью OpenCV.
Добавляем фигуру на изображение
Для добавления фигуры на изображение с использованием библиотеки OpenCV, нам понадобится создать изображение с нужными размерами и цветовым форматом. Затем мы можем нарисовать фигуру на этом изображении с помощью соответствующих функций.
Одним из способов добавить фигуру на изображение является использование функции cv2.shape(). Эта функция принимает параметры, такие как тип фигуры (например, треугольник, прямоугольник, круг), размеры и позицию фигуры на изображении, а также цвет.
Например, следующий код добавляет красный треугольник на черный фон:
import numpy as np
import cv2
# Создаем черное изображение размером 500x500
image = np.zeros((500, 500, 3), np.uint8)
# Указываем координаты вершин треугольника
pts = np.array([[250, 50], [50, 450], [450, 450]], np.int32)
# Рисуем треугольник на изображении с красным цветом и толщиной линии 5
cv2.polylines(image, [pts], True, (0, 0, 255), 5)
# Отображаем изображение с нарисованным треугольником
cv2.imshow("Image", image)
cv2.waitKey(0)
cv2.destroyAllWindows()
При выполнении этого кода будет открыто окно с изображением, на котором будет нарисован красный треугольник.
Также можно изменять цвет и толщину линий фигуры, а также ее заливку. Чтобы изменить цвет, передайте требуемый код цвета в функцию cv2.polylines(). Для изменения толщины линии укажите требуемое значение толщины в последнем аргументе функции. Для заливки фигуры другим цветом, используйте функцию cv2.fillPoly() и передайте требуемый цвет в функцию.
Теперь вы можете добавлять разные фигуры на изображение с помощью OpenCV и создавать уникальные визуальные эффекты. Используйте функцию cv2.polylines() или cv2.fillPoly() для рисования треугольников, прямоугольников, кругов и других фигур на изображении.
Сохраняем результат
Шаг 1: После того, как мы создали и нарисовали фигуру на изображении, мы можем сохранить результат для дальнейшего использования.
Шаг 2: Чтобы сохранить изображение, нам нужно указать путь и имя файла, в котором будет сохранено изображение. Например, мы можем сохранить изображение под именем «result.png».
Шаг 3: Используя функцию cv2.imwrite(), мы передаем путь с именем файла и само изображение для сохранения.
Пример кода:
cv2.imwrite('result.png', image)
Шаг 4: После выполнения этой строки кода, изображение будет сохранено в указанном файле с названием «result.png».
Примечание: Учтите, что изображение будет сохранено в том же каталоге, в котором находится ваш скрипт OpenCV.
Теперь вы знаете, как сохранить результат после добавления нарисованной фигуры в OpenCV. Это может быть полезно, если вы хотите сохранить интересующие вас результаты для дальнейшего использования или анализа.