heic转jpg的python环境搭建:阿里云ubuntu16.04 安装pyheif

该博客详细记录了在Ubuntu16.04上安装Python3.7的过程,包括配置依赖、解压安装、创建软链接等步骤,并解决了安装pyheif模块时遇到的问题。最后成功将heic图片转换为jpg。

ubuntu16.04 自带python版本为python2.7 和 python3.5.   但pyheif要求版本为python3.6+, 原话为:Python 3.6+ interface to libheif library using CFFI。 所以需要安装python3.6及以上版本。步骤如下:

配置依赖环境,如果不进行这步可能会出现一些问题

sudo apt-get install zlib1g-dev libbz2-dev libssl-dev libncurses5-dev libsqlite3-dev libreadline-dev tk-dev libgdbm-dev libdb-dev libpcap-dev xz-utils libexpat1-dev liblzma-dev libffi-dev libc6-dev

解压下载的包,在这之前你可以先mv你的包到指定位置解压

tar zxvf Python-3.7.11 (我下的是3.7.11, python官网 :python.org, 找你需要的版本就行)

建立安装的目录

sudo mkdir -p /usr/local/python3

编译安装

# ./configure --prefix=/usr/local/python3  --enable-optimizations
# make
# sudo make install

删除软链接

rm -rf /usr/bin/python3
rm -rf /usr/bin/pip3

建立新的指向python3.7的软链接


ln -s /usr/local/python3/bin/python3.7 /usr/bin/python3
ln -s /usr/local/python3/bin/pip3.7 /usr/bin/pip3

至此, python3.7就安装完成了,现在开始安装pyheif

pip3 install pyheif

这时报错了:subprocess.CalledProcessError: Command ‘(‘lsb_release‘, ‘-a‘)‘ returned non-zero exit status 1

解决办法:cp  /usr/lib/python3/dist-packages/lsb_release.py /usr/local/python3/lib/python3.7/

重新安装: pip3 install pyheif    成功

安装pillow : pip3 install Pillow

测试:

        

from PIL import Image
import pyheif

heif_file = pyheif.read("moto-cover.heic")
image = Image.frombytes(
    heif_file.mode,
    heif_file.size,
    heif_file.data,
    "raw",
    heif_file.mode,
    heif_file.stride,
    )

image.save("moto-cover.jpg", "JPEG")

运行:成功将heic格式图片转换成了jpg。

结束!!!
 

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

呃顺哇

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值