begin process at 2010 02 10 11:26:00
  Trouver un code source :
 
dans
 
Accueil > 

Code

 > 

Maths & Algorithmes

 > MATRICE ZIGZAG

MATRICE ZIGZAG


 Information sur la source

Note :
Aucune note
Catégorie :Maths & Algorithmes Classé sous :Matrice, JPEG, ZigZag Niveau :Débutant Date de création :02/03/2009 Vu / téléchargé :1 945 / 92

Auteur : Mjj_Yuna

Ecrire un message privé
Commentaire sur cette source (3)
Ajouter un commentaire et/ou une note

 Description

Parcours d'une matrice en zig zag. Procédé utilisé lors de la compression JPEG.
Pour plus d'information sur la compression JPEG : http://fr.wikipedia.org/wiki/Norme_JPEG

Cette source permettra de mieux comprendre le procédé ZigZag.

Source

  • void _tmain(int argc, _TCHAR* argv[])
  • {
  • int i;
  • int j;
  • i = 0;
  • j = 0;
  • int maxI ;
  • int maxJ ;
  • maxI = 7;
  • maxJ = 7;
  • int croiss;
  • croiss = 0;
  • int Matrice[8][8];
  • Matrice[0][0]=16;
  • Matrice[0][1]=11;
  • Matrice[0][2]=10;
  • Matrice[0][3]=16;
  • Matrice[0][4]=24;
  • Matrice[0][5]=40;
  • Matrice[0][6]=51;
  • Matrice[0][7]=61;
  • Matrice[1][0]=12;
  • Matrice[1][1]=12;
  • Matrice[1][2]=14;
  • Matrice[1][3]=19;
  • Matrice[1][4]=26;
  • Matrice[1][5]=58;
  • Matrice[1][6]=60;
  • Matrice[1][7]=55;
  • Matrice[2][0]=14;
  • Matrice[2][1]=13;
  • Matrice[2][2]=16;
  • Matrice[2][3]=24;
  • Matrice[2][4]=40;
  • Matrice[2][5]=57;
  • Matrice[2][6]=69;
  • Matrice[2][7]=56;
  • Matrice[3][0]=14;
  • Matrice[3][1]=17;
  • Matrice[3][2]=22;
  • Matrice[3][3]=29;
  • Matrice[3][4]=51;
  • Matrice[3][5]=87;
  • Matrice[3][6]=80;
  • Matrice[3][7]=62;
  • Matrice[4][0]=18;
  • Matrice[4][1]=22;
  • Matrice[4][2]=37;
  • Matrice[4][3]=56;
  • Matrice[4][4]=68;
  • Matrice[4][5]=109;
  • Matrice[4][6]=103;
  • Matrice[4][7]=77;
  • Matrice[5][0]=24;
  • Matrice[5][1]=35;
  • Matrice[5][2]=55;
  • Matrice[5][3]=64;
  • Matrice[5][4]=81;
  • Matrice[5][5]=104;
  • Matrice[5][6]=113;
  • Matrice[5][7]=92;
  • Matrice[6][0]=49;
  • Matrice[6][1]=64;
  • Matrice[6][2]=78;
  • Matrice[6][3]=87;
  • Matrice[6][4]=103;
  • Matrice[6][5]=121;
  • Matrice[6][6]=120;
  • Matrice[6][7]=101;
  • Matrice[7][0]=72;
  • Matrice[7][1]=92;
  • Matrice[7][2]=95;
  • Matrice[7][3]=98;
  • Matrice[7][4]=112;
  • Matrice[7][5]=100;
  • Matrice[7][6]=103;
  • Matrice[7][7]=99;
  • while (i <= maxI && j <= maxJ)
  • {
  • printf("%d \t",Matrice[i][j]);
  • if (i == 0 || i == maxI)
  • {
  • if (j == maxJ)
  • {
  • j = j - 1;
  • i = i + 1;
  • }
  • j = j + 1;
  • printf("%d \t",Matrice[i][j]);
  • }
  • else
  • {
  • if (j == 0 || j == maxJ)
  • {
  • if (i == maxI)
  • {
  • i = i - 1;
  • j = j + 1;
  • }
  • i = i + 1;
  • printf("%d \t",Matrice[i][j]);
  • }
  • }
  • if (i == 0 || j == maxJ) { croiss = 0;}
  • if (j == 0 || i == maxI) { croiss = 1;}
  • if (croiss==1)
  • {
  • i = i - 1;
  • j = j + 1;
  • }
  • else
  • {
  • i = i + 1;
  • j = j - 1;
  • }
  • }
  • }
void _tmain(int argc, _TCHAR* argv[])
{
int i;
int j;
i = 0;
j = 0;

int maxI ;
int maxJ ;
maxI = 7;
maxJ = 7;

int croiss;
croiss = 0;

int Matrice[8][8];
Matrice[0][0]=16;
Matrice[0][1]=11;
Matrice[0][2]=10;
Matrice[0][3]=16;
Matrice[0][4]=24;
Matrice[0][5]=40;
Matrice[0][6]=51;
Matrice[0][7]=61;

Matrice[1][0]=12;
Matrice[1][1]=12;
Matrice[1][2]=14;
Matrice[1][3]=19;
Matrice[1][4]=26;
Matrice[1][5]=58;
Matrice[1][6]=60;
Matrice[1][7]=55;

Matrice[2][0]=14;
Matrice[2][1]=13;
Matrice[2][2]=16;
Matrice[2][3]=24;
Matrice[2][4]=40;
Matrice[2][5]=57;
Matrice[2][6]=69;
Matrice[2][7]=56;

Matrice[3][0]=14;
Matrice[3][1]=17;
Matrice[3][2]=22;
Matrice[3][3]=29;
Matrice[3][4]=51;
Matrice[3][5]=87;
Matrice[3][6]=80;
Matrice[3][7]=62;

Matrice[4][0]=18;
Matrice[4][1]=22;
Matrice[4][2]=37;
Matrice[4][3]=56;
Matrice[4][4]=68;
Matrice[4][5]=109;
Matrice[4][6]=103;
Matrice[4][7]=77;

Matrice[5][0]=24;
Matrice[5][1]=35;
Matrice[5][2]=55;
Matrice[5][3]=64;
Matrice[5][4]=81;
Matrice[5][5]=104;
Matrice[5][6]=113;
Matrice[5][7]=92;

Matrice[6][0]=49;
Matrice[6][1]=64;
Matrice[6][2]=78;
Matrice[6][3]=87;
Matrice[6][4]=103;
Matrice[6][5]=121;
Matrice[6][6]=120;
Matrice[6][7]=101;

Matrice[7][0]=72;
Matrice[7][1]=92;
Matrice[7][2]=95;
Matrice[7][3]=98;
Matrice[7][4]=112;
Matrice[7][5]=100;
Matrice[7][6]=103;
Matrice[7][7]=99;


while (i <= maxI && j <= maxJ)
{
    printf("%d \t",Matrice[i][j]);
    if (i == 0 || i == maxI) 
	{
        if (j == maxJ) 
		{
            j = j - 1;
            i = i + 1;
		}
        j = j + 1;
        printf("%d \t",Matrice[i][j]);
	}
    else
	{
        if (j == 0 || j == maxJ) 
		{
            if (i == maxI) 
			{
                i = i - 1;
                j = j + 1;
			}
            i = i + 1;
            printf("%d \t",Matrice[i][j]);
		}
	}
        
		if (i == 0 || j == maxJ) { croiss = 0;}
		if (j == 0 || i == maxI)  { croiss = 1;}
    
    if (croiss==1) 
	{
        i = i - 1;
        j = j + 1;
	}
	else
	{
        i = i + 1;
        j = j - 1;
	}

}





}

 Conclusion

Ce code peut être amélioré :)

 Fichier Zip

Les Membres Club peuvent télécharger directement un fichier contenu dans le zip sans télécharger le zip en entier !
  •   Matrice_ZigZag

Télécharger le zip


 Sources de la même categorie

Source avec Zip OPERATION SUR LES MATRICES CARREES AVEC CLASSE GENERIQUE par chouhad
Source avec une capture OPÉRATIONS SUR MATRICES C++ par Minilogus
[DEV-C++] CALCUL DE LA RACINE CARRÉE D'UN RÉEL par Jhep
PROGRAMME QUI CALCUL LE PPCM ET LE PGCD par AnoSantino
EVALUER UNE EXPRESSION MATHÉMATIQUE par begueradj

 Sources en rapport avec celle ci

MIN-MAX D'UNE MATRICE par Bigthune
Source avec Zip CLASS MATRICE AVEC TEMPLATE par CharSnipeur
Source avec Zip SQUELETTE DE MOTEUR 3D par _michel
Source avec Zip APPLICATION MATHÉMATIQUE EN C++ ET QT par shinigami00
Source avec Zip GESTION DE LISTES CHAINÉES AVEC NOMBRES ET CHIFFRES ET GESTI... par djoao88

Commentaires et avis

Commentaire de Pistol_Pete le 04/03/2009 09:01:02

Salut
Il aurait été intéressant d'avoir le code de la DCT en plus de ce code...
Bonne continuation

Commentaire de Mjj_Yuna le 10/04/2009 15:00:59

Salut,

Tu as raison le code de la DCT, est pas si simple à faire.
J'espère que la communauté y arrivera.

A bientôt.

Commentaire de Pistol_Pete le 14/04/2009 08:25:08

Ce n'est pas si dure que cela, on travaille sur des blocs 8x8 et on applique la bonne transformation DCT. Il suffirait alors de supprimer tous les éléments qui sont inférieur à un seuil et d'appliquer ta méthode un peu modifié pour obtenir une compression JPEG...
A+

 Ajouter un commentaire


Discussions en rapport avec ce code source dans le forum

Affichage Mosaique/Matrice de fichiers JPEG [ par brambuan ] J'ai une matrice ce 100*100 fichiers de 2000*2000 pixels.Je veux pouvoir afficher, scroller , zoomer... me promener dans cette matrice ...Les fichiers matrice representative d'une image jpeg [ par fatrak ] Salut, Je dois faire de la reconnaissance de formes sur images jpeg&nbsp; affich&#233;e dans un dc sur une DialogBox. Maintenant je dois faire divers extraire matrice Jpeg [ par mackaB ] je r&#233;alise un projet en c++ et je dois extraire d'un fichier jpeg la matrice permettant ensuite de faire du traitement d'image. je dois ensuite r codeur JPEG [ par blueburry ] Bonjour, <p class="MsoNormal" style="MARGIN: affichage de jpeg avec API windows ? [ par Batman60 ] salut à tousest-il possible d'ouvrir et d'afficher un fichier jpeg à l'aide des fonctions de windowspour l'instant j'utilise le code ci-dessous pour b Decompression jpeg [ par turnerom ] Bonjour,je cherche un code ou une bibliothèque en C++ qui soit compatible Windows et Linux et qui permette de décompresser le jpeg (vers du bmp ou du Classe "matrice" [ par aldur_disciple ] Bonjour,Je suis en train de programmer un logiciel de reconnaissance de formes, et comme vous ne le savez peut-être pas, il est nécessaire de pouvoir Traitement d'images [ par Supopste ] Bonjour à tous et à toutes,J'aimerais savoir quelle était la méthode la plus efficace pour traiter des images. Je m'explique, stocker une image dans u lire d'une ficjier texte et affichage d'une matrice [ par Stiko ] slt,j ai un fichier texte danslequele se trouve une matrice dont les membres sonr séparés par des point- virgule.comment par un programme C++ je peux numerical recipes -> erreurs ? [ par benlustr ] Bonjour à tous, j'ai besoin pour un projet d'un algorithme permettant d'obtenir les valeurs/vecteurs propres d'une matrice tridiagonale. Je me suis to


Nos sponsors


Sondage...

CalendriCode

Février 2010
LMMJVSD
1234567
891011121314
15161718192021
22232425262728

Consulter la suite du CalendriCode

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 1,388 sec (4)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales