IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

C Discussion :

Remplissage d'un tableau avec les données images d'une BMP


Sujet :

C

  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Septembre 2003
    Messages
    336
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2003
    Messages : 336
    Points : 341
    Points
    341
    Par défaut Remplissage d'un tableau avec les données images d'une BMP
    Bonjour à tous !

    J'ai écrit un programme pour stocker les valeurs des pixels (0->65535) d'une image BMP dans un tableau de unsigned short int. J'ai essayé avec une image moitié noire moitié blanche. Pour vérifier que le remplissage du tableau s'était correctement effectué, j'ai comparé les valeurs d'un tableau unsigned short int que j'ai rempli avec moitié de 0 (noir) et moitié de 65535 (blanc). Mais je n'obtiens pas le même résultat avec le tableau construit à partir de l'image.
    Voilà, en 4 étapes principales ce que je fais :
    1. Ouvrir la BMP en mode binaire
    2. Stocker la BMP dans un buffer de <taille du fichier>
    3. Enregistrer les données image seulement dans un buffer de taille 1024*1024
    4. Comparer le tableau rempli "artificiellement" et le tableau vraiment extrait de l'image ; afficher seulement les éléments qui diffèrent

    A l'exécution, j'obtiens cela :
    ** Remplissage tableau artificiel
    ** Remplissage tableau de données image de la BMP
    ** n_frame : 524288 # table_to_fill[] : 65535 frame[] = 0
    ** n_frame : 524289 # table_to_fill[] : 65535 frame[] = 0
    ** n_frame : 524290 # table_to_fill[] : 65535 frame[] = 0
    ** (...)

    Cela veut donc dire qu'à partir de la case 524288, les éléments des tableaux diffèrent. Est-ce que quelqu'un voit d'où cela vient ?

    Merci pour vos aides et suggestions.

    Vous trouverez le code ci-dessous.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
     
    void main()
    {
            FILE *pFile;			 // Pointer to the image file to process (to extract the drop profile from)
    	unsigned short int* table_to_fill;  // half black half white
    	unsigned short int* frame;  // The frame is supposed to store only image data (and not header information)
    	unsigned short int* frame_total;  // The frame is supposed to store the whole image file
    	int n_frame;
    	long lSize;                 // Size of the file to analyse (including both image and header data)
    // Notice ! 
    //	lSize : length of the file in bytes (8bits) 
    //  buffer defined as (unsigned) short int (16bits or 2 bytes) 
     
     
    //************OPENING AND SETTING UP FILE POINTER************//
    if((pFile=fopen(PHOTOBW,"rb"))==0) printf("Open file failed\n");                // Read only Opening BMP file
     
    fseek (pFile , 0 , SEEK_END);            // obtain file size 
    lSize = ftell (pFile);   
    rewind (pFile);                          // Replace the pointer to the beginning of the file
     
    frame_total = (unsigned short int*) malloc (lSize * sizeof(unsigned short int));        // allocates memory
    frame = (unsigned short int*) malloc ((1048576) * sizeof(unsigned short int));        
    table_to_fill = (unsigned short int*) malloc ((1048576) * sizeof(unsigned short int));
     
    if (frame == NULL || frame_total == NULL || table_to_fill==NULL)                       // Problem by buffer allocation 
      {
    	  printf("Error by buffer allocation \n");
    	  exit (2);
      }
     
    fread (frame_total,1,lSize,pFile);             // copy the file into the buffer. The whole file is loaded in the buffer.
     
    printf("Filling artificially table \n");
    for(n_frame=0;n_frame<(1024*1024);n_frame++)
    {
    	if(n_frame<(1024*1024*0.5)) table_to_fill[n_frame]=0;
    	else table_to_fill[n_frame]=65535;
    }
    printf("\n");
     
    printf("Filling table from real picture");
    for(n_frame=0;n_frame<(1024*1024);n_frame++)
    {
    	frame[n_frame] = frame_total[n_frame+28];  // Copy the BMP data
    }
     
    // Compares the 2 tables
    for(n_frame=0;n_frame<(1024*1024);n_frame++)
    {
     if((table_to_fill[n_frame]-frame[n_frame])!=0)
    	{
    	 printf("n_frame : %d # ",n_frame);
    	 printf("table_to_fill[] : %d frame[] = %d  \n",table_to_fill[n_frame],frame[n_frame]);
    	}
     
    }
    printf("\n");
    }
    Merci beaucoup,
    Guilhem Martin.

  2. #2
    En attente de confirmation mail
    Profil pro
    Inscrit en
    Septembre 2003
    Messages
    79
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2003
    Messages : 79
    Points : 37
    Points
    37
    Par défaut
    j'ai eu le meme genre de probleme, je devais charger un .tga et remplir un tableau de unsigned int avec les valeurs couleurs en hexa(0xF34G883D par ex)

    J'ai utilisé la bibliotheque DeViL.

    Voici un lien vers mon post qui contien le code que j'ai fait et qui eprmet de faire ce que je voulais :

    http://www.developpez.net/forums/vie...835&highlight=

  3. #3
    Provisoirement toléré
    Inscrit en
    Septembre 2003
    Messages
    16
    Détails du profil
    Informations forums :
    Inscription : Septembre 2003
    Messages : 16
    Points : 17
    Points
    17
    Par défaut
    Citation Envoyé par cemoi
    j'ai eu le meme genre de probleme, je devais charger un .tga et remplir un tableau de unsigned int avec les valeurs couleurs en hexa(0xF34G883D par ex)

    J'ai utilisé la bibliotheque DeViL.
    sa sent le raytracer...
    mais, nous on avait fait le texturage, et sans aucunes librairie devil ou
    quoi que ce soit ..
    de memoire, les texture etait des png ... ou un truc kom sa ..
    on avait ouvert plein de format, et yen a un qui etait facilement
    traitable
    ++
    --
    spycat, le chat qui pete plus vite que son ombre! ;o)

  4. #4
    En attente de confirmation mail
    Profil pro
    Inscrit en
    Septembre 2003
    Messages
    79
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2003
    Messages : 79
    Points : 37
    Points
    37
    Par défaut
    Salut spycat, devil je l'ai utilisé sous windows a mon stage pour recuperer les infos d'images, c'est pratique car ca ouvre tous les type d'image...
    J'ai du récupérer les couleurs d'un tga pour les mettre ds un tableau pour ajouter une image en transparence sur un programme.

    Pour le raytracer on avait fait le texturage avec des .bmp et on a pas utilisé de lib non plus
    On avait trouvé un site qui expliquait comment est structuré le .bmp et il est assez simple a utiliser.
    @+

  5. #5
    Membre régulier

    Profil pro
    Inscrit en
    Janvier 2003
    Messages
    68
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Janvier 2003
    Messages : 68
    Points : 93
    Points
    93
    Par défaut
    Bonjour,

    Vous avez ecrit
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    frame[n_frame] = frame_total[n_frame+28];
    Ou allez vous chercher ce 28 qui ne me semble pas correct?

    Cordialement

  6. #6
    Provisoirement toléré
    Inscrit en
    Septembre 2003
    Messages
    16
    Détails du profil
    Informations forums :
    Inscription : Septembre 2003
    Messages : 16
    Points : 17
    Points
    17
    Par défaut
    Citation Envoyé par cemoi
    Salut spycat, devil je l'ai utilisé sous windows a mon stage pour recuperer les infos d'images, c'est pratique car ca ouvre tous les type d'image...
    J'ai du récupérer les couleurs d'un tga pour les mettre ds un tableau pour ajouter une image en transparence sur un programme.

    Pour le raytracer on avait fait le texturage avec des .bmp et on a pas utilisé de lib non plus
    On avait trouvé un site qui expliquait comment est structuré le .bmp et il est assez simple a utiliser.
    @+
    oki oki.
    mais je note dans un coin le nom de la librairie ...
    sa pourai ptet me servir a moi et mon pote la ....
    (pour le projet libre de l'an prochain qu'on commence )
    he he. si j'ai besoin d'aide sur la lib, jte demanderai
    a pluch !
    --
    spycat, le chat qui pete plus vite que son ombre! ;o)

  7. #7
    Membre averti
    Profil pro
    Inscrit en
    Septembre 2003
    Messages
    336
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2003
    Messages : 336
    Points : 341
    Points
    341
    Par défaut
    Merci à tous pour vos réponses. Mais avant d'utiliser des librairies, je préférerais faire marcher ce programme par mes propres lignes de code (et puis si au bout d'un moment, je n'y arrive toujours pas, je passerais aux librairies existantes).

    Réponse à Pipin :
    Je souhaite ne récupérer que les données images et non pas l'en-tête (header) de la BMP. Or l'en-tête de la BMP fait précisément 54 de longueur, donc 27 dans mon cas au vue de la longueur des octets. C'est pourquoi je commence la recopie à 28.

    J'ai fait de nouveaux tests, et vraiment je ne comprends pas comment est organisée la BMP, j'ai trouvé des valeurs autres que 65535 et 0, à savoir un grand nombre de 52685. De plus en faisant le compte des 65535 et des 0 je dépasse largement le million (soit bien plus que les 1024*1024).

    Enfin, je veux absolument récupérer les données en unsigned short int, parce que je dois ensuite utiliser un programme qui n'accepte que ce type de tableau en paramètres.

  8. #8
    En attente de confirmation mail
    Profil pro
    Inscrit en
    Septembre 2003
    Messages
    79
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2003
    Messages : 79
    Points : 37
    Points
    37
    Par défaut
    c'est parce que dans le bmp les 3 composantes sont séparéees, pour chaque pixel tu as RVB, R , V et B sont inscrit dans un unsigned char.
    Un .bmp est donc une suite d'UCHAR, il faut les lire 3 par 3 et les mettre dans un UINT (unsigned int) par ex pour avoir la couleur de chaque pixel dans un seul int, et la tu aura effectivement 1024*1024 int

  9. #9
    Membre régulier

    Profil pro
    Inscrit en
    Janvier 2003
    Messages
    68
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Janvier 2003
    Messages : 68
    Points : 93
    Points
    93
    Par défaut
    Bonjour,

    Pour etre sur de commencer au debut de l'image, il est preferable de
    lire le DWORD qui se trouve a l'offset 10 du fichier.
    La valeur lue est l'offset de l'image par rapport au debut du fichier.

    Pour la maniere dont cette image est stockee, cela depend de la valeur
    de biBitCount et bicompression dans la structure BITMAPINFOHEADER
    si biBitCount==16 et bicompression==BI_RGB alors chaque pixel est
    representé par un WORD ou les couleur sont chacunes representee par
    5 bit

    Cordialement

  10. #10
    Membre averti
    Profil pro
    Inscrit en
    Septembre 2003
    Messages
    336
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2003
    Messages : 336
    Points : 341
    Points
    341
    Par défaut
    Merci bcp à Pipin et Cemoi pour leurs précieuses informations. Je vais essayer tout cela et vous tiens au courant.
    Guilhem.

  11. #11
    mat.M
    Invité(e)
    Par défaut
    Bonjour,

    un fichier BMP ça ne s'ouvre pas comme cela !
    Il faut lire un entête !
    Mais pour cela , et afin que les données soient parfaitement alignés , il faut déclarer une structure d'entête.
    Puis charger dans une instance de cette structure les données du fichier.
    Voir
    www.wotsit.org
    www.cplusplus.com
    et surtout
    www.msdn.microsoft.com

  12. #12
    Membre averti
    Profil pro
    Inscrit en
    Septembre 2003
    Messages
    336
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2003
    Messages : 336
    Points : 341
    Points
    341
    Par défaut
    Mat.m,

    ok merci je me suis plus amplement renseigné sur les BMP, notamment sur http://www.whisqu.se/per/docs/graphics52.htm.

    J'ai vu que l'on pouvait déclarer
    mais comment associer cet objet à mon propre fichier BMP ? Et comment remplir les différentes structures associées ?

    NB :
    J'ai fait une dernière tentative pour essayer de récupérer les valeurs des pixels de ma BMP (qui est en 24 bits) en faisant :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    fseek (pFile,10,SEEK_SET);               
    printf("offset_image = %d \n",offset_image=fgetc(pFile));
    fseek (pFile,offset_image,SEEK_SET);
    Ainsi je me positionnais réellement sur la première case de données.
    Et j'ai essayé de récupérer les valeurs RGB des pixels :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    for(n_frame=0;n_frame<3072;n_frame=n_frame+3)
    {
    	printf("n_frame %d R %d G %d B %d # \n",n_frame,frame_total[n_frame],frame_total[n_frame+1],frame_total[n_frame+2]);
    }
    mais cela a fait apparaître des valeurs (peut-être) un peu étranges... Par exemple, avec une image toute blanche :

    // Résultat de la fenêtre de commande :
    (...)
    n_frame 1521 R 65535 G 65535 B 65535 #
    n_frame 1524 R 65535 G 65535 B 65535 #
    n_frame 1527 R 65535 G 65535 B 65535 #
    n_frame 1530 R 65535 G 65535 B 65535 #
    n_frame 1533 R 65535 G 65535 B 65535 #
    // JUSQUE LA TOUT VA BIEN
    n_frame 1536 R 65021 G 65021 B 0 #
    n_frame 1539 R 0 G 0 B 0 #
    n_frame 1542 R 0 G 0 B 775 #
    n_frame 1545 R 391 G 256 B 8 #
    n_frame 1548 R 32 G 101 B 0 #
    n_frame 1551 R 0 G 0 B 0 #
    n_frame 1554 R 0 G 0 B 6144 #
    n_frame 1557 R 0 G 1 B 0 #
    // BIZARRE BIZARRE JE NE DEVRAIS AVOIR QUE DU 65535
    n_frame 1560 R 49 G 0 B 65021 #
    n_frame 1563 R 65021 G 52685 B 52685 #
    n_frame 1566 R 52685 G 52685 B 52685 #
    n_frame 1569 R 52685 G 52685 B 52685 #
    // Et jusqu'à la fin je n'ai que du 52685...
    ...

    Alors que je n'aurais dû avoir que du 65535.

    Merci,

    Guilhem.

  13. #13
    Membre averti
    Profil pro
    Inscrit en
    Septembre 2003
    Messages
    336
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2003
    Messages : 336
    Points : 341
    Points
    341
    Par défaut
    J'ai procédé à de nouveaux essais,

    et donc suivant l'aide de Pipin, je récupère le décalage du début des données par le code pour être sûr de bien commencer à lire des données images.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    fseek (pFile,10,SEEK_SET);              // Place the pointer to the "offset" of image data
    printf("offset_image = %d \n",offset_image=fgetc(pFile));
    fseek (pFile,offset_image,SEEK_SET);
    frame_total = (unsigned char*) malloc (3 * 1024 * sizeof(unsigned char));        // allocate memory to contain the BMP data
    J'utilise des Bitmaps de 24 profondeurs de bits.

    24 Bitmap has a maximum of 2^24 colors. The bmiColors (or bmciColors) member is NULL, and each 3-byte sequence in the bitmap array represents the relative intensities of red, green, and blue, respectively, for a pixel.
    Enfin j'utilise le code ci-dessous pour lire stocker les données image.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
    frame_total = (unsigned char*) malloc (3 * 1024 * sizeof(unsigned char));        // allocate memory to contain the BMP data
    if(frame_total == NULL) my_error(2);
    number_of_element_read=fread (frame_total,1,3 * 1024,pFile);             // copy the file into the buffer. The whole file is loaded in the buffer.
    printf("FREAD VALUE IS : %d \n",number_of_element_read);
     
    for(n_frame=0;n_frame<3072;n_frame=n_frame+3)   // Printing pixel values 
    {
    	printf("n_frame %d R %d G %d B %d # \n",n_frame,frame_total[n_frame],frame_total[n_frame+1],frame_total[n_frame+2]);
    }

    J'obtiens des résultats satisfaisants pour des images monocolores, du style une image complètement blanche :

    Extrait de la fenêtre de commande :

    (...)
    n_frame 189 R 255 G 255 B 255 #
    n_frame 192 R 255 G 255 B 255 #
    n_frame 195 R 255 G 255 B 255 #
    (...)
    De la même manière, j'obtiens de bons résultats pour une image entièrement noire.

    Mais par exemple, pour une image moitié noire, moitié blanche, je n'obtiens que des 0 0 0, comme si l'image ne contenait que du noir.

    Si vous avez des pistes supplémentaires... merci.

    Guilhem.

    NB : comme mon programme doit utiliser seulement des BMP de format 24, je connais par avance la structure de l'image.

  14. #14
    Membre averti
    Profil pro
    Inscrit en
    Septembre 2003
    Messages
    336
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2003
    Messages : 336
    Points : 341
    Points
    341
    Par défaut
    Voilà, finalement, j'avais fait plusieurs erreurs, dans le malloc notamment et dans les indices de remplissage du tableau. Je joins le code qui fonctionne ci-dessous, il comprend également le calcul de l'intensité pour chaque point.

    Merci tout particulier à pipin et cemoi

    Note pour le code suivant : attention, il marche seulement pour des BMP format 24 de taille 1024*1024.


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
     
    #include <stdio.h>
    #include <io.h>
    #include <stdlib.h>  // to use malloc (memory allocation)
    //#include <windows.h>  // to work with BMP
     
     
     
    #define PHOTOBW "C:\\C++-Programme\\Guilhem_Martin\\test01.bmp"
    // TEST SEEMS OK FOR ENTIRE WHITE FUNCTION OR ENTIRE BLACK FUNCTION
    #define PHOTOBW2 "C:\\C++-Programme\\Guilhem_Martin\\halfblack_halfwhite_totest_coordinatesystem_and_getlev.bmp"
    #define PHOTOBW3 "C:\\C++-Programme\\Guilhem_Martin\\halfblack_halfwhite_reverse.bmp"
    #define PHOTOBW4 "C:\\C++-Programme\\Guilhem_Martin\\wasser486bmp10241024_centered_worked_b2.bmp"
     
    void main()
    {
        FILE *pFile;			 // Pointer to the image file to process (to extract the drop profile from)
    //	unsigned short int* table_to_fill;  // half black half white
    //	unsigned short int* frame;  // The frame is supposed to store only image data (and not header information)
    	unsigned char * frame_total;  // The frame is supposed to store the whole image file
    	unsigned char * frame_intensity;  // (R+G+B)/3
    //	unsigned short int * frame_pixel;  // Compute the R+G+B for one pixel
    	int n_frame; //long n_frame;
    	//unsigned short int lSize; // Causes error by execution
    	long lSize;                 // Size of the file to analyse (including both image and header data)
    	int number_of_element_read;
    	int offset_image;
    	int n_frame2=0;
     
     
     
    // Notice ! 
    //	lSize : length of the file in bytes (8bits) :
    //	For instance 32 bits for lSize is 4 bytes
    //  buffer defined as (unsigned) short int (16bits ou 2 bytes) 
     
     
    //************OPENING AND SETTING UP FILE POINTER************//
    //** fopen returns a pointer to the file, Opening the file in binary mode
    //** Variables to be passed in parameter for fread
    //** lSize : same size as the one displayed in the property dialog in the explorer
    if((pFile=fopen(PHOTOBW4,"rb"))==0) printf("Open file failed\n");                // Read only Opening BMP file
     
     
     
     
    fseek (pFile , 0 , SEEK_END);            // obtain file size 
    lSize = ftell (pFile);   
    rewind (pFile);   // Replace the pointer to the beginning of the file
    // fseek (pFile,55,SEEK_SET);               // Place the cursor to the beginning of BMP data (54 bytes are designed for the header)
    fseek (pFile,10,SEEK_SET);               
     
    printf("offset_image = %d \n",offset_image=fgetc(pFile));
     
    fseek (pFile,offset_image,SEEK_SET);
     
    //mybmp=pFile;//mybmp//biBitCount
     
    frame_total = (unsigned char*) malloc (3 * 1024 * 1024 * sizeof(unsigned char));        // allocate memory to contain the whole file.
    frame_intensity = (unsigned char*) malloc (1024 * 1024 * sizeof(unsigned char));
     
    if(frame_total == NULL)
      {
    	  printf("Error by buffer allocation \n");
    	  exit (2);
      }
     
     
    number_of_element_read=fread (frame_total,1,3 * 1024 * 1024 * sizeof(unsigned char),pFile);             // copy the file into the buffer. The whole file is loaded in the buffer.
    // 3*1024*1024 = 3145728
     
     
    printf("FREAD VALUE IS : %d \n",number_of_element_read);
    printf("FREAD/3 VALUE IS : %d \n",number_of_element_read/3);
     
    //printf("%d %d %d \n",frame_total[0],frame_total[1],frame_total[2]);
    //printf("%d %d %d \n",frame_total[3069],frame_total[3070],frame_total[3071]);
     
    // frame_total[3069]=(frame_total[3070]+frame_total[3071])/2-58; Ca ca marche
    /*
    for(n_frame=0;n_frame<(3 * 1024 * 1024);n_frame=n_frame+3)
    { 
    	//	printf("n_frame %d R %d G %d B %d # \n",n_frame,frame_total[n_frame],frame_total[n_frame+1],frame_total[n_frame+2]);
    /*	if((n_frame+3)<(3 * 1024 * 1024))
    		if(frame_total[n_frame]!=frame_total[n_frame+3])
    		{
    			printf("n_frame %d R %d G %d B %d # \n",n_frame,frame_total[n_frame],frame_total[n_frame+1],frame_total[n_frame+2]);
    			printf("n_frame %d R %d G %d B %d # \n",n_frame+3,frame_total[n_frame+3],frame_total[n_frame+1+3],frame_total[n_frame+2+3]);
    		}
    }*/
     
    for(n_frame=0;n_frame<(1024 * 1024);n_frame=n_frame+1)
    {
       frame_intensity[n_frame]=(n_frame,frame_total[n_frame]+frame_total[n_frame+1]+frame_total[n_frame+2])/3;
       n_frame2=n_frame2+3;
    }
     
    }

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. problème avec les données issues d'une kinect
    Par takfa2008 dans le forum Traitement d'images
    Réponses: 0
    Dernier message: 05/03/2013, 09h20
  2. remplir un tableau avec les données d'une BDD
    Par info3licen dans le forum Langage
    Réponses: 5
    Dernier message: 18/12/2012, 12h10
  3. Pb avec les données d'un tableau
    Par Bulveye dans le forum Collection et Stream
    Réponses: 9
    Dernier message: 30/05/2010, 23h24
  4. Réponses: 2
    Dernier message: 30/09/2009, 16h43
  5. [MySQL] Création d'un tableau avec les données d'une base de données
    Par opeo dans le forum PHP & Base de données
    Réponses: 3
    Dernier message: 02/04/2009, 20h29

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo