تقييم الموضوع :
  • 0 أصوات - بمعدل 0
  • 1
  • 2
  • 3
  • 4
  • 5
المعالجة الصورية (الدرس الاول)
#1
[COLOR="#800080"]بسم الله الرحمن الرحيم
((رب اشرح لي صدري ويسر لي امري واحلل عقدة من لساني يفقهو قولي))
صدق الله العلي العظيم[/COLOR]


[COLOR="#0000FF"]إخواني الأعزاء أخواتي العزيزات السلام عليكم ورحمة الله و بركاته اسمحوا لي أن أقدم لكم خبرتي المتواضعة في عالم البرمجة بان أقدم لكم سلسلة من الدروس الخاصة في معالجة الصور(Image Processing) بلغة C#.Net وأرجو أن تنال رضاكم ولا تنسوني و والدي من صالح دعائكم.
[/COLOR]

الدرس الأول: نبذة مختصرة عن معالجة الصور(Image Processing)
[COLOR="#0000FF"]الصور الرقمية: هي تمثيل للصّور الثنائية الأبعاد على الحاسوب بواسطة الصفر والواحد (01). و تتكون كل صورة رقمية على الكمبيوتر من البكسل وهو أصغر وحدة في الصورة. و كل صورة هي مصفوفة تحتوى على صفوف وأعمدة من البكسلات وكلما زادت عدد البكسلات كلما كانت الصورة أوضح.

أنواع الصور الرقمية:
1- صورة ثنائية.
2- صورة رمادية.
3- صورة ملونة.

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

وألان نأتي إلى أول كود في درسنا ألا وهي كيفية قراءة صورة ما و وضعها في الPicture Box, أولا يجب علينا أن نعطي أنفسنا الصلاحية لكي نستطيع أن نستخدم المؤشرات في قراءة وكتابة الصور وذلك باستخدام Unsafe Code.[/COLOR]


اولا افعل كما في الصورة التالية




والآن نأتي إلى الكود وهي قراءة الصورة:

PHP كود :
using System
using System.Collections.Generic
using System.ComponentModel
using System.Data
using System.Drawing
using System.Linq
using System.Text
using System.Windows.Forms
using System.Drawing.Drawing2D
using System.Drawing.Imaging

namespace 
FirstLesson 

    public 
partial class Form1 Form 
    

        public 
int ijstrideremain
        public 
Color[,] c
        public 
Bitmap bmp
        public 
BitmapData bmpdata
        public 
Form1() 
        { 
            
InitializeComponent(); 
        } 

        private 
void LoadImage_Click(object senderEventArgs e
        { 
            
openFileDialog1.Filter "Bitmap files(*.bmp)|*.bmp|Jpeg files(*.jpg)|*.jpg|Tiff files(*.tif)|*.tif|Png files(*.png)|*.png|All Files(*.jpg;*.bmp;*.tif;*.png)|*.jpg;*.bmp;*.tif;*.png"
            
openFileDialog1.FilterIndex 5
            
openFileDialog1.ShowDialog(); 
            
bmp = (Bitmap)Bitmap.FromFile(openFileDialog1.FileNamefalse); 
            
= new Color[bmp.Widthbmp.Height]; 
            
bmpdata bmp.LockBits(new Rectangle(00bmp.Widthbmp.Height), ImageLockMode.ReadWritePixelFormat.Format24bppRgb); 
            
IntPtr scan0 bmpdata.Scan0
            
unsafe 
            

                
stride bmpdata.Stride
                
remain stride bmp.Width 3
                
byte= (byte*)(void*)scan0
                for (
0bmp.Heighti++) 
                { 
                    for (
0bmp.Widthj++) 
                    { 
                        
c[ji] = Color.FromArgb(p[2], p[1], p[0]); 
                        
+= 3
                    } 
                    
+= remain
                } 
                
bmp.UnlockBits(bmpdata); 
            } 
            
pictureBox1.Image bmp
        } 
    } 




[COLOR="#0000FF"]الحمدلله والشكر لله انتهينا من الدرس الاول اتمنى ان تنال رضاكم ولاتنسوني و والدي من صالح دعائكم وسوف اشرح لكم الكود في الاسبوع القادم انشاءالله.

اذا راى احدكم في خطأ ارجو تنبيهي بذالك اكون شاكرا لكم[/COLOR]
الرد }}}
تم الشكر بواسطة:


المواضيع المحتمل أن تكون متشابهة .
الموضوع : الكاتب الردود : المشاهدات : آخر رد
  المعالجةالصورية (الدرس الثالث) Sajad 3 3,008 06-04-13, 12:27 PM
آخر رد: Sajad
  المعالجةالصورية (الدرس الخامس(Mirror)) Sajad 0 1,867 31-01-13, 08:16 PM
آخر رد: Sajad
  المعالجةالصورية (الدرس الرابع) Sajad 2 2,287 29-01-13, 10:44 PM
آخر رد: Sajad
  المعالجة الصورية (الدرس الثاني) Sajad 0 2,761 01-10-12, 05:45 PM
آخر رد: Sajad

التنقل السريع :


يقوم بقرائة الموضوع: بالاضافة الى ( 1 ) ضيف كريم