導航:首頁 > 操作系統 > android實時美顏

android實時美顏

發布時間:2024-02-28 01:33:01

㈠ 安卓手機微信視頻美顏設置方法

安卓手機微信視頻美顏設置方法如下:

手機:華為p50pro

系統:EUMI10.1

程序:設置功能2.01

1、單擊打開桌面上的設置圖標。

㈡ Android OpenGLES 實時美顏(磨皮)的優化(二)

在前一篇文章 Android OpenGLES 實時美顏(磨皮)的優化 ,我們已經介紹了關於實時美顏(磨皮)的一些優化點。但在實際的優化測試中發現,當處理器發熱之後,就無法保證預覽幀率了,主要還是高斯模糊處理的數據量比較大導致。因此,我們需要尋找新的磨皮余鉛方法豎早好。
目前市面上關於磨皮方法有好多種,使用PS磨皮經常用到的方法包括高反差保留、高低頻、中性灰以及雙線性等。其中中性灰和雙線性的效率一般,因此,我們從高反差保留、高低頻這兩種方法中選擇。這里選擇使用高反差保留法做磨皮處理,PS中的高反差保留法進行磨皮,隨手一搜便能找到很多文章,比如:
https://jingyan..com/article/455a99504d568fa1662778d6.html

接下來,我們嘗試著實現文章中講到的過程。

關於高斯模糊的優化,可以參考本人的文章:
OpenGLES濾鏡開發匯總 —— 高斯模糊實現以及優化

對於人像進行高斯模糊,我們設計一個11x11的高斯運算元對圖像進行高斯模糊,shader如下:
vertex shader :

fragment shader:

經過以上的shader進行高斯模糊處理之後,我們得到這樣一張高斯模糊圖像:

在PS的高反差保留磨皮方睜並法中,高反差保留磨皮混合採用的是強光模式,計算公式為:color = 2 * color1 * color2。因此,我們設計出這樣一個高通濾波器,其shader如下:
fragment shader:

經過高通濾波器之後,我們得到這樣一個紋理圖像:

可以看到,經過三通道強光混合處理後,痘印、邊沿等地方都清晰起來了。強光的程度,一般是3的倍數,這里取24倍。

到這一步,其實我們已經得到了需要過濾顏色值,但在這一張圖中,也把邊沿的顏色差值包含進來了。我們接下來需要過濾掉邊沿的顏色差值。這樣在後續的處理中,我們可以保留邊沿的細節不被模糊掉。因此接下來,我們需要將經過高通濾波得到的紋理,再做一次高斯模糊。不過這一次不能11 x11 這么大的高斯運算元,我們選擇一個 5 x 5 大小的高斯運算元。高斯模糊的shader 如下:
vertex shader:

fragment shader:

將高通濾波器得到的紋理,經過高斯模糊處理後,得到這樣一張紋理:

對比高通濾波器處理後的紋理,邊沿細節變得模糊了,而且,需要過濾的顏色差值仍舊保留著。到這一步,我們就得到了做磨皮處理的前置紋理。接下來就是高反差保留磨皮的最後也是最重要的一步。

經過前面的處理,我們得到一張輸入圖片的高斯模糊紋理,以及一張高反差保留的高斯模糊紋理。我們使用這兩張紋理,通過比較藍色通道,計算出需要磨皮的實際強度值,與原圖進行混合處理,然後輸出最終的紋理。shader如下所示:

經過上面的處理之後,我們就得到磨皮處理的結果如下:

可以看到,經過高反差保留磨皮後的結果,磨皮效果還不錯,而且720P磨皮處理時,在高通驍龍625處理器上,經過高反差保留磨皮之後,預覽幀率能夠保持在30FPS左右。我們可以看到,邊沿細節還是不夠明顯,所以,我們可以使用USM銳化增強邊沿細節部分。這篇文章就不講解USM銳化的實現了。

詳細實現過程,可以參考本人的開源相機項目:
CainCamera
CainCamera的FilterLibrary中有經過優化後的實時美顏(磨皮)實現。

閱讀全文

與android實時美顏相關的資料

熱點內容
android兼容測試工具 瀏覽:92
雲伺服器不支持虛擬化怎麼辦 瀏覽:189
加密方式的演變 瀏覽:364
java常用演算法pdf 瀏覽:734
伺服器數據遇到異常什麼原因 瀏覽:450
phpexif信息 瀏覽:542
單片機三位元組浮點數 瀏覽:756
命令與征服泰伯利亞戰爭下載 瀏覽:378
c窗口界面編程 瀏覽:23
hypermill編程能做模板嗎 瀏覽:782
計算機網路最經典的演算法 瀏覽:628
華為思科的配置命令 瀏覽:869
linux設置光碟啟動 瀏覽:361
程序員俱樂部注冊 瀏覽:19
洗潔精雞蛋盤解壓視頻 瀏覽:294
企業內網加密app 瀏覽:51
騰訊雲伺服器怎麼設置本地網路 瀏覽:625
日常程序員 瀏覽:515
哪個pe有bit加密功能 瀏覽:111
rust伺服器是用什麼ip 瀏覽:694