WO2012121033A1 - 文字認識装置、文字認識方法、文字認識システム、および文字認識プログラム - Google Patents

文字認識装置、文字認識方法、文字認識システム、および文字認識プログラム Download PDF

Info

Publication number
WO2012121033A1
WO2012121033A1 PCT/JP2012/054660 JP2012054660W WO2012121033A1 WO 2012121033 A1 WO2012121033 A1 WO 2012121033A1 JP 2012054660 W JP2012054660 W JP 2012054660W WO 2012121033 A1 WO2012121033 A1 WO 2012121033A1
Authority
WO
WIPO (PCT)
Prior art keywords
character
character string
character recognition
transition data
candidate
Prior art date
Application number
PCT/JP2012/054660
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 EP12755462.4A priority Critical patent/EP2685405A4/en
Priority to KR1020137001670A priority patent/KR101463499B1/ko
Priority to CN201280003349.XA priority patent/CN103154974B/zh
Priority to US13/808,445 priority patent/US8965126B2/en
Publication of WO2012121033A1 publication Critical patent/WO2012121033A1/ja

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/88Image or video recognition using optical means, e.g. reference filters, holographic masks, frequency domain filters or spatial domain filters
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V30/00Character recognition; Recognising digital ink; Document-oriented image-based pattern recognition
    • G06V30/10Character recognition
    • G06V30/26Techniques for post-processing, e.g. correcting the recognition result
    • G06V30/262Techniques for post-processing, e.g. correcting the recognition result using context analysis, e.g. lexical, syntactic or semantic context
    • G06V30/268Lexical context
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/768Arrangements for image or video recognition or understanding using pattern recognition or machine learning using context analysis, e.g. recognition aided by known co-occurring patterns
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V30/00Character recognition; Recognising digital ink; Document-oriented image-based pattern recognition
    • G06V30/10Character recognition

Definitions

  • the present invention relates to a character recognition device, a character recognition method, a character recognition system, and a character recognition program.
  • Patent Documents 1 and 2 and Non-Patent Documents 1 to 3 conventionally, a technique for recognizing characters existing in a three-dimensional space such as a signboard from a scene image is known.
  • recognition accuracy is improved by using external data such as word knowledge and position information of a shooting location.
  • Patent Document 1 a character string extracted from a signboard or the like in an image is collated with a telephone directory database, and the degree of coincidence with advertiser data and telephone number data included in the telephone directory database is determined. It is determined whether the selected character string is related to the advertiser.
  • a weighted finite state transducer (Weighted Finite State Transducer, hereinafter referred to as “WFST”) that expresses a set of symbol conversions and weights as state transitions is fast and highly versatile in the fields of speech recognition and language processing. It is used as a scalable method.
  • WFST Weighted Finite State Transducer
  • Non-Patent Document 3 proposes a method of performing error correction using WFST after outputting a character recognition result in Japanese.
  • Patent Document 1 it is necessary to collate with a large amount of word knowledge included in a telephone directory database and the like, and there is a possibility that the speed of character recognition processing cannot be sufficiently increased. Further, in the method described in Patent Document 2, a position information acquisition unit and a direction information acquisition unit are separately required, and the apparatus configuration may be complicated.
  • non-patent document 1 and non-patent document 2 are premised on a language with a break between vocabularies. That is, it is assumed that the vocabulary to be subjected to the WFST process has been cut out in advance.
  • Non-Patent Document 2 character recognition is performed by using overlapping cutout positions in character recognition for character recognition, and is expressed in WFST. However, when erroneous recognition appears as a result of character recognition May not be able to respond.
  • Non-Patent Document 1 and Non-Patent Document 3 deal with the problem of misrecognition due to overlapping cut-out positions by character fusion / separation, but Japanese has many character types, and there are a wide variety in the actual environment. Since there is a design of characters, it is necessary to cover a huge number of combinations. Further, Non-Patent Document 3 uses a result of character recognition once, and it is assumed that a character recognition result is obtained with a certain degree of accuracy. For this reason, when many corrections by language processing are performed in the original character recognition, it may be difficult to perform correction based on the character shape. Moreover, there is a possibility that the correction of the omission of detection of the character area in the original character recognition cannot be handled.
  • An object is to provide a character recognition device, a character recognition method, a character recognition system, and a character recognition program.
  • a character recognition device includes an image input unit that inputs an image including a character to be recognized, and a character region that detects a character region in the image where the character exists.
  • a character recognition process for each character is performed on the character existing in the divided area divided by the detection means, the character area dividing means for dividing the character area in units of characters, and the character area dividing means is attached to one character.
  • Character recognition means for outputting one or more candidate character recognition processing results; input the candidate; calculate a weight value for transition to the candidate; and character string transition data based on the set of the candidate and the weight value
  • the first character string transition data creating means for creating the first character string transition data and the state transition are sequentially performed based on the first character string transition data, and the weight value in each state transition is accumulated.
  • the cumulative weight value for each state transition characterized in that it comprises a finite-state conversion means for outputting, based the results of one or more of the state transition to the cumulative weight value.
  • the image input means inputs an image including a character to be recognized
  • the character area detection means is a character area that is an area where the character exists in the image.
  • the data creation step and the finite state conversion means sequentially perform the state transition based on the first character string transition data, and calculate a cumulative weight value for each state transition by accumulating the weight value in each state transition. And a finite state conversion step of outputting the result of the state transition based on the cumulative weight value.
  • the character recognition system of the present invention is a character recognition system including a terminal and a server, and the terminal includes an image input means for inputting an image including a character to be recognized, and the character in the image.
  • Character area detection means for detecting a character area that is an area
  • character area dividing means for dividing the character area in units of one character, and for each character in the divided area divided by the character area dividing means, one character at a time
  • character recognition means for outputting one or more candidate character recognition processing results per character
  • the server inputs the candidate and sets a weight value for the transition to the candidate.
  • First character string transition data creating means for calculating and creating first character string transition data which is character string transition data based on the set of the candidate and the weight value; and the first character string State transition is performed sequentially based on transition data, weight values in each state transition are accumulated to calculate a cumulative weight value for each state transition, and one or more state transition results are output based on the accumulated weight value And a state converting means.
  • the character recognition program of the present invention includes a computer for inputting an image including a character to be recognized, and a character region detecting unit for detecting a character region in the image where the character exists.
  • Character area dividing means for dividing the character area in character units, and character recognition processing for each character is performed on the characters existing in the divided areas divided by the character area dividing means, and one or more per character
  • a character recognition means for outputting a candidate for the result of character recognition processing, a candidate for inputting the candidate, calculating a weight value for the transition to the candidate, and a character string transition data based on the set of the candidate and the weight value
  • First character string transition data creating means for creating one character string transition data, and state transitions are sequentially performed based on the first character string transition data, and a weight value in each state transition is determined. Calculating a cumulative weight value for each state transition by the product, and wherein the operating results of one or more of the state transition finite state conversion means for outputting, based on the accumulated weight value as.
  • the apparatus further comprises second character string transition data creating means for inputting a keyword from a user and creating second character string transition data that is character string transition data of the keyword. Further, it may be determined whether or not the keyword exists in the image by performing a composition operation on the first character string transition data and the second character string transition data.
  • the first character string transition data of the character recognition candidate group itself is used as a search table for an image, and the character recognition device of the present invention determines whether a user input keyword exists in the image. It can be used as a device.
  • the present invention further includes a third character string transition data creating means for creating third character string transition data that is character string transition data of each vocabulary existing in the vocabulary database, and the finite state conversion means includes the A vocabulary existing in the image may be detected by performing a synthesis operation on the first character string transition data and the third character string transition data.
  • the character recognition device of the present invention is utilized as a vocabulary detection device by performing a composition operation on the first character string transition data of the character recognition candidate group and the third character string transition data in the vocabulary database. Can do.
  • the character recognition means outputs a plurality of candidates with priorities
  • the first character string transition data creation means calculates the weight value based on the priorities. May be.
  • the first character string transition data creation means calculates the weight value.
  • the character recognition unit performs the character recognition process using at least two different types of recognition methods
  • the first character string transition data generation unit includes the candidate in the different recognition methods.
  • the weight value may be calculated based on the number of outputs and the priority order.
  • the first character string transition data creation means calculates the weight value.
  • the first character string transition data creating means may calculate the weight value in consideration of character string transitions of words registered in a language database.
  • the first character string transition data creation means calculates the weight value.
  • the first character string transition data creating means may correct the weight value based on the position of the candidate in the image or the character size of the candidate.
  • the first character string transition data creation means to correct the weight value.
  • vocabulary detection accuracy can be improved by correcting the weight value.
  • the character recognition unit when the character area dividing unit divides the character area using a plurality of division patterns and generates a plurality of types of the divided regions, the character recognition unit The character recognition processing is performed for each of the divided regions, and the first character string transition data creating unit creates the first character string transition data for the candidates in each of the plurality of types of divided regions, and The state conversion means may output the result having the highest cumulative weight value through the plurality of types of divided regions.
  • the first character string transition data creating means includes a first empty transition that is an empty transition from the initial state of the character string transition to the candidate, and a final state of the character string transition from the candidate.
  • the first character string transition data may be generated including a second empty transition that is an empty transition and a third empty transition that is an empty transition for skipping the candidate in units of one character.
  • the first character string transition data and the second character string transition data or the third character string transition data are included by including the first character transition data, the second character transition, and the third character transition data in the first character string transition data.
  • the accuracy of the composition operation with the character string transition data can be increased.
  • the character recognition unit outputs identification information indicating a break between words when outputting the candidate of the character recognition processing result
  • the first character string transition data generation unit includes: , Adding the identification information to create the first character string transition data, and the finite state conversion means, when performing the state transition, the state in units of a portion divided by the two identification information Transitions may be made.
  • the identification information indicating the delimiter by using the identification information indicating the delimiter, it is possible to perform character recognition with high accuracy even for a split-language.
  • the character recognition unit when the character recognition unit outputs the candidate of the character recognition processing result, the character recognition unit outputs position information of the candidate in the image together, and the first character string transition data generation unit May add the position information to create the first character string transition data, and the finite state conversion means may add the position information and output the result.
  • the vocabulary database has classification information for the vocabulary, and the second character string transition data creating means or the third character string transition data creating means adds the classification information, and The second character string transition data or the third character string transition data may be created, and the finite state conversion means may add the classification information and output the result.
  • the present invention further includes vocabulary classification relevance vector storage means for storing a vocabulary classification relevance vector indicating relevance between a vocabulary and the classification information, wherein the first character string transition data creation means includes the first character string transition data creation means.
  • the value of the vocabulary classification relevance vector is added to the candidate and the weight value in the character string transition data, and the classification information having the largest value is set as the classification information corresponding to the candidate. Based on the classification information, The weight value for the candidate may be modified.
  • the first character string transition data creation means to correct the weight value.
  • vocabulary detection accuracy can be improved by correcting the weight value.
  • a character recognition device and a character recognition capable of performing character recognition from a scene image with high accuracy and high speed using a simplified device configuration without using a database such as an external telephone directory.
  • a method, a character recognition system, and a character recognition program can be provided.
  • FIG. 2 is a schematic configuration diagram showing functional components of the character recognition device 1.
  • FIG. 2 is a hardware configuration diagram of the character recognition device 1.
  • FIG. It is a flowchart which shows the whole processing flow of this embodiment.
  • 5 is a diagram for explaining the operation of a character area dividing unit 104.
  • FIG. It is a figure which shows an example of the 1st WFST data which the 1st character string transition data creation part 106 created. It is a figure which shows the process when the character area division part 104 performs over segmentation. It is a figure for demonstrating that the 1st character string transition data creation part 106 adjusts a weight value with the magnitude
  • the character recognition device 1 detects a character area from a scene image and performs character recognition (for example, keyword detection, search table creation, etc.).
  • FIG. 1 is a schematic configuration diagram showing functional components of the character recognition device 1
  • FIG. 2 is a hardware configuration diagram of the character recognition device 1.
  • the character recognition device 1 physically receives data from a main storage device such as a CPU 11, a ROM 12 and a RAM 13, a keyboard and a mouse, a device such as a camera, or an external device.
  • an input device 14 that is a device for reading, an output device 15 such as a display, a communication module 16 such as a network card for transmitting and receiving data to and from other devices, an auxiliary storage device 17 such as a hard disk, and the like.
  • the image read by the input device 14 may be an image taken by the own device or an image taken by another device.
  • Each function of the character recognition device 1 to be described later allows the input device 14, the output device 15, and the communication module 16 to be controlled under the control of the CPU 11 by reading predetermined computer software on the hardware such as the CPU 11, the ROM 12, and the RAM 13. This is realized by operating and reading and writing data in the main storage devices 12 and 13 and the auxiliary storage device 17.
  • the character recognition device 1 includes, as functional components, an image reading unit 101 (corresponding to “image input means” in the claims), an image binarization unit 102, a character region detection unit. 103 (corresponding to “character area detecting means” in the claims), a character area dividing unit 104 (corresponding to “character area dividing means” in the claims), and a character recognizing unit 105 (“characters in the claims”
  • the first character string transition data creating unit 106 (corresponding to the “first character string transition data creating unit” in the claims), the second character string transition data creating unit 107 (the claims) 3), a third character string transition data creating unit 108 (corresponding to “third character string transition data creating means” in the claims), WFS Processing unit 109 (corresponding to “finite state conversion means” in claims), character string detection unit 110 (corresponding to “character string detection means” in claims), vocabulary DB 111 (“vocabulary in claims”) Equivalent to “Database”).
  • an image reading unit 101 corresponding to “image input means” in the claims
  • the image reading unit 101 inputs an image including characters to be recognized (step S1, corresponding to “image input step” in the claims). Since a technology has already been established for a document image in which a printed document is captured by a scanner, and high-speed and high-accuracy recognition is possible, character recognition as a document image is performed by an existing document OCR engine (step S2). . Then, the first character string transition data creating unit 106 corresponds to the data represented by WFST from the recognition result candidate group (hereinafter also referred to as “first WFST data”. “First character string transition data” in the claims). (Step S3, corresponding to the “first character string transition data creation step” in the claims).
  • the number of characters of the recognition result obtained by the existing document OCR engine is equal to or greater than the specified number and the recognition accuracy is equal to or greater than the specified value, it is determined as a document and the WFST calculation process in step S10 is not performed.
  • the scale is adjusted to a size suitable for character recognition.
  • step S4 Image binarization
  • Image binarization is performed by local brightness and darkness, and can handle low-contrast situations. A black character is detected on a white background, the brightness of the original image is inverted, and a white character is detected on a black background. Also, noise removal is performed on areas other than the obvious characters by mask processing such as expansion and contraction.
  • the character area detection unit 103 detects a character area (step S5, corresponding to “character area detection step” in the claims).
  • “Character region” refers to a region where a character to be recognized exists, or a region with such a possibility, in the image input in step S1.
  • a method of detecting the feature of the shape by statistical learning is known as in Reference Document 1 below.
  • labeling is performed for each region by performing labeling processing, and the shape characteristics of each region (circularity, number of holes, number of regions to be configured, outer peripheral rectangle size / aspect ratio, area of label region and non-label region) The ratio is detected by determining whether the area is a character area.
  • the character area dividing unit 104 detects character string candidates in the character area and divides the character area in character units (hereinafter also referred to as “cutout”) (step S6). Equivalent to “character area dividing step” in the claims). Specifically, the character area dividing unit 104 first detects a character line. The character line is assumed to be composed of three or more characters, and is detected from the transition of the size, interval, and angle of the character region. A labeling process is performed for each detected character line, and the character lines are narrowed down based on the median value, average value, mode value, etc. of the angle for each labeled region. FIG.
  • FIG. 4 is a diagram for explaining the operation of the character area dividing unit 104.
  • horizontal and vertical shear deformation is performed by searching based on the angle of the character line, and both deformation and distortion of the character shear and rotation are corrected.
  • an image A1 shows an image before correction in which a rotated character string is written
  • an image A2 shows an image after correcting the inclination in the character string direction by shear deformation in a direction perpendicular to the character line. Show.
  • the character area dividing unit 104 removes noise from the image A2 whose distortion has been corrected, obtains the character spacing in the direction of the character line, and cuts out character by character.
  • the median, average value, and mode of area sizes obtained at the time of character line detection are obtained by obtaining candidates between characters using a histogram obtained by adding pixels in the vertical direction to the character string direction. This is performed by determining a plurality of overlapping cut-out positions on the basis of values and the like.
  • a plurality of character strings M1, M2, and M3 are generated by performing horizontal shear deformation while changing the angle little by little with respect to the character string M in the corrected image A2, and these character strings M1 are generated.
  • a character string Y2 indicates a character string after the character string M2 is cut out in units of one character. In this case, the number of blank areas is four.
  • the “blank area” refers to an area between characters, and is indicated by a symbol K in FIG.
  • a symbol Y3 indicates a character string after the character string M3 is cut out in units of one character. In this case, the number of blank areas is seven.
  • the character area dividing unit 104 adopts the case where the number of blank areas and the area are maximized as a result of character area division.
  • the character string Y3 is the character string after the character area division finally selected.
  • character position detection and character recognition processing using multiple methods and parameters is performed to cut out one character unit for each possible cutout position of the character.
  • character recognition for one character line by the existing OCR engine is performed to cut out one character unit for each possible cutout position of the character.
  • Character recognition The character recognition unit 105 performs character recognition processing for each character on each character existing in the divided region (indicated by reference sign D in FIG. 4) divided by the character region dividing unit 104 in step S6. And one or more character recognition processing result candidates (hereinafter also referred to as “character recognition candidate group” or simply “candidate”) per character are output (step S7, “character recognition step in claims”). ”). Character recognition for each character is performed so as to obtain a character recognition result by a plurality of engines.
  • the first character string transition data creation unit 106 collects duplicate candidates from the recognition result candidate group obtained in step S7, and also refers to WFST data (hereinafter also referred to as “first WFST data”). (Corresponding to “first character string transition data creation step” in step S8, claims). That is, the first character string transition data creation unit 106 inputs a character recognition processing result candidate (one or more candidates per character) from the character recognition unit 105, calculates a weight value for the transition to the candidate, First WFST data based on a set of these candidates and weight values is created.
  • the first character string transition data creation unit 106 calculates the weight value based on the priorities. Furthermore, when the character recognition unit 105 performs character recognition processing using at least two different recognition methods, the first character string transition data creation unit 106 selects candidate character recognition processing results in the different recognition methods. The weight value is calculated based on the number of outputs and the priority order. Here, the weight values of overlapping candidates are synthesized by product / sum, so that the weight value becomes smaller as the number of appearances of the same candidate increases in each character recognition result. That is, in this embodiment, it can be said that the smaller the weight value, the closer to the actual correct answer. Further, the first character string transition data creation unit 106 may calculate the weight value in consideration of character string transitions of words registered in the language database.
  • FIG. 5 shows an example of the first WFST data created by the first character string transition data creation unit 106.
  • the first WFST data is a state transition to which a plurality of candidates and their weight values are attached.
  • state transitions having the same initial state are arranged in parallel.
  • a plurality of candidates in the character recognition processing are, for example, “DO”, “TO”, “People”, “Ko”, “ 2 ”,“ mouth ”,“ mo ”,“ hair ”,“ t ”, etc.
  • the respective weight values are“ 0.2 ”,“ 0.4 ”,“ 0.6 ”,“ 0.2 ”. ”,“ 0.5 ”,“ 0.6 ”,“ 0.2 ”,“ 0.4 ”,“ 0.5 ”.
  • the first WFST data generated from the character recognition candidate group in order to detect a keyword in the middle of a sentence, an ⁇ transition from an initial state of a character string transition to each character candidate (empty transition without input / output, claim) ) Transition from each character candidate to the final state of the character string transition (corresponding to “second empty transition” in the claims) and noise as characters.
  • An ⁇ transition (corresponding to the “third empty transition” in the claims) is included for assigning a weight value to avoid each character and skipping each character candidate in character units.
  • the first empty transition is indicated by reference numeral E1
  • the second empty transition is indicated by reference numeral E2
  • the third empty transition is indicated by reference numeral E3
  • the weight value of the third empty transition is shown. For example, “2.0” is indicated.
  • the first WFST data is calculated after being divided into a plurality of lines or a fixed number of characters so that the calculation can be performed with an optimum processing size, and the result can be used in combination.
  • step S6 character recognition is performed on a character-by-character basis for each overlapping position, and the transition of overlapping character extraction positions is expressed as one first WFST data.
  • the character region dividing unit 104 divides the character region using a plurality of division patterns and generates a plurality of types of divided regions (that is, in the case of over-segmentation)
  • the character recognition unit 105 Character recognition processing is performed for each of the divided areas, and the first character string transition data creation unit 106 creates first WFST data for the character candidates in each of the plurality of types of divided areas.
  • the division position is determined by a plurality of methods and extraction parameters, and the plurality of division positions Shows the result of the single character recognition process ((B) and (C) of FIG. 6).
  • the result shown in FIG. 6B shows a recognition result “fbnim”, and the result shown in FIG. 6C shows a recognition result “stone run”.
  • the first candidate is “b” and the second candidate is “o” due to noise.
  • the cause of the noise is considered to be that a part of the upper right of “F” has entered during the cutting.
  • the first character string transition data creation unit 106 creates one first WFST data as shown in FIG. In the example of FIG. 6, the ⁇ transition from the initial state to the intermediate state, the ⁇ transition from the intermediate state to the final state, and the ⁇ transition with a weight value for skipping characters are omitted.
  • the created first WFST data is then used for the WFST synthesis operation with the vocabulary data (see (E) and (F) of FIG. 6), and the WFST processing unit 109 passes through the plurality of types of divided regions.
  • a cumulative weight value having a higher rank (“forum” matching vocabulary data in the example of FIG. 6) is output as a result, which will be described later.
  • the first character string transition data creation unit 106 sets the position of the character recognition result candidate in the image or the character size of the character recognition result candidate in order to increase the detection accuracy of a more significant vocabulary from the scene image or the like. Based on this, the weight value is corrected.
  • (A) of FIG. 7 shows an image A3 containing characters.
  • FIG. 7B shows the weight value initially calculated by the first character string transition data creation unit 106.
  • a weight value “0.13” is calculated for the character candidate “beyond”.
  • “0.15” for “corporation” “0.15” for “10 km”, “0.20” for “Kiyomizu Temple”, and “0.21” for “ryokan”. "Is calculated.
  • the first character string transition data creation unit 106 uses the information shown in (C) and (D) of FIG. 7 to adjust the initially calculated weight value.
  • (C) in FIG. 7 is information indicating a statistical spatial distribution of values as keywords.
  • the center, upper left, lower right, etc. of the image are portions having high values as keywords, and these are displayed in shades in FIG. Since the value as a keyword is high in the darkly displayed portion, “1” is assigned as a weighting factor. Since the value as a keyword is low, “2.5” is assigned as a weighting coefficient to the lightly displayed portion.
  • FIG. 7D shows a weighting coefficient table corresponding to the character size.
  • a character of size “24” is assumed to have a high value as a keyword as much as the size is large, and “1” is assigned as a weighting factor.
  • a character of size “8” is assumed to have a low value as a keyword due to its small size, and “2.2” is assigned as a weighting factor.
  • (E) in FIG. 7 shows the result of the first character string transition data creation unit 106 adjusting the initially calculated weight value using the information shown in (C) and (D) in FIG.
  • weighting is performed so that the priority of a large character region or a vocabulary at a high value as a vocabulary increases. .
  • the initially calculated weight value “0.20” is multiplied by the spatial distribution weight value “1.5” and the character size weight value “1.0” in FIG. Then, “0.3” is given as the adjusted weight value.
  • the vocabulary “Kitamizu” has a smaller weight value than the vocabulary “Kiyomizu-dera”. It is larger than the weight value. That is, it can be said that the vocabulary that is actually valuable as a keyword is adjusted to have a small weight value by the weight value adjustment.
  • WFST calculation processing (Flow of the entire WFST calculation processing)
  • the WFST processing unit 109 and the character string detection unit 110 combine the first WFST data generated in steps S3 and S8 into one first WFST data (step S9), and then perform a WFST calculation process (step S10, claim)
  • the “WFST calculation process” performed by the WFST processing unit 109 and the character string detection unit 110 is a process including a WFST synthesis calculation (corresponding to “combination calculation” in the claims), and the WFST processing unit 109 converts the WFST data into WFST data.
  • FIG. 8 is a flowchart showing the WFST calculation process.
  • the first WFST data generated from the character recognition candidate group is used for vocabulary detection by WFST calculation processing with the vocabulary DB 111 (see FIG. 1), and the first WFST data itself of the character recognition candidate group is used as a search table for images. You can also
  • the processing flow consisting of steps S10-1, S10-2, S10-3, and S10-4 uses the first WFST data itself of the character recognition candidate group as a search table for images, and the user is included in the images. It is a processing flow in the case of determining whether an input keyword exists.
  • the WFST processing unit 109 converts the first WFST data created by the series of processes in steps S1 to S9 and the WFST data for the keyword input by the user (the “second character string transition data” in the claims). It is determined whether or not a keyword exists in the image by performing a WFST calculation process on “second WFST data”.
  • the second character string transition data creation unit 107 inputs a keyword from the user and creates second WFST data for the keyword (step S10-1).
  • FIG. 8A illustrates the second WFST data created for a keyword (search vocabulary) input by the user.
  • the WFST processing unit 109 performs a WFST synthesis operation using the second WFST data created in step S10-1 and the first WFST data created by the series of processes in steps S1 to S9 (step S10-2). ).
  • the WFST processing unit 109 performs an operation for obtaining the best path based on the result of the WFST synthesis operation in step S10-2 (step S10-3).
  • the character string detection unit 110 outputs the determination result of the presence / absence of the user input keyword or the weight in the determination result from the best path calculation result (step S10-4).
  • the processing flow consisting of steps S10-5, S10-6, S10-7, S10-8, and S10-9 is a processing flow in the case of vocabulary detection by WFST calculation processing with the vocabulary DB 111.
  • the WFST processing unit 109 generates the first WFST data created by the series of processes of steps S1 to S9 and the WFST data of each vocabulary existing in the vocabulary DB 111 (“third character string transition data in the claims”).
  • the vocabulary existing in the image is detected by performing a WFST calculation process on “the third WFST data”.
  • the third character string transition data creation unit 108 creates third WFST data for each vocabulary existing in the vocabulary DB 111 (step S10-5).
  • the WFST processing unit 109 performs a WFST synthesis operation using the third WFST data created in step S10-5 and the first WFST data created by the series of processing in steps S1 to S9 (step S10-6). ).
  • the WFST processing unit 109 performs a calculation for obtaining the best path based on the result of the WFST synthesis calculation in step S10-6 (step S10-7).
  • the character string detection unit 110 outputs the vocabulary in the order of weight values in the best path (step S10-8).
  • the category information is output (step S10-9).
  • FIG. 9 shows an image of the WFST synthesis operation (steps S10-2 and 10-6 in FIG. 8).
  • the WFST synthesis operation is an operation for comparing state transitions expressed by two WFST data and extracting a common vocabulary vocabulary transition.
  • the weight value of each transition is recalculated from the weight values of the two transitions to be combined, and the result of the WFST combining operation is calculated as the best path (the transition with the smaller weight) from the weight value of the state transition. It will be a thing.
  • the WFST processing unit 109 outputs the one with the highest cumulative weight value throughout the plurality of types of divided regions as the result of the WFST synthesis calculation.
  • the first WFST data (same as shown in FIG. 5) of the character recognition candidate group as shown in FIG.
  • the vocabulary is detected in the order of weight values.
  • “docomo” having the smallest weight value is detected as the best path, and the character string detection unit 110 outputs “docomo” as a vocabulary detection result.
  • an abbreviation can be detected, for example, “tempura rice ball” is detected as “tenmu”. If the vocabulary DB 111 has a large-scale configuration, a part of the vocabulary may be extracted as a correct vocabulary even if there is no vocabulary that completely matches.
  • the search keyword to be searched for in the image is expressed by the second WFST data, and the WFST synthesis operation with the first WFST data of the character recognition candidate group is performed. .
  • this WFST synthesis operation it is determined whether or not the transition from the initial state to the final state can be obtained by the transition of the two WFST data to be synthesized.
  • the search keyword is in the character recognition candidate group, that is, whether or not the keyword input by the user exists in the image.
  • the transition from the initial state to the final state is performed by transition of two WFST data to be synthesized. Since the transition is obtained, it is determined that the keyword input by the user exists in the image.
  • the character string detection unit 110 outputs the smallest weight value as a lexical search result.
  • the vocabulary data illustrated in FIG. 9B is represented by a vocabulary transition of each character having the same initial state as shown in FIG. 9C. Furthermore, weighting may be performed based on frequency information obtained by separate statistical processing, learning information input by the user, vocabulary character string length, and the like. Further, the first WFST data and the second WFST data to be compared, and the first WFST data and the third WFST data do not necessarily have to be in the same format, and are data representing character state transitions. Any data format that is possible is sufficient.
  • the vocabulary DB 111 has classification information for the vocabulary, and the second character string transition data creation unit 107 or the third character string transition data creation unit 108 adds the classification information to the second WFST data or the second WFST data. 3WFST data is created, and the WFST processing unit 109 adds the classification information, performs a WFST combining operation, and outputs the result. That is, in the variation 1, the vocabulary DB 111 detects keywords by combining the WFST data with the input as vocabulary and the output as classification information, and the WFST data in the vocabulary DB 111 with classification information added.
  • classification information can be added to keywords.
  • a series number of classification information is added to the final state input of the vocabulary DB 111 and classification information (that is, the contents of the classification information) is added to the output so that the same vocabulary can have a plurality of classification information.
  • a transition to serial numbers corresponding to the maximum number of classification information used for the same vocabulary on the vocabulary DB 111 is added to the final state of the first WFST data generated from character recognition.
  • FIG. 10 shows an example of processing in variation 1.
  • FIG. 10A shows an example of vocabulary data to which classification information is added.
  • FIG. 10A shows the second WFST data with classification information created by the second character string transition data creation unit 107.
  • FIG. 10A shows the third WFST data with classification information created by the third character string transition data creation unit 108.
  • the classification information is information for identifying a plurality of genres of the same vocabulary.
  • the vocabulary “Tsubame” is added with two types of classification information “Shinkansen” and “Birds” with serial numbers “0000” and “0001”. Note that “ ⁇ eps>” in FIG.
  • FIG. 10A indicates an empty transition in the WFST calculation process, and each character (for example, “tsu”, “ba”, “me”, etc.) is input. This is the output in some cases.
  • FIG. 10B shows a state in which the serial number of the classification information is added to the character recognition result and converted to the first WFST data. For example, as a result of character recognition “swallow”, a serial number corresponding to the maximum number of classification information used for the vocabulary “swallow” in the vocabulary DB 111 is added to the final state of the WFST data (in the example of FIG. Transitions to “0000” and “0001” are added.
  • a synthesis operation is performed on the second or third WFST data shown in FIG. 10A and the first WFST data shown in FIG. 10B, and FIG. 10C shows the result of the synthesis operation. After the two WFST data are compared, only two matching paths are extracted, but only the classification information is shown as a result in FIG. 10C due to the ⁇ ep
  • FIG. 11 shows a case similar to the case of FIG. 10 except that the result of character recognition is “sparrow”.
  • FIG. 11C shows the result of the compositing operation. After both WFST data are compared, only one matching path is extracted. As in FIG. 10C, ⁇ eps > Due to the empty transition, only the classification information is shown as a result.
  • FIG. 12 shows the same case as in FIG. 10, but differs in that there is no ⁇ eps> transition.
  • FIG. 12C shows the result of the compositing operation. After both WFST data are compared, only two matching paths are extracted and there is no ⁇ eps> transition. Both classification information is shown.
  • the character recognition device 1 further includes a vocabulary classification relevance vector storage unit 112 (corresponding to “vocabulary classification relevance vector storage means” in the claims).
  • the vocabulary classification relevance vector storage unit 112 stores a vocabulary classification relevance vector indicating the relevance between a vocabulary and classification information.
  • the first character string transition data creation unit 106 adds the value of the vocabulary classification relevance vector to the candidate character recognition processing result and the candidate weight value in the first WFST data created by itself.
  • the first character string transition data creation unit 106 sets the classification information having the largest value as the classification information corresponding to the candidate, and corrects the weight value for the candidate based on the classification information.
  • the WFST processing unit 109 performs a WFST synthesis operation based on the corrected weight value.
  • the priority of classification information can be changed by preparing the relationship between classification information and vocabulary as a table using a synonym relational database. For example, if there is an array (FIG. 14B, vocabulary classification relevance vector) that represents the relationship between the cooking menu as vocabulary and the classification information as a vector as shown in FIG. 14, the vector of the detected vocabulary is added. The cooking genre having the largest vector can be detected as the cooking genre of the detected vocabulary. Conversely, the priority of the detected cooking menu can be changed by re-determining the vocabulary weight based on the order of the acquired genre and the vector value.
  • a synonym relational database For example, if there is an array (FIG. 14B, vocabulary classification relevance vector) that represents the relationship between the cooking menu as vocabulary and the classification information as a vector as shown in FIG. 14, the vector of the detected vocabulary is added. The cooking genre having the largest vector can be detected as the cooking genre of the detected vocabulary. Conversely, the priority of the detected cooking menu can be changed by re-determining the vocabulary weight based on the order of the acquired genre and the vector value.
  • FIG. 14A shows the vocabulary detected by character recognition (each of the cooking menus such as “gyoza” and “soup”)
  • FIG. 14B shows the correspondence between each cooking menu and the cooking genre.
  • a table (vocabulary classification relationship vector) is shown.
  • FIG. 14C shows an example in which vector values corresponding to the respective dish menus in FIG. 14A are calculated with reference to the correspondence table in FIG. In this example, since the highest vector value is calculated for “Chinese”, the genre of the vocabulary shown in FIG. 14A is determined to be “Chinese”.
  • FIG. 14D shows a state in which the genre “Chinese Chinese” determined in FIG. 14C is reflected and the weight value for each cooking menu in FIG. 14A is corrected. .
  • FIG. 15 is a diagram showing a process of calculating the correction weight value shown in FIG. Through the procedures (A) to (D) in FIG. 15, the correction weight value shown in (D) in FIG. 14 is calculated.
  • (A) in FIG. 15 shows the sum of the detected genre weight values, and corresponds to (B) and (C) in FIG.
  • FIG. 15B shows a state in which the vocabulary weight values shown in FIG. 14A are reciprocal, that is, (1 / vocabulary weight value) and the genre weight values of each vocabulary are applied.
  • the vocabulary weight value “0.3” shown in FIG. 14A is set to the reciprocal, that is, “1 / 0.3”.
  • a calculation result of “0, 3.33, 0” is obtained by multiplying the genre weight values “0, 1.0, 0” shown in A).
  • the vocabulary weight value “0.45” shown in FIG. 14A is set to the reciprocal, that is, “1 / 0.45”, and FIG.
  • the calculation results of “0, 0.67, 1.56” are obtained by multiplying the genre weight values “0, 0.3, 0.7” shown in FIG.
  • FIG. 15C shows a state where the result of FIG. 15B is summed with the sum of FIG.
  • “gyoza” “0, 3.33, 0” which is the result of FIG. 15B is added to “0.5, 2.8, 0” which is the sum of FIG. .7 ”to obtain a calculation result of“ 0, 9.33, 0 ”.
  • “soup”, “0, 0.67, 1.56”, which is the result of FIG. 15B is added to “0.5, 2.
  • the calculation results of “0, 1.87, 1.09” are obtained by multiplying “8, 0.7”, respectively.
  • (D) of FIG. 15 shows a state in which the calculation results of (C) of FIG. 15 are added to each vocabulary for each genre, and the reciprocal thereof is used as a correction weight value.
  • the numerical value for each genre is added to “0, 9.33, 0” which is the result of FIG. obtain. Then, the calculation result of the correction weight value “0.11” is obtained by reversing this.
  • the calculation result of the correction weight value “0.34” is obtained by reversing this.
  • variation 3 “position information” is added to the WFST data. That is, when the character recognition unit 105 outputs a candidate for the character recognition processing result, the position information in the candidate image is output together. A separate means for acquiring position information in the image may be provided, and the character recognition unit 105 may perform the acquisition. Then, the first character string transition data creation unit 106 adds the position information to generate first WFST data, and the WFST processing unit 109 and the character string detection unit 110 add the position information and perform WFST synthesis. Perform the operation and output the result.
  • the original position information is prepared as a separate table (see (C) in FIG. 16 below), and the table number is used for the state transition. Append. By doing so, the table number is also attached to the detected result, so that the original position information can be specified (see (D) and (E) in FIG. 16).
  • FIG. 16 is a diagram for illustrating the operation of each functional element in variation 3.
  • FIG. 16C shows the position information output by the character recognition unit 105.
  • the position information is output as a position information table, and x1 and y1 indicate the upper left coordinates of each character, and x2 and y2 indicate the lower right coordinates of each character.
  • Each position information is identified by a serial number such as “0000” or “0001”.
  • the character recognition unit 105 outputs a serial number as shown in FIG. 16C when outputting the candidate character recognition processing result.
  • FIG. 16B shows the first WFST data with position information created by the first character string transition data creation unit 106. Compared with the first WFST data in FIG. 5, the difference is that a serial number of position information is added. Note that the ⁇ transition with a weight value for skipping characters is omitted.
  • FIG. 16A shows an example of vocabulary data to which position information (more precisely, a serial number of position information) is added.
  • FIG. 16A shows the second WFST data with position information created by the second character string transition data creation unit 107.
  • FIG. 16A shows the third WFST data with position information created by the third character string transition data creation unit 108.
  • a serial number of position information is added at the beginning and end of transition, and the number of serial numbers added is the number of position information shown in FIG. 16 (C). Is the same as the maximum number of In this example, the maximum number of pieces of position information is 10,000 from “0000” to “9999”.
  • FIG. 16 shows the result of performing the synthesis operation of the second WFST data or the third WFST data of (A) of FIG. 16 and the first WFST data of (B) of FIG.
  • a serial number of position information is added to the result of the composition operation.
  • FIG. 16E by comparing the serial number added to the result of the synthesis operation with the position information table of FIG. It is possible to specify where the result of character recognition is located in the image.
  • an array for character position detection determination is separately created, and the array position corresponding to the character position of the detected vocabulary is detected from the top of the best path. If the sequence has already been detected, it is determined that the vocabulary has overlapped, and only the keywords with high priority detected from the same position are used. By arranging the vocabulary so as to fill in the gaps in this way, it is possible to correct the character recognition result with a vocabulary having a high priority.
  • variation 4 will be described.
  • WFST composition calculation, variation 4 In the case of a language premised on the division, there are fewer variations of characters to be configured than in Japanese. Therefore, when using the WFST data of the character recognition candidate group as shown in FIG. 5, for example, “pen” from a part of “pencil” There is a risk that only a part of a word is detected. Therefore, in variation 4, “separation identification information (corresponding to“ identification information ”in the claims)” is added to the WFST data.
  • the character recognition unit 105 when the character recognition unit 105 outputs a candidate for the character recognition processing result, it outputs the delimiter identification information indicating the delimiter between words.
  • the delimiter identification information is output when it is recognized as a delimiter character in character recognition, that is, when the recognized character is a symbol such as a space, a period, or a parenthesis.
  • the first character string transition data creation unit 106 adds the break identification information and creates first WFST data with the break identification information.
  • the second character string transition data creation unit 107 and the third character string transition data creation unit 108 also add the break identification information to create the second WFST data and the third WFST data with the break identification information.
  • Separation identification information is added in the case of symbols such as spaces, periods, parentheses, etc., as well as at the beginning and end of words. Then, when performing the state transition for the WFST process, the WFST processing unit 109 performs the state transition in units of parts delimited by the two delimiter identification information.
  • FIG. 17 is a diagram for illustrating the operation of each functional element in variation 4.
  • FIG. 17B shows the first WFST data with delimiter identification information created by the first character string transition data creation unit 106 when the character string in the image is “ ⁇ two pens ⁇ ”.
  • the character recognition unit 105 that has recognized the symbol “ ⁇ ” outputs the character recognition processing result and also outputs delimiter identification information.
  • the first character string transition data creation unit 106 creates the first WFST data with identification information having the symbol “ ⁇ ” as an input and the segment identification information “ ⁇ sp>” as an output. The same applies to the symbol “ ⁇ ”.
  • the first character string transition data creation unit 106 delimits identification information for the space.
  • First WFST data with delimiter identification information to which is assigned is created.
  • the ⁇ transition from the initial state to the intermediate state, the ⁇ transition from the intermediate state to the final state, and the ⁇ transition with a weight value for skipping characters are omitted.
  • FIG. 17 shows an example of vocabulary data for segmentation to which delimiter identification information is added.
  • FIG. 17A shows the second WFST data with delimiter identification information created by the second character string transition data creation unit 107.
  • FIG. 17A shows the third WFST data with delimiter identification information created by the third character string transition data creation unit 108.
  • delimiter identification information “ ⁇ sp>” is added at the beginning and end of a word.
  • the output is set to “ ⁇ esp>”.
  • the plural “s” can be prevented from being influenced by the result of the composition operation.
  • FIG. 17C shows the result of the synthesis operation of the first WFST data shown in FIG. 17B and the second WFST data or the third WFST data shown in FIG. Yes.
  • the WFST processing unit 109 performs the state transition, the state transition is performed in units of the section delimited by the two delimiter identification information, that is, “two” and “pens” illustrated in FIG.
  • “pen” is output because the state transition is performed in units of and the synthesis operation with the first WFST data in FIG. 17A is performed.
  • FIG. 17D shows the first WFST data with delimiter identification information created by the first character string transition data creation unit 106 when the character string in the image is “pencil.”.
  • the character recognition unit 105 that has recognized the symbol “.” Outputs the character recognition processing result, and also outputs delimiter identification information. Receiving this, the first character string transition data creating unit 106 takes the symbol “.” As input and creates first WFST data with identification information that outputs the delimiter identification information “ ⁇ sp>”.
  • FIG. 17E shows the result of the synthesis operation of the first WFST data shown in FIG. 17D and the second WFST data or the third WFST data shown in FIG. Yes.
  • the WFST processing unit 109 When the WFST processing unit 109 performs the state transition, the WFST processing unit 109 performs the state transition in units of the sections delimited by the two delimiter identification information, that is, in units of “pencil” illustrated in FIG. Since the state transition is performed and the synthesis operation with the first WFST data in FIG. 17A is performed, the matching vocabulary is not detected. Thereby, it is possible to prevent only a partial spelling of a word from being detected, for example, only “pen” is detected from a part of “pencil”.
  • FIG. 18 is a diagram for illustrating the operation of each functional element in the variation 4 in the case where the vocabulary of the segmented language and the vocabulary of the language other than the segmented language are combined.
  • the transition of the delimiter identification information and the ⁇ transition are added to the transition between the alphabet and other characters.
  • FIG. 18 shows the 1st WFST data with the division
  • First WFST data is created in the same manner as in FIG. 17, and delimiter identification information “ ⁇ sp>” is added to the beginning and end of a word.
  • 18B shows the first WFST data with delimiter identification information created by the first character string transition data creation unit 106 by modifying FIG. 18A.
  • Separation identification information is added to the transition between the alphabet and the other characters, that is, the transition between the vocabulary of the segmented language and the vocabulary of the language other than the segmented language.
  • FIG. 19 is a schematic configuration diagram in this case.
  • the terminal 200 and the server 300 are connected to each other via a communication network so as to communicate with each other.
  • the terminal 200 includes, as functional components, an image reading unit 101 (corresponding to “image input means” in the claims), an image binarization unit 102, and a character region detection unit 103 (“character region in the claims”).
  • the character area dividing unit 104 (corresponding to “character area dividing means” in the claims), the character recognition unit 105 (corresponding to “character recognition means” in the claims), the first character Column transition data creation unit 106 (corresponding to “first character string transition data creation unit” in claims), second character string transition data creation unit 107 (“second character string transition data creation unit in claims”) Is equivalent).
  • the server 300 includes, as functional components, a third character string transition data creation unit 108 (corresponding to “third character string transition data creation unit” in the claims), and a WFST processing unit 109 (in the claims, “ A character string detection unit 110 (corresponding to “character string detection means” in the claims), and a vocabulary DB 111 (corresponding to “vocabulary database” in the claims).
  • the description of each functional component provided in the terminal 200 and the server 300 is the same as that described in the character recognition device 1, the description thereof is omitted here.
  • the first character string transition data creation unit 106 and the second character string transition data creation unit 107 exist in the terminal 200
  • the third character string transition data creation unit 108 exists in the server 300.
  • the present invention is not limited to this, and the first character string transition data creation unit 106, the second character string transition data creation unit 107, and the third character string transition data creation unit 108 are connected to the terminal 200 and the server 300. It may exist in any.
  • FIG. 2 can also be referred to as a hardware configuration diagram of the terminal 200.
  • the terminal 200 physically reads data from a main storage device such as the CPU 21, ROM 22, and RAM 23, a keyboard, a mouse, a device such as a camera, or an external device.
  • An ordinary computer including an input device 24, an output device 25 such as a display, a communication module 26 such as a network card for transmitting / receiving data to / from other devices, an auxiliary storage device 27 such as a hard disk, etc. Configured as a system.
  • the image read by the input device 24 may be an image taken by the own device or an image taken by another device.
  • the functions of the terminal 200 described above operate the input device 24, the output device 25, and the communication module 26 under the control of the CPU 21 by reading predetermined computer software on the hardware such as the CPU 21, the ROM 22, and the RAM 23. At the same time, it is realized by reading and writing data in the main storage devices 22, 23 and the auxiliary storage device 27.
  • FIG. 2 can also be referred to as a hardware configuration diagram of the server 300.
  • the server 300 physically includes an input device 34 that is a device that reads data from an external device, such as a main storage device such as a CPU 31, a ROM 32, and a RAM 33, a keyboard, and a mouse, and an output such as a display.
  • the computer 35 is configured as a normal computer system including a device 35, a communication module 36 such as a network card for transmitting / receiving data to / from other devices, an auxiliary storage device 37 such as a hard disk, and the like.
  • Each function of the server 300 described above operates the input device 34, the output device 35, and the communication module 36 under the control of the CPU 31 by reading predetermined computer software on hardware such as the CPU 31, the ROM 32, and the RAM 33. At the same time, it is realized by reading and writing data in the main storage devices 32 and 33 and the auxiliary storage device 37.
  • the present invention can also be configured as a character recognition program, and the above description regarding the character recognition device 1 can also be understood as a description regarding a character recognition program that causes a computer to operate as the character recognition device 1.
  • the character recognition program is executed by the computer using the image reading unit 101, the image binarizing unit 102, the character region detecting unit 103, the character region dividing unit 104, the character recognizing unit 105, the first described above. It is made to function as the 1 character string transition data creation part 106, the 2nd character string transition data creation part 107, the 3rd character string transition data creation part 108, the WFST process part 109, and the character string detection part 110.
  • the character recognition program is provided by being stored in a recording medium, for example. Examples of the recording medium include a flexible disk, a recording medium such as a CD and a DVD, a recording medium such as a ROM, or a semiconductor memory.
  • the character recognition device 1 or the like of the present embodiment is used as an apparatus for performing error correction on the character recognition result of the existing method. can do.
  • the first WFST data of the character recognition candidate group itself is used as a search table for an image
  • the character recognition device 1 determines whether or not a user input keyword exists in the image. It can be used as a device for determining
  • the character recognition device 1 is used as a vocabulary detection device or the like by performing a composition operation on the first WFST data of the character recognition candidate group and the third WFST data in the vocabulary DB 111. be able to.
  • a specific method for the first character string transition data creation unit 106 to calculate the weight value is provided.
  • a specific method for the first character string transition data creation unit 106 to correct the weight value is provided.
  • vocabulary detection accuracy can be improved by correcting the weight value.
  • the first empty transition, the second empty transition, and the third empty transition are included in the first WFST data, so that the synthesis operation of the first WFST data and the second WFST data or the third WFST data is performed. Accuracy can be increased.
  • the identification information indicating the delimiters by using the identification information indicating the delimiters, it is possible to perform character recognition with high accuracy even for the separated languages. Furthermore, it is possible to handle a dictionary with a common vocabulary for a language such as English and a language that does not have a division such as Japanese.
  • SYMBOLS 1 DESCRIPTION OF SYMBOLS 1 ... Character recognition apparatus, 100 ... Character recognition system, 101 ... Image reading part, 102 ... Image binarization part, 103 ... Character area detection part, 104 ... Character area division part, 105 ... Character recognition part, 106 ... 1st Character string transition data creation unit, 107 ... second character string transition data creation unit, 108 ... third character string transition data creation unit, 109 ... processing unit, 110 ... character string detection unit, 111 ... vocabulary DB, 200 ... terminal, 300: Server.
  • the present invention provides a character recognition device, a character recognition method, a character recognition system, and a character recognition device that can perform character recognition accurately and at high speed using a simplified device configuration without using a database such as an external telephone directory. Provide a character recognition program.

Abstract

文字認識装置1は、画像を入力する画像読み込み部101と、画像の文字領域を検出する文字領域検出部103と、文字領域を一文字単位で分割する文字領域分割部104と、分割領域に存在する文字に対して一文字ごとの文字認識を行い、一文字に付き1つ以上の文字認識処理結果の候補を出力する文字認識部105と、前記候補を入力し、候補への遷移に対する重み値を計算し、候補および重み値の組に基づく第1文字列遷移データを作成する第1文字列遷移データ作成部106と、第1文字列遷移データに基づき状態遷移を順次行い、各状態遷移における重み値を累積して状態遷移ごとの累積重み値を算出し、一つ以上の状態遷移の結果を累積重み値に基づき出力するWFST処理部109とを備える。

Description

文字認識装置、文字認識方法、文字認識システム、および文字認識プログラム
 本発明は、文字認識装置、文字認識方法、文字認識システム、および文字認識プログラムに関するものである。
 下記の特許文献1~2、非特許文献1~3で例示されるように、従来、情景画像の中から、看板等の3次元空間中に存在する文字を認識する技術が知られている。これらの技術では、明暗の変動や文字の歪みなど、情景画像特有の問題に対応するため、単語知識や撮影場所の位置情報などの外部データを使用して認識精度を高めている。
 例えば、特許文献1では、画像中の看板などから抽出した文字列と電話帳データベースとを照合し、電話帳データベースに含まれる広告主データや電話番号データとの一致度を判定することで、抽出した文字列が広告主に関連するものかどうかを判定している。
 また、特許文献2では、文字認識装置に装備されている位置情報取得手段、および方位情報取得手段を用いて、撮影している位置及び方向を特定し、特定した位置、方位を用いて地図データベースと照合を行い、合致した店舗名や地名情報を単語知識として用いることで、認識精度を高めている。
 また、記号列変換と重みの集合を状態遷移として表現した重み付き有限状態トランスデューサ(Weighted Finite State Transducer、以下「WFST」ともいう。)が、音声認識や言語処理の分野における高速かつ高い汎用性と拡張性を持つ手法として使われている。このWFSTに関連して、文字認識の分野では、非特許文献1、非特許文献2で例示されるように、英語のような分ちが書きでの語彙単位の文字列取得を前提として、文字認識の結果を取得する手法が提案されている。また、非特許文献3では、日本語において、文字認識結果として出力した後に、WFSTを用いたエラー訂正を行う手法が提案されている。
特許第3360030号公報 特許第4591353号公報
"AWeighted Finite-State Framework for Correcting Errors in NaturalScene OCR"、ICDAR 2007 Vol. 2、 pp. 889-893 "Theimage Text Recognition Graph (iTRG)"、 ICME 2009、 pp. 266-269 重み付き有限状態トランスデューサを用いた文字誤り訂正、言語処理学会年次大会発表論文集、C2-5、pp.332-335、2009
 しかしながら、特許文献1に記載の方法では、電話帳データベースなどに含まれる大量の単語知識との照合が必要となり、文字認識処理の高速化が十分に行えない可能性がある。また、特許文献2に記載の方法では、位置情報取得手段や方位情報取得手段が別途必要となり、装置構成が複雑化するおそれがある。
 更に、非特許文献1および非特許文献2については、語彙の間に区切りがある分ち書きの言語を前提とする。つまり、WFST処理にかける語彙の切り出しがあらかじめできていることが前提となる。また、非特許文献2では、文字認識の文字単位での切り出しにおいて、重複する切り出し位置を利用して文字認識を行い、WFSTで表現しているが、文字認識の結果に誤認識が現れた場合には対応ができないおそれがある。
 また、非特許文献1および非特許文献3では、文字の融合・分離によって、重複する切り出し位置による誤認識の問題に対応しているが、日本語は文字種が多く、また実環境では多種多様な文字のデザインが存在しているため、膨大な組み合わせを網羅する必要がある。更に、非特許文献3では一旦文字認識を行った結果を用いており、ある程度精度よく文字認識結果が得られていることが前提となる。このため、元々の文字認識において言語処理による修正が多く行われた場合において、文字形状に基づく修正を行うことが難しくなるおそれがある。また、元々の文字認識における文字領域の検出漏れの修正に対応できないおそれがある。
 そこで、本発明は上記に鑑みてなされたもので、外部の電話帳等のデータベースを用いず、簡素化された装置構成を用いて、精度よく且つ高速で、情景画像から文字認識を行うことが可能な文字認識装置、文字認識方法、文字認識システム、および文字認識プログラムを提供することを目的とする。
 上記課題を解決するために、本発明の文字認識装置は、認識対象の文字を含む画像を入力する画像入力手段と、前記画像における、前記文字が存在する領域である文字領域を検出する文字領域検出手段と、前記文字領域を一文字単位で分割する文字領域分割手段と、前記文字領域分割手段が分割した分割領域に存在する前記文字に対して、一文字ごとの文字認識処理を行い、一文字に付き1つ以上の文字認識処理結果の候補を出力する文字認識手段と、前記候補を入力し、前記候補への遷移に対する重み値を計算し、前記候補および前記重み値の組に基づく文字列遷移データである第1文字列遷移データを作成する第1文字列遷移データ作成手段と、前記第1文字列遷移データに基づき状態遷移を順次行い、各状態遷移における重み値を累積して状態遷移ごとの累積重み値を算出し、一つ以上の前記状態遷移の結果を前記累積重み値に基づき出力する有限状態変換手段と、を備えることを特徴とする。
 また、本発明の文字認識方法は、画像入力手段が、認識対象の文字を含む画像を入力する画像入力ステップと、文字領域検出手段が、前記画像における、前記文字が存在する領域である文字領域を検出する文字領域検出ステップと、文字領域分割手段が、前記文字領域を一文字単位で分割する文字領域分割ステップと、文字認識手段が、前記文字領域分割手段が分割した分割領域に存在する前記文字に対して、一文字ごとの文字認識処理を行い、一文字に付き1つ以上の文字認識処理結果の候補を出力する文字認識ステップと、第1文字列遷移データ作成手段が、前記候補を入力し、前記候補への遷移に対する重み値を計算し、前記候補および前記重み値の組に基づく文字列遷移データである第1文字列遷移データを作成する第1文字列遷移データ作成ステップと、有限状態変換手段が、前記第1文字列遷移データに基づき状態遷移を順次行い、各状態遷移における重み値を累積して状態遷移ごとの累積重み値を算出し、一つ以上の前記状態遷移の結果を前記累積重み値に基づき出力する有限状態変換ステップと、を備えることを特徴とする。
 また、本発明の文字認識システムは、端末およびサーバを含む文字認識システムであって、前記端末は、認識対象の文字を含む画像を入力する画像入力手段と、前記画像における、前記文字が存在する領域である文字領域を検出する文字領域検出手段と、前記文字領域を一文字単位で分割する文字領域分割手段と、前記文字領域分割手段が分割した分割領域に存在する前記文字に対して、一文字ごとの文字認識処理を行い、一文字に付き1つ以上の文字認識処理結果の候補を出力する文字認識手段と、を備え、前記サーバは、前記候補を入力し、前記候補への遷移に対する重み値を計算し、前記候補および前記重み値の組に基づく文字列遷移データである第1文字列遷移データを作成する第1文字列遷移データ作成手段と、前記第1文字列遷移データに基づき状態遷移を順次行い、各状態遷移における重み値を累積して状態遷移ごとの累積重み値を算出し、一つ以上の前記状態遷移の結果を前記累積重み値に基づき出力する有限状態変換手段と、を備えることを特徴とする。
 また、本発明の文字認識プログラムは、コンピュータを、認識対象の文字を含む画像を入力する画像入力手段と、前記画像における、前記文字が存在する領域である文字領域を検出する文字領域検出手段と、前記文字領域を一文字単位で分割する文字領域分割手段と、前記文字領域分割手段が分割した分割領域に存在する前記文字に対して、一文字ごとの文字認識処理を行い、一文字に付き1つ以上の文字認識処理結果の候補を出力する文字認識手段と、前記候補を入力し、前記候補への遷移に対する重み値を計算し、前記候補および前記重み値の組に基づく文字列遷移データである第1文字列遷移データを作成する第1文字列遷移データ作成手段と、前記第1文字列遷移データに基づき状態遷移を順次行い、各状態遷移における重み値を累積して状態遷移ごとの累積重み値を算出し、一つ以上の前記状態遷移の結果を前記累積重み値に基づき出力する有限状態変換手段、として動作させることを特徴とする。
 このような本発明の文字認識装置、文字認識方法、文字認識システム、および文字認識プログラムによれば、外部の電話帳等のデータベースを利用しないことから、当該電話帳データベースなどに含まれる大量の単語知識との照合が必要なく、文字認識処理の高速化を図ることができる。また、位置情報取得手段や方位情報取得手段等も不要であるため、装置構成を簡素化することができる。このような装置構成を用いて、精度よく且つ高速で、情景画像から文字認識を行うことが可能である。
 また、本発明においては、ユーザからキーワードを入力し、前記キーワードの文字列遷移データである第2文字列遷移データを作成する第2文字列遷移データ作成手段を更に備え、前記有限状態変換手段は、前記第1文字列遷移データおよび前記第2文字列遷移データに対して合成演算を行うことにより、前記画像に前記キーワードが存在するか否かを判定してもよい。
 この発明によれば、文字認識候補群の第1文字列遷移データそのものを画像に対する検索用テーブルとして利用し、本発明の文字認識装置を、画像にユーザ入力キーワードが存在するか否かを判定する装置として活用することができる。
 また、本発明においては、語彙データベースに存在する各語彙の文字列遷移データである第3文字列遷移データを作成する第3文字列遷移データ作成手段を更に備え、前記有限状態変換手段は、前記第1文字列遷移データおよび前記第3文字列遷移データに対して合成演算を行うことにより、前記画像に存在する語彙を検出してもよい。
 この発明によれば、文字認識候補群の第1文字列遷移データおよび語彙データベースにおける第3文字列遷移データに対し合成演算を行うことにより、本発明の文字認識装置を語彙検出装置として活用することができる。
 また、本発明においては、前記文字認識手段は、複数の前記候補に対してそれぞれ優先順位を付けて出力し、前記第1文字列遷移データ作成手段は、前記優先順位に基づき前記重み値を計算してもよい。
 この発明によれば、第1文字列遷移データ作成手段が重み値を計算するための具体的な手法が提供される。
 また、本発明においては、前記文字認識手段は、少なくとも2種類以上の異なる認識方式を用いて前記文字認識処理を行い、前記第1文字列遷移データ作成手段は、前記異なる認識方式における前記候補の出力数および前記優先順位に基づき、前記重み値を計算してもよい。
 この発明によれば、第1文字列遷移データ作成手段が重み値を計算するための具体的な手法が提供される。
 また、本発明においては、前記第1文字列遷移データ作成手段は、言語データベースに登録されている単語の文字列遷移を加味して、前記重み値を計算してもよい。
 この発明によれば、第1文字列遷移データ作成手段が重み値を計算するための具体的な手法が提供される。
 また、本発明においては、前記第1文字列遷移データ作成手段は、前記候補の前記画像内における位置、または前記候補の文字サイズに基づき、前記重み値を修正してもよい。
 この発明によれば、第1文字列遷移データ作成手段が重み値を修正するための具体的な手法が提供される。また、重み値の修正により語彙の検出精度を上げることができる。
 また、本発明においては、前記文字領域分割手段が、複数の分割パターンを用いて前記文字領域を分割し、複数種類の前記分割領域を生成した場合に、前記文字認識手段は、前記複数種類の分割領域それぞれに対して前記文字認識処理を行い、前記第1文字列遷移データ作成手段は、前記複数種類の分割領域それぞれにおける前記候補に対して前記第1文字列遷移データを作成し、前記有限状態変換手段は、前記複数種類の分割領域を通じて前記累積重み値が上位のものを前記結果として出力してもよい。
 この発明によれば、文字領域分割手段がオーバーセグメンテーションを行った場合でも適切な対応が可能である。
 また、本発明においては、前記第1文字列遷移データ作成手段は、文字列遷移の初期状態から前記候補への空の遷移である第1空遷移と、前記候補から文字列遷移の最終状態への空の遷移である第2空遷移と、前記候補を一文字単位でスキップするための空の遷移である第3空遷移と、を含んで前記第1文字列遷移データを作成してもよい。
 この発明によれば、第1空遷移、第2空遷移、および第3空遷移を第1文字列遷移データに含ませることで、第1文字列遷移データと第2文字列遷移データまたは第3文字列遷移データとの合成演算の精度を高めることができる。
 また、本発明においては、前記文字認識手段は、前記文字認識処理結果の前記候補を出力する際に、単語間の区切りを示す識別情報をともに出力し、前記第1文字列遷移データ作成手段は、前記識別情報を付加して、前記第1文字列遷移データを作成し、前記有限状態変換手段は、前記状態遷移を行う際に、二つの前記識別情報により区切られた部分を単位として前記状態遷移を行ってもよい。
 この発明によれば、区切りを示す識別情報を用いることにより、分かち書き言語の対しても、精度よく文字認識を行うことができる。
 また、本発明においては、前記文字認識手段は、前記文字認識処理結果の前記候補を出力する際に、当該候補の前記画像内における位置情報をともに出力し、前記第1文字列遷移データ作成手段は、前記位置情報を付加して、前記第1文字列遷移データを作成し、前記有限状態変換手段は、前記位置情報を付加して、前記結果を出力してもよい。
 この発明によれば、位置情報を用いることにより、文字認識の結果が画像内のどこに位置しているのかを特定することができる。
 また、本発明においては、前記語彙データベースは、語彙に対する分類情報を有し、前記第2文字列遷移データ作成手段または前記第3文字列遷移データ作成手段は、前記分類情報を付加して、前記第2文字列遷移データまたは前記第3文字列遷移データを作成し、前記有限状態変換手段は、前記分類情報を付加して、前記結果を出力してもよい。
 この発明によれば、分類情報を用いることにより、文字認識の結果がどのジャンルに属するかを特定することができる。
 また、本発明においては、語彙と前記分類情報との関連性を示す語彙分類関連性ベクトルを格納する語彙分類関連性ベクトル格納手段を備え、前記第1文字列遷移データ作成手段は、前記第1文字列遷移データにおける前記候補および前記重み値に対して、前記語彙分類関連性ベクトルの値を加算し、最も大きな値となる分類情報を前記候補に対応する分類情報とし、該分類情報を基に当該候補に対する前記重み値を修正してもよい。
 この発明によれば、第1文字列遷移データ作成手段が重み値を修正するための具体的な手法が提供される。また、重み値の修正により語彙の検出精度を上げることができる。
 本発明によれば、外部の電話帳等のデータベースを用いず、簡素化された装置構成を用いて、精度よく且つ高速で、情景画像から文字認識を行うことが可能な文字認識装置、文字認識方法、文字認識システム、および文字認識プログラムを提供することができる。
文字認識装置1の機能的な構成要素を示す構成概要図である。 文字認識装置1のハードウェア構成図である。 本実施形態の全体処理フローを示すフローチャートである。 文字領域分割部104の動作を説明するための図である。 第1文字列遷移データ作成部106が作成した第1WFSTデータの一例を示す図である。 文字領域分割部104がオーバーセグメンテーションを行った場合の処理を示す図である。 第1文字列遷移データ作成部106が文字の大きさ・位置等により重み値を調整することを説明するための図である。 WFST演算処理を示すフローチャートである。 WFST合成演算のイメージを示す図である。 WFST合成演算のバリエーション1における処理の一例を示す。 WFST合成演算のバリエーション1における処理の一例を示す。 WFST合成演算のバリエーション1における処理の一例を示す。 WFST合成演算のバリエーション2における文字認識装置1の機能的な構成要素を示す構成概要図である。 WFST合成演算のバリエーション2における処理の一例を示す。 WFST合成演算のバリエーション2における処理の一例を示す。 WFST合成演算のバリエーション3における処理の一例を示す。 WFST合成演算のバリエーション4における処理の一例を示す。 WFST合成演算のバリエーション4における処理の一例を示す。 文字認識システム100の機能的な構成要素を示す構成概要図である。
 以下、添付図面を参照して本発明にかかる文字認識装置、文字認識方法、文字認識システム、および文字認識プログラムの好適な実施形態を詳細に説明する。なお、図面の説明において同一の要素には同一の符号を付し、重複する説明を省略する。
 (文字認識装置1の全体構成)
 本発明の実施形態に係る文字認識装置1は、情景画像から文字領域を検出し、文字認識(例えば、キーワード検出、検索用テーブル作成など)を行うものである。図1は文字認識装置1の機能的な構成要素を示す構成概要図であり、図2は文字認識装置1のハードウェア構成図である。図2に示すように、文字認識装置1は、物理的には、CPU11、ROM12及びRAM13等の主記憶装置、キーボード、マウスをはじめ、カメラ等の画像を読み込むための装置または外部装置からデータを読み込むための装置である入力デバイス14、ディスプレイ等の出力デバイス15、他の装置との間でデータの送受信を行うためのネットワークカード等の通信モジュール16、ハードディスク等の補助記憶装置17などを含む通常のコンピュータシステムとして構成される。入力デバイス14による画像の読み込みは、自装置で撮影された画像であってもよく、または他装置で撮影された画像であってもよい。後述する文字認識装置1の各機能は、CPU11、ROM12、RAM13等のハードウェア上に所定のコンピュータソフトウェアを読み込ませることにより、CPU11の制御の元で入力デバイス14、出力デバイス15、通信モジュール16を動作させると共に、主記憶装置12、13や補助記憶装置17におけるデータの読み出し及び書き込みを行うことで実現される。
 図1に示すように、文字認識装置1は、機能的な構成要素として、画像読み込み部101(特許請求の範囲における「画像入力手段」に相当)、画像二値化部102、文字領域検出部103(特許請求の範囲における「文字領域検出手段」に相当)、文字領域分割部104(特許請求の範囲における「文字領域分割手段」に相当)、文字認識部105(特許請求の範囲における「文字認識手段」に相当)、第1文字列遷移データ作成部106(特許請求の範囲における「第1文字列遷移データ作成手段」に相当)、第2文字列遷移データ作成部107(特許請求の範囲における「第2文字列遷移データ作成手段」に相当)、第3文字列遷移データ作成部108(特許請求の範囲における「第3文字列遷移データ作成手段」に相当)、WFST処理部109(特許請求の範囲における「有限状態変換手段」に相当)、文字列検出部110(特許請求の範囲における「文字列検出手段」に相当)、語彙DB111(特許請求の範囲における「語彙データベース」に相当)を備える。以下、文字認識装置1の各構成要素の動作について、図3のフローチャートを参照しながら説明する。
 (1)画像の読み込み
 画像読み込み部101が認識対象の文字を含む画像を入力する(ステップS1、特許請求の範囲における「画像入力ステップ」に相当)。活字文書をスキャナーで取り込んだようなドキュメント画像については既に技術が確立され、高速・高精度の認識が可能であるので、既存のドキュメントOCRエンジンにより、ドキュメント画像としての文字認識を行う(ステップS2)。そして、第1文字列遷移データ作成部106が、認識結果の候補群からWFSTで表されたデータ(以下「第1WFSTデータ」ともいう。特許請求の範囲における「第1文字列遷移データ」に相当)を生成する(ステップS3、特許請求の範囲における「第1文字列遷移データ作成ステップ」に相当)。なお、既存のドキュメントOCRエンジンにより得られた認識結果の文字数が規定数以上で、認識精度が規定値以上の場合は、ドキュメントと判定して、ステップS10のWFST演算処理は行わない。小さすぎる解像度、大きすぎる解像度の画像については、文字認識に適したサイズにスケールを調整する。
 (2)画像二値化
 ステップS1で入力した画像がドキュメント画像でない場合に、画像二値化部102が画像二値化を行う(ステップS4)。画像二値化は局所的な明暗により行い、低コントラストの状況にも対応する。白地に黒の文字の検出を行い、元画像の明暗を反転して、黒地に白の文字の検出も行う。また、明らかな文字以外の領域は膨張収縮等のマスク処理によりノイズ除去を行う。
 (3)文字領域検出
 文字領域検出部103が文字領域を検出する(ステップS5、特許請求の範囲における「文字領域検出ステップ」に相当)。「文字領域」は、ステップS1で入力した画像において、認識対象の文字が存在する領域、またはその可能性のある領域をいう。この文字領域の検出については、下記の参考文献1のように、形状の特徴を統計的に学習することで検出する手法が知られている。本装置では、ラベリング処理を行うことにより領域毎にラベルを付け、各領域の形状特徴(円形度、穴の数、構成する領域数、外周矩形サイズ・アスペクト比、ラベル領域と非ラベル領域の面積比等)から文字領域かどうかを判定して検出する。
<参考文献1>“A
learning-based method to detect andsegment text from scene images”、 JOURNAL OF ZHEJIANG UNIVERSITY - SCIENCE A
Volume 8、 Number 4、 pp. 568-574
 本実施形態では、後述するWFST処理によりフィルタリングを行うため、文字ではないノイズの領域をはじめから検出しないことよりも、洩れがないように可能性のある文字領域をできる限り多く検出しておくことを優先する。このため、膨張収縮処理により近接領域を連結したパターン、連結領域を分解したパターン、文字周辺のノイズを除去したパターンについても、文字領域を検出するものとする。また、この検出パターンについては様々な手法(エッジや色合いを利用した手法、高度な文字領域連結処理等)を追加することもできる。
 (4)文字列候補検出、一文字単位での切り出し
 文字領域分割部104が文字領域内の文字列候補を検出し、文字領域を一文字単位で分割(以下「切り出し」ともいう。)する(ステップS6、特許請求の範囲における「文字領域分割ステップ」に相当)。具体的に、文字領域分割部104は最初に文字ラインを検出する。文字ラインは3文字以上で構成されると想定し、文字領域の領域サイズ・間隔・角度の推移から検出する。検出した文字ライン毎にラベリング処理を行い、ラベルを付けた領域毎の角度の中央値、平均値、最頻値等を元にして、文字ラインを絞り込む。図4は文字領域分割部104の動作を説明するための図である。図4に示されるように、文字ラインL毎に文字ラインの角度に基づく探索により水平方向・垂直方向のせん断変形を行うとともに、文字のせん断・回転の両方の変形ゆがみを補正する。図4では、画像A1は回転した文字列が書かれた補正前の画像を示し、画像A2は文字ラインに対して垂直方向にせん断変形することで文字列方向の傾きを補正した後の画像を示す。
 文字領域分割部104は、ゆがみを補正した画像A2からノイズを除去した後に、文字ラインの方向の文字間隔を求め、一文字単位で切り出す。一文字単位での切り出しは、文字列方向に対して垂直方向の画素を足し合わせたヒストグラムにより、文字の間となる候補を求め、文字ライン検出時に求まった領域サイズの中央値、平均値、最頻値等を基準に、複数の重なり合う切り出し位置を決定することにより行われる。図4では、補正後の画像A2における文字列Mに対して少しずつ角度を変えながら水平方向のせん断変形を行うことにより、複数の文字列M1、M2、M3を生成し、これらの文字列M1、M2、M3に対して一文字単位で切り出しを行った様子が示されている。文字列Y2は文字列M2に対して一文字単位での切り出しを行った後の文字列を示し、この場合の空白領域数は4である。「空白領域」とは、文字の間の領域をいい、図4では符号Kで示されている。また、符号Y3は文字列M3に対して一文字単位での切り出しを行った後の文字列を示し、この場合の空白領域数は7である。本実施形態において文字領域分割部104は、空白領域の数、および面積が最大となる場合を文字領域分割の結果として採用する。図4の例では、文字列Y3が最終的に選択された文字領域分割後の文字列である。そのほか、既存のOCRエンジンにより文字ライン一つ分の文字認識を行う等、複数の手法・パラメータによる文字位置検出・文字認識処理を行い、文字の可能性のある切り出し位置毎に一文字単位の切り出しを行い、位置が重複することを許容するような、オーバーセグメンテーションとなる状態遷移を求める。
 (5)文字認識
 文字認識部105は、文字領域分割部104がステップS6にて分割した分割領域(図4では符号Dで表示)に存在する各文字に対して、一文字ごとの文字認識処理を行い、一文字に付き1つ以上の文字認識処理結果の候補(以下、「文字認識候補群」、または単に「候補」ともいう。)を出力する(ステップS7、特許請求の範囲における「文字認識ステップ」に相当)。一文字単位の文字認識は複数のエンジンにより文字認識結果を取得するように行われる。
 (6)WFSTデータ生成
 第1文字列遷移データ作成部106は、ステップS7で得られた認識結果の候補群から重複候補をまとめ、WFSTデータ(以下「第1WFSTデータ」ともいう。特許請求の範囲における「第1文字列遷移データ」に相当)を生成する(ステップS8、特許請求の範囲における「第1文字列遷移データ作成ステップ」に相当)。つまり、第1文字列遷移データ作成部106は、文字認識部105より文字認識処理結果の候補(一文字に付き1つ以上の候補)を入力し、当該候補への遷移に対する重み値を計算し、それら候補および重み値の組に基づく第1WFSTデータを作成する。
 文字認識部105が複数の文字認識処理結果の候補に対してそれぞれ優先順位を付けて出力した場合に、第1文字列遷移データ作成部106は当該優先順位に基づき、上記重み値を計算する。更に、文字認識部105が少なくとも2種類以上の異なる認識方式を用いて文字認識処理を行った場合に、第1文字列遷移データ作成部106は、当該異なる認識方式における文字認識処理結果の候補の出力数および上記優先順位に基づき、上記重み値を計算する。ここで、重複候補の重み値は積/和で合成することで、各文字認識結果で同一候補の登場数が多いほど、重み値が小さくなるようにする。つまり、本実施形態においては、重み値が小さいほど、実際の正解に近い候補であることがいえる。更に、第1文字列遷移データ作成部106は、言語データベースに登録されている単語の文字列遷移を加味して、上記重み値を計算してもよい。
 図5は第1文字列遷移データ作成部106が作成した第1WFSTデータの一例を示す。第1WFSTデータは、図5に示されるように、複数の候補とその重み値が付けられた状態遷移となっている。文字認識結果が複数ある場合は、同一の初期状態を持つ状態遷移が並列で並ぶ形となる。図5の例は、文字認識処理の実際の正解が例えば「ドコモ」であった場合に、文字認識処理における複数の候補が例えば「ド」、「ト」、「人」、「コ」、「二」、「口」、「モ」、「毛」、「t」、等であり、それぞれの重み値が「0.2」、「0.4」、「0.6」、「0.2」、「0.5」、「0.6」、「0.2」、「0.4」、「0.5」であった場合を示す。
 文字認識候補群から生成された第1WFSTデータには、文章途中のキーワードを検出するために、文字列遷移の初期状態から各文字候補へのε遷移(入出力を持たない空の遷移、特許請求の範囲における「第1空遷移」に相当)、各文字候補から文字列遷移の最終状態へのε遷移(特許請求の範囲における「第2空遷移」に相当)、ノイズを文字として捉えることを回避するために重み値を付け且つ各文字候補を一文字単位でスキップするためのε遷移(特許請求の範囲における「第3空遷移」に相当)が含まれている。図5では、第1空遷移が符号E1で示されており、第2空遷移が符号E2で示されており、第3空遷移が符号E3で示されており、第3空遷移の重み値が例えば「2.0」と示されている。なお、第1WFSTデータは、最適な処理サイズでの演算ができるように、複数行単位や一定文字数単位に分割した上で演算を行い、その結果を組み合わせて利用することもできるものとする。
 ここで、ステップS6にてオーバーセグメンテーションとなった場合は、図6で示されるように、重複位置毎に一文字単位の文字認識を行い、重複する文字切り出し位置の遷移を一つの第1WFSTデータとして表現する。言い換えれば、文字領域分割部104が複数の分割パターンを用いて文字領域を分割し、複数種類の分割領域を生成した場合に(つまりオーバーセグメンテーションの場合に)、文字認識部105は、当該複数種類の分割領域それぞれに対して文字認識処理を行い、第1文字列遷移データ作成部106は、当該複数種類の分割領域それぞれにおける文字候補に対して第1WFSTデータを作成する。
 図6の例は、文字認識処理の実際の正解が例えば「Forum」であった場合に(図6の(A))、複数の手法、切り出しパラメータで分割位置を決定し、且つ複数の分割位置で一文字認識処理を行った結果を示している(図6の(B)および(C))。図6の(B)で示している結果では「fbnim」との認識結果が出ており、図6の(C)で示している結果では「石rurn」との認識結果が出ている。なお、図6の(B)の結果における「b」の部分では、ノイズのため、第一候補が「b」であり、第二候補が「o」である。ノイズの原因は切り出しの際に「F」の右上の一部が入ってしまったことによると考えられる。このような2つの結果に対して、第1文字列遷移データ作成部106は図6の(D)に示されるような一つの第1WFSTデータを作成する。なお、図6の例では、初期状態から途中状態へのε遷移、途中状態から最終状態へのε遷移、文字スキップのための重み値付きε遷移は省略している。また、作成された一つの第1WFSTデータは、その後語彙データとのWFST合成演算に用いられ(図6の(E)および(F)参照)、WFST処理部109が複数種類の分割領域の全体を通じて累積重み値が上位のもの(図6の例では語彙データとマッチングする「forum」)を結果として出力するが、これについては後述する。
 また、第1文字列遷移データ作成部106は、情景画像等からより有意な語彙の検出精度を上げるため、文字認識結果の候補の画像内における位置、または文字認識結果の候補の文字サイズ等に基づき、重み値を修正する。図7の例において、図7の(A)は文字の入った画像A3を示す。図7の(B)は第1文字列遷移データ作成部106が当初計算した重み値を示す。文字候補「この先」に対して重み値「0.13」が計算されている。同様に、「株式会社」に対して「0.15」、「10km」に対して「0.15」、「清水寺」に対して「0.20」、「旅館」に対して「0.21」の重み値がそれぞれ計算されている。
 ここで、第1文字列遷移データ作成部106は、図7の(C)と(D)で示される情報を用いて、当初計算した重み値を調整する。図7の(C)はキーワードとしての価値の統計的な空間分布を示す情報である。この例において、画像の中央、左上、右下等がキーワードとしての価値が高い部分であり、図7の(C)ではこれが濃淡で表示されている。濃く表示された部分には、キーワードとしての価値が高いことから、重み係数として「1」が割り当てられている。薄く表示された部分には、キーワードとしての価値が低いことから、重み係数として「2.5」が割り当てられている。図7の(D)は文字サイズに応じた重み係数テーブルを示す。サイズ「24」の文字は、サイズが大きい分だけキーワードとしての価値が高いと想定され、重み係数としては「1」が割り当てられている。サイズ「8」の文字は、サイズが小さい分だけキーワードとしての価値が低いと想定され、重み係数としては「2.2」が割り当てられている。
 図7の(E)は、第1文字列遷移データ作成部106が図7の(C)と(D)で示される情報を用いて、当初計算した重み値を調整した結果を示す。当初計算した重み値に、図7の(C)および(D)の重み係数をかけることにより、大きい文字領域や、語彙として価値の高い位置にある語彙の優先順位が上がるように重み付けされている。例えば、語彙「清水寺」に対しては、当初計算した重み値「0.20」に図7の(C)の空間分布重み値「1.5」と文字サイズ重み値「1.0」が掛け算され、調整後の重み値として「0.3」が付与されている。以上の処理により、重み値調整前には、例えば語彙「この先」が語彙「清水寺」より小さい重み値を有していたが、重み値調整により、語彙「この先」の重み値が語彙「清水寺」の重み値より大きくなっている。すなわち、重み値調整により、実際にキーワードとして価値のある語彙が小さい重み値を有するよう調整されたといえる。
 (7)WFST演算処理
 (WFST演算処理全体の流れ)
 WFST処理部109および文字列検出部110が、ステップS3およびS8で生成された第1WFSTデータをまとめて一つの第1WFSTデータにした後に(ステップS9)、WFST演算処理を行う(ステップS10、特許請求の範囲における「有限状態変換ステップ」に相当)。WFST処理部109および文字列検出部110が行う「WFST演算処理」は、WFST合成演算(特許請求の範囲における「合成演算」に相当)を含む処理であって、WFST処理部109がWFSTデータに基づき状態遷移を順次行い、各状態遷移における重み値を累積して状態遷移ごとの累積重み値を算出し、一つ以上の状態遷移の結果を累積重み値に基づき文字列検出部110に出力すると、文字列検出部110は当該累積重み値に基づき1つ以上の文字列を文字列認識結果として検出する、といった一連の処理を含む。図8は、WFST演算処理を示すフローチャートである。文字認識候補群から生成された第1WFSTデータは、語彙DB111(図1参照)とのWFST演算処理による語彙検出に用いられる他、文字認識候補群の第1WFSTデータそのものを画像に対する検索用テーブルとして利用することもできる。
 図8においては、ステップS10-1、S10-2、S10-3、およびS10-4からなる処理フローが、文字認識候補群の第1WFSTデータそのものを画像に対する検索用テーブルとして利用し、画像にユーザ入力キーワードが存在するか否かを判定する場合の処理フローである。この場合に、WFST処理部109は、ステップS1~S9の一連の処理によって作成された第1WFSTデータ、およびユーザが入力したキーワードに対するWFSTデータ(特許請求の範囲における「第2文字列遷移データ」に相当、以下「第2WFSTデータ」という。)に対してWFST演算処理を行うことにより、画像にキーワードが存在するか否かを判定する。
 具体的には、まず、第2文字列遷移データ作成部107が、ユーザからキーワードを入力し、当該キーワードに対する第2WFSTデータを作成する(ステップS10-1)。図8の(A)にはユーザ入力のキーワード(検索語彙)に対して作成した第2WFSTデータがイメージされている。次に、WFST処理部109が、ステップS10-1で作成した第2WFSTデータと、ステップS1~S9の一連の処理によって作成された第1WFSTデータとを用いてWFST合成演算を行う(ステップS10-2)。次に、WFST処理部109がステップS10-2でのWFST合成演算の結果に基づき、ベストパスを求める演算を行う(ステップS10-3)。最後に、文字列検出部110がベストパスの演算結果からユーザ入力キーワードの有無の判定結果、または当該判定結果における重みを出力する(ステップS10-4)。
 また、図8において、ステップS10-5、S10-6、S10-7、S10-8、およびS10-9からなる処理フローが、語彙DB111とのWFST演算処理による語彙検出の場合の処理フローである。この場合に、WFST処理部109は、ステップS1~S9の一連の処理によって作成された第1WFSTデータ、および語彙DB111に存在する各語彙のWFSTデータ(特許請求の範囲における「第3文字列遷移データ」に相当、以下「第3WFSTデータ」という。)に対してWFST演算処理を行うことにより、画像に存在する語彙を検出する。
 具体的には、まず、第3文字列遷移データ作成部108が、語彙DB111に存在する各語彙の第3WFSTデータを作成する(ステップS10-5)。次に、WFST処理部109が、ステップS10-5で作成した第3WFSTデータと、ステップS1~S9の一連の処理によって作成された第1WFSTデータとを用いてWFST合成演算を行う(ステップS10-6)。次に、WFST処理部109がステップS10-6でのWFST合成演算の結果に基づき、ベストパスを求める演算を行う(ステップS10-7)。最後に、文字列検出部110がベストパスにおける重み値順に語彙を出力する(ステップS10-8)。これとともに、辞書が分類別にある場合や、分類情報辞書がある場合には、分類情報を出力する(ステップS10-9)。
 (WFST合成演算)
 図9にWFST合成演算(図8のステップS10-2および10-6)のイメージを示す。WFST合成演算は、二つのWFSTデータで表現された状態遷移を比較し、共通する一文字単位の語彙の遷移を取り出す演算である。WFST合成演算の結果、各遷移の持つ重み値は合成する二つの遷移の重み値から再計算され、WFST合成演算の結果は状態遷移の重み値からベストパス(重みの小さい遷移)上位を算出したものとなる。なお、オーバーセグメンテーションの場合に、WFST処理部109は複数種類の分割領域の全体を通じて累積重み値が上位のものを、WFST合成演算の結果として出力する。
 語彙検出(ステップS10-5~S10-9からなる処理フロー)では、図9の(A)で示したような文字認識候補群の第1WFSTデータ(図5に示したものと同一)と、図9の(B)で示したような語彙DB111における語彙データの第3WFSTデータとのWFST合成演算を行い、遷移の重みが上位の語彙を取り出す(つまり語彙データとマッチするパスだけを取り出す)ことで、重み値の順に語彙を検出する。図9の(C)は、WFST合成演算の結果として、「ドコモ」、「人毛」、「人口」が取り出されており、それぞれの重み値が「0.2+0.2+0.2=0.6」、「0.6+2.0+0.4=2.8」、「0.6+0.6=1.2」である様子を示している。したがって、ベストパスとしては重み値が最も小さい「ドコモ」が検出され、文字列検出部110は「ドコモ」を語彙検出の結果として出力する。また、文字をスキップするためのε遷移の存在により、“天ぷらおむすび“を“天むす“として検出するなど、略称を検出することもできる。また、語彙DB111が大規模な構成の場合、完全に一致する語彙がなくても語彙の一部分を正解語彙として取り出せる場合がある。
 検索用テーブルの場合(ステップS10-1~S10-4からなる処理フロー)、画像中から探したい検索キーワードを第2WFSTデータで表現し、文字認識候補郡の第1WFSTデータとのWFST合成演算を行う。このWFST合成演算では、合成する二つのWFSTデータの遷移で初期状態から最終状態への遷移が得られるかどうかを判定する。これにより、検索キーワードが文字認識候補郡にあるかどうか、つまり画像中にユーザ入力のキーワードが存在するかどうかが判定できる。更に、遷移の重み値から複数画像に対する順位付けを行うこともできる。図9の例においては、ユーザ入力のキーワードが例えば「ドコモ」、「人毛」、「人口」の何れかであった場合に、合成する二つのWFSTデータの遷移で初期状態から最終状態への遷移が得られるため、当該ユーザ入力のキーワードが画像中に存在していると判定される。ただし、「ドコモ」、「人毛」、「人口」のそれぞれの重み値が「0.2+0.2+0.2=0.6」、「0.6+2.0+0.4=2.8」、「0.6+0.6=1.2」であるため、ベストパスとしては重み値が最も小さい「ドコモ」が検出される。文字列検出部110は、ユーザ入力のキーワードが「ドコモ」である場合に、最も小さい重み値を語彙検索の結果として出力する。
 図9の(B)に例示した語彙データは、図9の(C)に示されるように初期状態を同一とする一文字ずつの語彙の遷移により表される。更に、別途統計処理等により得られた頻度情報、利用者が入力した学習情報や、語彙の文字列長等により重み付けされていてもよい。また、比較の対象である第1WFSTデータおよび第2WFSTデータ、そして第1WFSTデータおよび第3WFSTデータのそれぞれは、必ず同じ形式のデータである必要はなく、文字の状態遷移を表すデータであって、比較が可能な程度のデータ形式であればよい。
 (WFST合成演算、バリエーション1)
 本実施形態では、WFST合成演算において種々のバリエーションを想定しており、以下、バリエーション1について説明する。バリエーション1では、語彙DB111は、語彙に対する分類情報を有し、第2文字列遷移データ作成部107または第3文字列遷移データ作成部108は、当該分類情報を付加して、第2WFSTデータまたは第3WFSTデータを作成し、WFST処理部109は、当該分類情報を付加して、WFST合成演算を行い、その結果を出力する。すなわち、バリエーション1では、語彙DB111として、入力を語彙とし、出力を分類情報としたWFSTデータや、分類情報を付加した語彙DB111のWFSTデータとの合成演算により、キーワードを検出すると同時に、分類のための情報取得や、キーワードへの分類情報の付加ができる。その場合、同一語彙に複数の分類情報を持たせることができるように、語彙DB111の最終状態の入力に分類情報の一連番号を付加し、出力に分類情報(つまり分類情報の内容)を付加する。また、文字認識から生成された第1WFSTデータの最終状態には語彙DB111上の同一語彙に使われる分類情報の最大数分だけの一連番号への遷移を付加する。
 図10はバリエーション1における処理の一例を示す。図10の(A)は、分類情報を付加した語彙データの一例を示す。検索用テーブルの場合であれば、図10の(A)は第2文字列遷移データ作成部107が作成した分類情報付きの第2WFSTデータを示す。語彙検出の場合であれば、図10の(A)は第3文字列遷移データ作成部108が作成した分類情報付きの第3WFSTデータを示す。分類情報は、同一語彙の複数ジャンルを識別するための情報である。例えば、語彙「つばめ」には、一連番号が「0000」および「0001」の二つの分類情報である「新幹線」および「鳥類」が付加されている。なお、図10の(A)における「<eps>」とは、WFST演算処理における空の遷移を示すものであり、各文字(例えば「つ」、「ば」、「め」など)が入力である場合の出力である。図10の(B)は、文字認識の結果に分類情報の一連番号を付加して第1WFSTデータに変換した様子を示す。例えば、文字認識の結果「つばめ」には、そのWFSTデータの最終状態に、語彙DB111上において語彙「つばめ」に使われる分類情報の最大数分だけの一連番号(図10の例では一連番号「0000」および「0001」の2つ)への遷移が付加されている。図10の(A)に示す第2WFSTデータまたは第3WFSTデータと、図10の(B)に示す第1WFSTデータとの合成演算が行われ、図10の(C)は合成演算の結果を示す。両WFSTデータが比較された後に、マッチするパス2つだけが取り出されるが、<eps>空遷移により、図10の(C)における結果としては分類情報のみが示されている。
 図11は、図10の場合と同様の場合を示しているが、文字認識の結果が「すずめ」である点で異なる。図11の(C)には合成演算の結果が示されており、両WFSTデータが比較された後に、マッチするパス1つだけが取り出されるが、図10の(C)と同様に、<eps>空遷移により、結果としては分類情報のみが示されている。
 図12は、図10の場合と同様の場合を示しているが、<eps>遷移がない点で異なる。図12の(C)には合成演算の結果が示されており、両WFSTデータが比較された後に、マッチするパス2つだけが取り出され、<eps>遷移がないことから、結果としては語彙と分類情報の両方が示されている。
 (WFST合成演算、バリエーション2)
 次に、バリエーション2について説明する。バリエーション2では、図13に示されるように、文字認識装置1が語彙分類関連性ベクトル格納部112(特許請求の範囲における「語彙分類関連性ベクトル格納手段」に相当)を更に備える。語彙分類関連性ベクトル格納部112は、語彙と分類情報との関連性を示す語彙分類関連性ベクトルを格納するものである。第1文字列遷移データ作成部106は、自ら作成した第1WFSTデータにおける文字認識処理結果の候補および当該候補の重み値に対して、語彙分類関連性ベクトルの値を加算する。次に、第1文字列遷移データ作成部106は、最も大きな値となる分類情報を当該候補に対応する分類情報とし、該分類情報を基に当該候補に対する重み値を修正する。そして、WFST処理部109は、当該修正された重み値に基づき、WFST合成演算を行う。
 すなわち、バリエーション2では、類義関係データベースを利用して分類情報と語彙の関連性をテーブルとして用意しておくことで、分類情報の優先度を変更することができる。例えば、図14のように語彙として料理メニュー、分類情報として料理ジャンルの関係性をベクトルで表した配列(図14の(B)、語彙分類関連性ベクトル)があれば、検出語彙のベクトルを加算し、最もベクトルの大きくなる料理ジャンルを検出語彙の料理ジャンルとして検出することができる。逆に、取得したジャンルの順序やベクトル値により語彙の重みを再決定することで、検出された料理メニューの優先度を変更することもできる。
 図14の(A)は文字認識で検出された語彙(「餃子」、「スープ」など、料理メニューのそれぞれ)を示しており、図14の(B)は各料理メニューと料理ジャンルとの対応テーブル(語彙分類関連性ベクトル)を示している。図14の(C)は、図14の(B)の対応テーブルを参照して、図14の(A)の各料理メニューに対応するベクトル値を計算した例を示す。この例においては、「中華」に対して最も高いベクトル値が計算されたため、図14の(A)に示された語彙のジャンルは「中華」と判断される。最後に、図14の(D)は、図14の(C)で判断されたジャンル「中華」が反映されて、図14の(A)の各料理メニューに対する重み値が修正された様子を示す。
 図15は、図14の(D)に示された修正重み値の計算過程を示す図である。図15の(A)~(D)の手順を経ることにより、図14の(D)に示された修正重み値が計算される。図15の(A)は、検出したジャンル重み値の和を示しており、図14の(B)および(C)に相当する。図15の(B)は図14の(A)に示された語彙重み値を逆数にして、つまり(1/語彙重み値)にして、各語彙のジャンル重み値をかけた様子を示す。例えば、「餃子」に対しては、図14の(A)に示された語彙重み値である「0.3」を逆数にして、つまり「1/0.3」にして、図15の(A)に示されたジャンル重み値「0、1.0、0」をそれぞれかけることにより、「0、3.33、0」の計算結果を得る。同様に、「スープ」に対しては、図14の(A)に示された語彙重み値である「0.45」を逆数にして、つまり「1/0.45」にして、図15の(A)に示されたジャンル重み値「0、0.3、0.7」をそれぞれかけることにより、「0、0.67、1.56」の計算結果を得る。
 図15の(C)は、図15の(B)の結果に、図15の(A)の和をかけた様子を示す。例えば、「餃子」に対しては、図15の(B)の結果である「0、3.33、0」に図15の(A)の和である「0.5、2.8、0.7」をそれぞれかけることにより、「0、9.33、0」の計算結果を得る。同様に、「スープ」に対しては、図15の(B)の結果である「0、0.67、1.56」に図15の(A)の和である「0.5、2.8、0.7」をそれぞれかけることにより、「0、1.87、1.09」の計算結果を得る。
 最後に、図15の(D)は各語彙に対して図15の(C)の計算結果をジャンルごとにそれぞれ足し合わせ、その逆数を修正重み値とする様子を示す。例えば、「餃子」に対しては、図15の(C)の結果である「0、9.33、0」に対してジャンルごとの数値を全て足し合わせて「9.33」の計算結果を得る。そして、これを逆数にして修正重み値「0.11」の計算結果を得る。同様に、「スープ」に対しては、図15の(C)の結果である「0、1.87、1.09」に対してジャンルごとの数値を全て足し合わせて「2.96」の計算結果を得る。そして、これを逆数にして修正重み値「0.34」の計算結果を得る。
 (WFST合成演算、バリエーション3)
 次に、バリエーション3について説明する。バリエーション3では、WFSTデータに「位置情報」が付加される。すなわち、文字認識部105が、文字認識処理結果の候補を出力する際に、当該候補の画像内における位置情報をともに出力する。画像内における位置情報を取得するための別途の手段を設けてもよく、文字認識部105が当該取得を行ってもよい。そして、第1文字列遷移データ作成部106は、当該位置情報を付加して、第1WFSTデータを作成し、WFST処理部109および文字列検出部110は、当該位置情報を付加して、WFST合成演算を行い、その結果を出力する。バリエーション3では、WFST合成演算そのものによっては検出語彙の位置までは特定できないので、元の位置情報を別途テーブル(下記の図16の(C)を参照)として用意し、そのテーブル番号を状態遷移に付加する。そうすることで、検出された結果にもそのテーブル番号が付くので、元の位置情報が特定できるようになる(図16の(D)および(E)を参照)。
 図16はバリエーション3における各機能要素の動作を示すための図である。図16の(C)は、文字認識部105が出力した位置情報を示す。位置情報は位置情報テーブルとして出力されており、x1およびy1により各文字の左上の座標が示され、x2およびy2により各文字の右下の座標が示される。また、各位置情報は「0000」、「0001」等の一連番号で識別される。文字認識部105は、文字認識処理結果の候補を出力する際に、図16の(C)に示したような一連番号をともに出力する。図16の(B)は、第1文字列遷移データ作成部106が作成した位置情報付きの第1WFSTデータを示す。図5の第1WFSTデータと比べると、位置情報の一連番号が付加されている点で異なる。なお、文字スキップのための重み値付きε遷移は省略している。
 図16の(A)は、位置情報(より正確には位置情報の一連番号)を付加した語彙データの一例を示す。検索用テーブルの場合であれば、図16の(A)は第2文字列遷移データ作成部107が作成した位置情報付きの第2WFSTデータを示す。語彙検出の場合であれば、図16の(A)は第3文字列遷移データ作成部108が作成した位置情報付きの第3WFSTデータを示す。図16の(A)で示されるように、遷移の最初と最後に位置情報の一連番号が付加されており、付加された一連番号の数は図16の(C)に示した位置情報の数の最大数と同じである。この例において位置情報の数の最大数は、「0000」から「9999」までの1万個である。
 図16の(D)は、図16の(A)の第2WFSTデータまたは第3WFSTデータと、図16の(B)の第1WFSTデータとの合成演算を行った結果を示す。合成演算の結果に位置情報の一連番号が付加されている。そして、図16の(E)に示されるように、合成演算の結果に付加された一連番号と図16の(C)の位置情報テーブルとを照らし合わせることで、「ライン」、「スソ」等の文字認識の結果が画像内のどこに位置しているのかを特定することができる。
 重複位置の語彙を一つだけ利用する場合は、文字位置の検出済み判定用配列を別途作成し、ベストパス上位から検出語彙の文字位置に対応する配列位置を検出済みとしていく。すでに配列が検出済みとなっていた場合は、語彙が重なったと判定し、同一位置から検出されたキーワードの優先順位の高いものだけを利用する。このように隙間を埋めるように語彙を配置していくことで、優先順位の高い語彙により文字認識結果の補正が行える。
 (WFST合成演算、バリエーション4)
 次に、バリエーション4について説明する。分かち書きが前提の言語の場合、日本語に比べて構成する文字のバリエーションが少ないため、図5のような文字認識候補群のWFSTデータを利用する場合、例えば「pencil」の一部から「pen」だけを検出するというように、単語の一部分だけを検出してしまうおそれがある。そこで、バリエーション4では、WFSTデータに「区切り識別情報(特許請求の範囲における「識別情報」に相当)」を付加する。
 すなわち、文字認識部105が、文字認識処理結果の候補を出力する際に、単語間の区切りを示す区切り識別情報をともに出力する。区切り識別情報は、文字認識において区切りの文字であると認識された場合に、つまり認識した文字が例えばスペース、ピリオド、括弧等の記号であった場合に、出力される。そして、第1文字列遷移データ作成部106は、当該区切り識別情報を付加して、区切り識別情報付きの第1WFSTデータを作成する。また、第2文字列遷移データ作成部107および第3文字列遷移データ作成部108も区切り識別情報を付加して、区切り識別情報付きの第2WFSTデータおよび第3WFSTデータのそれぞれを作成する。区切り識別情報は上記したスペース、ピリオド、括弧等の記号の場合に付加されるほか、単語の最初と最後にも付加される。そして、WFST処理部109は、WFST処理のための状態遷移を行う際に、二つの区切り識別情報により区切られた部分を単位として当該状態遷移を行う。
 図17はバリエーション4における各機能要素の動作を示すための図である。図17の(B)は、画像における文字列が「{two pens}」であった場合に、第1文字列遷移データ作成部106が作成した区切り識別情報付きの第1WFSTデータを示す。記号「{」を認識した文字認識部105がその文字認識処理結果を出力するとともに、区切り識別情報を出力する。これを受け取った第1文字列遷移データ作成部106は記号「{」を入力とし、区切り識別情報「<sp>」を出力とする識別情報付きの第1WFSTデータを作成する。記号「}」についても同様である。「two」と「pens」の間のスペースについても、文字認識の結果がスペースである旨を文字認識部105が出力すると、第1文字列遷移データ作成部106は当該スペースに対して区切り識別情報を割り当てた区切り識別情報付きの第1WFSTデータを作成する。なお、図17においては、初期状態から途中状態へのε遷移、途中状態から最終状態へのε遷移、文字スキップのための重み値付きε遷移は省略されている。
 図17の(A)は、区切り識別情報を付加した分かち書き用の語彙データの一例を示す。検索用テーブルの場合であれば、図17の(A)は第2文字列遷移データ作成部107が作成した区切り識別情報付きの第2WFSTデータを示す。語彙検出の場合であれば、図17の(A)は第3文字列遷移データ作成部108が作成した区切り識別情報付きの第3WFSTデータを示す。図17の(A)で示されるように、単語の最初と最後に区切り識別情報「<sp>」が付加されている。また、英語において複数形を示す「s」に対しては、出力が「<esp>」となるようにする。これにより、複数形の「s」が合成演算の結果で影響しないようにすることができる。
 図17の(B)に示される第1WFSTデータと、図17の(A)に示される第2WFSTデータまたは第3WFSTデータとの合成演算を行った結果が、図17の(C)に示されている。WFST処理部109が、状態遷移を行う際に、二つの区切り識別情報により区切られた部分を単位として当該状態遷移を行ったため、つまり図17の(B)に示される「two」や「pens」を単位として当該状態遷移を行い、図17の(A)の第1WFSTデータとの合成演算を行ったため、結果としては「pen」が出力される。
 これに対し、図17の(D)は、画像における文字列が「pencil.」であった場合に、第1文字列遷移データ作成部106が作成した区切り識別情報付きの第1WFSTデータを示す。記号「.」を認識した文字認識部105がその文字認識処理結果を出力するとともに、区切り識別情報を出力する。これを受け取った第1文字列遷移データ作成部106は記号「.」を入力とし、区切り識別情報「<sp>」を出力とする識別情報付きの第1WFSTデータを作成する。図17の(D)に示される第1WFSTデータと、図17の(A)に示される第2WFSTデータまたは第3WFSTデータとの合成演算を行った結果が、図17の(E)に示されている。WFST処理部109が、状態遷移を行う際に、二つの区切り識別情報により区切られた部分を単位として当該状態遷移を行ったため、つまり図17の(D)に示される「pencil」を単位として当該状態遷移を行い、図17の(A)の第1WFSTデータとの合成演算を行ったため、マッチングする語彙が検出されていない。これにより、「pencil」の一部から「pen」だけが検出されるなど、単語の部分的なスペルのみが検出されることを防止できる。
 図18は、分かち書き言語の語彙と、分かち書きでない言語の語彙とが組み合わさった場合に対して、バリエーション4における各機能要素の動作を示すための図である。以下に説明する方法では、アルファベットとそれ以外の文字間の遷移に、区切りの識別情報の遷移とε遷移を付加する。これにより、アルファベットとそれ以外の文字が区切りなく存在する場合でも、アルファベットで構成された語彙の検出と、アルファベットとそれ以外の文字が組み合わさった語彙の検出を同時に行うことができる。
 図18の(A)は、第1文字列遷移データ作成部106が当初作成した区切り識別情報付きの第1WFSTデータを示す。図17と同様の要領で第1WFSTデータが作成され、単語の最初と最後に区切り識別情報「<sp>」が付加されている。図18の(B)は、第1文字列遷移データ作成部106が図18の(A)を修正して作成した区切り識別情報付きの第1WFSTデータを示す。アルファベットとそれ以外の文字間の遷移に、つまり分かち書き言語の語彙と、分かち書きでない言語の語彙との間の遷移に、区切り識別情報が付加されている。
 更に、区切り識別情報とあわせてε遷移「<eps>」を付加することで、アルファベットとそれ以外の文字が組み合わさった語彙にも対応している。つまり、アルファベットで構成された遷移と、それ以外の文字で構成された遷移とが並列に並んでいると考え、文字間の遷移に図18の(C)に示すような状態遷移を付加する。これにより、アルファベットとそれ以外の文字間の遷移に区切り識別情報「<sp>」の遷移が付加される構造となる。なお、図18においては、初期状態から途中状態へのε遷移、途中状態から最終状態へのε遷移、文字スキップのための重み値付きε遷移は省略されている。
 (文字認識システム100としての構成例)
 続いて、本実施形態の他の構成例について説明する。以上では、本発明が文字認識装置1として構成された場合を説明したが、これに限らず、本発明は、図19に示されるように、端末200およびサーバ300を備えた文字認識システム100として構成されることもできる。図19はこの場合の構成概要図であり、端末200とサーバ300とは通信ネットワークにより互いに通信可能に接続されている。
 端末200は、機能的構成要素として、画像読み込み部101(特許請求の範囲における「画像入力手段」に相当)、画像二値化部102、文字領域検出部103(特許請求の範囲における「文字領域検出手段」に相当)、文字領域分割部104(特許請求の範囲における「文字領域分割手段」に相当)、文字認識部105(特許請求の範囲における「文字認識手段」に相当)、第1文字列遷移データ作成部106(特許請求の範囲における「第1文字列遷移データ作成手段」に相当)、第2文字列遷移データ作成部107(特許請求の範囲における「第2文字列遷移データ作成手段」に相当)を備える。
 サーバ300は、機能的構成要素として、第3文字列遷移データ作成部108(特許請求の範囲における「第3文字列遷移データ作成手段」に相当)、WFST処理部109(特許請求の範囲における「有限状態変換手段」に相当)、文字列検出部110(特許請求の範囲における「文字列検出手段」に相当)、語彙DB111(特許請求の範囲における「語彙データベース」に相当)を備える。
 端末200およびサーバ300が備える機能的構成要素それぞれの説明については、文字認識装置1において説明した内容と重複するため、ここでは説明を省略する。なお、本実施形態では第1文字列遷移データ作成部106および第2文字列遷移データ作成部107が端末200内に存在し、第3文字列遷移データ作成部108がサーバ300内に存在している構成例を挙げているが、これに限らず、第1文字列遷移データ作成部106、第2文字列遷移データ作成部107、第3文字列遷移データ作成部108が端末200、サーバ300の何れに存在していてもよい。
 図2は端末200のハードウェア構成図としても参照することができる。図2に示すように、端末200は、物理的には、CPU21、ROM22及びRAM23等の主記憶装置、キーボード、マウスをはじめ、カメラ等の画像を読み込むための装置または外部装置からデータを読み込むための装置である入力デバイス24、ディスプレイ等の出力デバイス25、他の装置との間でデータの送受信を行うためのネットワークカード等の通信モジュール26、ハードディスク等の補助記憶装置27などを含む通常のコンピュータシステムとして構成される。入力デバイス24による画像の読み込みは、自装置で撮影された画像であってもよく、または他装置で撮影された画像であってもよい。上述した端末200の各機能は、CPU21、ROM22、RAM23等のハードウェア上に所定のコンピュータソフトウェアを読み込ませることにより、CPU21の制御の元で入力デバイス24、出力デバイス25、通信モジュール26を動作させると共に、主記憶装置22、23や補助記憶装置27におけるデータの読み出し及び書き込みを行うことで実現される。
 図2はサーバ300のハードウェア構成図としても参照することができる。図2に示すように、サーバ300は、物理的には、CPU31、ROM32及びRAM33等の主記憶装置、キーボード、マウスをはじめ、外部装置からデータを読み込む装置である入力デバイス34、ディスプレイ等の出力デバイス35、他の装置との間でデータの送受信を行うためのネットワークカード等の通信モジュール36、ハードディスク等の補助記憶装置37などを含む通常のコンピュータシステムとして構成される。上述したサーバ300の各機能は、CPU31、ROM32、RAM33等のハードウェア上に所定のコンピュータソフトウェアを読み込ませることにより、CPU31の制御の元で入力デバイス34、出力デバイス35、通信モジュール36を動作させると共に、主記憶装置32、33や補助記憶装置37におけるデータの読み出し及び書き込みを行うことで実現される。
 (文字認識プログラムとしての構成例)
 本発明は、文字認識プログラムとして構成されることもでき、以上の文字認識装置1に関する説明は、コンピュータを文字認識装置1として動作させる文字認識プログラムに関する説明としても捉えることができる。重複する説明は省略するが、文字認識プログラムは、コンピュータを、以上で説明した画像読み込み部101、画像二値化部102、文字領域検出部103、文字領域分割部104、文字認識部105、第1文字列遷移データ作成部106、第2文字列遷移データ作成部107、第3文字列遷移データ作成部108、WFST処理部109、および文字列検出部110として機能させる。文字認識プログラムは、例えば、記録媒体に格納されて提供される。なお、記録媒体としては、フレキシブルディスク、CD、DVD等の記録媒体、ROM等の記録媒体、または半導体メモリ等が例示される。
 (本実施形態の作用及び効果)
 続いて、本実施形態にかかる文字認識装置1の作用及び効果について説明する。本実施形態の文字認識装置1によれば、外部の電話帳等のデータベースを利用しないことから、当該電話帳データベースなどに含まれる大量の単語知識との照合が必要なく、文字認識処理の高速化を図ることができる。つまり、本実施形態によれば、文字認識結果から単語を検出して外部の単語データベースとの照合を行うのではなく、文字認識装置1内に存在する単語・分類情報データベースと文字認識候補群を有限状態トランスデューサ(WFST)で表現し、WFSTの合成演算を行うことで、高速に単語抽出・分類情報抽出・文字位置抽出処理を行うことが可能となる。また、位置情報取得手段や方位情報取得手段等も不要であるため、装置構成を簡素化することができる。つまり、位置情報取得装置や方位情報取得装置を用いず、文字認識装置1内の情報のみを用いて文字認識が可能となる。このような装置構成を用いて、精度よく且つ高速で、情景画像から文字認識を行うことが可能である。
 また、本実施形態では、画像にノイズが現れる形で文字領域を抽出しても、WFST演算処理による高度な言語的制約を加えることが可能である。これにより当該ノイズを取り除くことができるほか、優先順位を下げることができる。このため、明暗の変動や文字の歪みなど、情景画像特有の問題を有する場合にも認識精度を高めることができる。
 また、既存手法による文字認識結果に、本実施形態によって検出した語彙を当てはめることで、本実施形態の文字認識装置1等を既存手法の文字認識結果に対してエラー訂正を行うための装置として利用することができる。
 また、本実施形態によれば、文字認識候補群の第1WFSTデータそのものを画像に対する検索用テーブルとして利用し、本実施形態の文字認識装置1等を、画像にユーザ入力キーワードが存在するか否かを判定する装置等として活用することができる。
 また、本実施形態によれば、文字認識候補群の第1WFSTデータおよび語彙DB111における第3WFSTデータに対し合成演算を行うことにより、本実施形態の文字認識装置1等を語彙検出装置等として活用することができる。
 また、本実施形態によれば、第1文字列遷移データ作成部106が重み値を計算するための具体的な手法が提供される。
 また、本実施形態によれば、第1文字列遷移データ作成部106が重み値を修正するための具体的な手法が提供される。また、重み値の修正により語彙の検出精度を上げることができる。
 また、本実施形態によれば、文字領域分割部104がオーバーセグメンテーションを行った場合でも適切な対応が可能である。
 また、本実施形態によれば、第1空遷移、第2空遷移、および第3空遷移を第1WFSTデータに含ませることで、第1WFSTデータと第2WFSTデータまたは第3WFSTデータとの合成演算の精度を高めることができる。
 また、本実施形態によれば、区切りを示す識別情報を用いることにより、分かち書き言語の対しても、精度よく文字認識を行うことができる。更に、英語のような分かち書きをする言語、日本語のような分かち書きをしない言語の辞書を、語彙を共通にして扱うことができる。
 また、本実施形態によれば、位置情報を用いることにより、文字認識の結果が画像内のどこに位置しているのかを特定することができる。
 また、本実施形態によれば、分類情報を用いることにより、文字認識の結果がどのジャンルに属するかを特定することができる。
1…文字認識装置、100…文字認識システム、101…画像読み込み部、102…画像二値化部、103…文字領域検出部、104…文字領域分割部、105…文字認識部、106…第1文字列遷移データ作成部、107…第2文字列遷移データ作成部、108…第3文字列遷移データ作成部、109…処理部、110…文字列検出部、111…語彙DB、200…端末、300…サーバ。  
本発明は、外部の電話帳等のデータベースを用いず、簡素化された装置構成を用いて、精度よく且つ高速で文字認識を行うことができる文字認識装置、文字認識方法、文字認識システム、および文字認識プログラムを提供する。
 

Claims (16)

  1.  認識対象の文字を含む画像を入力する画像入力手段と、
     前記画像における、前記文字が存在する領域である文字領域を検出する文字領域検出手段と、
     前記文字領域を一文字単位で分割する文字領域分割手段と、
     前記文字領域分割手段が分割した分割領域に存在する前記文字に対して、一文字ごとの文字認識処理を行い、一文字に付き1つ以上の文字認識処理結果の候補を出力する文字認識手段と、
     前記候補を入力し、前記候補への遷移に対する重み値を計算し、前記候補および前記重み値の組に基づく文字列遷移データである第1文字列遷移データを作成する第1文字列遷移データ作成手段と、
     前記第1文字列遷移データに基づき状態遷移を順次行い、各状態遷移における重み値を累積して状態遷移ごとの累積重み値を算出し、一つ以上の前記状態遷移の結果を前記累積重み値に基づき出力する有限状態変換手段と、
     を備えることを特徴とする文字認識装置。
  2.  ユーザからキーワードを入力し、前記キーワードの文字列遷移データである第2文字列遷移データを作成する第2文字列遷移データ作成手段を更に備え、
     前記有限状態変換手段は、前記第1文字列遷移データおよび前記第2文字列遷移データに対して合成演算を行うことにより、前記画像に前記キーワードが存在するか否かを判定する、
     ことを特徴とする請求項1に記載の文字認識装置。
  3.  語彙データベースに存在する各語彙の文字列遷移データである第3文字列遷移データを作成する第3文字列遷移データ作成手段を更に備え、
     前記有限状態変換手段は、前記第1文字列遷移データおよび前記第3文字列遷移データに対して合成演算を行うことにより、前記画像に存在する語彙を検出する、
     ことを特徴とする請求項1に記載の文字認識装置。
  4.  前記文字認識手段は、複数の前記候補に対してそれぞれ優先順位を付けて出力し、
     前記第1文字列遷移データ作成手段は、前記優先順位に基づき前記重み値を計算する、
     ことを特徴とする請求項1~3の何れか1項に記載の文字認識装置。
  5.  前記文字認識手段は、少なくとも2種類以上の異なる認識方式を用いて前記文字認識処理を行い、
     前記第1文字列遷移データ作成手段は、前記異なる認識方式における前記候補の出力数および前記優先順位に基づき、前記重み値を計算する、
     ことを特徴とする請求項4に記載の文字認識装置。
  6.  前記第1文字列遷移データ作成手段は、言語データベースに登録されている単語の文字列遷移を加味して、前記重み値を計算する、
     ことを特徴とする請求項1~5の何れか1項に記載の文字認識装置。
  7.  前記第1文字列遷移データ作成手段は、前記候補の前記画像内における位置、または前記候補の文字サイズに基づき、前記重み値を修正する、
     ことを特徴とする請求項1~6の何れか1項に記載の文字認識装置。
  8.  前記文字領域分割手段が、複数の分割パターンを用いて前記文字領域を分割し、複数種類の前記分割領域を生成した場合に、
     前記文字認識手段は、前記複数種類の分割領域それぞれに対して前記文字認識処理を行い、
     前記第1文字列遷移データ作成手段は、前記複数種類の分割領域それぞれにおける前記候補に対して前記第1文字列遷移データを作成し、
     前記有限状態変換手段は、前記複数種類の分割領域を通じて前記累積重み値が上位のものを前記結果として出力する、
     ことを特徴とする請求項1~7の何れか1項に記載の文字認識装置。
  9.  前記第1文字列遷移データ作成手段は、文字列遷移の初期状態から前記候補への空の遷移である第1空遷移と、前記候補から文字列遷移の最終状態への空の遷移である第2空遷移と、前記候補を一文字単位でスキップするための空の遷移である第3空遷移と、を含んで前記第1文字列遷移データを作成する、
     ことを特徴とする請求項1~8の何れか1項に記載の文字認識装置。
  10.  前記文字認識手段は、前記文字認識処理結果の前記候補を出力する際に、単語間の区切りを示す識別情報をともに出力し、
     前記第1文字列遷移データ作成手段は、前記識別情報を付加して、前記第1文字列遷移データを作成し、
     前記有限状態変換手段は、前記状態遷移を行う際に、二つの前記識別情報により区切られた部分を単位として前記状態遷移を行う、
     ことを特徴とする請求項1~9の何れか1項に記載の文字認識装置。
  11.  前記文字認識手段は、前記文字認識処理結果の前記候補を出力する際に、当該候補の前記画像内における位置情報をともに出力し、
     前記第1文字列遷移データ作成手段は、前記位置情報を付加して、前記第1文字列遷移データを作成し、
     前記有限状態変換手段は、前記位置情報を付加して、前記結果を出力する、
     ことを特徴とする請求項1~10の何れか1項に記載の文字認識装置。
  12.  前記語彙データベースは、語彙に対する分類情報を有し、
     前記第2文字列遷移データ作成手段または前記第3文字列遷移データ作成手段は、前記分類情報を付加して、前記第2文字列遷移データまたは前記第3文字列遷移データを作成し、
     前記有限状態変換手段は、前記分類情報を付加して、前記結果を出力する、
     ことを特徴とする請求項2~11の何れか1項に記載の文字認識装置。
  13.  語彙と前記分類情報との関連性を示す語彙分類関連性ベクトルを格納する語彙分類関連性ベクトル格納手段を備え、
     前記第1文字列遷移データ作成手段は、前記第1文字列遷移データにおける前記候補および前記重み値に対して、前記語彙分類関連性ベクトルの値を加算し、最も大きな値となる分類情報を前記候補に対応する分類情報とし、該分類情報を基に当該候補に対する前記重み値を修正する、
     ことを特徴とする請求項12に記載の文字認識装置。
  14.  画像入力手段が、認識対象の文字を含む画像を入力する画像入力ステップと、
     文字領域検出手段が、前記画像における、前記文字が存在する領域である文字領域を検出する文字領域検出ステップと、
     文字領域分割手段が、前記文字領域を一文字単位で分割する文字領域分割ステップと、
     文字認識手段が、前記文字領域分割手段が分割した分割領域に存在する前記文字に対して、一文字ごとの文字認識処理を行い、一文字に付き1つ以上の文字認識処理結果の候補を出力する文字認識ステップと、
     第1文字列遷移データ作成手段が、前記候補を入力し、前記候補への遷移に対する重み値を計算し、前記候補および前記重み値の組に基づく文字列遷移データである第1文字列遷移データを作成する第1文字列遷移データ作成ステップと、
     有限状態変換手段が、前記第1文字列遷移データに基づき状態遷移を順次行い、各状態遷移における重み値を累積して状態遷移ごとの累積重み値を算出し、一つ以上の前記状態遷移の結果を前記累積重み値に基づき出力する有限状態変換ステップと、
     を備えることを特徴とする文字認識方法。
  15.  端末およびサーバを含む文字認識システムであって、
     前記端末は、
     認識対象の文字を含む画像を入力する画像入力手段と、
     前記画像における、前記文字が存在する領域である文字領域を検出する文字領域検出手段と、
     前記文字領域を一文字単位で分割する文字領域分割手段と、
     前記文字領域分割手段が分割した分割領域に存在する前記文字に対して、一文字ごとの文字認識処理を行い、一文字に付き1つ以上の文字認識処理結果の候補を出力する文字認識手段と、
     前記候補を入力し、前記候補への遷移に対する重み値を計算し、前記候補および前記重み値の組に基づく文字列遷移データである第1文字列遷移データを作成する第1文字列遷移データ作成手段と、
     を備え、
     前記サーバは、
     前記第1文字列遷移データに基づき状態遷移を順次行い、各状態遷移における重み値を累積して状態遷移ごとの累積重み値を算出し、一つ以上の前記状態遷移の結果を前記累積重み値に基づき出力する有限状態変換手段と、
     を備えることを特徴とする文字認識システム。
  16.  コンピュータを、
     認識対象の文字を含む画像を入力する画像入力手段と、
     前記画像における、前記文字が存在する領域である文字領域を検出する文字領域検出手段と、
     前記文字領域を一文字単位で分割する文字領域分割手段と、
     前記文字領域分割手段が分割した分割領域に存在する前記文字に対して、一文字ごとの文字認識処理を行い、一文字に付き1つ以上の文字認識処理結果の候補を出力する文字認識手段と、
     前記候補を入力し、前記候補への遷移に対する重み値を計算し、前記候補および前記重み値の組に基づく文字列遷移データである第1文字列遷移データを作成する第1文字列遷移データ作成手段と、
     前記第1文字列遷移データに基づき状態遷移を順次行い、各状態遷移における重み値を累積して状態遷移ごとの累積重み値を算出し、一つ以上の前記状態遷移の結果を前記累積重み値に基づき出力する有限状態変換手段、
     として動作させることを特徴とする文字認識プログラム。   
PCT/JP2012/054660 2011-03-07 2012-02-24 文字認識装置、文字認識方法、文字認識システム、および文字認識プログラム WO2012121033A1 (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
EP12755462.4A EP2685405A4 (en) 2011-03-07 2012-02-24 CHARACTER RECOGNITION DEVICE, CHARACTER RECOGNITION METHOD, CHARACTER RECOGNITION SYSTEM, AND CHARACTER RECOGNITION PROGRAM
KR1020137001670A KR101463499B1 (ko) 2011-03-07 2012-02-24 문자 인식 장치, 문자 인식 방법, 문자 인식 시스템, 및 문자 인식 프로그램
CN201280003349.XA CN103154974B (zh) 2011-03-07 2012-02-24 字符识别装置、字符识别方法以及字符识别系统
US13/808,445 US8965126B2 (en) 2011-03-07 2012-02-24 Character recognition device, character recognition method, character recognition system, and character recognition program

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2011-049173 2011-03-07
JP2011049173A JP5647919B2 (ja) 2011-03-07 2011-03-07 文字認識装置、文字認識方法、文字認識システム、および文字認識プログラム

Publications (1)

Publication Number Publication Date
WO2012121033A1 true WO2012121033A1 (ja) 2012-09-13

Family

ID=46798002

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2012/054660 WO2012121033A1 (ja) 2011-03-07 2012-02-24 文字認識装置、文字認識方法、文字認識システム、および文字認識プログラム

Country Status (6)

Country Link
US (1) US8965126B2 (ja)
EP (1) EP2685405A4 (ja)
JP (1) JP5647919B2 (ja)
KR (1) KR101463499B1 (ja)
CN (1) CN103154974B (ja)
WO (1) WO2012121033A1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107533671A (zh) * 2015-05-11 2018-01-02 株式会社东芝 模式识别装置、模式识别方法以及程序

Families Citing this family (33)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9519641B2 (en) * 2012-09-18 2016-12-13 Abbyy Development Llc Photography recognition translation
JP5312701B1 (ja) 2013-02-08 2013-10-09 三三株式会社 名刺管理サーバ、名刺画像取得装置、名刺管理方法、名刺画像取得方法、およびプログラム
KR20140147587A (ko) * 2013-06-20 2014-12-30 한국전자통신연구원 Wfst를 이용한 음성 끝점 검출 장치 및 방법
WO2015008732A1 (ja) * 2013-07-16 2015-01-22 株式会社湯山製作所 光学文字認識装置
JP6301647B2 (ja) 2013-12-24 2018-03-28 株式会社東芝 探索装置、探索方法およびプログラム
CN106687992B (zh) * 2014-07-10 2021-01-12 赛诺菲-安万特德国有限公司 用于执行光学字符识别的装置和方法
JP6342298B2 (ja) 2014-10-31 2018-06-13 株式会社東芝 文字認識装置、画像表示装置、画像検索装置、文字認識方法およびプログラム
JP6430914B2 (ja) * 2014-12-22 2018-11-28 キヤノンイメージングシステムズ株式会社 画像処理装置および画像処理方法
CN105791124B (zh) * 2014-12-25 2019-04-30 深圳市中兴微电子技术有限公司 报文检测方法及装置
CN104715497A (zh) * 2014-12-30 2015-06-17 上海孩子国科教设备有限公司 数据替换的方法及系统
WO2016181458A1 (ja) * 2015-05-11 2016-11-17 株式会社東芝 認識装置、認識方法およびプログラム
CN104933429B (zh) * 2015-06-01 2019-03-08 深圳市诺比邻科技有限公司 图像中信息提取的方法及装置
US10380166B2 (en) * 2015-06-29 2019-08-13 The Nielson Company (Us), Llc Methods and apparatus to determine tags for media using multiple media features
CN105740760B (zh) * 2016-01-21 2017-03-15 成都索贝数码科技股份有限公司 一种视频字幕ocr识别的自动校正方法
JP6798117B2 (ja) * 2016-03-15 2020-12-09 ヤマハ株式会社 入力支援装置
US10108856B2 (en) 2016-05-13 2018-10-23 Abbyy Development Llc Data entry from series of images of a patterned document
GB2567390B (en) * 2016-09-02 2021-10-06 Hitachi High Tech Corp Method for generating text string dictionary, method for searching text string dictionary, and system for processing text string dictionary
US10438083B1 (en) * 2016-09-27 2019-10-08 Matrox Electronic Systems Ltd. Method and system for processing candidate strings generated by an optical character recognition process
JP6804292B2 (ja) * 2016-12-28 2020-12-23 オムロンヘルスケア株式会社 端末装置
JP6480985B2 (ja) * 2017-07-03 2019-03-13 ファナック株式会社 Ncプログラム変換装置
CN109871843B (zh) * 2017-12-01 2022-04-08 北京搜狗科技发展有限公司 字符识别方法和装置、用于字符识别的装置
JPWO2019159518A1 (ja) * 2018-02-15 2021-01-28 パナソニックIpマネジメント株式会社 加熱調理器および加熱調理システム
CN108536656B (zh) * 2018-03-09 2021-08-24 云知声智能科技股份有限公司 基于wfst的文本正则化方法及系统
KR102094234B1 (ko) * 2018-04-12 2020-03-30 주식회사 푸른기술 지폐 일련번호 인식 장치 및 방법
JP7247472B2 (ja) * 2018-04-19 2023-03-29 富士フイルムビジネスイノベーション株式会社 情報処理装置及びプログラム
CN108830862B (zh) * 2018-06-08 2021-11-30 江南大学 基于图像分割的螃蟹朝向识别方法
CN108846367B (zh) * 2018-06-25 2019-08-30 掌阅科技股份有限公司 生僻字处理方法、计算设备及计算机存储介质
JP6929823B2 (ja) * 2018-11-16 2021-09-01 株式会社東芝 読取システム、読取方法、プログラム、記憶媒体、及び移動体
JP7326753B2 (ja) * 2019-01-24 2023-08-16 富士フイルムビジネスイノベーション株式会社 情報処理装置及びプログラム
IT202000002674A1 (it) * 2020-02-11 2021-08-11 Soffieria Bertolini S P A Metodo per controllare la corretta applicazione di una immagine su di un contenitore cilindrico e relativo apparato di controllo
CN111639646B (zh) * 2020-05-18 2021-04-13 山东大学 一种基于深度学习的试卷手写英文字符识别方法及系统
WO2022070105A1 (en) * 2020-09-29 2022-04-07 Servicenow Canada Inc. Systems and methods for enforcing constraints to predictions
JP2022074466A (ja) * 2020-11-04 2022-05-18 京セラドキュメントソリューションズ株式会社 画像処理装置および画像形成装置

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH03225579A (ja) * 1990-01-31 1991-10-04 Mitsubishi Electric Corp 文字パターン切り出し装置
JP3360030B2 (ja) 1998-08-06 2002-12-24 日本電信電話株式会社 文字認識装置および文字認識方法および文字認識方法をプログラムの形で記録した記録媒体
JP4591353B2 (ja) 2004-01-08 2010-12-01 日本電気株式会社 文字認識装置、移動通信システム、移動端末装置、固定局装置、文字認識方法および文字認識プログラム

Family Cites Families (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5067165A (en) * 1989-04-19 1991-11-19 Ricoh Company, Ltd. Character recognition method
JP3225579B2 (ja) * 1992-02-27 2001-11-05 ソニー株式会社 静電気測定装置
JP3260843B2 (ja) * 1992-08-25 2002-02-25 株式会社リコー 文字認識方法
JPH07168913A (ja) * 1993-12-14 1995-07-04 Chugoku Nippon Denki Software Kk 文字認識システム
JP3230641B2 (ja) 1995-05-08 2001-11-19 シャープ株式会社 文字列検索装置
JP3606401B2 (ja) * 1995-11-30 2005-01-05 富士通株式会社 文書検索装置および方法
US6246794B1 (en) * 1995-12-13 2001-06-12 Hitachi, Ltd. Method of reading characters and method of reading postal addresses
JP3712831B2 (ja) 1997-05-29 2005-11-02 日立オムロンターミナルソリューションズ株式会社 文書理解装置および郵便区分機
US6018735A (en) * 1997-08-22 2000-01-25 Canon Kabushiki Kaisha Non-literal textual search using fuzzy finite-state linear non-deterministic automata
JP3639126B2 (ja) * 1998-01-22 2005-04-20 富士通株式会社 住所認識装置及び住所認識方法
JP3145071B2 (ja) 1998-03-25 2001-03-12 株式会社日立製作所 文字認識方法および装置
JP3974359B2 (ja) * 2000-10-31 2007-09-12 株式会社東芝 オンライン文字認識装置及び方法並びにコンピュータ読み取り可能な記憶媒体及びオンライン文字認識プログラム
JP4006239B2 (ja) * 2002-02-21 2007-11-14 株式会社日立製作所 文書の検索方法および検索システム
US20060008148A1 (en) * 2004-07-06 2006-01-12 Fuji Photo Film Co., Ltd. Character recognition device and method
CN1310181C (zh) * 2004-09-15 2007-04-11 北京中星微电子有限公司 一种带摄像装置移动终端的光符识别处理方法
FR2892847B1 (fr) * 2005-11-03 2007-12-21 St Microelectronics Sa Procede de memorisation de donnees dans un circuit de memoire pour automate de reconnaissance de caracteres de type aho-corasick et citcuit de memorisation correspondant.
JP4658848B2 (ja) * 2006-03-30 2011-03-23 日本電産サンキョー株式会社 文字列認識方法及び文字列認識装置
JP4848221B2 (ja) * 2006-07-31 2011-12-28 富士通株式会社 帳票処理プログラム、該プログラムを記録した記録媒体、帳票処理装置、および帳票処理方法
WO2008132016A1 (en) * 2007-05-01 2008-11-06 International Business Machines Corporation Method and system for approximate string matching
CN101571921B (zh) * 2008-04-28 2012-07-25 富士通株式会社 关键字识别方法和装置
EP2144189A3 (en) * 2008-07-10 2014-03-05 Samsung Electronics Co., Ltd. Method for recognizing and translating characters in camera-based image
JP5807342B2 (ja) * 2011-02-21 2015-11-10 富士ゼロックス株式会社 文字認識装置及びプログラム

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH03225579A (ja) * 1990-01-31 1991-10-04 Mitsubishi Electric Corp 文字パターン切り出し装置
JP3360030B2 (ja) 1998-08-06 2002-12-24 日本電信電話株式会社 文字認識装置および文字認識方法および文字認識方法をプログラムの形で記録した記録媒体
JP4591353B2 (ja) 2004-01-08 2010-12-01 日本電気株式会社 文字認識装置、移動通信システム、移動端末装置、固定局装置、文字認識方法および文字認識プログラム

Non-Patent Citations (6)

* Cited by examiner, † Cited by third party
Title
"A learning-based method to detect and segment text from scene images", JOURNAL OF ZHEJIANG UNIVERSITY - SCIENCE A, vol. 8, no. 4, pages 568 - 574
"A Weighted Finite-State Framework for Correcting Errors in NaturalScene OCR", ICDAR, vol. 2, 2007, pages 889 - 893
"Japanese Character Error Correction using WFSTs", PROCEEDINGS OF THE ANNUAL MEETING OF THE ASSOCIATION FOR NATURAL LANGUAGE PROCESSING, vol. C2-5, 2009, pages 332 - 335
"The image Text Recognition Graph (iTRG", ICME, 2009, pages 266 - 269
GRAHAM NEUBIG ET AL.: "Japanese Character Error Correction using WFSTs", PROCEEDINGS OF THE 15TH ANNUAL MEETING OF THE ASSOCIATION FOR NATURAL LANGUAGE PROCESSING, 2 March 2009 (2009-03-02), pages 332 - 335, XP008171266 *
See also references of EP2685405A4

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107533671A (zh) * 2015-05-11 2018-01-02 株式会社东芝 模式识别装置、模式识别方法以及程序
CN107533671B (zh) * 2015-05-11 2021-02-23 株式会社东芝 模式识别装置、模式识别方法以及记录介质

Also Published As

Publication number Publication date
CN103154974B (zh) 2017-05-24
JP5647919B2 (ja) 2015-01-07
KR20130029430A (ko) 2013-03-22
EP2685405A4 (en) 2015-04-22
JP2012185722A (ja) 2012-09-27
EP2685405A1 (en) 2014-01-15
US8965126B2 (en) 2015-02-24
KR101463499B1 (ko) 2014-12-02
CN103154974A (zh) 2013-06-12
US20130108160A1 (en) 2013-05-02

Similar Documents

Publication Publication Date Title
JP5647919B2 (ja) 文字認識装置、文字認識方法、文字認識システム、および文字認識プログラム
US20210034850A1 (en) System and method of character recognition using fully convolutional neural networks with attention
CN109948615B (zh) 多语言文本检测识别系统
US8176054B2 (en) Retrieving electronic documents by converting them to synthetic text
US8160402B2 (en) Document image processing apparatus
KR100412317B1 (ko) 문자인식/수정방법및장치
RU2757713C1 (ru) Распознавание рукописного текста посредством нейронных сетей
KR101377601B1 (ko) 모바일 카메라를 이용한 자연 영상 다국어 문자 인식과 번역 시스템 및 방법
EP3539052A1 (en) System and method of character recognition using fully convolutional neural networks with attention
JP2013073439A (ja) 文字認識装置及び文字認識方法
CN113205095A (zh) 一种训练模型以及字符检测的方法及装置
Romero et al. Modern vs diplomatic transcripts for historical handwritten text recognition
US8731298B2 (en) Character recognition apparatus, character recognition method, and computer readable medium storing program
JP5942361B2 (ja) 画像処理装置及び画像処理プログラム
Uddin et al. Recognition of printed Urdu ligatures using convolutional neural networks
JP4983526B2 (ja) データ処理装置及びデータ処理プログラム
Ashraf et al. An analysis of optical character recognition (ocr) methods
Sotoodeh et al. A music symbols recognition method using pattern matching along with integrated projection and morphological operation techniques
Chowdhury et al. Implementation of an optical character reader (ocr) for bengali language
Diem et al. Semi-automated document image clustering and retrieval
Chang et al. An image-based automatic Arabic translation system
JP7322468B2 (ja) 情報処理装置、情報処理方法及びプログラム
Gupta et al. C2vnet: A deep learning framework towards comic strip to audio-visual scene synthesis
Shafait Document image analysis with OCRopus
Soheili et al. Sub-word image clustering in Farsi printed books

Legal Events

Date Code Title Description
WWE Wipo information: entry into national phase

Ref document number: 201280003349.X

Country of ref document: CN

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

Ref document number: 12755462

Country of ref document: EP

Kind code of ref document: A1

WWE Wipo information: entry into national phase

Ref document number: 13808445

Country of ref document: US

ENP Entry into the national phase

Ref document number: 20137001670

Country of ref document: KR

Kind code of ref document: A

WWE Wipo information: entry into national phase

Ref document number: 2012755462

Country of ref document: EP

NENP Non-entry into the national phase

Ref country code: DE