This application is based on and claims priority under 35 USC 119 from Japanese Patent Application No. 2013-173801 filed Aug. 23, 2013.
The present invention relates to an information processing apparatus and an information processing system.
According to an aspect of the invention, there is provided an information processing apparatus including a first generation unit, an acquisition unit, an identification unit, and a second generation unit. The first generation unit generates a second document resulting from deletion of first information allocated at a first position from a first document. The acquisition unit acquires a third document resulting from execution of a process to the second document generated by the first generation unit. The identification unit identifies a second position corresponding to the first position of the first document in the third document. The second generation unit generates a fourth document in which the first information is allocated at the second position identified by the identification unit in the third document acquired by the acquisition unit.
Exemplary embodiments of the present invention will be described in detail based on the following figures, wherein:
The memory 150 includes a volatile storage portion 150a and a non-volatile storage portion 150b, as illustrated in
The controller 130 is, for example, a central processing unit (CPU). The controller 130 supplies image data that is read out by the reading unit 110 to an external apparatus with the communication unit 140 to cause the image processing apparatus 100 to function as a scanner. In addition, the controller 130 outputs an image corresponding to image data that is read out by the reading unit 110 with the image forming unit 120 to cause the image processing apparatus 100 to function as a copier. Furthermore, the controller 130 outputs an image corresponding to data that is externally supplied with the image forming unit 120 to cause the image processing apparatus 100 to function as a printer.
The original determiner S4 checks the content of an original A that is read out by the reading unit 110 in the image processing apparatus 100 to determine whether the original A is a document created in accordance with any predetermined format (such a document is hereinafter referred to as a “fixed form document”). For example, the original determiner S4 determines whether the original A is the fixed form document on the basis of an image at a predetermined position, such as a lower right portion, in the original A that is read out by the reading unit 110. The image may be an image representing a character string, such as “Ta”, indicating the format name of the fixed form document or may be a barcode indicating the format name of the fixed form document.
The transmission sentence generator S1 refers to the transmission sentence format database D1 (described in detail below with reference to
The transmission sentence B may not be generated by the deletion of the specific information from the original A as long as the transmission sentence B has the above content. For example, the transmission sentence B may be generated by extracting information other than the specific information from the original A. In this case, for example, the controller 130 may divide the original A into segments, may determine whether the disclosure of each segment is permitted, and may duplicate only the segment or segments the disclosure of which is permitted to generate the transmission sentence B.
The transmitter-receiver S2 transmits the transmission sentence B generated by the transmission sentence generator S1 to the server apparatus 200 via the communication unit 140. The transmitter-receiver S2 receives a document resulting from execution of a predetermined process to the transmission sentence B by the server apparatus 200 as a reception sentence C via the communication unit 140. The transmitter-receiver S2 is an example of a transmission unit that transmits the second document generated by a first generation unit to an external apparatus and an example of an acquisition unit that acquires a third document resulting from execution of a process to the second document by the external apparatus.
The reception sentence determiner S5 checks the content of the reception sentence C received by the transmitter-receiver S2 to determine whether the reception sentence C is any fixed form document. For example, the reception sentence determiner S5 determines whether the reception sentence C is the fixed form document on the basis of an image at a predetermined position, such as a lower right portion, in the reception sentence C. The image may be an image representing a character string indicating the format name of the fixed form document or may be a barcode indicating the format name of the fixed form document.
The processed sentence generator S3 refers to the deletion table T1 (described in detail below with reference to
For example, in the example illustrated in
In the transmission sentence format database D1, the fact that the disclosure status of the segment having the segment name “R11” is “Not-permitted” is described in the transmission sentence segment list L2 associated with the format name “inspection information Ta”, as described above. For example, when a character string “James Smith” is described in the segment having the segment name “R11” in the original A in the processing of the original A, which is the fixed form document according to the format of the format name “inspection information Ta”, by the image processing apparatus 100, the image processing apparatus 100 identifies “James Smith” as the specific information and deletes “James Smith” from the original A duplicated in the volatile storage portion 150a. Then, the image processing apparatus 100 writes “James Smith”, which is the deleted specific information, in the deletion table T1 in association with the segment name “R11” of the segment in which the deleted specific information has been allocated.
As described above, the image processing apparatus 100 sequentially deletes the pieces of information (the pieces of specific information) allocated in the segments the disclosure statuses of which are set to “Not-permitted”, among the segments in the original A, and stores the pieces of information in association with the segment names of the segments in which the pieces of information have been allocated in the original A. When all the pieces of specific information are deleted from the duplication of the original A stored in the volatile storage portion 150a, the image processing apparatus 100 transmits the duplication of the original A subjected to the processing to the server apparatus 200 as the transmission sentence B.
The reception sentence format database D2 also includes a reception sentence segment list L4 in which the segment name of each segment composing the reception sentence C according to the format indicated by the reception sentence format name, the position (the horizontal scanning direction coordinate x and the vertical scanning direction coordinate y) of the segment, the size (the width w and the height h) of the segment, and the segment name (hereinafter referred to as a “corresponding segment name”) of the segment (hereinafter referred to as a “corresponding segment”) corresponding to the segment in the transmission sentence B before the reception sentence C is processed by the server apparatus 200 are described. One reception sentence segment list L4 is associated with each format name listed in the reception sentence format name list L3.
For example, in the example illustrated in
When “-” is described as the corresponding segment name of the segment corresponding to a segment in the reception sentence C, this means that no corresponding segment exists in the transmission sentence B for the segment in the reception sentence C. In this case, the server apparatus 200 generates information to be described in the segment in the reception sentence C independent of the information described in any segment in the transmission sentence B.
Referring to
Referring to
In Step S102, the controller 130 determines whether any segment that is not selected in Step S103 described below, that is, any unselected segment exists in the segments resulting from the division. If the controller 130 determines that any unselected segment exists (YES in Step S102), in Step S103, the controller 130 selects one unselected segment. In Step S104, the controller 130 determines whether the disclosure status of the selected segment is set to “Non-permitted” in the transmission sentence segment list L2, that is, the controller 130 determines whether the specific information exists in the selected segment.
If the controller 130 determines that the specific information exists in the original A during processing (YES in Step S104), in Step S105, the controller 130 deletes the specific information from the original A during processing. In Step S106, the controller 130 stores the segment name of the segment in which the deleted specific information has been described is stored in the deletion table T1 in association with the deleted specific information. Then, the process goes back to Step S102.
If the controller 130 determines that the unselected segment does not exist (NO in Step S102), in Step S107, the controller 130 determines the original A during processing to be the transmission sentence B. Then, the process in the transmission sentence generator S1 is terminated.
In the storage in the deletion table T1, the image indicating the specific information may be subjected to a character recognition process to store the character sequence data subjected to the character recognition process in the deletion table T1.
For example, when the transmission sentence generator S1 refers to the transmission sentence format database D1 illustrated in
The controller 130 stores the deleted specific information in the deletion table T1 in association with the segment name of the segment in which the specific information has been allocated (Step S106). When the transmission sentence generator S1 performs the process to the original A illustrated in
The controller 130 in the image processing apparatus 100 executes the processes of the transmitter-receiver S2 and the reception sentence determiner S5 before executing the process of the processed sentence generator S3, as illustrated in
Referring to
In Step S302, the controller 130 determines whether any segment that is not selected in Step S303 described below exists in the segments resulting from the division, that is, whether any unselected segment exists in the reception sentence C during processing. If the controller 130 determines that any unselected segment exists (YES in Step S302), in Step S303, the controller 130 selects one unselected segment. In Step S304, the controller 130 refers to the reception sentence format database D2 to identify the corresponding segment name associated with the selected segment and refers to the transmission sentence format database D1 to determine whether the disclosure of the corresponding segment indicated by the corresponding segment name is not permitted. If the controller 130 determines that the disclosure of the corresponding segment is permitted (PERMITTED in Step S304), the process goes back to Step S302. If the controller 130 determines that the disclosure of the corresponding segment is not permitted (NOT PERMITTED in Step S304), in Step S305, the controller 130 refers to the deletion table T1 to read out the specific information that is stored in association with the corresponding segment. In Step S306, the controller 130 allocates the specific information that is read out in the segment in the reception sentence C during processing. Then, the process goes back to Step S302.
The controller 130 may execute the following processing, instead of Step S304 described above. Specifically, the controller 130 may identify the corresponding segment name of the corresponding segment associated with the segment selected in Step S303 by referring to the reception sentence format database D2 to search the deletion table T1 for a line in which the corresponding segment name is described. If the controller 130 finds the corresponding segment name in the deletion table T1, the controller 130 may read out the specific information that is associated with the corresponding segment name (Step S305) and may allocate the specific information that is read out in the selected segment in the reception sentence C (Step S306).
When the corresponding segment name identified by the reference to the reception sentence format database D2 is “-” indicating that no corresponding segment exists in the transmission sentence B, the controller 130 may execute the same processing as in the case in which the controller 130 determines that the disclosure of the corresponding segment is permitted (PERMITTED in Step S304).
If the controller 130 determines that no unselected segment exists (NO in Step S302), in Step S307, the controller 130 determines the reception sentence C during processing to be the processed sentence D. An image of the processed sentence D that is determined is formed on a sheet (a medium) by the image forming unit 120 to be output.
For example, the format of the reception sentence C illustrated in
The controller 130 refers to the reception sentence format name list L3 in the reception sentence format database D2 illustrated in
The controller 130 reads out the transmission sentence segment list L2 associated with the transmission sentence format name “inspection information Ta” by referring to the transmission sentence format database D1 illustrated in
The controller 130 searches the deletion table T1 for the segment name of the segment the disclosure of which is not permitted to read out the specific information that is stored in the deletion table T1 with the segment name that is searched for. For example, the controller 130 searches the deletion table T1 for the segment name “R11” to read out the specific information “James Smith.” The controller 130 allocates the specific information that is read out in the selected segment in the reception sentence C during processing. Specifically, the specific information “James Smith” is allocated in the segment “R43.” The specific information that has been described in the segment the disclosure of which is not permitted in the original A is allocated in the corresponding segment in the reception sentence C in the above manner to generate the processed sentence D.
As described above, the user is capable of receiving an external image analysis service without disclosing the specific information by setting a document on which an original is described in the image processing apparatus 100 and pressing the button to specify the image analysis. The image processing apparatus 100 according to the exemplary embodiment may be provided in, for example, a convenience store.
The exemplary embodiments described above may be modified in the following manner. Combinations of the modifications may be adopted.
Although the modes in which the image processing apparatus 100 is used as a terminal are described in the above exemplary embodiments, the terminal is not limited to the image processing apparatus 100 and may be, for example, a personal computer, a personal digital assistant (PDA), a mobile phone, a mobile music player, a mobile movie player, a game machine, an electronic book browser, or a navigation apparatus.
The network intermediating between the image processing apparatus 100 and the server apparatus 200 is not limited to the Internet 300 and may be a network, such as a local area network (LAN) or a wide area network (WAN). These networks may partially or entirely include wireless areas.
Although the modes in which the user of the image processing apparatus 100, which is a terminal, sets a document and operates the operation unit 160 to specify the image analysis are described in the above exemplary embodiments, the above processing may be executed in response to a request to the external server apparatus 200 for the image analysis in other modes. In this case, in addition to the indication of the processing with the operation of the operation unit 160 in the image processing apparatus 100, the processing may be indicated by the content of a document (directions) in which processing instructions are described in, for example, Extensible Markup Language (XML).
Although the configuration in which the user of the image processing apparatus 100, which is a terminal, operates the touch panel to request the external server apparatus 200 to perform the image analysis is described in the above exemplary embodiments, the terminal, such as a personal computer or a PDA, may be connected to the image processing apparatus 100 wirelessly or in a wired manner and the original A may be transmitted from the terminal to the image processing apparatus 100 to operate the image processing apparatus 100. In this case, the image data indicating the original A may not be the image data representing the image that is read out from the document by the reading unit 110.
Although the disclosure status is held in the transmission sentence format database D1 in the above exemplary embodiments, the disclosure status is not limitedly held in the transmission sentence format database D1. For example, the user may select the disclosure status of each segment when the user operates the operation unit 160 to request the external server apparatus 200 to perform the image analysis.
Although the specific information is deleted from the original A during processing in the above exemplary embodiments, the specific information may not limitedly deleted from the original A during processing as long as the specific information is not referred to in an external apparatus. For example, a segment that is not to be disclosed may be colored with a specific color, may be overwritten with a specific image, or may be replaced with a predetermined character string. It is sufficient for the specific information included in the original A not to be included in the transmission sentence B.
Although no processing is performed in the transmission sentence generator S1 since the transmission to the server apparatus 200 before the reception from the server apparatus 200 in the above exemplary embodiments, multiple transmission sentences B may be generated since the transmission to the server apparatus 200 before the reception from the server apparatus 200. In this case, an identifier (ID) representing the transmission sentence B or an ID representing the processing number may be recorded in the deletion table T1 and the ID may be referred to in the reception to find the deletion table T1.
Although either of “Permitted” indicating that the disclosure is permitted and “Not-permitted” indicating that the disclosure is not permitted is described in the transmission sentence format database D1 as the disclosure status of each segment in the above exemplary embodiments, the disclosure status may be set to three or more levels. For example, three levels: “Low”, “Medium”, and “High” may be set as the disclosure status of each segment. In this case, for example, the image processing apparatus 100 may not perform the deletion to segments the disclosure statuses of which are set to “Low”, may perform encryption to segments the disclosure statuses of which are set to “Medium”, and may perform the deletion to segments the disclosure statuses of which are set to “High.” Alternatively, the disclosure status may be determined for every kind of the processing which the server apparatus 200 is requested to perform or for every identification information about the server apparatus 200 or the disclosure status may be determined depending on the degree of safety of the communication line with the server apparatus 200. For example, in the case of a communication line using an encryption protocol, such as a secure sockets layer (SSL), the processing via the communication line may be determined to be safe and the disclosure status of the communication line may be set to “Low.”
Although the image processing apparatus 100 requests an external apparatus to perform the image analysis in the above exemplary embodiments, the image processing apparatus 100 may request the external apparatus to perform another process. For example, the image processing apparatus 100 may request the external apparatus to perform a process concerning application of a cash card or a process concerning translation, statistics, or technical calculation.
For example, when the image processing apparatus 100 requests an external apparatus to “translate English into Japanese”, the specific information in English should be translated into Japanese. In this case, the controller 130 in the image processing apparatus 100 refers to, for example, a Japanese dictionary (not illustrated) stored in the non-volatile storage portion 150b to identify “hidarikiki”, which is a Japanese translation of “left-handed”, for the specific information “left-handed” in the deletion table T1 illustrated in
The image processing apparatus 100 may internally perform the same processing as the one which the image processing apparatus 100 requests the external apparatus to perform to the deleted specific information. Specifically, the information may be varied depending on the content of the processing which the image processing apparatus 100 requests the external apparatus to perform. However, since the external apparatus is not capable of acquiring the deleted specific information, it is not possible for the external apparatus to perform the processing to the specific information. When the image processing apparatus 100 simply allocates the specific information in the corresponding segment in the reception sentence C after the processing, corresponding to the segment the disclosure of which is not permitted in the original A, the specific information that is not processed remains in the processed sentence D. Accordingly, in the generation of the processed sentence D from the reception sentence C, the image processing apparatus 100 of the eighth modification internally performs the same processing as the one which the image processing apparatus 100 requests the external apparatus to perform to the specific information to allocate the specific information after the processing in the corresponding segment, instead of simply allocating the specific information in the corresponding segment. In other words, the image processing apparatus 100 of the eighth modification allocates the information, which is acquired by the image processing apparatus 100 that performs the processing to the specific information, in the corresponding segment in the reception sentence C to generate the processed sentence D.
Although the controller 130 functioning as the original determiner S4 and the reception sentence determiner S5 determines whether the original A read out by the reading unit 110 or the reception sentence C received from the server apparatus 200 via the communication unit 140 is the fixed form document on the basis of an image at a predetermined position, such as a lower right portion, of the original A or the reception sentence C in the above exemplary embodiments, the controller 130 may determine whether the original A or the reception sentence C is the fixed form document by another method. For example, the controller 130 may detect the position and the size of each entry field allocated in the image data by, for example, the edge detection process and may compare information about the arrangement and the number of the entry fields that are detected with information about the arrangement and the number of the entry fields in a predetermined form to determine whether the image data is the fixed form document. In this case, even when the position and the size of each entry field do not coincide with the position and the size of the segment described in the transmission sentence segment list L2 or the reception sentence segment list L4, it may be determined that the position and the size of the entry field coincide with the position and the size of the segment described in the transmission sentence segment list L2 or the reception sentence segment list L4 if the difference between them is within a predetermined range.
Although the image processing apparatus 100 identifies the information allocated in a predetermined segment in the original A as the specific information to be deleted to generate the transmission sentence B having the content resulting from deletion of the identified specific information from the original A in the above exemplary embodiments, the image processing apparatus 100 may generate a sentence having the content resulting from deletion of the specific information and information (hereinafter referred to as accompanying information) that is included in the original A and that is not allocated in any segment from the original A as the transmission sentence B. In other words, in the tenth modification, the transmission sentence B (the second document) has the content resulting from deletion of the specific information (the first information) and the accompanying information (second information) that is not allocated in any segment in the display of the original A (the first document) from the original A.
For example, some digital still cameras have a function to include information indicating the date and time when a picture is taken and the location where the picture is taken in image data of the picture as the accompanying information. Tags or the likes to include the accompanying information that is not displayed in a document are prepared in some markup languages, such as Hypertext Markup Language (HTML). The image processing apparatus 100 of the tenth modification identifies part or all of the accompanying information in the original A as the information to be deleted, in addition to the identification of the information to be allocated in a predetermined segment in the display of the original A as the specific information. The image processing apparatus 100 of the tenth modification generates a new transmission sentence B having the content resulting from deletion of the specific information and the information identified as the information to be deleted from the original A to transmit the generated transmission sentence B to the server apparatus 200. In this case, upon reception of the reception sentence C, the image processing apparatus 100 may identify the corresponding segment in the reception sentence C, corresponding to the segment from which the specific information has been deleted in the transmission sentence B, to allocate the specific information in the corresponding segment and may include the accompanying information deleted from the transmission sentence B in the reception sentence C. In other words, in this case, the processed sentence generator S3 (a second generation unit) realized by the controller 130 in the image processing apparatus 100 allocates the specific information (the first information) in the corresponding segment (a second position) in the reception sentence C (the third document) and generates the processed sentence D (a fourth document) including the accompanying information (the second information).
Although the processed sentence generator S3 generates the processed sentence D including the accompanying information, the included accompanying information may be allocated in any segment in the display of the processed sentence D or may be allocated in no segment. When the transmission sentence generator S1 generates the transmission sentence B (the second document) having the content resulting from deletion of the specific information (the first information) allocated in the predetermined segment (the first position) in the original A (the first document) to transmit the generated transmission sentence B to the server apparatus 200, the processed sentence generator S3 may include the specific information (the first information) in the reception sentence C (the third document) received from the server apparatus 200 as new accompanying information to generate the processed sentence D (the fourth document).
Each program executed by the controller 130 may be provided in a state in which the program is stored in a computer-readable recording medium, which is, for example, a magnetic recording medium such as a magnetic tape or a magnetic disk, an optical recording medium such as an optical disk, a magneto-optical recording medium, or a semiconductor memory. The program may be downloaded via a network such as the Internet. Various apparatuses other than the CPU may be applied to the controller exemplified by the controller 130 described above and, for example, a dedicated processor may be used as the controller.
The foregoing description of the exemplary embodiments of the present invention has been provided for the purposes of illustration and description. It is not intended to be exhaustive or to limit the invention 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 invention and its practical applications, thereby enabling others skilled in the art to understand the invention for various embodiments and with the various modifications as are suited to the particular use contemplated. It is intended that the scope of the invention be defined by the following claims and their equivalents.
Number | Date | Country | Kind |
---|---|---|---|
2013-173801 | Aug 2013 | JP | national |