使用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张图片。

相关推荐
广州景颐光电6 天前
3种NumPy向量化实测:光源数据处理从2.3秒压到12.3ms
numpy
梅雅达编程笔记7 天前
零基础学 Python 第14章 | 模块、包与第三方库
开发语言·python·django·numpy·pandas
梅雅达编程笔记7 天前
零基础学 Python 第15章 | 类与对象:面向对象编程入门
开发语言·python·django·numpy·pandas
pulinzt7 天前
Tableau的基础使用
数据库·numpy
梅雅达编程笔记8 天前
编程启蒙|Scratch 转 Python 系列第9天:字典/哈希表积木双向对照(AI大模型参数配置表实战)
开发语言·人工智能·python·numpy·pandas
汤姆小白10 天前
08-应用部署
人工智能·python·机器学习·numpy·transformer
汤姆小白11 天前
02-Tokenizer原理与实现
人工智能·python·机器学习·numpy
汤姆小白12 天前
01-环境搭建与项目导览
人工智能·python·机器学习·numpy
CS创新实验室13 天前
NumPy数组的C风格和Fortran风格
c语言·开发语言·numpy
梅雅达编程笔记13 天前
零基础学 Python 第7章 | 字典 dict:键值对存储
开发语言·python·beautifulsoup·numpy·pandas