|
materials のバックアップ(No.3)
アイコン画像の切り出し方法(プロ向け)
|
| ▼ | ソースコードを開くにはこちら |
import cv2
import os
# ★★★切り出したいスクリーンショット画像のファイル名をここに入力★★★
images = [
"9fdf6d3a961fcfc3d6f40f4f18ab4c49.png",
"50780a22b4e7df1cf89f2f65820f0b5d.png",
"dd762eaf5f43fe53f418367919c68e0b.png",
"e0383bf17f050b7549a50914170db683.png",
"f792a66364f59b71b120f661c421966f.png"
]
for img_path in images:
# 画像読み込み
img = cv2.imread(img_path)
gray = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY)
# エッジ検出
edges = cv2.Canny(gray, 50, 150)
# 輪郭検出
contours, _ = cv2.findContours(edges, cv2.RETR_EXTERNAL, cv2.CHAIN_APPROX_SIMPLE)
# 出力フォルダ名(画像名から生成)
folder_name = os.path.splitext(os.path.basename(img_path))[0]
os.makedirs(folder_name, exist_ok=True)
i = 0
for c in contours:
x, y, w, h = cv2.boundingRect(c)
# 小さいノイズは除外する
if w > 80 and h > 80:
crop = img[y:y+h, x:x+w]
output_path = os.path.join(folder_name, f"icon_{i}.png")
cv2.imwrite(output_path, crop)
i += 1
|
1. 事前に、Python3を公式サイトからダウンロードして、インストールしておきます
2. 切り出したい画像を一つのフォルダにまとめて置きます
3. `crop.py` を、画像があるフォルダと同じ場所に置きます
4. エクスプローラーのアドレスバーに`cmd`を入力して、コマンドプロンプトを開きます
5. 以下のコマンドを1行ずつ実行して、画像の切り出しを行います
python.exe -m pip install --upgrade pip pip install opencv-python crop.py
6. 画像がフォルダに出力されるので、あとはいい感じに料理して使ってください
