MATLAB中dither抖动函数的用法

不知道dither存在的意义,既然MATLAB中有它,就一定有它的价值吧,书上说在出版和印刷业中应用的较多,我也不清楚。

MATLAB帮助文档说dither可抖动灰度图像和RGB彩色图像,将灰度图像转换为二值图像,将彩色图像抖动为索引图像。

例子:

clc;clear;close all;
f=imread('Fig0409(a)(bld).tif');
subplot(1,2,1);
imshow(f);
title('原图');
bw=dither(f);
subplot(1,2,2);
imshow(bw);
title('将灰度图像抖动为二值图像');

%%%%%%%%%%%%%%%%%%%%%
g=imread('claire.jpg');
figure(2);
subplot(1,2,1);
imshow(g);
title('原图');
x=dither(g,parula);
subplot(1,2,2);
imshow(x,parula);
impixelinfo;

输出图像:

MATLAB中dither抖动函数的用法_第1张图片MATLAB中dither抖动函数的用法_第2张图片

感觉dither效果不行啊,把我的大Claire抖动成这样了,差评。

不过在找图片的时候让我无意发现了大郭静的这张这么好看的照片,也算是值了。

在测试dither抖动彩色图像时,一开始总是报错:

错误使用 dither>parse_inputs (line 107)
在函数 dither 中,输入颜色图必须为 2 维数组并且包含至少 2 行和恰好 3 列。

后来发现原来是这里x=dither(g,parula);误写成了x=dither(g,‘’parula);

到底打不打引号,有些时候,也老是记错。

你可能感兴趣的:(Matlab)