将 HEIC 格式图像文件转换成 JPEG,BMP 格式

Posted 卓晴

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了将 HEIC 格式图像文件转换成 JPEG,BMP 格式相关的知识,希望对你有一定的参考价值。

简 介: 本文给出了将 HEIC 格式的文件转换成 BMP,JPEG 的方法。 HEIC 格式的文件,在相同的图像质量下文件大小只有普通JPEG格式的一半,所以现在被广泛应用在便携式拍照设备中存储拍摄的文件。这样可以在相同的存储介质下扩大存储图片的容量。

关键词 HEICJPEGBMP

HEIC格式图片 目 录
Contents
背景介绍 Python转换图片 批量转换 总 结

 

01 HEIC格式图片


一、背景介绍

  近期收到 ZF 发送过来的智能车竞赛现场文件,其中包括有后缀为 HEIC 格式的图片。所以需要将其转换成可以进一步编辑的 JPEG,BMP 文件。HEIC 后缀的图片软件在相同的图片质量下,文件的大小只有普通 JPEG 文件的一半左右,所以被广泛应用在便携式拍照设备中用于图片的存储。

▲ 图1.1 不同格式后缀的图片文件

二、Python转换图片

  在 How to Convert From HEIC to JPG in Python on WIndows 给出了应用 pillow_heif 模块进行转换的例子。

1、安装 pillow_heif

  在应用之前,首先使用 pip 安装 pillow_heif python 模块。

python - m pip install pillow_heif

  经过测试这个过程需要按照好几次,才能够正确吧 pillow_heif 安装在计算机中。

  提示: 在安装的时候,需要将 QuickQ 关闭连接才行。

2、转换 HEIC 图片

(1)转换软件

#!/usr/local/bin/python
# -*- coding: gbk -*-
#============================================================
# TEST1.PY                     -- by Dr. ZhuoQing 2022-09-20
#
# Note:
#============================================================

from headm import *
import PIL
import pillow_heif

fname = r'D:\\Temp\\heic\\IMG_2268.HEIC'

heif_file = pillow_heif.read_heif(fname)
image = Image.frombytes(
    heif_file.mode,
    heif_file.size,
    heif_file.data,
    'raw')

image.save(r'd:\\temp\\1.bmp', format("bmp"))

printf("\\a")

#------------------------------------------------------------
#        END OF FILE : TEST1.PY
#============================================================

(2)转换结果

  下面图片是利用上述软件转换后的结果图片:

▲ 图1.2.1 转换的结果文件

  利用 Python 进行转换,转速速度大约为 1 秒钟一副图片。

三、批量转换

1、转换代码

  下面程序是将目录中的所有 HEIC 格式的文件名转换成 BMP 格式的文件。

#!/usr/local/bin/python
# -*- coding: gbk -*-
#============================================================
# TEST1.PY                     -- by Dr. ZhuoQing 2022-09-20
#
# Note:
#============================================================

from headm import *
import PIL
import pillow_heif

indir = r'd:\\temp\\heic'
outdir = r'd:\\temp'

infile = os.listdir(indir)

for f in infile:
    if f.find('HEIC') < 0: continue
    fname = os.path.join(indir, f)

    heif_file = pillow_heif.read_heif(fname)
    image = Image.frombytes(
        heif_file.mode,
        heif_file.size,
        heif_file.data,
        'raw')

    outname = os.path.join(outdir, f.split('.')[0] + '.BMP')
    image.save(outname, format("bmp"))
    printf(f)

printf('\\a')

#------------------------------------------------------------
#        END OF FILE : TEST1.PY
#============================================================

2、转换结果

▲ 图1.3.1 转换后的结果

 

  结 ※


  文给出了将 HEIC 格式的文件转换成 BMP,JPEG 的方法。 HEIC 格式的文件,在相同的图像质量下文件大小只有普通JPEG格式的一半,所以现在被广泛应用在便携式拍照设备中存储拍摄的文件。这样可以在相同的存储介质下扩大存储图片的容量。


■ 相关文献链接:

● 相关图表链接:

以上是关于将 HEIC 格式图像文件转换成 JPEG,BMP 格式的主要内容,如果未能解决你的问题,请参考以下文章

HEIC文件怎么打开,一键批量将HEIC图片转换JPG/PNG/BMP

Heic图片转换精灵无损转换JPG/PNG/BMP方法

heic格式转jpeg/png软件——HEIC Converter for Mac

使用iMazing软件将HEIC格式的图片转换为常见格式,例如JPEG,PNG

电脑可以打开heic格式的文件吗,怎么转换heic

如何使用heic图片转换精灵,将heic转成JPG