JP2004012143A - 立体計測装置 - Google Patents
立体計測装置 Download PDFInfo
- Publication number
- JP2004012143A JP2004012143A JP2002161854A JP2002161854A JP2004012143A JP 2004012143 A JP2004012143 A JP 2004012143A JP 2002161854 A JP2002161854 A JP 2002161854A JP 2002161854 A JP2002161854 A JP 2002161854A JP 2004012143 A JP2004012143 A JP 2004012143A
- Authority
- JP
- Japan
- Prior art keywords
- work
- image data
- point
- dimensional measurement
- unit
- 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.)
- Withdrawn
Links
Images
Landscapes
- Length Measuring Devices By Optical Means (AREA)
- Manipulator (AREA)
- Image Processing (AREA)
- Image Analysis (AREA)
Abstract
【課題】ワークの立体形状を正確に計測する。
【解決手段】立体計測システムは、ワーク1100を撮像するカメラ100と、ワーク1100を照明するストロボ200と、カメラ100の電子シャッターに同期してストロボ200を発光させてワーク1100を撮像するように制御する制御回路と、撮像された画像データを画像処理する画像処理コンピュータとを含む。画像処理コンピュータは、撮像された画像データに対して、明度の不均一を補正するシェーディング補正回路と、補正された画像データに対して、カメラ100からワーク1100までの距離に応じた明度の違いに基づいて、ワーク1100の特徴量を算出する算出回路と、算出された特徴量に基づいて、ワーク1100の位置情報を作成する作成回路とを含む。
【選択図】 図1
【解決手段】立体計測システムは、ワーク1100を撮像するカメラ100と、ワーク1100を照明するストロボ200と、カメラ100の電子シャッターに同期してストロボ200を発光させてワーク1100を撮像するように制御する制御回路と、撮像された画像データを画像処理する画像処理コンピュータとを含む。画像処理コンピュータは、撮像された画像データに対して、明度の不均一を補正するシェーディング補正回路と、補正された画像データに対して、カメラ100からワーク1100までの距離に応じた明度の違いに基づいて、ワーク1100の特徴量を算出する算出回路と、算出された特徴量に基づいて、ワーク1100の位置情報を作成する作成回路とを含む。
【選択図】 図1
Description
【0001】
【発明の属する技術分野】
本発明は、立体を計測する技術に関し、特に、パレットに積み上げられたダンボール箱などのワークの位置を立体的に認識する技術に関する。
【0002】
【従来の技術】
最近、産業用ロボットの用途の1つとして、パレットの上にワークである段ボール箱を予め定められた順序に従って積み上げるパレタイズ作業がある。特にワークが重い場合に、大きな省力効果を発現する。このようにしてパレタイズされたパレットからワークを取出すデパレタイズ作業にも、産業用ロボットが使用されている。パレットに積み上げられたワークは、トラックなどによる搬送途中においてワークがずれることがある。そのため、デパレタイズ時には、ワークの高さ、位置を正確に把握しないと、デパレタイズロボットが正確にワークをハンドリングできない。
【0003】
特開平7−291450号公報は、パレタイズされているワークの中から最上段にあるワークの選出を迅速に実行するパレタイズシステムを開示する。この公報に開示されたパレタイジングシステムは、任意に積み上げられたワークを斜め上方から照明する第1の照明装置と、ワークの上方から照明する第2の照明装置と、第1および第2の照明装置を操作して画像処理に適した照明を実現する照明制御装置と、第1のステレオカメラ装置と、第2のステレオカメラ装置と、第1および第2のステレオカメラ装置を制御するカメラ制御装置と、ステレオカメラにより撮像された画像データを処理して最上位に位置するワークを選択して、マッチング処理を実行して、ワークの種類、姿勢および把持位置を算出して、ロボットコントローラに出力する画像処理装置とを含む。
【0004】
この公報に開示されたパレタイジングシステムによると、第1の照明装置および第2の照明装置を照明制御装置により操作して、第1の照明装置はパレットに積み上げられている上部のワークを照明して、第2の照明装置はパレットに積み上げられている下部のワークを照明する。第1のステレオカメラ装置および第2のステレオカメラ装置をカメラ制御装置により操作して、照明されているワークを撮像する。このようにして得られた画像を画像処理装置に入力して画像解析を行ない、最上部に位置するワークを選出する。その後、マッチング処理を行ない選出されたワークの種類、姿勢および把持位置を決定する。このワークの種類、姿勢および把持位置は、ロボットコントローラに入力されてロボットハンドの操作量が算出される。ロボットコントローラは、この操作量によりロボットハンドを操作してワークをデパレタイズする。これにより、第1の照明装置および第2の照明装置を操作して画像処理がしやすい状態にワークを照明しているので、最上位に位置するワークを選出することが簡易にできる。その結果、デパレタイズ作業における作業能率を著しく向上させることができる。
【0005】
【発明が解決しようとする課題】
しかしながら、上述の公報に開示されたシステムでは、デパレタイズの対象である、ワークを撮像する照明装置が2台、ワークを撮像するカメラが2台必要になる。そのため、システムの装備が大掛かりになるとともにシステムが高価格になる。さらに、2台の照明装置によっては、ワークの周囲からの外乱光によりワークを均一に照明できないなどにより、画像処理装置におけるデータ処理の結果に誤差が生じるおそれがある。
【0006】
本発明は、上述の課題を解決するためになされたものであって、外乱光による影響に強く、設備コストを抑制して、正確に対象物の立体形状を計測できる立体計測装置を提供することである。
【0007】
【課題を解決するための手段】
第1の発明に係る立体計測装置は、対象物を撮像するための撮像手段と、対象物を照明するストロボ照明装置と、ストロボ照明装置の発光に同期させて撮像手段により対象物を撮像するように、撮像手段とストロボ照明装置とを制御するための制御手段と、撮像手段に接続され、撮像された対象物を表わす画像データに対して、画像処理を行なうための処理手段とを含む。処理手段は、画像データに対して、色の強度の不均一を補正するための補正手段と、補正された画像データに対して、撮像手段から対象物までの距離に応じた色の強度の違いに基づいて、対象物の特徴量を算出するための算出手段と、算出された特徴量に基づいて、対象物の位置情報を作成するための作成手段とを含む。
【0008】
第1の発明によると、制御手段は、ストロボ装置の発光に同期させて、撮像手段の1つであるカメラの電子シャッターをオンにして対象物を撮像する。補正手段は、対象物が撮像された画像データにおける色の強度の1つである明度の不均一をシェーディング補正などにより補正する。この補正により、ストロボ装置から同じ距離にある対象物は同じ明度を有することになる。算出手段は、たとえば、ストロボ装置から対象物までの距離に応じた明度のしきい値を用いて、この補正された画像データを二値化処理して、検出したい高さの対象物のみを抽出して、抽出された対象物の面積などを表わす特徴量を算出する。作成手段は、対象物の特徴量に基づいて、対象物の端点の座標情報などを作成する。これにより、ストロボ装置から発光された光は、ストロボ装置からの距離の二乗に逆比例する明るさであるという性質に基づいて、検出したい距離にある対象物を、画像データを二値化処理することにより抽出することができる。この二値化処理の前に、明るさの不均一は補正されているので、二値化処理により検出したい対象物の全体を抽出することができる。その結果、外乱光による影響に強く、設備コストを抑制して、正確に対象物の立体形状を計測できる立体計測装置を提供することができる。なお、色の強度とは、RGBの個別の強度、それらの強度から換算できる明度、色相、彩度等の変換量の強度、RGBの個別の強度を適宜組み合わせた強度、特定の色彩の強度などを含む。
【0009】
第2の発明に係る立体計測装置は、第1の発明の構成に加えて、算出手段は、補正された画像データに対して、撮像手段から対象物までの距離に応じた色の強度の違いに対応するしきい値により画像データを二値化処理して、色の強度が異なる領域を抽出して、抽出された領域に基づいて、対象物の特徴量を算出するための手段を含む。
【0010】
第2の発明によると、算出手段は、ストロボ装置から対象物までの距離に応じた色の強度の1つである明度のしきい値を用いて、この補正された画像データを二値化処理して、検出したい高さの対象物のみを抽出して、抽出された対象物の面積などを表わす特徴量を算出することができる。二値化処理により検出したい対象物の全体を抽出するため、正確に対象物の立体形状を計測できる。
【0011】
第3の発明に係る立体計測装置は、第2の発明の構成に加えて、算出手段は、対象物の特徴量として、抽出された領域の面積および領域のフィレ径を算出するための手段を含む。
【0012】
第3の発明によると、検出したい対象物を表わす領域の面積および領域のフィレ径が算出される。この面積やフィレ径に基づいて、必要な位置情報を作成することができる。
【0013】
第4の発明に係る立体計測装置は、第3の発明の構成に加えて、作成手段は、面積およびフィレ径に基づいて、対象物の座標情報および傾き情報を作成するための手段を含む。
【0014】
第4の発明によると、面積およびフィレ径に基づいて、対象物の座標情報および傾き情報を作成できる。
【0015】
第5の発明に係る立体計測装置は、第1の発明の構成に加えて、対象物は直方体の形状を有し、ストロボ照明装置は、撮像手段の近傍の位置であって、直方体の上面の一辺に対して斜め方向の位置から対象物を照明するものである。
【0016】
第5の発明によると、直方体の斜め上方の位置からストロボ装置が発光する。このとき、直方体の周囲には斜め上方からのストロボ装置の光により少なくとも2辺の陰ができる。この陰は、線分として撮像される。この線分を表わす画像情報に基づいて、より正確な対象物の位置情報を作成することができる。
【0017】
第6の発明に係る立体計測装置は、第5の発明の構成に加えて、算出手段は、補正された画像データに対して、撮像手段から対象物までの距離に応じた色の強度の違いに対応するしきい値により画像データを二値化処理して、色の強度が異なる領域を抽出して、抽出された領域の中から対象物である直方体の上面の二辺の陰を選択して、選択された陰に基づいて、対象物の特徴量を算出するための手段を含む。
【0018】
第6の発明によると、色の強度の1つである明度の小さい、直方体の上面の二辺の陰の部分を選択して、陰の部分を表わす線分の長さに基づいて対象物の位置情報を作成する。線分の情報は、領域の情報よりもより正確に対象物の外形を表わしているので、より正確に対象物の位置情報を作成できる。
【0019】
第7の発明に係る立体計測装置は、第6の発明の構成に加えて、算出手段は、対象物の特徴量として、選択された二辺の陰の長さおよび傾きを算出するための手段を含む。
【0020】
第7の発明によると、色の強度の1つである明度の小さい、直方体の上面の二辺の陰の部分を選択して、二辺の陰を表わす線分の長さおよび傾きに基づいて対象物の位置情報をより正確に作成できる。
【0021】
第8の発明に係る立体計測装置は、第7の発明の構成に加えて、作成手段は、算出された二辺の陰の長さおよび傾きに基づいて、対象物の座標情報および傾き情報を作成するための手段を含む。
【0022】
第8の発明によると、二辺の陰の長さおよび傾きに基づいて、対象物の座標情報および傾き情報をより正確に作成できる。
【0023】
第9の発明に係る立体計測装置は、第1〜第8のいずれかのの発明の構成に加えて、処理手段に接続され、算出された位置情報をデパレタイジング用ロボットのコントローラに出力するための出力手段をさらに含む。
【0024】
第9の発明によると、出力手段は、算出された対象物の位置情報をデパレタイジング用ロボットのコントローラに出力する。これにより、デパレタイジング用ロボットのコントローラは、正確な対象物の位置情報に基づいてロボットを制御して、対象物をハンドリングすることができる。
【0025】
【発明の実施の形態】
以下、図面を参照しつつ、本発明の実施の形態について説明する。以下の説明では、同一の部品には同一の符号を付してある。それらの名称および機能も同じである。したがってそれらについての詳細な説明は繰返さない。
【0026】
<第1の実施の形態>
図1に、デパレタイズシステムに用いられる、本実施の形態に係る立体計測システムの全体構成図を示す。このデパレタイズシステムは、複数のワーク1100、1110が積載されたパレット1000から、各ワークをロボットを用いてデパレタイズする。本実施の形態に係る立体計測システムは、パレット1000上に載置されたワークについての立体計測データを、デパレタイズシステムのロボットに送信する。ロボットは受信した立体計測データに基づいて、ワークをハンドリングして、デパレタイズする。
【0027】
ロボットからの指示により、パレット1000の上方からカメラ100により2次元画像が撮像される。このカメラ100は、電子シャッターを有する、CCD(Charge Coupled Device)カメラである。このとき、ストロボ200は、カメラ100の電子シャッターに同期して発光する。このカメラ100は、モノクロであってもカラーであってもよい。また、このカメラ100は、NTSC等の標準方式またはプログレッシブ方式であってもよい。
【0028】
図1および図2に示すように、カメラ100は、パレット1000の中央の鉛直上方に設けられる。カメラ100で撮像される2次元領域は、パレット1000全体を十分に撮像できる大きさである。ストロボ200は、カメラ100とは異なり、パレット1000の斜め上方に設けられる。カメラ100とストロボ200との距離は、撮像した画像の明度のばらつきができるだけ少なくなるように設定されている。また。ストロボ200の角度は、カメラ100の視野に対して約45度の角度である。これらの位置関係を満足するように、カメラ100とストロボ200とを、ロボットのハンド部分に設置される。特に、距離の2乗に明るさが反比例することを利用しているので、常に作業対象最上段に相当する面を撮像する点で、ロボットのハンド部分に取付けることが有利である。なお、本発明は、カメラ100とストロボ200とがハンド部分に設置されるものに限定されない。カメラ100とストロボ200とは、ハンド部分と別置きであってもよい。また、カメラ100で撮像される2次元領域が、パレット1000全体を十分に撮像できない大きさである場合には、複数の領域に分割するようにしてもよい。
【0029】
カメラ100は、画像処理コンピュータに接続され、画像処理コンピュータから受信した撮像信号に基づいて、ワーク1100がない状態であって、ワーク1100の外面と同じ材質および色のテストワークを、ストロボ200を発光させた状態およびパレット1000に載置されたワーク1100を、ストロボ200を発光させた状態で、2次元領域を撮像する。カメラ100により撮像された画像データは、画像処理コンピュータにより画像処理が実行され、ワークの位置情報が作成される。テストワークを撮像した画像データは、シェーディング補正の基準データである。作業対象段の上面を撮像する距離に、テストワークとして鏡面反射の少ない色紙を設置する。このとき、テストワークの表面の色は、白色であっもよいが、ワーク1100に近い色紙を使用すると、明るさの補正の値にさらに補正することがなくなる。
【0030】
図3に、画像処理コンピュータの一例であるコンピュータシステムの外観を示す。図3を参照して、このコンピュータシステム300は、FD(Flexible Disk)駆動装置306およびCD−ROM(Compact Disc−Read Only Memory)駆動装置308を備えたコンピュータ302と、モニタ304と、キーボード310と、マウス312とを含む。
【0031】
図4に、このコンピュータシステム300の構成をブロック図形式で示す。図4に示すように、コンピュータ302は、上記したFD駆動装置306およびCD−ROM駆動装置308に加えて、相互にバスで接続されたCPU(CentralProcessing Unit)320と、メモリ322と、固定ディスク324と、ロボットコントローラに接続され、ロボットコントローラと通信するためのロボットコントローラインターフェイス326と、ストロボ200に接続され、ストロボ200に発光指示を表わす同期信号を送信するためのストロボ同期信号インターフェイス328と、カメラ100に接続され、カメラ100と通信するためのカメラインターフェイス330とを含む。FD駆動装置306にはFD316がセットされる。CD−ROM駆動装置308にはCD−ROM318がセットされる。
【0032】
画像処理する機能は、コンピュータハードウェアとCPU320により実行されるソフトウェアとにより実現される。一般的にこうしたソフトウェアは、FD316、CD−ROM318などの記録媒体に格納されて流通し、FD駆動装置306またはCD−ROM駆動装置308などにより記録媒体から読取られて固定ディスク324に一旦格納される。さらに固定ディスク324からメモリ322に読出されて、CPU320により実行される。
【0033】
これらのコンピュータのハードウェア自体は一般的なものである。コンピュータは、CPU320を含む制御回路、記憶回路、入力回路、出力回路およびOS(Operating System)を含み、プログラムを実行する環境を備えたものである。本発明は、このようなコンピュータに、画像処理機能を実現させるプログラムであるものを含む。したがって画像処理に関わる本発明の最も本質的な部分は、FD、CD−ROM、メモリカード、固定ディスクなどの記録媒体に記録されたプログラムおよびこのプログラムが記録された記録媒体であるものを含む。
【0034】
なお、図3および図4に示したコンピュータ自体の動作は周知であるので、ここではその詳細な説明は繰返さない。
【0035】
図5を参照して、カメラの視野領域に撮像されたワーク1120に対する水平フィレ径と垂直フィレ径について説明する。なお、視野領域に対してX軸とY軸とを図5に示すように設定する。ワーク1120に対して水平フィレ径は、Y軸方向無限遠方点からワーク1120に平行な光を照射したときにX軸に投影される長さである。ワーク1120に対する垂直フィレ径は、X軸無限遠方点から平行な光を照射した場合にY軸に投影される長さである。
【0036】
図6を参照して、カメラ100の視野領域に撮像されたワーク1120の4つの端点と、水平フィレ径および垂直フィレ径の関係について説明する。図6に示すように、ワーク1120は、「第1の点」、「第2の点」、「第3の点」および「第4の点」の4つの点により構成され、ワークの傾き角度はX軸に対する傾き(θ)を示す。「第1の点」のX座標は水平フィレ径の最小X座標に、「第1の点」のY座標は同一X座標で最大のY座標に、「第2の点」のX座標は水平フィレ径の最大X座標に、「第2の点」のY座標は同一X座標で最小のY座標に、「第3の点」のY座標は垂直フィレ径の最小Y座標に、「第3の点」のX座標は同一Y座標で最小のX座標に、「第4の点」のY座標は垂直フィレ径の最大Y座標に、「第4の点」のX座標は同一Y座標で最大のX座標に、それぞれ対応する。
【0037】
図7を参照して、シェーディング補正値を求めるための基準画像の中央部のプロファイルについて説明する。図7は、たとえば、パレット1000上にワーク1100を載置することなく、ワーク1100と同じ材質同じ色の平板をパレットに載置して、ストロボ装置200を発光させて撮像した場合のRGB成分のデータを表わす。横軸に、図5に示すX軸方向の座標を示す。波形400は、赤成分を、波形402は緑成分を、波形404は青成分を表わす。図7に示すように、どの色成分においても、パレット1000の中央部付近の明度が高く、周辺に行くに従ってその明度が落ちる。これは、ストロボ200が点光源であることに起因する。
【0038】
図8を参照して、基準画像にシェーディング補正をかけた場合の中央部のプロファイルについて説明する。図8に示すように、図7に示す基準画像にシェーディング補正をすると、R成分、G成分およびB成分ともに、X軸方向の座標にかかわらずフラットな波形となる。波形410は、赤成分を、波形412は緑成分を、波形414は青成分を示す。このようにして、図7に示す基準画像から算出されたシェーディング補正値を用いて、シェーディング補正をすることにより、図8に示すようなフラットな波形に補正することができる。すなわち、X軸方向の座標によらず明るさが均一になることを示す。
【0039】
図9および図10を参照して、図7および図8を用いて説明したシェーディング補正を、実際の画像データに適用した場合を説明する。図9に赤成分のシェーディング補正前の波形を、図10に赤成分のシェーディング補正後の波形を示す。図9に示す波形部分420、波形部分422および波形部分424に示されるように、X軸の中央付近から周辺に離れるに従って、明るさが低下している。それに対して、シェーディング補正を行なうと、図10に示すように、波形部分420は波形部分430に、波形部分422は波形部分432に、波形部分424は波形部分434に補正され、X軸方向の座標によらず明るさが均一に補正される。
【0040】
図11を参照して、シェーディング補正後の波形と、実際のパレット1000上のワークの状態との関係について説明する。図11の上部には、パレット1000に載置された5つのワーク1130を示す。なお、このワーク1130は、その一部に黒っぽい文字が印刷がされた印刷部1132を含む。また、中央部を示すX軸を線分440で示す。図11の下部には、シェーディング補正された赤成分の波形を示す。波形部分442は、最も暗いパレット1000の部分を、波形部分444は、上から2段目のワーク1130の上面の部分を、波形部分446は、最上段のワーク1130の明るい部分を、波形部分448は最上段のワーク1130の暗い印刷部1132を、波形部分450は最上段のワーク1130の明るい部分を、波形部分452は、上から2段目のワーク1130の明るい部分を、波形部分454は最も暗いパレット1000の部分にそれぞれ対応している。図11に示すように、波形部分444および波形部分452は、上から2段目のワーク1130の上面部分を、波形部分446および波形部分450は最上段のワーク1130の明るい部分を示している。このように、シェーディング補正された後の画像データを中央部を表わす線分440で走査した場合、点光源であるストロボ装置200の影響を受けず、ストロボ装置200から同じ距離にある最上段のワーク1130は同じ明るさのレベルの波形を有することになる。
【0041】
図12を参照して、本実施の形態に係る立体計測システムの画像処理コンピュータ300のCPU320で実行されるプログラムの制御構造について説明する。
【0042】
CPU320は、予め予備処理を行なう。この予備処理において、前述の説明のように、対象物であるワークがない状態において、ストロボ200を発光させて撮像した画像に基づいて、シェーディング補正値を算出し、算出されたシェーディング補正値を固定ディスク324に記憶する。
【0043】
ステップ(以下、ステップをSと略す。)104にて、CPU320は、ロボットからの撮像指示があると、カメラ100の電子シャッターに同期させてストロボを発光させる。このとき、ストロボ同期信号インターフェイス328を介して、ストロボ装置200に、制御信号が送信される。S106にて、CPU320は、原画像をフレームメモリに記憶する。S108にて、CPU320は、原画像をシェーディング補正する。このシェーディング補正により、前述したように、明るさの平準化処理が行なわれる。
【0044】
S110にて、CPU320は、原画像を二値化処理する。このとき二値化処理に用いられるしきい値は、最上段の対象物の上面が抽出できるように設定される。また、この二値化処理に用いられるしきい値は、予め固定ディスク324に記憶されている。S112にて、CPU320は、明るい閉曲面の領域(方形領域)を抽出する。このとき、CPU320は、N個の方形領域を抽出したものと想定する。
【0045】
S114にて、CPU320は、変数Iを初期化(I=1)する。S116にて、CPU320は、I番目の閉曲面領域(方形領域)の面積、水平フィレ径および垂直フィレ径を算出する。S118にて、CPU320は、I番目の閉曲面領域(方形領域)の面積S(I)が許容範囲内にあるか否か、水平フィレ径HF(I)が許容範囲内にあるか否かおよび垂直フィレ径VF(I)が許容範囲内にあるか否かを判断する。面積、水平フィレ径および垂直フィレ径のいずれもが許容範囲内にあると(S118にてYES)、処理はS124に移される。もしそうでないと(S118にてNO)、処理はS120へ移される。面積の許容範囲の下限をS1、上限をS2、フィレ径の許容範囲の下限をF1、上限をF2とする。
【0046】
S120にて、CPU320は、変数Iに1を加算する。S122にて、CPU320は、変数Iが抽出された方形領域の数Nよりも大きいか否かを判断する。変数IがNよりも大きい場合には(S122にてYES)、この処理を終了する。もしそうでないと(S122にてNO)、処理はS116へ戻され、次の閉曲面領域(方形領域)について処理が行なわれる。
【0047】
S124にて、CPU320は、I番目の閉曲面領域(方形領域)の四隅の4点の座標を算出する。S126にて、CPU320は、四隅の4点の座標に基づいて、傾き角度および重心座標を算出する。
【0048】
なお、S126で算出された傾き角度、重心座標などは、ロボットコントローラインターフェイス326を介して、画像処理コンピュータ300からロボットコントローラへ送信される。このようなデータを受信したロボットコントローラは、ロボットに対し最上段のワーク1100がハンドリングできるように、ロボットに座標を指示する。
【0049】
以上のような構造およびフローチャートに基づく、本実施の形態に係る立体計測システムの動作について説明する。
【0050】
まずパレット1000が所定の位置に到着するまでに、画像処理コンピュータ300において予備処理が実行される。このとき、シェーディング補正値が算出され固定ディスク324に記憶される。
【0051】
ロボットからの撮像指示があると、ストロボ同期信号インターフェイス328を介して、ストロボ装置200に対して制御信号が送信され、カメラの電子シャッタに同期させてストロボを発光させる(S104)。
【0052】
カメラ100により撮像された原画像がフレームメモリに記憶され(S106)、原画像がシェーディング補正される(S108)。このとき、図13に示すようなワーク1130およびワーク1140が載置されたパレットを撮像した場合について説明する。図14に最上段のワーク1140の原画像を模式的に表わした図を示す。図14に示すようにワーク1140は、ストロボ装置200の位置に対応する部分が最も明るく、その位置から離れるに従って暗くなるような画像データとなっている。この図14で模式的に示した画像データにシェーディング処理を施すと(S108)、図15に示すようにワーク1140の上面の明るさが平準化される。
【0053】
シェーディング補正された原画像の二値化処理が行なわれ、上段ワークの上面が抽出される(S110)。このときの画像データを図16に示す。明るい方形領域が抽出され、抽出されたN個の方形領域のそれぞれについて、面積、水平フィレ径および垂直フィレ径が算出される(S116)。これらの面積、水平フィレ径および垂直フィレ径が、それぞれ予め定められた許容範囲内にあると、その閉曲面領域(方形領域)が検出対象のワーク1140の上面であると判断されて(S118にてYES)、4点の座標が算出される(S124)。この時点でワークが検出される。このときの状態を図18に示す。なお、図17には、ノイズ除去画像を示す。このノイズ除去画像は、二値化画像(図16)に対してS114〜S122の処理を行なうことにより、次段のノイズが除去された図である。その後、ワーク1140の四隅の4点の座標に基づいて、傾き角度および重心座標が算出される(S126)。また、図19〜図21に、最上段に2つのワークがある場合の画像を示す。図19に二値化後の画像データを、図20にノイズ除去後の画像データを示す。さらに、図21に、ワークを検出した時の画像データを示す。
【0054】
その後、算出された傾き角度、中心座標については、ロボットコントローラインターフェイス326を介して、ロボットコントローラに送信される。
【0055】
以上のようにして、本実施の形態に係る立体計測システムによると、1台のカメラと1台のストロボ装置とを用いて、ストロボ装置から発光された光は、ストロボ装置からの距離の二乗に逆比例する明るさであるという性質に基づいて、検出したい距離にあるワークを、画像データを二値化処理することにより抽出することができる。さらに、この二値化処理の前には、明るさの不均一は、シェーディング補正により補正されているため、二値化処理により検出したいワークの上面の全体を抽出することができる。その結果、ストロボを用いるため外乱光による影響に強く、設備コストを抑制して、正確に対象物の立体形状を計測できる。
【0056】
<第2の実施の形態>
以下、本発明の第2の実施の形態に係る立体計測システムについて説明する。なお、以下に示す第2の実施の形態に係る立体計測システムのハードウェア構成は、前述の第1の実施の形態に係る立体計測システムのハードウェア構成と同じである。したがって、それらについての詳細な説明はここでは繰返さない。
【0057】
本実施の形態に係る立体計測システムは、前述の第1の実施の形態に係る立体計測システムとは検出対象であるワークの抽出方法が異なる。本実施の形態に係る立体計測システムにおいては、ストロボ装置200により斜め上方から発光された光により発生するワーク1100の上面の2辺の陰を用いることにより、ワークの位置座標を作成する。
【0058】
本実施の形態に係る立体計測システムは、ワークの概略位置が判明している場合に実施可能であって、陰はシャープな直線になるため、第1の実施の形態の立体計測システムに比べて、より高い位置精度が得られる場合が多い。流通過程でワークの概略位置が既知の場合、本実施の形態に係る立体計測システムが使用できる。この場合、第1の実施の形態に係る立体計測システムにおける精度をより向上させることができる。
【0059】
図22に、最上段にワーク1100が1つしかない場合のカメラ100の視野領域における陰の状態を示す。図22に示すように、ワーク1100の陰は、「第1の点」から「第2の点」に至る線分と、「第2の点」から「第3の点」に至る線分の2つの線分から構成される。ロボットから指示されたワークの概略重心からY軸に向かって(X軸と平行に)引いた線分と陰を表わす線分との交点を「第0の点」とする。すなわち、図22に示すように、「第0の点」は、「第1の点」と「第2の点」とから構成される線分上にある。また、視野領域よりも狭く、二辺の陰の線分を含む有効領域が設定される。この有効領域は、視野領域の中心を、その中心として、ワーク1100のサイズより30%程度大きい領域が設定される。なお、このように設定される前提としては、視野領域の中央近傍に、ワーク1100が来るようなカメラ100とパレット1100との位置関係が設定される。
【0060】
図23に、最上段において、隣接するワークとの隙間が陰になる場合の状態を示す。ワーク1100の陰である「第1の点」と「第2の点」とを結ぶ線分および「第2の点」と「第3の点」とを結ぶ線分の他に、隣接するワークとの隙間の陰が撮像されている。
【0061】
図24を参照して、本実施の形態に係る立体計測システムの画像処理コンピュータ300のCPU320で実行されるプログラムの制御構造について説明する。なお、図24に示すフローチャートの中で、前述の図12に示したフローチャートと同じ処理については同じステップ番号を付してある。それらについての処理も同じである。したがって、それらについての詳細な説明はここでは繰返さない。
【0062】
S200にて、CPU320は、原画像を二値化処理し、最上段の対象物であるワーク1100の上面の二辺の陰を抽出する。S202にて、CPU320は、有効領域を設定する。この有効領域は、前述の図22および図23に示した領域である。S204にて、CPU320は、白黒反転して、陰を白色(輝度255)に設定する。なお、このカメラ100の解像度は8ビットであると想定する。
【0063】
S119にて、I番目の閉曲面領域(方形領域)の面積S(I)がしきい値Sよりも大きいか否か、水平フィレ径HF(I)がしきい値HFよりも大きいか否か、および垂直フィレ径VF(I)がしきい値VFよりも大きいか否かを判断する。面積、水平フィレ径および垂直フィレ径のいずれもがしきい値よりも大きいと(S119にてYES)、処理はS210に移される。もしそうでないと(S119にてNO)、処理はS120へ移される。
【0064】
S210にて、CPU320は、白黒反転して、陰を黒色(輝度0)に設定する。S300にて、CPU320は、端点算出処理を行なう。このS300における端点算出処理は、図25を用いて詳述する。
【0065】
図25を参照して、端点算出処理について説明する。
S304にて、CPU320は、ロボットから指示されたワークの概略重心からX軸に平行に左側の陰を探索して、陰との交点を「第0の点」とする。S400にて、CPU320は、「第0の点」に基づく、下側の端点である「第2の点」の探索処理を行なう。このS400における処理の詳細については後述する。
【0066】
S500にて、CPU320は、「第0の点」に基づく、上側の端点である「第1の点」の探索処理を行なう。このS500の処理の詳細については後述する。
【0067】
S600にて、CPU320は、「第2の点」に基づく、「第1の点」の対角である「第3の点」の探索処理を行なう。このS600における処理の詳細については後述する。
【0068】
S306にて、CPU320は、「第1の点」、「第2の点」および「第3の点」に基づいて、傾き角度を算出する。S308にて、CPU320は、対象物であるワーク1100の仕様から、残りの端点の座標を算出して、重心座標を算出する。
【0069】
図26を参照して、S400における探索処理の詳細について説明する。
S402にて、CPU320は、「第0の点」での陰の傾きKを算出する。
【0070】
S404にて、CPU320は、変数Jを初期化(J=1)する。S406にて、CPU320は、「第0の点」のJ行下のピクセルを左から右にスキャンして、最初に見つかった輝度が0の点を、J行下の陰の点として算出する。S408にて、CPU320は、J行下の陰の点の傾きを算出する。
【0071】
S410にて、CPU320は、算出した傾きが(K−α)と(K+α)の間にあるか否かを判断する。なお、αは、予め定められた定数である。算出した傾きが、(K−α)と(K+α)の間にあると(S420にてYES)、処理はS412へ移される。もしそうでないと(S410にてNO)、処理はS414へ移される。
【0072】
S414にて、CPU320は、変数Jに1を加算し、処理をS406へ戻す。
【0073】
S414にて、CPU320は、「第0の点」から(J−1)行下の点を、下側の端点である「第2の点」とする。
【0074】
図27を参照して、S500の探索処理について説明する。
S502にて、CPU320は、「第0の点」と「第2の点」との陰の傾き径を算出する。
【0075】
S504にて、CPU320は、変数Jを初期化(J=1)する。
S506にて、CPU320は、「第0の点」のJ行上のピクセルを右から左にスキャンして、最初に見つかった輝度が0の点を、J行上の陰の点として算出する。
【0076】
S508にて、CPU320は、J行上の陰の点が検出できたか否かを判断する。J行上の陰の点が算出できると(S508にてYES)、処理はS510へ移される。もしそうでないと(S508にてNO)、処理はS516へ移される。
【0077】
S510にて、CPU320は、J行上の陰の点の傾きを算出する。S512にて、CPU320は、算出した傾きが、(K−α)と(K+α)の間にあるか否かを判断する。算出した傾きが、(K−α)と(K+α)の間にある場合には(S512にてYES)、処理はS514へ移される。もしそうでないと(S512にてNO)、処理はS516へ移される。
【0078】
S514にて、CPU320は、変数Jに1を加算し、処理をS506へ戻す。
【0079】
S516にて、CPU320は、「第0の点」から(J−1)行上の点を、上側の端点である「第1の点」とする。
【0080】
図28を参照して、S600の探索処理について説明する。
S602にて、CPU320は、「第2の点」での陰の傾きKを算出する。
【0081】
S604にて、CPU320は、変数Jを初期化(J=1)する。S606にて、CPU320は、「第2の点」のJ行右のピクセルを上から下にスキャンして、最初に見つかった輝度が0の点を、J列右の陰の点として算出する。
【0082】
S608にて、CPU320は、J列右の陰の点が算出できたか否かを判断する。J列右の陰の点が算出できると(S608にてYES)、処理はS610へ移される。もしそうでないと(S608にてNO)、処理はS616へ移される。
【0083】
S610にて、CPU320は、J列右の陰の点の傾きを算出する。S612にて、CPU320は、算出した傾きが、(K−α)と(K+α)の間にあるか否かを判断する。算出した傾きが(K−α)と(K+α)間にある場合には(S612にてYES)、処理はS614へ移される。もしそうでないと(S612にてNO)、処理はS616へ移される。
【0084】
S614にて、CPU320は、変数Jに1を加算し、処理をS606へ戻す。
【0085】
S616にて、CPU320は、「第2の点」から(J−1)列右の点を、「第1の点」の対角の端点である「第3の点」とする。
【0086】
以上のような構造およびフローチャートに基づく本実施の形態に係る立体計測システムの動作について説明する。なお、以下に示す動作の説明の中で、前述の第1の実施の形態に係る立体計測システムの動作と同じ動作についての詳細な説明は、ここでは繰返さない。
【0087】
シェーディング補正値を算出する予備処理が行われた後(S100)、ストロボ発光に同期させて、カメラ100の電子シャッターがオンされて、ワークが撮像される(S104)。原画像を表わすデータがフレームメモリに記憶され(S106)、原画像がシェーディング補正される(S108)。原画像が二値化処理され、最上段の対象物であるワークの陰が抽出される(S200)。有効領域が設定された後(S202)、白黒反転して陰が白色になるように設定される(S204)。明るい閉曲面領域が抽出されて、それぞれの閉曲面領域(方形領域)における面積、水平フィレ径および垂直フィレ径が算出され、面積、水平フィレ径および垂直フィレ径のそれぞれが予め定められたしきい値よりも大きいと(S119にてYES)、端点算出処理が実行される(S300)。なお、S114からS122までの処理が行われることにより最上段のワークの表面の模様等が除去される。
【0088】
端点算出処理においては、ロボットから指示されたワークの概略重心から陰が探索され、「第0の点」が算出される(S304)。「第0の点に基づく、下側の端点である「第2の点」が探索される(S400)。「第0の点に基づく、上側の端点である「第1の点」の探索が行なわれる(S500)。「第2の点」に基づく、「第1の点」の対角である「第3の点」の探索処理が行なわれる(S600)。これにより、第1の点、第2の点、第3の点の探索処理が行なわれ、ワーク1100の端点4つのうちの3点が算出される。「第1の点」、「第2の点」および「第3の点」に基づいて、傾き角度が算出され(S306)、対象物の使用から、残りの端点(「第4の点」)の座標を算出して、重心座標が算出される(S308)。
【0089】
図29〜図36に、本実施の形態に係る立体計測システムの画像データの例を示す。図29および図33に二値化後の画像データを、図30および図34にノイズ除去後の画像データを示す。さらに、図31および図35に端点を検出した際の画像データを、図32および図36にワークを検出したときの画像データを示す。図30および図34に示すようにワーク1100の左側と下側に陰が撮像され、この陰に基づいて端点が検出される。
【0090】
以上のようにして、本実施の形態に係る立体計測システムによると、ワークの上面の二辺の陰の部分を表わす線分の長さなどに基づいて対象物であるワークの位置情報が作成される。線分の情報は、領域の情報よりもより正確に対象物であるワークの外形を表わしているので、より正確に対象物であるワークの位置情報を作成することができる。
【0091】
今回開示された実施の形態はすべての点で例示であって制限的なものではないと考えられるべきである。本発明の範囲は上記した説明ではなくて特許請求の範囲によって示され、特許請求の範囲と均等の意味および範囲内でのすべての変更が含まれることが意図される。
【図面の簡単な説明】
【図1】本発明の第1の実施の形態に係る立体計測システムの外観図である。
【図2】図1の立体計測システムを上方から見た平面図である。
【図3】本発明の第1の実施に形態に係る画像処理コンピュータの外観図である。
【図4】図3に示すコンピュータシステムの制御ブロック図である。
【図5】視野領域におけるフィレ径を説明するための図である。
【図6】視野領域におけるワークの端点を説明するための図である。
【図7】シェーディング補正値を求めるための基準画像の中央部のプロファイルである。
【図8】基準画像にシェーディング補正を実行した場合の中央部のプロファイルである。
【図9】実画像におけるシェーディング補正前の状態を示す図である。
【図10】実画像におけるシェーディング補正後の状態を示す図である。
【図11】実画像とシェーディング補正後の画像データとの関係を示す図である。
【図12】本発明の第1の実施に形態に係る画像処理コンピュータで実行されるプログラムの制御構造を示すフローチャートである。
【図13】シェーディング補正の状態を説明するための図(その1)である。
【図14】シェーディング補正の状態を説明するための図(その2)である。
【図15】シェーディング補正の状態を説明するための図(その3)である。
【図16】本発明の第1の実施に形態に係る画像処理コンピュータでの処理の状態を示す図(その1)である。
【図17】本発明の第1の実施に形態に係る画像処理コンピュータでの処理の状態を示す図(その2)である。
【図18】本発明の第1の実施に形態に係る画像処理コンピュータでの処理の状態を示す図(その3)である。
【図19】本発明の第1の実施に形態に係る画像処理コンピュータでの処理の状態を示す図(その4)である。
【図20】本発明の第1の実施に形態に係る画像処理コンピュータでの処理の状態を示す図(その5)である。
【図21】本発明の第1の実施に形態に係る画像処理コンピュータでの処理の状態を示す図(その6)である。
【図22】本発明の第2の実施の形態に係る視野領域におけるワークの陰を説明するための図(その1)である。
【図23】本発明の第2の実施の形態に係る視野領域におけるワークの陰を説明するための図(その2)である。
【図24】本発明の第2の実施に形態に係る画像処理コンピュータで実行されるプログラムの制御構造を示すフローチャートである。
【図25】図21に示す端点算出処理の制御構造を示すフローチャートである。
【図26】図25に示す「第0の点」に基づく「第2の点」の探索処理の制御構造を示すフローチャートである。
【図27】図25に示す「第0の点」に基づく「第1の点」の探索処理の制御構造を示すフローチャートである。
【図28】図25に示す「第2の点」に基づく「第3の点」の探索処理の制御構造を示すフローチャートである。
【図29】本発明の第2の実施に形態に係る画像処理コンピュータでの処理の状態を示す図(その1)である。
【図30】本発明の第2の実施に形態に係る画像処理コンピュータでの処理の状態を示す図(その2)である。
【図31】本発明の第2の実施に形態に係る画像処理コンピュータでの処理の状態を示す図(その3)である。
【図32】本発明の第2の実施に形態に係る画像処理コンピュータでの処理の状態を示す図(その4)である。
【図33】本発明の第2の実施に形態に係る画像処理コンピュータでの処理の状態を示す図(その5)である。
【図34】本発明の第2の実施に形態に係る画像処理コンピュータでの処理の状態を示す図(その6)である。
【図35】本発明の第2の実施に形態に係る画像処理コンピュータでの処理の状態を示す図(その7)である。
【図36】本発明の第2の実施に形態に係る画像処理コンピュータでの処理の状態を示す図(その8)である。
【符号の説明】
100 カメラ、200 ストロボ、300 コンピュータシステム、302コンピュータ、304 モニタ、306 FD駆動装置、308 CD−ROM駆動装置、310 キーボード、312 マウス、326 ロボットコントローラインターフェイス、328 ストロボ同期信号インターフェイス、330 カメラインターフェイス、1000 パレット、1100、1110、1120、1130、1140 ワーク、1132 暗い印刷部。
【発明の属する技術分野】
本発明は、立体を計測する技術に関し、特に、パレットに積み上げられたダンボール箱などのワークの位置を立体的に認識する技術に関する。
【0002】
【従来の技術】
最近、産業用ロボットの用途の1つとして、パレットの上にワークである段ボール箱を予め定められた順序に従って積み上げるパレタイズ作業がある。特にワークが重い場合に、大きな省力効果を発現する。このようにしてパレタイズされたパレットからワークを取出すデパレタイズ作業にも、産業用ロボットが使用されている。パレットに積み上げられたワークは、トラックなどによる搬送途中においてワークがずれることがある。そのため、デパレタイズ時には、ワークの高さ、位置を正確に把握しないと、デパレタイズロボットが正確にワークをハンドリングできない。
【0003】
特開平7−291450号公報は、パレタイズされているワークの中から最上段にあるワークの選出を迅速に実行するパレタイズシステムを開示する。この公報に開示されたパレタイジングシステムは、任意に積み上げられたワークを斜め上方から照明する第1の照明装置と、ワークの上方から照明する第2の照明装置と、第1および第2の照明装置を操作して画像処理に適した照明を実現する照明制御装置と、第1のステレオカメラ装置と、第2のステレオカメラ装置と、第1および第2のステレオカメラ装置を制御するカメラ制御装置と、ステレオカメラにより撮像された画像データを処理して最上位に位置するワークを選択して、マッチング処理を実行して、ワークの種類、姿勢および把持位置を算出して、ロボットコントローラに出力する画像処理装置とを含む。
【0004】
この公報に開示されたパレタイジングシステムによると、第1の照明装置および第2の照明装置を照明制御装置により操作して、第1の照明装置はパレットに積み上げられている上部のワークを照明して、第2の照明装置はパレットに積み上げられている下部のワークを照明する。第1のステレオカメラ装置および第2のステレオカメラ装置をカメラ制御装置により操作して、照明されているワークを撮像する。このようにして得られた画像を画像処理装置に入力して画像解析を行ない、最上部に位置するワークを選出する。その後、マッチング処理を行ない選出されたワークの種類、姿勢および把持位置を決定する。このワークの種類、姿勢および把持位置は、ロボットコントローラに入力されてロボットハンドの操作量が算出される。ロボットコントローラは、この操作量によりロボットハンドを操作してワークをデパレタイズする。これにより、第1の照明装置および第2の照明装置を操作して画像処理がしやすい状態にワークを照明しているので、最上位に位置するワークを選出することが簡易にできる。その結果、デパレタイズ作業における作業能率を著しく向上させることができる。
【0005】
【発明が解決しようとする課題】
しかしながら、上述の公報に開示されたシステムでは、デパレタイズの対象である、ワークを撮像する照明装置が2台、ワークを撮像するカメラが2台必要になる。そのため、システムの装備が大掛かりになるとともにシステムが高価格になる。さらに、2台の照明装置によっては、ワークの周囲からの外乱光によりワークを均一に照明できないなどにより、画像処理装置におけるデータ処理の結果に誤差が生じるおそれがある。
【0006】
本発明は、上述の課題を解決するためになされたものであって、外乱光による影響に強く、設備コストを抑制して、正確に対象物の立体形状を計測できる立体計測装置を提供することである。
【0007】
【課題を解決するための手段】
第1の発明に係る立体計測装置は、対象物を撮像するための撮像手段と、対象物を照明するストロボ照明装置と、ストロボ照明装置の発光に同期させて撮像手段により対象物を撮像するように、撮像手段とストロボ照明装置とを制御するための制御手段と、撮像手段に接続され、撮像された対象物を表わす画像データに対して、画像処理を行なうための処理手段とを含む。処理手段は、画像データに対して、色の強度の不均一を補正するための補正手段と、補正された画像データに対して、撮像手段から対象物までの距離に応じた色の強度の違いに基づいて、対象物の特徴量を算出するための算出手段と、算出された特徴量に基づいて、対象物の位置情報を作成するための作成手段とを含む。
【0008】
第1の発明によると、制御手段は、ストロボ装置の発光に同期させて、撮像手段の1つであるカメラの電子シャッターをオンにして対象物を撮像する。補正手段は、対象物が撮像された画像データにおける色の強度の1つである明度の不均一をシェーディング補正などにより補正する。この補正により、ストロボ装置から同じ距離にある対象物は同じ明度を有することになる。算出手段は、たとえば、ストロボ装置から対象物までの距離に応じた明度のしきい値を用いて、この補正された画像データを二値化処理して、検出したい高さの対象物のみを抽出して、抽出された対象物の面積などを表わす特徴量を算出する。作成手段は、対象物の特徴量に基づいて、対象物の端点の座標情報などを作成する。これにより、ストロボ装置から発光された光は、ストロボ装置からの距離の二乗に逆比例する明るさであるという性質に基づいて、検出したい距離にある対象物を、画像データを二値化処理することにより抽出することができる。この二値化処理の前に、明るさの不均一は補正されているので、二値化処理により検出したい対象物の全体を抽出することができる。その結果、外乱光による影響に強く、設備コストを抑制して、正確に対象物の立体形状を計測できる立体計測装置を提供することができる。なお、色の強度とは、RGBの個別の強度、それらの強度から換算できる明度、色相、彩度等の変換量の強度、RGBの個別の強度を適宜組み合わせた強度、特定の色彩の強度などを含む。
【0009】
第2の発明に係る立体計測装置は、第1の発明の構成に加えて、算出手段は、補正された画像データに対して、撮像手段から対象物までの距離に応じた色の強度の違いに対応するしきい値により画像データを二値化処理して、色の強度が異なる領域を抽出して、抽出された領域に基づいて、対象物の特徴量を算出するための手段を含む。
【0010】
第2の発明によると、算出手段は、ストロボ装置から対象物までの距離に応じた色の強度の1つである明度のしきい値を用いて、この補正された画像データを二値化処理して、検出したい高さの対象物のみを抽出して、抽出された対象物の面積などを表わす特徴量を算出することができる。二値化処理により検出したい対象物の全体を抽出するため、正確に対象物の立体形状を計測できる。
【0011】
第3の発明に係る立体計測装置は、第2の発明の構成に加えて、算出手段は、対象物の特徴量として、抽出された領域の面積および領域のフィレ径を算出するための手段を含む。
【0012】
第3の発明によると、検出したい対象物を表わす領域の面積および領域のフィレ径が算出される。この面積やフィレ径に基づいて、必要な位置情報を作成することができる。
【0013】
第4の発明に係る立体計測装置は、第3の発明の構成に加えて、作成手段は、面積およびフィレ径に基づいて、対象物の座標情報および傾き情報を作成するための手段を含む。
【0014】
第4の発明によると、面積およびフィレ径に基づいて、対象物の座標情報および傾き情報を作成できる。
【0015】
第5の発明に係る立体計測装置は、第1の発明の構成に加えて、対象物は直方体の形状を有し、ストロボ照明装置は、撮像手段の近傍の位置であって、直方体の上面の一辺に対して斜め方向の位置から対象物を照明するものである。
【0016】
第5の発明によると、直方体の斜め上方の位置からストロボ装置が発光する。このとき、直方体の周囲には斜め上方からのストロボ装置の光により少なくとも2辺の陰ができる。この陰は、線分として撮像される。この線分を表わす画像情報に基づいて、より正確な対象物の位置情報を作成することができる。
【0017】
第6の発明に係る立体計測装置は、第5の発明の構成に加えて、算出手段は、補正された画像データに対して、撮像手段から対象物までの距離に応じた色の強度の違いに対応するしきい値により画像データを二値化処理して、色の強度が異なる領域を抽出して、抽出された領域の中から対象物である直方体の上面の二辺の陰を選択して、選択された陰に基づいて、対象物の特徴量を算出するための手段を含む。
【0018】
第6の発明によると、色の強度の1つである明度の小さい、直方体の上面の二辺の陰の部分を選択して、陰の部分を表わす線分の長さに基づいて対象物の位置情報を作成する。線分の情報は、領域の情報よりもより正確に対象物の外形を表わしているので、より正確に対象物の位置情報を作成できる。
【0019】
第7の発明に係る立体計測装置は、第6の発明の構成に加えて、算出手段は、対象物の特徴量として、選択された二辺の陰の長さおよび傾きを算出するための手段を含む。
【0020】
第7の発明によると、色の強度の1つである明度の小さい、直方体の上面の二辺の陰の部分を選択して、二辺の陰を表わす線分の長さおよび傾きに基づいて対象物の位置情報をより正確に作成できる。
【0021】
第8の発明に係る立体計測装置は、第7の発明の構成に加えて、作成手段は、算出された二辺の陰の長さおよび傾きに基づいて、対象物の座標情報および傾き情報を作成するための手段を含む。
【0022】
第8の発明によると、二辺の陰の長さおよび傾きに基づいて、対象物の座標情報および傾き情報をより正確に作成できる。
【0023】
第9の発明に係る立体計測装置は、第1〜第8のいずれかのの発明の構成に加えて、処理手段に接続され、算出された位置情報をデパレタイジング用ロボットのコントローラに出力するための出力手段をさらに含む。
【0024】
第9の発明によると、出力手段は、算出された対象物の位置情報をデパレタイジング用ロボットのコントローラに出力する。これにより、デパレタイジング用ロボットのコントローラは、正確な対象物の位置情報に基づいてロボットを制御して、対象物をハンドリングすることができる。
【0025】
【発明の実施の形態】
以下、図面を参照しつつ、本発明の実施の形態について説明する。以下の説明では、同一の部品には同一の符号を付してある。それらの名称および機能も同じである。したがってそれらについての詳細な説明は繰返さない。
【0026】
<第1の実施の形態>
図1に、デパレタイズシステムに用いられる、本実施の形態に係る立体計測システムの全体構成図を示す。このデパレタイズシステムは、複数のワーク1100、1110が積載されたパレット1000から、各ワークをロボットを用いてデパレタイズする。本実施の形態に係る立体計測システムは、パレット1000上に載置されたワークについての立体計測データを、デパレタイズシステムのロボットに送信する。ロボットは受信した立体計測データに基づいて、ワークをハンドリングして、デパレタイズする。
【0027】
ロボットからの指示により、パレット1000の上方からカメラ100により2次元画像が撮像される。このカメラ100は、電子シャッターを有する、CCD(Charge Coupled Device)カメラである。このとき、ストロボ200は、カメラ100の電子シャッターに同期して発光する。このカメラ100は、モノクロであってもカラーであってもよい。また、このカメラ100は、NTSC等の標準方式またはプログレッシブ方式であってもよい。
【0028】
図1および図2に示すように、カメラ100は、パレット1000の中央の鉛直上方に設けられる。カメラ100で撮像される2次元領域は、パレット1000全体を十分に撮像できる大きさである。ストロボ200は、カメラ100とは異なり、パレット1000の斜め上方に設けられる。カメラ100とストロボ200との距離は、撮像した画像の明度のばらつきができるだけ少なくなるように設定されている。また。ストロボ200の角度は、カメラ100の視野に対して約45度の角度である。これらの位置関係を満足するように、カメラ100とストロボ200とを、ロボットのハンド部分に設置される。特に、距離の2乗に明るさが反比例することを利用しているので、常に作業対象最上段に相当する面を撮像する点で、ロボットのハンド部分に取付けることが有利である。なお、本発明は、カメラ100とストロボ200とがハンド部分に設置されるものに限定されない。カメラ100とストロボ200とは、ハンド部分と別置きであってもよい。また、カメラ100で撮像される2次元領域が、パレット1000全体を十分に撮像できない大きさである場合には、複数の領域に分割するようにしてもよい。
【0029】
カメラ100は、画像処理コンピュータに接続され、画像処理コンピュータから受信した撮像信号に基づいて、ワーク1100がない状態であって、ワーク1100の外面と同じ材質および色のテストワークを、ストロボ200を発光させた状態およびパレット1000に載置されたワーク1100を、ストロボ200を発光させた状態で、2次元領域を撮像する。カメラ100により撮像された画像データは、画像処理コンピュータにより画像処理が実行され、ワークの位置情報が作成される。テストワークを撮像した画像データは、シェーディング補正の基準データである。作業対象段の上面を撮像する距離に、テストワークとして鏡面反射の少ない色紙を設置する。このとき、テストワークの表面の色は、白色であっもよいが、ワーク1100に近い色紙を使用すると、明るさの補正の値にさらに補正することがなくなる。
【0030】
図3に、画像処理コンピュータの一例であるコンピュータシステムの外観を示す。図3を参照して、このコンピュータシステム300は、FD(Flexible Disk)駆動装置306およびCD−ROM(Compact Disc−Read Only Memory)駆動装置308を備えたコンピュータ302と、モニタ304と、キーボード310と、マウス312とを含む。
【0031】
図4に、このコンピュータシステム300の構成をブロック図形式で示す。図4に示すように、コンピュータ302は、上記したFD駆動装置306およびCD−ROM駆動装置308に加えて、相互にバスで接続されたCPU(CentralProcessing Unit)320と、メモリ322と、固定ディスク324と、ロボットコントローラに接続され、ロボットコントローラと通信するためのロボットコントローラインターフェイス326と、ストロボ200に接続され、ストロボ200に発光指示を表わす同期信号を送信するためのストロボ同期信号インターフェイス328と、カメラ100に接続され、カメラ100と通信するためのカメラインターフェイス330とを含む。FD駆動装置306にはFD316がセットされる。CD−ROM駆動装置308にはCD−ROM318がセットされる。
【0032】
画像処理する機能は、コンピュータハードウェアとCPU320により実行されるソフトウェアとにより実現される。一般的にこうしたソフトウェアは、FD316、CD−ROM318などの記録媒体に格納されて流通し、FD駆動装置306またはCD−ROM駆動装置308などにより記録媒体から読取られて固定ディスク324に一旦格納される。さらに固定ディスク324からメモリ322に読出されて、CPU320により実行される。
【0033】
これらのコンピュータのハードウェア自体は一般的なものである。コンピュータは、CPU320を含む制御回路、記憶回路、入力回路、出力回路およびOS(Operating System)を含み、プログラムを実行する環境を備えたものである。本発明は、このようなコンピュータに、画像処理機能を実現させるプログラムであるものを含む。したがって画像処理に関わる本発明の最も本質的な部分は、FD、CD−ROM、メモリカード、固定ディスクなどの記録媒体に記録されたプログラムおよびこのプログラムが記録された記録媒体であるものを含む。
【0034】
なお、図3および図4に示したコンピュータ自体の動作は周知であるので、ここではその詳細な説明は繰返さない。
【0035】
図5を参照して、カメラの視野領域に撮像されたワーク1120に対する水平フィレ径と垂直フィレ径について説明する。なお、視野領域に対してX軸とY軸とを図5に示すように設定する。ワーク1120に対して水平フィレ径は、Y軸方向無限遠方点からワーク1120に平行な光を照射したときにX軸に投影される長さである。ワーク1120に対する垂直フィレ径は、X軸無限遠方点から平行な光を照射した場合にY軸に投影される長さである。
【0036】
図6を参照して、カメラ100の視野領域に撮像されたワーク1120の4つの端点と、水平フィレ径および垂直フィレ径の関係について説明する。図6に示すように、ワーク1120は、「第1の点」、「第2の点」、「第3の点」および「第4の点」の4つの点により構成され、ワークの傾き角度はX軸に対する傾き(θ)を示す。「第1の点」のX座標は水平フィレ径の最小X座標に、「第1の点」のY座標は同一X座標で最大のY座標に、「第2の点」のX座標は水平フィレ径の最大X座標に、「第2の点」のY座標は同一X座標で最小のY座標に、「第3の点」のY座標は垂直フィレ径の最小Y座標に、「第3の点」のX座標は同一Y座標で最小のX座標に、「第4の点」のY座標は垂直フィレ径の最大Y座標に、「第4の点」のX座標は同一Y座標で最大のX座標に、それぞれ対応する。
【0037】
図7を参照して、シェーディング補正値を求めるための基準画像の中央部のプロファイルについて説明する。図7は、たとえば、パレット1000上にワーク1100を載置することなく、ワーク1100と同じ材質同じ色の平板をパレットに載置して、ストロボ装置200を発光させて撮像した場合のRGB成分のデータを表わす。横軸に、図5に示すX軸方向の座標を示す。波形400は、赤成分を、波形402は緑成分を、波形404は青成分を表わす。図7に示すように、どの色成分においても、パレット1000の中央部付近の明度が高く、周辺に行くに従ってその明度が落ちる。これは、ストロボ200が点光源であることに起因する。
【0038】
図8を参照して、基準画像にシェーディング補正をかけた場合の中央部のプロファイルについて説明する。図8に示すように、図7に示す基準画像にシェーディング補正をすると、R成分、G成分およびB成分ともに、X軸方向の座標にかかわらずフラットな波形となる。波形410は、赤成分を、波形412は緑成分を、波形414は青成分を示す。このようにして、図7に示す基準画像から算出されたシェーディング補正値を用いて、シェーディング補正をすることにより、図8に示すようなフラットな波形に補正することができる。すなわち、X軸方向の座標によらず明るさが均一になることを示す。
【0039】
図9および図10を参照して、図7および図8を用いて説明したシェーディング補正を、実際の画像データに適用した場合を説明する。図9に赤成分のシェーディング補正前の波形を、図10に赤成分のシェーディング補正後の波形を示す。図9に示す波形部分420、波形部分422および波形部分424に示されるように、X軸の中央付近から周辺に離れるに従って、明るさが低下している。それに対して、シェーディング補正を行なうと、図10に示すように、波形部分420は波形部分430に、波形部分422は波形部分432に、波形部分424は波形部分434に補正され、X軸方向の座標によらず明るさが均一に補正される。
【0040】
図11を参照して、シェーディング補正後の波形と、実際のパレット1000上のワークの状態との関係について説明する。図11の上部には、パレット1000に載置された5つのワーク1130を示す。なお、このワーク1130は、その一部に黒っぽい文字が印刷がされた印刷部1132を含む。また、中央部を示すX軸を線分440で示す。図11の下部には、シェーディング補正された赤成分の波形を示す。波形部分442は、最も暗いパレット1000の部分を、波形部分444は、上から2段目のワーク1130の上面の部分を、波形部分446は、最上段のワーク1130の明るい部分を、波形部分448は最上段のワーク1130の暗い印刷部1132を、波形部分450は最上段のワーク1130の明るい部分を、波形部分452は、上から2段目のワーク1130の明るい部分を、波形部分454は最も暗いパレット1000の部分にそれぞれ対応している。図11に示すように、波形部分444および波形部分452は、上から2段目のワーク1130の上面部分を、波形部分446および波形部分450は最上段のワーク1130の明るい部分を示している。このように、シェーディング補正された後の画像データを中央部を表わす線分440で走査した場合、点光源であるストロボ装置200の影響を受けず、ストロボ装置200から同じ距離にある最上段のワーク1130は同じ明るさのレベルの波形を有することになる。
【0041】
図12を参照して、本実施の形態に係る立体計測システムの画像処理コンピュータ300のCPU320で実行されるプログラムの制御構造について説明する。
【0042】
CPU320は、予め予備処理を行なう。この予備処理において、前述の説明のように、対象物であるワークがない状態において、ストロボ200を発光させて撮像した画像に基づいて、シェーディング補正値を算出し、算出されたシェーディング補正値を固定ディスク324に記憶する。
【0043】
ステップ(以下、ステップをSと略す。)104にて、CPU320は、ロボットからの撮像指示があると、カメラ100の電子シャッターに同期させてストロボを発光させる。このとき、ストロボ同期信号インターフェイス328を介して、ストロボ装置200に、制御信号が送信される。S106にて、CPU320は、原画像をフレームメモリに記憶する。S108にて、CPU320は、原画像をシェーディング補正する。このシェーディング補正により、前述したように、明るさの平準化処理が行なわれる。
【0044】
S110にて、CPU320は、原画像を二値化処理する。このとき二値化処理に用いられるしきい値は、最上段の対象物の上面が抽出できるように設定される。また、この二値化処理に用いられるしきい値は、予め固定ディスク324に記憶されている。S112にて、CPU320は、明るい閉曲面の領域(方形領域)を抽出する。このとき、CPU320は、N個の方形領域を抽出したものと想定する。
【0045】
S114にて、CPU320は、変数Iを初期化(I=1)する。S116にて、CPU320は、I番目の閉曲面領域(方形領域)の面積、水平フィレ径および垂直フィレ径を算出する。S118にて、CPU320は、I番目の閉曲面領域(方形領域)の面積S(I)が許容範囲内にあるか否か、水平フィレ径HF(I)が許容範囲内にあるか否かおよび垂直フィレ径VF(I)が許容範囲内にあるか否かを判断する。面積、水平フィレ径および垂直フィレ径のいずれもが許容範囲内にあると(S118にてYES)、処理はS124に移される。もしそうでないと(S118にてNO)、処理はS120へ移される。面積の許容範囲の下限をS1、上限をS2、フィレ径の許容範囲の下限をF1、上限をF2とする。
【0046】
S120にて、CPU320は、変数Iに1を加算する。S122にて、CPU320は、変数Iが抽出された方形領域の数Nよりも大きいか否かを判断する。変数IがNよりも大きい場合には(S122にてYES)、この処理を終了する。もしそうでないと(S122にてNO)、処理はS116へ戻され、次の閉曲面領域(方形領域)について処理が行なわれる。
【0047】
S124にて、CPU320は、I番目の閉曲面領域(方形領域)の四隅の4点の座標を算出する。S126にて、CPU320は、四隅の4点の座標に基づいて、傾き角度および重心座標を算出する。
【0048】
なお、S126で算出された傾き角度、重心座標などは、ロボットコントローラインターフェイス326を介して、画像処理コンピュータ300からロボットコントローラへ送信される。このようなデータを受信したロボットコントローラは、ロボットに対し最上段のワーク1100がハンドリングできるように、ロボットに座標を指示する。
【0049】
以上のような構造およびフローチャートに基づく、本実施の形態に係る立体計測システムの動作について説明する。
【0050】
まずパレット1000が所定の位置に到着するまでに、画像処理コンピュータ300において予備処理が実行される。このとき、シェーディング補正値が算出され固定ディスク324に記憶される。
【0051】
ロボットからの撮像指示があると、ストロボ同期信号インターフェイス328を介して、ストロボ装置200に対して制御信号が送信され、カメラの電子シャッタに同期させてストロボを発光させる(S104)。
【0052】
カメラ100により撮像された原画像がフレームメモリに記憶され(S106)、原画像がシェーディング補正される(S108)。このとき、図13に示すようなワーク1130およびワーク1140が載置されたパレットを撮像した場合について説明する。図14に最上段のワーク1140の原画像を模式的に表わした図を示す。図14に示すようにワーク1140は、ストロボ装置200の位置に対応する部分が最も明るく、その位置から離れるに従って暗くなるような画像データとなっている。この図14で模式的に示した画像データにシェーディング処理を施すと(S108)、図15に示すようにワーク1140の上面の明るさが平準化される。
【0053】
シェーディング補正された原画像の二値化処理が行なわれ、上段ワークの上面が抽出される(S110)。このときの画像データを図16に示す。明るい方形領域が抽出され、抽出されたN個の方形領域のそれぞれについて、面積、水平フィレ径および垂直フィレ径が算出される(S116)。これらの面積、水平フィレ径および垂直フィレ径が、それぞれ予め定められた許容範囲内にあると、その閉曲面領域(方形領域)が検出対象のワーク1140の上面であると判断されて(S118にてYES)、4点の座標が算出される(S124)。この時点でワークが検出される。このときの状態を図18に示す。なお、図17には、ノイズ除去画像を示す。このノイズ除去画像は、二値化画像(図16)に対してS114〜S122の処理を行なうことにより、次段のノイズが除去された図である。その後、ワーク1140の四隅の4点の座標に基づいて、傾き角度および重心座標が算出される(S126)。また、図19〜図21に、最上段に2つのワークがある場合の画像を示す。図19に二値化後の画像データを、図20にノイズ除去後の画像データを示す。さらに、図21に、ワークを検出した時の画像データを示す。
【0054】
その後、算出された傾き角度、中心座標については、ロボットコントローラインターフェイス326を介して、ロボットコントローラに送信される。
【0055】
以上のようにして、本実施の形態に係る立体計測システムによると、1台のカメラと1台のストロボ装置とを用いて、ストロボ装置から発光された光は、ストロボ装置からの距離の二乗に逆比例する明るさであるという性質に基づいて、検出したい距離にあるワークを、画像データを二値化処理することにより抽出することができる。さらに、この二値化処理の前には、明るさの不均一は、シェーディング補正により補正されているため、二値化処理により検出したいワークの上面の全体を抽出することができる。その結果、ストロボを用いるため外乱光による影響に強く、設備コストを抑制して、正確に対象物の立体形状を計測できる。
【0056】
<第2の実施の形態>
以下、本発明の第2の実施の形態に係る立体計測システムについて説明する。なお、以下に示す第2の実施の形態に係る立体計測システムのハードウェア構成は、前述の第1の実施の形態に係る立体計測システムのハードウェア構成と同じである。したがって、それらについての詳細な説明はここでは繰返さない。
【0057】
本実施の形態に係る立体計測システムは、前述の第1の実施の形態に係る立体計測システムとは検出対象であるワークの抽出方法が異なる。本実施の形態に係る立体計測システムにおいては、ストロボ装置200により斜め上方から発光された光により発生するワーク1100の上面の2辺の陰を用いることにより、ワークの位置座標を作成する。
【0058】
本実施の形態に係る立体計測システムは、ワークの概略位置が判明している場合に実施可能であって、陰はシャープな直線になるため、第1の実施の形態の立体計測システムに比べて、より高い位置精度が得られる場合が多い。流通過程でワークの概略位置が既知の場合、本実施の形態に係る立体計測システムが使用できる。この場合、第1の実施の形態に係る立体計測システムにおける精度をより向上させることができる。
【0059】
図22に、最上段にワーク1100が1つしかない場合のカメラ100の視野領域における陰の状態を示す。図22に示すように、ワーク1100の陰は、「第1の点」から「第2の点」に至る線分と、「第2の点」から「第3の点」に至る線分の2つの線分から構成される。ロボットから指示されたワークの概略重心からY軸に向かって(X軸と平行に)引いた線分と陰を表わす線分との交点を「第0の点」とする。すなわち、図22に示すように、「第0の点」は、「第1の点」と「第2の点」とから構成される線分上にある。また、視野領域よりも狭く、二辺の陰の線分を含む有効領域が設定される。この有効領域は、視野領域の中心を、その中心として、ワーク1100のサイズより30%程度大きい領域が設定される。なお、このように設定される前提としては、視野領域の中央近傍に、ワーク1100が来るようなカメラ100とパレット1100との位置関係が設定される。
【0060】
図23に、最上段において、隣接するワークとの隙間が陰になる場合の状態を示す。ワーク1100の陰である「第1の点」と「第2の点」とを結ぶ線分および「第2の点」と「第3の点」とを結ぶ線分の他に、隣接するワークとの隙間の陰が撮像されている。
【0061】
図24を参照して、本実施の形態に係る立体計測システムの画像処理コンピュータ300のCPU320で実行されるプログラムの制御構造について説明する。なお、図24に示すフローチャートの中で、前述の図12に示したフローチャートと同じ処理については同じステップ番号を付してある。それらについての処理も同じである。したがって、それらについての詳細な説明はここでは繰返さない。
【0062】
S200にて、CPU320は、原画像を二値化処理し、最上段の対象物であるワーク1100の上面の二辺の陰を抽出する。S202にて、CPU320は、有効領域を設定する。この有効領域は、前述の図22および図23に示した領域である。S204にて、CPU320は、白黒反転して、陰を白色(輝度255)に設定する。なお、このカメラ100の解像度は8ビットであると想定する。
【0063】
S119にて、I番目の閉曲面領域(方形領域)の面積S(I)がしきい値Sよりも大きいか否か、水平フィレ径HF(I)がしきい値HFよりも大きいか否か、および垂直フィレ径VF(I)がしきい値VFよりも大きいか否かを判断する。面積、水平フィレ径および垂直フィレ径のいずれもがしきい値よりも大きいと(S119にてYES)、処理はS210に移される。もしそうでないと(S119にてNO)、処理はS120へ移される。
【0064】
S210にて、CPU320は、白黒反転して、陰を黒色(輝度0)に設定する。S300にて、CPU320は、端点算出処理を行なう。このS300における端点算出処理は、図25を用いて詳述する。
【0065】
図25を参照して、端点算出処理について説明する。
S304にて、CPU320は、ロボットから指示されたワークの概略重心からX軸に平行に左側の陰を探索して、陰との交点を「第0の点」とする。S400にて、CPU320は、「第0の点」に基づく、下側の端点である「第2の点」の探索処理を行なう。このS400における処理の詳細については後述する。
【0066】
S500にて、CPU320は、「第0の点」に基づく、上側の端点である「第1の点」の探索処理を行なう。このS500の処理の詳細については後述する。
【0067】
S600にて、CPU320は、「第2の点」に基づく、「第1の点」の対角である「第3の点」の探索処理を行なう。このS600における処理の詳細については後述する。
【0068】
S306にて、CPU320は、「第1の点」、「第2の点」および「第3の点」に基づいて、傾き角度を算出する。S308にて、CPU320は、対象物であるワーク1100の仕様から、残りの端点の座標を算出して、重心座標を算出する。
【0069】
図26を参照して、S400における探索処理の詳細について説明する。
S402にて、CPU320は、「第0の点」での陰の傾きKを算出する。
【0070】
S404にて、CPU320は、変数Jを初期化(J=1)する。S406にて、CPU320は、「第0の点」のJ行下のピクセルを左から右にスキャンして、最初に見つかった輝度が0の点を、J行下の陰の点として算出する。S408にて、CPU320は、J行下の陰の点の傾きを算出する。
【0071】
S410にて、CPU320は、算出した傾きが(K−α)と(K+α)の間にあるか否かを判断する。なお、αは、予め定められた定数である。算出した傾きが、(K−α)と(K+α)の間にあると(S420にてYES)、処理はS412へ移される。もしそうでないと(S410にてNO)、処理はS414へ移される。
【0072】
S414にて、CPU320は、変数Jに1を加算し、処理をS406へ戻す。
【0073】
S414にて、CPU320は、「第0の点」から(J−1)行下の点を、下側の端点である「第2の点」とする。
【0074】
図27を参照して、S500の探索処理について説明する。
S502にて、CPU320は、「第0の点」と「第2の点」との陰の傾き径を算出する。
【0075】
S504にて、CPU320は、変数Jを初期化(J=1)する。
S506にて、CPU320は、「第0の点」のJ行上のピクセルを右から左にスキャンして、最初に見つかった輝度が0の点を、J行上の陰の点として算出する。
【0076】
S508にて、CPU320は、J行上の陰の点が検出できたか否かを判断する。J行上の陰の点が算出できると(S508にてYES)、処理はS510へ移される。もしそうでないと(S508にてNO)、処理はS516へ移される。
【0077】
S510にて、CPU320は、J行上の陰の点の傾きを算出する。S512にて、CPU320は、算出した傾きが、(K−α)と(K+α)の間にあるか否かを判断する。算出した傾きが、(K−α)と(K+α)の間にある場合には(S512にてYES)、処理はS514へ移される。もしそうでないと(S512にてNO)、処理はS516へ移される。
【0078】
S514にて、CPU320は、変数Jに1を加算し、処理をS506へ戻す。
【0079】
S516にて、CPU320は、「第0の点」から(J−1)行上の点を、上側の端点である「第1の点」とする。
【0080】
図28を参照して、S600の探索処理について説明する。
S602にて、CPU320は、「第2の点」での陰の傾きKを算出する。
【0081】
S604にて、CPU320は、変数Jを初期化(J=1)する。S606にて、CPU320は、「第2の点」のJ行右のピクセルを上から下にスキャンして、最初に見つかった輝度が0の点を、J列右の陰の点として算出する。
【0082】
S608にて、CPU320は、J列右の陰の点が算出できたか否かを判断する。J列右の陰の点が算出できると(S608にてYES)、処理はS610へ移される。もしそうでないと(S608にてNO)、処理はS616へ移される。
【0083】
S610にて、CPU320は、J列右の陰の点の傾きを算出する。S612にて、CPU320は、算出した傾きが、(K−α)と(K+α)の間にあるか否かを判断する。算出した傾きが(K−α)と(K+α)間にある場合には(S612にてYES)、処理はS614へ移される。もしそうでないと(S612にてNO)、処理はS616へ移される。
【0084】
S614にて、CPU320は、変数Jに1を加算し、処理をS606へ戻す。
【0085】
S616にて、CPU320は、「第2の点」から(J−1)列右の点を、「第1の点」の対角の端点である「第3の点」とする。
【0086】
以上のような構造およびフローチャートに基づく本実施の形態に係る立体計測システムの動作について説明する。なお、以下に示す動作の説明の中で、前述の第1の実施の形態に係る立体計測システムの動作と同じ動作についての詳細な説明は、ここでは繰返さない。
【0087】
シェーディング補正値を算出する予備処理が行われた後(S100)、ストロボ発光に同期させて、カメラ100の電子シャッターがオンされて、ワークが撮像される(S104)。原画像を表わすデータがフレームメモリに記憶され(S106)、原画像がシェーディング補正される(S108)。原画像が二値化処理され、最上段の対象物であるワークの陰が抽出される(S200)。有効領域が設定された後(S202)、白黒反転して陰が白色になるように設定される(S204)。明るい閉曲面領域が抽出されて、それぞれの閉曲面領域(方形領域)における面積、水平フィレ径および垂直フィレ径が算出され、面積、水平フィレ径および垂直フィレ径のそれぞれが予め定められたしきい値よりも大きいと(S119にてYES)、端点算出処理が実行される(S300)。なお、S114からS122までの処理が行われることにより最上段のワークの表面の模様等が除去される。
【0088】
端点算出処理においては、ロボットから指示されたワークの概略重心から陰が探索され、「第0の点」が算出される(S304)。「第0の点に基づく、下側の端点である「第2の点」が探索される(S400)。「第0の点に基づく、上側の端点である「第1の点」の探索が行なわれる(S500)。「第2の点」に基づく、「第1の点」の対角である「第3の点」の探索処理が行なわれる(S600)。これにより、第1の点、第2の点、第3の点の探索処理が行なわれ、ワーク1100の端点4つのうちの3点が算出される。「第1の点」、「第2の点」および「第3の点」に基づいて、傾き角度が算出され(S306)、対象物の使用から、残りの端点(「第4の点」)の座標を算出して、重心座標が算出される(S308)。
【0089】
図29〜図36に、本実施の形態に係る立体計測システムの画像データの例を示す。図29および図33に二値化後の画像データを、図30および図34にノイズ除去後の画像データを示す。さらに、図31および図35に端点を検出した際の画像データを、図32および図36にワークを検出したときの画像データを示す。図30および図34に示すようにワーク1100の左側と下側に陰が撮像され、この陰に基づいて端点が検出される。
【0090】
以上のようにして、本実施の形態に係る立体計測システムによると、ワークの上面の二辺の陰の部分を表わす線分の長さなどに基づいて対象物であるワークの位置情報が作成される。線分の情報は、領域の情報よりもより正確に対象物であるワークの外形を表わしているので、より正確に対象物であるワークの位置情報を作成することができる。
【0091】
今回開示された実施の形態はすべての点で例示であって制限的なものではないと考えられるべきである。本発明の範囲は上記した説明ではなくて特許請求の範囲によって示され、特許請求の範囲と均等の意味および範囲内でのすべての変更が含まれることが意図される。
【図面の簡単な説明】
【図1】本発明の第1の実施の形態に係る立体計測システムの外観図である。
【図2】図1の立体計測システムを上方から見た平面図である。
【図3】本発明の第1の実施に形態に係る画像処理コンピュータの外観図である。
【図4】図3に示すコンピュータシステムの制御ブロック図である。
【図5】視野領域におけるフィレ径を説明するための図である。
【図6】視野領域におけるワークの端点を説明するための図である。
【図7】シェーディング補正値を求めるための基準画像の中央部のプロファイルである。
【図8】基準画像にシェーディング補正を実行した場合の中央部のプロファイルである。
【図9】実画像におけるシェーディング補正前の状態を示す図である。
【図10】実画像におけるシェーディング補正後の状態を示す図である。
【図11】実画像とシェーディング補正後の画像データとの関係を示す図である。
【図12】本発明の第1の実施に形態に係る画像処理コンピュータで実行されるプログラムの制御構造を示すフローチャートである。
【図13】シェーディング補正の状態を説明するための図(その1)である。
【図14】シェーディング補正の状態を説明するための図(その2)である。
【図15】シェーディング補正の状態を説明するための図(その3)である。
【図16】本発明の第1の実施に形態に係る画像処理コンピュータでの処理の状態を示す図(その1)である。
【図17】本発明の第1の実施に形態に係る画像処理コンピュータでの処理の状態を示す図(その2)である。
【図18】本発明の第1の実施に形態に係る画像処理コンピュータでの処理の状態を示す図(その3)である。
【図19】本発明の第1の実施に形態に係る画像処理コンピュータでの処理の状態を示す図(その4)である。
【図20】本発明の第1の実施に形態に係る画像処理コンピュータでの処理の状態を示す図(その5)である。
【図21】本発明の第1の実施に形態に係る画像処理コンピュータでの処理の状態を示す図(その6)である。
【図22】本発明の第2の実施の形態に係る視野領域におけるワークの陰を説明するための図(その1)である。
【図23】本発明の第2の実施の形態に係る視野領域におけるワークの陰を説明するための図(その2)である。
【図24】本発明の第2の実施に形態に係る画像処理コンピュータで実行されるプログラムの制御構造を示すフローチャートである。
【図25】図21に示す端点算出処理の制御構造を示すフローチャートである。
【図26】図25に示す「第0の点」に基づく「第2の点」の探索処理の制御構造を示すフローチャートである。
【図27】図25に示す「第0の点」に基づく「第1の点」の探索処理の制御構造を示すフローチャートである。
【図28】図25に示す「第2の点」に基づく「第3の点」の探索処理の制御構造を示すフローチャートである。
【図29】本発明の第2の実施に形態に係る画像処理コンピュータでの処理の状態を示す図(その1)である。
【図30】本発明の第2の実施に形態に係る画像処理コンピュータでの処理の状態を示す図(その2)である。
【図31】本発明の第2の実施に形態に係る画像処理コンピュータでの処理の状態を示す図(その3)である。
【図32】本発明の第2の実施に形態に係る画像処理コンピュータでの処理の状態を示す図(その4)である。
【図33】本発明の第2の実施に形態に係る画像処理コンピュータでの処理の状態を示す図(その5)である。
【図34】本発明の第2の実施に形態に係る画像処理コンピュータでの処理の状態を示す図(その6)である。
【図35】本発明の第2の実施に形態に係る画像処理コンピュータでの処理の状態を示す図(その7)である。
【図36】本発明の第2の実施に形態に係る画像処理コンピュータでの処理の状態を示す図(その8)である。
【符号の説明】
100 カメラ、200 ストロボ、300 コンピュータシステム、302コンピュータ、304 モニタ、306 FD駆動装置、308 CD−ROM駆動装置、310 キーボード、312 マウス、326 ロボットコントローラインターフェイス、328 ストロボ同期信号インターフェイス、330 カメラインターフェイス、1000 パレット、1100、1110、1120、1130、1140 ワーク、1132 暗い印刷部。
Claims (9)
- 対象物を撮像するための撮像手段と、
前記対象物を照明するストロボ照明装置と、
前記ストロボ照明装置の発光に同期させて前記撮像手段により前記対象物を撮像するように、前記撮像手段と前記ストロボ照明装置とを制御するための制御手段と、
前記撮像手段に接続され、撮像された対象物を表わす画像データに対して、画像処理を行なうための処理手段とを含み、
前記処理手段は、
前記画像データに対して、色の強度の不均一を補正するための補正手段と、
前記補正された画像データに対して、前記撮像手段から前記対象物までの距離に応じた色の強度の違いに基づいて、前記対象物の特徴量を算出するための算出手段と、
前記算出された特徴量に基づいて、前記対象物の位置情報を作成するための作成手段とを含む、立体計測装置。 - 前記算出手段は、前記補正された画像データに対して、前記撮像手段から前記対象物までの距離に応じた色の強度の違いに対応するしきい値により前記画像データを二値化処理して、色の強度が異なる領域を抽出して、前記抽出された領域に基づいて、前記対象物の特徴量を算出するための手段を含む、請求項1に記載の立体計測装置。
- 前記算出手段は、前記対象物の特徴量として、前記抽出された領域の面積および前記領域のフィレ径を算出するための手段を含む、請求項2に記載の立体計測装置。
- 前記作成手段は、前記面積および前記フィレ径に基づいて、前記対象物の座標情報および傾き情報を作成するための手段を含む、請求項3に記載の立体計測装置。
- 対象物は直方体の形状を有し、
前記ストロボ照明装置は、前記撮像手段の近傍の位置であって、前記直方体の上面の一辺に対して斜め方向の位置から前記対象物を照明する、請求項1に記載の立体計測装置。 - 前記算出手段は、前記補正された画像データに対して、前記撮像手段から前記対象物までの距離に応じた色の強度の違いに対応するしきい値により前記画像データを二値化処理して、色の強度が異なる領域を抽出して、前記抽出された領域の中から前記対象物である直方体の上面の二辺の陰を選択して、前記選択された陰に基づいて、前記対象物の特徴量を算出するための手段を含む、請求項5に記載の立体計測装置。
- 前記算出手段は、前記対象物の特徴量として、前記選択された二辺の陰の長さおよび傾きを算出するための手段を含む、請求項6に記載の立体計測装置。
- 前記作成手段は、前記算出された二辺の陰の長さおよび傾きに基づいて、前記対象物の座標情報および傾き情報を作成するための手段を含む、請求項7に記載の立体計測装置。
- 前記処理手段に接続され、前記算出された位置情報をデパレタイジング用ロボットのコントローラに出力するための出力手段をさらに含む、請求項1〜8のいずれかに記載の立体計測装置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2002161854A JP2004012143A (ja) | 2002-06-03 | 2002-06-03 | 立体計測装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2002161854A JP2004012143A (ja) | 2002-06-03 | 2002-06-03 | 立体計測装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2004012143A true JP2004012143A (ja) | 2004-01-15 |
Family
ID=30430799
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2002161854A Withdrawn JP2004012143A (ja) | 2002-06-03 | 2002-06-03 | 立体計測装置 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2004012143A (ja) |
Cited By (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2006105830A (ja) * | 2004-10-06 | 2006-04-20 | Dainippon Printing Co Ltd | グラビア版セル形状測定装置および測定方法 |
KR101012637B1 (ko) | 2008-08-22 | 2011-02-09 | (주) 인텍플러스 | 광학식 형상 측정 시스템 및 그를 이용한 측정 방법 |
JP2012093104A (ja) * | 2010-10-25 | 2012-05-17 | Yaskawa Electric Corp | 形状計測装置、ロボットシステムおよび形状計測方法 |
CN102999904A (zh) * | 2012-11-14 | 2013-03-27 | 北京理工大学 | 基于平面的微纳物体图像倾斜校正方法 |
JP2016020888A (ja) * | 2014-06-20 | 2016-02-04 | 株式会社リコー | 計測システム、物体取出システム、計測方法およびプログラム |
JP2017058130A (ja) * | 2015-09-14 | 2017-03-23 | 株式会社東芝 | 対象物検出装置、方法及びデパレタイズ自動化装置並びに梱包箱 |
CN109883329A (zh) * | 2019-04-12 | 2019-06-14 | 中民筑友智能装备科技有限公司 | 一种预制构件外形尺寸的检测系统和方法 |
US10370201B2 (en) | 2015-11-13 | 2019-08-06 | Kabushiki Kaisha Toshiba | Transporting apparatus and transporting method |
JP2020035383A (ja) * | 2018-08-31 | 2020-03-05 | ファナック株式会社 | 情報処理装置および情報処理方法 |
DE112018005784B4 (de) | 2017-11-08 | 2022-02-03 | Hideki Iino | Frachtidentifikationscode, Dinge, auf denen Dieser angebracht ist, und dafür nutzbarer Robotergreifer |
-
2002
- 2002-06-03 JP JP2002161854A patent/JP2004012143A/ja not_active Withdrawn
Cited By (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2006105830A (ja) * | 2004-10-06 | 2006-04-20 | Dainippon Printing Co Ltd | グラビア版セル形状測定装置および測定方法 |
KR101012637B1 (ko) | 2008-08-22 | 2011-02-09 | (주) 인텍플러스 | 광학식 형상 측정 시스템 및 그를 이용한 측정 방법 |
JP2012093104A (ja) * | 2010-10-25 | 2012-05-17 | Yaskawa Electric Corp | 形状計測装置、ロボットシステムおよび形状計測方法 |
CN102999904A (zh) * | 2012-11-14 | 2013-03-27 | 北京理工大学 | 基于平面的微纳物体图像倾斜校正方法 |
CN102999904B (zh) * | 2012-11-14 | 2015-06-10 | 北京理工大学 | 基于平面的微纳物体图像倾斜校正方法 |
JP2016020888A (ja) * | 2014-06-20 | 2016-02-04 | 株式会社リコー | 計測システム、物体取出システム、計測方法およびプログラム |
JP2017058130A (ja) * | 2015-09-14 | 2017-03-23 | 株式会社東芝 | 対象物検出装置、方法及びデパレタイズ自動化装置並びに梱包箱 |
US10410172B2 (en) | 2015-09-14 | 2019-09-10 | Kabushiki Kaisha Toshiba | Object detection apparatus, depalletization automating apparatus, and object detection method |
US10370201B2 (en) | 2015-11-13 | 2019-08-06 | Kabushiki Kaisha Toshiba | Transporting apparatus and transporting method |
DE112018005784B4 (de) | 2017-11-08 | 2022-02-03 | Hideki Iino | Frachtidentifikationscode, Dinge, auf denen Dieser angebracht ist, und dafür nutzbarer Robotergreifer |
JP2020035383A (ja) * | 2018-08-31 | 2020-03-05 | ファナック株式会社 | 情報処理装置および情報処理方法 |
CN110871444A (zh) * | 2018-08-31 | 2020-03-10 | 发那科株式会社 | 信息处理装置以及信息处理方法 |
CN109883329A (zh) * | 2019-04-12 | 2019-06-14 | 中民筑友智能装备科技有限公司 | 一种预制构件外形尺寸的检测系统和方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US6947151B2 (en) | Surface state inspecting method and substrate inspecting apparatus | |
JP6548422B2 (ja) | 情報処理装置、情報処理方法、プログラム | |
TWI253006B (en) | Image processing system, projector, information storage medium, and image processing method | |
US11199504B2 (en) | Shape inspection apparatus and shape inspection method | |
JP2005274558A (ja) | 表面状態検査方法およびその方法を用いた表面状態検査装置ならびに基板検査装置 | |
CN109983401A (zh) | 摄像机辅助自动屏幕拟合 | |
JP2007206797A (ja) | 画像処理方法および画像処理装置 | |
CN113191174B (zh) | 物品定位方法和装置、机器人及计算机可读存储介质 | |
JP2004012143A (ja) | 立体計測装置 | |
JP3028016B2 (ja) | 積荷の三次元画像計測方法 | |
CN115082538A (zh) | 基于线结构光投影的多目视觉平衡环零件表面三维重建系统及方法 | |
JP5545932B2 (ja) | 三次元形状計測装置 | |
JP2004219255A (ja) | サイズ測定装置、方法および測定プログラム | |
JPH01134573A (ja) | 画像処理方法 | |
JPH0969973A (ja) | 固体撮像素子の位置調整方法 | |
JP7365477B2 (ja) | 三次元計測装置、及び、ワーク作業装置 | |
JP4354173B2 (ja) | 電子回路用部品の外観検査装置 | |
JP2006322951A (ja) | 表面状態検査方法およびその方法を用いた表面状態検査装置ならびに基板検査装置 | |
JP3823559B2 (ja) | 三次元距離データを変換する方法 | |
JPH08161508A (ja) | パターン検出方法 | |
JP4090775B2 (ja) | 電子回路用部品の外観検査方法及び外観検査装置並びに電子回路用部品の製造方法 | |
JPH0949705A (ja) | レーザ光照射で生じさせたスペックルパターンの画像処理による被計測物の移動量測定方法 | |
WO2023140266A1 (ja) | ピッキング装置及び画像生成プログラム | |
JP2596158B2 (ja) | 部品認識装置 | |
CN110505393B (zh) | 影像处理装置与方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A300 | Withdrawal of application because of no request for examination |
Free format text: JAPANESE INTERMEDIATE CODE: A300 Effective date: 20050906 |