?引言:
在計算機視覺和深度學(xué)習(xí)的世界中,有一項令人著迷的技術(shù)被廣泛應(yīng)用,它能夠?qū)⒁环N獨特的藝術(shù)風(fēng)格嵌入到圖像中,仿佛這幅圖像是由大師親自繪制的一樣。這技術(shù)被稱為圖像遷移,它引領(lǐng)我們進(jìn)入一個充滿無限創(chuàng)意可能性的領(lǐng)域。通過圖像遷移,我們可以將一幅藝術(shù)作品的獨特風(fēng)格融入到任何圖像中,創(chuàng)造出令人嘆為觀止的作品,同時保留原圖中的關(guān)鍵特征。
?話不多說直接上成果展示:
?獲取fast-neural-style訓(xùn)練好的模型:
百度網(wǎng)盤 請輸入提取碼
這里下載starry_night.t7即可,其他模型也可以自行下載測試。文章來源:http://www.zghlxwxcb.cn/news/detail-715001.html
文章來源地址http://www.zghlxwxcb.cn/news/detail-715001.html
完整代碼展示?
import cv2
image0=cv2.imread('./image2.jpg')
image=cv2.resize(image0,(640,500))
cv2.imshow('original',image)
cv2.waitKey(0)
'''圖片預(yù)處理'''
H,W=image.shape[:2] #獲取尺寸
blod=cv2.dnn.blobFromImage(image,1,(H,W),(0,0,0),swapRB=True,crop=False)
net=cv2.dnn.readNet('./starry_night.t7')
# net=cv2.dnn.readNet('./mosaic.t7')
# net=cv2.dnn.readNet('./the_scream.t7')
# net=cv2.dnn.readNet('./the_wave.t7')
# net=cv2.dnn.readNet('./udnie.t7')
# net=cv2.dnn.readNet('feathers.t7')
# net=cv2.dnn.readNet('./candy.t7')
# net=cv2.dnn.readNet('./composition_vii.t7')
# net=cv2.dnn.readNet('./la_muse.t7')
net.setInput(blod)
out=net.forward()
out_new = out.reshape(out.shape[1], out.shape[2],out.shape[3])#將輸出進(jìn)行加一化處理
cv2.normalize(out_new,out_new,norm_type=cv2.NORM_MINMAX)
result = out_new.transpose(1,2,0) #通道轉(zhuǎn)換
cv2.imshow('result',result)
cv2.waitKey(0)
cv2.destroyAllWindows()
到了這里,關(guān)于OpenCV實現(xiàn)圖像風(fēng)格遷移(梵高星空)的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!