begin process at 2012 02 14 09:20:38
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Visual Basic 6

 > 

Multimédia

 > 

Image & Vidéo

 > 

décalage de bit


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

décalage de bit

vendredi 4 août 2006 à 23:30:06 | décalage de bit

pirate75000

Bonjour a tous, je bloque sur un probleme, j'ai une image ecrite en 12bits, je voudrais la reprendre pour faire un decalage de bit de 12 vers 8bits
1er est ce que c'est un decalage vers la gauche ou vers la droite?
2éme est ce que vb6 permet de le faire directement?

sinon quelqu'un pourrait-il eclairer ma lanterne, car là je patoge completment, je comprend rien au decalage de bit

merci d'avance
vendredi 4 août 2006 à 23:59:16 | Re : décalage de bit

econs

Administrateur CodeS-SourceS

Salut,

1°) Passer de 12 à 8 bits ne s'appelle pas un décalage. C'est une compression de données (dans la plupart des cas, çà s'accompagne d'une perte d'information).

000011000010 => 000001100001 (un décalage de 1 bit vers la droite = une division par 2)
000011000010 => 11000010 (compression, sans perte si les 4 premiers bits sont toujours identiques)
000011000010 => ???????? (compression avec pertes selon un algo qui dépendra de tes données d'entrées et de ce que tu souhaites faire de ces données en sortie)

2°) VB6 te permettra de faire ce genre de manipulation, mais ne sera pas aussi rapide qu'une routine en C, par exemple.





Manu

--------------------------------------------------------------------------------------------
Avant de poster un message, n'oubliez pas de consulter le reglement.
samedi 5 août 2006 à 00:10:40 | Re : décalage de bit

pirate75000

merci pour ta reponse, je vais chercher de ce cote deja pour voir
Pour repondre au fait qu'il y a une perte de donnée je m'enfous, car on ne peut pas afficher les 12bits de niveau de gris,
je m'explique.
Mon image est composée du blanc jusque au noir et ceci en 4096 niveau de gris,
soir:
0,1,2......4096 donc moi le niveau 0 de gris en 12bit vas valoir 0 en 8 bit et le 4096 du 12bit va valoir 256 en 8 bit
je ne sais pas si je suis assé clair
mardi 12 septembre 2006 à 15:32:02 | Re : décalage de bit

makram2006

Ce que tu veux faire est tout à fait logique mais tu va avoir une dégradation de la qualité de l'image puisque tu perd l'information qui existe dans les 4 bits de plus faible poids. Tu peux faire le traitement en C puis l'appeler à travers une DLL dans ton programme VB. Concernant le traitement, tu peux pas manipuler 12 bits dans une unité de données, tu peux par exemple manipuler deux pixels en une seule fois (2*12 = 24  = 3*8 = 3 octets). Tu stocke les 3 octets dans un entier (car il supporte 4 octets).
En hexa : 00 0F A7 82
en vert : ton information
00 : c'est le quatrième octet de l'entier que tu va pas l'utiliser.
Supposons l'entier est représenté par la variable TwoPixels, ton programme aura l'allure suivante:
int TwoPixels = GetTwoPixels(...); // GetTwoPixels est à toi de la coder
unsigned char FirstNewPixel = (unsigned char)(TwoPixels>>4); // décalage de 4 bits
unsigned char SecondNewPixel =(unsigned char)(TwoPixels>>16);
mardi 12 septembre 2006 à 15:46:19 | Re : décalage de bit

makram2006

Je te conseille pas de faire un décalage pour modifier la dynamique de l'image, il y a des méthodes plus sophestiquées pour ça : égalisation d'histogramme, requantification, ....
Tu applique aux valeurs des pixels la fonction suivante:



Cette discussion est classée dans : bit, decalage, décalage


Répondre à ce message

Sujets en rapport avec ce message

decalage de bit sous access [ par SpoonLoop ] Boujour,Est il possible sous ACCESS de faire des decalages (bitshift) de bits (droite, gauche...), de tester la valeur d'un BIT ect..merci.... Décalage vertical à l'impression [ par VieilEric ] Vieil Eric[size=3]Quand une ligne contient différentes polices (Arial et Symbol par exemple), j'observe un mauvais alignement vertical.Je peux corrige Décalage controle [ par scoobydoos ] Salut,Je voudrais décaler les controles ou des textbox dans ma fenetre par rapport au bord droit de celui-ci si on le retréssit par exemple.Merci par décalage de bits [ par Osris6880 ] Osiris 6880J'aurais besoin d'effectuer un décalage circulaire sur la gauche de 25 bits mais je ne sais pas comment faire.Merci de prendre un peu de te Decalage de bits [ par lapolo13 ] SalutJ'ai besoin de décaler des bits vers la droite. Je voulais savoir si il existe une fonction de Vb6 qui permet de le faire;De plus est ce que quel Je cherche Bit-Arts FUSION... [ par Jiggy35 ] Bonjour,je recherche ce logiciel qui permet de compiler les projets VB avec les dépendances afin d'avoir un EXE autonôme.je sais qu'il y a eu déjà plu Conversion BIT et reconstruction !! [ par biowaste ] Mon problème est simple Je veux prendre n'importe quel type de fichier que ce soit .exe., .jpg, .doc, .mp3 etc et ensuite le convertir en bit du genre ESCAPE CODE reproduit un bit-image [ par djief ] AU secour!Je dois reproduire des graphiques provenant d'une carte d'imprimante. Cette carte envoie en escape code ( enfin je crois). Y-a-t'il quelqu'u Copie bit par bit [ par nono1135 ] Salutest ce que quelqu'un sait comment copier un fichier bit par bitd'un emplacement à un autre ?merciMet@lnono comment envoyer un top (1 bit) sur le port série [ par dgelin ] Salut,Mon objectif est d'envoyer un front montant sur une broche du port série.Pour cela, j'utilise VB mais pas moyen de trouver quelque part une expl


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Février 2012
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
272829    

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 : 4,602 sec (3)

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