تبدیل نوع تصویر به یکدیگر با استفاده از Quantization-بخش اول
موسسه پایا پروژه به عنوان متصدی انجام پروژه های پردازش تصویر با متلب وظیفه ی خود می داند که در راستای آموزش نرم افزار متلب گام های موثری را بردارد. با توجه به اینکه یک دوره آموزشی متلب مستلزم تمرین و تلاش بسیار است. اما این موسسه تلاش می کند سهم کوچکی در جهت یادگیری شما داشته باشد.
یکی دیگر از روش های تبدیل نوع تصاویر به یکدیگر در متلب، متد Quantization است که به معنی تقسیم یک تصویر به چند محدوده کوچک تر یا چند بخش است و باعث فشرده سازی تصاویر به صورت گسترده میگردد. در ادامه تابع imquantize توضیح داده خواهد شد. با پایا پروژه همراه باشید.
تبدیل نوع تصویر به یکدیگر با استفاده از Quantization(بخش اول)
در ادامه آموزش پردازش تصویر با متلب، تبدیل نوع تصویر به یکدیگر با استفاده از Quantization توضیح داده خواهد شد. تابعی که در این آموزش معرفی خواهد شد، imquantize است. با پایا پروژه همراه باشید.
Quantization، یکی از روش های پردازش تصویر، برای انجام فشرده سازی به صورت گسترده است که باعث میشود، بعضی از جزئیات تصویر از بین روند. استفاده از این روش به این دلیل انجام میگیرد که با فشرده سازی تصویر، تعداد رنگ های مورد نیاز برای نمایش یک تصویر کاهش پیدا میکند و کاهش تعداد رنگ ها باعث میشود، حجم آن کاهش پیدا میکند و نمایش آن به شکلی آسان تر انجام میگیرد.
در ضمن باید دقت کرد که چشم انسان تفاوت میان رنگ هایی که تفاوت چندانی با یکدیگر ندارند، را تشخیص نمیدهد، پس با حذف این رنگ ها، ممکن است تغییر زیادی در تصویر مشاهده نشود.
تبدیل انواع تصاویر به یکدیگر با استفاده از imquantize
کاری که تابع imquantize انجام میدهد این است که با استفاده از سطوح فشرده سازی مشخص، تصویر را کوانتیزه میکند. در ضمن خود Quantization به معنی تقسیم یک موج یا تصویر به محدوده های کوچکتر است. شکل استفاده از این تابع در زیر آمده است.
- quant_A = imquantize(A,levels)
- quant_A = imquantize(___,values)
- [quant_A,index] = imquantize(___)
در تابع imquantize، ورودی A همان تصویر اولیه است و levels، نیز سطوح کمی سازی است که به عنوان یک بردار با N عنصر شناخته میشود. اندازه تصویر خروجی، برابر با اندازه آرایه ورودی A است.
مقدار index، نیز برداری با N+1 عنصر است که مقادیر Quantization را برمیگرداند و شیوه استفاده از آن به صورت quant_A = values(index) است.
شیوه استفاده از تابع imquantize
مرحله اول: وارد کردن تصویر
I = imread(‘circlesBrightDark.png’);
imshow(I)
axis off
title(‘Original Image’)
تصویر اولیه
مرحله دوم: محاسبه آستانه های تصویر با تعداد level=2
تابع multithresh، این کار را با استفاده از متد Otsu انجام میدهد
thresh = multithresh(I,2);
مرحله سوم: استفاده از تابع
seg_I = imquantize(I,thresh);
مرحله چهارم: نمایش تصویر نهایی پس از تبدیل آن به تصویر رنگی با استفاده از label2rgb
RGB = label2rgb(seg_I);
figure;imshow(RGB)axis offtitle(‘RGB Segmented Image’)

تصویر نهایی و پس از استفاده از imquantize
برای مشاهده دو تابع باقیمانده از بخش تبدیل نوع تصویر به یکدیگر با استفاده از Quantization و آموزش متلب به صورت حرفه ای با ما همراه باشید.
منابع:
