(57)【要約】【課題】基準寸法単位として誤った寸法単位が設定されてしまうことを抑制することができる寸法単位設定方法を提供すること。【解決手段】物体の形状を示す形状データを入力する入力ステップと、前記物体を含む領域を撮像した撮像画像を取得する取得ステップと、前記形状データと前記撮像画像に基づいて、基準寸法単位を設定する設定ステップと、を有する寸法単位設定方法。【選択図】図４
2020123049.tif 000002
【特許請求の範囲】
【請求項１】
物体の形状を示す形状データを入力する入力ステップと、
前記物体を含む領域を撮像した撮像画像を取得する取得ステップと、
前記形状データと前記撮像画像に基づいて、基準寸法単位を設定する設定ステップと、
を有する寸法単位設定方法。
【請求項２】
寸法単位候補に基づいて前記形状データをスケーリングしたモデル候補を生成する生成ステップと、
前記撮像画像に含まれる前記物体と、前記モデル候補との一致度を判定する判定ステップと、
を有し、
前記設定ステップは、前記判定ステップにより前記一致度が決められた閾値以上であると判定された場合、前記モデル候補のスケーリングに用いられた前記寸法単位候補を、前記基準寸法単位として設定する、
請求項１に記載の寸法単位設定方法。
【請求項３】
前記判定ステップにより前記一致度が決められた閾値未満であると判定された場合、警告を示す警告情報を出力する警告ステップを有する、
請求項２に記載の寸法単位設定方法。
【請求項４】
前記生成ステップは、複数の前記寸法単位候補に対応させて前記形状データをスケーリングした複数の前記モデル候補を生成し、
前記判定ステップは、前記複数の前記モデル候補と、前記撮像画像に含まれる前記物体との前記一致度を判定し、
前記設定ステップは、前記判定ステップにより前記一致度が最も高いと判定された前記モデル候補に対応する前記寸法単位候補を、前記基準寸法単位として設定する、
請求項２又は３に記載の寸法単位設定方法。
【請求項５】
寸法単位候補を受け付ける受付ステップと、
前記寸法単位候補に基づいて前記形状データをスケーリングしたモデル候補を生成する生成ステップと、
前記モデル候補を、前記取得ステップにより取得された前記領域を含む領域画像とともに表示部に表示させる表示ステップと、
を有し、
前記設定ステップは、前記表示ステップにより表示された前記モデル候補と前記領域画像が決められた判定条件を満たす場合、前記モデル候補のスケーリングに用いられた前記寸法単位候補を、前記基準寸法単位として設定する、
請求項１に記載の寸法単位設定方法。
【請求項６】
前記受付ステップは、複数の前記寸法単位候補を受け付け、
前記生成ステップは、前記複数の前記寸法単位候補に対応させて前記形状データをスケーリングした複数の前記モデル候補を生成し、
前記表示ステップは、前記複数の前記モデル候補を、前記領域画像とともに前記表示部に表示させ、
前記設定ステップは、前記複数の前記モデル候補のうち、前記判定条件を満たす前記モデル候補のスケーリングに用いられた前記寸法単位候補を、前記基準寸法単位として設定する、
請求項５に記載の寸法単位設定方法。
【請求項７】
前記表示ステップは、前記判定条件を満たす前記モデル候補の前記表示部における表示態様を、前記判定条件を満たさない前記モデル候補の表示態様と異ならせる、
請求項６に記載の寸法単位設定方法。
【請求項８】
前記表示ステップは、前記複数の前記モデル候補を、互いに離間させて前記表示部に表示させる、
請求項６又は７に記載の寸法単位設定方法。
【請求項９】
前記表示ステップは、前記複数の前記モデル候補を重ねて前記表示部に表示させる、
請求項６又は７に記載の寸法単位設定方法。
【請求項１０】
前記表示ステップは、前記複数の前記モデル候補を互いに異なる色で前記表示部に表示させる、
請求項９に記載の寸法単位設定方法。
【請求項１１】
前記表示ステップは、前記複数の前記モデル候補を、前記モデル候補のスケーリングに用いられた前記寸法単位候補が小さい順に重ねて前記表示部に表示させる、
請求項９又は１０に記載の寸法単位設定方法。
【請求項１２】
前記複数の前記モデル候補に前記判定条件を満たす前記モデル候補が含まれていない場合、警告を示す警告情報を出力する警告ステップを有する、
請求項６から１１のうちいずれか一項に記載の寸法単位設定方法。
【請求項１３】
前記表示ステップは、前記モデル候補と前記撮像画像とを離間させて前記表示部に表示させる、
請求項６から１２のうちいずれか一項に記載の寸法単位設定方法。
【請求項１４】
物体の形状を示す形状データの入力を受け付ける受付部と、
前記物体を含む領域を撮像した撮像画像を取得する取得部と、
前記形状データと前記撮像画像に基づいて、基準寸法単位を設定する設定部と、
を備える情報処理装置。
【請求項１５】
ロボットと、前記ロボットを制御するロボット制御装置と、前記ロボット制御装置からの要求に応じて画像処理を行う情報処理装置とを備えるロボットシステムであって、
前記情報処理装置は、
物体の形状を示す形状データの入力を受け付ける受付部と、
前記物体を含む領域を撮像した撮像画像を取得する取得部と、
前記形状データと前記撮像画像に基づいて、基準寸法単位を設定する設定部と、
前記基準寸法単位に基づいて前記画像処理を行う画像処理部と、
前記画像処理部による前記画像処理の結果を前記ロボット制御装置に出力する出力部と、
を備え、
前記ロボット制御装置は、
前記情報処理装置から取得した前記結果に基づいて、前記ロボットを制御する、
ロボットシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、寸法単位設定方法、情報処理装置、及びロボットシステムに関する。
【背景技術】
【０００２】
テンプレートマッチングによるロボットの制御についての研究、開発が行われている。テンプレートマッチングでは、ロボットは、ＣＡＤ（Computer  Aided  Design）データ等の物体の形状を示す形状データに基づいて制御される。
【０００３】
このようなテンプレートマッチングによるロボットの制御に関し、ワークのＣＡＤデータ、複数のカメラのレンズ情報、使用するロボットの動作データ等を記憶しておき、ワークの複数の検査ポイントを撮像するカメラのレンズの焦点距離、カメラの撮像位置と姿勢、そのカメラの撮像位置と姿勢を取るためのロボットの動き等をシミュレーションし、使用するカメラの種類、ロボットの設置位置等をユーザーに提供するシミュレーション装置が知られている（特許文献１参照）。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００９−２６９１３４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
ここで、カメラにより撮像された物体の撮像画像上における大きさは、カメラの配置、撮像画像の拡大又は縮小の倍率によって変化する。このため、特許文献１に記載されたシミュレーション装置のようにＣＡＤデータと当該撮像画像上に含まれる物体とのテンプレートマッチングを行う装置は、ユーザーによりＣＡＤデータの寸法の基準となる単位を誤って入力されている場合、例えば、検出したい所望の物体と形状が同じで大きさが異なる物体を、当該所望の物体として誤検出してしまうことがある。
【課題を解決するための手段】
【０００６】
上記課題を解決するために本発明の一態様は、物体の形状を示す形状データを入力する入力ステップと、前記物体を含む領域を撮像した撮像画像を取得する取得ステップと、前記形状データと前記撮像画像に基づいて、基準寸法単位を設定する設定ステップと、を有する寸法単位設定方法である。
【図面の簡単な説明】
【０００７】
【図１】実施形態に係るロボットシステム１の構成の一例を示す図である。
【図２】情報処理装置４０のハードウェア構成の一例を示す図である。
【図３】情報処理装置４０の機能構成の一例を示す図である。
【図４】情報処理装置４０に基準寸法単位を設定する方法の流れの一例を示す図である。
【図５】基準寸法単位設定画像の一例を示す図である。
【図６】プルダウンメニューＰＤが有する表示欄に「寸法単位候補２」が表示された場合における画像Ｐ１の一例を示す図である。
【図７】第２領域Ｒ２に表示された領域画像に含まれる対象物体Ｏが第１領域Ｒ１においてモデル候補と重ねて表示されている場合における画像Ｐ１の一例を示す図である。
【図８】情報処理装置４０に基準寸法単位を設定する方法の流れの他の例を示す図である。
【図９】第２基準寸法単位設定画像の一例を示す図である。
【図１０】第２基準寸法単位設定画像の他の例を示す図である。
【図１１】情報処理装置４０に基準寸法単位を設定する方法の流れの更に他の例を示す図である。
【発明を実施するための形態】
【０００８】
＜実施形態＞
以下、本発明の実施形態について、図面を参照して説明する。
【０００９】
＜ロボットシステムの構成＞
まず、図１を参照し、実施形態に係るロボットシステム１の構成について説明する。図１は、実施形態に係るロボットシステム１の構成の一例を示す図である。
【００１０】
ロボットシステム１は、例えば、ロボット２０と、撮像部２５と、ロボット制御装置３０と、情報処理装置４０を備える。なお、ロボットシステム１は、これらに加えて、他の装置を備える構成であってもよい。また、ロボットシステム１では、ロボット制御装置３０は、情報処理装置４０と一体に構成されてもよい。
【００１１】
ロボット２０は、スカラロボットである。スカラロボットは、水平多関節ロボットと称されることがある。なお、ロボット２０は、スカラロボットに代えて、垂直多関節ロボット等の他のロボットであってもよい。ここで、垂直多関節ロボットは、１本の腕を有する単腕ロボット、２本以上の腕を有する複腕ロボット等のことである。２本の腕を有する複腕ロボットは、双腕ロボットと称されることがある。
【００１２】
図１に示した例では、ロボット２０は、予め決められた設置面に設置されている。設置面は、例えば、ロボット２０を設置する部屋の床面である。なお、設置面は、当該床面に代えて、当該部屋の壁面、当該部屋の天井面、テーブルの上面、治具の上面、台の上面等であってもよく、屋外の床面、屋外の壁面等であってもよく、他の面であってもよい。
【００１３】
以下では、説明の便宜上、設置面と直交する方向のうちロボット２０の重心から設置面に向かう方向を下又は下方向と称して説明する。また、以下では、説明の便宜上、下方向と反対の方向を上又は上方向と称して説明する。また、以下では、一例として、下方向が、ロボット座標系ＲＣにおけるＺ軸の負方向と一致している場合について説明する。ここで、ロボット座標系ＲＣは、ロボット２０のロボット座標系のことである。また、以下では、一例として、下方向が重力方向と一致している場合について説明する。なお、下方向は、これに代えて、当該負方向と重力方向のうちのいずれか一方又は両方と一致しない構成であってもよい。
【００１４】
ロボット２０は、基台Ｂと、基台Ｂに支持された可動部Ａを備える。
【００１５】
基台Ｂは、設置面において動かないように設置される。
【００１６】
可動部Ａは、第１アームＡ１と、第２アームＡ２と、シャフトＳを備える。ここで、第１アームＡ１は、基台Ｂにより第１回動軸ＡＸ１周りに回動可能に支持されている。第２アームＡ２は、第１アームＡ１により第２回動軸ＡＸ２周りに回動可能に支持されている。シャフトＳは、第２アームＡ２により第３回動軸ＡＸ３周りに回動可能且つ第３回動軸ＡＸ３の軸方向に並進可能に支持されている。
【００１７】
より具体的には、可動部Ａにおいて、シャフトＳは、ほぼ円柱形状の軸体である。シャフトＳの周表面には、ボールねじ溝とスプライン溝とがそれぞれ形成されている。なお、図１では、図を簡略化するため、シャフトＳの周表面に形成されているボールねじ溝とスプライン溝とのそれぞれを省略している。シャフトＳは、図１に示したように、第２アームＡ２の端部のうちの第１アームＡ１と反対側の端部を、上下方向に貫通し、設けられる。
【００１８】
また、シャフトＳの下端部は、外部装置を取り付け可能である。外部装置は、例えば、エンドエフェクターであるが、エンドエフェクター以外の他の装置であってもよい。ここで、シャフトＳの下端部は、シャフトＳが有する端部のうちの下側の端部のことである。図１に示したシャフトＳの下端部には、何も取り付けられていない。なお、シャフトＳの下端部は、外部装置を取り付け不可能な構成であってもよい。
【００１９】
シャフトＳの下端部に取り付けられるエンドエフェクターは、例えば、指部によって物体を保持することが可能なエンドエフェクター、空気、磁気による吸着等によって物体を保持可能なエンドエフェクター等である。本実施形態では、物体を保持するとは、物体を持ち上げることが可能な状態にすることを意味する。なお、シャフトＳの下端部に取り付けられるエンドエフェクターは、これらに代えて、物体を保持不可能なエンドエフェクターであってもよい。
【００２０】
第１アームＡ１は、第１回動軸ＡＸ１周りに回動し、水平方向に移動する。水平方向は、上下方向と直交する方向である。すなわち、本実施形態において、水平方向は、ロボット座標系ＲＣにおけるＸ軸及びＹ軸によって張られるＸＹ平面に沿った方向である。
【００２１】
また、第１アームＡ１は、図示しない第１アクチュエーターによって第１回動軸ＡＸ１周りに回動させられる。すなわち、本実施形態において、第１回動軸ＡＸ１は、第１アクチュエーターの回動軸と一致する仮想的な軸のことである。ここで、第１アクチュエーターは、例えば、サーボモーターである。第１アクチュエーターは、基台Ｂに備えられる。なお、第１アクチュエーターは、第１アームＡ１に備えられる構成であってもよい。また、第１アクチュエーターは、サーボモーターに代えて、他のアクチュエーターであってもよい。また、第１回動軸ＡＸ１は、第１アクチュエーターの回動軸と一致しない仮想的な軸であってもよい。また、水平方向は、上下方向と直交する方向に代えて、上下方向と直交しない方向であってもよい。また、水平方向は、当該ＸＹ平面に沿った方向に代えて、当該ＸＹ平面に沿っていない方向であってもよい。
【００２２】
第２アームＡ２は、第２回動軸ＡＸ２周りに回動し、水平方向に移動する。第２アームＡ２は、図示しない第２アクチュエーターによって第２回動軸ＡＸ２周りに回動させられる。すなわち、本実施形態において、第２回動軸ＡＸ２は、第２アクチュエーターの回動軸と一致する仮想的な軸のことである。ここで、第２アクチュエーターは、例えば、サーボモーターである。第２アクチュエーターは、第２アームＡ２に備えられる。なお、第２アクチュエーターは、第１アームＡ１に備えられる構成であってもよい。また、第２アクチュエーターは、サーボモーターに代えて、他のアクチュエーターであってもよい。また、第２回動軸ＡＸ２は、第２アクチュエーターの回動軸と一致しない仮想的な軸であってもよい。
【００２３】
また、第２アームＡ２は、図示しない第３アクチュエーター及び図示しない第４アクチュエーターを備える。また、第２アームＡ２は、シャフトＳを支持する。
【００２４】
第３アクチュエーターは、例えば、サーボモーターである。第３アクチュエーターは、シャフトＳのボールねじ溝の外周部に設けられたボールねじナットをタイミングベルト等で回動させる。これにより、第３アクチュエーターは、シャフトＳを上下方向に移動させる。なお、第３アクチュエーターは、サーボモーターに代えて、他のアクチュエーターであってもよい。
【００２５】
第４アクチュエーターは、例えば、サーボモーターである。第４アクチュエーターは、シャフトＳのスプライン溝の外周部に設けられたボールスプラインナットをタイミングベルト等で回動させる。これにより、第４アクチュエーターは、シャフトＳを第３回動軸ＡＸ３周りに回動させる。なお、第４アクチュエーターは、サーボモーターに代えて、他のアクチュエーターであってもよい。
【００２６】
ここで、第３回動軸ＡＸ３は、シャフトＳの中心軸と一致する仮想的な軸のことである。なお、第３回動軸ＡＸ３は、シャフトＳの中心軸と一致しない仮想的な軸であってもよい。
【００２７】
撮像部２５は、例えば、集光された光を電気信号に変換する撮像素子として、ＣＣＤ（Charge  Coupled  Device）、ＣＭＯＳ（Complementary  Metal  Oxide  Semiconductor）等を備えたカメラである。図１に示した例では、撮像部２５は、ロボット２０の第２アームＡ２に備えられている。このため、撮像部２５は、第２アームＡ２の動きに応じて移動する。また、撮像部２５が撮像可能な範囲は、第２アームＡ２の動きに応じて変化する。撮像部２５は、当該範囲の二次元画像を撮像する。なお、撮像部２５は、当該範囲の静止画像を撮像する構成であってもよく、当該範囲の動画像を撮像する構成であってもよい。また、撮像部２５は、第２アームＡ２に備えられる構成に代えて、ロボット２０が作業を行うことが可能な範囲を含む領域を撮像可能であれば、第１アームＡ１に備えられる構成であってもよく、基台Ｂに備えられる構成であってもよく、ロボット２０以外の位置に備えられる構成であってもよい。
【００２８】
また、撮像部２５は、ケーブルによって情報処理装置４０と通信可能に接続されている。ケーブルを介した有線通信は、例えば、イーサネット（登録商標）、ＵＳＢ（Universal  Serial  Bus）等の規格によって行われる。なお、撮像部２５は、Ｗｉ−Ｆｉ（登録商標）等の通信規格により行われる無線通信によって情報処理装置４０と接続される構成であってもよい。
【００２９】
ロボット制御装置３０は、ロボット２０を制御する。例えば、ロボット制御装置３０は、予め記憶された動作プログラムに基づいて、ロボット２０を制御する。また、例えば、ロボット制御装置３０は、後述する情報処理装置４０により行われる画像処理の結果に基づいて、ロボット２０を制御する。
【００３０】
また、ロボット制御装置３０は、ケーブルによってロボット２０、情報処理装置４０のそれぞれと通信可能に接続されている。ケーブルを介した有線通信は、例えば、イーサネット（登録商標）、ＵＳＢ等の規格によって行われる。なお、ロボット制御装置３０は、Ｗｉ−Ｆｉ（登録商標）等の通信規格により行われる無線通信によってロボット２０、情報処理装置４０とのうちいずれか一方又は両方と接続される構成であってもよい。
【００３１】
情報処理装置４０は、画像処理を行う装置である。情報処理装置４０は、撮像部２５を制御し、撮像部２５が撮像可能な範囲を撮像部２５に撮像させる。情報処理装置４０は、撮像部２５が撮像した撮像画像を撮像部２５から取得する。情報処理装置４０は、取得した撮像画像に基づく画像処理を行う。また、情報処理装置４０は、ロボット制御装置３０からの要求に応じて、当該画像処理を行う。情報処理装置４０は、当該画像処理の結果をロボット制御装置３０に出力する。ここで、当該画像処理は、例えば、当該撮像画像に基づくテンプレートマッチングである。なお、当該画像処理は、当該テンプレートマッチングに代えて、又は、当該テンプレートマッチングに加えて、当該撮像画像に基づく他の処理であってもよい。
【００３２】
ここで、情報処理装置４０には、基準寸法単位が設定される。基準寸法単位は、画像処理部４７１が行う画像処理において寸法の基準として用いられる寸法単位のことである。寸法単位は、本実施形態において、寸法の単位のことである。また、本実施形態において、寸法は、長さのことである。情報処理装置４０は、設定された基準寸法単位に基づいて、画像処理を行う。ここで、例えば、テンプレートマッチングに用いるテンプレートモデルには、ＣＡＤデータ等の物体の形状を示す形状データが用いられることが多い。また、形状データには、形状データにおける寸法の基準となる寸法単位を示す情報が含まれていないことが多い。例えば、ＣＡＤデータのうちの１つであるＳＴＬ（Standard  Triangulated  Language）データには、当該情報が含まれていない。このような場合、ユーザーは、形状データにおける寸法の基準となる寸法単位を、実際とは異なる寸法単位として認識してしまうことがある。このため、情報処理装置４０には、情報処理装置４０に設定される基準寸法単位として誤った寸法単位がユーザーにより設定されることがある。その結果、情報処理装置４０により行われる画像処理の結果に基づいてロボット２０を制御するロボット制御装置３０は、ロボット２０を精度よく動作させることができないことがある。
【００３３】
このような問題を解決するため、情報処理装置４０は、対象物体Ｏの形状を示す形状データの入力を受け付け、対象物体Ｏを含む領域を撮像した撮像画像を取得し、受け付けた形状データと、取得した撮像画像とに基づいて、基準寸法単位を設定する。これにより、情報処理装置４０は、基準寸法単位として誤った寸法単位が設定されてしまうことを抑制することができる。その結果、ロボットシステム１は、情報処理装置４０により行われた画像処理の結果に基づいて、検出したい所望の物体と形状が同じで大きさが異なる物体を、当該所望の物体として誤検出してしまうことを抑制することができ、ロボット２０を精度よく動作させることができる。ここで、対象物体Ｏは、ロボット２０が作業を行う対象となる物体のことである。このため、対象物体Ｏは、図１に示したように、第２アームＡ２の移動によって撮像部２５による撮像が可能となる範囲内のうちのロボット２０が作業を行うことが可能な範囲内に載置される。また、対象物体Ｏは、寸法が予め分かっている物体である。対象物体Ｏは、例えば、産業用の部品、部材、装置等である。なお、対象物体Ｏは、日用品の部品、部材、装置等であってもよく、生体の細胞、器官等であってもよく、他の種類の物体であってもよい。また、対象物体Ｏの寸法は、本実施形態において、対象物体Ｏが有する各辺の長さのことである。対象物体Ｏは、物体の一例である。
【００３４】
以下では、このような情報処理装置４０の構成と、情報処理装置４０が基準寸法単位を設定する方法とのそれぞれについて詳しく説明する。
【００３５】
＜情報処理装置のハードウェア構成＞
以下、図２を参照し、情報処理装置４０のハードウェア構成について説明する。図２は、情報処理装置４０のハードウェア構成の一例を示す図である。
【００３６】
情報処理装置４０は、例えば、プロセッサー４１と、メモリー４２と、入力受付部４３と、通信部４４と、表示部４５を備える。また、情報処理装置４０は、通信部４４を介して撮像部２５、ロボット制御装置３０のそれぞれと通信を行う。これらの構成要素は、バスを介して相互に通信可能に接続されている。
【００３７】
プロセッサー４１は、例えば、ＣＰＵ（Central  Processing  Unit）である。なお、プロセッサー４１は、ＣＰＵに代えて、ＦＰＧＡ（Field  Programmable  Gate  Array）等の他のプロセッサーであってもよい。プロセッサー４１は、メモリー４２に格納された各種のプログラムを実行する。
【００３８】
メモリー４２は、例えば、ＨＤＤ（Hard  Disk  Drive）、ＳＳＤ（Solid  State  Drive）、ＥＥＰＲＯＭ（Electrically  Erasable  Programmable  Read−Only  Memory）、ＲＯＭ（Read−Only  Memory）、ＲＡＭ（Random  Access  Memory）等を含む。なお、メモリー４２は、情報処理装置４０に内蔵されるものに代えて、ＵＳＢ等のデジタル入出力ポート等によって接続された外付け型の記憶装置であってもよい。メモリー４２は、情報処理装置４０が処理する各種の情報、各種の画像、各種のプログラム等を格納する。
【００３９】
入力受付部４３は、例えば、キーボード、マウス、タッチパッド、その他の入力装置である。なお、入力受付部４３は、これらに代えて、表示部４５と一体に構成されたタッチパネルであってもよい。また、入力受付部４３は、情報処理装置４０と別体であってもよい。この場合、入力受付部４３は、有線又は無線によって情報処理装置４０と通信可能に接続される。
【００４０】
通信部４４は、例えば、ＵＳＢ等のデジタル入出力ポート、イーサネット（登録商標）ポート等を含んで構成される。
【００４１】
表示部４５は、例えば、液晶ディスプレイパネル、有機ＥＬ（ElectroLuminescence）ディスプレイパネル等である。なお、表示部４５は、情報処理装置４０と別体であってもよい。この場合、表示部４５は、有線又は無線によって情報処理装置４０と通信可能に接続される。
【００４２】
＜情報処理装置の機能構成＞
以下、図３を参照し、情報処理装置４０の機能構成について説明する。図３は、情報処理装置４０の機能構成の一例を示す図である。
【００４３】
情報処理装置４０は、メモリー４２と、入力受付部４３と、通信部４４と、表示部４５と、制御部４６を備える。
【００４４】
制御部４６は、情報処理装置４０の全体を制御する。制御部４６は、受付部４６１と、取得部４６３と、生成部４６５と、判定部４６７と、設定部４６９と、画像処理部４７１と、表示制御部４７３と、撮像制御部４７５と、出力部４７７を備える。制御部４６が備えるこれらの機能部は、例えば、プロセッサー４１が、メモリー４２に記憶された各種のプログラムを実行することにより実現される。また、当該機能部のうちの一部又は全部は、ＬＳＩ（Large  Scale  Integration）、ＡＳＩＣ（Application  Specific  Integrated  Circuit）等のハードウェア機能部であってもよい。
【００４５】
受付部４６１は、入力受付部４３を介してユーザーから受け付けた各種の情報を、情報処理装置４０への入力として受け付ける。また、受付部４６１は、入力受付部４３を介してユーザーから受け付けた操作に応じて、メモリー４２に予め記憶された各種の情報を、情報処理装置４０への入力として受け付ける。
【００４６】
取得部４６３は、撮像部２５が撮像した撮像画像を撮像部２５から取得する。
【００４７】
生成部４６５は、受付部４６１により受け付けられた形状データＳＤに基づいて、モデル候補を生成する。ここで、形状データＳＤは、対象物体Ｏの形状を示すデータのことである。より具体的には、形状データＳＤには、対象物体が有する各辺の相対的な位置関係を示す情報とともに、対象物体Ｏが有する各辺の相対的な比率を示す情報が含まれている。形状データＳＤは、例えば、対象物体Ｏの形状を示すＣＡＤデータである。なお、形状データＳＤは、ＣＡＤデータに代えて、対象物体Ｏの形状を示す他のデータであってもよい。モデル候補は、テンプレートマッチングにおいて用いられるテンプレートモデルの候補のことである。
【００４８】
判定部４６７は、生成部４６５により生成されたモデル候補と、取得部４６３が取得した撮像画像に含まれる対象物体Ｏとの一致度を算出する。判定部４６７は、算出した一致度が予め決められた第１条件を満たすか否かを判定する。第１条件については、後述する。
【００４９】
設定部４６９は、基準寸法単位を情報処理装置４０に設定する。
【００５０】
画像処理部４７１は、ロボット制御装置３０からの要求に応じて、取得部４６３が取得した撮像画像に基づく画像処理を行う。以下では、一例として、当該画像処理が、生成部４６５により生成されたモデル候補のうちの１つをテンプレートモデルとして用いたテンプレートマッチングである場合について説明する。
【００５１】
表示制御部４７３は、表示部４５に表示させる各種の画像を生成する。表示制御部４７３は、生成した画像を表示部４５に表示させる。
【００５２】
撮像制御部４７５は、撮像部２５が撮像可能な範囲を撮像部２５に撮像させる。
【００５３】
出力部４７７は、各種の情報を他の装置に出力する。例えば、出力部４７７は、画像処理部４７１により行われた画像処理の結果を、当該他の装置に出力する。ここで、当該他の装置は、例えば、ロボット制御装置３０である。
【００５４】
＜情報処理装置に基準寸法単位を設定する方法の具体例１＞
以下、図４を参照し、情報処理装置４０に基準寸法単位を設定する方法の具体例１について説明する。図４は、情報処理装置４０に基準寸法単位を設定する方法の流れの一例を示す図である。
【００５５】
以下では、一例として、図４に示したステップＳ１１０の手順が行われるよりも前のタイミングにおいて、表示制御部４７３が基準寸法単位設定画像を表示部４５に表示させている場合について説明する。基準寸法単位設定画像は、表示制御部４７３により生成された画像である。表示制御部４７３は、ユーザーから受け付けた操作に応じて、基準寸法単位設定画像を生成する。表示制御部４７３は、生成した基準寸法単位設定画像を表示部４５に表示させる。
【００５６】
また、以下では、一例として、図４に示したステップＳ１１０の手順が行われるよりも前のタイミングにおいて、撮像条件が満たされている場合について説明する。撮像条件は、第１撮像条件と第２撮像条件との２つの条件が満たされること、である。第１撮像条件は、撮像部２５の位置及び姿勢が予め決められた撮像位置及び撮像姿勢と一致又はほぼ一致していること、である。第２撮像条件は、対象物体Ｏの位置及び姿勢が予め決められた載置位置及び載置姿勢と一致又はほぼ一致していること、である。撮像部２５の位置は、本実施形態において、撮像部２５が有する撮像素子上の位置のうち撮像部２５の光軸と当該撮像素子とが交差する位置によって表される。また、撮像部２５の姿勢は、本実施形態において、撮像部２５の光軸の、ロボット座標系ＲＣにおける方向によって表される。対象物体Ｏの位置は、本実施形態において、対象物体Ｏの重心の位置によって表される。また、対象物体Ｏの姿勢は、本実施形態において、対象物体Ｏに対応づけられた三次元局所座標系における各座標軸の、ロボット座標系ＲＣにおける方向によって表される。なお、撮像部２５の位置は、撮像部２５に応じた他の位置によって表される構成であってもよい。また、撮像部２５の姿勢は、撮像部２５に応じて決められる他の方向によって表される構成であってもよい。また、対象物体Ｏの位置は、対象物体Ｏに応じた他の位置によって表される構成であってもよい。また、対象物体Ｏの姿勢は、対象物体Ｏに応じた他の方向によって表される構成であってもよい。
【００５７】
また、以下では、一例として、図４に示したステップＳ１１０の手順が行われるよりも前のタイミングにおいて、前述の形状データＳＤが、ユーザーによりメモリー４２に記憶されている場合について説明する。また、以下では、一例として、当該タイミングにおいて、倍率情報が、ユーザーによりメモリー４２に記憶されている場合について説明する。ここで、倍率情報は、撮像条件が満たされている場合において撮像部２５により撮像された撮像画像に含まれる対象物体Ｏの寸法を、対象物体Ｏの実際の寸法に一致させるために、当該撮像画像に含まれる対象物体Ｏの寸法に対して乗じる倍率を示す情報のことである。また、倍率情報が示す倍率は、光学的なシミュレーション、事前に行う撮像試験等によって予め特定された倍率である。
【００５８】
ユーザーは、表示部４５に予め表示された基準寸法単位設定画像を介して、情報処理装置４０に対してユーザーが所望する寸法単位候補を入力する（ステップＳ１１０）。寸法単位候補は、基準寸法単位として用いる寸法単位の候補のことである。ここで、ステップＳ１１０では、受付部４６１は、基準寸法単位設定画像を介してユーザーから受け付けた操作に応じて、ユーザーが所望する寸法単位候補を、ユーザーから情報処理装置４０への入力として受け付ける。
【００５９】
次に、ユーザーは、表示部４５に予め表示された基準寸法単位設定画像を介して、対象物体Ｏを撮像部２５に撮像させる（ステップＳ１２０）。ここで、ステップＳ１２０では、撮像制御部４７５は、基準寸法単位設定画像を介してユーザーから受け付けた操作に応じて、撮像部２５が撮像可能な範囲を撮像部２５に撮像させる。
【００６０】
次に、ユーザーは、ステップＳ１２０において撮像部２５に撮像させた撮像画像を、情報処理装置４０に撮像部２５から取得させる（ステップＳ１３０）。ここで、ステップＳ１３０では、取得部４６３は、ステップＳ１２０において撮像部２５が撮像した撮像画像を撮像部２５から取得する。なお、取得部４６３は、ユーザーから受け付けた操作に応じて、撮像画像を撮像部２５から取得する構成であってもよく、ユーザーから操作を受け付けることなく、撮像画像を撮像部２５から取得する構成であってもよい。以下では、一例として、取得部４６３が、ユーザーから操作を受け付けることなく、撮像画像を撮像部２５から取得する構成である場合について説明する。
【００６１】
なお、ステップＳ１２０及びステップＳ１３０の２つのステップと、ステップＳ１１０とは、図４に示したフローチャートにおいて、順序が逆であってもよく、並列に行われてもよい。
【００６２】
次に、ユーザーは、メモリー４２に予め記憶された形状データＳＤと、メモリー４２に予め記憶された倍率情報とのそれぞれを情報処理装置４０にメモリー４２から読み出させる（ステップＳ１４０）。ここで、ステップＳ１４０では、生成部４６５は、メモリー４２に予め記憶された形状データＳＤと、メモリー４２に予め記憶された倍率情報とのそれぞれをメモリー４２から読み出す。なお、生成部４６５は、ユーザーから受け付けた操作に応じて、形状データＳＤ及び倍率情報をメモリー４２から読み出す構成であってもよく、ユーザーから操作を受け付けることなく、形状データＳＤ及び倍率情報をメモリー４２から読み出す構成であってもよい。以下では、一例として、生成部４６５が、ユーザーから操作を受け付けることなく、形状データＳＤ及び倍率情報をメモリー４２から読み出す構成である場合について説明する。また、形状データＳＤと倍率情報とは、いずれかが先にメモリー４２から生成部４６５によって読み出されてもよく、並列にメモリー４２から生成部４６５によって読み出されてもよい。
【００６３】
次に、ユーザーは、ステップＳ１１０において受付部４６１が受け付けた寸法単位候補と、ステップＳ１４０において読み出した形状データＳＤ及び倍率情報に基づいて、当該寸法単位候補に応じたモデル候補を情報処理装置４０に生成させる（ステップＳ１５０）。ここで、ステップＳ１５０では、生成部４６５は、当該寸法単位候補と、当該形状データＳＤ及び当該倍率情報に基づいて、当該モデル候補を生成する。なお、生成部４６５は、ユーザーから受け付けた操作に応じて、当該モデル候補を生成する構成であってもよく、ユーザーから操作を受け付けることなく、当該モデル候補を生成する構成であってもよい。以下では、一例として、生成部４６５が、ユーザーから操作を受け付けることなく、当該モデル候補を生成する構成である場合について説明する。また、ステップＳ１５０における生成部４６５による当該モデル候補の生成方法は、既知の方法であってもよく、これから開発される方法であってもよい。例えば、最も簡単な当該生成方法は、寸法の基準を当該寸法単位候補として用いて当該形状データＳＤが示す形状のモデルを生成し、生成したモデルの寸法を当該倍率情報が示す倍率によってスケーリングした後のモデルを、当該モデル候補として生成する方法である。換言すると、当該最も簡単な当該生成方法は、当該寸法単位候補に対応させて当該形状データＳＤをスケーリングしたモデルを、当該モデル候補として生成する方法である。すなわち、当該生成方法は、当該寸法単位候補に基づいて当該形状データＳＤをスケーリングしたモデル候補を生成する方法である。
【００６４】
次に、ユーザーは、ステップＳ１３０において取得部４６３が取得した撮像画像に基づく領域画像と、ステップＳ１５０において生成したモデル候補とを、情報処理装置４０の表示部４５上に表示させる（ステップＳ１６０）。ここで、ステップＳ１６０では、表示制御部４７３は、当該領域画像と、当該モデル候補とを、前述の基準寸法単位設定画像上に表示させる（ステップＳ１６０）。ここで、領域画像は、撮像画像に基づく画像であり、撮像画像上の領域のうち対象物体Ｏを含む領域の画像である。以下では、一例として、領域画像が、当該撮像画像そのものである場合について説明する。なお、領域画像は、当該撮像画像から当該領域を抽出した画像、すなわち、当該撮像画像から当該領域を切り出した画像であってもよい。なお、表示制御部４７３は、ユーザーから受け付けた操作に応じて、当該領域画像及び当該モデル候補を基準寸法単位設定画像上に表示させる構成であってもよく、ユーザーから操作を受け付けることなく、当該領域画像及び当該モデル候補を基準寸法単位設定画像上に表示させる構成であってもよい。以下では、一例として、表示制御部４７３が、ユーザーから操作を受け付けることなく、当該領域画像及び当該モデル候補を基準寸法単位設定画像上に表示させる構成である場合について説明する。
【００６５】
次に、ユーザーは、基準寸法単位設定画像上に表示された領域画像とモデル候補とを比較し、当該領域画像に含まれる対象物体Ｏの大きさと、当該モデル候補の大きさとが一致又はほぼ一致しているか否かを判定する（ステップＳ１７０）。ステップＳ１７０において、ユーザーは、このような判定を目測によって行う。
【００６６】
基準寸法単位設定画像上に表示された領域画像に含まれる対象物体Ｏの大きさと、基準寸法単位設定画像上に表示されたモデル候補の大きさとが一致していないと判定した場合（ステップＳ１７０−ＮＯ）、ユーザーは、ステップＳ１１０に遷移し、基準寸法単位設定画像を介して、これまでに未選択の寸法単位候補を情報処理装置４０に入力する。
【００６７】
一方、基準寸法単位設定画像上に表示された領域画像に含まれる対象物体Ｏの大きさと、基準寸法単位設定画像上に表示されたモデル候補の大きさとが一致又はほぼ一致していると判定した場合（ステップＳ１７０−ＹＥＳ）、ユーザーは、基準寸法単位設定画像を介して、直前に行ったステップＳ１１０において入力した寸法単位候補を、基準寸法単位として情報処理装置４０に設定し（ステップＳ１８０）、情報処理装置４０への基準寸法単位の設定を終了する。ここで、ステップＳ１８０では、設定部４６９は、基準寸法単位設定画像を介してユーザーから受け付けた操作に応じて、当該寸法単位候補を、基準寸法単位としてメモリー４２に記憶させる。これにより、設定部４６９は、当該寸法単位候補を、基準寸法単位として情報処理装置４０に設定する。なお、設定部４６９は、ステップＳ１５０において生成部４６５が生成したモデル候補を、テンプレートモデルとしてメモリー４２に記憶させることにより、当該寸法単位候補を基準寸法単位として情報処理装置４０に設定する構成であってもよく、他の方法によって当該寸法単位候補を基準寸法単位として情報処理装置４０に設定する構成であってもよい。
【００６８】
ここで、情報処理装置４０に基準寸法単位をユーザーが設定する方法、すなわち、図４に示したフローチャートの手順によってユーザーが行う寸法単位設定方法は、対象物体Ｏの形状を示す形状データＳＤを入力する入力ステップと、対象物体Ｏを含む領域を撮像した撮像画像を取得する取得ステップと、形状データＳＤと撮像画像に基づいて、基準寸法単位を設定する設定ステップと、を有すると換言することができる。これにより、当該寸法単位設定方法は、基準寸法単位として誤った寸法単位が設定されてしまうことを抑制することができる。
【００６９】
また、図４に示したフローチャートの手順によってユーザーが行う寸法単位設定方法は、更に、寸法単位候補を受け付ける受付ステップと、受付ステップにより受け付けられた寸法単位候補に基づいて形状データをスケーリングしたモデル候補を生成する生成ステップと、生成ステップにより生成されたモデル候補を、取得ステップにより取得された画像であって対象物体Ｏを含む領域を含む領域画像とともに表示部４５に表示させる表示ステップと、を有する。そして、設定ステップは、表示ステップにより表示されたモデル候補と領域画像とが決められた判定条件を満たす場合、表示ステップにより表示されたモデル候補のスケーリングに用いられた寸法単位候補を、基準寸法単位として設定する。判定条件は、モデル候補の大きさと、領域画像に含まれる対象物体Ｏの大きさとが一致又はほぼ一致していること、である。これにより、当該寸法単位設定方法は、表示部４５に表示されたモデル候補と、表示部４５に表示された領域画像に含まれる対象物体Ｏとに基づいて、基準寸法単位として誤った寸法単位が設定されてしまうことを抑制することができる。
【００７０】
＜基準寸法単位設定画像＞
ここで、上記において説明した基準寸法単位設定画像について説明する。図５は、基準寸法単位設定画像の一例を示す図である。図５に示した画像Ｐ１は、基準寸法単位設定画像の一例を示す。
【００７１】
画像Ｐ１は、例えば、プルダウンメニューＰＤと、第１領域Ｒ１と、第２領域Ｒ２と、ボタンＢ１と、ボタンＢ２との５つのＧＵＩ（Graphical  User  Interface）を有する。なお、画像Ｐ１は、これら５つのＧＵＩに加えて、他のＧＵＩを有する構成であってもよい。
【００７２】
プルダウンメニューＰＤは、画像Ｐ１上において、ユーザーから受け付けた操作に応じて、複数の互いに異なる寸法単位候補のリストを表示させる。表示制御部４７３は、例えば、プルダウンメニューＰＤに対してクリック、タップ等の操作をユーザーから受け付けた場合、画像Ｐ１上において当該リストを表示させる。また、表示制御部４７３は、当該リストが表示されている場合において、当該リストに含まれる複数の寸法単位候補のうちのある寸法単位候補に対してユーザーから操作を受け付けると、画像Ｐ１上において当該リストの表示を削除するとともに、プルダウンメニューＰＤが有する表示欄に当該寸法単位候補を表示させる。そして、受付部４６１は、プルダウンメニューＰＤが有する表示欄に表示された寸法単位候補を、ユーザーにより情報処理装置４０へ入力された寸法単位候補として受け付ける。
【００７３】
図４に示したステップＳ１１０では、ユーザーは、プルダウンメニューＰＤに対して操作を行うことにより、ユーザーが所望する寸法単位候補を情報処理装置４０に入力する。情報処理装置４０の受付部４６１は、プルダウンメニューＰＤが有する表示欄に表示された寸法単位候補を、ユーザーから情報処理装置４０への入力として受け付ける。また、生成部４６５は、図４に示したステップＳ１５０において、このようにして受付部４６１が受け付けた寸法単位候補に基づいて、モデル候補を生成する。
【００７４】
第１領域Ｒ１は、画像Ｐ１が有する領域のうち、図４に示したステップＳ１６０において表示制御部４７３がモデル候補を表示する領域である。図５に示した画像Ｍ１１は、当該モデル候補の一例である。このため、画像Ｍ１１は、プルダウンメニューＰＤが有する表示欄に表示されている寸法単位候補に応じたモデル候補である。当該モデル候補は、すなわち、当該寸法単位候補に基づいて生成部４６５により生成されたモデル候補のことである。図５に示した例では、画像Ｍ１１は、当該表示欄に表示されている「寸法単位候補１」に応じたモデル候補である。「寸法単位候補１」は、例えば、インチである。なお、「寸法単位候補１」は、インチに代えて、他の寸法単位であってもよい。
【００７５】
第２領域Ｒ２は、画像Ｐ１が有する領域のうち、図４に示したステップＳ１６０において表示制御部４７３が領域画像を表示する領域である。また、第２領域Ｒ２は、画像Ｐ１が有する領域のうち第１領域Ｒ１と異なる領域である。このため、第１領域Ｒ１に表示されたモデル候補と、第２領域に表示された領域画像とは、重なり合っていない。換言すると、表示制御部４７３は、当該モデル候補と当該領域画像とを重なり合わせることなく表示部４５に表示させる。更に換言すると、表示制御部４７３は、当該モデル候補と当該領域画像とを互いに離間させて表示部４５に表示させる。図５に示した画像Ｍ２１は、当該領域画像の一例である。本実施形態において、領域画像は、撮像部２５により撮像された撮像画像そのものである。このため、画像Ｍ２１は、撮像画像の一例でもある。
【００７６】
図５に示した例では、画像Ｐ１上には、モデル候補と領域画像とが重なり合うことなく表示されている。すなわち、当該例では、表示制御部４７３は、モデル候補と領域画像とを、互いに重なり合わせることなく画像Ｐ１上に表示させている。
【００７７】
ボタンＢ１は、撮像部２５が撮像可能な範囲を撮像部２５に撮像させるボタンである。ボタンＢ１に対して、クリック、タップ等の操作が行われた場合、撮像制御部４７５は、撮像部２５を制御し、当該範囲を撮像部２５に撮像させる。図４に示したステップＳ１２０では、このように当該範囲の撮像が行われる。その後、取得部４６３は、図４に示したステップＳ１３０において、撮像部２５が撮像した撮像画像を撮像部２５から取得する。
【００７８】
ボタンＢ２は、プルダウンメニューＰＤが有する表示欄に表示された寸法単位候補を、基準寸法単位として情報処理装置４０に設定するボタンである。ボタンＢ２に対して、クリック、タップ等の操作が行われた場合、設定部４６９は、当該寸法単位候補を、基準寸法単位として情報処理装置４０に設定する。図４に示したステップＳ１８０では、設定部４６９は、このように当該寸法単位候補を基準寸法単位として情報処理装置４０に設定する。
【００７９】
ここで、ユーザーは、図４に示したステップＳ１７０において、第１領域Ｒ１に表示されたモデル候補と、第２領域Ｒ２に表示された領域画像とを目測で比較し、当該モデル候補の大きさと当該領域画像に含まれる対象物体Ｏの大きさとが一致しているか否かを判定する。なお、図５は、当該モデル候補の一例である画像Ｍ１１の大きさと、当該領域画像の一例である画像Ｍ２１に含まれる対象物体Ｏの大きさとが一致していない場合の基準寸法単位設定画像の一例でもある。図５に示したように、当該場合、ユーザーは、前述した通り、ステップＳ１１０に遷移し、画像Ｐ１を介して、これまでに未選択の寸法単位候補を情報処理装置４０に入力する。例えば、ユーザーは、当該場合、図６に示したように、プルダウンメニューＰＤに対して再び操作を行い、プルダウンメニューＰＤが有する表示欄に表示されている寸法単位候補を「寸法単位候補１」から「寸法単位候補２」に変える。図６は、プルダウンメニューＰＤが有する表示欄に「寸法単位候補２」が表示された場合における画像Ｐ１の一例を示す図である。「寸法単位候補２」は、例えば、ミリメートルである。なお、「寸法単位候補２」は、ミリメートルに変えて、インチ以外の他の寸法単位であってもよい。
【００８０】
図６に示した第１領域Ｒ１には、画像Ｍ１１に代えて、画像Ｍ１２が表示されている。プルダウンメニューＰＤに表示された寸法単位候補が「寸法単位候補１」から「寸法単位候補２」に変えられた場合、生成部４６５は、「寸法単位候補２」に基づいて、「寸法単位候補２」に応じたモデル候補を生成する。当該第１領域Ｒ１に表示された画像Ｍ１２は、当該モデル候補の一例である。なお、図６は、第１領域Ｒ１に表示されたモデル候補の大きさと、第２領域Ｒ２に表示された領域画像に含まれる対象物体Ｏの大きさとが一致している場合の基準寸法単位設定画像の一例でもある。当該場合、ユーザーは、ボタンＢ２に対して、クリック、タップ等の操作を行う。これにより、ユーザーは、プルダウンメニューＰＤが有する表示欄に表示された寸法単位候補を、基準寸法単位として情報処理装置４０に設定することができる。図６に示した例では、ユーザーは、ボタンＢ２に対して当該操作を行うことにより、「寸法単位候補２」を基準寸法単位として情報処理装置４０に設定することができる。
【００８１】
なお、図５及び図６に示した例では、ユーザーは、前述した通り、第１領域Ｒ１に表示されたモデル候補と、第２領域Ｒ２に表示された領域画像とを目測で比較する。このため、ユーザーは、当該モデル候補の大きさと当該領域画像に含まれる対象物体Ｏの大きさとが一致しているか否かを判定することが困難な場合がある。これを解消するため、表示制御部４７３は、第１領域Ｒ１に表示されたモデル候補の大きさと、第２領域Ｒ２に表示された領域画像に含まれる対象物体Ｏの大きさとが一致又はほぼ一致している場合、例えば、当該モデル候補の色、明るさ等の当該モデル候補の表示態様を、当該場合における表示態様へ、当該場合と異なる場合における表示態様から変化させる構成であってもよい。これにより、情報処理装置４０は、当該モデル候補の大きさと、当該領域画像に含まれる対象物体Ｏの大きさとが一致又はほぼ一致していることを、ユーザーに報せることができる。
【００８２】
また、表示制御部４７３は、図７に示したように、当該モデル候補と当該対象物体Ｏとを重ねて第１領域Ｒ１に表示させる構成であってもよい。
【００８３】
図７は、第２領域Ｒ２に表示された領域画像に含まれる対象物体Ｏが第１領域Ｒ１においてモデル候補と重ねて表示されている場合における画像Ｐ１の一例を示す図である。図７に示した例では、プルダウンメニューＰＤが有する表示欄には、寸法単位候補として「寸法単位候補１」が表示されている。この場合、第１領域Ｒ１には、前述した通り、画像Ｍ１１が表示されている。そして、当該例では、第１領域Ｒ１では、当該領域画像に含まれる対象物体Ｏが、画像ＶＯとして画像Ｍ１１の上に重ねて表示されている。当該場合、表示制御部４７３は、領域画像から対象物体Ｏの輪郭によって囲まれた領域を、画像ＶＯとして切り抜く。換言すると、当該場合、表示制御部４７３は、領域画像から当該領域を、画像ＶＯとして抽出する。そして、表示制御部４７３は、第１領域Ｒ１において、画像Ｍ１１の上に画像ＶＯを重ねて表示する。ここで、本実施形態では、第１領域Ｒ１に表示されたある画像の上とは、表示部４５において当該画像よりも手前側のことを意味する。また、本実施形態では、第１領域Ｒ１に表示されたある画像の下とは、表示部４５において当該画像よりも奥側のことを意味する。なお、表示制御部４７３は、画像Ｍ１１と画像ＶＯとのうち小さい画像を大きい画像の上に重ねて表示する構成であってもよく、画像Ｍ１１と画像ＶＯとのうち大きい画像を小さい画像の上に重ねて表示する構成であってもよい。ただし、画像Ｍ１１と画像ＶＯとのうち大きい画像を小さい画像の上に重ねて表示する構成である場合、表示制御部４７３は、例えば、当該大きい画像の透過率を上げ、当該大きい画像から透けて当該小さい画像が見えるように、画像ＶＯと画像Ｍ１１を第１領域Ｒ１に表示させる。
【００８４】
図７に示したように、第１領域Ｒ１において画像Ｍ１１と画像ＶＯとが重ねて表示されている場合、ユーザーは、画像Ｍ１１の大きさと画像ＶＯの大きさとの比較を容易に行うことができる。これはすなわち、ユーザーが、第１領域Ｒ１に表示されたモデル候補の大きさと、第２領域Ｒ２に表示された領域画像に含まれる対象物体Ｏの大きさとを容易に比較することができることを意味する。
【００８５】
なお、表示制御部４７３は、図７に示した画像ＶＯの表示態様を、第１領域Ｒ１に表示されたモデル候補の表示態様と異なる表示態様にして、画像ＶＯとモデル候補とを第１領域Ｒ１に表示させる構成であってもよい。例えば、表示制御部４７３は、図７に示した画像ＶＯの色を、第１領域Ｒ１に表示されたモデル候補の色と異なる色にして、画像ＶＯとモデル候補とを第１領域Ｒ１に表示させる構成であってもよい。また、例えば、表示制御部４７３は、図７に示した画像ＶＯの明るさを、第１領域Ｒ１に表示されたモデル候補の明るさと異なる明るさにして、画像ＶＯとモデル候補とを第１領域Ｒ１に表示させる構成であってもよい。また、例えば、表示制御部４７３は、図７に示した画像ＶＯのハッチングを、第１領域Ｒ１に表示されたモデル候補のハッチングと異なるハッチングにして、画像ＶＯとモデル候補とを第１領域Ｒ１に表示させる構成であってもよい。
【００８６】
また、表示制御部４７３は、第２領域Ｒ２において、モデル候補と、領域画像に含まれる対象物体Ｏとを重ねて表示させる構成であってもよい。また、表示制御部４７３は、第１領域Ｒ１と第２領域Ｒ２とをまとめた１つの領域を画像Ｐ１上に表示させ、当該領域において、モデル候補と、領域画像に含まれる対象物体Ｏとを重ねて表示させる構成であってもよい。
【００８７】
以上のようにして、ユーザーは、基準寸法単位設定画像を介して情報処理装置４０を操作し、適切な寸法単位候補を、基準寸法単位として情報処理装置４０に設定することができる。その結果、ユーザーは、基準寸法単位として誤った寸法単位を設定してしまうことを抑制することができる。換言すると、情報処理装置４０は、基準寸法単位として誤った寸法単位が設定されてしまうことを抑制することができる。
【００８８】
＜情報処理装置に基準寸法単位を設定する方法の具体例２＞
以下、図８を参照し、情報処理装置４０に基準寸法単位を設定する方法の具体例２について説明する。図８は、情報処理装置４０に基準寸法単位を設定する方法の流れの他の例を示す図である。
【００８９】
以下では、一例として、図８に示したステップＳ２１０の手順が行われるよりも前のタイミングにおいて、表示制御部４７３が第２基準寸法単位設定画像を表示部４５に表示させている場合について説明する。第２基準寸法単位設定画像は、表示制御部４７３により生成された画像である。表示制御部４７３は、ユーザーから受け付けた操作に応じて、第２基準寸法単位設定画像を生成する。表示制御部４７３は、生成した第２基準寸法単位設定画像を表示部４５に表示させる。
【００９０】
また、以下では、一例として、図８に示したステップＳ２１０の手順が行われるよりも前のタイミングにおいて、前述の撮像条件が満たされている場合について説明する。
【００９１】
また、以下では、一例として、図８に示したステップＳ２１０の手順が行われるよりも前のタイミングにおいて、前述の形状データＳＤが、ユーザーによりメモリー４２に記憶されている場合について説明する。また、以下では、一例として、当該タイミングにおいて、倍率情報が、ユーザーによりメモリー４２に記憶されている場合について説明する。
【００９２】
ユーザーは、表示部４５に予め表示された第２基準寸法単位設定画像を介して、情報処理装置４０に対してユーザーが所望する複数の寸法単位候補を入力する（ステップＳ２１０）。ここで、ステップＳ２１０では、受付部４６１は、第２基準寸法単位設定画像を介してユーザーから受け付けた操作に応じて、ユーザーが所望する複数の互いに異なる寸法単位候補を、ユーザーから情報処理装置４０への入力として受け付ける。なお、メモリー４２には、複数の互いに異なる寸法単位候補のそれぞれを示す情報が予め記憶されている構成であってもよい。この場合、ステップＳ２１０では、受付部４６１は、メモリー４２から当該情報を読み出し、読み出した当該情報が示す複数の寸法単位候補のそれぞれを、情報処理装置４０への入力として受け付ける。
【００９３】
次に、ユーザーは、表示部４５に予め表示された第２基準寸法単位設定画像を介して、対象物体Ｏを撮像部２５に撮像させる（ステップＳ２２０）。ここで、ステップＳ２２０では、撮像制御部４７５は、第２基準寸法単位設定画像を介して受け付けた操作に応じて、撮像部２５が撮像可能な範囲を撮像部２５に撮像させる。
【００９４】
次に、ユーザーは、ステップＳ２２０において撮像部２５に撮像させた撮像画像を、情報処理装置４０に撮像部２５から取得させる（ステップＳ２３０）。ここで、ステップＳ２３０では、取得部４６３は、ステップＳ２２０において撮像部２５が撮像した撮像画像を撮像部２５から取得する。なお、取得部４６３は、ユーザーから受け付けた操作に応じて、撮像画像を撮像部２５から取得する構成であってもよく、ユーザーから操作を受け付けることなく、撮像画像を撮像部２５から取得する構成であってもよい。以下では、一例として、取得部４６３が、ユーザーから操作を受け付けることなく、撮像画像を撮像部２５から取得する構成である場合について説明する。
【００９５】
なお、ステップＳ２２０及びステップＳ２３０の２つのステップと、ステップＳ２１０とは、図８に示したフローチャートにおいて、順序が逆であってもよく、並列に行われてもよい。
【００９６】
次に、ユーザーは、メモリー４２に予め記憶された形状データＳＤと、メモリー４２に予め記憶された倍率情報とのそれぞれを情報処理装置４０にメモリー４２から読み出させる（ステップＳ２４０）。ここで、ステップＳ２４０では、生成部４６５は、メモリー４２に予め記憶された形状データＳＤと、メモリー４２に予め記憶された倍率情報とのそれぞれをメモリー４２から読み出す。なお、ステップＳ２４０では、生成部４６５は、ユーザーから受け付けた操作に応じて、形状データＳＤ及び倍率情報をメモリー４２から読み出す構成であってもよく、ユーザーから操作を受け付けることなく、形状データＳＤ及び倍率情報をメモリー４２から読み出す構成であってもよい。以下では、一例として、生成部４６５が、ユーザーから操作を受け付けることなく、形状データＳＤ及び倍率情報をメモリー４２から読み出す構成である場合について説明する。また、形状データＳＤと倍率情報とは、いずれかが先にメモリー４２から生成部４６５によって読み出されてもよく、並列にメモリー４２から生成部４６５によって読み出されてもよい。
【００９７】
次に、ユーザーは、ステップＳ２１０において受付部４６１が受け付けた複数の寸法単位候補の中から１つずつ寸法単位候補を対象寸法単位候補として情報処理装置４０に選択させ、選択させた対象寸法単位候補毎に、ステップＳ２６０の手順を繰り返し行う（ステップＳ２５０）。ここで、ステップＳ２５０では、生成部４６５は、ステップＳ２１０において受付部４６１が受け付けた複数の寸法単位候補の中から１つずつ寸法単位候補を対象寸法単位候補として選択する。なお、ステップＳ２５０では、生成部４６５は、ユーザーから受け付けた操作に応じて、対象寸法単位候補を選択する構成であってもよく、ユーザーから操作を受け付けることなく、対象寸法単位候補を選択する構成であってもよい。以下では、一例として、生成部４６５が、ユーザーから操作を受け付けることなく、対象寸法単位候補を選択する構成である場合について説明する。
【００９８】
ユーザーは、ステップＳ２５０において選択された対象寸法単位候補と、ステップＳ２４０において読み出した形状データＳＤ及び倍率情報に基づいて、対象寸法単位候補に応じたモデル候補を情報処理装置４０に生成させる（ステップＳ２６０）。ここで、ステップＳ２６０では、生成部４６５は、ステップＳ２５０において選択された対象寸法単位候補と、ステップＳ２４０において読み出した形状データＳＤ及び倍率情報に基づいて、対象寸法単位候補に応じたモデル候補を生成する。なお、ステップＳ２６０では、生成部４６５は、ユーザーから受け付けた操作に応じて、当該モデル候補を生成する構成であってもよく、ユーザーから操作を受け付けることなく、当該モデル候補を生成する構成であってもよい。以下では、一例として、生成部４６５が、ユーザーから操作を受け付けることなく、当該モデル候補を生成する構成である場合について説明する。また、生成部４６５による当該モデル候補の生成方法は、図４に示したステップＳ１５０において説明した生成部４６５によるモデル候補の生成方法と同様の方法であるため、説明を省略する。
【００９９】
ステップＳ２６０において対象寸法単位候補に応じたモデル候補を生成した後、ユーザーは、ステップＳ２５０に遷移し、次の対象寸法単位候補を未選択の寸法単位候補の中から選択する。なお、ユーザーは、ステップＳ２５０において未選択の寸法単位候補が存在しない場合、ステップＳ２５０〜ステップＳ２６０の繰り返し手順を終了する。本実施形態では、ステップＳ２６０において対象寸法単位候補に応じたモデル候補を生成した後、生成部４６５は、ステップＳ２５０に遷移し、次の対象寸法単位候補を未選択の寸法単位候補の中から選択する。そして、生成部４６５は、当該場合、ステップＳ２５０〜ステップＳ２６０において繰り返し行う処理を終了する。
【０１００】
ステップＳ２５０〜ステップＳ２６０の繰り返し手順を終了した後、ユーザーは、ステップＳ２３０において取得部４６３が取得した撮像画像に基づく領域画像と、当該繰り返し処理によって生成された複数のモデル候補とを、情報処理装置４０の表示部４５に表示させる（ステップＳ２７０）。ここで、ステップＳ２７０では、表示制御部４７３は、ステップＳ２３０において取得部４６３が取得した撮像画像に基づく領域画像と、当該繰り返し処理によって生成された複数のモデル候補とを、前述の第２基準寸法単位設定画像上に表示させる。なお、ステップＳ２７０では、表示制御部４７３は、ユーザーから受け付けた操作に応じて、当該領域画像及び当該複数のモデル候補を第２基準寸法単位設定画像上に表示させる構成であってもよく、ユーザーから操作を受け付けることなく、当該領域画像及び当該複数のモデル候補を第２基準寸法単位設定画像上に表示させる構成であってもよい。以下では、一例として、表示制御部４７３が、ユーザーから操作を受け付けることなく、当該領域画像及び当該複数のモデル候補を第２基準寸法単位設定画像上に表示させる構成である場合について説明する。
【０１０１】
次に、ユーザーは、第２基準寸法単位設定画像上に表示された領域画像と複数のモデル候補とを比較し、当該領域画像に含まれる対象物体Ｏの大きさと一致又はほぼ一致するモデル候補が、当該複数のモデル候補の中に含まれているか否かを判定する（ステップＳ２８０）。ステップＳ２８０において、ユーザーは、このような判定を目測によって行う。
【０１０２】
第２基準寸法単位設定画像上に表示された領域画像に含まれる対象物体Ｏの大きさと一致又はほぼ一致するモデル候補が、第２基準寸法単位設定画像上に表示された複数のモデル候補の中に含まれていないと判定した場合（ステップＳ２８０−ＮＯ）、ユーザーは、ステップＳ１１０に遷移し、第２基準寸法単位設定画像を介して、これまでに未選択の１以上の寸法単位候補を情報処理装置４０に入力する。
【０１０３】
一方、第２基準寸法単位設定画像上に表示された領域画像に含まれる対象物体Ｏの大きさと一致又はほぼ一致するモデル候補が、第２基準寸法単位設定画像上に表示された複数のモデル候補の中に含まれていると判定した場合（ステップＳ２８０−ＹＥＳ）、ユーザーは、第２基準寸法単位設定画像を介して、ユーザーが当該対象物体Ｏの大きさと一致又はほぼ一致するモデル候補として特定したモデル候補のスケーリングに用いられた寸法単位候補を、基準寸法単位として情報処理装置４０に設定し（ステップＳ２９０）、情報処理装置４０への基準寸法単位の設定を終了する。ここで、ステップＳ２９０では、設定部４６９は、第２基準寸法単位設定画像を介してユーザーから受け付けた操作に応じて、当該寸法単位候補を、基準寸法単位としてメモリー４２に記憶させる。これにより、設定部４６９は、当該寸法単位候補を、基準寸法単位として情報処理装置４０に設定する。なお、設定部４６９は、当該モデル候補を、テンプレートモデルとしてメモリー４２に記憶させることにより、当該寸法単位候補を基準寸法単位として情報処理装置４０に設定する構成であってもよく、他の方法によって当該寸法単位候補を基準寸法単位として情報処理装置４０に設定する構成であってもよい。
【０１０４】
ここで、情報処理装置４０に基準寸法単位をユーザーが設定する方法、すなわち、図８に示したフローチャートの手順によってユーザーが行う寸法単位設定方法は、対象物体Ｏの形状を示す形状データＳＤを入力する入力ステップと、対象物体Ｏを含む領域を撮像した撮像画像を取得する取得ステップと、形状データＳＤと撮像画像に基づいて、基準寸法単位を設定する設定ステップと、を有すると換言することができる。これにより、当該寸法単位設定方法は、基準寸法単位として誤った寸法単位が設定されてしまうことを抑制することができる。
【０１０５】
また、図８に示したフローチャートによってユーザーが行う寸法単位設定方法では、更に、受付ステップは、複数の寸法単位候補を受け付け、生成ステップは、受付ステップにより受け付けられた複数の寸法単位候補のそれぞれについて、寸法単位候補に基づいて形状データＳＤをスケーリングしたモデル候補を生成し、表示ステップは、生成ステップにより生成された複数のモデル候補のそれぞれを、領域画像とともに表示部４５に表示させ、設定ステップは、生成ステップにおいて生成された複数のモデル候補のうち判定条件を満たすモデル候補のスケーリングに用いられた寸法単位候補を、基準寸法単位として設定する。これにより、当該寸法単位設定方法は、表示部４５に表示された複数のモデル候補と、表示部４５に表示された領域画像に含まれる対象物体Ｏとに基づいて、基準寸法単位として誤った寸法単位が設定されてしまうことを抑制することができる。
【０１０６】
＜第２基準寸法単位設定画像＞
ここで、上記において説明した第２基準寸法単位設定画像について説明する。図９は、第２基準寸法単位設定画像の一例を示す図である。図９に示した画像Ｐ２は、第２基準寸法単位設定画像の一例を示す。
【０１０７】
画像Ｐ２は、例えば、寸法単位候補入力領域ＩＦと、第１領域Ｒ１１と、第２領域Ｒ２と、ボタンＢ１と、ボタンＢ２１との５つのＧＵＩを有する。なお、画像Ｐ２は、これら５つのＧＵＩに加えて、他のＧＵＩを有する構成であってもよい。また、複数の寸法単位候補がメモリー４２に予め記憶されており、図８に示したステップＳ２１０において、受付部４６１がメモリー４２から当該複数の寸法単位候補をメモリー４２から読み出す場合、画像Ｐ２は、寸法単位候補入力領域ＩＦを有さない構成であってもよい。
【０１０８】
寸法単位候補入力領域ＩＦは、複数の寸法単位候補のそれぞれを入力する入力欄を有する。図９に示した例では、寸法単位候補入力領域ＩＦは、複数の寸法単位候補のそれぞれを入力する入力欄として、入力欄ＩＦ１〜入力欄ＩＦ６の６個の入力欄を有する。なお、寸法単位候補入力領域ＩＦは、６個よりも少ない入力欄を有する構成であってもよく、６個よりも多い入力欄を有する構成であってもよい。
【０１０９】
寸法単位候補入力領域ＩＦが有する６個の入力欄のうちのある入力欄に対してユーザーからある寸法単位候補が入力された場合、当該入力欄には、当該寸法単位候補が表示される。図９に示した例では、当該６個の入力欄のうちの４個の入力欄のそれぞれには、ユーザーから互いに異なる寸法単位候補が入力されている。当該例では、当該４個の入力欄のそれぞれには、「寸法単位候補１１」、「寸法単位候補１２」、「寸法単位候補１３」、「寸法単位候補１４」のいずれかが入力されている。受付部４６１は、寸法単位候補入力領域ＩＦが有する複数の入力欄に寸法単位候補が入力された場合、当該複数の入力欄のそれぞれに入力されている寸法単位候補を、ユーザーにより情報処理装置４０へ入力された寸法単位候補として受け付ける。すなわち、当該例では、受付部４６１は、「寸法単位候補１１」、「寸法単位候補１２」、「寸法単位候補１３」、「寸法単位候補１４」の４個の寸法単位候補をユーザーから情報処理装置４０へ入力された複数の寸法単位候補として受け付ける。
【０１１０】
図８に示したステップＳ２１０では、ユーザーは、寸法単位候補入力領域ＩＦが有する複数の入力欄のそれぞれに対して操作を行うことにより、ユーザーが所望する複数の寸法単位候補を情報処理装置４０に入力する。情報処理装置４０の受付部４６１は、当該複数の入力欄のそれぞれに入力された寸法単位候補を、ユーザーから情報処理装置４０への入力として受け付ける。また、生成部４６５は、図８に示したステップＳ２５０〜ステップＳ２６０の繰り返し手順において、このようにして受付部４６１が受け付けた寸法単位候補のそれぞれに基づいて、モデル候補を生成する。
【０１１１】
第１領域Ｒ１１は、画像Ｐ２が有する領域のうち、図８に示したステップＳ２７０において表示制御部４７３が複数のモデル候補を表示する領域である。図９に示した画像Ｍ３１〜画像Ｍ３４のそれぞれは、当該複数のモデル候補の一例である。例えば、画像Ｍ３１は、前述の入力欄ＩＦ１に入力された寸法単位候補に応じたモデル候補である。当該寸法単位候補は、例えば、図９に示した「寸法単位候補１１」である。また、例えば、画像Ｍ３２は、入力欄ＩＦ２に入力された寸法単位候補に応じたモデル候補である。当該寸法単位候補は、例えば、図９に示した「寸法単位候補１２」である。また、例えば、画像Ｍ３３は、入力欄ＩＦ３に入力された寸法単位候補に応じたモデル候補である。当該寸法単位候補は、例えば、図９に示した「寸法単位候補１３」である。また、例えば、画像Ｍ３４は、入力欄ＩＦ４に入力された寸法単位候補に応じたモデル候補である。当該寸法単位候補は、例えば、図９に示した「寸法単位候補１４」である。
【０１１２】
また、第１領域Ｒ１１では、ユーザーは、クリック、タップ等の操作によって、第１領域Ｒ１１に表示されている複数のモデル候補のうちユーザーが所望するモデル候補を選択することができる。例えば、設定部４６９は、第１領域Ｒ１１において、あるモデル候補を選択する操作をユーザーから受け付けた場合、当該モデル候補をユーザーにより選択されたモデル候補として特定する。
【０１１３】
なお、設定部４６９は、ユーザーから操作を受け付けることなく、第１領域Ｒ１１に表示されている複数のモデル候補のうち、第２領域Ｒ２に表示されている領域画像に含まれる対象物体Ｏの大きさと一致又はほぼ一致する大きさのモデル候補を特定する構成であってもよい。この場合、表示制御部４７３は更に、設定部４６９により特定された当該モデル候補の表示態様を、他のモデル候補の表示態様と異なる表示態様にする構成であってもよい。
【０１１４】
また、第１領域Ｒ１１では、領域画像に含まれる対象物体Ｏの大きさと一致又はほぼ一致する大きさのモデル候補の表示態様が、他のモデル候補の表示態様と異なる構成であってもよい。図９に示した例では、画像Ｍ３２の大きさが、当該対象物体Ｏの大きさと一致又はほぼ一致している。このため、当該例では、画像Ｍ３２の表示態様が、画像Ｍ３１、画像Ｍ３３、画像Ｍ３４のそれぞれの表示態様と異なる。このような表示態様の違いは、色の違いであってもよく、明るさの違いであってもよく、他の表示態様の違いであってもよい。図９では、このような表示態様の違いを、画像Ｍ３１〜画像Ｍ３４それぞれのハッチングの有無の違いによって表している。これにより、ユーザーは、領域画像に含まれる対象物体Ｏの大きさと一致又はほぼ一致する大きさのモデル候補を、複数のモデル候補の中から容易に特定することができる。
【０１１５】
図９に示した第２領域Ｒ２の構成は、図５に示した第２領域Ｒ２の構成と同様の構成であるため、説明を省略する。
【０１１６】
図９に示したボタンＢ１の構成は、図５に示したボタンＢ１の構成と同様の構成であるため、説明を省略する。
【０１１７】
ボタンＢ２１は、第１領域Ｒ１１においてユーザーにより選択されたモデル候補のスケーリングに用いられた寸法単位候補を、基準寸法単位として情報処理装置４０に設定するボタンである。ボタンＢ２１に対して、クリック、タップ等の操作が行われた場合、設定部４６９は、ユーザーにより選択されたモデル候補であると第１領域Ｒ１１において特定したモデル候補のスケーリングに用いられた寸法単位候補を、基準寸法単位として情報処理装置４０に設定する。図８に示したステップＳ２９０では、設定部４６９は、このように当該寸法単位候補を基準寸法単位として情報処理装置４０に設定する。
【０１１８】
ここで、図９に示した第１領域Ｒ１１では、複数のモデル候補のそれぞれは、互いに重ね合わされることなく表示されている。すなわち、図９に示した例では、表示制御部４７３は、複数のモデル候補のそれぞれを、互いに重ね合わせることなく第１領域Ｒ１１に表示させる。換言すると、表示制御部４７３は、複数のモデル候補を、互いに離間させて第１領域Ｒ１１に表示させる。しかしながら、表示制御部４７３は、図１０に示したように、複数のモデル候補のそれぞれを重ねて第１領域Ｒ１１に表示させる構成であってもよい。図１０は、第２基準寸法単位設定画像の他の例を示す図である。図１０に示した第１領域Ｒ１１では、画像Ｍ３１〜画像Ｍ３４のそれぞれは、重ねて表示されている。より具体的には、第１領域Ｒ１１では、下から上に向かって順に画像Ｍ３４、画像Ｍ３３、画像Ｍ３２、画像Ｍ３１が重ねて表示されている。すなわち、第１領域Ｒ１１では、画像Ｍ３４、画像Ｍ３３、画像Ｍ３２、画像Ｍ３１のそれぞれが、大きさが小さい順に重ねて表示部４５に表示されている。換言すると、第１領域Ｒ１１では、画像Ｍ３４、画像Ｍ３３、画像Ｍ３２、画像Ｍ３１のそれぞれが、画像Ｍ３４、画像Ｍ３３、画像Ｍ３２、画像Ｍ３１それぞれのスケーリングに用いられた寸法単位候補が小さい順に重ねて表示部４５に表示されている。ここで、本実施形態では、第１領域Ｒ１１に表示されたある画像の上とは、表示部４５において当該画像よりも手前側のことを意味する。また、本実施形態では、第１領域Ｒ１１に表示されたある画像の下とは、表示部４５において当該画像よりも奥側のことを意味する。なお、表示制御部４７３は、第１領域Ｒ１１において大きいモデル候補ほど上に位置するように複数のモデル候補を重ねて表示させる構成であってもよく、第１領域Ｒ１１において小さいモデル候補ほど上に位置するように複数のモデル候補を重ねて表示させる構成であってもよく、第１領域Ｒ１１においてランダムに複数のモデル候補を重ねて表示させる構成であってもよい。
【０１１９】
また、表示制御部４７３は、第１領域Ｒ１１において、複数のモデル候補のそれぞれに対して、第２領域Ｒ２に表示された領域画像に含まれる対象物体Ｏを重ねて表示させる構成であってもよい。これにより、ユーザーは、領域画像に含まれる対象物体Ｏの大きさと一致又はほぼ一致する大きさのモデル候補を、複数のモデル候補の中から、より容易に特定することができる。
【０１２０】
また、表示制御部４７３は、複数のモデル候補を、互いに色を変えて第１領域Ｒ１１に表示させる構成であってもよい。換言すると、表示制御部４７３は、複数のモデル候補を互いに異なる色で第１領域Ｒ１１に表示させる構成であってもよい。これにより、情報処理装置４０は、複数のモデル候補それぞれの違いをユーザーに容易に認識させることができる。
【０１２１】
また、表示制御部４７３は、当該領域画像に含まれる対象物体Ｏの大きさと一致又はほぼ一致するモデル候補が、当該複数のモデル候補の中に含まれていない場合、撮像部２５の位置及び姿勢が撮像位置及び撮像姿勢と一致していない可能性が高いため、撮像部２５の位置及び姿勢が撮像位置及び撮像姿勢と一致していることを確認させる警告を示す警告情報を出力する構成であってもよい。例えば、表示制御部４７３は、当該場合、警告情報を表示部４５に表示させる。なお、当該場合、出力部４７７が警告情報を他の装置に出力する構成であってもよい。また、警告情報は、他の警告を示す情報であってもよい。例えば、表示制御部４７３又は出力部４７７は、第１領域Ｒ１１に表示された複数のモデル候補の中に、第２領域Ｒ２に表示された領域画像に含まれる対象物体Ｏの大きさよりも大きいモデル候補が含まれていない場合、撮像部２５のレンズをより拡大率の高いレンズへの交換、撮像部２５のワーキングディスタンスを短くすること等の修正を行うことを促す警告を示す情報を、警告情報として出力する構成であってもよい。また、例えば、表示制御部４７３又は出力部４７７は、第１領域Ｒ１１に表示された複数のモデル候補の中に、第２領域Ｒ２に表示された領域画像に含まれる対象物体Ｏの大きさよりも小さいモデル候補が含まれていない場合、撮像部２５のレンズをより拡大率の低いレンズへの交換、撮像部２５のワーキングディスタンスを長くすること等の修正を行うことを促す警告を示す情報を、警告情報として出力する構成であってもよい。ここで、本実施形態において、撮像部２５のワーキングディスタンスは、撮像部２５の位置から対象物体Ｏの位置までの距離のことである。
【０１２２】
＜情報処理装置に基準寸法単位を設定する方法の具体例３＞
以下、図１１を参照し、情報処理装置４０に基準寸法単位を設定する方法の具体例３について説明する。図１１は、情報処理装置４０に基準寸法単位を設定する方法の流れの更に他の例を示す図である。
【０１２３】
以下では、一例として、図１１に示したステップＳ３１０の処理が行われるよりも前のタイミングにおいて、表示制御部４７３が第３基準寸法単位設定画像を表示部４５に表示させている場合について説明する。第３基準寸法単位設定画像は、表示制御部４７３により生成された画像である。表示制御部４７３は、ユーザーから受け付けた操作に応じて、第３基準寸法単位設定画像を生成する。表示制御部４７３は、生成した第３基準寸法単位設定画像を表示部４５に表示させる。
【０１２４】
また、以下では、一例として、図１１に示したステップＳ３１０の処理が行われるよりも前のタイミングにおいて、前述の撮像条件が満たされている場合について説明する。
【０１２５】
また、以下では、一例として、図１１に示したステップＳ３１０の処理が行われるよりも前のタイミングにおいて、前述の形状データが、ユーザーによりメモリー４２に記憶されている場合について説明する。また、以下では、一例として、当該タイミングにおいて、倍率情報が、ユーザーによりメモリー４２に記憶されている場合について説明する。
【０１２６】
また、以下では、一例として、図１１に示したステップＳ３１０の処理が行われるよりも前のタイミングにおいて、１以上の互いに異なる寸法単位候補が、ユーザーによりメモリー４２に記憶されている場合について説明する。
【０１２７】
また、以下では、一例として、図１１に示したステップＳ３１０の処理が行われるよりも前のタイミングにおいて、ユーザーが、前述の第３基準寸法単位設定画像を介して、基準寸法単位を情報処理装置４０に設定する処理を情報処理装置４０に開始させる操作を情報処理装置４０に対して行っている場合について説明する。
【０１２８】
受付部４６１は、メモリー４２に予め記憶された１以上の寸法単位候補をメモリー４２から読み出す（ステップＳ３１０）。これにより、受付部４６１は、当該１以上の寸法単位候補を、入力として受け付ける。
【０１２９】
次に、撮像制御部４７５は、撮像部２５が撮像可能な範囲を撮像部２５に撮像させる（ステップＳ３２０）。
【０１３０】
次に、取得部４６３は、ステップＳ３２０において撮像部２５が撮像した撮像画像を撮像部２５から取得する（ステップＳ３３０）。
【０１３１】
なお、ステップＳ３２０及びステップＳ３３０の２つのステップと、ステップＳ３１０とは、図１１に示したフローチャートにおいて、順序が逆であってもよく、並列に行われてもよい。
【０１３２】
次に、生成部４６５は、メモリー４２に予め記憶された形状データＳＤと、メモリー４２に予め記憶された倍率情報とのそれぞれをメモリー４２から読み出す（ステップＳ３４０）。なお、形状データＳＤと倍率情報とは、図１１に示したフローチャートにおける異なるステップにおいてメモリー４２から読み出される構成であってもよい。また、形状データＳＤと倍率情報とは、いずれが先にメモリー４２から読み出されてもよく、並列にメモリー４２から読み出されてもよい。
【０１３３】
次に、生成部４６５は、ステップＳ３１０において受付部４６１が受け付けた１以上の寸法単位候補の中から１つずつ寸法単位候補を対象寸法単位候補として選択し、選択した対象寸法単位候補毎にステップＳ３６０〜ステップＳ３７０の処理を繰り返し行う（ステップＳ３５０）。
【０１３４】
生成部４６５は、ステップＳ３５０において選択された対象寸法単位候補と、ステップＳ３４０において読み出した形状データＳＤ及び倍率情報に基づいて、対象寸法単位候補に応じたモデル候補を生成する（ステップＳ３６０）。なお、生成部４６５による当該モデル候補の生成方法は、図４に示したステップＳ１５０において説明した生成部４６５によるモデル候補の生成方法と同様の方法であるため、説明を省略する。
【０１３５】
次に、生成部４６５は、ステップＳ３６０において生成したモデル候補と、ステップＳ３３０において取得部４６３が取得した撮像画像に含まれる対象物体Ｏとの一致度を算出する（ステップＳ３７０）。ここで、ステップＳ３７０において算出される一致度は、当該モデル候補を当該対象物体Ｏに対してテンプレートマッチングさせた場合において当該モデル候補を拡大又は縮小させる倍率によって表されてもよく、当該モデル候補の面積と当該対象物体Ｏの面積との差分によって表されてもよく、当該場合における類似度によって表されてもよく、当該モデル候補と当該対象物体Ｏとに基づく他の値によって表されてもよい。生成部４６５は、算出した一致度を、当該モデル候補に対応付ける。
【０１３６】
ステップＳ３７０において一致度がモデル候補に対応付けられた後、生成部４６５は、ステップＳ３５０に遷移し、次の対象寸法単位候補を未選択の寸法単位候補の中から選択する。なお、生成部４６５は、ステップＳ３５０において未選択の寸法単位候補が存在しない場合、ステップＳ３５０〜ステップＳ３７０の繰り返し処理を終了する。そして、表示制御部４７３は、ステップＳ３８０に遷移する。
【０１３７】
ステップＳ３５０〜ステップＳ３７０の繰り返し処理が終了した後、判定部４６７は、当該繰り返し処理によって生成された１以上のモデル候補の中に、前述の第１条件を満たすモデル候補が含まれているか否かを判定する（ステップＳ３８０）。第１条件は、一致度が予め決められた閾値以上であること、である。なお、第１条件は、これに代えて、他の条件であってもよい。
【０１３８】
１以上のモデル候補の中に第１条件を満たすモデル候補が含まれていないと判定部４６７が判定した場合（ステップＳ３８０−ＮＯ）、表示制御部４７３又は出力部４７７は、前述の警告情報を出力し（ステップＳ４２０）、処理を終了する。なお、ステップＳ３５０〜ステップＳ３７０の繰り返し処理によって生成されたモデル候補が１つの場合、１以上のモデル候補の中に第１条件を満たすモデル候補が含まれていないことは、当該繰り返し処理によって生成された１つのモデル候補に対応付けられた一致度が、前述の閾値未満であることを意味する。
【０１３９】
一方、１以上のモデル候補の中に第１条件を満たすモデル候補が含まれていると判定部４６７が判定した場合（ステップＳ３８０−ＹＥＳ）、設定部４６９は、第１条件を満たすモデル候補の中から、第２条件を満たすモデル候補を特定する（ステップＳ３９０）。第２条件は、第１条件を満たすモデル候補のうち、対応付けられている一致度が最も高いモデル候補であること、である。なお、第２条件は、これに代えて、他の条件であってもよい。
【０１４０】
次に、設定部４６９は、ステップＳ３９０において特定したモデル候補のスケーリングにおいて用いられた寸法単位候補を、基準寸法単位として情報処理装置４０に設定する（ステップＳ４００）。
【０１４１】
次に、表示制御部４７３は、ステップＳ３９０において特定したモデル候補のスケーリングにおいて用いられた寸法単位候補を示す情報を、前述の第３基準寸法単位設定画像上に表示させ（ステップＳ４１０）、処理を終了する。
【０１４２】
なお、図１１に示したフローチャートの処理において、ステップＳ４１０の処理は、省略されてもよい。また、当該フローチャートの処理において、ステップＳ３８０の処理は、省略されてもよい。また、情報処理装置４０は、前述の閾値を適切に決めることにより、第２条件を満たすモデル候補を特定することなく、第１条件を満たすモデル候補のスケーリングに用いられた寸法単位候補を、基準寸法単位として設定する構成であってもよい。
【０１４３】
以上のように、情報処理装置４０は、対象物体Ｏの形状を示す形状データの入力を受け付ける受付部４６１と、対象物体Ｏを含む領域を撮像した撮像画像を取得する取得部４６３と、形状データと撮像画像に基づいて、基準寸法単位を設定する設定部４６９と、を備える。これにより、情報処理装置４０は、基準寸法単位として誤った寸法単位が設定されてしまうことを抑制することができる。
【０１４４】
なお、上記において説明した寸法単位設定方法は、例えば、システムインテグレーターが、カメラで物体を検出した結果に基づいて、何らかのロボットにより物体に作業を行うシステムを立ち上げる際、カメラ、レンズ等の光学系の配置と画像処理を行う装置の設定とを行う場合等に適用される。
【０１４５】
以上説明したように、実施形態に係る寸法単位設定方法は、物体の形状を示す形状データを入力する入力ステップと、物体を含む領域を撮像した撮像画像を取得する取得ステップと、形状データと撮像画像に基づいて、基準寸法単位を設定する設定ステップと、を有する。これにより、寸法単位設定方法は、基準寸法単位として誤った寸法単位が設定されてしまうことを抑制することができる。ここで、寸法単位設定方法は、上記において説明した例では、図４、８、１１のそれぞれに示したフローチャートにおいて説明した方法、及び当該方法の変形例である。また、物体は、上記において説明した例では、対象物体Ｏである。
【０１４６】
また、寸法単位設定方法は、寸法単位候補に基づいて形状データをスケーリングしたモデル候補を生成する生成ステップと、撮像画像に含まれる物体と、モデル候補との一致度を判定する判定ステップと、を有し、設定ステップは、判定ステップにより一致度が決められた閾値以上であると判定された場合、モデル候補のスケーリングに用いられた寸法単位候補を、基準寸法単位として設定する、構成が用いられてもよい。
【０１４７】
また、寸法単位設定方法は、判定ステップにより一致度が決められた閾値未満であると判定された場合、警告を示す警告情報を出力する警告ステップを有する、構成が用いられてもよい。
【０１４８】
また、寸法単位設定方法では、寸法単位候補は、複数あり、生成ステップは、複数の寸法単位候補のそれぞれについて、寸法単位候補に基づいて形状データをスケーリングしたモデル候補を生成し、判定ステップは、複数のモデル候補のそれぞれについて、撮像画像に含まれる物体と、モデル候補との一致度を判定し、設定ステップは、モデル候補のうち判定ステップにより判定された一致度が最も高いモデル候補のスケーリングに用いられた寸法単位候補を、基準寸法単位として設定する、構成が用いられてもよい。換言すると、寸法単位設定方法では、生成ステップは、複数の寸法単位候補に対応させて形状データをスケーリングした複数のモデル候補を生成し、判定ステップは、複数のモデル候補と、撮像画像に含まれる物体との一致度を判定し、設定ステップは、判定ステップにより当該一致度が最も高いと判定されたモデル候補に対応する寸法単位候補を、基準寸法単位として設定する、構成が用いられてもよい。
【０１４９】
また、寸法単位設定方法では、寸法単位候補は、寸法単位候補を受け付ける受付ステップと、受付ステップにより受け付けられた寸法単位候補に基づいて形状データをスケーリングしたモデル候補を生成する生成ステップと、生成ステップにより生成されたモデル候補を、取得ステップにより取得された物体を含む領域を含む領域画像とともに表示部に表示させる表示ステップと、を有し、設定ステップは、表示ステップにより表示されたモデル候補と領域画像とが決められた判定条件を満たす場合、表示ステップにより表示されたモデル候補のスケーリングに用いられた寸法単位候補を、基準寸法単位として設定する、構成が用いられてもよい。
【０１５０】
また、寸法単位設定方法では、受付ステップは、複数の寸法単位候補を受け付け、生成ステップは、受付ステップにより受け付けられた複数の寸法単位候補のそれぞれについて、寸法単位候補に基づいて形状データをスケーリングしたモデル候補を生成し、表示ステップは、生成ステップにより生成された複数のモデル候補のそれぞれを、領域画像とともに表示部に表示させ、設定ステップは、生成ステップにおいて生成された複数のモデル候補のうち第１条件を満たすモデル候補のスケーリングに用いられた寸法単位候補を、基準寸法単位として設定する、構成が用いられてもよい。換言すると、寸法単位設定方法では、受付ステップは、複数の寸法単位候補を受け付け、生成ステップは、複数の寸法単位候補に対応させて形状データをスケーリングした複数のモデル候補を生成し、表示ステップは、複数のモデル候補を、領域画像とともに表示部に表示させ、設定ステップは、複数のモデル候補のうち、判定条件を満たすモデル候補のスケーリングに用いられた寸法単位候補を、基準寸法単位として設定する、構成が用いられてもよい。
【０１５１】
また、寸法単位設定方法では、表示ステップは、複数のモデル候補のうち判定条件を満たすモデル候補の表示部における表示態様を、複数のモデル候補のうち判定条件を満たさないモデル候補の表示態様と異ならせる、構成が用いられてもよい。
【０１５２】
また、寸法単位設定方法では、表示ステップは、複数のモデル候補のそれぞれを、互いに重なり合わせることなく表示部に表示させる、構成が用いられてもよい。換言すると、寸法単位設定方法では、表示ステップは、複数のモデル候補を、互いに離間させて表示部に表示させる、構成が用いられてもよい。
【０１５３】
また、寸法単位設定方法では、表示ステップは、複数のモデル候補を重ねて表示部に表示させる、構成が用いられてもよい。
【０１５４】
また、寸法単位設定方法では、表示ステップは、複数のモデル候補のそれぞれを互いに色を変えて表示部に表示させる、構成が用いられてもよい。換言すると、寸法単位設定方法では、表示ステップは、複数のモデル候補を互いに異なる色で表示部に表示させる、構成が用いられてもよい。
【０１５５】
また、寸法単位設定方法では、表示ステップは、複数のモデル候補のそれぞれを、大きさが小さい順に重ねて表示部に表示させる、構成が用いられてもよい。換言すると、寸法単位設定方法では、表示ステップは、複数のモデル候補を、モデル候補のスケーリングに用いられた寸法単位候補が小さい順に重ねて表示部に表示させる、構成が用いられてもよい。
【０１５６】
また、寸法単位設定方法は、複数のモデル候補に判定条件を満たすモデル候補が含まれていない場合、警告を示す警告情報を出力する警告ステップを有する、構成が用いられてもよい。
【０１５７】
また、寸法単位設定方法では、表示ステップは、モデル候補と撮像画像とを重なり合わせることなく表示部に表示させる、構成が用いられてもよい。換言すると、寸法単位設定方法では、表示ステップは、モデル候補と撮像画像とを離間させて表示部に表示させる、構成が用いられてもよい。
【０１５８】
また、実施形態に係る情報処理装置は、物体の形状を示す形状データの入力を受け付ける受付部と、物体を含む領域を撮像した撮像画像を取得する取得部と、形状データと撮像画像に基づいて、基準寸法単位を設定する設定部と、を備える。これにより、情報処理装置は、基準寸法単位として誤った寸法単位が設定されてしまうことを抑制することができる。ここで、情報処理装置は、上記において説明した例では、情報処理装置４０である。受付部は、上記において説明した例では、受付部４６１である。また、取得部は、上記において説明した例では、取得部４６３である。また、設定部は、上記において説明した例では、設定部４６９である。
【０１５９】
また、実施形態に係るロボットシステムは、ロボットと、ロボットを制御するロボット制御装置と、ロボット制御装置からの要求に応じて画像処理を行う情報処理装置とを備えるロボットシステムであって、情報処理装置は、物体の形状を示す形状データの入力を受け付ける受付部と、物体を含む領域を撮像した撮像画像を取得する取得部と、形状データと撮像画像に基づいて、基準寸法単位を設定する設定部と、設定部により設定された基準寸法単位に基づいて画像処理を行う画像処理部と、画像処理部による画像処理の結果をロボット制御装置に出力する出力部と、を備え、ロボット制御装置は、情報処理装置から取得した当該結果に基づいて、ロボットを制御する。これにより、ロボットシステムは、基準寸法単位として誤った寸法単位が設定されてしまうことを抑制することができる。ここで、ロボットシステムは、上記において説明した例では、ロボットシステム１である。また、ロボットは、上記において説明した例では、ロボット２０である。また、ロボット制御装置は、上記において説明した例では、ロボット制御装置３０である。また、情報処理装置は、上記において説明した例では、情報処理装置４０である。また、受付部は、上記において説明した例では、受付部４６１である。また、取得部は、上記において説明した例では、取得部４６３である。また、設定部は、上記において説明した例では、設定部４６９である。また、画像処理部は、上記において説明した例では、画像処理部４７１である。また、出力部は、上記において説明した例では、出力部４７７である。
【０１６０】
以上、この発明の実施形態を、図面を参照して詳述してきたが、具体的な構成はこの実施形態に限られるものではなく、この発明の要旨を逸脱しない限り、変更、置換、削除等されてもよい。
【０１６１】
また、以上に説明した装置における任意の構成部の機能を実現するためのプログラムを、コンピューター読み取り可能な記録媒体に記録し、そのプログラムをコンピューターシステムに読み込ませて実行するようにしてもよい。ここで、当該装置は、例えば、撮像部２５、ロボット２０、ロボット制御装置３０、情報処理装置４０等である。なお、ここでいう「コンピューターシステム」とは、ＯＳ（Operating  System）や周辺機器等のハードウェアを含むものとする。また、「コンピューター読み取り可能な記録媒体」とは、フレキシブルディスク、光磁気ディスク、ＲＯＭ、ＣＤ（Compact  Disk）−ＲＯＭ等の可搬媒体、コンピューターシステムに内蔵されるハードディスク等の記憶装置のことをいう。さらに「コンピューター読み取り可能な記録媒体」とは、インターネット等のネットワークや電話回線等の通信回線を介してプログラムが送信された場合のサーバーやクライアントとなるコンピューターシステム内部の揮発性メモリーのように、一定時間プログラムを保持しているものも含むものとする。
【０１６２】
また、上記のプログラムは、このプログラムを記憶装置等に格納したコンピューターシステムから、伝送媒体を介して、あるいは、伝送媒体中の伝送波により他のコンピューターシステムに伝送されてもよい。ここで、プログラムを伝送する「伝送媒体」は、インターネット等のネットワークや電話回線等の通信回線のように情報を伝送する機能を有する媒体のことをいう。
また、上記のプログラムは、前述した機能の一部を実現するためのものであってもよい。さらに、上記のプログラムは、前述した機能をコンピューターシステムにすでに記録されているプログラムとの組み合わせで実現できるもの、いわゆる差分ファイル又は差分プログラムであってもよい。
【符号の説明】
【０１６３】
１…ロボットシステム、２０…ロボット、２５…撮像部、３０…ロボット制御装置、４０…情報処理装置、４１…プロセッサー、４２…メモリー、４３…入力受付部、４４…通信部、４５…表示部、４６…制御部、４６１…受付部、４６３…取得部、４６５…生成部、４６７…判定部、４６９…設定部、４７１…画像処理部、４７３…表示制御部、４７５…撮像制御部、４７７…出力部、Ａ…可動部、Ａ１…第１アーム、Ａ２…第２アーム、Ｂ…基台、Ｏ…対象物体、ＲＣ…ロボット座標系、Ｓ…シャフト、ＳＤ…形状データ
【図１】
2020123049.tif 000003
【図２】
2020123049.tif 000004
【図３】
2020123049.tif 000005
【図４】
2020123049.tif 000006
【図５】
2020123049.tif 000007
【図６】
2020123049.tif 000008
【図７】
2020123049.tif 000009
【図８】
2020123049.tif 000010
【図９】
2020123049.tif 000011
【図１０】
2020123049.tif 000012
【図１１】
2020123049.tif 000013