用MATLAB进行图像处理

图像处理概念、算法和MATLAB

基于实验室的统一颜色尺度

DSP提示与技巧

我最喜欢的专业出版物之一是IEEE信号处理杂志.它有一个常规功能叫做“DSP提示和技巧”。在2006年1月的杂志上,James McNames写了一篇技巧和技巧的文章,叫做“同时发表彩色和灰度出版物的有效颜色比例”。波特兰州立大学的麦克纳斯教授写道,虽然“越来越多的电子出版物不需要额外费用就可以使用彩色……当转换为灰度时,大多数颜色尺度被失真。[…本文提出了一种彩色尺度,它在印刷形式中显示为单调的灰度尺度,并显著提高了彩色图像的分辨率。”

McNames给出了四个设计原则来选择有效的颜色尺度(或颜色表,用MATLAB术语):

  • “[色阶]应涵盖尽可能多的可用颜色范围,受制于亮度单调增加的限制(对于灰度出版物)。
  • “在整个尺度上,相邻的颜色应该尽可能清晰。”
  • “两种颜色之间的感知差异应大致与它们在色阶上的位置差异成正比。”
  • “颜色刻度应该是直观的。”

这篇文章接着展示了一些数学和一些创建这种色标的MATLAB代码。McNames教授在他的文章中提供了这个想法的完整MATLAB实现(ColorSpiral.m)网站

通过L* A *b*颜色空间的路径

McNames文章描述了一种通过RGB空间构建路径的方法,该路径至少具有大致所需的属性。我认为,通过构建通过不同颜色空间L*a*b*的路径来形成色阶在概念上可能更简单。该颜色空间将亮度L*与两个色差分量a*分离*和b*。

如果你将a*和b*转换为极坐标,角度对应于色度,半径对应于色度,或色度的鲜明度。

让我们制作一个色标,它是L*中的一个均匀渐变。在a*-b*平面中,跟踪半径为50的半圆形路径,角度在0和pi/2之间变化。

半径=50;θ=林空间(0,π/2,256)。”;a=半径*cos(θ);b=半径*sin(θ);L=linspace(0100256)。”;实验室=[L,a,b];

现在,将L*a*b*值转换为sRGB,以便我们可以将其用作MATLAB颜色映射制作模板苹果表格

map = applycform(Lab, makecform())“lab2srgb”));

氡实例

让我们使用此颜色贴图查看Radon变换图像。

I=零(100100);I(25:75,25:75)=1;θ=0:180;[R,xp]=氡(I,θ);imshow(R,[],],“InitialMagnification”“健康”)彩色地图(地图)

彩色尺度函数在MATLAB中心

功能色标在MATLAB Central上可以轻松地创建像这样的颜色尺度。您可以为半径和起始角度选择不同的值,并指定通过a*-b*空间的顺时针或逆时针路径。

colormap (color_scale)

色标图形用户界面

同样的MATLAB中央提交包含颜色缩放工具函数,这是一个GUI,可以使用滑块控制颜色比例参数。它还显示了颜色比例和近似的灰度当量。以下是屏幕截图:

试试看。




发布与MATLAB®7.2

|
  • 打印
  • 发送电子邮件

评论

要留下评论,请点击在这里登录到您的MathWorks帐户或创建一个新帐户。