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

حذف اعلى قيمه من مصفوفه بالماتلاب

بدأه مياار في 14 مارس 2010 · 16 رد · 1,600 مشاهدة · في الرياضيات والخوارزميات
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

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

مرحبا جميعا

ممكن احد يساعدني في هذه الخوارزميه اللي تساعد في فصل الصوره الى 3 كلاسات

فيها خطوه مو قادره انفذها وهي حذف اعلى قيمه واقل قيمه من المصفوفه

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

الخوارزميه :

This algorithm works as follows; after
converting the image to gray level and removing
highest and lowest values to leave out distinct values,
the average gray level for the whole image is
calculated. After that both a and b values are calculated
according to the following equations:
a = mean ( max(I) + avg ) / 2
b = mean ( min(I) + avg ) / 2;
Where I is an array representing the whole image,
max(I) and min(I) represent the highest and lowest
values respectively in each column of the array I.
The classification parameters L and H are
calculated according to the following equations:
L = avg – ( avg – min_avg ) / 3
H = avg + ( max_avg – avg ) /3;
Where min_avg
represents the average of
all values less than b
while max_avg
represents the average of
all values higher than a.
The image is then
classified according to L
and H values 
Values less than L are
considered dark. Values
higher than H are
considered bright. Values
between L and H are
considered gray (background).

تم تعديل هذه المشاركة بواسطة ( HASSAN ) في 15 مارس 2010 في 13:59 — السبب: تصحيح كتابة الكود

#2

اسف لم اقرا الكود. ولكن قد يساعد هذا المثال :

A=rand(3) %create random matrix of 3*3 dim
A=A(:) % convert it to a vector of 9 length;
mx=max(A) %find max value 
mn=min(A) %find minimum value
B=A(A~=mx) %delete the maximum value
B=B(B~=mn) %delete the minimum value
A=B % A will include all values except maximum and minimum values

بالتوفيق،

الحمد لله الذي هدانا لهذا وماكنا لنهتدي لولا ان هدانا الله

#3

شكرا اخي

لكن هذا الكود حول المصفوفة الى vector

وانا محتاجة اني احذف القيمة العليا والواطية من المصفوفه وتبقي مصفوفه

لاني محتاجة بعد كذا في الخوارزميه اني اجيب القيمة العليا والواطية من كل عمود

فكيف ممكن احذف اكبر واقل قيمة من المصفوفه بحيث احتفظ باعمدة المصفوفه

؟؟؟؟؟؟؟؟؟؟

اتمنى مساعدتي

#4
ibr_exn كتب:

A=rand(3) %create random matrix of 3*3 dim
A=A(:) % convert it to a vector of 9 length;
mx=max(A) %find max value 
mn=min(A) %find minimum value
B=A(A~=mx) %delete the maximum value
B=B(B~=mn) %delete the minimum value
A=B % A will include all values except maximum and minimum values

من خلال شرحك لما تريدين اجد انه تقريبا نفس الكود الذي وضعه الاخ ابراهيم .

تم تعديل هذه المشاركة بواسطة ( HASSAN ) في 15 مارس 2010 في 13:56

#5

لكن ال b هنا عباره عن vector وانا ابغاها مصفوفه

لاني بعد كذا احتاج اجيب اكبر قيمه لكل عمود واقل قيمه لكل عمود

#6

يمكن ذلك بنفس الاسلوب (دون التحويل الى متجه) بقليل من التفكير، راجعي التعليمات الخاصة بالمتالاب لمزيد من المعلومات حول الدوال السابقه. كما ان حذف قيمتين من المصفوفة سيغير ابعادها الا اذا كان القصد هو تصفير القيم وليس حذفها. نحن هنا في المنتدى نساعد فقط و ليس واجبنا ان نقوم بعمل كل شيء.

بالتوفيق،

الحمد لله الذي هدانا لهذا وماكنا لنهتدي لولا ان هدانا الله

#7

انا حاولت وبحثت كثير ما اتوصلت لحاجة اقدر احذف عناصر من مصفوفه

او انه مثلا اخليها مخفيه عن طريق الماسك اتمنى انك تساعدني هذه الخطوه طولت انا فيها

انت لو قرات الخوارزميه تلاقي انه ما اقدر اصفر القيم

لانة لازم اتخلص منها وبعد كذا اجيب اكبر قيمه لكل عمود

وما اقدر استخدم الداله reshape حتى تحولي من vector

الى ماتريكس لانه ما بعرف كيف بحدد حجم المصفوفه بعد الحذف

فكيف ممكن احلها ياليت تعطيني بعض الافكار

#8

الأخت الفاضله

بفرض ان المصفوفة هى

12 11 45 13 79 45

11 74 52 16 94 24

32 54 10 23 45 33

بعد عملية الحذف , المفروض شكلها يكون ازاى؟

لو تم حذف اكبر عنصر (باللون الأحمر) وأصغر عنصر (باللون الأزرق) فلن يكون الناتج مصفوفة , لأنه فى هذه الحالة عدد القيم فى الأعمدة سيختلف ، وكذلك عدد القيم فى الصفوف ايضا سيختلف. وبالتالى ما تطلبيه حضرتك غير منطقى رياضيا وبرمجيا. أقصى ما يمكن عمله هو استبدال القيم بقيم أخرى وليس حذفها. الا لو تم حذف العمود بكامله او الصف بكامله.

هذا والله أعلى وأعلم ،،،

2

أشهد أن لا إله إلا الله وأشهد أن محمدا رسول الله

bnr025.gif

مـــوقـــعـــى

#9

طيب انا اقدر ابرمج هذه الخوارزميه بلغة اخرى غير الماتلاب

ماهي اللغة اللي ممكن انها تدعم هذه الخوارزميه

#10
مياار كتب:

طيب انا اقدر ابرمج هذه الخوارزميه بلغة اخرى غير الماتلاب

ماهي اللغة اللي ممكن انها تدعم هذه الخوارزميه

المشكلة ليست بلغة البرمجه كما اوضح اخي د.عماد القضيه منطقيه ..

تستطيعي ان تقولي انكي تريدي ان تجعلي مكان اعلى قيمة فارغ بمعنى تصفير القيمه وهذا لن يؤثر على ابعاد المصفوفه ..

بالتوفيق

#11

المشكله ما اقدر اصفر القيمه لانه تاثر على الحسابات

ما اقدر احط null في الماتلاب

حاولت لكن ما زبط الوضع

#12

الاخت الفاضله، ماهو مصدر الكود السابق او الخوارزمية السابقه؟ وماهي المشكلة التي تحلها هل هي segmentation ام ماذا؟

تم تعديل هذه المشاركة بواسطة ibr_exn في 15 مارس 2010 في 21:13

الحمد لله الذي هدانا لهذا وماكنا لنهتدي لولا ان هدانا الله

#13

مصدر الكود لقيته في النت بحث علمي

وهي تحل مشكلة ال segmentation

#14
اقتباس
مصدر الكود لقيته في النت بحث علمي

ذكر المصدر معناه ذكر على الاقل : عنوان المادة العلمية واسم مؤلفها. حتى نتمكن من الاطلاع على المصدر إن امكن. اقول ذلك لانه قد توجد احيانا اخطاء بسبب النقل اوعدم وضوح فكرة المؤلف.

بالتوفيق،

الحمد لله الذي هدانا لهذا وماكنا لنهتدي لولا ان هدانا الله

#15

هذا الملف المصدر اللي لقيت فيه الخوارزمية

الملف في المرفقات

OBR.pdf

#16

لفت نظري ان اصحاب البحث من نفس البلد. لماذا لم تتواصلوا معهم ؟

اعتقد ان العملية تحويل الوان وليس حذف عناصر من المصفوفة. بعد حساب قيمة Hو L حسب المعادلات المعطاة يتم المرور على كل خلية في المصفوفة واختبار قيمتها بحيث ان القيم التي اعلى من الH يتم اعطاؤها اللون الاول والتي اقل من L يتم اعطاؤها اللون الثالث وما بينهما يتم اعطاؤها اللون الثاني .بالتالي سيكون عندنا مصفوفة تحوي ثلاث الوان فقط بدلاعن 256 لون. ولكن ابعاد المصفوفة لن تتغير. يمكن تجربة ذلك والتأكد من تطابق النتائج مع نتائج البحث.

عموما سااحاول قراءة البحث بتأني في وقت لاحق والتأكد من الموضوع.

تم تعديل هذه المشاركة بواسطة ibr_exn في 17 مارس 2010 في 01:30

الحمد لله الذي هدانا لهذا وماكنا لنهتدي لولا ان هدانا الله

#17

فعلا هذه الخوارزميه تفصل الصوره الى 3 الوان فقط لكن نحتاج حتى تفصل الى قيم حديه

انا حددت قيمة L && Hمن الهيستوغرام

لكن انا كنت حابه طريقة علميه تحدد القيم هذه الخوارزميه تحدد قيم ال L و ال H

ياليت تتطلع على البحث وتعطيني رايك فيه

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

عدد الزوار حالياً

المتواجدون خلال آخر دقيقتين · يتحدّث كل ٣٠ ثانية

—الإجمالي—أعضاء مسجّلون—زوار بدون تسجيل

جارٍ التحقق من المتواجدين…