Patentable/Patents/US-8390894
US-8390894

System and method for inverse halftoning

PublishedMarch 5, 2013
Assigneenot available in USPTO data we have
Inventorsnot available in USPTO data we have
Technical Abstract

The system and method for inverse halftoning using a partitioning look-up table (LUT) provides an improvement on a conventional LUT method for inverse halftoning, and a hardware implementation thereof. The method includes the partitioning of the single LUT into N smaller look-up tables (s-LUTs). After partitioning, N s-LUTs are generated, which can be stored in separate memory blocks, allowing parallel access to more than one s-LUT at any time. Such parallelization is not possible with only one LUT stored in a single memory block. Additionally, two or more templates (represented as r templates) with different pixels at position 0 can be retrieved from the halftone image concurrently. Further, the contents of the single LUT are partitioned into Ns-LUTs, thus the total entries in Ns-LUTs are equal to the entries in the single LUT of the conventional LUT based method of inverse halftoning.

Patent Claims
5 claims

Legal claims defining the scope of protection, as filed with the USPTO.

1

1. A method for inverse halftoning, comprising the steps of: a) building a template training set including at least one continuous-tone image and a corresponding halftone image; b) retrieving a full set of templates and a set of corresponding output values from the template training set; c) representing each of the retrieved templates as t and applying a partitioning function to each of the templates t, the partitioning function dividing an initial look-up table into N smaller look-up tables, wherein N is an integer; d) storing each of the templates t and the corresponding output values for the templates in a corresponding one of the smaller look-up tables, the corresponding one of the smaller look-up tables having a numerical value associated therewith equal to a result of the partitioning function; e) setting the output value stored in the corresponding one of the smaller look-up tables equal to an averaged output value; and f) defining an integer r as the number of the retrieved templates and performing an inverse halftoning operation having the steps of: retrieving the r retrieved templates simultaneously; and inverse halftoning the r retrieved templates, the inverse halftoning using the N smaller look-up tables, the input to the inverse halftoning being a halftone image and the output of the inverse halftoning being a continuous-tone image.

2

2. The method for inverse halftoning as recited in claim 1 , wherein the step of applying the partitioning function comprises the steps of: a) establishing a variable p such that template t is a p-bit vector; b) dividing template t into log 2 N blocks, such that each said block except the last of said blocks has a width represented by size_of_blocks_except 13 last_block; c) establishing a function floor which rounds each said width to an integer that is less than or equal to [ p log 2 ⁢ N ] ; d) calculating each said width size_of 13 blocks 13 except 13 last_block as size_of ⁢ _blocks ⁢ _except ⁢ _last ⁢ _block = floor ⁡ [ p log 2 ⁢ N ] ⁢ bits ; e) calculating a width of the last of said blocks as size_of ⁢ _the ⁢ _last ⁢ _block = p - floor ⁡ [ p log 2 ⁢ N ] × ( log 2 ⁢ N - 1 ) ⁢ bits ; and f) establishing an intermediate set of variables a, b, i and j, and applying a bit-serial XOR operation to each said block independently as a(i)=t(j) t(j+1) . . . t(j+b), wherein i ranges between 0 and log 2 (N)−1, b =size_of_the_block_except_last_block when i <log 2 (N−1) and b=size_of _the_last _block when i=log 2 (N−1), and j = floor ⁡ [ p log 2 ⁢ N ] × i .

3

3. The method for inverse halftoning as recited in claim 2 , wherein N is selected as an integral power of 2, and the result of the partitioning function is given by result=a(0) ∥ a(1) ∥ . . . ∥ a(log 2 N−1).

4

4. The method for inverse halftoning as recited in claim 3 , wherein the partitioning function is applied to each of the r templates simultaneously, and if more than one of said r templates return the same result from the partitioning function, then a selected one of said templates is stored in the corresponding smaller look-up table and the remaining templates having the same result are discarded.

5

5. The method of inverse halftoning as recited in claim 4 , further comprising the steps of: a) appending the numbers 1 to r to the r retrieved templates; b) demultiplexing each template value to produce a demultiplexed value; c) decoding each demultiplexed value to produce a decoded value; d) multiplexing each demultiplexed value and the corresponding decoded value; e) ordering the respective output values of the templates with respect to the number assigned to each output value corresponding to the result of the partitioning function; and f) assigning output values to each discarded template equal to the output value of the left-most neighbor of each discarded template.

Classification Codes (CPC)

Cooperative Patent Classification codes for this invention. Click any code to explore related patents in that topic.

Patent Metadata

Filing Date

September 1, 2009

Publication Date

March 5, 2013

Want to explore more patents?

Browse 5M+ US patents with plain-English claim translations and AI-generated analysis.

Citation & reuse

Analysis on this page is generated by Patentable — an AI-powered patent intelligence platform. AI-generated summaries, explanations, and analysis may be reused with attribution and a visible link back to the canonical URL below. Patent abstracts and claims are USPTO public domain.

Cite as: Patentable. “System and method for inverse halftoning” (US-8390894). https://patentable.app/patents/US-8390894

© 2026 Patentable. All rights reserved.

Patentable is a research and drafting-assistant tool, not a law firm, and does not provide legal advice. Documents we generate are drafts for review by a licensed patent attorney.