بسم الله الرحمن الرحيم
كيف يمكنني عمل إطار لجزء من محتويات الصورة بحيث ان اي جزء بارز في الصورة يعمل لة إطار
مثال:
لو عندي صورة خلايا الدم اريد ان اعمل إطارحول كرة الدم الحمراء(اريد كود).
ارجو مساعدتي في اسرع وقت .
بسم الله الرحمن الرحيم
كيف يمكنني عمل إطار لجزء من محتويات الصورة بحيث ان اي جزء بارز في الصورة يعمل لة إطار
مثال:
لو عندي صورة خلايا الدم اريد ان اعمل إطارحول كرة الدم الحمراء(اريد كود).
ارجو مساعدتي في اسرع وقت .
هناك مجموعة من المقالات عن معالجة الصور في موقع codeproject
http://www.codeproject.com/cs/media
انظر الى جزء +GDI و Image processing فقد يكون مبتغاك بينهم
لا تحزن:
إن كنت فقيرا فغيرك محبوس في دين، وإن كنت لا تملك وسيلة نقل فسواك مبتور القدمين، وان كنت تشكوا من آلام فغيرك يرقدون على الاسرة البيضاء و من سنوات، وان فقدت ولدا فغيرك فقد عددا من الأولاد و في حادث واحد.
لا تحزن:
فأنت تشرب الماء الزلال، و تستنشق الهواء الطلق، و تمشي على قدميك معافى، و تنام ليلك آمنا.
bashmohandes كتب:يجب عليك استخدام Filter من نوع Edge Detection Filter و انصحك باستخدام Matlab بدلا من C# لان ال Matlab Image Toolbox غنية جدا و ستساعدك بسهولة
السلام عليكم ..
أخوي بدي اسأل سؤال .. أنا عملت بروجيكت على الـmatlab مع واجهة استخدام بالـC# واستخدمت لذلك ما يسمى بالـ COM objects في الـMatlab
وقد عمل معي بشكل رائع .. ولكن المشكلة أن التطبيق يتطلب وجود الـMatlab في الجهاز الذي يتم عليه التنصيب
سؤالي : هل توجد هناك طريقة تمكنك من تنصيب التطبيق على أي جهاز حتى لو كان لا يحوي على Matlab؟!
ولك تحياتي
طور نفسك ولا تقف عند حد
شكراً أخي الباش مهندس على سرعة تجاوبك ..
في الحقيقة جربت اخذ كل الـ libraries المستخدمة في مشروعي ولكن .. بدون فائدة !!
لأنه يعتمد على الـmatlab server ..
وعلى الإنترنت تعبت وأنا ابحث .. إلى أن رسلة رسالة إلى موقع الشركة أسألهم ولم يردوا علي إلى الآن ..!!!
عموماً شكراً لكم :)
طور نفسك ولا تقف عند حد
اذا كان غرضك فقط هو Edge Detection فالموضوع مو محتاج MatLab
كل ما عليك هو فقط ضرب الصورة بمصفوفة ذات قيم تساوي :
0 1 0
1 4 - 1
0 1 0
وهذه القيم لها اثبات رياضي بأنها تخفي التفاصيل وتظهر الاطراف وهو مايسمى بالEdgeDetection
ولقد ارفقت لك مثال بالسي شارب , حيث يطلب البرنامج منك ادخال الصورة الاصلية ثم يقول بعمل EdgeDetection ويظهرها بجوارها , نتمنى ان تستفيد منه :)
احسنت اخي باشمهندس هي ليست عملية ضرب عادية بل هي Convolution لأنه لايمكن ضرب مصفوفة 3*3
في صورة ذات اي حجم , وأما بالنسبة Perwit فهو ايضاً مصفوفة لكن ذات قيم مختلفة , واليكم بعض قيم المصوفات اللتي يمكن ان تعمل EdgeDetection :
1-Filter Lablacian
0 1- 0
1- 5 1-
1- 1- 0
Perwitt Row ,Column and Both Respectivly-2
1- 1- 1-
0 0 0
1 1 1
---------
1 0 1-
1 0 1-
1 0 1-
---------
وإذا اردت الRow و ال Column معاً فقم بتنفيذهم على التوالي
3- Gradient Vertical
1 0 1-
2 0 2-
1 0 1 -
أما الHorizontal فعليكم استنتاجه :D
واذا الاخ ابوهادي مانفعت معاه كل هذه الفلاتر , فآخر مااقوله لك قبل ايضاً ماتستخدم الMatlab
جرب FrequenyDomain Filter < كل ماعليك هو تحويل الصورة بالفوريور ثم ازالةLow Frequency
اللتي تمثل التفاصيل , ثم اخيراً ارجع بInverse لتعود الصورة محددة الحواف .
والبيكم بعض الصور , الصورة العليا EdgeDetecton باستخدام Lablacian والسفلى High Post Filter
الشكر الجزيل للأخ معايش ..
في الحقيقة الخيار الآن بالنسبة لي انتهى .. فقد عملت مشروعي على الmatlab وانتهيت !!
طبعاً ما جعلني استخدمه بدلاً عن الc# هو السهولة التي يوفرها بالإضافة إلى المرونة التي لن اجدها في السي شارب !!
ومثلما ذكرت لك لا خيار لدي الآن فقد انهيت مشروعي على الـmatlab وربطته بالسي شارب .. وما احتاجه الآن هو كيفية التنصيب فقط!!
وشكراً للجميع
طور نفسك ولا تقف عند حد
هذا الموضوع مغلق.