(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2023183713
(43)【公開日】2023-12-28
(54)【発明の名称】寸法測定装置および寸法測定方法
(51)【国際特許分類】
G06V 20/00 20220101AFI20231221BHJP
G01B 11/25 20060101ALI20231221BHJP
H04N 23/60 20230101ALI20231221BHJP
【FI】
G06V20/00
G01B11/25 H
H04N5/232 290
【審査請求】未請求
【請求項の数】10
【出願形態】OL
(21)【出願番号】P 2022097369
(22)【出願日】2022-06-16
(71)【出願人】
【識別番号】000001432
【氏名又は名称】グローリー株式会社
(74)【代理人】
【識別番号】100117673
【弁理士】
【氏名又は名称】中島 了
(72)【発明者】
【氏名】中嶋 康博
(72)【発明者】
【氏名】柳内 さゆり
【テーマコード(参考)】
2F065
5C122
5L096
【Fターム(参考)】
2F065AA04
2F065AA53
2F065BB05
2F065DD12
2F065FF05
2F065GG02
2F065JJ03
2F065JJ05
2F065MM16
2F065QQ03
2F065QQ21
2F065QQ24
2F065QQ25
2F065QQ28
2F065QQ31
2F065RR09
2F065SS09
2F065UU05
5C122DA13
5C122EA06
5C122EA15
5C122EA20
5C122FA04
5C122FA06
5C122FH11
5C122FK35
5C122GG10
5C122HA48
5C122HA75
5C122HA88
5C122HB01
5C122HB05
5C122HB10
5L096AA06
5L096AA09
5L096BA03
5L096CA02
5L096CA17
5L096DA02
5L096FA66
5L096HA09
(57)【要約】
【課題】寸法測定に適さない撮影環境で寸法測定が実行されることを回避ないし抑制することが可能な技術を提供する。
【解決手段】寸法測定装置は、測定対象物の表面の3次元位置情報を取得するための3次元カメラと、載置台に載置された測定対象物の3次元位置情報に基づき測定対象物の寸法を測定する制御部とを備える。制御部は、測定対象物の寸法測定の前に、3次元カメラによる撮影画像に基づき、載置台の撮影環境が寸法測定に適した環境であるか否かを判定する(ステップS36,S38)。
【選択図】
図4
【特許請求の範囲】
【請求項1】
測定対象物の表面の3次元位置情報を取得するための3次元カメラと、
載置台に載置された前記測定対象物の前記3次元位置情報に基づき前記測定対象物の寸法を測定する制御部と、
を備え、
前記制御部は、前記測定対象物の寸法測定の前に、前記3次元カメラによる撮影画像に基づき、前記載置台の撮影環境が寸法測定に適した環境であるか否かを判定することを特徴とする寸法測定装置。
【請求項2】
前記制御部は、前記載置台の撮影環境が寸法測定に適さない環境であると判定される場合、前記載置台の撮影環境が寸法測定に適さない環境である旨を報知することを特徴とする、請求項1に記載の寸法測定装置。
【請求項3】
前記制御部は、前記載置台に前記測定対象物が存在しないことを条件として、前記載置台の撮影環境が寸法測定に適した環境であるか否かを判定することを特徴とする、請求項1または請求項2に記載の寸法測定装置。
【請求項4】
前記載置台上の物体の重量を測定する重量測定部、
をさらに備え、
前記制御部は、前記重量測定部による重量測定値がゼロであるときに撮影される撮影画像に基づいて、前記載置台の撮影環境が寸法測定に適した環境であるか否かを判定することを特徴とする、請求項1から請求項3のいずれかに記載の寸法測定装置。
【請求項5】
前記制御部は、
前記測定対象物が前記載置台に載置されようとしている状態であるか否かを判定し、
前記測定対象物が前記載置台に載置されようとしている状態である旨が判定されないことをも条件として、前記載置台の撮影環境が寸法測定に適した環境であるか否かを判定することを特徴とする、請求項3または請求項4に記載の寸法測定装置。
【請求項6】
前記制御部は、前記載置台の上および/または上方に物体が存在しない旨が判定されることを条件として、前記載置台の撮影環境が寸法測定に適した環境であるか否かを判定することを特徴とする、請求項1から請求項5のいずれかに記載の寸法測定装置。
【請求項7】
前記制御部は、前記3次元カメラによる撮影画像における位置測定不能画素の個数に基づき、前記載置台の撮影環境が寸法測定に適した環境であるか否かを判定することを特徴とする、請求項1から請求項6のいずれかに記載の寸法測定装置。
【請求項8】
前記制御部は、
互いに異なる強度のパターン光を前記載置台に向けて照射して得られる各撮影画像と当該各撮影画像におけるパターン光の明瞭度合いを示す指標値との関係を機械学習した学習モデルを利用して、前記測定対象物の寸法測定の前に撮影された前記3次元カメラによる撮影画像に対応する前記指標値を求め、
当該指標値に基づき、前記載置台の撮影環境が寸法測定に適した環境であるか否かを判定することを特徴とする、請求項1から請求項7のいずれかに記載の寸法測定装置。
【請求項9】
前記制御部は、前記載置台の撮影環境に関するチェック処理を実行し、
前記チェック処理は、
前記載置台の撮影環境に関する指標値を算出する算出処理と、
前記載置台の撮影環境が寸法測定に適した環境であるか否かを前記指標値に基づき判定する判定処理と、
前記判定処理を実行すべきか否かを前記判定処理の実行前に確認する確認処理と、
を有し、
前記制御部は、前記載置台の上および/または上方に物体が存在する旨が判定される場合、前記判定処理を実行すべきではないことを確認し、前記判定処理の実行を保留して前記チェック処理を中断することを特徴とする、請求項1から請求項8のいずれかに記載の寸法測定装置。
【請求項10】
a)載置台に載置された測定対象物の表面の3次元位置情報を3次元カメラによって取得し、前記3次元位置情報に基づき前記測定対象物の寸法を測定するステップと、
b)前記ステップa)における前記測定対象物の寸法測定の前において、前記3次元カメラによる撮影画像に基づき、前記載置台の撮影環境が寸法測定に適した環境であるか否かを判定するステップと、
を備えることを特徴とする寸法測定方法。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、測定対象物(荷物等)の寸法を測定する寸法測定装置およびそれに関連する技術に関する。
【背景技術】
【0002】
測定対象物(荷物等)の寸法を測定する寸法測定技術が存在する。たとえば、特許文献1には、3次元カメラ(距離画像カメラ)の情報を用いて、載置面に載置された荷物の寸法を測定する寸法測定装置が記載されている。
【先行技術文献】
【特許文献】
【0003】
【発明の概要】
【発明が解決しようとする課題】
【0004】
ところで、3次元カメラ(ステレオ視方式等)による3次元位置測定技術は、外光(蛍光灯および/または太陽光等)の影響を受け易い。そのため、その光環境等に依っては寸法測定が正確に行われないことがある。
【0005】
たとえば、太陽光あるいは蛍光灯の光が寸法測定装置の載置面に到達すると、当該載置面での反射等によって画素の白飛び等が発生し、その結果、3次元位置を測定できない画素(位置測定不能画素)が発生することがある。また、当該位置測定不能画素の近傍において物体が実際には存在しない位置の画素であるにもかかわらず、当該画素に対応する3次元位置として、載置台から或る程度の高さを有する位置(大きな誤差を含む位置)が算出されることもある。
【0006】
このように不適切な光環境(寸法測定に適さない撮影環境)において寸法測定が実行されると、物体の寸法精度が低下するなどの問題が発生する。
【0007】
それ故、寸法測定装置を設置する際には良好な撮影環境(光環境)を整えることが好ましい。
【0008】
また、寸法測定装置の最初の設置時には良好な撮影環境が得られていたとしても、時間の経過に伴って光環境が変化(悪化)することもある。たとえば、時刻、季節、天候、カーテン開閉状態の相違、および/または蛍光灯の点灯状態(点灯/消灯)等に起因して、装置設置時とは異なる光環境へと変化していることがある。あるいは、寸法測定装置の移動(設置場所の変更)に伴って、屋内照明(蛍光灯等)との相対位置が変化し、最初の装置設置時とは異なる光環境へと変化していること(光環境が悪化すること)がある。より詳細には、たとえば、寸法測定装置が蛍光灯の真下等に移動することによって、蛍光灯からの光のうち載置面で反射した反射光(正反射光等)がカメラに入射する状態が生じることがある。
【0009】
このように、寸法測定装置の設置時点から時間が経過した後に、寸法測定に適さない撮影環境(寸法精度が低下した環境等)で寸法測定が実行されることも生じ得る。
【0010】
この場合、装置設置時点から時間が経過した後における寸法測定においてその測定精度が低下したことは、直ちには判明しないことも多い。また、寸法測定精度が低下したことが何らかの契機で判明した場合、その原因が光環境の変化であると判断されると、事後的に光環境を再調整すること等が行われ得る。ただし、このような事後的な再調整処理が行われる場合には、事後的な再調整処理までに得られた寸法測定結果が誤っていることに気づかないまま当該寸法測定結果が利用されてしまうこと等が生じ得る。
【0011】
そこで、本発明は、寸法測定に適さない撮影環境で寸法測定が実行されることを回避ないし抑制することが可能な技術を提供することを課題とする。
【課題を解決するための手段】
【0012】
上記課題を解決すべく、本発明に係る寸法測定装置は、測定対象物の表面の3次元位置情報を取得するための3次元カメラと、載置台に載置された前記測定対象物の前記3次元位置情報に基づき前記測定対象物の寸法を測定する制御部と、を備え、前記制御部は、前記測定対象物の寸法測定の前に、前記3次元カメラによる撮影画像に基づき、前記載置台の撮影環境が寸法測定に適した環境であるか否かを判定することを特徴とする。
【0013】
前記制御部は、前記載置台の撮影環境が寸法測定に適さない環境であると判定される場合、前記載置台の撮影環境が寸法測定に適さない環境である旨を報知してもよい。
【0014】
前記制御部は、前記載置台に前記測定対象物が存在しないことを条件として、前記載置台の撮影環境が寸法測定に適した環境であるか否かを判定してもよい。
【0015】
前記寸法測定装置は、前記載置台上の物体の重量を測定する重量測定部、をさらに備え、前記制御部は、前記重量測定部による重量測定値がゼロであるときに撮影される撮影画像に基づいて、前記載置台の撮影環境が寸法測定に適した環境であるか否かを判定してもよい。
【0016】
前記制御部は、前記測定対象物が前記載置台に載置されようとしている状態であるか否かを判定し、前記測定対象物が前記載置台に載置されようとしている状態である旨が判定されないことをも条件として、前記載置台の撮影環境が寸法測定に適した環境であるか否かを判定してもよい。
【0017】
前記制御部は、前記載置台の上および/または上方に物体が存在しない旨が判定されることを条件として、前記載置台の撮影環境が寸法測定に適した環境であるか否かを判定してもよい。
【0018】
前記制御部は、前記3次元カメラによる撮影画像における位置測定不能画素の個数に基づき、前記載置台の撮影環境が寸法測定に適した環境であるか否かを判定してもよい。
【0019】
前記制御部は、互いに異なる強度のパターン光を前記載置台に向けて照射して得られる各撮影画像と当該各撮影画像におけるパターン光の明瞭度合いを示す指標値との関係を機械学習した学習モデルを利用して、前記測定対象物の寸法測定の前に撮影された前記3次元カメラによる撮影画像に対応する前記指標値を求め、当該指標値に基づき、前記載置台の撮影環境が寸法測定に適した環境であるか否かを判定してもよい。
【0020】
前記制御部は、前記載置台の撮影環境に関するチェック処理を実行し、前記チェック処理は、前記載置台の撮影環境に関する指標値を算出する算出処理と、前記載置台の撮影環境が寸法測定に適した環境であるか否かを前記指標値に基づき判定する判定処理と、前記判定処理を実行すべきか否かを前記判定処理の実行前に確認する確認処理と、を有し、前記制御部は、前記載置台の上および/または上方に物体が存在する旨が判定される場合、前記判定処理を実行すべきではないことを確認し、前記判定処理の実行を保留して前記チェック処理を中断してもよい。
【0021】
上記課題を解決すべく、本発明に係る寸法測定方法は、a)載置台に載置された測定対象物の表面の3次元位置情報を3次元カメラによって取得し、前記3次元位置情報に基づき前記測定対象物の寸法を測定するステップと、b)前記ステップa)における前記測定対象物の寸法測定の前において、前記3次元カメラによる撮影画像に基づき、前記載置台の撮影環境が寸法測定に適した環境であるか否かを判定するステップと、を備えることを特徴とする。
【発明の効果】
【0022】
本発明によれば、載置台の撮影環境が寸法測定に適した環境であるか否かが測定対象物の寸法測定の前に判定されるので、寸法測定に適さない環境で寸法測定が実行されることを回避ないし抑制することが可能である。
【図面の簡単な説明】
【0023】
【
図2】寸法測定装置の機能ブロックを示す図である。
【
図3】寸法測定前に定期的に実行される光環境チェック処理を示すフローチャートである。
【
図4】
図3の一部の処理を詳細に示すフローチャートである。
【
図5】寸法測定処理を含む処理を示すフローチャートである。
【
図6】載置台を被写体に含む撮影画像等を示す図である。
【
図7】白飛び画素(距離画像およびカラー画像における黒色画素)およびその周辺等を示す図である。
【
図8】載置台に荷物が載置されている状況を示す図である。
【
図10】
図3の一部の処理(第2実施形態)を詳細に示すフローチャートである。
【
図11】学習モデルの学習段階の処理を示すフローチャートである。
【
図13】学習モデルに入力される撮影画像を示す図である。
【
図14】学習モデルの学習に利用される教師データ群を示す図である。
【
図15】
図3の一部の処理(第3実施形態)を詳細に示すフローチャートである。
【発明を実施するための形態】
【0024】
以下、本発明の実施形態を図面に基づいて説明する。
【0025】
<1.第1実施形態>
<1-1.装置概要>
図1は、寸法測定装置10(詳細にはその一部)を示す概略外観図であり、
図2は寸法測定装置10の機能ブロックを示す図である。寸法測定装置10は、測定対象物(荷物等)80の表面の3次元位置情報等に基づき、測定対象物80の寸法を算出(測定)する装置である。寸法測定装置10は、3次元寸法測定装置あるいは3次元測定装置とも称される。
【0026】
図1に示されるように、寸法測定装置10は、測定対象物80を保持する保持部50と、当該保持部50に保持された測定対象物80の表面の3次元位置情報を取得するための3次元カメラ20とを備える。保持部50(詳細には透明部材51等)は、測定対象物80を載置する載置台(あるいは載置部)とも称される。
【0027】
また、寸法測定装置10は、3次元カメラ20を用いて取得された3次元位置情報等に基づく寸法算出処理等を実行する寸法算出装置30(
図2参照)をも備える。寸法算出装置30は、3次元位置情報に基づき測定対象物80の寸法を算出する。さらに、寸法測定装置10は、重量計(重量測定部)40を透明部材51(載置台)の下側に備えている(
図1参照)。寸法測定装置10は、重量計40をも用いることによって、測定対象物80の寸法のみならず、保持部50に保持された測定対象物80(載置台に載置された測定対象物80)の重量をも測定することが可能である。
【0028】
寸法測定装置10は、たとえば、宅配センターあるいはコンビニエンスストア等に配置され、顧客により持ち込まれた配送対象物等(測定対象物80)の寸法および重量等を測定する作業等に利用される。測定対象物80としては、直方体形状を有する梱包物(ダンボール箱等)、あるいは直方体形状以外の立体形状を有する梱包物などが例示される。
【0029】
図1に示されるように、保持部50は、板状の透明部材51を備えて構成される。透明部材51は、たとえば、透明のアクリル樹脂で形成された板状部材(端的に言えば、透明アクリル板)である。透明部材51は、所定値(たとえば、1cm~数cm)以上の厚みを有する。透明部材51の上面(平面)51aには測定対象物80が載置される。当該上面51aは、測定対象物80の載置面(載置平面)であるとも表現される。測定対象物80は、透明部材51の上面51a(水平面)に載置されることによって、保持部50に保持される。測定対象物80の高さHは、載置面51aから測定対象物80の最上部(上面等)までの大きさ(高さ)等として測定される。
【0030】
3次元カメラ20は、保持部50付近を上方から見た画像(撮影画像)を撮影(取得)することが可能である。3次元カメラ20の撮影エリアは、保持部50(載置台)の全部(または一部)を含む。特に、3次元カメラ20は、測定対象物80が保持部50に保持されている状態(たとえば、透明部材51の上面(載置面)51aに載置されている状態)において、当該測定対象物80を上方から見た撮影画像を撮影することが可能である。具体的には、3次元カメラ20は、測定対象物80の上面よりも更に上方に離間した位置において鉛直下向きに固定されている。3次元カメラ20は、カメラ固定部材27,28によって固定されている。カメラ固定部材27は、床面に固定され鉛直方向に伸延する支柱部材であり、カメラ固定部材28は、支柱部材27の最上部付近から測定対象物80の上方位置に向けて水平方向に伸延する梁(はり)部材である。3次元カメラ20は、カメラ固定部材28の先端部付近(且つ測定対象物80の上方且つ上面視中央付近)において鉛直下向きに固定されている。
【0031】
ここでは、3次元カメラ20として、ステレオ視方式の3次元カメラ(ステレオカメラとも称する)を例示する。この3次元カメラ20は、詳細には、赤外光(赤外線)照射を伴うステレオ視方式の3次元カメラ(ステレオカメラ)である。3次元カメラ20は、深度情報(距離情報)付き撮影画像を取得する。詳細には、この3次元カメラ(ステレオカメラ)20は、その赤外光照射部(赤外線投射器)から赤外光(より詳細には、光パターン)を測定対象物80に照射し、当該測定対象物80からの反射光(赤外光)を2つの赤外線画像センサで受光して2枚の赤外光画像(撮影画像)を撮像する。そして、当該3次元カメラは、当該2枚の赤外線画像センサの視差を利用して、一の赤外線画像(撮影画像)の各画素の深度情報(深度方向(カメラ光軸方向)の距離情報)を取得する。
【0032】
深度情報(距離情報)の算出処理は、ここでは、3次元カメラ20内に組み込まれたコントローラ等によって実行される。当該コントローラは、コントローラ31(後述)等と同様のハードウエア構成(CPU等)を備える。
【0033】
このようにして、3次元カメラ20は、被写体物体(測定対象物80である荷物等)の撮影画像(赤外光画像)を撮像するとともに、当該撮影画像内の各画素の深度情報(距離情報)を取得する。なお、撮影画像内の各画素の深度情報は、撮影画像内の各画素に対応する被写体物体までの距離(3次元カメラ20からの距離)の情報であって当該撮影画像に垂直な方向における距離の情報である。換言すれば、当該深度情報は、撮影画像平面の法線方向(カメラ光軸方向)における距離情報である。
【0034】
また、この3次元カメラ20は、画像センサとして、2つの赤外線画像センサのみならず1つのRGBカラー画像センサをも備えており、2枚の赤外光画像に加えて、可視光画像(カラー画像等)をも撮像する。可視光画像は、たとえば一の赤外線画像の撮影範囲に相当する範囲を撮影した画像である。可視光画像の各画素は当該一の赤外線画像の各画素に対応づけられ、可視光画像の各画素の深度情報もが取得される。なお、可視光画像として、カラー画像ではなく、グレースケール画像等が撮像されてもよい。
【0035】
なお、ここでは、3次元カメラ20として、赤外光(測定光)を測定対象物に照射して赤外線画像センサで取得された2つの赤外光画像を用いるステレオ視方式の3次元カメラを例示するが、これに限定されない。たとえば、3次元カメラ20は、測定光として可視光を用いるステレオ視方式の3次元カメラであってもよい。詳細には、当該3次元カメラは、測定対象物にて反射された可視光(自然光の反射光、あるいは白色光源等からの照射光の反射光)による光像を2つのRGBカラー画像センサでそれぞれ撮像した2つのカラー画像(可視光画像)を取得する。そして、当該2つのRGBカラー画像センサの視差を利用して、一の可視光画像(撮影画像)の各画素の深度情報(距離情報)が取得される。3次元カメラ20は、このような可視光画像を用いるステレオ視方式の3次元カメラであってもよい。
【0036】
3次元カメラ20と寸法算出装置30とは有線接続されており、3次元カメラ20で取得された情報(撮影画像情報および深度情報等)は、所定の接続ケーブルを介して3次元カメラ20から寸法算出装置30に送信される。なお、これに限定されず、3次元カメラ20と寸法算出装置30とは無線接続されてもよい。
【0037】
図2に示されるように、寸法算出装置30は、コントローラ(制御部とも称する)31と記憶部32と操作部35とを備える。
【0038】
コントローラ31は、寸法算出装置30に内蔵される装置であり、3次元カメラ20、重量計40、および寸法算出装置30の動作を制御する装置である。
【0039】
コントローラ31は、1又は複数のハードウェアプロセッサ(例えば、CPU(Central Processing Unit)およびGPU(Graphics Processing Unit))等を備えるコンピュータシステムとして構成される。コントローラ31は、CPU等において、記憶部(ROMおよび/またはハードディスクなどの不揮発性記憶部)32内に格納されている所定のソフトウエアプログラム(以下、単にプログラムとも称する)を実行することによって、各種の処理を実現する。なお、当該プログラム(詳細にはプログラムモジュール群)は、USBメモリなどの可搬性の記録媒体に記録され、当該記録媒体から読み出されて寸法算出装置30にインストールされるようにしてもよい。あるいは、当該プログラムは、通信ネットワーク等を経由してダウンロードされて寸法算出装置30にインストールされるようにしてもよい。
【0040】
コントローラ31は、測定対象物80に関する撮影画像情報および深度情報を3次元カメラ20から取得する。また、コントローラ31は、撮影画像情報および深度情報に基づき、測定対象物80の表面に関する3次元データ(3次元点群データ)(換言すれば、測定対象物80の表面のポイントクラウド(点群)に関する3次元位置情報)を生成(取得)する。そして、コントローラ31は、当該3次元位置情報に基づき、測定対象物80の寸法(幅W、奥行きD、高さH)を算出(測定)する。
【0041】
測定対象物80の表面の各点(各部分)の3次元位置情報(実空間内での3次元位置情報)は、座標系Σ2で表現された情報として取得される。具体的には、コントローラ31は、カメラ座標系Σ1での位置情報(撮影画像内での平面位置および撮影画像の法線方向における奥行き位置)を、作業空間(たとえば透明部材51の上面51a)に対して固定された座標系Σ2での3次元位置情報へと変換する。カメラ座標系Σ1は、たとえば、撮影画像平面に平行な直交2軸と当該撮影画像平面に垂直な方向に伸びる1軸との直交3軸を基準とする3次元直交座標系である。また、変換後の座標系Σ2は、たとえば、透明部材51の上面51aに平行な直交2軸(X軸およびY軸)と当該直交2軸に垂直な方向(高さ方向)に伸びる1軸(Z軸)との直交3軸を基準とする3次元直交座標系である。
図1においては、変換後の座標系Σ2の一例として、透明部材51の上面51aに固定されたXYZ直交座標系が示されている。当該座標系Σ2のZ座標値は、当該上面51a(測定対象物80の載置面)からの高さに相当する。
【0042】
また、コントローラ31は、重量計40によって測定された測定対象物80の重量を取得する。さらに、コントローラ31は、測定対象物80(配送対象物)を配送する際の配送料金等を算出する。
【0043】
記憶部32は、ハードディスクドライブ(HDD)あるいはソリッドステートドライブ(SSD)等の記憶装置で構成される。記憶部32は、データベース33等を有している。データベース33には、配送サービスの種類、各配送サービスにおける配送対象物のサイズ区分、および当該サイズ区分に応じた料金等が登録されている。
【0044】
操作部35は、寸法算出装置30に対する操作入力を受け付ける操作入力部35aと、各種情報の表示出力を行う表示部35bとを備えている。たとえば、操作入力部35a(受付部とも称される)は、配送サービスの種類等の情報の入力を受け付ける。また、表示部35bは、配送対象物の寸法と重量とに関する測定結果、ならびに当該測定結果に基づいて算出された配送料金等を表示する。操作入力部35aとしてはマウス、キーボード等が用いられ、表示部35bとしてはディスプレイ(液晶ディスプレイ等)が用いられる。また、操作入力部35aの一部としても機能し且つ表示部35bの一部としても機能するタッチパネルが設けられてもよい。
【0045】
なお、寸法算出装置30は、撮影画像等に基づく処理を実行する装置であることから、画像処理装置であるとも表現される。
【0046】
<1-2.処理概略>
<
図5の処理と
図3の処理との関係>
上述したように、この実施形態では、3次元カメラ20による撮影画像に基づき、測定対象物の寸法測定が実行される。
図5は、このような寸法測定処理(ステップS105)を含む処理を示すフローチャートである。ただし、
図5(ステップS100)の処理においては、寸法測定を実行すべき旨が決定されない場合(寸法測定を実行するための所定条件が充足されない場合)(ステップS103でNo)には、寸法測定の実行は保留される(寸法測定は実行されない)。寸法測定を実行すべき旨が決定される場合(当該所定条件が充足される場合)(ステップS103でYes)に、寸法測定処理(ステップS105)が開始(実行)される。
図5の詳細については後に説明する。なお、当該所定条件の成否は、次述する光環境チェック処理P1(
図3)の処理内容(ステップS36,S38(
図4))等に基づいて判定される。
【0047】
この実施形態では、測定対象物の寸法測定(ステップS105(
図5))の前に、載置台(保持部50)における撮影環境(詳細には光環境)に関するチェック処理P1(
図3参照)が定期的(たとえば1分ごと)に実行される。
図3は、(実質的に)寸法測定前に定期的に実行されるチェック処理P1(光環境チェック処理とも称する)を示すフローチャートである。光環境チェック処理P1において、載置台における撮影環境(詳細には、その光環境(光学的環境))が寸法測定に適した環境(適正環境)であるか否かが判定される(ステップS36,S38(
図4参照))。ここにおいて、載置台における撮影環境が寸法測定に適している場合、当該撮影環境は「適正環境(あるいは適正光環境)」等とも称される。また、当該撮影環境が寸法測定に適している状態は、「光環境適正状態」(光環境良好状態)等とも称される。
【0048】
より詳細には、
図3の処理(ステップS10)と
図5の処理(ステップS100)との両処理がコントローラ31においてそれぞれ別のスレッドで実行されることによって、当該両処理が並列的に実行される。このような並列処理において、載置台の撮影環境に関する光環境チェック処理P1(
図3)は、
図5のステップS105における寸法測定処理実行の前に1回あるいは数回以上(繰り返し)実行される。ひいては、測定対象物の寸法測定の前に、3次元カメラによる撮影画像に基づき、載置台の撮影環境が寸法測定に適した環境であるか否かが判定される。
【0049】
<反射光に関する光環境チェック処理>
第1実施形態では、光環境チェック処理P1として、天井等に設置された屋内照明(蛍光灯等)からの光(あるいは太陽光)のうち載置面(載置台表面(ひょうめん))で反射された反射光(正反射光等)による影響等をチェックする処理を例示する。詳細には、反射光に関する光環境異常検知処理(ステップS16)等が実行される。
【0050】
図6は、載置台を被写体に含む撮影画像(詳細にはその一部(載置台付近))等を示す図である。
図6の上段には、3次元カメラ20で撮影された赤外光画像201(詳細には、ステレオカメラで撮影された2枚の赤外光画像のうちの一方(1枚)の赤外光画像)が示されている。また、
図6の中段には、2枚の赤外光画像に基づいて生成された距離画像202(一方の赤外光画像に対応する距離画像)が示されており、
図6の下段には、当該一方の赤外光画像に対応するカラー画像203が示されている。なお、距離画像202においては、原則として、距離の大小が各画素の濃淡で(カメラに近くなるにつれて濃く)表現されている(ただし、次述するように黒色部分は例外である)。
【0051】
図6の上段に示されるように、蛍光灯が寸法測定装置10の装置の上方に存在する場合等においては、蛍光灯からの光のうち載置面で反射された反射光(正反射光)が3次元カメラ20に入射してしまうことがある。
図6の上段の赤外光画像201では、画像内中央上寄りの(大まかに)左右2カ所等において、白い画素(高輝度画素)の集合体311,312が存在する。画像内における当該集合体(画素群)311,312の画素は、(載置面からの)強い反射光に対応する部分の画素であり、いわゆる「白飛び」が発生している画素である。
【0052】
このような画素(白飛び画素)は、ステレオ視において他方の画像内の画素との対応付けが困難になる結果、距離測定(当該画素に対応する物体までの3次元空間内での奥行き距離(奥行き方向の位置)の測定)ができなくなる画素である。このような画素は、対応する3次元位置を測定できない画素であることから、「位置測定不能画素」(あるいは単に測定不能画素)とも称される。位置測定不能画素が多数(一定数以上)存在する場合、載置台の撮影環境は寸法測定に適していない。
【0053】
なお、
図6の中段の距離画像202においては、このような位置測定不能画素が(例外的に)「黒色」の画素として出力されて示されている。たとえば、位置測定不能画素の集合体311,312が「黒色」で出力されて示されている。
図6の下段のカラー画像203においても同様である。
【0054】
また、白飛び画素(距離画像202等における「黒色画素」)が発生する場合、当該白飛び画素の周辺領域に関して、当該周辺領域内の画素に対応する奥行き距離の測定値が不安定になることがある。
【0055】
図7は、このような状況を説明する図である。
図7においては、
図6の下段と同じカラー画像203が示されている。
【0056】
図7では、仮に荷物が載置台の一部領域(具体的にはカラー画像203内の矩形領域351)に置かれた状況を想定する。この状況では、カラー画像203において、上述のような位置測定不能画素の集合体(黒色画素群)311の近傍に若干白い領域(高輝度領域)352が存在する。このような領域352内の画素位置に対応する奥行き距離に関しては、(集合体311内の画素位置の奥行き距離のような)測定不能状態にまでは至らないとしても、その測定値が不安定になることがある。
【0057】
たとえば、領域352の奥行き位置(実空間内での高さ位置)は、(載置面と同程度の高さでは無く)載置面よりも一定程度カメラ側(載置台よりも若干高い位置)であると算出されることがある。その場合、矩形領域351に載置された荷物のサイズ測定において、荷物が矩形領域351と領域352との双方を包囲する大きさを有すると判定される(領域352が荷物領域に組み込まれて判定される)と、荷物の奥行きDおよび/または幅Wの測定値が不正確になる。また、荷物の高さHに関しても、領域352における点群データ(各点の高さ等)の不安定な測定値の影響によって不正確な測定値が算出される。
【0058】
このような観点からも、白飛び画素(距離画像等における「黒色画素」)が多数発生するような状態は、「光環境適正状態」とは言えない。換言すれば、そのような撮影環境は、寸法測定に適した環境(適正環境)ではない。
【0059】
そこで、この実施形態では、3次元カメラ20による撮影画像における位置測定不能画素の個数N5に基づき、載置台の撮影環境が「適正環境」(寸法測定に適した環境)であるか否かが判定される。換言すれば、位置測定不能画素の個数N5が、環境判定のための指標値として用いられる。詳細には、個数N5の増大につれて撮影環境が悪化していくと判定される。
【0060】
当該指標値(個数N5)が所定程度を超える場合(位置測定不能画素が一定数(あるいは一定割合)より多く存在する場合)には、原則として、載置台の撮影環境は「適正環境」ではない旨をコントローラ31が判定する。逆に言えば、当該指標値が所定程度を超えない場合には、原則として、載置台の撮影環境は「適正環境」である旨をコントローラ31が判定する。詳細には、後述するように、
図4のステップS31,S32において、当該位置測定不能画素の個数N5が所定値TH5以下である場合、載置台の撮影環境は「適正環境」である旨をコントローラ31が判定する(ステップS38)。所定値(閾値)TH5は、たとえば、画像全体の所定割合(数%程度)の画素数(たとえば、8000画素)に設定されればよい。
【0061】
なお、ここでは、個数N5は、距離画像202(赤外光画像201に基づく画像)を用いて求められる。ただし、これに限定されず、カラー画像203を用いて個数N5が算出されてもよい。
【0062】
このような指標値に基づく撮影環境の判定処理等については後に再び説明する。
【0063】
<1-3.処理詳細>
<光環境チェック処理P1の概略>
以下では、まず、光環境チェック処理P1の概略等について
図3等を参照しつつ説明する。
【0064】
光環境チェック処理P1(
図3)は、載置台における撮影環境に関するチェック処理P1である。光環境チェック処理P1は、載置台の撮影環境に関する(評価用の)指標値を算出する算出処理(ステップS31(
図4))と、載置台の撮影環境が「適正環境」であるか否かを指標値に基づき判定(決定)する判定処理(ステップS36,S38)とを含む。さらに、光環境チェック処理P1は、当該判定処理(決定処理とも称する)を実行すべきか否かを当該判定処理の実行前に確認する確認処理(ステップS11,S13,S14(
図3),S33(
図4))をも含む。当該確認処理において、載置台の上および/または上方に物体が存在する旨が判定される場合、当該判定処理を実行すべきではないことが確認(判定)され、当該判定処理の実行が保留され(実行されず)光環境チェック処理P1が中断する。端的に言えば、載置台の撮影環境が「適正環境」であるか否かを指標値に基づき判定する判定処理は、載置台の全部または一部が荷物で覆われてしまうような状態にて実行されるべきではない、と判断される。
【0065】
光環境チェック処理P1(
図3および
図4参照)は、上述のように定期的(たとえば1分ごと)に実行される。以下、
図3および
図4を参照しつつ、光環境チェック処理P1について説明する。
【0066】
<光環境チェック処理P1の前処理(S11~S15等)>
まず、ステップS16に先立って前処理(特にステップS11,S13,S14等)が実行される。
【0067】
図3では、載置台の上と上方とのいずれにも物体が存在しない旨が重量計40による重量測定値Vおよび3次元カメラ20による撮影画像(光環境チェック処理P1の処理期間内に撮影される画像)等に基づいて判定されることを条件として、ステップS16に進む。そして、ステップS16において、載置台の撮影環境が「適正環境」であるか否かが判定される(ステップS36,S38(
図4))。これにより、載置台の撮影環境が「適正環境」であるか否かが、載置台付近に物体(荷物等)が存在しない状態で撮影された画像等に基づいて判断される。すなわち、ステップS16の処理(特にステップS36,S38の判定処理)を適切な条件下で実行することが可能である。
【0068】
詳細には、載置台の上に物体が存在しない(載置台に測定対象物が存在しない)ことを条件として、載置台の撮影環境が「適正環境」であるか否かが判定される。換言すれば、荷物(測定対象物)が載置台に載置されていない状態において、載置台の撮影環境が「適正環境」であるか否かが判定される。
【0069】
ここでは、荷物(測定対象物)が載置台に載置されている状態であるか否か(換言すれば、載置台の上に物体が存在するか否か)は、重量計(重量測定部)40による重量測定値Vに基づいて判定される(ステップS11)。具体的には、重量計(重量測定部)40による重量測定値Vがゼロであるときには、荷物(測定対象物)が載置台に載置されていない状態であると判定され、ステップS11からステップS13に進む。一方、重量測定値Vがゼロでない(ゼロより大きい)ときには、荷物(測定対象物)が載置台に載置されている状態であると判定され、ステップS11からステップS12に進む。ステップS12においては、光環境チェック処理P1を中断する旨が決定され、ステップS19に進む。
【0070】
なお、本願において、重量測定値Vが「ゼロ」であるとは、重量測定値Vが厳密にゼロであることを要しない。測定対象物が載置台(重量計)に載置されていないと判断できる程度に十分に小さな重量測定値V(たとえば、数グラム~数十グラム程度)も、「ゼロ」であると見做され得る。謂わば、重量測定値Vが実質的にゼロであればよい。たとえば、重量測定値Vが「0.06kg」の場合、重量測定値Vはゼロであると見做されてもよい。
【0071】
また、厳密には、「重量」と「質量」との両者は本来は互いに異なる概念である。しかしながら、質量と重量とは重力加速度(定数)を乗じること(あるいは重力加速度で除すること)によって可換(変換可能)である。そこで、本願においては、「重量」(を測定すること)と「質量」(を測定すること)との両者は等価であると見做す。また、重量の単位は、本来は「kgf(キログラム重)」等であるが、本願では簡易的に「kg」等で(「kgf」の「f」を省略して)表記する。
【0072】
また、ここでは、荷物(測定対象物)が載置台に載置されている状態であるか否かに加えて、荷物が載置台に載置されようとしている状態か否かもが判定される。換言すれば、載置台の上方に物体が存在するか否かもが判定される。詳細には、荷物(測定対象物)が載置台に既に載置されている状態のみならず、荷物が載置台に載置されようとしている状態も、載置台の撮影環境が「適正環境」であるか否かを判定する際の状態としては不適切であると判断される。そして、載置台に測定対象物が存在しないことに加えて、測定対象物が載置台に載置されようとしている状態でない旨が判定されることをも条件として、ステップS16に進み、載置台の撮影環境が「適正環境」であるか否かが判定される。
【0073】
具体的には、測定対象物が載置台に載置されようとしている状態であるか否かが3次元カメラ20による撮影画像に基づき判定される(ステップS13,S14)。より具体的には、差分画像に基づく物体検知処理(ステップS13)と点群データに基づく物体検知処理(ステップS14)とに基づいて、測定対象物が載置台に載置されようとしている状態であるか否かが判定される。より具体的には、重量計(重量測定部)40による重量測定値Vがゼロであるときに撮影される撮影画像に基づいて、測定対象物が載置台に載置されようとしている状態であるか否かが判定される。
【0074】
なお、その後、測定対象物が載置台に載置されようとしている状態である旨が判定されないことをも条件として、ステップS16に進み、載置台の撮影環境が「適正環境」であるか否かが判定される(ステップS36,S38(
図4))。より具体的には、重量計(重量測定部)40による重量測定値Vがゼロであるときに撮影された撮影画像(この実施形態では、ステップS13,S14で利用された撮影画像)に基づいて、載置台の撮影環境が「適正環境」であるか否かが判定される。
図4は、ステップS16の詳細な処理を示すフローチャートである。
【0075】
さて、ステップS13とステップS14とのうち、まずステップS13(
図3)において差分画像に基づく物体検知処理が実行される。
【0076】
具体的には、荷物が存在しない状態の載置台付近を予め撮影した撮影画像(事前画像)と、現時点で撮影された撮影画像(新規画像)との差分画像が生成される。この事前画像は、
図3の定期的処理が(最初に)開始される前(たとえば寸法測定装置の事前調整時等)に予め撮影された画像である。また、当該両画像(事前画像および新規画像)は、互いに同じ撮影エリアを撮影した画像である。ここでは、当該両画像として、いずれも赤外光画像201が利用される。なお、これに限定されず、カラー画像等が当該両画像として用いられてもよい。
【0077】
そして、当該差分画像において一定程度以上の画素値(差分値)を有する部分(事前画像と新規画像との相違部分)の画素数N1が一定値TH1(たとえば、TH1=1000)よりも大きいか否かが判定される。そして、画素数N1が一定値TH1以下である(N1≦TH1)場合、載置台の上方に荷物が存在しない旨が判定され、ステップS16に進む。一方、画素数N1が一定値TH1よりも大きい(N1>TH1)場合、載置台の上方に荷物が存在する可能性が高い旨が判定され、ステップS14に進む。
【0078】
ステップS14においては、さらに、点群データ(測定対象物80の表面に関する3次元点群データ)に基づく物体検知処理が実行される。当該物体検知処理は、距離画像202(赤外光画像201に基づく画像)に基づいて実行される。具体的には、距離画像202において、載置面よりも高い位置(たとえば載置面から下限値(4cm(センチメートル))以上の高さ)を有する画素群(領域)の構成画素の数N2が求められる。そして、個数N2が所定値(閾値)TH2(たとえば2000個)よりも大きい(N2>TH2)場合、載置台の上方に荷物が存在する旨が判定され、ステップS15に進む。ステップS15においては、光環境チェック処理P1を中断する旨が決定され、ステップS19に進む。一方、個数N2が所定値TH2以下である(N2≦TH2)場合、載置台の上方に荷物が存在しない旨が判定され、ステップS16に進む。
【0079】
ステップS12,S15を経由してステップS19に進む場合には、現在の状況は、光環境チェック処理P1を最後まで実行(完了)するに相応しい状況ではないと判定される。換言すれば、載置台の撮影環境が「適正状態」であるか否かを指標値に基づき判定する判定処理(ステップS36,S38等)を実行すべきでない旨が確認される。そして、当該判定処理の実行が保留され、光環境チェック処理P1が中断される。ステップS19では、待機処理が実行される。当該待機処理は、定期的に実行される光環境チェック処理P1の次の実行タイミング(たとえば1分弱後)の到来まで待機する処理である。
【0080】
一方、ステップS13,S14からステップS16へと進む場合には、基本的には、現在の状況は、光環境チェック処理を最後まで実行(完了)するに相応しい状況であると判定される。そして、ステップS16において、載置台の撮影環境が「適正状態」であるか否かを判定する判定処理(ステップS36,S38)を含む処理が、原則として実行される。なお、ステップS16では例外的処理(ステップS34でNoの場合)が実行されることもある。
【0081】
このように、ステップS13,S14の処理によって、載置台の上方に荷物が存在するか否か(換言すれば、測定対象物が載置台に載置されようとしている状態であるか否か)が3次元カメラ20による撮影画像に基づき判定される。なお、厳密には、測定対象物が載置台に載置されようとしている状態であるか否かは、測定対象物が載置台に向かって移動していること(移動体の移動向き)等をも含めて判定することが好ましい。しかしながら、上記のステップS13,S14(,S11)の処理によっても、測定対象物が載置台に載置されようとしている状態であるか否かを簡易的に判定(みなし判定)することが可能である。
【0082】
ここでは、ステップS13の処理(差分画像に基づく物体検知処理)とステップS14の処理(点群データに基づく物体検知処理)とが順次に且つこの順序で実行される。詳細には、比較的小さな処理負荷を有する処理(ステップS13の処理)が実行された後に、比較的大きな処理負荷を有するものの比較的正確に物体検知が可能な処理(ステップS14の処理)が実行される。これによれば、載置台の上方に荷物が存在しない旨が、先行するステップS13の処理で判定されるときには、ステップS14を経由することなくステップS16に進む。端的に言えば、ステップS14を経由するまでもなく、荷物が載置台に載置されようとしている状況ではない旨が判定され得る。換言すれば、ステップS13が先に実行されることによって、ステップS14の処理が行われるべき状況が絞り込まれている。したがって、(ステップS13を実行せずにステップS14を実行する場合に比べて、)ステップS14の処理の実行機会の低減により装置の処理負荷を軽減することが可能である。
【0083】
また、ここでは、ステップS11の処理がステップS13,S14の前に実行される。これによれば、重量測定値Vを用いた更に低負荷の判定処理(ステップS11)を先行させることによって、比較的高い処理負荷を有するステップS13,S14の処理を実行すべき機会を低減することが可能である。
【0084】
特に、ステップS13における事前画像は、荷物が存在しない状態の載置台付近を(
図3の処理が実行される前に)予め撮影した撮影画像である。当該事前画像は、寸法測定装置10を構成する所定物体(載置台等)を含む画像である。当該事前画像との差分画像に基づく物体検知処理(ステップS13)によれば、寸法測定装置10を構成する所定物体(載置台等)以外の物体(ユーザの手なども含み得る)が撮影エリア内に存在するか否かが判定される。
【0085】
同様に、点群データに基づく物体検知処理(ステップS14)(特に下限値以上の高さを有する物体検知処理)によれば、寸法測定装置10を構成する所定物体(載置台等)以外の物体(ユーザの手なども含み得る)が撮影エリア内に存在するか否かが判定される。
【0086】
なお、ここでは2種類の物体検知処理(ステップS13,S14の処理)が実行されているが、これに限定されない。ステップS13の処理(差分画像に基づく物体検知処理)とステップS14の処理(点群データに基づく物体検知処理)との一方のみが実行されてもよい。たとえば、両処理のうちステップS13の処理のみが実行されてもよい。あるいは逆に、両処理のうちステップS14の処理のみが実行されてもよい。換言すれば、ステップS14の処理のみによって、載置台の上方(および/または上)に物体が存在するか否か(換言すれば、測定対象物が載置台に載置されようとしている状態であるか否か)が判定されてもよい。
【0087】
また、上記では、ステップS14の処理にて画素数N2を求める際の高さの下限値が4cmである態様が主に例示されているが、これに限定されない。たとえば、当該下限値が更に小さな値(2cm(センチメートル)等)に設定され、より低い物体もが検知されてもよい。あるいは、逆に、当該下限値が更に大きな値(6cm等)に設定され、より高い物体のみが検知されてもよい。
【0088】
また、ここでは、ステップS11の処理と、ステップS13,S14の処理との双方の処理が実行されている。換言すれば、荷物が載置台に(既に)載置された状態であるか否かと、荷物が載置台に載置されようとしている状態であるか否かとの双方が個別に判定されている。
【0089】
しかしながら、本発明は、これに限定されず、ステップS11の処理は実行されなくてもよい。具体的には、ステップS13の処理とステップS14の処理との少なくとも一方の処理によって、載置台の上および/または上方に物体が存在するか否かが判定されてもよい。換言すれば、載置台に測定対象物が存在する(既に載置されている)か否かと、測定対象物が載置台に載置されようとしている状態であるか否かとの双方が纏めて判定されてもよい。
【0090】
たとえば、ステップS11,S13,S14のうち、ステップS11,S13が実行されず、ステップS14の判定処理のみが実行されてもよい。ステップS14の判定処理において、個数N2が閾値TH2以下である場合、載置台の上と上方とのいずれにも物体が存在しない旨が判定され、個数N2が閾値TH2よりも大きい場合、載置台の上と上方とのいずれかに物体が存在する旨が判定されればよい。なお、この場合、高さの下限値は、比較的小さな値(たとえば2cm(あるいは1cm))に設定されることが好ましい。
【0091】
あるいは逆に、ステップS11,S13,S14の処理のうちステップS11の処理のみが実行されてもよい(ステップS13,S14の処理が実行されなくてもよい)。換言すれば、荷物が載置台に(既に)載置された状態であるか否かのみが判定されてもよい。ただし、荷物が載置台に載置されようとしている状態であるか否かをも判定することによれば、指標値(N5)に基づく判定処理を実行すべきか否かを、更に適切に判定することが可能である。
【0092】
<ステップS16>
次にステップS16の処理について説明する。
【0093】
ステップS16では、光環境異常検知処理が実行される。以下、
図4等を参照しつつ、ステップS16の処理について説明する。
図4は、ステップS16(S16A)における処理を詳細に示すフローチャートである。この光環境異常検知処理は、光環境チェック処理P1において重要な役割を果たす。
【0094】
この第1実施形態では、光環境異常検知処理として、屋内照明等からの光のうち載置面で反射された反射光による影響等に起因する異常状態を検知する処理を例示する。
【0095】
この光環境異常検知処理においては、位置測定不能画素(
図6参照)が一定数(あるいは一定割合)以下である場合、載置台の撮影環境は寸法測定に適した環境(「適正環境」)である旨が判定される。
【0096】
具体的には、
図4に示されるように、ステップS31において、コントローラ31は、3次元カメラ20による撮影画像における位置測定不能画素の個数(画素数)N5(上述)を計数(算出)する。次のステップS32においては、位置測定不能画素の個数N5が閾値TH5以下であるか否かに応じた分岐処理が実行される。なお、ステップS31における計数処理は、ステップS13で取得された撮影画像と同じ撮影画像(詳細には、赤外光画像201に基づく距離画像202等)を対象にして実行されればよい。ステップS33における計数処理も同様である。
【0097】
個数N5が閾値TH5以下である(N5≦TH5)場合、ステップS32からステップS38に進み、撮影環境は「適正環境」(寸法測定に適した環境)である旨が判定される。その後、処理はステップS17(
図3)に進む。
【0098】
一方、個数N5が閾値TH5より大きい場合、撮影環境は「適正環境」ではない可能性が高いと判定され、ステップS32からステップS33に進む。換言すれば、位置測定不能画素が一定数(あるいは一定割合)より多く存在する場合、原則として、コントローラ31は、載置台の撮影環境が寸法測定に適した環境(「適正環境」)ではない旨を判定することを前提としつつ、ステップS33に進む。ステップS33の処理は、載置台の撮影環境が「適正環境」であるか否かを指標値に基づき判定する判定処理(指標値に基づく環境判定処理)を実行すべきか否かを、当該判定処理の実行前に確認する確認処理(の1つ)である。具体的には、ステップS33では、ステップS14(
図3)と同様に、点群データ(3次元位置データ)に基づく物体検知処理が実行される。
【0099】
以下、ステップS33,S34の処理について説明する。
【0100】
上記においては、載置面における(外光の)正反射光に起因して「位置測定不能画素」が発生することについて説明した。ただし、正反射光(白飛び等)以外の原因で「位置測定不能画素」が発生することもある。具体的には、物体(測定対象物等)が載置台の上あるいは上方に存在する場合、ステレオカメラの死角に起因する「位置測定不能画素」が発生することがある。
【0101】
図8は、載置台に荷物(測定対象物)が載置されている状況を示す図である。
図8の上段には、距離画像202が示されており、
図8の下段には、カラー画像203が示されている。
図8では、カメラ視野(ひいては撮影画像)における左右方向と
図8の左右方向とが一致している。なお、上述の
図6および
図7においては、
図8(本来の左右方向に合致した図)と比較して撮影画像等が反時計回りに90度回転して示されており、図の上下方向がカメラの左右方向に対応する。
図9(後述)においても同様である。
【0102】
たとえば、
図8では、直方体形状の荷物(測定対象物80)が載置台の中央位置(カメラ視野内の左右方向における中央位置)を跨ぐような状態で、当該荷物が載置台に載置されている。この場合、直方体形状の物体の左辺に隣接する部分(物体の左側面)は、2台のカメラのうち左側のカメラ(左カメラ)には写っているものの右側のカメラ(右カメラ)には写らない。すなわち、一方のカメラの死角領域361(楕円状破線の内側の黒色領域)が発生する。このような死角発生状態では、当該一方のカメラには写っている特定領域(死角領域)361内の各画素に関して、他方のカメラの撮影画像内の画素との対応づけがうまくいかない。その結果、当該特定領域361(詳細にはその各画素)に対応する3次元位置情報が不正確になり、当該特定領域361内の画素は、「位置測定不能画素」として判定される。
【0103】
このような死角に起因する位置測定不能画素が発生する場合、位置測定不能画素の個数N5は、載置面における正反射光に起因する「位置測定不能画素」以外の画素の個数をも含むことになる。また、死角に起因する位置測定不能画素の個数は、荷物の大きさ等に応じて大きく変化する。それ故、個数N5に基づく判定処理が不正確になる恐れがある。
【0104】
そこで、この実施形態では、「位置測定不能画素」の近傍領域において、載置台の上および/または上方に存在する物体を示す画素群が存在しないと判定されることを条件として、載置台の撮影環境が寸法測定に適した環境(適正環境)であるか否かが判定される。これにより、撮影環境(光環境)に起因する「位置測定不能画素」が主に発生している状態と、撮影環境以外の要因に起因する「位置測定不能画素」が主に発生している状態とを、良好に区別することが可能である。端的に言えば、撮影環境以外の要因を良好に排除した上で、載置台の撮影環境が「適正環境」であるか否かが判定され得る。
【0105】
具体的には、コントローラ31は、位置測定不能画素の集合体311を囲む外接矩形371(
図9参照)を求め、当該外接矩形371に対してさらに上下左右方向に所定画素ずつ(たとえば数十画素ずつ)拡張した拡張矩形領域372(位置測定不能画素群の近傍領域)を設定する。そして、コントローラ31は、拡張矩形領域372内にて載置台以外の物体が存在すると判定(推定)される画素の個数N4を計数(算出)する。なお、
図9は、
図6の下段および
図7と同様のカラー画像203を示す図である。ここでは、説明の都合上、
図9にてカラー画像203が示されているが、実際には距離画像202(赤外光画像201に基づく画像)において外接矩形371および拡張矩形領域372が設定されるとともに特定画素の個数N4が求められる。
【0106】
より具体的には、ステップS33(
図4)において、(実空間にて)載置面よりも高い(たとえば所定の下限値(たとえば2cm(センチメートル))以上の高さ(載置面からの高さ)を有する)画素群(領域)の構成画素の数N4が求められる。そして、個数N4が所定値(閾値)TH4(たとえば1000個)よりも大きいか否かに基づき、載置台の上と上方との少なくとも一方に物体が存在するか否かが判定される。なお、高さに関する下限値は、測定値の誤差を考慮しつつなるべく小さな値(たとえば2cmあるいは1cm)に設定されることが好ましい。
【0107】
個数N4が所定値(閾値)TH4(たとえば1000個)よりも大きい(N4>TH4)場合には、載置台の上と上方との少なくとも一方に物体が存在する旨が判定され(指標値に基づく環境判定処理を実行すべきでない旨が確認され)、ステップS34からステップS35に進む。ステップS35においては、光環境チェック処理P1を中断する旨が決定され、ステップS19(
図3)に進む。端的に言えば、現在の状況は、光環境チェック処理P1を最後まで実行(完了)するに相応しい状況ではないと判定される。換言すれば、載置台の撮影環境が「適正状態」であるか否かを判定する判定処理(ステップS36,S38等)を実行すべきではない状況であると判定される。そして、当該判定処理の実行が保留され、光環境チェック処理P1が中断される。
【0108】
一方、個数N4が所定値TH4以下である(N4≦TH4)場合、載置台の上と上方とのいずれにも物体が存在しない旨が判定され(指標値に基づく環境判定処理を実行すべき旨が確認され)、ステップS36に進む。ステップS36では、ステップS32での判定結果(ステップS32からステップS33へと進んだこと)に基づき、(原則通り)載置台の撮影環境は寸法測定に適した環境(「適正環境」)ではない旨を判定する。換言すれば、載置台の撮影環境は寸法測定に適していない環境(「不適環境」)である旨を判定する。なお、「不適環境」は、寸法精度が低下する環境であることから、寸法精度低下環境であるとも称される。また、載置台の撮影環境が不適環境である状態は、「光環境不適状態」とも称される。
【0109】
この不適環境は、外光の載置面での正反射光に主に起因する不適環境であることから、当該撮影環境の状態は、「反射光環境エラー」状態とも称される。あるいは、当該不適環境は、蛍光灯の光に主に起因する不適環境であることから、当該撮影環境の状態は、「蛍光灯光環境エラー」状態などとも称される。
【0110】
その後、処理はステップS36からステップS17(
図3)へと進む。
【0111】
なお、複数の集合体(位置測定不能画素の集合体)311,312,...が存在する場合には、当該複数の集合体のそれぞれについて上記と同様の処理(ステップS33,S34等)が施されればよい。より詳細には、たとえば、いずれかの集合体についての個数N4が所定値(閾値)TH4(たとえば1000個)よりも大きい場合には、光環境チェック処理P1が中断されればよい。また、いずれの集合体についての個数N4も所定値(閾値)TH4(たとえば1000個)以下である場合には、載置台の上と上方とのいずれにも物体が存在しない旨が判定され(指標値に基づく環境判定処理を実行すべき旨が確認され)、ステップS36に進めばよい。
【0112】
あるいは、当該複数の集合体のうち最も大きな集合体(又は所定値以上の画素数を有する集合体)についてのみ、上記の処理が実行されてもよい。
【0113】
ここにおいて、ステップS33,S34における判定処理も、載置台の上および/または上方に物体が存在するか否かを判定する処理の1つである。ただし、上述のステップS14では、画像全体を処理対象にして荷物領域が検出されるのに対して、ステップS33では、「位置測定不能画素」の近傍範囲(拡張矩形領域372)を処理対象にして荷物領域が検出される。ステップS33の処理によれば、「位置測定不能画素」の近傍範囲内に荷物が存在する状況が検出され得る。したがって、ステップS33,S34の処理によれば、「位置測定不能画素」が(正反射に起因するものではなく)物体の存在(詳細にはカメラの死角)に起因するものであり得る状況をより適切に排除した上で、指標値に基づく環境判定処理が実行される。より詳細には、「物体が撮影エリア内に存在しているものの当該物体が位置測定不能画素の発生には関与していない状況」までをも排除するのではなく、物体が位置測定不能画素の発生に関与している状況を、より適切に排除することが可能である。端的に言えば、撮影エリア内に物体が存在する状況を全て排除するのではなく、「位置測定不能画素」が物体の存在に起因して生じている状況(
図8参照)をより適切に排除することが可能である。
【0114】
なお、このような効果をより適切に得るため、ステップS14における閾値TH2および下限値を調整して、ステップS14からステップS15へと進み難くすること(ステップS14からステップS16(S33,S34)へ進み易くすること)が好ましい。あるいは、ステップS13,S14の処理は行われなくてもよい。
【0115】
このように、光環境チェック処理P1においては、載置台の撮影環境に関する(評価用の)指標値(位置測定不能画素数N5)を算出する算出処理が実行される(ステップS31(
図4))。また、光環境チェック処理P1のステップS16(特に、ステップS36,S38参照)では、載置台の撮影環境が「適正環境」であるか否かを当該指標値に基づき判定する環境判定処理が実行される。さらに、光環境チェック処理P1のステップS11~S14,S33,S34では、当該環境判定処理(ステップS36,S38)を実行すべきか否かを、当該判定処理の実行前に確認する確認処理が実行される。
【0116】
<ステップS17以降>
次に、光環境チェック処理P1におけるステップS17以降の処理について説明する。
【0117】
ステップS17では、現在実行中の光環境チェック処理P1よりも前の光環境チェック処理P1(前回以前の光環境チェック処理P1)における判定結果もが考慮されて分岐処理が実行される。具体的には、ステップS36の判定結果(「蛍光灯光環境エラー」)が過去(直近)も含めて所定回数以上(具体的には、たとえば、連続して3回以上)出されているか否かに応じた分岐処理が実行される。
【0118】
たとえば、(今回のエラー判定結果を含めて)連続して3回以上(3回目あるいは4回目等)のエラー判定(ステップS36の蛍光灯光環境エラー判定)がなされている場合、ステップS18に進む。ステップS18では、コントローラ31は、「蛍光灯光環境エラー」が発生している旨を最終的に判定するとともに、エラー画面を表示部35bに表示する(ステップS18)。当該エラー画面には、「蛍光灯光環境エラー」が発生している旨が文字および図形等にて示される。その後、処理はステップS19に進む。
【0119】
一方、「連続して3回以上のエラー判定」がなされていない場合、ステップS18には進まず(エラー画面の表示等を行わず)ステップS19に進む。たとえば、前回までは常に適正環境判定がなされており今回のエラー判定が初めてのエラー判定である場合(あるいは未だ2回目のエラー判定である場合)には、エラー画面を表示(報知)することなくステップS19に進む。あるいは、エラー判定が連続していない場合(適正環境判定も出されている場合等)にも、エラー画面を表示することなくステップS19に進む。
【0120】
このように、エラー報知実行の条件(「連続して3回以上のエラー判定」)が充足されている旨がステップS17にて判定される場合にのみ、ステップS18に進む。換言すれば、寸法測定実行の条件(「連続したエラー判定が3回未満」且つ「適正環境判定が1回以上」)が充足されている旨がステップS17にて判定される場合には、ステップS18には進まない(ステップS18には進まずにステップS19に進む)。
【0121】
ステップS19では、上述のような待機処理(光環境チェック処理P1の実行タイミングの到来待機処理)が実行される。その後、光環境チェック処理P1の次の実行タイミング(たとえば1分弱後)が到来すると、光環境チェック処理P1が再び実行される。
【0122】
このような態様によれば、載置台の撮影環境が寸法測定に適さない環境であると判定される場合、エラー報知画面が表示され、載置台の撮影環境が寸法測定に適さない環境である旨が報知される(ステップS18)。したがって、光環境エラーが発生している旨が適切に報知される。
【0123】
ここにおいて1回のみのエラー判定は誤検知である可能性もある。これに対して、上記実施形態では、1回のみならず複数回エラー判定が出されていることを条件として、光環境エラーの発生が報知されている。これによれば、誤検知されたエラーを報知する画面が表示されることを回避ないし抑制することが可能である。特に「連続して複数回エラー判定」を条件として光環境エラーの発生が報知されることによれば、誤検知されたエラーを報知する画面が表示されることをより確実に回避ないし抑制することが可能である。
【0124】
なお、ここでは、エラー画面(警告画面)の表示条件として、「連続して合計所定回数のエラーが出されていること」を例示したが、これに限定されない。たとえば、エラー画面の表示条件は、「直近M1回(たとえば5回)のうち所定回数M2(たとえば3回)以上」(ただし、M1≧M2)などの別の条件であってもよい。
【0125】
また、光環境チェック処理P1が中断された場合には、撮影環境が「適正環境」であるか「不適環境」であるかについての判定結果(エラーの有無についての判定結果)(ステップS36,S38)が出されない。それ故、中断された光環境チェック処理P1は、エラー画面の表示条件における回数カウント対象から除外されればよい。
【0126】
<ステップS100>
次に
図5の処理(ステップS100)について説明する。
【0127】
ステップS100の処理は、荷物の寸法測定(S105)を含む処理である。
図5は、寸法測定処理(ステップS105)を含む処理を示すフローチャートである。上述したように、コントローラ31において、
図5の処理と
図3の処理とは別のスレッドで並列的に実行される。ここでは、
図5の処理の実行開始時点において、
図3の光環境チェック処理P1が既に数回(たとえば5回)実行されているものとする。
【0128】
図5のステップS100の処理においては、載置台に荷物(測定対象物)がユーザ(顧客あるいは係員等)によって載置される(ステップS101)と、寸法測定開始指示が付与されたと見做される。そして、荷物の寸法測定(ステップS105)が自動的に開始される。具体的には、重量測定値Vが所定の閾値(たとえばゼロ)より大きく、且つ、重量測定値Vが安定していることを条件に、荷物の寸法測定(ステップS105)が開始される。なお、これに限定されず、所定のボタン押下に応じて、寸法測定開始指示が付与されたと見做され、荷物の寸法測定(ステップS105)が自動的に開始されてもよい。
【0129】
ただし、
図5のステップS100においては、寸法測定開始指示が付与された場合であっても、撮影環境に関する判定結果に関する所定条件(寸法測定実行条件)が充足される場合にのみ、寸法測定が実行される(ステップS105)。当該所定条件(寸法測定実行条件)は、ステップS17での条件と同じ(たとえば、「連続したエラー判定が3回未満」且つ「適正環境判定が1回以上」)である。
【0130】
一方、撮影環境に関する判定結果に関する当該所定条件が充足されない場合には、寸法測定(ステップS105)は実行されず、エラー画面(エラー報知画面)が表示される(ステップS104)。換言すれば、ステップS103にてエラー報知実行の条件が充足されている場合、ステップS104に進む(ステップS105には進まず寸法測定が実行されない)。
【0131】
寸法測定(ステップS105)あるいはエラー画面表示(ステップS104)が終了すると、ステップS106に進む。ステップS106では、
図5の処理を再度繰り返すか否かが判定される。具体的には、寸法測定に付随する他の処理(寸法測定結果の印刷出力処理および/または料金精算処理等)の完了、又は光環境エラーの解消処理の完了(あるいはエラーリセット操作)等に応じて、
図5の処理を再度繰り返す旨が判定され、ステップS101に戻る。一方、操作ユーザから終了指示が付与された場合等には、
図5の処理が終了する。
【0132】
<1-4.実施形態の効果等>
以上のような態様によれば、載置台の撮影環境が「適正環境」(寸法測定に適した環境)であるか否か(ステップS36,S38)が荷物(測定対象物)の寸法測定(S105)の前に判定される。したがって、寸法測定に適さない環境で寸法測定が実行されることを回避ないし抑制することが可能である。
【0133】
より詳細には、載置台の撮影環境が「適正環境」である旨が(ステップS38(
図4)にて)判定されること(少なくとも1回判定されること等)を条件として、測定対象物の寸法測定が実行される(ステップS103,S105)。これによれば、撮影環境が「適正環境」であると全く(1度も)判定されない場合には、寸法測定(S105)が実行されない。したがって、寸法測定に適さない環境で寸法測定が実行されることを適切に回避ないし抑制することが可能である。
【0134】
また、載置台の撮影環境が「不適環境」(寸法測定に適さない環境)であると判定される場合、エラー報知画面が表示されてその旨(載置台の撮影環境が「不適環境」である旨)が報知され(S18,S104)、寸法測定(S105)は実行されない。したがって、光環境エラーが発生している旨が適切に報知されるとともに、寸法測定に適さない環境で寸法測定が実行されることをより確実に回避ないし抑制することが可能である。
【0135】
ただし、より詳細には、載置台の撮影環境が「不適環境」であると判定される場合であっても、載置台の撮影環境が「不適環境」である旨が(ステップS36(
図4)にて)判定された回数が所定回数未満であるときには、載置台の撮影環境が「不適環境」である旨は報知されず、寸法測定(S105)が実行される。換言すれば、載置台の撮影環境が「不適環境」である旨が(ステップS36(
図4)にて)所定回数以上判定されることを条件として、その旨(載置台の撮影環境が「不適環境」である旨)が報知される。端的に言えば、光環境エラーを報知するための条件が充足される場合にのみ、エラー報知処理が実行される。このような処理によれば、光環境エラーを報知すべき状態であることが慎重に判定され、誤検知されたエラーが報知されることを回避ないし抑制することが可能である。また、誤検知されたエラーに起因して寸法測定が実行できない事態を回避ないし抑制することが可能である。
【0136】
なお、「載置台の撮影環境が不適環境である旨が(ステップS36(
図4)にて)判定された回数が所定回数未満である」との条件等は、撮影環境が「適正状態」であると最終的に判定するための条件(あるいは最終的な寸法測定実行条件)、とも表現される。最終的な寸法測定実行条件が充足される場合、寸法測定(S105)が実行される、逆に、最終的な寸法測定実行条件が充足されない場合、寸法測定(S105)は実行されない。
【0137】
また、上記実施形態においては、載置台に測定対象物が存在しないことを条件として(ステップS11等参照)、載置台の撮影環境が「適正環境」であるか否かが判定される(ステップS36,S38)。したがって、載置台上の物体の影響を受けずに撮影環境を判定することが可能である。
【0138】
また、測定対象物が載置台に載置されようとしている状態である旨が判定されないことをも条件として(ステップS13,S14,S33等参照)、載置台の撮影環境が「適正環境」であるか否かが判定される。したがって、載置台に載置されようとしている物体の影響をも受けずに撮影環境を判定することが可能である。
【0139】
換言すれば、載置台の上および/または上方に物体が存在しない旨が判定されることを条件として(ステップS11,S13,S14,S33等参照)、載置台の撮影環境が「適正環境」であるか否かが判定される。したがって、載置台上の物体の影響を受けずに且つ載置台に載置されようとしている物体の影響をも受けずに撮影環境を判定することが可能である。
【0140】
また、3次元カメラ20による撮影画像における位置測定不能画素の個数N5に基づき、載置台の撮影環境が「適正環境」であるか否かが判定される(ステップS36,S38(
図4))。したがって、蛍光灯等の外光が載置台表面で反射することに起因する不安定な撮影環境での寸法測定を回避ないし抑制することが可能である。
【0141】
特に、位置測定不能画素の近傍領域372において載置台の上および/または上方に存在する物体を示す画素群が存在しないと判定されることを条件として、載置台の撮影環境が「適正環境」であるか否かが判定される(ステップS33~S38等)。したがって、載置台に載置された物体および載置台に載置されようとしている物体の影響を受けずに撮影環境を判定することが可能である。また、「位置測定不能画素」が物体の存在に起因して生じている状況(
図8参照)をより適切に排除した上で、載置台の撮影環境が「適正環境」であるか否かを判定することが可能である。
【0142】
また、ステップS31(および後述するステップS41(
図10および
図15))等で取得される撮影環境判定用の画像と、ステップS33,S11~S14等で取得される物体存在判定用の画像とは同じ波長域の画像であることが好ましい。当該同じ波長域の画像は、たとえば、赤外光画像(詳細には、赤外光画像自体あるいはそれに基づく距離画像)であるが、これに限定されず、可視光画像(カラー画像)であってもよい。特に、同波長域画像の同じ画像を利用することが好ましい。これによれば、2種類の画像(2種類の波長域の画像)を別個に取得すること(および撮り直し)を要しないので、効率的である。また、赤外光画像を用いることによれば、可視光画像を用いる場合に比べて、環境光の影響を受け難く、正確な寸法測定を低コスト(安価)で(且つ高速に)行うことが可能である。
【0143】
<2.第2実施形態>
<2-1.概要>
第2実施形態は、第1実施形態の変形例である。以下では、第1実施形態との相違点を中心に説明する。
【0144】
第1実施形態では、光環境チェック処理P1として、蛍光灯からの光のうち載置面で反射された反射光による影響等をチェックする処理(P1aとも称する)を例示した。
【0145】
この第2実施形態では、光環境チェック処理P1として、太陽光などの強い周囲光の影響等をチェックする処理(P1bとも称する)を例示する。具体的には、第2実施形態では、第1実施形態におけるステップS16(S16A)(
図4)の処理に代えて、
図10のステップS16(S16B)の処理が実行される。ステップS16B等の光環境異常検知処理(周囲光異常検知処理)は、太陽光などの強い周囲光の影響等に起因する異常状態を検知する処理である。なお、ステップS16Bの処理も、載置台に荷物が載置されていないこと等を条件として実行される。具体的には、ステップS16(S16B)の処理は、第1実施形態と同様に、ステップS11~S15(
図3)の後に実行される。
【0146】
<周囲光異常検知処理(太陽光異常検知処理)の概要>
以下、まず、周囲光異常検知処理(太陽光異常検知処理)について説明する。
【0147】
上述のようにステレオカメラの撮影画像においては、光パターン(ここでは赤外光パターン)が用いられることがある。強い周囲光(たとえば強い太陽光)が載置台付近に入り込む場合、当該周囲光(太陽光等)に対して撮影画像内の赤外光パターンの光が相対的に弱くなる。この結果、明瞭な赤外光パターンが得られず、3次元位置の測定が不正確になることがある。
【0148】
そこで、この第2実施形態では、学習モデル400から出力される指標値(出力スコア)に基づき、載置台の撮影環境が「適正環境」(寸法測定に適した環境)であるか否かが判定される。この学習モデル400は、互いに異なる強度のパターン光を載置台に向けて照射して得られる各撮影画像を入力とし、当該各撮影画像におけるパターン光の明瞭度合いを示す指標値(出力スコア)を出力とする学習モデル(回帰モデル)である(
図12参照)。
【0149】
具体的には、まず、学習モデル400を用いた推論処理(推論段階の処理)に先立って、学習モデル400を機械学習する学習処理(学習段階の処理)が実行される。学習モデル400は、教師データ群(
図14参照)に基づき、互いに異なる強度のパターン光を載置台に向けて照射して得られる各撮影画像と、当該各撮影画像におけるパターン光の明瞭度合いを示す指標値(出力スコア)との関係を機械学習する(
図11(後述)参照)。この学習段階の処理(
図11参照)は、
図3および
図5の処理の前に予め行われる。なお、機械学習によって構築された学習モデル400は、学習済み学習モデル400(420)とも称される(
図12参照)。
【0150】
その後、学習モデル400を用いた推論処理(推論段階の処理)等が実行される。具体的には、
図3の光環境チェック処理P1の実行中において、ステップS16(S16B(
図10))の処理(後述)が実行される。推論段階においては、測定対象物の寸法測定の前に撮影された3次元カメラによる撮影画像に対応する指標値が学習モデル400(420)を用いて求められる(ステップS41,S42)。そして、当該指標値に基づき、載置台の撮影環境が「適正環境」であるか否かが判定される(ステップS43,S44,S48)。
【0151】
以下では、このような処理について詳細に説明する。
【0152】
<2-2.学習モデルに関連する処理等>
<学習段階の処理および周囲光の影響評価>
まず、学習モデル400の学習段階の処理(
図11参照)について説明する。
【0153】
図13は、学習モデル400で利用される撮影画像(201(220))を示す図である。ここでは、赤外光画像(撮影画像)201から切り出した一部領域(赤外光画像201の中央付近の正方形領域(
図13にて破線で囲まれる領域))の画像220が、学習モデルへの入力画像として利用される。なお、撮影画像201中央付近の白色の円環状部分は、荷物の載置位置の目安を表すために付された円環状マークに対応する部分である。
【0154】
このような赤外光画像201の撮影においては、3次元カメラ20の赤外光照射部から載置面に対して赤外光パターン(ランダムドットパターン)が照射される。正常な(良好な)撮影環境(光環境)においては、撮影画像201(入力画像220)において、非常に明瞭な赤外光パターンが撮影される。
【0155】
なお、ステップS105の寸法測定においては、当該赤外光パターンを用いることによって3次元位置が測定される。特に、赤外光パターンを利用することによれば、無模様の荷物表面(ひょうめん)等(ステレオマッチングが比較的困難な表面)における3次元位置をも正確に測定することが可能である。
【0156】
図14は、学習モデル400の学習に利用される教師データ群を示す図である。
【0157】
3次元カメラ20の赤外光照射部は、その出力光量を所定範囲内における複数段階の値に変更することが可能である。たとえば、0%~100%の範囲内にて多段階(100段階等)の各値に出力光量が変更され得る。
【0158】
そして、赤外光照射部から赤外光パターンを載置台に向けて照射した状態で撮影画像を撮影(取得)する処理が、所定幅刻み(たとえば「10%」刻み)で出力光量を変更しつつ繰り返し実行される。
【0159】
図14の上段には、5つの撮影画像(光量「100%」から光量「60%」までの「10%」刻みの光量で撮影された5つの撮影画像)が示されている。また、
図14の下段には、残りの6つの撮影画像(光量「50%」から光量「0%」までの「10%」刻みの光量で撮影された6つの撮影画像)が示されている。このように、
図14には、合計11個の撮影画像(光量「100%」から光量「0%」までの「10%」刻みの光量で撮影された11個の撮影画像)が示されている。なお、ここでは、オートゲインコントロールによって、撮影画像ごとに画像全体の明度(輝度)が調整されている。
【0160】
各撮影画像における赤外光パターンの明瞭度合いは、その照射光量に応じて変化している。具体的には、照射光量が小さくなるにつれて、赤外光パターンの明瞭度合いは徐々に低下している。光量「100%」の撮影画像においては非常に明瞭な赤外光パターンが見えている。しかしながら、光量が徐々に低下するにつれて赤外光パターンの明瞭さも徐々に低下していく。たとえば、光量「30%」の撮影画像においては赤外光パターンがかなり見え難く、光量「0%」の撮影画像においては赤外光パターンが全く見えない。
【0161】
そして、各撮影画像におけるパターン光の明瞭度合いを示す指標値(出力スコア)が、機械学習用の「正解ラベル」として各撮影画像に対して付与される。具体的には、各撮影画像を取得したときの赤外光強度(赤外光量)に応じて、各撮影画像に対して「1.000」~「0.000」までのスコア(小数値)が正解ラベルとして付与される。
【0162】
たとえば、
図14に示されるように、最も大きな光量「100%」の撮影画像に対してはスコア「1.000」が付与され、最も小さな光量「0%」の撮影画像に対してはスコア「0.000」が付与される。また、その他の中間の光量の撮影画像に対しても、照射光強度(赤外光強度)の明瞭度合いに応じたスコアが(刻み幅「0.100」で)付与される。たとえば、「90%」の光量の各撮影画像に対して「0.900」のスコアがそれぞれ付与され、「80%」の光量の各撮影画像に対して「0.800」のスコアがそれぞれ付与される。他の光量(およびスコア)に関しても同様である。
【0163】
図11のステップS91では、このような教師データ群(複数(ここでは11個)の教師データ)が生成される。なお、ここでは11個の教師データが生成されているが、これに限定されず、刻み幅をさらに小さく(細かく)することなどによって更に多数の教師データが生成されてもよい。
【0164】
図11のステップS92では、このような教師データ群に基づき学習モデル400が機械学習される。学習モデル400としては、たとえば、複数の層で構成されるニューラルネットワークモデル(より詳細には、畳み込みニューラルネットワーク(CNN:Convolutional Neural Network))が用いられる。学習モデル400は、複数の層(階層)が階層的に接続される階層構造を有している。具体的には、学習モデル400は、入力層、中間層(畳み込み層およびプーリング層等)ならびに出力層等を備えている。そして、所定の機械学習手法によって、ニューラルネットワークモデルにおける複数の層(入力層、(1又は複数の)中間層、出力層)の層間における重み付け係数(学習パラメータ)等が調整される。これにより、学習済みの学習モデル400(学習済みモデル420)が生成される。
【0165】
学習済みモデル420においては、互いに異なる強度のパターン光を載置台に向けて照射して得られる各撮影画像と、当該各撮影画像におけるパターン光の明瞭度合いを示す指標値(出力スコアSc)との関係が学習されている。
【0166】
<推論段階の処理等(ステップS16B)>
次に、学習モデル400を用いた推論処理(推論段階の処理)等について説明する。当該推論処理は、ステップS16B(
図10)において実行される。以下、ステップS16Bの処理について説明する。
【0167】
まず、ステップS41において、赤外光照射部から所定強度(ここでは最大強度:光量「360」)の赤外光パターンが照射された状態で撮影された撮影画像(赤外光画像201)が取得される。この撮影画像としては、ステップS13で取得された画像と同じ画像が用いられればよい。当該撮影画像は、測定対象物の寸法測定(S105(
図5))の前に撮影された画像である。そして、赤外光画像201から切り出した一部領域(赤外光画像201の中央付近の正方形領域(
図13にて破線で囲まれる領域))の画像220が、学習モデルへの入力画像として取得される。
【0168】
次に、ステップS42において、当該撮影画像201に対応する指標値が学習モデル400(420)を用いて求められる(ステップS42)。具体的には、当該撮影画像201(詳細には入力画像220)が学習済みモデル420に入力され、当該学習済みモデル420からのスコアSc(評価用の指標値)が出力される。
【0169】
一般に、周囲光(太陽光等)の強度が大きくなると、赤外光パターンの光量(強度)が相対的に小さくなり、その結果、赤外光パターンが見え難くなっていく。具体的には、周囲光の強度が非常に小さい場合、赤外光パターンは非常に明瞭である。一方、周囲光の強度が徐々に大きくなると、赤外光パターンが徐々に不明瞭になっていく。なお、周囲光の強度が一定程度以上大きくなると、赤外光パターンが見えなくなる。
【0170】
この実施形態では、このような性質、すなわち、周囲光(太陽光等)の強度が大きくなるにつれて赤外光パターンが不明瞭になっていく、という性質を利用する。逆に言えば、周囲光(太陽光等)の強度が小さくなるにつれて赤外光パターンが明瞭になる、という性質を利用する。
【0171】
具体的には、上述のように、推定時点での撮影画像が学習モデル420に入力され、赤外光パターンの明瞭度合い(ひいては光環境の良さ)を示す出力スコアScが得られる(ステップS41,S42)。そして、推定時点での撮影画像に対応する出力スコア(推定スコア)Scに基づき、推定時点での周囲光(太陽光等)の強度がさらに推定される。出力スコアScが大きい程、周囲光の強度(周囲光の悪影響)が小さい、と推定される。
【0172】
そして、当該スコアSc(指標値)に基づき、載置台の撮影環境が「適正環境」であるか否かが判定される(ステップS43,S44,S48)。
【0173】
具体的には、出力スコアScに基づく分岐処理(ステップS43)が実行される。
【0174】
出力スコアScが閾値TH6(たとえば0.5)より大きい場合、赤外光パターンの明瞭度合いが一定程度より大きく且つ周囲光(太陽光)の光量(強度)が所定程度より小さいと判定される。この場合、ステップS43からステップS48に進み、撮影環境が「適正環境」(寸法測定に適した環境)である旨が判定される。
【0175】
一方、出力スコアScが閾値TH6(たとえば0.5)以下である場合、赤外光パターンの明瞭度合いが一定程度以下であり且つ周囲光(太陽光)の光量(強度)が所定程度以上であると判定される。この場合、ステップS43からステップS44に進み、撮影環境が「不適環境」(寸法測定に適しない環境)である旨が判定される。
【0176】
この不適環境は、周囲光に主に起因する不適環境であることから、当該撮影環境の状態は、「周囲光環境エラー」状態とも称される。あるいは、当該不適環境は、太陽光に主に起因する不適環境であることから、当該撮影環境の状態は、「太陽光環境エラー」状態などとも称される。
【0177】
なお、ステップS16(S16B)以外の処理に関しては、第1実施形態と同様である。たとえば、ステップS17以降も第1実施形態と同様である。また、ステップS100も第1実施形態と同様である。
【0178】
詳細には、ステップS17(
図3)では、「不適環境」判定、具体的には「太陽光環境エラー」判定の発生回数等に応じて、エラー画面の表示の是非等が判定される。ステップS103(
図5)においても同様である。
【0179】
このように、第2実施形態における光環境チェック処理P1bのステップS16B(
図10)においては、載置台の撮影環境に関する(評価用の)指標値(学習モデルの出力スコアSc)を算出する算出処理が実行される(ステップS42)。また、載置台の撮影環境が「適正環境」であるか否かを当該指標値に基づき判定する環境判定処理が実行される(ステップS44,S48)。さらに、光環境チェック処理P1bのステップS11~S14(
図3)では、当該環境判定処理(ステップS44,S48)を実行すべきか否かを、当該環境判定処理の実行前に確認する確認処理が実行される。
【0180】
<2-3.第2実施形態の効果等>
第2実施形態によっても第1実施形態と同様の効果を得ることが可能である。
【0181】
ただし、第2実施形態では、
図4の処理に代えて
図10の処理が実行される。これによれば、太陽光等の外光の影響でパターン(赤外光パターン等)が薄れてしまい寸法測定精度が低下するような撮影環境(寸法測定に適さない環境)で寸法測定が実行されること、を回避ないし抑制することが可能である。
【0182】
なお、太陽光環境エラーは、カーテンを閉めること等により比較的容易に解消することもある。カーテンの状況変化等に応じて太陽光が遮断されるなどして正常な環境に戻る場合、その後に、光環境チェック処理P1(P1b)が定期的に数回繰り返し実行される。そして、(連続して)所定回数以上「太陽光エラー」が判定されなくなる(たとえば「適正環境」である旨が3回(あるいは1回でも)判定される)と、エラー画面が表示されなくなり、寸法測定が実行される(S105)。これによれば、正常状態での寸法測定が比較的容易に再開され得る。
【0183】
また、ここでは学習モデルとして回帰モデルを例示したが、これに限定されない。たとえば、学習モデルとして分類モデル(パターン明瞭状態(適正環境)とパターン不明瞭状態(不適環境)との2段階に分類するモデル、あるいはパターン明瞭レベルを多段階に分類するモデル等)等が利用されてもよい。
【0184】
<3.第3実施形態>
第3実施形態は、第1実施形態および第2実施形態の変形例である。以下では、第1実施形態との相違点を中心に説明する。
【0185】
第3実施形態に係る光環境チェック処理P1(P1cとも称する)では、蛍光灯からの光のうち載置面で反射された反射光による影響等をチェックする処理と、太陽光などの強い周囲光の影響等をチェックする処理との双方が実行される。
【0186】
具体的には、第3実施形態では、第1実施形態におけるステップS16(S16A)(
図4)の処理に代えて、
図15のステップS16(S16C)の処理が実行される。なお、ステップS16Cは、第1実施形態と同様に、ステップS11~S15の後に実行される。
【0187】
ステップS16Cにおいては、ステップS41~S44の処理とステップS31~S36の処理とが上記各実施形態(第2実施形態および第1実施形態)とそれぞれ同様にして実行される。
【0188】
ただし、載置面における撮影環境が、太陽光などの強い周囲光の影響等に起因する異常状態でもなく、且つ、載置面での反射光の影響等に起因する異常状態でもないことを条件に、撮影環境が「適正環境」であると判定される。具体的には、ステップS43でスコアScが閾値TH6よりも大きいと判定され且つステップS32で個数N5が閾値TH5以下であると判定される場合に、撮影環境が「適正環境」であると判定される(ステップS38(S38c))。
【0189】
なお、ここでは、ステップS41~S44の処理とステップS31~S36の処理とがこの順序で実行されているが、これに限定されず、逆に、ステップS31~S36の処理とステップS41~S44の処理とがこの順序で実行されてもよい。
【0190】
第3実施形態においては、ステップS17以降の処理も第1実施形態と同様である。
【0191】
ただし、第3実施形態のステップS17(
図3)では、エラーの発生回数(「太陽光環境エラー」と「蛍光灯光環境エラー」との少なくとも一方が発生した回数)等に基づいて、エラー画面の表示の是非等が判定される。換言すれば、撮影環境が「適正環境」である旨がステップS38cにて判定された回数等に基づいて、エラー画面の表示の是非等が判定される。ステップS103(
図5)においても同様である。また、ステップS100では、撮影環境が「適正環境」である旨がステップS38cにて判定された回数等に基づいて、エラー画面の表示の是非等が判定されるとともに、寸法測定実行の是非もが判定される。
【0192】
また、ここでは、ステップS41~S44の処理とステップS31~S36の処理とがこの順序で実行される。その結果、光環境チェック処理P1内において、2種類のエラー(「太陽光環境エラー」および「蛍光灯光環境エラー」)のうち「太陽光環境エラー」が優先的に判定される。そして、2種類のエラー画面(「太陽光環境エラー」画面および「蛍光灯光環境エラー」画面)のうち、「太陽光環境エラー」画面が優先的に表示される。ただし、本発明は、これに限定されない。たとえば、逆に、2種類のエラーのうち「蛍光灯光環境エラー」が優先的に判定され、2種類のエラー画面のうち、「蛍光灯光環境エラー」画面が優先的に表示されてもよい。
【0193】
あるいは、光環境チェック処理P1内において、「太陽光環境エラー」と「蛍光灯光環境エラー」との双方が同等の優先度合いで判定されてもよい。このような場合等において、「太陽光環境エラー」画面の表示の是非と「蛍光灯光環境エラー」画面の表示の是非との双方が(個別に)判定されてもよい。具体的には、「蛍光灯光環境エラー」判定の発生回数が所定条件(たとえば、連続して所定回数以上である)場合に、エラー報知画面にて「蛍光灯光環境エラー」が発生している旨が表示されればよい。また、「太陽光環境エラー」判定の発生回数が所定条件(たとえば、連続して所定回数以上である)場合に、エラー報知画面にて「太陽光環境エラー」が発生している旨が表示されればよい。また、両種類のエラーの双方が(エラー報知のための)所定条件を充足する場合、両種類のエラーの双方を表示するエラー報知画面が表示されてもよく、両種類のエラーの一方のみを表示するエラー報知画面が表示されてもよい。
【0194】
<4.変形例等>
以上、この発明の実施の形態について説明したが、この発明は上記説明した内容のものに限定されるものではない。
【0195】
<移動体検知>
たとえば、上記各実施形態等におけるステップS13においては、1枚の差分画像に基づく物体検知処理が実行されているが、これに限定されない。たとえば、複数(複数枚)の差分画像に基づく物体検知処理(端的に言えば、移動体検知処理)が実行されてもよい。
【0196】
具体的には、事前画像との差分に関する処理が、3次元カメラ20によって微少時間内に(連続的に)撮影された複数(たとえば5枚)の撮影画像(動画像を構成する幾つかのフレーム画像)について実行されればよい。具体的には、事前画像と当該複数の撮影画像のそれぞれとの各差分画像が生成され、各差分画像において一定程度以上の画素値(差分値)を有する部分(事前画像と新規画像との相違部分)の画素数N1が一定値TH1よりも大きいか否かを判定する。このような処理が複数の差分画像について繰り返される。そして、画素数N1が一定値TH1よりも大きいと判定される差分画像が、所定枚数(たとえば5枚のうち3枚)以上(たとえば4枚)存在する場合、載置台の上方に荷物(換言すれば、移動中の物体)が存在する旨が(原則として)判定され、ステップS14に進む。一方、画素数N1が一定値TH1よりも大きいと判定される差分画像が、所定枚数未満(たとえばゼロ枚)(所定割合未満)である場合、載置台の上方に荷物(より詳細には、移動中の物体)が存在しない旨が判定され、ステップS16に進む。
【0197】
このような処理によって、移動中の物体が撮影エリア内(詳細には、載置台の少なくとも一部を含むエリア内)に存在するか否かが判定されてもよい。そして、移動中の物体が撮影エリア内に存在しないと判定されることをも条件として、載置台の撮影環境が「適正環境」であるか否かが判定されてもよい。
【0198】
<撮影画像に基づく物体載置検知>
また、上記各実施形態においては、荷物(測定対象物)が載置台に載置されている状態であるか否かが、重量計(重量測定部)40による重量測定値Vに基づいて判定されているが、これに限定されない。たとえば、3次元カメラ20による撮影画像に基づいて、荷物(測定対象物)が載置台に載置されている状態であるか否か(載置台に測定対象物が存在する状態であるか否か)が判定されてもよい。ただし、上述のように重量測定値Vを用いて判定することによれば、(撮影画像に対する画像処理等を用いて判定する場合に比べて)、正確な判定結果をより簡易に得ることが可能である。
【0199】
<ステップS33,S34等>
また、上記第1実施形態等のステップS33,S34においては、「位置測定不能画素」の近傍領域における荷物領域の有無が検出されている。ただし、これに限定されず、ステップS33,S34において、画像全体にて荷物領域の有無が検出されてもよい。
【0200】
また、上記第1実施形態等においては、ステップS13,S14の処理とステップS33,S34の処理とがいずれも実行されているが、これに限定されず、ステップS13,S14の処理とステップS33,S34の処理との一方のみが実行されてもよい。たとえば、ステップS33,S34の処理のみが実行されてもよい。
【0201】
<反射防止シール>
また、上記各実施形態において、載置面(透明部材51の表面(ひょうめん))の全領域に亘って反射防止シールが貼付されることが好ましい。これによれば、特に蛍光灯の光等のうち載置面で反射した反射光に起因する「不適環境」が発生することを抑制することが可能である。
【0202】
ただし、反射防止シールは時間とともに劣化する。これに対して、特に上記第1および第3実施形態等によれば、反射防止シールが経時劣化した場合等において、「不適環境」が発生する状態に変化してきたことをユーザ(寸法測定装置の係員等)が早期に知得することが可能である。
【0203】
<「載置台端部付近における死角」に起因する位置測定不能画素の除外>
また、上記第1実施形態のステップS16A(
図4)においては、好ましくは、載置面における正反射光に起因する「位置測定不能画素」の個数に基づき、撮影環境が適正環境か否かが判断される。そのような状況を実現するため、カメラの死角に起因する位置測定不能画素の影響を除外することが考慮されている(ステップS33(
図4)等)。
【0204】
上記第1実施形態では、カメラの死角に起因する位置測定不能画素として、「載置台以外の物体(荷物)付近における死角」に起因する位置測定不能画素を除外することが主に考慮されている。ただし、カメラの死角に起因する位置測定不能画素としては、「載置台以外の物体(荷物)付近における死角」に起因する位置測定不能画素とともに、「載置台端部付近における死角」に起因する位置測定不能画素もが存在し得る。たとえば、
図8において、載置台(保持部50)の左辺(左端部)に沿って伸びる帯状の黒色領域365の画素が、「載置台端部付近における死角」に起因する位置測定不能画素である。
【0205】
それ故、上述の個数N5は、カメラの死角のうち「載置台端部付近における死角」に起因する位置測定不能画素が除外された上で算出されることが好ましい。換言すれば、上述の個数N5は、カメラの死角のうち「載置台端部付近における死角」に起因する位置測定不能画素の個数が差し引かれた上で算出されることが好ましい。これによれば、「載置台端部付近における死角」に起因する位置測定不能画素の影響を排除して、荷物等の存否を判定することが可能である。
【0206】
「載置台端部付近における死角」に起因する位置測定不能画素の個数は、事前調整処理において、光環境適正状態且つ荷物が載置台の上と上方とのいずれにも存在しない状態で予め撮影された撮影画像に基づいて算出されればよい。このような状態においては、載置面での「正反射光」に起因する位置測定不能画素、および「載置台以外の物体(荷物)付近における死角」に起因する位置測定不能画素は、殆ど存在しない。一方、「載置台端部付近における死角」に起因する位置測定不能画素が主に検出される。
【0207】
あるいは、閾値TH5が、カメラの死角のうち「載置台周辺付近における死角」に起因する位置測定不能画素の個数よりも多い値に設定されてもよい。
【0208】
<等号成立時>
また、上記各実施形態等における大小関係判定処理(分岐処理)において、等号成立時には、いずれの判定後処理(分岐後処理)が行われてもよい。たとえば、個数N5と閾値TH5とが等しい場合、ステップS38(
図4)に進むようにしてもよいが、ステップS33に進むようにしてもよい。その他の大小判定処理(分岐処理)においても同様である。
【0209】
<光環境チェック処理P1の不定期的実行>
また、上記各実施形態においては、光環境チェック処理P1(
図3)が定期的に実行されるが、これに限定されず、不定期的に(たとえば、操作者の開始指示に応じて、あるいはランダムなタイミング等で)実行されてもよい。
【0210】
<TOFカメラ等>
また、上記各実施形態においては、3次元カメラ20としてステレオカメラ(ステレオ視方式の3次元カメラ)が例示されているが、これに限定されない。たとえば、TOF(Time Of Flight)方式の3次元カメラが用いられてもよい。
【0211】
より詳細には、屋内照明(白熱灯あるいは蛍光灯等)からの強い光(特に、赤外光成分を含む光)および/または太陽光が載置面の全体あるいは一部に照射されている場合、TOF方式の3次元カメラ20の撮影画像内の全部あるいは一部において、位置測定不能画素が生じ得る。強い環境光(屋内照明等からの光)の影響によって、測距用の光(赤外光等)を受光することが困難になるためである。このような場合、上記第1実施形態等と同様の処理が実行されればよい。ただし、ステップS31,S32(
図4)においては、TOF方式の撮影画像における位置測定不能画素の個数N5が求められ、当該個数N5と閾値TH5との大小関係に基づく判定処理が実行されればよい。また、ステップS33,S34,S35の処理は不要である。
【符号の説明】
【0212】
10 寸法測定装置
20 3次元カメラ
30 寸法算出装置
31 コントローラ
40 重量計
50 保持部
51 透明部材
51a 載置面
80 測定対象物(荷物)
400,420 学習モデル