使用OpenCV进行图片风格化

OpenCV现在可以直接读取训练好的风格化的深度学习模型,模型下载地址如下:

https://github.com/jcjohnson/fast-neural-style/blob/master/models/download_style_transfer_models.sh

话不多说,直接先上代码:

这里我是使用的其中一个模型

import cv2 as cv
import numpy as np


net = cv.dnn.readNetFromTorch('feathers.t7')
print(net)
frame=cv.imread('5656.jpg')
inWidth, inHeight=frame.shape[1],frame.shape[0]

inp = cv.dnn.blobFromImage(frame, 1.0, (inWidth, inHeight),
                              (103.939, 116.779, 123.68), swapRB=False, crop=False)

net.setInput(inp)
out = net.forward()
print(out)
print(out.shape)
out = out.reshape(3, out.shape[2], out.shape[3])
out[0] += 103.939
out[1] += 116.779
out[2] += 123.68

out = out.transpose(1, 2, 0)
print(out)
cv.imwrite('out.jpg',out)

看一下运行的效果:

原图:

风格化后的结果:

推理速度也很快,没有使用gpu也很快 

刚才是试的feathers,现试一下candy这个模型:

还是挺漂亮的 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值