![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
半色调算法
fghler
垒简单的代码,写明白的博客。
展开
-
半色调算法之点扩散
1、TABLE1是提前计算好的,从其中的1依次开始处理,与图像的位置对应,就是用像素坐标对表的大小求余。2、用公式(1)对相应位置的像素进行半色调处理。3、利用公式(2)将相应的误差扩散到周围的像素上,正交像素用(a),对角像素用(b),误差扩散的方式如图1所示,其中比当前位置小的不用扩散。4、按TABLE1中数字依次递增的顺序处理,直到所有像素处理完成。Baron:表中周围只有比它小的数字,这个数字的位置不用扩散误差。Near-baron:表中周围只有一个比它大的数字,这个数字的位原创 2020-09-24 16:17:58 · 1595 阅读 · 0 评论 -
半色调算法:蓝噪声模板VOIDandCLUSTER算法
最近一直在关注半色调算法。其中的蓝噪声模板法算法简单、运行速度快,是半色调算法中一种常用算法。void and cluster算法是一种常用的生成蓝噪声模板的方法。这几天认真研究了这一算法,特将算法的基本情况作一简单梳理,方便以后查阅。算法的目标:生成一个用于对图像进行半色调处理的蓝噪声模板。对一个N*N的初始数组,通过算法处理后,数组的元素值是0-(N*N-1)之间的。用于半色调处理时,需要进行归一化。算法的主要思想:通过计算一个1位(只有黑和白,也就是0和1)的BINARAY图像的所有点原创 2020-05-26 15:00:27 · 1915 阅读 · 2 评论 -
绿噪声阈值数组生成算法BIPPCCA简要
binary pattern pair correlation construction algorithm:此算法是一种生成绿噪声阈值数组的算法。用这种绿噪声阈值数组进行半色调算法,既可以保持蓝噪声的点分布随机均匀的特点,也可以自定义点的大小,也就是保持调幅算法的优点。在后续的工作中应该会用到,这里做个记录。1、初始化一个M*N的数组,所有值为0;2、随机选择中的一个元素,将其转换为1;3、生成一个的M*N的随机数数组U,用这个数组表示中相应位置的元素转换成少数元素(此处为1)的概率。也就是一原创 2020-06-01 15:07:11 · 623 阅读 · 7 评论 -
利用BIPPCCA算法生成阈值数组
这是阈值数组生成的主要步骤。它是在前文BIPPCCA算法(https://blog.csdn.net/fghler/article/details/106471649)的基础上来实现的。这里需要关注的点主要有:1、这个算法要生成255个绿噪声色调,再加上0,一共是256个。也就是每个灰度级都要对应一个色调。所以,这个算法的运算量还是很大的,需要特别关注时间优化。2、最后的数组是取这255个色调中相对应位置为1,且最小灰度值为当前位置的灰度值。3、255个色调的生成顺序是不固定的。但在实际中表..原创 2020-07-06 17:28:41 · 310 阅读 · 1 评论 -
半色调图像中高频与低频的理解
图像频率图像处理中经常遇到”处理高频信号”与”处理低频信号”,对于图像而言,频率的高低,就是图像灰度变化的快慢,也就对应了:低频是噪声和细节,高频是轮廓低频低频就是颜色缓慢地变化,也就是灰度缓慢地变化,就代表着那是连续渐变的一块区域,这部分就是低频。对于一幅图像来说,除去高频的就是低频了,也就是边缘以外的内容为低频,而边缘的内容就是图像的大部分信息,即图像的大致概貌和轮廓,是图像的近似信息。高频反过来,高频就是频率变化快。图像中什么时候灰度变化快?就是相邻区域之间灰度相差很大,这就是变化原创 2020-09-21 09:57:09 · 1221 阅读 · 2 评论