説明

バーコード生成システムおよびバーコード生成プログラム

【課題】短時間且つ最小限の用紙およびインクの使用で、個々のユーザの使用条件に合った適正なバーコード構成情報ひいてはバーコードを生成するとともに、バーコード読取装置の光源の波長に応じたバーコード補正を行う。
【解決手段】テストチャートの画像データを特定の印刷装置で印刷して得られたテストチャートの読取イメージに基づいて、バーコード用のバーおよびスペースの幅を測定する。この際、複数の色要素毎のイメージの測定結果を得て、これらの測定結果の論理和をとることによりバーおよびスペースの幅を求める。測定結果に基づいて、印刷後のバーコードのバー幅とスペース幅が規定の大きさとなるように、印刷時に設定されるべきバー幅とスペース幅のドット数をバーコード補正値として求める。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、インクジェットプリンタを使用したバーコード生成システムに関する。
【背景技術】
【0002】
一般に、インクジェット記録ヘッドを用いたバーコード生成システムでは、さまざまな記録媒体に対して非接触で画像を形成することができるという利点がある一方、紙面上でインク滴が滲む現象により、バーコードの黒バーが太くなり、それに隣り合う白バー(すなわち白スペース)が細くなる傾向にある。本来、バーコードは黒バーと白バーは同じ幅である必要がある為、このバーの太り細りはバーコードの読取り精度に大きく影響を与え、時には読取り不可能なバーコードになってしまうという問題があった。
【0003】
この問題を解決するために、予めドットの滲みを見越してバーコードの白バーを大きくした構成にするバーコード補正方法や、黒バー部分を滲みにくくする方法が提案されている(特許文献1)。
【0004】
また、このインクの滲む度合いは紙の素材に大きく起因する為、用紙の種類(紙種)によってバーコードが読めなくなるという問題もあった。
【0005】
この問題に対しては、用紙の種類ごとに黒バーと白バーのドット数を予めテーブルとして用意することにより紙種の違いをカバーする技術が提案されている(特許文献2)。
【0006】
さらに、インクの滲み具合に関わる要因は紙の素材だけでなく、インクの種類や記録ヘッドの個体差、使用環境など様々な要因が関与し合っており、これら使用条件の違いによってもバーコードが読めなくなる場合があるという問題もあった。
【0007】
この問題に対しては、補正値の異なるバーコードを幾つも作成して実際に印刷し、バーコード検証機で読み取ることにより個々の使用環境に合ったバーコード生成を可能にする技術が提案されている(特許文献3)。
【特許文献1】特開2003−237059号公報
【特許文献2】特開平08−123886号公報
【特許文献3】特開平08−044807号公報
【発明の開示】
【発明が解決しようとする課題】
【0008】
しかしながら、従来の技術には以下のような問題がある。
【0009】
特許文献1記載のバーコード生成システムは、ドットの滲み具合が予め判っている場合は有効であるが、紙種の変更などに対応できないという問題が残っている。
【0010】
特許文献2記載のバーコード生成システムでは、紙種が新規追加される度に、ソフトウエアのバーコード補正テーブルも追加修正しなければならない問題があった。
【0011】
特許文献3記載のバーコード生成システムでは、実際に使用するバーコードの条件、つまりEAN128やCODE39などのバーコード種類や、バーコード化する数値の桁数やサイズなどの各パラメータに対して補正値を微調整した非常に多くのバーコードを生成して印刷し、検証機による読取り結果を比較する手法であり、適正なバーコード条件を決定する為には印刷に使用する用紙や時間を多く浪費するという問題があった。また、従来の条件と滲み率が大きく異なる用紙が追加されると、補正範囲を広げた検証用バーコードをさらに追加する必要があり、検証パターンのメンテナンス面での問題もあった。
【0012】
また、インクジェット記録方式の印刷装置においては、吐出されたインクの主滴から切り離された副滴によって、同じドット幅でバーコードを構成しようとしても搬送方向に対して平行に構成した場合と垂直に構成した場合とでバー幅が異なってしまうという問題もあった。この問題は特に1パスで印刷を行う場合に顕著である。
【0013】
このような従来の問題に対して、本願出願人は特願2007−151371号および特願2007−183745号として、実際の印刷環境にて、バーコードを構成するバーとスペースそれぞれの補正値を算出するためのテストチャートを印刷し、その印刷結果を基にバーコード補正値を決定するバーコード生成システムおよびそのためのテストチャートを提案した。これにより上記の問題が解決された。
【0014】
ところで、バーコード検証機やバーコードリーダ等のバーコード読取装置は、バーコードに特定の波長の照明光(光源)を照射し、その反射光を集めて電気信号に変換し、解読して元のデータを得るため、波長によって反射率データが大きく異なり、検証結果またはリーダ読取り率に大幅な差が生じる場合がある。特に、光源の波長によって読取り易い色と読取り難い色があるため、カラーバーコードの印刷またはカラー用紙に印刷する場合は、光源の波長に合わせてバーコード補正を行う必要がある。
【0015】
本発明はこのような背景においてなされたものであり、その目的は、短時間且つ最小限の用紙およびインクの使用で、個々のユーザの使用条件に合った適正なバーコード構成情報ひいてはバーコードを生成するとともに、バーコード読取装置の光源の波長に応じたバーコード補正を行うことができるバーコード生成システムおよびバーコード生成プログラムを提供することにある。
【課題を解決するための手段】
【0016】
本発明によるバーコード生成システムは、バーコードを印刷するためのバーコード構成情報を生成するバーコード生成システムであって、バーコード用のバーおよびスペースを、それぞれ複数の異なるドット数の幅で印刷するためのテストチャートの画像データを記憶する手段と、前記テストチャートの画像データを特定の印刷装置で印刷して得られたテストチャートの読取イメージに基づいて、前記バーコード用のバーおよびスペースの幅を測定する測定手段と、前記測定手段の測定結果に基づいて、印刷後のバーコードのバー幅とスペース幅が規定の大きさとなるように、印刷時に設定されるべきバー幅とスペース幅のドット数をバーコード補正値として求めるバー幅補正手段とを備え、前記測定手段は、複数の色要素毎のイメージの測定結果を得て、これらの測定結果の論理和をとることによりバーおよびスペースの幅を求める。
【0017】
前記測定手段により、ある印刷装置およびある種類の用紙等の条件下で印刷されたテストチャートから、さまざまなドット幅(指示値)で印刷したバー要素(バーおよびスペース)の実際の幅の実測値を得ることにより、その条件下でのドット幅と実際の幅の関係が把握される。そこで、バー幅補正手段は、印刷後のバーコードのバー幅とスペース幅が規定の大きさとなるように、印刷時に設定されるべきバー幅とスペース幅のドット数をバーコード補正値として求めることができる。このバーコード補正値を用いて、当該条件下でバーコードを印刷すれば、バーコードの要素幅にドットの滲み等の幅変動要因があっても、適正な要素幅でのバーコードを印刷することが可能となる。かつ、テストチャートの読取の際に複数の色要素毎のイメージの測定結果を得て、これらの測定結果の論理和をとることによりバーおよびスペースの幅を求める。これにより、個々のバーコード読取装置に用いられている光源の波長が異なることに対応可能となる。
【0018】
より具体的には、前記測定手段は、バーコード読取装置の光源の波長に対して、複数の色要素毎の読取出力を2値化するための閾値を対応付けた閾値テーブルを有する。この場合、好ましくは、前記バーコード読取装置の光源の波長を入力する手段を備える。
【0019】
前記バー幅補正手段は、前記テストチャートに印刷したバーおよびスペースの幅のドット数と前記バーおよびスペースの幅の実測値との関係に基づいて、ドット数と前記バーおよびスペースの幅とを対応づけた補正テーブルを生成する。より具体的には、前記バー幅補正手段は、バーコードの種類および基準となる要素の幅情報の入力を受け付ける手段を有し、前記受け付けたバーコードの種類および基準となる要素の幅情報に基づいて、前記補正テーブルを参照し、当該種類の印刷後のバーコードのすべてのバーおよびスペースの幅が規定の大きさに一致または近づくように、印刷時に設定されるべきバー幅とスペース幅のドット数を選定する。
【0020】
本発明によるバーコード生成プログラムは、バーコードを印刷するためのバーコード構成情報を生成するバーコード生成プログラムであって、前記テストチャートの画像データを特定の印刷装置で印刷して得られたテストチャートの読取イメージに基づいて、複数の色要素毎のイメージの測定結果を得て、これらの測定結果の論理和をとることによりバーおよびスペースの幅を測定するステップと、この測定結果に基づいて、印刷後のバーコードのバー幅とスペース幅が規定の大きさとなるように、印刷時に設定されるべきバー幅とスペース幅のドット数をバーコード補正値として求めるステップとをコンピュータに実行させることを特徴とする。
【発明の効果】
【0021】
本発明によれば、印刷装置の設置環境や装置の個体差、用紙の種類などユーザ個々の使用環境条件に合致した適正なバーコードの生成が可能なバーコード生成システムを提供することができる。また、短時間で適正なバーコード補正値を見出すことができ、且つインクや用紙の消費量を低減した手法により実現するものである。
【0022】
また、本発明は、テストチャートの解析でドットの太り細りを測定する手法なので、バーコードの種類や用紙の種類が増えても、システムのメンテナンスが不要である。
【0023】
さらに、バーコード読取装置の光源の波長に合わせてバーコードのバーおよびスペースの幅の補正を行うため、テストチャート解析性能が向上し、カラーバーコードやカラー用紙に対応することが可能となる。
【発明を実施するための最良の形態】
【0024】
以下、図面を参照して本発明の実施形態について詳細に説明する。尚、以下の実施の形態に記載されている構成要素はあくまで例示であり、本発明の範囲をそれらのみに限定する趣旨のものではない。
【0025】
図1に、本実施の形態におけるバーコード生成システムの概略図を示す。このシステムは、情報処理装置100と、イメージスキャナ110と、印刷装置200とを備える。イメージスキャナ110は、白色(またはRGB)の光源を用いて複数色要素(ここではシアン(C)とマゼンタ(M)とイエロー(Y))の多階調出力が得られるフルカラーの画像の読取が可能なものとする。
【0026】
本実施の形態における印刷装置200は、熱エネルギーを利用したインク吐出方式を採用したインクジェット印刷装置であり、記録媒体の一種としての用紙103を搬送する搬送ユニット106と、用紙103の搬送速度を検出するエンコーダ104と、画像データを記録するインクジェット記録方式の記録ユニット101で構成される。この記録ユニット101は、USBなどのインタフェースケーブル102を介して情報処理装置100と接続されている。情報処理装置100はパーソナルコンピュータ(PC)などの装置であり、この装置から印刷装置200に対して、画像データの転送やクリーニングなどの制御コマンドの転送が行われる。情報処理装置100には、その周辺装置の一つとして、後述するテストパターンを記録したテストチャートを光学的に読み取るためのイメージスキャナ110が接続される。
【0027】
記録ユニット101による画像データの記録は、搬送ユニット106における用紙センサ(図示せず)からの用紙検出信号をトリガにして、エンコーダ104の用紙速度信号に同期しながら、搬送された用紙103に対してインク滴を吐出することにより行われる。記録内容は、任意であるが、図1の例では1次元バーコード105である。
【0028】
なお、エンコーダ104を用いずに、記録ユニット101とは独立した搬送装置により用紙等の記録媒体をユーザが指定する任意の速度で搬送する構成であってもよい。
【0029】
図2は、図1のシステムにおける情報処理装置100と印刷装置200の制御ハードウェアの構成例を示すブロック図である。
【0030】
情報処理装置100は、中央処理装置(CPU)等により構成される制御部111を備え、この制御部111により記憶部112に格納されている制御プログラムを実行し、各部を制御する。記憶部112は、ROM,RAM,HDD等を含みうる。表示部113はLCD,CRT等のディスプレイを含み、ユーザに対して表示画面上に情報を提示する。操作部114は、キーボード、マウス等を含み、ユーザからの操作や情報の入力を受け付ける。USBインタフェース115は、情報処理装置100を印刷装置200と接続するためのプリンタインタフェースの一例として示してある。但し、プリンタインタフェースはUSBに限るものではない。
【0031】
印刷装置200の制御部201は、中央処理装置(CPU)202を備え、このCPU202により不揮発性メモリ(ROM)203に格納されている制御プログラムを実行し、各部を制御する。また、制御部201は、CPU202により各種データ処理のワークエリアや受信バッファとして使用されるメモリ(RAM)204や、制御回路209を介して、画像展開部として使用されるイメージメモリ205を備える。更に、CPU202は、制御回路209を介して、記録ヘッド214〜217を駆動するヘッド駆動回路210や、各記録ヘッドを記録に適正な状態に保つためのクリーニング動作や記録動作を制御する各種モータ206を駆動するモータドライバ211、記録ヘッド下に給紙を行うための搬送制御I/F207の入出力インターフェース制御部(I/O)212を制御する構成となっている。本例では、図1内のエンコーダ104は搬送制御I/F207に含まれているものとする。
【0032】
また、印刷装置200は、基本的に、外部装置である情報処理装置100から送信された画像データやクリーニングコマンドなどをインタフェースケーブル102を介して受信するUSBコントローラ208を有し、この受信した各種コマンドに従って動作する。
【0033】
図3は、記録ユニット101で、一般的なバーコードのような黒バーと白バーにて構成されるパターンを記録した場合の概略図である。黒バーは黒インクで記録された直線要素である。白バーは記録の空白部(バーコードを記録する用紙の地色)で構成される直線要素であり、スペースともいう。この図において、ライン21,22,23の順で、記録を行ったものである。図3の例では、ライン21により細バーを構成し、ライン22,23により太バーを構成している。
【0034】
インクジェット印刷装置では、記録されるドットのサイズは、インクという液体を吐出させて画像を形成するという特性上、使用環境や記録ヘッドの個体差、インクの種類などの条件に依存するインクの吐出量と、用紙の素材に依存する滲み率によって変化する。通常、ある範囲内の使用環境を想定し、対記録媒体との関係から吐出量を設定し、インクのドットサイズを決定している。しかし、産業用途等の過酷な記録条件や設置環境、ヘッドの個体差、紙種などの影響で、にじみ、吐出量が変化する。その結果、図3にケース1、ケース2として示すように印刷されたドットサイズが変化することがある。ドットサイズが変化すると、ドット間のスペースが規定値に対し増減することとなる。その結果、バーコードの読取り不良が発生したり、最悪の場合には読めなくなったりする。
【0035】
また、仮に上記のようなにじみ方のばらつき要因がないとしても、インクをにじませて画像を形成している以上、同じドット数でバーとスペースを形成しても両者は同じ幅にはならない。インクジェット印刷装置におけるバーコードの生成になんらかの補正が必要なのはこの為である。
【0036】
図4はインクジェット印刷装置における副滴が用紙に着弾するまでの時間経過に応じた状態を表した模式図である。記録ヘッド(ここでは記録ヘッド214)からインクが吐出されるとき、画像を形成するインクの主滴40が用紙103に着弾した後に、インク主滴40から遅れてインク主滴40の残りである副滴(サテライトともいう)41が用紙に着弾する。この副滴41は主滴40よりもサイズが小さい。記録ヘッド214に対して相対的に用紙103が一方向(図の→方向)に搬送されるとき、副滴41は主滴40の着弾に対して必ず用紙搬送方向の後ろ側に形成されてしまう。ここでは用紙の全幅に亘って並んだノズル列を有するライン型の記録ヘッドを想定しているが、いわゆる用紙の搬送方向と直交する方向に主走査されるシリアル型の記録ヘッドにおいても同様の副滴による影響がありうる。すなわち、副滴41は主滴40の着弾に対して必ずヘッド走査方向(結局は、記録ヘッドの用紙に対する相対的な移動方向)の後ろ側に形成されてしまう。
【0037】
図5(a)は、インクジェット印刷装置においてノズル列223に対して平行のバーを有するバーコードを構成した際に発生する副滴の状態を図にしたものである。これはライン型の記録ヘッドに対して用紙をA方向に搬送した場合を示している。上述のように、副滴41は主滴40の着弾に対して必ず用紙搬送方向の後ろ側に形成されてしまう為、用紙搬送方向に対して垂直(すなわちノズル列に対して平行)のバーで構成されるバーコードは、主滴ドット列221に隣接する副滴ドット列220の影響によりバーの幅がスペースの幅に対して極端に大きくなってしまうおそれがあった。
【0038】
図5(b)は、インクジェット印刷装置において用紙搬送方向に平行(すなわちノズル列223に対して垂直)のバーを有するバーコードを構成した際に発生する副滴の状態を図にしたものである。図5(a)に場合に比べて図5(b)のバーコードは、副滴ドット列が主滴ドット列の線上に重なり、大半の副滴は主滴ドット列に重なり相殺されてしまう。また、この場合の副滴が主滴に対してずれる方向はバー幅に影響しない方向である。その為、副滴が発生しても、バー幅がスペース幅よりも極端に大きくなってしまうということはない。
【0039】
このように副滴が発生するインクジェット印刷装置においてバーコードを印刷する場合は、バーコードの向きによってもバー幅と、スペース幅が異なる為、それぞれの場合に対して適正なバーコードの生成を行う必要がある。
【0040】
本発明は、このような問題に対応すべく、バーコードを構成するバー、スペースのドット数と実記録されたバーおよびスペースの幅との関係を簡単に得られるテストパターンを用い、その読取結果をもとにバーコードを補正することにより、記録環境が変化しても安定して読取り可能なバーコードを記録可能とした。
【0041】
次に、本実施の形態による、バーコード補正値を決定するために用いるテストチャートおよび、バーコード幅の補正の方法について説明する。
【0042】
図6および図7にそれぞれ、本実施の形態における、バーおよびスペースの太り細りの状態が確認可能なテストパターンの構成例を示す。
【0043】
図6のテストパターン600pは、バー群を含むポジ(正)のテストパターンであり、それぞれ、各バーがノズル列223に平行な方向に延びる複数のバーからなるバー群601pと、ノズル列に垂直な方向に延びる複数のバーからなるバー群602pとを含む。この例では、いずれのバー群も1〜10のドット数の10種類の異なるバー幅で構成されている。但し、バー幅は必ずしもこのような10種類が必要なわけではなく、このテストパターンにおけるバー幅の種類は少なくとも2種類あればよい。ドット列603pの各ドットは孤立した単一ドット(黒または色ドット)により構成され、各ドット径の確認等に利用されるものであるが、本実施の形態における動作には直接関係しない。
【0044】
図7のテストパターン600nは、スペース群を含むネガ(負)のテストパターンであり、それぞれ、各バーがノズル列223に平行な方向に延びる複数のスペースからなるスペース群601nと、ノズル列に垂直な方向に延びる複数のスペースからなるスペース群602nとを含む。この例では、いずれのスペース群も1〜10のドット数の10種類の異なるバー幅で構成されている。スペースについても、バー幅は必ずしもこのような10種類が必要なわけではなく、このテストパターンにおけるスペース幅の種類は少なくとも2種類あればよい。ドット列603nの各ドットは孤立した単一ドット(白ドット)により構成され、各ドット径の確認等に利用されるものであるが、本実施の形態における動作には直接関係しない。
【0045】
図6、図7で説明したテストパターン600p、600nを記録したテストチャート600(図9)は、好ましくは実際にバーコードの印刷に使用される用紙に印刷されたテストチャートの面上の各バーの幅を実測することにより、印刷されたドット数と紙面上の実バー幅の関係を掌握することができる構成である。各テストパターンは、バーコード用のバーおよびスペースを、それぞれ複数の異なるドット数の幅で印刷するためのデータパターンである。実際の使用条件(装置、環境、用紙)で本発明のテストチャートを印刷すれば、記録ヘッドの個体差に起因する吐出量の違いや、用紙の種類に起因する滲み率の違いを考慮した実バー幅を知ることができ、その実バー幅に応じてバー/スペースのサイズを補正したバーコードを生成することが可能である。テストチャートを読み取って得られるイメージの解析手法に関しては後述する。
【0046】
本例では10種類のバー幅(ドット数1〜10)を使用した。このように、連続値のドット数を採用する必要はないが、テストチャートを比較的多くの種類のドット幅で構成する場合は、比較的細い幅のバーを構成するドット数をより多く入れ込むのが望ましい。実際のバーコードの寸法許容値はバーが細いものほど寸法許容範囲が小さく、少しの寸法のずれでも品質低下が発生する恐れがある。一方、バーが太いものほど寸法許容範囲が大きい為、寸法がある程度ずれていても読取ランクに影響はない。よって、テストパターンに複数種類のドット列を入れる場合は細いドット列を多く入れることにより、細いバーコードの生成精度を上昇させ、バーコードの品質をより高めることが可能となる。
【0047】
用紙の大きさによって複数の種類のテストチャートを有する場合も、バーの占有面積の見地からも、太い幅のドット列よりも細い幅のドット列の数を優先して配置する方が有利である。
【0048】
図8(a)(b)は、テストチャートのバーおよびスペースの印刷時のドット数に対する実際の印刷結果のバーおよびスペースの幅の測定値をそれぞれグラフ化したものである。これはテストチャートから得られた各値から、テストチャートに含まれないドット数とバーおよびスペースとの関係を推測する為のものである。それぞれバーコードのバーの向きがノズル列に「平行」(横方向)の場合と「垂直」(縦方向)の場合の測定結果を別個に示している。この図から分かるように、同じドット数でもバーの方がスペースより実サイズが大きい。また、「垂直」と「平行」では、バーの場合は「平行」の方が大きく、スペースの場合は「垂直」の方が大きくなっている。
【0049】
隣接するバーの間隙をスペースとしてして利用するテストパターンを採用することも可能である。この場合、図6のテストパターン600pが図7のテストパターン600nを兼ねることになる。これにより、テストチャートに入れるバーとスペースを配置する面積はグラフを作成する為の最小限で済むことになる。また、大きなバーコードを生成することまで考慮してテストチャートを大きく取ったり、複数枚にする必要もなくなる。
【0050】
本実施の形態では、テストパターンとして幅10ドットまでのバーおよびスペースを作成したが、上述したように理論的には上記グラフを描く為に、テストチャートに入れるバー、スペース、ともに2種類、少なくとも幅の違うものがあればよい。もちろん用紙の印刷可能な領域に余裕がある場合は、精度を高める為にこれ以上に増やしても構わない。
【0051】
図9は、本実施の形態におけるバーコード生成システムの外観構成例を示す。
【0052】
図6、図7に示したようなテストパターンを記録したテストチャート600を得るためには、情報処理装置100の記憶部112に格納された、テストパターンに対応するテストチャート画像データ806が、情報処理装置100からインタフェースケーブル102を介して印刷装置200に転送される。印刷装置200における記録ユニット101(図1)によるテストチャート600の記録は、前述したように、実際の使用条件(印刷装置、記録環境、使用用紙等)と同じ条件下で行うことによって、最大限の効果が得られる。この例では、テストチャート画像データ806の画像はモノクロ画像とするが、カラーであってもよい。用紙の色は白でなくてもよい。
【0053】
用紙上に記録出力されたテストチャート600はイメージスキャナ110にセットされて、シアン(C)とマゼンタ(M)とイエロー(Y)の色要素データ(CMYデータ)がイメージ情報として読み取られる。情報処理装置100はこの読み取られたイメージ情報をインタフェースケーブル805を介して受信し、制御部111(図2)が、テストチャート600の各幅のバー要素の記録による実バー幅情報を得る。この際、制御部111はまた、イメージスキャナ110によるテストチャート600の読取出力に対して測定を行う測定手段を構成する。この測定手段は、複数の色要素毎のイメージの測定結果を得て、これらの測定結果の論理和をとることによりバーおよびスペースの幅を求める。制御部111はさらに、バー幅補正手段として、この実バー幅情報に基づいて後述するバーコード補正値1100を生成し、記憶部112に格納する。記憶部112には、後述する補正テーブル1000も記憶される。
【0054】
バー幅補正手段は、テストチャート600の測定結果に基づいて、印刷後のバーコードのバー幅とスペース幅が規定の大きさとなるように、印刷時に設定されるべきバー幅とスペース幅のドット数をバーコード補正値として求めるものである。より具体的には、当該種類の印刷後のバーコードのすべてのバーおよびスペースの幅が規定の大きさに一致または近づくように、印刷時に設定されるべきバー幅とスペース幅のドット数を選定する。
【0055】
図10は、テストチャート600の読取および解析から得られた、ドット数とバー幅およびスペース幅との関係の測定結果に基づいて作成されたグラフから推測した、ドット数とバーおよびスペースとの関係を、ドット数1ドットから25ドットまで1ドットきざみで記載した補正テーブル1000を示している。ノズル列に平行なバーおよびスペースとの関係と、ノズル列に垂直なバーおよびスペースとの関係とを含む。このデータは、テストチャート600をイメージスキャナ110で読み取ることにより得られた画像データ上の、指示値としての各バー幅のドット数(整数)に対して、実際に紙面上に着弾し滲んだバー幅およびスペース幅の実バー幅(単位はマイクロメートル)を測定することによって得られた結果およびこの結果に基づく推測値を示している。ここでは、上述した例に対応して、1〜10の各ドット数の測定結果と、11〜25の各ドット数についての推測値が得られている。具体的には、例えば、6ドットで構成したノズル列方向に垂直なバー幅は、紙面上で295μmであり、同じ6ドットのスペース幅は165μmになっていることが示されている。また、10ドットで構成したバー幅は、紙面上で465μmであり、同じ10ドットのスペース幅は335μmになっていることが示されている。なお、図10に示したデータは図8に示したグラフの結果と一致するべきものであるが、本例では便宜上、その整合を図ってはいない。
【0056】
図11(a)(b)は、図9のバーコード補正値1100の例として、種類の異なるバーコードについてのバーコード構成情報を格納したバーコード構成情報テーブル1101,1102を示している。
【0057】
1次元バーコードは、大きく分けてバイナリレベルとマルチレベルの2種類に分類できる。バイナリレベルのバーコードとは、2種類の幅のバーと2種類の幅のスペースで構成されたバーコードであり、両種類の幅は1:2の比率で構成される。代表的なバーコードとしては、Code39、ITFなどがある。マルチレベルのバーコードとは、4種類の幅のバーと4種類の幅のスペースで構成されたバーコードであり、全種類の幅は1:2:3:4の比率で構成される。代表的なバーコードとして、JAN、EAN128、Code128などがある。例えば、マルチレベルのバーコードを補正する場合、図10に示したバーとスペースの補正テーブル1000から、実際の幅サイズが1:2:3:4となるバーの各ドット数を選び、且つスペースについてはバーと実サイズ幅が同じとなるドット数を選ぶことによって、適正なバーコードの補正値を決定し、読取り品位の高い適正なバーコードを生成することが可能である。
【0058】
以下、バイナリレベルのバーコードCode39及びマルチレベルのバーコードEAN128のノズル列に対して垂直に構成されるバーから構成されるバーコードの補正値決定方法を具体的に説明する。
【0059】
図11(a)に示したバーコード構成情報テーブル1101は、規格上、細バー幅(NB)5ドットの場合のCode39の補正されたドット構成を示し、「垂直」「平行」の両方の向きについてのデータを有する。この補正ドット構成は次のようにして得られる。細バー幅5ドットは、図10に示した補正テーブル1000から、そのバー幅は250μmである。細スペースは、細バーと同じ250μmとなるドット数を補正テーブル1000から探し出すことにより、8ドットと決定される。これにより、5ドットで構成されたバー幅と8ドットで構成されたスペース幅が、紙面上の実サイズとしては同じになる。太バーおよび太スペースは、細太比1:2により、250μm×2=500μmに最も近い幅に対応するドット数を補正テーブル1000から探し出し、実際のバー幅が500μmに最も近い505μmである太バー11ドット、実際のスペース幅が500μmに最も近い505μmである太スペース14ドットと決定される。これにより、バーコード読取り率の重要ファクターの一つである『細バー×2=太バー』および『バー幅=スペース』という規格条件を紙面上の実サイズで保証することができる。
【0060】
図11(b)に示したバーコード構成情報テーブル1102は、規格上、細バー幅(NB)4ドットの場合のEAN128の補正されたドット構成を示し、「垂直」「平行」の両方の向きについてのデータを有する。例えば「垂直」の場合、補正ドット構成は次のようにして得られる。細バー幅4ドットは、補正テーブル1000から実際のバー幅で210μmなので、1:2:3:4となる4値の各バーのバー幅は、計算上、それぞれ210μm、420μm、630μm、840μmである。そこで、上記と同様の手法で、図10の補正テーブル1000から各々のバー幅となるドット数は、4ドット、9ドット、14ドット、19ドットと決定される。同様に、210μm、420μm、630μm,840μmのスペース幅は、7ドット、12ドット、17ドット、22ドットと決定できる。これにより、バーコード読取り率の重要ファクターの一つである『1:2:3:4の比率』および『バー幅=スペース』という規格条件を、紙面上の実サイズで保証することができる。「平行」の場合にも同様である。
【0061】
情報処理装置100の記憶部112に、これらのバーコード構成情報テーブル1101,1102はバーコードの種別情報とともに保存される。
【0062】
図12は、本実施の形態のバーコード生成システムの動作を説明する為の画面例を示している。
【0063】
情報処理装置100上で実行されるバーコード生成アプリケーションの入力画面1200は、バーコードの種類を選択肢の中から選択するバーコード種類選択欄1201と、バーコードの向き(方向)を選択する選択欄1202と、基準となる要素の幅情報としての細バー(ナローバー)のドット数を入力するドット数入力欄1203と、バーコード読取装置の光の波長の入力欄1204と、テストチャート600を読み取ることを指示する「チャート読込」ボタン1205と、終了指示を受けるための「終了」ボタン1207とで構成される。
【0064】
バーコード生成アプリケーションは、「チャート読込」1205がユーザにより指示されたとき、イメージスキャナ110にセットされたテストチャート600の記録出力を読み取り、読み取ったイメージに基づく各要素幅のドット数と実測値に基づいて図10に示したような補正テーブル1000を作成する。この際、バー幅の判定用の閾値は入力欄1204で指定された波長に応じた値となる。この閾値については後述する。さらに、入力画面1200でユーザが指定したバーコード種類と細バーのドット数に合致した適正なバーコード補正値を求めて、バーコード構成情報画面1210を出力する。バーコード構成情報画面1210は、バイナリレベルのバーコードの場合は、バーの方向の選択結果に応じて、その細バー(ナローバー)1211、細スペース(ナロースペース)1213、太バー(ワイドバー)1212、太スペース(ワイドスペース)1214の各表示欄に適正な構成ドット数を表示する。バーコードの向きの選択欄1202でバーコードのバーの方向(ノズル列に垂直または平行)を選択することができる。「終了」ボタン1206の指示に応じて、情報処理装置100内の記憶部112に当該バーコードの構成情報(適正な構成ドット数等)が記憶される。記憶された情報は以降のバーコード記録に利用される。また、バーコード構成情報画面1210上の各表示欄はユーザによる修正入力を受け付けるようにしてもよい。例えば、バーコードの品位は低下するが、バーコードの小サイズ化のためにユーザがドット幅を例えば1ドット小さくするような微調整入力を行えるようにしてもよい。また、選択欄1202を設けずに「垂直」「平行」の両方のデータを同時に表示するようにしてもよい。
【0065】
なお、バーコード生成アプリケーションがバーコード記録機能を備えない場合には、バーコード構成情報画面1210はユーザが補正値を確認するために利用することができる。確認した後は、一般的なバーコード生成ソフトウェアのドット構成入力欄(図示せず)に、それらのバー幅およびスペース幅の値を設定することができる。その結果、読取り率の高い適正なバーコード生成が可能となる。
【0066】
マルチレベルのバーコードの場合には、図示しないが同様の画面1210に、4値の各バー/スペースの表示欄に適正な構成ドット数を表示する。
【0067】
同様にノズル列に対して平行なバーコードを生成する場合は、それに対応した補正テーブルを参照してバーコードの生成を行うことにより、バーコードの方向に対応したバーコードの生成を行うことが可能になる。
【0068】
図13は、本実施の形態のバーコード生成システムにおける補正テーブル1000の作成に関連した処理を表したフローチャートである。このフローチャートの処理の実行手順を表すプログラムは記憶部112(図2)内に格納され、制御部111がこれを解釈実行することにより、この処理が実現される。
【0069】
図13の処理の前にユーザは所定の操作によりテストチャート600を印刷装置200で印刷しているものとする。ユーザにより印刷済みのテストチャートがイメージスキャナ110にセットされた状態で、入力画面1200上でのユーザによるバーコード種類、向き、ナローバー幅、光源の波長の設定を受ける(S11)。その後、「チャート読込」ボタン1203の押下に応じて(S12)、テストチャート600を読み取る(S13)。テストチャート600に印刷された各ドット数に対するバーおよびスペースの幅(μm)を、その読取イメージに基づいて当該光源の波長に応じた閾値で測定する(S14)。この測定結果からドット数とその幅の長さの関係式を求めグラフを作成する(S15)。さらにこのグラフから、1ドット刻みで各ドット数に対応するバー、スペースの幅の値(μm)を算出する(S16)。この結果に基づいて、ドット数と幅の補正テーブル1000(図10)を作成する(S17)。作成された補正テーブル1000は記憶部112に記憶され、実際のバーコード生成の際に使用される。
【0070】
さらに、読取可能なバーコードを生成可能でない場合には(S18,No)、すなわち、生成したバーコードの読取り品位が所定の判断基準に従って所定のレベルに達しないと判断された場合には、ユーザに対して警告を行って本処理を終了する(S21)。この警告は、テキストや記号、画像等、任意のメッセージの表示または音によるものが考えられる。
【0071】
読取可能なバーコードを生成可能と判断された場合には(S18,Yes)、当該バーコードのバーおよびスペースの幅の適正ドット数を決定し(S19)、バーコード構成情報画面1210に適正ドット数を表示する(S20)。
【0072】
ここで、図14に、バーコード読取装置に用いられる光源の波長と、各色要素(ここではシアン(C)とマゼンタ(M)とイエロー(Y))の反射率の関係を示す。
【0073】
シアン(C)とマゼンタ(M)とイエロー(Y)の波長と反射率との関係(1401、1402、1403)はそれぞれ異なる。例えば、光源の波長が650nmのバーコード読取装置の場合、マゼンタ(M)とイエロー(Y)について、それらのバーは反射率が高いため誤ってスペースと判断される。一方、シアン(C)については、その色のバーは反射率が低いため正しくバーと判断される。
【0074】
また、光源の波長が450nmのバーコード読取装置の場合、シアン(C)は反射率が低いため、その色のバーは正しくバーと判断され、マゼンタ(M)とイエロー(Y)については反射率が高いため、その色のバーは誤ってスペースと判断される。
【0075】
このように、バーコード読取装置の光源の波長によって読取れる色が異なるため、テストチャートの印字領域と非印字領域を判別する閾値は光源の波長に対応させる必要がある。つまり、バーコード読取装置がバーとスペースとを見分ける基準と、テストチャートの印字領域と非印字領域とを見分ける基準を同一にする必要がある。
【0076】
また、基準を同一にすることで、カラーバーコードの補正、またはバーコードを印刷する用紙がカラーの場合でも、テストチャートの印字領域と非印字領域の判別を正確に行うことが可能となる。
【0077】
図15に、閾値テーブル1500の構成例を示す。閾値テーブル1500は、テストチャートの読取出力に対して、その印字領域であるバーと非印字領域であるスペースとを判別する閾値を決定するためのデータテーブルである。この閾値テーブル1500は、テストチャートのバー幅及びスペース幅の実ドットサイズ(単位マイクロメートル)を測定する際、生成したバーコードを読み取るバーコードリーダや検証機等のバーコード読取装置に合わせて測定を行うために、その光源の波長毎に適正な閾値を対応付けている。つまり、ユーザが入力した光源の波長に近い波長を波長欄1501から検索し、その波長と対応した閾値を閾値欄1502から検索する。これにより得られた閾値によって色要素毎の測定値からその領域が印字領域と非印字領域を判別する。
【0078】
図16は、テストチャートをイメージスキャナで読み取ったCMYデータに対して、印字領域と非印字領域とを判別する(つまり2値化する)処理のフローチャートを示している。
【0079】
まず、イメージスキャナによるテストチャートのスキャンによりCMYデータを読み込む(S31)。ついで、このCMYデータ用のそれぞれの閾値を閾値テーブル1500(図15)から検索し、決定する(S32)。
【0080】
そこで、あるピクセルに着目し(S33)、そのピクセルのシアン(C)とマゼンタ(M)とイエロー(Y)のデータの内、いずれか1つでもデータがそれぞれの閾値を上回っているかを判断する(S34)。このことは複数の色要素についての測定結果の論理和をとることに他ならない。
【0081】
判断の対象となるピクセルは、バーコードが存在する範囲(領域)が予め分かっていれば、その範囲に限ってよい。
【0082】
CMYデータのいずれか1つでも当該閾値を上回っていた場合に、そのピクセルを印字領域と決定する(S35)。いずれも閾値を上回っていなかった場合、そのピクセルを非印字領域と決定する(S36)。
【0083】
全データの判断が終了するまで(S37)、ピクセル位置を更新し(S38)、ステップS33に戻って、上記の処理を繰り返して実行する。
【0084】
このような処理によって、読み込み時は3色でそれぞれ複数階調であったデータを、印字領域なら“1”、非印字領域なら“0”の2値データに変換することができる。また、閾値テーブル1500を使用することにより、バーコード読取装置と同じ判断基準で印字領域と非印字領域の判別が可能となり、黒以外のインク色のバーコードやカラー用紙でも補正することが可能となる。
【0085】
以上、本発明の好適な実施の形態について説明したが、上記で言及した以外にも種々の変形、変更を行うことが可能である。例えば、上記テストチャートでは、1〜10ドットで構成されたバー及びスペースを例に挙げたが、ドット数と実サイズの関係は、図8のグラフに示したように概略比例関係にあり、例えば5、10ドットなど、少なくとも2点あれば所期の目的・効果が達成できる。逆に、より品位の高いバーコードを生成する為に1〜100ドットとするなど、ドット構成範囲を広げてもよい。
【0086】
また実施の形態では、図12の入力画面1200に示したように、バーコードの基準要素としてナローバーのサイズを入力してバーコードを生成したが、バーコードの描画領域を入力して指定し、この指定された領域内に収まる適正なバーコードを生成するようにしてもよい。この際、指定された領域内では読取ランクを満足し得るバーコードが生成できない場合には、その旨をユーザに報知することが望ましい。また、上記説明では、出力情報としてバーコードの各要素幅の構成ドット数を例に挙げたが、バーコードのビットマップデータでもよい。
【0087】
また、上記説明では、テストチャートの読取装置としてイメージスキャナを採用したが、バーコードリーダやバーコード検証機などバーコードに特化した光学的な検出器を用いてもよい。
【0088】
また、閾値テーブル1500をCMYカラーモデル100階調で表現したが、色の階調を表現できる方法であれば他の表現方法でもよい。
【0089】
テストチャートの印字領域と非印字領域を判別する方法として閾値テーブル1500を使用したが、算術によって閾値を求めてもよい。
【0090】
また、バーコード(カラーバーコードを含む)とテストチャートのバーの色、そして、バーコードを印刷する用紙(カラー用紙を含む)とテストチャートを印刷する用紙の色は、それぞれ、同一または近い色であることが望ましい。
【0091】
上記実施の形態で説明した機能をコンピュータで実現するための、コンピュータにインストールされるプログラム自体およびそれを記憶する記憶媒体も本発明を構成するものである。なお、プログラムとしては、プロセッサが直接に解釈し実行可能なオブジェクトコードプログラム、および、インタプリタにより実行されるプログラム、OSまたはアプリケーション上で動作するスクリプトデータ形式のプログラム等、プログラムの形態は問わない。また、プログラムを供給するための記憶媒体としては、例えば、磁気記憶媒体(フレキシブルディスク、ハードディスク、磁気テープ等)、光ディスク(MOやPD等の光磁気ディスク、CD−ROM、CD−R、CD−RW、DVD−ROM、DVD−RAM、DVD−R、DVD−RW、DVD+RW等)、半導体ストレージ、紙テープ、などを挙げることができる。
【図面の簡単な説明】
【0092】
【図1】本発明の実施の形態におけるバーコード生成システムの概略図である。
【図2】図1のシステムにおける情報処理装置と印刷装置の制御ハードウェアの構成例を示すブロック図である。
【図3】記録ユニットで、一般的なバーコードのような黒バーと白バーにて構成されるパターンを記録した場合の概略図である。
【図4】インクジェット印刷装置における副滴が用紙に着弾するまでの時間経過に応じた状態を表した模式図である。
【図5】インクジェット印刷装置においてノズル列に対して平行および垂直のバーを有するバーコードを構成した際に発生する副滴の状態を示す図である。
【図6】本発明の実施の形態における、バーの太り細りの状態が確認可能なテストパターンの構成例を示した図である。
【図7】本発明の実施の形態における、スペースの太り細りの状態が確認可能なテストパターンの構成例を示した図である。
【図8】本発明の実施の形態における、テストチャートのバーおよびスペースの印刷時のドット数に対する実際の印刷結果のバーおよびスペースの幅の測定値を示したグラフである。
【図9】本発明の実施の形態におけるバーコード生成システムの外観構成例を示す図である。
【図10】本発明の実施の形態における補正テーブルの構成例を示した図である。
【図11】図9のバーコード補正値の例として、種類の異なるバーコードについてのバーコード構成情報を格納したバーコード構成情報テーブルの構成例を示した図である。
【図12】本発明の実施の形態のバーコード生成システムの動作を説明する為の画面例を示した図である。
【図13】本発明の実施の形態のバーコード生成システムにおける補正テーブルの作成に関連した処理を表したフローチャートである。
【図14】バーコード読取装置に用いられる光源の波長と、各色要素の反射率の関係を示すグラフである。
【図15】本発明の実施の形態における閾値テーブルの構成例を示した図である。
【図16】本発明の実施の形態におけるテストチャートをイメージスキャナで読み取ったCMYデータに対して、印字領域と非印字領域とを判別する処理のフローチャートである。
【符号の説明】
【0093】
100…情報処理装置
101…記録ユニット
102…インタフェースケーブル
103…用紙
104…エンコーダ
105…1次元バーコード
106…搬送ユニット
110…イメージスキャナ
111…制御部
112…記憶部
113…表示部
114…操作部
115…インタフェース
200…印刷装置
201…制御部
205…イメージメモリ
206…各種モータ
208…USBコントローラ
209…制御回路
210…ヘッド駆動回路
211…モータドライバ
214…記録ヘッド
600…テストチャート
600n…テストパターン
600p…テストパターン
806…テストチャート画像データ
1000…補正テーブル
1100…バーコード補正値
1101,1102…バーコード構成情報テーブル
1200…入力画面
1210…バーコード構成情報画面
1500…閾値テーブル

【特許請求の範囲】
【請求項1】
バーコードを印刷するためのバーコード構成情報を生成するバーコード生成システムであって、
バーコード用のバーおよびスペースを、それぞれ複数の異なるドット数の幅で印刷するためのテストチャートの画像データを記憶する手段と、
前記テストチャートの画像データを特定の印刷装置で印刷して得られたテストチャートの読取イメージに基づいて、前記バーコード用のバーおよびスペースの幅を測定する測定手段と、
前記測定手段の測定結果に基づいて、印刷後のバーコードのバー幅とスペース幅が規定の大きさとなるように、印刷時に設定されるべきバー幅とスペース幅のドット数をバーコード補正値として求めるバー幅補正手段とを備え、
前記測定手段は、複数の色要素毎のイメージの測定結果を得て、これらの測定結果の論理和をとることによりバーおよびスペースの幅を求める
ことを特徴とするバーコード生成システム。
【請求項2】
前記測定手段は、バーコード読取装置の光源の波長に対して、複数の色要素毎の読取出力を2値化するための閾値を対応付けた閾値テーブルを有する請求項1に記載のバーコード生成システム。
【請求項3】
前記バーコード読取装置の光源の波長を入力する手段を備えた請求項2に記載のバーコード生成システム。
【請求項4】
前記バー幅補正手段は、前記テストチャートに印刷したバーおよびスペースの幅のドット数と前記バーおよびスペースの幅の実測値との関係に基づいて、ドット数と前記バーおよびスペースの幅とを対応づけた補正テーブルを生成する請求項1に記載のバーコード生成システム。
【請求項5】
前記バー幅補正手段は、バーコードの種類および基準となる要素の幅情報の入力を受け付ける手段を有し、前記受け付けたバーコードの種類および基準となる要素の幅情報に基づいて、前記補正テーブルを参照し、当該種類の印刷後のバーコードのすべてのバーおよびスペースの幅が規定の大きさに一致または近づくように、印刷時に設定されるべきバー幅とスペース幅のドット数を選定する請求項4に記載のバーコード生成システム。
【請求項6】
前記印刷装置はインクジェット記録方式を採用した印刷装置である請求項1〜5のいずれかに記載のバーコード生成システム。
【請求項7】
前記バーは、縦方向に互いに平行に伸びる複数のバーと、横方向に互いに平行に伸びる複数のバーとを含み、前記補正テーブルおよびバーコード補正値は縦方向と横方向とで別個に生成することを特徴とする請求項4に記載のバーコード生成システム。
【請求項8】
前記テストチャートに記録されるバーおよびスペースは、各々、少なくとも2種類の幅を有する請求項1〜7のいずれかに記載のバーコード生成システム。
【請求項9】
バーコードを印刷するためのバーコード構成情報を生成するバーコード生成プログラムであって、
前記テストチャートの画像データを特定の印刷装置で印刷して得られたテストチャートの読取イメージに基づいて、複数の色要素毎のイメージの測定結果を得て、これらの測定結果の論理和をとることによりバーおよびスペースの幅を測定するステップと、
この測定結果に基づいて、印刷後のバーコードのバー幅とスペース幅が規定の大きさとなるように、印刷時に設定されるべきバー幅とスペース幅のドット数をバーコード補正値として求めるステップと、
をコンピュータに実行させることを特徴とするバーコード生成プログラム。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図10】
image rotate

【図11】
image rotate

【図13】
image rotate

【図14】
image rotate

【図15】
image rotate

【図16】
image rotate

【図9】
image rotate

【図12】
image rotate


【公開番号】特開2010−89412(P2010−89412A)
【公開日】平成22年4月22日(2010.4.22)
【国際特許分類】
【出願番号】特願2008−262659(P2008−262659)
【出願日】平成20年10月9日(2008.10.9)
【出願人】(000208743)キヤノンファインテック株式会社 (1,218)
【Fターム(参考)】