亚洲视频二区_亚洲欧洲日本天天堂在线观看_日韩一区二区在线观看_中文字幕不卡一区

公告:魔扣目錄網(wǎng)為廣大站長(zhǎng)提供免費(fèi)收錄網(wǎng)站服務(wù),提交前請(qǐng)做好本站友鏈:【 網(wǎng)站目錄:http://www.430618.com 】, 免友鏈快審服務(wù)(50元/站),

點(diǎn)擊這里在線(xiàn)咨詢(xún)客服
新站提交
  • 網(wǎng)站:51998
  • 待審:31
  • 小程序:12
  • 文章:1030137
  • 會(huì)員:747

任意圖像轉(zhuǎn)素描:Python分分鐘實(shí)現(xiàn)

 

看到這個(gè)標(biāo)題你可能覺(jué)得,我這次終于開(kāi)始標(biāo)題黨了。然而眾所周知,我是標(biāo)圖~,一般不會(huì)做標(biāo)題黨這種事情,既然說(shuō)了分分鐘實(shí)現(xiàn),那就說(shuō)明——代碼在十行左右。

代碼雖少,但是效果確實(shí)一點(diǎn)都不含糊(即使含糊了....我也給出了調(diào)參的空間~)。

按照慣例,先看兩張效果圖:

任意圖像轉(zhuǎn)素描:Python分分鐘實(shí)現(xiàn)

 

還有一張?jiān)谧钌戏健?/p>

我感覺(jué)我肯定是膨脹了,示例圖片都敢不全放美女圖片了。不全用美女示例圖片的另一個(gè)原因是,之前做的AI小素只能做臉部的素描,其他部分的素描做的一塌糊涂(訓(xùn)練集只有臉部圖片),這次換個(gè)天壇這種建筑圖片,也能說(shuō)明這個(gè)CV小素的能力要超過(guò)AI小素,能對(duì)不僅限于人臉人物的任意類(lèi)型的圖片做素描化。說(shuō)任意類(lèi)型可能有點(diǎn)夸大,不上線(xiàn)之前確實(shí)測(cè)試了不少類(lèi)型的圖片,效果都還可以。更多類(lèi)型的圖片效果,期待大家來(lái)測(cè)試,歡迎拍磚~

圖像轉(zhuǎn)素描原理與實(shí)現(xiàn)

做這個(gè)圖像轉(zhuǎn)素描的初衷是因?yàn)橹坝?xùn)練了一個(gè)肖像轉(zhuǎn)素描的AI模型,還非常中二地命名為【AI小素】,不少小伙伴應(yīng)該已經(jīng)在網(wǎng)站上體驗(yàn)過(guò)AI小素的素描化效果了。但是AI小素限制太強(qiáng),只能素描化人臉圖片,其他圖片則無(wú)能為力。因此,我就看了下怎么做任意圖片的素描化。

大家一般用PS做圖像轉(zhuǎn)素描,谷歌搜索結(jié)果排第一的教程流程大概是這樣的:

任意圖像轉(zhuǎn)素描:Python分分鐘實(shí)現(xiàn)

 

這個(gè)教程一共有十六個(gè)步驟,但是其實(shí)上圖展示的這些已經(jīng)足以說(shuō)明圖像轉(zhuǎn)素描的主要流程了。

圖像轉(zhuǎn)素描流程如下:

  1. 圖像去色(上圖教程中通過(guò)調(diào)小飽和度)
  2. 圖像取反
  3. 取反后的圖像進(jìn)行高斯濾波
  4. 去色后的圖像和取反濾波后的圖像以混合模式為顏色減淡進(jìn)行融合

看到這里,了解PS的小伙伴們可能已經(jīng)知道怎么用PS做素描圖了。

下面我們看看如何用Python/ target=_blank class=infotextkey>Python實(shí)現(xiàn),仍然用我們最熟悉的OpenCV。

1. 備圖

首先最基礎(chǔ)的,準(zhǔn)備一張小姐姐的圖片,并讀取出來(lái)備用:

import cv2
img_path = "/小/姐/姐/美/圖.jpg"
img = cv2.imread(img_path)
任意圖像轉(zhuǎn)素描:Python分分鐘實(shí)現(xiàn)

 

2. 去色

說(shuō)到去色,你可能立刻就想到了灰度化,是的,那就用灰度化吧。代碼簡(jiǎn)單到無(wú)需注釋和解釋?zhuān)€是直接上碼上效果圖吧:

gray = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY)
任意圖像轉(zhuǎn)素描:Python分分鐘實(shí)現(xiàn)

 

3. 圖像取反

圖像取反,乍一聽(tīng)好像很陌生,看完下面這一行更簡(jiǎn)單的代碼你就明白了:

inv = 255 - gray

過(guò)于簡(jiǎn)單了?看效果吧。

任意圖像轉(zhuǎn)素描:Python分分鐘實(shí)現(xiàn)

 

狀若女鬼,好像要向著恐怖片的方面發(fā)展......實(shí)際上只是圖片中黑白易色,上圖中的衣服體現(xiàn)的最為直觀。

4. 高斯濾波

最基礎(chǔ)的濾波,不多說(shuō)。

blur = cv2.GaussianBlur(inv, ksize=(ksize, ksize), sigmaX=sigma, sigmaY=sigma)

ksize和sigma兩個(gè)參數(shù)可根據(jù)實(shí)際情況調(diào)節(jié),我這里調(diào)參的覺(jué)得ksize=15, sigma=50效果還可以。你也可以調(diào)節(jié)下這兩個(gè)參數(shù),看看不同參數(shù)對(duì)最終素描化效果的影響。

任意圖像轉(zhuǎn)素描:Python分分鐘實(shí)現(xiàn)

 

狀若加了高斯濾鏡的女鬼......

5. 顏色減淡混合

實(shí)際的混合模式的顏色減淡實(shí)現(xiàn)起來(lái)比較麻煩,而且速度較慢。有人說(shuō)下面這一行代碼就可以實(shí)現(xiàn)顏色減淡的效果,我是極為佩服的:

res = cv2.divide(gray, 255 - blur, scale=255)
任意圖像轉(zhuǎn)素描:Python分分鐘實(shí)現(xiàn)

 

梳理一下

梳理一下上面的流程,相當(dāng)于是,對(duì)于灰度圖像中的每一個(gè)像素值x,用255 - x取反之后得到inv_x,再對(duì)此點(diǎn)進(jìn)行高斯濾波得到blur_inv_x,然后用執(zhí)行一下運(yùn)算進(jìn)行混合:

x / (255 - blur_inv_x) * 255

從上圖可以看到,已經(jīng)得到了效果不錯(cuò)的素描化圖片了。對(duì)于有的圖片可能素描化之后顯得顏色有點(diǎn)淡,沒(méi)關(guān)系,加個(gè)伽馬變換調(diào)節(jié)一下就行了。

問(wèn)題來(lái)了

上面是根據(jù)PS的流程轉(zhuǎn)化的Python實(shí)現(xiàn)流程,感覺(jué)實(shí)際上起作用的就是這個(gè)公式x / (255 - blur_inv_x) * 255。

上面的流程是:

灰度圖->取反->高斯濾波->再取反(除法里面)->除法運(yùn)算(divide)。

我們看到,里面有兩次取反操作,中間只是多了一個(gè)高斯濾波而已。眾所周知,負(fù)負(fù)得正,取反兩次相當(dāng)于沒(méi)有取反(我真是邏輯鬼才?。?/strong>

那么問(wèn)題來(lái)了,不取反行不行?行不行?試一下就知道了!

實(shí)驗(yàn)流程是下面這樣的:

灰度圖->高斯濾波->除法運(yùn)算(divide)。

公式是:x / blur_x * 255。

最終的結(jié)果是下面這樣的:

任意圖像轉(zhuǎn)素描:Python分分鐘實(shí)現(xiàn)

 

與取反的差別在哪里呢?仔細(xì)看的話(huà),取反的背景會(huì)更清晰一些,前景倒沒(méi)有太大差別。

開(kāi)始玩

上面已經(jīng)介紹了素描化的完整實(shí)現(xiàn),接下來(lái)就要開(kāi)始各種玩了。我實(shí)現(xiàn)了幾種基本的玩法,你看看有多基本:

  • 支持動(dòng)態(tài)圖
  • 素全圖
  • 素左邊
  • 素右邊
  • 素上邊
  • 素下邊
任意圖像轉(zhuǎn)素描:Python分分鐘實(shí)現(xiàn)

 


任意圖像轉(zhuǎn)素描:Python分分鐘實(shí)現(xiàn)

 

參數(shù)可調(diào),效果不好的話(huà),可能需要你親自動(dòng)手調(diào)節(jié)一下:

任意圖像轉(zhuǎn)素描:Python分分鐘實(shí)現(xiàn)

 

分享到:
標(biāo)簽:素描 圖像 Python
用戶(hù)無(wú)頭像

網(wǎng)友整理

注冊(cè)時(shí)間:

網(wǎng)站:5 個(gè)   小程序:0 個(gè)  文章:12 篇

  • 51998

    網(wǎng)站

  • 12

    小程序

  • 1030137

    文章

  • 747

    會(huì)員

趕快注冊(cè)賬號(hào),推廣您的網(wǎng)站吧!
最新入駐小程序

數(shù)獨(dú)大挑戰(zhàn)2018-06-03

數(shù)獨(dú)一種數(shù)學(xué)游戲,玩家需要根據(jù)9

答題星2018-06-03

您可以通過(guò)答題星輕松地創(chuàng)建試卷

全階人生考試2018-06-03

各種考試題,題庫(kù),初中,高中,大學(xué)四六

運(yùn)動(dòng)步數(shù)有氧達(dá)人2018-06-03

記錄運(yùn)動(dòng)步數(shù),積累氧氣值。還可偷

每日養(yǎng)生app2018-06-03

每日養(yǎng)生,天天健康

體育訓(xùn)練成績(jī)?cè)u(píng)定2018-06-03

通用課目體育訓(xùn)練成績(jī)?cè)u(píng)定