我有来自 iPhone 的 HEIC 图像(它包含深度数据),我想将其导入 Matlab(在 Mac 上)。但 imread() 不支持这种格式。我怎样才能实现这个目标?
最佳答案
如果您使用 homebrew 来管理 Mac 上的软件包,您可以像这样安装具有 HEIC 支持的 ImageMagick(通过 libde265
)(顺序很重要):
brew install libde265
brew install imagemagick
然后您应该能够运行以下命令来检查您是否有 HEIC 支持:
magick identify -list format | grep -Ei "HEIC|HEIF"
示例输出
Format Module Mode Description
-------------------------------------------------------------------------------
3FR DNG r-- Hasselblad CFV/H3D39II
3G2 MPEG r-- Media Container
3GP MPEG r-- Media Container
AAI* AAI rw+ AAI Dune image
AI PDF rw- Adobe Illustrator CS2
ART* ART rw- PFS: 1st Publisher Clip Art
ARW DNG r-- Sony Alpha Raw Image Format
AVI MPEG r-- Microsoft Audio/Visual Interleaved
AVS* AVS rw+ AVS X image
BGR* BGR rw+ Raw blue, green, and red samples
...
...
HEIC* HEIC rw- High Efficiency Image Format <--- THERE IT IS
如果一切正常,您应该能够使用以下命令检查您的 HEIC 图像之一:
magick identify -verbose SomeImage.HEIC
然后我们应该能够从图像中提取您想要的任何内容,并将其放入 Matlab 可以读取的某种格式 - 但这都是相当新的,我需要您的反馈来了解进展...
关于image - 如何在 matlab 中读取 HEIC 图像?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54556739/