JP6399840B2 - 画像処理装置、画像処理方法及びプログラム - Google Patents

画像処理装置、画像処理方法及びプログラム Download PDF

Info

Publication number
JP6399840B2
JP6399840B2 JP2014149065A JP2014149065A JP6399840B2 JP 6399840 B2 JP6399840 B2 JP 6399840B2 JP 2014149065 A JP2014149065 A JP 2014149065A JP 2014149065 A JP2014149065 A JP 2014149065A JP 6399840 B2 JP6399840 B2 JP 6399840B2
Authority
JP
Japan
Prior art keywords
image
line segment
distance
unit
subject
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.)
Expired - Fee Related
Application number
JP2014149065A
Other languages
English (en)
Other versions
JP2016024675A (ja
Inventor
章宜 大井
章宜 大井
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Canon Inc
Original Assignee
Canon Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Canon Inc filed Critical Canon Inc
Priority to JP2014149065A priority Critical patent/JP6399840B2/ja
Priority to US14/798,855 priority patent/US9979858B2/en
Publication of JP2016024675A publication Critical patent/JP2016024675A/ja
Application granted granted Critical
Publication of JP6399840B2 publication Critical patent/JP6399840B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/03Arrangements for converting the position or the displacement of a member into a coded form
    • G06F3/0304Detection arrangements using opto-electronic means
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/10Segmentation; Edge detection
    • G06T7/13Edge detection
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/40Extraction of image or video features
    • G06V10/44Local feature extraction by analysis of parts of the pattern, e.g. by detecting edges, contours, loops, corners, strokes or intersections; Connectivity analysis, e.g. of connected components
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/40Extraction of image or video features
    • G06V10/48Extraction of image or video features by mapping characteristic values of the pattern into a parameter space, e.g. Hough transformation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/60Type of objects
    • G06V20/64Three-dimensional objects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V30/00Character recognition; Recognising digital ink; Document-oriented image-based pattern recognition
    • G06V30/40Document-oriented image-based pattern recognition
    • G06V30/41Analysis of document content
    • G06V30/414Extracting the geometrical structure, e.g. layout tree; Block segmentation, e.g. bounding boxes for graphics or text
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N1/00Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
    • H04N1/00795Reading arrangements
    • H04N1/00827Arrangements for reading an image from an unusual original, e.g. 3-dimensional objects
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N1/00Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
    • H04N1/04Scanning arrangements, i.e. arrangements for the displacement of active reading or reproducing elements relative to the original or reproducing medium, or vice versa
    • H04N1/19Scanning 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/195Scanning 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/19594Scanning 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N1/00Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
    • H04N1/387Composing, repositioning or otherwise geometrically modifying originals
    • H04N1/3872Repositioning or masking
    • H04N1/3873Repositioning or masking defined only by a limited number of coordinate points or parameters, e.g. corners, centre; for trimming
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N1/00Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
    • H04N1/46Colour picture communication systems
    • H04N1/56Processing of colour picture signals
    • H04N1/60Colour correction or control
    • H04N1/6002Corrections within particular colour systems
    • H04N1/6005Corrections within particular colour systems with luminance or chrominance signals, e.g. LC1C2, HSL or YUV
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N23/00Cameras or camera modules comprising electronic image sensors; Control thereof
    • H04N23/20Cameras or camera modules comprising electronic image sensors; Control thereof for generating image signals from infrared radiation only
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N23/00Cameras or camera modules comprising electronic image sensors; Control thereof
    • H04N23/60Control of cameras or camera modules
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N5/00Details of television systems
    • H04N5/30Transforming light or analogous information into electric information
    • H04N5/33Transforming infrared radiation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2203/00Indexing scheme relating to G06F3/00 - G06F3/048
    • G06F2203/041Indexing scheme relating to G06F3/041 - G06F3/045
    • G06F2203/041012.5D-digitiser, i.e. digitiser detecting the X/Y position of the input means, finger or stylus, also when it does not touch, but is proximate to the digitiser's interaction surface and also measures the distance of the input means within a short range in the Z direction, possibly with a separate measurement setup
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2200/00Indexing scheme for image data processing or generation, in general
    • G06T2200/24Indexing scheme for image data processing or generation, in general involving graphical user interfaces [GUIs]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/10Image acquisition modality
    • G06T2207/10004Still image; Photographic image
    • G06T2207/10008Still image; Photographic image from scanner, fax or copier
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/30Subject of image; Context of image processing
    • G06T2207/30176Document
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N2201/00Indexing scheme relating to scanning, transmission or reproduction of documents or the like, and to details thereof
    • H04N2201/04Scanning arrangements
    • H04N2201/0402Arrangements not specific to a particular one of the scanning methods covered by groups H04N1/04 - H04N1/207
    • H04N2201/0434Arrangements 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N2201/00Indexing scheme relating to scanning, transmission or reproduction of documents or the like, and to details thereof
    • H04N2201/04Scanning arrangements
    • H04N2201/0402Arrangements not specific to a particular one of the scanning methods covered by groups H04N1/04 - H04N1/207
    • H04N2201/0456Arrangements not specific to a particular one of the scanning methods covered by groups H04N1/04 - H04N1/207 for maintaining a predetermined distance between the scanning elements and the picture-bearing surface

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Signal Processing (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • General Engineering & Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Computer Graphics (AREA)
  • Geometry (AREA)
  • Artificial Intelligence (AREA)
  • Image Processing (AREA)
  • Image Analysis (AREA)
  • Chemical & Material Sciences (AREA)
  • Crystallography & Structural Chemistry (AREA)
  • Computer Hardware Design (AREA)
  • Quality & Reliability (AREA)

Description

本発明は、画像処理装置、画像処理方法及びプログラムに関する。
書籍に記された内容を手軽にデータとして記録するための装置として、ブックスキャナがある。ブックスキャナの中でも、特に書籍を破壊せずにページをめくるだけでスキャンを可能とするスタンド型ブックスキャナが知られている。スタンド型ブックスキャナは、書籍の上方からのカメラによる撮影を行い書籍の画像を取得する。
使用者が求める書籍の画像は、見開きページ内に記された文字や図等の内容である。例えば書籍の小口のようにページ端が積み重なった箇所や書籍の背景画像は、ほとんどの場合、使用者が欲しない画像情報である。しかし、カメラにより撮影された画像から、使用者が欲しない不要な画像情報を自動的に判別することは、難しい。従来のブックスキャナを用いた際、多くの場合スキャン結果が不要な画像情報を含むことになり、使用者は人手で画像を修正する必要があり手間がかかる。
したがって、書籍の見開きページ端の輪郭取得を自動的に行い、人手による画像修正を必要としないことは、ブックスキャナにとって重要な要件である。対象の輪郭を取得する手段としては、前記対象の輝度画像情報からだけでなく距離センサから前記対象の距離画像情報を取得して前記対象の輪郭を検出する手段が挙げられる。距離画像情報は、環境光の変化に対して頑健であり、輝度画像情報に基づいた検出が難しい輪郭であっても距離画像情報に基づいて検出することが可能である。しかし、特に安価な距離センサの場合、高精度の輪郭情報の取得は、難しい。したがって、距離情報から得られた輪郭を手掛かりに輝度画像情報に基づいて、輪郭を検出する方法が従来行われている。対象の輪郭を距離情報と輝度画像情報とに基づいて取得する従来技術には、特許文献1の技術がある。特許文献1の技術では、距離画像を格子状に分割し、隣接する格子の距離差が予め定められた閾値よりも大きい格子を背景と対象との境界が存在する格子であるとして絞り込み、前記絞り込んだ格子領域内で輝度画像によって背景と対象との境界を判定する。特許文献1の技術により、軽処理でありながら照明変化に対して頑健な輪郭検出が可能である。
特開2002−117403号公報
しかし、特許文献1の技術には、距離画像情報によって対象と背景が存在する範囲を絞りこみ、絞りこんだ範囲内で輝度画像情報によって境界を取得するために、書籍に対しては見開きページ端ではなく書籍全体の輪郭が取得されてしまうという問題がある。また、見開きページ端付近には、書籍の小口のようにページが積み重なった箇所によって複数の輪郭が生じるが、特許文献1の技術では、複数生じた輪郭の中からどの輪郭を検出すべきかを特定することは難しい。
そこで、本発明は、撮影対象の輪郭の周りに複数の輪郭の候補が生じた場合でも、検出すべき輪郭を特定することを目的とする。
そこで、本発明の画像処理装置は、画像中の被写体の距離画像情報に基づいて、前記被写体の輪郭の候補である複数の候補点を検出し、前記候補点に基づいて前記画像中の検査対象領域を決定する決定手段と、前記決定手段により決定された前記検査対象領域の中に存在する線分を前記検査対象領域の輝度情報に基づいて検出し、前記線分から前記候補点に基づいて前記被写体の輪郭である線分を特定する特定手段と、を有する。
本発明によれば、撮影対象の輪郭の周りに複数の輪郭の候補が生じた場合でも、検出すべき輪郭を特定することができる。
カメラスキャナの構成と座標系の一例を示す図である。 コントローラ部等のハードウェア構成の一例を示す図である。 カメラスキャナのソフトウェア構成の一例を示す図である。 距離画像取得部が実行する距離画像取得処理のフローチャートである。 距離画像取得部の計測原理の説明を示す図である。 書籍の見開きページ端を示す図である。 ページ端検出処理全体のフローチャートである。 輪郭候補点群検出処理のフローチャートである。 輪郭候補点群検出処理についての説明を示す図である。 分割線上のページ候補点検出の処理のフローチャートである。 割線上のページ候補点検出についての説明を示す図である。 領域決定処理のフローチャートである。 線分検出処理のフローチャートである。 線分特定処理の説明を示す図である。 線分特定処理のフローチャートである。 書籍のページ端に段差が生じた状況の説明を示す図である。 領域決定処理のフローチャートである。 ページ端検出処理全体のフローチャートである。 領域決定処理のフローチャートである。 処理全体の説明を示す図である。 使用者によるページ端選択処理のフローチャートである。
以下、本発明の実施形態について図面に基づいて説明する。
<実施形態1>
[カメラスキャナの構成]
図1は、カメラスキャナ101の構成と座標系の一例を示す図である。
図1(a)に示すように、カメラスキャナ101は、コントローラ部102、カメラ部103、腕部104、プロジェクタ107、距離画像センサ部108を含む。カメラスキャナ101の本体であるコントローラ部102と撮像を行うためのカメラ部103とプロジェクタ107と距離画像センサ部108とは、腕部104により連結されている。腕部104は、関節を用いて曲げ伸ばしができる。
書画台105は、カメラスキャナ101が設置されている書画台である。書画台105は、カメラスキャナ101の構成に含まれていてもよい。カメラ部103及び距離画像センサ部108のレンズは、書画台105方向に向けられており、破線で囲まれた読み取り領域106内の画像を読み取り可能である。図1(a)において、書籍110は、読み取り領域106内に置かれており、カメラ部103及び距離画像センサ部108により読み取り可能となっている。カメラ部103は、単一解像度で画像を撮像するものとしてもよいし、高解像度画像撮像と低解像度画像撮像が可能なものとしてもよい。書籍110は、被写体の一例である。
カメラスキャナ101は、LCDタッチパネル230、スピーカ240等を更に含むことができる。
図1(b)は、カメラスキャナ101における座標系を表している図である。カメラスキャナ101では、カメラ部103、距離画像センサ部108、プロジェクタ107等のハードウェアデバイスに対して、それぞれカメラ座標系、距離画像座標系、プロジェクタ座標系等の独立した複数の座標系が定義される。前記複数の座標系は、カメラ部103及び図2で後述する距離画像センサ部108のRGBカメラ263が撮像する画像平面(プロジェクタ107が投影する画像平面でもある)をXY平面とし、前記画像平面に直交した方向をZ方向として定義したものである。更に、直交座標系は、独立した座標系の3次元データを統一的に扱えるようにするために、書画台105を含む平面をXY平面とし、前記XY平面から上方に垂直な向きをZ軸として定義された座標系である。距離画像センサ部108は、距離測定装置、距離測定手段の一例である。
図1(c)は、直交座標系と、カメラ部103を中心としたカメラ座標系を用いて表現された空間と、カメラ部103が撮像する画像平面との関係を示す図である。座標系を変換する場合の例として、直交座標系における3次元点P[X,Y,Z]をカメラ座標系における3次元点Pc[Xc,Yc,Zc]へ変換する処理を示す。直交座標系における3次元点P[X,Y,Z]は、(1)式によって、カメラ座標系における3次元点Pc[Xc,Yc,Zc]へ変換できる。
Figure 0006399840
Rc及びtcは、直交座標系に対するカメラの姿勢(回転)と位置(並進)によって求まる外部パラメータによって構成され、Rcを3×3の回転行列、tcを並進ベクトルと呼ぶ。逆に、カメラ座標系で定義された3次元点は、(2)式によって、直交座標系への変換することができる。
Figure 0006399840
カメラ部103で撮影される2次元のカメラ画像平面は、カメラ部103によって3次元空間中の3次元情報が2次元情報に変換されたものである。即ち、カメラ座標系上での3次元点Pc[Xc,Yc,Zc]は、(3)式によって透視投影変換することでカメラ画像平面での2次元座標pc[xp,yp]に変換することができる。
Figure 0006399840
(3)式のAは、カメラの内部パラメータと呼ばれ、焦点距離と画像中心などで表現される3×3の行列である。
以上のように、直交座標系で表された3次元点群は、(1)式と(3)式とを用いることで、カメラ座標系での3次元点群座標やカメラ画像平面上での座標に変換できる。なお、各ハードウェアデバイスの内部パラメータ及び直交座標系に対する位置姿勢(外部パラメータ)は、公知のキャリブレーション手法により、予めキャリブレーションされているものとする。以下、特に断りがなく3次元点群と表記した場合は、前記表記は、直交座標系における3次元データを表しているものとする。
[カメラスキャナのコントローラのハードウェア構成]
図2は、コントローラ部102等のハードウェア構成の一例を示す図である。
コントローラ部102は、システムバス201に接続されたCPU202、RAM203、ROM204、HDD205、画像処理プロセッサ207、カメラI/F208、ディスプレイコントローラ209、を含む。コントローラ部102は、更に、シリアルI/F210、オーディオコントローラ211及びUSBコントローラ212を含む。
CPU202は、コントローラ部102全体の動作を制御する中央演算装置である。RAM203は、揮発性メモリである。ROM204は不揮発性メモリであり、CPU202の起動用プログラムが格納されている。HDD205は、RAM203と比較して大容量なハードディスクドライブ(HDD)である。HDD205にはコントローラ部102の実行する、カメラスキャナ101の制御用プログラム等が格納されている。
CPU202は、電源がONされた場合等の起動時、ROM204に格納されている起動用プログラムを実行する。CPU202は、前記起動用プログラムの実行により実現される機能を介して、HDD205に格納されている制御用プログラムを読み出し、RAM203上に展開する。CPU202は、起動用プログラムを実行すると、続けてRAM203上に展開した制御用プログラムを実行する。また、CPU202は、制御用プログラムの実行により実現される機能による動作に用いるデータもRAM203上に格納して読み書きを行う。CPU202は、更に、HDD205に対して制御用プログラムの動作に必要な各種設定や、カメラ入力によって生成した画像データ等を格納することができ、読み込むこともできる。
画像処理プロセッサ207は、RAM203に格納された画像データを読み出して処理し、RAM203へ書き戻す。画像処理プロセッサ207が実行する画像処理は、画像の回転、変倍、色変換等である。
カメラI/F208は、カメラ部103及び距離画像センサ部108と接続される。CPU202は、カメラI/F208を介して、カメラ部103から画像データと、距離画像センサ部108から距離画像データと、を取得してRAM203へ書き込む。また、CPU202は、カメラI/F208を介して、制御コマンドをカメラ部103及び距離画像センサ部108へ送信し、カメラ部103及び距離画像センサ部108の設定を行う。
また、コントローラ部102は、ディスプレイコントローラ209、シリアルI/F210、オーディオコントローラ211及びUSBコントローラ212等を更に含むことができる。
CPU202は、ディスプレイコントローラ209を介して、ディスプレイへの画像データの表示を制御する。ディスプレイコントローラ209は、プロジェクタ107及びLCDタッチパネル230に接続されていてもよい。
CPU202は、シリアルI/F210を介して、シリアル信号の入出力を行う。シリアルI/F210は、LCDタッチパネル230に接続され、CPU202は、LCDタッチパネル230が使用者により押下されたときに、シリアルI/F210を介して押下されたLCDタッチパネル230上の座標を取得する。
オーディオコントローラ211は、スピーカ240に接続される。CPU202は、オーディオコントローラ211を介して、音声データをアナログ音声信号に変換し、スピーカ240を通じて音声を出力する。
CPU202は、USBコントローラ212を介して、外付けのUSBデバイスの制御を行う。ここでは、USBコントローラ212は、USBメモリやSDカードなどの外部メモリ250に接続され、CPU202による外部メモリ250へのデータの読み書きに利用される。
CPU202が、ROM204又はHDD205に記憶されたプログラムに基づき処理を実行することによって、後述するカメラスキャナのソフトウェア構成及び後述するフローチャートの処理が実現される。
[カメラスキャナのソフトウェア構成]
図3は、カメラスキャナ101のソフトウェア構成の一例を示す図である。
メイン制御部302は、制御の中心であり、ソフトウェア301の構成内の他の各モジュールを制御する。画像取得部316は、画像入力処理を行うモジュールであり、カメラ画像取得部307、距離画像取得部308等を含む。カメラ画像取得部307は、カメラI/F208を介してカメラ部103が出力する画像データを取得し、RAM203へ格納する。距離画像取得部308は、カメラI/F208を介して距離画像センサ部108が出力する距離画像データを取得し、RAM203へ格納する。距離画像取得部308の処理の詳細は、図4、5を用いて後述する。
認識処理部317は、カメラ画像取得部307、距離画像取得部308が取得する画像データから書画台105上の物体の動きを検知して認識するモジュールであり、ジェスチャ認識部309、物体検知部310等を含む。ジェスチャ認識部309は、画像取得部316から書画台105上の画像を取得し続け、使用者によるタッチ等のジェスチャを検知するとメイン制御部302へ通知する。物体検知部310は、メイン制御部302から物体載置待ち処理又は物体除去待ち処理の通知を受けると、画像取得部316から書画台105がカメラ部103により撮像された画像を取得する。そして、物体検知部310は、書画台105上に物体が置かれて静止するタイミング又は物体が取り除かれるタイミングを検知する処理を行う。
スキャン処理部318は、書籍のスキャンを行うモジュールであり、書籍形状取得部311、書籍画像取得部312等を含む。書籍形状取得部311は、距離画像情報と輝度画像情報とを用いてページ端などの輪郭を特定する処理を行う。書籍画像取得部312は、書籍形状取得部311で取得した輪郭を基に書籍の厚みによる歪みを補正した画像を作成する。距離画像とは、画素ごとにカメラ等の入力装置から対象物までの距離の値を持った画像である。輝度画像とは、画素ごとの値に輝度値を持った画像である。輝度画像情報は、輝度情報の一例である。
ユーザーインターフェイス部303は、GUI部品生成表示部314、投射領域検出部315等を含む。GUI部品生成表示部314は、メイン制御部302からの要求を受け、メッセージやボタン等のGUI部品を生成する。そして、GUI部品生成表示部314は、表示部306へ生成したGUI部品の表示を要求する。なお、投射領域検出部315は、書画台105上のGUI部品の表示場所を検出する。表示部306は、ディスプレイコントローラ209を介して、プロジェクタ107又はLCDタッチパネル230に対してGUI部品生成表示部314により要求されたGUI部品の表示を行う。プロジェクタ107は、書画台105に向けて設置されているため、書画台105上にGUI部品を投射することができる。また、ユーザーインターフェイス部303は、ジェスチャ認識部309により認識されたタッチ等のジェスチャ操作、又はシリアルI/F210を介したLCDタッチパネル230からの入力操作、前記ジェスチャ操作及び前記入力操作の座標を受信する。そして、ユーザーインターフェイス部303は、表示部306に表示されている操作画面の内容と操作が行われた座標とを対応させて、ボタンの押下等の操作内容を判定する。ユーザーインターフェイス部303は、前記操作内容をメイン制御部302へ通知することにより、操作者の操作を受け付ける。
データ管理部305は、ソフトウェア301の処理において生成された作業データ等の様々なデータをHDD205上に予め定められた領域へ保存し、管理する。データ管理部305は、例えば、カメラ画像取得部307、距離画像取得部308で取得した画像や、書籍形状取得部311で取得したページ端の輪郭等のデータをHDD205上に予め定められた領域へ保存し、管理する。前記領域は、ROM204、HDD205等の記憶部に予め設定されていてもよい。また、データ管理部305は、使用者によるLCDタッチパネル230等の操作部への前記領域の指定操作に基づいて、前記記憶部に前記領域を設定してもよいし、前記記憶部に予め定められている領域を変更してもよい。
[距離画像センサ及び距離画像取得部の説明]
図2に距離画像センサ部108の構成を示している。距離画像センサ部108は、赤外線によるパターン投射方式の距離画像センサである。赤外線パターン投射部261は、対象物に、人の目には不可視である赤外線を用いて3次元測定パターンを投射する。赤外線カメラ262は、前記対象物に投射した前記3次元測定パターンを読みとるカメラである。RGBカメラ263は、人の目に見える可視光をRGB信号で撮影するカメラである。
距離画像取得部308の処理を図4のフローチャートを用いて説明する。また、図5(a)〜(c)は距離画像取得部308の計測原理の説明を示す図である。
距離画像取得部308が処理を開始すると、図4のフローチャートの処理が開始される。
S401において、距離画像取得部308は、赤外線パターン投射部261を介して、図5(a)に示すように赤外線による3次元形状測定パターン522を対象物521に投射する。
S402において、距離画像取得部308は、RGBカメラ263を介して対象物を撮影したRGBカメラ画像523と、赤外線カメラ262を介してS401で投射した3次元形状測定パターン522を撮影した赤外線カメラ画像524と、を取得する。なお、赤外線カメラ262とRGBカメラ263とでは、設置位置が異なるため、図5(c)に示すようにそれぞれで撮影される2つのRGBカメラ画像523及び赤外線カメラ画像524の撮影領域が異なる。
S403において、距離画像取得部308は、赤外線カメラ262の座標系からRGBカメラ263の座標系への座標系変換を用いて赤外線カメラ画像524の座標系をRGBカメラ画像523の座標系に合わせる。なお、赤外線カメラ262とRGBカメラ263との相対位置や、赤外線カメラ262、RGBカメラ263のそれぞれの内部パラメータは、事前のキャリブレーション処理により距離画像取得部308にとって既知であるとする。
S404において、距離画像取得部308は、図5(c)に示すように、3次元形状測定パターン522とS403で座標変換を行った赤外線カメラ画像524との間での対応点を抽出する。距離画像取得部308は、例えば、赤外線カメラ画像524上の1点を3次元形状測定パターン522上から探索して、同一の点が検出された場合に対応付けを行う。また、距離画像取得部308は、例えば、赤外線カメラ画像524の画素の周辺のパターンを3次元形状測定パターン522上から探索し、一番類似度が高い部分と対応付けてもよい。
S405において、距離画像取得部308は、赤外線パターン投射部261と赤外線カメラ262とを結ぶ線分を基線525として三角測量の原理を用いて計算を行うことにより、赤外線カメラ262からの距離を算出する。距離画像取得部308は、S404で対応付けが出来た画素については、赤外線カメラ262からの距離を算出して画素値とし、対応付けが出来なかった画素については、距離の計測が出来なかった部分として無効値とする処理を行う。距離画像取得部308は、前記処理をS403で座標変換を行った赤外線カメラ画像524の全画素に対して行うことで、各画素に距離値が入った距離画像を生成する。
S406において、距離画像取得部308は、S405で生成された前記距離画像の各画素にRGBカメラ画像523のRGB値を保存することにより、1画素につきR、G、B、距離の4つの値を持つ距離画像を生成する。前記生成された距離画像は、距離画像センサ部108のRGBカメラ263で定義された距離画像センサ座標系が基準となっている。
S407において、距離画像取得部308は、図1(b)で上述したように、距離画像センサ座標系として得られた距離データを直交座標系における3次元点群に変換する。以後、特に指定がなく3次元点群と表記した場合は、直交座標系における3次元点群を示すものとする。
なお、本実施形態では、距離画像センサ部108は、赤外線パターン投射方式を採用しているが、他の方式の距離画像センサを用いることも可能である。例えば、距離画像センサ部108は、2つのRGBカメラでステレオ立体視を行うステレオ方式や、レーザー光の飛行時間を検出することで距離を測定するTOF(Time of Flight)方式を用いてもよい。
続いて、書籍の見開きページ端検出の処理についての詳細を説明する。書籍の見開きページ端は、図6の境界601に示すような見開き書籍の最表面にある1ページの境界を示す。本実施形態では、図6の境界602に示すような本全体と背景との境界を検出するのではなく、前記書籍の見開きページ端を検出する技術を示す。
図7は、ページ端検出処理全体のフローチャートである。
S701において、距離画像取得部308は、背景の距離画像を算出する。S7011において、距離画像取得部308は、書籍の存在しない書画台105の距離画像を予め定められたフレーム数だけ取得し、RAM203に記録する。次に、S7012において、距離画像取得部308は、予め定められたフレーム数の平均となる距離画像を算出しRAM203上に記録する。S7012で算出された前記距離画像を、本実施形態では背景距離画像とする。前記フレーム数は、ROM204、HDD205等の記憶部に記憶されているとする。距離画像取得部308は、前記記憶部から読み込むことで、前記フレーム数を取得してもよい。また、距離画像取得部308は、使用者によるLCDタッチパネル230等の操作部への前記フレーム数の指定操作に基づいて、前記フレーム数を取得してもよいし、前記記憶部に記憶されているフレーム数を変更してもよい。
S702において、書籍形状取得部311は、書籍のみの距離画像情報の算出を行う。S702では、書籍形状取得部311は、物体検知部310により書籍が書画台に置かれたことが検知されたか否かの情報を検出する。書籍形状取得部311は、前記情報を検出した場合、距離画像取得部308から書籍が置かれた書画台105の距離画像を入力距離画像として取得する。前景と背景とを画像情報から分離する方法としては、背景差分法等が周知の技術として知られている。本実施形態では、書籍形状取得部311は、前記距離画像に対して背景差分法を行い、入力距離画像と背景距離画像との差分が予め定められた閾値以上の箇所だけを残す処理を行う。また、書籍形状取得部311は、距離差が予め定められた閾値よりも小さい箇所は黒く塗りつぶし、距離情報がないものとして扱う。書籍形状取得部311は、例えばS702の処理によって背景距離画像と入力距離画像の距離差が閾値より大きい箇所を書籍領域全体の距離画像として算出し、RAM203に記録する。前記閾値は、ROM204、HDD205等の記憶部に記憶されているとする。書籍形状取得部311は、前記記憶部から読み込むことで、前記閾値を取得してもよい。また、書籍形状取得部311は、使用者によるLCDタッチパネル230等の操作部への前記閾値の指定操作に基づいて、前記閾値を取得してもよいし、前記記憶部に記憶されている閾値を変更してもよい。
S703において、書籍形状取得部311は、書籍領域全体の距離画像から輪郭候補点群の検出を行う。前記輪郭候補点群は、対象が書籍の場合、見開きページ端であり、説明のために以降は輪郭候補点群をページ端候補点群と表現する。S703における輪郭候補点群検出の処理の詳細については、図8で後述する。
S706において、書籍形状取得部311は、ページ端候補点群に基づいて、S708の線分検出処理を適用するための領域である線分検出適用領域を決定する。S706の処理の詳細は、図12で後述する。
S708において、書籍形状取得部311は、S706で決定された線分検出適用領域内の輝度画像情報から複数の線分を検出する。S708の処理の詳細は、図13で後述する。
S709において、書籍形状取得部311は、S708で検出された複数の線分の中から一つの線分をページ端として特定する。S709の処理の詳細については、図15で後述する。
図8は、輪郭候補点群検出処理のフローチャートである。書籍形状取得部311により処理されるS703の輪郭候補点群検出処理についての詳細について図8を用いて示す。
S801において、書籍形状取得部311は、距離画像情報を直交座標系の3次元点群に変換する。
S802において、書籍形状取得部311は、直交座標系でのX、Y方向を画像中のX、Y方向として1pixel内の輝度をZ方向の値に応じて表現した画像を生成する。以下、前記画像は、俯瞰距離画像とする。俯瞰距離画像の例を図9(a)に示す。S802の処理によって、書籍形状取得部311は、距離センサが書籍を斜めから撮影したとしても、真上から俯瞰したような書籍の距離画像情報を取得することができる。また、背景差分法による処理と同様に書籍の距離情報がない箇所は黒く塗りつぶされ、黒く塗りつぶされた箇所は、距離情報が存在しないものとしている。
S803において、書籍形状取得部311は、図9(b)の矩形901に示すように俯瞰距離画像に存在する距離情報を全て包含する矩形領域を決定する。前記距離情報全てを包含する矩形領域を決定する方法としては、例えばOpenCV内の関数であるcv::minAreaRect関数の利用等が周知の技術である。
S804において、書籍形状取得部311は、図9(c)の分割線902に示すように、S803で決定された矩形領域中の短軸に対して予め定められた数の分割線を作成する。前記分割線の数は、ROM204、HDD205等の記憶部に記憶されているとする。書籍形状取得部311は、前記記憶部から読み込むことで、前記分割線の数を取得してもよい。また、書籍形状取得部311は、使用者によるLCDタッチパネル230等の操作部への前記分割線の数の指定操作に基づいて、前記分割線の数を取得してもよいし、前記記憶部に記憶されている分割線の数を変更してもよい。
S805において、書籍形状取得部311は、S804で作成した分割線上の距離情報を取得する。書籍形状取得部311は、例えば、予め定められた間隔に従って、各分割線の開始点から終了点までの距離画像情報を取得することで分割線上の距離情報を取得することができる。S805で取得した分割線上の距離情報の結果の一例を図9(d)に示す。書籍形状取得部311は、図9(d)のように、書籍の表面形状をグラフとして取得することができる。以降、特に断りがなく表面形状と表記した場合は、S805までのステップで取得した図9(d)のようなグラフを示すものとする。前記間隔は、ROM204、HDD205等の記憶部に記憶されているとする。書籍形状取得部311は、前記記憶部から読み込むことで、前記間隔を取得してもよい。また、書籍形状取得部311は、使用者によるLCDタッチパネル230等の操作部への前記間隔の指定操作に基づいて、前記間隔を取得してもよいし、前記記憶部に記憶されている間隔を変更してもよい。
S806において、書籍形状取得部311は、S805で取得した分割線上の距離情報に基づいて、ページ端候補点検出の処理を行う。S806の処理の詳細について、図10を用いて示す。
図10は、分割線上のページ候補点検出の処理のフローチャートである。また、図10は、S806の処理の詳細を示したフローチャートでもある。なお、分割線上のページ端候補点検出の説明を図11に示す。図11は、割線上のページ候補点検出についての説明を示す図である。図11において、ページ端候補点検出の処理は、書籍中央から書籍端に向けて行うものとして示されているが、書籍端から書籍中央に向けて検出を行うものとしてもよい。また、本実施形態及び実施形態2、3において、図10、図11の前記分割線上のページ端候補点検出の処理は、一度の処理で書籍の片端のページ端候補点の検出を行うものとして説明する。しかし、一度のページ端候補点検出の処理で、書籍の両端のページ端候補点の検出が行われるものとしてもよい。
図11(a)は、図9(d)の書籍の片端部分を拡大したものを示し、以降のS806及び図10のフローチャートの説明において、図11(a)に対しての例を示す。また、以降では開始点、終了点1及び終了点2を用いて説明するが、特に指定のない限り全て表面形状上にあるものとする。
S1001において、書籍形状取得部311は、分割線上のページ端候補点検出を行うための開始点の設定を行う。本実施形態では、前記分割線上の予め定められた箇所を開始点とする。前記開始点は、ROM204、HDD205等の記憶部に記憶されているとする。書籍形状取得部311は、前記記憶部から読み込むことで、前記開始点を取得してもよい。また、書籍形状取得部311は、使用者によるLCDタッチパネル230等の操作部への前記開始点の指定操作に基づいて、前記開始点を取得してもよいし、前記記憶部に記憶されている開始点を変更してもよい。
S1002において、書籍形状取得部311は、図11(b)のように前記分割線上の開始点から予め定められた区間に対して終了点1を設ける。前記区間は、ROM204、HDD205等の記憶部に記憶されているとする。書籍形状取得部311は、前記記憶部から読み込むことで、前記区間を取得してもよい。また、書籍形状取得部311は、使用者によるLCDタッチパネル230等の操作部への前記区間の指定操作に基づいて、前記区間を取得してもよいし、前記記憶部に記憶されている区間を変更してもよい。
S1003において、書籍形状取得部311は、開始点から終了点1を線分でつないだ場合の傾き1を導出する。傾き1の算出方法であるが、図11(a)のように(PX,PY)の二軸があり、開始点を(X1,Y1),終了点1を(X2,Y2)とすると、次の式で導出できる。
傾き1=arctan((Y2−Y1)/(X2−X1))
S1004において、書籍形状取得部311は、図11(c)のように終了点1から予め定められた区間に対して終了点2を設ける。前記区間は、ROM204、HDD205等の記憶部に記憶されているとする。書籍形状取得部311は、前記記憶部から読み込むことで、前記区間を取得してもよい。また、書籍形状取得部311は、使用者によるLCDタッチパネル230等の操作部への前記区間の指定操作に基づいて、前記区間を取得してもよいし、前記記憶部に記憶されている区間を変更してもよい。
S1005において、書籍形状取得部311は、終了点1と終了点2の傾きを傾き2として導出する。傾き2の導出方法は、前記傾き1の導出方法と同様である。
S1006において、書籍形状取得部311は、前記傾き1と前記傾き2の差分が閾値以上であるか否かの判定を行う。書籍形状取得部311は、前記傾き1と前記傾き2の差分が閾値以上と判定した場合(図11(e))、S1009の処理へ進む。書籍形状取得部311は、前記傾き1と前記傾き2の差分が閾値未満と判定した場合、S1007の処理へ進む。前記閾値は、ROM204、HDD205等の記憶部に記憶されているとする。書籍形状取得部311は、前記記憶部から読み込むことで、前記閾値を取得してもよい。また、書籍形状取得部311は、使用者によるLCDタッチパネル230等の操作部への前記閾値の指定操作に基づいて、前記閾値を取得してもよいし、前記記憶部に記憶されている閾値を変更してもよい。
S1007において、書籍形状取得部311は、終了点2の座標を終了点1に代入する。
S1008において、書籍形状取得部311は、S1007で終了点2の座標が代入された後の終了点1の座標が書籍の範囲外であるか否かの判定を行う。書籍形状取得部311は、終了点1の座標が書籍の範囲外である場合、分割線上のページ端候補点検出の処理を終了する。書籍形状取得部311は、終了点1の座標が書籍の範囲内である場合、S1003の処理へ進み、図11(d)のように、開始点から終了点2の座標が代入された終了点1に対しての傾きを傾き1として求める。
S1009において、書籍形状取得部311は、終了点1をページ端候補点として記録する。
S1010において、書籍形状取得部311は、図11(f)のように終了点1の座標を開始点に代入する。
S1011において、書籍形状取得部311は、終了点2の座標を終了点1に代入する。
書籍形状取得部311は、S1010とS1011との処理によってページ端候補点として検出された箇所を開始点として、S1003から同様に終了点1が書籍の範囲外であるまで探索を行う。本実施形態では、書籍形状取得部311は、分割線上の候補点を最も傾きの差が最大になった箇所や最も書籍中央部に近いもの一つを限定して取得するものとして説明する。
次に、書籍形状取得部311により実行されるS706の領域決定処理を示す。S706の領域決定処理についての詳細を図12に示す。図12は、領域決定処理のフローチャートである。
S1601において、書籍形状取得部311は、ページ端候補点群との誤差を最小とする線分を最小二乗法によって生成する。最小二乗法による線分は、例えばOpenCV内の関数であるcvFitLine関数の利用等の周知の技術で生成することができる。
S1602において、書籍形状取得部311は、距離画像センサ部108の測定性能から最大誤差を算出する。前記最大誤差は、距離画像センサ部108の測定誤差の一例である。
S1603において、書籍形状取得部311は、S1601で生成された線分にS1602で得られた誤差から算出される幅を設けて決定した矩形領域を、線分検出適用領域として決定する。S1602で得られた誤差から算出される幅は、誤差幅の一例である。本実施形態では、前記幅は、S1602で距離画像センサ部108の最大誤差に基づいて算出される値とした。しかし、書籍形状取得部311は、前記幅を、例えば予め使用者により設定された固定値、書籍の幅に応じて決定される値、カメラの解像度、キャリブレーションの誤差、書籍の厚み等に応じて決定してもよい。線分検出適用領域は、検査対象領域の一例である。
次に、書籍形状取得部311により実行されるS708の線分検出処理についての詳細を、図13を用いて示す。図13は、線分検出処理のフローチャートである。以降の処理において、本実施形態ではS706の処理で決定される線分検出適用領域は一つとしているが、複数の線分検出適用領域が存在する場合には各線分検出適用領域に対してそれぞれ処理を行うものとする。
S1201において、書籍形状取得部311は、カメラ画像取得部307から取得した輝度画像情報から、S706で決定された線分検出適用領域内の輝度画像情報を抽出する。
S1202において、書籍形状取得部311は、前記線分検出適用領域中の前記輝度画像情報に対してエッジ検出を行う。より具体的には、書籍形状取得部311は、前記線分検出適用領域中の前記輝度画像情報に対して1次微分フィルタをかけて輝度差が周囲に比べて大きい箇所を強調した結果の画像データを取得する。本実施形態では、書籍形状取得部311は、一次微分フィルタを利用してエッジ検出を行っているが、ラプラシアンなどの二次微分フィルタを利用してエッジ検出を行ってもよい。
S1203において、書籍形状取得部311は、S1202でエッジ検出された画像に対してHough変換を用いて予め定められた数だけ線分検出を行う。線分検出の方法としては、例えばOpenCV内にあるcvHoughLines2関数のようなHough変換等が周知の技術として知られている。前記検出を行う線分の数は、ROM204、HDD205等の記憶部に記憶されているとする。書籍形状取得部311は、前記記憶部から読み込むことで、前記検出を行う線分の数を取得してもよい。また、書籍形状取得部311は、使用者によるLCDタッチパネル230等の操作部への前記検出を行う線分の数の指定操作に基づいて、前記検出を行う線分の数を取得するようにしてもよいし、前記記憶部に記憶されている検出を行う線分の数を変更してもよい。
次に、書籍形状取得部311により実行されるS709の線分特定処理についての詳細を、図14及び図15を用いて示す。図14は、線分特定処理の説明を示す図である。図15は、線分特定処理のフローチャートである。以下の説明の中で特に指定のない限り、S709でのページ端候補点群は、線分検出適用領域を決定するために用いられたページ端候補点群とする。また、書籍形状取得部311は、複数の線分検出適用領域が存在する場合には各線分検出適用領域に対して、それぞれ処理を行うものとする。
図14(a)の点群1301がページ端候補点群であるとし、図14(b)の線分1302、1303がS708で検出された複数の線分として以下の例を説明する。
S1401において、書籍形状取得部311は、S708で検出した複数の線分の中から一つの線分を線分L1として選択する。図14(c)、(d)では線分1303が線分L1として選択された例を説明する。
S1402において、書籍形状取得部311は、RAM203等のメモリ上に存在する総合距離差の値を0にする。前記総合距離差には、ページ端候補点群の中のページ端候補点と線分L1との距離の合計が格納される。
S1403において、書籍形状取得部311は、点群1301の中から、一つの点を点Pとして選択する。
S1404において、書籍形状取得部311は、図14(d)に示すように、点Pを通り線分L1と垂直な傾きである線分L2を求める。
S1405において、書籍形状取得部311は、線分L1と線分L2との交点を交点Cとして求める。
S1406において、書籍形状取得部311は、交点Cと点Pとの距離差Dを導出する。ここで距離差Dは、点Pと線分L1との距離となる。
S1407において、書籍形状取得部311は、総合距離差に距離差Dを加算する。
S1408において、書籍形状取得部311は、点群1301内の全ての点に対して処理が終了したかを判定し、全て終了していないならば、S1403〜S1407までの処理をまだ処理が終了していない点に対して行う。
S1409において、書籍形状取得部311は、総合距離差が図15のフローチャート開始時から最小であるかの判定を行う。より具体的には、書籍形状取得部311は、総合距離差と最小総合距離差として保持されている値を比較し、前記総合距離差が最小総合距離差未満であった場合、総合距離差が最小であるとして最小総合距離差に前記総合距離差の値を代入する。書籍形状取得部311は、総合距離差が最小であるならば、S1410の処理へ進み、総合距離差が最小でないならばS1411に進む。
S1410において、書籍形状取得部311は、線分L1を検出すべきページ端としてRAM203に記録する。
S1411において、書籍形状取得部311は、S1401〜S1410の処理が全ての線分に対して終了したか否かを判定する。書籍形状取得部311は、全ての線分に対して前記処理が終了した場合S709の処理を終了し、全ての線分に対して処理が終了していない場合、S1401の処理へ進む。
上述のS709の線分特定処理の結果の一例を図14(e)、(f)に示す。
例えば、図14(e)の線分1302のように見開きページ端と線分がほぼ一致する場合には、ページ端の候補点群との距離差は、前記線分が見開きページ端とずれている場合に比べて小さくなる。逆に図14(f)の線分1303のように線分が書籍全体の輪郭部分と一致する場合には、ページ端の候補点群との距離差は、前記線分が見開きページ端とほぼ一致する場合に比べて大きくなる。本実施形態では、書籍形状取得部311は、S709の線分特定処理を実行することによって、前記ページ端の候補点群との距離差に基づいて、検出すべきページ端を特定する。
本実施形態の処理によって、書籍形状取得部311は、以下の処理が可能となる。即ち、書籍形状取得部311は、図14(b)の線分1302、1303のように輪郭の候補となる複数の線分が生じた場合でも、S703の処理によって取得したページ端の候補点群との距離差を最小とするものを検出すべき線分として特定できる。
<実施形態2>
実施形態1では、俯瞰距離画像に存在する距離情報を全て包含する矩形領域の分割線上のページ端候補点を一つだけ検出することを例としてS703からの説明を行った。しかし、例えば図16(a)のように書籍が分厚いためにページ端に複数の段差が生じた場合、前記分割線上のページ端候補点は、前記分割線上で複数存在することがある。前記分割線上のページ端候補点が前記分割線上で複数存在する場合、図16(b)のようにページ端候補点群から複数の矩形領域が作成される。しかし、実施形態1では、書籍形状取得部311は、どちらの領域に対して線分検出を適用するべきかの判定ができない。本実施形態では、ページ端に複数の段差が生じた場合に最も書籍中央部に近い領域を線分検出適用領域として選択する処理について説明する。本実施形態における書籍形状取得部311の処理は、実施形態1と同じく、図7のフローチャートで表現される。ただし、S706の領域決定処理は、図17のフローチャートで表現される。
S1701において、書籍形状取得部311は、S703の輪郭候補点群検出処理で検出したページ端候補点群のクラスタリングを行う。クラスタリング方法としては、例えば自動的にクラスタ数を決定して、クラスタリングを行うことが可能であるMeanShift法が例として挙げられる。図16(b)のように複数の段差上にページ端の候補点群が生じた場合、例えばMeanShift法では、S706で矩形を決定するために用いる幅に基づいて点群をクラスタリングすることができる。しかし、クラスタリングの方法としては特に上記方法に限定するものではなく、段差ごとに点群がクラス分けされればよい。前記クラス分けされた点群は、同じクラスに属するページ端候補点の集合である。
S1702において、書籍形状取得部311は、S1701で分類されたクラスの中から、一つのクラスに属する点群を選択する。
S1705〜S1707において、書籍形状取得部311は、前記一つのクラスに属する点群に対して、点群との誤差を最小とする線分を生成し、前記線分に幅を持たせて矩形領域を決定する。S1705の処理内容については、S1601と同じ処理内容である。S1706の処理内容については、S1602と同じ処理内容である。S1707の処理内容については、S1603と同じ処理内容である。
S1703において、書籍形状取得部311は、S1701で分類された全てのクラスに対して処理が終了したか否かを判定する。書籍形状取得部311は、全てのクラスの処理が終了していない場合、まだ終了していないクラスの点群をS1702で選択し、同様にS1702〜S1703までの処理を行う。書籍形状取得部311は、前記全てのクラスに対して処理が終了した場合、S1704の処理へ進む。
S1704において、書籍形状取得部311は、前記書籍の中央部に最も近い領域を線分検出適用領域として決定する。書籍形状取得部311は、S1704で選択された線分検出適用領域に対して図7のS708〜S709までの処理を行い、ページ端を特定する。
例えば図16(b)のように段差状にページ端の候補点群が生じた場合、矩形領域1501、1502のように矩形領域が複数生じる。しかし、本実施形態記載の処理によって、書籍形状取得部311は、段差状にページ端の候補点群が生じた場合でも前記書籍の中央部に近い領域である矩形領域1501を線分検出適用領域として判定し、ページ端を特定することができる。
<実施形態3>
実施形態2と同様の状況においての別の処理を実施形態3に記載する。図18は、ページ端検出処理全体のフローチャートである。図18のフローチャートは、実施形態3全体のページ端検出処理のフローチャートである。
S1901において、距離画像取得部308は、背景距離画像を取得する。S1901の処理は、S701と同じ処理である。
S1902において、書籍形状取得部311は、背景差分法によって、書籍全体の距離情報を取得する。S1902の処理は、S702と同じ処理である。
S1903において、書籍形状取得部311は、ページ端の候補点群を書籍全体の距離情報から取得する。S1903の処理はS703と同じ処理である。
S1904において、書籍形状取得部311は、線分検出適用領域を決定する。S1904の処理は、本実施形態における領域決定処理である。
S1904の処理のフローチャートを図19に示す。S1801の処理は、S1701の処理と同じ処理である。S1802の処理は、S1702の処理と同じ処理である。S1805の処理は、S1705の処理と同じ処理である。S1806の処理は、S1706の処理と同じ処理である。S1807の処理は、S1707の処理と同じ処理である。
S1803の処理は、S1703の処理と同じ処理である。
図19のフローチャートによる領域決定処理によって、ページ端候補点群がクラスタリングされ、複数の矩形領域が決定される。
S1905〜S1906において、書籍形状取得部311は、S1904で決定された各矩形領域に対して各矩形領域から一つの線分をページ端として特定しRAM203に記録する。
S1905において、書籍形状取得部311は、S1904で決定された各矩形領域内の輝度画像情報から複数の線分を検出する。S1905の処理は、S708の処理と同じ処理である。
S1906において、書籍形状取得部311は、S1904で決定された矩形領域ごとにS1905で検出された複数の線分の中から一つの線分をページ端として特定する。S1906の処理は、S709の処理と同じ処理である。
S1907において、書籍形状取得部311は、S1905〜S1906でページ端として特定されRAM203に記録された各線分の中で、最も書籍中央部に近い線分を選択し処理を終了する。
本実施形態記載の処理によって、書籍形状取得部311は、以下の処理が可能となる。即ち、書籍形状取得部311は、図16のような状況において、線分1503、1504のように複数の線分をページ端として取得した場合でも、線分1503のように最も書籍の中央に近い線分をページ端として選択することができる。
<実施形態4>
実施形態2、3では、複数の領域が生じた場合、書籍の見開きページ端は段差中で最も書籍中央部に近くにあるとしてページ端を取得する処理について示した。しかし、必ずしも線分検出すべき領域が内側に生じるとは限らない。本実施形態における説明図を図20に示す。図20は、本実施形態の処理全体の説明を示す図である。本実施形態が想定する状況には、例えば図20(a)に示すようなZ折が例として挙げられる。図20(a)のようにZ折が書籍内に存在する場合、ページ端の候補点から決定される領域は、複数生じるが、書籍形状取得部311は、実施形態2、3では最も書籍中央部に近いものだけを選択する。しかし、Z折のような例に対して、書籍形状取得部311は、書籍中央部に近いものを選択するべきではない。上述の問題に鑑みて、本実施形態では使用者の指示に基づいて輪郭を選択する方法について示す。
本実施形態において書籍形状取得部311により実行される、使用者による選択操作に基づくページ端選択のフローチャートについて図21に示す。図21は、使用者によるページ端選択処理のフローチャートである。
S2101において、書籍形状取得部311は、カメラ画像取得部307により取得された書籍の外観画像をプロジェクタ107で書画台105に投射し、表示する。本実施形態では、書籍形状取得部311は、例えば図20(b)の輪郭2001のように実施形態2、3の処理で検出したページ端から得られる輪郭を書籍に重畳させた画像を作成し、プロジェクタ107を介し、前記画像を書画台105に投射し、表示している。また、書籍形状取得部311は、ボタン2002のように"修正"ボタンを表示する等して、使用者に輪郭の候補が複数存在する旨を示してもよい。"修正"ボタンとして本実施形態では示しているが、ボタンに特に限定するものではなく、輪郭の候補が複数存在する旨が使用者に伝わればよい。
S2103において、書籍形状取得部311は、ジェスチャ認識部309により使用者による修正ボタンの押下の操作が認識されたか否かを判定する。ジェスチャの認識技術については、例えば指先による平面タッチの検出技術等が知られている。書籍形状取得部311は、前記技術によって、平面へのタッチを検出することができる。ただし、使用する技術は、使用者の指先による平面タッチの検出が可能であれば特に上記技術に限定されない。書籍形状取得部311は、ジェスチャ認識部309により図20(c)のように使用者による修正ボタンの押下の操作が認識されたと判定すると、S2104の処理へ進む。また、書籍形状取得部311は、ジェスチャ認識部309により使用者による修正ボタンの押下の操作が認識されないと判定するとS2103の処理へ進む。
S2104において、書籍形状取得部311は、S709でRAM203上に記録した線分を書籍に重畳させた画像を作成し、プロジェクタ107を介して、図20(d)のように前記画像を書画台105に投射し、表示する。図20(d)の線分2004、2005は、S709でRAM203に記録された各矩形領域からページ端として特定された線分をそれぞれ示すものとする。また、書籍形状取得部311は、使用者に前記各矩形領域からページ端として特定した線分を選択させる意図を示すメッセージ2003を表示する。
S2105において、書籍形状取得部311は、ジェスチャ認識部309により使用者による線分の選択の操作が認識されたか否かを判定する。図20(e)は、使用者により線分2005が選択された例を示す。書籍形状取得部311は、使用者により線分の選択がなされた場合、S2106の処理へ進み、使用者により線分の選択がなされなかった場合、S2105の処理へ進む。
S2106において、書籍形状取得部311は、図20(f)の輪郭2006に示すようにS2105で使用者により選択された線分をページ端として最終決定する。
本実施形態の処理によって、書籍形状取得部311は、Z折等の複数のページ端の候補点から決定される領域が複数生じる場合でも、使用者による線分の選択の操作を検知することで、ページ端とする線分を決定することができる。
<その他の実施形態>
本発明は、上述の実施形態の1以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける1つ以上のプロセッサがプログラムを読み出し実行する処理でも実現可能である。また、1以上の機能を実現する回路(例えば、ASIC)によっても実現可能である。
101 カメラスキャナ、102 コントローラ部、103 カメラ部、107 プロジェクタ、108 距離画像センサ部、202 CPU

Claims (15)

  1. 画像中の被写体の距離画像情報に基づいて、前記被写体の輪郭の候補である複数の候補点を検出し、前記候補点に基づいて前記画像中の検査対象領域を決定する決定手段と、
    前記決定手段により決定された前記検査対象領域の中に存在する線分を前記検査対象領域の輝度情報に基づいて検出し、前記線分から前記候補点に基づいて前記被写体の輪郭である線分を特定する特定手段と、
    を有する画像処理装置。
  2. 撮影手段から、撮影された画像を取得する第1の取得手段と、
    距離測定手段から、測定された距離画像情報を取得する第2の取得手段と、
    前記決定手段は、前記第1の取得手段により取得された画像中の被写体についての前記第2の取得手段により取得された距離画像情報に基づいて、前記被写体の輪郭の候補である候補点を検出し、前記候補点に基づいて前記画像中の検査対象領域を決定する請求項1記載の画像処理装置。
  3. 前記決定手段は、前記距離画像情報から取得した前記被写体を含む領域の上に設定された分割線上の距離情報に基づいて、前記被写体の前記分割線上の輪郭の候補である候補点を検出する請求項1又は2記載の画像処理装置。
  4. 前記決定手段は、前記分割線上に設定された範囲の距離情報に基づいて前記候補点を検出する請求項3記載の画像処理装置。
  5. 前記決定手段は、前記距離画像情報を、前記被写体を俯瞰から写した画像となるように、変換して俯瞰距離画像を生成し、前記俯瞰距離画像の中の前記被写体を含む領域の中に設定された分割線上の距離情報に基づいて、前記被写体の前記分割線上の輪郭の候補である候補点を検出する請求項3又は4記載の画像処理装置。
  6. 前記決定手段は、前記分割線上に開始点と開始点から設定された距離だけ離れた終了点1と第1の終了点から設定された距離だけ離れた第2の終了点とを設定し、前記第1の終了点と開始点とから求まる距離情報の傾きと前記第2の終了点と前記第1の終了点とから求まる傾きとの差分が閾値以上である場合、前記第1の終了点を前記候補点として検出する請求項3乃至5何れか1項記載の画像処理装置。
  7. 前記決定手段は、検出した複数の前記候補点から生成した線分と前記距離測定手段の測定誤差とに基づいて検査対象領域を決定する請求項2乃至6何れか1項記載の画像処理装置。
  8. 前記決定手段は、検出した複数の前記候補点からの距離の合計が最小となる線分を取得し、距離測定手段の測定誤差に基づいて誤差幅を取得し、前記線分に前記誤差幅だけ幅を持たせた領域を検査対象領域として決定する請求項2乃至7何れか1項記載の画像処理装置。
  9. 前記特定手段は、検出された前記線分ごとに前記決定手段により検出された前記候補点から前記線分までの距離の合計を取得し、前記合計が最小となる線分を前記被写体の輪郭である線分として特定する請求項1乃至8何れか1項記載の画像処理装置。
  10. 前記決定手段は、検出した前記候補点を前記分割線上における前記候補点の位置に基づいて複数の集合に分類し、分類された前記候補点の集合の中から、前記被写体の中央に最も近い集合を取得し、前記取得した集合ごとに前記集合に含まれる複数の候補点に基づいて前記画像中の検査対象領域を取得し、前記画像から前記検査対象領域を決定する請求項3乃至9何れか1項記載の画像処理装置。
  11. 前記決定手段は、検出した前記候補点を前記分割線上における前記候補点の位置に基づいて複数の集合に分類し、分類された前記候補点の集合ごとに、前記集合に含まれる複数の候補点に基づいて前記画像中の検査対象領域を取得し、前記画像から前記検査対象領域を決定し、
    前記特定手段は、前記集合ごとに特定された線分の中から、前記分割線の中央に最も近い線分を前記被写体の輪郭である線分として特定する請求項3乃至9何れか1項記載の画像処理装置。
  12. 前記特定手段により複数の輪郭の候補となる線分が特定された場合、前記複数の線分を含む画面を表示する表示手段と、
    前記表示手段により表示される前記画面を介した選択操作に基づいて、前記複数の線分の中の1つを前記被写体の輪郭である線分として選択する選択手段を更に有する請求項1乃至9何れか1項記載の画像処理装置。
  13. 前記決定手段は、検出した前記候補点を前記分割線上における前記候補点の位置に基づいて複数の集合に分類し、分類された前記候補点の集合ごとに、前記集合に含まれる複数の候補点に基づいて前記画像中の検査対象領域を取得し、前記画像から前記検査対象領域を決定し、
    前記特定手段により特定された複数の線分を含む画面を表示する表示手段と、
    前記表示手段により表示される前記画面を介した選択操作に基づいて、前記複数の線分の中の1つを前記被写体の輪郭である線分として選択する選択手段を更に有する請求項3乃至9何れか1項記載の画像処理装置。
  14. 画像処理装置が実行する画像処理方法であって、
    画像中の被写体の距離画像情報に基づいて、前記被写体の輪郭の候補である複数の候補点を検出し、前記候補点に基づいて前記画像中の検査対象領域を決定する決定ステップと、
    前記決定ステップにより決定された前記検査対象領域の中に存在する線分を前記検査対象領域の輝度情報に基づいて検出し、前記線分から前記候補点に基づいて前記被写体の輪郭である線分を特定する特定ステップと、
    を含む画像処理方法。
  15. コンピュータに
    画像中の被写体の距離画像情報に基づいて、前記被写体の輪郭の候補である複数の候補点を検出し、前記候補点に基づいて前記画像中の検査対象領域を決定する決定ステップと、
    前記決定ステップにより決定された前記検査対象領域の中に存在する線分を前記検査対象領域の輝度情報に基づいて検出し、前記線分から前記候補点に基づいて前記被写体の輪郭である線分を特定する特定ステップと、
    を実行させるためのプログラム。
JP2014149065A 2014-07-22 2014-07-22 画像処理装置、画像処理方法及びプログラム Expired - Fee Related JP6399840B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2014149065A JP6399840B2 (ja) 2014-07-22 2014-07-22 画像処理装置、画像処理方法及びプログラム
US14/798,855 US9979858B2 (en) 2014-07-22 2015-07-14 Image processing apparatus, image processing method and program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2014149065A JP6399840B2 (ja) 2014-07-22 2014-07-22 画像処理装置、画像処理方法及びプログラム

Publications (2)

Publication Number Publication Date
JP2016024675A JP2016024675A (ja) 2016-02-08
JP6399840B2 true JP6399840B2 (ja) 2018-10-03

Family

ID=55167119

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2014149065A Expired - Fee Related JP6399840B2 (ja) 2014-07-22 2014-07-22 画像処理装置、画像処理方法及びプログラム

Country Status (2)

Country Link
US (1) US9979858B2 (ja)
JP (1) JP6399840B2 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10278607B2 (en) 2003-11-26 2019-05-07 Braemar Manufacturing, Llc System and method for processing and presenting arrhythmia information to facilitate heart arrhythmia identification and treatment

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108496204B (zh) * 2016-01-28 2020-03-10 夏普株式会社 书籍电子化方法及书籍电子化装置
DE102017210317A1 (de) * 2017-06-20 2018-12-20 Volkswagen Aktiengesellschaft Verfahren und Vorrichtung zum Erfassen einer Nutzereingabe anhand einer Geste
JP6746634B2 (ja) * 2018-06-25 2020-08-26 シャープ株式会社 書物電子化装置および書物電子化方法
CN112671993A (zh) * 2020-12-31 2021-04-16 北京千寻未来科技有限公司 信息获取装置、可展平柔性扫描仪和信息获取方法

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3965894B2 (ja) 2000-10-05 2007-08-29 富士ゼロックス株式会社 画像処理装置および画像処理方法
US6901167B2 (en) * 2001-04-04 2005-05-31 Microsoft Corporation Detecting multiple objects in digital image data
US7586490B2 (en) * 2004-10-20 2009-09-08 Siemens Aktiengesellschaft Systems and methods for three-dimensional sketching
US7697750B2 (en) * 2004-12-06 2010-04-13 John Castle Simmons Specially coherent optics
JP4779431B2 (ja) * 2005-05-11 2011-09-28 日本電気株式会社 対象物認識装置
US7808531B2 (en) * 2005-12-14 2010-10-05 Samsung Electronics Co., Ltd. Method and apparatus for auto white controlling
US8064691B2 (en) * 2007-05-15 2011-11-22 Creative Lifestyle, Inc. Method for identifying color in machine and computer vision applications
EP2051208A3 (en) * 2007-10-17 2017-05-24 Sony Interactive Entertainment Inc. Generating an asset for interactive entertainment using digital image capture
JP5671281B2 (ja) * 2010-08-20 2015-02-18 キヤノン株式会社 位置姿勢計測装置、位置姿勢計測装置の制御方法及びプログラム
JP2012118698A (ja) * 2010-11-30 2012-06-21 Fuji Heavy Ind Ltd 画像処理装置
JP5766073B2 (ja) * 2011-09-08 2015-08-19 株式会社Pfu 画像処理装置、画像処理方法、画像処理プログラム及び画像処理システム
US9514357B2 (en) * 2012-01-12 2016-12-06 Kofax, Inc. Systems and methods for mobile image capture and processing
JP5957357B2 (ja) * 2012-10-15 2016-07-27 株式会社日立ハイテクノロジーズ パターン検査・計測装置及びプログラム
US9390315B1 (en) * 2015-06-25 2016-07-12 A9.Com, Inc. Image match for featureless objects

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10278607B2 (en) 2003-11-26 2019-05-07 Braemar Manufacturing, Llc System and method for processing and presenting arrhythmia information to facilitate heart arrhythmia identification and treatment

Also Published As

Publication number Publication date
US20160027183A1 (en) 2016-01-28
US9979858B2 (en) 2018-05-22
JP2016024675A (ja) 2016-02-08

Similar Documents

Publication Publication Date Title
JP6399840B2 (ja) 画像処理装置、画像処理方法及びプログラム
US9024901B2 (en) Interactive whiteboards and programs
US10310675B2 (en) User interface apparatus and control method
JP4752918B2 (ja) 画像処理装置、画像照合方法、および、プログラム
JP6723814B2 (ja) 情報処理装置、その制御方法、プログラム、及び記憶媒体
US11037014B2 (en) Image processing apparatus, image processing method, and non-transitory computer-readable storage medium
JP2016170610A (ja) 三次元モデル処理装置およびカメラ校正システム
US10254893B2 (en) Operating apparatus, control method therefor, and storage medium storing program
JP2016103137A (ja) ユーザインタフェース装置、画像処理装置及び制御用プログラム
US9924066B2 (en) Image processing apparatus, information processing method, and program
JP6746419B2 (ja) 情報処理装置、及びその制御方法ならびにコンピュータプログラム
WO2019016879A1 (ja) 物体検出装置、及び、物体検出手法
JP6643825B2 (ja) 装置及び方法
US10116809B2 (en) Image processing apparatus, control method, and computer-readable storage medium, which obtains calibration image information with which to correct image data
JP6624861B2 (ja) 画像処理装置、制御方法およびプログラム
JP2019120618A (ja) 物体測定装置及びその制御方法、並びにプログラム
JP2017073039A (ja) 物体識別装置、物体識別方法及びプログラム
US10373324B2 (en) Measurement apparatus that scans original, method of controlling the same, and storage medium
JP2019101753A (ja) 物体形状測定装置及びその制御方法、並びにプログラム
JP2018191258A (ja) 画像読取装置、画像読取方法及びプログラム
JP2018191094A (ja) 原稿読取装置、原稿読取装置の制御方法、及びプログラム
JP6203070B2 (ja) スキャンシステムおよびその制御方法、並びにプログラム
JP6534411B2 (ja) 相対角度推定装置、相対角度推定方法、及び相対角度推定プログラム
JP2017033389A (ja) 画像処理装置、画像読取方法、コンピュータプログラム、及び記憶媒体
JP2017117372A (ja) 操作装置とその制御方法、及びプログラム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20170713

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20180607

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: 20180807

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20180904

R151 Written notification of patent or utility model registration

Ref document number: 6399840

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151

LAPS Cancellation because of no payment of annual fees