(57)【特許請求の範囲】
【請求項１】
識別コードを生成するための方法であって、
中心を決定するステップと、
前記中心に基づいていくつかの同心円を決定するとともに、前記中心および指定の半径に基づいて、前記中心からの距離が前記半径であるいくつかの位置検出パターンを決定するステップであって、前記いくつかの位置検出パターンは同寸法同心円と多角形とを含み、ステップと、
各位置検出パターンから開始パターンを決定するステップと、
識別コードを取得するために、前記同心円上で、前記開始パターンの位置に基づいて、符号化対象コンテンツに対応するN進文字列を符号化するステップであって、前記N進文字列において隣接するおよび同一の文字に対応するコードは円弧の線分を形成し、前記N進文字列において両方の隣接する文字と異なる文字に対応するコードは点であり、前記N進文字列において異なる文字に対応するコードは異なる色を有し、Nは2以上の正の整数である、ステップと
を含む、方法。
【請求項２】
前記中心および指定の半径に基づいて、前記中心からの距離が前記半径である前記いくつかの位置検出パターンを決定するステップは、
半径が前記指定の半径である同心円を選択し、前記選択した同心円上の前記いくつかの位置検出パターンを決定するステップ、または、
前記いくつかの同心円から任意の同心円を選択し、前記選択した同心円上の前記いくつかの位置検出パターンを決定するステップを特に含む、請求項1に記載の方法。
【請求項３】
前記中心に基づいていくつかの同心円を決定することは、
所定のステップで前記半径を増大および/または低減することによっていくつかの半径を取得することと、
前記中心および前記取得した半径に基づいて前記同心円を決定することと
を特に含む、請求項1に記載の方法。
【請求項４】
前記中心および指定の半径に基づいて、前記中心からの距離が前記半径である前記いくつかの位置検出パターンを決定するステップは、
原点として前記中心を使用して極座標系を確立するステップと、
前記中心および前記指定の半径に基づいて円を決定するステップと、
前記決定した円上で、いくつかの指定の極角に従って、等間隔に配置された、前記いくつかの位置検出パターンを決定するステップと
を特に含む、請求項1に記載の方法。
【請求項５】
前記各位置検出パターンから前記開始パターンを決定するステップは、
前記位置検出パターンに対応する前記極角に基づいて各位置検出パターンから前記開始パターンを決定するステップを特に含む、請求項4に記載の方法。
【請求項６】
前記いくつかの指定の極角は、45度、135度、225度、および315度を含み、
前記位置検出パターンに対応する前記極角に基づいて各位置検出パターンから前記開始パターンを決定するステップは、
前記開始パターンとして135度の極角に対応する位置検出パターンを決定するステップを特に含む、請求項5に記載の方法。
【請求項７】
前記多角形は、正六角形とを含み、
前記同寸法同心円内の各同心円の線の厚みは所定の幅であり、前記同寸法同心円内の2つの隣接する同心円の線の色は異なる、請求項1に記載の方法。
【請求項８】
前記同心円上で、前記開始パターンの前記位置に基づいて、符号化対象コンテンツに対応する前記N進文字列を符号化するステップは、
前記同心円上で、前記開始パターンの前記位置に基づいて、反時計回りまたは時計回りの方向に前記符号化対象コンテンツに対応する前記N進文字列を符号化するステップを特に含む、請求項1に記載の方法。
【請求項９】
前記同心円上で、前記開始パターンの前記位置に基づいて、符号化対象コンテンツに対応する前記N進文字列を符号化するステップは、
前記位置検出パターンの位置および前記中心に基づいて前記同心円を複数のグループの同心円の円弧に分割するステップと、
前記開始パターンの前記位置に基づいて反時計回りまたは時計回りの順に各グループの同心円の円弧上で前記符号化対象コンテンツに対応する前記N進文字列を符号化し、前記グループの同心円の円弧が一杯になると、次のグループの同心円の円弧上で符号化を継続するステップと
を特に含む、請求項1に記載の方法。
【請求項１０】
前記同心円上で、前記開始パターンの前記位置に基づいて、符号化対象コンテンツに対応する前記N進文字列を符号化するステップは、
所定の同心円選択ルールに従って前記同心円から同心円を選択し、前記選択した同心円上で前記符号化対象コンテンツに対応する前記N進文字列を符号化し、前記選択した同心円が一杯になると、前記同心円選択ルールに従って、符号化のために符号化されていない同心円を継続して選択するステップを特に含む、請求項1に記載の方法。
【請求項１１】
前記符号化対象コンテンツは、機能データを含み、
前記符号化対象コンテンツに対応するN進文字列を符号化するステップは、
指定の位置に前記機能データに対応する前記N進文字列を符号化するステップを特に含む、請求項1に記載の方法。
【請求項１２】
前記符号化対象コンテンツに対応するN進文字列を符号化するステップは、
各同心円について、前記同心円上の2つの隣接するコードの間隔が同一となるように、所定の極角の間隔に基づいて前記符号化対象コンテンツに対応する前記N進文字列を連続的に符号化するステップを特に含む、請求項1に記載の方法。
【請求項１３】
前記同心円上で、前記開始パターンの前記位置に基づいて、符号化対象コンテンツに対応する前記N進文字列を符号化するステップは、
前記いくつかの同心円上で、反時計回りまたは時計回りの方向に始点として極角Rから前記符号化対象コンテンツに対応する前記N進文字列を符号化するステップを特に含み、
符号化が反時計回りの方向に行われる場合には、R=135°+α+θであり、符号化が時計回りの方向に行われる場合には、R=135°-α+θであり、αは所定のパラメータであり、θは所定の極間隔である、請求項12に記載の方法。
【請求項１４】
前記所定の極間隔は、任意の同心円上のコードの最大数量に基づいて決定される、請求項12に記載の方法。
【請求項１５】
前記中心に基づいていくつかの同心円を決定することは、
前記中心に基づいて所定の数量の同心円を決定することを特に含み、
前記所定の数量は、3、4、または5のうちの少なくとも1つを含む、請求項1に記載の方法。
【請求項１６】
前記識別コードは、非符号化コンテンツをさらに含み、
前記非符号化コンテンツは、前記いくつかの同心円のうちの最小の半径を有する同心円によって囲まれるエリアに位置し、
前記非符号化コンテンツは、テキスト、シンボル、またはパターンのうちの少なくとも1つを含む、請求項1に記載の方法。
【請求項１７】
識別コードを識別するための方法であって、
画像を取り込むステップと、
前記画像から、識別コードにおける位置検出パターンを決定するステップであって、前記位置検出パターンは、同寸法同心円と多角形とを含む、ステップと、
前記位置検出パターンに基づいて前記識別コードの中心を決定するステップと、
前記中心および前記位置検出パターンに基づいて前記位置検出パターンから開始パターンを決定するステップと、
前記開始パターンの位置に基づいて前記識別コードを識別するステップであって、前記識別コードはいくつかの同心円上にコードを含み、符号化コンテンツにおいて隣接するおよび同一の文字に対応するコードは円弧の線分を形成し、前記符号化コンテンツにおいて隣接する文字と異なる文字に対応するコードは点であり、前記符号化コンテンツにおいて異なる文字に対応する符号化の色は異なる、ステップと
を含む、方法。
【請求項１８】
前記多角形は、正六角形とを含み、
前記画像から、前記識別コードにおける前記位置検出パターンを決定するステップは、
前記画像から複数のグループの同寸法同心円を識別するステップと、
各グループの同寸法同心円における同寸法同心円の各々の位置に基づいて第1の位置を決定するとともに、正六角形が前記第1の位置に存在しているかどうかを決定するステップと、
正六角形が前記第1の位置に存在していると決定したことに応答して、前記グループの同寸法同心円が位置検出パターンであると決定するステップ、または、
正六角形が前記第1の位置に存在していないと決定したことに応答して、前記グループの同寸法同心円が位置検出パターンではないと決定するステップと
を特に含む、請求項17に記載の方法。
【請求項１９】
前記中心および前記位置検出パターンに基づいて前記位置検出パターンから前記開始パターンを決定するステップは、
前記画像における各位置検出パターンおよび前記中心の位置に基づいて原点として前記中心を使用して極座標系を確立するステップと、
前記開始パターンとして135度の極角に対応する位置検出パターンを決定するステップと
を特に含む、請求項17に記載の方法。
【請求項２０】
前記識別コードを識別するステップは、
前記開始パターンの前記位置に基づいて各同心円上の第2の位置を決定するステップと、
前記第2の位置から、前記符号化コンテンツに含まれる機能データを識別するステップと、
前記識別した機能データに基づいて前記識別コードを識別するステップと
を特に含む、請求項17に記載の方法。
【請求項２１】
前記識別した機能データに基づいて前記識別コードを識別するステップは、
前記識別コードが第1の識別方法を使用して識別されることを前記認識した機能データが示している場合には、前記決定した位置検出パターンおよび前記中心に基づいて前記同心円を複数のグループの同心円の円弧に分割するステップと、
前記開始パターンの前記位置に基づいて時計回りまたは反時計回りの順に各グループの同心円の円弧上の前記識別コードを識別するステップと
を特に含む、請求項20に記載の方法。
【請求項２２】
前記開始パターンの前記位置に基づいて前記識別コードを識別するステップは、
前記識別コードが第2の識別方法を使用して識別されることを前記認識した機能データが示している場合には、所定の同心円選択ルールに従って前記いくつかの同心円から同心円を連続的に選択し、時計回りまたは反時計回りの順に前記選択した同心円上の前記識別コードを識別するステップを特に含む、請求項20に記載の方法。
【請求項２３】
識別コード生成装置であって、
中心を決定するように構成される、第1の決定モジュールと、
前記中心に基づいていくつかの同心円を決定するとともに、前記中心および指定の半径に基づいて、前記中心からの距離が前記半径であるいくつかの位置検出パターンを決定するように構成される、第2の決定モジュールであって、前記いくつかの位置検出パターンは同寸法同心円と多角形とを含み、第2の決定モジュールと、
前記位置検出パターンから開始パターンを決定するように構成される、第3の決定モジュールと、
識別コードを取得するために、前記同心円上で、前記開始パターンの位置に基づいて、符号化対象コンテンツに対応するN進文字列を符号化するように構成される、生成モジュールであって、前記N進文字列において隣接するおよび同一の文字に対応するコードは円弧の線分を形成し、前記N進文字列において両方の隣接する文字と異なる文字に対応するコードは点であり、前記N進文字列において異なる文字に対応するコードは異なる色を有し、Nは2以上の正の整数である、生成モジュールと
を含む、装置。
【請求項２４】
識別コード識別装置であって、
画像を取り込むように構成される、取込モジュールと、
前記画像から、識別コードにおける位置検出パターンを決定するように構成される、第1の決定モジュールであって、前記位置検出パターンは、同寸法同心円と多角形とを含む、第1の決定モジュールと、
前記位置検出パターンに基づいて前記識別コードの中心を決定するように構成される、第2の決定モジュールと、
前記中心および前記位置検出パターンに基づいて前記位置検出パターンから開始パターンを決定するように構成される、第3の決定モジュールと、
前記開始パターンの位置に基づいて前記識別コードを識別するように構成される、識別モジュールであって、前記識別コードはいくつかの同心円上にコードを含み、符号化コンテンツにおいて隣接するおよび同一の文字に対応するコードは円弧の線分を形成し、前記符号化コンテンツにおいて隣接する文字と異なる文字に対応するコードは点であり、前記符号化コンテンツにおいて異なる文字に対応する符号化の色は異なる、識別モジュールと
を含む、装置。
【請求項２５】
1つまたは複数のプロセッサとメモリとを含む、サーバであって、前記メモリは、プログラムを記憶し、前記プログラムは、前記1つまたは複数のプロセッサによって、
中心を決定するステップと、
前記中心に基づいていくつかの同心円を決定するとともに、前記中心および指定の半径に基づいて、前記中心からの距離が前記半径であるいくつかの位置検出パターンを決定するステップであって、前記いくつかの位置検出パターンは同寸法同心円と多角形とを含み、ステップと、
各位置検出パターンから開始パターンを決定するステップと、
識別コードを取得するために、前記同心円上で、前記開始パターンの位置に基づいて、符号化対象コンテンツに対応するN進文字列を符号化するステップであって、前記N進文字列において隣接するおよび同一の文字に対応するコードは円弧の線分を形成し、前記N進文字列において両方の隣接する文字と異なる文字に対応するコードは点であり、前記N進文字列において異なる文字に対応するコードは異なる色を有し、Nは2以上の正の整数である、ステップと
を行うように実行されるように構成される、サーバ。
【請求項２６】
1つまたは複数のプロセッサとメモリとを含む、エンドユーザデバイスであって、前記メモリは、プログラムを記憶し、前記プログラムは、前記1つまたは複数のプロセッサによって、
画像を取り込むステップと、
前記画像から、識別コードにおける位置検出パターンを決定するステップであって、前記位置検出パターンは、同寸法同心円と多角形とを含む、ステップと、
前記位置検出パターンに基づいて前記識別コードの中心を決定するステップと、
前記中心および前記位置検出パターンに基づいて前記位置検出パターンから開始パターンを決定するステップと、
前記開始パターンの位置に基づいて前記識別コードを識別するステップであって、前記識別コードはいくつかの同心円上にコードを含み、符号化コンテンツにおいて隣接するおよび同一の文字に対応するコードは円弧の線分を形成し、前記符号化コンテンツにおいて隣接する文字と異なる文字に対応するコードは点であり、前記符号化コンテンツにおいて異なる文字に対応する符号化の色は異なる、ステップと
を行うように実行されるように構成される、エンドユーザデバイス。
【発明の詳細な説明】
【技術分野】
【０００１】
本出願は、情報技術の分野に関し、詳細には、識別コードを生成および識別するための方法および装置に関する。
【背景技術】
【０００２】
現時点、主流となっている識別コードは、通常、バーコードおよび2次元コードである。2次元コードは、大量のデータを搬送することができ、画像、オーディオ、およびビデオなどの情報に書き込むことができ、識別成功率は、2次元コードをより広範に提供することができるように、より高いものとなっているため、ユーザ(例えば、人または企業)によって主に使用される識別コードに徐々になりつつある。
【０００３】
一般的に、2次元コードの基本構成は、位置検出パターン(Position Detection Pattern、位置決めスタブとも称する)、機能データ、およびデータコードである。位置決めスタブは、2次元コードを識別する際に2次元コードのデータストレージエリア(すなわち、機能データエリアまたはデータコードエリア)を決定するように構成される。機能データは、データコードを識別する方式を識別中に決定することができるように、2次元コードのバージョン情報を提供するために使用される。データコードは、図1に示しているように、コンテンツを記憶しているコードである(例えば、画像をバイナリコードに変換した後に、黒塗りブロックが1を示すために使用され、非黒塗りブロックが0を示すために使用され、画像コンテンツをデータコードに変換して2次元コードに書き込む)。当然のことながら、既存の2次元コード生成技術には様々な符号化方式が存在しており、上記の説明は例に過ぎない。
【０００４】
加えて、データコードは、エラーに耐性を持たせるために使用される誤り補正コードをさらに含み得るし、誤り補正コードは、2次元コードが損傷している場合にはデータコードに対応する完全なコンテンツを識別するのに役立ち得る。
【０００５】
既存の識別コード技術に基づいて、本出願は、新たな識別子生成および識別プロセスを提供している。
【発明の概要】
【課題を解決するための手段】
【０００６】
本明細書の実施形態は、既存技術において生じる識別コードの比較的画一的な形式についての問題および不十分なユーザエクスペリエンスを解決するために、識別コードを生成および識別するための方法および装置を提供している。
【０００７】
本開示の実施形態は、以下の技術的ソリューションを使用している。
【０００８】
識別コードを生成するための方法は、中心を決定するステップと、中心に基づいていくつかの同心円を決定するとともに、中心および指定の半径に基づいて、中心からの距離が半径であるいくつかの位置検出パターンを決定するステップであって、いくつかの位置検出パターンはすべてが同一というわけではない、ステップと、各位置検出パターンから開始パターンを決定するステップと、識別コードを取得するために、同心円上で、開始パターンの位置に基づいて、符号化対象コンテンツに対応するN進文字列を符号化するステップであって、N進文字列において隣接するおよび同一の文字に対応するコードは円弧の線分を形成し、N進文字列において両方の隣接する文字と異なる文字に対応するコードは点であり、N進文字列において異なる文字に対応するコードは異なる色を有し、Nは2以上の正の整数である、ステップとを含む。
【０００９】
識別コードを識別するための方法は、画像を取り込むステップと、画像から、識別コードにおける位置検出パターンを決定するステップと、位置検出パターンに基づいて識別コードの中心を決定するステップと、中心および位置検出パターンに基づいて位置検出パターンから開始パターンを決定するステップと、開始パターンの位置に基づいて識別コードを識別するステップであって、識別コードはいくつかの同心円上にコードを含み、符号化コンテンツにおいて隣接するおよび同一の文字に対応するコードは円弧の線分を形成し、符号化コンテンツにおいて隣接する文字と異なる文字に対応するコードは点であり、符号化コンテンツにおいて異なる文字に対応する符号化の色は異なる、ステップを含む。
【００１０】
識別コード生成装置は、中心を決定するように構成される、第1の決定モジュールと、中心に基づいていくつかの同心円を決定するとともに、中心および指定の半径に基づいて、中心からの距離が半径であるいくつかの位置検出パターンを決定するように構成される、第2の決定モジュールであって、いくつかの位置検出パターンはすべてが同一というわけではない、第2の決定モジュールと、位置検出パターンから開始パターンを決定するように構成される、第3の決定モジュールと、識別コードを取得するために、同心円上で、開始パターンの位置に基づいて、符号化対象コンテンツに対応するN進文字列を符号化するように構成される、生成モジュールであって、N進文字列において隣接するおよび同一の文字に対応するコードは円弧の線分を形成し、N進文字列において両方の隣接する文字と異なる文字に対応するコードは点であり、N進文字列において異なる文字に対応するコードは異なる色を有し、Nは2以上の正の整数である、生成モジュールとを含む。
【００１１】
識別コード識別装置は、画像を取り込むように構成される、取込モジュールと、画像から、識別コードにおける位置検出パターンを決定するように構成される、第1の決定モジュールと、位置検出パターンに基づいて識別コードの中心を決定するように構成される、第2の決定モジュールと、中心および位置検出パターンに基づいて位置検出パターンから開始パターンを決定するように構成される、第3の決定モジュールと、開始パターンの位置に基づいて識別コードを識別するように構成される、識別モジュールであって、識別コードはいくつかの同心円上にコードを含み、符号化コンテンツにおいて隣接するおよび同一の文字に対応するコードは円弧の線分を形成し、符号化コンテンツにおいて隣接する文字と異なる文字に対応するコードは点であり、符号化コンテンツにおいて異なる文字に対応する符号化の色は異なる、識別モジュールとを含む。
【００１２】
サーバは、1つまたは複数のプロセッサとメモリとを含み、メモリは、プログラムを記憶し、プログラムは、1つまたは複数のプロセッサによって、中心を決定するステップと、中心に基づいていくつかの同心円を決定するとともに、中心および指定の半径に基づいて、中心からの距離が半径であるいくつかの位置検出パターンを決定するステップであって、いくつかの位置検出パターンはすべてが同一というわけではない、ステップと、各位置検出パターンから開始パターンを決定するステップと、識別コードを取得するために、同心円上で、開始パターンの位置に基づいて、符号化対象コンテンツに対応するN進文字列を符号化するステップであって、N進文字列において隣接するおよび同一の文字に対応するコードは円弧の線分を形成し、N進文字列において両方の隣接する文字と異なる文字に対応するコードは点であり、N進文字列において異なる文字に対応するコードは異なる色を有し、Nは2以上の正の整数である、ステップとを行うように実行されるように構成される。
【００１３】
エンドユーザデバイスは、1つまたは複数のプロセッサとメモリとを含み、メモリは、プログラムを記憶し、プログラムは、1つまたは複数のプロセッサによって、画像を取り込むステップと、画像から、識別コードにおける位置検出パターンを決定するステップと、位置検出パターンに基づいて識別コードの中心を決定するステップと、中心および位置検出パターンに基づいて位置検出パターンから開始パターンを決定するステップと、開始パターンの位置に基づいて識別コードを識別するステップであって、識別コードはいくつかの同心円上にコードを含み、符号化コンテンツにおいて隣接するおよび同一の文字に対応するコードは円弧の線分を形成し、符号化コンテンツにおいて隣接する文字と異なる文字に対応するコードは点であり、符号化コンテンツにおいて異なる文字に対応する符号化の色は異なる、ステップとを行うように実行されるように構成される。
【００１４】
本明細書の実施形態において使用される上記で説明した少なくとも1つの技術的ソリューションは、以下の有益な効果を達成することができる。
【００１５】
本明細書において提供した方法に従って、識別コードを生成する場合には、同心円上にいくつかの円弧の線分と点とを含む識別コードを生成することができるように、符号化対象コンテンツに対応するN進文字列をいくつかの同心円上で位置検出パターンにおける開始グラフから開始して符号化する。そのため、識別コードの形式はより豊富なものとなり、識別コードを使用すること(例えば、識別コードを識別および表示すること)におけるユーザエクスペリエンスはより良いものとなる。
【００１６】
添付の図面は、本出願のさらなる理解を提供するために使用しており、本明細書の一部を構成し、本出願の実施形態とともに本出願を説明するために使用しているが、本出願に対する限定を構成するものではない。添付の図面は以下の通りである。
【図面の簡単な説明】
【００１７】
【図１】既存の2次元コードを図示している概略構造図である。
【図２】本明細書の実施形態による、識別コード生成プロセスを示している図である。
【図３】本明細書の実施形態による、中心を決定するプロセスを図示している概略図である。
【図４ａ】既存の2次元コードの位置検出パターンを図示している概略図である。
【図４ｂ】本明細書の実施形態による、位置検出パターンを図示している概略図である。
【図４ｃ】本明細書の実施形態による、すべてが同一というわけではない位置検出パターンを図示している概略図である。
【図５ａ】本明細書の実施形態による、いくつかの同心円を決定するプロセスを図示している概略図である。
【図５ｂ】本明細書の実施形態による、異なる符号の5つの同心円を決定するプロセスを図示している概略図である。
【図６ａ】本明細書の実施形態による、位置検出パターンを決定するプロセスを図示している概略図である。
【図６ｂ】本明細書の実施形態による、位置検出パターンを決定するプロセスを図示している概略図である。
【図６ｃ】本明細書の実施形態による、位置検出パターンを決定するプロセスを図示している概略図である。
【図６ｄ】本明細書の実施形態による、位置検出パターンを決定するプロセスを図示している概略図である。
【図７ａ】本明細書の実施形態による、符号化によって得られるパターンを図示している概略図である。
【図７ｂ】本明細書の実施形態による、符号化によって得られるパターンを図示している概略図である。
【図７ｃ】本明細書の実施形態による、極間隔を図示している概略図である。
【図８ａ】本明細書の実施形態による、同心円を複数のグループの同心円の円弧に分割する方法を図示している概略図である。
【図８ｂ】本明細書の実施形態による、あるグループの同心円の円弧に対する書き込み方向についての方法を図示している概略図である。
【図８ｃ】本明細書の実施形態による、あるグループの同心円の円弧に対する書き込み方向についての方法を図示している概略図である。
【図８ｄ】本明細書の実施形態による、書き込み方向についての別の方法を図示している概略図である。
【図９】本明細書の実施形態による、書き込み始点および書き込み終点を図示している概略図である。
【図１０】本明細書の実施形態による、書き込み後に得られる識別コードを図示している概略図である。
【図１１】本明細書の実施形態による、識別コード識別プロセスを示している図である。
【図１２】本明細書の実施形態による、識別コード生成装置を図示している概略構造図である。
【図１３】本明細書の実施形態による、識別コード識別装置を図示している概略構造図である。
【図１４】本明細書の実施形態による、サーバを図示している概略構造図である。
【図１５】本明細書の実施形態による、エンドユーザデバイスを図示している概略構造図である。
【発明を実施するための形態】
【００１８】
既存技術においては、識別コード生成元(通常は、業者、企業、または人)が、既存の識別子生成ルール(例えば、PDF417、QR Code、Code 49、Code 16K、およびCode Oneなどのルール)に従って提供する必要があるコンテンツを符号化して、識別コードを取得する。コンテンツが、その後、識別コードを識別客体(通常はユーザ)に提供することによって提供される。
【００１９】
一般的に、コードに対応するコンテンツを提供することに加えて、識別コードは、ユーザが識別コードに含まれるコンテンツまたは識別コードに含まれるコンテンツのタイプを大まかに決定するように、ユーザに識別コードの利用法をプロンプト通知するために使用され得る非符号化コンテンツ、コードコンテンツなどをさらに提供し得る。非符号化コンテンツは、パターン、文字、テキストなどの形式で識別コードに追加されて、ユーザに提供され得る。例えば、非符号化コンテンツはブランドの商標(ロゴ)であり、その結果、ユーザが識別子を目にしたとき、ユーザは識別コードによって提供されるコンテンツのブランドを大まかに決定することができる。あるいは、非符号化コンテンツは、識別コードの利用法、例えば、「スキャンして支払いをして下さい」または「スキャンしてクーポンを得て下さい」といったテキストであり、その結果、非符号化コンテンツを目にしたユーザが識別コードの利用法を大まかに理解することができる。
【００２０】
以下では説明のために非符号化コンテンツがブランドのロゴである例を使用している。既存技術においては、ロゴは、ブランドについてのユーザの認識を確立するために一般的に使用され、ロゴの所有者(本ソリューションにおいては識別情報のコンテンツプロバイダとみなしてよい)は、ユーザが徐々にロゴの認識を確立するように、広告などの方式でロゴについての公開を改善する。ユーザが異なるブランドのロゴを目にしたとき、ユーザは、そのロゴに対応している業者、企業、または個人のタイプを直感的に決定し得る。
【００２１】
ロゴを識別情報に追加することは、識別情報によって提供されるコンテンツがロゴに対応するブランドに関する情報であることをユーザに提供し得るし、識別子を識別するようにブランドに関心を持っているユーザを引き付け得る。
【００２２】
しかしながら、識別情報の産出の目的は、非符号化コンテンツを提供することではなくマシンを使用して大量かつ素早くコンテンツを取得することに主にある。したがって、一般的に、非符号化コンテンツは、識別コードにおける比較的小さなエリアを占有することになり、非符号化コンテンツによって提供することができる情報は制限されている。
【００２３】
例えば、既存技術を使用して生成される2次元コードにロゴを追加することができるとしても、2次元コードにおいてロゴが占有するエリアは一般的に小さく、ほとんどのエリアが主に2次元コードの「コード」である。結果として、ロゴは明白なものとはならない。2次元コードのサイズが制限されているケース(例えば、1平方センチメートルのエリアを有するプリントされた2次元コード)では、表示されるロゴの明瞭さはさらに影響を受け、ユーザが2次元コードにおけるロゴを識別することが困難となり、識別コードの内容をロゴに従って決定することも困難となる。
【００２４】
ロゴを既存技術において生成される識別情報に追加することができるとしても、ロゴが明白または明瞭ではないため、ユーザが識別コード中のロゴを認識することが困難であることを理解できよう。ユーザから見れば、異なる識別コード間の違いは小さい。しかしながら、識別コードの使用が日常的なものとなるにつれて、識別コードは広範に使用されることになるが、対応するブランド認識効果は改善されていない。識別コードのコンテンツプロバイダにとっては、そのことはリソースの無駄となっている。
【００２５】
換言すれば、既存の識別コード技術によって生成された識別コードはブランド認識効果を改善することが困難であり、大きなリソースの無駄が生じることになる。加えて、識別コードの形式は比較的画一的であり、ユーザエクスペリエンスは不十分である。
【００２６】
本明細書の実施形態は、既存技術において生じる識別コードの比較的画一的な形式についての問題および不十分なユーザエクスペリエンスを解決するために、識別コードを生成および識別するための方法および装置を提供している。
【００２７】
本明細書の目的、技術的ソリューション、および利点をより明確にするために、本明細書の特定の実施形態および対応する添付の図面を参照して、本出願の技術的ソリューションを明確に以下に説明している。説明した実施形態が本出願の実施形態のすべてではなく一部であることは明らかであろう。すべての創造的努力無しで本出願の実施形態に基づいて当業者によって得られる他の実施形態も本出願の保護範囲に含まれるものとする。
【００２８】
以下では添付の図面を参照して本出願の実施形態において提供した技術的ソリューションを詳細に説明している。
【００２９】
図2は、本明細書の実施形態による、識別コードを生成するプロセスであり、特に以下のステップを含み得る。
【００３０】
S100. 中心を決定する。
【００３１】
本明細書の1つまたは複数の実施形態においては、識別コードの生成元のデバイス(サーバ、コンピュータ、またはモバイルデバイスなどであり、以下では説明のための例としてサーバを使用している)は、要件に基づいて識別コードにコンテンツを書き込んで識別コードを生成し得る。サーバは、単一のデバイス、または例えば分散システムといった複数のデバイスを含むシステムであり得るが、このことは本明細書に限定されない。
【００３２】
ここで、本明細書において生成される識別コードは、外観に関する主な要素として円を使用しているパターンである。したがって、サーバは、まず、(図3に示しているように)識別コードの中心として中心を決定し、後続の動作を経て中心に基づいて識別コードを生成し得る。
【００３３】
図3は、本明細書の本実施形態において提供した中心を図示している概略図である。点は中心を表しており、点線の円は点が円の中心であることを表しており、このことは点が中心であることを示すために図3における補助的な説明として使用している。
【００３４】
S102. 中心に基づいていくつかの同心円を決定するとともに、中心および指定の半径に基づいて、中心からの距離が半径であるいくつかの位置検出パターンを決定する。
【００３５】
既存技術と同様に、サーバは、まず、生成対象の識別情報の位置検出パターンを決定する必要がある。本明細書の本実施形態においては、サーバは、ステップS100において決定した中心および指定の半径に基づいて、中心からの距離が指定の半径であるいくつかの位置検出パターンを決定し得る。加えて、サーバは、中心に基づいていくつかの同心円をさらに決定し得る。この場合には、決定したいくつかの同心円は、後続の符号化を行う際の符号化位置を決定するために使用され得る。
【００３６】
本明細書においては、サーバによって決定された位置検出パターンは異なり得るし、位置検出パターンの形状は、同寸法同心円と正六角形とを含み得る。加えて、図4aに示しているような、位置検出パターンが同心四角形であり、垂直方向および水平方向におけるヘテロクロマティックピクセルの比が1:1:3:1:1である、既存の2次元コードとは異なり、本明細書においては、形状が同寸法同心円である位置検出パターンは、任意の直径方向にあり、ヘテロクロマティックピクセルの比が1:1:1:1:1である。すなわち、図4bに示しているように、同寸法同心円の各々の線は同じ厚みであり、線の厚みは所定の幅であり得る。
【００３７】
ここで、形状が同寸法同心円である3つの位置検出パターンが存在し得るし、形状が正六角形である1つの位置検出パターンが存在し得る。この場合には、形状が同寸法同心円である位置検出パターンは、識別コードを識別する際に識別コードの位置を予め決定するために使用される(または、形状が同寸法同心円である位置検出パターンを使用して識別コードの位置を主に決定する)。形状が正六角形である位置検出パターンは、アブノーマル位置検出パターンとして使用され、識別コードを識別する際に補助的な位置決めのために使用され得る。当然のことながら、本明細書においては、位置検出パターンの数量も、例えば、形状が同寸法同心円である4つの位置検出パターンおよび形状が正六角形である2つの位置検出パターンといった、要件に基づいて、設定され得る。
【００３８】
加えて、正六角形が同寸法同心円とは異なり、正六角形の境界が直線であるため、識別コードを識別するプロセスにおいて、形状が正六角形である位置検出パターンは、識別コードの歪みの状態、傾斜の状態などを決定することを支援するためにさらに使用され得る。特に、形状が正六角形である位置検出パターンの辺長は、要件に基づいて設定され得るが、このことは本明細書に限定されない。例えば、形状が正六角形である位置検出パターンの外円の直径は、図4cに示しているように、形状が同寸法同心円である位置検出パターンの最大の直径と等しい。
【００３９】
当然のことながら、上記の2つの形状の位置検出パターンに加えて、サーバは、例えば、四角形、正三角形、同心長方形、またはシンボルを有するパターンといった、異なる形状の位置検出パターンをさらに生成し得る。位置検出パターンの形状およびパターンは、本明細書に限定されず、要件に基づいて設定され得る。
【００４０】
加えて、サーバは、図5aに示しているように、中心に基づいていくつかの同心円をさらに決定し得る。サーバによって実際に生成される上記で説明した位置検出パターンとは異なり、いくつかの同心円はバーチャルである。同心円は、識別コード生成プロセスにおける後続の符号化を支援するためにだけに使用され、識別コードを生成した後に識別コードが表示される際には表示されない。
【００４１】
さらに、ステップS102においては、サーバが位置検出パターンを決定するステップとサーバが補助的な符号化のためにその後使用される同心円を決定するステップとの間には論理シーケンスが存在しても論理シーケンスが存在しなくてもよい。論理シーケンスが存在する場合には、サーバは、まず、位置検出パターンを決定し、その後、位置検出パターンに基づいていくつかの同心円を決定し得る、または、サーバは、まず、いくつかの同心円を決定し、その後、同心円の少なくとも1つに基づいて位置検出パターンを決定し得る。
【００４２】
以下では上記で説明した2つのステップの間に存在する論理シーケンスの例を使用して3つの方法を提供している。
【００４３】
特に、本明細書の本実施形態において提供した第1の方法においては、サーバは、まず、中心に基づいていくつかの同心円を決定し得る。位置検出パターンを中心および指定の半径に基づいて決定すると、半径が指定の半径である同心円が、決定した同心円からまず選択され、その後、位置検出パターンが選択した同心円上で決定される。
【００４４】
あるいは、本明細書の本実施形態において提供した第2の方法においては、サーバは、まず、中心に従っていくつかの同心円を決定し、決定した同心円から任意の同心円を選択し、指定の半径として選択した同心円の半径を使用し、その後、選択した同心円上の位置検出パターンを決定し得る。説明の便宜上、位置検出パターンが位置している同心円の半径(すなわち、指定の半径)をCodeRで表している。
【００４５】
さらに、本明細書の本実施形態において提供した第3の方法においては、サーバは、まず、中心および指定の半径に基づいていくつかの位置検出パターンを決定し得る。各同心円を決定する場合には、サーバは、指定の半径を使用して第1の同心円を確立し、その後、いくつかの半径を取得するために所定のステップ長で半径を増大および/または低減し、その後、中心および取得した半径に基づいて同心円を決定し得る。加えて、サーバは、所定の数量の同心円を決定し得る、ここで、所定の数量は、3、4、または5のうちの少なくとも1つであり得る。所定のステップは、要件に基づいて設定され得る。例えば、所定のステップは、図5bに示しているように、形状が同心円のものと等しい線の厚みの二倍である。
【００４６】
指定の半径を使用して決定される同心円には0のリングと符号がつけられており、-1のリングと符号がつけられている同心円および-2のリングと符号がつけられている同心円が所定のステップ長で指定の半径を低減することによって得ることができ、1のリングと符号がつけられている同心円および2のリングと符号がつけられている同心円が所定のステップ長で指定の半径を増大することによって得ることができることが図5bから理解できよう。形状は、位置検出パターンの中心が0のリング上に位置している同寸法同心円であり、同寸法同心円は、-1のリングおよび1のリングの同心円に接している。
【００４７】
さらに、位置検出パターンを決定する場合には、サーバは、中心および指定の半径に基づいて決定された同心円上の指定の極角にある位置検出パターンを決定し得る。説明を簡潔にするために、以下では3つの同心円を決定する例を使用して説明しており、形状が同寸法同心円である3つの位置検出パターンが存在するとともに、形状が正六角形である1つの位置検出パターンが存在している。
【００４８】
まず、サーバは、図6aに示しているように、原点としてステップS100において決定した中心を使用して極座標系を確立し得る。その後、円を中心および指定の半径に基づいて決定し得る。図6bに示しているように、決定した円の指定の半径は、CodeRであり、0のリングと符号がつけられている。(加えて、上述したように、サーバは、さらに、図6cに示しているように、他の2つの同心円がそれぞれ-1のリングおよび1のリングと符号がつけられていると決定し、)その後、図6dに示しているように、(4つの位置検出画像を例として使用しているため指定の極角の数量も4となるため)極角に基づいて、決定した円上で等間隔に配置された、いくつかの位置検出パターンを決定し得る。指定の極角は、それぞれ45度、135度、225度、および315度である。
【００４９】
加えて、上記で説明した等間隔に配置された位置検出パターンは、図6bに示した円上の位置検出パターンの間隔弧度が等しくすべて90度であることを示している。
【００５０】
S104. 各位置検出パターンから開始パターンを決定する。
【００５１】
本明細書の本実施形態においては、位置検出パターンを決定した後に、サーバは、後続の符号化を開始グラフの位置に基づいて決定した同心円上で行うことができるように、各位置検出パターンにおける開始グラフをさらに決定し得る。
【００５２】
特に、ステップS102においては、いくつかの位置検出パターンをいくつかの指定の極角に従って決定する。したがって、サーバは、各位置検出パターンに対応する極角に従って位置検出パターンから開始グラフを決定し得る。サーバは、指定の極角をランダムに選択して開始グラフを決定し得る、または、要件に基づいて指定の極角から指定の極角を選択して開始グラフを決定し得る。ただし、識別コードを識別するプロセスにおいて、位置検出パターンの1つが開始グラフであると識別客体のデバイスが決定し得るならば、本明細書に限定されない。
【００５３】
当然のことながら、識別効率を改善し識別を容易にするために、サーバは、一般的に、各位置検出パターンについて識別コードの開始パターンの位置を生成し得る。例えば、本明細書の本実施形態においては、サーバは、開始グラフとして、図6dに示した極座標系において対応する極角が135度となっている位置検出パターンを決定し得る。説明を簡潔にするために、135度の位置検出パターンが開始グラフとして決定される例を使用して後続の説明も行っている。
【００５４】
S106. 識別コードを取得するために、開始グラフの位置に基づいていくつかの同心円上で、符号化対象コンテンツに対応するN進文字列を符号化する。
【００５５】
本明細書の本実施形態においては、位置検出パターンおよび開始グラフを決定した後に、サーバは、識別コードの符号化エリア(すなわち、符号化のためのエリア)を決定し、符号化を行って識別コードを取得し得る。加えて、サーバがステップS102において符号化のために使用される同心円を決定しているため、サーバは、反時計回りまたは時計回りの順に、各同心円上で符号化対象コンテンツに対応するN進文字列を符号化して識別コードを取得し得る。
【００５６】
ここで、N進文字列において隣接するおよび同一の文字に対応するコードは円弧の線分を形成し、N進文字列中において隣接する文字と異なる文字に対応するコードは点であり、N進文字列において異なる文字に対応するコードの色は異なっており、Nは2以上の正の整数である。加えて、点は丸点であり得る、または、円弧の線分は丸い角の丸い円弧の線分であり得る。丸点の半径は、丸い円弧の線分の幅と同一であり、形状が同寸法同心円である位置検出パターンの線の厚みと等しくなり得る。当然のことながら、本明細書はそのことに限定しない。
【００５７】
例えば、Nが2である場合を説明のための例として使用する。画像が符号化対象コンテンツとして使用されると仮定する。サーバは、既存技術と同一の方法を使用して画像をバイナリ文字に変換し得る。バイナリ文字が「0100111111…」であると仮定する。符号化を同心円上で行った後に、図7aに示した円弧の線分および点を得ることができる。文字「0」に対応する色が白であり文字「1」に対応する色が黒である例を一例として使用している。本明細書における所見の便宜上、黒い輪郭線を文字「0」に対応するコードを追加しており、白い輪郭線を文字「1」に対応するコードを表示するために円弧の線分に追加している。実際のコードは図7bに示すことができ、すなわち、実際に表示が行われる場合には、図7aに示した黒い輪郭線も白い輪郭線も表示されない。
【００５８】
加えて、本明細書においては、符号化対象コンテンツに対応するN進文字列を符号化する場合には、サーバは、図7cに示しているように、符号化対象コンテンツの任意の同心円上の2つの隣接するコード間の間隔が同一となるように、各同心円について所定の極間隔(以降、θで表す)で符号化対象コンテンツに対応するN進文字列を連続的に符号化し得る。図7cは、識別コードにおけるコードの局所拡大図である。0のリングの識別子を有する同心円上で2つの隣接するコード間の間隔が同一の弧度を有していることが理解できよう。
【００５９】
特に、極角の間隔は、任意の同心円上のコードの最大数量に基づいて決定され得る。例えば、同心円上のコードの最大数量が252である場合には、108個の位置が各位置検出パターンによって占有されている、すなわち、占有する位置検出パターンが存在していなければ、同心円上のコードの最大数量は360である。所定の極間隔は、式θ=360°/βに基づいた計算を経て決定され得る、ここで、θは極角の間隔であり、βは最大符号化数量である。
【００６０】
本明細書においては、各同心円について、同心円の数量が3であり、各同心円上に書き込むことができるコードの最大数量が112(各位置検出パターンによって占有されるビットを含む)である場合には、符号化対象コンテンツに対応するN進文字列が、式θ=360°/βに基づいて、すなわち、3.214285714度の極角の間隔に基づいて、連続的に符号化され得る。あるいは、同心円の数量が4であり、各同心円上に書き込むことができるコードの最大数量と各位置検出パターンによって占有されるビットの数量との合計が128である場合には、符号化対象コンテンツに対応するN進文字列が、式θ=360°/βに基づいて、すなわち、2.812度の極角の間隔に基づいて、連続的に符号化され得る。あるいは、同心円の数量が5であり、各同心円上に書き込むことができるコードの最大数量と各位置検出パターンによって占有されるビットの数量との合計が148である場合には、符号化対象コンテンツに対応するN進文字列が、式θ=360°/βに基づいて、すなわち、2.432432432度の極角の間隔に基づいて、連続的に符号化され得るし、符号化対象コンテンツに対応するN進文字列が連続的に符号化される。当然のことながら、極角の間隔に対応する極角度合いは、要件に基づいて設定され得るが、このことは本明細書に限定されない。
【００６１】
さらに、符号化対象コンテンツに対応するN進文字列を各同心円上で符号化する場合には、以下の2つの方法を本明細書では提供している。
【００６２】
特に、本明細書において提供した第1の方法においては、まず、サーバは、図8aに示しているように、各位置検出パターンの位置およびステップS100において決定した中心に基づいて各同心円を複数のグループの同心円の円弧に分割し得る。4つの位置検出パターンが存在するため各同心円が4つのグループの同心円の円弧に分割されていることが図8aから理解できよう。各同心円の円弧は、同一の極角範囲内にある異なる半径の複数の同心円の円弧からなる。複数のグループの同心円の円弧が位置しているエリアは、それぞれエリアA-Dと符号がつけられている。
【００６３】
次に、サーバは、ステップS104において決定された開始グラフの位置に基づいて、反時計回りまたは時計回りの順に、各同心円の円弧上で符号化対象コンテンツに対応するN進文字列を符号化し得る。加えて、同心円の円弧上に現時点書き込まれているコードが一杯になると、次のグループの同心円の円弧上で符号化を継続する。換言すれば、各同心円の円弧は、1つの書き込みユニットとして使用される。1つの書き込みユニットが一杯になると、次の書き込みユニットが書き込みのために選択される。
【００６４】
加えて、書き込みがあるグループの同心円の円弧上で行われる場合には、図8bに示しているように、サーバは、まず、そのグループの同心円の円弧のうちの0のリングに対応する同心円の円弧上で行い、その後、-1のリング上で書き込みを行い、最終的に1のリング上で書き込みを行い得る。実線の矢印は、書き込み方向を表している。図8bでは、書き込み方向は、反時計回りの方向であり、点線の矢印は、同心円の円弧が一杯になった後の同心円の円弧の終点と書き込みを継続する場合の次の同心円の円弧の始点とを結合している。あるいは、サーバは、1、-1、0のリングの順で、または別の順で、そのグループの同心円の円弧上で書き込みを連続的に行う。あるいは、異なる書き込み方向が異なる同心円の円弧に対して使用される。図8cに示しているように、サーバは、-1のリングから反時計回りの方式で書き込み、その後、0のリングから時計回りの方式で書き込み、最終的に、1のリングから反時計回りの方式で書き込む。
【００６５】
さらに、本明細書において提供した第2の方法においては、サーバは、まず、いくつかの同心円から指定の同心円を選択し、選択した同心円上で符号化対象コンテンツに対応するN進文字列を符号化し、選択した同心円が一杯になると、所定の同心円選択ルールに従って、符号化されていない同心円を選択して符号化を継続し得る。図8dに示しているように、数字の1から12は、書き込み順序を示している。指定の同心円は0のリングの同心円であり得る、または、サーバは任意の同心円を選択して書き込みを開始する。この場合には、選択した同心円は、指定の同心円である。ただし、本明細書に限定されない。
【００６６】
図8dでは、サーバは、同心円を複数のグループの同心円の円弧に分割しない。代わりに、サーバは、書き込みユニットとして1つの同心円を使用し、同心円が一杯になった後に書き込みのために次の同心円を選択する。加えて、異なる同心円と同一の同心円の異なる円弧の線分とに対して、サーバは異なる書き込み方向を使用し得るが、このことは本明細書に限定されない。
【００６７】
当然のことながら、上記で説明した第1および第2の方法を組み合わせて使用することもできることに留意されたい。当然のことながら、本明細書において提供した上記の2つの方法は例に過ぎない。具体的な方式は、サーバが同心円上で符号化対象コンテンツに対応するN進文字列を符号化することができるならば、本明細書に限定されない。例えば、書き込みは、極角が0から90度である同心円の円弧に対してまず行われ、その後、書き込みは、極角が90から180度、180から270度、270から360度などである同心円の円弧に対して連続的に行われる。
【００６８】
さらに、本明細書においては、上記で説明した符号化対象コンテンツは、機能データおよびデータコードを含む。書き込み中、機能データは指定の位置に書き込まれ得るし、指定の位置は要件に基づいて設定され得るが、このことは本明細書に限定されない。
【００６９】
加えて、符号化対象コンテンツに対応するN進文字列が位置検出パターンにあまりにも近接して書き込まれることで、位置検出パターンを識別することが困難になり、識別コードの内容を識別することが困難になることを防ぐために、同心円の円弧の各線分上での書き込み中に、サーバは、位置検出パターンから距離のある同心円の円弧上で書き込み得る。
【００７０】
特に、サーバは、始点として極角Rを使用して符号化対象コンテンツに対応するN進文字列を符号化し得るし、符号化が反時計回りの方向に行われる場合には、R=135°+α+θを使用し、符号化が時計回りの方向に行われる場合には、R=135°-α+θを使用する。αは所定のパラメータであり、θは所定の極角の間隔である。αは、3.5、4、5などであり得るが、このことは本明細書に限定されない。加えて、複数の位置検出パターンが本明細書に存在するため、サーバが各グループの同心円の円弧上で書き込む場合には、書き込みが各グループの同心円の円弧上で行われる始点は式R=θ'±α+θに基づいて決定され得る。θ'は、指定の極角、例えば、45度、135度、225度、および315度である。
【００７１】
さらに、書き込み終点も上記で説明した式R=θ'±α+θを使用して決定され得る。例えば、書き込みが135度から225度までの同心円の円弧上で行われる場合には、図9に示しているように、書き込み始点の極角は135度+3.5θであり、書き込み終点の極角は225度-3.5θである。
【００７２】
本明細書においては、識別コードが上記で説明したいくつかの同心円のうちの最小の半径を有する同心円によって囲まれるエリアに非符号化コンテンツをさらに含み得ることに留意されたい。非符号化コンテンツは、テキスト、シンボル、およびパターンのうちの少なくとも1つを含む。非符号化コンテンツは、ロゴ、ユーザのアバターなどであり得るし、識別コードのブランド認識を改善するために使用される。図10に示しているように、CodeRは、要件に基づいて設定され得る。CodeRが大きければ大きいほど、非符号化コンテンツを埋め込むために使用される識別コードの中心にあるエリアが大きくなり、ユーザは、より容易に識別コードに含まれる非符号化コンテンツを識別することが可能になる。
【００７３】
本明細書において提供した識別コード生成プロセスを使用して、サーバは、既存技術において生成される識別コードの様式とは異なる新たな識別コードを生成すること可能になる。本明細書を使用して生成される識別コードは、円弧の線分および原点の形式で符号化されており、ユーザにより良いユーザエクスペリエンスを提供することができる。
【００７４】
加えて、本明細書の実施形態においては、符号化対象コンテンツに対応するN進文字列において異なる文字に対応する色は異なっており、異なる文字に対応する色は本明細書に限定されない。加えて、色の数量はNの値と同一であり得る。例えば、バイナリ文字は2つの異なる色に対応し得るし、十進文字は10個の異なる色に対応し得る。加えて、バイナリ文字に対応する2つの異なる色は黒と白とに限定されず、黒と黄または白と赤などもあり得る。
【００７５】
上記で説明した識別コード生成プロセスおよび図1から図10に示した概略図に基づいて、本明細書の実施形態は、図11に示しているように、識別コード識別プロセスをさらに提供している。
【００７６】
図11は、本明細書の実施形態による、識別コードを識別するプロセスを示しており、特に以下のステップを含み得る。
【００７７】
S200. 画像を取り込む。
【００７８】
既存技術と同様に、識別コードを識別するプロセスにおいて、画像をまず取り込む必要がある。
【００７９】
本明細書の実施形態においては、画像はエンドユーザデバイスによって取り込まれ得るし、エンドユーザデバイスは、モバイルデバイス、タブレットコンピュータ、またはカメラに接続されているパーソナルコンピュータなどのデバイスであり得る。ただし、エンドユーザデバイスが画像を取り込むことができるならば、本明細書に限定されない。
【００８０】
さらに、さらなる説明のために取り込んだ画像が図1に従って生成された識別コードを含んでいると仮定する。
【００８１】
加えて、一般的に、異なる方法によって生成された識別コードも識別方法が異なる。したがって、エンドユーザデバイスは、識別コードを識別するための方法を事前に取得し得る。
【００８２】
S202. 画像から、識別コードにおける位置検出パターンを決定する。
【００８３】
S204. 位置検出パターンに基づいて識別コードの中心を決定する。
【００８４】
本明細書の本実施形態においては、画像を取り込んだ後に、エンドユーザデバイスは、識別コードにおけるコンテンツを取得するために、位置検出パターンに従って、その後に画像中の識別子の位置をさらに決定する(画像中の識別情報のコードエリアの位置を特に決定し得る)ように、画像から、識別コードに対応する位置検出パターンを決定し得る。
【００８５】
特に、エンドユーザデバイスは、取り込んだ画像から、既存技術におけるものと同様の方法を使用して、位置検出パターンであると思しきいくつかの同寸法同心円を決定し得る。既存技術において位置検出パターンを決定する(すなわち、画像中のすべてのピクセルを走査して垂直方向および水平方向におけるヘテロクロマティックピクセルの比が1:1:3:1:1であると決定する)ための方法とは異なり、本明細書における位置検出パターンは、同寸法同心円を含んでいるため、したがって、エンドユーザデバイスは、1:1:1:1:1となるヘテロクロマティックピクセルの比を使用していくつかの同寸法同心円を決定し得る。
【００８６】
加えて、エンドユーザデバイスは、既存技術と同一の方法を使用して位置検出パターンと思しきいくつかの同寸法同心円から位置検出パターンをさらに決定し得る。既存技術において得られるデータとは異なり、エンドユーザデバイスが取得する必要があるデータにおいて、位置検出パターンのユニットの長さの差は同寸法同心円の半径の差となり、位置検出パターンの挟角および長さの偏差は既存技術のものと同一である。
【００８７】
さらに、本明細書の本実施形態においては、位置検出パターンは、補助的な位置決めのために使用される正六角形をさらに含み得る。したがって、いくつかの同寸法同心円を決定した後に、エンドユーザデバイスは、識別コードの位置検出パターンの数量に基づいていくつかのグループの同寸法同心円をさらに決定し得る。エンドユーザデバイスは、識別コードを事前に取得するための識別方法に従って、識別コードの位置検出パターンの数量(すなわち、識別方法における識別コードを含む位置検出パターンの数量)を決定し得る。
【００８８】
各グループの同寸法同心円について、第1の位置をそのグループの同寸法同心円のうちの同寸法同心円の各々の位置に基づいて決定し、第1の位置に正六角形が存在しているかどうかを決定する。yesの場合には、そのグループの同寸法同心円および正六角形が識別コードの位置検出画像であると決定される、または、noの場合には、そのグループの同寸法同心円が識別コードの位置検出パターンと一対一の対応関係にない、すなわち、そのグループの同寸法同心円が位置検出画像ではないと決定される。
【００８９】
例えば、エンドユーザデバイスが、位置検出パターンを決定するための方法を使用して、(それぞれaからdと符号がつけられている)4つの同寸法同心円が位置検出パターンの条件を満たしていると決定すると仮定する。さらに、識別コードの位置検出パターンの数量が3であると仮定すると、エンドユーザデバイスは表1に示したグループを確立し得る。
【００９０】
【表１】
0006894005.tif 000002
【００９１】
特に、エンドユーザデバイスは、画像中の各グループの同寸法同心円の位置を使用して円を決定する。極座標系は、いくつかの指定の極角(例えば、45度、135度、225度、および315度)およびその円のそのグループの同寸法同心円の位置に基づいて確立される。円上の任意の指定の極角に対応する第1の位置に正六角形が存在しているかどうかが決定される。エンドユーザデバイスは、既存の多角形発見アルゴリズムを使用して、正六角形が第1の位置に存在しているかどうかを決定し得る、または、別のアルゴリズムを使用して、正六角形が第1の位置に存在しているかどうかを決定し得るが、このことは本明細書に限定されない。例えば、同寸法同心円が円の45度、135度、および225度に存在していると決定されると、その円の315度が第1の位置である。
【００９２】
当然のことながら、上記で説明した識別プロセスにおいて、画像の歪み、傾斜などを補正するために、既存技術におけるものと同一の方法を使用することができる。具体的な方法は本明細書では説明しない。正六角形の境界は直線であるため、したがって、正六角形は補正中の基準に使用され得る。
【００９３】
S206. 中心および位置検出パターンに基づいて位置検出パターンから開始パターンを決定する。
【００９４】
本明細書の本実施形態においては、位置検出パターンを決定した後に、エンドユーザデバイスは、サーバによって事前に提供された識別コードを識別するための方法に従って位置検出パターンの開始グラフを決定し得る。
【００９５】
例えば、開始グラフが135度の極角の位置に対応する位置検出パターンである場合には、エンドユーザデバイスは、ステップS204において確立された極座標系に基づいて開始グラフを決定し得る。
【００９６】
S208. 開始グラフの位置に基づいて識別コードを識別する。
【００９７】
本明細書の本実施形態においては、エンドユーザデバイスは、決定した位置検出パターンおよび決定した中心に基づいて画像中の識別コードの符号化エリアを決定し、時計回りまたは反時計回りの順に開始グラフの位置に基づいて、決定した符号化エリアから識別情報に対応する符号化コンテンツを取得し得る。
【００９８】
特に、既存技術と同様に、識別子を識別する場合には、エンドユーザデバイスは、まず、識別情報の符号化コンテンツにおいて機能データに対応するコンテンツを取得し得る。したがって、本明細書においては、エンドユーザデバイスは、まず、開始グラフの位置に基づいて符号化エリアから第2の位置を決定し、その後、第2の位置から、符号化コンテンツに含まれる機能データを識別し、決定した符号化エリアから、識別した機能データに基づいて識別コードに対応する符号化コンテンツを取得し得る。
【００９９】
ここで、第2の位置は、図2において提供した上記の識別コード生成プロセスにおいて、識別コードがステップS106において生成される際に機能データが書き込まれる指定の位置である。
【０１００】
例えば、複数の識別コードのバージョンが異なる識別コード生成方式に従って決定され、識別コードバージョンが機能データに含まれていると仮定する。機能データを識別した後に、エンドユーザデバイスは、決定した識別方式で識別コードを識別するために、機能データに含まれる識別コードのバージョンに従って、識別コードに対応する識別方式を決定し得る。
【０１０１】
加えて、図2に示した識別コードを生成するプロセスにおいて、ステップS106においては、本明細書は、2つの識別コードのバージョン(それぞれ第1のバージョンおよび第2のバージョンと称する)を決定することができるように、各同心円上で符号化対象コンテンツに対応するN進文字列を符号化するための2つの方法を提供している。したがって、それに対応するように、エンドユーザデバイスも、識別コードにおける機能データを識別することによって識別コードのバージョンを決定し、識別コードのバージョンに基づいて識別方法を決定し得る。
【０１０２】
特に、識別コードが第1の識別方法を使用して識別されることを識別した機能データが示している場合には(すなわち、識別コードが第1のバージョンの識別コードである場合には)、エンドユーザデバイスは、まず、決定した位置検出パターンおよび中心に基づいて同心円を複数のグループの同心円の円弧に分割し、その後、開始グラフの位置に基づいて時計回りまたは反時計回りの順に各グループの同心円の円弧上の識別コードを順々に識別し得る。
【０１０３】
識別コードが第2の識別方法を使用して識別されることを識別した機能データが示している場合には、同心円が、所定の同心円選択ルールに従っていくつかの同心円から連続的に選択され、識別コードが、時計回りまたは反時計回りの順に選択した同心円上で識別される。特に、例えば、識別コード情報ピクセルのグレースケール処理、識別コード情報ピクセルのノイズの除去、および識別コード情報ピクセルの二値化などといった、識別コードを識別するために使用される方法は、既存技術におけるものと同一であり得る。ただし、本明細書に限定されない。情報ピクセルは、識別コードにおけるコードに対応するピクセルである。
【０１０４】
実施形態1において提供した方法のステップのすべてを同一のデバイスによって実行することができること、または方法を異なるデバイスによって行うことができることに留意されたい。例えば、ステップS102とステップS104とをデバイス1によって実行することができ、ステップS106とステップS108とをデバイス2によって実行することができる。別の例では、ステップS102とステップS106とをデバイス2によって実行することができ、ステップS104とステップS108とをデバイス1によって実行することができる。本開示の指定の実施形態を上記で説明してきた。他の実施形態も以下の特許請求の範囲の範囲内に含まれる。いくつかのケースにおいては、特許請求の範囲に記載のアクションまたはステップは、実施形態におけるものとは異なる順で行われ得るし、それでも望ましい結果を達成し得る。加えて、図に記載のプロセスは、望ましい結果を達成するために示した特定の順序または一連の順序を必ずしも必要とするわけではない。ある実施形態においては、マルチタスク処理およびパラレル処理も可能とであり、有利となり得る。
【０１０５】
図1に示した識別コードを生成するための方法に基づいて、本明細書の実施形態は、図12に示しているように、識別コード生成装置をさらに提供している。
【０１０６】
図12は、本明細書の実施形態による、識別コード生成装置を図示している概略構造図である。装置は、中心を決定するように構成される、第1の決定モジュール300と、中心に基づいていくつかの同心円を決定するとともに、中心および指定の半径に基づいて、中心からの距離が半径であるいくつかの位置検出パターンを決定するように構成される、第2の決定モジュール302であって、いくつかの位置検出パターンはすべてが同一というわけではない、第2の決定モジュール302と、位置検出パターンから開始パターンを決定するように構成される、第3の決定モジュール304と、識別コードを取得するために、同心円上で、開始パターンの位置に基づいて、符号化対象コンテンツに対応するN進文字列を符号化するように構成される、生成モジュール306であって、N進文字列において隣接するおよび同一の文字に対応するコードは円弧の線分を形成し、N進文字列において両方の隣接する文字と異なる文字に対応するコードは点であり、N進文字列において異なる文字に対応するコードは異なる色を有し、Nは2以上の正の整数である、生成モジュール306とを含む。
【０１０７】
第2の決定モジュール302は、半径が指定の半径である同心円を選択し、選択した同心円上のいくつかの位置検出パターンを決定するように構成される、または、同心円から任意の同心円を選択し、選択した同心円上のいくつかの位置検出パターンを決定するように構成される。
【０１０８】
第2の決定モジュール302は、所定のステップで半径を増大および/または低減することによっていくつかの半径を取得し、中心および取得したいくつかの半径に基づいていくつかの同心円を決定する。
【０１０９】
第3の決定モジュール304は、原点として中心を使用して極座標系を確立し、中心および指定の半径に基づいて円を決定し、いくつかの指定の極角に基づいて、決定した円上で等間隔に配置された、いくつかの位置検出パターンを決定する。
【０１１０】
第3の決定モジュール304は、位置検出パターンに対応する極角に基づいて各位置検出パターンから開始パターンを決定する。
【０１１１】
いくつかの指定の極角は、45度、135度、225度、および315度を含む。
【０１１２】
第3の決定モジュール304は、開始パターンとして135度の極角に対応する位置検出パターンを決定する。
【０１１３】
位置検出パターンは、同寸法同心円と正六角形とを含む。同寸法同心円内の各同心円の線の厚みは所定の幅であり、同寸法同心円内の2つの隣接する同心円の線の色は異なる。
【０１１４】
生成モジュール306は、同心円上で、開始パターンの位置に基づいて、反時計回りまたは時計回りの方向に符号化対象コンテンツに対応するN進文字列を符号化する。
【０１１５】
生成モジュール306は、位置検出パターンの位置および中心に基づいて同心円を複数のグループの同心円の円弧に分割し、開始グラフの位置に基づいて反時計回りまたは時計回りの順に各グループの同心円の円弧上で符号化対象コンテンツに対応するN進文字列を符号化し、そのグループの同心円の円弧が一杯になると、次のグループの同心円の円弧上で符号化を継続して行う。
【０１１６】
生成モジュール306は、所定の同心円選択ルールに従って同心円から同心円を選択し、選択した同心円上で符号化対象コンテンツに対応するN進文字列を符号化し、選択した同心円が一杯になると、同心円選択ルールに従って、符号化のために符号化されていない同心円を継続して選択する。
【０１１７】
符号化対象コンテンツは、機能データを含み、生成モジュール306は、指定の位置に機能データに対応するN進文字列を符号化する。
【０１１８】
生成モジュール306は、各同心円について、同心円上の2つの隣接するコードの間隔が同一となるように、所定の極間隔に基づいて符号化対象コンテンツに対応するN進文字列を連続的に符号化する。
【０１１９】
生成モジュール306は、いくつかの同心円上で、反時計回りまたは時計回りの方向に始点として極角Rを使用して符号化対象コンテンツに対応するN進文字列を符号化する。符号化が反時計回りの方向に行われる場合には、R=135°+α+θを使用し、符号化が時計回りの方向に行われる場合には、R=135°-α+θを使用する。αは、所定のパラメータであり、θは、所定の極角の間隔である。
【０１２０】
所定の極間隔は、任意の同心円上のコードの最大数量に基づいて決定される。
【０１２１】
第1の決定モジュール300は、中心に基づいて所定の数量の同心円を決定する、ここで、所定の数量は、3、4、および5のうちの少なくとも1つを含む。
【０１２２】
識別コードは、非符号化コンテンツをさらに含む。非符号化コンテンツは、いくつかの同心円のうちの最小の半径を有する同心円によって囲まれるエリアに位置し、非符号化コンテンツは、テキスト、シンボル、およびパターンのうちの少なくとも1つを含む。
【０１２３】
図11に示した識別コードを生成するための方法に基づいて、本明細書の実施形態は、図13に示しているように、識別コード識別装置をさらに提供している。
【０１２４】
図13は、本明細書の実施形態による、識別コード識別装置を図示している概略構造図である。装置は、画像を取り込むように構成される、取込モジュール400と、画像から、識別コードにおける位置検出パターンを決定するように構成される、第1の決定モジュール402と、位置検出パターンに基づいて識別コードの中心を決定するように構成される、第2の決定モジュール404と、中心および位置検出パターンに基づいて位置検出パターンから開始パターンを決定するように構成される、第3の決定モジュール406と、開始パターンの位置に基づいて識別コードを識別するように構成される、識別モジュール408であって、識別コードはいくつかの同心円上にコードを含み、符号化コンテンツにおいて隣接するおよび同一の文字に対応するコードは円弧の線分を形成し、符号化コンテンツにおいて隣接する文字と異なる文字に対応するコードは点であり、符号化コンテンツにおいて異なる文字に対応する符号化の色は異なる、識別モジュール408とを含む。
【０１２５】
位置検出パターンは、同寸法同心円と正六角形とを含む。
【０１２６】
第1の決定モジュール402は、画像からいくつかのグループの同寸法同心円を識別し、各グループの同寸法同心円における同寸法同心円の各々の位置に基づいて第1の位置を決定し、正六角形が第1の位置に存在しているかどうかを決定し、yesの場合には、そのグループの同寸法同心円が位置検出パターンであると決定する、または、noの場合には、そのグループの同寸法同心円が位置検出パターンではないと決定する。
【０１２７】
第3の決定モジュール406は、原点として中心を使用して位置検出パターンおよび画像中の中心の位置に基づいて極座標系を確立し、対応する極角が開始グラフとして135度となっている位置検出パターンを決定する。
【０１２８】
識別モジュール408は、開始グラフの位置に基づいて各同心円上の第2の位置を決定し、第2の位置から符号化コンテンツに含まれる機能データを識別し、識別した機能データに基づいて識別コードを識別する。
【０１２９】
識別コードが第1の識別方法を使用して識別されることを識別した機能データが示している場合には、識別モジュール408は、決定した位置検出パターンおよび中心に基づいて同心円を複数のグループの同心円の円弧に分割し、その後、開始グラフの位置に基づいて時計回りまたは反時計回りの順に各グループの同心円の円弧上の識別コードを順々に識別し得る。
【０１３０】
識別コードが第2の識別方法を使用して識別されることを認識した機能データが示している場合には、識別モジュール408は、所定の同心円選択ルールに従っていくつかの同心円から同心円を連続的に選択し、時計回りまたは反時計回りの順に選択した同心円上の識別コードを識別する。
【０１３１】
本明細書は、図14および図15に示しているように、サーバおよびエンドユーザデバイスをさらに提供している。
【０１３２】
図14は、本明細書の実施形態による、サーバを図示している概略構造図である。サーバは、1つまたは複数のプロセッサとメモリとを含み、メモリは、プログラムを記憶し、プログラムは、1つまたは複数のプロセッサによって、中心を決定するステップと、中心に基づいていくつかの同心円を決定するとともに、中心および指定の半径に基づいて、中心からの距離が半径であるいくつかの位置検出パターンを決定するステップであって、いくつかの位置検出パターンはすべてが同一というわけではない、ステップと、各位置検出パターンから開始パターンを決定するステップと、識別コードを取得するために、同心円上で、開始パターンの位置に基づいて、符号化対象コンテンツに対応するN進文字列を符号化するステップであって、N進文字列において隣接するおよび同一の文字に対応するコードは円弧の線分を形成し、N進文字列において両方の隣接する文字と異なる文字に対応するコードは点であり、N進文字列において異なる文字に対応するコードは異なる色を有し、Nは2以上の正の整数である、ステップとを行うように実行されるように構成される。
【０１３３】
図15は、本明細書の実施形態による、エンドユーザデバイスを図示している概略構造図である。エンドユーザデバイスは、1つまたは複数のプロセッサとメモリとを含み、メモリは、プログラムを記憶し、プログラムは、1つまたは複数のプロセッサによって、画像を取り込むステップと、画像から位置検出パターンを決定するステップと、各位置検出パターンから開始パターンを決定するステップと、画像から、開始グラフの位置に基づいて、識別コードに対応する符号化コンテンツを取得するステップとを行うように実行されるように構成される。
【０１３４】
本明細書における実施形態はすべて漸進的な方式で説明しており、実施形態における同一または同様の部分については、これらの実施形態を参照してもよく、各実施形態は、他の実施形態とは異なる部分に焦点を置いていることに留意されたい。特に、本出願の実施形態において提供したモバイルデバイスおよびサーバは、方法の実施形態と基本的に同様であるため、したがって、簡潔に説明しており、関連する部分については、方法の実施形態における説明の一部を参照されたい。
【０１３５】
1990年代においては、技術に対する改善を、ハードウェアにおける改善(例えば、ダイオード、トランジスタ、スイッチなどの回路構造に対する改善)として、または、ソフトウェアにおける改善(方法のプロセスに対する改善)として、明確に区別し得た。しかしながら、技術の発展に伴い、方法のプロセスにおける多くの現在の改善は、ハードウェア回路構造に対する直接的な改善として扱うことができる。ほぼすべての設計者が、改善した方法のプロセスをハードウェア回路にプログラムすることによって、対応するハードウェア回路構造を得ている。したがって、方法のプロセスに対する改善は、ハードウェアエンティティモジュールを使用して実施され得る。例えば、プログラマブルロジックデバイス(PLD)(例えば、フィールドプログラマブルゲートアレイ(FPGA))がそのような集積回路であり、プログラマブルロジックデバイスの論理機能はコンポーネントをプログラミングすることによってユーザによって決定される。設計者は、チップ製造業者に専用の集積回路チップを設計および製造するように要求する代わりに、デジタルシステムをPLDに「統合」するようにプログラミングを行う。加えて、今日では、集積回路チップを手動で作成する代わりに、プログラミングは、プログラムを開発および書き込む際に使用されるソフトウェアコンパイラに類似している「ロジックコンパイラ」というソフトウェアを使用してほとんど実施され、コンパイルされることになる元のコードも、ハードウェア記述言語(HDL)と称する特定のプログラミング言語で書かれている。HDLの1つのみが存在しているわけでない。Advanced Boolean Expression Language(ABEL)、Altera Hardware Description Language(AHDL)、Confluence、Cornell University Programming Language(CUPL)、HDCal、Java(登録商標) Hardware Description Language(JHDL)、Lava、Lola、MyHDL、PALASM、およびRuby Hardware Description Language(RHDL)などの多くのタイプのHDLが存在している。現時点、Very-High-Inte
grated Circuit Description Language(VHDL)およびVerilogが最も一般的に使用されている。上記で説明したいくつかのハードウェア記述言語を使用してわずかにロジックプログラミングして集積回路にプログラミングすることによって論理的な方法の手順を実施するためのハードウェア回路を容易に得ることができることも当業者には明らかであろう。
【０１３６】
コントローラは、任意の適切な方式で実装され得る。例えば、コントローラは、マイクロプロセッサまたはプロセッサと、プロセッサ(または、マイクロプロセッサ)、ロジックゲート、スイッチ、特定用途向け集積回路(ASIC)、プログラマブルロジックコントローラ、および組み込みマイクロコントローラによって実行され得るコンピュータ可読プログラムコード(ソフトウェアまたはファームウェアなど)を記憶するコンピュータ可読媒体との形式をとり得る。コントローラの例としては、ARC625D、Atmel AT91SAM、Microchip PIC18F26K20、およびSilicone Labs C8051F320といったマイクロコントローラを含むがこれらに限定されない。コントローラは、さらに、メモリの制御ロジックの一部として実施され得る。当業者も知っての通り、コントローラを純粋なコンピュータ可読プログラムコードの方式で実施することに加えて、コントローラがロジックゲート、スイッチ、特定用途向け集積回路、プログラマブルロジックコントローラ、組み込みマイクロコントローラなどの形式で同一の機能を実施するように、方法のステップを論理的にプログラムし得る。したがって、コントローラをハードウェアコンポーネントとしてみなすことができるし、様々な機能を実施するためにコントローラに含まれている装置もハードウェアコンポーネント内の構造としてみなすことができる。あるいは、様々な機能を実施するための装置を、方法を実施し得るソフトウェアモジュールまたはハードウェアコンポーネント内の構造としてみなすことができる。
【０１３７】
上記の実施形態において説明したシステム、装置、モジュール、またはユニットは、コンピュータチップまたはエンティティによって特に実装され得る、または、特定の機能を有する製品によって実装され得る。典型的な実施デバイスがコンピュータである。特に、コンピュータは、例えば、パーソナルコンピュータ、ラップトップコンピュータ、セルラ電話、カメラ電話、スマートフォン、携帯情報端末、メディアプレーヤ、ナビゲーションデバイス、電子メールデバイス、ゲームコンソール、タブレットコンピュータ、ウェアラブルデバイス、またはこれらのデバイスの任意の1つの組合せであり得る。
【０１３８】
説明を簡潔にするために、上記の装置を、機能を様々なユニットに分割することによって説明している。当然のことながら、本出願を実施する際には、各ユニットの機能は、ソフトウェアおよび/またはハードウェアの1つまたは複数の要素において実施され得る。
【０１３９】
本開示の実施形態が方法、システム、またはコンピュータプログラム製品として提供され得ることを当業者は理解されたい。したがって、本開示は、ハードウェアのみの実施形態、ソフトウェアのみの実施形態、またはソフトウェアとハードウェアとの組合せを用いた実施形態の形式を使用し得る。さらに、本開示は、コンピュータ使用可能プログラムコードを含む(ディスクメモリ、CD-ROM、光学メモリなどを含むがこれらに限定されない)1つまたは複数のコンピュータ使用可能記憶媒体上で実装されるコンピュータプログラム製品の形式を使用し得る。
【０１４０】
本開示は、本開示の実施形態による、方法、デバイス(システム)、およびコンピュータプログラム製品のフローチャートおよび/またはブロック図を参照して説明している。コンピュータプログラム命令がフローチャートおよび/またはブロック図中の各プロセスおよび/または各ブロックならびにフローチャートおよび/またはブロック図中のプロセスおよび/またはブロックの組合せを実施するために使用され得ることを理解されたい。これらのコンピュータプログラム命令は、コンピュータまたは任意の他のプログラマブルデータ処理デバイスのプロセッサによって実行された命令がフローチャート中の1つまたは複数のプロセスにおけるおよび/またはブロック図中の1つまたは複数のブロックにおける特定の機能を実施するための装置を生成するように、汎用コンピュータ、専用コンピュータ、組み込みプロセッサ、または任意の他のプログラマブルデータ処理デバイスのプロセッサに提供され、機構を生成し得る。
【０１４１】
このようなコンピュータプログラム命令は、コンピュータ可読メモリに記憶されている命令が命令装置を含むアーチファクトを生成するように、コンピュータまたは任意の他のプログラマブルデータ処理デバイスに特定の方式で動作するように命令し得るコンピュータ可読メモリに記憶され得る。命令装置は、フローチャート中の1つまたは複数のプロセスにおけるおよび/またはブロック図中の1つまたは複数のブロックにおける特定の機能を実施する。
【０１４２】
このようなコンピュータプログラム命令は、コンピュータまたは別のプログラマブルデータ処理デバイスにロードされ得るし、その結果、一連の動作およびステップがコンピュータまたは他のプログラマブルデバイス上で行われ、それによって、コンピュータ実施処理を生成している。したがって、コンピュータまたは他のプログラマブルデバイス上で実行される命令は、フローチャート中の1つまたは複数のプロセスにおけるおよび/またはブロック図中の1つまたは複数のブロックにおける特定の機能を実施するためのステップを提供する。
【０１４３】
典型的な設定においては、コンピュータデバイスは、1つまたは複数のプロセッサ(CPU)、入力/出力インターフェース、ネットワークインターフェース、およびメモリを含む。
【０１４４】
メモリは、リードオンリーメモリ(ROM)またはフラッシュメモリ(フラッシュRAM)などといった、コンピュータ可読媒体中の非永続ストレージ、ランダムアクセスメモリ(RAM)、および/または不揮発性メモリなどの形式を含み得る。メモリは、コンピュータ可読媒体の例である。
【０１４５】
コンピュータ可読媒体は、任意の方法または技術を使用して情報ストレージを実装する、持続性、非持続性、ムーバブル、および非ムーバブル媒体を含む。情報は、コンピュータ可読命令、データ構造、プログラムのモジュール、または他のデータであり得る。コンピュータの記憶媒体の例としては、コンピュータデバイスによってアクセスされ得る情報を記憶するように構成され得る、相変化メモリ(PRAM)、スタティックランダムアクセスメモリ(SRAM)、ダイナミックランダムアクセスメモリ(DRAM)、別のタイプのランダムアクセスメモリ(RAM)、リードオンリーメモリ(ROM)、電気的消去可能プログラマブルリードオンリーメモリ(EEPROM)、フラッシュメモリ、もしくは別のメモリ技術と、コンパクトディスクリードオンリーメモリ(CD-ROM)、デジタル多用途ディスク(DVD)、もしくは別の光学記憶デバイスと、カセットテープ、ディスク、およびテープメモリ、もしくは別の磁気記憶デバイスと、または任意の他の非伝送媒体とを含むがこれらに限定されない。本明細書の限定によれば、コンピュータ可読媒体は、変調データ信号および変調キャリアなどの非一時的媒体(一時的媒体)は含まない。
【０１４６】
「含む」、「備える」といった用語、またはそれらの任意の他の類型は、非排他的な包含をカバーすることを意図しており、その結果、多くの要素を含むプロセス、方法、製品、または装置が、これらの要素を含むだけでなく、明示的に記載していない他の要素も含む、または、そのようなプロセス、方法、製品、または装置に本来備わっている要素をさらに含むことをさらに留意されたい。「・・・を含む」で終わる要素は、さらなる制約がない状態で、要素を含むプロセス、方法、製品、または装置における追加の同一要素の存在を除外することはしない。
【０１４７】
本出願の実施形態が方法、システム、またはコンピュータプログラム製品として提供され得ることを当業者は理解されたい。したがって、本開示は、ハードウェアのみの実施形態、ソフトウェアのみの実施形態、またはソフトウェアとハードウェアとの組合せを用いた実施形態の形式を使用し得る。さらに、本出願は、コンピュータ使用可能プログラムコードを含む(ディスクメモリ、CD-ROM、光学メモリなどを含むがこれらに限定されない)1つまたは複数のコンピュータ使用可能記憶媒体上で実施されるコンピュータプログラム製品の形式を使用し得る。
【０１４８】
本出願は、例えば、プログラムモジュールといった、コンピュータによって実行される実行可能なコンピュータ命令の一般的な状況において説明することができる。一般的に、プログラムモジュールは、特定のタスクを実行するためのまたは特定の抽象データタイプを実施するためのルーチン、プログラム、オブジェクト、コンポーネント、データ構造などを含む。本出願はまた、タスクが通信ネットワークを使用して接続されたリモート処理デバイスによって行われる分散コンピューティング環境において実施することができる。分散コンピューティング環境においては、プログラムモジュールは、記憶デバイスを含むローカルコンピュータ記憶媒体およびリモートコンピュータ記憶媒体の両方に位置し得る。
【０１４９】
本開示内の実施形態はすべて漸進的な方式で説明しており、実施形態における同一または同様の部分については、これらの実施形態を参照してもよく、各実施形態は、他の実施形態とは異なる部分に焦点を置いている。特に、システム実施形態は、方法の実施形態と基本的に同様であるため、したがって、簡潔に説明しており、関連する部分については、方法の実施形態における説明の一部を参照されたい。
【０１５０】
上記の説明は、本出願の実施形態に過ぎず、本出願を限定するために使用していない。様々な変更および修正が当業者によって本出願に対してなされ得る。本出願の精神および原理から逸脱することなくなされた任意の修正、均等物との置換、または改良は、本出願の特許請求の範囲の範囲に含まれるものとする。
【符号の説明】
【０１５１】
300  第1の決定モジュール
302  第2の決定モジュール
304  第3の決定モジュール
306  生成モジュール
400  取込モジュール
402  第1の決定モジュール
404  第2の決定モジュール
406  第3の決定モジュール
408  識別モジュール
【図１】
0006894005.tif 000003
【図２】
0006894005.tif 000004
【図３】
0006894005.tif 000005
【図４ａ】
0006894005.tif 000006
【図４ｂ】
0006894005.tif 000007
【図４ｃ】
0006894005.tif 000008
【図５ａ】
0006894005.tif 000009
【図５ｂ】
0006894005.tif 000010
【図６ａ】
0006894005.tif 000011
【図６ｂ】
0006894005.tif 000012
【図６ｃ】
0006894005.tif 000013
【図６ｄ】
0006894005.tif 000014
【図７ａ】
0006894005.tif 000015
【図７ｂ】
0006894005.tif 000016
【図７ｃ】
0006894005.tif 000017
【図８ａ】
0006894005.tif 000018
【図８ｂ】
0006894005.tif 000019
【図８ｃ】
0006894005.tif 000020
【図８ｄ】
0006894005.tif 000021
【図９】
0006894005.tif 000022
【図１０】
0006894005.tif 000023
【図１１】
0006894005.tif 000024
【図１２】
0006894005.tif 000025
【図１３】
0006894005.tif 000026
【図１４】
0006894005.tif 000027
【図１５】
0006894005.tif 000028