!pip install pyheif
from PIL import Image
import os
import pyheif
import re
from google.colab import drive
drive.mount('/gdrive')
%cd /gdrive/My Drive/path/to/the/file
file = 'IMG_0642.HEIC'
# 拡張子とそれ以外でファイル名を分ける
*filename_list, ext = re.split("\.", file)
filename = ".".join(filename_list)
heif_file = pyheif.read(file)
image = Image.frombytes(
heif_file.mode,
heif_file.size,
heif_file.data,
"raw",
heif_file.mode,
heif_file.stride,
)
# 拡張子から自動的に判断されるため、第2引数は必要はないが、明示的に変換先のファイル形式を示している。
image.save(f"./jpg/{filename}.jpg", "JPEG")
image.save(f"./png/{filename}.png", "PNG")
os.listdir("./heif")
for file in ls:
# 拡張子とその他の部分を分ける。
*filename_list, ext = re.split("\.", file)
filename = ".".join(filename_list)
#拡張子がHEICのものだけに処理を行なう。
if (ext == "HEIC"):
heif_file = pyheif.read(file)
image = Image.frombytes(
heif_file.mode,
heif_file.size,
heif_file.data,
"raw",
heif_file.mode,
heif_file.stride,
)
image.save(f"./jpg/{filename}.jpg", "JPEG")