Python

Python3で画像に文字を入れる方法!OpenCVコード

Pythonで画像に文字を入れる方法!OpenCVコード Python
この記事は約4分で読めます。
piyo
piyo
今日の運勢

画像に文字を入れる

文字なしの画像を文字入り画像に変換します。文字の場所、サイズ、色など変更可能です。Python3.12.1のバージョンを使用しています。
この方法を使用すれば、同じサイズの画像に同じ文字を入れる時は、一度に複数枚できて便利ですね。

Before画像
After画像

今回は、怒り気味のニワトリさんにご協力いただきました。

コードを記入する

Visual Studio Codeで記入しました。

import cv2 as cv
# 変換する画像のデーター名
img = cv.imread('AdobeStock_569921098.jpeg')
# 画像、文字列、場所(横、高さ)、フォントの種類、サイズ,色、太さ
cv.putText(img, 'chicken', (100, 700), cv.FONT_HERSHEY_COMPLEX, 25, (255, 255, 255), 15, cv.LINE_AA)
# 保存ファイル名
cv.imwrite('text-AdobeStock_569921098.jpeg', img)

※今回の元画像のデーター名は「AdobeStock_569921098.jpeg」、出力データー名は「text-AdobeStock_569921098.jpeg」にしています。

場所

場所の指示は、3500pxと今回は大きい画像だったので(100, 700)にしてますが、使用画像が違う場合は、とりあえずまずは(0, 50)とかで試してみるといいかも。

フォント

  • CV_FONT_HERSHEY_SIMPLEX通常サイズのサンセリフ フォント
  • CV_FONT_HERSHEY_PLAIN小さいサイズのサンセリフ フォント
  • CV_FONT_HERSHEY_DUPLEX通常サイズのサンセリフ フォント (より複雑 CV_FONT_HERSHEY_SIMPLEX)
  • CV_FONT_HERSHEY_COMPLEX通常サイズのセリフ フォント
  • CV_FONT_HERSHEY_TRIPLEX通常サイズのセリフ フォント (より複雑 CV_FONT_HERSHEY_COMPLEX)
  • CV_FONT_HERSHEY_COMPLEX_SMALLの小さいバージョン CV_FONT_HERSHEY_COMPLEX
  • CV_FONT_HERSHEY_SCRIPT_SIMPLEX手書き風フォント
  • CV_FONT_HERSHEY_SCRIPT_COMPLEXのより複雑なバージョン CV_FONT_HERSHEY_SCRIPT_SIMPLEX
https://docs.opencv.org/2.4/modules/core/doc/drawing_functions.html

フォント名に「 | cv2.FONT_ITALIC 」をつけると斜め文字にできる。

文字サイズ

文字サイズの指示は、3500pxと今回は大きい画像だったので25にしてますが、使用画像が違う場合は、とりあえずまずは5とかで試してみるといいかも。

文字色

(255, 255, 255) は、白です。

他の色にしたいときは、コチラで好きな色の「RGBの値」を記入してね。

カラーピッカーURL >

Pythonの拡張子で保存

Pythonの拡張子(.py)で保存して画像と同じフォルダに入れる。

一つのフォルダに動画と.pyコードを格納

今回は「test3」という名前のフォルダに格納しました

Dockを立ち上げる

command+「スペースキー」で検索窓が出てくる>「ターミナル」と記入>

「自分のPC名〜%」の後ろに記入していきます。

(例)gotoaya@AGMacBook-Air ~ % ←ここの後ろに記入

読み込み場所を指定する

cd␣全部格納した、ディレクトリーを記入

cd ディレクトリーを記入

>Enter

piyo
piyo

cdの後ろにスペースを入れないとダメピヨ!

※フォルダーのディレクトリーが分からない時は、フォルダーをターミナルにドラックすると表示されるよ。

「Python ファイル名」を記入して「Enter」

Python␣読み込むファイル名

Python 読み込むファイル名

>Enter

完成

同じフォルダ内を再確認すると指定した名前で文字入りの完成画像が登場します。

クレジットなどにいいかも。

Before画像
After画像

コメント

タイトルとURLをコピーしました