JP2019028677A - Information processing device, information processing method and program - Google Patents

Information processing device, information processing method and program Download PDF

Info

Publication number
JP2019028677A
JP2019028677A JP2017146779A JP2017146779A JP2019028677A JP 2019028677 A JP2019028677 A JP 2019028677A JP 2017146779 A JP2017146779 A JP 2017146779A JP 2017146779 A JP2017146779 A JP 2017146779A JP 2019028677 A JP2019028677 A JP 2019028677A
Authority
JP
Japan
Prior art keywords
information
mask
image
document
processing
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.)
Pending
Application number
JP2017146779A
Other languages
Japanese (ja)
Inventor
洋介 五十嵐
Yosuke Igarashi
洋介 五十嵐
嘉仁 七海
Yoshihito Nanaumi
嘉仁 七海
Original Assignee
キヤノン株式会社
Canon Inc
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 キヤノン株式会社, Canon Inc filed Critical キヤノン株式会社
Priority to JP2017146779A priority Critical patent/JP2019028677A/en
Publication of JP2019028677A publication Critical patent/JP2019028677A/en
Pending legal-status Critical Current

Links

Images

Abstract

To efficiently specify a document region even if there are a large number of straight lines within a picked-up image other than a boundary between the document region and a background.SOLUTION: According to the present invention, a mask to specify a region subjected to a process is created on the basis of the positions of four sides of a specified document with respect to a previously picked-up image, and the mask is applied to a newly picked-up image, thereby obtaining the positions of four sides of the document from the region subjected to the process within the newly picked-up image specified by the mask.SELECTED DRAWING: Figure 5

Description

本発明は、撮影画像中の原稿の位置を取得する技術に関する。   The present invention relates to a technique for acquiring the position of a document in a captured image.
近年、スマートフォンやタブレットPCといった高度な情報処理機能を持つモバイル端末が普及してきている。これらのモバイル端末は、カメラを備え、撮影機能(カメラ機能)を有している。このようなモバイル端末のカメラ機能を用いて紙媒体の原稿を撮影して得られた原稿画像を、携帯端末のメモリ上に画像データとして保存する機会が増えてきた。   In recent years, mobile terminals having advanced information processing functions such as smartphones and tablet PCs have become widespread. These mobile terminals include a camera and have a photographing function (camera function). Opportunities have been increased to store document images obtained by photographing a document on a paper medium using the camera function of the mobile terminal as image data on the memory of the mobile terminal.
フラットベッドスキャナや複合機における原稿のスキャンとは異なり、モバイル端末のカメラ機能を用いた原稿の撮影では、撮影画像全面に原稿全体を正面から歪みなく写すことが難しい。また、このようにして得られた撮影画像をそのまま印刷したりデータファイル化したりするのは好ましくない。なぜなら、撮影時に原稿内容以外の余計なものが写ってしまう場合や、斜め方向から撮影したために原稿内容に幾何学的な歪みが生じる場合があるためである。このような場合には、印刷やデータファイル化を行う前に撮影画像から原稿内容の領域(原稿領域)だけを切り出し、切り出した原稿領域に対して歪み補正(台形補正と呼ばれる場合もある)を施して歪みを取り除く必要がある。   Unlike scanning a document in a flatbed scanner or a multifunction machine, when shooting a document using the camera function of a mobile terminal, it is difficult to copy the entire document from the front without distortion on the entire captured image. Further, it is not preferable to print the photographed image thus obtained as it is or to convert it into a data file. This is because extra images other than the document content may be captured during shooting, or geometrical distortion may occur in the document content due to shooting from an oblique direction. In such a case, only the area of the original content (original area) is cut out from the photographed image before printing or data file conversion, and distortion correction (sometimes referred to as trapezoid correction) is performed on the extracted original area. It is necessary to remove the distortion.
特許文献1では、撮影画像から複数の線分(直線)を抽出した後、各線分の組み合わせの評価値に基づいて最も評価値の高い四辺形を被写体の領域と判断し、その四辺形領域に基づいて歪み補正を行っている。   In Patent Document 1, after extracting a plurality of line segments (straight lines) from a captured image, the quadrilateral having the highest evaluation value is determined as the subject area based on the evaluation value of each line segment combination, and the quadrilateral area is determined as the subject area. Based on this, distortion correction is performed.
特開2007−058634号公報JP 2007-058634 A
本出願人は、モバイル端末のカメラ機能で文書を撮影する際に、ユーザが撮影ボタンを押す前に画面に表示されているライブビュー画像において、リアルタイムに文書領域を検出して、当該検出した文書領域の位置を赤枠等で該ライブビュー画像上に重ねて表示することを検討している。このようにすれば、ユーザは撮影ボタンを押す前に文書が撮影範囲に入っているか判定しやすくなる。   The present applicant detects a document area in real time in a live view image displayed on the screen before the user presses the shooting button when shooting a document with the camera function of the mobile terminal, and the detected document We are considering to display the position of the region on the live view image with a red frame or the like. In this way, the user can easily determine whether the document is in the shooting range before pressing the shooting button.
しかしながら、特許文献1のような、撮影画像から直線の線分を抽出して四辺形領域を判定する技術では、撮影画像から多数の線分が抽出されると、線分の組み合わせの評価対象が多くなるので計算量が増え、四辺形領域の判定に時間がかかってしまう。例えば、被写体が文書の場合、その文書内に表があると表の罫線が線分として多数検出される場合がある。また、被写体が文書で、その文書が木目調のテーブルに置かれているときは、被写体の後ろにあるテーブルの木目が複数の直線として抽出されてしまう場合もある。このように、被写体内部の表罫線や被写体背後の直線のテクスチャが多くなればなるほど、検出される直線線分が増えて四辺形領域の判定に時間がかかることになる。すなわち、モバイル端末等において、ライブビュー画像全体からリアルタイムに直線を検出して四辺形領域を判定して表示することは、計算量(処理負荷)が大きすぎるという課題があった。   However, in the technique of extracting a straight line segment from a captured image and determining a quadrilateral region as in Patent Document 1, when a large number of line segments are extracted from a captured image, the evaluation target of the combination of line segments is Since it increases, the amount of calculation increases, and it takes time to determine the quadrilateral area. For example, when the subject is a document, if there is a table in the document, a large number of ruled lines may be detected as line segments. In addition, when the subject is a document and the document is placed on a wood grain table, the wood grain behind the subject may be extracted as a plurality of straight lines. Thus, as the number of front ruled lines inside the subject and the texture of the straight line behind the subject increases, the number of detected straight line segments increases and it takes time to determine the quadrilateral region. That is, in a mobile terminal or the like, detecting a straight line in real time from the entire live view image and determining and displaying the quadrilateral area has a problem that the calculation amount (processing load) is too large.
上記課題を解決するために、本発明の情報処理装置は、第1の撮影画像から原稿の四辺の位置を示す第1の情報を取得する第1の取得手段と、異なる2つの撮影画像のそれぞれにおける特徴点に基づいて、前記異なる2つの撮影画像それぞれの座標系の間の座標変換に用いる変換情報を求める第2の取得手段と、前記変換情報を用いて、前記第1の取得手段で検出した第1の情報を、第2の撮影画像における原稿の四辺の位置を示す第2の情報に変換する変換手段と、前記第2の情報により示される原稿の四辺の位置に基づいて、処理対象領域を特定するためのマスクを生成するマスク生成手段と、を有し、前記第1の取得手段は、第3の撮影画像に対して前記マスクを適用することにより、前記マスクにより特定される前記第3の撮影画像における処理対象領域から、原稿の四辺を示す第3の情報を取得することを特徴とする。   In order to solve the above-described problems, an information processing apparatus according to the present invention includes a first acquisition unit that acquires first information indicating positions of four sides of a document from a first captured image, and each of two different captured images. A second acquisition means for obtaining conversion information used for coordinate conversion between the coordinate systems of each of the two different photographed images based on the feature points in, and detected by the first acquisition means using the conversion information The first information is converted into second information indicating the positions of the four sides of the document in the second photographed image, and the processing target is determined based on the positions of the four sides of the document indicated by the second information. Mask generating means for generating a mask for specifying a region, and the first acquisition means applies the mask to a third photographed image, thereby specifying the mask. Third photographed image From definitive processing target area, and acquires the third information indicating the four sides of the document.
本発明によれば、撮影画像内に原稿と背景との間の境界以外に多数の直線が存在する場合でも、以前の画像において判定された原稿領域の結果に基づき検出対象領域を制限することで、高速に原稿領域を取得することができる。   According to the present invention, even when there are many straight lines other than the boundary between the document and the background in the captured image, the detection target region is limited based on the result of the document region determined in the previous image. The document area can be acquired at high speed.
モバイル端末の外観の一例を示す図である。It is a figure which shows an example of the external appearance of a mobile terminal. モバイル端末100のハードウェアの構成の一例を示す図である。It is a figure which shows an example of a hardware structure of the mobile terminal. モバイル端末100のソフトウェア構成の一例を示す図である。It is a figure which shows an example of the software structure of the mobile terminal. モバイルアプリ302のUIを提供する画面の一例を示す図である。It is a figure which shows an example of the screen which provides UI of the mobile application. 第1の実施形態に係る原稿歪み補正処理フローを示す図である。It is a figure which shows the original distortion correction processing flow which concerns on 1st Embodiment. マスクを用いない紙面検出処理の一例を示す図である。It is a figure which shows an example of the paper surface detection process which does not use a mask. 画像位置追跡処理の一例を示す図である。It is a figure which shows an example of an image position tracking process. 座標変換処理の一例を示す図である。It is a figure which shows an example of a coordinate transformation process. マスク生成処理の一例を示す図である。It is a figure which shows an example of a mask production | generation process. マスクを用いた紙面検出処理の一例を示す図である。It is a figure which shows an example of the paper surface detection process using a mask. 歪み補正処理の一例を示す図である。It is a figure which shows an example of a distortion correction process. 第2の実施形態に係る原稿歪み補正処理フロー2を示す図である。It is a figure which shows the original distortion correction process flow 2 which concerns on 2nd Embodiment. 第2の実施形態に係るマスク生成処理の一例を示す図である。It is a figure which shows an example of the mask production | generation process which concerns on 2nd Embodiment. 第3の実施形態に係る原稿歪み補正処理フロー3を示す図である。It is a figure which shows the original distortion correction processing flow 3 concerning 3rd Embodiment. 第4の実施形態に係る原稿歪み補正処理フロー4を示す図である。It is a figure which shows the original distortion correction process flow 4 concerning 4th Embodiment. 画像外フラグを参照した紙面検出処理の一例を示す図である。It is a figure which shows an example of the paper surface detection process which referred the flag outside an image.
以下、本発明の実施形態について図面に基づいて説明する。なお、実施形態は本発明を限定するものではなく、また、実施形態で説明されている全ての構成が本発明の課題を解決するため必須の手段であるとは限らない。   Hereinafter, embodiments of the present invention will be described with reference to the drawings. The embodiments do not limit the present invention, and all the configurations described in the embodiments are not necessarily indispensable means for solving the problems of the present invention.
<第1の実施形態>
本実施形態に係る情報処理装置の一例として、カメラ機能付きのモバイル端末(携帯端末)を例に説明する。図1は、モバイル端末の外観の一例を示す図である。モバイル端末100は、各種のユニット(101〜104)を含んで構成される。モバイル端末100の前面部101には、タッチパネル102が設けられているタッチパネル102は、画像(動画)等の情報を表示するためのディスプレイ(表示部)としての機能と、ユーザのタッチ操作に応じて指示を入力するための入力部としての機能とを備えている。さらに、モバイル端末100の背面部103は、紙文書等の被写体105を撮影して撮影画像を取り込むためのカメラ104を含む。モバイル端末100のユーザは、後述のモバイルアプリ(モバイルアプリケーション)を起動させ、カメラ104を使用して被写体105の画像を撮ることによって処理を開始することができる。図1の被写体105は、A4サイズの紙文書の注文書である。なお、被写体105は、A4サイズの紙文書だけに限らず、様々なサイズの原稿を対象にすることができる。後述のモバイルアプリは、カメラ104を使用して被写体105の画像を取り込み、タッチパネル102にその画像を表示出力することができる。
<First Embodiment>
A mobile terminal with a camera function (portable terminal) will be described as an example of the information processing apparatus according to the present embodiment. FIG. 1 is a diagram illustrating an example of the appearance of a mobile terminal. The mobile terminal 100 includes various units (101 to 104). A touch panel 102 is provided on the front surface 101 of the mobile terminal 100. The touch panel 102 functions as a display (display unit) for displaying information such as an image (moving image) and a user's touch operation. And a function as an input unit for inputting an instruction. Further, the back surface portion 103 of the mobile terminal 100 includes a camera 104 for capturing an image of a subject 105 such as a paper document and capturing a captured image. The user of the mobile terminal 100 can start processing by starting a mobile application (mobile application) described later and taking an image of the subject 105 using the camera 104. The subject 105 in FIG. 1 is an order form for an A4 size paper document. Note that the subject 105 is not limited to an A4 size paper document, and can be a document of various sizes. A mobile application described later can capture an image of the subject 105 using the camera 104 and display and output the image on the touch panel 102.
図2は、モバイル端末100のハードウェアの構成の一例を示す図である。モバイル端末100は、各種のユニット(201〜207)を含んで構成される。CPU(Central Processing Unit)201は、各種のプログラムを実行し、様々な機能を実現するユニット(コンピュータ)である。RAM(Random Access Memory)202は、各種の情報を記憶するユニットである。また、RAM202は、CPU201の一時的な作業記憶領域としても利用されるユニットである。ROM(Read Only Memory)203は、各種のプログラム等を記憶する記憶媒体である。ROM203は、フラッシュメモリやSSD(Solid State Disk)やHDD(Hard Disk Drive)等の記憶媒体であればよい。そして、CPU201は、ROM203に記憶されているプログラムをRAM202にロードしてプログラムを実行する。これにより、CPU201は、図3に示されるようなモバイルアプリの各処理部として機能し、後述するシーケンスの各ステップの処理を実行する。なお、モバイルアプリの各処理部の機能及び後述するシーケンスに係る処理の全部又は一部については、CPU201で実現するものに限るものではなく、専用のハードウェアを用いて実現してもよい。   FIG. 2 is a diagram illustrating an example of a hardware configuration of the mobile terminal 100. The mobile terminal 100 includes various units (201 to 207). A CPU (Central Processing Unit) 201 is a unit (computer) that executes various programs and realizes various functions. A RAM (Random Access Memory) 202 is a unit that stores various types of information. The RAM 202 is a unit that is also used as a temporary work storage area of the CPU 201. A ROM (Read Only Memory) 203 is a storage medium for storing various programs. The ROM 203 may be a storage medium such as a flash memory, an SSD (Solid State Disk), or an HDD (Hard Disk Drive). Then, the CPU 201 loads the program stored in the ROM 203 into the RAM 202 and executes the program. Thereby, the CPU 201 functions as each processing unit of the mobile application as shown in FIG. 3 and executes processing of each step of the sequence described later. Note that the function of each processing unit of the mobile application and all or part of the processing related to a sequence to be described later are not limited to those realized by the CPU 201, and may be realized using dedicated hardware.
Input/Outputインターフェース204は、タッチパネル102とデータを送受信する。NIC(Network Interface Card)205は、モバイル端末100をネットワーク(不図示)に接続するためのユニットである。カメラユニット206は、カメラ104と接続し、被写体105の画像をモバイル端末100に取り込む。上述した各ユニットは、バス207を介してデータの送受信を行うことが可能に構成されている。   The input / output interface 204 transmits and receives data to and from the touch panel 102. A NIC (Network Interface Card) 205 is a unit for connecting the mobile terminal 100 to a network (not shown). The camera unit 206 is connected to the camera 104 and captures an image of the subject 105 into the mobile terminal 100. Each unit described above is configured to be able to transmit and receive data via the bus 207.
図3は、モバイル端末100のソフトウェア構成の一例を示す図である。図3に示されるモバイルアプリ302における各機能の処理手段303〜314(モバイルアプリの各モジュール部)を実現するプログラムは、ROM203等に記憶されている。本実施形態では、CPU201がモバイルアプリ302のプログラムを実行することによって、各処理手段303〜314として機能するものとするが、各機能をASIC等の電子回路を用いて実現するようにしても構わない。   FIG. 3 is a diagram illustrating an example of a software configuration of the mobile terminal 100. Programs for realizing the processing units 303 to 314 (function modules of the mobile application) in the mobile application 302 shown in FIG. 3 are stored in the ROM 203 or the like. In this embodiment, the CPU 201 functions as the processing units 303 to 314 by executing the program of the mobile application 302. However, each function may be realized using an electronic circuit such as an ASIC. Absent.
モバイル端末100のOS(Operating System)(不図示)は、データ管理手段301を有する。データ管理手段301は、画像やアプリケーションデータを管理する。OSは、データ管理手段301を利用するための制御API(Application Programming Interface)を提供している。モバイルアプリはその制御APIを利用することで、データ管理手段301が管理する画像、アプリケーションデータの取得や保存を行う。   An OS (Operating System) (not shown) of the mobile terminal 100 includes data management means 301. The data management unit 301 manages images and application data. The OS provides a control API (Application Programming Interface) for using the data management unit 301. The mobile application uses the control API to acquire and store images and application data managed by the data management unit 301.
モバイルアプリ302は、モバイル端末100のOSのインストール機能を利用して、各OSのアプリストア等からダウンロードおよびインストールされたアプリケーションである。モバイルアプリ302は、カメラユニット206を介して取り込んだ被写体105の撮影画像に対する各種の画像処理を行う。   The mobile application 302 is an application downloaded and installed from the application store or the like of each OS using the OS installation function of the mobile terminal 100. The mobile application 302 performs various types of image processing on the captured image of the subject 105 captured via the camera unit 206.
メイン制御手段303は、モバイルアプリ302を制御し、各モジュール(304〜314)を連携させて制御するための制御部である。   The main control means 303 is a control unit for controlling the mobile application 302 and controlling the modules (304 to 314) in cooperation with each other.
情報表示手段304は、メイン制御手段303からの指示に従い、モバイルアプリ302のユーザーインタフェース(UI)を画面に表示させてユーザに提供する。図4は、モバイルアプリ302のUI(携帯端末用のUI)を提供する画面の一例(モバイル端末画面400)を示す図である。モバイル端末画面400は、モバイル端末100のタッチパネル102に表示される。また、モバイル端末画面400では、表示および操作を行うための領域401に、カメラ104を介して取り込んだ画像を表示し、また、画像等に対するユーザによる操作(ユーザ操作)を、当該表示されたUIを介して受け付ける。なお、モバイルアプリ302のUIの形態(位置、大きさ、範囲、配置、表示内容など)は、図に示す形態に限定されるものではなく、後述する各処理を実現することができる適宜の構成を採用することができる。   The information display unit 304 displays the user interface (UI) of the mobile application 302 on the screen and provides it to the user in accordance with an instruction from the main control unit 303. FIG. 4 is a diagram illustrating an example of a screen (mobile terminal screen 400) that provides a UI (mobile terminal UI) of the mobile application 302. The mobile terminal screen 400 is displayed on the touch panel 102 of the mobile terminal 100. On the mobile terminal screen 400, an image captured via the camera 104 is displayed in an area 401 for performing display and operation, and an operation (user operation) by the user on the image or the like is displayed on the displayed UI. Accept through. Note that the UI form (position, size, range, arrangement, display content, etc.) of the mobile application 302 is not limited to the form shown in the figure, and an appropriate configuration capable of realizing each process described below. Can be adopted.
操作情報取得手段305は、情報表示手段304により表示されたUIを介してユーザ操作された内容を示す情報を取得し、当該取得した情報をメイン制御手段303に通知する。例えば、タッチパネル102に表示された領域401をユーザが手で触れると、操作情報取得手段305は、当該触れられた画面上の位置の情報を感知し、感知した位置の情報をメイン制御手段303に送信する。   The operation information acquisition unit 305 acquires information indicating the contents operated by the user via the UI displayed by the information display unit 304 and notifies the main control unit 303 of the acquired information. For example, when the user touches the area 401 displayed on the touch panel 102 with the hand, the operation information acquisition unit 305 detects information on the touched position on the screen, and sends the detected position information to the main control unit 303. Send.
撮影画像取得手段306は、カメラユニット206を介して撮影された動画像等の各撮影画像を取得し、記憶手段307に送信する。記憶手段307は、撮影画像取得手段306で取得された画像を記憶する。また、記憶手段307は、後述する原稿の頂点情報、及びモバイルアプリ302で管理するその他の一時情報を保存する。   The captured image acquisition unit 306 acquires each captured image such as a moving image captured via the camera unit 206 and transmits it to the storage unit 307. The storage unit 307 stores the image acquired by the captured image acquisition unit 306. The storage unit 307 stores document vertex information, which will be described later, and other temporary information managed by the mobile application 302.
特徴抽出手段308は、カメラユニット206を介して取得した撮影画像や、記憶手段307で一時的に記憶している画像から特徴点を抽出する。例えば、画像上の輝度の変化が大きな箇所(エッジ)等を、特徴的なピクセル点(特徴点)とし、その特徴点の特徴を表すデータ(特徴量)を算出する。特徴点および特徴量を求める手法としては、SIFT(Scale−Invariant Feature Transform)やSURF(Speeded−Up Robust Features)等の手法がある。   The feature extraction unit 308 extracts feature points from a captured image acquired via the camera unit 206 or an image temporarily stored in the storage unit 307. For example, a point (edge) or the like having a large change in luminance on the image is set as a characteristic pixel point (feature point), and data (feature amount) representing the feature of the feature point is calculated. Techniques for obtaining feature points and feature amounts include techniques such as SIFT (Scale-Invariant Feature Transform) and SURF (Speed-Up Robust Features).
紙面検出手段309は、カメラユニット206を介して取得した撮影画像から、輝度の変化が大きな箇所(エッジ)等の情報に基づいて、原稿の端部(原稿の四辺)を検出することにより、頂点情報(四辺で構成される四角形の各頂点の座標に関する情報)を取得する。なお、後述するマスク生成手段313がマスクを生成済みであれば、紙面検出手段309は、該マスクの情報を用いて原稿の四辺の検出対象領域を制限したうえで四辺検出処理(直線検出処理)を行う。   The paper surface detection unit 309 detects the edge of the document (four sides of the document) from the captured image acquired via the camera unit 206 based on information such as a portion (edge) where the luminance change is large. Information (information regarding the coordinates of each vertex of a quadrangle composed of four sides) is acquired. If a mask generation unit 313 (to be described later) has already generated a mask, the paper surface detection unit 309 restricts the detection target areas of the four sides of the document using the mask information, and then performs four-side detection processing (straight line detection processing). I do.
特徴点追跡手段310は、動画撮影した第1のフレームの撮影画像(原画像)から特徴点抽出手段308により特徴点を抽出し、比較対象の第2のフレームの撮影画像上で前記特徴点の移動位置を推定する特徴点追跡処理(オプティカルフロー)を行う。特徴点追跡処理は、原画像上の各特徴点が、比較対象の画像においてどの方向にどれだけ移動したかの移動ベクトルを推定する。これにより、原画像上の特徴点が比較対象の画像上のどの位置に移動したかを推定できる。   The feature point tracking unit 310 extracts the feature point from the captured image (original image) of the first frame obtained by moving image capturing by the feature point extracting unit 308, and the feature point is extracted on the captured image of the second frame to be compared. A feature point tracking process (optical flow) for estimating the movement position is performed. The feature point tracking process estimates a movement vector indicating how much each feature point on the original image has moved in which direction in the comparison target image. Thereby, it can be estimated to which position on the comparison target image the feature point on the original image has moved.
画像位置追跡手段311は、2つの画像(例えば、第1フレームの撮影画像と第2フレームの撮影画像)の間で、ホモグラフィー変換(Homography transform)を行うためのホモグラフィー変換行列(以下、変換行列)を算出し、これを用いて画像間の位置合わせを行う。ホモグラフィー変換は、ある平面座標系上の点を、異なる平面座標系上に移動させる変換である。類似の変換方法として、画像の回転、平行移動、拡大縮小を行うアフィン変換があるが、ホモグラフィー変換は、それらに加えて、座標位置に応じて拡大縮小の比率を変え、台形状の変換が可能となる。ホモグラフィー変換は、画像上の座標点(x1,y1)、変換後の画像上の座標点(x2,y2)、変換行列H、定数sを用いて以下のように表される。なお、変換行列の数式は、下記の数式(行列式)での表現に限るものではなく、2つの画像の座標系を変換するための変換式であれば、その他の形態であっても構わない。このような変換式(変換行列)は、2つの画像の座標系を変換する際の変換情報として使用される。   The image position tracking means 311 is a homography transformation matrix (hereinafter referred to as transformation) for performing a homography transformation between two images (for example, a photographed image of the first frame and a photographed image of the second frame). Matrix) is calculated and used to perform alignment between images. The homography transformation is a transformation that moves a point on a plane coordinate system to a different plane coordinate system. Similar conversion methods include affine transformations that rotate, translate, and scale images. In addition to these, homography transforms a trapezoidal transformation by changing the scaling ratio according to the coordinate position. It becomes possible. The homography transformation is expressed as follows using the coordinate point (x1, y1) on the image, the coordinate point (x2, y2) on the transformed image, the transformation matrix H, and the constant s. The mathematical expression of the transformation matrix is not limited to the expression by the following mathematical expression (determinant), and may be in any other form as long as it is a transformation expression for transforming the coordinate system of two images. . Such a conversion formula (conversion matrix) is used as conversion information when converting the coordinate system of two images.
2つの画像間に同じ被写体から抽出される特徴点が存在している場合、特徴点追跡手段310のマッチング処理で求められた画像間の対応点座標をもとに、変換行列Hの各パラメータを算出する。これにより、2つの画像間の変換行列を求め、第1の画像中の座標を第2の画像中にマッピングすることや、変換行列の逆行列を求めて、その逆のマッピングをおこなうことが可能となる。   When feature points extracted from the same subject exist between two images, each parameter of the transformation matrix H is calculated based on the corresponding point coordinates between images obtained by the matching processing of the feature point tracking unit 310. calculate. This makes it possible to obtain a transformation matrix between two images and map the coordinates in the first image into the second image, or obtain the inverse matrix of the transformation matrix and perform the inverse mapping It becomes.
座標変換手段312は、原画像で検出された原稿領域の頂点情報を、画像位置追跡手段311で求めた変換行列を用いて比較画像上の座標に変換する。   The coordinate conversion unit 312 converts the vertex information of the document area detected in the original image into coordinates on the comparison image using the conversion matrix obtained by the image position tracking unit 311.
マスク生成手段313は、座標変換手段312により変換された比較画像上の座標に基づきマスクを生成する。   The mask generation unit 313 generates a mask based on the coordinates on the comparison image converted by the coordinate conversion unit 312.
歪み補正手段314は、撮影画像において判定された原稿領域の頂点情報(原稿の四辺に関する情報)と、出力画像のサイズ情報(原稿のサイズ情報)とに基づいて、原稿画像を幾何補正(歪み補正)することにより、歪みの無い画像を取得する。具体的には、撮影画像において判定された原稿領域から得た頂点座標を、所定の原稿サイズの矩形に変換する変換行列を取得し、これを用いて撮影画像の各画素を出力画像の対応画素に変換する。   The distortion correction unit 314 performs geometric correction (distortion correction) on the document image based on the vertex information (information on the four sides of the document) determined in the photographed image and the size information (document size information) of the output image. ) To obtain an image without distortion. Specifically, a conversion matrix for converting the vertex coordinates obtained from the document area determined in the photographed image into a rectangle of a predetermined document size is obtained, and each pixel of the photographed image is used as a corresponding pixel of the output image using this. Convert to
[原稿歪み補正処理フロー]
次に、モバイル端末100のモバイルアプリ302が実行する本発明の原稿歪み補正処理フローについて、図5を用いて説明する。なお、ここでは、S510で「撮影された」と判断するまで、カメラユニットから順次入力される画像に対して処理を複数回繰り返すものとし、それぞれ1回目の処理、2回目の処理等、処理回数毎に説明する。
[Original Distortion Correction Processing Flow]
Next, the document distortion correction processing flow of the present invention executed by the mobile application 302 of the mobile terminal 100 will be described with reference to FIG. Here, it is assumed that the processing is repeated a plurality of times for the images sequentially input from the camera unit until it is determined that the image has been photographed in S510, and the number of processing such as the first processing, the second processing, etc. Each will be explained.
本フローは、ユーザの操作に応じて、モバイル端末100におけるモバイルアプリ302が起動され、カメラユニット206を介して被写体105の撮影画像(動画)を取得することをトリガーとして開始される。   This flow is triggered by the activation of the mobile application 302 in the mobile terminal 100 in response to a user operation and acquisition of a captured image (moving image) of the subject 105 via the camera unit 206.
ステップS501で、撮影画像取得手段306は、カメラユニット206を介して撮影画像を取得する。   In step S <b> 501, the captured image acquisition unit 306 acquires a captured image via the camera unit 206.
ステップS502で、メイン制御手段303は、検出された原稿四辺の頂点の位置座標を示す頂点情報を、保存済みであるか否かを判断する。頂点情報を保存済みであればステップS511に遷移し、そうでなければステップS503に遷移する。1回目の処理、すなわちモバイルアプリ302の起動直後では、頂点情報は未だ保存されていないため、必ずステップS503への遷移となる。   In step S502, the main control unit 303 determines whether or not the vertex information indicating the position coordinates of the detected vertexes of the four sides of the document has been saved. If the vertex information has been saved, the process proceeds to step S511; otherwise, the process proceeds to step S503. Immediately after the first process, that is, immediately after the start of the mobile application 302, the vertex information has not been saved yet, so the process always transitions to step S503.
ステップS503において、メイン制御手段303は、画像位置追跡カウンターを0に初期化する。画像位置追跡カウンターは後述するステップS513及びステップS514で参照される。   In step S503, the main control unit 303 initializes an image position tracking counter to zero. The image position tracking counter is referred to in step S513 and step S514 described later.
ステップS504において、紙面検出手段309は、撮影画像に対して紙面検出処理(原稿の四辺を検出する処理)を実行する。すなわち、紙面検出手段309は、撮影画像内の検出処理対象領域において、輝度の変化が大きな箇所(エッジ)を検出し、原稿の端部(原稿の四辺)を検出することにより、頂点情報(四角形を構成する各頂点の座標に関する情報)を取得する。なお、後述するステップS515においてマスクが生成されていれば、マスクを用いた紙面検出処理(マスクされていない領域を検出処理対象領域とした紙面検出処理)が実行される。マスクを用いない紙面検出処理(撮影画像全体に対する紙面検出処理)の詳細は、図6を用いて後述する。また、マスクを用いた紙面検出処理の詳細は、図10を用いて後述する。   In step S504, the paper surface detection unit 309 performs paper surface detection processing (processing for detecting four sides of the document) on the captured image. In other words, the paper surface detection unit 309 detects a point (edge) where the luminance change is large in the detection processing target area in the photographed image, and detects the edge of the document (four sides of the document), thereby obtaining vertex information (rectangle). Information on the coordinates of the vertices constituting the). If a mask has been generated in step S515, which will be described later, a paper surface detection process using the mask (paper surface detection process using an unmasked area as a detection process target area) is executed. Details of the paper surface detection process without using a mask (paper surface detection process for the entire captured image) will be described later with reference to FIG. Details of the paper surface detection process using the mask will be described later with reference to FIG.
ステップS505において、メイン制御手段303は、ステップS504で頂点情報を取得できたか否かを判断する。頂点情報が取得されていればステップS506に遷移し、そうでなければステップS507に遷移する。ステップS506では、頂点情報を記憶手段307に一時保存し、ステップS508に遷移する。ステップS507では、記憶手段307に保存済みの頂点情報をリセットし、ステップS501へ遷移する。   In step S505, the main control unit 303 determines whether or not vertex information has been acquired in step S504. If the vertex information has been acquired, the process proceeds to step S506, and if not, the process proceeds to step S507. In step S506, the vertex information is temporarily stored in the storage unit 307, and the process proceeds to step S508. In step S507, the vertex information stored in the storage unit 307 is reset, and the process proceeds to step S501.
ステップS508において、メイン制御手段303は、後述するステップS511における画像位置追跡処理のために、撮影画像を記憶手段307で一時保存する。   In step S508, the main control unit 303 temporarily stores the captured image in the storage unit 307 for image position tracking processing in step S511 described later.
ステップS509において、情報表示手段304は、撮影画像に該撮影画像に対応する頂点情報を重畳して、図4の領域401に表示する。   In step S509, the information display unit 304 superimposes the vertex information corresponding to the photographed image on the photographed image and displays it in the region 401 of FIG.
ステップS510において、メイン制御手段303は、ユーザにより撮影操作が行われたか否かを判断する。撮影操作とは、モバイル端末画面400に表示された撮影ボタンもしくはモバイル端末に設けられた撮影用のハードウェアキーを、ユーザが押下する操作(いわゆるシャッターを切るための操作)である。撮影されたと判断した場合、ステップS516に遷移し、そうでなければステップS501に遷移する。なお、ステップS510の処理は、ユーザによるボタン操作やキー操作に限るものではなく、メイン制御手段303が撮影可否を判断して自動的に撮影操作を実行するようにしても良い。例えば、メイン制御部303が、撮影画像のボケ度合などの画質を評価して、画質が所定の閾値以上に達したと判断した時点で自動的に撮影操作を行うようにしてもよい。あるいは、モバイル端末100が有する加速度センサ(不図示)を用いて、モバイル端末100が一定時間静止した場合に自動的に撮影操作を行う。   In step S510, the main control unit 303 determines whether or not a shooting operation has been performed by the user. The photographing operation is an operation (so-called shutter operation) in which the user presses a photographing button displayed on the mobile terminal screen 400 or a photographing hardware key provided on the mobile terminal. If it is determined that the image has been shot, the process proceeds to step S516; otherwise, the process proceeds to step S501. Note that the processing in step S510 is not limited to a button operation or key operation by the user, and the main control unit 303 may determine whether or not shooting is possible and automatically execute the shooting operation. For example, the main control unit 303 may evaluate the image quality such as the degree of blur of the photographed image and automatically perform the photographing operation when it is determined that the image quality has reached a predetermined threshold value or more. Alternatively, an imaging operation is automatically performed when the mobile terminal 100 is stationary for a certain period of time using an acceleration sensor (not shown) of the mobile terminal 100.
前述のように、1回目の処理のステップS506で頂点情報が保存された場合、2回目の処理のステップS502では、頂点情報が保存されていると判断して、ステップS511に遷移する。ステップS511において、画像位置追跡手段311は、1回目の処理のステップS508で保存された撮影画像から抽出される特徴点と、2回目の処理のステップS501で取得した撮影画像から抽出される特徴点とを用いて、画像位置追跡処理を行い、変換行列を取得する。画像位置追跡処理の詳細は、図7を用いて後述する。なお、以下では、2つの画像間の座標変換に用いる変換情報を「変換行列」として説明するが、前述の画像位置追跡処理部312の説明において説明したように、行列式の表現に限るものではなく、その他の変換式や変換情報であっても構わない。   As described above, when the vertex information is stored in step S506 of the first process, in step S502 of the second process, it is determined that the vertex information is stored, and the process proceeds to step S511. In step S511, the image position tracking unit 311 extracts the feature points extracted from the captured image stored in step S508 of the first process and the feature points extracted from the captured image acquired in step S501 of the second process. Are used to perform image position tracking processing and obtain a transformation matrix. Details of the image position tracking process will be described later with reference to FIG. In the following, conversion information used for coordinate conversion between two images is described as a “conversion matrix”. However, as described in the description of the image position tracking processing unit 312 described above, the conversion information is not limited to expression of a determinant. Alternatively, other conversion formulas or conversion information may be used.
ステップS512において、座標変換手段312は、1回目の処理のステップS506で保存された頂点情報を、S511で求めた変換行列を用いて座標変換する。座標変換処理の詳細は、図8を用いて後述する。ここで座標変換された頂点情報が、2回目の処理の撮影画像に対応する頂点情報として、後段のステップS509で表示に用いられる。   In step S512, the coordinate conversion unit 312 converts the vertex information stored in step S506 of the first process using the conversion matrix obtained in step S511. Details of the coordinate conversion processing will be described later with reference to FIG. The vertex information whose coordinates are converted here is used for display in step S509 in the subsequent stage as vertex information corresponding to the captured image of the second process.
次に、ステップS513において、メイン制御手段303は、画像追跡カウンターが閾値Tより小さいか否かを判断し、小さければステップS514へ遷移し、そうでなければステップS515へ遷移する。閾値Tは任意の値を設定可能であるが、本実施形態では閾値T=5とする。この場合、2回目から6回目の処理ではステップS514への遷移となり、7回目の処理でステップS515へ遷移する。   Next, in step S513, the main control unit 303 determines whether or not the image tracking counter is smaller than the threshold value T. If it is smaller, the process proceeds to step S514, and if not, the process proceeds to step S515. Although an arbitrary value can be set as the threshold T, in the present embodiment, the threshold T = 5. In this case, in the second to sixth processes, the process proceeds to step S514, and in the seventh process, the process proceeds to step S515.
ステップS514において、メイン制御手段303は、画像位置追跡カウンターを1インクリメントし、ステップS508に遷移する。   In step S514, the main control unit 303 increments the image position tracking counter by 1, and proceeds to step S508.
ステップS515において、マスク生成手段313は、撮影画像に対して紙面検出の対象領域を制限するためのマスクを生成し、ステップS503に遷移する。マスクは、ステップS512で得た座標変換された頂点情報に基づき生成される。マスク生成処理の詳細は、図9を用いて後述する。マスクが生成された場合、ステップS504では、当該生成されたマスクを用いた紙面検出処理が実行される。マスクを用いた紙面検出処理の詳細は、図10を用いて後述する。   In step S515, the mask generation unit 313 generates a mask for limiting the target area of the paper surface detection for the captured image, and the process proceeds to step S503. The mask is generated based on the vertex information obtained by the coordinate conversion obtained in step S512. Details of the mask generation processing will be described later with reference to FIG. When the mask is generated, in step S504, a paper surface detection process using the generated mask is executed. Details of the paper surface detection process using the mask will be described later with reference to FIG.
ステップS516において、歪み補正手段314は、撮影画像の歪みを補正して補正画像を出力する。歪み補正処理の詳細は、図11を用いて後述する。   In step S516, the distortion correction unit 314 corrects the distortion of the captured image and outputs a corrected image. Details of the distortion correction processing will be described later with reference to FIG.
上述したように、S504の紙面検出処理で頂点情報が得られた後の連続したT枚(本例では5枚)の撮影画像に対しては、S504の紙面検出処理ではなく、S511の画像位置追跡処理とS512の座標変換処理とによりそれらの撮影画像上での頂点座標を求めることになる。すなわち、それらの撮影画像上での頂点情報は、過去の撮影画像から得た頂点情報をS512で座標変換することで求められる。そのため、S511の画像位置追跡処理に比べて低速なS504の紙面検出処理を実行する回数が抑えられる。また、T枚の処理中は画像位置追跡処理により求めた変換行列が順に掛け合わせ続けられるため、追跡誤差が蓄積していくことになるが、T枚毎にこれがリセットされてS504の紙面検出処理が実行されるため、追跡誤差の影響を低減できる。すなわち、画像位置追跡処理により求めた変換行列の掛け合わせ回数が所定回数(5回)より大きくなる場合に、紙面検出処理による原稿の四辺の検出処理が行われるので、追跡誤差をリセットできる。   As described above, the image position of S511, not the paper surface detection process of S504, is applied to continuous T (5 in this example) captured images after the vertex information is obtained in the paper surface detection process of S504. The vertex coordinates on the captured image are obtained by the tracking process and the coordinate conversion process of S512. That is, the vertex information on those captured images is obtained by performing coordinate conversion of the vertex information obtained from the past captured images in S512. Therefore, the number of times of executing the paper surface detection process of S504, which is slower than the image position tracking process of S511, can be suppressed. Further, during the processing of T sheets, the conversion matrix obtained by the image position tracking process is continuously multiplied in order, so that tracking errors accumulate. Therefore, the influence of tracking error can be reduced. That is, when the number of multiplications of the conversion matrix obtained by the image position tracking process is greater than the predetermined number (5 times), the four-sided detection process of the document by the paper surface detection process is performed, so that the tracking error can be reset.
[マスクを用いない紙面検出処理]
図6は、紙面検出手段309が行う紙面検出処理の概念を表す模式図である。図6では、マスクを用いずに、撮影画像全体に対して紙面検出処理を行う場合について説明する。図6(a)は撮影画像600を表し、撮影画像内には、原稿と背景の境界を示す原稿境界601が含まれている。
[Paper detection without mask]
FIG. 6 is a schematic diagram showing the concept of the paper surface detection process performed by the paper surface detection unit 309. FIG. 6 illustrates a case where the paper surface detection process is performed on the entire captured image without using a mask. FIG. 6A shows a photographed image 600, and the photographed image includes a document boundary 601 indicating a boundary between the document and the background.
紙面検出手段309は、撮影画像600から候補線分群を取得する線分検出処理を行う。線分検出処理は、撮影画像600からCanny法などの公知のエッジ検出方法を適用後、Hough変換などの公知の直線検出方法を適用することにより、原稿境界を構成する四辺の候補線分を検出する。図6(b)は、撮影画像600に候補線分群602〜606を重畳した画像である。検出された候補線分群には、候補線分602のように原稿境界601以外から検出される線分が含まれる。   The paper surface detection unit 309 performs line segment detection processing for acquiring a candidate line segment group from the captured image 600. In the line segment detection process, after applying a known edge detection method such as the Canny method from the captured image 600, a known straight line detection method such as a Hough transform is applied to detect the candidate line segments on the four sides constituting the document boundary. To do. FIG. 6B is an image in which candidate line segment groups 602 to 606 are superimposed on the captured image 600. The detected candidate line segment group includes line segments detected from other than the document boundary 601 such as the candidate line segment 602.
次に、紙面検出手段309は、候補線分群の中から、原稿境界601の各辺を最も良く表す候補線分603、604、605、606を特定する。具体的には、候補線分群から任意の4本の候補線分を抽出し、それらが成す四角形の領域に対して評価を行い、評価値が最も高い候補線分の組を選択する。四角形領域の評価は、例えば対辺の長さの比や内角の大きさ、アスペクト比などの幾何情報に基づいて行う。または、四角形を構成する辺と頂点について、内側と外側の色味や分散を比較することによって評価するようにしても良い。   Next, the paper surface detection unit 309 identifies candidate line segments 603, 604, 605, and 606 that best represent each side of the document boundary 601 from the group of candidate line segments. Specifically, arbitrary four candidate line segments are extracted from the candidate line segment group, evaluation is performed on a rectangular area formed by them, and a set of candidate line segments having the highest evaluation value is selected. The evaluation of the rectangular area is performed based on geometric information such as the ratio of the length of opposite sides, the size of the inner angle, and the aspect ratio. Or you may make it evaluate by comparing the color and dispersion | distribution of an inner side and an outer side about the edge | side and vertex which comprise a rectangle.
最後に、選択された四角形領域の頂点を頂点情報として保持する。図6(c)は、候補線分群から特定された四角形領域607を撮影画像600に重畳した画像である。頂点情報は、四角形領域607の頂点608、609、610、611の位置座標を示すものとする。   Finally, the vertex of the selected rectangular area is held as vertex information. FIG. 6C is an image in which a quadrangular region 607 identified from the candidate line segment group is superimposed on the captured image 600. The vertex information indicates the position coordinates of the vertices 608, 609, 610, and 611 of the rectangular area 607.
[画像位置追跡処理]
図7は、画像位置追跡手段311が行う画像位置追跡処理を表す模式図である。撮影画像700、701、702、703は、撮影画像取得手段306で連続的に取得した撮影画像である。最初の撮影画像700に対しては、ステップS504の紙面検出処理により頂点情報が取得され、ステップS508で画像位置追跡用の画像として保存されたものとする。その後、ステップS501の処理で次の撮影画像701が取得されたとする。このとき、画像位置追跡手段311は、ステップS511において、特徴点追跡手段310により撮影画像700から抽出される特徴点群704と撮影画像701から抽出される特徴点群705とを比較することにより、対応する特徴点間の座標位置に基づいて、撮影画像700と撮影画像701との間の変換行列706を算出する。すなわち、変換行列706は、撮影画像700上の座標から、該座標に対応付く撮影画像701上の座標を特定するための変換行列であるので、撮影画像700上の四角形の頂点の座標に該変換行列を掛け合わせれば、撮影画像701上の四角形の頂点の座標を求めることができる。同様に、撮影画像701の特徴点群特徴点群705と撮影画像702の特徴点群707とを比較することにより、変換行列708を算出することができる。さらに、撮影画像702の特徴点群707と撮影画像703の特徴点群709とを比較することにより、変換行列710を算出することができる。このように求めた変換行列706、708、710を順次掛け合わせていくことにより、撮影画像間の位置を追跡することができる。図8は、座標変換手段312がステップS512で行う座標変換処理の概要を表す模式図である。座標変換手段312は、S506で保存しておいた撮影画像700の頂点情報800に対して、撮影画像700と撮影画像701との特徴点比較に基づいて求めた変換行列706を掛け合わせることにより画像位置追跡処理を実行し、撮影画像701における頂点情報801を算出する。同様に、撮影画像702に対応する頂点情報802は、頂点情報801に対して変換行列708を掛け合わせることにより求められる。さらに頂点情報803は、頂点情報802に対して変換行列710を掛け合わせることにより求められる。
[Image position tracking processing]
FIG. 7 is a schematic diagram showing image position tracking processing performed by the image position tracking unit 311. The captured images 700, 701, 702, and 703 are captured images continuously acquired by the captured image acquisition unit 306. For the first photographed image 700, it is assumed that the vertex information is acquired by the paper surface detection process in step S504 and stored as an image position tracking image in step S508. Thereafter, it is assumed that the next captured image 701 is acquired in the process of step S501. At this time, the image position tracking unit 311 compares the feature point group 704 extracted from the photographed image 700 by the feature point tracking unit 310 with the feature point group 705 extracted from the photographed image 701 in step S511. A conversion matrix 706 between the captured image 700 and the captured image 701 is calculated based on the coordinate position between corresponding feature points. That is, since the transformation matrix 706 is a transformation matrix for specifying the coordinates on the photographed image 701 that correspond to the coordinates from the coordinates on the photographed image 700, the transformation matrix 706 is converted into the coordinates of the vertices of the quadrangle on the photographed image 700. By multiplying the matrix, the coordinates of the vertices of the quadrangle on the captured image 701 can be obtained. Similarly, the transformation matrix 708 can be calculated by comparing the feature point group feature point group 705 of the photographed image 701 and the feature point group 707 of the photographed image 702. Further, the transformation matrix 710 can be calculated by comparing the feature point group 707 of the photographed image 702 and the feature point group 709 of the photographed image 703. By sequentially multiplying the conversion matrices 706, 708, and 710 thus obtained, the position between the captured images can be tracked. FIG. 8 is a schematic diagram illustrating an outline of the coordinate conversion process performed by the coordinate conversion unit 312 in step S512. The coordinate conversion unit 312 multiplies the vertex information 800 of the captured image 700 stored in S506 by the transformation matrix 706 obtained based on the feature point comparison between the captured image 700 and the captured image 701. A position tracking process is executed, and vertex information 801 in the captured image 701 is calculated. Similarly, the vertex information 802 corresponding to the captured image 702 is obtained by multiplying the vertex information 801 by the transformation matrix 708. Further, the vertex information 803 is obtained by multiplying the vertex information 802 by the transformation matrix 710.
[マスク生成処理]
図9は、マスク生成手段313が行うマスク生成処理の概念を表す模式図である。ここでは撮影画像900に対して、ステップS512の座標変換処理により頂点情報901が求められたものとする。頂点情報901は、四角形領域902を構成する各頂点である。マスク生成手段313は、四角形領域902に対して、各辺の近傍Wピクセルの領域を非マスク領域903、それ以外の領域をマスク領域904とするマスク905を生成する。Wは任意の値を設定することができる。本実施形態では、W=(四角形領域の最短辺長)×0.2とする。これにより、画像サイズや対象とする原稿の画像内サイズが変わっても対応可能である。
[Mask generation processing]
FIG. 9 is a schematic diagram showing the concept of the mask generation process performed by the mask generation unit 313. Here, it is assumed that the vertex information 901 is obtained for the captured image 900 by the coordinate conversion processing in step S512. The vertex information 901 is each vertex constituting the quadrangular area 902. The mask generation unit 313 generates a mask 905 with respect to the quadrangular region 902, in which the region of the neighboring W pixel on each side is a non-mask region 903 and the other region is a mask region 904. W can be set to an arbitrary value. In the present embodiment, W = (the shortest side length of the quadrangular region) × 0.2. As a result, it is possible to cope with changes in the image size and the size of the target document image.
[マスクを用いた紙面検出処理]
図10は、紙面検出手段309が行うマスクを用いた紙面検出処理を表す模式図である。撮影画像900に対してマスク生成手段で生成されたマスク905を適用すると、図10のようなマスク適用後の画像1000が得られる。マスク領域904は、紙面検出処理の対象範囲外とし、該マスク領域からは候補線分を検出しない。すなわち、マスク適用後の画像1000において、非マスク領域903を候補線分検出処理の処理対象領域とし、マスク領域904を処理対象領域から外すことになる。マスク適用画像1000の非マスク領域から得られる候補線分群1001は、マスクを用いずに撮影画像全体から紙面検出処理により候補線分を検出する場合に比べて、候補線分の数が大幅に削減される。したがって、検出処理の対象領域が減るので紙面検出処理の処理速度も向上し、また、候補線分の数が減るので候補線分の誤認識も減ること(識別精度の向上)が期待できる。
[Paper detection using mask]
FIG. 10 is a schematic diagram illustrating a paper surface detection process using a mask performed by the paper surface detection unit 309. When the mask 905 generated by the mask generation unit is applied to the captured image 900, an image 1000 after the mask application as shown in FIG. 10 is obtained. The mask area 904 is outside the target area of the paper surface detection process, and no candidate line segment is detected from the mask area. That is, in the image 1000 after the mask application, the non-mask area 903 is set as a process target area for candidate line segment detection processing, and the mask area 904 is excluded from the process target area. In the candidate line segment group 1001 obtained from the non-mask area of the mask application image 1000, the number of candidate line segments is significantly reduced as compared with the case where the candidate line segments are detected from the entire captured image by the paper surface detection process without using the mask. Is done. Accordingly, it is expected that the processing speed of the paper surface detection process is improved because the target area of the detection process is reduced, and that the number of candidate line segments is reduced, so that erroneous recognition of candidate line segments is reduced (improvement of identification accuracy).
[歪み補正処理]
図11は、歪み補正手段314が行う歪み補正処理の概念を表す模式図である。撮影画像600において求められた四角形領域の頂点608、609、610、611を、あらかじめ決められた出力画像のサイズ(例えばA4サイズ)の頂点1101、1102、1103、1104に合うように変換することで、歪みの無い補正画像1100が得られる。
[Distortion correction processing]
FIG. 11 is a schematic diagram illustrating the concept of distortion correction processing performed by the distortion correction unit 314. By converting the vertices 608, 609, 610, and 611 of the rectangular area obtained in the photographed image 600 to fit the vertices 1101, 1102, 1103, and 1104 of a predetermined output image size (for example, A4 size). A corrected image 1100 without distortion is obtained.
すなわち、歪み補正手段314は、撮影画像600における頂点情報と出力画像における頂点情報とに基づいて、歪み補正情報(変換行列)を算出し、これを用いて歪みのない原稿画像を生成する。出力画像の頂点情報は、例えばA4縦サイズの300DPIの画像を生成したい場合、縦3510ピクセル、横2480ピクセルの矩形の4頂点座標となる。歪み補正情報は、原稿領域が台形状に歪んでいる場合を考慮し、射影変換行列となる。射影変換行列は、撮影画像内の頂点情報と出力画像の頂点情報から公知の方法により算出できる。なお、処理速度を優先する場合には、アフィン変換行列や単純な変倍率を歪み補正情報として用いて算出しても良い。歪み補正手段314は、撮影画像600内の頂点608、609、610、611で示される四角形の原稿領域に対してのみ歪み補正処理を施すことで、撮影画像内から原稿領域だけを取り出した画像を出力できる。   That is, the distortion correction unit 314 calculates distortion correction information (conversion matrix) based on the vertex information in the photographed image 600 and the vertex information in the output image, and generates a document image without distortion using this. The vertex information of the output image is, for example, the coordinates of four vertices of a rectangle of 3510 pixels in the vertical direction and 2480 pixels in the horizontal direction when generating an A4 vertical size 300 DPI image. The distortion correction information is a projective transformation matrix in consideration of the case where the document area is distorted in a trapezoidal shape. The projective transformation matrix can be calculated by a known method from the vertex information in the captured image and the vertex information of the output image. When priority is given to the processing speed, an affine transformation matrix or a simple scaling factor may be used as distortion correction information. The distortion correction unit 314 performs distortion correction processing only on the rectangular document areas indicated by the vertices 608, 609, 610, and 611 in the photographed image 600, thereby obtaining an image obtained by extracting only the document area from the photographed image. Can output.
以上のように、第1の実施形態によれば、原稿と背景の境界以外にも多数の直線が撮影画像内に存在する場合でも、マスクを設定して処理対象領域を制限することにより、不要な線分の検出が抑えられるので、高速に原稿領域を識別でき且つ識別精度も向上する。   As described above, according to the first embodiment, even when a large number of straight lines exist in the captured image in addition to the boundary between the document and the background, it is unnecessary by setting the mask to limit the processing target area. Since the detection of a straight line segment is suppressed, the document area can be identified at high speed and the identification accuracy is improved.
<第1の実施形態の第1の変形例>
前述した第1の実施形態では、マスク生成手段313が生成する非マスク領域の幅Wは四角形領域のサイズにのみ依存して決定していた。これに対し本変形例では、画像位置追跡手段311の追跡誤差も考慮して非マスク領域の幅Wを決定するようにしても良い。特徴点群A1と特徴点群Bとの間における変換行列を算出した場合、誤差は、特徴点群A1に該変換行列を掛け合わせた場合に得られる特徴点群A2と特徴点群Bとの間の距離平均として得られる。また、特徴点追跡手段310による特徴点群の対応関係から誤差を算出するようにしても良い。この誤差に対して単調増加するように非マスク領域の幅Wを設定する。これにより、画像位置追跡手段311の追跡精度も考慮しながら非マスク領域の幅Wを決定することができる。
<First Modification of First Embodiment>
In the first embodiment described above, the width W of the non-mask area generated by the mask generation unit 313 is determined only depending on the size of the rectangular area. On the other hand, in this modification, the width W of the non-mask area may be determined in consideration of the tracking error of the image position tracking unit 311. When the transformation matrix between the feature point group A1 and the feature point group B is calculated, the error is the difference between the feature point group A2 and the feature point group B obtained when the feature point group A1 is multiplied by the transformation matrix. Obtained as the average distance between. Further, the error may be calculated from the feature point group correspondence by the feature point tracking unit 310. The width W of the non-mask area is set so as to increase monotonously with respect to this error. Thereby, the width W of the non-mask area can be determined in consideration of the tracking accuracy of the image position tracking unit 311.
またWは、紙面検出手段309により候補線分を算出した際の誤差に基づき設定しても良い。原稿に折れや曲がりなど物理的な変形がある場合、原稿境界を直線で近似した際に誤差が生じる。この誤差に単調増加するようにWを設定することで、紙面検出手段309の誤差を考慮することができる。   Further, W may be set based on an error when the candidate line segment is calculated by the paper surface detection unit 309. If the document has physical deformation such as bending or bending, an error occurs when the document boundary is approximated by a straight line. By setting W so as to increase monotonously with this error, the error of the paper surface detection means 309 can be taken into account.
<第1の実施形態の第2の変形例>
前述した第1の実施形態では、画像位置追跡処理は常に成功するものとして説明したが、例えば撮影画像全体が大きく変化するような連続画像が入力されると、画像位置追跡処理に失敗する場合がある。例えば、モバイル端末が大きく動いた場合や、照明装置のON/OFF切り替えなどにより撮影画像から抽出できる特徴点の数が変わった場合などである。そこで、ステップS511において画像位置追跡処理の正否を判定し、失敗した場合にステップS503に遷移し紙面検出処理を実行しても良い。画像位置追跡処理の失敗判定は、例えば特徴点追跡手段310により対応付いた特徴点の組が4点以上得られたかどうかを判定することで実現できる。
<Second Modification of First Embodiment>
In the first embodiment described above, it has been described that the image position tracking process always succeeds. However, for example, when a continuous image that greatly changes the entire captured image is input, the image position tracking process may fail. is there. For example, when the mobile terminal moves greatly, or when the number of feature points that can be extracted from the photographed image changes due to ON / OFF switching of the illumination device. Accordingly, whether the image position tracking process is correct or not is determined in step S511, and if it fails, the process may proceed to step S503 to execute the paper surface detection process. The failure determination of the image position tracking process can be realized, for example, by determining whether or not four or more feature point pairs associated with the feature point tracking unit 310 have been obtained.
<第1の実施形態の第3の変形例>
前述した第1の実施形態では、マスク905は非マスク領域903とマスク領域904の2種類の情報のみを有したが、さらに、原稿境界の四辺の位置に関する情報を持たせても良い。例えば、左上頂点と左下頂点を端点とする左辺の近傍領域を左辺抽出領域として、左辺の候補線分を検出するようにしてもよい。同様に、上辺、右辺、下辺も同様に領域設定することにより、各辺に対応した抽出領域から候補線分を高速に抽出できるようになる。
<Third Modification of First Embodiment>
In the first embodiment described above, the mask 905 has only two types of information, that is, the non-mask area 903 and the mask area 904. However, the mask 905 may have information on the positions of the four sides of the document boundary. For example, a left-side candidate line segment may be detected by setting a left-side extraction region as a left-side extraction region having endpoints at the upper-left vertex and the lower-left vertex. Similarly, by setting the upper side, the right side, and the lower side in the same manner, candidate line segments can be extracted at high speed from the extraction region corresponding to each side.
<第2の実施形態>
第1の実施形態で説明したマスク生成手段313の処理は、直前の撮影画像に対して求めた頂点情報を用いてマスクを生成していた。第2の実施形態では、複数フレーム分の撮影画像それぞれに対して求めた頂点情報に基づいて、マスクを生成するものとする。複数枚の撮影画像から得られた頂点情報を統合してマスクを生成することにより、一度原稿領域を誤認識したとしても、それより前の撮影画像に対して求めた頂点情報を考慮するので、マスクしすぎる可能性を減らすことができる。
<Second Embodiment>
The process of the mask generation unit 313 described in the first embodiment generates a mask using the vertex information obtained for the immediately preceding captured image. In the second embodiment, a mask is generated based on vertex information obtained for each of a plurality of frames of captured images. By combining the vertex information obtained from multiple shot images and generating a mask, even if the document area is misrecognized once, the vertex information obtained for the previous shot image is taken into account, so The possibility of overmasking can be reduced.
第2の実施形態の原稿歪み補正処理フローについて図12を用いて説明する。なお、第1の実施形態の図5におけるステップS506、S507、S509、S515がそれぞれステップS1201、S1202、S1203、S1204に変更となる。さらに、ステップS1202からステップS508へ遷移する。その他の処理ステップは変更がないので説明を省略する。   A document distortion correction processing flow according to the second embodiment will be described with reference to FIG. Note that steps S506, S507, S509, and S515 in FIG. 5 of the first embodiment are changed to steps S1201, S1202, S1203, and S1204, respectively. Furthermore, the process proceeds from step S1202 to step S508. The other processing steps are not changed and will not be described.
紙面検出処理で頂点情報が取得できたかどうかを図12のステップS505で判断し、取得できた場合はステップS1201に遷移し、そうでなかった場合はステップS1202に遷移する。   It is determined in step S505 in FIG. 12 whether or not vertex information has been acquired by the paper surface detection process. If it has been acquired, the process proceeds to step S1201, and if not, the process proceeds to step S1202.
ステップS1201において、メイン制御手段303は、当該取得した頂点情報を記憶手段307上の頂点情報リストに追加する。頂点情報リストは、紙面検出手段309で得た頂点情報を保持するリストである。   In step S1201, the main control unit 303 adds the acquired vertex information to the vertex information list on the storage unit 307. The vertex information list is a list that holds the vertex information obtained by the paper surface detection unit 309.
ステップS1202において、メイン制御手段303は、空データを記憶手段307上の頂点情報リストに追加する。   In step S <b> 1202, the main control unit 303 adds empty data to the vertex information list on the storage unit 307.
ステップS1203において、情報表示手段304は、撮影画像及び頂点情報を図4の領域401に表示する。ここで表示される頂点情報は、現在の撮影画像に対してステップS504で紙面検出処理が実行されていれば頂点情報リストの末尾に追加された頂点情報を表示し、そうでなければステップS512で座標変換手段312により取得された頂点情報を表示する。   In step S1203, the information display unit 304 displays the captured image and the vertex information in the area 401 in FIG. The vertex information displayed here is the vertex information added to the end of the vertex information list if the paper surface detection process has been executed in step S504 for the current photographed image. Otherwise, the vertex information is displayed in step S512. The vertex information acquired by the coordinate conversion means 312 is displayed.
ステップS1204において、マスク生成手段313は、記憶手段307に保存された頂点情報リストに保存されている頂点情報(複数の撮影画像それぞれにおいて求められた頂点情報)に基づいてマスクを生成する。   In step S1204, the mask generation unit 313 generates a mask based on the vertex information (vertex information obtained for each of the plurality of captured images) stored in the vertex information list stored in the storage unit 307.
図13は、マスク生成手段313がステップS1204で行うマスク生成処理の詳細を説明するための模式図である。図13(a)、(b)は、それぞれの撮影画像1300に対して求めた頂点情報1301、1302を、各撮影画像上に重畳した場合の位置を示す図である。   FIG. 13 is a schematic diagram for explaining the details of the mask generation processing performed by the mask generation unit 313 in step S1204. FIGS. 13A and 13B are diagrams illustrating positions when vertex information 1301 and 1302 obtained for each captured image 1300 are superimposed on each captured image.
まず、マスク生成手段313は、頂点情報リスト中の新しい方から順にM個の頂点情報を取得し、当該取得したM個の頂点情報からマスクを生成する。例えば、M=2であった場合に、図13(a)、(b)の頂点情報1301、1302が取得されたものとする。この場合、当該取得した頂点情報1301、1302のそれぞれに基づいてそれぞれのマスクを生成する。なお、取得した頂点情報が空データの場合には、画像全体を非マスク領域とするマスクを生成するものとする。   First, the mask generation unit 313 acquires M vertex information in order from the newest one in the vertex information list, and generates a mask from the acquired M vertex information. For example, when M = 2, the vertex information 1301 and 1302 in FIGS. 13A and 13B are acquired. In this case, each mask is generated based on the acquired vertex information 1301 and 1302. When the acquired vertex information is empty data, a mask having the entire image as a non-mask area is generated.
次に、各頂点情報から生成された各マスクをAND演算することによって新たに統合されたマスクを生成し、これを出力する。図13(c)は、頂点情報1301、1302から得られるマスクをAND演算したマスク1305を表す。マスク1305は非マスク領域1303とマスク領域1304を有する。マスク領域1305は、M個の頂点情報に基づき生成されるため、それらの頂点情報のいずれかが正しく原稿領域を表現できていれば、原稿領域を誤ってマスク領域としてしまう可能性を減らすことができる。   Next, a new integrated mask is generated by performing an AND operation on each mask generated from each vertex information, and this is output. FIG. 13C shows a mask 1305 obtained by ANDing the masks obtained from the vertex information 1301 and 1302. The mask 1305 has a non-mask area 1303 and a mask area 1304. Since the mask area 1305 is generated based on the M pieces of vertex information, if any of the vertex information correctly represents the document area, the possibility of erroneously setting the document area as a mask area can be reduced. it can.
マスク1305を撮影画像1300に適用し紙面検出処理を行った結果を図13(d)に表す。紙面検出処理によって非マスク領域1303から複数の候補線分が抽出され、それらの候補線分の中から原稿の四辺である可能性が最も高いと判断された候補線分群1306と頂点情報1307とが得られる。この結果を受けて、頂点情報1301は誤認識であった可能性が高いと判断し、頂点情報リストに登録されている上位M個の頂点情報を、頂点情報1302と頂点情報1307とに更新するようにしてもよい。   FIG. 13D shows the result of applying the mask 1305 to the captured image 1300 and performing the paper surface detection process. A plurality of candidate line segments are extracted from the non-mask area 1303 by the paper surface detection process, and a candidate line segment group 1306 and vertex information 1307 determined to be most likely to be the four sides of the original document from the candidate line segments. can get. Based on this result, it is determined that the vertex information 1301 is likely to have been misrecognized, and the top M vertex information registered in the vertex information list is updated to the vertex information 1302 and the vertex information 1307. You may do it.
図13(e)は、頂点情報1302、1307それぞれから生成されるマスクを統合したマスクを重畳した画像である。該マスク1308は非マスク領域1309とマスク領域1310を有する。非マスク領域1309は、誤検出であると判断された頂点情報1301の近傍領域を含まず、正しい原稿境界を表すと判断された頂点情報1302、1307の近傍領域により構成される。このようにM個全ての頂点情報が原稿領域を正しく表現できていれば、非マスク領域は原稿領域の近傍領域に収束し、頂点情報1301のような原稿領域と大きく異なる誤検出を防ぐことができる。   FIG. 13E is an image in which a mask obtained by integrating the masks generated from the vertex information 1302 and 1307 is superimposed. The mask 1308 has a non-mask area 1309 and a mask area 1310. The non-mask area 1309 does not include the vicinity area of the vertex information 1301 determined to be erroneous detection, but includes the vicinity areas of the vertex information 1302 and 1307 determined to represent the correct document boundary. In this way, if all the M vertex information can correctly represent the document area, the non-mask area converges in the vicinity of the document area, thereby preventing erroneous detection such as vertex information 1301 that is greatly different from the document area. it can.
<第2の実施形態の第1の変形例>
前述した第2の実施形態では、一度の紙面検出処理で一つの頂点情報をリストに登録したが、紙面検出処理により一つの原稿領域に対する頂点情報として複数の候補が得られる場合、それら全ての頂点情報を用いてマスクを生成しても良い。さらに、各候補が原稿領域らしさを表す尤度を有する場合には、それらを非マスク領域の尤度とするマスクを生成し、これに基づき紙面検出処理を行っても良い。この場合、紙面検出手段309は、尤度が低い領域にある候補線分や四角形領域の評価値を下げる処理を行う。
<First Modification of Second Embodiment>
In the second embodiment described above, one vertex information is registered in the list by a single paper surface detection process. However, when a plurality of candidates are obtained as vertex information for one document area by the paper surface detection process, all vertexes thereof are obtained. A mask may be generated using the information. Further, when each candidate has a likelihood representing the likelihood of a document area, a mask having the likelihood of a non-mask area as a likelihood may be generated, and the paper surface detection process may be performed based on the mask. In this case, the paper surface detection unit 309 performs a process of lowering the evaluation value of the candidate line segment or the quadrangular region in the low likelihood region.
<第2の実施形態の第2の変形例>
前述した第2の実施形態では、対象とする原稿は撮影画像中に1枚である場合を想定したが、本発明はこれに限るものではない。例えば、紙面検出手段が撮影画像中の複数の原稿領域それぞれから頂点情報を出力する場合、各頂点情報からマスクを生成し、AND演算したマスクを用いても良い。
<Second Modification of Second Embodiment>
In the second embodiment described above, it is assumed that the target document is one in the captured image, but the present invention is not limited to this. For example, when the paper surface detection means outputs vertex information from each of a plurality of document areas in the photographed image, a mask generated from each vertex information and ANDed may be used.
<第3の実施形態>
第3の実施形態では、紙面検出処理の実行モード(精度優先モード/速度優先モード)をマスクの有無に応じて切り替える例について図14を用いて説明する。なお、第3の実施形態の原稿歪み補正処理フローは、図5の原稿歪み補正処理フローに対して、ステップS503、S505間に新たにステップS1401、S1402、S1403が追加となる。その他の処理は変更がないので説明を省略する。
<Third Embodiment>
In the third embodiment, an example in which the execution mode (accuracy priority mode / speed priority mode) of the paper surface detection process is switched according to the presence or absence of a mask will be described with reference to FIG. In the document distortion correction process flow of the third embodiment, steps S1401, S1402, and S1403 are newly added between steps S503 and S505 to the document distortion correction process flow of FIG. Since other processes are not changed, description thereof is omitted.
ステップS1401において、紙面検出手段309は、撮影画像に対応するマスクが生成済みであるか否かを判断し、マスクが生成済みであればステップS1402へ遷移し、そうでなければステップS1403へ遷移する。ステップS1402において、紙面検出手段309は、精度優先モードによる紙面検出処理を実行する。ステップS1403において、紙面検出手段309は、速度優先モードによる紙面検出処理を実行する。   In step S1401, the paper surface detection unit 309 determines whether a mask corresponding to the captured image has been generated. If the mask has been generated, the process proceeds to step S1402. If not, the process proceeds to step S1403. . In step S1402, the paper surface detection unit 309 executes a paper surface detection process in the accuracy priority mode. In step S1403, the paper surface detection unit 309 executes paper surface detection processing in the speed priority mode.
精度優先モードは、速度優先モードと比較して、計算量が多く低速だが検出精度が良いモードである。例えば、速度優先モードでは候補線分の上限数を50とし、精度優先モードでは上限数を100とする。また速度優先モードでは、四角形領域の評価時に色味の評価を行わず、大きさや四角形領域の内包関係など幾何情報による評価を行い、精度優先モードでは幾何的評価に加えて色味の評価まで行う。   The accuracy priority mode is a mode in which the amount of calculation is low and the detection accuracy is good compared to the speed priority mode. For example, the upper limit number is set to 50 in the speed priority mode, and the upper limit number is set to 100 in the accuracy priority mode. In the speed priority mode, the color is not evaluated during the evaluation of the rectangular area, but the evaluation is performed based on the geometric information such as the size and the inclusion relation of the rectangular area. In the accuracy priority mode, the evaluation of the color is performed in addition to the geometric evaluation. .
以上のように、本実施形態によれば、マスクの有無に基づき計算量及び精度の異なる複数の紙面検出処理を使い分けることができる。これにより、マスクが無い場合でも高速に原稿領域を特定でき、マスクがある場合には速度、精度が両方とも向上した紙面検出処理を実行できる。   As described above, according to the present embodiment, it is possible to properly use a plurality of paper surface detection processes having different calculation amounts and accuracy based on the presence or absence of a mask. Thereby, even when there is no mask, the document area can be specified at high speed, and when there is a mask, the paper surface detection process with improved speed and accuracy can be executed.
<第4の実施形態>
第4の実施形態では、撮影中のモバイル端末100の移動やモバイルアプリ302の操作により、原稿領域の一部が撮影画像外に出てしまうことを許容した原稿歪み補正処理フローについて図15を用いて説明する。なお、第4の実施形態の原稿歪み補正処理フローは、図5の原稿歪み補正処理フローに対して、新たにステップS1501、S1502、S1503が追加となる。その他の処理は変更がないので説明を省略する。
<Fourth Embodiment>
In the fourth embodiment, FIG. 15 is used for a document distortion correction processing flow that allows part of a document area to be outside the captured image due to movement of the mobile terminal 100 during shooting or operation of the mobile application 302. I will explain. In the document distortion correction process flow of the fourth embodiment, steps S1501, S1502, and S1503 are newly added to the document distortion correction process flow of FIG. Since other processes are not changed, description thereof is omitted.
ステップS1501において、メイン制御手段303は、ステップS512で座標変換された頂点情報が撮影画像内に位置するか否かを判定し、判定結果を画像外フラグとして保存する。画像外フラグは頂点毎、及び辺毎に有し、四角形であれば8つのフラグから成る。頂点に関する画像外フラグは、頂点座標が画像外にあれば真、画像内に含まれれば偽とする。辺に関する画像外フラグは、各頂点を端点とする線分長×Rが画像外であれば真、そうでなければ偽とする。この割合は、後述するステップS1503における画像外フラグを参照した紙面検出処理の特性に応じて設定することが望ましく、本実施例ではR=0.5とする。   In step S1501, the main control unit 303 determines whether or not the vertex information whose coordinates are converted in step S512 is located in the captured image, and stores the determination result as an out-of-image flag. The non-image flag is provided for each vertex and each side, and is composed of eight flags if it is a rectangle. The out-of-image flag relating to the vertex is true if the vertex coordinates are outside the image, and false if included in the image. The non-image flag relating to the side is true if the line segment length × R having each vertex as an end point is outside the image, and false otherwise. This ratio is preferably set according to the characteristics of the paper surface detection process with reference to the out-of-image flag in step S1503 described later, and in this embodiment, R = 0.5.
ステップS1502において、メイン制御手段303は、画像外フラグを参照して紙面検出が可能か否かを判定する。紙面検出が可能な状態とは、辺に関する画像外フラグがL個以上偽である状態とする。本実施形態ではL=3とする。すなわち一辺は画像外に出ていても良い。ここで紙面検出が可能と判定された場合、ステップS513に遷移し、そうでない場合はステップS508に遷移する。   In step S1502, the main control unit 303 refers to the non-image flag to determine whether or not the paper surface can be detected. The state in which the paper surface can be detected is a state in which L or more out-of-image flags relating to sides are false. In this embodiment, L = 3. That is, one side may be outside the image. If it is determined that the paper surface can be detected, the process proceeds to step S513. Otherwise, the process proceeds to step S508.
ステップS1503では、紙面検出手段309は、画像外フラグを参照して紙面検出処理を実行する。画像外フラグ参照紙面検出処理については、図16を用いて後述する。   In step S1503, the paper surface detection unit 309 executes a paper surface detection process with reference to the non-image flag. The non-image flag reference paper surface detection process will be described later with reference to FIG.
[画像外フラグ参照紙面検出処理]
図16は、紙面検出手段309が行う画像外フラグを参照した紙面検出処理を説明するための模式図である。
[Outside image flag reference page detection processing]
FIG. 16 is a schematic diagram for explaining a paper surface detection process with reference to an out-of-image flag performed by the paper surface detection unit 309.
撮影画像1600に対して座標変換手段312により得た頂点情報1601があり、ここでは右上頂点と左下頂点に関する画像外フラグが真となる。これに対してマスク生成手段313が生成したのがマスク1602である。紙面検出手段309は、マスク1602と撮影画像1600をもとに紙面検出処理を行う。この時、右上頂点と左下頂点が画像外にあることが画像外フラグより既知であるため、該頂点に関する評価を行わないことで、検出誤りを低減できる。   There is vertex information 1601 obtained by the coordinate conversion unit 312 for the photographed image 1600, and here, the out-of-image flag regarding the upper right vertex and the lower left vertex is true. On the other hand, the mask 1602 is generated by the mask generation means 313. The paper surface detection unit 309 performs paper surface detection processing based on the mask 1602 and the captured image 1600. At this time, since it is known from the out-of-image flag that the upper right vertex and the lower left vertex are outside the image, detection errors can be reduced by not evaluating the vertex.
別の例として、撮影画像1603に対して、座標変換手段312により頂点情報1604が得られたものとする。頂点情報1604の場合は、上辺に関する画像外フラグが真となる。辺に関する画像外フラグが真の場合、4辺全てを検出することは不可能である。そのため、画像外フラグが偽である3辺のみを検出し、上辺は座標変換手段312で得た左上頂点、右上頂点の成す線分として算出する。撮影画像1603及び頂点情報1604をもとに生成されたのがマスク1605である。   As another example, it is assumed that vertex information 1604 is obtained by the coordinate conversion unit 312 for the captured image 1603. In the case of the vertex information 1604, the non-image flag regarding the upper side is true. If the out-of-image flag for a side is true, it is impossible to detect all four sides. For this reason, only the three sides whose image outside flag is false are detected, and the upper side is calculated as a line segment formed by the upper left vertex and the upper right vertex obtained by the coordinate conversion means 312. A mask 1605 is generated based on the photographed image 1603 and the vertex information 1604.
撮影画像1606から得た頂点情報1607は、全ての画像外フラグが真となり、紙面検出処理の対象外の画像である。撮影画像1606はステップS1502で紙面検出可能ではない、と判定され、ステップS1503には遷移しない。   The vertex information 1607 obtained from the captured image 1606 is an image that is not subject to the paper surface detection process because all the non-image flags are true. In step S1502, it is determined that the photographed image 1606 cannot be detected on the paper surface, and the process does not transition to step S1503.
以上のように、第4の実施形態によれば、撮影中に原稿領域の一部が画角外に出てしまっても紙面検出処理を続けることができ、さらに紙面検出処理が実行できない条件を満たした場合には画像追跡処理のみを行うことで、誤検出領域の表示を防ぐことができる。   As described above, according to the fourth embodiment, it is possible to continue the paper surface detection process even if a part of the document area is out of the angle of view during shooting, and further, the condition that the paper surface detection process cannot be executed. When it is satisfied, only the image tracking process is performed, so that the display of the erroneous detection area can be prevented.
<その他の実施形態>
本発明は、上述の実施形態の1以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける1つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、1以上の機能を実現する回路(例えば、ASIC)によっても実現可能である。以上、本発明の好ましい実施形態について説明したが、本発明は、これらの実施形態に限定されず、その要旨の範囲内で種々の変形及び変更が可能である。
<Other embodiments>
The present invention supplies a program that realizes one or more functions of the above-described embodiments to a system or apparatus via a network or a storage medium, and one or more processors in a computer of the system or apparatus read and execute the program This process can be realized. It can also be realized by a circuit (for example, ASIC) that realizes one or more functions. As mentioned above, although preferable embodiment of this invention was described, this invention is not limited to these embodiment, A various deformation | transformation and change are possible within the range of the summary.

Claims (10)

  1. 第1の撮影画像から原稿の四辺の位置を示す第1の情報を取得する第1の取得手段と、
    異なる2つの撮影画像のそれぞれにおける特徴点に基づいて、前記異なる2つの撮影画像それぞれの座標系の間の座標変換に用いる変換情報を求める第2の取得手段と、
    前記変換情報を用いて、前記第1の取得手段で検出した第1の情報を、第2の撮影画像における原稿の四辺の位置を示す第2の情報に変換する変換手段と、
    前記第2の情報により示される原稿の四辺の位置に基づいて、処理対象領域を特定するためのマスクを生成するマスク生成手段と、
    を有し、
    前記第1の取得手段は、第3の撮影画像に対して前記マスクを適用することにより、前記マスクにより特定される前記第3の撮影画像における処理対象領域から、原稿の四辺を示す第3の情報を取得することを特徴とする情報処理装置。
    First acquisition means for acquiring first information indicating the positions of the four sides of the document from the first photographed image;
    Second acquisition means for obtaining conversion information used for coordinate conversion between the coordinate systems of each of the two different photographed images based on feature points in each of the two different photographed images;
    Conversion means for converting the first information detected by the first acquisition means into second information indicating the positions of the four sides of the document in the second photographed image using the conversion information;
    Mask generating means for generating a mask for specifying the processing target area based on the positions of the four sides of the document indicated by the second information;
    Have
    The first acquisition unit applies the mask to the third photographed image, thereby providing a third document indicating four sides of the document from the processing target area in the third photographed image specified by the mask. An information processing apparatus characterized by acquiring information.
  2. 撮影操作が為された際の撮影画像に対して、当該撮影画像における原稿の四辺の位置を示す情報に基づく歪み補正を実行する歪み補正手段を、
    更に有することを特徴とする請求項1に記載の情報処理装置。
    Distortion correction means for executing distortion correction based on information indicating the positions of the four sides of the document in the photographed image with respect to the photographed image when the photographing operation is performed,
    The information processing apparatus according to claim 1, further comprising:
  3. 前記原稿の四辺の位置は、原稿の頂点の座標位置に基づいて示されることを特徴とする請求項1または2に記載の情報処理装置。   The information processing apparatus according to claim 1, wherein the positions of the four sides of the document are indicated based on a coordinate position of a vertex of the document.
  4. 前記第1の撮影画像と前記第2の撮影画像との間に複数の撮影画像が存在する場合、前記第2の取得手段は各撮影画像間の変換情報を求め、前記変換手段は、前記求めた各撮影画像間の変換情報を順に掛け合わせることにより、前記第1の情報を前記第2の情報に変換することを特徴とする請求項1乃至3のいずれか1項に記載の情報処理装置。   When there are a plurality of photographed images between the first photographed image and the second photographed image, the second acquisition means obtains conversion information between the photographed images, and the conversion means obtains the obtained information. 4. The information processing apparatus according to claim 1, wherein the first information is converted into the second information by sequentially multiplying the conversion information between the captured images. 5. .
  5. 前記各撮影画像間の変換情報の掛け合わせ回数が所定回数より大きくなった際に、前記マスク生成手段によるマスクの生成と、前記第1の取得手段による前記第3の情報の取得とが実行される、ことを特徴とする請求項4に記載の情報処理装置。   When the number of times of multiplication of the conversion information between the captured images becomes larger than a predetermined number, generation of the mask by the mask generation unit and acquisition of the third information by the first acquisition unit are executed. The information processing apparatus according to claim 4, wherein:
  6. 前記マスク生成手段は、前記第2の情報により示される原稿の四辺の位置と前記変換手段で変換された第2の情報の誤差とに基づいて、処理対象領域を特定するためのマスクを生成することを特徴とする請求項1乃至5のいずれか1項に記載の情報処理装置。   The mask generation unit generates a mask for specifying a processing target region based on the positions of the four sides of the document indicated by the second information and the error of the second information converted by the conversion unit. The information processing apparatus according to claim 1, wherein the information processing apparatus is an information processing apparatus.
  7. 前記マスク生成手段は、複数の撮影画像それぞれについて前記変換手段で求めた複数の第2の情報に基づいて、統合されたマスクを生成することを特徴とする請求項1乃至5のいずれか1項に記載の情報処理装置。   The said mask production | generation means produces | generates the integrated mask based on the some 2nd information calculated | required by the said conversion means about each of several picked-up image. The information processing apparatus described in 1.
  8. 前記第1の取得手段は、前記マスク生成手段でマスクが生成されている場合は、前記マスクにより特定される撮影画像の処理対象領域に対し精度優先の紙面検出処理を実行することにより原稿の四辺を示す情報を取得し、前記マスク生成手段でマスクが生成されていない場合は、撮影画像全体に対し速度優先の紙面検出処理を実行することにより原稿の四辺を示す情報を取得することを特徴とする請求項1乃至5のいずれか1項に記載の情報処理装置。   When the mask generation unit generates a mask, the first acquisition unit performs accuracy-priority paper surface detection processing on the processing target area of the photographed image specified by the mask, so that the four sides of the document are processed. Information indicating the four sides of the document is acquired by executing speed-priority paper surface detection processing on the entire captured image when no mask is generated by the mask generation unit. The information processing apparatus according to any one of claims 1 to 5.
  9. コンピュータを、請求項1乃至8のいずれか1項に記載の情報処理装置の各手段として機能させるためのプログラム。   The program for functioning a computer as each means of the information processing apparatus of any one of Claims 1 thru | or 8.
  10. 情報処理装置が実行する情報処理方法であって、
    撮影画像に対して原稿の四辺の位置を示す情報を取得し、
    当該取得した情報に基づいて、処理対象領域を特定するためのマスクを生成し、
    新たな撮影画像に対して前記マスクを適用することにより、前記マスクにより特定される前記新たな撮影画像における処理対象領域から、原稿の四辺の位置を取得することを特徴とする情報処理方法。
    An information processing method executed by an information processing apparatus,
    Acquire information indicating the position of the four sides of the document relative to the captured image,
    Based on the acquired information, generate a mask for specifying the processing target area,
    An information processing method, comprising: applying a mask to a new photographed image to obtain positions of four sides of a document from a processing target area in the new photographed image specified by the mask.
JP2017146779A 2017-07-28 2017-07-28 Information processing device, information processing method and program Pending JP2019028677A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2017146779A JP2019028677A (en) 2017-07-28 2017-07-28 Information processing device, information processing method and program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2017146779A JP2019028677A (en) 2017-07-28 2017-07-28 Information processing device, information processing method and program

Publications (1)

Publication Number Publication Date
JP2019028677A true JP2019028677A (en) 2019-02-21

Family

ID=65476338

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2017146779A Pending JP2019028677A (en) 2017-07-28 2017-07-28 Information processing device, information processing method and program

Country Status (1)

Country Link
JP (1) JP2019028677A (en)

Similar Documents

Publication Publication Date Title
JP4341629B2 (en) Imaging apparatus, image processing method, and program
JP2019012361A (en) Information processor, program, and method for information processing
US10643095B2 (en) Information processing apparatus, program, and information processing method
US10303969B2 (en) Pose detection using depth camera
JP2019004305A (en) Image processing device, image processing method, and program
KR20120066567A (en) Image processing device and program
JP2019028677A (en) Information processing device, information processing method and program
US10586099B2 (en) Information processing apparatus for tracking processing
JP2017098878A (en) Information terminal device and program
JP2019109624A (en) Information processing apparatus, program, and information processing method
JP6669390B2 (en) Information processing apparatus, information processing method, and program
JP2017120455A (en) Information processing device, program and control method
JP5563390B2 (en) Image processing apparatus, control method therefor, and program
JP2018056784A (en) Image reading device, image reading method, and image reading program
JP2021077283A (en) Information processing apparatus, information processing method, and program
JP2020149184A (en) Information processor and control method thereof and program
US20210281742A1 (en) Document detections from video images
JP2018180986A (en) Information processing device, information processing method, and program
US10999513B2 (en) Information processing apparatus having camera function, display control method thereof, and storage medium
JP6639120B2 (en) Image processing apparatus, image processing method, and program
JP2019197489A (en) Information processing apparatus, information processing method, and program
JP2013257643A (en) Image processing system, and program
JP2017120503A (en) Information processing device, control method and program of information processing device
JP6779798B2 (en) Information processing equipment, information processing methods and programs
JP2018046337A (en) Information processing device, program and control method