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

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

▶ スリーエム イノベイティブ プロパティズ カンパニーの特許一覧

特許7607648関心要素を有する画像を前処理する装置及び方法
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-12-19
(45)【発行日】2024-12-27
(54)【発明の名称】関心要素を有する画像を前処理する装置及び方法
(51)【国際特許分類】
   G06T 5/40 20060101AFI20241220BHJP
   G06T 7/136 20170101ALI20241220BHJP
【FI】
G06T5/40
G06T7/136
【請求項の数】 12
(21)【出願番号】P 2022521188
(86)(22)【出願日】2020-10-08
(65)【公表番号】
(43)【公表日】2022-12-15
(86)【国際出願番号】 IB2020059470
(87)【国際公開番号】W WO2021070111
(87)【国際公開日】2021-04-15
【審査請求日】2023-10-05
(31)【優先権主張番号】62/913,979
(32)【優先日】2019-10-11
(33)【優先権主張国・地域又は機関】US
(73)【特許権者】
【識別番号】505005049
【氏名又は名称】スリーエム イノベイティブ プロパティズ カンパニー
(74)【代理人】
【識別番号】100130339
【弁理士】
【氏名又は名称】藤井 憲
(74)【代理人】
【識別番号】100135909
【弁理士】
【氏名又は名称】野村 和歌子
(74)【代理人】
【識別番号】100133042
【弁理士】
【氏名又は名称】佃 誠玄
(74)【代理人】
【識別番号】100171701
【弁理士】
【氏名又は名称】浅村 敬一
(72)【発明者】
【氏名】ヤンガース,クリストファー アール.
(72)【発明者】
【氏名】クリストパーソン,ナサン エー.
(72)【発明者】
【氏名】ガンドラッド,ジョナサン ディー.
(72)【発明者】
【氏名】ジョンソン,ジャスティン エム.
(72)【発明者】
【氏名】ファルクノール,サブハラシュミ エム.
【審査官】鈴木 明
(56)【参考文献】
【文献】米国特許出願公開第2018/0349695(US,A1)
【文献】米国特許第09706102(US,B1)
【文献】特開平09-044670(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G06T 5/40
G06T 7/136
(57)【特許請求の範囲】
【請求項1】
埋め込み要素を有する入力画像を処理する方法であって、
プロセッサによって、前記入力画像の1つ以上のヒストグラムを計算することであって、前記1つ以上のヒストグラムの各々が色空間内の色平面上で計算される、ことと、
前記色空間内の色平面を選択することと、
前記1つ以上のヒストグラムのうちの1つにおいて関心範囲を識別することであって、前記1つ以上のヒストグラムのうちの前記1つが前記選択された色平面上で計算される、ことと、
前記プロセッサによって、前記関心範囲に基づいて閾値を判定することと、
前記プロセッサによって、前記閾値を使用して前記入力画像を処理して、出力画像を生成することと、
を含み、
前記関心範囲が、前記埋め込み要素の既知の色強度に少なくとも部分的に基づいて識別される、方法。
【請求項2】
前記入力画像が、画像のシーケンス又は静止画像である、請求項1に記載の方法。
【請求項3】
プロセッサによって、前記出力画像から前記埋め込み要素を抽出すること、
を更に含む、請求項1又は2に記載の方法。
【請求項4】
前記埋め込み要素からコード化された情報を解釈することであって、前記埋め込み要素がコードを含む、こと、
を更に含む、請求項1~3のいずれか一項に記載の方法。
【請求項5】
前記コードが二次元コードである、請求項4に記載の方法。
【請求項6】
前記コードが一次元コードである、請求項4に記載の方法。
【請求項7】
前記関心範囲を識別する前に、前記1つ以上のヒストグラムのうちの前記1つをフィルタでフィルタリングすること、
を更に含む、請求項1~6のいずれか一項に記載の方法。
【請求項8】
前記フィルタがローパスフィルタを含む、請求項7に記載の方法。
【請求項9】
前記ローパスフィルタのカーネルが、3×3マトリックスK[0:2,0:2]であり、ここで、K[1,1]=0及びK[x<>1,y<>1]=1である、請求項8に記載の方法。
【請求項10】
前記出力画像が、前記閾値に基づくバイナリ画像であり、前記出力画像内のピクセルが、前記ピクセルが前記閾値よりも大きい色強度値を有する場合に最大値を有し、前記出力画像内のピクセルが、前記ピクセルが前記閾値以下の色強度値を有する場合に最小値を有する、請求項1~9のいずれか一項に記載の方法
【請求項11】
前記閾値が、前記関心範囲内のヒストグラム値の関数である、請求項1~10のいずれか一項に記載の方法。
【請求項12】
前記埋め込み要素の前記既知の色強度が、前記1つ以上のヒストグラムのうちの前記1つにおける最高ピーク値に近接している、請求項1~11のいずれか一項に記載の方法。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は、関心要素を有する画像の前処理に関する。
【発明の概要】
【0002】
本開示の少なくともいくつかの実施形態は、埋め込み要素を有する入力画像を処理する方法を対象とし、方法は、プロセッサによって、入力画像の1つ以上のヒストグラムを計算することであって、1つ以上のヒストグラムの各々が色空間内の色平面上で計算される、ことと、色空間内の色平面を選択することと、1つ以上のヒストグラムのうちの1つにおいて関心範囲を識別することであって、1つ以上のヒストグラムのうちの1つが選択された色平面上で計算される、ことと、プロセッサによって、関心範囲に基づいて閾値を判定することと、プロセッサによって、閾値を使用して入力画像を処理して、出力画像を生成することと、からなるステップを含み、関心範囲は、埋め込み要素の既知の色強度に少なくとも部分的に基づいて識別される。
【0003】
本開示の少なくともいくつかの実施形態は、デバイスを対象とし、デバイスは、プロセッサと、プロセッサに結合され、かつプロセッサが実行するために記憶されたプログラムを有して、動作を実行するメモリデバイスであって、その動作が、入力画像の1つ以上のヒストグラムを計算することであって、1つ以上のヒストグラムの各々が色空間内の色平面上で計算される、ことと、色空間内の色平面を選択することと、1つ以上のヒストグラムのうちの1つにおいて関心範囲を識別することであって、1つ以上のヒストグラムのうちの1つが選択された色平面上で計算される、ことと、関心範囲に基づいて閾値を判定することと、閾値を使用して入力画像を処理して、出力画像を生成することと、を含む、メモリデバイスと、を備え、関心範囲は、埋め込み要素の既知の色強度に少なくとも部分的に基づいて識別される。
【図面の簡単な説明】
【0004】
添付図面は、本明細書に組み込まれ、本明細書の一部を構成するものであり、明細書本文と共に、本発明の利点及び原理を説明する。図面は以下のとおりである。
【0005】
図1】画像前処理システムの一例のシステム図を示す。
【0006】
図2A】画像前処理システムのフロー図の一例である。
【0007】
図2B】画像前処理システムのフロー図の別の例である。
【0008】
図2C-1】画像前処理システムの一例のフロー図を示す。
図2C-2】画像前処理システムの一例のフロー図を示す。
【0009】
図3A】画像前処理システムの1つの例示的なプロセスを示す。
図3B】画像前処理システムの1つの例示的なプロセスを示す。
図3C】画像前処理システムの1つの例示的なプロセスを示す。
図3D】画像前処理システムの1つの例示的なプロセスを示す。
図3E】画像前処理システムの1つの例示的なプロセスを示す。
図3F】画像前処理システムの1つの例示的なプロセスを示す。
図3G】画像前処理システムの1つの例示的なプロセスを示す。
図3H】画像前処理システムの1つの例示的なプロセスを示す。
図3I】画像前処理システムの1つの例示的なプロセスを示す。
【0010】
図4A】関心要素を有する画像を前処理する画像前処理システムの一例を示し、図4A図4D、及び図4Gは各々、ワークスペース写真の単一平面画像である。
図4B】関心要素を有する画像を前処理する画像前処理システムの一例を示し、図4A図4D、及び図4Gは各々、ワークスペース写真の単一平面画像である。
図4C】関心要素を有する画像を前処理する画像前処理システムの一例を示し、図4A図4D、及び図4Gは各々、ワークスペース写真の単一平面画像である。
図4D】関心要素を有する画像を前処理する画像前処理システムの一例を示し、図4A図4D、及び図4Gは各々、ワークスペース写真の単一平面画像である。
図4E】関心要素を有する画像を前処理する画像前処理システムの一例を示し、図4A図4D、及び図4Gは各々、ワークスペース写真の単一平面画像である。
図4F】関心要素を有する画像を前処理する画像前処理システムの一例を示し、図4A図4D、及び図4Gは各々、ワークスペース写真の単一平面画像である。
図4G】関心要素を有する画像を前処理する画像前処理システムの一例を示し、図4A図4D、及び図4Gは各々、ワークスペース写真の単一平面画像である。
図4H】関心要素を有する画像を前処理する画像前処理システムの一例を示し、図4A図4D、及び図4Gは各々、ワークスペース写真の単一平面画像である。
図4I】関心要素を有する画像を前処理する画像前処理システムの一例を示し、図4A図4D、及び図4Gは各々、ワークスペース写真の単一平面画像である。
【0011】
図面では、同様の参照符号は、同様の要素を示す。正確な縮尺で描かれていない場合がある、上記で特定されている図面は、本開示の様々な実施形態を明示するものであるが、「発明を実施するための形態」で注記されるように、他の実施形態もまた企図される。全ての場合において、本開示は、本明細書で開示される開示内容を、明示的な限定によってではなく、例示的な実施形態を表現することによって説明する。本開示の範囲及び趣旨に含まれる、数多くの他の修正形態及び実施形態を、当業者によって考案することができる点を理解されたい。
【発明を実施するための形態】
【0012】
タグに埋め込まれた単一及び多次元コードは、世界中に遍在する。小売、出荷、及び識別における用途は、いたるところにある。タグをデコードするために必要とされるハードウェア及びソフトウェアは、カスタム機器(例えば、POSレーザスキャナ)からカメラが内蔵されたスマートフォンまで多岐にわたる。タグをデコードするために必要とされる画像処理ソフトウェアは、1)乱雑な可能性のある画像内の単一又は複数のタグ識別、2)タグの向き(例えば、回転及び並進)、及び3)埋め込みコードのデコード及びエラー検出/訂正、を含む、様々なタスクを実行する必要がある。
【0013】
所与の画像がより乱雑になると、画像を処理するためにより多くの計算リソースが必要とされる。多くの場合(例えば、携帯型バッテリ給電デバイスの場合)、コンピューティングリソースは限られているため、処理時間は大きな問題になる。この問題は、ビデオストリームを扱う際に複合され、そこで、処理時間がフレームレートによって制約されるか、又はコンピューティングリソースが複数の同時タスク(例えば、画像処理及びレンダリング)を実行している。本開示のいくつかの実施形態は、出力画像内の埋め込み要素がより少ない時間及びコンピューティングリソース消費で抽出され得るように、埋め込み要素を有する画像を処理して出力画像を生成するシステム及び方法を記載する。本開示のいくつかの実施形態は、要素がデコードソフトウェアによって、より速くかつより効率的にデコードされ得るように、単一又は多次元コード化要素(例えば、2Dコード)を含む画像を前処理する方法を記載する。いくつかの実施形態では、方法は、画像のシーケンス又は静止画像であり得る、1つ以上の埋め込み要素を有する入力から色チャネルを選択することと、入力の色チャネルを処理してデータ分布情報を生成し、埋め込み要素(単数又は複数)を入力の他の要素から分離することと、処理されたデータに基づいて閾値を判定することと、閾値に基づいて出力画像を生成することと、からなるステップを含む。いくつかの実施形態では、方法は、画像をそのN個の構成色に分離することと、N色のうちの1つを選択することと、その色構成を処理して、埋め込み要素(単数又は複数)を最大化し、全ての他の要素を最小化することと、次いで、埋め込み要素(単数又は複数)から情報を抽出するための画像処理ソフトウェア、例えば、デコードソフトウェアに提供されることになる出力画像を生成することと、からなるステップを含む。
【0014】
本明細書に記載される機能、アルゴリズム、及び方法論は、一実施形態ではソフトウェアに実装され得る。ソフトウェアは、ローカル又はネットワーク上のいずれかの、1つ以上の非一時的メモリ又は他の種類のハードウェアベースのストレージデバイスなどの、コンピュータ可読媒体又はコンピュータ可読ストレージデバイス上に記憶されたコンピュータ実行可能命令で構成することができる。更に、そのような機能は、ソフトウェア、ハードウェア、ファームウェア、又はそれらの任意の組み合わせであり得る、モジュール又はプロセッサに対応する。複数の機能は、所望により1つ以上のモジュール又はプロセッサで実行することができ、記載される実施形態は、単なる例に過ぎない。ソフトウェアは、パーソナルコンピュータ、サーバ、又は他のコンピュータシステムなどのコンピュータシステム上で動作する、デジタル信号プロセッサ、ASIC、マイクロプロセッサ、又は他の種類のプロセッサ上で実行することができ、そのようなコンピュータシステムを、専用にプログラムされた機械に変えることができる。
【0015】
場合によっては、埋め込み要素は、区別可能な記号的意味を有する一次元又は二次元要素である。場合によっては、埋め込み要素は、グラフィック要素である。いくつかの実施形態では、埋め込み要素は、一次元又は多次元コードであり得るコードである。場合によっては、埋め込み要素は、不明瞭なコードである。不明瞭なコードは、人間の眼に通常は見えないコードを指すが、特殊な機器を使用すれば、人間の眼に見えるようにレンダリングされるか、又は特殊な機器によって読み取り可能になり得る。不明瞭なコードの例は、人間の眼に見えない波長、例えば、光偏光の操作に依存する赤外線コード、紫外線コード、又はコードにおいて見えるコードである。
【0016】
図1は、画像前処理システム100の一例のシステム図を示している。図示の例では、システム100は、埋め込み要素112及び他の要素114を含む画像データ110、画像キャプチャデバイス130、及びコンピューティングデバイス120、並びに任意選択の照明デバイス140を含む。画像前処理システム100は、例えば、コード抽出、デコードなどの更なる処理のために、画像処理ソフトウェア150に出力画像を提供する。
【0017】
いくつかの実施形態では、画像キャプチャデバイス130は、画像データ、例えば、ビデオストリーム、シーケンシャル画像、又は静止画像をキャプチャするように構成されたカメラ又は他の構成要素である。いくつかの例では、画像キャプチャデバイス130は、モバイルデバイスのカメラであり得る。場合によっては、画像キャプチャデバイス130は、ビデオレコーダ、赤外線カメラ、CCD(電荷結合デバイス)又はCMOSアレイ、レーザスキャナなどの、画像データをキャプチャすることができる他の構成要素を備え得る。更に、キャプチャされた画像データ110は、少なくとも1つの画像、ビデオ、画像のシーケンス(すなわち、ある期間内及び/又はある順序で撮影された複数の画像)、画像の集合などを含むことができ、入力画像という用語は、本明細書では、様々な例示的なタイプの画像データを指すために使用される。
【0018】
いくつかの実施形態では、照明デバイス140(例えば、カメラフラッシュユニット)は、2以上の同時波長を発することができ、コンピューティングデバイス120及び/又は撮像キャプチャデバイス130によって制御可能である。場合によっては、照明デバイス140は、撮像キャプチャデバイス130が選択された波長に敏感であることを前提として、人間の眼の可視波長及び不可視波長(例えば、赤外線又は紫外線)を出力することができる。
【0019】
いくつかの実施形態では、埋め込み要素112、及び/又は他の要素114のうちの少なくとも1つは、既知の画像属性を有し、それによって、コンピューティングデバイス120は、既知の画像属性に基づいて前処理アプローチを選択することができる。画像属性とは、画像内で識別可能な属性、例えば、色強度、テクスチャなどを指す。
【0020】
コンピューティングデバイス120は、回路、コンピュータ、プロセッサ、処理ユニット、モバイルデバイス、マイクロプロセッサ、タブレットコンピュータなどを含むがこれらに限定されない、コンピューティングパワーを有する任意のデバイス、サーバ、又は機器であり得る。場合によっては、コンピューティングデバイス120は、共有コンピューティングデバイス上に実装され得る。或いは、コンピューティングデバイス120の構成要素は、複数のコンピューティングデバイス上に実装され得る。いくつかの実装態様では、コンピューティングデバイス120の様々なモジュール及び構成要素は、ソフトウェア、ハードウェア、ファームウェア、又はそれらの組み合わせとして実装され得る。
【0021】
いくつかの実施形態では、前処理システム100は、高可視性材料、特に、照明デバイス140によって照明される再帰反射材料を有するそれらのタグを利用する、単一及び多次元コード化画像(例えば、QRコード)の標準的なデコードソフトウェア用の出力画像を生成するために画像を前処理するように設計される。本開示のいくつかの実施形態は、多波長(例えば、白色又はRGB光)照明源を装備した、埋め込まれた又は接続されたカラーカメラ/撮像装置を有するスマートフォン又は埋め込みシステムなどの、リソースが限られたハードウェア上のソフトウェアデコードと併せて使用することができる。場合によっては、前処理システム100は、画像内の埋め込み関心要素(単数又は複数)を拡張し、かつ背景を含む他の要素を抑制することによって、キャプチャされた画像内の乱雑さを低減することができる。場合によっては、前処理システム100は、ビデオストリーム、シーケンシャル画像(例えば、チケットスキャン)、又はパノラマ静的画像(例えば、壁上のタグ)をスキャンするのを有用にするオブジェクト識別ではなく、速度に対して最適化される。
【0022】
図2Aは、画像前処理システムのフロー図の一例である。場合によっては、フロー図のステップのシーケンスは、正確な順序を有し得ない。画像前処理システムは、最初に入力画像を受信し(ステップ210A)、入力画像は、ビデオストリーム、画像のシーケンス、又は静止画像であり得る。場合によっては、入力画像は、画像キャプチャデバイスによってキャプチャされる。場合によっては、前処理システムは、単一平面画像を生成し(ステップ215A)、各単一平面画像は、入力画像の色空間内における色平面に対応する。適用可能な色空間には、RGB(赤色、緑色、及び青色)、LAB(例えば、Hunter1948L、a、b色空間、CIE1976(L*、a*、b*)色空間)、CMYK(シアン、マゼンタ、黄色、及びキー色(黒色))、HSV(色相、彩度、及び値)、HSL(色相、彩度、明度)、HSI(色相、彩度、及び強度)、sRGB(標準赤色、緑色、及び青色)色空間が含まれるが、それらに限定されない。一例では、単一平面画像は、各ピクセルが3つの原色(例えば、赤色、緑色、及び青色)サブピクセルの組み合わせで構成されるように、入力画像上のベイヤーフィルタを利用することによって生成され、色平面は、ピクセルの長方形アレイにわたって同じ色のサブピクセルで構成されている。
【0023】
特定の色平面に対して、P-Imageと呼ばれる新しい画像が、色平面データを用いて生成される。一例では、P-Imageは、次いでP-Imageが3つの色平面を有する色空間内の元の入力画像のサイズの3分の1になるように、選択された色平面データのみを含む。別の例として、P-Imageは、P-Imageサイズが元の画像サイズに等しくなるように、選択された色平面データを残りの色平面内に複製することによって構築され得る。RGB色空間内の入力画像の一例として、赤色平面が選択された場合、緑色平面及び青色平面には、対応する赤色データが入力される。P-Imageは、元の画像の3分の1の画像解像度を有することになる。P-Imageを構築する別の例として、関数F1(選択された平面)及びF2(選択された平面)を選択された単一平面画像データに適用して、残りの色平面のデータを生成し、P-Imageサイズは元の画像サイズに等しくなる。関数の例は、線形関数(例えば、Fn(ピクセル)=K*ピクセル)又は非線形関数(例えば、Fn(ピクセル)=If(ピクセル=<K)Thenピクセル=0Elseピクセル=1)であり得るが、これらに限定されない。
【0024】
P-Imageが生成された後、例えば、計算を簡素化し、かつ時間量及び/又はコンピューティングリソースを低減するために、グレースケール画像に変換される。P-Imageは、いくつかの方法でグレースケールに変換され得る。
i.P-Imageが選択された単一平面データのみを使用する場合、それはすでに多ビットグレースケールであり、
ii.P-Imageが選択された平面データを有するRGBフォーマットにある場合、変換関数GS(R、G、B)を適用してグレースケール画像を生成することによって、グレースケールフォーマットに変換することができる。いくつかの例示的な関数には、以下のように赤色チャネル内のR、緑色チャネル内のG、及び青色チャネル内のBの値を有する各ピクセルが含まれるが、これらに限定されない。
GS(R,G,B)=[max(R,G,B)+min(R,G,B)]/2 (1)
GS(R,G,B)=(R+G+B)/3 (2)
GS(R,G,B)=0.21*R+0.72*G+0.07*B (3)
【0025】
P-Imageはまた、閾値処理によって1ビットのグレースケールに変換することができ、グレースケールピクセル値は、P-Imageピクセル値が所定の閾値よりも大きいかどうかに応じて1又は0である。多ビットデータが望ましい場合では、閾値処理されたピクセルに値0又は[(2^Res)-1]を割り当てることができ、ここでResはビットでのピクセル解像度である。例えば、Res=8ビットの場合、値は0~255である。
【0026】
次に、システムは、入力画像の1つ以上のヒストグラムを計算し、各ヒストグラムは画像の単一平面に対応する(220A)。いくつかの実施形態では、システムは、入力画像の色空間内の色平面を選択する(ステップ225A)。場合によっては、色平面は、入力画像内でキャプチャされた埋め込み関心要素、及び/又は入力画像内でキャプチャされた他の要素に基づいて選択される。場合によっては、色平面は、入力画像内でキャプチャされた埋め込み関心要素の既知の色特性、及び/又は入力画像内でキャプチャされた他の要素の既知の色特性に基づいて選択される。例えば、背景にモニタを有するRGB色空間における入力画像の場合、緑色平面又は赤色平面が選択されることになる。場合によっては、色平面は、画像キャプチャデバイス、照明デバイス、埋め込み関心要素、及び画像背景情報の知識に基づいて選択することができ、又は任意選択的に、単一平面画像データに関数(例えば、画像平均又は標準偏差)を適用して、最良の候補を計算することによって選択してもよい。可能な選択基準には、データ分布(すなわち、ヒストグラム)、画像ノイズ、画像コントラスト、画像統計、及びダイナミックレンジが含まれ得るが、これらに限定されない。
【0027】
場合によっては、ステップ220Aは、ステップ225Aの前に行われる。場合によっては、ステップ225Aは、ステップ220Aの前に行われる。次に、システムは、1つ以上のヒストグラムのうちの1つにおける複数のピーク値又は関心範囲を識別し(ステップ230A)、ここで1つのヒストグラムは、選択された色平面に対応する。場合によっては、ヒストグラムをフィルタリングして、高周波ノイズを除去する。場合によっては、畳み込みマトリックスフィルタリングが、高周波ノイズを平滑化するために使用される。一例では、フィルタのカーネル(K)は、3×3マトリックスK[0:2、0:2]であり、ここで、K[1,1]=0及びK[x<>1,y<>1]=1であり、この結果、フィルタを適用する際の計算が簡略化される。上記の例では、カーネルは、忠実度ではなく速度のために選択される。フィルタリング用の他のフィルタ及びカーネルを使用することができる。場合によっては、システムは、埋め込み要素の既知の色強度及び/又は入力画像の他の要素に基づいて、選択された色平面のヒストグラム内の関心範囲を選択する。場合によっては、システムは、後で詳細に説明される局所最大値を判定することによって、ヒストグラム内の2つ以上のピーク値を選択する。
【0028】
システムは、関心範囲の複数のピーク値又は値に基づいて閾値を判定する(240A)。いくつかの例では、埋め込み要素は、高い色強度を有する要素である。例えば、埋め込み要素は、再帰反射タグである。高い強度要素は、多くの場合、入力画像内の最も明るいオブジェクト、例えば、最大ピクセル画像値に近いピクセル値を有する要素である。いくつかの実施形態では、閾値は、複数のピーク値の関数として計算される。場合によっては、閾値は、関心範囲におけるヒストグラム値の関数として計算される。
【0029】
システムは、閾値を使用して入力画像を更に処理して、出力画像を生成する(250A)。Threshold Valueを設定した後、閾値画像ファイルT-Image[N,M]=Threshold(L-Image[N,M],Threshold-Value)が生成される。閾値画像ファイルT-Image[N,M]は、他の画像処理ソフトウェア、例えば、デコードソフトウェアに渡され得る。
【0030】
図2Bは、画像前処理システムのフロー図の別の例である。第1に、システムは、タグ、関心要素の一例を選択された色で照明する(ステップ210B)。場合によっては、選択された色は、原色である。システムは、単一平面画像をキャプチャする(ステップ215B)。場合によっては、システムは、タグを他の色(単数又は複数)で照明し、他の単一平面画像(単数又は複数)をキャプチャしてもよい。システムは、入力画像(単数又は複数)の1つ以上のヒストグラムを計算する(ステップ220B)。他のステップは、図2Aのステップと同じである。
【0031】
図2C-1及び図2C-2は、画像前処理システムの一例のフロー図を示している。ステップのいくつかは任意選択であり、いくつかのステップは、異なる順序で配置され得る。この例では、システムは、画像をキャプチャするか又は画像を受信する(ステップ210C)。次に、システムは、画像をM個の構成平面画像に分離する(ステップ215C)。例えば、システムは、RGB画像を、赤色平面画像、緑色平面画像、及び青色平面画像に分離する。システムは、各平面画像のヒストグラムを生成し(ステップ220C)、次いで、本明細書に記載の選択基準を適用することによって平面Pを選択する(ステップ225C)。システムは、平面画像Pのヒストグラムを評価することによって及び/又は構成パラメータによってのいずれかで、フィルタを適用する必要があるかどうかを決定し(ステップ230C)、「はい」の場合は、ノイズフィルタを適用する(235C)。更に、システムは、ヒストグラムP(240C)の局所ピーク値からピークアレイ[1:N]を構築し、ピークアレイ[1:N]の関数として閾値TBを計算する(ステップ245C)。
【0032】
システムは、出力画像がバイナリ画像であるべきかどうかを評価し(ステップ250C)、「はい」の場合は、Min_value=0及びMax_value=1を設定し(ステップ251C)、「いいえ」の場合は、Min_value=0及びMax_value=Image_maxを設定し、ここで、Rビットピクセルを有する画像に対してImage_max=2^R-1である(ステップ252C)。システムは、Pixel<=TVの場合はPixel=Min_Value、そうでない場合はPixel=Max_Valueとなるように平面Pの全てのピクセルを閾値処理することによって、閾値処理された画像Tを構築する(ステップ255C)。システムは、出力画像が単一平面画像であるべきかどうかに関する入力を受信する(ステップ260C)。入力は、出力画像を受信するための画像処理ソフトウェアに依存し得る。出力画像が単一平面画像ではない場合、システムは、平面Tの関数として全ての画像平面[1:M]を計算し(ステップ265C)、全ての平面に基づいて出力Image-Tを作成することができる(ステップ285C)。出力画像が単一平面である場合、出力Image-T=PlaneTである(ステップ270C)。任意選択的に、システムは、デコードソフトウェア又は別の処理ソフトウェア用にImage-Tをフォーマットする(ステップ275C)。更に、システムは、デコードソフトウェア又は別の処理ソフトウェアにImage-Tを送信又は提供する(ステップ280C)。
【0033】
図3A図3Iは、画像前処理システムの1つの例示的なプロセスを示している。図3Aは、その3つの構成色平面(下部で左から右に示される赤色、緑色、及び青色)に分離されているRGB画像(図の上部)のヒストグラムの例を示している。各色平面において、関心要素の可能性の高い値範囲に対応する関心範囲(ROI)がアウトラインされる。場合によっては、ROIは、最大ピクセル値のパーセンテージ、例えば、値の範囲のトップ25%(最大値に対する最大値の75%)として定義される。各色平面のROIは検査され、特性に応じて、1つ又は2つの平面が選択される。図3Aの例では、青色平面ROIは、多くのサンプルを用いて均一に集められているため、良好な候補ではない。関心要素が画像内の最も明るいオブジェクトである例では、赤色平面は、関心要素を見出すことをより困難にし得るROIの下端において非常に大きなピークを有する。緑色平面は、より少ない高周波数ノイズがより疎に集まっているため、この例の最良の候補である。
【0034】
平面が選択されると、システムは、平面データ又はヒストグラムデータがフィルタリングを必要とするかどうかに関する選択を行うことができる。図3Bは、図3Aの例示的なRGB画像から選択された緑色平面ヒストグラムを示している。図3Dは、フィルタリングされていないヒストグラムを示し、図3Eは、ローパスフィルタ(LPF)を用いてフィルタリングされたヒストグラムを示し、図3Fは、LPFによってフィルタリングされた緑色平面データから生成されたヒストグラムを示している。この例では、平面データをフィルタリングすることにより、結果のヒストグラムは改善されないが、ヒストグラムデータをフィルタリングすることにより、特にROIにおいて、一部のノイズが低減されている。
【0035】
図3Bは、ROIが点線で区切られた、図3Aからの例示的な緑色平面ヒストグラムを示している。前述のように、ROIは、関心要素画像データを含む可能性が最も高い値の範囲である。閾値処理された画像はデコードがより容易であるが、許容可能な結果を生じることができ、計算的に高速であり、かつ閾値処理を必要としない方法は、ROI内の最低値に対応するカットオフ値を確立して、そのカットオフ値を以下の規則に従って緑色平面ピクセルデータを変換するために使用することである。
If(CPix[X,Y]<Cutoff)
Then TPix[X,Y]=0
Else TPix[X,Y]=CPix[X,Y]
ここで、CPix[X,Y]は、選択された平面(例えば、緑色平面)からのピクセル値であり、TPix[X,Y]は、画像処理ソフトウェア、例えばデコードソフトウェアに送信される平面用のピクセル値である。変換された例示的な緑色平面のヒストグラムが、図3Cの底部に示されている。
【0036】
閾値処理が望まれる場合に対して、図3G図3Iは、閾値(「Threshold Value」)をどのように計算できるかの3つの例を示している。図3Gは、図3Aの例示的な緑色平面のROIを示している。このヒストグラムでは、ROIの平均値meanは、通常の方法で計算される。平均値は、ヒストグラム(すなわち、Resolutionがビットでのピクセル解像度である[2^Resolution-1])において、「Max」と呼ばれる最大値から減算される。この差を2で除算し、次いで以下のようにMean値に加算してThreshold Valueを得る。
Threshold Value=(Max-Mean)/2+Mean (6)
【0037】
図3Hは、図3Aの例示的な緑色平面のROIを示している。このヒストグラムでは、ROIに対して、「SD」と呼ばれる標準偏差と共に平均値が再び計算される。Threshold Valueは、以下のように計算される。
Threshold Value=Mean+N*SD (7)
ここで、Nは1~2の数である。
【0038】
図3Iは、図3Aの例示的な緑色平面のROIを示している。このヒストグラムでは、ピークを示す垂直線がヒストグラムに追加されている。この例では、ピークの検査は、それらが3つの値の周りにクラスタ化されている(円で示されている)ことを示し、他の場合には、ピークはより明確であり得る。この場合のThreshold Valueを計算するために、第1のピーク最小エッジ(又はクラスタ化されていない場合の中心)、Pk1と、第2のピーク最大エッジ(又はクラスタ化されていない場合の中心)、Pk2との差を計算し、その差をGと名付ける。Threshold Valueは、以下のように計算される。
G=Pk1-Pk2
Threshold Value=Pk2+M*G (8)
ここで、Mは0.25~0.75の数であり、Pk1>Pk2である。
【0039】
いったん選択された平面(単数又は複数)が処理される(例えば、閾値処理又は変換される)と、出力画像は、前述のように組み立てられ、次いで、更なる処理のためにソフトウェア又は処理ユニットに渡される。
【0040】
図4A図4Iは、関心要素400で画像を前処理する画像前処理システムの一例を示している。システムは、(図4A図4D、及び図4Gに示されるように)各色平面画像のヒストグラムを計算し、このヒストグラムは、図4B図4E図4Hに示されている。システムは、その比較的滑らかなデータ分布、及び白色ピーク(約255にクラスタ化されたデータ)と暗いピーク(約75~115)と間の大きな差のために、赤い平面画像を選択する。色平面画像を検査することにより、システムは、青色平面が赤色及び緑色平面よりも高い輝度のオブジェクト(例えば、モニタ画面)を有することを見出す。これはヒストグラムにおいてアンダースコア化され、ここで青色ヒストグラムは、ヒストグラムの最右側の象限(すなわち、最高輝度値)にはるかに多くの密度を示す。緑色及び赤色ヒストグラムは、第4の象限密度でほぼ等しい。
【0041】
システムは、上述の実施形態のうちの1つを使用して閾値を選択し、関心要素400が拡大された図4C図4F、及び図4Iに示されるように、閾値画像を生成する。システムは、閾値色平面を評価し、たとえ3つの平面全てが読み取り可能なタグ画像を生じる場合でも、赤色平面及び緑色平面内の関心要素を容易に分離することができるが、青色平面内ではそうはできないことを示す。閾値処理された緑色平面は、赤色平面よりもアーチファクトが(わずかに)少ないが、ヒストグラムの最大値(赤色ヒストグラムの右端)からの第1のピークが緑色平面内でより良好に定義され、かつソフトウェアの位置特定が(例えば、微分を使用して極大値及び最小値を位置特定して)より容易であるため、赤色平面は、閾値処理に対してより良好な選択であることになる。
【0042】
本発明は、上記で説明された特定の実施例及び実施形態に限定されると考えられるべきではなく、なぜならば、そのような実施形態は、本発明の様々な態様の解説を容易にするために詳細に説明されているからである。むしろ、本発明は、添付の特許請求の範囲及びそれらの等価物により定義されるような、本発明の趣旨及び範囲に該当する、様々な修正、等価なプロセス、及び代替的なデバイスを含む、本発明の全ての態様に及ぶと理解されるべきである。
なお、各実施形態に加えて以下の態様について付記する。
(付記1)
埋め込み要素を有する入力画像を処理する方法であって、
プロセッサによって、前記入力画像の1つ以上のヒストグラムを計算することであって、前記1つ以上のヒストグラムの各々が色空間内の色平面上で計算される、ことと、
前記色空間内の色平面を選択することと、
前記1つ以上のヒストグラムのうちの1つにおいて関心範囲を識別することであって、前記1つ以上のヒストグラムのうちの前記1つが前記選択された色平面上で計算される、ことと、
前記プロセッサによって、前記関心範囲に基づいて閾値を判定することと、
前記プロセッサによって、前記閾値を使用して前記入力画像を処理して、出力画像を生成することと、
を含み、
前記関心範囲が、前記埋め込み要素の既知の色強度に少なくとも部分的に基づいて識別される、方法。
(付記2)
前記入力画像が、画像のシーケンス又は静止画像である、付記1に記載の方法。
(付記3)
前記1つ以上のヒストグラムのうちの前記1つが、前記埋め込み要素の既知の色特性に基づいて選択される、付記1に記載の方法。
(付記4)
前記1つ以上のヒストグラムのうちの前記1つが、前記画像内の前記埋め込み要素とは異なる要素の既知の色特性に基づいて選択される、付記1に記載の方法。
(付記5)
プロセッサによって、前記出力画像から前記埋め込み要素を抽出すること、
を更に含む、付記1に記載の方法。
(付記6)
前記埋め込み要素からコード化された情報を解釈することであって、前記埋め込み要素がコードを含む、こと、
を更に含む、付記1に記載の方法。
(付記7)
前記コードが二次元コードである、付記6に記載の方法。
(付記8)
前記コードが一次元コードである、付記6に記載の方法。
(付記9)
前記関心範囲を識別する前に、前記1つ以上のヒストグラムのうちの前記1つをフィルタでフィルタリングすること、
を更に含む、付記1に記載の方法。
(付記10)
前記フィルタがローパスフィルタを含む、付記9に記載の方法。
(付記11)
前記ローパスフィルタのカーネルが、3×3マトリックスK[0:2,0:2]であり、ここで、K[1,1]=0及びK[x<>1,y<>1]=1である、付記10に記載の方法。
(付記12)
前記出力画像が、前記閾値に基づくバイナリ画像であり、前記出力画像内のピクセルが、前記ピクセルが前記閾値よりも大きい色強度値を有する場合に最大値を有し、前記出力画像内のピクセルが、前記ピクセルが前記閾値以下の色強度値を有する場合に最小値を有する、付記1に記載の方法。
(付記13)
前記最大値が、2^r-1の式で計算され、ここで、rが前記画像のピクセル解像度であり、前記最小値が0である、付記12に記載の方法。
(付記14)
前記閾値が、前記関心範囲内のヒストグラム値の関数である、付記1に記載の方法。
(付記15)
前記埋め込み要素の前記既知の色強度が、前記1つ以上のヒストグラムのうちの前記1つにおける最高ピーク値に近接している、付記1に記載の方法。
(付記16)
デバイスであって、
プロセッサと、
前記プロセッサに結合され、かつ前記プロセッサが実行するためのプログラムを記憶して、動作を実行するメモリデバイスであって、前記動作が、
前記入力画像の1つ以上のヒストグラムを計算することであって、前記1つ以上のヒストグラムの各々が色空間内の色平面上で計算される、ことと、
前記色空間内の色平面を選択することと、
前記1つ以上のヒストグラムのうちの1つにおいて関心範囲を識別することであって、前記1つ以上のヒストグラムのうちの前記1つが前記選択された色平面上で計算される、ことと、
前記関心範囲に基づいて閾値を判定することと、
前記閾値を使用して前記入力画像を処理して、出力画像を生成することと、を含む、メモリデバイスと、を備え、
前記関心範囲が、前記埋め込み要素の既知の色強度に少なくとも部分的に基づいて識別される、デバイス。
(付記17)
前記入力画像が、画像のシーケンス又は静止画像である、付記16に記載のデバイス。
(付記18)
前記1つ以上のヒストグラムのうちの前記1つが、前記埋め込み要素の既知の色特性に基づいて選択される、付記16に記載のデバイス。
(付記19)
前記1つ以上のヒストグラムのうちの前記1つが、前記画像内の前記埋め込み要素とは異なる要素の既知の色特性に基づいて選択される、付記16に記載のデバイス。
(付記20)
前記関心範囲を識別する前に、前記1つ以上のヒストグラムのうちの前記1つをフィルタでフィルタリングすること、
を更に含む、付記16に記載のデバイス。
図1
図2A
図2B
図2C-1】
図2C-2】
図3A
図3B
図3C
図3D
図3E
図3F
図3G
図3H
図3I
図4A
図4B
図4C
図4D
図4E
図4F
図4G
図4H
図4I