WO2014068770A1 - データ抽出方法、データ抽出装置及びそのプログラム - Google Patents

データ抽出方法、データ抽出装置及びそのプログラム Download PDF

Info

Publication number
WO2014068770A1
WO2014068770A1 PCT/JP2012/078504 JP2012078504W WO2014068770A1 WO 2014068770 A1 WO2014068770 A1 WO 2014068770A1 JP 2012078504 W JP2012078504 W JP 2012078504W WO 2014068770 A1 WO2014068770 A1 WO 2014068770A1
Authority
WO
WIPO (PCT)
Prior art keywords
item
data
item name
correspondence
frame
Prior art date
Application number
PCT/JP2012/078504
Other languages
English (en)
French (fr)
Inventor
関 峰伸
正和 藤尾
淳一 平山
永崎 健
響子 石田
芳賀 憲行
Original Assignee
株式会社日立製作所
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 株式会社日立製作所 filed Critical 株式会社日立製作所
Priority to JP2014544181A priority Critical patent/JPWO2014068770A1/ja
Priority to PCT/JP2012/078504 priority patent/WO2014068770A1/ja
Publication of WO2014068770A1 publication Critical patent/WO2014068770A1/ja

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V30/00Character recognition; Recognising digital ink; Document-oriented image-based pattern recognition
    • G06V30/40Document-oriented image-based pattern recognition

Definitions

  • the present invention relates to a method for extracting data from an atypical document.
  • Document recognition technology can be broadly divided into form OCR and document OCR.
  • the form OCR is often used for reading a form for a financial institution and includes a function of extracting designated data (for example, an amount, an address, etc.) as well as converting text into text.
  • designated data for example, an amount, an address, etc.
  • the application of the form OCR technology has expanded from reading a large number of forms with limited formats to reading a small amount of various types of forms.
  • the forms to be read are expanded not only to OCR dedicated forms but also to non-standard forms created by general users.
  • predefinition for reading is simplified. That is, a method has been developed in which a character reading position is not defined by absolute coordinates but by item names.
  • the document OCR is used for reading various business documents in a company. Since the document OCR targets documents of various formats, the document OCR is used for applications that are less affected by misreading, such as simple text conversion work. In recent years, a structure analysis technique of an electronic document in which a document created by office software such as Word or Excel is directly converted to PDF has been developed.
  • Design specifications are documents created independently by various companies, and since many various specifications are described, they are often in a more complex and diverse table format than a non-standard form for financial institutions. For this reason, a method for extracting data from a complicated table format with easy definition designation is required, but the conventional method reduces the data extraction accuracy.
  • Non-Patent Document 1 For example, the method of predefining the position of data to be extracted described in Non-Patent Document 1 cannot be applied to a wide variety of specifications. Moreover, it is difficult for the document processing apparatus described in Patent Document 1 to extract data from a complicated table format such as a specification.
  • the item names of data described in the specifications have a hierarchical structure, and the item names and data having a hierarchical structure are managed. Therefore, it is necessary to extract data from the hierarchical item name dictionary.
  • a method of using the hierarchical item name dictionary there is a form processing method described in Patent Document 2.
  • the method described in Patent Document 2 in order to extract data from a more complicated table format, by defining an item name dictionary with a hierarchical structure in advance, the relationship between upper and lower relations of item names and Analysis can be performed using the arrangement relationship of the item names.
  • the method described in Patent Document 2 is suitable, for example, when the lower item of the name has sex and name as shown in FIG. 17, and the lower item of the date of birth has year, month and day.
  • FIGS. 18 and 19 are tables having the same type of data, but the upper and lower relations of the hierarchical structure of the item names are different. That is, in the table shown in FIG. 18, there is data D1 when the item name is traced as device X ⁇ type A ⁇ temperature ⁇ Oil. However, in the table shown in FIG. 19, there is data D1 when the item name is traced as device X ⁇ temperature ⁇ type A ⁇ Oil. Further, as shown in FIGS. 20 and 21, in the case of data represented by a two-dimensional table, it is difficult to determine which item is higher. That is, there is a problem that the accuracy of extracting data decreases when the upper and lower relations of the item names are different.
  • the present invention solves the problem that the accuracy of extracting data using the item name dictionary with hierarchical structure is lowered when the upper and lower relations of the item names are different.
  • a typical example of the invention disclosed in the present application is as follows. That is, a method for extracting data from an atypical document, in which a processor for executing a program, a memory for storing a program executed by the processor, and data necessary for executing the program are input.
  • the method is executed by a computer having an interface, and the method includes an item name information generation step in which the processor generates item name information listing item names in the input item dictionary with hierarchical structure, and the processor generates the generation A corresponding candidate generation step for generating a correspondence candidate indicating a correspondence relationship between the item name and the data by analyzing a correspondence relationship between the item name and the data from the input document using the item name information that is input; and
  • the processor is configured so that each of the generated one or more correspondence candidates is included in the hierarchical structure item dictionary 1 or An extraction step of calculating a reliability indicating the probability corresponding to each of the number of items with a hierarchical structure, and extracting data corresponding to the item with the hierarchical structure among the correspondence candidates in the order of the calculated reliability; , Including.
  • items and data can be associated with high precision even when the upper and lower relationships of items in the item dictionary with a hierarchical structure are different.
  • Embodiments of the present invention described below relate to a method and apparatus for extracting data from atypical documents such as specifications and drawings.
  • data for items having a hierarchical structure can be extracted with high accuracy even when the item names have different vertical relationships.
  • FIG. 1 is a block diagram illustrating a configuration example of the data extraction device 208 according to the first embodiment of this invention.
  • the data extraction device 208 of this embodiment includes a communication device 201, an image acquisition device 202, a display device 203, an auxiliary storage device 204, a memory 205, a processor (CPU) 206, and an input device 207, which are PCI buses. Connected with a communication line.
  • the communication device 201 is a network interface for connecting the data extraction device 208 to a network.
  • the image acquisition apparatus 202 is an apparatus for acquiring an image of a document from which data is extracted. For example, a scanner, a multi-function peripheral, an OCR, a digital camera, or the like can be used.
  • the image acquisition apparatus 202 may be an interface through which image data of a document acquired by an externally connected scanner is input.
  • the display device 203 is a display that displays the execution result of the program.
  • a liquid crystal display device can be used.
  • the auxiliary storage device 204 is a nonvolatile storage device such as a magnetic disk drive or a flash memory (SSD), and stores a program executed by the processor 206 and data used when the program is executed.
  • the memory 205 is a high-speed and volatile storage device such as a DRAM (Dynamic Random Access Memory), and stores an operating system (OS) and application programs.
  • OS operating system
  • the processor 206 is a central processing unit that executes a program stored in the memory 205.
  • the processor 206 executes the operating system, the basic function of the data extraction device 208 is realized, and when the application program is executed, the function provided by the data extraction device 208 is realized.
  • the input device 207 is a user interface such as a keyboard and a mouse.
  • the program executed by the processor 206 is provided to the computer via a non-volatile storage medium or a network, and is stored in the auxiliary storage device 204 which is a non-temporary storage medium. That is, the program executed by the processor 206 is read from the auxiliary storage device 204, loaded into the memory 205, and executed by the processor 206.
  • the document input to the CPU 206 may be input from the image acquisition device 202 or the communication device 201, or stored in the auxiliary storage device 204.
  • a typical example of the apparatus shown in FIG. 1 is a personal computer to which a display and a multifunction peripheral are connected.
  • the data extraction device 208 outputs the result of the data extraction processing to the display device 203. Further, the data extraction device 208 may output the result of the data extraction processing to the outside via the communication device 201, or may be used by another program executed by the data extraction processing device 208.
  • FIG. 2 is a flowchart showing the entire data extraction process in the first embodiment.
  • each step is executed by a control unit configured by the processor 206.
  • the item name list forming process 102 outputs an item name list 103 when the item name dictionary 101 with a hierarchical structure is inputted.
  • the item name dictionary 101 with a hierarchical structure is a dictionary that expresses items in a format that retains the hierarchical structure between items, as illustrated in FIG.
  • the relationship from the left to the right of the table indicates the structure from the upper level to the lower level of the hierarchical structure.
  • one hierarchical structure represented by data included in the hierarchical structure-added item name dictionary 101 is referred to as a hierarchical structure-added item.
  • the uppermost device X, type A, pressure, and Oil shown in 802 in FIG. 3 are one item with a hierarchical structure.
  • the item name list 103 is a list of item names included in the hierarchical item name dictionary 101. For example, when the item name dictionary 101 with a hierarchical structure shown in FIG. 3 is input, the item name list 103 includes “device X”, “type A”, “type B”, “pressure”, “temperature”, “Oil”. "," Water ".
  • the item data association candidate generation process 105 outputs the item data association candidate 106 when the input document 104 and the item name list 103 are input.
  • various types of documents including specifications are input, and items described in the document are associated with data corresponding to the items.
  • the input document may be a scanned document acquired by a multifunction device, a scanner, a camera, or the like, an electronic document generated by various office document creation software, or an html document. Details of this processing will be described later.
  • the item data association candidate ranking extraction process 107 outputs an association ranking result 108 when the item data association candidate 106 and the hierarchical structure item name dictionary 101 are input.
  • a plurality of item data correspondence candidates corresponding to each hierarchical structure item in the hierarchical structure item dictionary are extracted from among a plurality of item data correspondence candidates in the item data correspondence candidate 106,
  • the reliability corresponding to the item data indicating the degree corresponding to the item with the hierarchical structure is calculated, and the correspondence candidates are ranked based on the reliability corresponding to the item data. Details of this processing will be described later.
  • the result of the data extraction process is provided to the user via a GUI (Graphical User Interface).
  • GUI Graphic User Interface
  • the user can select a correct candidate from a plurality of item data association candidates extracted corresponding to each hierarchical structure item in the hierarchical structure item dictionary 101 and store it in the database. For example, by using the data selection screen shown in FIG. 14 and the data selection location display screen shown in FIG. 15, data can be efficiently selected, that is, data extraction work can be performed. Details of an example of such a GUI will be described later.
  • the data extraction device 208 of the present embodiment executes the item name listing process 102, the item data association candidate generation process 105, and the item data association candidate ranking extraction process 107. That is, after generating the item name list 103 in which the item names are listed, the item name list 103 is used to generate the item data association candidates 106 that are candidates for associating the items with the data. Item data association candidates 106 corresponding to each item with a hierarchical structure in the hierarchical structure item name dictionary 102 are extracted from the candidates 106, and the data is ranked based on the reliability with the item data association.
  • FIG. 4 is a flowchart of an example of the item data association generation candidate process 105 according to the first embodiment.
  • any method other than that illustrated may be used as long as it generates data indicating the correspondence between items and data.
  • a binarization process 903 is performed.
  • the binarization process 903 is performed when the input document 104 is a color image or a multi-valued image.
  • layout analysis processing 904 is performed.
  • the layout analysis process 904 extracts ruled lines, information on frames formed by the ruled lines, and character lines.
  • the layout analysis process 904 extracts a ruled line based on the connection of black pixels and the linearity thereof, and configures a frame from the extracted ruled line.
  • FIG. 5 shows an example of the frame information obtained by the layout analysis process 904.
  • a layout analysis process 904 extracts a ruled line and a frame 1102 formed by the ruled line from the binary image 1101.
  • a character recognition process 905 is performed.
  • a character recognition process 905 characters in the document are recognized.
  • frame connection relation analysis processing 906 is performed.
  • the frame connection relationship analysis processing 906 the connection relationship of a plurality of frames constituting the table is analyzed. Used in item data association candidate extraction processing 908.
  • FIG. 6 shows an example of item name information obtained by the item name frame determination processing 907.
  • the item name frame determination processing 907 it is determined whether each area included in the frame 1102 includes the character string of the item name. Specifically, the character string in the frame and the item name included in the item name list 103 are subjected to approximate character string matching, and the frame including the character string matched with the item name in the item name list is displayed as the item name frame. It is determined that FIG. 6 shows an item name determination result 1202 from which the item name and the item name area are extracted, which is output by the item name frame determination processing 907. A character string having the same meaning as the item name in the item dictionary with a hierarchical structure does not always match completely.
  • an edit distance (Levenstein distance) can be used. However, any other method may be used as long as it indicates the degree of similarity of character strings.
  • the edit distance the edit distance between the character string in the frame and the item name in the item name list 103 is calculated, and the evaluation value (value indicating the similarity of the character string) is calculated using the edit distance. If the evaluated value (similarity) is equal to or less than a predetermined threshold value, it is determined that the verification is successful.
  • the order of the frame connection relationship analysis processing 906 and the item name frame determination processing 907 may be the order shown in the figure or the reverse order (the item name frame determination processing 907 is first and the frame connection relationship analysis processing 906 is later).
  • a character cutout network including a plurality of character cutout patterns and a plurality of character identification results for the character cutout patterns is generated, and a character string of the item name is searched from the character cutout network. Also good.
  • the average value of the character recognition certainty level representing the likelihood of the character identification result of the selected character cutout pattern can be used as an example of the similarity.
  • the character recognition 905 may be performed after the item name frame determination 907.
  • an item data association candidate generation process 908 is performed.
  • the correspondence between the item and the data is analyzed using the determination result of the item name frame and the frame connection relationship analysis result, and the item and data association candidate 106 is generated.
  • FIG. 7 is a flowchart of an example of the item data association candidate generation process 908.
  • the item data association candidate generation process 908 includes three steps: an item name frame hierarchy extraction process 1301, an item / data correspondence extraction process 1302, and a data continuity analysis process 1303 connected to the item.
  • the item name frame hierarchy relation extraction processing 1301 associates an item name with a frame having a hierarchical relation of item names.
  • This process associates item name frames with all item name frames (X) by performing the following processing. Assuming that X is the upper item name frame, there are a plurality of adjacent item name frames (Y1 to YN) to the right of X, and the positions of the top and bottom of the X item name frame are Y1 to YN. If the positions of the upper and lower ends coincide with each other, it is determined that there is an upper / lower relationship in the item name frame in which Y1 to YN are positioned below X. For example, in the case shown in FIG. 8, since the upper end and lower end of the area where the upper and lower ends of the item name A1 and the item names A2, A3 and A4 match, the item name A1 is associated with the item names A2, A3 and A4. .
  • X is an upper item name frame
  • there are a plurality of adjacent item name frames (Y1 to YN) under X and the left and right positions of the X item name frame are aligned with Y1 to YN. If the position matches the position of the left end and right end of the area, it is determined that there is an upper / lower relationship of the item name frame in which Y1 to YN are positioned lower than X.
  • the item name / data correspondence extraction process 1302 associates a frame in which data exists corresponding to the item name in the item name frame.
  • This process associates item frames and data by performing the following processing on all item frames (X). If the frame (Zl) adjacent to the right of X is not an item name frame and the upper and lower ends of X coincide with the upper and lower ends of Zl, it is determined that the item name corresponds to the data. For example, in the case shown in FIG. 9A, since the upper end and the lower end of the frame including the item name B1 coincide with the upper and lower ends of the frame including the data B1 adjacent to the right, the frame including the item name B1 and the frame including the data B1 It is determined that there is a correspondence between the item name and the data. Similarly, it is determined that the frame including the item name B2 and the frame including the data B2 also have a correspondence relationship between the item name and the data.
  • the frame (Zb) adjacent under X is not an item name frame and the left end and right end of X match the left end and right end of Zb, it is determined that the item name corresponds to the data.
  • the item name corresponds to the data.
  • the item name is between the frame including the item name B3 and the frame including the data B3. It is determined that there is a correspondence between data and data.
  • the data continuity analysis processing 1303 connected to the item associates a frame including data connected to the frame including the item name and continuously arranged.
  • the association is performed by performing the following processing on the frame including the item name and the frame including the data associated with the item name / data correspondence extraction processing 1302.
  • a frame including the item name associated by the item name / data correspondence extraction process 1302 is A
  • a frame including the data is D0. If the item name frame A and the data frame D0 are associated from the top to the bottom, that is, if the item name frame A is at the top and the data frame D0 is at the bottom, is the frame D1 below the data frame D0 a frame that includes the item name? Determine.
  • the frame D1 is a frame that does not include an item name, and the left end and right end of the data frame D0 match the left end and right end of the frame D1, it is determined that data is continuously connected from the data frame D0 to the frame D1.
  • the data frame D0 and the data frame D1 are associated with each other.
  • the frame D2 below the data frame D1 is a frame including the item name. If the frame D2 is a frame that does not include an item name, and the left end and right end of the data frame D1 match the left end and right end of the frame D2, it is determined that data is continuously connected from the data frame D1 to the frame D2.
  • the data frame D1 and the data frame D2 are associated with each other. As long as the association continues in this way, the relationship with the adjacent frame is determined. That is, the determination is continued until there is no association or no frame exists in the continuous adjacent direction.
  • the continuity analysis process 1303 of the data connected to the item is associated with the frame including the data C2.
  • the frame including the data C2 is associated with the frame including the data C3.
  • the right frame D1 of the data frame D0 is a frame including the item name. Determine if there is.
  • the frame D1 is a frame that does not include an item name, and the upper end and lower end of the data frame D0 match the upper end and lower end of the frame D1, it is determined that data is continuously connected from the data frame D0 to the frame D1.
  • the data frame D0 and the data frame D1 are associated with each other.
  • the frame D2 on the right side of the data frame D1 is a frame including an item name.
  • the frame D2 is a frame that does not include an item name, and the upper end and lower end of the data frame D1 match the upper end and lower end of the frame D2, it is determined that data is continuously connected from the data frame D1 to the frame D2.
  • the data frame D1 and the data frame D2 are associated with each other. As long as the association continues in this way, the relationship with the adjacent frame is determined. That is, the determination is continued until there is no association or no frame exists in the continuous adjacent direction.
  • FIG. 11 and 12 are diagrams illustrating an example of the item data association candidate 106.
  • FIG. 11 and 12 are diagrams illustrating an example of the item data association candidate 106.
  • the item data association candidate 1701 shown in FIG. 11 is obtained by executing the item data association candidate generation processing 908 using the hierarchical item name dictionary 801 shown in FIG.
  • type A and type B are associated with the lower temperature
  • type A and type B are associated with the lower pressure
  • oil and water are associated with the lower level of type A
  • the lower level of type B Is associated with Oil and Water.
  • D1 is associated with temperature, type A, and Oil.
  • D2 is associated with temperature, type A and Water.
  • item names are also associated with D3 to D8.
  • the item data association candidate 1701 shown in FIG. 12 is a two-dimensional association table, and is obtained by executing the item data correspondence candidate extraction process 908 using the hierarchical item name dictionary 801 shown in FIG.
  • type A, type B, and type C are associated with the lower level of temperature
  • type A, type B, and type C are associated with the lower level of pressure
  • Oil and Water are associated with the lower level of device X.
  • D11 is associated with temperature, type A, device X, and Oil.
  • D12 is associated with temperature, type B, device X, and Oil. Although D12 and Oil are separated from each other, Oil and D12 are associated with each other because they are associated up or down by the continuity analysis processing 1303 of the data connected to the item.
  • item names are also associated with D13 to D16.
  • D21 is associated with temperature, type A, device X, and water. Although D21 and type A are separated, the types A and D21 are associated with each other because they are associated from the left to the right by the continuity analysis processing 1303 of the data linked to the item. Similarly, item names are also associated with D22 to D26.
  • the item name is associated with the character string D in the frame that does not include the item name by the item data association candidate extraction processing 908 as described with reference to the examples of FIGS.
  • a set of the character string D and zero, one, or a plurality of item names associated with the character string D is an item data association candidate. Some item names in the item name dictionary with hierarchical structure may not be associated with the character string D.
  • FIG. 13 is a flowchart of the item data association candidate ranking extraction process 107.
  • the item data correspondence candidate ranking extraction process 107 extracts item data correspondence candidates corresponding to the hierarchical structure item in the hierarchical structure item name dictionary 101 from the item data correspondence candidates 106, and extracts each extracted item data correspondence candidate.
  • the item data correspondence reliability of the item data correspondence candidates is calculated, and the extracted item data correspondence candidates are ranked based on the item data correspondence reliability.
  • the flowchart shown in FIG. 13 is executed for each hierarchical structure-added item in the hierarchical structure-added item name dictionary, that is, by the number of hierarchical structure-added items. For example, when the item name dictionary with hierarchical structure shown in FIG. 3 is used, the item data correspondence candidate ranking extraction process 107 is executed eight times.
  • an item-specific correspondence candidate extraction process 1901 is executed.
  • the item-by-item correspondence candidate extraction 1901 when all the item data correspondence candidates 106 generated by the item data correspondence candidate generation processing 105 and one item with a hierarchical structure in the hierarchical item name dictionary are input. Then, item data association candidates that may correspond to the hierarchical structure items are extracted from the item data association candidates 106.
  • candidates can be extracted using the number of matching item names. Specifically, the number of item names in the item data correspondence candidate that matches the item name in the item with hierarchical structure is calculated, and the item data corresponding to one or more (or a predetermined threshold) item name is supported. Append candidates are extracted. The extracted item data correspondence candidates are item-specific item data correspondence candidates. In the item data association candidate generation process, it is not always possible to generate an item data association candidate in which all of the item names in the hierarchical structure item and the item names in the item data association candidate match.
  • the item data correspondence reliability calculation processing 1902 calculates the item data correspondence reliability of each item-specific item data correspondence candidate.
  • the item data correspondence reliability indicates the possibility that the item-specific item data correspondence candidate corresponds to the item name of the hierarchical structure-attached item.
  • the reliability of item data correspondence is the number of item names matched by approximate character string matching (number of matching item names) and the similarity between the item name in the item with hierarchical structure and the item name of the correspondence candidate. Can be used to calculate. Let t be the number of items that match the item name in the item with hierarchical structure by the approximate character string matching, and let Wi be the i-th character string among the item names matched by the approximate character string matching in the item data item correspondence candidate. When the number of characters of Wi is Mi and the edit distance (Levenshtein distance) when Wi is collated with the item name is Ni, the reliability F with item data correspondence can be expressed by Expression (1). ⁇ is a parameter that can be adjusted by the user.
  • the reliability with item data correspondence expressed by the equation (1) becomes higher as the number of matched items is larger by the approximate character string collation, and becomes lower as the editing distance used in the collation is larger. For this reason, the reliability with item data correspondence indicates the probability that the item-by-item candidate data correspondence candidate corresponds to the item with hierarchical structure.
  • the reliability with item data correspondence is a function that has a higher value as the number of matching items increases, and a higher value as the similarity between the item name and the character string increases (lower value as the editing distance increases). Other functions and conversion tables may be used.
  • the reliability is calculated using the functions having the number of matched character strings t and Mi and the edit distance Ni as arguments as a result of the approximate character string collation, but it is not always necessary to use both.
  • the similarity between the item name and the character string is calculated using the edit distance Ni. However, if the similarity between the item name and the character string is indicated, the reliability is calculated using a value other than the edit distance. Also good.
  • the reliability can be calculated accurately with simple calculation. it can.
  • correspondence candidate ranking processing 1903 is executed.
  • the item data associated reliability values obtained in the item data associated reliability calculation process 1902 are used to arrange item-specific item data associated candidates in descending order of reliability.
  • GUI An example of GUI will be described below.
  • FIG. 14 is a diagram for explaining an example of a data selection screen
  • FIG. 15 is a diagram for explaining an example of a data selection location display screen.
  • the data selection screen and the data selection location display screen are configured separately, but a screen in which the data selection screen and the data selection location display screen are configured integrally may be used.
  • the data selection screen 2001 (FIG. 14) includes a plurality of item name columns 2004, a data candidate column 2005, a manual input column 2006, and an output button 2003.
  • the user executes the data extraction process by designating the hierarchical item name dictionary 101 and the document 104 regarding the data to be extracted.
  • the data selection screen 2001 ranks and outputs the item-specific item data association candidates corresponding to the hierarchical structure items as a result of the data extraction process.
  • the type GQB and the type GOB are below the device X, the pressure and temperature are below the type GQB, the pressure and temperature are below the type GOB, and the pressure is low.
  • Oil and Water are entered, and items with a hierarchical structure having Oil and Water below the temperature are input.
  • Items with hierarchical structure are displayed side by side from left to right according to the hierarchy.
  • a data character string in the item data association candidate 106 is displayed in a pull-down format.
  • the data character string in the item data association candidate 106 is a character string associated with the item name in the item data association candidate 106.
  • the data selection screen 2001 shown in FIG. 14 there are a plurality of item data association candidates corresponding to the eighth item with a hierarchical structure, and these are ranked and arranged in a pull-down format (2002).
  • the data character string of the item data association candidate with the highest reliability is D206
  • the data character string of the item data association candidate with the next highest reliability is D202
  • the reliability is the third.
  • the data character string of the candidate with high item data correspondence is D203.
  • the data selection location display screen 2101 displays the selected location in an identifiable manner by superimposing and drawing a rectangle indicating the selected item name and a line indicating the relationship between the item names on the input document.
  • FIG. 15 shows an example of the data selection location display screen 2101 when D206 in the pull-down menu 2002 of the data selection screen 2001 is selected with a mouse or the like.
  • Table 2 in the document is displayed, and four item character strings are surrounded by broken lines, and areas surrounded by broken lines are connected by arrows. The broken line and the arrow are drawn on the document.
  • the types GOB, temperature, Water, and D206 surrounded by a broken line indicate that item-specific item data correspondence candidates corresponding to D206 selected on the data selection screen 2001 are shown.
  • the user can confirm whether the data is correct data corresponding to the item with the hierarchical structure by browsing the data selection location display screen 2101 after selecting the data character string from the data selection screen 2001. If the selected data is correct, the selection of D206 on the data selection screen 2001 is left as it is. On the other hand, if the selected data is not correct, another candidate is selected from the pull-down menu 2002 on the data selection screen 2001 and the selection result is confirmed on the data selection location display screen 2101.
  • the user scrolls the document in the data selection location display screen 2101 and visually searches for the corresponding data.
  • a data character string is directly input into the manual input field 2006 of the data selection screen (2001) using a keyboard or the like. In this manner, when the user completes selection or input of data for all items with a hierarchical structure and operates the output button 2003, the hierarchical structure-added item and corresponding data are output to a file as tabular data.
  • the upper and lower relations of the hierarchical structure items are not directly used for associating the items with the data, but the item names are listed (102) and the item data correspondence candidates.
  • 106 is generated (105), and item data is associated with the hierarchical structure-attached item from the generated item data association candidates 106 (107).
  • the data is extracted by ranking based on the reliability of the item data correspondence using the number of matching item names, the upper and lower relations of the item names actually described in the document are switched. Even so, the data corresponding to the item name can be extracted with high accuracy.
  • a character string having a similar notation for example, the appearance of a character
  • More similar data character strings can be ranked higher, and data character strings that are highly likely to correspond to item names can be displayed first.
  • the user selects the correct answer from the partially matching data in order to extract data that partially matches the item name can do.
  • the item data association candidate generation process 105 can realize the binarization process 903 to the item data association candidate extraction process 908 with one software as described in the first embodiment. As in the embodiment, it can be realized by a plurality of software.
  • binarization processing 903, layout analysis processing 904, and character recognition processing 905 are performed using a commercially available OCR, and a PDF document 1001 including ruled lines, characters, and position information obtained as a result is generated. Further, a general electronic document (for example, a document created by a word processor) 1003 may be converted into a PDF document 1001.
  • a PDF document 1001 is input, and in a PDF component extraction process 1002, ruled lines, characters included in the PDF document 1001, and position information thereof are extracted. Then, using the extracted information, layout analysis processing 904, frame connection relationship analysis processing 907, item name frame determination processing 906, and item data association candidate extraction processing 908 are executed. It should be noted that the order of the item name frame determination processing 907 and the frame connection relationship analysis processing 906 may be reverse to that illustrated.
  • an electronic document 1003 created by electronic document creation software (for example, a word processor) can be input.
  • the created electronic document 1003 is input, and in the document component extraction processing 1004, layout analysis is performed using ruled lines and characters included in the electronic document 1003 and their position information.
  • Processing 904 frame connection relationship analysis processing 907, item name frame determination processing 906, and item data correspondence candidate extraction processing 908 are executed.
  • the third embodiment of the present invention by combining with a program for analyzing an electronic document, ruled lines, characters, and their position information are extracted from the electronic document, and the item data correspondence reliability is obtained. Can be calculated. For this reason, the data corresponding to the item can be extracted from the electronic document with high accuracy.

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Artificial Intelligence (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Multimedia (AREA)
  • Theoretical Computer Science (AREA)
  • Character Input (AREA)

Abstract

 非定型文書からデータを抽出する方法であって、前記プロセッサが、入力された階層構造付項目辞書内の項目名を列記した項目名情報を生成する項目名情報生成ステップと、前記プロセッサが、前記生成された項目名情報を用いて、入力された文書から項目名とデータとの対応関係を解析することによって、項目名とデータとの対応関係を示す対応候補を生成する対応候補生成ステップと、前記プロセッサが、前記生成された1又は複数の対応候補のそれぞれが、前記階層構造付項目辞書に含まれる1又は複数の階層構造付項目のそれぞれに対応する確からしさを示す信頼度を計算し、前記対応候補のうち前記階層構造付項目に対応するデータを、前記計算された信頼度の順に抽出する抽出ステップと、を含む。

Description

データ抽出方法、データ抽出装置及びそのプログラム
 本発明は、非定型文書からデータを抽出する方法に関する。
 文書認識技術を大別すると、帳票OCRと文書OCRとに分けられる。帳票OCRは、金融機関向けの帳票の読み取りに多く用いられ、文字をテキスト化するだけでなく、指定されたデータ(例えば、金額、住所等)を抽出する機能を含む。帳票OCRの技術は、書式が限定された大量の帳票の読み取りから、多品種の少量の帳票の読み取りへと適用対象が拡大している。また、読み取り対象の帳票が、OCR専用帳票だけでなく、一般ユーザが作成した非定型帳票へと拡大している。さらに、読み取りのための事前定義を簡易化している。すなわち、文字の読み取り位置を絶対座標で定義する方法ではなく、項目名で指定する方法が開発されている。
 また、文書OCRは、企業内で様々なビジネス文書の読み取りに用いられている。文書OCRは、様々な形式の文書を対象とするため、単純なテキスト化作業等、誤読の影響が少ない用途で用いられる。また近年、Word、Excelなどのオフィスソフトウェアによって作成された文書を直接PDF化した電子文書の構造解析技術が開発されている。
 しかし、従来の文書認識技術を用いて設計仕様書等の非定型文書からデータを抽出する場合には問題が生じる。設計仕様書は、様々な会社で独自に作成した文書であり、様々な多くの仕様が記載されるため、金融機関向けの非定型帳票より複雑で多様な表形式となっていることが多い。そのため、容易な定義指定で複雑な表形式からデータを抽出する方法が必要となるが、従来の方法ではデータ抽出精度が低くなる。
 例えば、非特許文献1に記載されている、抽出するデータの位置を事前に定義する方法は、多種多様な仕様書には適用できない。また、特許文献1に記載された文書処理装置は、仕様書のような複雑な表形式の中からデータを抽出することが難しい。
 また、仕様書に記載されるデータの項目名は階層構造を持ち、階層構造を持つ項目名及びデータが管理される。そのため、階層構造付項目名辞書に対するデータの抽出が必要となる。階層構造付項目名辞書を用いる方法には、特許文献2に記載された帳票処理方法がある。特許文献2に記載された方法では、より複雑な表形式の中からデータを抽出するために、階層構造付項目名辞書を予め定義しておくことによって、項目名の上位下位の関係の繋がり及び項目名の配置関係を利用して、解析を行うことができる。特許文献2に記載された方法は、例えば、図17に示すように名前の下位の項目に性及び名があり、生年月日の下位の項目に年、月及び日がある場合に適する。
特開2006-99480号公報 特開2008-33830号公報
Hiroshi Sako et al., "Form Reading based on Form-type Identification and Form-data Recognition", ICDAR 2003, August, 2003
 前述した先行技術では、仕様書に記載される仕様データの項目名の上位下位の関係は一意には決まらず、仕様書を作成した会社によって、項目名の上位下位の関係が異なる場合に解析精度が低下する問題がある。
 例えば、図18及び図19は、同じ種類のデータを持つ表であるが、項目名の階層構造の上位下位の関係が異なる例である。すなわち、図18に示す表では、機器X→種類A→温度→Oilと項目名を辿るとデータD1がある。しかし、図19に示す表では、機器X→温度→種類A→Oilと項目名を辿るとデータD1がある。また、図20及び図21に示すように、2次元形式の表で表わされるデータの場合、どの項目が上位であるのかを決めることは難しい。つまり、項目名の上位下位の関係が異なる場合、データを抽出する精度が低下する問題がある。
 さらに、この方法では、上位下位の関係にある項目名の相対的位置関係の候補を予め定義する必要があるため、様々な書式の仕様書を扱う場合にユーザの手間が多くなる問題がある。
 本発明は、項目名の上位下位の関係が異なる場合、階層構造付項目名辞書を用いてデータを抽出する精度が低下する問題を解決する。
 本願において開示される発明の代表的な一例を示せば以下の通りである。すなわち、非定型文書からデータを抽出する方法であって、前記方法は、プログラムを実行するプロセッサ、前記プロセッサで実行されるプログラムを格納するメモリ、及び前記プログラムの実行に必要なデータが入力されるインターフェースを有する計算機で実行され、前記方法は、前記プロセッサが、入力された階層構造付項目辞書内の項目名を列記した項目名情報を生成する項目名情報生成ステップと、前記プロセッサが、前記生成された項目名情報を用いて、入力された文書から項目名とデータとの対応関係を解析することによって、項目名とデータとの対応関係を示す対応候補を生成する対応候補生成ステップと、前記プロセッサが、前記生成された1又は複数の対応候補のそれぞれが、前記階層構造付項目辞書に含まれる1又は複数の階層構造付項目のそれぞれに対応する確からしさを示す信頼度を計算し、前記対応候補のうち前記階層構造付項目に対応するデータを、前記計算された信頼度の順に抽出する抽出ステップと、を含むことを特徴とする。
 本発明の一側面によれば、階層構造付き項目辞書内の項目の上位下位の関係が異なる場合でも、項目とデータとを高精度に対応付けることができる。
 前述した以外の課題、構成及び効果は、以下の実施形態の説明により明らかにされる。
本発明の第1の実施例のデータ抽出装置の構成例を示すブロック図である。 本発明の第1の実施例におけるデータ抽出処理の全体を示すフローチャートである。 本発明の第1の実施例の階層構造付辞書の例を説明する図である。 本発明の第1の実施例の項目データ対応付候補生成処理の一例のフローチャートである。 本発明の第1の実施例のレイアウト解析処理によって得られた枠の情報の例を示す図である。 本発明の第1の実施例の項目名枠判定処理によって得られた項目名の情報の例を示す図である。 本発明の第1の実施例の項目データ対応付候補生成処理の一例のフローチャートである。 本発明の第1の実施例の項目名枠の階層関係の抽出を説明する図である。 本発明の第1の実施例の項目とデータとの対応関係の抽出を説明する図である。 本発明の第1の実施例の項目とデータとの対応関係の抽出を説明する図である。 本発明の第1の実施例の項目と繋がるデータの連続性の解析を説明する図である。 本発明の第1の実施例の項目データ対応候補の例を説明する図である。 本発明の第1の実施例の項目データ対応候補の例を説明する図である。 本発明の第1の実施例の項目データ対応付候補ランキング抽出処理のフローチャートである。 本発明の第1の実施例のデータ選択画面の例を説明する図である。 本発明の第1の実施例のデータ選択箇所表示画面の例を説明する図である。 本発明の第2及び第3の実施例の項目データ対応付候補生成処理の一例のフローチャートである。 階層構造の上位下位の関係が一意に決まる例の説明図である。 多階層項目関係を持つ表の例の説明図である。 多階層項目関係を持つ表の例の説明図である。 多階層項目関係を持つ表の例の説明図である。 多階層項目関係を持つ表の例の説明図である。
 以下に説明する本発明の実施例は、仕様書、図面などの非定型文書からデータを抽出する方法及び装置に関する。特に、本発明の実施例では、項目名の上下関係が異なる場合でも、階層構造を持つ項目に対するデータを高精度に抽出可能である。
 以下、添付図面を参照して本発明の実施例について説明する。ただし、本実施例は本発明を実現するための一例に過ぎず、本発明の技術的範囲を限定するものではない。また、各実施例において、同一の構成には同一の符号を付した。
 <データ抽出処理装置>
 図1は、本発明の第1の実施例のデータ抽出装置208の構成例を示すブロック図である。
 本実施例のデータ抽出装置208は、通信装置201、画像取得装置202、表示装置203、補助記憶装置204、メモリ205、プロセッサ(CPU)206及び入力装置207を有し、これらのデバイスはPCIバスなどの通信線で接続されている。
 通信装置201は、データ抽出装置208をネットワークに接続するためのネットワークインターフェースである。画像取得装置202は、データが抽出される文書のイメージを取得するための装置であり、例えば、スキャナ、複合機、OCR、デジタルカメラなどを用いることができる。なお、画像取得装置202は、外部接続されたスキャナが取得した文書の画像データが入力されるインターフェースでもよい。
 表示装置203は、プログラムの実行結果を表示するディスプレイであり、例えば、液晶表示装置を用いることができる。補助記憶装置204は、磁気ディスクドライブ、フラッシュメモリ(SSD)などの不揮発性記憶装置であり、プロセッサ206が実行するプログラム及びプログラム実行時に使用されるデータを格納する。メモリ205は、DRAM(Dynamic Random Access Memory)のような高速かつ揮発性の記憶装置であり、オペレーティングシステム(OS)及びアプリケーションプログラムを格納する。
 プロセッサ206は、メモリ205に格納されたプログラムを実行する中央演算装置である。プロセッサ206が、オペレーティングシステムを実行することによって、データ抽出装置208の基本機能が実現され、アプリケーションプログラムを実行することによって、データ抽出装置208が提供する機能が実現される。入力装置207は、キーボード、マウスなどのユーザインターフェースである。
 プロセッサ206によって実行されるプログラムは、不揮発性の記憶媒体又はネットワークを介して計算機に提供され、非一時的記憶媒体である補助記憶装置204に格納される。すなわち、プロセッサ206が実行するプログラムは、補助記憶装置204から読み出されて、メモリ205にロードされて、プロセッサ206によって実行される。
 CPU206に入力される文書は、画像取得装置202又は通信装置201から入力されたものでも、補助記憶装置204に記憶されたものでもよい。図1の装置の代表的な例として、ディスプレイ及び複合機が接続されたパーソナルコンピュータがある。
 データ抽出装置208は、データ抽出処理の結果を表示装置203に出力する。また、データ抽出装置208は、データ抽出処理の結果を通信装置201を経由して外部に出力してもよく、データ抽出処理装置208で実行される他のプログラムが使用してもよい。
 <データ抽出処理>
 図2は、第1の実施例におけるデータ抽出処理の全体を示すフローチャートである。
 なお、特記しない場合、各ステップは、プロセッサ206によって構成される制御部が実行する。
 項目名リスト化処理102は、階層構造付項目名辞書101が入力されると、項目名リスト103を出力する。階層構造付項目名辞書101は、図3に例示するように、項目間の階層構造を保持した形式で項目を表現した辞書である。図3に例示する階層構造付項目名辞書101では、表の左から右への関係が階層構造の上位から下位への構造を示している。例えば、機器Xの下位に種類A及び種類Bがあり、種類Aの下位に圧力及び温度があり、種類Bの下位に圧力及び温度があり、圧力の下位にOil及びWaterがあり、温度の下位にOil及びWaterがある。ここで、階層構造付項目名辞書101に含まれるデータで表される一つの階層構造を、階層構造付項目と称する。例えば、図3の802に示す最上段の機器X、種類A、圧力、Oilが一つの階層構造付項目である。
 項目名リスト103は、階層構造付項目名辞書101に含まれる項目名をリスト化したものである。例えば、図3に示す階層構造付項目名辞書101が入力された場合、項目名リスト103は、「機器X」、「種類A」、「種類B」、「圧力」、「温度」、「Oil」、「Water」となる。
 項目データ対応付候補生成処理105は、入力文書104及び項目名リスト103が入力されると、項目データ対応付候補106を出力する。この処理では、仕様書を含む様々な形式の文書が入力され、文書の中に記載されている項目と項目に対応するデータとが関連付けられる。入力される文書は、複合機、スキャナ、カメラ等で取得されたスキャン文書でも、様々なオフィス文書作成ソフトウェアで生成された電子文書でも、html文書でもよい。この処理の詳細は後述する。
 項目データ対応付候補ランキング抽出処理107は、項目データ対応付候補106及び階層構造付項目名辞書101が入力されると、対応付ランキング結果108を出力する。この処理では、項目データ対応付候補106内の複数の項目データの対応付候補の中から階層構造付項目辞書内にある各階層構造付項目に該当する項目データ対応付候補を複数抽出し、各階層構造付項目に該当する度合いを示す項目データ対応付信頼度を算出し、項目データ対応付信頼度に基づいて対応付け候補をランキングする。この処理の詳細は後述する。
 データ抽出処理の結果は、GUI(Graphical User Interface)を介してユーザに提供される。ユーザは、階層構造付項目辞書101内の各階層構造付項目に対応して抽出された複数の項目データ対応付候補の中から、正しい候補を選択し、データベースに格納することができる。例えば、図14に示すデータ選択画面及び図15に示すデータ選択箇所表示画面を用いることによって、効率よくデータを選択、すなわち、データ抽出作業を行うことができる。このようなGUIの例の詳細は後述する。
 以上に説明したように、本実施例のデータ抽出装置208は、項目名リスト化処理102、項目データ対応付候補生成処理105及び項目データ対応付候補ランキング抽出処理107を実行する。すなわち、項目名をリスト化した項目名リスト103を生成した後、項目名リスト103を利用して、項目とデータとを関連付けした候補である項目データ対応付候補106を生成し、項目データ対応付候補106の中から階層構造付項目名辞書102内の各階層構造付項目に対応する項目データ対応付け候補106を抽出し、項目データ対応付信頼度に基づいてデータをランキングする。
 このように階層構造付項目辞書101内の項目名の上位下位の関係を直接的に用いない一連のステップによって、階層構造付き項目名辞書102内の項目名の上位下位の関係が入れ替わった場合にも、階層構造付項目辞書102内の各項目に対応するデータを高精度に抽出することができる。
 以降では、項目データ対応付候補生成処理105、項目データ対応付候補ランキング抽出処理107及びGUIの例について説明する。
 <項目データ対応付候補生成処理>
 図4は、第1の実施例の項目データ対応付生成候補処理105の一例のフローチャートである。項目データ対応付生成候補処理105では、項目とデータとの対応関係を示すデータを生成するものであれば、例示する以外の方法を用いてもよい。
 項目データ対応付生成候補処理105では、まず、2値化処理903を行う。2値化処理903では、入力文書104がカラー画像又は多値画像である場合に行われる。2値化の方法には様々な方法があるが、一般的に用いられる多くの方法(Niblack法、カラー情報をクラスタリングする方法など)を用いることができる。
 次に、レイアウト解析処理904を行う。レイアウト解析処理904は、2値画像が入力されると、罫線、罫線が構成する枠の情報及び文字行を抽出する。レイアウト解析処理904は、黒画素の繋がり及びその直線性に基づいて罫線を抽出し、抽出された罫線から枠を構成する。
 図5は、レイアウト解析処理904によって得られた枠の情報の例を示す。レイアウト解析処理904は、2値画像1101から罫線及び罫線が構成する枠1102を抽出する。
 次に、文字認識処理905を行う。文字認識処理905では、文書中の文字を認識する。文字認識処理905には様々な方法があるが、LVQ、マハラノビス距離を用いた方法などを用いることができる。
 次に、枠連結関係解析処理906を行う。枠連結関係解析処理906では、表を構成する複数の枠の連結関係を解析する。項目データ対応付候補抽出処理908で用いられる。
 次に、項目名枠判定処理907を行う。図6は、項目名枠判定処理907によって得られた項目名の情報の例を示す。項目名枠判定処理907では、枠1102に含まれる各領域に項目名の文字列を含むかを判定する。具体的には、枠内の文字列と項目名リスト103に含まれる項目名とを近似文字列照合し、項目名リストの中の項目名と照合された文字列が含まれる枠を項目名枠であると判定する。図6は、項目名枠判定処理907が出力する、項目名及び項目名の領域が抽出された項目名の判定結果1202を示す。階層構造付項目辞書内の項目名と同じ意味を表わす文字列が完全に一致するとは限らない。それは文字認識に誤りがある、項目名の表記に揺れがある等のためである。そのため、近似文字列照合を行う。近似文字列照合の方法には、編集距離(レーベンシュタイン距離)を用いることができるが、文字列の類似度合いを示す方法であれば他の方法を用いてもよい。編集距離を用いる場合、枠内の文字列と項目名リスト103内の項目名との編集距離を算出し、編集距離を用いて評価値(文字列の類似度を示す値)を算出し、算出された評価値(類似度)が所定の閾値以下であれば照合に成功したと判定する。
 例えば、類似度の算出方法の一例としては、枠内の文字数=M、編集距離=Nとした場合、類似度=1-N/Mで類似度を算出する。また、枠内の文字数に応じて、類似度の計算方法を変えてもよい。例えば、枠内の文字数が閾値Aよりも小さい場合、類似度が閾値B以下であれば照合に成功したと判定する。また、枠内の文字数が閾値A以上である場合、1-N/Mを類似度とし、類似度が閾値C以下であれば照合に成功したと判定する。
 枠内の文字列に対して複数の項目名が照合に成功した場合、類似度が大きい順に格納するとよい。そして、少なくとも一つの項目名との照合に成功した文字列を含む枠は項目名枠であると判定する。
 なお、枠連結関係解析処理906と項目名枠判定処理907との順序は図示した順序でも、逆の(項目名枠判定処理907が先、枠連結関係解析処理906が後)順序でもよい。
 また、項目名枠判定処理では、複数の文字切り出しパタンと文字切り出しパタンに対する複数の文字識別結果からなる文字切り出しネットワークを生成し、文字切り出しネットワークの中から項目名の文字列を探し出す方法を用いてもよい。この場合、類似度の例として選択された文字切り出しパタンの文字識別結果の尤もらしさを表わす文字識別確信度の平均値を用いることができる。この場合には文字認識905は、項目名枠判定907の後に実施してもよい。
 次に、項目データ対応付候補生成処理908を行う。項目データ対応付候補生成処理908では、項目名枠の判定結果及び枠連結関係解析結果を用いて、項目とデータとの対応関係を解析し、項目とデータとの対応付候補106を生成する。
 図7は、項目データ対応付候補生成処理908の一例のフローチャートである。
 項目データ対応付候補生成処理908は、項目名枠の階層関係抽出処理1301、項目とデータの対応関係抽出処理1302及び項目と繋がるデータの連続性解析処理1303の三つのステップを含む。
 項目名枠の階層関係抽出処理1301は、項目名と項目名の階層関係がある枠とを関連付ける。
 この処理は、全ての項目名枠(X)に以下の処理を行うことによって項目名枠を関連付ける。Xを上位の項目名枠と仮定し、Xの右に隣接する複数の項目名枠(Y1~YN)があり、Xの項目名枠の上端及び下端の位置がY1~YNを合わせた領域の上端及び下端の位置と一致する場合、Xの下位にY1~YNが位置する、項目名枠の上位下位の関係があると判定する。例えば、図8に示す場合、項目名A1の上端及び下端と項目名A2、A3及びA4を合わせた領域の上端及び下端が一致するため、項目名A1と項目名A2、A3及びA4とを関連付ける。
 同様に、Xを上位の項目名枠と仮定し、Xの下に隣接する複数の項目名枠(Y1~YN)があり、Xの項目名枠の左端及び右端の位置がY1~YNを合わせた領域の左端及び右端の位置と一致する場合に、Xの下位にY1~YNが位置する、項目名枠の上位下位の関係があると判定する。
 項目名とデータの対応関係抽出処理1302は、項目名枠内の項目名に対応する、データが存在する枠を関連付ける。
 この処理は、全ての項目枠(X)に以下の処理を行うことによって、項目枠とデータとを関連付ける。Xの右に隣接する枠(Zl)が項目名枠でなく、Xの上端及び下端がZlの上端及び下端と一致する場合、項目名とデータとが対応すると判定する。例えば、図9Aに示す場合、項目名B1を含む枠の上端及び下端が右に隣接するデータB1を含む枠の上端及び下端と一致するため、項目名B1を含む枠とデータB1を含む枠との間に、項目名とデータとの対応関係があると判定する。同様に、項目名B2を含む枠とデータB2を含む枠にも項目名とデータの対応関係があると判定する。
 また、Xの下に隣接する枠(Zb)が項目名枠でなく、Xの左端及び右端がZbの左端及び右端と一致する場合、項目名とデータとが対応すると判定する。図9Bに示す場合、項目名B3を含む枠の左端及び右端がデータB3を含む枠の左端及び右端と一致するため、項目名B3を含む枠とデータB3を含む枠との間に、項目名とデータとの対応関係があると判定する。
 項目と繋がるデータの連続性解析処理1303は、項目名を含む枠と繋がり、かつ、連続して並んでいるデータを含む枠を関連付ける。
 この処理では、項目名とデータの対応関係抽出処理1302によって関連付けられた項目名を含む枠及びデータを含む枠の組に、以下の処理を行うことによって関連付けを行う。具体的には、項目名とデータの対応関係抽出処理1302によって関連付けられた項目名を含む枠をA、データを含む枠をD0とする。項目名枠Aとデータ枠D0が上から下への関連付け、すなわち項目名枠Aが上でデータ枠D0が下にある場合、データ枠D0の下の枠D1が項目名を含む枠であるかを判定する。枠D1が項目名を含まない枠であり、かつ、データ枠D0の左端及び右端と枠D1の左端及び右端とが一致する場合、データ枠D0から枠D1へデータが連続して繋がると判定し、データ枠D0とデータ枠D1とを関連付ける。
 さらに、データ枠D0及びD1が関連付けられた後、データ枠D1の下にある枠D2が項目名を含む枠であるかを判定する。枠D2が項目名を含まない枠であり、かつ、データ枠D1の左端及び右端と枠D2の左端及び右端とが一致する場合、データ枠D1から枠D2へデータが連続して繋がると判定し、データ枠D1とデータ枠D2とを関連付ける。このように関連付けが続く限り、隣接する枠との関係を判定する。すなわち、関連付けがない又は連続する隣接方向に枠が存在しなくなるまで、判定を続ける。
 例えば、図10に示すように、項目名C1を含む枠とデータC1を含む枠とが、項目名とデータの対応関係抽出処理1302によって関連付けられる場合、項目と繋がるデータの連続性解析処理1303によって、データC1を含む枠とデータC2を含む枠とを関連付ける。さらに、データC2を含む枠とデータC3を含む枠とを関連付ける。
 また、項目名枠Aとデータ枠D0が左から右への関連付け、すなわち項目名枠Aが左でデータ枠D0が右にある場合、データ枠D0の右の枠D1が項目名を含む枠であるかを判定する。枠D1が項目名を含まない枠であり、かつ、データ枠D0の上端及び下端と枠D1の上端及び下端とが一致する場合、データ枠D0から枠D1へデータが連続して繋がると判定し、データ枠D0とデータ枠D1とを関連付ける。
 さらに、データ枠D0及びD1が関連付けられた後、データ枠D1の右にある枠D2が項目名を含む枠であるかを判定する。枠D2が項目名を含まない枠であり、かつ、データ枠D1の上端及び下端と枠D2の上端及び下端とが一致する場合、データ枠D1から枠D2へデータが連続して繋がると判定し、データ枠D1とデータ枠D2とを関連付ける。このように関連付けが続く限り、隣接する枠との関係を判定する。すなわち、関連付けがない又は連続する隣接方向に枠が存在しなくなるまで、判定を続ける。
 図11及び図12は、項目データ対応付候補106の例を説明する図である。
 図11に示す項目データ対応付候補1701は、図3に示す階層構造付き項目名辞書801を用いて、項目データ対応付候補生成処理908を実行して得られる。
 項目データ対応付候補1701では、温度の下位に種類A及び種類Bが関連付けられ、圧力の下位に種類A及び種類Bが関連付けられ、種類Aの下位にOil及びWaterが関連付けられ、種類Bの下位にOil及びWaterが関連付けられる。そして、D1が温度、種類A及びOilに関連付けられている。また、D2が温度、種類A及びWaterに関連付けられる。同様にして、D3~D8にも項目名が関連付けられる。
 なお、これまで説明した項目データ対応付候補抽出処理908は、項目名である機器Xと関連付けることができないが、項目データ対応付けの候補が得られればよい。
 図12に示す項目データ対応付候補1701は、2次元で関連付けられる表であり、図3に示す階層構造付き項目名辞書801を用いて、項目データ対応候補抽出処理908を実行して得られる。
 この例では、温度の下位に種類A、種類B及び種類Cが関連付けられ、圧力の下位に種類A、種類B及び種類Cが関連付けられ、機器Xの下位にOil及びWaterが関連付けられる。そして、D11が温度、種類A、機器X及びOilに関連付けられる。また、D12が温度、種類Bと機器XとOilに関連付けられる。D12とOilとは離れているが、項目と繋がるデータの連続性解析処理1303によって上か下へ関連付けられるため、OilとD12は関連付けられる。同様に、D13~D16にも項目名が関連付けられる。
 また、D21が温度、種類A、機器X及びwaterに関連付けられる。D21と種類Aとは離れているが、項目と繋がるデータの連続性解析処理1303によって、左から右へ関連付けられるため、種類AとD21は関連付けられる。同様に、D22~D26にも項目名が関連付けられる。
 図11、図12の例を用いて説明したように、項目データ対応付候補抽出処理908によって、項目名を含まない枠内の文字列Dに項目名が関連付けられる。この文字列Dと、文字列Dに関連付けられる0個、1個又は複数の項目名とのセットが、項目データ対応付候補である。階層構造付項目名辞書内にある一部の項目名が、文字列Dに関連付けられなくてもよい。
 <項目データ対応付候補ランキング抽出処理>
 図13は、項目データ対応付候補ランキング抽出処理107のフローチャートである。
 項目データ対応付候補ランキング抽出処理107は、階層構造付項目名辞書101内の各階層構造付項目に対応する項目データ対応付候補を項目データ対応付候補106の中から抽出し、抽出された各項目データ対応付候補の項目データ対応付信頼度を算出し、抽出された項目データ対応付候補を項目データ対応付信頼度に基づいてランキングをする。図13に示すフローチャートは、階層構造付項目名辞書内の階層構造付項目毎に、すなわち、階層構造付項目の数だけ実行される。例えば、図3に示す階層構造付項目名辞書を用いた場合、項目データ対応付候補ランキング抽出処理107を8回実行する。
 項目データ対応付候補ランキング抽出処理107では、まず、項目別対応付候補抽出処理1901を実行する。項目別対応付候補抽出1901は、項目データ対応付候補生成処理105で生成された全ての項目データ対応付候補106、及び階層構造付項目名辞書内の一つの階層構造付項目が入力されると、階層構造付項目に対応する可能性がある項目データ対応付候補を項目データ対応付候補106から抽出する。
 階層構造付項目に対応する項目データ対応付候補を抽出する方法は、様々な方法がある。その一例として、項目名の一致数を用いて候補を抽出することができる。具体的には、階層構造付項目内の項目名と一致する項目データ対応付候補内の項目名の数を算出し、一つ(又は、所定の閾値)以上の項目名が一致する項目データ対応付候補を抽出する。抽出された項目データ対応付候補が、項目別項目データ対応付候補である。項目データ対応付候補生成処理では、必ずしも階層構造付項目内の項目名と項目データ対応付候補内の項目名の全てが一致する項目データ対応付候補を生成できるとは限らない。文書構造が複雑で対応付けできない、枠が抽出できない、項目名の一部が記載されていない、項目名の表記に揺れがある等、様々な要因があるためである。本方法では、部分的にでも項目名が一致する項目データ対応付候補を抽出することによって、完全に一致する項目データ対応付候補でない場合でも、ユーザに候補を提供できる。
 次に、項目データ対応付信頼度算出処理1902を実行する。項目データ対応付信頼度算出処理1902は、各項目別項目データ対応付候補の項目データ対応付信頼度を算出する。項目データ対応付信頼度は、項目別項目データ対応付候補が、階層構造付項目の項目名に対応する可能性を示す。
 例えば、項目データ対応付信頼度は、近似文字列照合により一致した項目名の数(項目名の一致数)及び階層構造付項目内の項目名と前記対応付候補の項目名との類似度を用いて算出することができる。階層構造付項目内の項目名と近似文字列照合によって一致した数をtとし、項目別項目データ対応付候補内の近似文字列照合により一致した項目名のうちi番目の文字列をWiとし、Wiの文字数をMiとし、Wiが項目名と照合されたときの編集距離(レーベンシュタイン距離)をNiとした場合、項目データ対応付信頼度Fは、式(1)で表すことができる。αはユーザが調整できるパラメータである。
Figure JPOXMLDOC01-appb-M000001
 式(1)で表わされる項目データ対応付信頼度は、近似文字列照合により一致した項目数が多いほど高い値となり、それらの照合の際に用いられた編集距離が大きいほど低い値となる。このため、項目データ対応付信頼度は、項目別項目データ対応付候補が階層構造付項目に対応する確度を示すことになる。なお、項目データ対応付信頼度は、一致する項目数が多いほど高い値となり、項目名と文字列の類似度が大きいほど高い値(編集距離が大きいほど低い値)となる関数であれば、他の関数や変換テーブルを用いてもよい。
 前述の説明では、近似文字列照合により一致した文字列数tとMi及び編集距離Niを引数とする関数を用いて信頼度を計算したが、必ずしも両方を用いなくてもよい。
 また、編集距離Niを用いて項目名と文字列の類似度を算出したが、項目名と文字列の類似度を示すものであれば、編集距離以外の値を用いて信頼度を計算してもよい。
 このように、近似文字列照合によって一致した項目名との数及び項目名との類似度の少なくとも一方を用いて信頼度を計算することによって、簡易な計算で精度よく信頼度を計算することができる。
 次に、対応付候補ランキング処理1903を実行する。対応付候補ランキング処理1903では、項目データ対応付信頼度算出処理1902で得られた項目データ対応付信頼度の値を用いて、項目別項目データ対応付候補を信頼度の高い順に並べる。
 以下にGUIの例を説明する。
 図14はデータ選択画面の例、図15はデータ選択箇所表示画面の例を説明する図である。
 なお、図示した例では、データ選択画面とデータ選択箇所表示画面とを別に構成したが、データ選択画面とデータ選択箇所表示画面とを一体に構成した画面でもよい。
 データ選択画面2001(図14)は、複数の項目名欄2004、データ候補欄2005、手入力欄2006及び出力ボタン2003を含む。
 ユーザは、抽出したいデータに関する階層構造付項目名辞書101及び文書104を指定してデータ抽出処理を実行する。データ選択画面2001は、データ抽出処理の結果として、階層構造付項目に対応する項目別項目データ対応付候補をランキングして出力する。
 図14に示すデータ選択画面2001の例では、機器Xの下位に種類GQB及び種類GOBがあり、種類GQBの下位に圧力及び温度があり、種類GOBの下位に圧力及び温度があり、圧力の下位にOil及びWaterがあり、温度の下位にOil及びWaterがある階層構造付項目が入力されている。
 階層構造付項目は、その階層に従って左から右へ並んで表示される。階層構造付項目の右隣には、項目データ対応付候補106の中にあるデータ文字列がプルダウン形式で表示されている。項目データ対応付候補106の中にあるデータ文字列は、項目データ対応付候補106の中にある項目名と対応付けられた文字列である。
 図14に示すデータ選択画面2001の例では、8番目の階層構造付項目に対応する項目データ対応付候補が複数あり、それらがプルダウン形式でランキングされ並べられている(2002)。8番目の階層構造付項目では、信頼度が最も高い項目データ対応付候補のデータ文字列がD206、信頼度が次に高い項目データ対応付候補のデータ文字列がD202、信頼度が3番目に高い項目データ対応付候補のデータ文字列がD203である。ユーザが、このプルダウンメニューの中からデータ文字列を選択すると、該当する項目データ対応付候補の位置をデータ選択箇所表示画面2101(図15)に表示することができる。
 データ選択箇所表示画面2101は、選択された項目名を示す矩形及び項目名の関連を示す線を入力された文書に重畳して描画することによって、選択箇所を識別可能に表示する。
 図15は、データ選択画面2001のプルダウンメニュー2002内のD206をマウス等で選択した場合のデータ選択箇所表示画面2101の例を示す。図15に示すデータ選択箇所表示画面2101では、文書内の表2が表示され、さらに4つの項目文字列が破線で囲われており、破線で囲われた領域が矢印で結ばれている。この破線と矢印は文書上に重畳して描かれている。破線で囲われている種類GOB、温度、Water及びD206が、データ選択画面2001で選択したD206に対応する項目別項目データ対応付候補であることを示す。
 ユーザは、データ選択画面2001からデータ文字列を選択した後、データ選択箇所表示画面2101を閲覧することによって、階層構造付項目に対応する正しいデータかを確認することができる。選択したデータが正しい場合、データ選択画面2001でのD206の選択をそのままにする。一方、選択したデータが正しくない場合、データ選択画面2001のプルダウンメニュー2002から別の候補を選択し、データ選択箇所表示画面2101で選択結果を確認する。
 データ選択画面2001のプルダウンメニュー2002内の全てのデータ文字列を選択しても正しいデータが存在しない場合、ユーザはデータ選択箇所表示画面2101内で文書をスクロールし、目視によって対応するデータを探し出し、データ選択画面(2001)の手入力欄2006にキーボード等を用いてデータ文字列を直接入力する。このように、ユーザが全ての階層構造付項目に対するデータの選択又は入力を完了した後、出力ボタン2003を操作すると、階層構造付項目及び対するデータを表形式のデータとしてファイルに出力する。
 以上に説明したように本実施例では、階層構造付項目の上位下位の関係を直接に項目とデータとの関連付けに用いるのではなく、項目名をリスト化(102)して項目データ対応付候補106を生成し(105)、生成された項目データ対応付候補106の中から階層構造付項目に項目データを対応付ける(107)。この際、項目名の一致数を用いた項目データ対応付信頼度に基づいてランキングをして、データを抽出しているので、実際に文書に記載されている項目名の上位下位の関係が入れ替わっていても、項目名と対応するデータを高精度に抽出することができる。
 また項目名の一致数及び項目名と文字列の類似度合いを用いて項目とデータを対応付けることによって、表記(例えば、文字の外観)が似ている文字列を同じ項目名と判定した場合でも、より似ているデータ文字列を上位にランキングすることができ、項目名と対応する可能性が高いデータ文字列を先に表示することができる。また、階層構造付項目内のすべての項目名で一致するデータがない場合にも、項目名が部分的に一致するデータを抽出するため、ユーザは部分的に一致するデータの中から正解を選択することができる。
 次に、本発明の第2の実施例について説明する。
 項目データ対応付け候補生成処理105は、第1の実施例で前述したように、2値化処理903から項目データ対応付け候補抽出処理908までを一つのソフトウェアで実現することもできるが、第2の実施例のように複数のソフトウェアで実現することもできる。
 例えば、市販のOCRを用いて2値化処理903、レイアウト解析処理904及び文字認識処理905を行い、その結果得られる罫線、文字及びそれらの位置情報を含むPDF文書1001を生成する。また、一般的な電子文書(例えば、ワードプロセッサによって作成された文書)1003をPDF文書1001に変換してもよい。
 具体的には、図16に示すように、PDF文書1001を入力し、PDF構成要素抽出処理1002において、PDF文書1001に含まれる罫線、文字及びそれらの位置情報を抽出する。そして、抽出された情報を用いて、レイアウト解析処理904、枠連結関係解析処理907、項目名枠判定処理906及び項目データ対応付候補抽出処理908を実行する。なお、項目名枠判定処理907と枠連結関係解析処理906との順序は図示したものと逆でもよい。
 以上に説明したように、本発明の第2の実施例によると、PDF文書を解析するプログラムと組み合わせることによって、罫線、文字及びそれらの位置情報をPDF文書から抽出し、項目データ対応付信頼度を計算することができる。このため、項目に対応するデータをPDF文書から高精度に抽出することができる。
 次に、本発明の第3の実施例について説明する。
 また、電子文書作成ソフトウェア(例えば、ワードプロセッサ)で作成された電子文書1003を入力することもできる。
 具体的には、図16に示すように、作成された電子文書1003を入力し、文書構成要素抽出処理1004において、電子文書1003に含まれる罫線、文字及びそれらの位置情報を用いて、レイアウト解析処理904、枠連結関係解析処理907、項目名枠判定処理906及び項目データ対応付候補抽出処理908を実行する。
 以上に説明したように、本発明の第3の実施例によると、電子文書を解析するプログラムと組み合わせることによって、罫線、文字及びそれらの位置情報を電子文書から抽出し、項目データ対応付信頼度を計算することができる。このため、項目に対応するデータを電子文書から高精度に抽出することができる。
 以上、本発明を添付の図面を参照して詳細に説明したが、本発明はこのような具体的構成に限定されるものではなく、添付した請求の範囲の趣旨内における様々な変更及び同等の構成を含むものである。

Claims (17)

  1.  非定型文書からデータを抽出する方法であって、
     前記方法は、プログラムを実行するプロセッサ、前記プロセッサで実行されるプログラムを格納するメモリ、及び前記プログラムの実行に必要なデータが入力されるインターフェースを有する計算機で実行され、
     前記方法は、
     前記プロセッサが、入力された階層構造付項目辞書内の項目名を列記した項目名情報を生成する項目名情報生成ステップと、
     前記プロセッサが、前記生成された項目名情報を用いて、入力された文書から項目名とデータとの対応関係を解析することによって、項目名とデータとの対応関係を示す対応候補を生成する対応候補生成ステップと、
     前記プロセッサが、前記生成された1又は複数の対応候補のそれぞれが、前記階層構造付項目辞書に含まれる1又は複数の階層構造付項目のそれぞれに対応する確からしさを示す信頼度を計算し、前記対応候補のうち前記階層構造付項目に対応する対応候補を、前記計算された信頼度の順に抽出する抽出ステップと、を含むことを特徴とするデータ抽出方法。
  2.  請求項1に記載のデータ抽出方法であって、
     前記対応候補は、データを示す文字列であるデータ文字列と、階層構造付項目辞書内の項目名と文字列照合により項目名と判定された文字列である項目名文字列と、項目名文字列と照合された項目名と、データ文字列と項目名文字列の連結関係と位置情報とを含むことを特徴とするデータ抽出方法。
  3.  請求項1又は2に記載のデータ抽出方法であって、
     前記抽出ステップでは、前記プロセッサは、前記階層構造付項目内の項目名と前記対応候補内にある項目名が一致する数を用いて前記信頼度を計算することを特徴とするデータ抽出方法。
  4.  請求項1又は2に記載のデータ抽出方法であって、
     前記抽出ステップでは、前記プロセッサは、前記階層構造付項目内の項目名と前記対応候補の項目名との類似度を用いて前記信頼度を計算することを特徴とするデータ抽出方法。
  5.  請求項4に記載のデータ抽出方法であって、
     前記抽出ステップでは、前記プロセッサは、前記階層構造付項目辞書内の項目名と前記対応候補の項目名とを照合する際に求めた編集距離を用いて前記類似度を計算することを特徴とするデータ抽出方法。
  6.  請求項1又は2に記載のデータ抽出方法であって、
     前記抽出ステップでは、前記プロセッサは、前記階層構造付項目内の項目名と一致する前記対応候補の項目名の数を計算し、前記階層構造付項目辞書内の項目名と前記対応候補の項目名とを照合して求めた編集距離を計算し、前記一致する項目名の数及び前記編集距離を引数とする関数を用いて前記信頼度を計算し、
     前記関数は、前記一致する項目名の数が多ければ高い値となり、前記編集距離が大きければ低い値となる関数であることを特徴とするデータ抽出方法。
  7.  請求項1から6のいずれか一つに記載のデータ抽出方法であって、
     前記対応候補生成ステップは、
     前記プロセッサが、紙の文書をスキャンしたイメージデータの入力を受け付け、前記受け付けたイメージデータを2値化する2値化ステップと、
     前記プロセッサが、前記2値化されたイメージデータから、文字列及び枠を抽出するレイアウト解析ステップと、
     前記プロセッサが、前記抽出された文字列を認識する文字認識ステップと、
     前記プロセッサが、前記抽出された枠の連結関係を解析する枠連結関係解析ステップと、
     前記プロセッサが、前記項目名情報内の項目名と前記認識された文字列とを照合することによって、前記抽出された枠が項目名を含む項目枠であるかを判定する項目名枠判定ステップと、
     前記プロセッサが、項目名を含む項目枠と項目名を含まないデータ枠との連結関係を用いて、項目名とデータとの対応関係を解析し、前記解析された項目名とデータとの対応関係を表わす前記対応候補を抽出する対応候補抽出ステップと、を含むことを特徴とするデータ抽出方法。
  8.  請求項1から6のいずれか一つに記載のデータ抽出方法であって、
     前記対応候補生成ステップは、
     前記プロセッサが、文字及び罫線のデータが含まれる電子文書の入力を受け付け、前記受け付けた電子文書から文字、文字の位置情報、罫線及び罫線の位置情報を抽出する構成要素抽出ステップと、
     前記プロセッサが、前記抽出された構成要素から、文字列及び枠を抽出するレイアウト解析ステップと、
     前記プロセッサが、前記抽出された枠の連結関係を解析する枠連結関係解析ステップと、
     前記プロセッサが、前記項目名情報内の項目名と前記認識された文字とを照合することによって、前記抽出された枠が項目名を含む項目枠であるかを判定する項目名枠判定ステップと、
     前記プロセッサが、項目名を含む項目枠と項目名を含まないデータ枠との連結関係を用いて、項目名とデータとの対応関係を解析し、前記解析された項目名とデータとの対応関係を表わす前記対応候補を抽出する対応候補抽出ステップと、を含むことを特徴とするデータ抽出方法。
  9.  非定型文書からデータを抽出するデータ抽出装置であって、
     前記データ抽出装置は、プログラムを実行するプロセッサ、前記プロセッサで実行されるプログラムを格納するメモリ、及び前記プログラムの実行に必要なデータが入力されるインターフェースを備え、
     前記プロセッサは、
     入力された階層構造付項目辞書内の項目名を列記した項目名情報を生成し、
     前記生成された項目名情報を用いて、入力された文書から項目名とデータとの対応関係を解析することによって、項目名とデータとの対応関係を示す対応候補を生成し、
     前記生成された1又は複数の対応候補のそれぞれが、前記階層構造付項目辞書に含まれる1又は複数の階層構造付項目のそれぞれに対応する確からしさを示す信頼度を計算し、前記対応候補のうち前記階層構造付項目に対応する対応候補を、前記計算された信頼度の順に抽出することを特徴とするデータ抽出装置。
  10.  非定型文書からデータを抽出する処理を計算機に実行させるためのプログラムであって、
     前記計算機は、プログラムを実行するプロセッサ、前記プロセッサで実行されるプログラムを格納するメモリ、及び前記プログラムの実行に必要なデータが入力されるインターフェースを有し、
     前記プログラムは、
     入力された階層構造付項目辞書内の項目名を列記した項目名情報を生成する項目名情報生成手順と、
     前記生成された項目名情報を用いて、入力された文書から項目名とデータとの対応関係を解析することによって、項目名とデータとの対応関係を示す対応候補を生成する対応候補生成手順と、
     前記生成された1又は複数の対応候補のそれぞれが、階層構造付項目辞書に含まれる1又は複数の階層構造付項目のそれぞれに対応する確からしさを示す信頼度を計算し、前記対応候補のうち前記階層構造付項目に対応する対応候補を、前記計算された信頼度の順に抽出する抽出手順と、を前記計算機に実行させるためのプログラム。
  11.  請求項10に記載のプログラムであって、
     前記対応候補は、データを示す文字列であるデータ文字列と、階層構造付項目辞書内の項目名と文字列照合により項目名と判定された文字列である項目名文字列と、項目名文字列と照合された項目名と、データ文字列と項目名文字列の連結関係と位置情報とを含むことを特徴とするプログラム。
  12.  請求項10又は11に記載のプログラムであって、
     前記抽出手順では、前記階層構造付項目内の項目名と一致する前記対応候補内にある項目名が一致する数を用いて前記信頼度を前記計算機に計算させることを特徴とするプログラム。
  13.  請求項10又は11に記載のプログラムであって、
     前記抽出手順は、前記階層構造付項目内の項目名と前記対応候補の項目名との類似度を用いて前記信頼度を計算する手順を含むことを特徴とするプログラム。
  14.  請求項13に記載のプログラムであって、
     前記抽出手順は、前記階層構造付項目辞書内の項目名と前記対応候補の項目名とを照合する際に求めた編集距離を用いて前記類似度を計算する手順を含むことを特徴とするプログラム。
  15.  請求項10又は11に記載のプログラムであって、
     前記抽出手順は、前記階層構造付項目内の項目名と一致する前記対応候補の項目名の数を計算する手順と、前記階層構造付項目辞書内の項目名と前記対応候補の項目名とを照合して求めた編集距離を計算する手順と、前記一致する項目名の数及び前記編集距離を引数とする関数を用いて前記信頼度を計算する手順とを含み、
     前記関数は、前記一致する項目名の数が多ければ高い値となり、前記編集距離が大きければ低い値となる関数であることを特徴とするプログラム。
  16.  請求項10から15のいずれか一つに記載のプログラムであって、
     前記対応候補生成手順は、
     紙の文書をスキャンしたイメージデータの入力を受け付け、前記受け付けたイメージデータを2値化する2値化手順と、
     前記プロセッサが、前記2値化されたイメージデータから、文字列及び枠を抽出するレイアウト解析手順と、
     前記抽出された文字を認識する文字認識手順と、
     前記抽出された枠の連結関係を解析する枠連結関係解析手順と、
     前記項目名情報内の項目名と前記認識された文字とを照合することによって、前記抽出された枠が項目名を含む項目枠であるかを判定する項目名枠判定手順と、
     項目名を含む項目枠と項目名を含まないデータ枠との連結関係を用いて、項目名とデータとの対応関係を解析し、前記解析された項目名とデータとの対応関係を表わす前記対応候補を抽出する対応候補抽出手順と、を含むことを特徴とするプログラム。
  17.  請求項10から15のいずれか一つに記載のプログラムであって、
     前記対応候補生成手順は、
     文字及び罫線のデータが含まれる電子文書から文字、文字の位置情報、罫線及び罫線の位置情報の入力を受け付ける構成要素情報受付手順と、
     前記受け付けた構成要素の情報から、文字列及び枠を抽出するレイアウト解析手順と、
     前記抽出された文字列を認識する文字認識ステップと、
     前記抽出された枠の連結関係を解析する枠連結関係解析手順と、
     前記項目名情報内の項目名と前記認識された文字とを照合することによって、前記抽出された枠が項目名を含む項目枠であるかを判定する項目名枠判定手順と、
     項目名を含む項目枠と項目名を含まないデータ枠との連結関係を用いて、項目名とデータとの対応関係を解析し、前記解析された項目名とデータとの対応関係を表わす前記対応候補を抽出する対応候補抽出手順と、を含むことを特徴とするプログラム。
PCT/JP2012/078504 2012-11-02 2012-11-02 データ抽出方法、データ抽出装置及びそのプログラム WO2014068770A1 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2014544181A JPWO2014068770A1 (ja) 2012-11-02 2012-11-02 データ抽出方法、データ抽出装置及びそのプログラム
PCT/JP2012/078504 WO2014068770A1 (ja) 2012-11-02 2012-11-02 データ抽出方法、データ抽出装置及びそのプログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2012/078504 WO2014068770A1 (ja) 2012-11-02 2012-11-02 データ抽出方法、データ抽出装置及びそのプログラム

Publications (1)

Publication Number Publication Date
WO2014068770A1 true WO2014068770A1 (ja) 2014-05-08

Family

ID=50626733

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2012/078504 WO2014068770A1 (ja) 2012-11-02 2012-11-02 データ抽出方法、データ抽出装置及びそのプログラム

Country Status (2)

Country Link
JP (1) JPWO2014068770A1 (ja)
WO (1) WO2014068770A1 (ja)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2019065775A1 (ja) * 2017-09-27 2019-04-04 株式会社ミラボ 標準項目名設定装置、標準項目名設定方法及び標準項目名設定プログラム
JP2022009598A (ja) * 2017-09-27 2022-01-14 株式会社ミラボ 標準項目名設定装置、標準項目名設定方法及び標準項目名設定プログラム
CN114511861A (zh) * 2021-12-20 2022-05-17 杭州未名信科科技有限公司 一种表格线定位方法和系统
US11386255B2 (en) * 2017-12-29 2022-07-12 Texas Instruments Incorporated Parameter extraction from digitized image of a schematic or block diagram for electrical designs
WO2024084539A1 (ja) * 2022-10-17 2024-04-25 三菱電機株式会社 表認識装置及び方法

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH02240789A (ja) * 1989-03-14 1990-09-25 Sharp Corp 文字列切り出し方式
JP2005275830A (ja) * 2004-03-25 2005-10-06 Hitachi Computer Peripherals Co Ltd 帳票認識方法
JP2008204226A (ja) * 2007-02-21 2008-09-04 Hitachi Computer Peripherals Co Ltd 帳票認識装置およびそのプログラム
JP2009169844A (ja) * 2008-01-18 2009-07-30 Hitachi Software Eng Co Ltd 表認識方法及び表認識装置

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH02240789A (ja) * 1989-03-14 1990-09-25 Sharp Corp 文字列切り出し方式
JP2005275830A (ja) * 2004-03-25 2005-10-06 Hitachi Computer Peripherals Co Ltd 帳票認識方法
JP2008204226A (ja) * 2007-02-21 2008-09-04 Hitachi Computer Peripherals Co Ltd 帳票認識装置およびそのプログラム
JP2009169844A (ja) * 2008-01-18 2009-07-30 Hitachi Software Eng Co Ltd 表認識方法及び表認識装置

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2019065775A1 (ja) * 2017-09-27 2019-04-04 株式会社ミラボ 標準項目名設定装置、標準項目名設定方法及び標準項目名設定プログラム
JP2019061550A (ja) * 2017-09-27 2019-04-18 株式会社ミラボ 標準項目名設定装置、標準項目名設定方法及び標準項目名設定プログラム
JP2022009598A (ja) * 2017-09-27 2022-01-14 株式会社ミラボ 標準項目名設定装置、標準項目名設定方法及び標準項目名設定プログラム
JP7029865B2 (ja) 2017-09-27 2022-03-04 株式会社ミラボ 標準項目名設定装置、標準項目名設定方法及び標準項目名設定プログラム
US11386255B2 (en) * 2017-12-29 2022-07-12 Texas Instruments Incorporated Parameter extraction from digitized image of a schematic or block diagram for electrical designs
CN114511861A (zh) * 2021-12-20 2022-05-17 杭州未名信科科技有限公司 一种表格线定位方法和系统
WO2024084539A1 (ja) * 2022-10-17 2024-04-25 三菱電機株式会社 表認識装置及び方法
JP7563655B2 (ja) 2022-10-17 2024-10-08 三菱電機株式会社 表認識装置及び方法

Also Published As

Publication number Publication date
JPWO2014068770A1 (ja) 2016-09-08

Similar Documents

Publication Publication Date Title
US10846553B2 (en) Recognizing typewritten and handwritten characters using end-to-end deep learning
US10915788B2 (en) Optical character recognition using end-to-end deep learning
US8468167B2 (en) Automatic data validation and correction
JP4347677B2 (ja) 帳票ocrプログラム、方法及び装置
US20070098263A1 (en) Data entry apparatus and program therefor
EP1971957B1 (en) Methods and apparatuses for extending dynamic handwriting recognition to recognize static handwritten and machine generated text
JP2012185722A (ja) 文字認識装置、文字認識方法、文字認識システム、および文字認識プログラム
US11475688B2 (en) Information processing apparatus and information processing method for extracting information from document image
US9811565B2 (en) Error identification, indexing and reporting construction documents
US11256760B1 (en) Region adjacent subgraph isomorphism for layout clustering in document images
WO2014068770A1 (ja) データ抽出方法、データ抽出装置及びそのプログラム
JP4782346B2 (ja) 電子ドキュメントを処理する方法および装置
JP4649512B2 (ja) 文字列検索方法およびその装置
JP2014182477A (ja) プログラム及び帳票処理装置
JP2015069256A (ja) 文字識別システム
WO2022038821A1 (ja) 表構造認識装置及び方法
Singh et al. Online handwritten Gurmukhi words recognition: An inclusive study
JP6856916B1 (ja) 情報処理装置、情報処理方法及び情報処理プログラム
WO2014170965A1 (ja) 文書処理方法、文書処理装置および文書処理プログラム
JP5134383B2 (ja) Ocr装置、証跡管理装置及び証跡管理システム
JP4466241B2 (ja) 文書処理手法及び文書処理装置
Alzuru et al. Cooperative human-machine data extraction from biological collections
Cao et al. Automatic recognition of tables in construction tender documents
Balasooriya Improving and Measuring OCR Accuracy for Sinhala with Tesseract OCR Engine
KR20220142901A (ko) 반정형 문서로부터 정보를 추출하는 방법 및 시스템

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 12887442

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

ENP Entry into the national phase

Ref document number: 2014544181

Country of ref document: JP

Kind code of ref document: A

122 Ep: pct application non-entry in european phase

Ref document number: 12887442

Country of ref document: EP

Kind code of ref document: A1