我目前使用gpu-image port for android來創建照片編輯應用程序並希望應用平滑皮膚過濾器。基於GLES 2.0着色器的平滑皮膚過濾器
經過一番谷歌我發現雙邊模糊和中值過濾器是一些過濾器來實現這種效果。
但是,當試圖應用gpu-image中的雙邊模糊效果不是很令人滿意,因爲它可以平滑眉毛和嘴脣等其他部分。
任何人都可以建議我另一個好的過濾器或者可能的方式來結合幾個過濾器來實現平滑的皮膚效果?我真的想要複製這個:like in the right-most image
我目前使用gpu-image port for android來創建照片編輯應用程序並希望應用平滑皮膚過濾器。基於GLES 2.0着色器的平滑皮膚過濾器
經過一番谷歌我發現雙邊模糊和中值過濾器是一些過濾器來實現這種效果。
但是,當試圖應用gpu-image中的雙邊模糊效果不是很令人滿意,因爲它可以平滑眉毛和嘴脣等其他部分。
任何人都可以建議我另一個好的過濾器或者可能的方式來結合幾個過濾器來實現平滑的皮膚效果?我真的想要複製這個:like in the right-most image
我管理爲Android創建HighPassScalFilter,它也在Github上。
實現像:
理論
背後高通皮膚光滑的主要理論是頻率分離。
頻率分離將圖像的色調和顏色從其更詳細的紋理中分離出來。這是可能的,因爲數字圖像可以被解釋爲表示爲正弦波的不同頻率。
圖像中的高頻率將包含細節信息,如皮膚毛孔,頭髮,細紋,皮膚瑕疵。
低頻是包含有關音量,色調和顏色轉換信息的圖像數據。換句話說:陰影和淺色區域,顏色和色調。
https://fstoppers.com/post-production/ultimate-guide-frequency-separation-technique-8699 通過使用高通濾波器,圖像可以分爲高空間頻率和低空間頻率。然後,我們將能夠通過對圖像的某些頻率應用調整(圖中的曲線調整)來預置精細的細節水平來平滑圖像。 乾杯。
雖然這可能在理論上回答這個問題,[這將是更可取的](/ meta.stackoverflow.com/q/8259)在這裏包括答案的基本部分,並提供鏈接供參考。 –
我非常感謝你在創建它的過程中的努力,並且它的工作效果非常好,但是我在GPUImage框架中找到了一個GLSL的實時解決方案,因爲這個圖像是由GLES而不是位圖來渲染的。一個與你的理論方式,+1的方式 – ttson153
讓我知道一樣,每當它完成, 順便說一句,有一個庫的iOS使用GPUImage相同。 這是鏈接。 https://github.com/YuAo/YUGPUImageHighPassSkinSmoothing – AmniX
沒有人幫助我.....? :( – ttson153
你有什麼成功? – AmniX
@AmniX沒有這麼多,我發現[這個github項目](https://github.com/wuhaoyu1990/MagicCamera),它有美化fs,但它不是我所期望的。你有什麼想法? – ttson153