JP2022123241A - 画像処理装置、画像処理方法、生産システム、物品の製造方法、及びコンピュータプログラム、 - Google Patents
画像処理装置、画像処理方法、生産システム、物品の製造方法、及びコンピュータプログラム、 Download PDFInfo
- Publication number
- JP2022123241A JP2022123241A JP2021020421A JP2021020421A JP2022123241A JP 2022123241 A JP2022123241 A JP 2022123241A JP 2021020421 A JP2021020421 A JP 2021020421A JP 2021020421 A JP2021020421 A JP 2021020421A JP 2022123241 A JP2022123241 A JP 2022123241A
- Authority
- JP
- Japan
- Prior art keywords
- image processing
- feature information
- image
- camera
- processing apparatus
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000012545 processing Methods 0.000 title claims abstract description 179
- 238000000034 method Methods 0.000 title claims description 52
- 238000004519 manufacturing process Methods 0.000 title claims description 40
- 238000004590 computer program Methods 0.000 title claims description 8
- 238000003672 processing method Methods 0.000 title claims 3
- 238000009434 installation Methods 0.000 claims abstract description 117
- 238000003384 imaging method Methods 0.000 claims abstract description 36
- 238000000605 extraction Methods 0.000 claims abstract description 13
- 238000005259 measurement Methods 0.000 claims description 52
- 238000011156 evaluation Methods 0.000 claims description 27
- 230000008569 process Effects 0.000 claims description 22
- 239000000284 extract Substances 0.000 abstract description 4
- 230000006870 function Effects 0.000 description 28
- 238000003860 storage Methods 0.000 description 24
- 230000007246 mechanism Effects 0.000 description 18
- 238000010586 diagram Methods 0.000 description 16
- 238000001514 detection method Methods 0.000 description 12
- 238000012790 confirmation Methods 0.000 description 9
- 238000007689 inspection Methods 0.000 description 9
- 238000013500 data storage Methods 0.000 description 7
- 230000002093 peripheral effect Effects 0.000 description 6
- 238000009826 distribution Methods 0.000 description 5
- 239000012636 effector Substances 0.000 description 4
- 239000000203 mixture Substances 0.000 description 4
- 230000010076 replication Effects 0.000 description 4
- 238000012360 testing method Methods 0.000 description 4
- 230000008859 change Effects 0.000 description 3
- 238000012544 monitoring process Methods 0.000 description 3
- 230000000007 visual effect Effects 0.000 description 3
- 230000003321 amplification Effects 0.000 description 2
- 230000033001 locomotion Effects 0.000 description 2
- 238000003199 nucleic acid amplification method Methods 0.000 description 2
- 238000004091 panning Methods 0.000 description 2
- 230000009467 reduction Effects 0.000 description 2
- 238000000926 separation method Methods 0.000 description 2
- 230000007704 transition Effects 0.000 description 2
- 238000010420 art technique Methods 0.000 description 1
- 230000001174 ascending effect Effects 0.000 description 1
- 230000006399 behavior Effects 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 238000012937 correction Methods 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 230000007717 exclusion Effects 0.000 description 1
- 230000004438 eyesight Effects 0.000 description 1
- 230000002349 favourable effect Effects 0.000 description 1
- 230000005484 gravity Effects 0.000 description 1
- 229910052736 halogen Inorganic materials 0.000 description 1
- 150000002367 halogens Chemical class 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000010606 normalization Methods 0.000 description 1
- NJPPVKZQTLUDBO-UHFFFAOYSA-N novaluron Chemical compound C1=C(Cl)C(OC(F)(F)C(OC(F)(F)F)F)=CC=C1NC(=O)NC(=O)C1=C(F)C=CC=C1F NJPPVKZQTLUDBO-UHFFFAOYSA-N 0.000 description 1
- 238000007781 pre-processing Methods 0.000 description 1
- 230000003252 repetitive effect Effects 0.000 description 1
- 230000003362 replicative effect Effects 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 230000004382 visual function Effects 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N23/00—Cameras or camera modules comprising electronic image sensors; Control thereof
- H04N23/60—Control of cameras or camera modules
- H04N23/695—Control of camera direction for changing a field of view, e.g. pan, tilt or based on tracking of objects
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N7/00—Television systems
- H04N7/18—Closed-circuit television [CCTV] systems, i.e. systems in which the video signal is not broadcast
- H04N7/183—Closed-circuit television [CCTV] systems, i.e. systems in which the video signal is not broadcast for receiving images from a single remote source
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T1/00—General purpose image data processing
- G06T1/0014—Image feed-back for automatic industrial control, e.g. robot with camera
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J9/00—Programme-controlled manipulators
- B25J9/16—Programme controls
- B25J9/1694—Programme controls characterised by use of sensors other than normal servo-feedback from position, speed or acceleration sensors, perception control, multi-sensor controlled systems, sensor fusion
- B25J9/1697—Vision controlled systems
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B19/00—Programme-control systems
- G05B19/02—Programme-control systems electric
- G05B19/418—Total factory control, i.e. centrally controlling a plurality of machines, e.g. direct or distributed numerical control [DNC], flexible manufacturing systems [FMS], integrated manufacturing systems [IMS] or computer integrated manufacturing [CIM]
- G05B19/41815—Total factory control, i.e. centrally controlling a plurality of machines, e.g. direct or distributed numerical control [DNC], flexible manufacturing systems [FMS], integrated manufacturing systems [IMS] or computer integrated manufacturing [CIM] characterised by the cooperation between machine tools, manipulators and conveyor or other workpiece supply system, workcell
- G05B19/4182—Total factory control, i.e. centrally controlling a plurality of machines, e.g. direct or distributed numerical control [DNC], flexible manufacturing systems [FMS], integrated manufacturing systems [IMS] or computer integrated manufacturing [CIM] characterised by the cooperation between machine tools, manipulators and conveyor or other workpiece supply system, workcell manipulators and conveyor only
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/50—Information retrieval; Database structures therefor; File system structures therefor of still image data
- G06F16/58—Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually
- G06F16/583—Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually using metadata automatically derived from the content
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/70—Determining position or orientation of objects or cameras
- G06T7/73—Determining position or orientation of objects or cameras using feature-based methods
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/20—Image preprocessing
- G06V10/255—Detecting or recognising potential candidate objects based on visual cues, e.g. shapes
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/40—Extraction of image or video features
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N23/00—Cameras or camera modules comprising electronic image sensors; Control thereof
- H04N23/60—Control of cameras or camera modules
- H04N23/69—Control of means for changing angle of the field of view, e.g. optical zoom objectives or electronic zooming
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B2219/00—Program-control systems
- G05B2219/30—Nc systems
- G05B2219/39—Robotics, robotics to robotics hand
- G05B2219/39102—Manipulator cooperating with conveyor
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B2219/00—Program-control systems
- G05B2219/30—Nc systems
- G05B2219/40—Robotics, robotics mapping to robotics vision
- G05B2219/40554—Object recognition to track object on conveyor
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/30—Subject of image; Context of image processing
- G06T2207/30244—Camera pose
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V2201/00—Indexing scheme relating to image or video recognition or understanding
- G06V2201/06—Recognition of objects for industrial automation
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Signal Processing (AREA)
- Robotics (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Mechanical Engineering (AREA)
- General Engineering & Computer Science (AREA)
- Library & Information Science (AREA)
- Manufacturing & Machinery (AREA)
- Automation & Control Theory (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Quality & Reliability (AREA)
- Image Analysis (AREA)
- Manipulator (AREA)
Abstract
【課題】撮像手段の設置を支援可能な画像処理装置を提供する。【解決手段】画像を取得する画像取得手段と、画像から特徴情報を抽出する特徴情報抽出手段と、特徴情報抽出手段により抽出された特徴情報に基づいて撮像手段の設置を支援するための設置支援用特徴情報を生成する第1の生成手段と、を有する画像処理装置であって、特徴情報抽出手段が、画像取得手段が取得した画像から対象物やその周辺の特徴情報を抽出しS602、第1の生成手段が、抽出された特徴情報に基づいて撮像手段の設置を支援するための設置支援用特徴情報を生成するS605。【選択図】図6
Description
本発明は、撮像手段の設置を支援可能な画像処理装置等に関する。
製品の生産や品質確認、運搬などを目的として、把持装置、ロボットアーム、その他アクチュエータや搬送装置などの各種ロボット装置を制御する技術が知られている。又、カメラ等の撮影装置を用いて対象(以下ワークと呼ぶ)を撮影したり録画した画像データに対し、画像処理を行って装置や作業状況を監視したり、ワークの位置を計測したり、検査を行ったりする技術も知られている。
このような撮影装置や画像処理装置を利用することで、目視での計測や検査、手動での組付け動作や整列等を不要にすることができる。又、ロボット装置の制御指示を切り換えたり、動作補正したりすることができるので、より多様な所望の作業を行うシステムを構築することができる。
又、画像処理の処理内容を切り替えることで、一つの画像データに対して異なる処理を行えるので、複数の異なる領域を解析して計測や検査をしたり、画像を加工したり、監視したりすることもできる。このようなカメラ等の撮影装置及び画像処理装置を用いて生産システムや搬送システムの視覚機能を実現する場合、カメラをシステム内で適切な位置に適切な姿勢で設置し、ワークに対して所望の構図や他の装置との相対的な位置関係を確保することが重要である。
又、上述のような搬送システム、生産システムは例えば製品の流通量や生産量の増大にともない、最初に構築したシステムだけでは処理が賄いきれず、同じ生産工場内や、別の生産工場内などで同等の仕様のシステムを複製(増設)することがある。このような複製システムにおいては、複製された搬送システムや生産システムの処理速度や精度、信頼性は最初に構築した搬送システムや生産システムと同等かそれ以上のものが求められる。従って、カメラ位置や姿勢の調整、画像処理装置の動作確認、システムの動作確認等の工程を何度も繰り返しながら、要求される処理速度や精度、信頼性が得られるまで煩雑な調整が繰り返されることになる。
例えば、特許文献1では画像中の被写体の種類を判別する判別手段と、被写体の判別結果から過去の撮影方法の履歴を参照し、当該被写体の撮影に好適な撮影パラメータや構図をユーザに推奨する。そのため、プロカメラマンの撮影画像や、過去の撮影画像を参照して類似した構図の画像がスムーズに撮影できるようにユーザをアシストすることができる。
しかしながら、特許文献1では被写体を以前撮影した際の撮影パラメータの履歴等を参照して次の撮影パラメータなどをGUI上にて推奨できるが、このような技術を例えば高精度の画像計測や画像処理が要求される製造システムに適用することは困難である。即ち、サブピクセル~数ピクセル単位で撮影位置を再現できるようにカメラ設置及び位置姿勢の調整を行う必要があるシステムに適用することは困難である。
例えば、搬送システムにおいてロボットを用いてトレイから数センチメートルの電子回路のようなワークを取り出したり、ワークを整列して搬出装置上に整列したりするような工程が考えられる。その場合、通常画像計測装置への要求精度はマイクロメートルから数ミリメートル以内であるような場合が多い。
そのような場合にカメラが適切に設置されていなかったとしたら、画像計測結果に多大な計測誤差が含まれてしまうので、ロボットがワークを精度よく把持できず、搬送機へのパレタイズ(整列)がうまくいかなくなる。又、ワークを落下させてしまったり、ワークの把持すら失敗してしまったり、場合によってはワークの把持姿勢が予期せぬものとなり、周囲の搬送装置などに衝突して損壊したりしてしまう可能性がある。
そのため、このような搬送システムや生産システムにおいて、カメラと、各種周辺装置(ロボット、搬送装置、作業台など)の相対的な位置関係や姿勢は重要であり、上述のように煩雑な調整作業が必要となっていた。
又、システムの複製のみならず、最初に構築したシステムにおいても、例えばシステムの稼働中にトラブルや人的ミスなどでカメラ位置がずれてしまったり、カメラが故障してしまったりして、交換しなければならないことがある。こうした場合にも上述のように煩雑な調整作業が必要となるという問題があった。
本発明の目的は上記のような問題を解決でき、撮像手段の設置を支援可能な画像処理装置を提供することにある。
本発明の目的は上記のような問題を解決でき、撮像手段の設置を支援可能な画像処理装置を提供することにある。
本発明の1つの側面は上記の問題を解決するために、画像処理装置において、
画像を取得する画像取得手段と、
前記画像から特徴情報を抽出する特徴情報抽出手段と、
前記特徴情報抽出手段により抽出された特徴情報に基づいて撮像手段の設置を支援するための設置支援用特徴情報を生成する第1の生成手段と、を有することを特徴とする。
画像を取得する画像取得手段と、
前記画像から特徴情報を抽出する特徴情報抽出手段と、
前記特徴情報抽出手段により抽出された特徴情報に基づいて撮像手段の設置を支援するための設置支援用特徴情報を生成する第1の生成手段と、を有することを特徴とする。
本発明によれば、撮像手段の設置を支援可能な画像処理装置を提供できる。
以下、添付図面を参照して、本発明の好適な実施の形態について実施例を用いて説明する。尚、各図において、同一の部材ないし要素については同一の参照番号を付し、重複する説明は省略ないし簡略化する。
図1は、実施例に係る画像処理装置101を含む生産システムの全体構成図である。
102はシステム制御装置であり、システム制御装置102より、画像処理装置101や搬入装置103、ロボット104、搬出装置105に指示を送信することで、生産システム全体の動作を制御する。尚システム制御装置102はCPU等のコンピュータを内蔵するとともに、不図示のメモリを内蔵し、前記メモリからコンピュータプログラムを読出して生産システム全体の制御を行う。
102はシステム制御装置であり、システム制御装置102より、画像処理装置101や搬入装置103、ロボット104、搬出装置105に指示を送信することで、生産システム全体の動作を制御する。尚システム制御装置102はCPU等のコンピュータを内蔵するとともに、不図示のメモリを内蔵し、前記メモリからコンピュータプログラムを読出して生産システム全体の制御を行う。
図1の生産システムでは、搬入装置103によって複数の対象物としてのワーク110を積載したトレイ109を搬入する搬入ステップを有する。又、画像処理装置101及び第1の撮像手段としてのカメラ106によってワーク110の位置姿勢を計測する。即ち、ワークの位置姿勢を計測するための計測用特徴情報を画像処理装置101が取得し、撮像手段により得られた画像から前記計測用特徴情報を探索してワークの位置姿勢を計測する。更に、計測結果に基づき、把持手段としてのロボット104によってワーク110を把持し、トレイ109から取り出し、搬出装置105に整列したり、加工処理等を施すことで物品を製造している。
画像処理装置101もCPU等のコンピュータを内蔵するとともに、不図示のメモリを内蔵し、前記メモリからコンピュータプログラムを読出して、各種の画像処理を設定したり実行したりする画像処理手段として機能する。106は画像取得手段としてのカメラであり、画像の撮像を行うことで対象物の画像を取得する。尚図1ではカメラ106と画像処理装置101が別体としてシステム内に配置されているが、カメラ106と画像処理装置101とは一体的に構成されていてもよい。
又、同様に画像処理装置101とシステム制御装置102によって画像処理システムが構成されており、画像処理装置101とシステム制御装置102は一体であってもよい。更に、画像処理装置101とシステム制御装置102はロボット104、あるいはカメラ106などと同一の筐体に格納してもよいが、本実施例では別体として説明する。
ロボット104はロボット制御装置を内蔵しており、外部からの制御指示をうけ、ロボットの各軸やロボットハンド(エンドエフェクタ)などの把持機構の動作を制御する。又、実施例ではロボットは多関節ロボットの構成で例示するが、駆動装置としては一軸の駆動装置や、回転ステージ、直交ロボットなどでもよい。更に又、把持機構や吸着機構などを有したロボットハンド(エンドエフェクタ)などを組み合わせて構成されたシステム装置でも構わない。
107はカメラ106やカメラ位置調整ステージ108を固定するための架台である。カメラ位置調整ステージ108は軸調整を行うことによってカメラの空間的な位置や姿勢を外部からの信号あるいは手動によって調整することができる。
又、本実施例ではシステム制御装置102からシステム全体の制御指示を行うこととして説明する。しかし、図1に示した生産システムの外部の操作装置からの制御指示で動作させたり、あるいは予め定められたタイムチャートに基づき自動的運転するように構成しても良い。又、画像処理装置101の処理結果などに基づいて、後段の他の装置において他の画像処理を実施したり、その画像処理結果に基づき上述の他の装置からロボットを制御したりしてもよい。
画像処理装置101やカメラ106は任意の手順や撮影パラメータで撮像を行ったり、撮像された画像を処理したり、その結果を出力することができるように構成されている。尚、カメラ106は、パン、チルト、ズーム倍率、焦点距離、絞り、信号増幅率など各種撮影パラメータを変更するための機構を有していても良い。又、画像処理装置101やシステム制御装置102からの指示によって上記パン、チルト制御により撮影角度を制御したり、ズーム倍率、焦点距離、絞り、信号増幅率などの各種撮影パラメータを変更したりすることが可能となっている。
産業用途等における図1のような繰り返し動作の多い生産システムにおいては、画像処理装置がロボットや搬送装置の視覚として用いられるため、生産システム全体の動作はシステム制御装置102で予め設定しておく。又、画像処理に好適な撮影のタイミングやパラメータ、構図なども予め設定しておく。
図2は、実施例に係るシステム制御装置102に設定されたシステム動作の例を詳細に示すフローチャートである。本実施例に係るシステム動作は、ユーザがシステム制御装置102を用いて作成したフローチャートのコンピュータプログラムに従って動作するものとする。
しかし、図1に示していないシステム制御プログラム作成装置でシステム制御動作を作成したのち、システム制御装置102のメモリにそのプログラムをダウンロードするようにしてもよい。或いは、予め機能別や目的別に定型で用意された組合せ済みのフローチャートのコンピュータプログラムを内包したパッケージ機能をユーザがGUI上で選択したり、パラメータを調整したりするような形態などで提供したりしてもよい。
図2のフローチャートでは、システム制御装置102が、搬入装置103によってワーク110を積載したトレイ109を搬入させ、画像処理装置101及びカメラ106によってワーク110の位置姿勢を計測させる。そして、ロボット104によってワーク110を把持しトレイ109から取り出し、搬出装置105に整列する処理の流れの例を詳述している。
システム制御装置102はステップS201にてシステム動作を開始する。更に、ステップS202でシステム制御装置102は搬入装置103に制御指示を送信することで、搬入装置103は所定の送り出し量だけステージを移動する。これによってワーク110が積載されたトレイ109が所定位置まで搬入される。
ステップS203でシステム制御装置102は画像処理装置101に画像処理指示を送信する。画像処理装置101はカメラ106により取得された対象物の画像を用いて画像処理を行い、ワーク110の位置や姿勢を計測する。そして画像処理装置101がワーク110の位置姿勢を判別出来たら、その結果をシステム制御装置102に返信させる。その際にカメラ106により取得された画像を用いて画像処理装置101は必要に応じて更にワーク110の種別を計測し、搬出位置を変更したりして、仕分けしたりしてもよい。或いは、ワーク110が欠陥などの品質の問題がないかを画像処理によって品質検査したりしてもよい。
又、システム制御装置102は、ワーク110が検出できなかったら搬入装置の送り出し量が不足していたとして、搬入装置103のステージを更に送り出したりしてもよい。又、ステップS203の処理結果に応じて、ワーク110やトレイ109の状況を判断し、例えばワークが重なっていたり、トレイからこぼれていたりしたら、ロボット104の制御速度を変更したり、システムの動作を停止したりしてもよい。
ステップS204では、システム制御装置102は返信されたワーク110の位置や姿勢の情報に合わせてワーク110の上方まで、ロボット104を移動させたりハンド(エンドエフェクタ)を回転させたりといった補正動作を行う。
システム制御装置102は、ステップS205において、ハンド(エンドエフェクタ)でワークの把持が可能な位置、例えばワーク110の真上などまでロボット104のハンドを移動させる。
システム制御装置102は、ステップS205において、ハンド(エンドエフェクタ)でワークの把持が可能な位置、例えばワーク110の真上などまでロボット104のハンドを移動させる。
システム制御装置102は、ステップS206でハンドの開閉を制御してワーク110を把持(ピッキング)させる。このとき例えば図1において一度に1個ずつ把持する。そしてステップS207でロボット104により搬出装置105の上方に移動させる。更にステップS208で、システム制御装置102はフローチャートのステップS211における繰り返し回数判別や外部から取得した積載個数に対応し、所定の配膳位置の真上にロボット104を移動させる。
ステップS209で、システム制御装置102はハンドの開閉を制御してワーク110を所定の配膳位置に配膳(プレイス)させる。そしてステップS210で、システム制御装置102はロボットを配膳台上方に移動(退避)させる。
ステップS211で、システム制御装置102はロボットの作業回数が所定の回数N1(図1の場合はN1=2)未満で、横に並んだ1行分の2個のワーク110をすべて配膳し終わっていないと判断したらステップS203に戻る。そして再びステップS203~S211の動作を実行する。一方、前記所定の回数N1に達したら1行分のワークの配膳が終了したと判断してステップS212に進む。
ステップS211で、システム制御装置102はロボットの作業回数が所定の回数N1(図1の場合はN1=2)未満で、横に並んだ1行分の2個のワーク110をすべて配膳し終わっていないと判断したらステップS203に戻る。そして再びステップS203~S211の動作を実行する。一方、前記所定の回数N1に達したら1行分のワークの配膳が終了したと判断してステップS212に進む。
ステップS212では、所定の回数N2(図1の場合はN2=3)未満で、トレイ上の3行分のワーク110をすべて配膳し終わっていない(NO)と判断したらステップS202に戻り、搬入装置103により1行分トレイを進ませる。そしてステップS202~S212を実行する。
ステップS212で、所定の回数N2(図1の場合はN2=3)に達し、3行分のワーク110をすべて配膳し終わった(YES)と判断したらステップS213に進む。これによって1つのトレイ上のワークの把持、配膳動作が完了する。次のトレイに対しては図2の全体のフローを再び実行する。
ステップS212で、所定の回数N2(図1の場合はN2=3)に達し、3行分のワーク110をすべて配膳し終わった(YES)と判断したらステップS213に進む。これによって1つのトレイ上のワークの把持、配膳動作が完了する。次のトレイに対しては図2の全体のフローを再び実行する。
又、このような生産システムの場合、撮像装置や画像処理装置は上述のようにロボットの視覚として用いられるのみならず、システムの作業状況の監視用途として用いることができる。例えば搬入装置103やトレイ109に積載されたワークが荷崩れしていないかを監視したり、ロボット104が所望の動作から外れた動きをしたり、作業領域付近に作業の支障をきたす状況が起きていないかを定常的な監視をしたりすることが出来る。
図3は実施例に係る画像処理装置101のブロック図である。画像処理装置101は、液晶パネルなどにより構成された表示手段としての入出力表示装置301、及びキーボードやマウス、タッチパネル、入力操作コントローラ、ジェスチャ入力装置などにより構成される各種操作入力用の操作入力装置302を含む。これら入出力表示装置301及び操作入力装置302は、主にユーザインターフェースを構成する。
又、画像処理装置101は、カメラ106だけでなく、カメラ位置調整ステージ108などと接続して制御するようにしてもよい。又、ハロゲン照明や発光ダイオード照明などで構成された照明装置を撮影のために併設してもよいし、外部記憶装置を記憶領域拡大のために接続してもよい。上記の各部は、画像処理装置101の内部バス上に配置されたインターフェース303を介して接続される。各インターフェース303は上記各部を通信するのに適した規格に基づき構成される。例えば、ネットワークインターフェース、シリアル通信インターフェースなどから構成される。
画像処理装置101は、画像処理の主体となる制御装置として、汎用マイクロプロセッサとして構成されたコンピュータとしてのCPUや、画像処理プロセッサなどにより構成された演算手段304を有する。演算手段304は内部バス(データバス、アドレスバス、他の制御線など)を介して、記憶手段305と接続される。記憶手段305は、例えばROMやRAM、あるいはE(E)PROMなどの不揮発メモリデバイスなどで構成される。或いは、外部記憶装置(不図示のHDDや半導体素子で構成された記憶装置、あるいはインターフェース303と接続することができる外部記憶装置など)などによって構成することもできる。
又、記憶手段305のデータ保存領域306は、記憶手段305中のRAM領域や、外部記憶装置のファイル領域や仮想記憶領域などによって構成される。データ保存領域306は、処理データを一時記憶させる他、画像処理の設定パラメータなどの記憶に用いられる。更に、記憶手段305には、本実施例の画像処理を実施するためのコンピュータプログラムとしての画像処理プログラム307を記憶させておく。
画像処理プログラム307は、操作入力装置302などによって行われた各種操作に応じて、画像処理の設定などを変更したり、画像処理を実行したりする。又、変更内容について、データ保存領域306に保存したり削除したりすることができる。又、インターフェース303を介して外部の制御装置とデータの送信や受信をしたり、外部記憶手段などを接続して外部記憶手段にデータを記憶したり、外部記憶手段からデータを入力したりすることができる。
画像処理プログラム307は、例えば次のような機能を実現するソフトウェアから構成される。まず、画像処理308は後述の画像処理を実現する画像処理プログラムの本体部分である。画像処理308には、画像処理ライブラリ309が用いられる。画像処理ライブラリ309は、例えば静的ないし動的にリンクされるライブラリとして記憶手段305に実装される。画像処理308の振舞いを決定する画像処理設定310は、操作入力装置302などによって行われた各種操作に応じて設定を行う。
更に、画像処理プログラム307には、次のような機能を実現するI/O(入出力)ルーチンが含まれる。すなわち、I/Oルーチンは外部デバイス制御311、保存データ生成312、外部の制御装置などからの指令受付313、RAM領域や、演算手段304のキャッシュ領域などに一時記憶する一時記憶処理314を含む。更に、表示画面生成315、保存データ出力316、操作入力装置302からの操作受付317などを含む。上記の各機能は、アプリケーション(ユーティリティ)プログラムや、あるいは静的ないし動的にリンクされるライブラリとして構成されたサブルーチン、といった形態で記憶手段305に実装される。
画像処理装置101は、画像処理プログラム307を実行することにより、例えばカメラ106を制御したり、画像処理装置の演算手段を利用して画像処理を実行したりすることができる。又、操作入力装置302よりユーザ操作を受け付けたり、外部の制御装置などから指示を受け付けたりすることができる。
これらの操作や指示に応じて、演算手段304は画像処理プログラム307の各機能やライブラリを呼び出し、演算処理を行い、画像処理結果をシステム制御装置102に送信することができる。又、画像処理結果を外部記憶装置に蓄積(ロギング)したりしても良い。更に、プログラムに予め記憶されている画面構成と画像処理の結果を画面として合成し、入出力表示装置301に表示することもできる。
図4は実施例に係る画像処理プログラム307を作成するためのフローチャート作成画面を表す図である。画像処理装置101はここで作成されるフローチャートを実行することによって、図2のシステム制御における画像処理を行うためのステップS203を実現する。又、図4の画面は入出力表示装置301に表示することができる。本実施例に係る画像処理プログラム307は、ユーザが画像処理装置101を用いて作成したフローチャートに従って動作するものとする。
他の実施例として、図1に示していない画像処理プログラム作成装置で画像処理プログラム307を作成したのち、画像処理装置101の記憶手段305にコピーする形態であってもよい。或いは、予め機能別や目的別に定型で用意された組合せ済みの画像処理フローチャートを内包したパッケージ機能をユーザがGUI上で選択したり、パラメータを調整したりするような形態などで提供してもよい。
図4において、401はフローチャートの各処理パーツのリストである。ユーザは操作入力装置302のマウスを用いてリスト401からパーツをフローチャート領域402にドラッグ&ドロップし、パーツ間を線で結合してフローチャートを作成する。
403は画像処理フローチャートの一例である。ここではシステム制御の動作フローのうち、画像処理203の内部処理を例として説明する。
403は画像処理フローチャートの一例である。ここではシステム制御の動作フローのうち、画像処理203の内部処理を例として説明する。
ステップS404で画像処理装置101はシステム制御装置102より画像処理依頼を受け付ける。このとき画像処理のフローチャートを指定したり、実行のための画像処理パラメータや利用する画像データの時刻を指定したりしてもよい。
ステップS405の画像データ取得処理で、画像処理装置101はカメラ106で撮像された対象物としてのワークの画像データを取得する。このほか、カメラ内に蓄積された録画データから処理用画像を取得したりしてもよい。取得するデータは例えば蓄積された録画データのうち、最新の画像データでもよいし、システム制御装置から指定された計測時刻の画像データでもよい。
ステップS405の画像データ取得処理で、画像処理装置101はカメラ106で撮像された対象物としてのワークの画像データを取得する。このほか、カメラ内に蓄積された録画データから処理用画像を取得したりしてもよい。取得するデータは例えば蓄積された録画データのうち、最新の画像データでもよいし、システム制御装置から指定された計測時刻の画像データでもよい。
ステップS406で、作成したフローチャートは取得した画像データに対してワークの有り無し検査(探索)を行う。有り無し検査の方法は、例えば画像処理ライブラリ309から取得され、例えば輝度情報や色情報を用いてワークを抽出したあと、そのワークの面積が所定値以上か否かで判別してもよい。或いは、濃淡分布や輝度勾配の形状特徴情報を用いたパターンマッチングで計算してもよいし、輝度勾配が一定以上の画素をエッジ情報として抽出し、その位置や重心、傾きなどを用いて検査したりしてもよい。
ステップS407ではワークの有り無し判定をおこなう。ステップS406における検査結果によりワークが存在しない(NO)と判断された場合には、その結果をステップS409で記録し、ステップS410でシステム制御装置102に返信する。ステップS407でワークが有り(YES)と判断された場合には、ステップS408に進む。
ステップS408では、ワークの位置と位相計測を行う。ワークの位置や位相を計測する方法としては、予め記録媒体に記録保存された、ワークの濃淡分布の局所パターン画像などの計測用特徴情報を読出すことで取得し、入力画像から前記計測用特徴情報と相関係数が強い位置や位相を探索したりしても良い。或いは、画像から、ワークの輝度勾配の形状などの特徴情報を抽出し、その形状特徴情報に基づき、対象物の位置姿勢を計測するための計測用特徴情報を生成する手段を設けても良い。そしてその計測用特徴情報を用いて入力画像上で相関係数が強い位置や位相を探索したりしても良い。
結果記録のためのステップS409ではステップS404~408などで実施された実行結果及び判定結果などのデータを記録する。処理依頼の受付のためのステップS404での開始時刻や何らかの実行オプションの内容も記憶してもよい。更に、画像取得のためのステップS405で取得した画像データや、画像の撮影時刻及び画像サイズや撮影パラメータ、カメラ情報などをメタデータとして記憶してもよい。又、ステップS406における検査によって得られたワークの抽出面積情報や、検査に用いた濃淡情報や勾配情報、色情報などを記憶してもよい。ステップS406の実行結果として、ワークの検出位置や検出位相、相関値などを記録してもよい。
このように作成されたフローチャートの実行結果は、画像処理装置101で一時記憶処理314したりデータ保存領域306に記憶する。又、必要に応じて参照したり、削除したり、インターフェース303を介して送信や受信したり、外部記憶手段などを接続して記憶したり、入力したりすることができる。ステップS410ではステップS409の結果あるいはその一部を出力してフローチャートを終了する。ステップS409からの結果を出力する際には、システム制御装置102に送信するほか、画像処理装置のデータ保存領域306に記憶したり、入出力表示装置301に出力して表示したりしてもよい。
又、ユーザがボタン411をクリックすると、画像処理装置101はフローチャート領域402に表示されたフローチャートを実行するための画像処理プログラム307を作成することができる。更に、ユーザはリストボックス412に新しいフローチャート名を入力することで、本システムに新しいフローチャートを追加することができる。又、ユーザはリストボックス412を用いて、フローチャート領域402に表示するフローチャートを選択することもできる。ボタン413をクリックすると画像処理プログラム作成を終了してフローチャート領域402を閉じる。
尚、ユーザが画像処理フローチャート403のパーツである各ステップのいずれかをダブルクリックすると、そのパーツの詳細な処理を設定するための設定画面に遷移することができる。ここでは図5を用いて位置位相計測のためのステップS408の設定画面を例に、位置位相計測機能を実現するための特徴パターンの登録方法を説明する。
又、併せてユーザが最初(1つ目)のシステムの設置をした後で、2つ目以降の同等のシステムの設置をする場合や、最初のシステムの設置後に、カメラの設置状態を変更する場合等にその設置動作を支援するための支援データを生成する方法について説明する。
又、併せてユーザが最初(1つ目)のシステムの設置をした後で、2つ目以降の同等のシステムの設置をする場合や、最初のシステムの設置後に、カメラの設置状態を変更する場合等にその設置動作を支援するための支援データを生成する方法について説明する。
図5は実施例に係る探索パターンの登録画面を説明する図であり、図5を用いて、ワークの位置位相計測ステップ(パーツ)であるステップS408について、画像処理の設定を行うユーザインターフェースを説明する。
位置位相計測ステップS408では、対象物としてのワークの濃淡分布の局所パターン画像などを用いて入力画像上で相関係数が強い位置や位相を探索したり、ワークの輝度勾配の形状特徴情報を抽出する。そして、それらの特徴情報を用いて入力画像上で相関係数が強い位置や位相を探索したりする。図5の画面では探索のためのパターン画像(計測用特徴情報)を登録するためのGUIについて説明する。
位置位相計測ステップS408では、対象物としてのワークの濃淡分布の局所パターン画像などを用いて入力画像上で相関係数が強い位置や位相を探索したり、ワークの輝度勾配の形状特徴情報を抽出する。そして、それらの特徴情報を用いて入力画像上で相関係数が強い位置や位相を探索したりする。図5の画面では探索のためのパターン画像(計測用特徴情報)を登録するためのGUIについて説明する。
図5において、502は設定に用いる「設定用画像」(画像処理を設定するための基準とする画像)の入力候補を選択するプルダウンメニューのボタンである。図5では、「使用カメラ」としてカメラ106が選択されているので「設定用画像」として「カメラ画像」と表示されており、ユーザがボタン502をクリックすると、カメラ106の撮影画像が「カメラ画像」として表示される。他には画像処理装置101のデータ保存領域306に予め保存しておいた画像のファイル名がリスト形式で選択肢として表示され、それをユーザに選択させるようにしてもよい。ユーザがこのリストから文字列を選択すると、選択された画像が設定用画像として登録される。
図5では「使用カメラ」として「カメラ106」を選択し、「設定用画像」として「カメラ画像」を選択しているので、カメラ106の撮影画像を設定用の画像として用いる。ボタン502をクリックすると、画像を取得する画像取得ステップが実行され、画像表示領域503にカメラ106の撮影画像(カメラ画像)が設定用画像として表示される。
次に、ユーザは探索パターン(計測用特徴情報)を設定するための領域である、探索パターン設定領域504を設定する。設定のためには、まず領域形状をボタン505により選択する。
次に、ユーザは探索パターン(計測用特徴情報)を設定するための領域である、探索パターン設定領域504を設定する。設定のためには、まず領域形状をボタン505により選択する。
領域形状としては、矩形、円、楕円、円環などの形状をプルダウンメニューからボタン505で選択できる。又、これらの形状の組み合わせによる領域加算や領域除外などをしても良い。又、マウスなどの操作入力装置302を使用して自由な形状を設定してもよい。本実施例では、例として、矩形の探索パターン設定領域504を設定する場合について説明する。
矩形領域の設定項目506としては、矩形の左上のx座標/y座標、右下のx座標/y座標を設定する。ここでは撮影画像の左上を原点とし、水平方向をx軸、垂直方向をy軸とする画像座標系を用いる。領域の設定項目506の指定方法としては、数値を直接入力する方法のほか、カウントアップ/カウントダウンのボタンを設けて、それらをクリックすることで調整するなどの機能を設けてもよい。
この時、探索パターン設定領域504が画像表示領域503に重畳表示され、随時更新して表示される。これにより、ユーザは画像表示領域503で設定用の画像を確認しながら、探索パターン設定領域504を設定することができる。ここで図5のGUIを用いた上記の設定ステップは、抽出された前記特徴情報に基づいて対象物の位置姿勢を計測するための計測用特徴情報を生成する第2の生成手段(第2の生成ステップ)として機能している。
次に探索パターン設定領域504を用いた探索方法を設定する手順について説明する。
ここでは、探索方法507を用いて、例えば「形状特徴」を探索方法として選択することとする。「形状特徴」に基づく探索方法とは、ワークの輝度勾配の形状特徴情報を抽出し、その特徴情報を用いて入力画像上で探索パターン設定領域504と相関係数が強い位置や位相を探索する方法である。
ここでは、探索方法507を用いて、例えば「形状特徴」を探索方法として選択することとする。「形状特徴」に基づく探索方法とは、ワークの輝度勾配の形状特徴情報を抽出し、その特徴情報を用いて入力画像上で探索パターン設定領域504と相関係数が強い位置や位相を探索する方法である。
探索方法としては、その他に、「正規化相関」、「マッチング」等の少なくとも1つを選択できるものとする。ここで「正規化相関」とは、ワークの濃淡分布の局所パターン情報などを正規化し、探索パターン設定領域504と相関係数が強い位置や位相を探索したりする方法である。又、「マッチング」とは、例えばカメラ106がワークの3次元情報を取得できるような場合には3次元形状をモデルとして抽出し、それを3次元空間内で探索し、相互距離を最小化する方法である。尚、撮像手段としてのカメラの機種等のタイプに基づき上記の「形状特徴」、「正規化相関」、「マッチング」等の探索方法の少なくとも1つを選択可能としても良い。
又、図5の例では探索方法として、「形状特徴」を選択し、探索パターン設定領域504とワークの相関値がある一定の閾値を超えた場合に検出できたと判定することとする。例えば予め指定された検出閾値508で設定された数値を超えた場合に検出できたと判定する。
このほか探索パターン設定領域504を、特定の拡大縮小範囲509や透視歪み(アオリ歪)範囲510で変形可能として、画像中でワークを探索し、閾値の範囲に収まっているワークを検出したりしてもよい。図5の例では拡大縮小範囲509は0.9倍~1.1倍に設定されているので、設定された探索パターンと比較して1割以内の大きさの違いを許容して画像中より類似するワークを検出することができる。
これによりワークとの距離が不定であったり、ワーク自体の個体差がある場合においても、ロバストなワーク検出を行える。又、透視歪み範囲510は±5°の範囲に設定されているので、設定された探索パターンと比較して±5°のアオリ(水平軸中心回転、垂直軸中心回転あるいは画像中心回転等)を許容して画像中より類似するワークを検出することができる。これにより、ワークが傾いているような場合でもロバストなワーク検出を行うことができる。
505~510による設定を終了後、テスト実行ボタン511をクリックすると、「使用カメラ」で選択されたカメラ106を使用して撮影を行い、取得した画像に対してワークの位置位相計測が行い、ワークの位置や位相計測結果を確認可能となる。
図12は、図5において、テスト実行ボタン511をクリックした時のワークの位置位相計測結果の確認画面である。探索パターン設定領域504で設定された探索パターンを用いて503の画像中で類似する特徴情報が検出され、その結果を表示した例を示している。
図12は、図5において、テスト実行ボタン511をクリックした時のワークの位置位相計測結果の確認画面である。探索パターン設定領域504で設定された探索パターンを用いて503の画像中で類似する特徴情報が検出され、その結果を表示した例を示している。
1201~1206は探索パターンに類似した形状特徴が検出されたワークを強調表示している。ここでは類似度(相関)が高い順にIDを付与することとしているが、検出座標の昇順降順などでも構わないし、検出された順番などに基づいてIDを付与しても構わない。1207は探索パターンに類似した形状特徴が検出されたワークの個数を表示している。
1208は検出されたワークにそれぞれ付与されたIDを選択するためのウインドウであり、選択されたIDについて詳細な検出情報を表示するために用いる。1209は1208で選択されたIDに関する詳細な検出情報を表示するウインドウである。図12では検出されたワーク1201のIDとしてウインドウ1208で「1」が選択されているので、探索方法として「形状特徴」に基づき探索されたことや、スコアとしての相関値が0.99、位置や回転位相の差もほぼ0であるという結果が表示されている。
この状態でキャンセルボタン513をクリックすると、上記で設定した設定や、設定変更部分が破棄される。
一方、OKボタン512をクリックすると、上記で設定した探索パターン設定領域504の設定や、位置位相計測にかかわる505~510の設定、図12に示す検出結果などをデータ保存領域306に画像処理プログラム307などと紐付けて保存する。これらの情報はプログラム実行時や画像処理設定画面に遷移する際に読み込まれる。
一方、OKボタン512をクリックすると、上記で設定した探索パターン設定領域504の設定や、位置位相計測にかかわる505~510の設定、図12に示す検出結果などをデータ保存領域306に画像処理プログラム307などと紐付けて保存する。これらの情報はプログラム実行時や画像処理設定画面に遷移する際に読み込まれる。
尚、OKボタン512をクリックする際に、カメラ設置支援情報保存ボタン514にチェックが入っていた場合にはカメラ設置を支援するための設置用支援情報を生成する処理が実行され、その処理結果も画像処理プログラム307に紐付けて保存される。これについて以下に説明する。
図6は実施例に係るカメラ設置支援情報(設置用支援情報)の生成手順を表すフローチャートである。尚図6に示す手順は、図5のカメラ設置支援情報保存ボタン514にチェックが入っている状態でOKボタン512をクリックした場合に、画像処理装置101の演算手段304によって実行されるフローを示している。
尚、図6に示すフローは、カメラ画像が入力されたときや探索パターン設定領域504の調整中にバックグラウンドで行ってもよい。そうすることで、輪郭抽出や濃淡計算、正規化等の前処理を並行して行うことができるので、ユーザの操作待機時間を削減してスムーズにカメラ設置支援情報を生成することができる。
画像処理装置101の演算手段304は、ステップS601でフローを開始し、ステップS602で周辺特徴を抽出する。ステップS602では、カメラ入力画像のうち、探索パターンが設定された探索パターン設定領域504の周辺領域に対して、形状特徴に対応する特徴情報を抽出する。周辺領域に対して特徴情報の抽出を行うのは、カメラの設置を行うための情報としてはワークそのものだけではなく、その周辺環境を含めた特徴を用いた方がより精度が高くなる可能性が高いからである。
周辺領域の範囲は演算手段304の能力や時間に余裕がある場合は探索パターン設定領域504を含む領域、例えば画像表示領域503全体に対して抽出してもよい。又、予め定められた画素数の範囲内で抽出してもよい。
即ち、設置支援用特徴情報を生成するのに用いられる特徴情報は、画像のうちの第1の領域から抽出され、計測用特徴情報を生成するのに用いられる特徴情報は、画像のうちの第1の領域とは異なる第2の領域から抽出される。又、第1の領域は、前記第2の領域よりも広いことが望ましい。
即ち、設置支援用特徴情報を生成するのに用いられる特徴情報は、画像のうちの第1の領域から抽出され、計測用特徴情報を生成するのに用いられる特徴情報は、画像のうちの第1の領域とは異なる第2の領域から抽出される。又、第1の領域は、前記第2の領域よりも広いことが望ましい。
更に、探索パターン設定領域504を含まない周辺領域から特徴量を抽出してもよい。ここで、ステップS602は、例えば画像から対象物やその周辺の特徴情報を抽出する特徴情報抽出手段(特徴情報抽出ステップ)として機能している。
又、周辺の一定範囲内に特徴が見つかった場合は特徴抽出領域を広げながら、近傍に特徴が見つかるまで領域を広げるようにしてもよい。
図7は実施例に係るカメラ設置支援のための特徴情報を表す図であり、701は探索パターンが設定された画像全体に対して、抽出された形状特徴(特徴情報)の例を示している。
又、周辺の一定範囲内に特徴が見つかった場合は特徴抽出領域を広げながら、近傍に特徴が見つかるまで領域を広げるようにしてもよい。
図7は実施例に係るカメラ設置支援のための特徴情報を表す図であり、701は探索パターンが設定された画像全体に対して、抽出された形状特徴(特徴情報)の例を示している。
次に図6のステップS603において、抽出された特徴701を分離する。分離方法は位置や形状、勾配強度、濃淡平均、濃淡偏差等様々な情報に基づくことが考えられ、それらの選択肢をGUIや設定ファイルで選択できるようにしてもよい。ここでは簡単に抽出された特徴701の連結性(連続性)に基づいて分離を行うこととする。例えば702の「特徴情報」の列は特徴701を連結性に基づいて分離した結果である。
ステップS604は、分離された特徴701の評価を行う。評価指標はカメラの位置、すなわちカメラとワークの相対位置を調整する際に寄与するような情報を用いる。例えば特徴形状の大きさや、濃淡偏差の大きさ、ワークのモデルを作成した画像上の探索パターン設定領域504からの距離情報など、様々な情報に基づくことが考えられ、それらの様々な情報の選択をGUIや設定ファイルで行えるようにしてもよい。ここでステップS604は、抽出手段によって抽出された特徴情報を評価する評価手段として機能している。
ここでは前記情報として、分離された特徴701の画像上でのサイズに基づいて評価順位(優先順位)を決定することとする。即ち、分離された特徴701について、ステップS604でそれらのサイズを評価し、そのあとステップS605で特徴をサイズに基づきソートを行いカメラ調整支援に優先的に用いる順番を決定する。それによって評価に応じて優先順位付けされた設置支援用特徴情報を生成している。
ここで、ステップS605は抽出された特徴情報に基づいて撮像手段の設置を支援するための設置支援用特徴情報を生成する第1の生成手段(第1の生成ステップ)として機能している。
702は特徴情報を連結性に基づいて分離し、サイズ情報を評価指標としてソートすることによって生成された設置支援用特徴情報のイメージ図である。702におけるIDは優先度順に振られている。
702は特徴情報を連結性に基づいて分離し、サイズ情報を評価指標としてソートすることによって生成された設置支援用特徴情報のイメージ図である。702におけるIDは優先度順に振られている。
ステップS606は生成された設置支援用特徴情報を保存する処理である。即ち、上記で設定した探索パターン設定領域504の設定や、位置位相計測にかかわる505~510の設定などの探索情報を保存する。更に、OKボタン512をクリックすることによってステップS602~605で抽出、計算された設置用支援情報などの探索情報も画像処理装置101のデータ保存領域306などに画像処理プログラム307などと紐付けて保存する。その後ステップS607でフローを終了する。
尚、上記設置用支援情報は、701や702に示されるような特徴情報や、各特徴情報のサイズ、位置、位相、強度勾配情報、色情報、評価値、カメラ設置支援に用いる優先順位及び503に表示された原画像等を含む。又、上記設置用支援情報は対象物を探索するための探索情報として使われる。
又、上記のような設定情報や設置用支援情報は、一時記憶処理314やデータ保存領域306に記憶するとともに、インターフェース303を介して外部と送受信しても良い。又、外部記憶装置等を接続して記憶したり、外部記憶装置から入力したりしても良い。
又、上記のような設定情報や設置用支援情報は、一時記憶処理314やデータ保存領域306に記憶するとともに、インターフェース303を介して外部と送受信しても良い。又、外部記憶装置等を接続して記憶したり、外部記憶装置から入力したりしても良い。
次に、図8~図13を用いて、設置用支援情報と、カメラの撮影画像及び画像処理を用いて図1の生産システム同等のシステムを複製したり、同一の生産システムにおける2回目以降のカメラの設置を支援したりする方法を説明する。尚、カメラの設置位置や姿勢の再現性を評価し、その評価結果を出力したり、更に同等の画像処理結果を出力したりすることで支援を行う。
図8は実施例に係る複製システムの全体構成図であり、図1の生産システムの複製システムを示している。
図8における801~810は図1における101~110と同様の構成であり説明を省略する。又、図8におけるシステムの制御も図2と同様の動作フローを実行する。尚、806は対象物の画像を取得する第2の撮像手段として機能している。
図8における801~810は図1における101~110と同様の構成であり説明を省略する。又、図8におけるシステムの制御も図2と同様の動作フローを実行する。尚、806は対象物の画像を取得する第2の撮像手段として機能している。
又、画像処理装置の内部構成や動作フローチャート作成画面の仕様、探索パターンの登録方法などは図3~図5と同様の構成である。そして、図1の生産システムで設定された各種設定情報や設置用支援情報などの探索情報はインターフェース303を介して外部記憶手段などを接続して保存されているものとする。
この状態で、図8の複製システムにおける801~810の物理的な配置や特性等が図1の生産システムと同等の特性、精度で再現されていれば、画像処理装置801の画像処理において、図4のフローチャート403と同様の処理を実行できる。更には、その画像処理フローを含む図2のフローも同様に実行できるので、図1と同等の動作性能をもつ生産システム(搬送システム)を容易に複製(増設)できることになる。
しかし、実際には、生産システム(搬送システム)を複製する際にシステムの設計図通りに配置や装置製作を行ったとしても、各組み立て工程において組み立て誤差が生じたり、あるいは装置や部材ごとに個体差が存在したりする。そのため、システム全体ではそれらの誤差が積算され、複製したシステムにおいて、組みあがった直後に同様のシステム動作を再現するのは極めて困難である。従って、システムを組み立てた後に、装置や部材ごとに目的とするシステム動作を再現するための試行錯誤を伴う多くの調整作業や動作確認作業が必要となる。
図9は図8の複製システムにおける探索パターンの登録画面を示す図である。画面の各構成要素である502~513は図5の502~512と同じであるので説明を省略する。尚、画像処理装置の各種設定データは、最初のシステム設定時に保存した、画像処理フローチャート403の各処理ブロックに設定され保存された処理パラメータを読み込むことで再現している。
又、探索パターン設定領域504の設定や、位置位相計測にかかわる505~510のパラメータ設定、即ち、対象物の位置姿勢を計測するための計測用特徴情報等が、探索情報として保存されたデータを読出すことなどによって取得される。
そして、画像処理装置801は、カメラにより得られた画像から上記の計測用特徴情報を探索して前記ワークの位置姿勢を計測する。更に計測結果としての前記対象物の位置姿勢に基づき前記ロボット804で前記対象物を把持し、搬送装置805等の所定位置に搬送したり所定の加工をするなどの所定の処理を実行することで所望の物品を製造する。
そして、画像処理装置801は、カメラにより得られた画像から上記の計測用特徴情報を探索して前記ワークの位置姿勢を計測する。更に計測結果としての前記対象物の位置姿勢に基づき前記ロボット804で前記対象物を把持し、搬送装置805等の所定位置に搬送したり所定の加工をするなどの所定の処理を実行することで所望の物品を製造する。
ただし、この時、複製システムにおけるカメラ806は、例えばカメラ806とワーク810、あるいはワーク810が設置されたトレイ809や搬入装置803との相対位置関係が物理的に精度よく再現されていない可能性が高い。そのため、図9のように、探索パターン設定領域504と、ワーク810の位置が一致していない。従って、図9の状態のままでは適切な設定が行われず、画像処理フローチャート403に示されるようなパターン探索(位置位相計測)及び画像処理やシステムを実行しても所望の動作が再現できない。
このような場合、システム設置者はカメラの調整ステージ808などを利用してカメラ806の位置や姿勢を調整したり、場合によっては架台807や搬入装置803などの配置なども調整したりして所望の画像計測が実施できるように調整する必要がある。又、調整を行う際にもカメラと、各種周辺装置(ロボット、搬送装置、作業台など)の相対的な位置関係を調整しながら、カメラの撮影画像、画像処理装置の動作確認、システムの動作確認などを何度も繰り返さなければならない。そのため、要求される処理速度や精度、信頼性を確保するため膨大な手間と時間がかかる。
これに対して本実施例ではこのような撮像装置の設置作業の大幅な効率化を実現することができる。
図10は実施例に係るカメラ設置支援画面を説明する図であり、図11は実施例に係るカメラ設置支援処理を説明するフローチャートである。
以下、図10、図11を用いて、本実施例におけるカメラの設置位置調整を支援するプログラムの動作について説明する。
図10は実施例に係るカメラ設置支援画面を説明する図であり、図11は実施例に係るカメラ設置支援処理を説明するフローチャートである。
以下、図10、図11を用いて、本実施例におけるカメラの設置位置調整を支援するプログラムの動作について説明する。
1001はカメラ設置を支援する画面であり、図9に示す501のような設定画面上にカメラ設置支援処理プログラムの起動ボタンを設け、画像処理の設定がうまいくいかない場合等に起動するようにしたりしてもよい。又、図4に示すフローチャート領域402のような画像処理のフローチャートを作成する画面上にカメラ設置支援処理プログラムの起動ボタンを設け、図4における各画像処理の設定前にカメラの設置位置の調整や設置状態の確認を行ったりしてもよい。
1002は設置支援対象の画像の入力候補を選択するボタンで、ここではカメラ画像としているが、カメラで予め撮影された記憶画像などを読み込んだりしてもよい。
1003は設置支援対象のカメラを指定するボタンであり、ここではカメラ806が選択されている。複数のカメラが接続されているような画像処理システムでは、カメラが複数選択できるようにしておき、選択されたカメラに応じて、カメラ設置を支援するための情報源(図7で予め保存される情報)を切り替えたりしてもよい。
1003は設置支援対象のカメラを指定するボタンであり、ここではカメラ806が選択されている。複数のカメラが接続されているような画像処理システムでは、カメラが複数選択できるようにしておき、選択されたカメラに応じて、カメラ設置を支援するための情報源(図7で予め保存される情報)を切り替えたりしてもよい。
1004はカメラ806の入力画像及び、カメラ設置を支援するための情報を重畳表示するための表示領域である。
1005はカメラ設置支援処理を実行するかどうかのチェックボックスであり、チェックされている際にはカメラ設置支援処理を行う。例えばカメラ設置支援のための画像処理の演算負荷が大きく、ほかの画像処理や作業に支障をきたすような場合には、カメラ設置調整を行う際にだけこのチェックをオンにすればよい。カメラ設置支援処理の内容については図11のフローチャートを用いて詳述する。
1005はカメラ設置支援処理を実行するかどうかのチェックボックスであり、チェックされている際にはカメラ設置支援処理を行う。例えばカメラ設置支援のための画像処理の演算負荷が大きく、ほかの画像処理や作業に支障をきたすような場合には、カメラ設置調整を行う際にだけこのチェックをオンにすればよい。カメラ設置支援処理の内容については図11のフローチャートを用いて詳述する。
1006はカメラ設置支援処理に利用するための利用特徴IDを選択するためのボタンである。即ち、1006は、画像に基づき探索情報を設定する設定手段として機能しており、評価手段による評価の結果(優先順位)に基づき所定の特徴情報を探索情報として設定可能である。
ここで、利用特徴IDとは、図7に示した702などで説明したように、特定の評価値が付与された特徴情報と紐付くID番号である。
1007は利用特徴ID1に対応した設置支援用特徴情報を入力画像上で探索した結果を示しており、入力画像に重畳して表示している。
1007は利用特徴ID1に対応した設置支援用特徴情報を入力画像上で探索した結果を示しており、入力画像に重畳して表示している。
1008は設置支援用特徴情報が入力画像上で探索された結果を数値等で示したものである。本実施例では、図5の507で示したように、位置位相を計測するための画像処理として形状特徴情報を用いているので、それに合わせてカメラ設置支援のための設置支援用特徴情報も形状特徴が選択されている。しかし、設置支援用特徴情報については局所の濃淡情報などを用いてもよいし、カメラが3次元形状を取得可能な撮像素子やステレオカメラなどを用いた場合には、3次元形状情報を用いたりしても構わない。
又、1008には形状特徴情報を用いて画像探索を行った結果として、探索スコア(類似度、相関値)や、最も一致した際の拡縮倍率、水平方向位置、垂直方向位置、各軸方向回転値などを表示している。この数値を参照しながらユーザがカメラの位置を調整する。一般的には、予め保存されたカメラ設置支援のための特徴情報と最大限一致するように、すなわち探索スコアはできるだけ高く、拡縮倍率は1.0にできるだけ近く、各軸方向のずれ量は0に近く調整するのが望ましい。
尚、本実施例では探索スコア、倍率、各軸方向のずれ量を参照しながら調整できるようにしているが、これら3つの情報の内の少なくとも1つを表示し、それを参照しながら調整するようにしても良い。
1009は入力画像の軸を定義するガイド情報であり、水平方向をX軸、垂直方向をY軸、画像結像面の奥行き方向をZ軸として定義しているが、軸方向は、利用するカメラや画像処理ライブラリの都合によって定めればよい。
1009は入力画像の軸を定義するガイド情報であり、水平方向をX軸、垂直方向をY軸、画像結像面の奥行き方向をZ軸として定義しているが、軸方向は、利用するカメラや画像処理ライブラリの都合によって定めればよい。
1010や1011はカメラ設置位置を支援するための視覚的な支援情報である。例えばX軸、Y軸方向のずれの方向や各軸中心の回転方向のずれの方向やそれらのずれ量については、それぞれ矢印の方向や矢印の長さ等で1010のように表示したり、目標となる元画像の特徴情報の位置を1011のように重畳表示したりしてもよい。これによりユーザは視覚的にもカメラ設置を調整するための支援情報を得ることができる。このように、探索結果に基づき撮像手段の調整方向と調整量の少なくとも1つを表示することで調整工程を短縮化することができる。
1012はカメラ設置を自動で行う設置自動調整プログラムを実行させるためのチェックボックスである。チェックボックス1012をチェックすることによって自動調整機能がオンになる。この機能は例えばカメラ806自身やカメラの調整ステージ808がパン(Pan)、チルト(Tilt)、位置調整、ズーム(Zoom)などの調整機構(調整手段)を備えている場合に用いることができる。尚、調整手段としてはン、チルト、ズームの少なくとも1つを調整することができればよい。
そしてこれらの調整機構を動作させながら、1008に示すような各種の数値が好適になるように自動調整を行う。尚、カメラ806自身やカメラの調整ステージ808に上記のような調整機能(調整機構)があるか否かを画像処理システムが自動的に検出し、前記調整機能があると判断した場合には、チェックボックス1012がチェックできるように表示しても良い。一方、調整機能がないと判断した場合には、チェックボックス1012をグレー表示したり非表示にしたりして、チェックできないようにしても良い。
調整する際は、調整機構の可動範囲の全域についてスキャンし、1008の探索スコア、倍率、各軸方向のずれ量等の数値の少なくとも一つが所定値以下となる方向を見つけるようにしても良い。又はこれらの数値の重み付け加算値が予め定めた値以下となる方向を見つけるようにしても良い。或いは、調整機構の調整量と、それらの調整に伴って変化する1008の各種数値などを用いて比例制御、あるいはPIDなどのフィードバック制御等をするようにしてもよい。
1015はカメラ設置支援を行う際に設定する特徴情報と探索結果の誤差の目標値であり、例えばここでは各軸方向の位置ずれ量が5ピクセル以内であれば合格(調整完了)としている。
1013は、1015の表示を参照しながら好適なカメラ調整が実施できた場合にカメラ設置調整支援を終了し本画面1001を閉じるためのOKボタンである。
1013は、1015の表示を参照しながら好適なカメラ調整が実施できた場合にカメラ設置調整支援を終了し本画面1001を閉じるためのOKボタンである。
自動調整の場合には、1015のような目標値に収束したら自動でボタン1013がONされるようにしてもよいし、手動調整の場合には、ユーザが1015の目標値内に収束したことを確認してボタン1013をONして終了してもよい。終了する際には、その時の利用特徴IDや、カメラ画像、使用カメラに関する情報、各種数値情報(設置支援情報)1008などを一緒に記録してもよい。
1014は予め用意しておいた特徴情報や探索条件などを用いても、好適なカメラ調整ができなかった場合にカメラ設置調整支援を終了し本画面1001を閉じるためのキャンセルボタンである。
次に図11は前述のように、実施例に係るカメラ設置支援処理を説明するフローチャートであり、画像処理システム内のコンピュータがメモリに記憶されたコンピュータプログラムを実行することで図11の各ステップの処理が実行される。
次に図11は前述のように、実施例に係るカメラ設置支援処理を説明するフローチャートであり、画像処理システム内のコンピュータがメモリに記憶されたコンピュータプログラムを実行することで図11の各ステップの処理が実行される。
図11において、ステップS1101で、カメラ設置支援処理を開始する。開始のタイミングは図10に示す例では1005のカメラ設置支援処理のチェックボックスをクリックしたタイミングとする。しかし、その他、1001の支援画面が開いたタイミングなどを開始のタイミングにしても構わない。
ステップS1102は探索に利用する特徴情報を読み込む。図10では利用特徴IDとしてID1がボタン1006で選択されているので、図7の702に示されるように、最もサイズの大きいID1の特徴情報等を設置支援用特徴情報として読み込む。即ち、ステップS1102は、撮像手段の設置を支援するための設置支援用特徴情報を取得する情報取得手段(情報取得ステップ)として機能している。
ステップS1103において、処理対象の画像入力を行う。即ち、カメラ806や記憶装置より処理対象の画像を入力する。
ステップS1104は入力画像の特徴抽出処理であり、カメラ等から入力された画像から、探索処理のための特徴情報を抽出する。ここでは探索方法として、「形状特徴」が選択されているので画像の輝度勾配情報等を用いて形状特徴情報を抽出する。
ステップS1104は入力画像の特徴抽出処理であり、カメラ等から入力された画像から、探索処理のための特徴情報を抽出する。ここでは探索方法として、「形状特徴」が選択されているので画像の輝度勾配情報等を用いて形状特徴情報を抽出する。
ステップS1105は特徴情報の探索処理であり、ステップS1104で抽出された特徴情報に基づき、ステップS1102で読み込まれた設置支援用特徴情報と相関係数が強い特徴情報の位置や位相や拡大縮小倍率などを探索する。即ち、ステップS1105は、撮像手段により得られた画像から、前記情報取得手段により取得された前記設置支援用特徴情報を探索する探索手段(探索ステップ)として機能している。探索の際には、図5の位置位相計測用の設定画面501で探索パターン設定領域504を登録した時と同様の、位置位相計測にかかわる505~510のパラメータ設定を用いても良い。
或いは、501と同様の設定画面あるいは設定ファイルを用いてパターンを探索したりしてもよい。尚前述のように探索手段は、設置支援用特徴情報に基づき、「形状特徴」、「正規化相関」、「マッチング」等の内の少なくとも1つの探索方法を用いて探索を行うようにしても良い。
このようにすることで、入力画像やワークや計測環境のばらつきが存在した場合にも、ロバストに特徴情報を探索することができる。即ち最初のシステムや環境が若干異なっている場合でも、特徴情報を検出し、カメラ位置を補正するための数値や支援情報を出力できる。
ステップS1106は結果出力処理である。
ステップS1106は結果出力処理である。
ステップS1105における探索結果を数値として図10の設置支援情報1008のように出力し表示する。この時、ステップS1105は、探索手段の探索結果を表示する表示手段として機能すると共に、探索手段による探索結果に基づき前記撮像手段の前記設置を支援する設置支援手段(設置支援ステップ)として機能している。
ステップS1107ではステップS1106で得られた探索結果を評価して、結果が好適(例えば設置支援情報1008が目標値1015の範囲内)であればYESとしてカメラ設置支援処理を終了する。もし評価が好適でなければNOとしてステップS1109へ進む。
ステップS1107ではステップS1106で得られた探索結果を評価して、結果が好適(例えば設置支援情報1008が目標値1015の範囲内)であればYESとしてカメラ設置支援処理を終了する。もし評価が好適でなければNOとしてステップS1109へ進む。
ステップS1109ではカメラ設置支援処理1005のチェックボックスがオンか確認し、オンであればYESとしてステップS1110へ進む。オフであればNOとしてステップS1108に進み、処理フローを終了する。
ステップS1110では、カメラ806やカメラの調整ステージ808にカメラの方向や位置やズームを調整できる調整機能があるか否かを検出し、前記調整機能がある場合に、カメラの設置自動調整のチェックボックス1012のチェックがオンか否かを判別する。
ステップS1110では、カメラ806やカメラの調整ステージ808にカメラの方向や位置やズームを調整できる調整機能があるか否かを検出し、前記調整機能がある場合に、カメラの設置自動調整のチェックボックス1012のチェックがオンか否かを判別する。
そしてステップS1110でYESであればカメラの位置自動調整ステップS1111に進み、オフであればNOとして手動位置調整ステップS1112に進む。
ステップS1111ではカメラの位置自動調整を行う。カメラ806やカメラの調整ステージ808にカメラのパン、チルト、ズームの少なくとも1つを調整する調整機能(調整機構)がある場合には、調整量を指示する。
ステップS1111ではカメラの位置自動調整を行う。カメラ806やカメラの調整ステージ808にカメラのパン、チルト、ズームの少なくとも1つを調整する調整機能(調整機構)がある場合には、調整量を指示する。
前述したように調整機構の可動範囲の全域についてスキャンする場合には、例えば指示値を適当な刻み値で変化させながら評価値を取得し評価値が所定値以下になった時点で調整を終了してもよい。或いは、最も良い評価値が得られるまで調整を続けるように制御してもよい。即ち、ステップS1111は、探索結果に基づき撮像手段の位置又は姿勢の調整を行う自動調整手段として機能し、パン、チルト、ズームの少なくとも1つを調整する。
ステップS1111でフィードバック制御などを用いる場合には、前回の評価値と指示値の関係から次回の指示値を決定し、評価値が所定値以下になった時点や、評価値が所定幅以内に収束した時点で調整を終了したりするようにしてもよい。ステップS1111で自動調整指示を行ったらステップS1103画像入力へ戻る。
ステップS1112ではカメラ位置を手動で調整する。例えばカメラの調整機構やステージの調整機構が手動の調整機構である場合や、自動調整機構の可動範囲外まで調整が必要な場合などに実施する。
ステップS1112ではカメラ位置を手動で調整する。例えばカメラの調整機構やステージの調整機構が手動の調整機構である場合や、自動調整機構の可動範囲外まで調整が必要な場合などに実施する。
尚、又、図11のフローチャートではカメラの調整(ステップS1111やステップS1112)の後に、画像入力ステップS1103を行っている。しかしステップS1103に進まずに、評価値が改善されたか否かを判別し、改善されなかった場合などには、探索のための利用特徴IDを別のIDに切り替えて読込ステップS1102を行ったりしてもよい。その場合、即ち特徴情報のサイズが小さくなるようにID番号を変更することが望ましい。
このようにすることで、複数のカメラ設置を支援する特徴情報切り替えて試しながらカメラの設置位置を調整することができるので、より好適なカメラ設置を行える。
このようにすることで、複数のカメラ設置を支援する特徴情報切り替えて試しながらカメラの設置位置を調整することができるので、より好適なカメラ設置を行える。
図13は画像計測結果の確認画面である。尚、図5、図9、図12において同じ符番は同じものを表すので説明は省略する。
2番目以降の(複製された)システムの画像処理装置801において、1番目のシステムの画像処理装置801と同様の画像処理をするために図4のフローチャート領域402を呼び出す。そしてフローチャート領域402内の位置位相計測の処理ユニットであるステップS408をクリックすることで図13の設定画面501を開くことができる。尚、図10の1001のようなカメラ設置支援画面において、設置の目標値1015が満足された時点で次のステップに自動遷移するように設定しても構わない。
2番目以降の(複製された)システムの画像処理装置801において、1番目のシステムの画像処理装置801と同様の画像処理をするために図4のフローチャート領域402を呼び出す。そしてフローチャート領域402内の位置位相計測の処理ユニットであるステップS408をクリックすることで図13の設定画面501を開くことができる。尚、図10の1001のようなカメラ設置支援画面において、設置の目標値1015が満足された時点で次のステップに自動遷移するように設定しても構わない。
図13において、503にはテスト実行ボタン511をクリックした時のワークの位置位相計測結果が表示されている。即ち、最初(1つ目)のシステムの画像処理装置101において設定された探索パターン設定領域504を用いて探索を行い、カメラ806の撮影画像中で類似する特徴情報を検出し、その結果を示している。
1301~1306は探索パターンに類似した形状特徴が検出されたワークを強調表示しており、図12と同様に探索スコア(類似度、相関)が高い順にIDを付与している。ワークは物理的な位置拘束が弱いトレイ809に配置されていることや、ワーク自体の個体差などの影響で、1303がもっともスコアが高くなり、ID1がつけられている。このときの検出情報1309によると、X~Z軸方向の回転ずれ量はほぼなく(カメラがトレイやワークと正対できている)、位置はトレイの場所を精度良く計測できていることなどがわかる。
このような結果確認表示をすることで、最初(1つ目)のシステムの画像処理結果と、2つ目以降のシステムもしくは同一システムの2回目以降のカメラ設置作業において同等の画像計測結果が得られていることを容易に確認することができる。もちろん、ここで出力された数値が好適な誤差範囲であるかはシステムの要求性能などによることは言うまでもない。
以上のように本実施例では、最初(1つ目)の搬送システムや生産システムにおいて調整されたカメラ及び画像処理装置を用いて、計測用の探索パターン(計測用特徴情報)を生成し、記録しておくことができる。
それと共に、2つ目以降の同等のシステムあるいは同一システムの2回目以降のカメラの設置を支援するための設置支援用特徴情報の生成、記憶、送信等ができる。従って、カメラを設置するための調整作業を大幅に削減することができる。
それと共に、2つ目以降の同等のシステムあるいは同一システムの2回目以降のカメラの設置を支援するための設置支援用特徴情報の生成、記憶、送信等ができる。従って、カメラを設置するための調整作業を大幅に削減することができる。
又、画像から特徴情報を探索するための、位置位相計測において、505~510などの探索パラメータを調整し設定できるようにしている。即ち、探索情報に基づき前記探索を行う際に、探索のためのパラメータを調整可能としているので、入力画像やワークや計測環境のばらつきがあった場合にも特徴情報をロバストに検出することができる。従って、カメラ設置を柔軟に支援することができる。
又、特徴情報として、例えば特徴形状の大きさや、濃淡偏差の大きさ、ワークのモデルを作成した画像上の探索パターン設定領域504からのずれ情報など、特徴情報の様々な情報を解析することができる。従って、生産システムの工程の特徴(例えば背景、ワークが流れてくる条件、装置の架台や配置など)に合わせてカメラ設置を行うための特徴情報を評価したり、評価値を出力したりしてユーザの判断を支援することができる。
そして、2つ目以降の同等システムあるいは同一システムの2回目以降のカメラ設置作業において、前述の設置支援用特徴情報や設定データを読み込んだり、受信したりする。そして、これらの設置支援用特徴情報を生成や設定データと、カメラの撮影画像及び画像処理を用いてカメラの設置位置や姿勢の再現性を評価し、その評価結果を出力したり、更に同等の画像処理結果を出力したりすることができる。それにより、ユーザはその評価結果(数値や支援表示など)すなわち再現性を確認しながらカメラ設置を行うことができるので、カメラの調整と、システムの動作確認のための試行錯誤を繰り返す必要がなくなり、調整ステップを大幅に削減することができる。
又、特徴情報の評価結果に基づいて、カメラ設置支援を行うための設置支援用特徴情報を選択し直すことができるので、当該システムの構成や画像処理工程の環境、背景情報などに応じた好適な特徴情報を選択しやすくなる。又、ユーザの試行錯誤を削減することができる。
又、カメラ自身やカメラの調整ステージがパン、チルト、ズームなどの調整機構を備えている場合には、ユーザがカメラ位置を手動調整する前に自動調整を試みることができ、調整作業を削減することができる。
又、カメラ自身やカメラの調整ステージがパン、チルト、ズームなどの調整機構を備えている場合には、ユーザがカメラ位置を手動調整する前に自動調整を試みることができ、調整作業を削減することができる。
更に、カメラ自身やカメラの調整ステージがパン、チルト、ズームなどの調整機構を備えている場合には、これらの調整機構を手動で動作させながら、カメラの配置を例えば図10の1008に示すような各種の数値が好適になるように調整することもできる。従って、ユーザによるカメラ位置や姿勢の手動の調整工程を短縮できる。
又、最初(1つ目)の生産システムの画像処理結果と、2つ目以降の複製された生産システムもしくは同一生産システムの2回目以降のカメラ設置作業において同等の画像計測結果が得られていることを容易に確認することができる。
更に、本実施例によれば、上記画像処理装置の前記計測手段の計測結果に基づき対象物を把持する把持手段を有する生産システムを効率よく複製することができる。
更に、本実施例によれば、上記画像処理装置の前記計測手段の計測結果に基づき対象物を把持する把持手段を有する生産システムを効率よく複製することができる。
又、画像処理装置の計測手段の計測結果に基づき対象物を把持する把持ステップと、把持ステップにより把持された対象物に所定の処理を施す処理ステップと、を有する物品の製造方法を効率よく複製できる。従って、最初(1つ目)の生産システムを複製した2つ目以降の生産システムもしくは同一生産システムの2回目以降のカメラ設置作業における調整作業工程を大幅に短縮することができ、生産(物品の製造)システムの複製効率を大幅に向上できる。
以上、本発明をその好適な実施例に基づいて詳述してきたが、本発明は上記実施例に限定されるものではなく、本発明の主旨に基づき種々の変形が可能であり、それらを本発明の範囲から除外するものではない。
尚、本実施例における制御の一部又は全部を上述した実施例の機能を実現するコンピュータプログラムをネットワーク又は各種記憶媒体を介して画像処理装置に供給するようにしてもよい。そしてその画像処理装置におけるコンピュータ(又はCPUやMPU等)がプログラムを読み出して実行するようにしてもよい。その場合、そのプログラム、及び該プログラムを記憶した記憶媒体は本発明を構成することとなる。
尚、本実施例における制御の一部又は全部を上述した実施例の機能を実現するコンピュータプログラムをネットワーク又は各種記憶媒体を介して画像処理装置に供給するようにしてもよい。そしてその画像処理装置におけるコンピュータ(又はCPUやMPU等)がプログラムを読み出して実行するようにしてもよい。その場合、そのプログラム、及び該プログラムを記憶した記憶媒体は本発明を構成することとなる。
101 画像処理装置
102 システム制御装置
103 搬入装置
104 ロボット
105 搬出装置
106 カメラ
109 トレイ
110 ワーク
102 システム制御装置
103 搬入装置
104 ロボット
105 搬出装置
106 カメラ
109 トレイ
110 ワーク
Claims (20)
- 画像を取得する画像取得手段と、
前記画像から特徴情報を抽出する特徴情報抽出手段と、
前記特徴情報抽出手段により抽出された特徴情報に基づいて撮像手段の設置を支援するための設置支援用特徴情報を生成する第1の生成手段と、を有することを特徴とする画像処理装置。 - 前記特徴情報を評価する評価手段を有し、前記第1の生成手段は、前記評価手段による前記評価に応じた前記設置支援用特徴情報を生成することを特徴とする請求項1に記載の画像処理装置。
- 前記第1の生成手段は、前記評価に応じて前記特徴情報に優先順位をつけることを特徴とする請求項2に記載の画像処理装置。
- 前記特徴情報抽出手段により抽出された特徴情報に基づいて対象物の位置姿勢を計測するための計測用特徴情報を生成する第2の生成手段を有することを特徴とする請求項1に記載の画像処理装置。
- 前記設置支援用特徴情報を生成するのに用いられる特徴情報は、前記画像のうち第1の領域から抽出され、前記計測用特徴情報を生成するのに用いられる特徴情報は、前記第1の領域とは異なる第2の領域から抽出されることを特徴とする請求項1~4のいずれか1項に記載の画像処理装置。
- 前記第1の領域は、前記第2の領域よりも広いことを特徴とする請求項5に記載の画像処理装置。
- 撮像手段の設置を支援するための設置支援用特徴情報を取得する情報取得手段と、
前記撮像手段により得られた画像から、前記情報取得手段により取得された前記設置支援用特徴情報を探索する探索手段と、
前記探索手段による探索結果に基づき前記撮像手段の前記設置を支援する設置支援手段と、
を備えることを特徴とする画像処理装置。 - 前記探索手段は前記探索のためのパラメータを調整可能であることを特徴とする請求項7に記載の画像処理装置。
- 前記設置支援手段は、前記探索手段の前記探索結果を表示する表示手段を含むことを特徴とする請求項7に記載の画像処理装置。
- 前記表示手段は、前記探索結果に基づき前記撮像手段の調整方向と調整量の少なくとも1つを表示することを特徴とする請求項9に記載の画像処理装置。
- 前記設置支援手段は、前記探索結果に基づき前記撮像手段の位置又は姿勢の調整を行う自動調整手段を含むことを特徴とする請求項9に記載の画像処理装置。
- 前記自動調整手段はパン、チルト、ズームの少なくとも1つを調整することを有することを特徴とする請求項11に記載の画像処理装置。
- 前記探索手段は、前記設置支援用特徴情報に基づき、形状特徴、正規化相関、マッチングの内の少なくとも1つの探索方法を用いて前記探索を行うことを特徴とする請求項7に記載の画像処理装置。
- 前記探索手段は、前記撮像手段のタイプに基づき探索方法を選択可能であることを特徴とする請求項7に記載の画像処理装置。
- 対象物の位置姿勢を計測するための計測用特徴情報を取得し、前記撮像手段により得られた前記画像から前記計測用特徴情報を探索して前記対象物の位置姿勢を計測する計測手段を有することを特徴とする請求項7に記載の画像処理装置。
- 請求項15に記載の画像処理装置の前記計測手段の計測結果に基づき前記対象物を把持する把持手段を有することを特徴とする生産システム。
- 請求項15に記載の画像処理装置の前記計測手段の計測結果に基づき前記対象物を把持する把持ステップと、
前記把持ステップにより把持された前記対象物に所定の処理を施す処理ステップと、
を有することを特徴とする物品の製造方法。 - 画像を取得する画像取得ステップと、
前記画像から特徴情報を抽出する特徴情報抽出ステップと
抽出された特徴情報に基づいて撮像手段の設置を支援するための設置支援用特徴情報を生成する第1の生成ステップと、
を備える画像処理方法。 - 撮像手段の設置を支援するための設置支援用特徴情報を取得する情報取得ステップと、
前記撮像手段により得られた画像から、前記情報取得ステップにより取得された前記設置支援用特徴情報を探索する探索ステップと、
前記探索ステップによる探索結果に基づき前記撮像手段の前記設置を支援する設置支援ステップと、
を備えることを特徴とする画像処理方法。 - 請求項1~15のいずれか1項に記載の画像処理装置の各手段をコンピュータにより制御するためのコンピュータプログラム。
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2021020421A JP2022123241A (ja) | 2021-02-12 | 2021-02-12 | 画像処理装置、画像処理方法、生産システム、物品の製造方法、及びコンピュータプログラム、 |
US17/666,144 US20220261943A1 (en) | 2021-02-12 | 2022-02-07 | Image processing device, image processing method, production system, product manufacturing method, and storage medium |
CN202210129412.XA CN114928691A (zh) | 2021-02-12 | 2022-02-11 | 图像处理装置及方法、生产***、产品制造方法和介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2021020421A JP2022123241A (ja) | 2021-02-12 | 2021-02-12 | 画像処理装置、画像処理方法、生産システム、物品の製造方法、及びコンピュータプログラム、 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2022123241A true JP2022123241A (ja) | 2022-08-24 |
Family
ID=82800476
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2021020421A Pending JP2022123241A (ja) | 2021-02-12 | 2021-02-12 | 画像処理装置、画像処理方法、生産システム、物品の製造方法、及びコンピュータプログラム、 |
Country Status (3)
Country | Link |
---|---|
US (1) | US20220261943A1 (ja) |
JP (1) | JP2022123241A (ja) |
CN (1) | CN114928691A (ja) |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP6877191B2 (ja) * | 2017-03-03 | 2021-05-26 | 株式会社キーエンス | 画像処理装置、画像処理方法、画像処理プログラム及びコンピュータで読み取り可能な記録媒体 |
DE102019206444A1 (de) * | 2019-05-06 | 2020-11-12 | Kuka Deutschland Gmbh | Maschinelles Lernen einer Objekterkennung mithilfe einer robotergeführten Kamera |
-
2021
- 2021-02-12 JP JP2021020421A patent/JP2022123241A/ja active Pending
-
2022
- 2022-02-07 US US17/666,144 patent/US20220261943A1/en active Pending
- 2022-02-11 CN CN202210129412.XA patent/CN114928691A/zh active Pending
Also Published As
Publication number | Publication date |
---|---|
CN114928691A (zh) | 2022-08-19 |
US20220261943A1 (en) | 2022-08-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10306149B2 (en) | Image processing apparatus, robot system, robot, and image processing method | |
JP6892286B2 (ja) | 画像処理装置、画像処理方法、及びコンピュータプログラム | |
EP1881383A2 (en) | Simulation device of robot system | |
Nerakae et al. | Using machine vision for flexible automatic assembly system | |
US10430650B2 (en) | Image processing system | |
US20070076944A1 (en) | Magnified machine vision user interface | |
JP6740288B2 (ja) | 物体検査装置、物体検査システム、及び検査位置を調整する方法 | |
US11590657B2 (en) | Image processing device, control method thereof, and program storage medium | |
JP2020047049A (ja) | 画像処理装置及び画像処理方法 | |
CN104057455A (zh) | 机器人*** | |
CN114080590A (zh) | 使用先进扫描技术的机器人料箱拾取***和方法 | |
US11839980B2 (en) | Image processing apparatus monitoring target, control method therefor, and storage medium storing control program therefor | |
KR20180017074A (ko) | 카메라를 이용한 로봇 축각도들의 검출 및 로봇의 선택 | |
JP2019113348A (ja) | 物体検査システム及び物体検査方法 | |
US20180231474A1 (en) | Apparatus and method for generating operation program of inspection system | |
JP7391571B2 (ja) | 電子機器、その制御方法、プログラム、および記憶媒体 | |
CN111199533B (zh) | 图像处理装置 | |
JP2022123241A (ja) | 画像処理装置、画像処理方法、生産システム、物品の製造方法、及びコンピュータプログラム、 | |
JP2021026599A (ja) | 画像処理システム | |
JP2015169515A (ja) | 姿勢推定システム、プログラムおよび姿勢推定方法 | |
JP2015176273A (ja) | 画像処理装置、画像処理方法、および画像処理プログラム | |
JP3765061B2 (ja) | 多次元形状の座標計測機用オフライン・ティーチング・システム | |
JP2003202208A (ja) | 画像測定装置及び画像測定用プログラム | |
JP2020123049A (ja) | 寸法単位設定方法、情報処理装置、及びロボットシステム | |
TWI747500B (zh) | 自動物件取像方法及裝置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20240205 |