python 变成float32_【Python】手把手教你用Python做一个图像融合demo,小白可上手!...

665f6a104b70b0436af81829451fee9c.png

创作背景

说到融合,一下子会让我们这些95后想起来童年的动漫游戏王了!

发动魔法卡——融合!

a0442a7c57315763a7fe0ad43d635a25.png

哈哈,今天说得当然不是游戏王里的魔法了,但是我们使用的是Python魔法,今天我们将使用Python编程语言,以及自带的图像处理工具包进行图像融合操作,来实现图像融合的酷炫效果!

前几天在网上看了一个demo,使用OpenCV(开源计算机视觉库)进行图像的融合操作,那么何谓图像的融合呢?

所谓图像的融合指的是指两幅图像变成,“你中有我,我中有你”(最近在看搜神传电视剧,哎,时间过得真的快!童年的回忆啊!)

融合效果

说回正题,将两幅图像进行融合操作,从微观上来说是将两幅图片的像素点用一定的比例进行叠加,得到新的的像素矩阵,那么到底这到底是个什么效果呢?

我们直接上来看,最终的效果展示!

第一组:

待融合图片

1ef0ee561ba642d076867b021534e603.pnge81a58f864b742f12a8ba143fc1fc78a.png

d0ee81a3398bf10b6d704a09eba398d4.png

融合结果

68417ec97e84811f65e091ac110bf67e.png

422201e9eb197e001cedcc6d8c7c945a.png

第二组:

待融合图片

fc9b08b53029422ded8a8396d22ebee5.png3dbaa374ddb921787982cee2cb082ef9.png

d0ee81a3398bf10b6d704a09eba398d4.png

融合结果

68417ec97e84811f65e091ac110bf67e.png

be1b520d0d283143eeb72509f689c1ff.png

第三组:

待融合图片

bd1b1e4ab3bf04910bb627984f54c775.png7779acc3964de9d857a3e779b19ce9dd.png

d0ee81a3398bf10b6d704a09eba398d4.png

融合结果

68417ec97e84811f65e091ac110bf67e.png

07f116973b6836af0d9345b31906075b.png

怎么样看完了上面的几组图片,是不是觉得图像融合的操作很酷炫呢,让我们一起来看看具体的实现方法。

算法流程

我们知道图像是一组矩阵数据,每一个矩阵对应着图像的像素值,彩色图像包括三个通道,R,G,B,分别对应着红,绿,蓝的三原色。那么我们进行图像的融合的底层原理就是进行图像的像素点的叠加融合,将二者采用一定量的比例进行融合操作,得到最终的融合版本图像,进行显示即可。

8287f94479e92acfb16842ad71670e25.png

代码实现

首先导入所使用的Python工具包,使用的是numpy的数据科学工具包,以及OpenCV的图像处理包。

import cv2import numpy as np

将图像信息转换为矩阵信息进行储存

img = cv2.imread("./pic1.jpeg").astype(np.float32)
H, W, C = img.shape
img2 = cv2.imread('./pic2.jpg').astype(np.float32)
img = cv2.resize(img, (499, 375));

其中的读入图片可以修改为自己的图片,进行DIY的调整,但是需要将两幅图片的大小进行统一化的处理,否则无法进行融合。

设置图像的融合权重,可以采用以其中一副图片为主,另一张图片为辅助,调节融合权重的数值,更改融合的效果。

a = 0.5

进行像素值的实际相加与融合计算操作,计算最终融合图像的像素值。

out = img * a + img2 * (1 - a)out = out.astype(np.uint8)

最后将融合的图像进行显示即可

cv2.imwrite("result.jpg", out)cv2.imshow("result", out)cv2.waitKey(0)cv2.destroyAllWindows()

怎么样,是不是感觉很容易做呢?那就赶紧自己动手试试吧,不仅可以尝试两张图片的融合,还可以进行三张图片的融合!

完整代码,在留言区的网盘链接,下载后,导入Pycharm即可使用,更多详细技术细节可以加我微信,与我进行交流哦~

我们下期见~

参考链接:https://www.cnblogs.com/wojianxin/p/12551921.html

fc370fe67d2eb1802c07037af04e9d41.png

往期精彩回顾

适合初学者入门人工智能的路线及资料下载

机器学习及深度学习笔记等资料打印

机器学习在线手册

深度学习笔记专辑

《统计学习方法》的代码复现专辑

AI基础下载

机器学习的数学基础专辑

获取本站知识星球优惠券,复制链接直接打开:

https://t.zsxq.com/qFiUFMV

本站qq群704220115。

加入微信群请扫码:

1858a0b6211564fba5d68b37fd47de12.png


本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!

相关文章

立即
投稿

微信公众账号

微信扫一扫加关注

返回
顶部