发明内容
本申请实施例提供一种网点生成方法、装置、电子设备及存储介质,用于解决现有技术中因双队列的队头的网点丢失造成的成像质量较差的问题。
第一方面,本申请实施例提供一种网点生成方法,包括:获取调幅网点阈值矩阵的第一双队列数据集合,其中,所述第一双队列数据集合包括N行黑队列和N行白队列,所述N行黑队列与所述N行白队列分别对应,N为大于等于1的整数;获取调频网点的大小尺寸为S个几何设备点,S为大于等于1的整数;根据所述调频网点的大小尺寸,确定所述N行白队列和所述N行黑队列中每一队列队头中需抖动处理的前S个队列项;对每一队列队头的前S个队列项进行抖动处理,获得第二双队列数据集合;根据所述第二双队列数据集合,生成与所述调幅网点阈值矩阵对应的网点。
可选地,所述每一队列队头的前S个队列项进行抖动处理,包括:针对每一队列队头的前S个队列项每一队列项,采用如下公式,获得所述队列项的目标数据值,并将所述队列项赋值为所述目标数据值。
V=(a×u+b×v)mod(c)
上述公式中,u、v表示每个队列项在调幅网点阈值矩阵内的水平及竖直方向的坐标,a、b、c三个数值是互为质数的三个正整数,且都大于0小于等于255,V表示抖动处理后的所述队列项的目标数据值。
可选地,根据所述调频网点的大小尺寸,确定所述N行白队列和所述N行黑队列中每一队列队头需抖动处理的前S个队列项,包括:根据所述调频网点的大小尺寸,将所述N行白队列和所述N行黑队列中同一队列队头的前S个队列项都赋值为同一预设数据值;根据预设数据值,确定需抖动的队列项。
可选地,不同队列间队头的前S个队列项赋值的预设数据值不相同。
可选地,所述调幅网点阈值矩阵为横向与纵向队列项个数相等的正方形矩阵。
可选地,所述调幅网点阈值矩阵中,每个黑队列和对应的白队列用于生成一个网点。
可选地,所述黑队列中由队头到队尾的队列项的数据值由小变大,所述白队列中队头到队尾的队列项的数据值由大变小。
第二方面,本申请实施例提供一种网点生成装置,所述装置包括:获取模块和处理模块。
获取模块,用于获取调幅网点阈值矩阵的第一双队列数据集合,其中,所述第一双队列数据集合包括N行黑队列和N行白队列,所述N行黑队列与所述N行白队列分别对应,N为大于等于1的整数;以及获取调频网点的大小尺寸为S个几何设备点,S为大于等于1的整数。
处理模块,用于根据所述调频网点的大小尺寸,确定所述N行白队列和所述N行黑队列中每一队列队头中需抖动处理的前S个队列项;以及对每一队列队头的前S个队列项进行抖动处理,获得第二双队列数据集合;以及根据所述第二双队列数据集合,生成与所述调幅网点阈值矩阵对应的网点。
可选地,所述处理模块,具体用于:针对每一队列队头的前S个队列项每一队列项,采用如下公式,获得所述队列项的目标数据值,并将所述队列项赋值为所述目标数据值。
V=(a×u+b×v)mod(c)
上述公式中,u、v表示每个队列项在调幅网点阈值矩阵内的水平及竖直方向的坐标,a、b、c三个数值是互为质数的三个正整数,且都大于0小于等于255,V表示抖动处理后的所述队列项的目标数据值。
可选地,所述处理模块,具体用于:根据所述调频网点的大小尺寸,将所述N行白队列和所述N行黑队列中同一队列队头的前S个队列项都赋值为同一预设数据值;根据预设数据值,确定需抖动的队列项。
可选地,不同队列间队头的前S个队列项赋值的预设数据值不相同。
可选地,所述调幅网点阈值矩阵为横向与纵向队列项个数相等的正方形矩阵。
可选地,所述调幅网点阈值矩阵中,每个黑队列和对应的白队列用于生成一个网点。
可选地,所述黑队列中由队头到队尾的队列项的数据值由小变大,所述白队列中队头到队尾的队列项的数据值由大变小。
第三方面,本申请实施例提供一种电子设备,包括:
存储器,用于存储程序指令;
处理器,用于调用所述存储器中的程序指令,执行如本申请第一方面所述的网点生成方法。
第四方面,本申请实施例提供一种计算机可读存储介质,所述计算机存储介质存储有计算机程序,所述计算机程序被处理器执行时实现如本申请第一方面所述的网点生成方法。
第五方面,本申请实施例提供一种程序产品,所述程序产品包括计算机程序,所述计算机程序存储在可读存储介质中,电子设备的至少一个处理器可以从所述可读存储介质读取所述计算机程序,所述至少一个处理器执行所述计算机程序使得电子设备实施如第一方面本申请实施例所述的网点生成方法。
本申请实施例提供的一种网点生成方法、装置、电子设备及存储介质,通过获取调幅网点阈值矩阵的第一双队列数据集合,其中,所述第一双队列数据集合包括N行黑队列和N行白队列;以及获取调频网点的大小尺寸为S个几何设备点;然后根据所述调频网点的大小尺寸,确定所述N行白队列和所述N行黑队列中每一队列队头中需抖动处理的前S个队列项;对每一队列队头的前S个队列项进行抖动处理,获得第二双队列数据集合;根据所述第二双队列数据集合,生成与所述调幅网点阈值矩阵对应的网点。因此,上述方法在生成调幅网点的基础上,对双队列队头的队列项进行调频抖动处理,从而有效的保留了双队列队头的网点,进一步的提升了成像的质量。
具体实施方式
为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
图1为本申请一实施例提供的应用场景示意图,如图1所示。原稿图像输入到图1中的图像输出设备中,该图像输出设备例如可以为打印机、印刷机以及扫描机等,然后由图1中的图像输出设备对图像中的网点进行挂网处理之后输出,以达到所需图像的目的。
现有技术中的网点是通过采用调幅挂网技术生成,将网点按照几何形状对称二分,并采用双队列的方式存储处理,生成双队列阈值矩阵,即调幅网点是根据双队列阈值矩阵所生成的,而该双队列中的队头的调幅网点最小是1个几何设备点大小的黑点和1个几何设备点大小的白点。然而,在实际应用中,现有的调幅挂网技术所生成的网点在输出到打印机或印刷机等图像输出设备上后,因图像输出设备的影响,该双队列的队头的网点可能被周围的网点挤压覆盖而将丢失或无法呈现,影响了成像质量。
基于该技术问题,本申请是在现有调幅双队列的调幅网点生成方法的基础上,引入了调频挂网算法。即在调幅网点生成的同时,对双队列队头的网点进行调频处理,调制出大小可变的调频网的分布,同时利用抖动控制理论在调幅与调频网的过度上,进行平滑处理,从而最终达到双队列队头网点的有效保留,提升输出网点的层次质量,以进一步的提升成像质量。
下面结合几个具体的实施例,对本申请的技术方案进行描述。
图2为本申请一实施例提供的网点生成方法的流程示意图,如图2所示,本申请实施例的方法可以包括:
S201、获取调幅网点阈值矩阵的第一双队列数据集合。
其中,第一双队列数据集合包括N行黑队列和N行白队列,N行黑队列与N行白队列分别对应,N为大于等于1的整数。
根据调幅挂网算法生成调幅网点阈值矩阵的双队列数据集合,该双队列数据集合称为第一双队列数据集合,其中,上述调幅挂网算法属于现有技术,此处不再赘述。图3为本申请一实施例提供的第一双队列数据集合中的队列项示意图,如图3所示,图3中的黑队列的队列1至队列N中的每个队列项与阈值矩阵的大小、网点频率、几何设备点个数以及图像输出设备的参数等有关。图3中的黑队列与白队列分别对应,黑队列、白队列的队列项中,每个队列项代表组成单个网点的一个几个设备点。
可选地,所述调幅网点阈值矩阵为横向与纵向队列项个数相等的正方形矩阵。
可选地,所述调幅网点阈值矩阵中,每个黑队列和对应的白队列用于生成一个网点。
S202、获取调频网点的大小尺寸为S个几何设备点,S为大于等于1的整数。
根据网点对调频特性的要求,结合浅色层次和深色层次不同密度区对网点再现的不同技术要求以及图像输出设备输出稳定性对不同密度区域网点最小尺寸的要求,获取调频网点的大小尺寸S,该尺寸单位以几何设备点为最小单元。例如S=9时,该调频网点大小为9个设备几何点,即在进行实际印刷或打印图像时,浅色层次和深色层次密度区的一个网点包含9个几何设备点。其中,浅色层次密度区的网点为白色队列对应的网点,深色层次密度区的网点为黑色队列对应的网点。
S203、根据调频网点的大小尺寸,确定N行白队列和N行黑队列中每一队列队头中需抖动处理的前S个队列项。
根据上述S202中所获取的调频网点的大小尺寸,确定上述述S201中所获取的第一双队列数据集合的N行白队列和N行黑队列的队头中需抖动处理的队列项,需抖动处理的队列项为N行白队列和N行黑队列中每一队列队头的前S个队列项。
可选地,S203的一种可能的实现方式为:
S203a、根据调频网点的大小尺寸,将所述N行白队列和所述N行黑队列中同一队列队头的前S个队列项都赋值为同一预设数据值。
根据调频网点的大小尺寸,将N行白队列和所述N行黑队列中同一队列队头的前S个队列项都赋值为同一预设数据值。例如,在黑队列中,将队列顺序排在最前面的S个队列项都赋值为同一预设数据值例如为L;在白队列中,将队列顺序排在最前面的S个队列项的赋值同一预设数据值,该预设值为对黑队列中的预设值做反相处理,例如为65535减去L,例如图4所示。图4为本申请一实施例提供的需抖动处理的前S个队列项对应的双队列示意图。图4中所示黑队列和白队列分别对应的每个队列中被赋值的各队列项将组成大小一致的调频网点。图4中所示黑队列和白队列分别对应的每个队列间的赋值是不同的。
S203b、根据预设数据值,确定需抖动的队列项。
由于黑队列和白队列分别对应的每个队列间的赋值是不同的,因此,可以根据上述S203a中的预设数据值,确定黑队列和白队列分别对应的每个队列中需抖动的队列项例如为前S个队列项。
S204、对每一队列队头的前S个队列项进行抖动处理,获得第二双队列数据集合。
由于调幅网点是按照一定角度规则的排列,随着颜色层次大小逐渐增大而增大。而调频网点没有大小变化,调频时网点是固定大小,随着层次变化,网点大小不变化,只是间距疏密程度变化,且是随机分布的。因此,在确定黑队列和白队列分别对应的每个队列中需抖动的队列项之后,对黑队列和白队列分别对应的每个队列中需抖动的前S个队列项进行抖动处理,使得抖动处理之后的前S个队列项平滑过渡到第一双队列集合中的其他队列项,即实现调频网点到调幅网点的平滑过渡。其中,抖动处理的具体实现过程参见下述实施例中的描述。
可选地,S204中的每一队列队头的前S个队列项进行抖动处理一种可能的实现方式为:
针对每一队列队头的前S个队列项每一队列项,采用如下公式一,获得所述队列项的目标数据值,并将所述队列项赋值为所述目标数据值。
V=(a×u+b×v)mod(c) 公式一
上述公式一中,u、v表示每个队列项在调幅网点阈值矩阵内的水平及竖直方向的坐标,a、b、c三个数值是互为质数的三个正整数,且都大于0小于等于255,V表示抖动处理后的所述队列项的目标数据值。
针对上述公式中的参数a,b,c,参数a,b,c取值的一种可能的实现方式为:采用Tribonacci Series计算方法获取,其计算公式如下:
Trn=Trn-1+Trn-2+Trn-3 公式二
上述公式二中,n表示队列的序列号,且n为大于2的整数。上述公式二中取Tr0=0,Tr1=1,Tr2=1。
例如,上述公式一中的参数a,b,c取值的针对队列1中的参数a,b,c,取a=0,则b在a的基础上依次递增取值,例如b=0+1+1=2,c在b的基础上依次递增取值,例如c=1+2+2=5。
针对队列2中的参数a,b,c,取a=1,则b在a的基础上依次递增取值,例如b=1+2+2=5,c在b的基础上依次递增取值,例如c=2+3+3=8。
针对队列3中的参数a,b,c,参数a可以根据上述公式二,计算出a=Tr3=Tr2+Tr1+Tr0=0+1+1=2,则b在a的基础上依次递增取值,例如b=1+2+2=5,c在b的基础上依次递增取值,例如c=2+3+3=8。此时,a、b、c三个参数值是互为质数的三个正整数。
图5为本申请一实施例提供的抖动处理后的阈值矩阵示意图,如图5所示的括号中的数值为抖动处理所计算的相应队列项的目标数据值。
S205、根据所述第二双队列数据集合,生成与所述调幅网点阈值矩阵对应的网点。
根据S204所获取的第二双队列数据集合,生成与调幅网点阈值矩阵对应的网点。最终得到的网点阈值矩阵在浅色层次和深色层次网点分布如图6所示,图6为本申请一实施例提供的抖动处理后的浅色和深色区域网点分布示意图,图6中的浅色层次和深色层次网点规则分布,且被有效的保留了下来。
本申请实施例提供的一种网点生成方法,通过获取调幅网点阈值矩阵的第一双队列数据集合,其中,所述第一双队列数据集合包括N行黑队列和N行白队列;以及获取调频网点的大小尺寸为S个几何设备点;然后根据所述调频网点的大小尺寸,确定所述N行白队列和所述N行黑队列中每一队列队头中需抖动处理的前S个队列项;对每一队列队头的前S个队列项进行抖动处理,获得第二双队列数据集合;根据所述第二双队列数据集合,生成与所述调幅网点阈值矩阵对应的网点。因此,上述方法在生成调幅网点的基础上,对双队列队头的队列项进行调频抖动处理,从而有效的保留了双队列队头的网点的,进一步的提升了成像的质量。
可选地,上述实施例中的不同队列间队头的前S个队列项赋值的预设数据值不相同。
可选地,上述实施例中的黑队列中由队头到队尾的队列项的数据值由小变大,所述白队列中队头到队尾的队列项的数据值由大变小。
图7为本申请一实施例提供的裂缝区的品质因子确定装置的结构示意图,如图7所示,本申请实施例的装置700可以包括:获取模块710,处理模块720。
所述获取模块710,用于获取调幅网点阈值矩阵的第一双队列数据集合,其中,所述第一双队列数据集合包括N行黑队列和N行白队列,所述N行黑队列与所述N行白队列分别对应,N为大于等于1的整数;以及获取调频网点的大小尺寸为S个几何设备点,S为大于等于1的整数。
所述处理模块720,用于根据所述调频网点的大小尺寸,确定所述N行白队列和所述N行黑队列中每一队列队头中需抖动处理的前S个队列项;以及对每一队列队头的前S个队列项进行抖动处理,获得第二双队列数据集合;以及根据所述第二双队列数据集合,生成与所述调幅网点阈值矩阵对应的网点。
可选地,所述处理模块720,具体用于:针对每一队列队头的前S个队列项每一队列项,采用如下公式,获得所述队列项的目标数据值,并将所述队列项赋值为所述目标数据值。
V=(a×u+b×v)mod(c)
上述公式中,u、v表示每个队列项在调幅网点阈值矩阵内的水平及竖直方向的坐标,a、b、c三个数值是互为质数的三个正整数,且都大于0小于等于255,V表示抖动处理后的所述队列项的目标数据值。
可选地,所述处理模块720,具体用于:根据所述调频网点的大小尺寸,将所述N行白队列和所述N行黑队列中同一队列队头的前S个队列项都赋值为同一预设数据值;根据预设数据值,确定需抖动的队列项。
可选地,不同队列间队头的前S个队列项赋值的预设数据值不相同。
可选地,所述调幅网点阈值矩阵为横向与纵向队列项个数相等的正方形矩阵。
可选地,所述调幅网点阈值矩阵中,每个黑队列和对应的白队列用于生成一个网点。
可选地,所述黑队列中由队头到队尾的队列项的数据值由小变大,所述白队列中队头到队尾的队列项的数据值由大变小。
本实施例的装置,可以用于执行上述各方法实施例的技术方案,其实现原理和技术效果类似,此处不再赘述。
图8为本申请一实施例提供的电子设备的结构示意图,如图8所示,本实施例的电子设备800可以包括:存储器810、处理器820。
存储器810,用于存储程序指令。
处理器820,用于调用存储器810中的程序指令,执行:
获取调幅网点阈值矩阵的第一双队列数据集合,其中,所述第一双队列数据集合包括N行黑队列和N行白队列,所述N行黑队列与所述N行白队列分别对应,N为大于等于1的整数;以及获取调频网点的大小尺寸为S个几何设备点,S为大于等于1的整数。
所述处理器820,用于根据所述调频网点的大小尺寸,确定所述N行白队列和所述N行黑队列中每一队列队头中需抖动处理的前S个队列项;以及对每一队列队头的前S个队列项进行抖动处理,获得第二双队列数据集合;以及根据所述第二双队列数据集合,生成与所述调幅网点阈值矩阵对应的网点。
可选地,所述处理器820,具体用于:针对每一队列队头的前S个队列项每一队列项,采用如下公式,获得所述队列项的目标数据值,并将所述队列项赋值为所述目标数据值。
V=(a×u+b×v)mod(c)
上述公式中,u、v表示每个队列项在调幅网点阈值矩阵内的水平及竖直方向的坐标,a、b、c三个数值是互为质数的三个正整数,且都大于0小于等于255,V表示抖动处理后的所述队列项的目标数据值。
可选地,所述处理器820,具体用于:根据所述调频网点的大小尺寸,将所述N行白队列和所述N行黑队列中同一队列队头的前S个队列项都赋值为同一预设数据值;根据预设数据值,确定需抖动的队列项。
可选地,不同队列间队头的前S个队列项赋值的预设数据值不相同。
可选地,所述调幅网点阈值矩阵为横向与纵向队列项个数相等的正方形矩阵。
可选地,所述调幅网点阈值矩阵中,每个黑队列和对应的白队列用于生成一个网点。
可选地,所述黑队列中由队头到队尾的队列项的数据值由小变大,所述白队列中队头到队尾的队列项的数据值由大变小。
本实施例的电子设备,可以用于执行上述各方法实施例的技术方案,其实现原理和技术效果类似,此处不再赘述。
图9为本申请另一实施例提供的电子设备的结构示意图。参照图9,电子设备900包括处理组件922,其进一步包括一个或多个处理器,以及由存储器932所代表的存储器资源,用于存储可由处理组件922的执行的指令,例如应用程序。存储器932中存储的应用程序可以包括一个或一个以上的每一个对应于一组指令的模块。此外,处理组件922被配置为执行指令,以执行上述各方法实施例中的方案。
电子设备900还可以包括一个电源组件926被配置为执行电子设备900的电源管理,一个有线或无线网络接口950被配置为将电子设备900连接到网络,和一个输入输出(I/O)接口958。电子设备900可以操作基于存储在存储器932的操作系统,例如WindowsServerTM,Mac OS XTM,UnixTM,LinuxTM,FreeBSDTM或类似。
一种非临时性计算机可读存储介质,当该存储介质中的指令由电子设备的处理器执行时,使得电子设备能够执行上述各方法实施例中的方案。
最后应说明的是:以上各实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述各实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的范围。