c++ - 使用 CImg 对灰度图像进行颜色映射时遇到问题

标签 c++ image c++11 image-processing cimg

我在一个项目中使用 CImg 处理一些不同的事情,并且有一个灰度图像,我需要应用 jet_LUT256 颜色映射。我不确定我是否走在正确的道路上。任何指导将不胜感激。

#include "CImg.h"

using namespace std;
using namespace cimg_library;

int main()
{
    CImg<uint8_t> image("test.jpg");

    // Color mapping using: jet_LUT256

    image.map(jet_LUT256());

    CImgDisplay main_disp(image, "Thank you!");
    while (!main_disp.is_closed())
    {
        main_disp.wait();
    }

    return 0;
}

最佳答案

我认为它需要看起来更像这样:

#include "CImg.h"

using namespace std;
using namespace cimg_library;

int main()
{
    CImg<unsigned char> image("test.jpg");

    // Color mapping using: jet_LUT256

    image.map(CImg<>::jet_LUT256());

    CImgDisplay main_disp(image, "Thank you!");
    while (!main_disp.is_closed())
    {
        main_disp.wait();
    }

    return 0;
}

如果你像这样用 ImageMagick 做一个灰色渐变:

convert -size 256x256 gradient: test.jpg

enter image description here

然后运行你得到的程序:

enter image description here

关于c++ - 使用 CImg 对灰度图像进行颜色映射时遇到问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45421484/

相关文章:

javascript - 在 Wenhixin bootstrap-table 中包含图像

Java 图形 - 重新绘制图像而不删除另一个图像

c++ - 使用 std::enable_if<> 的模板特化

c++ - std::shared_ptr 在按引用传递时如何跨类层次结构转换?

c++ - 在 C++ 中制作 QPushButton

c++ - 删除 pthread_t*

c++ - 通过同步延长线程的生命周期 (C++11)

C++避免检查双指针持有的未初始化值

image - Bootstrap 4 在导航栏中对齐 img 和文本

c++ - 警告 : section "__textcoal_nt" is deprecate since updating to Mac OSX Sierra