CN1902826A - 分割游程长度编码方法和设备 - Google Patents

分割游程长度编码方法和设备 Download PDF

Info

Publication number
CN1902826A
CN1902826A CNA2004800348160A CN200480034816A CN1902826A CN 1902826 A CN1902826 A CN 1902826A CN A2004800348160 A CNA2004800348160 A CN A2004800348160A CN 200480034816 A CN200480034816 A CN 200480034816A CN 1902826 A CN1902826 A CN 1902826A
Authority
CN
China
Prior art keywords
value
group
data
code
encoded
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CNA2004800348160A
Other languages
English (en)
Other versions
CN1902826B (zh
Inventor
M·R·利普曼
D·苏
R·B·罗宾逊
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Peerless Systems Corp
Original Assignee
Peerless Systems Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Peerless Systems Corp filed Critical Peerless Systems Corp
Publication of CN1902826A publication Critical patent/CN1902826A/zh
Application granted granted Critical
Publication of CN1902826B publication Critical patent/CN1902826B/zh
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M7/00Conversion of a code where information is represented by a given sequence or number of digits to a code where the same, similar or subset of information is represented by a different sequence or number of digits
    • H03M7/30Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction
    • H03M7/46Conversion to or from run-length codes, i.e. by representing the number of consecutive digits, or groups of digits, of the same kind by a code word and a digit indicative of that kind
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M7/00Conversion of a code where information is represented by a given sequence or number of digits to a code where the same, similar or subset of information is represented by a different sequence or number of digits

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)
  • Compression Of Band Width Or Redundancy In Fax (AREA)

Abstract

本发明的实施例包括一种用于对数据流进行无损编码和压缩的系统和方法。该数据流可以是图像、文本或二者的组合。可以从计算机应用程序或外设中接收该数据流。所述编码通过将数据流的连续值进行比较并基于连续数据值之间的差对数据进行编码来对数据流进行压缩。

Description

分割游程长度编码方法和设备
发明领域
【0001】本发明涉及无损数据压缩和编码。特别地,本发明的实施例涉及基于对数据流进行编码的压缩,其中基于数据流的连续值之间的差对数据流进行编码。
背景
【0002】打印装置包含多种输出显示装置。诸如激光打印机、喷墨打印机、绘图仪、图像设定器与其它打印设备的这些输出显示装置在纸或类似材料的表面上产生图像或视觉表示。许多打印装置通过相应于包含在位图(bitmap)或像素图(pixelmap)中的信息的打印点而在表面上形成图像。例如,光栅打印装置通过根据相应的位图打印以行和列布置的点而在表面上形成图像。
【0003】在计算机系统上运行的应用程序可以生成多个需要被一起打印的页面或图像。这些集合在一起的图像和页面组通常被称为作业(job)。常常可能在比可以打印每个任务更短的一段时间中请求多个作业。这些作业常常在完成先前排定的作业之后被排队等候打印。作业可以被发送到中间存储装置,在作业被发送到打印机之前将它们存储在中间存储装置中。
【0004】常常以页面描述语言(PDL)来描述作业中的页面,页面描述语言是用于描述将由输出装置显示的对象的高级语言。这些语言通常是允许精确表示页面的已解释语言。表示作业或作业组分(诸如页面、平面和带)的数据流或文件常常具有很大的尺寸。这导致由于其尺寸的低速数据传输和低速数据处理。
附图的简要描述
【0005】通过举例的方式借助附图对本发明的实施例进行说明,其中相同的附图标记指示类似的元件,并且附图不是限制性的。应当注意,在本公开内容中,当提到“一个”实施例时不一定是指相同的实施例,并且这种提法意味着至少一个。
【0006】图1A是示意性的解码数据路径的图示。
【0007】图1B是示意性的编码数据路径的图示。
【0008】图2A是编码处理的流程图。
【0009】图2B是解码处理的流程图。
【0010】图3A是示意性的分类的图示。
【0011】图3B是示意性的编码的图示。
【0012】图3C是示意性的编码的第二模式的图示。
详细描述
【0013】图1A和1B是示意性的编码和解码数据路径的图。图1A说明了解码数据路径,其中从存储装置117上的文件或类似的数据结构中获取编码的数据并将其放置在存储器119中。存储装置117可以是硬盘、可移动的介质或类似的存储装置。存储器119可以是同步动态随机存取存储器(SDRAM)或类似的装置。解码处理器121从存储器119中取出编码的数据。在一个实施例中,解码处理器121可以是运行解码应用程序的软件实现的通用处理器(GPP)。在另一实施例中,解码处理器121是专用集成电路(ASIC)。解码处理器121包括检出器101和解码器103。检出器101对来自存储器119的编码的数据字进行解析,并向解码器103发送单独的代码。检出器101可以是电路或由解码处理器121执行的软件。解码器103可以是电路或由解码处理器121执行的软件。解码器103将所述代码转换成光栅数据流或类似格式的数据流,该数据流被发送到输出接口105。输出接口105准备数据并将数据发送到诸如应用程序、存储装置或类似目的地的输出目的地。在一个实施例中,输出接口105可以是打印控制器接口,其将进入的光栅数据流转换成一组驱动打印机械(print engine)的信号。
【0014】图1B说明编码数据路径,其中从例如扫描机械或类似装置的输入源中接收作为数据流的数据。该数据流通过诸如通用串行总线(USB)或类似介质的介质被输入接口129所接收。输入接口129向编码处理器127发送作为一组字节或字的数据。在一个实施例中,编码处理器127可以是执行编码应用程序的软件实现的GPP。在另一实施例中,编码处理器127是ASIC。编码处理器127包括编码器113和打包器115。编码器113可以是使用下面描述的分割游程长度编码(SRLE)对从输入接口129接收的字节进行编码的电路或软件。然后编码的数据被发送到打包器115。打包器115可以是电路或软件,其接收可变大小的代码,并通过将代码填塞到字中以及将代码分解在多个字上来形成字。然后将打包的代码的字存储在存储器125中,并随后将其发送到存储装置117。存储器125可以是SDRAM或类似的装置。存储装置117可以是硬盘、可移动介质或类似的存储装置。
【0015】多个解码和解码处理器(121,127)可以各自被用在并行数据路径中。在一个实施例中,独立的数据路径可以被用来处理带、页面、或平面。例如,独立的并行数据路径可以被用于红、绿和蓝平面(RGB)。
【0016】图2A是用于通过编码处理器对数据流进行编码的SRLE编码处理的流程图。在一个实施例中,对每一个进入的字节或数据单位进行分类、分组,并将其编码为字面值(Literal)代码、近匹配(NearMatch)代码、或匹配(Match)代码。近匹配代码可以被进一步划分成近匹配重复代码和近匹配单一代码。
【0017】字面值代码被用来对数据流的值序列中的单一初始值和偏离先前值超过已定义范围的各单一值进行编码。例如,如果范围被定义为-16到+15或近似于15或16的绝对值差,则如果值50(十进制)跟在值20的后面,那么值50将被编码为字面值。然而,如果值50跟在值45的后面,则值50将不被编码为字面值,这是因为所述差5落入-16到+15的范围内。
【0018】近匹配代码被用来对数据流序列中的在已定义范围内偏离先前值的值进行编码。近匹配代码包括游程长度字段,以便指示在数据流中出现的连续相同值的数量。在一个实施例中,独立的近匹配单一代码具有比一般的近匹配代码更小的尺寸,并且可以在压缩方面被用作最佳化。近匹配单一编码不具有游程长度字段,这使其比可以具有任意大小的游程长度字段的一般的近匹配代码更小。在另一实施例中,不使用近匹配单一编码,并且近匹配重复代码可以对长度为1的游程长度进行编码。在一个实施例中,游程长度字段的大小是10比特。
【0019】匹配代码被用来对数据流序列中的与位于其之前的值相同的值进行编码。例如,如果字面值代码后面的值完全相同,那么就使用匹配代码。匹配代码包括游程长度字段,以便指示在数据流中出现的连续相同值的数量。在一个实施例中,游程长度是10比特。游程长度字段的大小可以被改变,以处理更长或更短的游程。
【0020】在一个实施例中,通过对一组状态变量进行初始化,编码处理开始(块201)。状态变量可以包括跟踪当前被处理的游程类型的游程类型变量、跟踪当前游程的长度(即,相同连续值的数量)的游程长度变量、以及跟踪之前被处理的先前值的“旧值”。在这个上下文中,游程是可以以单一代码进行编码的一组值。游程类型相应于可能的编码类型(例如,近匹配、匹配或字面值)。默认的旧值可以是0或其它任何已知的值。默认的游程长度是0。
【0021】通过在数据流中顺序地获取下一个值或者“新值”(例如,字节),该处理继续(块203)。数据流可以包含8比特每像素的值(bpp)。在另一实施例中,编码的基本单位可以是字或一组任意长度的比特。然后可以确定是否已到达文件末尾(块205)。如果已到达文件末尾,那么基于指定的游程类型和所计算的游程长度对任何未编码的游程进行编码(块207)。如果检测到文件末尾,则可以生成附加的文件末尾代码(块208)。
【0022】如果未检测到文件末尾,那么检查新值,以确定其是否和所存储的旧值相同(块209)。如果新值和旧值相同,那么游程长度增加1(块211)。在对数据流中的每一值进行处理时,游程长度变量充当计数(tally),以跟踪游程的长度。在游程长度计数已被增加之后,然后检查游程类型,以确定是否已经为当前游程指定了近匹配(块213)。例如,如果值序列0×20 0×26 0×26(十六进制)出现,则第二值0×26开始一个近匹配的游程。当对第三值0×26进行处理时,游程长度增加1。在检测到值的变化或者游程长度超出固定的编码界限之前,不对游程进行编码。
【0023】在一个实施例中,如果已指定近匹配,那么对游程长度进行检查以确定是否已达到编码界限(块215)。如果游程长度没超出其编码界限,那么就获取下一个值以用于处理(块203)。在一个实施例中,检查游程长度以确定其是否超出4。如果游程长度已超出4,那么该游程被编码为近匹配重复代码(块217)。然后对于任何也是相同的后续值将游程类型指定为匹配(块219)。如果序列中的值与先前值精确匹配,则指定匹配游程,其中该先前值被编码为字面值或者(在游程长度有限的情况下)被编码为近匹配重复。然后将游程长度复位到0(块220)。然后可以获取下一个值以用于处理(块203)。对于游程长度4的检查和对于近匹配重复代码的编码基于只具有2比特以用于对游程长度进行编码的近匹配重复代码。在另一实施例中,近匹配重复代码可以具有更大或更小的比特长度,以允许编码不同大小的游程长度。对游程长度的检查将被相应地调整到用于游程长度字段的比特数。在另一个实施例中,近匹配重复代码可以被构造成处理任意大小的游程长度。
【0024】然后,在新值等于旧值(块209)并且游程类型不是近匹配(块213)的情况下,指定匹配的游程类型(块221)。在一个实施例中,如果已指定匹配,那么对游程长度进行检查以确定是否已达到编码界限(块223)。如果游程长度已超出其编码界限,那么获取下一个值以用于处理(块203)。在一个实施例中,检查游程长度以确定其是否超出1027。如果游程长度超出1027,那么将该游程编码为匹配代码(块225)。然后将游程长度复位到0(块227)。然后可以获取下一个值以用于处理(块203)。对于游程长度1027的检查和对于匹配代码的编码基于只具有10比特以用于对游程长度进行编码的匹配代码。在另一实施例中,匹配代码可以具有更大或更小的比特长度,以允许对不同大小的游程长度进行编码。对游程长度的检查可以被相应地调整到游程长度字段的比特数。在进一步的实施例中,可以将匹配代码构造成处理任意大小的游程长度。
【0025】在新值不等于旧值的情况下(块209),进行检查以确定游程长度是否大于0(块229)。大于0的游程长度指示一个未编码的游程已结束,这是因为已出现值的变化。对游程类型进行检查以确定该游程是否是近匹配游程(块231)。如果该游程不是近匹配游程,那么将其编码为匹配代码(块239)。如果该游程是近匹配,那么进行检查以确定游程长度是否等于1(块233)。如果游程长度等于1,那么该游程被编码为近匹配单一代码(块235)。如果游程长度不等于1,那么将该游程编码为近匹配重复代码(块237)。在另一实施例中,可以不使用近匹配单一代码,并且不是匹配的所有游程都被编码为近匹配代码。不管对游程的编码如何(匹配、近匹配重复或近匹配单一),处理继续,这是因为对游程的编码不包括新值。新值通过偏离旧值来指示游程结束。
【0026】在新值不等于旧值的情况下(块209),将新值与旧值相比较,以确定二者的差是否落入预定义范围内(块241)。在一个实施例中,通过使用8bpp值,可以使用-16到+15的范围。这个范围确定新字节中的低阶比特是否已从先前字节中的低阶比特发生变化。在流的第一值被分析的情况中,可以使用默认的已知旧值。例如,该默认值可以是0。如果该差在范围之外,那么该值被编码为字面值(块243),并且游程类型被指定为字面值(块245)。例如,数据流的初始值可以是0×20。如果默认旧值是0,那么值0×20被编码为字面值。游程长度被复位到0,这是因为在当前流程中上一个获取的值已被编码,并且要获取的下一个值将开始下一游程(块247)。
【0027】然而,如果所述差在预定义范围内,那么游程类型被指定为近匹配(块251)。将游程指定为近匹配是标识这种情况的分类:当前被分析的值序列将被编码为近匹配,并且在编码可以完成之前必须确定游程的长度。近匹配的游程长度被设置为1,这是因为当前游程包括上一个获取的值(块253)。在任一种情况中(编码为字面值或指定为近匹配),在下一个值被获取(块203)之前,新值被保存为旧值(块249)并且对数据流的处理继续。
【0028】在一个实施例中,图2A的流程图中的编码方案是用来对数据流进行编码的第一编码模式。第一编码处理对于高分辨率原始图像数据是最优的。第一编码处理可以是默认处理。使用这个第一编码模式,可以使用图2B的流程图所示的简单解码处理对所编码的数据进行解码。通过获得下一个要被解码的代码,解码处理开始(块271),并且解码处理生成从该代码导出的二进制值(块273)。字面值包含精确的二进制值。近匹配代码指示要被生成的二进制值和已生成的先前二进制值之间的差。匹配代码指示要被生成的二进制值与先前的二进制值相同。解码处理通过检查正被评估的代码的游程长度来确定该游程是否完成(块275)。如果该游程未完成,则解码处理减少游程长度(块281)并生成下一个值(块273)。当该游程完成时,该处理检查文件代码的末尾(块277)。如果没有到达文件的末尾,那么获取要被评估的下一个代码(块271)。如果找到文件的末尾,那么解码处理完成(块279)。
【0029】在一个实施例中,可以与关于图2A在上面描述的第一编码处理相结合地利用第二解码处理。第二编码处理可以用于已知包含许多长的值游程的数据流。例如,第二编码处理可以用于包含许多长的相同像素游程的图像。在一个实施例中,第二编码处理和已被过滤的数据一起使用。第二处理连同紧随其后的相同值的数量的游程长度一起对像素、字节或数据单位的完全值进行编码。第一编码方法(即,SRLE编码)和第二编码方法包括指示切换到其它模式的代码。这使编码器能依据数据类型或文档的已知属性、使用上述两种编码处理来对文档进行编码。在第一处理和第二处理之间的切换可以由编码器按照需要在扫描线内、从扫描线到扫描线或从带到带自适应地完成。这实现改进的压缩比,同时保持图像质量。切换代码允许解码器容易地检测到编码处理中的切换,以便对文件或数据流进行快速解码。在另一实施例中,可以利用其它编码处理以作为第二编码方法。其它的第二编码方法包括TIFF、JPEG和类似的算法。
【0030】可以和被分割成平面(例如,青、黄、品红和黑平面)、带或类似结构的文档一起使用第一和第二编码系统。可以与面向对象的文档和文件一起使用第一和第二编码系统,其中,主要对由文件或这些文件的解释所关联或封装的数据进行编码。所述两种编码处理都是无损的。
【0031】第一编码系统可以达到513.5∶1和0。8∶1之间的压缩比(即,在压缩文件和原始文件之间的513.5∶1的压缩比)。具有600点每英寸(dpi)的图片文件的压缩比平均在2到6比1之间。包含文本的文件的压缩比平均高于30比1。包含艺术线条的文件的压缩比平均高于10比1。第二编码系统可以达到391.2∶1和0.73∶1之间的压缩比。具有600dpi的图片文件的压缩比平均在3到10比1之间。包含文本的文件的压缩比平均高于30比1。包含艺术线条的文件的压缩比平均高于30比1。
【0032】图3A是示意性的编码和数据流。数据流301由一系列的连续字节组成。所述字节以十六进制编写。第一字节303是0×20,并且最后的字节305是0×62。各字节被顺序处理。第一字节303被编码为字面值307。在一个实施例中,没有先前值,并且第一字节303必须被分类为字面值。在另一实施例中,编码处理器利用已知的默认起始值,并且关于该默认值对第一实际值进行分类。
【0033】数据流中下两个字节309都是0×26。第一个被分类为近匹配,这是因为其与先前值0×20的差值落入-16到+15的预定范围内(即,6)。下一个值也是0×26。这个值与先前值分组在一起,并且分类被最终定为具有2字节的游程的近匹配311。下一个字节313被分类为近匹配单一315,这是因为随后的字节不具有匹配值。字节317具有值0×57。这个字节与先前字节的差落在已定义范围之外。字节317被编码为字面值。随后的具有值0×57的字节组319被编码为具有游程8的匹配。在文件末尾处生成专用的文件末尾代码321。
【0034】图3B是数据流301的示意性的编码。这个编码利用表I的操作码和格式。本领域技术人员应当理解,可以使用其它代码将数据分类成字面值、近匹配、匹配和专用逸出码的基础分类。所有的值都是二进制的。操作码标识数据分类的类型。与操作码相关联的游程长度字段标识该类别的连续值的数量。值字段是编码的序列的实际值或与先前编码的差值。用于字面值的字段长度基于对8比特每像素数据进行的编码。该字段大小可以被调整,以反映要被编码的数据的每像素比特的大小。近匹配操作码的字段大小基于标识该数据类别的范围。如果利用更宽或更窄的范围,可以调整字段长度。
  类型   操作码   游程长度   值字段长度
  字面值近匹配单一近匹配重复具有游程2具有游程3具有游程4匹配具有游程1具有游程2具有游程3具有游程4具有游程5   100111111111111111111111111111111 00011000011000000000000000000001   xxxxxxxx(8)xxxxx(5)xxxxx(5)xxxxx(5)xxxxx(5)
  具有游程1027文件末尾切换模式   1111110000000000000011   1111111111
                        表I
【0035】图3C是对数据流进行编码的示意性第二模式的图示。第二编码模式对于具有相等值的长游程的数据是最优的。数据流351被解析为一组值和游程长度对353。每一对的所述值是序列的值,并且游程长度是该值的连续出现的数量。数据流351的第一值361是0×00。有8个匹配的连续值。示意性的编码流355是值和游程长度对353的二进制表示。所述编码是基于示意性的编码方案,其中前8个比特表示编码的值,并且接下来的3个比特表示游程的长度,或指示在随后的10比特中对长流程进行编码(即,二进制值0b000-0b110编码1到7的游程长度,同时二进制值0b111指示接下来的10比特编码长度为8到1027的游程)。本领域普通技术人员应当理解,可以用其它类似的编码方案来表示游程长度。例如可以用多于3或10个比特来指示游程,或者可以使用单一游程字段长度。第二模式也可以具有保留的值以指示文件的末尾(例如,二进制值xxxxxxxx 111 11111111100)或者编码模式的切换(例如,二进制值xxxxxxxx 111 1111111111)。
【0036】在前述的说明书中,已经参考其特定实施例对本发明进行了描述。然而很明显的是,在不脱离所附权利要求书中阐述的本发明的精神和范围的情况下,另外可以进行各种修改和变化。因此,说明书和附图应被看作是说明性而不是限制性的。

Claims (23)

1、一种方法,包括:
将一组数据的值与先前值进行比较;
如果其差在一个范围之外,就用第一代码对该组数据进行编码;
如果该组数据的值不匹配该先前值但是在该范围内,就用第二代码对该组数据进行编码;以及
如果第一组数据的值不匹配该先前值,就用第三代码对该组数据进行编码。
2、如权利要求1所述的方法,其中第一代码包括该组数据的实际值。
3、如权利要求1所述的方法,其中第二代码包括所述差和相同连续值的数量。
4、如权利要求1所述的方法,其中第三代码指示匹配和相同连续值的数量。
5、如权利要求1所述的方法,其中利用第一代码、第二代码和第三代码的其中之一对第一组数据进行的编码是无损的。
6、如权利要求1所述的方法,进一步包括:
如果第一组数据的值在第一范围内且随后的值不匹配第一组数据的值,就用第四代码对该组数据进行编码。
7、如权利要求1所述的方法,其中所述范围被最优化,以对包括8比特像素的该组数据进行编码。
8、如权利要求1所述的方法,进一步包括:
切换到替换的编码模式。
9、一种设备,包括:
对包括第一值和第二值的数据流进行编码的处理器,该处理器将数据的第一值与第二值进行比较以确定其差,如果该差是0,则该处理器用第一代码对第二值进行编码,如果该差在一个范围内,则该处理器用第二代码对第二值进行编码,而如果该差在该范围之外,则该处理器用第三代码对第二值进行编码。
10、如权利要求9所述的设备,进一步包括:
耦合到该处理器的第一装置,其用于将从该处理器接收的代码的数据流分割成一组字。
11、如权利要求9所述的设备,其中所述处理器是专用集成电路。
12、如权利要求9所述的设备,进一步包括:
存储该数据流的存储器装置。
13、一种设备,包括:
对数据流进行解码的处理器,该处理器从包括一组对该数据流进行编码的操作码的该数据流中生成二进制输出,其中第一操作码标识字面值,第二操作码标识一组匹配值,第三操作码标识一组匹配值和差值。
14、如权利要求12所述的设备,进一步包括:
耦合到该处理器的第一装置,其用于对来自该数据流的字进行解析以输出到该处理器。
15、如权利要求12所述的设备,其中所述处理器是通用处理器。
16、如权利要求13所述的设备,进一步包括:
存储该数据流的存储器装置。
17、一种设备,包括:
用于将一组数据的值与先前值进行比较的装置;
如果其差在一个范围之外、用于用第一代码对该组数据进行编码的装置;
如果该组数据的值不匹配该先前值但是在该范围内、用于用第二代码对该组数据进行编码的装置;以及
如果该组数据的值不匹配该先前值、用于用第三代码对该组数据进行编码的装置。
18、如权利要求17所述的设备,进一步包括:
如果该值在第一范围内并且随后的值不匹配该组数据的值、用于用第四代码对该组数据进行编码的装置。
19、如权利要求17所述的设备,其中所述范围被最优化,以对包括8比特像素的该组数据进行编码。
20、如权利要求17所述的设备,进一步包括:
对于具有相同像素的长游程的数据流最优化的、用于切换编码模式的装置。
21、一种机器可该介质,具有存储在其中的一组指令,当执行该组指令时,该组指令导致机器执行一组操作,该组操作包括:
将一组数据的值与先前值进行比较;
如果其差在一个范围之外,就用第一代码对该组数据进行编码;
如果该组数据的值不匹配该先前值但是在该范围内,就用第二代码对该组数据进行编码;以及
如果第一组数据的值不匹配该先前值,就用第三代码对该组数据进行编码。
22、如权利要求21所述的机器可读介质,具有存储在其中的另外的指令,当执行所述另外的指令时,所述另外的指令导致机器执行一组操作,该组操作进一步包括:
如果第一组数据的值在第一范围内并且随后的值不匹配第一组数据的值,就用第四代码对该组数据进行编码。
23、如权利要求21所述的机器可读介质,具有存储在其中的另外的指令,当执行所述另外的指令时,所述另外的指令导致机器执行一组操作,该组操作进一步包括:
切换到替换的编码模式。
CN2004800348160A 2003-09-25 2004-09-24 分割游程长度编码方法和设备 Expired - Fee Related CN1902826B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US10/672,426 US6919825B2 (en) 2003-09-25 2003-09-25 Split runlength encoding method and apparatus
US10/672,426 2003-09-25
PCT/US2004/031472 WO2005031534A2 (en) 2003-09-25 2004-09-24 Split runlength encoding method and apparatus

Publications (2)

Publication Number Publication Date
CN1902826A true CN1902826A (zh) 2007-01-24
CN1902826B CN1902826B (zh) 2011-11-23

Family

ID=34376362

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2004800348160A Expired - Fee Related CN1902826B (zh) 2003-09-25 2004-09-24 分割游程长度编码方法和设备

Country Status (8)

Country Link
US (1) US6919825B2 (zh)
EP (1) EP1685651A4 (zh)
JP (1) JP4906506B2 (zh)
KR (1) KR101180098B1 (zh)
CN (1) CN1902826B (zh)
AU (1) AU2004277271B2 (zh)
TW (1) TWI282529B (zh)
WO (1) WO2005031534A2 (zh)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101807924A (zh) * 2010-03-17 2010-08-18 黄斐芝 一种对二进制数据进行无损编码压缩的方法
CN102185612A (zh) * 2011-01-28 2011-09-14 张环蚀 游程编解码方法及装置
CN103019895A (zh) * 2012-12-28 2013-04-03 华为技术有限公司 文件存储方法及装置
CN104011673A (zh) * 2011-12-30 2014-08-27 英特尔公司 向量频率压缩指令
CN104137061A (zh) * 2011-12-30 2014-11-05 英特尔公司 向量频率扩展指令

Families Citing this family (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2091752B1 (en) * 2006-12-07 2010-10-06 Agfa-Gevaert N.V. Method of producing an information carrier
CN101803290A (zh) 2007-08-15 2010-08-11 迈凌有限公司 用于保存块交织编码信号的去交织疑符信息的方法和装置
US8484210B2 (en) * 2009-06-19 2013-07-09 Sybase, Inc. Representing markup language document data in a searchable format in a database system
US20110131200A1 (en) * 2009-12-01 2011-06-02 Sybase, Inc. Complex path-based query execution
US20120082395A1 (en) * 2010-09-30 2012-04-05 Microsoft Corporation Entropy Coder for Image Compression
CN102043126A (zh) * 2010-11-11 2011-05-04 浙江大学 一种基于测试向量相容的三游程编码压缩方法及其解压缩方法
US8983931B2 (en) * 2011-11-29 2015-03-17 Sybase, Inc. Index-based evaluation of path-based queries
US8848250B2 (en) 2012-10-23 2014-09-30 Kyocera Document Solutions Inc. Compression of halftoned digital images
US9639309B1 (en) 2015-10-14 2017-05-02 Kyocera Document Solutions Inc. Image conversion methods
US9632736B1 (en) 2015-10-14 2017-04-25 Kyocera Document Solutions Inc. Image conversion methods
US11704077B2 (en) 2021-10-20 2023-07-18 Ricoh Company, Ltd. Rasterized print job compression

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4409621A (en) * 1978-05-23 1983-10-11 Information International, Inc. Method and apparatus for compacting and decompacting character in accordance with a variety of methods
JPS57106273A (en) * 1980-12-22 1982-07-02 Ricoh Co Ltd Method for compression of multilevel picture data
JPS5840989A (ja) * 1981-09-04 1983-03-10 Nippon Telegr & Teleph Corp <Ntt> 画像情報の符号化処理方法および伝送制御方法
JPS61136378A (ja) * 1984-12-07 1986-06-24 Canon Inc 符号化方式
JPS6411484A (en) * 1987-07-06 1989-01-17 Fujitsu Ltd Decoding circuit
JPS6441572A (en) * 1987-08-07 1989-02-13 Sanyo Electric Co Coding system
US6553143B2 (en) * 1992-06-30 2003-04-22 Canon Kabushiki Kaisha Image encoding method and apparatus
JPH0730766A (ja) * 1993-06-24 1995-01-31 Canon Inc ファクシミリ装置
US6061474A (en) * 1995-06-22 2000-05-09 Canonkabushiki Kaisha Image processing apparatus and method
GB9806767D0 (en) * 1998-03-31 1998-05-27 Philips Electronics Nv Pixel colour valve encoding and decoding
KR100294893B1 (ko) * 1999-03-09 2001-07-12 윤종용 개선된 dc 억압 능력을 갖는 rll 코드 생성 방법 과 생성된 rll 코드 변복조 방법
JP2001257888A (ja) * 2000-03-09 2001-09-21 Seiko Epson Corp 画像符号化装置、画像符号化方法、画像復号化装置および画像復号化方法ならびに情報記録媒体
JP4001261B2 (ja) * 2000-11-29 2007-10-31 株式会社リコー 画像処理装置および方法
CN100428633C (zh) * 2001-06-29 2008-10-22 日本胜利株式会社 数字信号的调制方法及调制装置

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101807924A (zh) * 2010-03-17 2010-08-18 黄斐芝 一种对二进制数据进行无损编码压缩的方法
CN102185612A (zh) * 2011-01-28 2011-09-14 张环蚀 游程编解码方法及装置
CN104011673A (zh) * 2011-12-30 2014-08-27 英特尔公司 向量频率压缩指令
CN104137061A (zh) * 2011-12-30 2014-11-05 英特尔公司 向量频率扩展指令
CN104011673B (zh) * 2011-12-30 2016-12-07 英特尔公司 向量频率压缩指令
CN104137061B (zh) * 2011-12-30 2017-12-22 英特尔公司 用于执行向量频率扩展指令的方法、处理器核和计算机系统
US10241792B2 (en) 2011-12-30 2019-03-26 Intel Corporation Vector frequency expand instruction
CN103019895A (zh) * 2012-12-28 2013-04-03 华为技术有限公司 文件存储方法及装置
CN103019895B (zh) * 2012-12-28 2015-01-28 华为技术有限公司 文件存储方法及装置

Also Published As

Publication number Publication date
TWI282529B (en) 2007-06-11
JP4906506B2 (ja) 2012-03-28
WO2005031534A2 (en) 2005-04-07
US20050068207A1 (en) 2005-03-31
CN1902826B (zh) 2011-11-23
US6919825B2 (en) 2005-07-19
KR20060120043A (ko) 2006-11-24
AU2004277271B2 (en) 2009-06-04
EP1685651A2 (en) 2006-08-02
JP2007507182A (ja) 2007-03-22
AU2004277271A1 (en) 2005-04-07
EP1685651A4 (en) 2006-11-02
KR101180098B1 (ko) 2012-09-05
WO2005031534A3 (en) 2006-05-11
TW200523825A (en) 2005-07-16

Similar Documents

Publication Publication Date Title
CN1902826B (zh) 分割游程长度编码方法和设备
CA2345218C (en) A method for compressing digital documents with control of image quality and compression rate
EP0948862B1 (en) Apparatus and method for hybrid compression of raster data
US20030090398A1 (en) System and method for efficient data compression
US6778291B1 (en) Fast page analyzer for proper selection of compression engine for rendered data
US7183950B2 (en) Data compression apparatus, and data compression program storage medium
US7043077B2 (en) System and method for efficient compression of raster image data
KR20080004411A (ko) 데이터 압축 장치 및 데이터 압축 프로그램 기억 매체
US6130630A (en) Apparatus and method for compressing Huffman encoded data
US7068398B2 (en) System and method for efficient tile generation from complex raster data
EP0902398A2 (en) System for compressing and decompressing binary representations of dithered images
US5636294A (en) Method and apparatus for truncation of images during data compression
US20110032552A1 (en) Data processing apparatus and data processing method
US10650293B2 (en) Printing apparatus, printing method, and printing system
US11501466B2 (en) Compressed versions of image data based on relationships of data
US6088039A (en) Compression of grey scale images of text
US6798542B1 (en) Image encoding apparatus
JP5643578B2 (ja) 画像処理装置、画像処理方法、およびプログラム
US20020191225A1 (en) Methods and arrangements for compressing raster data
US9854255B2 (en) Electronic apparatus, and method and computer-readable medium for the same
JP2005086353A (ja) 画像処理装置及びその制御方法、並びに、コンピュータプログラム及びコンピュータ可読記憶媒体
JP2000101847A (ja) 画像信号符号化方法、画像信号復号方法および装置
JPH0378371A (ja) 画像データ圧縮方式

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20111123

Termination date: 20170924

CF01 Termination of patent right due to non-payment of annual fee