در متلب، هر دو تابع image
و imagesc
برای نمایش تصاویر یا بصریسازی دادهها استفاده میشوند. با این حال، تفاوتهایی در روش تغییر مقیاس داده و نگاشت رنگی وجود دارد.
تابع image
در متلب تصویر را با استفاده از تمام محدوده مقادیر داده نمایش میدهد. این تابع حداقل مقدار داده را به سیاه و حداکثر مقدار داده را به سفید نگاشت میکند. تصویر با استفاده از نگاشت رنگ فعلی نمایش داده میشود که با استفاده از تابع colormap
میتوان آن را تغییر داد. اگر تصویر دارای دادههای شاخص (مانند تصویر شاخص یا تصویر سطح خاکستری با یک نگاشت رنگ) باشد، image
تصویر را با استفاده از نگاشت رنگ نمایش میدهد.
از سوی دیگر، تابع imagesc
مقادیر داده را به محدوده کامل نگاشت رنگ فعلی میکند. این تابع خودکار محدوده رنگ را بر اساس حداقل و حداکثر مقادیر داده تنظیم میکند. حداقل مقدار داده به اولین رنگ در نگاشت رنگ نگاشت میشود و حداکثر مقدار داده به آخرین رنگ. مقادیر میانی به صورت خطی بین ورودیهای نگاشت رنگ تعبیه میشوند. imagesc
به طور معمول برای بصریسازی ماتریسها یا آرایههای داده دوبعدی استفاده میشود.
در ادامه، خلاصهای از تفاوتهای اصلی آمده است:
۱. تغییر مقیاس داده: image
تصویر را با استفاده از تمام محدوده مقادیر داده نمایش میدهد، در حالی که imagesc
مقادیر داده را به محدوده کامل نگاشت رنگ فعلی میکند.
۲. نگاشت رنگ: image
از نگاشت رنگ فعلی برای نمایش تصویر استفاده میکند، در حالی که imagesc
محدوده رنگ را بر اساس حداقل و حداکثر مقادیر داده تنظیم کرده و رنگها را بین ورودیهای نگاشت رنگ خطی تعبیه میکند.
۳. تغییر خودکار مقیاس: imagesc
محدوده رنگ را بر اساس مقادیر داده به طور خودکار تنظیم میکند، در حالی که در image
ممکن است نیازبه تنظیم دستی محدوده رنگ با استفاده از تابع caxis
باشد.
در کل، اگر میخواهید یک تصویر را بدون تغییر مقیاس مقادیر داده مشاهده کنید، میتوانید از image
استفاده کنید. اگر میخواهید مقادیر داده به محدوده نگاشت رنگ تغییر مقیاس داده شوند، میتوانید از imagesc
استفاده کنید.
تابع caxis
در متلب برای تنظیم محدوده رنگ در تصاویر و نمودارها استفاده میشود. با استفاده از این تابع، میتوانید مقادیر حداقل و حداکثر مقیاس رنگ را به صورت دستی تعیین کنید. تابع caxis
با استفاده از دو ورودی cmin
و cmax
محدوده رنگ را تنظیم میکند. مقادیر داده کمتر از cmin
و بیشتر از cmax
به ترتیب به cmin
و cmax
نگاشت میشوند. مقادیر بین cmin
و cmax
به صورت خطی به نگاشت رنگ فعلی تبدیل میشوند. به عبارت دیگر، با استفاده از caxis([cmin cmax])
میتوانید محدوده رنگ را به صورت دستی تنظیم کنید و تصاویر و نمودارها را با توجه به این محدوده نشان دهید. این تابع بسیار مفید است زمانی که میخواهید بخشی از نمودار یا تصویر را برجسته کنید یا مقیاس رنگ را به صورت دلخواه تغییر دهید.