這是使用 OpenCV 中值模糊(Median Blur)的主控台/終端機範例,支援 Windows 11 與 Ubuntu Linux 24.04。程式會先在影像上加入椼鹽雜訊(salt-and-pepper noise),再以 cv2.medianBlur 用不同的核心大小濾除。中值濾波器是取鄰近像素的「中位數」而不是平均值,因此孤立的黑白雜點會被直接排除,而不會像均值模糊那樣把雜點的顏色攸開到周圍,這也是它被視為椼鹽雜訊標準解法的原因。預設核心為 13 與 49,與原 Notebook 相同。data/ 內附兩張範例影像(Lena、sample),結果會存到 model/median_blur/,不需要 GPU。

 

[資料夾結構]

  • CLAUDE.md / AGENT.md:程式規格書(內容相同)。
  • CHANGELOG.md:變更紀錄。
  • copyright.txt:版權聲明。
  • data/:範例影像 Lena.png(原 Notebook 使用的範例)、sample.png。
  • model/median_blur/:輸出結果 noise.png、median_blur_13.png、median_blur_49.png(已附上 Lena 的範例結果)。
  • tool/tools.py:共用函式。
  • src/:範例程式、啟動腳本與本說明文件。
  • venv/:Python 虛擬環境,由步驟 1 建立。

[執行環境需求]

  • 作業系統:Windows 11 或 Ubuntu Linux 24.04。
  • Python 3 與 pip。
  • 相依套件記錄於 src/requirements.txt,由步驟 1 自動安裝。
  • 不需要 GPU。

[操作步驟及說明]

步驟 1:建立虛擬環境

刪除舊的 venv/,重新建立虛擬環境並安裝 src/requirements.txt。若 pip 安裝失敗會直接中止並顯示錯誤訊息。

 

Windows 11:src\01_venv_create.bat

Ubuntu 24.04:bash src/01_venv_create.sh

 

步驟 2:啟用虛擬環境

啟用剛才建立的虛擬環境。Linux 請使用 source 的方式執行,否則環境變數不會套用到目前的終端機。

 

Windows 11:src\02_venv_activate.bat

Ubuntu 24.04:source src/02_venv_activate.sh

 

步驟 3:執行中值模糊範例

加入椼鹽雜訊後,依各核心大小做中值濾波並存檔。額外的參數會直接轉交給 Python 程式。

 

Windows 11:src\03_median_blur.bat

Ubuntu 24.04:bash src/03_median_blur.sh

指定自己的影像與核心大小:

bash src/03_median_blur.sh --source data/sample.png --kernel-sizes 5,21

 

步驟 4:清除虛擬環境(選用)

不再需要時,可刪除 venv/ 資料夾以釋放磁碟空間。

 

Windows 11:src\99_venv_clear.bat

Ubuntu 24.04:bash src/99_venv_clear.sh

 

[Python 程式進入點]

  • src/median_blur.py:參數為 [--source IMG] [--kernel-sizes 13,49] [--noise-count 1000] [--seed 0] [--output-dir DIR] [--show]。
  • --source:輸入影像,預設為 data/Lena.png。
  • --kernel-sizes:要試的核心大小,預設 13 與 49(與原 Notebook 相同)。必須是奇數,程式會自動檢查。核心越大去雜訊效果越好,但細節也會流失越多。
  • --noise-count:要加入的椼鹽雜訊像素數量,預設 1000。
  • --seed:隨機種子,預設 0,因此每次產生的雜訊都相同,方便比對結果。
  • --output-dir:輸出資料夾,預設為 model/median_blur/。--show 可另外開視窗顯示結果。
  • 輸出 noise.png,以及每個核心尺寸一張 median_blur_N.png。

[參考資料]

 

這個 SDK 內建於 MYAI Studio 人工智慧開發工具。

 

單獨購買價格:5,000元,永久授權,單一 SDK 授權,單機授權,一次下載,無更新服務,一年電子郵件範例諮詢服務。如果是軟體客製化問題,請購買我們的客製化顧問服務點數。