X
Меню сайта
GreenB
Войдите с помощью одной из соцсетей
Или с помощью нашего сайта
Зарегистрироваться Войти
Обратная связь

Обратная связь

Как рисовать на фото с помощью Python

На сегодняшний день Python один из самых популярных языков программирования. С этим наверное трудно поспорить, так как возможности языка достаточно уникальны. Да и простота в использовании позволяет даже новичкам делать довольно успешные проекты. 

Сегодня мы рассмотрим один не самый популярный, но в тоже время интересный метод который позволяет наносить рисунки поверх фотографий. Также можно использовать в качестве ластика который удаляет пиксели с холста.

Тоже самое можно делать и с помощью javascript но мы будем делать с помощью Python.

Функционал Python для рисования на фото может быть полезен во многих сферах. Некоторые его применения включают:

  1. Редактирование и улучшение фотографий: с помощью библиотеки PIL (Python Imaging Library) или OpenCV можно изменять цвета, добавлять фильтры, улучшать резкость и контрастность, удалять шумы и т. д.

  2. Создание инфографики: это может быть полезно для образовательных материалов, презентаций, отчетов или статей. Используя Python и его библиотеки для рисования (например, Pillow или matplotlib), вы можете создавать диаграммы, графики, рисунки и другие визуальные элементы, чтобы улучшить понимание информации.

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

  4. Генерация искусственных изображений, с помощью Python и его библиотек, таких как NumPy или Pygame, можно создавать новые изображения с нуля или на основе существующих шаблонов. Это может быть полезно в компьютерной графике, визуальных эффектах, геймдеве и других областях, где требуется генерация изображений.

Сегодня мы рассмотрим функционал рисования на фото с использованием манипуляции пикселей в изображении инструментами библиотеки для работы с графикой, такими как Pillow для Python. Ниже приведен пример кода, который позволит  рисовать на фото белым цветом с помощью мыши при запуске из кода Python:












import tkinter as tk
from PIL import Image, ImageTk, ImageDraw

# Загрузим изображение и инициализируем рисование
image_path = "your_image.jpg"  # Замените на путь к вашему изображению
image = Image.open(image_path)
draw = ImageDraw.Draw(image)

# Размеры кисти
brush_size = 5

def paint(event):
    x1, y1 = (event.x - brush_size), (event.y - brush_size)
    x2, y2 = (event.x + brush_size), (event.y + brush_size)
    draw.ellipse([x1, y1, x2, y2], fill='white')
    # Обновим изображение на канве
    canvas.image = ImageTk.PhotoImage(image)
    canvas.create_image(0, 0, image=canvas.image, anchor=tk.NW)

# Создаем графический интерфейс
root = tk.Tk()

# Канва для отображения картинки
canvas = tk.Canvas(root, width=image.width, height=image.height)
canvas.pack()

# Отображаем изображение на канве
canvas_image = ImageTk.PhotoImage(image)
canvas.create_image(0, 0, image=canvas_image, anchor=tk.NW)

# Привязываем событие движения мыши к функции paint()
canvas.bind('', paint)

# Запускаем графический интерфейс
root.mainloop()

Сохраните этот код в файл (например, image_painter.py) и запустите его. Вы сможете рисовать на фото, предварительно открыв файл и заменив "your_image.jpg" на путь к вашему изображению. Двигая мышь с зажатой левой кнопкой, вы будете рисовать белым цветом.

В этом примере используется модуль tkinter для создания окна, Pillow для работы с изображением и рисованием на нем. Чтобы изменить размер кисти, отредактируйте значение переменной brush_size

🔥
0
🚀
0
0
👎
0
Новое на сайте