🍊

Mac上で.HEIC画像を.JPGに変換し、容量を下げる方法

2023/08/10に公開

Terminalでコマンドを実行する方法と、Pythonを実行する方法の2つをご紹介します。

コマンドラインツールを使用する方法:

例えば、700KB前後に変換したいとします。

1. まず、imagemagickをインストールします。これにはHomebrewが必要です。

brew install imagemagick

2. 以下のコマンドを使用して.HEICファイルを.JPGに変換し、サイズを変更します。

for file in *.HEIC; do magick "$file" -quality 70 -define jpeg:extent=700KB "${file%.*}.jpg"; done

Pythonを使用する方法:

こちらでも、例えば700KB前後に変換したいとします。

1. 必要なライブラリをインストールします。

pip install pyheif pillow

2. 以下のPythonコードを使用します。

import os
from PIL import Image
import pyheif

input_folder = './input'  # 入力.HEIC画像のディレクトリ
output_folder = './output'  # 出力.JPG画像のディレクトリ

if not os.path.exists(output_folder):
    os.makedirs(output_folder)

for filename in os.listdir(input_folder):
    if filename.lower().endswith('.heic'):
        heif_file = pyheif.read(os.path.join(input_folder, filename))
        image = Image.frombytes(
            heif_file.mode, 
            heif_file.size, 
            heif_file.data,
            "raw",
            heif_file.mode,
            heif_file.stride,
        )
        
        # 品質を調整して700KB前後になるように保存
        output_path = os.path.join(output_folder, os.path.splitext(filename)[0] + '.jpg')
        image.save(output_path, "JPEG", quality=70)

print("変換完了")

上記のPythonコードは、指定した入力ディレクトリ内の.HEIC画像を読み取り、指定した品質で出力ディレクトリに.JPGとして保存します。品質は調整が必要な場合がありますので、適切な値に設定してください。

Discussion