Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
941 connectés 

  FORUM HardWare.fr
  Programmation
  C

  Progamme en C pour fusionner deux images

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Progamme en C pour fusionner deux images

n°2058628
yoyo30
Posté le 22-02-2011 à 10:41:06  profilanswer
 

Bonjour a tous  
 
Voila j'ai le début d'un programme en langage C mais il possede la bibliothéque sdl ors sur le stage ou je me trouve je ne peut rien telecharger !  
Donc le seul logiciel que je peut utiliser et devc++  
Auriez vous un programme a me proposer pour la fusion d'image voila ce que j'aimerais réaliser a termes ce sont des images en format dicom :
 
Voila c'est exactement ce que je doit faire sous devc++ en C
l'image de droite qui rassemble l'image "CT" et l'image "PET" !
 
http://www.google.fr/imgres?imgurl=htt [...] 1&um=1&itbs=1
 
Bonne journée

mood
Publicité
Posté le 22-02-2011 à 10:41:06  profilanswer
 

n°2058681
regexp42
Eplucheur de RFC.
Posté le 22-02-2011 à 11:49:39  profilanswer
 

Regarde du côté d'ImageMagick, tu devrais trouver ce que tu cherches je pense.

n°2058690
yoyo30
Posté le 22-02-2011 à 12:18:21  profilanswer
 

Je veut bien mais je doit faire un programme sans librairie ou autre puisque je ne peut telecharger !
 
merci qu'en meme

n°2058764
skeye
Posté le 22-02-2011 à 16:03:47  profilanswer
 

Bah t'as plus qu'à le faire toi-même...le plus difficile c'est de lire les différents formats de fichier que t'as en entrée, si t'as pas de libs qui le font à ta disposition...
 
Fusionner des images ça a rien de bien compliqué.


---------------
Can't buy what I want because it's free -
n°2058884
yoyo30
Posté le 23-02-2011 à 08:38:14  profilanswer
 

Ben enfaite voila mon programme mais il y a la librairie sdl mais peut pas l'avoir alors comment faire pour fusionner ces images sans ce sdl  
 
 
#include <stdlib.h>
#include <SDL.h>
 
 
Uint32 GetPixel(SDL_Surface *screen, int x, int y)
{
    return *(Uint32 *) ((Uint8 *)screen->pixels + y * screen->pitch + x * screen->format->BytesPerPixel);
}
 
void SetPixel(SDL_Surface *screen, int x, int y, Uint32 pixel)
{
    *(Uint32 *) ((Uint8 *)screen->pixels + y * screen->pitch + x * screen->format->BytesPerPixel) = pixel;
}
 
int main ( int argc, char** argv )
{
    SDL_Surface *layer1 = NULL, *layer2 = NULL, *result;
    unsigned i, j;
    Uint32 pix1, pix2;
    Uint8 r1, r2, g1, g2, b1, b2;
 
      initialise SDL video */
    if ( SDL_Init( SDL_INIT_VIDEO ) < 0 )
    {
        fprintf( stderr, "Unable to init SDL: %s\n", SDL_GetError() );
        return 1;
    }
 
    layer1 = SDL_LoadBMP("layer1.bmp" );  // CT
    layer2 = SDL_LoadBMP("layer2.bmp" );  // PET
 
    if (layer1 && layer2)
    {
        result = SDL_CreateRGBSurface(SDL_SWSURFACE, layer1->w, layer1->h, 32, 0, 0, 0, 0);
 
        for  (i=0; i<layer1->w; i++)
            for (j=0; j<layer1->h; j++)
            {
                pix1 = GetPixel(layer1, i, j);
                pix2 = GetPixel(layer2, i, j);
 
                SDL_GetRGB(pix1, layer1->format, &r1, &g1, &b1);
                SDL_GetRGB(pix2, layer2->format, &r2, &g2, &b2);
 
                SetPixel(result, i, j, SDL_MapRGB( result->format, (r1*2+r2)/3, (g1+g2)/2, (b1+b2*2)/3 ));
            }
 
        SDL_SaveBMP(result, "result.bmp" );
    }
 
    SDL_Quit();
    return 0;
}

n°2058885
skeye
Posté le 23-02-2011 à 08:44:31  profilanswer
 

La remplacer par un bout de code que tu écriras toi-même. Lire et écrire du format bitmap c'est pas bien sorcier si mes souvenirs sont bons.


---------------
Can't buy what I want because it's free -

Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  C

  Progamme en C pour fusionner deux images

 

Sujets relatifs
[C#] enum et struct[Réglé] Images à gratter
ISO C++ forbids declaration of SHA1[C++] Comment récupérer La mémoire virtuelle occupée par un processus?
Erreur dans l'appel d'une procédure stockée sous Visual C++ (6.0)[C#] Web service et message SOAP XML
[PYTHON] Module C++ pour pythonRecherche le titre d'un bouquin C++
Programmation en C, besoin d'aide 
Plus de sujets relatifs à : Progamme en C pour fusionner deux images


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR