Novembre 2024 | Lun | Mar | Mer | Jeu | Ven | Sam | Dim |
---|
| | | | 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 | | Calendrier |
|
|
| Requète | |
| | Auteur | Message |
---|
Jicehel
Nombre de messages : 5947 Age : 52 Localisation : 77500 Date d'inscription : 18/04/2011
| Sujet: Requète Lun 15 Mar 2021 - 12:01 | |
| Bonjour les amis pour ceux qui se souviennent encore de moi. J'ai pas mal oublié Panoramic mais j'aurais besoin de faire un programme et je me demande si quelqu'un serait assez gentil pour le faire pour moi car j'ai trop oublié. L'idée est simple: Coder une image BMP point par point en code hexadécimal texte Ne vous inquiétez pas je vais expliquer et donner des exemples. Le truc c'est qu'il faut donc remplacer les couleurs par une palette fixe. Quel que soit l'ordre de l'image d'origine, le noir doit rester le noir, en position 0, etc. L'ordre de la palette est: Couleur 0: FF000000 FF00FF00 FFFF0000 FFFFB400 FFFFFF00 FF964B00 FF0000FF FF800080 FF808080 FFFFFFFF FF00FFFF FFFF00FF FF800000 FF008000 FF000080 Couleur 15: FFFFC0CB Voici une image d'exemple Et on doit coder ça pour que ça utilise un code hexadécimal donc 4 points par code hexa. Ce qui donne par exemple: 0x00, 0x00, 0x00, 0x11, 0x11, 0x00, 0x00, 0x00, 0x00, 0x00, 0x11, 0x23, 0x32, 0x11, 0x00, 0x00, 0x00, 0x01, 0x22, 0x22, 0x22, 0x22, 0x10, 0x00, 0x00, 0x12, 0x21, 0x12, 0x21, 0x12, 0x21, 0x00, 0x00, 0x12, 0x14, 0x22, 0x22, 0x41, 0x21, 0x00, 0x01, 0x21, 0x41, 0x22, 0x22, 0x14, 0x12, 0x10, 0x01, 0x22, 0x21, 0x22, 0x22, 0x12, 0x22, 0x10, 0x01, 0x12, 0x22, 0x22, 0x22, 0x22, 0x21, 0x10, 0x01, 0x51, 0x22, 0x12, 0x21, 0x22, 0x15, 0x10, 0x01, 0x25, 0x11, 0x22, 0x22, 0x11, 0x52, 0x10, 0x12, 0x15, 0x52, 0x11, 0x11, 0x25, 0x51, 0x21, 0x12, 0x12, 0x55, 0x55, 0x55, 0x55, 0x21, 0x21, 0x01, 0x11, 0x25, 0x55, 0x55, 0x52, 0x11, 0x10, 0x01, 0x22, 0x11, 0x25, 0x52, 0x11, 0x22, 0x10, 0x12, 0x33, 0x22, 0x11, 0x11, 0x22, 0x33, 0x21, 0x11, 0x11, 0x11, 0x00, 0x00, 0x11, 0x11, 0x11, Pour l'image ci dessus mais l'ordre des couleurs n'est pas bon, donc les valeurs ne sont pas celles que j'espérerais Est-ce que ce que j'écris est compréhensible et est-ce que quelqu'un pourrait me faire ce petit outil ? Si vous avez le temps, le top serait que la palette des 16 couleurs soit paramétrable et le top serait aussi d'avoir un message d'erreur qui indique si une couleur de l'image n'est pas présente dans la palette et qui demande éventuellement par laquelle il faut la remplacer... D'avance merci si quelqu'un peut me rendre ce service. | |
| | | Jicehel
Nombre de messages : 5947 Age : 52 Localisation : 77500 Date d'inscription : 18/04/2011
| Sujet: Re: Requète Lun 15 Mar 2021 - 12:02 | |
| - Jicehel a écrit:
- Bonjour les amis pour ceux qui se souviennent encore de moi.
J'ai pas mal oublié Panoramic mais j'aurais besoin de faire un programme et je me demande si quelqu'un serait assez gentil pour le faire pour moi car j'ai trop oublié.
L'idée est simple: Coder une image BMP point par point en code hexadécimal texte
Ne vous inquiétez pas je vais expliquer et donner des exemples.
Le truc c'est qu'il faut donc remplacer les couleurs par une palette fixe. Quel que soit l'ordre de l'image d'origine, le noir doit rester le noir, en position 0, etc.
L'ordre de la palette est: Couleur 0: FF000000 FF00FF00 FFFF0000 FFFFB400 FFFFFF00 FF964B00 FF0000FF FF800080 FF808080 FFFFFFFF FF00FFFF FFFF00FF FF800000 FF008000 FF000080 Couleur 15: FFFFC0CB
Voici une image d'exemple (16x16 en 4 bits)
Et on doit coder ça pour que ça utilise un code hexadécimal donc 4 points par code hexa.
Ce qui donne par exemple: 0x00, 0x00, 0x00, 0x11, 0x11, 0x00, 0x00, 0x00, 0x00, 0x00, 0x11, 0x23, 0x32, 0x11, 0x00, 0x00, 0x00, 0x01, 0x22, 0x22, 0x22, 0x22, 0x10, 0x00, 0x00, 0x12, 0x21, 0x12, 0x21, 0x12, 0x21, 0x00, 0x00, 0x12, 0x14, 0x22, 0x22, 0x41, 0x21, 0x00, 0x01, 0x21, 0x41, 0x22, 0x22, 0x14, 0x12, 0x10, 0x01, 0x22, 0x21, 0x22, 0x22, 0x12, 0x22, 0x10, 0x01, 0x12, 0x22, 0x22, 0x22, 0x22, 0x21, 0x10, 0x01, 0x51, 0x22, 0x12, 0x21, 0x22, 0x15, 0x10, 0x01, 0x25, 0x11, 0x22, 0x22, 0x11, 0x52, 0x10, 0x12, 0x15, 0x52, 0x11, 0x11, 0x25, 0x51, 0x21, 0x12, 0x12, 0x55, 0x55, 0x55, 0x55, 0x21, 0x21, 0x01, 0x11, 0x25, 0x55, 0x55, 0x52, 0x11, 0x10, 0x01, 0x22, 0x11, 0x25, 0x52, 0x11, 0x22, 0x10, 0x12, 0x33, 0x22, 0x11, 0x11, 0x22, 0x33, 0x21, 0x11, 0x11, 0x11, 0x00, 0x00, 0x11, 0x11, 0x11,
Pour l'image ci dessus mais l'ordre des couleurs n'est pas bon, donc les valeurs ne sont pas celles que j'espérerais
Est-ce que ce que j'écris est compréhensible et est-ce que quelqu'un pourrait me faire ce petit outil ? Si vous avez le temps, le top serait que la palette des 16 couleurs soit paramétrable et le top serait aussi d'avoir un message d'erreur qui indique si une couleur de l'image n'est pas présente dans la palette et qui demande éventuellement par laquelle il faut la remplacer...
D'avance merci si quelqu'un peut me rendre ce service. | |
| | | Jack Admin
Nombre de messages : 2395 Date d'inscription : 28/05/2007
| Sujet: Re: Requète Lun 15 Mar 2021 - 18:33 | |
| Content de te revoir sur le forum. Cela faisait plusieurs années qu'on ne t'avait pas vu. - Jicehel a écrit:
- Est-ce que ce que j'écris est compréhensible
Ben, pas vraiment et j'ai des difficultés à comprendre. Ce que je peux dire, c'est que le programme en Panoramic tournera autour de: COLOR_PIXEL_RED(N,X,Y) COLOR_PIXEL_GREEN(N,X,Y) COLOR_PIXEL_BLUE(N,X,Y) qui récupèrent les composantes Rouge, Verte et Bleue de la couleur du pixel en (X,Y) de l'objet (PICTURE) numéro N. Ce que je ne comprends pas: 1 - tu nous donnes une palette qui je pense comporte une composante (FF) de transparence en plus des composantes R,V,B ? Cette palette est composée de mots de 32 bits alors que la palette d'une image BMP est composée de mots de 24 bits !!! 2 - tu demandes de traiter une image BMP mais tu nous donnes un exemple :walk_d10.jpg qui n'est pas codé en BMP, mais en JPG !!! 3 - ton exemple est une image de 16 pixels x 16 pixels et ton tableau fait 8 colonnes sur 16 lignes ! Que représente ton tableau par rapport à ton exemple ? Peux-tu développer la phrase: - Jicehel a écrit:
- L'idée est simple: Coder une image BMP point par point en code hexadécimal texte
et nous mettre un exemple simple d'une image BMP et ce qu'il faut obtenir, avec de la cohérence dans les explications ? _________________ username : panoramic@jack-panoramic password : panoramic123 | |
| | | Jicehel
Nombre de messages : 5947 Age : 52 Localisation : 77500 Date d'inscription : 18/04/2011
| Sujet: Re: Requète Lun 15 Mar 2021 - 21:06 | |
| Merci pour ta réponse Jack. Oui, dans Paint.net, il rajoute un FF devant la composante RVB. Je pourrais bien dire que j'ai fais exprès de la laisser mais non, c'est une faute d'inattention, j'aurais du virer le premier FF et si tu me le permets, j'éditerais le premier message pour les retirer. Pour le BMP, désolé, le fichier source est en bmp mais le forum le converti en .jpg à priori. J'ai trouvé un hébergeur d'image qui garde le bmp Le tableau est le résultat de la conversion. tu as 2 pixels par colonnes. Tu as le premier digit qui représente la couleur du point 1 et le deuxième celui du point 2, tu as donc la moitié des points en colonnes. Voilà, j'espère que c'est plus clair comme ça mais si ce n'est pas le cas dis le moi. | |
| | | Jack Admin
Nombre de messages : 2395 Date d'inscription : 28/05/2007
| Sujet: Re: Requète Mar 16 Mar 2021 - 8:44 | |
| Donc, si je récapitule ta demande:
On a 2 entrées: 1 - une palette constituée de 16 couleurs numérotées de 0 à 15 (0 à F en hexa). Les couleurs sont constituées de 6 caractères hexadécimaux, les 2 premiers (de 00 à FF) codent la composante rouge, les 2 suivants, la composante verte, les 2 derniers, la composante bleue. 2 - une image au format BMP
Et une sortie: - Des suites de chiffres de 0 à 15, chaque chiffre correspondant à la couleur d'un pixel de l'image, trouvée dans la palette. Par exemple, le code 3 correspond à la 4ème couleur de la palette. - Les codes des pixels sont regroupés 2 par 2 pour former un nombre de 0 à FF. Par exemple, si la couleur d'un pixel est 9 et la couleur du suivant est A, les 2 pixels forment le code 0A. - Les pixels de l'image sont balayés par ligne, une suite correspond aux codes de la première ligne, puis de la deuxième et ainsi de suite.
En option: - affichage d'une alerte si la couleur d'un pixel de l'image n'est pas dans la palette, et demande du code de la palette à affecter à ce pixel. - possibilité de modifier les couleurs de la palette.
Ai-je bien compris ?
Remarque: le regroupement de pixels 2 par 2 sur une ligne implique que le nombre de pixels de ton image sur la largeur soit pair, ce qui n'est pas toujours le cas. Que doit-on faire dans le codage du dernier pixel d'une ligne si le nombre de colonnes de ton image est impair ? Exemple: ton image a 51 pixels de largeur. Comment code t-on le dernier pixel ? 1 nombre hexa de 0 à F, ou un code de 00 à F0 ? | |
| | | Jack Admin
Nombre de messages : 2395 Date d'inscription : 28/05/2007
| Sujet: Re: Requète Ven 19 Mar 2021 - 10:05 | |
| Allo, allo, Jicehel ? Que doit-on faire dans le codage du dernier pixel d'une ligne si le nombre de colonnes de ton image est impair ? Allo, allo, Jicehel ? Je ne peux pas commencer à coder si tu ne me réponds pas ! Allo Jicehel ? Es-tu là ? _________________ username : panoramic@jack-panoramic password : panoramic123 | |
| | | Yannick
Nombre de messages : 8635 Age : 53 Localisation : Bretagne Date d'inscription : 15/02/2010
| Sujet: re Jeu 1 Avr 2021 - 21:58 | |
| Jicehel hou hou... pourquoi tu veux refaire la roue ? Ce que tu demandes est dans le fichier Bmp il me semble. A partir de l octet 53 la palette de 6 couleur sur 8bits chacune (de 0 à 5) A partir de l'octet 78 l image avec deux pixel par octet vu que la palette est < 16 couleurs | |
| | | Contenu sponsorisé
| Sujet: Re: Requète | |
| |
| | | | Requète | |
|
| Permission de ce forum: | Vous ne pouvez pas répondre aux sujets dans ce forum
| |
| |
| |