(57)【特許請求の範囲】
【請求項１】
画像データに対して複数の画像処理工程を指定された順序で実行する画像処理プログラムを実装可能な画像処理装置のシステム構築装置であって、
外部機器との通信による入力した撮像指令に基づいて被写体を撮像し、当該撮像により取得した前記画像データを前記外部機器に出力するカメラ装置に前記画像処理装置が設けられ、
前記被写体を撮像して前記画像データを取得する撮像モジュールと、前記画像処理装置である画像処理モジュールと、前記外部機器と通信する外部通信モジュールと、を含む異なる機能を有する３以上のモジュールは、前記撮像モジュールと前記画像処理モジュールとの間、前記撮像モジュールと前記外部通信モジュールとの間、および前記画像処理モジュールと前記通信モジュールとの間で共通化された共通信号によって互いに通信可能な通信プログラムをそれぞれ実装され、
前記カメラ装置は、３以上の前記モジュールのうち、少なくとも前記撮像モジュール、前記画像処理モジュール、および前記外部通信モジュールを含むように選択された複数の前記モジュールを着脱可能に連結して構成され、
前記システム構築装置は、
複数種類の前記画像処理プログラムおよび複数の前記画像処理工程を選択可能に表示する表示部と、
所定の前記画像処理プログラムが選択された場合に、当該画像処理プログラムが実行する複数の前記画像処理工程および実行順を例示して、前記表示部に表示された前記画像処理工程の選択案内を行う選択案内部と、
前記カメラ装置と通信可能に接続され、前記外部通信モジュールを介して前記画像処理モジュールと通信する通信部と、
前記表示部において選択された前記画像処理プログラムを、前記通信部を介して前記画像処理モジュールに実装するプログラム実装部と、
を備え、
前記プログラム実装部は、前記カメラ装置の用途に応じて選択された前記画像処理プログラムを実装することにより、前記カメラ装置が前記撮像指令に基づいて前記被写体を撮像した場合に、当該撮像により取得した画像データに対して前記画像処理モジュールによって前記画像処理プログラムが実行され、前記カメラ装置から前記外部機器へと画像処理後の前記画像データを出力可能とする画像処理装置のシステム構築装置。
【請求項２】
請求項１において、
前記プログラム実装部は、前記画像処理モジュールに前記画像処理プログラムを実装することにより、前記画像処理モジュールが前記撮像モジュールの構成に係るハードウェア情報を入力し、当該ハードウェア情報に応じた画像処理の実行を可能とする画像処理装置のシステム構築装置。
【請求項３】
請求項１または２において、
前記プログラム実装部は、前記画像処理モジュールに前記画像処理プログラムを実装することにより、前記画像処理モジュールが外部通信モジュールの構成に係るハードウェア情報を入力し、画像処理を実行した前記画像データを前記ハードウェア情報に応じて前記外部通信モジュールに転送可能とする画像処理装置のシステム構築装置。
【請求項４】
請求項１〜３の何れか一項において、
前記外部通信モジュールは、通信可能に接続される前記外部機器によって規定される通信プロトコルまたは通信規格に準拠し、且つ規定のデータ伝送路に対応した通信手段によって前記外部機器との間で通信可能な外部通信機能を有し、
前記プログラム実装部は、前記外部通信機能を実行するプログラムを前記モジュールに転送する画像処理装置のシステム構築装置。
【請求項５】
請求項１〜４の何れか一項において、
前記表示部において所定の前記画像処理工程が選択された場合に、当該画像処理工程の処理内容を説明する処理説明部をさらに備える画像処理装置のシステム構築装置。
【請求項６】
請求項１〜５の何れか一項において、
前記表示部において所定の前記画像処理工程が選択された場合に、当該画像処理工程に係るパラメータの設定を受け付けるパラメータ設定部をさらに備える画像処理装置のシステム構築装置。
【請求項７】
請求項６において、
前記パラメータ設定部で前記パラメータが変更された場合に、当該パラメータに設定されたものと仮定して、前記画像データに対して前記画像処理工程を実行したシミュレーション画像を前記表示部に表示させる画像処理工程シミュレーション部をさらに備える画像処理装置のシステム構築装置。
【請求項８】
請求項１〜７の何れか一項において、
前記表示部において一以上の前記画像処理工程が選択された場合に、当該画像処理工程を指定された実行順で実行するものと仮定して、前記画像データに対して指定された前記実行順で前記画像処理工程を実行したシミュレーション画像を前記表示部に表示させるプログラムシミュレーション部をさらに備える画像処理装置のシステム構築装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像処理装置の用途に応じた画像処理プログラムを実装するシステム構築装置に関するものである。
【背景技術】
【０００２】
画像処理装置は、カメラ装置等により取得された画像データに対して所定の画像処理を実行するものである。ここで、例えば、特許文献１，２には、画像データを用いた制御を行う電子部品装着装置が開示されている。特許文献１の電子部品装着装置によると、カメラ装置により取得した画像データによって基板認識を行い、電子部品を吸着したノズルの位置決め精度の向上を図っている。このような電子部品装着装置において、より高精度に制御を行うためには、取得した画像データを基板認識等の用途に応じた画像処理を行うことが好適である。そこで、特許文献２には電子部品を吸着したノズルを撮像して取得した画像データを制御系内に設けられた画像処理装置により画像処理を行い、ノズルによる吸着状態を判別することが記載されている。
【０００３】
また、このような画像処理では、より好適な処理結果を得るために、または画像データを取得するカメラ装置の仕様や設置環境などに対応するために、複数の画像処理工程を要することがある。そのため、画像処理装置には、予め複数の画像処理工程を指定された順序で実行し、要求される処理機能に応じた画像処理プログラムがシステム構築装置により実装されている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０００−２９４９９２号公報
【特許文献２】特開２０１０−２８７７７６号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、画像処理プログラムを実装するシステム構築では、実行可能な画像処理工程の種類も多岐に亘り、所望の処理結果を得るための画像処理工程の選択および実行順の指定には専門的な知識を要する。また、画像処理プログラムは、例えば画像処理装置に設けられたＰＬＤなどの回路素子に実装されるが、プログラムの実装に使用される専用のソフトウェアの操作を必要とされる。そのため、画像処理装置には用途の多様化に伴って要求される処理機能も様々であることから、要求される処理結果を得られるシステム構築の簡易化が望まれている。
【０００６】
本発明は、上記課題を鑑みてなされたものであり、要求される処理機能に応じた画像処理プロラムの実装を効率的に行うことが可能な画像処理装置のシステム構築装置を提供することを目的とする。
【課題を解決するための手段】
【０００７】
上述した課題を解決するために、請求項１に係る発明によると、画像データに対して複数の画像処理工程を指定された順序で実行する画像処理プログラムを実装可能な画像処理装置のシステム構築装置であって、外部機器との通信による入力した撮像指令に基づいて被写体を撮像し、当該撮像により取得した前記画像データを前記外部機器に出力するカメラ装置に前記画像処理装置が設けられる。前記被写体を撮像して前記画像データを取得する撮像モジュールと、前記画像処理装置である画像処理モジュールと、前記外部機器と通信する外部通信モジュールと、を含む異なる機能を有する３以上のモジュールは、前記撮像モジュールと前記画像処理モジュールとの間、前記撮像モジュールと前記外部通信モジュールとの間、および前記画像処理モジュールと前記通信モジュールとの間で共通化された共通信号によって互いに通信可能な通信プログラムをそれぞれ実装される。前記カメラ装置は、３以上の前記モジュールのうち、少なくとも前記撮像モジュール、前記画像処理モジュール、および前記外部通信モジュールを含むように選択された複数の前記モジュールを着脱可能に連結して構成される。
前記システム構築装置は、複数種類の前記画像処理プログラムおよび複数の前記画像処理工程を選択可能に表示する表示部と、所定の前記画像処理プログラムが選択された場合に、当該画像処理プログラムが実行する複数の前記画像処理工程および実行順を例示して、前記表示部に表示された前記画像処理工程の選択案内を行う選択案内部と、前記カメラ装置と通信可能に接続され、前記外部通信モジュールを介して前記画像処理モジュールと通信する通信部と、前記表示部において選択された前記画像処理プログラムを、前記通信部を介して前記画像処理モジュールに実装するプログラム実装部と、を備える。前記プログラム実装部は、前記カメラ装置の用途に応じて選択された前記画像処理プログラムを実装することにより、前記カメラ装置が前記撮像指令に基づいて前記被写体を撮像した場合に、当該撮像により取得した画像データに対して前記画像処理モジュールによって前記画像処理プログラムが実行され、前記カメラ装置から前記外部機器へと画像処理後の前記画像データを出力可能とする。
【００１０】
請求項２に係る発明によると、請求項１において、前記プログラム実装部は、前記画像処理モジュールに前記画像処理プログラムを実装することにより、前記画像処理モジュールが前記撮像モジュールの構成に係るハードウェア情報を入力し、当該ハードウェア情報に応じた画像処理の実行を可能とする。
請求項３に係る発明によると、請求項１または２において、前記プログラム実装部は、前記画像処理モジュールに前記画像処理プログラムを実装することにより、前記画像処理モジュールが外部通信モジュールの構成に係るハードウェア情報を入力し、画像処理を実行した前記画像データを前記ハードウェア情報に応じて前記外部通信モジュールに転送可能とする。
請求項４に係る発明によると、請求項１〜３の何れか一項において、前記外部通信モジュールは、通信可能に接続される前記外部機器によって規定される通信プロトコルまたは通信規格に準拠し、且つ規定のデータ伝送路に対応した通信手段によって前記外部機器との間で通信可能な外部通信機能を有し、前記プログラム実装部は、前記外部通信機能を実行するプログラムを前記モジュールに転送する。
請求項５に係る発明によると、請求項１〜４の何れか一項において、前記表示部において所定の前記画像処理工程が選択された場合に、当該画像処理工程の処理内容を説明する処理説明部をさらに備える。
【００１１】
請求項６に係る発明によると、請求項１〜５の何れか一項において、前記表示部において所定の前記画像処理工程が選択された場合に、当該画像処理工程に係るパラメータの設定を受け付けるパラメータ設定部をさらに備える。
【００１２】
請求項７に係る発明によると、請求項６において、前記パラメータ設定部で前記パラメータが変更された場合に、当該パラメータに設定されたものと仮定して、前記画像データに対して前記画像処理工程を実行したシミュレーション画像を前記表示部に表示させる画像処理工程シミュレーション部をさらに備える。
【００１３】
請求項８に係る発明によると、請求項１〜７の何れか一項において、前記表示部において一以上の前記画像処理工程が選択された場合に、当該画像処理工程を指定された実行順で実行するものと仮定して、前記画像データに対して指定された前記実行順で前記画像処理工程を実行したシミュレーション画像を前記表示部に表示させるプログラムシミュレーション部をさらに備える。
【発明の効果】
【００１４】
請求項１に係る発明によると、システム構築装置の選択案内部は、選択された画像処理プログラムが実行する複数の画像処理工程および実行順を例示するものとしている。これにより、画像処理プログラムの実装において、選択案内部により画像処理工程の選択案内が行われることになり、操作者はこの例示を参考にして画像処理工程を適宜選択することができる。よって、要求される処理機能に応じた画像処理プログラムの実装を効率的に行うことが可能となる。
【００１５】
また、システム構築装置は、カメラ装置に設けられた画像処理装置を対象として画像処理プログラムの実装を行うものとしている。例えば、画像処理装置による処理結果を上位装置であるＦＡ機械の制御装置が使用する場合には、カメラ装置に画像処理装置を設ける構成とすることで制御装置の負荷を軽減することができる。そこで、システム構築装置は、カメラ装置と通信する通信部と、画像処理プログラムを実装するプログラム実装部を備えるものとし、通信接続されたカメラ装置の画像処理装置を対象としたシステム構築が可能となる。
【００１６】
また、カメラ装置は、異なる機能を有する３以上のモジュールから選択された複数のモジュールを着脱可能に連結して構成される。そのため、このようなカメラ装置によれば、複数のモジュールを要求に応じて連結することが可能となり、種々の用途に容易に適用することができる。また、カメラ装置を構成する画像処理モジュールは、プログラムを実装可能な画像処理装置である。そして、システム構築装置は、通信部が外部通信モジュールを介して画像処理モジュールと通信し、プログラム実装部が画像処理モジュールに画像処理プログラムを実装する構成としている。これにより、カメラ装置の画像処理モジュールが実装された画像処理プログラムによって所定の処理機能を発揮するようにシステム構築することができる。
【００１７】
請求項５に係る発明によると、処理説明部は、表示部において選択された画像処理工程の処理内容を説明するようにしている。上述したように、画像処理装置が実行可能な画像処理工程は多くの種類があり、個々の工程の内容を把握することは容易でない。そこで、選択された画像処理工程の処理内容を説明するように、例えば表示部に説明文や画像処理前後のサンプル画像を明示することで、操作者は処理内容を容易に把握することが可能となる。これにより、単に選択可能に表示される場合と比較して、より操作性を向上させることができるとともに、画像処理工程を誤って選択することを防止できる。
【００１８】
請求項６に係る発明によると、パラメータ設定部は、表示部において選択された画像処理工程に係るパラメータの設定を受け付けるようにしている。画像処理プログラムによって実行される個々の画像処理工程には、それぞれ処理に必要なパラメータを設定する必要がある。そこで、パラメータ設定部により画像処理工程の選択と並行してパラメータを設定することが可能となる。従って、より効率的に画像処理装置のシステム構築を行うことができる。
【００１９】
請求項７に係る発明によると、画像処理工程シミュレーション部は、画像データに対して画像処理工程を実行したシミュレーション画像を表示部に表示させるものとしている。各画像処理工程は、処理に必要なパラメータを設定されるが、その設定が適正であるか否かを予め判定されていることが望ましい。そのため、画像処理工程シミュレーション部により変更されたパラメータに設定されたものと仮定して、仮想的な処理結果をシミュレーションする。これにより、現在のところ設定されているパラメータが、当該画像処理工程において妥当であるかを判断することができる。よって、パラメータの変更と画像処理工程のシミュレーションを適宜繰り返すことにより、適切なパラメータを設定することができる。また、画像処理工程シミュレーション部は、仮想的な画像処理工程の処理結果を得るためのものであり、画像処理工程を実行する対象の画像データとしては、予め用意されているサンプル画像としてもよいし、カメラ装置と通信連結されている場合には当該カメラ装置による撮像画像としてもよい。
【００２０】
請求項８に係る発明によると、プログラムシミュレーション部は、画像データに対して指定された実行順で画像処理工程を実行したシミュレーション画像を表示部に表示させるものとしている。画像処理装置は種々の画像処理の実行が可能であるが、画像処理工程の実行順によって結果が異なることがある。そのため、プログラムシミュレーション部により選択された画像処理工程を指定された実行順で実行したものと仮定して、仮想的な処理結果をシミュレーションする。これにより、現在のところ選択されている画像処理工程が、画像処理装置に要求される画像処理として妥当であるかを判断することができる。よって、画像処理工程を適切に選択することができるので、画像処理装置のシステム構築に要する工数を低減できる。また、プログラムシミュレーション部は、仮想的な画像処理プログラムの実行結果を得るためのものであり、複数の画像処理工程を実行する対象の画像データとしては、予め用意されているサンプル画像としてもよいし、カメラ装置と通信連結されている場合には当該カメラ装置による撮像画像としてもよい。
【図面の簡単な説明】
【００２１】
【図１】実施形態におけるカメラ装置の使用状態の一例を示す概念図である。
【図２】複数のモジュールを選択的に連結して構成されたカメラ装置の模式図である。
【図３】カメラ装置とシステム構築装置を示すブロック図である。
【図４】システム構築装置における表示画面を示す図である。
【図５】画像処理のシミュレーションの状態を示す図である。（ａ）は画像処理をノイズ除去、二値化の順に実行した結果を示し、（ｂ）は画像処理を二値化、ノイズ除去の順に実行した結果を示している。
【図６】エッジ検出を実行する場合の画像処理工程の選択案内を示した図である。
【図７】ブロブ解析を実行する場合の画像処理工程の選択案内を示した図である。
【図８】画像処理工程の処理内容の表示およびパラメータの受け付けを示す図である。
【図９】カメラ装置のシステム構築の流れを示すフローチャートである。
【図１０】参考例におけるカメラ装置の使用状態の一例を示す概念図である。
【図１１】複数のモジュールを選択的に連結して構成されたカメラ装置の模式図である。
【図１２】情報表示モジュールおよび制御装置を示す平面図である。
【図１３】情報表示モジュールの表示灯によるカメラ情報の表示例の説明図である。
【図１４】参考例の変形態様における情報表示モジュールの表示灯によるカメラ情報の表示例の説明図である。
【発明を実施するための形態】
【００２２】
以下、本発明のカメラ装置のシステム構築装置を具体化した実施形態について図面を参照して説明する。
【００２３】
＜実施形態＞
（カメラ装置１０の構成）
本発明のシステム構築装置２０は、カメラ装置１０に設けられた画像処理装置（画像処理モジュール１２）を対象として画像処理プログラムの実装を行う。ここでは、先ず、カメラ装置１０の構成について、図１〜図３を参照して説明する。本実施形態において、カメラ装置１０は、電子部品装着装置１に組み込まれている構成としている。この電子部品装着装置１は、例えば、集積回路の製造工程において、プリント基板ＣＢに複数の電子部品を実装する装置である。また、プリント基板ＣＢは、クリームハンダ印刷機により電子部品の装着位置にハンダを塗布され、複数の装着装置を順に搬送されて電子部品が装着される。その後に、電子部品が装着されたプリント基板ＣＢは、リフロー炉に搬送されてハンダ付けされることにより集積回路を構成する。
【００２４】
この電子部品装着装置１は、図１に示すように、制御装置２と、カメラ装置１０を備えている。制御装置２は、ＣＰＵおよびメモリなどから構成され、電子部品装着装置１に対する指令値やカメラ装置１０およびセンサなどから出力される情報を入力する。そして、制御装置２は、これらの指令値や各種情報に基づいて、プリント基板ＣＢに電子部品が適切に装着されるように電子部品装着装置１の各軸モータや各装置などを制御する。また、本実施形態において、カメラ装置１０は、電子部品装着装置１が電子部品を装着する際に、コンベアなどの搬送装置によって規定位置まで搬送されたプリント基板ＣＢを撮像する基板カメラとして用いられている。
【００２５】
より詳細には、基板カメラであるカメラ装置１０は、制御装置２との通信により入力した撮像指令に基づいて、規定位置まで搬送されてクランプされたプリント基板ＣＢを撮像する。そして、カメラ装置１０は、取得した画像データに対して所定の画像処理を実行して制御装置２に出力する。次に、制御装置２は、画像データからプリント基板ＣＢの対角する二隅に設けられた基板マークを基準位置として認識する。これにより、制御装置２は、電子部品が設定された座標値に装着することが可能となる。つまり、プリント基板ＣＢのクランプの際に生じる位置誤差を画像データに基づいて補正することで、部品実装の高精度化を図っている。このように、本実施形態においては、制御装置２はカメラ装置１０の上位に位置する外部機器であって、プリント基板ＣＢはカメラ装置１０によって撮像される被写体である。
【００２６】
この他に、カメラ装置１０は、例えば、部品実装ヘッドの吸着ノズルに吸着された電子部品の状態を撮像する部品カメラなどにも用いることが可能である。さらには、複数の被写体を撮像するために複数の撮像素子を有する複眼式のカメラ装置１０として電子部品装着装置１に用いることもできる。何れの場合にも、カメラ装置１０は、上位装置である制御装置２によって動作を制御されることになる。また、カメラ装置１０は、電子部品が実装されたプリント基板ＣＢを検査する基板検査装置に組み込むことも可能である。この場合には、カメラ装置１０は、プリント基板ＣＢを撮像する検査カメラとして用いられる。このように、カメラ装置１０は、基板生産以外の用途にも用いることが可能である。この場合には、汎用のパソコンや専用の画像処理ボードなどが上位装置として用いられる。
【００２７】
カメラ装置１０は、異なる機能を有する３以上のモジュールから選択されたモジュールを着脱可能に連結して構成されている。本実施形態では、カメラ装置１０は、図２に示すように、撮像モジュール１１と、画像処理モジュール１２と、外部通信モジュール１３と、自律動作モジュール１４と、光源モジュール１５と、情報表示モジュール１６を含むモジュールのうち、撮像モジュール１１、画像処理モジュール１２、および外部通信モジュール１３を一つずつ選択し、この順で連結して構成されている。
【００２８】
また、例示している各モジュール１１〜１６は、互いに異なる機能を有している。そして、各モジュール１１〜１６には、同様の機能を有する複数種類のタイプが用意されている。また、各モジュール１１〜１６は、共通化された共通信号によってお互いに通信可能な通信部を有し、着脱可能な連結部が設けられた同形状の筐体に収容されている。そして、カメラ装置１０は、各モジュール１１〜１５から用途に応じて選択し、自由に組み合わせることが可能となっている。また、同種のモジュールを複数連結することも可能である。各モジュール１１〜１６の機能および構成の詳細については後述する。
【００２９】
撮像モジュール１１は、被写体であるプリント基板ＣＢを撮像して画像データを取得するモジュールである。この撮像モジュール１１は、図３に示すように、ＰＬＤ１１ａと、メモリ部１１ｂと、イメージセンサ１１ｃを有している。ＰＬＤ１１ａは、撮像モジュール１１に割り当てられた撮像機能を実行するプログラムを実装可能な回路素子である。ＰＬＤ１１ａは、撮像モジュール１１がカメラ装置１０を構成した後においても、上記のプログラムに相当する論理回路を定義可能な集積回路である。より具体的には、ＦＰＧＡ（Field Programmable Gate Array）、ＣＰＬＤ（Complex Programmable Logic Device）などに相当する。
【００３０】
そして、ＰＬＤ１１ａは、カメラ装置１０の撮像モジュール１１として必要な機能を有するように、システム構築装置２０によってプログラムが実装される。ＰＬＤ１１ａに実装されるプログラムは、イメージセンサ１１ｃを動作させるデバイスドライバ、連結される画像処理モジュール１２と通信を行う通信プログラムなどである。また、この通信プログラムは、各モジュール１１〜１６の間で共通化された共通信号によって互いに通信可能としている。従って、ＰＬＤ１１ａは、撮像モジュール１１における通信部としても機能している。
【００３１】
メモリ部１１ｂは、撮像モジュール１１の構成に係るハードウェア情報を記憶するフラッシュメモリである。上記のハードウェア情報は、具体的には、イメージセンサ１１ｃの画素数や画像転送速度などが含まれる。イメージセンサ１１ｃは、ＣＣＤやＣＭＯＳ等の撮像素子である。このイメージセンサ１１ｃは、その撮像面が撮像モジュールに設けられたレンズの光軸に対して直角となるように配置されている。そして、イメージセンサ１１ｃは、レンズにより撮像面に結像された光の強弱に応じて発生される信号電荷によってデジタル信号に変換し、被写体を撮像する。そして、イメージセンサ１１ｃから出力されるデジタル信号に基づいてＰＬＤ１１ａが画像データに変換している。本実施形態においては、撮像モジュール１１は、レンズとイメージセンサ１１ｃを一組だけ有する単眼式の構成としている。
【００３２】
画像処理モジュール１２は、撮像モジュール１１が取得した画像データに対して画像処理を実行するモジュールであって、本発明の「画像処理装置」に相当する。この画像処理モジュール１２は、図３に示すように、ＰＬＤ１２ａと、メモリ部１２ｂを有している。ＰＬＤ１２ａは、画像処理モジュール１２に割り当てられた画像処理機能を実行するプログラムを実装可能な回路素子である。画像処理モジュール１２のＰＬＤ１２ａは、撮像モジュール１１のＰＬＤ１１ａと同様であるため、詳細な説明を省略する。
【００３３】
画像処理モジュール１２のＰＬＤ１２ａに実装されるプログラムは、基板カメラとしての画像処理プログラム、連結される撮像モジュール１１および外部通信モジュール１３と通信を行う通信プログラムなどである。この画像処理プログラムは、画像データに対して複数の画像処理工程を指定された順序で実行するプログラムである。本実施形態においては、カメラ装置１０から画像データを入力した制御装置２が基板マークを基準位置として認識できるように複数の画像処理工程を実行する。この画像処理工程は、例えば、画像データの二値化、フィルタリング、色相抽出などであって、必要に応じて選択的に実装される。また、通信プログラムは、撮像モジュール１１のＰＬＤ１１ａに実装されたものと同様に、共通信号によって通信を行うものである。従って、ＰＬＤ１２ａは、画像処理モジュール１２における通信部としても機能している。
【００３４】
メモリ部１２ｂは、書き換えによる記憶内容の変更が可能であり、また電源が切れても記憶内容を保持する不揮発性のフラッシュメモリである。メモリ部１２ｂは、例えば、ＰＬＤ１２ａによる画像処理の際に、一時的に画像データを保持するなど、補助的な記憶部として使用される。
【００３５】
外部通信モジュール１３は、外部機器である制御装置２と通信するモジュールである。この外部通信モジュール１３は、図３に示すように、ＰＬＤ１３ａと、メモリ部１３ｂと、インターフェイスＩＣ１３ｃを有している。ＰＬＤ１３ａは、外部通信モジュール１３に割り当てられた外部通信機能を実行するプログラムを実装可能な回路素子である。外部通信モジュール１３のＰＬＤ１３ａは、撮像モジュール１１のＰＬＤ１１ａと同様であるため、詳細な説明を省略する。
【００３６】
外部通信モジュール１３のＰＬＤ１３ａに実装されるプログラムは、インターフェイスＩＣ１３ｃを動作させるデバイスドライバ、連結される画像処理モジュールと通信を行う通信プログラムなどである。また、この通信プログラムは、撮像モジュール１１のＰＬＤ１１ａに定義されたものと同様に、共通信号によって通信を行うものである。従って、ＰＬＤ１３ａは、外部通信モジュール１３における通信部としても機能している。
【００３７】
メモリ部１３ｂは、外部通信モジュール１３の構成に係るハードウェア情報を記憶するフラッシュメモリである。上記のハードウェア情報は、具体的には、インターフェイスＩＣ１３ｃの転送速度や転送バス幅などがある。インターフェイスＩＣ１３ｃは、制御装置２と通信する所定の通信機能を有する電子回路である。このようなインターフェイスＩＣ１３ｃとしては、種々の通信プロトコルや通信規格などに応じて設計され、パラレルインターフェイスや同軸ケーブル、ＵＳＢなどのデータ伝送路に対応した通信形態を有している。
【００３８】
自律動作モジュール１４は、撮像モジュール１１が取得する画像データなどに基づいて、カメラ装置１０における所定の動作を自動で行う機能を割り当てられたモジュールである。このような機能として、例えば、被写体の動きに合わせてカメラ装置１０の撮像方向を変える自動追従機能、被写体の特定マークを認識して撮像モジュール１１に撮像指令を出力する自動撮像機能などがある。そして、自律動作モジュール１４は、何れの機能を有する場合においても、共通信号によって他のモジュールと通信可能な通信部を有している。この自律動作モジュール１４の通信部は、自律動作機能を実行するＰＬＤやマイコンなどに通信プログラムを実装するものとしてもよい。
【００３９】
光源モジュール１５は、上位装置である制御装置２の制御指令などに基づいて、カメラ装置１０が撮像を行う際に被写体を照射する照明機能を割り当てられたモジュールである。このような光源モジュール１５には、ＬＥＤや電球などを光源とし、照度センサによる測定値に応じて照射量を調整する機能を有するものとしてもよい。そして、光源モジュール１５は、何れの構成により照明機能を有する場合においても、共通信号によって他のモジュールと通信可能な通信部を有している。この光源モジュール１５の通信部は、照明機能を実行するＰＬＤやマイコンなどに通信プログラムを実装するものとしてもよい。
【００４０】
情報表示モジュール１６は、カメラ装置１０に係る種々の情報、例えば電源状態、撮像処理の状態、画像処理の状態、各種動作エラーなどを含むカメラ情報の表示機能を割り当てられたモジュールである。このような情報表示モジュール１６には、ＬＥＤや液晶ディスプレイなどを表示部とし、制御装置２または各モジュールから入力される信号に基づいて、所定のカメラ情報を表示部に表示させる。情報表示モジュール１６は、例えば、モジュールの筐体の外周面に操作者が視認できるように複数のＬＥＤを配置される。そして、カメラ装置１０に発生している特定の動作エラーに応じて、複数のＬＥＤを特定パターンで点灯させ、操作者に動作エラーの認識と対応を促すようにしてもよい。そして、情報表示モジュール１６は、何れの構成により情報表示機能を有する場合においても、共通信号によって他のモジュールと通信可能な通信部を有している。この情報表示モジュール１６の通信部は、情報表示を実行するＰＬＤやマイコンなどに通信プログラムを実装するものとしてもよい。
【００４１】
上記のような構成からなるカメラ装置１０は、例えば、制御装置２による撮像指令に基づいて、プリント基板ＣＢを撮像して、画像処理プログラムを実行した画像データを制御装置２に出力する。このように、カメラ装置１０は、電子部品装着装置１において基板カメラとして用いられている。ここで、カメラ装置１０は、撮像指令を入力すると、各モジュール１１〜１３のＰＬＤ１１ａ，１２ａ，１３ａが所定のプログラムを実行して、被写体の撮像、画像処理、および画像データの出力を実行する。この時、各モジュール１１〜１３のＰＬＤ１１ａ，１２ａ，１３ａは、予め設定された共通信号によって互いに通信している。より具体的には、ＰＬＤ１１ａ，１２ａ，１３ａは、例えば、バス形式で接続され、所定の転送速度により同期または非同期のシリアル通信を行う。このような構成とすることで、種々のモジュールを選択的に連結してカメラ装置を構成しても、各モジュールの間での通信を可能としている。
【００４２】
さらに、画像処理モジュール１２は、カメラ装置１０の電源がオンになると、連結される撮像モジュール１１のメモリ部１１ｂに記憶されたハードウェア情報を入力する。これにより、画像処理モジュール１２は、撮像モジュール１１の構成に係るハードウェア情報に応じて、所定の画像転送速度で画像データを入力し、所定の画素数に対応した画像処理を実行する。同様に、画像処理モジュール１２は、連結されている外部通信モジュール１３のメモリ部１３ｂに記憶されているハードウェア情報を入力する。これにより、画像処理モジュール１２は、外部通信モジュール１３の構成に係るハードウェア情報に応じて、画像処理を実行した画像データを外部通信モジュール１３に転送する。
【００４３】
（システム構築装置２０の構成）
続いて、システム構築装置２０の構成について、図３〜図８を参照して説明する。システム構築装置２０は、画像処理装置を含むカメラ装置１０の用途などに応じて機能を実装するものであり、複数のモジュールにより構成されるカメラ装置１０を対象とした専用ソフトウェアを含んでいる。ここでは、画像処理モジュール１２に対する画像処理プログラムの実装について詳述する。このシステム構築装置２０は、図３に示すように、通信部２１と、プログラム実装部２２と、表示部２３と、選択案内部２４と、処理説明部２５と、パラメータ設定部２６と、画像処理工程シミュレーション部２７と、プログラムシミュレーション部２８とを備える。
【００４４】
通信部２１は、カメラ装置１０を構成する外部通信モジュール１３と通信可能に接続される。この通信部２１は、本実施形態においては、外部通信モジュール１３が外部機器である制御装置２と通信する通信手段を用いて、カメラ装置１０と通信接続されている。つまり、選択された外部通信モジュール１３が有するＵＳＢなどのデータ伝送路により、カメラ装置１０と通信部２１が接続される。
【００４５】
プログラム実装部２２は、表示部２３において画像処理モジュール１２に対して選択された画像処理プログラム（以下、単に「プログラム」とも称する）を、画像処理モジュール１２のＰＬＤ１２ａに通信部２１を介して転送する。より具体的には、プログラム実装部２２は、画像処理モジュール１２に対してＦＰＧＡなどの集積回路であるＰＬＤ１２ａにプログラムに相当する論理回路を定義する。これにより、ＰＬＤ１２ａは、所定の画像処理機能を発揮するように駆動することが可能となる。また、本実施形態においては、画像処理モジュール１２がＰＬＤ１２ａを有する構成としたが、その他に例えば画像処理モジュール１２の一部または全部がＰＬＤに代えてマイコンを有することもある。このような場合に、プログラム実装部２２は、マイコンに収容された不揮発性メモリにプログラムを記憶させることにより、当該マイコンが所定の機能を発揮するようにしている。
【００４６】
表示部２３は、図４に示すように、複数種類の画像処理プログラムおよび複数の画像処理工程を選択可能に表示する。表示部２３に表示される画像処理プログラムないし画像処理工程は、システム構築装置２０が取得した画像処理モジュール１２に係るモジュール情報に基づいている。このモジュール情報には、画像処理モジュール１２の機能種別および当該モジュールのハードウェア情報が含まれ、メモリ部１２ｂに記憶されているものである。
【００４７】
また、本実施形態において、表示部２３は、ＰＬＤ１２ａに実装可能な画像処理プログラムおよび画像処理工程をアイコンとして表示するプログラム表示領域Ｆｐと、選択された画像処理工程のアイコンを指定された実行順で表示する選択表示領域Ｆｓと、を有している。ここで、表示部２３は、プログラム表示領域Ｆｐに画像処理の最終工程を画像処理プログラムとして表示しており、画像処理プログラムと画像処理工程との表示を兼ねるようにしている。これは、例えば、二値化処理は、種々の画像処理プログラムにおける一の画像処理工程として選択される場合もあるが、二値化処理そのものを最終工程として複数の画像処理工程が選択されて画像処理プログラムを構成する場合もあるためである。そして、選択表示領域Ｆｓに表示された一連の画像処理工程が、現在のところＰＬＤ１２ａに実装される予定の画像処理プログラムを示している。
【００４８】
また、プログラム表示領域Ｆｐに表示される画像処理工程は、それぞれの画像処理工程を記号化されたアイコンとして表示される。そして、このアイコンをプログラム表示領域Ｆｐから選択表示領域Ｆｓにドラッグアンドドロップすることで、プログラム実装部２２は、当該アイコンに対応する画像処理工程が選択されたものとみなす。反対に、アイコンを選択表示領域Ｆｓからプログラム表示領域Ｆｐにドラッグアンドドロップ、または選択表示領域Ｆｓのアイコンを削除することで、プログラム実装部２２は、当該アイコンに対応する画像処理工程が選択解除されたものとみなす。
【００４９】
ここで、複数の画像処理工程が選択された場合には、選択表示領域Ｆｓにおいて、選択された画像処理を指定された実行順に表示している。ここで、画像処理モジュール１２は、画像データに対して複数の画像処理を所定の順序で実行することがある。これは、同様の画像処理を実行する場合においても、その実行順によっては結果が異なるためである。例えば、図５（ａ）に示すように、ある画像データに対して、ノイズ除去処理を実行した後に、二値化処理を実行すると、最右図のような画像データが得られる。一方で、図５（ｂ）に示すように、同じ画像データに対して、二値化処理を実行した後に、ノイズ除去処理を実行すると、最右図のような画像データが得られる。このように、図５（ａ），（ｂ）の最右図に示されるように、それぞれ画像処理で得られる結果が異なることから、選択表示領域Ｆｓでは、選択された複数の画像処理を実行順に表示することで、その実行順を目視可能にしている。
【００５０】
選択案内部２４は、所定の画像処理プログラムに対する画像処理工程の選択案内を行うことにより、システム構築における操作者の作業を補助するものである。そのため、選択案内部２４は、所定の画像処理プログラムが選択された場合に、その画像処理プログラムが実行する複数の画像処理工程および実行順を例示する。例えば、選択案内部２４は、「エッジ検出」が選択された場合に、図６に示すように、エッジ検出を最終工程とするプログラムが実行する複数の画像処理工程および実行順を例示する。ここでは、エッジ検出に対して、ノイズ除去処理（フィルタ）、二値化処理、エッジ検出の３工程が表示の順に実行するように例示している。その他に、例えば、選択案内部２４は、「ブロブ解析」が選択された場合に、図７に示すように、ブロブ解析を最終工程とするプログラムが実行する複数の画像処理工程および実行順を例示する。個々では、ブロブ解析に対して、ノイズ除去処理、二値化処理、ラベリング処理、ブロブ解析処理の４工程が表示の順に実行するように例示している。
【００５１】
処理説明部２５は、表示部２３において所定の画像処理工程が選択された場合に、その画像処理工程の処理内容を説明するものである。これは、画像処理モジュール１２が実行可能な画像処理工程は多くの種類があり、個々の工程の内容を把握することは容易でないためである。そこで、処理説明部２５は、例えば表示部２３において「二値化処理」が選択された場合に、図８に示すように、二値化処理の処理内容を説明文および図（二値化処理前後のサンプル画像など）を用いて説明する。これにより、操作者は、当該画像処理がどのような処理を行うのかを把握することが可能となる。
【００５２】
パラメータ設定部２６は、表示部２３において所定の画像処理工程が選択された場合に、その画像処理工程に係るパラメータを受け付ける。画像処理プログラムによって実行される個々の画像処理工程には、それぞれ処理に必要なパラメータを設定する必要がある。そこで、パラメータ設定部２６は、画像処理工程の選択と並行してパラメータの設定を可能としている。つまり、パラメータ設定部２６は、例えば表示部２３において「二値化処理」が選択された場合に、図８に示すように、二値化処理に係るパラメータ、即ち二値化レベル（閾値）を受け付ける。これにより、操作者は、当該画像処理の内容を確認しながら、パラメータを適宜設定することが可能となる。
【００５３】
画像処理工程シミュレーション部２７は、パラメータ設定部２６でパラメータが変更された場合に、そのパラメータに設定されたものと仮定して、画像データに対して画像処理工程を実行したシミュレーション画像を表示部に表示させる。画像処理工程シミュレーション部２７は、各画像処理工程に設定されるパラメータが妥当であるか否かを予め判断することを目的としている。この画像処理工程シミュレーションは、パラメータ設定部２６によるパラメータの設定を受け付けに連動して画像データに対して実行するようにしてもよい。また、画像処理工程シミュレーション部２７は、仮想的な画像処理工程の結果を得るためのものであり、画像処理工程を実行する対象の画像データとしては、連結されているカメラ装置１０が撮像したものでもよいし、予め用意されているサンプルとしてもよい。
【００５４】
プログラムシミュレーション部２８は、選択表示領域Ｆｓに一以上の画像処理が選択された場合に、当該画像処理工程を指定された実行順で実行するものと仮定して、画像データに対して指定された実行順で画像処理工程を実行したシミュレーション画像を表示部に表示させる。これは、現在選択されている画像処理および実行順が、画像処理モジュール１２に要求される機能として妥当であるかを判断することを目的としている。また、プログラムシミュレーション部２８は、仮想的な画像処理の結果を得るためのものであり、画像処理を実行する対象の画像データとしては、連結されているカメラ装置１０が撮像したものでもよいし、予め用意されているサンプルとしてもよい。
【００５５】
（システム構築装置２０による画像処理プログラムの実装）
システム構築装置２０によるカメラ装置１０のシステム構築の流れについて、図９を参照して説明する。ここでは、上記のような構成からなるカメラ装置１０の画像処理モジュール１２を対象にした場合を例示する。つまり、カメラ装置１０が３つの異なる機能を有するモジュール１１〜１３から構成され、画像処理装置である画像処理モジュール１２に設けられたＰＬＤ１２ａにプログラムを実装するものである。
【００５６】
システム構築装置２０は、先ず、通信準備やカメラ装置１０を構成する各モジュール１１〜１３のモジュール情報を取得する準備処理を行う（Ｓ１０）。この通信準備では、カメラ装置１０の外部通信モジュール１３と、システム構築装置２０の通信部２１が接続され、相互通信の可否が確認される。また、モジュール情報の取得では、システム構築装置２０は、通信部２１を介してモジュール情報を取得する。これにより、システム構築装置２０には、カメラ装置１０を構成するモジュールの数量、およびモジュール毎の機能およびハードウェア情報が入力される。
【００５７】
表示部２３は、取得したカメラ装置１０に係るモジュール情報のうち画像処理モジュール１２に係るモジュール情報に基づいて、図４に示すように、ＰＬＤ１２ａに実装可能な画像処理プログラム（画像処理工程を兼ねる）をアイコンとしてプログラム表示領域Ｆｐに表示する。そして、これらのアイコンのうち実装するものを選択表示領域Ｆｓに移動させることで、プログラムの選択を行う（Ｓ２０）。ここで、所望の処理結果を得るために、例えば経験的に画像処理工程の選択および実行順を指定することができる場合には、表示されたアイコンをプログラム表示領域Ｆｐから選択表示領域Ｆｓにドラッグアンドドロップして、画像処理工程の選択および実行順の指定を行う（Ｓ２０１）。反対に、アイコンを選択表示領域Ｆｓからプログラム表示領域Ｆｐにドラッグアンドドロップ、または選択表示領域Ｆｓのアイコンを削除することで、画像処理工程の選択解除が可能となっている。
【００５８】
一方で、所望の処理結果を得るために必要な画像処理工程の選択に補助を要する場合には、案内表示を使用した画像処理工程の選択を行う（Ｓ２０２）。表示部２３によるメイン画面（図４参照）において、プログラム表示領域Ｆｐに表示されたアイコンを選択し、案内表示ボタンを押下すると、選択案内部２４により図６または図７に示すような画面が表示部２３に表示される。これにより、選択されたアイコンに対応する画像処理工程を最終工程とする画像処理プログラムが実行する複数の画像処理工程が例示される。表示部２３による画面（図６，７参照）において、操作者の承認を受け付けて、設定ボタンが押下された場合には、例示した各画像処理工程を自動的に選択表示領域Ｆｓに表示させる。また、操作者が例示した画像処理工程を承認せずに、戻るボタンが押下された場合には、案内表示をキャンセルして図４に示すメイン画面に戻る。
【００５９】
次に、所定の画像処理工程が必要か否か、または選択された画像処理工程の実行順が妥当であるかを判断するために、画像処理工程の処理内容を確認して、選択状態および実行順を調整する（Ｓ３０）。プログラム表示領域Ｆｐまたは選択表示領域Ｆｓに表示されたアイコンを選択し、説明表示ボタンを押下すると、処理説明部２５により図８に示すような画面が表示部２３に表示される。これにより、選択されたアイコンに対応する画像処理工程の処理内容を説明文およびサンプル画像などにより把握することが可能となる。そして、この処理内容の説明を参考にして、画像処理工程の追加または削除、実行順の調整を適宜行う。
【００６０】
続いて、選択されている複数の画像処理工程に係るパラメータをそれぞれ設定する（Ｓ４０）。本実施形態においては、処理説明部２５と同様に、パラメータ設定部２６により図８に示すような画面が表示部２３に表示され、パラメータの設定が受け付けられる。表示されている画像処理工程についてパラメータを変更した場合には、画像処理工程についてのシミュレーションを行う（Ｓ５０）。表示部２３による画面（図８参照）において、パラメータ確認ボタンを押下すると、画像処理工程シミュレーション部２７は、予め用意されているサンプルの画像データに対して選択されている画像処理工程を実行する。そして、これにより取得されたシミュレーション画像を表示部２３に表示させる。
【００６１】
そして、シミュレーション結果などを参照して、画像処理工程に対するパラメータが適切に設定されたか、および選択された全ての画像処理工程についてパラメータが設定されたかを判定する（Ｓ６０）。一部の画像処理工程のパラメータが未設定であったり、シミュレーション結果によりパラメータの設定に調整が必要であったりする場合には（Ｓ６０：Ｎｏ）、Ｓ４０およびＳ５０を繰り返すことより、何れの画像処理工程についてもパラメータが適宜設定される。
【００６２】
一通りの画像処理工程の選択、パラメータの設定を終えたら（Ｓ６０：Ｙｅｓ）、選択された画像処理工程についてシミュレーションを行う（Ｓ７０）。表示部２３によるメイン画面において、プログラム確認ボタンを押下すると、プログラムシミュレーション部２８は、予め用意されているサンプルの画像データに対して複数の画像処理工程を指定された実行順で実行する。そして、これにより取得されたシミュレーション画像を表示部２３に表示させる。そして、シミュレーション画像に基づいて、現在選択されている画像処理工程や実行順、全体を通してのパラメータの設定が妥当であるかを判断する（Ｓ８０）。
【００６３】
シミュレーションの結果により、現在の選択が妥当でないと判断した場合には（Ｓ８０：Ｎｏ）、Ｓ３０に戻り画像処理工程の選択や実行順、パラメータの設定を調整する。そして、必要であれば再度シミュレーションを行うようにしてもよい（Ｓ５０，Ｓ７０）。これらを繰り返すことにより、現在選択されている画像処理工程および実行順、パラメータの設定が妥当であると判断した場合には（Ｓ８０：Ｙｅｓ）、プログラム実装部２２が通信部２１を介してプログラムの実装を行う（Ｓ９０）。
【００６４】
より具体的には、プログラム実装部２２は、表示部２３の選択表示領域Ｆｓに表示されたアイコンに対応する画像処理工程により構成される画像処理プログラムを、画像処理モジュール１２のＰＬＤ１２ａに通信部２１を介して転送する。これにより、ＰＬＤ１２ａは、画像処理プログラムに相当する論理回路が定義され、所定の画像処理機能を発揮するように駆動可能となる。ここで、各画像処理工程に係るパラメータについては、ＰＬＤ１２ａではなく画像処理モジュール１２のメモリ部１２ｂに記憶させるようにし、制御装置２による制御信号に基づいたパラメータで画像処理を行うようにしてもよい。このようにして、システム構築装置２０による画像処理プログラムの実装が完了し、カメラ装置１０における画像処理装置としてのシステムが構築される。
【００６５】
（システム構築装置２０による効果）
上述したシステム構築装置２０は、システム構築装置２０の選択案内部２４は、選択された画像処理プログラムが実行する複数の画像処理工程および実行順を例示するものとした（Ｓ２０２）。これにより、画像処理プログラムの実装において、選択案内部２４により画像処理工程の選択案内が行われることになり、操作者はこの例示を参考にして画像処理工程を適宜選択することができる。よって、要求される処理機能に応じた画像処理プログラムの実装を効率的に行うことが可能となる。
【００６６】
システム構築装置２０は、カメラ装置１０に設けられた画像処理装置を対象として画像処理プログラムの実装を行うものとしている。そして、このカメラ装置１０は、異なる機能を有する３以上のモジュールから選択された複数のモジュールを着脱可能に連結して構成される。つまり、システム構築装置２０は、カメラ装置１０の画像処理モジュール１２を対象とするものとした。このように画像処理機能をカメラ装置１０が有する構成では、処理結果に基づいて電子部品装着装置１の各部位を制御する制御装置２の負荷を軽減することができる。
【００６７】
また、カメラ装置１０が複数のモジュール１１〜１３を着脱可能に連結して構成されることから、要求に応じた構成の変更が可能となり、種々の用途に容易に適用することができる。そして、システム構築装置２０は、通信部２１によりカメラ装置１０と通信接続され、プログラム実装部２２によって画像処理モジュール１２を対象としたシステム構築を可能としている。これにより、カメラ装置１０の画像処理モジュール１２が所定の処理機能を発揮するように、画像処理プログラムを実装することができる。
【００６８】
さらに、処理説明部２５は、表示部２３において選択された画像処理工程の処理内容を説明するものとした（３０）。画像処理モジュール１２が実行可能な画像処理工程は多くの種類があり、個々の工程の内容を把握して適切な画像処理を選択するには専門的な知識を要することもある。そこで、選択された画像処理工程の処理内容を説明するように、表示部２３に説明文や画像処理前後のサンプル画像を明示することで、操作者は処理内容を容易に把握することが可能となる。これにより、単に選択可能に表示される場合と比較して、より操作性を向上させることができるとともに、画像処理工程を誤って選択することを防止できる。
【００６９】
また、パラメータ設定部２６は、表示部２３において選択された画像処理工程に係るパラメータの設定を受け付けるものとした（Ｓ４０）。画像処理プログラムによって実行される個々の画像処理工程には、それぞれ処理に必要なパラメータを設定する必要がある。そこで、パラメータ設定部２６により画像処理工程の選択と並行してパラメータを設定することが可能となる。従って、より効率的に画像処理モジュール１２のシステム構築を行うことができる。
【００７０】
画像処理工程シミュレーション部２７は、画像データに対して画像処理工程を実行したシミュレーション画像を表示部２３に表示させるものとした（Ｓ５０）。各画像処理工程は、処理に必要なパラメータを設定されるが、その設定が適正であるか否かを予め判定されていることが望ましい。そのため、画像処理工程シミュレーション部２７により変更されたパラメータに設定されたものと仮定して、仮想的な処理結果をシミュレーションする。これにより、現在のところ設定されているパラメータが、当該画像処理工程において妥当であるかを判断することができる。よって、パラメータの変更と画像処理工程のシミュレーションを適宜繰り返すことにより、適切なパラメータを設定することができる。
【００７１】
プログラムシミュレーション部２８は、画像データに対して指定された実行順で画像処理工程を実行したシミュレーション画像を表示部２３に表示させるものとした（Ｓ７０）。画像処理モジュール１２は種々の画像処理の実行が可能であるが、画像処理工程の実行順によって結果が異なることがある。そのため、プログラムシミュレーション部２８により選択された画像処理工程を指定された実行順で実行したものと仮定して、仮想的な処理結果をシミュレーションする。これにより、現在のところ選択されている画像処理工程が、画像処理モジュール１２に要求される画像処理として妥当であるかを判断することができる。よって、画像処理工程を適切に選択することができるので、画像処理モジュール１２のシステム構築に要する工数を低減できる。
【００７２】
＜実施形態の変形態様＞
本実施形態において、システム構築装置２０の通信部２１は、カメラ装置１０を構成する外部通信モジュール１３と通信可能に連結されるものとした。これにより、システム構築装置２０と画像処理装置である画像処理モジュール１２が通信連結される構成とした。これに対して、システム構築装置２０は、画像処理装置またはプログラムを実装可能なＰＬＤやマイコンと直接的に連結されるようにしてもよい。このような構成においても、本実施形態と同様の効果を奏する。
【００７３】
また、システム構築装置２０が対象とする画像処理装置は、カメラ装置１０に画像処理モジュール１２として設けられるものとした。これに対して、画像処理装置は、カメラ装置１０とは別体に設けられるようにしてもよい。つまり、画像処理装置は、上位装置である制御装置２の内部、またはカメラ装置１０と制御装置２との中間部に設けられる構成としてもよい。何れの画像処理装置を対象とした場合においても、本発明のシステム構築装置２０によれば、本実施形態と同様の効果を奏する。
【００７４】
システム構築装置２０の選択案内部２４は、所定の画像処理プログラムに対して複数の画像処理工程および実行順を例示するものとした。その他に、選択案内部２４は、例えば複数の候補をリスト表示することで、操作者に複数の選択肢を例示するようにしてもよい。また、例示した画像処理工程や実行順がその後の調整（Ｓ３０）で変更されたことを記憶し、再び同じ画像処理プログラムが選択された場合に、前回の画像処理工程および実行順を例示するようにしてもよい。
【００７５】
＜参考例＞
被写体を撮像して画像データを記録するカメラ装置は、近年、ＣＣＤやＣＭＯＳ等の撮像素子を有するデジタルカメラの普及に伴い、様々な分野で使用されている。例えば、特開２０００−２９４９９２号公報には、工業分野に適用されたＦＡ用カメラ装置が開示されている。このＦＡ用カメラ装置によれば、電子部品装着装置において、取得した画像データによって基板認識を行い、部品を吸着したヘッドの位置決め精度の向上を図っている。このようなカメラ装置では、用途の多様化に伴って、要求される機能および性能も様々である。そして、要求された機能について汎用のカメラ装置では対応できない場合に、その機能を実装した専用のカメラ装置が必要となる。しかし、所定の機能に特化した専用のカメラ装置は、その製作に多くの時間を要し、汎用のカメラ装置と比較してコストが高くなることが懸念される。
【００７６】
また、カメラ装置は、設置した後に用途や要求性能が変更されることがある。そうすると、これに伴う修正に多くの時間を要するため、用途変更などに即時に対応できない上に、修正コストがかかるという問題点があった。例えば、特開２００４−３０４６０４号公報には、撮像素子が設けられた撮像モジュールをカメラ本体に着脱可能に連結して構成されるカメラが開示されている。これにより、例えば、カメラ装置に要求される撮像範囲や分解能が変更されても撮像モジュールの交換により、ある程度の変更に対応することができるものと考えられる。
【００７７】
ところで、ＦＡ用に限らず、カメラ装置には種々の情報、例えば電源状態、撮像状態、画像処理の状態、各種動作エラーなどを含むカメラ情報を表示する機能を備えるものがある。この情報表示機能は、例えば、筐体の外周面に視認可能なＬＥＤなどの表示灯を複数配置して、複数の表示灯を特定パターンで点灯させ、操作者に動作エラーの認識させるものである。しかし、カメラ装置には、要求される機能および性能への対応とともに小型化への要請がある。そのため、筐体の小型化に伴って、配置可能な表示灯の数量が制約されることがあった。
【００７８】
このような事情に鑑み、従来よりも少ない数量の表示灯であっても、多種の情報表示が可能なカメラ装置を提供することを目的として、以下のようなカメラ装置を参考例として例示する。
【００７９】
＜参考例における課題を解決するための手段＞
（１）制御装置による制御信号に基づいて被写体を撮像するカメラ装置の情報表示装置であって、
前記カメラ装置の外周面において視認可能に配置された複数の表示灯と、
複数の表示灯の点灯または消灯を組み合わせた表示パターンにより前記カメラ装置に係る情報を表示する表示制御部と、を備え、
前記表示制御部は、前記表示パターンを複数組に分割し、各組を前記表示灯により順次表示させることにより前記表示パターンを構成するカメラ装置の情報表示装置。
このような情報表示装置によると、表示パターンは、複数組に分割された部分毎に表示灯に順次表示されて構成される。これにより、各組を表示するために必要とされる表示灯の数量を低減することができる。よって、従来よりも少ない数量の表示灯であっても、多種の情報表示が可能となる。
【００８０】
（２）また、手段（１）のカメラ装置の情報表示装置において、
前記カメラ装置は、被写体を撮像して前記画像データを取得する撮像モジュールと、前記情報表示装置である情報表示モジュールと、外部機器と通信する外部通信モジュールと、を含む異なる機能を有する３以上のモジュールのうち、少なくとも前記撮像モジュール、前記情報表示モジュール、および前記外部通信モジュールを含むように選択された複数の前記モジュールを着脱可能に連結して構成されるようにしてもよい。
このようなカメラ装置によると、複数のモジュールを要求に応じて連結することが可能となり、種々の用途に容易に適用することができる。また、各機能がモジュール化されたこのカメラ装置においても小型化への要請がある。そのため、情報表示装置をモジュールとして備えるカメラ装置においては、手段（１）の構成は有用である。
【００８１】
（３）また、手段（１）または（２）のカメラ装置の情報表示装置において、
前記表示灯には、分割された前記表示パターンのうち何組目であるかを点滅により示す案内灯が含まれ、
前記表示制御部は、前記案内灯の点滅に同期させて他の前記表示灯により各組を順次表示させるようにしてもよい。
このようなカメラ装置によると、案内灯により現在表示されている表示パターンの部位を容易に把握することができる。従って、情報表示装置は、より確実に操作者に対してカメラ装置に係る情報を表示することが可能となる。
【００８２】
（４）また、手段（１）または（２）のカメラ装置の情報表示装置において、
前記表示制御部は、分割された表示パターンの各組を前記表示灯に表示させる際に、各組の表示の間に前記表示パターンのうち何組目であるかを、その組数と同数の前記表示灯を点滅させるようにしてもよい。
このようなカメラ装置によると、表示灯の点滅によって、これから表示される組が表示パターンのどの部位に相当するのかを容易に把握することができる。従って、情報表示装置は、より確実に操作者に対してカメラ装置に係る情報を表示することが可能となる。
【００８３】
（カメラ装置１１０の構成）
本参考例のカメラ装置１１０について、図１０〜図１２を参照して説明する。本参考例において、カメラ装置１１０は、図１０に示すように、電子部品装着装置１に組み込まれている構成としている。この電子部品装着装置１は、制御装置２と、カメラ装置１１０を備え、実施形態で例示したものと実質的に同一であるため詳細な説明を省略する。また、本参考例において、カメラ装置１１０は、電子部品装着装置１が電子部品を装着する際に、コンベアなどの搬送装置によって規定位置まで搬送されたプリント基板ＣＢを撮像する基板カメラとして用いられている。
【００８４】
カメラ装置１１０は、異なる機能を有する３以上のモジュールから選択されたモジュールを着脱可能に連結して構成されている。本参考例では、カメラ装置１１０は、図２に示すように、撮像モジュール１１と、画像処理モジュール１２と、外部通信モジュール１３と、自律動作モジュール１４と、光源モジュール１５と、情報表示モジュール１６を含むモジュールのうち、撮像モジュール１１、情報表示モジュール１６、および外部通信モジュール１３を一つずつ選択し、この順で連結して構成されている。また、撮像モジュール１１〜光源モジュール１５については、実施形態と同一であるため、詳細な説明を省略する。
【００８５】
情報表示モジュール１６は、カメラ装置１１０に係る種々の情報、例えば電源状態、撮像処理の状態、画像処理の状態、各種動作エラーなどを含むカメラ情報の表示機能を割り当てられたモジュールである。このような情報表示モジュール１６には、図１２に示すように、ＰＬＤ１６ａと、メモリ部１６ｂと、情報表示部１６ｃを有している。ＰＬＤ１６ａは、情報表示モジュール１６に割り当てられた情報表示機能を実行するプログラムを実装可能な回路素子である。より具体的には、ＦＰＧＡ（Field Programmable Gate Array）、ＣＰＬＤ（Complex Programmable Logic Device）などに相当する。
【００８６】
そして、ＰＬＤ１６ａは、カメラ装置１０の情報表示モジュール１６として必要な機能を有するように、専用のソフトウェアなどによってプログラムが実装される。ＰＬＤ１６ａに実装されるプログラムは、情報表示部１６ｃを動作させるデバイスドライバが含まれる。よって、ＰＬＤ１６ａは、情報表示モジュール１６における表示制御部として機能している。その他に、ＰＬＤ１６ａに実装されるプログラムとして、連結される他のモジュールと通信を行う通信プログラムなどがある。この通信プログラムは、各モジュール１１〜１６の間で共通化された共通信号によって互いに通信可能としている。従って、ＰＬＤ１１ａは、撮像モジュール１１における通信部としても機能している。
【００８７】
メモリ部１６ｂは、情報表示モジュール１６の構成に係るハードウェア情報や制御装置２による制御信号などを一時的に記憶するフラッシュメモリである。上記のハードウェア情報は、具体的には、情報表示部１６ｃの構成などが含まれる。情報表示部１６ｃは、ＬＥＤや液晶ディスプレイなど一定の情報を表示可能な部位であり、制御装置２または各モジュールから入力される信号に基づいて、所定のカメラ情報を表示部に表示させるものである。また、情報表示モジュール１６は、何れの構成により情報表示機能を有する場合においても、共通信号によって他のモジュールと通信可能な通信部を有している。この情報表示モジュール１６の通信部は、情報表示を実行するＰＬＤやマイコンなどに通信プログラムを実装するものとしてもよい。
【００８８】
情報表示部１６ｃは、本参考例においては、図１２に示すように、モジュールの筐体の外周面に操作者が視認できるように配置された４個のＬＥＤ（赤色１個、橙色３個）と、駆動部とから構成されている。複数のＬＥＤは、点灯または消灯を組み合わせた特定パターンによりカメラ情報を示す表示灯である。この情報表示部１６ｃは、３個の橙色のＬＥＤによって、複数組に分割された特定パターンを順次表示するように制御される。そして、表示灯である複数のＬＥＤのうち１個の赤色のＬＥＤは、分割された表示パターンのうち何組目であるかを点滅により示す案内灯として機能する。このように、カメラ装置１１０に発生している特定の動作エラーなどに応じて、複数のＬＥＤを特定パターンで点灯させ、操作者に動作エラーの認識と対応を促すようにしている。この情報表示モジュール１６によるカメラ情報の表示の詳細については後述する。
【００８９】
上記のような構成からなるカメラ装置１１０は、例えば、制御装置２による撮像指令に基づいて、プリント基板ＣＢを撮像して、取得した画像データを制御装置２に出力する。このように、カメラ装置１１０は、電子部品装着装置１において基板カメラとして用いられている。ここで、カメラ装置１１０は、撮像指令を入力すると、各モジュール１１，１６，１３のＰＬＤ１１ａ，１６ａ，１３ａが所定のプログラムを実行して、被写体の撮像、情報表示、および画像データの出力を実行する。この時、各モジュール１１，１６，１３のＰＬＤ１１ａ，１６ａ，１３ａは、予め設定された共通信号によって互いに通信している。より具体的には、ＰＬＤ１１ａ，１６ａ，１３ａは、例えば、バス形式で接続され、所定の転送速度により同期または非同期のシリアル通信を行う。このような構成とすることで、種々のモジュールを選択的に連結してカメラ装置を構成しても、各モジュールの間での通信を可能としている。
【００９０】
（情報表示モジュールによるカメラ情報の表示）
次に、情報表示モジュール１６によるカメラ情報の表示について、図１３を参照して説明する。本参考例では、説明を簡易にするために、６ｂｉｔ（６４パターン）の表示パターンでカメラ情報を表示可能な構成を例示している。先ず、表示制御部であるＰＬＤ１６ａ（以下、「表示制御部１６ａ」と称する）は、カメラ情報の表示に係る要求指令を制御装置２または他のモジュールから入力する。そして、そのカメラ情報に対応する表示パターンをメモリ部１６ｂから取得する。この時、取得した表示パターンが図１３（ｘ）で示すようなものとする。
【００９１】
続いて、表示制御部１６ａは、表示パターンを２組、即ち前半部と後半部とに分割する。そして、表示制御部１６ａは、図１３（ａ）に示すように、全ての表示灯を消灯させて、操作者に対して情報表示の開始基準を示す。その後に、図１３（ｂ）に示すように、案内灯（赤色のＬＥＤ）を点灯させて分割された表示パターンのうち１組目であることを示すとともに、残りの表示灯（橙色のＬＥＤ）を表示パターンの前半部と対応するように点灯させる。表示制御部１６ａは、作業者が視認できるように、この状態を数秒間維持させる。
【００９２】
表示制御部１６ａは、数秒間が経過した後に、図１３（ｃ）に示すように、案内灯を消灯させて分割された表示パターンのうち２組目であることを示すとともに、残りの表示灯を後半部表示パターンの後半部と対応するように点灯または消灯させる。表示制御部１６ａは、再び、作業者が視認できるように、この状態を数秒間維持させる。これにより、案内灯の点滅によって何組目であるかが示され、２組に分割された表示パターンがその他の表示灯により順次表示されたことになる。
【００９３】
また、表示制御部１６ａは、情報表示の要求指令が継続している間には、図１３（ａ）〜（ｃ）を繰り返すことにより、操作者にカメラ情報の認識などを促すようにしている。また、上記の例では、図１３（ａ）に示したように、開始基準を全ての表示灯を消灯させることにより示すものとした。これに対して、開始基準は、その後に情報表示が開始されることが認識されるのであればよいので、例えば案内灯または特定の表示灯を短期点滅させるようにしてもよい。
【００９４】
（カメラ装置１１０による効果）
上述したカメラ装置１１０によると、情報表示モジュール１６は、表示パターンを複数組に分割された部分毎に表示灯に順次表示されて構成されるようにした。これにより、各組を表示するために必要とされる表示灯の数量を低減することができる。よって、従来よりも少ない数量の表示灯であっても、多種の情報表示が可能となる。また、案内灯により現在表示されている表示パターンの部位を容易に把握することができる。従って、情報表示モジュール１６は、より確実に操作者に対してカメラ装置１１０に係る情報を表示することが可能となる。
【００９５】
また、カメラ装置１１０は、異なる機能を有する３以上のモジュールから選択された複数のモジュールを着脱可能に連結して構成される。そのため、このようなカメラ装置１１０によると、複数のモジュールを要求に応じて連結することが可能となり、種々の用途に容易に適用することができる。また、各機能がモジュール化されたこのカメラ装置においても小型化への要請がある。そのため、少ない数量の表示灯であっても多種の情報表示が可能な情報表示モジュール１６は、上記構成からなるカメラ装置１１０において有用である。
【００９６】
（参考例におけるその他の形態）
参考例では、赤色ＬＥＤを案内灯とし、橙色ＬＥＤをその他の表示灯とした。このような構成において、例えばカメラ装置１１０の制約上、表示灯を増加できる場合には、案内灯をさらに増加させるようにしてもよい。これにより、案内灯が２ｂｉｔ（４パターン）の案内パターンで表示できるため、全体としては、１２ｂｉｔの表示パターンでカメラ情報を表示することができる。
【００９７】
また、参考例において、情報表示部１６ｃは、１個の赤色ＬＥＤと、３個の橙色ＬＥＤとから構成されるものとした。これに対して、表示灯は全て同色として、参考例で示した案内灯を有さない構成としてもよい。このような場合における情報表示は、例えば、以下のように行うことができる。また、この形態では、表示灯の数量を同数として、８ｂｉｔ（２５６パターン）の表示パターンでカメラ情報を表示可能な構成を例示する。
【００９８】
先ず、表示制御部１６ａは、カメラ情報の表示に係る要求指令を入力し、そのカメラ情報に対応する表示パターンをメモリ部１６ｂから取得する。この時、取得した表示パターンが図１４（ｙ）で示すようなものとする。続いて、表示制御部１６ａは、表示パターンを前半部と後半部の２組に分割する。そして、表示制御部１６ａは、図１４（ａ）に示すように、右端の表示灯のみ短期点滅させて、操作者に対して１組目の表示パターンの部位が表示されることを示す。その後に、図１４（ｂ）に示すように、表示灯を表示パターンの前半部と対応するように点灯または消灯させる。表示制御部１６ａは、作業者が視認できるように、この状態を数秒間維持させる。
【００９９】
表示制御部１６ａは、数秒間が経過した後に、図１４（ｃ）に示すように、右端から２個の表示灯を短期点滅させて、操作者に対して２組目の表示パターンの部位が表示されることを示す。その後に、図１４（ｄ）に示すように、表示灯を表示パターンの後半部と対応するように点灯または消灯させる。そして、表示制御部１６ａは、再び、作業者が視認できるように、この状態を数秒間維持させる。これにより、図１４（ａ），（ｃ）のように表示灯の短期点滅によって何組目であるかが案内表示され、２組に分割された表示パターンが表示灯により順次表示されたことになる。
【０１００】
このような形態においても参考例と同様の効果を奏する。また、ここでは何組目かの案内表示を２回行ったが、これは表示灯の数量だけ行うことができる。そのため、４個の表示灯を有している場合には、最大で１０ｂｉｔ（１０２４パターン）の表示パターンでカメラ情報を表示することができる。
【符号の説明】
【０１０１】
１：電子部品装着装置、  ２：制御装置
１０，１１０：カメラ装置、  １１：撮像モジュール
１２：画像処理モジュール（画像処理装置）、  １３：外部通信モジュール
１４：自律動作モジュール、  １５：光源モジュール、  １６：情報表示モジュール
１１ａ，１２ａ，１３ａ：ＰＬＤ、  １１ｂ，１２ｂ，１３ｂ：メモリ部
１１ｃ：イメージセンサ、  １３ｃ：インターフェイスＩＣ
１６ａ：ＰＬＤ、  １６ｂ：メモリ部
２０：システム構築装置、  ２１：通信部、  ２２：プログラム実装部
２３：表示部、  ２４：選択案内部、  ２５：処理説明部、  ２６：パラメータ設定部
２７：画像処理工程シミュレーション部、  ２８：プログラムシミュレーション部
ＣＢ：プリント基板（被写体）、  Ｆｐ：プログラム表示領域、  Ｆｓ：選択表示領域
【図１】
0005950548.tif 000002
【図２】
0005950548.tif 000003
【図３】
0005950548.tif 000004
【図４】
0005950548.tif 000005
【図９】
0005950548.tif 000006
【図１０】
0005950548.tif 000007
【図１１】
0005950548.tif 000008
【図１２】
0005950548.tif 000009
【図１３】
0005950548.tif 000010
【図１４】
0005950548.tif 000011
【図５】
0005950548.tif 000012
【図６】
0005950548.tif 000013
【図７】
0005950548.tif 000014
【図８】
0005950548.tif 000015