我正在尝试将自定义的原始磁盘映像文件(我使用扩展名.img)转换为位图格式(.bmp)。我尝试使用PIL,但是PIL不支持.img文件。运行代码时,出现OSError提示'cannot identify image file '1103_100_006_000.img'.
.img文件不是标准格式。
我已经运行了将PNG图像转换为BMP的代码,并且运行良好,但是,当我使用这些自定义的(application / x-raw-disk-image).img文件运行它时,它无法识别它们。
我试图单独打开文件,但出现UnicodeDecodeError: 'utf-8' codec can't decode byte 0xd3 in position 18: invalid continuation byte.
错误。
这是我用来尝试将文件转换为BMP格式的代码:
from PIL import Image
folder = '/home/jeff/Documents/img'
for filepath in glob.iglob(os.path.join(folder, '*.img')):
image = Image.open(filepath,).convert('RGB').convert('L')
new_filepath = os.path.splitext(filepath)[0] + '.bmp'
image.save(filepath)
我希望它可以将'1103_100_006_000.img'
文件转换为'1103_100_006_000.bmp'
格式,但我却得到OSError: cannot identify image file '1103_100_006_000.img'
答案 0 :(得分:0)
这是因为PIL只能使用某个image file formats进行打开/处理,而.img
不是其中之一。因此,当您尝试打开1103_100_006_000.img
时,编译器将抛出OSError
,因为它无法识别所提供文件的格式。