最近在研究Opencv,也遇到很多博客上都有过一个同样的问题:如何像matplotlib里一样在一张画布上显示多个图片。
很多博主给出了自己的精妙的方法,我在这里也斗胆尝试实现一下,方便和大家交流讨论。
代码先放在下面:利用了np里的vstack、hstack来将图形作为矩阵进行拼接,写得比较简单欢迎大家指教。
import cv2 as cv
import numpy as np
import os
def addimg(imgs,size,layout):
#imgs为需要展示的图片数组
#size为展示时每张图片resize的大小
#layout为展示图片的布局例如(3,3)代表3行3列)
w = layout[0]
h = layout[1]
x=imgs[0].shape[2]
if w*h-len(imgs)>0:
null_img=np.zeros((size[0],size[1],x),