当前位置: 代码网 > it编程>前端脚本>Python > OpenCV实现将两幅图像拼在一起(Python)

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

2026年05月08日 Python 我要评论
一、使用函数的介绍主要使用numpy库数组拼接np.concatenate使用示例如下:>>> a = np.array(([1,2,3],[4,5,6]))>>>

一、使用函数的介绍

主要使用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删掉就好

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持代码网。

(0)

相关文章:

版权声明:本文内容由互联网用户贡献,该文观点仅代表作者本人。本站仅提供信息存储服务,不拥有所有权,不承担相关法律责任。 如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 2386932994@qq.com 举报,一经查实将立刻删除。

发表评论

验证码:
Copyright © 2017-2026  代码网 保留所有权利. 粤ICP备2024248653号
站长QQ:2386932994 | 联系邮箱:2386932994@qq.com