Skip to content Skip to sidebar Skip to footer

Valueerror: Could Not Find A Format To Read The Specified File In Mode 'i'

I am trying to read a png file into a python-flask application running in docker and am getting an error that says ValueError: Could not find a format to read the specified file i

Solution 1:

Different, but in case helpful. I had an identical error in a different library (skimage), and the solution was to add an extra 'plugin' parameter like so -

image = io.imread(filename,plugin='matplotlib')

Solution 2:

Had the exact same problem recently, and the issue was a single corrupt file. Best is to use something like PIL to check for bad files.

import os
from os import listdir
from PIL import Image

dir_path = "/path/"for filename in listdir(dir_path):
    if filename.endswith('.jpg'):
        try:
            img = Image.open(base_dir+"\\"+filename) # open the image file
            img.verify() # verify that it is, in fact an imageexcept (IOError, SyntaxError) as e:
            print('Bad file:', filename)
            #os.remove(base_dir+"\\"+filename) (Maybe)

Solution 3:

Add the option "pilmode":

imageio.imread(filename,pilmode="RGB")

It worked for me.

Solution 4:

Solution 5:

I had this problem today, and found that if I closed the file before reading it into imageio the problem went away.

Error was:

File "/home/vinny/pvenvs/chess/lib/python3.6/site-packages/imageio/core/functions.py", line 139, in get_reader                                                  "Could not find a format to read the specified file ""in mode %r" % mode  ValueError: Could notfind a format to read the specified file in mode 'i'

Answer : Put file.close() before images.append(imageio.imread(filename)), not after.

Post a Comment for "Valueerror: Could Not Find A Format To Read The Specified File In Mode 'i'"