【问题标题】:How to store the images with colourmap in MATLAB如何在MATLAB中存储带有颜色图的图像
【发布时间】:2014-09-29 15:04:25
【问题描述】:

我正在使用 HDF 卫星数据来检索波段,从中得出不同的植被指数。 hdf 数据中的每个波段都是灰色格式的,它是一个灰度图像。处理 HDF 数据后,我可以使用颜色图将其转换为颜色(我使用 jet 作为颜色图)。我的疑问是如何在使用 imwrite 时将灰度图像转换为彩色映射。如何在 imwrite 中使用颜色图。我尝试了很多次,但输出只有全蓝色,这会破坏输出图像。请帮我这样做。

【问题讨论】:

    标签: matlab image-processing octave hdf


    【解决方案1】:

    为什么要使用 imwrite?您可以使用 imshow。

    例子:

    1. imshow(im)

    1. imshow(im,'Colormap',jet(255))

    参考:http://www.alecjacobson.com/weblog/?p=1655

    【讨论】:

    • 不,我想写该图像以显示在 Web 界面中。它是基于网络的应用程序。
    • Lakesh 先生,您说的对。但是当使用 imwrite 时,输出存储的图像充满了蓝色。 colourmap 不适用于 imwrite。
    【解决方案2】:

    如果您想保存为.jpg 之类的格式,请在使用imwrite 之前尝试使用ind2rgb 函数,但如果您使用的是索引图像格式(例如.png),您可以只使用imwrite直接as shown in the docs:

    imwrite(X, map, filename)
    

    其中X 是您的灰度图像,map 是您的颜色图(即jet),filename 是您要在@ 中保存结尾的图像的名称987654333@

    【讨论】:

    • imwrite(NDVI,ind2rgb,'/var/www/html/uploads/mynewwwww.jpg','jpg');使用 ind2rgb 时出错(第 17 行)输入参数不足。
    • imwrite(NDVI,jet,'/var/www/html/uploads/mynew2www.jpg');即使现在我得到了全蓝屏图像。如果我在已经写入灰度图像的灰度图像上使用颜色图,那么我得到正确的颜色输出。这意味着将灰度图像写入 1.jpg,然后将该 1.jpg 转换为颜色图。它有效..
    • @prabu 请阅读ind2rgb 的文档,您甚至无法正确远程使用它。它是一个需要参数并输出 RGB 图像而不是地图的函数!关于你的第二次尝试,我特别说要使用.pngNOT .jpg
    • 输出图像是 .png 吗?这意味着 imwrite(NDVI,jet,'/var/www/html/uploads/mynew2www.png');这里 NDVI 是处理后的图像(灰度) jet 用于颜色图。
    • @prabu 你能具体点吗?还有NDVI的取值范围是多少?
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2014-10-03
    • 1970-01-01
    • 2016-10-26
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-06-24
    相关资源
    最近更新 更多