如何将原始磁盘映像文件(.img)转换为位图(.bmp)格式

时间:2019-06-13 18:04:14

标签: python-3.x ubuntu-14.04 python-imaging-library

我正在尝试将自定义的原始磁盘映像文件(我使用扩展名.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'

1 个答案:

答案 0 :(得分:0)

这是因为PIL只能使用某个image file formats进行打开/处理,而.img不是其中之一。因此,当您尝试打开1103_100_006_000.img时,编译器将抛出OSError,因为它无法识别所提供文件的格式。