image - python : Concatenate 2 irregular sized images by automatically detecting the sizes

标签 image python-2.7 opencv merge

问题陈述:我有 2 张不同尺寸的图片。 第一张图片 (1320 x 950)第二张图片 (1260 x 744)。我有兴趣将这些图像并排连接,以便它们适合我的屏幕显示器(屏幕分辨率:1920 x 1080)。尝试使用 np.concatenate 但问题是图像需要具有相同的大小。我尝试了以下但无法解决此问题。我该如何解决这个问题?

我尝试了什么:

for i in range(File_start,File_stop,1):
    img1 = cv2.imread('Z:/04_RD/PP/img'+'_'+str(i)+'.jpg')
    img2 = cv2.imread('Z:/04_RD/GRF/GRF'+'_'+str(i)+'.jpg')

    h1, w1 = img1.shape[:2]
    h2, w2 = img2.shape[:2]

    visl = np.zeros((max(h1, h2), w1+w2,3), np.uint8)

    visl[:h1, :w1,:3] = img1
    visl[:h2, w1:w1+w2,:3] = img2

    cv2.imwrite("Final_" + str(i) + ".jpg", visl)

但这只是将图像连接在一起。因此,我无法在屏幕上完整地查看它。

我查看了一个在线工具:https://www.imgonline.com.ua/eng/combine-two-images-into-one.php

这可以自动调整大小并将 2 张图像并排放置。

enter image description here

我想知道如何使用 python 代码实现此目的?

最佳答案

您可以使用

调整图像大小
dstimg = cv2.resize(srcimg,(x_,y_))

其中 x_ 和 y_ 是目标图像的宽度和高度,dstimg 您想要的。

这样,您可以将两张图片的大小调整为屏幕分辨率的一半,然后再将它们连接在一起

关于image - python : Concatenate 2 irregular sized images by automatically detecting the sizes,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47328846/

相关文章:

python - Opencv fillPoly()不适用于灰度(1 channel )图像

python - Python字典中的最后一个键

opencv - 使用 Unity3D 解决 PnP

wpf - 如何将 byte[] 转换为 BitmapImage?

image - 如何更改IKImageBroswerView拖动图像

c# - 如何从资源文件获取图像到 WPF menuitem.icon

python多处理根本不起作用

带有 HTTPS (SSL) 的图像源 URI 有效,HTTP 无效(React Native v0.30.0)

c++ - 用于内存缓冲区或文件指针的 OpenCV

c++ - 如何在 openCV C++ 中读取 .xml 文件