Applications, information processing devices, systems, and control methods
Patent Information
- Authority / Receiving Office
- JP · JP
- Patent Type
- Applications
- Current Assignee / Owner
- CANON KK
- Filing Date
- 2025-07-31
- Publication Date
- 2026-05-20
AI Technical Summary
Existing systems require users to manually specify and edit character strings within a file name, making partial edits cumbersome and inefficient.
An image processing device with a touch panel interface that detects character areas in scanned documents, allowing users to easily input and edit file names using a soft keyboard for character strings, with features like automatic name generation based on detected character regions and layout analysis.
Facilitates easy and efficient partial editing of file names, improving user operational efficiency by automating character string input and recognition.
Smart Images

Figure 00000000_0000_ABST
Abstract
Description
[Technical Field]
[0001] The present invention relates to a character input technique using a touch panel. [Background technology]
[0002] A commonly used document management method involves converting a scanned image obtained by scanning a document into a file in a predetermined format and transmitting it to a storage server on a network for storage. One method for easily setting a file name for a scanned image is to have a user select a character area on a preview display of the scanned image by touching it. Patent Document 1 discloses a technology in which, if a scanned image obtained by scanning a document matches predefined image characteristics, a file name is generated and displayed using a character string written in a specific position within the document, and the file name is editable by the user. [Prior art documents] [Patent documents]
[0003] [Patent Document 1] Japanese Patent Application Publication No. 2018-124656 Summary of the Invention [Problem to be solved by the invention]
[0004] In the technology of Patent Document 1, multiple character strings obtained from specific positions in a document are combined and presented to the user (displayed on a UI screen) as a continuous file name. Therefore, a user who wants to edit each character string that is part of a file name must first specify the position and range of the character string to be edited within the entire presented file name. In other words, making partial edits to a presented file name requires a lot of effort.
[0005] The present invention has been made to address the above-mentioned problems, and has an object to enable a user to easily perform partial editing of an undetermined file name or the like displayed on a UI screen. [Means for solving the problem]
[0006] The image processing device according to the present disclosure comprises a user interface means having a touch panel, a detection means for detecting a character area from a scanned image obtained by scanning a document, a display control means for displaying a UI screen on the touch panel for setting properties for the scanned image, and a setting means for setting the properties using a character string in a character area selected by a user via the UI screen, wherein the UI screen has an input field for inputting a character string that constitutes the property, and when a touch operation on the input field in which at least one character string has been input is detected, the display control means displays a soft keyboard on the touch panel for correcting the character string identified based on the touch operation. [Effects of the Invention]
[0007] According to the technology of the present disclosure, partial editing of an unconfirmed file name etc. displayed on a UI screen can be easily performed, thereby improving the operational efficiency of the user in editing file names. [Brief explanation of the drawings]
[0008] [Figure 1] Diagram showing the overall configuration of the image processing system [Figure 2] Block diagram showing the hardware configuration of an MFP [Figure 3] Block diagram showing the hardware configuration of the MFP linked server and storage server [Figure 4] Block diagram showing the software configuration of the image processing system [Figure 5] Sequence diagram showing the overall processing flow of the image processing system [Figure 6]A diagram showing an example of the main screen [Figure 7] An example of a login screen [Figure 8] A diagram showing an example of a scan setting screen [Figure 9] 1A is a diagram showing an example of a request ID, and FIGS. 1B and 1C are diagrams showing examples of responses to a processing status inquiry. [Figure 10] A diagram showing an example of a file name setting screen [Figure 11] An example of a learning request [Figure 12] Flowchart showing the processing flow in the MFP [Figure 13] A diagram showing an example of a scanned image [Figure 14] A diagram showing an example of a file name condition setting screen [Figure 15] A diagram showing an example of a character recognition result [Figure 16] A diagram showing an example of a similar document determination result [Figure 17] A diagram showing an example of a scanned image [Figure 18] Flowchart showing the file name setting process on the MFP [Figure 19] Flowchart showing the file name setting process on the MFP [Figure 20] A diagram showing the initial display part of the preview area [Figure 21] A diagram showing an example of a file name setting screen [Figure 22] A diagram showing an example of a soft keyboard [Figure 23] FIG. 10 is a diagram showing an example of a file name setting screen on which operation guidance is displayed. [Figure 24] FIG. 10 is a diagram showing an example of a file name setting screen when a touch operation is performed on a character area; [Figure 25] A diagram showing the initial display area of the preview area when the initial magnification is adjusted DETAILED DESCRIPTION OF THE INVENTION
[0009] The following describes embodiments of the present invention with reference to the drawings. Note that the following embodiments do not limit the scope of the invention as claimed, and not all of the combinations of features described in the embodiments are necessarily essential to the solution of the invention.
[0010] [Embodiment 1] <System configuration> 1 is a diagram showing the overall configuration of an image processing system according to this embodiment. The image processing system includes an MFP (Multifunction Peripheral) 110 and server devices 120 and 130 that provide cloud services over the Internet. The MFP 110 is connected to the server devices 120 and 130 via the Internet so that they can communicate with each other.
[0011] The MFP 110 is an example of an information processing device with a scanning function. The MFP 110 is a multifunction peripheral that has multiple functions, such as a printing function and a box storage function, in addition to the scanning function. The server devices 120 and 130 are both examples of information processing devices that provide cloud services. In this embodiment, the server device 120 provides a cloud service that performs image analysis on scanned images received from the MFP 110 and forwards requests from the MFP 110 to the server device 130 that provides other services. Hereinafter, the cloud service provided by the server device 120 will be referred to as an "MFP linkage service." The server device 130 provides a cloud service (hereinafter referred to as a "storage service") that stores files sent via the Internet and provides stored files in response to requests from a web browser on a mobile device (not shown) or the like. In this embodiment, the server device 120 that provides the MFP linkage service will be referred to as an "MFP linkage server," and the server device 130 that provides the storage service will be referred to as a "storage server."
[0012] The configuration of the image processing system 100 shown in FIG. 1 is an example and is not limited thereto. For example, the MFP 110 may also have the functions of the MFP cooperation server 120. Further, the MFP cooperation server 120 may be connected to the MFP 110 via a LAN (Local Area Network) instead of over the Internet. Further, the storage server 130 may be replaced with a mail server that performs a mail delivery service and applied to a scenario where a scanned image of a document is attached to and sent in an email.
[0013] <Hardware Configuration of MFP> FIG. 2 is a block diagram showing the hardware configuration of the MFP 110. The MFP 110 is composed of a control unit 210, an operation unit 220, a printer unit 221, a scanner unit 222, and a modem 223. The control unit 210 is composed of the following units 211 to 219 and controls the overall operation of the MFP 110. The CPU 211 reads and executes various control programs (programs corresponding to various functions shown in the software configuration diagram described below) stored in a ROM 212. The RAM 213 is used as a temporary storage area such as the CPU 211's main memory and work area. Note that in this embodiment, one CPU 211 executes each process shown in the flowcharts described below using one memory (RAM 213 or HDD 214), but this is not limiting. For example, each process may be executed by multiple CPUs or multiple RAMs or HDDs working together. The HDD 214 is a mass storage unit that stores image data and various programs. The operation unit I / F 215 is an interface that connects the operation unit 220 and the control unit 210. The operation unit 220 is equipped with a touch panel, a keyboard, and the like, and accepts operations, inputs, and instructions from the user. Note that touch operations on the touch panel include operations with a person's finger and operations with a touch pen. The printer I / F 216 is an interface that connects the printer unit 221 and the control unit 210. Image data to be printed is transferred from the control unit 210 to the printer unit 221 via the printer I / F 216 and printed on a recording medium such as paper. The scanner I / F 217 is an interface that connects the scanner unit 222 and the control unit 210. The scanner unit 222 optically reads an original placed on a platen or an ADF (Auto Document Feeder), not shown, to generate scanned image data, and inputs the scanned image data to the control unit 210 via the scanner I / F 217. The scanned image data generated by the scanner unit 222 can be printed by the printer unit 221 (copy output), saved in the HDD 214, or sent as a file to an external device such as the MFP linked server 120 via a LAN. The modem I / F 218 is an interface that connects the modem 223 and the control unit 210. The modem 223 communicates image data by facsimile with a facsimile machine (not shown) on the PSTN.Network I / F 219 is an interface that connects control unit 210 (MFP 110) to a LAN. MFP 110 uses network I / F 219 to send scanned image data to MFP-linked server 120 and receive various data from MFP-linked server 120. The hardware configuration of MFP 110 described above is an example, and other components may be included as needed, or some of the components may be omitted.
[0014] <Server hardware configuration> 3 is a block diagram showing the hardware configuration of the MFP collaboration server 120 / storage server 130. The MFP collaboration server 120 and storage server 130 share a common hardware configuration, consisting of a CPU 311, ROM 312, RAM 313, HDD 314, and network I / F 315. The CPU 311 controls the overall operation by reading out control programs stored in ROM 312 and executing various processes. The RAM 313 is used as a temporary storage area such as the main memory and work area of the CPU 311. The HDD 314 is a large-capacity storage unit that stores image data and various programs. The network I / F 315 is an interface that connects the control unit 310 to the Internet. The MFP collaboration server 120 and storage server 130 receive various processing requests from other devices (such as the MFP 110) via the network I / F 315, and return processing results according to the requests.
[0015] <Image processing system software configuration> 4 is a block diagram showing the software configuration of image processing system 100 according to the present embodiment. Below, we will explain the software configurations corresponding to the respective roles of MFP 110, MFP linkage server 120, and storage server 130 that make up image processing system 100. Note that, of the various functions of each device, the following explanation will focus on functions related to the processing of scanning a document, creating a file, and saving it on storage server 130.
[0016] <MFP software configuration> The function modules of the MFP 110 are broadly divided into two: a native function module 410 and an additional function module 420. The native function module 410 is an application that is provided as standard in the MFP 110, whereas the additional function module 420 is an application that is additionally installed in the MFP 110. The additional function module 420 is an application based on Java (registered trademark), and makes it easy to add functions to the MFP 110. Note that other additional applications (not shown) may also be installed in the MFP 110.
[0017] The native function module 410 includes a scan execution unit 411 and a scan image management unit 412. The additional function module 420 includes a display control unit 421, a scan control unit 422, a cooperative service request unit 423, and an image processing unit 424.
[0018] Display control unit 421 displays a user interface screen (UI screen) for accepting various user operations on the touch panel of operation unit 220. The various user operations include, for example, input of login authentication information for accessing MFP linked server 120, scan settings, an instruction to start scanning, file name settings, an instruction to save a file, and the like.
[0019] In response to a user operation performed on the UI screen (for example, pressing the "Start Scan" button), scan control unit 422 instructs scan execution unit 411 to execute a scan process along with scan setting information. In accordance with the scan process execution instruction from scan control unit 422, scan execution unit 411 causes scanner unit 240 to execute a document reading operation via scanner I / F 217 and generates scanned image data. The generated scanned image data is stored in HDD 214 by scanned image management unit 412. At this time, information about a scanned image identifier that uniquely identifies the stored scanned image data is notified to scan control unit 422. The scanned image identifier is a number, symbol, alphabet, or the like that uniquely identifies an image scanned by MFP 110. Scan control unit 422, for example, acquires scanned image data to be converted into a file from scanned image management unit 412 using the scanned image identifier. Then, scan control unit 422 instructs collaboration service request unit 423 to request the MFP collaboration server 120 to perform the processing required for the file conversion.
[0020] Cooperation service request unit 423 requests various processes from MFP cooperation server 120 and receives the responses. The various processes include, for example, login authentication, analysis of scanned images, and transmission of scanned image data. Communication protocols such as REST and SOAP are used for communication with MFP cooperation server 120.
[0021] The image processing unit 424 performs predetermined image processing on the scanned image data to generate an image to be used on the UI screen displayed by the display control unit 421. Details of the predetermined image processing will be described later.
[0022] <Server device software configuration> First, the software configuration of the MFP linked server 120 will be described. The MFP linked server 120 includes a request control unit 431, an image processing unit 432, a storage server access unit 433, a data management unit 434, and a display control unit 435. The request control unit 431 waits to receive a request from an external device and instructs the image processing unit 432, the storage server access unit 433, and the data management unit 434 to execute a predetermined process according to the content of the received request. The image processing unit 432 performs image analysis processes, such as character region detection, character recognition, and similar document determination, as well as image processing processes, such as rotation and tilt correction, on scanned image data sent from the MFP 110. The storage server access unit 433 makes processing requests to the storage server 130. Cloud services expose various interfaces for saving files to storage servers and retrieving saved files using protocols such as REST and SOAP. The storage server access unit 433 uses the exposed interfaces to make requests to the storage server 130. Data management unit 434 holds and manages user information and various setting data managed by MFP linkage server 120. Display control unit 435 receives requests from a web browser running on a PC or mobile terminal (neither of which are shown) connected via the Internet, and returns screen configuration information (HTML, CSS, etc.) required for screen display. The user can check registered user information and change scan settings via the screen displayed in the web browser.
[0023] Next, the software configuration of storage server 130 will be described. Storage server 130 has a request control unit 441, a file management unit 442, and a display control unit 443. Request control unit 441 stands by in a state in which it can receive requests from external devices, and in this embodiment, instructs file management unit 442 to save received files or read saved files in response to requests from MFP-linked server 120. It then returns a response in response to the request to MFP-linked server 120. Display control unit 443 receives a request from a web browser running on a PC or mobile terminal (neither of which are shown) connected via the Internet, and returns screen configuration information (HTML, CSS, etc.) required for screen display. The user can check or obtain saved files via the screen displayed in the web browser.
[0024] <Processing flow of the entire image processing system> FIG. 5 is a sequence diagram showing the flow of processing between devices when a document is scanned by the MFP 110, the resulting scanned image is converted into a file, and the file is saved on a storage server. FIG. 6 is a diagram showing an example of a main menu UI screen (hereinafter referred to as the "main screen") displayed when the MFP 110 is started up. By scanning a document into a file and installing a dedicated application required for using a cloud storage service on the MFP 110, a "Scan and save to cloud storage" button 601 appears on the main screen 600. When a user presses the "Scan and save to cloud storage" button 601 from the menu buttons displayed on the main screen 600, a series of processes shown in the sequence diagram of FIG. 5 begins. Below, the interactions between devices will be explained in chronological order according to the sequence diagram of FIG. 5. In the following explanation, the symbol "S" represents a step.
[0025] MFP 110 displays on operation unit 220 a UI screen (hereinafter referred to as the "login screen") for inputting login authentication information for accessing MFP linked server 120 (S501). An example of the login screen is shown in Fig. 7. When a user inputs a pre-registered user ID and password into input fields 702 and 703 on login screen 700 and presses "Login" button 701, a login authentication request is sent to MFP linked server 120 (S502).
[0026] Upon receiving the login authentication request, MFP linkage server 120 performs authentication processing using the user ID and password included in the request (S503). If the authentication processing confirms that the user is an authorized user, MFP linkage server 120 returns an access token to MFP 110. Thereafter, by sending this access token together with various requests made from MFP 110 to MFP linkage server 120, the currently logged-in user can be identified. In this embodiment, completing login to MFP linkage server 120 also completes login to storage server 130. For this purpose, the user associates in advance, via a web browser or the like on a PC (not shown) on the Internet, the user ID for using the MFP linkage service with the user ID for using the storage service. As a result, if login authentication to MFP linkage server 120 is successful, login authentication to storage server 130 is also completed at the same time, eliminating the need for the user to log in to storage server 130. MFP linkage server 120 can also handle requests for storage services from users who have logged in to its own device. The login authentication method may be a generally known method (Basic authentication, Digest authentication, authorization using OAuth, etc.).
[0027] Once the login is complete, the MFP 110 displays a UI screen for scan settings (hereinafter referred to as the "scan settings screen") on the operation unit 220 (S507). FIG. 8 shows an example of the scan settings screen. The scan settings screen 800 includes a "Start Scan" button 801, a color settings field 802, and a resolution settings field 803. The "Start Scan" button 801 is a button for instructing the start of scanning a document placed on the platen (assuming, in this embodiment, a document such as an estimate or invoice). The color settings field 802 sets the color mode to be used during scanning. For example, the color mode can be selected from options such as full color or monochrome. The resolution settings field 803 sets the resolution to be used during scanning. For example, the resolution can be selected from options such as 600 dpi or 1200 dpi. Note that the color mode and resolution are merely examples of setting items; not all of these items need to be present, and other setting items may also be present. Furthermore, the color mode and resolution options may be limited to only the setting values required by the storage service. The logged-in user sets detailed conditions for the scan process via scan setting screen 800. After completing the scan settings, the logged-in user places the document to be scanned on the platen of MFP 110 and presses "Start Scan" button 801 to execute scanning (S505). This generates image data that is a digital version of the paper document. After the scan is complete, MFP 110 sends the image data obtained by the scan to MFP linked server 120 along with an analysis request for the image data (S506).
[0028] In MFP linked server 120, upon receiving the request to analyze the scanned image, request control unit 431 instructs image processing unit 432 to execute image analysis processing (S507). At that time, request control unit 431 returns a request ID that can uniquely identify the received analysis request to MFP 110. An example of a request ID is shown in FIG. 9A. Meanwhile, upon receiving the instruction to execute analysis processing, image processing unit 432 executes analysis processing on the scanned image (S508). This image analysis processing first detects character regions present in the scanned image. Character regions can be detected using a known method, such as extracting rectangular regions presumed to be characters from an image binarized using a certain threshold value. Next, character recognition processing (OCR: Optical Character Recognition) is performed on each character region found by the character region detection processing. Then, processing (similar document determination processing) is performed to determine whether the document currently being scanned is similar to documents scanned in the past. This similar document determination uses layout information indicating the location of each character region present in the scanned image. Specifically, the layout information of a previously scanned image is compared with the layout information of the current scanned image to determine whether the layout of the character areas is similar. This is based on the assumption that if the layout of the character areas is similar, it can be assumed that the forms were created using the same format. The layout information of previously scanned images used in this determination of similar forms is accumulated by the "form learning process" described below. The results obtained by these image analysis processes are passed to the request control unit 431. Note that in this embodiment, the similarity of forms is determined based solely on the degree of similarity in the layout of the character areas. However, for example, the type of form (quote, invoice, etc.) may be identified from the OCR results, and the obtained type information may also be taken into account to determine the similarity.
[0029] While the image analysis process is being performed, MFP 110 uses the request ID described above to periodically (e.g., every several hundred milliseconds to several milliseconds) query MFP linked server 120 about the processing status (S509 to S509'). This query is repeated until an image analysis process completion response (S510) is obtained from MFP linked server 120. When MFP linked server 120 receives the query about the processing status, it checks the progress of the image analysis process corresponding to the request ID, and if the process is not complete, it returns a response indicating that the process is in progress (see FIG. 9(b)). If the process is complete, it returns a response indicating that the process is complete (see FIG. 9(c)). The "status" in this response contains a character string indicating the current processing status; specifically, if the process is being performed by MFP linked server 120, it contains "processing," and if the process is complete, it contains "completed." Note that a character string indicating another status, such as "failed" if the process failed, may also be included. As shown in FIG. 9(c), the response upon completion of processing includes status information as well as information about the analysis results of the scanned image.
[0030] After receiving the processing completion response, MFP 110 uses the URL included in the response that indicates the storage destination of the image analysis results to request the results of the image analysis processing from MFP linked server 120 (S511). The URL in this case includes "ocrResultUrl" and "matchingResultUrl." In response to the request, request control unit 431 of MFP linked server 120 returns result information of the image analysis processing.
[0031] MFP 110 then uses the acquired result information to display a UI screen for setting a file name (hereinafter referred to as the "file name setting screen") (S512). FIG. 10 shows an example of the file name setting screen. When the user sets a file name and presses send button 1007, MFP 110 first sends to MFP linked server 120 a learning request that includes information about the input operation performed by the user when setting the file name (setting input information) (S513). FIG. 11 shows an example of the learning request. The learning content is specified in "learningContent," which includes a "rectInfoArray" related to the character area used in the file name and a "metadataArray" related to metadata. "rectInfoArray" contains coordinate information of the character area used when setting the file name. "metadataArray" contains information about the character area corresponding to the character string used in the file name and information about the delimiter (separator) associated with the character string. The example in FIG. 11 shows that the file name is structured in the following order: a character string in the character region "fileRegion0" at the beginning, a delimiter character thereafter, and a character string in the character region "fileRegion1" at the end.
[0032] In MFP linkage server 120 that has received the learning request, request control unit 431 instructs image processing unit 432 to execute form learning processing (S514). In response to this instruction, image processing unit 432 saves the layout information of each character area present in the scanned image and the input information (file name configuration information) at the time of file name setting that is included in the learning request received in S513 (S515).
[0033] After that, the MFP 110 transmits a storage request for the scanned image to the MFP cooperation server 120 together with the data of the scanned image and information such as the file name set at the time of file creation (S516). In the MFP cooperation server 120 that has received the storage request, the request control unit 431 starts the file generation process and returns a response indicating that the storage request has been received normally to the MFP 110. The MFP 110 that has received the response ends the process and returns to the display state of the scan setting screen (S504). On the other hand, in the MFP cooperation server 120, information on the file format is acquired from the previously registered scan settings, and the scanned image is filed according to the file format (S517). At this time, the generated file will be attached with the file name specified in the storage request. The scanned image file thus generated is transmitted to the storage server 130 and stored (S518).
[0034] The above is the processing flow of the entire image processing system.
[0035] <Details of MFP processing> Subsequently, focusing on the operation of the MFP 110, the processing when using the storage service in the above image processing system will be described in detail. FIG. 12 is a flowchart showing the processing flow in the MFP 110. This series of processes is realized by the CPU 211 in the control unit 210 executing the control program stored in the HDD 214, and is started in response to the pressing of the "Scan and Save to Cloud Storage" button 601 on the main screen 6 previously mentioned. Hereinafter, it will be described in detail along the flowchart shown in FIG. 1 In addition, the symbol "S" at the beginning of each process means a step.
[0036] In S1201, the display control unit 421 displays the above-mentioned login screen 700. When the user name and password are input into the input fields 702 and 703 on the login screen 700 respectively and the pressing of the "Login" button 701 is detected, the process proceeds to S1202.
[0037] In S1202, cooperation service request unit 423 sends a login authentication request to MFP cooperation server 120. When the login authentication by MFP cooperation server 120 confirms that the user is an authorized user, cooperation service request unit 423 receives an access token from MFP cooperation server 120.
[0038] In S1203, in the MFP 110 that has received the access token, the display control unit 421 displays the above-mentioned scan setting screen 800 on the operation unit 220. When the logged-in user places a document on the platen and detects that the "Start Scan" button 801 has been pressed, the display control unit 421 notifies the scan control unit 422 of this fact.
[0039] In S1204, upon receiving the notification, the scan control unit 422 instructs the scan execution unit 411 to execute a scan process. In response to this instruction, the scan execution unit 411 scans the document placed on the platen. In the explanation of this flow, a document (more specifically, an estimate) will be used as an example to be scanned. As a result, a scanned image of the estimate as shown in FIG. 13 is obtained. The scanned image data generated by the scan is stored in the image data storage unit 412, and an identifier that can identify the scanned image is notified to the scan control unit 421. At this time, a message screen (not shown) indicating that scanning is in progress may be displayed on the operation unit 220.
[0040] Next, in S1205, cooperative service request unit 423 acquires the scanned image data via scan control unit 421 and sends it together with an analysis request to MFP cooperative server 120. Based on the analysis request, MFP cooperative server 120 performs the above-described image analysis process on the received scanned image data. At this time, a request ID is returned from request control unit 431 of MFP cooperative server 120.
[0041] In S1206, linked service request unit 423, which has acquired the request ID, sends a processing status acquisition request together with the request ID to MFP linked server 120. Based on the acquisition request, MFP linked server 120 returns a response to MFP 110 according to the progress status of the image analysis processing identified by the request ID.
[0042] In S1207, if the status in the received response is “processing,” indicating that processing is in progress, cooperation service request unit 423 returns to S1206. Then, after waiting for a predetermined time to elapse, cooperation service request unit 423 again sends a processing status acquisition request to MFP cooperation server 120. If the status in the received response is “completed,” indicating that processing is complete, cooperation service request unit 423 proceeds to S1208. Here, the image analysis result information included in the response upon processing completion in this embodiment will be described with reference to the above-mentioned FIG. 9C. The image analysis result information includes three types of information: “ocrResultUrl,” “matchingResultUrl,” and “formKeys.” “ocrResultUrl” is URL information for acquiring the results of the OCR processing, which is part of the image analysis processing. “matchingResultUrl” is URL information for acquiring the results of the similar forms determination processing, which is part of the image analysis processing. “formKeys” is information on setting values for setting properties such as file name, metadata, and folder path to the scanned image, and is preset in MFP cooperation server 120. “formKeys” includes the following information: key: A value that uniquely identifies the setting value to be set on the scanned image keyType: Value indicating the type of the key setting value value: the initial value of the setting (for example, "scan" to indicate that it is a scanned image) type: A value indicating the type of value to be entered in the setting (For example, "string" for strings, "number" for numbers, "date" for dates, etc.) displayName: Display name when displaying the setting screen on the MFP touch panel required: A value indicating whether the setting value must be entered. · multiSelect: Value indicating whether to use a string with multiple character areas in the file name separator: The content of the separator that connects the strings when using multiple character regions autoInput: A value indicating whether to automatically input the initial file name.
[0043] FIG. 9(c) shows "formKeys" when setting a file name for a scanned image. Using the case of FIG. 9(c) as an example, we will explain how the values of "value," "displayName," "required," and "multiSelect" affect the file name setting screen (FIG. 10) displayed in the next step S1209. Currently, the content of "value" is empty. In this case, no initial value is displayed in the file name input field 1001 of the file name setting screen 1000. Also, "displayName" is set to "file name." In this case, the string "file name" indicating the title or label of the setting is displayed at the top of the screen (in this example, in white text), as in the file name setting screen 1000 of FIG. 10. Also, "required" is set to "true." In this case, if the file name input field 1001 is empty and no string is entered, the send button 1007 cannot be pressed. Also, "multiSelect" is set to "true." In this case, it becomes possible to select multiple character areas detected from the scanned image, thereby enabling the creation of a file name consisting of a concatenation of character strings corresponding to each character area. The above-mentioned contents included in these “formKeys” are set by the user via a file name condition setting screen displayed by display control unit 435 of MFP linked server 120. FIG. 14 shows an example of the file name condition setting screen. Check box 1401 in file name condition setting screen 1400 allows the user to select whether to automatically enter a file name using information about the character areas previously used when setting a file name for a scanned image. In setting field 1402, when multiple character strings corresponding to multiple character areas are used in a file name, the user sets the delimiter to be inserted between the character strings from a pull-down menu (e.g., underscore, hyphen, etc.). In this example, an underscore is selected. In setting field 1403, the character string (initial file name) to be presented to the user as a file name candidate is set in an input state before the file name setting screen ( FIG. 10 ) is initially displayed. The contents set in this file name condition setting screen 1400 are retained by data management unit 434 and are referenced when creating a response upon completion of processing.
[0044] In S1208, the cooperation service request unit 423 accesses the URL included in the response upon completion of processing to obtain the image analysis results. In the example of FIG. 9(c), information is stored in "ocrResultUrl" and "matchingResultUrl", so these two URLs are accessed to obtain the image analysis results. Table 1 below shows the coordinates of the character areas detected from the scanned image of FIG. 13 and the character recognition results (recognized character strings) for each character area.
[0045] [Table 1]
[0046] Figure 15 shows the character recognition results for the scanned image in Figure 13, obtained by accessing "ocrResultUrl." "imageWidth" indicates the number of pixels in the X direction (horizontal) of the scanned image being analyzed. "imageHeight" indicates the number of pixels in the Y direction (vertical) of the scanned image being analyzed. "regions" contains coordinate information ("rect") of the character area detected in the scanned image and string information ("Text") corresponding to that character area. "rect" contains information identifying the detected character area, where "x" is the X coordinate of the upper left corner of the character area, "y" is the Y coordinate of the upper left corner of the character area, "width" is the number of pixels in the X (width) direction of the character area, and "height" is the number of pixels in the Y (height) direction of the character area. "text" indicates the string information obtained by OCR processing the character area identified by "rect." This "rect" and "text" information is included for all character areas detected in the scanned image being analyzed. Note that some of this information is omitted in Figure 15.
[0047] Figure 16 shows the similar form determination results for the scanned image in Figure 13, obtained by accessing "matchingResultUrl." "matched" contains the value "true" or "false," indicating whether the similar form determination process described above found a previously scanned image similar to the scanned image currently being analyzed. A value of "true" indicates that the currently scanned form is similar to a previously scanned form, while a value of "false" indicates that they are not similar. If a similar form is found, a value (ID value) that uniquely identifies the previously scanned image of a similar form is contained in "formId." On the other hand, if no similar form is found, a newly created ID value that uniquely identifies the scanned image of the currently scanned form is entered. This newly created ID value is then used to learn the input information (file name configuration information) when setting the file name for a scanned image of a form for which no similar form has existed in the past. "matchingScore" contains a value indicating the degree of match if a similar form is found. In this embodiment, the similarity is expressed as a real number ranging from 0 to 1 that indicates the degree of match between the layout information of the character area in the previous scanned image and the layout information of the character area in the current scanned image, with a larger value indicating a more similar form. "rectInfoArray" contains information indicating the character area in the scanned image being analyzed currently that corresponds to the character area used when setting the file name for the scanned image of the previous similar form.
[0048] In the example of Figure 16, a file name was previously set using the two character strings "Quotation" and "Shinagawa Co., Ltd." for the scanned image of Figure 13 obtained by scanning an estimate, and that input information was learned. After that, an estimate created in the same format was scanned to generate the scanned image shown in Figure 17, and the scanned image was subjected to similar form determination processing, resulting in it being determined to be similar to the scanned image of Figure 13. The example of Figure 16 shows a state in which the information on the character area used when setting the file name for the scanned image of Figure 13 has been stored as information on the character area to be automatically entered. The process up to obtaining the results of the similar form determination processing shown in Figure 16 is described below.
[0049] Assume that the learning results based on the learning request shown in Figure 11 are stored in the data management unit 434. The similar form determination process uses the coordinate information of the character areas of "Quotation" and "Shinagawa Co., Ltd." used in the previous file name setting to identify character areas in the current scanned image that partially overlap with the character areas indicated by the coordinate information. The coordinate information of the character areas identified as partially overlapping and the character string of the character areas are stored in "text" of "rectInfoArray." "key" contains a value that uniquely identifies the character area used for automatic file name entry. "region" stores the coordinate information of the character area uniquely identified by "key" and the string obtained by OCR processing of the character area. "rect" contains information that uniquely identifies the character area uniquely identified by "key." In this case, "x" is the X coordinate of the upper left corner of the character area, "y" is the Y coordinate of the upper left corner of the character area, "width" is the number of pixels in the X (width) direction of the character area, and "height" is the number of pixels in the Y (height) direction of the character area. "text" contains information about the character string obtained by OCR processing of the character area specified by "rect." "metadataArray" stores information indicating the order of the character areas used when automatically entering a file name and where the delimiters will be placed. If property information such as metadata other than the file name is set, the necessary information is added to "rectInfoArray" and "metadataArray." "key" stores a value that uniquely indicates the setting value to be set for the scanned image. "keyType" stores a value indicating the type of the "key" setting value. When used as a file name, "key" stores "filename" and "keyType" stores "filename." "value" stores information about the character area and delimiters used for the "key" value. In the example in Figure 16, the character string in the character area with the "key" of "fileRegion0" in "rectInfoArray" is the first, the delimiter is the second, and the character string in the character area with the "key" of "fileRegion1" is the third.Then, the files are automatically input in this order into the file name input field 1001 and displayed as the initial file name.
[0050] In S1209, the display control unit 421 displays the file name setting screen 1000 described above on the operation unit 220, allowing the user to set a file name for the scanned image. Details of this file name setting process will be described later.
[0051] In S1210, the cooperation service request unit 423 refers to the response to the processing status request of S1206, determines whether automatic input of file names is set, and determines the next processing. Specifically, the value of "autoInput" included in the response at the time of processing completion shown in the above-mentioned Fig. 9(c) is referenced, and if it is "true", which means that automatic input is set, the process proceeds to S1211. On the other hand, if it is "false", which means that automatic input is not set, the process proceeds to S1214.
[0052] In S1211, the cooperation service request unit 423 determines whether a scanned image similar to the current scanned image existed in the past based on the image analysis result acquired in S1208. Specifically, the value of "matched" included in the result of the similar form determination process shown in Fig. 16 above is referenced, and if the value is "true" indicating that a similar image exists among the past scanned images, the process proceeds to S1212. On the other hand, if the value is "false" indicating that a similar image does not exist, the process proceeds to S1214.
[0053] In S1212, the cooperation service request unit 423 determines whether the user has made any changes to the initial file name that was automatically entered in the file name input field 1001 during the file name setting process of S1209. Changes in this case include, for example, changing the character area used in the current file name from the character area used in the initial file name, or adding or deleting delimiters. This determination is made by comparing the value of the “value” of the “metadataArray” included in the result of the similar form determination process of FIG. 16 with the information entered in the file name input field 1001 after the file name for the current scanned image was set. If the comparison reveals a difference, it is determined that a change has been made to the initial file name, and the process proceeds to S1213. If the comparison reveals a match, it is determined that no change has been made to the initial file name, and the process proceeds to S1214. Note that even if the user has deleted the initial character string of the file name that was automatically entered using the “value” of the “formKeys,” the input information may not be considered to have changed, and the process may proceed to S1214.
[0054] In S1213, cooperation service request unit 423 sends to MFP cooperation server 120 a learning request for input information at the time of setting (see FIG. 11 described above) that indicates the structure of the file name set for the current scanned image. In this case, the value of “formId” included in the similarity determination process result of the image analysis results acquired in S1208 is used as “formId.” In the example of FIG. 16, the value of “formId” is “aaaaaaaa-ffff-49ab-acf8-55558888eeee,” so this is stored in the learning request. Furthermore, “learningContent” stores the content of the input information used when setting the file name. First, “rectInfoArray” stores the coordinate information of the character areas to which the character string used in the file name belongs, for the number of character areas. Then, “metadataArray” stores information about the character areas and delimiters used to set the file name. Referring to Table 1 above, the user's operations at this time are as follows: In preview area 1002 of file name setting screen 1000, the user first touches number 1, "Quotation." Next, the user touches number 8, "Shinagawa Co., Ltd.", and finally presses send button 1007. Upon receiving the learning request, MFP linked server 120 stores the input information based on these user operations and will use the stored input information from the next image analysis process onwards. After sending the learning request, if a response is received from MFP linked server 120 indicating that the learning request has been processed successfully, the process proceeds to S1214.
[0055] In S1214, linked service request unit 423 associates the scanned image data to be processed with the file name set in S1209 and transmits them to MFP linked server 120. This processing ends when this transmission is complete. Note that in this embodiment, the scanned image data and its file name are transmitted last, but they may also be transmitted to MFP linked server 120 in parallel with the end of the scan processing and the saving of the scanned image data by scanned image management unit 412.
[0056] The above is the flow of processing when using a storage service focusing on the operation of the MFP 110. Note that the above description assumes a situation in which a file name is set when a single scanned image obtained by scanning a single estimate is to be filed. However, this embodiment is not limited to this, and can also be applied to a situation in which a file name is set when multiple scanned images obtained by scanning multiple documents are to be filed. In this case, a button for turning pages may be provided in the file name setting screen 1000, so that a file name can be set from the text area of the scanned image of the second or third page.
[0057] (File name setting process) Next, the file name setting process executed by the display control unit 421 in the above-mentioned S1209 will be described in detail with reference to the flowcharts shown in FIGS.
[0058] In S1801, a file name (initial file name) that is initially displayed in the file name input field 1001 of the file name setting screen 1000 described above is generated. The initial file name is generated using the following procedure. First, the response received upon completion of the processing described above is referenced, and if any value is entered in the "value" of "formKeys," that value is set to the beginning of the file name. For example, if the string "scan" is entered as the "value" of "formKeys," "scan" is set to the beginning of the initial file name. Next, a predetermined string is set according to the similar form determination result obtained by accessing "matchingResultUrl." In other words, if the value of "matched" is "true" and the "matchingScore" is a certain value or greater (for example, 0.6 or greater), a string is set according to the file name structure specified in the "value" of "metadataArray." Specifically, the strings in the character areas specified by "rectInfoArray" are set in the order specified in "value." In the example of the similar forms determination result in FIG. 16, the value of "matched" is "true" and the "matchingScore" is "0.74...", which is a value above a certain level. The "value" of "metadataArray" specifies that the sequence is "fileRegion0" first, followed by "separator", and finally "fileRegion1". Therefore, the "text" value of "fileRegion0" ("quote"), the "separator" value included in the processing completion response ("_ (underscore)"), and the "text" value of "fileRegion1" ("Shimomaruko Co., Ltd.") are concatenated in that order. In this way, "quote_Shimomaruko Co., Ltd." is generated as the initial file name. If the "value" of "formKeys" contains a value (for example, "scan_"), the initial file name will be "scan_quote_Shimomaruko Co., Ltd." with that character prepended. In the similar form determination results, if the "matched" value is "false" and the "matchingScore" is less than a certain value, and a string is contained in the "value" of "formKeys," that string will be used as the initial file name. Also, if the "value" of "formKeys" does not contain a string, there will be no initial file name (it will be left blank). In this embodiment, the two values of "matched" and "matchingScore" are used as the conditions for generating the initial file name, and the information specified in "rectInfoArray" is in the order of the "value" of "metadataArray". However, this is not limited to this, and only one of the results may be used as the condition. For example, the initial file name may be generated only on the condition that the value of "matched" is "true", or the file name may be generated only on the condition that the value indicating the degree of similarity is equal to or greater than a threshold.
[0059] In S1802, the degree to which the scanned image is reduced when initially displayed in the preview area 1002 of the file name setting screen 1000 (hereinafter referred to as the "initial scaling factor") is determined. This initial scaling factor is determined using the character recognition results obtained by accessing "ocrResultUrl." First, the leftmost and rightmost character areas are determined from all character areas detected in the scanned image. In this case, the leftmost character area is the character area with the smallest x-coordinate value among all character areas. The rightmost character area is the character area with the largest sum of the x-coordinate value and the character area width value among all character areas. The initial scaling factor is determined so that the left side of the leftmost character area thus determined coincides with the left side of the preview area 1002, and the right side of the rightmost character area coincides with the right side of the preview area 1002. Note that if the edges of the determined character area and the preview area are perfectly aligned, it may be difficult for the user to select (press) the character area if it is small. Therefore, the initial scaling factor may be determined with a certain margin. For example, the initial scaling factor may be determined so that a 10-pixel margin is secured from the left edge of the character area that will be displayed on the leftmost side of the preview area 1002 and from the right edge of the character area that will be displayed on the rightmost side. Furthermore, if UI components such as various operation buttons are superimposed on the preview area 1002, the initial scaling factor may be determined so that the character area does not overlap the UI components. Specifically, the width of the UI components may be subtracted from the width of the preview area 1002, and the initial scaling factor may be determined so that the leftmost and rightmost character areas fit within the width of the remaining area. In the example of the file name setting screen 1000 in Figure 10 mentioned above, there are three operation buttons (enlarge button 1004, reduce button 1005, and return button 1006) in the preview area 1002, so the initial magnification ratio is determined so that the text area does not overlap these buttons.Furthermore, header information related to the printing process may be printed near the top, bottom, left, and right edges of the document to be scanned, and it is unlikely that the character string in the character area corresponding to such header information will be adopted as part of the file name. Therefore, character areas that exist within a certain distance (for example, 50 pixels) from the top, bottom, left, and right edges of the scanned image may be excluded when determining the leftmost and rightmost character areas.
[0060] In S1803, it is determined which portion of the scanned image after scaling at the initial scaling factor determined in S1802 will be initially displayed in preview area 1002 of file name setting screen 1000. In the scanned image after scaling at the scaling factor determined in S1802, the width of the leftmost and rightmost character areas approximately matches the width of preview area 1002. Therefore, first, the portion to be initially displayed (hereinafter referred to as the "initial display portion") is determined so that the left and right character areas exactly fit within preview area 1002 in the horizontal direction, for example, so that the left edge of the leftmost character area coincides with the left edge of preview area 1002. Then, the initial display portion in the vertical direction is determined so that the topmost character area is positioned near the top edge of preview area 1002. At this time, if margins were taken into consideration when determining the initial scaling factor, the initial display portion can be determined taking the margins into consideration as well. For example, character areas within a certain distance (e.g., 50 pixels) from the top of the scanned image may be excluded from the display, and the topmost character area among the remaining character areas may be displayed at the top of the preview area 1002. FIG. 20 is a diagram showing the initial display area determined for the scanned image of FIG. 13. The line frame in FIG. 20 indicates the range of the scanned image initially displayed in the preview area 1002. Note that as a result of determining the initial display area as described above, if a similar form exists and an initial file name is automatically entered in the file name input field 1001, the character area of the character string used in the initial file name may not be displayed in the preview area 1002. In this case, for example, the initial display area may be determined so that the character area of the character string used in the initial file name is displayed in the center of the preview area 1002. At this time, the character string constituting the initial file name automatically entered in the file name input field 1001 and the character area of the character string used in the initial file name may each be highlighted (e.g., by changing the color). FIG. 21 is an example of the scan setting screen 1000 when the character string "Kawasaki Co., Ltd." is automatically entered into the initial file name for the scanned image of FIG.In this example, the text area corresponding to the character string "Kawasaki Co., Ltd." is positioned in the center of the preview area 1002, and the color of this text area and the text string "Kawasaki Co., Ltd." entered in the file name input field 1001 are displayed in different colors. If the text size of the highlighted text area is small, the initial scaling factor may be adjusted to provide an appropriate text size. This adjusted initial scaling factor can be obtained, for example, based on the size of the touch panel of the operation unit 220 and the range initially displayed in the preview area 1002. Specifically, the character size in points is calculated based on the height of the text area of the character string used in the initial file name, and the initial preview scaling factor is adjusted so that the calculated point size is equal to or greater than a threshold value (above a predetermined size).
[0061] In S1804, using the processing results of S1801 to S1803, the file name setting screen 1000 described above is displayed on the operation unit 220. The user sets a file name for the scanned image to be saved in the storage server 130 using the file name setting screen 1000 shown in Fig. 10. This will be explained in detail below.
[0062] 1) File name input field When the user touches the file name input field 1001, the display on the touch panel of the operation unit 220 switches to a soft keyboard, allowing the user to input any characters or edit the automatically input character string. For example, when the user touches the character string portion of the file name input field 1001 in which "Kawasaki Co., Ltd." has been automatically input, as in the example of FIG. 21 described above, the soft keyboard 2200 shown in FIG. 22 is displayed. At this time, as shown in FIG. 22, the input area 2201 is displayed with the touched character string entered. This allows the user to operate the soft keyboard 2200 to correct the touched character string "Kawasaki Co., Ltd." Furthermore, when the file name input field 1001 in which no character string has been entered, as shown in FIG. 10, the soft keyboard 2200 is displayed with the input area 2201 empty, allowing the user to operate the soft keyboard 2200 to enter any character string into the file name input field 1001.
[0063] 2) Preview area As described above, the preview area 1002 displays a specific portion of the scanned image after scaling. When a user touches and selects a text area in the preview area 1002, the text in the selected text area is added to the file name input field 1001. To indicate that the text area has been selected, the selected text area may be highlighted by underlining, surrounding it with a frame, adding color, or other means. The display area may also be resized or the display magnification may be changed so that the selected text area is centered. When multiple text areas are selected, the display mode for each text area may be different, such as by adding a different color to each text area. When the user touches a selected text area again, the selection is canceled (i.e., the lines and colors added to the text area are removed and the text in the file name input field 1002 is restored to its original state), and the text corresponding to the selected text area is also deleted. In this embodiment, when a text area is not selected, a frame or the like indicating each text area is not displayed in the preview area 1002. However, a frame or the like indicating each character area may be displayed in advance so that the user can recognize the touchable portion, and the color may be changed when the character area is selected. Also, the user may be able to switch whether or not to display the character area so that it can be recognized by using a button or the like. The user can then move the displayed image portion by swiping in preview area 1002.
[0064] 3) Various operation buttons The button 1003 with an "x" mark is a delete button for deleting the last character string of the character string being entered in the file name input field 101. The button 1004 with a "+" mark is a zoom-in button for enlarging the image displayed in the preview area 1002 and is used when, for example, wanting to display each character area larger. The button 1005 with a "-" mark is a zoom-out button for reducing the image displayed in the preview area 1002 and is used when, for example, wanting to display a wider area. When zooming in or out, the display position is adjusted so that the coordinates of the center of the preview area 1002 remain the same as before zooming in or out. The button 1006 with a "U-turn arrow" mark is a return button for returning the preview area 1002 to its initial display state after moving the display position by a swipe operation or changing the display magnification by pressing the zoom-in button 1004 or the zoom-out button 1005. "Send" button 1007 is a button for converting the scanned image into a file with the file name set on file name setting screen 1000 and saving the file in storage server 130. In response to pressing this "Send" button 1007, the scanned image data is sent to MFP linked server 120 together with information about the set file name.
[0065] In S1805, operation guidance is displayed within the file name setting screen 1000 in its initial display state. This operation guidance allows even a first-time user to easily understand that a file name can be set by touching and selecting a character area in the preview area 1002. FIG. 23 shows a state in which a message 2301 serving as operation guidance is superimposed on the preview area 1002 of the file name setting screen 1000 shown in FIG. 10. Because such operation guidance is unnecessary for users who already know how to operate the screen, the operation guidance is hidden upon detection of a user operation, such as a touch operation or a swipe operation. Furthermore, the top of a typical document often contains characters or numbers that have important meanings to the document, such as the document title, company name, form number, or date. Therefore, to prevent the operation guidance from overlapping with the character areas of these important character strings, the image portion displayed in the preview area 1002 may be shifted downward, depending on the attributes of the character strings. Furthermore, if the operation guidance overlaps any character area or comes within a certain distance of the character area, the display position of the operation guidance can be determined so that it does not overlap or come too close. In this way, by flexibly determining the display position of the operation guidance rather than fixing it, the user can easily select a character area.
[0066] S1806 is a process for monitoring whether or not a user operation has been performed. The presence or absence of a user operation is checked at predetermined intervals, and if any user operation is detected, the process proceeds to S1807. Then, in S1807, as described above, the operation guidance is hidden.
[0067] Steps S1808 to S1815 are determination steps for determining the next process depending on the content of the detected user operation. Note that once the process corresponding to the detected user operation is completed, the process returns to step S1806 and waits for the next user operation to be detected.
[0068] In S1808, it is determined whether the detected user operation was a touch operation on any of the character areas in the preview area 1002. Specifically, first, the coordinates of the touched position are converted to correspond to the coordinates of the scanned image. Then, if the converted coordinates are included in any of the character areas identified by "regions" in the character recognition result (see FIG. 15), it is determined that the operation was a touch on a character area. If the result of the determination is that the operation was a touch on a character area, the process proceeds to S1816, and if the operation was not a touch on a character area, the process proceeds to S1809. If a character area is touched, in S1816, it is determined whether the touched character area is already selected. If the touched character area is an unselected character area, the process proceeds to S1817, and if the touched character area is a selected character area, the process proceeds to S1818.
[0069] In step S1817, the character string in the touched character area is added to the file name input field 1001, and the character area is highlighted to indicate that it has been selected. If no other character strings have been entered in the file name input field 1001, the character string is added as is. The fact that the character area was used to set the file name is then stored as input information for the file name. On the other hand, if a character string from another character area has already been entered in the file name input field 1001, a delimiter is added, and then the character string from the touched character area is added. In this case, in addition to the fact that the character area was used to set the file name, the insertion of a delimiter between the character strings, such as "first character area," "delimiter," and "second character area," is also stored. Figure 24 shows the file setting screen 1000 in which the character area recognized as "quote" is first selected, followed by the character area recognized as "Shimomaruko Co., Ltd." Two character strings corresponding to the order of the touched character areas are entered in the file name input field 1001, with an underscore inserted between the two character strings as a separator.
[0070] In S1818, the character string in the touched character area is deleted from file name input field 1001, the highlighting of the character area indicating that it has been selected is canceled, and the display returns to the normal state indicating that it has not been selected. If the character string includes a delimiter, the delimiter is also deleted. For example, assume that the file name structure used to generate the initial file name is ["first character area," "delimiter," "second character area"]. In this case, if the user touches the character area that is the "first character area," the delimiter is deleted along with the character string in the first character area, and only the character string in the "second character area" remains in file name input field 1001.
[0071] In S1809, if the detected user operation is not a touch on the character area, it is determined whether the detected user operation is a swipe operation within the preview area 1002. If a swipe operation is detected, the process proceeds to S1819; otherwise, the process proceeds to S1810.
[0072] In S1819, a process is executed to move the image portion displayed in preview area 1002 in the swipe direction. Specifically, the image portion displayed in preview area 1002 is updated according to the amount of movement of the user's finger on the touch panel. This process may be performed only when a touch operation is detected in an area other than the character area in preview area 1002. Furthermore, even if a touch operation is detected in the character area, it may be treated as a swipe operation rather than a touch on the character area depending on the amount of subsequent movement of the user's finger.
[0073] In S1810, it is determined whether the detected user operation was a press of the enlarge button 1004 or the reduce button 1005. If it was a press of the enlarge button 1004 or the reduce button 1005, the process proceeds to S1820, and if not, the process proceeds to S1811.
[0074] In S1820, a process is executed to enlarge or reduce the image portion displayed in the preview area 1002. Specifically, if the enlarge button 1004 is pressed, the magnification of the scanned image is increased by a certain amount, and if the reduce button 1005 is pressed, the magnification of the scanned image is decreased by a certain amount. The certain amount here is arbitrary, but is, for example, about 10% based on the current magnification. In this case, if an initial magnification or a magnification at which the width / height of the scanned image matches the width / height of the preview area 1002 exists before the certain amount of enlargement or reduction is performed, the magnification may be fixed at that initial magnification. Note that the scanned image is not reduced below a magnification (minimum magnification) at which the entire scanned image fits within the preview area 1002, and is controlled so as not to be enlarged above a magnification (maximum magnification) at which the smallest character area becomes a certain size.
[0075] In S1811, it is determined whether the detected user operation was a press of the return button 1006. If it was a press of the return button 1006, the process proceeds to S1821, and if not, the process proceeds to S1812.
[0076] In S1821, processing is executed to return the preview area 1002 to its initial display state. Specifically, the magnification ratio of the scanned image displayed in the preview area 1002 is returned to the initial magnification ratio determined in S1802, and further, processing is executed to return the display area in the preview area 1002 to the initial display area determined in S1803. At this time, if the initial magnification ratio or the initial display area has been adjusted, it is desirable to return them to the initial magnification ratio and initial display area after the adjustments.
[0077] In S1812, it is determined whether the detected user operation was a touch operation on the character string input in the file name input field 1001. At this time, if a touch operation on the blank area after the character string input in the file name input field 1001 is detected, it can be treated as a touch operation on the last character string. If it is a touch operation on the character string input in the file name input field 1001, the process proceeds to S1822, and if not, the process proceeds to S1813.
[0078] In S1822, the editing soft keyboard is displayed on the operation unit 220 with the character string that was touched entered in the input area 2201. Assume now that the file name setting screen 1000 is in the state shown in FIG. 24 . In this state, if a touch operation on the character string "Estimate" in the file name input field 1001 is detected, the soft keyboard 2200 is displayed with the character string "Estimate" entered in the input area 2201 of the soft keyboard. Furthermore, if a touch operation on the character string "Shimomaruko Co., Ltd." or the blank area following it is detected, the soft keyboard 2200 is displayed with the final character string, "_Shimomaruko Co., Ltd.", entered in the input area 2201. Note that the operation of the soft keyboard 2200 is the same as that of a general keyboard, and therefore a description thereof will be omitted. The following S1823 is a process for monitoring whether or not a user operation has occurred. The system checks at predetermined intervals whether or not the OK button 2202 on the soft keyboard 2200 has been pressed, and if pressing of the OK button 2202 is detected, the system proceeds to S1824. If a key other than the OK button is pressed, the character string displayed in the input area 2201 is edited according to the pressed key. For example, the user can use the soft keyboard 2200 to correct a character string that has been erroneously recognized in the character recognition process.
[0079] In S1824, it is determined whether a change to delete a delimiter has been made. In this embodiment, this determination is made only when the character string touched in S1812 is displayed with a delimiter in S1822. A character string not displayed with a delimiter is treated as if the delimiter had not been deleted. That is, if the character string is displayed with a delimiter added to its beginning in S1822, it is determined whether the character string has been edited to delete the delimiter based on whether a delimiter exists at the beginning of the character string at the time the OK button 2202 is pressed. For example, if the character string "Shimomaruko Co., Ltd." is touched in S1812, the input area 2201 of the soft keyboard 2200 displays "_Shimomaruko Co., Ltd." with the delimiter added to its beginning, as described above. Therefore, it is determined whether the delimiter has been deleted by checking whether the delimiter remains at the beginning. Also, if the character string "Estimate" is touched in S1812, "Estimate" is displayed in the input area 2201, as described above, and in this case, it is treated as if the change to delete the delimiter has not been made. In the above example, when a delimiter character exists before the character string touched in S1812, the character string with the delimiter character added to the beginning is displayed in input area 2201 in S1822. However, this is not limited to this. For example, when a delimiter character exists after the character string touched in S1812, the same determination can be made in S1824 even if the system is configured to add a delimiter character to the end of the touched character string and display it in input area 2201 in S1822. That is, in the example of FIG. 24, a delimiter character is added to the end of input area 2201 of soft keyboard 2200, such as "Estimate_", in response to a touch operation on the character string "Estimate". In this case, it is sufficient to determine whether the delimiter character has been deleted by checking whether a delimiter character remains at the end in step S1824.
[0080] If it is determined in S1824 that the delimiter has been deleted, the process proceeds to S1825. Then, in S1825, it is stored that the delimiter has been deleted from the file name. For example, suppose the file name structure used to generate the initial file name was ["first character area", "delimiter", "second character area"]. At this time, if the character string corresponding to the "second character area" in the file name input field 1001 is touched and the delimiter is deleted using the soft keyboard 2200, the changed file name structure becomes ["first character area", "second character area"]. Then, the information on this changed file name structure is retained. Next, in S1826, it is determined whether a change has been made to add a delimiter to the file name. If it is determined that a delimiter has been added, the process proceeds to S1827. Then, in S1827, it is stored that the delimiter has been added to the file name. For example, suppose the file name structure used to generate the initial file name was ["first character area", "second character area"]. At this time, if you touch the character string corresponding to the "second character area" in the file name input field 1001 and add a delimiter to the beginning using the soft keyboard 2200, the file name will be structured as follows: ["first character area", "delimiter", "second character area"]. The information about this file name structure will then be retained.
[0081] In step S1828, the display screen of the operation unit 220 is returned from the soft keyboard 2200 to the file name setting screen 1000, and the file name is corrected to the new content. At this time, the display portion of the scanned image may be changed so that the character area corresponding to the corrected character string is centered in the preview area 1002. Even if part of the character string used in the file name is corrected, if the file name structure remains unchanged, no new information about the file name structure is retained. However, if a correction is made by deleting all characters from a certain character string, the file name structure also changes. Therefore, even in this case (although not shown in the flowchart), the structure information of the changed file name is retained. For example, suppose the file name structure used to generate the initial file name was ["first character area," "delimiter," "second character area"]. At this time, suppose the character string corresponding to the "second character area" in the file name input field 1001 is touched and all characters are deleted using the soft keyboard 2200. In this case, the unnecessary delimiter is also deleted, and the changed file name structure changes to ["first character area"], so the information about the changed file name structure is retained.
[0082] In S1813, it is determined whether the detected user operation was a touch operation on the blank file name input field 1001 where no character string has been input. If it was a touch operation on the blank file name input field 1001, the process proceeds to S1829; if not, the process proceeds to S1814.
[0083] In S1829, the soft keyboard for adding a character string is displayed on the operation unit 220 with nothing entered in the input area 2201. The following S1830 is a process for monitoring whether or not a user operation has been performed. The process checks at predetermined intervals whether or not the OK button 2202 on the soft keyboard 2200 has been pressed, and if pressing of the OK button 2202 is detected, the process proceeds to S1831. Then, in S1831, the display screen of the operation unit 220 is returned from the soft keyboard 2200 to the file name setting screen 1000, and the entered character string is added to the file name.
[0084] In S1814, it is determined whether the detected user operation was a press of the Delete button 1003. If the Delete button 1003 was pressed, the process proceeds to S1832; if not, the process proceeds to S1815. In S1832, the last character string of the character string entered in the file name input field 1001 is deleted. For example, if the file name structure used to generate the initial file name is [“first character area”, “delimiter”, “second character area”, pressing the Delete button 1003 deletes the character string corresponding to the “second character area”. As a result, the file name structure after deletion becomes [“first character area 1”], and the file name contains only the character string corresponding to the “first character area”. At this time, the character area corresponding to the deleted character string is returned to a state indicating unselection in the preview area 1002. The information about the changed file name structure is then retained.
[0085] In S1815, it is determined whether the detected user operation was a press of the send button 1007. If the send button 1007 was pressed, this process ends and the process proceeds to S1210 in the flowchart of FIG.
[0086] The above is the content of the file name setting process executed in S1209.
[0087] <Variation 1> In the above-described step S1802 (determining the initial scaling factor), if the average height of each character area displayed as a preview falls below a predetermined threshold value when the initial scaling factor is determined based on the leftmost and rightmost character areas, the initial scaling factor may be changed so that the average height is equal to or exceeds the predetermined threshold value. In this case, the "average height" may be the average for all character areas or the average for a portion of the character areas. Examples of the average for a portion of the character areas include the average height of the character areas displayed in the preview area 1002 at the determined initial scaling factor, or the average height of the character areas in a specific portion of the scanned image (e.g., the upper half). A specific example will be described. Assume that the distance (width) between the left edge of the leftmost character area and the right edge of the rightmost character area is 2000 px, the width of the preview area 1002 is 800 px, and the predetermined threshold value is 15 px. Here, if the average height of all character areas is 60 px, the calculated initial scaling factor is 0.4 (= 800 ÷ 2000). Since the average height of all character areas is 24 px (= 60 × 0.4), which is not less than the predetermined threshold, 0.4 becomes the initial scaling factor. On the other hand, if the average height of all character areas is 30 px, the average height of all character areas is 12 px (= 30 × 0.4). Since this is less than the predetermined threshold, the initial scaling factor is changed to 0.5 (= 0.4 × 15 ÷ 12) so that the average height of all character areas is equal to or greater than the predetermined threshold (here, the same value as the threshold). Figure 25 shows an example of the initial display of the scan setting screen 1000 when the initial scaling factor is adjusted because the average height of the character areas does not satisfy the threshold. In this example, after the initial scaling factor is increased, the display area is determined in step S1803 to match the left edge of the leftmost character area and the top edge of the topmost character area. As a result, the area corresponding to the right side of the form is not included in the display portion, but the visibility of each character area present in the preview area 1002 is ensured.
[0088] <Variation 2> In the above-described S1803 (determining the initial display portion), if there are multiple character areas used in the initial file name, the topmost character area of the used character areas may be displayed in preview area 1002. Alternatively, the semantic type of the character string in each character area may be determined, and the display portion may be adjusted so that the character area that is most likely to be used in the file name is displayed in preview area 1002. Alternatively, the display portion may be determined so that the same number of character areas as a pre-specified number of character areas are displayed in preview area 1002. Furthermore, the display portion may be determined so that the midpoint between the topmost and bottommost character areas of the character string to be used in the initial file name is located in the center of preview area 1002.
[0089] <Variation 3> In the above-described step S1805 (display of operation guidance), if an initial file name based on the file name structure of a similar form is automatically entered in the file name input field 1001, the operation guidance may be displayed so as not to overlap the character area of the character string used in the initial file name. In this case, if multiple character strings are used in the initial file name, it may be difficult to display the operation guidance without overlapping the character areas of those character strings. In such cases, the character area of the first character string in the initial file name may be given priority, and the operation guidance may be displayed overlapping part or all of the character area of the last character string. Furthermore, when setting document properties other than the initial file name, such as metadata, the character area where the operation guidance should not overlap may be determined based on the type of the document property, and the display position of the operation guidance may be determined accordingly. For example, when setting a value for a date-type document property, the operation guidance is displayed so as not to overlap the character area of the date in the target document. Whether the character string corresponding to each character area is a date is determined by whether the character string extracted from the scanned image matches a specific character sequence. For example, if numbers are entered for "yy," "mm," and "dd" in the yy / mm / dd format, it can be determined to be a date.
[0090] <Variation 4> In the above-described S1822 (display of the editing soft keyboard), instead of displaying the touched character string in an input state in the input area 2201, the entire file name may be displayed in an input state. In this case, to prevent the user from misidentifying the character string to be edited, the character string may be highlighted (by changing the color, adding a frame, etc.) to distinguish it from other character strings, or the cursor may be displayed at the end of the character string, so that the range of the character string to be edited can be clearly seen. Also, instead of displaying the editing soft keyboard in response to a touch operation on the character string input in the file name input field 1001, the editing soft keyboard may be displayed after waiting for an additional user operation (for example, pressing a dedicated button not shown).
[0091] <Variation 5> In addition, in the description of this embodiment, when a touch operation on a character area by the user is detected, a process (S1817, S1818) is executed to add or delete the character string in the touched character area to the file name. However, the system response is slow, and it may take some time from the detection of the touch operation until the addition or deletion of the target character string is reflected in the file name. In this case, the user may mistakenly believe that the system is not responding to their touch operation and repeatedly touch the same character area. This may result in repeated addition and deletion of character string in the same character area, making it impossible for the user to stop the process as desired. For example, touching the character string to be deleted multiple times may result in the character string being re-entered. Therefore, to prevent repeated touch operations on the same character area during the addition or deletion process, a new touch operation for addition or deletion on the same character area may not be accepted until the addition or deletion process is completed. At this time, a message indicating that processing is in progress may also be displayed. This prevents the user from adding or deleting character strings unintentionally during the input operation when setting a file name.
[0092] (Other Examples) The present invention can also be realized by supplying a program that realizes one or more functions of the above-described embodiments to a system or device via a network or a storage medium, and having one or more processors in the computer of the system or device read and execute the program.The present invention can also be realized by a circuit (e.g., ASIC) that realizes one or more functions.
Claims
1. A first display control means that displays multiple options on a display means, including options that only show characters indicating the delimiter, for the user to select a delimiter included in the file name, A second display control means that displays on the display means an image which is the source of the file to which the aforementioned file name is assigned, and a field in which characters recognized from an area within the image are displayed. A generation means that generates the file name using the selected delimiter and the character recognized from the area and displayed in the field. It is an application that makes a computer function as such. When the character recognized from the region is displayed in the field, the field is displayed in a state where the displayed character is deleted based on a user operation on the region on the image. An application characterized by the following features.
2. The recognized characters are displayed without the selected delimiters being concatenated. The system can accept user requests to edit the recognized characters that are not concatenated with the selected delimiter. The aforementioned field displays the character after the edits have been applied to the recognized character. The application according to feature 1.
3. The file name is generated using the selected delimiter and the edited characters. The application according to feature 2.
4. A third display control means for displaying the generated file name. The application according to claim 3 for further functioning the computer.
5. The aforementioned file name is generated by horizontally concatenating the selected delimiter and the characters recognized from the area and displayed in the field. The application according to feature 1.
6. The aforementioned options are displayed in a pull-down menu. The application according to feature 1.
7. The character displayed in the options that show only the character indicating the aforementioned delimiter is an underscore. The application according to feature 1.
8. The character displayed in the options that show only the character representing the aforementioned delimiter is a hyphen. The application according to feature 1.
9. The characters recognized from the aforementioned region are characters obtained through character recognition processing applied to that region. The application according to feature 1.
10. The aforementioned file name is generated using the selected delimiter, the character recognized from the area and displayed in the field, and another character different from the delimiter. The application according to feature 1.
11. Based on a user operation specifying a different area from the aforementioned area, the field is displayed with characters recognized from the specified area. The application according to feature 1.
12. A field displaying characters recognized from the region within the image is shown, and the image is displayed with the region highlighted. The application according to feature 1.
13. When the character recognized from the region is displayed in the field, based on a user operation on the region on the image, the displayed character is removed from the field and the field is displayed, and the highlighting of the region is removed and the image is displayed. The application according to feature 8.
14. A third display control means that displays the generated file name on the display means. The application according to claim 1 for further functioning the computer.
15. A first display control means that displays multiple options on a display means, including options that only show characters indicating the delimiter, for the user to select a delimiter included in the file name, A second display control means that displays on the display means an image which is the source of the file to which the aforementioned file name is assigned, and a field in which characters recognized from an area within the image are displayed. A generation means that generates the file name using the selected delimiter and the character recognized from the area and displayed in the field, It has, When the character recognized from the region is displayed in the field, the field is displayed in a state where the displayed character is deleted based on a user operation on the region on the image. An information processing device characterized by the following:
16. The recognized characters are displayed without the selected delimiters being concatenated. The system can accept user requests to edit the recognized characters that are not concatenated with the selected delimiter. The aforementioned field displays the character after the edits have been applied to the recognized character. The information processing apparatus according to feature 15.
17. The file name is generated using the selected delimiter and the edited characters. The information processing apparatus according to feature 16.
18. A third display control means for displaying the generated file name. The information processing apparatus according to claim 17, characterized by having the following features.
19. The aforementioned file name is generated by horizontally concatenating the selected delimiter and the characters recognized from the area and displayed in the field. The information processing apparatus according to feature 15.
20. The aforementioned options are displayed in a pull-down menu. The information processing apparatus according to feature 15.
21. The character displayed in the options that show only the character indicating the aforementioned delimiter is an underscore. The information processing apparatus according to feature 15.
22. The character displayed in the options that show only the character representing the aforementioned delimiter is a hyphen. The information processing apparatus according to feature 15.
23. The characters recognized from the aforementioned region are characters obtained through character recognition processing applied to that region. The information processing apparatus according to feature 15.
24. The aforementioned file name is generated using the selected delimiter, the character recognized from the area and displayed in the field, and another character different from the delimiter. The information processing apparatus according to feature 15.
25. Based on a user operation specifying a different area from the aforementioned area, the field is displayed with characters recognized from the specified area. The information processing apparatus according to feature 15.
26. A field displaying characters recognized from the region within the image is shown, and the image is displayed with the region highlighted. The information processing apparatus according to feature 15.
27. When the character recognized from the region is displayed in the field, based on a user operation on the region on the image, the displayed character is removed from the field and the field is displayed, and the highlighting of the region is removed and the image is displayed. The information processing apparatus according to feature 22.
28. A third display control means that displays the generated file name on the display means. The information processing apparatus according to claim 15, characterized by having the following features.
29. A first display control means that displays multiple options on a display means, including options that only show characters indicating the delimiter, for the user to select a delimiter included in the file name, A second display control means that displays on the display means an image which is the source of the file to which the aforementioned file name is assigned, and a field in which characters recognized from an area within the image are displayed. A generation means that generates the file name using the selected delimiter and the character recognized from the area and displayed in the field, It has, When the character recognized from the region is displayed in the field, the field is displayed in a state where the displayed character is deleted based on a user operation on the region on the image. A system characterized by the following features.
30. A first display control step involves displaying multiple options on a display means, including options that display only the characters indicating the delimiter, for the user to select a delimiter included in the file name. A second display control step involves displaying on the display means an image which is the source of the file to which the aforementioned file name is assigned, and a field in which characters recognized from a region within the image are displayed. A generation step of generating the file name using the selected delimiter and the character recognized from the area and displayed in the field, It has, When the character recognized from the region is displayed in the field, the field is displayed in a state where the displayed character is deleted based on a user operation on the region on the image. A control method characterized by the following: