HEIF图像编码标准-python读取HEIF图像
一、相关背景
线上paddle OCR 报错,发现是opencv 读取 heic图像报错,借此了解了一下heif编码格式
二、什么是HEIF
HEIF全称:High Efficiency Image File Format 。它是一种容器格式,用来存放单图或者图像序列。HEIF标准包含了多种媒体格式,比如音频、视频、时间文本。且它可以存放 不同编码方式的图像组成的图像序列。
具体内容看https://en.wikipedia.org/wiki/High_Efficiency_Image_File_Format
简而言之,HEIF是个新式的容器,可以存放各种多媒体数据。
三、HEIF的多种变种后缀
基于HEIF 出现了很多变种格式,比如iphone 拍出来的 .heic图像格式。除此之外还有.avci、.avif等格式
这些不同的后缀名只是为了说明其中的图像or 图像序列使用的编码方式是啥。
- .heic 表明其中使用的编解码器是HEVC相关的编解码器,如果是单幅图就是 HEVC的I-frame 的帧内编码算法,如果是图像序列就是HEVC的视频编码算法。
- .avci 表明其中的编码算法是AVC相关
- .avif 表明其中的编码算法是和AV1相关
四、opencv 为什么不支持HEIF
HEIF format support in OpenCV · Issue #14534 · opencv/opencv (github.com)
- HEIF中包含的可能不是一幅图,所以无法用imread 直接读取。因为imread 目标是读取一幅图
附录、opencv 无法读取heif的解决方案
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_openerregister_heif_opener()image = Image.open('image.heic') # RGB, not BGR
HEIF图像编码标准-python读取HEIF图像相关推荐
- python读取一个图像_从图像处理python的文件中读取多个图像
嗨,我有一个脚本来运行图像处理.但是我想用一个循环或者其他方法从一个文件中读取多个图像 例如C:\Users\student\Desktop\Don\program (opencv version)\ ...
- python读取heic/heif后缀的图像
一.相关背景 一个项目,需要用Python读取.heic和.heif的图像.但是目前opencv不支持.震惊,opencv作为最专业知名的开源图像处理工具,居然不支持这种在ios和mac上广泛存在的图 ...
- python下:用 matplotlib.pyplot 显示 Opencv 读取的图像
在涉及图像处理时,我们通常用opencv去读取并处理图像,而用matplotlib去显示图像,因为opencv有很强的图像处理能力,而matplotlib有很强的可视化能力,可以方便的可视化分析实验的 ...
- python读取多张图片_python读取图片的几种方式及图像宽和高的存储顺序
python读取图片的几种方式及图像宽和高的存储顺序 1.opencv 2.imageio 3.matplotlib 4.scipy # coding:utf-8 import cv2 import ...
- python、PyTorch图像读取与numpy转换
原文:https://blog.csdn.net/yskyskyer123/article/details/80707038 python.PyTorch图像读取与numpy转换 Tensor转为nu ...
- python读取excle表格数据,将数据编辑到图像上工程
这里写目录标题 一级目录:python读取excel表格内容 二级目录:python如何分割字符串 三级目录:python如何在图像的相应位置编辑文字或者字母.数字 一级目录:python读取exce ...
- python读取图像数据流_浅谈TensorFlow中读取图像数据的三种方式
本文面对三种常常遇到的情况,总结三种读取数据的方式,分别用于处理单张图片.大量图片,和TFRecorder读取方式.并且还补充了功能相近的tf函数. 1.处理单张图片 我们训练完模型之后,常常要用图片 ...
- python打开文件夹中的tiff_浅谈python下tiff图像的读取和保存方法
对比测试 scipy.misc和 PIL.Image和 libtiff.TIFF三个库 输入: 1. (读取矩阵) 读入uint8.uint16.float32的lena.tif 2. (生成矩阵) ...
- RAW图像详解及使用Python读取raw格式图像并显示
一.RAW图像详解 1.1 什么是raw格式图像? RAW在英文中的解释是未处理的.自然状态的,这也就是RAW文件的真谛.RAW图像就是CMOS或者CCD图像感应器将捕捉到 的光源信号转化为数字信号的 ...
最新文章
- javaScript小问题,托拽元素,获得当前鼠标的坐标
- 清华大学大数据研究中心给您拜年啦!
- 2019寒假纪中集训总结学期总结(流水账)
- Element-UI分页组件使用——点第几页查第几页
- 疑似三星Galaxy S11入网:搭载骁龙865处理器+支持25W快充
- 一些shell脚本,sed替换
- Java虚拟机的参数
- Hello Qt(十四)——QT绘图系统
- office 365与Visio共存
- 最全地理数据下载网址
- 求解会议安排问题(回溯,C++)
- 学习笔记(02):英特尔® OpenVINO™工具套件初级课程-如何加速视频处理进程?
- FOJ 1921 栀子花开 线段树裸题
- Composer安装包
- java简单人物介绍
- 百练 / 2016计算机学科夏令营上机考试: E
- 为什么要格式化namenode以及注意点
- css 设置鼠标滑过变色效果
- 自动驾驶nuScenes数据集——一个KITTI以外的新数据集
- 台式计算机蓝屏代码08e,Win8.1电脑开机出现蓝屏代码0x000008e如何解决