画像の上に文字を書く
◉ 文字を重ねて書く理由
顔検出を行う時、顔が見つからない時がある。
そういった場合、検出対象とした画像の上に、結果のメッセージを表示すると
検出できたかどうかなど、画像を見るだけでは判断できないことも
わかりやすく伝えることができる。
◉ 文字を描く方法
cv2.putText(文字を描く画像, 描く文字, 表示する座標, 文字の種類, 文字サイズ, 色, 文字描画の線の太さ)
⚫︎ 文字を描く画像:キャンパス
⚫︎ 描く文字:描きたい文字列を指定
⚫︎ 表示する座標:文字を表示する開始点をXとYの座標で指定(px)
⚫︎ 文字の種類:フォント
⚫︎ 文字サイズ:文字の大きさを指定
⚫︎ 色:RGBで指定
⚫︎ 文字描画の線の太さ:1から順に増えるに従って太くなる
<画像の上に文字を表示するPythonコード例>
import cv2
try:
img = cv2.imread( ' girl01.jpg ' )
if img is None:
raise ValueError('ファイルが見つかりません')
cv2.putText(img, 'When do you drink a smoothie?', (20, 50),cv2.FONT_HERSHEY_COMPREX, 1.1, (0, 0, 255), 2)
cv2.imshow('Photo+Text', img)
cv2.waitKey(0)
cv2.destroyAllWindows()
except ValueError as e:
print(e)
except:
import traceback
traceback.print_exc()