WO2017141802A1 - 画像処理装置、文字認識装置、画像処理方法及びプログラム記録媒体 - Google Patents

画像処理装置、文字認識装置、画像処理方法及びプログラム記録媒体 Download PDF

Info

Publication number
WO2017141802A1
WO2017141802A1 PCT/JP2017/004686 JP2017004686W WO2017141802A1 WO 2017141802 A1 WO2017141802 A1 WO 2017141802A1 JP 2017004686 W JP2017004686 W JP 2017004686W WO 2017141802 A1 WO2017141802 A1 WO 2017141802A1
Authority
WO
WIPO (PCT)
Prior art keywords
smoothing
image
unit
character recognition
character
Prior art date
Application number
PCT/JP2017/004686
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 JP2018500069A priority Critical patent/JPWO2017141802A1/ja
Priority to US16/074,340 priority patent/US11341739B2/en
Publication of WO2017141802A1 publication Critical patent/WO2017141802A1/ja

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T5/00Image enhancement or restoration
    • G06T5/70Denoising; Smoothing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T5/00Image enhancement or restoration
    • G06T5/20Image enhancement or restoration using local operators
    • 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/12Detection or correction of errors, e.g. by rescanning the pattern
    • G06V30/133Evaluation of quality of the acquired characters
    • 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/16Image preprocessing
    • G06V30/168Smoothing or thinning of the pattern; Skeletonisation
    • 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

  • This disclosure relates to image processing.
  • image processing particularly image processing for an image captured by an image sensor
  • image capturing conditions are not necessarily constant.
  • the illuminance on the subject may vary from image to image depending on the type of light source and the positional relationship between the light source and the subject.
  • the illuminance may vary depending on the location (that is, the illuminance is uneven).
  • Patent Documents 1 to 3 disclose image processing techniques relating to recognition of characters and the like.
  • Patent Document 1 discloses an industrial character recognition method in which a matching degree between a captured image and a template image is determined by template matching, and one of the captured image and the template image is expanded according to the determination result, and then template matching is executed again. Disclosure.
  • the expansion process described in Patent Document 1 is a process for a binarized image. Such expansion processing simply increases the total number (area) of one pixel of two gradations (for example, white and black).
  • One exemplary purpose of the present disclosure is to provide new image processing that is robust to changes in imaging conditions.
  • An image processing apparatus includes an acquisition unit that acquires an image, a smoothing unit that smoothes the acquired image at a predetermined smoothing level, and a binary image of the smoothed image. Binarizing means for converting the control means and control means for causing the smoothing means to execute smoothing of a plurality of times with different smoothing levels.
  • a character recognition device includes an acquisition unit that acquires an image, a smoothing unit that smoothes the acquired image at a predetermined smoothing level, and a binary image of the smoothed image.
  • the smoothing level of the smoothing means according to the recognition result of the characters by the character recognition means, the character recognition means for recognizing characters included in the binarized image, And control means for executing different smoothing.
  • An image processing apparatus includes an acquisition unit that acquires an image, a smoothing unit that smoothes the acquired image at a predetermined smoothing level, and a binary image of the smoothed image.
  • the binarization means for converting to the smoothing means for ending the operation when a predetermined condition is satisfied, and smoothing with different smoothing levels for the acquired image when the condition is not satisfied
  • control means to be executed.
  • An image processing method acquires an image, smoothes the acquired image at a predetermined smoothing level, binarizes the smoothed image, and performs processing on the acquired image.
  • the smoothing and binarization are executed with different smoothing levels.
  • An image processing method acquires an image, smoothes the acquired image at a predetermined smoothing level, binarizes the smoothed image, and satisfies a predetermined condition. If the condition is not satisfied, the smoothing and binarization of the acquired image are executed again with different smoothing levels.
  • a program recording medium including a process for acquiring an image, a process of smoothing the acquired image at a predetermined smoothing level, and a binary image of the smoothed image. And a program for executing a plurality of smoothing processes having different smoothing levels are recorded in a computer-readable manner.
  • a program recording medium including a process for acquiring an image, a process of smoothing the acquired image at a predetermined smoothing level, and a binary image of the smoothed image. And a process of ending the operation when a predetermined condition is satisfied, and executing a smoothing with a different smoothing level on the acquired image when the condition is not satisfied.
  • a program to be executed is recorded so as to be readable by a computer.
  • FIG. 1 is a block diagram illustrating an example of the configuration of the image processing apparatus.
  • FIG. 2 is a diagram illustrating a filter and its smoothing level.
  • FIG. 3 is a flowchart illustrating an example of the operation of the image processing apparatus.
  • FIG. 4 is a flowchart illustrating another example of the operation of the image processing apparatus.
  • FIG. 5 is a block diagram illustrating an example of the configuration of the character recognition device.
  • FIG. 6 is a flowchart illustrating an example of the operation of the character recognition device.
  • FIG. 7 is a diagram illustrating the relationship between the smoothing level and the result of character recognition.
  • FIG. 8 is a block diagram illustrating an example of the configuration of the communication terminal.
  • FIG. 1 is a block diagram illustrating an example of the configuration of the image processing apparatus.
  • FIG. 2 is a diagram illustrating a filter and its smoothing level.
  • FIG. 3 is a flowchart illustrating an example of the operation of the image processing apparatus.
  • FIG. 9 is a block diagram illustrating an example of a configuration of functions realized by the communication terminal.
  • FIG. 10 is a diagram illustrating an example of data stored in the dictionary.
  • FIG. 11 is a flowchart illustrating an example of the operation of the communication terminal.
  • FIG. 12 is a flowchart showing a specific example of the character recognition process.
  • FIG. 13 is a flowchart illustrating another example of the operation of the communication terminal.
  • FIG. 14 is a block diagram illustrating an example of a hardware configuration of a computer apparatus.
  • FIG. 1 is a block diagram illustrating a configuration of the image processing apparatus 100 according to the first embodiment of the present disclosure.
  • the image processing apparatus 100 includes at least an acquisition unit 110, a smoothing unit 120, a binarization unit 130, and a control unit 140.
  • the image processing apparatus 100 can be realized by a combination of hardware such as a processor and a memory and software such as a program.
  • the acquisition unit 110 acquires an image.
  • the acquisition unit 110 acquires an image by receiving input of digital data or an analog signal representing the image. That is, “acquiring an image” can be said to acquire image data or an image signal.
  • the image acquired by the acquisition unit 110 represents an image captured by an imaging device including, for example, a CMOS (Complementary Metal-Oxide-Semiconductor) image sensor, a CCD (Charge-Coupled Device) image sensor, or the like.
  • CMOS Complementary Metal-Oxide-Semiconductor
  • CCD Charge-Coupled Device
  • the smoothing unit 120 executes a smoothing process on the image.
  • the smoothing unit 120 smoothes the image acquired by the acquisition unit 110 at a predetermined smoothing level.
  • the smoothing level determines the degree of smoothing by the smoothing process.
  • the parameter that determines the smoothing level is also referred to as “smoothing parameter”.
  • Smoothing processing is, for example, filter processing realized by a filter circuit. Specifically, a moving average filter, a weighted average filter, or the like is used for the smoothing process.
  • the smoothing level can be changed by at least one of the filter size and the weighting factor (operator).
  • the size of the filter can be changed by varying one or both of the width and height of the filter.
  • the smoothing unit 120 may be configured by a plurality of filters having different smoothing levels, or may be configured by a single filter configured such that the smoothing level can be changed by the control unit 140.
  • FIG. 2 is a diagram illustrating a filter and its smoothing level.
  • the smoothing level varies depending on the width and height of the filter.
  • the moving average filter is a filter in which the weighting factor of each pixel is the same (“1/9” or “1/25” in FIG. 2).
  • the weighted average filter is a filter in which the weighting coefficient of each pixel is not the same and is weighted with respect to the center.
  • the filter in the present embodiment may be a Gaussian filter whose weighting follows a Gaussian distribution (normal distribution).
  • the sum of the weighting coefficients of the filter may not be 1. Further, the size and width of the filter may not be the same.
  • the smoothing unit 120 may change the smoothing level by changing either the width or the height of the filter.
  • the smoothing parameter may be any of the width, height, size, and weighting factor of the filter, or a combination thereof.
  • Smoothing processing is generally used to remove noise included in an image.
  • the purpose of the smoothing process in the present embodiment is not to remove noise but to blur (make unclear) objects (characters, unevenness, patterns, etc.) included in the image. It can be said that executing a plurality of smoothing processes with different smoothing levels on one image corresponds to obtaining a plurality of types of images with different object blurring from the image.
  • the binarization unit 130 executes binarization processing on the image.
  • the binarization unit 130 binarizes the image smoothed by the smoothing unit 120 based on a threshold value.
  • the threshold value the same value may be used for each pixel constituting the image, but a different value (which may be different) may be used for each pixel.
  • the threshold value may be determined for each local region including pixels around the pixel to be binarized.
  • the control unit 140 controls execution of image processing.
  • the control unit 140 controls the execution of the smoothing process by the smoothing unit 120.
  • the control unit 140 causes the smoothing unit 120 to perform smoothing multiple times with different smoothing levels.
  • the control unit 140 may control execution of the binarization process by the binarization unit 130.
  • the control unit 140 may change the binarization processing method according to the smoothing process executed by the smoothing unit 120.
  • FIG. 3 is a flowchart showing an example of the operation of the image processing apparatus 100.
  • the acquisition unit 110 acquires an image.
  • the smoothing unit 120 performs a smoothing process on the image acquired in step S111 (step S112).
  • the binarization unit 130 executes binarization processing on the image smoothed in step S112 (step S113).
  • the control unit 140 determines whether a predetermined condition is satisfied (step S114).
  • the conditions are determined based on, for example, an image that has been subjected to smoothing processing and binarization processing.
  • the control unit 140 may evaluate the image that has been subjected to the smoothing process and the binarization process according to a predetermined evaluation criterion, and may determine whether a predetermined condition is satisfied according to the evaluation result. Further, the control unit 140 compares the number of connected regions (regions that are pixels having the same gradation as the character and are formed by connecting adjacent pixels) obtained by binarization with a predetermined value. Judgment may be performed.
  • the evaluation itself here may be executed by another component different from the control unit 140. In this case, the control unit 140 may acquire the evaluation result from the other component and execute the determination.
  • step S114: YES If the predetermined condition is satisfied (step S114: YES), the control unit 140 ends the operation without causing the smoothing process and the binarization process to be executed again.
  • step S114: NO the control unit 140 causes the smoothing unit 120 to execute the smoothing process of step S112 again. In this case (that is, the second smoothing process), the control unit 140 sets the smoothing parameter to a value different from the initial value.
  • the control unit 140 sets a smoothing parameter having a value different from any of the previously used values (for the same image).
  • FIG. 4 is a flowchart showing another example of the operation of the image processing apparatus 100.
  • the acquisition unit 110 acquires an image in the same manner as in step S111.
  • the control unit 140 performs a loop process that repeats the smoothing process and the binarization process n times on the image acquired in step S121, and performs the smoothing unit 120 and the binarization unit 130. (Steps S122 and S123).
  • the control unit 140 sets different smoothing levels in each of the n loop processes.
  • the smoothing unit 120 executes a smoothing process according to the set smoothing level. Note that the value of n, that is, the number of loop processes is not particularly limited as long as it is 2 or more.
  • the image processing apparatus 100 may execute the process corresponding to the determination in step S114 after the loop process ends, or may cause the apparatus different from the own apparatus to execute the process.
  • the image processing apparatus 100 may execute a plurality of times of image processing in parallel rather than sequentially. In the case of the example in FIG. 3, the image processing apparatus 100 executes only once without repeating the smoothing process and the binarization process when a predetermined condition is satisfied.
  • the image processing apparatus 100 obtains a plurality of images with different degrees of smoothing from one image by executing a plurality of smoothing processes with different smoothing levels. It is possible. As a result, the image processing apparatus 100 can easily obtain an image with a desired image quality as compared with a case where image processing is executed using only a specific smoothing parameter, and is robust against changes in shooting conditions. Image processing can be realized.
  • FIG. 5 is a block diagram illustrating a configuration of a character recognition device 200 according to the second embodiment of the present disclosure.
  • the character recognition device 200 includes a character recognition unit 210 and a control unit 220 in addition to the acquisition unit 110, the smoothing unit 120, and the binarization unit 130 similar to those in the first embodiment. It can be said that the character recognition device 200 is an image processing device having a character recognition function.
  • the same terms as those described in the first embodiment are used in the same meaning as in the first embodiment unless otherwise defined or explained.
  • subjected has the structure similar to 1st Embodiment at least.
  • the character recognition unit 210 recognizes characters included in the image.
  • the character recognition unit 220 recognizes characters included in the image smoothed by the smoothing unit 120 and binarized by the binarization unit 130.
  • the character recognition unit 210 can use a known character recognition technique for character recognition. A specific method of character recognition by the character recognition unit 210 is not particularly limited here.
  • the control unit 220 controls the execution of image processing in the same manner as the control unit 140 of the first embodiment. However, the control by the control unit 220 is specifically different from the control by the control unit 140.
  • the control unit 220 controls the execution of image processing according to the character recognition result by the character recognition unit 210.
  • FIG. 6 is a flowchart showing an example of the operation of the character recognition device 200.
  • the processing of steps S211 to S213 is the same as the processing of steps S111 to S113 (see FIG. 3) of the first embodiment, and thus description thereof is omitted.
  • the smoothing unit 120 executes the smoothing process at the strongest smoothing level.
  • the control unit 220 causes the smoothing unit 120 to execute a smoothing process having the strongest smoothing level.
  • the “smooth” smoothing level means a smoothing level at which the degree of blurring of the object becomes high (that is, it becomes more blurry).
  • the character recognition unit 210 executes character recognition processing on the image binarized in step S213 (step S214). Specifically, the character recognition unit 210 tries to detect and recognize one or more characters registered in advance from the binarized image. Note that the character recognition unit 210 does not always succeed in recognizing characters, and may fail to recognize characters depending on the subject and image quality.
  • the control unit 220 executes a process according to the character recognition result in step S214. Specifically, the control unit 220 determines whether the character recognition is successful (step S215).
  • the criterion in step S215 (that is, the criterion for determining “success”) is not particularly limited.
  • the control unit 220 may determine that the character recognition is successful when a predetermined number of characters (including 1) can be recognized from the image, and may determine a predetermined character string (a specific number or a specific word). Etc.) may be determined to have been successfully recognized.
  • the control unit 220 may evaluate the character recognition result based on a predetermined evaluation criterion, and may determine that the character recognition is successful when a certain criterion is satisfied.
  • step S215: YES When the character recognition is successful (step S215: YES), the control unit 220 ends the operation without causing the smoothing process, the binarization process, and the character recognition process to be executed again. On the other hand, when character recognition fails (step S215: NO), the control part 220 makes the smoothing part 120 perform the smoothing process of step S212 again.
  • control unit 220 sets a smoothing level different from the previous time. Specifically, the control unit 220 sets a smoothing level that is one step weaker than the previous time. In other words, the control unit 220 causes the smoothing unit 120 to execute the next smoothing process at the strongest smoothing level among the unprocessed smoothing levels.
  • control unit 220 repeats the processes of steps S212 to S215 until the character recognition is successful.
  • control part 220 may perform predetermined processing corresponding to failure in character recognition (namely, error), when character recognition does not succeed even if it uses any of a plurality of smoothing levels.
  • the control unit 220 may output data when the character recognition is successful.
  • the control unit 220 may output data indicating a recognized character (such as a character code) or may output data indicating an image that has been successfully recognized.
  • the control part 220 may perform the process according to the result of character recognition.
  • the character recognition device 200 of this embodiment can repeat image processing according to the result of character recognition.
  • the character recognition device 200 can prevent unnecessary processing from being executed as compared with a case where a character is recognized after executing a predetermined number of times of image processing.
  • the character recognition device 200 can execute the character recognition processing using images in order from a strong smoothing level. Thereby, the character recognition device 200 reduces the possibility that the character is erroneously recognized, and makes it possible to execute character recognition with high accuracy regardless of the shooting conditions.
  • the image that has been subjected to the smoothing process before the binarization process not only blurs the outlines (edges) of the characters but also blurs the above irregularities and patterns.
  • Increasing the level of smoothing increases the possibility that characters will not be recognized, but also increases the possibility that such unevenness and patterns will not be recognized as characters. Therefore, if the smoothing parameter can be set to an appropriate value, characters can be easily recognized correctly, while an image in which unevenness or a pattern is difficult to be mistakenly recognized as a character, that is, an image in which a desired recognition result can be expected. It is done.
  • FIG. 7 is a diagram illustrating the relationship between the smoothing level and the result of character recognition.
  • the smoothing level L 1, L 2, L 3 , L 4, L 5 is, L 1 is the strongest, weakened in the order of L 2, L 3, L 4 , L 5 ( i.e., L 5 is most Weak)
  • the smoothing level is L 4 or L 5
  • the degree of smoothing is weaker than when the smoothing level is L 3. It is mistakenly recognized. Then, in such a case, even if the character recognition is successful, the result of character recognition becomes incorrect by recognizing that even unevenness and patterns are constituent elements of the character.
  • the character recognition apparatus 200 executes the processing of FIG. 6 in the order of strong smoothing level (in the order of L 1 to L 5 ) and in the order of low smoothing level (in order of L 5 to L 1 ). Assuming that the same processing is executed, the following difference in results occurs. That is, in the former case (in order from L 1 to L 5 ), the character recognition device 200 fails in character recognition when L 1 or L 2 is set as the smoothing level, and L 3 is set as the smoothing level. In this stage (ie, the third time), character recognition is successful. On the other hand, in the latter case (in order from L 5 to L 1 ), the character recognition device 200 succeeds in character recognition at the stage where L 5 is set as the smoothing level (that is, the first time). However, in this case, the character recognition device 200 fails to recognize the character “correctly” because the result of the character recognition itself is incorrect.
  • the character recognition device 200 can improve the accuracy of character recognition by executing image processing in order of increasing smoothing level as compared with the case of executing processing in order of increasing smoothing level.
  • the character recognition device 200 can realize image processing that is robust against irregularities and patterns of the display body that may occur irregularly by repeatedly performing character recognition while changing the smoothing level. It is.
  • FIG. 8 is a block diagram illustrating a configuration of a communication terminal 300 according to the third embodiment of the present disclosure.
  • the communication terminal 300 includes a control unit 310, an image processing unit 320, a storage unit 330, a communication unit 340, a UI (User Interface) unit 350, and a camera unit 360.
  • the communication terminal 300 is a mobile communication terminal such as a smartphone or a tablet terminal, but is not necessarily limited to a mobile communication terminal.
  • the communication terminal 300 includes a configuration corresponding to an example of the character recognition device 200 described in the second embodiment.
  • the same terms as those described in the first embodiment or the second embodiment have the same meanings as those in the first embodiment or the second embodiment unless otherwise defined or explained. Used in
  • the control unit 310 controls the operation of each unit of the communication terminal 300.
  • the control unit 310 includes a processor such as a CPU (Central Processing Unit) and a memory corresponding to the main storage device, and controls the operation of each unit of the communication terminal 300 by executing a predetermined program.
  • the control unit 310 may include a plurality of processors that share and execute processing.
  • the image processing unit 320 executes image processing including smoothing processing and binarization processing.
  • the image processing unit 320 includes a processor for image processing such as a GPU (Graphics (Processing Unit). Alternatively, some or all of the functions of the image processing unit 320 may be realized as one function of the control unit 310 by software.
  • the storage unit 330 stores data necessary for execution of processing.
  • the storage unit 330 includes a nonvolatile storage medium such as a flash memory or a hard disk.
  • the storage unit 330 may include a removable storage medium such as a memory card and its reader / writer.
  • the data stored in the storage unit 330 may include data (format information 306, character string database 307, and character recognition dictionary 308) illustrated in FIG. 9 in addition to programs.
  • the communication unit 340 exchanges data with other devices.
  • the communication unit 340 transmits and receives data to and from other devices via a wired or wireless network, for example.
  • the communication unit 340 may communicate directly with another device without going through a network.
  • the UI unit 350 receives input from the user and transmits information to the user.
  • the UI unit 350 may include a display device such as a liquid crystal display, a keypad, a touch screen display, a speaker, a microphone, and the like.
  • the UI unit 350 may include a haptic interface such as a vibrator.
  • the camera unit 360 generates image data.
  • the camera unit 360 includes an optical system member such as a lens and an image sensor, and generates image data representing a photographed subject. Note that the number of pixels and the number of gradations of the image data are not limited to specific numerical values as long as the subject can be recognized.
  • the control unit 310 of the communication terminal 300 can execute a predetermined application program having a character recognition function.
  • This application program is software for optically reading a display body on which characters and the like are written and recognizing the displayed characters.
  • the display body is not particularly limited as long as characters such as stickers, posters, and magazines are written on the display body.
  • the display body is assumed to be a plurality of types of cards.
  • this application program is also referred to as a “character recognition application”.
  • FIG. 9 is a block diagram showing a configuration of functions realized by the character recognition application. Note that the arrows connecting the blocks in FIG. 9 merely show an example of the information flow (direction), and are not intended to limit the information flow to a specific direction.
  • the character recognition application implements functions corresponding to the acquisition unit 301, the identification unit 302, the inclination correction unit 303, the character string selection unit 304, and the character recognition unit 305 in the communication terminal 300.
  • the storage unit 330 stores format information 306, a character string database 307, and a character recognition dictionary 308. These data are generated by executing the character recognition application, received from the outside, or included in the character recognition application.
  • Format information 306 is information indicating a format for each card type.
  • the format information 306 indicates what kind of image each type of card is.
  • the format information 306 is data representing an image obtained by photographing each type of card from a predetermined direction (for example, the front).
  • the “data representing an image” referred to here may be image data itself, or data describing features (feature points, feature amounts, etc.) specified from an image.
  • the format information 306 can include information indicating an area in which character recognition processing is executed in each type of card. An area where characters are written (or an area where characters to be read are written) may be different for each type of card.
  • the format information 306 includes information (such as coordinates) indicating such an area.
  • an area defined by the format information 306 that is, an area where character recognition processing is executed is also referred to as a “clipping area”.
  • a card (driver's license, etc.) on which information specific to the user is written has a common area (background, etc.) regardless of the user, in addition to an area where the appearance may differ for each card on which the information is written. )including.
  • the clipping region is typically configured to include the former region.
  • the character string database 307 stores character string information for defining a character string read from the card for each card type.
  • the character string information represents the number, type, format, etc. of the character string to be read from the card.
  • the character string information may represent the regularity of the character, not the character itself.
  • the character string information may be data in which regularity such as “four-character number” or “uppercase or lowercase alphabet” is described by a regular expression or the like.
  • the character recognition dictionary 308 stores dictionary information representing a plurality of characters to be read.
  • the dictionary information may be image data obtained by binarizing characters, or data representing the characteristic amount of binarized characters.
  • the character recognition dictionary 308 can include dictionary information of one or more typefaces (fonts) for one character.
  • the character represented by the dictionary information may include a standard character and a character obtained by modifying or processing the standard character.
  • the dictionary information may include a plurality of types of data having the same typeface and different smoothing levels for individual characters.
  • the dictionary information may include a plurality of types of data having the same typeface and different inclinations (three-dimensional rotation) for each character. These data may be accumulated in the character recognition dictionary 308 using machine learning.
  • FIG. 10 is a diagram illustrating an example of data stored in the character recognition dictionary 308.
  • the example shown in the figure represents nine types of data in which two types of smoothing and two types of rotation are applied to the character “0”.
  • the data D 11 corresponds to a character serving as a reference for smoothing and rotation.
  • the data D 11 , D 12 and D 13 have the same slope and different smoothing levels.
  • the data D 12 , D 22 and D 32 have the same smoothing level and different slopes.
  • Data D 11 , D 21 , D 31 correspond to unsmoothed characters.
  • the acquisition unit 301 acquires the image data generated by the camera unit 360.
  • the acquisition unit 301 may acquire image data directly from the camera unit 360 or may acquire image data generated by the camera unit 360 and stored in the storage unit 330.
  • the acquisition unit 301 corresponds to an example of the acquisition unit 110 of the first embodiment.
  • the identification unit 302 identifies a subject included in the image data acquired by the acquisition unit 301.
  • the identification unit 302 uses the format information 306 to identify the type of card included in the image represented by the image data. Note that the type of card read by the character recognition application is predetermined.
  • the identification unit 302 has a function of calculating inclination information indicating an inclination from a reference direction (for example, front) of the card image represented by the image data.
  • the inclination information is, for example, a projective transformation matrix (homography matrix) representing projective transformation from one plane to another.
  • An example of the calculation method of the tilt information is described in paragraph 0093 of Patent Document 3 by the same inventor as the present specification.
  • the tilt correction unit 303 corrects the tilt of the image represented by the image data acquired by the acquisition unit 301.
  • the tilt correction unit 303 can correct the tilt of the image using the tilt information calculated by the identification unit 302. Note that the correction here does not only mean that the inclination of the image disappears, but may include closer to the reference direction and relaxation of the inclination (closer to the reference direction than before correction). .
  • the tilt correction unit 303 has a function of extracting (cutting out) a partial region of the image whose tilt is corrected.
  • the inclination correction unit 303 extracts an image of the clipping region using the format information 306 corresponding to the card type identified by the identification unit 302.
  • the character string selection unit 304 selects character string information that defines a character string to be read from the card.
  • the character string information represents the number, type, format, etc. of the character string to be read from the card.
  • the character string selection unit 304 refers to the character string information of the type identified by the identification unit 302 among the character string information stored for each type of card in the character string database 307.
  • the character recognition unit 305 performs a character recognition process on the image extracted after the inclination is corrected by the inclination correction unit 303.
  • the character recognition unit 305 can perform character recognition processing using, for example, a well-known OCR (Optical Character Recognition) technique.
  • OCR Optical Character Recognition
  • the character recognizing unit 305 recognizes characters included in the image of the clipping region using the character string information selected by the character string selecting unit 304 and the dictionary information stored in the character recognition dictionary 308.
  • the character recognition unit 305 corresponds to an example of the smoothing unit 120 and the binarization unit 130 of the first embodiment and the character recognition unit 210 of the second embodiment.
  • FIG. 11 is a flowchart showing processing by the character recognition application.
  • the acquisition unit 301 acquires image data representing a photographed card (step S310). At this time, the acquisition unit 301 may cause the UI unit 350 to display a screen that prompts the user to shoot a card, or may cause the user to select necessary image data from the data stored in the storage unit 330. .
  • the identification unit 302 identifies the type of card represented by the image data acquired in step S310 (step S320). At this time, the identification unit 302 calculates inclination information.
  • the inclination correction unit 303 corrects the inclination of the image represented by the image data acquired in step S310 based on the inclination information (step S330). Further, the inclination correcting unit 303 extracts a clipping region from the corrected image (step S340).
  • the character string selection unit 304 selects character string information corresponding to the type of card identified in step S320 (step S350).
  • the character string selection unit 304 may select character string information of a plurality of character strings for one clipping region. For example, when there are a plurality of character strings that can be represented in a certain clipping region, and the number of characters and the format of the character strings are different, the character string selection unit 304 displays a plurality of characters as character string information corresponding to the clipping region. Column information can be selected. In such a case, the character recognition unit 305 performs the character recognition processing in step S360 for each character string information.
  • steps S330 and S340 and the process of step S350 need not be executed in the order shown. In these processes, the process of step S350 may be executed before the process of step S330, or may be executed in parallel.
  • the character recognition unit 305 performs character recognition processing on the image extracted in step S340 (step S360).
  • the character recognizing unit 305 refers to the character string information selected in step S350 and executes a process according to the type of the card that has been shot.
  • FIG. 12 is a flowchart showing a specific example of the character recognition process in step S360.
  • the character recognition unit 305 executes a process according to the card type (steps S361 to S363) and then executes a common process (steps S364 to S368) regardless of the card type.
  • the character recognition process is not limited to this example.
  • the character recognizing unit 305 may omit steps S361 to S363, and may vary the processes of steps S364 to S368 depending on the card type.
  • the character recognition unit 305 executes binarization processing according to the card type (step S361). For example, the character recognition unit 305 executes binarization processing based on the discriminant analysis method when a certain type of card includes a pattern on the background, and when another type of card does not include the pattern on the background. Then, binarization processing based on the local binarization method is executed.
  • the card pattern is generally lighter in color than letters.
  • the discriminant analysis method is a binarization method in which a threshold value is determined based on a histogram of gradation values indicating the density of an image, and is also referred to as an Otsu's method.
  • the discriminant analysis method uses a common threshold value for the entire image.
  • the local binarization method determines a threshold value for each local region of an image.
  • an average value of gradation values calculated for each local area having a predetermined size is used as a threshold value.
  • the threshold in the local binarization method may be a value obtained by adding a predetermined number to the average value of the gradation values calculated for each local region, or may be a statistic calculated based on the image.
  • step S361 the character recognition unit 305 does not execute the smoothing process when performing the binarization process based on the discriminant analysis method, but performs the binarization process based on the local binarization method. Smoothing processing may be executed. However, the character recognition unit 305 may not execute the smoothing process, and may execute the common smoothing process regardless of the type of the card.
  • the character recognition unit 305 is not limited to the presence / absence (strength) of a pattern, and may change the binarization method according to the presence / absence (strength) of specular reflection on the card surface. For example, in the case of a card with strong specular reflection (the surface is glossy), the character recognition unit 305 executes binarization processing by the local binarization method. On the other hand, in the case of a card with weak specular reflection, the character recognition unit 305 executes binarization processing by a discriminant analysis method.
  • the character recognition unit 305 identifies a character from the image on which the binarization process has been executed (step S362). Specifically, the character recognition unit 305 cuts out individual characters from the clipping region and identifies the characters using character string information and dictionary information. A well-known method in the OCR technique can be applied to the process in step S362.
  • the character recognition unit 305 determines whether or not the character recognition is successful (step S363). Specifically, the character recognition unit 305 determines whether or not the character string is correctly recognized as the entire clipping region based on the identification result in step S362. The character recognition unit 305 may execute this determination using character string information and dictionary information.
  • the character recognition unit 305 uses one of the recognition results of the plurality of character strings corresponding to the plurality of pieces of character string information.
  • the determination in S363 may be executed. For example, the character recognizing unit 305 compares each of the plurality of character strings with certainty and variation in character height, identifies a character string having a high likelihood (likely), and about the identified character string The determination in step S363 may be executed.
  • step S363 If the character recognition unit 305 successfully recognizes the character at this point (step S363: YES), the character recognition unit 305 ends the process without executing the processes after step S364. On the other hand, when the character recognition unit 305 fails to recognize the character (step S363: NO), the character recognition unit 305 executes the processing after step S364.
  • step S364 the character recognition unit 305 sets a smoothing parameter.
  • the character recognition unit 305 sets the smoothing parameter having the strongest smoothing level immediately after step S363.
  • the character recognition unit 305 performs a smoothing process according to the smoothing parameter set in step S364 (step S365), and executes a binarization process on the image smoothed in step S365 (step S366).
  • step S366 the character recognition unit 305 executes binarization processing by the local binarization method.
  • the character recognition unit 305 identifies a character from the image on which the binarization process has been executed (step S367). Then, the character recognition unit 305 determines whether or not the character recognition is successful (step S368).
  • the processes in steps S367 to S368 are the same as the processes in steps S362 to S363.
  • step S368 YES
  • step S368: NO the character recognition unit 305 executes the processing after step S364 again.
  • step S364 the process of step S364 is repeated, the character recognition unit 305 changes the smoothing parameter. Specifically, the character recognition unit 305 changes the smoothing parameter so that the level of smoothing becomes weaker than the previous level.
  • the character recognizing unit 305 may execute a predetermined process when the characters are not successfully recognized even if the processes of steps S364 to S368 are repeated a predetermined number of times.
  • the acquisition unit 301 may cause the UI unit 350 to display a screen that prompts the user to shoot the card again.
  • This screen may include a message that prompts the user to change (improve) the shooting conditions, such as “Please shoot in a brighter place” or “Please shoot with the terminal closer to the card”.
  • the communication terminal 300 it is possible to execute processing according to the type of the card by identifying the type of the card as the subject by the identification unit 302.
  • the communication terminal 300 can improve the accuracy of subsequent processing (tilt correction, character recognition, etc.) as compared with the case where the identification unit 302 is not provided. Further, the communication terminal 300 omits the character recognition process for an unnecessary area (other than the clipping area) by executing the character recognition process on the image included in the clipping area determined according to the card type. It is possible.
  • the communication terminal 300 reduces the possibility that characters are erroneously recognized, and makes it possible to perform character recognition with high accuracy regardless of shooting conditions.
  • the character recognition application is installed in a plurality of communication terminals 300, not only the performance (image quality, resolution, etc.) of the camera unit 360 may be different for each terminal, but also the shooting location and shooting skill vary for each user. It is. Therefore, in such a case, even if each user photographs the same type of card, images photographed under various photographing conditions can be read.
  • the communication terminal 300 can perform highly accurate character recognition even when such an image is to be read.
  • a card to be read may include confidentiality or highly important information such as user personal information. In general, misrecognition should be avoided when dealing with such information.
  • the communication terminal 300 is configured to perform recognition again and repeat the process, so that the possibility of erroneously recognizing a character can be reduced.
  • the present disclosure is not limited to the first to third embodiments described above. This indication may include the form which applied the modification or application which those skilled in the art can grasp.
  • the present disclosure includes the modifications described below.
  • the present disclosure may include a form in which matters described in the present specification are appropriately combined as necessary.
  • the matters described using a specific embodiment can be applied to other embodiments.
  • the communication terminal 300 may record data corresponding to the character recognition result in the storage unit 330. Alternatively, the communication terminal 300 may transmit data corresponding to the character recognition result to the outside (for example, a predetermined server device) via the communication unit 340. For example, the communication terminal 300 may transmit text data representing a recognized character string to the server device, or may transmit image data used for character recognition to the server device.
  • the communication terminal 300 may execute processing according to the type of card. For example, if the card is of a specific type, the communication terminal 300 transmits text data representing the recognized character string to the server device, while if the card is of another type, The image data used for recognition may be transmitted to the server device.
  • the communication terminal 300 may continuously read a plurality of types of cards. In this case, the communication terminal 300 may use the result of character recognition using a certain type of card for character recognition of another type of card.
  • the terminal 300 may collate character strings recognized from both cards.
  • FIG. 13 is a flowchart illustrating an overview of processing according to this modification.
  • the communication terminal 300 acquires first image data representing a first type of card (step S401), and identifies the type of card represented by the first image data (step S402).
  • the communication terminal 300 executes character recognition processing according to the type identified in step S402, and recognizes the character (step S403).
  • the characters recognized in step S403 include specific character strings written on both the first type card and the second type card. It is assumed that this specific character string is written in a predetermined area of the first type card and the second type card.
  • the communication terminal 300 acquires the second image data representing the second type of card (step S404).
  • the communication terminal 300 identifies the type of card as in the case of the first image data (step S405).
  • the communication terminal 300 executes a character recognition process corresponding to the type identified in step S405, and recognizes the character (step S406).
  • the communication terminal 300 compares the specific character string recognized in step S403 with the specific character string recognized in step S406 (step S407). Next, the communication terminal 300 executes processing according to the comparison result of step S407 (step S408).
  • Such processing can be used for identity verification using a plurality of cards, for example.
  • the communication terminal 300 determines that the procedure has been performed by the user (that is, the card has not been illegally acquired by a third party) when the character strings compared in step S407 match.
  • the communication terminal 300 may record data representing the character recognized in step S403 in the character string database 307.
  • the communication terminal 300 may recognize the character using the data recorded in the character string database 307 in this way.
  • the communication terminal 300 may accept the setting of the clipping area from the user.
  • the user can set a clipping region by selecting a desired region on the card via the UI unit 350.
  • the character recognition unit 305 may refer to a lexicon when recognizing a character string.
  • the vocabulary means a character string given in advance as a recognized character string candidate.
  • the character recognizing unit 305 can suppress a decrease in character recognition accuracy even when image quality is deteriorated due to shooting conditions or smoothing processing.
  • the recognized character string includes the user's year of birth and “19XX (where X is an arbitrary number)” is given as the vocabulary.
  • the character recognizing unit 305 specifies a character candidate that can correspond to the character written at each position, and calculates a numerical value (reliability) given to the candidate.
  • the character recognizing unit 305 identifies “7” and “1” as the thousandth character candidates, and the reliability of “7” is higher than the reliability of “1”.
  • the character recognition unit 305 recognizes the thousandth character as “7” (that is, erroneous recognition).
  • the character recognition unit 305 can determine that there is a high possibility that the thousandth character is “1”. In this case, the character recognition unit 305 recognizes the thousandth character as “1” instead of “7” having the highest reliability.
  • the character recognizing unit 305 is the character even if the reliability of the character is not the highest if the reliability of the character satisfies a certain condition. Recognize.
  • the character recognition unit 305 can also exclude the character from the recognition result when the recognized character string includes a character that cannot be recognized. For example, when a character other than a number is recognized in a region where a number is to be recognized (as in the above-mentioned year of birth), the character recognition unit 305 excludes the character from the recognition result.
  • the character recognition unit 305 may execute different image processing for each clipping region when a plurality of clipping regions are set for one card. Alternatively, the character recognition unit 305 may execute different image processing for each character when a plurality of characters are included in the clipping region. For example, the character recognizing unit 305 may perform smoothing processing by setting different smoothing parameters for each clipping region, or may perform binarization processing by a different method for each clipping region.
  • the communication terminal 300 may have a configuration that does not have a part of the configuration shown in FIGS.
  • the communication terminal 300 can be configured not to include the identification unit 302.
  • the communication terminal 300 may specify the type of card by user input (operation).
  • the communication terminal 300 may be configured not to include the inclination correction unit 303 and the character string selection unit 304.
  • the object (subject) to be read is not particularly limited.
  • the object to be read need not be a card.
  • the present disclosure is also applicable to recognition of objects other than characters.
  • each device may be realized using software, and may be configured to share various processes using a plurality of hardware.
  • FIG. 14 is a block diagram illustrating an example of a hardware configuration of a computer apparatus 400 that implements each apparatus.
  • the computer device 400 includes a CPU (Central Processing Unit) 401, a ROM (Read Only Memory) 402, a RAM (Random Access Memory) 403, a storage device 404, a drive device 405, a communication interface 406, and an input / output interface. 407.
  • CPU Central Processing Unit
  • ROM Read Only Memory
  • RAM Random Access Memory
  • the CPU 401 executes the program 408 using the RAM 403.
  • the program 408 may be stored in the ROM 402.
  • the program 408 may be recorded on a recording medium 409 such as a memory card and read by the drive device 405, or may be transmitted from an external device via the network 410.
  • the communication interface 406 exchanges data with an external device via the network 410.
  • the input / output interface 407 exchanges data with peripheral devices (such as an input device and a display device).
  • the communication interface 406 and the input / output interface 407 can function as means for acquiring or outputting data.
  • each apparatus may be comprised by the single circuit (processor etc.) and may be comprised by the combination of a some circuit.
  • the circuit here may be either dedicated or general purpose.
  • the configuration described as a single device in the above-described embodiment may be distributed among a plurality of devices.
  • the image processing device 100 or the character recognition device 200 may be realized by a plurality of computer devices using cloud computing technology or the like.
  • the communication terminal 300 may be configured such that part of the processing illustrated in FIG. 11 is executed by the server device.
  • Appendix A part or all of the above-described embodiment can be described as in the following supplementary notes, but is not limited thereto.
  • Appendix 1 An acquisition means for acquiring an image; Smoothing means for smoothing the acquired image at a predetermined smoothing level; Binarization means for binarizing the smoothed image;
  • An image processing apparatus comprising: a control unit that causes the smoothing unit to execute a plurality of times of smoothing with different smoothing levels.
  • Appendix 2 The image processing apparatus according to claim 1, wherein the control unit causes the smoothing unit to perform the multiple times of smoothing in descending order of the smoothing level.
  • a character recognition apparatus comprising: control means for causing the smoothing means to perform smoothing with different smoothing levels in accordance with a character recognition result by the character recognition means.
  • (Appendix 10) Comprising identification means for identifying the type of subject included in the image, The character recognition device according to claim 8 or 9, wherein the binarization means binarizes the smoothed image by a method according to the identified type.
  • Image processing device An acquisition means for acquiring an image; Smoothing means for smoothing the acquired image at a predetermined smoothing level; Binarization means for binarizing the smoothed image; Control means for terminating the operation when a predetermined condition is satisfied, and causing the smoothing means to perform smoothing with different smoothing levels for the acquired image when the condition is not satisfied.

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Multimedia (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Quality & Reliability (AREA)
  • Character Input (AREA)
  • Character Discrimination (AREA)

Abstract

撮影条件の変化に対して頑健な、新規な画像処理を提供する。画像処理装置100は、画像を取得する取得部110と、取得された画像を、所定の平滑化レベルで平滑化する平滑化部120と、平滑化された画像を二値化する二値化部130と、平滑化120に平滑化レベルが異なる複数回の平滑化を実行させる制御部140とを有する。

Description

画像処理装置、文字認識装置、画像処理方法及びプログラム記録媒体
 本開示は、画像処理に関する。
 画像処理、特にイメージセンサによって撮影された画像に対する画像処理においては、画像の撮影条件(照度、フォーカス等)が必ずしも一定しない。例えば、被写体に対する照度は、被写体が同一であっても、光源の種類や光源と被写体の位置関係によって画像毎に異なり得る。また、(1つの画像に含まれる)1つの被写体においても、照度が場所によって異なる(すなわち、照度にムラがある)場合がある。
 特許文献1~3は、文字等の認識に関する画像処理技術を開示している。例えば、特許文献1は、テンプレートマッチングにより撮影画像とテンプレート画像の一致度を判断し、判断結果に応じて撮影画像とテンプレート画像の一方を膨張させてからテンプレートマッチングを再度実行する工業文字認識方法を開示している。
特開平11-282960号公報 特開2010-123090号公報 国際公開第2015/064107号
 特許文献1に記載された膨張処理は、二値化された画像に対する処理である。このような膨張処理は、単に、2つの階調(例えば白と黒)のうちの一方の画素の総数(面積)を大きくするだけである。
 本開示の例示的な目的の一つは、撮影条件の変化に対して頑健な、新規な画像処理を提供することである。
 本開示の一態様に係る画像処理装置は、画像を取得する取得手段と、前記取得された画像を、所定の平滑化レベルで平滑化する平滑化手段と、前記平滑化された画像を二値化する二値化手段と、前記平滑化手段に前記平滑化レベルが異なる複数回の平滑化を実行させる制御手段とを有する。
 本開示の一態様に係る文字認識装置は、画像を取得する取得手段と、前記取得された画像を、所定の平滑化レベルで平滑化する平滑化手段と、前記平滑化された画像を二値化する二値化手段と、前記二値化された画像に含まれる文字を認識する文字認識手段と、前記文字認識手段による文字の認識結果に応じて、前記平滑化手段に前記平滑化レベルが異なる平滑化を実行させる制御手段とを有する。
 本開示の一態様に係る画像処理装置は、画像を取得する取得手段と、前記取得された画像を、所定の平滑化レベルで平滑化する平滑化手段と、前記平滑化された画像を二値化する二値化手段と、所定の条件が満たされた場合に、動作を終了し、当該条件が満たされない場合に、前記取得された画像に対する前記平滑化レベルが異なる平滑化を前記平滑化手段に実行させる制御手段とを有する。
 本開示の一態様に係る画像処理方法は、画像を取得し、前記取得された画像を、所定の平滑化レベルで平滑化し、前記平滑化された画像を二値化し、前記取得された画像に対する前記平滑化及び前記二値化を、前記平滑化レベルを異ならせて実行する。
 本開示の一態様に係る画像処理方法は、画像を取得し、前記取得された画像を、所定の平滑化レベルで平滑化し、前記平滑化された画像を二値化し、所定の条件が満たされた場合に、動作を終了し、当該条件が満たされない場合に、前記取得された画像に対する前記平滑化及び前記二値化を、前記平滑化レベルを異ならせて再度実行する。
 本開示の一態様に係るプログラム記録媒体は、コンピュータに、画像を取得する処理と、前記取得された画像を、所定の平滑化レベルで平滑化する処理と、前記平滑化された画像を二値化する処理と、前記平滑化レベルが異なる複数回の平滑化を実行させる処理とを実行させるためのプログラムをコンピュータ読み取り可能に記録する。
 本開示の一態様に係るプログラム記録媒体は、コンピュータに、画像を取得する処理と、前記取得された画像を、所定の平滑化レベルで平滑化する処理と、前記平滑化された画像を二値化する処理と、所定の条件が満たされた場合に、動作を終了し、当該条件が満たされない場合に、前記取得された画像に対して前記平滑化レベルが異なる平滑化を実行させる処理とを実行させるためのプログラムをコンピュータ読み取り可能に記録する。
 本開示によれば、撮影条件の変化に対して頑健な画像処理が提供される。
図1は、画像処理装置の構成の一例を示すブロック図である。 図2は、フィルタ及びその平滑化レベルを例示する図である。 図3は、画像処理装置の動作の一例を示すフローチャートである。 図4は、画像処理装置の動作の別の例を示すフローチャートである。 図5は、文字認識装置の構成の一例を示すブロック図である。 図6は、文字認識装置の動作の一例を示すフローチャートである。 図7は、平滑化レベルと文字認識の結果の関係を例示する図である。 図8は、通信端末の構成の一例を示すブロック図である。 図9は、通信端末によって実現される機能の構成の一例を示すブロック図である。 図10は、辞書に記憶されるデータの一例を示す図である。 図11は、通信端末の動作の一例を示すフローチャートである。 図12は、文字認識処理の具体例を示すフローチャートである。 図13は、通信端末の動作の別の例を示すフローチャートである。 図14は、コンピュータ装置のハードウェア構成の一例を示すブロック図である。
 [第1実施形態]
 図1は、本開示の第1の実施形態に係る画像処理装置100の構成を示すブロック図である。画像処理装置100は、取得部110と、平滑化部120と、二値化部130と、制御部140とを少なくとも有する。画像処理装置100は、プロセッサ、メモリ等のハードウェアと、プログラム等のソフトウェアの組み合わせによって実現され得る。
 取得部110は、画像を取得する。例えば、取得部110は、画像を表すデジタルデータ又はアナログ信号の入力を受け付けることによって画像を取得する。すなわち、「画像を取得する」とは、画像データ又は画像信号を取得すると換言することができる。取得部110により取得される画像は、例えば、CMOS(Complementary Metal-Oxide-Semiconductor)イメージセンサ、CCD(Charge Coupled Device)イメージセンサ等を含む撮影デバイスによって撮影された画像を表す。
 平滑化部120は、画像に対して平滑化処理を実行する。平滑化部120は、取得部110により取得された画像を所定の平滑化レベルで平滑化する。平滑化レベルは、平滑化処理による平滑化の程度を定める。以下においては、平滑化レベルを定めるパラメータのことを「平滑化パラメータ」ともいう。
 平滑化処理は、例えば、フィルタ回路によって実現されるフィルタ処理である。具体的には、移動平均フィルタ、加重平均フィルタなどが平滑化処理に用いられる。この場合、平滑化レベルは、フィルタのサイズ及び重み係数(オペレータ)の少なくともいずれかによって変化させることができる。フィルタのサイズは、フィルタの幅及び高さの一方又は双方を異ならせることで変えることができる。平滑化部120は、平滑化レベルが異なる複数のフィルタによって構成されてもよく、制御部140によって平滑化レベルが変更できるように構成された1つのフィルタによって構成されてもよい。
 図2は、フィルタ及びその平滑化レベルを例示する図である。この例は、平滑化レベルがフィルタの幅及び高さによって変化する場合の例である。移動平均フィルタは、各画素の重み係数が同一(図2では「1/9」又は「1/25」)のフィルタである。一方、加重平均フィルタは、各画素の重み係数が同一でなく、中央に対して重み付けされたフィルタである。本実施形態におけるフィルタは、この重み付けがガウス分布(正規分布)に従うガウシアンフィルタであってもよい。
 なお、本実施形態において、フィルタの重み係数の総和は、1でなくてもよい。また、フィルタのサイズは、幅と高さが同一でなくてもよい。平滑化部120は、フィルタの幅と高さのいずれか一方を変更することによって平滑化レベルを変化させてもよい。平滑化パラメータは、フィルタの幅、高さ、サイズ及び重み係数のいずれであってもよく、これらの組み合わせであってもよい。
 平滑化処理は、一般に、画像に含まれるノイズの除去に用いられる。しかし、本実施形態における平滑化処理の目的は、ノイズの除去というよりも、むしろ、画像に含まれるオブジェクト(文字、ムラ、模様等)をぼやけさせる(不鮮明にする)ことにある。平滑化レベルが異なる複数回の平滑化処理を1つの画像に対して実行することは、当該画像からオブジェクトの不鮮明さが異なる複数種類の画像を得ることに相当するといえる。
 二値化部130は、画像に対して二値化処理を実行する。二値化部130は、平滑化部120により平滑化された画像を閾値に基づいて二値化する。ここでいう閾値は、画像を構成する各画素について同じ値が用いられてもよいが、画素毎に異なる(異なり得る)値が用いられてもよい。例えば、閾値は、二値化対象の画素の周辺の画素を含む局所領域毎に決められてもよい。
 制御部140は、画像処理の実行を制御する。制御部140は、平滑化部120による平滑化処理の実行を制御する。例えば、制御部140は、平滑化レベルが異なる複数回の平滑化を平滑化部120に実行させる。また、制御部140は、二値化部130による二値化処理の実行を制御してもよい。例えば、制御部140は、平滑化部120により実行される平滑化処理に応じて二値化処理の方法を異ならせてもよい。
 図3は、画像処理装置100の動作の一例を示すフローチャートである。ステップS111において、取得部110は、画像を取得する。取得部110が画像を取得すると、平滑化部120は、ステップS111において取得された画像に対して平滑化処理を実行する(ステップS112)。二値化部130は、ステップS112において平滑化された画像に対して二値化処理を実行する(ステップS113)。
 二値化処理が実行されると、制御部140は、所定の条件が満たされたかを判断する(ステップS114)。ここにおける条件は、例えば、平滑化処理及び二値化処理が実行された画像に基づいて決められる。制御部140は、平滑化処理及び二値化処理が実行された画像を所定の評価基準に従って評価し、その評価結果に応じて所定の条件が満たされたか否かを判断してもよい。また、制御部140は、二値化して得られた連結領域(文字と同じ階調の画素であって、互いに隣り合う画素を連結してなる領域)の数を所定の値と比較することによる判断を実行してもよい。あるいは、ここでいう評価自体は、制御部140と異なる別の構成要素によって実行されてもよい。この場合、制御部140は、当該別の構成要素から評価結果を取得して判断を実行すればよい。
 所定の条件が満たされた場合(ステップS114:YES)、制御部140は、平滑化処理及び二値化処理を再度実行させることなく動作を終了する。一方、所定の条件が満たされない場合(ステップS114:NO)、制御部140は、平滑化部120にステップS112の平滑化処理を再度実行させる。この場合(すなわち2回目の平滑化処理)において、制御部140は、平滑化パラメータを初回の値と異なる値にする。また、制御部140は、平滑化処理を3回以上繰り返す場合には、(同一の画像に対して)以前に用いられた値のいずれとも異なる値の平滑化パラメータを設定する。
 図4は、画像処理装置100の動作の別の例を示すフローチャートである。ステップS121において、取得部110は、ステップS111と同様に画像を取得する。取得部110が画像を取得すると、制御部140は、ステップS121において取得された画像に対して平滑化処理と二値化処理をn回繰り返すループ処理を、平滑化部120及び二値化部130に実行させる(ステップS122、S123)。制御部140は、n回のループ処理のそれぞれにおいて、互いに異なる平滑化レベルを設定する。平滑化部120は、設定された平滑化レベルに従って平滑化処理を実行する。なお、nの値、すなわちループ処理の回数は、2以上であれば特に限定されない。また、この例において、画像処理装置100は、ステップS114の判断に相当する処理をループ処理の終了後に実行してもよく、自装置とは別の装置に実行させてもよい。
 なお、画像処理装置100は、複数回の画像処理を順次実行するのではなく、並行して実行してもよい。また、図3の例の場合、画像処理装置100は、所定の条件が満たされれば、平滑化処理及び二値化処理を繰り返すことなく、1回のみ実行する。
 以上に説明されたように、本実施形態の画像処理装置100は、平滑化レベルが異なる複数回の平滑化処理を実行することにより、1つの画像から平滑化の程度が異なる複数の画像を得ることが可能である。これにより、画像処理装置100は、特定の平滑化パラメータのみを用いて画像処理を実行する場合に比べて所望の画質の画像を得やすくなるため、撮影条件の変化に対して頑健(ロバスト)な画像処理を実現することが可能である。
 [第2実施形態]
 図5は、本開示の第2の実施形態に係る文字認識装置200の構成を示すブロック図である。文字認識装置200は、第1実施形態と同様の取得部110、平滑化部120及び二値化部130に加え、文字認識部210と制御部220とを有する。文字認識装置200は、文字認識機能を有する画像処理装置であるともいえる。
 なお、本実施形態において、第1実施形態に記載された用語と同一の用語は、特に定義又は説明がある場合を除き、第1実施形態と同様の意味で用いられる。また、第1実施形態と同一の符号を付された構成要素は、第1実施形態と同様の構成を少なくとも有する。
 文字認識部210は、画像に含まれる文字を認識する。文字認識部220は、平滑化部120により平滑化され、二値化部130により二値化された画像に含まれる文字を認識する。文字認識部210は、文字認識に周知の文字認識技術を用いることができる。文字認識部210による文字認識の具体的な手法は、ここでは特に限定されない。
 制御部220は、第1実施形態の制御部140と同様に、画像処理の実行を制御する。ただし、制御部220による制御は、具体的には、制御部140による制御と異なる部分がある。制御部220は、文字認識部210による文字の認識結果に応じて画像処理の実行を制御する。
 図6は、文字認識装置200の動作の一例を示すフローチャートである。なお、ステップS211~S213の処理は、第1実施形態のステップS111~S113の処理(図3参照)と同様であるため、説明が省略される。ただし、ステップS212において、平滑化部120は、最も強い平滑化レベルで平滑化処理を実行する。換言すれば、制御部220は、このとき、平滑化レベルが最も強い平滑化処理を平滑化部120に実行させる。ここにおいて、平滑化レベルが「強い」とは、オブジェクトの不鮮明さの度合いが高くなる(すなわち、より不鮮明になる)平滑化レベルであることを意味する。
 文字認識部210は、ステップS213において二値化された画像に対して文字認識処理を実行する(ステップS214)。具体的には、文字認識部210は、二値化された画像から、あらかじめ登録された1又は複数の文字の検出及び認識を試行する。なお、文字認識部210は、文字の認識に常に成功するとは限らず、被写体や画質によっては文字の認識に失敗する場合もある。
 文字認識処理が実行されると、制御部220は、ステップS214における文字の認識結果に応じた処理を実行する。具体的には、制御部220は、文字認識が成功したかを判断する(ステップS215)。ステップS215における判断基準(すなわち、「成功」と判断する基準)は、特に限定されない。例えば、制御部220は、画像から(1を含む)所定数の文字が認識できた場合に文字認識が成功したと判断してもよく、あらかじめ決められた文字列(特定の数字、特定の単語等)が認識できた場合に文字認識が成功したと判断してもよい。あるいは、制御部220は、文字の認識結果を所定の評価基準に基づいて評価し、一定の基準を満たした場合に文字認識が成功したと判断してもよい。
 文字認識が成功した場合(ステップS215:YES)、制御部220は、平滑化処理、二値化処理及び文字認識処理を再度実行させることなく動作を終了する。一方、文字認識が失敗した場合(ステップS215:NO)、制御部220は、平滑化部120にステップS212の平滑化処理を再度実行させる。
 この場合において、制御部220は、前回と異なる平滑化レベルを設定する。具体的には、制御部220は、前回よりも1段階弱い平滑化レベルを設定する。換言すれば、制御部220は、未処理の平滑化レベルのうちの最も強い平滑化レベルで平滑化部120に次の平滑化処理を実行させる。
 制御部220は、文字認識が成功するまでステップS212~S215の処理を繰り返す。あるいは、制御部220は、複数の平滑化レベルのいずれを用いても文字認識が成功しない場合には、文字認識に失敗したこと(すなわちエラー)に対応する所定の処理を実行してもよい。
 制御部220は、文字認識が成功した場合、データを出力してもよい。例えば、制御部220は、認識された文字を示すデータ(文字コード等)を出力してもよく、文字認識が成功した画像を示すデータを出力してもよい。あるいは、制御部220は、文字認識の結果に応じた処理を実行してもよい。
 以上に説明されたように、本実施形態の文字認識装置200は、文字認識の結果に応じて画像処理を繰り返すことが可能である。これにより、文字認識装置200は、所定回数の画像処理を実行してから文字を認識する場合に比べ、不要な処理を実行しないようにすることが可能である。また、文字認識装置200は、平滑化レベルが強い画像から順に用いて文字認識処理を実行することが可能である。これにより、文字認識装置200は、文字が誤認識される可能性を減らし、撮影条件によらず精度が高い文字認識を実行することを可能にする。
 例えば、文字を含む表示体(カード、印刷物等)が撮影される場合において、その表示体に照射される光に照度のムラがあると、二値化処理後の文字認識によって画像中のムラが文字(の一部又は全部)であると誤認識される可能性がある。同様に、文字を含む表示体が撮影される場合において、その表示体が文字でない模様を背景に含んでいると、二値化処理後の文字認識によって画像中の模様が文字であると誤認識される可能性がある。このような誤認識は、特に、二値化処理として局所二値化処理を用いた場合に顕著である。
 二値化処理の前に平滑化処理を実行した画像は、文字の輪郭(エッジ)がぼやけるだけでなく、上記のようなムラや模様もぼやける。平滑化のレベルを強めると、文字が認識されなくなる可能性が増すが、同時に、このようなムラや模様が文字と認識されなくなる可能性も増す。したがって、平滑化パラメータを適当な値に設定できれば、文字は正しく認識されやすくなる一方で、ムラや模様が文字であると誤って認識されにくくなる画像、すなわち、望ましい認識結果が期待できる画像が得られる。
 図7は、平滑化レベルと文字認識の結果の関係を例示する図である。ここにおいて、平滑化レベルL1、L2、L3、L4、L5は、L1が最も強く、L2、L3、L4、L5の順に弱くなる(すなわち、L5が最も弱い)ものとする。
 この例において、平滑化レベルがL1又はL2である場合、画像中の文字が判別できない程度にぼやけるため、文字認識は失敗する。一方、平滑化レベルがL3、L4又はL5である場合、平滑化レベルがL1又はL2である場合に比べ文字が鮮明に(すなわちエッジがシャープに)なるため、文字認識は成功する。
 しかし、平滑化レベルがL4又はL5である場合、平滑化レベルがL3である場合よりも平滑化の程度が弱いため、ムラや模様が十分にぼやけずに文字の構成要素であると誤って認識される。そうすると、このような場合、文字認識が成功したとしても、ムラや模様までもが文字の構成要素であると認識されることにより、文字認識の結果は正しくなくなる。
 ここで、文字認識装置200が、平滑化レベルが強い順(L1からL5の順)に図6の処理を実行する場合と平滑化レベルが弱い順(L5からL1の順)に同処理を実行する場合とを仮定すると、以下のような結果の相違が生じる。すなわち、前者(L1からL5の順)の場合、文字認識装置200は、平滑化レベルとしてL1又はL2が設定された段階では文字認識に失敗し、平滑化レベルとしてL3が設定された段階(すなわち3回目)で文字認識に成功する。これに対し、後者(L5からL1の順)の場合、文字認識装置200は、平滑化レベルとしてL5が設定された段階(すなわち初回)で文字認識に成功する。しかし、この場合、文字認識装置200は、文字認識の結果自体は誤りであるため、文字を“正しく”認識することには失敗している。
 以上より、文字認識装置200は、平滑化レベルが強い順に画像処理を実行することによって、平滑化レベルが弱い順に処理を実行する場合に比べ、文字認識の精度を高めることが可能である。また、文字認識装置200は、平滑化レベルを変化させながら文字認識を繰り返し実行することにより、不規則的に発生し得る表示体のムラや模様に対して頑健な画像処理を実現することが可能である。
 [第3実施形態]
 図8は、本開示の第3の実施形態に係る通信端末300の構成を示すブロック図である。通信端末300は、制御部310と、画像処理部320と、記憶部330と、通信部340と、UI(User Interface)部350と、カメラ部360とを有する。通信端末300は、例えば、スマートフォン、タブレット端末等の移動通信端末であるが、必ずしも移動通信端末に限定されない。
 通信端末300は、第2実施形態に記載された文字認識装置200の一例に相当する構成を含んでいる。また、本実施形態において、第1実施形態又は第2実施形態に記載された用語と同一の用語は、特に定義又は説明がある場合を除き、第1実施形態又は第2実施形態と同様の意味で用いられる。
 制御部310は、通信端末300の各部の動作を制御する。制御部310は、CPU(Central Processing Unit)等のプロセッサと、主記憶装置に相当するメモリとを有し、所定のプログラムを実行することによって通信端末300の各部の動作を制御する。なお、制御部310は、処理を分担して実行する複数のプロセッサを有してもよい。
 画像処理部320は、平滑化処理及び二値化処理を含む画像処理を実行する。画像処理部320は、例えば、GPU(Graphics Processing Unit)等の画像処理用のプロセッサを有する。あるいは、画像処理部320の一部又は全部の機能は、ソフトウェアによって、制御部310の一機能として実現されてもよい。
 記憶部330は、処理の実行に必要なデータを記憶する。記憶部330は、フラッシュメモリ、ハードディスク等の不揮発性の記憶媒体を含んで構成される。また、記憶部330は、メモリカード等の着脱可能な記憶媒体とそのリーダライタを含んでもよい。記憶部330に記憶されるデータは、プログラムのほか、図9に例示されるデータ(フォーマット情報306、文字列データベース307及び文字認識辞書308)を含み得る。
 通信部340は、他の装置とデータを授受する。通信部340は、例えば、有線又は無線のネットワークを介して他の装置との間でデータを送受信する。あるいは、通信部340は、ネットワークを介さずに、他の装置と直接通信してもよい。
 UI部350は、ユーザによる入力を受け付け、ユーザに情報を伝達する。UI部350は、液晶ディスプレイ等の表示装置、キーパッド、タッチスクリーンディスプレイ、スピーカ、マイクロホンなどを含み得る。UI部350は、バイブレータ等のハプティック(触覚)インタフェースを含んでもよい。
 カメラ部360は、画像データを生成する。カメラ部360は、レンズ等の光学系部材とイメージセンサとを有し、撮影された被写体を表す画像データを生成する。なお、画像データの画素数や階調数は、被写体を認識可能であれば、特定の数値に限定されない。
 通信端末300の制御部310は、文字認識機能を有する所定のアプリケーションプログラムを実行可能である。このアプリケーションプログラムは、文字等が表記された表示体を光学的に読み取り、表示された文字を認識するためのソフトウェアである。表示体は、ステッカー、ポスター、雑誌など、文字が表記されたものであれば特に限定されないが、本実施形態においては複数種類のカードであるとする。以下においては、説明の便宜上、このアプリケーションプログラムのことを「文字認識アプリ」ともいう。
 図9は、文字認識アプリによって実現される機能の構成を示すブロック図である。なお、図9のブロック間を結ぶ矢印は、情報の流れ(方向)の一例を示すにすぎず、情報の流れを特定の方向に限定することを意図しない。
 文字認識アプリは、取得部301、識別部302、傾き補正部303、文字列選択部304及び文字認識部305に相当する機能を通信端末300に実現する。また、記憶部330は、フォーマット情報306、文字列データベース307及び文字認識辞書308を記憶する。これらのデータは、文字認識アプリを実行することによって生成され、又は外部から受信されるか、あるいは文字認識アプリに含まれている。
 フォーマット情報306は、カードの種別毎のフォーマットを示す情報である。フォーマット情報306は、それぞれの種別のカードがどのような画像であるかを示している。例えば、フォーマット情報306は、それぞれの種別のカードを所定の向き(例えば正面)から撮影した画像を表すデータである。なお、ここでいう「画像を表すデータ」とは、画像データそのものであってもよいが、画像から特定される特徴(特徴点、特徴量等)を記述したデータであってもよい。
 また、フォーマット情報306は、それぞれの種別のカードにおいて文字認識処理が実行される領域を示す情報を含むことができる。文字が表記されている領域(又は、読み取るべき文字が表記されている領域)は、カードの種別毎に異なり得る。フォーマット情報306は、このような領域を示す情報(座標等)を含む。以下においては、フォーマット情報306により定められる領域(すなわち、文字認識処理が実行される領域)のことを「クリッピング領域」ともいう。
 一般に、ユーザに固有の情報が表記されているカード(運転免許証等)は、当該情報が表記されているカード毎に外観が異なり得る領域のほかに、ユーザによらず共通の領域(背景等)を含む。クリッピング領域は、典型的には、前者の領域を含んで構成されている。
 文字列データベース307は、カードから読み取られる文字列を定める文字列情報をカードの種別毎に記憶する。文字列情報は、カードから読み取られるべき文字列の文字数、種類、書式などを表す。文字列情報は、文字そのものではなく、文字の規則性を表してもよい。例えば、文字列情報は、「4文字の数字」、「大文字又は小文字のアルファベット」といった規則性を正規表現などによって記述したデータであってもよい。
 文字認識辞書308は、読取対象である複数の文字を表す辞書情報を記憶する。辞書情報は、文字を二値化した画像データであってもよく、二値化された文字の特徴量を表すデータであってもよい。文字認識辞書308は、1つの文字について、1又は複数の書体(フォント)の辞書情報を含むことができる。
 辞書情報が表す文字は、基準形の文字と、基準形の文字を変形又は加工した文字とを含んでもよい。例えば、辞書情報は、個々の文字について、同一の書体であって平滑化レベルが異なる複数種類のデータを含んでもよい。また、辞書情報は、個々の文字について、同一の書体であって傾き(3次元的な回転)が異なる複数種類のデータを含んでもよい。これらのデータは、機械学習を用いて文字認識辞書308に蓄積されてもよい。
 図10は、文字認識辞書308に記憶されるデータの一例を示す図である。同図に示される例は、文字「0」について2通りの平滑化と2通りの回転を適用した9種類のデータを表す。ここにおいて、データD11は、平滑化及び回転の基準となる文字に相当する。この例において、データD11、D12、D13は、傾きが同じで平滑化レベルが異なる。また、データD12、D22、D32は、平滑化レベルが同じで傾きが異なる。データD11、D21、D31は、平滑化されていない文字に相当する。
 取得部301は、カメラ部360により生成された画像データを取得する。取得部301は、カメラ部360から画像データを直接取得してもよく、カメラ部360により生成された後に記憶部330に記憶された画像データを取得してもよい。取得部301は、第1実施形態の取得部110の一例に相当する。
 識別部302は、取得部301により取得された画像データに含まれる被写体を識別する。本実施形態において、識別部302は、フォーマット情報306を用いて、画像データが表す画像に含まれるカードの種別を識別する。なお、文字認識アプリによって読み取られるカードの種別は、あらかじめ決められている。
 識別部302は、画像データが表すカードの画像の基準の向き(例えば正面)からの傾きを示す傾き情報を算出する機能を有する。傾き情報は、例えば、ある平面から別の平面への射影変換を表す射影変換行列(ホモグラフィ行列)である。傾き情報の算出方法の一例は、本明細書と同一の発明者による特許文献3の段落0093に記載されている。
 傾き補正部303は、取得部301により取得された画像データが表す画像の傾きを補正する。傾き補正部303は、識別部302により算出された傾き情報を用いて、画像の傾きを補正することができる。なお、ここでいう補正とは、画像の傾きがなくなることのみを意味するものではなく、基準の向きにより近付き、傾きが緩和されること(補正前よりも基準の向きに近付くこと)を含み得る。
 また、傾き補正部303は、傾きが補正された画像の一部の領域を抽出する(切り出す)機能を有する。傾き補正部303は、識別部302により識別されたカードの種別に対応するフォーマット情報306を用いて、クリッピング領域の画像を抽出する。
 文字列選択部304は、カードから読み取られる文字列を定める文字列情報を選択する。文字列情報は、カードから読み取られるべき文字列の文字数、種類、書式などを表す。文字列選択部304は、文字列データベース307にカードの種別毎に記憶された文字列情報のうち、識別部302により識別された種別の文字列情報を参照する。
 文字認識部305は、傾き補正部303により傾きが補正されて抽出された画像に対して文字認識処理を実行する。文字認識部305は、例えば、周知のOCR(Optical Character Recognition)技術を用いて文字認識処理を実行することができる。文字認識部305は、文字列選択部304により選択された文字列情報と文字認識辞書308に記憶された辞書情報とを用いて、クリッピング領域の画像に含まれる文字を認識する。文字認識部305は、第1実施形態の平滑化部120及び二値化部130と、第2実施形態の文字認識部210の一例に相当する。
 図11は、文字認識アプリによる処理を示すフローチャートである。取得部301は、撮影されたカードを表す画像データを取得する(ステップS310)。このとき、取得部301は、ユーザにカードの撮影を促す画面をUI部350に表示させてもよく、記憶部330に記憶されたデータの中から必要な画像データをユーザに選択させてもよい。
 識別部302は、ステップS310において取得された画像データが表すカードの種別を識別する(ステップS320)。また、このとき識別部302は、傾き情報を算出する。傾き補正部303は、ステップS310において取得された画像データが表す画像の傾きを傾き情報に基づいて補正する(ステップS330)。また、傾き補正部303は、補正後の画像からクリッピング領域を抽出する(ステップS340)。また、文字列選択部304は、ステップS320において識別されたカードの種別に応じた文字列情報を選択する(ステップS350)。
 なお、文字列選択部304は、1つのクリッピング領域に関して複数の文字列の文字列情報を選択してもよい。例えば、あるクリッピング領域に表記され得る文字列が複数あり、当該複数の文字列の文字数や書式が異なる場合には、文字列選択部304は、当該クリッピング領域に対応する文字列情報として複数の文字列情報を選択することができる。このような場合、文字認識部305は、305は、ステップS360の文字認識処理をそれぞれの文字列情報について実行する。
 なお、ステップS330、S340の処理と、ステップS350の処理とは、図示された順番で実行されなくてもよい。これらの処理は、ステップS350の処理がステップS330の処理よりも先に実行されてもよく、並行して実行されてもよい。
 文字認識部305は、ステップS340において抽出された画像に対して文字認識処理を実行する(ステップS360)。文字認識部305は、ステップS350において選択された文字列情報を参照し、撮影されたカードの種別に応じた処理を実行する。
 図12は、ステップS360の文字認識処理の具体例を示すフローチャートである。この例において、文字認識部305は、カードの種別に応じた処理(ステップS361~S363)を実行してから、カードの種別によらず共通の処理(ステップS364~S368)を実行する。ただし、文字認識処理は、この例に限定されない。例えば、文字認識部305は、ステップS361~S363を省略してもよく、ステップS364~S368の処理をカードの種別に応じて異ならせてもよい。
 文字認識部305は、まず、カードの種別に応じた二値化処理を実行する(ステップS361)。例えば、文字認識部305は、ある種別のカードが下地に模様を含む場合には、判別分析法に基づく二値化処理を実行し、別の種別のカードが下地に模様を含まない場合には、局所二値化法に基づく二値化処理を実行する。なお、カードの模様は、一般に、文字よりも色が薄い。
 判別分析法は、画像の濃淡を示す階調値のヒストグラムに基づいて閾値を決定する二値化の方法であり、大津の方法(Otsu's method)ともいう。判別分析法は、画像全体に共通の閾値を用いる。これに対し、局所二値化法は、画像の局所領域毎に閾値を決定する。局所二値化法は、例えば、所定サイズの局所領域毎に算出された階調値の平均値を閾値として用いる。局所二値化法における閾値は、局所領域毎に算出された階調値の平均値に所定の数を加算した値でもよく、画像に基づいて計算される統計量であってもよい。
 ステップS361において、文字認識部305は、判別分析法に基づく二値化処理を実行する場合には平滑化処理を実行せず、局所二値化法に基づく二値化処理を実行する場合には平滑化処理を実行してもよい。ただし、文字認識部305は、平滑化処理を実行しなくてもよく、カードの種別によらず共通の平滑化処理を実行してもよい。
 なお、文字認識部305は、模様の有無(強弱)に限らず、カード表面の鏡面反射の有無(強弱)に応じて二値化の方法を異ならせてもよい。例えば、鏡面反射が強い(表面に光沢がある)カードの場合、文字認識部305は、局所二値化法による二値化処理を実行する。一方、鏡面反射が弱いカードの場合、文字認識部305は、判別分析法による二値化処理を実行する。
 文字認識部305は、二値化処理が実行された画像から文字を識別する(ステップS362)。具体的には、文字認識部305は、クリッピング領域から個々の文字を切り出し、文字列情報及び辞書情報を用いて文字を識別する。ステップS362の処理は、OCR技術における周知の方法が適用可能である。
 ここで、文字認識部305は、文字の認識に成功したか否かを判断する(ステップS363)。具体的には、文字認識部305は、ステップS362における識別結果に基づき、クリッピング領域全体として文字列が正しく認識されたか否かを判断する。文字認識部305は、文字列情報及び辞書情報を用いてこの判断を実行してもよい。
 なお、1つのクリッピング領域に対して複数の文字列情報が選択されている場合、文字認識部305は、当該複数の文字列情報に対応する複数の文字列の認識結果のいずれかを用いてステップS363の判断を実行してもよい。例えば、文字認識部305は、複数の文字列のそれぞれの確からしさや文字の高さのばらつきなどを比較し、尤度が高い(尤もらしい)文字列を特定し、当該特定された文字列についてステップS363の判断を実行してもよい。
 文字認識部305は、この時点で文字の認識に成功した場合には(ステップS363:YES)、ステップS364以降の処理を実行せずに処理を終了する。一方、文字認識部305は、文字の認識に失敗した場合には(ステップS363:NO)、ステップS364以降の処理を実行する。
 ステップS364において、文字認識部305は、平滑化パラメータを設定する。文字認識部305は、ステップS363の直後においては、平滑化のレベルが最も強い平滑化パラメータを設定する。文字認識部305は、ステップS364において設定された平滑化パラメータに従って平滑化処理を実行し(ステップS365)、ステップS365において平滑化された画像に対して二値化処理を実行する(ステップS366)。ステップS366において、文字認識部305は、局所二値化法による二値化処理を実行する。
 文字認識部305は、二値化処理が実行された画像から文字を識別する(ステップS367)。そして、文字認識部305は、文字の認識に成功したか否かを判断する(ステップS368)。ステップS367~S368の処理は、ステップS362~S363の処理と同様の処理である。
 文字認識部305は、文字の認識に成功した場合には(ステップS368:YES)、この時点で処理を終了する。一方、文字認識部305は、文字の認識に失敗した場合には(ステップS368:NO)、ステップS364以降の処理を再度実行する。文字認識部305は、ステップS364の処理を繰り返す場合には、平滑化パラメータを変更する。具体的には、文字認識部305は、平滑化のレベルが前回よりも弱くなるように平滑化パラメータを変更する。
 文字認識部305は、ステップS364~S368の処理を所定の回数繰り返しても文字の認識に成功しない場合には、所定の処理を実行してもよい。例えば、取得部301は、この場合、ユーザにカードの再度の撮影を促す画面をUI部350に表示させてもよい。この画面は、「もっと明るい場所で撮影してください」、「端末をカードにもっと近付けて撮影してください」等の撮影条件の変更(改善)を促すメッセージを含んでもよい。
 以上に説明されたように、通信端末300によれば、被写体であるカードの種別を識別部302によって識別することにより、カードの種別に応じた処理を実行することが可能である。通信端末300は、識別部302を有しない場合に比べ、後段の処理(傾きの補正、文字認識等)の精度を高めることが可能である。また、通信端末300は、カードの種別に応じて決められたクリッピング領域に含まれる画像に対して文字認識処理を実行することにより、(クリッピング領域以外の)不要な領域に対する文字認識処理を省略することが可能である。
 また、通信端末300は、第2実施形態の文字認識装置200と同様に、文字が誤認識される可能性を減らし、撮影条件によらず精度が高い文字認識を実行することを可能にする。例えば、文字認識アプリが複数の通信端末300にインストールされる場合には、端末毎にカメラ部360の性能(画質、解像度等)が異なり得るだけでなく、ユーザ毎に撮影場所や撮影スキルもまちまちである。したがって、このような場合には、各ユーザが同種のカードを撮影したとしても、さまざまな撮影条件で撮影された画像が読取対象となり得る。通信端末300は、このような画像を読取対象とする場合であっても、高精度な文字認識を実行することが可能である。
 本実施形態において読取対象となるカードは、ユーザの個人情報のような秘匿性又は重要性が高い情報を含む可能性がある。このような情報を取り扱う場合、一般に、誤認識は避けるべきである。通信端末300は、文字を誤認識するよりも、むしろ、認識に失敗して処理をやり直すように構成されているため、文字を誤認識する可能性を低くすることが可能である。
 [変形例]
 本開示は、上述された第1実施形態~第3実施形態に限定されない。本開示は、当業者が把握し得る変形又は応用を適用した形態を含み得る。例えば、本開示は、以下に記載される変形例を含む。また、本開示は、本明細書に記載された事項を必要に応じて適宜に組み合わせた形態を含み得る。例えば、特定の実施形態を用いて説明された事項は、他の実施形態に対しても適用され得る。
 (変形例1)
 通信端末300は、文字の認識結果に応じたデータを記憶部330に記録してもよい。あるいは、通信端末300は、文字の認識結果に応じたデータを、通信部340を介して外部(例えば、所定のサーバ装置)に送信してもよい。例えば、通信端末300は、認識された文字列を表すテキストデータをサーバ装置に送信してもよく、文字の認識に用いた画像データをサーバ装置に送信してもよい。
 データを記録又は送信する場合において、通信端末300は、カードの種別に応じた処理を実行してもよい。例えば、通信端末300は、カードが特定の種別であった場合には、認識された文字列を表すテキストデータをサーバ装置に送信する一方、カードが別の種別であった場合には、文字の認識に用いた画像データをサーバ装置に送信してもよい。
 (変形例2)
 通信端末300は、複数種別のカードを連続的に読み取ってもよい。この場合において、通信端末300は、ある種別のカードを用いた文字認識の結果を別の種別のカードの文字認識に用いてもよい。
 例えば、第1の種別のカードと第2の種別のカードが読取対象である場合において、いずれのカードにも共通の情報(例えば、ユーザの氏名や生年月日)が表記されているとき、通信端末300は、双方のカードから認識された文字列を照合してもよい。
 図13は、本変形例に係る処理の概要を例示するフローチャートである。この例において、通信端末300は、第1の種別のカードを表す第1の画像データを取得し(ステップS401)、第1の画像データが表すカードの種別を識別する(ステップS402)。通信端末300は、ステップS402において識別された種別に応じた文字認識処理を実行し、文字を認識する(ステップS403)。
 なお、ステップS403において認識される文字には、第1の種別のカード及び第2の種別のカードの双方に表記されている特定の文字列が含まれるものとする。この特定の文字列は、第1の種別のカード及び第2の種別のカードの所定の領域に表記されているものとする。
 ここで、通信端末300は、第2の種別のカードを表す第2の画像データを取得する(ステップS404)。通信端末300は、第1の画像データの場合と同様に、カードの種別を識別する(ステップS405)。通信端末300は、ステップS405において識別された種別に応じた文字認識処理を実行し、文字を認識する(ステップS406)。
 通信端末300は、ステップS403において認識された特定の文字列と、ステップS406において認識された特定の文字列とを比較する(ステップS407)。次いで、通信端末300は、ステップS407の比較結果に応じた処理を実行する(ステップS408)。
 このような処理は、例えば、複数のカードを用いた本人確認に用いることができる。この場合、通信端末300は、ステップS407において比較した文字列が一致した場合に、ユーザによって手続が行われた(すなわち、第三者が不正に取得したカードではない)と判断する。
 この例において、通信端末300は、ステップS403において認識された文字を表すデータを文字列データベース307に記録してもよい。通信端末300は、ステップS406において、このようにして文字列データベース307に記録されたデータを用いて文字を認識してもよい。
 (変形例3)
 通信端末300は、クリッピング領域の設定をユーザから受け付けてもよい。この場合、ユーザは、UI部350を介してカード上の所望の領域を選択することにより、クリッピング領域を設定することができる。
 (変形例4)
 文字認識部305は、文字列の認識に際して語彙(lexicon)を参照してもよい。ここにおいて、語彙とは、認識される文字列の候補としてあらかじめ与えられる文字列をいう。文字認識部305は、語彙を参照することで、撮影条件や平滑化処理に起因する画質の低下が生じた場合においても、文字の認識精度の低下を抑制することが可能である。
 一例として、認識される文字列にユーザの生年が含まれ、語彙として「19XX(ただし、Xは任意の数字)」が与えられる場合を想定する。この場合において、文字認識部305は、それぞれの位置に表記されている文字に該当し得る文字の候補を特定するとともに、当該候補に対して与えられる数値(信頼度)を算出するものとする。
 例えば、文字認識部305は、千の位の文字の候補として「7」及び「1」を特定し、「7」の信頼度が「1」の信頼度よりも高かったとする。この場合、文字認識部305は、語彙を参照しなかったとすると、千の位の文字を「7」であると認識(すなわち誤認識)する。一方、語彙を参照すると、文字認識部305は、千の位の文字は「1」である可能性が高いと判断することができる。この場合、文字認識部305は、千の位の文字を、信頼度が最も高い「7」ではなく、「1」であると認識する。つまり、文字認識部305は、語彙によって特定の文字が示唆される場合において、当該文字の信頼度が一定の条件を満たしていれば、当該文字の信頼度が最上位でなくとも当該文字であると認識する。
 なお、文字認識部305は、語彙に基づき、認識された文字列に認識され得ない文字が含まれている場合に、認識結果から当該文字を除外することも可能である。例えば、文字認識部305は、(上記の生年のように)数字が認識されるべき領域において数字以外の文字が認識された場合には、当該文字を認識結果から除外する。
 (変形例5)
 文字認識部305は、1つのカードに対して複数のクリッピング領域が設定されている場合に、クリッピング領域毎に異なる画像処理を実行してもよい。あるいは、文字認識部305は、クリッピング領域に複数の文字が含まれる場合に、文字毎に異なる画像処理を実行してもよい。例えば、文字認識部305は、クリッピング領域毎に異なる平滑化パラメータを設定して平滑化処理を実行してもよく、クリッピング領域毎に異なる方法で二値化処理を実行してもよい。
 (変形例6)
 通信端末300は、図8、図9に示された構成の一部を有しない構成であってもよい。例えば、通信端末300は、識別部302を有しない構成とすることも可能である。この場合、通信端末300は、ユーザの入力(操作)によってカードの種別を特定してもよい。また、通信端末300は、傾き補正部303や文字列選択部304を有しない構成であってもよい。
 (変形例7)
 本開示において、読取対象の物体(被写体)は、特に限定されない。読取対象の物体は、カードでなくてもよい。また、本開示は、文字以外の物体の認識にも適用可能である。
 (変形例8)
 本開示に係る各装置(画像処理装置100、文字認識装置200及び通信端末300)の具体的なハードウェア構成は、さまざまなバリエーションが考えられ、特定の構成に限定されない。例えば、各装置は、ソフトウェアを用いて実現されてもよく、複数のハードウェアを用いて各種処理を分担するように構成されてもよい。
 図14は、各装置を実現するコンピュータ装置400のハードウェア構成の一例を示すブロック図である。コンピュータ装置400は、CPU(Central Processing Unit)401と、ROM(Read Only Memory)402と、RAM(Random Access Memory)403と、記憶装置404と、ドライブ装置405と、通信インタフェース406と、入出力インタフェース407とを備える。本開示に係る各装置は、図14に示される構成(又はその一部)によって実現され得る。
 CPU401は、RAM403を用いてプログラム408を実行する。プログラム408は、ROM402に記憶されていてもよい。また、プログラム408は、メモリカード等の記録媒体409に記録され、ドライブ装置405によって読み出されてもよいし、外部装置からネットワーク410を介して送信されてもよい。通信インタフェース406は、ネットワーク410を介して外部装置とデータをやり取りする。入出力インタフェース407は、周辺機器(入力装置、表示装置など)とデータをやり取りする。通信インタフェース406及び入出力インタフェース407は、データを取得又は出力する手段として機能することができる。
 なお、各装置の構成要素は、単一の回路(プロセッサ等)によって構成されてもよいし、複数の回路の組み合わせによって構成されてもよい。ここでいう回路(circuitry)は、専用又は汎用のいずれであってもよい。
 上述された実施形態において単体の装置として説明された構成は、複数の装置に分散して設けられてもよい。例えば、画像処理装置100又は文字認識装置200は、クラウドコンピューティング技術などを用いて、複数のコンピュータ装置によって実現されてもよい。また、通信端末300は、図11に示される処理の一部がサーバ装置で実行されるように構成されてもよい。
 [付記]
 上記の実施形態の一部又は全部は、以下の付記のようにも記載されうるが、以下には限られない。
(付記1)
 画像を取得する取得手段と、
 前記取得された画像を、所定の平滑化レベルで平滑化する平滑化手段と、
 前記平滑化された画像を二値化する二値化手段と、
 前記平滑化手段に前記平滑化レベルが異なる複数回の平滑化を実行させる制御手段と
 を有する画像処理装置。
(付記2)
 前記制御手段は、前記複数回の平滑化を前記平滑化レベルが強い順に前記平滑化手段に実行させる
 付記1に記載の画像処理装置。
(付記3)
 前記制御手段は、所定の条件が満たされるまで、前記平滑化手段に前記平滑化を繰り返し実行させる
 付記2に記載の画像処理装置。
(付記4)
 前記所定の条件は、前記平滑化手段により平滑化され、前記二値化手段により二値化された画像に対する文字認識の結果に関する条件を含む
 付記3に記載の画像処理装置。
(付記5)
 前記二値化手段は、前記平滑化された画像を当該画像の局所領域毎に決められる閾値を用いて二値化する
 付記1から付記4までのいずれかに記載の画像処理装置。
(付記6)
 前記平滑化手段は、前記平滑化レベルに応じてフィルタのサイズ及び重み係数の少なくともいずれかが異なるフィルタ処理を実行する
 付記1から付記5までのいずれかに記載の画像処理装置。
(付記7)
 前記平滑化手段は、前記フィルタ処理を移動平均フィルタ又は加重平均フィルタを用いて実行する
 付記6に記載の画像処理装置。
(付記8)
 画像を取得する取得手段と、
 前記取得された画像を、所定の平滑化レベルで平滑化する平滑化手段と、
 前記平滑化された画像を二値化する二値化手段と、
 前記二値化された画像に含まれる文字を認識する文字認識手段と、
 前記文字認識手段による文字の認識結果に応じて、前記平滑化手段に前記平滑化レベルが異なる平滑化を実行させる制御手段と
 を有する文字認識装置。
(付記9)
 前記文字認識手段は、基準となる文字に対して前記平滑化レベルが異なる平滑化が実行された複数の文字を表す情報を含む辞書を参照して文字を認識する
 付記8に記載の文字認識装置。
(付記10)
 前記画像に含まれる被写体の種別を識別する識別手段を備え、
 前記二値化手段は、前記識別された種別に応じた方法で前記平滑化された画像を二値化する
 付記8又は付記9に記載の文字認識装置。
(付記11)
 画像を取得する取得手段と、
 前記取得された画像を、所定の平滑化レベルで平滑化する平滑化手段と、
 前記平滑化された画像を二値化する二値化手段と、
 所定の条件が満たされた場合に、動作を終了し、当該条件が満たされない場合に、前記取得された画像に対する前記平滑化レベルが異なる平滑化を前記平滑化手段に実行させる制御手段と
 を有する画像処理装置。
(付記12)
 画像を取得し、
 前記取得された画像を、所定の平滑化レベルで平滑化し、
 前記平滑化された画像を二値化し、
 前記取得された画像に対する前記平滑化及び前記二値化を、前記平滑化レベルを異ならせて実行する
 画像処理方法。
(付記13)
 画像を取得し、
 前記取得された画像を、所定の平滑化レベルで平滑化し、
 前記平滑化された画像を二値化し、
 所定の条件が満たされた場合に、動作を終了し、当該条件が満たされない場合に、前記取得された画像に対する前記平滑化及び前記二値化を、前記平滑化レベルを異ならせて再度実行する
 画像処理方法。
(付記14)
 コンピュータに、
 画像を取得する処理と、
 前記取得された画像を、所定の平滑化レベルで平滑化する処理と、
 前記平滑化された画像を二値化する処理と、
 前記平滑化レベルが異なる複数回の平滑化を実行させる処理と
 を実行させるためのプログラムを記録したコンピュータ読取可能なプログラム記録媒体。
(付記15)
 コンピュータに、
 画像を取得する処理と、
 前記取得された画像を、所定の平滑化レベルで平滑化する処理と、
 前記平滑化された画像を二値化する処理と、
 所定の条件が満たされた場合に、動作を終了し、当該条件が満たされない場合に、前記取得された画像に対して前記平滑化レベルが異なる平滑化を実行させる処理と
 を実行させるためのプログラムを記録したコンピュータ読取可能なプログラム記録媒体。
 この出願は、2016年2月15日に出願された日本出願特願2016-025905を基礎とする優先権を主張し、その開示の全てをここに取り込む。
 100  画像処理装置
 110  取得部
 120  平滑化部
 130  二値化部
 140  制御部
 200  文字認識装置
 210  文字認識部
 220  制御部
 300  通信端末
 310  制御部
 320  画像処理部
 330  記憶部
 340  通信部
 350  UI部
 360  カメラ部
 301  取得部
 302  識別部
 303  傾き補正部
 304  文字列選択部
 305  文字認識部
 306  フォーマット情報
 307  文字列データベース
 308  文字認識辞書

Claims (15)

  1.  画像を取得する取得手段と、
     前記取得された画像を、所定の平滑化レベルで平滑化する平滑化手段と、
     前記平滑化された画像を二値化する二値化手段と、
     前記平滑化手段に前記平滑化レベルが異なる複数回の平滑化を実行させる制御手段と
     を有する画像処理装置。
  2.  前記制御手段は、前記複数回の平滑化を前記平滑化レベルが強い順に前記平滑化手段に実行させる
     請求項1に記載の画像処理装置。
  3.  前記制御手段は、所定の条件が満たされるまで、前記平滑化手段に前記平滑化を繰り返し実行させる
     請求項2に記載の画像処理装置。
  4.  前記所定の条件は、前記平滑化手段により平滑化され、前記二値化手段により二値化された画像に対する文字認識の結果に関する条件を含む
     請求項3に記載の画像処理装置。
  5.  前記二値化手段は、前記平滑化された画像を当該画像の局所領域毎に決められる閾値を用いて二値化する
     請求項1から請求項4までのいずれか1項に記載の画像処理装置。
  6.  前記平滑化手段は、前記平滑化レベルに応じてフィルタのサイズ及び重み係数の少なくともいずれかが異なるフィルタ処理を実行する
     請求項1から請求項5までのいずれか1項に記載の画像処理装置。
  7.  前記平滑化手段は、前記フィルタ処理を移動平均フィルタ又は加重平均フィルタを用いて実行する
     請求項6に記載の画像処理装置。
  8.  画像を取得する取得手段と、
     前記取得された画像を、所定の平滑化レベルで平滑化する平滑化手段と、
     前記平滑化された画像を二値化する二値化手段と、
     前記二値化された画像に含まれる文字を認識する文字認識手段と、
     前記文字認識手段による文字の認識結果に応じて、前記平滑化手段に前記平滑化レベルが異なる平滑化を実行させる制御手段と
     を有する文字認識装置。
  9.  前記文字認識手段は、基準となる文字に対して前記平滑化レベルが異なる平滑化が実行された複数の文字を表す情報を含む辞書を参照して文字を認識する
     請求項8に記載の文字認識装置。
  10.  前記画像に含まれる被写体の種別を識別する識別手段を備え、
     前記二値化手段は、前記識別された種別に応じた方法で前記平滑化された画像を二値化する
     請求項8又は請求項9に記載の文字認識装置。
  11.  画像を取得する取得手段と、
     前記取得された画像を、所定の平滑化レベルで平滑化する平滑化手段と、
     前記平滑化された画像を二値化する二値化手段と、
     所定の条件が満たされた場合に、動作を終了し、当該条件が満たされない場合に、前記取得された画像に対する前記平滑化レベルが異なる平滑化を前記平滑化手段に実行させる制御手段と
     を有する画像処理装置。
  12.  画像を取得し、
     前記取得された画像を、所定の平滑化レベルで平滑化し、
     前記平滑化された画像を二値化し、
     前記取得された画像に対する前記平滑化及び前記二値化を、前記平滑化レベルを異ならせて実行する
     画像処理方法。
  13.  画像を取得し、
     前記取得された画像を、所定の平滑化レベルで平滑化し、
     前記平滑化された画像を二値化し、
     所定の条件が満たされた場合に、動作を終了し、当該条件が満たされない場合に、前記取得された画像に対する前記平滑化及び前記二値化を、前記平滑化レベルを異ならせて再度実行する
     画像処理方法。
  14.  コンピュータに、
     画像を取得する処理と、
     前記取得された画像を、所定の平滑化レベルで平滑化する処理と、
     前記平滑化された画像を二値化する処理と、
     前記平滑化レベルが異なる複数回の平滑化を実行させる処理と
     を実行させるためのプログラムを記録したコンピュータ読取可能なプログラム記録媒体。
  15.  コンピュータに、
     画像を取得する処理と、
     前記取得された画像を、所定の平滑化レベルで平滑化する処理と、
     前記平滑化された画像を二値化する処理と、
     所定の条件が満たされた場合に、動作を終了し、当該条件が満たされない場合に、前記取得された画像に対して前記平滑化レベルが異なる平滑化を実行させる処理と
     を実行させるためのプログラムを記録したコンピュータ読取可能なプログラム記録媒体。
PCT/JP2017/004686 2016-02-15 2017-02-09 画像処理装置、文字認識装置、画像処理方法及びプログラム記録媒体 WO2017141802A1 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2018500069A JPWO2017141802A1 (ja) 2016-02-15 2017-02-09 画像処理装置、文字認識装置、画像処理方法及びプログラム記録媒体
US16/074,340 US11341739B2 (en) 2016-02-15 2017-02-09 Image processing device, image processing method, and program recording medium

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2016025905 2016-02-15
JP2016-025905 2016-02-15

Publications (1)

Publication Number Publication Date
WO2017141802A1 true WO2017141802A1 (ja) 2017-08-24

Family

ID=59624989

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2017/004686 WO2017141802A1 (ja) 2016-02-15 2017-02-09 画像処理装置、文字認識装置、画像処理方法及びプログラム記録媒体

Country Status (3)

Country Link
US (1) US11341739B2 (ja)
JP (1) JPWO2017141802A1 (ja)
WO (1) WO2017141802A1 (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2020040012A1 (ja) * 2018-08-23 2020-02-27 大日本印刷株式会社 特定装置、特定システム、特定方法、生成方法、コンピュータプログラム及び学習モデル
JP7452060B2 (ja) 2020-02-12 2024-03-19 富士フイルムビジネスイノベーション株式会社 情報処理装置及びプログラム
JP7452059B2 (ja) 2020-02-12 2024-03-19 富士フイルムビジネスイノベーション株式会社 情報処理装置及びプログラム

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB201820569D0 (en) * 2018-12-18 2019-01-30 Continental Automotive Gmbh Printed character recognition
KR20210157953A (ko) * 2020-06-22 2021-12-30 삼성디스플레이 주식회사 표시 장치를 검사하는 검사 장치, 얼룩 보상을 수행하는 표시 장치 및 얼룩 보상 방법
JP7391824B2 (ja) * 2020-12-03 2023-12-05 株式会社東芝 情報処理装置、情報処理方法およびプログラム

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS58123176A (ja) * 1982-01-14 1983-07-22 Nippon Telegr & Teleph Corp <Ntt> 変形パターン発生方法及び変形パターン発生装置
JPH02191085A (ja) * 1989-01-20 1990-07-26 Ricoh Co Ltd 画像2値化識別方法
JPH10222602A (ja) * 1997-01-31 1998-08-21 Oki Electric Ind Co Ltd 光学式文字読取装置
JP2004199622A (ja) * 2002-12-20 2004-07-15 Ricoh Co Ltd 画像処理装置、画像処理方法、記録媒体およびプログラム
JP2005038431A (ja) * 2004-07-20 2005-02-10 Hitachi Ltd 携帯端末装置及び通信システム

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH10171923A (ja) * 1996-12-05 1998-06-26 Nippon Steel Corp 文字検出方法及び文字検出装置
JP3844594B2 (ja) 1998-03-31 2006-11-15 株式会社リコー 工業文字認識方法
CN1213592C (zh) * 2001-07-31 2005-08-03 佳能株式会社 采用自适应二值化的图象处理方法和设备
JP4049560B2 (ja) * 2001-08-23 2008-02-20 富士通株式会社 網点除去方法及びシステム
JP4240859B2 (ja) * 2001-09-05 2009-03-18 株式会社日立製作所 携帯端末装置及び通信システム
JP5334042B2 (ja) 2008-11-23 2013-11-06 日本電産サンキョー株式会社 文字列認識方法及び文字列認識装置
JP6569532B2 (ja) 2013-10-31 2019-09-04 日本電気株式会社 管理システム、リスト作成装置、リスト作成方法、管理方法及び管理用プログラム

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS58123176A (ja) * 1982-01-14 1983-07-22 Nippon Telegr & Teleph Corp <Ntt> 変形パターン発生方法及び変形パターン発生装置
JPH02191085A (ja) * 1989-01-20 1990-07-26 Ricoh Co Ltd 画像2値化識別方法
JPH10222602A (ja) * 1997-01-31 1998-08-21 Oki Electric Ind Co Ltd 光学式文字読取装置
JP2004199622A (ja) * 2002-12-20 2004-07-15 Ricoh Co Ltd 画像処理装置、画像処理方法、記録媒体およびプログラム
JP2005038431A (ja) * 2004-07-20 2005-02-10 Hitachi Ltd 携帯端末装置及び通信システム

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2020040012A1 (ja) * 2018-08-23 2020-02-27 大日本印刷株式会社 特定装置、特定システム、特定方法、生成方法、コンピュータプログラム及び学習モデル
JP7452060B2 (ja) 2020-02-12 2024-03-19 富士フイルムビジネスイノベーション株式会社 情報処理装置及びプログラム
JP7452059B2 (ja) 2020-02-12 2024-03-19 富士フイルムビジネスイノベーション株式会社 情報処理装置及びプログラム

Also Published As

Publication number Publication date
US20210182587A1 (en) 2021-06-17
JPWO2017141802A1 (ja) 2018-12-06
US11341739B2 (en) 2022-05-24

Similar Documents

Publication Publication Date Title
WO2017141802A1 (ja) 画像処理装置、文字認識装置、画像処理方法及びプログラム記録媒体
CN110046529B (zh) 二维码识别方法、装置及设备
US11663817B2 (en) Automated signature extraction and verification
US9317764B2 (en) Text image quality based feedback for improving OCR
US9117118B1 (en) Systems and methods for capturing and processing documents
US9053361B2 (en) Identifying regions of text to merge in a natural image or video frame
US11790198B2 (en) Method and apparatus for processing encoded pattern, storage medium, and electronic apparatus
US11836969B2 (en) Preprocessing images for OCR using character pixel height estimation and cycle generative adversarial networks for better character recognition
US8331670B2 (en) Method of detection document alteration by comparing characters using shape features of characters
JP2014524085A (ja) オブジェクトにおけるテキスト情報を認識するための方法およびシステム
JP2009211179A (ja) 画像処理方法、パターン検出方法、パターン認識方法及び画像処理装置
CN111274957A (zh) 网页页面验证码识别方法、装置、终端和计算机存储介质
CN110647882A (zh) 图像校正方法、装置、设备及存储介质
CN110598566A (zh) 图像处理方法、装置、终端和计算机可读存储介质
CN111985465A (zh) 文本识别方法、装置、设备及存储介质
CN110210467B (zh) 一种文本图像的公式定位方法、图像处理装置、存储介质
US20140086473A1 (en) Image processing device, an image processing method and a program to be used to implement the image processing
KR100726473B1 (ko) 이미지 분별 장치 및 그 방법
CN115410191B (zh) 文本图像识别方法、装置、设备和存储介质
KR101660476B1 (ko) 인쇄 결제카드에서 결제 정보를 인식하는 방법
JP3730073B2 (ja) テンプレート作成方法、装置、およびテンプレート作成プログラムを記録した記録媒体
KR100920663B1 (ko) 2차원 코드의 인식 방법
JPH09305707A (ja) 画像抽出方式
JP6797763B2 (ja) 文字認識装置
JP2023038534A (ja) 真贋判定装置およびプログラム

Legal Events

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

Ref document number: 17753060

Country of ref document: EP

Kind code of ref document: A1

WWE Wipo information: entry into national phase

Ref document number: 2018500069

Country of ref document: JP

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 17753060

Country of ref document: EP

Kind code of ref document: A1