普段パパッと取った写真をcv2.imread()で読み込みたいとき、heicで読み込めずみたいなことが多々あった
そもそもheicが何のために作られているのか知らなかったので調べた
heicとは
HEICとは、「High Efficiency Image Container」の略で、その実態はHEIFという画像フォーマットで形成される
開発元
動画圧縮技術で有名なMPEGによって開発された。動画で非常に高い圧縮性能を持つコーデック「H.265(HEVC)」の技術を静止画に応用したもの
Appleの採用
2017年にAppleがIOS11の標準画像フォーマットとして採用したことで一気に知られるようになった
つまり
jpegよりも少ない容量でより高画質な画像を保存できる次世代画像フォーマット
特徴
1. 圧縮効率が良い
AppleによればHEICはjpegの約半分のファイルサイズで同等以上の画質を保てる。(jpegが8ビットカラーに対してheicは10ビット以上)
2. 多彩な情報を一つのファイルに格納できる。
名前がHigh Efficiency Image Containerと、コンテナとついてるようにデジタルな箱のような役割を持つ。これによりメインの画像以外にも短い動画(iPhoneのLive Photoなど)や深度情報などを追加することが可能。ちなみに、メインの画像は前述の通りH.265(HEVC)で圧縮されている
感想
heicのcはコンテナのcだったと聞いて少し納得した。
確かにiphoneで撮った写真ってなんであんな連続してたり、自由自在に深度調整できるんだろうと思っていたので納得できた。
圧縮技術にH.265を採用していたとは、
Apple独自が開発したというより広めたという感じなんですね
何か間違ってる箇所等あれば指摘お願いします!