WO2020153990A1 - Skew compensation based on scale factor - Google Patents

Skew compensation based on scale factor Download PDF

Info

Publication number
WO2020153990A1
WO2020153990A1 PCT/US2019/043159 US2019043159W WO2020153990A1 WO 2020153990 A1 WO2020153990 A1 WO 2020153990A1 US 2019043159 W US2019043159 W US 2019043159W WO 2020153990 A1 WO2020153990 A1 WO 2020153990A1
Authority
WO
WIPO (PCT)
Prior art keywords
image
scan
scan image
processing
scale factor
Prior art date
Application number
PCT/US2019/043159
Other languages
French (fr)
Inventor
Eul Hwan Lee
Original Assignee
Hewlett-Packard Development Company, L.P.
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 Hewlett-Packard Development Company, L.P. filed Critical Hewlett-Packard Development Company, L.P.
Priority to US17/278,375 priority Critical patent/US11445087B2/en
Publication of WO2020153990A1 publication Critical patent/WO2020153990A1/en

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N1/00Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
    • H04N1/387Composing, repositioning or otherwise geometrically modifying originals
    • H04N1/3877Image rotation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N1/00Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
    • H04N1/387Composing, repositioning or otherwise geometrically modifying originals
    • H04N1/3877Image rotation
    • H04N1/3878Skew detection or correction
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T3/00Geometric image transformations in the plane of the image
    • G06T3/40Scaling of whole images or parts thereof, e.g. expanding or contracting
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N1/00Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
    • H04N1/00681Detecting the presence, position or size of a sheet or correcting its position before scanning
    • H04N1/00684Object of the detection
    • H04N1/00718Skew
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N1/00Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
    • H04N1/387Composing, repositioning or otherwise geometrically modifying originals
    • H04N1/393Enlarging or reducing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N1/00Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
    • H04N1/46Colour picture communication systems
    • H04N1/56Processing of colour picture signals
    • H04N1/60Colour correction or control

Definitions

  • An image scanning device is a device for scanning an original image such as a document, a picture, a film, etc. and converting the original image into digital data.
  • the digital data may be displayed on a monitor of a computer or printed by a printer to be generated as an output image.
  • An example of such an image scanning device includes a printer, a scanner, a copier, a facsimile, and a multi-function peripheral (MFP) performing functions thereof in a complex manner through a single device.
  • MFP multi-function peripheral
  • FIG. 1 is a block diagram of an image scanning device according to an example
  • FIG. 2 is a block diagram of an image scanning device according to an example
  • FIG. 3 illustrates a relation between skew compensation and scale compensation according to an example
  • FIG. 4 illustrates a skew angle before scale compensation and a skew angle after scale compensation according to an example
  • FIG. 5 illustrates a processor of according to an example
  • FIG. 6 illustrates a scale factor corresponding to various input and output resolutions according to an example
  • FIG. 7 is a flowchart of a skew compensation method according to an example.
  • one constituent element is “connected to” another constituent element, it includes a case in which the two constituent elements are connected to each other with another constituent element intervened therebetween as well as a case in which the two constituent elements are directly connected to each other. Further, when one constituent element“comprises” another constituent element, unless specifically stated to the contrary, it includes a situation in which another constituent element may be further included rather than precluding the same.
  • the expression“image forming job” as used herein may refer to any of various jobs related with an image, such as, formation of an image or generation/storage/transmission of image files (e.g., copying, printing, scanning, or faxing), and the expression“job” as used herein may refer to not only the image forming job, but also a series of processes required for performance of the image forming job.
  • the expression“image scanning device” as used herein may refer to an apparatus that scans an image of a document and generates a scanned image.
  • Examples of an image scanning device may include a scanner, a copier, a printer, a facsimile, or a multi-function peripheral (MFP) implementing functions of the above.
  • MFP multi-function peripheral
  • the image scanning device is a copier, a facsimile, an MFP, or the like, which is capable of the image forming job
  • the image scanning device may also be referred to as the image forming apparatus.
  • the expression“hard copy” as used herein may refer to an operation of outputting an image on a recording medium such as paper
  • the expression“soft copy” as used herein may refer to an operation of outputting an image on a display device such as a TV, a monitor, or the like, or outputting the image to a memory.
  • scanned data may refer to a scan image generated at a scanner, may be a black and white image, a color image, or the like, and may have various forms of file formats (e.g., bitmap (BMP), joint photographic group (JPG), tagged image file format (TIFF), portable document format (PDF), or the like).
  • BMP bitmap
  • JPG joint photographic group
  • TIFF tagged image file format
  • PDF portable document format
  • the expression“user” as used herein may refer to a person who performs a manipulation related with an image forming job using an image scanning device or a device connected to the image scanning device in a wired or wireless manner.
  • the expression“manager” as used herein may refer to a person who has an authority to access all functions and systems of an image scanning device. The“manager” and the“user” may refer to the same person.
  • FIG. 1 is a block diagram of an image scanning device according to an example.
  • an image scanning device 100 may include an image sensor 1 10, a memory 120, and a processor 130.
  • the image sensor 1 10 may scan a manuscript.
  • the image sensor 1 10 may scan image information of the manuscript from a light (or glow) reflected from the manuscript.
  • the image sensor 1 10 may include a charge coupled device (CCD) disposed in a row along a main scanning direction or a plurality of CMOS image sensors (CIS).
  • CCD charge coupled device
  • CIS CMOS image sensors
  • the image sensor 1 10 may be disposed on a lower end of a flatbed and disposed within an automatic document feeder (ADF).
  • ADF automatic document feeder
  • the memory 120 may store data for image processing.
  • the memory 120 may store a program required to perform the image processing of the processor 130, or store a signal (for example, a scan image) scanned from the image sensor 1 10 or data (for example, skew-compensated image or scale-compensated image) processed by the processor 130 to be described later.
  • a signal for example, a scan image
  • data for example, skew-compensated image or scale-compensated image
  • the memory 120 may be a volatile memory such as a dynamic random access memory (DRAM), a synchronous RAM (SRAM), or the like, or a non-volatile memory such as a hard disk drive (HDD), a solid state drive (SSD), a flash memory, or the like, or may be a combination of the volatile memory and the non-volatile memory.
  • DRAM dynamic random access memory
  • SRAM synchronous RAM
  • HDD hard disk drive
  • SSD solid state drive
  • flash memory or the like
  • the processor 130 may control each element within the image scanning device 100.
  • the processor 130 may be implemented as a central processing unit (CPU), an application-specific integrated circuit (ASIC), or the like.
  • the processor 130 may determine a scan resolution. For example, the processor 130 may calculate the scan resolution (or input resolution) based on an output resolution and / or a scanning speed set by the user. For example, in a device with a resolution of 600x600 dpi, if the user selects a default speed, it may be determined that the scanning job is performed at 600x600 dpi resolution. If the speed is selected to be twice as fast, the processor 130 may perform a scanning job at resolution of 600x300 dpi, and enlarge and compensate the image scanned at 600x300 dpi resolution through image processing and output the image at 600x600 dpi.
  • the processor 130 may calculate a scale factor based on the output resolution and / or scan resolution.
  • the processor 130 may control the image sensor 110 to perform a scanning job according to the determined resolution and / or scanning speed set by the user.
  • the processor 130 may generate a scan image using the signal output from the image sensor 110.
  • the processor 130 may store the generated scan image in the memory 120.
  • the processor 130 may determine whether image compensation is required for the scan image. For example, the processor 130 may confirm whether the output resolution and the scan resolution of the image sensor 110 are different, confirm whether scale compensation (or scale processing) is necessary, confirm whether skew exists in the scan image, and confirm whether skew compensation is required. For example, the processor 130 may detect an upper line of the manuscript in the generated scan image, calculate the skew angle (first rotation angle) using the angle of the detected upper line, and confirm whether skew compensation is necessary based on this angle.
  • the rotation angle is an angle for compensating the generated skew angle. For example, if the skew angle is q 1 in a clockwise direction, the rotation angle may be q 1 in a counterclockwise direction.
  • the processor 130 may determine whether scale compensation is necessary. For example, the processor 130 may determine whether the scan is performed in a form in which the horizontal and vertical ratios are not the same in the scanning process, or determine the resolution (or scale factor) in the scanning process and determine whether the scale compensation is necessary.
  • the processor 130 may determine an operation expression to be used in skew compensation when both scale compensation and skew compensation are required. For example, the processor 130 may determine whether to perform skew compensation according to an operation expression according to the calculated skew angle or perform skew compensation according to an approximated operation expression. An example operation expression to be used for skew compensation will be described later with reference to FIG. 3.
  • the processor 130 may rotate the generated scan image using the scale factor. For example, the processor 130 may calculate the second rotation angle considering the scale factor to the first rotation angle, and perform the rotation processing for the scan image using the calculated second rotation angle and the scale factor.
  • the scale factor corresponds to at least one of a scanning speed and the scan resolution, and may be defined as a separate value for each of the main scanning direction x and the sub-scanning direction y, or may be defined as a proportional value for the main scanning direction x and the sub- scanning direction y.
  • the processor 130 may perform rotation processing on the scan image using the corresponding operation expression according to the skew angle. For example, the processor 130 may perform rotation compensation based on Equation 2, which will be described later, and may perform operation processing more rapidly using an equation approximating Equation 2 for a small angle such as 5 degrees or less or 1 degree or less.
  • the processor 130 may perform scale compensation for the rotated scan image. For example, the processor 130 may perform a scale processing corresponding to the scale factor (or the actual output resolution) previously calculated for the rotated scan image. For example, if the scan image is reduced to 1/2 with respect to the vertical direction in the scan process, a scale processing that enlarges the scan image twofold in the vertical direction may be performed.
  • the processor 130 may perform the additional image processing on the skew-compensated image and perform scale compensation on the image subject to the additional image processing and output the final image.
  • the additional image processing may be segmentation to distinguish the attributes per pixel, color correction, smoothing, sharpening, or the like.
  • skew compensation and additional image processing are performed using data prior to scaling, that is, data having a small size, and thus, image processing may be performed using a small memory and a quicker operation is available.
  • the processor 130 may store the scale-compensated image in the memory 120.
  • FIG. 2 is a block diagram of an image scanning device according to an example.
  • the image scanning device 100 may include the image sensor 1 10, the memory 120, the processor 130, a communication device 140, a display 150, a manipulation input device 160, and a printing engine 170.
  • the communication device 140 may be connected to a terminal (not illustrated) such as a mobile device (e.g., a smart phone, a tablet personal computer (PC)), a PC, a note book PC, a personal digital assistant (PDA), a digital camera, or the like, and transmit a scan image previously stored in the memory 120 or a compensated scan image to another terminal.
  • a mobile device e.g., a smart phone, a tablet personal computer (PC)
  • PC personal computer
  • PDA personal digital assistant
  • a digital camera e.g., a digital camera, or the like
  • the communication device 140 may be configured to connect the image scanning device 100 to an external device, and may not only be connected to a terminal through a local area network (LAN), an internet network, or the like, but also connected through a universal serial bus (USB) port, a wireless communication port (e.g., WiFi 802.1 1 a/b/g/n, NFC, Bluetooth), or the like.
  • the communication device 140 may be referred to as a communication interface, a transceiver, or the like.
  • the display 150 may display various pieces of information provided from the image scanning device 100.
  • the display 150 may display a user interface window to receive a selection of various functions provided by the image scanning device 100.
  • the display 150 may be a monitor such as a liquid crystal display (LCD), a cathode-ray tube (CRT), a light emitting diode (LED), an organic LED (OLED), or the like, and may be implemented as a touch screen that may simultaneously perform a function of the manipulation input device 160 which will be described later.
  • LCD liquid crystal display
  • CRT cathode-ray tube
  • LED light emitting diode
  • OLED organic LED
  • the display 150 may display a control menu for performance of functions of the image scanning device 100. Accordingly, a user may input a scan command on the displayed user interface window.
  • the scan command may be a command to perform the scanning job and may include commands such as scan-to-server, scan-to-digital living network alliance (DLNA), scan-to-cloud, or the like, which transmits a scanning job to a server.
  • DLNA scan-to-digital living network alliance
  • the scan command may be a copy command that uses a scan function.
  • a scan command is inputted through the manipulation input device 160, in another example, the scan command may be received from a terminal (not illustrated) through the communication device 140.
  • the display 150 may display the generated scan image and information about the scan image.
  • the displayed scan image may be the scan image itself or a preview image for the scan image.
  • the display 150 may display a user interface window for receiving selection of an image processing method to be performed after scanning a manuscript.
  • the user interface window may include an input area for receiving a resolution of an output image, a scanning speed, a scanning condition, or the like.
  • the manipulation input device 160 may receive from a user a function selection and a control command for the function.
  • the function may include a print function, a copy function, a scan function, a fax transmission function, or the like.
  • the manipulation input device 160 may be implemented as a plurality of buttons, a keyboard, a mouse, or the like, and may be implemented as a touch screen that may simultaneously perform functions of the display 150 described above.
  • the printing engine 170 may print a compensated scan image.
  • the printing engine 170 may form an image on an image forming medium such as a photoconductive drum, an intermediate transfer belt, a paper feeding belt, and the like, transfer an image formed on the image forming medium on a print medium (e.g., paper), and perform a printing job.
  • an image forming medium such as a photoconductive drum, an intermediate transfer belt, a paper feeding belt, and the like, transfer an image formed on the image forming medium on a print medium (e.g., paper), and perform a printing job.
  • the processor 130 may control the image sensor 1 10 to perform a scanning job to generate a scan image, perform image compensation on the generated scan image, and control the printing engine 170 to print the compensated scan image.
  • the processor 130 may control the communication device 140 to transmit the compensated scan image to a storage corresponding to the command.
  • FIGS. 1 and 2 illustrate and describe certain functions of the image scanning device 100
  • the image scanning device 100 may further include a fax transceiver to perform a fax transceiving function, or the like, according to functions available in the image scanning device 100.
  • an example image scanning device may perform skew compensation first even when skew compensation for a scan image scanned with a different width/length ratio is necessary, that is, skew compensation and image processing with a smaller image is available. Therefore, skew compensation may be performed more rapidly with a smaller memory.
  • the manuscript is scanned by reducing the scanning resolution in the vertical direction (sub-scanning direction) compared to the horizontal direction (main scanning direction), the scan image is image-processed and enlarged in the vertical direction, and a scan image having the resolution desired by the user may be scanned rapidly.
  • the scanning speed of the image sensor 1 10 is required to be 60 images per minute (IPM), and the physical maximum speed of the image sensor 1 10 at 600 x 600 dpi is 30 IPM.
  • the image sensor 1 10 may scan at a speed of 60 IPM at a resolution of 600 x 300 dpi. Therefore, a scan image may be obtained at 600 x 300 dpi, and the scan image may be scale-compensated.
  • the scan image at a resolution of 600 x 300 dpi may be output as an output image at a resolution of 600 x 600 dpi.
  • a printing paper may not be aligned due to deviation of a disposition of sensors, characteristics of devices such as roller and motor movements, etc. causing misalignment of the printing paper. Accordingly, a skew in which the scan image is distorted to be different from the manuscript may occur.
  • FIG. 3 illustrates a relation between skew compensation and scale compensation according to an example.
  • the image sensor 1 10 outputs a scan image 202 obtained by scanning the manuscript 200.
  • the scan image 202 has a distorted shape as shown in FIG. 3.
  • the manuscript 200 may not be aligned due to a deviation in the arrangement of the sensors, mechanical characteristics such as rollers and motor movements, etc., and thus the scan image 202 may be distorted to be different from the manuscript 200.
  • the image sensor 1 10 scans a deformed manuscript 201 .
  • the distorted manuscript 201 is scaled (for example, reduced) and scanned, a rotated and shortened scan image 202 in the vertical direction is generated.
  • the processor 130 needs to perform scale compensation for the scan image 202, output an enlarged scan image 205, perform skew compensation for the enlarged scan image 205, and output a final image 206.
  • rotation and scale processing are a kind of affine transformation commonly used in computer graphics and may be expressed in a matrix form.
  • affine transformations include translation, rotation, scaling such as increasing / decreasing, reflection, shear, and the like.
  • Such affine transforms may be represented by multiplying of the matrix.
  • the scale processing and rotation processing do not have a commutative property.
  • the processor 130 needs a process to read and write necessary data in the memory 120. Therefore, if the size of the image is large, the number of times of reading and writing data stored in the memory 120 increases, and a high memory bandwidth is required.
  • the processor 130 processes image data in units of tiles to save internal memory. This operation requires reading of peripheral pixel data and thus requires more memory access and high speed data processing.
  • skew compensation is performed using a scale factor value that is used for a scale compensation operation which is performed for subsequent operations.
  • the processor 130 may perform skew compensation (i.e. , rotation processing) using the scale factor for the distorted scan image 202.
  • the processor 130 may then perform scale compensation (e.g., enlargement scaling) on the skew-compensated image.
  • scale compensation e.g., enlargement scaling
  • additional image processing may be performed between the skew compensation and the scale compensation.
  • FIG. 4 illustrates a skew angle before scale compensation and a skew angle after scale compensation according to an example.
  • the processor 130 may first confirm a scale factor. For example, the processor 130 may confirm the scale factor according to the scan resolution requested by the user and the output resolution. Flere, the scale factor may be calculated for each of the horizontal direction (main scanning direction) and the vertical direction (sub-scanning direction) and may be calculated as a ratio of the horizontal direction to the vertical direction. An example of such a ratio is shown in FIG. 6.
  • the processor 130 may calculate the skew angle (q 1 ).
  • the manuscript is rotated at the first skew angle (q 1 ) and scaled in this state.
  • the second skew angle (q 2 ) in the scaled scan image 202 may be different from the first skew angle (q 1 ).
  • the first skew angle (q 1 ) and the second skew angle (q 2 ) are the same when the horizontal and vertical ratios are both reduced or enlarged equally. Flowever, if the horizontal and vertical ratios are different, the second skew angle (q 2 ) is different from the first skew angle (q 1 ).
  • the processor 130 may not detect the first skew angle (q 1 ) immediately, and thus may detect the second skew angle (q 2 ) on the scan image
  • the processor 130 may detect the upper line of the manuscript on the scan image 202 and detect the second skew angle (q 2 ) using the angle of the detected upper line.
  • the processor 130 may calculate a rotation center point (x c2 , y c2 ).
  • the processor 130 may calculate the first skew angle (q 1 ) at a second skew angle (q 2 ) using a scale factor (S x , S y ) (or S x /S y ). For example, as shown in FIG. 4, the scan image 202 and the skew image 201 have an association as illustrated. In consideration of the foregoing, the first skew angle (q 1 ) may be calculated using Equation 1.
  • ⁇ 1 is the first skew angle which is the angle in the image 201
  • q 2 is the second skew angle which is the angle in the image 202
  • S y is a scale factor of the y axis
  • Sx is a scale factor of the x axis.
  • the scale factor may be referred to as S y /S x proportional scale factor.
  • the processor 130 may perform rotation processing using Equation 2 as shown below.
  • (x 3 , y 3 ) is an output coordinate of the skew-compensated image
  • (x 2 , y 2 ) is a coordinate of the scan image 202
  • q 1 is the first skew angle
  • (X c2 , y c2 ) is the rotation center point in the scan image 202.
  • Equation 3 If the calculated first skew angle q 1 is equal to or less than 1 degree, skew compensation using an approximated equation may be performed as in Equation 3.
  • coordinates and images of the manuscript 200 of FIG. 3 are indicated as I 0 (x 0 ,y 0 )
  • the skew image 201 is indicated as I 1 ( 1 , 1 )
  • the scan image 202 is indicated as I 2 (x 2 , y 2 )
  • the skew- compensated image 203 is indicated as I 3 (x 3 ,y 3 )
  • the scale-compensated image 204 is indicated as I 4 (x 4 ,y 4 ).
  • Equation 2 described above is a matrix for converting the skew- compensated image in the scan image 202 in consideration of the scale factor.
  • the image 204 which is obtained after the skew compensation and scale compensation, is the same as the manuscript 200 or an output 206 of the conventional method.
  • S represents a scale matrix as in Equation 5.
  • S x is a scale factor in the horizontal direction
  • Equation 6 Inverse conversion of Equation 4 may be indicated as Equation 6 below.
  • S -1 is the inverse matrix of S and may be indicated as
  • the scale-compensated image 204 should be the same as the manuscript 200, and Equation 6 should satisfy Equation 8 as follows.
  • R indicates a rotation matrix, and may be indicated as Equation 10.
  • q 1 is the first skew angle.
  • Equation 11 The reverse conversion in association with Equation 9 may be indicated as Equation 11 as shown below.
  • Equation 14 The inverse conversion with respect to Equation 13 is indicated as Equation 14.
  • Equation 15 When substituting Equation 11 to Equation 8, Equation 15 is obtained, and when substituting Equation 14 to Equation 15, Equation 16 is obtained.
  • Equation 17 The relation of the coordinates of the center point is as shown in Equation 17, and if Equation 17 is reflected to Equation 16, Equation 2 described above is obtained.
  • Equation 2 described above may be simplified through various assumptions. If assuming that the center of rotation is the origin, Equation 2 may be indicated as Equation 18.
  • Equation 2 when the skew angle is 1 degree or less, Equation 2 may be indicated as Equation 3 described above.
  • Equation 2 When the first skew angle is 1 degree or less, and the rotation center point is the origin, Equation 2 may be indicated as Equation 19 below.
  • skew mostly has an angle of less than 5 degrees.
  • the skew angle is 5 degrees, it may be assumed that sin q » q , tan q » q tan -1 q » q, and it is possible to indicate the first skew angle and the second skew angle as
  • Equation 2 may be indicated as Equation 20 below.
  • Equation 2 When the first skew angle is 5 degrees or less and the rotation center point is the origin, Equation 2 may be indicated as Equation 21 below.
  • the processor 130 may perform skew compensation of the scan image using any one of the above-described Equations 2, 3, 18, 19, 20, or 21 .
  • the scan image compensated by the above equations takes the scale factor into consideration, and even if scale processing is performed after the skew processing, there is no image distortion as in the conventional case.
  • FIG. 5 illustrates a processor according to an example.
  • the processor 130 may include a scanner interface 131 , a CPU 132, a skew core 133, an image processing core 134, a scale core 135, a memory controller 136, a print image core 137, and a video controller 138.
  • the processor 130 may be an application specific integrated circuit (ASIC) or a system on chip (SoC).
  • the scanner interface 131 communicates with the image sensor 1 10 and receives a scan image.
  • the CPU 132 may control an operation of the processor 130. As an example, the CPU 132 may control the scanner interface 131 to read the information of the image sensor 1 10 corresponding to a scan resolution or a scanning speed and control the memory controller 136 to store the read information in the memory 120. When the skew compensation is required, the CPU 132 may control the skew core 133 to perform skew compensation using a scale factor. [00110] The skew core 133 performs skew-related image processing. For example, the skew core 133 may calculate a skew angle and perform skew compensation on the scan image using the calculated skew angle and scale factor.
  • the image processing core 134 may perform additional image processing on the skew-compensated image.
  • the image processing core 134 may perform image processing, such as segmentation to distinguish attributes per pixel, color correction, smoothing, sharpening, or the like.
  • the scale core 135 may perform scale processing for the skew- compensated image or the image for which additional image processing is performed.
  • the scale core 135 may perform scale processing corresponding to the scale factor with respect to the skew-compensated image.
  • the memory controller 136 communicates with the memory 120.
  • the memory controller 136 may transceive data with the memory 120 according to the control of the CPU 132, or transceive data in a direct memory access (DMA) method.
  • DMA direct memory access
  • the print image core 137 performs operations related to a print job. For example, when print data is received, the print image core 137 may perform a rendering operation on the received print data and generate a bitmap image.
  • the video controller 138 controls the printing engine 170.
  • the video controller 138 may convert a generated bitmap image into a video signal and transmit the converted video signal to the printing engine 170.
  • FIG. 6 illustrates a scale factor corresponding to various input and output resolutions according to an example.
  • a scale factor in the horizontal direction (S x ), a scale factor in the vertical direction (S y ), and a width to length ratio scale (S y /S x ) factor for each of the input resolution and the output resolution are illustrated.
  • the horizontal scale is 1 and the vertical scale is 2.
  • the scale factors are reflected in the horizontal and vertical ratios in the Equations. Therefore, in example implementations, the horizontal scale factor and the vertical scale factor may not be calculated respectively, and one ratio scale factor may be used.
  • FIG. 7 is a flowchart of a skew compensation method according to an example.
  • a scan image is generated in operation S710.
  • a manuscript may be scanned based on at least one of a scanning speed and an input scan resolution, and a scan image may be generated.
  • the generated scan image is rotated using a predetermined scale factor in step S720.
  • the scale factor corresponds to at least one of a scanning speed and an input scan resolution. For example, a first rotation angle is calculated using the generated scan image, a second rotation angle considering the scale factor at the calculated first rotation angle is calculated, and rotation processing of the scan image using the calculated second rotation angle and the scale factor may be performed.
  • Scale processing is performed for the rotated scan image in step S730.
  • the rotated scan image may be scale-processed using a scale factor. If additional image processing is required, additional image processing may be performed before the rotation processing, and the image subjected to the additional image processing may be subjected to the scale processing.
  • the scale-processed scan image is stored in step S740.
  • the skew compensation method may perform skew compensation first even if a scan image has a different width / length resolution. Accordingly, the scaling operation may be performed later, and the image processing prior to the scaling operation may be processed more rapidly using fewer resources.
  • skew compensation methods described above may be embodied as a program and provided to a management server.
  • a program including the skew compensation method may be stored in a non-transitory computer readable medium and provided.
  • the foregoing examples and advantages are merely exemplary and are not to be construed as limiting. The examples may be readily applied to other types of devices or apparatuses. Also, the description of the examples is intended to be illustrative, and not to limit the scope of the inventive concept, and many alternatives, modifications, and variations will be apparent to those skilled in the art.

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Editing Of Facsimile Originals (AREA)
  • Image Processing (AREA)

Abstract

An example image scanning device includes an image sensor to scan a manuscript, a memory, and a processor to generate a scan image corresponding to the manuscript, perform rotation processing for the generated scan image using a scale factor, perform scaling processing for the rotated scan image, and store the scale-processed scan image in the memory.

Description

SKEW COMPENSATION BASED ON SCALE FACTOR
BACKGROUND OF THE INVENTION
[0001] An image scanning device is a device for scanning an original image such as a document, a picture, a film, etc. and converting the original image into digital data. In this case, the digital data may be displayed on a monitor of a computer or printed by a printer to be generated as an output image. An example of such an image scanning device includes a printer, a scanner, a copier, a facsimile, and a multi-function peripheral (MFP) performing functions thereof in a complex manner through a single device.
BRIEF DESCRIPTION OF THE DRAWINGS
[0002] Various examples will be described below with reference to the accompanying drawings, in which:
[0003] FIG. 1 is a block diagram of an image scanning device according to an example,
[0004] FIG. 2 is a block diagram of an image scanning device according to an example,
[0005] FIG. 3 illustrates a relation between skew compensation and scale compensation according to an example,
[0006] FIG. 4 illustrates a skew angle before scale compensation and a skew angle after scale compensation according to an example,
[0007] FIG. 5 illustrates a processor of according to an example,
[0008] FIG. 6 illustrates a scale factor corresponding to various input and output resolutions according to an example, and,
[0009] FIG. 7 is a flowchart of a skew compensation method according to an example. DETAILED DESCRIPTION
[0010] Certain examples will now be described with reference to the accompanying drawings. The examples described below may be modified in various different forms. In order to more clearly describe the features of the examples, a detailed description will be omitted for components or features well known to those of ordinary skill in the art to which the examples belong.
[0011] When the specification states that one constituent element is “connected to” another constituent element, it includes a case in which the two constituent elements are connected to each other with another constituent element intervened therebetween as well as a case in which the two constituent elements are directly connected to each other. Further, when one constituent element“comprises” another constituent element, unless specifically stated to the contrary, it includes a situation in which another constituent element may be further included rather than precluding the same.
[0012] The expression“image forming job” as used herein may refer to any of various jobs related with an image, such as, formation of an image or generation/storage/transmission of image files (e.g., copying, printing, scanning, or faxing), and the expression“job” as used herein may refer to not only the image forming job, but also a series of processes required for performance of the image forming job.
[0013] Further, the expression“image scanning device” as used herein may refer to an apparatus that scans an image of a document and generates a scanned image. Examples of an image scanning device may include a scanner, a copier, a printer, a facsimile, or a multi-function peripheral (MFP) implementing functions of the above. When the image scanning device is a copier, a facsimile, an MFP, or the like, which is capable of the image forming job, the image scanning device may also be referred to as the image forming apparatus.
[0014] Further, the expression“hard copy” as used herein may refer to an operation of outputting an image on a recording medium such as paper, and the expression“soft copy” as used herein may refer to an operation of outputting an image on a display device such as a TV, a monitor, or the like, or outputting the image to a memory.
[0015] Further, the expression“scanned data” as used herein may refer to a scan image generated at a scanner, may be a black and white image, a color image, or the like, and may have various forms of file formats (e.g., bitmap (BMP), joint photographic group (JPG), tagged image file format (TIFF), portable document format (PDF), or the like).
[0016] Further, the expression“user” as used herein may refer to a person who performs a manipulation related with an image forming job using an image scanning device or a device connected to the image scanning device in a wired or wireless manner. Further, the expression“manager” as used herein may refer to a person who has an authority to access all functions and systems of an image scanning device. The“manager” and the“user” may refer to the same person.
[0017] FIG. 1 is a block diagram of an image scanning device according to an example.
[0018] Referring to FIG. 1 , an image scanning device 100 may include an image sensor 1 10, a memory 120, and a processor 130.
[0019] The image sensor 1 10 may scan a manuscript. For example, the image sensor 1 10 may scan image information of the manuscript from a light (or glow) reflected from the manuscript. The image sensor 1 10 may include a charge coupled device (CCD) disposed in a row along a main scanning direction or a plurality of CMOS image sensors (CIS). The image sensor 1 10 may be disposed on a lower end of a flatbed and disposed within an automatic document feeder (ADF).
[0020] The memory 120 may store data for image processing. For example, the memory 120 may store a program required to perform the image processing of the processor 130, or store a signal (for example, a scan image) scanned from the image sensor 1 10 or data (for example, skew-compensated image or scale-compensated image) processed by the processor 130 to be described later.
[0021] The memory 120 may be a volatile memory such as a dynamic random access memory (DRAM), a synchronous RAM (SRAM), or the like, or a non-volatile memory such as a hard disk drive (HDD), a solid state drive (SSD), a flash memory, or the like, or may be a combination of the volatile memory and the non-volatile memory.
[0022] The processor 130 may control each element within the image scanning device 100. In an example, the processor 130 may be implemented as a central processing unit (CPU), an application-specific integrated circuit (ASIC), or the like.
[0023] The processor 130 may determine a scan resolution. For example, the processor 130 may calculate the scan resolution (or input resolution) based on an output resolution and / or a scanning speed set by the user. For example, in a device with a resolution of 600x600 dpi, if the user selects a default speed, it may be determined that the scanning job is performed at 600x600 dpi resolution. If the speed is selected to be twice as fast, the processor 130 may perform a scanning job at resolution of 600x300 dpi, and enlarge and compensate the image scanned at 600x300 dpi resolution through image processing and output the image at 600x600 dpi.
[0024] The processor 130 may calculate a scale factor based on the output resolution and / or scan resolution.
[0025] The processor 130 may control the image sensor 110 to perform a scanning job according to the determined resolution and / or scanning speed set by the user.
[0026] The processor 130 may generate a scan image using the signal output from the image sensor 110. The processor 130 may store the generated scan image in the memory 120.
[0027] The processor 130 may determine whether image compensation is required for the scan image. For example, the processor 130 may confirm whether the output resolution and the scan resolution of the image sensor 110 are different, confirm whether scale compensation (or scale processing) is necessary, confirm whether skew exists in the scan image, and confirm whether skew compensation is required. For example, the processor 130 may detect an upper line of the manuscript in the generated scan image, calculate the skew angle (first rotation angle) using the angle of the detected upper line, and confirm whether skew compensation is necessary based on this angle. Here, the rotation angle is an angle for compensating the generated skew angle. For example, if the skew angle is q1 in a clockwise direction, the rotation angle may be q1 in a counterclockwise direction.
[0028] The processor 130 may determine whether scale compensation is necessary. For example, the processor 130 may determine whether the scan is performed in a form in which the horizontal and vertical ratios are not the same in the scanning process, or determine the resolution (or scale factor) in the scanning process and determine whether the scale compensation is necessary.
[0029] The processor 130 may determine an operation expression to be used in skew compensation when both scale compensation and skew compensation are required. For example, the processor 130 may determine whether to perform skew compensation according to an operation expression according to the calculated skew angle or perform skew compensation according to an approximated operation expression. An example operation expression to be used for skew compensation will be described later with reference to FIG. 3.
[0030] When both the scale compensation and the skew compensation are required, the processor 130 may rotate the generated scan image using the scale factor. For example, the processor 130 may calculate the second rotation angle considering the scale factor to the first rotation angle, and perform the rotation processing for the scan image using the calculated second rotation angle and the scale factor. Here, the scale factor corresponds to at least one of a scanning speed and the scan resolution, and may be defined as a separate value for each of the main scanning direction x and the sub-scanning direction y, or may be defined as a proportional value for the main scanning direction x and the sub- scanning direction y.
[0031] The processor 130 may perform rotation processing on the scan image using the corresponding operation expression according to the skew angle. For example, the processor 130 may perform rotation compensation based on Equation 2, which will be described later, and may perform operation processing more rapidly using an equation approximating Equation 2 for a small angle such as 5 degrees or less or 1 degree or less. [0032] The processor 130 may perform scale compensation for the rotated scan image. For example, the processor 130 may perform a scale processing corresponding to the scale factor (or the actual output resolution) previously calculated for the rotated scan image. For example, if the scan image is reduced to 1/2 with respect to the vertical direction in the scan process, a scale processing that enlarges the scan image twofold in the vertical direction may be performed.
[0033] If additional image processing is to be performed, in addition to the skew compensation and scale compensation described above with respect to the scan image, the processor 130 may perform the additional image processing on the skew-compensated image and perform scale compensation on the image subject to the additional image processing and output the final image. Flere, the additional image processing may be segmentation to distinguish the attributes per pixel, color correction, smoothing, sharpening, or the like.
[0034] In the above described example, skew compensation and additional image processing are performed using data prior to scaling, that is, data having a small size, and thus, image processing may be performed using a small memory and a quicker operation is available.
[0035] When image processing is completed, the processor 130 may store the scale-compensated image in the memory 120.
[0036] An example of an image scanning device has been described. Flowever, in implementation, various configurations may be provided additionally. Example of such various configurations will be described with reference to FIG. 2.
[0037] FIG. 2 is a block diagram of an image scanning device according to an example.
[0038] Referring to FIG. 2, the image scanning device 100 may include the image sensor 1 10, the memory 120, the processor 130, a communication device 140, a display 150, a manipulation input device 160, and a printing engine 170.
[0039] The operation of the image sensor 1 10 and the memory 120 has been described with reference to FIG. 1 , and a redundant description will be omitted. The processor 130 is also described with reference to FIG. 1 and the contents described in FIG. 1 will not be again described. Rather, only the contents related to the configuration added in FIG. 2 will be described below.
[0040] The communication device 140 may be connected to a terminal (not illustrated) such as a mobile device (e.g., a smart phone, a tablet personal computer (PC)), a PC, a note book PC, a personal digital assistant (PDA), a digital camera, or the like, and transmit a scan image previously stored in the memory 120 or a compensated scan image to another terminal.
[0041] For example, the communication device 140 may be configured to connect the image scanning device 100 to an external device, and may not only be connected to a terminal through a local area network (LAN), an internet network, or the like, but also connected through a universal serial bus (USB) port, a wireless communication port (e.g., WiFi 802.1 1 a/b/g/n, NFC, Bluetooth), or the like. The communication device 140 may be referred to as a communication interface, a transceiver, or the like.
[0042] The display 150 may display various pieces of information provided from the image scanning device 100. For example, the display 150 may display a user interface window to receive a selection of various functions provided by the image scanning device 100. The display 150 may be a monitor such as a liquid crystal display (LCD), a cathode-ray tube (CRT), a light emitting diode (LED), an organic LED (OLED), or the like, and may be implemented as a touch screen that may simultaneously perform a function of the manipulation input device 160 which will be described later.
[0043] Further, the display 150 may display a control menu for performance of functions of the image scanning device 100. Accordingly, a user may input a scan command on the displayed user interface window. In an example, the scan command may be a command to perform the scanning job and may include commands such as scan-to-server, scan-to-digital living network alliance (DLNA), scan-to-cloud, or the like, which transmits a scanning job to a server.
[0044] Further, when the image scanning device 100 is an MFP that includes printing and copying capabilities, the scan command may be a copy command that uses a scan function. Although it is described herein that a scan command is inputted through the manipulation input device 160, in another example, the scan command may be received from a terminal (not illustrated) through the communication device 140.
[0045] The display 150 may display the generated scan image and information about the scan image. In an example, the displayed scan image may be the scan image itself or a preview image for the scan image.
[0046] The display 150 may display a user interface window for receiving selection of an image processing method to be performed after scanning a manuscript. The user interface window may include an input area for receiving a resolution of an output image, a scanning speed, a scanning condition, or the like.
[0047] The manipulation input device 160 may receive from a user a function selection and a control command for the function. The function may include a print function, a copy function, a scan function, a fax transmission function, or the like. The manipulation input device 160 may be implemented as a plurality of buttons, a keyboard, a mouse, or the like, and may be implemented as a touch screen that may simultaneously perform functions of the display 150 described above.
[0048] The printing engine 170 may print a compensated scan image. The printing engine 170 may form an image on an image forming medium such as a photoconductive drum, an intermediate transfer belt, a paper feeding belt, and the like, transfer an image formed on the image forming medium on a print medium (e.g., paper), and perform a printing job.
[0049] When a copy command is received from a user, the processor 130 may control the image sensor 1 10 to perform a scanning job to generate a scan image, perform image compensation on the generated scan image, and control the printing engine 170 to print the compensated scan image.
[0050] Alternatively, when commands such as scan-to-server, scan-to- DLNA, scan-to-cloud, or the like are received from the user, the processor 130 may control the communication device 140 to transmit the compensated scan image to a storage corresponding to the command.
[0051] Although FIGS. 1 and 2 illustrate and describe certain functions of the image scanning device 100, the image scanning device 100 may further include a fax transceiver to perform a fax transceiving function, or the like, according to functions available in the image scanning device 100.
[0052] As described above, an example image scanning device may perform skew compensation first even when skew compensation for a scan image scanned with a different width/length ratio is necessary, that is, skew compensation and image processing with a smaller image is available. Therefore, skew compensation may be performed more rapidly with a smaller memory.
[0053] Hereinbelow, a reason why scale compensation is performed for a scan document is described, and a problem of applying a general skew compensation method to the scale-compensated scan image is described.
[0054] When scanning is performed at a speed higher than the speed of the image sensor 1 10, the manuscript is scanned by reducing the scanning resolution in the vertical direction (sub-scanning direction) compared to the horizontal direction (main scanning direction), the scan image is image-processed and enlarged in the vertical direction, and a scan image having the resolution desired by the user may be scanned rapidly.
[0055] For example, it may be supposed that the scanning speed of the image sensor 1 10 is required to be 60 images per minute (IPM), and the physical maximum speed of the image sensor 1 10 at 600 x 600 dpi is 30 IPM. In this case, the image sensor 1 10 may scan at a speed of 60 IPM at a resolution of 600 x 300 dpi. Therefore, a scan image may be obtained at 600 x 300 dpi, and the scan image may be scale-compensated. The scan image at a resolution of 600 x 300 dpi may be output as an output image at a resolution of 600 x 600 dpi.
[0056] In certain situations, a printing paper may not be aligned due to deviation of a disposition of sensors, characteristics of devices such as roller and motor movements, etc. causing misalignment of the printing paper. Accordingly, a skew in which the scan image is distorted to be different from the manuscript may occur.
[0057] When the skew is generated when a scanning job is performed by lowering a vertical resolution in order to obtain a high scanning speed as described above, a scaling needs to be performed first, and a skew compensation should be performed on the scale-compensated image. An example of this process is described below with reference to FIG. 3.
[0058] FIG. 3 illustrates a relation between skew compensation and scale compensation according to an example.
[0059] Referring to FIG. 3, the image sensor 1 10 outputs a scan image 202 obtained by scanning the manuscript 200. The scan image 202 has a distorted shape as shown in FIG. 3. In the image scanning device 100, the manuscript 200 may not be aligned due to a deviation in the arrangement of the sensors, mechanical characteristics such as rollers and motor movements, etc., and thus the scan image 202 may be distorted to be different from the manuscript 200.
[0060] For example, when the manuscript 200 is not aligned with the image sensor 1 10, the image sensor 1 10 scans a deformed manuscript 201 . When the distorted manuscript 201 is scaled (for example, reduced) and scanned, a rotated and shortened scan image 202 in the vertical direction is generated.
[0061] In order to compensate the scan image, the processor 130 needs to perform scale compensation for the scan image 202, output an enlarged scan image 205, perform skew compensation for the enlarged scan image 205, and output a final image 206.
[0062] Flowever, for the scan image 202, when rotation processing (or skew compensation processing) is performed first 203 and then scale compensation is performed 204, the same result as the final image 206 as described above may not be obtained.
[0063] In more detail, rotation and scale processing are a kind of affine transformation commonly used in computer graphics and may be expressed in a matrix form. Examples of affine transformations include translation, rotation, scaling such as increasing / decreasing, reflection, shear, and the like. Such affine transforms may be represented by multiplying of the matrix. Flowever, the scale processing and rotation processing do not have a commutative property. Flere, the commutative property satisfies S * R = R * S in the two matrices S and R. In other words, the order is important.
[0064] Since the scale processing and the rotation processing do not apply the commutative property, in order to correctly compensate the skewed and scaled distorted image, the scale compensation needs to be performed first, and then the skew compensation process needs to be performed.
[0065] When various image processing such as scale, rotation, and division is performed by hardware, the processor 130 needs a process to read and write necessary data in the memory 120. Therefore, if the size of the image is large, the number of times of reading and writing data stored in the memory 120 increases, and a high memory bandwidth is required. In particular, in the image processing using neighboring peripheral pixels, the processor 130 processes image data in units of tiles to save internal memory. This operation requires reading of peripheral pixel data and thus requires more memory access and high speed data processing.
[0066] In this regard, an example method of performing rotation processing and additional image processing for scan data read at low resolution and finally performing scale-compensation is provided.
[0067] In examples of the disclosure, so that the skew compensation is performed first, skew compensation is performed using a scale factor value that is used for a scale compensation operation which is performed for subsequent operations.
[0068] For example, the processor 130 may perform skew compensation (i.e. , rotation processing) using the scale factor for the distorted scan image 202. The processor 130 may then perform scale compensation (e.g., enlargement scaling) on the skew-compensated image. In implementation, additional image processing may be performed between the skew compensation and the scale compensation.
[0069] Hereinbelow, an example operation for skew compensation using the scale factor will be described.
[0070] FIG. 4 illustrates a skew angle before scale compensation and a skew angle after scale compensation according to an example.
[0071] The processor 130 may first confirm a scale factor. For example, the processor 130 may confirm the scale factor according to the scan resolution requested by the user and the output resolution. Flere, the scale factor may be calculated for each of the horizontal direction (main scanning direction) and the vertical direction (sub-scanning direction) and may be calculated as a ratio of the horizontal direction to the vertical direction. An example of such a ratio is shown in FIG. 6.
[0072] When the scale factor is confirmed, the processor 130 may calculate the skew angle (q1). For example, the manuscript is rotated at the first skew angle (q1) and scaled in this state. The second skew angle (q2) in the scaled scan image 202 may be different from the first skew angle (q1). For example, the first skew angle (q1) and the second skew angle (q2) are the same when the horizontal and vertical ratios are both reduced or enlarged equally. Flowever, if the horizontal and vertical ratios are different, the second skew angle (q2) is different from the first skew angle (q1).
[0073] The processor 130 may not detect the first skew angle (q1) immediately, and thus may detect the second skew angle (q2) on the scan image
202 first. For example, the processor 130 may detect the upper line of the manuscript on the scan image 202 and detect the second skew angle (q2) using the angle of the detected upper line.
[0074] The processor 130 may calculate a rotation center point (xc2, yc2).
[0075] The processor 130 may calculate the first skew angle (q1) at a second skew angle (q2) using a scale factor (Sx, Sy) (or Sx/Sy). For example, as shown in FIG. 4, the scan image 202 and the skew image 201 have an association as illustrated. In consideration of the foregoing, the first skew angle (q1) may be calculated using Equation 1.
Figure imgf000013_0001
... Equation 1
[0076] Here, θ1 is the first skew angle which is the angle in the image 201 ,q2 is the second skew angle which is the angle in the image 202, Sy is a scale factor of the y axis, and Sx is a scale factor of the x axis. The scale factor may be referred to as Sy/Sx proportional scale factor.
[0077] As described above, when the first skew angle (q1) is calculated, the processor 130 may perform rotation processing using Equation 2 as shown below.
Figure imgf000014_0001
Equation 2
[0078] Here, (x3, y3) is an output coordinate of the skew-compensated image, (x2, y2) is a coordinate of the scan image 202, q1 is the first skew angle, and (Xc2, yc2) is the rotation center point in the scan image 202.
[0079] If the calculated first skew angle q1is equal to or less than 1 degree, skew compensation using an approximated equation may be performed as in Equation 3.
Figure imgf000014_0002
Equation 3
[0080] Hereinbelow, an example process of obtaining Equation 2 and Equation 3 will be described.
[0081] In order to facilitate the description, coordinates and images of the manuscript 200 of FIG. 3 are indicated as I0(x0,y0) , the skew image 201 is indicated as I1( 1, 1), the scan image 202 is indicated as I2(x2, y2), the skew- compensated image 203 is indicated as I3(x3,y3), and the scale-compensated image 204 is indicated as I4(x4,y4).
[0082] Equation 2 described above is a matrix for converting the skew- compensated image in the scan image 202 in consideration of the scale factor. The image 204, which is obtained after the skew compensation and scale compensation, is the same as the manuscript 200 or an output 206 of the conventional method.
[0083] Conversion from the skew-compensated image 203 to the scale- compensated image 204 may be performed using Equation 4.
Figure imgf000014_0003
Equation 4
[0084] Here, S represents a scale matrix as in Equation 5.
Figure imgf000015_0001
Equation 5
[0085] Here, Sx is a scale factor in the horizontal direction, and Sy is a scale factor in the vertical direction. For example, if the horizontal direction is enlarged two times (200%) and the vertical direction is enlarged 1.5 times (150%), Sx = 2 and Sy = 1.5.
[0086] Inverse conversion of Equation 4 may be indicated as Equation 6 below.
Figure imgf000015_0002
... Equation 6
[0087] Here, S -1 is the inverse matrix of S and may be indicated as
Equation 7.
Figure imgf000015_0003
Equation 7
[0088] The scale-compensated image 204 should be the same as the manuscript 200, and Equation 6 should satisfy Equation 8 as follows.
Figure imgf000015_0004
... Equation 8
[0089] In this environment, if assuming that the skew image 201 is rotated by q1 in the clockwise direction with respect to (xc1, yc1) in this circumstance, the skew image 201 may be indicated as Equation 9 with respect to the manuscript
200.
Figure imgf000015_0005
... Equation 9 [0090] Here, R indicates a rotation matrix, and may be indicated as Equation 10.
Figure imgf000016_0001
... Equation 10
[0091] Here, q1 is the first skew angle.
[0092] The reverse conversion in association with Equation 9 may be indicated as Equation 11 as shown below.
Figure imgf000016_0002
... Equation 11
[0093] The inverse matrix (R-1) of the rotation matrix is shown in Equation
12. This indicates rotation in a clockwise direction by -(q1).
Figure imgf000016_0003
... Equation 12
[0094] Conversion from the skew image 201 to the scan image 202 is as shown in Equation 13.
Figure imgf000016_0004
... Equation 13
[0095] The inverse conversion with respect to Equation 13 is indicated as Equation 14.
Figure imgf000016_0005
... Equation 14
[0096] When substituting Equation 11 to Equation 8, Equation 15 is obtained, and when substituting Equation 14 to Equation 15, Equation 16 is obtained.
Figure imgf000016_0006
... Equation 15
Figure imgf000017_0001
Equation 16
[0097] The relation of the coordinates of the center point is as shown in Equation 17, and if Equation 17 is reflected to Equation 16, Equation 2 described above is obtained.
Figure imgf000017_0002
Equation 17
[0098] Equation 2 described above may be simplified through various assumptions. If assuming that the center of rotation is the origin, Equation 2 may be indicated as Equation 18.
Figure imgf000017_0003
... Equation 18
[0099] When the first skew angle is 1 degree or less, it is possible to assume that sin q » q, cos q » 1, tan q » q, tan-1 q » q, and it is also possible to indicate the first skew angle and the second skew angle as
Figure imgf000017_0005
[00100] Therefore, when the skew angle is 1 degree or less, Equation 2 may be indicated as Equation 3 described above.
[00101] When the first skew angle is 1 degree or less, and the rotation center point is the origin, Equation 2 may be indicated as Equation 19 below.
Figure imgf000017_0004
... Equation 19
[00102] Meanwhile, skew mostly has an angle of less than 5 degrees. When the skew angle is 5 degrees, it may be assumed that sin q » q , tan q » q tan-1 q » q, and it is possible to indicate the first skew angle and the second skew angle as
Figure imgf000017_0006
[00103] When the skew angle is 5 degrees or less, Equation 2 may be indicated as Equation 20 below.
Figure imgf000018_0001
... Equation 20
[00104] When the first skew angle is 5 degrees or less and the rotation center point is the origin, Equation 2 may be indicated as Equation 21 below.
Figure imgf000018_0002
... Equation 21
[00105] Accordingly, the processor 130 may perform skew compensation of the scan image using any one of the above-described Equations 2, 3, 18, 19, 20, or 21 . The scan image compensated by the above equations takes the scale factor into consideration, and even if scale processing is performed after the skew processing, there is no image distortion as in the conventional case.
[00106] FIG. 5 illustrates a processor according to an example.
[00107] Referring to FIG. 5, the processor 130 may include a scanner interface 131 , a CPU 132, a skew core 133, an image processing core 134, a scale core 135, a memory controller 136, a print image core 137, and a video controller 138. The processor 130 may be an application specific integrated circuit (ASIC) or a system on chip (SoC).
[00108] The scanner interface 131 communicates with the image sensor 1 10 and receives a scan image.
[00109] The CPU 132 may control an operation of the processor 130. As an example, the CPU 132 may control the scanner interface 131 to read the information of the image sensor 1 10 corresponding to a scan resolution or a scanning speed and control the memory controller 136 to store the read information in the memory 120. When the skew compensation is required, the CPU 132 may control the skew core 133 to perform skew compensation using a scale factor. [00110] The skew core 133 performs skew-related image processing. For example, the skew core 133 may calculate a skew angle and perform skew compensation on the scan image using the calculated skew angle and scale factor.
[00111] The image processing core 134 may perform additional image processing on the skew-compensated image. For example, the image processing core 134 may perform image processing, such as segmentation to distinguish attributes per pixel, color correction, smoothing, sharpening, or the like.
[00112] The scale core 135 may perform scale processing for the skew- compensated image or the image for which additional image processing is performed. For example, the scale core 135 may perform scale processing corresponding to the scale factor with respect to the skew-compensated image.
[00113] The memory controller 136 communicates with the memory 120. As an example, the memory controller 136 may transceive data with the memory 120 according to the control of the CPU 132, or transceive data in a direct memory access (DMA) method.
[00114] The print image core 137 performs operations related to a print job. For example, when print data is received, the print image core 137 may perform a rendering operation on the received print data and generate a bitmap image.
[00115] The video controller 138 controls the printing engine 170. For example, the video controller 138 may convert a generated bitmap image into a video signal and transmit the converted video signal to the printing engine 170.
[00116] FIG. 6 illustrates a scale factor corresponding to various input and output resolutions according to an example.
[00117] Referring to FIG. 6, a scale factor in the horizontal direction (Sx), a scale factor in the vertical direction (Sy), and a width to length ratio scale (Sy/Sx) factor for each of the input resolution and the output resolution are illustrated.
[00118] For example, when the input resolution is 600 x 300 and the output resolution is 600 x 600, the horizontal scale is 1 and the vertical scale is 2. As shown in Equations 2 and 3 above, the scale factors are reflected in the horizontal and vertical ratios in the Equations. Therefore, in example implementations, the horizontal scale factor and the vertical scale factor may not be calculated respectively, and one ratio scale factor may be used.
[00119] FIG. 7 is a flowchart of a skew compensation method according to an example.
[00120] Referring to FIG. 7, a scan image is generated in operation S710. As an example, a manuscript may be scanned based on at least one of a scanning speed and an input scan resolution, and a scan image may be generated.
[00121] The generated scan image is rotated using a predetermined scale factor in step S720. The scale factor corresponds to at least one of a scanning speed and an input scan resolution. For example, a first rotation angle is calculated using the generated scan image, a second rotation angle considering the scale factor at the calculated first rotation angle is calculated, and rotation processing of the scan image using the calculated second rotation angle and the scale factor may be performed.
[00122] Scale processing is performed for the rotated scan image in step S730. For example, the rotated scan image may be scale-processed using a scale factor. If additional image processing is required, additional image processing may be performed before the rotation processing, and the image subjected to the additional image processing may be subjected to the scale processing.
[00123] The scale-processed scan image is stored in step S740.
[00124] According to an example, the skew compensation method may perform skew compensation first even if a scan image has a different width / length resolution. Accordingly, the scaling operation may be performed later, and the image processing prior to the scaling operation may be processed more rapidly using fewer resources.
[00125] The examples of skew compensation methods described above may be embodied as a program and provided to a management server. As an example, a program including the skew compensation method may be stored in a non-transitory computer readable medium and provided. [00126] The foregoing examples and advantages are merely exemplary and are not to be construed as limiting. The examples may be readily applied to other types of devices or apparatuses. Also, the description of the examples is intended to be illustrative, and not to limit the scope of the inventive concept, and many alternatives, modifications, and variations will be apparent to those skilled in the art.

Claims

WHAT IS CLAIMED IS:
1. An image scanning device, comprising:
an image sensor to scan a manuscript;
a memory; and
a processor to:
generate a scan image corresponding to the manuscript, perform rotation processing for the generated scan image using a scale factor,
perform scaling processing for the rotated scan image, and store the scale-processed scan image in the memory.
2. The image scanning device of claim 1 , wherein the processor is to: control the image sensor to scan the manuscript based on at least one of a scanning speed or an input scan resolution, and
perform the rotation processing for the scan image using the scale factor corresponding to the at least one of the scanning speed or the input scan resolution.
3. The image scanning device of claim 1 , wherein the processor is to: calculate a second rotation angle using the generated scan image, calculate a first rotation angle by taking into account the scale factor to the calculated second rotation angle, and
perform rotation processing for the scan image using the calculated first rotation angle and the scale factor.
4. The image scanning device of claim 3, wherein the processor is to: detect an upper line of the manuscript in the generated scan image, and calculate the first rotation angle using an angle of the detected upper line.
5. The image scanning device of claim 1 , wherein the processor is to: perform additional image processing for the rotated scan image, and perform scaling processing for the scan image for which additional image processing is performed.
6. The image scanning device of claim 5, wherein the additional image processing includes at least one of segmentation to distinguish attributes by pixels, color correction, smoothing, or sharpening.
7. The image scanning device of claim 1 , wherein the generated scan image has a resolution in a main scanning direction which is different from a resolution in a sub-scanning direction.
8. A skew compensation method of an image scanning device, the method comprising:
generating a scan image;
performing rotation processing for the generated scan image using a scale factor;
performing scaling processing for the rotated scan image; and
storing the scale-processed scan image.
9. The skew compensation method of claim 8,
wherein the generating comprises scanning a manuscript based on at least one of a scanning speed or an input scan resolution and generating the scan image, and
wherein the performing of the rotation processing comprises performing rotation processing for the scan image using the scale factor corresponding to the at least one of the scanning speed or the input scan resolution.
10. The skew compensation method of claim 8, wherein the performing of the rotation processing comprises:
calculating a second rotation angle using the generated scan image; calculating a first rotation angle in consideration of the scale factor to the calculated second rotation angle; and performing rotation processing for the scan image using the calculated first rotation angle and the scale factor.
11. The skew compensation method of claim 10, wherein the calculating of the first rotation angle comprises:
detecting an upper line of a manuscript in the generated scan image and calculating the first rotation angle using an angle of the detected upper line.
12. The skew compensation method of claim 8, further comprising: performing additional image processing for the rotated scan image, wherein the performing of the scaling processing comprises performing a scaling operation for the scan image for which additional image processing is performed.
13. The skew compensation method of claim 12, wherein the additional image processing includes at least one of segmentation to distinguish attributes by pixels, color correction, smoothing, or sharpening.
14. The skew compensation method of claim 8, wherein the generated scan image has a resolution in a main scanning direction which is different from a resolution in a sub-scanning direction.
15. A non-transitory computer-readable recording medium including a program for executing a skew compensation method, the non-transitory computer-readable recording medium comprising:
instructions to perform rotation processing for a scan image using a scale factor;
instructions to perform scaling processing for the rotated scan image; and instructions to store the scale-processed scan image.
PCT/US2019/043159 2019-01-24 2019-07-24 Skew compensation based on scale factor WO2020153990A1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US17/278,375 US11445087B2 (en) 2019-01-24 2019-07-24 Skew compensation based on scale factor

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR10-2019-0009455 2019-01-24
KR1020190009455A KR20200092198A (en) 2019-01-24 2019-01-24 Skew compensation based on scale factor

Publications (1)

Publication Number Publication Date
WO2020153990A1 true WO2020153990A1 (en) 2020-07-30

Family

ID=71736917

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/US2019/043159 WO2020153990A1 (en) 2019-01-24 2019-07-24 Skew compensation based on scale factor

Country Status (3)

Country Link
US (1) US11445087B2 (en)
KR (1) KR20200092198A (en)
WO (1) WO2020153990A1 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11717728B1 (en) * 2022-02-28 2023-08-08 Acushnet Company Golf ball having markings spaced from a centerline plane

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20100141991A1 (en) * 2008-12-10 2010-06-10 Akihito Yoshida Image processing apparatus, image forming apparatus, and image processing method
US20130142396A1 (en) * 2011-12-01 2013-06-06 Canon Kabushiki Kaisha Estimation of shift and small image distortion
US20170187916A1 (en) * 2015-12-25 2017-06-29 Ricoh Company, Ltd. Image processing device, image forming apparatus, image processing method, and non-transitory recording medium
US20170213329A1 (en) * 2014-07-22 2017-07-27 Hewlett-Packard Development Company, L.P., Recovering Planar Projections
US20170318164A1 (en) * 2016-04-28 2017-11-02 Pfu Limited Image-processing apparatus, image-processing method, and computer program product

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7027666B2 (en) 2002-10-01 2006-04-11 Eastman Kodak Company Method for determining skew angle and location of a document in an over-scanned image
EP1901241A1 (en) 2006-09-06 2008-03-19 Kba-Giori S.A. Method for controlling the quality of printed documents based on pattern matching
US8174737B2 (en) * 2007-12-28 2012-05-08 Brother Kogyo Kabushiki Kaisha Image reading apparatus
US8014035B2 (en) 2008-09-10 2011-09-06 Xerox Corporation Decoding message data embedded in an image print via halftone dot orientation
JP2018523335A (en) 2015-05-22 2018-08-16 ヒューレット−パッカード デベロップメント カンパニー エル.ピー.Hewlett‐Packard Development Company, L.P. Media scanning operation control
US9998628B1 (en) 2017-04-03 2018-06-12 Xerox Corporation Methods and systems for auto correction of defects in a scanned image

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20100141991A1 (en) * 2008-12-10 2010-06-10 Akihito Yoshida Image processing apparatus, image forming apparatus, and image processing method
US20130142396A1 (en) * 2011-12-01 2013-06-06 Canon Kabushiki Kaisha Estimation of shift and small image distortion
US20170213329A1 (en) * 2014-07-22 2017-07-27 Hewlett-Packard Development Company, L.P., Recovering Planar Projections
US20170187916A1 (en) * 2015-12-25 2017-06-29 Ricoh Company, Ltd. Image processing device, image forming apparatus, image processing method, and non-transitory recording medium
US20170318164A1 (en) * 2016-04-28 2017-11-02 Pfu Limited Image-processing apparatus, image-processing method, and computer program product

Also Published As

Publication number Publication date
US11445087B2 (en) 2022-09-13
KR20200092198A (en) 2020-08-03
US20210360121A1 (en) 2021-11-18

Similar Documents

Publication Publication Date Title
US8934131B2 (en) Controlling device
US20200404122A1 (en) Image scanning apparatus for protecting personal information and method for scanning image thereof
US11445087B2 (en) Skew compensation based on scale factor
US9069491B2 (en) Image processing apparatus, image processing method, and storage medium
JP2007081486A (en) Image forming apparatus, image processing apparatus, image output apparatus, mobile terminal, image processing system, image forming method, image processing method, image output method, image forming program, image processing program, and image output program
US9538034B2 (en) Image forming apparatus, image forming method, and recording medium that facilitate management of blank sheets for preventing leakage of confidential information
US20090122373A1 (en) Image Processing Apparatus
US9826111B2 (en) Information processing apparatus and image processing system
US8416469B2 (en) Image processing apparatus, image processing method and computer program
US11943407B2 (en) Using pre-scan to improve scan speed by detecting a document loaded on the image reading apparatus
WO2020149880A1 (en) Method for skew compensation based on block
US10798264B2 (en) Image scanning apparatus and method for scanning thereof
JP7457079B2 (en) Image forming apparatus, information processing system, information processing program, and information processing method
JP2013077933A (en) Image processing device
JP2019080169A (en) Image processing device and image processing method
JP5847687B2 (en) Image processing setting method, program, recording medium, and information processing apparatus
JP2011015362A (en) Image processing apparatus
WO2019181593A1 (en) Image reading device
JP6045459B2 (en) Image forming apparatus
US20110158531A1 (en) Image processing apparatus and control method thereof
US20130063775A1 (en) Image forming apparatus capable of providing actual-size preview, method of controlling the same, and storage medium
KR20060009565A (en) Method for setting copy position using preview function
KR20220051655A (en) Iamge scanning apparatus for compensating optical flare
US20180278798A1 (en) Image processing apparatuses and non-transitory computer readable medium
JP4881897B2 (en) Image processing method and image processing apparatus

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 19911928

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 19911928

Country of ref document: EP

Kind code of ref document: A1