(57)【要約】【課題】コード画像を用いて、効率的に真偽を判定するためのコード認識装置、コード認識方法及びコード認識プログラムを提供する。【解決手段】ユーザ端末１０は、制御部１１、撮影部１３、照明部１４を備える。そして、制御部１１が、環境光を用いて撮影した第１画像において、コード画像領域を検出し、コード画像領域における第１コード認識情報の復号を行ない、照明部１４を用いて撮影した第２画像において、コード画像領域を検出し、前記第１画像に含まれる同じコード画像領域で第２コード認識情報の復号を行ない、第１コード認識情報と第２コード認識情報とが異なる場合、第２コード認識情報を真正と判定して、コード情報を特定する。【選択図】図１
2019062499.tif 000002
【特許請求の範囲】
【請求項１】
撮影部及び制御部を備えたコード認識装置であって、
前記制御部が、
第１光源を用いて撮影した第１画像において、コード画像領域を検出し、前記コード画像領域における第１コード認識情報の復号を行ない、
第２光源を用いて撮影した第２画像において、コード画像領域を検出し、前記第１画像に含まれる同じコード画像領域で第２コード認識情報の復号を行ない、
前記第１コード認識情報と前記第２コード認識情報とが異なる場合、前記第２コード認識情報を真正と判定して、コード情報を特定することを特徴とするコード認識装置。
【請求項２】
前記第１光源は環境光であり、前記第２光源はフラッシュ光源であることを特徴とする請求項１に記載のコード認識装置。
【請求項３】
前記第１コード認識情報の復号の結果に基づいて、前記第２コード認識情報の復号を行なうことを特徴とする請求項１又は２に記載のコード認識装置。
【請求項４】
前記コード画像領域には、フレーム内に配置された複数のセルにおける着色の組み合わせからなるカラーコードを用いることを特徴とする請求項１〜３の何れか一項に記載のコード認識装置。
【請求項５】
撮影部及び制御部を備えたコード認識装置を用いたコード認識方法であって、
前記制御部が、
第１光源を用いて撮影した第１画像において、コード画像領域を検出し、前記コード画像領域における第１コード認識情報の復号を行ない、
第２光源を用いて撮影した第２画像において、コード画像領域を検出し、前記第１画像に含まれる同じコード画像領域で第２コード認識情報の復号を行ない、
前記第１コード認識情報と前記第２コード認識情報とが異なる場合、前記第２コード認識情報を真正と判定して、コード情報を特定することを特徴とするコード認識方法。
【請求項６】
撮影部及び制御部を備えたコード認識装置に用いるコード認識プログラムであって、
前記制御部を、
第１光源を用いて撮影した第１画像において、コード画像領域を検出し、前記コード画像領域における第１コード認識情報の復号を行ない、
第２光源を用いて撮影した第２画像において、コード画像領域を検出し、前記第１画像に含まれる同じコード画像領域で第２コード認識情報の復号を行ない、
前記第１コード認識情報と前記第２コード認識情報とが異なる場合、前記第２コード認識情報を真正と判定して、コード情報を特定する手段として機能させることを特徴とするコード認識プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、コード画像から情報を取得するためのコード認識装置、コード認識方法及びコード認識プログラムに関する。
【背景技術】
【０００２】
各種情報を提供するために、バーコードや二次元コード等のコード画像が用いられている。このようなコード画像を撮影し、識別コード情報を読み取る技術も検討されている（例えば、特許文献１参照）。
【０００３】
また、複数のカラーを用いた二次元コードも検討されている（例えば、特許文献２参照。）。この文献に記載された技術においては、画像に含まれる物品に付された二次元コードのうち検出対象の物品に対応する二次元コードの領域それぞれを特定する。具体的には、取得された画像（原画像）から生成されたエッジ画像に基づき、このエッジ画像中における候補領域の抽出、この抽出した候補領域に対応する原画像中の対応領域それぞれに特徴的なパターンが含まれているか否かの判定を経て、原画像中から二次元コードの領域を検出する。また、検出した二次元コードの領域の各セルの領域について色判定処理を行ない、各セルの領域の色の判定結果に基づきコード化された情報を識別する。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００９−１９８２６６号公報
【特許文献２】特開２０１２−３３０３３号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、特許文献２に記載された技術では、コード画像の真偽を判定するために、デコードを行なう必要がある。また、コード画像は、常時、視認可能であるため、真偽を判定する方法が限られていた。
【課題を解決するための手段】
【０００６】
上記課題を解決するコード認識装置は、撮影部及び制御部を備える。前記制御部が、第１光源を用いて撮影した第１画像において、コード画像領域を検出し、前記コード画像領域における第１コード認識情報の復号を行ない、第２光源を用いて撮影した第２画像において、コード画像領域を検出し、前記第１画像に含まれる同じコード画像領域で第２コード認識情報の復号を行ない、前記第１コード認識情報と前記第２コード認識情報とが異なる場合、前記第２コード認識情報を真正と判定して、コード情報を特定する。
【発明の効果】
【０００７】
本発明によれば、コード画像を用いて、効率的に真偽を判定することができる。
【図面の簡単な説明】
【０００８】
【図１】本実施形態のシステム概略図。
【図２】本実施形態の処理手順の説明図。
【図３】本実施形態の処理手順の説明図であって、（ａ）は通常撮影した真正なコード画像、（ｂ）はフラッシュ撮影した真正なコード画像、（ｃ）は通常撮影した偽物のコード画像、（ｄ）はフラッシュ撮影した偽物のコード画像、（ｅ）は通常撮影した他の偽物のコード画像、（ｆ）はフラッシュ撮影した他の偽物のコード画像の説明図。
【図４】他の実施形態の処理手順の説明図。
【図５】他の実施形態の処理手順の説明図。
【発明を実施するための形態】
【０００９】
以下、本発明を具体化した一実施形態を、図１〜図３に従って説明する。本実施形態では、コード画像を利用して情報を取得する場合に用いるコード認識装置、コード認識方法及びコード認識プログラムとして説明する。本実施形態では、コード画像の真偽を判定できるセキュリティコード画像を用いる。
【００１０】
図３（ａ）に示すように、セキュリティコード画像（コード画像３００）として、複数領域に分割され、各領域に着色された画像（カラーコード画像）を用いる。このカラーコード画像としては、例えば、特許文献２に開示されている技術を用いることが可能である。このカラーコード画像は、コード画像領域を規定するフレーム３０１に囲まれた複数の領域（セル３０２）が、予め定められた複数のカラーで着色され、この着色の組み合わせにより、各コード画像を識別できる。本実施形態では、コード画像３００の各セル３０２は、可視光では視認できない（見えない）が、フラッシュライトによって着色を識別できるインク（以下、再帰反射性インクという）により印刷される。このため、図３（ａ）に示すように、通常撮影したコード画像３００はフレーム３０１のみの画像となる。この再帰反射性インクを用いることにより、特定方向からの入射光が、入射方向と同じ方向に反射することにより、図３（ｂ）に示すように、コード画像３１０のフレーム３０１に囲まれた各セル３０２のカラー（コード要素）を浮き出させることができる。なお、図３（ｂ）では各カラーを網掛けの違いで表現している。
このようなコード画像３００を用いて情報を提供するために、本実施形態では、コード認識装置としてユーザ端末１０を用いる。
【００１１】
図１に示すように、ユーザ端末１０は、スマートフォン端末やタブレット端末等、ユーザが利用する情報処理端末である。このユーザ端末は、制御部１１、タッチパネルディスプレイ１２、撮影部１３、照明部１４等を備えている。タッチパネルディスプレイ１２は、入力部及び出力部として機能する。撮影部１３は、コード画像を撮影し、このカラー画像を取得する。照明部１４は、光源（フラッシュライト）を発光する。
【００１２】
制御部１１は、制御手段（ＣＰＵ、ＲＡＭ、ＲＯＭ等）を備え、コード解析処理を行なう。そのため、記憶部に格納されたコード認識プログラムを実行することにより、制御部１１は、画像取得部１１１、照明制御部１１２、コード解析部１１３として機能する。
【００１３】
画像取得部１１１は、環境光（第１光源）における撮影部１３から撮影画像（カラー画像）を取得する処理を実行する。ここで、環境光は、照明部１４を発光させない場合の環境光を意味する。更に、画像取得部１１１は、後述する照明部１４の発光と連動して撮影画像を取得する。
【００１４】
照明制御部１１２は、照明部１４のフラッシュライト（第２光源としてのフラッシュ光源）を制御する処理を実行する。
コード解析部１１３は、デコーダとして機能し、取得したカラー画像において、カラーコードのエッジ画像（レイアウトパターン）によりコード画像のフレームを特定し、コード画像を抽出する。そして、コード解析部１１３は、発色したコード画像を復号してコード情報を取得する。
【００１５】
次に、図２に従って、上記のように構成されたシステムを用いて、セキュリティコード画像のコード認識方法の処理手順を説明する。
まず、ユーザ端末１０の制御部１１は、通常撮影処理を実行する（ステップＳ１−１）。具体的には、ユーザが、セキュリティコード画像の真偽の判定を希望する場合、ユーザ端末１０において、セキュリティコード画像を確認するためのコード認識プログラムを起動する。そして、ユーザ端末１０の撮影部１３で、セキュリティコード画像を撮影する。この場合、制御部１１の画像取得部１１１は、撮影部１３を用いて撮影された撮影画像（カラー画像）を取得する。この場合には、照明部１４においてフラッシュライトを発光させず、環境光を用いる。
【００１６】
次に、ユーザ端末１０の制御部１１は、フレーム検出処理を実行する（ステップＳ１−２）。具体的には、制御部１１のコード解析部１１３は、撮影画像において、レイアウトパターン認識により、コード画像のフレームを検出する。
【００１７】
次に、ユーザ端末１０の制御部１１は、コード認識可能かどうかについての判定処理を実行する（ステップＳ１−３）。具体的には、制御部１１のコード解析部１１３は、撮影画像（第１画像）において検出したコード画像の各セルにおいて、デコード可能かどうかを判定する。コード情報（第１コード認識情報）を取得できたことにより、デコードできた場合には、コード認識可能と判定する。
【００１８】
コード認識可能と判定した場合（ステップＳ１−３において「ＹＥＳ」の場合）、ユーザ端末１０の制御部１１は、偽物判定処理を実行する（ステップＳ１−４）。具体的には、制御部１１のコード解析部１１３は、タッチパネルディスプレイ１２において、セキュリティコード画像ではないことを示すメッセージを出力する。そして、コード認識処理を終了する。
【００１９】
一方、コード認識不可と判定した場合（ステップＳ１−３において「ＮＯ」の場合）、ユーザ端末１０の制御部１１は、フラッシュ撮影処理を実行する（ステップＳ１−５）。具体的には、制御部１１の照明制御部１１２は、照明部１４に対して、フラッシュライトの発光を指示する。この場合、画像取得部１１１は、撮影部１３から、フラッシュライトの発光時の撮影画像（第２画像）を取得する。
【００２０】
次に、ユーザ端末１０の制御部１１は、フレーム検出処理を実行する（ステップＳ１−６）。具体的には、制御部１１のコード解析部１１３は、ステップＳ１−２において検出したフレーム位置と同じ位置で、フラッシュライトの発光時の撮影画像においてフレームを検出する。
【００２１】
次に、ユーザ端末１０の制御部１１は、ステップＳ１−３と同様に、コード認識可能かどうかについての判定処理を実行する（ステップＳ１−７）。ここでは、コード情報（第２コード認識情報）を取得できたことにより、デコードできた場合には、コード認識可能と判定する。
【００２２】
コード認識可能と判定した場合（ステップＳ１−７において「ＹＥＳ」の場合）、ユーザ端末１０の制御部１１は、真正判定処理を実行する（ステップＳ１−８）。具体的には、制御部１１のコード解析部１１３は、セキュリティコード画像であると判定し、デコード結果をタッチパネルディスプレイ１２に出力する。
一方、コード認識不可と判定した場合（ステップＳ１−７において「ＮＯ」の場合）も、ユーザ端末１０の制御部１１は、偽物判定処理を実行する（ステップＳ１−４）。
【００２３】
図３を用いて、撮影されたコード画像を説明する。
通常撮影処理（ステップＳ１−１）において、図３（ａ）に示すコード画像３００を取得し、フラッシュ撮影処理（ステップＳ１−５）において、図３（ｂ）に示すコード画像３００を取得した場合には、真正判定処理を実行する（ステップＳ１−８）。
【００２４】
通常撮影処理（ステップＳ１−１）において、図３（ｃ）に示すコード画像３１０を取得し、フラッシュ撮影処理（ステップＳ１−５）において、図３（ｄ）に示すコード画像３１０を取得した場合には、偽物判定処理を実行する（ステップＳ１−４）。
【００２５】
なお、通常撮影処理（ステップＳ１−１）において、図３（ｅ）に示すコード画像３２０を取得した場合、偽物判定処理を実行する（ステップＳ１−４）。この場合、フラッシュ撮影処理（ステップＳ１−５）を行なった場合にも、図３（ｆ）に示すコード画像３２０を取得することにより、図３（ｅ）に示すコード画像３２０と同じになり、セキュリティコード画像でない。
【００２６】
本実施形態によれば、以下のような効果を得ることができる。
（１）本実施形態においては、コード画像３００として、複数のセル３０２に分割され、各セル３０２に着色された画像（カラーコード画像）を用いる。コード画像３００は、可視光では視認できない（見えない）が、フラッシュライトによって着色を識別できる再帰反射性インクにより印刷される。再帰反射性インクを用いることにより、環境光（第１光源）及びフラッシュライト（第２光源）を用いて撮影した画像により、セキュリティコード画像の真偽を判定することができる。
【００２７】
（２）本実施形態においては、コード認識可能と判定した場合（ステップＳ１−３において「ＹＥＳ」の場合）、ユーザ端末１０の制御部１１は、偽物判定処理を実行する（ステップＳ１−４）。これにより、セキュリティコード画像でないことを示す情報を速やかに出力することができる。
【００２８】
（３）本実施形態においては、ユーザ端末１０の制御部１１は、フレーム検出処理（ステップＳ１−６）、コード認識可能かどうかについての判定処理（ステップＳ１−７）を実行する。コード認識可能と判定した場合（ステップＳ１−７において「ＹＥＳ」の場合）、ユーザ端末１０の制御部１１は、真正判定処理を実行する（ステップＳ１−８）。これにより、セキュリティコード画像であることを示す情報を出力することができる。
【００２９】
また、上記実施形態は、以下のように変更してもよい。
・上記実施形態では、ユーザ端末１０の制御部１１は、通常撮影処理（ステップＳ１−１）の後で、フラッシュ撮影処理（ステップＳ１−５）を実行する。複数種類の光源を用いての撮影を行なう場合には、その順番は限定されるものではない。例えば、フラッシュ撮影処理の後で、通常撮影処理を行なうようにしてもよい。この場合にも、同じ位置のコード画像のフレームにおいて、それぞれの撮影画像においてデコードを行なう。
【００３０】
・上記実施形態では、第２光源として照明部１４を用いたが、第２光源としては、ユーザ端末１０の照明部１４に限定されるものではない。例えば、ユーザ端末１０の制御部１１が制御可能な外部の光源を用いてもよい。
【００３１】
・上記実施形態では、コード認識可能と判定した場合（ステップＳ１−３において「ＹＥＳ」の場合）、ユーザ端末１０の制御部１１は、偽物判定処理を実行する（ステップＳ１−４）。これに代えて、通常撮影及びフラッシュ撮影の両撮影を行なってから、セキュリティコード画像の真偽を判定するようにしてもよい。この場合には、コード解析部１１３に、コード画像の撮影回数について許容回数に関するデータを保持させておく。
【００３２】
図４を用いて、コード認識処理を説明する。
まず、ユーザ端末１０の制御部１１は、ステップＳ１−１、Ｓ１−２と同様に、通常撮影処理（ステップＳ２−１）、フレーム検出処理（ステップＳ２−２）を実行する。
【００３３】
次に、ユーザ端末１０の制御部１１は、デコード処理を実行する（ステップＳ２−３）。具体的には、制御部１１のコード解析部１１３は、検出したフレームによって構成されたコード画像をデコードする。そして、コード解析部１１３は、デコード結果をメモリに仮記憶する。
【００３４】
次に、ユーザ端末１０の制御部１１は、ステップＳ１−５、Ｓ１−６と同様に、フラッシュ撮影処理（ステップＳ２−４）、フレーム検出処理（ステップＳ２−５）を実行する。
【００３５】
次に、ユーザ端末１０の制御部１１は、ステップＳ２−３と同様に、デコード処理を実行する（ステップＳ２−６）。具体的には、制御部１１のコード解析部１１３は、検出したフレームによって構成されたコード画像をデコードする。
【００３６】
次に、ユーザ端末１０の制御部１１は、コード照合処理を実行する（ステップＳ２−７）。具体的には、制御部１１のコード解析部１１３は、通常撮影のコード画像から取得し、メモリに仮記憶したコードと、フラッシュ撮影のコード画像から取得したコードとを比較する。
【００３７】
次に、ユーザ端末１０の制御部１１は、認識完了かどうかについての判定処理を実行する（ステップＳ２−８）。具体的には、制御部１１のコード解析部１１３は、通常撮影においてデコードできず、フラッシュ撮影においてデコードした場合には完了と判定する。
【００３８】
認識完了と判定した場合（ステップＳ２−８において「ＹＥＳ」の場合）、ユーザ端末１０の制御部１１は、ステップＳ１−８と同様に、真正判定処理を実行する（ステップＳ２−９）。
【００３９】
一方、認識未了と判定した場合（ステップＳ２−８において「ＮＯ」の場合）、ユーザ端末１０の制御部１１は、撮影回数のカウントアップ処理を実行する（ステップＳ２−１０）。具体的には、制御部１１のコード解析部１１３は、メモリに記録した撮影回数に「１」を加算する。
【００４０】
次に、ユーザ端末１０の制御部１１は、認識エラーかどうかについての判定処理を実行する（ステップＳ２−１１）。具体的には、制御部１１のコード解析部１１３は、メモリに記録した撮影回数と許容回数とを比較する。撮影回数が許容回数を超えている場合には、認識エラーと判定する。
【００４１】
認識エラーと判定した場合（ステップＳ２−１１において「ＹＥＳ」の場合）、ユーザ端末１０の制御部１１は、ステップＳ１−４と同様に、偽物判定処理を実行する（ステップＳ２−１２）。
【００４２】
一方、撮影回数が許容回数以下で、認識エラーでないと判定した場合（ステップＳ２−１１において「ＮＯ」の場合）、ユーザ端末１０の制御部１１は、通常撮影処理（ステップＳ２−１）に戻る。これにより、通常撮影とフラッシュ撮影とを繰り返して、セキュリティコード画像の真偽を判定することができる。
【００４３】
・上記実施形態では、セキュリティコード画像のコード認識処理を実行する。これに加えて、通常のコード画像のコード認識処理と併用してもよい。
図５を用いて、コード認識処理を説明する。
まず、ユーザ端末１０の制御部１１は、ステップＳ１−１〜Ｓ１−３と同様に、通常撮影処理（ステップＳ３−１）、フレーム検出処理（ステップＳ３−２）、コード認識可能かどうかについての判定処理（ステップＳ３−３）を実行する。
【００４４】
コード認識可能と判定した場合（ステップＳ３−３において「ＹＥＳ」の場合）、ユーザ端末１０の制御部１１は、通常対応処理を実行する（ステップＳ３−４）。具体的には、制御部１１のコード解析部１１３は、タッチパネルディスプレイ１２において、通常のコード画像であることを示すメッセージ及びデコードしたコード情報を出力する。
【００４５】
一方、コード認識不可と判定した場合（ステップＳ３−３において「ＮＯ」の場合）、ユーザ端末１０の制御部１１は、ステップＳ１−５〜Ｓ１−７と同様に、フラッシュ撮影処理（ステップＳ３−５）、フレーム検出処理（ステップＳ３−６）、コード認識可能かどうかについての判定処理（ステップＳ３−７）を実行する。
【００４６】
コード認識可能と判定した場合（ステップＳ３−７において「ＹＥＳ」の場合）、ユーザ端末１０の制御部１１は、Ｓ１−８と同様に、真正判定処理を実行する（ステップＳ３−８）。
【００４７】
コード認識不可と判定した場合（ステップＳ３−７において「ＮＯ」の場合）、ユーザ端末１０の制御部１１は、エラー処理を実行する（ステップＳ３−９）。具体的には、制御部１１のコード解析部１１３は、タッチパネルディスプレイ１２に、エラーメッセージを出力する。これにより、通常のコード画像とセキュリティコード画像のデコードを併用することができる。
【００４８】
・上記実施形態では、コード画像としてカラーコード画像を用いたが、コード画像はこれに限定されるものではない。例えば、バーコードや２次元コード画像を用いることも可能である。この場合には、コード画像を印字した領域に、コード画像を構成し、第１光源及び第２光源で視認可能なフレームを設けておく。そして、第１光源でフレームが印字された領域を撮影し、この領域を第２光源で撮影した画像により、セキュリティコード画像の真偽を判定する。
【００４９】
・上記実施形態では、環境光においては、フレームのみを視認できるようにする。これに代えて、コード画像のフレームの一部にコード要素を埋め込むようにしてもよい。この場合、通常撮影（第１光源を用いた撮影）で取得した第１コード要素と、フラッシュ撮影（第２光源を用いた撮影）で取得した第２コード要素とをメモリに仮記憶し、両者を組み合わせて復号を行なう。例えば、第１コード要素と第２コード要素とを用いて四則演算したり、第１コード要素に基づいて第２コード要素の復号方法を変更したりする。これにより、第１光源での撮影画像から取得した情報と、第２光源での撮影画像から取得した情報を用いて、セキュリティコード画像の真偽の判定やデコードを行なうことができる。
【符号の説明】
【００５０】
１０…ユーザ端末、１１…制御部、１２…タッチパネルディスプレイ、１３…撮影部、１４…照明部、３００，３１０，３２０…コード画像、３０１…フレーム、３０２…セル。
【図１】
2019062499.tif 000003
【図２】
2019062499.tif 000004
【図３】
2019062499.tif 000005
【図４】
2019062499.tif 000006
【図５】
2019062499.tif 000007