تبدیل نوع تصویر به یکدیگر با استفاده از ابزار متلب (بخش دوم-جلسه 4)
موسسه پایاپروژه به عنوان متصدی انجام پروژه های پردازش تصویر با متلب وظیفه ی خود می داند که در راستای آموزش نرم افزار متلب گام های موثری را بردارد. با توجه به اینکه یک دوره آموزشی متلب مستلزم تمرین و تلاش بسیار است. اما این موسسه تلاش می کند سهم کوچکی در جهت یادگیری شما داشته باشد.
تبدیل نوع تصویر به یکدیگر با استفاده از ابزار متلب (بخش دوم)
در بخش اول این مقاله که به آموزش متلب و تبدیل نوع تصویر پرداخته بود، سه تابع cmap2gay ،gray2ind و im2gray توضیح داده شد. در ادامه، پایا پروژه، تابع های بیشتری را ارائه خواهد داد.
تبدیل انواع تصاویر به یکدیگر
- ind2gray
کاری که این تابع انجام میدهد این است که indexed image را به grayscale تبدیل میکند. شیوه کار آن نیز این گونه است که hue و saturation را حذف و luminance را حفظ میکند.
- مرحله اول: وارد کردن تصویر
[X, map] = imread(‘trees.tif’);
- مرحله دوم: استفاده از تابع
I = ind2gray(X,map);imshow(X,map)title(‘Indexed Image’)

تصویر اولیه
- مرحله سوم: نمایش تصویر تبدیل شده
figureimshow(I)title(‘Converted Grayscale Image’)

تبدیل نوع تصویر – استفاده in2gray
با این تابع نوع داده double ،single ،uint8 و uint16 به آرایه عددی تبدیل میشود.
- mat2gray
این تابع، ماتریس ورودی را به grayscale تبدیل میکند. شیوه استفاده از آن نیز به دو صورت است.
I = mat2gray(A,[amin amax])
I = mat2gray(A)
در روش اول مقادیر بزرگتر از amax یک و مقادیر کوچکتر از amin، به صفر تبدیل میشوند. اما در روش دوم مقادیر amax و amin به ترتیب، بزرگترین و کوچکترین مقادیر ماتریس A انتخاب میشوند.
- مرحله اول: وارد کردن تصویر
I = imread(‘rice.png’);figureimshow(I)

تصویر اولیه
- مرحله دوم: پیدا کردن لبه های تصویر و محل دانه های برنج
این کار از طریق اعمال فیلتر sobel انجام میگیرد.
J = filter2(fspecial(‘sobel’),I);min_matrix = min(J(:))max_matrix = max(J(:))figureimshow(J)

تصویر بعد از اعمال فیلتر sobel
پس از اعمال فیلتر، مقادیر min_matrix و max_matrix ماتریس برابر -779 و 560 تعیین میشوند.
- مرحله سوم: استفاده از تابع
K = mat2gray(J);min_image = min(K(:))max_image = max(K(:))figureimshow(K)

تبدیل نوع تصویر – استفاده mat2gray
پس از اعمال فیلتر، مقادیر min_matrix و max_matrix برابر صفر و یک تعیین میشوند با این کار لبه های دانه های برنج بیشتر مشخص میشوند.
- rgb2gray
کاری که این تابع انجام میدهد این است که تصویر و یا colormap، RGB را به grayscale تبدیل میکند.
- مرحله اول: وارد کردن تصویر RGB
RGB = imread(‘peppers.png’);imshow(RGB)
تصویر اولیه
- مرحله دوم: استفاده از تابع
تبدیل تصویر RGB به شکل زیر است.
I = rgb2gray(RGB);figureimshow(I)

تبدیل نوع تصویر – استفاده mat2gray برای تصویر RGB
برای تبدیل colormap، RGB به grayscale نیز به شکل زیر عمل کنید.
- مرحله اول: وارد کردن colormap، RGB
[X,map] = imread(‘corn.tif’);imshow(X,map)

تصویر اولیه
- مرحله دوم: استفاده از تابع:
newmap = rgb2gray(map);imshow(X,newmap)
تبدیل نوع تصویر – استفاده mat2gray برای colormap، RGB
در بخش بعدی تبدیل نوع تصویر با ما همراه باشید و برای انجام پروژه های متلب و همچنین سفارش پروژه متلب با ما ارتباط بگیرید.
منابع:
