Skip to content

Releases: swient/DIP-MDI

DIP-MDI_v0.0.7

Choose a tag to compare

@swient swient released this 05 Jun 14:19

Feat: 完成關於頁面,以及新增相關資源

  • 新增 AboutForm 表單及設計檔
  • 新增專案成員圖片與資源設定
  • 主選單加入關於功能,並防止重複開啟

Feat: 新增連通標記功能與 MSForm 支援多參數

  • 新增 connectedcomponent,採用兩遍法計算 4-連通元件數量
  • MSForm 支援 threshold、labelCount 等多參數顯示與管理,狀態列可動態顯示

Refactor: 亮度與對比度改為非同步處理

  • 使用 Task.Run 與 Invoke 提升 UI 流暢度與效能

DIP-MDI_v0.0.6

Choose a tag to compare

@swient swient released this 09 May 20:30

Feat: 狀態列支援三個 ToolStripStatusLabel,分別顯示不同信息

Feat: 檢查並提示相關依賴 DLL 是否缺少

  • VCRUNTIME140.dll,並協助用戶安裝 Visual C++ Redistributable

Feat: 修改 MSForm 視窗邊距為固定 100px,並且修改調整視窗大小時機

Feat: 支援彩色影像處理

  • 亮度、對比、平均濾波、自訂旋轉、局部馬賽克、自訂濾波器等功能改為 RGB 三通道分離處理,合成彩色結果
  • 高通濾波器、灰階、二值化仍維持單通道處理

DIP-MDI_v0.0.5

Choose a tag to compare

@swient swient released this 27 Apr 16:08

Refactor: 將排版由相對位置改為使用 TableLayoutPanel 來排版,將 SliderForm 的自訂旋轉改成非同步,以提高速度,限制變數 f 和 g 的作用域

  • SliderForm 和 FilterForm 移除原本的相對位置排版邏輯,現由 TableLayoutPanel 控制版面
  • 將 SliderForm 的自訂旋轉邏輯移至背景執行緒,以避免 UI 凍結
  • 將變數 f 和 g 移至各自 case 的區塊作用域

Fix: 解決自訂旋轉功能中的多線程資源競爭問題

  • 在背景線程中創建 NpBitmap 的副本,避免直接使用共享資源,在 UI 線程中安全地獲取所需的值

DIP-MDI_v0.0.4

Choose a tag to compare

@swient swient released this 24 Apr 16:28

Feat: 更新子表單啟用與禁用選單的狀態邏輯,為自訂濾波器添加更多預設核心選項

  • 將其他子表單也加入選單啟用與禁用的判斷邏輯,以增強使用者體驗
  • 在 FilterForm 中新增 radio button 選項,加入預設的高斯模糊、浮雕效果、反銳化濾波器核心

Refactor: 將 SliderForm 的 Select 變數由 int 改為 string 增加可讀性

  • 將 SliderForm 中基於整數的 Select 屬性重構為使用字串,以提高程式碼的可讀性和可維護性
  • 修改 DIPSample.cs 中的呼叫,在創建 SliderForm 實例時改為傳遞對應的字串值

DIP-MDI_v0.0.3

Choose a tag to compare

@swient swient released this 24 Apr 14:59

Feat: 當沒有開啟的 MSForm 時禁用相關選單,由子表單建立新分頁時使用原始標題名稱,當關閉了最後一個 Tab 時,關閉 MSForm

  • 在 DIPSample 中實作 UpdateMenuState 方法,根據是否存在 MSForm 子視窗來啟用/禁用相關選單項目
  • 在 MSForm 新增 GetCurrentTabTitle 獲取原始標題名稱並傳遞原始標題名稱至 SliderForm 和 FilterForm
  • 當關閉的 Tab 是最後一個時,關閉 MSForm,確保不會出現空的 MSForm

Refactor: 優化直角旋轉的圖片尺寸計算方式

  • 將旋轉角度為直角的圖片尺寸計算由原來的複雜三角函數計算,改為直接賦值

DIP-MDI_v0.0.2

Choose a tag to compare

@swient swient released this 23 Apr 10:13

Feat: 新增 Otsu 二值化功能

  • 新增 Otsu 二值化的事件處理邏輯,支援從當前編輯的圖片生成二值化圖像

Fix: 補全缺少的路徑

  • 補全 B11217048.vcxproj 的 OutDir 路徑中缺少的反斜線

DIP-MDI_v0.0.1

Choose a tag to compare

@swient swient released this 22 Apr 16:26

Feat: 改進 customfilter 邊界處理與 zoom 的插值法,自動調整表單大小

  • 將 customfilter 函數進行邊界處理,取最近的有效座標,以解決重複濾波時黑邊擴大的問題
  • 將 zoom 函數的插值方法從鄰近插值修改為雙線性內插,以提高縮放後的影像品質
  • 在 MSForm 的 AddImageTab 和 SetCurrentTabImage 方法中加入邏輯,當新增或設定的圖片尺寸大於目前表單的客戶區時,呼叫 bmp_dip 方法調整表單大小,確保圖片能完整顯示

Fix: 修正 ArrayToBitmap 中的 stride 處理問題,修正縮小圖像顯示輸入框的文字

  • 加入 stride 調整,修復圖像指針未正確跳至下一行,導致記憶體錯誤和圖像扭曲
  • 修正縮小圖像功能中錯誤的提示文字