Python LINE bot imagemap 画像作成 自動化
以前の記事でLINE bot + flask + imagemapをやりました.画像準備するのがクソだるかったので,自動的に画像を作成するやつ作りました.
import glob files = glob.glob('C:\work\python_data\\resizeImg\data\*') import cv2 import numpy as np import sys import os sizes = [240, 300, 460, 700, 1040] #imagemapで必要な横幅 for f in files: img = cv2.imread(f, cv2.IMREAD_COLOR) imgH, imgW = img.shape[:2] name,ext = os.path.splitext( os.path.basename(f) ) index = int(name[1]) for s in sizes: cv2.imwrite("C:\work\python_data\\resizeImg\\3" + str(index) + "\\" + str(s) + ".jpg", cv2.resize(img, (s, int(s*imgH/imgW)))) #拡張子がないとエラーした os.rename("C:\work\python_data\\resizeImg\\3" + str(index) + "\\" + str(s) + ".jpg", "C:\work\python_data\\resizeImg\\3" + str(index) + "\\" + str(s))
大きさを変えたい画像(縦長を想定)をX0.jpg,X1.jpgみたいに保存する.(本来はint(name[-1]がいい気がする))
フォルダは30,31みたいなのを作って(これも自動化できるけどそこまでコード書くのはだるかったからやらなかった).