Browse Prior Art Database

Fast Scaling Method to Reduce Binary Images by Specific Factors

IP.com Disclosure Number: IPCOM000114393D
Original Publication Date: 1994-Dec-01
Included in the Prior Art Database: 2005-Mar-28
Document File: 4 page(s) / 126K

Publishing Venue

IBM

Related People

Norton, HT: AUTHOR [+2]

Abstract

Disclosed is a method for rapidly and accurately scaling binary images.

This text was extracted from an ASCII text file.
This is the abbreviated version, containing approximately 41% of the total text.

Fast Scaling Method to Reduce Binary Images by Specific Factors

      Disclosed is a method for rapidly and accurately scaling binary
images.

      From an accuracy viewpoint, a desired method of reducing a
binary image is to count the number of black picture elements (pels)
in an area of the original image, said area corresponding to one pel
of the output, or reduced, image.  The value of the corresponding pel
in the output image is then made black if the exceeds a thresholding,
typically one-half the total number of black and white pels from the
area of the original image.

      Because bit processing is slow in most computers, the obvious
approach of accessing each bit in the original image and counting the
pels one at a time is very time consuming.  The following disclosed
method processes the image as bytes using the following four steps.
  1.  Use bytes of data from the original image to INDEX into tables
       which eliminate bit order information and organize the bit
count
       information for optimized tabulation.
  2.  COMBINE the results from step one to provide values which
       summarize the count within each block of pels from the
original
       image.
  3.  Use the results from step two to INDEX into another set of Look
       Up Tables (LUTs) which convert the previous results into bit
       patterns of desired output segments.
  4.  COMBINE the results from step three to form full bytes of
reduced
       resolution output data.

      The essential idea behind this method is in step one:  The
information concerning the ORDER of bits within the region of
interest on a given line of input image is discarded, maintained only
information related to the COUNT of black bits within the region of
interest.

      EXAMPLE 1: Fast 2x reduction.
  1.  Take a byte from the first row of the image and INDEX into a
       (first) LUT in which any '10' bit pair of the four bit pairs
is
       replaced with '01'.  Take the corresponding byte from the next
       row of the image and INDEX into another (second) LUT in which
any
       '01' bit pair is replaced with '10'.
  2.  COMBINE the two bytes from step one using the OR function.  If
       the quad (a bit pair from the first row and the corresponding
bit
       pair on the second row) contained no 1's, then the ORed result
       will have a '00' bit pair in the corresponding location.  If
the
       quad had one 1, then the ORed result will contain '01' or
'10'.
       If the quad had two or more 1's, then the corresponding bit
pair
       will be '11'.  Note that at this point we can tell how many
bits
       were in the original quads, but not their particular order
within
       the quad.
        Assume that the desired output in the 2x reduced pel will
         be a 1 (black) if 2 or more pels were black in...