OpenCV将两幅图像拼在一起(Python)

简介: OpenCV将两幅图像拼在一起(Python)

一、使用函数的介绍

主要使用numpy库数组拼接np.concatenate
使用示例如下

>>> a = np.array(([1,2,3],[4,5,6]))
>>> b = np.array(([4,5,6],[7,8,9]))
>>> c = np.array(([7,8,9],[10,11,12]))
>>> np.concatenate((a,b,c), axis = 0)

array([[ 1,  2,  3],
       [ 4,  5,  6],
       [ 4,  5,  6],
       [ 7,  8,  9],
       [ 7,  8,  9],
       [10, 11, 12]])
       
>>> np.concatenate((a,b,c), axis = 1)

array([[ 1,  2,  3,  4,  5,  6,  7,  8,  9],
       [ 4,  5,  6,  7,  8,  9, 10, 11, 12]])

当axis为0时,将几个数组纵向拼接
当axis为1时,将几个数组横向拼接

二、代码实现

这里默认拼接的两张图像等宽或者等高

# 横向拼接
def concat_1(img_1, img_2):
    rows = np.size(img, 0)
    # 乘255是因为想要间隙是白的,白色像素值是255,如果想要黑色间隙
    interval_1 = np.ones((rows, 5)) * 255
    img_o = np.concatenate((img_1, interval_1, img_2), axis=1)
    return img_o

# 纵向拼接
def concat_0(img_1, img_2):
    columns = np.size(img, 1)
    interval_0 = np.ones((5, columns)) * 255 # 纵向拼接间隙
    img_o = np.concatenate((img_1, interval_0, img_2), axis=0)
    return img_o

其中,interval指两张图片之间的间隙。

  • 横向拼接时,应该使interval的高度与图片的高度相同,interval的宽度可以自己设
  • 纵向拼接时,应该使interval的宽度与图片的宽度相同,interval的高度可以自己设

这里拼接的是单通道灰度图,如果想要拼接彩色图改一下interval即可,如果嫌麻烦直接把interval删掉就好

目录
相关文章
|
3月前
|
计算机视觉
Opencv学习笔记(三):图像二值化函数cv2.threshold函数详解
这篇文章详细介绍了OpenCV库中的图像二值化函数`cv2.threshold`,包括二值化的概念、常见的阈值类型、函数的参数说明以及通过代码实例展示了如何应用该函数进行图像二值化处理,并展示了运行结果。
685 0
Opencv学习笔记(三):图像二值化函数cv2.threshold函数详解
|
4月前
|
机器学习/深度学习 算法 TensorFlow
动物识别系统Python+卷积神经网络算法+TensorFlow+人工智能+图像识别+计算机毕业设计项目
动物识别系统。本项目以Python作为主要编程语言,并基于TensorFlow搭建ResNet50卷积神经网络算法模型,通过收集4种常见的动物图像数据集(猫、狗、鸡、马)然后进行模型训练,得到一个识别精度较高的模型文件,然后保存为本地格式的H5格式文件。再基于Django开发Web网页端操作界面,实现用户上传一张动物图片,识别其名称。
126 1
动物识别系统Python+卷积神经网络算法+TensorFlow+人工智能+图像识别+计算机毕业设计项目
|
1月前
|
机器学习/深度学习 人工智能 算法
【宠物识别系统】Python+卷积神经网络算法+深度学习+人工智能+TensorFlow+图像识别
宠物识别系统,本系统使用Python作为主要开发语言,基于TensorFlow搭建卷积神经网络算法,并收集了37种常见的猫狗宠物种类数据集【'阿比西尼亚猫(Abyssinian)', '孟加拉猫(Bengal)', '暹罗猫(Birman)', '孟买猫(Bombay)', '英国短毛猫(British Shorthair)', '埃及猫(Egyptian Mau)', '缅因猫(Maine Coon)', '波斯猫(Persian)', '布偶猫(Ragdoll)', '俄罗斯蓝猫(Russian Blue)', '暹罗猫(Siamese)', '斯芬克斯猫(Sphynx)', '美国斗牛犬
160 29
【宠物识别系统】Python+卷积神经网络算法+深度学习+人工智能+TensorFlow+图像识别
|
2月前
|
机器学习/深度学习 TensorFlow 算法框架/工具
利用Python和TensorFlow构建简单神经网络进行图像分类
利用Python和TensorFlow构建简单神经网络进行图像分类
66 3
|
3月前
|
存储 JSON API
Python| 如何使用 DALL·E 和 OpenAI API 生成图像(1)
Python| 如何使用 DALL·E 和 OpenAI API 生成图像(1)
86 7
Python| 如何使用 DALL·E 和 OpenAI API 生成图像(1)
|
4月前
|
机器学习/深度学习 人工智能 算法
植物病害识别系统Python+卷积神经网络算法+图像识别+人工智能项目+深度学习项目+计算机课设项目+Django网页界面
植物病害识别系统。本系统使用Python作为主要编程语言,通过收集水稻常见的四种叶片病害图片('细菌性叶枯病', '稻瘟病', '褐斑病', '稻瘟条纹病毒病')作为后面模型训练用到的数据集。然后使用TensorFlow搭建卷积神经网络算法模型,并进行多轮迭代训练,最后得到一个识别精度较高的算法模型,然后将其保存为h5格式的本地模型文件。再使用Django搭建Web网页平台操作界面,实现用户上传一张测试图片识别其名称。
154 22
植物病害识别系统Python+卷积神经网络算法+图像识别+人工智能项目+深度学习项目+计算机课设项目+Django网页界面
|
4月前
|
机器学习/深度学习 人工智能 算法
鸟类识别系统Python+卷积神经网络算法+深度学习+人工智能+TensorFlow+ResNet50算法模型+图像识别
鸟类识别系统。本系统采用Python作为主要开发语言,通过使用加利福利亚大学开源的200种鸟类图像作为数据集。使用TensorFlow搭建ResNet50卷积神经网络算法模型,然后进行模型的迭代训练,得到一个识别精度较高的模型,然后在保存为本地的H5格式文件。在使用Django开发Web网页端操作界面,实现用户上传一张鸟类图像,识别其名称。
132 12
鸟类识别系统Python+卷积神经网络算法+深度学习+人工智能+TensorFlow+ResNet50算法模型+图像识别
|
4月前
|
存储 计算机视觉
Opencv的基本操作(一)图像的读取显示存储及几何图形的绘制
本文介绍了使用OpenCV进行图像读取、显示和存储的基本操作,以及如何绘制直线、圆形、矩形和文本等几何图形的方法。
Opencv的基本操作(一)图像的读取显示存储及几何图形的绘制
|
3月前
|
计算机视觉 Python
python利用pyqt5和opencv打开电脑摄像头并进行拍照
本项目使用Python的PyQt5和OpenCV库实现了一个简单的摄像头应用。用户可以通过界面按钮打开或关闭摄像头,并实时预览视频流。点击“拍照”按钮可以捕捉当前画面并保存为图片文件。该应用适用于简单的图像采集和处理任务。
189 0
python利用pyqt5和opencv打开电脑摄像头并进行拍照
|
3月前
|
JSON API 数据格式
Python| 如何使用 DALL·E 和 OpenAI API 生成图像(2)
Python| 如何使用 DALL·E 和 OpenAI API 生成图像(2)
63 0
Python| 如何使用 DALL·E 和 OpenAI API 生成图像(2)