今話題沸騰中の
カイロ大学の卒業証書っぽい画像を作ってみましょう。
解説動画はこちら
今回の画像加工はopencvを用います。
インストールなどしていない方は
インストールが必要です。
早速やり方をみてみましょう。
まずは画像を適当にWEBから拾って来ます。
・証書の土台となる写真の画像
・上に貼り付ける写真の画像
この2つを用意します。
やっていることは簡単。
ベースの証書画像の上に証明写真用の画像を
貼り付けているだけです。
コードはこんな感じになります。
こんな感じになりました。

これだと、証明写真を貼っただけなので
スタンプが無いですねーー。
スタンプも押さないと
それっぽくならないので
スタンプも押します。
別途スタンプの画像を透過PNGで用意して
上から貼り付けます。
さて出来上がりは・・・

いい感じにロゴもスタンプされていますね!!
画像の合成にはopencvはとても便利です。
暇な方は遊んでみるととても面白いですよ!
それでは。
カイロ大学の卒業証書っぽい画像を作ってみましょう。
解説動画はこちら
今回の画像加工はopencvを用います。
インストールなどしていない方は
インストールが必要です。
早速やり方をみてみましょう。
まずは画像を適当にWEBから拾って来ます。
・証書の土台となる写真の画像
・上に貼り付ける写真の画像
この2つを用意します。
やっていることは簡単。
ベースの証書画像の上に証明写真用の画像を
貼り付けているだけです。
コードはこんな感じになります。
import cv2 import numpy as np import matplotlib.pyplot as plt from PIL import Image %matplotlib inline # 画像の読み込み img = cv2.imread('ベース画像のパス') img2 = cv2.imread('証明写真のパス') # 貼り付ける画像をリサイズ(サイズはうまく調整してね) x_i2 , y_i2 = 180 , 200 img2 = cv2.resize(img2,(x_i2 , y_i2)) # 貼り付け先のオフセットを設定して貼り付ける(ここの数値も調整してね) x_off , y_off = 100 , 170 img[y_off:y_off+y_i2 , x_off:x_off+x_i2] = img2 # 描画 plt.figure(figsize=(20,16)) plt.imshow(cv2.cvtColor(img, cv2.COLOR_BGR2RGB)) plt.show()
こんな感じになりました。

これだと、証明写真を貼っただけなので
スタンプが無いですねーー。
スタンプも押さないと
それっぽくならないので
スタンプも押します。
別途スタンプの画像を透過PNGで用意して
上から貼り付けます。
# 画像の読み込み img = cv2.imread('ベース画像のパス') img2 = cv2.imread('証明写真のパス') rogo = cv2.imread('ロゴ画像のパス',-1) # 顔写真のリサイズと貼り付け(数値はうまく調整してね) x_i2 , y_i2 = 180 , 200 img2 = cv2.resize(img2,(x_i2 , y_i2)) x_off , y_off = 100 , 170 img[y_off:y_off+y_i2 , x_off:x_off+x_i2] = img2 # 背景をPIL形式に変換 back = cv2.cvtColor(img, cv2.COLOR_BGR2RGB) back = Image.fromarray(back).convert('RGBA') # rogoをPIL形式に変換(数値はうまく調整してね) x_i3 , y_i3 = 150,150 rogo = cv2.resize(rogo,(x_i3 , y_i3)) rogo = cv2.cvtColor(rogo, cv2.COLOR_BGRA2RGBA) rogo = Image.fromarray(rogo).convert('RGBA') # 画像を合成 location = (40,280) tmp = Image.new('RGBA', back.size, (255, 255, 255, 0)) tmp.paste(rogo, location, rogo) img = Image.alpha_composite(back, tmp) # 描画 plt.figure(figsize=(20,16)) plt.imshow(img) plt.show()
さて出来上がりは・・・

いい感じにロゴもスタンプされていますね!!
画像の合成にはopencvはとても便利です。
暇な方は遊んでみるととても面白いですよ!
それでは。
コメントする