في حالات مختلفة ، قد تحتاج إلى تحويل الصور الملونة إلى درجات رمادية أو بالأبيض والأسود ، على سبيل المثال ، في معالجة الصور ، إلخ. لذلك ، في هذه المقالة ، ستتعلم كيفية تحويل صورة إلى تدرج رمادي في C#. علاوة على ذلك ، ستغطي المقالة التدرج الرمادي والثنائي لـ الصور بشكل صريح.
- C# API لتحويل الصورة إلى تدرج الرمادي
- تحويل الصورة إلى تدرج الرمادي في C#
- تحويل الصورة إلى أبيض وأسود باستخدام ثنائي
- احصل على ترخيص API مجاني
C# API لتحويل الصورة إلى تدرج الرمادي - تنزيل مجاني
لتحويل صور RGB الملونة إلى درجات رمادية ، سنستخدم Aspose.Imaging for .NET. إنها واجهة برمجة تطبيقات قوية لمعالجة الصور تتيح لك معالجة تنسيقات الصور الشائعة بسلاسة. يمكنك إما تنزيل API أو تثبيته باستخدام NuGet.
PM> Install-Package Aspose.Imaging
تحويل صورة إلى تدرج الرمادي في C#
فيما يلي خطوات تحويل صورة ملونة إلى درجات رمادية في C#.
- أولاً ، قم بتحميل الصورة باستخدام فئة صورة.
- قم بإلقاء الصورة في كائن RasterCachedImage.
- تخزين الصورة مؤقتًا باستخدام طريقة RasterCachedImage.CacheData().
- تحويل الصورة إلى تدرج رمادي باستخدام طريقة RasterCachedImage.Grayscale().
- أخيرًا ، احفظ الصورة باستخدام طريقة RasterCachedImage.Save(String).
يوضح نموذج التعليمات البرمجية التالي كيفية تحويل صورة إلى تدرج الرمادي باستخدام C#.
// قم بتحميل صورة في مثيل لفئة Image
using (Image image = Image.Load("aspose.jpg"))
{
// قم بإرسال الصورة إلى RasterCachedImage وتحقق مما إذا كانت الصورة مخزنة مؤقتًا
RasterCachedImage rasterCachedImage = (RasterCachedImage)image;
if (!rasterCachedImage.IsCached)
{
// صورة ذاكرة التخزين المؤقت إذا لم تكن مخبأة بالفعل
rasterCachedImage.CacheData();
}
// تحويل الصورة إلى تمثيلها بتدرج الرمادي
rasterCachedImage.Grayscale();
// احفظ الصورة
rasterCachedImage.Save("grayscaled.jpg");
}
صورة الإدخال
فيما يلي نموذج للصورة المستخدمة في هذه المقالة.
تم التحويل إلى تدرج الرمادي
فيما يلي الصورة بعد التحويل إلى التدرج الرمادي.
صورة بتدرج الرمادي في C# - أبيض وأسود مع ثنائية
في الترميز الثنائي ، يمكن أن يكون لكل بكسل في الصورة قيمتان محتملتان فقط ؛ 0 أو 1. هنا ، يشير 0 إلى الغياب و 1 يشير إلى وجود اللون. Aspose.Imaging يدعم طريقتين للترميز الثنائي ، أي الترميز الثنائي مع الثابت والثنائي مع عتبة Otsu.
الثنائية ذات العتبة الثابتة في C#
فيما يلي خطوات تنفيذ التحويل الثنائي على صورة باستخدام عتبة ثابتة.
- أولاً ، قم بتحميل الصورة باستخدام فئة صورة.
- قم بإلقاء الصورة في كائن RasterCachedImage.
- تخزين الصورة مؤقتًا باستخدام طريقة RasterCachedImage.CacheData().
- تحويل الصورة إلى أبيض وأسود باستخدام طريقة RasterCachedImage.BinarizeFixed().
- أخيرًا ، احفظ الصورة باستخدام طريقة RasterCachedImage.Save(String).
يطبق كود C# التالي الترميز الثنائي على صورة ويحولها إلى أبيض وأسود.
// قم بتحميل صورة في مثيل لفئة Image
using (Image image = Image.Load("aspose.jpg"))
{
// قم بإرسال الصورة إلى RasterCachedImage وتحقق مما إذا كانت الصورة مخزنة مؤقتًا
RasterCachedImage rasterCachedImage = (RasterCachedImage)image;
if (!rasterCachedImage.IsCached)
{
// صورة ذاكرة التخزين المؤقت إذا لم تكن مخبأة بالفعل
rasterCachedImage.CacheData();
}
// تحويل الصورة إلى تمثيلها الثنائي
rasterCachedImage.BinarizeFixed(100);
// احفظ الصورة
rasterCachedImage.Save("black and white.jpg");
}
ثنائيات C# مع عتبة Otsu
فيما يلي خطوة لتحويل الصورة إلى أبيض وأسود باستخدام عتبة Otsu.
- أولاً ، قم بتحميل الصورة باستخدام فئة صورة.
- قم بإلقاء الصورة في كائن RasterCachedImage.
- تخزين الصورة مؤقتًا باستخدام طريقة RasterCachedImage.CacheData().
- تحويل الصورة إلى أبيض وأسود باستخدام طريقة RasterCachedImage.BinarizeOtsu().
- أخيرًا ، احفظ الصورة باستخدام طريقة RasterCachedImage.Save(String).
يوضح نموذج الكود التالي كيفية تحويل صورة إلى أبيض وأسود باستخدام عتبة Otsu باستخدام C#.
// قم بتحميل صورة في مثيل لفئة Image
using (Image image = Image.Load("aspose.jpg"))
{
// قم بإرسال الصورة إلى RasterCachedImage وتحقق مما إذا كانت الصورة مخزنة مؤقتًا
RasterCachedImage rasterCachedImage = (RasterCachedImage)image;
if (!rasterCachedImage.IsCached)
{
// صورة ذاكرة التخزين المؤقت إذا لم تكن مخبأة بالفعل
rasterCachedImage.CacheData();
}
// تحويل الصورة إلى تمثيلها الثنائي
rasterCachedImage.BinarizeOtsu();
// احفظ الصورة
rasterCachedImage.Save("black and white.jpg");
}
C# Image to Grayscale Converter - احصل على ترخيص مجاني
يمكنك الحصول على ترخيص مؤقت مجاني من أجل استخدام واجهة برمجة التطبيقات دون قيود التقييم.
استنتاج
في هذه المقالة ، تعلمت كيفية تحويل صورة إلى تدرج الرمادي والأبيض والأسود باستخدام C#. علاوة على ذلك ، لقد رأيت كيفية تطبيق الترميز الثنائي على الصور ذات العتبة الثابتة أو Otsu. علاوة على ذلك ، يمكنك استكشاف المزيد حول واجهة برمجة تطبيقات معالجة الصور C# باستخدام التوثيق. يمكنك أيضًا مشاركة استفساراتك معنا عبر المنتدى.