カラーベースのイメージコードの色判別方法
【課題】カラーベースのイメージコードの色判別方法を提供する。
【解決手段】カラーベースのイメージコードを構成する各セルで所定数のピクセルを標本抽出した後、MCC法、WBCC法、SLACC法、KMACC法を適用してセルの色相を判別する。これにより、カメラや印刷媒体の特性による色相歪曲が発生しても、イメージコードの正確な色認識が可能となる。
【解決手段】カラーベースのイメージコードを構成する各セルで所定数のピクセルを標本抽出した後、MCC法、WBCC法、SLACC法、KMACC法を適用してセルの色相を判別する。これにより、カメラや印刷媒体の特性による色相歪曲が発生しても、イメージコードの正確な色認識が可能となる。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、カラーベースのイメージコードの復号方法に係り、さらに詳細には、復号過程のうちイメージコードの各セルの色を判別する方法に関する。
【背景技術】
【0002】
この10年間白黒パターンのバーコードを利用した増強現実(Augmented Reality)、混合現実(Mixed Reality)分野の研究及び、モバイルコマースのような商用サービスについての研究がなされてきた。昨今には、モバイルコンピュータのためのカラーコードのようなカラーベースのイメージコードが提案された。しかし、カラーのセルで構成されるカラーベースのイメージコードは、多様な照明、印刷媒体、汎用カメラ装置によってカラーセルの色相変移が発生するので、白黒マーカより認識が難しい。
【0003】
最近の研究は、物理的な個体にタグ媒体を内蔵し、これをリーダ器で認識することによって、仮想世界にあるデータやサービスをユーザに提供するユーザインターフェースに集中されている。有形のユーザインターフェースで使われるタグ媒体は、RFID(Radio Frequency Identification)のような無線タグとバーコードのようなイメージコードとに大別される。特に、イメージコードやマーカの画像を認識してサービスを提供するインターフェースを”PUI(Paper User Interface)”という。このようなインターフェース技法は、増強現実、混合現実分野の研究と携帯電話を利用したPIMS(Personal Information Management Service)、広告サービス、モバイルコマースなどの商用サービスとに利用されている。
【0004】
イメージコードとマーカとは、その形態によって一次元(1D)バーコードと二次元(2D)コードとに分けうる。1Dバーコードは、白黒の棒(バー)のパターン情報を利用して、識別番号、チェックサムディジット、そしてガイドバーを表現する。2Dコードは、1Dバーコードより保存可能なデータ量が多いので、保護情報を利用したエラー訂正能力を有している。図1は、このようないくつかの2Dコードを示す。
【0005】
一般的に、モバイルコンピュータ環境で使われる端末機は、低容量メモリ、低性能プロセッサ、そして汎用の内蔵カメラで構成されるので、従来の端末機を利用したイメージ認識には、次のような制約が従う。
【0006】
第一に、PUIは、日常生活の多様な照明下で使用可能でなければならない。第二に、認識アルゴリズムが簡単で速くなければならない。第三に、イメージは、低性能のカメラでも認識されねばならない。このような条件を考慮した2Dコードとしては、サイバーコードとセルの数を制限したQR(Quick Response)コード(登録商標)、及びカラーコードがある。ここで、バーコードとサイバーコード、及びQRコード(登録商標)は、白黒セルやパターンで構成されたコードであり、カラーコードは、カラーベースのイメージコードである。
【0007】
白黒は、カラーに比べて、一般的に認識が容易であるので、ほとんどのコードは、白黒を使用する。しかし、カラー媒体が大衆化するにつれて、既存の白黒コードよりメディアに対し親和的でありデータ保存容量の大きいカラーベースのイメージコードが注目されている。
【0008】
カラーコードでは、カラーを利用して識別文字が符号化され、二重パリティ法を利用するエラー検証と方向探知機能とを提供する。カラーコードの復号アルゴリズムは、非常に簡単であり、データ表現がセルの長さパターンでない同じサイズの色相セルで構成されるので、相対的にぼやけ現象に強い特性を有している。しかし、多様な照明とそれぞれ異なるカメラの特性、及び印刷媒体の特性による色相変移は、モバイルコンピュータ環境下でカラーコードのようなカラーベースのイメージコードの認識を困難にする。
【発明の概要】
【発明が解決しようとする課題】
【0009】
本発明が解決しようとする技術的課題は、カメラ及び印刷媒体の特性による色相変移が発生しても、カラーベースのイメージコードの各セルの色を正確かつ容易に把握しうる色判別方法を提供することである。
【0010】
本発明が解決しようとする他の技術的課題は、カラーベースのイメージコードの色判別方法をコンピュータで実行させるためのプログラムを記録したコンピュータで読み取り可能な記録媒体を提供することである。
【課題を解決するための手段】
【0011】
上述の課題を達成するための本発明によるカラーベースのイメージコードの色判別方法の一実施形態は、カラーベースのイメージコードを構成する各セルから所定数のピクセルを標本抽出するステップと、前記標本抽出したピクセルのそれぞれに対して、各ピクセルを構成するカラーチャンネルのうち最も大きい値を有するカラーチャンネルの色を前記各ピクセルの色と把握するステップと、前記各セルから標本抽出されたピクセルの色のうち、最も頻度数の高い色を前記セルの色と判別するステップと、を含む。
【0012】
上述の課題を達成するための本発明によるカラーベースのイメージコードの色判別方法の一実施形態は、カラーベースのイメージコードの剰余余白から所定数のピクセルを標本抽出するステップと、前記標本抽出したピクセルの平均輝度値を求めるステップと、前記カラーベースのイメージコードを構成する各セルのカラーチャンネル別平均値を前記平均輝度値を利用して補正するステップと、前記補正された各セルのカラーチャンネル別平均値を色調抽出可能なカラーモデルに変換し、前記色調抽出可能なカラーモデルの輝度と色調値とに基づいて前記各セルの色を判別するステップと、を含む。
【0013】
上述の課題を達成するための本発明によるカラーベースのイメージコードの色判別方法の他の実施形態は、カラーベースのイメージコードを構成する前記各セルの輝度値及び彩度値のうち少なくとも一つを求め、前記求めた輝度値及び彩度値のうち少なくとも一つに基づいて前記セルを無彩色及び有彩色グループに分類するステップと、前記有彩色グループに属するセルの色を、色調抽出可能なカラーモデルの色調を利用して判別するステップと、を含む。
【発明の効果】
【0014】
本発明によれば、カメラや印刷媒体などの特性によってカラーベースのイメージコードの色相、濃淡、形状が歪曲されても、元来の色相や濃淡に変換可能であり、雑映を補正しうるので、正確なコード認識が可能である。また、剰余余白やコード内の色、濃淡情報を利用するので、低性能コンピュータ環境でも速くて容易な色認識が可能である。
【図面の簡単な説明】
【0015】
【図1】従来のカラーベースのイメージコードのうち2Dコードの一例を示す図である。
【図2A】本発明で使われるカラーベースのイメージコードのうちカラーコードの一例を示す図である。
【図2B】本発明で使われるカラーベースのイメージコードのうちカラーコードの一例を示す図である。
【図3】カラーコードの符号化方法を概略的に示すフローチャートである。
【図4】カラーコードの復号方法を概略的に示すフローチャートである。
【図5】本発明によるカラーベースのイメージコードの復号方法を示す図である。
【図6】本発明によるカラーベースのイメージコードの復号方法のうち前処理ステップの一実施形態を示すフローチャートである。
【図7】本発明によるカラーベースのイメージコードの復号方法のうちカラー判別ステップの一実施形態を示す図である。
【図8】本発明によるカラー判別ステップのうちサンプリングステップの一例を示す図である。
【図9】本発明によるカラーベースのイメージコードの色判別方法のうちMCCを利用する方法の一実施形態を示す図である。
【図10】本発明によるカラーベースのイメージコードの色判別方法のうちWBCCを利用する方法の一実施形態を示す図である。
【図11】本発明によるカラーベースのイメージコードの色判別方法のうちSLACCを利用する方法の一実施形態を示す図である。
【図12】本発明によるカラーベースのイメージコードの色判別方法のうちKMACCを利用する方法の一実施形態を示す図である。
【図13】本発明によるカラーベースのイメージコードの復号方法のうちコード認識ステップの一実施形態を示す図である。
【発明を実施するための形態】
【0016】
以下、添付された図面を参照して、本発明によるカラーベースのイメージコードの色判別方法について詳細に説明する。
【0017】
図2A及び図2Bは、本発明で使われるカラーベースのイメージコードのうちカラーコードの一例を示す図面である。
【0018】
一般的に、増強現実で使われるARToolKitマーカ、プラナーマーカは、動的なモバイルコンピュータ環境でコード構造が単純であり、復号のための演算量が少ない一方、保存情報量は、非常に少ない。商用の2Dコードは、保存情報量は多い一方、コードを認識するためには、高性能カメラが要求されて演算量が多いので、動的な環境に適していない。
【0019】
図2A及び図2Bを参照すれば、カラーコードは、カラーセルからなる2Dマトリックス型コードであり、モバイルコンピュータ用の場合に、カラーコードの1個セルは、2ビットを表現するので、このために4つの色で情報が符号化される。カラーコードは、オンライン連結されたデータベースの内容のみ修正すれば、サービス変更が可能である。また、一般2Dコードと異なり、カラーコードは、専用スキャナーではない携帯電話やPDAに内蔵された汎用カメラを通じて認識可能であるので、携帯用コンピュータ環境に非常に適している。カラーコードは、コードの構造が非常に単純で演算量が少なく、かつカラーを使用するので、相対的に情報量が多くて増強現実サービスとオンライン用コードサービスとに両方とも適している。
【0020】
カラーコードは、データビットセル、パリティビットセル、及びコードアライメントセルで形成されている。カラーコードのデータビットセルには、識別番号を表現するビットストリームが配置される。データビットセルに対して、行及び列に沿ってパリティ演算を行い、これを通じて導出されたパリティビットがカラーコードの右側下段に配置される。コードの右側下段には、コードアライメントセルが配置されるが、行及び列パリティの逆を取ることによって、他の行及び列のパリティ方式と区別でき、復号時には、コードセルを整列(アライメント)する基準として利用しうる。
【0021】
図2Aで、データビットセルは、D11,D22,...,D44であり、パリティビットセルは、P15,P25,...,、P45,P51,P52,...,P54である。そして、PAは、コードアライメントセルである。カラーコードでは、白色を使用していないため、コード領域を探すための境界線が不要であるが、周辺の雑映と区分するための1個セルほどの厚さの白色の剰余余白がコード周囲に存在することが望ましい。カラーコードは、行及び列の数、そして、パリティ方式の数によって表現可能なパターン数が変わる。
【0022】
図3は、カラーコードの符号化方法を概略的に示すフローチャートである。
【0023】
図3を参照すれば、エンコーダは、識別番号を入力されると(S300)、識別番号をデータビットストリームに変換し、これをマトリックス状に配置する(S310)。エンコーダは、エラー訂正のために、各行及び列に対してパリティビットを演算して追加し、パリティビットを利用してコードアライメントビットを生成して追加する(S320)。エンコーダは、パリティビットを含むコードビットストリームが完成されると、各ビットストリームを対応するカラーに変換し(S330)、カラーからなるカラーセルを生成して整列(アライメント)する(S340)。
【0024】
図4は、カラーコードの復号方法を概略的に示すフローチャートである。
【0025】
図4を参照すれば、デコーダは、カラーベースのイメージコードが含まれたオリジナルイメージをカメラから入力されると(S400)、デコーダは、オリジナルイメージからコードイメージ領域を抽出してカラーセルを読み取った後(S410)、これを対応するビットストリームに変える(S420)。デコーダは、パリティ演算を行ってエラーを感知して訂正する(S430)。そして、デコーダは、コードアライメントビットを得て、コードアライメントビットの位置を通じてデータビットストリームをアライメントして識別番号を抽出する(S440)。また、データビットストリームとパリティ演算の種類とを組合わせることによって、追加的なカラーコードのパターンが得られる。
【0026】
図5は、本発明によるカラーベースのイメージコードの復号方法を示す図面である。
【0027】
図5を参照すれば、カラーベースのイメージコードの復号方法は、イメージ獲得ステップ(S500)、前処理ステップ(S505)、カラー判別ステップ(S525)、エラー感知ステップ(S545)及びコード認識ステップ(S555)に大別される。デコーダには、前処理ステップで使用する前処理技法の種類を設定するPID(Pre-processing method ID:前処理ID)と、カラーセル判別ステップで使用するカラー判別技法の種類を設定するCID(Color cell classification method ID:カラーセル判別法ID)というパラメータとを含み、これらのパラメータによる技法を順次に適用して復号を行う。
【0028】
イメージ獲得ステップ(S500)は、物理的または電子的に表現されたイメージを獲得するステップである。イメージは、ペーパー、金属、プラスチックのような物理的媒体に印刷されるか、または携帯電話のLCD、モニター、TV、ビームプロジェクトなどのディスプレイ装置を通じて表示されうる。また、イメージは、電子的な形態、例えば、ビットストリームや電子ファイル状に提供されうる。
【0029】
イメージ獲得ステップ(S500)は、物理的媒体に表現されたイメージを読み取るために、カメラホン、スキャナー、デジタルカメラ、PCカメラ、FAXのような画像入力装置を利用して、ビットストリームや電子ファイル状に表現されたイメージは、ネットワークや保存装置を通じて獲得する。
【0030】
ここで、イメージ獲得ステップ(S500)の出力信号をオリジナルイメージと称し、このオリジナルイメージは、コンピュータで処理できるイメージファイル状に構成される。このオリジナルイメージは、コード情報を含むコードイメージと共に雑映や背景を含む。また、オリジナルイメージ内のコードイメージの色相及び形態は、通常、照明、イメージの表現された媒体、イメージを読み取るリーダ器によって歪曲される。
【0031】
イメージ獲得ステップ(S500)でイメージを入力されると、前処理ステップ(S505)で入力されたイメージに対する前処理過程を行う。前処理ステップでコードイメージ抽出に失敗すれば(S510)、PIDを増加させ(S515)、再び前処理を行う(S505)。もし、MAXPID個の前処理技法が何れもが行われたならば(S520)、イメージが不良であると判断してイメージを再入力する(S500)。カラーセル判別ステップ(S525)でカラーセルの判別が難しいか(S530)、または判別されてもエラー感知ステップ(S545)でエラーが発行すれば(S550)、CIDを増加させ(S535)、これに対応するカラーセル判別アルゴリズムを行う(S525)。もし、MAXCID個のカラー判別技法を何れも行っても失敗すれば(S540)、再び前処理ステップ(S505)を行う。エラー感知ステップ(S545)で、デコーダはパリティ演算を行い、カラーコードのビットストリームからエラーを感知する。もし、エラーがなければ、識別番号を出力し、そうでなければ(S550)、再びカラー判別ステップ(S525)を行う。
【0032】
図6は、本発明によるカラーベースのイメージコードの復号方法のうち前処理ステップの一実施形態を示すフローチャートである。
【0033】
前処理ステップ(図5のS505)は、入力されたイメージからコードイメージを抽出し、コードの特徴点を抽出した後、各カラーセルの中心点を探し出すためのものである。前処理は、カラー画像からグレースケールイメージを生成した後、これを利用して行う。具体的に、前処理ステップは、二値化ステップ(S600)、ノイズ除去ステップ(S610)、限界四角形探索ステップ(S620)、頂点検出ステップ(S630)、頂点選択ステップ(S640)、カラーセル中心点検索ステップ(S650)を含む。
【0034】
(1)二値化ステップ(S600)
二値化は、背景やコード周辺の事物からコードイメージを分離し、コードイメージの特徴点を感知する演算の複雑度を減らすために使われる。二値化ステップでは、オリジナルイメージの各ピクセルの輝度情報を利用して各ピクセルを白黒に変換する。各ピクセルの輝度値が臨界値より明るければ、白色、そうでなければ黒色に変換する。通常的に、画像において、二値化は、白黒に表示されるが、これ以外の色に二値化されうる。
【0035】
(2)ノイズ除去ステップ(S610)
ノイズ除去ステップでは、二値化されたオリジナルイメージ内の各物体の境界線を検出し、検出された境界線によってオリジナルイメージをコードイメージの領域とそうでない領域とに分ける。このとき、二つの領域を分ける基準は、境界線の長さ(周りの長さ)、物体の形態がある。
【0036】
(3)限界四角形探索(S620)
入力画像からコードイメージを抽出するために、コードの中心点を予測した後、これを基準にコードイメージの限界四角形を探索する。このために、全体イメージをn個のブロックに分けた後、各ブロックに位置したピクセルの数が最も多いブロックを探す。
【0037】
(4)頂点検出ステップ(S630)
コードイメージの特徴点は、コードイメージの特性を反映するピクセルを意味する。このようなものとしては、カラーコードの四角の頂点、QRコードのファインダパターンの4つの頂点とアライメントパターン、タイミングパターンがある。もし、コードイメージが円形、または不定形であれば、特徴点は、外郭線の集合のように線分で表現されることもある。このような特徴点は、整合技法、幾何学的距離演算など、既存特徴点の抽出方法を利用すれば、抽出されたコードイメージから容易に探すことができ、各コードの認識技法を参照すれば、さらに容易である。
【0038】
(5)カラーセルの中心点検索ステップ(S640)
カラーコードは、カラーセルから構成されるので、各カラーセルの中心点でカラーピクセルを抽出して色判別を行う。
【0039】
図7は、本発明によるカラーベースのイメージコードの復号方法のうち、カラー判別ステップの一実施形態を示す図面である。
【0040】
図7を参照すれば、カラー判別ステップ(図5のS525)は、前処理ステップ(図6参照)を通じてカラーベースのイメージコードの各セルの中心位置をさがせば、その中心位置を中心にセルのカラーピクセルを標本抽出するサンプリングステップ(S1100)及び各セルのカラーを判別するカラーセル判別ステップ(S1110)を含む。
【0041】
図8は、サンプリングステップ(S1100)の一例を示す図面である。図8を参照すれば、各セルから標本抽出される標本ピクセルの数は、入力されたコードイメージのサイズによって異なる。
【0042】
カラーセルの判別のための方法として、(a)最大チャンネルベース・クラスタリング(Max Channel based clustering:MCC)(図9)、(b)ホワイトバランスベース・カラークラスタリング(White Balance based color clustering:WBCC)(図10)、(c)シングルリンケージアルゴリズムベース・カラー判別(Single-linkage algorithm based color classification:SLACC)(図11)、(d)K平均アルゴリズムベース・カラー判別(K-means algorithm based color classification:KMACC)(図12)がある。これらを利用すれば、非常に多くの種類の色を判別しうるが、ここでは、説明のために黒色、赤色、青色、緑色の4つの色を判別すると限定した。
【0043】
(a)最大チャンネルベース・クラスタリング(MCC)
図9は、本発明によるカラーベースのイメージコードの色判別方法のうち、MCCを利用する方法の一実施形態を示す図面である。図9を参照すれば、まず、図8で説明したように、各セルから所定数のピクセルをサンプリングし(S1300)、サンプリングされたピクセルに対してMCC技法を適用する。MCC技法は、具体的に次の通りである。
【0044】
カラーピクセルやカラーセルは、赤色、緑色、青色のカラーチャンネルを有しており、各カラーチャンネルは、0ないし255のうち一つの値を有する。MCC技法は、セルでサンプリングしたピクセルのカラーチャンネルのうち、最も大きい値を有するカラーチャンネルの色相を該当ピクセルやセルの色相グループと推定する。これと共に、黒色を判別するために、前処理ステップのうち二値化ステップで使用した臨界値TPIDを利用する。各セル当りサンプリングしたピクセル数をn、第iピクセルをpi=(ri,gi,bi)T、最大チャンネル値をmaxi=max(ri,gi,bi)、中間チャンネル値をmidi=mid(ri,gi,bi)、各色相を判別する臨界値をTとすれば、色相判別関数fMCCは、次の通りである。
【0045】
【数1】
【0046】
MCC技法では、1セルでサンプリングされたピクセルのそれぞれに対する色相(すなわち、R、G、Bのうち何れか一つの色相)を判別した後(S1310)、頻度数が最も多い色相を該当セルの色相と見なす(S1320)。MCCは、TMCCj={Tj,TK1i,TK2i,TR,TG,TB}、j=PID値を設定することによって色相を判別しうるので、イメージの特性を知っている場合に有利である。
【0047】
一方、照明や印刷媒体のような要素の特性を知らない場合に性能が低下する。したがって、デコーダの性能向上のために、一つのPIDに数個のT値集合を設定し、これにより、色判別を行う。一例として、TK2が数個の要素を有する集合である場合に、j番目のPIDを有するk番目のT値集合は、次の通りである。
【0048】
【数2】
【0049】
MCCは、非常に簡単なアルゴリズムであるので、演算速度が速い。
【0050】
(b)ホワイトバランスベース・カラークラスタリング(WBCC)
図10は、本発明によるカラーベースのイメージコードの色判別方法のうち、WBCCを利用する方法の一実施形態を示す図面である。具体的な方法は、次の通りである。
【0051】
WBCC技法は、コードイメージ周辺の剰余余白を利用してセルの色相を判別するアルゴリズムである。コードイメージの周辺には、1セルサイズ以上の剰余余白が存在する。剰余余白は、白色であって、照明及び印刷媒体の色相変移を反映する。WBCC技法は、ホワイトパッチステップとカラー判別ステップとを含む。
【0052】
(1)ホワイトパッチステップ
剰余余白の色相は、白色であるので、これを利用すれば、照明やカメラの特性を推定しうる。WBCC技法は、セルのカラーチャンネルの値を調節する。WBCC技法は、色相補正アルゴリズムのうち一つであるグレーワールド推定技法(GWA:Gray World Assumption)と類似しているが、オリジナルイメージ全体の平均輝度の代わりに、剰余余白のピクセルの輝度値を使用するという点で異なる。
【0053】
カラーベースのイメージコードを構成するn個のセルのうち、i番目のセルの色相情報を
とする。このとき、Piは、該当セルで色々なピクセルをサンプリングした後、ピクセルの有するred、green、blueチャンネル別の平均を求めることによって得られる。同様に、剰余余白からm個のピクセルを抽出したとき(S1400)、抽出されたj番目のピクセルをPwj=(rwj,gwj,bwj)T、j=1,2,...,mとすれば、これらのピクセルのチャンネル別平均値と輝度値とを次の式のように求めうる(S1410)。
【0054】
【数3】
【0055】
同様に、i番目のセルから抽出されたピクセルのチャンネル別平均値ベクトルを
とすれば、色相補正のための比率値と、それを利用して補正した色相ベクトルPciとは、次の式のように求めうる(S1420)。
【0056】
【数4】
【0057】
(2)カラー判別ステップ(S1430)
WBCC技法は、ホワイトパッチステップ以後に色調情報を抽出しうるカラーモデルを利用する。このようなカラーモデルとしては、HSV、HSI、YIQ、CIE、CMYKがある。このうち、HSV(Hue,Saturation,Value)を利用して色判別を行う場合には、次の通りである。色相補正されたセルのPciは、RGB(red,green,blue)カラーモデルであるが、これを対応するHSV(Hue,Saturation,Value)カラーモデルPchi(hci,Sci,Vci)に変換する。HSVで照度(hue)値hciは、角度の範囲(0≦hci<360)で表現され、red=0、green=120、blue=240であるので、各色相は、これに近い程度によって判別しうる。また、黒色である場合、RGBチャンネル値の差が少なく、白色と輝度差が大きいと仮定しうる。したがって、i番目のセルの色判別関数は、次の通りである。
【0058】
【数5】
【0059】
WBCCは、白色の剰余余白が存在する場合に、良好な性能を期待しうる。しかし、コードイメージ領域がぼやけるようになって剰余余白が損傷される場合、コードが印刷された媒体が白色でないか、または色が塗られた場合には、白色のピクセル情報が損傷されるので、性能が低下する。
【0060】
WBCCでは、色判別ステップのためにHSVカラーモデルを例としたが、前記MAC技法や下記のKMACC、SLACCなどを色相補正後に適用しうる。したがって、WBCCは、色相補正技法が最も大きい特徴であり、色判別は、他の技法と組合わせうる。
【0061】
(c)シングルリンケージアルゴリズムベース・カラー判別(SLACC)
カラーの色判別のために、階層的クラスタリング技法を使用しうる。この技法は、一つのクラスターを順次に細部クラスタに分ける接近方式を有している。本発明では、階層的クラスタリング技法の例として、この技法のうち代表的なシングルリンケージアルゴリズムを使用した例を示す。
【0062】
図11は、本発明によるカラーベースのイメージコードの色判別方法のうち、SLACCを利用する方法の一実施形態を示す図面である。
【0063】
カラーベースのイメージコードの色判別は、各セルの色相情報によって所定の色相クラスタにマージする過程である。各セルを、それらの色相情報を利用して任意のカラー空間にマッピングすれば、セルの密集度によってクラスタが形成される。このとき、一色相クラスター内の隣接セルは、相対的に近い距離を有し、異なるクラスタに属する隣接セルは、相対的に遠い距離を有する。このような色判別基準となる距離は、RGBカラー空間では、r、g、bチャンネル値、HSVカラー空間では、brightness(輝度)、saturation、hue値によって求められる。しかし、これらカラーモデルを適用する場合、3次元空間上に位置したイメージコードの要素の色相座標間距離を求めて、そのうち、距離が最小であるクラスタをマージせねばならない。
【0064】
これは、1次元や2次元上のクラスタリング演算より複雑で色々なカラークラスタで判別せねばならないので、実現に困難さがある。これを解決するために、本発明では、輝度情報によるクラスタリングとhue情報によるクラスタリングとを行う。したがって、各ステップごとに1次元空間上でクラスタリングを行う。
【0065】
SLACCは、カラー判別のために階層的クラスタリング技法であるSLA(Single-Linkage Algorithm)を利用したものである。SLAは、ミニマム法(minimum method)またはニアレストネイバー法(nearest neighbor method)とも知られているが、二つのグループ間の距離を求める時に、一グループに属する元素と他のグループに属する元素との間の距離のうち、最も短い距離であるものを採択する方法である。
【0066】
SLACCで、CiとCjとをクラスタとし、x、yをサンプルとすれば、クラスタ間の距離は、次の通りである。
【0067】
【数6】
【0068】
無彩色セルの輝度が有彩色セルの輝度より暗く、赤色、青色、緑色のような有彩色セルは、それぞれ色相の色調が異なる。また、同じ色相グループに属するピクセルは、異なるグループに属するピクセル間の距離より近接している。
【0069】
SLACCは、二つのステップからなる。第一に、セルを輝度によってアライメントした後、隣接したアライメント輝度値の間の距離が最も遠いものを求めることによって、無彩色及び有彩色グループに区分する。第二に、有彩色グループに区分されたセルの色調を利用することによって、第一のステップと類似してred、green、blueにセルを区分する。具体的な各ステップは、次の通りである。
【0070】
ステップ1:SLAを利用して無彩色及び有彩色グループに分類(S1500)
n個のカラーベースのイメージコードのセルのうち、i番目セルの色相情報を
とし、i番目のセルPiの照度値を
と仮定する。そして、求めようとするクラスタの数をmとする。一般的に、輝度値によってm個のクラスタリングを行う過程は、次の通りである。
【0071】
まず、全てのセルの照度値を昇順でアライメントして、O={oμ1,oμ2,・・・,oμj,oμj+1,・・・,oμC},oμj≦oμj+1を求める。そして、OμiをそれぞれクラスタCiに設定する。最も近いクラスタCa及びCbを求め、CaとCbとをマージする。この過程を反復する。もし、mが3であり、白色が存在し、灰色が存在しなければ、C1は黒色、C3は白色、そして、C2は有彩色となる。また、白色と灰色とが存在しなければ、m=2であり、C1は黒色、C2は非黒色となる。
【0072】
もし、黒色クラスタをCKとし、そうでないクラスタをCNKとすれば、それら間の距離は、次の式のようである。
【0073】
【数7】
【0074】
このとき、d(oμj,oμj+1)は、整列された隣接セルoμjとoμj+1との間の距離である。
【0075】
ステップ2:SLAを利用して有彩色セルをred、green及びblueグループに分類(S1510)
CNKに属するセルは、色調(hue)によって判別される。これらセルは、各セルのhue値を使用して整列した後、SLAを利用して赤色、緑色または青色に判別される。もし、CRが赤色グループ、CGが緑色グループ、そして、CBが青色グループであれば、下記のように定義される。
【0076】
【数8】
【0077】
この場合、色調は、0°から360°までの角度として配列され、純粋な赤色は、0°でありかつ360°であり、緑色は120°、青色は240°である。したがって、赤色は60°より小さいか、または300°より大きい範囲に位置するといえる。また、緑色は、60°より大きく、180°より小さい範囲であり、青色は、180°より大きく、300°よりは小さい範囲にあるため、数8のように表現可能である。
【0078】
もし、色判別が8種類(red、green、blue、yellow、cyan、magenta、black、white)である場合ならば、これらは、有彩色及び無彩色の判別基準を調節することによって区別可能である。すなわち、ステップ1では、SLAによってC1(black)及びC3(white)グループを求め、C2は、有彩色グループと判断する。そして、ステップ2では、有彩色グループC2に対して、SLAを利用して色調値を基準にクラスタを分割した後、各クラスタ別に色相範囲によってセルの色相値を判断する。
【0079】
例えば、前記8つの色判別の場合、有彩色グループが6個であるので、色調値の範囲を6個に分割する。すなわち、redの場合には、30°より小さいか、または330°より大きくなり、yellowの場合には、30°と90°との間の範囲に位置する。同様に、greenは、90°と150°との間に位置する。
【0080】
しかし、このような色相範囲は、理想的な範囲値であって、画像の状態によって色相歪曲が発生する場合に、頻繁にその範囲が変わりうる。このような範囲値は、あらかじめ実験を通じて得るか、または色相補正ステップを通じてセルの色相を補正した後に、理想的な範囲値を適用することが望ましい。SLACCは、MCCやWBCCとは異なり、黒い色の判別時にしきい値を使用しないという長所がある。SLACCは、階層的なクラスタリング技法のうち最も簡単なものであって多く使われるので、一例として提示したが、基本的に他の階層的クラスタリング技法を使用しても類似した結果が得られる。
【0081】
(d)K平均アルゴリズムベース・カラー判別(KMACC)
カラーの色判別のために、階層的クラスタリングだけでなく、分割クラスタリング法を使用しうる。この技法は、複数のクラスタを相互に順次結ぶことによってクラスタの数を減らす接近方式を有している。本発明では、分割クラスタリング技法の例として、この技法のうち代表的なK平均アルゴリズムを使用した例を示す。
【0082】
図12は、本発明によるカラーベースのイメージコードの色判別方法のうちKMACCを利用する方法の一実施形態を示す図面である。
【0083】
入力されたイメージのカラーは、HSVモデルによって色調、輝度、そして、彩度で構成される。KMACCは、SLACCのように、二つのステップからなるが、無彩色及び有彩色セルの区分に輝度と彩度とを利用して、有彩色セルの判別に色調を適用するが、K平均アルゴリズムを使用するという点で異なる。K平均アルゴリズムは、公知のクラスタリング技法のうち一つであり、k個のクラスタが存在する時に、各クラスタの平均ベクトル(mean vector)μ1,μ2,・・・,μkを探す。KMACCのために変形(alternative)K平均アルゴリズムを適用する。もし、セルの数をC、セルのピクセル情報をP={P1,P2,...,PC}とするとき、そのプロシージャは、表1の通りである。
【0084】
【表1】
【0085】
ステップ1:セルを無彩色及び有彩色グループに分類(S1600)
ステップ1は、3個のサブステップを有する。第一には、無彩色判別のために先に輝度によるクラスタリングを行い、第二に、彩度による判別を行う。そして、二回の結果から何れも無彩色クラスタと判別されたもののみを無彩色グループに決定する。これは、多様な照明下でも黒い色が相対的に輝度値と彩度値とが少ないと仮定できるためである。
【0086】
全てのセルの照度値を昇順でアライメントして得た結果を、OM={oμ1,oμ2,・・・,oμj,oμj+1,・・・,oμC},彩度値を昇順で得た結果をOS={os1,os2,・・・,osc,osc+1,・・・,osC}と仮定しよう。K平均アルゴリズムを行う時に、初期値としては、最小値と最大値とを適用し、実行結果によって平均値が変換する。したがって、次のようなプロシージャを通じて無彩色クラスタを求める。
【0087】
ステップ1−1:輝度値によって無彩色クラスタA1K及び有彩色クラスタA1NKを分類(C、OM、k=2、μ1=oμ1,μ2=oμC)
ステップ1−2:彩度値によって無彩色クラスタA2K及び有彩色クラスタA2NKを分類(C、OS、k=2、μ1=os1,μ2=osC)
ステップ1−3:前記二つのステップで求めた無彩色クラスタのうち共通される部分のみを最終黒色クラスタAK(A1K∩A2K)に分類し、残りのものを非黒色クラスタANK(A1K∩A2K)Cに分類
ステップ2:無彩色セルをred、green及びblueグループに分類(S1610)
K平均アルゴリズムをANKに属するセルのhue値に適用することによって各セルを赤色、緑色、青色に判別する。OkiをANKのi番目のセルの色調値とし、セルの個数をC’とし、Red、Green、Blueクラスタの平均推定値をそれぞれμR,μG,μBとしよう。K平均アルゴリズムに適用するクラスタの平均値の初期値は理想的な値にせねばならないので、行うK平均アルゴリズムは、K−means(C’,ANK,k=3,μR=0,μG=120,μB=240)P’hi∈ANK,i=1,2,・・・,C’である。この結果を利用した色判別関数は、次の通りである。
【0088】
【数9】
【0089】
この例では、有彩色の判別時にグループ数(k)を3としたため、各セルは、それぞれ3個のグループに結ばれ、表1のプロシージャによって各グループの中心値を求められる。各グループの中心値は、該当グループの色調を意味するので、HSVカラーモデルを使用する場合に、グループの中心値が0°に最も近いグループがredグループであり、120°に最も近いグループがgreen、残りのものはblueグループと推定しうる。
【0090】
上述のSLACC法と同様に、KMACCも有彩色グループと無彩色グループとでそれぞれ副グループ数をいくつに設定するかによって、色判別種類の数を増加させうる。例えば、無彩色判別ステップで、K平均アルゴリズムを適用する時に、k=3に設定する場合、黒色、白色、有彩色グループに判別可能である。これは、三グループのうち、中心値(輝度値)が最も高いものは白色、最も低いものは黒色、残りのものは有彩色グループと推定可能であるためである。
【0091】
有彩色の場合にも、k=6に設定すれば、SLACCと同様に、red、green、blue、cyan、yellow、magentaグループに分割しうるが、6個のグループの中心値(色調値)がそれぞれ0°、120°、240°、60°、180°、300°に近い場合、該当色相グループに判別できるためである。
【0092】
有彩色と無彩色とを分ける場合に、輝度値を利用することもあるが、彩度値を利用するか、またはこの2つに加重値を置いて共に利用することもある。彩度とは、色相がいかほど鮮明であるかを意味するものであって、無彩色に近いほど値が小さくなり、鮮明なほど値が大きくなる。このような輝度と彩度とは、適用するカラーモデルによって変わる。本発明では、2つの色相モデルの例を提示したが、RGBカラーモデルとYUV(YIQの一種)カラーモデルとである。これは、このモデルが一般的にカメラや内蔵型装置で提供するカラーモデルであるためである。i番目のセルの輝度と彩度とは、次の通りである。
【0093】
【数10】
【0094】
輝度と彩度とを共に利用すれば、輝度によって無彩色を判別した後、再び彩度によって無彩色を判別し、二つともに該当する場合のセルのみを無彩色グループに判別しうる。もちろん、それぞれに加重値を置いて計算することもある。
【0095】
(e)カラーチャンネルスケーリング
前述した色判別アルゴリズムは、入力されたイメージの色相を理想的な照明下で得ると予想される色相に補正するために使われる。また、色判別アルゴリズムは、モバイルコンピュータ環境で昼光(daylight)、白熱灯(light bulbs)、ハロゲン灯(halogen lighting)または蛍光灯(florescent lighting)のような多様な照明下で得られるカラーの判別に有用である。
【0096】
色相補正のために、色判別以前にWBCCは、ホワイトパッチ技法を使用し、SLACCとKMACCとは、カラーチャンネルスケーリング技法を使用する。SLACC及びKMACCは、WBCC方法と異なり、剰余余白ピクセルの色相情報を利用しないので、ホワイトパッチを行わない。もちろん、これらにもホワイトパッチ技法を適用することもある。
【0097】
SLAを適用し易い理想的な場合は、照明、カメラ、及び印刷媒体による色相変移が発生しても、クラスタ間の距離がクラスタ内の元素間の距離より大きい場合である。しかし、カメラから入力されたred、green、blueのチャンネル値が色相の変移によって影響を受ける場合に、輝度及びhue情報もそのような変移によって影響を受ける。したがって、色相の変移が有意なレベル以上である場合に、これを補正するアルゴリズムが必要であり、このようなアルゴリズムとしてカラーチャンネルスケーリングがある。
【0098】
カラーコードのセルの数をCとし、iを各セルのインデックス、jをカラーチャンネルのインデックスとし、jが1である場合にはRedチャンネル、jが2である場合にはGreenチャンネル、jが3である場合にはBlueチャンネルとしよう。そのとき、lijは、各セルのカラーチャンネル情報を意味する。すなわち、li1は、i番目のカラーセルのRedチャンネル値を意味する。したがって、各カラーチャンネルの最大値および最小値は、maxj、minjとなり、最大および最小カラーチャンネル値は、maxInt、minIntであり、各カラーチャンネルの最大値のうち最も小さい値は、min maxIntとなる。これを求める式は、次の通りである。もし、i番目のセルのチャンネル値を、
とすれば、チャンネル別最大値とチャンネル別最小値、そして最大チャンネル値及び最小値は、次の通りである。
【0099】
【数11】
【0100】
ここで、カラーチャンネルスケーリングを適用する条件のための定数をST(Scaling Threshold value)とすれば、各チャンネル別にスケーリングした結果、すなわち、カラー補正結果は、次の通りである。
【0101】
【数12】
【0102】
すなわち、全てのカラーチャンネルの範囲を最小カラーチャンネル値と最大カラーチャンネル値との範囲に均等拡張させうる。色相変移の補正のためのカラーチャンネルスケーリングは、SLACC及びKMACCを適用する以前に行わねばならない。
【0103】
コードの有彩色と無彩色とは、多様なクラスタリング技法を適用して色相を判別しうるが、本発明では、SLACC及びK平均の例を挙げたが、類似した方式でかかる技法を適用しうる。例えば、分割クラスタリング技法として、K平均の代わりに、ファジーc平均(fuzzy c-means)、QTクラスタリングのアルゴリズムを適用してもよく、階層クラスタリング技法としてシングルリンケージの代わりに、Ward’s法または平均リンケージ(average linkage)または完全リンケージ(complete linkage)のアルゴリズムを適用してもよい。それ以外にも、エルボ推定(Elbow criterion)法またはスペクトルクラスタリング(spectral clustering)法、人工知能技法やベイジアン(Bayesian)法も使用しうる。
【0104】
図13は、本発明によるカラーベースのイメージコードの復号方法のうち、コード認識ステップの一実施形態を示す図面である。
【0105】
図13を参照すれば、各カラーセルの色判別が完了し、かつエラーが訂正されれば、コード構成要素イメージ(セル)を抽出する(S1900)。コードイメージは、その特性によるコード構成要素イメージで形成されている。カラーコードは、カラーセルで構成されており、混合コードは、情報を表す特定の形状、パターン、色相、濃淡で表現される。QRコードは、ファインダパターン、アライメントパターン、バージョンパターン、エラー訂正レベルパターン、データコードワード領域、エラー訂正コードワード領域で形成される。
【0106】
コード構成要素イメージは、必ずしも該当コード構成要素全部である必要はなく、該当コード構成要素の特徴を表す一部の情報に変換して抽出することもある。例えば、2D白黒コードであるQRの場合には、各ファインダパターンの中心点、アライメントパターンの中心点、タイミングパターンの中心点、データコードワード領域内の各セルの中心点位置のみでも十分である。同様に、カラーコードの場合には、各セルの中心点位置情報のみを抽出していても十分であり、混合コードの場合には、パターンと色相、濃淡の組合わせでなるが、この場合には、パターンと色相、濃淡によるセルの中心点や各領域を代表しうるピクセルの位置情報でも可能である。したがって、混合コードの場合のように、色相、濃淡情報が必要な場合には、オリジナルイメージを参照せねばならない。
【0107】
次いで、コード構成要素イメージ(セル)情報を抽出する(S1910)
該当コード構成要素イメージ抽出ステップから得た位置情報に基づいて、該当構成イメージ要素の形状、パターン、色相、濃淡をオリジナルイメージから得る。したがって、カラーコードや2Dイメージコードの場合には、該当セルの中心点を基準に所定の広さだけの領域を抽出して、該当領域の色相情報及び濃淡などの情報が得られ、バーコード、PDF−417のようにパターン情報を利用せねばならない場合には、該当コードイメージのピクセル情報を一定間隔ごとに得る。これは、全てのピクセルであってもよく、所定のスキャンライン上のピクセルの長さ情報であってもよい。また、コードイメージを構成する最小長さパターンよりさらに小さいか、または同じ間隔でコードイメージ上のピクセルをサンプリングして得られる。
【0108】
コード構成要素イメージから情報を抽出すれば、抽出した情報を変換する(S1920)。抽出したコード構成要素イメージ情報を、これに対応する文字、数字、記号で所定の値に変換する。バーコードや2Dコードである場合には、パターン長さ情報の配列や各セルの白黒情報、カラーコードである場合には、各セルの色相種類、ロゴである場合には、外郭線形態情報が該当する。
【0109】
最後に、コードを認識する(S1930)。コード認識ステップは、各コードの種類による特徴によって復号が可能である。これは、QRコード、バーコード、カラーコード、混合コード(韓国特許出願番号05−25240参照)、マキシコード、データマトリックス、インターコードなど各コードの復号方法を利用する。
【0110】
本発明は、(1)イメージ表現メディア情報入力ステップ、(2)照明の種類を選択する照明情報入力ステップ、及び(3)照明出力ステップをさらに含みうる。
【0111】
(1)イメージ表現メディア情報入力ステップ
コード入力時にコードが表現されたメディア(媒体)の種類を選択して入力するステップである。媒体がCRT、LCD、デジタルTVなど電子媒体である場合と新聞、雑誌、プラスチックなど印刷媒体である場合とに、それぞれ異なる色相変移が発生しうるので、これを補正しうる契機を提供する。この場合には、コードイメージの色相及び濃淡補正ステップに該当媒体を補正しうる補正用係数を利用して補正するステップをさらに適用する。
【0112】
(2)照明の種類を選択する照明情報入力ステップ
コード入力時にコードが認識される照明の種類を選択して入力するステップである。照明がCWF(Cool White Flouresence)である場合には、別途の補正が不要であるが、ハロゲンやINC−Aなどの照明では、赤色が強調される効果がある。したがって、かかる情報を追加的に入力して補正することが望ましい。この場合には、コードイメージの色相及び濃淡補正ステップに該当照明特性を補正しうる補正用係数を利用して補正するステップを追加的に適用する。
【0113】
(3)照明出力ステップ
リーダ器に内蔵された照明をオン/オフにでき、光をコードイメージとして出力する照明出力ステップが含まれうる。特に、暗い環境やリーダ器にコードイメージが覆われる場合に有用である。
【0114】
本発明はまた、コンピュータで読み取り可能な記録媒体にコンピュータで読み取り可能なコードとして具現可能である。コンピュータで読み取り可能な記録媒体は、コンピュータシステムによって読み取れるデータが保存される全ての種類の記録装置を含む。コンピュータで読み取り可能な記録媒体の例としては、ROM、RAM、CD−ROM、磁気テープ、フロッピー(登録商標)ディスク、光データ保存装置があり、また、キャリアウェーブ(例えば、インターネットを通じた伝送)状に具現されるものも含む。また、コンピュータで読み取り可能な記録媒体は、ネットワークに連結されたコンピュータシステムに分散されて分散方式でコンピュータ可読コードが保存されかつ実行されうる。
【0115】
以上、本発明についてその望ましい実施形態を中心に説明した。当業者は、本発明が本発明の本質的な特性から逸脱しない範囲で変形された形態で具現されうることが理解できるであろう。したがって、開示された実施形態は、限定的な観点でなく、説明的な観点で考慮されねばならない。本発明の範囲は、前述した説明でなく、特許請求の範囲に示されており、それと同等な範囲内にある全ての変形は、本発明に含まれるものと解釈されねばならない。
【産業上の利用可能性】
【0116】
本発明は、カラーベースのイメージコード関連の技術分野に適用可能である。
【技術分野】
【0001】
本発明は、カラーベースのイメージコードの復号方法に係り、さらに詳細には、復号過程のうちイメージコードの各セルの色を判別する方法に関する。
【背景技術】
【0002】
この10年間白黒パターンのバーコードを利用した増強現実(Augmented Reality)、混合現実(Mixed Reality)分野の研究及び、モバイルコマースのような商用サービスについての研究がなされてきた。昨今には、モバイルコンピュータのためのカラーコードのようなカラーベースのイメージコードが提案された。しかし、カラーのセルで構成されるカラーベースのイメージコードは、多様な照明、印刷媒体、汎用カメラ装置によってカラーセルの色相変移が発生するので、白黒マーカより認識が難しい。
【0003】
最近の研究は、物理的な個体にタグ媒体を内蔵し、これをリーダ器で認識することによって、仮想世界にあるデータやサービスをユーザに提供するユーザインターフェースに集中されている。有形のユーザインターフェースで使われるタグ媒体は、RFID(Radio Frequency Identification)のような無線タグとバーコードのようなイメージコードとに大別される。特に、イメージコードやマーカの画像を認識してサービスを提供するインターフェースを”PUI(Paper User Interface)”という。このようなインターフェース技法は、増強現実、混合現実分野の研究と携帯電話を利用したPIMS(Personal Information Management Service)、広告サービス、モバイルコマースなどの商用サービスとに利用されている。
【0004】
イメージコードとマーカとは、その形態によって一次元(1D)バーコードと二次元(2D)コードとに分けうる。1Dバーコードは、白黒の棒(バー)のパターン情報を利用して、識別番号、チェックサムディジット、そしてガイドバーを表現する。2Dコードは、1Dバーコードより保存可能なデータ量が多いので、保護情報を利用したエラー訂正能力を有している。図1は、このようないくつかの2Dコードを示す。
【0005】
一般的に、モバイルコンピュータ環境で使われる端末機は、低容量メモリ、低性能プロセッサ、そして汎用の内蔵カメラで構成されるので、従来の端末機を利用したイメージ認識には、次のような制約が従う。
【0006】
第一に、PUIは、日常生活の多様な照明下で使用可能でなければならない。第二に、認識アルゴリズムが簡単で速くなければならない。第三に、イメージは、低性能のカメラでも認識されねばならない。このような条件を考慮した2Dコードとしては、サイバーコードとセルの数を制限したQR(Quick Response)コード(登録商標)、及びカラーコードがある。ここで、バーコードとサイバーコード、及びQRコード(登録商標)は、白黒セルやパターンで構成されたコードであり、カラーコードは、カラーベースのイメージコードである。
【0007】
白黒は、カラーに比べて、一般的に認識が容易であるので、ほとんどのコードは、白黒を使用する。しかし、カラー媒体が大衆化するにつれて、既存の白黒コードよりメディアに対し親和的でありデータ保存容量の大きいカラーベースのイメージコードが注目されている。
【0008】
カラーコードでは、カラーを利用して識別文字が符号化され、二重パリティ法を利用するエラー検証と方向探知機能とを提供する。カラーコードの復号アルゴリズムは、非常に簡単であり、データ表現がセルの長さパターンでない同じサイズの色相セルで構成されるので、相対的にぼやけ現象に強い特性を有している。しかし、多様な照明とそれぞれ異なるカメラの特性、及び印刷媒体の特性による色相変移は、モバイルコンピュータ環境下でカラーコードのようなカラーベースのイメージコードの認識を困難にする。
【発明の概要】
【発明が解決しようとする課題】
【0009】
本発明が解決しようとする技術的課題は、カメラ及び印刷媒体の特性による色相変移が発生しても、カラーベースのイメージコードの各セルの色を正確かつ容易に把握しうる色判別方法を提供することである。
【0010】
本発明が解決しようとする他の技術的課題は、カラーベースのイメージコードの色判別方法をコンピュータで実行させるためのプログラムを記録したコンピュータで読み取り可能な記録媒体を提供することである。
【課題を解決するための手段】
【0011】
上述の課題を達成するための本発明によるカラーベースのイメージコードの色判別方法の一実施形態は、カラーベースのイメージコードを構成する各セルから所定数のピクセルを標本抽出するステップと、前記標本抽出したピクセルのそれぞれに対して、各ピクセルを構成するカラーチャンネルのうち最も大きい値を有するカラーチャンネルの色を前記各ピクセルの色と把握するステップと、前記各セルから標本抽出されたピクセルの色のうち、最も頻度数の高い色を前記セルの色と判別するステップと、を含む。
【0012】
上述の課題を達成するための本発明によるカラーベースのイメージコードの色判別方法の一実施形態は、カラーベースのイメージコードの剰余余白から所定数のピクセルを標本抽出するステップと、前記標本抽出したピクセルの平均輝度値を求めるステップと、前記カラーベースのイメージコードを構成する各セルのカラーチャンネル別平均値を前記平均輝度値を利用して補正するステップと、前記補正された各セルのカラーチャンネル別平均値を色調抽出可能なカラーモデルに変換し、前記色調抽出可能なカラーモデルの輝度と色調値とに基づいて前記各セルの色を判別するステップと、を含む。
【0013】
上述の課題を達成するための本発明によるカラーベースのイメージコードの色判別方法の他の実施形態は、カラーベースのイメージコードを構成する前記各セルの輝度値及び彩度値のうち少なくとも一つを求め、前記求めた輝度値及び彩度値のうち少なくとも一つに基づいて前記セルを無彩色及び有彩色グループに分類するステップと、前記有彩色グループに属するセルの色を、色調抽出可能なカラーモデルの色調を利用して判別するステップと、を含む。
【発明の効果】
【0014】
本発明によれば、カメラや印刷媒体などの特性によってカラーベースのイメージコードの色相、濃淡、形状が歪曲されても、元来の色相や濃淡に変換可能であり、雑映を補正しうるので、正確なコード認識が可能である。また、剰余余白やコード内の色、濃淡情報を利用するので、低性能コンピュータ環境でも速くて容易な色認識が可能である。
【図面の簡単な説明】
【0015】
【図1】従来のカラーベースのイメージコードのうち2Dコードの一例を示す図である。
【図2A】本発明で使われるカラーベースのイメージコードのうちカラーコードの一例を示す図である。
【図2B】本発明で使われるカラーベースのイメージコードのうちカラーコードの一例を示す図である。
【図3】カラーコードの符号化方法を概略的に示すフローチャートである。
【図4】カラーコードの復号方法を概略的に示すフローチャートである。
【図5】本発明によるカラーベースのイメージコードの復号方法を示す図である。
【図6】本発明によるカラーベースのイメージコードの復号方法のうち前処理ステップの一実施形態を示すフローチャートである。
【図7】本発明によるカラーベースのイメージコードの復号方法のうちカラー判別ステップの一実施形態を示す図である。
【図8】本発明によるカラー判別ステップのうちサンプリングステップの一例を示す図である。
【図9】本発明によるカラーベースのイメージコードの色判別方法のうちMCCを利用する方法の一実施形態を示す図である。
【図10】本発明によるカラーベースのイメージコードの色判別方法のうちWBCCを利用する方法の一実施形態を示す図である。
【図11】本発明によるカラーベースのイメージコードの色判別方法のうちSLACCを利用する方法の一実施形態を示す図である。
【図12】本発明によるカラーベースのイメージコードの色判別方法のうちKMACCを利用する方法の一実施形態を示す図である。
【図13】本発明によるカラーベースのイメージコードの復号方法のうちコード認識ステップの一実施形態を示す図である。
【発明を実施するための形態】
【0016】
以下、添付された図面を参照して、本発明によるカラーベースのイメージコードの色判別方法について詳細に説明する。
【0017】
図2A及び図2Bは、本発明で使われるカラーベースのイメージコードのうちカラーコードの一例を示す図面である。
【0018】
一般的に、増強現実で使われるARToolKitマーカ、プラナーマーカは、動的なモバイルコンピュータ環境でコード構造が単純であり、復号のための演算量が少ない一方、保存情報量は、非常に少ない。商用の2Dコードは、保存情報量は多い一方、コードを認識するためには、高性能カメラが要求されて演算量が多いので、動的な環境に適していない。
【0019】
図2A及び図2Bを参照すれば、カラーコードは、カラーセルからなる2Dマトリックス型コードであり、モバイルコンピュータ用の場合に、カラーコードの1個セルは、2ビットを表現するので、このために4つの色で情報が符号化される。カラーコードは、オンライン連結されたデータベースの内容のみ修正すれば、サービス変更が可能である。また、一般2Dコードと異なり、カラーコードは、専用スキャナーではない携帯電話やPDAに内蔵された汎用カメラを通じて認識可能であるので、携帯用コンピュータ環境に非常に適している。カラーコードは、コードの構造が非常に単純で演算量が少なく、かつカラーを使用するので、相対的に情報量が多くて増強現実サービスとオンライン用コードサービスとに両方とも適している。
【0020】
カラーコードは、データビットセル、パリティビットセル、及びコードアライメントセルで形成されている。カラーコードのデータビットセルには、識別番号を表現するビットストリームが配置される。データビットセルに対して、行及び列に沿ってパリティ演算を行い、これを通じて導出されたパリティビットがカラーコードの右側下段に配置される。コードの右側下段には、コードアライメントセルが配置されるが、行及び列パリティの逆を取ることによって、他の行及び列のパリティ方式と区別でき、復号時には、コードセルを整列(アライメント)する基準として利用しうる。
【0021】
図2Aで、データビットセルは、D11,D22,...,D44であり、パリティビットセルは、P15,P25,...,、P45,P51,P52,...,P54である。そして、PAは、コードアライメントセルである。カラーコードでは、白色を使用していないため、コード領域を探すための境界線が不要であるが、周辺の雑映と区分するための1個セルほどの厚さの白色の剰余余白がコード周囲に存在することが望ましい。カラーコードは、行及び列の数、そして、パリティ方式の数によって表現可能なパターン数が変わる。
【0022】
図3は、カラーコードの符号化方法を概略的に示すフローチャートである。
【0023】
図3を参照すれば、エンコーダは、識別番号を入力されると(S300)、識別番号をデータビットストリームに変換し、これをマトリックス状に配置する(S310)。エンコーダは、エラー訂正のために、各行及び列に対してパリティビットを演算して追加し、パリティビットを利用してコードアライメントビットを生成して追加する(S320)。エンコーダは、パリティビットを含むコードビットストリームが完成されると、各ビットストリームを対応するカラーに変換し(S330)、カラーからなるカラーセルを生成して整列(アライメント)する(S340)。
【0024】
図4は、カラーコードの復号方法を概略的に示すフローチャートである。
【0025】
図4を参照すれば、デコーダは、カラーベースのイメージコードが含まれたオリジナルイメージをカメラから入力されると(S400)、デコーダは、オリジナルイメージからコードイメージ領域を抽出してカラーセルを読み取った後(S410)、これを対応するビットストリームに変える(S420)。デコーダは、パリティ演算を行ってエラーを感知して訂正する(S430)。そして、デコーダは、コードアライメントビットを得て、コードアライメントビットの位置を通じてデータビットストリームをアライメントして識別番号を抽出する(S440)。また、データビットストリームとパリティ演算の種類とを組合わせることによって、追加的なカラーコードのパターンが得られる。
【0026】
図5は、本発明によるカラーベースのイメージコードの復号方法を示す図面である。
【0027】
図5を参照すれば、カラーベースのイメージコードの復号方法は、イメージ獲得ステップ(S500)、前処理ステップ(S505)、カラー判別ステップ(S525)、エラー感知ステップ(S545)及びコード認識ステップ(S555)に大別される。デコーダには、前処理ステップで使用する前処理技法の種類を設定するPID(Pre-processing method ID:前処理ID)と、カラーセル判別ステップで使用するカラー判別技法の種類を設定するCID(Color cell classification method ID:カラーセル判別法ID)というパラメータとを含み、これらのパラメータによる技法を順次に適用して復号を行う。
【0028】
イメージ獲得ステップ(S500)は、物理的または電子的に表現されたイメージを獲得するステップである。イメージは、ペーパー、金属、プラスチックのような物理的媒体に印刷されるか、または携帯電話のLCD、モニター、TV、ビームプロジェクトなどのディスプレイ装置を通じて表示されうる。また、イメージは、電子的な形態、例えば、ビットストリームや電子ファイル状に提供されうる。
【0029】
イメージ獲得ステップ(S500)は、物理的媒体に表現されたイメージを読み取るために、カメラホン、スキャナー、デジタルカメラ、PCカメラ、FAXのような画像入力装置を利用して、ビットストリームや電子ファイル状に表現されたイメージは、ネットワークや保存装置を通じて獲得する。
【0030】
ここで、イメージ獲得ステップ(S500)の出力信号をオリジナルイメージと称し、このオリジナルイメージは、コンピュータで処理できるイメージファイル状に構成される。このオリジナルイメージは、コード情報を含むコードイメージと共に雑映や背景を含む。また、オリジナルイメージ内のコードイメージの色相及び形態は、通常、照明、イメージの表現された媒体、イメージを読み取るリーダ器によって歪曲される。
【0031】
イメージ獲得ステップ(S500)でイメージを入力されると、前処理ステップ(S505)で入力されたイメージに対する前処理過程を行う。前処理ステップでコードイメージ抽出に失敗すれば(S510)、PIDを増加させ(S515)、再び前処理を行う(S505)。もし、MAXPID個の前処理技法が何れもが行われたならば(S520)、イメージが不良であると判断してイメージを再入力する(S500)。カラーセル判別ステップ(S525)でカラーセルの判別が難しいか(S530)、または判別されてもエラー感知ステップ(S545)でエラーが発行すれば(S550)、CIDを増加させ(S535)、これに対応するカラーセル判別アルゴリズムを行う(S525)。もし、MAXCID個のカラー判別技法を何れも行っても失敗すれば(S540)、再び前処理ステップ(S505)を行う。エラー感知ステップ(S545)で、デコーダはパリティ演算を行い、カラーコードのビットストリームからエラーを感知する。もし、エラーがなければ、識別番号を出力し、そうでなければ(S550)、再びカラー判別ステップ(S525)を行う。
【0032】
図6は、本発明によるカラーベースのイメージコードの復号方法のうち前処理ステップの一実施形態を示すフローチャートである。
【0033】
前処理ステップ(図5のS505)は、入力されたイメージからコードイメージを抽出し、コードの特徴点を抽出した後、各カラーセルの中心点を探し出すためのものである。前処理は、カラー画像からグレースケールイメージを生成した後、これを利用して行う。具体的に、前処理ステップは、二値化ステップ(S600)、ノイズ除去ステップ(S610)、限界四角形探索ステップ(S620)、頂点検出ステップ(S630)、頂点選択ステップ(S640)、カラーセル中心点検索ステップ(S650)を含む。
【0034】
(1)二値化ステップ(S600)
二値化は、背景やコード周辺の事物からコードイメージを分離し、コードイメージの特徴点を感知する演算の複雑度を減らすために使われる。二値化ステップでは、オリジナルイメージの各ピクセルの輝度情報を利用して各ピクセルを白黒に変換する。各ピクセルの輝度値が臨界値より明るければ、白色、そうでなければ黒色に変換する。通常的に、画像において、二値化は、白黒に表示されるが、これ以外の色に二値化されうる。
【0035】
(2)ノイズ除去ステップ(S610)
ノイズ除去ステップでは、二値化されたオリジナルイメージ内の各物体の境界線を検出し、検出された境界線によってオリジナルイメージをコードイメージの領域とそうでない領域とに分ける。このとき、二つの領域を分ける基準は、境界線の長さ(周りの長さ)、物体の形態がある。
【0036】
(3)限界四角形探索(S620)
入力画像からコードイメージを抽出するために、コードの中心点を予測した後、これを基準にコードイメージの限界四角形を探索する。このために、全体イメージをn個のブロックに分けた後、各ブロックに位置したピクセルの数が最も多いブロックを探す。
【0037】
(4)頂点検出ステップ(S630)
コードイメージの特徴点は、コードイメージの特性を反映するピクセルを意味する。このようなものとしては、カラーコードの四角の頂点、QRコードのファインダパターンの4つの頂点とアライメントパターン、タイミングパターンがある。もし、コードイメージが円形、または不定形であれば、特徴点は、外郭線の集合のように線分で表現されることもある。このような特徴点は、整合技法、幾何学的距離演算など、既存特徴点の抽出方法を利用すれば、抽出されたコードイメージから容易に探すことができ、各コードの認識技法を参照すれば、さらに容易である。
【0038】
(5)カラーセルの中心点検索ステップ(S640)
カラーコードは、カラーセルから構成されるので、各カラーセルの中心点でカラーピクセルを抽出して色判別を行う。
【0039】
図7は、本発明によるカラーベースのイメージコードの復号方法のうち、カラー判別ステップの一実施形態を示す図面である。
【0040】
図7を参照すれば、カラー判別ステップ(図5のS525)は、前処理ステップ(図6参照)を通じてカラーベースのイメージコードの各セルの中心位置をさがせば、その中心位置を中心にセルのカラーピクセルを標本抽出するサンプリングステップ(S1100)及び各セルのカラーを判別するカラーセル判別ステップ(S1110)を含む。
【0041】
図8は、サンプリングステップ(S1100)の一例を示す図面である。図8を参照すれば、各セルから標本抽出される標本ピクセルの数は、入力されたコードイメージのサイズによって異なる。
【0042】
カラーセルの判別のための方法として、(a)最大チャンネルベース・クラスタリング(Max Channel based clustering:MCC)(図9)、(b)ホワイトバランスベース・カラークラスタリング(White Balance based color clustering:WBCC)(図10)、(c)シングルリンケージアルゴリズムベース・カラー判別(Single-linkage algorithm based color classification:SLACC)(図11)、(d)K平均アルゴリズムベース・カラー判別(K-means algorithm based color classification:KMACC)(図12)がある。これらを利用すれば、非常に多くの種類の色を判別しうるが、ここでは、説明のために黒色、赤色、青色、緑色の4つの色を判別すると限定した。
【0043】
(a)最大チャンネルベース・クラスタリング(MCC)
図9は、本発明によるカラーベースのイメージコードの色判別方法のうち、MCCを利用する方法の一実施形態を示す図面である。図9を参照すれば、まず、図8で説明したように、各セルから所定数のピクセルをサンプリングし(S1300)、サンプリングされたピクセルに対してMCC技法を適用する。MCC技法は、具体的に次の通りである。
【0044】
カラーピクセルやカラーセルは、赤色、緑色、青色のカラーチャンネルを有しており、各カラーチャンネルは、0ないし255のうち一つの値を有する。MCC技法は、セルでサンプリングしたピクセルのカラーチャンネルのうち、最も大きい値を有するカラーチャンネルの色相を該当ピクセルやセルの色相グループと推定する。これと共に、黒色を判別するために、前処理ステップのうち二値化ステップで使用した臨界値TPIDを利用する。各セル当りサンプリングしたピクセル数をn、第iピクセルをpi=(ri,gi,bi)T、最大チャンネル値をmaxi=max(ri,gi,bi)、中間チャンネル値をmidi=mid(ri,gi,bi)、各色相を判別する臨界値をTとすれば、色相判別関数fMCCは、次の通りである。
【0045】
【数1】
【0046】
MCC技法では、1セルでサンプリングされたピクセルのそれぞれに対する色相(すなわち、R、G、Bのうち何れか一つの色相)を判別した後(S1310)、頻度数が最も多い色相を該当セルの色相と見なす(S1320)。MCCは、TMCCj={Tj,TK1i,TK2i,TR,TG,TB}、j=PID値を設定することによって色相を判別しうるので、イメージの特性を知っている場合に有利である。
【0047】
一方、照明や印刷媒体のような要素の特性を知らない場合に性能が低下する。したがって、デコーダの性能向上のために、一つのPIDに数個のT値集合を設定し、これにより、色判別を行う。一例として、TK2が数個の要素を有する集合である場合に、j番目のPIDを有するk番目のT値集合は、次の通りである。
【0048】
【数2】
【0049】
MCCは、非常に簡単なアルゴリズムであるので、演算速度が速い。
【0050】
(b)ホワイトバランスベース・カラークラスタリング(WBCC)
図10は、本発明によるカラーベースのイメージコードの色判別方法のうち、WBCCを利用する方法の一実施形態を示す図面である。具体的な方法は、次の通りである。
【0051】
WBCC技法は、コードイメージ周辺の剰余余白を利用してセルの色相を判別するアルゴリズムである。コードイメージの周辺には、1セルサイズ以上の剰余余白が存在する。剰余余白は、白色であって、照明及び印刷媒体の色相変移を反映する。WBCC技法は、ホワイトパッチステップとカラー判別ステップとを含む。
【0052】
(1)ホワイトパッチステップ
剰余余白の色相は、白色であるので、これを利用すれば、照明やカメラの特性を推定しうる。WBCC技法は、セルのカラーチャンネルの値を調節する。WBCC技法は、色相補正アルゴリズムのうち一つであるグレーワールド推定技法(GWA:Gray World Assumption)と類似しているが、オリジナルイメージ全体の平均輝度の代わりに、剰余余白のピクセルの輝度値を使用するという点で異なる。
【0053】
カラーベースのイメージコードを構成するn個のセルのうち、i番目のセルの色相情報を
とする。このとき、Piは、該当セルで色々なピクセルをサンプリングした後、ピクセルの有するred、green、blueチャンネル別の平均を求めることによって得られる。同様に、剰余余白からm個のピクセルを抽出したとき(S1400)、抽出されたj番目のピクセルをPwj=(rwj,gwj,bwj)T、j=1,2,...,mとすれば、これらのピクセルのチャンネル別平均値と輝度値とを次の式のように求めうる(S1410)。
【0054】
【数3】
【0055】
同様に、i番目のセルから抽出されたピクセルのチャンネル別平均値ベクトルを
とすれば、色相補正のための比率値と、それを利用して補正した色相ベクトルPciとは、次の式のように求めうる(S1420)。
【0056】
【数4】
【0057】
(2)カラー判別ステップ(S1430)
WBCC技法は、ホワイトパッチステップ以後に色調情報を抽出しうるカラーモデルを利用する。このようなカラーモデルとしては、HSV、HSI、YIQ、CIE、CMYKがある。このうち、HSV(Hue,Saturation,Value)を利用して色判別を行う場合には、次の通りである。色相補正されたセルのPciは、RGB(red,green,blue)カラーモデルであるが、これを対応するHSV(Hue,Saturation,Value)カラーモデルPchi(hci,Sci,Vci)に変換する。HSVで照度(hue)値hciは、角度の範囲(0≦hci<360)で表現され、red=0、green=120、blue=240であるので、各色相は、これに近い程度によって判別しうる。また、黒色である場合、RGBチャンネル値の差が少なく、白色と輝度差が大きいと仮定しうる。したがって、i番目のセルの色判別関数は、次の通りである。
【0058】
【数5】
【0059】
WBCCは、白色の剰余余白が存在する場合に、良好な性能を期待しうる。しかし、コードイメージ領域がぼやけるようになって剰余余白が損傷される場合、コードが印刷された媒体が白色でないか、または色が塗られた場合には、白色のピクセル情報が損傷されるので、性能が低下する。
【0060】
WBCCでは、色判別ステップのためにHSVカラーモデルを例としたが、前記MAC技法や下記のKMACC、SLACCなどを色相補正後に適用しうる。したがって、WBCCは、色相補正技法が最も大きい特徴であり、色判別は、他の技法と組合わせうる。
【0061】
(c)シングルリンケージアルゴリズムベース・カラー判別(SLACC)
カラーの色判別のために、階層的クラスタリング技法を使用しうる。この技法は、一つのクラスターを順次に細部クラスタに分ける接近方式を有している。本発明では、階層的クラスタリング技法の例として、この技法のうち代表的なシングルリンケージアルゴリズムを使用した例を示す。
【0062】
図11は、本発明によるカラーベースのイメージコードの色判別方法のうち、SLACCを利用する方法の一実施形態を示す図面である。
【0063】
カラーベースのイメージコードの色判別は、各セルの色相情報によって所定の色相クラスタにマージする過程である。各セルを、それらの色相情報を利用して任意のカラー空間にマッピングすれば、セルの密集度によってクラスタが形成される。このとき、一色相クラスター内の隣接セルは、相対的に近い距離を有し、異なるクラスタに属する隣接セルは、相対的に遠い距離を有する。このような色判別基準となる距離は、RGBカラー空間では、r、g、bチャンネル値、HSVカラー空間では、brightness(輝度)、saturation、hue値によって求められる。しかし、これらカラーモデルを適用する場合、3次元空間上に位置したイメージコードの要素の色相座標間距離を求めて、そのうち、距離が最小であるクラスタをマージせねばならない。
【0064】
これは、1次元や2次元上のクラスタリング演算より複雑で色々なカラークラスタで判別せねばならないので、実現に困難さがある。これを解決するために、本発明では、輝度情報によるクラスタリングとhue情報によるクラスタリングとを行う。したがって、各ステップごとに1次元空間上でクラスタリングを行う。
【0065】
SLACCは、カラー判別のために階層的クラスタリング技法であるSLA(Single-Linkage Algorithm)を利用したものである。SLAは、ミニマム法(minimum method)またはニアレストネイバー法(nearest neighbor method)とも知られているが、二つのグループ間の距離を求める時に、一グループに属する元素と他のグループに属する元素との間の距離のうち、最も短い距離であるものを採択する方法である。
【0066】
SLACCで、CiとCjとをクラスタとし、x、yをサンプルとすれば、クラスタ間の距離は、次の通りである。
【0067】
【数6】
【0068】
無彩色セルの輝度が有彩色セルの輝度より暗く、赤色、青色、緑色のような有彩色セルは、それぞれ色相の色調が異なる。また、同じ色相グループに属するピクセルは、異なるグループに属するピクセル間の距離より近接している。
【0069】
SLACCは、二つのステップからなる。第一に、セルを輝度によってアライメントした後、隣接したアライメント輝度値の間の距離が最も遠いものを求めることによって、無彩色及び有彩色グループに区分する。第二に、有彩色グループに区分されたセルの色調を利用することによって、第一のステップと類似してred、green、blueにセルを区分する。具体的な各ステップは、次の通りである。
【0070】
ステップ1:SLAを利用して無彩色及び有彩色グループに分類(S1500)
n個のカラーベースのイメージコードのセルのうち、i番目セルの色相情報を
とし、i番目のセルPiの照度値を
と仮定する。そして、求めようとするクラスタの数をmとする。一般的に、輝度値によってm個のクラスタリングを行う過程は、次の通りである。
【0071】
まず、全てのセルの照度値を昇順でアライメントして、O={oμ1,oμ2,・・・,oμj,oμj+1,・・・,oμC},oμj≦oμj+1を求める。そして、OμiをそれぞれクラスタCiに設定する。最も近いクラスタCa及びCbを求め、CaとCbとをマージする。この過程を反復する。もし、mが3であり、白色が存在し、灰色が存在しなければ、C1は黒色、C3は白色、そして、C2は有彩色となる。また、白色と灰色とが存在しなければ、m=2であり、C1は黒色、C2は非黒色となる。
【0072】
もし、黒色クラスタをCKとし、そうでないクラスタをCNKとすれば、それら間の距離は、次の式のようである。
【0073】
【数7】
【0074】
このとき、d(oμj,oμj+1)は、整列された隣接セルoμjとoμj+1との間の距離である。
【0075】
ステップ2:SLAを利用して有彩色セルをred、green及びblueグループに分類(S1510)
CNKに属するセルは、色調(hue)によって判別される。これらセルは、各セルのhue値を使用して整列した後、SLAを利用して赤色、緑色または青色に判別される。もし、CRが赤色グループ、CGが緑色グループ、そして、CBが青色グループであれば、下記のように定義される。
【0076】
【数8】
【0077】
この場合、色調は、0°から360°までの角度として配列され、純粋な赤色は、0°でありかつ360°であり、緑色は120°、青色は240°である。したがって、赤色は60°より小さいか、または300°より大きい範囲に位置するといえる。また、緑色は、60°より大きく、180°より小さい範囲であり、青色は、180°より大きく、300°よりは小さい範囲にあるため、数8のように表現可能である。
【0078】
もし、色判別が8種類(red、green、blue、yellow、cyan、magenta、black、white)である場合ならば、これらは、有彩色及び無彩色の判別基準を調節することによって区別可能である。すなわち、ステップ1では、SLAによってC1(black)及びC3(white)グループを求め、C2は、有彩色グループと判断する。そして、ステップ2では、有彩色グループC2に対して、SLAを利用して色調値を基準にクラスタを分割した後、各クラスタ別に色相範囲によってセルの色相値を判断する。
【0079】
例えば、前記8つの色判別の場合、有彩色グループが6個であるので、色調値の範囲を6個に分割する。すなわち、redの場合には、30°より小さいか、または330°より大きくなり、yellowの場合には、30°と90°との間の範囲に位置する。同様に、greenは、90°と150°との間に位置する。
【0080】
しかし、このような色相範囲は、理想的な範囲値であって、画像の状態によって色相歪曲が発生する場合に、頻繁にその範囲が変わりうる。このような範囲値は、あらかじめ実験を通じて得るか、または色相補正ステップを通じてセルの色相を補正した後に、理想的な範囲値を適用することが望ましい。SLACCは、MCCやWBCCとは異なり、黒い色の判別時にしきい値を使用しないという長所がある。SLACCは、階層的なクラスタリング技法のうち最も簡単なものであって多く使われるので、一例として提示したが、基本的に他の階層的クラスタリング技法を使用しても類似した結果が得られる。
【0081】
(d)K平均アルゴリズムベース・カラー判別(KMACC)
カラーの色判別のために、階層的クラスタリングだけでなく、分割クラスタリング法を使用しうる。この技法は、複数のクラスタを相互に順次結ぶことによってクラスタの数を減らす接近方式を有している。本発明では、分割クラスタリング技法の例として、この技法のうち代表的なK平均アルゴリズムを使用した例を示す。
【0082】
図12は、本発明によるカラーベースのイメージコードの色判別方法のうちKMACCを利用する方法の一実施形態を示す図面である。
【0083】
入力されたイメージのカラーは、HSVモデルによって色調、輝度、そして、彩度で構成される。KMACCは、SLACCのように、二つのステップからなるが、無彩色及び有彩色セルの区分に輝度と彩度とを利用して、有彩色セルの判別に色調を適用するが、K平均アルゴリズムを使用するという点で異なる。K平均アルゴリズムは、公知のクラスタリング技法のうち一つであり、k個のクラスタが存在する時に、各クラスタの平均ベクトル(mean vector)μ1,μ2,・・・,μkを探す。KMACCのために変形(alternative)K平均アルゴリズムを適用する。もし、セルの数をC、セルのピクセル情報をP={P1,P2,...,PC}とするとき、そのプロシージャは、表1の通りである。
【0084】
【表1】
【0085】
ステップ1:セルを無彩色及び有彩色グループに分類(S1600)
ステップ1は、3個のサブステップを有する。第一には、無彩色判別のために先に輝度によるクラスタリングを行い、第二に、彩度による判別を行う。そして、二回の結果から何れも無彩色クラスタと判別されたもののみを無彩色グループに決定する。これは、多様な照明下でも黒い色が相対的に輝度値と彩度値とが少ないと仮定できるためである。
【0086】
全てのセルの照度値を昇順でアライメントして得た結果を、OM={oμ1,oμ2,・・・,oμj,oμj+1,・・・,oμC},彩度値を昇順で得た結果をOS={os1,os2,・・・,osc,osc+1,・・・,osC}と仮定しよう。K平均アルゴリズムを行う時に、初期値としては、最小値と最大値とを適用し、実行結果によって平均値が変換する。したがって、次のようなプロシージャを通じて無彩色クラスタを求める。
【0087】
ステップ1−1:輝度値によって無彩色クラスタA1K及び有彩色クラスタA1NKを分類(C、OM、k=2、μ1=oμ1,μ2=oμC)
ステップ1−2:彩度値によって無彩色クラスタA2K及び有彩色クラスタA2NKを分類(C、OS、k=2、μ1=os1,μ2=osC)
ステップ1−3:前記二つのステップで求めた無彩色クラスタのうち共通される部分のみを最終黒色クラスタAK(A1K∩A2K)に分類し、残りのものを非黒色クラスタANK(A1K∩A2K)Cに分類
ステップ2:無彩色セルをred、green及びblueグループに分類(S1610)
K平均アルゴリズムをANKに属するセルのhue値に適用することによって各セルを赤色、緑色、青色に判別する。OkiをANKのi番目のセルの色調値とし、セルの個数をC’とし、Red、Green、Blueクラスタの平均推定値をそれぞれμR,μG,μBとしよう。K平均アルゴリズムに適用するクラスタの平均値の初期値は理想的な値にせねばならないので、行うK平均アルゴリズムは、K−means(C’,ANK,k=3,μR=0,μG=120,μB=240)P’hi∈ANK,i=1,2,・・・,C’である。この結果を利用した色判別関数は、次の通りである。
【0088】
【数9】
【0089】
この例では、有彩色の判別時にグループ数(k)を3としたため、各セルは、それぞれ3個のグループに結ばれ、表1のプロシージャによって各グループの中心値を求められる。各グループの中心値は、該当グループの色調を意味するので、HSVカラーモデルを使用する場合に、グループの中心値が0°に最も近いグループがredグループであり、120°に最も近いグループがgreen、残りのものはblueグループと推定しうる。
【0090】
上述のSLACC法と同様に、KMACCも有彩色グループと無彩色グループとでそれぞれ副グループ数をいくつに設定するかによって、色判別種類の数を増加させうる。例えば、無彩色判別ステップで、K平均アルゴリズムを適用する時に、k=3に設定する場合、黒色、白色、有彩色グループに判別可能である。これは、三グループのうち、中心値(輝度値)が最も高いものは白色、最も低いものは黒色、残りのものは有彩色グループと推定可能であるためである。
【0091】
有彩色の場合にも、k=6に設定すれば、SLACCと同様に、red、green、blue、cyan、yellow、magentaグループに分割しうるが、6個のグループの中心値(色調値)がそれぞれ0°、120°、240°、60°、180°、300°に近い場合、該当色相グループに判別できるためである。
【0092】
有彩色と無彩色とを分ける場合に、輝度値を利用することもあるが、彩度値を利用するか、またはこの2つに加重値を置いて共に利用することもある。彩度とは、色相がいかほど鮮明であるかを意味するものであって、無彩色に近いほど値が小さくなり、鮮明なほど値が大きくなる。このような輝度と彩度とは、適用するカラーモデルによって変わる。本発明では、2つの色相モデルの例を提示したが、RGBカラーモデルとYUV(YIQの一種)カラーモデルとである。これは、このモデルが一般的にカメラや内蔵型装置で提供するカラーモデルであるためである。i番目のセルの輝度と彩度とは、次の通りである。
【0093】
【数10】
【0094】
輝度と彩度とを共に利用すれば、輝度によって無彩色を判別した後、再び彩度によって無彩色を判別し、二つともに該当する場合のセルのみを無彩色グループに判別しうる。もちろん、それぞれに加重値を置いて計算することもある。
【0095】
(e)カラーチャンネルスケーリング
前述した色判別アルゴリズムは、入力されたイメージの色相を理想的な照明下で得ると予想される色相に補正するために使われる。また、色判別アルゴリズムは、モバイルコンピュータ環境で昼光(daylight)、白熱灯(light bulbs)、ハロゲン灯(halogen lighting)または蛍光灯(florescent lighting)のような多様な照明下で得られるカラーの判別に有用である。
【0096】
色相補正のために、色判別以前にWBCCは、ホワイトパッチ技法を使用し、SLACCとKMACCとは、カラーチャンネルスケーリング技法を使用する。SLACC及びKMACCは、WBCC方法と異なり、剰余余白ピクセルの色相情報を利用しないので、ホワイトパッチを行わない。もちろん、これらにもホワイトパッチ技法を適用することもある。
【0097】
SLAを適用し易い理想的な場合は、照明、カメラ、及び印刷媒体による色相変移が発生しても、クラスタ間の距離がクラスタ内の元素間の距離より大きい場合である。しかし、カメラから入力されたred、green、blueのチャンネル値が色相の変移によって影響を受ける場合に、輝度及びhue情報もそのような変移によって影響を受ける。したがって、色相の変移が有意なレベル以上である場合に、これを補正するアルゴリズムが必要であり、このようなアルゴリズムとしてカラーチャンネルスケーリングがある。
【0098】
カラーコードのセルの数をCとし、iを各セルのインデックス、jをカラーチャンネルのインデックスとし、jが1である場合にはRedチャンネル、jが2である場合にはGreenチャンネル、jが3である場合にはBlueチャンネルとしよう。そのとき、lijは、各セルのカラーチャンネル情報を意味する。すなわち、li1は、i番目のカラーセルのRedチャンネル値を意味する。したがって、各カラーチャンネルの最大値および最小値は、maxj、minjとなり、最大および最小カラーチャンネル値は、maxInt、minIntであり、各カラーチャンネルの最大値のうち最も小さい値は、min maxIntとなる。これを求める式は、次の通りである。もし、i番目のセルのチャンネル値を、
とすれば、チャンネル別最大値とチャンネル別最小値、そして最大チャンネル値及び最小値は、次の通りである。
【0099】
【数11】
【0100】
ここで、カラーチャンネルスケーリングを適用する条件のための定数をST(Scaling Threshold value)とすれば、各チャンネル別にスケーリングした結果、すなわち、カラー補正結果は、次の通りである。
【0101】
【数12】
【0102】
すなわち、全てのカラーチャンネルの範囲を最小カラーチャンネル値と最大カラーチャンネル値との範囲に均等拡張させうる。色相変移の補正のためのカラーチャンネルスケーリングは、SLACC及びKMACCを適用する以前に行わねばならない。
【0103】
コードの有彩色と無彩色とは、多様なクラスタリング技法を適用して色相を判別しうるが、本発明では、SLACC及びK平均の例を挙げたが、類似した方式でかかる技法を適用しうる。例えば、分割クラスタリング技法として、K平均の代わりに、ファジーc平均(fuzzy c-means)、QTクラスタリングのアルゴリズムを適用してもよく、階層クラスタリング技法としてシングルリンケージの代わりに、Ward’s法または平均リンケージ(average linkage)または完全リンケージ(complete linkage)のアルゴリズムを適用してもよい。それ以外にも、エルボ推定(Elbow criterion)法またはスペクトルクラスタリング(spectral clustering)法、人工知能技法やベイジアン(Bayesian)法も使用しうる。
【0104】
図13は、本発明によるカラーベースのイメージコードの復号方法のうち、コード認識ステップの一実施形態を示す図面である。
【0105】
図13を参照すれば、各カラーセルの色判別が完了し、かつエラーが訂正されれば、コード構成要素イメージ(セル)を抽出する(S1900)。コードイメージは、その特性によるコード構成要素イメージで形成されている。カラーコードは、カラーセルで構成されており、混合コードは、情報を表す特定の形状、パターン、色相、濃淡で表現される。QRコードは、ファインダパターン、アライメントパターン、バージョンパターン、エラー訂正レベルパターン、データコードワード領域、エラー訂正コードワード領域で形成される。
【0106】
コード構成要素イメージは、必ずしも該当コード構成要素全部である必要はなく、該当コード構成要素の特徴を表す一部の情報に変換して抽出することもある。例えば、2D白黒コードであるQRの場合には、各ファインダパターンの中心点、アライメントパターンの中心点、タイミングパターンの中心点、データコードワード領域内の各セルの中心点位置のみでも十分である。同様に、カラーコードの場合には、各セルの中心点位置情報のみを抽出していても十分であり、混合コードの場合には、パターンと色相、濃淡の組合わせでなるが、この場合には、パターンと色相、濃淡によるセルの中心点や各領域を代表しうるピクセルの位置情報でも可能である。したがって、混合コードの場合のように、色相、濃淡情報が必要な場合には、オリジナルイメージを参照せねばならない。
【0107】
次いで、コード構成要素イメージ(セル)情報を抽出する(S1910)
該当コード構成要素イメージ抽出ステップから得た位置情報に基づいて、該当構成イメージ要素の形状、パターン、色相、濃淡をオリジナルイメージから得る。したがって、カラーコードや2Dイメージコードの場合には、該当セルの中心点を基準に所定の広さだけの領域を抽出して、該当領域の色相情報及び濃淡などの情報が得られ、バーコード、PDF−417のようにパターン情報を利用せねばならない場合には、該当コードイメージのピクセル情報を一定間隔ごとに得る。これは、全てのピクセルであってもよく、所定のスキャンライン上のピクセルの長さ情報であってもよい。また、コードイメージを構成する最小長さパターンよりさらに小さいか、または同じ間隔でコードイメージ上のピクセルをサンプリングして得られる。
【0108】
コード構成要素イメージから情報を抽出すれば、抽出した情報を変換する(S1920)。抽出したコード構成要素イメージ情報を、これに対応する文字、数字、記号で所定の値に変換する。バーコードや2Dコードである場合には、パターン長さ情報の配列や各セルの白黒情報、カラーコードである場合には、各セルの色相種類、ロゴである場合には、外郭線形態情報が該当する。
【0109】
最後に、コードを認識する(S1930)。コード認識ステップは、各コードの種類による特徴によって復号が可能である。これは、QRコード、バーコード、カラーコード、混合コード(韓国特許出願番号05−25240参照)、マキシコード、データマトリックス、インターコードなど各コードの復号方法を利用する。
【0110】
本発明は、(1)イメージ表現メディア情報入力ステップ、(2)照明の種類を選択する照明情報入力ステップ、及び(3)照明出力ステップをさらに含みうる。
【0111】
(1)イメージ表現メディア情報入力ステップ
コード入力時にコードが表現されたメディア(媒体)の種類を選択して入力するステップである。媒体がCRT、LCD、デジタルTVなど電子媒体である場合と新聞、雑誌、プラスチックなど印刷媒体である場合とに、それぞれ異なる色相変移が発生しうるので、これを補正しうる契機を提供する。この場合には、コードイメージの色相及び濃淡補正ステップに該当媒体を補正しうる補正用係数を利用して補正するステップをさらに適用する。
【0112】
(2)照明の種類を選択する照明情報入力ステップ
コード入力時にコードが認識される照明の種類を選択して入力するステップである。照明がCWF(Cool White Flouresence)である場合には、別途の補正が不要であるが、ハロゲンやINC−Aなどの照明では、赤色が強調される効果がある。したがって、かかる情報を追加的に入力して補正することが望ましい。この場合には、コードイメージの色相及び濃淡補正ステップに該当照明特性を補正しうる補正用係数を利用して補正するステップを追加的に適用する。
【0113】
(3)照明出力ステップ
リーダ器に内蔵された照明をオン/オフにでき、光をコードイメージとして出力する照明出力ステップが含まれうる。特に、暗い環境やリーダ器にコードイメージが覆われる場合に有用である。
【0114】
本発明はまた、コンピュータで読み取り可能な記録媒体にコンピュータで読み取り可能なコードとして具現可能である。コンピュータで読み取り可能な記録媒体は、コンピュータシステムによって読み取れるデータが保存される全ての種類の記録装置を含む。コンピュータで読み取り可能な記録媒体の例としては、ROM、RAM、CD−ROM、磁気テープ、フロッピー(登録商標)ディスク、光データ保存装置があり、また、キャリアウェーブ(例えば、インターネットを通じた伝送)状に具現されるものも含む。また、コンピュータで読み取り可能な記録媒体は、ネットワークに連結されたコンピュータシステムに分散されて分散方式でコンピュータ可読コードが保存されかつ実行されうる。
【0115】
以上、本発明についてその望ましい実施形態を中心に説明した。当業者は、本発明が本発明の本質的な特性から逸脱しない範囲で変形された形態で具現されうることが理解できるであろう。したがって、開示された実施形態は、限定的な観点でなく、説明的な観点で考慮されねばならない。本発明の範囲は、前述した説明でなく、特許請求の範囲に示されており、それと同等な範囲内にある全ての変形は、本発明に含まれるものと解釈されねばならない。
【産業上の利用可能性】
【0116】
本発明は、カラーベースのイメージコード関連の技術分野に適用可能である。
【特許請求の範囲】
【請求項1】
カラーベースのイメージコードを構成する各セルで所定数のピクセルを標本抽出するステップと、
前記標本抽出したピクセルのそれぞれに対して、各ピクセルを構成するカラーチャンネルのうち最も大きい値を有するカラーチャンネルの色を前記各ピクセルの色として把握するステップと、
前記各セルで標本抽出されたピクセルの色のうち最も頻度数の高い色を前記セルの色と判別するステップと、
を含むことを特徴とするカラーベースのイメージコードの色判別方法。
【請求項2】
カラーベースのイメージコードの剰余余白から所定数のピクセルを標本抽出するステップと、
前記標本抽出したピクセルの平均輝度値を求めるステップと、
前記カラーベースのイメージコードを構成する各セルのカラーチャンネル別平均値を、前記平均輝度値を利用して補正するステップと、
前記補正された各セルのカラーチャンネル別平均値を色調抽出の可能なカラーモデルに変換し、前記色調抽出の可能なカラーモデルの輝度と色調値とに基づいて前記各セルの色を判別するステップと、
を含むことを特徴とするカラーベースのイメージコードの色判別方法。
【請求項3】
前記色を判別するステップは、
前記カラーチャンネル別平均値を、色調抽出の可能なHSV、HSI、CMYK、RGB、YIQ及びCIEカラーモデルのうち何れか一つのカラーモデルに変換するステップを含むことを特徴とする請求項2に記載のカラーベースのイメージコードの色判別方法。
【請求項4】
前記平均輝度値を求めるステップは、
前記標本抽出されたピクセルの各カラーチャンネル別平均値を求めるステップと、
前記カラーチャンネル別平均値の和を前記カラーチャンネルの数で割って前記平均輝度値を求めるステップと、
を含むことを特徴とする請求項2に記載のカラーベースのイメージコードの色判別方法。
【請求項5】
前記補正するステップは、
前記カラーベースのイメージコードを構成する各セルで所定数のピクセルを標本抽出するステップと、
前記標本抽出したピクセルに対するカラーチャンネル別平均値を求めるステップと、
前記カラーチャンネル別平均値を前記平均輝度値を利用して補正するステップと、
を含むことを特徴とする請求項2に記載のカラーベースのイメージコードの色判別方法。
【請求項6】
カラーベースのイメージコードを構成する前記各セルの輝度値及び彩度値のうち少なくとも一つを求め、前記求めた輝度値及び彩度値のうち少なくとも一つに基づいて前記セルを無彩色及び有彩色グループに分類するステップと、
前記有彩色グループに属するセルの色を、色調抽出の可能なカラーモデルの色調を利用して判別するステップと、
を含むことを特徴とするカラーベースのイメージコードの色判別方法。
【請求項7】
前記無彩色グループのセルの輝度及び彩度のうち少なくとも一つを利用して、前記無彩色グループのセルの色を黒色、白色、グレー色を含む無彩色のうち何れか一つと判別するステップをさらに含むことを特徴とする請求項6に記載のカラーベースのイメージコードの色判別方法。
【請求項8】
前記分類するステップ及び前記判別するステップは、それぞれ、
階層的クラスタリング法、分割クラスタリング法、エルボ判別法及びスペクトルクラスタリング法のうち少なくとも一つを使用することを特徴とする請求項6または7に記載のカラーベースのイメージコードの色判別方法。
【請求項9】
前記分割クラスタリング法は、
K平均、ファジーc平均及びQTクラスタリングのアルゴリズムのうち少なくとも一つを使用することを特徴とする請求項8に記載のカラーベースのイメージコードの色判別方法。
【請求項10】
前記階層的クラスタリング法は、
シングルリンケージ、Ward’s法、平均リンケージ及び完全リンケージのアルゴリズムのうち少なくとも一つを使用することを特徴とする請求項8に記載のカラーベースのイメージコードの色判別方法。
【請求項11】
前記分類するステップは、
前記カラーベースのイメージコードを構成するセルの輝度値に基づいて、前記セルを無彩色及び有彩色グループに分類する第1分類ステップと、
前記カラーベースのイメージコードを構成するセルの彩度値に基づいて、前記セルを無彩色及び有彩色グループに分類する第2分類ステップと、
前記第1分類ステップの結果及び前記第2分類ステップの結果から双方で無彩色グループに分類されたセルを無彩色セルと判別するステップと、
を含むことを特徴とする請求項6に記載のカラーベースのイメージコードの色判別方法。
【請求項12】
前記第1分類ステップ及び前記第2分類ステップは、
前記カラーベースのイメージコードを構成するセルの彩度値及び輝度値をそれぞれ求め、前記セルの彩度値及び輝度値を大きさ順でそれぞれ整列した後、彩度値及び輝度値の差が最も大きい区間を基準に無彩色及び有彩色グループにそれぞれ分類するステップを含むことを特徴とする請求項11に記載のカラーベースのイメージコードの色判別方法。
【請求項13】
前記分類するステップは、
RGBカラーモデルの輝度及び彩度に基づいて、前記セルを無彩色及び有彩色グループに分類するステップを含むことを特徴とする請求項6に記載のカラーベースのイメージコードの色判別方法。
【請求項14】
前記分類するステップは、
YUVカラーモデルの輝度及び彩度に基づいて、前記セルを無彩色及び有彩色グループに分類するステップを含むことを特徴とする請求項6に記載のカラーベースのイメージコードの色判別方法。
【請求項15】
カラーベースのイメージコードの剰余余白から所定数のピクセルを標本抽出するステップと、
前記標本抽出したピクセルの平均輝度値を求めるステップと、
前記カラーベースのイメージコードを構成する各セルのカラーチャンネル別平均値を前記平均輝度値を利用して補正するステップと、
を前記分類するステップの前にさらに含むことを特徴とする請求項6に記載のカラーベースのイメージコードの色判別方法。
【請求項16】
前記カラーベースのイメージコードを構成する各セルのカラーチャンネル値をスケーリングするステップを前記分類するステップの前にさらに含むことを特徴とする請求項6に記載のカラーベースのイメージコードの色判別方法。
【請求項17】
前記スケーリングするステップは、
前記カラーベースのイメージコードを構成する各セルのカラーチャンネル値を求めるステップと、
前記各セルのカラーチャンネル値を、
で示される数式を利用して新たなチャンネル値に補正するステップと、
を含み、ここで、lijは、第iセルのj番目のカラーチャンネル値、maxj及びminjは、それぞれj番目のカラーチャンネルの最大値及び最小値、maxint及びminintは、それぞれ全体カラーチャンネル値のうち最大値及び最小値、そして、STは、スケーリング臨界値であることを特徴とする請求項16に記載のカラーベースのイメージコードの色判別方法。
【請求項18】
請求項1乃至17のうち何れか1項に記載の方法をコンピュータに実行させるためのプログラムを記録したコンピュータで読み取り可能な記録媒体。
【請求項1】
カラーベースのイメージコードを構成する各セルで所定数のピクセルを標本抽出するステップと、
前記標本抽出したピクセルのそれぞれに対して、各ピクセルを構成するカラーチャンネルのうち最も大きい値を有するカラーチャンネルの色を前記各ピクセルの色として把握するステップと、
前記各セルで標本抽出されたピクセルの色のうち最も頻度数の高い色を前記セルの色と判別するステップと、
を含むことを特徴とするカラーベースのイメージコードの色判別方法。
【請求項2】
カラーベースのイメージコードの剰余余白から所定数のピクセルを標本抽出するステップと、
前記標本抽出したピクセルの平均輝度値を求めるステップと、
前記カラーベースのイメージコードを構成する各セルのカラーチャンネル別平均値を、前記平均輝度値を利用して補正するステップと、
前記補正された各セルのカラーチャンネル別平均値を色調抽出の可能なカラーモデルに変換し、前記色調抽出の可能なカラーモデルの輝度と色調値とに基づいて前記各セルの色を判別するステップと、
を含むことを特徴とするカラーベースのイメージコードの色判別方法。
【請求項3】
前記色を判別するステップは、
前記カラーチャンネル別平均値を、色調抽出の可能なHSV、HSI、CMYK、RGB、YIQ及びCIEカラーモデルのうち何れか一つのカラーモデルに変換するステップを含むことを特徴とする請求項2に記載のカラーベースのイメージコードの色判別方法。
【請求項4】
前記平均輝度値を求めるステップは、
前記標本抽出されたピクセルの各カラーチャンネル別平均値を求めるステップと、
前記カラーチャンネル別平均値の和を前記カラーチャンネルの数で割って前記平均輝度値を求めるステップと、
を含むことを特徴とする請求項2に記載のカラーベースのイメージコードの色判別方法。
【請求項5】
前記補正するステップは、
前記カラーベースのイメージコードを構成する各セルで所定数のピクセルを標本抽出するステップと、
前記標本抽出したピクセルに対するカラーチャンネル別平均値を求めるステップと、
前記カラーチャンネル別平均値を前記平均輝度値を利用して補正するステップと、
を含むことを特徴とする請求項2に記載のカラーベースのイメージコードの色判別方法。
【請求項6】
カラーベースのイメージコードを構成する前記各セルの輝度値及び彩度値のうち少なくとも一つを求め、前記求めた輝度値及び彩度値のうち少なくとも一つに基づいて前記セルを無彩色及び有彩色グループに分類するステップと、
前記有彩色グループに属するセルの色を、色調抽出の可能なカラーモデルの色調を利用して判別するステップと、
を含むことを特徴とするカラーベースのイメージコードの色判別方法。
【請求項7】
前記無彩色グループのセルの輝度及び彩度のうち少なくとも一つを利用して、前記無彩色グループのセルの色を黒色、白色、グレー色を含む無彩色のうち何れか一つと判別するステップをさらに含むことを特徴とする請求項6に記載のカラーベースのイメージコードの色判別方法。
【請求項8】
前記分類するステップ及び前記判別するステップは、それぞれ、
階層的クラスタリング法、分割クラスタリング法、エルボ判別法及びスペクトルクラスタリング法のうち少なくとも一つを使用することを特徴とする請求項6または7に記載のカラーベースのイメージコードの色判別方法。
【請求項9】
前記分割クラスタリング法は、
K平均、ファジーc平均及びQTクラスタリングのアルゴリズムのうち少なくとも一つを使用することを特徴とする請求項8に記載のカラーベースのイメージコードの色判別方法。
【請求項10】
前記階層的クラスタリング法は、
シングルリンケージ、Ward’s法、平均リンケージ及び完全リンケージのアルゴリズムのうち少なくとも一つを使用することを特徴とする請求項8に記載のカラーベースのイメージコードの色判別方法。
【請求項11】
前記分類するステップは、
前記カラーベースのイメージコードを構成するセルの輝度値に基づいて、前記セルを無彩色及び有彩色グループに分類する第1分類ステップと、
前記カラーベースのイメージコードを構成するセルの彩度値に基づいて、前記セルを無彩色及び有彩色グループに分類する第2分類ステップと、
前記第1分類ステップの結果及び前記第2分類ステップの結果から双方で無彩色グループに分類されたセルを無彩色セルと判別するステップと、
を含むことを特徴とする請求項6に記載のカラーベースのイメージコードの色判別方法。
【請求項12】
前記第1分類ステップ及び前記第2分類ステップは、
前記カラーベースのイメージコードを構成するセルの彩度値及び輝度値をそれぞれ求め、前記セルの彩度値及び輝度値を大きさ順でそれぞれ整列した後、彩度値及び輝度値の差が最も大きい区間を基準に無彩色及び有彩色グループにそれぞれ分類するステップを含むことを特徴とする請求項11に記載のカラーベースのイメージコードの色判別方法。
【請求項13】
前記分類するステップは、
RGBカラーモデルの輝度及び彩度に基づいて、前記セルを無彩色及び有彩色グループに分類するステップを含むことを特徴とする請求項6に記載のカラーベースのイメージコードの色判別方法。
【請求項14】
前記分類するステップは、
YUVカラーモデルの輝度及び彩度に基づいて、前記セルを無彩色及び有彩色グループに分類するステップを含むことを特徴とする請求項6に記載のカラーベースのイメージコードの色判別方法。
【請求項15】
カラーベースのイメージコードの剰余余白から所定数のピクセルを標本抽出するステップと、
前記標本抽出したピクセルの平均輝度値を求めるステップと、
前記カラーベースのイメージコードを構成する各セルのカラーチャンネル別平均値を前記平均輝度値を利用して補正するステップと、
を前記分類するステップの前にさらに含むことを特徴とする請求項6に記載のカラーベースのイメージコードの色判別方法。
【請求項16】
前記カラーベースのイメージコードを構成する各セルのカラーチャンネル値をスケーリングするステップを前記分類するステップの前にさらに含むことを特徴とする請求項6に記載のカラーベースのイメージコードの色判別方法。
【請求項17】
前記スケーリングするステップは、
前記カラーベースのイメージコードを構成する各セルのカラーチャンネル値を求めるステップと、
前記各セルのカラーチャンネル値を、
で示される数式を利用して新たなチャンネル値に補正するステップと、
を含み、ここで、lijは、第iセルのj番目のカラーチャンネル値、maxj及びminjは、それぞれj番目のカラーチャンネルの最大値及び最小値、maxint及びminintは、それぞれ全体カラーチャンネル値のうち最大値及び最小値、そして、STは、スケーリング臨界値であることを特徴とする請求項16に記載のカラーベースのイメージコードの色判別方法。
【請求項18】
請求項1乃至17のうち何れか1項に記載の方法をコンピュータに実行させるためのプログラムを記録したコンピュータで読み取り可能な記録媒体。
【図1】
【図2A】
【図2B】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図2A】
【図2B】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【公開番号】特開2011−118928(P2011−118928A)
【公開日】平成23年6月16日(2011.6.16)
【国際特許分類】
【出願番号】特願2011−37677(P2011−37677)
【出願日】平成23年2月23日(2011.2.23)
【分割の表示】特願2007−165234(P2007−165234)の分割
【原出願日】平成19年6月22日(2007.6.22)
【出願人】(505413646)株式会社カラージップメディア (10)
【出願人】(506372117)株式会社カラージップテクノロジー (6)
【Fターム(参考)】
【公開日】平成23年6月16日(2011.6.16)
【国際特許分類】
【出願日】平成23年2月23日(2011.2.23)
【分割の表示】特願2007−165234(P2007−165234)の分割
【原出願日】平成19年6月22日(2007.6.22)
【出願人】(505413646)株式会社カラージップメディア (10)
【出願人】(506372117)株式会社カラージップテクノロジー (6)
【Fターム(参考)】
[ Back to top ]