濮阳杆衣贸易有限公司

主頁 > 知識(shí)庫 > OpenCV-Python實(shí)現(xiàn)人臉磨皮算法

OpenCV-Python實(shí)現(xiàn)人臉磨皮算法

熱門標(biāo)簽:孝感營銷電話機(jī)器人效果怎么樣 南陽打電話機(jī)器人 打電話機(jī)器人營銷 海外網(wǎng)吧地圖標(biāo)注注冊(cè) 商家地圖標(biāo)注海報(bào) 聊城語音外呼系統(tǒng) 騰訊地圖標(biāo)注沒法顯示 地圖標(biāo)注自己和別人標(biāo)注區(qū)別 ai電銷機(jī)器人的優(yōu)勢(shì)

人臉磨皮是最基礎(chǔ)的人臉美顏效果。主要分為祛斑,祛痘,淡化黑眼圈等步驟。通過前面的學(xué)習(xí)相信大家一眼都看得出來我們需要干什么才能識(shí)別人臉磨皮效果。

因?yàn)槟テぶ?,臉部的雜質(zhì)基本上就沒有了,也可以說丟失了細(xì)節(jié)。那么肯定需要用到濾波函數(shù)。濾波的過程就是把圖像的每一個(gè)像素值輸入過濾器,得到平滑的圖像。

而我們常用的濾波有均值濾波,高斯濾波以及雙邊濾波三種,到底選用那種濾波呢?

首先,均值濾波會(huì)因?yàn)槭怯弥車袼氐钠骄荡嬖袼刂?,肯定?huì)導(dǎo)致圖像過于模糊,所以排除掉。其次,高斯濾波與均值濾波原理類似,只是高斯濾波器的模板系數(shù)會(huì)隨著距離模板中心的增大而減小,雖然可以減弱圖像的模糊程度,但是圖像邊緣信息會(huì)丟失。

那么,只剩一個(gè)濾波了,也就是雙邊濾波器。因?yàn)樗瑫r(shí)綜合了高通濾波器和a-截尾均值過濾器的疊加效果,即可以保證圖像不是非常模糊,也可以保留圖像邊緣信息。

而人臉磨皮原理的步驟分為如下3個(gè)步驟:

  • 圖像濾波
  • 圖像融合
  • 圖像銳化

因?yàn)?,不管上?種濾波如何,都會(huì)導(dǎo)致一定的模糊(只是相對(duì)來說誰更優(yōu)而已),所以需要對(duì)圖像進(jìn)行融合與銳化的操作。這樣,可以保留一些圖像的細(xì)節(jié),以增強(qiáng)圖像的真實(shí)感。

其中,圖像融合使用的函數(shù)就是cv2.addWeighted()圖像加權(quán)函數(shù)。融合的是原圖與雙通濾波后的圖像。

最后,圖像銳化使用的PIL庫進(jìn)行操作,使用它的ImageEnhance.Sharpness()函數(shù)自動(dòng)調(diào)節(jié)圖像的銳度與對(duì)比度。

實(shí)現(xiàn)人臉磨皮效果

既然我們已經(jīng)完全掌握了人臉磨皮的原理。下面,我們來直接實(shí)現(xiàn)人臉的磨皮效果,具體的代碼如下所示:

# 人臉磨皮
def facial_dermabrasion_effect(fileName):
    img = cv2.imread(fileName)
    blur_img = cv2.bilateralFilter(img, 31, 75, 75)
    #圖像融合
    result_img = cv2.addWeighted(img, 0.3, blur_img, 0.7, 0)
    cv2.imwrite("58_1.jpg", result_img)

    image = Image.open("58_1.jpg")
    # 銳度調(diào)節(jié)
    enh_img = ImageEnhance.Sharpness(image)
    image_sharped = enh_img.enhance(1.5)
    # 對(duì)比度調(diào)節(jié)
    con_img = ImageEnhance.Contrast(image_sharped)
    image_con = con_img.enhance(1.15)
    image_con.save("58_2.jpg")

    img1 = cv2.imread("58.jpg")
    img2 = cv2.imread("58_2.jpg")
    cv2.imshow("1", img1)
    cv2.imshow("2", img2)
    cv2.waitKey()
    cv2.destroyAllWindows()


if __name__ == "__main__":
    facial_dermabrasion_effect("58.jpg")

運(yùn)行之后,效果如下:

這段代碼的參數(shù)都是可以調(diào)整的,并不是一層不變的,感興趣的讀者可以自己調(diào)節(jié)參數(shù)試試效果,當(dāng)然人臉磨皮只是看起來皮膚光滑了。下面結(jié)合美白的效果,就可以實(shí)現(xiàn)相機(jī)的那種美顏。

到此這篇關(guān)于OpenCV-Python實(shí)現(xiàn)人臉磨皮算法的文章就介紹到這了,更多相關(guān)OpenCV 人臉磨皮內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

您可能感興趣的文章:
  • 超詳細(xì)注釋之OpenCV實(shí)現(xiàn)視頻實(shí)時(shí)人臉模糊和人臉馬賽克
  • 超詳細(xì)注釋之OpenCV dlib實(shí)現(xiàn)人臉采集
  • 手把手教你利用opencv實(shí)現(xiàn)人臉識(shí)別功能(附源碼+文檔)
  • opencv基于Haar人臉檢測(cè)和眼睛檢測(cè)
  • 基于Opencv制作的美顏相機(jī)帶你領(lǐng)略美顏特效的效果

標(biāo)簽:楊凌 揚(yáng)州 六盤水 牡丹江 撫州 迪慶 南寧 聊城

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《OpenCV-Python實(shí)現(xiàn)人臉磨皮算法》,本文關(guān)鍵詞  OpenCV-Python,實(shí)現(xiàn),人臉,磨皮,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請(qǐng)?zhí)峁┫嚓P(guān)信息告之我們,我們將及時(shí)溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《OpenCV-Python實(shí)現(xiàn)人臉磨皮算法》相關(guān)的同類信息!
  • 本頁收集關(guān)于OpenCV-Python實(shí)現(xiàn)人臉磨皮算法的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章
    恩施市| 双辽市| 彰化县| 钟祥市| 铅山县| 白河县| 巴中市| 台州市| 光山县| 恭城| 嘉禾县| 喀什市| 乳山市| 凤城市| 房山区| 隆子县| 清丰县| 沧州市| 江口县| 本溪市| 金昌市| 泉州市| 南江县| 台湾省| 珠海市| 安泽县| 关岭| 依安县| 伊春市| 旌德县| 读书| 辽阳市| 隆林| 石门县| 海宁市| 桦川县| 德江县| 武安市| 海门市| 呼伦贝尔市| 无棣县|