大概是四月底的時候。有人加我QQ問我是否做能做一些基於圖像皮膚檢測的算法,
主要是實現對皮膚六項指標:
1. 水分
2. 有份
3. 痤瘡與痘痘
4. 色斑與膚色
5. 皺紋
6. 毛孔
聽到這些內容,我略微思考了一下,心里有了點思路,跟他交流了一下,關於怎么
做的思路就更加清晰起來,於是我先基於JAVA語言實現了第一版,然后把它改到
android上面。發現android代碼修改非常小,就能夠在android上執行我的測試程序
了。可是感覺速度非常慢。大概要十幾秒才干出結果。發給了那個哥們。他測試了一
下也非常郁悶,說速度太慢了,准確率也不是非常高,怎么辦。於是我細致對比了一下
。發現我用Java語言實現時。在桌面版都是基於int來處理RGB像素的每一個通道數
據,android上面DVM這么玩就有點卡。於是我就所有改成了每一個通道基於BYTE
來實現處理,然后添加了皮膚檢測,這樣過濾非SKIN像素。再降採樣處理整個
Bitmap數據,果然速度非常快了,僅僅要三秒左右就能夠出結果,連我自己都認為
自己是大神了,然后就想把android的人臉檢測加上去,實現分塊檢測,這樣
能夠更好的檢測人臉皺紋類型。經過一番各種坑之后,android上的人臉檢測
API我學會了使用,可是發現速度不給力,加上去等於作繭自縛。於是我又放
棄了。
又經過一番各種調試,別人幫忙把相機功能加上了,這樣就實現了拍
照直接檢測出結果,於是第二個問題出現了。常常出現APP閃退,我哭,經
過一番測試,發現低分辨率時候才會出現閃退,后來我才明確問題出在我對
低分辨率進行降採樣,已經超出了像素范圍,我哭!
攻克了之后閃退問題就
不見了,最終能夠正常執行了,也能夠正常測試了:
測試程序中的效果截屏:

這個就是拍照檢測的結果,
原理都是常見的圖像處理算法,能夠說本人的博客文章已經包括了該應用的所有
圖像處理算法知識,僅僅是怎樣活學活用取決於大家都圖像處理問題的認知與理解。
通過該算法的開發,我第一次將我學到的圖像處理知識應用到實踐之中用於解決
實際問題。同一時候也發現真實圖像處理問題,不是一步算法就能夠實現的,而是一
系列圖像處理算法的綜合運用。
