2012-05-29 3 views
0

Comment utiliser WhiteThresholdImage avec magick ++?WhiteThresholdImage magick

je recherche et je l'ai trouvé des solutions et donc j'essayer:

#include <Magick++.h> 
using namespace Magick; 

int main() 
{ 
    Magick::InitializeMagick(""); 
    Image image; 
    image.read("logo.jpg"); 
    char* threshold = 20; 
    MagickLib::WhiteThresholdImage(image, threshold); 
} 

erreur: ne peut pas convertir 'Magick :: Image' à « MagickLib :: image * {aka MagickLib :: _ Image *} » pour l'argument '1' à 'unsigned int MagickLib :: WhiteThresholdImage (MagickLib :: image *, const char *)'



    #include 
    using namespace Magick; 

    int main() 
    { 
     Magick::InitializeMagick(""); 
     Image image; 
     image.read("logo.jpg"); 
     char* threshold = 20; 
     WhiteThresholdImage(image, threshold); 
    } 

erreur: 'WhiteThresholdImage' n'a pas été déclaré dans ce champ

Répondre

1

Vous mélangez l'API C avec l'API C++ et ils ne peuvent pas être mélangés comme ça.

La fonction WhiteThresholdImage() n'est pas exposée via Magick ++. Cependant, la méthode quantumOperator() peut faire la même chose (et beaucoup plus). Les éléments suivants seront des pixels à seuil blanc de plus de 20% de la plage numérique à blanc:

image.quantumOperator(AllChannels, ThresholdWhiteQuantumOp, 0.20*MaxRGB); 
Questions connexes