INFORMATION PROCESSING APPARATUS AND NON-TRANSITORY COMPUTER READABLE MEDIUM
20220198040 · 2022-06-23
Assignee
Inventors
Cpc classification
H04N1/00331
ELECTRICITY
H04N1/0048
ELECTRICITY
G06F3/04812
PHYSICS
International classification
G06F21/62
PHYSICS
G06F3/0481
PHYSICS
Abstract
An information processing apparatus includes a processor configured to perform control for not accepting a collective output command with respect to multiple pieces of business form data having different preset output conditions. Each piece of business form data is obtained by reading a business form having a predetermined item filled in with information.
Claims
1. An information processing apparatus comprising: a processor configured to: perform control for not accepting a collective output command with respect to a plurality of pieces of business form data having different preset output conditions, each piece of business form data being obtained by reading a business form having a predetermined item filled in with information.
2. The information processing apparatus according to claim 1, wherein the processor is configured to perform control for prohibiting pressing of an output command button in a screen that accepts an output command for the business form data, the output command button being used for inputting a command for outputting the business form data.
3. The information processing apparatus according to claim 2, wherein the processor is configured to perform control for graying out the output command button.
4. The information processing apparatus according to claim 1, wherein the processor is configured to: accept a change to any one of a plurality of different output conditions; and change the output conditions of the plurality of pieces of business form data to the accepted output condition.
5. The information processing apparatus according to claim 2, wherein the processor is configured to: accept a change to any one of a plurality of different output conditions; and change the output conditions of the plurality of pieces of business form data to the accepted output condition.
6. The information processing apparatus according to claim 3, wherein the processor is configured to: accept a change to any one of a plurality of different output conditions; and change the output conditions of the plurality of pieces of business form data to the accepted output condition.
7. A non-transitory computer readable medium storing a program causing a computer to execute a process for processing information, the process comprising: performing control for not accepting a collective output command with respect to a plurality of pieces of business form data having different preset output conditions, each piece of business form data being obtained by reading a business form having a predetermined item filled in with information.
8. An information processing apparatus comprising: processing means for performing control for not accepting a collective output command with respect to a plurality of pieces of business form data having different preset output conditions, each piece of business form data being obtained by reading a business form having a predetermined item filled in with information.
Description
BRIEF DESCRIPTION OF THE DRAWINGS
[0010] An exemplary embodiment of the present disclosure will be described in detail based on the following figures, wherein:
[0011]
[0012]
[0013]
[0014]
[0015]
[0016]
[0017]
[0018]
[0019]
[0020]
DETAILED DESCRIPTION
[0021] An exemplary embodiment according to the disclosure will be described in detail below with reference to the drawings.
[0022]
[0023] As shown in
[0024] The information processing apparatus 20 performs optical character recognition (OCR) on image data of multiple documents, including business forms, input via the input apparatus 60, and manages the flow of a sequential process for outputting the OCR result to a predetermined output destination. The specific configuration and operation of the information processing apparatus 20 will be described later.
[0025] A business form is a document having information filled in predetermined items. Such a business form may be, but is not limited to, a document having information filled therein for business or transaction, such as a ledger sheet, a slip sheet, an invoice, a bill, or an application form. The items in a business form are, for example, information to be used for business or transaction, and include, but are not limited to, a name, an address, a birthdate, and the current date.
[0026] The client terminal 40 transmits various types of OCR-related commands to the information processing apparatus 20. These various types of commands include, for example, a start command for reading information in image data and a command for displaying a read result of information in image data, that is, business form data obtained as a result of reading a business form.
[0027] The client terminal 40 also displays a result of the OCR performed by the information processing apparatus 20 in response to the various types of commands received, as well as various types of OCR-related information, such as a notification. The client terminal 40 used may be, for example, a general-purpose computer, such as a server computer or a personal computer (PC). As an alternative to
[0028] The input apparatus 60 inputs image data to be OCR-processed to the information processing apparatus 20. Examples of the input apparatus 60 include a general-purpose computer, such as a server computer or a PC, and an image forming apparatus having a scanning function, a printing function, and a facsimile function. In addition to the input apparatus 60, the client terminal 40 may also input image data to the information processing apparatus 20.
[0029] The following relates to a general description of the business form system 10.
[0030] The business form system 10 is a system in which the information processing apparatus 20 performs OCR on image data input via the input apparatus 60 and outputs business form data as an OCR result to a predetermined output destination.
[0031] The information processing apparatus 20 manages various processes in the OCR, including a business-design and operation-verification process (1), a data input process (2), a data reading process (3), a business-form determination, confirmation, and correction process (4), a read-result confirmation and correction process (5), a business checking process (6), a data output process (7), and a returning process (8). In this exemplary embodiment, the term “OCR” includes not only a process for simply reading text and symbols from image data, but also post-processing, such as text correction.
[0032] The business-design and operation-verification process (1), the data input process (2), the data reading process (3), the business checking process (6), and the data output process (7) as examples of the various types of processes to be managed are executed automatically by the information processing apparatus 20. Furthermore, the business-form determination, confirmation, and correction process (4) and the read-result confirmation and correction process (5) as examples of the various types of processes to be managed are accepted by being input by a user via the client terminal 40. Moreover, the returning process (8) as one of examples of the various types of processes to be managed may sometimes be executed automatically by the information processing apparatus 20 or may sometimes be accepted by being input by the user via the client terminal 40.
[0033] The business-design and operation-verification process (1) involves creating job rules including a read definition setting, an output setting, and a business check setting. In the read definition setting, for example, a read range is set as a range in which information in image data is to be read in the data reading process (3). In more detail, for example, the process may involve setting a definition in which an item value is to be read as a value from near the right side of an item to be extracted as a key. In the output setting, for example, output conditions including at least one of an output format, such as a file format, of output data to be output in the data output process (7) and an output destination are set. In the business check setting, for example, a necessary input item in a business form to be detected in the business checking process (6) and a format of an inputtable number of text characters are set.
[0034] The data input process (2) involves receiving image data from the input apparatus 60. The received image data is registered as a job serving as a unit executable in the data reading process (3).
[0035] The data reading process (3) involves reading information in the image data within the job by using a job rule for the job to be executed. This job rule is selected by the user from the job rules created in the business-design and operation-verification process (1). For example, this process involves determining a business form (sometimes referred to as “business-form determination” hereinafter) included in the image data within the job and reading the text and symbols within the read range. The job rule to be selected by the user for a single job does not have to be a single job rule. If the user selects multiple job rules for a single job, the image data is processed by using a set containing multiple job rules, that is, a job rule set. In this case, for each business form expressed by the image data, a job rule for the type identified from the multiple job rules is applied in accordance with a type determination result. In a case where a job rule set is used, the process based on each job rule will be referred to as “sub job” hereinafter. A detailed description of a job rule, a job rule set, and a sub job will be provided later with reference to
[0036] The business-form determination, confirmation, and correction process (4) involves splitting the image data within the job into records indicating business forms included in the job based on the business-form determination result obtained in the data reading process (3). Subsequently, this process involves displaying the split records and accepting confirmation and correction of the business-form determination by the user.
[0037] The read-result confirmation and correction process (5) involves displaying the read result, of the text and symbols within the read range, obtained in the data reading process (3), and accepting confirmation and correction of the read result by the user.
[0038] The business checking process (6) involves detecting an error in each preceding process in accordance with the business check setting included in the job rule, selected by the user from the job rules created in the business-design and operation-verification process (1), for the relevant job. The detection result may be presented to the user.
[0039] The data output process (7) involves creating business form data by using the output setting included in the job rule, selected by the user from the job rules created in the business-design and operation-verification process (1), for the relevant job, and outputting the created business form data to the predetermined output destination.
[0040] The returning process (8) involves returning from the process executed in the OCR to a process previous thereto by one stage or multiple stages. For example, a return command is given by the user via the client terminal 40 while various types of processes, such as the business-form determination, confirmation, and correction process (4) and the read-result confirmation and correction process (5), are being executed. Moreover, for example, a return command is given from the client terminal 40 of a manager in accordance with a result of a checking process performed by the manager between the business checking process (6) and the data output process (7).
[0041] In the OCR described above, the business-design and operation-verification process (1) is executed before the data reading process (3) and onward are performed, that is, prior to the operation of the business form system 10. Alternatively, the business-design and operation-verification process (1) may be executed during the operation of the business form system 10 performing the data reading process (3) and onward. For example, a job rule created in the business-design and operation-verification process (1) prior to the operation of the business form system 10 may be appropriately corrected in accordance with a result of the read-result confirmation and correction process (5) during the operation of the business form system 10.
[0042] Next, a job rule, a job rule set, and a sub job will be described with reference to
[0043] Examples of a job rule include a definition for determining and identifying a target business-form type, a rule related to data correction of an identification result and to error detection when an error occurs, and a definition of output conditions. A rule related to error detection refers to confirmation of monetary consistency, and a definition of output conditions refers to an output format setting and an output destination setting when business form data is to be output. A job rule in the example shown in
[0044] A job rule set is a bundle of multiple job rules. If a processing target in a job is image data of a business-form image obtained as a result of reading a mixture of multiple types of business forms, a job rule set is used. The information processing apparatus 20 determines which job rule the type of business form identified in a step previous to the OCR is compatible with, and processes the image data of the business form of each type based on the determined job rule. A job rule set in the example shown in
[0045] A job rule and a job rule set are both set in the business-design and operation-verification process (1) in the OCR performed in the business form system 10 according to this exemplary embodiment. A job rule and a job rule set may be set in advance or may be arbitrarily set by the user, and may also have multiple job rules and multiple job rule sets, respectively.
[0046]
[0047] Next, a hardware configuration of the information processing apparatus 20 according to this exemplary embodiment will be described.
[0048] As shown in
[0049] The I/O 30D is connected to a communication unit 32 and a storage unit 34.
[0050] The communication unit 32 is an interface for performing data communication with external apparatuses, such as the client terminal 40 and the input apparatus 60.
[0051] The storage unit 34 is constituted of a nonvolatile external storage device, such as a hard disk, and stores therein an information processing program 34A, to be described later, image data 34B input from the input apparatus 60 and obtained as a result of reading a business form, and business form data 34C obtained as a result of executing OCR on the image data 34B in accordance with a job rule. The CPU 30A loads the information processing program 34A stored in the storage unit 34 to the RAM 30C so as to execute the information processing program 34A.
[0052] The following description relates to a screen of the client terminal 40 to be used by the user for giving a command for outputting business form data in the data output process (7).
[0053]
[0054] As shown in
[0055] Each of the processing buttons displayed in the example in
[0056] The output command screen 50 shown in
[0057] A job-rule selection region R1 is displayed at the left side of the output command screen 50. The job-rule selection region R1 displays a job rule or a job rule set for each business form in the “waiting for output” processing status, as well as the number of pages waiting for an operation. In the example in
[0058] When the user performs an operation for selecting any one of the “invoice”, “application form A”, “application form B”, “bill A” and “set A” options, a list display region R2 at the right side displays a list of information related to business form data corresponding to the selected job rule or job rule set.
[0059] In the example in
[0060] As shown in
[0061] The job with the job name “20191017_250” has “set A” displayed in the “details” item thereof. This indicates that the job rule “application form A” included in the set A as a job rule set is applied to the job with the job name “20191017_250”.
[0062] An output command button B6 for giving a command for outputting business form data to an output destination is displayed above the list display region R2 in
[0063] In the example in
[0064] An output condition region R3 for displaying output conditions included a job rule and also for giving a command for changing an output condition is provided below the job-rule selection region R1 in
[0065] When an area (link) displaying “CSV output” or “image output” is clicked, for example, an output-condition setting screen 51 as shown in
[0066] In the example in
[0067] Furthermore, in the example in
[0068]
[0069] The output conditions set for each job rule to be applied to a job given a checkmark in the checkbox CB thereof are displayed in the output condition region R3. In the example in
[0070] For example, as shown in
[0071] In this case, as shown in
[0072] Furthermore, when sub jobs with different output conditions are selected, there may be a case where business form data in a format not processable by the system at the output destination may be output if a collective output command is allowed.
[0073] Thus, when sub jobs with different output conditions are selected, the output command button B6 is grayed out, as shown in
[0074] When any one of the multiple output conditions displayed in the output condition region R3 is selected, the output conditions of the multiple selected sub jobs may be forcibly set to the output condition selected in the output condition region R3. In this case, the display mode of the grayed-out output command button B6 is set back to the normal display mode, thereby transitioning to a state where a collective output command is acceptable.
[0075] For example, as shown in
[0076] For example, in a case where a sub job with the job name “20191017_270” and the job rule “application form A” and a sub job with the job name “20191017_271” and the job rule “application form C” are selected, if the output destination for business form data in the image format set in the job rule “application form A” is “download” and the output destination for business form data in the image format set in the job rule “application form C” is “download”, a collective output command is possible since the output destinations are the same.
[0077] Next, the operation of the information processing apparatus 20 according to this exemplary embodiment will be described.
[0078] If a job rule and a job rule set are not to be distinguished from each other in the following description, they will simply be referred to as a rule. Moreover, if a job and a sub job are not to be distinguished from each other, they will simply be referred to as a job.
[0079] In step S100, the CPU 30A determines whether or not a job rule is selected from rules displayed in the job-rule selection region R1. If a job rule is selected, the processing proceeds to step S102. If a job rule is not selected, the processing proceeds to step S104.
[0080] In step S102, the CPU 30A causes the list display region R2 to display job-related information corresponding to the job rule selected in step 5100 based on business form data 34C stored in the storage unit 34.
[0081] In step S104, the CPU 30A determines whether or not a job rule set is selected from the rules displayed in the job-rule selection region R1. If a job rule set is selected, the processing proceeds to step S106. If a job rule set is not selected, the processing proceeds to step S108.
[0082] In step S106, the CPU 30A reads sub-job-related information corresponding to the selected job rule set from the storage unit 34 and causes the list display region R2 to display the information.
[0083] In step S108, the CPU 30A determines whether or not at least one job is selected from the jobs displayed in the list display region R2, that is, whether or not a checkmark is input to at least one checkbox. If at least one job is selected, the processing proceeds to step S110. If not a single job is selected, the processing proceeds to step S126.
[0084] In step S110, the CPU 30A determines whether or not multiple sub jobs are selected. Specifically, in a case where a job rule set is selected in the job-rule selection region R1 and a list of sub jobs is displayed in the list display region R2, the CPU 30A determines whether or not multiple sub jobs are selected. If multiple jobs are selected, the processing proceeds to step S112. If a single job is selected, the processing proceeds to step S120.
[0085] In step S112, the CPU 30A determines whether or not the multiple selected jobs have different output conditions. A case where the multiple sub jobs have different output conditions refers to a case where the output conditions of the multiple sub jobs are not entirely identical, that is, a case where at least two sub jobs have different output conditions. If the multiple selected jobs have different output conditions, the processing proceeds to step S114. If the multiple selected jobs have identical output conditions, the processing proceeds to step S120.
[0086] In step S114, the CPU 30A performs control so as not to accept a collective output command for business form data of the multiple selected jobs. In detail, for example, the output command button B6 is displayed in a grayed-out mode, thereby prohibiting a collective output command for multiple pieces of business form data. Moreover, a prohibition flag indicating whether collective output is in a disabled mode or an enabled mode is set to an ON mode. At the start of this routine, the prohibition flag is set to an OFF mode.
[0087] In step S116, the CPU 30A determines whether or not a command is given for changing the output conditions of the multiple selected sub jobs to any one of the output conditions of the multiple sub jobs. If a command for changing the output conditions is given, the processing proceeds to step S118. If a command for changing the output conditions is not given, the processing proceeds to step S122.
[0088] In step S118, the CPU 30A changes all the output conditions of the multiple selected sub jobs to the output condition corresponding to the change command. For example, as shown in
[0089] In step S120, the CPU 30A performs control so as to accept a collective output command for the business form data of the multiple selected jobs. In detail, for example, if the output command button B6 is displayed in a grayed-out non-clickable mode, the grayed-out mode is canceled, thereby allowing a collective output command. Moreover, the prohibition flag is set to the OFF mode.
[0090] In step S122, the CPU 30A determines whether or not the output command button B6 is clicked. If the output command button B6 is clicked, the processing proceeds to step S124. If the output command button B6 is not clicked, the processing proceeds to step S126.
[0091] In step S124, the CPU 30A executes an output process. Specifically, the business form data of the selected jobs is output to the output destination designated as an output condition.
[0092] In step S126, it is determined whether or not a command for terminating the output process of the business form data is given. For example, it is determined whether or not another button is clicked. Then, if a command for terminating the output process of the business form data is given, the routine ends. If a command for terminating the output process of the business form data is not given, the processing proceeds to step S100 to repeat the above-described process until a termination command is given.
[0093] As described above, in the information processing apparatus 20 according to this exemplary embodiment, if multiple sub jobs with different output conditions are selected, the output command button B6 is controlled so as to be displayed in a non-clickable mode, thereby preventing business form data in a condition not processable by a system at an output destination from being output thereto.
[0094] As an alternative to this exemplary embodiment in which the information processing program 34A is installed in the storage unit 34, the information processing program 34A according to this exemplary embodiment may be provided by being stored in a computer readable storage medium. For example, the information processing program 34A according to this exemplary embodiment may be provided by being stored in an optical disk, such as a compact disc read-only memory (CD-ROM) or a digital versatile disc read-only memory (DVD-ROM), or by being stored in a semiconductor memory, such as a universal serial bus (USB) memory or a memory card. As another alternative, the information processing program 34A according to this exemplary embodiment may be acquired from an external device via a communication line connected to the communication unit 32.
[0095] In the exemplary embodiment above, the term “processor” refers to hardware in a broad sense. Examples of the processor include general processors (e.g., CPU: Central Processing Unit) and dedicated processors (e.g., GPU: Graphics Processing Unit, ASIC: Application Specific Integrated Circuit, FPGA: Field Programmable Gate Array, and programmable logic device).
[0096] In the exemplary embodiment above, the term “processor” is broad enough to encompass one processor or plural processors in collaboration which are located physically apart from each other but may work cooperatively. The order of operations of the processor is not limited to one described in the exemplary embodiment above, and may be changed.
[0097] The foregoing description of the exemplary embodiments of the present disclosure has been provided for the purposes of illustration and description. It is not intended to be exhaustive or to limit the disclosure to the precise forms disclosed. Obviously, many modifications and variations will be apparent to practitioners skilled in the art. The embodiments were chosen and described in order to best explain the principles of the disclosure and its practical applications, thereby enabling others skilled in the art to understand the disclosure for various embodiments and with the various modifications as are suited to the particular use contemplated. It is intended that the scope of the disclosure be defined by the following claims and their equivalents.