(57)【特許請求の範囲】
【請求項１】
記録すべき情報の内容を表すバーコードを、外観を可変して作成するバーコード作成装置であって、
上記記録すべき情報を入力するための情報入力手段と、
上記作成すべきバーコードの外観を設定する制御パラメータを入力するための制御パラメータ入力手段と、
上記情報入力手段によって入力された情報を、上記制御パラメータに応じて外観が設定されたバーコードへ変換する仕方を表す操作情報を作成する操作情報作成手段と、
上記操作情報に応じて、その操作情報を含む上記外観が設定されたバーコードを生成するバーコード生成手段とを備え、
上記操作情報は、上記情報入力手段によって入力された情報と上記外観が設定されたバーコードとの間の対応関係を表す変換関数であり、かつ、
上記変換関数は、上記外観が設定されたバーコードから上記情報入力手段によって入力された元の情報へ復元する仕方を表す逆変換関数が存在するものであることを特徴とするバーコード作成装置。
【請求項２】
請求項１に記載のバーコード作成装置において、
上記情報入力手段は、上記記録すべき情報を規格バーコードの形態で入力するようになっていることを特徴とするバーコード作成装置。
【請求項３】
請求項１または２に記載のバーコード作成装置において、
上記制御パラメータは、上記作成すべきバーコードの外観として色相、彩度、明度のうち少なくとも一つを設定するパラメータを含むことを特徴とするバーコード作成装置。
【請求項４】
記録すべき情報の内容を表すバーコードを、外観を可変して作成するバーコード作成方法であって、
上記記録すべき情報を入力するステップと、
上記作成すべきバーコードの外観を設定する制御パラメータを入力するステップと、
上記入力された情報を、上記制御パラメータに応じて外観が設定されたバーコードへ変換する仕方を表す操作情報を作成するステップと、
上記操作情報に応じて、その操作情報を含む上記外観が設定されたバーコードを生成するステップとを備え、
上記操作情報は、上記情報入力手段によって入力された情報と上記外観が設定されたバーコードとの間の対応関係を表す変換関数であり、かつ、
上記変換関数は、上記外観が設定されたバーコードから上記情報入力手段によって入力された元の情報へ復元する仕方を表す逆変換関数が存在するものであることを特徴とするバーコード作成方法。
【請求項５】
請求項４に記載のバーコード作成方法において、
上記記録すべき情報を規格バーコードの形態で入力することを特徴とするバーコード作成方法。
【請求項６】
コンピュータに請求項４または５に記載のバーコード作成方法を実行させるためのバーコード作成プログラム。
【請求項７】
請求項６に記載のバーコード作成プログラムを記録したコンピュータ読み取り可能な記録媒体。
【請求項８】
請求項１に記載のバーコード作成装置または請求項４に記載のバーコード作成方法によって作成されたバーコードを読み取るバーコード読取装置であって、
上記作成されたバーコードを入力するバーコード入力手段と、
上記バーコード入力手段によって入力されたバーコードから上記操作情報を読み取る操作情報読取手段と、
上記操作情報読取手段によって読み取られた操作情報に基づいて判明した上記逆変換関数を用いて、上記バーコード入力手段によって入力されたバーコードの内容を読み取るバーコード読取手段を備えたことを特徴とするバーコード読取装置。
【請求項９】
請求項２に記載のバーコード作成装置または請求項５に記載のバーコード作成方法によって作成されたバーコードを読み取るバーコード読取装置であって、
上記作成されたバーコードを入力するバーコード入力手段と、
上記バーコード入力手段によって入力されたバーコードから上記操作情報を読み取る操作情報読取手段と、
上記操作情報読取手段によって読み取られた操作情報に基づいて判明した上記逆変換関数を用いて、上記バーコード入力手段によって入力されたバーコードから規格バーコードを復元する復元手段と、
上記復元された規格バーコードの内容を読み取る規格バーコード読取手段とを備えたことを特徴とするバーコード読取装置。
【請求項１０】
請求項１に記載のバーコード作成装置または請求項４に記載のバーコード作成方法によって作成されたバーコードを読み取るバーコード読取方法であって、
上記作成されたバーコードを入力するバーコード入力ステップと、
上記バーコード入力ステップによって入力されたバーコードから上記操作情報を読み取る操作情報読取ステップと、
上記操作情報読取ステップによって読み取られた操作情報に基づいて判明した上記逆変換関数を用いて、上記バーコード入力ステップによって入力されたバーコードの内容を読み取るバーコード読取ステップを備えたことを特徴とするバーコード読取方法。
【請求項１１】
請求項２に記載のバーコード作成装置または請求項５に記載のバーコード作成方法によって作成されたバーコードを読み取るバーコード読取方法であって、
上記作成されたバーコードを入力するバーコード入力ステップと、
上記バーコード入力ステップによって入力されたバーコードから上記操作情報を読み取る操作情報読取ステップと、
上記操作情報読取ステップによって読み取られた操作情報に基づいて判明した上記逆変換関数を用いて、上記バーコード入力ステップによって入力されたバーコードから規格バーコードを復元する復元ステップと、
上記復元された規格バーコードの内容を読み取る規格バーコード読取ステップとを備えたことを特徴とするバーコード読取方法。
【請求項１２】
コンピュータに請求項１０または１１に記載のバーコード読取方法を実行させるためのバーコード読取プログラム。
【請求項１３】
請求項１２に記載のバーコード読取プログラムを記録したコンピュータ読み取り可能な記録媒体。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
この発明はバーコード作成装置、バーコード作成方法、バーコード作成プログラムおよびその作成プログラムを記録した記録媒体に関する。また、この発明はバーコード読取装置、バーコード読取方法、バーコード読取プログラムおよびその読取プログラムを記録した記録媒体に関する。
【０００２】
なお、この明細書において「バーコード」とは、太さの異なる複数本の黒バーと白バー（スペース）とを交互に一方向に並べた記録形式を持つ１次元バーコードのほか、２値または多値をとり得るバーコードシンボル（桝目）を行列状に２次元的に並べた記録形式を持つ２次元バーコードや、その他の種類のバーコードも広く含む。これらのバーコードは、例えば商品や広告などに付加され、商品のロットナンバーや特性・タイプその他の情報を表すのに用いられる。バーコードが付加される対象は、物に限られず、例えばインターネット上の画像（動画を含む。）であっても良い。
【０００３】
【従来の技術および発明が解決しようとする課題】
一般に、バーコードは、記録すべき情報を或るバーコード規格に基づいてコード化して作成されている。バーコードを読み取る場合は、そのバーコードに記録された情報を、そのバーコード規格に対応したバーコードリーダ（読取装置）によって読み取るようになっている。例えば、現在広く用いられている１次元バーコードの規格は、太さの異なる複数本の黒バーと白バー（スペース）とを交互に一方向に並べたような記録形式になっている。このため、バーコードの外観が単調であり、そのようなバーコードがデザインを重視した商品に付加されると、その商品のデザインを損ない、見る人に違和感を与える場合がある。
【０００４】
このため、デザイン面を考慮して、特開平９−５０５００号公報に記載されているように１次元バーコードの構成要素として樹木の形やビンの形を持つバーを用いたり、特開平９−２１２６１１号公報に記載されているように魚の絵の中に１次元バーコードを配置したりする技術が提案されている。しかし、これらのバーコードは、一般的なバーコード規格に対応したバーコードリーダで読み取られるようになっているため、デザイン面で大きな制約を受ける。
【０００５】
また、特開平８−２４９４０８号公報では、セグメントを用いることで様々な形状をした２次元バーコードを作成する技術が提案されている。しかし、この技術では、読み取りの際に、セグメント毎に位置決めを行いながら、すべてのセグメントのバーコードを読み取らなければ情報を取得することができず、手間がかかる。
【０００６】
さらに、デザイン面を考慮して、赤外線または紫外線を吸収するが可視光には透明なバーを用いた透明バーコード、表面からは見えない磁気記録層を用いた磁気バーコード、画像情報の中にコードパターンを埋め込んだ透かし技術などが提案されている。これらのバーコードは肉眼では見えないので、商品などの対象のデザインが損なわれることはない。しかし、バーコードが肉眼で見えないと、ユーザはその対象にバーコードが付加されていることに気付かないため、バーコードが表す情報を取得することができないという問題がある。
【０００７】
そこで、この発明の課題は、作成者の意図に応じた外観を持つバーコードを作成できるバーコード作成装置、バーコード作成方法、バーコード作成プログラムおよびその作成プログラムを記録した記録媒体を提供することにある。
【０００８】
また、この発明の課題は、そのようなバーコードを読み取るのに適したバーコード読取装置、バーコード読取方法、バーコード読取プログラムおよびその読取プログラムを記録した記録媒体を提供することにある。
【０００９】
【課題を解決するための手段】
上記課題を解決するため、この発明のバーコード作成装置は、記録すべき情報の内容を表すバーコードを、外観を可変して作成するバーコード作成装置であって、
上記記録すべき情報を入力するための情報入力手段と、
上記作成すべきバーコードの外観を設定する制御パラメータを入力するための制御パラメータ入力手段と、
上記情報入力手段によって入力された情報を、上記制御パラメータに応じて外観が設定されたバーコードへ変換する仕方を表す操作情報を作成する操作情報作成手段と、
上記操作情報に応じて、その操作情報を含む上記外観が設定されたバーコードを生成するバーコード生成手段とを備え、
上記操作情報は、上記情報入力手段によって入力された情報と上記外観が設定されたバーコードとの間の対応関係を表す変換関数であり、かつ、
上記変換関数は、上記外観が設定されたバーコードから上記情報入力手段によって入力された元の情報へ復元する仕方を表す逆変換関数が存在するものであることを特徴とする。
【００１０】
ここで、情報入力手段によって入力される「記録すべき情報」には、文字、音声、ＵＲＬ（Uniform Resource Locator : インターネット上にある、情報が保存されている場所を指定する表記。）が含まれるほか、それらの文字、音声、ＵＲＬの内容を既存のバーコード規格に基づいてコード化して作成されたバーコードも含まれる。「作成すべきバーコード」は、「内容」と「外観」との二つの要素を持ち、これら二つの要素で特定される。
【００１１】
この発明のバーコード作成装置では、記録すべき情報を情報入力手段によって入力する。また、作成すべきバーコードの外観を設定する制御パラメータを制御パラメータ入力手段によって入力する。これらの入力は、バーコードを作成しようとする作成者が上記各入力手段を操作することによって行うことができる。これらの入力が行われると、操作情報作成手段が、上記情報入力手段によって入力された情報を、上記制御パラメータに応じて外観が設定されたバーコードへ変換する仕方を表す操作情報を作成する。続いて、バーコード生成手段が、上記操作情報に応じて、その操作情報を含む上記外観が設定されたバーコードを生成する。したがって、作成者は、このバーコードが付加される対象に応じて上記制御パラメータを入力することによって、意図した外観を持つバーコードを作成できる。つまり、肉眼で見えて位置が分かり易く、かつ商品などに付加されても見る人に違和感を与えることがないようなバーコードを作成できる。
【００１２】
なお、作成されたバーコードは、上記情報入力手段によって入力された情報を、上記制御パラメータに応じて外観が設定されたバーコードへ変換する仕方を表す操作情報を含んでいる。したがって、このバーコードから、その操作情報に基づいて元の情報（つまり、上記バーコードの内容）を読み取ることができる。
【００１３】
また、このバーコード作成装置では、上記操作情報は、上記情報入力手段によって入力された情報と上記外観が設定されたバーコードとの間の対応関係を表す変換関数である。したがって、この変換関数を用いることにより、上記情報入力手段によって入力された情報から上記外観が設定されたバーコードへの変換が簡単かつ容易に行われる。しかも、操作情報が変換関数であれば、操作情報が変換テーブルである場合に比して、操作情報の情報量を少なくすることができる。したがって、上記外観が設定されたバーコードが付加される対象において、操作情報が占める領域を小さくすることができる。
【００１４】
なお、上記変換関数は、上記外観が設定されたバーコードから上記情報入力手段によって入力された元の情報へ復元する仕方を表す逆変換関数が存在するものである。作成されたバーコードの読み取りの際にも、このバーコードから元の情報への逆変換が、この変換関数に応じた逆変換関数に基づいて容易に行われる。
【００１５】
一実施形態のバーコード作成装置は、上記情報入力手段は、上記記録すべき情報を規格バーコードの形態で入力するようになっていることを特徴とする。
【００１６】
この一実施形態のバーコード作成装置では、上記情報入力手段は、上記記録すべき情報を規格バーコードの形態で入力するようになっている。したがって、このバーコード作成装置によれば、規格バーコードのような外観が単調なバーコードを入力して、作成者が意図した外観を持つバーコードに変換することができる。
【００１７】
ここで、「規格バーコード」とは、記録すべき情報を既存のバーコード規格に基づいてコード化して作成されたバーコードを意味する。
【００１８】
一実施形態のバーコード作成装置は、上記制御パラメータは、上記作成すべきバーコードの外観として色相、彩度、明度のうち少なくとも一つを設定するパラメータを含むことを特徴とする。
【００１９】
この一実施形態のバーコード作成装置では、上記制御パラメータは、上記作成すべきバーコードの外観として色相、彩度、明度のうち少なくとも一つを設定するパラメータを含むので、作成者の意図に応じた様々な色彩（色相、彩度、明度によって定まる）を持つバーコードが作成され得る。
【００２０】
また、この発明のバーコード作成方法は、記録すべき情報の内容を表すバーコードを、外観を可変して作成するバーコード作成方法であって、
上記記録すべき情報を入力するステップと、
上記作成すべきバーコードの外観を設定する制御パラメータを入力するステップと、
上記入力された情報を、上記制御パラメータに応じて外観が設定されたバーコードへ変換する仕方を表す操作情報を作成するステップと、
上記操作情報に応じて、その操作情報を含む上記外観が設定されたバーコードを生成するステップとを備え、
上記操作情報は、上記情報入力手段によって入力された情報と上記外観が設定されたバーコードとの間の対応関係を表す変換関数であり、かつ、
上記変換関数は、上記外観が設定されたバーコードから上記情報入力手段によって入力された元の情報へ復元する仕方を表す逆変換関数が存在するものであることを特徴とする。
【００２１】
この発明のバーコード作成方法では、まず記録すべき情報を入力する。また、作成すべきバーコードの外観を設定する制御パラメータを入力する。これらの入力が行われると、上記入力された情報を、上記制御パラメータに応じて外観が設定されたバーコードへ変換する仕方を表す操作情報を作成する。続いて、上記操作情報に応じて、その操作情報を含む上記外観が設定されたバーコードを生成する。したがって、作成者は、このバーコードが付加される対象に応じて上記制御パラメータを入力することによって、意図した外観を持つバーコードを作成できる。つまり、肉眼で見えて位置が分かり易く、かつ商品などに付加されても見る人に違和感を与えることがないようなバーコードを作成できる。
【００２２】
なお、作成されたバーコードは、上記入力された情報を、上記制御パラメータに応じて外観が設定されたバーコードへ変換する仕方を表す操作情報を含んでいる。したがって、このバーコードから、その操作情報に基づいて元の情報を読み取ることができる。
【００２３】
また、このバーコード作成方法では、上記操作情報は、上記情報入力手段によって入力された情報と上記外観が設定されたバーコードとの間の対応関係を表す変換関数である。したがって、この変換関数を用いることにより、上記情報入力手段によって入力された情報から上記外観が設定されたバーコードへの変換が簡単かつ容易に行われる。しかも、操作情報が変換関数であれば、操作情報が変換テーブルである場合に比して、操作情報の情報量を少なくすることができる。したがって、上記外観が設定されたバーコードが付加される対象において、操作情報が占める領域を小さくすることができる。
【００２４】
なお、上記変換関数は、上記外観が設定されたバーコードから上記情報入力手段によって入力された元の情報へ復元する仕方を表す逆変換関数が存在するものである。作成されたバーコードの読み取りの際にも、このバーコードから元の情報への逆変換が、この変換関数に応じた逆変換関数に基づいて容易に行われる。
【００２５】
一実施形態のバーコード作成方法は、上記記録すべき情報を規格バーコードの形態で入力することを特徴とする。
【００２６】
この一実施形態のバーコード作成方法では、上記記録すべき情報を規格バーコードの形態で入力する。したがって、このバーコード作成方法によれば、規格バーコードのような外観が単調なバーコードを入力して、作成者が意図した外観を持つバーコードに変換することができる。
【００２７】
また、この発明のバーコード作成プログラムは、コンピュータに本発明のバーコード作成方法を実行させるためのバーコード作成プログラムである。
【００２８】
この発明のバーコード作成プログラムをコンピュータに実行させれば、本発明のバーコード作成方法による上述のような作用効果を奏することができる。
【００２９】
また、この発明の記録媒体は、本発明のバーコード作成プログラムを記録したコンピュータ読み取り可能な記録媒体である。
【００３０】
この発明の記録媒体をコンピュータ読み取らせれば、コンピュータに本発明のバーコード作成プログラムを実行させることができる。したがって、本発明のバーコード作成方法による上述のような作用効果を奏することができる。
【００３１】
また、この発明のバーコード読取装置は、本発明のバーコード作成装置または本発明のバーコード作成方法によって作成されたバーコードを読み取るバーコード読取装置であって、
上記作成されたバーコードを入力するバーコード入力手段と、
上記バーコード入力手段によって入力されたバーコードから上記操作情報を読み取る操作情報読取手段と、
上記操作情報読取手段によって読み取られた操作情報に基づいて判明した上記逆変換関数を用いて、上記バーコード入力手段によって入力されたバーコードの内容を読み取るバーコード読取手段を備えたことを特徴とする。
【００３２】
この発明のバーコード読取装置では、上記作成されたバーコードをバーコード入力手段よって入力する。次に、上記バーコード入力手段によって入力されたバーコードから、操作情報読取手段によって上記操作情報を読み取る。上記操作情報読取手段によって読み取られた操作情報に基づいて判明した上記逆変換関数を用いて、上記バーコード入力手段によって入力されたバーコードの内容をバーコード読取手段によって読み取る。したがって、本発明のバーコード作成装置または本発明のバーコード作成方法によって作成されたバーコードから、元の情報を適切に読み取ることができる。
【００３３】
別の局面では、この発明のバーコード読取装置は、一実施形態のバーコード作成装置または一実施形態のバーコード作成方法によって作成されたバーコードを読み取るバーコード読取装置であって、
上記作成されたバーコードを入力するバーコード入力手段と、
上記バーコード入力手段によって入力されたバーコードから上記操作情報を読み取る操作情報読取手段と、
上記操作情報読取手段によって読み取られた操作情報に基づいて判明した上記逆変換関数を用いて、上記バーコード入力手段によって入力されたバーコードから規格バーコードを復元する復元手段と、
上記復元された規格バーコードの内容を読み取る規格バーコード読取手段とを備えたことを特徴とする。
【００３４】
この発明のバーコード読取装置では、上記操作情報読取手段によって読み取られた操作情報に基づいて判明した上記逆変換関数を用いて、上記バーコード入力手段によって入力されたバーコードから、復元手段によって規格バーコードを復元する。続いて、上記復元された規格バーコードの内容を規格バーコード読取手段によって読み取る。したがって、一実施形態のバーコード作成装置または一実施形態のバーコード作成方法によって作成されたバーコードから、元の情報を適切に読み取ることができる。また、規格バーコード読取手段として、既存のバーコードリーダを利用することができる。
【００３５】
また、この発明のバーコード読取方法は、本発明のバーコード作成装置または本発明のバーコード作成方法によって作成されたバーコードを読み取るバーコード読取方法であって、
上記作成されたバーコードを入力するバーコード入力ステップと、
上記バーコード入力ステップによって入力されたバーコードから上記操作情報を読み取る操作情報読取ステップと、
上記操作情報読取ステップによって読み取られた操作情報に基づいて判明した上記逆変換関数を用いて、上記バーコード入力ステップによって入力されたバーコードの内容を読み取るバーコード読取ステップを備えたことを特徴とする。
【００３６】
この発明のバーコード読取方法では、上記作成されたバーコードをバーコード入力ステップによって入力する。次に、上記バーコード入力ステップによって入力されたバーコードから、操作情報読取ステップによって上記操作情報を読み取る。上記操作情報読取ステップによって読み取られた操作情報に基づいて判明した上記逆変換関数を用いて、上記バーコード入力ステップによって入力されたバーコードの内容をバーコード読取ステップによって読み取る。したがって、本発明のバーコード作成装置または本発明のバーコード作成方法によって作成されたバーコードから、元の情報を適切に読み取ることができる。
【００３７】
別の局面では、この発明のバーコード読取方法は、一実施形態のバーコード作成装置または一実施形態のバーコード作成方法によって作成されたバーコードを読み取るバーコード読取方法であって、
上記作成されたバーコードを入力するバーコード入力ステップと、
上記バーコード入力ステップによって入力されたバーコードから上記操作情報を読み取る操作情報読取ステップと、
上記操作情報読取ステップによって読み取られた操作情報に基づいて判明した上記逆変換関数を用いて、上記バーコード入力ステップによって入力されたバーコードから規格バーコードを復元する復元ステップと、
上記復元された規格バーコードの内容を読み取る規格バーコード読取ステップとを備えたことを特徴とする。
【００３８】
この発明のバーコード読取方法では、上記操作情報読取ステップによって読み取られた操作情報に基づいて判明した上記逆変換関数を用いて、上記バーコード入力ステップによって入力されたバーコードから、復元ステップによって規格バーコードを復元する。続いて、上記復元された規格バーコードの内容を規格バーコード読取ステップによって読み取る。したがって、一実施形態のバーコード作成装置または一実施形態のバーコード作成方法によって作成されたバーコードから、元の情報を適切に読み取ることができる。また、規格バーコード読取ステップを実行する手段として、既存のバーコードリーダを利用することができる。
【００３９】
また、この発明のバーコード読取プログラムは、コンピュータに本発明のバーコード読取方法を実行させるためのバーコード読取プログラムである。
【００４０】
この発明のバーコード読取プログラムをコンピュータに実行させれば、本発明のバーコード読取方法による上述のような作用効果を奏することができる。
【００４１】
また、この発明の記録媒体は、本発明のバーコード読取プログラムを記録したコンピュータ読み取り可能な記録媒体である。
【００４２】
この発明の記録媒体をコンピュータに読み取らせれば、コンピュータに本発明のバーコード読取プログラムを実行させることができる。したがって、本発明のバーコード読取方法による上述のような作用効果を奏することができる。
【００４３】
【発明の実施の形態】
以下、この発明を図示の実施の形態により詳細に説明する。
【００４４】
説明の便宜上、この発明の一実施形態のバーコード作成装置またはバーコード作成方法により「作成すべきバーコード」または「作成されたバーコード」を「デザイナブルコード」と呼ぶ。以下では、デザイナブルコードの例として２次元バーコードについて説明するが、当然ながら、デザイナブルコードは２次元バーコードに限られるものではない。
【００４５】
図１は、記録すべき情報を既存のバーコード規格に基づいて２次元バーコード化して作成された規格バーコード１０１と、後述する一実施形態のバーコード作成装置またはバーコード作成方法により、記録すべき情報を作成者の意図に応じて２次元バーコード化して作成されたデザイナブルコード１０２、１０３、１０４とを例示している。規格バーコード１０１は、外形が正方形になっているため、外観が単調なものである。この規格バーコード１０１は、付加される対象によっては、対象のデザインを損なうことがある。これに対して、デザイナブルコード１０２、１０３、１０４は、それぞれ外形が「円形」、「バツ」、「五角形」というように、付加される対象に合わせて様々に変形可能になっている。したがって、対象のデザインが損なわれるのを避けることができる。しかも、これらのデザイナブルコード１０２、１０３、１０４は、ユーザに位置が分かり易いという特性を持っている。
【００４６】
図２に示すように、デザイナブルコード２０３を作成する際に作成者の意図に応じて、矢印２Ａで示すように、記録すべき情報（この例ではＵＲＬ）２０２からデザイナブルコード２０３を直接作成しても良いし、矢印２Ｂで示すように、記録すべき情報（この例ではＵＲＬ）２０２を既存のバーコード規格に基づいてコード化して得られた規格バーコード２０１から、デザイナブルコード２０３を作成しても良い。いずれにしても、このようなデザイナブルコード２０３には、元の情報２０２の内容が保持されている。しかも、付加される対象に応じて違和感のないデザイン豊かなコードとすることができる。
【００４７】
この図２の例では、記録すべき情報２０２をデザイナブルコード２０３へ変換する仕方を表す操作情報２０４が、長方形の外形を持つマーカ（後に詳述する）の形態で、デザイナブルコード２０３に付加されている。したがって、この操作情報２０４に基づいて、デザイナブルコード２０３から元の情報２０２への逆変換を容易に行うことができ、元の情報２０２を容易に読み取ることができる。この結果、デザイナブルコード２０３の外観のデザインの自由度が増す。したがって、図３中に示すように、円形の外形を持つデザイナブルコード３０１、台形の外形を持つデザイナブルコード３０２、平行四辺形の外形を持つデザイナブルコード３０３、十字で四分割された外形を持つデザイナブルコード３０４など、様々なデザインが可能となる。なお、操作情報２０４は、後に詳述するが、形状の変換のみならず、ＲＧＢ情報またはＨＳＶ情報で表された色彩の変換をも表す変換関数、変換テーブルなどからなる。
【００４８】
さて、図４は、一実施形態のバーコード作成装置４００のブロック構成を示している。このバーコード作成装置４００は、概して、入力部４０１と、作成部４０２と、記憶部４０３と、出力部４０４と、外部記憶装置４２０とを備えている。なお、以下の説明では、このバーコード作成装置４００は、デザイナブルコードを作成しようとする作成者が操作するものとする。
【００４９】
入力部４０１は、ＣＣＤ、スキャナ、ビデオカメラ等からなるバーコード入力部４０５と、キーボード、マウス、操作パネル等からなる情報入力部４０６と、同様にキーボード、マウス、操作パネル等からなる制御パラメータ入力部４０７とを含んでいる。情報入力部４０６は、作成者による操作に応じて、文字、音声、ＵＲＬなどの記録すべき情報を入力する。バーコード入力部４０５は、作成者による操作に応じて、文字、音声、ＵＲＬなどの記録すべき情報を既存のバーコード規格に基づいてコード化して作成された規格バーコードを入力する。また、制御パラメータ入力部４０７は、作成者による操作に応じて、作成すべきデザイナブルコードの外観を設定するための制御パラメータを入力する。
【００５０】
作成部４０２は、デザイナブルコード作成部４０８と、操作情報作成部４０９とを含んでいる。操作情報作成部４０９は、上記情報入力部４０６またはバーコード入力部４０５によって入力された情報を、上記制御パラメータに応じて外観が設定されたデザイナブルコードへ変換する仕方を表す操作情報を作成する。デザイナブルコード作成部４０８は、上記操作情報に応じて、その操作情報を含む外観が設定されたデザイナブルコードを生成する。
【００５１】
記憶部４０３は、変換テーブル４０９と、変換関数４１０と、変換エンジン４１１と、デザイナブルコード記憶部４１２とを含んでいる。変換テーブル４０９は、上記情報入力部４０６またはバーコード入力部４０５によって入力された情報と上記外観が設定されたデザイナブルコードとの間の対応関係を、マーカまたは規格バーコードによりコード化して表すテーブルである。同様に、変換関数４１０は、上記情報入力部４０６またはバーコード入力部４０５によって入力された情報と上記外観が設定されたデザイナブルコードとの間の対応関係を、マーカまたは規格バーコードによりコード化して表す関数である。変換エンジン４１１は、上記情報入力部４０６またはバーコード入力部４０５によって入力された情報と上記外観が設定されたデザイナブルコードとの間の対応関係を、走査方法または規格バーコードからデザイナブルコードへの変換方法として表す実行プログラムを格納している。デザイナブルコード記憶部４１２は、上記デザイナブルコード作成部４０８によって生成されたデザイナブルコードを記憶する。
【００５２】
出力部４０４は、ディスプレイ等からなる画面表示部４１３と、プリンタ等からなる印刷部４１４とを含んでいる。画面表示部４１３は、上記デザイナブルコード記憶部４１２に記憶されたデザイナブルコードを画面上に表示するために用いられる。また、印刷部４１４は、上記デザイナブルコード記憶部４１２に記憶されたデザイナブルコードを用紙上に印刷するために用いられる。
【００５３】
外部記憶装置４２０は、ハードディスクを駆動するハードディスクドライブ４２１と、記録媒体としてのＣＤ−ＲＯＭやＤＶＤ−ＲＯＭなどのリムーバブルディスク（着脱可能ディスク）を駆動するリムーバブルディスクドライブ４２２とを含んでいる。上記ハードディスクには、このバーコード作成装置４００の動作全体を制御するための制御プログラムが格納されている。この制御プログラムは、上記リムーバブルディスクによっても供給することができる。
【００５４】
図６は、このバーコード作成装置４００によってデザイナブルコードを作成する方法の概略フローを示している。まず、作成者が情報入力部４０６またはバーコード入力部４０５を操作して、記録すべき情報を入力する（Ｓ６０１）。例えば、記録すべき情報として、ＵＲＬそのもの、またはそのＵＲＬを既存のバーコード規格に基づいてコード化して作成された規格バーコードを与える。次に、作成者が制御パラメータ入力部４０７を操作して、作成すべきデザイナブルコードの外観を設定するための制御パラメータを入力する（Ｓ６０２）。例えば、図１中に示した外観を持つデザイナブルコード１０２、１０３、１０４を作成しようとする場合は、作成者は、形状を設定するために、それぞれ「円形」、「バツ」、「五角形」を表すパラメータを入力する。また、色彩に関しては、色相は変化なし、明度は変化なし、彩度は変化なし、というパラメータを入力する。すると、操作情報作成部４０９は、上記情報入力部４０６またはバーコード入力部４０５によって入力された情報を、上記制御パラメータに応じて外観が設定されたデザイナブルコードへ変換する仕方を表す操作情報を作成する（Ｓ６０３）。ここで、操作情報は、入力された情報と上記外観が設定されたデザイナブルコードとの間の対応関係を、マーカまたは規格バーコードによりコード化して表す変換テーブルや変換関数を含む場合と、デザイナブルコード上での走査方法や規格バーコードからデザイナブルコードへの変換方法を指定する情報を含む場合とがある。次に、デザイナブルコード作成部４０８は、上記操作情報に応じて、その操作情報を含む外観が設定されたデザイナブルコードを生成する（Ｓ６０４）。したがって、図１中に示したように、作成者の意図に応じた様々な外観を持つデザイナブルコード１０２、１０３、１０４を作成することができる。さらに、その生成されたデザイナブルコードを出力することを作成者が指示した場合は（Ｓ６０５でＹＥＳ）、出力部４０４はその生成されたデザイナブルコードを出力する（Ｓ６０６）。つまり、その生成されたデザイナブルコードを画面表示部４１３によって画面上に表示し、または印刷部４１４によって用紙上に印刷する。
【００５５】
図５は、一実施形態のバーコード読取装置５００のブロック構成を示している。このバーコード読取装置５００は、概して、入力部５０１と、処理部５０２と、記憶部５０３と、出力部５０４とを備えている。なお、以下の説明では、このバーコード読取装置５００は、デザイナブルコードを読み取ろうとするユーザが操作するものとする。
【００５６】
入力部５０１は、ＣＣＤ、スキャナ、ビデオカメラ等からなるデザイナブルコード入力部５０５を含んでいる。デザイナブルコード入力部５０５は、ユーザの操作に応じて、デザイナブルコードを入力する。また、デザイナブルコードに操作情報が含まれる場合は、デザイナブルコード入力部５０５はその操作情報も併せて入力する。
【００５７】
処理部５０２は、通信制御部５０６と、操作情報解析部５０７と、走査方法解析部５０８と、バーコード走査部５０９と、復元方法解析部５１０と、バーコード復元部５１１とを含んでいる。通信制御部５０６はインターネット５１９にアクセスする機能を有している。操作情報解析部５０７は、上記デザイナブルコード入力部５０５によって入力された操作情報を後述する操作情報解析エンジン５１５に従って解析して、入力されたデザイナブルコードと元の情報（つまり、そのデザイナブルコードの内容）との間の対応関係を認識する。走査方法解析部５０８は、その操作情報にデザイナブルコード上での走査方法を指定する情報が含まれている場合に、その走査方法に対応する走査エンジン５１６を呼び出す。バーコード走査部５０９は、呼び出された走査エンジン５１６に従ってデザイナブルコードを走査する。これにより、デザイナブルコードを読み取ることができる。復元方法解析部５１０は、その操作情報にデザイナブルコードから規格バーコードへの復元方法を指定する情報が含まれている場合に、その復元方法に対応する復元エンジン５１７を呼び出す。バーコード復元部５１１は、呼び出された復元エンジン５１７に従ってデザイナブルコードを規格バーコードに一旦復元する。この復元された規格バーコードは、後述するコード記憶部５１４に記憶される。このコード記憶部５１４に記憶された規格バーコードは、バーコード走査部５０９によって既存のバーコード規格に従った走査方法によって走査されて、読み取られる。
【００５８】
記憶部５０３は、変換テーブル５１２と、変換関数５１３と、コード記憶部５１４と、操作情報解析エンジン５１５と、走査エンジン５１６と、復元エンジン５１７とを含んでいる。変換テーブル５１２は、デザイナブルコードと元の情報との間の対応関係を、マーカまたは規格バーコードによりコード化して表すテーブルである。同様に、変換関数５１３は、デザイナブルコードと元の情報との間の対応関係を、マーカまたは規格バーコードによりコード化して表す関数である。コード記憶部５１４は、バーコード復元部５１１によって復元された規格バーコードを記憶することができる。操作情報解析エンジン５１５は、上記操作情報解析部５０７が、上記デザイナブルコード入力部５０５によって入力された操作情報を解析するための実行プログラムを格納している。走査エンジン５１６は、デザイナブルコードと元の情報との間の対応関係を、デザイナブルコード上での走査方法として表す実行プログラムを格納している。また、復元エンジン５１７は、デザイナブルコードから規格バーコードへの復元方法を表す実行プログラムを格納している。
【００５９】
出力部５０４は、ディスプレイ等からなる画面表示部５１８を含んでいる。画面表示部５１８は、復元された規格バーコードを表示したり、または、元の情報がＵＲＬを含む場合に、そのＵＲＬが示すホームページの画像を表示したりするために用いられる。
【００６０】
外部記憶装置５２０は、ハードディスクを駆動するハードディスクドライブ５２１と、記録媒体としてのＣＤ−ＲＯＭやＤＶＤ−ＲＯＭなどのリムーバブルディスク（着脱可能ディスク）を駆動するリムーバブルディスクドライブ５２２とを含んでいる。上記ハードディスクには、このバーコード読取装置５００の動作全体を制御するための制御プログラムが格納されている。この制御プログラムは、上記リムーバブルディスクによっても供給することができる。
【００６１】
図７は、このバーコード読取装置５００によってデザイナブルコードを読み取る方法の概略フローを示している。まず、ユーザがデザイナブルコード入力部５０５を操作して、商品などの対象に付加されたデザイナブルコードを入力する（Ｓ７０１）。この入力には、例えば、ＣＣＤカメラ、バーコードリーダ、スキャナなどを用いる。次に、操作情報を入力する（Ｓ７０２）。この操作情報は、入力部５０１の図示しない操作パネルをユーザが操作して手で入力しても良い。また、操作情報が予め特定されている場合は、予めこのバーコード読取装置５００の記憶部５０３に登録しておいても良い。また、操作情報がデザイナブルコードに含まれている場合は、そのデザイナブルコードから読み取っても良い。例えば、取り込んだ画像内部から操作情報に関するヘッダを発見し、それに従って操作情報を読み取る。または、操作情報がマーカ（後に詳述する）で表現されている場合は、内部のシンボルを認識することによって操作情報を読み取る。
【００６２】
操作情報が入力されると、操作情報解析部５０７は、その入力された操作情報を操作情報解析エンジン５１５に従って解析して、入力されたデザイナブルコードと元の情報（つまり、そのデザイナブルコードの内容）との間の対応関係を認識する。そして、そのデザイナブルコードを直接読み取るか、または、そのデザイナブルコードから一旦規格バーコードを復元するかを判断する（Ｓ７０３）。すなわち、その操作情報にデザイナブルコード上での走査方法を指定する情報が含まれていれば、そのデザイナブルコードを直接読み取るものとする。一方、その操作情報にデザイナブルコードから規格バーコードへの復元方法を指定する情報が含まれていれば、そのデザイナブルコードから一旦規格バーコードを復元するものと判断する。
【００６３】
次に、その操作情報にデザイナブルコード上での走査方法を指定する情報が含まれている場合、つまりそのデザイナブルコードを直接読み取る場合は、走査方法解析部５０８が、その走査方法に対応する走査エンジン５１６を呼び出す（Ｓ７０４）。デザイナブルコードは作成者のデザインによって形状が変化するため、それぞれのデザイナブルコードに合わせた走査方法が必要となるからである。なお、操作情報がマーカ（肉眼で見える○、△などのシンボルを含む。）からなる場合は、それらのシンボルをどの順番で走査するかについては、変換テーブルなどを用いて求める。次に、バーコード走査部５０９は、呼び出された走査エンジン５１６に従ってデザイナブルコードを走査する（Ｓ７０５）。これにより、一旦規格バーコードに復元することなく、デザイナブルコードを直接読み取ることができる。
【００６４】
なお、走査の際に、操作情報自体の位置を変換のための基準位置として使用して良いし、または別途基準となる操作情報を用いても良い。
【００６５】
一方、その操作情報にデザイナブルコードから規格バーコードへの復元方法を指定する情報が含まれている場合、つまりそのデザイナブルコードから一旦規格バーコードを復元する場合は、復元方法解析部５１０がその復元方法に対応する復元エンジン５１７を呼び出す。デザイナブルコードは作成者のデザインによって形状が変化するため、既存のバーコードリーダで首尾良く読み取れる規格バーコードにデコードする必要があるからである。バーコード復元部５１１は、呼び出された復元エンジン５１７に従ってデザイナブルコードを規格バーコードに一旦復元する（Ｓ７０６）。そして、この復元した規格バーコードを既存のバーコードリーダを用いて既存のバーコード規格に基づいて読み取る（Ｓ７０７）。これにより、デザイナブルコードを読み取ることができる。
【００６６】
次に、読み取った元の情報（デザイナブルコードの内容）に基づく処理を行うようにユーザが指示している場合（Ｓ７０８でＹＥＳ）は、その処理を行う（Ｓ７０９）。例えば、元の情報がＵＲＬを含んでいれば、処理部５０２がインターネット５１９にアクセスする。そして、そのＵＲＬが示すホームページの画像を画面表示部５１８によって画面上に表示する。
【００６７】
また、読み取った元の情報を出力するようにユーザが指示している場合（Ｓ７１０でＹＥＳ）は、その出力を行う（Ｓ７１１）。例えば、元の情報を画面表示部５１８によって画面上に表示したり、データとしてユーザに出力したりする。ユーザは、そのような出力を受けて、読取結果を確認することができる。
【００６８】
次に、上記バーコード作成装置４００においてデザイナブルコードの外観を設定するための制御パラメータについて、詳細に説明する。
【００６９】
図８は、「複製」を指示する制御パラメータを実行した変換の例を示している。この図８の例では、入力された情報であるバーコード８０１から得られた５つの複製物８０２が示されている。「複製」とは、元のバーコードと同じもの、つまり同じ内容および外観を持つものを複数並べることをいう。
【００７０】
図９は、「拡大」または「縮小」を指示する制御パラメータを実行した変換の例を示している。この図９の例では、入力された情報であるバーコード９０１を縮小したもの９０２、９０４と、拡大したもの９０３、９０５とが示されている。「拡大」、「縮小」とは、元のバーコードの内容を保持したまま、そのバーコードの外観について縦と横の少なくとも一方のサイズを変更することをいう。縦横比が変更されても良い。
【００７１】
図１０（ａ）（ｂ）は、「回転」を指示する制御パラメータを実行した変換の例を示している。図１０（ａ）の例では、入力された情報であるバーコード１００１を４５度回転したもの１００２が示されている。図１０（ｂ）の例では、入力された情報であるバーコード１００３を９０度回転したもの１００４が示されている。「回転」とは、任意の点を中心としてバーコード全体を回転させることをいう。
【００７２】
図１１は、「反転」を指示する制御パラメータを実行した変換の例を示している。この図１１では、元のバーコード１１０１を左に反転したもの１１０２と、これら２つのバーコード１１０１、１１０２を下に反転したもの１１０３、１１０４とが示されている。「反転」とは、任意の点または線を基準としてバーコードを裏返しにすることをいう。
【００７３】
図１２は、「密度」を指示する制御パラメータを実行した変換の例を示している。この図１２では、元のバーコード１２０１の密度に対して２倍の密度を持つ領域１２０２と、１／２の密度を持つ領域１２０３と、１／３の密度を持つ領域１２０４とが示されている。「密度」を変更するとは、ある領域について単位面積当たりに含まれるバーコードシンボル（２次元バーコードでは桝目）の個数を変更することをいう。
【００７４】
図１３は、「切り抜き」を指示する制御パラメータを実行した変換の例を示している。この図１３では、元のバーコード１３０１に対して、三角型の切り抜き１３０２、月型の切り抜き１３０３、および星型の切り抜き１３０４を行った例が示されている。「切り抜き」とは、元のバーコードのうちの任意の領域を切り取って、その領域以外の領域を残すことをいう。この切り取った領域の情報は、他の領域に含める。これにより、元のバーコードの内容を保持する。なお、ＱＲコードなどのエラー訂正レベル内であれば、切り取るだけでも良い。
【００７５】
図１４は、「分割」を指示する制御パラメータを実行した変換の例を示している。この図１４では、正方形の外形を持つ元のバーコードが、各領域１４０１、１４０２、１４０３、１４０４に分割された例が示されている。「分割」とは、一つのバーコードを任意の線で切断して、分けられた領域を並べることをいう。
【００７６】
上述のような「複製」、「拡大」、「縮小」、「回転」、「反転」、「密度」、「切り抜き」、「分割」を指示する制御パラメータを組み合わせて変換を行うことによって、図１５に示すように、様々な形状を持つデザイナブルコード１５０３、１５０５、１５０７を生成することができる。なお、この図１５の例では、入力された情報は、ＵＲＬ１５０２、またはＵＲＬを既存のバーコード規格に基づいて２次元バーコード化して作成された規格バーコード１５０１である。この規格バーコード１５０１としては、スタック型のＣｏｄｅ４９（インターメック社）、Ｃｏｄｅ１６Ｋ（レーザライト社）、ＲＤＦ４１７（シンボルテクノロジ社）などや、マトリックス型のＱＲＣｏｄｅ（デンソー社）、ＶｅｒｉＣｏｄｅ（ゼブラ社）、ＣＰｃｏｄｅ（日本ＩＤテック社）などを用いても良い。また、例えば２次元バーコード以外のロゴなどを用いても良い。
【００７７】
制御パラメータは、作成すべきデザイナブルコードの形状を「円形」、「ひし形」、「台形」というように直接指定するものであっても良い。また、形状に関するもの以外に、作成すべきデザイナブルコードの色彩を「赤」、「青」、「明るさ」というように指定するものであっても良い。また、バーコードシンボルがどのように変更されたかの位置情報に関するもの、デザイナブルコードが何処を基準としてどの領域に含まれるかを示すデザイナブルコードの領域情報などであっても良い。これらの制御パラメータを総合して、操作情報が定められる。
【００７８】
色彩に関する制御パラメータを指定する場合は、ＲＧＢ空間、ＨＳＶ空間などを用いるとよい。ＲＧＢ空間とは、赤（Ｒ）緑（Ｇ）青（Ｂ）の３種類で色を表現したものであり、ＨＳＶ空間とは、色相（Ｈ）彩度（Ｓ）明度（Ｖ）の３種類で色を表現したものである。ＲＧＢ空間からＨＳＶ空間に変換する式は次の通りである。
【００７９】
【数１】
0003847167.tif 000002
【００８０】
また、ＨＳＶ空間からＲＧＢ空間に変換する式は次の通りである。
【００８１】
【数２】
0003847167.tif 000003
【００８２】
これらの式によって色相、彩度、明度の値を変更することができる。また、操作情報において、光反射部分と光非反射部分の色情報をどのように変更したかを明確にする必要がある。このため、例えば元の規格バーコードのＲＧＢ情報をＲ１，Ｇ１，Ｂ１とし、デザイナブルコードのＲＧＢ情報をＲ２，Ｇ２，Ｂ２としたとき、
（Ｒ２，Ｇ２，Ｂ２）＝Ｃ（Ｒ１，Ｇ１，Ｂ１）
で表される色変換関数Ｃを用いる。このような変換式や変換関数を用いて色彩に関する制御パラメータを指定することによって、様々な色彩を持つデザイナブルコードを作成することができる。また、デザイナブルコードに領域を指定し、領域毎に色彩を変更するための色変更関数Ｃｎ（ｎ＝１，２，３…）を定義しても良い。
【００８３】
これらの制御パラメータを予め定められた「円形」、「三角形」、「バツ」などの形状の項目リストや「赤色」、「青色」、「黄色」などの色彩の項目リストとして画面表示部４１３によって表示し、そのリストの中から作成者がパラメータを選択する方式になっているのが望ましい。このとき、制御パラメータ入力部４０７はその選択されたパラメータを入力する。これにより、作成者にとって、制御パラメータの入力が簡単かつ容易になる。または、作成すべきバーコードの外観を作成者が描画するための描画ツールを備えても良い。このとき、制御パラメータ入力部４０７はその描画ツールによって描画された外観に応じたパラメータを入力する。作成者は、制御パラメータの入力を、自由な描画に応じて行うことができる。
【００８４】
制御パラメータにはデザイナブルコード全体や、バーコード内部の個々のバーコードシンボルに関するものも含める。これらの制御パラメータは操作情報作成部４０９によって総合されて、操作情報としてデザイナブルコードに付加される。先に述べた図１５では、それぞれデザイナブルコード１５０３、１５０５、１５０７に操作情報としてのマーカ（肉眼で見える○、△などのシンボルを含む。）１５０４、１５０６、１５０８が付加されている。なお、操作情報はデザイナブルコードの内部に埋め込まれても良い。また、操作情報には、制御パラメータの性質を示すヘッダ（例えば操作情報が何ビットで定められるかなど）を加えても良い。
【００８５】
図１６は、上記バーコード作成装置４００において、入力された情報を作成部４０２によってデザイナブルコードへ変換する仕方の、具体的なフローを示している。この例では、規格バーコードから様々な形状を持つデザイナブルコードを作成する場合について説明する。入力される規格バーコードは、図１７、図１９に示すように、２値をとり得る６行６列のバーコードシンボル（桝目）からなるもの１７０１、１９０１とする。これらの図１７、図１９では各バーコードシンボルが座標（Ｘｉ，Ｙｉ）（ただし、Ｘｉ，Ｙｉは０≦Ｘｉ，Ｙｉ≦５を満たす自然数である。）のように表される。後述する図１８、図２０〜図２２でも同様に、各バーコードシンボルが座標（ｘｉ，ｙｉ）（ただし、ｘｉ，ｙｉは０≦ｘｉ，ｙｉ≦５を満たす自然数である。）のように表される。
【００８６】
図１６に示すように、まず、バーコード入力部４０５によって規格バーコード１７０１を入力する（Ｓ１６０１）。次に、作成すべきデザイナブルコードの外観を表す制御パラメータを決定する（Ｓ１６０２）。ここでは、制御パラメータの一例として、作成すべきデザイナブルコードの形状を「円形」に設定する。
【００８７】
さらに、予め登録されているテンプレートの中からその制御パラメータに対応したサンプルを抽出する（Ｓ１６０３）。上の例では、図１８に示すような「円形」を表すサンプル１８０１を抽出する。なお、テンプレートには、図２２中に示すように、「三角形」を表すサンプル２２０１、「バツ」を表すサンプル２２０２など、複数のサンプルが含まれている。この例では、予め登録されたテンプレート中からサンプルを抽出しているが、作成者が用意した任意のサンプルを用いても良い。
【００８８】
次に、入力された規格バーコードと抽出したサンプルとを比較する（Ｓ１６０４）。この例では、図１７に示した規格バーコード１７０１と図１８に示したサンプル１８０１中の対応するバーコードシンボル同士を比較して、値が異なるバーコードシンボルの座標を抽出する。この例では、値が異なるバーコードシンボルの座標は（０，０）、（３，０）、（１，１）、（２，０）、（２，５）、（３，２）、（４，１）、（４，４）、（５，１）、（５，２）になっている。
【００８９】
さらに、比較して抽出した座標情報に基づいて、入力された規格バーコードからそのサンプルへの変換の仕方を表す変換テーブル、変換関数のうち少なくとも一つを作成する（Ｓ１６０５）。変換テーブルは、抽出した座標情報を記憶することによって作成され、抽出した座標情報のバーコードシンボルの値を変更することを表す。例えば、その変換テーブルによって、図１７に示した規格バーコード１７０１から図１８に示したサンプル１８０１への変換の仕方が表される。また、変換関数は、次のようにして作成される。例えば、ステップＳ１６０４で図１９に示す規格バーコード１９０１と図２０に示すサンプル２００１とを比較した場合は、図１９中で中心座標（３，３）に集まっていた黒シンボルが図２０中では広がっているため、次のような変換関数が作成される。
【００９０】
【数３】
0003847167.tif 000004
この例では、拡大の中心座標が（Ｃｘ，Ｃｙ）＝（３，３）、拡大率がｋ＝２である。この変換関数によって、図１９に示した規格バーコード１９０１から図１８に示したサンプル２００１への変換の仕方が表される。
【００９１】
次に、作成した変換テーブルおよび変換関数に従って操作情報を作成する（Ｓ１６０６）。操作情報は、後述するマーカ、バーコード、２次元バーコードにコード化して表す。
【００９２】
最後に、上記サンプルと操作情報とを組み合わせることによってデザイナブルコードを作成する（Ｓ１６０７）。例えば、図２１は、図１８に示したサンプル１８０１と操作情報としてのマーカ２１０２とを組み合わせて作成されたデザイナブルコード２１０１を示している。
【００９３】
このようにして、上記バーコード作成装置４００において、入力された情報を作成部４０２によってデザイナブルコードへ変換（エンコード）する。
【００９４】
このようにして作成されたデザイナブルコードを読み取る際には、上記バーコード読取装置５００において、デザイナブルコードを元の規格バーコードへ逆変換（デコード）する。
【００９５】
例えば、図１６中のステップＳ１６０５で変換テーブルを作成した場合は、その変換テーブルがそのまま復元のための変換テーブルとして用いられる。つまり、バーコードシンボルを逆に考えれば、その変換テーブルによって、図１８に示したサンプル１８０１から図１７に示した規格バーコード１７０１への変換の仕方が表されるからである。
【００９６】
また、図１６中のステップＳ１６０５で（数３）のような変換関数を作成した場合は、次のような逆変換関数が復元のための関数として用いられる。
【００９７】
【数４】
0003847167.tif 000005
【００９８】
これらの変換テーブルや変換関数が操作情報に含まれていれば、作成されたデザイナブルコードを元の規格バーコードへ逆変換（デコード）することができる。
【００９９】
次に、操作情報をコード化して表すマーカについて説明する。図２３は、操作情報をコード化して表すマーカ２３０１を例示している。このマーカ２３０１は、長方形の枠内に、左から順に三つのシンボル２３０２、２３０３、２３０４を備えている。マーカ２３０１における一つ目のシンボル２３０２を「形状」に関するもの、二つ目のシンボル２３０３を「色彩」に関するもの、三つ目のシンボル２３０４を「サイズ」に関するものとする。例えば、形状に関するシンボルが丸の場合はデザイナブルコードが円形とし、色彩に関するシンボルが三角形のときはデザイナブルコードが赤色とし、サイズに関するシンボルが十字形のときはデザイナブルコードが元の規格バーコードの２倍とする。このコード化については、特願２００１−０７０８４６号公報に詳細に記載されている。
【０１００】
このマーカ２３０１、つまり操作情報によれば、図２４に示すように、規格バーコード２４０１から、外観が変更されたデザイナブルコード２４０２が作成される。また、図２５に示すように、デザイナブルコード２５０１のデコードを行う際にマーカ２５０２を読み取れば、デザイナブルコードに関する操作情報を認識でき、デザイナブルコードの内容を知ることができる。マーカ２５０２の読み取りの際は、シンボル部分に関して２値化を行い、それぞれのシンボルにラベリングを行った後に形状認識を行う。これによりシンボルの形状を認識することができ、したがって操作情報を認識することができる。
【０１０１】
このような操作情報をコード化して表すマーカを用いれば、操作情報の情報量を減少させることができる。なお、マーカに代えて、操作情報をコード化して表す規格バーコード（１次元バーコードや２次元バーコードなど）を用いることで、さらに操作情報の情報量を増やしてもよい。
【０１０２】
なお、デザイナブルコードを規格バーコードの集合体、つまりデザイナブルコードは複数の規格バーコードを組み合わせることで全体としてある形状を表現したもの、と考えることもできる。この考え方は、特開平８−２４９４０８号公報に記載されているセグメント化の考え方を基礎とする。セグメント化とは、大容量のデータを記録しようとする場合に、管理などの面からブロック単位で情報を記録する技術である。本発明によれば、これらのブロックを並べる情報記録領域の形状を自由に設定することができるので、複雑な形状のものをつくることができる。デザイナブルコードに操作情報としてセグメント化の情報を加えておくことによって、読み取りの際に、元の規格バーコードを容易に認識することができる。
【０１０３】
【発明の効果】
以上より明らかなように、この発明のバーコード作成装置、バーコード作成方法、バーコード作成プログラムおよびその作成プログラムを記録した記録媒体によれば、作成者の意図に応じた外観を持つバーコードを作成できる。
【０１０４】
また、この発明のバーコード読取装置、バーコード読取方法、バーコード読取プログラムおよびその読取プログラムを記録した記録媒体によれば、そのようなバーコードを適切に読み取ることができる。
【図面の簡単な説明】
【図１】  既存のバーコード規格に基づいて作成された規格バーコードと、一実施形態のバーコード作成装置またはバーコード作成方法により作成されたデザイナブルコードとを例示する図である。
【図２】  上記バーコード作成装置またはバーコード作成方法によりデザイナブルコードを作成する方法を二通りに大別して示す図である。
【図３】  様々な形状を持つデザイナブルコードを例示する図である。
【図４】  一実施形態のバーコード作成装置の構成を示すブロック図である。
【図５】  一実施形態のバーコード読取装置の構成を示すブロック図である。
【図６】  一実施形態のバーコード作成方法のフローを示す図である。
【図７】  一実施形態のバーコード読取方法のフローを示す図である。
【図８】  「複製」を指示する制御パラメータを実行した変換の例を示す図である。
【図９】  「拡大」または「縮小」を指示する制御パラメータを実行した変換の例を示す図である。
【図１０】  （ａ）（ｂ）は、「回転」を指示する制御パラメータを実行した変換の例を示す図である。
【図１１】  「反転」を指示する制御パラメータを実行した変換の例を示す図である。
【図１２】  「密度」を指示する制御パラメータを実行した変換の例を示す図である。
【図１３】  「切り抜き」を指示する制御パラメータを実行した変換の例を示す図である。
【図１４】  「分割」を指示する制御パラメータを実行した変換の例を示す図である。
【図１５】  上述のような「複製」、「拡大」、「縮小」、「回転」、「反転」、「密度」、「切り抜き」、「分割」を指示する制御パラメータを組み合わせて変換を行うことによって作成された様々な形状を持つデザイナブルコードを示す図である。
【図１６】  上記バーコード作成装置に入力された情報をデザイナブルコードへ変換する仕方の、具体的なフローを示す図である。
【図１７】  規格バーコードを例示する図である。
【図１８】  「円形」を表すサンプルを例示する図である。
【図１９】  中心座標に集まった形状を持つ別の規格バーコードを例示する図である。
【図２０】  中心座標から広がった形状を持つサンプルを例示する図である。
【図２１】  「円形」を表すサンプルに対応した、マーカを含むデザイナブルコードを例示する図である。
【図２２】  「三角形」を表すサンプルと「バツ」を表すサンプルを例示する図である。
【図２３】  操作情報をコード化して表すマーカを例示する図である。
【図２４】  マーカに応じて、規格バーコードからデザイナブルコードを作成する例を示す図である。
【図２５】  マーカに応じて、デザイナブルコードから元の情報を認識する方法を二通りに大別して示す図である。
【符号の説明】
４００  バーコード作成装置
４０１  入力部
４０２  作成部
４０３  記憶部
４０４  出力部
４０５  バーコード入力部
４０６  情報入力部
４０７  制御パラメータ入力部
４０８  デザイナブルコード作成部
４０９  操作情報作成部
４１０  変換テーブル
４１１  変換関数
４１２  変換エンジン
４１３  デザイナブルコード記憶部
４１４  画面表示部
４１５  印刷部
５００  バーコード読取装置
５０１  入力部
５０２  処理部
５０３  記憶部
５０４  出力部
５０５  デザイナブルコード入力部
５０６  通信制御部
５０７  操作情報解析部
５０８  操作方法解析部
５０９  バーコード走査部
５１０  復元方法解析部
５１１  バーコード復元部
５１２  変換テーブル
５１３  変換関数
５１４  コード記憶部
５１５  操作情報解析エンジン
５１６  走査エンジン
５１７  復元エンジン
【図１】
0003847167.tif 000006
【図２】
0003847167.tif 000007
【図３】
0003847167.tif 000008
【図４】
0003847167.tif 000009
【図５】
0003847167.tif 000010
【図６】
0003847167.tif 000011
【図７】
0003847167.tif 000012
【図８】
0003847167.tif 000013
【図９】
0003847167.tif 000014
【図１０】
0003847167.tif 000015
【図１１】
0003847167.tif 000016
【図１２】
0003847167.tif 000017
【図１３】
0003847167.tif 000018
【図１４】
0003847167.tif 000019
【図１５】
0003847167.tif 000020
【図１６】
0003847167.tif 000021
【図１７】
0003847167.tif 000022
【図１８】
0003847167.tif 000023
【図１９】
0003847167.tif 000024
【図２０】
0003847167.tif 000025
【図２１】
0003847167.tif 000026
【図２２】
0003847167.tif 000027
【図２３】
0003847167.tif 000028
【図２４】
0003847167.tif 000029
【図２５】
0003847167.tif 000030