عکس پیش‌فرض نوشته

نرم افزار Matlab یکی از پر کاربردترین نرم افزارهایی است که در  رشته‌های مختلف از جمله مهندسی برق، مکانیک، رایانه و… کاربرد بسیاری دارد. واژه متلب از ترکیب دو واژه MATrix (ماتریس) و LABoratory (آزمایشگاه) ایجاد شده‌است.

Matlab Learning

کار کردن با ماتریس‌ها در متلب بسیار ساده است. در حقیقت تمام داده‌ها در متلب به شکل یک ماتریس ذخیره می‌شوند.

در این قسمت ما قصد داریم تا با پردازش تصویر در متلب آشنا شویم.

 

—  خواندن تصاوير  –   تابع imread

به منظور خواندن یک فايل گرافيکی در متلب می توان از تابع Imread استفاده کرد. بسته به نوع تصویر فرمت کلی استفاده از این تابع به یکی از صورتهای زير است:

–  برای تصاوير شدت، rgb و باینری:

m=imread(‘filename’) ;

  –  برای تصاویر اندیس‌شده:

[m,map]=imread(‘filename’) ;

 که در رابطه اخیر m ماتریس اندیس و map ماتریس نقشه‌ رنگ خواهد بود.

نکته: تابع imread را با تعداد آرگومانهای بیشتری نيز ميیتوان فراخوانی کرد. جهت اطلاع بیشتر به راهنمای متلب رجوع کنيد.

 

—  نمايش تصاوير  –  تابع imshow

تابع  imshow  می توان يک تصویر خوانده شده و یا مستقیما یک فایل تصویری را نمایش دهد:

تصویر شدت یا RGB

imshow(m) ;

تصویر اندیس‌شده :

imshow(I , map) ;

فایل گرافیکی :

imshow(‘filename’) ;

مثال:

>> imshow(‘fabric.png’) ;

یا:

>> m=imread(‘fabric.png’) ;

imshow(m) ;

 

—  نمایش تصاویر  –  تابع imtool

تابع دیگری که برای نمایش تصاویر در متلب وجود دارد تابع imtool است. روش استفاده از این تابع مانند تابع imshow است اما قابلیتهای بیشتری را در اختیار می‌گذارد:

>> imshow(‘fabric.png’) ;

 

—  نوشتن فایلهای گرافیکی  – تابع imwrite

برای ایجاد يک فایل گرافیکی می توان از تابع imwrite استفاده کرد. این تابع بسته به نوع تصویر می تواند به یکی از روشهای زیر بکار برده شود:

imwrite(m , ‘filename’) ;

imwrite(X , map , ‘filename’) ;

 

—  تعیین مشخصات یک فایل گرافیکی  –  تابع imfinfo

این تابع اطلاعاتی از فایل گرافیکی مانند: ابعاد تصویر، دقت ابعادی و دقت عمقی، نحوه فشرده‌سازی و… را ارائه مي‌دهد. این تابع بصورت زیر بکار برده می شود:

info=imfinfo(‘filename’) ;

—  تبدیل تصاویر

با استفاده از توابع زير می توان نوع يک تصویر را تغییر داد:

bw=im2bw(m , level) ;

bw=im2bw(x , map , level) ;

level         (سطح آستانه می باشد.  (که باید بین 0 تا 1 باشد

m=ind2gray(x , map) ;

[x,map]=gray2ind(m) ;

[x,map]=rgb2ind(m) ;

m=ind2rgb(x , map) ;

m=rgb2gray(m) ;

برای کسب اطلاعات بیشتر به راهنمای متلب مراجعه کنيد.

 

ادامه مطالب در بخش سوم ارائه خواهد شد.

این آموزش بیش از ۳ سال قبل ارسال شده و اکنون در لیست به‌روزرسانی‌های سایت قرار دارد. اگر پیشنهاد یا انتقادی برای بهبود آموزش دارید، خوشحال می‌شیم به ما اطلاع بدهید.