記錄我第一次在Android開發圖像處理算法的經歷


大概是四月底的時候。有人加我QQ問我是否做能做一些基於圖像皮膚檢測的算法,

主要是實現對皮膚六項指標:

1.      水分

2.      有份

3.      痤瘡與痘痘

4.      色斑與膚色

5.      皺紋

6.      毛孔

聽到這些內容,我略微思考了一下,心里有了點思路,跟他交流了一下,關於怎么

做的思路就更加清晰起來,於是我先基於JAVA語言實現了第一版,然后把它改到

android上面。發現android代碼修改非常小,就能夠在android上執行我的測試程序

了。可是感覺速度非常慢。大概要十幾秒才干出結果。發給了那個哥們。他測試了一

下也非常郁悶,說速度太慢了,准確率也不是非常高,怎么辦。於是我細致對比了一下

。發現我用Java語言實現時。在桌面版都是基於int來處理RGB像素的每一個通道數

據,android上面DVM這么玩就有點卡。於是我就所有改成了每一個通道基於BYTE

來實現處理,然后添加了皮膚檢測,這樣過濾非SKIN像素。再降採樣處理整個

Bitmap數據,果然速度非常快了,僅僅要三秒左右就能夠出結果,連我自己都認為

自己是大神了,然后就想把android的人臉檢測加上去,實現分塊檢測,這樣

能夠更好的檢測人臉皺紋類型。經過一番各種坑之后,android上的人臉檢測

API我學會了使用,可是發現速度不給力,加上去等於作繭自縛。於是我又放

棄了。

又經過一番各種調試,別人幫忙把相機功能加上了,這樣就實現了拍

照直接檢測出結果,於是第二個問題出現了。常常出現APP閃退,我哭,經

過一番測試,發現低分辨率時候才會出現閃退,后來我才明確問題出在我對

低分辨率進行降採樣,已經超出了像素范圍,我哭!

攻克了之后閃退問題就

不見了,最終能夠正常執行了,也能夠正常測試了:

測試程序中的效果截屏:


這個就是拍照檢測的結果,

原理都是常見的圖像處理算法,能夠說本人的博客文章已經包括了該應用的所有

圖像處理算法知識,僅僅是怎樣活學活用取決於大家都圖像處理問題的認知與理解。

 通過該算法的開發,我第一次將我學到的圖像處理知識應用到實踐之中用於解決

實際問題。同一時候也發現真實圖像處理問題,不是一步算法就能夠實現的,而是一

系列圖像處理算法的綜合運用。




免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM