JP6779798B2 - 情報処理装置、情報処理方法及びプログラム - Google Patents
情報処理装置、情報処理方法及びプログラム Download PDFInfo
- Publication number
- JP6779798B2 JP6779798B2 JP2017012962A JP2017012962A JP6779798B2 JP 6779798 B2 JP6779798 B2 JP 6779798B2 JP 2017012962 A JP2017012962 A JP 2017012962A JP 2017012962 A JP2017012962 A JP 2017012962A JP 6779798 B2 JP6779798 B2 JP 6779798B2
- Authority
- JP
- Japan
- Prior art keywords
- image
- paper
- movement
- paper document
- amount
- 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.)
- Active
Links
- 230000010365 information processing Effects 0.000 title claims description 30
- 238000003672 processing method Methods 0.000 title claims description 3
- 238000003708 edge detection Methods 0.000 claims description 31
- 238000003384 imaging method Methods 0.000 claims description 27
- 238000001514 detection method Methods 0.000 claims description 16
- 238000000605 extraction Methods 0.000 claims description 10
- 230000002194 synthesizing effect Effects 0.000 claims description 2
- 238000000034 method Methods 0.000 description 62
- 238000010191 image analysis Methods 0.000 description 15
- 238000010586 diagram Methods 0.000 description 10
- 230000006870 function Effects 0.000 description 8
- 238000013523 data management Methods 0.000 description 4
- 238000012015 optical character recognition Methods 0.000 description 4
- KNMAVSAGTYIFJF-UHFFFAOYSA-N 1-[2-[(2-hydroxy-3-phenoxypropyl)amino]ethylamino]-3-phenoxypropan-2-ol;dihydrochloride Chemical compound Cl.Cl.C=1C=CC=CC=1OCC(O)CNCCNCC(O)COC1=CC=CC=C1 KNMAVSAGTYIFJF-UHFFFAOYSA-N 0.000 description 3
- 239000002131 composite material Substances 0.000 description 2
- 239000000203 mixture Substances 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- UWNXGZKSIKQKAH-UHFFFAOYSA-N Cc1cc(CNC(CO)C(O)=O)c(OCc2cccc(c2)C#N)cc1OCc1cccc(c1C)-c1ccc2OCCOc2c1 Chemical compound Cc1cc(CNC(CO)C(O)=O)c(OCc2cccc(c2)C#N)cc1OCc1cccc(c1C)-c1ccc2OCCOc2c1 UWNXGZKSIKQKAH-UHFFFAOYSA-N 0.000 description 1
- 238000009434 installation Methods 0.000 description 1
- 238000007781 pre-processing Methods 0.000 description 1
Landscapes
- Image Processing (AREA)
- Editing Of Facsimile Originals (AREA)
- Image Analysis (AREA)
Description
本発明は、情報処理装置、情報処理方法及びプログラムに関する。
従来、紙文書に記載された文字等の情報を電子的に取り込むためにスキャナ等が利用されている。また、近年では、スマートフォンやタブレット等のモバイル端末のカメラを利用することで、紙文書を画像データとして電子的に取り込み、その取り込んだ画像データに対して、OCR処理を実行することも行われている。さらにこのとき、モバイル端末による影を避ける等のため、紙文書に対して斜め方向から撮影することが考えられる。
特許文献1では、書類に対して斜め方向から撮像する際に、複数の異なるフォーカス位置で撮像し、該撮像したフォーカス位置の異なる複数の画像を合成することで被写界深度の深い合成画像を生成するようにしている。一方で、特許文献1のようにカメラ画角に紙文書全体を収めようとすると、紙文書からある程度離れた位置から撮影する必要が生じる。しかしながら、離れた位置から撮影すると、文書画像が小さくなり、所定の解像度(例えば、文書画像をOCR処理する上で必要な解像度)を担保できない場合がある。これに対しては、パノラマ撮影のように、紙文書の一部を拡大撮影して複数の部分画像を取得し、それらの部分画像を合成して解像度の高い合成画像を得ることが考えられる。
また、モバイル端末のカメラで撮像した画像は、モバイル端末を手持ちで撮像していることから、スキャナ等で電子的に取り込んだ画像と比較して、画像細部において手振れによるピントのボケが発生しやすい。そこで、後述する本発明の実施形態では、手振れを防止するために、モバイル端末を固定して配置し、紙文書の方を机上で動かしながら撮像する形態を考えている。しかしながら、このような形態では、ユーザは紙文書を動かす操作を行っているので、ユーザにとっては、該紙文書の操作と同時に、適切なタイミングや位置で文書の部分画像を撮像する操作を行うことは難しい。
本発明は、このような課題を鑑みてなされたものであって、その目的は、複数の画像を撮像して全体画像として合成する場合に、適切なタイミングで該複数の画像を撮像することである。
上記目的を達成するために、本発明の情報処理装置は、紙文書を局所的に撮像した複数の局所画像を合成し、前記紙文書の全体画像を生成する情報処理装置であって、入力画像から前記紙文書の紙辺を検出する紙辺検出手段と、前記検出された紙辺の形状が紙辺の検出条件に適合するか否かを判定する紙辺形状判定手段と、前記紙辺の検出条件に適合すると判定されたことを条件に、前記入力画像から前記紙文書の画像特徴量を抽出する特徴量抽出手段と、前記紙文書の移動前に撮像された撮像画像から抽出された前記紙文書の画像特徴量と、前記紙文書の移動後の入力画像から抽出された前記紙文書の画像特徴量とから算出される、前記紙文書の移動量及び移動方向が移動量及び移動方向に関する条件に適合するか否かを判定する移動量及び方向判定手段と、前記移動量及び移動方向に関する条件に適合すると判定されたことを条件に、移動後の前記紙文書の一部を局所画像として撮像するように制御する撮像制御手段とを備えることを特徴とする。
本発明の情報処理装置によれば、複数の画像を撮像して全体画像として合成する場合に、適切なタイミングで該複数の画像を撮像することができる。
以下、本発明の実施形態について、図面等を参照して説明する。なお、以下の実施形態は、本発明を限定するものではなく、また、本実施形態で説明されている全ての構成が本発明の課題を解決するための手段に必須であるものとは限らない。
(外観)
図1は、本発明の実施形態に係る情報処理装置の外観を示す図である。なお、図1では、モバイル端末100を、情報処理装置の一例として示している。ここで、図1(a)は、モバイル端末100を表側から見た外観を示している。また、図1(b)は、モバイル端末100を裏側から見た外観を示している。
図1は、本発明の実施形態に係る情報処理装置の外観を示す図である。なお、図1では、モバイル端末100を、情報処理装置の一例として示している。ここで、図1(a)は、モバイル端末100を表側から見た外観を示している。また、図1(b)は、モバイル端末100を裏側から見た外観を示している。
モバイル端末100は、各種のユニット(カメラ101、タッチパネル102、スタンド103、キーボード104)を含んで構成される。カメラ101は、被写体105を撮像し、画像として取得するための撮像手段である。タッチパネル102は、ディスプレイ等の表示手段の一例として示されるものであり、入力と出力(表示)の2つの機能を有している。スタンド103は、モバイル端末100を支持する支持手段であり、後述のモバイルアプリケーションによる撮像時にカメラを固定することができる。キーボード104は、入力手段の一例として示されるものであり、図1では、モバイル端末と着脱可能なキーボードを示している。
また、図1では、カメラ101で撮像する被写体105として、注文書(A4サイズの紙文書)をその一例として示しているが、被写体105としては、必ずしもこれに限定されず、例えば、名刺、写真、免許証等を被写体として設定することもできる。なお、モバイル端末100には、モバイルアプリケーションがインストールされており、モバイルアプリケーションを起動した状態で、カメラ101により被写体105を撮像すると、タッチパネル102に撮像した画像を表示させることができる。
(ハードウェア構成)
図2は、本発明の実施形態に係る情報処理装置(モバイル端末100)のハードウェア構成図である。モバイル端末100は、各種のユニット(CPU201、RAM202、ROM203、Input/Outputインタフェース204、NIC205、カメラユニット206)を含んで構成される。なお、これらのユニットは、バス207を介して、データの送受信が可能なように接続されている。
図2は、本発明の実施形態に係る情報処理装置(モバイル端末100)のハードウェア構成図である。モバイル端末100は、各種のユニット(CPU201、RAM202、ROM203、Input/Outputインタフェース204、NIC205、カメラユニット206)を含んで構成される。なお、これらのユニットは、バス207を介して、データの送受信が可能なように接続されている。
CPU(Central Processing Unit)201は、モバイル端末100全体を制御する中央演算装置である。CPU201は、ROM203に記憶されている各種プログラムを実行することにより、後述のシーケンスの各ステップの処理を実行する各処理部として機能する。なお、CPU201に、フラッシュメモリ、又はHDD等の外部記憶装置に記憶されているプログラムを実行させることで、CPU201を後述のシーケンスの各ステップの処理を実行する各処理部として機能させることもできる。また、後述のシーケンスに係る処理の全部又は一部については専用のハードウェアを用いて実現することもできる。
RAM(Random Access Memory)202は、各種情報の記憶領域、また、CPU201の一時的な作業記憶領域として用いられる。ROM(Read Only Memory)203は、CPU201により実行される各種プログラム等を記憶する。Input/Outputインタフェース204は、タッチパネル102からのデータを送受信する。NIC(Network Interface Card)205は、ネットワークインタフェースであり、モバイル端末100を所定のネットワーク(不図示)に接続する。カメラユニット206は、カメラ101に接続され、カメラ101により撮像された、被写体105の画像をモバイル端末100に取り込む。
(ソフトウェア構成)
次に、モバイル端末100におけるソフトウェア構成について説明する。図3は、本発明の実施形態に係る情報処理装置(モバイル端末100)のソフトウェア構成図である。図3に示される各ソフトウェア(アプリケーション)における機能を実現するプログラムは、前述のようにモバイル端末100のROM203等に記憶される。
次に、モバイル端末100におけるソフトウェア構成について説明する。図3は、本発明の実施形態に係る情報処理装置(モバイル端末100)のソフトウェア構成図である。図3に示される各ソフトウェア(アプリケーション)における機能を実現するプログラムは、前述のようにモバイル端末100のROM203等に記憶される。
モバイル端末100のOS(Operating System)は、データ管理部301を有する。データ管理部301は、画像やアプリケーションデータを管理する。OSは、データ管理部301を利用するための制御API(Application Programming Interface)を提供している。各アプリケーションは、その制御APIを利用することで、データ管理部301が管理する画像やアプリケーションデータの取得や保存を実行する。
モバイルアプリケーション302は、所定の配信サービス(例えば、Apple StoreやGoogle Play等)よりダウンロードされ、OSのインストール機能によりインストールされることにより実行可能なアプリケーションである。モバイルアプリケーション302は、カメラユニット206を介して取得した被写体105の画像に対して、各種データ処理を実行する。また、メイン制御部303、情報表示部304、操作情報取得部305、画像解析部306、記憶部307、画像特徴量抽出部308、移動量・方向判定部309、マッチング処理部310、撮像制御部311、撮像枚数設定部312、条件決定部313を備える。
メイン制御部303は、モバイルアプリケーション302を制御する。メイン制御部303は、各モジュール部に対する指示及び管理を行う。情報表示部304は、本発明のガイド表示手段に対応し、メイン制御部303の指示に従って、モバイルアプリケーション302のユーザインタフェース(UI)をユーザに提供する。操作情報取得部305は、情報表示部304により提供されたモバイルアプリケーション302のUIにおいて、ユーザが操作した情報を取得し、その取得した情報をメイン制御部303に通知する。具体的には、ユーザがタッチパネル102の表示及び操作領域(後述の401)に触れると、操作情報取得部305は、触れられた画面上の位置の情報を感知し、感知した位置の情報をメイン制御部303に送信する。
画像解析部306は、カメラユニット206を介して取得した被写体105の画像を解析して、後述の紙辺検出処理を実行し、さらに検出された紙辺の形状及び位置より紙面を判別する。そして、画像解析部306は、紙面と判別された領域が画面(即ち、入力画像)に対して80%以上占有していることを条件に、検出された紙辺の形状が事前に設定された紙辺の検出条件に適合するか否かを判定する。また、画像解析部306は、入力画像を解析することで、ユーザの手が被写体105である注文書にかかっているか否かを判定する。即ち、画像解析部306は、本発明の紙辺検出手段、紙辺形状判定手段、紙面判別手段、及び手判定手段に対応する。
記憶部307は、操作情報取得部305(即ち、モバイルアプリケーション302のUI)を介して、ユーザにより入力された設定値を記憶(永続化)する。画像特徴量抽出部308は、カメラ101の入力画像に対して、画像特徴量の抽出処理を実行する。移動量・方向判定部309は、図6で後述する画像特徴点の移動量(即ち、どの程度、移動したか)、移動方向(即ち、どの方向に移動したか)が事前に設定された画像特徴点の移動量及び移動方向に関する条件に適合するか否かを判定する。マッチング処理部310は、移動前の画像特徴点と移動後の画像特徴点のマッチング処理を実行する。なお、具体的なマッチング処理として、例えば、BruteForce−Hamming等がある。撮像制御部311は、移動量・方向判定部309において画像特徴点の移動量及び移動方向に関する条件に適合すると判定されたことを条件に、被写体105である注文書の一部を局所的に撮像するように制御する。
撮像枚数設定部312は、被写体105である注文書を局所画像(部分画像)として撮像する枚数を設定する。なお、局所画像として撮像する枚数は、相応の解像度を担保できること、また、各々の局所画像に画像特徴量が含まれることを前提に設定される。条件決定部313は、撮像枚数設定部312において設定された撮像枚数の各々に対して、紙辺の検出条件、及び画像特徴点の移動量及び移動方向に関する条件を、撮像する枚数に応じて決定する。
図4は、モバイルアプリケーション302のUIの画面例を示す図である。図4(a)において、モバイル端末画面400は、モバイル端末100のタッチパネル102に表示される。タッチパネル102は、前述のように、表示及び操作領域401にカメラ101を介して取得した画像を表示し、表示及び操作領域401においてユーザからの操作を受け付ける。
また、注文書402は、カメラ101の被写体105の一例として示されるものである(図4(b))。撮像領域403は、カメラ101により撮像される領域の一例として示されるものである。表示例404は、カメラ101で撮像領域403を撮像することにより取得した画像を、モバイル端末画面400に表示した例として示されるものである。なお、モバイルアプリケーション302のUIの形態(例えば、位置、大きさ、範囲、配置、表示内容等)は、図4(c)に示す形態に必ずしも限定されるものではなく、モバイル端末100の機能を実現するために任意の適切な構成を採用することができる。
(紙辺検出と局所画像)
図5は、紙辺検出と局所画像を示す図である。なお、ここで、紙辺検出とは被写体105である注文書402の紙辺を検出する処理であり、紙辺検出するための処理としては、例えば、画像から直線成分を抽出するハフ変換処理等がある。また、局所画像とは、被写体105の一部をカメラ101により撮像することで取得される画像のことであり、例えば、図5の531〜536等で示される。また、図5では、局所画像を合成することにより生成される全体画像についても示している。
図5は、紙辺検出と局所画像を示す図である。なお、ここで、紙辺検出とは被写体105である注文書402の紙辺を検出する処理であり、紙辺検出するための処理としては、例えば、画像から直線成分を抽出するハフ変換処理等がある。また、局所画像とは、被写体105の一部をカメラ101により撮像することで取得される画像のことであり、例えば、図5の531〜536等で示される。また、図5では、局所画像を合成することにより生成される全体画像についても示している。
表示例511は、カメラ101で撮像領域501を撮像することにより取得した画像をモバイル端末100のタッチパネル102に表示した例である。表示例521は、取得した画像に対して、画像解析部306により紙辺検出処理を実行し、紙辺(図中、太線)を検出した結果を表示した例である。さらに、局所画像531は、紙辺検出結果により得られた紙辺座標情報を用いて、被写体105以外の領域を除外した画像として示されるものである。
同様に、表示例512は、カメラ101で撮像領域502を撮像することにより取得した画像をモバイル端末100のタッチパネル102に表示した例である。表示例522は、取得した画像に対して、画像解析部306により紙辺検出処理を実行し、紙辺を検出した結果を表示した例である。さらに、局所画像532は、紙辺検出結果により得られた紙辺座標情報を用いて、被写体105以外の領域を除外した画像として示されるものである。
同様に、表示例513は、カメラ101で撮像領域503を撮像することにより取得した画像をモバイル端末100のタッチパネル102に表示した例である。表示例523は、取得した画像に対して、画像解析部306により紙辺検出処理を実行し、紙辺を検出した結果を表示した例である。さらに、局所画像533は、紙辺検出結果により得られた紙辺座標情報を用いて、被写体105以外の領域を除外した画像として示されるものである。
同様に、表示例514は、カメラ101で撮像領域504を撮像することにより取得した画像をモバイル端末100のタッチパネル102に表示した例である。表示例524は、取得した画像に対して、画像解析部306により紙辺検出処理を実行し、紙辺を検出した結果を表示した例である。さらに、局所画像534は、紙辺検出結果により得られた紙辺座標情報を用いて、被写体105以外の領域を除外した画像として示されるものである。
同様に、表示例515は、カメラ101で撮像領域505を撮像することにより取得した画像をモバイル端末100のタッチパネル102に表示した例である。表示例525は、取得した画像に対して、画像解析部306により紙辺検出処理を実行し、紙辺を検出した結果を表示した例である。さらに、局所画像535は、紙辺検出結果により得られた紙辺座標情報を用いて、被写体105以外の領域を除外した画像として示されるものである。
同様に、表示例516は、カメラ101で撮像領域506を撮像することにより取得した画像をモバイル端末100のタッチパネル102に表示した例である。表示例526は、取得した画像に対して、画像解析部306により紙辺検出処理を実行し、紙辺を検出した結果を表示した例である。さらに、局所画像536は、紙辺検出結果により得られた紙辺座標情報を用いて、被写体105以外の領域を除外した画像として示されるものである。
このようにして生成された複数の局所画像531〜536は、画像合成処理により、画像解析部306において1枚の画像(即ち、被写体105の全体画像540)として合成される。なお、局所画像の画像合成処理としては、例えば、ステッチング等がある。また、紙辺検出処理に関しては、後述の図9に示すように、撮像する前処理としても実行される。
(画像特徴量の移動量及び移動方向)
図6は、画像特徴量の移動量及び移動方向を説明するための図である。より詳細には、図6は、注文書402を撮像した2枚の撮像画像611、612を用いて、2枚の撮像画像間で紙面がどの程度、移動したか(移動量)、どちらの方向に移動したか(移動方向)を判定する処理について説明するための図である。
図6は、画像特徴量の移動量及び移動方向を説明するための図である。より詳細には、図6は、注文書402を撮像した2枚の撮像画像611、612を用いて、2枚の撮像画像間で紙面がどの程度、移動したか(移動量)、どちらの方向に移動したか(移動方向)を判定する処理について説明するための図である。
撮像画像611は、撮像領域501を撮像した画像である。画像特徴量621は、検出した局所画像531から画像特徴量抽出部308で抽出した画像特徴量である。特徴量表示画像631は、画像特徴量621を撮像画像611にオーバレイした画像である。画像特徴点641は、画像特徴点の集合(即ち、画像特徴量621)のうちの1点として示される特徴点である。画像特徴量の例としては、SURF、SIFT、AKAZE、ORB等がある。座標651は、撮像画像611における画像特徴点641の座標である。撮像画像612は、注文書402をカメラ101に対して右方向に移動させ、撮像領域502を撮像した画像である。画像特徴量622は、検出した局所画像532から画像特徴量抽出部308で抽出した画像特徴量である。
マッチング処理部310は、画像特徴量621と画像特徴量622でマッチング処理を実行し(即ち、各々の対応する画像特徴点でマッチング処理を実行し)、同一の画像特徴点を検出する。画像特徴点642は、画像特徴点641に対応する画像特徴点である。即ち、画像特徴点641と画像特徴点642は、注文書402における同一の位置として示される。座標652は、撮像画像612における画像特徴点642の座標を表す。
移動量・方向判定部309は、座標651と座標652の座標比較により、画像特徴量(即ち、注文書402)の移動量と移動方向を算出する。図6に示す例では、画像特徴点641がx軸方向にマイナス400移動しているので、注文書402をカメラ101に対して右方向に400移動させたものと認識される。
なお、移動量・方向判定部309は、その後に、その算出した特徴点の移動量と移動方向が、撮像枚数(例えば、6枚の局所画像のうちの2枚目、3枚目等)に応じて事前に設定された特徴点の移動量と移動方向に一致するか否かを判定する。また、図6では、撮像画像間で移動量と移動方向を算出する例を示したが、局所画像の取得処理では、移動前後の入力画像、又は移動前の撮像画像と移動後の入力画像を比較することで、移動量と移動方向を算出する。
(全体フロー)
図7は、本発明の実施形態に係る情報処理装置(モバイル端末100)の撮像処理の手順を示すフローチャートである。なお、図7に示す撮像処理では、注文書402の局所画像を合成し、注文書402の全体画像を生成した際に、相応の解像度を担保することを前提に、局所画像として6枚を撮像する例を示している。
図7は、本発明の実施形態に係る情報処理装置(モバイル端末100)の撮像処理の手順を示すフローチャートである。なお、図7に示す撮像処理では、注文書402の局所画像を合成し、注文書402の全体画像を生成した際に、相応の解像度を担保することを前提に、局所画像として6枚を撮像する例を示している。
したがって、OCR(Optical Character Recognition)で認識する上で充分な解像度を担保することができれば、局所画像として撮像する枚数は、必ずしも6枚に限定されず、2枚以上であればよい。ここで、局所画像として撮像する枚数を例えば、2枚、3枚とする場合には、被写体105である注文書402を横方向に移動させて撮像すればよい。また、局所画像として撮像する枚数が4枚以上であって、かつ偶数枚である場合には、撮影枚数の半分を撮像し終えた時点で、注文書402を回転させ、その後に残りの画像を横方向に移動させて撮像すればよい。さらに、図7に示すフローチャートでは、処理を実行する事前に撮影枚数を固定した上で撮像するケースを示しているが、撮像装置、撮像方法、紙辺検出結果により、撮像枚数を動的に変更することもできる。
図7に示すフローチャートは、ユーザによりモバイルアプリケーション302で各種設定(例えば、撮像枚数、図9において後述する特徴点の移動量及び移動方向等に関する設定)を行い、カメラ101を起動すると開始される。モバイルアプリケーション302は、注文書402の局所画像の取得処理を実行する(S701)。なお、ここで、局所画像は前述の図5の531〜536で示される画像であり、局所画像の取得処理は後述の図9のステップS901〜S912の処理として説明される。また、図7に示すフローチャートでは前述のように6枚の局所画像を撮像することから、モバイルアプリケーション302は、ユーザに注文書402を移動させるようにガイドし、6回に分けて局所画像を撮像する。
モバイルアプリケーション302は、6枚全ての局所画像を撮像したか否かを判定し(S702)、6枚全ての局所画像を撮像済みの場合はステップS705に処理を移行し、6枚全ての局所画像を撮像済みでない場合はステップS703に処理を移行する。モバイルアプリケーション302は、6枚全ての局所画像を撮像済みでない場合(S702 No)、撮像枚数の総計が、その半分である3枚であるか否かを判定する(S703)。モバイルアプリケーション302は、撮像枚数の総計が3枚でない場合にはステップS701に処理を移行し、撮像枚数の総計が3枚である場合にはステップS704に処理を移行させる。
モバイルアプリケーション302は、撮像枚数の総計が3枚であると判定した場合(S703 Yes)、ユーザに対して、注文書402を回転するように促すガイドを表示する(S704)。具体的には、モバイルアプリケーション302は、図8のガイド表示例801に示されるように「紙面を回転させて下さい」と表示させる。また、ステップS702において、6枚全ての局所画像を撮像済みであると判定すると、画像解析部306において、ステップS701で取得した局所画像を合成し、画像生成処理を施すことで、注文書402の全体画像を生成する(S705)。
なお、図7には示していないが、ステップS701からS703、又はステップS701からS704までの処理が完了すると、撮像枚数をカウントアップし、図9において後述するように、撮像枚数に応じた処理を選択して実行する。
(局所画像取得処理)
図9は、本発明の実施形態に係る情報処理装置(モバイル端末100)の局所画像取得処理の手順を示すフローチャートである。図9に示すフローチャートは、図7で前述したように、ユーザによりモバイルアプリケーション302で各種設定を行い、カメラ101を起動すると開始される。
図9は、本発明の実施形態に係る情報処理装置(モバイル端末100)の局所画像取得処理の手順を示すフローチャートである。図9に示すフローチャートは、図7で前述したように、ユーザによりモバイルアプリケーション302で各種設定を行い、カメラ101を起動すると開始される。
モバイルアプリケーション302は、カメラ101により注文書402の画像を取得する(S901)。なお、この場合、ユーザは、6枚の局所画像のうちの1枚目の局所画像531を撮像することを前提に、撮像領域が撮像領域501におおよそ設定されるように、注文書402を配置しておく。
モバイルアプリケーション302は、取得した画像(即ち、表示例511として示される画像)に対して、画像解析部306により紙辺検出処理を実行する(S902)。モバイルアプリケーション302は、紙辺検出処理の実行結果(即ち、紙辺検出結果)を、紙辺座標情報に従って表示する(S903)。なお、ここでの紙辺検出結果は表示例521として示され、また、紙辺座標情報とは、例えば、表示例521に示す画面において、画面(即ち、長方形)の左上の頂点を原点に設定し、さらに画面の横方向をx軸方向、縦方向をy軸方向として示されるものである。
モバイルアプリケーション302は、メイン制御部303により、紙辺検出結果が撮像条件に一致するか否かを判定する(S904)。具体的には、紙辺検出結果(即ち、紙辺の数と傾き)が、その撮像枚数(例えば、1枚目、2枚目等)に応じて事前に設定された紙辺の数と傾きと一致するか否かを判定する。ここでは、6枚の局所画像のうちの1枚目の局所画像531を撮像することを前提としていることから、モバイルアプリケーション302は、紙辺が2本であって、かつ、その2本の紙辺の傾きがおおよそ表示例521のように、検出できているか否かを判定する。また、モバイルアプリケーション302は、被写体105である注文書402が、画面において、おおよそ80%以上占有しているか否かに関しても、併せて判定する。モバイルアプリケーション302は、紙辺検出結果が撮像条件に一致しない場合(S904 No)、ステップS901に処理を移行させ、紙辺検出結果が撮像条件に一致する場合(S904 Yes)、ステップS905に処理を移行させる。
モバイルアプリケーション302は、ステップS905において、撮像済み画像があるか否かを判定する。即ち、モバイルアプリケーション302は、1枚目の撮像画像であるか否かを判定する。モバイルアプリケーション302は、撮影済み画像がある場合(S905 Yes)、ステップS906に処理を移行させ、撮影済み画像がない場合(即ち、1枚目の撮像画像である場合)(S905 No)、ステップS908に処理を移行させる。なお、この場合、1枚目の撮像画像であることから、モバイルアプリケーション302は、ステップS908に処理を移行させる。
モバイルアプリケーション302は、フレーム間の移動量を判定し、フレーム間の移動量が所定の範囲内に収まっているか否かを判定する(S908)。具体的には、注文書402を移動させた直後だとフレーム間の移動量が所定の範囲内に収まっていないと判定し、ユーザが注文書402から手を離し、注文書402が静止した状態になると、フレーム間の移動量が所定の範囲内に収まっていると判定する。
モバイルアプリケーション302は、フレーム間の移動量が所定の範囲内に収まっていれば、ステップS910に処理を移行させ、フレーム間の移動量が所定の範囲内に収まっていなければ、ステップS909に処理を移行させる。モバイルアプリケーション302は、フレーム間の移動量が所定の範囲内に収まっていないと判定すると(S908 No)、ユーザに紙面を静止するように、撮影ガイドを提示する(S909)。
モバイルアプリケーション302は、フレーム間の移動量が所定の範囲内に収まっていると判定すると(S908 Yes)、次に、ユーザの手が撮影領域(即ち、被写体105である注文書402)にかかっているか否かを判定する(S910)。モバイルアプリケーション302は、ユーザの手が撮影領域にかかっていなければ(S910 Yes)、ステップS912に処理を移行させ、ユーザの手が撮影領域にかかっていれば(S910 No)、ステップS911に処理を移行させる。モバイルアプリケーション302は、ユーザの手が撮影領域にかかっていると判定すると(S910 No)、ユーザに手を退けるように、撮影ガイドを表示する(S911)。また、モバイルアプリケーション302は、ユーザの手が撮影領域にかかっていないと判定すると(S910 Yes)、注文書402を撮像し(S912)、撮像した局所画像を記憶部307に記憶する。
モバイルアプリケーション302は、注文書402に関して、6枚の局所画像のうちの1枚目の局所画像531を撮像すると、次に、図7及び図9のフローチャートに従って、6枚の局所画像のうちの2枚目の局所画像532を撮像するための処理を実行する。モバイルアプリケーション302は、注文書402に関して、6枚の局所画像のうちの2枚目の局所画像532を撮像することを前提に、ユーザにより撮像領域502におおよそ配置された注文書402の画像を取得する(S901)。モバイルアプリケーション302は、取得した画像(即ち、表示例512として示される画像)に対して、画像解析部306により紙辺検出処理を実行する(S902)。モバイルアプリケーション302は、紙辺座標情報に従って、紙辺検出結果を表示する(S903)。なお、ここでの紙辺検出結果は、表示例522として示される。
モバイルアプリケーション302は、メイン制御部303により、紙辺検出結果が撮像条件に一致するか否かを判定する(S904)。ここでは、6枚の局所画像のうちの2枚目の局所画像532を撮像することを前提としていることから、モバイルアプリケーション302は、紙辺が1本であって、かつ、その1本の紙辺の傾きがおおよそ表示例522のように、検出できているか否かを判定する。また、モバイルアプリケーション302は、被写体105である注文書402が、画面において、おおよそ80%以上占有しているか否かに関しても、併せて判定する。モバイルアプリケーション302は、紙辺検出結果が撮像条件に一致しない場合(S904 No)、ステップS901に処理を移行させ、紙辺検出結果が撮像条件に一致する場合(S904 Yes)、ステップS905に処理を移行させる。
モバイルアプリケーション302は、ステップS905において、撮像済み画像があるか否かを判定する。この場合、モバイルアプリケーション302は、1枚目が既に撮像済みであることから、撮影済み画像があると判定し(S905 Yes)、ステップS906に処理を移行させる。ステップS906において、モバイルアプリケーション302は、先ず、直前に撮像された画像(ここでは、6枚の局所画像のうちの1枚目の局所画像531)とステップS901で取得した入力画像から、特徴点を抽出する。モバイルアプリケーション302は、次に、その特徴点の移動量と移動方向を計算し、その撮像枚数(ここでは、6枚の局所画像のうちの2枚目)に応じて事前に設定された特徴点の移動量と移動方向に一致するか否かを判定する(S906)。
なお、このステップS906における判定は、相応の精度を担保するために、前述の図6で示した移動量・方向判定処理に従って、複数の特徴点を対象に実行される。そのため、例えば、6枚の局所画像のうちの2枚目の局所画像の撮影画面において1枚目の局所画像の撮影画面のおおよそ3分の1がオーバーラップして表示されるように2枚目の局所画像を撮影する位置を設定する。そして、その2枚目の局所画像の撮影画面において、複数の特徴点の移動が確認できるようにする。
モバイルアプリケーション302は、撮像条件に一致する場合(S906 Yes)、ステップS908に処理を移行させ、撮像条件に一致していない場合(S906 No)、ステップS907に処理を移行させる。モバイルアプリケーション302は、撮像条件に一致していないと判定すると(S906 No)、撮影ガイドを表示する(S907)。注文書402のシフト量が適切でない場合、撮像枚数が徒に増加したり、また画像を適切に合成できなかったりする。そのため、モバイルアプリケーション302は、図10(a)に示されるガイド表示例1001のように「紙面を移動させて下さい」等のガイドを表示する。また、図10(a)では、シフト量が充分でない場合を示していることから、ガイド表示例1002に示されるように、紙面(注文書402)を移動させる方向に関してもガイドし、ユーザに右方向にシフトさせるように促している。なお、モバイルアプリケーション302は、ユーザが撮像を予定する方向とは反対方向に注文書402を移動させた場合、「紙面を反対方向に移動させて下さい」等のガイドを表示することもできる。
また、モバイルアプリケーション302は、撮像条件に一致していると判定すると、図10(b)に示されるガイド表示例1003のように「紙面を静止させて下さい」と表示させ、その後に、ステップS908からステップS912までの処理を実行する。したがって、モバイルアプリケーション302は、ステップS910において、ユーザの手が撮像領域にかかっていると判定すると(S910 Yes)、ステップS911に処理を移行する。
図11は、ユーザの手が撮影領域にかかっているか否かを判定する処理に関して、説明するための図である。図11(a)において、画像領域1101は撮影済みである画像領域を、また、画像領域1102は未だ撮像されていない画像領域を示している。なお、撮像済みである画像領域であるか、又は未だ撮像されていない画像領域であるかは、画像特徴点の移動量及び移動方向に基づいて判定される。ここで、図11(a)において、未だ撮像されていない画像領域であって、かつ、撮像を予定する画像領域に、手1103がかかっている。そのため、モバイルアプリケーション302は、例えば、図11(b)に示すように「手を退けて下さい」と表示させ、ユーザに注意を喚起する。なお、手を認識する技術として、既知の物体認識技術を用いる。
モバイルアプリケーション302は、注文書402に関して、6枚の局所画像のうちの2枚目の局所画像532を撮像すると、同様に、図9のフローチャートに従って3枚目から6枚目の局所画像を撮像し、その後に局所画像から全体画像を生成する。以上のように、本実施形態の情報処理装置によれば、紙辺と紙面移動量・方向を用いた撮像条件判定で、撮像条件を充足した場合にのみ自動的に撮像するため、適切なタイミングで複数の局所画像を撮像することができる。さらに、入力画像に紙面が映っていない場合において、不要な撮像を防止することができる。
(その他の実施形態)
ここでは、移動量・方向の判定精度を向上させるための移動量・方向判定処理について説明する。なお、移動量・方向判定処理以外の処理に関して、上述の実施形態で説明した構成及び手順と同様であることから、それらの詳細な説明は省略する。
ここでは、移動量・方向の判定精度を向上させるための移動量・方向判定処理について説明する。なお、移動量・方向判定処理以外の処理に関して、上述の実施形態で説明した構成及び手順と同様であることから、それらの詳細な説明は省略する。
図12は、移動量・方向判定処理を説明するための図である。上述の実施形態では、直前に撮像された局所画像1201と入力画像1202から直接、移動量及び移動方向を算出することで、移動量・方向に関する判定処理を実行していた。但し、局所画像1201と入力画像1202では、被写体105を移動させて撮像していることから、被写体105において同じ領域が撮像された場合であっても、その位置に関係して、撮像画像において、その領域が異なる形状として示される。図12において、局所画像1201の画像特徴点1201(a)、(b)及び(c)と入力画像1202の画像特徴点1202(a)、(b)及び(c)は、被写体105の対応する特徴点である。しかしながら、それらの画像特徴点により形成される領域は、局所画像1201と入力画像1202で異なっている。このように、移動量及び移動方向を算出すると、誤差が生じる場合がある。
そこで、本実施形態では、局所画像1201及び入力画像1202を同一の座標系に射影し、射影した画像1211、1212を用いて、移動量及び移動方向を算出する。同一の座標系に射影し、移動量及び移動方向を算出することで、その誤差を低減し、さらには、移動量・方向判定処理の精度を向上させることができる。
本発明は、上述の実施形態の1以上の機能を実現するプログラムをネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける1つ以上のプロセッサがプログラムを読み出し、実行する処理でも実現可能である。また、1以上の機能を実現する回路(例えば、ASIC)によっても実現可能である。以上、本発明の好ましい実施形態について説明したが、本発明は、これらの実施形態に限定されず、その要旨の範囲内で種々の変形及び変更が可能である。
Claims (9)
- 紙文書を局所的に撮像した複数の局所画像を合成し、前記紙文書の全体画像を生成する情報処理装置であって、
入力画像から前記紙文書の紙辺を検出する紙辺検出手段と、
前記検出された紙辺の形状が紙辺の検出条件に適合するか否かを判定する紙辺形状判定手段と、
前記紙辺の検出条件に適合すると判定されたことを条件に、前記入力画像から前記紙文書の画像特徴量を抽出する特徴量抽出手段と、
前記紙文書の移動前に撮像された撮像画像から抽出された前記紙文書の画像特徴量と、前記紙文書の移動後の入力画像から抽出された前記紙文書の画像特徴量とから算出される、前記紙文書の移動量及び移動方向が移動量及び移動方向に関する条件に適合するか否かを判定する移動量及び方向判定手段と、
前記移動量及び移動方向に関する条件に適合すると判定されたことを条件に、移動後の前記紙文書の一部を局所画像として撮像するように制御する撮像制御手段と
を備えることを特徴とする情報処理装置。 - 前記紙文書の一部を局所画像として撮像する枚数を設定する撮像枚数設定手段と、
前記撮像する枚数の各々に対して、前記紙辺の検出条件及び前記移動量及び移動方向に関する条件を、 前記撮像する枚数に応じて決定する条件決定手段と
を備え、
前記紙辺の検出条件は、前記紙文書の一部の紙辺の形状として設定され、
前記紙辺形状判定手段は、前記局所画像を撮像する枚数に対応する前記紙辺の検出条件に従って判定し、
前記移動量及び方向判定手段は、前記局所画像を撮像する枚数に対応する前記移動量及び移動方向に関する条件に従って判定することを特徴とする請求項1に記載の情報処理装置。 - 前記紙辺検出手段により検出された紙辺の形状及び位置より、紙面を判別する紙面判別手段を備え、
前記紙辺形状判定手段は、前記紙面判別手段により紙面と判別された領域が前記入力画像に対して80%以上占有していることを条件に、前記検出された紙辺の形状が前記紙辺の検出条件に適合するか否かを判定することを特徴とする請求項1又は2に記載の情報処理装置。 - 前記移動量及び方向判定手段は、前記紙文書の移動量及び移動方向を算出する事前に、前記紙文書の移動後の入力画像を、前記紙文書の移動前に撮像した局所画像と同一の座標系に変換することを特徴とする請求項1から3のいずれか1項に記載の情報処理装置。
- 前記移動量及び方向判定手段により、前記算出された移動量及び移動方向が前記移動量及び移動方向に関する条件に適合していると判定されると、前記紙文書を静止させるためのガイドを表示するガイド表示手段を備えることを特徴とする請求項1から4のいずれか1項に記載の情報処理装置。
- 前記入力画像において、ユーザの手が前記紙文書にかかっているか否かを判定する手判定手段を備え、
前記ガイド表示手段は、前記手判定手段により前記ユーザの手が前記紙文書にかかっていると判定されると、手を退けるようにガイドを表示することを特徴とする請求項5に記載の情報処理装置。 - 前記ガイド表示手段は、前記局所画像として撮像する枚数が4枚以上であって、かつ偶数枚である場合に、前記局所画像として撮像する枚数の半分の撮像が完了すると、前記紙文書を回転させるようにガイド表示することを特徴とする請求項5に記載の情報処理装置。
- 紙辺検出手段により、入力画像から紙文書の紙辺を検出する紙辺検出ステップと、
紙辺形状判定手段により、前記検出された紙辺の形状が紙辺の検出条件に適合するか否かを判定する紙辺形状判定ステップと、
特徴量抽出手段により、前記紙辺の検出条件に適合すると判定されたことを条件に、前記入力画像から前記紙文書の画像特徴量を抽出する特徴量抽出ステップと、
移動量及び方向判定手段により、前記紙文書の移動前の入力画像から抽出された前記紙文書の画像特徴量と、前記紙文書の移動後の入力画像から抽出された前記紙文書の画像特徴量とから算出される、前記紙文書の移動量及び移動方向が移動量及び移動方向に関する条件に適合するか否かを判定する移動量及び方向判定ステップと、
撮像制御手段により、前記移動量及び移動方向に関する条件に適合すると判定されたことを条件に、前記紙文書の一部を局所画像として撮像するように制御する撮像制御ステップと
画像生成手段により、前記撮像した局所画像を合成し、前記紙文書の全体画像を生成する画像生成ステップと
を備えることを特徴とする情報処理装置における情報処理方法。 - コンピュータを、請求項1から7のいずれか一項に記載の情報処理装置の各手段として機能させるためのプログラム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2017012962A JP6779798B2 (ja) | 2017-01-27 | 2017-01-27 | 情報処理装置、情報処理方法及びプログラム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2017012962A JP6779798B2 (ja) | 2017-01-27 | 2017-01-27 | 情報処理装置、情報処理方法及びプログラム |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2018120511A JP2018120511A (ja) | 2018-08-02 |
JP6779798B2 true JP6779798B2 (ja) | 2020-11-04 |
Family
ID=63045207
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2017012962A Active JP6779798B2 (ja) | 2017-01-27 | 2017-01-27 | 情報処理装置、情報処理方法及びプログラム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP6779798B2 (ja) |
-
2017
- 2017-01-27 JP JP2017012962A patent/JP6779798B2/ja active Active
Also Published As
Publication number | Publication date |
---|---|
JP2018120511A (ja) | 2018-08-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11516383B2 (en) | Adaptive camera control for reducing motion blur during real-time image capture | |
US11563926B2 (en) | User feedback for real-time checking and improving quality of scanned image | |
EP3072103B1 (en) | User feedback for real-time checking and improving quality of scanned image | |
JP6448674B2 (ja) | 文字認識可能な画像を撮影するためのガイド表示を行う、カメラ機能を有する携帯可能な情報処理装置、その表示制御方法、及びプログラム | |
JP6971789B2 (ja) | 情報処理装置、プログラム及び情報処理方法 | |
JP2019109624A (ja) | 情報処理装置、プログラム及び情報処理方法 | |
JP7118729B2 (ja) | 情報処理装置、情報処理方法及びプログラム | |
JP6794284B2 (ja) | カメラ機能を有する携帯可能な情報処理装置、その表示制御方法、及びプログラム | |
JP2017120503A (ja) | 情報処理装置、情報処理装置の制御方法、及びプログラム | |
JP6669390B2 (ja) | 情報処理装置、情報処理方法、及びプログラム | |
JP6779798B2 (ja) | 情報処理装置、情報処理方法及びプログラム | |
JP2017199288A (ja) | 画像処理装置、画像処理方法及びプログラム | |
JP6614500B2 (ja) | 画像読取装置、携帯端末、画像読取方法及び画像読取プログラム | |
JP2018191094A (ja) | 原稿読取装置、原稿読取装置の制御方法、及びプログラム | |
JP2016224888A (ja) | 情報処理装置、座標推定プログラム及び座標推定方法 | |
JP2019097050A (ja) | 画像読取装置及び画像読取プログラム | |
JP6203070B2 (ja) | スキャンシステムおよびその制御方法、並びにプログラム | |
KR20130104483A (ko) | 객체를 분할하여 사진을 촬영하는 방법 및 장치 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20191217 |
|
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: 20200915 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20201014 |
|
R151 | Written notification of patent or utility model registration |
Ref document number: 6779798 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R151 |