Image reading device

The image reading device addresses inappropriate tilt correction by enabling conditional tilt detection, ensuring accurate tilt correction by turning off the function when unsuitable conditions are present, thus enhancing the precision of tilt detection and correction.

JP7826722B2Active Publication Date: 2026-03-10BROTHER KOGYO KK
View PDF 4 Cites 0 Cited by

Patent Information

Authority / Receiving Office
JP · JP
Patent Type
Patents
Current Assignee / Owner
Filing Date
2022-02-09
Publication Date
2026-03-10

AI Technical Summary

Technical Problem

Existing image reading devices face issues with inappropriate tilt correction due to undetected tilt angles, leading to potential problems in the skew correction process.

Method used

An image reading device with a controller and reading engine that includes a tilt detection function, allowing the controller to instruct the reading engine to turn on or off the tilt detection based on suitable conditions, ensuring accurate tilt detection and correction.

Benefits of technology

The device effectively suppresses issues arising from inappropriate tilt correction by turning off the tilt detection function when unsuitable conditions are detected, thereby improving the accuracy of tilt correction processes.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 0007826722000001
    Figure 0007826722000001
  • Figure 0007826722000002
    Figure 0007826722000002
  • Figure 0007826722000003
    Figure 0007826722000003
Patent Text Reader

Abstract

To provide an image reading apparatus which includes an inclination correction function and can suppress the occurrence of a malfunction due to inclination correction.SOLUTION: A reading engine 15 of an MFP 10 executes an inclination detection function for detecting inclination of an image shown by reading image data by executing an inclination detection program 27. A scan program 26 issues a reading instruction that turns on an inclination detection function to an inclination detection program 27 (S29) when an inappropriate condition when executing the inclination detection function is not included in a reading instruction acquired from an application program 25 (S27: YES), and instructs reading that turns off the inclination detection function (S31) when the inappropriate condition is included (S27: NO).SELECTED DRAWING: Figure 4
Need to check novelty before this filing date? Find Prior Art

Description

[Technical Field]

[0001] The present application relates to a technique for reading an original document as image data. [Background technology]

[0002] Patent Document 1 describes an image reading device that reads an original document as image data and detects the edges of the original document area from the image data. The image reading device corrects the skew of the original document by rotating the image according to the skew of the detected edges. [Prior art documents] [Patent documents]

[0003] [Patent Document 1] Patent Publication No. 2021-190946 Summary of the Invention [Problem to be solved by the invention]

[0004] In the above-described tilt correction process, depending on the conditions for executing tilt correction, the tilt angle of the document may not be detected, and tilt correction may not be performed appropriately.

[0005] The present application has been made in view of the above-mentioned problems, and has an object to provide an image reading device having a tilt correction function, which can suppress the occurrence of problems due to tilt correction. [Means for solving the problem]

[0006] In order to solve the above problem, the present application discloses an image reading device comprising a controller and a reading engine, wherein the reading engine has a tilt detection function for detecting the tilt of an image represented by image data obtained by reading an original document using a reading sensor, and the controller executes a first instruction process for instructing the reading engine to read the original document with the tilt detection function turned on when a reading instruction obtained from outside does not include a condition that is unsuitable for causing the reading engine to execute the tilt detection function, and a second instruction process for instructing the reading engine to read the original document with the tilt detection function turned off when the reading instruction obtained from outside includes a condition that is unsuitable for causing the reading engine to execute the tilt detection function. [Effects of the Invention]

[0007] According to the image reading device of the present application, if a reading instruction includes conditions that are not suitable for the reading engine to execute the skew detection function, the reading engine is instructed to read the document with the skew detection function turned off. As a result, for reading instructions with conditions that make it difficult to detect the skew angle of the document, by turning off the skew detection function, it is possible to suppress the occurrence of problems due to the subsequent skew correction process. [Brief explanation of the drawings]

[0008] [Figure 1] FIG. 1 is a block diagram of an MFP according to a first embodiment. [Figure 2] Diagram of the manuscript table. [Figure 3] 10 is a flowchart of an application process. [Figure 4] 10 is a flowchart of a scan program process. [Figure 5] 10 is a flowchart of a tilt detection program process. [Figure 6] 10A and 10B are diagrams showing the relationship between a tilted original and the tilt angle; DETAILED DESCRIPTION OF THE INVENTION

[0009] FIG. 1 shows a block diagram of an MFP 10 exemplified as a first embodiment of the present invention. The P10 includes a CPU 11, a memory 12, a print engine 13, a read engine 15, a FAX engine 16, a user IF (abbreviation of interface) 17, a USB IF 18, and a network IF 19. These components can communicate with each other via a bus 21. The CPU 11 executes processing in accordance with a program 23 stored in the memory 12.

[0010] The print engine 13 prints an image on a sheet (for example, recording paper, an OHP sheet, or the like). The print engine 13 can be configured to print using an inkjet method or an electrophotographic method. The read engine 15 has a read sensor 15A that reads an image from a document, and an ASIC 15B. The ASIC 15B includes, for example, a read ASIC that controls the read sensor 15A to read the image of the document, a rotation ASIC that performs a rotation process on the image indicated by the read image data, and a tilt detection ASIC that detects the tilt of the image in the read image data.

[0011] The MFP 10 uses, for example, a flatbed system to read an image of a document placed on a document table using a reading sensor 15A. FIG. 2 shows the configuration of the document table 30. Note that in FIG. 2, the configuration below the document table 30 is indicated by a dashed line. The document table 30 has, for example, a transparent platen glass 31. The user uses a reference position 33, which is the corner of the platen glass 31, as a marker and aligns the corner of the document 35 with this reference position, placing the document 35 on the platen glass 31. The reading sensor 15A is disposed below the document table 30 with its reading unit facing upward. The reading sensor 15A is, for example, a CIS. Note that the reading sensor 15A is not limited to a CIS, and may be a sensor capable of reading other images, such as a CCD. The reading sensor 15A is, for example, an elongated sensor, and is disposed with the extending direction of the reading unit parallel to one side of the platen glass 31. Hereinafter, the direction in which the reading portion of the reading sensor 15A extends will be referred to as the "main scanning direction X," and the direction perpendicular to the main scanning direction X will be referred to as the "sub-scanning direction Y." The reading engine 15 causes the reading sensor 15A to reciprocate in the sub-scanning direction Y using a transport mechanism 37 arranged below the platen 30, thereby reading the image on the platen 30.

[0012] The FAX engine 16 shown in FIG. 1 transmits and receives FAX data to and from other facsimile devices via a telephone line. The user IF 17 includes, for example, a touch panel, switches, etc., and receives user input and displays information to the user. The USB IF 18 is an interface capable of communication compliant with the USB standard and is connectable to USB devices such as USB memory. The network IF 19 is, for example, a LAN interface and is connected to an information processing terminal 41 via a network 39. The information processing terminal 41 is, for example, a personal computer. Note that the information processing terminal 41 connected to the MFP 10 is not limited to a personal computer, and may be a smartphone, tablet terminal, or other terminal capable of information processing. Furthermore, communication connecting the MFP 10 and the information processing terminal 41 is not limited to wired communication, and may be wireless communication.

[0013] The memory 12 is configured by combining, for example, RAM, ROM, flash memory, and HDD. The memory 12 stores a program 23 executed by the CPU 11 and ASIC 15B. The program 23 is a control program that executes printing, scanning, fax sending and receiving, and MFP 10 setting processes. The program 23 includes an application program 25, a scan program 26, and a tilt detection program 27. The memory 12 also stores a tilt correction flag 29 that indicates whether the tilt correction function is on or off, i.e., whether the function is enabled or disabled.

[0014] The medium on which the program 23 is stored is not limited to the ROM, RAM, HDD, etc. built into the MFP 10, but may be a computer-readable and writable storage medium. A computer-readable storage medium is a non-transitory medium. In addition to the above examples, non-transitory media include CD-ROMs, , DVD-ROMs, and other storage media. Non-transitory media are also tangible media. On the other hand, electrical signals carrying programs downloaded from servers on the Internet are computer-readable signal media, which are a type of computer-readable medium, but are not included in non-transitory computer-readable storage media. Also, part or all of program 23 may be stored in a device other than memory 12 of MFP 10 (for example, reading engine 15).

[0015] Next, the processing performed when the MFP 10 receives an instruction to read an image of the document 35 will be described with reference to FIGS. 3 to 6. In the following description, a case where an instruction to execute a copy function is received will be described as an example of an instruction to read an image. A case where recording paper is used as the printing target for the image will also be described. The CPU 11 executes the application processing shown in FIG. 3 by executing the application program 25. For example, the CPU 11 starts the processing shown in FIG. 3 when it displays a screen for accepting an instruction to execute a copy on the touch panel of the user IF 17 based on a predetermined operation input to the user IF 17.

[0016] The processes in the following Figures 3 to 5 basically indicate the processing of the CPU 11 and the ASIC 15B of the reading engine 15 (hereinafter referred to as CPU 11, etc.) in accordance with the instructions written in the program 23. That is, processes such as "accept," "obtain," "decide," "judge," and "instruct" in the following explanation indicate the processing of the CPU 11, etc. The processing by the CPU 11, etc. also includes hardware control. In the following explanation, the processing of the CPU 11, etc. in accordance with the instructions written in the program 23 may be described in abbreviated terms. For example, it may be described as "performed by CPU 11." Furthermore, the processing of the CPU 11, etc. in accordance with the instructions written in the program 23 may be described in abbreviated terms such as "performed by the program."

[0017] Note that "acquire" is used as a concept that does not necessarily require a request. In other words, the process of receiving data without a request by the CPU 11, etc., is also included in the concept of "the CPU 11, etc., acquires data." Furthermore, in the description of a flowchart, a positive or negative determination may be expressed as "when...." For example, "CPU 11 determines that A is greater than B" means "CPU 11 determines that A is greater than B." Furthermore, "data" in this application is represented by a computer-readable bit string. Data with the same substantial meaning but different formats are treated as the same data. The same applies to "information" in this application. Furthermore, "instruct" is a concept that indicates outputting information indicating an instruction to the other party. Furthermore, information indicating an instruction is also simply referred to as an "instruction."

[0018] Furthermore, the process by the CPU 11 or the like to determine whether information A indicates event B may be conceptually described as "determining whether event B is present from information A." The process by the CPU 11 to determine whether information A indicates event B or event C may be conceptually described as "determining whether event B or event C is present from information A."

[0019] First, in step (hereinafter simply referred to as "S") 11 of FIG. 3, the application program 25 receives a copy start instruction. The application program 25 receives the copy start instruction based on, for example, an operation input to the user IF 17. When the application program 25 receives the start instruction, it instructs the scan program 26 to start scanning (S13). For example, when the CPU 11 is notified of the scan start instruction from the application program 25 in S13, it reads and executes the scan program 26 from the memory 12, and starts the scan program processing shown in FIG. Alternatively, the CPU 11 may execute the scan program 26 in advance and put it on standby, and then in S13 the application program 25 may send a command to the scan program 26 to start scanning, causing the scan program 26 to start the process of FIG.

[0020] 4 starts, the scan program 26 acquires information from the application program 25 in S21. The scan program 26 acquires, for example, information indicating the size of the recording paper on which the scanned image is to be printed, the magnification ratio for enlarging the image, and the resolution from the application program 25. Regarding the recording paper size, for example, the CPU 11 receives in advance, on a setting screen of the MFP 10, setting values ​​(which may also be called parameters) indicating the size of the recording paper to be set in each paper tray of the MFP 10, and associates each tray with the recording paper size for that tray and stores them in memory 12. The application program 25 detects the recording paper size corresponding to the paper tray selected on the copy start screen from the data in memory 12 and notifies the scan program 26. The MFP 10 may also be equipped with a sensor that detects the size of the recording paper set in the tray. The application program 25 may then detect the recording paper size based on the value detected by the sensor and notify the scan program 26 of the setting value indicating the detected size. Furthermore, the application program 25 notifies the scan program 26 of the setting value of the copy magnification rate and the setting value of the reading resolution received on the copy setting screen as the magnification rate and the resolution, respectively.

[0021] Next, the scan program 26 determines the read width, which is the width of the read range in the sub-scanning direction Y to be read by the read sensor 15A, based on the recording paper size and magnification obtained from the application program 25 (S25). The scan program 26, for example, sets the read range according to the recording paper size and enlarges or reduces the read range according to the magnification. The scan program 26 determines whether the read width determined in S25 is larger than the required read width necessary for detecting the skew angle (S27). Here, the required read width necessary for detecting the skew angle is the skew angle used for skew correction with a desired accuracy or higher, i.e., the width of the read range in the sub-scanning direction Y that can detect the skew of the original 35. The required read width is, for example, several centimeters. The scan program 26, for example, detects an edge 43 (see FIG. 2) in the sub-scanning direction Y of the original 35 placed on the platen 30 and detects the skew angle of the original 35 from the edge 43. FIG. 6 shows two originals 35A and 35B of different sizes placed on platen 30 at the same inclination. The width indicated by the dashed line in FIG. 6 indicates the required reading width W. The width W1 of original 35A in the sub-scanning direction Y is smaller than the required reading width W, while the width W2 of original 35B in the sub-scanning direction Y is larger than the required reading width W. The larger the magnification of the copy, the narrower the reading range, and the smaller the reading width in the sub-scanning direction Y. For example, if the recording paper size is 3 inches in the main scanning direction X and 5 inches in the sub-scanning direction Y, and the magnification is 400%, the reading range in the sub-scanning direction Y is 3.175 cm (= 12.7 cm (5 inches) × 1 / 4). Therefore, even if the width W2 in the sub-scanning direction Y of the recording paper size to be printed on is larger than the required reading width W, as in the case of original 35B, the width of the reading range in the sub-scanning direction Y becomes smaller than the required reading width W when the magnification is increased. As a result, the detection accuracy of the edge 43 decreases, and the detection accuracy of the inclination angle θ1 decreases. Therefore, in S25, the scan program 26 determines the reading width in the sub-scanning direction Y from the recording paper size and the enlargement rate.

[0022] Furthermore, if the recording paper size is the same as that of the original 35B and the magnification is 1x, the reading width in the sub-scanning direction Y of the reading range of the original 35B will be width W2, which is larger than the required reading width W. In this case, the edge 43 of the original 35B can be detected with high precision, and the tilt angle θ1 of the original 35B with respect to the sub-scanning direction Y can be detected with high precision. As a result, tilt correction can be performed with high precision using the tilt angle θ1. On the other hand, if the recording paper size is the same as that of the original 35A and the magnification is 1x, the reading width in the sub-scanning direction Y of the original 35A will be width W1, which is smaller than the required reading width W. In this case as well, the scan program 26 does not execute detection of the tilt angle θ1 by the reading engine 15. The method for determining the reading width uses the above-mentioned parameters and formulas. Alternatively, a table relating the recording paper size, magnification rate, and reading width may be prepared in advance, and the size may be detected from the table as appropriate.

[0023] If the reading width is greater than the required reading width W (S27: YES), the scan program 26 executes S28. If the reading width is equal to or less than the required reading width W (S27: NO), the scan program 26 executes S31. For example, the scan program 26 uses a variable preset in the scan program 26 as the required reading width W (see FIG. 1). In S28, the scan program 26 determines whether the skew correction function is on. For example, the scan program 26 reads the skew correction flag 29 in the memory 12 to determine whether the skew correction function is on (enabled). For example, the MFP 10 sets the skew correction flag 29 to a value (e.g., a value of zero) indicating that the skew correction function is off as an initial value. When the MFP 10 receives an instruction to turn on the skew correction function via an operation input to the user IF 17, the MFP 10 sets the skew correction flag 29 to a value (e.g., a value of one) indicating that the skew correction function is on.

[0024] The method by which the scan program 26 obtains the on / off information for the skew correction function is not limited to the above. For example, the application program 25 may notify the scan program 26 of the information on the skew correction flag 29 in the memory 12 along with the information on the recording paper size and the magnification ratio. Alternatively, the user may set whether or not to execute the skew correction function when issuing a copy instruction. In this case, the scan program 26 determines whether or not to enable the skew correction function based on information obtained externally for each copy, rather than on information preset in the memory 12.

[0025] If the skew correction function is on (S28: YES), the scan program 26 instructs the reading engine 15 to turn on the skew correction detection function and read the document (S29). If the scan program 26 makes a negative determination in S27 (S27: NO) or if the scan program 26 makes a negative determination in S28 (S28: NO), the scan program 26 instructs the reading engine 15 to turn off the skew detection function and read the document (S31). The method for determining the read range in S27 is not limited to the method for determining the widths W1 and W2 in the sub-scanning direction Y described above. For example, the scan program 26 may determine the width of the read range in the main scanning direction X and determine whether to turn on or off the skew detection function. In this case, the skew detection program 27 may detect an edge extending in the main scanning direction X in the skew angle θ1 detection process described later, and detect the angle formed between the detected edge in the main scanning direction X and the main scanning direction X as the skew angle θ1. Alternatively, the scan program 26 may determine whether to turn on or off the tilt detection function based on the size of the area of ​​the read range.

[0026] In S31, the scan program 26 instructs the reading ASIC, which is part of the ASIC 15B, to read the original 35. The scan program 26 notifies the reading engine 15 of, for example, information on the reading range based on the recording paper size and magnification, and information on the resolution. The reading ASIC moves the reading sensor 15A within the reading range acquired by the reading engine 15, and operates the reading sensor 15A at a movement speed and reading interval according to the resolution acquired by the reading engine 15, thereby reading the original 35, and stores the data output by the reading sensor 15A as read image data in the read image data area in the memory 12. After issuing the read instruction in S31, the scan program 26 determines whether or not the reading ASIC has completed storing the read image data (S33). When the reading ASIC has completed storing the read image data (S33: YES), the scan program 26 inputs 0 (zero) degrees as the tilt correction angle to the rotation ASIC, which is part of ASIC 15B, and instructs it to rotate the read image data stored in memory 12 (S35). Therefore, if the reading width is equal to or less than the required reading width W, the scan program 26 does not execute detection of the tilt angle θ1 by the reading engine 15, and sets a value of 0 degrees as the tilt correction angle. Since 0 degrees is input as the tilt correction angle, the rotation ASIC does not perform rotation processing for tilt correction, and stores the image data in memory 12. Rotation If necessary, the ASIC may perform rotation processing other than for tilt correction. Note that the scan program 26 does not need to execute S35. In other words, if the reading width is less than the required reading width W, the rotation processing by the rotation ASIC does not need to be executed.

[0027] Furthermore, when executing S29, the scan program 26 instructs the reading ASIC to perform reading, as in S31. The scan program 26 also instructs the skew detection ASIC, which is part of ASIC 15B, to detect skew. The skew detection ASIC stores the data output by the reading sensor 15A operated by the reading ASIC as skew detection read image data in the skew detection read image data area in the memory 12. The skew detection ASIC stores the read image data in the range up to the required reading width W in the sub-scanning direction Y, i.e., the read image data in the reading range required to detect the skew angle θ1, as skew detection read image data.

[0028] 5 in accordance with the skew detection program 27. When the skew detection ASIC finishes storing the scanned image data for skew detection, the CPU 11 starts the skew detection program process shown in FIG. 5 in accordance with the skew detection program 27. When the skew detection program 27 starts the process shown in FIG. 5, it detects the skew angle θ1 of the document 35 in S51. The skew detection program 27 executes image processing to, for example, emphasize the edges of the scanned image data for skew detection, and detects the leading position of the document 35 (the position of the corner closest to the reference position 33) and an edge 43 in the sub-scanning direction Y of the document 35 from the emphasized scanned image data for skew detection. The leading position and the edge 43 can be detected by a well-known method, for example, by analyzing the binarized image data in the main scanning direction X, estimating a candidate point for the edge 43 from the position where the first black pixel exists, and then detecting the leading position and the edge 43 from the multiple candidate points. The tilt detection program 27 executes S51, and if the edge 43 or the tilt angle θ1 cannot be detected normally due to some malfunction, such as when a foreign object other than the document 35 is placed on the document table 30 (S53: NO), it sets the tilt correction angle to 0 degrees (S55).

[0029] On the other hand, if the skew angle θ1 is successfully detected (S53: YES), the skew detection program 27 executes S57. If the detected skew angle θ1 is smaller than the threshold angle θth (S57: YES), the skew detection program 27 sets the detected skew angle θ1 as the skew correction angle (S59). If the skew angle θ1 is equal to or greater than the threshold angle θth (S57: NO), the skew detection program 27 executes S55. The threshold angle θth is, for example, 10 degrees. Therefore, for example, as shown in FIG. 6, if the document 35 is tilted clockwise by the skew angle θ1 with respect to a line along the sub-scanning direction Y and the skew angle θ1 is equal to or greater than the threshold angle θth, or if the document 35 is tilted counterclockwise and the skew angle θ1 is equal to or greater than the threshold angle θth, the skew detection program 27 sets the skew correction angle to 0 degrees even if the skew angle θ1 is detected correctly. This is because, for example, if the skew angle θ1 is equal to or greater than a predetermined threshold angle θth, there is a possibility that the user has intentionally tilted the document 35, and it is therefore preferable not to perform skew correction. After executing S59 or S55, the skew detection program 27 ends the processing shown in Fig. 5. Therefore, as described above, a reading instruction with the skew correction function turned on is an instruction to cause the reading engine 15 to read an image using the reading ASIC, and a reading instruction with the skew correction function turned off is an instruction to cause the reading engine 15 to not only read an image using the reading ASIC, but also store the read image data for skew detection using the skew detection ASIC and detect the skew angle θ1 using the skew detection program 27.

[0030] Returning to FIG. 4, after issuing a reading instruction in S29, the scan program 26 determines whether or not the reading ASIC has completed storing the read image data (S39), similar to S33. If the reading ASIC has completed storing the read image data (S39: YES), the scan program 26 inputs the skew correction angle set by the skew detection program 27 to the rotation ASIC of ASIC 15B, and instructs the rotation process of the read image data stored in memory 12 (S41). For example, when the skew detection program 27 completes the process of FIG. 5, it executes S5 The skew correction angle set in S39 or S55 is notified to the scan program 26. The method of acquiring the skew correction angle is not limited to the notification method described above. For example, the skew detection program 27 may write the skew correction angle to a specific area in the memory 12, and the scan program 26 may read it from the memory 12. Furthermore, since the storage process of the scanned image data for skew detection by the skew detection ASIC is executed only up to the required scanning width W (e.g., several centimeters) in the sub-scanning direction Y, the storage process of the scanned image data by the scanning ASIC is completed before the completion of the process of FIG. 5 by the skew detection program 27. Therefore, once a positive determination is made in S39 and the storage of the scanned image data is completed, S59 or S55 is executed, and the skew correction angle is set. If the setting of the skew correction angle is not yet complete, the scan program 26 may temporarily wait for the start of S41 until the process of FIG. 5 is completed.

[0031] If step S55 is executed and the tilt correction angle is set to 0 degrees, the image will not be rotated. The scan program 26 may also cause the rotation ASIC to start rotating the image before the reading ASIC completes the storage process for the scanned image data. That is, before the scanning of the scanned image data is completed, the rotation process may be executed in parallel from the portion for which scanning has been completed.

[0032] As shown in FIG. 3, after issuing a command to start scanning in S13, the application program 25 determines whether the scanned image data after the rotation process by the rotation ASIC is completed has been stored in the memory 12 (S15). For example, the scan program 26 ends the process of FIG. 4, and after the rotation ASIC completes the image rotation process, it notifies the application program 25 that the rotation ASIC has completed storing the scanned image data. Upon receiving the notification (S15: YES), the application program 25 executes predetermined image processing and prints the scanned image data (S17). The predetermined image processing here refers to, for example, a process for converting the color of the scanned image data or a process for correcting the image. The application program 25 then causes the print engine 13 to print the scanned image data.

[0033] While the above embodiment describes the copy function, the on / off determination of the skew detection function and the setting of the skew correction angle can be performed similarly for other processes involving image reading. Examples of other processes involving image reading include scanning. For example, when the MFP 10 receives a scan instruction from the information processing terminal 41 via the network 39, the MFP 10 may determine whether to turn the skew detection function on / off based on the content of the scan instruction. For example, the application program 25 notifies the scan program 26 of the document size (e.g., the document size setting value) indicated by the size information included in the scan instruction (an example of a scan instruction) acquired from the information processing terminal 41. In S27, the scan program 26 may determine whether the width of the scan range in the sub-scanning direction Y based on the document size specified in the scan instruction is equal to or less than the required scan width W. If the width is greater than the required scan width W, the scan program 26 may execute S29. In this case, as with the copy function described above, it is possible to prevent a decrease in the detection accuracy of the skew angle θ1 and to prevent correction based on the skew angle θ1. Alternatively, for example, when executing a function of storing scanned image data scanned by the scanning engine 15 in a USB storage connected to the USBIF 18, the MFP 10 may compare the width in the sub-scanning direction Y of the scanning range (size of the scanned document) set by the user IF 17 with the required scanning width W to determine whether to turn on or off the skew detection function. Therefore, the application program 25 that issues a scan instruction to the scan program 26 is not limited to an application program 25 for a copy function, but may also be an application program 25 for a scan function. In the case of the scan function, the processing of S17 may include compression processing and binarization processing in addition to outputting and saving the scanned image data.

[0034] Incidentally, the CPU 11 and the scan program 26 are an example of the controller of the present invention. The detection program 27 is an example of a reading engine. S27 is an example of a judgment process, S29 is an example of a first instruction process, and S31 is an example of a second instruction process. The required reading width W is an example of a threshold value. S41 is an example of a correction process.

[0035] The present embodiment described above can provide the following effects. The reading engine 15 realizes a tilt detection function for detecting the tilt of an image represented by the read image data by executing the tilt detection program 27. If the reading instruction acquired from the application program 25 does not include any conditions that are unsuitable for the tilt detection program 27 to execute the tilt detection function (S27: YES), the scan program 26 instructs the reading engine 15 to perform reading with the tilt detection function turned on (S29), and if any unsuitable conditions are included (S27: NO), the scan program 26 instructs the reading engine 15 to perform reading with the tilt correction function turned off (S31). In this way, for reading instructions under conditions that make it difficult to detect the tilt angle θ1 of the document 35, turning off the tilt detection function can suppress the occurrence of problems due to the subsequent tilt correction process. Furthermore, the scan program 26 executes a tilt correction process to rotate the image based on the tilt angle θ1 detected by the reading engine 15 (S41). As a result, when the tilt correction flag 29 is on and the detection conditions are appropriate, the scan program 26 causes the tilt detection program 27 to detect the tilt angle θ1, and rotates the read image based on the detected tilt angle θ1, thereby correcting the tilt. Furthermore, the scan program 26 determines whether the read instruction includes any conditions that are not suitable for executing the tilt detection function (S27). This allows the conditions to be determined by the scan program 26 that receives the read instruction. Note that the determination of the conditions may also be performed by the application program 25 that issues the instruction. Furthermore, the scan program 26 determines whether the read instruction contains conditions that are not suitable for executing the tilt detection function based on the magnification parameter (setting value) (S25, S27). This allows the function to be turned off when the magnification exceeds a certain magnification, narrowing the read range and making it impossible to accurately detect the tilt angle θ1. Furthermore, the scan program 26 determines whether the skew detection function is on or off based on the parameter of the size of the recording paper on which the scanned image data is printed (S25, S27). This allows the function to be turned off when the recording paper size is small and the skew angle θ1 cannot be detected accurately. Furthermore, the scan program 26 can improve the accuracy of determining whether the read instruction includes conditions that are not suitable for executing the skew detection function by making a determination based on a combination of parameters including the enlargement rate and the recording paper size. In addition, the scan program 26 determines the width of the reading range in the sub-scanning direction Y based on the magnification rate and the recording paper size (S25), and if it determines that the determined reading width is smaller than the required reading width W suitable for tilt detection (S27: NO), it turns off the tilt detection function to allow the reading engine 15 to perform appropriate processing.

[0036] (Second Example) In the first embodiment described above, the scan program 26 determines the read range in S27. However, the scan program 26 may directly determine parameters of the read instruction, such as the recording paper size and magnification rate. For example, the scan program 26 may execute S27 after S21 without executing S25 of FIG. 4, and in S27, determine whether the recording paper size of the scan start instruction acquired from the application program 25 in S21 is larger than a predetermined threshold size or whether the magnification rate is smaller than a predetermined reference magnification rate (e.g., 400%). If the recording paper size is larger than the predetermined threshold size (S27: YES) or if the magnification rate is smaller than the predetermined reference magnification rate (S27: YES), the scan program 26 may issue a read instruction to the tilt detection program 27 with the tilt detection function turned on (S29), or vice versa, issue an instruction to turn the tilt detection function off (S31). This allows the tilt detection function to be turned on or off based on the parameters. Furthermore, if the determination is made based on a combination of parameters, there is no need to calculate the reading width.

[0037] (Third Example) In the first embodiment, the required reading width W is preset in the scan program 26, but this is not limiting. For example, the scan program 26 may acquire performance information of the skew detection function from the skew detection program 27. The performance information here refers to, for example, information related to the performance of the skew detection function, such as the required reading width W in the sub-scanning direction Y required for skew detection. Alternatively, the performance information may be the required reading width in the main scanning direction X, or information indicating the minimum reading range and threshold angle θth required to execute the skew detection process. Furthermore, the performance information may be processing restriction information (edge ​​detectable conditions) for the process for detecting the skew angle θ1 (such as the process for detecting the edge 43). Such performance information may be changed, for example, if the skew detection algorithm is improved and the skew detection program 27 is updated. 4, the scan program 26 may acquire the changed performance information from the skew detection program 27, and then execute a determination process in S27 to compare the required reading width W indicated by the performance information with the reading width determined in S25. Also, the scan program 26 does not need to acquire the performance information from the skew detection program 27 before executing S27. For example, the skew detection program 27 may acquire the performance information from the skew detection program 27 each time a change is made, such as when the skew detection program 27 is updated.

[0038] Therefore, the scan program 26 may acquire performance information of the skew detection function from the skew detection program 27 and determine whether the externally acquired scan instruction contains any conditions that do not conform to the acquired performance information. This allows for a determination using the latest required scan width W in response to updates to the skew detection program 27. Note that the method for acquiring performance information (such as the required scan width W) is not limited to the above. For example, the required scan width W may be preset in a non-volatile area of ​​the memory 12 that stores setting values. In this case, the skew detection program 27 may update the required scan width W stored in the memory with each update. The required scan width W stored in the memory 12 may also be changed in response to a user input. That is, a change in the performance information used to determine whether the skew detection function is on or off may be received from the user. This allows the scan program 26 to make a determination using the latest or optimal performance information stored in the memory 12.

[0039] The technology of the present application is not limited to the contents of the above-described embodiments, and can be modified in various forms without departing from the spirit of the invention. For example, the following modifications are also possible. The content and order of each step in the flowcharts of Figures 3 to 5 are merely examples. For example, in Figure 4, S28 may be executed before S27. In the above embodiment, a multifunction peripheral having a copy function, a scan function, a fax function, etc. is used as the image reading device of the present application, but the image reading device of the present application is not limited to this and may be a copy machine, a scanner, or a fax machine. In the above embodiment, the rotation ASIC, which is part of the ASIC 15B, executes the rotation process of the scanned image data, but this is not limiting. For example, the rotation process may be executed by the CPU 11 executing software such as the scan program 26 or a program for the rotation process. Furthermore, the MFP 10 may have an ADF, and may read an image with the reading sensor 15A while automatically transporting a document with the ADF. The MFP 10 does not need to include the network IF 19 or the USB IF 18 . The application program 25 and the scan program 26 may be executed by an ASIC, and the tilt detection program 27 may be executed by a CPU. The application program 25, the scan program 26, and the tilt detection program 27 may be integrated into one program. [Explanation of symbols]

[0040] 10 MFP (image reader), 11 CPU (controller), 12 memory, 15 Reading engine, 15A reading sensor, 26 scanning program (controller), 27 tilt detection program (reading engine), 35 original, W required reading width (threshold).

Claims

1. A controller; A reading engine, Equipped with The reading engine comprises: It has a tilt detection function that detects the tilt of the image shown in the image data read by the reading sensor from the document, The controller a first instruction process for instructing the reading engine to read the document with the skew detection function turned on when the reading instruction obtained from the outside does not include a condition that is not suitable for causing the reading engine to execute the skew detection function; a second instruction process for instructing the reading engine to read the document with the skew detection function turned off when the reading instruction obtained from the outside includes a condition that is not suitable for causing the reading engine to execute the skew detection function; and is executable, a memory for storing performance information of the tilt detection function of the reading engine; The controller An image reading device that acquires the performance information from the memory, and if the reading instruction acquired from outside does not contain any conditions that do not conform to the acquired performance information, executes the first instruction processing, and if the reading instruction contains any conditions that do not conform to the acquired performance information, executes the second instruction processing.

2. A controller; A reading engine, Equipped with The reading engine comprises: It has a tilt detection function that detects the tilt of the image shown in the image data read by the reading sensor from the document, The controller a first instruction process for instructing the reading engine to read the document with the skew detection function turned on when the reading instruction obtained from the outside does not include a condition that is not suitable for causing the reading engine to execute the skew detection function; a second instruction process for instructing the reading engine to read the document with the skew detection function turned off when the reading instruction obtained from the outside includes a condition that is not suitable for causing the reading engine to execute the skew detection function; and is executable, An image reading device that acquires performance information of the tilt detection function of the reading engine from the reading engine, and if the reading instruction acquired from outside does not include a condition that does not match the acquired performance information, executes the first instruction processing, and if the reading instruction includes a condition that does not match the acquired performance information, executes the second instruction processing.

3. A controller; A reading engine, Equipped with The reading engine comprises: It has a tilt detection function that detects the tilt of the image shown in the image data read by the reading sensor from the document, The controller a first instruction process for instructing the reading engine to read the document with the skew detection function turned on when the reading instruction obtained from the outside does not include a condition that is not suitable for causing the reading engine to execute the skew detection function; a second instruction process for instructing the reading engine to read the document with the skew detection function turned off when the reading instruction obtained from the outside includes a condition that is not suitable for causing the reading engine to execute the skew detection function; and a determination process for determining whether the reading instruction obtained from the outside includes a condition that is not suitable for causing the reading engine to execute the tilt detection function; is executable, When the determination process determines that the conditions that are not suitable for causing the reading engine to execute the tilt detection function are not included, the first instruction process is executed; when the determination process determines that the conditions that are not suitable for causing the reading engine to execute the tilt detection function are included, the second instruction process is executed; In the judgment process, an image reading device determines whether the reading instruction contains conditions that are not suitable for executing the tilt detection function based on parameters of the sheet size of the sheet on which the read image data is printed, which are included in the reading instruction obtained from outside.

4. A controller; A reading engine, Equipped with The reading engine comprises: It has a tilt detection function that detects the tilt of the image shown in the image data read by the reading sensor from the document, The controller a first instruction process for instructing the reading engine to read the document with the skew detection function turned on when the reading instruction obtained from the outside does not include a condition that is not suitable for causing the reading engine to execute the skew detection function; a second instruction process for instructing the reading engine to read the document with the skew detection function turned off when the reading instruction obtained from the outside includes a condition that is not suitable for causing the reading engine to execute the skew detection function; and a determination process for determining whether the reading instruction obtained from the outside includes a condition that is not suitable for causing the reading engine to execute the tilt detection function; is executable, When the determination process determines that the conditions that are not suitable for causing the reading engine to execute the tilt detection function are not included, the first instruction process is executed; when the determination process determines that the conditions that are not suitable for causing the reading engine to execute the tilt detection function are included, the second instruction process is executed; In the judgment process, the image reading device determines whether the combination of the magnification parameter included in the reading instruction obtained from outside and the sheet size parameter of the sheet on which the read image data is to be printed is an inappropriate condition for executing the tilt detection function.

5. A controller; A reading engine, Equipped with The reading engine comprises: It has a tilt detection function that detects the tilt of the image shown in the image data read by the reading sensor from the document, The controller a first instruction process for instructing the reading engine to read the document with the skew detection function turned on when the reading instruction obtained from the outside does not include a condition that is not suitable for causing the reading engine to execute the skew detection function; a second instruction process for instructing the reading engine to read the document with the skew detection function turned off when the reading instruction obtained from the outside includes a condition that is not suitable for causing the reading engine to execute the skew detection function; and a determination process for determining whether the reading instruction obtained from the outside includes a condition that is not suitable for causing the reading engine to execute the tilt detection function; is executable, When the determination process determines that the conditions that are not suitable for causing the reading engine to execute the tilt detection function are not included, the first instruction process is executed; when the determination process determines that the conditions that are not suitable for causing the reading engine to execute the tilt detection function are included, the second instruction process is executed; An image reading device that receives size information indicating a reading range as information contained in the reading instruction obtained from outside, and in the judgment process, determines whether the size indicated by the received size information is equal to or smaller than a predetermined threshold, and if it determines that the size is equal to or smaller than the predetermined threshold, determines that the information contains conditions that are not suitable for causing the reading engine to execute the tilt detection function.

6. The controller 6. The image reading device according to claim 5, wherein the size information includes a parameter for a magnification ratio and a parameter for a sheet size of a sheet on which the scanned image data is to be printed, the reading range is determined based on the parameter for the magnification ratio and the parameter for the sheet size, and if the determination process determines that the determined reading range is smaller than a size suitable for skew detection, the image reading device determines that the determined reading range includes conditions that are not suitable for causing the reading engine to execute the skew detection function.

7. The controller 7. The image reading device according to claim 6, wherein the width of the reading range in the sub-scanning direction is determined based on the magnification parameter and the sheet size parameter, and if the determination process determines that the determined width of the reading range in the sub-scanning direction is smaller than the width in the sub-scanning direction suitable for skew detection, it determines that the conditions are unsuitable for causing the reading engine to execute the skew detection function.

8. The controller 8. The image reading device according to claim 1, further comprising: a tilt correction process for rotating the image represented by the image data based on a tilt correction angle detected by the reading engine after executing the first instruction process.

9. The controller 6. The image reading device according to claim 3, wherein the determination process determines whether the reading instruction includes a condition that is not suitable for executing the tilt detection function, based on a magnification parameter included in the reading instruction obtained from an external device.

10. A controller; A reading engine, Equipped with The reading engine comprises: It has a tilt detection function that detects the tilt of the image shown in the image data read by the reading sensor from the document, The controller a first instruction process for instructing the reading engine to read the document with the skew detection function turned on when the reading instruction obtained from the outside does not include a parameter that is not suitable for causing the reading engine to execute the skew detection function; a second instruction process for instructing the reading engine to read the document with the skew detection function turned off when the reading instruction received from the outside includes a parameter that is not suitable for causing the reading engine to execute the skew detection function; a determination process for determining whether a combination of a parameter of an enlargement ratio and a parameter of a sheet size of a sheet on which the read image data is to be printed, which are included in the read instruction obtained from an external device, is an inappropriate condition for executing the skew detection function; is executable, an image reading device that executes the first instruction process when it determines through the judgment process that the combination of the enlargement ratio parameter and the sheet size parameter of the sheet on which the read image data is printed is not an unsuitable condition for executing the skew detection function, and executes the second instruction process when it determines through the judgment process that the combination of the enlargement ratio parameter and the sheet size parameter of the sheet on which the read image data is printed is an unsuitable condition for executing the skew detection function.

11. A controller; A reading engine, Equipped with The reading engine comprises: It has a tilt detection function that detects the tilt of the image shown in the image data read by the reading sensor from the document, The controller a first instruction process for instructing the reading engine to read the document with the skew detection function turned on when the reading instruction obtained from the outside does not include a parameter that is not suitable for causing the reading engine to execute the skew detection function; a second instruction process for instructing the reading engine to read the document with the skew detection function turned off when the reading instruction received from the outside includes a parameter that is not suitable for causing the reading engine to execute the skew detection function; a determination process of receiving a parameter of an enlargement ratio and a parameter of a sheet size of a sheet on which the read image data is to be printed as information included in the read instruction obtained from an external device, determining a read range based on the parameter of the enlargement ratio and the parameter of the sheet size, and determining whether the determined read range is smaller than a size suitable for skew detection; is executable, If the judgment process determines that the determined reading range is not smaller than a size suitable for tilt detection, the image reading device executes the first instruction process, and if the judgment process determines that the determined reading range is smaller than a size suitable for tilt detection, the image reading device executes the second instruction process.

Citation Information

Patent Citations

  • Digital copying machine

    JP1996251387A

  • Tilt correction device, reading device, image forming apparatus, and tilt correction method

    JP2020096260A

  • Sheet feeding device

    JP2020147409A

  • Image reading apparatus

    JP2021190946A