JP2015170907A - Scanner system, data processing method of scanner system, and program - Google Patents
Scanner system, data processing method of scanner system, and program Download PDFInfo
- Publication number
- JP2015170907A JP2015170907A JP2014042865A JP2014042865A JP2015170907A JP 2015170907 A JP2015170907 A JP 2015170907A JP 2014042865 A JP2014042865 A JP 2014042865A JP 2014042865 A JP2014042865 A JP 2014042865A JP 2015170907 A JP2015170907 A JP 2015170907A
- Authority
- JP
- Japan
- Prior art keywords
- unit
- image
- camera
- placement
- objects
- 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
- Length Measuring Devices By Optical Means (AREA)
- Image Processing (AREA)
- Facsimile Scanning Arrangements (AREA)
- Studio Devices (AREA)
Abstract
Description
本発明は、スキャナシステム、スキャナシステムのデータ処理方法、及びプログラムに関するものである。 The present invention relates to a scanner system, a data processing method for the scanner system, and a program.
従来、文書をスキャンして電子データとして保存する場合、撮像にラインセンサを用いるラインスキャナと、2次元の撮像センサを用いるカメラスキャナとがある。特に、書画台の上方にカメラを配置し、原稿を上向きに書画台に置いて撮像するカメラスキャナの場合には、1枚の原稿であれば置くだけで素早くスキャンすることができるとともに、本のように厚みのある原稿も容易に書画台に置いてスキャンすることができる。さらに、紙や本のような文書だけでなく、立体物を書画台上に置いて立体形状をスキャンするカメラスキャナが特許文献1で開示されている。特許文献1のカメラスキャナは、撮像するためのカメラとともに投光部を備え、投光部から投光する計測パターンをカメラで撮像し、三角測量の原理により立体形状を測定する。そして、書画台上の置かれた物体の立体形状を算出して平面原稿か書籍か立体物かを判別し、それぞれに応じて適切な撮影モードで撮影を行う。 Conventionally, when a document is scanned and stored as electronic data, there are a line scanner using a line sensor for imaging and a camera scanner using a two-dimensional imaging sensor. In particular, in the case of a camera scanner in which a camera is arranged above the document table and the document is placed on the document table with the document facing upward, a single document can be quickly scanned and the book can be scanned quickly. Thus, a thick original can be easily placed on the document table and scanned. Further, Patent Document 1 discloses a camera scanner that scans a three-dimensional shape by placing a three-dimensional object on a document table as well as a document such as paper or a book. The camera scanner of Patent Literature 1 includes a light projecting unit together with a camera for capturing an image, images a measurement pattern projected from the light projecting unit with the camera, and measures a three-dimensional shape based on the principle of triangulation. Then, the three-dimensional shape of the object placed on the document table is calculated to determine whether it is a flat manuscript, a book, or a three-dimensional object, and shooting is performed in an appropriate shooting mode according to each.
しかしながら、特許文献1のカメラスキャナにおいては、書画台に複数の異なる種類の物体を置いた場合に適切な撮影モードで撮影することができず、1個ずつの撮影が必要となるため大量の物体の撮影を行う場合に手間と時間がかかった。また、複数の物体のデータをPDFのようなドキュメントにまとめる際に同一ページ内に複数のデータを配置するためには一度パソコン等にデータを転送しPDFの編集ソフトで個々のデータを配置することが必要で手間と時間がかかった。 However, in the camera scanner of Patent Document 1, when a plurality of different types of objects are placed on the document table, it is not possible to shoot in an appropriate shooting mode, and a large number of objects are required because each shooting is required. It took time and effort to shoot. In order to place a plurality of data in the same page when collecting data of a plurality of objects into a PDF-like document, the data is once transferred to a personal computer or the like and the individual data is arranged by a PDF editing software. It took time and effort.
本発明は、上記の課題を解決するためになされたもので、本発明の目的は、載置される複数のオブジェクトを同時に撮影することに応じて、それぞれのオブジェクトを分離した電子文書データ、あるいはそれぞれのオブジェクトを一体とする電子文書データを効率よく作成できる仕組みを提供することである。 The present invention has been made to solve the above-described problems, and an object of the present invention is to obtain electronic document data obtained by separating each object according to simultaneous shooting of a plurality of placed objects, or It is to provide a mechanism that can efficiently create electronic document data in which each object is integrated.
上記目的を達成する本発明のスキャナシステムは以下に示す構成を備える。
複数のオブジェクトを載置する載置手段と、前記載置手段に載置される複数のオブジェクトを撮影してカメラ画像を生成するカメラと、前記載置手段に載置される複数のオブジェクトに照射される赤外線パターンを撮影して得られる赤外線画像から距離画像を生成する第1の距離画像生成手段と、前記載置手段に所定の測定パターンまたはユーザインタフェースを投影する投影手段と、前記ユーザインタフェースに対する指示に従い前記載置手段に載置された複数のオブジェクトを1ページに合成して格納するか、それぞれのオブジェクトを分離して1ページずつ格納するかを示す格納形式を設定する設定手段と、前記設定手段により設定された格納形式に基づいて、複数のオブジェクトをページ合成した電子文書に変換する処理と、それぞれオブジェクトを分離した電子文書に変換する処理とを切り換え制御する制御手段と、を備えることを特徴とする。
The scanner system of the present invention that achieves the above object has the following configuration.
A mounting unit for mounting a plurality of objects, a camera for capturing a plurality of objects mounted on the mounting unit and generating a camera image, and irradiating the plurality of objects mounted on the mounting unit First distance image generation means for generating a distance image from an infrared image obtained by photographing the infrared pattern to be obtained, projection means for projecting a predetermined measurement pattern or user interface onto the placement means, and the user interface Setting means for setting a storage format indicating whether a plurality of objects placed on the placing means according to the instruction are combined and stored in one page, or each object is separated and stored one page; Based on the storage format set by the setting means, a process for converting a plurality of objects into a page-combined electronic document, and Characterized in that it comprises control means for controlling switching between processing for converting the electronic document to separate the objects, the.
本発明によれば、載置される複数のオブジェクトを同時に撮影することに応じて、それぞれのオブジェクトを分離した電子文書データ、あるいはそれぞれのオブジェクトを一体とする電子文書データを効率よく作成できる。 According to the present invention, electronic document data in which each object is separated or electronic document data in which each object is integrated can be efficiently created by simultaneously photographing a plurality of placed objects.
次に本発明を実施するための最良の形態について図面を参照して説明する。
<システム構成の説明>
〔第1実施形態〕
Next, the best mode for carrying out the present invention will be described with reference to the drawings.
<Description of system configuration>
[First Embodiment]
図1は、本実施形態を示すスキャナシステムの一例を示す図である。本例は、カメラスキャナ101はイーサネット(登録商標)等のネットワーク104にてホストコンピュータ102およびプリンタ103に接続されている例である。
FIG. 1 is a diagram illustrating an example of a scanner system according to the present embodiment. In this example, the
図1のネットワーク構成において、ホストコンピュータ102からの指示により、カメラスキャナ101から画像を読み取るスキャン機能や、スキャンデータをプリンタ103により出力するプリント機能の実行が可能である。また、ホストコンピュータ102を介さず、カメラスキャナ101への直接の指示により、スキャン機能、プリント機能の実行も可能である。
In the network configuration of FIG. 1, a scan function for reading an image from the
<カメラスキャナの構成>
図2は、図1に示したカメラスキャナ101の構成例を示す図である。
図2の(a)に示すように、カメラスキャナ101は、コントローラ部201、カメラ部202、腕部203、短焦点プロジェクタ部207、距離画像センサ部208を含む。カメラスキャナ101の本体であるコントローラ部201と、撮像を行うためのカメラ部202、短焦点プロジェクタ部207および距離画像センサ部208は、腕部203により連結されている。腕部203は関節を用いて曲げ伸ばしが可能である。
<Configuration of camera scanner>
FIG. 2 is a diagram showing a configuration example of the
As shown in FIG. 2A, the
図2の(a)には、カメラスキャナ101が設置されている書画台204も示している。カメラ部202および距離画像センサ部208のレンズは書画台204方向に向けられており、破線で囲まれた読み取り領域205内の画像を読み取り可能である。
図2の例では、原稿206は読み取り領域205内に置かれているので、カメラスキャナ101に読み取り可能となっている。また、書画台204内にはターンテーブル209が設けられている。ターンテーブル209はコントローラ部201からの指示によって回転することが可能であり、ターンテーブル209上に置かれた物体(オブジェクト)とカメラ部202との角度を変えることができる。ここで、オブジェクトとには、平面オブジェクト(2次元オブジェクト)と立体オブジェクト(3次元オブジェクト)が含まれる。
カメラ部202は単一解像度で画像を撮像するものとしてもよいが、高解像度画像撮像と低解像度画像撮像が可能なものとすることが好ましい。
なお、図2に示されていないが、カメラスキャナ101は、LCDタッチパネル330およびスピーカ340をさらに含むこともできる。
FIG. 2A also shows a document table 204 on which the
In the example of FIG. 2, the
The
Although not shown in FIG. 2, the
図2の(b)は、カメラスキャナ101における座標系について表している。
カメラスキャナ101において取得される撮影データは、距離画像センサ部208により得られる距離画像センサ座標系における3次元データと、カメラ部202と短焦点プロジェクタ部207によって得られるカメラ座標系における3次元データである。ここで、距離画像センサ座標系およびカメラ座標系では、距離画像センサ部208のRGBカメラ部503およびカメラ部202が撮像する画像平面をXY平面とし、画像平面に直交した方向をZ方向として定義するものである。
すなわち、これらの3次元データは独立した座標系で得られるものであるため、両者を統一的に扱えるようにする必要がある。そこで、書画台204を含む平面をXY平面とし、このXY平面から上方に垂直な向きをZ軸とする直交座標系を定義する。
そして、距離画像センサ座標系およびカメラ座標系で得られたそれぞれの3次元データを、所定の演算処理、具体的には直交座標系における3次元データに変換する。例えば、距離画像センサ座標系中の3次元点は下記(1)式によって直交座標系における3次元座標へと変換する。
数式1
FIG. 2B shows a coordinate system in the
Shooting data acquired by the
That is, since these three-dimensional data are obtained by independent coordinate systems, it is necessary to be able to handle both in a unified manner. Therefore, an orthogonal coordinate system is defined in which a plane including the document table 204 is an XY plane, and a direction perpendicular to the XY plane is a Z axis.
Then, the respective three-dimensional data obtained in the distance image sensor coordinate system and the camera coordinate system are converted into predetermined arithmetic processing, specifically, three-dimensional data in an orthogonal coordinate system. For example, a three-dimensional point in the distance image sensor coordinate system is converted into a three-dimensional coordinate in the orthogonal coordinate system by the following equation (1).
Formula 1
ここで、[Xs,Ys,Zs,1]は距離画像センサ座標系における3次元座標、[X,Y,Z]は座標変換後の直交座標系における3次元座標を表す。また、[Rs|ts]は距離画像センサ座標系から直交座標系への変換行列(回転行列Rsと並進ベクトルts)である。
なお、直交座標系に対する距離画像センサ座標系およびカメラ座標系の相対位置(直交座標系へ変換するための回転行列および並進ベクトル)は、公知のキャリブレーション手法によりあらかじめキャリブレーションされているものとする。以後、特に断りがなく3次元点群と表記された場合は、直交座標系における3次元データを表しているものとする。
Here, [Xs, Ys, Zs, 1] represents three-dimensional coordinates in the distance image sensor coordinate system, and [X, Y, Z] represents three-dimensional coordinates in the orthogonal coordinate system after coordinate conversion. [Rs | ts] is a transformation matrix (rotation matrix Rs and translation vector ts) from the distance image sensor coordinate system to the orthogonal coordinate system.
Note that the relative positions of the distance image sensor coordinate system and the camera coordinate system (rotation matrix and translation vector for conversion to the orthogonal coordinate system) 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.
<カメラスキャナのコントローラのハードウェア構成>
図3は、図2に示したコントローラ部201のハードウェア構成例を示すブロック図である。
<Hardware configuration of camera scanner controller>
FIG. 3 is a block diagram illustrating a hardware configuration example of the
図3に示すように、コントローラ部201は、システムバス301に接続されたCPU302、RAM303、ROM304、HDD305、ネットワークI/F306、画像処理プロセッサ307、カメラI/F308、ディスプレイコントローラ309、シリアルI/F310、オーディオコントローラ311およびUSBコントローラ312を含む。
As shown 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上にはさらに、制御用プログラムによる動作に必要な各種設定や、また、カメラ入力によって生成した画像データを格納することができ、CPU302によって読み書きされる。CPU302はネットワークI/F306を介してネットワーク104上の他の機器との通信を行う。
The
Further, the
画像処理プロセッサ307はRAM303に格納された画像データを読み出して処理し、またRAM303へ書き戻す。なお、画像処理プロセッサ307が実行する画像処理は、回転、変倍、色変換等である。
The
カメラI/F308は、カメラ部202および距離画像センサ部208と接続され、CPU302からの指示に応じてカメラ部202で撮影された画像データを、距離画像センサ部208で撮影された距離画像データを取得してRAM303へ書き込む。また、CPU302からの制御コマンドをカメラ部202および距離画像センサ部208へ送信し、カメラ部202および距離画像センサ部208の設定を行う。
The camera I /
また、コントローラ部201は、ディスプレイコントローラ309、シリアルI/F310、オーディオコントローラ311およびUSBコントローラ312のうち少なくとも1つをさらに含むことができる。
The
ディスプレイコントローラ309は、CPU302の指示に応じてディスプレイへの画像データの表示を制御する。ここでは、ディスプレイコントローラ309は短焦点プロジェクタ部207およびLCDタッチパネル330に接続されている。
A display controller 309 controls display of image data on the display in accordance with an instruction from the
シリアルI/F310はシリアル信号の入出力を行う。ここでは、シリアルI/F310はターンテーブル209に接続され、CPU302の回転開始・終了および回転角度の指示をターンテーブル209へ送信する。また、シリアルI/F310は、LCDタッチパネル330に接続され、CPU302はLCDタッチパネル330が押下されたときに、シリアルI/F310を介して押下された座標を取得する。
オーディオコントローラ311は、スピーカ340に接続され、CPU302の指示に応じて音声データをアナログ音声信号に変換し、スピーカ340を通じて音声を出力する。
The serial I / F 310 inputs and outputs serial signals. Here, the serial I / F 310 is connected to the
The
USBコントローラ312は、CPU302の指示に応じて外付けのUSBデバイスの制御を行う。ここでは、USBコントローラ312はUSBメモリやSDカードなどの外部メモリ350に接続され、外部メモリ350へのデータの読み書きを行う。なお、距離画像センサ部208の詳細構成については、後述する。
<カメラスキャナの制御用プログラムの機能構成>
図4は、図3に示したCPU302が実行するカメラスキャナ101の制御用プログラムの機能構成401を示す図である。
なお、カメラスキャナ101の制御用プログラムは、前述のようにHDD305に格納され、CPU302が起動時にRAM303上に展開して実行する。
メイン制御部402は制御の中心であり、機能構成401内の他の各部を制御する。
The
<Functional structure of camera scanner control program>
FIG. 4 is a diagram showing a
Note that the control program for the
The
カメラ画像取得部407、距離画像取得部408は、画像入力処理を行うモジュールである。カメラ画像取得部407は、カメラI/F308を介してカメラ部202が撮影した画像データを取得し、RAM303へ格納する。距離画像取得部408は、カメラI/F308を介して距離センサ部208が出力する距離画像データを取得し、RAM303へ格納する。距離画像取得部408の処理の詳細は後に説明する。
The camera
ジェスチャー認識部409、物体検知部410はカメラ画像取得部407、距離画像取得部408が取得する画像データを解析して書画台204上の物体の動きを検知して認識するモジュールである。ジェスチャー認識部409、物体検知部410の処理の詳細は後述する。ここで、物体の動きには、投影されるユーザインタフェースを操作するユーザの手による指示動作が含まれる(詳細は後述する)
A
平面原稿画像撮影部411、書籍画像撮影部412、立体形状測定部413は実際に対象物のスキャンを行うモジュールである。平面原稿画像撮影部411は平面原稿、書籍画像撮影部412は書籍、立体形状測定部413は立体物に、それぞれ適した演算処理を実行し、それぞれに応じた形式のデータを出力する。これらのモジュールの処理の詳細は後述する。
The planar document image photographing unit 411, the book
ユーザインタフェース部403は、物体配置表示部414と物体配置修正部415から構成される。物体配置表示部414は、メイン制御部402からの要求を受け、メッセージやボタン、ドキュメントや対象物の大きさや位置を示す枠等のGUI部品を生成する。
そして、ユーザインタフェース部403は、表示部406へ生成したGUI部品の表示を要求する。なお、物体配置修正部415はドキュメントの用紙サイズや対象物の表示大きさや位置の変更要望を受け取りデータ管理部405にデータを送り保存する。表示部406は、ディスプレイコントローラ309を介して、短焦点プロジェクタ部207もしくはLCDタッチパネル330へ要求されたGUI部品の表示を行う。
プロジェクタ部207は書画台204に向けて設置されているため、書画台204上にGUI部品を投射することが可能となっている。また、ユーザインタフェース部403は、ジェスチャー認識部409が認識したタッチ等のジェスチャー操作、あるいはシリアルI/F310を介したLCDタッチパネル330からの入力操作、そしてさらにそれらの座標を受信する。そして、ユーザインタフェース部403は描画中の操作画面の内容と操作座標を対応させて操作内容(押下されたボタン等)を判定する。この操作内容をメイン制御部402へ通知することにより、操作者の操作を受け付ける。
ネットワーク通信部404は、ネットワークI/F306を介して、ネットワーク104上の他の機器とTCP/IPによる通信を行う。
The
Then, the
Since the
The
データ管理部405は、機能構成401に含まれるプログラムの実行において生成した作業データ、例えば平面原稿画像撮影部411、書籍画像撮影部412、立体形状測定部413が生成したスキャンデータのような様々なデータや物体配置修正部415が生成したドキュメントや対象物の大きさや位置情報などをHDD305上の所定の領域へ保存し、管理する。また、対象物のデータをPDFのように一つのドキュメントにまとめて保存する。
<距離画像センサおよび距離画像取得部の説明>
The
<Description of Distance Image Sensor and Distance Image Acquisition Unit>
図3に本実施形態の距離画像生成手段に対応する距離画像センサ部208の構成を示している。距離画像センサ部208は赤外線によるパターン投射方式の距離画像センサである。赤外線パターン投射部361は対象物に、人の目には不可視である赤外線によって3次元測定パターンを照射する。赤外線カメラ362は対象物に投射した3次元測定パターン(赤外線画像)を撮影するカメラである。RGBカメラ363は人の目に見える可視光をRGB信号で撮影するカメラである。
FIG. 3 shows the configuration of the distance
図5は、図4に示した距離画像取得部408の処理を説明する図である。特に、図5の(a)は図4に示した距離画像取得部408のデータ処理手順に対応するフローチャートである。以下、図5の(b)〜(d)はパターン投射方式による距離画像の計測原理を説明する。また、図5の(a)に示すフローチャートの各ステップは、CPU302が制御プログラム(図4に示すモジュール)を実行することで実現される。以下、図4に示したモジュールを主体として説明する。
距離画像取得部408が処理を開始すると、S501では図5の(b)に示すように赤外線パターン投射部361を用いて赤外線による3次元測定パターン522を対象物521に投射する。S502では赤外線カメラ362を用いてS501で投射した3次元測定パターン522を撮影し、赤外線カメラ画像524を取得する。
FIG. 5 is a diagram illustrating the processing of the distance
When the distance
S503では、図5の(c)に示すように、3次元測定パターン522と赤外線カメラ画像524間での対応点を抽出する。例えば、赤外線カメラ画像524上の1点を3次元測定パターン522上から探索し、同一の点が検出された場合に対応付けを行う。あるいは、赤外線カメラ画像524の画素の周辺のパターンを3次元測定パターン522上から探索し、一番類似度が高い部分と対応付けてもよい。
In step S503, as shown in FIG. 5C, corresponding points between the three-
S504では、赤外線パターン投射部361と赤外線カメラ362を結ぶ直線を基線523として三角測量の原理を用いて計算を行うことにより、赤外線カメラ362からの距離を算出する。
S503で対応付けが出来た画素については、赤外線カメラ362からの距離を算出して画素値として保存し、対応付けが出来なかった画素については、距離の計測が出来なかった部分として無効値を保存する。これを赤外線カメラ画像の全画素に対して行うことで、各画素に距離値が入った距離画像を生成する。
In S504, the distance from the
For pixels that can be correlated in S503, the distance from the
S505では、RGBカメラ363を用いて対象物のRGB画像525を撮影する。赤外線カメラ362とRGBカメラ363とでは設置位置が異なるため、図5の(d)に示すようにそれぞれで撮影される2つの赤外線カメラ画像524および赤外線カメラ画像525の位置合わせを行う必要がある。
そこで、S506では、赤外線カメラ362の座標系からRGBカメラ363の座標系への座標系変換を用いて赤外線カメラ画像524を変換し、距離画像をRGBカメラ画像525の座標系に合わせる。
In step S <b> 505, the
Therefore, in S506, the
なお、赤外線カメラ362とRGBカメラ363の相対位置や、それぞれの内部パラメータは事前のキャリブレーション処理により既知であるとする。S507では、S506で座標変換を行った距離画像の各画素にRGBカメラ画像525のRGB値を保存することにより、1画素につきR、G、B、距離の4つの値を持つ距離画像を生成し、距離画像取得部408の処理を終了する。
It is assumed that the relative positions of the
以上のように、ここで取得した距離画像は距離画像センサ部208のRGBカメラ363で定義された距離画像センサ座標系が基準となっている。そこで、図2(b)を用いて上述したように、距離画像センサ座標系として得られた距離データを直交座標系における点群の集合に変換する。(以後、この点の集合を3次元点群と呼ぶ)
As described above, the distance image acquired here is based on the distance image sensor coordinate system defined by the
なお、本実施形態では上述したように、距離画像センサ部208として赤外線パターン投射方式を採用しているが、他の方式の距離画像センサを用いることも可能である。例えば、2つのRGBカメラでステレオ立体視を行うステレオ方式や、レーザー光の飛行時間を検出することで距離を測定するTOF(Time of Flight)方式を用いても良い。
In the present embodiment, as described above, an infrared pattern projection method is employed as the distance
<ジェスチャー認識部の説明>
図6は、図4に示したジェスチャー認識部409のデータ処理の詳細を説明するフローチャートである。なお、各ステップは、CPU302が対応する制御プログラム(図4に示すモジュール)を実行することで実現される。
図6の(a)において、ジェスチャー認識部409が処理を開始すると、S601では初期化処理を行う。続いて、S602では、書画台204上に存在する物体の3次元点群を取得する。S603では取得した3次元点群からユーザの手の形状および指先の検出処理を行う。S604では検出した手の形状および指先からジェスチャーの判定を行う。S605では判定したジェスチャーをユーザインタフェース部403へ通知し、S602へ戻ってジェスチャー認識処理を繰り返す。
<Description of gesture recognition unit>
FIG. 6 is a flowchart illustrating details of data processing of the
In FIG. 6A, when the
続いて、S601〜S604のデータ処理の詳細について説明する。
図6の(b)は、図6の(a)に示したS601のジェスチャー認識部初期化処理のフローチャートである。なお、各ステップは、CPU302が対応する制御プログラム(図4に示すモジュール)を実行することで実現される。
S611では、ジェスチャー認識部409は距離画像取得部408から距離画像を1フレーム取得する。ここで、ジェスチャー認識部の開始時は書画台204上に対象物が置かれていない状態であるため、初期状態として書画台204の平面の認識を行う。つまり、S612において、S611で取得した距離画像から最も広い平面を抽出し、その位置と法線ベクトル(以降、書画台204の平面パラメータと呼ぶ)を算出する。
Next, details of the data processing in S601 to S604 will be described.
FIG. 6B is a flowchart of the gesture recognition unit initialization process in S601 shown in FIG. Each step is realized by the
In step S <b> 611, the
図6の(c)は、図6の(a)に示したS602の3次元点群取得処理のフローチャートである。
S621では距離画像取得部408から距離画像を1フレーム取得し、所定の演算処理により3次元点群に変換する。S622では書画台204の平面パラメータを用いて、取得した3次元点群から書画台204を含む平面にある点群を除去する。このようにして書画台204の上に存在する物体の3次元点群を取得し、S602の3次元点群取得処理を終了する。
FIG. 6C is a flowchart of the three-dimensional point group acquisition process of S602 shown in FIG.
In S621, one frame of the distance image is acquired from the distance
図6の(d)は、図6の(a)に示したS603の手形状および指先検出処理のフローチャートである。なお、各ステップは、CPU302が対応する制御プログラム(図4に示すモジュール)を実行することで実現される。また、図7は、図6の(d)での指先検出処理の方法を模式的に表した図である。
S631では、S602で取得した3次元点群から、書画台204を含む平面から所定の高さ以上にある、肌色の3次元点群を抽出することで、手の3次元点群を得る。
図7の(a)の701は、抽出した手の3次元点群を表している。S632では、抽出した手の3次元点群を、書画台204の平面に射影した2次元画像を生成して、その手の外形を検出する。
図7の(a)の702は、書画台204の平面に投影した3次元点群を表している。投影は、点群の各座標を、書画台204の平面パラメータを用いて投影すればよい。
また、図7の(b)に示すように、投影した3次元点群から、xy座標の値だけを取り出せば、z軸方向から見た2次元画像703として扱うことができる。この時、手の3次元点群の各点が、書画台204の平面に投影した2次元画像の各座標のどれに対応するかを、記憶しておくものとする。S633では検出した手の外形上の各点について、その点での外形の曲率を算出し、算出した曲率が所定値より小さい点を指先として検出する。
図7の(c)は、外形の曲率から指先を検出する方法を模式的に表したものである。704は、書画台204の平面に投影された2次元画像703の外形を表す点の一部を表している。
ここで、704のような、外形を表す点のうち、隣り合う5個の点を含むように円を描くことを考える。円705、707が、その例である。この円を、全ての外形の点に対して順に描き、その直径(例えば706、708)が所定の値より小さい(曲率が小さい)ことを以て、指先とする。
この例では隣り合う5個の点としたが、その数は限定されるものではない。また、ここでは曲率を用いたが、外形に対して楕円フィッティングを行うことで、指先を検出してもよい。
S634では、検出した指先の個数および各指先の座標を算出して、手形状および指先の検出処理を終了する。この時、前述したように、書画台204に投影した2次元画像の各点と、手の3次元点群の各点の対応関係を記憶しているため、各指先の3次元座標を得ることができる。
今回は、3次元点群から2次元画像に投影した画像から指先を検出する方法を説明したが、指先検出の対象とする画像は、これに限定されるものではない。例えば、距離画像の背景差分や、RGB画像の肌色領域から手の領域を抽出し、上に述べたのと同様の方法(外形の曲率計算等)で、手領域のうちの指先を検出してもよい。この場合、検出した指先の座標はRGB画像や距離画像といった、2次元画像上の座標であるため、その座標における距離画像の距離情報を用いて、直交座標系の3次元座標に変換する必要がある。この時、指先点となる外形上の点ではなく、指先を検出するときに用いた、曲率円の中心を指先点としてもよい。
FIG. 6D is a flowchart of the hand shape and fingertip detection process in S603 shown in FIG. Each step is realized by the
In S631, a three-dimensional point cloud of the hand is obtained by extracting a three-dimensional point cloud of skin color that is higher than a predetermined height from the plane including the document table 204 from the three-dimensional point cloud acquired in S602.
Further, as shown in FIG. 7B, if only the value of the xy coordinate is extracted from the projected three-dimensional point group, it can be handled as a two-
FIG. 7C schematically shows a method of detecting the fingertip from the curvature of the outer shape.
Here, it is considered to draw a circle so as to include five adjacent points among the points representing the outer shape such as 704.
In this example, five points are adjacent to each other, but the number is not limited. In addition, the curvature is used here, but the fingertip may be detected by performing elliptic fitting on the outer shape.
In step S634, the number of detected fingertips and the coordinates of each fingertip are calculated, and the hand shape and fingertip detection process ends. At this time, as described above, since the correspondence between each point of the two-dimensional image projected on the document table 204 and each point of the three-dimensional point group of the hand is stored, the three-dimensional coordinates of each fingertip can be obtained. Can do.
This time, a method of detecting a fingertip from an image projected from a three-dimensional point group onto a two-dimensional image has been described, but the image to be detected by the fingertip is not limited to this. For example, the hand region is extracted from the background difference of the distance image or the skin color region of the RGB image, and the fingertip in the hand region is detected by the same method (external curvature calculation, etc.) as described above. Also good. In this case, since the coordinates of the detected fingertip are coordinates on a two-dimensional image such as an RGB image or a distance image, it is necessary to convert the coordinate information into the three-dimensional coordinates of the orthogonal coordinate system using the distance information of the distance image at that coordinate. is there. At this time, the center of the curvature circle used when detecting the fingertip may be used as the fingertip point instead of the point on the outer shape that becomes the fingertip point.
図6の(e)は、図6の(a)に示したS604のジェスチャー判定処理のフローチャートである。なお、各ステップは、CPU302が対応する制御プログラム(図4に示すモジュール)を実行することで実現される。
S641では、S603で検出した指先が1つかどうか判定する。指先が1つでなければS646へ進み、ジェスチャー無しと判定してジェスチャー判定処理を終了する。S641において検出した指先が1つであればS642へ進み、検出した指先と書画台204を含む平面との距離を算出する。S643ではS642で算出した距離が微小な所定値以下であるかどうかを判定し、S643がYESであればS644へ進んで指先が書画台204へタッチした、タッチジェスチャーありと判定する。
S643においてS642で算出した距離が所定値以下で無ければS645へ進み、指先が移動したジェスチャー(タッチはしていないが指先が書画台204上に存在するジェスチャー)と判定し、ジェスチャー判定処理を行う。上述したように、ここで判定したジェスチャーおよびその座標はS605でメイン制御部402へ通知する。
FIG. 6E is a flowchart of the gesture determination process in S604 illustrated in FIG. Each step is realized by the
In S641, it is determined whether there is one fingertip detected in S603. If the number of fingertips is not one, the process proceeds to S646, determines that there is no gesture, and ends the gesture determination process. If there is one fingertip detected in S641, the process proceeds to S642, and the distance between the detected fingertip and the plane including the document table 204 is calculated. In S643, it is determined whether or not the distance calculated in S642 is equal to or smaller than a minute predetermined value. If S643 is YES, the process proceeds to S644 and it is determined that there is a touch gesture in which the fingertip touches the document table 204.
In S643, if the distance calculated in S642 is not equal to or smaller than the predetermined value, the process proceeds to S645, where it is determined that the fingertip has moved (the gesture is not touched but the fingertip is on the document table 204), and gesture determination processing is performed. . As described above, the gesture determined here and the coordinates thereof are notified to the
<物体検知部の処理>
図8は、図4に示した物体検知部410のデータ処理を説明するフローチャートである。なお、各ステップは、CPU302が対応する制御プログラム(図4に示すモジュール)を実行することで実現される。
図8の(a)は、物体検知部410の処理の概要を示したフローチャートである。物体検知部410が処理を開始すると、S801では物体検知部初期化処理を行う。S802では物体が書画台204上に置かれたことの検知(物体載置検知処理)を行う。S803ではS902で検知した書画台204上の物体が除去されることの検知(物体除去検知処理)を行う。続いて、S801、S802、S803の処理の詳細を説明する。
<Processing of object detection unit>
FIG. 8 is a flowchart for explaining data processing of the
FIG. 8A is a flowchart showing an outline of processing of the
図8の(b)はS801の物体検知部初期化処理の詳細手順を示すフローチャートである。なお、各ステップは、CPU302が対応する制御プログラム(図4に示すモジュール)を実行することで実現される。物体検知部初期化処理を開始すると、S811ではカメラ画像取得部407からカメラ部202が撮影したカメラ画像を1フレーム取得する。S812では取得したカメラ画像を書画台背景カメラ画像として保存しておく(以降、「書画台背景カメラ画像」と記載した場合はここで取得したカメラ画像のことを指す)。S813では、同じカメラ画像を前フレームカメラ画像として保存しておく。S814では距離画像取得部408から距離画像を1フレーム取得する。S815では取得した距離画像を書画台背景距離画像とし保存しておき、物体検知部初期化処理を終了する(以降、「書画台背景距離画像」と記載した場合はここで取得した距離画像のことを指す)。
FIG. 8B is a flowchart showing a detailed procedure of the object detection unit initialization process in S801. Each step is realized by the
図8の(c)は、図8の(a)に示したS802の物体載置検知処理の詳細手順を示すフローチャートである。なお、各ステップは、CPU302が対応する制御プログラム(図4に示すモジュール)を実行することで実現される。
物体載置検知処理を開始すると、S821ではカメラ画像取得部407からカメラ画像を1フレーム取得する。S822では取得したカメラ画像と前フレームカメラ画像との差分を計算してその絶対値を合計した差分値を算出する。S823では算出した差分値があらかじめ決めておいた所定値以上かどうかを判定する。算出した差分値が所定値未満であれば書画台204上には物体が無いと判断し、S828へ進んで今のカメラ画像を前フレームカメラ画像として保存してからS821へ戻って処理を続ける。
S823において差分値が所定値以上であればS824へ進み、S821で取得したカメラ画像と前フレームカメラ画像との差分値を、S822と同様に算出する。S825では算出した差分値があらかじめ決めておいた所定値以下であるかどうかを判定する。S825において算出した差分値が所定値よりも大きければ書画台204上の物体が動いていると判断し、S828へ進んで今のカメラ画像を前フレームカメラ画像として保存してから、S821へ戻り処理を続ける。S825において算出した差分値が所定値以下であればS826へ進む。
S826では、S825が連続してYESとなった回数から、差分値が所定値以下、つまり書画台204上の物体が静止した状態があらかじめ決めておいたフレーム数続いたかどうかを判定する。S826において書画台204上の物体が静止した状態があらかじめ決めておいたフレーム数続いていないと判定したら、S828へ進んで今のカメラ画像を前フレームカメラ画像として保存し、S821へ戻って処理を続ける。
S826において書画台204上の物体が静止した状態があらかじめ決めておいたフレーム数続いたと判定したら、S827へ進んで物体が置かれたことをメイン制御部402へ通知し、物体載置検知処理を終了する。
FIG. 8C is a flowchart showing a detailed procedure of the object placement detection process in S802 shown in FIG. Each step is realized by the
When the object placement detection process is started, one frame of camera image is acquired from the camera
If the difference value is equal to or larger than the predetermined value in S823, the process proceeds to S824, and the difference value between the camera image acquired in S821 and the previous frame camera image is calculated in the same manner as in S822. In S825, it is determined whether or not the calculated difference value is equal to or less than a predetermined value. If the difference value calculated in S825 is larger than the predetermined value, it is determined that the object on the document table 204 is moving, the process proceeds to S828, the current camera image is stored as the previous frame camera image, and the process returns to S821. Continue. If the difference value calculated in S825 is less than or equal to the predetermined value, the process proceeds to S826.
In S826, it is determined from the number of times that S825 becomes YES continuously, whether or not the difference value is equal to or smaller than a predetermined value, that is, whether or not the object on the document table 204 has continued for a predetermined number of frames. If it is determined in S826 that the object on the document table 204 is not still in a predetermined number of frames, the process proceeds to S828, where the current camera image is stored as the previous frame camera image, and the process returns to S821 for processing. to continue.
If it is determined in S826 that the object on the document table 204 is stationary for a predetermined number of frames, the process proceeds to S827 to notify the
図8の(d)は、図8の(a)に示したS803の物体除去検知処理の詳細フローチャートである。なお、各ステップは、CPU302が対応する制御プログラム(図4に示すモジュール)を実行することで実現される。
物体除去検知処理を開始するとS831ではカメラ画像取得部407からカメラ画像を1フレーム取得する。S832では取得したカメラ画像と書画台背景カメラ画像との差分値を算出する。S833では算出した差分値が予め決めておいた所定値以下かどうかを判定する。S833において算出した差分値が予め決めておいた所定値よりも大きければ書画台204上にまだ物体が存在するため、S831へ戻って処理を続ける。S833において算出した差分値が予め決めておいた所定値以下であれば書画台204上の物体が無くなったため、物体除去をメイン制御部402へ通知し、物体除去検知処理を終了する。
FIG. 8D is a detailed flowchart of the object removal detection process of S803 shown in FIG. Each step is realized by the
When the object removal detection process is started, one frame of camera image is acquired from the camera
<平面原稿画像撮影部の説明>
図9は、図4に示した平面原稿画像撮影部411が実行する処理を説明するフローチャートである。なお、各ステップは、CPU302が対応する制御プログラム(図4に示すモジュール)を実行することで実現される。図10は、図4に示した平面原稿画像撮影部411の処理を説明するための模式図である。
平面原稿画像撮影部411は処理を開始すると、S801ではカメラ画像取得部407を介してカメラ部202からの画像を1フレーム取得する。ここで、カメラ部202の座標系は図2の(b)で示したように書画台204に正対していないため、このときの撮影画像は、図10の(a)に示すように対象物1001、書画台204ともに歪んでいる。
S902では、書画台背景カメラ画像とS901で取得したカメラ画像との画素毎の差分を算出し、差分画像を生成した上で、差分のある画素が黒、差分の無い画素が白となるように二値化する。したがって、ここで生成した差分画像は、図10の(b)の差分領域1002のように、対象物1001の領域が黒色である(差分がある)画像となる。S903では差分領域1002を用いて、図10の(c)のように対象物1001のみの画像を抽出する。
S904では、抽出した原稿領域画像に対して階調補正を行う。S905では、抽出した原稿領域画像に対してカメラ座標系から書画台204への射影変換を行い、図10の(d)のように書画台204の真上から見た画像1003に変換する。ここで用いる射影変換パラメータは、ジェスチャー認識部409の処理において、前述した図6の(b)のS612で算出した平面パラメータとカメラ座標系から求めることができる。なお、図10の(d)に示したように、書画台204上への原稿の置き方により、ここで得られる画像1003は傾いていることがある。
そこで、S906では、画像1003を矩形近似してからその矩形が水平になるように回転し、図10の(e)で示した画像1004のように傾きの無い画像を得る。S907では抽出した画像1004に対して、あらかじめ決めておいた画像フォーマット(例えばJPEG、TIFF、PDF等)に合わせて圧縮およびファイルフォーマット変換を行う。
S908では生成した画像データを、データ管理部405を介してHDD305の所定の領域へファイルとして保存し、平面原稿画像撮影部411の処理を終了する。
<Description of Flat Document Image Shooting Unit>
FIG. 9 is a flowchart illustrating processing executed by the flat document image photographing unit 411 shown in FIG. Each step is realized by the
When the flat document image photographing unit 411 starts the processing, in S801, one frame of the image from the
In step S902, a pixel-by-pixel difference between the document table background camera image and the camera image acquired in step S901 is calculated, and a difference image is generated so that pixels having a difference are black and pixels having no difference are white. Binarize. Therefore, the difference image generated here is an image in which the region of the
In step S904, gradation correction is performed on the extracted document area image. In S905, the extracted document area image is subjected to projective transformation from the camera coordinate system to the document table 204, and converted to an
Therefore, in S906, the
In step S908, the generated image data is stored as a file in a predetermined area of the
<書籍画像撮影部の処理>
図11は、図4に示した書籍画像撮影部412が実行するデータ処理を説明するフローチャートである。なお、各ステップは、CPU302が対応する制御プログラム(図4に示すモジュール)を実行することで実現される。図12は、図4に示した書籍画像撮影部412の処理を説明するための模式図である。
書籍画像撮影部412は処理を開始すると、S1101ではカメラ画像取得部407を用いてカメラ部202からカメラ画像を、距離画像取得部408を用いて、距離画像センサ部208から距離画像を、それぞれ1フレームずつ取得する。ここで得られるカメラ画像の例を図12の(a)に示す。
図12の(a)では、書画台204と撮影対象書籍1211を含むカメラ画像1201が得られている。図12の(b)はここで得られた距離画像の例である。図12の(b)では、距離画像センサ部208に近い方が濃い色であらわされており、距離画像センサ部208から対象物体1212上の各画素への距離が含まれる距離画像1202が得られている。
また、図12の(b)において、距離画像センサ部208からの距離が書画台204よりも遠い画素については白であらわされており、対象物体1212の書画台204に接している部分(対象物体1212では右側のページ)も同じく白色となる。
S1102では取得したカメラ画像と距離画像から書画台204上に載置された書籍物体の3次元点群を算出する演算処理を行う。S1103では取得したカメラ画像とS1102で算出した3次元点群から、書籍画像のゆがみ補正処理を行い、2次元の書籍画像を生成する。続いて、S1102およびS1103の処理について説明する。
<Processing of book image photographing unit>
FIG. 11 is a flowchart for explaining data processing executed by the book
When the book
In FIG. 12A, a
In FIG. 12B, pixels farther from the distance
In S1102, a calculation process for calculating a three-dimensional point group of the book object placed on the document table 204 from the acquired camera image and distance image is performed. In S1103, the book image is subjected to distortion correction processing from the acquired camera image and the three-dimensional point group calculated in S1102, and a two-dimensional book image is generated. Subsequently, the processing of S1102 and S1103 will be described.
図11の(b)は、図11の(a)に示したS1102の書籍物体3次元点群算出処理を説明するフローチャートである。なお、各ステップは、CPU302が対応する制御プログラム(図4に示すモジュール)を実行することで実現される。
書籍物体に対する3次元点群算出処理を開始すると、S1111では距離画像1202と書画台背景カメラ画像との画素毎の差分を算出して二値化を行い、図12の(c)のように物体領域1213が黒で示されるカメラ差分画像1203を生成する。
S1112ではカメラ差分画像1203を、カメラ座標系から距離画像センサ座標系へ変換する演算処理を行い、図12の(d)のように距離画像センサ部208からみた物体領域1214を含むカメラ差分画像1204を生成する。S1113では距離画像と書画台背景距離画像との画素毎の差分を算出して二値化を行い、図12の(e)のように物体領域1215が黒で示される距離差分画像1205を生成する。ここで、対象物体である撮影対象書籍1211の書画台204と同じ色で有る部分については、画素値の差が小さくなるためカメラ差分画像1204中の物体領域1213に含まれなくなる場合がある。
また、対象物体1212の書画台204と高さが変わらない部分については距離センサ部208からの距離値が書画台204と差が小さいため、距離差分画像1205中の物体領域1215には含まれない場合がある。
そこで、S1114ではカメラ差分画像1204と距離差分画像1205の和をとって図12の(f)に示す物体領域画像1206を生成し、物体領域1216を得る。ここで物体領域1216は書画台204と比べて色が異なるかまたは高さが異なる領域となり、カメラ差分画像1203中の物体領域1213か距離差分画像1205中の物体領域1215のいずれか片方のみを使った場合よりも、より正確に物体領域を表している。
物体領域画像1206は距離画像センサ座標系であるため、S1115では距離画像1202から物体領域画像1206中の物体領域1216のみを抽出することが可能である。S1116では、S1115で抽出した距離画像を直交座標系に変換する演算処理を行うことにより図12(g)に示した3次元点群1217を生成する。この3次元点群1217が書籍物体の3次元点群であり、書籍物体3次元点群算出処理を終了する。
FIG. 11B is a flowchart for explaining the book object three-dimensional point group calculation process of S1102 shown in FIG. Each step is realized by the
When the three-dimensional point group calculation process for the book object is started, in S1111, the pixel-wise difference between the
In S1112, a calculation process for converting the
Further, the portion of the
Therefore, in S1114, the sum of the
Since the
図11の(c)は、図11の(a)に示したS1103の書籍画像ゆがみ補正処理を説明するフローチャートである。なお、各ステップは、CPU302が対応する制御プログラム(図4に示すモジュール)を実行することで実現される。
書籍画像ゆがみ補正処理を開始すると、S1121では物体領域画像1206を距離センサ画像座標系からカメラ座標系に変換する。S1122ではカメラ画像1201から物体領域画像1206中の物体領域1216をカメラ座標系に変換したものを用いて物体領域を抽出する。
S1123では抽出した物体領域画像を書画台平面へ射影変換する。S1124では射影変換した物体領域画像を矩形近似し、その矩形が水平になるように回転することによって、図12の(h)の書籍画像1208を生成する。書籍画像1208は近似矩形の片方の編がX軸に平行となっているため、以降書籍画像1208に対してX軸方向へのゆがみ補正処理を行う。
S1125では書籍画像1208の最も左端の点をPとする(図12の(h)の点P)。S1126では書籍物体の3次元点群1217から点Pの高さ(図12の(h)のh1)を取得する。S1127では書籍画像1208の点Pに対してX軸方向に所定の距離(図12の(h)のx1)離れた点をQとする(図12の(h)の点Q)。S1128では3次元点群1217から点Qの高さ(図12(h)のh2)を取得する。S1219では点Pと点Qの書籍物体上での距離(図12(h)のl1)を直線近似で算出する。
数式2
FIG. 11C is a flowchart for explaining the book image distortion correction processing in S1103 shown in FIG. Each step is realized by the
When the book image distortion correction process is started, in S1121, the
In step S1123, the extracted object region image is projectively converted to the document table plane. In S1124, the object region image obtained by projective transformation is approximated to a rectangle, and the
In S1125, the leftmost point of the
Formula 2
S1130では、算出した距離l1でPQ間の距離を補正し、図12の(h)における画像1219上の点P'と点Q'の位置に画素をコピーする。S1131では処理を行った点Qを点Pとし、S1128に戻って同じ処理を行うことによって図12の(h)の点Qと点Rの間の補正を実行することができ、画像1219上の点Q'と点R'の画素とする。この処理を全画素について繰り返すことにより、画像1219はゆがみ補正後の画像となる。S1132ではゆがみ補正処理を全ての点について終えたかどうかを判断し、終えていれば書籍物体のゆがみ補正処理を終了する。以上のようにして、S1102、S1103の処理を行ってゆがみ補正を行った書籍画像を生成することができる。
In S1130, the distance between the PQs is corrected by the calculated distance l1, and the pixels are copied to the positions of the points P ′ and Q ′ on the
ゆがみ補正を行った書籍画像の生成後、S1104では生成した書籍画像に階調補正を行う。S1105では生成した書籍画像に対して、あらかじめ決めておいた画像フォーマット(例えばJPEG、TIFF、PDF等)に合わせて圧縮およびファイルフォーマット変換を行う。S1106では生成した画像データを、データ管理部405を介してHDD305の所定の領域へファイルとして保存し、書籍画像撮影部412の処理を終了する。
After generating the book image subjected to the distortion correction, in S1104, gradation correction is performed on the generated book image. In S1105, compression and file format conversion are performed on the generated book image in accordance with a predetermined image format (for example, JPEG, TIFF, PDF, etc.). In step S1106, the generated image data is stored as a file in a predetermined area of the
<立体形状測定部の説明>
図13は、図4に示した立体形状測定部413が実行するデータ処理を説明するフローチャートである。なお、各ステップは、CPU302が対応する制御プログラム(図4に示すモジュール)を実行することで実現される。図14は、図4に示した立体形状測定部413の処理を説明するための模式図である。
立体形状測定部413が処理を開始すると、S1301では書画台204内に設けられたターンテーブル209上の対象物に対して、カメラ部202とプロジェクタ部207を用いた3次元点群測定処理を行う。
図13の(b)は、図13の(a)に示したS1301で実行する3次元点群測定処理のフローチャートである。なお、各ステップは、CPU302が対応する制御プログラム(図4に示すモジュール)を実行することで実現される。
3次元点群測定処理を開始すると、S1311では図14の(a)に示したターンテーブル209上の対象物1401に対して、プロジェクタ部207から3次元測定パターン1402を投射する。S1312では、カメラ画像取得部407を介してカメラ部202からカメラ画像を1フレーム取得する。S1313では、取得したカメラ画像とカメラ部202およびプロジェクタ部207の位置関係から、3次元測定パターン1402上の各点の距離を測定する。
ここでの測定方法は、距離画像取得部408の処理において、図5のS503で説明した測定方法と同じである。
S1314では距離画像取得部408の処理と同様に、カメラ画像の各画素の距離値を算出し、距離画像を生成する。S1315では距離画像の各画素について直交座標系へ座標変換する所定の演算処理(座標変換処理)を行い、3次元点群を算出する。S1316では算出した3次元点群から書画台204の平面パラメータを用いて書画台平面に含まれる3次元点群を除去する。
そして、S1317では残った3次元点群の中から位置が大きく外れている点をノイズとして除去し、対象物1401の3次元点群1403を生成する。S1318ではプロジェクタ部207から投射している3次元測定パターン1402を消灯する。S1319ではカメラ画像取得部407を介してカメラ部202からカメラ画像を取得し、その角度から見たときのテクスチャ画像として保存し、3次元点群測定処理を終了する。
<Description of the three-dimensional shape measurement unit>
FIG. 13 is a flowchart for explaining data processing executed by the three-dimensional
When the three-dimensional
FIG. 13B is a flowchart of the three-dimensional point group measurement process executed in S1301 shown in FIG. Each step is realized by the
When the three-dimensional point group measurement process is started, a three-
The measurement method here is the same as the measurement method described in S503 of FIG. 5 in the processing of the distance
In S1314, as in the process of the distance
In step S <b> 1317, a point whose position is greatly deviated from the remaining three-dimensional point group is removed as noise, and a three-
S1301の最初の3次元点群測定処理を行うと、S1302ではシリアルI/F310を介してターンテーブル209へ回転指示を行い、ターンテーブルを所定の角度、回転する。ここでの回転角度は小さければ小さいほど最終的な測定精度は高くなるが、その分測定回数が多くなり時間がかかるため、装置として適切な回転角度を予め決めておけば良い。S1303では、再び図13(b)の3次元点群測定処理を行う。
このとき、図14の(c)に示すようにターンテーブル209上の対象物1401と、プロジェクタ部207およびカメラ部202の角度が変わっている。そのため、図14(d)に示した3次元点群1404のように、S1301で得られた3次元点群1403とは異なる視点から見た3次元点群が得られる。ここで、3次元点群は、載置されたオブジェクトの立体形状を特性するデータである。
つまり、3次元点群1403ではカメラ部202およびプロジェクタ部207から死角領域となって一方のオブジェクトの3次元点群が算出できなかった部分の3次元点群が、3次元点群1404では含まれることになる(逆に、3次元点群1404には含まれない3次元点群が、3次元点群1403には含まれている)。
なお、死角領域撮影に際して、オブジェクトが撮影前の配置位置から他の配置位置へ移動されたかを判断して、カメラ部202に撮影させるように撮影制御を行う。
そこで、異なる視点から見た2つの3次元点群1403と1404を重ね合わせて合成する処理を行う。S1304ではS1303で測定した3次元点群1404を、ターンテーブルが初期位置から載置平面に対して回転した角度分逆回転移動させてカメラ部202により撮影させるように撮影制御することにより、3次元点群1403との位置を大まかに合わせた3次元点群1405を算出する。S1305では特徴点による3次元点群合成処理を行う。
図13の(c)は、図13の(a)に示したS1305の3次元点群合成処理の詳細を示すフローチャートである。なお、各ステップは、CPU302が対応する制御プログラム(図4に示すモジュール)を実行することで実現される。
3次元点群合成処理を開始すると、S1321では合成対象の2つの3次元点群1403と1405から、それぞれコーナーとなる点を抽出し、3次元特徴点とする。S1322では3次元点群1403の特徴点と3次元点群1405の特徴点の対応をとって、すべての対応点同士の距離を算出して加算し、3次元点群1405の位置を動かしながら対応点同士の距離の和が最小となる位置を算出する。S1323では算出した位置に3次元点群1405を移動してから3次元点群1403と重ね合わせることにより、2つの3次元点群1403と1405を合成する。S1324では、合成により点の密度が大きくなっている部分があるため、点の密度が均一になるようにダウンサンプリングを行う。このようにして合成後の3次元点群1406を生成し、3次元点群合成処理を終了する。
When the first three-dimensional point group measurement process of S1301 is performed, in S1302, a rotation instruction is given to the
At this time, as shown in FIG. 14C, the angles of the
In other words, the
It should be noted that in blind spot area photographing, it is determined whether the object has been moved from the arrangement position before photographing to another arrangement position, and photographing control is performed so as to cause the
Therefore, a process of superimposing and synthesizing two three-
FIG. 13C is a flowchart showing details of the three-dimensional point group synthesis processing in S1305 shown in FIG. Each step is realized by the
When the three-dimensional point group synthesizing process is started, in S1321, points that become corners are extracted from the two three-
S1305の3次元点群合成処理が終了するとS1306ではターンテーブル209が1周回転したかを判断する。S1306でまだターンテーブル209が1周回転していなければ、S1302へ戻ってターンテーブル209をさらに回転してからS1303を実行して別の角度の3次元点群を測定する。そしてS1304、S1305で既に生成した3次元点群1405と新たに測定した3次元点群との合成処理を行う。
このようにS1302からS1305の処理をターンテーブル209が1周するまで繰り返すことにより、対象物1401の3次元点群を生成することができる。
When the three-dimensional point cloud composition processing in S1305 is completed, it is determined in S1306 whether the
In this way, by repeating the processing from S1302 to S1305 until the
S1306でターンテーブル209が1周したと判断するとS1307へ進み、生成した3次元点群から3次元モデルを算出する処理を行う。
図13の(d)は、図13の(a)に示すS1307の3次元モデル算出処理の詳細手順を示すフローチャートである。なお、各ステップは、CPU302が対応する制御プログラム(図4に示すモジュール)を実行することで実現される。
3次元モデル算出処理を開始すると、S1331では3次元点群からノイズ除去および平滑化を行う。S1332では3次元点群の点を平面でつなぎ、メッシュ化を行う。S1333ではメッシュ化によって得られた平面へS1310で保存したテクスチャをテクスチャマッピングする。S1333ではテクスチャマッピング後のデータをVRMLやSTL等の標準的な3次元モデルデータフォーマットへ変換し、3次元モデル算出処理を終了する。
If it is determined in S1306 that the
FIG. 13D is a flowchart showing a detailed procedure of the three-dimensional model calculation process in S1307 shown in FIG. Each step is realized by the
When the three-dimensional model calculation process is started, noise removal and smoothing are performed from the three-dimensional point group in S1331. In S1332, the points of the three-dimensional point group are connected by a plane and meshed. In S1333, the texture saved in S1310 is texture-mapped to the plane obtained by meshing. In step S1333, the texture-mapped data is converted into a standard three-dimensional model data format such as VRML or STL, and the three-dimensional model calculation process is terminated.
S1307の3次元モデル算出処理を終了すると、S1308では算出した3次元モデルを、データ管理部405を介してHDD305上の所定の領域に格納し、立体形状測定部413のデータ処理を終了する。
When the three-dimensional model calculation process in S1307 ends, the calculated three-dimensional model is stored in a predetermined area on the
<メイン制御部の説明>
図15A〜図15Cは、図4に示したメイン制御部402が実行するスキャンアプリケーションの処理を説明するフローチャートである。特に、図15Aの(a)は、図4に示したメイン制御部402の処理を示すフローチャートである。なお、各ステップは、CPU302が対応する制御プログラム(図4に示すモジュール)を実行することで実現される。また、特に断らない場合、各ステップの制御主体は、メイン制御部402とする。
メイン制御部402が処理を開始すると、S1501で、格納方法と用紙サイズを選択させる。図15Bの(e)は格納方法/用紙サイズ選択処理を示すフローチャートである。
<Description of main control unit>
15A to 15C are flowcharts for explaining the scan application process executed by the
When the
S1541で図16Aの(d)に示した格納法選択開始画面を、ユーザインタフェース部403を介して書画台204に投射する。図16Aの(d)において、格納形式(格納方法)の選択を促すメッセージ1631、「1ページ1個」ボタン1632、「1ページ1ステージ」ボタン1633である。「1ページ1個」ボタン1632は、ドキュメントの新規1ページに1個ずつ対象物のデータを格納することを選択する。「1ページ1ステージ」ボタン1633は、書画台204のターンテーブル209上においた対象物すべてをドキュメントの新規1ページ内に格納することを選択する。ステージは、書画台と同一の意味である。ユーザがいずれかのボタンを押下することでS1542に進む。ここで「1ページ1個」とは、複数のオブジェクトをそれぞれ分離して各ページに分けて格納することをいう。
In S1541, the storage method selection start screen shown in FIG. 16A (d) is projected onto the
S1542では、「1ページ1個」ボタン1632が押下されたときはS1543に進み、「1ページ1ステージ」ボタン1633が押下されたときは、S1544に進む。S1543では、1ページ1個処理用の用紙サイズ選択画面である図16A(e)を投射する。
In S1542, when the “one page”
図16Aの(e)で、メッセージ1640は用紙サイズの選択を促すメッセージ、枠1634は選択された用紙サイズを示す枠である。ページ領域を特定するボタン1635〜1639は用紙サイズを選択するボタンである。
In FIG. 16A (e), a
同様にS1544では、1ページ1ステージ処理用の用紙サイズ選択画面である図16Bの(h)を投射する。図16Bの(h)で、メッセージ1640は用紙サイズの選択を促すメッセージ、枠1634は選択された用紙サイズを示す枠である。ボタン1636〜1639は用紙サイズを選択するボタンである。
次にS1545で選択された格納方法「1ページ1個」または「1ページ1ステージ(複数のオブジェクトをページ合成して格納する)」をRAM303に記憶する。
S1546では、ユーザによりボタン1635〜1638を押下されたときはS1551に進む。「その他」ボタン1639が押下されたときはS1547に進む。
Similarly, in S1544, (h) in FIG. 16B, which is a paper size selection screen for one page and one stage processing, is projected. In FIG. 16B (h), a
Next, the storage method “one page / one” or “one page / one stage (multiple objects are combined and stored)” selected in S 1545 is stored in the
In S1546, when the
S1547では、「その他」用の処理画面を投射する。図16Aの(f)で、ボタン1641〜1643は最初の画面の図16Aの(e)になかった定型用紙サイズが選択可能となる。ボタン1644は、定形外の用紙サイズを選択する場合に押下するボタン。ユーザがボタン1641〜1643を押下した場合はS1551に進む。ボタン1644を押下した場合は、S1549に進む。
In S1547, a processing screen for “others” is projected. In (f) of FIG. 16A, the buttons 1641 to 1643 can select a standard paper size that was not in (e) of FIG. 16A of the first screen. A
S1549では図16Bの(g)に示す定形外用の用紙サイズを設定する画面を投射する。メッセージ1646は用紙サイズの設定を促すメッセージで、枠1634の4隅のマーク1645をタッチして移動することで用紙枠の大きさを設定する。
S1550で、確定ボタン1647が押下されたら、用紙枠の大きさが確定なのでS1551に進む。S1551では、選択された用紙サイズをRAM303に記憶して、格納方法/用紙サイズ選択処理を終了する。
In S1549, a screen for setting a non-standard-size paper size shown in (g) of FIG. 16B is projected. A
If the
S1502では書画台204にスキャンの対象物が載置されるのを待つ。図15Aの(b)はS1502の対象物載置待ち処理の詳細である。対象物載置待ち処理を開始すると、S1511ではユーザインタフェース部403を介して、書画台204にプロジェクタ部207によって図16Aの(a)の画面を投射する。
図16Aの(a)の画面では、書画台204上に対象物を置くことをユーザに促すメッセージ1601を投射する。S1512では物体検知部410の処理を起動する。物体検知部410は図8のフローチャートで説明した処理の実行を開始する。S1513では、物体検知部410からの物体載置通知を待つ。物体検知部410が図8のS827の処理を実行して物体載置をメイン制御部402へ通知すると、S1513において物体載置通知ありと判断し、物体載置待ち処理を終了する。
In step S1502, the process waits for an object to be scanned to be placed on the document table 204. (B) of FIG. 15A is the detail of the object mounting waiting process of S1502. When the object placement waiting process is started, in step S <b> 1511, the
On the screen of FIG. 16A (a), a
S1502の物体載置待ち処理を終了すると、メイン制御部402は続いてS1503のスキャン実行処理を行う。図15Aの(d)のフローチャートがS1503のスキャン実行処理の詳細である。
When the object placement waiting process in S1502 ends, the
スキャン実行処理を開始すると、S1530で対象物の複数物体位置判別処理を行う。図15Cの(g)のフローチャートがS1530の対象物の複数物体位置判別処理の詳細である。
S1580では、距離画像を1フレーム取得し3次元点群に変換する。この処理はS621と同一である。
When the scan execution process is started, a multi-object position determination process for an object is performed in S1530. The flowchart of (g) of FIG. 15C is the detail of the multiple object position determination process of the target object in S1530.
In S1580, one frame of the distance image is acquired and converted into a three-dimensional point group. This process is the same as S621.
次にS1581で、3次元点群から高さが所定値以下の点とノイズ除去を行う。具体的には高さが0.1mm以下の点、孤立点をノイズとして除去する。残った点群から隣接する点を集めて一つにしたものを点群グループと呼ぶ。
図16Bの(i)は、ノイズ除去後の点群の状態を示している。点群グループ1651は、立体物である車の点群である。点群グループ1652は、紙の点群である。
Next, in step S1581, noise is removed from a point whose height is a predetermined value or less from the three-dimensional point group. Specifically, points with a height of 0.1 mm or less and isolated points are removed as noise. A group of adjacent points collected from the remaining point group is referred to as a point group.
(I) of FIG. 16B shows the state of the point group after noise removal. The point cloud group 1651 is a point cloud of a car that is a three-dimensional object. The
次にS1582で、連続する点群から所定値以上の面積を占める点群グループの位置を対象物の位置としてRAM303に記憶する。点群グループの面積は書画台(XY平面)に対する射影の外接矩形の面積であり、たとえば1cm2以下の場合はノイズとして対象物としない。外接矩形の例としては図16B(j)の枠1660や枠1661である。個々の対象物の外接矩形の位置を記憶し、複数の対象物の位置判別処理を終了する。
In step S1582, the position of the point group that occupies an area of a predetermined value or more from the continuous point group is stored in the
S1531では、図16Aの(b)に示したスキャン開始画面を、ユーザインタフェース部403を介して書画台204に投射する。図16Aの(b)は、S1530の複数物体位置判別処理で書画台上の対象物がひとつと判定した場合の例である。図16Aの(b)において、対象物1611がユーザによって載置されたスキャン対象物体である。撮影条件を設定する2Dスキャンボタン1612は平面原稿の撮影指示を受け付けるボタンである。撮影条件を設定するブックスキャンボタン1613は書籍原稿の撮影指示を受け付けるボタンである。
撮影条件を設定する3Dスキャンボタン1614は立体形状の測定指示を受け付けるボタンである。スキャン開始ボタン1615は選択したスキャンの実行開始指示を受け付けるボタンである。ユーザインタフェース部403は、前述したようにジェスチャー認識部409から通知されるタッチジェスチャーの座標とこれらのボタンを表示している座標から、いずれかのボタンがユーザによって押下されたことを検知する(以降、ユーザインタフェース部による検知の説明を省略して「ボタンへのタッチを検知する」と記載する)。また、ユーザインタフェース部403は、2Dスキャンボタン1612、ブックスキャンボタン1613、3Dスキャンボタン1614のそれぞれを排他的に選択できるようにしている。ユーザのいずれかのボタンへのタッチを検知すると、タッチされたボタンを選択状態とし、他のボタンの選択を解除する。
In step S1531, the scan start screen illustrated in FIG. 16A (b) is projected onto the
A
図16Bの(j)S1530の複数物体位置判別処理で書画台上の対象物が複数と判定し、ユーザが選択した格納方法が「1ページ1ステージ」、用紙サイズがB4である場合の例である。書画台の上に対象物が立体物である車1662と印刷物1663の2つが置かれている。 FIG. 16B (j) is an example in which a plurality of objects on the document table are determined in the multiple object position determination process in S1530, the storage method selected by the user is “one page and one stage”, and the paper size is B4. is there. Two objects, a car 1662 whose object is a three-dimensional object, and a printed material 1663 are placed on the document table.
1ページ1ステージの格納方法の場合、ドキュメント作成時に各対象物をページ内のどこに配置するかの情報が必要となる。用紙枠1667および用紙枠に対する各対象物のXY平面上の位置はS1530で取得しており、車1662の領域を示す枠1660と印刷物1663の領域を示す枠1661が投射されている。配置を変えたい場合は対象物を移動させることで変えることができる。物体配置修正部415は対象物の位置がユーザによって修正されていないかどうか監視する。確定するのはスキャン開始ボタン1666が押下されたときである。スキャンの種類を示す3種のボタン1664は、左側の車1662の枠1660に対するスキャンの種類をユーザに選択させるボタンである。この場合は、3Dスキャンをユーザは選択する。同様に3種のボタン1665は、右側の印刷物のスキャンの種類を選択させるボタンである。この場合は、2Dスキャンをユーザは選択する。
In the case of the storage method of one page and one stage, information on where to place each object in the page is required at the time of document creation. The position on the XY plane of the
S1532では、図16Aの(b)の例ではスキャン開始ボタン1615、図16Bの(j)の例ではスキャン開始ボタン1666または位置修正ボタン1668へのタッチを検知するまで待つ。S1532でスキャン開始ボタン1615またはスキャン開始ボタン1666へのタッチを検知したらS1533へ進む。位置修正ボタン1668へのタッチを検知したら対象物の位置がユーザにより変えられたのでS1530に戻り処理をやり直す。
In S1532, the process waits until a touch on the
S1533では、ユーザの選択したスキャン種別を判定する。2Dスキャンボタン1612が選択状態であればS1534へ、ブックスキャンボタン1613が選択状態であれば、S1535へ、3Dスキャンボタン1614が選択状態であればS1536へ進む。S1534では平面原稿画像撮影部411の処理を実行する。S1535では書籍画像撮影部412の処理を実行する。S1536では立体形状測定部413の処理を実行する。
In S1533, the scan type selected by the user is determined. If the 2D scan button 1612 is selected, the process proceeds to S1534. If the
次にS1537で、書画台上の対象物のすべてのスキャンを実施したか判定し、すべてスキャンした場合は、スキャン実行処理を終了する。書画台上に複数の対象物を置いたケースでまだスキャンができていない対象物がある場合はS1533に戻り処理を継続する。 In step S1537, it is determined whether all the objects on the document table have been scanned. If all the objects have been scanned, the scan execution process ends. If there is an object that has not been scanned yet in the case where a plurality of objects are placed on the document table, the process returns to S1533 to continue the processing.
これらのスキャン実行処理により、すべての対象物の2次元データまたは3次元データをデータ管理部405がRAM303に格納する。また、格納方法が1ページ1ステージの場合は、原稿に対する相対的な位置も合わせて格納する。
By these scan execution processes, the
S1503のスキャン実行処理を終了すると、メイン制御部402は続いてS1504の物体除去待ち処理を行う。図15Aの(c)は物体除去待ち処理のフローチャートである。物体除去待ち処理を開始すると、S1521では図16Aの(c)に示したスキャン終了画面を表示する。
図16Aの(c)のスキャン終了画面では、スキャンが終了した旨をユーザに通知するメッセージ1621を投射する。S1522では、物体検知部410からの物体除去通知を受信するのを待つ。ここで、物体除去通知は、物体検知部410が図8のS834で通知するものである。S1522で物体除去通知があると、物体除去待ち処理を終了する。S1504の物体除去待ち処理を終了すると、メイン制御部402はS1501へ進む。
When the scan execution process in S1503 ends, the
In the scan end screen of (c) of FIG. 16A, a message 1621 for notifying the user that the scan has ended is projected. In step S1522, the process waits for reception of an object removal notification from the
S1501では、ボタン1622が押下されたときは、S1506に進む。あらかじめ設定した待機時間を過ぎた場合は、スキャン継続とみなしS1502へ戻り、図16Aの(a)の初期画面を表示して書画台204への物体載置を待つ。このようにすることで、ユーザが複数の原稿をスキャンしたい場合に、書画台204上の原稿を取り換えたことを検知することができ、複数の原稿のスキャンを実行できる。
S1506では、ドキュメント作成処理を行う。図15Cの(f)は詳細を示すフローチャートである。
S1560でユーザが選択した格納方法を確認する。「1ページ1個」の場合はS1561に進み、「1ページ1ステージ」の場合はS1567に進む。
S1561では、ユーザが選択した用紙サイズを確認する。自動の場合はS1562に進む。それ以外の場合はS1563に進む。
S1562では、スキャンしたデータと同じ用紙サイズの新規ページ作成を行う。つまり対象物の大きさ(外接矩形)がA4であれば新規ページの用紙サイズをA4にする。
In S1501, when the
In step S1506, document creation processing is performed. FIG. 15C is a flowchart showing details.
In S1560, the storage method selected by the user is confirmed. In the case of “one page”, the process proceeds to S1561, and in the case of “one page and one stage”, the process proceeds to S1567.
In S1561, the paper size selected by the user is confirmed. If it is automatic, the process proceeds to S1562. Otherwise, the process proceeds to S1563.
In S1562, a new page is created with the same paper size as the scanned data. That is, if the size of the object (the circumscribed rectangle) is A4, the paper size of the new page is set to A4.
次にS1564で、データをページに配置する。PDF(電子文書データ)であればA4サイズのページ辞書を作成して新規ページを作り、そこに対象物が紙や本であれば2次元データであるJPEG画像をページ内に配置する。同様に対象物が立体物であれば3次元データであるU3Dデータをページ内に配置する。3次元データの最初に見える位置や大きさはデフォルトビューとしてPDF内の3次元注釈辞書に格納されている。
同様に用紙サイズが自動でなくひとつの定型サイズに収める場合はS1563で、対象物の大きさによらずユーザが選択した用紙サイズの新規ページを作成する。
In step S1564, data is arranged on the page. If it is PDF (electronic document data), a page dictionary of A4 size is created to create a new page. If the object is paper or a book, a JPEG image that is two-dimensional data is arranged in the page. Similarly, if the object is a three-dimensional object, U3D data that is three-dimensional data is arranged in the page. The position and size of the three-dimensional data that can be seen at the beginning are stored in the three-dimensional annotation dictionary in the PDF as a default view.
Similarly, if the paper size is not automatic but fits into one standard size, in S1563, a new page of the paper size selected by the user is created regardless of the size of the object.
次にS1565にて、データを用紙サイズに変倍してページに配置する。たとえば、対象物がA3の印刷物であり、ドキュメントに選択されている用紙サイズがB4であれば、A4→B4の縮小を行いPDFに格納する。 In step S1565, the data is scaled to the paper size and arranged on the page. For example, if the object is a printed matter of A3 and the paper size selected for the document is B4, the size is reduced from A4 to B4 and stored in the PDF.
S1566ではすべての対象物のデータを処理したか判定する。すべてを処理していない場合はS1561に戻り処理を継続する。すべて処理した場合はドキュメント作成処理を終了する。
S1560でユーザが選択した格納方法が1ページ1ステージである場合について説明する。S1567で、ユーザが選択した用紙サイズの新規ページを作成する。
次にS1568でステージを一つ選択する。
In S1566, it is determined whether data of all objects has been processed. If not all have been processed, the process returns to S1561 and continues. If all processing is completed, the document creation process is terminated.
A case where the storage method selected by the user in S1560 is one page and one stage will be described. In S1567, a new page of the paper size selected by the user is created.
In step S1568, one stage is selected.
S1569で、対象物のスキャン時に1ページ1ステージの格納方法の場合はステージごとに対象物のデータが記憶されているので、ステージ内の対象物のデータの情報を取り出す。ページ内の位置情報に従いPDFの新規ページ内に対象物のデータを格納する。
たとえば図16Bの(j)のような場合は、B4用紙サイズとなる用紙枠1667の中に左側に車1662の3次元データ、右側に印刷物1663のJPEGデータがPDFのページ内に格納される。
In S1569, in the case of the storage method of one page and one stage at the time of scanning the object, since the object data is stored for each stage, information on the object data in the stage is taken out. Data of the object is stored in a new PDF page according to the position information in the page.
For example, in the case of (j) in FIG. 16B, the three-dimensional data of the car 1662 on the left side and the JPEG data of the printed matter 1663 on the right side are stored in the PDF page in the
次にS1570でステージ内のデータを処理したか判定する。まだ対象物のデータが残っている場合は、S1569に戻ってページ内にデータを配置する。すべての対象物を処理した場合は、S1571に進む。 In step S1570, it is determined whether the data in the stage has been processed. If there is still data on the object, the process returns to S1569 to arrange the data in the page. If all the objects have been processed, the process proceeds to S1571.
S1571では、すべてのステージを処理したか判定する。ステージが残っている場合は、S1568に戻って処理を継続する。残っていない場合は、ドキュメント作成処理を終了する。 In S1571, it is determined whether all stages have been processed. If the stage remains, the process returns to S1568 and continues. If not, the document creation process is terminated.
以上のように、第1実施形態ではユーザが平面原稿のスキャンを行うか、厚みのある書籍のスキャンを行うか、立体形状測定をおこなうかを選択できるようにした。なお、スキャンのモードが3種類すべて必要無い場合、例えば、ユーザの設定等により平面原稿のスキャンと厚みのある書籍のスキャンの2種類を実行すれば良い場合も考えられる。その場合、実行する2つのスキャンを選択できるように表示を行えばよい。
具体的には、図16Aの(b)において2Dスキャンボタン1612、ブックスキャンボタン1613、スキャン開始ボタン1615のみを投射することにより、2種類のスキャンを選択するユーザの入力を受け付けることができる。また、スキャンのモードが1種類のみであればよい場合、例えば、ユーザの設定等により平面原稿のスキャンのみ、あるいは、書籍のスキャンのみを実行すれば良い場合も考えられる。
その場合、図16Aの(b)においてはスキャン開始ボタン1615のみを投射し、ユーザのスキャン種類の選択を受け付けることなく、スキャン開始ボタン1715へのタッチを検知したときにスキャンを実行すれば良い。また、このようにスキャンのモードが1種類のみである場合、書画台204への物体の載置を検知したとき、図16Aの(b)のようなスキャン操作画面を投射せず、すぐにスキャンを実行しても良い。
As described above, in the first embodiment, the user can select whether to scan a flat document, scan a thick book, or perform solid shape measurement. When all three types of scanning modes are not necessary, for example, it may be possible to execute two types of scanning of a flat document and a thick book according to user settings or the like. In that case, display may be performed so that two scans to be executed can be selected.
Specifically, by projecting only the 2D scan button 1612, the
In that case, in FIG. 16A (b), only the
〔第2実施形態〕
第1実施形態の構成のカメラスキャナにおいて、物体配置表示部414は書画台204上にドキュメントの用紙サイズを示す枠もしくは対象物の占める領域を示す枠を表示する。
図16Bの(j)では用紙枠1667、対象物の領域を示す枠1660、枠1661である。
対象物が立体物である場合、プロジェクタ部207からの枠の投射が立体物にかかって正しく枠が投射できないことがある。
第1実施形態では、それらの枠を四角形により投射して示したが、領域を示せればどのような方法でも構わない。
[Second Embodiment]
In the camera scanner having the configuration of the first embodiment, the object
In FIG. 16B (j), there are a
When the object is a three-dimensional object, the projection of the frame from the
In the first embodiment, the frames are projected and shown as squares, but any method may be used as long as the area can be shown.
例えば、図17の(a)の4本の直線1700で囲まれた領域を用紙枠として示しても良い。立体物に投影がかかってしまっても、直線を書画台いっぱいに投射することによりユーザが用紙サイズや対象物の占める領域を容易に知ることができる。
For example, an area surrounded by four
〔第3実施形態〕
第1実施形態の構成を備えるカメラスキャナにおいて、物体配置表示部414は書画台204上にドキュメントの用紙サイズを示す枠もしくは対象物の占める領域を示す枠を表示する。図16Bの(j)では用紙枠1667、対象物の領域を示す枠1660、枠1661である。
対象物が立体物である場合、プロジェクタ部207からの枠の投射が立体物にかかって正しく枠が投射できないことがある。
第1実施形態では、それらの枠を四角形により投射して示したが、領域を示せればどのような方法でも構わない。
[Third Embodiment]
In the camera scanner having the configuration of the first embodiment, the object
When the object is a three-dimensional object, the projection of the frame from the
In the first embodiment, the frames are projected and shown as squares, but any method may be used as long as the area can be shown.
たとえば、図17の(b)のように用紙枠の外側に領域を示すマーカー1710を示して補助しても良い。立体物に投影がかかってしまっても、マーカー1710を書画台の端の方に投射することによりユーザが用紙サイズや対象物の占める領域を容易に知ることができる。 For example, as shown in FIG. 17B, a marker 1710 indicating a region may be provided outside the paper frame to assist. Even if the projection is applied to the three-dimensional object, the user can easily know the paper size and the area occupied by the object by projecting the marker 1710 toward the end of the document table.
〔第4実施形態〕
第1実施形態の構成を備えるカメラスキャナにおいて、物体配置表示部414は書画台204上にドキュメントの用紙サイズを示す枠もしくは対象物の占める領域を示す枠を表示する。図16Bの(j)では用紙枠1667、対象物の領域を示す枠1660、枠1661である。
対象物が立体物である場合、プロジェクタ部207からの枠の投射が立体物にかかって正しく枠が投射できないことがある。
第1実施形態では、それらの枠を四角形により投射して示したが、領域を示せればどのような方法でも構わない。
たとえば、書画台204上にあらかじめ良く使う用紙サイズを印刷しておく、または印刷した紙などを敷いておいてもかまわない。
たとえば、A4ポートレートの枠が書画台204に印刷されている場合で説明する。
ユーザが選択した用紙サイズがA4の場合は、書画台にあらかじめ図17の(c)のようにA4枠が印刷されているため、立体物やプロジェクタの位置によらず確認することが可能である。
ただし、その場合にユーザがA4サイズを選ばなかったときに問題となる。
[Fourth Embodiment]
In the camera scanner having the configuration of the first embodiment, the object
When the object is a three-dimensional object, the projection of the frame from the
In the first embodiment, the frames are projected and shown as squares, but any method may be used as long as the area can be shown.
For example, a frequently used paper size may be printed in advance on the document table 204 or a printed paper may be laid.
For example, a case where an A4 portrait frame is printed on the document table 204 will be described.
When the paper size selected by the user is A4, since the A4 frame is printed in advance on the document table as shown in FIG. 17C, it can be confirmed regardless of the position of the three-dimensional object or the projector. .
However, in this case, it becomes a problem when the user does not select the A4 size.
そこで、本実施形態では、ユーザが選択した用紙サイズが書画台に印刷されている用紙枠の大きさと異なる場合のみ第1実施形態の図15Bの(e)のS1546において用紙サイズを示す枠を投影することを特徴とする。 Therefore, in this embodiment, only when the paper size selected by the user is different from the size of the paper frame printed on the document table, a frame indicating the paper size is projected in S1546 of FIG. 15B (e) of the first embodiment. It is characterized by doing.
このように立体物に投影がかかってしまうような場合でも、A4サイズなど良く使う用紙サイズの枠を書画台にあらかじめ印刷しておき、A4と異なる用紙サイズがユーザに選択されたときのみ用紙枠を投影することで、立体物を置いても多くの場合にユーザが用紙サイズ領域を正しく知ることができる。 Even when a three-dimensional object is projected in this way, a frame of a frequently used paper size, such as A4 size, is printed in advance on the document table, and the paper frame only when a paper size different from A4 is selected by the user. In many cases, even if a three-dimensional object is placed, the user can correctly know the paper size area.
〔第5実施形態〕
第1実施形態では物体配置修正部415がスキャン実行処理S1503のS1532において、用紙枠に対する位置を読み取り、PDFなどのドキュメント作成時に同様の位置関係の配置で構成されたページを持つようにドキュメントを作成した。配置を決定する手段は、スキャン実行時でなくても同様の効果が得られる。
[Fifth Embodiment]
In the first embodiment, the object
S1506のドキュメント作成処理において図17の(d)に示すように対象物のデータのサムネール画像1730を書画台の上部に並べ、書画台の下部に用紙枠1734を投射する。指1731のようにサムネールにタッチして指1733の位置にドラッグすることにより用紙枠1734に対してサムネール画像1732の位置に対象物のデータを配置するように示しても良い。
また、ユーザによるマーカーの指示動作を認識して、当該移動指示を認識することに応じて、ページ領域を調整するように構成してもよい。
In the document creation processing of S1506, as shown in FIG. 17D,
Further, the page area may be adjusted in accordance with recognizing the movement of the marker by the user and recognizing the movement instruction.
本発明の各工程は、ネットワーク又は各種記憶媒体を介して取得したソフトウエア(プログラム)をパソコン(コンピュータ)等の処理装置(CPU、プロセッサ)にて実行することでも実現できる。 Each process of the present invention can also be realized by executing software (program) acquired via a network or various storage media by a processing device (CPU, processor) such as a personal computer (computer).
本発明は上記実施形態に限定されるものではなく、本発明の趣旨に基づき種々の変形(各実施形態の有機的な組合せを含む)が可能であり、それらを本発明の範囲から除外するものではない。 The present invention is not limited to the above embodiment, 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.
101 カメラスキャナ
201 コントローラ部
202 カメラ部
204 書画台
207 プロジェクタ
208 距離画像センサ部
DESCRIPTION OF
Claims (13)
前記載置手段に載置される複数のオブジェクトを撮影してカメラ画像を生成するカメラと、
前記載置手段に載置される複数のオブジェクトに照射される赤外線パターンを撮影して得られる赤外線画像から距離画像を生成する第1の距離画像生成手段と、
前記載置手段に所定の測定パターンまたはユーザインタフェースを投影する投影手段と、
前記ユーザインタフェースに対する指示に従い前記載置手段に載置された複数のオブジェクトを1ページに合成して格納するか、それぞれのオブジェクトを分離して1ページずつ格納するかを示す格納形式を設定する設定手段と、
前記設定手段により設定された格納形式に基づいて、複数のオブジェクトをページ合成した電子文書データに変換する処理と、それぞれオブジェクトを分離した電子文書データに変換する処理とを切り換え制御する制御手段と、
を備えることを特徴とするスキャナシステム。 A mounting means for mounting a plurality of objects;
A camera that shoots a plurality of objects placed on the placing means and generates a camera image;
First distance image generation means for generating a distance image from an infrared image obtained by photographing an infrared pattern irradiated to a plurality of objects placed on the placement means;
Projection means for projecting a predetermined measurement pattern or user interface onto the placement means;
A setting for setting a storage format indicating whether a plurality of objects placed on the placing means are combined into one page and stored according to an instruction to the user interface, or each object is separated and stored one page at a time Means,
Control means for switching control between processing for converting a plurality of objects into electronic document data obtained by page composition based on the storage format set by the setting means, and processing for converting each object into electronic document data separated from each other;
A scanner system comprising:
前記第2の距離画像生成手段が生成した距離画像に所定の座標変換処理を行い前記載置手段に載置されたオブジェクトの立体形状を特定する3次元点群を取得する第3の取得手段を有することを特徴とする請求項1乃至3の何れか1項に記載のスキャナシステム。 Second distance image generation means for generating a distance image from a camera image obtained by photographing the predetermined pattern projected by the projection means on the object in accordance with an instruction to the user interface;
Third acquisition means for acquiring a three-dimensional point group for performing a predetermined coordinate conversion process on the distance image generated by the second distance image generation means and specifying the three-dimensional shape of the object placed on the placement means. The scanner system according to any one of claims 1 to 3, further comprising:
前記認識手段が前記投影手段により投影されたマーカーに対する移動指示を認識することに応じて、前記ページ領域を調整する調整手段と、を備えることを特徴とする請求項7記載のスキャナシステム。 Recognizing means for analyzing a distance image generated by the first distance image generating means and recognizing an instruction operation by an operator for the user interface;
The scanner system according to claim 7, further comprising: an adjusting unit that adjusts the page area in response to the recognition unit recognizing a movement instruction for the marker projected by the projection unit.
前記判定手段により死角領域があると判定した場合、前記載置手段を載置平面に対して回転移動させて前記カメラにより前記載置手段に載置されるオブジェクトを撮影させる撮影制御手段と、
を備えることを特徴とする請求項1乃至4のいずれか1項に記載のスキャナシステム。 Determining means for determining whether there is a blind spot area in which the entire one object cannot be imaged due to the positional relationship with each object placed on the placing means;
When it is determined by the determination means that there is a blind spot area, the imaging control means for photographing the object placed on the placement means by the camera by rotating the placement means relative to the placement plane;
The scanner system according to any one of claims 1 to 4, further comprising:
前記載置手段にオブジェクトが載置されていないと判断した場合、前記撮影制御手段は、前記死角領域の撮影を実行しないことを特徴とする請求項9記載のスキャナシステム。 Determination means for determining whether an object is placed on the placement means based on a camera image of the placement means taken by the camera and a camera image stored in advance;
The scanner system according to claim 9, wherein when it is determined that no object is placed on the placement unit, the shooting control unit does not perform shooting of the blind spot area.
前記立体オブジェクトが前記載置手段の配置位置から他の配置位置へ移動されていると判別した場合、前記撮影制御手段は、前記カメラで前記載置手段に載置されるオブジェクトを撮影させることを特徴とする請求項9記載のスキャナシステム。 When it is determined by the determination means that there is a blind spot area, the determination means for determining whether the object has been moved from the placement position of the placement means to another placement position;
When it is determined that the three-dimensional object has been moved from the placement position of the placement means to another placement position, the shooting control means causes the camera to take a picture of the object placed on the placement means. The scanner system according to claim 9, wherein:
前記載置手段に載置される複数のオブジェクトに照射される赤外線パターンを撮影して得られる赤外線画像から距離画像を生成する第1の距離画像生成工程と、
前記投影手段が載置手段に所定の測定パターンまたはユーザインタフェースを投影する投影工程と、
前記ユーザインタフェースに対する指示に従い前記載置手段に載置された複数のオブジェクトを1ページに合成して格納するか、それぞれのオブジェクトを分離して1ページずつ格納するかを示す格納形式を設定する設定工程と、
前記設定工程により設定された格納形式に基づいて、複数のオブジェクトをページ合成した電子文書データに変換する処理と、それぞれオブジェクトを分離した電子文書データに変換する処理とを切り換え制御する制御工程と、
を備えるスキャナシステムのデータ処理方法。 A placement unit for placing a plurality of objects, a camera for capturing a plurality of objects placed on the placement unit and generating a camera image, and projecting a predetermined measurement pattern or user interface on the placement unit A data processing method for a scanner system, comprising:
A first distance image generating step for generating a distance image from an infrared image obtained by photographing an infrared pattern irradiated on a plurality of objects placed on the placing means;
A projection step in which the projection means projects a predetermined measurement pattern or user interface on the placement means;
A setting for setting a storage format indicating whether a plurality of objects placed on the placing means are combined into one page and stored according to an instruction to the user interface, or each object is separated and stored one page at a time Process,
Based on the storage format set in the setting step, a control step for switching and controlling a process for converting a plurality of objects into electronic document data obtained by combining pages and a process for converting each object into electronic document data separated from each other;
A data processing method for a scanner system comprising:
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2014042865A JP2015170907A (en) | 2014-03-05 | 2014-03-05 | Scanner system, data processing method of scanner system, and program |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2014042865A JP2015170907A (en) | 2014-03-05 | 2014-03-05 | Scanner system, data processing method of scanner system, and program |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2015170907A true JP2015170907A (en) | 2015-09-28 |
Family
ID=54203308
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2014042865A Pending JP2015170907A (en) | 2014-03-05 | 2014-03-05 | Scanner system, data processing method of scanner system, and program |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2015170907A (en) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2018014604A (en) * | 2016-07-20 | 2018-01-25 | 株式会社リコー | Image reading device, image formation device, manuscript image projection method, and program |
JP2019032577A (en) * | 2017-08-04 | 2019-02-28 | Kddi株式会社 | Gaze area estimation apparatus and program |
CN110603570A (en) * | 2017-05-10 | 2019-12-20 | 富士通株式会社 | Object recognition method, device, system, and program |
JPWO2021193236A1 (en) * | 2020-03-23 | 2021-09-30 | ||
WO2023211186A1 (en) * | 2022-04-29 | 2023-11-02 | 안상명 | Multifunctional document-processing device comprising document scan function, document translation function and document output function |
WO2024143065A1 (en) * | 2022-12-28 | 2024-07-04 | 株式会社プリマジェスト | Document reading device and document reading program |
-
2014
- 2014-03-05 JP JP2014042865A patent/JP2015170907A/en active Pending
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2018014604A (en) * | 2016-07-20 | 2018-01-25 | 株式会社リコー | Image reading device, image formation device, manuscript image projection method, and program |
CN110603570A (en) * | 2017-05-10 | 2019-12-20 | 富士通株式会社 | Object recognition method, device, system, and program |
CN110603570B (en) * | 2017-05-10 | 2023-08-04 | 富士通株式会社 | Object recognition method, device, system, and program |
JP2019032577A (en) * | 2017-08-04 | 2019-02-28 | Kddi株式会社 | Gaze area estimation apparatus and program |
JPWO2021193236A1 (en) * | 2020-03-23 | 2021-09-30 | ||
WO2021193236A1 (en) * | 2020-03-23 | 2021-09-30 | ファナック株式会社 | Image processing device and image processing method |
JP7436633B2 (en) | 2020-03-23 | 2024-02-21 | ファナック株式会社 | Image processing device and image processing method |
WO2023211186A1 (en) * | 2022-04-29 | 2023-11-02 | 안상명 | Multifunctional document-processing device comprising document scan function, document translation function and document output function |
WO2024143065A1 (en) * | 2022-12-28 | 2024-07-04 | 株式会社プリマジェスト | Document reading device and document reading program |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6327931B2 (en) | Image processing apparatus, information processing method, and program | |
JP2015170907A (en) | Scanner system, data processing method of scanner system, and program | |
TW201743602A (en) | Image processing device, image processing method, non-transitory computer readable recording medium and photographing assist equipment | |
KR20130112574A (en) | Apparatus and method for improving quality of enlarged image | |
JP5644461B2 (en) | Image processing apparatus and program | |
JP2016038820A (en) | Image processor and control program | |
JP6289254B2 (en) | Image processing apparatus, information processing method, and program | |
US9888209B1 (en) | Remote communication system, method for controlling remote communication system, and storage medium | |
JP2016085380A (en) | Controller, control method, and program | |
JP2015198406A (en) | Image reader, method, and program | |
JP2015212892A (en) | Image processor, information processing method and program | |
JP2009258005A (en) | Three-dimensional measuring device and three-dimensional measuring method | |
JP6104066B2 (en) | Image processing apparatus and image processing method | |
JP2018107642A (en) | Image processing system, control method for image processing system, and program | |
JP6478641B2 (en) | Image processing apparatus, information processing method, and program | |
JP2017041668A (en) | Image input device, image input system, control method for image input device, and program | |
JP2019016843A (en) | Document reading device, control method of document reading device, and program | |
JP6614500B2 (en) | Image reading apparatus, portable terminal, image reading method, and image reading program | |
JP2019036876A (en) | Image reading device, image forming apparatus, image reading method, and image reading program | |
TW202138757A (en) | Dimension measurement method and dimension measurement device | |
JP6624861B2 (en) | Image processing apparatus, control method, and program | |
JP6679430B2 (en) | IMAGING DEVICE, IMAGING DEVICE CONTROL METHOD, AND PROGRAM | |
JP6203070B2 (en) | Scanning system, control method therefor, and program | |
JP2015102915A (en) | Information processing apparatus, control method, and computer program | |
JP2019146126A (en) | Image reading device, control method for the same and program |