الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

معالجة الصورة في ال C#

بدأه rsho في 15 أبريل 2008 · 0 رد · 593 مشاهدة · في Microsoft Visual C#.NET
مشاركة: واتساب X فيسبوك تيليجرام
#1

بسم الله الرحمن الرحيم

أقوم بمحاولة كتابة تابع يفوم بتحويل الصورة الملونة الى رمادية فكتبت عة محاولات بعضها كان ناجحا و الاخر لا لكن الكود المكتوب في برنامج كان أسرع ففمت بنسخ الكود و محاولة فهمه و تنفيذه و لكن في التنفيذ أظهر الصورة بشكل خاطئ

الكود هو التالي

(iplab )

protected unsafe void Grayscale( BitmapData sourceData, BitmapData destinationData )

{

// get width and height

int width = sourceData.Width;

int height = sourceData.Height;

int srcOffset = sourceData.Stride - width * 3;

int dstOffset = destinationData.Stride - width;

// do the job

byte * src = (byte *) sourceData.Scan0.ToPointer( );

byte * dst = (byte *) destinationData.Scan0.ToPointer( );

// for each line

for ( int y = 0; y < height; y++ )

{

// for each pixel

for ( int x = 0; x < width; x++, src += 3, dst ++ )

{

*dst = (byte)( cr * src[RGB.R] + cg * src[RGB.G] + cb * src[RGB.B] );

}

src += srcOffset;

dst += dstOffset;

ربما كان استدعيه التابع عندي خطأ هل لي ان اعرف كيف استدعيه بشكل صحيح

علما انني استخدمت

src[0]بدلا من src[rbg.r]

مواضيع مشابهة