(57)【要約】【課題】画像処理に要する処理時間を短縮すること。【解決手段】画像処理対象となる画像データの入力処理を行うデータ入力部（１０３）と、画像データを保存するメモリ（１０２、１０７）と、データ入力部（１０３）を介して入力された共通の画像データをメモリ（１０２、１０７）に転送するデータ転送部（１０５、１０６）と、メモリ（１０２）に専用バス（Ｂ１）にて接続され、メモリ（１０２）に保存された画像データに対してソフトウェアによる画像処理を行うＣＰＵ（１０１）と、メモリ（１０７）に専用バス（Ｂ１）と異なるバス（Ｂ２）を介して接続され、メモリ（１０７）に保存された画像データに対してハードウェアによる画像処理を行う画像処理部（１０４）とを具備することを特徴とする。【選択図】図１
2014090076.tif 000002
【特許請求の範囲】
【請求項１】
画像処理対象となる画像データの入力処理を行う入力部と、前記画像データを保存する第１、第２のメモリと、前記入力部を介して入力された共通の前記画像データを前記第１、第２のメモリに転送する転送部と、前記第１のメモリに専用バスにて接続され、前記第１のメモリに保存された前記画像データに対してソフトウェアによる画像処理を行う制御部と、前記第２のメモリに前記専用バスと異なるバスを介して接続され、前記第２のメモリに保存された前記画像データに対してハードウェアによる画像処理を行う画像処理部とを具備することを特徴とする画像処理装置。
【請求項２】
前記転送部は、前記入力部を介して入力された前記画像データを前記第１のメモリに転送する第１の転送部と、前記入力部を介して入力された前記画像データを前記第２のメモリに転送する第２の転送部とを有することを特徴とする請求項１記載の画像処理装置。
【請求項３】
前記画像処理部は、画像処理後の画像データを前記第１のメモリに出力し、前記制御部は、前記画像処理後の画像データに対して画像処理を行うことを特徴とする請求項１又は請求項２記載の画像処理装置。
【請求項４】
前記第２のメモリを複数具備すると共に、それぞれの前記第２のメモリに保存された前記画像データに対してハードウェアによる画像処理を行う前記画像処理部を複数具備することを特徴とする請求項１から請求項３のいずれかに記載の画像処理装置。
【請求項５】
請求項１から請求項４のいずれかに記載の画像処理装置を備えることを特徴とする電子部品実装装置。
【請求項６】
実装対象となる複数の部品の撮像画像データを含む撮像画面データを順次取り込んで、各撮像画面データ内の位置決め対象となる特定の部品の位置決めに必要な画像処理を行う電子部品実装装置用の画像処理装置であって、
前記特定の部品の撮像画像データに対してソフトウェアによる画像処理を行う制御部と、前記特定の部品の周辺部品の撮像画像データに対してハードウェアによる画像処理を行う画像処理部とを具備し、前記制御部で位置決めに必要な画像処理を行うと共に、当該制御部による画像処理と並行して前記画像処理部で前記制御部による画像処理に必要な情報を取得する前処理を行うことを特徴とする画像処理装置。
【請求項７】
前記画像処理部は、前記前処理として、前記周辺部品の撮像画像データの濃度ヒストグラムを生成して濃度分布を判定することを特徴とする請求項６記載の画像処理装置。
【請求項８】
前記画像処理部は、前記濃度分布の判定結果に基づいて、前記周辺部品が位置決め対象の部品となる場合の撮像条件を変更することを特徴とする請求項７記載の画像処理装置。
【請求項９】
前記画像処理部は、前記周辺部品が位置決め対象の部品となる場合に当該周辺部品に対して照光される光量を調整することを特徴とする請求項８記載の画像処理装置。
【請求項１０】
前記画像処理部は、前記濃度分布の判定結果に基づいて、当該濃度分布の判定時に用いた濃度変換条件を調整することを特徴とする請求項７記載の画像処理装置。
【請求項１１】
前記画像処理部は、前記前処理として、前記周辺部品の撮像画像データに対して外接走査を行うことを特徴とする請求項６から請求項１０のいずれかに記載の画像処理装置。
【請求項１２】
前記画像処理部は、前記外接走査の走査結果に基づいて、当該外接走査に用いた二値化しきい値を調整することを特徴とする請求項１１記載の画像処理装置。
【請求項１３】
前記画像処理部は、前記制御部による画像処理に必要な情報として、前記周辺部品の撮像画像データを前記制御部に転送することを特徴とする請求項６記載の画像処理装置。
【請求項１４】
前記画像処理部は、前記前処理の処理結果に基づいて、前記周辺部品の撮像画像データの転送範囲を調整することを特徴とする請求項１３記載の画像処理装置。
【請求項１５】
前記制御部は、前記特定の部品の撮像画像データに対して、位置決めに関する特徴抽出のための画像処理を行うことを特徴とする請求項６から請求項１４のいずれかに記載の画像処理装置。
【請求項１６】
前記制御部は、前記特徴抽出のための画像処理として、フィルタ処理又はエッジ抽出処理を行うことを特徴とする請求項１５記載の画像処理装置。
【請求項１７】
前記周辺部品は、前記特定の部品の次に位置決め対象とされる部品であることを特徴とする請求項６から請求項１６のいずれかに記載の画像処理装置。
【請求項１８】
前記特定の部品の撮像画像データを前記撮像画面データの中心位置に配置することを特徴とする請求項６から請求項１７のいずれかに記載の画像処理装置。
【請求項１９】
請求項６から請求項１８のいずれかに記載の画像処理装置を備えることを特徴とする電子部品実装装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像処理装置に関し、特に、チップマウンタ等の電子部品実装装置で用いられる画像処理装置及びその電子部品実装装置に関する。
【背景技術】
【０００２】
従来、チップマウンタ等の電子部品実装装置においては、実装対象となるチップの正確な位置決めを行うために画像処理装置を備えるものが知られている。そして、このような画像処理装置として、ＣＰＵの主メモリと画像メモリとを共有し、効率的に複数の機能を処理するものが提案されている（例えば、特許文献１参照）。この画像処理装置においては、画像処理機能を実行する画像処理部とＣＰＵの主メモリと共有した共有メモリとの間にデータ保持部を備えることにより、ＣＰＵと主メモリとを結ぶバスの負荷を軽減して複数の機能の効率的な処理を可能とする。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特許第３９５９４０７号明細書、図１
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、上述した従来の画像処理装置においては、ＣＰＵによる画像処理と、画像処理部による画像処理とが並行して行われる場合、画像処理対象となる画像データが共有メモリに保存されているため、処理速度が低下するという問題がある。すなわち、ＣＰＵ及び画像処理部による画像処理が並行して行われる場合、一方（例えば、ＣＰＵ）が共有メモリにアクセスしている間は、他方（例えば、画像処理部）は、共有メモリへのアクセスを待機しなければならず、ＣＰＵ及び画像処理部による画像処理に要する合計の処理時間が長くなる事態が発生し得る。
【０００５】
特に、画像処理対象となる画像データが連続して画像処理システムに入力される場合においては、入力タイミングがＣＰＵ及び画像処理部による処理速度に依存することとなる。この結果、連続して入力される画像データの入力間隔が制限されるという事態も発生し得る。
【０００６】
なお、上述したような従来の画像処理装置において、ＣＰＵによる画像処理は、一般に複雑な判断やアルゴリズムを要するソフトウェアによる処理が有効な画像処理に適用される。一方、画像処理部による画像処理は、一般に単純な演算を繰り返すようなハードウェアによる処理が有効な画像処理に適用される。
【０００７】
本発明はこのような実情に鑑みてなされたものであり、画像処理に要する処理時間を短縮することができる画像処理装置及び電子部品実装装置を提供することを目的とする。
【課題を解決するための手段】
【０００８】
本発明の画像処理装置は、画像処理対象となる画像データの入力処理を行う入力部と、前記画像データを保存する第１、第２のメモリと、前記入力部を介して入力された共通の前記画像データを前記第１、第２のメモリに転送する転送部と、前記第１のメモリに専用バスにて接続され、前記第１のメモリに保存された前記画像データに対してソフトウェアによる画像処理を行う制御部と、前記第２のメモリに前記専用バスと異なるバスを介して接続され、前記第２のメモリに保存された前記画像データに対してハードウェアによる画像処理を行う画像処理部とを具備することを特徴とする。
【０００９】
この画像処理装置によれば、入力部を介して入力された共通の画像データが第１、第２のメモリに転送されて保存される。また、ソフトウェアによる画像処理を行う制御部が専用バスにて第１のメモリに接続される一方、ハードウェアによる画像処理を行う画像処理部が専用バスと異なるバスを介して第２のメモリに接続される。これらにより、第１、第２のメモリに保存された共通の画像データに対して画像処理部、制御部がそれぞれ独立してアクセスできるので、画像処理部及び制御部の一方が他方の処理を待機する事態を回避でき、画像処理に要する処理時間を短縮することが可能となる。
【００１０】
上記画像処理装置において、前記転送部は、前記入力部を介して入力された前記画像データを前記第１のメモリに転送する第１の転送部と、前記入力部を介して入力された前記画像データを前記第２のメモリに転送する第２の転送部とを有することが好ましい。この場合には、入力部を介して入力された画像データが、第１、第２の転送部により独立して第１、第２のメモリに転送される。これにより、画像データの転送処理時に待機時間が発生する事態を回避でき、画像処理に先行して行う転送時間を短縮でき、結果として画像処理に要する処理時間を短縮することが可能となる。
【００１１】
また、上記画像処理装置において、前記画像処理部は、画像処理後の画像データを前記第１のメモリに出力し、前記制御部は、前記画像処理後の画像データに対して画像処理を行うことも可能である。この場合には、制御部により、画像処理部による画像処理後の画像データに対して画像処理が行われる。これにより、画像処理部による画像処理後の画像データに対しても、画像処理部による画像処理と並行して画像処理を行うことができるので、画像処理部による画像処理後の画像データに対して制御部で画像処理を行う場合においても、画像処理に要する処理時間を短縮することが可能となる。
【００１２】
さらに、上記画像処理装置において、前記第２のメモリを複数具備すると共に、それぞれの前記第２のメモリに保存された前記画像データに対してハードウェアによる画像処理を行う前記画像処理部を複数具備することも可能である。この場合には、複数の画像処理部で独立して画像処理を行うことができるので、複数種類の画像処理に対応すると共に、その画像処理に要する処理時間を短縮することが可能となる。
【００１３】
本発明に係る電子部品実装装置は、上記したいずれかの態様に係る画像処理装置を備えることを特徴とする。このように上記したいずれかの態様に係る画像処理装置を電子部品実装装置に適用することにより、画像処理装置で得られる効果を電子部品実装装置で得ることが可能となる。
【００１４】
本発明の画像処理装置は、実装対象となる複数の部品の撮像画像データを含む撮像画面データを順次取り込んで、各撮像画面データ内の位置決め対象となる特定の部品の位置決めに必要な画像処理を行う電子部品実装装置用の画像処理装置であって、前記特定の部品の撮像画像データに対してソフトウェアによる画像処理を行う制御部と、前記特定の部品の周辺部品の撮像画像データに対してハードウェアによる画像処理を行う画像処理部とを具備し、前記制御部で位置決めに必要な画像処理を行うと共に、当該制御部による画像処理と並行して前記画像処理部で前記制御部による画像処理に必要な情報を取得する前処理を行うことを特徴とする。
【００１５】
この画像処理装置によれば、位置決め対象となる特定の部品の撮像画像データに対してソフトウェアによる位置決めに必要な画像処理が行われると共に、これに並行して周辺部品の撮像画像データに対してハードウェアによる画像処理（前処理）によって、制御部による画像処理に必要な情報が取得される。これにより、ハードウェアによる画像処理と、ソフトウェアによる画像処理とを並行して行うことができることから、位置決めに必要な画像処理を効率的に実行することが可能となる。
【００１６】
上記画像処理装置において、前記画像処理部は、前記前処理として、前記周辺部品の撮像画像データの濃度ヒストグラムを生成して濃度分布を判定することが考えられる。この場合には、前処理として、周辺部品の撮像画像データの濃度ヒストグラムに基づく濃度分布が判定されることから、この判定結果を用いて制御部で位置決めに必要な画像処理を行うことができるので、制御部による画像処理に要する時間を短縮すると共に、当該画像処理に伴う負荷を軽減することが可能となる。
【００１７】
また、上記画像処理装置において、前記画像処理部は、前記濃度分布の判定結果に基づいて、前記周辺部品が位置決め対象の部品となる場合の撮像条件を変更することが考えられる。この場合には、濃度分布の判定結果に基づいて、周辺部品が位置決め対象の部品となる場合の撮像条件を変更できるので、濃度分布の判定結果に応じた所望の撮像条件を選択することが可能となる。
【００１８】
例えば、上記画像処理装置において、前記画像処理部は、前記周辺部品が位置決め対象の部品となる場合に当該周辺部品に対して照光される光量を調整することが考えられる。この場合には、濃度分布の判定結果を反映して周辺部品に対して照光される光量が調整されることから、周辺部品が位置決め対象の部品となった場合に周辺部品の撮像画像データの濃度を適切な値に調整することが可能となる。
【００１９】
例えば、上記画像処理装置において、前記画像処理部は、前記濃度分布の判定結果に基づいて、当該濃度分布の判定時に用いた濃度変換条件を調整することが考えられる。この場合には、濃度分布の判定結果を反映して濃度変換条件が調整されることから、周辺部品の撮像画像データの濃度を適切な値に調整することが可能となる。
【００２０】
また、上記画像処理装置において、前記画像処理部は、前記前処理として、前記周辺部品の撮像画像データに対して外接走査を行うことが考えられる。この場合には、前処理として、周辺部品の撮像画像データに対する外接走査が行われることから、この外接走査の走査結果を用いて制御部で位置決めに必要な画像処理を行うことができるので、制御部による画像処理に要する時間を短縮すると共に、当該画像処理に伴う負荷を軽減することが可能となる。
【００２１】
例えば、上記画像処理装置において、前記画像処理部は、前記外接走査の走査結果に基づいて、当該外接走査に用いた二値化しきい値を調整することが考えられる。この場合には、外接走査の走査結果を反映して外接走査に用いた二値化しきい値が調整されることから、周辺部品の撮像画像データの外接走査の走査結果を改善することが可能となる。
【００２２】
さらに、上記画像処理装置において、前記画像処理部は、前記制御部による画像処理に必要な情報として、前記周辺部品の撮像画像データを前記制御部に転送することが考えられる。この場合には、制御部による画像処理に必要な情報として、周辺部品の撮像画像データが転送されることから、この周辺部品の撮像画像データを用いて制御部で位置決めに必要な画像処理を行うことができるので、制御部による画像処理に要する時間を短縮すると共に、当該画像処理に伴う負荷を軽減することが可能となる。
【００２３】
例えば、上記画像処理装置において、前記前処理の処理結果に基づいて、前記周辺部品の撮像画像データの転送範囲を調整することが考えられる。この場合には、前処理の処理結果に基づいて、周辺部品の撮像画像データの転送範囲が調整されることから、制御部に対する撮像画像データの転送量を増減できるので、周辺部品の撮像画像データの寸法が小さい場合に制御部に対する撮像画像データの転送量を低減できる。この結果、制御部による画像処理に要する時間を短縮すると共に、当該画像処理に伴う負荷を軽減することが可能となる。
【００２４】
さらに、上記画像処理装置において、前記制御部は、前記特定の部品の撮像画像データに対して、位置決めに関する特徴抽出のための画像処理を行うことが考えられる。この場合には、特定の部品の撮像画像データに対して、位置決めに関する特徴抽出のための画像処理が行われることから、一般に複雑な判断やアルゴリズムを要する特徴抽出のための画像処理を制御部で行うことにより、特定の部品の位置決めに必要な装置全体の画像処理を効率化することが可能となる。
【００２５】
例えば、上記画像処理装置において、前記制御部は、前記特徴抽出のための画像処理として、フィルタ処理又はエッジ抽出処理を行うことが考えられる。この場合には、特徴抽出のための画像処理として、フィルタ処理又はエッジ抽出処理が行われることから、特定の部品の位置決めに必要な画像処理を効果的に行うことが可能となる。
【００２６】
上記画像処理装置において、前記周辺部品は、前記特定の部品の次に位置決め対象とされる部品を構成することが好ましい。この場合には、特定の部品の次に位置決め対象とされる部品である周辺部品の撮像画像データに対する前処理が画像処理部で行われることから、制御部による画像処理に要する時間を短縮すると共に、当該画像処理に伴う負荷を軽減することが可能となる。
【００２７】
特に、上記画像処理装置において、前記特定の部品の撮像画像データを前記撮像画面データの中心位置に配置することが好ましい。この場合には、撮像画面データの中心位置に配置された撮像画像データに基づいて、特定の部品の位置決めに必要な画像処理が行われることから、中心位置から外れた位置に配置された撮像画像データに基づいて画像処理を行う場合と比べて、高精度に位置決めのための画像処理を行うことが可能となる。
【００２８】
本発明に係る電子部品実装装置は、上記したいずれかの態様に係る画像処理装置を備えることを特徴とする。このように上記したいずれかの態様に係る画像処理装置を電子部品実装装置に適用することにより、画像処理装置で得られる効果を電子部品実装装置で得ることが可能となる。
【発明の効果】
【００２９】
本発明によれば、第１、第２のメモリに保存された共通の画像データに対して画像処理部、制御部がそれぞれ独立してアクセスできるので、ハードウェアによる画像処理を行う画像処理部及びソフトウェアによる画像処理を行う制御部の一方が他方の処理を待機する事態を回避でき、画像処理に要する処理時間を短縮することが可能となる。
【図面の簡単な説明】
【００３０】
【図１】本実施の形態に係る画像処理装置の構成を示すブロック図である。
【図２】本実施の形態に係る画像処理装置の動作を示したタイミングチャートである。
【図３】本実施の形態の変形例に係る画像処理装置の構成を示すブロック図である。
【図４】本実施の形態に係る画像処理装置を適用した電子部品実装装置の要部概略図である。
【図５】図４に示す電子部品実装装置に適用される画像処理装置の一例の説明図である。
【図６】図４に示す電子部品実装装置が有するカメラにより撮像される撮像画面の説明図である。
【図７】図５に示す画像処理装置の動作を示したタイミングチャートである。
【図８】図５に示す画像処理装置で認識処理を行う場合の動作を説明するためのフロー図である。
【図９】図５に示す画像処理装置で算出される部品存在範囲の説明図である。
【図１０】図５に示す画像処理装置で実行されるプレ前処理を説明するためのフロー図である。
【図１１】図５に示す画像処理装置で実行されるプレ前処理割込み処理を説明するためのフロー図である。
【図１２】図５に示す画像処理装置で実行される変換前処理を説明するためのフロー図である。
【発明を実施するための形態】
【００３１】
以下、本発明の実施の形態について添付図面を参照して詳細に説明する。本実施の形態に係る画像処理装置は、例えば、チップマウンタ等の電子部品実装装置に適用される。電子部品実装装置において、本実施の形態に係る画像処理装置は、例えば、実装対象となるチップの正確な位置決めを行うために必要となる画像処理を行う。なお、本実施の形態に係る画像処理装置が適用される装置については、電子部品実装装置に限定されるものではなく適宜変更が可能である。例えば、ハードウェアによる画像処理と、ソフトウェアによる画像処理とを並行して行う必要がある任意の装置に適用できる。
【００３２】
図１は、本実施の形態に係る画像処理装置１００の構成を示すブロック図である。なお、図１に示すブロック図は、本発明に係る画像処理装置１００を説明するために簡略化されたものであり、通常の画像処理装置が備える構成を更に備えていてもよい。
【００３３】
図１に示すように、画像処理装置１００は、装置全体の制御を行う制御部としてのＣＰＵ１０１と、このＣＰＵ１０１に接続されたメモリ１０２とを備える。このメモリ１０２は、第１のメモリを構成するものであり、後述するデータ転送部１０５から転送される画像データを保存する。例えば、メモリ１０２には、ＤＤＲ３  ＳＤＲＡＭ（Ｄｏｕｂｌｅ−Ｄａｔａ−Ｒａｔｅ３  Ｓｙｎｃｈｒｏｎｏｕｓ  Ｄｙｎａｍｉｃ  Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）を使用することができる。なお、メモリ１０２の構成についてはＤＤＲ３  ＳＤＲＡＭに限定されるものではない。
【００３４】
また、メモリ１０２は、ＣＰＵ１０１が装置全体を制御するための制御プログラムや各種データ（例えば、フィルタ処理用のパラメータ）を保存する。制御プログラムには、メモリ１０２に保存された画像データに対して画像処理を行う場合の画像処理プログラムが含まれる。ＣＰＵ１０１は、この画像処理プログラムに従って、メモリ１０２に保存された画像データに対して画像処理を行う。この場合において、ＣＰＵ１０１による画像処理は、一般に複雑な判断やアルゴリズムを要するソフトウェアにより処理が有効な画像処理に適用される。例えば、後述するデータ転送部１０５から転送される画像データに対する画像処理だけでなく、画像処理部１０４による画像処理後の画像間演算などの画像処理がＣＰＵ１０１で行われる。
【００３５】
ここで、ＣＰＵ１０１とメモリ１０２とは、専用のバスＢ１を介して接続されている。すなわち、このバスＢ１には他の構成要素がアクセスできず、ＣＰＵ１０１が専有できる。例えば、バスＢ１には、複数の信号線で同時に複数のビットデータを転送可能なパラレル転送方式のバスを採用でき、１回の転送で同時に複数のビットデータを転送することができる。
【００３６】
また、画像処理装置１００は、データ入力部１０３、画像処理部１０４、データ転送部１０５及びデータ転送部１０６を備える。なお、これらのデータ入力部１０３、画像処理部１０４、データ転送部１０５及びデータ転送部１０６の機能は、例えば、ＦＰＧＡ（Ｆｉｅｌｄ−Ｐｒｏｇｒａｍｍａｂｌｅ  Ｇａｔｅ  Ａｒｒａｙ）ボード上に実装された所定の論理回路で構成される。このようにＦＰＧＡボード上に実装された論理回路でこれらの構成要素を構成することにより、ハードウェアによる入力処理、画像処理及びデータ転送処理が実現される。
【００３７】
さらに、画像処理装置１００は、データ転送部１０６と接続されたメモリ１０７を備える。このメモリ１０７は、第２のメモリを構成するものであり、データ転送部１０６により転送された画像データが保存される。例えば、データ入力部１０３、画像処理部１０４、データ転送部１０５及びデータ転送部１０６の機能がＦＰＧＡボード上に実装された論理回路で構成される場合、当該ＦＰＧＡのプログラムは、メモリ１０７に保存される。例えば、メモリ１０７には、メモリ１０２と同様に、ＤＤＲ３  ＳＤＲＡＭを使用することができる。なお、メモリ１０７の構成についてはＤＤＲ３  ＳＤＲＡＭに限定されるものではない。
【００３８】
ここで、データ転送部１０６とメモリ１０７とは、専用のバスＢ２を介して接続されている。すなわち、このバスＢ２には他の構成要素がアクセスできず、データ転送部１０６が専有きる。例えば、バスＢ２には、複数の信号線で同時に複数のビットデータを転送可能なパラレル転送方式のバスを採用でき、１回の転送で同時に複数のビットデータを転送することができる。
【００３９】
データ入力部１０３は、入力部を構成するものであり、画像処理対象となる画像データの入力処理を行う。データ入力部１０３は、入力処理を行った画像データをデータ転送部１０５及びデータ転送部１０６に出力する。すなわち、データ転送部１０５及びデータ転送部１０６には、データ入力部１０３を介して共通の画像データが入力される。
【００４０】
データ転送部１０５は、データ入力部１０３から入力された画像データをＣＰＵ１０１経由でメモリ１０２に転送する。また、データ転送部１０５は、後述するように、画像処理部１０４による画像処理後の画像データをＣＰＵ１０１経由でメモリ１０２に転送する。
【００４１】
データ転送部１０６は、データ入力部１０３から入力された画像データをメモリ１０７に転送する。また、データ転送部１０６は、後述するように、画像処理部１０４からの要求に応じてメモリ１０７内に保存された画像データを画像処理部１０４に出力する。
【００４２】
画像処理部１０４は、メモリ１０７に保存された画像データに対して画像処理を行う。画像処理部１０４は、メモリ１０７に保存された画像データに対して画像処理を行う際、データ転送部１０６に画像データの取得を要求し、専用バスＢ２を介してメモリ１０７から画像データを取得する。すなわち、画像処理部１０４は、ＣＰＵ１０１とメモリ１０２との専用バスＢ１と異なるバス（専用バスＢ２）を介してメモリ１０７に接続されている。この場合において、画像処理部１０４による画像処理は、一般に単純な演算を繰り返すようなハードウェアによる処理が有効な画像処理に適用される。例えば、画素変換、画像間演算、エッジ強調、特徴量抽出、画像間パターンマッチングなどの画像処理が画像処理部１０４により行われる。
【００４３】
例えば、本実施の形態に係る画像処理装置１００において、画像処理部１０４は、図示しない撮像装置で撮影された撮像データ（画像処理対象となる画像データ）と、予め準備された比較対象データとを比較することで両者の相関値を所定間隔で演算する（対象画像データと比較対象データとの画像間演算処理）。そして、その演算結果として画像処理後の画像データを順次、データ転送部１０５を介してメモリ１０２に出力する。一方、一定量の画像処理後の画像データがメモリ１０２に蓄積されると、ＣＰＵ１０１は、これらの画像処理後の画像データを比較することで、比較対象データとの間で最も相関値が高い画像データを選択する（画像処理後の画像データ間の画像間演算処理）。このように比較対象データと最も相関値が高い画像データを選択することにより、例えば、画像処理装置１００を備えた電子部品の実装装置において、実装対象となるチップの実装箇所を正確に特定することができる。
【００４４】
次に、本実施の形態に係る画像処理装置１００で画像処理を行う場合の動作について、図１を参照しながら説明する。なお、以下においては、画像処理装置１００に備えられる撮像装置で撮像された撮像データが画像データとしてデータ入力部１０３に入力される場合について説明する。まず、撮像装置で撮像された単一の撮像データ（画像データ）がデータ入力部１０３に入力された場合について説明する。
【００４５】
撮像装置から撮像データ（画像データ）が入力されると、データ入力部１０３は、この画像データに対して入力処理を行う。そして、データ入力部１０３は、入力処理後の画像データをデータ転送部１０５及びデータ転送部１０６に出力する。データ転送部１０５は、ＣＰＵ１０１を介してこの画像データをメモリ１０２に転送する。一方、データ転送部１０６は、この画像データをメモリ１０７に転送する。メモリ１０２及びメモリ１０７は、それぞれデータ転送部１０５及びデータ転送部１０６から入力された画像データを保存する。この場合、メモリ１０２及びメモリ１０７には、データ入力部１０３で入力処理された共通の画像データが保存される。
【００４６】
一定量の画像データがメモリ１０７に保存されると、画像処理部１０４は、データ転送部１０６を介してメモリ１０７に保存された画像データを読み出す。そして、読み出した画像データに対して画像処理を行う（ハードウェアによる画像処理）。画像処理部１０４は、画像処理後の画像データをデータ転送部１０５に出力する。データ転送部１０５は、ＣＰＵ１０１を介してこの画像処理後の画像データをメモリ１０２に転送する。
【００４７】
一定量の画像処理後の画像データがメモリ１０２に保存されると、ＣＰＵ１０１は、この画像処理後の画像データを読み出す。そして、ＣＰＵ１０１は、この読み出した画像処理後の画像データに対して画像処理を行う（ソフトウェアによる画像処理）。このようにしてＣＰＵ１０１による画像処理が完了すると、画像処理装置１００に入力された単一の画像データに対して画像処理を行う場合の一連の動作が終了する。
【００４８】
なお、ここでは、ＣＰＵ１０１によりメモリ１０２に保存された画像処理後の画像データに対して画像処理を行う場合について説明している。しかしながら、メモリ１０２には、この画像処理後の画像データに先行して、メモリ１０７と共通の画像データが保存されている。このため、ＣＰＵ１０１でメモリ１０２に保存された画像データ（データ入力部１０３からデータ転送部１０５を介して入力された画像データ）に対して画像処理を行う場合には、この画像データを読み出して画像処理を行うことができる。
【００４９】
このように本実施の形態に係る画像処理装置１００においては、データ入力部１０３を介して入力された共通の画像データがメモリ１０２及びメモリ１０７に保存される。また、ソフトウェアによる画像処理を行うＣＰＵ１０１が専用バスＢ１を介してメモリ１０２に接続される一方、ハードウェアによる画像処理を行う画像処理部１０４が専用バスＢ１と異なるバス（専用バスＢ２）を介してメモリ１０７に接続される。これらにより、メモリ１０７及びメモリ１０２に保存された共通の画像データに対して画像処理部１０４、ＣＰＵ１０１がそれぞれ独立してアクセスできるので、画像処理部１０４及びＣＰＵ１０１の一方が他方の処理を待機する事態を回避でき、画像処理に要する処理時間を短縮することが可能となる。
【００５０】
特に、本実施の形態に係る画像処理装置１００においては、データ入力部１０３により入力処理が行われた画像データをメモリ１０２及びメモリ１０７にそれぞれ転送するデータ転送部１０５及びデータ転送部１０６を備えている。これにより、入力処理後の画像データの転送処理時に待機時間が発生する事態を回避でき、画像処理に先行して行う転送時間を短縮でき、結果として画像処理に要する処理時間を短縮することが可能となる。
【００５１】
なお、図１に示す画像処理装置１００においては、データ入力部１０３により入力処理が行われた画像データをメモリ１０２及びメモリ１０７にそれぞれ転送する一対のデータ転送部１０５及びデータ転送部１０６を備える場合について説明している。しかしながら、データ入力部１０３により入力処理が行われた画像データをメモリ１０２及びメモリ１０７に転送する構成については、これに限定されるものではなく適宜変更が可能である。例えば、共通の画像データを複製してメモリ１０２及びメモリ１０７に転送する単一のデータ転送部を備えるようにしてもよい。
【００５２】
次に、撮像装置で撮像された連続した複数の撮像データ（画像データ）がデータ入力部１０３に入力された場合の画像処理装置１００の画像処理について、図２を参照しながら説明する。図２は、本実施の形態に係る画像処理装置１００の動作を示したタイミングチャートである。なお、図２においては、撮像装置で撮像された連続した３枚の撮像データ（画像データ）がデータ入力部１０３に入力される場合について示している。
【００５３】
１枚目の画像データ（以下、適宜「画像Ｄ１」という）が入力されると、データ入力部１０３で入力処理が行われる（時点ｔ０）。ここで、画像データの入力処理は、例えば、撮像装置により撮像されたラインデータ毎に行われる。そして、入力処理後の画像Ｄ１のラインデータは、データ転送部１０６からメモリ１０７に転送され、メモリ１０７に保存される（メモリ１０７への書き込み（ライト））。これと並行して、入力処理後の画像Ｄ１のラインデータは、データ転送部１０５からメモリ１０２に転送され、メモリ１０２に保存される（メモリ１０２へのライト）。
【００５４】
一定量の画像Ｄ１のラインデータがメモリ１０７に保存されると、ハードウェアによる画像処理を行うべく、画像処理部１０４によりデータ転送部１０６を介してメモリ１０７に保存された画像Ｄ１が読み出される（メモリ１０７からの読み出し（リード）：時点ｔ１）。この場合、メモリ１０７を転送能力に優れたＤＤＲ３  ＳＤＲＡＭ等で構成することにより、画像Ｄ１の書き込みを行う合間に、画像処理部１０４による画像Ｄ１の読み出しに対応できる。画像処理部１０４は、読み出した画像Ｄ１に対して画像処理を行う。
【００５５】
画像処理後の画像Ｄ１（以下、適宜「画像Ｄ１´」という）は、データ転送部１０５及びＣＰＵ１０１を介してメモリ１０２に転送され、メモリ１０２に保存される（メモリ１０２へのライト：時点ｔ２）。この場合、メモリ１０２を転送能力に優れたＤＤＲ３  ＳＤＲＡＭ等で構成することにより、画像Ｄ１の書き込みを行う合間に、画像Ｄ１´の書き込みに対応できる。
【００５６】
メモリ１０２に対して画像Ｄ１´を書き込む過程において、画像Ｄ１の入力が終了し、２枚目の画像データ（以下、適宜「画像Ｄ２」という）が入力されると、画像Ｄ１と同様に、データ入力部１０３で入力処理が行われる（時点ｔ３）。そして、入力処理後の画像Ｄ２のラインデータは、データ転送部１０６からメモリ１０７に転送され、メモリ１０７に保存される（メモリ１０７へのライト）。これと並行して、入力処理後の画像Ｄ２のラインデータは、データ転送部１０５からメモリ１０２に転送され、メモリ１０２に保存される（メモリ１０２へのライト）。
【００５７】
一定量の画像Ｄ２のラインデータがメモリ１０７に保存されると、画像処理部１０４により、データ転送部１０６を介してメモリ１０７に保存された画像Ｄ２が読み出される（メモリ１０７からのリード：時点ｔ４）。画像処理部１０４は、読み出した画像Ｄ２に対して画像処理を行う。
【００５８】
一方、画像Ｄ２に対して画像処理を行う過程において、画像Ｄ１´のメモリ１０２への書き込みが終了すると、ソフトウェアによる画像処理を行うべく、ＣＰＵ１０１によりメモリ１０２に保存された画像Ｄ１´が読み出される（メモリ１０７からのリード：時点ｔ５）。この場合、メモリ１０２を転送能力に優れたＤＤＲ３  ＳＤＲＡＭ等で構成することにより、画像Ｄ２の書き込みを行う合間に、ＣＰＵ１０１による画像Ｄ１´の読み出しに対応できる。ＣＰＵ１０１は、読み出した画像Ｄ１´に対して画像処理を行う。
【００５９】
この画像処理と並行して、画像処理後の画像Ｄ２（以下、適宜「画像Ｄ２´」という）が、データ転送部１０５及びＣＰＵ１０１を介してメモリ１０２に転送され、メモリ１０２に保存される（メモリ１０２へのライト：時点ｔ６）。この場合、メモリ１０２を転送能力に優れたＤＤＲ３  ＳＤＲＡＭ等で構成することにより、画像Ｄ１´の読み出しを行う合間に、メモリ１０２への画像Ｄ２´の書き込みに対応できる。
【００６０】
メモリ１０２に対して画像Ｄ２´を書き込む過程において、画像Ｄ２の入力が終了し、３枚目の画像データ（以下、適宜「画像Ｄ３」という）が入力されると、画像Ｄ２と同様に、データ入力部１０３で入力処理が行われる（時点ｔ７）。そして、入力処理後の画像Ｄ３のラインデータは、データ転送部１０６からメモリ１０７に転送され、メモリ１０７に保存される（メモリ１０７へのライト）。これと並行して、入力処理後の画像Ｄ３のラインデータは、データ転送部１０５からメモリ１０２に転送され、メモリ１０２に保存される（メモリ１０２へのライト）。
【００６１】
一定量の画像Ｄ３のラインデータがメモリ１０７に保存されると、画像処理部１０４により、データ転送部１０６を介してメモリ１０７に保存された画像Ｄ３が読み出される（メモリ１０７からのリード：時点ｔ８）。そして、画像処理部１０４は、読み出した画像Ｄ３に対して画像処理が行われる。
【００６２】
一方、画像Ｄ３に対して画像処理を行う過程において、画像Ｄ２´のメモリ１０２への書き込みが終了すると、ソフトウェアによる画像処理を行うべく、ＣＰＵ１０１によりメモリ１０２に保存された画像Ｄ２´が読み出される（メモリ１０７からのリード：時点ｔ９）。そして、ＣＰＵ１０１は、読み出した画像Ｄ２´に対して画像処理が行われる。
【００６３】
この画像処理と並行して、画像処理後の画像Ｄ３（以下、適宜「画像Ｄ３´」という）が、データ転送部１０５及びＣＰＵ１０１を介してメモリ１０２に転送され、メモリ１０２に保存される（メモリ１０２へのライト：時点ｔ１０）。
【００６４】
画像Ｄ３´のメモリ１０２への書き込みが終了すると、ソフトウェアによる画像処理を行うべく、ＣＰＵ１０１によりメモリ１０２に保存された画像Ｄ３´が読み出される（メモリ１０７からのリード：時点ｔ１１）。ＣＰＵ１０１は、読み出した画像Ｄ３´に対して画像処理を行う。このようにしてＣＰＵ１０１による画像Ｄ３に対する画像処理が完了すると、画像処理装置１００に入力された複数（３枚）の画像データに対して画像処理を行う場合の一連の動作が終了する。
【００６５】
このように本実施の形態に係る画像処理装置１００においては、画像処理部１０４から画像処理後の画像データがメモリ１０２に出力され、ＣＰＵ１０１でこの画像処理後の画像データに対して画像処理が行われる。これにより、画像処理部１０４による画像処理後の画像データに対しても、画像処理部１０４による画像処理と並行して画像処理を行うことができるので、画像処理部１０４による画像処理後の画像データに対してＣＰＵ１０１で画像処理を行う場合においても、画像処理に要する処理時間を短縮することが可能となる。この結果、連続して画像処理が必要な場合における画像処理に要する処理時間を短縮することが可能となる。
【００６６】
なお、上記実施の形態に係る画像処理装置１００においては、ハードウェアによる画像処理を行う画像処理部１０４及びこれに対応するメモリ１０７をそれぞれ１つ備える場合について説明している。しかしながら、画像処理装置１００におけるハードウェアによる画像処理の負荷を考慮して、画像処理部１０４及びこれに対応するメモリ１０７を複数備えることは実施の形態として好ましい。
【００６７】
以下、上記実施の形態に係る画像処理装置１００を一部変形した実施の形態について説明する。図３は、本実施の形態の変形例に係る画像処理装置２００の構成を示すブロック図である。なお、図３に画像処理装置２００において、図１に示す画像処理装置１００と共通する構成については、同一の符号を付してその説明を省略する。
【００６８】
図３に示す画像処理装置２００においては、複数の画像処理部１０４ａ〜１０４ｎ、データ転送部１０６ａ〜１０６ｎ及びこれに対応するメモリ１０７ａ〜１０７ｎを備える点で上記実施の形態に係る画像処理装置１００と相違する。画像処理部１０４ａ〜１０４ｎは、それぞれ上記実施の形態に係る画像処理装置１００の画像処理部１０４と同一の機能を有する。また、データ転送部１０６ａ〜１０６ｎは、それぞれ上記実施の形態に係る画像処理装置１００のデータ転送部１０６と同一の機能を有する。さらに、メモリ１０７ａ〜１０７ｎは、それぞれ上記実施の形態に係る画像処理装置１００のメモリ１０７と同一の機能を有する。
【００６９】
ここで、データ転送部１０６ａとメモリ１０７ａとは、専用のバスＢ２ａを介して接続されている。すなわち、このバスＢ２ａには他の構成要素がアクセスできず、データ転送部１０６ａが専有できる。例えば、バスＢ２ａには、複数の信号線で同時に複数のビットデータを転送可能なパラレル転送方式のバスを採用でき、１回の転送で同時に複数のビットデータを転送することができる。同様に、データ転送部１０６ｂ〜１０６ｎとメモリ１０７ｂ〜１０７ｎとは、専用のバスＢ２ｂ〜Ｂ２ｎを介して接続されている。
【００７０】
このような構成を有する画像処理装置２００によれば、ＣＰＵ１０１を用いたソフトウェアによる画像処理と、画像処理部１０４ａ〜１０４ｎを用いたハードウェアによる画像処理とを並行して行うことができる。このため、例えば、ソフトウェアによる画像処理に先行して必要となる画像処理を画像処理部１０４ａ〜１０４ｎで並行して行うことができるので、装置全体で画像処理に要する処理時間を短縮することが可能となる。
【００７１】
このようにＣＰＵ１０１を用いたソフトウェアによる画像処理と、画像処理部１０４ａ〜１０４ｎを用いたハードウェアによる画像処理とを並行して行うことにより、例えば、上述した実装対象となるチップの実装箇所を正確に特定するための画像処理と、撮像した撮像データ（画像データ）における重心を特定するための画像処理等とを並行して行うことが可能となる。
【００７２】
そして、このような画像処理装置１００、２００を電子部品の実装装置に適用する場合には、上述した画像処理装置１００、２００で得られる効果を電子部品の実装装置で得ることができる。これにより、例えば、電子部品の実装装置において、実装対象となる電子部品を正確に位置決めすることや、この電子部品の実装位置を適切に特定することが可能となる。
【００７３】
なお、以上の説明においては、データ入力部１０３、画像処理部１０４、データ転送部１０５及びデータ転送部１０６の機能は、例えば、ＦＰＧＡボード上に実装された所定の論理回路で構成される場合について説明している。しかしながら、これらのデータ入力部１０３、画像処理部１０４、データ転送部１０５及びデータ転送部１０６の構成については、これに限定されるものではなく適宜変更が可能である。
【００７４】
次に、上記実施の形態に係る画像処理装置１００が適用される電子部品実装装置の一例について説明する。図４は、上記実施の形態に係る画像処理装置１００が適用される電子部品実装装置（以下、適宜「実装装置」という）３００の要部概略図である。図４においては、実装装置３００により電子部品をプリント配線基板（基板）に実装する際に電子部品の位置や姿勢等を認識する構成要素を含む実装装置３００の要部を示している。
【００７５】
図４に示すように、実装装置３００は、上述した画像処理装置１００を電子部品実装装置用に設計した画像処理装置３０１と、この画像処理装置３０１に接続される電子部品搬送ヘッド（以下、単に「搬送ヘッド」という）３０２、カメラ３０３及び照明３０４とを含んで構成される。なお、この場合において、カメラ３０３は、基板に対する実装対象となる電子部品（以下、単に「部品」という）Ｐを撮像する撮像素子を構成する。
【００７６】
搬送ヘッド３０２は、図示しない駆動機構により、基板の延在方向と水平且つ直交するＸ軸方向、Ｙ軸方向に移動可能に構成される。搬送ヘッド３０２は、例えば、上面視にて長方形状を有し、図４に示すＸ軸方向に沿って長辺が配置された筐体を有する。搬送ヘッド３０２の下面には、複数の吸着ノズル３０５が設けられている。本実施の形態では、６本の吸着ノズル３０５が図４に示すＸ軸方向に並べて設けられる場合について示している。なお、搬送ヘッド３０２の形状については、上記形状に限定されるものではなく、下面に複数の吸着ノズル３０５の設置スペースが設けられることを前提として任意の形状を適用できる。
【００７７】
吸着ノズル３０５は、例えば、搬送ヘッド３０２の筐体を介して図示しない吸引機構に接続されている。吸着ノズル３０５は、概して筒形状を有し、下端に形成された吸引孔で部品Ｐを吸着可能に構成されている。また、吸着ノズル３０５は、図示しない駆動機構に接続され、その下方側部分を図４に示すＺ軸方向に移動可能に構成される。部品Ｐは、搬送ヘッド３０２によりＸ軸、Ｙ軸方向に搬送されると共に、吸着ノズル３０５でＺ軸方向に搬送された後、吸引が解除されることで基板の所望の位置に載置される。
【００７８】
カメラ３０３は、例えば、ＣＣＤ（Ｃｈａｒｇｅ  Ｃｏｕｐｌｅｄ  Ｄｅｖｉｃｅ）カメラで構成される。カメラ３０３は、搬送ヘッド３０２の吸着ノズル３０５に保持（吸着保持）された部品Ｐの対向面（図４では、搬送ヘッド３０２により上方側領域を搬送される部品Ｐの下面）を撮像する。なお、撮像された部品Ｐの撮像データは、部品Ｐの有無、形状不良又は位置等の判定に利用される。
【００７９】
照明３０４は、例えば、複数の発光ダイオード（ＬＥＤ）を有するＬＥＤ照明で構成される。照明３０４は、カメラ３０３により撮像される撮像範囲を照光する。より具体的には、照明３０４は、後述する認識処理の対象となる部品Ｐを保持する吸着ノズル３０５が撮像画面データの中心位置に配置された場合に周辺の吸着ノズル３０５を含む撮像範囲を照光可能に構成される。照明３０４は、搬送ヘッド３０２により撮像対象となる部品Ｐが撮像位置に到達するタイミングで撮像範囲を照光する。また、照明３０４は、発光ダイオード（ＬＥＤ）等の光源からの光量を調節する機能を備える。
【００８０】
画像処理装置３０１は、搬送ヘッド３０２、カメラ３０３及び照明３０４を制御する機能を備える。具体的には、搬送ヘッド３０２による搬送位置、吸着ノズル３０５による部品Ｐの移動位置又は吸引の有無、カメラ３０３による撮像タイミング（露光タイミング）、照明３０４による照光タイミング及び照光時の光量を制御する。例えば、画像処理装置３０１は、実装装置３００全体を制御する図示しない制御装置（以下、「実装装置３００の制御装置」という）からの指示に従って搬送ヘッド３０２、カメラ３０３及び照明３０４を制御する。
【００８１】
また、画像処理装置３０１は、カメラ３０３で撮像された撮像画像データに基づいて、位置決め対象となる部品Ｐの位置決めに必要な画像処理を行い、部品Ｐの有無や形状不良又は位置（吸着ノズル３０５による保持姿勢）等を判定する機能を有する。このような画像処理装置３０１による判定結果は、実装装置３００の制御装置に通知される。例えば、実装装置３００の制御装置は、この判定結果に応じて、基板に対する部品Ｐの実装を制御し、或いは、画像処理装置３０１に対する指示を決定する。
【００８２】
以下、実装装置３００に適用される画像処理装置３０１の一例について説明する。図５は、図４に示す実装装置３００に適用される画像処理装置３０１の一例の説明図である。図５において、図１に示す画像処理装置１００と共通する構成要素については、同一の符号を付与し、その詳細な説明を省略する。画像処理装置３０１は、画像処理装置１００と共通する構成要素として、ＣＰＵ１０１、メモリ１０２及びメモリ１０７を有する。
【００８３】
図５に示すＣＰＵ１０１は、実装装置３００の制御装置との間の通信制御やメモリ１０２に対するデータの書き込み又はデータの読み出し制御を行う。また、ＣＰＵ１０１は、撮像処理で撮像された画像データ（以下、「撮像画像データ」という）に対する画像処理を行い、部品Ｐの認識処理を行う。なお、これらの撮像処理及び認識処理については後述する。メモリ１０２は、撮像画像データや、認識処理により特定された情報等を保存する。メモリ１０７は、後述するＦＰＧＡ処理部３０６による各種処理で使用されるワークメモリを構成する。
【００８４】
画像処理装置３０１は、ＦＰＧＡボード上に実装された所定の論理回路で構成されるＦＰＧＡ処理部３０６を備える。このＦＰＧＡ処理部３０６は、撮像回路３０６Ａ、画像出力回路３０６Ｂ、画像データ転送回路３０６Ｃ、プレ前処理回路３０６Ｄ及び変換前処理回路３０６Ｅを含んで構成される。ＦＰＧＡ処理部３０６は、これらの回路を備え、部品Ｐの撮像、画像出力、画像データ転送及び単純な画像処理（プレ前処理、変換前処理）を実行する専用回路を構成する。
【００８５】
なお、本実施の形態では、ＦＰＧＡボード上に実装された所定の論理回路で専用回路を構成する場合について説明するが、専用回路の構成については、これに限定されるものではなく適宜変更が可能である。例えば、ＦＰＧＡボード上に実装された所定の論理回路と異なる別手法の専用回路やＣＰＵ１０１による演算処理で同一の機能を提供することも可能である。
【００８６】
このような構成を有し、画像処理装置３０１は、部品Ｐの撮像処理及び認識処理を行う。ここで、撮像処理とは、カメラ３０３の露光とカメラ３０３が受光したデータをＣＰＵ１０１（メモリ１０２）に転送する処理をいう。また、認識処理とは、カメラ３０３により撮像された撮像画面データ上の部品Ｐの位置を算出する処理をいう。この認識処理には、外接走査による部品Ｐの粗位置特定、画像データの二値化、濃度変換などの画像加工、ノイズ除去や特徴抽出のためのフィルタ演算等、部品Ｐを位置決めし易くする前処理段階と、部品Ｐの位置決めや検査を精密に行うための特徴抽出段階とがある。
【００８７】
特徴抽出段階の認識処理においては、部品Ｐの種類毎に抽出すべき特徴が異なり、高い精度が要求される。一方、前処理段階の認識処理においては、部品Ｐの種類に依らず、精度に直接的に影響を与えない処理が多い。画像処理装置３０１は、撮像処理及び認識処理の一部（前段階の認識処理）をＦＰＧＡ処理部３０６で行う一方、認識処理の一部（特徴抽出段階の認識処理）をＣＰＵ１０１で行う。なお、前段階の認識処理は、ハードウェアによる画像処理を構成し、特徴抽出段階の認識処理は、ソフトウェアによる画像処理を構成する。また、前段階の認識処理は、ハードウェアによる画像処理に必要な情報を取得する前処理を構成する。画像処理装置３０１においては、ＣＰＵ１０１と別に専用経路としてＦＰＧＡ処理部３０６を備えるため、これらの処理を並列に行うことができ、効率的に撮像処理及び認識処理を実行することができる。
【００８８】
撮像回路３０６Ａは、カメラ３０３及び照明３０４にインターフェイスを介して接続され、撮像範囲に含まれる部品Ｐを撮像するための処理を行う。撮像回路３０６Ａは、ＣＰＵ１０１を介して実装装置３００の制御装置から指示される撮像のためのパラメータ（撮像パラメータ）に従って部品Ｐの撮像を行う。なお、撮像パラメータには、例えば、カメラ３０４による撮像タイミングや、照明３０５による照光時の光量などが含まれる。
【００８９】
画像出力回路３０６Ｂは、各種の画像データを表示するモニタにインターフェイスを介して接続され、このモニタに対して画像データ（撮像画像データ）を出力する処理（出力処理）を行う。画像出力回路３０６Ｂは、撮像回路３０６Ａの制御により撮像された画像データ（撮像画像データ）や、ＣＰＵ１０１により認識処理が行われた画像データを出力する。
【００９０】
画像データ転送回路３０６Ｃは、撮像回路３０６Ａの制御により撮像された画像データ（撮像画像データ）をＣＰＵ１０１に転送する処理を行う。また、後述する変換前処理回路３０６Ｅにて変換前処理により取得された変換前処理情報をＣＰＵ１０１に転送する処理を行う。
【００９１】
プレ前処理回路３０６Ｄは、プレ前処理を行う。ここで、プレ前処理とは、次回の撮像処理により特徴抽出する部品Ｐに対して、１つ前の撮像画面データから事前に粗位置決めや濃度情報を取得する処理をいう。なお、このプレ前処理は、前段階の認識処理の一部を構成する。プレ前処理により取得された情報は、ＣＰＵ１０１を介して実装装置３００の制御装置に通知される。実装装置３００の制御装置では、通知された情報に基づいて、次回の撮像時における照明３０５による照光時の光量を調整する。調整後の光量は、撮像パラメータとしてＣＰＵ１０１を介して撮像回路３０６Ａに通知される。調整後の光量の通知を受けると、撮像回路３０６Ａにおいては、次回の撮像時における照明３０５による光量を調整する。
【００９２】
変換前処理回路３０６Ｅは、変換前処理を行う。ここで、変換前処理とは、部品Ｐの種類に応じて選択的に行われる、特徴抽出のための二値化処理、濃度補正処理、フィルタ演算処理やエッジ抽出処理をいう。この変換前処理は、前段階の認識処理の一部を構成する。変換前処理により取得された情報は、ＣＰＵ１０１に通知される。ＣＰＵ１０１は、通知された情報に基づいて、特徴抽出段階の認識処理を行う。例えば、ＣＰＵ１０１は、特徴抽出段階の認識処理として、通知された情報のパターンマッチング処理を行う。このようにＣＰＵ１０１では、プレ前処理や変換前処理を行うことなく、特徴抽出段階の認識処理を行うだけで済むので、認識処理の処理速度が向上される。
【００９３】
ここで、本実施の形態に係る実装装置３００が有するカメラ３０３により撮像される撮像画面について説明する。図６は、図４に示す実装装置３００が有するカメラ３０３により撮像される撮像画面の説明図である。なお、図６においては、搬送ヘッド３０２が同図に示す左方側に進行するものとする。また、図６においては、説明の便宜上、カメラ３０３の有効視野に進入する順番に部品Ｐ１〜部品Ｐ６の符号を付与している。さらに、図６においては、認識処理の対象となる部品Ｐ１がカメラ３０３の撮像画面の中心位置に配置された場合について示している。
【００９４】
図６に示すように、カメラ３０３の有効視野は、複数の吸着ノズル３０５を含むように構成される。これにより、カメラ３０３は、有効視野内に含まれる吸着ノズル３０５で保持する部品Ｐの撮像画像データを含む撮像画面を撮像可能に構成される。より具体的には、認識処理の対象となる部品Ｐ１の撮像画像データが撮像画面の中心に配置された場合に後続する部品Ｐ２の撮像画像データを含む撮像画面を撮像可能に構成される。この場合、カメラ３０３により撮像された撮像画面データには、部品Ｐ１、Ｐ２に対する撮像画像データＰ１´、Ｐ２´が含まれる。
【００９５】
照明３０４は、このようにカメラ３０３により撮像される撮像画面に対応する撮像範囲を照光可能に構成される。すなわち、照明３０４は、有効視野内に含まれる吸着ノズル３０５で保持する部品Ｐを含む撮像範囲を撮像可能に構成される。より具体的には、認識処理の対象となる部品Ｐ１が撮像画面の中心に配置された場合に後続する部品Ｐ２を含む撮像範囲を照光可能に構成される。なお、認識処理の対象となる部品Ｐ１以外の部品Ｐ２に対する光量は、部品Ｐ１に対する光量ほど要求されない。したがって、部品Ｐ２に対する光量は、一定程度の光量を確保すればよい。
【００９６】
本実施の形態に係る画像処理装置３０１においては、実装対象となる複数の部品Ｐの撮像画像データを含む撮像画面データを順次取り込んで、各撮像画面データ内の位置決め対象となる特定の部品Ｐの位置決めに必要な画像処理を行う。この場合において、画像処理装置３０１は、撮像画面の中心に配置される部品Ｐ（例えば、部品Ｐ１）に対する撮像処理及びこの部品Ｐ（部品Ｐ１）の周辺の部品Ｐ（例えば、部品Ｐ２）の前処理段階の認識処理（プレ前処理及び変換前処理）をＦＰＧＡ処理部３０６で実行する。そして、これらの撮像処理及び前処理段階の認識処理（プレ前処理及び変換前処理）に並行して特徴抽出段階の認識処理（特徴抽出処理）をＣＰＵ１０１で実行する。
【００９７】
以下、図５に示す画像処理装置３０１における撮像処理及び認識処理の動作の概略について説明する。図７は、図５に示す画像処理装置３０１における撮像処理及び認識処理の動作の概略を示すタイミングチャートである。図７においては、説明の便宜上、３本の吸着ノズル３０５に保持される部品Ｐ１〜Ｐ３に対する撮像処理及び認識処理について説明するものとする。図７においては、中段に本実施の形態に係る画像処理装置３０１の撮像処理及び認識処理を示している。また、図７においては、説明の便宜上、上段に認識処理全体をＣＰＵ１０１で実行する場合の参照例を示し、下段に部品Ｐ１のプレ前処理もＦＰＧＡ処理部３０６で実行する場合の変形例を示している。
【００９８】
図７の中段に示すように、画像処理装置３０１のＦＰＧＡ処理部３０６においては、部品Ｐ１に対して、撮像回路３０６Ａによりカメラ３０３の露光処理を行った後、画像データ転送回路３０６Ｃにより受光した撮像画像データＰ１´をＣＰＵ１０１に転送する（撮像処理）。この撮像処理に並行して、ＦＰＧＡ処理部３０６においては、プレ前処理回路３０６Ｄにより部品Ｐ２の撮像画像データＰ２´に対するプレ前処理を行う。このプレ前処理により、次回の撮像処理に応じて特徴抽出する部品Ｐ２に対して、１つ前の撮像画像から事前に粗位置決めや濃度情報が取得される。プレ前処理により取得された情報（以下、適宜「プレ前処理情報」という）は、変換前処理回路３０６Ｅに出力される。
【００９９】
撮像画像データＰ１´を受け取ったＣＰＵ１０１は、撮像画像データＰ１´に必要な前処理を行った後、特徴抽出処理を行う。なお、このＣＰＵ１０１で行われる前処理は、ＦＰＧＡ処理部３０６の変換前処理回路３０６Ｅで行われる変換前処理に相当する。本実施の形態に係る画像処理装置３０１においては、撮像画像データＰ１´に対する変換前処理をＦＰＧＡ処理部３０６で行う代わりにＣＰＵ１０１で前処理を行う。なお、ＣＰＵ１０１による特徴抽出処理により取得された情報（以下、適宜「特徴抽出処理情報」という）は、実装装置３００の制御装置に通知される。
【０１００】
画像処理装置３０１のＦＰＧＡ処理部３０６においては、ＣＰＵ１０１による撮像画像データＰ２´に対する前処理及び撮像画像データＰ１´に対する特徴抽出処理と並行して、部品Ｐ２に対する撮像処理が行われる。撮像処理により撮像された撮像画像データＰ２´は、ＣＰＵ１０１に転送される。さらに、ＦＰＧＡ処理部３０６においては、プレ前処理回路３０６Ｄにより部品Ｐ３の撮像画像データＰ３´に対するプレ前処理を行うと共に、変換前処理回路３０６Ｅにより撮像画像データＰ２´に対する変換前処理を行う。プレ前処理により取得されたプレ前処理情報は、変換前処理回路３０６Ｅに出力され、変換前処理により取得された情報（以下、適宜「変換前処理情報」という）は、画像データ転送回路３０６ＣによりＣＰＵ１０１に転送される。
【０１０１】
撮像画像データＰ２´及び変換前処理情報を受け取ったＣＰＵ１０１は、この撮像画像データＰ２´に対する特徴抽出処理を行う。撮像画像データＰ２´に対しては、ＦＰＧＡ処理部３０６にて変換前処理が行われているため、ＣＰＵ１０１にて前処理を行う必要はない。このため、ＣＰＵ１０１は、撮像画像データＰ２´に対して特徴抽出処理のみを行う。ＣＰＵ１０１による特徴抽出処理により取得された特徴抽出処理情報は、実装装置３００の制御装置に通知される。
【０１０２】
画像処理装置３０１のＦＰＧＡ処理部３０６においては、ＣＰＵ１０１による撮像画像データＰ２´に対する特徴抽出処理と並行して、部品Ｐ３に対する撮像処理が行われる。撮像処理により撮像された撮像画像データＰ３´は、ＣＰＵ１０１に転送される。さらに、ＦＰＧＡ処理部３０６においては、変換前処理回路３０６Ｅにより撮像画像データＰ３´に対する変換前処理を行う。変換前処理により取得された変換前処理情報は、画像データ転送回路３０６ＣによりＣＰＵ１０１に転送される。なお、ここでは、部品Ｐ３に後続する部品Ｐが存在しないため、プレ前処理が行われることはない。
【０１０３】
撮像画像データＰ３´及び変換前処理情報を受け取ったＣＰＵ１０１は、この撮像画像データＰ３´に対する特徴抽出処理を行う。ＣＰＵ１０１は、撮像画像データＰ２´の場合と同様に、撮像画像データＰ３´に対して特徴抽出処理のみを行う。ＣＰＵ１０１による特徴抽出処理により取得された特徴抽出処理情報は、実装装置３００の制御装置に通知される。このように本実施の形態に係る画像処理装置３０１においては、ＦＰＧＡ処理部３０６による撮像処理及び認識処理（プレ前処理及び変換前処理）と、ＣＰＵ１０１による認識処理（特徴抽出処理）とが並行して行われることから、効率的に撮像処理及び認識処理を実行することが可能となる。
【０１０４】
ところで、図７の上段に示すように、認識処理全体をＣＰＵ１０１で実行する場合には、全ての撮像画像データＰ１´〜Ｐ３´に対する前処理をＣＰＵ１０１で実行する必要がある。これに対し、図７の中段に示す本実施の形態に係る画像処理装置３０１においては、認識処理の一部（プレ前処理及び変換前処理）をＣＰＵ１０１による認識処理と並行してＦＰＧＡ処理部３０６で行うことから、ＣＰＵ１０１における前処理（より具体的には、撮像画像データＰ２´、Ｐ３´に対する前処理）分だけ処理時間を短縮することが可能となる。
【０１０５】
なお、図７の中段に示す本実施の形態に係る画像処理装置３０１においては、撮像画像データＰ１´に対する変換前処理をＦＰＧＡ処理部３０６で行う代わりにＣＰＵ１０１で前処理を行う場合について示している。しかしながら、ＣＰＵ１０１における負荷軽減の観点からは、変換前処理をＦＰＧＡ処理部３０６で行うことが好ましい。この場合、図７の下段に示すように、部品Ｐ１に対する撮像処理に先立って、部品Ｐ１に対するプレ前処理を行うと共に、その撮像処理に並行して変換前処理を行うことが考えられる。これにより、ＣＰＵ１０１においては、撮像画像データＰ１´〜Ｐ３´に対する特徴抽出処理のみを行うこととなるので、ＣＰＵ１０１における負荷を軽減することが可能となる。
【０１０６】
次に、本実施の形態に係る画像処理装置３０１で認識処理を行う場合の動作について説明する。図８は、本実施の形態に係る画像処理装置３０１で認識処理を行う場合の動作を説明するためのフロー図である。なお、図８に示すフロー図においては、説明の便宜上、認識処理に関連する構成のみを示している（ＣＰＵ１０１、撮像回路３０６Ａ、画像データ転送回路３０６Ｃ、プレ前処理回路３０６Ｄ及び変換前処理回路３０６Ｅ）。
【０１０７】
画像処理装置３０１においては、ＣＰＵ１０１により実装装置３００の制御装置から認識処理の要求（認識要求）を受信するか監視している（ステップＳＴ８０１）。認識要求を受信した場合、ＣＰＵ１０１は、部品存在範囲の算出を行う（ステップＳＴ８０２）。一方、認識要求を受信しない場合、ＣＰＵ１０１は、ステップＳＴ８０１の監視動作を継続する。
【０１０８】
実装装置３００の制御装置からの認識要求には、部品Ｐを保持する吸着ノズル３０５の数及び位置、搬送ヘッド３０２の移動方向、各吸着ノズル３０５（部品Ｐ）に対する撮像タイミング及び各吸着ノズル３０５に保持される部品に関するデータ（部品データ）が含まれる。なお、部品データには、例えば、部品の種別や寸法などの情報が含まれる。ＣＰＵ１０１においては、この認識要求に含まれる情報に基づいて、部品存在範囲の算出を行う。
【０１０９】
図９は、図５に示す画像処理装置３０１で算出される部品存在範囲の説明図である。図９においては、３本の吸着ノズル３０５に保持される部品Ｐ１〜Ｐ３に対して算出される部品存在範囲について示している。なお、図９においては、説明の便宜上、部品Ｐ１〜Ｐ３を保持する吸着ノズル３０５を、それぞれ吸着ノズルＮ１〜Ｎ３と呼ぶものとする。また、図９においては、吸着ノズルＮ１に保持される部品Ｐ１に対するプレ前処理用の撮像画面を撮像する場合について示している。
【０１１０】
図９に示すように部品Ｐ１〜Ｐ３が吸着ノズルＮ１〜Ｎ３で保持される場合、実装装置３００の制御装置からの認識要求には、部品Ｐを保持する吸着ノズル３０５が３本である旨、吸着ノズルＮ１〜Ｎ３がそれぞれ部品Ｐ１〜Ｐ３を保持する旨、搬送ヘッド３０２の移動方向が正方向（図９に示す左側方向）である旨などの情報が含まれる。
【０１１１】
図９に示す場合、吸着ノズルＮ１に保持される部品Ｐ１のプレ前処理用の撮像画面も含めて合計４回の撮像処理が行われる。図９においては、４枚の撮像画面をそれぞれＩＭＧ０〜ＩＭＧ３で示している。ＣＰＵ１０１は、認識要求に含まれる情報から、それぞれどのような種別の部品が撮像されるかを認識できる。このため、ＣＰＵ１０１においては、部品データから撮像画面上の部品存在範囲を予測できる。図９に示す撮像画面ＩＭＧ０においては、部品Ｐ１のプレ前処理用の存在予測範囲Ａ１ｂが予測され、撮像画面ＩＭＧ１においては、部品Ｐ２のプレ前処理用の存在予測範囲Ａ２ｂが予測され、撮像画面ＩＭＧ２においては、部品Ｐ３のプレ前処理用の存在予測範囲Ａ３ｂが予測される。また、図９に示す撮像画面ＩＭＧ１においては、部品Ｐ１の位置決め用の存在予測範囲Ａ１が予測され、撮像画面ＩＭＧ２においては、部品Ｐ２の位置決め用の存在予測範囲Ａ２が予測され、撮像画面ＩＭＧ３においては、部品Ｐ３の位置決め用の存在予測範囲Ａ３が予測される。
【０１１２】
部品存在範囲を算出した後、ＣＰＵ１０１は、ＦＰＧＡ処理部３０６の撮像回路３０６Ａに撮像要求を出力する（ステップＳＴ８０３）。この撮像要求には、撮像回数及びそれぞれの撮像タイミングに関する情報が含まれる。なお、撮像回路３０６Ａで制御するカメラ３０３が撮像範囲を部分的に撮像するパーシャル撮像機能を備える場合には、撮像領域を狭めた撮像画面に関する情報を撮像要求に含むこともできる。図９においては、撮像領域を狭めた撮像画面に関する情報（Ｌ０〜Ｌ３）を示している。
【０１１３】
撮像要求を受け取ると、撮像回路３０６Ａは、この撮像要求に指定される撮像タイミングであるかを判定する（ステップＳＴ８０４）。より具体的には、撮像回路３０６Ａは、搬送ヘッド３０２の位置が撮像位置に到達するか否かにより撮像タイミングを判定する。撮像タイミングでないと判定された場合には、撮像回路３０６Ａは、ステップＳＴ８０４の判定動作を継続する。一方、撮像タイミングであると判定された場合には、カメラ３０３のシャッターを開放し、露光させる（ステップＳＴ８０５）。
【０１１４】
露光が完了すると、カメラ３０３で受光した画像データ（撮像画面データ）がプレ前処理回路３０６Ｄ、画像データ転送回路３０６Ｃ及び変換前処理回路３０６Ｅに出力される。なお、撮像画面データを出力した後、撮像回路３０６Ａにおいては、全画面分の撮像を完了しているか判定する（ステップＳＴ８０６）。図９に示す場合においては、４枚の撮像画面ＩＭＧ０〜ＩＭＧ３に対する撮像を完了しているかが判定される。全画面分の撮像が完了していない場合、撮像回路３０６Ａは、再びステップＳＴ８０４〜ステップＳＴ８０６の処理を行う。一方、全画面分の撮像が完了している場合、撮像回路３０６Ａは、処理を完了する。
【０１１５】
撮像画面データを受け取ると、プレ前処理回路３０６Ｄは、プレ前処理を実行する（ステップＳＴ８０７）。プレ前処理においては、プレ前処理用の部品Ｐの存在予測範囲（例えば、図９に示す撮像画像ＩＭＧ０における存在予測範囲Ａ１ｂ）に対してプレ前処理が行われる。ここでは、プレ前処理として、外接走査や濃度ヒストグラムの生成が行われる。なお、このプレ前処理については後述する。
【０１１６】
一方、撮像画面データを受け取ると、画像データ転送回路３０６Ｃは、ＣＰＵ１０１に対してこの撮像画面データを転送する（ステップＳＴ８０８）。画像データ転送回路３０６Ｃによる撮像画面データの転送は、プレ前処理回路３０６Ｄにおけるプレ前処理と並行して行われる。なお、初回の撮像画面ＩＭＧ０については、プレ前処理用の撮像画面であるため、ＣＰＵ１０１に対する転送を省略してもよい。
【０１１７】
プレ前処理が完了すると、プレ前処理回路３０６Ｄは、プレ前処理により取得したプレ前処理情報を変換前処理回路３０６Ｅに出力する。その後、プレ前処理回路３０６Ｄは、全画面分のプレ前処理が完了しているか判定する（ステップＳＴ８０９）。図９に示す場合においては、４枚の撮像画面ＩＭＧ０〜ＩＭＧ３に対するプレ前処理を完了しているかが判定される。
【０１１８】
全画面分のプレ前処理が完了していない場合、プレ前処理回路３０６Ｄは、プレ前処理割込み処理を実行する（ステップＳＴ８１０）。プレ前処理割込み処理においては、プレ前処理の外接走査や濃度ヒストグラム生成の結果や、位置決め部品の種類から次回の撮像画面の変換前処理条件の設定の有無が判定される。プレ前処理割込み処理が完了すると、プレ前処理回路３０６Ｄは、プレ前処理割込み処理により取得された情報（以下、適宜「プレ前処理割込み処理情報」という）を変換前処理回路３０６Ｅに出力する。なお、このプレ前処理割込み処理については後述する。
【０１１９】
撮像回路３０６Ａから撮像画面データと、プレ前処理回路からプレ前処理情報及びプレ前処理割込み処理情報とを取得すると、変換前処理回路３０６Ｅは、変換前処理を実行する（ステップＳＴ８１１）。変換前処理においては、ＣＰＵ１０１における後述する部品Ｐの特徴抽出のための二値化処理、濃度補正処理、フィルタ演算処理やエッジ抽出処理が行われる。変換前処理を完了すると、変換前処理回路３０６Ｅは、変換前処理により取得された情報（以下、適宜「変換前処理情報」という）を画像データ転送回路３０６Ｃに出力する。
【０１２０】
変換前処理情報を受け取ると、画像データ転送回路３０６Ｃは、ＣＰＵ１０１に対してこの変換前処理情報を転送する（ステップＳＴ８１２）。この場合において、画像データ転送回路３０６Ｃは、一画面分（例えば、図９に示す撮像画面ＩＭＧ０）の変換前処理情報を転送する都度、転送完了通知をＣＰＵ１０１に出力する。
【０１２１】
ＣＰＵ１０１においては、ステップＳＴ８０３において、撮像要求を出力した後、画像データ転送回路３０６Ｃから転送完了通知を受信するか監視している（ステップＳＴ８１３）。転送完了通知を受信していない場合、ＣＰＵ１０１は、ステップＳＴ８１３の監視動作を継続する。一方、転送完了通知を受信すると、ＣＰＵ１０１は、部品Ｐの特徴抽出処理を行う（ステップＳＴ８１４）。
【０１２２】
ＣＰＵ１０１は、特徴抽出処理により取得した情報（以下、適宜「特徴抽出処理情報」という）を、位置決め結果として実装装置３００の制御装置に通知する（ステップＳＴ８１５）。そして、ＣＰＵ１０１は、全画面分の位置決め結果を実装装置３００の制御装置に通知しているか否か判定する（ステップＳＴ８１６）。全画面分の位置決め結果を通知していない場合、ＣＰＵ１０１は、再びステップＳＴ８１３〜ステップＳＴ８１６の処理を行う。
【０１２３】
なお、撮像回路３０６Ａによる撮像制御は、認識要求に含まれる部品Ｐの撮像数に到達するまで繰り返される（ステップＳＴ８０４〜ステップＳＴ８０６）。カメラ３０３により撮像される度に、撮像画面データがＣＰＵ１０１に転送されると共に（ステップＳＴ８０８）、プレ前処理及び変換前処理を経て取得された変換前処理情報がＣＰＵ１０１に転送される（ステップＳＴ８１２）。そして、これらの撮像画像データ及び変換前処理情報に基づいて部品Ｐの特徴抽出処理を行ううち、ステップＳＴ８１６にて、全画面分の位置決め結果を通知したと判定されると、ＣＰＵ１０１は、一連の認識処理を終了する。
【０１２４】
ここで、上述したプレ前処理、プレ前処理割込み処理及び変換前処理について説明する。図１０、図１１及び図１２は、それぞれ本実施の形態に係る画像処理装置３０１で実行されるプレ前処理、プレ前処理割込み処理及び変換前処理を説明するためのフロー図である。
【０１２５】
プレ前処理は、撮像画像データに対して一律に行われる処理であり、外接走査による部品Ｐの外接矩形の特定と、濃度ヒストグラムの生成とが行われる。図１０に示すように、プレ前処理において、プレ前処理回路３０６Ｄは、まず、撮像回路３０６Ａから出力される撮像画面データに含まれる部品Ｐのプレ前処理用の存在予測範囲（例えば、図９に示す撮像画像ＩＭＧ０における存在予測範囲Ａ１ｂ）内の画素データを読み出す（ステップＳＴ１００１）。そして、プレ前処理回路３０６Ｄは、読み出した画素データに対して、濃度ヒストグラムの該当濃度の画素数を加算する（ステップＳＴ１００２）。
【０１２６】
次に、プレ前処理回路３０６Ｄは、加算後の画素データの濃度と、予め登録された外接走査用の二値化しきい値とを照合することで濃度判定を行う（ステップＳＴ１００３）。このような濃度判定により、二値化しきい値を超える濃度を有する画素座標のうち、上下左右の端部の各座標値を更新していくことで外接走査を行うことが可能となる。
【０１２７】
そして、プレ前処理回路３０６Ｄは、部品Ｐのプレ前処理用の存在予測範囲内の全ての画素データについて濃度判定を行っているかを判定する（ステップＳＴ１００４）。全ての画素データについて濃度判定が行われていない場合には、再びステップＳＴ１００１〜ステップＳＴ１００３の処理を行う。一方、全ての画素データについて濃度判定が行われている場合、プレ前処理回路３０６Ｄは、プレ前処理を終了し、プレ前処理で取得したプレ前処理情報を撮像画像データと共に変換前処理回路３０６Ｅに出力する。
【０１２８】
プレ前処理割込み処理において、プレ前処理回路３０６Ｄは、図１１に示すように、まず、プレ前処理で算出された濃度ヒストグラムを解析する（ステップＳＴ１１０１）。そして、この解析結果に基づいて、プレ前処理回路３０６Ｄは、濃度補正が必要であるか判定する（ステップＳＴ１１０２）。濃度補正が必要な場合、プレ前処理回路３０６Ｄは、濃度補正の要求をオン状態とする（ステップＳＴ１１０３）。
【０１２９】
なお、理想的な濃度分布は、背景（暗部）と部品Ｐ（明部）で二極化され、且つ、それぞれのピーク濃度が濃度下限や上限に近寄り過ぎていない状態である。濃度分布がどちらかに偏っている場合、これを全体に広げるような変換（ヒストグラム伸長化処理）を行うことで、背景と部品Ｐとを分離し易くなる。この他、ステップＳＴ１１０３においては、濃度ヒストグラムの平坦化によるコントラスト強調、濃度値に補正の強弱を調整するガンマ補正等、必要な濃度補正条件を設定することができる。
【０１３０】
一方、濃度補正が不要な場合、プレ前処理回路３０６Ｄは、ステップＳＴ１１０３の処理をスキップし、二値化しきい値の変更が必要であるか判定する（ステップＳＴ１１０４）。二値化しきい値の変更が必要な場合、プレ前処理回路３０６Ｄは、しきい値の算出を行うと共に、外接走査の要求をオン状態とする（ステップＳＴ１１０５）。
【０１３１】
理想的な二値化しきい値は、背景及び部品Ｐのそれぞれの濃度がピーク濃度の間にある谷空間の濃度に相当する状態である。二値化しきい値が濃度ヒストグラム上の理想濃度とズレがある場合、プレ前処理における外接矩形結果は信頼性が低い。このような場合に二値化しきい値の変更が必要であると判定される。これにより、最適な二値化しきい値が算出され、後述する変換前処理にて再度外接走査が実行されると、信頼性の高い外接矩形を得ることができる。
【０１３２】
一方、二値化しきい値の変更が不要な場合、プレ前処理回路３０６Ｄは、プレ前処理で求めた外接矩形内の撮像画像データだけを次回の転送処理や変換前処理の処理範囲に設定する（ステップＳＴ１１０６）。このようにプレ前処理割込み処理においては、プレ前処理の処理結果に基づいて、プレ前処理を行った部品の撮像画像データの転送範囲を調整できる。これにより、ＣＰＵ１０１に対する撮像画像データの転送量を増減できるので、周辺部品の撮像画像データの寸法が小さい場合にＣＰＵ１０１に対する撮像画像データの転送量を低減できる。この結果、ＣＰＵ１０１による画像処理に要する時間を短縮すると共に、当該画像処理に伴う負荷を軽減することが可能となる。
【０１３３】
なお、外接矩形の大きさが部品Ｐの外寸に対して極端に小さい場合は部品Ｐが存在しないと判定できる。この場合、プレ前処理回路３０６Ｄは、実装装置３００の制御装置に通知し、該当する部品Ｐの以後の位置決め処理をスキップさせることができる。
【０１３４】
次回の転送処理や変換前処理の処理範囲に設定した後、プレ前処理回路３０６Ｄは、変換前処理を要求するか否か判定する（ステップＳＴ１１０７）。変換前処理の要求の有無は、部品Ｐの種類や認識要求に設定された条件により判定される。変換前処理を要求する場合、プレ前処理回路３０６Ｄは、変換前処理条件の設定要求をオン状態とする（ステップＳＴ１１０８）。そして、プレ前処理回路３０６Ｄは、プレ前処理割込み処理を終了し、プレ前処理割込み処理で取得したプレ前処理割込み情報を変換前処理回路３０６Ｅに出力する。
【０１３５】
一方、変換前処理を要求しない場合には、プレ前処理回路３０６Ｄは、プレ前処理割込み情報を変換前処理回路３０６Ｅに出力することなく、プレ前処理割込み処理を終了する。
【０１３６】
変換前処理において、変換前処理回路３０６Ｅは、図１２に示すように、まず、撮像回路３０６Ａから出力された撮像画面データに含まれる部品Ｐのプレ前処理用の存在予測範囲（例えば、図９に示す撮像画像ＩＭＧ０における存在予測範囲Ａ１ｂ）内の画素データを読み出す（ステップＳＴ１２０１）。そして、変換前処理回路３０６Ｅは、プレ前処理回路３０６Ｄから出力されたプレ前処理割込み情報に基づいて、濃度補正要求の有無を判定する（ステップＳＴ１２０２）。この場合、変換前処理回路３０６Ｅは、プレ前処理割込み処理において、濃度補正要求がオン状態に設定されるか否かにより濃度補正要求の有無を判定する。
【０１３７】
濃度補正要求がオン状態の場合、変換前処理回路３０６Ｅは、濃度補正を実行する（ステップＳＴ１２０３）。一方、濃度補正要求がオフ状態の場合、変換前処理回路３０６Ｅは、ステップＳＴ１２０３の処理をスキップして、フィルタ演算要求の有無を判定する（ステップＳＴ１２０４）。この場合、変換前処理回路３０６Ｅは、実装装置３００の制御装置からの認識要求において、フィルタ演算要求がオン状態に設定されるか否かによりフィルタ演算要求の有無を判定する。
【０１３８】
フィルタ演算要求がオン状態の場合、変換前処理回路３０６Ｅは、フィルタ演算を実行する（ステップＳＴ１２０５）。一方、フィルタ演算要求がオフ状態の場合、変換前処理回路３０６Ｅは、ステップＳＴ１２０５の処理をスキップして、外接走査要求（又はエッジ抽出要求）の有無を判定する（ステップＳＴ１２０６）。外接走査要求を判定する場合、変換前処理回路３０６Ｅは、プレ前処理割込み処理において、外接走査要求がオン状態に設定されるか否かにより外接走査要求の有無を判定する。一方、エッジ抽出要求を判定する場合、変換前処理回路３０６Ｅは、実装装置３００の制御装置からの認識要求において、エッジ抽出要求がオン状態に設定されるか否かによりフィルタ演算要求の有無を判定する。
【０１３９】
このように変換前処理においては、プレ前処理割込み処理の結果等に基づいて、特徴抽出のための画像処理（特徴抽出処理）として、フィルタ処理又はエッジ抽出処理が行われる。これにより、位置決め対象である部品Ｐの位置決めに必要な画像処理を効果的に行うことが可能となる。
【０１４０】
外接走査要求（エッジ抽出要求）がオン状態の場合、変換前処理回路３０６Ｅは、外接走査（エッジ抽出）を実行する（ステップＳＴ１２０７）。一方、外接走査要求（エッジ抽出要求）がオフ状態の場合、変換前処理回路３０６Ｅは、ステップＳＴ１２０７の処理をスキップして、全ての画素データについて各種判定を行っているかを判定する（ステップＳＴ１２０８）。全ての画素データについて各種判定が行われていない場合には、再びステップＳＴ１２０１〜ステップＳＴ１２０７の処理を行う。一方、全ての画素データについて各種判定が行われている場合、変換前処理回路３０６Ｅは、変換前処理を終了し、変換前処理で取得した変換前処理情報を画像データ転送回路３０６Ｃに出力する。
【０１４１】
これらのプレ前処理、プレ前処理割込み処理及び変換前処理において、ＦＰＧＡ処理部３０６は、濃度分布の判定結果に基づいて、位置決め対象となる部品Ｐの周辺部品が位置決め対象の部品となる場合の撮像条件を変更することができる。ここで、撮像条件としては、例えば、周辺部品が位置決め対象となる部品となる場合における当該周辺部品に対して照光される光量を調整することが考えられる。この場合には、濃度分布の判定結果に基づいて、周辺部品が位置決め対象の部品となる場合の撮像条件を変更できるので、濃度分布の判定結果に応じた所望の撮像条件を選択することが可能となる。特に、位置決め対象となった周辺部品に対する光量を調整する場合には、濃度分布の判定結果を反映して光量が調整されることから、位置決め対象の部品となった周辺部品の撮像画像データの濃度を適切な値に調整することが可能となる。
【０１４２】
また、これらのプレ前処理、プレ前処理割込み処理及び変換前処理において、ＦＰＧＡ処理部３０６は、濃度分布の判定結果に基づいて、当該濃度分布の判定時に用いた濃度変換条件を調整することができる。この場合には、濃度分布の判定結果を反映して濃度変換条件が調整されることから、位置決め対象の部品となった周辺部品の撮像画像データの濃度を適切な値に調整することが可能となる。
【０１４３】
さらに、これらのプレ前処理、プレ前処理割込み処理及び変換前処理において、ＦＰＧＡ処理部３０６は、外接走査の走査結果に基づいて、当該外接走査に用いた二値化しきい値を調整することができる。この場合には、外接走査の走査結果を反映して外接走査に用いた二値化しきい値が調整されることから、位置決め対象の部品となった周辺部品の撮像画像データの外接走査の走査結果を改善することが可能となる。
【０１４４】
以上説明したように、本実施の形態に係る画像処理装置３０１においては、位置決め対象となる特定の部品Ｐの撮像画像データに対してＣＰＵ１０１による位置決めに必要な画像処理（ソフトウェアによる画像処理）が行われると共に、これに並行して特定の部品Ｐの周辺の部品Ｐの撮像画像データに対してＦＰＧＡ処理部３０６による画像処理（ハードウェアによる画像処理）によって、ＣＰＵ１０１による画像処理に必要な情報が取得される。これにより、ハードウェアによる画像処理と、ソフトウェアによる画像処理とを並行して行うことができることから、位置決めに必要な画像処理を効率的に実行することが可能となる。
【０１４５】
また、本実施の形態に係る画像処理装置３０１においては、ＦＰＧＡ処理部３０６による画像処理（プレ前処理回路３０６Ｄによるプレ前処理）として、位置決め対象となる部品Ｐの周辺部品Ｐの撮像画像データの濃度ヒストグラムを生成して濃度分布を判定する。これにより、位置決め対象部品Ｐの特徴抽出処理に先行して、周辺部品Ｐの撮像画像データの濃度ヒストグラムに基づく濃度分布が判定されることから、この判定結果を用いてＣＰＵ１０１で特徴抽出段階の認識処理を行うことができるので、ＣＰＵ１０１による画像処理に要する時間を短縮すると共に、当該画像処理に伴う負荷を軽減することが可能となる。
【０１４６】
また、本実施の形態に係る画像処理装置３０１においては、ＦＰＧＡ処理部３０６による画像処理（プレ前処理回路３０６Ｄによるプレ前処理）として、位置決め対象となる部品Ｐの周辺部品Ｐの撮像画像データに対して外接走査を行う。これにより、位置決め対象部品Ｐの特徴抽出処理に先行して、周辺部品Ｐの撮像画像データに対する外接走査が行われることから、この外接走査の走査結果を用いてＣＰＵ１０１で特徴抽出段階の認識処理を行うことができるので、ＣＰＵ１０１による画像処理に要する時間を短縮すると共に、当該画像処理に伴う負荷を軽減することが可能となる。
【０１４７】
さらに、本実施の形態に係る画像処理装置３０１においては、ＣＰＵ１０１により位置決め対象となる部品Ｐの撮像画像データに対して、位置決めに関する特徴抽出のための画像処理（特徴抽出処理）を行う。これにより、一般に複雑な判断やアルゴリズムを要する特徴抽出のための画像処理がＣＰＵ１０１で行われることから、当該部品Ｐの位置決めに必要な装置全体の画像処理を効率化することが可能となる。
【０１４８】
特に、本実施の形態に係る画像処理装置３０１においては、位置決め対象となる部品Ｐの次に位置決め対象とされる部品Ｐである周辺部品の撮像画像データに対する画像処理（プレ前処理及び変換前処理）がＦＰＧＡ処理部３０６で行われる。これにより、この画像処理（プレ前処理及び変換前処理）の結果を反映して、ＣＰＵ１０１による画像処理に要する時間を短縮すると共に、当該画像処理に伴う負荷を軽減することが可能となる。
【０１４９】
また、本実施の形態に係る画像処理装置３０１においては、位置決め対象となる部品Ｐの撮像画像データをカメラ３０３で撮像された撮像画面データの中心位置に配置している。これにより、撮像画面データの中心位置に配置された撮像画像データに基づいて、位置決め対象となる部品Ｐの特徴抽出処理が行われることから、撮像画面データの中心位置から外れた位置に配置された撮像画像データに基づいて特徴抽出処理を行う場合と比べて、高精度に位置決め対象となる部品Ｐの特徴抽出処理を行うことが可能となる。
【０１５０】
一般的な電子部品実装装置において、実装対象となる部品を保持する吸着ノズルの数が増加すると、吸着ノズルが設けられる搬送ヘッドが部品供給部から実装位置に移動する間に位置決めすべき部品点数が増加する。このような複数部品の効率的な位置決めを実現するために、吸着ノズルが保持する複数の部品を同時に撮像することが考えられる。しかしながら、このように複数の部品を同時に撮像する場合においては、同一の被写体を撮像したても、撮像した画像中心部と画像端部とでは同一の画質の像を得ることができない。すなわち、画像端部においては、画像中心部に比べて撮像レンズの光軸と撮像センサや被写体面（ヘッド軌道線）との直交ずれの影響により高さ方向の写り込み等が発生し易い。このような軸ずれに伴う高さ方向の写り込みについては、単一の撮像画像で補正するのは困難である。このため、実装対象となる部品の位置決めを行う場合には、撮像画像の画像中心部に撮像された画像データを用いるのが好ましい。
【０１５１】
これに対し、本実施の形態に係る画像処理装置３０１においては、撮像画面データの中心位置に配置された撮像画像データに基づいて、位置決め対象となる部品Ｐの特徴抽出処理が行われることから、撮像画面データの画像端部で位置決めを行う場合に発生する不具合が発生することがない。このため、高精度に位置決め対象となる部品Ｐの特徴抽出処理を行うことが可能となる。
【０１５２】
なお、本発明は上記実施の形態に限定されず、種々変更して実施することが可能である。上記実施の形態において、添付図面に図示されている大きさや形状等については、これに限定されず、本発明の効果を発揮する範囲内で適宜変更することが可能である。その他、本発明の目的の範囲を逸脱しない限りにおいて適宜変更して実施することが可能である。
【０１５３】
例えば、上記実施の形態に係る画像処理装置３０１においては、位置決め対象となる部品Ｐの他に隣り合う単一の周辺部品Ｐのみを撮像画面データに含み、当該周辺部品Ｐにプレ前処理及び変換前処理を行う場合について説明している。しかしながら、撮像画面データに含まれる周辺部品Ｐの数については、これに限定されるものではなく適宜変更が可能である。例えば、複数の周辺部品Ｐを撮像画面データに含み、これらの周辺部品Ｐに対してプレ前処理及び変換前処理を行うようにしてもよい。また、位置決め対象となる部品Ｐの他に隣り合う単一の周辺部品Ｐの全てを撮像画面データに含まず、当該周辺部品Ｐの一部に対してプレ前処理及び変換前処理を行うようにしてもよい。
【産業上の利用可能性】
【０１５４】
以上説明したように、本発明は、画像処理に要する処理時間を短縮できるという効果を有し、特に、ハードウェアによる画像処理とソフトウェアによる画像処理とを並行して行う電子部品の実装装置に有用である。
【符号の説明】
【０１５５】
１００  画像処理装置
１０１  ＣＰＵ（制御部）
１０２  メモリ（第１のメモリ）
１０３  データ入力部（入力部）
１０４、１０４ａ〜１０４ｎ  画像処理部
１０５  データ転送部（第２の転送部）
１０６、１０６ａ〜１０６ｎ  データ転送部（第１の転送部）
１０７、１０７ａ〜１０７ｎ  メモリ（第２のメモリ）
３００  電子部品実装装置（実装装置）
３０１  画像処理装置
３０２  部品搬送ヘッド（搬送ヘッド）
３０３  カメラ
３０４  照明
３０５  吸着ノズル
３０６  ＦＰＧＡ処理部
３０６Ａ  撮像回路
３０６Ｂ  画像出力回路
３０６Ｃ  画像データ転送回路
３０６Ｄ  プレ前処理回路
３０６Ｅ  変換前処理回路
Ｐ１〜Ｐ６  電子部品
Ｐ１´〜Ｐ３´  撮像画像データ
【図１】
2014090076.tif 000003
【図２】
2014090076.tif 000004
【図３】
2014090076.tif 000005
【図４】
2014090076.tif 000006
【図５】
2014090076.tif 000007
【図６】
2014090076.tif 000008
【図７】
2014090076.tif 000009
【図８】
2014090076.tif 000010
【図９】
2014090076.tif 000011
【図１０】
2014090076.tif 000012
【図１１】
2014090076.tif 000013
【図１２】
2014090076.tif 000014