使用numpy处理图片——图片拼接

大纲

《使用numpy处理图片------图片切割》一文中,我们介绍了如何使用numpy将一张图片切割成4部分。本文我们将反其道而行之,将4张图片拼接成1张图片。

基本的思路就是先用两张图以左右结构拼接成上部,另外两张图也以左右拼接成为下部。然后上下两部再拼接。当然也可以先上下拼接成左部和右部,然后再左右拼接。

左右拼接

左右拼接也就是第二维度拼接。使用的是hstack方法,给它传递的是需要拼接的数组所组成的元组。这样我们就拼接出上下两部。

python 复制代码
import numpy as np
from PIL import Image

correlateImg = Image.open('correlate.png')
correlateData = np.array(correlateImg)

gaussianLaplaceImg = Image.open('gaussianlaplace.png')
gaussianLaplaceData = np.array(gaussianLaplaceImg)

morphoLogicalLaplaceImg = Image.open('morphologicallaplace.png')
morphoLogicalLaplaceData = np.array(morphoLogicalLaplaceImg)

whiteTophatImg = Image.open('whitetophat.png')
whiteTophatData = np.array(whiteTophatImg)

top = np.hstack((correlateData, gaussianLaplaceData))
bottom = np.hstack((morphoLogicalLaplaceData, whiteTophatData))

上下拼接

上下拼接使用的是vstack方法。给它传递的是上下两部数组组成的元组。

python 复制代码
full = np.vstack((top, bottom))

fullImg = Image.fromarray(full)
fullImg.save('full.png')

我们以《使用numpy处理图片------模糊处理》中生成的图片为例,用4个模糊处理的图片拼接出1张图片。

相关推荐
chushiyunen13 小时前
python numpy包的使用
开发语言·python·numpy
MediaTea14 小时前
NumPy 函数手册:线性代数
线性代数·numpy
MediaTea1 天前
NumPy 函数手册:文件读写
numpy
dinl_vin2 天前
Python 数据分析入门系列(一):从NumPy开始
python·数据分析·numpy
MediaTea3 天前
NumPy 函数手册:数组重复与扩展
numpy
sunxunyong5 天前
服务器运行CPU/内存保护
服务器·python·numpy
scx_link5 天前
numpy中有一个方法叫ndarray吗?还是ndarray指的numpy中的数值的类型?
numpy
jerryinwuhan7 天前
python数据挖掘基础
python·数据挖掘·numpy
SugarFreeOixi7 天前
MATLAB绘图风格记录NP类型
python·matlab·numpy
小陈工8 天前
FastAPI性能优化实战:从每秒100请求到1000的踩坑记录
python·性能优化·django·flask·numpy·pandas·fastapi