IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ ファナック株式会社の特許一覧

<>
  • 特許-画像処理装置及びロボット制御装置 図1
  • 特許-画像処理装置及びロボット制御装置 図2
  • 特許-画像処理装置及びロボット制御装置 図3
  • 特許-画像処理装置及びロボット制御装置 図4
  • 特許-画像処理装置及びロボット制御装置 図5
  • 特許-画像処理装置及びロボット制御装置 図6
  • 特許-画像処理装置及びロボット制御装置 図7
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-10-07
(45)【発行日】2024-10-16
(54)【発明の名称】画像処理装置及びロボット制御装置
(51)【国際特許分類】
   H04N 23/741 20230101AFI20241008BHJP
   B25J 19/04 20060101ALI20241008BHJP
   G03B 7/091 20210101ALI20241008BHJP
   G03B 15/00 20210101ALI20241008BHJP
   H04N 23/60 20230101ALI20241008BHJP
   H04N 23/73 20230101ALI20241008BHJP
【FI】
H04N23/741
B25J19/04
G03B7/091
G03B15/00 H
H04N23/60 500
H04N23/73
【請求項の数】 9
(21)【出願番号】P 2022542820
(86)(22)【出願日】2021-08-04
(86)【国際出願番号】 JP2021028911
(87)【国際公開番号】W WO2022034840
(87)【国際公開日】2022-02-17
【審査請求日】2023-03-08
(31)【優先権主張番号】P 2020135607
(32)【優先日】2020-08-11
(33)【優先権主張国・地域又は機関】JP
(73)【特許権者】
【識別番号】390008235
【氏名又は名称】ファナック株式会社
(74)【代理人】
【識別番号】100106002
【弁理士】
【氏名又は名称】正林 真之
(74)【代理人】
【識別番号】100165157
【弁理士】
【氏名又は名称】芝 哲央
(74)【代理人】
【識別番号】100160794
【弁理士】
【氏名又は名称】星野 寛明
(72)【発明者】
【氏名】並木 勇太
【審査官】吉川 康男
(56)【参考文献】
【文献】特開2012-222540(JP,A)
【文献】特開平11-258654(JP,A)
【文献】特開2007-180904(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
H04N 23/741
B25J 19/04
G03B 7/091
G03B 15/00
H04N 23/60
H04N 23/73
(57)【特許請求の範囲】
【請求項1】
被写体を撮像した撮像画像を処理する画像処理装置であって、
前記被写体を撮像するための露光時間の最小値を決定する第1露光時間決定部と、
前記被写体を撮像するための前記露光時間の最大値を決定する第2露光時間決定部と、
前記露光時間の最小値と前記露光時間の最大値との間の基準露光時間で前記被写体を撮像した前記撮像画像の輝度の基準ヒストグラムを算出し、前記基準ヒストグラムを記憶部に記憶し、前記基準露光時間で前記被写体を撮像した前記撮像画像の輝度の第3のヒストグラムを算出し、前記第3のヒストグラムが前記基準ヒストグラムと一致するように露光時間係数を算出する第3露光時間決定部と、
決定された前記露光時間の最小値及び前記露光時間の最大値を含む露光時間範囲に基づいて、前記被写体を撮像するための前記露光時間及び前記被写体を撮像する撮像回数を決定する撮像条件決定部と、
決定された前記露光時間及び前記撮像回数を用いて前記被写体を撮像した複数の撮像画像を合成し、合成画像を生成する合成画像生成部と、を備え
前記撮像条件決定部は、前記露光時間の最小値、前記露光時間の最大値及び前記露光時間係数に基づいて、前記露光時間範囲を算出する、
画像処理装置。
【請求項2】
前記第1露光時間決定部は、
前記被写体を撮像するための前記露光時間の最小値を予め設定し、
前記露光時間の最小値で前記被写体を撮像した前記撮像画像において輝度を算出し、算出された前記輝度に基づく値が、第1の閾値よりも小さい場合、前記露光時間の最小値を変更し、
前記輝度に基づく値が、前記第1の閾値以上になるまで、前記被写体の撮像、前記輝度の算出及び前記露光時間の最小値の変更を繰り返し、前記露光時間の最小値を決定する、
請求項1に記載の画像処理装置。
【請求項3】
前記第2露光時間決定部は、
前記被写体を撮像するための前記露光時間の最大値を設定し、
前記露光時間の最大値で前記被写体を撮像した前記撮像画像において輝度を算出し、算出された前記輝度に基づく値が、第2の閾値よりも大きい場合、前記露光時間の最大値を変更し、
前記輝度に基づく値が、前記第2の閾値以下になるまで、前記被写体の撮像、前記輝度の取得及び前記露光時間の最大値の変更を繰り返し、前記露光時間の最大値を決定する、
請求項1又は2に記載の画像処理装置。
【請求項4】
前記露光時間を決定するために用いられる前記撮像画像は、縮小画像である、請求項1から3のいずれか一項に記載の画像処理装置。
【請求項5】
前記第1露光時間決定部は、前記露光時間の最小値を予め設定する際に、事前に撮像された前記撮像画像の前記露光時間の最小値を用い、
前記第2露光時間決定部は、前記露光時間の最大値を予め設定する際に、事前に撮像された前記撮像画像の前記露光時間の最大値を用いる、請求項1から4のいずれか一項に記載の画像処理装置。
【請求項6】
前記第1露光時間決定部は、前記露光時間の最小値を予め設定する際に、外部から指定された前記撮像画像の前記露光時間の最小値を用い、
前記第2露光時間決定部は、前記露光時間の最大値を予め設定する際に、外部から前記撮像画像の前記露光時間の最大値を用いる、請求項1から4のいずれか一項に記載の画像処理装置。
【請求項7】
前記合成画像生成部は、
前記複数の撮像画像において白飛びさせる割合と黒潰れさせる割合との少なくとも一方を指定可能とし、
前記合成画像において、白飛びさせる割合の画素を白色とし、かつ黒潰れさせる割合の画素を黒色とした状態で、前記合成画像のトーンマッピングを行う、
請求項1から6のいずれか一項に記載の画像処理装置。
【請求項8】
前記合成画像生成部は、
前記合成画像を生成する前の元の画像の情報を記録することによって、異なる合成方法による合成画像生成を可能にする、請求項1から7のいずれか一項に記載の画像処理装置。
【請求項9】
被写体を撮像した撮像画像を処理する画像処理装置を有するロボット制御装置であって、
前記被写体を撮像するための露光時間の最小値を決定する第1露光時間決定部と、
前記被写体を撮像するための前記露光時間の最大値を決定する第2露光時間決定部と、
前記露光時間の最小値と前記露光時間の最大値との間の基準露光時間で前記被写体を撮像した前記撮像画像の輝度の基準ヒストグラムを算出し、前記基準ヒストグラムを記憶部に記憶し、前記基準露光時間で前記被写体を撮像した前記撮像画像の輝度の第3のヒストグラムを算出し、前記第3のヒストグラムが前記基準ヒストグラムと一致するように露光時間係数を算出する第3露光時間決定部と、
決定された前記露光時間の最小値及び前記露光時間の最大値を含む露光時間範囲に基づいて、前記被写体を撮像するための前記露光時間及び前記被写体を撮像する撮像回数を決定する撮像条件決定部と、
決定された前記露光時間及び前記撮像回数を用いて前記被写体を撮像した複数の撮像画像を合成し、合成画像を生成する合成画像生成部と、
を備え
前記撮像条件決定部は、前記露光時間の最小値、前記露光時間の最大値及び前記露光時間係数に基づいて、前記露光時間範囲を算出する、
ロボット制御装置。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、画像処理装置及びロボット制御装置に関する。
【背景技術】
【0002】
従来より、ロボットを用いてワークのハンドリング又は加工等の作業を正確に行うために、ワークが置かれている位置及びロボットが把持しているワークのずれを正確に認識することが必要になる。このため、近年では、視覚センサを用いてワークの位置及びワークのずれを視覚的に認識することが行われている(例えば、特許文献1参照)。
【先行技術文献】
【特許文献】
【0003】
【文献】特開2013-246149号公報
【発明の概要】
【発明が解決しようとする課題】
【0004】
視覚センサで被写体(例えばワーク)の画像を撮像したときに、1枚の画像では明るさの範囲を適切に表現できない場合がある。例えば、視野内の明るい領域に明るさを合わせると、暗い領域は黒く潰れてしまい、視認することができなくなる。逆に視野内の暗い領域に明るさを合わせると、明るい領域が白飛びしてしまい、視認することができなくなる。
【0005】
このような問題に対処するために、HDR(High Dinamic Range)合成という技術が知られている。この技術は、複数の撮像画像を合成することによって、1枚の画像では得られないダイナミックレンジの広い画像を生成する。
【0006】
複数の撮像画像を撮像するには時間がかかるため、画像を撮像する回数が少ないことが望ましい。そこで、被写体を撮像するための適切な露光時間の範囲及び撮像回数を決定するための技術が望まれる。
【課題を解決するための手段】
【0007】
本開示に係る画像処理装置は、被写体を撮像した撮像画像を処理する画像処理装置であって、前記被写体を撮像するための露光時間の最小値を決定する第1露光時間決定部と、前記被写体を撮像するための前記露光時間の最大値を決定する第2露光時間決定部と、決定された前記露光時間の最小値及び前記露光時間の最大値を含む露光時間範囲に基づいて、前記被写体を撮像するための前記露光時間及び前記被写体を撮像する撮像回数を決定する撮像条件決定部と、決定された前記露光時間及び前記撮像回数を用いて前記被写体を撮像した複数の撮像画像を合成し、合成画像を生成する合成画像生成部と、を備える。
【0008】
本開示に係るロボット制御装置は、被写体を撮像した撮像画像を処理する画像処理装置を有するロボット制御装置であって、前記被写体を撮像するための露光時間の最小値を決定する第1露光時間決定部と、前記被写体を撮像するための前記露光時間の最大値を決定する第2露光時間決定部と、決定された前記露光時間の最小値及び前記露光時間の最大値を含む露光時間範囲に基づいて、前記被写体を撮像するための前記露光時間及び前記被写体を撮像する撮像回数を決定する撮像条件決定部と、決定された前記露光時間及び前記撮像回数を用いて前記被写体を撮像した複数の撮像画像を合成し、合成画像を生成する合成画像生成部と、を備える。
【0009】
本開示に係る画像処理装置は、被写体を撮像した撮像画像を処理する画像処理装置であって、前記被写体を撮像するための光学パラメータの最小値を決定する第1露光時間決定部と、前記被写体を撮像するための前記光学パラメータの最大値を決定する第2露光時間決定部と、決定された前記光学パラメータの最小値及び前記光学パラメータの最大値を含む光学パラメータ間範囲に基づいて、前記被写体を撮像するための前記光学パラメータ及び前記被写体を撮像する撮像回数を決定する撮像条件決定部と、決定された前記光学パラメータ及び前記撮像回数を用いて前記被写体を撮像した複数の撮像画像を合成し、合成画像を生成する合成画像生成部と、を備える。
【発明の効果】
【0010】
本発明によれば、被写体を撮像するための適切な露光時間の範囲及び撮像回数を決定することができる。
【図面の簡単な説明】
【0011】
図1】ロボットシステムの構成を示す図である。
図2】ロボット制御装置の構成を示す図である。
図3】HDR合成画像で取得可能な輝度を示す図である。
図4】輝度のヒストグラムにおいて白飛びさせる割合及び黒潰れさせる割合の具体例を示す図である。
図5】画像処理装置の処理の流れを示すフローチャートである。
図6】本発明の一実施形態に係る複数の視覚センサが接続される画像処理システムの例を模式的に示す図である。
図7】本発明の一実施形態に係る複数の画像処理装置が接続される画像処理システムの例を模式的に示す図である。
【発明を実施するための形態】
【0012】
以下、本発明の実施形態の一例について説明する。
図1は、ロボットシステム100の構成を示す図である。図1に示すように、ロボットシステム100は、ロボット制御装置1と、ロボット2と、アーム3と、視覚センサ4と、を備える。
【0013】
ロボット2のアーム3の先端部には、ハンド又はツールが取り付けられている。ロボット2は、ロボット制御装置1の制御により、ワークWのハンドリング又は加工等の作業を行う。また、ロボット2のアーム3の先端部には、視覚センサ4が取り付けられている。なお、視覚センサ4は、ロボット2に取り付けられていなくてもよく、例えば、所定の位置に固定して設置されてもよい。
【0014】
視覚センサ4は、ロボット制御装置1の制御により、ワークWを撮像する。視覚センサ4は、CCD(Charge Coupled Device)イメージセンサで構成される撮像素子と、レンズを含む光学系とを有する二次元カメラが用いられてもよい。また、視覚センサ4は、撮像する撮像画像のビニングレベルを指定することによって、撮像を高速化できる撮像素子を用いることが望ましい。
【0015】
ロボット制御装置1は、ロボット2のためのロボットプログラムを実行し、ロボット2の動作を制御する。その際、ロボット制御装置1は、視覚センサ4によって撮像された撮像画像を用いて、ワークWの位置に対してロボット2が所定の作業を行うように、ロボット2の動作を補正する。
【0016】
図2は、ロボット制御装置1の構成を示す図である。ロボット制御装置1は、画像処理装置10を備える。なお、ロボット制御装置1は、ロボット2を制御するための一般的な構成を有するが、説明の簡素化のために省略する。画像処理装置10は、視覚センサ4によって撮像された撮像画像を処理するための装置である。画像処理装置10は、制御部11と、記憶部12と、を備える。
【0017】
制御部11は、CPU(Central Processing Unit)等のプロセッサであり、記憶部12に記憶されたプログラムを実行することによって各種機能を実現する。
【0018】
制御部11は、第1露光時間決定部111と、第2露光時間決定部112と、第3露光時間決定部113と、撮像条件決定部114と、合成画像生成部115と、を備える。
【0019】
記憶部12は、OS(Operating System)やアプリケーションプログラム等を格納するROM(Read Only Memory)、RAM(Random Access Memory)、その他の各種情報を格納するハードディスクドライブやSSD(Solid State Drive)等の記憶装置である。記憶部12は、例えば、ロボットプログラム等の各種情報を記憶する。
【0020】
第1露光時間決定部111は、被写体(例えば、図1に示すワークW)を撮像するための露光時間の最小値を決定する。
具体的には、第1露光時間決定部111は、露光時間の最小値で被写体を撮像した撮像画像において輝度を算出し、算出された輝度に基づく値が、第1の閾値H1よりも小さい場合、露光時間の最小値を変更する。そして、第1露光時間決定部111は、輝度に基づく値が、第1の閾値H1以上になるまで、被写体の撮像、輝度の算出及び露光時間の最小値の変更を繰り返し、露光時間の最小値を決定する。
【0021】
より具体的には、第1露光時間決定部111は、被写体を撮像するための露光時間の最小値を予め設定し、露光時間の最小値で被写体を撮像した前記撮像画像の輝度の第1のヒストグラムを算出する。
【0022】
次に、第1露光時間決定部111は、第1のヒストグラムにおいて最も輝度が大きい値が、第1の閾値H1よりも小さい場合、最も輝度が大きい値が第1の閾値H1に近づくように露光時間の最小値を変更する。例えば、第1露光時間決定部111は、露光時間の最小値に所定の数値を掛けることによって、露光時間の最小値を変更する。また、第1の閾値H1は、第1のヒストグラムにおいて最も輝度が大きい値が十分大きいことを示す値である。
【0023】
そして、第1露光時間決定部111は、第1のヒストグラムにおいて最も輝度が大きい値が、第1の閾値H1以上になるまで、被写体の撮像、第1のヒストグラムの算出及び露光時間の最小値の変更を繰り返し、露光時間の最小値を決定する。
【0024】
第2露光時間決定部112は、被写体(例えば、図1に示すワークW)を撮像するための露光時間の最大値を決定する。
具体的には、第2露光時間決定部112は、露光時間の最大値で被写体を撮像した撮像画像において輝度を算出し、算出された輝度に基づく値が、第2の閾値H2よりも大きい場合、露光時間の最大値を変更し、輝度に基づく値が、第2の閾値以下になるまで、被写体の撮像、輝度の取得及び露光時間の最大値の変更を繰り返し、露光時間の最大値を決定する。
【0025】
より具体的には、第2露光時間決定部112は、被写体を撮像するための露光時間の最大値を設定し、露光時間の最大値で被写体を撮像した撮像画像の輝度の第2のヒストグラムを算出する。
【0026】
次に、第2露光時間決定部112は、第2のヒストグラムにおいて最も輝度が小さい値が、第2の閾値H2よりも大きい場合、最も輝度が小さい値が第2の閾値H2に近づくように露光時間の最大値を変更する。例えば、第2露光時間決定部112は、露光時間の最大値に所定の数値を掛けることによって、露光時間の最大値を変更する。また、第2の閾値H2は、第2のヒストグラムにおいて最も輝度が小さい値が十分小さいことを示す値である。
【0027】
そして、第2露光時間決定部112は、第2のヒストグラムにおいて最も輝度が小さい値が、第2の閾値H2以下になるまで、被写体の撮像、第2のヒストグラムの取得及び露光時間の最大値の変更を繰り返し、露光時間の最大値を決定する。
【0028】
また、第1露光時間決定部111は、露光時間の最小値を予め設定する際に、事前に撮像された撮像画像の前記露光時間の最小値を用いる。第2露光時間決定部は、露光時間の最大値を予め設定する際に、事前に撮像された撮像画像の露光時間の最大値を用いる。
【0029】
具体的には、第1露光時間決定部111は、前回の撮像時に撮像された撮像画像の露光時間の最小値を予め記憶する。そして、第1露光時間決定部111は、露光時間の最小値を予め設定する際に、前回の撮像時に撮像された撮像画像の露光時間の最小値を用いる。
【0030】
同様に、第2露光時間決定部112は、前回の撮像時に撮像された撮像画像の露光時間の最大値を予め記憶する。そして、第2露光時間決定部112は、露光時間の最大値を予め設定する際に、前回の撮像時に撮像された撮像画像の露光時間の最大値を用いる。これにより、画像処理装置10は、露光時間の範囲の計測を高速化することができる。
【0031】
また、第1露光時間決定部111は、露光時間の最小値を予め設定する際に、外部(例えば、作業者が操作する教示操作盤)から指定された撮像画像の露光時間の最小値を用いてもよい。また、第2露光時間決定部112は、露光時間の最大値を予め設定する際に、外部(例えば、作業者が操作する教示操作盤)から撮像画像の露光時間の最大値を用いてもよい。
【0032】
第3露光時間決定部113は、露光時間の最小値と露光時間の最大値との間の基準露光時間で被写体を撮像した撮像画像の輝度の基準ヒストグラムを算出し、算出した基準ヒストグラムを記憶部12に記憶する。
【0033】
そして、第3露光時間決定部113は、基準露光時間で被写体を撮像した撮像画像の輝度の第3のヒストグラムを算出し、第3のヒストグラムが基準ヒストグラムと一致するように露光時間係数を算出する。
【0034】
撮像条件決定部114は、決定された露光時間の最小値及び露光時間の最大値を含む露光時間範囲に基づいて、被写体を撮像するための露光時間及び被写体を撮像する撮像回数を決定する。
【0035】
例えば、撮像条件決定部114は、決定された露光時間の最小値及び露光時間の最大値を含む露光時間範囲を適切な所定区間で区切り、区切られた箇所を露光時間とし、区切られた回数を撮像回数とすることによって、露光時間及び撮像回数を決定する。
【0036】
例えば、撮像条件決定部114が、露光時間範囲を5分割する、すなわち、撮像回数を5回と決定する場合、所定区間は、区間A1、区間A2、区間A3及び区間A4を含む。
そして、撮像条件決定部114は、区間A2が区間A1の2倍の長さとなり、区間A3が区間A1の4倍の長さとなり、区間A4が区間A1の8倍の長さとなるように、露光時間範囲を区切る。すなわち、区間A1、区間A2、区間A3及び区間A4の長さは比例関係となる。
【0037】
また、撮像条件決定部114は、露光時間の最小値、露光時間の最大値及び露光時間係数に基づいて、露光時間範囲を算出する。
【0038】
具体的には、撮像条件決定部114は、第3露光時間決定部113によって算出された露光時間係数を、露光時間の最小値及び露光時間の最大値に掛けることによって、基準露光時間を考慮した露光時間の最小値及び露光時間の最大値を求める。そして、撮像条件決定部114は、求められた露光時間の最小値及び露光時間の最大値を含む露光時間範囲を算出する。これにより、画像処理装置10は、基準ヒストグラム及び基準露光時間を考慮した露光時間範囲を算出することができる。
【0039】
また、露光時間を決定するために用いられる撮像画像は、縮小画像である。これにより、画像処理装置10は、縮小画像を用いることによって、通常の大きさの撮像画像を用いる場合よりも、露光時間を決定するための処理を高速化することができる。
【0040】
合成画像生成部115は、決定された露光時間及び撮像回数を用いて被写体を撮像した複数の撮像画像を合成し、合成画像を生成する。このようにして画像処理装置10は、HDR(High Dinamic Range)合成された合成画像を生成する。
【0041】
なお、第1露光時間決定部111は、上述した輝度の最大値や最小値に代えて、例えば、輝度の明るいほうから1パーセンタイルの値を元に最小値を決定してもよい。また、第2露光時間決定部112は、上述したヒストグラムに代えて、例えば、輝度の暗いほうから1パーセンタイルの値を元に最大値を決定してもよい。
【0042】
図3は、HDR合成画像で取得可能な輝度を示す図である。これにより、図3に示すように、HDR合成画像で取得可能な輝度の範囲は、1枚の撮像画像で取得可能な輝度の範囲よりも広くなる。したがって、画像処理装置1は、高い解像度を有する撮像画像を得ることができる。
【0043】
また、合成画像生成部115は、複数の撮像画像において白飛びさせる割合と黒潰れさせる割合との少なくとも一方を指定可能とし、合成画像において、白飛びさせる割合の画素を白色とし、かつ黒潰れさせる割合の画素を黒色とした状態で、合成画像のトーンマッピングを行う。
【0044】
図4は、輝度のヒストグラムにおいて白飛びさせる割合及び黒潰れさせる割合の具体例を示す図である。図4に示すように、合成画像生成部115は、合成画像の輝度のヒストグラムにおいて、輝度が最も小さい10%の領域の画素を黒色とし、輝度が最も大きい10%の領域の画素を白色とする。
【0045】
合成画像生成部115は、合成画像を生成する前の画像を記憶しておくこともできる。例えば、合成画像生成部115は、複数の撮像画像を全て保存する、又はトーンマッピング前の画像を保存する等であってもよい。これにより、画像処理装置10は、合成画像による対象物の検出や検査に失敗したときに、保存されている画像を使って、画像合成に関するパラメータを調整することができる。また、画像処理装置10は、別のパラメータ調整の方法を自動で試して、システムが止まらないようにすることもできる。
【0046】
図5は、画像処理装置10の処理の流れを示すフローチャートである。
ステップS1において、第1露光時間決定部111は、被写体を撮像するための露光時間の最小値を予め設定し、第2露光時間決定部112は、被写体を撮像するための露光時間の最大値を設定する。
【0047】
ステップS2において、視覚センサ4は、予め設定された露光時間の最小値で被写体を撮像する。
ステップS3において、第1露光時間決定部111は、露光時間の最小値で被写体を撮像した撮像画像の輝度の第1のヒストグラムを算出する。
【0048】
ステップS4において、第1露光時間決定部111は、ステップS3において算出された第1のヒストグラムにおいて最も輝度が大きい値Lmaxが、第1の閾値H1以上であるか否かを判定する。Lmaxが第1の閾値H1以上である場合(YES)、処理は、ステップS6へ移る。Lmaxが第1の閾値H1未満である場合(NO)、処理は、ステップS5へ移る。
【0049】
ステップS5において、第1露光時間決定部111は、最も輝度が大きい値が第1の閾値H1に近づくように露光時間の最小値を変更する。
【0050】
ステップS6において、第1露光時間決定部111は、ステップS2からステップS5の処理を繰り返すことによって露光時間の最小値を決定する。
【0051】
ステップS7において、視覚センサ4は、予め設定された露光時間の最大値で被写体を撮像する。
ステップS8において、第2露光時間決定部112は、露光時間の最大値で被写体を撮像した撮像画像の輝度の第2のヒストグラムを算出する。
【0052】
ステップS9において、第2露光時間決定部112は、ステップS8において算出された第2のヒストグラムにおいて最も輝度が小さい値Lminが、第2の閾値H2以下であるか否かを判定する。Lminが第2の閾値H2以下である場合(YES)、処理は、ステップS11へ移る。Lminが第2の閾値H2を超える場合(NO)、処理は、ステップS10へ移る。
【0053】
ステップS10において、第2露光時間決定部112は、最も輝度が小さい値が第2の閾値H2に近づくように露光時間の最大値を変更する。
【0054】
ステップS11において、第2露光時間決定部112は、ステップS7からステップS10の処理を繰り返すことによって露光時間の最大値を決定する。
【0055】
ステップS12において、撮像条件決定部114は、ステップS6において決定された露光時間の最小値及びステップS11において決定された露光時間の最大値を含む露光時間範囲に基づいて、被写体を撮像するための露光時間及び被写体を撮像する撮像回数を決定する。
【0056】
ステップS13において、合成画像生成部115は、ステップS12において決定された露光時間及び撮像回数を用いて被写体を撮像した複数の撮像画像を合成し、合成画像を生成する。
【0057】
以上説明したように、本実施形態によれば、画像処理装置10は、被写体を撮像するための露光時間の最小値を決定する第1露光時間決定部111と、被写体を撮像するための露光時間の最大値を決定する第2露光時間決定部112と、決定された露光時間の最小値及び露光時間の最大値を含む露光時間範囲に基づいて、被写体を撮像するための露光時間及び被写体を撮像する撮像回数を決定する撮像条件決定部114と、決定された露光時間及び撮像回数を用いて被写体を撮像した複数の撮像画像を合成し、合成画像を生成する合成画像生成部と、を備える。
【0058】
これにより、画像処理装置10は、測光センサ等を有さずに、被写体を撮像するための適切な露光時間の範囲及び撮像回数を決定し、合成画像を得ることができる。
【0059】
また、第1露光時間決定部111は、露光時間の最小値で被写体を撮像した撮像画像において輝度を算出し、算出された輝度に基づく値が、第1の閾値H1よりも小さい場合、露光時間の最小値を変更する。そして、第1露光時間決定部111は、輝度に基づく値が、第1の閾値H1以上になるまで、被写体の撮像、輝度の算出及び露光時間の最小値の変更を繰り返し、露光時間の最小値を決定する。これにより、画像処理装置10は、露光時間の最小値を適切に決定することができる。
【0060】
また、第2露光時間決定部112は、露光時間の最大値で被写体を撮像した撮像画像において輝度を算出し、算出された輝度に基づく値が、第2の閾値H2よりも大きい場合、露光時間の最大値を変更する。そして、第2露光時間決定部112は、輝度に基づく値が、第2の閾値以下になるまで、被写体の撮像、輝度の取得及び露光時間の最大値の変更を繰り返し、露光時間の最大値を決定する。これにより、画像処理装置10は、露光時間の最大値を適切に決定することができる。
【0061】
また、露光時間を決定するために用いられる撮像画像は、縮小画像である。これにより、画像処理装置10は、縮小画像を用いることによって、通常の大きさの撮像画像を用いる場合よりも、露光時間を決定するための処理を高速化することができる。
【0062】
また、第1露光時間決定部111は、露光時間の最小値を予め設定する際に、事前に撮像された撮像画像の露光時間の最小値を用いる。第2露光時間決定部112は、露光時間の最大値を予め設定する際に、事前に撮像された撮像画像の露光時間の最大値を用いる。これにより、画像処理装置10は、露光時間の範囲の計測を高速化することができる。
【0063】
また、第1露光時間決定部111は、露光時間の最小値を予め設定する際に、外部から指定された撮像画像の露光時間の最小値を用いてもよい。第2露光時間決定部112は、露光時間の最大値を予め設定する際に、外部から撮像画像の露光時間の最大値を用いてもよい。これにより、画像処理装置10は、露光時間の範囲の計測を高速化することができる。
【0064】
また、第3露光時間決定部113は、露光時間の最小値と露光時間の最大値との間の基準露光時間で被写体を撮像した撮像画像の輝度の基準ヒストグラムを算出し、基準ヒストグラムを記憶部12に記憶する。次に、第3露光時間決定部113は、基準露光時間で前記被写体を撮像した前記撮像画像の輝度の第3のヒストグラムを算出し、第3のヒストグラムが前記基準ヒストグラムと一致するように露光時間係数を算出する。
【0065】
また、撮像条件決定部114は、露光時間の最小値、露光時間の最大値及び露光時間係数に基づいて、露光時間範囲を算出する。これにより、画像処理装置10は、基準ヒストグラム及び基準露光時間を考慮した露光時間範囲を算出することができる。
【0066】
また、合成画像生成部115は、複数の撮像画像において白飛びさせる割合と黒潰れさせる割合との少なくとも一方を指定可能とし、合成画像において、白飛びさせる割合の画素を白色とし、かつ黒潰れさせる割合の画素を黒色とした状態で、合成画像のトーンマッピングを行う。これにより、画像処理装置10は、高い解像度を有する合成画像を適切に得ることができる。
【0067】
また、合成画像生成部115は、合成画像を生成する前の元の画像の情報を記録することによって、異なる合成方法による合成画像生成を可能にする。これにより、画像処理装置10は、合成画像による対象物の検出や検査に失敗したときに、保存されている画像を使って、画像合成に関するパラメータを調整することができる。
【0068】
図6は、本発明の一実施形態に係る複数の視覚センサ4が接続される画像処理システム201の例を模式的に示す図である。図6には、N個の視覚センサ4がネットワークバス210を介してセルコントローラ200に接続されている。セルコントローラ200は、上述の画像処理装置10と同様の機能を有し、N個の視覚センサ4のそれぞれから取得される撮像画像を取得する。
【0069】
このような図6に示す画像処理システム201において、セルコントローラ200は、例えば、機械学習器(図示せず)を有してもよい。機械学習器は、セルコントローラ200に記憶された学習データの集まりを取得して、教師あり学習を行う。この例では、学習処理を逐次オンラインで処理していくこともできる。
【0070】
図7は、本発明の一実施形態に係る複数の画像処理装置10が接続される画像処理システム301の例を模式的に示す図である。図7には、m個の画像処理装置10がネットワークバス210を介してセルコントローラ200に接続されている。画像処理装置10のそれぞれには視覚センサ4が1又は複数接続されている。画像処理システム301全体としては合計n個の視覚センサ4を備えている。
【0071】
このような図7に示す画像処理システム301において、セルコントローラ200は、例えば、機械学習器(図示せず)を有してもよい。セルコントローラ200は複数の画像処理装置10から送られてきた学習データの集まりを学習データセットとして記憶し、機械学習を行って学習モデルを構築してもよい。学習モデルは、各画像処理装置10で利用可能となる。
【0072】
なお、上述した実施形態では、画像処理装置10は、露光時間に関する制御を行ったが、露光時間以外の光学パラメータに関する制御を行ってもよい。例えば、画像処理装置10は、露光時間に替えて、撮像素子のゲイン、レンズの絞り等の光学パラメータに関する制御を行ってもよい。
【0073】
この場合、画像処理装置10は、被写体を撮像するための光学パラメータの最小値を決定する第1露光時間決定部111と、被写体を撮像するための光学パラメータの最大値を決定する第2露光時間決定部112と、決定された光学パラメータの最小値及び光学パラメータの最大値を含む光学パラメータ範囲に基づいて、被写体を撮像するための光学パラメータ及び被写体を撮像する撮像回数を決定する撮像条件決定部114と、決定された光学パラメータ及び撮像回数を用いて被写体を撮像した複数の撮像画像を合成し、合成画像を生成する合成画像生成部と、を備える。これにより、画像処理装置10は、測光センサ等を有さずに、被写体を撮像するための適切な光学パラメータの範囲及び撮像回数を決定し、合成画像を得ることができる。
【0074】
以上、本発明の実施形態について説明したが、上記のロボット制御装置1は、ハードウェア、ソフトウェア又はこれらの組み合わせにより実現することができる。また、上記のロボット制御装置1により行なわれる制御方法も、ハードウェア、ソフトウェア又はこれらの組み合わせにより実現することができる。ここで、ソフトウェアによって実現されるとは、コンピュータがプログラムを読み込んで実行することにより実現されることを意味する。
【0075】
プログラムは、様々なタイプの非一時的なコンピュータ可読媒体(non-transitory computer readable medium)を用いて格納され、コンピュータに供給することができる。非一時的なコンピュータ可読媒体は、様々なタイプの実体のある記録媒体(tangible storage medium)を含む。非一時的なコンピュータ可読媒体の例は、磁気記録媒体(例えば、ハードディスクドライブ)、光磁気記録媒体(例えば、光磁気ディスク)、CD-ROM(Read Only Memory)、CD-R、CD-R/W、半導体メモリ(例えば、マスクROM、PROM(Programmable ROM)、EPROM(Erasable PROM)、フラッシュROM、RAM(random access memory))を含む。
【0076】
また、上述した各実施形態は、本発明の好適な実施形態ではあるが、上記各実施形態のみに本発明の範囲を限定するものではなく、本発明の要旨を逸脱しない範囲において種々の変更を施した形態での実施が可能である。
【符号の説明】
【0077】
1 ロボット制御装置
2 ロボット
3 アーム
4 視覚センサ
10 画像処理装置
11 制御部
12 記憶部
100 ロボットシステム
111 第1露光時間決定部
112 第2露光時間決定部
113 第3露光時間決定部
114 撮像条件決定部
115 合成画像生成部
図1
図2
図3
図4
図5
図6
図7