【问题标题】:Show multiple images in same window with Python OpenCV?使用 Python OpenCV 在同一窗口中显示多个图像?
【发布时间】:2013-02-19 17:12:15
【问题描述】:

我想在左侧显示原始图像,在右侧显示灰度图像。下面是我的代码,我创建灰度图像并创建窗口,但我无法将灰度图像放在右侧。我怎样才能做到这一点?

import cv
import time
from PIL import Image
import sys

filePath = raw_input("file path: ")
filename = filePath

img = cv.LoadImage(filename)
imgGrayScale = cv.LoadImage(filename, cv.CV_LOAD_IMAGE_GRAYSCALE) # create grayscale image

imgW = img.width
imgH = img.height

cv.NamedWindow("title", cv.CV_WINDOW_AUTOSIZE)
cv.ShowImage("title", img )
cv.ResizeWindow("title", imgW * 2, imgH)

cv.WaitKey()

【问题讨论】:

标签: opencv python-2.7


【解决方案1】:

首先水平(跨列)或垂直(跨行)连接图像,然后将其显示为单个图像。

import numpy as np
import cv2
from skimage.data import astronaut
import scipy.misc as misc
img=cv2.cvtColor(astronaut(),cv2.COLOR_BGR2RGB)
numpy_horizontal_concat = np.concatenate((img, img), axis=1)
cv2.imshow('Numpy Horizontal Concat', numpy_horizontal_concat)

【讨论】:

  • 这非常有用且简单,谢谢!
【解决方案2】:

据我所知,一个窗口,一个图像。所以用imgW*2创建一个新图像,并在从(originalimage.width,0)开始的区域复制灰度图像的内容。 ROI 功能可能对您有所帮助。

【讨论】:

  • 我找到了这个:DisplayManyImagespython 找不到
  • aww,这该死的老了。但与上面的答案基本相同,为两者制作一个有空间的图像,并将每个图像复制到一个 ROI
猜你喜欢
  • 1970-01-01
  • 2011-07-02
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-08-01
  • 1970-01-01
相关资源
最近更新 更多