معالجة الصور الرقمية 5

معالجة الصور الرقمية

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

أنواع الصورة الرقمية

هي الصورة التي تمثل بمصفوفة بعداها MxN  وهي تحوي اللونين الأسود والأبيض فقط. بحيث ياخذ كل بكسل قيمة تمثل لون فالأسود يأخذ قيمة 0 بينما الأبيض يأخذ قيمة 1. (لا يوجد لون رمادي في هذا النوع من الصور).

هي صورة تمثل بمصفوفة ثنائية البعد MxN  وعناصرها من النوع doubleتقع بين المجال [0,1] حيث 0 يمثل الأسود و 1 الأبيض و ما بينهما درجات اللون الرمادي. كل عنصر في المصفوفة يمثل درجة لون لبكسل واحد ابيض او اسود او ما بينهما.

هي صورة تمثل بمصفوفة ثلاثية ثلاثية البعد MxNx3 عناصرها من نوع double او unit8 (سوف نشرح النوعين لاحقاً) , فكل بكسل في الصورة ينتج عن دمج ثلاثة مركبات لإعطاء اللون المناسب فالمركبة الحمراء مكونة من مصفوفة ثنائية (تستخرج من المصفوفة ثلاثية البعد) MxN يكون فيها قيمة اللون بين المجال [0,1] الأسود 0 و الأحمر 1 و ما
بينهما هو درجات اللون الأحمر , و كذلك بالنسبة للأزرق و الأخضر. وبدمج ثلاثة الألوان RGB  من ثلاثة مصفوفات ثنائية البعد نحصل على الألوان الحقيقية. يوجد نوعان لمجال اللون :

  • Double : يكون مجاله [0,1] بحيث يكون الأسود 0 و اللون 1 و درجات اللون بينهما بحيث تكون قيم اللون اصغر من الواحد (فاصلة) مثلا 0.234 .

  • Unit8 : تكون قيمته صحيحة Integer و يتراوح مجاله [0,255]  بحيث 0 يمثل الأسود و 255 اللون و ما بينهما درجات اللون. يستخدم نوع unit8 بدلاً من ال doubleللتقليل من مساحة الذاكرة و لتسريع من عملية معالجة الصور.

فتح وقراءة صورة

يتم فتح وقراءة صورة من أي نوع بإستخدام تعليمة Imread ,ويتم عرضها بإستخدام التعليمة imshow ونميز حالتين :

لفتح صورة وعرضها  من الجهاز الحاسب نستخدم الصيغة التالية :

;(X=imread (filename,format
;(Imshow(x

حيث تتم قراءة الصورة عبر المسار filename ذات الإمتداد format ومن ثم تخزينها في المصفوفة  x .

لفتح صورة من برنامج الماتلاب نفسه وعرضها نستخدم الصيغة التالية :

;(X=imread (filename,format
(Imshow(x

حيث تتم قراءة الصورة عبر المسار filename ذات الإمتداد format ومن ثم تخزينها في المصفوفة  x .

مثال

صورة من نوع RGB

X = imread(‘onion.png’);

imshow(X) ;

كتابة صورة Imwrite

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

;(Imwrite(image , filename

مثال

x=imread(‘C:UsersDigitalNetDesktopferrari’,’jpeg’)
imshow(x)
imwrite(x,’newferrari.bmp’);
هنا قمنا بطباعة نفس الصورة الموجودة على سطح المكتب إلى مسار الماتلاب الآتي (current folder  يظهر في شريط الأدوات في واجهة برنامج الماتلاب ) باسم جديدnewferrariوإمتداد جديد bmp.

5 Comments

  1. Awesome post! Keep up the great work! 🙂

  2. Hello. This article was extremely fascinating, especially because I was looking for thoughts on this matter last couple of days. Susette Bald Hesta

  3. I all the time emailed this blog post page to all my contacts, because if like to read it next my links will too. Donia Anton Yerkovich

  4. Usually I do not read article on blogs, but I would like to say that this write-up very forced me to try and do it! Your writing style has been surprised me. Thanks, very nice post. Stephie Dennie Euh

  5. ارجو تزويدي ببرامج تتعلق بكسف الحواف والتباين وقياس الكفاءة للثورة الرقمية التي تم اجراء التحسين عليها وشكرا

    عدنان محمد

اترك تعليقاً

لن يتم نشر عنوان بريدك الإلكتروني. الحقول الإلزامية مشار إليها بـ *