JP4967488B2 - コード画像処理方法、コード画像処理装置及びコード画像処理プログラム - Google Patents

コード画像処理方法、コード画像処理装置及びコード画像処理プログラム Download PDF

Info

Publication number
JP4967488B2
JP4967488B2 JP2006190259A JP2006190259A JP4967488B2 JP 4967488 B2 JP4967488 B2 JP 4967488B2 JP 2006190259 A JP2006190259 A JP 2006190259A JP 2006190259 A JP2006190259 A JP 2006190259A JP 4967488 B2 JP4967488 B2 JP 4967488B2
Authority
JP
Japan
Prior art keywords
code
block
image processing
steganography
dimensional code
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2006190259A
Other languages
English (en)
Other versions
JP2008020988A (ja
Inventor
伸康 山口
嗣男 野田
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP2006190259A priority Critical patent/JP4967488B2/ja
Priority to US11/783,056 priority patent/US7920737B2/en
Priority to EP07110799A priority patent/EP1879145A1/en
Publication of JP2008020988A publication Critical patent/JP2008020988A/ja
Application granted granted Critical
Publication of JP4967488B2 publication Critical patent/JP4967488B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T1/00General purpose image data processing
    • G06T1/0021Image watermarking
    • G06T1/005Robust watermarking, e.g. average attack or collusion attack resistant
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K7/00Methods or arrangements for sensing record carriers, e.g. for reading patterns
    • G06K7/10Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation
    • G06K7/10544Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation by scanning of the records by radiation in the optical part of the electromagnetic spectrum
    • G06K7/10821Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation by scanning of the records by radiation in the optical part of the electromagnetic spectrum further details of bar or optical code scanning devices
    • G06K7/10861Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation by scanning of the records by radiation in the optical part of the electromagnetic spectrum further details of bar or optical code scanning devices sensing of data fields affixed to objects or articles, e.g. coded labels
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2201/00General purpose image data processing
    • G06T2201/005Image watermarking
    • G06T2201/0051Embedding of the watermark in the spatial domain
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2201/00General purpose image data processing
    • G06T2201/005Image watermarking
    • G06T2201/0061Embedding of the watermark in each block of the image, e.g. segmented watermarking
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2201/00General purpose image data processing
    • G06T2201/005Image watermarking
    • G06T2201/0065Extraction of an embedded watermark; Reliable detection

Landscapes

  • Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Electromagnetism (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Toxicology (AREA)
  • Artificial Intelligence (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Image Analysis (AREA)
  • Image Processing (AREA)

Description

本発明は、画像データに含まれるコード種類の判別・認識方法に関し、特に、1次元コード、2次元コード以外にステガノグラフィコードをも確実に判別する方法に関する。
近年、1次元コードよりも多くの情報を埋め込むことができる2次元コードの普及が進んでいる。2次元コードでは、コード全体の2次元配列データがなければ認識できないため、読み取り装置にはデジタルカメラやイメージスキャナなどの画像読取装置が用いられている。さらに、1つの読取装置で1次元/2次元コードの両方を自動的に認識する画像読取装置が実用化されており、従来から、コードを読み取るための様々な技術が提案されている。
例えば、画像データを矩形ブロックに区切り、随時走査しながら矩形ブロック単位領域内の画像特徴が所定の条件を満たすか否かを判別することで、矩形ブロック単位領域が特定の種類のコード領域に存在するか否か判別する技術がある(特許文献1)。
また、例えば、目には見えない形で画像にデータを埋め込むステガノグラフィが実用化されている。ステガノグラフィは、画像データを複数の単位領域に分割し、各単位領域の平均濃度などの特徴量の大小関係に基づいてコードを埋め込む技術であり、その画像特徴は、1次元/2次元コードとは異なっている(特許文献2)。
特開2005-173646号公報 特開2004-349879号公報
上述した従来の方法では、図1に示すように、1次元コードの画像特徴(ライン間相関が高い、1方向にエッジが必ず存在する)及び2次元コードの画像特徴(縦横2方向にエッジが存在する、黒画素率が50%)を基準にしてコード領域の判別を行っていたため、1次元コード、2次元コードと異なる特徴を有するステガノグラフィコードに対しては、コード領域にあるか否かを判別することができなかった。そのため、ステガノグラフィコードの認識を行う場合は、画像データ中のステガノグラフィコード領域の有無に関わらず特定の領域から認識処理を開始しなければならず、処理時間がかかったり、認識に失敗したりしていた。さらには、ユーザによって明示的にステガノグラフィコード領域を指示する必要があり、使い勝手が非常に悪いものであった。
本発明の目的は、1次元/2次元コード以外のコードの判別・認識も行えるようにすることで、コード領域において確実に認識処理を開始することができるコード画像処理方法及びその装置を提供することにある。
本発明は、画像データから矩形ブロック単位領域を抽出するブロック抽出工程と、前記矩形ブロック単位領域に含まれているコードの特徴量を算出するブロック特徴量算出工程と、前記特徴量から前記矩形ブロック単位領域に含まれているコードの種類を判定するブロック判定工程と、判定したコードの種類に基づいて処理を選択するコード処理選択工程とを有し、前記ブロック特徴量算出工程は、隣接する矩形ブロック単位領域の濃度の大小関係に基づいて埋め込まれたステガノグラフィコードの特徴量を算出し、前記ブロック判定工程は、前記ステガノグラフィコードを判別することを特徴とするコード画像処理方法である。これによれば、矩形ブロック単位領域の判別に用いる特徴量として、ステガノグラフィ固有の特徴量を用いることで、矩形ブロック単位領域がステガノグラフィコードの内部にあるか否かを精度良く、かつ高速に判別することが可能となる。
また、本発明は、前記ブロック特徴量算出工程は、前記矩形ブロック単位領域の濃度レベルの分布の極大位置及び極小位置を検出することを特徴とするコード画像処理方法である。これによれば、検出した極大位置と極小位置とを特徴量算出やコードの判別に利用することで、矩形ブロック単位領域がステガノグラフィコードの内部にあるか否かを精度良く、かつ、高速に判別することが可能となる。
また、本発明は、前記ブロック判定工程は、前記ブロック特徴量算出工程が検出した極大位置及び極小位置が格子状に配置されている場合、前記矩形ブロック単位領域が、ステガノグラフィコード領域に含まれていると判定することを特徴とするコード画像処理方法である。これによれば、格子状に配列している場合は、ステガノグラフィコードの内部領域であると判別することができるため、矩形ブロック単位領域がステガノグラフィコードの内部にあるか否かを精度良く、かつ、高速に判別することが可能となる。
また、本発明は、前記ブロック判定工程は、前記ブロック特徴量算出工程が検出した前記矩形ブロック単位領域の極大位置の濃度レベルと極小位置の濃度レベルとの差が所定範囲内に含まれている場合、前記矩形ブロック単位領域が、ステガノグラフィコード領域に含まれていると判定することを特徴とするコード画像処理方法である。これによれば、濃度変化の極大位置と極小位置とに代表されるブロックのうち、1次元方向の隣接した2ブロックペア間の平均濃度を求め、当該差が所定範囲内であるか否かを特徴量として検出することで、矩形ブロック内に含まれるブロックペアのうち、ある割合以上が所定範囲内である場合には、ステガノグラフィコードの内部領域であると判別することが可能となる。
また、本発明は、前記ブロック特徴量算出工程は、1次元コード、又は2次元コードの特徴量も算出し、前記ブロック判定工程は、前記1次元コード、又は前記2次元コードも判別することを特徴とするコード画像処理方法である。これによれば、ステガノグラフィ以外の1次元コード・2次元コードにも他の領域と異なる特徴量や、他のコードとは異なる特徴量が存在するため、当該特徴量を複数組み合わせて色プレーンの選択を行うことで、精度良く1次元コード、2次元コード、ステガノグラフィの含まれる領域の検出及びコード認識を行うことが可能となる。
また、本発明は、前記ブロック特徴量算出工程は、ステガノグラフィコード、1次元コード、又は2次元コードの特徴量を算出する順番に優先度をつけることを特徴とするコード画像処理方法である。これによれば、コードの特徴量を算出する順番に優先度をつけることができ、コード画像処理を効率化することができる。
本発明によれば、ステガノグラフィコードを認識する場合でも、コード領域か否かの判別を行うことができ、コード領域において確実に認識処理を開始できるようになるため、処理時間が短縮され、認識処理が向上し、また、ユーザによるコード領域の指示が不要となるため、ユーザの手間を低減し、使い勝手が向上するコード画像処理方法及びその装置を提供することができる。
以下、本発明の実施の形態について図を参照しつつ説明する。
実施例1では、ステガノグラフィコードの特徴量を算出することで、選択した矩形ブロック単位領域がステガノグラフィコード領域内に含まれているか否かを判定することについて説明する。
まず、本発明におけるコード画像処理方法が適用されるコードの種類としての1次元コード、2次元コード、及びステガノグラフィコードについて、図1を参照しつつ説明する。1次元コードは異なる太さや間隔を持つ平行な直線の組み合わせによるコードである。2次元コードは、データがセル化されて2次元状に配置されたコードであり、1つのセルは一般に複数の画素に対応する。図1に示した2次元コードはクイックレスポンス(QR)コードと呼ばれる2次元コードであり、コード領域の右上、左上、及び左下にコードの位置決め用シンボルが存在する点に特徴があり、この位置決め用シンボルが存在するためにコードを早く認識できる。ステガノグラフィコードは、画像を所定のブロック数に分割し、隣接する2つのブロック(ペアブロク)のそれぞれの濃度等の特徴量を算出し、当該特徴量の大小関係に基づいて埋め込まれるコードである。図1に示すように、入力画像を複数のブロックに分割し、ペアブロックを作成する。ペアブロックにおいて、左側のブロックのブロックの平均濃度(ブロック内の各画素の平均階調)を左側平均濃度データDlとし、右側のブロックの平均濃度を右側平均濃度データDrとする。左側平均濃度データDlが右側平均濃度データDr未満である場合、ペアブロックは、1ビット分のコードとして「0」を表す。一方、左側平均濃度データDlが右側平均濃度データDr以上である場合、ペアブロックは、1ビット分のコードとして「1」を表す。
図2は、本発明におけるコード画像処理方法の原理説明図である。同図において、本発明のコード画像処理方法は、入力画像データを矩形ブロック単位領域で選択するブロック選択工程(ステップS501)と、選択されたブロックの特徴量を算出するブロック特徴量算出工程(ステップS502)と、選択されたブロックが所定の条件を満たしているか否かを判定するブロック判定工程(ステップS503)と、所定の条件を満たすブロック内に含まれるコードを処理するコード処理工程(ステップS504)とを備える。
図3は、第1の実施の形態におけるステガノグラフィコード判定処理の詳細フローチャートである。
ステップS001において、処理対象の画像の中から注目する矩形ブロック単位領域が選択される。ここで、矩形ブロック単位領域は、画像の任意の位置から順番に選択してく。通常は、左上隅から順次走査して選択したり、画像中央から周辺部に向かって走査したりする場合が多い。処理対象の特性に応じて、よりコードが存在する可能性の高い位置から矩形ブロック単位領域を選択する方が、コードを即座に検出でき、処理時間を短縮することができる。
ステップS002において、濃度変化の凹凸の極大位置と極小位置とが検出される。着目画素の濃度が隣接画素の濃度より高く、かつ、隣接画素との差分が所定値以上の場合を極大位置、着目画素の濃度が隣接画素の濃度より低く、かつ、隣接画素との差分が所定値以上の場合を極小位置として検出する。
ステップS003において、矩形ブロック単位領域内における極大・極小位置が、予め指定した数よりも多いか否かが判定される。ここで、ステップS001において選択された矩形ブロック単位領域が、ステガノグラフィコードの内部でない、例えば、余白領域である場合は、極大・極小位置の数が少なくなるため、ステガノグラフィコードの内部でないと即座に判定することができる。極大・極小位置が、予め指定した数よりも多い場合は、処理はステップS004へ移行する。一方、極大・極小位置が、予め指定した数よりも少ない場合は、処理はステップS010へ移行し、選択された矩形ブロック単位領域は、ステガノグラフィコードの内部ではないと判定され、処理は終了する。その後、処理はステップS001へ戻り、次の矩形ブロック単位領域が選択される。
ステップS004において、極大・極小位置の配列が検出される。
ステップS005において、極大・極小位置が格子状に配列しているか否かが判定される。ここで、図4に、ステガノグラフィコード領域の極大位置と極小位置とを検出し、当該検出された極大・極小位置が格子状に配列されている状態を示す。また、比較例として、2次元コード領域の極大位置と極小位置とを検出し、当該検出された極大・極小位置を示す。このように、ステガノグラフィコードでは、矩形ブロックの中央部に対して、濃度に関する処理を行っているため、極大・極小位置が規則的に配列されているのに対し、2次元コードでは、極大・極小位置が不規則に配列されているため、極大・極小位置の配列に着目することで、ステガノグラフィコードと2次元コードとを差別化することができる。極大・極小位置が格子状に配列している場合は、処理はステップS006へ移行する。一方、極大・極小位置が格子状に配列していない場合は、処理はステップS010へ移行し、選択された矩形ブロック単位領域は、ステガノグラフィコードの内部ではないと判定され、処理は終了する。その後、処理はステップS001へ戻り、次の矩形ブロック単位領域が選択される。
ステップS006において、極大位置と極小位置との濃度差を算出する。
ステップS007において、1次元方向の隣接する極大・極小位置のペアに対し、当該位置におけるブロックの平均濃度を求め、当該濃度差が所定範囲内であるか否かが判定される。図5に、ステガノグラフィコード領域の極大位置と極小位置との濃度レベル差を示す。また、比較例として、2次元コード領域の極大位置と極小位置位置との濃度レベル差を示す。ステガノグラフィコードでは、画像の劣化を防止するため、極大・極小位置ペアの濃度レベル差が所定範囲内となっているのに対し、2次元コードでは、極大・極小ペアの濃度レベル差が所定範囲内となっていない。そこで、濃度レベル差に着目することで、ステガノグラフィコードと2次元コードとを差別化することができる。濃度差が所定範囲内である場合は、処理はステップS008へ移行する。一方、濃度差が所定範囲内でない場合は、処理はステップS010へ移行し、選択された矩形ブロック単位領域は、ステガノグラフィコードの内部ではないと判定され、処理は終了する。その後、処理はステップS001へ戻り、次の矩形ブロック単位領域が選択される。
ステップS008において、矩形ブロック単位領域がステガノグラフィコード領域にあると判定される。
ステップS009において、ステガノグラフィコードの認識処理を行う。処理は終了する。
実施例1では、選択された矩形ブロック単位領域がステガノグラフィコード領域に含まれているか否かのみを判定することについて説明したが、矩形ブロック単位領域がステガノグラフィコードだけでなく、2次元コード、1次元コード領域に含まれているか否かをも判定することができる構成にすることも考えられる。
図6、7は、第2の実施の形態におけるコード判定処理の詳細フローチャートである。
ステップS101において、処理対象の画像の中から注目する矩形ブロック単位領域が選択される。
ステップS102において、この矩形ブロック単位領域に対して、ステガノグラフィの特徴量が算出される。このステガノグラフィの特徴量算出については、実施例1において説明した通りである。
ステップS103において、2次元コードの特徴量が算出される。この2次元コードの特徴量算出については、図10で詳細に説明する。
ステップS104において、1次元コードの特徴量が算出される。この1次元コードの特徴量算出については、図11で詳細に説明する。
ステップS105から、それぞれの特徴量より、矩形ブロック単位領域に、ステガノグラフィコード、2次元コード、1次元コードのうち、いずれのコードが含まれているかの判別が開始される。
ステップS106において、矩形ブロック単位領域にステガノグラフィコードが含まれているか否かが判定される。ステガノグラフィコードが含まれている場合は、処理はステップS109へ移行し、ステガノグラフィコード認識を行い、処理はステップS112へ移行する。一方、ステガノグラフィコードが含まれていない場合は、処理はステップS107へ移行する。
ステップS107において、矩形ブロック単位領域に2次元コードが含まれているか否かが判定される。2次元コードが含まれている場合は、処理はステップS110へ移行し、2次元コード認識を行い、処理はステップS112へ移行する。一方、2次元コードが含まれていない場合は、処理はステップS108へ移行する。
ステップS108において、矩形ブロック単位領域に1次元コードが含まれているか否かが判定される。1次元コードが含まれている場合は、処理はステップS111へ移行し、1次元コード認識を行い、処理はステップS112へ移行する。一方、1次元コードが含まれていない場合は、いずれのコードも含まれていないとして、処理はステップS113へ移行する。
ステップS112において、認識処理が行われる。認識が成功した場合は、コードを出力して処理は終了する。一方、認識が失敗した場合は、処理はステップS113へ移行する。ここで、認識が失敗した場合とは、コードの一部がボケている、影で見えなくなっているような問題があり、認証を行えなかった場合のことである。
ステップS113において、まだ使用していない矩形ブロックがある場合には、当該矩形ブロックに対して同様の処理を繰り返し行うため、処理はステップS101へ戻る。
以下、図6のステップS103における2次元コード特徴量算出、ステップS104における1次元コード特徴量算出について説明する。
図1に示したように1次元コード、及び2次元コードは、共に白、黒のようにコントラストの差が大きい2つの色を用いて印刷されている。そのため、画素の階調値のばらつき(分散)、又は標準偏差が大きくなるという特徴がある。これに対して、文字が印刷されている領域では、文字の色が下地に対して占める面積の比率が小さくなり、画素の階調値のばらつきも小さくなる。また、写真などが印刷されている領域では、画素の階調値が任意の値をとり、階調値のばらつきは小さくなる。この特徴を利用して、ブロック内の画素の階調値のばらつきが所定の範囲内となるブロックを検出することによって1次元コード、及び2次元コードが含まれる領域を検出することが可能となる。特に、2次元コードの領域内では、白と黒の色の面積の比率が所定の範囲、例えば50%±10%以内となるようにコードが作成されている。そこで、ブロック内の白黒画素の比率が所定の範囲内になるブロックを検出することによって、特に、2次元コードが含まれる領域のみを検出することが可能となる。
図8は、エッジ数による判定方法の説明図である。1次元コードでは、平行な直線の組み合わせによってデータが表現されるため、バーに垂直なライン上で画素を取り出した場合には、そのラインがコード内部のどこにあっても、ライン上の画素の階調値が急変する点(エッジ)がラインに直交するバーの数に対応して存在することになるが、バーに平行なライン上の画素を取り出す場合にはエッジが存在しないという特徴がある。一方、2次元コードでは、2次元に配置された明暗ドット(セル)の組み合わせによってデータが表現され、コード内部ではできるだけ明暗が一様になるようになっているため、水平方向のライン上の画素を取り出した場合にも、また垂直方向のライン上の画素を取り出した場合にも、画素の階調値が急変する点としてのエッジの数があまり変わらないという特徴がある。そこで、ブロック内の水平/垂直ライン上のエッジ数が所定の範囲内となるブロックを検出することによって、精度良く1次元/2次元コードが含まれる領域のみを検出することが可能となり、また1次元コードと2次元コードとを容易に区別することができる。
図9は、ライン間相関によるコードの判定方法の説明図である。ライン間相関とは、コードの中から平行な2直線を切り出し、当該2直線の画素値から算出した相互相関係数のことである。1次元コードでは、バーに対して垂直方向に平行な2直線を切り出した場合、当該2直線の画素値の変化のパターンは同一になるため、相互相関係数は大きくなるという特徴があり、バーに対して平行方向に平行な2直線を切り出した場合、当該2直線の画素値の変化のパターンは異なってくるため、相互相関係数は小さくなるという特徴がある。これに対して、2次元コードでは、水平な2直線間でも、あるいは垂直な2直線間でも、当該2直線の画素の変化のパターンは異なってくるため、相互相関の値はともに小さくなるという特徴がある。そこで、ブロック内の水平ライン間、あるいは垂直ライン間の相関の値が所定の範囲内となるブロックを検出することによって、1次元/2次元コードが含まれる領域を精度良く検出することが可能となると共に、1次元コードと2次元コードとを容易に区別することが可能となる。
図10は、図8のステップS103における2次元コード判定処理の詳細フローチャートである。同図において処理が開始されると、まず、ステップS301でブロック内の画素の階調値に対する標準偏差が算出される。
ステップS302において、ステップS301において算出された画素の階調値の標準偏差が所定の値を超えているか否かが判定される。所定の値を超えている場合は、処理はステップS303へ移行する。一方、所定の値を超えていない場合は、処理はステップS309へ移行し、当該領域は2次元コード領域ではないと判定され、処理は終了する。
ステップS303において、水平方向エッジ数を算出する。
ステップS304において、垂直方向エッジ数を算出する。
ステップS305において、ステップS303において算出された水平方向エッジ数、ステップS304において算出された垂直方向エッジ数のいずれか一方の値が所定の最小値を超えているか否かが判定される。所定の最小値を超えている場合は、処理はステップS306へ移行する。一方、所定の最小値を超えていない場合は、処理はステップS309へ移行し、当該領域は2次元コード領域ではないと判定され、処理は終了する。
ステップS306において、黒画素率が算出される。
ステップS307において、ステップS306において算出された黒画素率が所定の最小値以上であり、かつ、所定の最大値未満であるか否かが判定される。この条件が成立する場合は、処理はステップS308へ移行する。一方、この条件が成立しない場合は、処理はステップS309へ移行し、当該領域は2次元コード領域ではないと判定され、処理は終了する。
ステップS308において、当該領域は2次元コードと判定される。処理は終了する。
図11は、図8のステップS104における1次元コード判定処理の詳細フローチャートである。同図において処理が開始されると、まず、ステップS401でブロック内の画素の階調値に対する標準偏差が算出される。
ステップS402において、ステップS401において算出された画素の階調値の標準偏差が所定の値を超えているか否かが判定される。所定の値を超えている場合は、処理はステップS402へ移行する。一方、標準偏差が所定の値を超えていない場合は、処理はステップS410へ移行し、当該領域は1次元コード領域ではないと判定され、処理は終了する。
ステップS403において、水平方向エッジ数が算出される。
ステップS404において、垂直方向エッジ数が算出される。
ステップS405において、水平方向エッジ数、または垂直方向エッジ数の少なくともいずれか1つの値が所定の最小値を超えているか否かが判定される。この条件を満たす場合は、処理はステップS406へ移行する。一方、この条件を満たさない場合は、処理はステップS410へ移行し、当該領域は1次元コード領域ではないとして処理は終了する。
ステップS406において、水平ライン間相関が算出される。
ステップS407において、垂直ライン間相関が算出される。
ステップS408において、水平ライン間相関、又は垂直ライン間相関の少なくともいずれか1つの値が所定の最小値を超えているか否かが判定される。この条件を満たしている場合は、処理はステップS409へ移行する。一方、この条件を満たさない場合は、処理はステップS410へ移行し、当該領域は1次元コード領域ではないとして処理は終了する。
ステップS409において、当該領域は1次元コードと判定される。処理は終了する。
実施例2では、ステガノグラフィコード、2次元コード、1次元コードの特徴量を算出した後に、ブロック内コード判別を行い、認識処理を行ったが、特徴量を算出した直後に、認識処理を行う構成にすることも考えられる。また、特徴量を算出するコードに優先順位を付ける構成にすることも考えられる。
図12、13は、第3の実施の形態におけるコード判定処理の詳細フローチャートである。実施例3では、ステガノグラフィコードの認識を最優先している。なお、2次元コード、1次元コードを最優先にしても良い。
ステップS201において、処理対象の中から注目する矩形ブロック単位領域が選択される。
ステップS202において、この矩形ブロック単位領域に対して、ステガノグラフィの特徴量が算出される。このステガノグラフィの特徴量算出については、実施例1で説明した通りである。
ステップS203において、矩形ブロック単位領域にステガノグラフィコードが含まれているか否かが判定される。ステガノグラフィコードが含まれている場合は、処理はステップS208へ移行し、ステガノグラフィコード認識を行い、処理はステップS211へ移行する。一方、ステガノグラフィコードが含まれていない場合は、処理はステップS204へ移行する。
ステップS204において、2次元コードの特徴量が算出される。この2次元コードの特徴量算出については、実施例2で説明した通りである。
ステップS205において、矩形ブロック単位領域に2次元コードが含まれているか否かが判定される。2次元コードが含まれている場合は、処理はステップS209へ移行し、2次元コード認識を行い、処理はステップS211へ移行する。一方、2次元コードが含まれていない場合は、処理はステップS206へ移行する。
ステップS206において、1次元コードの特徴量を算出する。この1次元コードの特徴量算出については、実施例2において説明した通りである。
ステップS207において、矩形ブロック単位領域に1次元コードが含まれているか否かが判定される。1次元コードが含まれている場合は、処理はステップS210へ移行し、1次元コード認識を行い、処理はステップS211へ移行する。一方、1次元コードが含まれていない場合は、処理はステップS212へ移行する。
ステップS211において、認識処理を行う。認識に成功した場合は、コードを出力して処理は終了する。一方、認識に失敗した場合は、処理はステップS212へ移行する。
ステップS212において、まだ使用していない矩形ブロックがあるか否かが判定される。未使用ブロックがある場合には、当該ブロックに対して同様の処理を繰り返し行うため、処理はステップS201に戻る。一方、未使用ブロックがない場合は、処理は終了する。
以上において、本発明のコード画像処理方法について、その詳細を説明したが、この方法を実行するコード画像処理装置は、携帯端末装置や一般的なコンピュータシステムをその主要構成部として構成することが可能である。図14はそのようなコンピュータシステム、すなわちハードウェア環境の構成ブロック図である。
図14において、コンピュータシステムは、CPU1、ROM2、RAM3、通信インタフェース4、記憶装置5、画像読取部6、可搬型記憶媒体11の読取装置7、及びこれらの全てが接続されたバス8によって構成されている。記憶装置5としては、ハードディスク、磁気ディスクなど様々な形式の記憶装置を使用することができ、ROM2、又は記憶装置5に格納されたプログラムがCPU1によって実行されることにより、本実施形態におけるステガノグラフィコードのコード領域検出などが可能となる。このようなプログラムは、情報提供者側から通信インタフェース4を介して、例えば記憶装置5に格納されることも、また市販され、流通している可搬型記憶媒体11に格納され、読取装置7にセットされて、CPU1によって実行されることも可能である。可搬型記憶媒体11としては、CD-ROM、光ディスク、DVDなど様々な形式の記憶媒体を使用することができる。このような記憶媒体に格納されたプログラムが読取装置7によって読み取られることにより、本実施形態におけるステガノグラフィコードのコード画像処理を行うことが可能になり、画像読取部6から画像を読み取ることでコード処理が実現される。また、画像読取部を有し、当該プログラムが格納された携帯端末装置を用いても、本実施形態におけるコード画像処理を実行することができる。
1次元コード、2次元コードとステガノグラフィコードの例を示す図である。 本発明のコード画像処理方法の原理的な図である。 第1の実施の形態における全体フローチャートである。 ステガノグラフィの特徴量を示す図(その1)である。 ステガノグラフィの特徴量を示す図(その2)である。 第2の実施の形態における全体フローチャート(その1)である。 第2の実施の形態における全体フローチャート(その2)である。 コード内のエッジ数の判定方法の説明図である。 コード内の2本のライン間の相関判定方法の説明図である。 2次元コード判定処理の詳細フローチャートである。 1次元コード判定処理の詳細フローチャートである。 第3の実施の形態における全体フローチャート(その1)である。 第3の実施の形態における全体フローチャート(その2)である。 本発明におけるプログラムのコンピュータへのローディングを説明する図である。
符号の説明
1 CPU、2 ROM、3 RAM、4 通信インタフェース、5 記憶装置、6 画像読取部、7 可搬型記憶媒体の読取装置、8 バス、11 可搬記憶媒体

Claims (15)

  1. 画像データから矩形ブロック単位領域を抽出するブロック抽出工程と、
    前記矩形ブロック単位領域に含まれているコードの特徴量を算出するブロック特徴量算出工程と、
    前記特徴量から前記矩形ブロック単位領域に含まれているコードの種類を判定するブロック判定工程と、
    判定したコードの種類に基づいて処理を選択するコード処理選択工程と、
    を有し、
    前記ブロック特徴量算出工程は、隣接する矩形ブロック単位領域の濃度の大小関係に基づいて埋め込まれたステガノグラフィコードの特徴量を算出し、1次元コード、又は2次元コードの特徴量も算出し、
    前記ブロック判定工程は、前記ステガノグラフィコード、前記1次元コード、又は前記2次元コードを判別することを特徴とするコード画像処理方法。
  2. 前記ブロック特徴量算出工程は、
    前記矩形ブロック単位領域の濃度レベルの分布の極大位置及び極小位置を検出することを特徴とする請求項1記載のコード画像処理方法。
  3. 前記ブロック判定工程は、前記ブロック特徴量算出工程が検出した極大位置及び極小位置が格子状に配置されている場合、前記矩形ブロック単位領域が、ステガノグラフィコード領域に含まれていると判定することを特徴とする請求項2記載のコード画像処理方法。
  4. 前記ブロック判定工程は、前記ブロック特徴量算出工程が検出した前記矩形ブロック単位領域の極大位置の濃度レベルと極小位置の濃度レベルとの差が所定範囲内に含まれている場合、前記矩形ブロック単位領域が、ステガノグラフィコード領域に含まれていると判定することを特徴とする請求項2記載のコード画像処理方法。
  5. 前記ブロック特徴量算出工程は、ステガノグラフィコード、1次元コード、又は2次元コードの特徴量を算出する順番に優先度をつけることを特徴とする請求項4記載のコード画像処理方法。
  6. 画像データから矩形ブロック単位領域を抽出するブロック抽出部と、
    前記矩形ブロック単位領域に含まれているコードの特徴量を算出するブロック特徴量算出部と、
    前記特徴量から前記矩形ブロック単位領域に含まれているコードの種類を判定するブロック判定部と、
    判定したコードの種類に基づいて処理を選択するコード処理選択部と、
    を有し、
    前記ブロック特徴量算出部は、隣接する矩形ブロック単位領域の濃度の大小関係に基づいて埋め込まれたステガノグラフィコードの特徴量を算出し、1次元コード、又は2次元コードの特徴量を算出し、
    前記ブロック判定部は、前記ステガノグラフィコード、前記1次元コード、又は前記2次元コードを判別することを特徴とするコード画像処理装置。
  7. 前記ブロック特徴量算出部は、前記矩形ブロック単位領域の濃度レベルの分布の極大位置及び極小位置を検出することを特徴とする請求項6記載のコード画像処理装置。
  8. 前記ブロック判定部は、前記ブロック特徴量算出部が検出した極大位置及び極小位置が格子状に配置されている場合、前記矩形ブロック単位領域が、ステガノグラフィコード領域に含まれていると判定することを特徴とする請求項7記載のコード画像処理装置。
  9. 前記ブロック判定部は、前記ブロック特徴量算出部が検出した前記矩形ブロック単位領域の極大位置の濃度レベルと極小位置の濃度レベルとの差が所定範囲内に含まれている場合、前記矩形ブロック単位領域が、ステガノグラフィコード領域に含まれていると判定することを特徴とする請求項7記載のコード画像処理装置。
  10. 前記ブロック特徴量算出部は、ステガノグラフィコード、1次元コード、又は2次元コードの特徴量を算出する順番に優先度をつけることを特徴とする請求項9記載のコード画像処理装置。
  11. コード画像を判別するためのコード画像処理プログラムにおいて、
    コンピュータを、
    画像データから矩形ブロック単位領域を抽出するブロック抽出手段、
    前記矩形ブロック単位領域に含まれているコードの特徴量を算出するブロック特徴量算出手段、
    前記特徴量から前記矩形ブロック単位領域に含まれているコードの種類を判定するブロック判定手段、
    判定したコードの種類に基づいて処理を選択するコード処理選択手段、
    として機能させ、
    前記ブロック特徴量算出手段は、隣接する矩形ブロック単位領域の濃度の大小関係に基づいて埋め込まれたステガノグラフィコードの特徴量を算出し、1次元コード、又は2次元コードの特徴量を算出し、
    前記ブロック判定手段は、前記ステガノグラフィコード、前記1次元コード、又は前記2次元コードを判別することを特徴とするコード画像処理プログラム。
  12. 前記ブロック特徴量算出手段は、前記矩形ブロック単位領域の濃度レベルの分布の極大位置及び極小位置を検出することを特徴とする請求項11記載のコード画像処理プログラム。
  13. 前記ブロック判定手段は、前記ブロック特徴量算出手段が検出した極大位置及び極小位置が格子状に配置されている場合、前記矩形ブロック単位領域が、ステガノグラフィコード領域に含まれていると判定することを特徴とする請求項12記載のコード画像処理プログラム。
  14. 前記ブロック判定手段は、前記ブロック特徴量算出手段が検出した前記矩形ブロック単位領域の極大位置の濃度レベルと極小位置の濃度レベルとの差が所定範囲内に含まれている場合、前記矩形ブロック単位領域が、ステガノグラフィコード領域に含まれていると判定することを特徴とする請求項12記載のコード画像処理プログラム。
  15. 前記ブロック特徴量算出手段は、ステガノグラフィコード、1次元コード、又は2次元コードの特徴量を算出する順番に優先度をつけることを特徴とする請求項14記載のコード画像処理プログラム。
JP2006190259A 2006-07-11 2006-07-11 コード画像処理方法、コード画像処理装置及びコード画像処理プログラム Active JP4967488B2 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2006190259A JP4967488B2 (ja) 2006-07-11 2006-07-11 コード画像処理方法、コード画像処理装置及びコード画像処理プログラム
US11/783,056 US7920737B2 (en) 2006-07-11 2007-04-05 Code image processing method and code image processing apparatus
EP07110799A EP1879145A1 (en) 2006-07-11 2007-06-21 Code image processing method and code image processing apparatus

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2006190259A JP4967488B2 (ja) 2006-07-11 2006-07-11 コード画像処理方法、コード画像処理装置及びコード画像処理プログラム

Publications (2)

Publication Number Publication Date
JP2008020988A JP2008020988A (ja) 2008-01-31
JP4967488B2 true JP4967488B2 (ja) 2012-07-04

Family

ID=38610088

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2006190259A Active JP4967488B2 (ja) 2006-07-11 2006-07-11 コード画像処理方法、コード画像処理装置及びコード画像処理プログラム

Country Status (3)

Country Link
US (1) US7920737B2 (ja)
EP (1) EP1879145A1 (ja)
JP (1) JP4967488B2 (ja)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5140820B2 (ja) * 2008-03-31 2013-02-13 日本電産サンキョー株式会社 シンボル情報読取装置及びシンボル情報読取方法
CN108509775B (zh) * 2018-02-08 2020-11-13 暨南大学 一种基于机器学习的恶意png图像识别方法

Family Cites Families (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7158654B2 (en) * 1993-11-18 2007-01-02 Digimarc Corporation Image processor and image processing method
GB9517436D0 (en) * 1995-08-25 1995-10-25 Eidos Plc Video processing for storage or transmission
TW311999B (en) 1996-10-16 1997-08-01 Ibm Method of recording media data on recording media, accessing media data and system thereof
US6250551B1 (en) * 1998-06-12 2001-06-26 Symbol Technologies, Inc. Autodiscrimination and line drawing techniques for code readers
JP2000078399A (ja) * 1998-08-31 2000-03-14 Sharp Corp 画像処理装置
US6556688B1 (en) 1999-03-15 2003-04-29 Seiko Epson Corporation Watermarking with random zero-mean patches for printer tracking
JP3678941B2 (ja) * 1999-05-28 2005-08-03 シャープ株式会社 画像処理装置及びそれを備えた画像形成装置
BR9917573A (pt) * 1999-12-07 2002-08-06 Sun Microsystems Inc Dispositiivo de identiificação que contém uma foto segura, assim como um meio e método para autenticação de tal dispositiivo de identificação
JP2001175804A (ja) * 1999-12-16 2001-06-29 Oki Electric Ind Co Ltd バーコード読取装置
JP2002042052A (ja) * 2000-07-28 2002-02-08 Olympus Optical Co Ltd シンボル情報読取装置
US7128266B2 (en) * 2003-11-13 2006-10-31 Metrologic Instruments. Inc. Hand-supportable digital imaging-based bar code symbol reader supporting narrow-area and wide-area modes of illumination and image capture
US6775394B2 (en) * 2002-03-12 2004-08-10 Matsushita Electric Industrial Co., Ltd. Digital watermarking of binary document using halftoning
JP2004094551A (ja) * 2002-08-30 2004-03-25 Fujitsu Ltd 画像コード化装置、方法及びプログラム
JP2004179783A (ja) 2002-11-25 2004-06-24 Nippon Telegr & Teleph Corp <Ntt> 携帯用クライアント装置及び携帯用クライアント支援システム及びid解読方法及びid解読プログラム
JP3784781B2 (ja) * 2003-05-20 2006-06-14 富士通株式会社 画像データ処理装置、画像データ処理方法、画像データ処理プログラムおよび画像データ処理システム
JP4180497B2 (ja) 2003-12-05 2008-11-12 富士通株式会社 コード種類判別方法、およびコード境界検出方法
WO2006030514A1 (ja) * 2004-09-16 2006-03-23 Fujitsu Limited 画像複製制御装置、画像複製制御方法、画像作成装置、画像作成方法,プログラム、画像複製装置
JPWO2006030509A1 (ja) * 2004-09-16 2008-05-08 富士通株式会社 画像検索装置、画像検索方法、画像作成装置、画像作成方法、プログラム
JP4232728B2 (ja) * 2004-10-25 2009-03-04 沖電気工業株式会社 情報埋め込み領域判定装置,印刷物発行装置

Also Published As

Publication number Publication date
JP2008020988A (ja) 2008-01-31
EP1879145A1 (en) 2008-01-16
US20080013817A1 (en) 2008-01-17
US7920737B2 (en) 2011-04-05

Similar Documents

Publication Publication Date Title
EP1265188B1 (en) Pattern extraction apparatus and method
JP2005173646A (ja) コード種類判別方法、およびコード境界検出方法
AU2011250827B2 (en) Image processing apparatus, image processing method, and program
CN102243704A (zh) 用于二维码的定位***、二维码的识别方法及设备
CN110913243A (zh) 一种视频审核的方法、装置和设备
KR20080006112A (ko) 경계 영역의 선명도를 개선하는 하프토닝 방법 및 장치
CN108965646B (zh) 图像处理装置、图像处理方法
CN110210467B (zh) 一种文本图像的公式定位方法、图像处理装置、存储介质
US8848984B2 (en) Dynamic thresholds for document tamper detection
CN106251358B (zh) 一种图像处理方法及装置
JP4967488B2 (ja) コード画像処理方法、コード画像処理装置及びコード画像処理プログラム
JP4967045B2 (ja) 背景判別装置、方法及びプログラム
JP4398498B2 (ja) コード境界検出方法
JP2005341493A (ja) 情報埋め込み装置、情報検出装置、情報埋め込み・検出システム、情報埋め込み方法、情報検出方法、情報埋め込み・検出、情報埋め込みプログラム、情報検出プログラム、情報埋め込み・検出プログラムおよび記録媒体
JP2007299098A (ja) Qrコード読取装置
CN113052836A (zh) 电子身份照片检测方法、装置、电子设备及存储介质
US20080225340A1 (en) Image processing apparatus, image processing method, and computer program product
JP2007257360A (ja) 2次元コード、2次元コード読み取り装置、及び、2次元コード読み取り用プログラム
JP4653215B2 (ja) コード認識方法及び装置、電子装置、プログラム及び記憶媒体
JP2018116424A (ja) 画像処理装置及びプログラム
CN113469931B (zh) 图像检测模型训练、修改检测方法、装置以及存储介质
CN109117844B (zh) 一种密码确定方法和装置
CN109918037B (zh) 识别码输出方法、装置、控制器及存储介质
JP4716029B2 (ja) 画像属性判別装置及び画像属性判別プログラム
JP2009272714A (ja) 画像処理装置、画像処理方法、プログラム及びプログラムを記録した記録媒体

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20090512

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20111121

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20111206

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20120203

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20120306

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20120319

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20150413

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Ref document number: 4967488

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150