Non-iterative method of calculating image skew
First Claim
1. A method of processing scanned image data comprising:
- receiving image data, the image data comprising a plurality of scanlines with each scanline comprising a plurality of pixels;
generating a fast scan second order moment data set;
generating a slow scan second order moment data set; and
determining a document skew angle from the fast scan and slow scan second order moment data sets;
wherein the step of generating the slow scan second order moment data set includesreceiving a current scanline of image data,updating columns sums for a set of rotation angles using scanlines within a buffer comprising a band of scanlines, the band having a predetermined number B of scanlines, andupdating the buffer with the current scanline.
3 Assignments
0 Petitions
Accused Products
Abstract
A parallel, non-iterative, memory efficient method of determining image skew. A document skew angle is determined from a fast scan second order moment data set and a slow scan second order moment data set. A slow scan second order moment data set can be generated by receiving a current scanline of image data, updating columns sums for a set of rotation angles using scanlines within a buffer comprising a band having a predetermined number B of scanlines, and updating the buffer with the current scanline. A fast scan second order moment data set is generated by projecting a plurality of pixels within each scanline of image data received to a first rotation angle wherein the plurality pixels project onto M rows; updating M memory locations, wherein each one of the M memory locations corresponds to one of the M rows and wherein each memory location is updated using pixels projecting onto the corresponding row whereby one of the M memory locations contains a completed row; and adding the square of the completed row sum to a moment accumulator.
-
Citations
17 Claims
-
1. A method of processing scanned image data comprising:
-
receiving image data, the image data comprising a plurality of scanlines with each scanline comprising a plurality of pixels; generating a fast scan second order moment data set; generating a slow scan second order moment data set; and determining a document skew angle from the fast scan and slow scan second order moment data sets; wherein the step of generating the slow scan second order moment data set includes receiving a current scanline of image data, updating columns sums for a set of rotation angles using scanlines within a buffer comprising a band of scanlines, the band having a predetermined number B of scanlines, and updating the buffer with the current scanline. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9)
-
-
10. A method of processing image data comprising:
-
scanning a document to produce scanned image data comprising a plurality of scanlines, each scanline having a plurality of pixels; generating a first set of second order moments, the first set of second order moments being based on row sums; generating a second set of second order moments, the second set of second order moments being based on column sums; and determining a document skew angle from the first and second sets of second order moments; wherein the step of generating the first set of second order moments includes receiving a first scanline, projecting a plurality of pixels within the first scanline to at least a first rotation angle, adding a first subset of the plurality of projected pixels to a first memory location, adding a second subset of the plurality of projected pixels to a second memory location, adding a third subset of the plurality of projected pixels to a third memory location, and adding the square of the pixel sum in the first memory location to a moment accumulator. - View Dependent Claims (11, 12, 13, 14)
-
-
15. A memory efficient method of processing image data to determine image skew, comprising:
-
receiving scanned image data, the scanned image data comprising a plurality of scanlines with each scanline comprising a plurality of pixels; generating a fast scan second order moment data set; generating a slow scan second order moment data set; and determining a document skew angle from the fast scan and slow scan second order moment data sets; wherein the step of generating the fast scan second order moment data set includes projecting a plurality of pixels within a scanline to at least a first rotation angle wherein the plurality pixels project onto M rows; updating M memory locations, wherein each one of the M memory locations corresponds to one of the M rows and wherein each memory location is updated using pixels projecting onto the corresponding row whereby one of the memory locations contains a completed row sum and M−
1 of the memory locations contain partial row sums;adding the square of the completed row sum to a moment accumulator; and repeating the projecting, updating and adding steps for each scanline within a plurality of scanlines whereby a memory location having a completed row sum is reused to accumulate subsequent row sum so that only M memory locations are required to accumulate row sums. - View Dependent Claims (16, 17)
-
Specification