PR

Google Colabで簡単!iPhoneのHEIC画像をJPGに変換する方法

やってみた

はじめに

 iPhoneで撮影した写真が、他のデバイスや Web サイトで開けずに困った経験はありませんか? この記事では、HEIC 形式の画像を誰でも簡単にJPG形式に変換する方法を、プログラミングの知識がない方でも理解できるように丁寧に解説します。

HEIC画像が利用される理由

HEICは、主にApple社が推進する画像形式で、以下のような特徴と用途があります:

  1. 高効率な圧縮
  • 同じ画質のJPEGと比較して、約50%も容量を小さくできます
  • スマートフォン、特にiPhoneやiPadのストレージスペースを節約できます
  1. 高画質の維持
  • 圧縮率が高いにもかかわらず、元の画像の画質を良好に保持します
  • JPEGよりも色再現性と細部の表現に優れています
  1. 技術的背景
  • HEIF(High Efficiency Image Format)の画像コンテナ形式の一種
  • H.265/HEVC(高効率映像符号化)圧縮技術を利用しています
  1. 主な用途
  • iOSデバイスでの標準写真フォーマット
  • iCloudフォトライブラリでの画像保存
  • メモリ容量が限られたモバイルデバイスでの画像管理
  • 高画質と小容量を両立したい写真保存
  1. 利点
  • データ通信量の削減
  • デバイスのストレージ効率化
  • 画質劣化を最小限に抑えた圧縮

HEIC画像の困りごと

iPhoneでは、高画質で容量を抑えられる「HEIC」形式で写真が保存されます。しかし、この形式には次のような問題があります:

  • 古いパソコンで開けない
  • 一部のウェブサイトにアップロードできない
  • 特定の画像編集ソフトで読み込めない

こちらの問題を簡単に解決できるのが、Google Colabでの画像形式の変換になります。

Google Colabを使う3つの魅力

Google Colabを使うメリットは、以下の3点に集約されます:

  • 環境構築不要:プログラミングの知識がなくても、ウェブブラウザだけで簡単に利用できます
  • 高性能なサーバー:自分のパソコンのスペックを気にせず、大量の画像を処理できます
  • 完全無料:Googleアカウントさえあれば誰でも利用可能

準備するもの

変換作業に必要なものは、たったの3つです:

  1. Googleアカウント
  2. インターネット環境
  3. 変換したいHEIC画像

変換手順:簡単3ステップ!

STEP 1:Google Colabにアクセス

  1. ブラウザで Google Colab (https://colab.research.google.com/) を開きます
  2. 「新しいノートブック」を作成します

STEP 2:変換用Pythonコードを準備

新しいコードセルに、以下のPythonコードをコピー&ペーストします:

!pip install pyheif
import os
from PIL import Image
import pyheif

def convert_heic_to_jpg(root_dir, output_dir):
    for dirpath, dirnames, filenames in os.walk(root_dir):
        for filename in filenames:
            if filename.lower().endswith(".heic"):
                heic_path = os.path.join(dirpath, filename)

                # 出力先のフォルダ構造を作成
                relative_path = os.path.relpath(dirpath, root_dir)
                output_sub_dir = os.path.join(output_dir, relative_path)
                os.makedirs(output_sub_dir, exist_ok=True)

                jpg_filename = os.path.splitext(filename)[0] + ".jpg"
                jpg_path = os.path.join(output_sub_dir, jpg_filename)

                try:
                    heif_file = pyheif.read(heic_path)
                    image = Image.frombytes(
                        heif_file.mode,
                        heif_file.size,
                        heif_file.data,
                        "raw",
                        heif_file.mode,
                        heif_file.stride,
                    )
                    image.save(jpg_path, "JPEG")
                    print(f"変換完了: {heic_path} -> {jpg_path}")
                except Exception as e:
                    print(f"変換失敗: {heic_path} - {e}")

if __name__ == "__main__":
    # 変換したいHEICファイルが格納されているルートディレクトリを指定
    root_directory = "/content/your_root_directory"

    # JPGファイルの出力先ルートディレクトリを指定
    output_directory = "/content/converted_images"

    # 必要なライブラリをインストール
    try:
        import pyheif
    except ImportError:
        print("pyheifライブラリがインストールされていません。インストールします...")
        get_ipython().run_line_magic("pip", "install pyheif Pillow")
        import pyheif

    # 出力先ディレクトリが存在しない場合は作成
    os.makedirs(output_directory, exist_ok=True)

    convert_heic_to_jpg(root_directory, output_directory)
    print("HEICからJPGへの変換処理が完了しました。")

STEP 3:コードを実行して設定を調整

  1. root_directory:変換したいHEICファイルが入っているフォルダのパスを指定
    • Google Colabにアップロードしたフォルダは通常 /content/ の下にあります
    • 例:「HEIC画像」フォルダをアップロードした場合、/content/HEIC画像
    • 重いデータの場合は、Google ドライブにデータをアップロードしてください
  2. output_directory:変換後のJPGファイルを保存するフォルダのパスを指定
    • 例:/content/JPG画像
    • このフォルダは自動的に作成されます
  3. コードセルの左側にある再生ボタンをクリックして実行

トラブルシューティング

よくある質問と対処法

  • 「pyheifライブラリがインストールされていません」と表示された場合
    • コードが自動的にインストールを試みます
    • それでもエラーが出る場合は、新しいセルで !pip install pyheif Pillow と入力して実行
  • 「指定されたファイルが見つかりません」と表示された場合
    • root_directory のパスが正確か確認
    • フォルダ名は大文字・小文字も含めて正確に入力

まとめ

 Google Colabを使えば、プログラミングの知識がなくても、iPhoneで撮影したHEIC画像を簡単にJPG形式に変換できます。複数のフォルダの画像も一括で処理できるので、大量の画像変換に最適な方法です。

ぜひこの方法を試して、HEIC画像の互換性の悩みを解消してください!

コメント