(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】6595714
(24)【登録日】2019年10月4日
(45)【発行日】2019年10月23日
(54)【発明の名称】動的な効果を有する2次元コード画像を生成するための方法および装置
(51)【国際特許分類】
G06K 19/06 20060101AFI20191010BHJP
【FI】
G06K19/06 112
G06K19/06 037
【請求項の数】18
【全頁数】18
(21)【出願番号】特願2018-526058(P2018-526058)
(86)(22)【出願日】2017年5月8日
(65)【公表番号】特表2019-505872(P2019-505872A)
(43)【公表日】2019年2月28日
(86)【国際出願番号】CN2017083449
(87)【国際公開番号】WO2017193886
(87)【国際公開日】20171116
【審査請求日】2018年5月18日
(31)【優先権主張番号】201610309494.0
(32)【優先日】2016年5月10日
(33)【優先権主張国】CN
(73)【特許権者】
【識別番号】517392436
【氏名又は名称】▲騰▼▲訊▼科技(深▲セン▼)有限公司
(74)【代理人】
【識別番号】100110364
【弁理士】
【氏名又は名称】実広 信哉
(74)【代理人】
【識別番号】100140534
【弁理士】
【氏名又は名称】木内 敬二
(72)【発明者】
【氏名】黄 佳生
【審査官】
境 周一
(56)【参考文献】
【文献】
特開2008−269550(JP,A)
【文献】
特開2006−254007(JP,A)
【文献】
特開2016−024716(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G06K 1/00−21/08
(57)【特許請求の範囲】
【請求項1】
プロセッサおよびメモリを備える端末デバイスによって実行される、動的な効果を有する2次元バーコード画像を生成するための方法であって、前記メモリは前記プロセッサによって実行されることが可能な命令を記憶し、前記方法は、
ターゲット文字列を受信し、前記ターゲット文字列を、2次元バーコード画像を生成するためのデータシーケンスである2次元バーコード・シーケンスにエンコードするステップと、
前記2次元バーコード・シーケンスに含まれる、2次元バーコード特徴を表現するための標準グレースケール値に対応するビットである特徴ビットを取得し、2次元バーコードの規格に従って前記2次元バーコード・シーケンスを変換した2次元バーコード規格行列内の前記特徴ビットの相対座標を計算するステップと、
予め設定された描画領域を取得し、前記2次元バーコード規格行列内の前記特徴ビットの相対座標に従って前記特徴ビットを前記描画領域内の特徴領域にマッピングするステップと、
予め設定されたアニメーション効果定義に従ってキャンバス要素を使用することによって前記予め設定された描画領域内にアニメーション効果を有する動的な画像を描画するステップと、を備え、前記動的な画像のアニメーション効果は、グレースケール値が前記特徴ビットに対応する標準グレースケール値であるピクセルの前記描画領域内のモーション効果を備え、前記動的な画像の前記アニメーション効果の終了または周期的な終了におけるターゲット・イメージフレームは、グレースケール値が前記特徴ビットに対応する標準グレースケール値であるピクセルで前記特徴領域を埋めたイメージフレームである、方法。
【請求項2】
2次元バーコード規格行列内の前記特徴ビットの相対座標を計算することは、
2次元バーコード・イメージ標準に従って、前記2次元バーコード規格行列に基づいて前記2次元バーコード・シーケンスを2次元配列に変換するステップと、
前記2次元バーコード規格行列内の前記特徴ビットの相対座標として、前記2次元バーコード・シーケンス内の特徴ビットの、前記2次元配列内の添え字を計算するステップと、
を備える、請求項1に記載の方法。
【請求項3】
予め設定された描画領域を取得し、前記2次元バーコード規格行列内の前記特徴ビットの相対座標に従って前記特徴ビットを前記描画領域内の特徴領域にマッピングするステップは、
前記2次元バーコード規格行列に対する、前記予め設定された描画領域の縮尺係数を取得するステップと、
前記縮尺係数に従って、前記2次元バーコード規格行列内の相対座標を、前記予め設定された描画領域内の領域にマッピングするステップと、
前記特徴領域として前記特徴ビットの相対座標に対応する領域を探索するステップと、
を備える、請求項1または2に記載の方法。
【請求項4】
前記予め設定された描画領域内の背景ピクセルのグレースケール平均値を取得するステップと、
前記予め設定された描画領域内の背景ピクセルのグレースケール平均値に従って前記特徴ビットを決定するステップと、
をさらに備える、請求項1から3のいずれか一項に記載の方法。
【請求項5】
動的な効果を有する2次元バーコード画像を生成した後、
前記生成された動的な効果を有する2次元バーコード画像が位置する表示領域の上で長押し操作を検出するステップと、
前記キャンバス要素を使用することによって前記動的な効果を有する2次元バーコード画像の上に被覆層を生成し、前記被覆層の上で前記キャンバス要素を使用することによって、グレースケール値が前記特徴ビットに対応する標準グレースケール値であるピクセルで埋められた特徴領域を描画するステップと、
をさらに備える、請求項1から4のいずれか一項に記載の方法。
【請求項6】
前記被覆層の上で前記ターゲット・イメージフレームを提示した後、
前記生成された動的な効果を有する2次元バーコード画像が位置する表示領域の上でタッチ解放操作を検出するステップと、
前記被覆層を除去して、前記生成された動的な効果を有する2次元バーコード画像のアニメーションを回復するステップと、
をさらに備える、請求項5に記載の方法。
【請求項7】
プロセッサおよびメモリを備えた、動的な効果を有する2次元バーコード画像を生成するための装置であって、前記メモリは、前記プロセッサに、
ターゲット文字列を受信し、前記ターゲット文字列を、2次元バーコード画像を生成するためのデータシーケンスである2次元バーコード・シーケンスにエンコードさせ、
前記2次元バーコード・シーケンスに含まれる、2次元バーコード特徴を表現するための標準グレースケール値に対応するビットである特徴ビットを取得させ、
2次元バーコードの規格に従って前記2次元バーコード・シーケンスを変換した2次元バーコード規格行列内の前記特徴ビットの相対座標を計算させ、
予め設定された描画領域を取得させ、前記2次元バーコード規格行列内の前記特徴ビットの相対座標に従って前記特徴ビットを前記予め設定された描画領域に含まれる特徴領域にマッピングさせ、
予め設定されたアニメーション効果定義に従ってキャンバス要素を使用することによって前記予め設定された描画領域内に動的な画像の動的なアニメーションを表示させる、コンピュータ読み取り可能な命令を記憶し、
前記動的な画像のアニメーション効果は、前記特徴ビットに対応する標準グレースケール値を有するピクセルの前記描画領域内のモーション効果を備え、
前記動的な画像の前記アニメーション効果の終了または周期的な終了におけるイメージフレームは、前記特徴ビットに対応する標準グレースケール値を有するピクセルで前記特徴領域を埋めたイメージフレームである、装置。
【請求項8】
前記命令は、前記プロセッサに、
2次元バーコード・イメージ標準に従って、前記2次元バーコード・シーケンスを、前記2次元バーコード規格行列を満たす2次元配列に変換させ、
前記2次元バーコード規格行列に基づく前記特徴ビットの相対座標として、前記2次元バーコード・シーケンス内の特徴ビットの、前記2次元配列内の添え字を計算させる、請求項7に記載の装置。
【請求項9】
前記コンピュータ読み取り可能な命令は、前記プロセッサに、
前記2次元バーコード規格行列に対する、前記予め設定された描画領域の縮尺係数を取得させ、
前記縮尺係数に従って、前記2次元バーコード規格行列内の相対座標を、前記予め設定された描画領域内の領域にマッピングさせ、
前記特徴ビットの相対座標に対応する領域を探索させ、
前記領域に前記特徴領域を設定させる、請求項7または8に記載の装置。
【請求項10】
前記コンピュータ読み取り可能な命令は、前記プロセッサに、
前記予め設定された描画領域内の背景ピクセルのグレースケール平均値を取得させ、
前記予め設定された描画領域内の背景ピクセルのグレースケール平均値に従って前記特徴ビットを決定させる、請求項7から9のいずれか一項に記載の装置。
【請求項11】
前記命令は、前記プロセッサに、
前記生成された動的な効果を有する2次元バーコード画像が位置する表示領域の上で長押し操作を検出させ、
前記キャンバス要素を使用することによって前記2次元バーコード画像の上に被覆層を生成させ、
前記被覆層の上で前記キャンバス要素を使用することによって、前記特徴ビットに対応する標準グレースケール値を有するピクセルで埋められた特徴領域を描画させる、請求項7から10のいずれか一項に記載の装置。
【請求項12】
前記命令は、前記プロセッサに、
前記生成された動的な効果を有する2次元バーコード画像が位置する表示領域の上でタッチ解放操作を検出させ、前記被覆層を除去させ、前記生成された動的な効果を有する2次元バーコード画像の提示を回復させる、請求項11に記載の装置。
【請求項13】
コンピュータ読み取り可能な命令を記憶した、非一時的なコンピュータ読み取り可能な記憶媒体であって、前記コンピュータ読み取り可能な命令は、1つ以上のプロセッサに、
ターゲット文字列を受信させ、前記ターゲット文字列を、2次元バーコード画像を生成するためのデータシーケンスである2次元バーコード・シーケンスにエンコードさせ、
前記2次元バーコード・シーケンスに含まれる、2次元バーコード特徴を表現するための標準グレースケール値に対応するビットである特徴ビットを取得させ、
2次元バーコードの規格に従って前記2次元バーコード・シーケンスを変換した2次元バーコード規格行列内の前記特徴ビットの相対座標を計算させ、
予め設定された描画領域を取得させ、前記2次元バーコード規格行列内の前記特徴ビットの相対座標に従って前記特徴ビットを前記描画領域内の特徴領域にマッピングさせ、
予め設定されたアニメーション効果定義に従ってキャンバス要素を使用することによって前記描画領域内にアニメーション効果を有する動的な画像を描画させ、
前記動的な画像のアニメーション効果は、前記特徴ビットに対応する標準グレースケール値を有するピクセルの前記描画領域内のモーション効果を備え、前記動的な画像の前記アニメーション効果の終了または周期的な終了におけるターゲット・イメージフレームは、グレースケール値が前記特徴ビットに対応する標準グレースケール値であるピクセルで前記特徴領域を埋めたイメージフレームである、記憶媒体。
【請求項14】
前記命令は、前記1つ以上のプロセッサに、
2次元バーコード・イメージ標準に従って、前記2次元バーコード規格行列に基づいて前記2次元バーコード・シーケンスを2次元配列に変換させ、
前記2次元バーコード規格行列内の前記特徴ビットの相対座標として、前記2次元バーコード・シーケンス内の特徴ビットの、前記2次元配列内の添え字を計算させる、請求項13に記載の記憶媒体。
【請求項15】
前記コンピュータ読み取り可能な命令は、前記1つ以上のプロセッサに、
前記2次元バーコード規格行列に対する、前記描画領域の縮尺係数を取得させ、
前記縮尺係数に従って、前記2次元バーコード規格行列内の相対座標を、前記描画領域内の領域にマッピングさせ、
前記特徴領域として前記特徴ビットの相対座標に対応する領域を探索させる、請求項13または14に記載の記憶媒体。
【請求項16】
前記コンピュータ読み取り可能な命令は、前記1つ以上のプロセッサに、
前記描画領域内の背景ピクセルのグレースケール平均値を取得し、前記描画領域内の背景ピクセルのグレースケール平均値に従って前記特徴ビットを決定する、動作を実行させる、請求項13に記載の記憶媒体。
【請求項17】
前記コンピュータ読み取り可能な命令は、前記1つ以上のプロセッサに、
生成された動的な効果を有する2次元バーコード画像が位置する表示領域の上で長押し操作を検出し、
前記キャンバス要素を使用することによって前記動的な効果を有する2次元バーコード画像の上に被覆層を生成し、前記被覆層の上で前記キャンバス要素を使用することによって、グレースケール値が前記特徴ビットに対応する標準グレースケール値であるピクセルで埋められた特徴領域を描画する、動作を実行させる、請求項13から16のいずれか一項に記載の記憶媒体。
【請求項18】
前記コンピュータ読み取り可能な命令は、前記1つ以上のプロセッサに、
前記生成された動的な効果を有する2次元バーコード画像が位置する表示領域の上でタッチ解放操作を検出させ、前記被覆層を除去させ、前記生成された動的な効果を有する2次元バーコード画像の提示を回復させる、請求項17に記載の記憶媒体。
【発明の詳細な説明】
【技術分野】
【0001】
関連する出願
この出願は、2016年5月10日に出願された、発明の名称を「
動的な効果を有する2次元バーコード画像を生成するための方法および装置」とする中国特許出願第201610309494.0号の優先権を主張し、この両方はその全体が参照によりここに組み込まれる。
【0002】
本出願は、コンピュータ技術の分野、詳細には、動的な効果を有する2次元バーコード画像を生成するための方法および装置に関する。
【背景技術】
【0003】
既存の技術における2次元バーコード画像は、通常、白黒のバイナリ画像である。2次元バーコード画像の認識の間、対応する位置のピクセルのグレースケール値は、解析を実行して2次元バーコード画像に対応する文字列を取得するために決定される。しかし、白黒の2次元バーコード画像は、通常、変化しない視覚的効果を有する。
【0004】
より良いユーザ体験のために、より良い視覚的効果を有する2次元バーコード画像を提供するために、動的な効果を有する2次元バーコード画像が、既存の技術においてさらに出現している。しかし、従来の技術において、動的な効果を有する2次元バーコード画像は、手動で製作される必要がある。ユーザは、まず、(描画領域内の背景イメージとして明るい色のGIF画像が選択されるならば)静的な白黒の2次元バーコード画像内の黒い領域部分を抽出する(それに対応して、背景イメージが暗い色のGIF画像であるならば、白い領域部分を抽出する)ためにPhotoshopのような画像編集処理ソフトウェアを使用する必要があり、そして、アニメーション効果を形成するために黒いドットの動きを手動で設定する。
【発明の概要】
【課題を解決するための手段】
【0005】
ユーザは従来の技術において動的な効果を有する2次元バーコード画像を製作するために手動操作を実行する必要があることによる低い製作効率および不便さの課題を解決するために、動的な効果を有する2次元バーコード画像を生成するための方法が提供され得る。
【0006】
プロセッサおよびメモリを含むコンピューティングデバイスによって実行される、動的な効果を有する2次元バーコード画像を生成するための方法であって、メモリはプロセッサによって実行されることが可能な命令を記憶し、方法は、
ターゲット文字列を受信し、ターゲット文字列を2次元バーコード・シーケンスにエンコードするステップと、
2次元バーコード・シーケンス内の特徴ビットを取得し、2次元バーコード規格行列内の特徴ビットの相対座標を計算するステップと、
予め設定された描画領域を取得し、2次元バーコード規格行列内の特徴ビットの相対座標に従って特徴ビットを描画領域内の特徴領域にマッピングするステップと、
予め設定されたアニメーション効果定義に従ってキャンバス要素を使用することによって描画領域内に動的な画像を描画するステップと、を含み、動的な画像のアニメーション効果は、グレースケール値が描画領域内の特徴ビットに対応する標準グレースケール値であるピクセルのモーション効果を含み、アニメーション効果の終了または周期的な終了における動的な画像のイメージフレームは、グレースケール値が特徴ビットに対応する標準グレースケール値であるピクセルで埋められた特徴領域を有するイメージフレームである。
【0007】
動的な効果を有する2次元バーコード画像を生成するための装置は
、
ターゲット文字列を受信し、ターゲット文字列を2次元バーコード・シーケンスにエンコードするように構成された、2次元バーコードを生成するためのモジュールと、
2次元バーコード・シーケンス内の特徴ビットを取得し、2次元バーコード規格行列内の特徴ビットの相対座標を計算するように構成された、特徴ビットの座標を取得するためのモジュールと、
予め設定された描画領域を取得し、2次元バーコード規格行列内の特徴ビットの相対座標に従って特徴ビットを描画領域内の特徴領域にマッピングするように構成された、特徴領域へのマッピングを実行するためのモジュールと、
予め設定されたアニメーション効果定義に従ってキャンバス要素を使用することによって描画領域内に動的な画像を描画するように構成された、動的な画像を描画するためのモジュールと、を
含み、
動的な画像のアニメーション効果は、グレースケール値が描画領域内の特徴ビットに対応する標準グレースケール値であるピクセルのモーション効果を含み、
アニメーション効果の終了または周期的な終了における動的な画像のイメージフレームは、グレースケール値が特徴ビットに対応する標準グレースケール値であるピクセルで埋められた特徴領域を有するイメージフレームである。
【0008】
コンピュータ読み取り可能な記憶媒体は、コンピュータ読み取り可能な命令を記憶し、コンピュータ読み取り可能な命令は、1つ以上のプロセッサに、次の動作、すなわち、
ターゲット文字列を受信し、ターゲット文字列を2次元バーコード・シーケンスにエンコードすることと、
2次元バーコード・シーケンス内の特徴ビットを取得し、2次元バーコード規格行列内の特徴ビットの相対座標を計算することと、
予め設定された描画領域を取得し、2次元バーコード規格行列内の特徴ビットの相対座標に従って特徴ビットを描画領域内の特徴領域にマッピングすることと、
予め設定されたアニメーション効果定義に従ってキャンバス要素を使用することによって描画領域内にアニメーション効果を有する動的な画像を描画することと、を実行させ、
動的な画像のアニメーション効果は、グレースケール値が描画領域内の特徴ビットに対応する標準グレースケール値であるピクセルのモーション効果を含み、アニメーション効果の終了または周期的な終了における動的な画像のイメージフレームは、グレースケール値が特徴ビットに対応する標準グレースケール値であるピクセルで埋められた特徴領域を有するイメージフレームである。
【0009】
動的な効果を有する2次元バーコード画像を生成するための前述の方法および装置が使用された後、動的な効果を有する2次元バーコード画像を製作するとき、端末が動的な効果を有する2次元バーコード画像を自動的に出力することができる前に、ユーザは、まずエンコードされる必要があるターゲット文字列を入力し、そして描画領域の位置およびサイズを設定し、ピクセルのアニメーション効果を定義する必要があるだけである。ユーザは、まずイメージ編集ソフトウェアを使用して2次元バーコード画像内の特徴部分を抽出し、そしてフレーム毎に2次元バーコード画像を手動で描画する必要がなく、それによって製作の効率が大きく改善され、操作の便利さが改善される。
【0010】
本出願の実施形態の技術的解決策または既存の技術をより明確に説明するために、以下は、実施形態または既存の技術を説明するために要求される添付図面を簡単に導入する。明らかに、以下の説明における添付図面は、本出願のほんのいくつかの実施形態を表わし、この技術分野の当業者は、創作的な努力なしでこれらの添付図面から他の図面を依然として導き出し得る。
【図面の簡単な説明】
【0011】
【
図1】実施形態による、動的な効果を有する2次元バーコード画像を生成するための方法のフローチャートである。
【
図2】QRコード(登録商標)内に定義された2次元バーコード・イメージ行列の領域内の内容の概略図である。
【
図3】QRコード(登録商標)内に定義された2次元バーコード・シーケンス内のビットと2次元バーコード・イメージ行列内のドットの間のマッピングの図である。
【
図4】実施形態による、入って来るまたは出て行く効果を有する動的な2次元バーコード画像を提示するインタフェース図である。
【
図5】実施形態による、動的な効果を有する2次元バーコード画像を生成するための装置の概略構成図である。
【
図6】実施形態による、動的な効果を有する2次元バーコード画像を生成するための前述の方法を実行するコンピュータデバイスの概略構成図である。
【発明を実施するための形態】
【0012】
本出願の実施形態における技術的解決策が、添付図面を参照して、以下で明確かつ十分に説明される。説明される実施形態は本出願の実施形態の全てではなくほんの一部であることは明らかである。本出願の実施形態に基づいてこの技術分野の当業者によって創作的な努力なしで得られる他の全ての実施形態は、本出願の保護範囲内にあるものである。
【0013】
いくつかの実施形態において、動的な効果を有する2次元バーコード画像を生成するための方法が提供される。いくつかの例において、方法はコンピュータ実装されることが可能であり、コンピュータロジックは、フォン・ノイマン・システムに基づくコンピュータシステムのような、コンピュータシステム上で実行されることが可能である。コンピュータロジックは、2次元バーコード画像を生成し、またはアプリケーションプログラム内の2次元バーコード画像を生成するためのプラグインであり得る。いくつかの例において、コンピュータシステムは、スマートフォン、タブレット・コンピュータ、および/またはノードブックコンピュータのような端末デバイスであり得る。
【0014】
方法が実行されるとき、ユーザは、端末が動的な効果を有する2次元バーコード画像を自動的に生成することができる前に、ターゲット文字列を入力することが可能であり、描画領域の位置およびサイズを選択および設定し、アニメーション効果を選択し(開発者は、前もって複数のアニメーション効果定義、例えば、シャッター特殊効果、入って来る特殊効果、出て行く特殊効果、および渦巻特殊効果を設定することが可能であり、ユーザはアニメーション効果の1つの選択する)、そして生成ボタンをクリックする。従って、動的な効果を有する2次元バーコード画像を製作する効率は改善され、操作の便利さは改善される。
【0015】
いくつかの例において、
図1に表わされたように、動的な効果を有する2次元バーコード画像を生成するための方法は、以下を含む。
【0016】
ステップS102:ターゲット文字列を受信し、ターゲット文字列を2次元バーコード・シーケンスにエンコードする。
【0017】
ステップS104:2次元バーコード・シーケンス内の特徴ビットを取得し、2次元バーコード規格行列内の特徴ビットの相対座標を探索する。
【0018】
ステップS106:予め設定された描画領域を取得し、2次元バーコード規格行列内の特徴ビットの相対座標に従って特徴ビットを描画領域内の特徴領域にマッピングする。
【0019】
ステップS108:予め設定されたアニメーション効果定義に従ってキャンバス要素を使用することによって描画領域内に動的な画像を描画する。動的な画像のアニメーション効果は、例えば、グレースケール値が描画領域内の特徴ビットに対応する標準グレースケール値であるピクセルのモーション効果を含み、アニメーション効果の終了または周期的な終了における動的な画像のイメージフレームは、グレースケール値が特徴ビットに対応する標準グレースケール値であるピクセルで埋められた特徴領域を有するイメージフレームである。
【0020】
2次元バーコードは、符号化において、コンピュータの内部ロジックの基礎を形成する「0」および「1」のビットストリームの概念を巧妙に使用する。バイナリシステムに対応するいくつかの幾何学的な形状は、テキストおよび数値情報を表現するために使用される。自動的な情報処理を実現するために、自動認識および読み取りを実行するためにイメージ入力デバイスまたは光電子スキャンデバイスが使用される。様々な種類の2次元バーコードの中で、一般的なコードシステムは、Data Matrix、MaxiCode、Aztec、QR Code、Vericode、PDF417、Ultracode、Code 49、Code 16K、等を含む。
【0021】
QR Codeのエンコードが例として使用される。QR Codeの2次元バーコード画像を生成するプロセスは次の通りである。まず、ターゲット文字列内の各々の文字(数字、字、記号、等)はバイナリ・シーケンス(例えば、シーケンス0101)に変換される。文字のバイナリ・シーケンスは、そして結合される。2次元バーコード・シーケンスを取得するために、2次元バーコード・シーケンスの長さに到達するために開始ビットおよび終了ビットが追加される。そして2次元バーコード・シーケンスに従って画像が生成される。シーケンス内のビット1は画像内の黒であり、シーケンス内のビット0は画像内の白である。例えば、文字列「ABCDE123」は、2次元バーコード・シーケンス:
【0024】
2次元バーコード・シーケンス内の特徴ビットは、前もって2次元バーコード・シーケンス内で選択された同じグレースケール値に対応するビットである。前述の例において、2次元バーコード特徴を表現するために使用される選択された色が黒であり、使用される描画領域の背景が明るい色のイメージであるならば、シーケンス内の全てのビット1が特徴ビットである。2次元バーコード特徴を表現するために使用される選択された色が白であり、使用される描画領域の背景が暗い色のイメージであるならば、シーケンス内の全てのビット0が特徴ビットである。
【0025】
特徴ビットが全て、値が1であるビットである例において、2次元バーコード規格行列内の特徴ビット1の相対座標を取得することは、2次元バーコードに対応する2次元バーコード・イメージ内の全ての黒いドットの相対座標を取得することである。
【0026】
この例において、2次元バーコード・シーケンスは、2次元バーコード・イメージ標準に従って2次元バーコード規格行列を満たす2次元配列に変換されることが可能であり、2次元配列内の2次元バーコード・シーケンス内の特徴ビットの添え字は、2次元バーコード規格行列内の特徴ビットの相対座標として計算される。
【0027】
図2および
図3に表わされたように、
図2および
図3は、静的な2次元バーコード画像がQRコード(登録商標)のエンコードを使用することによって生成される例を表わす。QRコード(登録商標)の符号は、合計で40個の、21×21(バージョン1)から177×177(バージョン40)の範囲にわたる(一般に黒と白である)行列の規格を有する。各々のバージョンにおける符号は、より早いバージョンのものより、各々の側にもう4個のモジュールを有する。QRコード(登録商標)の符号において定義された規格行列は、2次元配列を使用することによって記憶される。この例において、2次元バーコード・シーケンスは、QRコード(登録商標)の規格に従って、まず、2次元バーコード規格行列に変換される(例えば、バージョン1が使用されるならば、21×21行列に変換される)。2次元バーコード規格行列内の各々の要素の値は、2次元バーコード・シーケンス内の各々のビットの値に従って設定される。すなわち、2次元バーコード・シーケンス内のビットは、2次元バーコード規格行列内の1つのドットにマッピングされる。特徴ビットが値1であるように選択されるとき、生成された2次元バーコード規格行列内の値が1である全てのドットの相対座標が取得され得る。コンピュータシステム内の2次元バーコード規格行列の記憶装置のデータ構造は、2次元配列内の2次元バーコード規格行列内の各々のドットが2次元配列内の各々の要素に対応することである。2次元配列内の値が1である要素の(2次元配列の水平軸の添え字および垂直軸の添え字を含む)添え字が取得されるとき、2次元バーコード規格行列内の特徴ビットの相対座標が取得される。
【0028】
加えて、さらに、特徴ビットが、値が1であるビットを使用するか、または値が0であるビットを使用するか、が自動的に設定され得る。具体的には、描画領域内の背景ピクセルのグレースケール平均値が取得されることが可能であり、特徴ビットは、描画領域内の背景ピクセルのグレースケール平均値に従って決定され得る。
【0029】
例えば、ユーザがターゲット文字列を入力した後、描画領域の背景が明るい色を有するならば、端末は、明るい色の背景イメージを分析し、背景イメージのグレースケール平均値が大きいこと、または予め設定された値より大きいことを判定する。この場合、値が1であるビットは、特徴ビットと動的な背景イメージの間のコントラストを増加させるために、特徴ビットとして選択され得る。それに対応して、ユーザがターゲット文字列を入力した後、描画領域の背景が暗い色を有するならば、端末は、暗い色の背景イメージを分析し、背景イメージのグレースケール平均値が小さいこと、または予め設定された値より小さいことを判定し、特徴ビットと動的な背景の間のコントラストを増加させるために、より大きいグレースケール値が特徴ビットのために設定され得る。
【0030】
このようにして、特徴ビットの値は、2次元バーコード画像内の認識要素と描画領域の背景の間の高いコントラストを提供するために、動的な背景イメージに従ってまず自動的に設定されることが可能であり、最終的に生成される2次元バーコード画像をより認識可能にする。さらに、ユーザは、特徴ビットを設定すること(すなわち、値が1であるビットを特徴ビットとして、または値が0であるビットを特徴ビットとして選択すること)から解放されることが可能であり、それによって操作の便利さが改善される。
【0031】
ステップS106において、2次元バーコード規格行列に対する描画領域の縮尺係数が取得されることが可能であり、2次元バーコード規格行列内の相対座標は、縮尺係数に従って描画領域内の領域にマッピングされ、特徴領域として特徴ビットの相対座標に対応する領域について探索が行われる。
【0032】
例えば、規格行列が21×21の2次元配列
【0034】
であるならば、特徴ビットの相対座標は
【0036】
と記録され得る。動的な背景イメージのサイズは105×105である。2次元バーコード規格行列に対する動的な背景イメージの縮尺係数は5(水平方向および垂直方向の両方において5)である。この場合において、5×5ピクセルが動的な背景イメージ内の単位として使用されて、動的な背景イメージが21×21の領域に位置する領域に分割し得る。特徴ビットの相対座標がマッピングされる領域は特徴領域である。例えば、以下のピクセル行列は、特徴ビットと特徴領域の間のマッピング関係を提示する。
【0038】
前述の記録された特徴ビットの相対座標
【0040】
は、次式、
特殊領域の左上角の頂点のピクセル座標=相対座標×縮尺係数
特殊領域の右下角の頂点のピクセル座標=相対座標×縮尺係数+4
に従って動的な背景イメージ内の特殊領域にマッピングされる。
【0041】
このようにして、対応する動的な背景イメージ内の特殊領域として設定されるピクセルの領域座標が取得される。
【0043】
ステップS108において、キャンバス要素を使用することによって描画領域内でフレーム毎にイメージが描画され得る。ピクセルの位置は、モーション効果のアニメーション特殊効果を生成するために各々のフレームにおいて変更される。最終的に、特徴領域は、グレースケール値が特徴ビットに対応する標準グレースケール値であるピクセルで埋められる。
【0044】
図4に表わされたように、アニメーション効果定義が、入って来るまたは出て行く効果であるアプリケーションシナリオにおいて、左から右へ描画領域内に入って来る2次元バーコード画像のアニメーション効果が提示される。アニメーション効果が終了するまたは周期的に終了するときに(アニメーション効果は周期的に再生される効果であり、アニメーション効果は周期の終了において次の瞬間に繰り返して再生される)、提示され得るイメージの形式は、特徴領域内で定義される。すなわち、キャンバス要素は、アニメーション効果の終了または周期的な終了において、イメージフレーム内の特徴領域内に、グレースケール値が特徴ビットに対応する標準グレースケール値であるピクセルを描画するために使用される。アニメーション効果の表現の間に、グレースケール値が特徴ビットに対応する標準グレースケール値であるピクセルは、キャンバス要素を使用することによって部分領域内のアニメーション効果の定義に従って選択的に描画されることが可能であり、ピクセルの位置は、ピクセルがモーション効果を生成することを可能にするためにフレーム毎に変更される。しかし、最終的に、アニメーションが終了するまたは周期的に終了するとき、グレースケール値が特徴ビットに対応する標準グレースケール値であるピクセルは特徴領域内に描画され得る。
【0045】
開発者は、動的な効果を有する2次元バーコード画像を製作するユーザによる続く選択のために前もってアニメーション効果定義を提供し得る。例えば、開発者は、入って来る、出て行く、シャッター、フェードインまたはフェードアウト、縮尺、ひっくり返す、回転、脈動、消滅、または明滅のような様々なアニメーション効果定義を前もって定義し得る。ユーザは、対応するアニメーション特殊効果を有する2次元バーコード画像が生成されることができる前に、対応するアニメーション効果定義を選択し得る。
【0046】
この例において、描画領域の背景は、gifフォーマットの動的な背景画像であり得る。キャンバス・コントロールがページ上に画像を描画するために使用されるとき、動的な画像背景は、フレーム毎に、指定された領域内に常に描画される。従って、特徴ビットに対応する標準グレースケール値は、キャンバス要素を使用することによってアニメーション効果定義に従って動的な背景イメージの各々のフレーム内に描画され得る。いつかの例において、キャンバス要素は、HTML5標準において定義されたcanvas要素であり得る。
【0047】
この例において、動的な効果を有する2次元バーコード画像が生成された後、2次元バーコード画像は、gif画像の形式で記憶され、表現のためにウェブページまたはアプリケーションページに追加され得る。ユーザは、アニメーション効果が終了するまたは周期的に終了するとき、携帯電話のカメラを使用して2次元バーコード画像をスキャンする。この場合において、提示されたイメージフレームは、グレースケール値が特徴ビットに対応する標準グレースケール値であるピクセルで埋められた特徴領域を有するイメージフレームである。従って、特徴領域の標準グレースケール値は全て1または0であると認識される。非特徴領域内の背景色は全て0または1であると認識される。従って、対応する文字列は認識されることが可能である。
【0048】
動的な効果を有する2次元バーコード画像を提示する端末においてユーザが2次元バーコード画像を認識することを意図するならば、ユーザは、依然として、動的な効果を有する2次元バーコード画像の上で長押しを実行して認識操作をトリガすることができる。端末は、そして、生成された動的な効果を有する2次元バーコード画像が位置する表示領域の上で長押し操作を検出し、キャンバス要素を使用することによって動的な効果を有する2次元バーコード画像の上に被覆層を生成し、被覆層の上でキャンバス要素を使用することによってグレースケール値が特徴ビットに対応する標準グレースケール値であるピクセルで埋められた特徴領域を描画する。
【0049】
例えば、2次元バーコード画像が位置する領域の上でユーザが長押しを行うイベントが検出されたならば、表示インタフェースにおいて動的な2次元バーコード画像が位置する領域内に被覆層が生成され、被覆層は、動的な2次元バーコード画像の上にある(例えば、ウェブページにおいて1つの被覆層を定義するためにdivラベルが使用されることが可能であり、被覆層は、動的な2次元バーコード画像が位置するdivラベルの上にあると定義される)。被覆層のサイズは、動的な2次元バーコード画像のサイズと同一に設定されることが可能であり、被覆層内のコンテンツは、グレースケール値が特徴ビットに対応する標準グレースケール値であるピクセルで完全に埋められた特徴領域であるように描画される。このようにして、端末上で2次元バーコード画像を認識するためのプログラムが2次元バーコードを認識するための画像を取得するとき、端末は、全体の動的な2次元バーコード画像の代わりに、グレースケール値が特徴ビットに対応する標準グレースケール値であるピクセルで完全に埋められた特徴領域を有する静的な画像を使用する。従って、2次元バーコード情報は、静的な画像内の特徴領域内の標準グレースケール値の分布を使用することによって認識されることが可能である(他の端末が2次元バーコードをスキャンして認識を実行する前述のシナリオにおいて、動的な2次元バーコード・イメージの終了または周期的な終了において、スキャンの瞬間に提示されたイメージフレームがスキャンの間に取得されるので、被覆層を提示する操作は実行されなくてもよい)。
【0050】
さらに、端末は、生成された動的な効果を有する2次元バーコード画像が位置する表示領域の上のタッチ解放操作を検出し、被覆層を除去し、生成された動的な効果を有する2次元バーコード画像の提示を回復する。
【0051】
すなわち、動的な2次元バーコード画像の上でユーザが長押しを行うとき、被覆層が動的な2次元バーコード画像の上に位置するので、被覆層の中のコンテンツは、グレースケール値が特徴ビットに対応する標準グレースケール値であるピクセルで完全に埋められた特徴領域を有する静的な画像であるように維持される。従って、表示インタフェースを使用することによってユーザによって観察され、動的な2次元バーコード画像が位置する領域内に提示されるイメージフレームは、グレースケール値が特徴ビットに対応する標準グレースケール値であるピクセルで完全に埋められた特徴領域を有する静的な画像であるように維持される。ユーザのために、動的な2次元バーコード画像の効果が休止および停止される効果が達成される。ユーザの指が表示インタフェースを離れ、タッチ解放操作がトリガされたとき、被覆層が除去される(消去される、または透明に設定される)ので、ユーザに提示されるコンテンツは、被覆層の下の元の動的な2次元バーコード画像に回復され、ユーザのために、2次元バーコード画像が休止および停止から動きを回復する効果が達成される。
【0052】
いくつかの実施形態は、動的な効果を有する2次元バーコード画像を生成するための装置を提供する。
図5に表わされたように、動的な効果を有する2次元バーコード画像を生成するための前述の装置は、2次元バーコードを生成するためのモジュール102、特徴ビットの座標を取得するためのモジュール104、特徴領域へのマッピングを実行するためのモジュール106、および動的な画像を描画するためのモジュール108を含む。
【0053】
2次元バーコードを生成するためのモジュール102は、ターゲット文字列を受信し、ターゲット文字列を2次元バーコード・シーケンスにエンコードするように構成される。
【0054】
特徴ビットの座標を取得するためのモジュール104は、2次元バーコード・シーケンス内の特徴ビットを取得し、2次元バーコード規格行列内の特徴ビットの相対座標を計算するように構成される。
【0055】
特徴領域へのマッピングを実行するためのモジュール106は、予め設定された描画領域を取得し、2次元バーコード規格行列内の特徴ビットの相対座標に従って特徴ビットを描画領域内の特徴領域にマッピングするように構成される。
【0056】
動的な画像を描画するためのモジュール108は、予め設定されたアニメーション効果定義に従ってキャンバス要素を使用することによって描画領域内に動的な画像を描画するように構成される。
【0057】
動的な画像のアニメーション効果は、グレースケール値が描画領域内の特徴ビットに対応する標準グレースケール値であるピクセルのモーション効果を含む。
【0058】
アニメーション効果の終了または周期的な終了における動的な画像のイメージフレームは、グレースケール値が特徴ビットに対応する標準グレースケール値であるピクセルで埋められた特徴領域を有するイメージフレームである。
【0059】
いくつかの例において、実施形態の1つにおいて、特徴ビットの座標を取得するためのモジュール104は、2次元バーコード・イメージ標準に従って、2次元バーコード・シーケンスを、2次元バーコード規格行列を満たす2次元配列に変換し、2次元バーコード規格行列内の特徴ビットの相対座標として、2次元配列内の2次元バーコード・シーケンス内の特徴ビットの添え字を計算するようにさらに構成される。
【0060】
いくつかの例において、実施形態の1つにおいて、特徴領域へのマッピングを実行するためのモジュール106は、2次元バーコード規格行列に対する、描画領域の縮尺係数を取得し、縮尺係数に従って、2次元バーコード規格行列内の相対座標を、描画領域内の領域にマッピングし、特徴領域として特徴ビットの相対座標に対応する領域を探索するようにさらに構成される。
【0061】
いくつかの例において、実施形態の1つにおいて、特徴ビットの座標を取得するためのモジュール104は、描画領域内の背景ピクセルのグレースケール平均値を取得し、描画領域内の背景ピクセルのグレースケール平均値に従って特徴ビットを決定するようにさらに構成される。
【0062】
いくつかの例において、実施形態の1つにおいて、
図5に表わされたように、前述の装置は、生成された動的な効果を有する2次元バーコード画像が位置する表示領域の上で長押し操作を検出し、キャンバス要素を使用することによって動的な効果を有する2次元バーコード画像の上に被覆層を生成し、被覆層の上でキャンバス要素を使用することによって、グレースケール値が特徴ビットに対応する標準グレースケール値であるピクセルで埋められた特徴領域を描画するように構成された、2次元バーコードを認識するためのモジュール110をさらに含む。
【0063】
いくつかの例において、実施形態の1つにおいて、2次元バーコードを認識するためのモジュール110は、生成された動的な効果を有する2次元バーコード画像が位置する表示領域の上でタッチ解放操作を検出し、被覆層を除去し、生成された動的な効果を有する2次元バーコード画像の提示を回復するようにさらに構成される。
【0064】
動的な効果を有する2次元バーコード画像を生成するための前述の方法および装置が使用された後、動的な効果を有する2次元バーコード画像を製作するとき、ユーザは、エンコードされ得るターゲット文字列をまず入力し、そして描画領域の位置およびサイズを設定し、端末が動的な効果を有する2次元バーコード画像を自動的に出力することができる前にピクセルのアニメーション効果を定義し得る。ユーザは、イメージ編集ソフトウェアを使用して、2次元バーコード画像内の特徴部分をまず抽出し、そしてフレーム毎に2次元バーコード画像を手動で描画することから解放されることが可能であり、それによって製作の効率が大きく改善され、操作の便利さが改善される。
【0065】
図6は、動的な効果を有する2次元バーコード画像を生成するためのシステムである端末10を表わす。いくつかの例において、システムは、フォン・ノイマン・システムに基づき得る。いくつかの例において、システムは、スマートフォン、タブレット・コンピュータ、ハンドヘルド・コンピュータ、ノートブック・コンピュータ、またはパーソナル・コンピュータのような端末デバイスを含み得る。その代わりに、または加えて、システムは、システムバスを通して結合された、外部入力インタフェース1001、プロセッサ1002、メモリ1003、および出力インタフェース1004を含み得る。いくつかの例において、外部入力インタフェース1001は、少なくとも、ネットワークインタフェース10012を含み得る。メモリ1003は、外部メモリ10032(例えば、ハードディスク、光ディスク、またはフロッピー(登録商標)ディスク)および内部メモリ10034を含み得る。出力インタフェース1004は、少なくとも、表示画面10042のようなデバイスを含み得る。
【0066】
ここに説明された方法は、実行命令によって実行され得る。命令は、フォン・ノイマン・システムに基づいてシステム10の外部メモリ10032内に記憶されたプログラムファイル内に記憶され得る。コンピュータプログラムが実行されるとき、プログラムファイルは、内部メモリ10034にロードされ、そして機械コードにコンパイルされることが可能であり、そして機械コードは実行のためにプロセッサ1002に転送され、それによって、フォン・ノイマン・システムに基づいて、2次元バーコードを生成するための論理モジュール102、特徴ビットの座標を取得するためのモジュール104、特徴領域へのマッピングを実行するためのモジュール106、および/またはシステム10内に動的なイメージを描画するためのモジュール108のロジックを実行する。動的な効果を有する2次元バーコード画像を生成するための前述の方法が実行されるとき、入力パラメータは全て、外部入力インターフェス1001を使用することによって受信され、キャッシュのためにメモリ1003に転送される。入力パラメータは、そして、処理のためにプロセッサ1002に入力される。処理の結果のデータは、続く処理のためにメモリ1003内にキャッシュされ、または出力のために出力インタフェース1004に転送される。
【0067】
前述のコンピュータプログラムは、不揮発性記憶媒体内に記憶された機械読み取り可能な命令を含む。従って、実施形態は、その代わりに、ソフトウェア製品として実現され得る。不揮発性のコンピュータ読み取り可能な記憶媒体は、コンピュータに挿入された拡張ボードに配置されたメモリ、またはコンピュータに結合された拡張ユニット内に配置されたメモリであり得る。拡張ボードまたは拡張ユニットに設置されたCPU等は、命令に従って、いくつかまたは全ての実際の動作を実行し得る。不揮発性のコンピュータ読み取り可能な記憶媒体は、フロッピー(登録商標)ディスク、ハードディスク、磁気光ディスク、光ディスク(例えば、CD-ROM、CD-R、CD-RW、DVD-ROM、DVD-RAM、DVD-RW、およびDVD+RW)、磁気テープ、不揮発性メモリカード、およびROMを含む。いくつかの実施形態において、プログラムコードは、通信ネットワークを介してサーバコンピュータからダウンロードされ得る。
【0068】
上記で開示されたものは、単に本出願の実施形態の例であり、もちろん、本出願の保護範囲を限定することは意図されない。従って、本出願の請求項に従って行われる等価な変形は、本出願の範囲内にあるものである。
【符号の説明】
【0069】
102 2次元バーコードを生成するためのモジュール
104 特徴ビットの座標を取得するためのモジュール
106 特徴領域へのマッピングを実行するためのモジュール
108 動的な画像を描画するためのモジュール
110 2次元バーコードを認識するためのモジュール
1001 外部入力インタフェース
10012 ネットワークインタフェース
1002 プロセッサ
1003 メモリ
10032 外部メモリ
10034 内部メモリ
1004 出力インタフェース
10042 表示画面