(57)【要約】  実施は、バーコード走査及び寸法決定のためのデバイス及び方法に関する。幾つかの実施において、方法は、オブジェクトの２次元（２Ｄ）プレビュー画像を取得することと、２Ｄプレビュー画像を処理して、１つ又はそれ以上の暗領域を判断し、オブジェクト上のコードの位置を判断することとを含む。方法はまた、１つ又はそれ以上の暗領域に基づいてオブジェクトの３次元（３Ｄ）画像を取得することと、３Ｄ画像を処理して、深度データを判断し、オブジェクトの寸法を求めることも含む。方法はまた、処理された３Ｄ画像内の深度データに基づいて、オブジェクトの２Ｄデータ・キャプチャ画像を取得することも含み、ここで、２Ｄデータ・キャプチャ画像はコードをキャプチャする。方法はまた、２Ｄデータ・キャプチャ画像に基づいてコードを読み取るステップも含む。【選択図】図６
2019519022.tif 000002
【特許請求の範囲】
【請求項１】
２Ｄカメラ・デバイスから得られる、オブジェクトの２次元（２Ｄ）プレビュー画像を取得するステップと、
前記２Ｄプレビュー画像を処理して、前記オブジェクト上のコードの位置を求めるステップと、
前記オブジェクトの、３Ｄカメラ・デバイスから得られる３次元（３Ｄ）画像を取得するステップと、
前記３Ｄ画像を処理して、前記オブジェクトと関連した深度データを求めるステップと、
前記処理された３Ｄ画像内の前記深度データに基づいて、前記オブジェクトの前記コードをキャプチャするものであり前記２Ｄカメラ・デバイスから得られる、２Ｄデータ・キャプチャ画像を取得するステップと、
前記２Ｄデータ・キャプチャ画像に基づいて前記コードを読み取るステップと、
を含むことを特徴とする方法。
【請求項２】
前記３Ｄカメラ・デバイスは、赤外線カメラ・デバイスであることを特徴とする、請求項１に記載の方法。
【請求項３】
前記深度データに基づいて、前記２Ｄカメラ・デバイスのレンズを前記コードに合焦させるステップをさらに含むことを特徴とする、請求項１に記載の方法。
【請求項４】
インジケータをユーザに提供するステップをさらに含み、前記インジケータは、前記深度データに基づいて、前記２Ｄカメラ・デバイスを前記オブジェクトに対して最適に位置決めするよう、前記ユーザを案内することを特徴とする、請求項１に記載の方法。
【請求項５】
前記処理された３Ｄ画像内の前記深度データに基づいて前記コードの解像度を調整するステップをさらに含むことを特徴とする、請求項１に記載の方法。
【請求項６】
前記コードはバーコードであることを特徴とする、請求項１に記載の方法。
【請求項７】
前記処理された３Ｄ画像内の前記深度データが所定の深度閾値を超えたとき、前記コードの画像をクロッピングするステップをさらに含むことを特徴とする、請求項１に記載の方法。
【請求項８】
２次元（２Ｄ）カメラ・デバイスと、
３次元（３Ｄ）カメラ・デバイスと、
１つ又はそれ以上のプロセッサと、
データ・ストレージと、
を備え、前記データ・ストレージは、
２Ｄカメラ・デバイスから得られる、オブジェクトの２Ｄプレビュー画像を取得することと、
前記２Ｄプレビュー画像を処理して、前記オブジェクト上のコードの位置を求めることと、
前記オブジェクトの、３Ｄカメラ・デバイスから得られる３Ｄ画像を取得することと、
前記３Ｄ画像を処理して、前記オブジェクトと関連した深度データを求めることと、
前記処理された３Ｄ画像内の前記深度データに基づいて、前記コードをキャプチャするものであり前記２Ｄカメラ・デバイスから得られる、前記オブジェクトの２Ｄデータ・キャプチャ画像を取得する動作と、
前記２Ｄキャプチャ画像に基づいて前記コードを読み取る動作と、
を含む動作を前記システムに行わせるための、前記１つ又それ以上のプロセッサにより実行可能な命令を収容する
ことを特徴とするシステム。
【請求項９】
２Ｄカメラ・デバイスから得られる、オブジェクトの２次元（２Ｄ）プレビュー画像を取得するステップと、
前記２Ｄプレビュー画像を処理して、１つ又はそれ以上の暗領域を求めるステップと、
前記処理された２Ｄプレビュー画像内の前記１つ又はそれ以上の暗領域に基づいて、前記オブジェクトの、３Ｄカメラ・デバイスから得られる３次元（３Ｄ）画像を取得するステップと、
前記３Ｄ画像を処理して、前記オブジェクトの寸法を求めるステップと、
を含むことを特徴とする方法。
【請求項１０】
前記３Ｄカメラ・デバイスは、赤外線カメラ・デバイスであることを特徴とする、請求項９に記載の方法。
【請求項１１】
前記オブジェクトの前記寸法を表示デバイス上に表示するステップをさらに含むことを特徴とする、請求項９に記載の方法。
【請求項１２】
前記オブジェクトの前記２Ｄプレビュー画像を表示デバイス上に表示するステップをさらに含むことを特徴とする、請求項９に記載の方法。
【請求項１３】
前記処理された２Ｄプレビュー画像内の前記１つ又はそれ以上の暗領域に基づいて、前記３Ｄ画像の露出時間及び前記３Ｄ画像のゲインのうちの少なくとも１つを調整するステップをさらに含むことを特徴とする、請求項９に記載の方法。
【請求項１４】
前記３Ｄ画像を処理するステップは、
前記オブジェクトの１つ又それ以上の面を特定するステップと、
前記オブジェクトの前記１つ又それ以上の面に基づいて関心ある領域を判断するステップと、
前記処理された２Ｄプレビュー画像に基づいて前記３Ｄ画像の露出時間及び前記３Ｄ画像のゲインのうちの少なくとも１つを調整するステップと、
を含むことを特徴とする、請求項９に記載の方法。
【請求項１５】
前記３Ｄ画像を処理するステップは、
前記オブジェクトの１つ又はそれ以上の面を定めるステップと、
前記オブジェクトの前記１つ又はそれ以上の面に基づいて前記オブジェクトの寸法を求めるステップと、
を含むことを特徴とする、請求項９に記載の方法。
【請求項１６】
２次元（２Ｄ）カメラ・デバイスと、
３次元（３Ｄ）カメラ・デバイスと、
１つ又はそれ以上のプロセッサと、
データ・ストレージと、
を備え、前記データ・ストレージは、
オブジェクトの、前記２Ｄカメラ・デバイスから得られる２Ｄプレビュー画像を取得することと、
前記２Ｄプレビュー画像を処理して、１つ又はそれ以上の暗領域を求めるステップと、
前記処理された２Ｄプレビュー画像内の前記１つ又はそれ以上の暗領域に基づいて、前記オブジェクトの、前記３Ｄカメラ・デバイスから得られる３Ｄ画像を取得することと、
前記３Ｄ画像を処理して、前記オブジェクトの寸法を求めることと、
を含む動作をシステムに行わせるための、前記１つ又それ以上のプロセッサにより実行可能な命令を収容する
ことを特徴とする、システム。
【請求項１７】
２Ｄカメラ・デバイスから得られる、オブジェクトの２次元（２Ｄ）プレビュー画像を取得するステップと、
前記２Ｄプレビュー画像を処理して、１つ又はそれ以上の暗領域を求め、かつ、前記オブジェクト上のコードの位置を求めるステップと、
前記１つ又はそれ以上の暗領域に基づいて、前記オブジェクトの、前記３Ｄカメラ・デバイスから得られる３次元（３Ｄ）画像を取得するステップと、
前記３Ｄ画像を処理して、深度データを求め、かつ、前記オブジェクトの寸法を求めるステップと、
前記処理された３Ｄ画像内の前記深度データに基づいて、前記コードをキャプチャするものであり前記２Ｄカメラ・デバイスから得られる、前記オブジェクトの２Ｄデータ・キャプチャ画像を取得するステップと、
前記２Ｄキャプチャ画像に基づいて前記コードを読み取るステップと、
を含むことを特徴とする方法。
【請求項１８】
前記３Ｄカメラ・デバイスは、赤外線カメラ・デバイスであることを特徴とする、請求項１７に記載の方法。
【請求項１９】
前記３Ｄ画像からの前記深度データに基づいて、前記２Ｄカメラ・デバイスのレンズを前記コードに合焦させるステップをさらに含むことを特徴とする、請求項１７に記載の方法。
【請求項２０】
前記３Ｄ画像からの前記深度データに基づいて、前記２Ｄカメラ・デバイスを前記オブジェクトに対して最適に位置決めするよう、前記ユーザを案内するインジケータを、ユーザに提供するステップをさらに含む、ことを特徴とする、請求項１７に記載の方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、バーコードを走査し寸法決定する方法及び装置に関する。
【背景技術】
【０００２】
輸送及び物流産業において、配送前のパッケージの正確な測定は重要な仕事である。寸法測定及び重量測定は、パッケージを配送する前の共通の測定である。配送前の別の一般的な仕事は、バーコードの走査である。バーコード走査は、通常、撮像スキャナを用いて達成され、そこで、撮像スキャナは、バーコード全体の写真を撮り、画像処理アルゴリズムを実行しているプロセッサがバーコードを認識し、デコードする。バーコード走査は、モバイル機器で実施されることが多い。
【０００３】
別個の図面全体にわたって同様の参照番号が同一の又は機能的に類似の要素を示す添付図面は、以下の詳細な説明と共に本明細書に組み入れられかつその一部を形成し、また、本明細書で説明される概念の実施をさらに示し、それらの実施の種々の原理及び利点を説明する役割を果たす。
【図面の簡単な説明】
【０００４】
【図１】幾つかの実装による、寸法決定（ｄｉｍｅｎｓｉｏｎｉｎｇ）及びバーコード走査のための例示的なデバイスを示す。
【図２】幾つかの実装による、例示的なデバイスのブロック図を示す。
【図３】幾つかの実装による、バーコード走査のための例示的な方法のフローチャートを示す。
【図４】幾つかの実装による、寸法決定のための例示的な方法のフローチャートを示す。
【図５】幾つかの実装による、バーコード走査及び寸法決定のための例示的な方法のフローチャートを示す。
【図６】幾つかの実装による、バーコード走査及び寸法決定のための例示的なワークフローのブロック図を示す。
【図７】幾つかの実装による、物理的オブジェクトのデジタル画像及びその寸法、並びにバーコード読み出しを与える例示的なユーザ・インターフェースを示す。
【発明の概要】
【０００５】
当業者であれば、図面内の要素は簡素化及び明瞭化を目的として例示されており、必ずしも縮尺通り描かれていないことを認識するであろう。例えば、図面内の要素の一部の寸法は、本明細書の実施の理解を深めるのに役立つように他の要素に対して誇張されている場合がある。
【０００６】
装置及び方法の構成要素は、適切な場合には図面内に従来の記号で表されており、本明細書の説明の利益を有する当業者であれば容易に明らかであろう詳細によって本開示を不明瞭にしないように、本明細書の実施の理解に関連する特定の詳細のみを示している。
【０００７】
本明細書の態様は、オブジェクトの２次元（２Ｄ）プレビュー画像を取得することであって、２Ｄプレビュー画像は２Ｄカメラ・デバイスから得られる、取得することを含む方法を提供する。方法はまた、２Ｄプレビュー画像を処理してオブジェクト上のコードの位置を判断することも含む。本明細書でより詳細に説明されるように、コードは、バーコードとすることができる。方法はまた、オブジェクトの３次元（３Ｄ）画像を取得することであって、３Ｄ画像は３Ｄカメラ・デバイスから得られる、取得することも含む。方法はまた、３Ｄ画像を処理して深度データを判断することも含む。方法はまた、処理された３Ｄ画像内の深度データに基づいて、オブジェクトの２Ｄデータ・キャプチャ画像を取得することであって、２Ｄデータ・キャプチャ画像はコードをキャプチャし、２Ｄデータ・キャプチャ画像は２Ｄカメラ・デバイスから得られる、取得することも含む。方法はまた、２Ｄデータ・キャプチャ画像に基づいてコードを読み取ることも含む。
【０００８】
幾つかの実施において、３Ｄカメラ・デバイスは、赤外線カメラ・デバイスとすることができる。幾つかの実施において、方法は、処理された３Ｄ画像内の深度データに基づいて、２Ｄカメラ・デバイスのレンズをコードに合焦させることをさらに含むことができる。幾つかの実施において、方法は、インジケータをユーザに提供することであって、インジケータは、処理された３Ｄ画像内の深度データに基づいて２Ｄカメラ・デバイスをオブジェクトに対して最適に位置決めするようにユーザを案内する、提供することをさらに含むことができる。幾つかの実施において、方法は、処理された３Ｄ画像内の深度データに基づいてコードの解像度を調整することをさらに含むことができる。幾つかの実施において、コードは、バーコードとすることができる。幾つかの実施において、方法は、処理された３Ｄ画像内の深度データが深度閾値を上回るとき、コードの画像をクロッピングすることをさらに含むことができる。
【０００９】
幾つかの実施において、本明細書の別の態様は、２Ｄカメラ・デバイス、３Ｄカメラ・デバイス、及び１つ又はそれ以上のプロセッサを含むシステムを提供する。システムはまた、１つ又はそれ以上のプロセッサにより実行可能な命令を含むデータ・ストレージも含む。命令により、システムは、２Ｄカメラ・デバイスから得られたオブジェクトの２Ｄプレビュー画像を取得することと、２Ｄプレビュー画像を処理して、オブジェクト上のコードの位置を判断することと、オブジェクトの３Ｄ画像を取得することであって、３Ｄ画像は３Ｄカメラ・デバイスから得られる、取得することとを含むことができる動作を実行する。命令はまた、３Ｄ画像を処理して深度データを判断することと、処理された３Ｄ画像内の深度データに基づいてオブジェクトの２Ｄデータ・キャプチャ画像を取得することであって、２Ｄデータ・キャプチャ画像はコードをキャプチャし、２Ｄデータ・キャプチャ画像は２Ｄカメラ・デバイスから得られる、取得することと、２Ｄデータ・キャプチャ画像に基づいてコードを読み取ることとを含むこともできる。
【００１０】
幾つかの実施において、本明細書の別の態様は、２Ｄカメラ・デバイスから得られたオブジェクトの２Ｄプレビュー画像を取得することと、２Ｄプレビュー画像を処理して、１つ又はそれ以上の暗領域（ｄａｒｋ  ａｒｅａ）を判断することと、処理された２Ｄプレビュー画像内の１つ又はそれ以上の暗領域に基づいてオブジェクトの３Ｄ画像を取得することであって、３Ｄ画像は３Ｄカメラ・デバイスから得られる、取得することと、３Ｄ画像を処理して、オブジェクトの寸法を求めることとを含む方法を提供する。
【００１１】
幾つかの実施において、３Ｄカメラ・デバイスは、赤外線カメラ・デバイスとすることができる。幾つかの実施において、方法は、オブジェクトの寸法を表示デバイス上に表示することをさらに含むことができる。幾つかの実施において、方法は、オブジェクトの２Ｄデータ・キャプチャ画像を表示デバイス上に表示することをさらに含むことができる。幾つかの実施において、方法は、処理された２Ｄプレビュー画像内の１つ又はそれ以上の暗領域に基づいて、３Ｄ画像の露出時間及び３Ｄ画像のゲインの少なくとも１つを調整することをさらに含むことができる。幾つかの実施において、３Ｄ画像を処理することは、オブジェクトの１つ又はそれ以上の面を特定することと、１つ又はそれ以上の面に基づいて関心ある領域（ｏｂｊｅｃｔ  ｏｆ  ｉｎｔｅｒｅｓｔ）を判断することと、処理された２Ｄプレビュー画像に基づいて３Ｄ画像の露出時間及び／又は３Ｄ画像のゲインを調整することとを含むことができる。幾つかの実施において、３Ｄ画像を処理することは、オブジェクトの面を特定することと、オブジェクトの特定された面に基づいてオブジェクトの寸法を求めることを含むことができる。
【００１２】
幾つかの実施において、本明細書の別の態様は、２Ｄカメラ・デバイス、３Ｄカメラ・デバイス、１つ又はそれ以上のプロセッサ、及び命令を含むデータ・ストレージを含むシステムを提供する。命令は、システムに、オブジェクトの２Ｄプレビュー画像を取得することであって、２Ｄプレビュー画像は２Ｄカメラ・デバイスから得られる、取得することを含む動作を実行させるために、１つ又はそれ以上のプロセッサにより実行可能である。動作はまた、２Ｄプレビュー画像を処理して、１つ又はそれ以上の暗領域を判断することも含む。動作はまた、処理された２Ｄプレビュー画像内の１つ又はそれ以上の暗領域に基づいてオブジェクトの３Ｄ画像を取得することであって、３Ｄ画像は３Ｄカメラ・デバイスから得られる、取得することも含む。動作はまた、３Ｄ画像を処理して、オブジェクトの寸法を求めることも含む。
【００１３】
幾つかの実施において、本明細書の別の態様は、２Ｄカメラ・デバイスから得られたオブジェクトの２Ｄプレビュー画像を取得することを含む方法を提供する。方法は、２Ｄプレビュー画像を処理して、１つ又はそれ以上の暗領域を判断し、オブジェクト上のコードの位置を判断することをさらに含む。方法はまた、１つ又はそれ以上の暗領域に基づいてオブジェクトの３Ｄ画像を取得することであって、３Ｄ画像は３Ｄカメラ・デバイスから得られる、取得することも含む。方法はまた、３Ｄ画像を処理して、深度データを判断し、オブジェクトの寸法を求めることも含む。方法はまた、処理された３Ｄ画像内の深度データに基づいてオブジェクトの２Ｄデータ・キャプチャ画像を取得することであって、２Ｄデータ・キャプチャ画像はコードをキャプチャし、２Ｄデータ・キャプチャ画像は２Ｄカメラ・デバイスから得られる、取得することも含む。方法はまた、２Ｄデータ・キャプチャ画像に基づいてコードを読み取ることも含む。
【発明を実施するための形態】
【００１４】
図１は、幾つかの実施による、寸法決定及びバーコード走査のための例示的なデバイス１００を示す。本明細書で説明されるように、バーコード走査及び寸法決定は、１つ又はそれ以上のデジタル画像及び深度データに基づく。図２は、幾つかの実施による、図１のデバイス１００のブロック図を示す。
【００１５】
図１及び図２を参照すると、種々の実装において、デバイス１００は、携帯情報端末（ＰＤＡ）、タブレット、又はいずれかの適切な手持ち式デバイスとすることができる。示されるように、デバイス１００は、２次元（２Ｄ）カメラ・デバイス１０２と、深度感知デバイス１０４とも呼ぶことができる３次元（３Ｄ）カメラ・デバイス１０４と、寸法決定プロセッサ及び／又はバーコード読み取りプロセッサ２２０と呼ぶことができる少なくとも１つのプロセッサ２２０とを含む。この例示的な実施において、２Ｄカメラ・デバイス１０２はデバイス１００内に組み込まれている。従って、２Ｄカメラ・デバイス１０２は、点線で示される。示されるように、２Ｄカメラ・デバイス１０２は、２Ｄカメラ・レンズ１０６を含み、３Ｄカメラ・デバイス１０４は、３Ｄカメラ・レンズ１０８を含む。本明細書で示されるように、２Ｄカメラ・デバイス１０２は、バーコード・イメージャを含むことができる。実施形態において、２Ｄカメラ・デバイスは、赤・緑・青（ＲＧＢ）カメラとすることができる。同様に、３Ｄカメラ・デバイスは、赤外線カメラ・デバイスとすることができる。幾つかの実施において、３Ｄカメラ・デバイスは、レーザ・パターン・エミッタ１１０を含むこともできる。
【００１６】
種々の実装において、プロセッサ２２０は、２Ｄカメラ・デバイスから得られたオブジェクトの２Ｄプレビュー画像を取得し、２Ｄプレビュー画像を処理して、１つ又はそれ以上の暗領域（例えば、所定の輝度閾値を下回る画像領域、及び／又は黒色若しくは実質的に黒色の画像領域のものを含む所定の暗色を有する画像領域）を判断し、かつ、オブジェクト上のコードの位置を判断し、１つ又はそれ以上の暗領域の１つ又はそれ以上に基づいてオブジェクトの３Ｄ画像を取得するように構成され、３Ｄ画像は３Ｄカメラ・デバイスから得られる。プロセッサは、３Ｄ画像を処理して、深度データを判断し、オブジェクトの寸法を求めるようにさらに構成することができる。プロセッサはまた、処理された３Ｄ画像内の深度データに基づいてオブジェクトの２Ｄデータ・キャプチャ画像を取得するように構成することもでき、２Ｄデータ・キャプチャ画像はコードをキャプチャし、かつ、２Ｄデータ・キャプチャ画像は２Ｄカメラ・デバイスから得られる。プロセッサはまた、２Ｄデータ・キャプチャ画像に基づいてコードを読み取るように構成することもできる。
【００１７】
種々の実装において、２Ｄカメラ・デバイス１０２は、カメラ１０２と交換可能に呼ぶことができ、３Ｄカメラ・デバイス１０４は、深度感知デバイス１０４と交換可能に呼ぶことができる。また、プロセッサ２２０は、寸法決定プロセッサ及び／又はバーコード読み取りプロセッサ２２０と交換可能に呼ぶことができる。
【００１８】
さらに図２を参照すると、デバイス１００は、メモリ２２２、通信インターフェース２２４（インターフェース２２４と交換可能に呼ばれる）、表示デバイス１２６、少なくとも１つの入力デバイス２２８、スピーカ２３２、及びマイクロフォン２３４をさらに含む。デバイス１００及びその構成要素が、ここでさらに詳細に説明される。デバイス１００は、モバイル機器、又はグラフィックス処理ユニット（ＧＰＵ）、グラフィックス処理デバイス、グラフィックス処理エンジン、ビデオ処理デバイス等を有する他の携帯型コンピューティング・デバイスを含むことができる。デバイス１００は、カメラ１０２及び深度感知デバイス１０４の視野においてオブジェクトの寸法を決定するために、画像及び深度データを取得する。実施形態において、デバイス１００は、これらに限定されるものではないが、在庫の追跡又は他の処理、小包の配送、小売りアイテム、医療用品等を含む、例えば、倉庫、小売店、医療の機能などの特化した機能を有するデバイスを含む。種々の他の実施形態において、デバイス１００は、モバイル・コンピューティング・デバイス、タブレット、ラップトップ、又はデスクトップ・コンピューティング・デバイス、ＰＤＡ、スマートフォン、インターネット対応アプライアンス、電子カメラ等のような種々の形状因子を取ることができる。他の適切なデバイスも、本実施の範囲内にある。
【００１９】
デバイス１００は、無線周波数識別（ＲＦＩＤ）及び／又は近距離場通信（ＮＦＣ）読取装置、レーザ・ベースのバーコードスキャナ、ディスプレイ１２６とは別個のものとすることができる、又はその部分を形成することができる１つ又はそれ以上のハンドル、並びに、カメラ１０２、１０４、レーザ・ベースのスキャナ、ＲＦＩＤ、ＮＦＣ読取装置、又は別のデータ取得デバイスのうちの１つ又はそれ以上をトリガするためのトリガのうちの１つをさらに含むことができる。一実施形態において、トリガは、例えば、ハンドル内に統合された、又はデバイス１００のハウジング上のどこかに配置された、デバイス１００内に組み込まれたハードウェア・トリガ・スイッチである。代替的に又はこれに加えて、トリガは、表示デバイス１２６のタッチスクリーン上に表示される、ボタンなどのグラフィカル・ユーザ・インターフェース・コンポーネントとすることができる。
【００２０】
種々の実施において、カメラ１０２は、これに限定されるものではないが、ビデオ・ストリームにおける画像を含むデジタル画像を取得するように構成されたデジタルカメラ、ＲＧＢデジタルカメラ等を含むことができる。カメラ１０２の詳細は示されないが、カメラ１０２は、これらに限定されるものではないが、それぞれの電荷結合素子（ＣＣＤ）等、並びに、それぞれのレンズ、それぞれの合焦デバイス（これに限定されるものではないが、音声コイル等）などを含む、デジタル画像を取得するためのコンポーネントを含むと仮定される。従って、カメラ１０２からのデータは、一般に、２次元データ、及び具体的には、２Ｄ色座標及び／又は輝度座標のアレイを含むことができる値の２Ｄアレイを含む。深度感知デバイス１０４は、飛行時間型（ｔｉｍｅ−ｏｆ−ｆｌｉｇｈｔ；ＴＯＦ）カメラ、アクティブ・ステレオビジョンカメラ（これに限定されるものではないが、赤外線を含むそれ自体の光を投影することができる）、及びパッシブ・ステレオビジョン・カメラ（周囲光に依存する）のうちの１つ又はそれ以上を含むことができる。種々の実施において、これらの異なる技術は、異なる作業条件及び異なる作業範囲に適用することができる。例えば、直射日光においては、パッシブ・ステレオビジョン・カメラが好ましい。長い作業範囲においては、ＴＯＦが好ましく、小さいボックスを用いる室内用途においては、構造化光（ｓｔｒｕｃｔｕｒｅｄ  ｌｉｇｈｔ）（例えば、アクティブ・ステレオビジョン）が好ましい。しかしながら、他の深度感知デバイスも、本実施の範囲内にある。幾つかの実施において、深度感知デバイス１０４は、ステレオビジョンカメラを形成するカメラ１０２を含むことができる、一対のカメラを含み得る。深度感知デバイス１０４が構造化光カメラを含む場合、深度感知デバイス１０４は、構造化光を投影するように構成されたデバイスと、構造化光により照射される物理的オブジェクトの画像をキャプチャするためのカメラとを含むことができる。深度感知デバイス１０４がＴＯＦカメラを含む場合、深度感知デバイス１０４は、こうした機能を与えるためのコンポーネントを含む。
【００２１】
深度感知デバイス１０４は、視野にわたって深度を感知するように構成される。特に、深度感知デバイス１０４からの深度データを処理して、深度感知デバイス１０４の視野の３次元マップを生成することができる。従って、深度感知デバイス１０４からのデータは、３次元データと呼ぶことができ、深度座標の２次元アレイを含むことができる（例えば、２次元アレイ内の各要素は、対応する深度と関連付けられる）。
【００２２】
深度感知デバイス１０４からの深度データは、一般に、深度感知デバイス１０４から深度感知デバイス１０４の視野内のオブジェの部分までの距離を表す。幾つかの実施において、深度データは、選択された基準座標系及び／又は所定の基準座標系における３次元座標を含み得る「実世界座標」を含むこと、及び／又はこれに変換することができる。幾つかの実施において、こうした基準座標系は、深度感知デバイス１０４に関連し得る（例えば、深度感知デバイス１０４は、基準座標系の起点を含み得る）。他の実施において、こうした基準系は、例えば、倉庫内のポイント、及び／又は全地球測位システム（ＧＰＳ）デバイスを用いて求められる地理的座標などの固定座標に関連し得る。後者の実施において、デバイス１００は、ＧＰＳデバイスを含むことができ、深度感知デバイス１０４からの深度データの座標は、ＧＰＳデータベースに関して定められた起点に対して決定することができる。
【００２３】
図１に示されるように、カメラ１０２及び深度感知デバイス１０４の各々の外部コンポーネントは、デバイス１００の後側上に配置することができ、表示デバイス１２６は、デバイス１００の前側上に配置することができるので、デジタル画像及び深度データは、デバイス１００の後側でキャプチャすることができる。言い換えれば、カメラ１０２及び深度感知デバイス１０４の各々の視野は、デバイス１００の後側の面に対して垂直な軸線に沿って特定のポイントで重なり合うことがある。
【００２４】
さらに、同じく図１に示されるように、レンズ等のようなカメラ１０２及び深度感知デバイス１０４の画像キャプチャ・コンポーネント及び／又はデータ・キャプチャ・コンポーネントは、ある距離だけ隔てることができ、カメラ１０２からの画像及び深度感知デバイス１０４からの深度データは、一般に、類似の視野にわたる深度を像形成及び／又は感知する。言い換えれば、カメラ１０２及び深度感知デバイス１０４のそれぞれの視野は、一般に、実質的に重なり合う。幾つかの実施において、カメラ１０２及び深度感知デバイス１０４の、レンズ等は、可能な限り近接している。これにより、それらの間の視差が低減され、かつ、カメラ１０２により像形成されるオブジェクトについて、深度データをキャプチャできることも保証される。
【００２５】
図１及び図２の各々におけるカメラ１０２及び深度感知デバイス１０４の各々の位置は、単に概略的なものであり、必ずしもカメラ１０２及び深度感知デバイス１０４の各々の実際の相対位置を表すものではないことに留意されたい。例えば、カメラ１０２及び深度感知デバイス１０４は、デバイス１００上のどこに配置してもよい（視野は、少なくとも部分的に重なり合うので、それぞれの視野内の物理的オブジェクトは、どちらもカメラ１０２により像形成され、深度感知デバイス１０４により感知され得ると仮定する）。
【００２６】
幾つかの実施において、カメラ１０２及び深度感知デバイス１０４は、空間内の同じポイントを占めるので、それぞれの視野は同一である。幾つかの実施において、カメラ１０２は、ＲＧＢカメラ（例えば、カメラ１０２）及びＴＯＦカメラ（例えば、深度感知デバイス１０４）を含むことができる。特定の構成は変わることがあり、特定の実施によって決まる。さらに、こうした構成は、デジタル画像の前処理を可能にし、深度データが、対応する領域及び／又はピクセルを位置合わせして、「ピクセル・シャドーイング（ｐｉｘｅｌ  ｓｈａｄｏｗｉｎｇ）」及び「暗領域（ｄａｒｋ  ｒｅｇｉｏｎ）」を最小にすることを可能にする。例えば、視差のため、場合によっては、視野内のオブジェクトの配置のため、カメラ１０２に視認可能な領域が深度感知デバイス１０４には見えない、又は逆も同様である。このことは、深度データが存在する領域における画像データの不在、及び／又は画像データが存在する領域における深度データの不在をもたらし得る。そうした領域が大きい場合、それにより、本明細書で説明される技術を用いて処理されるデータが歪むことがあり、従って、カメラ１０２及び深度感知デバイス１０４の最も近い可能なコロケーション（ｃｏ−ｌｏｃａｔｉｏｎ）が好ましい。
【００２７】
プロセッサ２２０は、これらに限定されるものではないが、１つ又はそれ以上の中央プロセッサ（ＣＰＵ）及び／又は１つ又はそれ以上の処理ユニット及び／又は１つ又はそれ以上のグラフィック処理ユニットを含むプロセッサ及び／又は複数のプロセッサを含むことができ、いずれにせよ、プロセッサ２２０は、ハードウェア要素及び／又はハードウェア・プロセッサを含む。実際に、幾つかの実施において、プロセッサ２２０は、デバイス１００の機能を実装するように具体的に構成された、特定用途向け集積回路（ＡＳＩＣ）及び／又はフィールド・プログラマブル・ゲート・アレイ（ＦＰＧＡ）を含むことができる。従って、以下にさらに詳細に説明されるように、デバイス１００は、一般的なコンピューティング・デバイスではなく、デジタル画像及び深度データを用いた寸法決定、並びにバーコード走査及び読み取りを含む、特定の機能を実装するように具体的に構成されたデバイスである。例えば、デバイス１００及び／又はプロセッサ２２０は、具体的には、デジタル画像及び深度データを用いて、カメラ１０２及び深度感知デバイス１０４の視野においてオブジェクトを寸法決定し、バーコードを読み取るように構成されたエンジンを含むことができる。
【００２８】
メモリ２２２は、不揮発性ストレージ・ユニット（例えば、消去可能電子的プログラマブル読み出し専用メモリ（ＥＥＰＲＯＭ）、フラッシュメモリ等）及び揮発性ストレージ・ユニット（例えば、ランダム・アクセス・メモリ（ＲＡＭ））を含むことができる。本明細書で説明されるようなデバイス１００の機能上の教示を実装するプログラミング命令は、一般的に、メモリ２２２内に恒久的に維持され、そうしたプログラミング命令の実行中、揮発性ストレージを適切に利用するプロセッサ２２０により使用される。当業者であれば、メモリ２２２は、プロセッサ２２０上で実行可能なプログラミング命令を格納することができるコンピュータ可読媒体の一例であることを認識する。さらに、メモリ２２２はまた、メモリ・ユニット及び／又はメモリ・モジュール及び／又は不揮発性メモリの一例でもある。
【００２９】
特に、幾つかの実施において、メモリ２２２は、プロセッサ２２０により実行されたとき、プロセッサ２２０がオブジェクトの２Ｄプレビュー画像を取得するのを可能にするアプリケーション２３６を格納することができ、２Ｄプレビュー画像は２Ｄカメラ・デバイスから得られる。アプリケーション２３６はまた、プロセッサ２２０が、２Ｄプレビュー画像を処理して、１つ又はそれ以上の暗領域を判断し、オブジェクト上のコードの位置を判断することも可能にする。アプリケーション２３６はまた、プロセッサ２２０が、１つ又はそれ以上の暗領域のうちの１つ又はそれ以上に基づいてオブジェクトの３Ｄ画像を取得するのも可能にし、３Ｄ画像は３Ｄカメラ・デバイスから得られる。アプリケーション２３６はまた、プロセッサ２２０が、３Ｄ画像を処理して、深度データを判断し、オブジェクトの寸法を求めることも可能にする。アプリケーション２３６はまた、プロセッサ２２０が、処理された３Ｄ画像内の深度データに基づいて、オブジェクトの２Ｄデータ・キャプチャ画像を取得することも可能にし、２Ｄデータ・キャプチャ画像はコードをキャプチャし、かつ、２Ｄデータ・キャプチャ画像は２Ｄカメラ・デバイスから得られる。アプリケーション２３６はまた、プロセッサ２２０が、２Ｄデータ・キャプチャ画像に基づいてコードを読み取ることも可能にする。一実施形態において、プロセッサ２２０は、上記の機能を実行するために、アプリケーション２３６の代わりに又はこれに加えて、特別に構成されたファームウェアと対話する。
【００３０】
以下にさらに詳細に説明されるように、プロセッサ２２０は、カメラ１０２からデジタル画像をレンダリングすること、デジタル画像内のオブジェクトを特定すること、デコードされたバーコードを表示すること、及びそうした寸法が求められていると仮定して、オブジェクトの寸法を与えること、のうちの１つ又はそれ以上のために、表示デバイス１２６を制御するように構成することができる。
【００３１】
デバイス１００は、一般に、入力データを受け取るように構成された少なくとも１つの入力デバイス２２８を含み、これらに限定されるものではないが、キーボード、キーパッド、ポインティング・デバイス、マウス、トラックホイール、トラックボール、タッチパッド、タッチスクリーン（例えば、表示デバイス１２６と統合された）等を含む、入力デバイスのいずれかの適切な組み合わせを含むことができる。他の適切な入力デバイスも、本実施の範囲内にある。幾つかの実施において、入力デバイス２２８及び表示デバイス１２６の１つ又はそれ以上は、デバイス１００の外部にあり、プロセッサ２２０は、適切な接続及び／又はリンクを介していずれかの外部コンポーネントと通信することができる。
【００３２】
示されるように、デバイス１００は、随意的なスピーカ２３２又は随意的なマイクロフォン２３４（そのいずれも、代替的にデバイス１００の外部にあってもよい）をさらに含む。スピーカ２３２は、音声データを音に変換して、警報音、遠隔通信デバイスからの可聴式通信等のうちの１つ又はそれ以上を提供するためのいずれかの適切なスピーカを含む。マイクロフォン２３４は、音を受け取り、音声データに変換するためのいずれかの適切なマイクロフォンを含む。スピーカ２３２及びマイクロフォン２３４は、デバイス１００において電話及び／又は通信機能を実施するように組み合わせて使用することができる。
【００３３】
示されるように、プロセッサ２２０はまた、１つ又はそれ以上の通信ネットワーク（図示せず）と無線通信するように構成された、１つ又はそれ以上の無線機及び／又はコネクタ及び／又はネットワーク・アダプタとして実装することができる随意的なインターフェース２２４にも接続される。インターフェース２２４は、これらに限定されるものではないが、ユニバーサル・シリアル・バス（ＵＳＢ）ケーブル、シリアル・ケーブル、無線リンク、携帯電話リンク、セルラー式ネットワーク・リンク（これらに限定されるものではないが、ユニバーサル・モバイル遠距離通信システム（ＵＭＴＳ）、グローバル・システム・フォー・モバイル・コミュニケーションズ（ＧＳＭ（登録商標））、符号分割多元接続（ｃｏｄｅ  ｄｉｖｉｓｉｏｎ  ｍｕｌｔｉｐｌｅ  ａｃｃｅｓｓ；ＣＤＭＡ）、周波数分割複信（ｆｒｅｑｕｅｎｃｙ  ｄｉｖｉｓｉｏｎ  ｄｕｐｌｅｘｉｎｇ；ＦＤＤ）、ロング・ターム・エボリューション（ｌｏｎｇ  ｔｅｒｍ  ｅｖｏｌｕｔｉｏｎ；ＬＴＥ）、時分割複信（ｔｉｍｅ  ｄｉｖｉｓｉｏｎ  ｄｕｐｌｅｘｉｎｇ；ＴＤＤ）、ＴＤＤロング・ターム・エボリューション（ＴＤＤ−ＬＴＥ）、時分割・同期・符号分割多元接続（ｔｉｍｅ  ｄｉｖｉｓｉｏｎ  ｓｙｎｃｈｒｏｎｏｕｓ  ｃｏｄｅ  ｄｉｖｉｓｉｏｎ  ｍｕｌｔｉｐｌｅ  ａｃｃｅｓｓ；ＴＤ−ＳＣＤＭＡ）等、無線データ、Ｂｌｕｅｔｏｏｔｈ(登録商標)リンク、近距離無線通信（ｎｅａｒ  ｆｉｅｌｄ  ｃｏｍｍｕｎｉｃａｔｉｏｎ；ＮＦＣ）リンク、無線ローカル・エリア・ネットワーク（ＷＬＡＮ）リンク、ＷｉＦｉリンク、ＷｉＭａｘリンク、パケット・ベース・リンク、インターネット、アナログ・ネットワーク、公衆電話網（ＰＳＴＮ）、アクセス・ポイント等、及び／又はその組み合わせのような、２Ｇ、２．５Ｇ、３Ｇ、４Ｇ＋を含む）などの１つ又はそれ以上の通信ネットワークへの１つ又はそれ以上の通信リンクを実装するために使用されるネットワーク・アーキテクチャに対応するように構成されることが理解されるであろう。
【００３４】
示されないが、デバイス１００は、これらに限定されるものではないが、バッテリ、電源パック等、及び／又は主電源への接続、及び／又は電源アダプタ（例えば、交流−直流（ＡＣ−ＤＣ）アダプタ）を含む、電源をさらに含む。一般に、電源は、デバイス１００のコンポーネントに電力供給する。
【００３５】
従って、一般に、デバイス１００についての多種多様の構成が考えられることを理解されたい。
【００３６】
ここで、限定されない実施に従った、デジタル画像及び深度データを用いてバーコードを走査し、読み取るための方法のフローチャートのブロック図を示す図３に注意を向ける。本明細書に説明される方法及び他の方法の説明を助けるために、方法は、デバイス１００を用いて、具体的にはプロセッサ２２０により、プロセッサ２２０がメモリ２２２に格納された命令（例えば、アプリケーション２３６）を処理するときに実行されると仮定される。実際に、図１及び図２に示されるようなデバイス１００は、他の構成を有することもできる。さらに、方法の以下の議論は、デバイス１００及びその種々のコンポーネントのさらなる理解をもたらす。しかしながら、デバイス１００及び／又は本明細書で説明される方法は、変わることもあり、互いに関連して本明細書に説明されるように正確に機能する必要はなく、また、そうした変形は本実施の範囲内にあることを理解されたい。
【００３７】
それに関係なく、特に断りのない限り、本明細書で説明される方法を、示されるような正確な順序で実行する必要がないことが強調される。同様に、種々のブロックは、連続的に及び／又は並行して実行することができる。従って、本明細書で説明される方法の要素は、ここでは「ステップ」ではなく、「ブロック」と呼ばれる。しかしながら、その方法は、デバイス１００の変形上でも実施され得ることも理解されたい。
【００３８】
図３は、幾つかの実施による、バーコード走査のための例示的な方法のフローチャートを示す。本明細書で説明されるように、バーコード走査は、１つ又はそれ以上のデジタル画像及び深度データに基づく。図２及び図３を参照すると、方法は、プロセッサ２２０がオブジェクトの２次元（２Ｄ）プレビュー画像を取得するブロック３０２で開始する。種々の実施において、２Ｄプレビュー画像は、２Ｄカメラ・デバイスから得られる。ブロック３０４において、プロセッサ２２０は、２Ｄプレビュー画像を処理して、オブジェクト上の、バーコードのようなコードの位置を判断する。ブロック３０６において、プロセッサ２２０は、オブジェクトの３次元（３Ｄ）画像を取得する。種々の実施において、３Ｄ画像は、３Ｄカメラ・デバイスから得られる。
【００３９】
ブロック３０８において、プロセッサ２２０は、３Ｄ画像を処理して、深度データを判断する。幾つかの実施において、３Ｄ画像を処理することは、バーコードと関連した２Ｄプレビュー画像内のピクセルに対応する３Ｄ画像内のピクセルを判断することを含むことができる。幾つかの実施において、３Ｄ画像を処理することは、３Ｄ画像内の対応するピクセルの深度値を求めることを含むことができる。種々の実施において、深度値は、２Ｄカメラ１０２に、オブジェクトと２Ｄカメラ１０２との間の距離がどうであるかを知らせ、そのことは、２Ｄカメラ１０２がオブジェクト上でより良好に合焦するのを助ける。
【００４０】
ブロック３１０において、プロセッサ２２０は、処理された３Ｄ画像内の深度データに基づいて、オブジェクトの２Ｄデータ・キャプチャ画像を取得する。種々の実施において、２Ｄデータ・キャプチャ画像はコードをキャプチャし、２Ｄデータ・キャプチャ画像は、２Ｄカメラ・デバイスから得られる。
【００４１】
幾つかの実施において、プロセッサ２２０は、プロセッサ２２０が処理された３Ｄ画像内の深度データに基づいて２Ｄカメラ・デバイスのレンズをコードに合焦させ、それを用いて２Ｄカメラ・デバイスの焦点距離を判断することができるという点で、処理された３Ｄ画像内の深度データに基づいて、オブジェクトの２Ｄデータ・キャプチャ画像を取得する。次に、プロセッサ２２０は、２Ｄカメラのレンズを合焦させた後、２Ｄデータ・キャプチャ画像を取得する。
【００４２】
種々の実施において、プロセッサ２２０は、インジケータをユーザに提供し、そこでインジケータは、処理された３Ｄ画像内の深度データに基づいて、オブジェクトに対する最適な焦点を達成するように２Ｄカメラ・デバイスを位置決めするように、ユーザを案内する。例えば、幾つかの実施において、インジケータは、データ・キャプチャ２Ｄプレビュー画像を取得するとき、オブジェクトに対して２Ｄカメラ・デバイスを最適に位置決めするように（例えば、より近くに又はさらに離れるように）ユーザを案内することができる。
【００４３】
幾つかの実施において、プロセッサ２２０は、処理された３Ｄ画像内の深度データに基づいて、バーコードの２Ｄカメラ解像度を調整する。
【００４４】
種々の実施において、プロセッサ２２０は、処理された３Ｄ画像内の深度データが所定の深度閾値を上回るとき、２Ｄカメラからコードの画像をクロッピングする。他の実施において、深度データが、バーコードの深度が閾値を下回ることを示すとき、プロセッサ２２０は、深度値をビニングすることにより２Ｄカメラの解像度を低下させる。１つの限定されない例において、３Ｄ深度データから、プロセッサは、オブジェクト（例えば、ボックス）が接近していることを知り、２Ｄ  ＲＧＢ画像を３２６４＊２４４８から６４０＊４８０解像度に縮小する。プロセッサはこれを行うのは、６４０＊４８０解像度が、バーコードのデコードに十分であるためである。解像度が低下すると必要な計算が減り、そのため処理が加速する。別の限定されない例において、３Ｄ深度データから、プロセッサは、ボックスが遠くにあり、バーコードが、６４０＊４８０  ２Ｄ  ＲＧＢ画像で読み取るには小さすぎることを知る。これは、バーコード・デコードの失敗をもたらす。従って、プロセッサは、２Ｄ画像の解像度の元の３２６０＊２４４８解像度に調整する（例えば、増加させる）。
【００４５】
ブロック３１２において、プロセッサ２２０は、２Ｄデータ・キャプチャ画像に基づいてコードを読み取る。幾つかの実施において、コードは、バーコードとすることができる。幾つかの実施において、コードは、１次元バーコードとすることができる。他の実施において、コードは、ＱＲコード（登録商標）のような２次元バーコードとすることができる。更に別の実施形態において、プロセッサ２２０は、３Ｄ画像を用いて、ターゲット・オブジェクトを配置し、次に、２Ｄカメラ・デバイスにより後で取得される２Ｄデータ・キャプチャ画像に基づいて、ターゲット・オブジェクト上のバーコードを検索し、デコードする。
【００４６】
図４は、幾つかの実施による、寸法決定のための例示的な方法のフローチャートを示す。本明細書で説明されるように、寸法決定は、１つ又はそれ以上のデジタル画像及び深度データに基づく。図２及び図４を参照すると、方法は、プロセッサ２２０が、オブジェクトの２次元（２Ｄ）プレビュー画像を取得するブロック４０２で開始する。上述のように、２Ｄプレビュー画像は、２Ｄカメラ・デバイスから得られる。
【００４７】
ブロック４０４において、プロセッサ２２０は、２Ｄプレビュー画像を処理して、１つ又はそれ以上の暗領域を判断する。
【００４８】
ブロック４０６において、プロセッサ２２０は、処理された２Ｄプレビュー画像内の１つ又はそれ以上の暗領域に基づいて、オブジェクトの３次元（３Ｄ）画像を取得する。幾つかの実施において、３Ｄ画像を取得することは、３Ｄ画像の取得及び２Ｄプレビュー画像の取得が一緒に行われるという点で、２Ｄプレビュー画像の取得に基づく。
【００４９】
上述のように、３Ｄ画像は、３Ｄカメラ・デバイスから得られる。上述のように、３Ｄカメラ・デバイスは、赤外線カメラ・デバイスである。
【００５０】
種々の実施において、プロセッサ２２０は、暗領域に応じて３Ｄ画像を調整することができる。例えば、幾つかの実施において、プロセッサ２２０は、処理された２Ｄプレビュー画像内の１つ又はそれ以上の暗領域に基づいて、３Ｄ画像の露出時間、３Ｄ画像のゲイン、又はそれらの組み合わせを調整することができる。幾つかの実施において、露出値は、異なる暗領域について異なり得る。さらなる説明のために、幾つかの実施において、パッシブ・ステレオビジョン・システムを用いて、例えば、３Ｄ再構成を可能にするために、十分な光が必要とされる。従って、プロセッサは、２Ｄカメラ入力を組み込むことにより、ターゲット・ボックスにおいて光が十分であるかどうかを判断する。周囲光が十分でない場合、ターゲットは暗いか又は黒色であり、次に、パッシブ・ステレオビジョン・システムは、３Ｄデータを提供することができない。この場合、プロセッサは、３Ｄカメラの画像信号処理（ＩＳＰ）を調整して、露出時間及び／又はゲインを調整し、ターゲットから十分な輝度を達成する。幾つかの実施において、構造化ＩＲのような構造化光システムを用いて、暗い材料は黒色とすることができ、大部分の可視光及びＩＲ光を吸収する。２Ｄカメラにおいて、この種の材料は、暗いか又は黒色である。３Ｄ構造化光システムにおいて、ＩＲの大部分が吸収されるので、反射するＩＲ信号は少なく、暗い色の領域から３Ｄセンサにより受け取られる。従って、この種の材料は、２Ｄ画像においても３Ｄ深度マップ画像においても暗い。これらの実施の両方において、プロセッサは、３Ｄカメラ・デバイスの露出及び／又はゲインを調整し、３Ｄ画像データの取得を向上させることができる。
【００５１】
幾つかの実施において、３Ｄ画像を処理するために、プロセッサ２２０は、オブジェクトの１つ又はそれ以上の面を特定することができる。次に、プロセッサ２２０は、１つ又はそれ以上の面に基づいて、関心ある領域を決定する。幾つかの実施において、例えば、関心ある領域（ＲＯＩ）は、プレビュー画像内の十字線を用いて、ユーザにより決定することができる。ユーザは、十字線をボックス表面の１つの上に配置するように、センサ位置を調整することができる。これは、プロセッサがターゲットを配置するのを可能にする助けとなり得る。上述のように、次に、プロセッサ２２０は、処理された２Ｄプレビュー画像に基づいて、３Ｄ画像の露出時間、３Ｄ画像のゲイン、又はその組み合わせを調整することができる。幾つかの実施において、次に、プロセッサ２２０は、オブジェクトの１つ又はそれ以上の面に基づいて、オブジェクトの寸法を求めることができる。
【００５２】
ブロック４０８において、プロセッサ２２０は、３Ｄ画像を処理して、オブジェクトの寸法を求める。
【００５３】
幾つかの実施において、プロセッサ２２０は、オブジェクトの寸法を表示デバイス上に表示させることができる。幾つかの実施において、プロセッサ２２０は、オブジェクトの２Ｄデータ・キャプチャ画像を、求めた寸法と共に表示デバイス上に表示させることができる。
【００５４】
図５は、幾つかの実施による、バーコードの走査及び寸法決定のための例示的な方法のフローチャートを示す。本明細書で説明されるように、バーコードの走査及び寸法決定は、１つ又はそれ以上のデジタル画像及び深度データに基づく。図２及び図５を参照すると、ブロック５０２において、プロセッサ２２０は、オブジェクトの２Ｄプレビュー画像を取得する。上述のように、２Ｄプレビュー画像は、２Ｄカメラ・デバイスから得られる。
【００５５】
ブロック５０４において、プロセッサ２２０は、２Ｄプレビュー画像を処理し、１つ又はそれ以上の暗領域及びオブジェクト上のコードの位置を判断する。
【００５６】
ブロック５０６において、プロセッサ２２０は、１つ又はそれ以上の暗領域の１つ又はそれ以上に基づいて、オブジェクトの３Ｄ画像を取得する。上述のように、３Ｄ画像は、３Ｄカメラ・デバイスから得られる。
【００５７】
ブロック５０８において、プロセッサ２２０は、３Ｄ画像を処理して、深度データを判断し、オブジェクトの寸法を求める。
【００５８】
ブロック５１０において、プロセッサ２２０は、処理された３Ｄ画像内の深度データに基づいて、オブジェクトの２Ｄデータ・キャプチャ画像を取得する。種々の実施において、オブジェクト（例えば、ボックス）の３Ｄの位置及び寸法を用いて、境界が、それらの境界内のバーコードの検索のために確立される。種々の実施において、２Ｄデータ・キャプチャ画像はコードをキャプチャし、上述のように、２Ｄデータ・キャプチャ画像は、２Ｄカメラ・デバイスから得られる。
【００５９】
ブロック５１２において、プロセッサ２２０は、２Ｄデータ・キャプチャ画像に基づいて、コードを読み取る。
【００６０】
代替的に又はこれに加えて、プロセッサ２２０は、メモリ２２２に、オブジェクトのデジタル画像及び寸法の１つ又はそれ以上を格納することができる。代替的に及び／又はこれに加えて、プロセッサ２２０は、インターフェース２２４を用いて、オブジェクトのデジタル画像及び寸法の１つ又はそれ以上を、例えば外部デバイス及び／又は遠隔デバイスに伝送することができる。オブジェクトのデジタル画像及び寸法の１つ又はそれ以上のそうした伝送は、クラウド・ベースの倉庫業務、配送、在庫、小売、及び／又は医療目的、及び／又は他のクラウド・ベース機能と共に行うことができる。
【００６１】
幾つかの実施形態において、ボックス・サイズのようなオブジェクト・サイズの測定、及びオブジェクト上のバーコードのデコードは、本明細書に説明される方法を介して、２Ｄカメラ及び３Ｄカメラ・データを用いて並行して及び実質的に同時に達成することができる。
【００６２】
図６は、幾つかの実施による、バーコード走査及び寸法決定のための例示的なワークフローのブロック図を示す。本明細書で説明されるように、バーコード走査及び寸法決定は、１つ又はそれ以上のデジタル画像及び深度データに基づく。図示のように、２Ｄカメラ６０２は、２Ｄ画像６０４を提供する。２Ｄ画像６０４からもたらされるフローは、矢印６０６、６０８及び６１０で表される。３Ｄカメラ６１２は、３Ｄデータ６１４を提供する。３Ｄデータ６１４からもたらされるフローは、矢印６１６、６１８及び６２０で表される。矢印６０６は、２Ｄ画像が、２Ｄ画像６０４の関心ある領域（ＲＯＩ）内の暗領域に関する情報をもたらすことを示す。図示のように、種々の実施において、暗領域に関する情報は、３Ｄデータ６１４と結合される。矢印６１６は、３Ｄデータ６１４が視野内のオブジェクトに関する深度マップ及び範囲情報をもたらすことを示す。図示のように、種々の実施において、暗領域に関する情報は、２Ｄ画像６０４と関連した情報と結合される。種々の実施において、深度マップは２Ｄ画像を含み、そこで、２Ｄ画像内の各ピクセルは、センサからオブジェクト上のこの特定のポイントまでの範囲を表す。
【００６３】
種々の実施において、２Ｄ画像６０４及び３Ｄデータ６１４の両方からの入力を用いて、プレビュー画像６２２を得ることができる。これは、それぞれ、矢印６０８（２Ｄ）及び矢印６１８（３Ｄ）で示される。幾つかの実施において、２Ｄ及び３Ｄ入力の両方からのデータを重ね合わせて又は結合して、ユーザに対する案内を提供することができる。例えば、案内は、ユーザに、デバイス１００（例えば、２Ｄ及び３Ｄカメラ）をオブジェクトのより近くに又はそれからさらに離れるように動かすように指示することができる。幾つかの実施において、３Ｄ画像内の対応するピクセルが、２Ｄ画像内のピクセルと関連付けられ、深度値が読み取られる。幾つかの実施において、３Ｄカメラは、範囲情報の深度をオブジェクトに提供する。幾つかの実施において、バーコード・デコード範囲、例えば合焦の範囲は、０．５メートルと５メートルとの間である。幾つかの実施において、オブジェクトが２Ｄイメージャを介するバーコード・デコードの範囲外にある場合、エラー・メッセージをユーザに提供するために、深度情報が用いられる。幾つかの実施において、低反射率、露出過多、又は範囲外にあることにより引き起こされ得る非数（ｎｏｔ  ａ  ｎｕｍｂｅｒ；ＮＡＮ）領域」は、「画像プレビュー」として表示され得る２Ｄ及び３Ｄ画像データにおいて重なり合い、これに応じて、後のキャプチャ画像において露出及びゲイン選択を回避する又は調整するようにユーザを案内するために用いられる。種々の実施において、３Ｄデータ６１４を処理して、種々のタイプの情報を生み出す。例えば、幾つかの実施において、３Ｄデータを処理して、２Ｄカメラについての範囲限界を得ることができる。次に、範囲限界を用いて、焦点を最適化し、自動焦点能力を与えることができる。一般に、照準目的のために、２Ｄカラー画像はより直観的である。幾つかの実施において、照準は、関心ある領域を選択し、バーコードを含み得る関心あるオブジェクトを選択するために十字線を用いて達成される。
【００６４】
種々の実施において、データ・キャプチャ画像６２４は、２Ｄ画像６０４及び３Ｄデータ６１４の両方からの入力を用いて得ることができ、それらを、上に概説したように処理して、オブジェクトの深度データ、範囲情報、及び寸法等を求めることができる。これは、矢印６１０（２Ｄ）及び矢印６２０（３Ｄ）で示される。幾つかの実施において、２Ｄカメラ・デバイスから得られ、コード又はバーコードをキャプチャする２Ｄキャプチャ画像は、処理された３Ｄ画像内の深度データに基づく。２Ｄ及び３Ｄデータの組み合わせを利用して、より高い性能が達成される。例証として、３Ｄ画像からの深度データに従って、２Ｄカメラ・レンズをバーコードに合焦させることができる。付加的に、深度データに基づいて、深度が閾値を下回る場合、すなわちバーコードが十分に近い場合、デコードのためにこれをデコーダに送る前に、ビニングを用いて解像度を低下させることにより、スループットを増大させることができる。それに応じて、深度が閾値を上回る場合、デコードのためにデータをデコーダに与える前に、バーコードをクロッピングすることにより、解像度を上げることができる。
【００６５】
図７は、幾つかの実施による、物理的オブジェクトのデジタル画像、並びにその寸法及びバーコード読み出しを与える例示的なユーザ・インターフェース７００を示す。ユーザ・インターフェース７００は、バーコード７０６を上に有し得るオブジェクト７０４を含む視野の２Ｄ画像７０２を示す。十字線７０７は、オブジェクト７０４の上面７０９上に示される。幾つかの実施において、十字線７０７は、関心ある領域（ＲＯＩ）のユーザの選択を示す。幾つかの実施において、ＲＯＩは、オブジェクト７０４の選択された部分又は面のみを含むことができる。ひとたびＲＯＩが選択されると、次に、システムは、オブジェクト７０４の残り（例えば、オブジェクト７０４全体）を判断することができる。同じく、バーコード読み取り７０８及び寸法７１０も示される。種々の実施において、寸法は、長さ、幅、及び高さを含むことができる。
【００６６】
幾つかの実施において、システムは、バーコード走査及び寸法決定を実行することができ、それにより、ユーザが測定ボタン７１２を選択するのに応じて、バーコード７０６及び寸法が与えられる。幾つかの実施において、ユーザ・インターフェース７００は、ドロップダウン・メニュー７１４を提供し、ユーザが画像のタイプを選択するのを可能にする。例えば、ドロップダウン・メニュー７１４は、選択時に、特定の実施に応じて、「カラー画像」、「白黒画像」、「深度マップ」等のような選択肢を示すことができる。幾つかの実施において、ユーザ・インターフェース７００は、２Ｄ画像７０２を保存するためのボタン７１６及び関連した深度マップを保存するためのボタン７１８を含むことができる。深度マップの提供は図示されないが、本明細書での種々の実施に説明されるように、プロセッサ２２０は、依然として深度マップを生成し、深度マップは、ユーザ・インターフェース７００を介して随意的に表示すること、及び／又は保存することが可能であることに留意されたい。
【００６７】
本明細書で説明される実装は、寸法決定のための種々の既知の寸法決定技術を利用することができる。例えば、幾つかの実施において、デジタル画像において特定されるオブジェクトに属するそれぞれの深度データ及びそれぞれの関連に基づいて、オブジェクトの寸法を計算する寸法決定技術を用いることができる。幾つかの実施において、３Ｄカメラから得られ、デジタル画像において特定されたオブジェクトと関連付けられた３Ｄポイント・クラウド・データに基づいてオブジェクトの寸法を計算する寸法卦亭技術を用いることができる。
【００６８】
以下の明細書において、具体的な実施が説明された。しかしながら、当業者であれば、以下の特許請求の範囲に記載されるような本明細書の範囲から逸脱することなく、種々の修正及び変更をなし得ることを理解する。従って、本明細書及び図面は、限定的な意味ではなく、例証的な意味とみなされるべきであり、また、全てのそのような修正は、本教示の範囲内に含まれることが意図される。
【００６９】
何らかの利益、利点、又は解決法をもたらし、又はより顕著にすることができる利益、利点、問題に対する解決法、及び任意の要素は、何れかの又は全ての特許請求の範囲の不可欠な、必要な又は本質的な特徴又は要素とみなすべきではない。本発明は、本出願の係属中に行われるあらゆる補正を含む添付の特許請求の範囲、及び発行された特許請求の範囲の全ての均等物によってのみ定められる。
【００７０】
さらに、本文書において、第１及び第２、上部及び底部、並びに同様のもののような関係を示す用語は、１つのエンティティ又は動作を別のエンティティ又は動作と区別するためのみに用いることができ、このようなエンティティ又は動作の間の何らかの実際のこのような関係又は順序を必ずしも必要とせず、又は意味するものではない。用語「備える」、「備えている」、「有する」、「有している」、「含む」、「含んでいる」、「収容する」、「収容している」、又はこれらの何れかの他の変形は、非排他的な包含をカバーすることが意図されており、要素のリストを備える、有する、含む、又は包含するプロセス、方法、物品、又は装置は、これらの要素のみを含むだけでなく、明白に列挙されていない他の要素、又はこのようなプロセス、方法、物品、又は装置に特有の他の要素を含むこともできる。「〜を備える」、「〜を有する」、「〜を含む」、「〜を包含する」の前にある要素は、それ以上の制約なしに、その要素を備える、有する、含む、又は包含するプロセス、方法、物品、又は装置における付加的な同一要素の存在を除外するものではない。用語「１つ（ａ）」及び「１つ（ａｎ）」は、本明細書において特に明示的に指定のない限り、１又はそれ以上のものとして定義される。用語「実質的に」、「本質的に」、「およそ」、「約」、又は他のこれらの何らかの変形は、当業者によって理解されるように近接したものとして定義され、限定されない実施では、これらの用語は、１０％以内と定められ、別の実施では５％以内、別の実施では１％以内、更に別の実施では０．５％以内と定義される。本明細書で使用される用語「結合される」は、接続されるとして定義されるが、必ずしも直接的な接続及び機械的な接続ではない。特定の方法で「構成される」デバイス又は構造は、少なくともその方法で構成されるが、列挙されていない方法で構成することもできる。
【００７１】
一部の実施は、特定の非プロセッサ回路と協働して、本明細書で説明される方法及び／又は装置の一部、大部分、又は全ての機能を実施するように、１又はそれ以上のプロセッサを制御する、マイクロプロセッサ、デジタル・シグナル・プロセッサ、カスタマイズされたプロセッサ、フィールド・プログラマブル・ゲートアレイ（ＦＰＧＡ）、及び固有の格納プログラム命令（ソフトウェア及びファームウェアの両方を含む）のような１又はそれ以上の汎用又は専用プロセッサ（又は「処理デバイス」）から構成できることが理解されるであろう。或いは、一部又は全ての機能は、格納プログラム命令を有していない状態機械によって、又は１又はそれ以上の特定用途向け集積回路（ＡＳＩＣ）において実装することができ、各機能又は特定の機能の一部の組み合わせは、カスタム論理として実装される。当然ながら、２つの手法の組み合わせを使用することもできる。
【００７２】
さらに、一実施は、本明細書で説明される方法及び特許請求される方法を実行するようにコンピュータ（例えば、プロセッサを備える）をプログラミングするために格納されるコンピュータ可読コードを有するコンピュータ可読記憶媒体として実装することができる。このようなコンピュータ可読記憶媒体の例として、これらに限定されるものではないが、ハードディスク、コンパクト・ディスク・読み取り専用メモリ（ＣＤ−ＲＯＭ）、光記憶デバイス、磁気記憶デバイス、読み取り専用メモリ（ＲＯＭ）、プログラマブル読み取り専用メモリ（ＰＲＯＭ）、及び消去可能プログラマブル読み取り専用メモリ）、ＥＥＰＲＯＭ（電気的消去可能プログラマブル読み取り専用メモリ）、及びフラッシュメモリが挙げられる。さらに、当業者には、例えば、利用可能な時間、現在の技術及び経済的な考慮事項によって動機付けられる可能な多大な労力及び多くの設計上の選択肢にもかかわらず、本明細書で開示される概念及び原理により導かれたとき、最小限の試みでこのようなソフトウェア命令、プログラム、及びＩＣを容易に生成できることが予期される。
【００７３】
本開示の要約書は、読み手が技術開示の性質を迅速に確認できるようにするために提供される。要約書は、特許請求の範囲の範囲又は意味を解釈又は限定するために使用されるものではないという理解の下に提示される。さらに、上記の詳細な説明では、本開示を簡素化するために、種々の実施において種々の特徴がグループ化されていることが分かる。本開示の方法は、特許請求される実施態が、各請求項において明示的に記載されるよりも多くの特徴を必要とするという意図を示すものと解釈すべきではない。むしろ、以下の特許請求の範囲が示すように、本発明の主題は、開示される単一の実施の全ての特徴に存在するわけではない。従って、以下の特許請求の範囲は、詳細な説明に組み込まれており、各請求項は、別個に特許請求される主題として独立している。
【符号の説明】
【００７４】
１００：デバイス
１０２：カメラ
１０４：深度感知デバイス１０４
１２６：表示デバイス
２２０：プロセッサ
２２２：メモリ
２２４：通信インターフェース
２２８：入力デバイス
２３２：スピーカ
２３４：マイクロフォン
２３６：アプリケーション
６０２：２Ｄカメラ
６０４、７０２：２Ｄ画像
６１２：３Ｄカメラ
６１４：３Ｄデータ
６２２：プレビュー画像
７００：ユーザ・インターフェース
７０６：バーコード
７０４：オブジェクト
７０７：十字線
７０８：バーコード読み取り
７１０：寸法
７１２：ボタン
７１４：ドロップダウン・メニュー
【図１】
2019519022.tif 000003
【図２】
2019519022.tif 000004
【図３】
2019519022.tif 000005
【図４】
2019519022.tif 000006
【図５】
2019519022.tif 000007
【図６】
2019519022.tif 000008
【図７】
2019519022.tif 000009
【国際調査報告】
2019519022.tif 000010
2019519022.tif 000011
2019519022.tif 000012