python读取heic/heif后缀的图像

一、相关背景

一个项目,需要用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


三、结论

  1. 我也是第一次知道这个图像格式,因为常年安卓,接触不到这个格式的图像。并且这个格式的图像在大部分软件上发出来以后都会被自动转码。
  2. OpenCV居然不支持这是最搞笑的,这也算不上小众格式,OpenCV居然不支持

你可能感兴趣的:(opencv,python,opencv,计算机视觉)