وارد کردن عکس های ویندوز به درون متلب
فرض کنید در یکی از درایوهای ویندوز خود، عکسی دارید که می خواهید به وسیله نرم افزار متلب، بر روی آن عکس، تغییراتی را اعمال کنید. مسلما قبل از هر چیز، نیاز دارید که آن عکس را در نرم افزار متلب وارد کنید. برای این منظور می توانید از هر یک از روش های زیر اقدام کنید :
روش اول :
در پنجره اصلی متلب، بر روی گزینه Open file (به شکل ) کلیک کنید. در پنجره ای که باز می شود، گزینه Files of type برابر All MATLAB files قرار داده شده است، باید این گزینه را به All Files تغییر دهید تا بتوانید هر نوع فایلی را انتخاب کنید (مثلا عکسی با فرمت jpeg). سپس فایل خود را یافته و بر روی گزینه Open کلیک کنید. پنجره ای به شکل زیر باز می شود :
در این مرحله، متلب می خواهد اطلاعات عکس شما را در متغیری ذخیره کند. اگر نام عکس شما یک نام مجاز برای متلب باشد، متلب همان نام را برای متغیر انتخاب می کند و اگر نام، غیر مجاز باشد، متلب آن را تغییر می دهد. مثلا اگر عکسی با نام 1.jpeg را انتخاب کرده باشید، متلب نام x1 را برای متغیر انتخاب می کند.
شما می توانید بر روی نام انتخاب شده، دو بار کلیک کنید و نامی دیگر را انتخاب نمایید. پس از انتخاب نام مورد نظر خود، بر روی گزینه Finish کلیک کنید تا پنجره بسته شود.
برای آن که عکس خود را در متلب مشاهده کنیم، دستور زیر را اجرا می کنیم (برای متغیر با نام x1) :
title 'x1'
axis off
axis image
نتیجه :
نرم افزار متلب، پنجره ای را باز کرده و عکس مورد نظرمان را نمایش می دهد.
روش دوم : استفاده از دستور imread
در این روش نیز اطلاعات عکس در متغیری ذخیره خواهد شد و تنها تفاوت با روش قبل این است که باید آدرس عکس مورد نظر را به طور دقیق در دستور imread بنویسید. به مثال زیر توجه کنید :
نتیجه :
متلب متغیری با نام A ایجاد می کند که حاوی اطلاعات عکس می باشد. برای مشاهده عکس در متلب، کدهای زیر را اجرا می کنیم :
title 'A'
axis off
axis image
نتیجه :
متلب پنجره ای را باز کرده و عکس را نمایش می دهد.
با این روش اگه توی فولدرمون 300 تا عکس باشه برنامه فقط روی اولی اجرا میشه
چطور برنامه مثلا نعیین و بریدم بینی رو روی تمام عکس ها انجام بدیم؟
سلام.
می توانید از همان دستور imread استفاده کنید که در یک حلقه for به کار رفته باشد.
بنابراین در هر گام از حلقه for ، با دستور imread ، یک عکس را فراخوانی کرده و تغییرات مورد نظرتان را به آن اعمال می کنید.
راهنمای ساخت حلقه for در متلب (MATLAB ) :
تعداد گام های حلقه for را برابر 300 بگیرید. بنابراین متغیر حلقه از 1 تا 300 تغییر می کند. حالا یا نام عکس ها منظم است (مثلا به صورت Image_1.png و Image_2.png و ... و Image_300.png)، که بر اساس متغیر حلقه، نام عکسی که باید فراخوانی شود را در هر گام تعیین می کنید. اما اگر نام عکس ها منظم نیست، می توانید با دستور dir ، نام فایل های موجود در یک پوشه (folder) را به دست آورید و سپس در هر گام از حلقه، یک نام را فراخوانی کنید (لیست نام فایل ها را دارید و در هر گام، یکی را فراخوانی می کنید).
میشه لطفا بگید چطوری متغیر حلقه ی for رو میشه وارد کرد برای تغییر شماره ی عکسی که میخواهیم بخونیم؟
شماره عکس چطور میتونه متغیر باشه؟ یه رشته به تابع imread میدیم تا فایل رو باز کنه!
برای این کار، میتونید از دستور زیر استفاده کنید
مثلا برای خوندن عکس های pic_1 ، pic_2، و ...
سلام ، آیا تصاویر RGB رو میشه مستقیما از طریق هیستوگرام ، کنتراستش رو بهبود داد ؟ اگر میشه ممنون میشم راهنماییم کنید
دستور زیر را امتحان کنید
سلام و وقت به خیر. یه سری تصاویر دارم توی کامپیوتر .چجوری اونا رو توی متلب به صورت تصادفی به بیننده نشون بدم؟ چه دستوری داره؟ میشه کامل بگین ممنون میشم. من اصلا متلب بلد نیستم
سلام
من میخوام ارتباط بین ماتریس های تصاویر RGB رو با یک سری داده ژنتیکی بگیریم
کسی میتونه کمکم کنه
erfan71117024@gmail.com
ممنون میشم کمکم کنید
سلام من میخوام یه تصویر تو متلب بخونم با تابع گوسی کانولوشن کنم
جواب نهایی مات شده ی تصویر اصلیمه.
چه دستوری باید استفاده کنم؟