محمد عبد الرحمن2 نشر 28 مارس 2019 أرسل تقرير نشر 28 مارس 2019 كود لخوارزمية من خخوارزميات معالجة الصور اقتباس
0 Entesar Khaled نشر 29 مارس 2019 أرسل تقرير نشر 29 مارس 2019 هناك عدة خوارزميات لمعالجة الصور أحداهم خوارزمية تدعى (تطبيع RGB Normalized (RGB و RGB هي اختصار الألوان (red green blue) وهي ما سأذكر خوارزميتها هنا ما هو Normalized RGB أو تطبيع قيم RGB ؟ في بعض الأحيان ، تريد التخلص من التشوهات الناجمة عن الأضواء والظلال في صورة ما. يمكن أن يكون تطبيع قيم RGB للصورة في مثل هكذا حالات طريقة بسيطة وفعالة لتحقيق ذلك. عند تطبيع قيم RGB لصورة ما، تقوم بتقسيم قيمة كل بكسل على مجموع قيمة البيكسل على جميع القنوات. لذلك إذا كان لديك بكسل مع R و G و B مكثفة في صورة معينة ... فإن قيمها الطبيعية ستكون R / S و G / S و B / S (حيث ، S = R + G + B). لاحظ الصورتين التاليتين: الصورة العليا هي اللقطة الأصلية المأخوذة من الكاميرا. الصورة السفلى هي نسختها الطبيعية. قد لا تبدو جميلة، لكن يوجد بعض التغييرات المهمة والأساسية كالظلال في الصورة، قد لا يكون هذا هو أفضل صورة لإظهار RGB طبيعية. لكنه أحد الحلول المتاحة... خوارزمية Normalized RGB تظهر من خلال الشيفرة التالية IplImage* NormalizeImage(IplImage* theimg) { IplImage* redchannel = cvCreateImage(cvGetSize(theimg), 8, 1); IplImage* greenchannel = cvCreateImage(cvGetSize(theimg), 8, 1); IplImage* bluechannel = cvCreateImage(cvGetSize(theimg), 8, 1); IplImage* redavg = cvCreateImage(cvGetSize(theimg), 8, 1); IplImage* greenavg = cvCreateImage(cvGetSize(theimg), 8, 1); IplImage* blueavg= cvCreateImage(cvGetSize(theimg), 8, 1); IplImage* imgavg = cvCreateImage(cvGetSize(theimg), 8, 3); cvSplit(theimg, bluechannel, greenchannel, redchannel, NULL); for(int x=0;x<theimg->width;x++) { for(int y=0;y<theimg->height;y++) { int redValue = cvGetReal2D(redchannel, y, x); int greenValue = cvGetReal2D(greenchannel, y, x); int blueValue = cvGetReal2D(bluechannel, y, x); double sum = redValue+greenValue+blueValue; cvSetReal2D(redavg, y, x, redValue/sum*255); cvSetReal2D(greenavg, y, x, greenValue/sum*255); cvSetReal2D(blueavg, y, x, blueValue/sum*255); } } cvMerge(blueavg, greenavg, redavg, NULL, imgavg); cvReleaseImage(&redchannel); cvReleaseImage(&greenchannel); cvReleaseImage(&bluechannel); cvReleaseImage(&redavg); cvReleaseImage(&greenavg); cvReleaseImage(&blueavg); return imgavg; } يمكنك التعرف بشكل أوسع على طريقة كتابة شيفرة خوارزمية normalized RGB من خلال مصدر الشيفرة السابقة هنا... يمكنك أيضًا التعرف على خوارزميات أخرى لمعالجة الصور من خلال نفس الموقع من هنا بالتوفيق... 1 اقتباس
0 مرفت مهنا نشر 18 أبريل 2019 أرسل تقرير نشر 18 أبريل 2019 السلام عليكم إن معالجة الصور الرقمية مجال واسع وقبل تحديد الخوارزمية يجب تحديد الهدف من معالجة الصور أهي من التعرف على الوجوه مثلا أو من أجل الحصول على رقم من صورة (لوحة سيارة مثلا) حيث تهدف المعالجة على استخلاص معلومات معينة يتم استخدامها لاحقا في تطبيقات أخرى مثل الذكاء الصناعي والشبكات العصبونية وأفضل بيئة برمجية لمعالجة الصور هي الماتلاب حيث تحوي على دوال جاهزة لمختلف مراحل وعمليات معالجة الصور وشكرا اقتباس
السؤال
محمد عبد الرحمن2
كود لخوارزمية من خخوارزميات معالجة الصور
2 أجوبة على هذا السؤال
Recommended Posts
انضم إلى النقاش
يمكنك أن تنشر الآن وتسجل لاحقًا. إذا كان لديك حساب، فسجل الدخول الآن لتنشر باسم حسابك.