2017-07-31 2 views
1

J'utilise CImg pour différentes choses dans un projet et j'ai une image en niveaux de gris dont j'ai besoin pour appliquer une carte couleur jet_LUT256. Je ne suis pas sûr si je suis sur le bon chemin ou non. Toute orientation serait appréciée.Problèmes d'utilisation de CImg pour colorier une image en niveaux de gris Image

#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; 
} 

Répondre

0

Je pense qu'il faut regarder de plus comme ceci:

#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; 
} 

Si vous faites un dégradé gris avec ImageMagick comme ceci:

convert -size 256x256 gradient: test.jpg 

enter image description here

et exécutez le programme que vous obtenez:

enter image description here

+0

Merci beaucoup! C'est exactement ce que je cherchais! –