图像在加载时没有完整分辨率 (Julia)

3
我桌面上有一个名为"my_image.nef"的.NEF文件,如果我查看图像的详细信息,可以看到其分辨率为4256x2832:

enter image description here

当我尝试使用Julia打开它时,得到了一个大小为120x160的二维数组。

enter image description here

如何获取完整分辨率的数组以进行加载?为什么它会加载原始图像的较小版本?

没有一个示例图像文件,基本上无法进行故障排除。 - StefanKarpinski
@StefanKarpinski 我在 https://filesamples.com/formats/nef 找到了一个样本文件,结果相似。一个 4288 x 2844 的图像被读取为一个 320 x 212 的数组,并且只有这么多像素通过 ImageView.imshow 显示。 - Sundar R
2个回答

2
我不是各种RAW文件格式的专家,但它可能正在加载缩略图预览。有很好的理由希望这可能相当容易地解决:像许多RAW格式一样,它似乎是TIFF的变体,而Julia的TiffImages包是一个非常好的TIFF库。你可能需要为RAW或NEF创建一个“包装器包”,但这可能最终会成为一个相当简短的练习,将正确的调用序列拼凑到TiffImages内部。我鼓励你在TiffImages上提交问题以讨论。

0
我最终使用了Julia命令提示符,通过迭代调用ImageMagick,在本地将所有的.NEF文件转换为.PNG文件,并将PNG文件读入数组。
using Glob
using Shell

filenames = glob(string("*",".NEF"), <IMAGE DIR>)
for file in filenames
    fname = split(split(file,"\\")[end],".")[1]
    fname1 = string(img_folder, fname, ".NEF")
    fname2 = string(img_folder, fname, ".png")
    cmd = string("convert ", fname1, " ", fname2)
    Shell.run(cmd)
end

虽然有一些Julia语言的包存在,但它们似乎都不是很好用。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接