JP2018191195A - Image processing apparatus, image processing apparatus control method, and program - Google Patents
Image processing apparatus, image processing apparatus control method, and program Download PDFInfo
- Publication number
- JP2018191195A JP2018191195A JP2017093523A JP2017093523A JP2018191195A JP 2018191195 A JP2018191195 A JP 2018191195A JP 2017093523 A JP2017093523 A JP 2017093523A JP 2017093523 A JP2017093523 A JP 2017093523A JP 2018191195 A JP2018191195 A JP 2018191195A
- Authority
- JP
- Japan
- Prior art keywords
- detection
- unit
- image
- priority
- camera
- 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
- Studio Devices (AREA)
- User Interface Of Digital Computer (AREA)
- Image Analysis (AREA)
- Position Input By Displaying (AREA)
- Facsimile Scanning Arrangements (AREA)
Abstract
Description
本発明は、撮影デバイスで撮影した画像を処理する画像処理装置、画像処理装置の制御方法、及びプログラムに関する。 The present invention relates to an image processing apparatus that processes an image captured by an imaging device, a control method for the image processing apparatus, and a program.
従来、撮影デバイスから得られる画像を基に、ユーザのジェスチャー操作を認識して対応する処理を実行するように制御するシステムや、物体(人や物)の動きを検知してイベントを通知するシステムなどが提案されている(特許文献1、2)。
Conventionally, a system that recognizes a user's gesture operation based on an image obtained from a photographing device and performs a corresponding process, or a system that detects an object (a person or an object) and notifies an event Have been proposed (
特許文献1では、撮影デバイスから取得した画像を解析して人の手や指等を検出し、ジェスチャー操作として認識する技術(ジェスチャー検知機能)が提案されている。特許文献2では、撮影デバイスから取得した画像を解析して検出対象である人や物の動きを検知する技術(物体検知機能)が提案されている。しかし、上記従来の技術はいずれも、ジェスチャー検知機能や物体検知機能などのいずれか1つの検知機能を実現するものであり、1つの撮影デバイスで2つの検知機能を実現するものではなかった。
例えば1つの撮影デバイスでジェスチャー検知機能と、物体検知機能の双方を実現させようとした場合、それぞれの検知機能で検知性能を最大限発揮できるような画像の特性が異なるため、従来の技術では十分な性能を満たすことができなかった。
ジェスチャー検知機能では、動きに強い連続画像が必要となるため、露光時間を短くしてでも高フレームレートを満たすことが望ましい。一方、物体検知では、物体をはっきりと検出するために、露光時間を長くしてでも鮮明な画像を取ることが望ましい。このため、1つの撮影デバイスを用いて、上述のような異なる2つの要望を同時に満たすことができなかった。従来では、良好な結果を得るための最適な画像が異なるような複数の検知機能(例えば物体検知機能、ジェスチャー検知機能)を両立させるためには、個々の機能ごとに撮影デバイスを用意する必要があった。
For example, when trying to realize both the gesture detection function and the object detection function with a single shooting device, the image characteristics that can maximize the detection performance of each detection function are different. Performance could not be met.
Since the gesture detection function requires a continuous image that is resistant to movement, it is desirable to satisfy a high frame rate even if the exposure time is shortened. On the other hand, in object detection, in order to detect an object clearly, it is desirable to take a clear image even if the exposure time is extended. For this reason, it was not possible to satisfy the two different demands described above simultaneously using one imaging device. Conventionally, in order to achieve a plurality of detection functions (for example, an object detection function and a gesture detection function) in which optimum images for obtaining good results are different, it is necessary to prepare a photographing device for each function. there were.
このように、従来の技術では、1つの撮影デバイスで撮影された画像を用いてジェスチャー検知機能や物体検知機能などの良好な結果を得るための最適な画像が異なるような複数の検知機能を精度よく実現するができなかった。 As described above, in the conventional technology, a plurality of detection functions with different optimum images for obtaining good results such as a gesture detection function and an object detection function using an image captured by one imaging device are accurately used. Well realized but could not.
本発明は、上記の問題点を解決するためになされたものである。本発明の目的は、良好な結果を得るための最適な画像が異なるような複数の検知機能を1つの撮影デバイスで精度よく実現することができる仕組みを提供することである。 The present invention has been made to solve the above problems. An object of the present invention is to provide a mechanism capable of accurately realizing a plurality of detection functions such that optimum images for obtaining good results are different with one imaging device.
本発明は、所定の撮影領域を撮影する撮影手段と、前記撮影手段により撮影された画像データに基づいてそれぞれ異なる検知処理を行う複数の検知手段と、前記複数の検知手段がそれぞれ行う検知処理のうち優先する検知処理を判定する判定手段と、前記撮影手段の撮影モードを、前記判定手段により優先する検知処理と判定された検知処理に応じたモードに切り替える切り替え手段と、を有することを特徴とする。 The present invention relates to an imaging unit for imaging a predetermined imaging area, a plurality of detection units for performing different detection processes based on image data captured by the imaging unit, and a detection process for each of the plurality of detection units. A determination unit that determines a priority detection process; and a switching unit that switches a shooting mode of the shooting unit to a mode according to the detection process determined to be a priority detection process by the determination unit. To do.
本発明によれば、良好な結果を得るための最適な画像が異なるような複数の検知機能を1つの撮影デバイスで精度よく実現することができる。 According to the present invention, it is possible to accurately realize a plurality of detection functions with different optimal images for obtaining good results with a single photographing device.
以下、本発明を実施するための形態について図面を参照して説明する。 Hereinafter, embodiments for carrying out the present invention will be described with reference to the drawings.
図1は、本発明の画像処理装置の一実施例を示すスタンド型スキャナを含むネットワーク構成の一例を示す図である。
カメラスキャナ101は、本実施例のスタンド型スキャナである。カメラスキャナ101は、イーサネット(登録商標)等のネットワーク104を介して、ホストコンピュータ102およびプリンタ103と通信可能に接続されている。
FIG. 1 is a diagram showing an example of a network configuration including a stand type scanner showing an embodiment of the image processing apparatus of the present invention.
The
カメラスキャナ101は、ホストコンピュータ102からの指示により、カメラスキャナ101から画像を読み取るスキャン機能や、スキャンデータをプリンタ103により出力するプリント機能の実行が可能である。また、カメラスキャナ101は、ホストコンピュータ102を介さず、カメラスキャナ101への直接の指示により、スキャン機能、プリント機能の実行も可能である。
The
<カメラスキャナの構成>
図2は、カメラスキャナ101の構成の一例を説明する図である。
図2(a)に示すように、カメラスキャナ101は、コントローラ部201、カメラ部202、腕部203、短焦点プロジェクタ207、距離画像センサ部208を含む。
<Configuration of camera scanner>
FIG. 2 is a diagram for explaining an example of the configuration of the
As shown in FIG. 2A, the
カメラスキャナの本体であるコントローラ部201と、撮影を行うためのカメラ部202、短焦点プロジェクタ207および距離画像センサ部208は、腕部203により連結されている。腕部203は、関節を用いて曲げ伸ばしが可能である。
A
図2(a)には、カメラスキャナ101が設置されている書画台204も示している。カメラスキャナ101のカメラ部202および距離画像センサ部208のレンズは、書画台204方向に向けられている。カメラスキャナ101は、破線で囲まれた読み取り領域205内の画像を読み取り可能である。図2の例では、読み取り領域205内に原稿206が置かれているため、カメラスキャナ101により原稿206を読み取り可能である。
FIG. 2A also shows a document table 204 on which the
また、書画台204内にはターンテーブル209が設けられている。ターンテーブル209は、コントローラ部201からの指示によって回転することが可能である。ターンテーブル209を回転することにより、ターンテーブル209上に置かれた物体とカメラ部202との角度を変えることができる。
A
なお、カメラ部202は、単一解像度で画像を撮影するものとしてもよいが、高解像度画像撮影と低解像度画像撮影が可能なものとすることが好ましい。
The
また、図2には示していないが、カメラスキャナ101は、図3に示すように、LCDタッチパネル330およびスピーカ340をさらに備えることもできる。さらに、カメラスキャナ101は、周囲の環境情報を収集するための人感センサ、照度センサ、加速度センサなどの各種センサデバイスを含むこともできる。
Although not shown in FIG. 2, the
図2(b)は、カメラスキャナ101における座標系について表している。
カメラスキャナ101では、各ハードウェアデバイスに対して、「カメラ座標系」、「距離画像センサ座標系」、「プロジェクタ座標系」という座標系が定義されている。これらの座標系は、カメラ部202および距離画像センサ部208のRGBカメラ363が撮影する画像平面、あるいはプロジェクタ207が投影する画像平面をXY平面とし、画像平面に直交する方向をZ方向として定義したものである。
FIG. 2B shows a coordinate system in the
In the
さらに、本実施例では、これらの独立した座標系の3次元データを統一的に扱えるようにするために「直交座標系」が定義されている。直交座標系では、書画台204を含む平面をXY平面とし、このXY平面から上方に垂直な向きをZ軸とする。 Furthermore, in this embodiment, an “orthogonal coordinate system” is defined so that the three-dimensional data of these independent coordinate systems can be handled uniformly. In the orthogonal coordinate system, a plane including the document table 204 is an XY plane, and a direction perpendicular to the XY plane is a Z axis.
以下、座標系を変換する場合の例を、図2(c)を用いて説明する。
図2(c)は、直交座標系とカメラ座標系とを用いて表現された空間と、カメラ部202が撮影する画像平面との関係を示す。
直交座標系における3次元点P[X,Y,Z]は、(1)式によって、カメラ座標系における3次元点Pc[Xc,Yc,Zc]へ変換できる。
Hereinafter, an example of converting the coordinate system will be described with reference to FIG.
FIG. 2C shows a relationship between a space expressed using an orthogonal coordinate system and a camera coordinate system and an image plane taken by the
The three-dimensional point P [X, Y, Z] in the orthogonal coordinate system can be converted to the three-dimensional point Pc [X c , Y c , Z c ] in the camera coordinate system by the equation (1).
ここで、Rcおよびtcは、直交座標系に対するカメラの姿勢(回転)と位置(並進)によって求まる外部パラメータによって構成され、Rcを3×3の回転行列、tcを並進ベクトルと呼ぶ。 Here, R c and t c are constituted by external parameters determined by the posture (rotation) and position (translation) of the camera with respect to the orthogonal coordinate system, R c is called a 3 × 3 rotation matrix, and t c is called a translation vector. .
逆に、カメラ座標系で定義された3次元点Pc[Xc,Yc,Zc]は(2)式によって、直交座標系における3次元点P[X,Y,Z]への変換することができる Conversely, the three-dimensional point Pc [X c , Y c , Z c ] defined in the camera coordinate system is converted to the three-dimensional point P [X, Y, Z] in the orthogonal coordinate system by the equation (2). be able to
さらに、カメラ部202で撮影される2次元のカメラ画像平面は、カメラ部202によって3次元空間中の3次元情報が2次元情報に変換されたものである。即ち、カメラ座標系上での3次元点Pc[Xc,Yc,Zc]を、(3)式によってカメラ画像平面での2次元座標pc[xp,yp]に透視投影変換することによって変換することができる。
Further, the two-dimensional camera image plane photographed by the
ここで、Aは、カメラの内部パラメータと呼ばれ、焦点距離と画像中心などで表現される3×3の行列である。 Here, A is a 3 × 3 matrix called an internal parameter of the camera and expressed by a focal length and an image center.
以上のように、(1)式と(3)式を用いることで、直交座標系で表された3次元点群を、カメラ座標系での3次元点群座標やカメラ画像平面に変換することができる。なお、各ハードウェアデバイスの内部パラメータおよび直交座標系に対する位置姿勢(外部パラメータ)は、公知のキャリブレーション手法により予めキャリブレーションされているものとする。以後、特に断りがなく3次元点群と表記した場合は、直交座標系における3次元データを表しているものとする。 As described above, by using the equations (1) and (3), the three-dimensional point group represented by the orthogonal coordinate system is converted into the three-dimensional point group coordinates or the camera image plane in the camera coordinate system. Can do. It is assumed that the internal parameters of each hardware device and the position / orientation (external parameters) with respect to the orthogonal coordinate system are calibrated in advance by a known calibration method. Hereinafter, when there is no particular notice and it is expressed as a three-dimensional point group, it represents three-dimensional data in an orthogonal coordinate system.
<カメラスキャナ101のコントローラ部201のハードウェア構成>
図3は、カメラスキャナ101の本体であるコントローラ部201のハードウェア構成の一例を示す図である。
<Hardware Configuration of
FIG. 3 is a diagram illustrating an example of a hardware configuration of the
図3に示すように、コントローラ部201は、システムバス301に接続されたCPU302、RAM303、ROM304、HDD305及びネットワークI/F306を有する。さらに、コントローラ部201は、画像処理プロセッサ307、カメラI/F308、ディスプレイコントローラ309、シリアルI/F310、オーディオコントローラ311及びUSBコントローラ312を有する。
As illustrated in FIG. 3, the
CPU302は、コントローラ部201全体の動作を制御する中央演算装置である。RAM303は、揮発性メモリである。ROM304は不揮発性メモリであり、CPU302の起動用プログラム等が格納されている。HDD305は、RAM303と比較して大容量なハードディスクドライブ(HDD)である。HDD305には、コントローラ部201の実行する、カメラスキャナ101の制御用プログラム等が格納されている。
The
CPU302は、電源ON等の起動時、ROM304に格納されている起動用プログラムを実行する。この起動用プログラムは、HDD305に格納されている制御用プログラムを読み出し、RAM303上に展開するためのものである。CPU302は、起動用プログラムを実行すると、続けてRAM303上に展開した制御用プログラムを実行し、制御を行う。また、CPU302は、制御用プログラムによる動作に用いるデータもRAM303上に格納して読み書きを行う。HDD305には、さらに制御用プログラムによる動作に必要な各種設定や、カメラ入力によって生成された画像データ等を格納することができる。HDD305は、CPU302によって読み書き可能である。CPU302は、ネットワークI/F306を介してネットワーク104上の他の機器との通信を行う。
The
画像処理プロセッサ307は、RAM303に格納された画像データを読み出して処理し、またRAM303へ書き戻す。なお、画像処理プロセッサ307が実行する画像処理は、回転、変倍、色変換等を含む。
The
カメラI/F308は、カメラ部202および距離画像センサ部208と接続される。カメラI/F308は、CPU302からの指示に応じて、カメラ部202から画像データを、距離画像センサ部208から距離画像データ(距離情報)を取得して、RAM303へ書き込む。また、カメラI/F308は、CPU302からの制御コマンドを、カメラ部202及び距離画像センサ部208へ送信し、カメラ部202及び距離画像センサ部208の設定を行う。距離画像センサ部208については後述する図5で説明する。
The camera I /
なお、コントローラ部201は、ディスプレイコントローラ309、シリアルI/F310、オーディオコントローラ311およびUSBコントローラ312のうち少なくとも1つを備える。
The
ディスプレイコントローラ309は、CPU302の指示に応じて、ディスプレイへの画像データの表示を制御する。ここで、ディスプレイコントローラ309は、短焦点プロジェクタ207およびLCDタッチパネル330に接続されており、これらの表示を制御する。
A
シリアルI/F310は、シリアル信号の入出力を行う。ここでは、シリアルI/F310はターンテーブル209に接続され、CPU302の回転開始・終了および回転角度の指示をターンテーブル209へ送信する。また、シリアルI/F310はLCDタッチパネル330に接続され、CPU302はLCDタッチパネル330が押下されたときに、シリアルI/F310を介して押下された座標を取得する。
The serial I /
オーディオコントローラ311はスピーカ340に接続され、CPU302の指示に応じて音声データをアナログ音声信号に変換し、スピーカ340を通じて音声を出力する。
The
USBコントローラ312は、CPU302の指示に応じて外付けのUSBデバイスの制御を行う。ここでは、USBコントローラ312は、USBメモリやSDカードなどの外部メモリ350と接続され、外部メモリ350へのデータの読み書きを行う。
The
<カメラスキャナ101の制御用プログラムの機能構成>
図4(a)は、CPU302が実行するカメラスキャナ101の制御用プログラムの機能構成401の一例を示す図である。カメラスキャナ101の制御用プログラムは前述のようにHDD305に格納され、CPU302が起動時にRAM303上に展開して実行する。即ち、図4(a)に示す機能構成401は、CPU302がHDD305に格納されるカメラスキャナ101の制御用プログラムをRAM303にロードして実行することにより実現される。
また、図4(b)は、機能構成401の各モジュールの処理の関係を示すシーケンス図である。
<Functional configuration of control program for
FIG. 4A is a diagram illustrating an example of a
FIG. 4B is a sequence diagram showing the processing relationship of each module of the
機能構成401において、メイン制御部402は制御の中心であり、機能構成401内の他の各モジュールを図4(b)に示すように制御する。詳細は、以下に示す各モジュールの説明とともに説明する。
In the
画像取得部416は、画像入力処理を行うモジュールである。画像取得部416は、カメラ画像取得部407、距離画像取得部408を有する。
カメラ画像取得部407は、カメラI/F308を介してカメラ部202が出力する画像データを取得し、RAM303へ格納する。
距離画像取得部408は、カメラI/F308を介して距離画像センサ部208が出力する距離画像データを取得し、RAM303へ格納する。距離画像取得部408の処理の詳細は、後述する図5A、図5Bを用いて説明する。
The
A camera
The distance
認識処理部417は、カメラ画像取得部407、距離画像取得部408が取得する画像データから書画台204上の物体の動きを検知して認識するモジュールである。認識処理部417は、ジェスチャー検知部409、物体検知部410を有する。
The
ジェスチャー検知部409は、画像取得部416から書画台204上の画像を取得し続け、タッチなどのジェスチャーを検知するとメイン制御部402へ通知する。ジェスチャー検知部409の処理の詳細は図6を用いて後述する。
The
物体検知部410は、画像取得部416から書画台204を撮影した画像を取得し、書画台204上に物体が置かれるタイミング、物体が置かれて静止するタイミング、あるいは物体が取り除かれるタイミングなどを検知する処理を行う。物体検知部410の処理の詳細は図7を用いて後述する。物体検知部410は、メイン制御部402からの要求により、物体検知処理を開始し、物体検知処理で発行されたイベントを、メイン制御部402へ通知する。
The
画像処理部418は、カメラ部202および距離画像センサ部208から取得した画像を画像処理プロセッサ307で解析するために用いられる。画像処理部418は、スキャン処理部411、各種画像処理モジュール(例えばOCR処理部412等)を有する。
The
スキャン処理部411は、対象物のスキャンを行うモジュールである。スキャン処理部411は、メイン制御部402からの要求により、平面原稿/書籍/立体物にそれぞれ適した処理を実行し、それぞれに応じた形式のデータを出力する。スキャン処理部411で実行される処理の1つである書籍原稿スキャン処理の詳細については図8を用いて後述する。
OCR処理部412は、文字認識処理を行う。
The
The
ジェスチャー検知部409やスキャン処理部411は、画像処理部418の各種画像処理モジュールを利用して処理を実行する。
The
ユーザインタフェース部403は、メイン制御部402からの要求を受け、メッセージやボタン等のGUI部品を生成する。そして、ユーザインタフェース部403は、表示部406へ生成したGUI部品の表示を要求する。
The
表示部406は、ディスプレイコントローラ309を介して、プロジェクタ207もしくはLCDタッチパネル330へ要求されたGUI部品の表示を行う。プロジェクタ207は、書画台204に向けて設置されているため、書画台204上にGUI部品を投射することが可能となっている。また、ユーザインタフェース部403は、ジェスチャー検知部409が認識したタッチ等のジェスチャー操作、あるいはシリアルI/F310を介したLCDタッチパネル330からの入力操作、そしてさらにそれらの座標を受信する。そして、ユーザインタフェース部403は、描画中の操作画面の内容と操作座標を対応させて操作内容(押下されたボタン等)を判定する。ユーザインタフェース部403は、この操作内容をメイン制御部402へ通知することにより、操作者の操作を受け付ける。
The
ネットワーク通信部404は、ネットワークI/F306を介して、ネットワーク104上の他の機器と例えばTCP/IPによる通信を行う。
データ管理部405は、制御用プログラム401の実行において生成した作業データなど様々なデータをHDD305上の所定の領域へ保存し、管理する。データ管理部405が管理するデータは、例えば、画像取得部416によって撮影され、スキャン処理部411により平面原稿/書籍/立体物に応じた形式で出力されたスキャンデータなどである。
The
The
<距離画像センサおよび距離画像取得部の説明>
図5A、図5Bは、距離画像取得部408の処理および距離画像センサ部208を説明する図である。
距離画像センサ部208は、赤外線によるパターン投射方式の距離画像センサである。赤外線パターン投射部361は、対象物に対して、人の目には不可視である赤外線によって3次元形状測定パターンを投射する。赤外線カメラ362は、対象物に投射した3次元形状測定パターンを読み取るカメラである。RGBカメラ363は、人の目に見える可視光をRGB信号で撮影するカメラである。
<Description of Distance Image Sensor and Distance Image Acquisition Unit>
5A and 5B are diagrams for explaining the processing of the distance
The distance
図5A(a)は、距離画像取得部408の処理を説明するフローチャートである。図5A(a)のフローチャートに示す処理は、距離画像取得部408により実行される。即ち、図5A(a)に示す処理は、CPU302がHDD305に格納されるカメラスキャナ101の制御用プログラムをRAM303にロードして実行することにより実現される。
また、図5Bの(b)〜(d)はパターン投射方式による距離画像の計測原理を説明するための図である。
FIG. 5A (a) is a flowchart illustrating the processing of the distance
5B to 5D are diagrams for explaining the principle of distance image measurement by the pattern projection method.
距離画像取得部408は、処理を開始すると、図5A(a)のS501において、距離画像センサ部208を用いて、例えば図5B(b)に示すように、赤外線パターン投射部361を用いて赤外線による3次元形状測定パターン522を対象物521に投射する。
When the processing starts, the distance
次に、S502において、距離画像取得部408は、RGBカメラ363を用いて対象物を撮影したRGBカメラ画像523を1フレーム取得する。また、距離画像取得部408は、赤外線カメラ362を用いて、上記S501で投射した3次元形状測定パターン522を撮影した赤外線カメラ画像524を1フレーム取得する。なお、赤外線カメラ362とRGBカメラ363とでは設置位置が異なるため、図5B(c)に示すようにそれぞれで撮影される2つのRGBカメラ画像523および赤外線カメラ画像524の撮影領域が異なる。そこで、距離画像取得部408は、以下のS503、S504の処理においてこれらの対応付けを行う。
Next, in S502, the distance
S503において、距離画像取得部408は、赤外線カメラ362の座標系からRGBカメラ363の座標系への座標系変換を用いて赤外線カメラ画像524をRGBカメラ画像523の座標系に合わせる。なお、赤外線カメラ362とRGBカメラ363の相対位置や、それぞれの内部パラメータは事前のキャリブレーション処理により既知であるとする。
In S503, the distance
次に、S504において、距離画像取得部408は、図5B(d)に示すように、3次元形状測定パターン522と上記S503で座標変換を行った赤外線カメラ画像524間での対応点を抽出する。例えば、距離画像取得部408は、赤外線カメラ画像524上の1点を3次元形状測定パターン522上から探索して、同一の点が検出された場合に対応付けを行う。あるいは、距離画像取得部408は、赤外線カメラ画像524の画素の周辺のパターンを3次元形状測定パターン522上から探索し、一番類似度が高い部分と対応付けてもよい。
Next, in S504, the distance
次に、S505において、距離画像取得部408は、赤外線パターン投射部361と赤外線カメラ362を結ぶ直線を基線525(図5B(b))として三角測量の原理を用いて計算を行うことにより、赤外線カメラ362からの距離を算出する。距離画像取得部408は、上記S504で対応付けができた画素については、赤外線カメラ362からの距離を算出して画素値として保存し、対応付けができなかった画素については、距離の計測ができなかった部分として無効値を保存する。距離画像取得部408は、これを上記S503で座標変換を行った赤外線カメラ画像524の全画素に対して行うことで、各画素に距離値が入った距離画像を生成する。
Next, in S505, the distance
次に、S506において、距離画像取得部408は、距離画像の各画素にRGBカメラ画像523のRGB値を保存することにより、1画素につきR、G、B、距離の4つの値を持つ距離画像を生成する。ここで取得した距離画像は、距離画像センサ部208のRGBカメラ363で定義された距離画像センサ座標系が基準となっている。そこで、S507において、距離画像センサ部208は、図2(b)を用いて上述したように、距離画像センサ座標系として得られた距離データを直交座標系における3次元点群に変換する。以後、特に指定がなく3次元点群と表記した場合は、直交座標系における3次元点群を示すものとする。
そして、上記S507の処理の後、距離画像取得部408は、本フローチャートの処理を終了する。
Next, in S506, the distance
After the process of S507, the distance
なお、本実施例では、上述したように、距離画像センサ部208として赤外線パターン投射方式を採用しているが、他の方式の距離画像センサを用いることも可能である。例えば、2つのRGBカメラでステレオ立体視を行うステレオ方式や、レーザー光の飛行時間を検出することで距離を測定するTOF(Time of Flight)方式など、他の計測手段を用いても構わない。
In this embodiment, as described above, an infrared pattern projection method is adopted as the distance
<ジェスチャー検知部の説明>
図6A、図6Bは、ジェスチャー検知部409の処理を説明する図である。
図6A(a)は、ジェスチャー検知部409の処理の詳細を説明するフローチャートである。図6A(a)のフローチャートに示す処理は、ジェスチャー検知部409により実行される。即ち、図6A(a)に示す処理は、CPU302がHDD305に格納されるカメラスキャナ101の制御用プログラムをRAM303にロードして実行することにより実現される。
また、図6Bの(b)〜(d)は、指先検出処理の方法を模式的に表した図である。
<Description of gesture detection unit>
6A and 6B are diagrams illustrating the processing of the
FIG. 6A (a) is a flowchart for explaining details of the process of the
Moreover, (b)-(d) of FIG. 6B is the figure which represented typically the method of the fingertip detection process.
ジェスチャー検知部409は、処理を開始すると、図6A(a)のS601において、初期化処理を行う。初期化処理では、ジェスチャー検知部409は、距離画像取得部408から距離画像を1フレーム取得する。ここで、ジェスチャー検知部409の処理開始時は書画台204上に対象物が置かれていない状態であるため、初期状態として書画台204の平面の認識を行う。つまり、ジェスチャー検知部409は、取得した距離画像から最も広い平面を抽出し、その位置と法線ベクトル(以下「書画台204の平面パラメータ」と呼ぶ)を算出し、RAM303に保存する。
When the process is started, the
続いて、S602において、ジェスチャー検知部409は、書画台204上に存在する物体の3次元点群を取得する(S621、S622)。以下、詳細に説明する。
S621において、ジェスチャー検知部409は、距離画像取得部408から距離画像と3次元点群を1フレーム取得する。さらに、S622において、ジェスチャー検知部409は、書画台204の平面パラメータを用いて、取得した3次元点群から書画台204を含む平面にある点群を除去する。
Subsequently, in S602, the
In S621, the
次に、S603において、ジェスチャー検知部409は、上記S602で取得した3次元点群から操作者の手の形状および指先を検出する処理を行う(S631〜S634)。ここで、図6Bの(b)〜(d)に示す、指先検出処理の方法を模式的に表した図を用いて、S603の処理について詳細を説明する。
Next, in S603, the
まず、S631において、ジェスチャー検知部409は、上記S602で取得した3次元点群から、書画台204を含む平面から所定の高さ以上にある、肌色の3次元点群を抽出することで、手の3次元点群を得る。図6B(b)の661は、抽出した手の3次元点群の一例を表している。
First, in S631, the
次に、S632において、ジェスチャー検知部409は、上記S631で抽出した手の3次元点群を、書画台204の平面に射影した2次元画像を生成して、その手の外形を検出する。図6B(b)の662は、書画台204の平面に投影した3次元点群の一例を表す。投影は、点群の各座標を、書画台204の平面パラメータを用いて投影すればよい。また、図6B(c)に示すように、投影した3次元点群から、xy座標の値だけを取り出せば、z軸方向から見た2次元画像663として扱うことができる。この時、ジェスチャー検知部409は、手の3次元点群の各点が、書画台204の平面に投影した2次元画像の各座標のどれに対応するかを、記憶しておくものとする。
Next, in S632, the
次に、S633において、ジェスチャー検知部409は、上記S632で検出した手の外形上の各点について、その点での外形の曲率を算出し、算出した曲率が所定値より小さい点を指先として検出する。図6B(d)は、外形の曲率から指先を検出する方法を模式的に表したものである。図6B(d)において、664は、書画台204の平面に投影された2次元画像663の外形を表す点の一部を表している。ここで、664のような、外形を表す点のうち、隣り合う5個の点を含むように円を描くことを考える。円665、667が、その例である。このような円を、全ての外形の点に対して順に描き、その直径(例えば666、668)が所定の値より小さい(曲率が小さい)ことを以て、指先とする。この例では、隣り合う5個の点としたが、その数は限定されるものではない。また、ここでは曲率を用いたが、外形に対して楕円フィッティングを行うことで、指先を検出してもよい。
Next, in S633, the
次に、S634において、ジェスチャー検知部409は、上記S633で検出した指先の個数および各指先の座標を算出する。この時、前述したように、書画台204に投影した2次元画像の各点と、手の3次元点群の各点の対応関係を記憶しているため、各指先の3次元座標を得ることができる。ここでは、3次元点群から2次元画像に投影した画像から指先を検出する方法を説明したが、指先検出の対象とする画像は、これに限定されるものではない。例えば、距離画像の背景差分や、RGBカメラ画像の肌色領域から手の領域を抽出し、上に述べたのと同様の方法(外形の曲率計算等)で、手領域のうちの指先を検出してもよい。この場合、検出した指先の座標はRGBカメラ画像や距離画像といった、2次元画像上の座標であるため、その座標における距離画像の距離情報を用いて、直交座標系の3次元座標に変換する必要がある。この時、指先点となる外形上の点ではなく、指先を検出するときに用いた、曲率円の中心を指先点としてもよい。
Next, in S634, the
次に、S604において、ジェスチャー検知部409は、検出した手の形状および指先からのジェスチャー判定処理(S641〜S646)を行う。以下、詳細に説明する。
S641において、ジェスチャー検知部409は、上記S603で検出した指先が1つかどうか判定する。ジェスチャー検知部409は、検出した指先が1つでないと判定した場合(S641でNOの場合)、S646に処理を進める。S646において、ジェスチャー検知部409は、ジェスチャーなしと判定し、S605に処理を進める。
Next, in S604, the
In S641, the
一方、上記S641において、ジェスチャー検知部409は、検出した指先が1つであると判定した場合(S641でYESの場合)、S642に処理を進める。
S642において、ジェスチャー検知部409は、検出した指先と書画台204を含む平面との距離を算出する。
On the other hand, if the
In S642, the
次に、S643において、ジェスチャー検知部409は、上記S642で算出した距離が微小な所定値以下であるかどうかを判定する。ジェスチャー検知部409は、算出した距離が微小な所定値以下であると判定した場合(S643でYESの場合)、S644に処理を進める。S644において、ジェスチャー検知部409は、指先が書画台204へタッチした、タッチジェスチャーありと判定し、S605に処理を進める。
Next, in S643, the
一方、上記S643において、ジェスチャー検知部409は、上記S642で算出した距離が微小な所定値以下でないと判定した場合(S643でNOの場合)、S645に処理を進める。S645において、ジェスチャー検知部409は、指先が移動したジェスチャー(タッチはしていないが指先が書画台204上に存在するジェスチャー)と判定し、S605に処理を進める。
On the other hand, in S643, when the
S605において、ジェスチャー検知部409は、上記S644、S645又はS646で判定したジェスチャーをメイン制御部402へ通知し、S602へ処理を戻し、ジェスチャー検知処理を繰り返す。
なお、ここでは一本指でのジェスチャー検知について説明を行ったが、複数の指あるいは複数の手でのジェスチャー検知に応用することも可能である。
In S605, the
In addition, although the gesture detection with one finger was described here, it can be applied to gesture detection with a plurality of fingers or a plurality of hands.
<物体検知部の処理>
図7A、図7Bは、物体検知部410の処理を説明する図である。
図7Aの(a)、(b)は、物体検知部410の処理の詳細を説明するフローチャートである。図7A(a)、(b)のフローチャートに示す処理は、物体検知部410により実行される。即ち、図7A(a)、(b)に示す処理は、CPU302がHDD305に格納されるカメラスキャナ101の制御用プログラムをRAM303にロードして実行することにより実現される。
また、図7Bの(c)〜(i)は、状態管理テーブルの状態を例示する図である。
<Processing of object detection unit>
7A and 7B are diagrams illustrating the processing of the
FIGS. 7A and 7B are flowcharts illustrating details of the processing of the
Moreover, (c)-(i) of FIG. 7B is a figure which illustrates the state of a state management table.
物体検知部410は、処理を開始すると、図7A(a)のS701において、初期化処理(S711〜S713)を行う。以下、初期化処理について詳細に説明する。
When the processing is started, the
S711において、物体検知部410は、距離画像取得部408からカメラ画像と距離画像をそれぞれ1フレーム取得する。
次に、S712において、物体検知部410は、データ管理部405を介して、上記S711で取得したカメラ画像を、書画台背景カメラ画像/前フレームカメラ画像/直前静止カメラ画像としてHDD305にそれぞれ保存する。また、物体検知部410は、上記S711で取得した距離画像も同様に、書画台背景距離画像/前フレーム距離画像/直前静止距離画像としてHDD305に保存する。なお、以後の説明において、書画台背景画像/前フレーム画像/直前静止画像と記載した場合には、カメラ画像と距離画像の両方を含むものとする。
次に、S713において、物体検知部410は、状態管理テーブルを初期化し、データ管理部405を介して、RAM303へ保存する。
In step S711, the
Next, in S712, the
Next, in S713, the
以下、状態管理テーブルについて詳細に説明する。
図7Bの(c)〜(i)に示すように、状態管理テーブルは、書画台管理テーブルと物体管理テーブルを含む。書画台管理テーブルでは、書画台204上から検知された物体数(objNums)と書画台204上の状態を記録する。また、物体管理テーブルでは、物体ごとに、物体の状態(移動中/静止/原稿検出済など)や、物体の位置・大きさ(幅、高さ等)を含む情報を管理する。これ以外にも状態管理テーブルには、物体に関連する情報を保持することが可能である。
図7B(c)は、初期化処理後の状態管理テーブルを示しており、物体数(objNums)に「0」が設定され、物体管理テーブル内は空欄となっている。
Hereinafter, the state management table will be described in detail.
As shown in (c) to (i) of FIG. 7B, the state management table includes a document table management table and an object management table. In the document table management table, the number of objects (objNums) detected from the document table 204 and the state on the document table 204 are recorded. The object management table manages information including the state of the object (moving / still / document detected, etc.) and the position / size (width, height, etc.) of the object for each object. In addition to this, the state management table can hold information related to the object.
FIG. 7B (c) shows the state management table after the initialization process, where “0” is set to the number of objects (objNums), and the object management table is blank.
続いて、S702において、物体検知部410は、物体検知メイン処理(S721〜S725)を行い、書画台204上での物体の動きを検知する。以下、詳細に説明する。
S721において、物体検知部410は、距離画像取得部408からカメラ画像と距離画像をそれぞれ1フレーム取得する。以後の説明において、現フレーム画像と記載した場合には、本ステップで取得したカメラ画像と距離画像と両方を含むものとする。
Subsequently, in S702, the
In S721, the
次に、S722において、物体検知部410は、上記S702で取得したカメラ画像および距離画像を用いて物体検知処理を行う。ここで、図7A(b)を用いて物体検知処理について詳細に説明する。
Next, in S722, the
図7A(b)のS731において、物体検知部410は、上記S702で取得したカメラ画像および距離画像と、書画台背景画像との差分値を算出する。そこで、物体検知部410は、カメラ画像および距離画像それぞれにおいて、上記S712で保存された書画台背景画像と、上記S721で撮影された現フレーム画像との差分2値画像を生成する。なお、背景差分2値画像中の黒画素部分は画像変化量がない、即ち物体が存在していない部分を表している。また、背景差分2値画像中の白画素部分は画像変化量がある、即ち物体が存在している部分であることを示している。
In S731 of FIG. 7A (b), the
次に、S732において、物体検知部410は、前フレームでの処理において静止物体が検知されている、あるいは上記S731で算出した距離背景差分画像での差分値が予め決めておいた所定値以上かどうかに基づき、物体の検知を判定する。物体検知部410は、書画台204上に物体が存在しない(検知していない)と判定した場合(S732でNOの場合)、S733に処理を進める。なお、S733以降の処理については後述する。
Next, in S732, the
一方、物体検知部410は、書画台204上に物体が存在する(検知した)と判定した場合(S732でYESの場合)、S737に処理を進める。
On the other hand, when the
S737において、物体検知部410は、上記S731で生成した背景差分画像を基にして物体数の増減の判定を行う。物体検知部410は、物体数が増減したと判定した場合(S737でYESの場合)、S738に処理を進める。
In S737, the
S738において、物体検知部410は、上記S731で検出された書画台背景画像の差分領域が直前フレームで検出された物体と同一か否かを判定することで、新規物体か否かを判定する。即ち、直前フレームでは物体が検出されていない領域より物体が検出されたことによる物体数の増加は、新規に書画台204上にフレームインした物体によるものと判断する。この場合、物体検知部410は、新規物体を検出したと判定し(S738でYES)、S739に処理を進める。S739において、物体検知部410は、上記S738のフレームイン判定結果を受け、物体フレームインイベントを発行する。この場合、物体検知部410は、S736において、図7B(d)に示すように物体のフレームイン情報および物体の位置情報などを書き込むことで状態管理テーブルを更新して、図7A(b)の処理を終了する。
In step S738, the
一方、直前フレームで検知されていた物体が分離・統合したことによる物体数の増減は、書画台204上に物体を載置するために手を放した、あるいは載置されていた物体を掴んだなどの要因によるものであると考えられる。この場合、物体検知部410は、新規物体を検出していないと判定し(S738でNO)、S736に処理を進め、図7B(f)に示すように分離・統合した物体情報を書き込むことで状態管理テーブルを更新して、図7A(b)の処理を終了する。
On the other hand, the increase / decrease in the number of objects due to the separation / integration of the objects detected in the previous frame released the hand to place the object on the document table 204 or grabbed the object that was placed. This is thought to be due to factors such as. In this case, the
また、上記S737において、物体検知部410は、物体数が増減していないと判定した場合(S737でNOの場合)、S740に処理を進める。
S740において、物体検知部410は、カメラ画像および距離画像それぞれで、後述するS724(図7A(a))で保存された前フレーム画像と、上記S721で撮影された現フレーム画像との差分画像を生成する。そして、物体検知部410は、所定値によって2値化処理を行うことで差分値を算出する。
If the
In S740, the
次に、S741において、物体検知部410は、上記S740で算出した差分値が予め決めておいた所定値未満かどうかを判定する。物体検知部410は、算出した差分値が所定値以上であると判定した場合(S741でNOの場合)、S736に処理を進め、図7B(e)に示すように状態管理テーブルの物体の位置情報などを更新して、図7A(b)の処理を終了する。
In step S741, the
一方、物体検知部410は、算出した差分値が所定値未満であると判定した場合(S741でYESの場合)、S742に処理を進める。
S742において、物体検知部410は、上記S740が連続してYESとなった回数から、算出した差分値が所定値未満の状態(つまり書画台204上の物体が静止した状態)が、予め決めておいたフレーム数続いたかどうかを判定する。物体検知部410は、差分値が所定値未満の状態が所定フレーム数続いていないと判定した場合(S742でNOの場合)、S736へ進み、図7B(g)に示すように状態管理テーブルの物体の位置情報などを更新して、図7A(b)の処理を終了する。
On the other hand, when the
In S742, the
一方、上記S742において、物体検知部410は、差分値が所定値未満の状態が所定フレーム数続いたと判定した場合(S742でYESの場合)、書画台204上の物体が静止したと判断し、S743に処理を進める。
On the other hand, when the
S743において、物体検知部410は、カメラ画像および距離画像それぞれにおいて、直前静止画像と現フレーム画像との差分画像を生成し、所定値によって2値化処理を行い、直前静止画像との差分値を算出する。
In S743, the
次に、S744において、物体検知部410は、上記S743で算出した差分値が予め決めておいた所定値以上かどうかを判定する。物体検知部410は、算出した差分値が所定値未満と判定した場合(S744でNOの場合)、直前の静止状態から変化がないと判断し、S745に処理を進める。S745では、物体検知部410は、上記S742及びS744において、直前の静止状態と同じ状態での物体静止であると判断されたことを受け、物体静止イベントを再発行し、S736に処理を進める。この場合、S736において、物体検知部410は、S745で発行された物体静止イベントを受け、図7B(h)に示すように状態管理テーブルを更新して、図7A(b)の処理を終了する。
In step S744, the
一方、上記S744において、物体検知部410は、算出した差分値が所定値以上と判定した場合(S744でYESの場合)、S746に処理を進める。
On the other hand, in S744, when the
S746において、物体検知部410は、上記S742およびS744において、直前の静止状態とは異なる状態での物体静止であると判断したことを受け、物体静止イベントを発行する。
さらに、S747において、物体検知部410は、データ管理部405を介して、現フレームのカメラ画像および距離画像を、直前静止カメラ画像および直前静止距離画像としてHDD305に保存し、S736に処理を進める。この場合、S736において、物体検知部410は、S746で発行された物体静止イベントを受け、図7B(h)に示すように状態管理テーブルを更新して、図7A(b)の処理を終了する。
In S746, the
Furthermore, in S747, the
また、上記S732において、物体検知部410は、書画台204上に物体が存在しない(検知していない)と判定した場合(S732でNOの場合)、S733に処理を進める。
S733において、物体検知部410は、直前のフレームにおいて移動物体が検知中であったかを確認することで、フレームアウト判定処理を行う。即ち、物体検知部410は、直前フレームで移動物体を検知していなかった場合には、書画台204上に物体が無い状態が続いている(即ちフレームアウトでない)と判定し(S733でNOと判定し)、図7A(b)の処理を終了する。
If the
In S733, the
一方、上記S733において、物体検知部410は、直前フレームで移動物体を検知していた場合には、直前まで検出された移動物体がフレームアウトしたと判定し(S733でYESと判定し)、S734に処理を進める。
On the other hand, in S733, when the moving object is detected in the immediately preceding frame, the
S734において、物体検知部410は、上記S733のフレームアウト判定結果を受け、物体フレームアウトイベントを発行する。次に、S735において、物体検知部410は、データ管理部405を介して、現フレームのカメラ画像および距離画像を、直前静止カメラ画像および直前静止距離画像としてHDD305にそれぞれ保存する。なお、物体検知部410は、本ステップにおいて、さらに現フレーム画像を書画台背景画像として更新してもよい。またこの場合、S736において、物体検知部410は、図7B(i)に示すように物体のフレームアウト情報を書き込むことで状態管理テーブルを更新する。あるいは、図7B(c)に示すように状態管理テーブルを初期化してもよい。状態管理テーブルの更新後、図7A(b)の処理を終了する。
図7A(b)の処理を終了すると、図7A(a)の処理に戻る。
In S734, the
When the process of FIG. 7A (b) is completed, the process returns to the process of FIG. 7A (a).
図7A(a)のS723において、物体検知部410は、上記S722(即ち図7A(b)の物体検知処理)で発行されたイベントを、メイン制御部402へ通知する。なお、同一フレーム内で複数の物体検知イベントが発行された場合には、物体検知部410は、全ての物体検知イベントをメイン制御部402へ通知する。
In S723 of FIG. 7A (a), the
次に、S724において、物体検知部410は、データ管理部405を介して、上記S721で取得したカメラ画像および距離画像を、前フレームカメラ画像および前フレーム距離画像としてHDD305に保存する。
Next, in S724, the
次に、S725において、物体検知部410は、物体検知処理の終了判定を行い、終了判定がなされるまで上記S721〜S725の処理を繰り返すように制御する。なお、システムの終了はUI画面上に投射表示された終了ボタン(不図示)の操作、カメラスキャナ101の本体の電源ボタン(不図示)の押下などにより行われ、メイン制御部402から通知されるものとする。
Next, in S725, the
<スキャン処理部の説明>
図8A、図8B、図8Cは、スキャン処理部411が実行する書籍原稿スキャン処理を説明する図である。
図8A(a)、(b)及び図8B(c)は、スキャン処理部411が実行する書籍原稿スキャン処理の詳細を説明するフローチャートである。図8A(a)、(b)及び図8B(c)のフローチャートに示す処理は、スキャン処理部411により実行される。即ち、図8A(a)、(b)及び図8B(c)に示す処理は、CPU302がHDD305に格納されるカメラスキャナ101の制御用プログラムをRAM303にロードして実行することにより実現される。
また、図8Cの(d)〜(k)は、書籍原稿スキャン処理を説明するための模式図である。
<Description of Scan Processing Unit>
8A, 8B, and 8C are diagrams for explaining book document scanning processing executed by the
8A (a), 8 (b), and 8B (c) are flowcharts illustrating details of the book document scan process executed by the
Further, (d) to (k) of FIG. 8C are schematic diagrams for explaining book document scanning processing.
スキャン処理部411は、処理を開始すると、図8A(a)のS801において、カメラ画像取得部407、距離画像取得部408を用いて、カメラ部202からカメラ画像を、距離画像センサ部208から距離画像を、それぞれ1フレームずつ取得する。
When the processing is started, the
上記S801で得られるカメラ画像の例を図8C(d)に示す。
図8C(d)に示す例では、書画台204と撮影対象書籍861を含むカメラ画像851が得られている。
An example of the camera image obtained in S801 is shown in FIG.
In the example shown in FIG. 8C (d), a
また、上記S801で得られた距離画像の例を図8C(e)に示す。
図8C(e)に示す例では、距離画像センサ部208に近い方が濃い色であらわされており、距離画像センサ部208から対象物体862上の各画素への距離が含まれる距離画像852が得られている。また、図8C(e)において、距離画像センサ部208からの距離が書画台204よりも遠い画素については白で表されており、対象物体862の書画台204に接している部分(対象物体862では右側のページ)も同じく白色となる。
An example of the distance image obtained in S801 is shown in FIG. 8C (e).
In the example shown in FIG. 8C (e), a color closer to the distance
次に、S802において、スキャン処理部411は、上記S801で取得したカメラ画像と距離画像から書画台204上に載置された書籍物体の3次元点群を算出する処理を行う。
次に、S803において、スキャン処理部411は、上記S801取得したカメラ画像と上記S802で算出した3次元点群から、書籍画像のゆがみ補正処理を行い、2次元の書籍画像を生成する。以下、上記S802およびS803の処理について図8A(b)、図8B(c)を用いて詳細に説明する。
Next, in S802, the
Next, in S803, the
まず、S802の書籍物体3次元点群算出処理について、図8A(b)のフローチャートを用いて説明する。
スキャン処理部411は、書籍物体3次元点群算出処理を開始すると、S811にて、カメラ画像851と書画台背景カメラ画像との画素毎の差分を算出して二値化を行い、図8C(f)のように物体領域863が黒で示されるカメラ差分画像853を生成する。
First, the book object three-dimensional point group calculation process in S802 will be described with reference to the flowchart of FIG. 8A (b).
When the book object three-dimensional point cloud calculation process is started, the
次に、S812において、スキャン処理部411は、カメラ差分画像853を、カメラ座標系から距離画像センサ座標系への変換を行い、図8C(g)のように距離画像センサ部208からみた物体領域864を含むカメラ差分画像854を生成する。
In step S812, the
次に、S813において、スキャン処理部411は、距離画像と書画台背景距離画像との画素毎の差分を算出して二値化を行い、図8C(h)のように物体領域865が黒で示される距離差分画像855を生成する。ここで、対象物体861の書画台204と同じ色で有る部分については、画素値の差が小さくなるためカメラ差分画像854中の物体領域864に含まれなくなる場合がある。また、対象物体862の書画台204と高さが変わらない部分については距離画像センサ部208からの距離値が書画台204と差が小さいため、距離差分画像855中の物体領域865には含まれない場合がある。
Next, in step S813, the
そこで、S814において、スキャン処理部411は、カメラ差分画像854と距離差分画像855の和をとって図8C(i)に示す物体領域画像856を生成し、物体領域866を得る。ここで物体領域866は、書画台204と比べて色が異なるか又は高さが異なる領域となり、カメラ差分画像853中の物体領域863か距離差分画像855中の物体領域865のいずれか片方のみを使った場合よりも、より正確に物体領域を表している。
Therefore, in S814, the
次に、S815において、スキャン処理部411は、距離画像852から物体領域画像856中の物体領域866のみを抽出する。物体領域画像856は距離画像センサ座標系であるため、距離画像852から物体領域画像856中の物体領域866のみを抽出することが可能である。
Next, in S815, the
次に、S816において、スキャン処理部411は、上記S815で抽出した距離画像を直交座標系に変換することにより図8C(j)に示した3次元点群867を生成する。この3次元点群867が書籍物体の3次元点群であり、書籍物体3次元点群算出処理(S802)を終了する。
Next, in S816, the
次に、図8B(c)のフローチャートを用いて、上記S803の書籍画像ゆがみ補正処理について説明する。
スキャン処理部411は、書籍画像ゆがみ補正処理を開始すると、S821において、物体領域画像856を距離センサ画像座標系からカメラ座標系に変換する。
Next, the book image distortion correction process in S803 will be described with reference to the flowchart of FIG. 8B (c).
When the book image distortion correction process is started, the
次に、S822において、スキャン処理部411は、カメラ画像851から物体領域画像856中の物体領域866をカメラ座標系に変換したものを用いて物体領域を抽出する。
次に、S823において、スキャン処理部411は、抽出した物体領域画像を書画台平面へ射影変換する。
Next, in S822, the
Next, in S823, the
次に、S824において、スキャン処理部411は、射影変換した物体領域画像を矩形近似し、その矩形が水平になるように回転することによって、図8C(k)の書籍画像858を生成する。書籍画像858は近似矩形の片方の編がX軸に平行となっているため、以降書籍画像858に対してX軸方向へのゆがみ補正処理を行う。
次に、S825において、スキャン処理部411は、書籍画像858の最も左端の点をPとする(図8C(k)の点P)。
Next, in S824, the
Next, in S825, the
次に、S826において、スキャン処理部411は、書籍物体の3次元点群867から点Pの高さ(図8C(k)のh1)を取得する。
次に、S827において、スキャン処理部411は、書籍画像858の点Pに対してX軸方向に所定の距離(図8C(k)のx1)離れた点をQとする(図8C(k)の点Q)。
次に、S828において、スキャン処理部411は、3次元点群867から点Qの高さ(図8C(k)のh2)を取得する。
次に、S829において、スキャン処理部411は、式(4)を用いて、点Pと点Qの書籍物体上での距離(図8C(g)のl1)を直線近似で算出する。
Next, in S826, the
Next, in S827, the
Next, in S828, the
Next, in S829, the
次に、S830において、スキャン処理部411は、上記S869で算出した距離l1でPQ間の距離を補正し、図8C(k)における画像869上の点P'と点Q'の位置に画素をコピーする。
次に、S831において、スキャン処理部411は、処理を行った点Qを点Pとする(点Qを点Pに入れ替える)。
Next, in S830, the
In step S831, the
次に、S832において、スキャン処理部411は、ゆがみ補正処理を全ての点について終えたかどうかを判断する。スキャン処理部411は、未だ全ての点について終えていないと判定した場合(S832でNOの場合)、上記S826に処理を戻し、同じ処理を行う。これにより、図8C(k)の点Qと点Rの間の補正を実行することができ、画像869上の点Q'と点R'の画素とする。この処理を全画素について繰り返すことにより、画像869はゆがみ補正後の画像となる。
In step S832, the
また、上記S832において、スキャン処理部411は、ゆがみ補正処理を全ての点について終えたと判定した場合(S832でYESの場合)、書籍物体のゆがみ補正処理(S803)を終了する。
以上のようにして、上記S802、S803の処理を行ってゆがみ補正を行った書籍画像を生成することができる。
If the
As described above, it is possible to generate a book image that has been subjected to the distortion correction by performing the processes of S802 and S803.
以下、図8A(a)の説明に戻る。
ゆがみ補正を行った書籍画像の生成後、スキャン処理部411は、S804において、上記S802及びS803で生成した書籍画像に階調補正を行う。
次に、S805において、スキャン処理部411は、上記階調補正を行った書籍画像に対して、予め決めておいた画像フォーマット(例えばJPEG、TIFF、PDF等)に合わせて圧縮およびファイルフォーマット変換を行う。
次に、S806において、スキャン処理部411は、上記変換を行った画像データを、データ管理部405を介して、HDD305の所定の領域へファイルとして保存し、スキャン処理部411で実行する書籍原稿スキャン処理を終了する。
Hereinafter, the description returns to FIG. 8A (a).
After generating the book image subjected to the distortion correction, the
In step S805, the
In step S806, the
<メイン制御部402の説明>
以下、図9の操作説明図と、図10のフローチャート図を用いて、メイン制御部402が実行する優先機能切り替え処理について説明する。
<Description of
The priority function switching process executed by the
図9は、実施例1において、スキャンを実行する際のUI表示と操作者901の操作の様子の一例を示す図である。
図9(a)にスキャン開始時のUI画面の一例を示す。UI画面には、メイン制御部402の制御により、操作指示メッセージ902、スキャン終了ボタン903、スキャン実行ボタン904が投影表示されている。
FIG. 9 is a diagram illustrating an example of a UI display and an operation state of the
FIG. 9A shows an example of a UI screen at the start of scanning. An
図9(b)に示すように、操作者901がスキャン実行ボタン904を押下すると、メイン制御部402は、図9(c)に示すような、スキャン実行画面に表示を遷移させる。スキャン実行画面では、メイン制御部402は、操作指示メッセージ902を更新すると共に、プロジェクタ207を用いて、スキャン原稿を載置するための原稿載置領域905を投影表示する。
As shown in FIG. 9B, when the
操作者901が、図9(d)に示すように、操作指示メッセージ902に従い原稿載置領域905に原稿906を載置する。図9(e)〜(g)に示すように、メイン制御部402は、原稿載置完了を検知すると、スキャン処理を実行し、原稿を取り除くように操作指示メッセージ902を更新する。
As shown in FIG. 9D, the
そして、図9(h)に示すように、操作者901が原稿906を除去すると、メイン制御部402は、図9(i)に示すようなスキャンを続行するか終了するかを選択する確認画面へ表示を遷移させる。なお、スキャンを続行する場合には、操作者901はスキャン実行ボタン904を押下する。
Then, as shown in FIG. 9 (h), when the
図10(a)は、実施例1において、メイン制御部402が実行する処理の一例を説明するフローチャートである。また、図10(b)は、実施例1において、ユーザインタフェース部403が実行する優先機能判定処理の一例を説明するフローチャートである。即ち、図10(a)、(b)に示す処理は、CPU302がHDD305に格納されるカメラスキャナ101の制御用プログラムをRAM303にロードして実行することにより実現される。
FIG. 10A is a flowchart illustrating an example of processing executed by the
メイン制御部402は、処理を開始すると、図10(a)のS1001において、ユーザインタフェース部403に要求して、図10(b)に示す優先機能判定処理を実行させる。
When the process is started, the
図10(b)のS1011において、ユーザインタフェース部403は、アプリケーションから優先機能切り替え指示の有無を判定する。このアプリケーションは、図9に示したスキャンを実行する際のUI等のUI表示を行うためのものである。また、このアプリケーションは、例えば、カメラスキャナ101の起動時や、所定のボタン(不図示)が操作された際などに実行開始されるものとする。さらに、このアプリケーションは、CPU302がHDD305に格納される該アプリケーションの実行モジュールをRAM303にロードして実行することにより実行される。
In S1011 of FIG. 10B, the
図9に示した一連の処理において、図9(a)、(b)及び(i)ではボタン操作を検知する必要がある。このため、図9(a)、(b)及び(i)の画面が表示されている状態では、ジェスチャー検知処理の優先指示がアプリケーションより通知されている必要がある。一方、図9(c)〜(h)では、操作者901の原稿載置を検知する必要がある。このため、図9(c)〜(h)の画面が表示されている状態では、物体検知モードの優先指示がアプリケーションより通知されている必要がある。なお、アプリケーションからの優先機能の通知は必要なタイミングで行えばよいため、図9(a)を表示するタイミングや、図9(b)から図9(c)、あるいは図9(h)から図9(i)に遷移するタイミングで通知すればよい。なお、アプリケーションからの優先機能切り替え指示は、画面遷移時に限定されるものではなく、例えば優先機能選択ボタンを表示しておき、操作者901がUIボタンを押下したことを受けて優先機能切り替え指示を通知するなどしても構わない。このように、優先機能切り替え指示は、UI表示の遷移、及びUI表示に対する操作等に基づいて通知される。
In the series of processes shown in FIG. 9, it is necessary to detect button operations in FIGS. 9A, 9B, and 9I. For this reason, in the state in which the screens of FIGS. 9A, 9B, and 9I are displayed, it is necessary that a priority instruction for gesture detection processing be notified from the application. On the other hand, in FIGS. 9C to 9H, it is necessary to detect the document placement of the
上記S1011において、ユーザインタフェース部403は、優先機能切り替え指示があると判定した場合(S1011でYESの場合)、S1012に処理を進める。S1012において、ユーザインタフェース部403は、指定された検知機能への切り替えを指示する。そして、優先機能判定処理(図10(b))を終了する。
In S1011, if the
一方、上記S1011において、ユーザインタフェース部403は、優先機能切り替え指示がないと判定した場合(S1011でNOの場合)、優先機能切り替えを指示することなく、優先機能判定処理(図10(b))を終了する。
On the other hand, in S1011, if the
以下、図10(a)の説明に戻る。
上記S1001の優先機能判定処理(図10(b))が終了すると、メイン制御部402は、S1002に処理を進める。S1002において、メイン制御部402は、優先機能切り替え指示の有無に基づき、優先機能切り替え処理の必要性を判定する。メイン制御部402は、優先機能切り替え処理がないと判定した場合(S1002でNOの場合)、S1003に処理を進める。
Hereinafter, the description returns to FIG.
When the priority function determination process in S1001 (FIG. 10B) ends, the
S1003において、メイン制御部402は、ジェスチャー検知部409からジェスチャーイベントの有無を判定し、ジェスチャーに対応した処理を実行する。例えば、図9(b)の場合には、スキャン終了ボタン903あるいはスキャン実行ボタン904へのタッチ操作の有無を判定する。そして、スキャン実行ボタン904が押されたと判断された場合には、スキャン実行画面へ遷移するように判定し、ユーザインタフェース部403に対して図9(c)のようなスキャン画面を表示するように指示を行う。ユーザインタフェース部403は、プロジェクタ207によってUI画面を書画台204上へ投影表示させる。
In S1003, the
次に、S1004において、メイン制御部402は、物体検知部410からの物体検知イベントの有無を判定し、物体検知イベントに対応した処理を実行する。例えば、図9(e)の場合には、原稿の静止イベントを受け、スキャン処理部411に対してスキャン実行指示を行う。
Next, in S1004, the
一方、上記S1002において、メイン制御部402は、優先機能切り替え処理があったと判定した場合(S1002でYESの場合)、S1005に処理を進める。
S1005において、メイン制御部402は、優先機能切り替え処理を実行する。ここでは、メイン制御部402は、ジェスチャー検知及び物体検知に用いる距離画像センサ部208の撮影パラメータ(例えば露光時間)を変更する。
On the other hand, if the
In S1005, the
例えば、ジェスチャー優先が指示されていた場合には、露光時間を短くすることでフレームレートを向上させることができ、滑らかなジェスチャー検知を実現することができる。一方、物体検知優先が指示されていた場合には、露光時間を短くすることでコントラストが低い検知対象物であってもより鮮明に撮影でき、物体検知精度の向上を実現することができる。なお、各機能の性能を最大限発揮できるような撮影画像が取得できるのであれば、撮影パラメータは露光に限定されるものではない。例えば、前記撮影パラメータは、ISO感度や、絞りに対応するパラメータであってもよい。 For example, when gesture priority is instructed, the frame rate can be improved by shortening the exposure time, and smooth gesture detection can be realized. On the other hand, when the object detection priority is instructed, the exposure time can be shortened, so that even a detection object with a low contrast can be photographed more clearly, and the object detection accuracy can be improved. Note that the shooting parameters are not limited to exposure as long as a captured image that can maximize the performance of each function can be acquired. For example, the shooting parameter may be a parameter corresponding to ISO sensitivity or aperture.
次に、S1006において、メイン制御部402は、物体検知処理用の背景画像を更新する。具体的には、上述の図7A(a)のS712、図7A(b)のS724、S735、S747でそれぞれHDD305に保存した、書画台背景カメラ画像/前フレームカメラ画像/直前静止カメラ画像を更新する。これにより、S1005で撮影パラメータを変更したことによって取得できるカメラ画像が大幅に変わったとしても、物体検知イベントとして誤検知することを防止することができる。
Next, in S1006, the
上記S1004又はS1006の処理の後、メイン制御部402は、S1007に処理を進める。
S1007において、メイン制御部402は、アプリケーションが終了されたか否かを判定する。なお、アプリケーションの終了はUI画面上に投射表示された終了ボタン(例えば、図9スキャン終了ボタン903)の操作、カメラスキャナ101の本体の電源ボタン(図示なし)の押下などにより行われるものとする。
After the process of S1004 or S1006, the
In step S1007, the
上記S1007において、メイン制御部402は、まだアプリケーションが終了されていないと判定した場合(S1007でNOの場合)、上記S1001に処理を戻す。
一方、メイン制御部402は、アプリケーションが終了されたと判定した場合(S1007でYES場合)、図10(a)の処理を終了する。
In S1007, if the
On the other hand, if the
以上のように、実施例1によれば、UI表示を行うアプリケーションからの優先機能切り替え指示に応じて、指定された優先機能に応じた撮影パラメータに変更することにより、各機能に適したカメラ画像が撮影できるようになる。これにより、アプリケーションの要求するタイミング(必要なタイミング)で各検知機能の処理性能を最大限に高めることができるようになる。この結果、良好な結果を得るための最適な画像が異なるような複数の検知機能を1つの撮影デバイスで精度よく実現することが可能になる。 As described above, according to the first embodiment, a camera image suitable for each function is obtained by changing to a shooting parameter corresponding to a designated priority function in response to a priority function switching instruction from an application that performs UI display. Will be able to shoot. This makes it possible to maximize the processing performance of each detection function at the timing required by the application (necessary timing). As a result, it is possible to accurately realize a plurality of detection functions with different optimal images for obtaining good results with a single photographing device.
上記実施例1では、UI表示を行うアプリケーションから画面遷移時や操作者901によるボタン押下などのタイミングにおいて通知される優先機能切り替え指示によって、優先機能の切り替え処理を行う構成について説明した。本実施例2では、UI画面が遷移しないタイミングでも優先機能を動的に切り替えることが可能な仕組みについてさらに説明する。
In the first embodiment, the configuration has been described in which priority function switching processing is performed in accordance with a priority function switching instruction that is notified at the time of screen transition or when the button is pressed by the
以下、図11の操作説明図と、図12のフローチャート図を用いて、実施例2において、メイン制御部402が実行する優先機能切り替え処理について説明する。
The priority function switching process executed by the
図11は、実施例2において、スキャンを実行する際のUI表示と操作者901の操作の様子の一例を示す図である。なお、図9と同一のものには同一の符号を付してある。
図11(a)にスキャン開始時のUI画面の一例を示す。UI画面には、操作指示メッセージ902、スキャン終了ボタン903、原稿載置領域905が投影表示されている。
FIG. 11 is a diagram illustrating an example of a UI display and an operation state of the
FIG. 11A shows an example of a UI screen at the start of scanning. An
操作者901は、操作指示メッセージ902に従い、図11(b)〜(d)に示すように、原稿載置領域905内に原稿906を載置する。メイン制御部402は、原稿載置完了を検知すると、図11(d)に示すようにスキャン処理が実行できる状態であると判断し、操作指示メッセージ902を更新し、スキャン実行ボタン904を表示する。
In accordance with the
そして、図11(e)に示すように操作者901がスキャン実行ボタン904を押下すると、メイン制御部402は、図11(f)に示すようにスキャン処理を開始する。スキャン処理が終了すると、メイン制御部402は、図11(g)に示すようにスキャン原稿を取り除くように操作指示メッセージ902を更新し、スキャン実行ボタン904を非表示にする。
Then, when the
そして、図11(h)に示すように操作者901が原稿を除去すると、メイン制御部402は、図11(i)に示すようなスキャン開始時のUI画面へ表示を遷移させる。
When the
図12(a)は、実施例2において、メイン制御部402が実行する処理の一例を説明するフローチャートである。また、図12(b)は、実施例2において、ユーザインタフェース部403が実行する優先機能判定処理の一例を説明するフローチャートである。即ち、図12(b)に示す処理は、CPU302がHDD305に格納されるカメラスキャナ101の制御用プログラムをRAM303にロードして実行することにより実現される。なお、実施例1と同様の処理については同じステップ番号を付与し、詳細な説明は割愛する。
FIG. 12A is a flowchart illustrating an example of processing executed by the
メイン制御部402は、処理を開始すると、図12(a)のS1201において、UI画面の更新の有無を確認する。上記S1201において、メイン制御部402は、UI画面が更新されたと判定した場合(S1201でYESの場合)、S1202へ処理を進める。
When starting the process, the
S1202において、メイン制御部402は、UI画面上の各領域に対して優先機能を割り当てる。例えば図11(a)において、スキャン終了ボタン903に対してはジェスチャー機能優先を、原稿載置領域905に対しては物体検知優先を割り当て、この領域内における物体検知イベントを受信するように設定する。それ以外の領域に関しては所定の機能を割り当てることが可能であるが、基本的にはジェスチャー機能優先を割り当てることが望ましい。上記S1202の処理の後、S1203へ処理を進める。
In S1202, the
一方、上記S1201において、メイン制御部402は、UI画面が更新されていないと判定した場合(S1201でNOの場合)、S1203へ処理を進める。
On the other hand, if the
S1201において、メイン制御部402は、ユーザインタフェース部403に、図12(b)に示す優先機能判定処理を実行させる。
In S1201, the
図12(b)のS1211において、メイン制御部402は、物体検知部410からの物体フレームインイベントを受信したか否かを判定する。物体検知部410は、物体検知優先領域への物体フレームインを検知した場合に物体フレームインイベントをメイン制御部402に通知する。例えば、図11(c)に示す状態では、物体検知部410が、物体検知優先領域として設定されている原稿載置領域905内において物体フレームインを検知して物体フレームインイベントをメイン制御部402に通知する。メイン制御部402は、物体検知部410から物体フレームインイベントを受信したと判定した場合(S1211でYESの場合)、S1212へ処理を進める。S1212において、メイン制御部402は、原稿載置領域905内での物体検知精度を高めるために、物体検知優先に切り替えるように指示し、優先機能判定処理(図12(b))を終了する。
In S1211 of FIG. 12B, the
また、例えば図11(a)〜図11(b)に示す状態では、原稿載置領域905内において物体フレームインを検知しないため、物体検知部410から物体フレームインイベントは通知されない。上記S1211において、メイン制御部402は、物体フレームインイベントを受信してないと判定した場合(S1211でNOの場合)、S1213へ処理を進める。
Further, for example, in the state shown in FIGS. 11A to 11B, the object frame-in event is not notified from the
S1213において、メイン制御部402は、物体検知部410からの物体フレームアウトイベントあるいは物体静止イベントを受信したか否かを判定する。物体検知部410は、物体検知優先領域からの物体フレームアウトを検知した場合に物体フレームアウトイベントをメイン制御部402に通知する。また、物体検知部410は、物体検知優先領域での物体静止を検知した場合に物体静止イベントをメイン制御部402に通知する。例えば、図11(d)に示す状態では、物体検知部410が、原稿載置領域905内において物体静止を検知して物体静止イベントをメイン制御部402に通知する。また、図11(h)に示す状態では、物体検知部410が、原稿載置領域905内において物体フレームアウトを検知して物体フレームアウトイベントをメイン制御部402に通知する。メイン制御部402は、物体検知部410から、物体フレームアウトイベントあるいは物体静止イベントを受信したと判定した場合(S1213でYesの場合)、S1214へ処理を進める。
In step S1213, the
S1214において、メイン制御部402は、スキャン終了ボタン903やスキャン実行ボタン904へのジェスチャー検知精度を高めるために、ジェスチャー機能優先に切り替えるように指示し、優先機能判定処理(図12(b))を終了する。
In S1214, the
また、図11(e)〜図11(g)までの状態においては、物体検知部410は、原稿載置領域905内において物体フレームアウトも物体静止も検知しないため、物体検知部410から物体フレームアウトイベント及び物体静止イベントのいずれも通知されない。メイン制御部402は、物体検知部410から、物体フレームアウトイベント及び物体静止イベントのいずれも受信していないと判定した場合(S1213でNOの場合)、そのまま優先機能判定処理(図12(b))を終了する。
Further, in the states from FIG. 11E to FIG. 11G, the
以下、図12(a)の説明に戻る。
上記S1203の処理の後、メイン制御部402は、S1002に処理を進める。なお、以下の処理に関しては実施例1と同様であるため説明を省略する。
Hereinafter, the description returns to FIG.
After the process of S1203, the
以上のように、実施例2によれば、UI画面内の領域に応じて優先する機能を設定しておき、物体検知優先領域内で移動している物体の検知有無によって優先する機能を動的に切り替える。これにより、同一UI画面内においても、必要なタイミングで各機能の性能を最大限発揮できるようになる。この結果、良好な結果を得るための最適な画像が異なるような複数の検知機能を1つの撮影デバイスで精度よく実現することが可能になる。 As described above, according to the second embodiment, a function that is prioritized according to the area in the UI screen is set, and the function that is prioritized depending on whether or not an object moving within the object detection priority area is detected is dynamically set. Switch to. Thereby, even within the same UI screen, the performance of each function can be maximized at the necessary timing. As a result, it is possible to accurately realize a plurality of detection functions with different optimal images for obtaining good results with a single photographing device.
上記実施例2では、UI画面の遷移がないタイミングでも優先機能を動的に切り替える構成について説明した。本実施例3では、UI画面内の領域の配置の仕方に依存せず優先機能を動的に切り替え可能な構成についてさらに説明する。 In the second embodiment, the configuration in which the priority function is dynamically switched even when there is no UI screen transition has been described. In the third embodiment, a configuration in which the priority function can be dynamically switched without depending on the arrangement of areas in the UI screen will be further described.
以下、図13を用いて、実施例3において、メイン制御部402が実行する優先機能切り替え処理について説明する。
図13は、実施例3の優先機能切り替え処理を説明する図である。
図13の(a)〜(c)に実施例3におけるスキャンを実行する際のUI表示と操作者901の操作の様子の一例を示す。なお、図11と同一のものには同一の符号を付してある。
The priority function switching process executed by the
FIG. 13 is a diagram illustrating priority function switching processing according to the third embodiment.
FIGS. 13A to 13C show an example of a UI display and an operation state of the
図13(a)では、上述の原稿載置領域905の上部に、ホーム画面へ遷移するためのホームボタン1301が配置されている。なお、ホームボタン1301には、図12(a)のS1202において、ジェスチャー検知優先が設定されているものとする。
In FIG. 13A, a
図13(b)では、操作者901が原稿載置領域905上へ原稿906を載置しようとしている様子を示している。また、図13(c)では、操作者901がホームボタン1301を押下する様子を示している。
FIG. 13B shows a state where the
図13(d)は、実施例3において、ユーザインタフェース部403が実行する優先機能判定処理の一例を説明するフローチャートである。即ち、図13(d)に示す処理は、CPU302がHDD305に格納されるカメラスキャナ101の制御用プログラムをRAM303にロードして実行することにより実現される。なお、図12と同様の処理については同じステップ番号を付与し、詳細な説明は割愛する。
FIG. 13D is a flowchart illustrating an example of the priority function determination process executed by the
図13(d)のS1211において、メイン制御部402は、物体フレームインイベントを受信していないと判定した場合(S1211でNOの場合)、S1311へ処理を進める。
In S1211 of FIG. 13D, when the
S1311において、メイン制御部402は、物体検知部410からの物体フレームアウトイベントを受信したか否かを判定する。メイン制御部402は、物体フレームアウトイベントを受信したと判定した場合(S1311でYESの場合)、S1214に処理を進め、ジェスチャー機能優先に切り替えるように指示する。
In step S1311, the
一方、メイン制御部402は、物体フレームアウトイベントを受信していないと判定した場合(S1311でNOの場合)、S1312に処理を進める。
On the other hand, when determining that the object frame-out event has not been received (NO in S1311), the
S1312において、メイン制御部402は、物体検知部410からの物体移動イベントや物体静止イベントを解析し、検知された物体が物体検知優先領域をまたぐような位置で検知したか否かを判定する。物体検知部410は、物体検知優先領域での物体移動を検知した場合に物体移動イベントをメイン制御部402に通知する。例えば図13(b)に示す状態においては、検知されている物体は、物体検知優先領域である原稿載置領域905の一方向にのみ存在していることから、物体検知優先領域である原稿載置領域905に対する操作をしているものと判断する。この場合、メイン制御部402は、物体検知優先領域をまたぐような静止or移動を検知していないと判定する。メイン制御部402は、物体検知優先領域をまたぐような静止or移動を検知していないと判定した場合(S1312でNOの場合)、物体検知優先のまま優先機能判定処理(図13(d))を終了する。
In step S1312, the
一方、例えば図13(c)に示す状態においては、操作者901の腕が、物体検知優先領域である原稿載置領域905を超えてホームボタン1301を押下しようとしており、物体検知優先領域である原稿載置領域905の二方向にまたがり物体が検知される。このため、メイン制御部402は、物体検知優先領域をまたぐような静止or移動を検知したと判定する。メイン制御部402は、物体検知優先領域をまたぐような静止or移動を検知したと判定した場合(S1312でYESの場合)、S1313に処理を進める。
On the other hand, for example, in the state shown in FIG. 13C, the arm of the
S1313において、メイン制御部402は、物体検知優先領域以外に他の優先機能を設定した領域が存在するかを確認する。メイン制御部402は、他の優先機能を設定した領域が存在しないと判定した場合(S1313でNOの場合)、そのまま優先機能判定処理(図13(d))を終了する。
In step S1313, the
一方、上記S1313において、メイン制御部402は、他の優先機能を設定した領域が存在すると判定した場合(S1313でYESの場合)、S1214に処理を進め、ジェスチャー検知優先への切り替えを指示する。例えば、図13(c)においては、ホームボタン1301に対してジェスチャー検知優先が設定されているため、メイン制御部402は、S1214において、ジェスチャー優先に切り替えるように指示する。これにより、ホームボタン1301への押下判定を最大性能で行うことができるようになる。
On the other hand, in S1313, if the
以上のように、実施例3によれば、物体検知優先が設定された領域内における検出物体の位置関係を考慮して優先機能を切り替えることによって、UI領域の配置に関わらず各機能の性能を最大限発揮できるようになる。良好な結果を得るための最適な画像が異なるような複数の検知機能を1つの撮影デバイスで精度よく実現することが可能になる。 As described above, according to the third embodiment, by switching the priority function in consideration of the positional relationship of the detected object in the area where the object detection priority is set, the performance of each function is improved regardless of the arrangement of the UI area. You will be able to make the most of it. A plurality of detection functions such that optimum images for obtaining good results are different can be realized with high accuracy by one photographing device.
上記実施例2及び3では、物体検知部410で検知した物体検知優先領域内の物体検知イベントに基づいて優先機能の切り替え判定を行う構成について説明した。本実施例4では、ジェスチャー検知部409で検知したジェスチャーイベントに基づいて優先機能を切り替える仕組みについて説明する。
In the second and third embodiments, the configuration in which the priority function switching determination is performed based on the object detection event in the object detection priority area detected by the
以下、図14を用いて、実施例4において、メイン制御部402が実行する優先機能切り替え処理について説明する。
図14は、実施例4の優先機能切り替え処理を説明する図である。
図14の(a),(b)に実施例4におけるスキャンを実行する際のUI表示と操作者901の操作の様子の一例を示す。なお、図11と同一のものには同一の符号を付してある。
The priority function switching process executed by the
FIG. 14 is a diagram illustrating the priority function switching process according to the fourth embodiment.
FIGS. 14A and 14B show an example of the UI display and the operation of the
図14(a)では、原稿載置領域905内に原稿906が載置してある。図14(b)では、操作者901が原稿載置領域905上の原稿906に対して、下線描画やメモ書きなどのアノテーション付与のジェスチャー操作を行おうとしている様子を示している。
In FIG. 14A, a
図14(c)は、実施例4において、ユーザインタフェース部403が実行する優先機能判定処理の一例を説明するフローチャートである。即ち、図14(c)に示す処理は、CPU302がHDD305に格納されるカメラスキャナ101の制御用プログラムをRAM303にロードして実行することにより実現される。なお、図12と同様の処理については同じステップ番号を付与し、詳細な説明は割愛する。
FIG. 14C is a flowchart illustrating an example of the priority function determination process executed by the
図14(c)のS1401において、メイン制御部402は、ジェスチャー検知部409からタッチイベントを受信したか否かを判定する。メイン制御部402は、タッチイベントを受信したと判定した場合(S1401でYESの場合)、S1402に処理を進める。
In S1401 of FIG. 14C, the
S1402において、メイン制御部402は、ジェスチャー検知部409が検知したタッチイベントの近傍に設定されている機能優先領域の種別を判定する。メイン制御部402は、タッチイベントの近傍にジェスチャー検知優先領域が設定されている、あるいは、物体検知優先領域の設定がないと判定した場合、S1214に処理を進め、ジェスチャー検知優先を指示する。そして、優先機能判定処理(図14(c))を終了する。例えば、図14(b)に示す原稿載置領域905内の原稿906の位置にジェスチャー検知優先領域を設定しておく。これにより、原稿906へのタッチ操作により、ジェスチャー検知優先に切り換える、図14(b)に示すようなジェスチャー操作を検知して原稿906へのアノテーション付与を実現することが可能となる。
In S1402, the
一方、上記S1402において、メイン制御部402は、タッチイベントの近傍に物体検知優先領域が設定されていると判定した場合、メイン制御部402は、S1212に処理を進め、物体検知優先を指示する。そして、優先機能判定処理(図14(c))を終了する。
On the other hand, when the
また、上記S1401において、メイン制御部402は、タッチイベントの受信を検知していないと判定した場合(S1401でNOの場合)、S1403に処理を進める。
S1403において、メイン制御部402は、現在のモードが物体検知優先機能か否かを判定する。例えば、S1212で物体検知優先に切り替えた後などは物体検知優先が設定されていると判定する。
In S1401, if the
In S1403, the
上記S1403において、メイン制御部402は、現在のモードが物体検知優先機能であると判定した場合(S1403でYESの場合)、S1404に処理を進める。
S1404において、メイン制御部402は、物体検知優先領域内において、物体検知部410から物体フレームアウトあるいは物体静止のイベントが検知されたか否かを判定する。
In S1403, if the
In S1404, the
上記S1404において、メイン制御部402は、物体フレームアウトあるいは物体静止のイベントが検知されたと判定した場合(S1404でYESの場合)、S1214に処理を進める。S1214において、メイン制御部402は、再びジェスチャー検知優先を指示し、優先機能判定処理(図14(c))を終了する。
In S1404, if the
一方、上記S1404において、メイン制御部402は、物体フレームアウトあるいは物体静止のイベントが検知されていないと判定した場合(S1404でNOの場合)、そのまま優先機能判定処理(図14(c))を終了する。
On the other hand, in S1404, when the
以上のように、実施例4によれば、操作者901のタッチ操作が物体検知優先領域であるか否かを判定する。所定のジェスチャーが検知された領域の近傍に設定される機能優先領域の種別に基づいて優先する検知処理を判定する。これにより、ボタン等へのタッチイベントか、物体検知優先領域内に物体を載置する際に発生したタッチイベントであるかを判別できる。そして、物体載置の際のタッチイベントの場合には、物体位置が確定するまでの間、物体検知を優先することが可能になる。なお、ここではタッチイベントを用いて切り替えを行う方法を説明したが、その他のジェスチャー操作イベントを用いてもよい。この結果、検知に用いる撮影画像の特性の異なる複数の検知機能を1つの撮影デバイスで精度よく実現することが可能になる。
As described above, according to the fourth embodiment, it is determined whether or not the touch operation of the
なお、上記実施例1〜4において、ジェスチャー検知機能モードと物体検知機能モードを動的に切り替える仕組みについて説明した。しかし、同様の目的が果たせるものであれば、切り替え判定方法はこれに限るものではない。例えば、ジェスチャー操作を指差し姿勢(所定の手の形状)で行うことを限定することにより、指差し姿勢であるか否かに基づいてジェスチャー検知機能と物体検知機能の切り替え処理を行うことも可能である。 In the first to fourth embodiments, the mechanism for dynamically switching between the gesture detection function mode and the object detection function mode has been described. However, the switching determination method is not limited to this as long as the same purpose can be achieved. For example, by limiting the gesture operation to the pointing posture (predetermined hand shape), it is also possible to switch between the gesture detection function and the object detection function based on whether or not it is the pointing posture It is.
また、上記各実施例では、ジェスチャー検知機能と物体検知機能を有し、優先する検知機能を判定し、優先する検知処理に応じた撮影パラメータに切り替える構成について説明した。しかし、検知機能はこれらに限定されるものではない。例えば、3つ以上の異なる検知機能を備える構成であってもよい。即ち、カメラスキャナ101が、撮影された画像データに基づいてそれぞれ異なる検知処理を行う複数の検知機能を有し、これらのうち優先する検知機能を判定し、優先する検知機能に応じた撮影パラメータに切り替えるように構成してもよい。
In each of the above-described embodiments, the configuration has been described in which the gesture detection function and the object detection function are provided, the priority detection function is determined, and the shooting parameter is switched to the priority detection process. However, the detection function is not limited to these. For example, the structure provided with three or more different detection functions may be sufficient. That is, the
以上、各実施例では、優先する検知処理を判断し、それに応じて最適な画像が取得できるように撮影モード(本実施例では撮影パラメータ)を動的に変更する(即ち撮影特性を動的に変更する)。これにより、良好な結果を得るための最適な画像が異なるような複数の検知機能(例えば物体検知機能、ジェスチャー検知機能)を1つの撮影デバイスで精度よく実現することができるようになる。 As described above, in each embodiment, the priority detection process is determined, and the shooting mode (shooting parameter in this embodiment) is dynamically changed so that an optimal image can be acquired accordingly (that is, the shooting characteristics are dynamically changed). change). As a result, a plurality of detection functions (for example, an object detection function and a gesture detection function) in which optimum images for obtaining good results are different can be realized with high accuracy by one imaging device.
なお、上述した各種データの構成及びその内容はこれに限定されるものではなく、用途や目的に応じて、様々な構成や内容で構成されていてもよい。
以上、一実施形態について示したが、本発明は、例えば、システム、装置、方法、プログラムもしくは記憶媒体等としての実施態様をとることが可能である。具体的には、複数の機器から構成されるシステムに適用しても良いし、また、一つの機器からなる装置に適用しても良い。
また、上記各実施例を組み合わせた構成も全て本発明に含まれるものである。
In addition, the structure of the various data mentioned above and its content are not limited to this, You may be comprised with various structures and content according to a use and the objective.
Although one embodiment has been described above, the present invention can take an embodiment as, for example, a system, apparatus, method, program, or storage medium. Specifically, the present invention may be applied to a system composed of a plurality of devices, or may be applied to an apparatus composed of a single device.
Moreover, all the structures which combined said each Example are also contained in this invention.
(その他の実施例)
本発明は、上述の実施例の1以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける1つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、1以上の機能を実現する回路(例えば、ASIC)によっても実現可能である。
また、本発明は、複数の機器から構成されるシステムに適用しても、1つの機器からなる装置に適用してもよい。
本発明は上記実施例に限定されるものではなく、本発明の趣旨に基づき種々の変形(各実施例の有機的な組合せを含む)が可能であり、それらを本発明の範囲から除外するものではない。即ち、上述した各実施例及びその変形例を組み合わせた構成も全て本発明に含まれるものである。
(Other examples)
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 the 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.
Further, the present invention may be applied to a system composed of a plurality of devices or an apparatus composed of a single device.
The present invention is not limited to the above embodiments, and various modifications (including organic combinations of the embodiments) are possible based on the spirit of the present invention, and these are excluded from the scope of the present invention. is not. That is, the present invention includes all the combinations of the above-described embodiments and modifications thereof.
204 書画台
208 距離画像センサ部
402 メイン制御部
409 ジェスチャー検知部
410 物体検知部
204 Document stand
208 Distance image sensor
402 Main control
409 Gesture detector
410 Object detection unit
Claims (11)
前記撮影手段により撮影された画像データに基づいてそれぞれ異なる検知処理を行う複数の検知手段と、
前記複数の検知手段がそれぞれ行う検知処理のうち優先する検知処理を判定する判定手段と、
前記撮影手段の撮影モードを、前記判定手段により優先する検知処理と判定された検知処理に応じたモードに切り替える切り替え手段と、
を有することを特徴とする画像処理装置。 Photographing means for photographing a predetermined photographing region;
A plurality of detection means for performing different detection processes based on image data photographed by the photographing means;
A determination unit that determines a priority detection process among the detection processes performed by the plurality of detection units;
Switching means for switching the photographing mode of the photographing means to a mode according to the detection process determined as the detection process prioritized by the determination means;
An image processing apparatus comprising:
前記判定手段は、前記撮影領域に表示される操作画面の遷移、及び前記操作画面に対する操作の少なくともいずれかに基づいて、優先する検知処理を判定することを特徴とする請求項2に記載の画像処理装置。 Display means for displaying an operation screen in the photographing area;
The image according to claim 2, wherein the determination unit determines a priority detection process based on at least one of a transition of an operation screen displayed in the imaging region and an operation on the operation screen. Processing equipment.
前記撮影手段の撮影モードの切り替えは、前記撮影パラメータの切り替えであることを特徴とする請求項1〜7のいずれか1項に記載の画像処理装置。 The photographing means performs photographing based on set photographing parameters,
The image processing apparatus according to claim 1, wherein switching of the shooting mode of the shooting unit is switching of the shooting parameter.
前記複数の検知手段がそれぞれ行う検知処理のうち優先する検知処理を判定する判定ステップと、
前記撮影手段の撮影モードを、前記判定ステップにて優先する検知処理と判定された検知処理に応じたモードに切り替える切り替えステップと、
を有することを特徴とする画像処理装置の制御方法。 An image processing apparatus control method comprising: an imaging unit that captures a predetermined imaging region; and a plurality of detection units that perform different detection processes based on image data captured by the imaging unit,
A determination step for determining a priority detection process among the detection processes performed by each of the plurality of detection units;
A switching step of switching the shooting mode of the shooting means to a mode according to the detection process determined as the priority of the detection process in the determination step;
A control method for an image processing apparatus, comprising:
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2017093523A JP2018191195A (en) | 2017-05-10 | 2017-05-10 | Image processing apparatus, image processing apparatus control method, and program |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2017093523A JP2018191195A (en) | 2017-05-10 | 2017-05-10 | Image processing apparatus, image processing apparatus control method, and program |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| JP2018191195A true JP2018191195A (en) | 2018-11-29 |
Family
ID=64480380
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2017093523A Pending JP2018191195A (en) | 2017-05-10 | 2017-05-10 | Image processing apparatus, image processing apparatus control method, and program |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JP2018191195A (en) |
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2023179840A (en) * | 2022-06-08 | 2023-12-20 | 川崎重工業株式会社 | Image generation device, object identification device, and image generation method |
-
2017
- 2017-05-10 JP JP2017093523A patent/JP2018191195A/en active Pending
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2023179840A (en) * | 2022-06-08 | 2023-12-20 | 川崎重工業株式会社 | Image generation device, object identification device, and image generation method |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| JP2015210702A (en) | Image processing apparatus and image processing method | |
| US10254893B2 (en) | Operating apparatus, control method therefor, and storage medium storing program | |
| US9888209B1 (en) | Remote communication system, method for controlling remote communication system, and storage medium | |
| JP6381361B2 (en) | DATA PROCESSING DEVICE, DATA PROCESSING SYSTEM, DATA PROCESSING DEVICE CONTROL METHOD, AND PROGRAM | |
| JP2019020307A (en) | Measuring device, measuring device control method and program | |
| JP6584237B2 (en) | Control device, control method, and program | |
| JP6746419B2 (en) | Information processing apparatus, control method thereof, and computer program | |
| JP2016103137A (en) | User interface system, image processor and control program | |
| JP6399840B2 (en) | Image processing apparatus, image processing method, and program | |
| JP2015170907A (en) | Scanner system, scanner system data processing method, and program | |
| JP6289254B2 (en) | Image processing apparatus, information processing method, and program | |
| JP2018112894A (en) | System and control method | |
| JP2015198406A (en) | Image reader, method, and program | |
| US10116809B2 (en) | Image processing apparatus, control method, and computer-readable storage medium, which obtains calibration image information with which to correct image data | |
| JP3109580B2 (en) | IMAGE INPUT DEVICE AND COMPUTER-READABLE RECORDING MEDIUM RECORDING IMAGE PROCESSING PROGRAM FOR IMAGE INPUT DEVICE | |
| JP2017162126A (en) | INPUT SYSTEM, INPUT METHOD, CONTROL PROGRAM, AND STORAGE MEDIUM | |
| JP2018191195A (en) | Image processing apparatus, image processing apparatus control method, and program | |
| JP2018014572A (en) | Information processing apparatus, image processing system, and program | |
| JP6624861B2 (en) | Image processing apparatus, control method, and program | |
| JP2019016843A (en) | Document reading device, control method of document reading device, and program | |
| JP2018191258A (en) | Image reading device, image reading method, and program | |
| JP2019146127A (en) | Image reading device, control method for the same and program | |
| JP6203070B2 (en) | Scanning system, control method therefor, and program | |
| JP2017117372A (en) | Operation device and control method of the same, and program | |
| JP2016025383A (en) | Image processing apparatus, control method, and program |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| RD02 | Notification of acceptance of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7422 Effective date: 20180306 |