الصورة إلى تدرج الرمادي

لقد كان تحويل الصور الملونة إلى الأبيض والأسود تقنية شائعة في التصوير والتصميم لعقود من الزمن. ورغم أن اللون قد يضيف حيوية، فإنه قد يصرف الانتباه أيضًا عن العناصر الأساسية للصورة. ويتيح لك تحويل الصور إلى الأبيض والأسود التركيز على التركيب والتباين والملمس، مما يبرز التفاصيل الدقيقة التي قد تضيع في مشهد ملون.

يُعد هذا التحويل مفيدًا بشكل خاص في التصوير الفوتوغرافي الاحترافي والطباعة وتطبيقات التصميم المختلفة حيث يكون البساطة والوضوح هما المفتاح.

واجهة برمجة تطبيقات تحويل الصور

يمكنك تحويل أو تحرير أو معالجة صور BMP وGIF وJPEG وPSD وTIFF وWEBP وPNG وغيرها من تنسيقات الملفات المدعومة باستخدام Aspose.Imaging Cloud. تفضل المؤسسات التي لديها قواعد بيانات ضخمة من الصور الاحتفاظ بالصور ذات التدرج الرمادي لأسباب تتعلق بالحجم. على سبيل المثال، قد تعتبر بعض وكالات إنفاذ القانون ملامح الوجه والهندسة مهمة أو فعالة مقارنة بالألوان. دعنا نلقي نظرة على واجهات برمجة التطبيقات المتاحة لتحويل الصور ذات الألوان الحقيقية إلى تدرج الرمادي باستخدام واجهة برمجة تطبيقات Aspose.Imaging Cloud.

| واجهة برمجة التطبيقات | الوصف |

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

| GET /imaging/{name}/grayscale | تحويل صورة موجودة إلى اللون الرمادي |

| POST /imaging/grayscale | قم بتدرج الصورة في درجات الرمادي. يتم تمرير بيانات الصورة كمحتوى بيانات متعدد الأجزاء/نموذجي مفهرس بدون فهرس أو كدفق نص خام |

يتيح لك مقطع التعليمات البرمجية C# .NET التالي تحويل الصورة إلى الأبيض والأسود:

// احصل على AppKey وAppSID من https://dashboard.aspose.cloud/
// تثبيت حزمة Nuget Aspose.Imaging-Cloud
// للحصول على أمثلة كاملة وملفات البيانات، يرجى الانتقال إلى 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";

// تحميل الصورة المحلية إلى التخزين السحابي
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))
{
    // تحميل الصورة المحدثة إلى التخزين السحابي
    string outPath = "Grayscale_out." + SaveImageFormat;
    var uploadFileRequest = new UploadFileRequest(outPath, updatedImage);
    FilesUploadResult result = this.ImagingApi.UploadFile(uploadFileRequest);
}

يقوم مقتطف التعليمات البرمجية هذا بتحميل ملف الإدخال من التخزين المحلي إلى التخزين السحابي ثم تحويل صورة RGB إلى صورة بدرجات الرمادي. تحفظ واجهة برمجة التطبيقات صورة بدرجات الرمادي الناتجة في التخزين السحابي والتي تبدو مثل لقطة الشاشة أدناه:

صورة الإدخال

صورة الإخراج

صورة بدرجات الرمادي

دعنا نلقي نظرة على سيناريو آخر حيث يتم تمرير ملف المصدر في الطلب وتحتوي الاستجابة على صورة رمادية اللون محولة يتم حفظها في وحدة تخزين محلية. لا يتطلب هذا النهج تحميل الصورة أو تنزيلها من وحدة تخزين سحابية. فيما يلي مقتطف التعليمات البرمجية بلغة C# استنادًا إلى سير العمل هذا:

// احصل على AppKey وAppSID من https://dashboard.aspose.cloud/
// تثبيت حزمة Nuget Aspose.Imaging-Cloud
// للحصول على أمثلة كاملة وملفات البيانات، يرجى الانتقال إلى 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);
    }
}

هل تتساءل عن العمل بنفس الميزة في لغات برمجة أخرى؟ لا تقلق، مجموعات تطوير البرامج Aspose.Imaging Cloud متاحة لجميع اللغات الشائعة، لذا يمكنك بسهولة استدعاء واجهة برمجة التطبيقات من منصاتك المفضلة. علاوة على ذلك، قمنا أيضًا بنقل الصور إلى أمثلة تحويل التدرج الرمادي إلى اللغات المدعومة بما في ذلك Python وJava وPHP وNode.js وRuby.

يمكن لـ Aspose.Imaging Cloud API أن يأخذ تطبيقاتك خطوة للأمام إلى المستوى التالي. كما أن العديد من الإصلاحات والصيانة الأخرى تشكل جزءًا من هذا الإصدار؛ بما في ذلك بعض إصلاحات الاستثناءات والتحسينات لتصدير الصور متعددة الصفحات. يمكنك الحصول على نظرة عامة على ملاحظات الإصدار لمزيد من التفاصيل. يمكنك التسجيل مجانًا والبدء في تعلم واجهة برمجة التطبيقات اليوم.

روابط مفيدة

]

منشور ذو صلة: