Zoom sans rééchantillonage

Signaler
Messages postés
222
Date d'inscription
mercredi 8 septembre 2004
Statut
Membre
Dernière intervention
30 mars 2016
-
cs_VinceVG
Messages postés
222
Date d'inscription
mercredi 8 septembre 2004
Statut
Membre
Dernière intervention
30 mars 2016
-
Bonjour,
Je voudrais faire une fonction de zoom qui se contente de grossir chaque pixel en préservant mon image. Actuellement quelle que soit la méthode de réchantillonage utilisée, ça crée un flou et donc si je zoom et dezoom et rezoom... mon image devient complètement flou. Moi je voudrais pouvoir uniquement grossir chaque pixel.
Voilà mon code et le contraire pour le dezoomage.

J'utilise Visual studio 2015 community.

        private void buttonZoomPlus_Click(object sender, EventArgs e)
        {
            Image1 = new Bitmap("ImgTemp.bmp");
            float FacteurZoom = 1.1f;
            Bitmap ImageZoomé = new Bitmap(Image1, Convert.ToInt32(Image1.Width * FacteurZoom), 
                Convert.ToInt32(Image1.Height * FacteurZoom));
            Graphics grap = Graphics.FromImage(ImageZoomé);
            grap.InterpolationMode = System.Drawing.Drawing2D.InterpolationMode.Low;
            Image1.Dispose();
            ImageZoomé.Save("ImgTemp.bmp");
            pictureBoxEcran.Image = ImageZoomé;
       }

3 réponses

Messages postés
14241
Date d'inscription
mardi 11 mars 2003
Statut
Contributeur
Dernière intervention
18 février 2020
343
Bonjour,

Peut être peux tu essayer une bibliothèque de traitement de l'image
Voir ici
http://codes-sources.commentcamarche.net/forum/affich-10061913-accelerer-un-traitement-d-image-par-decoupe-ou-non#13
Messages postés
222
Date d'inscription
mercredi 8 septembre 2004
Statut
Membre
Dernière intervention
30 mars 2016

Je vais bien sûr regarder cette bibliothèque même si ce n'est pas mon souhait actuel. Sinon j'envisage de grossir chaque pixel à la mano.
Whismeril
Messages postés
14241
Date d'inscription
mardi 11 mars 2003
Statut
Contributeur
Dernière intervention
18 février 2020
343
Bonjour, si on est venu à chercher des outils externes, c'est que ceux de la framework ne sont pas assez performant.
Par exemple un miroir sur une image en 256 niveau de gris était tout pixelisé.
cs_VinceVG
Messages postés
222
Date d'inscription
mercredi 8 septembre 2004
Statut
Membre
Dernière intervention
30 mars 2016

Merci pour votre commentaire.
Je suis débutant en C# je crois que je viens d'en trouver une limite.
Messages postés
14742
Date d'inscription
lundi 11 juillet 2005
Statut
Modérateur
Dernière intervention
17 février 2020
91
Hello,

Je m'avance peut-être un peu trop mais j'aurais une approche différente de la tienne. Plutôt que d'appliquer les différents zoom sur les images résultantes, pourquoi ne pas les appliquer sur l'image source? Tu garderais ainsi ta qualité de base, non?
cs_VinceVG
Messages postés
222
Date d'inscription
mercredi 8 septembre 2004
Statut
Membre
Dernière intervention
30 mars 2016

Obnubilé par mes extrapolations hasardeuses je ne l'ai pas vu. Tu as tout a fait raison et merci de ta remarque.
Mais ça ne règle pas mon problème. Je voudrais vraiment zoomer sur de beau pixels bien carrés.