練習 - 簡單圖像污點處理

對於圖像學不熟悉的我來說,要寫一個圖像污點處理演算法是一件不容易的事啊!雖然只是一個微不足道的問題,但也花了一點時間才可以解決到這個問題。

從這個學習的過程裹,使用的是PHP語言來編程,因為之前開發的項目和圖像有關的要求都使用第三方提供的函式庫來處理,所以對於PHP的圖像函式沒有花很多時間去研究。經過這次的練習,至少讓我接觸多了圖像有關的函式。希望在日後的編程道路上,對我有所幫助。

與此同時,一個簡單的練習,讓我明白到處理圖像是一個很高深的學問,有興趣的朋友們,必須要花很多的時間去鑽研。

題目:編寫一個圖像預處理系統,對圖片進行污點消息。假設圖片從掃描前就存在的墨點,也可能是掃描器引入的噪點,都需要把這些污點消除。

演算法思路:圖像裹一般像直線、圓和弧線這樣有意義的圖形都是最少有5個點相互連在一起構成的,而污點一般都不會超過5個點連在一起。因此污點的定義:如果一個點周圍與之相連的點的總數小於5,則這幾個相連在一起的點就是一個污點。根據這個定義,演算法的流程:從圖的第一個像素點開始搜尋,如果這個點是黑色,就將相連點計數器加1,然後繼續向這個點相連的8個方向分別搜尋,如果某個方向上的相鄰點是0就停止這個方向的搜尋。如果搜尋到相連點超過4個,說明這個點是某個圖形上的點,就退出這個點的搜尋。如果搜尋完成後得到的相連的點小於或等於4個,就說明這個點是一個污點,需要把顏色設置為白色。

下載附件

  • 1 zip dirty
    Date added: 2018-01-05 21:40:06 File size: 2 KB Downloads: 61

發佈留言

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *

*

驗證碼 * Time limit is exhausted. Please reload CAPTCHA.

這個網站採用 Akismet 服務減少垃圾留言。進一步瞭解 Akismet 如何處理網站訪客的留言資料