(57)【要約】      （修正有）【課題】シンボル読み取りのためのローカルトーンマッピングを適切に行う。【解決手段】関心領域における少なくとも１つの生ピクセルに対してローカルピクセル周辺メトリックを決定し、このローカルピクセル周辺メトリックは少なくとも１つの生ピクセルの近傍の１つ以上の生ピクセル上で識別される。生画像と関連付けられたビット深度より小さいマッピングされたビット深度を有するマッピングされたピクセル値に生ピクセルの値をマッピングする、少なくとも１つの生ピクセルに対するローカルマッピング関数を決定する。ローカルマッピング関数は、ローカルピクセル周辺メトリックの範囲内にある少なくとも１つの生ピクセルの近傍の少なくとも１つの他の生ピクセルの値と、生画像に基づいて決定された少なくとも１つのパラメータとに基づいている。生画像にローカルマッピング関数を適用することによって関心領域に対するマッピングされた画像を計算する。【選択図】図１４
2019125356.tif 000002
【特許請求の範囲】
【請求項１】
バーコードシンボルを読み取るための方法であって、
バーコードシンボルの生画像を取得するステップであって、前記生画像の各ピクセルは生ビット深度を有するデジタル値を持っている、前記ステップ、
前記生画像の関心領域を識別するステップ、
前記関心領域における少なくとも１つの生ピクセルに対して、前記生画像中のバーコードのシンボル体系の属性に基づいてローカルピクセル周辺メトリックを決定するステップであって、このローカルピクセル周辺メトリックは前記少なくとも１つの生ピクセルの近傍の１つ以上の生ピクセル上で識別される、前記ステップ、
生画像と関連付けられたビット深度より小さいマッピングされたビット深度を有するマッピングされたピクセル値に生ピクセルの値をマッピングする、前記少なくとも１つの生ピクセルに対するローカルマッピング関数を決定するステップであって、前記ローカルマッピング関数は：
前記ローカルピクセル周辺メトリックの範囲内にある前記少なくとも１つの生ピクセルの近傍の１組の生ピクセルの値、および
生画像に基づいて決定された少なくとも１つのパラメータとに基づいている、前記ステップ、
前記関心領域に対するマッピングされた画像を計算するステップであって、このことはマッピングされたピクセル値を生成するために生画像中の生ピクセル値にローカルマッピング関数を適用することによって、マッピングされた画像中の少なくとも１つのマッピングされたピクセル値に対するピクセル値を決定することを含んでいる、前記ステップ、ならびに
マッピングされた画像を使用してバーコードシンボルをデコードするステップ、
を含む上記方法。
【請求項２】
強度値は、ローカルピクセル周辺メトリックに基づいて決定されたカーネルサイズを有するガウスカーネルを適用することによって決定され、関心領域に対するマッピングされた画像を計算する上記ステップは、決定されたカーネルサイズを有するガウスカーネルをローカルマッピング関数を生画像中の生ピクセル値に適用してマッピングされたピクセル値を生成することを含む、請求項１に記載の方法。
【請求項３】
関心領域を識別する上記ステップは：
バーコードシンボルを含んでいる生画像中の領域を識別すること；
生画像全体を識別すること；
生画像中の所定の領域を識別すること；または
それらの組み合わせ；
を含む、請求項１に記載の方法。
【請求項４】
当該方法は当該方法がＦＰＧＡによって実行できるように構成されている、請求項１に記載の方法。
【請求項５】
前記ローカルマッピング関数は、前記ローカルピクセル周辺メトリックの範囲内のすべての生ピクセル値のピクセル値に依存する、請求項１に記載の方法。
【請求項６】
前記ローカルマッピング関数はラインハルト演算子である請求項５に記載の方法。
【請求項７】
マッピングされた画像を計算する前記ステップは、前記関心領域における各生ピクセルに異なるマッピング関数を適用することを含む、請求項１に記載の方法。
【請求項８】
前記属性は、少なくとも最小サイズ、最大サイズ、またはその両方を含む、請求項１に記載の方法。
【請求項９】
前記属性は、モジュールサイズ範囲、特徴サイズ範囲、シンボル幅範囲、またはシンボル高さ範囲のうちの１つ以上を含む、請求項８に記載の方法。
【請求項１０】
前記属性は、バーコードシンボルの第２の画像に基づいて決定される、請求項１に記載の方法。
【請求項１１】
前記第２の画像は、同じバーコードシンボルから取得された以前の画像、調整フェーズ中に異なるバーコードシンボルから取得された画像、またはそれらの何らかの組み合わせである、請求項１０に記載の方法。
【請求項１２】
前記少なくとも１つのパラメータは、バーコードシンボルの第２の画像に基づいて決定される、請求項１に記載の方法。
【請求項１３】
前記第２の画像は、同じバーコードシンボルから取得された以前の画像、調整フェーズ中に異なるバーコードシンボルから取得された画像、またはそれらの何らかの組み合わせである、請求項１２に記載の方法。
【請求項１４】
さらに、マッピングされたピクセル値を生成するために生画像中の生ピクセル値にグローバルマッピング関数を適用することにより、マッピングされた画像中の少なくとも１つのマッピングされたピクセル値のためのピクセル値にグローバルトーンマッピング技術を適用するステップを含む、請求項１に記載の方法。
【請求項１５】
さらに、画像に対して前記グローバルマッピング関数、前記ローカルマッピング関数、またはその両方を調整するステップを含む、請求項１に記載の方法。
【請求項１６】
さらに、値を決定するステップ、前記１組の生ピクセルの強度を決定するステップ、および前記１組のピクセル内の各ピクセルの強度値に基づいてコントラストを決定するステップを含む、請求項１に記載の方法。
【請求項１７】
前記１組の生ピクセルの強度を決定するステップは、前記１組のピクセル内の各ピクセルの強度値の加重平均を決定することを含む、請求項１６に記載の方法。
【請求項１８】
コントラストを決定するステップは、前記１組のピクセル内の各ピクセルの強度値の加重標準偏差を決定することを含む、請求項１６に記載の方法。
【請求項１９】
バーコードシンボルを読み取るための装置であって、メモリと通信するプロセッサを備えており、プロセッサはメモリに記憶された命令を実行して、それによりプロセッサは：
バーコードシンボルの生画像を取得するステップであって、前記生画像の各ピクセルは生ビット深度を有するデジタル値を持つ、前記ステップ、
前記生画像の関心領域を識別するステップ、
前記関心領域における少なくとも１つの生ピクセルに対して、前記生画像中のバーコードのシンボル体系の属性に基づいてローカルピクセル周辺メトリックを決定するステップであって、このローカルピクセル周辺メトリックは少なくとも１つの生ピクセルの近傍の１つ以上の生ピクセル上で識別される、前記ステップ、
生画像と関連付けられたビット深度より小さいマッピングされたビット深度を有するマッピングされたピクセル値に生ピクセルの値をマッピングする、前記少なくとも１つの生ピクセルに対するローカルマッピング関数を決定するステップであって、前記ローカルマッピング関数は：
前記ローカルピクセル周辺メトリックの範囲内にある前記少なくとも１つの生ピクセルの近傍の１組の生ピクセルの値、および
画像に基づいて決定された少なくとも１つのパラメータとに基づいている、前記ステップ、
前記関心領域に対するマッピングされた画像を計算するステップであって、このことはマッピングされたピクセル値を生成するために生画像中の生ピクセル値にローカルマッピング関数を適用することによって、マッピングされた画像中の少なくとも１つのマッピングされたピクセル値に対するピクセル値を決定することを含んでいる、前記ステップ、ならびに
マッピングされた画像を使用してバーコードシンボルをデコードするステップ、
をなすように構成されていている、
上記装置。
【請求項２０】
プロセッサ実行可能命令を保存する少なくとも１つの非一時的コンピュータ可読記憶媒体であって、前記命令が少なくとも１つのコンピュータハードウェアプロセッサによって実行されると、少なくとも１つのコンピュータハードウェアプロセッサは、
バーコードシンボルの生画像を取得するステップであって、前記生画像の各ピクセルは生ビット深度を有するデジタル値を持っている、前記ステップ、
前記生画像の関心領域を識別するステップ、
前記関心領域における少なくとも１つの生ピクセルに対して、前記生画像中のバーコードのシンボル体系の属性に基づいてローカルピクセル周辺メトリックを決定するステップであって、このローカルピクセル周辺メトリックは前記少なくとも１つの生ピクセルの近傍の１つ以上の生ピクセル上で識別される、前記ステップ、
生画像と関連付けられたビット深度より小さいマッピングされたビット深度を有するマッピングされたピクセル値に生ピクセルの値をマッピングする、前記少なくとも１つの生ピクセルに対するローカルマッピング関数を決定するステップであって、前記ローカルマッピング関数は：
ローカルピクセル周辺メトリックの範囲内にある前記少なくとも１つの生ピクセルの近傍の１組の生ピクセルの値、および
生画像に基づいて決定された少なくとも１つのパラメータとに基づいている、
前記ステップ、
前記関心領域に対するマッピングされた画像を計算するステップであって、このことはマッピングされたピクセル値を生成するために生画像中の生ピクセル値にローカルマッピング関数を適用することによって、マッピングされた画像中の少なくとも１つのマッピングされたピクセル値に対するピクセル値を決定することを含んでいる、前記ステップ、ならびに
マッピングされた画像を使用してバーコードシンボルをデコードするステップ、
を実行する上記非一時的コンピュータ可読記憶媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
［関連出願］
本出願は、２０１７年１２月６日に出願された「シンボル読み取りのためのローカルトーンマッピング」と題する米国仮出願第６２／５９５５２２に対して米国特許法第１１９条（ｅ）の下での優先権を主張し、参照によりその全体が本明細書に組み込まれる。
【０００２】
［技術分野］
本明細書に記載された技術は、概略、シンボルを読み取るために使用されるマシンビジョン技術などのシンボル読み取りのための高ダイナミックレンジ画像の圧縮に関する。
【背景技術】
【０００３】
オブジェクトの自動識別および追跡は、例えば光学シンボルを使用する製品において多くの用途がある。光学シンボルは、何らかの所定の規則に従って編成された、異なる光反射率または放射を有する要素のパターンである。既知の光学コードは、種々の消費者製品に使用されている線形バーコードである。線形バーコードはバーまたはスペースを直線的に含む。バーコードは、例えば平行なバーとスペースが交互する１つ以上の空間的に隣接したシーケンスを含む長方形の識別シンボルであり得る。各々のバーとスペースはしばしばエレメントと呼ばれる。１つ以上の連続したエレメントのシーケンスが、１つのエレメントシーケンスを構成する。バーコードエレメントシーケンス内の要素は、その相対幅によって情報をエンコードできる。当技術分野において公知の２次元バーコードの例は、コード１２８、ＵＰＣ、インターリーブド２オブ５、コーダバー、ファーマコード、コード３９およびデータバーのタイプのシンボル体系を含む。
【０００４】
光学コードは、情報を２次元で符号化することもできる。２次元シンボルは、モジュールまたはドットの空間的配列を含むことができる。モジュールが「オン」か「オフ」か、またはドットが存在するか存在しないかに応じて、情報は２次元シンボルにエンコードされる。当技術分野で知られている２次元シンボルの例は、データマトリックス、ＱＲコード（登録商標）、ＰＤＦ４１７、およびマキシコードのタイプのシンボル体系を含む。
【０００５】
通常、シンボルは一様な反射率の基材（例えば紙または金属）上にバーエレメントまたはモジュールを印刷する（例えばインクで）またはマーキングする（例えばエッチングで）ことによって作られる。紙基材上では、印刷されたエレメントおよびモジュールは通常基材よりも低い反射率を有し、したがってそれらの間の印刷されていないスペースまたはモジュールよりも暗く見える（例えばシンボルが黒インクを使用して白い紙の上に印刷された場合）。シンボルは他の方法でも印刷でき、例えばシンボルは黒いオブジェクトの上に白い塗料を使用して印刷される。シンボルを背景からより容易に区別するために、シンボルは通常他の印刷構造または可視構造から相対的に離して配置される。そのような距離は、しばしばクワイエットゾーンと呼ばれるスペースを作り出す。線形バーコードシンボルの場合、このクワイエットゾーンは通常最初のバーの前と最後のバーの後の両方である。２次元シンボルの場合、このクワイエットゾーンは通常シンボルの四方にある。あるいは、スペースまたは「オフ」モジュールおよびクワイエットゾーンは、印刷またはマーキングすることができ、バーまたは「オン」モジュールは基材によって暗黙的に形成される。
【０００６】
シンボルにエンコードされた情報は、固定設置型装置や携帯用ハンドヘルドデバイスの光学読み取り機を使用してデコードできる。例えば固定設置型装置の場合、移送ラインは固定設置型の読み取り機の範囲内でシンボルでマークされたオブジェクトを移動させ、それによってシンボルの画像を生成できる。画像ベースの読み取り機は、通常視野（ＦＯＶ）の２次元画像を生成できる少なくとも１つのセンサを含んでいる。例えば多くのシステムは現在２次元電荷結合素子（ＣＣＤ）画像センサを採用しており、これは画像を取得し、その画像は次にプロセッサによって受信される。プロセッサは画像データを調べてシンボル候補を識別し、およびそれらのシンボル候補をデコードするようにプログラムされている。読み取り機は視野（ＦＯＶ）の画像を急速に連続して取得し、取得したシンボル候補をできるだけ速くデコードするようにプログラムすることができる。プロセッサはコード候補をデコードするために１つ以上のデコードアルゴリズムを実行する。
【０００７】
バーコードリーダは、一般的に２つのカテゴリー、すなわちレーザースキャナーまたはイメージベースの他の読み取り機に分類される。画像ベースの他の読み取り機は、産業の広い範囲であるキャナーに取って代わりつつある。シンボル候補を特定してデコードするための画像ベースの方法は、当技術分野において周知である。画像ベースのデコーディングアルゴリズムの例は、「バーコードのデコーディング」と題する米国特許出願第９６０７２００号、「１次元信号の抽出のための方法および装置」と題する米国特許出願第９５８９１９９号、「バーコードのデコード」と題する米国特許第９３６１４９９号、および「１次元信号抽出のための方法および装置」と題する米国特許出願第９２１８５３６号を含み、参照によりその全体が本明細書に組み込まれる。
【０００８】
シンボルの画像を取得する場合、画像の品質は幾つかの要因、例えばシンボルが適用されている表面に対する他の読み取り機の角度、シンボルが適用されている表面の材料とテクスチャ、シンボルのマーキング品質やマーキング後に起こる何らかの損傷、周囲の特性（例えば強度、波長、方向など）および読み取り機の照明、何らかの適用されたシンボルの歪み、シンボルが他の読み取り機に対して移動する速度（例えばコンベアベルト上）、シンボルが適用されている表面から他の読み取り機までの距離、光学ブラー、センサ／カメラの解像度、何らかのセンサノイズ、何らかのモーションブラー（センサ露光中の部分の動きの結果）などによって異なる。画像品質は、シンボルをデコードするために特定のアルゴリズムを実行するプロセッサの能力に影響を与える。例えば他の読み取り機はあるシンボル、例えば照明が乏しいシンボルおよび／または識別もしくは区別が困難な特徴をデコードするのにしばしば困難を伴う。例えば画像ベースのシンボルの他の読み取り機は通常区別可能なシンボルの細部を備える限られたビット深度（通常８ビット）の画像を必要とする。しかし多くの画像は乏しい照明でキャプチャされ、シーンは高ダイナミックレンジを有し得る（例えば限られたビット深度画像を有するセンサによっては直接キャプチャできない画像全体にわたるピクセル値の非常に大きいレンジ）。そのような場合、単一の画像（やはり通常８ビット）はシンボルの読み取りに必要とされるすべての情報をキャプチャできない。その一例が、丸い光沢のある金属部品上のＤＰＭ（ダイレクトパーツマーキング）シンボルの読み取りである。そのようなサンプル上に印刷されたデータマトリックスコードのようなシンボルは、通常強い鏡面反射のために露光過多と露光不足の領域の両方を含んでいる。したがってシンボルは単一の画像では部分的に見えないか、または表示品質が低いことがある。例えば暗い領域の細部をキャプチャするために明るい領域が最も高いピクセル値に一様にクリッピングされ、あるいは明るい領域の細部をキャプチャするために暗い領域が最小のピクセル値に一様にクリッピングされることがある。他の例として小包の取り扱いなどの用途では、背の高いオブジェクト（例えば箱）が他の読み取り機上の光に非常に近すぎて過飽和になることがあり、また小さいオブジェクトは読み取り機から離れすぎて十分照明されないことがある。
【０００９】
固定設置型装置のような構成では、光学読み取り機は同じオブジェクトと適用されたシンボルの多数の画像を取得することができる。例えば複数の８ビット画像を異なるゲインまたは露出で取得し、融合して合成画像を形成することができる。しかしながら画像融合は、デコードがリアルタイムで実行され得ないように、登録、画像のバッファリング、および／または著しい処理を必要とすることがある。
【発明の概要】
【００１０】
本明細書に記載の技術は幾つかの実施形態において、明細書に記載された技術を用いて高ダイナミックレンジ（ＨＤＲ）画像を限られたビット深度（通常８ビット）の画像に圧縮するが、この技術は一部ピクセルの局所的特徴に基づいている。圧縮された限られたビット深度の画像は、デコーダの入力画像として使用される。幾つかの実施形態では、レンダリングされた限られたビット深度の画像は（例えば追加のハードウェアを必要とせずに）露出過多領域と露出不足領域の両方から細部を回復して保持する。生成された画像を用いてデコードすることにより、例えばデコード率、デコード速度および／またはデコード成功率を向上させることができる。
【００１１】
幾つかの態様では、本技術はバーコードシンボルを読み取るための方法を特徴とする。この方法はシンボルの生画像を取得することを含んでおり、生画像の各ピクセルは生ビット深度を有するデジタル値を持つ。この方法は、生画像の関心領域を識別し、この関心領域における少なくとも１つの生ピクセルに対してローカルピクセル周辺メトリックを決定することを含んでおり、このローカルピクセル周辺メトリックは少なくとも１つの生ピクセルの近傍の１つ以上の生ピクセル上で識別され、ローカルピクセル周辺メトリックは生画像中のシンボルの少なくとも１つの属性に基づいて決定される。この方法は、生画像と関連付けられたビット深度より小さいマッピングされたビット深度を有するマッピングされたピクセル値に生ピクセルの値をマッピングする、少なくとも１つの生ピクセルに対するローカルマッピング関数を決定することを含んでおり、このローカルトーンマッピング関数はローカルピクセル周辺メトリックの範囲内の少なくとも１つの生ピクセルの近傍の少なくとも１つの他の生ピクセルの値と、生画像に基づいて決定された少なくとも１つのパラメータに基づいている。この方法は、関心領域に対するマッピングされた画像を計算することを含んでおり、このことはマッピングされたピクセル値を生成するために生画像中の生ピクセル値にローカルマッピング関数を適用することによって、マッピングされた画像中の少なくとも１つのマッピングされたピクセル値に対するピクセル値を決定することを含む。この方法は、マッピングされた画像を使用してシンボルをデコードすることを含んでいる。
【００１２】
幾つかの例では、シンボルはバーコードシンボルである。
【００１３】
幾つかの例では、関心領域を識別することは、バーコードシンボルを含んでいる生画像中の領域を識別すること、生画像全体を識別すること、生画像中の所定の領域を識別すること、またはそれらの何らかの組み合わせを包含している。
【００１４】
幾つかの例では、この方法は当該方法がＦＰＧＡによって実行できるように構成される。
【００１５】
幾つかの例では、ローカルマッピング関数は、ローカルピクセル周辺メトリックの範囲内のすべての生ピクセル値のピクセル値に依存する。幾つかの例では、ローカルマッピング関数はラインハルト演算子である。
【００１６】
幾つかの例では、マッピングされた画像を計算することは、関心領域における各生ピクセルに異なるマッピング関数を適用することを含む。
【００１７】
幾つかの例では、少なくとも１つのシンボル属性は、モジュールサイズ範囲、最小特徴サイズ範囲、シンボル幅の範囲、またはシンボル高さの範囲のうちの１つ以上を含む。
【００１８】
幾つかの例では、少なくとも１つのシンボル属性は、シンボルの第２の画像に基づいて決定される。幾つかの例では、この第２の画像は同じシンボルから取得された以前の画像である。幾つかの例では、この第２の画像は、調整フェーズ中に異なるバーコードシンボルから取得した画像である。
【００１９】
幾つかの例では、少なくとも１つのパラメータはシンボルの第２の画像に基づいて決定される。幾つかの例では、この第２の画像は同じシンボルから取得された以前の画像である。幾つかの例では、この第２の画像は、調整フェーズ中に異なるシンボルから取得された画像である。
【００２０】
幾つかの例では、マッピングされたピクセル値を生成するために生画像中の生ピクセル値にグローバルマッピング関数を適用することにより、マッピングされた画像中の少なくとも１つのマッピングされたピクセル値のためのピクセル値にグローバルトーンマッピング技術を適用する。幾つかの例では、画像に対するグローバルマッピング関数、ローカルマッピング関数、またはその両方。
【００２１】
幾つかの態様では、この技術はバーコードシンボルを読み取る方法を特徴とする。この方法は、バーコードシンボルの生画像を取得することを含み、生画像の各ピクセルは生ビット深度を有するデジタル値を持つ。この方法は生画像の関心領域を識別することを含んでいる。この方法は、関心領域におけるの少なくとも１つの生ピクセルのローカルピクセル周辺メトリックを、生画像中のバーコードのシンボル体系の属性に基づいて決定し、ローカルピクセル周辺メトリックは少なくとも１つの生ピクセルの近傍の１つ以上の生ピクセル上で識別される。この方法は、生画像に関連付けられたビット深度より小さいマッピングされたビット深度にマッピングされたピクセル値に生ピクセルの値をマッピングする少なくとも１つの生ピクセルのローカルマッピング関数を決定し、ローカルマッピング関数はローカルピクセル周辺メトリックの範囲内の少なくとも１つの生ピクセルの近傍の１組の生ピクセルの値と、生画像に基づいて決定された少なくとも１つのパラメータに基づいている。この方法は、関心領域のためのマップ画像を計算することを含んでおり、このことはマッピングされたピクセル値を生成するために生画像中の生ピクセル値にローカルマッピング関数を適用することによって、マッピングされた画像中の少なくとも１つのマッピングされたピクセル値に対するピクセル値を決定することを含む。この方法は、マッピングされた画像を使用してバーコードシンボルをデコードすることを含んでいる。
【００２２】
幾つかの態様では、本技術はバーコードシンボルを読み取るための装置に関する。この装置は、メモリと通信するプロセッサを含んでおり、プロセッサはメモリに記憶された命令を実行して、バーコードシンボルの生画像を取得するように構成されており、この生画像の各ピクセルは生ビット深度を有するデジタル値を持っている。プロセッサはメモリに記憶された命令を実行して、生画像の関心領域を識別するように構成されている。プロセッサはメモリに記憶された命令を実行して、関心領域における少なくとも１つの生ピクセルに対して、生画像中のバーコードのシンボル体系の属性に基づいてローカルピクセル周辺メトリックを決定するように構成されており、このローカルピクセル周辺メトリックは少なくとも１つの生ピクセルの近傍の１つ以上の生ピクセル上で識別される。プロセッサはメモリに記憶された命令を実行して、生画像と関連付けられたビット深度より小さいマッピングされたビット深度を有するマッピングされたピクセル値に生ピクセルの値をマッピングする、少なくとも１つの生ピクセルに対するローカルマッピング関数を決定するように構成されており、このローカルピクセル周辺メトリックは、ローカルピクセル周辺メトリックの範囲内にある少なくとも１つの生ピクセルの近傍の１組の生ピクセルの値と、画像に基づいて決定された少なくとも１つのパラメータとに基づいている。プロセッサはメモリに記憶された命令を実行して、関心領域に対するマッピングされた画像を計算するように構成されており、このことはマッピングされたピクセル値を生成するために生画像中の生ピクセル値にローカルマッピング関数を適用することによって、マッピングされた画像中の少なくとも１つのマッピングされたピクセル値に対するピクセル値を決定することを含む。プロセッサはメモリに記憶された命令を実行して、マッピングされた画像を用いてバーコードシンボルをデコードするように構成されている。
【００２３】
幾つかの態様では、本技術はプロセッサ実行可能命令を保存する少なくとも１つの非一時的コンピュータ可読記憶媒体に関し、命令が少なくとも１つのコンピュータハードウェアプロセッサによって実行されるとバーコードシンボルの生画像を取得する動作を実行し、ここで生画像の各ピクセルは生ビット深度を有するデジタル値を持つ。命令により少なくとも１つのコンピュータハードウェアプロセッサは、生画像の関心領域を識別する。命令により少なくとも１つのコンピュータハードウェアプロセッサは、関心領域における少なくとも１つの生ピクセルに対して、生画像中のバーコードのシンボル体系の属性に基づいてローカルピクセル周辺メトリックを決定し、ここでローカルピクセル周辺メトリックは少なくとも１つの生ピクセルの近傍の１つ以上の生ピクセル上で識別される。命令により少なくとも１つのコンピュータハードウェアプロセッサは、生画像と関連付けられたビット深度より小さいマッピングされたビット深度を有するマッピングされたピクセル値に生ピクセルの値をマッピングする、少なくとも１つの生ピクセルに対するローカルマッピング関数を決定し、ここでローカルマッピング関数は、ローカルピクセル周辺メトリックの範囲内にある前記少なくとも１つの生ピクセルの近傍の１組の生ピクセルの値と、生画像に基づいて決定された少なくとも１つのパラメータとに基づいている。命令により少なくとも１つのコンピュータハードウェアプロセッサは、関心領域に対するマッピングされた画像を計算し、このことはマッピングされたピクセル値を生成するために生画像中の生ピクセル値にローカルマッピング関数を適用することによって、マッピングされた画像中の少なくとも１つのマッピングされたピクセル値に対するピクセル値を決定することを含んでいる。命令により少なくとも１つのコンピュータハードウェアプロセッサは、マッピングされた画像を使用してバーコードシンボルをデコードする。
【００２４】
以上、開示された主題の特徴をかなりおおまかに概説したが、それは以下の詳細な説明がよりよく理解され、また当技術分野に対する本発明の寄与がよりよく理解されるようにするためである。当然のことながら以下では開示された主題の追加の特徴が説明されるが、それらは添付の特許請求の範囲の主題を形成する。本明細書で使用されている表現および用語は説明を目的としており、限定と見なすべきではないことを理解されたい。
【００２５】
添付の図面は一定の縮尺で描くことを意図したものではない。図面では、種々の図に示されているそれぞれの同一またはほぼ同一の構成要素は同じ数字で表されている。見やすさのために、すべての図面ですべての構成要素が表示されているとは限らない。図面において
【図面の簡単な説明】
【００２６】
【図１】幾つかの実施形態による例示的な画像処理システムを示す。
【図２】幾つかの例によるグローバルトーンマッピング技術を示す。
【図３】幾つかの実施形態により、ローカルトーンマッピングを使用して高ダイナミックレンジ画像を圧縮するための例示的なコンピュータプロセスのフローチャートを示す。
【図４Ａ】幾つかの例による、ガウスカーネルサイズが画像処理に及ぼし得る影響を示す。
【図４Ｂ】幾つかの例による、ガウスカーネルサイズが画像処理に及ぼし得る影響を示す。
【図５Ａ】幾つかの施例により、１２ビット画像において、それぞれ４−１１ビット、３−１０ビット、２−９ビットを示す。
【図５Ｂ】幾つかの施例により、１２ビット画像において、それぞれ４−１１ビット、３−１０ビット、２−９ビットを示す。
【図５Ｃ】幾つかの施例により、１２ビット画像において、それぞれ４−１１ビット、３−１０ビット、２−９ビットを示す。
【図６】幾つかの実施形態により、本明細書に記載の技術に従ってローカルトーンマッピングされたＨＤＲ画像の一例を示す。
【図７】取得された１２ビットＨＤＲ画像の最上位の８ビットと最下位の８ビットである２つの８ビット画像、および幾つかの実施形態により、本明細書で述べるローカルトーンマッピング技術を使用して同じＨＤＲから作成された８ビット画像の例を示す。
【図８】幾つかの実施形態により、グローバルトーンマッピング技術を使用して作成された画像と、本明細書に開示されるローカルトーンマッピング技術を使用して作成された画像とを比較する。
【図９Ａ】８ビット画像（１２ビットＨＤＲ画像の最上位の８ビット）を、幾つかの実施形態により（同じ１２ビットＨＤＲ画像から）ローカルトーンマッピングされた画像と比較する。
【図９Ｂ】８ビット画像（１２ビットＨＤＲ画像の最上位の８ビット）を、幾つかの実施形態により（同じ１２ビットＨＤＲ画像から）ローカルトーンマッピングされた画像と比較する。
【図１０】幾つかの実施形態により、シーンキーがどのようにＨＤＲ画像からより低いビット深度の画像へのピクセルのマッピングに影響を与え得るかの一例を示すグラフである。
【図１１】幾つかの実施例により、大きいカーネルサイズがハローを引き起こす可能性がある例示的なエッジを示す２Ｄバーコードの画像である。
【図１２】幾つかの実施例により、ハローを有する例示的なエッジを示す２Ｄバーコードの画像を含んでいる。
【図１３】幾つかの実施形態により、例示的なキャッピングとストレッチを示す２Ｄバーコードの画像を含んでいる。
【図１４】幾つかの実施形態により、ローカルトーンマッピングを使用して高ダイナミックレンジ画像を圧縮するための例示的なコンピュータプロセスのフローチャートである。
【図１５】幾つかの実施形態により、強度計算を説明するために使用される例示的な重み付きヒストグラムのグラフを示す。
【図１６】幾つかの実施形態により、重み付きローカルヒストグラム計算を説明するために使用される例示的ヒストグラムのグラフを示す。
【図１７】幾つかの実施形態により、１２ビット値の８ビット値への例示的なマッピングを示すグラフである。
【図１８】幾つかの実施形態により、種々のトーンマッピング技術を使用して処理された例示的な画像を示す。
【図１９】幾つかの実施形態により、ＨＤＲ画像の１つ以上の部分を処理から除いた例を説明するための画像を示す。
【発明を実施するための形態】
【００２７】
本発明者らは、利用可能な場合によりしばしば高いビット深度の画像（例えば高ダイナミックレンジ（ＨＤＲ）画像）を使用する典型的な画像処理技術とは反対に、ＨＤＲ画像をローカルトーンマッピングすることによってより良好なシンボルデコードを達成できることを認識および理解した。シンボルデコード用の低ビット画像を作成する。処理のために高ビットＨＤＲ画像を低ビット画像に縮小するための基本的技術は、ＨＤＲ画像の最下位ビット（例えば４つの最下位ビット）を無視して低ビットの画像を生成する線形マッピングを含むことができる。しかしながら、本発明者らはそのような基本的技術は、最小限の利益で（例えば元のＨＤＲ画像と比較して信号対雑音比の改善がほとんどまたは全くない状態で）高いデータ損失をもたらし得ると判断した。グローバルトーンマッピングは、低ビット画像を生成するためにしばしばＨＤＲ画像の各ピクセルを同じ方法で処理することが必要である。本発明者らは、グローバルトーンマッピングは（例えば線形マッピングと比較して）ある程度改善された利益を有し得るが、それでもなお顕著なデータ損失をもたらし得ると判断した。
【００２８】
本発明者らは、ＨＤＲ画像中の各ピクセルを個別に処理して低ビット画像を生成するローカルトーンマッピング技術を開発した。この技術は、データ損失を減らすことができ、他の技術と比較して実質的な利点を有することができ、あるいはその両方である。幾つかの実施形態ではローカルトーンマッピング技術は各ピクセルをその周辺の強度に対してマッピングすることができる。そのようなローカルトーンマッピングは、（例えばグローバルトーンマッピング技術または線形トーンマッピング技術と比較して）データ損失を減らすことができ、本明細書で説明するように他の技術と比較して実質的な利点を有する。幾つかの実施形態では、ローカルトーンマッピング技術は、各ピクセルをその周辺の強度とコントラストの両方に対してマッピングすることができる。本明細書でさらに述べるこれらおよび他の技術は、画像の種々の領域におけるコントラストを高めることができ、それは画像処理技術（例えばシンボルデコードアルゴリズム）を改善できる。幾つかの実施形態では、ローカルトーンマッピング技術は複数の画像を融合する必要はなく、単一のＨＤＲ画像のみを必要とする。
【００２９】
幾つかの実施形態では、人間の観察者にとって審美的に好ましくない可能性がある画像処理アーチファクトを回避するようにＨＤＲ画像を圧縮するのではなく、ローカルオペレータはデコーダに利益をもたらすように構成される。人間の目には不快かもしれないがデコーダにとってはそうではない特性の例に、エッジ近傍の極端なコントラスト上昇（例えばハローアーチファクト）を含めることができる。そのような極端なコントラストは、一般的にコントラスト上昇であるためにデコード性能には影響を及ぼさず、それゆえデコードにとって有益であり得る。人間の目にとって不快であるかもしれない特性の他の例は、全体的コントラスト圧縮である。例えば本明細書で述べる技術は、局所的な周辺ピクセルを考慮することによってローカルコントラストを強調できようが、より大きいビット情報（例えば１０／１２／１６ビット情報）はより小さいビット情報（例えば８ビット情報）に圧縮される。そのため幾つかの領域では、人間の目は「グレーアウト」される画像の部分を知覚することがある。しかしデコーダは（非常に）低いコントラストのシンボルを処理するように構成できる。人間の目にとって不快であるかもしれない特徴のさらに別の例は、（例えばユーザが選択した）関心領域（ＲＯＩ）に対して本明細書で述べる技術を実行することである。ＲＯＩ内部の情報に対して処理が実行される場合、ＲＯＩからのテクスチャまたは細部は、例えば過飽和または不飽和であり得るが、デコーダがそのような領域を処理していない可能性があるのでデコーダには影響を及ぼさないであろう。本発明者らはさらに、マシンビジョンに使用される画像処理技術（例えばシンボルをデコードする）は、画像、シンボルおよび／または環境などの異なるパラメータに基づいて実行できることを理解した。例えばこの技術は、画像処理が人間の観察者のために維持されている伝統的な態様を考慮に入れない（または悪化させる）場合でも、結果としてデコードが成功するように構成できる。
【００３０】
以下の説明では、開示された主題の完全な理解を提供するために、開示された主題のシステムおよび方法、ならびにそのようなシステムおよび方法が動作できる環境などに関して多くの具体的な詳細が述べられる。加えて、以下に提供される例は例示的であり、開示された主題の範囲内に属する他のシステムおよび方法があることが想定されることが理解されるであろう。
【００３１】
本明細書で提供される参照例の幾つかは、シンボル（例えば線形バーコードまたは２次元バーコード）を有するＨＤＲ画像の文脈における技術を説明する。これらの例は例示の目的のためだけであり、限定することを意図するものではない。この技術はシンボルを分析しない他の一般的な検査用途にも使用できることを理解されたい。例えばこの技術は、システムが例えば明るい下地の上の暗い特徴（又はその逆）を検査しようとする場合に、二値画像アプリケーションに使用することができる。そのような技術は、本明細書でさらに述べるパラメータを設定するために使用できる関心のある特徴サイズ（例えば最小特徴サイズおよび／または最大特徴サイズ）に基づいて構成できる。
【００３２】
図１を参照すると、本明細書で述べる技術の態様は、移送ライン３０がオブジェクト２６ａ、２６ｂ、２６ｃなどを移動方向２５に沿って移動させる例示的な撮像システム／移送ライン１０の文脈で説明される。当業者は、撮像システム１０は例示的な固定設置型アプリケーションであり、オブジェクト上のシンボルを読み取るための開示されたシステムおよび方法は、ハンドヘルドアプリケーションを含む他のアプリケーションにも適用可能であることを理解するであろう。
【００３３】
この例では、各オブジェクトは類似の物理的特性を有しており、それゆえ１つのオブジェクト、例えばオブジェクト２６ｂだけを詳細に説明する。具体的には、オブジェクト２６ｂは、オブジェクト２６ｂが移送ライン３０によって動かされるときに概して上方を向く表面２７を含んでいる。識別目的のために、シンボル２４ａが上面２７に付けられている。各オブジェクト２６ａ、２６ｃの上面には、同種のシンボル２４ａが付けられている。
【００３４】
画像処理システムは、光学系２４を有するセンサ２２を含んでおり、光学系２４は移送ライン３０がオブジェクト２６ａ、２６ｂ、２６ｃなどを通過させるセンサ２２の下方の視野２８を画定している。したがってオブジェクトが移動方向行２５に沿って移動すると、各上面２７は視野２８内に入る。視野２８は、全上面２７が視野２８内のある点または別の点に位置し、したがってオブジェクトの上面２７に付けた何らかのコードが視野２８を通過して、センサ２２によって画像にキャプチャできるように十分に大きくすることができる。オブジェクトが移動方向２５に沿って移動すると、センサ２２は上面２７に付けられたシンボル２４ａの部分的な断片をキャプチャできる。当業者は、視野は１つ以上のオブジェクトをキャプチャできるほど十分に大きくてもよいことを理解するであろう。さらに画像処理システム１０は、ヌニンクらの「ビジョンシステムにおける視野の拡大のためのシステムおよび方法」と題する米国特許第８６４６６９０号に記載されているように、２つ以上のセンサおよび／または視野拡大器を有するセンサを含むことができ、その内容は全体が本明細書に組み込まれている。
【００３５】
画像処理システム１０はまたコンピュータまたはプロセッサ１４（または複数のプロセッサ）を含んでおり、これらのプロセッサはセンサ２２からの画像を受信し、画像を検査して、シンボル候補としてのシンボルのインスタンスを含むことができる画像の下位部分を識別し、それから現在視野２８内にあるオブジェクトを識別するための努力において各シンボル候補をデコードすることを試みる。この目的のために、センサ２２はプロセッサ１４と連結されている。インタフェースデバイス１６／１８もプロセッサ１４と連結して、システムユーザに視聴覚出力を提供することができ、同様にユーザに撮像システムを制御し、撮像システムの動作パラメータを設定し、撮像システムの問題をトラブルシュートするなどのための入力を提供することができる。センサ２２はプロセッサ１４から分離し示されているが、当業者はプロセッサ１４をセンサ２２に組み込むことができ、および／または特定の処理をセンサ２２とプロセッサ１４との間イマジンを分配できることを理解するであろう。少なくとも幾つかの実施形態でシステムは、移動方向２５および／または移送ライン３０が視野を通ってオブジェクトを移送する速度を識別するために使用できる、移送ライン３０に隣接して配置されたタコメータ（エンコーダ）３３も含んでいる。
【００３６】
幾つかの実施形態では、センサ２２およびプロセッサ１４は、１Ｄおよび２Ｄコードなどの種々のシンボルをスキャンして読み取る工業用画像ベースバーコードリーダのコグネックスデータマンおよび／またはコグネックスＭＸシリーズである。幾つかの実施形態では、本明細書で述べる画像処理技術は、画像処理を実行する（例えば本明細書で述べるローカルトーンマッピング技術を実行する）専用メモリおよび計算リソースを含むセンサ２２に埋め込まれたシステム上で実行される。幾つかの例では、単一のパッケージはセンサ（例えばイメージャ）および画像処理を実行するように構成された少なくとも１つのプロセッサ（例えばプログラマブルプロセッサ、フィールドプログラマブルゲートアレイ（ＦＰＧＡ）、デジタルシグナルプロセッサ（ＤＳＰ）、ＡＲＭプロセッサ、およびＡＲＭプロセッサおよび／または同種のものを収容する。
【００３７】
幾つかのセンサは各ピクセルに対して多くのビット（例えば１ピクセル当たり８ビット以下に比べて１２ビットまたは１６ビット）を用いることにより、高ダイナミックレンジ画像を取得するオプションを提供する。しかしながら、そのような高ダイナミックレンジ画像をマシンビジョン技術に使用することは必ずしも有益ではないことがある。例えばシステム構成に応じて、メモリ使用量および計算または処理能力の制限がある場合がある。別の例としての実用的なソフトウェア上の制限、例えばデータ画像構造の設計上の制限、またはシンボルを見つけてデコードするために使用する画像解析ツールによって課される高ビット深度サポートの制限などがある。例えば１６ビット演算を行うには８ビット演算よりもはるかに多くの時間と演算ユニットが必要となり、また通常は内部結果を保存するためにはるかに多くのメモリが必要になる。別の例として、表示装置は８ビット表示のみをサポートし、したがってユーザによってディスプレイを通して見られた画像がデコーダによって処理のために使用される画像と異なる場合は、デコード結果を理解することが困難なことがある。したがって幾つかの実施形態では、そのような高ダイナミックレンジ画像は直接シンボルデコードアルゴリズムによって分析されず、むしろ高ダイナミックレンジ画像はローカルトーンマッピング技術を用いて処理する前に８ビット画像に圧縮される。
【００３８】
幾つかの状況では、シンボルを適切に読み取るために必要とされる情報は、単一のＨＤＲ画像にキャプチャされた（例えば複数の画像が必要とされないように）。本明細書に開示された技術は、ＨＤＲ画像から暗い領域と明るい領域に関する有用な情報を抽出し、抽出された情報を１つの限られたビット深度（例えば８ビット）画像に結合させることを提供する。限られたビット深度の画像はデコードするために使用することができ、それによって各画像および／または画像中の関心領域に対して局所的に調整されるようにデコードを達成する。
【００３９】
トーンマッピングのための幾つかの技術は、例えば各ピクセルに同じピクセルマッピング関数を適用することによって、各画像の各ピクセルに対して同じ方法で実行されるグローバルトーンマッピングを含むことができる。そのような技術は当技術分野において公知であり、時には撮像センサの構成可能な選択肢である。例えば暗い領域のコントラストを高める目的、明るい領域のコントラストを高める目的、および／またはある明るさの範囲にわたる領域のコントラストを中間的に高める目的で種々のグローバルマッピング関数を使用できる。しかしながら、そのようなグローバルマッピングは、高ダイナミックレンジ画像の全範囲に対してコントラストを最適化することがほとんどできない。図２は幾つかの例による区分的線形トーンマッピングの一例を示す。この例示的なグローバルトーンマッピング曲線は、暗い領域における細部を強調するために使用できる。しかしながら、それには幾つかの制限がある。すなわち、１）暗いピクセルはよりグレーな値に押しやられることがあり、２）画像中の明るい細部が最小化されることがあり、３）より暗い背景テクスチャが生成されることがある。これらの制限の各々と関係するピクセルがサンプル画像２１０に示されている。参照符号１はよりグレーな値に押しやられ得る暗いピクセルを表し（制限１）、参照符号２は最小化できる画像中の細部を表し（制限２）、参照符号３は強調できるより暗い背景テクスチャを表す（制限３）。これらの成分は曲線２２０をもたらし、この曲線は１２ビットの生ピクセル値（ｘ軸、２３０）を８ビットのトーンマッピングされたピクセル値（ｙ軸、２４０）にマッピングするために使用される。曲線２２０は、３つの領域、すなわち暗いピクセルの強調２２０Ａ（領域１）、明るいピクセルの圧縮２２０Ｂ（領域２）、および飽和したピクセル２２０Ｃ（領域３）を図示している。したがって区分的線形トーンマッピングでは、曲線２２０に示すようなこの３成分技術が画像中のすべてのピクセルに適用される。
【００４０】
グローバルトーンマッピング技術は、通常最初のオフライン調整プロセスの後に固定されるので、各画像および／または画像中の関心領域に合わせて調整されない。グローバルトーンマッピング曲線が画像ごとに構成された場合でも、それは依然として生（原）ピクセル値の限られた範囲のコントラストを向上させるように限定されるであろう。グローバルトーンマッピング技術は、極端な光に曝される画像や、調整後に画像中のサンプル位置が変わる場合など特定の画像ではうまく機能しない場合がある。グローバルトーンマッピング技術はまた、暗いピクセルをグレーのピクセルに押しやるときなどに明るい細部を失う可能性もある。グローバルトーンマッピングは暗い背景テクスチャを強調することがあるが、これはシンボルの読み取りを遅くする可能性がある。
【００４１】
本明細書で述べるローカルトーンマッピング技術は、画像ごとおよび／またはピクセルごとにピクセル処理を構成することができる。本明細書でさらに説明するように、ローカルトーンマッピングは合成画像およびグローバルトーンマッピングと比較してより良好なシンボルデコードを達成できる。例えばローカルトーンマッピングは、例えばグローバルトーンマッピング技術と比較して、画像全体のピクセルのダイナミックレンジおよびピクセルコントラストを強調できる。別の例として、ローカルトーンマッピングは画像全体の種々の局所的領域について、さらにピクセル圧縮を調整できる。さらに別の例として、ローカルトーンマッピングは、暗い領域と明るい領域の両方についてコントラストを強調できる。
【００４２】
図３は、幾つかの実施形態によりローカルトーンマッピングを使用して高ダイナミックレンジ画像を圧縮する例示的なコンピュータプロセス３００のフローチャートを示す。ステップ３０２で、イメージャは高ダイナミックレンジ画像を取得する。上述したように幾つかのセンサは、ピクセル当たり８ビット以上（例えば１０ビットまたは１２ビットまたはそれ以上）のビット深度を有する画像を取得する能力を持っている。
【００４３】
ステップ３０４で、イメージャと関連する処理ユニット（例えばＡＲＭプロセッサ、またはイメージャと同じハウジングに組み込まれたＦＰＧＡ）が、画像処理のためのパラメータを決定する。処理ユニットは、１つ以上の技術を用いてパラメータを決定することができる。例えばパラメータは、現在取得した画像から実際の値に基づいて計算できる。別の例として、パラメータは以前取得した画像からの推定値であることができる（これは例えば現在の画像に対して精緻化できる）。以前のパラメータを推定値として使用することは、新しい画像の処理を改善および／またはスピードアップするのに役立ち得る。さらに別の例として、パラメータを構成プロセス中に構成できる。例えばパラメータを経験的に決定して、パラメータが高いデコード率を達成することを確実にするために１組のテスト画像についてテストすることができる。
【００４４】
パラメータは、例えばシーンキー、すなわち最小ピクセル値および／または最大ピクセル値を含むことができる。シーンキーは、関心のある画像のピクセル強度値を平均することによって、例えば画像中のすべてのピクセルを平均化することによって、および／または画像中の１つ以上の関心領域（ＲＯＩ）（例えばデコードするシンボルを含む可能性が高いと判断された領域、またはシステムオペレータによって選択された領域）のピクセル強度値を平均化することによって計算できる。幾つかの実施形態では、シーンキーは同じであるか、または以前の実行時に分析された画像の以前のＲＯＩで計算された調整済みシーンキーであることできる。例えば処理システムが現在の画像についていかなる知識も持っていない場合、システムは画像全体の平均強度を使用できる。幾つかの実施形態において、シンボルが配置される場所をシステムが知っている場合など（例えば照準器を使用する場合は視野の中心、または調整がシンボルのおおまかな位置を応答する場合、および／またはテクスチャベースの分析を実行することにより）、処理システムはこのより小さい関心領域における平均強度を使用できる（例えばそれにより注意をそらす背景領域の影響が少なくなる）。
【００４５】
幾つかの例では、最小／最大値は現在の画像からの実際の最大／最小値、および／または画像の最大／最小部分（例えば５％）であり得る。別の例として、最小／最大値は以前の画像からの推定値であり得る。さらに別の例として、その最小値／最大値は画像キャプチャリングで使用される照明および露出／ゲイン値に基づいて事前に設定できる。
【００４６】
ステップ３０６で、処理装置は各ピクセルに対する周囲情報を決定する。例えば処理装置は１つ以上の技術を適用して周辺ピクセルを分析することができる。局所周辺ピクセル情報は、ローカルコントラストを強調しながら中心ピクセル強度を調整するために使用される。幾つかの例では、処理装置はガウスカーネルを用いて周辺ピクセルを分析する。処理装置は、ガウスカーネルを用いて各ピクセルの周辺ピクセルの強度を計算するために特定のサイズ（例えば半径）を決定するように構成することができる。
【００４７】
ガウスカーネルのサイズは、シンボルの適切なデコードに影響を与えることができる。例えばサイズはローカルコントラストを強調するために十分大きい必要があり、および／またはデコードを劣化させるアーチファクト（例えばデコーダにエッジがない所にエッジがあると思わせるようなアーチファクト）の作成を避けるために十分小さい必要があろう。別の例として、カーネルのサイズはシンボル属性および／または特性に基づいて設定されてもよい。例えばシンボルの属性および／または特性は１つ以上の最小値、最大値および／またはモジュールサイズの範囲、最小特徴サイズ、シンボルの幅、シンボルの高さ、および／またはこれに類するものを含むことができる。
【００４８】
図４Ａと図４Ｂは、幾つかの例によりガウスカーネルサイズが画像処理に及ぼし得る影響を示している。図４Ａは、カーネルのサイズが小さすぎると、各モジュールは周辺ピクセルからの十分な情報を提供せず、その結果コントラスト上昇が不十分なことがあることを示している。図４Ｂは、カーネルサイズが大きすぎると、それは白い領域の各側に黒いハロー（例えば白い領域４２４の各側に黒いハロー４２０、４２２）などのアーチファクトを引き起こすことがある。当業者は、本明細書で述べるこれらの画像および他の画像は例示目的のためであり、限定することを意図していないことを理解するであろう。
【００４９】
したがって処理装置はガウスカーネルサイズを設定するために分析する適切な数の周辺ピクセルを決定できる。例えば処理装置はガウスカーネルサイズをシンボルおよび／または画像の特性に基づいて決定できる。例えば処理装置はカーネルのサイズを、シンボル中にモジュールまたはエレメントが幾つあるか、モジュールまたはエレメントはどれほど大きいか、および／またはシンボルの種類（例えば１Ｄまたは２Ｄシンボル）に基づいて決定できる。別の例として、デコードの努力が成功しなかった場合でも、それはシンボルまたは現在の画像に関する何らかの情報を生成できよう。例えばデコーダは各モジュールが（例えばピクセルに関して）どれほど大きいかを決定することができ、そのためデコーダはモジュールサイズに従ってカーネルのサイズを調整することができる。他の例として、デコーダはシンボル領域におけるコントラストを決定できる。例えばコントラストが非常に低い場合（例えば暗い背景上の暗いシンボル、または白い背景上の明るいシンボル）、デコーダはより大きいカーネルを使用できる。なぜなら、例えば大きいカーネルを使用することは、より強いコントラスト供用を導入することになるであろうからである。
【００５０】
幾つかの実施形態では、処理装置はデコードの結果に応じて異なるカーネルサイズを繰り返し試すことができる。例えばデコードは失敗したが、その試みの間にシンボル情報を取得する場合、処理装置は上述したようにシンボルおよび／または画像に基づいてパラメータを変化させることによってカーネルサイズを再計算することができる。
【００５１】
幾つかの実施形態では、カーネルサイズは事前設定された調整および／または以前に処理された画像に基づいて決定できる。別の例として、カーネルサイズは、調査中の特定のオブジェクト、撮像設定および／または撮像環境に基づくことも含め、訓練データベース上で技術をテストして特定のカーネルサイズについて成功したデコードの見込みを決定することによって決定できる。
【００５２】
幾つかの実施形態では、カーネルサイズはアーチファクトを生成することが知られている。本明細書で述べるように、ガウシアンカーネルのサイズは、人が見る目的のためにアーチファクトを回避するように（例えば画像が視覚的に審美的な方法で処理されるように）選択する必要がない。例えばシンボルが適切にデコードされることになる場合、ハローは画像にとって許容可能な処理結果であり得る。幾つかの例によれば、大きいカーネルサイズは、図１１に示した例示的なエッジ１１０２、１１０４のような強いエッジでハローを引き起こすことがある。幾つかの実施形態では、最良の周辺領域（例えばカーネルサイズ）は顕著なコントラストの変化が生じない最大の領域であるべきであり、そのカーネルサイズは各ピクセルの固有の局所的特徴に基づいてピクセルごとに決定されるべきである。幾つかの実施形態では、ピクセルごとのカーネルサイズを決定するのではなく、技術は画像全体の中の複数のピクセルおよび／またはすべてのピクセルに対して１つの固定サイズのカーネルを使用できる。カーネルのサイズは画像ごとに設定可能である。
【００５３】
上述したように、ハローアーチファクトは、１つの固定サイズのローカルカーネルを使用することによって引き起こされることがあるアーチファクトの一例であり、これはしばしばエッジにおいて強いコントラスト上昇をもたらす（例えば高コントラストシンボルの場合）。幾つかの実施形態では、デコーダは最小特徴サイズ（例えばｐｐｍまたはモジュール当りピクセルで測定したモジュールサイズまたは最も狭いバー幅）が特定の範囲内にある場合にシンボルをデコードするように構成されている。シンボルが大きすぎるか小さすぎる場合、システムは最初にシンボルを正しいサイズに再スケールしてシンボルが範囲内にあるようにすることができる。したがってカーネルサイズは、範囲の上限など最小特徴サイズに基づいて決定できる。カーネルサイズを最小特徴サイズに基づいて決定することは、異なるサイズのシンボルに対してローカルコントラストを強調できる。例えば小さいコードで大きいカーネルを使用するとハローアーチファクトを起こすことがあるが、ハローはある意味ではデコードに影響を与えない極端なコントラスト上昇であるため、そのようなハローアーチファクトはデコードプロセスに悪影響を与えることはないであろう。例えばカーネルのサイズは、デコーダによって見られている（または見られるであろう）シンボルの最小特徴サイズの上限に基づいて決定できる。大きいカーネルを使用することは（例えばより小さいカーネルで十分である場合であっても）よい追加の計算時間を必要とするが（例えばすべてのピクセルで畳み込まれる必要があるため）、カーネルのサイズおよび／または係数は実行速度を改善するために最適化できる。
【００５４】
一例として、ハローアーチファクトができる中心とその周囲強度が非常に異なっている場合に見られる。例えばハローアーチファクトは高コントラストエッジの近傍で見られる。図１２は、幾つかの例に従い、ハローを有する例示的なエッジを示す２Ｄバーコードの画像１２００および１２５０を含んでいる。画像１２００を参照すると、人間の目は円で囲まれたエッジの近傍のより明るい帯を見ることができるが、そのようなより明るい帯は余分に検出されるエッジおよび／またはモジュールが白または黒のいずれのモジュールとして分類されるべきか判定する困難を引き起こすことはないであろう。画像１２５０を参照すれば、モジュールが小さいと、種々の特徴からのハローは円で示すように互いにつながることがある。そのようにつながったハローは強いコントラスト上昇のように作用することがある（例えば白いモジュールの原（生）強度は円１２５２に示すようにグレーにマッピングされたが、円１２５４に示すように白にマッピングされた）。そのような強いコントラスト上昇はほとんどの場合にデコーダに利益になることができる。
【００５５】
許容できるその他のアーチファクトは、コントラスト低下を含む。トーンマッピングアルゴリズムは、高いビット深度（例えば１２または１６ビット）画像の細部を単一の８ビット画像にキャプチャできるので、これらの細部をより多く見ることができる（図５Ａ、図６で円５０２、６０２でマークした区域は、５０２に示す上部原画像ではかろうじて見えるだけであるが、６０２に示すローカルトーンマッピングされた画像でははるかに鮮明である）。しかしパラメータに応じて、幾つかの領域は原画像より低いコントラストを有することがある（例えば図５Ａ、図６の２つの画像で円５０４、６０４によってマークされた区域）。そのような低いコントラストは、一般的に低コントラストコードを扱うことができるデコーダにとっての問題ではない。さらに、パラメータはデコードに対する影響を最小限に抑えるために、本明細書に記載されるように調整することができる。
【００５６】
実行時画像の取得、圧縮および／またはデコード中に、処理装置はさらに最小特徴サイズに基づいて対応するカーネルサイズを構成できる。例えば現在構成されているカーネルサイズは大きいが、より小さいコードに対してシステムはより小さいカーネルを選択できる（例えば計算および／またはメモリリソースをさらに節約するため）。システムが（例えばオフライン調整、訓練または手動ユーザ入力から）シンボルの最小特徴サイズの大きさに関する知識を持っていたら、システムはそうすることができる。
【００５７】
当業者は、ステップ３０４と３０６が別々におよび／または組み合わせて実行できることを理解するであろう。参照例として、ステップ３０４および３０６に関連して述べた幾つかのパラメータは、例えばステップ３０２の前にオフラインで構成することができる。例えばある範囲の異なるトーンマッピングパラメータ設定（例えばカーネルサイズを含む）をテストできる。各設定は、読み取られる必要があるシンボルのための一連のシンボル属性（および／または照明条件など他の条件）を代表する１組の画像（例えば大規模な画像データベースに保存されている）をデコードすることを試みることによってテストできる。画像セットでのデコード性能を最適化する（正しく読み取られるシンボルの数を最大化し、誤読を最小化する）パラメータの設定は、イメージャまたはリーダで使用するために選択できる。画像がキャプチャされる必要があると考えられるシンボル属性は、例えば最小特徴サイズ、モジュールサイズ、背景テクスチャ、シンボルサイズ、シンボル体系のタイプなどを含むことができる。
【００５８】
オフライン調整の別の参照例として、上述したように全体的性能を最適化する単一のセットのパラメータのみを決定するのではなく、下位範囲のシンボル属性について最良のパラメータ設定を決定できる。幾つかの実施形態では、実行時に属性のどれかが知られているならば、より最適なパラメータ設定を特定の撮像環境の属性に合わせることができる。例えばパラメータは、オペレータがそれら（例えばコードタイプ）を顧客サイトで手動で設定するので既知であり得る。なぜならそれらは例（例えばモジュールサイズ）などによって学習または訓練されるからである。
【００５９】
別の参照例では、パラメータは特定の用途に対して調整できる。これは上述したパフォーマンス調整と同様に達成できるが、特定の展開に対して行なわれる。例えば画像データベースを使用する代わりに、リーダは最初に画像を自動的に取得し、照明および他の取得設定、例えば露出やゲインを体系的に変更できる。そのような技術は、場合により１つ以上のシンボルの画像を取得することを含みながら、トーンマッピングパラメータの設定を最適化するために使用できる。
【００６０】
調整のために単一のシンボルのみが使用される場合、シンボルをデコードし、測定された属性（例えばモジュールサイズまたはシンボルサイズ）を使用して最適なトーンマッピングパラメータを選択できる。たとえ１つ以上のシンボルが使用される場合でも、可能な属性の範囲（例えばモジュールサイズの範囲）を使用してパラメータを選択できる。その決定はヒューリスティック分析（以下でさらに述べる）を活用することができ、および／または上記のように事前に決定されることができる適当な下位範囲の設定のために最良のパラメータ設定を使用できる。
【００６１】
別の参照例として、設定は以前に圧縮されたおよび／またはデコードされた画像に基づくことができる。そのような処理は、例えば前の例で上述した方法で、画像間でオンラインで実行できる。幾つかの例では、画像がシーケンスの最初の画像である場合、既定のパラメータ値を最初の画像に使用できる。例えばシステムがシンボルを追跡できる場合、システムはシステムが新しいシンボルを見ているかどうかについての知識を組み込むことができる。例えばシンボルを追跡するために、「光学コードを追跡するためのシステムおよび方法」と題する米国特許出願第１４／５１０６８９号に開示されている追跡技術を使用でき、参照によりその全体が本明細書に組み込まれる。
【００６２】
上述した実施例と技術は、互いに排他的ではあり得ない。例えば手動調整方法を使用して「既定の」トーンマッピングパラメータに使用される設定を決定でき、実行時調整ステップを使用して設定を改良できる。別の例として、例えば以前の画像について決定されたパラメータの活用が現在の画像に適用されるように、同じシンボルを経時的に追跡していることが分かっている場合、以前の画像を使用して既定パラメータをオーバーライドできる。
【００６３】
ステップ３０８で処理装置は、例えばデコードプロセスに影響を及ぼし得るアーチファクトを回避するために、中央・周囲比を任意に調整する（例えばキャッピングする）。幾つかの実施形態では、最大閾値は、比率が閾値を下回ることを保証するために中央・周囲比を調整するように構成できる。例えば中央・周囲ピクセル強度比は、周辺領域で急激な強度変化によって生じるハローアーチファクトがデコードに影響を与える場合は、そのようなハローアーチファクトを回避するために一定の割合にキャッピングすることができる。閾値は、ステップ３０４および３０６に関連して述べたパラメータと同様の方法で、例えば調整または訓練ステップの一部としてオフラインで決定できる。
【００６４】
本明細書で述べたように、視覚的アーチファクト（例えばハロー）は一般的にデコード結果に影響を与えることはないので、ステップ３０８との関連で述べたキャッピングおよび／またはステップ３１２に関連して述べるストレッチは任意である。幾つかの実施形態では、画像はデコーダのための入力として使用されるだけでなく、ユーザに視覚的なフィードバックを提供することもある（例えばＳＤＫ上で）。さらに幾つかの実装形態では、例えば使用されるデコード方法に応じて、視覚的アーチファクトがデコードに影響を及ぼすことがある。したがって画像を視覚的に快適にすることが望ましい場合がある。
【００６５】
図１３は、幾つかの実施形態による例示的なキャッピングとストレッチングを示す２Ｄバーコードの画像１３００、１３２０、１３４０、１３６０を含んでいる。画像１３００は中央・周囲トーンマッピングの例を示すにすぎず、１３０２、１３０４に示されているようにエッジ近傍の黒と白のハローを含んでいる。画像１３２０は、キャップを用いた中央・周囲トーンマッピングの一例を示す。画像１３２０は、中央・周囲差をキャッピングすることによって画像１３００における１３０２、１３０４と同じ位置の近傍で見られるハロー効果が少ないことを実証している（画像１３２０では１３２２および１３２４で表示）。しかし、画像１３２０のコントラストは画像１３００より低い。画像１３４０および画像１３６０については、以下にステップ３１２と関連してさらに述べる。
【００６６】
別の例として図１０を参照すると、グラフ１０００（例示的な目的のためにシーンキーを用いた非線形マッピングとガウスカーネルのサイズ＝１のみ使用）は、１２ビットピクセルが０〜２５５の範囲内の値にマッピングされることが保証されているが、最大値は必ずしも２５５に達しないことを示している。幾つかの例で最大値が２５５に達しない場合は、画像は洗い流されたように見えることがある。トーンマッピングされた画像のダイナミックレンジを最大化して８ビット（０〜２５５）の強度差を最大限に活用するように、マッピングされたピクセルを調整する（例えば線形にストレッチする）ことができる。
【００６７】
幾つかの実施形態において、画像中の特定の領域に対して最小値と最大値を決定できる。例えばシステムはシンボル領域における最大値と最小値を決定できる（例えばシンボルコントラスト以前の画像または以前のデコード努力から得ることができる）。システムは全体として画像中の他の背景領域を考慮せずに、ただ当該領域内の最大値と最小値を使用してコントラストを最大化できる。
【００６８】
ステップ３１０で、処理装置は、以前のステップで決定されたパラメータ（例えばステップ３０４および３０６で決定されたパラメータ）に基づいてローカルトーンマッピングを実行する。トーンマッピングは、例えば１０ビットまたは１２ビットＨＤＲ画像を８ビットの画像に圧縮することによって、高ダイナミックレンジ画像（例えばＨＤＲ画像）をより低ダイナミックレンジ画像に圧縮する。
【００６９】
例えばローカルトーンマッピングを適用するために、次のマッピング式を使用できる。
2019125356.tif 000003
（式１）
ここで、
ＣｅｎｔｅｒＰｉｘｅｌＩｎｔｅｎｓｉｔｙは、特定のピクセル強度値である。
ＳｃｅｎｅＫｅｙは、（例えば画像中のピクセルを平均することによって）画像について計算されたシーンキーである。
ＳｕｒｒｏｕｎｄｉｎｇＩｎｔｅｎｓｉｔｙは、ピクセルについてその周辺ピクセルに基づいて（例えばガウス核を使用して）計算される。
【００７０】
ＳｃｅｎｅＫｅｙを参照すると、上述のようにシーンキーは、画像全体の平均強度または関心領域に基づいて計算できる（および／または現在の画像または以前の画像から取得できる）。図１０のグラフは、幾つかの実施形態により、シーンキーがＨＤＲ画像から低ピクセル画像へのピクセルマッピングにどのように影響を与えることができるかを示している。グラフ１０００のｘ軸は１２ビットのピクセル値であり、グラフ１０００のｙ軸は８ビットのピクセル値である。グラフ１０００に示されているように、シーンキーは非線形マッピング曲線の形状を制御し、この曲線はピクセルが１２ビットのピクセルから８ビットピクセルにマッピングされる方法を制御する。より小さいキー値は、キー値＝２００で第１の赤色の曲線１００２によって示されており、これは原画像は比較的暗く、それゆえ暗い領域ではさらに強調する必要があることを示している。曲線１００２は他の曲線１００４（キー値７５０）と曲線１００６（キー値２０００）より高いので、シーンキー２００を使用したピクセルの全体的強度は、他の曲線１００４、１００６と比較して増加されている。
【００７１】
幾つかの実施形態では、各ピクセルに異なるマッピング式が適用される。例えばＣｅｎｔｅｒＰｉｘｅｌＩｎｔｅｎｓｉｔｙおよび／またはＳｕｒｒｏｕｎｄｉｎｇＩｎｔｅｎｓｉｔｙは、種々のピクセル間で異なってよく、その結果各ピクセルに対して異なるマッピング式が使用されることになる。
【００７２】
ステップ３１２で、処理装置はステップ３１０において計算されたピクセル強度値を調整するように構成できる。例えば処理装置は、トーンマッピング画像の強度をストレッチして８ビットダイナミックレンジを完全に利用して圧縮画像を生み出すように構成できる。幾つかの実施形態では、処理装置は、ステップ３０４で決定された最小および最大ピクセル値を使用して線形ストレッチを実行できる。
【００７３】
さらに図１３を参照すると、画像１３４０はピクセルストレッチを用いた中央・周囲トーンマッピングの一例を示している。例えば８ビットのダイナミックレンジを完全に利用するために線形ストレッチが追加される。画像１３４０は、例えば画像１３００と比べて全体コントラストは良好であるが、より深刻なハローを被っている。画像１３６０は、中央・周囲トーンマッピング、キャップ（ステップ３０８に関連して説明された）およびストレッチの例を示す。画像１３６０の結果は人間の視覚には心地よく、目に見える軽微なハローのみ含んでいるが、これらは人間の観察者にとっては煩わしくないと思われる。
【００７４】
したがって本明細書で述べる技術は、（例えばシーンキーによって調整される）画像の全体的な態様と、周囲のピクセル強度によって調整される各トーンマッピングに固有の局所的な態様とを組み合わせたローカルトーンマッピング技術を提供する。そのような技術は計算上効率的であり、したがって組み込みシステムによって（例えばログオペレータおよび／またはマルチスケールカーネルなどの集中計算を回避することによって）実行できる。それゆえこの技術は、ＦＰＧＡ、ＤＳＰＳ、ＡＲＭプロセッサ、ＧＰＵおよび／または他の専用チップなど、可変プラットフォーム上で実行するのに適している。幾つかの実施形態では、この技術は例えばＥ．ラインハルト、Ｍ．スターク、Ｐ．シャーリー、およびＪ．フェルヴェルダ著「デジタル画像のための写真階調再現」（ＡＣＭトランザクション・オン・グラフィックス、２００２年）で述べられているラインハルト演算子を含むことができ、参照によりその全体が本明細書に組み込まれる。
【００７５】
図５Ａ−５Ｃは、幾つかの実施例により、視野内に９コードを含む１２ビット画像中にそれぞれ４−１１ビット、３−１０ビットおよび２−９ビットを示している。図５Ａの画像を処理すると、システムは左上の２コードと中央右のコードのみをデコードできる。図５Ｂの画像を処理すると、システムはより多くのシンボルをデコードできるが、右上隅のコードは完全に洗い流されている。図５Ｃの画像を処理すると、元の図５Ａで暗いコードは見えるが、より多くのシンボルが飽和している。したがってシステムが両方のシンボルをデコードするのに必要なすべての情報が１２ビット原画像にキャプチャされているが、この画像の８ビットサブセット画像にはキャプチャされていない。図６は、幾つかの実施形態により、本明細書に記載の技術に従ってこの１２ビット画像からローカルにトーンマッピングされたＨＤＲ画像の一例を示す。図６の画像を処理するとき、システムは単一のキャプチャされた画像のみを使用して全コードをデコードできる。
【００７６】
図７は、１２ビットＨＤＲ画像７００の最上位８ビットと、シンボルの同じ１２ビットＨＤＲ画像７２０の最下位８ビットの別の例を示しており、いずれもシンボルの読取りに至らない。本明細書で説明したローカルトーンマッピング技術を使用してこの１２ビットＨＤＲ画像から作成された画像７５０によって、システムはシンボルをデコードする（または読み取る）ことができた。
【００７７】
図８は、幾つかの実施形態により、グローバルトーンマッピング技術を使用して作成された画像と、本明細書に開示されているローカルトーンマッピング技術を使用して作成された画像とを比較する。区分的線形グローバルトーンマッピングはシンボルに対して局所的に最適化されず、したがって結果として得られる画像８２０、８２２は、ローカルトーンマッピングを使用する場合と比較して明瞭なシンボルをもたらさず、暗い領域と明るい領域両方のコントラストを強調する画像８４０、８４２を生成する。画像８２０と画像８４０は、それぞれ視野内の暗い領域と明るい領域に位置する複数のコードの例を示す。画像８２２と画像８４２は、半分の暗い領域と半分の明るい領域を有する１つのコードの例を示す。
【００７８】
図９Ａ−図９Ｂは１２ビットＨＤＲ画像の最上位８ビット（図９Ａ）と、同じ１２ビットＨＤＲ画像から計算されたローカルトーンマッピングされた画像（図９Ｂ）を比較する。８ビット画像９Ａはシンボルの読取りに至らなかった。幾つかの実施形態では、デコーダは８ビット画像（例えば９Ａ）よりも速くトーンマッピングされた画像（例えば９Ｂ）をデコードすることができ、および／または画像中のシンボル体系の数に応じてより多くのシンボル体系が見えることがある。
【００７９】
ローカルトーンマッピング技術は、暗い領域を有する画像などＨＤＲ画像の特性に応じて、そのようなより暗い領域の細部を強調できる。本発明者らは、各ピクセルをその周辺の強度およびコントラストの両方に対してマッピングするコントラストベースのローカルトーンマッピング技術を発見して発展させた。このコントラストベースの技術は、（例えば取得された画像、シンボル体系などに依存して）データ損失を改善するため、暗い領域に加えて露出過多（例えば明るい）領域を強調するため、および／または同様のことに使用できる。例えば暗い領域と明るい領域の両方を含む画像の場合、コントラストベースのローカルトーンマッピング技術は、明るい区域と暗い区域の両方の細部を（例えば画像強度にかかわらず）強調できる。
【００８０】
図１４は、幾つかの実施形態により、高ダイナミックレンジ画像を圧縮するためにローカルトーンマッピングを使用するための例示的なコンピュータ処理のフローチャートを示す。ステップ１４０２で、イメージャはＨＤＲ画像（例えば図３のステップ３０２に関連して述べた１０、１２または１６ビットの画像）を取得する。ステップ１４０４で、処理装置は関心領域、例えば１つ以上のシンボル（例えばバーコード）を含んでいる可能性のある１つ以上のＲＯＩを決定する。
【００８１】
ステップ１４０６で、処理装置は生画像中のシンボルのシンボル体系の１つ以上の属性を決定する。属性は、例えば属性の最小サイズ、最大サイズまたはその両方（例えば範囲）を含むことができる。例えば属性は（例えば最大および最小ＰＰＭに基づいて決定された）可能なバーコード解像度の予想される範囲を含むことができる。ＰＰＭは、例えばモジュールサイズ、特徴サイズ、シンボルの幅および／または高さ、および／またはシンボル体系の他の側面を測定できる。
【００８２】
ステップ１４０８で、処理装置は各ピクセルのための周囲情報を決定する。例えばデバイスは、ステップ１４０６で決定された１つ以上の属性を使用して、ローカルトーンマッピングを実行するために幾つかの周辺ピクセルを決定できる。幾つかの実施形態においてシステムは、例えばバーコード解像度レンジを用いてガウス周辺サイズ（例えばシグマ）を決定できる。例えばシステムは、十分な数のピクセルにわたるガウスカーネルサイズを決定することができ、その結果カーネルは、デバイスが処理しているピクセルの各次元において少なくとも少数のモジュールを含む。
【００８３】
幾つかの実施形態で、本技術は、領域内（例えばガウスカーネル内）の各ピクセルに対する情報を決定する。例えば幾つかの実施形態において、処理装置は座標（ｉ、ｊ）を有する領域における各ピクセルに対して強度（強度（Ｉ、Ｊ））およびコントラスト（コントラスト（Ｉ、Ｊ））を決定する。処理装置は、例えばローカルピクセルの平均、中央値、または局所最大値と局所最小値の平均を使用して強度を決定できる。処理装置は、例えば標準偏差、ヒストグラムおよび／または同種のものを使用してコントラストを決定できる。幾つかの実施形態では、処理装置は重み付きメトリックを決定できる。例えば処理装置は局所周辺におけるピクセル強度の加重平均および加重標準偏差を決定できる。これらの重みは、例えばガウス分布によって決定できる。例えばＧ（Ｘ、シグマ）が幅σ（標準偏差）を有するガウスの１次元ガウス分布であり、ｘが分布中心からの距離とすると、ピクセルの重みはＧ（ｄ、σ）であることができ、ここでｄはピクセルの周辺中心からの距離である。幾つかの実施形態ではＧ（ｘ、σ）は、局所周辺に対する重みの合計が１になるように正規化できる。例えば、Ｇ（ｘ）＝ｅ−（ｘ＾２）／（２×σ＾２）／Ｎであり、ここでＮは
2019125356.tif 000004
を作る正規化係数である。幾つかの実施形態において、Ｇは局所周辺を反映するか、またはそれを決定するために使用できる。例えば周辺境界はＤ＝３×σ（３は標準偏差）に基づいて決定できる。幾つかの実施形態では、カーネルのサイズが非常に大きい場合はガウスカーネルは滑らかであり得るので、処理を高速化するために均一な重みを使用できる。幾つかの実施形態では、ガウスカーネルは２Ｄカーネル（例えばＮ×Ｎ）または１Ｄカーネル（例えば関心のあるシンボルの方向が知られている場合）であることができる。例えばすべてのシンボルが水平であるならば、１×Ｎカーネルを使用できる。
【００８４】
幾つかの実施形態では、処理システムは、ピクセルに対して決定される情報を制限できる。例えば処理システムはコントラストを制限（例えばクランプ）して、コントラストが特定の値または範囲の上および／または下になるのを防ぐことができる。処理システムはコントラストを特定の値または範囲に制限するように構成でき、および／または本明細書で説明したように訓練またはテスト中の最適な限界を決定できる。コントラストを制限することは、例えば信号がバイモーダルでない場合にノイズを増幅することを回避するのを助けることができる。例えば以下にさらに図１７との関連で述べる幾つかの実施形態では、ｙ１とｙ２の間にある信号を処理することが望ましい。なぜならピクセルはシンボルの異なる特徴（例えば暗いバーや明るいスペース）に関連付けられているからである。シンボル特徴を含んでいない区域など一部の区域では、信号がバイモーダルではないことがある。そのような区域では、ピクセルはノイズのみを含むことがある。それゆえこの技術は非常に小さいコントラストの処理を回避するために、コントラスト計算を制限してノイズの処理（例えば増幅）を回避することができる。例えば図１８および図１９に関連してさらに述べるように、ノイズが増幅されると、それは低減されたビット画像に現れる可能性がある（例えば画像処理アルゴリズムに悪影響を及ぼすことがある）。
【００８５】
図１５は、幾つかの実施形態により、強度計算を説明するために使用される例示的な重み付きヒストグラム１５００のグラフを示す。図１６は、幾つかの実施形態により、重み付きローカルヒストグラム計算を説明するために使用される例示的ヒストグラム１６００のグラフを示す。図１５および図１６のいずれも、１２ビットＨＤＲ画像の局所周辺におけるピクセルのグレーレベルの分布を示す。本明細書で述べられているように、局所周辺におけるピクセルは、周辺における異なるシンボル特徴（例えば幾つかのバーとスペース）のためのデータを含むであろう。解像度に応じて、ピクセルはシンボル特徴間のシンボル内の移行区域（例えばバーからスペースに移行する間の区域）に対応することもある。図中のピーク（例えば以下でさらに述べる図１５のピーク１５０６およびピーク１５０８）は、幾つかのシンボル特徴が暗い（例えば黒いバー）および明るい（例えば白いスペース）ために生じる。
【００８６】
図１５を参照して、重み付きヒストグラム１５００は、例示的なバイモーダルバーコード領域の局所周辺のものである。ｘ軸１５０２は１２ビットＨＤＲ画像に対するピクセル強度値を示しており、各ピクセルの強度は０から４０９５の範囲であり得る。ｙ軸１５０４は特定の強度値を有するピクセルの重み付けされた数を示す。重み付きヒストグラムの第１のピーク１５０６は、暗い特徴（例えばバー）のために生じる。重み付きヒストグラムの第２のピーク１５０８は、明るい特徴（例えばスペース）のために生じる。重み付きヒストグラム１５００は、加重標準偏差メトリックを使用して計算されたローカルコントラスト１５１０と強度１５１２を示している。ローカルコントラスト１５１０は、局所領域内のピクセル値の３つの標準偏差を計算することによって計算される。強度１５１２は、局所領域内のピクセル値の平均を取ることによって計算される。この例では、ピーク１５０６は約６１５であり、ピーク１５０８は約２５００であり、強度１５１０は約１５００であり、コントラストは約２２００である。
【００８７】
図１６を参照すると、重み付きヒストグラム１６００は、例示的なバイモーダルバーコード領域の局所周辺のものである。ｘ軸１６０２は１２ビットＨＤＲ画像に対するピクセル強度値を示し、各ピクセルの強度は０から４０９５の範囲であり得る。ｙ軸１６０４は特定の強度値を有するピクセルの重み付けされた数を示す。重み付きヒストグラムの第１のピーク１６０６は、暗い特徴（例えばバー）のために生じる。重み付きヒストグラムの第２のピーク１６０８は、明るい特徴（例えばスペース）のために生じる。重み付きヒストグラム１５００はヒストグラムのテール、すなわちヒストグラム１６１０の底部２０％とヒストグラム１６１２の頂部２０％を示す。底部２０％１６１０における値の平均は１６１８として示されており、頂部２０％１６１２における値の平均は１６２０として示されている。コントラスト１６１６はテール平均１６１８と１６２０との間の距離として測定される。強度１６２２はコントラスト１６１６の中心である。
【００８８】
図１５はコントラスト１５１２に対する加重標準偏差の計算と比較するためにヒストグラム１５００を含んでいるが、強度１５１０（例えば加重平均を用いて計算）とコントラスト１５１２のいずれも上述したように実際のヒストグラム１５００を用いずに計算できる。幾つかの実施形態において、図１６を参照すると、上述したようにヒストグラムのテールを決定する代わりに、強度とコントラストは、重み付きローカルヒストグラムを形成し、ピーク１６０６および１６０８の位置を（例えばローカルヒストグラムのモードに基づいて）特定し、ピーク１６０６とピーク１６０８の間のトラフ１６１４を決定し、そしてピーク１６０６とピーク１６０８の間の距離１６１６を決定することによって計算できる。
【００８９】
幾つかの実施形態では、ＨＤＲ画像の１つ以上の部分を処理から除外できる。例えば処理装置は、局所周辺に増幅すべき特徴があるか（またはないか）決定するように構成できる。そのような処理は画像マスクを効果的に決定でき、このマスクが本明細書で説明される技術を使用して処理されない（例えばスキップされる）画像の部分を示す。幾つかの実施形態では、処理装置は、画像の部分（例えば画像の局所周辺）を処理するかどうかを決定するために統計的テストを実行できる。例えば処理装置は、当該技術分野で知られているように、周辺内のデータが正規分布を満たすかどうかを判断することなどによって各周辺内のデータの正規性を測定できる。例えばガセミおよびザヘディアスル著「統計分析のために正規性試験：非統計家のためのガイド」（国際内分泌・代謝ジャーナル、２０１２年）を使用でき、参照によりその全体が本明細書に組み込まれる。
【００９０】
図１９は、幾つかの実施形態により、ＨＤＲ画像の１つ以上の部分を処理から除外する例を説明するための画像を示している。具体的には、図１９は、２Ｄバーコード１９０２およびテキスト１９０４を有する第１のトーンマッピングされた画像１９００を示す。処理装置は、区域１９０６のように２Ｄバーコード１９０２およびテキスト１９０４の周囲の区域を処理から除外しなかった。その結果としてトーンマッピングされた画像１９００は、２Ｄバーコード１９０２およびテキスト１９０４の周りに黒と白の斑点のパターンを含んでいる。第２のトーンマッピングされた画像１９５０も、２Ｄバーコード１９０２とテキスト１９０４を含んでいる。処理装置は、２Ｄバーコード１９０２とテキスト１９０４の周りのベタ区域１９５２を処理から除外した。その結果として、ベタ区域１９５２は、処理装置が処理しなかった原画像の区域のマスクを反映している。
【００９１】
図１４に戻ると、ステップ１４１０で処理装置は、それ以前のステップで決定されたパラメータ（例えばステップ１４０６および１４０８で決定されたパラメータ）に基づいてローカルトーンマッピングを適用する。ローカルトーンマッピングは（例えば取得されたＨＤＲ画像の）高ダイナミックレンジをより低ダイナミックレンジ画像に、例えば１２、１４、または１６ビットＨＤＲ画像から８ビット画像に圧縮する。例えばローカルトーンマッピングを適用するために次式を使用できる。
【００９２】
ｐ８（ｉ，ｊ）＝（ｙ１＋ｙ２）／２＋（ｙ２−ｙ１）×（ｐ１２（ｉ，ｊ）−ｉｎｔｅｎｓｉｔｙ（ｉ，ｊ））／ｃｏｎｔｒａｓｔ（ｉ，ｊ））      （式２）
ここで、
ｐ１２（ｉ、ｊ）は、位置（ｉ、ｊ）における１２ビット画像の生強度値である。
強度（ｉ、ｊ）は、位置（ｉ、ｊ）の周りのピクセルの周辺に基づく位置（ｉ、ｊ）におけるピクセルの計算された強度である。
コントラスト（ｉ、ｊ）は、位置（ｉ、ｊ）の周りのピクセルの周辺に基づく位置（ｉ、ｊ）におけるピクセルの計算されたコントラストである。
ｐ８（ｉ、ｊ）は、結果として得られる８ビット画像中の対応するピクセル強度値である。
（ｙ１、ｙ２）は、さらに図１７に関連して述べるように、区分線形関数の中央部がある８ビット画像中の値の範囲である。
【００９３】
式２に示すように、ローカルトーンマッピングは強度（ｉ、ｊ）とコントラスト（ｉ、ｊ）の両方を組み込んでいる。コントラスト（ｉ、ｊ）は、本明細書で述べるように、ピクセル値が周辺にどのように広がっているか反映することができる。コントラストは、例えば画像をキャプチャする間の照明、シンボルがどのようにプリント／エッチングされるか、および／または同様の要因に影響され得る。コントラストと強度は画像によって異なる。例えば画像は、シンボルが特定のコントラスト（例えば高コントラストまたは低コントラスト）を有する暗い部分を含むことがあり、画像はまた暗い領域と同様のコントラストを有する淡い／明るい部分を含むことがある。別の例として、画像において全体的な照明は、同様のコントラストを有しながら高コントラストまたは低コントラストであり得る。この技術はコントラストを組み入れることによって、例えば画像強度に関係なく画像の領域内のコントラストを最大にできる。技術は中間グレーレベルに基づいて平均強度を考慮することができる（例えば値が０〜２５６の範囲である場合に画像の平均強度は１２８で範囲の中央にマッピングできる）。
【００９４】
ステップ１４１２で、処理装置はステップ１４１０で計算されたピクセル強度を調整するように構成できる。例えば処理装置は、値が全８ビット範囲を利用するためにｐ８（ｉ、ｊ）強度値をストレッチするように構成できる。図１７は、幾つかの実施形態により、１２ビット値から８ビット値への例示的なマッピングを示すグラフ１７００である。ｘ軸１７０２は０から２１２（すなわち４０９５）に及ぶ１２ビット値を示し、ｙ軸１７０４は０から２８（すなわち２５５）に及ぶ８ビット値を示す。曲線１７０６は、ｘ軸１７０２上の１２ビット値のｙ軸上の８ビット値へのマッピングを示す。垂直線１７０８は強度を示し、矢印１７１０はコントラスト範囲を示し、これは１７１２と１７１４（例えば強度１７０８の最小値と最大値）の間の範囲である。区画１７１６はコントラスト範囲１７１０の下にあり、区画１７１８はコントラスト範囲１７１０の上にある。
【００９５】
一般に、例えば図１５および図１６に示すようにシンボルがバイモーダルである場合、ヒストグラムは２つのピーク、すなわち暗いバーのピーク（低い方のピーク）と明るいスペースのピーク（高い方のピーク）を持つ。システムは値をｘ軸１７０２のスケール０〜４０９５からｙ軸１７０４のスケール０−２５５にマッピングするように構成でき、それによりＩ）スペースは０−２５５の範囲の高い値にマッピングされ、ＩＩ）バーは０から２５５の範囲の低い値にマッピングされ、ＩＩＩ）バーとスペースの間の値はできる限り最良に引き延ばされ（例えば画像は元は生み出された８ビット（またはそれ以下のビット）画像の範囲より大きい範囲を有するＨＤＲ画像であるため）、および／または同様のことが可能になる。バーとスペースの間の値の範囲を引き延ばすために、シンボル内の最も明るいスペースよりも明るい値、またはシンボル内の最も暗いバーよりも暗い値は、それぞれｙ２より上とｙ１より下に圧縮される。図１７はこのマッピングをグラフで示しており、１７０８は平均強度を示し、１７１０は暗いバーと明るいスペースの間のコントラストの測度を示す（例えば本明細書で述べるように、標準偏差を用いて計算する）。ｙ軸１７０４に沿ったｙ値は、ｙ軸がｙ１とｙ２との間にマッピングされるようにマッピングされ、この場合ｙ１は範囲（例えば１０、５など）の点部の近傍にあり、ｙ２は範囲（例えば２４５、２５０など）の頂部の近傍にある。このようにしてｙ１とｙ２との間でマッピングすることによって、本技術はシンボルの分析（例えばシンボルのデコード）には関係がない信号の部分を圧縮できる。
【００９６】
図１８は、幾つかの実施形態により、種々のトーンマッピング技術を使用して処理された例示的な画像を示す。画像１８０２および１８０４は原画像であり、最上位ビットを含むように切り取られる。画像１８１２および１８１４は、（例えば図３に関連して述べた）強度ベースのローカルトーンマッピングを使用して処理された画像である。画像１８２２および１８２４は、（例えば図１４に関連して述べた）コントラストベースのローカルトーンマッピングを使用して処理された画像である。画像１８０２および１８０４によって示されているように、単にビット値を切り取るだけでは最少の利益しかもたらさない（例えば１８０２の２Ｄバーコードは見えず、１８０４の線形バーコードは処理中にデコードされそうにない部分（例えば部分１８０６）を含んでいる）。画像１８１２および１８１４によって示されているように、強度ベースのローカルトーンマッピング技術はより良い画像をもたらし、画像１８１２では２Ｄバーコードとテキストが見えており、画像１８１４では部分１８１６を含めて線形バーコードが改善されている。この例では、コントラストベースのローカルトーンマッピングが最良の低減ビット画像を達成しており、画像１８２２内の２Ｄバーコードとテキストは画像１８１２におけるよりも見やすく、画像１８２４内の線形バーコードがバーコードの周りの背景から目立っている。
【００９７】
画像１８２２および１８２４は、部分１８２６および１８２８など特定の区域で増幅されたノイズを含む。図１９との関連で上述したように、関心のあるシンボルを含まない区域のノイズを増幅することを回避するために、ＨＤＲ画像の一部を処理から除外できる。ノイズ増幅は画像処理アルゴリズムに悪影響を及ぼさないこともがあるので、そのような処理は任意である（例えば画像１８２２および１８２４に示されているように、シンボル情報はシンボルデコード、検査などを可能にするために十分処理できる）。
【００９８】
本明細書で述べるトーンマッピングは、この技術が大量の計算資源、大量のメモリアクセスおよび／または同種のものを必要としないように構成できる。したがってトーンマッピング技術は、ＦＰＧＡのように、計算資源が限られている種々のプラットフォームで実行するために設計できる。
【００９９】
本明細書に記載された原理に従って動作する技術は、何らかの適切な方法で実施できる。例えば実施形態は、ハードウェア、ソフトウェアまたはそれらの組み合わせを使用して実施できる。ソフトウェアで実施される場合、ソフトウェアコードは単一のコンピュータで提供されるか複数のコンピュータに分散されるかにかかわらず、何らかの適切なプロセッサまたはプロセッサの集合体上で実行できる。そのようなプロセッサは、ＣＰＵチップ、ＧＰＵチップ、ＦＰＧＡチップ、マイクロプロセッサ、マイクロコントローラ、またはコプロセッサなどの名前で当技術分野で知られている市販の集積回路部品を含む集積回路部品内の１つ以上のプロセッサを有する集積回路として実装できる。代替としてプロセッサは、ＡＳＩＣなどのカスタム回路、またはプログラマブルロジックデバイスを構成することから生じるセミカスタム回路で実装されてもよい。さらに代替として、プロセッサは市販されているか、セミカスタムであるかカスタムであるかにかかわらず、より大きい回路または半導体デバイスの一部であり得る。具体的な例として、幾つかの市販のマイクロプロセッサは複数のコアを有しており、それらのコアの１つまたはサブセットがプロセッサを構成できるようになっている。しかしプロセッサは何らかの適当なフォーマットの回路を使用して実装できる。
【０１００】
さらに、当然のことながらコンピュータは、ラックマウント型コンピュータ、デスクトップコンピュータ、ラップトップコンピュータまたはタブレット型コンピュータなど幾つかの形態のいずれかで実装できる。加えてコンピュータは、パーソナルデジタルアシスタント（ＰＤＡ）、スマートフォンまたは他の何らかの適当な携帯型または固定型の電子デバイスを含む、一般にコンピュータとは見なされないが適当な処理能力を有するデバイスに埋め込むことができる。
【０１０１】
また、コンピュータは１つ以上の入力デバイスと出力デバイスを有することができる。これらのデバイスは、とりわけユーザインタフェースを提供するために使用できる。ユーザインタフェースを提供するために使用できる出力デバイスの例は、出力を視覚的に提示するためのプリンタまたはディスプレイ画面と、出力を音声で提示するためのスピーカまたは他の音発生装置を含む。ユーザインタフェースに使用できる入力デバイスの例には、キーボード、ならびにマウス、タッチパッド、およびデジタルタブレットなどのポインティングデバイスが含まれる。別の例として、コンピュータは入力情報を音声認識または他の可聴フォーマットで受け取ることがある。図示の実施形態では、入力／出力デバイスは、コンピューティングデバイスから物理的に離れているものとして示されている。しかしながら幾つかの実施形態では、入力デバイスおよび／または出力デバイスは、プロセッサまたはコンピューティングデバイスの他の要素と同じユニットに物理的に統合されてもよい。例えばキーボードはタッチスクリーン上のソフトキーボードとして実施されよう。あるいは入出力デバイスは、コンピューティングデバイスから完全に切り離され、無線接続を介して機能的に統合されてもよい。
【０１０２】
そのようなコンピュータは、ローカルエリアネットワークまたはワイドエリアネットワーク、例えば企業ネットワークまたはインターネットなどを含む、何らかの適切な形態の１つ以上のネットワークによって相互接続できる。そのようなネットワークは何らかの適切な技術に基づいてもよく、何らかの適切なプロトコルに従って動作してもよく、無線ネットワーク、有線ネットワークまたは光ファイバネットワークを含んでもよい。
【０１０３】
また、本明細書で概述した種々の方法またはプロセスは、種々のオペレーティングシステムまたはプラットフォームのいずれか１つを採用する１つ以上のプロセッサ上で実行可能なソフトウェアとしてコーディングできる。さらにそのようなソフトウェアは、任意の数の適切なプログラミング言語および／またはプログラミングツールまたはスクリプトツールを使用して書かれてもよく、実行可能な機械語コード、あるいはフレームワークまたは仮想マシン上で実行される中間コードとしてコンパイルされてもよい。
【０１０４】
これに関して、本発明は１つ以上のプログラムで符号化されるコンピュータ可読記憶媒体（または複数のコンピュータ可読媒体）（例えばコンピュータメモリ、１つ以上のフロッピーディスク、コンパクトディスク（ＣＤ）、光ディスク、デジタルビデオディスク（ＤＶＤ）、磁気テープ、フラッシュメモリ、フィールドプログラマブルゲートアレイもしくは他の半導体デバイスにおける回路構成、または他の有形のコンピュータ記憶媒体）として実施されてよく、これは１つ以上のコンピュータあるいは他のプロセッサ上で実行されるときに、上述した本発明の種々の実施形態を実装する方法を実行する。前述の例から明らかなように、コンピュータ可読記憶媒体は、情報をコンピュータ実行可能命令を非一時的形態で提供するのに十分な時間にわたって保持できる。そのような１つ以上のコンピュータ可読記憶媒体は携帯可能であり得、その上に記憶された１つ以上のプログラムを１つ以上の異なるコンピュータまたは他のプロセッサにロードして上述した本出願の種々の態様を実施できる。本明細書で使用される「コンピュータ可読記憶媒体」という用語は、製造物（すなわち製造物の品目）または機械と見なすことができるコンピュータ可読媒体のみを包含する。代替的または追加的に、本発明は伝搬信号などのコンピュータ可読記憶媒体以外のコンピュータ可読媒体として実施できる。
【０１０５】
「コード」、「プログラム」または「ソフトウェア」という用語は、本明細書では上述した本出願の種々の態様を実装するためにコンピュータまたは他のプロセッサをプログラムするために使用できる、何らかのタイプのコンピュータコードまたはコンピュータ実行可能命令のセットを指すために一般的な意味で用いられている。さらに、この実施形態の一態様によれば、実行されたときに本出願の方法を実行する１つ以上のコンピュータプログラムは、単一のコンピュータまたはプロセッサ上に存在する必要はなく、本出願の種々の態様を実施するために多数の異なるコンピュータまたはプロセッサの間にモジュール方式で分散できる。
【０１０６】
コンピュータ実行可能命令は、１つ以上のコンピュータまたは他のデバイスによって実行されるプログラムモジュールなどの多くの形態で存在し得る。一般にプログラムモジュールは、特定のタスクを実行するか、または特定の抽象的なデータタイプを実装するルーチン、プログラム、オブジェクト、コンポーネント、データ構造などを含む。通常、プログラムモジュールの機能は、種々の実施形態において必要に応じて組み合わせまたは分散できる。
【０１０７】
また、データ構造は、何らかの適切な形態でコンピュータ可読媒体に保存できる。説明を簡単にするために、データ構造はデータ構造内の位置を通して関連するフィールドを有するように示されることがある。そのような関係は、フィールド間の関係を伝達するコンピュータ可読媒体内の位置を有するフィールドに記憶域を割り当てることによっても同様に達成できる。しかしながら何らかの適切な機構を使用して、ポインタ、タグ、またはデータ要素間の関係を確立するその他の機構の使用などを通して、データ構造のフィールド内の情報間の関係を確立することもできる。
【０１０８】
本出願の種々の態様は、単独で、組み合わせて、または前述の実施形態で具体的に説明されていない種々の構成で使用することができ、それゆえその用途においては、前述の説明において記述され、または図面に示された構成要素の詳細および構成に限定されない。例えば一実施形態に記載の態様は、他の実施形態に記載の態様と何らかの方法で組み合わせることができる。
【０１０９】
また、本発明は方法として実施することができ、その例が提供された。方法の一部として実行される動作は、何らかの適切な方法で順序付けられてもよい。したがって実施形態は、例示された実施形態において連続的な動作として示されていても、動作が図示されたものとは異なる順序で実行されるように構成できる。
【０１１０】
本明細書の詳細な説明および特許請求の範囲で使用される不定冠詞「ａ」および「ａｎ」は、そうでないことが明示されない限り、「少なくとも１つ」を意味すると理解されるべきである。
【０１１１】
本明細書の詳細な説明および特許請求の範囲で使用される「および／または」は、そのように結合された要素、すなわちある場合には結合的に存在し、別の場合には分離的に存在する要素の「いずれかまたは両方」を意味すると理解されたい。「および／または」で列挙された複数の要素は同じように、すなわちそのように結合された「１つ以上」の要素と解釈されるべきである。「および／または」節によって具体的に識別された要素以外の他の要素は、具体的に識別された要素に関係するか関係しないかにかかわらず、任意に存在してもよい。したがって非限定的な例として、「Ａおよび／またはＢ」への言及は「含む」など制約のない言葉と組み合わせて使用された場合は、ある実施形態ではＡのみを指し（任意にＢ以外の要素を含む）、別の実施形態ではＢのみを指し（任意にＡ以外の要素を含む）、さらに別の実施形態ではＡとＢの両方を指す（任意に他の要素を含む）、などとなる。
【０１１２】
詳細な説明および特許請求の範囲で１つ以上の要素のリストに関して使用される「少なくとも１つ」という句は、要素のリスト中の１つ以上の要素から選択される少なくとも１つの要素を意味すると理解されるべきであるが、必ずしも要素のリスト内に具体的に列挙されるすべての個々の要素の少なくとも１つを含むものではなく、要素のリスト中の要素の何らかの組み合わせも除外しない。この定義によってまた「少なくとも１つ」という句が指す要素のリスト内で具体的に識別された要素以外の要素が、具体的に識別された要素に関係するか関係しないかにかかわらず任意に存在し得る。したがって非限定的な例として「ＡおよびＢの少なくとも一方」（または同等に「ＡまたはＢの少なくとも一方」、または同等に「Ａおよび／またはＢの少なくとも一方」）は、ある実施形態では任意に１つより多いＡを含む少なくとも１つのＡを指すことができ、Ｂは存在しない（および任意にＢ以外の要素を含む）。別の実施形態では任意に１つより多いＢを含む少なくとも１つのＢを指すことができ、Ａは存在しない（および任意にＡ以外の要素を含む）。さらに別の実施形態では任意に１つより多いＡを含む少なくとも１つのＡと、任意に１つより多いＢを含む少なくとも１つのＢを指すことができ（および任意に他の要素を含む）、などとなる。
【０１１３】
特許請求項で請求要素を修正するために「第１」、「第２」、「第３」などの序数を使用することは、それ自体ではある請求要素の優先度、優先順位またはある請求項の他の請求項に対する序列、または方法の動作が実行される時間的順序を含意せず、単に請求要素を区別するために特定の名前を持つ１つの請求要素と同じ名前を持つ（ただし序数の使用を除く）他の要素から区別するためのラベルとして使用されているにすぎない。
【０１１４】
また、本明細書で使用されている表現および用語は説明を目的としており、限定するものと見なされるべきではない。本明細書における「含む」、「包含する」、「有する」、「持つ」、「伴う」およびそれらの変形の使用は、その後に列挙される項目およびそれらの等価物ならびに追加の項目を包含することを意味する。
【図１】
2019125356.tif 000005
【図２】
2019125356.tif 000006
【図３】
2019125356.tif 000007
【図４Ａ】
2019125356.tif 000008
【図４Ｂ】
2019125356.tif 000009
【図５Ａ】
2019125356.tif 000010
【図５Ｂ】
2019125356.tif 000011
【図５Ｃ】
2019125356.tif 000012
【図６】
2019125356.tif 000013
【図７】
2019125356.tif 000014
【図８】
2019125356.tif 000015
【図９Ａ】
2019125356.tif 000016
【図９Ｂ】
2019125356.tif 000017
【図１０】
2019125356.tif 000018
【図１１】
2019125356.tif 000019
【図１２】
2019125356.tif 000020
【図１３】
2019125356.tif 000021
【図１４】
2019125356.tif 000022
【図１５】
2019125356.tif 000023
【図１６】
2019125356.tif 000024
【図１７】
2019125356.tif 000025
【図１８】
2019125356.tif 000026
【図１９】
2019125356.tif 000027
【外国語明細書】
2019125356000001.pdf