膚色檢測、磨皮、銳化、美白算法都比較成熟了,只要選對方案,針對平台作進一步優化即可。
一、磨皮篇
此處感謝imageshop,更多的內容可以參考他的的博文。
嘗試過雙邊濾波,利用空間位置關系和像素值的雙邊關系,對其進行低通高斯濾波處理,opencv里面有內置的功能,而且針對CPU等進行了優化,無奈速度還是太慢,無法滿足實時性。
最后通過imageshop了解到了導向濾波算法,如果直接使用這個算法,效率還是比較慢,幸虧后面作者提出了加速的算法,效果還不錯,速度大大提升了。最后通過匯編並行指令、建表等方法進行進一步優化。
二、銳化篇
沒有太多可說的,自身圖像疊加上高頻分量,選擇好幾組檔位的濾波器系數,濾波即可。
三、美白篇
選用了一個最簡單的方法,增強光線,可以提前建表減少計算量,也沒有太多的東西。
針對比較大的圖像,1080p以上,可以先進行人臉檢測和跟蹤,對指定區域進行美顏處理。
針對720p不算很大的圖像,可以直接進行上述處理。
四、聲音與圖像
最后,通過這2個月對圖像相關東西的接觸,下面談一下自己對聲音與圖像的認識。
聲音和圖像很相似,又有很多的不同。
聲音更多偏向物理波、信號分析、心理聽覺,不夠直接,可能需要通過設備去捕捉,全部的客觀信息就可以用一張時頻分析圖來表示,如果加上空間信息,里面的內容還是挺多的。
對於人類交流來說,聲音的第一要義就是要聽清楚,聽懂,還原真實現場感。
如果是作品,通常這一點基於都能保證。
如果是通話,通常要做回聲消除、去噪、信息壓縮、可懂度增強。
如果是娛樂,音效、空間聲場增強,趨向真實、高保真,模擬真實的3D場景感。
過去,都是靠奴隸來解放自己,完成各種各樣的雜事,又給予最低級的報酬。
如今,這些都是非法的,那就只有通過機器幫助自己完成這些事,自己從事更高級的勞動。
對於人類與機器來說,機器聽懂人類的指令、理解指令、完成指令,和人類通過語言交流。
對應着智能化的技術:識別、自然語言理解、合成。
對於一幅圖,人接觸圖像的時候,會自動關注自己感興趣的內容。
圖像更多偏向圖形、幾何、視覺。軟件算法方面側重尋找像素點之間的關系,基於塊之間的規律,關注點的跟蹤,通常是基於矩陣塊的運算。應用面廣,信息量大,有更多的開源項目,例如Opencv。
一個圖像處理效果,它通常有多種可以嘗試的算法,這個需要根據實際場景和熟悉程度,選擇合適的算法並進行場景優化。
其次,圖像的數據量大,通常需要進行指令集或者算法級層面的效率優化。
最后,牛逼的Paper里面通常能看到相關的作者會開放代碼,這一點比音頻、語音論文要好。