处理图像数据的制作方法

文档序号:12283207阅读:248来源:国知局
处理图像数据的制作方法与工艺

打印系统可以包括液体施加器和图像管线模块。图像管线模块可以处理图像数据以将连续色调图像转变成半色调图像数据。液体施加器设备可以向衬底施加打印液体以基于半色调图像数据来形成图像。

附图说明

非限制性示例在以下描述中描述,参照随附于此的图来阅读,并且不限制权利要求的范围。图中图示的组件和特征的尺寸主要为了呈现的方便和清楚而选择并且不一定按照比例。参照随附的图:

图1是图示了根据示例的打印系统的框图。

图2是图示了根据示例的打印系统的透视图。

图3是图示了根据示例的对应于由图2的打印系统处理的图像数据的图像的顶视图。

图4A-4C分别为根据示例的图2的打印系统的拉普拉斯算子阵列、第一滤波器阵列和第二滤波器阵列的代表性视图。

图5是图示了根据示例的处理图像数据的方法的流程图。

图6是图示了根据示例的诸如打印系统之类的计算设备的框图,其包括处理器和存储指令以操作打印系统的非暂时性计算机可读存储介质。

具体实施方式

打印系统可以包括图像管线模块和液体施加器,所述图像管线模块用于处理图像数据,所述液体施加器用于向衬底施加打印液体以在其上形成图像。图像可以基于由打印系统的图像管线模块处理的图像数据。图像管线模块例如可以将连续色调图像数据转变成半色调图像数据。然而,图像管线模块可以利用相同的半色调化算法处理图像数据,所述算法诸如误差扩散算法或基于阵列的算法。然而,相同半色调化算法向不同图像类型的应用可能不提供对各种图像类型的增强。例如,半色调化算法可以产生增强的图形图像类型,但是不产生增强的线条渲染。也就是说,误差扩散算法可能倾向于丢失和混淆线条。同样,基于阵列的算法可能倾向于产生有噪声、较低质量的线条。因此,某些图像类型可能未通过相同半色调化算法的应用而增强。

在示例中,打印系统包括标识模块和图像管线模块。标识模块基于图像数据而标识对应于线条的图像的线条区。标识模块还基于图像数据标识对应于没有线条的图像部分的图像的非线条区。图像管线模块包括用于处理图像数据的线性阈值阵列算法和半色调化算法。图像管线模块向线条区应用线性阈值阵列算法并且向非线条区应用半色调化算法,以形成经滤波的图像数据。相应地,应用于不同图像类型的不同算法提供对各种图像类型的增强。因此,可以增强图像的线条以及图形。

图1是图示了根据示例的打印系统的框图。参照图1,打印系统100包括标识模块10和图像管线模块12。标识模块10基于图像数据标识对应于线条的图像的线条区。标识模块10还基于图像数据标识对应于没有线条的图像部分的图像的非线条区。图像管线模块12包括用于处理图像数据的线性阈值阵列算法14和半色调化算法16。

参照图1,图像管线模块12可以与图像的非线条区独立地半色调化线条区。例如,图像管线模块12向线条区应用线性阈值阵列算法14。图像管线模块12还向非线条区应用半色调化算法16,以形成经滤波的图像数据。在一些示例中,半色调化算法16可以包括误差扩散算法和基于阵列的算法中的至少一个。

在一些示例中,标识模块10和图像管线模块12可以实现在硬件、包括固件的软件或其组合中。固件例如可以存储在存储器中并且由合适的指令执行系统执行。如果实现在硬件中,如在可替换示例中,标识模块10和图像管线模块12可以利用本领域中熟知的技术(例如,分立逻辑电路、专用集成电路(ASIC)、可编程门阵列(PGA)、现场可编程门阵列(FPGA))和/或其它今后开发的技术中的任一个或组合来实现。在其它示例中,标识模块10和图像管线模块12可以实现在软件和在计算设备的控制之下执行和存储的数据的组合中。

图2是图示了根据示例的打印系统的透视图。图3是图示了根据示例的对应于由图2的打印系统处理的图像数据的图像的顶视图。图4A-4C分别为根据示例的图2的打印系统的拉普拉斯算子阵列、第一滤波器阵列和第二滤波器阵列的代表性视图。打印系统200可以包括之前关于图1的打印系统100讨论的标识模块10和图像管线模块12。参照图2,在一些示例中,打印系统200还可以包括控制模块21和液体施加器23。控制模块21组合经滤波的图像数据和图像数据以形成增强的图像数据。液体施加器23基于增强的图像数据向衬底25施加打印液体以形成经打印的图像。在一些示例中,液体施加器设备23可以包括打印头、打印头模块、打印杆,和/或打印头组装件等。打印系统200例如可以包括喷墨打印机并且液体施加器单元23可以包括喷墨打印头。

参照图2-4,在一些示例中,标识模块10可以执行包括拉普拉斯算子阵列(例如拉普拉斯算子内核)41的拉普拉斯算子卷积、第一滤波器阵列42的卷积以及第二滤波器阵列43的卷积。在一些示例中,拉普拉斯算子阵列41可以包括3乘3阵列,如图4A中图示的,第一滤波器阵列42可以包括5乘5阵列,如图4B中图示的,并且第二滤波器阵列43可以包括5乘5阵列,如图4C中图示的。在一些示例中,第一和第二滤波器阵列42和43可以组合成经组合的滤波器阵列。

拉普拉斯算子是图像30的2阶空间导数的二维(2-D)各向异性度量。也就是说,拉普拉斯算子是增强的二阶或第二导数方法的示例。例如,具有像素强度值I(x,y)的图像的拉普拉斯算子由以下等式1给出:

等式1:。

图像30的拉普拉斯算子可以用于高亮其快速强度改变的区。拉普拉斯算子可以实现为相应图像30和拉普拉斯算子阵列之间的卷积。卷积是将两个数字阵列相乘在一起以产生第三数字阵列的数学运算。卷积通过在图像30之上使相应拉普拉斯算子阵列移位来执行。

相应拉普拉斯算子阵列可以移动穿过在其处拉普拉斯算子阵列在图像30的边界范围内的所有位置。每一个阵列位置(例如单元)可以对应于具有通过将阵列值和底层图像像素值相乘而计算的值的单个输出像素。换言之,在卷积期间,相应拉普拉斯算子阵列定中心在图像30的相应像素上,以利用与像素值相乘的拉普拉斯算子阵列之和取代对应像素值。在一些示例中,负值可以利用零来取代。在卷积之后,仅阈值范围中的相应单元可以被标识为线条。例如,阈值范围可以是0.4到0.7。随后,可以将结果得到的所计算的单元的数中的每一个加和在一起。

参照图2-4,在一些示例中,对应于由图像数据表示的图像30的线条的线条区31a和31b的标识可以包括标识竖直线条区31a和水平线条区31b。例如,水平线条区31b对应于图像30的水平线条。水平线条区31b可以通过执行第一滤波器阵列42的卷积来标识。此外,竖直线条区31a对应于图像30的水平线条。水平线条区31b可以通过执行第二滤波器阵列43的卷积来标识。在一些示例中,用于确定水平和竖直线条区31b和31a的相应卷积可以对边缘图像执行。此外,其中第一滤波器阵列42的卷积(例如水平卷积)大于第二滤波器阵列43的卷积(例如竖直卷积)的像素可以对应于水平线条区31b,并且其中竖直卷积大于水平卷积的像素可以对应于竖直线条区31a。可替换地,经组合的滤波器阵列(例如包括第一和第二滤波器阵列)的单个卷积可以用于确定水平线条区31b和竖直线条区31a二者。

参照图2-4,在一些示例中,图像管线模块12可以与图像30的非线条区32独立地半色调化线条区31a和31b。例如,图像管线模块12向线条区31a和31b应用线性阈值阵列算法14。在一些示例中,线性阈值阵列算法14应用于图像30的竖直线条区31a,以形成要在图像30的顶部上竖直拼接的经滤波的竖直线条区。此外,线性阈值阵列算法14应用于图像30的水平线条区31b,以形成要在图像30的顶部上水平拼接的经滤波的水平线条区。在一些示例中,规则且平滑的点的集合用于渲染连续线条的印象。此外,在一些示例中,空像素可以基于所要求的白色像素的百分比而在线条之上均匀地分布。

参照图2-4,在一些示例中,图像管线模块12还向非线条区32应用半色调化算法16以形成经滤波的图像数据。半色调化算法16可以包括误差扩散算法和/或基于阵列的算法。控制模块21可以组合经滤波的图像数据和图像数据以形成增强的图像数据。因此,将经滤波的图像数据添加回到原始图像数据中以增强图像30。在一些示例中,经滤波的数据可以缩放以对应于原始图像30的尺寸。液体施加器23基于由图像管线模块12处理的图像数据向衬底25施加打印液体以形成增强的图像。

图5是图示了根据示例的处理图像数据的方法的流程图。参照图5,在块S510中,对应于由图像数据表示的图像的线条的线条区由标识模块标识。例如,可以执行包括拉普拉斯算子阵列的拉普拉斯算子的卷积。拉普拉斯算子阵列可以包括3乘3阵列。在一些示例中,水平线条区对应于图像的水平线条并且可以通过执行第一滤波器阵列的卷积来标识。此外,在一些示例中,竖直线条区对应于图像的竖直线条并且可以通过执行第二滤波器阵列的卷积来标识。第一和第二滤波器阵列可以包括5乘5阵列。可替换地,经组合的滤波器阵列(例如包括第一和第二滤波器阵列)的单个卷积可以用于确定水平线条区和竖直线条区二者。在块S512中,对应于没有由图像数据表示的图像的线条的图像部分的非线条区由标识模块标识。

在块S514中,由图像管线模块向线条区应用线性阈值阵列算法。图像管线模块可以与图像的非线条区独立地半色调化线条区。例如,线性阈值阵列算法应用于图像的竖直线条区以形成要竖直放置在图像上的经滤波的竖直线条区。此外,线性阈值阵列算法应用于图像的水平线条区以形成要水平地放置在图像上的经滤波的水平线条区。在块S516中,不同于线性阈值阵列算法的半色调化算法由图像管线模块应用于非线条区。在一些示例中,半色调化算法包括误差扩散算法和基于阵列的算法中的至少一个。

图6是图示了根据示例的诸如打印系统之类的计算设备的框图,其包括处理器和存储指令以操作打印系统的非暂时性计算机可读存储介质。参照图6,在一些示例中,非暂时性计算机可读存储介质65可以包括在诸如打印系统之类的计算设备600中。在一些示例中,非暂时性计算机可读存储介质65可以整体或部分地实现为指令67,诸如本地存储在计算设备中或远程存储在例如在本文中被视为打印系统的部分的主机计算设备或服务器中的计算机实现的指令。

参照图6,在一些示例中,非暂时性计算机可读存储介质65可以对应于存储指令67的存储设备,指令67诸如计算机实现的指令和/或编程代码等。例如,非暂时性计算机可读存储介质65可以包括非易失性存储器、易失性存储器和/或存储设备。非易失性存储器的示例包括但不限于:电可擦除可编程只读存储器(EEPROM)和只读存储器(ROM)。易失性存储器的示例包括但不限于:静态随机存取存储器(SRAM)和动态随机存取存储器(DRAM)。

参照图6,存储设备的示例包括但不限于:硬盘驱动器、致密盘驱动器、数字多功能盘驱动器、光学驱动器和闪速存储器设备。在一些示例中,非暂时性计算机可读存储介质65可以甚至是在其上打印指令67的纸张或另一合适的介质,因为指令67可以例如经由纸张或其它介质的光学扫描而被电子捕获,然后被编译、解释或以其它方式以单个方式被处理,如果必要的话,并且然后存储在其中。处理器69一般检索和执行存储在非暂时性计算机可读存储介质65中的指令67,例如以操作诸如打印系统之类的计算设备600。在示例中,非暂时性计算机可读存储介质65可以由处理器69访问。

要理解的是,图5的流程图图示了本公开的示例的架构、功能性和/或操作。如果体现在软件中,每一个块可以表示包括一个或多个可执行指令以实现(多个)指定逻辑功能的模块、段或代码部分。如果体现在硬件中,每一个块可以表示用于实现(多个)指定逻辑功能的电路或数个互连的电路。尽管图5的流程图图示了执行的特定顺序,但是执行顺序可以不同于所描绘的顺序。例如,两个或更多块的执行顺序可以相对于所图示的顺序重布置。同样,在图5中相继图示的两个或更多块可以并发或部分并发执行。所有这样的变型在本公开的范围内。

已经使用其示例的非限制性详细描述来描述了本公开,这些描述不意图限制总的发明概念的范围。应当理解的是,关于一个示例描述的特征和/或操作可以与其它示例一起使用,并且并非所有示例都具有在特定图中图示的或关于这些示例之一描述的全部特征和/或操作。本领域技术人员将想到所描述的示例的变型。另外,术语“包括”、“包含”、“具有”及其词形变化应当意指,当使用在本公开和/或权利要求中时,“包括但不一定限于”。

要指出的是,以上描述的示例中的一些可能包括对总的发明概念可能不是必要的并且出于说明目的而描述的结构、动作或结构和动作的细节。本文所描述的结构和动作可由执行相同功能的等同物取代,即使这些结构或动作是不同的,如本领域中已知的那样。因此,总的发明概念的范围仅由如使用在权利要求中的要素和限制来限制。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1