1. 程式人生 > >風吹夏天的專欄

風吹夏天的專欄

我個人一向對磨皮類演算法不抱有興趣,初衷還是美化自然場景,所以看官若是對人像美化感興趣的,可以看人在旅途的部落格
先前對磨皮印象不過是用一種保邊濾波器平滑處理一下,但見旅途這段時間做的工作都是磨皮,索性看一下。方法也很簡單,就一個公式,我用matlab測試了一下,確實很有效果。

Dest=(Src(100Opacity)+(Src+2GuassBlur(EPFFilter(Src)Src+128)256)Opacity)/100
這裡EPFFilter是一個保邊濾波器,雙邊濾波,導向濾波,域變換濾波器都可以。
至於為什麼可以會有這樣的效果。旅途說,也無需明白背後有什麼道理。嗯,我挺贊同的。
就是一個公式,直接編碼就可以了。
I
= double(imread('1.jpg')); H = RF(I,30,100) - I + 128; G = imfilter(H,fspecial('gaussian',[3 3],100)); opacity = 50; Dest = (I*(100 - opacity)+(I+2*G-256)*opacity)/100; imshow([uint8(I) uint8(Dest)]);

這裡,我用的是遞迴域變換濾波器RF。加上前面的讀取影象還有最後的顯示影象才只有6行程式碼。對了,最好設定一個程式介面,因為需要調節相關引數才能達到最好效果的。

效果(依次為輸入,磨皮,磨皮美白)

更多閱讀

Licenses

作者 日期 聯絡方式
風吹夏天 2015年8月14日 wincoder#qq.com