【问题标题】:How to tell what the size of an image is after removing seams in using OpenCV2 in Python?在 Python 中使用 OpenCV2 去除接缝后如何判断图像的大小?
【发布时间】:2021-02-10 08:06:33
【问题描述】:

我正在尝试编写一些代码来操作单个图像,“帧”,来自使用 OpenCV2 的 Python 网络摄像头的实时视频。我能够操纵帧,但我在边缘有多余的图像。

框架:

我希望“黑色区域”不在框架中,所以我想知道如何操纵画布的大小以使黑色区域不可见。

我希望框架是什么样子的:

有谁知道我可以使用什么代码来裁剪画布大小?

【问题讨论】:

  • 边框的尺寸是否恒定?
  • @eldesgraciado,是的。在我的代码(此处未显示)中,图像尺寸为 640 x 360 像素。不多,但足以让我的网络摄像头和计算机在不低于 30 fps 的情况下处理。
  • 您可以使用 Python 对 ImageMagick -trim 函数的子处理调用来删除任何接触图像两侧的黑色。见imagemagick.org/discourse-server/viewtopic.php?f=4&t=35579

标签: python opencv canvas image-scaling opencv-python


【解决方案1】:

您可以使用 Python 对 ImageMagick 命令行 -trim 函数的子处理调用来移除任何接触图像两侧的黑色。

https://imagemagick.org/discourse-server/viewtopic.php?f=4&t=35579

输入:

import subprocess
cmd = 'convert seams1.png -fuzz 0% -background black -define trim:percent-background=0% -trim +repage result.png'
subprocess.check_output(cmd, shell=True, universal_newlines=True)

import subprocess
cmd = 'convert seams1.png -fuzz 0% -background black -define trim:percent-background=0% -trim +repage result.png'
subprocess.call(cmd, shell=True)

【讨论】:

  • 2 件事,1 我宁愿只使用 OpenCV2 和 Numpy 来解决这个问题。 2、我正在使用Geany编写代码,所以我不使用命令提示符来编写或运行代码。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2014-12-22
  • 2018-03-10
  • 1970-01-01
  • 1970-01-01
  • 2013-10-06
  • 1970-01-01
相关资源
最近更新 更多