python heic後綴圖片文件轉換成jpg格式的操作

我就廢話不多說瞭,直接上代碼

ps:win10不支持,隻有linux和macos可以成功的安裝pyheif包,win10目前支持不太好

heic_to_jpg.py

import subprocess
import os
import io
import whatimage
import pyheif
import traceback
from PIL import Image 
def decodeImage(bytesIo):
 try:
  fmt = whatimage.identify_image(bytesIo)
  # print('fmt = ', fmt)
  if fmt in ['heic']:
   i = pyheif.read_heif(bytesIo)
   # print('i = ', i)
   # print('i.metadata = ', i.metadata)
   pi = Image.frombytes(mode=i.mode, size=i.size, data=i.data)
   # print('pi = ', pi)
   pi.save('heeh.jpg', format="jpeg")
 except:
  traceback.print_exc()
 
def read_image_file_rb(file_path):
 with open(file_path, 'rb') as f:
  file_data = f.read()
 return file_data
 
if __name__ == "__main__":
 file_path = './test_image.HEIC'
 print('file_path = ', file_path)
 
 data = read_image_file_rb(file_path)
 # print('data = ', data)
 decodeImage(data)

參考鏈接:

https://stackoverflow.com/questions/54395735/how-to-work-with-heic-image-file-types-in-python

https://pypi.org/project/pyheif/

補充:怎麼將HEIC圖像格式轉換成JPG或PNG?

想打開heic文件,首先要做的是把圖片格式轉換成電腦可以查看的,電腦可以查看的形式也並非很單一,比如jpg/bmp/png,這些都是比較常用的格式,首先heic圖片是蘋果手機獨有的圖片格式,電腦上或者其他設備是無法打開,需要將heic圖片進行轉換成jpg/bmp/png等電腦或其他設備可以的打開的格式,

那今天就學習一下heic文件怎麼轉換的,將蘋果的手機中的照片存到電腦上的某個文件夾,使用”heic圖片轉換精靈”進行轉換,轉換步驟如下:

支持操作系統 widowns vista/ win7/win8 / win10

heic圖片轉換精靈,下載地址和安裝方法:http://www.ghostheic.com/

轉換步驟如下:

1.第一步,選擇輸出格式,支持jpg,png,bmp格式,默認jpg ,選擇圖像質量,選擇的數值越高,轉換後的圖像質量也越高,同時文件也會變大,若添加的heic圖片很多,支持批量添加,導入文件夾,列表會顯示添加的文件名,大小,默認軟件是勾選文件的,隻需點擊開始轉換,等待幾秒鐘heic轉換完成,點擊打開目錄轉換後的文件就在打開的目錄下.

另使用“heic圖片轉換精靈”,若需要保存圖片原有信息,轉換可勾選保存exif信息,這樣轉換後原圖信息都可以保存

以上為個人經驗,希望能給大傢一個參考,也希望大傢多多支持WalkonNet。如有錯誤或未考慮完全的地方,望不吝賜教。

推薦閱讀: