(57)【要約】【課題】製造コストの上昇を抑制しつつ、非同期に発生する処理要求を効率的に処理すること。【解決手段】カメラ（１０、２０）で撮像された画像の入力処理を行う入力部（１１、２１）と、入力部（１１、２１）を介して入力された画像データを保存する画像メモリ（５０）と、この画像メモリ（５０）内の画像データに画像処理を施す画像処理部（６０、６１）と、画像メモリ（５０）内の画像データの出力処理を行う出力部（３１）と、画像メモリ（６０、６１）に対する画像データの転送処理及び画像メモリ（６０、６１）からの画像データの転送処理が重複しないように制御する転送制御部（４０）とを具備することを特徴とする。【選択図】図１
2014044668.tif 000002
【特許請求の範囲】
【請求項１】
撮像手段で撮像された画像の入力処理を行う入力部と、前記入力部を介して入力された画像データを保存する画像メモリと、前記画像メモリ内の前記画像データに画像処理を施す画像処理部と、前記画像メモリ内の前記画像データの出力処理を行う出力部と、前記画像メモリに対する前記画像データの転送処理及び前記画像メモリからの前記画像データの転送処理が重複しないように制御する制御部とを具備することを特徴とする画像処理装置。
【請求項２】
前記画像データの転送処理の種別に応じて予め優先度を設けておき、前記制御部は、前記優先度に応じて当該転送処理の順序を制御することを特徴とする請求項１記載の画像処理装置。
【請求項３】
前記優先度に応じて前記画像データの転送処理に対する制御単位を関連付けておき、前記優先度が高い前記画像データの転送処理が発生した場合、前記制御部は、現在実行中の前記優先度が低い前記画像データの転送処理に対する前記制御単位を低減することを特徴とする請求項２記載の画像処理装置。
【請求項４】
前記優先度が高い前記画像データの転送処理が発生した場合、前記制御部は、前記優先度が高い前記画像データの転送処理を開始する前に、現在実行中の前記優先度が低い前記画像データの転送処理における前記制御単位を増加させることを特徴とする請求項３記載の画像処理装置。
【請求項５】
前記制御部は、前記優先度が低い前記画像データの転送処理として、リアルタイム性が要求される画像データの転送処理における前記制御単位を増加させることを特徴とする請求項４記載の画像処理装置。
【請求項６】
前記画像メモリにＤＲＡＭ（Ｄｙｎａｍｉｃ  Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）を用いることを特徴とする請求項１から請求項４のいずれかに記載の画像処理装置。
【請求項７】
撮像手段で撮像された画像の入力処理を行うステップと、入力された画像データを保存する画像メモリに保存するステップと、前記画像メモリ内の前記画像データに画像処理を施すステップと、前記画像メモリ内の前記画像データの出力処理を行うステップとを具備する画像処理方法であって、
前記画像メモリに対する前記画像データの転送処理及び前記画像メモリからの前記画像データの転送処理が重複しないように制御することを特徴とする画像処理方法。
【請求項８】
前記画像データの転送処理の種別に応じて予め優先度を設けておき、前記優先度に応じて当該転送処理の順序を制御することを特徴とする請求項７記載の画像処理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像処理装置及び画像処理方法に関し、特に、チップマウンタ等の電子部品の実装装置で用いられる画像処理装置及び画像処理方法に関する。
【背景技術】
【０００２】
従来、チップマウンタ等の電子部品の実装装置においては、実装対象となるチップの正確な位置決めを行うために画像処理装置を備えるものが知られている。例えば、このような画像処理装置として、画像データ（部品及び基板の画像データ）を撮像する複数のカメラ及び各カメラに対応するサブメモリを備え、それぞれのサブメモリに格納された画像データのライン数を監視し、所定ライン数のデータ量に達した場合にメインメモリに画像データを転送するものが提案されている（例えば、特許文献１参照）。この画像処理装置においては、所定ライン数のデータ量に達した場合に画像データの転送が行われるので、複数のカメラで撮像された画像データを効率的に転送することができる。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００５−１４９３０９号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
上述した従来の画像処理装置においては、メインメモリに対して複数のデータ転送が同時に発生することとなる。このため、メインメモリ内の保存画像データや表示用画像データ等の各データ領域へのランダムアクセスが発生し得る。このようなメモリ領域に対するランダムアクセスが発生する場合には、アクセス効率を確保するためにメモリとしてＳＲＡＭ（Ｓｔａｔｉｃ  Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）が利用されることが多い。しかしながら、ＳＲＡＭは、ビット当たりのコストが大きく、大容量のメモリとして利用する場合には、大幅に製造コストが上昇するという問題がある。
【０００５】
また、上述した従来の画像処理装置においては、カメラにより撮像中に同時に保存されている画像データに画像処理を施す場合や、同時に画像データをモニタに表示する場合等のように、メインメモリ内の画像データに対して非同期にアクセスする場合にアクセス同士が干渉する事態が想定される。この場合、メインメモリに対する他のアクセスの終了を待機する事態が発生し、処理効率が著しく低下する事態が発生し得る。
【０００６】
本発明はこのような実情に鑑みてなされたものであり、製造コストの上昇を抑制しつつ、非同期に発生する処理要求を効率的に処理することができる画像処理装置及び画像処理方法を提供することを目的とする。
【課題を解決するための手段】
【０００７】
本発明の画像処理装置は、撮像手段で撮像された画像の入力処理を行う入力部と、前記入力部を介して入力された画像データを保存する画像メモリと、前記画像メモリ内の前記画像データに画像処理を施す画像処理部と、前記画像メモリ内の前記画像データの出力処理を行う出力部と、前記画像メモリに対する前記画像データの転送処理及び前記画像メモリからの前記画像データの転送処理が重複しないように制御する制御部とを具備することを特徴とする。
【０００８】
この画像処理装置によれば、制御部により、画像メモリに対する画像データの転送処理及び画像メモリからの画像データの転送処理が重複しないように制御されることから、非同期に処理要求が発生する場合でも、画像メモリに対するデータアクセスをシーケンシャルに制御できるので、ＤＲＡＭ（Ｄｙｎａｍｉｃ  Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）等の安価で大容量を実現できるメモリを画像メモリとして利用できるので、製造コストの上昇を抑制しつつ、非同期に発生する処理要求を効率的に処理することが可能となる。
【０００９】
例えば、上記画像処理装置においては、前記画像データの転送処理の種別に応じて予め優先度を設けておき、前記制御部は、前記優先度に応じて当該転送処理の順序を制御することが考えられる。この場合には、画像データの転送処理の種別に応じて予め定められた優先度に従って転送処理の順序を選択できるので、非同期に発生する処理要求を効率的に処理することが可能となる。
【００１０】
また、上記画像処理装置においては、前記優先度に応じて前記画像データの転送処理に対する制御単位を関連付けておき、前記優先度が高い前記画像データの転送処理が発生した場合、前記制御部は、現在実行中の前記優先度が低い前記画像データの転送処理に対する前記制御単位を低減することも可能である。この場合には、現在実行中の優先度が低い画像データの転送処理に対する制御単位が低減されることから、優先度の高い画像データの転送処理を開始するまでの時間を短縮できるので、当該画像データの転送処理の完了までの時間を短縮することが可能となる。
【００１１】
さらに、上記画像処理装置においては、前記優先度が高い前記画像データの転送処理が発生した場合、前記制御部は、前記優先度が高い前記画像データの転送処理を開始する前に、現在実行中の前記優先度が低い前記画像データの転送処理における前記制御単位を増加させることも可能である。この場合には、現在実行中の優先度が低い画像データの転送処理の制御単位が増加され、次回のデータ転送タイミングまでの時間を延ばすことができることから、優先度の高い画像データの転送処理に画像メモリへのアクセスを占有させることができるので、優先度の高い画像データの転送処理の完了までの時間を短縮することが可能となる。
【００１２】
例えば、上記画像処理装置において、前記制御部は、前記優先度が低い前記画像データの転送処理として、リアルタイム性が要求される画像データの転送処理におけるデータ転送量を増加させることが考えられる。この場合には、優先度が低い前記画像データの転送処理が、リアルタイム性が要求される画像データの転送処理である場合でも、リアルタイム性を損なうことなく、優先度の高いデータ転送に画像メモリへのアクセスを占有させることが可能となる。
【００１３】
また、上記画像処理装置においては、前記画像メモリにＤＲＡＭを用いることができる。この場合には、比較的安価なＤＲＡＭを用いて画像メモリを構成する場合でも、非同期に発生する処理要求を効率的に処理することが可能となる。
【００１４】
本発明に係る画像処理方法は、撮像手段で撮像された画像の入力処理を行うステップと、入力された画像データを保存する画像メモリに保存するステップと、前記画像メモリ内の前記画像データに画像処理を施すステップと、前記画像メモリ内の前記画像データの出力処理を行うステップとを具備する画像処理方法であって、前記画像メモリに対する前記画像データの転送処理及び前記画像メモリからの前記画像データの転送処理が重複しないように制御することを特徴とする。
【００１５】
この画像処理方法によれば、画像メモリに対する画像データの転送処理及び画像メモリからの画像データの転送処理が重複しないように制御されることから、非同期に処理要求が発生する場合でも、画像メモリに対するデータアクセスをシーケンシャルに制御できるので、ＤＲＡＭ等の安価で大容量を実現できるメモリを画像メモリとして利用できるので、製造コストの上昇を抑制しつつ、非同期に発生する処理要求を効率的に処理することが可能となる。
【００１６】
例えば、上記画像処理方法においては、前記画像データの転送処理の種別に応じて予め優先度を設けておき、前記優先度に応じて当該転送処理の順序を制御することが考えられる。この場合には、画像データの転送処理の種別に応じて予め定められた優先度に応じて転送処理の順序を選択できるので、非同期に発生する処理要求をより効率的に処理することが可能となる。
【発明の効果】
【００１７】
本発明によれば、製造コストの上昇を抑制しつつ、非同期に発生する処理要求を効率的に処理することが可能となる。
【図面の簡単な説明】
【００１８】
【図１】本実施の形態に係る画像処理装置の構成を示すブロック図である。
【図２】本実施の形態に係る画像処理装置内の画像データの転送経路の説明図である。
【図３】本実施の形態に係る画像処理装置の動作を説明するためのシーケンス図である。
【図４】本実施の形態に係る画像処理装置の動作を説明するためのシーケンス図である。
【発明を実施するための形態】
【００１９】
以下、本発明の実施の形態について添付図面を参照して詳細に説明する。本実施の形態に係る画像処理装置は、例えば、チップマウンタ等の電子部品の実装装置に適用される。電子部品の実装装置において、本実施の形態に係る画像処理装置は、例えば、実装対象となるチップの正確な位置決めを行うために必要となる画像処理を行う。なお、本実施の形態に係る画像処理装置が適用される装置については、電子部品の実装装置に限定されるものではなく適宜変更が可能である。例えば、非同期に同時に発生する処理要求を滞りなく効率的に処理する必要がある任意の装置に適用できる。
【００２０】
図１は、本実施の形態に係る画像処理装置１００の構成を示すブロック図である。なお、図１に示すブロック図は、本発明に係る画像処理装置１００を説明するために簡略化されたものであり、通常の画像処理装置が備える構成を更に備えていてもよい。図１に示す画像処理装置１００においては、２つのカメラ１０、２０及び１つのモニタ３０と接続される場合について示している。しかしながら、画像処理装置１００に接続されるカメラ及びモニタの数については、これに限定されるものではなく適宜変更が可能である。
【００２１】
図１に示すように、画像処理装置１００は、カメラ１０、２０に接続される入力部１１、２１と、モニタ３０に接続される出力部３１とを備える。また、画像処理装置１００は、これらの入力部１１、２１及び出力部３１に接続される転送制御部４０を備える。さらに、画像処理装置１００は、転送制御部４０に接続される画像メモリ５０及び画像処理部６０、６１を備える。さらに、画像処理装置１００は、転送制御部４０に接続される画像認識部７０と、この画像認識部７０に接続されるメインメモリ８０とを備える。
【００２２】
カメラ１０、２０は、例えば、ＣＣＤ（Ｃｈａｒｇｅ  Ｃｏｕｐｌｅｄ  Ｄｅｖｉｃｅｓ）カメラで構成される。例えば、カメラ１０は、実装ターゲットであるチップ等の部品を撮影し、カメラ２０は、部品の実装ターゲットである基板を撮影する。これらのカメラ１０、２０で撮影された画像データは、それぞれ入力部１１、１２に出力される。モニタ３０は、例えば、ＮＴＳＣ（Ｎａｔｉｏｎａｌ  Ｔｅｌｅｖｉｓｉｏｎ  Ｓｙｓｔｅｍ  Ｃｏｍｍｉｔｔｅｅ）モニタで構成され、出力部３１から出力された画像データを表示する。
【００２３】
入力部１１、２１は、それぞれカメラ１０、２０で撮影された画像データの入力処理を行う。例えば、入力部１１、２１は、カメラ１０、２０で撮影された画像データの同期を取り、所望のタイミングで転送制御部４０に出力する。後述するように、入力部１１、２１は、カメラ１０、２０で撮影された画像データを一時的に保存するバッファメモリを備える。入力部１１、２１は、バッファメモリに画像データを一時的に保存することにより、最適なタイミングで転送制御部４０に出力可能に構成されている。なお、このバッファメモリの容量は、後述する優先度に応じて設定される。
【００２４】
出力部３１は、転送制御部４０から転送された画像データの出力処理を行う。例えば、出力部３１は、転送制御部４０から転送された画像データから、モニタ３０（例えば、ＮＴＳＣモニタ）用の画像データを生成してモニタ３０に出力する。後述するように、出力部３１は、画像メモリ５０から画像データを先行して読み出して一時的に保持するプリフェッチメモリを備える。出力部３１は、プリフェッチメモリに画像データを一時的に保持することにより、最適なタイミングでモニタ３０に出力可能に構成されている。なお、このプリフェッチメモリの容量は、後述する優先度に応じて設定される。
【００２５】
転送制御部４０は、制御部を構成するものであり、入力部１１、２１や出力部３１を含む構成要素と画像メモリ５０との間における画像データの転送処理（以下、適宜「データ転送」という）を制御する。例えば、転送制御部４０は、入力部１１、２１から入力された画像データを画像メモリ５０、メインメモリ８０に転送する。また、転送制御部４０は、画像メモリ５０に保存された画像データを出力部３１、画像処理部６０、６１及び画像認識部７０に転送する。
【００２６】
例えば、転送制御部４０は、画像処理装置１００に予め定められた優先度に基づいて各構成要素と画像メモリ５０との間のデータ転送を制御する。ここで、優先度とは、画像認識部７０における画像認識処理を完了するまでの時間を短縮するために必要な優先度をいう。優先度は、画像データの転送処理の種別に応じて定められる。転送制御部４０は、この優先度に応じて各構成要素と画像メモリ５０との間のデータ転送が重複しないように制御する。なお、この優先度の具体例については後述する。
【００２７】
また、転送制御部４０は、画像データの転送処理に対する制御単位を制御する。画像データの転送処理に対する制御単位は、上述した優先度に関連付けられる。例えば、転送制御部４０は、優先度が高い画像データの転送処理が発生した場合、現在実行中の優先度が低い画像データの転送処理に対する制御単位を調整（短縮）することができる。
【００２８】
画像メモリ５０は、入力部１１、２１から入力された画像データや、画像処理部６０、６１及び画像認識部７０で画像処理が行われた画像データを保存する。例えば、画像メモリ５０には、ＤＤＲ３  ＳＤＲＡＭ（Ｄｏｕｂｌｅ−Ｄａｔａ−Ｒａｔｅ３  Ｓｙｎｃｈｒｏｎｏｕｓ  Ｄｙｎａｍｉｃ  Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）を使用することができる。画像メモリ５０を転送能力に優れたＤＤＲ３  ＳＤＲＡＭで構成することにより、大きなメモリ容量を安価に確保しつつ、高速のデータアクセスを実現できる。なお、画像メモリ５０の構成についてはＤＤＲ３  ＳＤＲＡＭに限定されるものではない。例えば、画像メモリ５０には、ＤＲＡＭを利用できる。
【００２９】
画像処理部６０、６１は、画像メモリ５０に保存された画像データに対して画像処理を行う。画像処理部６０、６１は、画像メモリ５０に保存された画像データに対して画像処理を行う際、転送制御部４０に画像データの取得を要求し、画像メモリ５０から画像データを取得する。なお、画像処理部６０、６１による画像処理は、一般に単純な演算を繰り返すようなハードウェアによる処理が有効な画像処理に適用される。例えば、画素変換、画像間演算、エッジ強調、特徴量抽出、画像間パターンマッチングなどの画像処理が画像処理部６０、６１により行われる。
【００３０】
これらの入力部１１、２１、出力部３１、転送制御部４０及び画像処理部６０、６１の機能は、例えば、ＦＰＧＡ（Ｆｉｅｌｄ−Ｐｒｏｇｒａｍｍａｂｌｅ  Ｇａｔｅ  Ａｒｒａｙ）ボード上に実装された所定の論理回路で構成することができる。このようにＦＰＧＡボード上に実装された論理回路でこれらの構成要素を構成することにより、ハードウェアによる入力処理、出力処理、転送処理及び画像処理が実現される。
【００３１】
画像認識部７０は、例えば、画像処理装置１００全体を制御するＣＰＵで構成される。このＣＰＵは、メインメモリ８０に格納された制御プログラムを用いて、装置全体の制御を行う。メインメモリ８０には、例えば、画像メモリ５０と同様に、ＤＤＲ３  ＳＤＲＡＭを使用することができる。メインメモリ８０を転送能力に優れたＤＤＲ３  ＳＤＲＡＭで構成することにより、大きなメモリ容量を安価に確保しつつ、高速のデータアクセスを実現できる。なお、メインメモリ８０の構成についてはＤＤＲ３  ＳＤＲＡＭに限定されるものではない。例えば、メインメモリ８０には、ＤＲＡＭを利用できる。
【００３２】
メインメモリ８０は、画像認識部７０がメインメモリ８０に保存された画像データに対して画像処理を行う場合の画像処理プログラムや各種データ（例えば、フィルタ処理用のパラメータ）を保存する。画像認識部７０は、この画像処理プログラムに従って、画像メモリ５０又はメインメモリ８０に保存された画像データに対して画像処理（画像認識処理）を行う。画像認識部７０による画像処理は、一般に複雑な判断やアルゴリズムを要するソフトウェアにより処理が有効な画像処理に適用される。例えば、画像処理部６０、６１による画像処理後の画像間演算などの画像処理が画像認識部７０で行われる。
【００３３】
なお、画像認識部７０と転送制御部４０との間は、専用バスを介して接続されている。この専用バスは、例えば、ＰＣＩ（Ｐｅｒｉｐｈｅｒａｌ  Ｃｏｍｐｏｎｅｎｔｓ  Ｉｎｔｅｒｃｏｎｎｅｃｔ）  Ｅｘｐｒｅｓｓで構成され、転送制御部４０と画像認識部７０との間のデータ転送を行う。画像認識部７０と転送制御部４０との間のバスにＰＣＩ  Ｅｘｐｒｅｓｓを採用することにより、複数の信号線で同時に複数のビットデータを転送可能となり、１回の転送で同時に複数のビットデータを転送することができる。
【００３４】
このような構成を有する画像処理装置１００において、例えば、画像処理部６０、６１は、カメラ１０、２０で撮影された画像データと、予め準備された比較対象データとを比較することで両者の相関値を所定間隔で演算する。そして、その演算結果として画像処理後の画像データを順次、転送制御部４０を介してメインメモリ８０に出力する。一方、一定量の画像処理後の画像データがメインメモリ８０に蓄積されると、画像認識部７０は、これらの画像処理後の画像データを比較することで、比較対象データとの間で最も相関値が高い画像データを選択する。このように比較対象データと最も相関値が高い画像データを選択することにより、例えば、画像処理装置１００を備えた電子部品の実装装置において、実装対象となるチップの実装箇所を正確に特定することができる。
【００３５】
ここで、本実施の形態に係る画像処理装置１００内の画像データの転送経路について説明する。図２は、本実施の形態に係る画像処理装置１００内の画像データの転送経路の説明図である。なお、図２においては、説明の便宜上、画像処理装置１００内の構成要素間の画像データの転送経路（以下、適宜「データ転送経路」という）を「ＤＴ」と呼び、各データ転送経路に番号を付している。
【００３６】
図２において、画像メモリ５０と画像処理部６０との間のデータ転送経路はＤＴ１で示され、画像メモリ５０と画像処理部６１との間のデータ転送経路はＤＴ２で示されている。また、画像メモリ５０と出力部３１との間のデータ転送経路は、ＤＴ３で示され、出力部３１とモニタ３０との間のデータ転送経路は、ＤＴ４で示されている。なお、モニタ３０の表示周期は、例えば、６０Ｈｚで構成される。解像度が６４０画素×４８０画素のモノクロ画像の場合、出力部３１からモニタ３０へ出力される画像データの転送速度は１４７Ｍｂｐｓとなる。
【００３７】
さらに、画像メモリ５０と入力部１１との間のデータ転送経路は、ＤＴ５で示され、入力部１１とカメラ１０との間のデータ転送経路は、ＤＴ６で示されている。さらに、画像メモリ５０と入力部２１との間のデータ転送経路は、ＤＴ７で示され、入力部２１とカメラ２０との間のデータ転送経路は、ＤＴ８で示されている。例えば、カメラ１０、２０のフレームレートが３０ｆｐｓであり、解像度が１２８０画素×９６０画素、８ビットグレースケールである場合、カメラ１０、２０から入力部１１、２１に入力される画像データの転送速度は２９５Ｍｂｐｓとなる。
【００３８】
さらに、画像メモリ５０と画像認識部７０との間のデータ転送経路は、ＤＴ９で示されている。例えば、画像メモリ５０がＤＤＲ３  ＳＤＲＡＭで構成され、そのメモリクロックが４００Ｍｈｚであり、８ビットずつのプリフェッチ機能を備える場合、画像メモリ５０に対する画像データの転送速度は１２８００Ｍｂｐｓとなる。
【００３９】
以下、本実施の形態に係る画像処理装置１００の動作について、図２を参照しながら図３及び図４を用いて説明する。図３及び図４は、本実施の形態に係る画像処理装置１００の動作を説明するためのシーケンス図である。なお、図３及び図４においては、各カメラ１０、２０からの画像データの入力処理、各画像処理部６０、６１又は画像認識部７０へのデータ転送処理及びモニタ３０への画像データの出力処理等の処理要求が非同期で発生する場合の動作を示している。特に、図３及び図４においては、画像メモリ５０内の画像データに対する画像処理部６０、６１の画像処理が行われている状態において、画像メモリ５０内の画像データのモニタ３０への出力、カメラ１０、２０の撮像データの画像メモリ５０への格納が行われる場合の動作について示している。
【００４０】
図３及び図４に示す例において、転送制御部４０が転送制御に用いる優先度は、画像メモリ５０と画像認識部７０との間のデータ転送（ＤＴ９におけるデータ転送）が最も高く設定され（優先度０）、画像メモリ５０と画像処理部６０、６１との間のデータ転送（ＤＴ１、ＤＴ２におけるデータ転送）が次に高く設定される（優先度１）。また、画像メモリ５０と入力部１１、２１との間のデータ転送（ＤＴ５、７におけるデータ転送）の優先度が次に高く設定され（優先度２）、画像メモリ５０と出力部３１との間のデータ転送（ＤＴ３におけるデータ転送）の優先度が最も低く設定される（優先度３）。
【００４１】
図３に示すように、画像メモリ５０内の画像データに対する画像処理部６０、６１の画像処理が行われる場合、転送制御部４０は、画像メモリ５０と画像処理部６０との間でデータ転送（ＤＴ１におけるデータ転送）１００と、画像メモリ５０と画像処理部６１との間でデータ転送（ＤＴ２におけるデータ転送）１０１とを、所定の制御単位で交互に実行する。例えば、ＤＴ１、ＤＴ２におけるデータ転送１００、１０１の制御単位は、１キロバイト（ＫＢ）に設定される。画像メモリ５０から転送された画像データは、画像処理部６０、６１で画像処理が施される。
【００４２】
モニタ３０への画像データの表示要求が発生すると、転送制御部４０は、ＤＴ１、ＤＴ２におけるデータ転送１００、１０１を一旦中断する。そして、転送制御部４０は、画像メモリ５０から出力部３１に対するデータ転送（ＤＴ３におけるデータ転送）２００ａを実行する。例えば、ＤＴ３におけるデータ転送２００ａの制御単位は、１ＫＢに設定される。画像メモリ５０からデータ転送２００ａが開始されると、出力部３１は、モニタ３０に対して表示用画像データ（ＤＴ４における出力データ２０１ａ）を出力する。
【００４３】
出力データ２０１ａを出力する際、出力部３１は、モニタ３０の表示周期毎に必要なデータを、予め転送前に画像メモリ５０から読み出し、プリフェッチメモリに読み込む。なお、出力部３１は、画像メモリ５０から読み込みながらモニタ３１に対して出力データ２０１を出力することもできる。また、画像メモリ５０の制御クロック及び転送制御部４０のデータ転送速度は、モニタ３０の表示周期よりも十分早い。このため、ＤＴ３におけるデータ転送２００ａは、出力部３１のプリフェッチメモリからモニタ３０への出力データ２０１ａの出力と並行して実行される。
【００４４】
なお、モニタ３０への画像データの表示は、出力部３１から画像メモリ５０内の画像データを転送し続けることで実行される。出力部３１からモニタ３０に対して画像データを出力している間は、画像メモリ５０から出力部３１にデータ転送を行う必要はない。このため、転送制御部４０は、再び、優先度の高いＤＴ１、ＤＴ２におけるデータ転送１００、１０１を実行する。
【００４５】
一方、カメラ２０からの画像データ（入力データ３０１）は、画像メモリ５０へのデータ転送が可能な状態となるまで入力部２１のバッファメモリに一時的に保存される（ＤＴ８におけるデータ転送）。画像メモリ５０内へのデータ転送が可能な状態となると（ＤＴ１、ＤＴ２におけるデータ転送１００、１０１の制御単位が完了すると）、転送制御部４０は、入力部２１から画像メモリ５０に対するデータ転送（ＤＴ７におけるデータ転送）３００ａを実行する。そして、このＤＴ７におけるデータ転送３００ａが完了すると、転送制御部４０は、再び、優先度の高いＤＴ１、ＤＴ２におけるデータ転送１００、１０１を実行する。
【００４６】
同様に、カメラ１０からの画像データ（入力データ４０１）は、画像メモリ５０へのデータ転送が可能な状態となるまで入力部１１のバッファメモリに一時的に保存される（ＤＴ６におけるデータ転送）。画像メモリ５０内へのデータ転送が可能な状態となると（ＤＴ１、ＤＴ２におけるデータ転送１００、１０１の制御単位が完了すると）、転送制御部４０は、入力部１１から画像メモリ５０に対するデータ転送（ＤＴ５におけるデータ転送）４００ａを実行する。そして、このＤＴ５におけるデータ転送４００ａが完了すると、転送制御部４０は、再び、優先度の高いＤＴ１、ＤＴ２におけるデータ転送１００、１０１を実行する。
【００４７】
モニタ３０への画像データの出力が必要なタイミングになると、転送制御部４０は、ＤＴ１、ＤＴ２におけるデータ転送１００、１０１を一旦中断する。そして、転送制御部４０は、画像メモリ５０から出力部３１に対するデータ転送（ＤＴ３におけるデータ転送）２００ｂを実行する。画像メモリ５０からデータ転送が開始されると、出力部３１は、モニタ３０に対して表示用画像データ（ＤＴ４における出力データ２０１ｂ）を出力する。出力部３１からモニタ３０に対して画像データを出力している間は、画像メモリ５０から出力部３１にデータ転送を行う必要はないため、転送制御部４０は、再び、優先度の高いＤＴ１、ＤＴ２におけるデータ転送１００、１０１を実行する。
【００４８】
また、これらのＤＴ３におけるデータ転送やＤＴ１、ＤＴ２におけるデータ転送１００、１０１が実行されている間、カメラ２０からの画像データ（入力データ３０１）は、画像メモリ５０へのデータ転送が可能な状態となるまで入力部２１のバッファメモリに一時的に保存される（ここでは、３枚分の入力データ３０１が保存される）。画像メモリ５０内へのデータ転送が可能な状態となると（ＤＴ１、ＤＴ２におけるデータ転送１００、１０１の制御単位が完了すると）、転送制御部４０は、入力部２１から画像メモリ５０に対するデータ転送（ＤＴ７におけるデータ転送）３００ｂを実行する。そして、このＤＴ７におけるデータ転送３００ｂが完了すると、転送制御部４０は、再び、ＤＴ１、ＤＴ２におけるデータ転送１００、１０１を実行する。
【００４９】
同様に、ＤＴ３におけるデータ転送やＤＴ１、ＤＴ２におけるデータ転送１００、１０１が実行されている間、カメラ１０からの画像データ（入力データ４０１）は、画像メモリ５０へのデータ転送が可能な状態となるまで入力部１１のバッファメモリに一時的に保存される（ここでは、４枚分の入力データ４０１が保存される）。画像メモリ５０内へのデータ転送が可能な状態となると（ＤＴ１、ＤＴ２におけるデータ転送１００、１０１の制御単位が完了すると）、転送制御部４０は、入力部１１から画像メモリ５０に対するデータ転送（ＤＴ５におけるデータ転送）４００ｂを実行する。そして、このＤＴ５におけるデータ転送４００ｂが完了すると、転送制御部４０は、再び、優先度の高いＤＴ１、ＤＴ２におけるデータ転送１００、１０１を実行する。
【００５０】
このように本実施の形態に係る画像処理装置１００においては、転送制御部４０が画像メモリ５０と各構成要素との間のデータ転送を重複しないように制御している。これにより、非同期に処理要求が発生する場合でも、画像メモリ５０に対するデータアクセスをシーケンシャルに制御できるので、ＤＲＡＭ等の安価で大容量を実現できるメモリを画像メモリ５０として利用できる。この結果、製造コストの上昇を抑制しつつ、非同期に発生する処理要求を効率的に処理することが可能となる。
【００５１】
特に、本実施の形態に係る画像処理装置１００において、転送制御部４０は、画像データの転送処理の種別に応じて予め定められた優先度に応じて画像メモリ５０との間のデータ転送の順序を制御している。これにより、優先度に応じて画像メモリ５０との間のデータ転送の重複を回避しつつ、画像処理装置１００の各種処理の順序を選択できるので、非同期に発生する処理要求をより効率的に処理することが可能となる。
【００５２】
また、本実施の形態に係る画像処理装置１００において、入力部１１、２１には、最適なタイミングで転送制御部４０に画像データを出力可能なバッファメモリが備えられている。一方、出力部３１には、最適なタイミングでモニタ３０に画像データを出力可能なプリフェッチメモリが備えられている。このように入力部１１、２１及び出力部３１に必要な容量のメモリを備えることにより、画像メモリ５０に対するデータアクセスをシーケンシャルに確実に制御することが可能となる。
【００５３】
図４に示すシーケンスにおいては、最も優先度が高いデータ転送（ＤＴ９におけるデータ転送）０が発生する点で図３に示すシーケンスと相違する。なお、図４に示すシーケンスにおいて、図３と共通する処理については同一の符号を付し、その説明を適宜省略する。
【００５４】
図４に示すように、ＤＴ９におけるデータ転送０の処理要求が発生すると、転送制御部４０は、データ転送０の完了までの時間を短縮するためにＤＴ１、ＤＴ２におけるデータ転送１００、１０１の制御単位を調整（低減）する（データ転送１１０、１１１）。例えば、短縮後のＤＴ１、ＤＴ２におけるデータ転送１１０、１１１の制御単位は、１２８Ｂに設定される。転送制御部４０は、ＤＴ１、ＤＴ２におけるデータ転送１１０、１１１を実行する。
【００５５】
次に、転送制御部４０は、ＤＴ９におけるデータ転送０のデータサイズを取得する。例えば、転送制御部４０は、画像認識部７０からのデータ転送要求に含まれる情報からデータ転送０のデータサイズを取得できる。そして、転送制御部４０は、このＤＴ９におけるデータ転送０で画像メモリ５０が占有される期間に必要なデータ量を算出し、画像メモリ５０から出力部３１に対するデータ転送（ＤＴ３におけるデータ転送）２１０の制御単位を増加させる。例えば、ＤＴ３におけるデータ転送２１０の制御単位は、２ＫＢに増加される。画像メモリ５０から転送された画像データは、出力部３１のプリフェッチメモリに一時的に保存される。画像メモリ５０からデータ転送２１０が開始されると、出力部３１は、モニタ３０に対して表示用画像データ（ＤＴ４における出力データ２０１）を出力する。
【００５６】
出力部３１からモニタ３０に対して画像データが出力されている間、転送制御部４０は、データ転送０により画像メモリ５０へのアクセスを占有させる。その間、カメラ２０からの画像データ（入力データ３０１）は、画像メモリ５０へのデータ転送が可能な状態となるまで入力部２１のバッファメモリに一時的に保存される（ここでは、３枚分の入力データ３０１が保存される）。同様に、カメラ１０からの画像データ（入力データ４０１）は、画像メモリ５０へのデータ転送が可能な状態となるまで入力部１１のバッファメモリに一時的に保存される（ここでは、３枚分の入力データ３０１が保存される）。
【００５７】
画像メモリ５０内へのデータ転送が可能な状態となると（ＤＴ１、ＤＴ２におけるデータ転送１００、１０１の制御単位が完了すると）、転送制御部４０は、入力部２１から画像メモリ５０に対するデータ転送（ＤＴ７におけるデータ転送）３１０を実行する。続いて、転送制御部４０は、入力部１１から画像メモリ５０に対するデータ転送（ＤＴ５におけるデータ転送）４１０を実行する。そして、このＤＴ５におけるデータ転送４１０が完了すると、転送制御部４０は、再び、優先度の高いＤＴ１、ＤＴ２におけるデータ転送１１０、１１１を実行する。
【００５８】
この場合、入力部１１、２１のバッファメモリには、画像データが保存された状態となっている。このため、転送制御部４０は、ＤＴ１、ＤＴ２におけるデータ転送１１０、１１１が完了すると、入力部２１から画像メモリ５０に対するデータ転送（ＤＴ７におけるデータ転送）３１０と、入力部１１から画像メモリ５０に対するデータ転送（ＤＴ５におけるデータ転送）４１０とを実行する。
【００５９】
このようにＤＴ１、ＤＴ２におけるデータ転送１１０、１１１と、ＤＴ７におけるデータ転送３１０及びＤＴ５におけるデータ転送４１０とを繰り返すうち、再びモニタ３０への画像データの出力が必要なタイミングになると、転送制御部４０は、ＤＴ１、ＤＴ２におけるデータ転送１１０、１１１を一旦中断する。そして、転送制御部４０は、画像メモリ５０から出力部３１に対するデータ転送（ＤＴ３におけるデータ転送）２００を実行する。この場合、最も優先度が高いＤＴ９におけるデータ転送が発生していないことから、ＤＴ３におけるデータ転送の制御単位は、通常の制御単位（例えば、１ＫＢ）に戻される。
【００６０】
画像メモリ５０からデータ転送が開始されると、出力部３１は、モニタ３０に対して表示用画像データ（ＤＴ４における出力データ２０１）を出力する。出力部３１からモニタ３０に対して画像データを出力している間は、画像メモリ５０から出力部３１にデータ転送を行う必要はないため、転送制御部４０は、再び優先度の高いＤＴ１、ＤＴ２におけるデータ転送１０１、１１１を実行する。
【００６１】
ＤＴ９におけるデータ転送０から一定期間が経過した後、転送制御部４０は、ＤＴ１、ＤＴ２におけるデータ転送１１０、１１１の制御単位を元に戻す（データ転送１００、１０１）。例えば、復帰後のＤＴ１、ＤＴ２におけるデータ転送１００、１０１の制御単位は、１ＫＢに設定される。そして、転送制御部４０は、復帰後のＤＴ１、２におけるデータ転送１００、１０１を実行する。
【００６２】
このように本実施の形態に係る画像処理装置１００においては、優先度が低いデータ転送（例えば、ＤＴ１、２におけるデータ転送１００、１０１）を実行中に、優先度の高いデータ転送（例えば、ＤＴ９におけるデータ転送０）が発生すると、転送制御部４０は、優先度の低いデータ転送の制御単位を低減する。これにより、優先度の高いデータ転送を開始するまでの時間を短縮できるので、優先度の高いデータ転送の完了までの時間を短縮することが可能となる。
【００６３】
また、本実施の形態に係る画像処理装置１００においては、優先度の高いデータ転送（例えば、ＤＴ９におけるデータ転送０）が発生すると、転送制御部４０は、優先度の高いデータ転送を開始する前に、優先度の低いデータ転送における制御単位を増加させる。優先度の低いデータ転送の制御単位が増加され、次回のデータ転送タイミングまでの時間を延ばすことができることから、優先度の高いデータ転送に画像メモリへのアクセスを占有させることができるので、優先度の高いデータ転送の完了までの時間を短縮することが可能となる。
【００６４】
なお、本発明は上記実施の形態に限定されず、種々変更して実施することが可能である。上記実施の形態において、添付図面に図示されている大きさや形状等については、これに限定されず、本発明の効果を発揮する範囲内で適宜変更することが可能である。その他、本発明の目的の範囲を逸脱しない限りにおいて適宜変更して実施することが可能である。
【産業上の利用可能性】
【００６５】
以上説明したように、本発明は、製造コストの上昇を抑制しつつ、非同期に発生する処理要求を効率的に処理できるという効果を有し、特に、非同期に同時に処理要求が発生する電子部品の実装装置等に有用である。
【符号の説明】
【００６６】
１００  画像処理装置
１０、２０  カメラ
１１、２１  入力部
３０  モニタ
３１  出力部
４０  転送制御部（制御部）
５０  画像メモリ
６０、６１  画像処理部
７０  画像認識部
８０  メインメモリ
【図１】
2014044668.tif 000003
【図２】
2014044668.tif 000004
【図３】
2014044668.tif 000005
【図４】
2014044668.tif 000006