【问题标题】:Apply resize on multiple images at one time in openCV python在openCV python中一次对多个图像应用调整大小
【发布时间】:2021-04-13 21:32:47
【问题描述】:

我已经使用 glob 和 imread 读取了一个包含图片的文件夹。现在我想在 cv2.resize 中使用 for 循环调整所有这些图片的大小。

以下是我的代码,但输出不正确--

import cv2
import glob



path = glob.glob("C:/Users/RX-91-9/Desktop/prescriptions/*.jpg")
for file in (path):
img=cv2.imread(file)
cv2.imshow("Image", img)
cv2.cv2.waitKey(3)
cv2.destroyAllWindows()

for i in img:
resized_image = cv2.resize(i, (1600,1600)) 
cv2.imshow('resized_image', resized_image)
cv2.waitKey(3)
cv2.destroyAllWindows()

我不知道为什么最后一个 for 循环没有给出预期的输出,我希望调整“img”中的所有图像的大小。如果您发现我的 for last for 循环有什么问题,请提供帮助。

【问题讨论】:

  • 你得到了什么输出?您能否详细说明不正确
  • 我在输出中得到了无限的空白图像。

标签: python python-3.x python-2.7 opencv image-processing


【解决方案1】:

我假设您在某个文件夹中有一个图像列表,并且您可以调整所有图像的大小。你可以运行

import cv2
import glob

for filename in glob.glob('images/*.jpg'): # path to your images folder
    print(filename)
    img=cv2.imread(filename) 
    rl=cv2.resize(img, (500,500))
    cv2.imwrite(f'{filename}resized.jpg', rl)

【讨论】:

  • 如果我想在这些图像中进一步应用灰度、阈值和膨胀怎么办,因为我想使用 tesseract 从它们中提取文本。
  • 谷歌一下。你会找到很多解决方案
  • 如果我在那个文件夹中也有一些 png 图像,我可以同时添加那些 jpg 吗?
猜你喜欢
  • 2018-11-20
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-12-26
  • 2014-07-21
  • 2023-04-04
  • 2012-04-11
  • 1970-01-01
相关资源
最近更新 更多