JP2004012143A - Three-dimensional measuring apparatus - Google Patents

Three-dimensional measuring apparatus Download PDF

Info

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
Application number
JP2002161854A
Other languages
Japanese (ja)
Inventor
Kazuya Honda
本田 和哉
Kyoji Oguro
大黒 恭治
Hideki Onoda
小野田 秀樹
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.)
TECHNO SOFT SYSTEMNICS KK
Kanebo Ltd
Original Assignee
TECHNO SOFT SYSTEMNICS KK
Kanebo Ltd
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 TECHNO SOFT SYSTEMNICS KK, Kanebo Ltd filed Critical TECHNO SOFT SYSTEMNICS KK
Priority to JP2002161854A priority Critical patent/JP2004012143A/en
Publication of JP2004012143A publication Critical patent/JP2004012143A/en
Withdrawn legal-status Critical Current

Links

Images

Landscapes

  • Length Measuring Devices By Optical Means (AREA)
  • Manipulator (AREA)
  • Image Processing (AREA)
  • Image Analysis (AREA)

Abstract

<P>PROBLEM TO BE SOLVED: To provide a three-dimensional measuring apparatus which makes a strobe emit light in synchronization with an electronic shutter of a camera thereby photographing a work, and measures a three-dimensional form accurately by executing image processing of photographed data. <P>SOLUTION: The three-dimensional measuring apparatus is provided with the camera 100 photographing the work 1100, the strobe 200 illuminating the work 1100, a control circuit controlling so as to make the strobe 200 emit light in synchronization with the electronic shutter of the camera 100 thereby photographing the work 1100, and an image processing computer executing image processing of the photographed image data. The image processing computer includes a shading compensation circuit which compensates uneven intensity of the photographed image data, a calculation circuit which calculates feature parameters of the work 1100 from the compensated image data on the basis of an intensity difference relative to a distance between the camera 100 and the work 1100, and a creation circuit which creates positional information of the work 1100 on the basis of the calculated feature values. <P>COPYRIGHT: (C)2004,JPO

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へ移される。面積の許容範囲の下限をS、上限をS、フィレ径の許容範囲の下限をF、上限をFとする。
【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 暗い印刷部。
[0001]
TECHNICAL FIELD OF THE INVENTION
The present invention relates to a technique for measuring a solid, and more particularly to a technique for three-dimensionally recognizing a position of a work such as a cardboard box stacked on a pallet.
[0002]
[Prior art]
Recently, as one of the uses of the industrial robot, there is a palletizing operation of stacking cardboard boxes, which are works, on a pallet in a predetermined order. Particularly when the work is heavy, a large labor saving effect is exhibited. An industrial robot is also used for depalletizing work for taking out a work from the palletized in this way. The workpieces stacked on the pallet may be shifted during transportation by a truck or the like. For this reason, at the time of depalletizing, the depalletizing robot cannot handle the workpiece accurately unless the height and position of the workpiece are accurately grasped.
[0003]
Japanese Patent Laying-Open No. 7-291450 discloses a palletizing system that promptly selects the uppermost work from palletized works. The palletizing system disclosed in this publication includes a first illuminating device that illuminates arbitrarily stacked works from obliquely above, a second illuminating device that illuminates from above the works, and first and second illuminating devices. An illumination control device for realizing illumination suitable for image processing by operating the camera, a first stereo camera device, a second stereo camera device, and a camera control device for controlling the first and second stereo camera devices. Processing the image data picked up by the stereo camera, selecting the top-most work, executing the matching process, calculating the type, posture and gripping position of the work, and outputting the image to the robot controller And a processing device.
[0004]
According to the palletizing system disclosed in this publication, the first lighting device and the second lighting device are operated by the lighting control device, and the first lighting device illuminates the upper work stacked on the pallet. The second lighting device illuminates the lower workpiece stacked on the pallet. The first stereo camera device and the second stereo camera device are operated by the camera control device to image the illuminated work. The image obtained in this way is input to an image processing device and subjected to image analysis to select a work located at the top. Thereafter, a matching process is performed to determine the type, posture, and gripping position of the selected work. The type, posture, and gripping position of the work are input to the robot controller, and the operation amount of the robot hand is calculated. The robot controller operates the robot hand based on the operation amount to depalletize the work. Thus, since the work is illuminated in a state where image processing is easy by operating the first lighting device and the second lighting device, it is possible to easily select the top work. As a result, work efficiency in the depalletizing work can be significantly improved.
[0005]
[Problems to be solved by the invention]
However, the system disclosed in the above-mentioned publication requires two illumination devices for imaging a workpiece and two cameras for imaging the workpiece, which are targets of depalletization. Therefore, the equipment of the system becomes large and the system becomes expensive. Furthermore, depending on the two lighting devices, an error may occur in the result of data processing in the image processing apparatus because the work cannot be uniformly illuminated by disturbance light from around the work.
[0006]
The present invention has been made to solve the above-described problem, and is to provide a three-dimensional measurement apparatus that is resistant to the influence of disturbance light, suppresses equipment costs, and can accurately measure the three-dimensional shape of an object. It is.
[0007]
[Means for Solving the Problems]
According to a first aspect of the present invention, there is provided a three-dimensional measurement apparatus configured to capture an image of an object by an imaging unit configured to image the object, a strobe lighting device that illuminates the object, and the imaging unit in synchronization with light emission of the strobe lighting device. And control means for controlling the imaging means and the strobe lighting device, and processing means connected to the imaging means for performing image processing on image data representing the imaged object. The processing means includes a correction means for correcting non-uniformity of color intensity with respect to the image data, and a difference between the corrected image data and the color intensity according to the distance from the imaging means to the object. And calculating means for calculating the feature amount of the target based on the calculated feature amount, and generating means for generating the position information of the target based on the calculated feature amount.
[0008]
According to the first aspect, the control unit turns on the electronic shutter of the camera, which is one of the image pickup units, and takes an image of the target object in synchronization with the light emission of the strobe device. The correction unit corrects non-uniformity of brightness, which is one of the color intensities in the image data obtained by capturing the object, by shading correction or the like. With this correction, objects at the same distance from the strobe device will have the same brightness. The calculating means binarizes the corrected image data using, for example, a brightness threshold value corresponding to the distance from the strobe device to the object, and extracts only the object having a height to be detected. Then, a feature amount representing the area of the extracted object is calculated. The creating means creates coordinate information of an end point of the object based on the feature amount of the object. Thus, based on the property that the light emitted from the strobe device has a brightness that is inversely proportional to the square of the distance from the strobe device, the object at the distance to be detected is subjected to binarization of image data. Can be extracted. Since the unevenness in brightness has been corrected before the binarization processing, the entire target to be detected can be extracted by the binarization processing. As a result, it is possible to provide a three-dimensional measuring apparatus that is resistant to the influence of disturbance light and that can accurately measure the three-dimensional shape of an object while suppressing equipment costs. Note that the color intensity is defined as the individual intensity of RGB, the intensity of a conversion amount such as lightness, hue, and saturation which can be converted from the intensity, the intensity of appropriately combining the individual intensity of RGB, the intensity of a specific color, and the like. including.
[0009]
The three-dimensional measuring apparatus according to a second aspect of the present invention is the stereoscopic measuring apparatus according to the first aspect, wherein the calculating means is configured to calculate, for the corrected image data, a difference in color intensity according to a distance from the imaging means to the object. Means for binarizing the image data with a threshold value corresponding to, extracting regions having different color intensities, and calculating a feature amount of the object based on the extracted regions.
[0010]
According to the second aspect, the calculating means binarizes the corrected image data by using a lightness threshold which is one of the color intensities according to the distance from the strobe device to the object. Then, it is possible to extract only an object having a height to be detected, and calculate a feature amount representing an area or the like of the extracted object. Since the entire target to be detected is extracted by the binarization process, the three-dimensional shape of the target can be accurately measured.
[0011]
A three-dimensional measurement apparatus according to a third aspect of the present invention is the stereoscopic measurement apparatus according to the second aspect, wherein the calculation means includes means for calculating the area of the extracted region and the fillet diameter of the region as the feature amount of the object. Including.
[0012]
According to the third aspect, the area of the region representing the target to be detected and the fillet diameter of the region are calculated. Necessary position information can be created based on the area and the fillet diameter.
[0013]
In the three-dimensional measurement apparatus according to a fourth aspect, in addition to the configuration of the third aspect, the creating means includes means for creating coordinate information and inclination information of the object based on the area and the fillet diameter.
[0014]
According to the fourth aspect, the coordinate information and the inclination information of the object can be created based on the area and the fillet diameter.
[0015]
According to a three-dimensional measuring apparatus according to a fifth aspect, in addition to the configuration of the first aspect, the object has a rectangular parallelepiped shape, and the strobe lighting device is located at a position near the imaging means, and is provided on an upper surface of the rectangular parallelepiped. The object is illuminated from a position oblique to one side.
[0016]
According to the fifth aspect, the strobe device emits light from a position obliquely above the rectangular parallelepiped. At this time, at least two sides are shaded around the rectangular parallelepiped by the light of the strobe device from obliquely above. This shadow is captured as a line segment. More accurate position information of the target object can be created based on the image information representing the line segment.
[0017]
The three-dimensional measuring apparatus according to a sixth aspect of the present invention is the stereoscopic measuring apparatus according to the fifth aspect, wherein the calculating means is configured to calculate a difference in color intensity between the corrected image data and the distance from the imaging means to the object. The image data is binarized according to the threshold value corresponding to, and regions having different color intensities are extracted, and shades of two sides on the upper surface of the rectangular parallelepiped as the target object are selected from the extracted regions. Means for calculating the feature amount of the object based on the selected shade.
[0018]
According to the sixth aspect, two shaded portions on the upper surface of the rectangular parallelepiped with small brightness, which is one of the color intensities, are selected, and the object is determined based on the length of the line segment representing the shaded portion. Create location information. Since the line segment information more accurately represents the outer shape of the object than the area information, the position information of the object can be created more accurately.
[0019]
A three-dimensional measuring apparatus according to a seventh aspect is the stereoscopic measuring apparatus according to the sixth aspect, wherein the calculating means calculates the length and inclination of the shadows of the selected two sides as the feature amount of the object. including.
[0020]
According to the seventh invention, two shades on the upper surface of the rectangular parallelepiped with small brightness, which is one of the color intensities, are selected, and based on the length and inclination of the line segment representing the shades on the two sides. The position information of the object can be created more accurately.
[0021]
According to an eighth aspect of the present invention, in the stereoscopic measurement device according to the seventh aspect, the creating unit converts the coordinate information and the inclination information of the object based on the calculated length and inclination of the shadow of the two sides. Includes means for creating.
[0022]
According to the eighth aspect, it is possible to more accurately create the coordinate information and the inclination information of the target object based on the length and the inclination of the shadow of the two sides.
[0023]
A three-dimensional measurement apparatus according to a ninth invention is connected to a processing unit and outputs the calculated position information to a controller of a depalletizing robot in addition to the configuration of any one of the first to eighth inventions. Output means.
[0024]
According to the ninth aspect, the output means outputs the calculated position information of the target object to the controller of the depalletizing robot. Thus, the controller of the depalletizing robot can control the robot based on the accurate position information of the target and handle the target.
[0025]
BEST MODE FOR CARRYING OUT THE INVENTION
Hereinafter, embodiments of the present invention will be described with reference to the drawings. In the following description, the same components are denoted by the same reference numerals. Their names and functions are the same. Therefore, detailed description thereof will not be repeated.
[0026]
<First embodiment>
FIG. 1 shows an overall configuration diagram of a three-dimensional measurement system according to the present embodiment, which is used in a depalletizing system. This depalletizing system uses a robot to depalletize each work from a pallet 1000 on which a plurality of works 1100 and 1110 are stacked. The three-dimensional measurement system according to the present embodiment transmits three-dimensional measurement data on a work placed on pallet 1000 to a robot of a depalletizing system. The robot handles and depalletizes the workpiece based on the received three-dimensional measurement data.
[0027]
According to an instruction from the robot, a two-dimensional image is captured by the camera 100 from above the pallet 1000. This camera 100 is a CCD (Charge Coupled Device) camera having an electronic shutter. At this time, the flash 200 emits light in synchronization with the electronic shutter of the camera 100. This camera 100 may be monochrome or color. Further, the camera 100 may be a standard system such as NTSC or a progressive system.
[0028]
As shown in FIGS. 1 and 2, the camera 100 is provided vertically above the center of the pallet 1000. The two-dimensional area imaged by the camera 100 is large enough to image the entire pallet 1000. The strobe 200 is provided diagonally above the pallet 1000, unlike the camera 100. The distance between the camera 100 and the strobe 200 is set so that the variation in the brightness of the captured image is as small as possible. Also. The angle of the strobe 200 is about 45 degrees with respect to the field of view of the camera 100. The camera 100 and the strobe 200 are installed on the robot hand so as to satisfy these positional relationships. In particular, since the fact that the brightness is inversely proportional to the square of the distance is used, it is advantageous to attach it to the hand portion of the robot in that a surface corresponding to the uppermost step of the work target is always imaged. It should be noted that the present invention is not limited to the camera 100 and the strobe 200 installed in the hand portion. Camera 100 and strobe 200 may be placed separately from the hand part. If the two-dimensional area imaged by the camera 100 has a size that cannot sufficiently image the entire pallet 1000, the area may be divided into a plurality of areas.
[0029]
The camera 100 is connected to the image processing computer, and emits a strobe 200 with a test work having the same material and color as the outer surface of the work 1100 without the work 1100 based on an imaging signal received from the image processing computer. An image of a two-dimensional area is taken of the work 1100 placed on the pallet 1000 while the strobe 200 is emitting light. Image data captured by the camera 100 is subjected to image processing by an image processing computer, and position information of the work is created. Image data obtained by imaging the test work is reference data for shading correction. A color paper with little specular reflection is set as a test work at a distance where the upper surface of the work target stage is imaged. At this time, the color of the surface of the test work may be white, but if color paper close to the work 1100 is used, it is not necessary to further correct the brightness correction value.
[0030]
FIG. 3 shows an appearance of a computer system which is an example of the image processing computer. Referring to FIG. 3, a computer system 300 includes a computer 302 having an FD (Flexible Disk) drive 306 and a CD-ROM (Compact Disc-Read Only Memory) drive 308, a monitor 304, a keyboard 310, , Mouse 312.
[0031]
FIG. 4 shows the configuration of the computer system 300 in block diagram form. As shown in FIG. 4, the computer 302 includes a CPU (Central Processing Unit) 320, a memory 322, and a fixed disk 324, which are connected to each other by a bus, in addition to the FD driving device 306 and the CD-ROM driving device 308 described above. A robot controller interface 326 connected to the robot controller and communicating with the robot controller; a strobe synchronization signal interface 328 connected to the strobe 200 and transmitting a synchronization signal indicating an emission instruction to the strobe 200; And a camera interface 330 for communicating with the camera 100. The FD 316 is set in the FD driving device 306. A CD-ROM 318 is set in the CD-ROM drive 308.
[0032]
The function of performing image processing is realized by computer hardware and software executed by the CPU 320. Generally, such software is stored and distributed in a recording medium such as the FD 316 and the CD-ROM 318, read from the recording medium by the FD driving device 306 or the CD-ROM driving device 308, and temporarily stored in the fixed disk 324. . Further, the data is read from the fixed disk 324 to the memory 322 and executed by the CPU 320.
[0033]
The hardware itself of these computers is common. The computer includes a control circuit including the CPU 320, a storage circuit, an input circuit, an output circuit, and an OS (Operating System), and has an environment for executing a program. The present invention includes a computer that realizes an image processing function in such a computer. Therefore, the most essential part of the present invention relating to image processing includes a program recorded on a recording medium such as an FD, a CD-ROM, a memory card, and a fixed disk, and a recording medium on which the program is recorded.
[0034]
Since the operation of the computer shown in FIGS. 3 and 4 is well known, detailed description thereof will not be repeated here.
[0035]
With reference to FIG. 5, the horizontal fillet diameter and the vertical fillet diameter of the work 1120 imaged in the field of view of the camera will be described. Note that the X axis and the Y axis are set for the viewing region as shown in FIG. The horizontal fillet diameter with respect to the work 1120 is a length projected on the X axis when light parallel to the work 1120 is irradiated from a point at infinity in the Y-axis direction. The vertical fillet diameter with respect to the work 1120 is a length projected on the Y axis when parallel light is irradiated from a point at infinity on the X axis.
[0036]
With reference to FIG. 6, the relationship between the four end points of the work 1120 imaged in the field of view of the camera 100, the horizontal fillet diameter, and the vertical fillet diameter will be described. As shown in FIG. 6, the work 1120 is composed of four points of “first point”, “second point”, “third point” and “fourth point”, and the inclination angle of the work Indicates the inclination (θ) with respect to the X axis. The X coordinate of the “first point” is the minimum X coordinate of the horizontal fillet diameter, the Y coordinate of the “first point” is the maximum Y coordinate at the same X coordinate, and the X coordinate of the “second point” is the horizontal. The maximum X coordinate of the fillet diameter, the Y coordinate of the “second point” is the same Y coordinate as the minimum Y coordinate, the Y coordinate of the “third point” is the minimum Y coordinate of the vertical fillet diameter, The X coordinate of the "point" is the same Y coordinate and the minimum X coordinate, the Y coordinate of the "fourth point" is the maximum Y coordinate of the vertical fillet diameter, and the X coordinate of the "fourth point" is the same Y coordinate. Each corresponds to the maximum X coordinate.
[0037]
With reference to FIG. 7, a profile at the center of the reference image for obtaining a shading correction value will be described. FIG. 7 shows, for example, the RGB components of a case where a flat plate of the same material and the same color as the work 1100 is mounted on the pallet without mounting the work 1100 on the pallet 1000, and the strobe device 200 emits light to take an image. Represents data. The horizontal axis shows the coordinates in the X-axis direction shown in FIG. Waveform 400 represents the red component, waveform 402 represents the green component, and waveform 404 represents the blue component. As shown in FIG. 7, for any color component, the brightness near the center of the palette 1000 is high, and the brightness decreases toward the periphery. This is because the strobe light 200 is a point light source.
[0038]
With reference to FIG. 8, a description will be given of the profile of the central part when the shading correction is applied to the reference image. As shown in FIG. 8, when the reference image shown in FIG. 7 is subjected to shading correction, the R component, the G component, and the B component have a flat waveform regardless of the coordinates in the X-axis direction. A waveform 410 indicates a red component, a waveform 412 indicates a green component, and a waveform 414 indicates a blue component. In this way, by performing shading correction using the shading correction value calculated from the reference image shown in FIG. 7, a flat waveform as shown in FIG. 8 can be corrected. That is, the brightness is uniform regardless of the coordinates in the X-axis direction.
[0039]
A case where the shading correction described with reference to FIGS. 7 and 8 is applied to actual image data will be described with reference to FIGS. 9 and 10. FIG. 9 shows a waveform of the red component before shading correction, and FIG. 10 shows a waveform of the red component after shading correction. As shown by the waveform portion 420, the waveform portion 422, and the waveform portion 424 shown in FIG. 9, the brightness decreases as the distance from the vicinity of the center of the X axis to the periphery increases. On the other hand, when shading correction is performed, as shown in FIG. 10, the waveform portion 420 is corrected to the waveform portion 430, the waveform portion 422 is corrected to the waveform portion 432, and the waveform portion 424 is corrected to the waveform portion 434. The brightness is corrected uniformly regardless of the coordinates.
[0040]
Referring to FIG. 11, the relationship between the waveform after shading correction and the actual state of the work on the pallet 1000 will be described. 11 shows five works 1130 placed on the pallet 1000. The work 1130 includes a printing unit 1132 on which a black character is printed. The X axis indicating the center is indicated by a line segment 440. The lower part of FIG. 11 shows the waveform of the red component subjected to shading correction. The waveform portion 442 indicates the darkest portion of the pallet 1000, the waveform portion 444 indicates the upper surface portion of the second uppermost work 1130, the waveform portion 446 indicates the brighter portion of the uppermost work 1130, and the waveform portion 448. Represents the dark print portion 1132 of the uppermost work 1130, the waveform portion 450 represents the bright portion of the uppermost work 1130, the waveform portion 452 represents the bright portion of the second uppermost work 1130, and the waveform portion 454 represents the brightest portion. Each corresponds to a dark pallet 1000 portion. As shown in FIG. 11, the waveform portion 444 and the waveform portion 452 indicate the upper surface portion of the work 1130 at the second stage from the top, and the waveform portion 446 and the waveform portion 450 indicate the bright portion of the work 1130 at the uppermost stage. As described above, when the image data after the shading correction is scanned by the line segment 440 representing the central portion, the uppermost work at the same distance from the strobe device 200 is not affected by the strobe device 200 which is a point light source. 1130 will have waveforms of the same brightness level.
[0041]
With reference to FIG. 12, a control structure of a program executed by CPU 320 of image processing computer 300 of the three-dimensional measurement system according to the present embodiment will be described.
[0042]
CPU 320 performs preliminary processing in advance. In this preliminary processing, as described above, a shading correction value is calculated based on an image captured by emitting light from the strobe 200 in a state where there is no work as an object, and the calculated shading correction value is fixed. It is stored on the disk 324.
[0043]
In step (hereinafter, step is abbreviated as S) 104, CPU 320 emits a flash in synchronization with the electronic shutter of camera 100 when there is an imaging instruction from the robot. At this time, a control signal is transmitted to the strobe device 200 via the strobe synchronization signal interface 328. At S106, CPU 320 stores the original image in the frame memory. In S108, CPU 320 performs shading correction on the original image. With the shading correction, the brightness leveling process is performed as described above.
[0044]
In S110, CPU 320 performs a binarization process on the original image. At this time, the threshold value used for the binarization process is set so that the upper surface of the uppermost target object can be extracted. The threshold value used for the binarization processing is stored in the fixed disk 324 in advance. In S112, CPU 320 extracts a bright closed surface area (square area). At this time, it is assumed that the CPU 320 has extracted N square regions.
[0045]
In S114, CPU 320 initializes variable I (I = 1). In S116, CPU 320 calculates the area of the I-th closed curved surface area (square area), the horizontal fillet diameter, and the vertical fillet diameter. In S118, CPU 320 determines whether or not area S (I) of the I-th closed curved surface region (square region) is within an allowable range, whether horizontal fillet diameter HF (I) is within an allowable range, and It is determined whether or not the vertical fillet diameter VF (I) is within an allowable range. If all of the area, the horizontal fillet diameter, and the vertical fillet diameter are within the allowable range (YES in S118), the process proceeds to S124. If not (NO in S118), the process proceeds to S120. The lower limit of the allowable range of the area is S 1 , Upper limit S 2 , The lower limit of the allowable range of the fillet diameter is F 1 , Upper limit is F 2 And
[0046]
At S120, CPU 320 adds 1 to variable I. In S122, CPU 320 determines whether or not variable I is larger than the number N of the extracted rectangular areas. If variable I is larger than N (YES in S122), this process ends. If not (NO in S122), the process returns to S116, and the process is performed on the next closed surface area (square area).
[0047]
In S124, CPU 320 calculates the coordinates of the four points at the four corners of the I-th closed surface area (square area). In S126, CPU 320 calculates the inclination angle and the barycentric coordinates based on the coordinates of the four corners.
[0048]
The tilt angle, the barycentric coordinates, and the like calculated in S126 are transmitted from the image processing computer 300 to the robot controller via the robot controller interface 326. The robot controller that receives such data instructs the robot to specify coordinates so that the robot can handle the uppermost work 1100.
[0049]
The operation of the three-dimensional measurement system according to the present embodiment based on the above structure and flowchart will be described.
[0050]
First, preliminary processing is executed in the image processing computer 300 until the pallet 1000 arrives at a predetermined position. At this time, a shading correction value is calculated and stored in the fixed disk 324.
[0051]
When there is an imaging instruction from the robot, a control signal is transmitted to the strobe device 200 via the strobe synchronization signal interface 328, and the strobe emits light in synchronization with the electronic shutter of the camera (S104).
[0052]
The original image captured by the camera 100 is stored in the frame memory (S106), and the original image is subjected to shading correction (S108). At this time, a case where a pallet on which the work 1130 and the work 1140 are placed as shown in FIG. 13 is imaged will be described. FIG. 14 is a diagram schematically illustrating an original image of the uppermost work 1140. As shown in FIG. 14, the work 1140 has image data in which a portion corresponding to the position of the strobe device 200 is the brightest, and becomes darker as the distance from the position increases. When the image data schematically shown in FIG. 14 is subjected to shading processing (S108), the brightness of the upper surface of the work 1140 is leveled as shown in FIG.
[0053]
The original image subjected to shading correction is binarized, and the upper surface of the upper work is extracted (S110). FIG. 16 shows the image data at this time. A bright square area is extracted, and the area, horizontal fillet diameter, and vertical fillet diameter are calculated for each of the extracted N square areas (S116). If these areas, the horizontal fillet diameter, and the vertical fillet diameter are within predetermined tolerances, respectively, it is determined that the closed curved surface area (square area) is the upper surface of the work 1140 to be detected (S118). YES), the coordinates of the four points are calculated (S124). At this point, the work is detected. FIG. 18 shows the state at this time. FIG. 17 shows a noise-removed image. This noise-removed image is a diagram in which the processing of steps S114 to S122 is performed on the binarized image (FIG. 16) to remove noise at the next stage. Thereafter, the inclination angle and the barycentric coordinates are calculated based on the coordinates of the four points at the four corners of the work 1140 (S126). 19 to 21 show images when there are two works at the top. FIG. 19 shows image data after binarization, and FIG. 20 shows image data after noise removal. FIG. 21 shows image data when a work is detected.
[0054]
Thereafter, the calculated inclination angle and center coordinates are transmitted to the robot controller via the robot controller interface 326.
[0055]
As described above, according to the three-dimensional measurement system according to the present embodiment, using one camera and one strobe device, the light emitted from the strobe device is the square of the distance from the strobe device. Based on the property that the brightness is inversely proportional, a work at a distance to be detected can be extracted by binarizing the image data. Further, before the binarization processing, the uneven brightness is corrected by shading correction, so that the entire upper surface of the work to be detected can be extracted by the binarization processing. As a result, since the strobe is used, the three-dimensional shape of the object can be accurately measured while suppressing the influence of disturbance light, suppressing the equipment cost.
[0056]
<Second embodiment>
Hereinafter, a three-dimensional measurement system according to a second embodiment of the present invention will be described. The hardware configuration of the three-dimensional measurement system according to the second embodiment described below is the same as the hardware configuration of the three-dimensional measurement system according to the first embodiment. Therefore, detailed description thereof will not be repeated here.
[0057]
The three-dimensional measurement system according to the present embodiment is different from the three-dimensional measurement system according to the first embodiment in the method of extracting a work to be detected. In the three-dimensional measurement system according to the present embodiment, the position coordinates of the work are created by using the shadows of the two sides on the upper surface of the work 1100 generated by the light emitted from obliquely above by the strobe device 200.
[0058]
The three-dimensional measurement system according to the present embodiment can be implemented when the approximate position of the work is known, and since the shadow is a sharp straight line, the three-dimensional measurement system according to the first embodiment can be compared with the three-dimensional measurement system according to the first embodiment. In many cases, higher positional accuracy can be obtained. When the approximate position of the work is known in the distribution process, the three-dimensional measurement system according to the present embodiment can be used. In this case, the accuracy in the three-dimensional measurement system according to the first embodiment can be further improved.
[0059]
FIG. 22 shows a shaded state in the field of view of the camera 100 when there is only one work 1100 at the top. As shown in FIG. 22, the shade of the work 1100 is represented by a line segment from the “first point” to the “second point” and a line segment from the “second point” to the “third point”. It consists of two line segments. The intersection of a line segment drawn from the approximate center of gravity of the work instructed by the robot toward the Y axis (parallel to the X axis) and a line segment representing shadow is defined as a “zero point”. That is, as shown in FIG. 22, the “0th point” is on a line segment composed of the “1st point” and the “2nd point”. In addition, an effective area that is narrower than the visual field area and that includes two shaded line segments is set. The effective area is set to an area that is about 30% larger than the size of the work 1100 with the center of the visual field area as the center. It is assumed that the positional relationship between the camera 100 and the pallet 1100 is such that the work 1100 comes near the center of the visual field region.
[0060]
FIG. 23 shows a state where the gap between the adjacent work is shaded at the uppermost stage. In addition to a line segment connecting the “first point” and “second point” and a line segment connecting “second point” and “third point”, which are shades of the work 1100, an adjacent work The shadow behind the gap is imaged.
[0061]
Referring to FIG. 24, a control structure of a program executed by CPU 320 of image processing computer 300 of the three-dimensional measurement system according to the present embodiment will be described. In the flowchart shown in FIG. 24, the same processes as those in the flowchart shown in FIG. 12 are denoted by the same step numbers. The processing for them is the same. Therefore, detailed description thereof will not be repeated here.
[0062]
In S200, CPU 320 binarizes the original image and extracts shadows on two sides of the upper surface of work 1100, which is the uppermost target. In S202, CPU 320 sets an effective area. This effective area is the area shown in FIGS. 22 and 23 described above. In S204, CPU 320 reverses the black and white and sets the shade to white (luminance 255). It is assumed that the resolution of the camera 100 is 8 bits.
[0063]
In S119, whether or not area S (I) of the I-th closed curved surface area (square area) is larger than threshold value S, and whether or not horizontal fillet diameter HF (I) is larger than threshold value HF , And whether the vertical fillet diameter VF (I) is larger than the threshold value VF. If all of the area, the horizontal fillet diameter, and the vertical fillet diameter are larger than the threshold value (YES in S119), the process proceeds to S210. Otherwise (NO at S119), the process proceeds to S120.
[0064]
In S210, CPU 320 reverses the black and white and sets the shade to black (luminance 0). At S300, CPU 320 performs an end point calculation process. The endpoint calculation processing in S300 will be described in detail with reference to FIG.
[0065]
The endpoint calculation processing will be described with reference to FIG.
In S304, the CPU 320 searches for a left shadow in parallel with the X axis from the approximate center of gravity of the work specified by the robot, and sets an intersection with the shadow as a “0th point”. In S400, CPU 320 performs a search process for “second point”, which is the lower end point, based on “0th point”. Details of the processing in S400 will be described later.
[0066]
In S500, CPU 320 performs a search process for an upper endpoint “first point” based on “zero point”. Details of the process of S500 will be described later.
[0067]
At S600, CPU 320 performs a search process for a “third point” that is a diagonal of “first point” based on “second point”. Details of the processing in S600 will be described later.
[0068]
In S306, CPU 320 calculates a tilt angle based on “first point”, “second point”, and “third point”. In S308, CPU 320 calculates the coordinates of the remaining end points from the specifications of work 1100, which is the target, and calculates the coordinates of the center of gravity.
[0069]
The details of the search process in S400 will be described with reference to FIG.
In S402, CPU 320 calculates negative slope K at “0th point”.
[0070]
In S404, CPU 320 initializes variable J (J = 1). In step S406, the CPU 320 scans the pixel below the J-th row of the “0th point” from left to right, and calculates the first found point having a luminance of 0 as a shaded point below the J-row. In S408, CPU 320 calculates the inclination of the shaded point below the J line.
[0071]
In S410, CPU 320 determines whether or not the calculated inclination is between (K−α) and (K + α). Here, α is a predetermined constant. If the calculated inclination is between (K−α) and (K + α) (YES in S420), the process proceeds to S412. If not (NO in S410), the process proceeds to S414.
[0072]
In S414, CPU 320 adds 1 to variable J, and returns the process to S406.
[0073]
In S414, CPU 320 sets a point (J-1) rows below "0th point" as "second point" which is a lower end point.
[0074]
The search process in S500 will be described with reference to FIG.
In S502, CPU 320 calculates the diameter of the gradient of the shadow between the “zero point” and the “second point”.
[0075]
In S504, CPU 320 initializes variable J (J = 1).
In step S506, the CPU 320 scans the pixels on the J-th row of the “zeroth point” from right to left, and calculates the first found point having a luminance of 0 as a shadow point on the J-row.
[0076]
In S508, CPU 320 determines whether or not a shadow point on line J has been detected. If a shadow point on line J can be calculated (YES in S508), the process proceeds to S510. If not (NO in S508), the process proceeds to S516.
[0077]
At S510, CPU 320 calculates the inclination of the shaded point on the J-th line. In S512, CPU 320 determines whether or not the calculated inclination is between (K−α) and (K + α). If the calculated inclination is between (K−α) and (K + α) (YES in S512), the process proceeds to S514. If not (NO in S512), the process proceeds to S516.
[0078]
In S514, CPU 320 adds 1 to variable J, and returns the process to S506.
[0079]
In S516, CPU 320 sets a point on (J−1) th row from “0th point” as “first point” which is an upper end point.
[0080]
The search process in S600 will be described with reference to FIG.
In S602, CPU 320 calculates shade gradient K at the “second point”.
[0081]
In S604, CPU 320 initializes variable J (J = 1). In S606, CPU 320 scans the pixel on the right of row J in the “second point” from top to bottom, and calculates the first found point having a luminance of 0 as a shaded point on the right of column J.
[0082]
In S608, CPU 320 determines whether or not the shaded point on the right in column J has been calculated. If the shaded point on the right of column J can be calculated (YES in S608), the process proceeds to S610. If not (NO in S608), the process proceeds to S616.
[0083]
In S610, CPU 320 calculates the inclination of the shaded point on the right of column J. In S612, CPU 320 determines whether or not the calculated inclination is between (K−α) and (K + α). If the calculated inclination is between (K−α) and (K + α) (YES in S612), the process proceeds to S614. Otherwise (NO at S612), the process proceeds to S616.
[0084]
In S614, CPU 320 adds 1 to variable J, and returns the process to S606.
[0085]
In S616, CPU 320 sets the point on the right of column (J-1) from "second point" as "third point" which is the diagonal end point of "first point".
[0086]
The operation of the three-dimensional measurement system according to the present embodiment based on the above structure and flowchart will be described. In the following description of the operation, a detailed description of the same operation as the operation of the three-dimensional measurement system according to the above-described first embodiment will not be repeated here.
[0087]
After the preliminary processing for calculating the shading correction value is performed (S100), the electronic shutter of the camera 100 is turned on and the work is imaged in synchronization with the flash emission (S104). Data representing the original image is stored in the frame memory (S106), and the original image is subjected to shading correction (S108). The original image is binarized, and the shadow of the workpiece, which is the uppermost target, is extracted (S200). After the effective area is set (S202), it is set so that the shade becomes white by inverting black and white (S204). A bright closed surface area is extracted, and an area, a horizontal fillet diameter, and a vertical fillet diameter in each closed curved surface area (square area) are calculated, and each of the area, the horizontal fillet diameter, and the vertical fillet diameter is a predetermined threshold. If it is larger than the value (YES in S119), an end point calculation process is executed (S300). By performing the processing from S114 to S122, the pattern or the like on the surface of the uppermost work is removed.
[0088]
In the end point calculation processing, a shadow is searched for from the approximate center of gravity of the work specified by the robot, and a “0th point” is calculated (S304). A "second point", which is a lower end point based on the 0th point, is searched (S400). A search for the "first point", which is the upper end point based on the zeroth point, is performed (S500). A search process for a “third point” which is a diagonal of the “first point” based on the “second point” is performed (S600). Thereby, the first point, the second point, and the third point are searched, and three of the four end points of the work 1100 are calculated. An inclination angle is calculated based on the “first point”, the “second point”, and the “third point” (S306), and the remaining end points (“fourth point”) are obtained from the use of the object. Are calculated, and the coordinates of the center of gravity are calculated (S308).
[0089]
29 to 36 show examples of image data of the three-dimensional measurement system according to the present embodiment. 29 and 33 show image data after binarization, and FIGS. 30 and 34 show image data after noise removal. Further, FIGS. 31 and 35 show image data when an end point is detected, and FIGS. 32 and 36 show image data when a work is detected. As shown in FIG. 30 and FIG. 34, a shadow is imaged on the left side and the lower side of the work 1100, and an end point is detected based on the shadow.
[0090]
As described above, according to the three-dimensional measurement system according to the present embodiment, position information of a target work is created based on the length of a line segment representing a shaded portion on two sides of the upper surface of the work. You. Since the line segment information more accurately represents the outer shape of the target work than the region information, the position information of the target work can be created more accurately.
[0091]
The embodiments disclosed this time are to be considered in all respects as illustrative and not restrictive. The scope of the present invention is defined by the terms of the claims, rather than the description above, and is intended to include any modifications within the scope and meaning equivalent to the terms of the claims.
[Brief description of the drawings]
FIG. 1 is an external view of a three-dimensional measurement system according to a first embodiment of the present invention.
FIG. 2 is a plan view of the three-dimensional measurement system of FIG. 1 as viewed from above.
FIG. 3 is an external view of an image processing computer according to the first embodiment of the present invention.
FIG. 4 is a control block diagram of the computer system shown in FIG.
FIG. 5 is a diagram for explaining a fillet diameter in a visual field region.
FIG. 6 is a diagram for explaining end points of a work in a visual field region.
FIG. 7 is a profile of a central portion of a reference image for obtaining a shading correction value.
FIG. 8 is a profile of a central portion when shading correction is performed on a reference image.
FIG. 9 is a diagram illustrating a state before shading correction in an actual image.
FIG. 10 is a diagram illustrating a state after shading correction in an actual image.
FIG. 11 is a diagram illustrating a relationship between an actual image and image data after shading correction.
FIG. 12 is a flowchart illustrating a control structure of a program executed by the image processing computer according to the first embodiment of the present invention.
FIG. 13 is a diagram (part 1) for describing a state of shading correction;
FIG. 14 is a diagram (part 2) for describing a state of shading correction;
FIG. 15 is a diagram (part 3) for describing a state of shading correction;
FIG. 16 is a diagram (part 1) illustrating a state of processing in the image processing computer according to the first embodiment of the present invention.
FIG. 17 is a diagram (part 2) illustrating a state of processing in the image processing computer according to the first embodiment of the present invention.
FIG. 18 is a diagram (part 3) illustrating a state of processing in the image processing computer according to the first embodiment of the present invention.
FIG. 19 is a diagram (part 4) illustrating a state of processing in the image processing computer according to the first embodiment of the present invention.
FIG. 20 is a view (No. 5) showing a state of processing in the image processing computer according to the first embodiment of the present invention.
FIG. 21 is a view (No. 6) showing a state of processing in the image processing computer according to the first embodiment of the present invention.
FIG. 22 is a diagram (part 1) for explaining the shadow of a workpiece in a visual field region according to the second embodiment of the present invention.
FIG. 23 is a diagram (part 2) for describing the shadow of a workpiece in a visual field region according to the second embodiment of the present invention.
FIG. 24 is a flowchart illustrating a control structure of a program executed by the image processing computer according to the second embodiment of the present invention.
FIG. 25 is a flowchart showing a control structure of an end point calculation process shown in FIG. 21.
FIG. 26 is a flowchart showing a control structure of a search process for “second point” based on “zero point” shown in FIG. 25.
FIG. 27 is a flowchart illustrating a control structure of a “first point” search process based on the “0th point” illustrated in FIG. 25;
FIG. 28 is a flowchart showing a control structure of a “third point” search process based on the “second point” shown in FIG. 25;
FIG. 29 is a diagram (part 1) illustrating a state of processing in the image processing computer according to the second embodiment of the present invention.
FIG. 30 is a diagram (part 2) illustrating a state of processing in the image processing computer according to the second embodiment of the present invention.
FIG. 31 is a diagram (part 3) illustrating a state of processing in the image processing computer according to the second embodiment of the present invention.
FIG. 32 is a diagram (part 4) illustrating a state of processing in the image processing computer according to the second embodiment of the present invention.
FIG. 33 is a view (No. 5) showing a state of processing in the image processing computer according to the second embodiment of the present invention.
FIG. 34 is a view (No. 6) showing a state of processing in the image processing computer according to the second embodiment of the present invention.
FIG. 35 is a view (No. 7) showing a state of processing in the image processing computer according to the second embodiment of the present invention.
FIG. 36 is a view (No. 8) showing a state of processing in the image processing computer according to the second embodiment of the present invention.
[Explanation of symbols]
100 camera, 200 strobe, 300 computer system, 302 computer, 304 monitor, 306 FD drive, 308 CD-ROM drive, 310 keyboard, 312 mouse, 326 robot controller interface, 328 strobe sync signal interface, 330 camera interface, 1000 Pallet, 1100, 1110, 1120, 1130, 1140 Work, 1132 Dark print section.

Claims (9)

対象物を撮像するための撮像手段と、
前記対象物を照明するストロボ照明装置と、
前記ストロボ照明装置の発光に同期させて前記撮像手段により前記対象物を撮像するように、前記撮像手段と前記ストロボ照明装置とを制御するための制御手段と、
前記撮像手段に接続され、撮像された対象物を表わす画像データに対して、画像処理を行なうための処理手段とを含み、
前記処理手段は、
前記画像データに対して、色の強度の不均一を補正するための補正手段と、
前記補正された画像データに対して、前記撮像手段から前記対象物までの距離に応じた色の強度の違いに基づいて、前記対象物の特徴量を算出するための算出手段と、
前記算出された特徴量に基づいて、前記対象物の位置情報を作成するための作成手段とを含む、立体計測装置。
Imaging means for imaging an object;
A strobe lighting device for illuminating the object,
Control means for controlling the imaging means and the strobe lighting apparatus so that the imaging means takes an image of the object in synchronization with the emission of the strobe lighting apparatus;
A processing unit connected to the imaging unit, for performing image processing on image data representing the imaged object,
The processing means includes:
Correction means for correcting non-uniformity of color intensity for the image data;
For the corrected image data, based on a difference in color intensity according to the distance from the imaging unit to the target, a calculating unit for calculating a feature amount of the target,
A three-dimensional measurement device, comprising: a creation unit for creating location information of the object based on the calculated feature amount.
前記算出手段は、前記補正された画像データに対して、前記撮像手段から前記対象物までの距離に応じた色の強度の違いに対応するしきい値により前記画像データを二値化処理して、色の強度が異なる領域を抽出して、前記抽出された領域に基づいて、前記対象物の特徴量を算出するための手段を含む、請求項1に記載の立体計測装置。The calculating means binarizes the image data with a threshold corresponding to a difference in color intensity according to a distance from the imaging means to the object with respect to the corrected image data. The three-dimensional measurement apparatus according to claim 1, further comprising: means for extracting regions having different color intensities and calculating a feature amount of the object based on the extracted regions. 前記算出手段は、前記対象物の特徴量として、前記抽出された領域の面積および前記領域のフィレ径を算出するための手段を含む、請求項2に記載の立体計測装置。The three-dimensional measurement apparatus according to claim 2, wherein the calculation unit includes a unit for calculating an area of the extracted region and a fillet diameter of the region as the feature amount of the target object. 前記作成手段は、前記面積および前記フィレ径に基づいて、前記対象物の座標情報および傾き情報を作成するための手段を含む、請求項3に記載の立体計測装置。The three-dimensional measurement apparatus according to claim 3, wherein the creation unit includes a unit for creating coordinate information and inclination information of the object based on the area and the fillet diameter. 対象物は直方体の形状を有し、
前記ストロボ照明装置は、前記撮像手段の近傍の位置であって、前記直方体の上面の一辺に対して斜め方向の位置から前記対象物を照明する、請求項1に記載の立体計測装置。
The object has a rectangular parallelepiped shape,
The three-dimensional measurement device according to claim 1, wherein the strobe lighting device illuminates the object from a position near the imaging unit and obliquely to one side of an upper surface of the rectangular parallelepiped.
前記算出手段は、前記補正された画像データに対して、前記撮像手段から前記対象物までの距離に応じた色の強度の違いに対応するしきい値により前記画像データを二値化処理して、色の強度が異なる領域を抽出して、前記抽出された領域の中から前記対象物である直方体の上面の二辺の陰を選択して、前記選択された陰に基づいて、前記対象物の特徴量を算出するための手段を含む、請求項5に記載の立体計測装置。The calculating means binarizes the image data with a threshold corresponding to a difference in color intensity according to a distance from the imaging means to the object with respect to the corrected image data. Extracting regions having different color intensities, selecting two shadows on the upper surface of the rectangular parallelepiped which is the target object from the extracted regions, and selecting the target object based on the selected shadow. The three-dimensional measurement apparatus according to claim 5, further comprising: means for calculating a feature amount of the three-dimensional image. 前記算出手段は、前記対象物の特徴量として、前記選択された二辺の陰の長さおよび傾きを算出するための手段を含む、請求項6に記載の立体計測装置。The three-dimensional measurement apparatus according to claim 6, wherein the calculation unit includes a unit for calculating a length and a tilt of the shade of the selected two sides as the feature amount of the target object. 前記作成手段は、前記算出された二辺の陰の長さおよび傾きに基づいて、前記対象物の座標情報および傾き情報を作成するための手段を含む、請求項7に記載の立体計測装置。The three-dimensional measurement apparatus according to claim 7, wherein the creation unit includes a unit for creating coordinate information and inclination information of the object based on the calculated length and inclination of the two sides. 前記処理手段に接続され、前記算出された位置情報をデパレタイジング用ロボットのコントローラに出力するための出力手段をさらに含む、請求項1〜8のいずれかに記載の立体計測装置。The three-dimensional measurement apparatus according to claim 1, further comprising an output unit connected to the processing unit and configured to output the calculated position information to a controller of a depalletizing robot.
JP2002161854A 2002-06-03 2002-06-03 Three-dimensional measuring apparatus Withdrawn JP2004012143A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2002161854A JP2004012143A (en) 2002-06-03 2002-06-03 Three-dimensional measuring apparatus

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2002161854A JP2004012143A (en) 2002-06-03 2002-06-03 Three-dimensional measuring apparatus

Publications (1)

Publication Number Publication Date
JP2004012143A true JP2004012143A (en) 2004-01-15

Family

ID=30430799

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2002161854A Withdrawn JP2004012143A (en) 2002-06-03 2002-06-03 Three-dimensional measuring apparatus

Country Status (1)

Country Link
JP (1) JP2004012143A (en)

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006105830A (en) * 2004-10-06 2006-04-20 Dainippon Printing Co Ltd Photogravure printing cell shape measuring device and measuring method
KR101012637B1 (en) 2008-08-22 2011-02-09 (주) 인텍플러스 Optical measurememt system the shape of an object and measurement method using the same
JP2012093104A (en) * 2010-10-25 2012-05-17 Yaskawa Electric Corp Shape measuring device, robot system, and shape measuring method
CN102999904A (en) * 2012-11-14 2013-03-27 北京理工大学 Plane-based micro-nano object image tilt correction method
JP2016020888A (en) * 2014-06-20 2016-02-04 株式会社リコー Measurement system, work picking system, measurement method and program
JP2017058130A (en) * 2015-09-14 2017-03-23 株式会社東芝 Object detection device, method, depalletizing automatization device, and packing box
CN109883329A (en) * 2019-04-12 2019-06-14 中民筑友智能装备科技有限公司 A kind of detection system and method for prefabricated components outer dimension
US10370201B2 (en) 2015-11-13 2019-08-06 Kabushiki Kaisha Toshiba Transporting apparatus and transporting method
JP2020035383A (en) * 2018-08-31 2020-03-05 ファナック株式会社 Information processing apparatus and information processing method
DE112018005784B4 (en) 2017-11-08 2022-02-03 Hideki Iino Cargo identification code, things it is attached to and usable robotic gripper

Cited By (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006105830A (en) * 2004-10-06 2006-04-20 Dainippon Printing Co Ltd Photogravure printing cell shape measuring device and measuring method
KR101012637B1 (en) 2008-08-22 2011-02-09 (주) 인텍플러스 Optical measurememt system the shape of an object and measurement method using the same
JP2012093104A (en) * 2010-10-25 2012-05-17 Yaskawa Electric Corp Shape measuring device, robot system, and shape measuring method
CN102999904A (en) * 2012-11-14 2013-03-27 北京理工大学 Plane-based micro-nano object image tilt correction method
CN102999904B (en) * 2012-11-14 2015-06-10 北京理工大学 Plane-based micro-nano object image tilt correction method
JP2016020888A (en) * 2014-06-20 2016-02-04 株式会社リコー Measurement system, work picking system, measurement method and program
JP2017058130A (en) * 2015-09-14 2017-03-23 株式会社東芝 Object detection device, method, depalletizing automatization device, and packing box
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 (en) 2017-11-08 2022-02-03 Hideki Iino Cargo identification code, things it is attached to and usable robotic gripper
JP2020035383A (en) * 2018-08-31 2020-03-05 ファナック株式会社 Information processing apparatus and information processing method
CN110871444A (en) * 2018-08-31 2020-03-10 发那科株式会社 Information processing apparatus and information processing method
CN109883329A (en) * 2019-04-12 2019-06-14 中民筑友智能装备科技有限公司 A kind of detection system and method for prefabricated components outer dimension

Similar Documents

Publication Publication Date Title
JP6548422B2 (en) INFORMATION PROCESSING APPARATUS, INFORMATION PROCESSING METHOD, AND PROGRAM
US6947151B2 (en) Surface state inspecting method and substrate inspecting apparatus
TWI253006B (en) Image processing system, projector, information storage medium, and image processing method
TWI313576B (en) Board inspecting apparatus, its parameter setting method and parameter setting apparatus
KR101527525B1 (en) Three-dimensional measuring apparatus
US11199504B2 (en) Shape inspection apparatus and shape inspection method
JP2005274558A (en) Surface condition inspecting method, surface condition inspecting apparatus employing it, and substrate inspecting apparatus
JP2007206797A (en) Image processing method and image processor
CN113191174B (en) Article positioning method and device, robot and computer readable storage medium
JP2004012143A (en) Three-dimensional measuring apparatus
JP3028016B2 (en) 3D image measurement method for cargo
JP2004219255A (en) Device, method, and program for measuring size
JP5545932B2 (en) 3D shape measuring device
JP2005337943A (en) Three-dimensional measuring apparatus
JP7365477B2 (en) Three-dimensional measuring device and workpiece work device
JPH0969973A (en) Position adjusting method for solid-state image pickup element
CN115082538A (en) System and method for three-dimensional reconstruction of surface of multi-view vision balance ring part based on line structure light projection
JP4354173B2 (en) Appearance inspection equipment for electronic circuit components
JP2006322951A (en) Method and device for surface condition inspection, and device for inspecting substrate
JP3823559B2 (en) How to convert 3D distance data
JPH08161508A (en) Pattern detecting method
JPH0949705A (en) Method for measuring moving amount of object to be measured by image processing of speckle pattern generated by irradiation of laser light
WO2023140266A1 (en) Picking device and image generation program
JP2596158B2 (en) Component recognition device
JP4354174B2 (en) Manufacturing method for electronic circuit components

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