GRAPHIQUE: FUSION DE 2 IMAGES TRÈS RAPIDEMENT

Gorgot Messages postés 95 Date d'inscription lundi 28 janvier 2002 Statut Membre Dernière intervention 21 février 2008 - 30 nov. 2002 à 01:57
cs_Lapou Messages postés 30 Date d'inscription vendredi 23 juillet 2004 Statut Membre Dernière intervention 11 juin 2008 - 28 juil. 2004 à 14:40
Cette discussion concerne un article du site. Pour la consulter dans son contexte d'origine, cliquez sur le lien ci-dessous.

https://codes-sources.commentcamarche.net/source/5212-graphique-fusion-de-2-images-tres-rapidement

cs_Lapou Messages postés 30 Date d'inscription vendredi 23 juillet 2004 Statut Membre Dernière intervention 11 juin 2008 1
28 juil. 2004 à 14:40
Bonjour !

Quelle est la différence avec [url]http://www.vbfrance.com/code.aspx?ID=21354/url, "FUSION IMMÉDIATE DE 2 IMAGES"

Merci beaucoup
Bonne journée
cs_AntiSlash Messages postés 61 Date d'inscription dimanche 21 juillet 2002 Statut Membre Dernière intervention 23 avril 2003
20 mars 2003 à 22:13
merci, je vais y travailler quand j'aurais le temps !
rem: une fois compilée, c'est en effet plus rapide...
si ya d'autres remarques, n'hésitez pas...
Proger Messages postés 248 Date d'inscription vendredi 10 novembre 2000 Statut Membre Dernière intervention 19 décembre 2008
19 mars 2003 à 16:02
Idée : plutôt que de mettre les pixels dans une matrice (buff1, buff2, type Long) , si tu mets directement les composant r,g,b,a dans une liste de type Byte, on n'utilise plus :
- rtlmovememory pour décomposer le pixel en composante
- 2 for-next mais 1 seul
bref, economie d'appel aux api (rtlmovememory, et fornext qui est une api vb) donc gain de temps probable.
Note : il faut tester la vitesse dans la version compilé et non pas interprété par vb.
super les api getdibits et setdibits!
ah oui, dernière trouvaille : le do until ... loop est plus rapide que le for...next quand tu compiles.
Proger Messages postés 248 Date d'inscription vendredi 10 novembre 2000 Statut Membre Dernière intervention 19 décembre 2008
1 déc. 2002 à 21:31
Voila :)
Sans utiliser les fonctions de base (devrais-je dire : de mer...credi) fourni par vb, on peut faire des bonnes applications.

Les APIs utilisé dans cette source sont a réutiliser pour faire votre propre utilitaire de filtre graphique : il sera difficile de faire plus rapide (on manipule les bitmap directement en mémoire, sans passer par .point ou même setpixel)
L'exemple ici est de faire une fusion de deux images, mais on peut imaginer bien d'autres actions.
cs_AntiSlash Messages postés 61 Date d'inscription dimanche 21 juillet 2002 Statut Membre Dernière intervention 23 avril 2003
30 nov. 2002 à 11:13
Gorgot>> c'est normal, j'ai pas mis la fonction de reconnaissance du mode... change
Iobj = CreateBitmap(W + 1, H, 1, 32, FinalColor(0, 0))
par
Iobj = CreateBitmap(W + 1, H, 1, xxxxx, FinalColor(0, 0)) avec xxxx la valeur de ton mode de couleur... Mais je vais changer mon code pour qu'il y est plus de prob.
Anthomicro>> Je prefere les choses compliquées ! (je connaissais pas cette api)
Proger Messages postés 248 Date d'inscription vendredi 10 novembre 2000 Statut Membre Dernière intervention 19 décembre 2008
30 nov. 2002 à 11:07
Anthomicro > marche pas sous w95 l'api alphablend!
Gorgot > il faut que ton bureau soit en mode couleurs 32bits
cs_Anthomicro Messages postés 9433 Date d'inscription mardi 9 octobre 2001 Statut Membre Dernière intervention 13 avril 2007 8
30 nov. 2002 à 08:00
Plein de code pour pas grand chose ( ! )

http://www.vbfrance.com/article.aspx?Val=4155

Voilà
Gorgot Messages postés 95 Date d'inscription lundi 28 janvier 2002 Statut Membre Dernière intervention 21 février 2008
30 nov. 2002 à 01:57
hmmz quand je clique sur le bouton, il n'y a rien qui se passe... il manque p-e quelque chose... Merci de ta réponse.

Gorgot
Rejoignez-nous