我在一个初级的神经网络课程,我真的很挣扎。你知道吗
我有一个图像数据集,它不够大,不足以训练我的网络,所以我试图增强它们(旋转/噪声添加等),并将增强的图像添加到原始集。我正在跟踪Medium上的代码:https://medium.com/@thimblot/data-augmentation-boost-your-image-dataset-with-few-lines-of-python-155c2dc1baec
然而,我遇到了ValueError: Could not find a format to read the specified file in mode 'i'
不知道这个错误意味着什么,也不知道如何去解决它。任何帮助都将不胜感激。你知道吗
import random
from scipy import ndarray
import skimage as sk
from skimage import transform
from skimage import util
path1 = "/Users/.../"
path2 = "/Users/.../"
listing = os.listdir(path1)
num_files_desired = 1000
image = [os.path.join(path2, f) for f in os.listdir(path2) if os.path.isfile(os.path.join(path2, f))]
num_generated_files = 0
while num_generated_files <= num_files_desired:
image_path = random.choice(image)
image_to_transform = sk.io.imread(image_path)
137 if format is None:
138 raise ValueError(
--> 139 "Could not find a format to read the specified file " "in mode %r" % mode
140 )
141
ValueError: Could not find a format to read the specified file in mode 'i'
我看不出什么可能性。在传给他们之前。我想表达一下你的错误。它基本上是一个指示,你的图像不能被
sk.io.imread()
读取。让我来谈谈可能要做的事情:您的
[os.path.join(path2, f) for f in os.listdir(path2) if os.path.isfile(os.path.join(path2, f))]
部分可能无法正确给出图像路径。你必须手动更正它。如果是这样,您可以手动给出确切的文件夹,而无需执行此类循环。只需使用os.listdir()
并手动读取文件。您还可以使用
glob
来读取具有相同扩展名的文件,比如.jpg
之类的文件。您的文件可能已损坏。您可以通过使用
PIL
来消除它们,并首先使用PIL
读取图像,比如image = Image.open()
,然后使用image.verify()
方法。尝试阅读
sk.io.imread(filename, plugin=''
插件部分可能会解决您的问题。希望有帮助。你知道吗
相关问题 更多 >
编程相关推荐