Abstract:
Systems, methods and program products for joining front-end processing with back-end processing of printed documents. In particular, the invention calls for collecting print data usable for printing a document (i.e., by persistently saving data used to print a document), imaging the document after use, and processing the document using the print data and image data together.
Abstract:
Fast transform (200) that use multiple scaled terms, early aborts, and precision refinements are disclosed. The discrete transforms are split into sub-transforms (210) that are independently calculated using multiple scaling terms on the transform constants (220). The effect of the scaling for the transform coefficients may optionally be handled by appropriately scaling the quantization values or any comparison values. The possible need to perform a corrective action is detected based upon testing the incremental calculations of transform coefficients. Corrective action is then performed. The corrective action includes refining the incremental calculations to obtain additional precision and/or aborting the incremental calculations when the resulting numbers are sufficient.
Abstract:
A system for data processing including packing multiple signed data elements per register into a processor's register using the rules set forth herein (44), and simultaneously operating on the elements in a register in a single cycle using the same operand (36). The elements can be independent of each other as defined by compiler directives, and the sizes of the elements in a register can differ from each other. A relatively large element can be split across multiple registers. A data stream representing two images can be simultaneously processed using the same number of registers as have been required to process a single image. A single image can also be processed approaching N times faster, where N is the number of elements per register.
Abstract:
PROBLEM TO BE SOLVED: To provide a Huffman encoding and decoding method which can be realized in a short time, using reduced processing resources and hardware. SOLUTION: Huffman encoding performed from an especially packed data format can be simplified by using two different table formats depending on the code length. In this way, a Huffman table can be also reduced in size. In performing the Huffman decoding method, the performing time can be reduced, by testing for the length of valid Huffman codes in a compressed data stream and using an offset corresponding to testing criteria. Thus, a particular test result for forming direct index into Huffman table symbol values can be obtained, while reducing the size of a reference table used for such a purpose.
Abstract:
A method for encoding and decoding digital image data, includes the steps of testing the data for a vertical relationship between adjacent lines of the image, generating directly a reference code word representative of the vertical relationship for each successful test, generating by table lookup a run code word for a stream of data bits of common value for each unsuccessful test, wherein a data element representing a number of bits in a code word is stored at a predetermined offset from a table entry for the code word, merging the vertical reference code words and the run code words generated by the above steps to form an encoded data stream, testing an encoded data stream for a reference code, decoding directly the vertical relationship from the reference code for each successful test; decoding by table lookup a run of bits of common value by serial examination of said encoded data stream for each unsuccessful test and storing data decoded by the above steps in a predetermined relationship.
Abstract:
ARITHMETIC CODING DATA COMPRESSION/DE-COMPRESSION BY SELECTIVELY EMPLOYED, DIVERSE ARITHMETIC CODING ENCODERS AND DECODERS A data compression/de-compression system includes a first arithmetic coding encoder, characterized by a first set of encoding conventions, which encoder generates a code stream that points to an interval along a number line in response to decision event inputs. The code stream can be adjusted to point to the same interval as code streams generated by one or more other arithmetic coding encoders characterized by encoding conventions differing in some way from those in the first set. In a binary context, optimal hardware encoders increment or decrement the value of the code stream in response to each occurrence of a more probable decision event while optimal software changes the code stream value for each occurrence of a less likely event. According to the invention, the code streams for optimal hardware encoders and optimal software encoders are made either identical or compatible to enable similar decoding for each. Identical or compatible code streams are obtained from encoders having different event sequence or symbol ordering along intervals on the number line. Moreover, various hardware and software decoders--with respective symbol ordering and other convention--can be used in conjunction with encoders having respective conventins, wherein each decoder Y09-85-006 retrieves the same sequence of decisions for a code stream pointing to a given intervale. In both encoding and decoding, the present invention overcomes finite precision problems of carry propagation and borrow propagation by handling data in bytes and bit stuffing at byte boundaries and by pre-brrowing as required. Y09-86-006
Abstract:
A compression technique for a character graphics system in which character cell definition bit strings are transmitted from a central processing unit to a display unit. Each cell is divided into a number of slices and each slice into digits. A test is made on whether to compress on a comparison with an all zero slice, the previous slice or the previous slice but one, depending upon the number of digit mismatches that occur when the comparison occurs. Slices are then compressed by comparing each digit with the corresponding digit in the comparison slice and generating a single 0 bit if the digit matches and including a 1 bit and the whole digit if a mismatch occurs. The compression in the central processing unit and the decompression in the display unit is implemented in microcoded routines.
Abstract:
A method and apparatus for converting an image in run representation form into a raster image which is rotated by some multiple of 90.degree. from the orientation of the original image is disclosed wherein the original image data which is stored in run end or run length form may be divided and stored in discontinguous blocks. In implementing a 90.degree. rotation, the image data is conceptually divided into vertical strips, each of which is independently rotated to create a horizontal strip of the output image. The rotation process is carried out by firstly converting the run representation image data to raster form, dividing the data in each row among a number of intermediate buffers, each of which contains the data from one vertical strip of the original image. The contents of each buffer are rotated and rearranged in an available buffer to form a horizontal strip of the rotated image ready for raster readout. Similarly, a convenient method of rotating the input image 180.degree. is also described wherein the original image is read in run representation form a row at a time and the rows are converted to raster form and placed in storage in reverse order, with the order of the bits in each row also reversed. YO984-110