2016-12-27 61 views
2

我正在撰寫我的論文以建立一個音樂分數(紙張)識別系統。這是我的輸入文件: enter image description hereOpenCV - 刪除圖像中的小的,不需要的小點/噪音

這是經過一些預處理和員工行去除結果: enter image description here 說我在這裏遇到的是,有一些超小,不需要的「點」的問題後,出現員工線刪除步驟。這些點/噪音與實際的音樂「點」符號不同:噪點較小,且大多出現在職員線上。這些點/噪聲會影響程序後面的識別階段。
如何去除這些點/噪音?

+0

您能分享您用於生成輸出的代碼嗎?也許一些變量的變化會導致更好的結果。 – ZdaR

+0

我建議在原始圖像上應用Sauvola的閾值算法,然後在答案中提到的合適的形態學操作 –

+0

爲了去除小點(雜散噪聲),您可以嘗試應用中值濾波器 –

回答

3

如果有很小的點,你可能想嘗試一些簡單的圖像處理技術,如erosion,他們工作在二進制圖像。這是matlab/openCV中的一個標準功能。你只需要定義你的內核的大小(這是你需要忽略的點的大小)。

1

有兩種簡單的解決方案:

  • 測地線開口< =>侵蝕後跟一個測地重建。如果它沒有在OpenCV中實現,你可以執行一個簡單的開放(侵蝕+膨脹)。測地線開口具有去除小圖案的優點,但保留了剩餘圖案的原始形狀。
  • 應用閾值來查找黑色圖案,標記它們並刪除最小的圖案。這個結果與我以前的建議相差無幾,不同之處在於你不使用結構化元素。