Program, information processing method, and information processing device that support general-purpose scanning software.

An extension application for scanning software adds document frame erasure capabilities to standard scan drivers, addressing the lack of proprietary functions in Windows standard drivers and improving image quality by removing shadows and holes across different scan devices.

JP2026054036APending Publication Date: 2026-03-26CANON KK
View PDF 1 Cites 0 Cited by

Patent Information

Authority / Receiving Office
JP · JP
Patent Type
Applications
Current Assignee / Owner
Filing Date
2024-09-13
Publication Date
2026-03-26

AI Technical Summary

Technical Problem

The standard scan driver in Windows does not support proprietary functions of scanner vendors, such as document frame removal, preventing users from removing shadows and punch holes from scanned images.

Method used

An extension application that enhances general-purpose scanning software by allowing users to set document frame erasure functions, adding capabilities like document frame removal, book frame removal, and punch hole removal, even when using different scan devices from various manufacturers.

Benefits of technology

Enables users to utilize document frame erasure functions across multiple manufacturers' scanning devices, enhancing the functionality of standard scan drivers and improving image quality by removing unwanted shadows and holes.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 2026054036000001_ABST
    Figure 2026054036000001_ABST
Patent Text Reader

Abstract

Users who utilize the standard scan driver are limited to the functions available only with the standard driver and cannot specify the scanner vendor's proprietary document frame erasure function. [Solution] A program that supports the functions of general-purpose scanning software that can be used in common with image processing devices provided by multiple manufacturers, characterized in that it causes a computer to display a display screen that accepts settings for erasing the document frame of the image to be read by the image processing device, and outputs a reading instruction to the image processing device to perform scanning according to the settings accepted on the display screen.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to a program, an information processing method, and an information processing apparatus that support general-purpose scanning software.

Background Art

[0002] There is known a configuration in which a scan driver installed in a host computer is used as software for controlling a scan device, and a read instruction is given to the scan device connected to the host computer. An operating system (OS), which is basic software, is installed in the host computer. The scan driver is configured according to the specifications defined by the OS and is called by the OS to operate. A vendor (manufacturer) that provides a scan device can provide a means for instructing the scan device to read using the OS by providing a scan driver that conforms to the specifications of the OS.

[0003] In recent years, in Windows (registered trademark), a standard class driver (hereinafter also referred to as a "standard driver") that can be commonly used in scan devices provided by a plurality of vendors has been attempted to be provided. Such a standard driver is included in the OS package and can be easily used by connecting an arbitrary scan device to the host computer. Therefore, there is no need to separately install a model-specific scan driver suitable for the scan device, and the convenience is high. Also, it is assumed that the standard driver is configured to be able to specify the scan function according to the scan function information generated based on the information obtained from the connected scan device. Thus, a user who uses the standard driver can specify a scan function according to the capabilities of the connected scan device even though using only one standard driver. However, since this is only a function that can be realized by the standard driver alone, a function unique to the vendor (manufacturer) of the scan device cannot be specified. Therefore, Patent Document 1 discloses a program for extending the printing function of general-purpose software (see Patent Document 1). [Prior art documents] [Patent Documents]

[0004] [Patent Document 1] Japanese Patent Publication No. 2021-033526 [Overview of the project] [Problems that the invention aims to solve]

[0005] One of the features of the scanner vendor's proprietary scan driver is the document frame removal function. This function removes shadows from scanned images. For example, it can remove the border lines that appear when copying a document smaller than the paper size, or the shadows that appear when scanning a thick book. It can also remove punch holes from a document. However, when using the standard driver, the document frame erasure function is not available, and users cannot remove shadows from images. In view of the above issues, the present invention aims to provide a mechanism that extends the functionality of general-purpose scanning software that can be used in common with scanning devices provided by multiple manufacturers, and enables the use of a document frame erasure function. [Means for solving the problem]

[0006] To solve the above problems, an information processing device according to one aspect of the present invention has the following configuration. The present invention is a program that supports the functions of general-purpose scanning software that can be used in common with image processing devices provided by multiple manufacturers, characterized in that it causes a computer to display a display screen that accepts settings for erasing the document frame of an image to be read by the image processing device, and causes the computer to output a reading instruction that causes the image processing device to perform a scan according to the settings accepted on the display screen. [Effects of the Invention]

[0007] According to the present invention, a program that extends the functionality of general-purpose scanning software that can be used in common with scanning devices provided by multiple manufacturers makes the document frame erasing function available to users. [Brief explanation of the drawing]

[0008] [Figure 1] Hardware configuration diagram of the scanning system in this embodiment [Figure 2] Software configuration diagram of the scanning system in this embodiment [Figure 3] Scan settings screen and detailed settings screen of Embodiment 1 [Figure 4] Editing process of scan function information by the extended application of Embodiment 1 [Figure 5] List of Scan Functions for Each Device in Embodiment 1 [Figure 6] Sequence diagram illustrating the scan operation of Embodiment 1 [Figure 7] Scanning process in the extended application of Embodiment 1 [Figure 8] Scanning process in the scanning device of Embodiment 1 [Figure 9] Additional processing for the document frame erasure function in the extended application of Embodiment 2 [Figure 10] Sequence diagram illustrating the scan operation of Embodiment 2 [Figure 11] Scanning process in the extended application of Embodiment 2 [Figure 12] Sequence diagram illustrating the scan operation of Embodiment 3 [Figure 13] Sequence diagram illustrating the scan operation of Embodiment 3 [Figure 14] Sequence diagram illustrating the scan operation of Embodiment 4 [Figure 15] Scanning process in the extended application of Embodiment 4 [Figure 16] Diagram of the capability information table and the display unit for the extended application in Embodiment 5. [Figure 17]Sequence diagram of the operation of the scan process in Embodiment 5 [Figure 18] Scan process in the extended application of Embodiment 5 [Figure 19] Scan process in the extended application of Embodiment 5 [Figure 20] Diagram of the display part of the extended application of Embodiment 5 [Figure 21] Sequence diagram of the operation of the scan process in Embodiment 5 [Figure 22] Scan process in the extended application of Embodiment 5 [Figure 23] Sequence diagram explaining the scan operation in Embodiment 5 [Figure 24] Scan process in the extended application of Embodiment 5 [Figure 25] Example of removing the manuscript frame [Mode for Carrying Out the Invention]

[0009] Hereinafter, embodiments of the present invention will be described in detail with reference to the accompanying drawings. Note that the following embodiments do not limit the present invention according to the claims, and not all combinations of the features described in the present embodiment are essential for the solution means of the present invention. [Embodiment 1]

[0010] Scanning system hardware configuration FIG. 1 is a block diagram showing the hardware configuration of a scan system. (Host computer) In Figure 1, the host computer 101 is an example of an information processing device and has an input interface 110, a CPU 111, a ROM 112, a RAM 113, an external storage device 114, an output interface 115, and an input / output interface 116. Input devices such as a keyboard 118 and a pointing device 117 are connected to the input interface 110, and display devices such as a display unit 119 are connected to the output interface 115. NETIF 120 is a network interface that controls data transfer to and from external devices via the network.

[0011] ROM112 stores the initialization program. The external storage device 114 is, for example, an HDD (Hard Disk Drive) or an SSD (Solid State Drive). The external storage device 114 stores application programs, the operating system (OS), and various other types of data. RAM 113 is used as work memory for executing various programs stored in the external storage device 114, enabling these programs to run within the host computer 101. In this embodiment, the CPU 111 codes the program stored in the ROM 112. By processing according to the instructions, the following functions in the host computer 101 and The process related to the flowchart described later will be executed.

[0012] (Scanning device) The scanning device 102 is an example of an image processing device, and is connected to the host computer 101 via the input / output interface 198 of the scanning device 102 and the input / output interface 116 of the host computer 101. The connection between the input / output interface 198 of the scanning device 102 and the input / output interface 116 of the host computer 101 may be a wired network or a wireless network. The scanning device 102 includes a CPU 191, ROM 192, RAM 193, operation unit 194, reading unit 195, printing unit 196, NETIF 197, and input / output interface 198.

[0013] The CPU 191 provides overall control over the scanning device 102. ROM192 is the memory that stores the program. RAM193 ​​is memory used to temporarily store programs and image data. The reading unit 195 is a scanner that reads the image of the document. The printing unit 196 prints an image onto a sheet based on the image data. Note that the printing unit 196 is not mandatory. NETIF197 is a network interface that controls data transfer between external devices over a network. The image processing unit 190 performs various image editing processes on the input image data.

[0014] In this embodiment, the host computer 101 and the scanning device 102 are configured separately, but they may also be configured as a single information processing device. Furthermore, the reading settings screen and detailed settings screen described later are displayed on the display unit 119. In this embodiment, an electrophotographic digital multifunction device with multiple functions such as copying, printing, and faxing is used as an example of the scanning device. However, this embodiment is not limited to this; it can also be applied to devices using other processes, such as inkjet technology, or scanners that only read images. Also, the host computer 101 may be a desktop computer, a smartphone, or a laptop computer.

[0015] Scanning system software configuration Figure 2 schematically shows the software configuration of the scanning system. The software configuration in Figure 2 is stored in the external storage device 114 shown in Figure 1. Here, we will explain the scanning system assuming a host computer 101 equipped with Microsoft's Windows® 11 as the operating system. Figure 2(a) shows a typical configuration when the extended application 204 is not associated with the general-purpose scanning software 202 and the scanning device 102. Figure 2(b) shows the configuration when the extended application 204 is associated with the general-purpose scanning software 202 and the scanning device 102.

[0016] Scanning system software configuration (without association of extended applications) First, using Figure 2(a), we will describe the configuration of the scanning system when the extended application 204 is not associated. The scan application 201 is software that captures scanned content (image data). For example, this could be a document creation application or an image editing application. When the scan application 201 receives a scan request from the user, it issues a scan command to the OS. The scan command includes scan setting information to instruct the operation of the general-purpose scan software 202 and the scan device 102.

[0017] The scan application 201 can display a scan settings screen provided by either the general-purpose scan software 202, the OS, or the scan application 201 itself in order to execute a scan command. Furthermore, if the "Advanced Settings" button is pressed within the scan settings screen, the general-purpose scan software 202 will display an additional advanced settings screen. The scan settings screen and advanced settings screen will be described later using Figure 3. The advanced settings screen includes setting items (hereinafter also referred to as "control items") that indicate the configurable scan functions according to the capability information (configurable information) of the general-purpose scan software 202, and control items that indicate their setting values. The general-purpose scanning software 202 determines the scanning capability based on the scanning function information 203. Scan function information 203 is data indicating the scan function, which includes all configurable scan functions, their settings, and the mutual exclusion relationships between the settings. Scan function information 203 is included in the configuration file of the general-purpose scan software 202 and is placed on the external storage device 114 as an immutable file. Alternatively, scan function information 203 can be dynamically generated by the general-purpose scan software 202. Specifically, the general-purpose scan software 202 or OS can be configured to acquire attribute data of the scan device from the scan device 102 and generate scan function information 203 according to the attribute information in the acquired attribute data. If the scan function information 203 is generated dynamically, the generated scan function information 203 is editable. The attribute data of the scan device acquired from the scan device 102 includes attribute information indicating the functions (capabilities of the scan device) that can be specified by the scan device 102, and setting values ​​related to that attribute information. This information is stored in RAM 113.

[0018] With this configuration, the general-purpose scan software 202 can be configured so that the user can specify the scan functions available on each connected scan device 102, depending on the connected scan device 102. In other words, even when scan devices with different functions or scan devices developed by different vendors are connected, the general-purpose scan software 202 can be configured so that the user can specify the scan functions available on each connected scan device. Furthermore, the general-purpose scan software 202 can generate scan instructions that can be interpreted by multiple scan devices from different vendors and output these scan instructions to each of the multiple scan devices from different vendors. Note that the vendor may be the manufacturer of the scan device 102. Note that the vendor may be the manufacturer of the scan device 102. Here, the general-purpose scan software 202 is a standard class driver that performs scans based on a standard scan protocol called Mopria. The general-purpose scan software 202 acquires capability information of the connected scan device 102 so that the user can specify the scan functions supported by the connected scan device 102, and generates scan function information 203 based on that information. However, the general-purpose scanning software 202 does not support the document frame erasure function. This is because the document frame erasure function is a proprietary feature of the scanning device vendor (scanning manufacturer).

[0019] • Document frame erasure function The document frame removal function removes shadows from scanned images. Examples include "Document Frame Removal," "Book Frame Removal," and "Punch Hole Removal." "Document frame removal" is a function that removes the border lines on all four sides of a document that appear when scanning a document that is smaller than the paper size. "Book frame removal" is a function that removes the frame lines on all four sides of the document and the shadow in the center of the spread that appear when scanning a thick book. The "Punch Hole Eraser" function removes the shadows left by punched holes when scanning punched paper. By using this function to scan a document, users can obtain image data with unwanted shadows removed. In this embodiment, the settings for "removing the document frame," "removing the book frame," and "removing punch holes" are described, but this is merely an example. Therefore, the method for setting the position for removing the shadow of the document is not limited to the description in this embodiment.

[0020] Scanning system software configuration (with associated extension applications) Next, Figure 2(b) will be used to describe the configuration of the scanning system when the extended application 204 is associated. Note that configurations and processes not specifically mentioned below will be the same as those in Figure 2(a).

[0021] The extension application 204 is software that extends or supports the functionality of the general-purpose scanning software 202, and is also called a support application. The extension application 204 is software that is not pre-installed (not bundled) with the OS. Therefore, the user needs to operate the host computer 101 to download and install the extension application 204 from a server via the internet. Alternatively, it may be automatically installed based on the connection of the scanning device 102 to the host computer 101. Specifically, when the scanning device 102 is connected to the host computer 101, the OS obtains device identification information from the scanning device 102. The OS may download and install the extension application 204 corresponding to the obtained device identification information from a server via the internet. In other words, the general-purpose scanning software 202 and the extension application 204 are kept as separate files on the host computer 101.

[0022] The general-purpose scan software 202 and the extended application 204 may be updated and upgraded, but these update processes are performed at different times. In other words, the timing at which the host computer 101 acquires the general-purpose scan software 202 and the timing at which the extended application 204 is acquired are different. Also, the triggers for the host computer 101 to acquire the general-purpose scan software 202 and the triggers for the host computer 101 to acquire the extended application 204 are different. When the extended application 204 is installed, the OS associates the extended application 204 with the general-purpose scan software 202 and the scan device 102.

[0023] The extended application 204 described in this embodiment includes a scan setting screen extension unit 205, a scan function extension unit 206, an image data editing unit 207, and a notification unit 209. The extended application 204 also includes shared information 208 that can be accessed from all units. The shared information 208 is actually a file stored in the external storage device 114 or information stored on the RAM 113. The extended application 204 writes to and reads information from the shared information 208 by using the API (Application Program Interface) provided by the OS. The extended application 204 may terminate its operation after each unit has finished processing. In that case, the OS will start the extended application 204 each time a request to use each unit is received.

[0024] Furthermore, the extended application 204 may cancel processing after each unit has finished processing. If canceled, the OS will delete the job that was in progress. When the scan application 201 receives a scan request from the user, it issues a scan command to the OS. In this configuration, as in the configuration shown in Figure 2(a), the scan application 201 can display the scan settings screen. In this configuration, the detailed settings screen provided by the extension application 204 is displayed. Specifically, the detailed settings screen provided by the scan settings screen extension unit 205 of the extension application 204 is displayed. Furthermore, the scan settings screen extension unit 205 can save the detailed settings configured by the user to the shared information 208.

[0025] The extended application 204 includes an image data editing unit 207. The image data editing unit 207 acquires image data from the scanning device 102 and performs editing. The scan data editing unit 207 acquires detailed setting information from the shared information 208 and performs image editing on the image data according to the detailed settings. The extended application 204 may also be configured to acquire image data acquired by the general-purpose scanning software 202 and perform image editing on the image data according to the detailed settings. Furthermore, even in the configuration of Figure 2(b), there may be cases where the user does not erase the document frame. In that case, as in the configuration of Figure 2(a), the general-purpose scanning software 202 may issue a scan request instruction to the scanning device 102 without going through the extended application 204.

[0026] The extended application 204 includes a scan function extension unit 206. The scan function extension unit 206 can edit scan function information 203 generated by the general-purpose scan software 202 or the OS. This allows the scan function extension unit 206 to add functions provided by the extended application 204. In addition, the scan function extension unit 206 can add functions that are supported by the scan device 102 but not by the general-purpose scan software 202 (such as the document frame erasure function), add mutual exclusion relationships between scan function settings, etc. The OS starts the scan function extension unit 206 when the extended application 204 is first associated with the scan device 102 and the general-purpose scan software 202. Furthermore, the OS may start the scan function extension unit 206 at other times, such as when the OS starts up.

[0027] Furthermore, the extended application 204 has a notification unit 209. The notification unit 209 can display a notification to the user in response to an error occurring in the scanning device 102. For example, if a read jam error occurs in the scanning device 102, the general-purpose scanning software 202 detects it, and the OS uses a notification function called a toast notification, which is a function of the OS, to display a message on the display unit 119. When the user presses this toast notification, the OS calls the notification unit 209 of the extended application 204, and the UI screen of the notification unit 209 is displayed. The UI screen of the notification unit 209 can display, for example, a detailed message about the scan jam error and instructions on how to clear the jam.

[0028] Furthermore, the configuration of the extended application 204 for realizing this embodiment is not limited to having all of the aforementioned functions (units), but may have only some of the functions or other functions. Also, the extended application 204 is sometimes simply called scan software. As described above, it can be said that the extended application 204 has at least one of the following functions. The first is a function to display the settings screen (scan settings screen extension unit 205). The second feature is a function (image data editing unit 207) that edits image data according to detailed settings. The third feature is a function that extends the capabilities of the image data generation software (scan function extension unit 206). The fourth feature is a function (notification unit 209) that displays a screen in response to an error occurring in the scanning device 102.

[0029] <Scan Settings Screen / Advanced Settings Screen> Next, an example of the scan settings screen and the detailed settings screen in this embodiment will be explained using Figure 3. Figure 3(a) shows the scan settings screen displayed by the scan application 201. Figure 3(b) shows the detailed settings screen displayed when the extended application 204 shown in Figure 2(a) is not present. Figure 3(c) shows the detailed settings screen displayed when the extended application 204 shown in Figure 2(b) is present. Note that the units and modules that display the scan settings screen are not limited to those described above. For example, the scan settings screen extension unit 205 may be configured solely to generate the display screen. In that case, the scan settings screen extension unit 205 sends the generated display screen to the scan application 201 via the general-purpose scan software 202. The scan application 201 may be configured to display the display screen acquired via the general-purpose scan software 202.

[0030] <Scan settings screen (scan application)> First, let's explain Figure 3(a). Control 301 has objects that allow the user to set the scanner (the scanner used for reading) to which the image data will be scanned. Control 302 is an advanced settings button. When Control 302 is pressed, an additional scan screen is displayed by the general-purpose scan software 202 or the scan settings screen expansion unit 205. Control 303 is the scan start button, and control 304 is the scan cancel button.

[0031] <Advanced Settings Screen (General-Purpose Scan Software)> Next, Figure 3(b) will be explained. Figure 3(b) is an additional settings screen displayed by the general-purpose scanning software 202 when the extended application 204 is not available. Control 305 indicates that the scanning destination can be set and that the document glass is selected. Control 306 is the settings completion button, and when Control 306 is pressed, the system returns to the scan settings screen in Figure 3(a).

[0032] <Detailed settings screen (Scan settings screen for each agency unit)> Next, Figures 3(c), 3(d), and 3(e) will be explained. Figures 3(c), 3(d), and 3(e) are additional settings screens displayed by the scan settings screen extension unit 205 when the extension application 204 is installed. Unlike Figure 3(b), a control 307 is added. The control 307 is a button that allows you to select the type of document frame erasure setting. Setting it to "Document Frame Eraser" will result in the screen shown in Figure 3(c), setting it to "Book Frame Eraser" will result in the screen shown in Figure 3(d), and setting it to "Punch Hole Eraser" will result in the screen shown in Figure 3(e). Figure 3(c) shows the settings screen for the function that removes shadows from all four sides of the document, and the amount of shadow removal can be set using control 308. Figure 3(d) shows the settings screen for the function that removes shadows from all four sides of the document and the spread portion. Control 310 allows you to set the shadow removal width for the center of the spread portion, and Control 311 allows you to set the shadow removal width for all four sides. Figure 3(e) shows the settings screen for the function that allows you to select one side from four sides to remove the shadow. Control 312 allows you to set the position of the side to be removed, and control 313 allows you to set the width of the removal.

[0033] Furthermore, since "document frame removal" and "book frame removal" are functions that are only necessary when scanning from the document glass due to their characteristics, it is desirable that the configuration be such that only "punch hole removal" is selectable when the feeder is set in Control 305. Here, we will explain why the scan settings differ between Figure 3(b) and Figures 3(c),(d), and(e). The detailed settings screen is generated by referring to the scan capabilities generated based on the scan function information. However, the general-purpose scan software 202 does not support the document frame erasure function, so it cannot add the document frame erasure function to the scan function information. Furthermore, even if the document frame erasure function was originally included in the scan function information, the general-purpose scan software 202 cannot interpret the document frame erasure function included in the scan function information, and therefore cannot display the document frame erasure setting on the detailed settings screen. However, the scan function expansion unit 206 is configured to add the document frame erasure function to the scan function information 203, and the scan settings screen expansion unit 205 is configured to display the detailed settings screen by referring to the scan capabilities. With these configurations, the expansion application 204 can display the document frame erasure setting on the detailed settings screen. Note that Figures 3(c),(d), and(e) may also include additional expansion functions other than the document frame erasure function.

[0034] [Editing process for scan function information: Scan function expansion unit] Here, using Figure 4, we will explain the processing flow in which the scan function expansion unit 206 edits the scan function information 203. Each step is realized by the execution of each unit that has been read from the external storage device 114 to the RAM 113 by the CPU 111.

[0035] In S401, the scan function expansion unit 206 acquires capability information from the scan device 102. The capability information consists of attribute information indicating the functions that can be specified on the scan device 102 and the setting values ​​associated with that attribute information. Table 501 in Figure 5 shows an example of a list of capability information obtained from the scanning device 102. As shown in Table 501, the scanning device 102 can provide information on functions such as specifying the reading size, as well as options that can be set for each function.

[0036] In S402, the scan function expansion unit 206 retrieves a list of scan functions supported by the expansion application 204 from the shared information 208. The list of scan functions supported by the expansion application 204 is stored in the shared information 208 and contains all scan functions that the expansion application 204 can process and their settings. An example of the list of scan functions supported by the expansion application 204 is shown in Table 502 of Figure 5. The list of scan functions supported by the expansion application 204 may be updated due to updates to the expansion application 204, etc.

[0037] In S403, the scan function expansion unit 206 obtains scan function information 203 created by the general-purpose scan software 202 from the OS. Table 503 in Figure 5 shows an example of a list of scan functions supported by the general-purpose scan software 202. The scan function information 203 created by the general-purpose scan software 202 is created based on the capability information (Table 501 in Figure 5) obtained by the general-purpose scan software 202 from the scan device 102. The scan function information created by the general-purpose scan software 202 only includes scan functions that the general-purpose scan software 202 supports from the capability information obtained from the scan device 102, so the functionality of the scan function information is limited. For example, the capability information obtained from the scan device 102 (Table 501 in Figure 5) includes a document frame erasure function, but the general-purpose scan software 202 does not support the document frame erasure function, and therefore the document frame erasure function is not included in the scan function information. By adding functions and options to the scan function information, the scan function expansion unit 206 enables the expansion application 204 to compensate for the lack of functionality of the general-purpose scan software 202. Furthermore, the scan function expansion unit 206 can also remove unnecessary functions and options from the scan function information created by the general-purpose scan software 202.

[0038] The following steps S404, S405, and S406 are processes that are repeatedly performed on the list of functions contained in the capability information obtained from the scanning device in S401. In this embodiment, these processes are repeatedly performed on the 12 types included in Table 501, from reading size: A4H to document frame erasure: punch hole erasure. In S404, the scan function expansion unit 206 determines whether the function / option being processed exists in the scan function information generated by the general-purpose scan software 202. If the function / option being processed exists in the scan function information 203 (Yes in S404), the process returns to the beginning of the loop. Specifically, the unit selects the next item from the functions / options of the scan function acquired from the scan device 102 and performs S404 again. If the unit is processing the last item from the functions / options of the capability information acquired from the scan device 102, it exits the loop and terminates the flowchart in Figure 4. If the function / option being processed does not exist in the scan function information 203 (No in S404), the process proceeds to S405. In this embodiment, for example, the scan function of the scan device 102, "Scanning destination: Document glass," shown in Table 501, also exists in Table 503, which is the scan function of the general-purpose scan software 202, so it is determined to be Yes in S404. On the other hand, “Reading size: A4H” shown in Table 501 is not present in Table 503, so it is determined to be No, and the process proceeds to S405.

[0039] Next, in S405, the scan function expansion unit 206 determines whether the function / option being processed exists among the functions / options supported by the expansion application 204. If it is determined that the function / option being processed exists among the supported functions / options (Yes in S405), the CPU 111 proceeds to S406. If it is determined that the function / option being processed does not exist (No in S405), the process returns to S404, as in the case where Yes was determined in S404, or the main process shown in Figure 4 is terminated. In this embodiment, for example, if the function being processed is "Document frame erase: Document frame erase," it also exists in Table 502, which is the capability information of the expansion application 204, so it is determined to be Yes in S405, and the CPU 111 proceeds to S406. In S406, the scan function expansion unit 206 adds the function / option being processed to the scan function information 203. After processing in S406, either S404 is repeated, as in the case where Yes was determined in S404, or the main process shown in Figure 4 is terminated.

[0040] As described above, the scan function expansion unit 206 adds functions and options that are not supported by the general-purpose scan software 202 but are supported by the scan device 102 and the expansion application 204 to the scan function information 203. Based on the scan function information edited by this process, the scan capabilities are generated. Furthermore, the scan setting screen expansion unit 205 generates a display screen based on the generated scan capabilities, thereby extending the functions not supported by the general-purpose scan software 202 and enabling the display of the detailed settings screen shown in Figure 3(c).

[0041] Scanning process sequence Next, using Figure 6, the sequence of the scan application 201, general-purpose scan software 202, extended application 204, and scan device 102 after the scan application 201 accepts the scan settings will be explained. Note that each step in Figure 6, except for the scan device 102, is performed by the CPU 111 reading the scan application 201, general-purpose scan software 202, and extended application 204 from the external storage device 114 into the RAM 113 and executing them. Each step of the scan device 102 in Figure 6 is realized by the CPU 191 of the scan device 102 reading the program stored in the ROM 192 or external storage device 199 into the RAM 193 and executing it.

[0042] In S601, the scan application 201 accepts scan settings from the user. The user can instruct the scan application 201 to configure scan settings by operating the pointing device 117 or the keyboard 118. In S602, the scan application 201 displays the scan settings screen shown in Figure 3(a) on the display unit 119. In S603, the scan application 201 accepts detailed setting instructions. The user can specify detailed settings by operating the pointing device 117 or keyboard 118 to select control 302.

[0043] In S604, the scan application 201 requests the general-purpose scan software 202 to display detailed settings. In S605, the general-purpose scan software 202 requests the extended application 204 to display the detailed settings. As mentioned above, in the configuration shown in Figure 2(b), the general-purpose scan software 202 will display the detailed settings screen shown in Figure 3(c). In S606, the scan settings screen extension unit 205 of the extended application 204 displays the detailed settings screen shown in Figure 3(c) on the display unit 119. This is because, as explained in Figure 4, the document frame erasure setting has been added to the scan function information by the scan function extension unit 206. The scan settings screen extension unit 205 displays the detailed settings screen shown in Figure 3(c) on the display unit 119 by referring to the scan capabilities generated based on the added scan function information. In this embodiment, the extended application 204 supports only one resolution, 300 x 300 dpi, so there is no need for the user to select it, and it is not displayed on the detailed settings screen. Even if it is not selectable, it may be configured to be displayed on the detailed settings screen to make it clear to the user.

[0044] In S607, the scan settings screen extension unit 205 accepts detailed settings. In this embodiment, as shown in Figure 3(d), the user selects: scan destination: document glass, document frame erasure: book frame erasure, center erasure width: 10 mm, and full-circumference erasure width: 20 mm. The accepted settings are stored in RAM 113 by CPU 111. In S608, the scan settings screen extension unit 205 receives confirmation that the detailed settings have been completed and instructs the system to write the received settings to the scan settings information. The user can signal the completion of the detailed settings by operating the pointing device 117 or keyboard 118 and selecting control 306. When writing to the scan settings information, it is also possible to configure the system to write items that have not been selected by the user, such as resolution.

[0045] In S609, the extended application 204 sends a message to the general-purpose scanning software 202 indicating that the detailed settings have been completed. In the S610, the general-purpose scan software 202 sends a message to the scan application 201 indicating that the detailed settings have been completed. In S611, the scan application 201 receives a scan command. The user can initiate a scan by operating the pointing device 117 or keyboard 118 and selecting control 503.

[0046] In S612, the scan application 201 issues a scan command to the general-purpose scan software 202. In S613, the general-purpose scan software 202 issues a scan command to the extended application 204. In S614, the extended application 204 creates a scan command based on the scan configuration information written in S608. If items that were not selected by the user, such as resolution, are not written to the scan configuration information in S608, the extended application 204 may add them when creating the scan command in S614. Alternatively, it may be configured to operate with the default values ​​of the scan device 102 without adding anything. In step S615, the extended application 204 sends a scan command to the scanning device 102 to perform a scan.

[0047] In S616, the scanning device 102 interprets the scan command and executes the scan. During the scan, it performs the necessary image processing on the image data according to the scan command. In this embodiment, if the scan settings shown in Figure 3(d) are configured, the scan is performed with the configured document frame removal process. In other words, image data is generated in which the frame (shadow) at the specified position is removed by the specified width. In S617, the scanning device 102 sends the generated image data to the extended application 204. In S618, the extended application 204 sends the received image data to the general-purpose scanning software 202.

[0048] In S619, the general-purpose scanning software 202 sends the received image data to the scanning application 201. In S620, the scan application 201 accepts image data. In S621, the scan application 201 displays the received image data. [Scanning process: Extended application] Here, using Figure 7, we will explain the flow in which the extended application 204 performs the scan process. Each step is realized by the execution of each unit read from the external storage device 114 to the RAM 113 by the CPU 111.

[0049] In S701, the extended application 204 accepts a request to display detailed settings. In S702, the scan settings screen extension unit 205 of the extended application 204 displays the detailed settings screen shown in Figure 3(c) on the display unit 119. This is because, as explained in Figure 4, the document frame erasure setting has been added to the scan function information by the scan function extension unit 206. The scan settings screen extension unit 205 displays the detailed settings screen shown in Figure 3(c) on the display unit 119 by referring to the scan capabilities generated based on the added scan function information. In S703, the scan settings screen extension unit 205 determines whether the user has set a function. If the user has set a function (Yes in S703), the CPU 111 proceeds to S704; if the user has not set a function (No in S703), the CPU 111 proceeds to S705. In S704, CPU111 accepts the detailed settings, stores the accepted settings in RAM113, and then proceeds to S705 for processing.

[0050] In S705, the scan settings screen extension unit 205 determines whether the user has given an instruction to finish the settings. If an instruction to finish the settings is given (Yes in S705), the CPU 111 accepts that the detailed settings have been completed, writes the accepted settings to the scan settings information, and proceeds to S706. If there is no instruction to finish the settings (No in S705), the CPU 111 returns to S703 and determines again whether the user has given any function settings. In S706, the extended application 204 sends a message to the general-purpose scanning software 202 indicating that the detailed settings have been completed. In S707, the extended application 204 determines whether there is a scan command from the general-purpose scan software 202. If there is a scan command (Yes in S707), the CPU 111 proceeds to S708; otherwise, it returns to S707 and determines again whether there is a scan command from the general-purpose scan software 202.

[0051] In S708, the extended application 204 creates scan command instructions based on the scan configuration information written in S705. One way to create scan command instructions in S708 is to extend the standard protocol commands. This extension method involves writing dedicated commands in the extension area of ​​the standard protocol commands. Furthermore, there are methods such as adding proprietary commands to the end of the standard protocol commands, or having the extension application 204 overwrite the standard protocol commands with its own command system. Furthermore, when issuing instructions from the extended application 204, the configuration may be such that instructions and communication are performed using a vendor-specific protocol, regardless of the standard protocol.

[0052] In S709, the extended application 204 sends a scan command to the scanning device 102 to perform a scan. In S710, the extended application 204 determines whether it has received all the image data from the scanning device 102. If all the image data has been received (Yes in S710), the CPU 111 proceeds to S711; otherwise (No in S710), it returns to S710 to determine whether all the image data has been transmitted from the scanning device 102. In step S711, the extended application 204 sends the received image data to the general-purpose scanning software 202 and terminates this process.

[0053] [Scanning process: Scanning device] Next, using Figure 8, we will explain the scan process flow of the scanning device 102 that receives a scan command from the extended application 204. Note that each operation (step) shown in the flowchart of Figure 8 is realized by the CPU 191 executing a program stored in RAM 192. In S801, CPU 191 receives scan instructions sent from extended application 204. In S802, the scan command received in S801 is analyzed and converted into a reading setting that allows the scanning device 102 to perform the reading process. In this embodiment, the scanning settings are configured on the document glass as follows: document frame erasure: book frame erasure, center erasure width: 10 mm, full-circumference erasure width: 20 mm, resolution: 300 x 300 dpi.

[0054] In S803, the CPU 191 determines the ASIC of the image processing unit 190 to be used to perform the scan according to the reading settings converted in S802, and configures the ASIC. In S804, the CPU 191 sends a reading instruction to the reading unit 195 according to the reading settings. In this embodiment, an instruction is sent to perform reading on the document glass. In S805, the CPU 191 acquires image data from the reading unit 195.

[0055] In S806, the CPU 191 and image processing unit 190 perform image processing on the received image data. In this embodiment, the resolution is converted to 300 x 300 dpi and the document frame removal process is performed. For the document frame removal process, the ASIC configured in S803 analyzes the image data and removes the shadow of the specified width. The method of removing the shadow here may be to fill it with white, or to infer the background color from the surrounding pixels and fill it with that color. Figure 25 shows a specific example of document frame removal: book frame removal, center removal width: 10 mm, and full-circumference removal width: 20 mm. As shown in Figure 25(a), in the case of a thick book, a shadow is created at the center of the book's binding and around the periphery. In contrast, as shown in the figure, by removing a 10 mm shadow in the center and a 20 mm shadow around the entire circumference, an image like Figure 25(b) can be obtained. In this embodiment, the center position is set to the middle of the scanned image, but a configuration that allows specifying the center position itself is also possible. Furthermore, if the reading unit 195 is capable of reading at 300 x 300 dpi, the reading unit 195 may acquire image data at 300 x 300 dpi, and the S806 may not perform any image processing.

[0056] In S807, CPU 191 saves image data to external storage device 199. In S808, CPU191 determines whether the scanning process for all pages has finished. If it determines that it has not finished (S808 is No), it proceeds to S805 and executes the scanning process for the next page. If it determines that it has finished (S808 is Yes), it proceeds to S809. In S809, the CPU 191 and the image processing unit 190 convert the image data saved in S807 according to the transmission format setting received in S801. In this embodiment, the transmission format is not included in the scan instruction received from the extended application 204. Therefore, it is converted to the default JPEG of the scanning device 102, but the transmission format to be converted is not limited to this; any format that can be handled by the information processing device is acceptable. In S810, the converted image data is sent to the extended application 204, and all processing is completed.

[0057] As described above, in this embodiment, the scan setting screen extension unit 205 of the extension application 204 modifies the scan function information 203 based on the general-purpose scan software 202, the extension application 204, and the capability information of the scan device 102. Furthermore, when the user requests a detailed settings screen, the settings screen is displayed based on the scan capabilities generated from the scan function information 203, allowing the user to set the document frame erasure settings. Subsequently, when the scan device 102 receives a scan instruction that reflects the document frame erasure settings, it performs shadow erasure processing at the specified position and width. Through this series of processes, the scan device 102 can be equipped with a document frame erasure function, and the document frame erasure function can be provided to the user.

[0058] In this embodiment, the detailed settings screen shown in Figure 3(d) was used under the configuration shown in Figure 2(b) for the explanation, but the present invention is not limited thereto. For example, when a request to display detailed settings is made to the general-purpose scan software 202 in S604, the general-purpose scan software 202 may display the detailed settings screen shown in Figure 3(b). Subsequently, after the detailed settings shown in Figure 3(b) are completed, the general-purpose scan software 202 requests the extended application 204 to display an additional detailed settings screen. Next, the extended application 204 may display an additional detailed settings screen that allows for setting the document frame erasure. Furthermore, while the configuration is such that scan commands to the extended application 204 are issued from the general-purpose scan software 202, this is not limited to this. For example, the scan application 201 could issue commands to the extended application 204, or a control for issuing scan commands could be placed on the detailed settings screen, allowing the user to issue commands directly to the extended application 204. Additionally, the image data could be transferred directly from the extended application 204 to the scan application 201 without going through the general-purpose scan software 202, or from the scan device 102 to the scan application 201. Moreover, the received image data could be saved to the external storage device 114, and only the file path information of the save location could be transferred. Furthermore, in this embodiment, when there are multiple image data, the method is to receive all image data before passing it on, but it is also possible to configure the system to pass on transmitted image data as it is received.

[0059] [Embodiment 2] Embodiment 2 of the present invention will now be described. In Embodiment 1 described above, first, the scanning device 102 interprets the scan setting information, including the document frame erasure setting, and performs the scan process with the document frame erasure setting specified on the scanning device 102. However, some scanners may not be able to erase the document frame. In such cases, even if the extended application supports it and can generate scan settings information including the specification for erasing the document frame, it may not be possible to make the scanner perform the document frame erasure process.

[0060] Therefore, in Embodiment 2, first, it is determined from the capabilities information of the scanner whether or not document frame erasure is possible. Next, if document frame erasure is possible with the scanner, scan setting information including the document frame erasure setting specified by the user is generated and passed to the scanner. On the other hand, if document frame erasure is not possible with the scanner, scan setting information without the document frame erasure setting is generated and passed to the scanner. After that, the document frame is erased using the extended application on the image data read by the scanner. This makes it possible to provide the user with image data from which shadows at any position have been removed, even if document frame erasure is not possible with the scanner. In the following, we will only describe the differences from Embodiment 1.

[0061] Assume that the scanning device 102 is a scanning device that does not support document frame erasure. The extended application 204 has a different configuration from the extended application 204 of Embodiment 1. The scanning function extension unit 206 adds a document frame erasure specification to the scanning function information 203 if there is a unit in the extended application 204 that performs document frame erasure processing for image data, even if there is no document frame erasure in the capability information acquired from the scanning device. The image data editing unit 207 performs document frame erasure processing on the image data received from the scanning device 102 based on the document frame erasure setting of the document frame erasure specification function set by the user. Details will be described later.

[0062] [Editing process for scan function information: Scan function expansion unit] The scan function information editing process by the scan function extension unit 206 in Embodiment 2 will be explained using Figure 9. Steps common to both Figure 4 and this embodiment are given the same numbering and their explanations are omitted; the differences will be explained primarily. Note that each step in Figure 9 is realized by the execution of each unit read from the external storage device 114 to the RAM 113 by the CPU 111.

[0063] When the scan function expansion unit 206 completes the repetitive processing from S404 to S406, it proceeds to processing S901. At this point, the scanner 102 does not support the document frame erasure function. Therefore, the document frame erasure function is not added to the scan function information 203 after the completion of processing from S404 to S406. Therefore, S901 and S902 perform a process to add functions to the scan function information according to the modules that the extended application 204 has, even though they are not included in the capability information returned from the scan device 102. Specifically, in S901, the scan function expansion unit 206 refers to the capabilities table of the scanning device and the scan function information 203 to determine whether the expansion application 204 has a module for performing document frame erasure processing. If it is determined that there is a module for performing document frame erasure processing (Yes in S901), the process proceeds to S902; if it is determined that there is no such module (No in S901), the process ends. In this embodiment 2, since the image data editing unit 207 can perform document frame erasure processing, it is determined that the expansion application 204 has a module for performing document frame erasure processing. Next, in S902, the scan function expansion unit 206 adds a document frame erasure function and then terminates this process. As described above, the function expansion unit 206 first adds functions and options that are not supported by the general-purpose scanning software 202 but are supported by the scanning device 102 and the expansion application 204 to the scanning function information 203. Then, it determines whether the expansion application 204 can perform the document frame erasure process, and if it can, it adds the document frame erasure function to the scanning function information. As a result, even if the scanning device 102 does not support the document frame erasure function, the scanning setting screen expansion unit 205 generates a display screen based on the scanning function information 203, making it possible to display the detailed settings screen shown in Figures 3(c), (d), and (e).

[0064] Scanning process sequence Next, using Figure 10, the sequence of the scan application 201, general-purpose scan software 202, extended application 204, and scan device 102 after the scan application 201 accepts the scan settings will be explained. Note that each step in Figure 10 other than the scan device 102 is performed by the CPU 111 reading the scan application 201, general-purpose scan software 202, and extended application 204 from the external storage device 114 into RAM 113 and executing them. Each step of the scan device 102 in Figure 10 is realized by the CPU 191 of the scan device 102 reading the program stored in ROM 192 or external storage device 199 into RAM 193 and executing it.Hereafter, steps common to Figure 6 will be given the same number and their explanations will be omitted, and the differences will be explained in detail.

[0065] In S1001, the extended application 204 creates a read command. The detailed operation at this time is explained in the flowchart in Figure 11. In S1002, the image data editing unit 207 performs document frame erasure on the received image data. In this embodiment, shadow erasure processing is performed on the image data with a center erasure width of 10 mm and a full-circumference erasure width of 20 mm. Here, using Figure 11, we will explain the flow in which the extended application 204 performs the scan process. Steps common to Figure 7 are given the same number and their explanations are omitted, while the differences will be explained primarily. Each step is realized by the execution of each unit read from the external storage device 114 to the RAM 113 by the CPU 111.

[0066] [Scanning process: Extended application] In S1101, the extended application 204 obtains capability information for the scanning device 102 from the shared information 208. If capability information for the scanning device 102 is not available, the scanning function extension unit 206 may request capability information from the scanning device 102 and save it to the shared information 208. The extended application 204 determines from the acquired capability information and setting information whether there are any function settings that are not supported by the scanning device 102. If it is determined that a function not supported by the scanning device 102 is set (Yes in S1101), the CPU 111 proceeds to S1102. In Embodiment 2, the document frame erasing function, which is not supported by the scanning device 102, is set, so the process proceeds to S1102. If it is determined that no function not supported by the scanning device 102 is set (No in S1101), the CPU 111 proceeds to S708. Next, in S1102, a scan command is created from the extended application 204, excluding unsupported function settings. In this embodiment, the document frame erasure function is not included in the scan command. Then the process proceeds to S709.

[0067] Next, we will explain the process that follows when S710 determines that it has received the previous image data. In S1103, the extended application 204 determines from the setting information whether there are any settings that need editing in the image data editing unit 207. If it is determined that there are settings that need editing (Yes in S1103), the CPU 111 proceeds to S1104. In Embodiment 2, since the document frame erasure function that the scanner 102 cannot execute is set, the process proceeds to S1104. On the other hand, if it is determined that there are no settings that need editing (No in S1103), the CPU 111 proceeds to S711. Next, in S1104, the image data editing unit 207 performs a document frame erasure process on the received image data based on the document frame erasure function setting configured in S703, and then proceeds to S711.

[0068] In this embodiment, function settings not supported by the scanning device were excluded from the scan instruction command. However, even if such a function were included in the scan instruction command, the scanning device would not be able to interpret the unsupported instruction command and therefore would not be able to execute the function. For this reason, unsupported functions may be included in the scan instruction command without being excluded. As described above, in Embodiment 2, even if the scanning device does not support a file format specification function, it is possible to provide the user with a document frame erasure function.

[0069] [Embodiment 3] Embodiment 3 of the present invention will now be described. In Embodiments 1 and 2 described above, the extended application 204 and the scanning device 102 are configured to communicate with each other. In Embodiment 3, the general-purpose scanning software 202 interacts with the scanning device 102, and the extended application 204 is configured to perform only scan command extensions and image editing. In the following, we will only describe the differences from Embodiments 1 and 2.

[0070] Scanning process sequence (command extension) Figure 12 illustrates the sequence of the scan application 201, general-purpose scan software 202, extended application 204, and scan device 102 after the scan application 201 receives the scan settings. Steps common to both Figure 6 and Figure 12 are given the same numbering and their explanations are omitted; the differences will be explained primarily. Note that each step in Figure 12, except for the scan device 102, is performed by the CPU 111 reading the scan application 201, general-purpose scan software 202, and extended application 204 from the external storage device 114 into the RAM 113 and executing them. Each step of the scan device 102 in Figure 12 is achieved by the CPU 191 of the scan device 102 reading a program stored in the ROM 192 or external storage device 199 into the RAM 193 and executing it.

[0071] In S1201, the general-purpose scan software 202 creates a scan command. At this time, functions that the general-purpose scan software 202 does not support are not included in the scan command. In S1202, the general-purpose scan software 202 passes the created scan command to the extended application 204. In S1203, the extended application 204 extends the command by adding instructions for functions not supported by the general-purpose scan software 202 to the received scan instruction command or by modifying existing instructions. In this embodiment, in S1201, since the scan instruction command created by the general-purpose scan software 202 does not include a document frame erasure setting, the document frame erasure setting is added.

[0072] In S1204, the extended application 204 passes the extended scan command to the general-purpose scan software 202. In step S1205, the general-purpose scan software 202 sends a scan command to the scan device 102 and performs the scan command. In S1206, the general-purpose scanning software 202 receives image data from the scanning device 102.

[0073] Scanning process sequence (image editing) Next, using Figure 13, we will explain the sequence of events when the general-purpose scan software 202 and the scan device 102 communicate and image editing is performed using an extended application. Steps common to Figure 12 are given the same number and their explanations are omitted, while the differences will be explained primarily. Note that each step in Figure 13 other than that of the scan device 102 is performed by the CPU 111 reading the scan application 201, the general-purpose scan software 202, and the extended application 204 from the external storage device 114 into the RAM 113 and executing them. Each step of the scan device 102 in Figure 13 is realized by the CPU 191 of the scan device 102 reading the program stored in the ROM 192 or external storage device 199 into the RAM 193 and executing it.

[0074] In S1301, the general-purpose scanning software 202 transmits the received image data to the extended application 204. In S1002, the extended application 204 performs image editing. In this embodiment, based on the document frame erasure settings configured in the same way as in S1104 in Figure 11, document frame erasure is performed on the received image data. In S1302, the extended application 204 sends the edited image data to the general-purpose scanning software 202. As described above, in this embodiment, the extended application 204 extends the document frame erasure specification command, thereby enabling the scanning device 102 to implement a document frame erasure function, and making it possible to provide the user with a document frame erasure function.

[0075] [Embodiment 4] Embodiment 4 of the present invention will now be described. In Embodiments 1 to 3 described above, the commands used in the standard protocol were extended and configured to communicate with the scanning device 102. Embodiment 4 describes a configuration in which the standard protocol commands are not extended, and functions supported only by the extended application 204 are communicated with the scanning device 102 using separate commands. In the following, we will only describe the differences from the previously described embodiment.

[0076] Scanning process sequence (sending separate commands) Figure 14 illustrates the sequence of the scan application 201, general-purpose scan software 202, extended application 204, and scan device 102 after the scan application 201 accepts the scan settings. Note that each step in Figure 14, except for the scan device 102, is performed by the CPU 111 reading the scan application 201, general-purpose scan software 202, and extended application 204 from the external storage device 114 into the RAM 113 and executing them. Each step of the scan device 102 in Figure 14 is achieved by the CPU 191 of the scan device 102 reading a program stored in the ROM 192 or external storage device 199 into the RAM 193 and executing it. Steps common to both Figure 6 and Figure 14 are given the same numbering, their explanations are omitted, and the differences are primarily explained.

[0077] In S1401, the general-purpose scan software 202 creates a standard scan instruction command in accordance with the standard protocol. At this time, functions not supported by the standard protocol are not included in the scan instruction command. In S1402, the extended application 204 creates an extended scan command for features that are supported only by the extended application 204. In S1403, the extended application 204 sends a standard scan instruction command to the scanning device 102 and performs a scan instruction. In S1404, the extended application 204 sends an extended scan command to the scanning device 102 and performs a scan command. In S1405, the scanning device 102 interprets the received standard scan instruction command and extended scan instruction command, respectively, and executes the scan process.

[0078] [Scanning process: Extended application] Here, using Figure 15, we will explain the flow in which the extended application 204 performs the scan process. Each step is realized by the execution of each unit read from the external storage device 114 to the RAM 113 by the CPU 111. Steps common to Figure 7 are given the same number and their explanations are omitted, while the differences will be explained in detail.

[0079] In S1501, the extended application 204 creates a standard scan instruction command that conforms to the standard protocol. In S1502, the extended application 204 creates an extended scan command for features not supported by the standard protocol. In S1503, the extended application 204 sends the standard scan instruction command created in S1501 to the scanning device 102. In S1504, the extended application 204 sends the extended scan instruction command created in S1502 to the scanning device 102.

[0080] As described above, in Embodiment 4, the extended application can provide the user with a document frame erasure function by sending a separate scan command for functions not supported by the standard protocol.

[0081] [Embodiment 5] Embodiment 5 of the present invention will be described below. Embodiment 5 describes a method that allows the user to perform scanning while viewing a preview image and confirming what kind of image data can be obtained depending on the setting value of the document frame erasure. Below, we will refer to Figure 16 and explain only the differences from the previously described embodiment. Figure 16(a) shows an example of a list of capability information obtained from the scanning device 102 in this embodiment, as Table 1601. As shown in Table 1601, the scanning device 102 has obtained information that the preview function is supported (1603). As shown in Table 1602 in Figure 16(b), the extended application also supports preview (1604). Figure 16(c) shows an example of the detailed settings screen where the preview function is available. Figure 16(c) shows the area 1605 that displays the preview image and the control 1606 that instructs the user to perform the preview.

[0082] Scanning process sequence (preview) Figure 17 illustrates the sequence of the scan application 201, general-purpose scan software 202, extended application 204, and scan device 102 when displaying a preview. Note that each step in Figure 17, except for the scan device 102, is performed by the CPU 111 reading the scan application 201, general-purpose scan software 202, and extended application 204 from the external storage device 114 into the RAM 113 and executing them. Each step of the scan device 102 in Figure 17 is achieved by the CPU 191 of the scan device 102 reading a program stored in the ROM 192 or external storage device 199 into the RAM 193 and executing it. Steps common to both Figure 6 and Figure 17 are given the same numbering, their explanations are omitted, and the differences are primarily explained.

[0083] In S1701, the extended application 204 accepts a preview display. The user can initiate the preview display by operating the pointing device 117 or keyboard 118 to select control 1606. In S1702, the extended application 204 sends a preview command to the scanning device 102 and issues a scan command for preview. The scan command is created based on the settings received at this point. In this embodiment, a scan command including the received document frame erasure is created. In S1703, the scanning device 102 interprets the received preview instruction command and executes the scanning process. In this embodiment, the scanning process will be performed to erase the document frame as instructed. Next, in S1704, the scanning device 102 sends the generated image data to the extended application 204. In S1705, the extended application 204 displays the received preview image.

[0084] [Scanning process: Extended application] Here, using Figure 18, we will explain the flow in which the extended application 204 performs the scan process. Each step is realized by the execution of each unit read from the external storage device 114 to the RAM 113 by the CPU 111. Steps common to Figure 7 are given the same number and their explanations are omitted, while the differences are mainly explained.

[0085] In S1801, the scan settings screen extension unit 205 determines whether the user has requested a preview display. If a preview display request has been made (Yes in S1801), the process proceeds to S1802; otherwise (No in S1801), the process proceeds to S705. In S1802, the extended application 204 creates a preview image instruction command based on the configuration information stored in S704. In S1802, one way to create preview image instruction commands is to extend standard protocol commands, similar to how scan instruction commands are created. This extension method involves writing dedicated commands in the extension area of ​​the standard protocol commands. Furthermore, it includes methods such as adding proprietary commands to the end of standard protocol commands, or having the extension application 204 overwrite standard protocol commands with its own command system.

[0086] Furthermore, when issuing instructions from the extended application 204, the configuration may be such that instructions and communication are performed using a vendor-specific protocol, regardless of the standard protocol. Next, in S1803, the extended application 204 sends a preview image instruction command to the scanning device 102 to perform a scan. In S1804, the extended application 204 determines whether it has received all of the preview image data from the scanning device 102. If it has received all of the preview image data (Yes in S1804), it proceeds to S1805; otherwise (No in S1804), it returns to S1804 to determine whether it has received the preview image data from the scanning device 102. In S1805, the extended application 204 displays the received preview image data.

[0087] In this embodiment, the preview image is generated using the same processing as the actual image data, but a configuration that generates image data specifically for previewing is also acceptable. For example, to speed up the preview display, methods such as lowering the resolution or increasing the compression ratio to reduce the image size can be used. Furthermore, the preview image may be discarded after the S608's detailed settings are completed or when the detailed settings are canceled, or it may be retained until the final image data is acquired for the purpose of redisplaying it when detailed settings are accepted again.

[0088] Next, we will describe how to update the preview image in the image data editing unit 207 of the extended application 204 if image processing is possible in the image data editing unit 207 after the preview image has been displayed and the settings have been changed. In this case, it is not necessary to perform a scan again with the scanning device 102, and although it differs from the actual final image data, an image of the output can be easily and quickly provided to the user. For example, in the case of erasing the document frame as in this embodiment, it is possible to visualize how the image will change by changing the setting value.

[0089] [Preview image update process: Extended application] Figure 19 illustrates the flow in which the extended application 204 updates the preview image. Each step is realized by the execution of each unit read from the external storage device 114 to the RAM 113 by the CPU 111. Steps common to both Figure 18 and Figure 18 are given the same numbering and their explanations are omitted; the differences are the main focus of this explanation.

[0090] In S1901, the extended application 204 determines whether the preview image has already been displayed. If it has been displayed (No in S1901), the process proceeds to S1801; otherwise, the process proceeds to S1902. In S1902, the extended application 204 determines whether the setting change function received in S703 can be processed by the image data editing unit 207. If it can be processed by the image data editing unit (Yes in S1902), the process proceeds to S1903. If it can be processed by the image data editing unit (No in S1902), the process proceeds to S1801. In this embodiment, since the document frame erasure can be processed by the image data editing unit 207, the process proceeds to S1903. In S1903, the image data editing unit 207 performs image processing on the preview image. In S1904, the extended application 204 displays the preview image data after image processing.

[0091] (Using preview images) Next, we will describe a configuration in which, after displaying the preview image, if the user decides to use the previewed image data as is, the system does not perform another scan, but instead passes the preview image to the actual scan application 201. <Advanced Settings Screen> Figure 20 shows an example of a detailed settings screen where a preview image can be saved. Figure 20 displays Control 2001, which is used to instruct the user to save the preview image. When Control 2001 is pressed, the process of saving the preview image is executed.

[0092] Scanning process sequence (using preview image data) Figure 21 illustrates the sequence of the scan application 201, general-purpose scan software 202, extended application 204, and scan device 102 when saving a preview. Note that each step in Figure 21, except for the scan device 102, is performed by the CPU 111 reading the scan application 201, general-purpose scan software 202, and extended application 204 from the external storage device 114 into the RAM 113 and executing them. Each step of the scan device 102 in Figure 21 is achieved by the CPU 191 of the scan device 102 reading a program stored in the ROM 192 or external storage device 199 into the RAM 193 and executing it. Steps common to both Figure 17 and Figure 17 are given the same numbering, their explanations are omitted, and the differences are primarily explained.

[0093] The S1704 accepts scanned images. In S2101, the extended application 204 accepts the saving of a preview image. The user can instruct the system to save the preview image by operating the pointing device 117 or keyboard 118 and selecting control 2001. Upon receiving the instruction to save, the extended application 204 passes the image data to the general-purpose scanning software 202. The general-purpose scanning software 202 then passes the image data to the scanning application 201, allowing the scanning application 201 to handle the image data.

[0094] [Scanning process: Extended application] Here, using Figure 22, we will explain the flow in which the extended application 204 performs the scan process. Each step is realized by the execution of each unit read from the external storage device 114 to the RAM 113 by the CPU 111. Steps common to Figure 18 are given the same number and their explanations are omitted, while the differences are mainly explained.

[0095] In S2201, the scan settings screen extension unit 205 determines whether the user has requested to save a preview image. If there is a request to save a preview image (Yes in S2201), the process proceeds to S711; if there is no request to save a preview image (No in S2201), the process proceeds to S705. S711 sends the preview image to the general-purpose scanning software 202.

[0096] Next, we will describe a configuration in which the preview is displayed using image data that has been pre-stored internally by the extended application 204, rather than using the actual document data as the preview image. By using pre-stored image data, although it differs from the actual image data, it is possible to provide the user with an image of the output easily and quickly without the need for scanning. For example, in the case of document frame removal as in this embodiment, it is possible to visualize how the image will change by changing the setting value.

[0097] Scanning process sequence (utilization of saved image data) Figure 23 illustrates the sequence of the scan application 201, general-purpose scan software 202, extended application 204, and scan device 102 when displaying a pre-held preview image. Note that each step in Figure 23, except for the scan device 102, is performed by the CPU 111 reading the scan application 201, general-purpose scan software 202, and extended application 204 from the external storage device 114 into the RAM 113 and executing them. Each step of the scan device 102 in Figure 23 is achieved by the CPU 191 of the scan device 102 reading a program stored in the ROM 192 or external storage device 199 into the RAM 193 and executing it. Steps common to both Figure 17 and Figure 17 are given the same numbering, their explanations are omitted, and the differences are primarily explained.

[0098] In S2301, the extended application 204 displays a preview image corresponding to the received settings. The preview image displayed at this time is configured to store multiple separate preview images corresponding to various settings, and then display the image that matches the settings. Alternatively, it may be configured to perform image processing on a specific preview image data each time before displaying it.

[0099] [Scanning process (preview image update): Extended application] Figure 24 illustrates the flow in which the extended application 204 updates the preview image. Each step is realized by the execution of each unit read from the external storage device 114 to the RAM 113 by the CPU 111. Steps common to both Figure 18 and Figure 18 are given the same numbering and their explanations are omitted; the differences are the main focus of this explanation.

[0100] In S2401, the extended application 204 determines whether the preview has already been displayed. If the preview has already been displayed (Yes in S2401), the process proceeds to S2402; otherwise (No in S2401), the process proceeds to S1801. In S2402, extended application 204 updates and displays the preview image according to the settings. If it is determined in S1801 that the user has requested a preview display (if the answer in S1801 is Yes), the process proceeds to S2403. In S2403, extended application 204 displays a preview image according to the settings. As described above, in Embodiment 5, the preview image is displayed in the extended application. By changing the preview image according to the settings, it becomes possible to provide the document frame removal function in a way that allows the user to easily visualize the final output.

[0101] (Other examples) The present invention can also be realized by supplying a program that implements one or more of the functions of the above-described embodiments to a system or device via a network or storage medium, and by having one or more processors in the computer of that system or device read and execute the program. It can also be realized by a circuit (e.g., an ASIC) that implements one or more functions. This embodiment includes the following programs, methods, and configurations. (Program 1) A program that supports the functions of general-purpose scanning software that can be used in common with image processing devices provided by multiple manufacturers, to the computer The image processing device displays a screen that accepts the setting for erasing the document frame of the image to be read. A program characterized by causing the image processing device to output a read command to perform a scan according to the settings received on the display screen. (Program 2) The program according to Program 1, characterized in that the setting for erasing the document frame is a setting for erasing a shadow from a part of the scanned image. (Program 3) The program according to program 1 or 2, characterized in that the setting for erasing the document frame is a setting to erase a shadow from a specific position in the scanned image by a specific width. (Program 4) The process of erasing the shadow of the document frame described above is a program according to any one of programs 1 to 3, characterized in that it replaces pixels at a specified position and width with white. (Program 5) The process of erasing the shadow of the document frame described above is characterized by finding the surrounding color at a specified position and replacing the pixels at the specified position and width with the found surrounding color, as described in any of programs 1 to 3. (Program 6) The display screen that accepts the above settings is a program according to any one of programs 1 to 5, characterized in that it changes the items to be displayed based on the scanning capability of the image processing device. (Program 7) The image processing device determines whether the received document frame erasure setting can be performed. If the image processing device determines that the received settings cannot be implemented, the program is characterized in that it performs an image document frame removal process on the scanned and acquired image data based on the received settings, as described in any of Programs 1 to 6. (Program 8) The scanner determines whether the received document frame erasure setting can be performed by the scanning device. The program according to program 7, characterized in that, if it is determined that the received settings cannot be implemented by the image processing device, the image processing device outputs an instruction command that does not include an instruction to erase the document frame. (Program 9) A program according to any one of programs 1 to 8, characterized in that the reading instruction is output to the image processing device via the general-purpose scanning software. (Program 10) When issuing a read instruction to the image processing device that performs the scan, A program as described in any of Programs 1 to 9, characterized by sending instruction commands that extend the instruction commands of the standard protocol. (Program 11) A program according to any one of programs 1 to 9, characterized in that, when issuing a read instruction to the image processing device that performs the scan, it does not send a standard protocol instruction command, but instead sends a proprietary instruction command. (Program 12) A program according to any one of programs 1 to 9, characterized in that, when issuing a read instruction to the image processing device that performs the scan, it sends an extended instruction command in addition to the instruction command of the standard protocol. (Program 13) A program according to any one of programs 1 to 13, characterized in that, based on the settings received, it outputs a read command to the image processing device and displays the image read by the image processing device as a preview image on the display screen. (Program 14) The program according to program 13, characterized in that it sends a preview image instruction command when causing the image processing device to output a read instruction. (Program 15) The program according to program 13 or 14, characterized in that it saves the preview image or allows the user to accept it on the display screen. (Program 16) A program according to any one of programs 13 to 15, characterized in that it displays the image data saved based on the settings received on the display screen as a preview image on the display screen. (Program 17) The program according to program 16, characterized in that it updates the preview image based on the received settings. (Method 1) A control method for an information processing device having general-purpose scanning software that can be used in common with image processing devices provided by multiple manufacturers, and an application that supports the functions of the general-purpose scanning software, A display step that displays a display screen that accepts the setting for erasing the document frame of the image to be read by the image processing device, Output process: Outputs a read command to the image processing device to perform a scan according to the settings received on the display screen. A control method characterized by having the following features. (Composition 1) An information processing device having general-purpose scanning software that can be used in common with image processing devices provided by multiple manufacturers, and an application that supports the functions of the general-purpose scanning software, A display means that displays a display screen for accepting settings for erasing the document frame of an image to be read by the aforementioned image processing device, Output means that outputs a reading instruction to the image processing device to perform a scan according to the settings received on the display screen. An information processing device characterized by having the following features. [Explanation of symbols]

[0102] 102 Scanning device 111,191 CPU 112,192 ROM 113,193 RAM 119 Display section 201 Scanning Application 202 General-purpose scanning software 203 Scan Function Information 204 Extended Applications 102 Scanning device

Claims

1. A program that supports the functions of general-purpose scanning software that can be used in common with image processing devices provided by multiple manufacturers, to the computer The image processing device displays a screen that accepts the setting for erasing the document frame of the image to be read. A program characterized by causing the image processing device to output a read command to perform a scan according to the settings received on the display screen.

2. The program according to claim 1, characterized in that the setting for erasing the document frame is a setting for erasing a shadow from a part of the scanned image.

3. The program according to claim 1, characterized in that the setting for erasing the document frame is a setting to erase a shadow from a specific position in the scanned image by a specific width.

4. The program according to claim 1, characterized in that the process of erasing the shadow of the document frame is performed by replacing pixels at a specified position and width with white.

5. The program according to claim 1, characterized in that the process of erasing the shadow of the document frame involves finding the surrounding color at a specified position and replacing the pixels at the specified position and width with the found surrounding color.

6. The program according to claim 1, wherein the display screen that accepts the above settings changes the items to be displayed based on the scanning capability of the image processing device.

7. The image processing device determines whether the received document frame erasure setting can be performed. The program according to claim 1, characterized in that, if it is determined that the received settings cannot be implemented by the image processing device, it causes the scanned and acquired image data to perform an image document frame removal process based on the received settings.

8. The scanner determines whether the received document frame erasure setting can be performed by the scanning device. The program according to claim 5, characterized in that, if it is determined that the received settings cannot be implemented by the image processing device, the image processing device outputs an instruction command that does not include an instruction to erase the document frame.

9. The program according to claim 1, characterized in that it causes the reading instruction to be output to the image processing device via the general-purpose scanning software.

10. When issuing a read instruction to the image processing device that performs the scan, The program according to claim 1, characterized in that it causes the program to send instruction commands that are extensions of instruction commands of a standard protocol.

11. The program according to claim 1, characterized in that, when issuing a read instruction to the image processing device that performs the scan, it does not send a standard protocol instruction command, but instead sends a proprietary instruction command.

12. The program according to claim 1, characterized in that, when issuing a read instruction to the image processing device that performs the scan, it causes the device to send an extended instruction command in addition to the instruction command of the standard protocol.

13. The program according to claim 1, characterized in that it outputs a read command to the image processing device based on the settings received, and displays the image read by the image processing device as a preview image on the display screen.

14. The program according to claim 11, characterized in that it transmits a preview image instruction command when causing the image processing device to output a read instruction.

15. The program according to claim 11, characterized in that the preview image is saved or accepted on the display screen.

16. The program according to claim 1, characterized in that it displays saved image data as a preview image on the display screen based on the settings received on the display screen.

17. The program according to claim 14, characterized in that it updates the preview image based on the received settings.

18. A control method for an information processing device having general-purpose scanning software that can be used in common with image processing devices provided by multiple manufacturers, and an application that supports the functions of the general-purpose scanning software, A display step that displays a display screen that accepts the setting for erasing the document frame of the image to be read by the image processing device, Output process: Outputs a read command to the image processing device to perform a scan according to the settings received on the display screen. A control method characterized by having the following features.

19. An information processing device having general-purpose scanning software that can be used in common with image processing devices provided by multiple manufacturers, and an application that supports the functions of the general-purpose scanning software, A display means that displays a display screen for accepting settings for erasing the document frame of an image to be read by the aforementioned image processing device, Output means that outputs a reading instruction to the image processing device to perform a scan according to the settings received on the display screen. An information processing device characterized by having the following features.

Citation Information

Patent Citations

  • Server system and application

    JP2021033526A