OpenCV单窗口并排显示多张图片

OpenCV单窗口并排显示多张图片

  • 效果
  • 代码

PS:本例的代码适合图片的宽度和高度都相同。

效果

原始三张图片:


合并显示:

代码

python 复制代码
import cv2
import numpy as np


def opencv_multi_img():
    # 读取图片
    img1 = cv2.imread('saw_1.jpeg')
    img2 = cv2.imread('saw_2.jpeg')
    img3 = cv2.imread('saw_3.jpeg')

    # 检查图片是否成功加载
    if img1 is None or img2 is None or img3 is None:
        print("Error: Unable to load one or more images.")
        return

        # 获取图片的高度和宽度
    h1, w1, _ = img1.shape
    h2, w2, _ = img2.shape
    h3, w3, _ = img3.shape

    # 确保所有图片的高度相同
    if h1 != h2 or h1 != h3:
        print("Error: Images must have the same height.")
        return

        # 创建一个空白的大画布
    max_width = w1 + w2 + w3  # 三张图片的总宽度
    canvas = np.zeros((h1, max_width, 3), dtype=np.uint8)

    # 将图片放置到画布上
    canvas[:, :w1] = img1
    canvas[:, w1:w1 + w2] = img2
    canvas[:, w1 + w2:w1 + w2 + w3] = img3

    # 展示多个图片
    cv2.imshow("multi_img", canvas)

    # 等待用户按键关闭窗口
    cv2.waitKey(0)
    cv2.destroyAllWindows()


# 调用函数
opencv_multi_img()
相关推荐
前进的李工3 分钟前
LangChain使用之Model IO(提示词模版之PromptTemplate)
开发语言·人工智能·python·langchain
Storynone17 分钟前
【Day27】LeetCode:56. 合并区间,738. 单调递增的数字
python·算法·leetcode
叶子20242243 分钟前
承认错误才能成长
python
进击ing小白1 小时前
OpenCv之图像的仿射和透视变化
人工智能·opencv·机器学习
代码探秘者2 小时前
【大模型应用】4.分块之六大策略
java·数据结构·后端·python·spring
齐齐大魔王2 小时前
虚拟机网络无法连接
linux·网络·c++·python·ubuntu
ycjunhua2 小时前
Notebooklm for windows本地安装使用
python·webstorm
曲辕RPA2 小时前
GEO技术解析:RPA在生成引擎优化中的角色与应用
python·ai·rpa
2401_894241922 小时前
实战:用OpenCV和Python进行人脸识别
jvm·数据库·python
m0_662577972 小时前
使用Pandas进行数据分析:从数据清洗到可视化
jvm·数据库·python