JP2020154600A - 画像処理装置及びプログラム - Google Patents

画像処理装置及びプログラム Download PDF

Info

Publication number
JP2020154600A
JP2020154600A JP2019051505A JP2019051505A JP2020154600A JP 2020154600 A JP2020154600 A JP 2020154600A JP 2019051505 A JP2019051505 A JP 2019051505A JP 2019051505 A JP2019051505 A JP 2019051505A JP 2020154600 A JP2020154600 A JP 2020154600A
Authority
JP
Japan
Prior art keywords
image
image processing
learning
order
input
Prior art date
Legal status (The legal status 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 status listed.)
Granted
Application number
JP2019051505A
Other languages
English (en)
Other versions
JP7298223B2 (ja
Inventor
山口 聡之
Satoyuki Yamaguchi
聡之 山口
真太郎 安達
Shintaro Adachi
真太郎 安達
上野 邦和
Kunikazu Ueno
邦和 上野
洋 劉
Hiroshi Ryu
洋 劉
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fujifilm Business Innovation Corp
Original Assignee
Fuji Xerox Co Ltd
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 Fuji Xerox Co Ltd filed Critical Fuji Xerox Co Ltd
Priority to JP2019051505A priority Critical patent/JP7298223B2/ja
Priority to US16/535,086 priority patent/US11151413B2/en
Publication of JP2020154600A publication Critical patent/JP2020154600A/ja
Application granted granted Critical
Publication of JP7298223B2 publication Critical patent/JP7298223B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • 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/82Arrangements for image or video recognition or understanding using pattern recognition or machine learning using neural networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/21Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
    • G06F18/211Selection of the most significant subset of features
    • G06F18/2113Selection of the most significant subset of features by ranking or filtering the set of features, e.g. using a measure of variance or of feature cross-correlation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/21Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
    • G06F18/214Generating training patterns; Bootstrap methods, e.g. bagging or boosting
    • 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/14Image acquisition
    • G06V30/148Segmentation of character regions
    • G06V30/153Segmentation of character regions using recognition of characters or words
    • 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/164Noise filtering
    • 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/19Recognition using electronic means
    • G06V30/191Design or setup of recognition systems or techniques; Extraction of features in feature space; Clustering techniques; Blind source separation
    • G06V30/19173Classification techniques
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Multimedia (AREA)
  • Evolutionary Computation (AREA)
  • Data Mining & Analysis (AREA)
  • Artificial Intelligence (AREA)
  • Databases & Information Systems (AREA)
  • Computing Systems (AREA)
  • General Health & Medical Sciences (AREA)
  • Medical Informatics (AREA)
  • Software Systems (AREA)
  • Health & Medical Sciences (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Evolutionary Biology (AREA)
  • General Engineering & Computer Science (AREA)
  • Image Analysis (AREA)
  • Character Input (AREA)

Abstract

【課題】それぞれ別々の特徴に対応するための学習を行った複数の画像処理手段を固定的な順序で画像に対して適用する方式よりも、より良い画像処理結果を得る。【解決手段】順序計画部20は、入力画像から、その入力画像に対して適切な画像変換フィルタ32の適用順序(すなわち順序計画)を求める。このために順序計画部20は、学習用画像とその学習用画像にとって最良の結果が得られる順序計画とのペアを用いて学習済みである。画像処理制御部40は、画像処理機構30が備える画像変換フィルタ32群を、順序計画部20が求めた順序計画に従ってその入力画像に適用する。これにより、入力画像から処理結果画像が求められる。処理結果画像は、OCR装置等の後段の処理装置にて更に処理される。【選択図】図1

Description

本発明は、画像処理装置及びプログラムに関する。
画像の変換、加工、生成等といった画像処理を機械学習により学習した装置を用いて、画像処理を行うシステムが増えてきている。
特許文献1には、撮影した文書に対するOCR(光学文字認識)処理において、前処理、レイアウト分析、文字認識処理等を、ニューラルネットワークを利用して行うシステムが開示されている。
画像処理の対象となる画像には、地紋、印影、色背景、網掛け等といった何種類かの特徴が含まれる場合がある。
特開2011−008802号公報
画像に含まれ得る複数の特徴のすべてに対応した画像処理を1つの画像処理手段に学習させることは不可能ではないが、精度や汎化性が低下したり、学習の効率が悪かったり、追加学習の際の品質の担保が困難になったりするなどの問題がある。そこで、複数の画像処理手段にそれぞれ別々の特徴に対応する画像処理を学習させ、それら画像処理手段を組み合わせて用いることで、それら複数の特徴のすべてに対応した画像処理を実現することが考えられる。
ところが、ある特徴に対応するための学習を行った画像処理手段は、その画像処理手段が学習した画像に含まれなかった別の特徴を含んだ画像が入力されると、予期せぬ処理結果を出力し、後段の画像処理手段の処理に悪影響をもたらす場合がある。
例えば、網掛けを含むが地紋は含まないサンプル画像で網掛けの除去を学習した画像処理手段は、網掛けと地紋の両方を含んだ画像が入力された場合、網掛けの除去について所期の性能を発揮できず、また地紋に対しても予期せぬ変換を加えてしまう場合がある。この結果、次に地紋除去を行う画像処理手段が、その変換が加わった地紋を適切に除去できないことも起こり得る。逆に、同じ画像に対して、それら2つの画像処理手段を逆の順に適用すると、先に地紋が除去された結果、網掛けの除去が適切に行われ、最終的な画像処理結果が最初の順序の場合よりも良好になる、といったことも起こり得る。
このように、複数の特徴に対応する複数の画像処理手段を画像に対して適用する順序が変わると、最終的な画像処理結果の品質が顕著に変わってくることがある。
本発明は、それぞれ別々の特徴に対応するための学習を行った複数の画像処理手段を固定的な順序で画像に対して適用する方式よりも、より良い画像処理結果を得ることができる仕組みを提供する。
請求項1に係る発明は、それぞれ画像に含まれ得る異なる特徴に対応するための学習を行った複数の画像処理手段と、入力された画像に含まれる特徴に応じて前記複数の画像処理手段の順序を決定する決定手段と、前記入力された画像に対して、前記決定手段が決定した順序で前記画像処理手段を適用する適用手段と、を含む画像処理装置である。
請求項2に係る発明は、学習用画像と、この学習用画像についての画像処理結果が最良となる前記順序と、を前記決定手段に入力することにより、前記学習用画像を入力した場合に前記最良となる前記順序を出力するよう前記決定手段を学習させる学習手段、を更に含む、請求項1に記載の画像処理装置である。
請求項3に係る発明は、前記学習手段は、前記学習用画像についての前記画像処理結果が最良となる前記順序が複数ある場合に、それら複数の順序のうち、並列して適用する異なる前記画像処理手段の数が多い手順ほど優先的に、前記学習用画像と対応付けて前記決定手段に学習させる、ことを特徴とする請求項2に記載の画像処理装置である。
請求項4に係る発明は、前記学習手段は、前記画像処理手段の母集団から前記複数の画像処理手段を選択する選択手段を含み、前記選択手段は、前記母集団に含まれる前記画像処理手段のうち、前記学習用画像に当該画像処理手段を適用したときの画像処理結果が良い順に、前記複数の画像処理手段を選択する、請求項2又は3に記載の画像処理装置である。
請求項5に係る発明は、前記決定手段は、前記入力された画像が含む1以上の特徴を抽出し、抽出した前記1以上の特徴の組合せに基づいて前記順序を決定する、請求項1に記載の画像処理装置である。
請求項6に係る発明は、前記決定手段は、1以上の前記特徴の組合せに対応する前記順序を規定する順序規定情報を参照して、前記入力された画像から抽出した前記1以上の特徴の組合せに対応する前記順序を決定する、請求項5に記載の画像処理装置である。
請求項7に係る発明は、前記順序規定情報は、並列して適用する異なる前記画像処理手段の数が多い手順ほど優先的に選択するように規定する情報である、請求項6に記載の画像処理装置である。
請求項8に係る発明は、前記決定手段は、並列して適用する異なる前記画像処理手段の数が多い手順ほど優先的に、前記入力された画像に適用するものに決定する、請求項1〜4のいずれか1項に記載の画像処理装置である。
請求項9に係る発明は、コンピュータを、それぞれ画像に含まれ得る異なる特徴に対応するための学習を行った複数の画像処理手段、入力された画像に含まれる特徴に応じて前記複数の画像処理手段の順序を決定する決定手段、前記入力された画像に対して、前記決定手段が決定した順序で前記画像処理手段を適用する適用手段、として機能させるためのプログラムである。
請求項1、5又は9に係る発明によれば、それぞれ別々の特徴に対応するための学習を行った複数の画像処理手段を固定的な順序で画像に対して適用する方式よりも、より良い画像処理結果を得ることができる。
請求項2に係る発明によれば、複数の画像処理手段の順序を決定するルールが明確に分からない場合でも、多数の学習用画像についての学習により、決定手段がその順序を決定できるようにすることができる。
請求項3、7又は8に係る発明によれば、入力される画像に対する画像処理結果の劣化がより少ない順序を優先的に選ぶよう決定手段を学習させることができる。
請求項4に係る発明によれば、入力された画像に対して、母集団に含まれるすべての画像処理手段を適用する場合と比べて、その画像処理結果の劣化を低減することができる。
請求項6に係る発明によれば、決定手段に多数の学習用画像を学習させる方式と比べて、決定手段の構築にかかる時間が短くて済む。
実施形態の画像処理装置の構成を例示する図である。 画像変換フィルタを学習により構築する方法を例示する図である。 画像処理機構における複数の画像処理部(例えば画像変換フィルタ)の適用順序の一例を示す図である。 画像処理機構における複数の画像処理部(例えば画像変換フィルタ)の適用順序の別の例を示す図である。 順序計画部を学習により構築するための仕組みを備えた画像処理装置の構成を例示する図である。 順序計画部を学習により構築する手順を例示する図である。 学習用画像に対して使用する画像変換フィルタを選択する処理を説明するための図である。 画像変換フィルタを学習用画像に適用する順序のパターンを求める処理を説明するための図である。 画像変換フィルタを学習用画像に適用する順序のパターンを求める処理を説明するための図である。 順序計画部となるニューラルネットワークの学習に用いる学習データを説明するための図である。 順序計画部を学習させる方法を説明するための図である。 順序計画部の別の例の内部構造を例示する図である。 特徴抽出部を学習させる方法を説明するための図である。
<実施形態の全体像>
図1に、本発明に係る画像処理装置の実施形態の構成を例示する。
図1の画像処理装置は、画像受付部10、順序計画部20、画像処理機構30、画像処理制御部40を含む。
この画像処理装置は、入力画像を、後段の処理装置の処理に適した品質の処理結果画像に変換する装置である。処理結果画像は、入力画像に対する画像処理装置の画像処理結果の一例である。後段の処理装置としては、例えばOCR(光学文字認識)装置や、画像中から個人の顔を識別する顔識別装置等が考えられる。
画像受付部10は、外部から入力画像の入力を受け付ける。
画像処理機構30は、複数の画像処理手段を含んでいる。図示例では、画像処理手段として、N個の画像変換フィルタ32(すなわち第1画像変換フィルタ32−1、第2画像変換フィルタ32−2、・・・第N画像変換フィルタ32−N)と、二値化合成部34とを含む。画像変換フィルタ32は、画像に対して、後述する下線除去や網掛除去等の何らかの変換を施すフィルタである。二値化合成部34は、入力される複数の画像をそれぞれ二値化した後、画素毎のANDをとる合成を行う。二値化合成部34は、後段の処理装置がOCR装置である場合に特に有益な画像処理手段である。画像処理機構30が含む画像変換フィルタ32の集合は、画像処理手段の母集団の一例である。
個々の画像処理手段、例えば図示したN個の画像変換フィルタ32と二値化合成部34は、コンピュータ上で実行されるソフトウエアとして実装されていてもよいし、固定的なハードウエア回路として構成されていてもよい。また、個々の画像処理手段は、FPGA(Field-Programmable Gate Array)やDRP(Dynamically Reconfigurable Processor)のように構成が可変の回路や、ニューロチップのようにソフトウエア的に様々な能力のニューラルネットワークを構成可能な回路を用いて実装してもよい。
入力画像に対して画像処理装置が行う画像処理では、画像処理機構30が備える画像処理手段の全てが必要なわけではなく、そのうちの一部の画像処理手段を組み合わせて用いるだけで十分な場合が多い。したがって、画像処理機構30は、個々の画像処理手段をハードウエア回路として実装する場合でも、それら全てについて固定的なハードウエア回路を持っている必要はない。この場合、画像処理装置は、自らが有する有限個の構成可変の回路やニューロチップのそれぞれを、入力画像に対する画像処理において使用すると決定した各画像処理手段としてそれぞれ構成すればよい。そして、それら画像処理手段同士の間の入出力関係の配線を構成することで、その入力画像に適した画像処理のための回路が出来上がる。画像処理手段をソフトウエアとして実装する場合は、入力画像に対して使用すると決定した各画像処理手段のソフトウエアを、使用する順に実行することで、その入力画像に適した画像処理のための処理フローが出来上がる。
順序計画部20は、入力画像を所望の品質の処理結果画像に変換するためにその入力画像に対して、画像処理機構30が備える複数の画像処理手段のうちのどれをどの順に適用するかを示す順序計画を生成する。すなわち、順序計画部20は、入力画像が入力されると、その入力画像のための順序計画を出力する。順序計画には、複数の画像処理手段が直列に適用されるという直列の順序を表すものだけでなく、いくつかの画像処理手段が並列に実行される部分を含んだ順序を表すものもあり得る。順序計画部は、画像処理手段の順序を決定する決定手段の一例である。
画像処理制御部40は、順序計画部20が出力した順序計画に従って、入力画像に対して画像処理機構30内の各画像処理手段の処理を順に適用していくという制御を行う。画像処理制御部40は、決定手段が決定した順序で画像処理手段を適用する適用手段の一例である。
次に、図1に示した画像処理装置の構成をとる理由の一つを、具体例を参照しつつ説明する。ここで具体例として、帳票の画像をOCR装置に入力し、その帳票内の各欄内の文字列を認識する場合を考える。この場合、帳票の画像には、下線、網掛、印影(例えば社印)、地紋等といった、認識すべき帳票内の文字列に対してはノイズとなる特徴が含まれる場合が少なくない。このためOCR結果の正解率を向上させるためには、入力画像からそれらノイズとなる特徴を除去することが重要となる。
このようなノイズとなる特徴(以下、ノイズ特徴と呼ぶ)群を除去する画像処理を、ニューラルネットワークに学習させることを考える。この場合、入力画像に含まれる可能性がある全ての種類のノイズ特徴の除去を1つのニューラルネットワークに学習させると、精度や汎化性が低下したり、学習の効率が悪かったり、追加学習の際の品質の担保が困難になったりする。これに対し、個々の特徴ごとに個別のニューラルネットワークにその除去を学習させると、個々のニューラルネットワークはそれぞれ対応する特徴を精度よく除去することが可能になる。
そこで、入力画像に含まれる多様なノイズ特徴に対処するために、それら個々のノイズ特徴の除去を学習した複数のニューラルネットを組み合わせることが考えられる。入力画像に対して、それら個々の特徴を除去するニューラルネットワークを順に適用していくことで、入力画像に含まれるそれらノイズ特徴を除去する。
ここで問題となるのが、個々のニューラルネットワークはそれぞれ個別に学習を行うので、個々のニューラルネットワークは、あり得る全てのケースに対応した学習をしているとは期待できないことである。第1のノイズ特徴を除去する学習を済ませたニューラルネットワークが、その学習において、第1のノイズ特徴に対して別の第2のノイズ特徴が重畳した画像をサンプル画像として学習していない場合もある。この場合、第1のノイズ特徴に第2のノイズ特徴が重畳した画像が入力された場合、そのニューラルネットワークは、その画像から第1のノイズ特徴を適切に除去できない可能性があるばかりか、まったく予想できない処理結果の画像を出力してしまう場合すらあり得る。このように1つのニューラルネットワークが十分な品質の処理結果を出力できないと、後続の画像処理を担うニューラルネットワークの処理結果も悪化し、その画像の最終的な処理結果の画像の品質が後段の処理装置の処理に悪影響を与えることとなる。
しかし、入力画像に対して画像処理を適用する順序を適切に決めることで、最終的な処理結果の画像の品質を満足なものとすることができるケースも少なくない。例えば第1のノイズ特徴と第2のノイズ特徴を含んだ入力画像を、第1のノイズ特徴を除去する第1のニューラルネットワークと第2のノイズ特徴を除去する第2のニューラルネットワークとを用いて処理する場合を考える。この場合、入力画像を第1のニューラルネットワーク、第2のニューラルネットワークの順で処理すると処理結果の画像の品質が不十分なのに対し、その逆の順で処理すると処理結果の画像が十分な品質となる場合がある。
このようなことに鑑み、この実施形態では、順序計画部20により、入力画像に適した画像処理手段の適用順序を求めるのである。
なお、ここでは、画像処理手段としてのニューラルネットワークが、ノイズ特徴を除去する場合を例にとったが、画像処理手段が行う画像処理はノイズ特徴の除去に限らない。この他にも、画像処理手段は、画像が含む特徴を強調したり、変換したり、というように、特徴の除去以外の処理を行うものであってもよい。すなわち、個々の画像処理手段は、入力画像に含まれるいくつかの特徴のうち、当該画像処理手段に対応する特徴に対して、その特徴に対応する何らかの画像処理を行うものであればよい。
ただし、以下では、説明を簡潔にするために、図1に示した各画像変換フィルタ32(これは画像処理手段の一例)は、それぞれ入力画像に含まれるノイズ特徴のうち自分に対応するものを除去する処理を行うものである場合を例に取る。
次に、画像変換フィルタ32の構築の仕方の例を示す。以下の例では、N個の画像変換フィルタ32は、それぞれニューラルネットワークに対して、対応する画像変換を学習させることにより構成されているものとする。ニューラルネットワークは、ソフトウエア的に構成されるものであってもよいし、ハードウエア回路として構成されるものであってもよい。
画像変換フィルタ32は、例えば、GAN(敵対的生成ネットワーク)を用いて構成してもよい。GANを用いて画像変換フィルタを構成する仕組みの一例を、図2を参照して説明する。図2に示すGANは、生成器(ジェネレータ)102と識別器(ディスクリミネータ)104とを含む。
このGANは、あらかじめ用意した学習データ120のセットを用いて学習する。このセットに含まれる個々の学習データ120は、学習用画像122と正解画像124のペアを含む。学習用画像122は、構成しようとしている画像変換フィルタ32に対応するノイズ特徴を含んだ画像である。学習用画像122とペアになる正解画像124は、その学習用画像122からそのノイズ特徴を除去して得られる画像である。
生成器102は、学習用画像122から生成画像126を生成するニューラルネットワークである。生成画像126は、学習用画像122に対応する正解画像124を推定した画像である。すなわち、生成器102は、ノイズ特徴を含んだ学習用画像122から、ノイズ特徴を含まない正解画像124に近い生成画像126を生成する。生成器102は、多数の学習用画像122を用いて学習することで、より正解画像124に近い生成画像126を生成できるようになる。
識別器104は、入力された画像が、学習用画像122に対応する正解画像124、及び学習用画像122から生成器102が生成した生成画像126、のうちのいずれであるかを識別するニューラルネットワークである。学習制御部110は、正解画像124又は生成画像126を識別器104に入力する。これに応じて、識別器104は、入力された画像が正解画像124(言い換えれば、本物:real)又は生成画像126(言い換えれば偽物:fake)のいずれであるかを識別し、その識別結果を示す信号を出力する。また、識別器104は、その識別結果の確信度を出力してもよい。確信度とは、その識別結果が正解である蓋然性(すなわち確からしさの度合い)を示す評価値である。
識別結果判定部106は、識別器104の識別結果が正しいか誤りかを判定する。例えば、識別器104に入力された画像が正解画像124であり、これに対する識別器104の識別結果が「正解画像」である場合には、その識別結果は正しい。また例えば、識別器104に入力された画像が生成画像126であり、これに対する識別器104の識別結果が「正解画像」である場合には、その識別結果は誤りである。識別結果判定部106には、識別器104に入力された画像が正解画像124と生成画像126のいずれであるかを示す解答情報が与えられ、その解答情報を参照することで、識別器104の識別結果が正しいか誤りかを判定する。識別結果判定部106の判定結果(すなわち、正しいか誤りかを示す情報)から求められる損失信号が識別器104及び生成器102にフィードバックされる。識別器104及び生成器102は、この損失信号に基づいて学習を行う。また、損失信号に加え、又はその代わりに、確信度の情報を、学習のために識別器104及び生成器102にフィードバックしてもよい。なお、識別結果判定部106の判定結果のフィードバックによる識別器104及び生成器102の学習の手法は、従来のGANで用いられているものと同様のものでよい。
画像比較部108は、正解画像124と、この正解画像124に対応する学習用画像122から生成器102が生成した生成画像126とを比較し、比較結果を示す信号を生成器102にフィードバックする。比較結果を示す信号は、例えば正解画像124と生成画像126の差分を示す信号である。生成器102は、前述した識別結果判定部106からの損失信号と、この画像比較部108からの比較結果の信号とに基づいて学習を行う。この学習も従来技術を用いればよい。
学習制御部110は、生成器102及び識別器104の学習を制御する。学習制御部110は、学習データ120を読み込み、これに含まれる学習用画像122を生成器102に、学習用画像122及び正解画像124を識別器104に入力する。また学習制御部110は、この入力に応じて識別結果判定部106及び画像比較部108が出力する信号を、生成器102及び識別器104にフィードバックすることで、生成器102及び識別器104を学習させる。生成器102及び識別器104は、フィードバックされた信号に応じて、各々のニューラルネットワークのノード間の結合の重みパラメータを更新することにより、学習を行う。
GANを構成する生成器102及び識別器104は、前者が教師データ(正解画像124)になるべく近い偽物(生成画像126)を生成しようとし、後者がその偽物を正しく識別しようとするという形で、いわば互いに切磋琢磨しながら学習を進める。
この画像処理装置の学習には、例えば「pix2pix」というアルゴリズム(Phillip Iso1a他による論文「Image-to-Image Translation with Conditional Adversarial Networks」、Berkeley AI Research (BAIR) Laboratory, UC Berkeley参照)と同様の方式を用いてもよい。また、他の例として、Cycle GANと呼ばれるGANと同様の仕組み用いてもよい。Cycle GANを用いた場合、入力画像のすべてに正解画像が用意されていない場合でも学習が可能である。
次に、図3及び図4を参照して、順序計画部20による順序計画の決定処理の例を説明する。図3及び図4に示す例は、画像処理機構30が、画像変換フィルタ32として、下線を除去する下線除去部32a、印影を除去する印影除去部32b、及び網掛を除去する網掛除去部32cを含む場合の例である。
図3の例は、印影除去部32bは画像に下線が含まれる場合(特に印影と下線が重畳している場合)に性能が低下し、網掛除去部32cは画像に印影又は下線が含まれる場合(特に印影又は下線が網掛と重畳している場合)に性能が低下する場合の例である。なお、下線除去部32aは、画像に網掛及び印影が含まれていても下線除去の品質に悪影響を受けず、印影除去部32bは画像に網掛が含まれていても印影除去の品質に悪影響を受けないものとする。
この例では、下線、印影、及び網掛の3つのノイズ特徴を含む入力画像が入力された場合、順序計画部20は、図3に示すように、下線除去部32a、印影除去部32b、網掛除去部32cの順序で画像処理を実行するという順序計画を出力する。なお、入力画像には、下線、印影、網掛以外のノイズ特徴は含まれていないものとする。この順序計画に従えば、最初の下線除去部32aは、入力画像に含まれる網掛及び印影に悪影響を受けずにその画像中の下線を除去する。下線除去後の画像は、印影除去部32bに入力される。印影除去部32bは、入力された画像に含まれる網掛に悪影響を受けずにその画像中の印影を除去する。印影除去後の画像は、網掛除去部32cに入力される。この画像には下線も印影も含まれていないので、網掛除去部32cは、その画像に含まれる網掛を適切に除去する。この結果、網掛除去部32cから出力される処理結果画像には、OCRにとってノイズとなる下線、印影、及び網掛のいずれも含まれないので、後段のOCR装置がその処理結果画像を処理した場合、高精度のOCR結果が得られる。
図4の例は、以下の条件が分かっている場合のものである。すなわち、印影除去部32bは、入力される画像に下線が含まれる場合は性能が低下するが、入力される画像に網掛が含まれていても性能が低下しない。またこの例では、網掛除去部32cは、入力される画像に下線が含まれる場合は性能が低下するが、入力される画像に印影が含まれていても性能が低下しない。また、下線除去部32aは、画像に網掛及び印影が含まれていても性能は低下しない。
この条件下で、下線、印影、及び網掛の3つのノイズ特徴を含む入力画像(a)が入力された場合、順序計画部20は、下線除去部32aの後で印影除去部32bと網掛除去部32cとが並列に処理を行うという順序計画を出力する。この順序計画では、印影除去部32bと網掛除去部32cの処理結果が二値化合成部34にて処理され、その処理結果の画像が後段のOCR装置に入力される。
この順序計画に従えば、最初の下線除去部32aは、入力画像(a)に含まれる網掛及び印影に悪影響を受けずにその画像中の下線を除去する。下線除去後の画像(b)は、印影除去部32bと網掛除去部32cとにそれぞれ入力される。印影除去部32bは、入力された画像に含まれる網掛に悪影響を受けずにその画像中の印影を除去する。印影除去後の画像(c)は二値化合成部34に入力される。また網掛除去部32cは、入力された画像に含まれる印影に悪影響を受けずにその画像中の網掛を除去する。網掛除去後の画像(d)は二値化合成部34に入力される。二値化合成部34は、入力された画像(c)及び(d)をそれぞれ二値化し、二値化後のそれら両画像を画素毎のAND演算により合成する。印影除去及び網掛除去は、いずれも画像に含まれる要素を除去する処理なので、画素毎のAND演算を行えば、並列実行される相手方の除去処理で残った部分が除去されることになり、それら両方の除去処理を実行した場合と実質的に同じ処理結果となる。また、この例では、後段の処理がOCR処理なので、AND合成前に二値化しても問題がない。
なお、図4の例の条件では、入力画像に対して、例えば下線除去部32a、印影除去部32b、網掛除去部32cの順に直列に処理を実行しても、図4の順序の場合と同等の品質の処理結果が得られる。このように同等の品質の処理結果が得られる順序が複数ある場合、順序計画部20は、それら複数のうちで並列実行される画像変換フィルタ32の数が多い順序ほど優先的に選択するようにしてもよい。図4の条件の例では、下線除去の後印影除去と網掛除去を並列に実行する第1の順序と、下線除去部32a、印影除去部32b、網掛除去部32cの順に直列に実行する第2の順序とで最終的な処理結果の画像の品質が同等である場合、第1の順序が選択される。
以上に説明したように、本実施形態では、入力画像に対して複数の画像変換フィルタ32の変換処理を適用する場合に、考え得る適用順序のうち、最終的な処理結果画像が最良となる順序を順序計画部20により求める。そして、求めた順序に従って画像処理制御部40が、入力画像に対してそれら画像変換フィルタ32を順に適用していく。
ここで、最終的な処理結果画像が「最良」であるとは、後段の処理装置がその処理結果画像を処理したときの処理結果の品質又は精度が、考え得るすべての適用順序でそれぞれ入力画像を処理した場合の後段の処理装置の処理結果の品質の中で最良であることである。例えば、後段の処理装置がOCR装置である場合、入力画像に対するそのOCR装置のOCR結果の精度が最も高いと予想される適用順序が、処理結果画像が最良となる順序である。
なお、処理結果画像が最良となる順序が複数ある場合もある。例えば前述した図4の条件において、下線除去部32aの後印影除去部32bと網掛除去部32cを並列に実行する第1の順序と、下線除去部32a、印影除去部32b、網掛除去部32cの順に直列に実行する第2の順序とは、ともに処理結果画像が最良となる。
処理結果画像が最良となる順序が複数ある場合、順序計画部20は、それら最良の順序のうち、並列実行される画像変換フィルタ32の数が多いものほど優先的に選択する。例えば、ある入力画像に対して第1〜第4の4つの画像変換フィルタ32を適用する必要がある場合を考える。この場合において、第1の画像変換フィルタ32の適用後に第2〜第4の画像変換フィルタ32を並列に適用する第1順序と、第1、第2の画像変換フィルタ32を順に適用した後に第3と第4の画像変換フィルタ32を並列に適用する第2順序とが、共に処理結果画像の品質が最良であるとする。この場合、順序計画部20は、並列実行する画像変換フィルタ32の数がより多い第1順序の方を、その入力画像に適用する順序として選択する。
このように処理結果画像の品質が同じであれば、並列実行する画像変換フィルタ32の数が多い順序を優先的に選択することには、次の意義がある。
第1に、処理結果画像の劣化の度合いが少なくなる。この点について詳しく説明する。画像に対して画像変換フィルタ32を適用すると、その画像変換フィルタ32が対象としている特徴については十分な品質の処理結果が得られる。しかし、画像変換フィルタ32は画像全体に作用するので、その画像内のその特徴以外の部分の品質を多少なりとも悪化させる。したがって、複数の画像変換フィルタ32を直列に順に画像に適用すると、画像変換フィルタ32の数だけ画像の劣化が蓄積することとなる。これに対して、その適用順序の中に図4の例のようにいくつかの画像変換フィルタ32を並列に適用する部分があると、その並列する数に応じた分だけ、入力画像が画像変換を受ける回数が少なくなる。例えば、入力画像に3つの画像変換フィルタ32を適用する場合に、それら3つを直列に適用すると入力画像は3回の画像変換を受けることになり、3回分の画像の劣化が蓄積する。これに対して、同じ3つの画像変換フィルタ32を適用する場合であっても、そのうちの2つの画像変換フィルタ32が並列に実行される適用順序であれば、個々の並列の経路において、入力画像は2回の画像変換を受けるだけであり、蓄積される画像の劣化は2回分に留まる。同じ数の画像変換フィルタ32を適用するのであれば、並列に実行される画像変換フィルタ32の数が多いほど、入力画像が受ける劣化の回数が少なくなるので、最終的な処理結果画像の劣化も少なくなる。
第2の意義は、個々の画像変換フィルタ32をハードウエア回路として実装する場合、並列して実行する画像変換フィルタ32の数が多いほど、並列化の効果により処理に要する時間が短縮されるということである。この意義は、DRPやニューロチップのように、実行する処理の内容をプログラマブルに可変できるハードウエア回路を用いる場合にも該当する。すなわち、画像処理装置が備える限られた数のそのようなプログラマブルなハードウエア回路を使い回して複数の画像変換フィルタ32として用いる場合でも、いくつかの画像変換フィルタ32を複数のハードウエア回路で同時並列して構成できれば、並列化により処理時間が短くなる。
<順序計画部の構築の例1>
次に、本実施形態の画像処理装置における順序計画部20の構築方法を例示する。本実施形態では、機械学習技術により順序計画部20に入力画像から順序計画を生成する処理を学習させる。この例では、順序計画部20は、学習のためのニューラルネットワークを内蔵している。
図5に示す例は、順序計画部20の学習のためのシステムを画像処理装置内に組み込んだ場合のものである。図5において、図1に示した構成要素と同じものには同じ符号を付す。
図5に示す画像処理装置は、学習制御部50と学習DB(データベース)52を含む。学習制御部50は、順序計画部20の学習のための処理を制御する装置であり、学習手段の一例である。学習DB52は、その学習に用いる学習データを保持するデータベースである。学習DB52には、まず、学習に用いる多数の学習用画像が記憶されている。学習用画像は、画像処理機構30の画像処理で対処すべき1以上の特徴(例えばノイズ特徴)が含まれた画像である。含まれる特徴は学習用画像ごとに異なっていてもよい。学習用画像(すなわちサンプル)は、この画像処理装置の使用目的に応じて用意される。例えば、ある企業のある種類の帳票を文字認識するためにこの画像処理装置を使用する場合には、その企業のその種類の過去の帳票の画像データ(例えばPDF形式のデータ)が学習用データとして学習DB52内に用意される。
この例では、順序計画部20が含むニューラルネットワークは、画像を入力とし、その画像に適用すべき順序計画を出力とする。すなわち、この例では、順序計画部20が1つのニューラルネットワークとして実装される。
図6に、この例における学習制御部50の処理手順を例示する。この例の手順は、大きく分けると、学習データペアの作成段階(S10〜S22)と、それら学習データペアを用いてニューラルネットワークを学習させる段階(S24)とからなる。学習データペアの作成段階(S10〜S22)の処理は、学習DB52内の学習用画像ごとに繰り返し実行される(S22)。また、学習データペアの作成段階は、適用する画像変換フィルタを決定する段階(S10〜S14)と、フィルタ実行順序を決定する段階(S16〜S20)とからなる。
まず適用する画像変換フィルタを決定する段階(S10〜S14)の処理について、更に図7を参照しつつ説明する。この段階では、学習制御部50は、学習DB52が有する学習用画像ごとに、その学習用画像を、画像処理機構30が有する各画像変換フィルタ32に入力する(S10)。そして、この入力に対してその画像変換フィルタ32から出力される画像を、後段の処理装置、例えばOCR装置に入力する(S12)。後段の処理装置は、入力された画像を処理して処理結果を出力する。例えばOCR装置は、OCR結果と共にそのOCR結果の確信度を出力する。そして、学習制御部50は、その学習用画像について、確信度が所定の閾値を超えた画像変換フィルタ32を抽出する(S14)。
例えば、図7に示す例では、学習制御部50は、画像処理機構30が備える下線除去部32a、印影除去部32b、網掛除去部32c等の各画像変換フィルタ32に、それぞれ学習用画像を処理させ、その処理の結果の画像をOCR装置60に処理させる。そして、OCR装置60が出力する確信度を取得する。そして、下線除去部32a、印影除去部32b、網掛除去部32c等のうちで、その学習用画像の処理結果をOCR装置60に認識させたときの確信度が閾値を超えたものを抽出する。
S14では、抽出する画像変換フィルタ32の数に上限を設けてもよい。この場合、学習制御部50は、確信度が閾値を超える画像変換フィルタ32の数がその上限を超えている場合には、確信度が高い方から順に、その上限の個数までの画像変換フィルタ32を抽出する。学習制御部50は、学習用画像ごとに、その学習用画像について抽出した画像変換フィルタ32の組を記憶する。
以上に説明した、適用する画像変換フィルタを決定する段階(S10〜S14)の処理は、画像処理手段の母集団から複数の画像処理手段を選択する選択手段の一例である。
次に、フィルタ実行順序を決定する段階(S16〜S20)の処理について、更に図8A及び図8Bを参照しつつ説明する。この段階では、学習制御部50は、学習用画像ごと、その学習用画像を、S14で抽出した画像変換フィルタ32群を組み合わせて構成可能な順序パターンの各々に従って処理する(S16)。そして、順序パターンごとに、その順序パターンに従った処理により得られた画像を後段の処理装置、例えばOCR装置60に処理させ、その処理結果の確信度を得る(S18)。
例えば、S14で下線除去部32a、印影除去部32b及び網掛除去部32cという3つの画像変換フィルタ32が抽出された場合、構成可能な順序パターンには、図8A及び図8Bに示すものが含まれる。
例えば、図8Aに示す順序パターン1は、それら3つを並列に実行するという順序を示す。この場合、それら3つの各々による学習用画像の処理結果は、二値化合成部34により二値化及び合成され、その合成により得られた画像がOCR装置60に入力される。OCR装置60は、その画像に対して文字認識を実行し、認識結果と確信度を出力する。順序パターン2及び3は、それら3つの画像変換フィルタ32のうち1つをまず実行し、その次に残りの2つを並列に実行するという順序の例である。並列に実行される2つの画像変換フィルタ32の出力画像は二値化合成部34により二値化され合成された上で、OCR装置60に入力される。
図8Bに示す順序パターンkは、学習用画像をまず下線除去部32aと印影除去部32bにそれぞれ入力し、その各々の処理結果の画像をそれぞれ網掛除去部32cで処理させるという順序を示す。すなわち、順序パターンkは、抽出された3つの画像変換フィルタ32のうちまず2つを並列に実行し、それら2つの処理結果の画像を残りの1つで処理させるという順序の一例である。順序パターン2及び3とは異なり、先に2つの画像変換フィルタ32を並列に実行すると、その各々の処理結果に対して個別に残りの1つの画像変換フィルタ32を適用する必要がある。並列経路の各々の網掛除去部32cの処理結果は、二値化合成部34により二値化され合成された上で、OCR装置60に入力される。
図8Bに示す順序パタ−ン(N−1)及びNは、それら3つの画像変換フィルタ32を直列に実行する順序の例である。直列に実行する場合には、二値化合成部34の処理はなくてもよい。
図8A及び図8Bに示した順序パターンは、S14で抽出された全て(すなわち図示例では3つ)の画像変換フィルタ32を用いるものであった。しかし、S16〜S18では、S14で抽出された画像変換フィルタ32のうちの一部のみを用いた順序パターンについて更に試行してもよい。例えば、図8A及び図8Bに示した下線除去部32a、印影除去部32b及び網掛除去部32cのうちの2つのみを含んだ順序パターンについても、同様に学習用画像に適用して確信度を求めてもよい。
図6の説明に戻ると、S16及びS18にて、ある学習用画像を各順序パターンで処理した場合についての確信度が求められると、次に学習制御部50は、それらのうち確信度が最高となる順序パターンを選択する(S20)。S20で学習制御部50は、確信度が文字通り最高の順序パターンを1つ選択してもよいし、条件を満たす範囲内で確信度が高い順に複数の順序パターンを選択してもよい。個々での条件は、例えば、選択する順序パターンの上限数であってもよいし、確信度が閾値以上の順序パターンを選択するという条件であってもよい。
また、学習制御部50は、確信度が最高の順序パターンを上限数以内で選択する場合に、確信度が同等(例えば互いの確信度の差が許容範囲内)であれば、並列して実行する画像変換フィルタ32の数が多い順序パターンを優先的に選択する。これにより、順序計画部20となるニューラルネットワークは、学習用画像に対応する順序パターンとして、並列して実行する画像変換フィルタ32の数が多い順序パターンほど優先的に学習することとなる。
学習制御部50は、選択した1以上の順序パターンをその学習用画像と対応付けて学習DB52に記憶する。学習用画像と、選択された1以上の順序パターンと、のペアを、学習データペアと呼ぶ。
学習制御部50は、学習DB52に記憶されたすべての学習用画像について、S10〜S20の処理を繰り返す(S22)。すべての学習用画像についてS10〜S20の処理が終わった段階では、学習DB52内には、図9に例示する学習データが記憶されている。この例の学習データには、複数の学習データペアが含まれる。例えば、学習データペアノうちの最初のもの(図示例の「ペア1」)は、1番目の学習用画像(すなわち「学習用画像#1」)と、その学習用画像について最も確信度が高かった順序パターンの情報と、を含む。ペア1の順序パターンは、Nという識別情報で識別されるものであり、具体的な順序は、下線除去部32a、印影除去部32b、網掛除去部32cをこの順に直列で実行する順序を示す。図では、説明のために、ペアに含まれる順序パターンに対応する順序を明示しているが、実際の学習データペアでは、順序パターンの識別情報があれば足りる。なお、図9の例のペア1〜3に含まれる順序パターンは下線除去、印影除去、網掛除去の3つの画像処理の順序であるのに対し、ペア4に含まれる順序パターンは、網掛除去に代えて地紋除去を含む3つの画像処理の順序である。これは、学習用画像に適した順序パターンを構成する画像処理(例えば画像変換フィルタ32)は、学習用画像ごとに異なる場合があることを示す例である。
図6の説明に戻ると、S22で全ての学習用画像についての処理が完了したと判定されると、学習制御部50は、順序計画部20となるべきニューラルネットワークを、学習データペア群により学習させる(S24)。すなわち、学習データペアに含まれる学習用画像及び順序パターンを、ニューラルネットワークの入力及び教師データとして用いることにより、ニューラルネットワークを学習させる。
図10を参照して更に詳しく説明すると、学習制御部50は、学習データペアごとに、そのペアに含まれる学習用画像を、順序計画部20となるべきニューラルネットワーク200に入力する。次に、学習制御部50は、その入力に対してニューラルネットワーク200が出力した順序計画と、その学習データペアに含まれる順序パターンとの損失(すなわち誤差)を求める。そして学習制御部50は、その損失をニューラルネットワーク200にフィードバックすることにより、そのニューラルネットワーク200を学習させる。なお、あくまで一例であるが、ここで用いるニューラルネットワーク200は、CNN(Convolutional Neural Network)であってもよい。
学習制御部50は、所定の学習終了条件が達成されるまで(S26)、各学習データペアを用いて繰り返しニューラルネットワーク200を学習させる。学習終了条件は、例えば学習DB52内に記憶されたすべての学習データペアについての学習が完了することであってもよいし、所定数個の学習データペアについての学習が完了することであってもよい。また、ニューラルネットワーク200の学習が収束することを学習終了条件としてもよい。そして、学習終了条件が達成されると(すなわちS26の判定結果がYes)、学習制御部50は、ニューラルネットワーク200の学習を終了する。
このようにして学習が済んだニューラルネットワーク200が、順序計画部20として使用されることとなる。このようにして構築された順序計画部20は、画像が入力されると、その画像に適した順序計画を出力する。
<順序計画部の構築の例2>
以上に例示したのは、順序計画部20全体をニューラルネットワーク200として構成するものであった。しかし、これはあくまで一例にすぎない。
別の例として、図11に示すように、順序計画部20を特徴抽出部22と順序選択部24との組合せとして構成してもよい。
特徴抽出部22は、入力画像に含まれる特徴(例えば前述のノイズ特徴)を抽出する。特徴抽出部22の出力は、入力画像から抽出した特徴のリスト(すなわち図示の「特徴リスト」)である。この例ではこの特徴抽出部22をニューラルネットワークにより構成する。
順序選択部24は、その特徴リストに含まれる1以上の特徴の組合せから、それら1以上の特徴に対処するために適切な順序計画を選択する。順序選択部24は、その選択にあたり、ルールテーブル25を参照する。図11に例示したルールテーブル25は、画像変換フィルタ32ごとに、その画像変換フィルタ32の識別情報(すなわち「フィルタID」)と、事前条件と、事後条件とを規定している。事前条件は、前提条件と禁止条件を含む。前提条件及び禁止条件は、それぞれ、当該画像変換フィルタ32が適用される画像について成り立つ条件、及び成り立ってはいけない条件である。事後条件は、その画像変換フィルタ32が出力される画像について成り立つ条件である。例えば、フィルタIDが「1」の画像変換フィルタ32は、前提条件「印影あり」が示すように、印影を含む画像へ適用されるものであり、且つ、禁止条件「下線あり」が示すように、下線を含む画像への適用は禁止される。また、事後条件「印影なし」が示すように、その画像変換フィルタ32は、印影が除去された画像を出力する。また、フィルタIDが「4」の画像変換フィルタ32は、「××」という名前の特徴を含んだ画像に適用されるが、印影又は網掛のうちの少なくとも一方を含む画像への適用は禁止され、入力された画像から特徴「××」が除去された画像を生成する。ルールテーブル25は、個々の画像変換フィルタ32についての既知の知識に基づいて、予め作成されている。
順序選択部24は、入力された特徴リストに含まれる特徴ごとに、前提条件がその特徴を「あり」としている画像変換フィルタ32をルールテーブル25から抽出する。これにより特徴ごとに、その特徴に「対応する画像変換フィルタ32」が1以上求められる。次に、順序選択部24は、特徴リストに含まれる特徴ごとに、その特徴に「対応する画像変換フィルタ32」を1つずつ選ぶ。そして、順序選択部24は、特徴ごとに選んだ「対応する画像変換フィルタ32」から構成可能な順序パターンを、並列する画像変換フィルタ32の数が多い順序パターンから順に評価する。
この評価では、次の2つの点を調べる。
第1に、順序選択部24は、その順序パターンを構成する「対応する画像変換フィルタ32」の組合せにより、特徴リストに含まれるすべての特徴について対応できるかどうかを判定する。この判定は、それら「対応する画像変換フィルタ32」の事後条件に基づき行う。順序パターンを構成する「対応する画像変換フィルタ32」の組合せでは、それらすべての特徴に対応できない場合、順序選択部24は、その順序パターンを採用しない。
第2に、順序選択部24は、その順序パターンを構成する各「対応する画像変換フィルタ32」の禁止条件により、その順序パターンが示す順序が禁止されるかどうかチェックする。順序選択部24は、このチェックにおいて禁止されることが分かった順序パターンは採用しない。
順序選択部24は、これら第1及び第2の評価にて、特徴リストに含まれるすべての特徴について対応でき、かつ、禁止条件により禁止されない順序パターンを採用する。
例えば、図11に例示したルールテーブル25を用いる場合において、入力画像から下線、印影、及び網掛という3つのノイズ特徴が抽出された場合を考える。そして、これらノイズ特徴に応じて、フィルタIDが「1」、「2」、「3」である3つの画像変換フィルタ32が抽出されたとする。この場合、順序選択部24は、まずそれら3つの画像変換フィルタ32の事後条件を調べることにより、それら3つを用いれば、下線、印影、及び網掛という3つのノイズ特徴のすべてに対応できる(すなわちこの場合は、除去できる)ことを確認する。すなわちそれら3つの画像変換フィルタ32の組合せは、上述した第1の評価ポイントについて合格であることが分かる。
そこで次に順序選択部24は、それら3つの画像変換フィルタ32から構成可能な順序パターンのうち、並列実行する画像変換フィルタ32の数が最も多いもの、すなわちそれら3つを並列実行するもの、が禁止条件により禁止されるか否かをチェックする。例えば、フィルタIDが「1」の画像変換フィルタ32は、入力画像に下線が含まれることが禁止条件である。ところが、対象とする入力画像には下線が含まれるので、この画像変換フィルタ32にその入力画像を入力することは禁止条件に抵触する。したがって、順序選択部24は、それら3つの画像変換フィルタ32を並列に実行するという最初の順序パターンは、禁止条件により採用不可と判定する。そこで、順序選択部24は、並列実行する画像変換フィルタ32の数が次に多い、すなわち2つの画像変換フィルタ32を並列実行する順序パターンについて評価する。この場合、
例えば、順序選択部24が、2つの画像変換フィルタ32をまず並列に実行し、その各々の変換結果に残りの1つの画像変換フィルタを適用する順序パターンについて評価するとする。この場合、フィルタIDが「1」、「2」、「3」のうちのどの2つを最初に並列実行したとしても、入力画像には下線、印影、及び網掛という3つのノイズ特徴が含まれているので、その2つのうち少なくとも一方は必ず禁止条件に抵触する。このため、2つの画像変換フィルタ32をまず並列に実行する順序パターンは,いずれも不採用と判定される。
次に順序選択部24は、それら3つの画像変換フィルタ32のうちの1つをまず入力画像に適用し、その1つによる変換結果の画像に残りの2つを並列に適用する順序パターンを評価する。例えば、フィルタIDが「3」の画像変換フィルタ32(すなわち下線除去を行うフィルタ)を最初に適用し、次に残りの2つの画像変換フィルタ32を並列に適用する順序パターンを評価するとする。この場合、フィルタIDが「3」の画像変換フィルタ32は禁止条件がないので、入力画像が下線、印影、及び網掛の3つを含んでいても適用可能である。この画像変換フィルタ32の出力する画像は、下線を含まず、印影と網掛のみを含む。この次に並列に適用されるフィルタIDが「1」及び「2」の2つの画像変換フィルタ32は、共に禁止条件は画像に下線が含まれることだけなので、最初の下線除去のフィルタの出力を入力しても禁止条件には抵触しない。したがって、この順序パターンは、用いるどの画像変換フィルタ32の禁止条件にも抵触しないので、順序選択部24は、この順序パターンを採用する。すなわち、順序選択部24は、この順序パターンを、その入力画像に適用する順序計画として選択する。
この例では、順序選択部24は、並列して実行する画像変換フィルタ32の数が多い順序パターンから順に評価し、含まれるすべての画像変換フィルタ32の禁止条件に抵触しない最初の順序パターンを見つけると、その順序パターンを採用する。したがって、順序選択部24が採用する順序パターンは、いずれの禁止条件でも禁止されない順序パターンのうち、並列して実行する画像変換フィルタ32の数が最も多いものとなる。
以上に例示したルールテーブル25は、順序規定情報の一例である。また、「入力画像から抽出された各特徴に対応する画像変換フィルタ32の組合せから構成可能な順序パターンのうち並列実行する画像変換フィルタ32の数が多いものから順に評価して、最初に見つかった、禁止条件で禁止されない順序パターンを採用する」という手順も、順序規定情報の一例である。また、この手順とルールテーブル25との組合せも、順序規定情報の一例である。
次に、特徴抽出部22のニューラルネットワークを学習させる方法について例示する。この学習のために、図12に例示する様に、学習用画像と、その学習用画像に含まれる特徴(例えばノイズ特徴)のリストと、のペアを多数用意し、学習DB52に登録しておく。学習制御部50は、それらペアごとに、そのペアに含まれる学習用画像をニューラルネットワーク220に入力する。このニューラルネットワーク220は、入力された画像に含まれる特徴のリストを出力する。学習制御部50は、ニューラルネットワーク220が出力した特徴のリストと、その学習用画像に対応付けて学習DB52に登録されている特徴のリストとを比較し,それら両者の誤差を表す損失を求める。そして、その損失をニューラルネットワーク220にフィードバックすることにより、ニューラルネットワーク220を学習させる。所定の学習終了条件が満たされるまで、それらペアを用いてニューラルネットワーク220を学習させる。このようにして学習が済んだニューラルネットワーク220を特徴抽出部22として用いる。
図5に示した例では、順序計画部20に含まれるニューラルネットワークを学習させる学習制御部50及び学習DB52が画像処理装置内に含まれていたが、これは一例に過ぎない。この代わりに、画像処理装置の外部に、ニューラルネットワークと学習制御部50と学習DB52とを備えたシステムを用意し、このシステムにて、上述した方法で、そのニューラルネットワークを学習させてもよい。この場合、学習済みのニューラルネットワークを規定する規定情報を、そのシステムから画像処理装置内の順序計画部20にダウンロードすればよい。ダウンロードする規定情報は、例えば、学習済みのニューラルネットワークの各層のノード構成、各層のノード間を結ぶ結合のパターン、及びそれら各結合の重み、等を規定する情報等である。
また以上の例では、順序計画部20がニューラルネットワークを含む例を説明したが、順序計画部20は、ニューラルネットワーク以外の機械学習方式を用いた装置を含むものであってもよい。
以上に説明した画像処理装置は、コンピュータに上述のその画像処理装置を構成する要素群の機能を表すプログラムを実行させることにより実現してもよい。ここで、コンピュータは、例えば、ハードウエアとして、CPU等のマイクロプロセッサ、ランダムアクセスメモリ(RAM)及びリードオンリメモリ(ROM)等のメモリ(一次記憶)、フラッシュメモリやSSD(ソリッドステートドライブ)、HDD(ハードディスクドライブ)や等の固定記憶装置を制御するコントローラ、各種I/O(入出力)インタフェース、ローカルエリアネットワークなどのネットワークとの接続のための制御を行うネットワークインタフェース等が、たとえばバス等を介して接続された回路構成を有する。それら各機能の処理内容が記述されたプログラムがネットワーク等の経由でフラッシュメモリ等の固定記憶装置に保存され、コンピュータにインストールされる。固定記憶装置に記憶されたプログラムがRAMに読み出されCPU等のマイクロプロセッサにより実行されることにより、上に例示した機能モジュール群が実現される。また、それら画像処理装置の要素のうちの一部又は全部がハードウエア回路として構成されてもよい。
10 画像受付部、20 順序計画部、22 特徴抽出部、24 順序選択部、25 ルールテーブル、30 画像処理機構、32 画像変換フィルタ、32a 下線除去部、32b 印影除去部、32c 網掛除去部、34 二値化合成部、40 画像処理制御部、50 学習制御部、52 学習DB、60 OCR装置、102 生成器、104 識別器、106 識別結果判定部、108 画像比較部、110 学習制御部、200,220 ニューラルネットワーク。

Claims (9)

  1. それぞれ画像に含まれ得る異なる特徴に対応するための学習を行った複数の画像処理手段と、
    入力された画像に含まれる特徴に応じて前記複数の画像処理手段の順序を決定する決定手段と、
    前記入力された画像に対して、前記決定手段が決定した順序で前記画像処理手段を適用する適用手段と、
    を含む画像処理装置。
  2. 学習用画像と、この学習用画像についての画像処理結果が最良となる前記順序と、を前記決定手段に入力することにより、前記学習用画像を入力した場合に前記最良となる前記順序を出力するよう前記決定手段を学習させる学習手段、
    を更に含む、請求項1に記載の画像処理装置。
  3. 前記学習手段は、前記学習用画像についての前記画像処理結果が最良となる前記順序が複数ある場合に、それら複数の順序のうち、並列して適用する異なる前記画像処理手段の数が多い手順ほど優先的に、前記学習用画像と対応付けて前記決定手段に学習させる、ことを特徴とする請求項2に記載の画像処理装置。
  4. 前記学習手段は、
    前記画像処理手段の母集団から前記複数の画像処理手段を選択する選択手段を含み、
    前記選択手段は、前記母集団に含まれる前記画像処理手段のうち、前記学習用画像に当該画像処理手段を適用したときの画像処理結果が良い順に、前記複数の画像処理手段を選択する、
    請求項2又は3に記載の画像処理装置。
  5. 前記決定手段は、前記入力された画像が含む1以上の特徴を抽出し、抽出した前記1以上の特徴の組合せに基づいて前記順序を決定する、請求項1に記載の画像処理装置。
  6. 前記決定手段は、1以上の前記特徴の組合せに対応する前記順序を規定する順序規定情報を参照して、前記入力された画像から抽出した前記1以上の特徴の組合せに対応する前記順序を決定する、請求項5に記載の画像処理装置。
  7. 前記順序規定情報は、並列して適用する異なる前記画像処理手段の数が多い手順ほど優先的に選択するように規定する情報である、請求項6に記載の画像処理装置。
  8. 前記決定手段は、並列して適用する異なる前記画像処理手段の数が多い手順ほど優先的に、前記入力された画像に適用するものに決定する、請求項1〜4のいずれか1項に記載の画像処理装置。
  9. コンピュータを、
    それぞれ画像に含まれ得る異なる特徴に対応するための学習を行った複数の画像処理手段、
    入力された画像に含まれる特徴に応じて前記複数の画像処理手段の順序を決定する決定手段、
    前記入力された画像に対して、前記決定手段が決定した順序で前記画像処理手段を適用する適用手段、
    として機能させるためのプログラム。
JP2019051505A 2019-03-19 2019-03-19 画像処理装置及びプログラム Active JP7298223B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2019051505A JP7298223B2 (ja) 2019-03-19 2019-03-19 画像処理装置及びプログラム
US16/535,086 US11151413B2 (en) 2019-03-19 2019-08-08 Image processing device, method and non-transitory computer readable medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2019051505A JP7298223B2 (ja) 2019-03-19 2019-03-19 画像処理装置及びプログラム

Publications (2)

Publication Number Publication Date
JP2020154600A true JP2020154600A (ja) 2020-09-24
JP7298223B2 JP7298223B2 (ja) 2023-06-27

Family

ID=72514157

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2019051505A Active JP7298223B2 (ja) 2019-03-19 2019-03-19 画像処理装置及びプログラム

Country Status (2)

Country Link
US (1) US11151413B2 (ja)
JP (1) JP7298223B2 (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7166506B1 (ja) * 2022-02-15 2022-11-07 三菱電機株式会社 画像フィルタ生成システム、画像フィルタ生成装置、学習装置、学習方法及びプログラム
JP7166505B1 (ja) * 2022-02-15 2022-11-07 三菱電機株式会社 画像フィルタ生成システム、画像フィルタ生成装置、推論装置、推論方法及びプログラム
WO2023032177A1 (ja) * 2021-09-03 2023-03-09 株式会社KPMG Ignition Tokyo オブジェクト除去システム、オブジェクト除去方法、及びオブジェクト除去プログラム

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112766275B (zh) * 2021-04-08 2021-09-10 金蝶软件(中国)有限公司 印章文字识别方法、装置、计算机设备和存储介质

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009017297A (ja) * 2007-07-05 2009-01-22 Ricoh Co Ltd 画像処理装置、画像処理制御方法、及び画像処理制御プログラム
US20150363660A1 (en) * 2014-06-12 2015-12-17 Asap54.Com Ltd System for automated segmentation of images through layout classification
JP2018005520A (ja) * 2016-06-30 2018-01-11 クラリオン株式会社 物体検出装置及び物体検出方法
JP2018097875A (ja) * 2016-12-15 2018-06-21 富士通株式会社 トレーニング画像処理装置に用いるトレーニング装置及びトレーニング方法

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7499588B2 (en) 2004-05-20 2009-03-03 Microsoft Corporation Low resolution OCR for camera acquired documents
US20090110288A1 (en) * 2007-10-29 2009-04-30 Kabushiki Kaisha Toshiba Document processing apparatus and document processing method
US8544026B2 (en) * 2010-02-09 2013-09-24 International Business Machines Corporation Processing data communications messages with input/output control blocks
US10832046B1 (en) * 2018-10-23 2020-11-10 Architecture Technology Corporation Systems and methods for processing document images

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009017297A (ja) * 2007-07-05 2009-01-22 Ricoh Co Ltd 画像処理装置、画像処理制御方法、及び画像処理制御プログラム
US20150363660A1 (en) * 2014-06-12 2015-12-17 Asap54.Com Ltd System for automated segmentation of images through layout classification
JP2018005520A (ja) * 2016-06-30 2018-01-11 クラリオン株式会社 物体検出装置及び物体検出方法
JP2018097875A (ja) * 2016-12-15 2018-06-21 富士通株式会社 トレーニング画像処理装置に用いるトレーニング装置及びトレーニング方法

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2023032177A1 (ja) * 2021-09-03 2023-03-09 株式会社KPMG Ignition Tokyo オブジェクト除去システム、オブジェクト除去方法、及びオブジェクト除去プログラム
JP7166506B1 (ja) * 2022-02-15 2022-11-07 三菱電機株式会社 画像フィルタ生成システム、画像フィルタ生成装置、学習装置、学習方法及びプログラム
JP7166505B1 (ja) * 2022-02-15 2022-11-07 三菱電機株式会社 画像フィルタ生成システム、画像フィルタ生成装置、推論装置、推論方法及びプログラム
WO2023157092A1 (ja) * 2022-02-15 2023-08-24 三菱電機株式会社 画像フィルタ生成システム、画像フィルタ生成装置、推論装置、推論方法及びプログラム
WO2023157093A1 (ja) * 2022-02-15 2023-08-24 三菱電機株式会社 画像フィルタ生成システム、画像フィルタ生成装置、学習装置、学習方法及びプログラム

Also Published As

Publication number Publication date
US11151413B2 (en) 2021-10-19
US20200302220A1 (en) 2020-09-24
JP7298223B2 (ja) 2023-06-27

Similar Documents

Publication Publication Date Title
JP7298223B2 (ja) 画像処理装置及びプログラム
US4979227A (en) Method for automatic character recognition employing a lexicon having updated character strings
CN110245685B (zh) 基因组单位点变异致病性的预测方法、系统及存储介质
CN109684190B (zh) 软件测试装置和方法
JP7215242B2 (ja) 画像処理装置及びプログラム
JP2018500708A (ja) ニューラルネットワーク構造とその方法
Jenckel et al. anyocr: A sequence learning based ocr system for unlabeled historical documents
US11741363B2 (en) Computer-readable recording medium, method for learning, and learning device
US11599784B2 (en) Signal processing device, signal processing method, and computer program product
US11113563B2 (en) Apparatus for detecting object and method thereof
US11087428B2 (en) Image processing apparatus, data processing apparatus, and image processing method
KR20170109304A (ko) 객체 인식을 위한 캐스케이드 분류기의 병렬 학습 방법
CN115810135A (zh) 样本分析的方法、电子设备、存储介质和程序产品
JP7331937B2 (ja) ロバスト学習装置、ロバスト学習方法、プログラム及び記憶装置
WO2016181468A1 (ja) パターン認識装置、パターン認識方法およびプログラム
KR102305981B1 (ko) 신경망 압축 훈련 방법 및 압축된 신경망을 이용하는 방법
CN114175069A (zh) 具有隐私保护的分布式机器学习
CN111126420A (zh) 一种建立识别模型的方法及装置
JP2009294704A (ja) ナンバー認識装置およびナンバー認識方法
JPWO2018066083A1 (ja) 学習プログラム、情報処理装置および学習方法
US20210004954A1 (en) Neural network-type image processing device, appearance inspection apparatus and appearance inspection method
CN112766354A (zh) 一种基于知识图谱的小样本图片识别方法及系统
CN110991460B (zh) 图像识别处理方法、装置、设备及存储介质
RU2819348C1 (ru) Способ графовой нейросетевой классификации на отсутствие или наличие большого депрессивного расстройства по данным фмрт
US20220300750A1 (en) Device and in particular a computer-implemented method for classifying data sets

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20220228

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20230228

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20230424

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20230516

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20230529

R150 Certificate of patent or registration of utility model

Ref document number: 7298223

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150