图像处理半色调技术(matlab/C++)

半色调技术连续调图像通常指在一幅图像上,其由淡到浓或由浅到深的色调变化是以单位面积成像物质颗粒密度来构成的,其深浅、浓淡是呈现无极变化的,如相片底片、相片、各种画稿;而半色调通常是指经过特殊加工后的印刷品上的由浅到深或由淡到浓的色调变化是由网点大小来表现的,由于网点在空间上是有一定距离而呈离散型分布的,并且由于加网的级数总有一定的限制,在图像的层次变化上是不能象连续调图像一样实现无极变化,故称为半色调图像,如加网的阳片菲林阴片菲林和印刷图像等等半色调技术是指用少量的色彩将一幅连续色调图像(如灰度图像和彩
摘要由CSDN通过智能技术生成

半色调技术

连续调图像通常指在一幅图像上,其由淡到浓或由浅到深的色调变化是以单位面积成像物质颗粒密度来构成的,其深浅、浓淡是呈现无极变化的,如相片底片、相片、各种画稿;而半色调通常是指经过特殊加工后的印刷品上的由浅到深或由淡到浓的色调变化是由网点大小来表现的,由于网点在空间上是有一定距离而呈离散型分布的,并且由于加网的级数总有一定的限制,在图像的层次变化上是不能象连续调图像一样实现无极变化,故称为半色调图像,如加网的阳片菲林阴片菲林和印刷图像等等

半色调技术是指用少量的色彩将一幅连续色调图像(如灰度图像和彩色图像)量化为一幅二值图像或是只有少数几种色彩的彩色图像,并且量化后图像在一定距离的视觉效果和原始图像相似的技术。众所周知,数字半色调技术是指基于人眼视觉特性和图像呈色特性,利用数学、计算机等工具,在单色/多色二值呈色设备上实现图像的最优再现的一门技术。数字半色调是利用人眼的低通特性,当在一定距离下观察时,人眼将图像中空间上接近的部分视为一个整体。利用此特性,人眼观察到的半色调图像局部平均灰度近似于原始图像的局部平均灰度值,从而整体上形成连续色调的效果。

图像分类

图像可大致分为两大类:连续调图像(Continuous-Tone Image)和半色调图像(Halftone Image)。

如我们常见的彩色照片就是一种连续调图像,在这种图像上,存在着由淡到浓或由深到浅的色调变化并且浓淡或深浅是以单位面积成像物质颗粒密度来构成的,并且这种图像的深浅变化有无数多级。另外,印刷工艺中的照相分色底片的连续调,是由单位面积内由金属银颗粒密度构成的;而各种彩色画稿的连续调,是由单位面积内由各种颜料颗粒密度构成的,单位面积内颜料颗粒多即为深色调,否则为浅色调。

半色调图像如常见的印刷品图像,其由浅到深或由淡到浓的变化,是靠网点面积大小或网点覆盖率来表现的。**一般用于复制诸如照片之类的连续调原稿时,会采用这种半色调技术,它将图像分成许多点,通过点的不同大小来表现颜色的深浅。**在印刷品的印刷时,印刷机用有限数量的一套油墨(只有黑墨或青、品红、黄、黑墨)来印刷数量不同、大小不同的细小点,印刷品画面上色彩和浓淡就是靠这些细小的点来表示的,由此可以给人眼产生许多灰度级或许多颜色的错觉。当观察印品画面时,网点面积大,颜色就深,称为暗调;网点面积小,颜色就浅,则称为亮调。由于网点在空间上是有一定的距离的,呈离散型分布,并且由于加网的线数总有一定的限制,在图像的层次变化上不能像连续调图像一样实现无级变化,故称加网图像为半色调图像。如加网的阳片菲林、阴片菲林、印刷图像等都是半色调图像。

半色调技术分类

半色调技术最普遍的分类法是按照它的处理方式分为:抖动法,误差扩散法,迭代法三大类。
抖动法

抖动法是点处理类方法的一种典型算法,主要分为随机抖动和有序抖动两大类。这两种算法都需要一个模板,也称为抖动矩阵或阈值矩阵,抖动矩阵不仅决定了当亮度或灰度值减小时网点变成黑点的顺序.而且也决定了半色调图像的质量,所以抖动算法的关键是抖动矩阵的构造。该算法与抖动矩阵进行比较,矩阵中的每个阈值的取值范围是图像的最大灰度值和最小灰度值之间,其数学公式化为:
在这里插入图片描述
式中f(i,j)代表连续色调图像中的像素点灰度值,t(i,j)代表抖动矩阵的阈值,而h(i,j)代表半色调后的图像灰度值。
随机抖动矩阵是通过完全随机产生的,所以半色调后的图像质量常常很不理想,在实际中已经基本不再使用。但有序抖动的抖动矩阵是有规律的,具有良好的图像效果和高效的处理速度而被各大打印机厂商采用,有序抖动矩阵主要有两种类型:分散型和聚集型。典型的分散型抖动矩阵是Bayer有序抖动矩阵,而点局部聚簇整体分散是典型的聚集型矩阵。
虽然有序抖动算法比较简单,且具有较好的半色调图像质量,但其也具有致命的缺点,即含有明显的周期性人工纹理。即使抖动矩阵设计的非常完美,其输出的半色调图像依然存在瑕疵,且其半色调图像质量不如通过误差扩散算法获得的半色调图像。
误差扩散法
在有序抖动处理中,利用了像素点与抖动矩阵比较来判断是否在一个位置放置微点,实质是一种点处理过程。在1976年Floyd和Steinberg提出了误差扩散算法,它将半色调加网从“点处理”过渡到“邻域处理”。误差扩散算法的提出为半色调加网带来了革命性的技术变革,也是半色调技术上的里程碑,并促进了半色调技术的飞速发展。通过误差扩散处理后的半色调图像像素分布各异且无规律性,色调丰富,视觉效果较好。它依然被视为易于实现且视觉效果较好的半色调技术之一,被广泛应用 [1] 。
迭代法
迭代法是一种搜索的方法,其思想是通过最小化原图像与半色调图像的误差来寻找最佳的二值输出。由这种算法得到的半色调图像质量很好,但同时也以牺牲时间开销和计算量大为代价。
迭代法中最具代表性的是 DBS(Direct Binary Search)算法,DBS 运用视觉模型,通过不断地将像素取反和与相邻 8 邻域交换来减少半色调图像与原始连续图像的视觉误差,原理如图:
在这里插入图片描述

误差扩散法 Matlab程序

clc
clear;
 
im=imread('test.jpg');
A=rgb2gray(im);
B=imcrop(A,[150,150,256,256]);%在图像的(150,150)处截取(256,256)大的图像
B=double(B)/255;%把矩阵由UNIT8转换为实型
I=zeros(256,256);%给数组B赋初值
 
subplot(121)
  • 1
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值