(57)【要約】【課題】二次元コードの周りに４セル分以上の白色のマージンを確保しなくとも、二次元コード読取装置による二次元コードの認識率を向上させる。【解決手段】バイナリデータがセル化され、当該セルが縦横の２方向に配列されることで二次元マトリックス状に構成されたデータ要素領域ＭＤＡと、データ要素領域を囲む破線１０、２０、３０、４０から成る矩形部１と、矩形部を成す破線の各線分から垂直に延出された見出し線とから構成されると共に、破線の線分及び見出し線で形成されデータ要素領域の切り出しと位置決めを行うためのデータ認識用Ｔ字形マーカを破線の線分の数だけ有する二次元コードを読み取ることで、その二次元コードの画像データからデータ認識用Ｔ字形マーカを検出して、その検出した数がデータ要素領域の切り出しと位置決めを行うことができる予め定められた最低数に達しているか否かを判定する。【選択図】図１
2011070477.tif 000002
【特許請求の範囲】
【請求項１】
バイナリデータがセル化され、当該セルが縦横の２方向に配列されることで二次元マトリックス状に構成されたデータ要素領域と、前記データ要素領域を囲む破線から成る矩形部と、前記矩形部を成す前記破線の各線分から垂直に延出された見出し線とから構成されると共に、前記破線の前記線分及び前記見出し線でＴ字形に形成され前記データ要素領域の切り出しと位置決めを行うためのデータ認識用Ｔ字形マーカを有する二次元コードを読み取ることで、前記データ要素領域に記録された情報を得ることができる二次元コード読取方法であって、
前記二次元コードの画像データを取得する第１のステップと、
前記第１のステップで取得した前記画像データからＴ字形状の連続したピクセル領域を検出する第２のステップと、
前記第２のステップで検出した前記Ｔ字形状の連続したピクセル領域が、前記データ認識用Ｔ字形マーカであるか否かを判定する第３のステップと、
前記第３のステップで前記データ認識用Ｔ字形マーカと判定された前記Ｔ字形状の連続したピクセル領域の数が、前記データ要素領域の前記切り出しと前記位置決めを行うことができる予め定められた最低数に達しているか否かを判定する第４のステップと、
前記第４のステップで前記データ認識用Ｔ字形マーカと判定された前記Ｔ字形状の連続したピクセル領域の数が、前記切り出しと前記位置決めを行うことができる予め定められた最低数に達していると判定すると、前記データ認識用Ｔ字形マーカと判定された前記Ｔ字形状の連続したピクセル領域群を使用して前記データ要素領域のセル配列を検出する第５のステップと、
前記第５のステップで検出した前記データ要素領域のセル配列に基づき、当該データ要素領域から前記情報を取得する第６のステップとを有することを特徴とする二次元コード読取方法。
【請求項２】
前記第３のステップは、
前記第２のステップで検出した前記Ｔ字形状の連続したピクセル領域の幅及び長さが、ピクセル数を基準にして前記データ認識用Ｔ字形マーカの幅及び長さの予め定められた誤差範囲内にあるか否かを判定するステップと、
前記第２のステップで検出した前記Ｔ字形状の連続したピクセル領域の幅及び長さが、前記データ認識用Ｔ字形マーカの幅及び長さの予め定められた誤差範囲内にある場合には、当該誤差範囲内にあるＴ字形状の連続したピクセル領域におけるすべてのピクセルのＸ座標及びＹ座標の平均値である検出用基準センターポイントが、当該誤差範囲内にあるＴ字形状の連続したピクセル領域内にあるか否かを判定するステップとを有することを特徴とする請求項１記載の二次元コード読取方法。
【請求項３】
前記第３のステップは、
前記データ認識用Ｔ字形マーカを、当該データ認識用Ｔ字形マーカの領域におけるすべてのピクセルのＸ座標及びＹ座標の平均値であるマーカ用基準センターポイントから、予め定められた領域分離用セル数で前記見出し線の先端部、及び前記破線の前記線分の両端部の３領域に分離するにあたり、当該３領域のサイズを前記見出し線の先端部の大きさが一番小さく、前記破線の前記線分の両端部が同一の大きさになるように、予め前記３領域の大きさを求めておき、
請求項３のステップで、前記誤差範囲内にあるＴ字形状の連続したピクセル領域内に前記検出用基準センターポイントがある場合には、前記誤差範囲内にあるＴ字形状の連続したピクセル領域を、前記検出用基準センターポイントから前記領域分離用セル数で、当該誤差範囲内にあるＴ字形状の連続したピクセル領域の見出し線の先端部、及び破線の線分の両端部の３領域に分離するにあたり、当該３領域のサイズを前記見出し線の前記先端部の大きさが一番小さく、前記破線の前記線分の前記両端部が同一の大きさになるように、前記３領域の大きさを求めて、前記誤差範囲内にあるＴ字形状の連続したピクセル領域の前記３領域それぞれの大きさが、前記ピクセル数を基準にして前記データ認識用Ｔ字形マーカの前記３領域それぞれの予め定められた誤差範囲内にあるか否かを判定するステップを有することを特徴とする請求項２記載の二次元コード読取方法。
【請求項４】
前記第３のステップは、
請求項４のステップで、前記誤差範囲内にあるＴ字形状の連続したピクセル領域の前記３領域それぞれの大きさが、前記データ認識用Ｔ字形マーカの前記３領域それぞれの予め定められた誤差範囲内にある場合には、当該誤差範囲内にあるＴ字形状の連続したピクセル領域の当該３領域それぞれにおけるすべてのピクセルのＸ座標及びＹ座標の平均値であるセンターポイントが、対応する各領域内から外れているか否かを判定するステップを有することを特徴とする請求項３記載の二次元コード読取方法。
【請求項５】
前記第３のステップは、
請求項５のステップで、前記誤差範囲内にあるＴ字形状の連続したピクセル領域の前記３領域それぞれが前記センターポイントを領域内に有している場合には、前記誤差範囲内にあるＴ字形状の連続したピクセル領域の前記検出用基準センターポイントと、前記誤差範囲内にあるＴ字形状の連続したピクセル領域における前記見出し線の前記先端部の前記領域が有する前記センターポイントとを通過する第１の直線を求め、前記誤差範囲内にあるＴ字形状の連続したピクセル領域における前記破線の前記線分の前記両端部の前記各領域が有する前記センターポイントを通過する第２の直線を求めて、前記第１の直線及び前記第２の直線による所定位置の挟角が予め定められた角度範囲内か否かを判定するステップを有することを特徴とする請求項４記載の二次元コード読取方法。
【請求項６】
前記第３のステップは、
請求項６のステップで、前記第１の直線及び前記第２の直線の所定位置の挟角が予め定められた角度範囲内にある場合には、当該第１の直線及び当該第２の直線を前記データ認識用Ｔ字形マーカの前記幅まで太くして、前記ピクセル数を基準にして当該データ認識用Ｔ字形マーカの当該幅の前記予め定められた誤差範囲から外れる場合には、当該データ認識用Ｔ字形マーカの対象から除外するステップを有することを特徴とする請求項５記載の二次元コード読取方法。
【請求項７】
請求項１乃至請求項６のうち何れか１項に記載の二次元コード読取方法を実施するための二次元コードであって、前記すべてのデータ認識用Ｔ字形マーカは、前記データ要素領域に対して離れていることを特徴とする二次元コード。
【請求項８】
請求項１乃至請求項６のうち何れか１項に記載の二次元コード読取方法によって実現するためのプログラムを記憶したコンピュータ読み取り可能な記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、カメラ等の画像入力装置で取り込んだ二次元コード画像から二次元コードを読み取るための二次元コード読取方法及び該二次元コード読取方法で読み取るための二次元コード並びに該二次元コード読取方法を記録した記録媒体に関する。
【背景技術】
【０００２】
従来から、大量のデータを記録することが可能で、読み取り精度が高くなる二次元コード及び二次元コードの読取方法が開示されている（例えば、特許文献１参照。）。この二次元コードは図４（Ａ）に示すように、二進化されたデータが明暗の正方形にセル化され、当該セルが縦横の２方向に配列されることで二次元マトリックス状に構成されたデータ要素領域ＭＤＡと、データ要素領域ＭＤＡを囲む破線１０、２０、３０、４０から成る矩形部１と、矩形部１を成す破線１０の線分１１、１２、１３、１４、１５、破線２０の線分２１、２２、２３、２４、２５、破線３０の線分３１、３２、３３、３４、３５、破線４０の線分４１、４２、４３、４４、４５からそれぞれ垂直に延出された見出し線ＩＬ１１、ＩＬ１２、ＩＬ１３、ＩＬ１４、ＩＬ１５、ＩＬ２１、ＩＬ２２、ＩＬ２３、ＩＬ２４、ＩＬ２５、ＩＬ３１、ＩＬ３２、ＩＬ３３、ＩＬ３４、ＩＬ３５、ＩＬ４１、ＩＬ４２、ＩＬ４３、ＩＬ４４、ＩＬ４５とから構成されている。
【０００３】
また、矩形部１の隣接する２つの破線１０、２０の各線分１１、１２、１３、１４、１５、２１、２２、２３、２４、２５から延出した見出し線ＩＬ１１、ＩＬ１２、ＩＬ１３、ＩＬ１４、ＩＬ１５、ＩＬ２１、ＩＬ２２、ＩＬ２３、ＩＬ２４、ＩＬ２５は、データ要素領域Ｇ方向に向けて当該データ要素領域ＭＤＡに重ならないように配置され、この２つの破線１０、２０とは別の隣接する２つの破線３０、４０の各線分３１、３２、３３、３４、３５、４１、４２、４３、４４、４５から延出した見出し線ＩＬ３１、ＩＬ３２、ＩＬ３３、ＩＬ３４、ＩＬ３５、ＩＬ４１、ＩＬ４２、ＩＬ４３、ＩＬ４４、ＩＬ４５は、矩形部１の外方向に向けて配置されている。
【０００４】
このように構成された二次元コードの読取方法は、破線１０と破線２０との交点から線分が突出していないので、この交点をデータ要素領域ＭＤＡが有する各データセルの位置座標を特定するための二次元コードの原点とすることができ、また、見出し線ＩＬ１１、ＩＬ１２、ＩＬ１３、ＩＬ１４、ＩＬ１５、ＩＬ２１、ＩＬ２２、ＩＬ２３、ＩＬ２４、ＩＬ２５、ＩＬ３１、ＩＬ３２、ＩＬ３３、ＩＬ３４、ＩＬ３５、ＩＬ４１、ＩＬ４２、ＩＬ４３、ＩＬ４４、ＩＬ４５によってデータ要素領域ＭＤＡの各データセルの位置座標を特定することができる。したがって、データ要素領域ＭＤＡの中に切り出しや位置決めのためのシンボルが存在しなくても、大容量の情報を高密度で格納するデータ要素領域ＭＤＡを読み取ることができる。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２００３−７６９６２号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
しかしながら、背景技術に記載した二次元コードの読取方法では、二次元コードの周りに４セル分以上の白色のマージン（余白）を確保しないと、二次元コードの近くにある文字、デザイン等をデータセルとして認識して二次元コード読取装置で読み取りにくくなり、二次元コード読取装置による二次元コードの認識率を低下させる難点があった。
【０００７】
本発明は、このような従来の難点を解消するためになされたもので、二次元コードの周りに４セル分以上の白色のマージンを確保しなくとも、二次元コード読取装置による二次元コードの認識率を向上させる二次元コード読取方法及び該二次元コード読取方法で読み取るための二次元コード並びに該二次元コード読取方法を記録した記録媒体を提供することを目的とする。
【課題を解決するための手段】
【０００８】
上述の目的を達成する本発明の第１の態様である二次元コード読取方法は、バイナリデータがセル化され、当該セルが縦横の２方向に配列されることで二次元マトリックス状に構成されたデータ要素領域と、データ要素領域を囲む破線から成る矩形部と、矩形部を成す破線の各線分から垂直に延出された見出し線とから構成されると共に、破線の線分及び見出し線でＴ字形に形成されデータ要素領域の切り出しと位置決めを行うためのデータ認識用Ｔ字形マーカを破線の線分の数だけ有する二次元コードを読み取ることで、データ要素領域に記録された情報を得ることができる二次元コード読取方法であって、二次元コードの画像データを取得する第１のステップと、第１のステップで取得した画像データからＴ字形状の連続したピクセル領域を検出する第２のステップと、第２のステップで検出したＴ字形状の連続したピクセル領域が、データ認識用Ｔ字形マーカであるか否かを判定する第３のステップと、第３のステップでデータ認識用Ｔ字形マーカと判定されたＴ字形状の連続したピクセル領域の数が、データ要素領域の切り出しと位置決めを行うことができる予め定められた最低数に達しているか否かを判定する第４のステップと、第４のステップで切り出しと位置決めを行うことができる予め定められた最低数に達していると判定すると、データ認識用Ｔ字形マーカと判定されたＴ字形状の連続したピクセル領域群を使用してデータ要素領域のセル配列を検出する第５のステップと、第５のステップで検出したデータ要素領域のセル配列に基づき、当該データ要素領域から情報を取得する第６のステップとを有するものである。
【０００９】
このような第１の態様である二次元コード読取方法によれば、Ｔ字形状の連続したピクセル領域をイメージデータとして検出して、標準であるデータ認識用Ｔ字形マーカと形状を比較するだけで、データ要素領域の周りに当該領域の切り出しと位置決めに応じて複数配設されているＴ字形状の連続したピクセル領域群を検出することができるので、二次元コードの周りに４セル分以上の白色のマージンを確保しなくとも、二次元コード読取装置による二次元コードの認識率を向上させることが可能になる。
【００１０】
本発明の第２の態様は第１の態様である二次元コード読取方法において、第３のステップは、第２のステップで検出したＴ字形状の連続したピクセル領域の幅及び長さが、ピクセル数を基準にしてデータ認識用Ｔ字形マーカの幅及び長さの予め定められた誤差範囲内にあるか否かを判定するステップと、第２のステップで検出したＴ字形状の連続したピクセル領域の幅及び長さが、データ認識用Ｔ字形マーカの幅及び長さの予め定められた誤差範囲内にある場合には、当該誤差範囲内にあるＴ字形状の連続したピクセル領域におけるすべてのピクセルのＸ座標及びＹ座標の平均値である検出用基準センターポイントが、当該誤差範囲内にあるＴ字形状の連続したピクセル領域内にあるか否かを判定するステップとを有するものである。
【００１１】
このような第２の態様である二次元コード読取方法は、Ｔ字形状の連続したピクセル領域のイメージデータ全体でデータ認識用Ｔ字形マーカを検索しているので、Ｔ字形状の連続したピクセル領域の幅及び長さを判定することにより、データ認識用Ｔ字形マーカの大きさで形成されているピクセル領域を検出し、さらに検出用基準センターポイントが、そのピクセル領域内にあるか否かを判定することにより、ある程度Ｔ字形状を保っているものを検出することができるので、データ要素領域の周りに当該領域の切り出しと位置決めに応じて複数配設されているＴ字形状の連続したピクセルの領域群を、背景技術に記載した二次元コードの読取方法より精度よく検出することができる。
【００１２】
本発明の第３の態様は第２の態様である二次元コード読取方法において、第３のステップは、データ認識用Ｔ字形マーカを、当該データ認識用Ｔ字形マーカの領域におけるすべてのピクセルのＸ座標及びＹ座標の平均値であるマーカ用基準センターポイントから、予め定められた領域分離用セル数で見出し線の先端部、及び破線の線分の両端部の３領域に分離するにあたり、当該３領域のサイズを見出し線の先端部の大きさが一番小さく、破線の線分の両端部が同一の大きさになるように、予め３領域の大きさを求めておき、第３の態様におけるステップで、誤差範囲内にあるＴ字形状の連続したピクセル領域内に検出用基準センターポイントがある場合には、誤差範囲内にあるＴ字形状の連続したピクセル領域を、検出用基準センターポイントから領域分離用セル数で、当該誤差範囲内にあるＴ字形状の連続したピクセル領域の見出し線の先端部、及び破線の線分の両端部の３領域に分離するにあたり、当該３領域のサイズを見出し線の先端部の大きさが一番小さく、破線の線分の両端部が同一の大きさになるように、３領域の大きさを求めて、誤差範囲内にあるＴ字形状の連続したピクセル領域の３領域それぞれの大きさが、ピクセル数を基準にしてデータ認識用Ｔ字形マーカの３領域それぞれの予め定められた誤差範囲内にあるか否かを判定するステップを有するものである。
【００１３】
このような第３の態様である二次元コード読取方法によれば、第２の態様よりＴ字形状を精度よく検出することができるので、データ要素領域の周りに当該領域の切り出しと位置決めに応じて複数配設されているＴ字形状の連続したピクセルの領域群を、第２の態様より精度よく検出することができる。
【００１４】
本発明の第４の態様は第３の態様である二次元コード読取方法において、第３のステップは、第３の態様におけるステップで、誤差範囲内にあるＴ字形状の連続したピクセル領域の３領域それぞれの大きさが、データ認識用Ｔ字形マーカの３領域それぞれの予め定められた誤差範囲内にある場合には、当該誤差範囲内にあるＴ字形状の連続したピクセル領域の当該３領域それぞれにおけるすべてのピクセルのＸ座標及びＹ座標の平均値であるセンターポイントが、対応する各領域内から外れているか否かを判定するステップを有するものである。
【００１５】
このような第４の態様である二次元コード読取方法によれば、第３の態様よりＴ字形状を精度よく検出することができるので、データ要素領域の周りに当該領域の切り出しと位置決めに応じて複数配設されているＴ字形状の連続したピクセルの領域群を、第３の態様より精度よく検出することができる。
【００１６】
本発明の第５の態様は第４の態様である二次元コード読取方法において、第３のステップは、第４の態様におけるステップで、誤差範囲内にあるＴ字形状の連続したピクセル領域の３領域それぞれがセンターポイントを領域内に有している場合には、誤差範囲内にあるＴ字形状の連続したピクセル領域の検出用基準センターポイントと、誤差範囲内にあるＴ字形状の連続したピクセル領域における見出し線の先端部の領域が有するセンターポイントとを通過する第１の直線を求め、誤差範囲内にあるＴ字形状の連続したピクセル領域における破線の線分の両端部の各領域が有するセンターポイントを通過する第２の直線を求めて、第１の直線及び第２の直線による所定位置の挟角が予め定められた角度範囲内か否かを判定するステップを有するものである。
【００１７】
このような第５の態様である二次元コード読取方法は、第４の態様でデータ要素領域の周りに当該領域の切り出しと位置決めに応じて複数配設されているＴ字形状の連続したピクセルの領域群を検出した場合においても、この第１の直線及び第２の直線の所定位置の挟角が予め定められた角度範囲外の場合には、Ｔ字形状が崩れているとしてデータ認識用Ｔ字形マーカの対象から外すことになる。Ｔ字形状が崩れていると、データ要素領域の切り出しと位置決めの精度が低下するからである。したがって、第５の態様である二次元コード読取方法によれば、データ要素領域の周りに当該領域の切り出しと位置決めに応じて複数配設されているＴ字形状の連続したピクセルの領域群を、第４の態様より精度よく検出することができる。
【００１８】
本発明の第６の態様は第５の態様である二次元コード読取方法において、第３のステップは、第５の態様におけるステップで、第１の直線及び第２の直線の所定位置の挟角が予め定められた角度範囲内にある場合には、当該第１の直線及び当該第２の直線をデータ認識用Ｔ字形マーカの幅まで太くして、ピクセル数を基準にして当該データ認識用Ｔ字形マーカの当該幅の予め定められた誤差範囲から外れる場合には、当該データ認識用Ｔ字形マーカの対象から除外するステップを有するものである。
【００１９】
このような第６の態様である二次元コード読取方法によれば、第５の態様よりＴ字形状を精度よく検出することができるので、データ要素領域の周りに当該領域の切り出しと位置決めに応じて複数配設されているＴ字形状の連続したピクセルの領域群を、第５の態様より精度よく検出することができる。
【００２０】
また、本発明の第７の態様である二次元コードは、第１の態様乃至第６の態様のうち何れか１つである二次元コード読取方法を実施するための二次元コードであって、すべてのデータ認識用Ｔ字形マーカは、データ要素領域に対して離れているものである。
【００２１】
このような第７の態様である二次元コードによれば、第１の態様乃至第６の態様のうち何れか１つである二次元コード読取方法において、Ｔ字形状の連続したピクセルの領域のイメージデータ全体でデータ認識用Ｔ字形マーカを検索しているので、データ要素領域の外形である矩形の４辺の周囲に配置されたすべてのＴ字形状の連続したピクセルの領域を、データ認識用Ｔ字形マーカとして検出することができるようになる。したがって、二次元コードの読み取り精度が向上する。
【００２２】
また、本発明の第８の態様である記録媒体は、第１の態様乃至第６の態様のうち何れか１つである二次元コード読取方法によって実現するためのプログラムを記憶したコンピュータ読み取り可能なものである。
【００２３】
このような第８の態様である記録媒体によれば、第１の態様乃至第６の態様のうち何れか１つである二次元コード読取方法が二次元コード読取装置の演算処理装置によって実行されるプログラムは、コンピュータ読み取り可能なＣＤ、ＤＶＤ等の記録媒体に記録させておくことで、複数のコンピュータで利用可能になる。
【発明の効果】
【００２４】
本発明の二次元コード読取方法及び該二次元コード読取方法で読み取るための二次元コード並びに該二次元コード読取方法を記録した記録媒体によれば、二次元コードの周りに４セル分以上の白色のマージンを確保しなくとも、読取装置による二次元コードの認識率を向上させることができる。
【図面の簡単な説明】
【００２５】
【図１】本発明の二次元コード読取方法による好ましい実施の形態例を示すフローチャート図である。
【図２】本発明の二次元コード読取方法による好ましい実施の形態例を示すフローチャート図である。
【図３】本発明の二次元コード読取方法の解析手順を示す説明図で、（Ａ）は二次元コードの画像データから検出したＴ字形状の連続したピクセル領域とその検出用基準センターポイントを示す図、（Ｂ）はその検出したＴ字形状の連続したピクセル領域を３領域に分離した状態を示す図、（Ｃ）はその検出したＴ字形状の連続したピクセル領域の解析手順を示す図である。
【図４】本発明の二次元コード読取方法で読み取るための従来の二次元コードを示す説明図である。
【発明を実施するための形態】
【００２６】
以下、本発明の二次元コード読取方法及び該二次元コード読取方法で読み取るための二次元コード並びに該二次元コード読取方法を記録した記録媒体を実施するための最良の形態例について、図面に基づき説明する。
【００２７】
なお、本発明の二次元コード読取方法で読み取るための二次元コードは、背景技術に記載した二次元コードと同じものであるので、図４（Ａ）を流用して説明を省略するが、データ要素領域ＭＤＡは図４（Ａ）においては、ｘ方向及びｙ方向ともにそれぞれ４個が隣接して並べられた１６個の小領域で構成され、この小領域は、ｘ方向及びｙ方向ともにそれぞれＮ個（Ｎは自然数）のデータセルが互いに隣接して配置されることで構成されている。この小領域を位置決めすることで、データ要素領域ＭＤＡのデータを読み取ることができる。また、このデータセルは、白黒の正方形とするが、これに限らず、明暗の正方形でもよい。
【００２８】
このように構成された二次元コードを読み取るための二次元コード読取方法について、以下、図１〜図３に基づき説明する。この二次元コードを読み取る二次元コード読取装置は、主として、二次元コードを取り込むＣＣＤエリアセンサ等の画像入力部と、画像入力部で取り込まれた画像データを表示する表示部と、二次元コードを読み取るためのプログラム等を格納するハードディスクやＲＯＭ等の記憶部と、各部の処理を制御するＣＰＵ等の制御部とを備えている（図示せず。）。
【００２９】
この二次元コード読取装置の記憶部に格納されているプログラムは図１に示すように、以下に示す二次元コード読取方法によるデータ処理手順で処理される。
【００３０】
まず、画像入力部で二次元コードの画像データを取り込む（ステップ１０１）。ステップ１０１で取り込んだ画像データから、Ｔ字形状の連続した黒のピクセル領域（以下、「Ｔ字形状の黒領域」と称する。）を検出する（ステップ１０２）。このステップ１０２では、Ｔ字形状の黒領域をイメージデータとして検出している。
【００３１】
ステップ１０２で検出したＴ字形状の黒領域のイメージデータが、データ認識用Ｔ字形マーカであるか否かを判定する（ステップ１０３）。データ認識用Ｔ字形マーカの情報は、記憶部に格納され、制御部が判定の際に読み取りにいく。
【００３２】
このデータ認識用Ｔ字形マーカは、二次元コードの破線の線分及び見出し線でＴ字形に形成され、データ要素領域の切り出しと位置決めを行うためのものである。図４においては、破線１０では、線分１２と見出線ＩＬ１２、線分１３と見出線ＩＬ１３、線分１４と見出線ＩＬ１４の各組み合わせがＴ字形に形成され、破線２０では、線分２２と見出線ＩＬ２２、線分２３と見出線ＩＬ２３、線分２４と見出線ＩＬ２４の各組み合わせがＴ字形に形成され、破線３０では、線分３２と見出線ＩＬ３２、線分３３と見出線ＩＬ３３、線分３４と見出線ＩＬ３４の各組み合わせがＴ字形に形成され、破線４０では、線分４２と見出線ＩＬ４２、線分４３と見出線ＩＬ４３、線分４４と見出線ＩＬ４４の各組み合わせがＴ字形に形成されるので、二次元コードには１６個のデータ認識用Ｔ字形マーカが配置されている。破線１０〜４０は切り出しに、見出線ＩＬ１２、ＩＬ１３、ＩＬ１４、ＩＬ２２、ＩＬ２３、ＩＬ２４、ＩＬ３２、ＩＬ３３、ＩＬ３４、ＩＬ４２、ＩＬ４３、ＩＬ４４は位置決めにそれぞれ使用する。
【００３３】
なお、破線１０の線分１１と見出し線ＩＬ１１から成るＴ字形と、破線４０の線分４５と見出し線ＩＬ４５から成るＴ字形とは、見出し線ＩＬ１１及び線分４５が接触して１本の線になっているので、これらはデータ認識用Ｔ字形マーカとして認識されない。同様に、破線１０の線分１５と見出し線ＩＬ１５から成るＴ字形と、破線２０の線分２１と見出し線ＩＬ２１から成るＴ字形とは、線分１５及び線分２１が接触して１本の線に、また、破線２０の線分２５と見出し線ＩＬ２５から成るＴ字形と、破線３０の線分３１と見出し線ＩＬ３１から成るＴ字形とは、見出し線ＩＬ２５及び線分３１が接触して１本の線に、さらに、破線３０の線分３５と見出し線ＩＬ３５から成るＴ字形と、破線４０の線分４１と見出し線ＩＬ４１から成るＴ字形とは、線分３５及び見出し線ＩＬ４１が合体し、且つ線分４１及び見出し線ＩＬ３５が合体してそれぞれ１本の線になっているので、これらもデータ認識用Ｔ字形マーカとして認識されない。
【００３４】
このステップ１０３では、ステップ１０２で検出したＴ字形状の黒領域が、データ認識用Ｔ字形マーカでない場合は、そのＴ字形状の黒領域を処理対象から除外する。
【００３５】
ステップ１０２においてデータ認識用Ｔ字形マーカとして検出されたすべてのＴ字形状の黒領域を、ステップ１０３で判定後、データ認識用Ｔ字形マーカと判定されたＴ字形状の黒領域の数が、データ要素領域ＭＤＡの切り出しと位置決めを行うことができる予め定められた最低数に達しているか否かを判定する（ステップ１０４）。このデータ要素領域ＭＤＡの切り出しと位置決めを行うことができる予め定められた最低数は、記憶部に格納され、制御部が判定の際に読み取りにいく。このステップ１０４では、データ認識用Ｔ字形マーカと判定されたＴ字形状の黒領域の数が、データ要素領域ＭＤＡの切り出しと位置決めを行うことができる予め定められた最低数に達していない場合には、二次元コード読取方法によるデータ処理を終了する。
【００３６】
ここで、データ認識用Ｔ字形マーカと判定されたＴ字形状の黒領域の数が、データ要素領域ＭＤＡの切り出しと位置決めを行うことができる予め定められた最低数について説明する。データ要素領域ＭＤＡの切り出し用の破線は、一辺に２つの線分があればその一辺を求めることができるが、データ要素領域ＭＤＡの位置決め用の見出し線は、位置決め用のデータベースラインＤＢＬを引くのに必要な数となる。したがって、データ要素領域ＭＤＡの切り出しと位置決めを行うことができる予め定められた最低数は、位置決め用のデータベースラインＤＢＬを引くことが可能な数によって定まる。
【００３７】
ステップ１０４で、データ認識用Ｔ字形マーカと判定されたＴ字形状の黒領域の数が、データ要素領域ＭＤＡの切り出しと位置決めを行うことができる予め定められた最低数に達していると判定すると、データ要素領域ＭＤＡを囲む破線１０、２０、３０、４０によって、データ要素領域ＭＤＡの切り出しを行うことで、そのデータ要素領域ＭＤＡを囲む破線１０、２０、３０、４０から成る矩形部１と、基準となる水平線及び垂直線との間に傾きがある場合には、基準となる水平線及び垂直線に、矩形部１を合わせるために、コード画像の角度を補正する（ステップ１０５）。そして、データ認識用Ｔ字形マーカと判定されたＴ字形状の黒領域群を使用してデータ要素領域ＭＤＡのセル配列を検出する（ステップ１０６）。
【００３８】
このステップ１０６は、破線１０の線分１２、１３、１４、破線２０の線分２２、２３、２４、破線３０の線分３２、３３、３４、破線４０の線分４２、４３、４４からそれぞれ垂直に延出された見出し線ＩＬ１２、ＩＬ１３、ＩＬ１４、ＩＬ２２、ＩＬ２３、ＩＬ２４、ＩＬ３２、ＩＬ３３、ＩＬ３４、ＩＬ４２、ＩＬ４３、ＩＬ４４によってデータ要素領域ＭＤＡの位置決めを行うことができる。例えば、見出し線ＩＬ１２と見出し線ＩＬ３４とを結ぶことでデータベースラインＤＢＬを求めることができるが、何れか一方の見出し線が存在すれば、破線２０あるいは破線４０に平行な線を求めることで、このデータベースラインＤＢＬを求めることができる。したがって、見出し線ＩＬ１３と見出し線ＩＬ３３とを結ぶデータベースラインＤＢＬ、及び見出し線ＩＬ１４と見出し線ＩＬ３２とを結ぶデータベースラインＤＢＬも、それぞれ何れか一方の見出し線が存在すれば、破線２０あるいは破線４０に平行な線を求めることで、このデータベースラインＤＢＬを求めることができる。また、見出し線ＩＬ２４と見出し線ＩＬ４２とを結ぶデータベースラインＤＢＬ、見出し線ＩＬ２２と見出し線ＩＬ４４とを結ぶデータベースラインＤＢＬ、及び見出し線ＩＬ２３と見出し線ＩＬ４３とを結ぶデータベースラインＤＢＬも、それぞれ何れか一方の見出し線が存在すれば、破線１０あるいは破線３０に平行な線を求めることで、このデータベースラインＤＢＬを求めることができる。
【００３９】
なお、見出し線の数は、データ要素領域ＭＤＡのデータ数に応じて水平方向（Ｘ軸方向）、垂直方向（Ｙ軸方向）の各方向で独立して決定されているので、データ認識用Ｔ字形マーカと判定された各Ｔ字形状の黒領域で認識された見出し線の数に応じて、データ要素領域ＭＤＡの容量を決定することができる。
【００４０】
ステップ１０６で検出したデータ要素領域ＭＤＡのセル配列に基づき、当該データ要素領域ＭＤＡから情報を取得する（ステップ１０７）。このステップ１０７では、既知である見出し線でデータ要素領域ＭＤＡ内のデータセルを等分割してその位置座標を求め、各データセルの二進数の値をサンプリングしてビット列のデータとすることで、元のデータを復元することができる。なお、二次元コードのビット列データに誤り訂正符号が付加されている場合には、誤り訂正を行うことになる。
【００４１】
このように、本発明の二次元コード読取方法によれば、Ｔ字形状の黒領域をイメージデータとして検出して、標準であるデータ認識用Ｔ字形マーカと形状を比較するだけで、データ要素領域ＭＤＡの周りに当該領域の切り出しと位置決めに応じて複数配設されているＴ字形状の黒領域群を検出することができるので、二次元コードの周りに４セル分以上の白色のマージンを確保しなくとも、二次元コード読取装置による二次元コードの認識率を向上させることが可能になる。
【００４２】
なお、ステップ１０３では、さらに、図２に示すフローチャートのようなデータ処理手順を行うようにしてもよい。
【００４３】
このデータ処理手順は図２に示すように、ステップ１０２で、Ｔ字形状の黒領域のイメージデータをすべて検出後、そのすべてのＴ字形状の黒領域の幅及び長さが、ピクセル数を基準にしてデータ認識用Ｔ字形マーカの幅及び長さの予め定められた誤差範囲内にあるか否かを判定する（ステップ２０１）。ここで、Ｔ字形状の黒領域の幅及び長さやデータ認識用Ｔ字形マーカの幅及び長さとは、Ｔ字形を矩形とみなして一辺を幅、その一辺と直交する他辺を長さとし、ピクセルのＸ座標及びＹ座標それぞれにおいて一つの座標でもその誤差範囲内にあればデータ認識用Ｔ字形マーカとして認識することになる。また、この誤差範囲は、画像入力部の読取精度、プリンタの印字精度等によって定まる。なお、線分の幅及び見出し線の幅は、データセルの一辺の長さと同じである。
【００４４】
このステップ２０１において、Ｔ字形状の黒領域の幅及び長さが、データ認識用Ｔ字形マーカの幅及び長さの予め定められた誤差範囲内にない場合には、このＴ字形状の黒領域をデータ認識用Ｔ字形マーカの対象から除外する。一方、Ｔ字形状の黒領域の幅及び長さが、データ認識用Ｔ字形マーカの幅及び長さの予め定められた誤差範囲内にある場合には次のステップ２０２に移行する。
【００４５】
このステップ２０２は図３（Ａ）に示すように、当該誤差範囲内にあるＴ字形状の黒領域ＴＰＡにおけるすべてのピクセルのＸ座標及びＹ座標の平均値である検出用基準センターポイントＣが、Ｔ字形状の黒領域ＴＰＡ内にあるか否かを判定する。なお、図３（Ａ）、（Ｂ）では、図を見易くするために、ピクセルの黒領域を白、白領域を黒で示しており、ＴＰＡが、ステップ２０１でデータ認識用Ｔ字形マーカの幅及び長さの予め定められた誤差範囲内にあるＴ字形状の黒領域、ＬＳが破線の線分、ＩＬが見出し線をそれぞれ示している。
【００４６】
このステップ２０１、２０２では、Ｔ字形状黒領域ＴＰＡのイメージデータ全体でデータ認識用Ｔ字形マーカを検索しているので、Ｔ字形状黒領域ＴＰＡの幅及び長さを判定することにより、データ認識用Ｔ字形マーカの大きさで形成されているＴ字形状黒領域ＴＰＡを検出し、さらに検出用基準センターポイントＣが、そのＴ字形状黒領域ＴＰＡ内にあるか否かを判定することにより、ある程度Ｔ字形状を保っているものを検出することができるので、データ要素領域ＭＤＡの周りに当該領域の切り出しと位置決めに応じて１２個配設されているＴ字形状黒領域ＴＰＡ群を、背景技術に記載した二次元コードの読取方法より精度よく検出することができる。
【００４７】
このステップ２０２において、ステップ２０１における誤差範囲内にあるＴ字形状の黒領域ＴＰＡ内に検出用基準センターポイントＣがない場合には、このＴ字形状の黒領域ＴＰＡをデータ認識用Ｔ字形マーカの対象から除外する。一方、ステップ２０１における誤差範囲内にあるＴ字形状の黒領域ＴＰＡ内に検出用基準センターポイントＣがある場合には、次のステップ２０３に移行する。
【００４８】
このステップ２０３では、データ認識用Ｔ字形マーカを、当該データ認識用Ｔ字形マーカの領域におけるすべてのピクセルのＸ座標及びＹ座標の平均値であるマーカ用基準センターポイントから、予め定められた領域分離用セル数で見出し線の先端部、及び破線の線分の両端部の３領域に分離するにあたり、当該３領域のサイズを見出し線の先端部の大きさが一番小さく、破線の線分の両端部が同一の大きさになるように、予め３領域の大きさを求めておく。これらデータは記憶部に格納され、制御部が判定の際に読み取りにいく。
【００４９】
このステップ２０３は図３（Ａ）、（Ｂ）に示すように、ステップ２０２において誤差範囲内にあるＴ字形状の黒領域ＴＰＡ内に検出用基準センターポイントＣがある場合には、ステップ２０２において誤差範囲内にあるＴ字形状の黒領域ＴＰＡを、検出用基準センターポイントＣからデータ認識用Ｔ字形マーカで使用した領域分離用セル数で、当該ステップ２０２において誤差範囲内にあるＴ字形状の黒領域ＴＰＡの見出し線ＩＬの先端部Ａ１、及び破線の線分ＬＳの両端部Ａ２、Ａ３の３領域に分離するにあたり、当該３領域のサイズを見出し線ＩＬの先端部Ａ１の大きさが一番小さく、破線の線分の両端部Ａ２、Ａ３が同一の大きさになるように、３領域の大きさを求めて、ステップ２０２において誤差範囲内にあるＴ字形状の黒領域ＴＰＡの３領域それぞれの大きさが、ピクセル数を基準にしてデータ認識用Ｔ字形マーカの３領域それぞれの予め定められた誤差範囲内にあるか否かを判定する（Ｓ２０３）。ここで、この誤差範囲は、画像入力部の読取精度、プリンタの印字精度等によって定まる。
【００５０】
このステップ２０３では、ステップ２０２よりＴ字形状を精度よく検出することができるので、データ要素領域ＭＤＡの周りに当該領域の切り出しと位置決めに応じて１２個配設されているＴ字形状の黒領域ＴＰＡ群を、ステップ２０２より精度よく検出することができる。
【００５１】
このステップ２０３において、Ｔ字形状の黒領域ＴＰＡの３領域それぞれの大きさが、データ認識用Ｔ字形マーカの３領域それぞれの予め定められた誤差範囲内にない場合には、データ認識用Ｔ字形マーカの対象から除外する。一方、Ｔ字形状の黒領域ＴＰＡの３領域それぞれの大きさが、データ認識用Ｔ字形マーカの３領域それぞれの予め定められた誤差範囲内にある場合には次のステップ２０４に移行する。
【００５２】
このステップ２０４は図３（Ｃ）に示すように、ステップ２０３において誤差範囲内にあるＴ字形状の黒領域ＴＰＡの３領域それぞれにおけるすべてのピクセルのＸ座標及びＹ座標の平均値であるセンターポイントＣ１、Ｃ２、Ｃ３が、対応する各領域内に位置するか否かを判定する（Ｓ２０４）。
【００５３】
即ち、Ｔ字形状の黒領域ＴＰＡの見出し線ＩＬの先端部Ａ１の領域内にセンターポイントＣ１、破線の線分ＬＳの一端部Ａ２の領域内にセンターポイントＣ２、破線の線分ＬＳの他端部Ａ３の領域内にセンターポイントＣ３がそれぞれ位置するか否かを判定する。ここで、一端部Ａ２、他端部Ａ３と称しているが、これら端部は、ある程度の面積を有している。
【００５４】
このステップ２０４では、ステップ２０３よりＴ字形状を精度よく検出することができるので、データ要素領域ＭＤＡの周りに当該領域の切り出しと位置決めに応じて１２個配設されているＴ字形状の黒領域ＴＰＡ群を、ステップ２０３より精度よく検出することができる。
【００５５】
このステップ２０４において、Ｔ字形状の黒領域ＴＰＡの３領域の何れか１つの領域でもセンターポイントがない場合には、データ認識用Ｔ字形マーカの対象から除外する。一方、Ｔ字形状の黒領域ＴＰＡの３領域のすべてにセンターポイントがある場合には次のステップ２０５に移行する。
【００５６】
このステップ２０５は図３（Ｃ）に示すように、ステップ２０４において誤差範囲内にあるＴ字形状の黒領域ＴＰＡの３領域それぞれがセンターポイントＣ１、Ｃ２、Ｃ３を領域内に有している場合には、ステップ２０４において誤差範囲内にあるＴ字形状の黒領域ＴＰＡの検出用基準センターポイントＣと、ステップ２０４において誤差範囲内にあるＴ字形状の黒領域ＴＰＡにおける見出し線ＩＬの先端部Ａ１の領域が有するセンターポイントＣ１とを通過する第１の直線Ｌ１を求め、ステップ２０４において誤差範囲内にあるＴ字形状の黒領域ＴＰＡにおける破線の線分ＬＳの両端部Ａ２、Ａ３の各領域が有するセンターポイントＣ２、Ｃ３を通過する第２の直線Ｌ２を求めて、第１の直線Ｌ１及び第２の直線Ｌ２による所定位置の挟角θが予め定められた角度範囲内か否かを判定する。
【００５７】
このステップ２０５を備えたのは、ステップ２０４でデータ要素領域ＭＤＡの周りに当該領域の切り出しと位置決めに応じて１２個配設されているＴ字形状の黒領域ＴＰＡ群を検出した場合においても、この第１の直線Ｌ１及び第２の直線Ｌ２の所定位置の挟角が予め定められた角度範囲外の場合には、Ｔ字形状が崩れているとしてデータ認識用Ｔ字形マーカの対象から外すことになる。Ｔ字形状が崩れていると、データ要素領域の切り出しと位置決めの精度が低下するからである。このことから、予め定められた角度範囲は８５度より大きく９５度より小さくするとよい。図３（Ｃ）においては、第１象限であるが、第２象限〜第４象限においても角度範囲を８５度より大きく９５度より小さくすることで、Ｔ字形状が崩れている否かを判断することができる。したがって、ステップ２０５は、データ要素領域ＭＤＡの周りに当該領域の切り出しと位置決めに応じて１２個配設されているＴ字形状の黒領域ＴＰＡ群を、ステップ２０４より精度よく検出することができる。
【００５８】
このステップ２０５において、第１の直線Ｌ１及び第２の直線Ｌ２の所定位置の挟角θが予め定められた角度範囲外の場合には、データ認識用Ｔ字形マーカの対象から除外する。一方、第１の直線Ｌ１及び第２の直線Ｌ２の所定位置の挟角θが予め定められた角度範囲内の場合には、ステップ２０６に移行する。
【００５９】
このステップ２０６は図３（Ｃ）に示すように、第１の直線Ｌ１をデータ認識用Ｔ字形マーカの破線の線分の幅Ｗ、及び第２の直線Ｌ２をデータ認識用Ｔ字形マーカの見出し線の幅Ｗまで太くして、当該データ認識用Ｔ字形マーカの当該幅Ｗの予め定められた誤差範囲から外れる場合には、データ認識用Ｔ字形マーカの対象から除外する。
【００６０】
このステップ２０６では、ステップ２０５よりＴ字形状を精度よく検出することができるので、データ要素領域ＭＤＡの周りに当該領域の切り出しと位置決めに応じて１２個配設されているＴ字形状の黒領域ＴＰＡ群を、ステップ２０５より精度よく検出することができる。
【００６１】
なお、ステップ２０１からステップ１０４に移行してもよく、また、ステップ２０２〜２０６からそれぞれステップ１０４に移行してもよい。何れにしても、二次元コードの周りに４セル分以上の白色のマージンを確保しなくとも、読取装置による二次元コードの認識率を向上させることができる。
【００６２】
ここで、検出用基準センターポイントＣや領域分離用センターポイントＣ１、Ｃ２、Ｃ３の具体的な求め方について説明する。
【００６３】
センターポイントを求めるには、連続した黒のピクセル領域の全ピクセルの座標を求める。その結果、{（Ｘ０、Ｙ０）、（Ｘ１、Ｙ１）、・・・・・・、（Ｘｎ、Ｙｎ）}となるので、センターポイント（Ｘｃ、Ｙｃ）は次式により求めることができる。
Ｘｃ＝（Ｘ０＋Ｘ１＋・・・・・・Ｘｎ）／（ｎ＋１）
Ｙｃ＝（Ｙ０＋Ｙ１＋・・・・・・Ｙｎ）／（ｎ＋１）
この式では、連続した黒のピクセル領域の全ピクセルのＸ座標及びＹ座標の平均値から、センターポイントを求めている。
【００６４】
また、第１の直線Ｌ１及び第２の直線Ｌ２の所定位置の挟角を求めるには、第１の直線Ｌ１と第２の直線Ｌ２との交点を基準にして、例えば、この交点より図３（Ｃ）において上に位置する第２の直線Ｌ２上の予め定められた位置の座標Ｐ＿Ｌ２（Ｘａ、Ｙｂ）を求め、交点より図３（Ｃ）において右に位置する第１の直線Ｌ１上の予め定められた位置の座標Ｐ＿Ｌ１（Ｘｃ、Ｙｄ）を求める。そして、座標Ｐ＿Ｌ１と座標Ｐ＿Ｌ２との間の角度を次式により求めることができる。
Ｒ＝arctan2（Ｙｄ−Ｙｂ、Ｘｃ−Ｘａ）
Ｒは、単位がラジアンである。
Ａ＝Ｒ×（１８０／Ｐｉ）
Ａは、単位が度で、Ｐｉ＝３．１４１５９２６５である。
【００６５】
このＡが第１の直線Ｌ１及び第２の直線Ｌ２による所定位置の挟角となる。
【００６６】
また、上述した二次元コード読取方法を実施するための二次元コードは、すべてのデータ認識用Ｔ字形マーカが、データ要素領域に対して離れているとよい。このように、すべてのデータ認識用Ｔ字形マーカが、データ要素領域に対して離れていると、Ｔ字形状の連続したピクセルの領域のイメージデータ全体でデータ認識用Ｔ字形マーカを検索しているので、データ要素領域の外形である矩形の４辺の周囲に配置されたすべてのＴ字形状の黒領域を、データ認識用Ｔ字形マーカとして正確に検出することができるようになる。なお、データ認識用Ｔ字形マーカとデータ要素領域との隙間は、１ドットでも、上述した本発明の二次元コード読取方法ならば、Ｔ字形状の黒領域をデータ認識用Ｔ字形マーカとして正確に検出できることが本発明者の二次元コード読取試験により確認できている。
【００６７】
このようなデータ処理手順が二次元コード読取装置の制御部によって実行されるプログラムは、コンピュータ読み取り可能なＣＤ、ＤＶＤ等の記録媒体に記録させておくことで、複数の二次元コード読取装置やコンピュータで利用可能になる。
【００６８】
これまで本発明について図面に示した特定の実施の形態をもって説明してきたが、本発明は図面に示した実施の形態に限定されるものではなく、本発明の効果を奏する限り、これまで知られたいかなる構成であっても採用することができることはいうまでもないことである。
【符号の説明】
【００６９】
１……矩形部
１０……破線
１１、１２、１３、１４、１５……線分
ＩＬ１１、ＩＬ１２、ＩＬ１３、ＩＬ１４、ＩＬ１５……見出線
２０……破線
２１、２２、２３、２４、２５……線分
ＩＬ２１、ＩＬ２２、ＩＬ２３、ＩＬ２４、ＩＬ２５……見出線
３０……破線
３１、３２、３３、３４、３５……線分
ＩＬ３１、ＩＬ３２、ＩＬ３３、ＩＬ３４、ＩＬ３５……見出線
４０……破線
４１、４２、４３、４４、４５……線分
ＩＬ４１、ＩＬ４２、ＩＬ４３、ＩＬ４４、ＩＬ４５……見出線
ＭＤＡ……データ要素領域
ＴＰＡ……Ｔ字形状の黒領域（Ｔ字形状の連続したピクセル領域）
【図１】
2011070477.tif 000003
【図２】
2011070477.tif 000004
【図３】
2011070477.tif 000005
【図４】
2011070477.tif 000006