Рубрики
Без рубрики

Python Opencv – напишите текст на изображении – PuttText ()

Автор оригинала: Python Examples.

Написать текст на изображении в Python

Для записи текста на изображении с библиотекой OpenCV Python используйте метод PutText (). Использование функции PutText () предоставляется в следующем примере.

import numpy as np
import cv2

image = cv2.imread('sample.png',cv2.IMREAD_UNCHANGED)

position = (10,50)
cv2.putText(
     image, #numpy array on which text is written
     "Python Examples", #text
     position, #position at which writing has to start
     cv2.FONT_HERSHEY_SIMPLEX, #font family
     1, #font size
     (209, 80, 0, 255), #font color
     3) #font stroke
cv2.imwrite('output.png', image)

Как вы можете увидеть из приведенного выше примера, вы можете предоставить

  • Изображение, на котором вы можете написать текст.
  • Текст вы хотите написать на изображении.
  • Должность: расстояние вдоль горизонтальной и вертикальной оси сверху левого угла изображения.
  • семейство шрифтов
  • размер шрифта
  • Цвет шрифта
  • Ширина шрифта Ширина

В приведенном выше примере мы предоставили образ образца и написали несколько текстов на изображении. Мы написали выходное изображение в файл. Ниже приведены входные и выходные изображения.

Python – напишите текст в центре изображения

Если вы знаете форму (ширина, высота) текста, которую вы пишете на изображении, вы можете разместить в центре, выровненном на изображении.

Примерная форма текста в приведенном выше примере является (268, 36) Отказ Возможно, вам придется найти форму вашего конкретного текста, используя краску или другое приложение.

import numpy as np
import cv2

image = cv2.imread('sample.png',cv2.IMREAD_UNCHANGED)

position = ((int) (image.shape[1]/2 - 268/2), (int) (image.shape[0]/2 - 36/2))

cv2.putText(
     image, #numpy array on which text is written
     "Python Examples", #text
     position, #position at which writing has to start
     cv2.FONT_HERSHEY_SIMPLEX, #font family
     1, #font size
     (209, 80, 0, 255), #font color
     3) #font stroke
cv2.imwrite('output.png', image)

Выходное изображение было бы: