Fusion immédiate de 2 images

Soyez le premier à donner votre avis sur cette source.

Vue 11 144 fois - Téléchargée 1 869 fois

Description

Ce programme permet de fusionner 2 images très rapidement en utilisant les fonctions API GetDIBits et SetDIToDevice, ce qui donne une rapidité importante. De plus, vous pouvez défininir le pourcentage de fusion entre les deux images. Vous pouvez également faire un dégradé de fusion entre les deux images dans le sens vertical ou horizontal. Cette source fait appel à ma librairie de gestion d'image DKS_GESTION_IMAGE disponible sur ce site. Je vous conseille d'utiliser la version compilée pour voir les résultats car elle est beaucoup plus rapide en compilée !

Cette source est abondament commenté, comme d'habitude avec mes sources, et elle est largement compréhensible pour quiconque à déjà manipuler quelques fonctions graphiques de l'API Windows.

Source / Exemple :


'Voir le zip

Conclusion :


Rapidité de la source améliorée en stockant le pourcentage de fusion des deux images dans une variable (chose que j'avais oublié de faire, honte à moi !)
De plus, j'ai rajoutté un compteur pour calculer le temps mis, et j'ai également rafraichit l'image finale lors d'un scroll du slider. Temps enregistré sur un Athlon XP 2400+ : 16 ms ! (temps constant relevé avec le programme compilé bien entendu) Cà en fait un calcul rapide tout de même quasi immédiat ! Si quelqu'un obtient un meilleur temps (en utilisant uniquement VB et les fonctions de l'API, cà m'interesse !)

Nouvelle mise à jour pour gérer la fusion de 2 images en utilisant les composantes HLS (luminosité, contraste et teinte) plutôt que les composantes RGB classiques. L'effet n'est pas celui escompté, mais donne tout de même un effet assez sympathique. Cependant, la rapidité est bien moindre étant donné que les calculs sont un peu plus compliqué : il faut convertir les couleurs RGB en HLS puis les reconvertir en RGB !

Je laisse cette dernière méthode surtout pour ceux qui souhaite voir comment convertir du RGB en HLS, car la fusion des 2 images avec ce procédé n'est pas des plus esthétiques !

Nouvelle mise à jour majeure pour faire un dégradé entre 2 images avec une fusion bien entendu, le résultat est plutôt sympa ! ;)

Nouvelle mise à jour : un dégradé en diagonal entre les images.

Codes Sources

A voir également

Ajouter un commentaire Commentaires
Messages postés
15814
Date d'inscription
jeudi 8 août 2002
Statut
Modérateur
Dernière intervention
4 mars 2013
118
merci CORBnet, malheureusement, j'ai plus vraiment le temps de faire de nouvelles sources en vb6, et j'sui passé au java en plus.
Messages postés
47
Date d'inscription
vendredi 3 novembre 2000
Statut
Membre
Dernière intervention
7 janvier 2012

superbissime Merci chui complétemen daccord avec Yaovi
Messages postés
214
Date d'inscription
jeudi 10 mars 2005
Statut
Membre
Dernière intervention
12 avril 2008

merci Dark c mieux que le code précédent de NIX et beaucoup plus rapide
Messages postés
15814
Date d'inscription
jeudi 8 août 2002
Statut
Modérateur
Dernière intervention
4 mars 2013
118
J'en profite d'ailleurs pour faire une petite mise à jour en permettant un dégradé diagonal entre les 2 images.

DarK Sidious
Messages postés
15814
Date d'inscription
jeudi 8 août 2002
Statut
Modérateur
Dernière intervention
4 mars 2013
118
Merci yaovi, c'est vraiment sympa ;)

DarK Sidious
Afficher les 38 commentaires

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.