Image en niveaux de gris

La conversion d’images couleur en noir et blanc est une technique populaire en photographie et en design depuis des décennies. Si la couleur peut ajouter de l’éclat, elle peut également détourner l’attention des éléments essentiels d’une image. La conversion en noir et blanc vous permet de vous concentrer sur la composition, le contraste et la texture, en faisant ressortir les détails les plus fins qui pourraient se perdre dans une scène colorée.

Cette conversion est particulièrement utile dans la photographie professionnelle, l’impression et diverses applications de conception où la simplicité et la clarté sont essentielles.

API de conversion d’images

Vous pouvez convertir, modifier ou manipuler des images BMP, GIF, JPEG, PSD, TIFF, WEBP, PNG et d’autres formats de fichiers pris en charge à l’aide de Aspose.Imaging Cloud. Les organisations disposant d’énormes bases de données d’images préfèrent conserver des images en niveaux de gris pour des raisons de taille. Par exemple, certaines agences chargées de l’application de la loi considèrent les traits du visage et la géométrie comme étant aussi importants ou efficaces que la couleur. Examinons les API disponibles pour la conversion d’images en vraies couleurs en niveaux de gris avec l’API Aspose.Imaging Cloud.

| API | Description |

| —————————– | —————- |

| GET /imaging/{name}/grayscale | Mettre en niveaux de gris une image existante |

| POST /imaging/grayscale | Mettre en niveaux de gris une image. Les données d’image sont transmises sous forme de contenu multipart/form-data indexé à zéro ou sous forme de flux de corps brut |

L’extrait de code C# .NET suivant vous permet de convertir une image en noir et blanc :

// Obtenez AppKey et AppSID depuis https://dashboard.aspose.cloud/
// Installer le package Nuget Aspose.Imaging-Cloud
// Pour des exemples complets et des fichiers de données, veuillez consulter https://github.com/aspose-imaging-cloud/aspose-imaging-cloud-dotnet

const string MyAppKey = "";
const string MyAppSid = "";
this.ImagingApi = new ImagingApi(MyAppKey, MyAppSid, "https://api.aspose.cloud/", "v3.0", false);
const string SaveImageFormat = "bmp";
string fileName = "Test.bmp";

// Télécharger l'image locale sur le stockage cloud
using (FileStream localInputImage = File.OpenRead(fileName))
{
    var uploadFileRequest = new UploadFileRequest(fileName, localInputImage);
    FilesUploadResult result = this.ImagingApi.UploadFile(uploadFileRequest);
}

string folder = null; 
string storage = null; // using default Cloud Storage

var request = new GrayscaleImageRequest(fileName, folder, storage);
Console.WriteLine($"Call Grayscale Image");
using (Stream updatedImage = this.ImagingApi.GrayscaleImage(request))
{
    // Télécharger l'image mise à jour sur le stockage cloud
    string outPath = "Grayscale_out." + SaveImageFormat;
    var uploadFileRequest = new UploadFileRequest(outPath, updatedImage);
    FilesUploadResult result = this.ImagingApi.UploadFile(uploadFileRequest);
}

Cet extrait de code télécharge le fichier d’entrée du stockage local vers le stockage Cloud, puis convertit l’image RVB en image en niveaux de gris. L’API enregistre une image en niveaux de gris de sortie dans le stockage Cloud qui ressemble à la capture d’écran ci-dessous :

Image d’entrée

Image de sortie

Image en niveaux de gris

Voyons un autre scénario dans lequel le fichier source est transmis dans la requête et la réponse contient une image en niveaux de gris convertie qui est enregistrée dans le stockage local. Cette approche ne nécessite pas de télécharger l’image à partir du stockage Cloud. Vous trouverez ci-dessous l’extrait de code C# basé sur ce flux de travail :

// Obtenez AppKey et AppSID depuis https://dashboard.aspose.cloud/
// Installer le package Nuget Aspose.Imaging-Cloud
// Pour des exemples complets et des fichiers de données, veuillez consulter https://github.com/aspose-imaging-cloud/aspose-imaging-cloud-dotnet

Console.WriteLine("Grayscales the image from request body");
const string MyAppKey = "";
const string MyAppSid = "";
this.ImagingApi = new ImagingApi(MyAppKey, MyAppSid, "https://api.aspose.cloud/", "v3.0", false);
const string SaveImageFormat = "png";
string fileName = "WaterMark.png";
using (FileStream inputImageStream = File.OpenRead(ImagingBase.PathToDataFiles + fileName))
{
    string storage = null; // We are using default Cloud Storage
    string outPath = null; // Path to updated file (if this is empty, response contains streamed image)
    var request = new CreateGrayscaledImageRequest(inputImageStream, outPath, storage);
    Console.WriteLine($"Call CreateGrayscale Image");
    using (Stream updatedImage = this.ImagingApi.CreateGrayscaledImage(request))
    {
        SaveUpdatedSampleImageToOutput(updatedImage, true, SaveImageFormat);
    }
}

Vous vous demandez comment utiliser la même fonctionnalité dans d’autres langages de programmation ? Pas de soucis, les Aspose.Imaging Cloud SDK sont disponibles pour tous les langages courants, ce qui vous permet d’appeler facilement l’API depuis vos plateformes préférées. De plus, nous avons également porté des exemples de conversion d’images en niveaux de gris vers les langages pris en charge, notamment Python, Java, PHP, Node.js et Ruby.

L’API Cloud Aspose.Imaging peut faire passer vos applications au niveau supérieur. De nombreux autres correctifs et maintenances font également partie de cette version, notamment des correctifs d’exceptions et des améliorations pour l’exportation d’images multipages. Vous pouvez consulter un aperçu dans Notes de version pour plus de détails. Vous pouvez vous inscrire gratuitement et commencer à apprendre l’API dès aujourd’hui.

Liens utiles

]

Article connexe: