JP2021077283A - Information processing apparatus, information processing method, and program - Google Patents
Information processing apparatus, information processing method, and program Download PDFInfo
- Publication number
- JP2021077283A JP2021077283A JP2019205645A JP2019205645A JP2021077283A JP 2021077283 A JP2021077283 A JP 2021077283A JP 2019205645 A JP2019205645 A JP 2019205645A JP 2019205645 A JP2019205645 A JP 2019205645A JP 2021077283 A JP2021077283 A JP 2021077283A
- Authority
- JP
- Japan
- Prior art keywords
- tracking
- image
- processing
- transformation matrix
- error
- 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
Links
Images
Landscapes
- Image Analysis (AREA)
Abstract
Description
本発明は、情報処理装置、情報処理方法、及びプログラムに関する。 The present invention relates to an information processing device, an information processing method, and a program.
カメラ付き携帯型端末装置(モバイル端末)は一般的なものになってきた。従来、ユーザーは紙文書を電子的に取り込むためにスキャナなどを利用していたが、モバイル端末のカメラを利用することで簡単に紙文書を電子的に取り込むことができるようになった。特許文献1には、カメラを利用して取り込んだ電子書類の表示領域及び座標を認識及びトラッキングするための技術が提案されている。 Camera-equipped portable terminal devices (mobile terminals) have become commonplace. In the past, users used scanners and the like to electronically capture paper documents, but now it is possible to easily capture paper documents electronically by using the camera of a mobile terminal. Patent Document 1 proposes a technique for recognizing and tracking the display area and coordinates of an electronic document captured by using a camera.
特許文献1では、電子書類の表示領域及び場所を、インビジブルジャンクション特徴量を使用して認識及びトラッキングする方法が記載されている。特許文献1では、インビジブルジャンクション特徴量による表示領域及び場所の特定が一度行われれば、ビデオ撮影における特徴点を追跡し、その後にビデオ撮影間で平面的な動き(投影変換)を推定することが記載されている。しかし、特許文献1には、画像のトラッキングの継続による誤差の蓄積に対しての処理等に関しては書かれていない。トラッキングの誤差の蓄積によるズレの発生を抑制するためには高頻度でマッチング処理を行うことが考えられるが、マッチング処理に伴う演算負荷が高くなり、高速な処理が困難となる。そこで、本発明は、動画像に係るトラッキングを行う場合に、マッチング処理による演算負荷を減らしつつ、ズレの少ないトラッキングを継続できるようにすることを目的とする。 Patent Document 1 describes a method of recognizing and tracking a display area and a place of an electronic document by using an invisible junction feature amount. In Patent Document 1, once the display area and the location are specified by the invisible junction feature amount, the feature points in the video shooting are tracked, and then the planar movement (projection conversion) is estimated between the video shootings. Are listed. However, Patent Document 1 does not describe processing for accumulating errors due to continuous image tracking. In order to suppress the occurrence of deviation due to the accumulation of tracking errors, it is conceivable to perform the matching process with high frequency, but the calculation load associated with the matching process becomes high, and high-speed processing becomes difficult. Therefore, an object of the present invention is to enable tracking with less deviation while reducing the calculation load due to the matching process when tracking the moving image.
本発明に係る情報処理装置は、被写体の全体画像及び前記被写体を連続して撮影した撮影画像から特徴点及び前記特徴点の特徴量を抽出する抽出手段と、前記抽出手段により抽出された、第1の画像における特徴量と、前記第1の画像とは異なる第2の画像における特徴量とを比較して一致する特徴点の組み合わせを求める比較処理手段と、前記抽出手段により抽出された特徴点の画像間における移動ベクトルを求める追跡処理手段と、前記比較処理手段又は前記追跡処理手段による処理結果に基づいて求められる変換行列を用いて、画像の所定の領域に係るトラッキング処理を行うトラッキング処理手段と、前記トラッキング処理手段によるトラッキング処理が行われない画像が発生した場合に、発生するトラッキングの誤差を算出して蓄積する誤差算出手段と、前記誤差算出手段により蓄積した誤差が閾値を越えた場合に、前記比較処理手段による処理を実行させ、前記誤差算出手段により蓄積した誤差をリセットさせる制御手段とを有することを特徴とする。 The information processing apparatus according to the present invention includes an extraction means for extracting a feature point and a feature amount of the feature point from a whole image of the subject and a photographed image obtained by continuously photographing the subject, and a first extraction means extracted by the extraction means. A comparison processing means for comparing a feature amount in one image with a feature amount in a second image different from the first image to obtain a matching feature point, and a feature point extracted by the extraction means. A tracking processing means for performing tracking processing related to a predetermined region of an image by using a tracking processing means for obtaining a movement vector between images and a conversion matrix obtained based on the processing result by the comparison processing means or the tracking processing means. When an image that is not tracked by the tracking processing means is generated, an error calculating means that calculates and accumulates the generated tracking error, and an error that is accumulated by the error calculating means exceeds the threshold value. It is characterized by having a control means for executing a process by the comparison processing means and resetting an error accumulated by the error calculation means.
本発明によれば、マッチング処理による演算負荷を減らしつつ、ズレの少ないトラッキングを継続することが可能となる。 According to the present invention, it is possible to continue tracking with less deviation while reducing the calculation load due to the matching process.
以下、本発明の実施形態を図面に基づいて説明する。なお、以下に説明する実施形態は、本発明を限定するものではなく、また、実施形態で説明されているすべての構成が本発明の課題を解決するための手段に必須であるとは限らない。 Hereinafter, embodiments of the present invention will be described with reference to the drawings. It should be noted that the embodiments described below do not limit the present invention, and not all the configurations described in the embodiments are essential as means for solving the problems of the present invention. ..
ここで、カメラで取り込んだ紙文書の画像の局所領域における文字認識処理(OCR)の結果情報を取得して利用する構成について検討する。OCR結果情報を取得する際、取得する情報が記された領域(データ入力領域)の位置座標が既知であれば(例えば、既知のフォーマットの帳票)、OCR処理対象の領域を特定できるので、その領域をOCR処理してOCR結果を取得すればよい。 Here, a configuration for acquiring and using the result information of character recognition processing (OCR) in a local region of an image of a paper document captured by a camera will be examined. When acquiring OCR result information, if the position coordinates of the area (data input area) in which the information to be acquired is written are known (for example, a form in a known format), the area to be OCR processed can be specified. The area may be subjected to OCR processing and the OCR result may be obtained.
カメラからの入力が動画である場合、各画像間の特徴点とその特徴量を比較することで、画像間で一致する特徴点の組み合わせを求める(マッチングをする)ことができる。しかし、特徴点比較処理は、精度の高いマッチング手法ではあるが、一般的に演算処理負荷が高く、処理速度が遅い。このため、30FPS(フレーム/秒)程度のある程度高速な動画像処理の場合、動画フレーム間隔でマッチング処理を終わらせるためには高速な演算処理装置などが必要となる。 When the input from the camera is a moving image, it is possible to obtain (match) a combination of feature points that match between the images by comparing the feature points between the images with the feature amount thereof. However, although the feature point comparison process is a highly accurate matching method, the arithmetic processing load is generally high and the processing speed is slow. Therefore, in the case of moving image processing having a certain high speed of about 30 FPS (frames / second), a high-speed arithmetic processing unit or the like is required to finish the matching processing at the moving image frame interval.
低速なモバイル端末の場合などは、マッチング処理を高頻度で行うことができない。そこで、比較対象の画像上で特徴点の移動位置を推定するトラッキング処理を行うことで、マッチング処理を行う頻度を下げることができる。トラッキング処理は、オプティカルフローなどにより、比較対象の画像においてどれだけ移動したかの移動ベクトルを推定する。これにより、原画像上の特徴点が比較対象の画像上のどの位置に移動したかの推定を行うことができる。特徴点追跡は、特徴点比較よりも比較的処理速度が速い。 In the case of a low-speed mobile terminal, the matching process cannot be performed frequently. Therefore, the frequency of matching processing can be reduced by performing tracking processing for estimating the moving position of the feature point on the image to be compared. The tracking process estimates the movement vector of how much the image to be compared has moved by an optical flow or the like. This makes it possible to estimate to which position on the image to be compared the feature points on the original image have moved. Feature point tracking is relatively faster than feature point comparison.
しかし、画像のトラッキングの継続による誤差の蓄積によりデータ入力領域の位置座標にズレが生じると、正確なOCR結果情報を得ることは難しくなる。そこで、本実施形態では、動画像の各画像間のトラッキング情報を用いてトラッキングを継続する場合に、適切なタイミングでマッチング処理を行うことにより、マッチング処理による演算負荷を減らしつつ、ズレの少ないトラッキングを継続できるようにする。 However, if the position coordinates of the data input area deviate due to the accumulation of errors due to the continuation of image tracking, it becomes difficult to obtain accurate OCR result information. Therefore, in the present embodiment, when tracking is continued using the tracking information between each image of the moving image, the matching process is performed at an appropriate timing to reduce the calculation load due to the matching process and to reduce the deviation. To be able to continue.
以下、本実施形態に係る情報処理装置の一例として、モバイル端末を例に説明する。モバイル端末は、携帯端末の一例であり、無線通信機能などの装備によって自由な場所で利用できる端末である。 Hereinafter, a mobile terminal will be described as an example of the information processing device according to the present embodiment. A mobile terminal is an example of a mobile terminal, and is a terminal that can be used in a free place by equipping it with a wireless communication function or the like.
図1は、モバイル端末の外観の一例を示す図である。モバイル端末100は、各種のユニット101〜104等を含んで構成される。モバイル端末100の表側がモバイル端末前面部101である。タッチパネル102は、ディスプレイ等の表示部の一例であり、出力(表示)と入力との2つの機能を備えている。モバイル端末100の裏側がモバイル端末背面部103である。モバイル端末背面部103は、画像を取り込むためのカメラ104を有する。本実施形態では、モバイル端末100のユーザーは、被写体105の画像を後述のモバイルアプリ(モバイルアプリケーション)でカメラ104を使用して撮ることによって処理を開始することができる。被写体105は、例えばA4サイズの紙文書の注文書等である。被写体105は、紙文書だけに限らず、様々なサイズの名刺、写真、カード等であっても良い。後述のモバイルアプリは、被写体105の画像をカメラ104を使用して取り込み、タッチパネル102にその画像を出力することができる。
FIG. 1 is a diagram showing an example of the appearance of a mobile terminal. The
<ハードウェア構成>
次に、モバイル端末100におけるハードウェア構成について説明する。図2は、モバイル端末100のハードウェア構成例を示す図である。モバイル端末100は、CPU201、RAM202、ROM203、入出力インターフェース204、NIC205、及びカメラユニット206を有する。CPU201、RAM202、ROM203、入出力インターフェース204、NIC205、及びカメラユニット206は、データの送受信を行うことが可能なようにバス207を介して通信可能に接続されている。
<Hardware configuration>
Next, the hardware configuration of the
CPU(Central Processing Unit)201は、各種のプログラムを実行し、様々な機能を実現する。RAM(Random Access Memory)202は、各種の情報を記憶する。また、RAM202は、CPU201の一時的な作業記憶領域としても利用される。ROM(Read Only Memory)203は、各種のプログラム等を記憶する。
The CPU (Central Processing Unit) 201 executes various programs and realizes various functions. The RAM (Random Access Memory) 202 stores various types of information. The
例えば、CPU201は、ROM203に記憶されているプログラムをRAM202にロードしてプログラムを実行する。また、CPU201は、フラッシュメモリ、HDD(Hard Disk Drive)又はSSD(Solid State Drive)といった外部記憶装置に記憶されているプログラムに基づき処理を実行する。これにより、図3に示されるようなモバイル端末100を構成するソフトウェア構成及び図8等に示されるようなフローチャートでの各処理が実現される。なお、モバイル端末100の機能及び後述する処理の全部又は一部については専用のハードウェアを用いて実現してもよい。
For example, the
入出力インターフェース204は、タッチパネル102とデータを送受信する。NIC(Network Interface Card)205は、モバイル端末100をネットワーク(不図示)に接続するためのインターフェースである。カメラユニット206は、カメラ104と接続し被写体105の画像をモバイル端末100に取り込む。
The input /
<ソフトウェア構成>
次に、モバイル端末100におけるソフトウェア構成について説明する。図3は、モバイル端末100のソフトウェア構成例を示す図である。モバイル端末100は、データ管理部301及びモバイルアプリ302を有する。図3に示したソフトウェア(アプリケーション)における各機能を実現するプログラムは、ROM203等に記憶されている。
<Software configuration>
Next, the software configuration in the
データ管理部301は、画像やアプリケーションデータを管理する。OSは、データ管理部301を利用するための制御API(Application Programming Interface)を提供している。モバイルアプリ302は、その制御APIを利用することでデータ管理部301が管理する画像やアプリケーションデータの取得や保存を行う。
The
モバイルアプリ302は、例えばモバイル端末100のOSのインストール機能を利用して、モバイル端末100にダウンロードしインストールすることにより実行可能なアプリケーションである。モバイルアプリ302は、例えばカメラユニット206を介して取り込んだ被写体105の画像に対する各種のデータ処理を行う。モバイルアプリ302は、メイン制御部303、情報表示部304、操作情報取得部305、撮影画像取得部306、記憶部307、及びデータベース(DB)部308を有する。また、モバイルアプリ302は、特徴点抽出部309、特徴点比較処理部310、特徴点追跡処理部311、座標変換処理部312、トラッキング処理部313、及びトラッキング誤差量算出部314を有する。
The
メイン制御部303は、モバイル端末100用のアプリケーション(モバイルアプリ)302を制御し、後述する各モジュール部303〜314に対する指示及び管理を行う。情報表示部304は、メイン制御部303からの指示に従い、モバイルアプリ302のユーザーインタフェース(UI)をユーザーに提供する。図4は、モバイルアプリ302のUI(携帯端末用のUI)を提供する画面の一例(モバイル端末画面400)を示す図である。モバイル端末画面400は、モバイル端末100のタッチパネル102に表示される。また、モバイル端末画面400では、表示・操作領域401にカメラ104を介して取り込んだ画像が表示され、画像等に対するユーザーによる操作(ユーザー操作)を、表示されたUIを介して受け付ける。なお、モバイルアプリ302のUIの形態(位置、大きさ、範囲、配置、表示内容など)は、図4に示したものに限定されるものではなく、モバイル端末100の機能を実現することができる適宜の構成を採用することができる。
The
操作情報取得部305は、情報表示部304により表示されたモバイルアプリ302のUIを介したユーザー操作に係る情報を取得し、取得した情報をメイン制御部303に通知する。例えば、表示・操作領域401をユーザーが手で触れると、操作情報取得部305は、触れられた画面上の位置を示す情報を取得し、取得した位置の情報をメイン制御部303に送信する。撮影画像取得部306は、カメラユニット206を介して撮影された動画像の各撮影画像を取得し、記憶部307に送信する。
The operation
記憶部307は、例えば撮影画像取得部306により取得された撮影画像を記憶する。また、記憶部307に対しては、メイン制御部303の指示により記憶している撮影画像の削除を行うことができる。DB部308は、データベース機能を有し、後述する全体画像500や、全体画像500中の抽出するデータ情報が含まれている長方形領域(データ入力領域)についてのデータ入力領域情報テーブル601等を管理する。DB部308のデータは、メイン制御部303によるアプリケーション302の起動時に、記憶部307に送信され、必要な時に制御部303の指示により取得される。
The
特徴点抽出部309は、カメラユニット206を介して撮影された画像、又はDB部308に予め保持され記憶部307に送信された画像等から、特徴点及び特徴量を抽出する。特徴点抽出部309は、例えば画像上の輝度の変化が大きな箇所(エッジ)などの特徴的なピクセル点(特徴点)と、特徴点の特徴を表すデータ(特徴量)を算出する。特徴点や特徴量を求める手法としては、SIFT(Scale-Invariant Feature Transform)やSURF(Speeded-Up Robust Features)等の手法がある。本実施形態では、回転や拡大縮小、画像の移動といった変化に頑強で、後述する特徴点比較処理においてマッチングする特徴点が一意に定まるような手法が好ましい。
The feature
特徴点比較処理部310は、特徴点抽出部309により異なる2つの画像からそれぞれ抽出された特徴点について特徴点比較処理を行う。特徴点比較処理は、各画像間の特徴点とその特徴量を比較することで、画像間で一致する特徴点の組み合わせを求める(マッチングをする)ことができる。また、RANSAC(Random sample consensus)のような外れ値を排除して法則性を推定する手法を用いることで、ノイズとなる特徴点の組み合わせを排除し、より精度の高いマッチングを行うことが可能となる。特徴点比較処理は、精度の高いマッチング手法ではあるが、一般的に処理速度が遅い。本実施形態では、特徴点比較処理部310は、一意の全体画像と任意の撮影画像との間で特徴点比較処理を行う。以下では、特徴点比較処理に用いた撮影画像を特徴点比較画像とも称する。
The feature point
特徴点追跡処理部311は、元となる原画像から特徴点抽出部309により抽出された特徴点について、比較対象の画像上での特徴点の移動位置を推定する特徴点追跡処理(オプティカルフロー)を行う。特徴点追跡処理部311は、原画像上の各特徴点が、比較対象の画像においてどれだけ移動したかの移動ベクトルを推定する。これにより、原画像上の特徴点が比較対象の画像上のどの位置に移動したかの推定を行うことができる。特徴点追跡処理は、特徴点比較処理よりも処理速度が速い。
The feature point
ここで、移動ベクトルの算出方法としては、一般に以下で示される。時刻tにおける画像P上の点x,yの輝度をP(x,y,t)とすると、時刻がΔt進み、その間に座標がΔx,Δy移動すると、移動先の輝度はP(x+Δx,y+Δy,t+Δt)となる。P(x,y,t)=P(x+Δx,y+Δy,t+Δt)となるためには、x,yの単位時間当たりの移動量ベクトルvx、vyを用いて、Pvx+Pvy+Pt=0となる。vx、vyの2変数があるため、少なくとも1つ以上制約となる方程式を増やす必要があり、Lucas−Kanade法は、周辺の点は同じ動きをすると仮定する。このため、移動ベクトルを正確に算出するためには、2つの画像間のオブジェクトの移動量が一定以下である(画像間の差分が小さい)必要がある。 Here, the method of calculating the movement vector is generally shown below. Assuming that the brightness of points x and y on the image P at time t is P (x, y, t), the time advances by Δt, and if the coordinates move by Δx and Δy during that time, the brightness of the destination is P (x + Δx, y + Δy). , T + Δt). In order for P (x, y, t) = P (x + Δx, y + Δy, t + Δt), Pv x + Pv y + Pt = 0 using the movement amount vectors v x , v y per unit time of x, y. It becomes. Since there are two variables v x and v y , it is necessary to increase at least one constraint equation, and the Lucas-Kanade method assumes that the surrounding points behave in the same way. Therefore, in order to calculate the movement vector accurately, it is necessary that the movement amount of the object between the two images is less than a certain amount (the difference between the images is small).
Lucas−Kanade法の場合、画像間の差分が大きくなると、推定の誤差が大きくなり、実際の位置とのズレが大きくなる。画像間の差分が大きくなる要因としては、撮影フレーム間でのカメラの高速移動を行った場合、外部要因等により撮影対象の輝度が大きく変化した場合、動画撮影処理の遅延や撮影コマ落ち等により撮影間隔(フレーム間隔)が長くなった場合等が考えられる。高速移動や輝度変化についてはモーションセンサや輝度センサ、撮影画像から検出できるために、検出時にマッチング処理を行ってからトラッキング処理を再開することで、ズレを減らすことができる。なお、移動ベクトルの計算方法は、他の方法を用いてもよい。 In the case of the Lucas-Kanade method, when the difference between the images becomes large, the estimation error becomes large and the deviation from the actual position becomes large. Factors that increase the difference between images include high-speed movement of the camera between shooting frames, large changes in the brightness of the shooting target due to external factors, delays in movie shooting processing, dropped frames, etc. It is conceivable that the shooting interval (frame interval) becomes longer. Since high-speed movement and brightness change can be detected from the motion sensor, the brightness sensor, and the captured image, the deviation can be reduced by performing the matching process at the time of detection and then restarting the tracking process. In addition, as the calculation method of the movement vector, another method may be used.
座標変換処理部312は、全体画像と撮影画像との間(もしくは撮影画像と異なる撮影画像間で)、点のマッピングを行う。座標変換処理部312は、画像間でホモグラフィー変換(homography transform、平面射影変換)を行うためのホモグラフィー変換行列(以下、変換行列)を算出することで点のマッピングを行う。ホモグラフィー変換は、ある平面座標系上の点を異なる平面座標系上に変形して移し替えることができる。同様の変換に、画像の回転、平行移動、拡大縮小を行うアフィン変換があるが、ホモグラフィー変換は、それらに加えて、座標位置に応じて拡大縮小の比率を変え、台形状の変換が可能となる。ホモグラフィー変換は、現画像上の座標点(x1,y1)、変換後の画像上の座標点(x2,y2)、変換行列H、定数sを用いて以下のように表せられる。
The coordinate
座標変換処理部312は、2つの画像間に同様のオブジェクトが存在している場合、特徴点比較処理部310又は特徴点追跡処理部311によるマッチング処理で求められた画像間の対応点座標を基に、変換行列Hのパラメータを算出する。これにより、全体画像と撮影画像との間の変換行列を求め、全体画像中の座標を撮影画像中にマッピングすることや、変換行列の逆行列を求めて、その逆のマッピングを行うことが可能となる。しかし、2つの画像間に同様のオブジェクトが存在しなかった場合(画像間の差異が大きかった場合)、マッチングする特徴点の数が少なくなり、変換行列Hの算出に失敗する。
When a similar object exists between two images, the coordinate
トラッキング処理部313は、後述するトラッキング処理により、カメラ104による最新の撮影画像が全体画像500のどの部分(領域)を撮影しているかをトラッキングする。そして、トラッキング処理部313は、データ入力領域情報テーブル601に保存されているデータ入力領域の情報に基づいて撮影画像上にデータ入力領域をマッピングして描画し、モバイル端末画面400上に表示する。
The
そのため、トラッキングを行うには、最新の撮影画像を取得してからモバイル端末画面400上にマッピングした画像を表示するまでに、座標変換処理部312による、撮影画像500と最新の撮影画像間の変換行列を求める処理を待つ必要がある。座標変換処理部312による変換行列の算出には、2つの画像間の特徴点のマッチング処理が必要となり、マッチング処理には特徴点比較処理部310と特徴点追跡処理部311による2通りの算出方法がある。特徴点比較処理部311によるマッチング処理には時間がかかるため、特徴点比較処理が完了するまで描画を行わないでいると、撮影レートの低下を招いてしまう。また、特徴点追跡処理部312による特徴点追跡処理は高速ではあるが、各撮影画像間で求めた変換行列を掛け合わせることでトラッキングを行う際、各行列の誤差が蓄積していくため、次第にトラッキング結果にズレが生じてしまう。そのため、本実施形態におけるトラッキング処理では、特徴点比較処理と特徴点追跡処理とを組み合わせて使用することで、トラッキングのズレを最小限にしつつ、モバイル端末画面400への描画における撮影レートの低下を防いでいる。
Therefore, in order to perform tracking, the coordinate
トラッキング誤差量算出部314は、撮影画像毎のトラッキング処理の誤差量を算出する。本実施形態では、トラッキング誤差の蓄積が所定の閾値を越えた場合に、マッチング処理を行い、トラッキング誤差量のリセットをする。トラッキング誤差量算出部314は、トラッキング未処理の画像が発生した場合、特徴点追跡処理部311が算出する移動ベクトルの誤差量からトラッキング処理の誤差量を算出する。具体的には、撮影画像取得部306から動画像のフレームが正しく取得できたか判定を行う。
The tracking error
撮影画像取得部306からの画像取得の判定は、撮影画像取得部306から規定間隔でフレームが取得できたか否かの判定を行う。規定間隔は、カメラユニット206から取得できる。規定間隔は、カメラユニット206の画像解像度によって異なることがある。例えば、カメラユニット206からの画像生成が30FPSであれば、30分の1秒以内に1フレーム分の撮影画像が取得できたか否かの判定を行う。また、30分の1秒以内に1フレーム分の撮影画像が取得できても、トラッキング処理部313がトラッキング処理を行えなかった場合には、ズレが大きくなるため、画像取得が行えなかった場合と同様にトラッキング誤差を算出する。
The determination of image acquisition from the captured
<全体画像と撮影画像>
次に、全体画像と撮影画像とについて、図5を参照して説明する。全体画像500は、全体画像の一例である。全体画像500は、被写体105の全体像を写した画像データである。全体画像500は、予めDB部308に保存されているものとする。なお、撮影され撮影画像取得部306により取得した被写体105を含む画像データを、被写体以外の領域を除外する紙面検出処理、歪み部分を補正する歪み補正処理を施し整形加工することにより取得する処理をアプリケーション302に追加しても良い。
<Overall image and captured image>
Next, the whole image and the captured image will be described with reference to FIG. The
また、被写体105に対してカメラ104を移動して取得した被写体105の一部(あるいは全体)の画像を撮影画像と呼ぶ。撮影画像501、502、503、504は、撮影画像の一例である。撮影領域505、506、507、508は、全体画像における撮影画像の撮影領域を示している。撮影画像501〜504は、撮影画像取得部306から取得された連続する動画撮影を抜き出したもので、カメラ104の移動とともに撮影領域505〜508が移動していることを図示している。
Further, an image of a part (or the whole) of the subject 105 acquired by moving the
<データ入力領域情報テーブル>
次に、DB部308が管理するデータ入力領域情報テーブルについて説明する。図6は、本実施形態におけるデータ入力領域情報テーブルのデータ構造、及び保持するデータ入力領域情報を説明する図である。図6(A)に示すように、データ入力領域情報テーブル601は、idカラム、keyカラム、pointカラム、widthカラム、及びheightカラムから構成される。
<Data entry area information table>
Next, the data input area information table managed by the
idカラムは、データ入力領域情報テーブル601にレコードが追加されるたびに1ずつ増加する値で、テーブルのPrimary keyである。keyカラムは、各レコードがなんの情報に関するデータ入力領域情報であるのかを示す情報を格納する。pointカラムは、データ入力領域の左上端の位置に対応する、全体画像500座標系における座標を格納する。widthカラムは、データ入力領域の幅をピクセル単位で示した情報を格納する。heightカラムは、データ入力領域の高さをピクセル単位で示した情報を格納する。例えば、図6(B)に示した全体画像500上に図示された表示領域608、609、610、611、612、613が、それぞれデータ入力領域情報テーブル601のデータ入力領域情報602、603、604、605、606、607に対応している。
The id column is a value that is incremented by 1 each time a record is added to the data input area information table 601 and is a primary key of the table. The key column stores information indicating what information each record is related to as data input area information. The point column stores the coordinates in the
<トラッキング処理>
次に、トラッキング処理部313によるトラッキング処理について、図7を参照して説明する。図7において、撮影画像700〜708は、撮影画像取得部306から取得された連続する動画撮影の撮影画像であり、全体画像500にカメラ104を近づけて撮影されたものである。撮影画像700〜708のうち、撮影画像700が撮影開始時点から数えて一番初めに取得された撮影画像である。
<Tracking process>
Next, the tracking process by the
第1変換行列709は、全体画像500と撮影画像700とを入力として、特徴点比較処理部310によって求められた特徴点比較結果を用いて、座標変換処理部312により求められる。特徴点比較処理部310による特徴点比較処理には時間がかかるため、第1変換行列716が算出されるまでに撮影画像701、702が取得されるが変換行列が未生成のため、未加工の撮影画像701、702がモバイル端末画面400に表示される。
The
撮影画像703が取得されたところで座標変換処理部312による第1変換行列709の算出が終わり、第1変換行列709が得られたとする。そこで、第2変換行列710の生成が行われる。第2変換行列710は、第1変換行列709の算出に用いられた撮影画像700と最新の撮影画像703とを入力画像として、特徴点追跡処理部311によって求められた特徴点追跡処理結果を用いて、座標変換処理部312により求められる。
It is assumed that the calculation of the
第1変換行列709と第2変換行列710とを掛け合わせることにより、全体画像500と撮影画像703との間で座標の変換が可能となる変換行列が求められる。そして、トラッキング処理部313は、データ入力領域情報テーブル601に保存されているデータ入力領域情報に基づいて、撮影画像703上に各データ入力領域をマッピングして描画し、モバイル端末画面400に表示する。
By multiplying the
次に、最新の撮影画像704とひとつ前の撮影画像703とを入力画像として、特徴点追跡処理部311によって求められた特徴点追跡処理結果を用いて、第3変換行列711が座標変換処理部312により求められる。第1変換行列709、第2変換行列710、及び第3変換行列711を掛け合わせて、全体画像500と撮影画像704との間で座標の変換が可能となる変換行列が求められる。同様にして、最新の撮影画像とひとつ前の撮影画像との間で第3変換行列を求め、一意の第1変換行列と一意の第2変換行列、そして複数の第3変換行列を掛け合わせることで、全体画像500と最新の撮影画像との間で座標の変換を行う変換行列を求める。
Next, using the latest captured
ここで、座標変換処理部312により求められた変換行列の精度は、特徴点追跡処理部311による特徴点追跡処理の推定誤差の影響などにより100%ではないため、複数の変換行列を掛け合わせることで誤差が蓄積する。そのため、トラッキング誤差量算出部314により誤差の蓄積が閾値を越えたと判定された場合、第1変換行列及び第2変換行列が更新され、誤差の蓄積がリセットされる。
Here, the accuracy of the transformation matrix obtained by the coordinate
第1変換行列716は、全体画像500と撮影画像704とを入力として、特徴点比較処理部310によって求められた特徴点比較結果を用いて、座標変換処理部312により求められる変換行列である。第1変換行列709を求める時と同様に、変換行列の算出に時間がかかるため、第1変換行列716が算出されるまでには撮影画像705、706が取得される。このとき、各撮影画像の取得のたびに、1つ前の撮影画像との間で第3変換行列712、713が算出される。その間、トラッキング処理部313は、生成済みの第1変換行列709と第2変換行列710、及び第3変換行列711、712、713を用いて、最新の撮影画像と全体画像500との間で座標の変換を行う変換行列を求める。
The
そして、撮影画像707が取得されたところで座標変換処理部312による第1変換行列716の算出が終わり、第1変換行列716が得られたとする。そこで、第2変換行列717の生成が行われる。第2変換行列717は、第1変換行列716の算出に用いられた撮影画像704と最新の撮影画像707とを入力画像として、特徴点追跡処理部311によって求められた特徴点追跡処理結果を用いて、座標変換処理部312により求められる。
Then, it is assumed that the calculation of the
第2変換行列717が求められた時点で、第1変換行列と第2変換行列の更新が完了する。以降の撮影画像では、更新された第1変換行列716と第2変換行列717、及び各撮影画像間の第3変換行列を用いて、トラッキング処理部313が、全体画像500と最新の撮影画像の間で座標の変換を行う変換行列を求める。これにより、最新の撮影画像でのトラッキングに第3変換行列711〜714が不要となるため、これらの変換行列を掛け合わせることで生じていた誤差がリセットされる。このように、第1変換行列及び第2変換行列を、誤差の蓄積が所定の閾値を越えた場合に更新することで、トラッキング中の誤差を最小限に保つことができる。
When the second transformation matrix 717 is obtained, the update of the first transformation matrix and the second transformation matrix is completed. In the subsequent captured images, the
次に、モバイル端末100でモバイルアプリ302が実行する基本的なトラッキング処理について、図8を参照して説明する。図8は、本実施形態におけるトラッキング処理の例を示すフローチャートである。図8に示すフローチャートの処理は、ユーザーによりモバイル端末100におけるモバイルアプリ302が起動され、被写体105に対してカメラ104を接近して画像を取得することをトリガーに開始する。
Next, the basic tracking process executed by the
S801で、メイン制御部303は、DB部308に保存された全体画像500を記憶部307に送信し、使用できるようにする。
次に、S802で、メイン制御部303は、DB部308に保存されたデータ入力領域情報テーブル601を記憶部307に送信し、使用できるようにする。
In S801, the
Next, in S802, the
S803で、メイン制御部303は、撮影画像取得部306から最新の動画撮影画像を撮影画像として1枚取得するよう命令する。
次に、S804で、メイン制御部303は、後述する第1変換行列及び第2変換行列の作成・更新処理を実行し、第1変換行列及び第2変換行列の作成・更新に関する処理を行う。
In S803, the
Next, in S804, the
S805で、メイン制御部303は、トラッキングが可能であるか否かを判定する。メイン制御部303は、第1変換行列及び第2変換行列の作成が完了していた場合、トラッキングが可能であると判定して(S805のYes)S806へ遷移する。一方、メイン制御部303は、第1変換行列及び第2変換行列のいずれかが作成されていなかった場合、トラッキングが不可能であると判定して(S805のNo)S807へ遷移する。
In S805, the
S806で、メイン制御部303は、座標変換処理部312に対し、入力された最新の撮影画像と直前に入力された撮影画像との間の第3変換行列を生成するよう命令する。
次に、S807で、メイン制御部303は、座標変換処理部312に対し、生成された第1変換行列、第2変換行列、及び第3変換行列を用いて、全体画像と最新の撮影画像との間で座標の変換が可能となる変換行列を生成するよう命令する。
In S806, the
Next, in S807, the
S808で、メイン制御部303は、トラッキング処理が規定時間内に終了したか否かを判定する。トラッキング処理が規定時間内に終了したと判定した場合(S808のYes)、メイン制御部303はS812へ遷移する。一方、トラッキング処理が規定時間内に終了しなかったと判定した場合(S808のNo)、メイン制御部303はS809へ遷移する。
In S808, the
S809で、メイン制御部303は、トラッキング誤差量算出部314に対し、最新の撮影画像の取得結果からトラッキングの誤差量を算出するよう命令する。また、トラッキング誤差量算出部314によるトラッキングの誤差量の算出結果に基づいて、蓄積誤差が算出される。
In S809, the
S810で、メイン制御部303は、トラッキング誤差量算出部314から蓄積誤差を取得し、取得したトラッキングの蓄積誤差と誤差の閾値とを比較する。誤差の閾値は、モバイルアプリ302のユーザーインタフェース(UI)で設定することや、トラッキング処理とマッチング処理との結果から適応的に決定することができる。メイン制御部303は、トラッキングの蓄積誤差が誤差の閾値を越えていると判定した場合(S810のYes)にはS811へ遷移し、トラッキングの蓄積誤差が誤差の閾値を越えていないと判定した場合(S810のNo)にはS812へ遷移する。
In S810, the
S811で、メイン制御部303は、後述する第1変換行列作成を行うフラグを立てる。この第1変換行列作成フラグは、S804での第1変換行列及び第2変換行列の作成・更新処理において用いられる。
In S811, the
S812で、メイン制御部303は、S807で生成した変換行列と、記憶部307に記憶されたデータ入力領域情報テーブル601の情報とを用いて、撮影画像上にデータ入力領域をマッピングし、モバイル端末100のモバイル端末画面400上に表示する。メイン制御部303は、S807で生成した変換行列に基づいて、データ入力領域情報テーブル601に格納されている全体画像座標系でのデータ入力領域を撮影画像上にマッピングする。なお、撮影画像入力後にS807によるトラッキング処理を経由していない場合には、データ入力領域をマッピングしていない撮影画像をそのままモバイル端末画面400に表示する。
In S812, the
S813で、メイン制御部303は、撮影画像取得部306による撮影画像の入力が終了したか否かを判定する。メイン制御部303は、撮影画像の入力が終了したと判定した場合(S813のYes)には図8に示す処理を終了し、撮影画像の入力が続いていると判定した場合(S813のNo)にはS803へ戻り処理を継続する。
In S813, the
<第1変換行列及び第2変換行列の作成・更新処理>
次に、図8のS804で実行される第1変換行列及び第2変換行列の作成・更新処理について、図9を参照して説明する。図9は、第1変換行列及び第2変換行列の作成・更新処理の例を示すフローチャートである。
<Creation / update processing of the first transformation matrix and the second transformation matrix>
Next, the process of creating / updating the first transformation matrix and the second transformation matrix executed in S804 of FIG. 8 will be described with reference to FIG. FIG. 9 is a flowchart showing an example of creation / update processing of the first transformation matrix and the second transformation matrix.
S901で、メイン制御部303は、第1変換行列がすでに生成済みであるか否かを判定する。メイン制御部303は、第1変換行列が生成済みであると判定した場合(S901のYes)にはS902へ遷移し、第1変換行列が未生成であると判定した場合(S901のNo)にはS905へ遷移する。
In S901, the
S902で、メイン制御部303は、第1変換行列を更新するか否かを判定する。第1変換行列の更新タイミングは、第1変換行列及び第2変換行列がすでに生成済みで、S811においてメイン制御部303が第1変換行列作成を行うフラグを立てた状態で最新の撮影画像に対して更新を行う。メイン制御部303は、第1変換行列を更新しないと判定した場合(S902のNo)にはS903遷移し、第1変換行列を更新すると判定した場合(S902のYes)にはS908へ遷移する。
In S902, the
S903で、メイン制御部303は、第2変換行列がすでに生成済みであるか否かを判定する。メイン制御部303は、第2変換行列が生成済みであると判定した場合(S903のYes)にはS904へ遷移し、第2変換行列が未生成であると判定した場合(S903のNo)にはS909へ遷移する。
In S903, the
S904で、メイン制御部303は、第1変換行列の更新が行われたか否かを判定する。メイン制御部303は、第1変換行列の更新が行われたと判定した場合(S904のYes)にはS909へ遷移し、第1変換行列の更新が行われていないと判定した場合(S904のNo)には第1変換行列及び第2変換行列の作成・更新処理を終了する。
In S904, the
S905で、メイン制御部303は、特徴点比較処理部310による特徴点比較処理が行われている最中であるか否かを判別する。メイン制御部303は、特徴点比較処理の実行中であると判定した場合(S905のYes)にはS907へ遷移し、特徴点比較処理の実行中でないと判定した場合(S905のNo)にはS906へ遷移する。
In S905, the
S906で、メイン制御部303は、特徴点比較処理部310に対し、全体画像と最新の撮影画像との間で特徴点比較処理を開始するよう指示し、第1変換行列及び第2変換行列の作成・更新処理を終了する。
In S906, the
S907で、メイン制御部303は、特徴点比較処理部310による特徴点比較処理が完了したか否かを判定する。メイン制御部303は、特徴点比較処理が完了したと判定した場合(S907のYes)にはS908へ遷移し、特徴点比較処理が完了していないと判定した場合(S907のNo)には第1変換行列及び第2変換行列の作成・更新処理を終了する。
In S907, the
S908で、メイン制御部303は、特徴点比較処理部310による特徴点比較処理結果を用いて、座標変換処理部312に対し全体画像と最新の撮影画像と間の第1変換行列を生成するよう指示する。第1変換行列の生成が完了するとS901へ遷移して処理を継続する。
In S908, the
S909で、メイン制御部303は、座標変換処理部312に対し、第1変換行列の作成に用いた特徴点比較画像と最新の撮影画像との間で第2変換行列を求めるよう指示する。第2変換行列の生成が完了すると、第1変換行列及び第2変換行列の作成・更新処理を終了する。
In S909, the
<トラッキング誤差量算出>
トラッキング誤差量算出部314による誤差算出処理について、図10を参照して説明する。図7を参照して説明したトラッキング処理で既に説明した処理については省略する。撮影画像700〜708は、撮影画像取得部306から取得された連続する動画撮影の撮影画像であり、全体画像500にカメラ104を近づけて撮影されたものである。ここで、未使用画像1001、1002、1003、1004は、画像が未使用又は未取得の画像を示す。未使用画像1001〜1004は、トラッキング処理部313がトラッキング処理を行えない場合、又はカメラユニット206から取得できる連続撮影の規定間隔で撮影画像取得部306が画像取得を行えないことにより未使用又は未取得の画像である。
<Calculation of tracking error amount>
The error calculation process by the tracking error
トラッキング処理部313は、撮影画像703において、撮影画像700と最新の撮影画像703とを入力画像として、特徴点追跡処理部311によって求められた特徴点追跡処理結果を用いて、マッチング処理を行う。撮影画像700は、第1変換行列709及び第2変換行列710の算出に用いられた撮影画像である。マッチング処理では、第1変換行列709、第2変換行列710、第3変換行列711を掛け合わせて求められる、全体画像500と撮影画像704の間で座標の変換が可能となる変換行列から画像上の座標をマッチング処理により特定を行う。マッチング処理を行った結果、座標のズレが最小になるため、トラッキング誤差のリセットを行う。
The
トラッキング処理部313は、未使用画像1003が存在するため、未使用画像1003の判定を行って、撮影画像704と撮影画像706との間で第3変換行列1006の生成と、トラッキング誤差量算出部314からトラッキング誤差量の算出を行う。トラッキング誤差量算出部314は、算出したトラッキング誤差量を蓄積誤差としてDB部308に保持する。
Since the
トラッキング誤差算出状態1009〜1016は、各画像における処理の状態を示す。トラッキング誤差算出状態1014の場合、トラッキング誤差算出状態1013からの蓄積誤差が0であり、未使用画像1003により1フレーム分の未使用画像が発生したために発生誤差が1であることを示す。さらに、その結果、トラッキング誤差算出状態1014の蓄積誤差が1になったことを示す。ここで、現在の蓄積誤差の閾値が2であるため、蓄積誤差は閾値を超えていない。
The tracking error calculation states 1009 to 1016 indicate the processing states in each image. In the case of the tracking
同様に、トラッキング処理部313は、未使用画像1004が存在するため、第3変換行列1006の生成と、トラッキング誤差量算出部314からトラッキング誤差量の算出を行う。
Similarly, since the
未使用画像1003、1004などの発生により、座標変換処理部312により求められた変換行列の精度は、複数の未使用画像が発生した場合の変換行列を掛け合わせることで誤差が蓄積する。そのため、トラッキング誤差量算出部314により、誤差の蓄積が閾値を越えたと判定された場合に、第1変換行列と第2変換行列を更新するマッチング処理を行うことで蓄積された誤差がリセットされる。
The accuracy of the transformation matrix obtained by the coordinate
未使用画像1004において、トラッキング誤差算出状態1016では蓄積誤差が2であり、未使用画像1004により1フレーム分の未使用画像が発生したために、発生誤差が1であり、トラッキング誤差算出状態1016の蓄積誤差が2になったことを示す。ここで、現在の蓄積誤差の閾値が2であり、蓄積誤差が閾値2を超えたために、メイン制御部303は、マッチング処理を行う第1変換行列1007、第2変換行列1008を作成するためのフラグを立てる(図8のS811)。
In the
本実施形態によれば、紙文書等の被写体に対して接近して画像を取り込む際に、適切なタイミングでマッチング処理を行うことにより、マッチング処理による演算負荷を減らしつつ、ズレの少ないトラッキングをすることができる。 According to the present embodiment, when an image is captured in close proximity to a subject such as a paper document, matching processing is performed at an appropriate timing to reduce the calculation load due to the matching processing and to perform tracking with less deviation. be able to.
なお、前述した実施形態において、トラッキング未使用の撮影画像が連続して発生した場合、トラッキングの誤差が大きくなることが考えられる。そこで、トラッキングの誤差に対する重みづけを行うようにし、トラッキング未使用の撮影画像が連続して発生した場合には、トラッキング未使用の撮影画像が単独で発生した場合よりも、トラッキングの誤差に対する重みを大きくするようにしても良い。 In the above-described embodiment, when captured images that have not been tracked are continuously generated, it is conceivable that the tracking error becomes large. Therefore, weighting is performed for the tracking error, and when the captured images without tracking are continuously generated, the weight for the tracking error is increased as compared with the case where the captured images without tracking are generated alone. You may try to make it larger.
(本発明の他の実施形態)
本発明は、前述の実施形態の1以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける1つ以上のプロセッサがプログラムを読み出し実行する処理でも実現可能である。また、1以上の機能を実現する回路(例えば、ASIC)によっても実現可能である。
(Other Embodiments of the present invention)
The present invention supplies a program that realizes one or more functions of the above-described embodiment to a system or device via a network or storage medium, and one or more processors in the computer of the system or device reads and executes the program. It can also be realized by the processing to be performed. It can also be realized by a circuit (for example, ASIC) that realizes one or more functions.
なお、前記実施形態は、何れも本発明を実施するにあたっての具体化のほんの一例を示したものに過ぎず、これらによって本発明の技術的範囲が限定的に解釈されてはならないものである。すなわち、本発明はその技術思想、又はその主要な特徴から逸脱することなく、様々な形で実施することができる。 It should be noted that the above-described embodiments are merely examples of embodiment of the present invention, and the technical scope of the present invention should not be construed in a limited manner by these. That is, the present invention can be implemented in various forms without departing from the technical idea or its main features.
100:携帯型端末装置(モバイル端末) 301:データ管理部 302:モバイルアプリ 303:メイン制御部 304:情報表示部 305:操作情報取得部 306:撮影画像取得部 307:記憶部 308:データベース(DB)部 309:特徴点抽出部 310:特徴点比較処理部 311:特徴点追跡処理部 312:座標変換処理部 313:トラッキング処理部 314:トラッキング誤差量算出部 100: Portable terminal device (mobile terminal) 301: Data management unit 302: Mobile application 303: Main control unit 304: Information display unit 305: Operation information acquisition unit 306: Captured image acquisition unit 307: Storage unit 308: Database (DB) ) Part 309: Feature point extraction unit 310: Feature point comparison processing unit 311: Feature point tracking processing unit 312: Coordinate conversion processing unit 313: Tracking processing unit 314: Tracking error amount calculation unit
Claims (9)
前記抽出手段により抽出された、第1の画像における特徴量と、前記第1の画像とは異なる第2の画像における特徴量とを比較して一致する特徴点の組み合わせを求める比較処理手段と、
前記抽出手段により抽出された特徴点の画像間における移動ベクトルを求める追跡処理手段と、
前記比較処理手段又は前記追跡処理手段による処理結果に基づいて求められる変換行列を用いて、画像の所定の領域に係るトラッキング処理を行うトラッキング処理手段と、
前記トラッキング処理手段によるトラッキング処理が行われない画像が発生した場合に、発生するトラッキングの誤差を算出して蓄積する誤差算出手段と、
前記誤差算出手段により蓄積した誤差が閾値を越えた場合に、前記比較処理手段による処理を実行させ、前記誤差算出手段により蓄積した誤差をリセットさせる制御手段とを有することを特徴とする情報処理装置。 An extraction means for extracting feature points and feature quantities of the feature points from the entire image of the subject and captured images obtained by continuously photographing the subject.
A comparison processing means that compares the feature amount in the first image extracted by the extraction means with the feature amount in the second image different from the first image and obtains a combination of matching feature points.
A tracking processing means for obtaining a movement vector between images of feature points extracted by the extraction means, and
A tracking processing means that performs tracking processing related to a predetermined region of an image by using the comparison processing means or a transformation matrix obtained based on the processing result by the tracking processing means.
An error calculation means for calculating and accumulating a tracking error that occurs when an image that is not tracked by the tracking processing means is generated.
An information processing apparatus including a control means for executing a process by the comparison processing means and resetting the error accumulated by the error calculating means when the error accumulated by the error calculating means exceeds a threshold value. ..
前記変換処理手段は、前記比較処理手段による処理が実行される毎に、前記第1の画像と前記第2の画像とに基づいて第1変換行列を生成し、前記第1変換行列を生成した後の最新の前記撮影画像と前記第1変換行列の生成に用いられた前記第2の画像とに基づいて第2変換行列を生成し、前記第1変換行列及び前記第2変換行列を用いて前記トラッキング処理に用いる前記変換行列を求めることを特徴とする請求項1又は2に記載の情報処理装置。 It has a transformation processing means for obtaining the transformation matrix used for the tracking processing, and has
The conversion processing means generates a first transformation matrix based on the first image and the second image each time the processing by the comparison processing means is executed, and generates the first transformation matrix. A second transformation matrix is generated based on the latest photographed image and the second image used for generating the first transformation matrix, and the first transformation matrix and the second transformation matrix are used. The information processing apparatus according to claim 1 or 2, wherein the transformation matrix used for the tracking process is obtained.
前記トラッキング処理手段は、前記変換行列及び前記保持手段が保持する情報に基づいて、前記撮影画像における前記所定の領域をトラッキングすることを特徴とする請求項1〜5の何れか1項に記載の情報処理装置。 It has a holding means for holding information indicating the position of the predetermined region in the whole image.
The tracking processing means according to any one of claims 1 to 5, wherein the tracking processing means tracks the predetermined region in the captured image based on the transformation matrix and the information held by the holding means. Information processing device.
被写体の全体画像及び前記被写体を連続して撮影した撮影画像から特徴点及び前記特徴点の特徴量を抽出する抽出工程と、
前記抽出工程にて抽出された、第1の画像における特徴量と、前記第1の画像とは異なる第2の画像における特徴量とを比較して一致する特徴点の組み合わせを求める比較処理工程と、
前記抽出工程にて抽出された特徴点の画像間における移動ベクトルを求める追跡処理工程と、
前記比較処理工程又は前記追跡処理工程の処理結果に基づいて求められる変換行列を用いて、画像の所定の領域に係るトラッキング処理を行うトラッキング処理工程と、
前記トラッキング処理が行われない画像が発生した場合に、発生するトラッキングの誤差を算出して蓄積する誤差算出工程と、
前記誤差算出工程にて蓄積した誤差が閾値を越えた場合に、前記比較処理工程の処理を実行させ、前記誤差算出工程にて蓄積した誤差をリセットさせる制御工程とを有することを特徴とする情報処理方法。 It is an information processing method of an information processing device.
An extraction step of extracting feature points and feature quantities of the feature points from the entire image of the subject and the captured images of the subject continuously photographed.
A comparison processing step of comparing the feature amount in the first image extracted in the extraction step with the feature amount in the second image different from the first image and obtaining a combination of matching feature points. ,
A tracking process for obtaining a movement vector between images of feature points extracted in the extraction step, and a tracking process for obtaining a movement vector between images.
A tracking processing step of performing tracking processing related to a predetermined region of an image by using a transformation matrix obtained based on the processing result of the comparison processing step or the tracking processing step.
An error calculation process that calculates and accumulates the tracking error that occurs when an image that is not subjected to the tracking process occurs, and
Information characterized by having a control step of executing the process of the comparison processing step and resetting the error accumulated in the error calculation step when the error accumulated in the error calculation step exceeds the threshold value. Processing method.
被写体の全体画像及び前記被写体を連続して撮影した撮影画像から特徴点及び前記特徴点の特徴量を抽出する抽出ステップと、
前記抽出ステップにて抽出された、第1の画像における特徴量と、前記第1の画像とは異なる第2の画像における特徴量とを比較して一致する特徴点の組み合わせを求める比較処理ステップと、
前記抽出ステップにて抽出された特徴点の画像間における移動ベクトルを求める追跡処理ステップと、
前記比較処理ステップ又は前記追跡処理ステップの処理結果に基づいて求められる変換行列を用いて、画像の所定の領域に係るトラッキング処理を行うトラッキング処理ステップと、
前記トラッキング処理が行われない画像が発生した場合に、発生するトラッキングの誤差を算出して蓄積する誤差算出ステップと、
前記誤差算出ステップにて蓄積した誤差が閾値を越えた場合に、前記比較処理ステップの処理を実行させ、前記誤差算出ステップにて蓄積した誤差をリセットさせる制御ステップとを実行させるためのプログラム。 To the computer of the information processing device
An extraction step of extracting feature points and feature quantities of the feature points from the entire image of the subject and the captured images of the subject continuously captured.
A comparison processing step of comparing the feature amount in the first image extracted in the extraction step with the feature amount in the second image different from the first image and obtaining a combination of matching feature points. ,
A tracking process step for obtaining a movement vector between images of feature points extracted in the extraction step, and a tracking processing step.
A tracking processing step that performs tracking processing related to a predetermined region of an image by using a transformation matrix obtained based on the comparison processing step or the processing result of the tracking processing step.
An error calculation step that calculates and accumulates the tracking error that occurs when an image that is not subjected to the tracking process occurs, and
A program for executing the processing of the comparison processing step and the control step of resetting the error accumulated in the error calculation step when the error accumulated in the error calculation step exceeds the threshold value.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2019205645A JP2021077283A (en) | 2019-11-13 | 2019-11-13 | Information processing apparatus, information processing method, and program |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2019205645A JP2021077283A (en) | 2019-11-13 | 2019-11-13 | Information processing apparatus, information processing method, and program |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2021077283A true JP2021077283A (en) | 2021-05-20 |
Family
ID=75898022
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2019205645A Pending JP2021077283A (en) | 2019-11-13 | 2019-11-13 | Information processing apparatus, information processing method, and program |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2021077283A (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114845054A (en) * | 2022-04-25 | 2022-08-02 | 南京奥拓电子科技有限公司 | Micro-motion camera control method and device |
-
2019
- 2019-11-13 JP JP2019205645A patent/JP2021077283A/en active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114845054A (en) * | 2022-04-25 | 2022-08-02 | 南京奥拓电子科技有限公司 | Micro-motion camera control method and device |
CN114845054B (en) * | 2022-04-25 | 2024-04-19 | 南京奥拓电子科技有限公司 | Micro camera control method and device |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10810711B2 (en) | Information processing apparatus, storage medium, and information processing method | |
Dong et al. | Video stabilization for strict real-time applications | |
US10586099B2 (en) | Information processing apparatus for tracking processing | |
WO2019042404A1 (en) | Image processing method, terminal, and storage medium | |
US10643095B2 (en) | Information processing apparatus, program, and information processing method | |
US20180070013A1 (en) | Method and system for stabilizing video frames | |
KR20150126768A (en) | Method for composing image and electronic device thereof | |
US10872263B2 (en) | Information processing apparatus, information processing method and storage medium | |
US10163212B2 (en) | Video processing system and method for deformation insensitive tracking of objects in a sequence of image frames | |
US20150117539A1 (en) | Image processing apparatus, method of calculating information according to motion of frame, and storage medium | |
CN114255337A (en) | Method and device for correcting document image, electronic equipment and storage medium | |
JP2018046337A (en) | Information processing device, program and control method | |
KR20210069686A (en) | Object tracking based on custom initialization points | |
US10999513B2 (en) | Information processing apparatus having camera function, display control method thereof, and storage medium | |
JP2021077283A (en) | Information processing apparatus, information processing method, and program | |
US10373329B2 (en) | Information processing apparatus, information processing method and storage medium for determining an image to be subjected to a character recognition processing | |
JP6171660B2 (en) | Information processing apparatus, information processing system, and program | |
JP2017120455A (en) | Information processing device, program and control method | |
JP2019028677A (en) | Information processing device, information processing method and program | |
US20230148172A1 (en) | Augmented reality processing device and method | |
WO2014175484A1 (en) | Method for stabilizing image having jitter and image processing device to which same is applied | |
CN110300253B (en) | Image processing apparatus and method, and storage medium storing instructions | |
CN112991179B (en) | Method, apparatus, device and storage medium for outputting information | |
JP5929379B2 (en) | Image processing apparatus, image processing method, and program | |
EP3534605B1 (en) | Image processing device, image display device, and program |