[Python] 將 .HEIC 圖片批次轉換為 .PNG

更新於 發佈於 閱讀時間約 6 分鐘

隨著 Apple 設備越來越普及,許多人在傳輸或下載 iPhone 照片時,會發現照片的副檔名變成了 .HEIC。這種檔案在 Windows 系統上常常無法直接開啟或編輯,因此了解如何將 .HEIC 圖片轉換成更通用的 .PNG 格式就變得非常重要。

本文將帶你一步步了解 HEIC 是什麼,並使用 Python 撰寫一個簡單的批次轉換程式,將資料夾中的所有 .HEIC 檔案轉為 .PNG 格式。


📸 HEIC 是什麼?

HEIC(High Efficiency Image Container) 是 Apple 從 iOS 11 開始使用的圖片儲存格式,基於 HEIF(High Efficiency Image Format)標準。它具有以下特點:

  • 🔹 高壓縮效率:在保持相同畫質的情況下,檔案大小比 JPEG 小得多。
  • 🔹 支援多張圖片儲存在同一檔案中:例如連拍照片、Live Photos。
  • 🔹 支援透明通道、HDR、深度資訊等

雖然 HEIC 的技術非常先進,但在非 Apple 環境(如 Windows 或某些網站)上兼容性較差。因此,將 HEIC 轉為 PNG(或 JPEG)是常見需求。


🛠️ 開始之前:安裝必要套件

我們會使用 Python 的 Pillow 圖像處理函式庫,搭配 pillow-heif 套件來讀取 HEIC 格式圖片。

請先在命令列或終端機執行以下指令安裝必要套件:

pip install pillow pillow-heif
raw-image

🧑‍💻 Python 程式碼:批次轉換 HEIC → PNG

以下是完整的程式碼,會將指定資料夾內所有 .HEIC 檔案轉換為 .PNG,並儲存至新的資料夾中:

import os
from PIL import Image
import pillow_heif

# 啟用 pillow-heif 支援 HEIC 格式
pillow_heif.register_heif_opener()

# 指定輸入資料夾(請修改為你的 HEIC 照片資料夾路徑)
input_folder = r"C:\Users\crab1\Downloads\暫放照片-20250527T134809Z-1-001\暫放照片"

# 輸出資料夾:將轉換後的 PNG 存到這裡
output_folder = os.path.join(input_folder, "converted_png")
os.makedirs(output_folder, exist_ok=True) # 如果資料夾不存在則自動建立

# 遍歷資料夾內所有檔案,篩選出 HEIC 檔案並轉換
for filename in os.listdir(input_folder):
if filename.lower().endswith(".heic"):
heic_path = os.path.join(input_folder, filename)
png_filename = os.path.splitext(filename)[0] + ".png"
png_path = os.path.join(output_folder, png_filename)

# 使用 Pillow 開啟 HEIC 並轉換為 PNG
image = Image.open(heic_path)
image.save(png_path, "PNG")
print(f"已轉換:{filename} → {png_filename}")

print("全部 HEIC 圖片已轉換完成!")

📂 程式運作說明

  1. 讀取資料夾:程式會讀取指定資料夾中所有檔案。
  2. 篩選 .heic 檔案:只處理副檔名為 .heic 的圖片。
  3. 轉檔:利用 Pillow 搭配 pillow-heif,將圖片轉成 .PNG 格式。
  4. 輸出:轉換後的圖片會儲存在子資料夾 converted_png 中。
raw-image

✅ 常見問題

Q1:我看不到輸出檔案?

請確認:

  • 路徑 input_folder 是否正確。
  • .heic 副檔名是否正確(需小寫或加上 .lower())。
  • 程式是否有權限讀寫該資料夾。

Q2:我用的是 macOS,也可以用這個方法嗎?

可以!macOS 原生支援 HEIC 格式,但仍可使用此程式批次轉換為 PNG,方便跨平台分享或壓縮。

Q3:我想轉換為 JPEG,可以嗎?

當然可以,請將以下程式碼:

image.save(png_path, "PNG")

改為:

jpeg_path = png_path.replace(".png", ".jpg")
image.save(jpeg_path, "JPEG")

🔚 總結

  • HEIC 是一種高效率的圖像格式,但在某些平台上的相容性有限。
  • 使用 Python 和 pillow-heif 可以輕鬆將 HEIC 批次轉換為 PNG。
  • 本教學提供簡單、可擴充的解決方案,適合處理大量 iPhone 照片轉檔需求。

如果你有更多影像格式轉換需求,或想加入圖像壓縮、自動分類等功能,也歡迎留言詢問!

留言
avatar-img
留言分享你的想法!
avatar-img
螃蟹_crab的沙龍
152會員
297內容數
本業是影像辨識軟體開發,閒暇時間進修AI相關內容,將學習到的內容寫成文章分享。 興趣是攝影,踏青,探索未知領域。 人生就是不斷的挑戰及自我認清,希望老了躺在床上不會後悔自己什麼都沒做。
螃蟹_crab的沙龍的其他內容
2025/04/15
在軟體開發或部署過程中,我們經常需要對多個 .ini 設定檔進行批次修改,例如將某個舊的參數名稱或路徑名稱,替換成新的命名。 這就像記事本的「全部取代」功能,但你不需要一個個打開檔案慢慢點——你可以用 Python 自動完成這些事! 本文將介紹一個 Python 函式:search_and_re
2025/04/15
在軟體開發或部署過程中,我們經常需要對多個 .ini 設定檔進行批次修改,例如將某個舊的參數名稱或路徑名稱,替換成新的命名。 這就像記事本的「全部取代」功能,但你不需要一個個打開檔案慢慢點——你可以用 Python 自動完成這些事! 本文將介紹一個 Python 函式:search_and_re
2025/04/11
🐶 什麼是 Watchdog? Watchdog 是一個 Python 套件,用來即時監控檔案系統的變化。它可以在資料夾內有「新增」、「修改」、「刪除」等事件時,立即觸發事件處理函式,不需要手動輪詢 (polling),效率高又省資源。 ✅ Watchdog 的特點: 採用 OS 層級的檔案
2025/04/11
🐶 什麼是 Watchdog? Watchdog 是一個 Python 套件,用來即時監控檔案系統的變化。它可以在資料夾內有「新增」、「修改」、「刪除」等事件時,立即觸發事件處理函式,不需要手動輪詢 (polling),效率高又省資源。 ✅ Watchdog 的特點: 採用 OS 層級的檔案
2025/01/12
用 PyInstaller 打包一個簡單計算機應用 (GUI 使用 PyQt5) 本教學將帶您使用 PyQt5 建立一個簡單的計算機應用,並透過 PyInstaller 將其打包成執行檔(EXE)。 1. 安裝所需環境 在開始之前,請確保您已安裝以下工具: 必要套件 Python: 建
Thumbnail
2025/01/12
用 PyInstaller 打包一個簡單計算機應用 (GUI 使用 PyQt5) 本教學將帶您使用 PyQt5 建立一個簡單的計算機應用,並透過 PyInstaller 將其打包成執行檔(EXE)。 1. 安裝所需環境 在開始之前,請確保您已安裝以下工具: 必要套件 Python: 建
Thumbnail
看更多
你可能也想看
Thumbnail
常常被朋友問「哪裡買的?」嗎?透過蝦皮分潤計畫,把日常購物的分享多加一個步驟,就能轉換成現金回饋。門檻低、申請簡單,特別適合學生與上班族,讓零碎時間也能創造小確幸。
Thumbnail
常常被朋友問「哪裡買的?」嗎?透過蝦皮分潤計畫,把日常購物的分享多加一個步驟,就能轉換成現金回饋。門檻低、申請簡單,特別適合學生與上班族,讓零碎時間也能創造小確幸。
Thumbnail
嗨!歡迎來到 vocus vocus 方格子是台灣最大的內容創作與知識變現平台,並且計畫持續拓展東南亞等等國際市場。我們致力於打造讓創作者能夠自由發表、累積影響力並獲得實質收益的創作生態圈!「創作至上」是我們的核心價值,我們致力於透過平台功能與服務,賦予創作者更多的可能。 vocus 平台匯聚了
Thumbnail
嗨!歡迎來到 vocus vocus 方格子是台灣最大的內容創作與知識變現平台,並且計畫持續拓展東南亞等等國際市場。我們致力於打造讓創作者能夠自由發表、累積影響力並獲得實質收益的創作生態圈!「創作至上」是我們的核心價值,我們致力於透過平台功能與服務,賦予創作者更多的可能。 vocus 平台匯聚了
Thumbnail
將圖片添加到PDF文件中可以提升內容質量,使其更具吸引力。無論您是在製作專業文件、報告或演示文稿,插入圖片都是非常重要的。以下是使用各種工具進行操作的方法
Thumbnail
將圖片添加到PDF文件中可以提升內容質量,使其更具吸引力。無論您是在製作專業文件、報告或演示文稿,插入圖片都是非常重要的。以下是使用各種工具進行操作的方法
Thumbnail
學習如何將掃描的PDF轉換為可搜索文本,並高效管理和查找文件。探索先進的OCR技術如何提升文檔處理效率。
Thumbnail
學習如何將掃描的PDF轉換為可搜索文本,並高效管理和查找文件。探索先進的OCR技術如何提升文檔處理效率。
Thumbnail
在當今數字化時代,需求日益增長。本文詳細介紹了幾種常用的PDF轉Word方法,並討論了它們的侷限性。接下來,我們將向您介紹pdftopdf.ai,一款具有先進的OCR和LLM技術,提供高效且保持原始文件格式和質量的解決方案。
Thumbnail
在當今數字化時代,需求日益增長。本文詳細介紹了幾種常用的PDF轉Word方法,並討論了它們的侷限性。接下來,我們將向您介紹pdftopdf.ai,一款具有先進的OCR和LLM技術,提供高效且保持原始文件格式和質量的解決方案。
Thumbnail
  最近遇到一些人想做音訊的合成,我回答他或許可以從圖像風格轉換中找到些靈感,我才突然想起我對於這部分的認知只止於知道他能做什麼及結果大概如何,對於內部訓練邏輯及結構並沒有認真的去了解,現在剛好趁此機會好好的學習一下。
Thumbnail
  最近遇到一些人想做音訊的合成,我回答他或許可以從圖像風格轉換中找到些靈感,我才突然想起我對於這部分的認知只止於知道他能做什麼及結果大概如何,對於內部訓練邏輯及結構並沒有認真的去了解,現在剛好趁此機會好好的學習一下。
Thumbnail
涉及圖像處理和計算機視覺時,色彩空間轉換是一個常見操作,應用如下: 降維: 將一張彩色圖像轉換為灰度圖像可以減少數據的維度,簡化處理過程,同時在某些情況下保留重要的視覺信息。 突顯特徵: 在某些情況下,某些色彩通道可能包含冗餘或不必要的信息,通過轉換到其他色彩空間,可以更好地突顯圖像中的重要特徵
Thumbnail
涉及圖像處理和計算機視覺時,色彩空間轉換是一個常見操作,應用如下: 降維: 將一張彩色圖像轉換為灰度圖像可以減少數據的維度,簡化處理過程,同時在某些情況下保留重要的視覺信息。 突顯特徵: 在某些情況下,某些色彩通道可能包含冗餘或不必要的信息,通過轉換到其他色彩空間,可以更好地突顯圖像中的重要特徵
Thumbnail
在數位時代,為了要應付各種場景和需求,所需要的檔案格式也不盡相同。撇除專用格式不談,日常使用的影音圖片格式,還要為個別種類去安裝對應的編輯軟體步驟多少會有些繁瑣。File Converter可以應付一些簡單的媒體格式轉換,過程中不用開啟任何軟體。可以省去不少步驟。
Thumbnail
在數位時代,為了要應付各種場景和需求,所需要的檔案格式也不盡相同。撇除專用格式不談,日常使用的影音圖片格式,還要為個別種類去安裝對應的編輯軟體步驟多少會有些繁瑣。File Converter可以應付一些簡單的媒體格式轉換,過程中不用開啟任何軟體。可以省去不少步驟。
Thumbnail
前篇測試如何把提示詞生成的圖像細節提高,這篇要測試的工作流是把任意圖像載入後經由放大模型放大,同時測試放大後重繪看看效果如何。
Thumbnail
前篇測試如何把提示詞生成的圖像細節提高,這篇要測試的工作流是把任意圖像載入後經由放大模型放大,同時測試放大後重繪看看效果如何。
Thumbnail
拍照後,請把照片原檔用雲端硬碟或相簿,分享超連結給我 拍照請用手機內建軟體拍,不要用社群媒體的(例如FB、Line) 因為FB會把畫質壓縮的變形,像縮圖一樣,手機上看可以,但桌機大螢幕看,就有朦朧美(會影響判讀),更遑論如果需要印出來了(例如媽媽手冊等證明文件)。
Thumbnail
拍照後,請把照片原檔用雲端硬碟或相簿,分享超連結給我 拍照請用手機內建軟體拍,不要用社群媒體的(例如FB、Line) 因為FB會把畫質壓縮的變形,像縮圖一樣,手機上看可以,但桌機大螢幕看,就有朦朧美(會影響判讀),更遑論如果需要印出來了(例如媽媽手冊等證明文件)。
Thumbnail
這篇文章教你如何使用 heic2any.js 來轉換 HEIC 格式的圖片。內容包括 HEIC 格式的介紹、如何使用 heic2any.js、處理從 iPhone 上傳的 HEIC 格式圖片,以及處理 API 回應的 HEIC Base64 格式圖檔的方法。文章提供了實用的 Demo 和原始碼。
Thumbnail
這篇文章教你如何使用 heic2any.js 來轉換 HEIC 格式的圖片。內容包括 HEIC 格式的介紹、如何使用 heic2any.js、處理從 iPhone 上傳的 HEIC 格式圖片,以及處理 API 回應的 HEIC Base64 格式圖檔的方法。文章提供了實用的 Demo 和原始碼。
追蹤感興趣的內容從 Google News 追蹤更多 vocus 的最新精選內容追蹤 Google News