JP4724800B1 - 物品検出装置およびプログラム - Google Patents
物品検出装置およびプログラム Download PDFInfo
- Publication number
- JP4724800B1 JP4724800B1 JP2010172618A JP2010172618A JP4724800B1 JP 4724800 B1 JP4724800 B1 JP 4724800B1 JP 2010172618 A JP2010172618 A JP 2010172618A JP 2010172618 A JP2010172618 A JP 2010172618A JP 4724800 B1 JP4724800 B1 JP 4724800B1
- Authority
- JP
- Japan
- Prior art keywords
- region
- image
- dimensional code
- article
- information
- 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
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06K—GRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
- G06K7/00—Methods or arrangements for sensing record carriers, e.g. for reading patterns
- G06K7/10—Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation
- G06K7/14—Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation using light without selection of wavelength, e.g. sensing reflected white light
- G06K7/1404—Methods for optical code recognition
- G06K7/1439—Methods for optical code recognition including a method step for retrieval of the optical code
- G06K7/1443—Methods for optical code recognition including a method step for retrieval of the optical code locating of the code in an image
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06K—GRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
- G06K7/00—Methods or arrangements for sensing record carriers, e.g. for reading patterns
- G06K7/10—Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation
- G06K7/14—Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation using light without selection of wavelength, e.g. sensing reflected white light
- G06K7/1404—Methods for optical code recognition
- G06K7/1439—Methods for optical code recognition including a method step for retrieval of the optical code
- G06K7/1447—Methods for optical code recognition including a method step for retrieval of the optical code extracting optical codes from image or text carrying said optical code
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06K—GRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
- G06K19/00—Record carriers for use with machines and with at least a part designed to carry digital markings
- G06K19/06—Record carriers for use with machines and with at least a part designed to carry digital markings characterised by the kind of the digital marking, e.g. shape, nature, code
- G06K2019/06215—Aspects not covered by other subgroups
- G06K2019/06225—Aspects not covered by other subgroups using wavelength selection, e.g. colour code
Landscapes
- Physics & Mathematics (AREA)
- Engineering & Computer Science (AREA)
- Health & Medical Sciences (AREA)
- Electromagnetism (AREA)
- General Health & Medical Sciences (AREA)
- Toxicology (AREA)
- Artificial Intelligence (AREA)
- Computer Vision & Pattern Recognition (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Image Analysis (AREA)
Abstract
【解決手段】取得された画像(原画像)から生成されたエッジ画像に基づき、このエッジ画像中における候補領域の抽出、この抽出した候補領域に対応する原画像中の対応領域それぞれに特徴的なパターンが含まれているか否かの判定を経て、原画像中から二次元コードの領域を検出する。また、検出した二次元コードの領域について各セルの領域について色判定処理を行い、各セルの領域の色の判定結果に基づきコード化された情報を識別する。また、識別された情報に対応する物品のなかに、検出対象の物品が存在するか否かを判定し、存在する場合に、原画像中のその物品に対応する二次元コードの領域を強調表示する加工を施し、加工された画像を表示する。
【選択図】図3
Description
また、可視光通信タグと2次元イメージセンサを用いて物品の位置管理を行う技術が特許文献2に開示されている。
また、上記特許文献2の技術においては、物品の位置を特定するために可視光通信タグを必要とするため、大量の物品を管理する場合にコストが高くなるといった問題があった。
本発明は、このような課題を解決するためになされたものであり、その目的は、画像に含まれる複数の二次元コードそれぞれを特定すると共に、二次元コードそれぞれに対応する物品のうち検出対象の物品に係る情報を物品の位置と共に視覚的に確認するための技術を提供することである。
上記課題を解決するために、第1の構成の物品検出装置は、物品毎に異なる識別情報を含む情報をコード化した二次元コードがそれぞれ付された複数の物品と該複数の物品に付された二次元コードの領域とを含む領域が撮影されてなる画像を取得する画像取得部と、該画像取得部により取得された画像を、該画像に含まれるエッジ成分の分布を示すエッジ画像に変換する成分変換部と、該成分変換部により変換されたエッジ画像から、あらかじめ定められた規則であって、前記二次元コードの領域の候補領域となるべきか否かを前記二次元コードの外形形状のパラメータに基づいて判定するための規則に従って形成されている領域を前記二次元コードの領域からなる候補領域として抽出する領域抽出部と、前記画像取得部により取得された画像における、前記領域抽出部により抽出された候補領域に対応する対応領域それぞれについて、該対応領域の形成する要素に、該対応領域内に形成されているパターンが前記二次元コードの領域であるか否かを決定するためのパターンである特徴的なパターンが含まれているか否かを判定するパターン判定部と、該パターン判定部により特徴的なパターンが含まれていると判定された対応領域を、前記二次元コードの領域として検出することにより、前記画像に含まれる複数の二次元コードの領域を検出可能とする領域検出部と、該領域検出部により検出された二次元コードの領域それぞれについて、該二次元コードの領域にて示される前記識別情報を含む情報を識別する情報識別部と、検出対象の物品を指定する指定情報を設定する指定情報設定部と、前記識別情報と該識別情報に対応する物品に係る情報とが対応付けられてなる情報が登録されたデータベースに基づき、前記情報識別部により識別された識別情報に対応する物品のなかに前記指定情報で指定された物品が存在するか否かを判定する物品有無判定部と、前記物品有無判定部で前記指定情報で指定された物品が存在すると判定されたときに、前記画像取得部で取得された画像に対して、該画像における前記指定された物品に対応する二次元コードの領域を強調表示する加工を施す画像加工部と、前記画像加工部で加工された画像を表示する画像表示部と、を備えている。
そして、前記物品に係る情報は、所定保管場所において前記物品の保管を開始した時期の情報である管理開始時期情報を含み、前記画像加工部は、前記強調表示する加工に加えて、前記画像取得部で取得された画像に対して、前記管理開始時期情報に基づき、前記指定された物品に対応する二次元コードの領域上、または、その近傍に、前記保管を開始した時期の古い順に順番を示す画像を追加する加工を前記画像取得部で取得された画像に対して施す。
このように、原画像の領域において、エッジ画像の候補領域に対応する対応領域のうち、特徴的なパターンが含まれる対応領域を、原画像中における二次元コードの領域として検出することにより、原画像に含まれる複数の二次元コードの領域それぞれを特定することができるようになる。
また、上記構成では、指定物品が存在すると判定され、該指定物品に対応する二次元コードの領域が特定されると、原画像に対して指定物品に対応する二次元コードの領域を強調表示する加工を施すことができる。
このような加工の施された画像を表示することにより、ユーザは、指定物品の位置を視覚的に簡易に把握することができる。
また、上記構成では、画像加工部で加工された画像を表示装置に表示することができる。
これにより、原画像が表示されると共に原画像中の指定物品に付されている二次元コードの領域が強調表示され、ユーザは、指定物品の位置を視覚的に簡易に把握することができる。
また、上記構成では、原画像に対して、指定物品に対応する二次元コードの領域を強調表示する加工に加えて、指定物品に係る情報に基づく情報を示す画像を追加する加工を施すことができる。
このようにして加工された画像を表示することにより、ユーザは、指定物品の位置を目視で瞬時に把握することができると共に、指定物品に係る情報に基づく情報を示す画像から、例えば、品名、個数、管理開始時期、出荷期限、消費期限などの情報を確認することができる。
また、上記構成では、物品に係る情報に含まれる物品の管理開始時期情報に基づき、指定物品の管理開始時期の古い順に、その順番を示す画像(例えば、数字画像)を、原画像における指定物品に対応する二次元コードの領域上、または、その近傍に追加する加工を行うことができる。
このようにして加工された画像を表示することにより、ユーザは、指定物品の管理開始時期の順番を視覚的に簡易に把握することができるので、物品を出荷する際に、管理開始時期の古い順に出荷する作業等を容易に行うことができる。
この構成において、原画像から変換されるエッジ画像は、原画像に含まれるエッジ成分の分布を示すものであればよく、例えば、原画像における輝度、明度など特定の成分のみを分布させた画像における所定のしきい値以上の成分のみを抽出(具体的にはしきい値で二値化)した画像や、この画像に対して輪郭線の抽出をした画像などのことである。このことは、下記第2の構成においても同様である。
また、「物品に係る情報」とは、品名、品名コード、シリアル番号等、個数、管理開始時期、出荷期限、消費期限などの情報を含むものである。このことは、下記第2の構成においても同様である。
また、「強調表する加工」とは、原画像中における指定物品に対応する二次元コードの領域に対して、赤色等の目立つ色のラインで周りを囲む加工、輪郭部を太線にしたり色を変更したりする加工、特定の色で塗りつぶす加工などが含まれる。他にも、処理時間の許容範囲内で、指定物品に対応する二次元コードの領域を揺らす等のアニメーション表示する加工なども含む。このことは、下記第2の構成においても同様である。
一方、上記課題を解決するために、第2の構成の物品検出装置は、物品毎に異なる識別情報を含む情報をコード化した二次元コードがそれぞれ付された複数の物品と該複数の物品に付された二次元コードの領域とを含む領域が撮影されてなる画像を取得する画像取得部と、該画像取得部により取得された画像を、該画像に含まれるエッジ成分の分布を示すエッジ画像に変換する成分変換部と、該成分変換部により変換されたエッジ画像から、あらかじめ定められた規則であって、前記二次元コードの領域の候補領域となるべきか否かを前記二次元コードの外形形状のパラメータに基づいて判定するための規則に従って形成されている領域を前記二次元コードの領域からなる候補領域として抽出する領域抽出部と、前記画像取得部により取得された画像における、前記領域抽出部により抽出された候補領域に対応する対応領域それぞれについて、該対応領域の形成する要素に、該対応領域内に形成されているパターンが前記二次元コードの領域であるか否かを決定するためのパターンである特徴的なパターンが含まれているか否かを判定するパターン判定部と、該パターン判定部により特徴的なパターンが含まれていると判定された対応領域を、前記二次元コードの領域として検出することにより、前記画像に含まれる複数の二次元コードの領域を検出可能とする領域検出部と、該領域検出部により検出された二次元コードの領域それぞれについて、該二次元コードの領域にて示される前記識別情報を含む情報を識別する情報識別部と、検出対象の物品を指定する指定情報を設定する指定情報設定部と、前記識別情報と該識別情報に対応する物品に係る情報とが対応付けられてなる情報が登録されたデータベースに基づき、前記情報識別部により識別された識別情報に対応する物品のなかに前記指定情報で指定された物品が存在するか否かを判定する物品有無判定部と、前記物品有無判定部で前記指定情報で指定された物品が存在すると判定されたときに、前記画像取得部で取得された画像に対して、該画像における前記指定された物品に対応する二次元コードの領域を強調表示する加工を施す画像加工部と、前記画像加工部で加工された画像を表示する画像表示部と、を備えている。
そして、前記物品に係る情報は、所定保管場所における前記物品の保管期限又は前記物品の消費期限の少なくとも一方を含む管理期限の情報を含み、前記指定情報で指定される物品は、前記管理期限を経過、または、前記管理期限までの期間が所定期間以下となっている物品であり、前記物品有無判定部は、前記情報識別部により識別された識別情報に対応する物品のなかに前記管理期限を経過、または、前記管理期限までの期間が所定期間以下となっている物品が存在するか否かを判定する。
この構成では、取得された画像(原画像)から生成されたエッジ画像に基づき、このエッジ画像中における候補領域の抽出、この抽出した候補領域に対応する原画像中の対応領域それぞれに特徴的なパターンが含まれているか否かの判定を経て、原画像中から二次元コードの領域を検出することができる。
このように、原画像の領域において、エッジ画像の候補領域に対応する対応領域のうち、特徴的なパターンが含まれる対応領域を、原画像中における二次元コードの領域として検出することにより、原画像に含まれる複数の二次元コードの領域それぞれを特定することができるようになる。
また、上記構成では、取得された画像からエッジ画像を生成し、このエッジ画像から、二次元コードの領域の候補となる候補領域を抽出したうえで、原画像における、この抽出した候補領域に対応する領域から二次元コードの領域を検出して情報の識別を行うことができる。そのため、候補領域を抽出することなく二次元コードの領域を検出しようとする場合と比べて、抽出した候補領域という限定的な範囲から二次元コードの領域の検出を行うことができる。これにより、二次元コードの領域から情報の識別を行うまでに要する処理負荷および処理時間を抑えることができる。
また、上記構成では、物品毎に異なる識別情報と物品に係る情報とを対応付けてなる情報が登録されたデータベースに基づき、上記情報の識別により得られた識別情報に対応する物品のなかに指定情報で指定された物品(以下、指定物品と称す)が存在するか否かの判定を行うことで、原画像中の二次元コードの領域のなかから指定物品に対応する二次元コードの領域を特定することができる。
また、上記構成では、指定物品が存在すると判定され、該指定物品に対応する二次元コードの領域が特定されると、原画像に対して指定物品に対応する二次元コードの領域を強調表示する加工を施すことができる。
このような加工の施された画像を表示することにより、ユーザは、指定物品の位置を視覚的に簡易に把握することができる。
また、上記構成では、画像加工部で加工された画像を表示装置に表示することができる。
これにより、原画像が表示されると共に原画像中の指定物品に付されている二次元コードの領域が強調表示され、ユーザは、指定物品の位置を視覚的に簡易に把握することができる。
また、上記構成では、原画像に対して、指定物品に対応する二次元コードの領域を強調表示する加工に加えて、指定物品に係る情報に基づく情報を示す画像を追加する加工を施すことができる。
このようにして加工された画像を表示することにより、ユーザは、指定物品の位置を目視で瞬時に把握することができると共に、指定物品に係る情報に基づく情報を示す画像から、例えば、品名、個数、管理開始時期、出荷期限、消費期限などの情報を確認することができる。
また、上記構成では、物品に係る情報に含まれる物品の管理期限の情報に基づき、管理期限を経過、または、管理期限までの期間が所定期間以下となった物品を指定物品として検出することができる。そして、原画像に対して、指定物品に対応する二次元コードの領域を強調表示する加工を施すことができる。
このようにして加工された画像を表示することにより、ユーザは、管理期限を経過、または、管理期限までの期間が所定期間以下となった物品を目視で瞬時に把握することができる。例えば、お菓子や生鮮食品等の食品を販売する店舗内において商品陳列棚等に載置された複数の食品の中から賞味期限切れの商品を簡易に検出することができるので、作業効率を向上することができる。
さらに、第3の構成の物品検出装置は、上記第1〜第2の構成のいずれか1において、前記成分変換部による画像のエッジ画像への変換を、異なる1種類以上の変換条件のそれぞれについて順に実施させると共に、各変換条件について変換されたエッジ画像それぞれに対し、前記領域抽出部による候補領域の位置情報の抽出、前記パターン判定部による特徴的なパターンの判定、および、前記領域検出部による二次元コードの領域の検出、を繰り返し実施させる繰り返し実施部と、特定の前記エッジ画像に対して、前記領域抽出部により抽出された候補領域それぞれが、別のエッジ画像について前記領域抽出部が抽出した候補領域(以降「抽出済み候補領域」という)と一致するか否かを、両方の候補領域に基づいて判定する一致判定部と、を備えている。
この構成では、原画像に基づいて生成される複数種類のエッジ画像それぞれについて、候補領域の位置情報の抽出、この抽出した位置情報に対応する対応領域に特徴的なパターンが含まれているか否かの判定、および、二次元コードの領域の検出を繰り返し実施している。
これにより、特定のエッジ画像に基づいて二次元コードの領域を検出できなかったとしても、別のエッジ画像に基づいて検出されることが期待でき、その結果、原画像における二次元コードの領域の検出精度を高めることができる。
そのため、複数のエッジ画像それぞれに基づいて検出された各二次元コードの領域について、この二次元コードの領域にて示される情報を識別するに際し、本来同じものであるはずの二次元コードの領域を繰り返し識別してしまうといった無用な処理負担をなくすことができる。
さらに、第4の構成の物品検出装置は、上記第3の構成において、前記一致判定部は、特定の前記エッジ画像に対して、前記領域抽出部により抽出された候補領域それぞれが、別のエッジ画像における前記抽出済み候補領域と一致するか否かを、両方の候補領域における重複度合に応じて判定する。
この構成において、前記一致判定部は、特定の前記エッジ画像に対して、前記領域抽出部により抽出された候補領域それぞれが、別のエッジ画像における前記抽出済み候補領域と一致するか否かを、両方の候補領域における重複度合に応じて判定する。
この構成であれば、特定のエッジ画像から抽出された候補領域と、別のエッジ画像における抽出済み候補領域との重複度合に応じ、その重複度合が一定以上であることをもって、両候補領域が一致すると判定することができる。
〔第5の構成〕
さらに、第5の構成の物品検出装置は、上記第3〜第4の構成のいずれか1において、前記一致判定部は、特定の前記エッジ画像に対して、前記領域抽出部により抽出された候補領域それぞれが、別のエッジ画像における前記抽出済み候補領域と一致するか否かを、両方の候補領域のうちの一方の候補領域が他方の候補領域に包摂されているか否かに応じて判定する。
この構成であれば、特定のエッジ画像から抽出された候補領域、および、別のエッジ画像における抽出済み候補領域のうち、一方の候補領域が他方の候補領域に包摂されていることをもって、両候補領域が一致すると判定することができる。
〔第6の構成〕
さらに、第6の構成の物品検出装置は、上記第3〜第5の構成のいずれか1において、前記二次元コードの領域が多角形である場合において、前記一致判定部は、特定の前記エッジ画像において前記領域抽出部により抽出された候補領域それぞれについて、該候補領域として形成された多角形における1以上の頂点が、前記抽出済み候補領域として形成された多角形におけるいずれかの頂点から一定範囲内に位置しているか否かに応じて、前記領域抽出部により抽出された候補領域それぞれが、別のエッジ画像における前記抽出済み候補領域と一致するか否かを判定する。
この構成であれば、特定のエッジ画像から抽出された候補領域における1以上の頂点が、抽出済み候補領域におけるいずれかの頂点から一定範囲内に位置していることをもって、両候補領域が一致すると判定することができる。
ここでいう「いずれかの頂点から一定範囲内」とは、特定のエッジ画像から抽出された候補領域と、別のエッジ画像における抽出済み候補領域とが一致する場合における両者の位置関係で決まる範囲内とすればよい。
また、両候補領域が一致すると判定する条件としては、特定のエッジ画像から抽出された候補領域における少なくとも1の頂点が、別のエッジ画像における抽出済み候補領域におけるいずれかの頂点から一定範囲内に位置していればよい。また、両候補領域が一致すると判定するに際しては、いくつの頂点が一定範囲内に位置していることを条件としてもよく、二次元コードの領域を検出するまでの処理負担や処理速度などに応じて適宜変更することが考えられる。
〔第7の構成〕
さらに、第7の構成の物品検出装置は、上記第1〜第6の構成のいずれか1において、前記二次元コードは、複数のセルが配列され、前記複数のセルに色の異なる複数種類のセルが含まれるように各セルに色を付すことで該色または色の組合せに応じた1以上の情報それぞれをコード化した二次元コードであり、前記情報識別部は、前記二次元コードの領域における各セルの領域に付された色または色の組合せに基づいて情報を識別する。
この構成であれば、二次元コードに付された色に基づいて、二次元コードの領域で示される情報を識別することができる。
さらに、第8の構成の物品検出装置は、上記第7の構成において、前記二次元コードの領域は、前記複数のセルそれぞれに付される色が、複数種類の色のうち、該セルにてコード化すべき情報、および、該セルと隣接するセルに付された色に応じた着色規則に従って定められている。
このような問題に対しては、一部のセルに対応する領域が欠けてしまったような場合であっても、これを補償して適切な情報の識別が実現できるようにしておくことが望ましい。
なお、この構成において、着色規則に従って推定されるセルの色として、複数の色が推定されるような場合には、そのうちのいずれかの色を、例えば、推定結果の確からしさなどといったパラメータに基づいて選択し、そうして選択した色が付されていると推定することとすればよい。また、複数の色が推定されるような場合、複数の色が付されているパターンそれぞれについて情報を識別し、そうして識別した情報の中から、いずれかの情報をユーザに選択させるようにしてもよい。
〔第9の構成〕
さらに、第9の構成の物品検出装置は、上記第7または第8の構成において、前記領域検出部により検出された二次元コードの領域それぞれについて、該二次元コードの領域における各セルの領域に付されている色を、該二次元コードにおいて使用される複数の色それぞれを中心に拡がる色空間上の判定領域のいずれに含まれているかにより判定する色判定部、を備えている。そして、前記情報識別部は、前記二次元コードの領域における各セルの領域に、該セルの領域について前記色判定部が判定した色が付されているものとして、各セルの領域に付された色または色の組合せに基づいて情報を識別する。
この構成であれば、二次元コードにおける各セルの領域に付されている色を、色空間におけるいずれの判定領域に含まれているかにより判定することができる。
さらに、第10の構成の物品検出装置は、上記第10の構成において、前記色判定部は、複数の色それぞれに対応する前記判定領域のいずれにも含まれていないと判定したセルの領域が一定数以上存在する二次元コードの領域に対し、前記判定領域を一定領域だけ拡げたうえで、再度、各セルの領域に付されている色を判定する。
このような問題に対しては、多くのセルの領域に付された色がいずれの判定領域にも含まれない場合であっても、これを補償して適切な情報の識別が実現できるようにしておくことが望ましい。
この構成において、判定領域を拡げる際の拡張幅は、他の判定領域と干渉しない範囲を上限として拡げることとすればよく、判定領域のいずれにも含まれていないと判定したセルが一定数未満となるまで、判定領域を徐々に拡げて再度の判定を繰り返すこととしてもよい。
さらに、第11の構成の物品検出装置は、上記第9の構成において、前記色判定部は、複数の色それぞれに対応する前記判定領域のいずれにも含まれていないと判定したセルの領域が一定数以上存在する二次元コードの領域に対し、該二次元コードの領域における色の分布に応じて前記判定領域を色空間上で変移させたうえで、再度、各セルの領域に付されている色を判定する。
この構成において、判定領域は、二次元コードの領域における色成分の偏りを打ち消すことのできる色空間上の位置へと変移させることとすればよい。より具体的には、二次元コードの領域において特定の色成分が全体的に大きくなっている場合に、この色成分を小さくする方向に判定領域を変移させることが考えられる。
なお、上記第10、第11の構成において、「判定領域のいずれにも含まれていないと判定したセルが一定数以上存在する」における「一定数」については、全てのセルに占める該当セルの割合であってもよいし、該当セルの絶対数であってもよい。また、二次元コードにおいて該当セルが特定パターンで配置されている数であってよい。
さらに、第12の構成の物品検出装置は、上記第1〜第11の構成のいずれか1におい、前記領域抽出部は、前記二次元コードの形成に係る規則を規定するテンプレートに基づいて、前記成分変換部により変換されたエッジ画像から、そのテンプレートにて定められた規則に従って形成されている領域を候補領域として抽出する。
なお、上述した物品検出装置は、単体の装置により構成してもよいし、複数の装置が協調して動作するシステムとして構成してもよい。
また、上記課題を解決するための第13の構成としては、上記第1から第12のいずれか1の構成における全ての構成部として機能させるための各種処理手順を、コンピュータシステムに実行させるためのプログラムとしてもよい。
このようなプログラムにより制御されるコンピュータシステムは、上記各構成に係る物品検出装置の一部を構成することができる。
なお、上述した各プログラムは、コンピュータシステムによる処理に適した命令の順番付けられた列からなるものであって、各種記録媒体や通信回線を介して物品検出装置や、これを利用するユーザに提供されるものである。
(1)物品検出装置1の構成
まず、図1に基づき、物品検出装置1の構成を説明する。図1は、物品検出装置1の構成例を示すブロック図である。
物品検出装置1は、図1に示すように、CPU(Central Processing Unit)60と、RAM(Random Access Memory)62と、ROM(Read Only Memory)64と、入出力インターフェース(I/F)66と、バス68とを含んで構成されるコンピュータシステムを備えている。CPU60、RAM62、ROM64およびI/F66は、バス68に接続されており、バス68を介してこれら接続デバイス間のデータの送受信を可能としている。
CPU60は、ROM64または記憶装置70に予め記憶された各種専用のコンピュータプログラムをRAM62に読み込み、RAM62に読み込まれたプログラムに記述された命令に従って、各種リソースを駆使して、後述する二次元コードを利用した物品検出処理(以下、コード利用物品検出処理と称す)を実行する。
具体的に、記憶装置70は、二次元コードを特徴づける情報を規定したテンプレート、カメラ76によって撮影して得られる画像データを記憶する。
さらに、記憶装置70は、各二次元コードにおいて独特のセル群それぞれの色または色の組み合わせと、各二次元コードに対してユニークな情報を含む情報との対応関係が登録されたデータテーブルを記憶する。
表示装置72は、CRTディスプレイ、液晶ディスプレイなどの周知の表示装置であり、CPU60からの指令に応じて、カメラ76で撮影された画像、該画像を加工した加工画像等の画像(動画を含む)の表示を行う。
カメラ76は、デジタルカメラ等の周知のカメラであり、所定の撮影領域を撮影して得られた画像を示す画像データを生成して順次I/F66を介してRAM62または記憶装置70に送信して、RAM62または記憶装置70に画像データを格納する。
なお、この物品検出装置1は、例えば、携帯電話端末、携帯情報端末、周知のパーソナルコンピュータなどに実装されるものとして構成される。
なお、本実施形態において、上記各処理は、入力装置74を介したユーザーの操作入力(指示情報)をトリガとして行われる一連の処理となる。
次に、図2に基づき、物品検出装置1により読み取る二次元コード100について説明する。図2は、二次元コード100の構成例を示す図である。
本実施形態における二次元コード100は、図2に示すように、黒色のセパレータ110上に複数のセルC11〜Cpq(2≦p,2≦q)が一定間隔で配列され、所定の情報が各セルの色および色の組み合わせによりコード化されたものである。つまり、この二次元コードは、セルそれぞれ、または、組み合わせに係るセル群それぞれが、そこに付された複数の色(多色)、または、色の組み合わせパターンにより、数字や文字など複数種類の値(多値)を表現可能となっている。例えば、複数の二次元コードについて、それぞれ、色の組み合わせや、色の配列パターンを変えることによって、各二次元コードに固有のユニークな情報を付すことが可能である。
本実施形態においては、セルCに付けられうるマークの色として、黒(k)を除く1色以上の色が、黒(k)でマークが付けられたセルCとセットで配列されている。
また、各行のセルCのうち、先頭(図2における左端の列))に位置するセルC11〜Cp1(本実施形態では、黒(k)が付されたセル)は、二次元コードの位置を特定するための特定セルとして配置されたものである。
ここでいう「成分領域同士が互いに干渉しない」とは、各成分領域が重複しないように、各成分領域同士の間隔を空けて配置したり、各成分領域の境界を隣接させて配置したり、することである。
また、二次元コード100における特定セルに付けられたマークの色、および、セパレータ110の色には、セルCに付すマークの色に用いられていない成分領域における中心座標の色(本実施形態では黒系統の色)が用いられている。
以下に、CPU60がROM64または記憶装置70に記憶された専用のコンピュータプログラムに従って実行する各種処理の手順について順次説明する。
(3−1)コード利用物品検出処理
まず、物品検出装置1が、カメラ76からの画像データを受信中において、入力装置74を介したユーザからの指示入力に応じて開始されるコード利用物品検出処理の処理手順を、図3に基づいて説明する。
コード利用物品検出処理が開始されると、まず、カメラ76で撮影された撮影画像データからのエッジ画像データの生成、エッジ画像データからの候補領域の抽出、候補領域が有効か否かの判定、原画像における有効な候補領域に対応する領域が特徴パターンを含むか否かの判定といった手順を経て、二次元コードの領域を検出する。
さらに、予め設定された検出モードに応じて、検出対象の物品に対応する二次元コードの特定、原画像の加工、および加工した画像の表示といった手順を経て、原画像中の検出物品の位置が明示された画像を表示する。具体的に、画像の加工は、原画像(複写画像でも可)に対して、原画像中における特定した二次元コードの画像部分の強調(例えば、マーキング、色の変更等)、検出モードに応じた物品に係る情報画像(例えば、文字画像)の追加等を行う処理となる。従って、原画像に対して、検出対象の物品の位置を明示する画像(または効果)および該物品に係るモードに応じた情報画像が加えられた画像が、表示装置72に表示されることになる。
コード利用物品検出処理は、CPU60によって、専用のコンピュータプログラムを実行することで起動される処理であって、プログラムが実行されると、図3に示すように、まず、ステップS100へと移行する。
ここで、物品検出モードが設定されている場合は、指示入力を行う前に、例えば、物品のシリアル番号、品名等の検出対象の物品の識別情報を設定する必要がある。この設定は、入力装置74を介して、ユーザが検出対象の商品を識別する情報を手入力してもよいし、物品リスト等を表示してユーザがその中から物品名等の識別情報を選択するようにしてもよい。
なお、本実施形態において、指示入力は、表示装置72に表示されたカメラ76の撮影画像を見ながらユーザが入力装置74を介して行う処理となり、検出対象の物品は、指示入力の入力時に表示されていた撮影画像の中から検索されることになる。
具体的に、設定されたモードや仕様に応じて、指示入力が行われたタイミングの1枚の画像、または、指示入力のタイミングを起点にして予め設定された複数フレームの画像を取得する。そして、これらの画像データに対して以降の処理が実行される。但し、説明の便宜上、本実施形態では、1枚の画像を取得し、取得した1枚の画像について処理を行うこととする。
ここでいうテンプレートは、二次元コードからなる領域を規定する領域規則、二次元コードにおける特徴的なパターン、二次元コードにマークとして付けられる色(色数,色の種類)の着色規則などを示す情報である。
ただ、「領域規則」は、以降の処理に要する処理負担を軽減するためには、複数の項目を選択して規定したものとすることが望ましく、この場合、候補領域としての抽出数が少なくなる結果、処理負担の軽減に伴って処理時間の短縮が実現されることとなる。
例えば、図2に例示した二次元コード100であれば、上記特定セルC11〜Cp1に付けられた色と、上記ヘッダー領域C11〜C1qの各セルに付けられた複数の色との双方または一方により、二次元コードの領域を示す特徴的なパターンが形成されている。
ステップS106では、以降の処理で参照する変数X,Yを初期化(0→X,1→Y)して、ステップS108に移行する。
ステップS110では、ステップS108において生成されたエッジ画像データに基づいて、このエッジ画像から、二次元コードからなる候補領域それぞれの位置を特定して、ステップS112に移行する。ここでは、ステップS104にて読み出されたテンプレートにおける「領域規則」に基づいて、第Y番目のエッジ画像から、二次元コードからなる候補領域を規定する画像中の座標それぞれが特定される。
ステップS114に移行した場合は、ステップS110において特定された候補領域(座標情報)それぞれをリストに登録して、ステップS116に移行する。
ステップS120では、ステップS118において選択された候補領域が有効なものであるか否かを判定する有効領域判定処理を実行して、ステップS122に移行する。なお、この有効領域判定処理における具体的な処理手順については後述する。
ステップS124に移行した場合は、直前に行われた上記ステップS110において特定された候補領域(新規候補領域)が、過去に行われた上記ステップS110において特定された候補領域(抽出済み候補領域)と同じであるか否かを判定する。
具体的に、新規候補領域が抽出済み候補領域に領域として所定割合以上重複している場合、または、新規候補領域および抽出済み候補領域の一方が他方に包摂されている場合に、新規候補領域が抽出済み候補領域と同じであると判定される。
なお、ここでいう「いずれかの頂点から一定範囲内」とは、特定のエッジ画像から抽出された候補領域と、別のエッジ画像における抽出済み候補領域とが一致する場合に、両方の候補領域が位置しうる位置関係で決まる範囲内とすればよく、上記一定の半径r距離内に限られない。
一方、ステップS124において新規候補領域が抽出済み候補領域と同じではないと判定された場合(No)は、ステップS126に移行する。
ここでは、新規候補領域における二次元コードの形状、角度が補正される。具体的には、例えば、処理対象の領域が斜めに配置されていた場合や、正方形になっていない歪んだ形状となっている場合に、そのようなズレを補正すべく回転や、座標軸に合わせた延長・短縮などが行われる。
さらに、このステップS126では、新規候補領域における二次元コードの色成分が、各セルにおける色の識別性を高めるべく補正される。
ステップS128では、上記ステップS102において取得された画像データで示される原画像のうち、上記ステップS126において補正された候補領域に対応する対応領域に、二次元コードとしての特徴的なパターンが含まれているか否かを判定する。
なお、この判定処理において、セルのパターンを特定する際の各セルの色の判定を行う際に、後述する色判定処理のアルゴリズムを適用することが可能である。
例えば、図2に示す二次元コードにおいて、ヘッダー領域および特定セルの領域を除外した、データ領域のみで構成された二次元コードなど他の構成としてもよい。
この場合は、例えば、計算結果の数値等が正しいパターンを示す数値となっているか否か等で判定を行うことになる。そのため、テンプレートにおける特徴的なパターンは、直接的なパターンだけではなく、間接的に正しいパターンを示す数値などの情報として設定される場合もある。
一方、ステップS128において、二次元コードとしての特徴的なパターンが含まれていると判定した場合(Yes)は、ステップS130に移行する。
ステップS130に移行した場合は、この時点における新規候補領域を二次元コードの領域として検出して、ステップS132に移行する。
この検出処理は、新規候補領域の座標情報に基づき、原画像から新規候補領域を切り出して(複製画像を生成して)、記憶装置70に記憶する処理となる。
この色判定処理は、上記ステップS130において検出された二次元コードの領域を引数として実行され、この二次元コードにおけるセルそれぞれに付された色が戻り値となる。なお、この色判定処理における具体的な処理手順については後述する。
ステップS136では、ステップS134において識別された情報を、RAM62または記憶装置70に格納して、ステップS138に移行する。
ステップS138では、変数Xをインクリメント(X+1→X)して、ステップS140に移行する。
ステップS140では、この時点で変数Xが所定数以上になっているか否かを判定する。つまり、所定数以上の候補領域が二次元コードの体をなしていたか否かを判定する。
つまり、上記ステップS116〜S140は、二次元コードとして検出かつ識別された候補領域の数が所定数以上とならない限り、リストに登録された全てのコード領域について繰り返し行われる。
その後、全ての候補領域について上記ステップS116〜S140が行われたら、上記ステップS116において未処理の候補領域がないと判定されて、ステップS142に移行し、この時点での変数Yの値が、変数nの値より小さい値(Y<n)となっているか否かを判定する。
ステップS144に移行した場合は、変数Yをインクリメント(Y+1→Y)して、ステップS108に移行し、上記ステップS108〜S144の処理を行う。
これ以降は、次のエッジ画像に基づいて上記ステップS110〜S144の処理が行われ、その処理の中で変数Xが所定数以上になれば、上記ステップS140で「Yes」と判定されて、ステップS146に移行する。一方、その処理の中で変数Xが所定数以上にならなければ、その次のエッジ画像についての処理が繰り返し行われることとなる。
ステップS146に移行した場合は、識別された二次元コードの情報に基づき、原画像中における指定物品を検出する物品検出処理を実行して、一連の処理を終了する。なお、この物品検出処理における具体的な処理手順については後述する。
続いて、図3のステップS108であるエッジ画像生成処理の処理手順の一例を図5に基づき説明する。図5(a)は、変数Yの値と画像種類およびしきい値との対応関係の一例を示す図であり、(b)は、エッジ画像生成処理の処理手順の一例を示すフローチャートである。
本実施形態において、エッジ画像の生成は、異なる複数種類の変換条件に基づいて行う。
具体的に、第1〜第i(1≦i)の変換条件に対応する第1〜第i番目のエッジ画像までが、それぞれ異なるしきい値で原画像をグレースケール化してなるグレースケール画像を二値化した画像の輪郭部を線形化した画像となる。
特に、各色成分画像について、予め設定されたしきい値としてk種類(1≦k)のしきい値を用いて二値化を行う場合は、第(i+1)〜第(i+j×k)の変換条件に対応する第(i+1)〜第(i+j×k)番目のエッジ画像までが、j種類の色成分それぞれを原画像から抽出した色成分画像をグレースケール化し、該グレースケール画像をk種類のしきい値それぞれで二値化した二値化画像の輪郭部を線形化した画像となる。
ここでいう「i」および「k」は、予め用意されたしきい値の種類によって値が決定し、「j」は、原画像に用いられている色空間(表色系)の種類によって規定される色成分数によって値が決定する。例えば、しきい値の種類がそれぞれ3種類で、色空間がRGB色空間であれば、「i」および「k」の値は3、「j」の値は3となる。
エッジ画像生成処理が開始されると、図5(b)に示すように、まず、ステップS200に移行し、変数Yの値が3以下となっているか否かを判定する。
ステップS202に移行した場合は、上記図3のステップS102で取得した原画像のデータを複製し、該複製した原画像データに基づき、グレースケール画像を生成して、ステップS204に移行する。
なお、必須ではないが、原画像データのピクセル数が膨大(例えば、1200万画素等)な場合は、処理負荷および処理時間を考慮して、検出精度を損なわない程度に、解像度をこれよりも低解像度へと変換する処理を行うようにしてもよい。
中間値法は、R、G、Bの3つの色成分の値のうち、最大値と最小値の2つを足して2で割ったものを利用してグレースケール化する方法である。
平均法は、平均の取り方によって、算術平均(相和平均)法、幾何平均(相乗平均)法、加重平均法等がある。
幾何平均法は、R、G、Bの3つの色成分の値を幾何平均(各色成分の値の対数値を算術平均)して平均値を算出し、算出した平均値を利用してグレースケール化する方法である。
グレースケール画像の生成方法は、処理速度や検出精度等を考慮して適切なものを用いることが望ましい。
なお、ここでは、グレースケール画像を、R,G,Bの各要素の値を輝度値に変換することで生成する例を説明したが、輝度以外に、明度等によってグレースケール画像を生成するようにしてもよい。
このようにして、原画像データの各ピクセル値をグレースケール値に変換することで、グレースケール画像データが生成される。
具体的に、グレースケール画像データの各色のピクセル値が8ビットの階調値で表現されているときに、しきい値と、グレースケール画像の各ピクセル値とを比較し、ピクセル値がしきい値以下のときに、ピクセル値を「0」に変換し、ピクセル値がしきい値より大きいときに、ピクセル値を「255」に変換することで二値化を行う。
従って、変数Yの値が1のときは、しきい値120を用いて上記ステップS202で生成したグレースケール画像を二値化し、変数Yの値が2、3のときは、しきい値150、200をそれぞれ用いて上記ステップS202で生成したグレースケール画像を二値化する。
このようにして、上記ステップS202で生成したグレースケール画像データの各ピクセル値を二値化したものが、原画像データに対する二値化画像データとなる。
本実施形態では、公知のブレゼンハムの線分描画アルゴリズムによって、二値化画像中に存在する物体の輪郭部を線形化する。なお、本実施形態では、線形化後の輪郭線を形成していない不要なピクセルは除去(例えば、ピクセル値を(0,0,0)に変換)する。
ここで、ブレゼンハムの線分描画アルゴリズムは、割り算等を用いずに全てを整数演算のみで行うことができるため、高速に線分を描画することができる。
このようにして、二値化画像中の輪郭部を線形化した画像のデータが、エッジ画像データとなる。
ここでは、図5(a)に示すように、変数Yの値4、5、6に対して、赤色、緑色、青色の色成分をそれぞれ抽出する。
このようにして、各色成分の値を抽出してなる画像データが、赤色成分画像データ、緑色成分画像データ、青色成分画像データとなる。
グレースケール画像データの生成は、上記ステップS202と同様の処理となる。
ステップS212では、ステップS210で生成したグレースケール画像に対して、予め設定されたしきい値で二値化を行い、二値化画像データを生成して、ステップS206に移行する。
従って、上記ステップS210で生成したグレースケール画像データに対して、しきい値120を用いて二値化を行い、ステップS208で生成した色成分画像データに対する二値化画像データを生成する。
なお、図5(a)に示す例では、色成分画像に対応するグレースケール画像の二値化に用いるしきい値の種類を1種類としたが、この構成に限らず、第7以降の変換条件を設定して、複数種類のしきい値を用いて二値化を行う構成としてもよい。
例えば、原画像に対応するグレースケール画像の二値化に用いるしきい値を別の順番で用いる構成、色成分画像に対応するグレースケール画像の二値化を別の色の順番で行う構成としてもよい。
また、色成分画像に対応するグレースケール画像の二値化を複数種類のしきい値を用いて行う場合は、そのしきい値を用いる順番も小さい方から順に行う構成だけに限らず、別の順番とする構成としてもよい。また、色成分画像に対応するグレースケール画像の二値化に用いるしきい値の値は、原画像に対応するグレースケール画像の二値化に用いるしきい値と同じ値であってもよいし、異なる値であってもよい。
また、図5(a)に示す例では、原画像および色成分画像の双方を用いてエッジ画像の生成を行うことが可能な構成としたが、この構成に限らず、原画像だけを用いてエッジ画像を生成する構成や、色成分画像だけを用いてエッジ画像を生成する構成など他の構成としてもよい。
続いて、図3のステップS120である有効領域判定処理の処理手順を図6および図7に基づき説明する。
ここで、図6は、有効領域判定処理の処理手順を示すフローチャートである。また、図7(a)は、理想的な候補領域の形状例を示す図であり、(b)〜(e)は、誤差範囲外の形状例を示す図であり、(f)〜(g)は、誤差範囲内の形状例を示す図である。
候補領域の縦横比は、図7(a)に示すように、理想の領域形状における短辺の長さAと長辺の長さBとの比(A:B=A/B)となっていることが望ましい。また、候補領域の各辺間(四隅)の角度は、図7(a)に示すように、理想的には、いずれも90°であることが望ましい。
有効領域判定処理が開始されると、図6に示すように、まず、ステップS300に移行し、選択された候補領域の縦横比が、テンプレートの領域規則に定められた縦横比の誤差範囲内か否かを判定する。
ステップS302に移行した場合は、誤差範囲外と判定された候補領域を無効な候補領域であると判定して(判定結果を戻り値として)、一連の処理を終了し、元の処理に復帰する。
これにより、例えば、図7(b)および(c)に示すように、理想の縦横比A:Bに対して極端に縦横比の異なる形状を排除することができ、これらの領域に対して以降の処理(図3のステップS124以降の処理)が行われるのを防ぐことができる。
例えば、図7(d)〜(f)に示すように、各辺間(四隅)の角度をβ1〜β4とした場合に、理想形の角度との誤差dβ1〜dβ4は、理想形の角度90°から角度β1〜β4をそれぞれ減じたもの「dβ1〜dβ4=90°−β1〜90°−β4」となる。そして、誤差範囲を「−dy〜+dy」とし、本実施形態では、dβ1〜dβ4がいずれも「−dy〜+dy」の範囲内であれば誤差範囲内であると判定し、いずれか1つでも「−dy〜+dy」の範囲外であれば誤差範囲外であると判定する。
ステップS306に移行した場合は、誤差範囲外と判定された候補領域を無効な候補領域であると判定して(判定結果を戻り値として)、一連の処理を終了し、元の処理に復帰する。
これにより、例えば、図7(d)および(e)に示すように、理想の角度に対して角度β1〜β4の少なくとも1つが誤差範囲外の角度となっている形状を排除することができ、これらの領域に対して以降の処理(図3のステップS124以降の処理)が行われるのを防ぐことができる。
例えば、図7(f)に示す候補領域のように、角度β1〜β4の誤差dβ1〜dβ4がいずれも誤差範囲内(この例では、いずれも90°)で、縦横比の誤差drが「−dx〜+dx」の範囲内となる程度で縦横比のみが異なる場合に、この候補領域は除外されることなく、有効な候補領域と判定される。
つまり、本実施形態では、縦横比および角度の双方が誤差範囲内に納まっている候補領域のみを有効な候補領域と判定する。
続いて、図3のステップS132である色判定処理の処理手順を図8に基づき説明する。
ここで、図8は、色判定処理の処理手順の一例を示すフローチャートである。
色判定処理が開始さると、図8に示すように、まず、ステップS400に移行して、図3のステップS130で検出された二次元コードの領域におけるセパレータ110の領域を特定(座標を特定)して、ステップS402に移行する。
ステップS402では、セパレータ110の座標情報に基づき、各セルの存在する領域を分割して、ステップS404に移行する。
具体的に、黒色(k)のピクセルが所定数以上連続する領域や、セパレータ110に周囲(四辺)を囲まれた領域の座標を各セルの座標として、その座標情報をRAM62または記憶装置70に記憶する。
ステップS406では、セパレータ110の特定された二次元コードの領域における座標(x,y)のピクセルを選択して、ステップS408に移行する。
ステップS408では、変数apの値が予め定められた一定数以上か否かを判定し、一定数以上ではないと判定した場合(No)は、ステップS410に移行し、一定数以上であると判定した場合(Yes)は、ステップS422に移行する。
ステップS410に移行した場合は、選択したピクセルの値(色)が、二次元コードにおいて使用される複数の色それぞれを中心座標として広がる色空間上の判定領域のうち、いずれかの判定領域に含まれている(いずれの判定領域内に位置する)か否かを判定する。
ステップS412に移行した場合は、変数apをインクリメント(ap+1→ap)して、ステップS414に移行する。
ここでは、変数apをインクリメントすることで、判定領域に含まれていると判定されたピクセルの数を計数している。この判定結果(判定領域の情報および計数結果を含む)は、各セルに対応付けてRAM62または記憶装置70に記憶される。
その後、ステップS414に移行して、変数xの値が、その行の一番右端のx座標であるxEであるか否かを判定する。
そして、変数xの値がxEではないと判定した場合(No)は、ステップS416に移行し、変数xの値がxEであると判定した場合(Yes)は、ステップS422に移行する。
ステップS416に移行した場合は、変数xをインクリメント(x+1→x)して、ステップS418に移行する。
つまり、変数xの値がxEではない場合に、変数xをインクリメントすることで、1つ右隣のピクセルに座標を変更する。
ステップS420に移行した場合は、変数apを初期化(0→ap)して、ステップS406に移行する。
一方、ステップS414において変数xの値がxEであると判定されてステップS422に移行した場合は、変数yの値が列方向の一番下端のy座標であるyEであるか否かを判定する。
ステップS424に移行した場合は、変数apおよび変数xを初期化(0→ap,0→x)し、変数yをインクリメント(y+1→y)して、ステップS406に移行する。
つまり、変数xを初期化し、変数yをインクリメントすることで、1つ下隣の行で且つ一番左端のピクセルに座標を変更する。このとき、座標(x,y)が次のセルに対応した領域の座標となるので、変数apも初期化する。
そして、変数xの値がxEではないと判定した場合(No)は、ステップS428に移行し、変数xの値がxEであると判定した場合(Yes)は、ステップS432に移行する。
ステップS428に移行した場合は、変数xをインクリメント(x+1→x)して、ステップS430に移行する。
ステップS432に移行した場合は、変数apを初期化(0→ap)して、ステップS406に移行する。
ここで、上記ステップS408における変数apの比較対象である一定数は、色の判定精度を考慮して予め設定される値であり、各行における各セルCのピクセル数未満の値となる。従って、各行の色の判定に十分な一定数の色の判定がされたことに応じて、残りのピクセルに対する色判定処理を省略することとなる。
そして、ステップS434において、変数yの値がyEではないと判定した場合(No)は、ステップS436に移行し、変数yの値がyEであると判定した場合(Yes)は、ステップS438に移行する。
一方、二次元コードの領域における全てのピクセルについて色判定が終了して、ステップS438に移行した場合は、RAM62または記憶装置70に記憶された各セルCの領域の各行のピクセルの色の判定結果に基づき、各セルCの色を判定して、ステップS440に移行する。
ここでは、この時点でセルCと色とが対応づけて登録されたデータテーブルの中に、判定領域外の色である旨が対応づけられたセルCが一定数(例えば全体の3割)以上存在していることをもって、着色規則に従っていない色の付されたセルCが所定割合以上存在していると判定される。
このステップS440において、着色規則に従っていない色の付されたセルCが一定数以上存在していると判定した場合(Yes)は、ステップS442に移行する。
ここでは、ステップS410における色判定で参照された判定領域が、あらかじめ定められた上限まで変更されている場合に、再度の色判定が可能な状態ではないと判定される。
ステップS444に移行した場合は、上記ステップS410における色判定で参照された判定領域を変更して、ステップS404に移行する。ここでは、各判定領域を色空間上で一定領域だけ拡げる、または、各判定領域を色空間上で一定距離だけ変移させることにより判定領域それぞれが変更される。
以降、再度色が判定されたセルCそれぞれの中に、着色規則に従っていない色の付されたセルCが一定数以上存在していないと判定されるまで(ステップS440の「No」の分岐)、判定領域の変更および再度の色判定が繰り返される(ステップS404〜S444)。
このエラー処理では、いずれのセルCの色についても判定できなかったものとし、データテーブルに登録されていた全ての対応関係を消去され、こうして空のデータテーブルが戻り値として元の処理へと復帰する。この場合、図3のコード利用物品検出処理では、ステップS134,S136で何らの処理も行われることなく、S138以降の処理が行われる。
ステップS448に移行した場合は、着色規則に従っていない色の付されたセルCが存在しているか否かを判定する。
このステップS448において、該当セルCが存在していると判定した場合(Yes)は、ステップS450に移行し、該当セルCが存在していないと判定した場合(No)は、一連の処理を終了し、元の処理に復帰する。
ここでは、この時点でデータテーブルに登録されているセルCのうち、着色規則に従っていない色の付されたセルCが特定され、このセルCが二次元コードの中から特定される。
ステップS452では、上記ステップS448において特定されたセルCそれぞれについて、着色規則に従って本来付されるべき色を推定して、ステップS454に移行する。
ステップS454では、上記ステップS448において特定されたセルCそれぞれについて、該セルCの色が、上記ステップS452において推定された色であると判定し、一連の処理を終了し、元の処理に復帰する。
この場合と、ステップS448において該当のセルCが特定されなかった場合は、この時点でセルCと色との対応関係が登録されたデータテーブルを戻り値として図3のコード利用物品検出処理へと戻る。この場合、コード利用物品検出処理では、データテーブルに基づいて各セルCに付された色を認識したうえで、ステップS134による情報の識別を行うこととなる。
なお、上記図1のステップS128における、特徴的なパターンを含むか否かを判定する処理を行う際に、上記ステップS400〜S454に示すアルゴリズム、または、上記ステップS400〜S438に示すアルゴリズムを適用することが可能である。
続いて、図3のステップS146である物品検出処理の処理手順を図9〜図12に基づき具体例を示しながら説明する。
ここで、図9は、物品検出処理の処理手順の一例を示すフローチャートである。また、図10は、データベースに登録された識別情報および物品情報の一例を示す図である。また、図11(a)は、物品検出モードの検出対象画像例を示す図であり、(b)は、検出結果の表示例を示す図である。また、図12(a)は、期限管理モードの検出対象画像例を示す図であり、(b)は、検出結果の表示例を示す図であり、(c)は、カメラ76の配設位置の一例を示す図である。
物品検出処理が開始さると、図9に示すように、まず、ステップS500に移行して、設定されている検出モードが、物品検出モードか否かを判定する。
ステップS502に移行した場合は、記憶装置70に記憶された物品情報に基づき、RAM62または記憶装置70に格納された各二次元コードの識別情報に対応する物品情報に対応する物品のなかに、指定物品があるか否かを判定する。
本実施形態では、ダンボール等の梱包材に梱包された物品に対して、各梱包材に1つの二次元コードを付しており、品名コードは、各梱包材に梱包された1以上の物品に対して付与されるものである。従って、個数情報は、1つの梱包材に梱包された物品の個数の情報となる。
従って、指定物品の有無の判定は、指定された品名コードに対応する識別情報が、上記図3のステップS134で識別された識別情報の中にあるか否かを判定することによって行われる。
指定物品があると判定してステップS504に移行した場合は、記憶装置70の物品情報から、指定物品の情報を取得して、ステップS506に移行する。
ステップS506では、RAM62または記憶装置70から、原画像の画像データと、指定物品の識別情報に対応する二次元コードの原画像における座標情報とを取得して、ステップS508に移行する。
ここで、上記「強調表示するための加工処理」は、例えば、原画像中の、二次元コードの画像領域の周囲を赤色等の目立つ色の線で囲んだり、二次元コードの画像領域を目立つ色で塗りつぶしたり、二次元コードの画像領域の輪郭部を強調(輪郭線を太くする、輪郭線を赤色等の目立つ色に変更する、これら双方など)したりする処理となる。他にも、点滅表示やアニメーション表示されるように加工処理を施してもよい。
ステップS510では、指定物品に対応する二次元コードが複数あるか否かを判定し、複数あると判定した場合(Yes)は、ステップS512に移行し、そうでない場合(No)は、ステップS514に移行する。
ステップS514では、原画像に、指定物品の保管開始時期、出荷期限、消費期限等の画像情報を追加する加工処理を行って、ステップS516に移行する。
これら物品に係る情報は、画像中の物品200の表示されていない部分等に表示されるように加工処理が行われる。なお、表示領域が確保できない場合は、これら情報の表示領域を生成する加工処理を行ってもよい。
なお、ステップS514の物品200に係る情報の表示処理は、行わないようにする、または行わない設定にできるようにしてもよく、行わない場合は、ステップS512の処理からステップS516の処理へと移行する。
ここで、図11(b)の画像例は、図11(a)の原画像から、3つの指定物品が検出された場合の例であり、各物品に対応する二次元コードを、四角い枠で囲むマーキングが施されている。これにより、ユーザは、指定物品が原画像中のいずれの物品200なのかを視覚的に瞬時に把握することができる。
つまり、撮影した画像中に指定物品が含まれていない場合に、強調表示加工や追加表示加工などの施されていない原画像を表示する。これにより、ユーザは指定物品が無いことを視覚的に瞬時に把握することができる。なお、指定物品が無い旨を示すメッセージ等の画像を原画像中に表示するようにしてもよい。
そして、設定された検出モードが期限管理モードであると判定した場合(Yes)は、ステップS522に移行し、期限管理モードではないと判定した場合(No)は、ステップS532に移行する。
ステップS524では、コンピュータシステムの有する不図示のRTC(Real Time Clock)から取得した現在(現時点)の年月日時刻の情報と、取得した出荷期限および消費期限とを比較して、期限を経過した物品があるか否かを判定する。
ここで、ステップS524において、期限が経過した物品ではなくて、例えば、期限までの日数が所定日数以下となった物品を検出するようにしてもよい。つまり、ステップS524において、取得した出荷期限および消費期限から所定期間を減じた期限と、現時点の年月日時刻の情報とを比較して判定を行ってもよい。
ステップS526に移行した場合は、RAM62または記憶装置70から、原画像の画像データと、経過物品に対応する二次元コードの領域の座標情報とを取得して、ステップS528に移行する。
ここでの加工処理は、上記ステップS508の処理と同様の処理となる。
この場合は、ステップS516において、ステップS528で加工された画像を、表示装置72に表示する処理を行って、上記一連の物品検出処理を終了し、元の処理に復帰する。
図12(b)の画像例は、3つの経過物品が検出された例であり、各経過物品に対応する二次元コードを、丸い枠で囲むマーキングが施されている。これにより、ユーザは、経過物品が原画像中のいずれの物品300なのかを視覚的に瞬時に把握することができる。
つまり、撮影した画像中に経過物品が含まれていない場合に、強調表示加工や追加加工などの施されていない原画像を表示する。これにより、ユーザは経過物品が無いことを視覚的に瞬時に把握することができる。なお、経過物品が無い旨を示すメッセージ等の画像を原画像中に表示するようにしてもよい。
この処理は、物品検出モードおよび期限管理モードのいずれか一方が必ず設定されるように構成されている場合には不要の処理となる。
続いて、図3のコード利用物品検出処理を実行する前等に行われる、検出対象の物品を指定する検出モード設定処理の処理手順を図13に基づき説明する。
ここで、図13は、検出モード設定処理の処理手順の一例を示すフローチャートである。
検出モード設定処理は、上記図3のコード利用物品検出処理とは独立して行われる処理であって、入力装置74を介したユーザの指示入力に応じて起動し、図13に示すように、まず、ステップS600に移行する。
ここでは、入力装置74によって、簡易に検出モードが選択できるように、物品検出モードを選択するボタンのグラフィックスと、期限管理モードを選択するボタンのグラフィックスとを表示装置72の表示画面に表示する。
ステップS604に移行した場合は、検出モードとして物品検出モードを設定して、ステップS606に移行する。
例えば、指定物品として指定可能な物品のリストを表示して、その中から選択できるようにする。また、品名、品名コード、シリアル番号等で指定可能な物品を検索できるようにしてもよい。
なお、指定する物品が見つからなかった場合等において、設定モードを終了した場合は、判定処理から抜けて、一連の処理を終了する。
ステップS610では、ステップS608で入力された検出対象の指定物品を設定して、処理を終了する。
これにより、検出モードとして物品検出モードが設定され、さらに、指定物品が設定される。具体的に、これらの情報がRAM62の所定アドレスに格納される。
ステップS614に移行した場合は、検出モードとして期限管理モードを設定して、一連の処理を終了する。
これにより、検出モードとして期限管理モードが設定される。物品検出モードと同様に、この情報はRAM62の所定アドレスに格納される。
上記実施形態における物品検出装置1であれば、取得された画像(原画像)から、グレースケール画像の生成(図5(b)のS202,S210)、二値化画像の生成(同図S204,S212)、二値化画像中の物体の輪郭部の線形化(同図S206)を経てエッジ画像を生成することができる(図3のS108)。
このように、二値化画像中の物体の輪郭部が線形化されたエッジ画像から、候補領域を抽出することができるので、線形化しない場合と比較して高速に候補領域を抽出することができる。
また、上記実施形態では、原画像に基づいて生成される複数種類のエッジ画像それぞれについて、候補領域の抽出、この抽出した候補領域に特徴的なパターンが含まれているか否かの判定、および、二次元コードの領域の検出を繰り返し実施している(図3のS108〜S144)。
これにより、特定のエッジ画像に基づいて二次元コードの領域を検出できなかったとしても、別のエッジ画像に基づいて検出されることが期待でき、その結果、原画像における二次元コードの検出精度を高めることができる。
そのため、複数のエッジ画像それぞれに基づいて検出された各二次元コードの領域について、この二次元コードにてコード化された情報を識別するに際し、本来同じものであるはずの二次元コードを繰り返し識別してしまうといった無用な処理負担をなくすことができる。
これにより、理想的な形状に対して、誤差範囲外の形状を有する候補領域を、以降の処理対象から除外することができ、二次元コードの領域とは明らかに異なる領域等に対して、無用な処理が行われるのを防ぐことができる。
また、上記実施形態では、複数のエッジ画像それぞれに基づいて検出された各二次元コードの領域について、この二次元コードにてコード化された情報を識別することができる(図3のS134)。
また、上記実施形態においては、特定のエッジ画像から抽出された候補領域、および、別のエッジ画像における抽出済み候補領域のうち、一方の候補領域が他方の候補領域に包摂されていることをもって、両候補領域が一致すると判定することができる。
また、上記実施形態においては、テンプレートで規定される規則に従って候補領域を抽出することができるため、このテンプレートと共に規則を変更することにより、任意の規則に従って形成された二次元コードの領域として検出できるようにすることができる。
また、上記実施形態では、画像の生成(具体的には撮影)状態により、二次元コードにおける各セルCのうち、一部のセルCに対応する領域が欠けてしまっていたとしても、そのセルに本来付されるべき色を着色規則に従って推定し(図8のS452)、その色に基づいて情報を識別することができるため、情報の識別そのものができなくなってしまうことを防止することができる。
また、この構成においては、各ピクセルの色判定を行う際に、二次元コードの領域を、ラスタスキャンによって順番に走査して色判定処理を行い(図8のS410)、各セルCの領域における各行に位置するピクセルについて、一定数以上が判定領域に含まれると判定された場合(図8のS408の「Yes」の分岐)に、該当セルCの領域におけるその行の残りのピクセルに対して色判定処理を省略することができる。
これによって、各セルCの領域における各行のピクセルの全てに対して色判定処理を行う場合と比較して、各ピクセルの色判定処理を高速に行うことができる。
具体的には、複数の色それぞれに対応する判定領域のいずれにも含まれていないと判定したセルが一定数以上存在する場合に(図8のS440「Yes」の分岐)、判定領域を一定領域だけ拡げる、または、変移させたうえで、再度、各セルに付されている色を判定している(同図S444〜S438)。
この構成であれば、画像の生成条件が悪く、適切に色の判定ができない場合であっても、判定領域を拡げることで判定の感度を上げて再度色を判定する、または、判定領域を色の分布に応じた適切な位置まで変移させて再度色を判定することにより、色の判定確率を高めることができる。
さらに、指定物品が存在する場合に、原画像における指定物品に対応する二次元コードの領域が強調表示されるように原画像を加工し(図9のS508)、加工した画像を表示することができる(図9のS516)。
これによって、原画像中の指定物品に対応する二次元コードの領域が強調表示された画像を表示することができるので、ユーザは、表示された画像を見ることで、原画像中における指定物品の位置を簡易かつ瞬時に把握することができる。
これによって、ユーザは、表示された画像を見ることで、各指定物品の管理開始時期の順番を視覚的に簡易かつ瞬時に把握することができる。例えば、倉庫内における物品を、その管理開始時期の古い順に出荷するなどの作業を容易に行うことができる。
これによって、ユーザは、表示された画像を見ることで、品名、品名コード、管理開始期限、出荷期限等の指定物品に係る情報を確認することができる。
また、この構成においては、期限管理モードを設定した場合に、出荷期限、消費期限等の期限が経過した物品、または、期限までの期間が所定期間以下の物品を指定物品とすることができる。そして、各セルCの色の判定結果に基づいて識別された情報に対応する物品のなかから、期限を経過した物品、または、期限までの期間が所定期間以下の物品が存在するか否かを判定することができる(図9のS524)。
これによって、原画像中の指定物品に対応する二次元コードの領域が強調表示された画像を表示することができるので、ユーザは、表示された画像を見ることで、原画像中における指定物品の位置を簡易かつ瞬時に把握することができる。
以上、本発明の実施形態について説明したが、本発明は、上記実施形態に何ら限定されることはなく、本発明の技術的範囲に属する限り種々の形態をとり得ることはいうまでもない。
例えば、上記実施形態においては、物品検出装置1が単体の装置により構成されている場合を例示したが、この物品検出装置1は、複数の装置が協調して動作するシステムとして構成してもよい。
また、上記実施形態では、着色規則に従って付されるべき色の候補を選出し、その中から最も確からしい単一の色を、着色規則に従って本来付されるべき色と推定しているが、こうして色の候補を選出した段階で、これら候補のいずれかをユーザに選択させることとしてもよい。
また、上記実施形態においては、管理開始期限の古い順に番号画像を二次元コードの領域上、または、その近傍に表示する構成としたが、この構成に限らず、消費期限が早い順など、他の条件に基づく順番の番号画像を表示する構成としてもよい。
例えば、検出対象の物品が設定(検出モードが設定)された状態であれば、トリガがなくてもコード利用物品検出処理を繰り返し実行して、常に、撮影画像に対して検出処理を実行し、検出結果の画像を表示する構成とするなど、他の構成としてもよい。
以上説明した実施形態において、図3のS102が本発明における画像取得部であり、同図S108(図5のS200〜S212)が本発明における成分変換部であり、同図S110が本発明における領域抽出部であり、同図S128が本発明におけるパターン判定部である。
また、図8におけるS452が本発明における色推定部であり、同図S410,S438およびS454が本発明における色判定部である。
また、検出モードが本発明における指定情報であり、図13のS600〜S614が本発明における指定情報設定部である。
Claims (13)
- 物品毎に異なる識別情報を含む情報をコード化した二次元コードがそれぞれ付された複数の物品と該複数の物品に付された二次元コードの領域とを含む領域が撮影されてなる画像を取得する画像取得部と、
該画像取得部により取得された画像を、該画像に含まれるエッジ成分の分布を示すエッジ画像に変換する成分変換部と、
該成分変換部により変換されたエッジ画像から、あらかじめ定められた規則であって、前記二次元コードの領域の候補領域となるべきか否かを前記二次元コードの外形形状のパラメータに基づいて判定するための規則に従って形成されている領域を前記二次元コードの領域からなる候補領域として抽出する領域抽出部と、
前記画像取得部により取得された画像における、前記領域抽出部により抽出された候補領域に対応する対応領域それぞれについて、該対応領域の形成する要素に、該対応領域内に形成されているパターンが前記二次元コードの領域であるか否かを決定するためのパターンである特徴的なパターンが含まれているか否かを判定するパターン判定部と、
該パターン判定部により特徴的なパターンが含まれていると判定された対応領域を、前記二次元コードの領域として検出することにより、前記画像に含まれる複数の二次元コードの領域を検出可能とする領域検出部と、
該領域検出部により検出された二次元コードの領域それぞれについて、該二次元コードの領域にて示される前記識別情報を含む情報を識別する情報識別部と、
検出対象の物品を指定する指定情報を設定する指定情報設定部と、
前記識別情報と該識別情報に対応する物品に係る情報とが対応付けられてなる情報が登録されたデータベースに基づき、前記情報識別部により識別された識別情報に対応する物品のなかに前記指定情報で指定された物品が存在するか否かを判定する物品有無判定部と、
前記物品有無判定部で前記指定情報で指定された物品が存在すると判定されたときに、前記画像取得部で取得された画像に対して、該画像における前記指定された物品に対応する二次元コードの領域を強調表示する加工を施す画像加工部と、
前記画像加工部で加工された画像を表示する画像表示部と、を備え、
前記物品に係る情報は、所定保管場所において前記物品の保管を開始した時期の情報である管理開始時期情報を含み、
前記画像加工部は、前記強調表示する加工に加えて、前記画像取得部で取得された画像に対して、前記管理開始時期情報に基づき、前記指定された物品に対応する二次元コードの領域上、または、その近傍に、前記保管を開始した時期の古い順に順番を示す画像を追加する加工を前記画像取得部で取得された画像に対して施すことを特徴とする物品検出装置。 - 物品毎に異なる識別情報を含む情報をコード化した二次元コードがそれぞれ付された複数の物品と該複数の物品に付された二次元コードの領域とを含む領域が撮影されてなる画像を取得する画像取得部と、
該画像取得部により取得された画像を、該画像に含まれるエッジ成分の分布を示すエッジ画像に変換する成分変換部と、
該成分変換部により変換されたエッジ画像から、あらかじめ定められた規則であって、前記二次元コードの領域の候補領域となるべきか否かを前記二次元コードの外形形状のパラメータに基づいて判定するための規則に従って形成されている領域を前記二次元コードの領域からなる候補領域として抽出する領域抽出部と、
前記画像取得部により取得された画像における、前記領域抽出部により抽出された候補領域に対応する対応領域それぞれについて、該対応領域の形成する要素に、該対応領域内に形成されているパターンが前記二次元コードの領域であるか否かを決定するためのパターンである特徴的なパターンが含まれているか否かを判定するパターン判定部と、
該パターン判定部により特徴的なパターンが含まれていると判定された対応領域を、前記二次元コードの領域として検出することにより、前記画像に含まれる複数の二次元コードの領域を検出可能とする領域検出部と、
該領域検出部により検出された二次元コードの領域それぞれについて、該二次元コードの領域にて示される前記識別情報を含む情報を識別する情報識別部と、
検出対象の物品を指定する指定情報を設定する指定情報設定部と、
前記識別情報と該識別情報に対応する物品に係る情報とが対応付けられてなる情報が登録されたデータベースに基づき、前記情報識別部により識別された識別情報に対応する物品のなかに前記指定情報で指定された物品が存在するか否かを判定する物品有無判定部と、
前記物品有無判定部で前記指定情報で指定された物品が存在すると判定されたときに、前記画像取得部で取得された画像に対して、該画像における前記指定された物品に対応する二次元コードの領域を強調表示する加工を施す画像加工部と、
前記画像加工部で加工された画像を表示する画像表示部と、を備え、
前記物品に係る情報は、所定保管場所における前記物品の保管期限又は前記物品の消費期限の少なくとも一方を含む管理期限の情報を含み、
前記指定情報で指定される物品は、前記管理期限を経過、または、前記管理期限までの期間が所定期間以下となっている物品であり、
前記物品有無判定部は、前記情報識別部により識別された識別情報に対応する物品のなかに前記管理期限を経過、または、前記管理期限までの期間が所定期間以下となっている物品が存在するか否かを判定することを特徴とする物品検出装置。 - 前記成分変換部による画像のエッジ画像への変換を、異なる2種類以上の変換条件のそれぞれについて順に実施させると共に、各変換条件について変換されたエッジ画像それぞれに対し、前記領域抽出部による候補領域の位置情報の抽出、前記パターン判定部による特徴的なパターンの判定、および、前記領域検出部による二次元コードの領域の検出、を繰り返し実施させる繰り返し実施部と、
特定の前記エッジ画像に対して、前記領域抽出部により抽出された候補領域それぞれが、別のエッジ画像について前記領域抽出部が抽出した候補領域(以降「抽出済み候補領域」という)と一致するか否かを、両方の候補領域に基づいて判定する一致判定部と、を備えており、
前記繰り返し実施部は、前記パターン判定部による特徴的なパターンを有しているか否かの判定、および、前記領域検出部による二次元コードの領域の検出、を、前記領域抽出部により抽出された候補領域のうち、前記一致判定部により前記抽出済み候補領域と一致しないと判定された候補領域についてのみ実施させることを特徴とする請求項1又は請求項2に記載の物品検出装置。 - 前記一致判定部は、特定の前記エッジ画像に対して、前記領域抽出部により抽出された候補領域それぞれが、別のエッジ画像における前記抽出済み候補領域と一致するか否かを、両方の候補領域における重複度合に応じて判定することを特徴とする請求項3に記載の物品検出装置。
- 前記一致判定部は、特定の前記エッジ画像に対して、前記領域抽出部により抽出された候補領域それぞれが、別のエッジ画像における前記抽出済み候補領域と一致するか否かを、両方の候補領域のうちの一方の候補領域が他方の候補領域に包摂されているか否かに応じて判定することを特徴とする請求項3又は請求項4に記載の物品検出装置。
- 前記二次元コードの領域が多角形である場合において、
前記一致判定部は、特定の前記エッジ画像において前記領域抽出部により抽出された候補領域それぞれについて、該候補領域として形成された多角形における1以上の頂点が、前記抽出済み候補領域として形成された多角形におけるいずれかの頂点から一定範囲内に位置しているか否かに応じて、前記領域抽出部により抽出された候補領域それぞれが、別のエッジ画像における前記抽出済み候補領域と一致するか否かを判定することを特徴とする請求項3乃至請求項5のいずれか1項に記載の物品検出装置。 - 前記二次元コードは、複数のセルが配列され、前記複数のセルに色の異なる複数種類のセルが含まれるように各セルに色を付すことで該色または色の組合せに応じた1以上の情報それぞれをコード化した二次元コードであり、
前記情報識別部は、前記二次元コードの領域における各セルの領域に付された色または色の組合せに基づいて情報を識別することを特徴とする請求項1乃至請求項6のいずれか1項に記載の物品検出装置。 - 前記二次元コードは、前記複数のセルそれぞれに付される色が、複数種類の色のうち、該セルにてコード化すべき情報、および、該セルと隣接するセルに付された色に応じた着色規則に従って定められており、
さらに、
前記領域検出部により検出された二次元コードの領域それぞれについて、該二次元コードの領域における各セルの領域のうち、該セルの領域に対して前記着色規則に従って付されるべき色、および、前記二次元コードにおいて使用されるべき色、以外の色が付されているセルの領域につき、該セルの領域に本来付されるべき色を前記着色規則に従って推定する色推定部、を備えており、
前記情報識別部は、前記二次元コードの領域における各セルの領域のうち、前記色推定部により色が推定されたセルの領域に該推定された色が付されているものとして、各セルの領域に付された色または色の組合せに基づいて情報を識別することを特徴とする請求項7に記載の物品検出装置。 - 前記領域検出部により検出された二次元コードの領域それぞれについて、該二次元コードの領域における各セルの領域に付されている色を、該二次元コードにおいて使用される複数の色それぞれを中心に拡がる色空間上の判定領域のいずれに含まれているかにより判定する色判定部、を備えており、
前記情報識別部は、前記二次元コードの領域における各セルの領域に、該セルの領域について前記色判定部が判定した色が付されているものとして、各セルの領域に付された色または色の組合せに基づいて情報を識別することを特徴とする請求項7または請求項8に記載の物品検出装置。 - 前記色判定部は、複数の色それぞれに対応する前記判定領域のいずれにも含まれていないと判定したセルの領域が一定数以上存在する二次元コードの領域に対し、前記判定領域を一定領域だけ拡げたうえで、再度、各セルの領域に付されている色を判定することを特徴とする請求項9に記載の物品検出装置。
- 前記色判定部は、複数の色それぞれに対応する前記判定領域のいずれにも含まれていないと判定したセルの領域が一定数以上存在する二次元コードの領域に対し、該二次元コードの領域における色の分布に応じて前記判定領域を色空間上で変移させたうえで、再度、各セルの領域に付されている色を判定することを特徴とする請求項9に記載の物品検出装置。
- 前記領域抽出部は、前記二次元コードの形成に係る規則を規定するテンプレートに基づいて、前記成分変換部により変換されたエッジ画像から、そのテンプレートにて定められた規則に従って形成されている領域を候補領域として抽出することを特徴とする請求項1乃至請求項11のいずれか1項に記載の物品検出装置。
- 請求項1乃至請求項12のいずれか1項に記載の全ての構成部として機能させるための各種処理手順をコンピュータシステムに実行させるためのプログラム。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2010172618A JP4724800B1 (ja) | 2010-07-30 | 2010-07-30 | 物品検出装置およびプログラム |
PCT/JP2010/005359 WO2012014263A1 (ja) | 2010-07-30 | 2010-08-31 | 物品検出装置およびプログラム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2010172618A JP4724800B1 (ja) | 2010-07-30 | 2010-07-30 | 物品検出装置およびプログラム |
Publications (2)
Publication Number | Publication Date |
---|---|
JP4724800B1 true JP4724800B1 (ja) | 2011-07-13 |
JP2012033033A JP2012033033A (ja) | 2012-02-16 |
Family
ID=44350531
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2010172618A Active JP4724800B1 (ja) | 2010-07-30 | 2010-07-30 | 物品検出装置およびプログラム |
Country Status (2)
Country | Link |
---|---|
JP (1) | JP4724800B1 (ja) |
WO (1) | WO2012014263A1 (ja) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP6136357B2 (ja) | 2013-02-25 | 2017-05-31 | セイコーエプソン株式会社 | 分光測定装置、通信システム及びカラーマネージメントシステム |
CN113468905B (zh) * | 2021-07-12 | 2024-03-26 | 深圳思谋信息科技有限公司 | 图形码识别方法、装置、计算机设备和存储介质 |
CN113709547A (zh) * | 2021-08-02 | 2021-11-26 | 深圳喜悦机器人有限公司 | 广告展示方法、装置、存储介质以及终端设备 |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH0950472A (ja) * | 1995-06-02 | 1997-02-18 | Asahi Optical Co Ltd | データシンボル読み取り装置 |
JP2000148797A (ja) * | 1998-08-31 | 2000-05-30 | Sony Corp | 画像処理装置、画像処理方法、および画像処理プログラム格納媒体 |
JP2003248792A (ja) * | 2002-02-22 | 2003-09-05 | Seiko Epson Corp | 2次元コードのデコード方法、2次元コードのデコード装置、コンピュータに2次元コードのデコード方法を実行させるためのプログラム、このプログラムを記録した記録媒体 |
JP2006134337A (ja) * | 2004-11-05 | 2006-05-25 | Colorzip Media Inc | 混合コードのデコーディング方法及びその装置、記録媒体 |
JP2006236135A (ja) * | 2005-02-25 | 2006-09-07 | Nippon Telegr & Teleph Corp <Ntt> | 二次元コード認識装置とそのプログラム |
JP2008027036A (ja) * | 2006-07-19 | 2008-02-07 | B-Core Inc | 光学式シンボル及びそれが付された物品並びに光学式シンボルを物品に付す方法及び光学式シンボルのデコード方法。 |
JP2008282339A (ja) * | 2007-05-14 | 2008-11-20 | Konica Minolta Business Technologies Inc | コード検出プログラム及びコード検出方法並びに画像形成装置 |
JP2010039624A (ja) * | 2008-08-01 | 2010-02-18 | B-Core Inc | 色彩認識方法及びプログラム |
-
2010
- 2010-07-30 JP JP2010172618A patent/JP4724800B1/ja active Active
- 2010-08-31 WO PCT/JP2010/005359 patent/WO2012014263A1/ja active Application Filing
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH0950472A (ja) * | 1995-06-02 | 1997-02-18 | Asahi Optical Co Ltd | データシンボル読み取り装置 |
JP2000148797A (ja) * | 1998-08-31 | 2000-05-30 | Sony Corp | 画像処理装置、画像処理方法、および画像処理プログラム格納媒体 |
JP2003248792A (ja) * | 2002-02-22 | 2003-09-05 | Seiko Epson Corp | 2次元コードのデコード方法、2次元コードのデコード装置、コンピュータに2次元コードのデコード方法を実行させるためのプログラム、このプログラムを記録した記録媒体 |
JP2006134337A (ja) * | 2004-11-05 | 2006-05-25 | Colorzip Media Inc | 混合コードのデコーディング方法及びその装置、記録媒体 |
JP2006236135A (ja) * | 2005-02-25 | 2006-09-07 | Nippon Telegr & Teleph Corp <Ntt> | 二次元コード認識装置とそのプログラム |
JP2008027036A (ja) * | 2006-07-19 | 2008-02-07 | B-Core Inc | 光学式シンボル及びそれが付された物品並びに光学式シンボルを物品に付す方法及び光学式シンボルのデコード方法。 |
JP2008282339A (ja) * | 2007-05-14 | 2008-11-20 | Konica Minolta Business Technologies Inc | コード検出プログラム及びコード検出方法並びに画像形成装置 |
JP2010039624A (ja) * | 2008-08-01 | 2010-02-18 | B-Core Inc | 色彩認識方法及びプログラム |
Also Published As
Publication number | Publication date |
---|---|
WO2012014263A1 (ja) | 2012-02-02 |
JP2012033033A (ja) | 2012-02-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4724802B1 (ja) | 二次元コードリーダおよびプログラム | |
JP4724801B1 (ja) | 二次元コードリーダおよびプログラム | |
CN105009170A (zh) | 物体识别设备、方法和存储介质 | |
US9843694B2 (en) | Image reading device and method, reading area display device and method, and program | |
JP4582204B2 (ja) | 画像処理装置、画像変換方法、およびコンピュータプログラム | |
JP4724800B1 (ja) | 物品検出装置およびプログラム | |
JP4149464B2 (ja) | 画像処理装置 | |
JP5319637B2 (ja) | 二次元コード、エンコード装置、エンコードプログラムおよび二次元コードリーダ | |
JP5868050B2 (ja) | 表示装置及びその制御方法 | |
JP2008134791A (ja) | 画像処理装置及び画像処理プログラム | |
JP2006235785A (ja) | 画像処理装置、および画像処理方法、並びにコンピュータ・プログラム | |
JP6010318B2 (ja) | 画像検査装置、画像検査方法、及びプログラム | |
KR101161247B1 (ko) | 바코드 추출 방법 | |
JP6546385B2 (ja) | 画像処理装置及びその制御方法、プログラム | |
JP4208520B2 (ja) | 画像処理装置および画像処理方法、プログラムおよび記憶媒体 | |
WO2019181441A1 (ja) | 情報処理装置、制御方法、及びプログラム | |
JP5691547B2 (ja) | 画像の変更箇所抽出装置、画像の変更箇所表示装置及びプログラム | |
JP2013178732A (ja) | 画像処理装置及び画像処理方法 | |
JP2019012424A (ja) | 画像処理装置、および、コンピュータプログラム | |
JP5109548B2 (ja) | 画像処理装置及びプログラム | |
WO2019167277A1 (ja) | 画像収集装置、画像収集システム、画像収集方法、画像生成装置、画像生成システム、画像生成方法、およびプログラム | |
JP7282257B2 (ja) | 画像処理装置、制御方法及び制御プログラム | |
JP2010165296A (ja) | 画像処理装置、類似度算出方法、類似度算出プログラムおよび記録媒体 | |
WO2019181442A1 (ja) | 情報処理装置、制御方法、及びプログラム | |
JP2010044517A (ja) | 画像処理装置、画像処理方法、画像処理プログラム及び記録媒体 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
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: 20110201 |
|
A711 | Notification of change in applicant |
Free format text: JAPANESE INTERMEDIATE CODE: A711 Effective date: 20110303 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20110303 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20110314 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 4724800 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20140422 Year of fee payment: 3 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
S531 | Written request for registration of change of domicile |
Free format text: JAPANESE INTERMEDIATE CODE: R313531 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |