JP2018191258A - 画像読取装置、画像読取方法及びプログラム - Google Patents

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

Info

Publication number
JP2018191258A
JP2018191258A JP2017094968A JP2017094968A JP2018191258A JP 2018191258 A JP2018191258 A JP 2018191258A JP 2017094968 A JP2017094968 A JP 2017094968A JP 2017094968 A JP2017094968 A JP 2017094968A JP 2018191258 A JP2018191258 A JP 2018191258A
Authority
JP
Japan
Prior art keywords
image
document
contour
unit
reading object
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
Application number
JP2017094968A
Other languages
English (en)
Inventor
拓也 小川
Takuya Ogawa
拓也 小川
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 JP2017094968A priority Critical patent/JP2018191258A/ja
Publication of JP2018191258A publication Critical patent/JP2018191258A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Facsimile Scanning Arrangements (AREA)
  • Editing Of Facsimile Originals (AREA)

Abstract

【課題】読取対象物の輪郭を正確に抽出することができる画像読取装置を提供する。
【解決手段】カメラスキャナ101は、原稿902及び手901を含む原稿含有距離画像データを取得し、原稿含有距離画像データを二値化して二値化距離画像データを取得し、二値化距離画像データから手901の画像を除去して原稿902の概形を表す基準輪郭905を抽出し、手901の画像を除去する前の二値化距離画像データから基準輪郭905に基づいて原稿902の輪郭を抽出する。
【選択図】図8A

Description

本発明は、読取対象物の輪郭を抽出する画像読取装置、画像読取方法及びプログラムに関する。
書画台に載置される原稿を上方からカメラで撮影するカメラスキャナが知られている。このようなカメラスキャナでは、カメラが原稿を含む書画台の画像を撮影することにより手軽に原稿の画像を読み取ることができる。また、一の原稿を他の原稿に重ねて載置する際には、一の原稿を載置する前の画像と一の原稿を載置した後の画像を比較して一の原稿の輪郭を抽出し、該輪郭を用いて原稿の画像を読み取る(例えば、特許文献1参照。)。ここで、一の原稿と他の原稿の色や材質が似ていると、一の原稿の画像が他の原稿に紛れて一の原稿の輪郭を的確に抽出できないおそれがある。そこで、他の原稿の画像に含まれる特徴点と、一の原稿の画像に含まれる特徴点との対応関係を用いて一の原稿の輪郭を抽出する技術も提案されている(例えば、特許文献2参照。)。
また、他の原稿の画像に含まれる特徴点と、一の原稿の画像に含まれる特徴点とが類似する場合等、特徴点の対応関係を用いても一の原稿の輪郭を抽出することが困難な場合であっても、一の原稿の輪郭を抽出するための技術も提案されている。この技術では、一の原稿を書画台に載置する前に一の原稿の画像を撮影し、該画像から載置される前の一の原稿の輪郭を抽出し、該輪郭に基づく相似関係を用いて書画台に載置された後の一の原稿の画像を抽出する。このとき、書画台に載置される前の一の原稿はユーザの手によって保持されるため、書画台に載置される前の一の原稿の画像(以下、「載置前原稿画像」という。)にはユーザの手や腕の画像も映り込む。したがって、一の原稿の輪郭を抽出するためには当該載置前原稿画像からユーザの手や腕の画像を除去する必要がある。載置前原稿画像からユーザの手や腕の画像を除去する技術としては、撮影された画像中の肌色領域を抽出し、該肌色領域の色を変更して肌色領域を実質的に除去する技術が提案されている(例えば、特許文献3参照。)。
特開2007−201948号公報 特開2015−146481号公報 特開2013−247531号公報
しかしながら、特許文献3の技術を用いても、一の原稿の色が赤みを帯びて肌色に近い場合には、ユーザの手や腕の画像が一の原稿の画像に紛れてしまい、肌色領域を的確に抽出することができないことがある。若しくは、原稿の領域も肌色領域と判定されて除去されることがある。その結果、原稿の輪郭を正確に抽出することができないという問題がある。
本発明の目的は、読取対象物の輪郭を正確に抽出することができる画像読取装置、画像読取方法及びプログラムを提供することにある。
上記目的を達成するために、本発明の画像読取装置は、読取対象物及び該読取対象物の保持手段を含む画像を取得する画像取得手段と、前記取得された画像から前記保持手段の画像を除去して前記読取対象物の概形を表す基準輪郭を抽出する基準輪郭抽出手段と、前記取得された画像から前記基準輪郭に基づいて前記読取対象物の輪郭を抽出する輪郭抽出手段と、を備えることを特徴とする。
本発明によれば、読取対象物の輪郭を正確に抽出することができる。
本発明の第1の実施の形態に係る画像読取装置としてのカメラスキャナが含まれるネットワーク構成を示す図である。 図1におけるカメラスキャナの構成を概略的に示す図である。 図2のカメラスキャナにおける座標系を説明するための図である。 図3における直交座標系、カメラ座標系及びカメラ撮像平面の関係を示す図である。 図1のカメラスキャナのコントローラ部のハードウェア構成を示すブロック図である。 図5におけるCPUが実行するカメラスキャナの制御用プログラムの機能モジュールの構成を示すブロック図である。 図2における距離画像センサ部のハードウェア構成を示す図である。 第1の実施の形態に係る画像読取方法としての原稿輪郭抽出処理のフローチャートである。 ステップS803の距離画像データ二値化処理のフローチャートである。 ステップS804の基準輪郭抽出処理のフローチャートである。 ステップS805の原稿四隅抽出処理のフローチャートである。 図8Aの原稿輪郭抽出処理を説明するための工程図である。 本発明の第2の実施の形態に係る画像読取方法としての原稿輪郭抽出処理のフローチャートである。 ステップS1001の基準輪郭抽出処理のフローチャートである。 ステップS1002の原稿四隅抽出処理のフローチャートである。 図10Aの原稿輪郭抽出処理を説明するための工程図である。 本発明の第3の実施の形態に係る画像読取方法としての原稿輪郭抽出処理のフローチャートである。 ステップS1201の画像回転処理のフローチャートである。 図12Aの原稿輪郭抽出処理を説明するための工程図である。 本発明の第4の実施の形態に係る画像読取方法としての原稿輪郭抽出処理のフローチャートである。 ステップS1401の原稿四隅検証処理のフローチャートである。 図14Aの原稿輪郭抽出処理を説明するための工程図である。
以下、本発明の実施の形態について図面を参照しながら詳細に説明する。しかしながら、以下の実施の形態に記載されている構成はあくまで例示に過ぎず、本発明の範囲は実施の形態に記載されている構成によって限定されることはない。まず、本発明の第1の実施の形態について説明する。
図1は、本発明の第1の実施の形態に係る画像読取装置としてのカメラスキャナが含まれるネットワーク構成を示す図である。図1において、カメラスキャナ101はホストコンピュータ102及びプリンタ103とイーサネット(登録商標)等のネットワーク104を介して接続されている。本実施の形態では、ホストコンピュータ102からの指示に応じ、カメラスキャナ101によって画像を読み取るスキャン機能や、スキャン機能によって生成されたスキャンデータをプリンタ103によって出力するプリント機能が実行される。また、ホストコンピュータ102を介すること無くカメラスキャナ101へ直接に指示を行うことにより、スキャン機能やプリント機能を実行することもできる。
図2は、図1におけるカメラスキャナの構成を概略的に示す図である。図2において、カメラスキャナ101は、ハードウェアデバイスとしてのコントローラ部201、カメラ部202、腕部203、短焦点プロジェクタ207及び距離画像センサ部208を含む。カメラスキャナ101の本体を構成するコントローラ部201、撮像を行うためのカメラ部202、短焦点プロジェクタ207及び3次元距離センサからなる距離画像センサ部208は互いに腕部203によって連結されている。腕部203は複数の関節を有し、各関節において屈曲されることにより、伸長自在に構成される。
カメラスキャナ101は操作平面(操作面)を有する書画台204の脇に配置される。カメラ部202及び距離画像センサ部208は書画台204を指向し、カメラ部202は図中の破線で囲まれた操作平面上の読み取り領域205内の画像を読み取る。例えば、カメラ部202は読み取り領域205内に置かれた平面視矩形の原稿206の画像を読み取る。また、書画台204内にはターンテーブル209が設けられている。ターンテーブル209はコントローラ部201からの指示によって回転し、ターンテーブル209上に置かれた物体とカメラ部202の相対角度を変えることができる。カメラスキャナ101では、カメラ部202及び距離画像センサ部208が、書画台204の操作平面上に存在する物体を検知する検知部を構成する。カメラスキャナ101において、カメラ部202は単一解像度で画像を撮像するカメラからなるが、高解像度画像撮像と低解像度画像撮像の切り換えが可能なカメラであってもよい。なお、カメラスキャナ101は、書画台204に配置される後述のLCDタッチパネル513及び後述のスピーカ514を備えてもよい。さらに、カメラスキャナ101は、距離画像センサ部208以外に、周囲の環境情報を収集するための人感センサ、照度センサ、加速度センサ等の各種センサデバイスを備えてもよい。
図3は、図2のカメラスキャナにおける座標系を説明するための図である。図3において、カメラスキャナ101では、カメラ座標系、距離センサ座標系及びプロジェクタ座標系が定義される。カメラ座標系は、カメラ部202が撮像する画像平面をXY平面とし、且つ該画像平面に直交した方向をZ方向として定義した座標系である。距離センサ座標系は、距離画像センサ部208が有する後述のRGBカメラ701が撮像する画像平面をXY平面とし、且つ該画像平面に直交した方向をZ方向として定義した座標系である。プロジェクタ座標系は、短焦点プロジェクタ207が画像を投影する画像平面をXY平面とし、且つ該画像平面に直交した方向をZ方向として定義した座標系である。さらに、カメラスキャナ101では、これらの3つの独立した座標系の3次元データを統一的に扱えるようにするために、書画台204を含む平面をXY平面とし、且つ該XY平面に直交した方向をZ方向とする直交座標系が定義される。
図4は、図3における直交座標系、カメラ座標系及びカメラ撮像平面の関係を示す図である。カメラスキャナ101では、直交座標系における3次元点P[X,Y,Z]を下記式(1)によってカメラ座標系における3次元点P[X,Y,Z]へ変換することができる。
[Xc, Yc, Zc]T= [Rc|tc][X, Y, Z, 1]T … (1)
ここで、Rは3×3の回転行列であり、tは並進ベクトルである。R及びtは、直交座標系に対するカメラの姿勢(回転)と位置(並進)に基づいて定まる外部パラメータによって構成される。また、カメラ座標系で定義された3次元点P[X,Y,Z]を下記式(2)によって直交座標系における3次元点P[X,Y,Z]へ変換することができる。
[X, Y, Z]T = [Rc -1|-Rc -1tc][Xc, Yc, Zc, 1]T …(2)
カメラ部202で撮影される2次元の画像平面(以下、「カメラ撮像平面」という。)は、カメラ部202によって3次元空間中の3次元点群の3次元情報を2次元情報に変換することによって構成される。すなわち、カメラ撮像平面は、カメラ座標系上での3次元点P[X,Y,Z]を下記式(3)によって2次元座標p[x,y]に透視投影変換することによって構成することができる。
λ[xp, yp, 1]T = A[Xc, Yc, Zc, 1]T …(3)
ここで、Aは、焦点距離と画像中心等で表現される3×3の行列であるカメラの内部パラメータである。カメラスキャナ101で行われる射影変換では式(3)を用いるが、本来、カメラにはレンズ歪みに関するパラメータが存在し、レンズ歪みに関すパラメータを考慮して射影する必要がある。しかしながら、本実施の形態では説明の簡略化のために、特に断りがない場合にはレンズ歪みが存在しない、若しくはレンズ歪みについて補正された後であることを前提とする。以上のように、カメラスキャナ101では、上記式(1),(3)を用いることによって直交座標系で表された3次元点群をカメラ座標系での3次元点群やカメラ撮像平面上の点群に変換することができる。なお、カメラスキャナ101では、各ハードウェアデバイスの内部パラメータ及び直交座標系に対する位置姿勢(外部パラメータ)は、公知のキャリブレーション手法によってあらかじめキャリブレーションされている。
図5は、図1のカメラスキャナのコントローラ部のハードウェア構成を示すブロック図である。図5において、コントローラ部201は、システムバス501に接続されたCPU502、RAM503、ROM504、HDD505、ネットワークI/F506、画像処理プロセッサ507を備える。さらに、コントローラ部201は、カメラI/F508、ディスプレイコントローラ509、シリアルI/F510、オーディオコントローラ511及びUSBコントローラ512を備える。CPU502はコントローラ部201全体の動作を制御する中央演算装置である。また、CPU502は画像二値化手段,画像修正手段,輪郭検証手段、基準輪郭抽出手段及び輪郭抽出手段を構成する。RAM503は揮発性メモリである。ROM504は不揮発性メモリであり、CPU502の起動用プログラムが格納される。HDD505はRAM503よりも大容量のハードディスクドライブ(HDD)である。HDD505にはコントローラ部201が実行する、カメラスキャナ101の制御用プログラムが格納される。
CPU502は、電源オン等のカメラスキャナ101の起動時、ROM504に格納される起動用プログラムを実行する。この起動用プログラムは、HDD505に格納される制御用プログラムを読み出してRAM503に展開する。CPU502は、起動用プログラムを実行すると、続けてRAM503に展開された制御用プログラムを実行してコントローラ部201全体の動作を制御する。また、CPU502は制御用プログラムの実行に用いるデータもRAM503に格納して読み書きを行う。HDD505には制御用プログラムの実行に必要な各種設定やカメラ部202が撮像によって生成した画像データを格納することができ、格納されたデータ等はCPU502によって読み書きされる。また、CPU502はネットワークI/F506を介してネットワーク104に接続された他の機器との通信を行う。画像処理プロセッサ507はRAM503に格納されたカメラ画像データ等を読み出して画像処理を施し、再度、RAM503へ書き戻す。なお、画像処理プロセッサ507が実行する画像処理は、回転、変倍、色変換等である。カメラI/F508はカメラ部202及び距離画像センサ部208と接続され、CPU502からの指示に応じてカメラ部202からカメラ画像データを取得するとともに距離画像センサ部208から距離画像データを取得してRAM503へ書き込む。また、カメラI/F508はCPU502からの制御コマンドをカメラ部202及び距離画像センサ部208へ送信し、カメラ部202及び距離画像センサ部208の設定を行う。
シリアルI/F510はシリアル信号の入出力を行う。コントローラ部201では、シリアルI/F510がターンテーブル209に接続され、CPU502による回転開始・終了の指示及び回転角度の指示をターンテーブル209へ送信する。また、シリアルI/F510はLCDタッチパネル513に接続され、CPU502はLCDタッチパネル513が押下されたときの座標をシリアルI/F510を介して取得する。なお、ディスプレイコントローラ509、シリアルI/F510、オーディオコントローラ511及びUSBコントローラ512は、これらのうちの少なくとも1つがコントローラ部201に含まれていればよい。ディスプレイコントローラ509はCPU502の指示に応じてディスプレイ(図示しない)における画像データの表示を制御する。また、ディスプレイコントローラ509は短焦点プロジェクタ207及びLCDタッチパネル513に接続される。オーディオコントローラ511はスピーカ514に接続され、CPU502の指示に応じて音声データをアナログ音声信号に変換し、スピーカ514を通じて音声を出力する。USBコントローラ512はCPU502の指示に応じて外付けのUSBデバイスの制御を行う。USBコントローラ512はUSBメモリやSDカード等の外部メモリ515に接続され、外部メモリ515へのデータの読み書きを行う。
図6は、図5におけるCPUが実行するカメラスキャナの制御用プログラムの機能モジュールの構成を示すブロック図である。カメラスキャナ101の制御用プログラムは前述のようにHDD505に格納され、CPU502が起動時に制御用プログラムをRAM503に展開して実行する。制御用プログラムが実行される際には機能構成601が構成される。機能構成601は、モジュールとして、メイン制御部602、画像取得部603、認識処理部604、スキャン処理部605、表示部606、ユーザインターフェイス部607、ネットワーク通信部608及びデータ管理部609を備える。画像取得部603は、モジュールとして、カメラ画像取得部610及び距離画像取得部611(いずれも画像取得手段)を有する。認識処理部604は、モジュールとして、ジェスチャ認識部612、物体検知部613、原稿領域抽出部614、原稿領域変換部615及び特徴点抽出部616を有する。さらに、認識処理部604は、2次元画像原稿輪郭算出部617、距離算出部618及び原稿輪郭算出部619を有する。スキャン処理部605は、モジュールとして、平面原稿画像撮影部620、書籍画像撮影部621及び立体形状測定部622を有する。ユーザインターフェイス部607は、モジュールとして、GUI部品生成表示部623及び投射領域検出部624を有する。
メイン制御部602は制御の中心モジュールであり、機能構成601が備える他の各モジュールを制御する。画像取得部603は画像入力処理を行うモジュールである。カメラ画像取得部610はカメラI/F508を介してカメラ部202が出力するカメラ画像データを取得し、RAM503へ格納する。距離画像取得部611はカメラI/F508を介して距離画像センサ部208が出力する距離画像データを取得し、RAM503へ格納する。距離画像取得部611の処理の詳細については後述する。
認識処理部604はカメラ画像取得部610が取得するカメラ画像データ及び距離画像取得部611が取得する距離画像データから書画台204上の物体の動きを検知して認識するモジュールである。ジェスチャ認識部612は画像取得部603から書画台204上の画像を取得し続け、タッチ等のユーザのジェスチャ操作を検知し、検知したジェスチャをメイン制御部602へ通知する。物体検知部613は、メイン制御部602から物体載置待ち処理あるいは物体除去待ち処理の通知を受けると、画像取得部603から書画台204を撮像した画像を取得して書画台204上に存在する物体を検知する。また、物体検知部613は、書画台204上に物体が置かれるタイミング、物体が置かれて静止するタイミング、又は物体が取り除かれるタイミング等も検知する。原稿領域抽出部614は、カメラ画像取得部610が取得するカメラ画像データ及び距離画像取得部611が取得する距離画像データから原稿領域を抽出する。原稿領域変換部615は、カメラ画像取得部610が取得するカメラ画像データ及び距離画像取得部611が取得する距離画像データから原稿領域抽出部614が抽出する原稿領域を切り出し、原稿領域が書画台204と平行な平面上に配置されるように変換する。特徴点抽出部616は、原稿領域変換部615が変換したカメラ画像データの原稿領域から特徴点を抽出する。2次元画像原稿輪郭算出部617は、原稿領域変換部615が変換した書画台204と平行な平面上におけるカメラ画像データの原稿領域から原稿の輪郭を抽出する。距離算出部618は、特徴点抽出部616が抽出する特徴点、及び2次元画像原稿輪郭算出部617が抽出するカメラ画像データにおける原稿の輪郭の距離、さらには、各特徴点間の距離を算出する。原稿輪郭算出部619は、物体検知部613による書画台204上への原稿の載置の検知に応じて、距離算出部618に再度、各特徴点間の距離を算出させて原稿の輪郭を算出する。
スキャン処理部605は実際に読取対象物のスキャンを行う。平面原稿画像撮影部620は平面原稿、書籍画像撮影部621は書籍、立体形状測定部622は立体物に、それぞれ適したスキャンを行い、それぞれに応じた形式のデータを出力する。ユーザインターフェイス部607において、GUI部品生成表示部623は、メイン制御部602からの要求を受けてメッセージやボタン等のGUI部品を生成し、表示部606へ生成したGUI部品の表示を要求する。なお、書画台204におけるGUI部品の表示箇所は、投射領域検出部624によって検出される。表示部606は、ディスプレイコントローラ509を介して、短焦点プロジェクタ207又はLCDタッチパネル513へ要求されたGUI部品を表示する。カメラスキャナ101では、短焦点プロジェクタ207が書画台204を指向するため、書画台204にGUI部品が投影される。ユーザインターフェイス部607は、ジェスチャ認識部612が認識したタッチ等のジェスチャ操作、又はシリアルI/F510を介したLCDタッチパネル513からの入力操作、さらには、ジェスチャ操作や入力操作が行われた座標を受信する。また、ユーザインターフェイス部607は表示中の操作画面の内容と操作座標を対応させて操作の内容(ボタンの押下等)を判定する。判定された操作の内容はメイン制御部602へ通知される。ネットワーク通信部608は、ネットワークI/F506を介して、ネットワーク104上の他の機器とTCP/IPによる通信を行う。データ管理部609は、制御用プログラムの実行において生成された作業データを含む各種データをHDD505の所定の領域へ保存して管理する。例えば、カメラ画像取得部610や距離画像取得部611が取得したカメラ画像データや距離画像データがデータ管理部609によってHDD505へ保存される。
図7は、図2における距離画像センサ部のハードウェア構成を示す図である。図7において、距離画像センサ部208は赤外線パターン投射方式の3次元距離画像センサからなり、RGBカメラ701、赤外線パターン投射部702及び赤外線カメラ703を有する。RGBカメラ701は可視光をRGB信号で撮影し、赤外線パターン投射部702は対象物704へ不可視光である赤外線によって3次元測定パターン706を投射する。赤外線カメラ703は対象物に投射した3次元測定パターン706を読み取る。距離画像センサ部208は3次元測定パターン706と赤外線カメラ703の撮影画像707を対応させる。さらに、距離画像センサ部208は、赤外線パターン投射部702と赤外線カメラ703を結ぶ直線705を基線として三角測量の原理を用いることにより、撮影画像707の各画素の赤外線カメラ703からの距離を算出する。これにより、距離画像センサ部208は、各画素に距離値が入った距離画像データを生成する。なお、本実施の形態では、距離画像センサ部208として赤外線パターン投射方式の3次元距離画像センサを用いるが、他の方式の距離画像センサを用いてもよい。例えば、2つのRGBカメラでステレオ立体視を行うステレオ方式や、レーザ光の飛行時間を検出することによって距離を測定するTOF(Time of Flight)方式等を利用する距離画像センサを用いてもよい。
ところで、上述したように、カメラスキャナ101において、ユーザの手によって保持された原稿の画像を読み取って原稿の輪郭を抽出する際、ユーザの手の画像を除去するために、取得された画像データから肌色領域を抽出して除去することが行われている。しかしながら、原稿の色が赤みを帯びて肌色に近い場合には、ユーザの手の画像が原稿の画像に紛れてしまい、画像データから肌色領域を的確に抽出することができないことがある。本実施の形態では、これに対応して、画像データから肌色領域を抽出することなく、画像データからユーザの手の画像を除去する。
図8Aは、第1の実施の形態に係る画像読取方法としての原稿輪郭抽出処理のフローチャートである。図9は、図8Aの原稿輪郭抽出処理を説明するための工程図である。原稿輪郭抽出処理は主としてCPU502が実行する。
まず、書画台204上に何も存在しない状態で、カメラ画像取得部610がカメラ画像データを1フレームだけ取得し、距離画像取得部611が距離画像データをそれぞれ1フレームだけ取得する(ステップS801)。その後、取得したカメラ画像データを「背景カメラ画像データ」として記録し、取得した距離画像データを「背景距離画像データ」として記録する(ステップS802)。背景カメラ画像データ及び背景距離画像データは原稿やユーザの手の画像を含まない画像データであり、以下、総称を「背景画像データ」という。その後、ユーザが手901(保持手段)によって原稿902(読取対象物)を書画台204の上方へ進入させた後であって原稿902を書画台204に載置する前に、距離画像データ二値化処理を行う(ステップS803)。
図8Bは、図8AのステップS803の距離画像データ二値化処理のフローチャートである。まず、カメラ画像取得部610がカメラ画像データを1フレームだけ取得し、距離画像取得部611が距離画像データを1フレームだけ取得する(ステップS811)(画像取得工程)。このとき取得されたカメラ画像データ(図9(A))及び距離画像データ(図9(B))は原稿902の画像だけでなく手901の画像も含む。それぞれを以下、「原稿含有カメラ画像データ」及び「原稿含有距離画像データ」と称する。また、原稿含有カメラ画像データ及び原稿含有距離画像データの総称を「原稿含有画像データ」とする。その後、背景距離画像データの各画素の色と原稿含有距離画像データの各画素の色の差分の絶対値を算出する(ステップS812)。さらに、算出された差分の絶対値が所定値以上か否かを判定し、所定値以上である場合には原稿含有距離画像データにおける当該画素の色を「白」(所定の色)に変換する。また、所定値未満である場合には原稿含有距離画像データにおける当該画素の色を「黒」(他の所定の色)に変換する(ステップS813)。このとき、手901や原稿902は書画台204から離れているため、原稿含有距離画像データにおける手901や原稿902の各画素の色は背景距離画像データの各画素の色と大きく異なる。したがって、原稿含有距離画像データにおいて手901及び原稿902の画像は白で表され、それ以外は黒で表される(図9(C))。これにより、原稿含有距離画像データを二値化する。以下、二値化された原稿含有距離画像データを「二値化距離画像データ」と称する。なお、距離画像データ二値化処理では、算出された差分の絶対値が所定値以上である場合に原稿含有距離画像データにおける当該画素の色を「黒」に変換し、所定値未満である場合には同画素の色を「白」に変換してもよい。
図8Aに戻り、次いで、基準輪郭抽出処理を行う(ステップS804)(基準輪郭抽出工程)。図8Cは、図8AのステップS804の基準輪郭抽出処理のフローチャートである。本実施の形態における基準輪郭抽出処理では、通常は原稿902に比して手901が細いことを鑑みて二値化距離画像データから手901の画像を除去して原稿902の画像の概形を表す基準輪郭を抽出する。まず、ステップS803で得られた二値化距離画像データを画像の上方から下方まで水平に1ラインずつスキャンして複数の水平走査線903を得る(ステップS821)(図9(D))。このとき、各水平走査線903について当該水平走査線903が含む画素のうち色が白の画素(以下、「白画素」という。)の数をカウントし(ステップS822)、白画素の数が予め定められた所定値未満か否かを判定する(ステップS823)。上述したように、通常は原稿902に比して手901が細いため、書画台204の上方へ距離センサ座標系のY方向に沿って原稿902が進入した場合、手901の画像を含む水平走査線903の白画素の数は少ないと考えられる。その一方で、原稿902の画像を含む水平走査線903の白画素の数は多いと考えられる。そこで、本実施の形態では、含まれる白画素の数の少ない水平走査線903は手901の画像を含むと考え、当該水平走査線903が含む画素の色を「黒」に変換して二値化距離画像データから手901の画像を除去する。すなわち、水平走査線903の白画素の数が予め定められた所定値未満であれば、当該水平走査線903の全画素の色を「黒」に変換する(ステップS824)。水平走査線903の白画素の数が予め定められた所定値以上であれば、当該水平走査線903の全画素の色を「黒」に変換することなくそのまま維持する。これにより、二値化距離画像データにおいて手901の画像を含む各水平走査線903は黒色化される。以上のステップS822乃至ステップS824の処理を水平走査線903毎に繰り返して実行した後(ステップS825)、ステップS826へ進む。
ステップS821乃至ステップS825の処理により、書画台204の上方へ距離センサ座標系のY方向に沿って原稿902が進入した場合の二値化距離画像データからは手901の画像が除去される。しかしながら、書画台204の上方へ距離センサ座標系のX方向に沿って原稿902が進入した場合、手901の画像を含む水平走査線903の白画素の数は少ないとは限らず、寧ろ、当該水平走査線903の白画素の数は多くなると考えられる。すなわち、ステップS821乃至ステップS825の処理を実行しても、書画台204の上方へ距離センサ座標系のX方向に沿って原稿902が進入した場合には手901の画像を二値化距離画像データから除去することができない。そこで、ステップS821乃至ステップS825の処理と同様の処理を二値化距離画像データの垂直方向に関しても実行する。
まず、ステップS803で得られた二値化距離画像データを画像の上方から下方まで垂直に1ラインずつスキャンして複数の垂直走査線904を得る(ステップS826)(図9(D))。このとき、各垂直走査線904について当該垂直走査線904が含む白画素の数をカウントし(ステップS827)、白画素の数が予め定められた所定値未満か否かを判定する(ステップS828)。ここでは、含まれる白画素の数の少ない垂直走査線904が書画台204の上方へ距離センサ座標系のX方向に沿って進入した手901の画像を含むと考える。したがって、当該垂直走査線904が含む画素の色を「黒」に変換して二値化距離画像データから手901の画像を除去する。すなわち、垂直走査線904の白画素の数が予め定められた所定値未満であれば、当該垂直走査線904の全画素の色を「黒」に変換する(ステップS829)。垂直走査線904の白画素の数が予め定められた所定値以上であれば、当該垂直走査線904の全画素の色を「黒」に変換することなくそのまま維持する。これにより、二値化距離画像データにおいて手901の画像を含む各垂直走査線904は黒色化される。以上のステップS827乃至ステップS829の処理を垂直走査線904毎に繰り返して実行した後(ステップS830)、基準輪郭抽出処理を終了する。なお、基準輪郭抽出処理において、ステップS821乃至ステップS825の処理と、ステップS826乃至ステップS830の処理は実行順が入れ替わってもよい。
基準輪郭抽出処理の実行後、手901の画像が除去された二値化距離画像データが得られる(図9(E))。このとき、白で示される領域は原稿902に相当し、当該領域の輪郭を「基準輪郭905」と称する。すなわち、基準輪郭905は原稿902の概形を表す。ところで、基準輪郭抽出処理では水平走査線903や垂直走査線904の画素の色が変換されるため、得られる基準輪郭905は水平な辺と垂直な辺を基調とする。しかしながら、原稿902は書画台204の上方においてカメラ座標系や距離センサ座標系のXY平面と水平に進入するとは限らない。すなわち、原稿含有カメラ画像データや原稿含有距離画像データにおいて原稿902は必ずしも水平な辺と垂直な辺を基調としない。例えば、カメラ座標系や距離センサ座標系のXY平面に対して原稿902が書画台204の上方へ斜めに進入する場合、二値化距離画像データでは原稿902の幅が各水平走査線903又は各垂直走査線904において異なる。しかしながら、基準輪郭抽出処理を実行して基準輪郭905を抽出すると、原稿902(基準輪郭905)の幅が各水平走査線903又は各垂直走査線904において同じになる。すなわち、原稿902の本来の四隅のうち、幾つかは欠落してしまう。したがって、基準輪郭905は原稿902の輪郭を正確に再現していない。
そこで、本実施の形態では、基準輪郭905に基づいて、原稿902の輪郭を、基準輪郭抽出処理を施す前の二値化距離画像データ(以下、「除去前二値化距離画像データ」という。)から抽出する原稿四隅抽出処理を実行する(ステップS805)。図8Dは、図8AのステップS805の原稿四隅抽出処理のフローチャートである。まず、基準輪郭905の各隅点906(第2の隅点)を検出する(ステップS831)(図9(F))。さらに、除去前二値化距離画像データにおける色が白の画素の領域(以下「白画素領域」という)の各隅点907(第1の隅点)を検出する(ステップS832)(図9(G))。ここで、除去前二値化距離画像データでは手901の画像及び原稿902の画像が除去されていないため、白画素領域は手901及び原稿902の本来の輪郭を含む。したがって、各隅点907は手901及び原稿902の輪郭を構成する。次いで、隅点906の各々について、各隅点907との距離(例えば、ユークリッド距離)を算出し(ステップS833)、当該隅点906に最も近接する隅点907を選択する(ステップS834)(図9(H))。ここで、上述したように、基準輪郭905は原稿902の概形を表すため、隅点906に最も近い隅点907は原稿902に含まれると考えられる。すなわち、隅点906に最も近い隅点907は原稿902の輪郭を構成する。以上のステップS834の処理を隅点906毎に繰り返して実行した後(ステップS835)、ステップS806へ進む。
ステップS806では、原稿四隅抽出処理で選択された4つの隅点907が原稿含有カメラ画像データに含まれているか否かを判別する。具体的には、選択された4つの隅点907の座標をカメラ座標系の座標に変換し、変換後の座標がカメラ座標系における撮像可能範囲に含まれるか否かを判別する。変換後の座標がカメラ座標系における撮像可能範囲に含まれていない場合は、原稿902の全体が距離画像センサ部208によって撮像可能であっても、カメラ部202で撮影可能ではない場合に該当する。したがって、変換後の座標がカメラ座標系における撮像可能範囲に含まれていない場合には、ユーザに別の方向や角度から書画台204の上方へ手901で保持した原稿902を進入させ、ステップS803から処理をやり直す。一方、変換後の座標がカメラ座標系における撮像可能範囲に含まれている場合は、原稿902の全体がカメラ部202で撮影可能である場合に該当する。したがって、変換後の座標がカメラ座標系における撮像可能範囲に含まれている場合には、除去前二値化距離画像データにおいて、選択された4つの隅点907を繋いで原稿902の輪郭を形成する(ステップS807)(輪郭抽出工程)(図9(I))。また、原稿含有カメラ画像データにおいて、座標がカメラ座標系の座標に変換された4つの隅点907を繋いで原稿902の輪郭を抽出する。これにより、距離画像データ及びカメラ画像データのそれぞれにおいて原稿902の輪郭を抽出することができる。その後、原稿輪郭抽出処理を終了する。
図8Aの原稿輪郭抽出処理によれば、原稿902の概形を表す基準輪郭905を用いて原稿902の輪郭を抽出する。また、基準輪郭905の抽出に原稿含有カメラ画像データを用いずに原稿含有距離画像データを用いる。これにより、原稿含有カメラ画像データにおける肌色領域の存在の判定を行う必要を無くすことができる。その結果、原稿902の輪郭を正確に抽出することができる。
また、基準輪郭905は原稿902の輪郭を正確に再現していないが、図8Aの原稿輪郭抽出処理では、基準輪郭905に基づいて原稿902の本来の輪郭を含む除去前二値化距離画像データの白画素領域から原稿902の輪郭を抽出する。これにより、原稿902の輪郭を正確に再現することができる。
次に、本発明の第2の実施の形態について説明する。第2の実施の形態は、その構成、作用が上述した第1の実施の形態と基本的に同じであるので、重複した構成、作用については説明を省略し、以下に異なる構成、作用についての説明を行う。
第1の実施の形態では、原稿902に比して手901が細いことを前提とし、水平走査線903や垂直走査線904における白画素の数に基づいて各水平走査線903や各垂直走査線904が手901の画像を含むか否かを判定した。しかしながら、例えば、原稿902が小さく、原稿902の幅が手901の幅と同等である場合がある。この場合、手901の画像を含む水平走査線903や垂直走査線904における白画素の数が原稿902の画像を含む水平走査線903や垂直走査線904における白画素の数と変わらなくなる。したがって、第1の実施の形態の画像読取方法では、原稿902の輪郭を正確に抽出できない可能性がある。これに対応して、本実施の形態では、水平走査線903や垂直走査線904における白画素の数を用いることなく、原稿902の輪郭を抽出する。
図10Aは、第2の実施の形態に係る画像読取方法としての原稿輪郭抽出処理のフローチャートである。図11は、図10Aの原稿輪郭抽出処理を説明するための工程図である。原稿輪郭抽出処理は主としてCPU502が実行する。
まず、ステップS801乃至ステップS803を実行する。これにより、原稿含有カメラ画像データ(図11(A))、原稿含有距離画像データ(図11(B))及び二値化距離画像データ(図11(C))を取得する。次いで、基準輪郭抽出処理を行う(ステップS1001)。図10Bは、図10AのステップS1001の基準輪郭抽出処理のフローチャートである。本実施の形態における基準輪郭抽出処理では、原稿902が特徴となるコンテンツを有することを鑑みて二値化距離画像データから原稿902の画像の概形を表す基準輪郭を抽出する。まず、原稿含有カメラ画像データをカメラ座標系に座標変換する(ステップS1011)。次いで、座標変換した原稿含有カメラ画像データにおける複数の特徴点1101を抽出する(ステップS1012)(図11(D))。ここで、各特徴点は原稿902のコンテンツにしか含まれないため、各特徴点1101を抽出することにより、実質的に原稿902の存在領域を把握することができる。各特徴点1101の抽出方法としては、照明の変化や回転、拡大縮小に比較的強い耐性を持つ特徴量算出手法であるSIFT等が用いられる。次いで、抽出された各特徴点1101からカメラ座標系のXY平面における最大座標(Xmax,Ymax)の特徴点1101と最小座標(Xmin,Ymin)の特徴点1101を選択する(ステップS1013)。続けて、最大座標の特徴点1101と最小座標の特徴点1101を通過するカメラ座標系のXY平面における水平線及び垂直線を規定する(ステップS1014)。さらに、水平線及び垂直線の4つの交点1102(第2の隅点)の座標を算出し、これらの交点を頂点とする矩形を基準輪郭1103として規定する(ステップS1015)(図11(E)。基準輪郭1103は各特徴点1101を抱合する最小の矩形である。次いで、基準輪郭抽出処理を終了する。
基準輪郭1103は原稿902のコンテンツの各特徴点1101を含む最小の矩形であるため、原稿902の概形を表す。しかしながら、基準輪郭1103は最大座標の特徴点1101と最小座標の特徴点1101を基準とし、原稿902の輪郭を基準としていないため、基準輪郭1103は原稿902の輪郭を正確に再現していない。そこで、本実施の形態でも、第1の実施の形態と同様に、基準輪郭1103に基づいて、原稿902の輪郭を、ステップS803で得られた二値化距離画像データから抽出する原稿四隅抽出処理を実行する(ステップS1002)。
図10Cは、図10AのステップS1002の原稿四隅抽出処理のフローチャートである。まず、基準輪郭1103の各隅点である交点1102の座標を距離センサ座標系の座標に変換する(ステップS1021)(図11(F))。さらに、二値化距離画像データの白画素領域の各隅点907(第1の隅点)を検出する(ステップS1022)(図11(G))。次いで、交点1102の各々について、各隅点907との距離(例えば、ユークリッド距離)を算出し(ステップS1023)、当該交点1102に最も近接する隅点907を選択する(ステップS1024)(図11(H))。ここで、上述したように、基準輪郭1103は原稿902の概形を表すため、交点1102に最も近い隅点907は原稿902に含まれると考えられる。すなわち、交点1102に最も近い隅点907は原稿902の輪郭を構成する。以上のステップS1024の処理を交点1102毎に繰り返して実行した後(ステップS1025)、ステップS806へ進む。その後、ステップS806及びステップS807を実行した後、原稿輪郭抽出処理を終了する。
図10Aの原稿輪郭抽出処理によれば、原稿902のコンテンツの各特徴点を囲む矩形を基準輪郭1103として抽出する。すなわち、基準輪郭1103の抽出において、水平走査線903や垂直走査線904における白画素の数に基づいた二値化距離画像データからの手901の画像の削除を行わない。これにより、例えば、原稿902が小さく、原稿902の幅が手901の幅と同等であっても、原稿902の輪郭を抽出することができる。
次に、本発明の第3の実施の形態について説明する。第3の実施の形態は、その構成、作用が上述した第1の実施の形態や第2の実施の形態と基本的に同じであるので、重複した構成、作用については説明を省略し、以下に異なる構成、作用についての説明を行う。
第1の実施の形態では、書画台204の上方へ距離センサ座標系のY方向又はX方向に沿って原稿902が進入することを前提とし、水平走査線903等における白画素の数に基づいて各水平走査線903等が手901の画像を含むか否かを判定した。また、第2の実施の形態でも、原稿902の縦方向や横方向がカメラ座標系のY方向やX方向にほぼ合致することを前提としてカメラ座標系のXY平面における水平線及び垂直線から基準輪郭1103を抽出した。しかしながら、原稿902が距離センサ座標系のY方向又はX方向に対して斜めになったまま書画台204の上方へ進入する場合がある。また、原稿902の縦方向や横方向がカメラ座標系のY方向やX方向に合致しない場合もある。これらの場合、抽出した基準輪郭905や基準輪郭1103が原稿902の概形を表さず、基準輪郭905や基準輪郭1103を用いても、原稿902の輪郭を正確に抽出することができない。これに対応して、本実施の形態では、基準輪郭905を抽出する前に、二値化距離画像データを回転させて原稿902の縦方向や横方向を距離センサ座標系のY方向やX方向に合致させる。
図12Aは、第3の実施の形態に係る画像読取方法としての原稿輪郭抽出処理のフローチャートである。図13は、図12Aの原稿輪郭抽出処理を説明するための工程図である。原稿輪郭抽出処理は主としてCPU502が実行する。本実施の形態では、原稿902が距離センサ座標系のY方向やX方向に対して斜めになったまま書画台204の上方へ進入することを前提とする。
まず、ステップS801乃至ステップS803を実行する。これにより、原稿含有カメラ画像データ(図13(A))、原稿含有距離画像データ(図13(B))及び二値化距離画像データ(図13(C))を取得する。次いで、画像回転処理を行う(ステップS1201)。図12Bは、図12AのステップS1201の画像回転処理のフローチャートである。まず、ステップS803で取得された二値化距離画像データの白画素領域の各隅点1301を検出する(図13(D))。ここでの白画素領域は手901及び原稿902の本来の輪郭を含む。さらに、二値化距離画像データの各辺と白画素領域の交差点である各端点1302を検出し、各端点1302の中点1303を検出する(ステップS1211)。なお、中点1303が検出されない場合は、ユーザに別の方向や角度から書画台204の上方へ手901で保持した原稿902を進入させ、ステップS803から処理をやり直す。
次いで、二値化距離画像データの白画素領域の重心点1304を検出し(ステップS1212)、中点1303及び重心点1304を結ぶ基準線1305を導出する(ステップS1213)。ところで、ユーザが書画台204の上方へ手901で保持した原稿902を進入させる場合、手901の画像は二値化距離画像データの各辺と交差すると考えられるため、上述した各端点1302は手901の位置を表すと考えられる。また、手901で原稿902を保持する際、手901は原稿902の中心を指向すると考えられる。したがって、各端点1302の中点1303及び白画素領域の重心点1304を結ぶ基準線1305は手901が差し出される方向を示す。さらに、手901で原稿902を保持する際、原稿902の縦方向や横方向は手901が差し出される方向に平行又は垂直になると考えられる。そこで、本実施の形態では、基準線1305が手901が差し出される方向を示すことを前提として、基準線1305が距離センサ座標系のY方向又はX方向に合致するように二値化距離画像データを回転させる。すなわち、ユーザの手901が距離センサ座標系のY方向又はX方向に沿うように二値化距離画像データを回転させる。具体的には、基準線1305と距離センサ座標系のY方向及びX方向(二値化距離画像データの垂直方向及び水平方向)とがなす角度を算出し、該角度が0°又は90°となる角度を回転角度として算出する(ステップS1214)。次いで、算出された回転角度に基づいて二値化距離画像データを回転させる(ステップS1215)。
その後、図12Aに戻り、ステップS1202において基準輪郭抽出処理を実行し、ステップS1203において原稿四隅抽出処理を実行する。ステップS1202では、基準輪郭905を用いる場合にはステップS804の基準輪郭抽出処理を実行し、基準輪郭1103を用いる場合にはステップS1001の基準輪郭抽出処理を実行する。また、ステップS1203では、基準輪郭905を用いる場合にはステップS805の原稿四隅抽出処理を実行し、基準輪郭1103を用いる場合にはステップS1002の基準輪郭抽出処理を実行する。次いで、原稿四隅抽出処理によって原稿902の輪郭を構成する各隅点907を選択した後、各隅点907の座標をステップS1214で算出された回転角度と逆の回転角度だけ回転移動させる。これにより、原稿902の4つの隅点907の座標を元の座標に戻す(ステップS1204)。その後、ステップS806及びステップS807を実行した後、原稿輪郭抽出処理を終了する。
図12Aの原稿輪郭抽出処理によれば、ユーザの手901が距離センサ座標系のY方向又はX方向に沿うように二値化距離画像データを回転させるため、距離センサ座標系のY方向又はX方向に沿って原稿902が進入する状態を再現することができる。若しくは、原稿902の縦方向や横方向がカメラ座標系のY方向やX方向にほぼ合致する状態を再現することができる。これにより、原稿902が距離センサ座標系のY方向又はX方向に対して斜めになったまま書画台204の上方へ進入した場合であっても、基準輪郭905や基準輪郭1103に原稿902の概形を表させることができる。その結果、原稿902の輪郭を抽出することができる。
次に、本発明の第4の実施の形態について説明する。第4の実施の形態は、その構成、作用が上述した第1の実施の形態乃至第3の実施の形態と基本的に同じであるので、重複した構成、作用については説明を省略し、以下に異なる構成、作用についての説明を行う。
第1の実施の形態乃至第3の実施の形態では、二値化距離画像データにおいて矩形の原稿902の4つの隅点が全て現れていることを前提とし、二値化距離画像データの白画素領域の各隅点907から原稿902の4つの隅点を選択した。しかしながら、ユーザが手901よって原稿902の隅部を保持する場合等、二値化距離画像データにおいて原稿902の4つの隅点が全て現れない場合がある。これに対応して、本実施の形態では、原稿四隅抽出処理によって4つの隅点907を選択した後、各隅点907が原稿902の輪郭を構成する隅点か否かを検証する。
図14Aは、第4の実施の形態に係る画像読取方法としての原稿輪郭抽出処理のフローチャートである。図15は、図14Aの原稿輪郭抽出処理を説明するための工程図である。原稿輪郭抽出処理は主としてCPU502が実行する。なお、図14Aの原稿輪郭抽出処理は、図12Aの原稿輪郭抽出処理を前提とするが、本実施の形態は図8Aや図10Aの原稿輪郭抽出処理を前提としてもよい。
まず、ステップS801乃至ステップS803、ステップS1201乃至ステップS1204、並びに、ステップS806を実行する。これにより、原稿含有カメラ画像データ(図15(A))、原稿含有距離画像データ(図15(B))及び二値化距離画像データ(図15(C))を取得し、さらに、原稿902の輪郭を構成する各隅点の候補として4つの隅点907を選択する。その後、選択された4つの隅点907が原稿902の輪郭を構成するか否かを検証する原稿四隅検証処理を実行する(ステップS1401)。図14Bは、図14AのステップS1401の原稿四隅検証処理のフローチャートである。まず、二値化距離画像データの各辺と白画素領域の交差点である各端点1302を検出し、各端点1302の中点1303を検出する(ステップS1411)。なお、ステップS1411はステップS1201におけるステップS1211と同じ処理であるため、ステップS1211を実行する場合にはステップS1411をスキップしてもよい。また、ステップS1411において中点1303が検出されない場合は、ユーザに別の方向や角度から書画台204の上方へ手901で保持した原稿902を進入させ、ステップS803から処理をやり直す。
ところで上述したように、各端点1302は手901の位置を表すと考えられるため、ユーザが手901よって保持される原稿902の隅部は、原稿902の4つの隅部の中で中点1303に最も近い隅部であると考えられる。そこで、本実施の形態では、選択された4つの隅点907のうち中点1303に最も近い隅点907を検証対象隅点1501(第3の隅点)として抽出する(ステップS1412)(図15(D))。ここで、検証対象隅点1501が原稿902の輪郭から外れている場合、検証対象隅点1501と、原稿902の輪郭を構成する他の隅点907とを結ぶ線分(以下、「検証線」という)1502は、原稿902の輪郭の各辺と合致しない(図15(E))。すなわち、当該線分上には原稿902が存在せず、距離画像センサ部208からは当該線分において書画台204が直視できるため、当該線分の各画素の距離情報は原稿902の距離情報と大きく異なる。そこで、検証線150の各画素の距離情報と原稿902の各画素の距離情報を比較し、各距離情報の差分が所定値以上か否かを判別する(ステップS1413)。各距離情報の差分が所定値以上であれば、検証対象隅点1501を消去する(ステップS1415)。一方、各距離情報の差分が所定値未満であれば、ステップS1414に進む。
また、矩形の原稿では、原稿の重心を基準とした場合、各隅点より外側に他の隅点が存在することがない。そこで、ステップS1414では、二値化距離画像データの白画素領域の重心点1304を検出し、重心点1304を基準とした場合、検証対象隅点1501よりも外側に二値化距離画像データの白画素領域の各隅点1301が存在するか否かを判別する。検証対象隅点1501よりも外側に隅点1301が存在する場合、検証対象隅点1501を消去する(ステップS1415)。一方、検証対象隅点1501よりも外側に各隅点1301のいずれも存在しない場合、原稿四隅検証処理を終了する。次いで、ステップS807を実行する。ステップS807では、検証対象隅点1501が消去されている場合、残りの3つの隅点907から矩形を導出し、該矩形を原稿902の輪郭として規定する。その後、原稿輪郭抽出処理を終了する。
図14Aの原稿輪郭抽出処理によれば、各隅点907が原稿902の輪郭を構成する隅点か否かを検証するので、不自然な原稿902の輪郭を修正することができる。
以上、本発明の各実施の形態について説明したが、本発明はこれらの実施の形態に限定されず、その要旨の範囲内で種々の変形及び変更が可能である。例えば、各実施の形態では原稿902がユーザの手901によって保持されたが、原稿902がマジックハンド等の保持手段によって保持されていても、原稿902の輪郭を正確に抽出することができる。また、本発明は、各実施の形態の1以上の機能を実現するプログラムを、ネットワークや記憶媒体を介してシステムや装置に供給し、そのシステム又は装置のコンピュータの1つ以上のプロセッサがプログラムを読み出して実行する処理でも実現可能である。また、本発明は、1以上の機能を実現する回路(例えば、ASIC)によっても実現可能である。
101 カメラスキャナ
202 カメラ部
206,902 原稿
207 短焦点プロジェクタ
208 距離画像センサ部
502 CPU
603 画像取得部
901 手
903 水平走査線
904 垂直走査線
905,1103 基準輪郭
906,907 隅点
1101 特徴点
1102 交点
1305 基準線
1501 検証対象隅点

Claims (11)

  1. 読取対象物及び該読取対象物の保持手段を含む画像を取得する画像取得手段と、
    前記取得された画像から前記保持手段の画像を除去して前記読取対象物の概形を表す基準輪郭を抽出する基準輪郭抽出手段と、
    前記取得された画像から前記基準輪郭に基づいて前記読取対象物の輪郭を抽出する輪郭抽出手段と、を備えることを特徴とする画像読取装置。
  2. 前記輪郭抽出手段は、
    前記取得された画像における前記読取対象物及び前記保持手段の輪郭における複数の第1の隅点を検出し、
    前記基準輪郭における複数の第2の隅点を検出し、
    前記複数の第2の隅点の各々に近接する前記第1の隅点を選択し、
    各前記選択された第1の隅点を用いて前記読取対象物の輪郭を形成することを特徴とする請求項1記載の画像読取装置。
  3. 画像の各画素の色を所定の色又は他の所定の色に変換することによって前記取得された画像を二値化する画像二値化手段をさらに備え、
    前記画像取得手段は前記読取対象物及び前記保持手段を含む距離画像を取得し、
    前記画像二値化手段は、前記距離画像において前記読取対象物及び前記保持手段を構成する各画素の色を前記所定の色に変換し、且つ他の画素の色を前記他の所定の色に変換することによって前記距離画像を二値化し、
    前記基準輪郭抽出手段は、前記二値化された距離画像における水平方向及び垂直方向に関する各走査線について当該走査線における前記所定の色の画素の数をカウントし、前記所定の色の画素の数が所定値よりも小さければ、当該走査線の全ての画素の色を前記他の所定の色に変更することを特徴とする請求項1又は2記載の画像読取装置。
  4. 前記基準輪郭抽出手段は、前記取得された画像から前記読取対象物の複数の特徴点を検出し、前記検出された複数の特徴点を囲む輪郭を前記基準輪郭として抽出することを特徴とする請求項1又は2記載の画像読取装置。
  5. 前記取得された画像に含まれる前記保持手段の画像が水平方向又は垂直方向に沿うように、前記取得された画像を修正する画像修正手段をさらに備えることを特徴とする請求項1乃至4のいずれか1項に記載の画像読取装置。
  6. 前記画像修正手段は、前記保持手段の画像の方向を示す基準線を導出し、前記基準線を水平方向又は垂直方向に合致させることを特徴とする請求項5記載の画像読取装置。
  7. 前記輪郭抽出手段が抽出した前記読取対象物の輪郭と、前記取得された画像とを比較して前記読取対象物の輪郭を検証する輪郭検証手段をさらに備えることを特徴とする請求項1乃至6のいずれか1項に記載の画像読取装置。
  8. 前記輪郭検証手段は、
    前記輪郭抽出手段が抽出した前記読取対象物の輪郭における複数の第3の隅点を検出し、
    前記複数の第3の隅点のうち前記保持手段に最も近い前記第3の隅点を抽出し、
    前記抽出された前記第3の隅点と、前記読取対象物及び前記保持手段の輪郭における複数の第1の隅点の各々との関係に基づいて前記読取対象物の輪郭を検証することを特徴とする請求項7記載の画像読取装置。
  9. 前記読取対象物は原稿であり、前記保持手段は前記原稿を保持するユーザの手であることを特徴とする請求項1乃至8のいずれか1項に記載の画像読取装置。
  10. 読取対象物及び該読取対象物の保持手段を含む画像を取得する画像取得工程と、
    前記取得された画像から前記保持手段の画像を除去して前記読取対象物の概形を表す基準輪郭を抽出する基準輪郭抽出工程と、
    前記取得された画像から前記基準輪郭に基づいて前記読取対象物の輪郭を抽出する輪郭抽出工程と、を有することを特徴とする画像読取方法。
  11. 画像読取方法をコンピュータに実行させるプログラムであって、
    前記画像読取方法は、
    読取対象物及び該読取対象物の保持手段を含む画像を取得する画像取得工程と、
    前記取得された画像から前記保持手段の画像を除去して前記読取対象物の概形を表す基準輪郭を抽出する基準輪郭抽出工程と、
    前記取得された画像から前記基準輪郭に基づいて前記読取対象物の輪郭を抽出する輪郭抽出工程と、を有することを特徴とするプログラム。

JP2017094968A 2017-05-11 2017-05-11 画像読取装置、画像読取方法及びプログラム Pending JP2018191258A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2017094968A JP2018191258A (ja) 2017-05-11 2017-05-11 画像読取装置、画像読取方法及びプログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2017094968A JP2018191258A (ja) 2017-05-11 2017-05-11 画像読取装置、画像読取方法及びプログラム

Publications (1)

Publication Number Publication Date
JP2018191258A true JP2018191258A (ja) 2018-11-29

Family

ID=64479203

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2017094968A Pending JP2018191258A (ja) 2017-05-11 2017-05-11 画像読取装置、画像読取方法及びプログラム

Country Status (1)

Country Link
JP (1) JP2018191258A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113420721A (zh) * 2021-07-21 2021-09-21 北京百度网讯科技有限公司 标注图像关键点的方法和装置

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113420721A (zh) * 2021-07-21 2021-09-21 北京百度网讯科技有限公司 标注图像关键点的方法和装置

Similar Documents

Publication Publication Date Title
US10310675B2 (en) User interface apparatus and control method
JP6089722B2 (ja) 画像処理装置、画像処理方法および画像処理プログラム
JP6327931B2 (ja) 画像処理装置、情報処理方法及びプログラム
JP6723814B2 (ja) 情報処理装置、その制御方法、プログラム、及び記憶媒体
JP2005122320A (ja) 撮影装置、その画像処理方法及びプログラム
US9888209B1 (en) Remote communication system, method for controlling remote communication system, and storage medium
US10254893B2 (en) Operating apparatus, control method therefor, and storage medium storing program
JP6399840B2 (ja) 画像処理装置、画像処理方法及びプログラム
US9924066B2 (en) Image processing apparatus, information processing method, and program
US10725586B2 (en) Presentation of a digital image of an object
JP7009904B2 (ja) 端末装置、情報処理システム、情報処理方法及びプログラム
JP2018191258A (ja) 画像読取装置、画像読取方法及びプログラム
JP2015198406A (ja) 画像読取装置、方法およびプログラム
US10733920B2 (en) Image processing apparatus, method for controlling the same, and storage medium
JP2017199288A (ja) 画像処理装置、画像処理方法及びプログラム
JP2019016843A (ja) 原稿読取装置、原稿読取装置の制御方法、及びプログラム
US10116809B2 (en) Image processing apparatus, control method, and computer-readable storage medium, which obtains calibration image information with which to correct image data
JP2019120618A (ja) 物体測定装置及びその制御方法、並びにプログラム
JP6624861B2 (ja) 画像処理装置、制御方法およびプログラム
JP2011071746A (ja) 映像出力装置及び映像出力方法
JP2016139396A (ja) ユーザーインターフェイス装置、方法およびプログラム
JP6203070B2 (ja) スキャンシステムおよびその制御方法、並びにプログラム
JP2018191094A (ja) 原稿読取装置、原稿読取装置の制御方法、及びプログラム
JP2019101753A (ja) 物体形状測定装置及びその制御方法、並びにプログラム
JP6157068B2 (ja) 情報処理装置及びその制御方法