【问题标题】:Zooming functionality in OpenCV imshow in WindowsWindows 中 OpenCV imshow 中的缩放功能
【发布时间】:2018-11-05 02:57:40
【问题描述】:

在 Ubuntu 中,OpenCV 的 imshow 函数有一个窗口,其中提供了不同的选项,例如放大、缩小、平移窗口等,如下所示:

但是,在 Windows 中,这些功能不存在。我有一个特殊情况,我需要在 Windows 上部署我的 OpenCV 代码,用户需要放大图像的某些部分。

还有什么方法可以在 Windows 中访问/添加这些功能吗?

【问题讨论】:

  • 使用 Qt 库支持编译 OpenCV
  • @Atul Balaji,我从来没有让 imshow 在我的 Ubuntu 安装中工作。你运行的是哪个版本的 Ubuntu 和 Python?
  • @bfris 我使用的是 Ubuntu 16.04,python 3.6
  • @Micka 你能给我说明或发布一个链接来编译带有 Qt 支持的 OpenCV。

标签: python windows opencv zooming


【解决方案1】:

绕道而行,PIL:

import cv2
from PIL import Image

img = cv2.imread('lena.jpg')
img2 = cv2.cvtColor(img, cv2.COLOR_BGR2RGB)
im_pil = Image.fromarray(img2)
im_pil.show()

【讨论】:

    【解决方案2】:

    https://gist.github.com/BartG95/1ce8ba1e9c25ec3698d1

    似乎是一个较长的过程,因此您可以改为切换到 matplotlib 的 pyplot 函数(使用 Qt)。你需要先应用这个oneliner(详见Extracting a region from an image using slicing in Python, OpenCV):

    import cv2
    import matplotlib.pyplot as plt
    
    image = cv2.imread("~\\imagedir\\image.jpg")
    plt_image = cv2.cvtColor(image, cv2.COLOR_BGR2RGB)
    imgplot = plt.imshow(plt_image)
    

    【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-08-25
    • 1970-01-01
    • 2019-10-15
    • 1970-01-01
    相关资源
    最近更新 更多