一个项目,需要用Python读取.heic和.heif的图像。但是目前opencv不支持。震惊,opencv作为最专业知名的开源图像处理工具,居然不支持这种在ios和mac上广泛存在的图像格式。
有关这个编解码算法的可以自己查一下,大体上是诺基亚的专利,压缩效果好于jpeg (50%),被苹果付费使用了(还是买断了不知道)。
https://stackoverflow.com/questions/54395735/how-to-work-with-heic-image-file-types-in-python
解决方案有好几个,但是这里面直说其中最简单的一个
借助pillow的一个插件包,pillow-heif
'''
需要安装pip3 install pillow-heif
'''
from PIL import Image
from pillow_heif import register_heif_opener
register_heif_opener()
image = Image.open('image.heic') # RGB, not BGR