تحليل تصوير-1
1- خواندن تصوير
تعريف تصوير سطح خاكستري ؟
تصوير سطح خاكستري rice.png را خوانده و در يك آرايه به نام I ذخيره كنيد:
I = imread(‘rice.png’);
حال آن را نمايش دهيد:
imshow(I)
نتيجه:
تعريف پس زمينه؟
تعريف پيش زمينه؟
ملاحظه ميكنيد كه پس زمينه تصوير يكنواخت نيست بلكه در قسمتهاي مركزي روشنتر و در قسمتهاي پاييني تيره تر است. عدم يكنواختي پس زمينه، اغلب باعث دشوارتر شدن كار جداكردن اشياء از تصوير مي شود.
2-تخمين پس زمينه
از عملگر مورفولوژي بازكردن (شامل اعمال متوالي كاهش و سپس گسترش هر دو به كمك يك ماسك مشترك) براي حذف دانه هاي برنج استفاده مي كنيم تا بتوانيم به پس زمينه دست پيدا كنيم. اثر نهايي عملگر بازكردن اين است كه اشيايي را كه نمي توانند ماسك را در بربگيرند، حذف ميكند (اطلاعات بيشتر در مورد عملگرهاي مورفولوژي در فصل 10 آمده است).
براي استفاده از عملگر بازكردن از دستور imopen به صورت زير استفاده ميكنيم:
آرگومان اول، تصوير مورد نظرمان و آرگومان دوم ماسك مورد استفاده براي انجام عمل بازكردن است. دراينجا براي تشكيل ماسك از دستور strel استفاده شده است. دستور مذكور در اين مثال براي ايجاد يك ماسك دايره اي به شعاع 15 پيكسل مورد استفاده قرار گرفته است. اندازه ي ماسك را به گونه اي انتخاب كرده ايم كه هيچ دانه ي برنجي نتواند ماسك را به طور كامل در بر بگيرد و در نتيجه از تصوير حذف شود.
اگر تقريب فوق را به كمك دستور imshow نمايش دهيم نتيجه چنين خواهد بود:
3- مشاهده (و نمايش) تقريب پس زمينه به صورت يك سطح
براي نمايش پس زمينه به صورت يك سطح از دستور surf استفاده ميكنيم؛ اما اين دستور نياز به آرگوان ورودي از نوع double دارد در حاليكه تصوير موجود در آرايه ي background از نوع uint8 است. بنابراين، در حين استفاده از دستور surf كار تبديل نوع را هم انجام مي دهيم:
نتيجه :
4 -تفريق پس زمينه از تصوير اصلي
براي ايجاد يك تصوير با پ سزمينه يكنواخت، مي توان تقريب بدست آمده از پس زمينه را از تصوير اصلي كم كرد و حاصل را نمايش داد:
5- افزايش كانتراست تصوير
تصويري كه تا بحال بدست آورديم پس زمينه تقريباً يكنواختي دارد اما تا حدي تار است و بايد كانتراست ان را افزايش دهيم. در اينجا ميخواهيم از دستور imadjust براي انجام اين كار استفاده كنيم. اين دستور يك درصد از داده هاي بالا و پايين را اشباع مي كند و بقيه ي مقادير را طوري تغيير مي دهد كه از تمام بازه ي تغييرات ممكن (در اينجا يعني از 0 تا 255 كه مربوط به نوع داده ي uint8 است) استفاده شود.
نتيجه:
ادامه دارد …
نویسنده: دکتر هادی گرایلو
مقاله متلب,مطلب,متلب,مقاله برق,مقاله قدرت,مقاله مطلب,مقاله سیمولینک,دانلود متلب,دانلود مقاله متلب,مقالهmatlab ,آموزش متلب,مطلب,متلب,آموزش برق,آموزش قدرت,آموزش مطلب,آموزش سیمولینک,دانلود متلب,دانلود آموزش متلب,آموزشmatlab ,پروژه متلب,مطلب,متلب,پروژه برق,پروژه قدرت,پروژه مطلب,پروژه سیمولینک,دانلود متلب,دانلود پروژه متلب,پروژهmatlab ,