JP6289254B2 - 画像処理装置、情報処理方法及びプログラム - Google Patents
画像処理装置、情報処理方法及びプログラム Download PDFInfo
- Publication number
- JP6289254B2 JP6289254B2 JP2014095535A JP2014095535A JP6289254B2 JP 6289254 B2 JP6289254 B2 JP 6289254B2 JP 2014095535 A JP2014095535 A JP 2014095535A JP 2014095535 A JP2014095535 A JP 2014095535A JP 6289254 B2 JP6289254 B2 JP 6289254B2
- Authority
- JP
- Japan
- Prior art keywords
- unit
- image
- subject
- reading
- book
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000012545 processing Methods 0.000 title claims description 128
- 230000010365 information processing Effects 0.000 title claims description 5
- 238000003672 processing method Methods 0.000 title claims description 4
- 238000001514 detection method Methods 0.000 claims description 106
- 238000005259 measurement Methods 0.000 claims description 86
- 239000000284 extract Substances 0.000 claims description 9
- 238000003384 imaging method Methods 0.000 claims description 9
- 238000000034 method Methods 0.000 description 136
- 230000008569 process Effects 0.000 description 127
- 238000010586 diagram Methods 0.000 description 14
- 239000007787 solid Substances 0.000 description 14
- 238000012937 correction Methods 0.000 description 13
- 238000006243 chemical reaction Methods 0.000 description 10
- 230000006870 function Effects 0.000 description 6
- 230000009466 transformation Effects 0.000 description 5
- 238000013523 data management Methods 0.000 description 4
- 230000015572 biosynthetic process Effects 0.000 description 3
- 238000004364 calculation method Methods 0.000 description 3
- 238000003786 synthesis reaction Methods 0.000 description 3
- 238000004148 unit process Methods 0.000 description 3
- 230000004913 activation Effects 0.000 description 2
- 230000008859 change Effects 0.000 description 2
- 230000006835 compression Effects 0.000 description 2
- 238000007906 compression Methods 0.000 description 2
- 239000011159 matrix material Substances 0.000 description 2
- 238000000691 measurement method Methods 0.000 description 2
- 238000013519 translation Methods 0.000 description 2
- 238000004891 communication Methods 0.000 description 1
- 238000009499 grossing Methods 0.000 description 1
- 238000009434 installation Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000005236 sound signal Effects 0.000 description 1
- 230000001131 transforming effect Effects 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N1/00—Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
- H04N1/04—Scanning arrangements, i.e. arrangements for the displacement of active reading or reproducing elements relative to the original or reproducing medium, or vice versa
- H04N1/19—Scanning arrangements, i.e. arrangements for the displacement of active reading or reproducing elements relative to the original or reproducing medium, or vice versa using multi-element arrays
- H04N1/195—Scanning arrangements, i.e. arrangements for the displacement of active reading or reproducing elements relative to the original or reproducing medium, or vice versa using multi-element arrays the array comprising a two-dimensional array or a combination of two-dimensional arrays
- H04N1/19594—Scanning arrangements, i.e. arrangements for the displacement of active reading or reproducing elements relative to the original or reproducing medium, or vice versa using multi-element arrays the array comprising a two-dimensional array or a combination of two-dimensional arrays using a television camera or a still video camera
-
- G—PHYSICS
- G03—PHOTOGRAPHY; CINEMATOGRAPHY; ANALOGOUS TECHNIQUES USING WAVES OTHER THAN OPTICAL WAVES; ELECTROGRAPHY; HOLOGRAPHY
- G03B—APPARATUS OR ARRANGEMENTS FOR TAKING PHOTOGRAPHS OR FOR PROJECTING OR VIEWING THEM; APPARATUS OR ARRANGEMENTS EMPLOYING ANALOGOUS TECHNIQUES USING WAVES OTHER THAN OPTICAL WAVES; ACCESSORIES THEREFOR
- G03B17/00—Details of cameras or camera bodies; Accessories therefor
- G03B17/48—Details of cameras or camera bodies; Accessories therefor adapted for combination with other photographic or optical apparatus
- G03B17/54—Details of cameras or camera bodies; Accessories therefor adapted for combination with other photographic or optical apparatus with projector
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/017—Gesture based interaction, e.g. based on a set of recognized hand gestures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/03—Arrangements for converting the position or the displacement of a member into a coded form
- G06F3/033—Pointing devices displaced or positioned by the user, e.g. mice, trackballs, pens or joysticks; Accessories therefor
- G06F3/0346—Pointing devices displaced or positioned by the user, e.g. mice, trackballs, pens or joysticks; Accessories therefor with detection of the device orientation or free movement in a 3D space, e.g. 3D mice, 6-DOF [six degrees of freedom] pointers using gyroscopes, accelerometers or tilt-sensors
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/03—Arrangements for converting the position or the displacement of a member into a coded form
- G06F3/041—Digitisers, e.g. for touch screens or touch pads, characterised by the transducing means
- G06F3/042—Digitisers, e.g. for touch screens or touch pads, characterised by the transducing means by opto-electronic means
- G06F3/0425—Digitisers, e.g. for touch screens or touch pads, characterised by the transducing means by opto-electronic means using a single imaging device like a video camera for tracking the absolute position of a single or a plurality of objects with respect to an imaged reference surface, e.g. video camera imaging a display or a projection screen, a table or a wall surface, on which a computer generated image is displayed or projected
- G06F3/0426—Digitisers, e.g. for touch screens or touch pads, characterised by the transducing means by opto-electronic means using a single imaging device like a video camera for tracking the absolute position of a single or a plurality of objects with respect to an imaged reference surface, e.g. video camera imaging a display or a projection screen, a table or a wall surface, on which a computer generated image is displayed or projected tracking fingers with respect to a virtual keyboard projected or printed on the surface
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T1/00—General purpose image data processing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N1/00—Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
- H04N1/0035—User-machine interface; Control console
- H04N1/00352—Input means
- H04N1/00381—Input by recognition or interpretation of visible user gestures
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N1/00—Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
- H04N1/00795—Reading arrangements
- H04N1/00827—Arrangements for reading an image from an unusual original, e.g. 3-dimensional objects
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N23/00—Cameras or camera modules comprising electronic image sensors; Control thereof
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/10—Image acquisition modality
- G06T2207/10028—Range image; Depth image; 3D point clouds
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N2201/00—Indexing scheme relating to scanning, transmission or reproduction of documents or the like, and to details thereof
- H04N2201/0077—Types of the still picture apparatus
- H04N2201/0084—Digital still camera
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N2201/00—Indexing scheme relating to scanning, transmission or reproduction of documents or the like, and to details thereof
- H04N2201/04—Scanning arrangements
- H04N2201/0402—Arrangements not specific to a particular one of the scanning methods covered by groups H04N1/04 - H04N1/207
- H04N2201/0434—Arrangements not specific to a particular one of the scanning methods covered by groups H04N1/04 - H04N1/207 specially adapted for scanning pages of a book
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N2201/00—Indexing scheme relating to scanning, transmission or reproduction of documents or the like, and to details thereof
- H04N2201/04—Scanning arrangements
- H04N2201/0402—Arrangements not specific to a particular one of the scanning methods covered by groups H04N1/04 - H04N1/207
- H04N2201/0436—Scanning a picture-bearing surface lying face up on a support
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N2201/00—Indexing scheme relating to scanning, transmission or reproduction of documents or the like, and to details thereof
- H04N2201/04—Scanning arrangements
- H04N2201/0402—Arrangements not specific to a particular one of the scanning methods covered by groups H04N1/04 - H04N1/207
- H04N2201/045—Mounting the scanning elements in a collapsible or foldable structure, e.g. for ease of transportation
Landscapes
- Engineering & Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Multimedia (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Signal Processing (AREA)
- Human Computer Interaction (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Image Analysis (AREA)
- User Interface Of Digital Computer (AREA)
- Facsimile Scanning Arrangements (AREA)
- Accessories Of Cameras (AREA)
- Image Processing (AREA)
- Facsimiles In General (AREA)
- Studio Devices (AREA)
- Image Input (AREA)
- Position Input By Displaying (AREA)
Description
一方、特許文献3で開示されているユーザーインターフェイスシステムでは、プロジェクタでコンピュータ画面を机上に投射し、指先でそのコンピュータ画面を操作する。指先の検出には赤外線カメラを用いている。そして、前記ユーザーインターフェイスシステムでは、机上の紙書類や書籍等に印刷されたバーコードを読み取ることによって、電子情報とのリンクを作成することができるようにしている。
本発明は、カメラスキャナ等の画像処理装置におけるユーザーの操作性を向上させることを目的とする。
<実施形態1>
図1は、一実施形態に係るカメラスキャナ101が含まれるシステム構成の一例を示す図である。
図1に示すように、カメラスキャナ101は、イーサネット(登録商標)等のネットワーク104にてホストコンピュータ102及びプリンタ103に接続されている。なお、カメラスキャナ101は、画像処理装置の一例である。図1のシステム構成において、ホストコンピュータ102からの指示により、カメラスキャナ101から画像を読み取るスキャン機能や、スキャンデータをプリンタ103により出力するプリント機能の実行が可能である。また、ホストコンピュータ102を介さず、カメラスキャナ101への直接の指示により、スキャン機能、プリント機能の実行も可能である。
図2は、一実施形態に係るカメラスキャナ101の外観の一例を示す図である。
図2(a)に示すように、カメラスキャナ101は、コントローラ部201、カメラ部202、腕部203、短焦点プロジェクタ207(以下、プロジェクタ207という)、距離画像センサ部208を含む。カメラスキャナ101の本体であるコントローラ部201と、撮像を行うためのカメラ部202、プロジェクタ207及び距離画像センサ部208は、腕部203により連結されている。腕部203は関節を用いて曲げ伸ばしが可能である。ここで、カメラ部202は、撮像画像を取得する撮像部の一例である。プロジェクタ207は、後述するユーザーが操作を行うための操作画面(操作表示)を投射する投射部の一例である。距離画像センサ部208は、距離画像を取得する立体測定部の一例である。
図2(a)には、カメラスキャナ101が設置されている書画台204も示されている。カメラ部202及び距離画像センサ部208のレンズは、書画台204方向に向けられており、破線で囲まれた読み取り領域205内の画像を読み取り可能である。図2の例では、原稿206は読み取り領域205内に置かれているので、カメラスキャナ101で読み取り可能である。また、書画台204内にはターンテーブル209が設けられている。ターンテーブル209は、コントローラ部201からの指示によって回転することが可能であり、ターンテーブル209上に置かれた物体(被写体)とカメラ部202との角度を変えることができる。
カメラ部202は、単一解像度で画像を撮像するものとしてもよいが、高解像度画像撮像と低解像度画像撮像とが可能なものとすることが好ましい。
なお、図2に示されていないが、カメラスキャナ101は、LCDタッチパネル330及びスピーカ340を更に含むこともできる。
座標系を変換する場合の例として、図2(c)に直交座標系と、カメラ部202を中心としたカメラ座標系を用いて表現された空間と、カメラ部202が撮像する画像平面との関係を示す。直交座標系における3次元点P[X,Y,Z]は、式(1)によって、カメラ座標系における3次元点Pc[Xc,Yc,Zc]へ変換できる。
以上のように、式(1)と式(3)とを用いることで、直交座標系で表された3次元点群を、カメラ座標系での3次元点群座標やカメラ画像平面に変換することができる。なお、各ハードウェアデバイスの内部パラメータ及び直交座標系に対する位置姿勢(外部パラメータ)は、公知のキャリブレーション手法により予めキャリブレーションされているものとする。以後、特に断りがなく3次元点群と表記した場合は、直交座標系における3次元データ(立体データ)を表しているものとする。
図3は、カメラスキャナ101の本体であるコントローラ部201等のハードウェア構成の一例を示す図である。
図3に示すように、コントローラ部201は、システムバス301に接続されたCPU302、RAM303、ROM304、HDD305、ネットワークI/F306、画像処理プロセッサ307、カメラI/F308、ディスプレイコントローラ309、シリアルI/F310、オーディオコントローラ311及びUSBコントローラ312を含む。
CPU302は、コントローラ部201全体の動作を制御する中央演算装置である。RAM303は、揮発性メモリである。ROM304は、不揮発性メモリであり、CPU302の起動用プログラムが格納されている。HDD305は、RAM303と比較して大容量なハードディスクドライブ(HDD)である。HDD305にはコントローラ部201の実行する、カメラスキャナ101の制御用プログラムが格納されている。CPU302が、ROM304やHDD305に格納されているプログラムを実行することにより、カメラスキャナ101の機能構成及び後述するフローチャートの処理(情報処理)が実現される。
画像処理プロセッサ307は、RAM303に格納された画像データを読み出して処理し、またRAM303へ書き戻す。なお、画像処理プロセッサ307が実行する画像処理は、回転、変倍、色変換等である。
カメラI/F308は、カメラ部202及び距離画像センサ部208と接続され、CPU302からの指示に応じてカメラ部202から画像データを、距離画像センサ部208から距離画像データを取得してRAM303へ書き込む。また、カメラI/F308は、CPU302からの制御コマンドをカメラ部202及び距離画像センサ部208へ送信し、カメラ部202及び距離画像センサ部208の設定を行う。
ディスプレイコントローラ309は、CPU302の指示に応じてディスプレイへの画像データの表示を制御する。ここでは、ディスプレイコントローラ309は、プロジェクタ207及びLCDタッチパネル330に接続されている。
シリアルI/F310は、シリアル信号の入出力を行う。ここでは、シリアルI/F310は、ターンテーブル209に接続され、CPU302の回転開始・終了及び回転角度の指示をターンテーブル209へ送信する。また、シリアルI/F310は、LCDタッチパネル330に接続され、CPU302はLCDタッチパネル330が押下されたときに、シリアルI/F310を介して押下された座標を取得する。
オーディオコントローラ311は、スピーカ340に接続され、CPU302の指示に応じて音声データをアナログ音声信号に変換し、スピーカ340を通じて音声を出力する。
USBコントローラ312は、CPU302の指示に応じて外付けのUSBデバイスの制御を行う。ここでは、USBコントローラ312は、USBメモリやSDカード等の外部メモリ350に接続され、外部メモリ350へのデータの読み書きを行う。
図4(a)は、CPU302が制御用プログラムを実行することにより実現されるカメラスキャナ101の機能構成401の一例を示す図である。また、図4(b)は、機能構成401の各モジュールの関係をシーケンス図として示したものである。
カメラスキャナ101の制御用プログラムは前述のようにHDD305に格納され、CPU302が起動時にRAM303上に展開して実行する。
メイン制御部402は、制御の中心であり、機能構成401内の他の各モジュールを図4(b)に示すように制御する。
画像取得部416は、画像入力処理を行うモジュールであり、カメラ画像取得部407、距離画像取得部408から構成される。カメラ画像取得部407は、カメラI/F308を介してカメラ部202が出力する画像データを取得し、RAM303へ格納する(撮像画像取得処理)。距離画像取得部408は、カメラI/F308を介して距離画像センサ部208が出力する距離画像データを取得し、RAM303へ格納する(距離画像取得処理)。距離画像取得部408の処理の詳細は図5を用いて後述する。
スキャン処理部418は、実際に対象物のスキャンを行うモジュールであり、平面原稿画像撮影部411、書籍画像撮影部412、立体形状測定部413から構成される。平面原稿画像撮影部411は平面原稿、書籍画像撮影部412は書籍、立体形状測定部413は立体物に、それぞれ適した処理(読み取り処理)を実行し、それぞれに応じた形式のデータ(読み取り画像)を出力する。これらのモジュールの処理の詳細は図9〜図14を用いてそれぞれ後述する。
表示部406は、ディスプレイコントローラ309を介して、プロジェクタ207又はLCDタッチパネル330へ要求されたGUI部品の表示を行う。プロジェクタ207は、書画台204に向けて設置されているため、書画台204上にGUI部品を投射することが可能となっている。また、ユーザーインターフェイス部403は、ジェスチャー認識部409が認識したタッチ等のジェスチャー操作、又はシリアルI/F310を介したLCDタッチパネル330からの入力操作、更にそれらの座標を受信する。そして、ユーザーインターフェイス部403は、描画中の操作画面の内容と操作座標とを対応させて操作内容(押下されたボタン等)を判定する。ユーザーインターフェイス部403がこの操作内容をメイン制御部402へ通知することにより、操作者の操作を受け付ける。
ネットワーク通信部404は、ネットワークI/F306を介して、ネットワーク104上の他の機器とTCP/IPによる通信を行う。
データ管理部405は、CPU302が制御用プログラムを実行することにより生成した作業データ等の様々なデータをHDD305上の所定の領域へ保存し、管理する。前記データは、例えば平面原稿画像撮影部411、書籍画像撮影部412、立体形状測定部413が生成したスキャンデータ等である。
図3に距離画像センサ部208の構成を示している。距離画像センサ部208は、赤外線によるパターン投射方式の距離画像センサである。赤外線パターン投射部361は、対象物に、人の目には不可視である赤外線によって3次元測定パターンを投射する。赤外線カメラ362は、対象物に投射した3次元測定パターンを読みとるカメラである。RGBカメラ363は、人の目に見える可視光をRGB信号で撮影するカメラである。
距離画像取得部408の処理を図5(a)のフローチャートを用いて説明する。また、図5(b)〜(d)は、パターン投射方式による距離画像の計測原理を説明するための図面である。
距離画像取得部408は、処理を開始すると、S501では図5(b)に示すように赤外線パターン投射部361を用いて赤外線による3次元形状測定パターン(立体形状測定パターン)522を対象物521に投射する。
S502で、距離画像取得部408は、RGBカメラ363を用いて対象物を撮影したRGBカメラ画像523、及び赤外線カメラ362を用いてS501で投射した3次元形状測定パターン522を撮影した赤外線カメラ画像524を取得する。なお、赤外線カメラ362とRGBカメラ363とでは設置位置が異なるため、図5(c)に示すようにそれぞれで撮影される2つのRGBカメラ画像523及び赤外線カメラ画像524の撮影領域が異なる。
S503で、距離画像取得部408は、赤外線カメラ362の座標系からRGBカメラ363の座標系への座標系変換を用いて赤外線カメラ画像524をRGBカメラ画像523の座標系に合わせる。なお、赤外線カメラ362とRGBカメラ363との相対位置や、それぞれの内部パラメータは事前のキャリブレーション処理により既知であるとする。
S505で、距離画像取得部408は、赤外線パターン投射部361と赤外線カメラ362とを結ぶ直線を基線525として三角測量の原理を用いて計算を行うことにより、赤外線カメラ362からの距離を算出する。距離画像取得部408は、S504で対応付けができた画素については、その画素に対応する位置における対象物521と赤外線カメラ362との距離を算出して画素値として保存する。一方、距離画像取得部408は、対応付けができなかった画素については、距離の計測ができなかった部分として無効値を保存する。距離画像取得部408は、これをS503で座標変換を行った赤外線カメラ画像524の全画素に対して行うことで、各画素に距離値(距離情報)が入った距離画像を生成する。
そこでS507で、距離画像取得部408は、図2(b)を用いて上述したように、距離画像センサ座標系として得られた距離情報を直交座標系における3次元点群に変換する。以後、特に指定がなく3次元点群と表記した場合は、直交座標系における3次元点群を示すものとする。
なお、本実施形態では上述したように、距離画像センサ部208として赤外線パターン投射方式を採用しているが、他の方式の距離画像センサを用いることも可能である。例えば、2つのRGBカメラでステレオ立体視を行うステレオ方式や、レーザー光の飛行時間を検出することで距離を測定するTOF(Time of Flight)方式を用いてもよい。
ジェスチャー認識部409の処理の詳細を、図6のフローチャートを用いて説明する。
図6において、ジェスチャー認識部409は、処理を開始すると、S601では初期化処理を行う。初期化処理で、ジェスチャー認識部409は、距離画像取得部408から距離画像を1フレーム取得する。ここで、ジェスチャー認識部409の処理の開始時は書画台204上に対象物が置かれていない状態であるため、初期状態として書画台204の平面の認識を行う。即ち、ジェスチャー認識部409は、取得した距離画像から最も広い平面を抽出し、その位置と法線ベクトル(以降、書画台204の平面パラメータと呼ぶ)とを算出し、RAM303に保存する。
S602で、ジェスチャー認識部409は、S621〜622に示す、書画台204上に存在する物体の3次元点群を取得する。
S621で、ジェスチャー認識部409は、距離画像取得部408から距離画像と3次元点群とを1フレーム取得する。
S622で、ジェスチャー認識部409は、書画台204の平面パラメータを用いて、取得した3次元点群から書画台204を含む平面にある点群を除去する。
S631で、ジェスチャー認識部409は、S602で取得した3次元点群から、書画台204を含む平面から所定の高さ以上にある、肌色の3次元点群を抽出することで、手の3次元点群を得る。図7(a)の701は、抽出した手の3次元点群を表している。
S632で、ジェスチャー認識部409は、抽出した手の3次元点群を、書画台204の平面に射影した2次元画像を生成して、その手の外形を検出する。図7(a)の702は、書画台204の平面に投射した3次元点群を表している。投射は、点群の各座標を、書画台204の平面パラメータを用いてされればよい。また、図7(b)に示すように、投射した3次元点群から、xy座標の値だけを取り出せば、z軸方向から見た2次元画像703として扱うことができる。このとき、ジェスチャー認識部409は、手の3次元点群の各点が、書画台204の平面に投射した2次元画像の各座標のどれに対応するかを、記憶しておくものとする。
S634で、ジェスチャー認識部409は、検出した指先の個数及び各指先の座標を算出する。このとき、前述したように、書画台204に投射した2次元画像の各点と、手の3次元点群の各点との対応関係を記憶しているため、ジェスチャー認識部409は、各指先の3次元座標を得ることができる。今回は、3次元点群から2次元画像に投射した画像から指先を検出する方法を説明したが、指先検出の対象とする画像は、これに限定されるものではない。例えば、距離画像の背景差分や、RGB画像の肌色領域から手の領域を抽出し、上述と同様の方法(外形の曲率計算等)で、手領域のうちの指先を検出してもよい。この場合、検出した指先の座標はRGB画像や距離画像といった、2次元画像上の座標であるため、ジェスチャー認識部409は、その座標における距離画像の距離情報を用いて、直交座標系の3次元座標に変換する必要がある。このとき、指先点となる外形上の点ではなく、指先を検出するときに用いた、曲率円の中心を指先点としてもよい。
S641で、ジェスチャー認識部409は、S603で検出した指先が1つかどうか判定する。ジェスチャー認識部409は、指先が1つでなければS646へ進み、ジェスチャーなしと判定する。ジェスチャー認識部409は、S641において検出した指先が1つであればS642へ進み、検出した指先と書画台204を含む平面との距離を算出する。
S643で、ジェスチャー認識部409は、S642で算出した距離が所定値以下であるかどうかを判定し、所定値以下であればS644へ進んで指先が書画台204へタッチした、タッチジェスチャーありと判定する。ジェスチャー認識部409は、S643においてS642で算出した距離が所定値以下でなければS645へ進み、指先が移動したジェスチャー(タッチはしていないが指先が書画台204上に存在するジェスチャー)と判定する。
S605で、ジェスチャー認識部409は、判定したジェスチャーをメイン制御部402へ通知し、S602へ戻ってジェスチャー認識処理を繰り返す。
以上の処理により、ジェスチャー認識部409は、距離画像に基づいてユーザーのジェスチャーを認識することができる。
図8のフローチャートを用いて、物体検知部410の処理の説明を行う。
物体検知部410は、処理を開始すると、図8(a)のS801ではS811〜S813に示す初期化処理を行う。S811で、物体検知部410は、カメラ画像取得部407からカメラ画像を、距離画像取得部408から距離画像をそれぞれ1フレーム取得する。S812で、物体検知部410は、取得したカメラ画像を前フレームカメラ画像として保存する。S813で、物体検知部410は、取得したカメラ画像及び距離画像を書画台背景カメラ画像及び書画台背景距離画像としてそれぞれ保存する。以降、「書画台背景カメラ画像」及び「書画台背景距離画像」と記載した場合は、ここで取得したカメラ画像及び距離画像のことを指す。
S802で、物体検知部410は、物体が書画台204上に置かれたことの検知(物体載置検知処理)を行う。本処理の詳細は図8(b)を用いて後述する。
S803で、物体検知部410は、S802で載置を検知した書画台204上の物体が除去されることの検知(物体除去検知処理)を行う。本処理の詳細は図8(c)を用いて後述する。
物体検知部410は、物体載置検知処理を開始すると、S821でカメラ画像取得部407からカメラ画像を1フレーム取得する。
S822で、物体検知部410は、取得したカメラ画像と前フレームカメラ画像との差分を計算してその絶対値を合計した差分値を算出する。
S823で、物体検知部410は、算出した差分値が予め決めておいた所定値以上(閾値以上)かどうかを判定する。物体検知部410は、算出した差分値が所定値未満(閾値未満)であれば書画台204上には物体がないと判定し、S828へ進んで現フレームのカメラ画像を前フレームカメラ画像として保存してからS821へ戻って処理を続ける。物体検知部410は、S823において差分値が所定値以上であればS824へ進み、S821で取得したカメラ画像と前フレームカメラ画像との差分値を、S822と同様に算出する。
S825で、物体検知部410は、算出した差分値が予め決めておいた所定値以下であるかどうかを判定する。物体検知部410は、S825において算出した差分値が所定値よりも大きければ書画台204上の物体が動いていると判定し、S828へ進んで現フレームのカメラ画像を前フレームカメラ画像として保存してから、S821へ戻り処理を続ける。物体検知部410は、S825において算出した差分値が所定値以下であればS826へ進む。
S826で、物体検知部410は、S825が連続してYESとなった回数から、差分値が所定値以下、即ち書画台204上の物体が静止した状態が予め決めておいたフレーム数続いたかどうかを判定する。物体検知部410は、S826において書画台204上の物体が静止した状態が予め決めておいたフレーム数続いていないと判定したら、S828へ進んで現フレームのカメラ画像を前フレームカメラ画像として保存し、S821へ戻って処理を続ける。物体検知部410は、S826において書画台204上の物体が静止した状態が予め決めておいたフレーム数続いたと判定したら、S827へ進んで物体が置かれたことをメイン制御部402へ通知し、物体載置検知処理を終了する。
物体検知部410は、物体除去検知処理を開始すると、S831ではカメラ画像取得部407からカメラ画像を1フレーム取得する。
S832で、物体検知部410は、取得したカメラ画像と書画台背景カメラ画像との差分値を算出する。
S833で、物体検知部410は、算出した差分値が予め決めておいた所定値以下かどうかを判定する。物体検知部410は、S833において算出した差分値が予め決めておいた所定値よりも大きければ書画台204上にまだ物体が存在するため、S831へ戻って処理を続ける。物体検知部410は、S833において算出した差分値が予め決めておいた所定値以下であれば書画台204上の物体がなくなったため、物体除去をメイン制御部402へ通知し、物体除去検知処理を終了する。
以上の処理により、物体検知部410は、カメラ画像に基づいて書画台204上の物体の載置及び除去を検知することができる。付言すると、物体検知部410は、前記物体が紙等の平面物の場合、距離画像からだけでは書画台204上の物体の載置及び除去を検知することができないが、上述したようにカメラ画像を用いることによって検知することができるようになる。
図9のフローチャートを用いて、平面原稿画像撮影部411が実行する処理について説明する。図10は、平面原稿画像撮影部411の処理を説明するための模式図である。
平面原稿画像撮影部411は、処理を開始すると、S901ではカメラ画像取得部407を介してカメラ部202からの画像を1フレーム取得する。ここで、カメラ部202の座標系は図2(b)で示したように書画台204に正対していないため、このときの撮影画像は図10(a)に示すように対象物1001、書画台204ともに歪んでいる。
S902で、平面原稿画像撮影部411は、書画台背景カメラ画像とS901で取得したカメラ画像との画素毎の差分を算出し、差分画像を生成した上で、差分のある画素が黒、差分のない画素が白となるように二値化する。したがって、ここで平面原稿画像撮影部411が生成した差分画像は、図10(b)の領域1002のように、対象物1001の領域が黒色である(差分がある)画像となる。
S903で、平面原稿画像撮影部411は、領域1002を用いて、図10(c)のように対象物1001のみの画像を抽出する。
S904で、平面原稿画像撮影部411は、抽出した原稿領域画像に対して階調補正を行う。
そこで、S906で、平面原稿画像撮影部411は、画像1003を矩形近似してからその矩形が水平になるように回転し、図10(e)で示した画像1004のように傾きのない画像を得る。平面原稿画像撮影部411は、図10(f)に示すように、基準ラインに対しての矩形の傾きθ1及びθ2を算出し、傾きが小さい方(ここではθ1)を画像1003の回転角度として決定する。また、平面原稿画像撮影部411は、図10(g)及び図10(h)に示すように、画像1003中に含まれる文字列に対してOCR処理を行い、文字列の傾きから画像1003の回転角度の算出及び天地判定処理をしてもよい。
S907で、平面原稿画像撮影部411は、抽出した画像1004に対して、予め決めておいた画像フォーマット(例えばJPEG、TIFF、PDF等)に合わせて圧縮及びファイルフォーマット変換を行う。そして、平面原稿画像撮影部411は、データ管理部405を介してHDD305の所定の領域へファイルとして保存し、処理を終了する。
図11のフローチャートを用いて、書籍画像撮影部412が実行する処理について説明する。図12は、書籍画像撮影部412の処理を説明するための模式図である。
図11(a)で、書籍画像撮影部412は、処理を開始すると、S1101ではカメラ画像取得部407、距離画像取得部408を用いて、カメラ部202からカメラ画像を、距離画像センサ部208から距離画像を、それぞれ1フレームずつ取得する。ここで得られるカメラ画像の例を図12(a)に示す。図12(a)では、書画台204と対象物体1211である撮影対象書籍とを含むカメラ画像1201が得られている。図12(b)は、ここで得られた距離画像の例である。図12(b)では、距離画像センサ部208に近いほど濃い色で表されており、対象物体1212上の各画素において距離画像センサ部208からの距離情報が含まれる距離画像1202が得られている。また、図12(b)において、距離画像センサ部208からの距離が書画台204よりも遠い画素については白で表されており、対象物体1212の書画台204に接している部分(対象物体1212では右側のページ)も同じく白色となる。
S1111で、書籍画像撮影部412は、カメラ画像と書画台背景カメラ画像との画素毎の差分を算出して二値化を行い、図12(c)のように物体領域1213が黒で示されるカメラ差分画像1203を生成する。
S1112で、書籍画像撮影部412は、カメラ差分画像1203を、カメラ座標系から距離画像センサ座標系への変換を行い、図12(d)のように距離画像センサ部208から見た物体領域1214を含むカメラ差分画像1204を生成する。
S1113で、書籍画像撮影部412は、距離画像と書画台背景距離画像との画素毎の差分を算出して二値化を行い、図12(e)のように物体領域1215が黒で示される距離差分画像1205を生成する。ここで、対象物体1211の書画台204と同じ色である部分については、画素値の差が小さくなるためカメラ差分画像1203中の物体領域1213に含まれなくなる場合がある。また、対象物体1212の書画台204と高さが変わらない部分については、距離画像センサ部208からの距離値が書画台204までの距離値と比べて差が小さいため、距離差分画像1205中の物体領域1215には含まれない場合がある。
S1116で、書籍画像撮影部412は、S1115で抽出した距離画像を直交座標系に変換することにより図12(g)に示した3次元点群1217を生成する。この3次元点群1217が書籍物体の3次元点群である。
S1103で、書籍画像撮影部412は、取得したカメラ画像と、算出した3次元点群とから、書籍画像のゆがみ補正処理を行い、2次元の書籍画像を生成する。S1103の処理は、図11(b)で詳しく説明する。
書籍画像撮影部412は、書籍画像ゆがみ補正処理を開始すると、S1121では物体領域画像1206を距離センサ画像座標系からカメラ座標系に変換する。
S1122で、書籍画像撮影部412は、カメラ画像1201から物体領域画像1206中の物体領域1216をカメラ座標系に変換したものを用いて物体領域を抽出する。
S1123で、書籍画像撮影部412は、抽出した物体領域画像を書画台平面へ射影変換する。
S1124で、書籍画像撮影部412は、射影変換した物体領域画像を矩形近似し、その矩形が水平になるように回転することによって、図12(h)の書籍画像1208を生成する。書籍画像1208は近似矩形の片方の編がX軸に平行となっているため、書籍画像撮影部412は、以降で書籍画像1208に対してX軸方向へのゆがみ補正処理を行う。
S1126で、書籍画像撮影部412は、書籍物体の3次元点群1217から点Pの高さ(図12(h)のh1)を取得する。
S1127で、書籍画像撮影部412は、書籍画像1208の点Pに対してX軸方向に所定の距離(図12(h)のx1)離れた点をQとする(図12(h)の点Q)。
S1128で、書籍画像撮影部412は、3次元点群1217から点Qの高さ(図12(h)のh2)を取得する。
S1129で、書籍画像撮影部412は、点Pと点Qとの書籍物体上での距離(図12(h)のl1)を式(4)によって、直線近似で算出する。
S1132で、書籍画像撮影部412は、ゆがみ補正処理を全ての点について終えたかどうかを判定し、終えていれば書籍物体のゆがみ補正処理を終了する。以上のようにして、書籍画像撮影部412は、S1102、S1103の処理を行ってゆがみ補正を行った書籍画像を生成することができる。
書籍画像撮影部412は、ゆがみ補正を行った書籍画像の生成後、S1104では生成した書籍画像に階調補正を行う。
S1105で、書籍画像撮影部412は、生成した書籍画像に対して、予め決めておいた画像フォーマット(例えばJPEG、TIFF、PDF等)に合わせて圧縮及びファイルフォーマット変換を行う。
S1106で、書籍画像撮影部412は、生成した画像データを、データ管理部405を介してHDD305の所定の領域へファイルとして保存し、処理を終了する。
図13のフローチャートを用いて、立体形状測定部413が実行する処理について説明する。図14は、立体形状測定部413の処理を説明するための模式図である。
立体形状測定部413は、処理を開始すると、S1301ではシリアルI/F310を介してターンテーブル209へ回転指示を行い、ターンテーブル209を所定の角度ずつ回転させる。ここでの回転角度は小さければ小さいほど最終的な測定精度は高くなるが、その分測定回数が多くなり時間がかかるため、装置として適切な回転角度を予め決めておけばよい。
S1302で、立体形状測定部413は、書画台204内に設けられたターンテーブル209上の対象物に対して、カメラ部202とプロジェクタ207とを用いて3次元点群測定処理を行う。図13(b)のフローチャートは、S1302で立体形状測定部413が実行する3次元点群測定処理のフローチャートである。
立体形状測定部413は、3次元点群測定処理を開始すると、S1311では図14(a)に示したターンテーブル209上の対象物1401に対して、プロジェクタ207から3次元形状測定パターン1402を投射する。
S1312で、立体形状測定部413は、カメラ画像取得部407を介してカメラ部202からカメラ画像を1フレーム取得する。
S1314で、立体形状測定部413は、カメラ部202及びプロジェクタ207の位置関係から、カメラ画像上の各画素における距離を算出し、距離画像を生成する。ここでの測定方法は、距離画像取得部408の処理において、図5のS505で説明した測定方法と同じである。
S1315で、立体形状測定部413は、距離画像の各画素について直交座標系への座標変換を行い、3次元点群を算出する。
S1316で、立体形状測定部413は、算出した3次元点群から書画台204の平面パラメータを用いて書画台平面に含まれる3次元点群を除去する。
S1317で、立体形状測定部413は、残った3次元点群の中から位置が大きく外れている点をノイズとして除去し、対象物1401の3次元点群1403を生成する。ここで、位置が大きく外れている点とは、例えば予め定められた位置よりも外れている点である。
1318で、立体形状測定部413は、プロジェクタ207から投射している3次元形状測定パターン1402を消灯する。
S1319で、立体形状測定部413は、カメラ画像取得部407を介してカメラ部202からカメラ画像を取得し、その角度から見たときのテクスチャ画像として保存し、3次元点群測定処理を終了する。
S1303で、立体形状測定部413は、S1302で測定した3次元点群1404を、ターンテーブルが初期位置から回転した角度分逆回転することにより、3次元点群1403との位置を合わせた3次元点群1405を算出する。
立体形状測定部413は、S1304の3次元点群合成処理を終了するとS1305ではターンテーブル209が1周回転したかを判定する。立体形状測定部413は、まだターンテーブル209が1周回転していなければ、S1301へ戻ってターンテーブル209を更に回転してからS1302の処理を実行して別の角度の3次元点群を測定する。そして、立体形状測定部413は、S1303〜S1304において既に合成した3次元点群1406と新たに測定した3次元点群との合成処理を行う。立体形状測定部413は、このようにS1301からS1305までの処理をターンテーブル209が1周するまで繰り返すことにより、対象物1401の全周3次元点群を生成することができる。
S1332で、立体形状測定部413は、3次元点群から三角パッチを生成することで、メッシュ化を行う。
S1333で、立体形状測定部413は、メッシュ化によって得られた平面へS1319で保存したテクスチャをマッピングする。立体形状測定部413は、以上によりテクスチャマッピングされた3次元モデルを生成することができる。
S1307で、立体形状測定部413は、テクスチャマッピング後のデータをVRMLやSTL等の標準的な3次元モデルデータフォーマットへ変換し、データ管理部405を介してHDD305上の所定の領域に格納し、処理を終了する。
図15のフローチャートを用いて、メイン制御部402が実行するスキャンアプリケーションの処理について説明する。
図15において、メイン制御部402が処理を開始すると、S1501では書画台204にスキャンの対象物が載置されるのを待つ、物体載置待ち処理を行う。
S1501で、メイン制御部402は、対象物載置待ち処理を開始すると、S1511ではユーザーインターフェイス部403を介して、書画台204にプロジェクタ207によって図16(a)の画面を投射する。図16(a)の画面では、書画台204上に対象物を置くことをユーザーに促すメッセージ1601が投射されている。
S1512で、メイン制御部402は、物体検知部410の処理を起動する。物体検知部410は、図8のフローチャートで説明した処理の実行を開始する。
S1513で、メイン制御部402は、物体検知部410からの物体載置通知を待つ。物体検知部410が図8のS827の処理を実行して物体載置をメイン制御部402へ通知すると、メイン制御部402は、S1513において物体載置通知ありと判定し、物体載置待ち処理を終了する。
S1533で、メイン制御部402は、2Dスキャンボタン1612が選択状態であればS1534へ進んで平面原稿画像撮影部411の処理を実行して、スキャン実行処理を終了する。
メイン制御部402は、S1533で2Dスキャンボタン1612が選択状態でなければS1535へ進んでブックスキャンボタン1613が選択状態かどうかを判定する。メイン制御部402は、S1535でブックスキャンボタン1613が選択状態であればS1536へ進んで書籍画像撮影部412の処理を実行して、スキャン実行処理を終了する。
メイン制御部402は、S1535でブックスキャンボタン1613が選択状態でなければS1537へ進んで3Dスキャンボタン1614が選択状態かどうかを判定する。メイン制御部402は、S1537で3Dスキャンボタン1614が選択状態であればS1538へ進んで立体形状測定部413の処理を実行して、スキャン実行処理を終了する。
メイン制御部402は、S1537で3Dスキャンボタン1614が選択状態でなければ2Dスキャンボタン1612、ブックスキャンボタン1613、3Dスキャンボタン1614の何れも選択状態でないということである。そこで、メイン制御部402は、S1532へ戻り、何れかのボタンが選択状態になってからスキャン開始ボタン1615へのタッチを検知するのを待つ。
メイン制御部402は、S1503の物体除去待ち処理を開始すると、S1521ではユーザーインターフェイス部403を介して図16(c)に示したスキャン終了画面を表示する。図16(c)のスキャン終了画面では、スキャンした原稿を除去する旨をユーザーに通知するメッセージ1621と、メイン制御部402の処理終了指示を受け付ける終了ボタン1622とが投射される。
S1522で、メイン制御部402は、物体検知部410からの物体除去通知を受信するのを待つ。ここで、物体除去通知は、物体検知部410が図8のS834で通知するものである。メイン制御部402は、S1522で物体除去通知があると、物体除去待ち処理を終了する。
S1503の物体除去待ち処理を終了すると、S1504で、メイン制御部402は、S1503の物体除去待ち処理の実行中に、終了ボタン1622がタッチされていたかどうかを判定する。メイン制御部402は、S1504で終了ボタン1622がタッチされていたと判定したら処理を終了する。メイン制御部402は、S1504で終了ボタン1622がタッチされていないと判定すればS1501へ戻り、ユーザーインターフェイス部403を介して図16(a)の初期画面を表示して書画台204への物体載置を待つ。このようにすることで、メイン制御部402は、ユーザーが複数の原稿をスキャンしたい場合に、書画台204上の原稿を取り換えたことを検知することができ、複数の原稿のスキャンを実行できる。
実施形態1の構成のカメラスキャナ101において、距離画像センサ部208は、書画台204上に載置された物体の形状を測定することが可能である。そこで、実施形態2においては、物体が書画台204上に載置されたときに平面物か立体物かどうかを、距離画像センサ部208を用いて判別し、それぞれで適切な処理を行うことによって、操作性を向上させる。実施形態2では、実施形態1で説明した機能構成401の処理において、物体検知部410が実行する図8のフローチャートの処理と、メイン制御部402が図15のS1502で実行するスキャン実行処理とが異なる。異なっている処理について、図17を用いて説明する。
図17(a)は、実施形態2の物体検知部410が実行する処理の一例を示すフローチャートである。このフローチャートでは、図8(a)のフローチャートに対して、S801の物体検知部初期化処理、S802の物体載置検知処理の次に、S1701の物体種類判別処理が追加されている。そして、物体検知部410は、S803の物体除去検知処理を行って処理を終了する。S801、S802、S803の処理は図8で説明した物体検知部410の処理と同じである。
S1712で、物体検知部410は、書画台204上の物体に含まれる3次元点群の中で、書画台平面からの高さが最大の点の高さを物体の高さとして取得し、その高さが予め決めておいた所定値以下であるかどうかを判定する。物体検知部410は、S1712において、物体の高さが所定値以下であればS1713へ進み、書画台204上に平面原稿が置かれたことをメイン制御部402へ通知する。物体検知部410は、S1712において、物体の高さが所定値よりも高ければS1714へ進み、書画台204上に立体物が置かれたことをメイン制御部402へ通知する。
物体検知部410は、S1713、S1714の何れかを実行した後、物体種類判別処理を終了する。
メイン制御部402は、S1502のスキャン実行処理を開始すると、S1721では、物体検知部410から平面原稿が置かれたことを通知されたかどうかを判定する。S1721において、メイン制御部402は、平面原稿が置かれたことを通知されていなければS1723へ進み、物体検知部410から立体物が置かれたことを通知されたかどうかを判定する。
S1723で、メイン制御部402は、立体物が置かれたことを通知されていなければS1721へ戻り、平面原稿の載置通知又は立体物の載置通通知を受け取るまで待つ。物体検知部410が図17(a)のS1713を実行して平面原稿が置かれたことを通知すると、メイン制御部402は、S1721で平面原稿が置かれたことの通知ありと判定し、S1722へ進む。
S1722で、メイン制御部402は、平面原稿画像撮影部411の処理を実行する。また、物体検知部410が図17(a)のS1714を実行して立体物が置かれたことを通知すると、メイン制御部402は、S1723で立体物が置かれたことの通知ありと判定し、S1724へ進む。そして、メイン制御部402は、ユーザーインターフェイス部403を介して図17(c)に示すスキャン開始画面を書画台204に投射する。
S1725で、メイン制御部402は、スキャン開始ボタン1733へのタッチを検知するまで待つ。メイン制御部402は、S1725でスキャン開始ボタン1733のタッチを検知するとS1726へ進み、ブックスキャンボタン1731が選択状態かどうかを判定する。
S1726で、メイン制御部402は、ブックスキャンボタン1731が非選択状態であればS1728へ進み、3Dスキャンボタン1732が選択状態かどうかを判定する。
S1728で、メイン制御部402は、3Dスキャンボタン1732が非選択状態であれば、ブックスキャンボタン1731、3Dスキャンボタン1732の何れのボタンのタッチも検知していないということになる。そのため、メイン制御部402は、S1725へ戻ってスキャン開始ボタン1733のタッチを検知するのを待つ。
S1726で、メイン制御部402は、ブックスキャンボタン1731が選択状態であればS1727へ進んで書籍画像撮影部412の処理を実行する。
S1728で、メイン制御部402は、3Dスキャンボタン1732が選択状態であればS1729へ進んで立体形状測定部413の処理を実行する。
メイン制御部402は、S1722の平面原稿撮影部処理、S1727の書籍画像撮影部処理、S1729の立体形状測定部処理、の3つの処理の何れかを実行するとスキャン実行処理を終了する。
なお、ユーザーがブックスキャン又は3Dスキャンの何れかの実行を必要としない場合、ユーザーインターフェイス部403は、図17(c)の画面でスキャン開始ボタン1733のみ投射すればよい。また、スキャン操作画面を表示しないでスキャンを実行することも可能である。例えば、平面原稿スキャンとブックスキャンとの2種類のスキャンのみの実行を必要とする場合、メイン制御部402は、図17(b)のS1723で立体物通知があったと判定したら書籍画像撮影部の処理を実行すればよい。このようにすることで、ユーザーはスキャン操作画面を操作することなく、平面原稿と書籍原稿とのスキャンを行うことができる。
実施形態2では、書画台204に立体物が置かれたときに、ユーザーインターフェイス部403は、図17(c)に示したようにブックスキャンを実行するか3Dスキャンを実行するかの選択肢をユーザーに提示した。ここで、平面原稿も書籍も主なスキャン対象は文書であるが、立体形状を測定するのは文書以外のものである場合が多いことを考慮すると、ユーザーに文書スキャンか3Dスキャンかの選択肢を提示することにより操作性が向上すると考えられる。実施形態3では、実施形態2で説明した機能構成401の処理において、メイン制御部402が図15のS1502で実行するスキャン実行処理が異なっている。異なっている処理について、図18を用いて説明する。
メイン制御部402は、スキャン実行処理を開始すると、S1801ではユーザーインターフェイス部403を介して図18(b)に示すスキャン開始画面を書画台204に投射する。図18(b)のスキャン開始画面では、文書スキャンボタン1821、3Dスキャンボタン1822、スキャン開始ボタン1823が投射されている。文書スキャンボタン1821、3Dスキャンボタン1822は、スキャンのモード選択を受け付けるボタンである。ユーザーインターフェイス部403は、何れかのボタンのタッチを検知したときにはそのボタンを選択状態にし、もう一方のボタンは非選択状態にする。スキャン開始ボタン1823は、スキャン開始指示を受け付けるボタンである。
S1802で、メイン制御部402は、スキャン開始ボタン1823へのタッチを検知するまで待つ。メイン制御部402は、S1802でスキャン開始ボタン1823のタッチを検知すると、S1803へ進み、文書スキャンボタン1821が選択状態かどうかを判定する。
S1803で、メイン制御部402は、文書スキャンボタン1821が選択状態でなければS1808へ進み、3Dスキャンボタン1822が選択状態かどうかを判定する。
S1803で、メイン制御部402は、文書スキャンボタン1821が選択状態であればS1804へ進み、物体検知部410からの平面原稿載置通知があったかどうかを判定する。
S1804で、メイン制御部402は、平面原稿載置通知がなければS1806へ進み、立体物載置通知があったかどうかを判定する。
S1806で、メイン制御部402は、立体物載置通知がなければS1804へ戻り、平面原稿載置通知か立体物載置通知の何れかを待つ。
S1804で、メイン制御部402は、平面原稿載置通知があったと判定したらS1805へ進み、平面原稿画像撮影部411の処理を実行する。
S1806で、メイン制御部402は、立体物載置通知があったと判定したらS1807へ進み、立体物を文書としてスキャンすることをユーザーから指示されたと解釈し、書籍画像撮影部412の処理を実行する。
S1808で、メイン制御部402は、3Dスキャンボタン1822が選択状態であればS1809へ進み、立体形状測定部413の処理を実行する。
メイン制御部402は、S1805、S1807、S1809の何れかの処理の実行が終了したら、スキャン実行処理を終了する。
実施形態2及び実施形態3では、メイン制御部402が、書画台204に置かれた対象物が平面原稿であるか立体物であるかの判別をしてから処理をおこなった。実施形態4では、メイン制御部402が、書画台204に置かれた対象物を立体物と判定した際に、その対象物が書籍であるか書籍でないかを判別し、処理を行う。実施形態4では、実施形態2及び実施形態3に対して、図17のS1701の物体種類判別処理と、図15のS1502のスキャン実行処理との詳細が異なるので、その点について説明する。
図19は、実施形態4の物体検知部410が実行する物体種類判別処理の一例を示すフローチャートである。
物体検知部410は、物体種類判別処理を開始すると、S1901では距離画像取得部408を介して距離画像を1フレーム取得し、3次元点群に変換する。
S1902で、物体検知部410は、書画台204上の物体に含まれる3次元点群の中で、書画台平面からの高さが最大の点の高さを物体の高さとして取得し、その高さが予め決めておいた所定値以下であるかどうかを判定する。S1902において、物体検知部410は、物体の高さが所定値以下であればS1903へ進み、書画台204上への平面原稿載置をメイン制御部402へ通知する。S1902で、物体検知部410は、物体の高さが所定値よりも高ければS1904へ進み、書画台204上に置かれた立体物が書籍であるかどうかを判定する。S1904の処理については後述する。
物体検知部410は、S1903、S1906、S1907の何れかを実行した後、物体種類判別処理を終了する。
続いて、S1904の書籍判定処理の詳細について説明する。
物体検知部410は、S1904において書籍判定処理を開始すると、S1911へ進んで、対象物を書画台平面へ射影変換し、書画台平面の真上から見たときに矩形に近いかどうかを判定する。ここでの判定は、射影変換後の対象物画像の外接矩形を算出し、外接矩形の面積と対象物画像の面積との差が予め決めておいた所定値以下であれば矩形に近く、所定値より大きければ矩形に近くない、という方法で行う。
S1912で、物体検知部410は、平たい形状に近くないと判定した場合にはS1915へ進んで書籍以外と判定する。S1912で、物体検知部410は、平たい形状に近いと判定した場合にはS1913に進み、OCRの技術を用いて対象物の表面に文字が含まれているかどうかを判定する。
S1913で、物体検知部410は、文字が含まれていないと判定した場合にはS1915へ進み、書籍以外と判定する。S1913で、物体検知部410は、文字が含まれていると判定した場合にはS1914へ進み、書籍と判定し、書籍判定処理を終了する。
なお、物体検知部410は、S1904の書籍判定処理において、S1911からS1913までの判定処理を必ずしも全て実行しなければいけないわけではない。例えば、物体検知部410は、S1911からS1913までの判定処理のうち、1つ又は任意の複数の組み合わせの判定処理を実行するようにしてもよい。また、S1911からS1913まで判定処理における条件は書籍判定条件の一例であり、ここで例示した条件以外の他の条件であってもよい。
メイン制御部402は、スキャン実行処理を開始すると、S2001では物体検知部410からの平面原稿載置通知があったかどうかを判定する。S2001で、メイン制御部402は、平面原稿載置通知がなかったと判定したら、S2003へ進んで物体検知部410からの書籍載置通知があったかどうかを判定する。S2003で、メイン制御部402は、書籍載置通知がなかったと判定したら、S2005へ進んで立体物載置通知があったかどうかを判定する。S2005で、メイン制御部402は、立体物載置通知がなかったと判定したら、S2001へ戻って物体検知部410からの平面原稿載置通知、書籍載置通知、立体物載置通知の何れかを待つ。
S2003で、メイン制御部402は、書籍載置通知があったと判定したら、S2004へ進んで書籍画像撮影部412の処理を実行する。
S2005で、メイン制御部402は、立体物載置通知があったと判定したら、立体形状測定部413の処理の実行を行う。しかし、立体形状測定部413の処理はターンテーブル209を一周回転させながら形状測定を複数回行うため、時間がかかる。そのため、ユーザーが立体形状測定部413の処理開始を明示的に指示できる方が操作性の面から望ましい。そこで、S2006で、メイン制御部402は、ユーザーインターフェイス部403を介して図20(b)に示した画面の投射を行う。図20(b)において、3Dスキャン開始ボタン2021は3Dスキャンの開始指示を受け付けるボタンである
S2007で、メイン制御部402は、3Dスキャン開始ボタン2021のタッチを検知するまで待つ。S2007で、メイン制御部402は、3Dスキャン開始ボタン2021へのタッチを検知したら、S2008へ進んで立体形状測定部413の処理を実行する。
メイン制御部402は、S2002、S2004、S2008の何れかの処理の実行が終了したら、スキャン実行処理を終了する。
実施形態1において、立体形状測定部413では、ターンテーブル209上の対象物をカメラ部202とプロジェクタ207とによって立体形状の測定を実行する。立体形状測定部413の処理では、カメラ部202とプロジェクタ207との位置は固定されており、ターンテーブル209を回転させながら複数回立体形状測定を行うことで、対象物の側面については測定精度を高めている。しかしながら、対象物の高さがカメラ部202の高さと同程度以上の場合、上面の測定精度が低下する可能性がある。ここで、図2(a)に示したように、距離画像センサ部208は、カメラ部202よりも上方に配置されているため、対象物の上面を精度良く測定することが可能である。そこで、実施形態5では、カメラ部202とプロジェクタ207とによる立体形状測定に加えて、距離画像センサ部208による立体形状測定も加えることで測定精度を向上させる。
実施形態5における立体形状測定部413の処理の一例を図21のフローチャートに示す。図21のフローチャートは、図13(a)のフローチャートにS2101、S2102が追加されたフローチャートになっており、図13(a)と同じ処理については同じ番号を付している。図13(a)と同じ処理については、説明を簡略に留める。
S1302で、立体形状測定部413は、カメラ部202とプロジェクタ207とによる3次元点群測定を行う。
S2101で、立体形状測定部413は、図5で説明した距離画像取得部408の処理を実行して距離画像センサ部208の座標系の距離画像を取得し、それを直交座標系の3次元点群に変換して、距離画像センサ部208による3次元点群測定を行う。
S2102で、立体形状測定部413は、S1301で測定した3次元点群と、S2101で測定した3次元点群とを、実施形態1で説明したICPアルゴリズムを用いて、1つの3次元点群に合成する。このようにすることで、対象物の側面及び上面の両方の測定精度の高い3次元点群を得ることができる。
S1303で、立体形状測定部413は、S2102で合成した3次元点群をターンテーブルの初期位置からの回転角度分逆回転し、S1304でこれまでに合成した3次元点群と更に合成処理を行う。
S1305で、立体形状測定部413は、ターンテーブルが1周したかどうかを判定し、1周するまでS1301からS1304までの処理を繰り返す。S1305で、立体形状測定部413は、ターンテーブルが1周したと判定したら、S1306へ進んで3次元モデル生成処理を行い、S1307で算出した3次元モデルデータをフォーマット変換して保存して処理を終了する。
また、本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア(プログラム)を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ(又はCPUやMPU等)がプログラムを読み出して実行する処理である。
(1)カメラによる平面原稿の読取。
(2)カメラによる厚みのある書籍の読取と、距離画像センサによるゆがみ補正。
(3)プロジェクタによる3次元測定パターンの投射とカメラによる立体形状測定。
そのため、ユーザーは書画台上に対象物を置くとともに、書画台上に投射されるユーザーインターフェイスを操作すればよく、ユーザーにとっては書画台上で作業を完結して行うことができ、操作性を大きく向上させることが可能となる。
Claims (18)
- 台上の撮像画像を取得する撮像画像取得手段と、
前記台上の距離画像を取得する距離画像取得手段と、
前記撮像画像取得手段により取得された撮像画像に基づいて、前記台上における被写体の載置を検知する検知手段と、
前記検知手段により前記被写体の載置が検知された場合、前記被写体の読み取りに関する操作表示を前記台上に投射する投射手段と、
前記距離画像取得手段により取得された距離画像に基づいて、前記台上におけるユーザーのジェスチャーを認識する認識手段と、
前記投射手段により投射された前記操作表示に対する前記認識手段により認識された前記ジェスチャーに応じて、前記被写体の読み取り画像を取得する読み取り手段と、
を有する画像処理装置。 - 前記投射手段は、前記被写体の形状に応じた読み取りモードを選択させる前記操作表示を投射し、
前記読み取り手段は、前記ジェスチャーにより選択された前記操作表示が示す読み取りモードで前記被写体の読み取り画像を取得する請求項1に記載の画像処理装置。 - 前記読み取り手段は、平面原稿を読み取る読み取りモード、書籍を読み取る読み取りモード又は立体物を読み取る読み取りモードの何れかの読み取りモードで前記被写体を読み取ることにより、前記読み取り画像を取得する請求項1又は2に記載の画像処理装置。
- 前記読み取り手段は、平面原稿を読み取る読み取りモードの場合、前記読み取り画像を前記被写体を含む撮像画像から抽出して取得する請求項3に記載の画像処理装置。
- 前記読み取り手段は、書籍を読み取る読み取りモードの場合、前記読み取り画像を前記被写体を含む撮像画像から抽出し、前記被写体を含む距離画像に基づいてゆがみ補正することにより取得する請求項3に記載の画像処理装置。
- 前記読み取り手段は、立体物を読み取る読み取りモードの場合、前記台を構成するターンテーブルにより前記被写体を回転させながら投射部を介して前記被写体に立体形状測定パターンを投射し、前記投射した立体形状測定パターンを撮像部を介して読み取った複数の立体データを合成することにより、前記読み取り画像を取得する請求項3に記載の画像処理装置。
- 前記読み取り手段は、前記投射した立体形状測定パターンを前記撮像部を介して読み取った立体データと、前記撮像部とは異なる位置に配置された立体測定部を介して取得した前記被写体の立体データとを合成することにより前記読み取り画像を取得する請求項6に記載の画像処理装置。
- 前記距離画像取得手段により取得された前記被写体の距離画像に基づいて、前記被写体の形状を判別する判別手段を更に有し、
前記投射手段は、前記判別手段による判別の結果に基づいて、前記被写体の形状に応じた読み取りモードを選択させる前記操作表示を投射する請求項1乃至7の何れか1項に記載の画像処理装置。 - 前記投射手段は、前記被写体が立体物であると判別された場合、前記被写体の読み取りモードとして、書籍の読み取りモード又は立体物の読み取りモードを選択させる前記操作表示を投射する請求項8に記載の画像処理装置。
- 前記投射手段は、前記被写体の読み取りモードとして、立体物の読み取りモード又は文書の読み取りモードを選択させる前記操作表示を投射し、
前記読み取り手段は、前記文書の読み取りモードが選択された場合であって、かつ、前記被写体が平面原稿であると判別された場合、平面原稿を読み取る読み取りモードで前記被写体を読み取り、前記文書の読み取りモードが選択された場合であって、かつ、前記被写体が立体物であると判別された場合、書籍を読み取る読み取りモードで前記被写体を読み取り、前記読み取り画像を取得する請求項8に記載の画像処理装置。 - 前記投射手段は、前記被写体が立体物であって、かつ、書籍でないと判別された場合、立体物を読み取る読み取りモードでの読み取りを実行させる前記操作表示を投射する請求項8に記載の画像処理装置。
- 前記読み取り手段は、前記被写体が平面原稿又は書籍であると判別された場合、前記ジェスチャーの認識を待たずに前記被写体の読み取り画像を取得する請求項8乃至11の何れか1項に記載の画像処理装置。
- 前記判別手段は、前記被写体の距離画像が示す前記被写体の高さが予め定められた高さ以下の場合、前記被写体を平面原稿と判別し、前記被写体の高さが予め定められた高さより高い場合、前記被写体を立体物と判別し、更に、前記被写体を立体物であると判別した場合であって、かつ、予め定められた書籍判定条件を満たす場合、前記被写体を書籍と判別する請求項8乃至12の何れか1項に記載の画像処理装置。
- 前記検知手段は、前記撮像画像取得手段により取得された前記被写体を含む撮像画像と、前記台の背景の撮像画像との差分値が予め定められた閾値以上である場合、前記台上における被写体の載置を検知する請求項1乃至13の何れか1項に記載の画像処理装置。
- 前記認識手段は、前記距離画像取得手段により取得された距離画像から検出した前記ユーザーの手の形状と位置とに基づいて、前記ユーザーのジェスチャーを認識する請求項1乃至14の何れか1項に記載の画像処理装置。
- 前記画像処理装置は、カメラスキャナである請求項1乃至15の何れか1項に記載の画像処理装置。
- 画像処理装置が実行する情報処理方法であって、
台上の撮像画像を取得する撮像画像取得ステップと、
前記台上の距離画像を取得する距離画像取得ステップと、
前記撮像画像取得ステップにより取得された撮像画像に基づいて、前記台上における被写体の載置を検知する検知ステップと、
前記検知ステップにより前記被写体の載置が検知された場合、前記被写体の読み取りに関する操作表示を前記台上に投射する投射ステップと、
前記距離画像取得ステップにより取得された距離画像に基づいて、前記台上におけるユーザーのジェスチャーを認識する認識ステップと、
前記投射ステップにより投射された前記操作表示に対する前記認識ステップにより認識された前記ジェスチャーに応じて、前記被写体の読み取り画像を取得する読み取りステップと、
を含む情報処理方法。 - コンピュータを請求項1乃至16の何れか1項に記載の画像処理装置の各手段として機能させるためのプログラム。
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2014095535A JP6289254B2 (ja) | 2014-05-02 | 2014-05-02 | 画像処理装置、情報処理方法及びプログラム |
PCT/JP2015/063537 WO2015167020A1 (en) | 2014-05-02 | 2015-04-30 | Image processing apparatus, information processing method, and program |
US15/122,650 US9924066B2 (en) | 2014-05-02 | 2015-04-30 | Image processing apparatus, information processing method, and program |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2014095535A JP6289254B2 (ja) | 2014-05-02 | 2014-05-02 | 画像処理装置、情報処理方法及びプログラム |
Publications (3)
Publication Number | Publication Date |
---|---|
JP2015212897A JP2015212897A (ja) | 2015-11-26 |
JP2015212897A5 JP2015212897A5 (ja) | 2017-06-08 |
JP6289254B2 true JP6289254B2 (ja) | 2018-03-07 |
Family
ID=54358740
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2014095535A Active JP6289254B2 (ja) | 2014-05-02 | 2014-05-02 | 画像処理装置、情報処理方法及びプログラム |
Country Status (3)
Country | Link |
---|---|
US (1) | US9924066B2 (ja) |
JP (1) | JP6289254B2 (ja) |
WO (1) | WO2015167020A1 (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2016038338A (ja) * | 2014-08-08 | 2016-03-22 | キヤノン株式会社 | 3dスキャナ、3dスキャン方法、コンピュータプログラム、記録媒体 |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107429998B (zh) * | 2015-03-30 | 2018-10-02 | 富士胶片株式会社 | 距离图像获取装置以及距离图像获取方法 |
JP6671977B2 (ja) | 2016-01-22 | 2020-03-25 | キヤノン株式会社 | 計測装置及びその制御方法、並びにプログラム |
JP2020039082A (ja) * | 2018-09-05 | 2020-03-12 | セイコーエプソン株式会社 | 表示装置、表示システムおよび表示装置の制御方法 |
US11165926B1 (en) | 2020-09-30 | 2021-11-02 | Kyocera Document Solutions Inc. | Image forming apparatus, information processing method, and non-transitory computer readable recording medium that stores information processing program |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3834766B2 (ja) | 2000-04-03 | 2006-10-18 | 独立行政法人科学技術振興機構 | マンマシーン・インターフェース・システム |
JP4012710B2 (ja) * | 2001-02-14 | 2007-11-21 | 株式会社リコー | 画像入力装置 |
JP3954436B2 (ja) | 2001-12-11 | 2007-08-08 | 株式会社リコー | 画像入力装置 |
JP2012053545A (ja) * | 2010-08-31 | 2012-03-15 | Canon Inc | 画像処理システムおよびその制御方法 |
US20130250379A1 (en) * | 2012-03-20 | 2013-09-26 | Panasonic Corporation | System and method for scanning printed material |
JP6095283B2 (ja) | 2012-06-07 | 2017-03-15 | キヤノン株式会社 | 情報処理装置、およびその制御方法 |
-
2014
- 2014-05-02 JP JP2014095535A patent/JP6289254B2/ja active Active
-
2015
- 2015-04-30 WO PCT/JP2015/063537 patent/WO2015167020A1/en active Application Filing
- 2015-04-30 US US15/122,650 patent/US9924066B2/en active Active
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2016038338A (ja) * | 2014-08-08 | 2016-03-22 | キヤノン株式会社 | 3dスキャナ、3dスキャン方法、コンピュータプログラム、記録媒体 |
Also Published As
Publication number | Publication date |
---|---|
JP2015212897A (ja) | 2015-11-26 |
US9924066B2 (en) | 2018-03-20 |
WO2015167020A1 (en) | 2015-11-05 |
US20170070635A1 (en) | 2017-03-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6327931B2 (ja) | 画像処理装置、情報処理方法及びプログラム | |
JP6289254B2 (ja) | 画像処理装置、情報処理方法及びプログラム | |
WO2015180659A1 (zh) | 图像处理方法和图像处理装置 | |
US10310675B2 (en) | User interface apparatus and control method | |
JP2016038820A (ja) | 画像処理装置および制御プログラム | |
CN106934777A (zh) | 扫描图像获取方法及装置 | |
JP2015170907A (ja) | スキャナシステム、スキャナシステムのデータ処理方法、及びプログラム | |
JP6381361B2 (ja) | データ処理装置、データ処理システム、データ処理装置の制御方法、並びにプログラム | |
JP2015198406A (ja) | 画像読取装置、方法およびプログラム | |
JP2015212892A (ja) | 画像処理装置、情報処理方法及びプログラム | |
JP2016103137A (ja) | ユーザインタフェース装置、画像処理装置及び制御用プログラム | |
JP2018107642A (ja) | 画像処理装置、画像処理装置の制御方法、及びプログラム | |
JP6399840B2 (ja) | 画像処理装置、画像処理方法及びプログラム | |
JP2018112894A (ja) | システムおよび制御方法 | |
WO2015072091A1 (ja) | 画像処理装置、画像処理方法及びプログラム記憶媒体 | |
JP6478641B2 (ja) | 画像処理装置、情報処理方法及びプログラム | |
JP2017041668A (ja) | 画像入力装置、画像入力システム、画像入力装置の制御方法、及びプログラム | |
JP6643825B2 (ja) | 装置及び方法 | |
JP2019016843A (ja) | 原稿読取装置、原稿読取装置の制御方法、及びプログラム | |
JP6624861B2 (ja) | 画像処理装置、制御方法およびプログラム | |
JP6263024B2 (ja) | 画像処理装置、画像処理方法および、プログラム、並びに画像再生装置 | |
JP2017073039A (ja) | 物体識別装置、物体識別方法及びプログラム | |
JP6203070B2 (ja) | スキャンシステムおよびその制御方法、並びにプログラム | |
JP6614500B2 (ja) | 画像読取装置、携帯端末、画像読取方法及び画像読取プログラム | |
JP2019101753A (ja) | 物体形状測定装置及びその制御方法、並びにプログラム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20170414 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20170414 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20180109 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20180206 |
|
R151 | Written notification of patent or utility model registration |
Ref document number: 6289254 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R151 |