Python 中图像增强的图像增强管道中的错误



据我所知,路径是正确的,我也在遵循 Augmentor 文档。

法典:

import Augmentor
import os
import warnings
warnings.filterwarnings('ignore')
import keras
import glob
for img in glob.glob("C:\Users\Diganta\Desktop\Courses and Projects\Projects\Bennet\irregular*.jpg"):
p = Augmentor.Pipeline(img)
p.rotate(probability=0.7, max_left_rotation=10, max_right_rotation=10)
p.zoom(probability=0.5, min_factor=1.1, max_factor=1.5)
p.sample(100)

这确实运行了,但没有按照 Augmentor 文档中的指定在目录中创建包含增强图像的输出文件夹

我遇到了与您相同的问题,但是,我遇到了使用以下代码的问题。

无法告诉您为什么有效,但它确实:)#

自从你问以来已经有一段时间了,我希望你的问题得到解决!

import glob
import Augmentor
for filename in glob.iglob('test',recursive=True):
p = Augmentor.Pipeline(filename)
p.rotate(probability=0.7, max_left_rotation=10, max_right_rotation=10)
p.zoom(probability=0.3, min_factor=0.5, max_factor=1)
p.flip_left_right(probability=0.4)
p.flip_top_bottom(probability=0.8)
p.skew(probability=0.5)
p.shear(probability=0.5, max_shear_left=0.5, max_shear_right=0.5)
p.random_distortion(probability=0.5, magnitude=1, grid_width=1, grid_height=1)
p.sample(6)


我不是 Augmentor 专家,但通过查看源代码,看起来 Pipeline 想要一个源目录作为参数,它会自动找到其中的所有图片。

尝试直接传递目录,不要使用 glob 和循环:

p = Augmentor.Pipeline("C:\Users\Diganta\Desktop\Courses and Projects\Projects\Bennet")
p.rotate(probability=0.7, max_left_rotation=10, max_right_rotation=10)
p.zoom(probability=0.5, min_factor=1.1, max_factor=1.5)
p.sample(100)

在我看来,您还想在所有图像上运行管道,而不是对子集运行管道。如果是这种情况,请将p.sample(100)替换为:

p.sample(0)

或:

p.process()

我在查看源代码时遇到了相同的错误消息。根本原因包括:

A. 错误的路径,更具体地说是格式。如果路径错误,我希望是路径错误,而不是找不到图像。

二.另一个原因是该位置中的许多其他与图像无关的不同文件或文件夹。

三.其他原因可能是云服务器中臭名昭著的延迟时间[等待刷新然后重新运行]

对于我的问题 - 它是 B. 其他文件夹/格式。如果您在该位置有一个文件夹,该文件夹位于"X"输入/未标记的文件夹中。在您的情况下:"Bennet",那么如果在任何图像之前读取它,它可能会标记。没有多大意义,但是将文件夹移出,仅使用图像再次运行它,并且应该可以正常工作。

最新更新