∥
∥ 中研院 ∥ 人社中心 ∥ 繁體中文 ∥ English
針對掃描地圖或歷史航空照片進行地理空間對位(地理坐標校正、Georeferencing),輸出的影像檔案周圍常常會出現黑色邊框,這是因為使用 GDAL 套件在影像坐標系統轉換(warp)後,會將影像範圍之外的區域以背景值 0 填補,輸出的圖檔在 GIS 軟體套疊時就會呈現黑色,而這樣的黑邊往往會遮住底圖、在影像拼接時產生接縫,進而讓不同圖層之間比對造成困擾。
一般較常見的處理方式,是將該圖層透明度設定中的 NoData 值設為 0。雖然這樣可以在技術上去除黑色邊框,但也會將影像中原本即為有效資訊的深色像素一併設為透明,例如深色農地、森林陰影、水體,甚至地圖上的黑色文字,都可能因此被挖空而造成資訊缺失。
Prince Osei Boateng 開發了一個 Black Frame Remover 外掛程式,採取更進階的處理方式:不是只依賴像素值透明化,而是結合影像範圍偵測(footprint detection)與邊界安全的形態學處理(edge-safe morphology)。
其運作方式如下:
1.閾值偵測(Threshold detection):
利用可調整的閾值(0–100),將影像內容與黑色背景分離;支援所有 GDAL 可讀取的影像格式。
2.形態學鄰近運算(Morphological closing):
透過先膨脹、後侵蝕的處理流程,保護靠近影像邊界但實際有效的深色像素,避免森林、陰影、水體等被誤判為外框。可調整範圍為 1–51 像素。
3.建立多邊形影像範圍(Polygon footprint creation):
將精煉後的二元遮罩轉換為真正的幾何多邊形。裁切是依據實際影像範圍,而不是僅靠像素值,因此也能處理旋轉、裁切過或形狀不規則的 raster。
4.裁切與輸出(Clip & export):
依據 footprint 多邊形進行裁切,可選擇在輸出的 GeoTIFF 中加入 alpha band,並可自動將結果重新載入至 QGIS 專案中。
與一般設定 NoData = 0 方法相比,這個外掛程式的關鍵差異在於:它不是直接把值為 0 的像素設為透明,而是先建立影像外框的多邊形,再只裁去最外側的黑邊,因此能完整保留影像內所有有效的深色像素,不會造成額外的問題。
以下運用具體案例來說明使用方式:
1.首先載入地理空間對位(Georeferencing)處理後的影像檔案,因為影像經過坐標系統轉換,會發現周圍有大範圍的黑邊遮住其他時期的影像。以下案例是將 1945 年 5 月 31 日臺北空襲事件的歷史航照套疊在事件發生之前2個月的歷史航照影像上。

2.可直接在 QGIS 管理與安裝外掛程式中搜尋 “Black Frame Remover” 並安裝,或自以下網址下載:
https://plugins.qgis.org/plugins/black_frame_remover/

3.啟動「Black Frame Remover」功能,並設定相關參數。

4.執行自動化移除黑邊後,程式會自動將處理後的新影像檔案載入,方便不同圖層之間比對。

Prince Osei Boateng 也將該外掛程式原始碼公開在 GitHub 上:https://github.com/Oseiprince4567/Black-Frame-Remover。