(57)【要約】【課題】撮影位置の再現性を確保しつつ、より短時間に画像処理を行うこと。【解決手段】画像処理装置１０２は、画像処理工程ごとに撮像装置１０３の駆動制御を行って撮影方向や撮影倍率を調整し、計測対象の撮影位置を設定する。画像処理装置１０２は撮像装置１０３による撮像画像において基準となる基準画像領域を設定し、当該領域内で抽出された特徴部を基準特徴部として設定する。ユーザは撮影位置の再現性の判定に用いる判定条件のデータを入力し、画像処理装置１０２は、撮像画像データに基づき、計測時に入力された撮像画像にて抽出される特徴部と、設定された基準特徴部との誤差を算出する。算出された誤差が判定条件に対応する閾値より大きい場合、撮影位置の補正が所定の回数または時間内で行われる。また算出された誤差が判定条件に対応する閾値以下である場合、所定の画像処理が行われ、画像処理結果が出力される。【選択図】図１
2020010166.tif 000002
【特許請求の範囲】
【請求項１】
撮影方向または撮影画角の変更が可能な撮像手段により計測対象を撮像した撮像画像のデータを処理する画像処理装置であって、
前記撮像画像にて基準となる基準画像領域を設定し、前記基準画像領域における画像の特徴部を基準特徴部に設定する処理を行う設定手段と、
前記撮像手段の撮影位置の再現性を判定する判定条件のデータを入力する入力手段と、
前記撮像手段によって計測時の撮影位置で取得される撮像画像にて前記基準画像領域に対応する画像領域で抽出される特徴部と、前記基準特徴部との誤差を算出する算出手段と、
前記算出手段によって算出された前記誤差が前記判定条件を満たさない場合、前記撮像手段に対して前記撮影位置を補正する処理を行う補正手段と、
前記撮像手段による撮像画像のデータを取得して画像処理を行う画像処理手段と、
前記算出手段によって算出された前記誤差が前記判定条件を満たす場合、前記画像処理手段により前記撮像画像の画像処理を行い、画像処理結果を出力する制御を行う制御手段と、を備える
ことを特徴とする画像処理装置。
【請求項２】
判定条件のデータは、前記算出手段によって算出される前記誤差に対する閾値、および前記補正手段による前記撮影位置の補正を制限する条件を表すデータである
ことを特徴とする請求項１に記載の画像処理装置。
【請求項３】
前記補正手段は前記撮影位置の補正を制限する条件を表す回数または時間で前記補正を行い、
前記制御手段は、前記補正手段により補正された前記撮影位置で取得される撮像画像にて前記算出手段によって算出された前記誤差が前記閾値以下である場合、前記画像処理手段により前記撮像画像の画像処理を行い、前記回数または時間で前記補正手段が前記撮影位置の補正を行っても前記算出手段によって算出された前記誤差が前記閾値より大きい場合、前記撮影位置の再現性を確保できないことを報知する処理を行う
ことを特徴とする請求項２に記載の画像処理装置。
【請求項４】
前記制御手段は、前記補正手段による前記撮影位置の補正値または該補正値の履歴データを用いて前記撮影位置の設定値を更新する制御を行う
ことを特徴とする請求項１乃至３のいずれか１項に記載の画像処理装置。
【請求項５】
前記設定手段は、複数回に亘って行われる計測によって取得される画像領域のうち、変動が小さい画像領域を前記基準画像領域に設定する
ことを特徴とする請求項１乃至４のいずれか１項に記載の画像処理装置。
【請求項６】
前記設定手段は、複数回に亘って行われる計測によって取得される変動の小さい複数の画像領域のうち、特徴量が大きな画像領域を前記基準画像領域に設定する
ことを特徴とする請求項５に記載の画像処理装置。
【請求項７】
前記基準画像領域の候補を表示する表示手段を備え、
前記設定手段は、複数回に亘って行われる計測によって取得される画像領域のうち、変動の小さい画像領域を前記基準画像領域の候補として前記表示手段に表示する処理を行い、操作手段により選択された画像領域を前記基準画像領域に設定する
ことを特徴とする請求項１乃至４のいずれか１項に記載の画像処理装置。
【請求項８】
前記表示手段は、前記変動の小さい画像領域のうち、特徴量が大きな画像領域を前記基準画像領域の候補として表示する
ことを特徴とする請求項７に記載の画像処理装置。
【請求項９】
前記補正手段は、前記撮像画像にて前記基準画像領域に対応する画像領域で抽出される特徴部と、前記基準特徴部との位置または大きさの差に対応する補正値を算出して補正を行う
ことを特徴とする請求項１乃至８のいずれか１項に記載の画像処理装置。
【請求項１０】
前記補正手段は、前記撮像画像にて前記基準画像領域に対応する画像領域で抽出される複数の特徴部の距離と、複数の前記基準特徴部の距離との差に対応する補正値を算出して補正を行う
ことを特徴とする請求項１乃至８のいずれか１項に記載の画像処理装置。
【請求項１１】
前記補正手段は、前記撮像画像にて前記基準画像領域に対応する画像領域で抽出される複数の特徴部と、複数の前記基準特徴部との傾き角度に対応する補正値を算出して補正を行う
ことを特徴とする請求項１乃至８のいずれか１項に記載の画像処理装置。
【請求項１２】
前記設定手段は、前記計測対象に対応する画像領域とは異なる画像領域を、前記基準画像領域に設定する処理を行う
ことを特徴とする請求項１乃至１１のいずれか１項に記載の画像処理装置。
【請求項１３】
前記撮像手段の駆動部を制御して、前記撮像手段の撮影方向または撮影画角を変更する制御を行い、前記計測対象の撮影位置を設定する駆動制御手段を備える
ことを特徴とする請求項１乃至１２のいずれか１項に記載の画像処理装置。
【請求項１４】
請求項１乃至１３のいずれか１項に記載の画像処理装置と、
前記撮像手段と、を備える
ことを特徴とする撮像装置。
【請求項１５】
撮影方向または撮影画角の変更が可能な撮像手段により計測対象を撮像した撮像画像のデータを処理する画像処理装置にて実行される制御方法であって、
前記撮像画像にて基準となる基準画像領域を設定し、前記基準画像領域における画像の特徴部を基準特徴部に設定する処理を行う工程と、
前記撮像手段の撮影位置の再現性を判定する判定条件のデータを入力する工程と、
前記撮像手段によって計測時の撮影位置で取得される撮像画像にて前記基準画像領域に対応する画像領域で抽出される特徴部と、前記基準特徴部との誤差を算出する工程と、
算出された前記誤差が前記判定条件を満たさない場合、前記撮像手段に対して前記撮影位置を補正する処理を行う工程と、
算出された前記誤差が前記判定条件を満たす場合、画像処理手段により前記撮像画像の画像処理を行い、画像処理結果を出力する制御を行う工程と、を有する
ことを特徴とする画像処理装置の制御方法。
【請求項１６】
コンピュータを、請求項１乃至１３のいずれか１項に記載の画像処理装置が備える各手段として機能させることを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、撮像装置の撮影方向や撮影画角を制御し、撮像画像を処理する画像処理の技術に関する。
【背景技術】
【０００２】
画像処理を行ってロボットや搬送装置等の機器を制御する技術は、工場での製品生産や品質確認、運用、管理等に使用される。撮像装置によって作業対象（以下、ワークと呼ぶ）を撮影する際、撮影方向や撮影倍率を変更する駆動部を備えた撮像装置を使用すれば、複数の撮影位置や撮影画角で画像を取得できる。１台の撮像装置で取得した画像を複数の画像処理工程で使用可能である。
【０００３】
しかし、撮像装置の駆動部の性能や劣化等によって、予め基準として設定しておいた撮影位置の再現性が低下すると、画像処理の計測精度や認識率が低下する可能性がある。そこで、特許文献１に開示の技術では、予めワークを撮影した第１の画像と、撮影位置を変更したときにワークを撮影した第２の画像とを比較し、第１の画像が第２の画像のどの領域にあるかを求めて表示することができる。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０１５−１８６０２１号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
ところで、工場等で撮影位置を変更するたびにユーザがいちいち再現性を確認する方法は時間がかかり、作業効率が低い。そのため、撮像装置自体が自動的に再現性を判定し、再現性が低い場合に自動的に撮影位置を補正する処理を行うことが要求される。さらには、工場等における各画像処理工程において必要とされる計測精度や認識率がそれぞれ異なる場合があり得る。ある画像処理工程において必要な計測精度が十分でない場合や、過分な再現性を要求したことにより、必要以上の補正処理が行われる結果、長い計測時間がかかる可能性がある。
【０００６】
一例として、搬送装置によって個々に搬送される複数種のワークを、撮像装置が撮像した画像を用いて類別し、ロボットがワークの種類ごとに異なる搬送車に積載する作業工程を想定する。ロボットが正しくワーク座標を認識してワークを把持するためには、画像処理の計測精度を所定の精度以上に高める必要がある。一方、撮像装置が搬送車を撮像して搬送車が停止枠内に存在するかどうかを判定する工程では、画像処理の計測精度をそれほど高くする必要はなく、短時間で処理を終了できることが求められる。
本発明の目的は、撮影位置の再現性を確保しつつ、より短時間に画像処理を行うことである。
【課題を解決するための手段】
【０００７】
本発明の一実施形態の画像処理装置は、撮影方向または撮影画角の変更が可能な撮像手段により計測対象を撮像した撮像画像のデータを処理する画像処理装置であって、前記撮像画像にて基準となる基準画像領域を設定し、前記基準画像領域における画像の特徴部を基準特徴部に設定する処理を行う設定手段と、前記撮像手段の撮影位置の再現性を判定する判定条件のデータを入力する入力手段と、前記撮像手段によって計測時の撮影位置で取得される撮像画像にて前記基準画像領域に対応する画像領域で抽出される特徴部と、前記基準特徴部との誤差を算出する算出手段と、前記算出手段によって算出された前記誤差が前記判定条件を満たさない場合、前記撮像手段に対して前記撮影位置を補正する処理を行う補正手段と、前記撮像手段による撮像画像のデータを取得して画像処理を行う画像処理手段と、前記算出手段によって算出された前記誤差が前記判定条件を満たす場合、前記画像処理手段により前記撮像画像の画像処理を行い、画像処理結果を出力する制御を行う制御手段と、を備える。
【発明の効果】
【０００８】
本発明の画像処理装置によれば、撮影位置の再現性を確保しつつ、より短時間に画像処理を行うことができる。
【図面の簡単な説明】
【０００９】
【図１】第１実施例に係る画像処理装置を含むシステムの全体構成図である。
【図２】第１実施例に係る撮像装置の概略図である。
【図３】第１実施例に係る計測シーンの説明図である。
【図４】第１実施例に係る画像処理装置のブロック図である。
【図５】第１実施例に係るフローチャート作成画面を表す図である。
【図６】第１実施例に係る基準特徴の登録処理画面を表す図である。
【図７】第１実施例に係る基準特徴の登録処理のシーケンス図である。
【図８】第１実施例に係る基準特徴情報のデータ形式を表す図である。
【図９】第１実施例に係る計測処理の設定画面を表す図である。
【図１０】第１実施例に係る計測処理のシーケンス図である。
【図１１】第１実施例に係る比較処理および補正処理の説明図である。
【図１２】第２実施例に係る基準特徴の登録処理画面を表す図である。
【図１３】第２実施例に係る基準特徴の登録処理のシーケンス図である。
【発明を実施するための形態】
【００１０】
以下に、本発明の好適な実施形態について、添付図面に示す各実施例にしたがって詳細に説明する。画像処理装置、ロボット、搬送装置等を備えるシステムの例を説明するが、以下の実施形態に示す構成要素は一例であり、本発明は画像処理装置を利用した各種の計測システムに適用可能である。
【００１１】
［第１実施例］
図１は、本実施形態に係る画像処理装置を含むシステムの全体構成図である。システムの制御装置１０１は、予め設定されたタイミングで各装置への制御指令を送信する。システムは制御装置１０１、画像処理装置１０２、撮像装置１０３、作業用のロボット１０４、搬送装置１０５、搬送車１０６，１０７から構成される。
【００１２】
画像処理装置１０２は、制御装置１０１から受信した制御指令にしたがって、撮像装置１０３の駆動制御を行う。撮像装置１０３は撮影方向と撮影画角の変更が可能であり、画像処理装置１０２からの制御信号により計測対象の撮影位置を変更して撮像動作を行う。画像処理装置１０２は撮像装置１０３から取得した撮像画像データを処理し、画像処理結果を制御装置１０１に送信する。制御装置１０１は、画像処理結果に基づいてロボット１０４、搬送装置１０５、搬送車１０６，１０７を制御し、所定の作業を実行させる。
【００１３】
一例として、以下の作業工程を説明する。
・撮像装置１０３が撮像した画像データを用いて、搬送装置１０５により搬送されるワーク１０８〜１１０の種別を判別する工程。
・ロボット１０４によってワークの種別ごとに異なる搬送車にワークを配置する工程。
ワークを搬送する搬送車１０６，１０７の停止位置は、複数の停止枠１１１により決定されるものとする。
【００１４】
図２は撮像装置１０３の撮影方向と撮影画角を変更する駆動機構を説明する模式図である。撮像装置１０３は、雲台２０１と撮影系（撮像光学系）２０２を備える。雲台２０１は、撮影系２０２の方向を、横方向（以下、パンニング方向をＰ方向と記す）および縦方向（以下、チルティング方向をＴ方向と記す）に変化させる２つの駆動系の機構部を有する。パンニング機構（パン機構ともいう）は撮影系２０２をＰ方向に駆動させる機構であり、チルティング機構（チルト機構ともいう）は撮影系２０２をＴ方向に駆動させる機構である。これらの機構によって撮影系２０２の撮影方向は、Ｐ方向にて３６０°の範囲で変更可能、つまりエンドレス旋回が可能である。またＴ方向にて、水平方向を０度として−３０．０度〜＋２１０．０度の範囲で撮影方向を変更可能である。また撮像装置１０３はズーム機構により、撮影系２０２のズーム倍率を１．０倍〜２０．０倍の範囲で変更可能である。
【００１５】
このように撮像装置１０３は、撮影方向およびズーム倍率の制御により撮影位置と撮影画角を変更することができ、例えば以下の計測シーンを撮影することができる。
・ワーク１０８〜１１０の種別を検出する計測シーンＡ１１２。
・搬送車１０６，１０７が停止枠１１１内にそれぞれ存在するか否かを判定する計測シーンＢ１１３および計測シーンＣ１１４。
本実施形態では便宜上、１台の撮像装置の使用例を説明するが、より大規模なシステムにおいては複数の撮像装置が使用される。各撮像装置は複数の計測シーンの撮影を担当する。
【００１６】
図３は、計測シーンＡ１１２およびＢ１１３を説明する図である。図３（Ａ）は計測シーンＡ１１２の画像例を示し、図３（Ｂ）は計測シーンＢ１１３の画像例を示す。図３（Ａ）に示す画像３０１は、撮像装置１０３が搬送装置１０５上のワーク１０８を撮像した画像である。画像処理装置１０２は画像３０１のデータを処理し、ワーク１０８の実空間座標を算出する。制御装置１０１は画像処理結果に基づいてロボット１０４を制御する。このとき、撮像装置１０３の位置再現性が低下すると、画像処理装置１０２が算出したワーク１０８の位置姿勢の座標と実際のワーク１０８の位置姿勢の座標との間で誤差が発生する。誤差が許容範囲を超えた場合、ロボット１０４の制御に誤りが発生し、ワーク１０８の把持やピックアップ動作に支障を来す可能性がある。
【００１７】
そこで画像処理装置１０２は、撮像装置１０３の撮影位置を変更したのちに基準画像領域の撮影を行い、位置再現性が確保できているかどうかを判定する。基準画像領域については後述するが、例えば搬送装置１０５を固定するボルトや柱が写っている領域３０２のように、時間経過に伴う変動が小さく、かつ特徴量の大きい領域が基準画像領域として好適である。これに対し、ワーク１０８とその周辺部が写っている領域のような、動画像において時間経過に伴って位置や傾きが変化する領域は基準画像領域として適切ではない。
【００１８】
撮像装置１０３は、基準画像領域３０２を含む画像３０１のデータを画像処理装置１０２に送信する。または、基準画像領域３０２をトリミングした画像データを撮像装置１０３が画像処理装置１０２に送信してもよい。あるいは、撮像装置１０３が画像３０１の画像処理を行って後述する特徴を抽出し、抽出結果を示すデータのみを画像処理装置１０２に送信してもよい。
【００１９】
図３（Ｂ）に示す画像３０３は、撮像装置１０３が搬送車１０６を撮像した画像である。画像処理装置１０２は画像３０３の画像処理を行い、搬送車１０６が停止枠１１１内に存在するかどうかを判定する。このとき撮像装置に要求される位置再現性については、計測シーンＡ１１２に比較して判定精度が低いものとする。むしろ過分な位置再現性を要求すると、必要以上の補正処理が行われた場合に計測時間が長くなるという問題が発生する。
【００２０】
図４は、画像処理装置１０２の構成例を示すブロック図である。画像処理装置１０２はインターフェース部４０３を介して制御装置１０１、撮像装置１０３と接続されている。入出力表示装置４０１、操作入力装置４０２はインターフェース部４０３を介して画像処理装置１０２と接続された、ユーザ・インターフェース用の装置である。各装置は画像処理装置１０２の内部バス上に配置された各インターフェース部４０３を介して接続される。各インターフェース部４０３は通信に適した規格に基づき、接続対象に応じたネットワークインターフェース部、シリアル通信インターフェース部等から構成される。
【００２１】
入出力表示装置４０１は、画像を表示する陰極管や液晶パネル等の表示デバイスを備える。操作入力装置４０２は、キーボードやポインティングデバイス、タッチパネル、入力操作コントローラ、ジェスチャ入力装置等により構成される。
【００２２】
画像処理装置１０２と接続される撮像装置１０３には、撮影のために必要に応じて照明装置を併設してもよい。照明装置はハロゲンランプや発光ダイオード等の光源を備える。また画像処理装置１０２に外部記憶装置を接続して、記憶容量を拡大してもよい。
【００２３】
画像処理装置１０２は、画像処理の制御主体となる汎用マイクロプロセッサとして構成されたＣＰＵ（中央演算処理装置）や画像処理プロセッサ等により構成される演算部４０４を有する。演算部４０４は内部バス（データバス、アドレスバス、他の制御線等）を介して記憶部４０５と接続される。
【００２４】
記憶部４０５には、ＲＯＭ、ＲＡＭ、またはＥＰＲＯＭ、ＥＥＰＲＯＭ等の不揮発性メモリデバイスや、外部記憶装置が使用される。ＲＯＭは“Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ”、ＲＡＭは“Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ”の略号である。ＥＰＲＯＭは“Ｅｒａｓａｂｌｅ  Ｐｒｏｇｒａｍｍａｂｌｅ  Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ”の略号である。ＥＥＰＲＯＭは“Ｅｌｅｃｔｒｉｃａｌｌｙ  Ｅｒａｓａｂｌｅ  Ｐｒｏｇｒａｍｍａｂｌｅ  Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ”の略号である。外部記憶装置は、例えばハードディスクドライブ装置（ＨＤＤ）や半導体メモリ素子で構成された記憶装置、あるいはインターフェース部４０３と接続可能な記憶装置等である。
【００２５】
記憶部４０５は処理データ保存領域４０６およびプログラム記憶領域を有する。処理データ保存領域４０６は、記憶部４０５中のＲＡＭ領域や、外部記憶装置のファイル領域や仮想記憶領域等によって構成される。処理データ保存領域４０６は、処理データを一時的に記憶する他、画像処理の設定パラメータ等の記憶領域として使用される。記憶部４０５のプログラム記憶領域には、本実施例の画像処理を実行するための画像処理プログラム４０７が記憶される。画像処理プログラム４０７は、操作入力装置４０２によって行われた各種操作に応じて、画像処理の設定変更や所定の画像処理を実行する。また変更内容について、処理データ保存領域４０６へのデータの保存や、データの削除が可能である。
【００２６】
画像処理プログラム４０７は、各種の機能を実現するソフトウェアモジュールから構成される。例えば画像処理モジュール４０８は画像処理を実現する本体部分である。このモジュールが行う画像処理には画像処理ライブラリ４０９が用いられる。画像処理ライブラリ４０９は、例えば静的または動的にリンクされるライブラリとして記憶部４０５に実装される。画像処理設定モジュール４１０は画像処理プログラム４０７の振舞いを決定する。画像処理設定は操作入力装置４０２によって行われた各種操作に応じて行われる。
【００２７】
さらに、画像処理プログラム４０７には、次の機能を実現するＩ／Ｏ（入出力）用サブルーチンが含まれる。例えば、外部デバイス制御サブルーチン４１１、保存データ生成サブルーチン４１２、制御装置１０１からの制御指令を受け付けるための指令受付サブルーチン４１３がある。またＲＡＭ領域や演算部４０４のキャッシュ領域等を使用する一時記憶サブルーチン４１４、表示画面生成サブルーチン４１５がある。保存データ出力サブルーチン４１６は処理データ保存領域４０６に保存されたデータを読み出して出力するプログラムであり、操作受付サブルーチン４１７は操作入力装置４０２からの操作指示を受け付けるためのプログラムである。各機能は、アプリケーション（ユーティリティ）プログラムや、静的または動的にリンクされるライブラリとして構成されたサブルーチン、といった形態で記憶部４０５に実装される。
【００２８】
画像処理装置１０２のＣＰＵは画像処理プログラム４０７を実行することにより、撮像装置１０３の制御、演算部４０４を利用した画像処理を行う。また、操作入力装置４０２によりユーザの操作指示を受け付ける処理や、画像処理装置１０２の外部装置である制御装置１０１から制御指令を受け付ける処理が実行される。演算部４０４は操作指示や制御指令に応じて、画像処理プログラム４０７の各機能モジュールやライブラリを呼び出して演算処理を行い、画像処理結果のデータを制御装置１０１に送信する。また、画像処理結果のデータを外部記憶装置に送信して蓄積（ロギング）することができる。さらには、プログラムによって予め記憶されている画面構成と画像処理結果とを画面上で合成し、入出力表示装置４０１に表示する処理が実行される。
【００２９】
図５は、画像処理プログラム４０７を作成するためのフローチャート作成画面の例を示す図である。この画面は入出力表示装置４０１に表示される。本実施例に係る画像処理プログラム４０７は、ユーザが画像処理装置１０２を用いて作成したフローチャートに従って実行されるものとする。その他の実施形態として、ユーザが図１に示していない画像処理プログラム作成装置を使用して画像処理プログラム４０７を作成する形態がある。この場合、作成された画像処理プログラム４０７が画像処理装置１０２の記憶部４０５に転送されて記憶される。また、機能別または目的別に予め定型で用意された組合せ済みの画像処理フローチャートを内包したパッケージ機能を用いる形態でもよい。この場合、ユーザはＧＵＩ（グラフィカル・ユーザ・インターフェース）上で所望の機能を選択し、パラメータ等の調整を行うことができる。
【００３０】
パーツリスト５０１は、フローチャートを構成する各処理パーツのリストである。ユーザは矩形枠内に示す各種の処理や、菱形枠内に示す条件分岐処理を指定することができる。例えばユーザは操作入力装置４０２を用いて、パーツリスト５０１から所望の処理パーツを指定する。ポインティングデバイス等でドラッグ＆ドロップ操作を行い、フローチャート領域５０２に配置した複数の処理パーツ同士を線で結合することにより、フローチャートの作成が可能である。
【００３１】
複数の処理パーツから構成されるフローチャート５０３は、ロボット１０４によってワーク１０８〜１１０を搬送装置１０５から取り出し、ワークの種別に従って搬送車１０６または１０７に配置する処理を記述した例である。この例において、処理の開始後の撮影処理５０４はワーク１０８〜１１０を撮影する処理である。次のワーク位置計算５０５はワーク１０８〜１１０の位置や位相を算出する計算処理であり、その次のロボット移動５０６の処理は、算出されたワーク位置の上方にロボット１０４のハンドを移動させたり回転させたりする処理である。Ｐｉｃｋ処理５０７はロボット１０４によるワーク１０８のピックアップ動作の処理であり、その次の撮影処理５０８は搬送車１０６を撮影する処理である。その次には、撮像画像内に搬送車１０６の画像領域が存在するかどうかを検出する存在検出５０９の処理が記述されている。さらに条件分岐処理５１０では、搬送車１０６の画像領域が撮像画像内に存在する場合にロボット移動処理５１１に進み、搬送車１０６の画像領域が撮像画像内に存在しない場合に報知処理５１３に進むことが記述されている。ロボット移動処理５１１は、ロボット１０４により取り出されたワーク１０８を搬送車１０６の位置に移動させる処理である。次のＰｌａｃｅ処理５１２はロボット１０４がワーク１０８を搬送車１０６上に載置する処理である。報知処理５１３は一定時間を待って検出された異常発生を報知する処理である。そして一連の処理を終了する。
【００３２】
ユーザは所望の処理パーツを組み合わせて、目的とするフローチャート５０３を作成する。作成されたフローチャート５０３において、処理パーツのいずれかのダブルクリック操作が行われた場合、当該処理パーツの詳細な処理を設定するための設定画面の表示処理に遷移する。この設定画面については後述する。ＯＫボタン５１４のクリック操作が行われた場合、画像処理装置１０２はフローチャートに記述された処理を実行するための画像処理プログラム４０７を生成する。
【００３３】
図６は、撮影処理における基準特徴の登録処理画面を表す図である。例えば、ユーザが図５に示すフローチャート５０３において、撮影処理５０４または５０８の処理パーツに対するダブルクリック操作を行った場合、登録処理画面６０１が入出力表示装置４０１によって表示される。ユーザは登録処理画面６０１を見ながら、計測時の基準として用いる基準特徴部の設定登録を行うことができる。
【００３４】
図７は基準特徴の登録処理のシーケンス図である。以下では、図６および図７を参照して以下の処理（Ａ）〜（Ｄ）から構成される登録処理について具体的に説明する。
（Ａ）使用する撮像装置の設定処理。
（Ｂ）撮影位置に関するパンニングとチルティング、ズーム倍率の設定処理。
（Ｃ）撮像装置が備える駆動機構部の性能や劣化に由来する位置再現性を評価するために基準画像領域・抽出特徴・誤差計算方法を設定する処理。駆動機構部にはパン機構、チルト機構、ズーム機構が含まれる。
（Ｄ）計測シーンごとの許容誤差・脱出条件を設定する処理。
【００３５】
まず処理（Ａ）について説明する。図６の撮影パーツＩＤ６０２は、撮影パーツを識別するための情報を表示するボックスである。カメラＩＤ６０３は、撮像装置の識別情報であるカメラＩＤを設定するためのスピンボックス、つまりスピンコントロール付きテキストボックスである。システムにて複数台の撮像装置が使用される場合、ユーザはカメラＩＤを選択することによって、撮影に使用するカメラを設定することができる。ここでは、撮像装置１０３に割り当てられたカメラＩＤが指定されたものとして説明する。
【００３６】
次に処理（Ｂ）について説明する。図６のバー６０４〜６０６は、撮像装置１０３のパンニング、チルティング、ズーム倍率を変更するために操作されるスライドバーである。撮像装置１０３による撮像画像は画像表示領域６０７に表示され、その下側にパンニング用のバー６０４が配置されている。バー６０４の操作によりＰ方向における撮影位置を変更可能である。画像表示領域６０７の右側にはチルティング用のバー６０５、およびズーム倍率変更用のバー６０６が配置されている。バー６０５の操作によりＴ方向における撮影位置を変更可能である。バー６０６の操作により撮影画角を変更可能である。
【００３７】
図７には画像処理装置１０２と撮像装置１０３との間で行われる処理の一例を示す。時間軸の方向を図７の上から下への方向と定義する。ユーザがバー６０４〜６０６のうちの所望のバーを操作した場合、画像処理装置１０２は撮像装置１０３に対して撮影指令を送信する（Ｓ７０１)。撮像装置１０３は駆動部を制御して、パンニングやチルティングの変更（撮影方向の変更）、またはズーム倍率の変更を行う（Ｓ７０２）。その後、撮像装置１０３による撮影動作が行われ(Ｓ７０３)、撮像画像のデータが画像処理装置１０２に送信される(Ｓ７０４)。画像処理装置１０２は撮像画像の表示処理を行い、入出力表示装置４０１の画面における画像表示領域６０７に撮像画像が表示される。図６に表示される画像例では、図１に示した搬送装置１０５と搬送中のワーク１０８、搬送装置１０５を固定しているボルト部分６０８（図３に示す領域３０２に対応する）が写っている。Ｓ７０１からＳ７０４の処理はループ処理として、ユーザがスライドバー（６０４から６０６のいずれか）を操作するたびに繰り返し実行される。
【００３８】
次に処理（Ｃ）について説明する。処理（Ｃ）の目的は、撮像装置１０３に係る撮影位置の再現性を所定の画像処理を用いて検出することである。図６の画像表示領域６０７内に点線で示す枠６０９は、ユーザが基準画像領域を登録するための枠である。ユーザは操作入力装置４０２を用いて、枠６０９の形状、位置、大きさ等を変更可能である。図６では、搬送装置１０５を固定しているボルト部分６０８の画像領域が枠６０９によって包囲されており、４箇所の枠６０９内の領域が基準画像領域としてそれぞれ指定されている。図７のＳ７０５に基準画像領域の決定処理を示す。枠６０９は追加または削除が可能である。例えばユーザがマウスの右クリック操作を行うことでコンテキストメニュー（図示せず）が表示され、ユーザが「枠の追加・削除」を選択することによって、枠の追加や削除の操作を行える。
【００３９】
図６の登録処理画面６０１において中段には２つのスピンボックス６１０と６１１を示す。スピンボックス６１０は、基準画像領域から基準特徴を抽出する特徴抽出法を設定する際に使用される。特徴抽出法としてはパターンマッチング、エッジ検出、濃淡の検出、二値化重心、外接矩形、周囲長、色等を選択可能である。基準特徴とは、パターンの位置や位相、エッジ、濃淡値、二値化領域の面積や位置、矩形の大きさや位置および傾き、長さ、色濃度値等である。ユーザはスピンボックス６１０にて所望の選択肢を指定可能である。
【００４０】
スピンボックス６１１は、誤差の計算法を選択する際に使用される。基準特徴と、後述の計測時に抽出した特徴（基準特徴と同じく、パターンの位置または位相、エッジ、濃淡値、二値化領域の面積や位置、矩形の大きさや位置および傾き、長さ、色濃度値等）に基づく誤差の計算法を選択することができる。誤差の計算法では基準特徴および抽出した特徴のそれぞれについて、パターンの一致度、エッジや領域の重心位置の差、矩形の大きさや位置座標同士の距離および傾きの差、長さの差、濃淡の差等、複数の特徴同士の位置関係等が選択可能である。この場合、２以上の計算方法の組み合わせを設定できるように構成してもよい。
【００４１】
次に処理（Ｄ）について説明する。図３を用いて説明したように、計測シーンによって必要な計測精度や認識率が異なる場合がある。この場合、ユーザは撮影位置の再現性の判定条件を指定する際にスピンボックス６１２を用いて、各画像処理工程における許容誤差を入力することができる。許容誤差とは、画像計測時の再現性の影響による誤差がどの程度許容されるかを表す。許容誤差は、例えば画素数（ピクセル単位）または実距離（センチメートル単位）で表現される。本実施例では、ユーザが対象となる画像計測工程に要求される計測誤差量に基づき、許容誤差をスピンボックス６１２で直接的に指定する形態を説明する。他の実施形態としては、画像計測工程に要求される計測誤差範囲や、システムに使用される撮像装置のデバイス情報等から画像計測の誤差量を推定し、差分計算により推奨値を算出して提示する形態がある。
【００４２】
スピンボックス６１３は、ユーザが脱出条件を指定する際に使用される。脱出条件は、撮像装置１０３に対する撮影位置の補正を打ち切るための条件であり、例えば補正回数または補正の制限時間（秒単位）で指定可能である。計測時に計測誤差が許容誤差を上回った場合、画像処理装置１０２は撮像装置１０３に対して補正指令を送信する。その際、スピンボックス６１３で指定された補正回数または制限時間にて補正指令を送信する処理が実行される。チェックボックス６１５は補正処理を実行するかどうかを選択する際に使用される。チェックボックス６１５にチェックマークが付されている場合、計測シーンにおける補正処理が実行される。またチェックボックス６１５のチェックマークを外すことによって、計測シーンにおいて補正処理が実行されないように設定することができる。
【００４３】
上記処理（Ａ）〜（Ｄ）が終了し、ユーザがＯＫボタン６１４のクリック操作を行うと、画像処理装置１０２は指定された特徴抽出法を用いて基準特徴を抽出する(図７：Ｓ７０６）。そして設定された項目のデータを図８に示すデータ形式で生成する処理が行われ、当該データが基準特徴情報として処理データ保存領域４０６に保存される(図７：Ｓ７０７）。
【００４４】
図８は基準特徴情報のデータ形式を表す図である。図８（Ａ）は撮影パーツごとに生成されるデータ例を示す。例えば撮影パーツＩＤ８０１が「０１」である第１行では、カメラＩＤ８０２が「０１」、パン方向８０３の角度値が「１０．０」（単位：°）、チルト方向８０４の角度値が「−５．０」（単位：°）である。ズーム倍率８０５は「１．０」倍、特徴抽出法８０６は「パターンマッチング」、誤差計算法８０７は「パターン位置」である。脱出条件（数値）８０８は「５」、脱出条件（単位）８０９は「回」である。許容誤差（数値）８１０は「５」、許容誤差（単位）８１１は「ピクセル」である。撮影パーツＩＤ８０１が「０２」である第２行では、撮影パーツＩＤ８０１が「０１」である第１行に比べて、再現性の判定条件が緩和されていることを示している。符号８０１〜８１１で示す各項目については、図６において説明済みであるので、それらの説明を省略する。
【００４５】
図８（Ａ）の各行に示す項目のデータは基準特徴情報ＩＤ８１２と関連付けられている。基準特徴情報ＩＤ８１２は、基準特徴情報を一意に識別するためのＩＤ（識別情報）である。図８（Ｂ）は基準特徴情報ごとに生成されるデータ例を示す。例えば第１行の基準特徴情報ＩＤ８１２は「Ａ」である。このＩＤ「Ａ」は図８（Ａ）の第１行に示される撮影パーツＩＤ「０１」に関連付けられている。第１行でのＸ座標８１３は基準特徴部のＸ座標「８６０」を表し、Ｙ座標８１４は基準特徴部のＸ座標「５２０」を表す。第１行での幅８１５は基準特徴部の幅「８０」を表し、高さ８１６は基準特徴部の高さ「６０」を表す。特徴量８１７の項目には、例えば特徴抽出方法としてパターンマッチング法が選択されている場合にパターンの画像データが記録される。あるいは、特徴抽出方法として重心位置の抽出が選択されている場合に重心の位置座標が特徴量８１７の項目に記録される。ファイル名８１８は基準特徴部の画像ファイルの名称である。例えば、ユーザが画像処理プログラム４０７を作成した後、システムのテストをした際に計測結果が満足なレベルに達していない場合を想定する。ユーザは図６の登録処理画面６０１を再度表示させて、スピンボックス６１０を用いた基準特徴抽出方法の変更操作やスピンボックス６１１を用いた誤差計算方法の変更操作を行うことができる。このとき、基準特徴部の画像ファイルを記録しておくことで、基準特徴部の再撮影を行う必要がなくなるので作業の効率化を実現できる。
【００４６】
図９は計測処理の設定画面例を示す図である。ユーザが図５に示す処理パーツ（ワーク位置計算５０５や存在検出５０９等）に対してダブルクリック操作を行った場合、入出力表示装置４０１に計測処理の設定画面９０１が表示される。画像表示領域９０２内に示す画像は、撮像装置１０３による撮像画像を示す。枠９０３はユーザが計測対象を登録するときに用いる枠であり、枠９０４はユーザが計測における探索範囲を登録するための枠である。枠９０４は枠９０３を含む、より広い範囲に設定されている。ユーザは、マウス等のポインティングデバイスを使って枠９０３または９０４を操作することで、枠の形状、位置、大きさを変更可能である。
【００４７】
図９に示す計測処理法の表示領域９０５には、パターンマッチング法を用いてワークの位置計算が行われることが示されている。本実施例ではパターンマッチング法を例示して説明するが、他の画像処理に基づく計測処理方法が可能である。スピンボックス９０６，９０７，９０８はそれぞれ、パターンマッチング法におけるパターンの回転範囲、拡大率、およびスコア閾値をユーザが設定する際に使用される。
【００４８】
ユーザがＯＫボタン９０９のクリック操作を行うと、画像処理装置１０２は枠９０３に示す計測対象、枠９０４に示す探索範囲、パターンマッチング法における回転範囲、拡大率、スコア閾値の各データを処理データ保存領域４０６に保存する。なお、ユーザが図６のスピンボックス６１０を用いて設定した特徴抽出法がパターンマッチング法以外の方法である場合には、選択された特徴抽出法に応じた設定項目が表示される。つまり画像処理装置１０２は符号９０６〜９０８に示す項目に代えて、ユーザが選択した特徴抽出法に適したパラメータ設定ＵＩ（ユーザ・インターフェース）画面を表示する処理を実行する。
【００４９】
図３で説明したように、基準画像領域としては時間経過に伴う変動が小さく、かつ特徴量が大きい領域が好ましい。ワークが写っている領域のように、時間経過に伴って位置や傾きが変化する領域は適切でないと判断される。したがって、画像処理装置１０２は、図６の枠６０９に示される基準画像領域の設定時および図９の枠９０３による計測対象の登録時において基準画像領域と計測対象の画像領域が重なっている場合にユーザへの警告処理を行う。
【００５０】
図１０は、制御装置１０１からのトリガー信号を受け付けて画像処理装置１０２が画像計測処理を実行するときのシーケンス図である。図１０では制御装置１０１の実行する処理が追加されており、制御装置１０１と画像処理装置１０２と撮像装置１０３との間で行われる処理の一例を示す。時間軸の方向を図１０の上から下への方向と定義する。
【００５１】
まず制御装置１０１は画像処理装置１０２に制御指令を送信する（Ｓ１００１）。画像処理装置１０２は処理データ保存領域４０６から基準特徴情報（図８：８０２〜８１８）を読み出す（Ｓ１００２）。次に画像処理装置１０２は、撮影位置に関するパンニング方向、チルティング方向、ズーム倍率（図８：８０３〜８０５）での撮影指令を撮像装置１０３に送信する（Ｓ１００３）。撮像装置１０３は駆動部を制御して、パンニング角度およびチルティング角度、ズーム倍率を変更する（Ｓ１００４）。撮影動作が行われ（Ｓ１００５）、その後に撮像装置１０３は撮像画像のデータを画像処理装置１０２に送信する（Ｓ１００６）。
【００５２】
画像処理装置１０２は、受信した画像データから、図６のスピンボックス６１０，６１１でそれぞれ指定された特徴抽出法および誤差計算法に従って特徴部を抽出する（Ｓ１００７）。そして画像処理装置１０２は、抽出された特徴部の座標、大きさ、および傾きのうち、少なくとも１つの誤差を算出する。誤差の算出は基準特徴情報のＸ座標８１３，Ｙ座標８１４，幅８１５，高さ８１６との比較によって行われる（Ｓ１００８）。
【００５３】
Ｓ１００８において、算出された誤差が指定された許容誤差より大きい場合、画像処理装置１０２は抽出した特徴部と基準特徴部とのずれに基づき、パンニング角度、チルティング角度、ズーム倍率の補正値を算出する（Ｓ１００９）。補正処理については図１１を用いて後述する。次に画像処理装置１０２は撮像装置１０３に対し、パンニング角度、チルティング角度、ズーム倍率の補正指令を送信する（Ｓ１０１０）。撮像装置１０３は駆動部を制御して、パンニング角度やチルティング角度の変更、ズーム倍率の変更を行う（Ｓ１０１１）。撮影動作が行われて（Ｓ１０１２）、撮像装置１０３は撮像画像データを画像処理装置１０２に送信する（Ｓ１０１３）。画像処理装置１０２はＳ１００８と同様に比較処理を行い、算出された誤差が指定された許容誤差以内（閾値以下）であるか否かを判定する（Ｓ１０１４）。その結果、誤差が閾値以下である場合、所定の計測処理が行われ（Ｓ１０１５）、画像処理装置１０２は計測結果のデータを制御装置１０１に送信する（Ｓ１０１６）。
【００５４】
また、Ｓ１００８での比較処理の結果、誤差が指定された許容誤差以内（閾値以下）であると判定された場合には、ユーザが設定画面９０１で指定したパラメータを用いて、所定の計測処理が行われる（Ｓ１０１５）。画像処理装置１０２は計測結果のデータを制御装置１０１に送信する（Ｓ１０１６）。
【００５５】
図１０のＳ１００９〜Ｓ１０１４に示す処理は、図６のスピンボックス６１３でユーザが指定した脱出条件が満たされるまで実行される。所定回数または所定時間の補正処理が行われた後に、算出された誤差が許容誤差より大きい場合に画像処理装置１０２は、目的の計測精度を確保できないとみなし、制御装置１０１に対して再現性が確保できないことを示す信号を送信する。また画像処理装置１０２は入出力表示装置４０１に画像信号を出力し、撮影位置の再現性が確保できないことを示す表示画面を表示してユーザに報知する処理を実行する。
【００５６】
Ｓ１００９で算出された補正情報を用いて、図８で説明した基準特徴情報であるパン方向８０３，チルト方向８０４，ズーム倍率８０５の各情報に対して上書きを行い、処理データ保存領域４０６に保存してもよい。各情報を次回以降の計測に使用することができる。あるいは、画像処理装置１０２はＳ１００９で算出された補正情報の履歴データを処理データ保存領域４０６に保存する。画像処理装置１０２は保存された補正値の履歴データを用いて、複数回の補正情報に基づいて次回以降のＳ１００９にて補正値を計算し、撮影位置の設定値を更新する制御を行う。
【００５７】
図１１を参照して、図１０のＳ１００８からＳ１０１０の処理について具体的に説明する。図１１（Ａ）の画像例１１０１は、図６で説明した基準特徴登録時において画像処理装置１０２が登録した画像の基準特徴部を模式的に示す。複数の基準特徴部１１０２を矩形状の枠で示しており、これらは図６の枠６０９内の画像部分に相当する。点線１１０３は、複数の基準特徴部１１０２同士の位置関係を表す。４本の点線１１０３で示される四角形の各頂点に基準特徴部１１０２が位置している。
【００５８】
図１１（Ｂ）の画像例１１０４は、図１０のＳ１００６において画像処理装置１０２が計測時に受信した画像の特徴を模式的に示す。複数の特徴部１１０５を図１０のＳ１００７で抽出された矩形状の枠で示している。点線１１１４は複数の特徴部１１０５同士の位置関係を表す。４本の点線１１１４で示される四角形の各頂点に特徴部１１０５が位置している。図１０のＳ１００８では、基準特徴部１１０２と特徴部１１０５との間で画像における位置を比較し、誤差が発生しているかどうかを判定する処理が行われる。誤差が発生していて許容誤差を超える場合にはＳ１００９で補正値が算出される。例えば、基準特徴部１１０２と特徴部１１０５との間で画像におけるＸ軸とＹ軸における誤差をそれぞれΔｘ，Δｙと表記する。Ｐ方向の補正値をΔＰ、Ｔ方向の補正値をΔＴと表記する。画像処理装置１０２は各補正値を、下記式（１）により算出する。
【数１】
2020010166.tif 000003
式（１）に示すFp()はΔｘに基づくＰ方向についての補正関数であり、Ft()はΔｙに基づくＴ方向についての補正関数である。補正関数として比例関数を使用し、比例制御を行ってもよい。あるいは、ΔＰとΔｘ、ΔＴとΔｙとをそれぞれ対応付ける参照テーブルを用いてFp()およびFt()に関する算出処理を行ってもよい。
【００５９】
画像処理装置１０２は、図８に示すパン方向８０３に記録されたパンニング角度Ｐ、およびチルト方向８０４に記録されたチルティング角度Ｔを補正する。補正後のパンニング角度とチルティング角度はそれぞれＰ＋ΔＰ，Ｔ＋ΔＴである。図１０のＳ１０１０で画像処理装置１０２は撮像装置１０３に対し、Ｐ＋ΔＰ，Ｔ＋ΔＴに基づく補正指令を送信する。
【００６０】
図１１（Ｃ）は、ズーム倍率の再現性が低下した場合の画像例１１０６を示す。複数の特徴部１１０７は、図１０のＳ１００６において画像処理装置１０２が受信した画像の特徴部を矩形状の枠で示している。点線１１０８は複数の特徴部１１０７同士の位置関係を表す。４本の点線１１０８で示される四角形の各頂点に特徴部１１０７が位置している。図１１（Ａ）に示す基準特徴部１１０２と、Ｓ１００６にて画像処理装置１０２が受信した画像の特徴部１１０７との間で、特徴部の大きさおよび特徴部同士の距離に誤差が発生する場合がある。この場合、画像処理装置１０２はズーム倍率の補正を行う。ここで基準特徴部１１０２の大きさをＳ1と表記し、特徴部１１０７の大きさＳ2と表記する。画像処理装置１０２はＳ2とＳ1から、比Ｓ2／Ｓ1を算出してズーム倍率の補正を行う。
【００６１】
あるいは画像処理装置１０２は、図１１（Ａ）に示す隣り合う基準特徴部１１０２同士の距離と、図１１（Ｃ）に示す隣り合う特徴部１１０７同士の距離とを比較してズーム倍率の補正を行う。ここで隣り合う基準特徴部１１０２同士の距離をｄ１と表記すると、距離ｄ１は図１１（Ａ）に点線１１０３で示す基準特徴部１１０２の位置関係から算出することができる。また隣り合う特徴部１１０７同士の距離をｄ２と表記すると、距離ｄ２は図１１（Ｃ）に点線１１０８で示す特徴部１１０７の位置関係から算出することができる。画像処理装置１０２は距離の比ｄ2／ｄ1を算出し、比ｄ2／ｄ1を用いてズーム倍率の補正を行う。
ズーム倍率の補正値をΔＺと表記すると、画像処理装置１０２は、下記式（２）に従って補正値ΔＺを算出する。
【数２】
2020010166.tif 000004
式（２）に示すFzS()は、比Ｓ2／Ｓ1に基づくズーム倍率の補正関数である。Fzd()は比ｄ2／ｄ1に基づくズーム倍率の補正関数である。または、ΔＺと比Ｓ2／Ｓ1とを対応付ける参照テーブル、もしくはΔＺと比ｄ2／ｄ1とを対応付ける参照テーブルを用いてズーム倍率の補正値を算出してもよい。
【００６２】
図８に示すズーム倍率８０５をＺと表記すると、画像処理装置１０２はズーム倍率Ｚを補正してＺ＋ΔＺを算出する。画像処理装置１０２は図１０のＳ１０１０にて撮像装置１０３に対し、Ｚ＋ΔＺに基づく補正指令を送信する。
【００６３】
図１１（Ｄ）は、撮像装置１０３における撮影系２０２の光軸方向に対して、雲台２０１のＰ方向の回転軸が近い場合を示す模式図である。図１１（Ｅ）は撮像装置１０３のロールにより発生し得る、画像１１０９における特徴部の傾きを説明する模式図である。複数の特徴部１１１０を矩形状の枠で示し、点線１１１１によって複数の特徴部同士の位置関係を示している。４本の点線１１１１で示される四角形の各頂点に特徴部１１１０が位置している。
【００６４】
例えば、図１０のＳ１００６にて画像処理装置１０２が受信した画像データの特徴部の傾きに誤差が発生することが起こり得る。図１１（Ｅ）では、点線１１１１で示される特徴部１１１０同士の位置関係が、図１１（Ａ）に点線１１０３で示される基準特徴部１１０２同士の位置関係に対して傾いている例である。この場合、画像処理装置１０２は、複数の基準特徴部１１０２の位置関係（点線１１０３で示す四角形を参照）と、複数の特徴部１１１０の位置関係（点線１１１１で示す四角形を参照）とを比較し、両者の間の傾き角度を算出する。この傾き角度をΔθ1と表記すると、画像処理装置１０２はΔθ1を用いてパンニング角度の補正を行う。
【００６５】
あるいは、画像処理装置１０２は、図１１（Ｂ）に示される複数の特徴部１１０５の位置関係（点線１１１４で示す四角形を参照）と、図１１（Ｅ）に示される複数の特徴部１１１０の位置関係（点線１１１１で示す四角形を参照）とを比較する。画像処理装置１０２は複数の特徴部１１０５と複数の特徴部１１１０との間で傾き角度を算出する。この傾き角度をΔθ2と表記すると、画像処理装置１０２はΔθ2を用いてパンニング角度の補正を行う。例えば、パンニング角度の補正値ΔＰは下記式（３）により算出される。
【数３】
2020010166.tif 000005
式(３)に示すＦp1*()はΔθ1に基づくパンニング角度の補正関数であり、Ｆｐ2*()はΔθ2に基づくパンニング角度の補正関数である。または、ΔＰとΔθ1とを対応付ける参照テーブル、もしくはΔＰとΔθ2とを対応付ける参照テーブルを用いて補正値ΔＰを算出してもよい。
【００６６】
上記の各補正関数についてはシステムの設計時に、システムの設計情報を用いて決定される。またはシステム設定時に撮像装置１０３の駆動系を操作する工程において、実際のパンニング方向、チルティング方向、およびズーム倍率の変化に伴う特徴量の変化量を計測することにより、補正関数を決定する処理が実行される。
【００６７】
本実施例において撮像装置１０３のパンニングやチルティングの駆動時の再現性が低下した場合、ズーム倍率の再現性が低下した場合、ロールの再現性が低下した場合についてそれぞれ個別に説明した。これらのうち２つ以上が同時に発生した場合には、２つ以上の補正処理が同時に実行されるようにシステムが構成される。
【００６８】
本実施例では、計測シーンの撮影位置の再現性が各画像処理工程における所望の計測精度や認識率に対して充分でない場合でも必要十分な補正処理を実行しつつ、画像処理の認識率や計測精度を確保することができる。例えば、撮像装置でワークを撮像した画像に基づき、ワークの種類ごとに異なる搬送車にワークをロボットにより積載する工程では、比較的小さい許容誤差を入力することで画像処理の計測精度を高め、ロボットを正確に制御することができる。一方で、撮像装置が搬送車を撮像して搬送車が停止枠内に存在するかどうかを判定する工程では、比較的大きい許容誤差を入力することで、画像計測を短時間に終了させることができる。本実施例によれば、指定された判定条件にしたがって撮影位置の再現性を確保しつつ、より短時間に画像処理を行うことができる。
【００６９】
[第２実施例]
次に、本発明の第２実施例を説明する。第１実施例ではユーザ操作により基準画像領域を指定する必要があるのに対し、本実施例では基準画像領域を自動的または半自動的に決定可能な画像処理装置について説明する。画像特徴について詳しくないユーザであっても好適な基準画像領域を設定することができ、設定の際の属人性を低減可能である。なお、本実施例に係るシステム構成は第１実施例と同様であるため、既に使用した符号を用いることで、それらの詳細な説明を省略する。
【００７０】
図１２は、本実施例の画像処理装置１０２における、基準特徴の登録処理画面例を示す。図１３は基準特徴の登録処理のシーケンス図である。以下では、第１実施例との相違点を主に説明する。図１２に示す登録画面１２０１では、計測試行のボタン１２０２が追加されている。ユーザはボタン１２０２を操作し、複数回に亘って行われる計測の試行を指示することができる。
【００７１】
ユーザは、基準特徴の登録画面１２０１は見ながらバー６０４〜６０６を操作する。画像処理装置１０２は撮像装置１０３の雲台２０１の駆動制御を行って撮影方向を制御する。撮像装置１０３によって撮像された撮像画像は画像表示領域６０７に表示される。ここで、ユーザがボタン１２０２のクリック操作を行うと、画像処理装置１０２は撮像装置１０３に撮影指令を送信する（図１３：Ｓ１３０１）。撮像装置１０３は所定回数の撮影を行って(Ｓ１３０２)、全ての画像のデータを画像処理装置１０２に送信する(Ｓ１３０３)。
【００７２】
画像処理装置１０２は、撮像装置１０３から受信した画像データから、変動が小さい領域を算出し（Ｓ１３０４）、変動の大きい領域１２０３を黒色で表示する。次に画像処理装置１０２は、変動が小さい領域のうちで特徴量が大きな領域を算出する。特徴量が大きな領域とは、例えばコントラストが明瞭な領域である。画像処理装置１０２は画像表示領域６０７において、特徴量の小さな領域１２０４を灰色で表示する(Ｓ１３０５)。そして画像処理装置１０２は、特徴量が大きな領域１２０５を基準画像領域に決定する(Ｓ１３０６)。
【００７３】
本実施例では、例えば複数回に亘って行われる計測によって取得される画像領域のうち、変動が最も小さい画像領域が自動的に基準画像領域として設定される。あるいは、変動が小さい領域のうちで特徴量が大きな領域を画像処理装置１０２が優先して自動的に基準画像領域として設定する。このような自動的な処理に代えて、変動が小さく特徴量が大きな１個または複数個の領域を基準画像領域の候補としてユーザに提示し、ユーザが選択操作を行う半自動的な処理でもよい。この場合、ユーザに基準画像領域の選択を促す処理が行われる。変動が小さく特徴量が大きな領域１２０５の候補は画像表示領域６０７において、例えば白色表示でユーザに提示され、ユーザは所望の領域を基準画像領域として指定することができる。
【００７４】
本実施例では、画像特徴について詳しくないユーザでも好適な基準画像領域の設定を行うことができる。また、設定の際に属人性を低減し、個人の習熟度に影響されにくい処理を行うことができる。
【００７５】
前記実施例では、制御装置１０１と画像処理装置１０２と撮像装置１０３が各別の構成である実施形態を説明したが、本発明はそのような例に限られない。例えば、画像処理装置１０２に相当する画像処理部と、撮像装置１０３に相当する、撮影方向および撮影画角の変更が可能な撮像部とを１つの装置内に備える撮像装置がある。あるいは、制御装置１０１と画像処理装置１０２と撮像装置１０３にそれぞれ対応する構成部を１つの装置内に備える撮像装置がある。このような撮像装置も本発明の技術的範囲に含まれる。
【００７６】
［その他の実施例］
本発明は、上述の実施形態の１以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける１つ以上のプロセッサがプログラムを読出し実行する処理でも実現可能である。また、１以上の機能を実現する回路（例えば、ＡＳＩＣ）によっても実現可能である。
【符号の説明】
【００７７】
１０１  制御装置
１０２  画像処理装置
１０３  撮像装置
１０４  ロボット
１０５  搬送装置
１０６，１０７  搬送車
１０８，１０９，１１０  ワーク
【図１】
2020010166.tif 000006
【図２】
2020010166.tif 000007
【図３】
2020010166.tif 000008
【図４】
2020010166.tif 000009
【図５】
2020010166.tif 000010
【図６】
2020010166.tif 000011
【図７】
2020010166.tif 000012
【図８】
2020010166.tif 000013
【図９】
2020010166.tif 000014
【図１０】
2020010166.tif 000015
【図１１】
2020010166.tif 000016
【図１２】
2020010166.tif 000017
【図１３】
2020010166.tif 000018