(58)【調査した分野】(Int.Cl.,DB名)
前記第一のマッチング処理の結果を前記撮影画像に重ねて前記表示部に表示させ、ユーザの操作により当該第一のマッチング処理の結果を編集するマッチング結果編集工程をさらに有する、
ことを特徴とする請求項1ないし請求項4の何れか一項に記載の計数方法。
【発明を実施するための形態】
【0016】
以下、本発明の実施をするための形態を、適宜図面を参照しながら詳細に説明する。
各図は、本発明を十分に理解できる程度に、概略的に示してあるに過ぎない。よって、本発明は、図示例のみに限定されるものではない。各図において、共通する構成要素や同様な構成要素については、同一の符号を付し、それらの重複する説明を省略する。
【0017】
≪実施形態に係る計数システムの構成≫
図1を参照して、実施形態に係る計数システム1の構成について説明する。以下では、本発明に関連する機能の説明を行うことにし、関連しない機能については説明を省略する。
計数システム1は、計数対象物Eを数えるシステムであり、ここでは、計数対象物Eとして棒鋼を想定して説明する。なお、計数対象物Eは、特定方向から見た場合の形状が同様になるものであればよく、例えば、鋼管、H鋼、L鋼などの棒鋼以外の長尺物であってもよい。計数対象物Eは、一束にまとめられており集合体Dをなしている。計数システム1は、主に、ユーザ端末2と、計数装置3とを備えて構成される。
【0018】
ユーザ端末2は、ユーザによって操作される装置であり、ここでのユーザは、棒鋼の生産や出荷などを行う作業現場で作業を行う作業員を想定する。ユーザとしての作業員は、例えば、ユーザ端末2を用いて、在庫管理として定期的または出荷時に計数対象物Eの本数を計数する。
ユーザ端末2は、少なくとも入出力機能と、撮影機能と、通信機能と、情報処理機能とを備えた装置であり、例えば、多機能型携帯電話機(スマートフォン:Smartphone)、モバイル端末、ノート型PC(Personal Computer)などであってよい。ここでは、ユーザ端末2として多機能型携帯電話機を想定して図示および以降の説明を行う。
【0019】
ユーザ端末2は、ユーザの操作によって撮影した計数対象物Eの撮影画像を計数装置3に対して送信する。また、ユーザ端末2は、計数装置3から送信された撮影画像の画像解析結果(例えば、計数対象物Eの計数結果)を受信し、受信した画像解析結果をユーザに対して表示する。なお、計数装置3における画像解析処理を容易にするために、ユーザの操作によって撮影画像の編集が行われてもよい。その場合、ユーザ端末2は、編集後の撮影画像を計数装置3に対して送信する。
【0020】
計数装置3は、少なくとも通信機能と、情報処理機能とを備えた装置であり、例えば、アプリケーションサーバである。ここでの計数装置3は、ネットワークNW上に配置されたサーバを想定しているが、計数装置3が配置される場所はネットワークNW上に特に限定されるものではない。計数装置3は、例えば、作業現場に配置されてもよく、その場合、ユーザ端末2と計数装置3とは、例えば、無線LAN(Local Area Network)を介して情報を送受信する。
計数装置3は、計数対象物Eを撮影した撮影画像を画像解析(例えば、形状モデルマッチング)して計数対象物Eの本数を計数し、計数結果をユーザ端末2に応答する。
【0021】
<ユーザ端末の構成>
図2を参照して、ユーザ端末2のより詳細な構成について説明する。ユーザ端末2は、入出力部21と、撮影部22と、通信部23と、記憶部24と、制御部25とを備える。
入出力部21は、例えば、タッチディスプレイであり、ユーザによる入力操作が行われる。また、入出力部21は、ユーザ端末2内の処理結果や計数装置3からの応答結果などを表示する。
【0022】
撮影部22は、例えば、焦点の調整可能なCCD(Charge Coupled Device)カメラであり、ユーザによる撮影操作により計数対象物Eの撮影画像を生成する。
通信部23は、例えば、Wi−Fiユニットであり、周囲に設置される図示しないアクセスポイントを介して計数装置3との間で通信を行う。
【0023】
記憶部24は、RAM(Random Access Memory)、ROM(Read Only Memory)、HDD(Hard Disk Drive)、フラッシュメモリ等の記憶媒体から構成される。記憶部24には、撮影部22によって撮影された撮影画像P、後述する撮影ガイドGのサイズ、計数装置3によって撮影画像Pを画像解析(ここでは、形状モデルを用いたマッチング処理)された後のマッチング結果画像Qなどが記憶される。
【0024】
制御部25は、CPU(Central Processing Unit)によるプログラムの実行処理や、専用回路等により実現される。制御部25がプログラムによって実現される場合、そのプログラムをコンピュータによる読み取り可能な記録媒体(例:CD−ROM)に記憶して提供することができる。また、そのプログラムを、インターネットなどのネットワークを通して提供することもできる。
制御部25は、画像撮影支援部25aと、撮影画像編集部25bと、撮影画像送信部25cと、マッチング結果画像受信部25dと、マッチング結果編集部25eと、画像切替処理部25fとを備える。ここでは、各機能の処理の概要を説明する。
【0025】
画像撮影支援部25aは、撮影部22による計数対象物Eの撮影を支援する。
撮影画像編集部25bは、ユーザによる撮影画像Pの編集を行う機能を提供する。
撮影画像送信部25cは、通信部23を介して撮影画像Pを計数装置3に対して送信する。なお、撮影画像編集部25bによって撮影画像Pの編集が行われた場合には、編集後の撮影画像Pを計数装置3に対して送信する。
マッチング結果画像受信部25dは、通信部23を介してマッチング結果画像Qを計数装置3から受信する。
マッチング結果編集部25eは、ユーザによるマッチング結果画像Qの編集を行う機能を提供する。
画像切替処理部25fは、撮影画像Pとマッチング結果画像Qとの表示の切り替えを行う機能を提供する。
【0026】
<計数装置の構成>
図3を参照して、計数装置3のより詳細な構成について説明する。計数装置3は、通信部31と、記憶部32と、制御部33とを備える。
通信部31は、例えば、通信インターフェースであり、通信回線を介してユーザ端末2との間で通信を行う。
【0027】
記憶部32は、RAM(Random Access Memory)、ROM(Read Only Memory)、HDD(Hard Disk Drive)、フラッシュメモリ等の記憶媒体から構成される。記憶部32には、ユーザ端末2から受信した撮影画像Pおよび撮影ガイドGのサイズ、撮影画像Pを画像解析(ここでは、形状モデルを用いたマッチング処理)した後のマッチング結果画像Qなどが記憶される。
【0028】
制御部33は、CPU(Central Processing Unit)によるプログラムの実行処理や、専用回路等により実現される。制御部33がプログラムによって実現される場合、そのプログラムをコンピュータによる読み取り可能な記録媒体(例:CD−ROM)に記憶して提供することができる。また、そのプログラムを、インターネットなどのネットワークを通して提供することもできる。
制御部33は、撮影画像受信部33aと、計数処理部33bと、マッチング結果画像作成部33eと、マッチング結果画像送信部33fとを備える。また、計数処理部33bは、形状モデル生成部33cと、マッチング処理部33dとを有する。ここでは、各機能の処理の概要を説明する。
【0029】
撮影画像受信部33aは、通信部31を介して撮影画像Pをユーザ端末2から受信する。なお、撮影画像編集部25b(
図2参照)によって撮影画像Pの編集が行われた場合には、編集後の撮影画像Pをユーザ端末2から受信する。
計数処理部33bは、撮影画像Pに写し出された計数対象物Eの数を計数する。
形状モデル生成部33cは、計数対象物Eの数を計数するために行うマッチング処理に用いる形状モデルを生成する。ここでの形状モデルは、「第一の形状モデル」である。形状モデル生成部33cは、撮影画像Pから形状モデルを生成する。
【0030】
マッチング処理部33dは、形状モデルを用いて撮影画像Pに対してマッチング処理を行う。ここでのマッチング処理は、「第一のマッチング処理」である。マッチング処理部33dは、例えば、形状モデルの形状や面積比などに基づいて、形状モデルに適合する物を撮影画像Pから識別する。そして、マッチング処理部33dは、適合具合に基づいて識別した物にスコアを付けて、スコアにより分類を行う。
マッチング結果画像作成部33eは、マッチング処理部33dによるマッチング処理の結果に基づいてマッチング結果画像Qを作成する。マッチング結果画像作成部33eは、例えば、マッチング処理のスコアにより分類された物体を識別可能に画像の加工を行う。
マッチング結果画像送信部33fは、通信部31を介してマッチング結果画像Qをユーザ端末2に対して送信する。
【0031】
≪実施形態に係る計数方法≫
<全体処理>
図4および
図5(適宜、
図1ないし
図3参照)を参照して、実施形態に係る計数システム1による計数方法を説明する。
図4および
図5は、計数システム1による計数方法を示すフローチャートである。
図4および
図5の処理は、例えば、ユーザによりユーザ端末2に格納される図示しないアプリケーションの起動操作がなされることにより開始する。このアプリケーションが起動されることで、撮影部22は画像の撮影を開始し、画像撮影支援部25aは、一束にまとめられた計数対象物E(ここでは、棒鋼)の端面を撮影するようにユーザに対して指示を行う。
【0032】
ユーザは、ユーザ端末2の指示に従って入出力部21に計数対象物Eの束全体が表示されるように(撮影部22の撮影範囲に計数対象物E全体を収めるように)、撮影部22の位置を調整する(ステップS1)。例えば、ユーザは、ユーザ端末2を計数対象物Eに近づけたり、遠ざけたりして撮影部22の位置を調整する。なお、撮影部22の位置を動かさずに、撮影部22の倍率を上げたり下げたりしてもよい。これにより、画像撮影支援部25aは、
図6(a)に示すように、計数対象物Eを映し出した撮影画面60を入出力部21に表示する。
【0033】
この撮影画面60の中央には、撮影画像に重ねて撮影ガイドG(ここでは、リング状の図形)が表示されている。この撮影ガイドGは、撮影の基準になるものであり、ユーザの操作によりサイズを変更可能である。撮影ガイドGのサイズや位置は、マッチング処理に用いる形状モデルの生成に利用される。詳細は後述する。
また、この撮影画面60の右上部には、撮影ボタン61が表示されている。この撮影ボタン61は、ユーザに操作されるものであって、ユーザにより押下されることで、画像撮影支援部25aは、押下時の撮影画像を記憶部24に格納する(以下では、撮影ボタン61を押下された時の撮影画像を、特に「撮影画像P」と表記する場合がある)。
また、この撮影画面60の左下部には、拡大ボタン62および縮小ボタン63が上下方向に並べて表示されている。これらの拡大ボタン62および縮小ボタン63は、ユーザに操作されるものであって、拡大ボタン62を押下されることにより撮影ガイドGのサイズは大きくなる。一方、縮小ボタン63を押下されることにより撮影ガイドGのサイズは小さくなる。
【0034】
続いて、ユーザは、撮影ガイドGと一本の計数対象物Eとのサイズが合っているか否かを確認する(
図4のステップS2)。ステップS2で比較対象になる計数対象物Eは、任意のものであってよい。本実施形態では、
図6(a)に示すように撮影ガイドGを撮影画面60の中央に表示しているので、ユーザが計数対象物Eの束全体を画面に収めようとすると自然に中央付近に位置する計数対象物Eが比較対象になる。撮影ガイドGと計数対象物Eとのサイズが合っているとは、撮影ガイドG内に計数対象物Eが収容されている状態を意味しているが、厳密である必要はない。
【0035】
撮影ガイドGと計数対象物Eとのサイズが合っていない場合(ステップS2で“No”)に、ユーザは、撮影ガイドGのサイズを計数対象物Eのサイズに調整する。具体的には、撮影ガイドGが大きい場合(ステップS3で“Yes”)に、ユーザは縮小ボタン63を押下する(ステップS4)。これにより、画像撮影支援部25aは、撮影ガイドGのサイズを小さくする。なお、縮小の程度は特に限定されず、例えば、一回の縮小ボタン63の押下により0.9倍程度の大きさになるようにする。そして、ユーザは、撮影ガイドGと計数対象物Eとのサイズが合っているか否かを再度確認する(ステップS2)。
【0036】
また、ユーザは、撮影ガイドGのサイズが小さい場合(ステップS3で“No”)に、ユーザは拡大ボタン62を押下する(ステップS5)。これにより、画像撮影支援部25aは、撮影ガイドGのサイズを大きくする。なお、拡大の程度は特に限定されず、例えば、一回の拡大ボタン62の押下により1.1倍程度の大きさになるようにする。そして、ユーザは、撮影ガイドGと計数対象物Eとのサイズが合っているか否かを再度確認する(ステップS2)。
ステップS2〜S5の操作によって、撮影ガイドGのサイズと位置は、撮影画像P内の任意の計数対象物Eに対して合わせられる。ステップS2〜S5の工程は、「画像撮影支援工程」である。なお、外径の小さい計数対象物Eに撮影ガイドGのサイズを合わせた場合を
図6(b)に例示する。
【0037】
そして、撮影ガイドGと計数対象物Eとのサイズが合った時点で(ステップS2で“Yes”)、ユーザは、撮影ボタン61を押下する(ステップS6)。これにより、画像撮影支援部25aは、撮影ボタン61を押下された時点の撮影画像を記憶部24に保存する。また、画像撮影支援部25aは、撮影時の撮影ガイドGのサイズ(例えば、外径)を記憶部24に保存する。
【0038】
続いて、撮影した撮影画像Pに同じ外径の計数対象物E
S(
図6(b)参照)の束が隣接して写っている場合(ステップS7で“Yes”)に、ユーザは、計数対象物Eの周辺をなぞって、計数を行う計数対象物Eが写っている領域70(
図6(c)参照)を抽出する(ステップS8)。この操作は、複数束の計数対象物Eが同一空間に隣接して保管されている場合を想定したものであり、例えば、図示しないメニュー画面から撮影画像Pの編集モードにモードを切り替えて行われる。これにより、撮影画像編集部25bは、撮影画像Pから抽出された領域70を新たな撮影画像Pとして記憶部24内に保存する。なお、隣接して写っていない場合(ステップS7で“No”)に、ユーザは、領域70の抽出を行わなくてよい。ステップS8の工程は、「撮影画像編集工程」である。
【0039】
続いて、ユーザは、送信ボタン71(
図6(c)参照)を押下する(ステップS9)。これにより、撮影画像送信部25cは、記憶部24に保存された撮影画像Pおよび撮影ガイドGのサイズ(例えば、外径)を計数装置3に対して送信する(ステップS10)。
次に、計数装置3は、撮影画像Pから計数対象物Eの本数を計数する計数処理を行う(ステップS11)。なお、ステップS11の計数処理の詳細は後述するが、撮影ガイドGのサイズおよび位置に基づいて撮影画像Pから形状モデルを生成し、生成した形状モデルを用いてマッチング処理を行う。ステップS11の工程は、「計数処理工程」である。
【0040】
次に、計数装置3のマッチング結果画像送信部33fは、計数結果本数およびマッチング結果画像Qをユーザ端末2に対して送信し、ユーザ端末2のマッチング結果画像受信部25dはこれらの情報を受信する(ステップS12)。そして、マッチング結果編集部25eは、受信したマッチング結果画像Qを結果表示画面80として入出力部21に表示する(
図7参照)。なお、
図7に示す結果表示画面80は、ステップS8で計数対象物Eの領域70(
図6(c)参照)を抽出していない場合を示している。
【0041】
図7に示すように、結果表示画面80では、形状モデルとの適合具合に基づいて、計数対象物Eを判別可能に分けて表示されている。ここでは、適合具合の高い計数対象物Eを白抜きした領域Mnで表示しており、適合具合が中くらいの計数対象物Eを斜線の領域Mmで表示しており、適合度が低い計数対象物Eを黒色の領域Mlで表示している。
なお、適合具体に基づいて計数対象物Eを色分けするようにしてもよい。この場合、色分けすることでより見やすいので好適である。例えば、適合具合が高い計数対象物Eの端面を青色で塗りつぶし、適合具合が中くらいの計数対象物Eの端面を黄色で塗りつぶし、適合具合が低い計数対象物Eの端面を赤色で塗りつぶしてもよい。
【0042】
また、結果表示画面80の左上部には、計数結果本数を表示する領域81が表示されている。この領域81に表示される計数結果本数は、適合具合の高い計数対象物E、適合具合の中くらいの計数対象物E、適合具合の低い計数対象物Eの合計本数である。
また、結果表示画面80の右上部には、確定ボタン82が表示されている。この確定ボタン82は、ユーザに操作されるものであって、ユーザに押下されることにより押下時の領域81に表示される計数結果本数を、撮影した計数対象物Eの正式な計数結果として確定する。一方、領域81に表示される計数結果本数に誤りがある場合に、ユーザは、計数結果の内容を修正する。ユーザは、例えば、図示しないメニュー画面から計数結果の編集モードにモードを切り替えて計数結果の内容を編集する。
【0043】
計数結果に誤検出がある場合について、
図5および
図8(a)を参照して説明する。ここでの誤検出とは、計数を行ってはいけない物体(例えば、隣接する計数対象物E
S(
図6(b)参照)やそもそも計数対象物Eでない物体)を計数した場合である。ユーザは、結果表示画面80を見て誤検出がある場合に(ステップS13で“Yes”)、
図8(a)に示す削除ボタン83を押す(ステップS14)。続けて、ユーザは、誤検出されている領域を指でタップまたはなでることで結果表示画面80から計数対象物Eの適合具合を示す情報(例えば、領域Ml,Mm,Mn)を削除する(ステップS15)。これにより、領域81に表示される計数結果本数は削除された分だけ減少する。
【0044】
計数結果に未検出がある場合について、
図5および
図8(b)を参照して説明する。ここでの未検出とは、計数を行うべき物体(ここでは、計数対象物E)を計数していない場合である。ユーザは、結果表示画面80を見て未検出がある場合に(ステップS16で“Yes”)、
図8(b)に示す追加ボタン84を押す(ステップS17)。続いて、ユーザは、未検出の計数対象物Eを指でタップすることで結果表示画面80に適合を示す情報(図示せず)を追加する(ステップS18)。これにより、領域81に表示される計数結果本数は追加された分だけ増加する。
【0045】
計数結果を確認しにくい場合について、
図5および
図8(a)〜(c)を参照して説明する。ユーザは、結果表示画面80を見て確認しにくい場所がある場合に(ステップS19で“Yes”)、
図8(a)や
図8(b)に示す切替ボタン85を押す(ステップS20)。これにより、
図8(c)に示すように、撮影画像Pを表示する画面に切り替わる。そして、
図8(c)に示す切替ボタン85を再度押すことにより、
図8(a)や
図8(b)に示す結果表示画面80に切り替わる。このようにして、ユーザは、マッチング結果画像Qと撮影画像Pとを入出力部21に交互に表示させて計数結果の確認を行うことも可能である(ステップS21)。なお、ステップS13〜S21の工程は、「マッチング結果編集工程」である。
【0046】
そして、ユーザは、計数結果が合っている場合(ステップS22で“Yes”)に確定ボタン82を押す(ステップS23)。一方、計数結果が合っていない場合(ステップS22で“No”)に、誤検出や未検出の確認を再度行う。
【0047】
<計数処理>
図9を参照して、
図4のステップS11に示す計数処理について説明する。
最初に、
図3に示す計数装置3の形状モデル生成部33cは、形状モデルマッチング用画像の取得処理を行う(ステップS31)。ステップS31の詳細は後述するが、形状モデル生成部33cは、マッチング用画像Pd(
図11参照)を撮影画像Pから取得する。続いて、形状モデル生成部33cは、ステップS31で取得したマッチング用画像Pdを基にして、形状モデル(第一の形状モデル)を生成する(ステップS32)。なお、形状モデルの生成方法は特に限定されず、種々の方法を用いることができる。
【0048】
続いて、計数装置3のマッチング処理部33dは、ステップS32で生成した形状モデルを用いて、撮影画像Pに対して形状モデルマッチングを行う(ステップS33)。また、マッチング結果画像作成部33eは、マッチング結果に基づいて、マッチング結果画像Qを作成する(ステップS34)。そして、マッチング結果画像送信部33fは、計数結果本数およびマッチング結果画像Qをユーザ端末2に対して送信する(ステップS35)。
【0049】
<形状モデルマッチング用画像の取得処理>
図10および
図11を参照して、
図9に示すステップS31の処理について説明する。前記説明した通り、ユーザは手動で撮影ガイドGに計数対象物Eを合わせて撮影を行うので、撮影ガイドGと計数対象物Eとの位置がずれたり、サイズが合っていなかったりする場合も想定される。撮影ガイドGと計数対象物Eとの位置がずれたり、サイズが異なるままの状態で撮影ガイドGを基準として画像を取得し、取得した画像から形状モデルを生成した場合、その形状モデルを用いたマッチング処理で正確な解析を行えない虞がある。その為、ここでは、形状モデルを生成する基になる画像を取得するための正確な位置、およびサイズを特定し、特定した情報に基づいて形状モデルを生成する基になる画像を取得する。これにより、
図9のステップS32において、最適な形状モデルを生成することが可能になる。
【0050】
最初に、計数装置3の形状モデル生成部33c(
図3参照)は、撮影画像Pの中心部画像Pc(
図11(a)参照)を抽出する(ステップS41)。ステップS41で抽出する中心部画像Pcの範囲は、
図11(a)に示すように、撮影ガイドGの周辺を含んだものである。抽出する中心部画像Pcの範囲は、具体的には、撮影時における撮影ガイドGとマッチング処理の基準となる計数対象物Eとの位置ずれが予測される最大量よりも大きく、基準となる計数対象物Eに隣接する計数対象物Eの全体が写らない程度であるのがよい。
【0051】
続いて、形状モデル生成部33cは、ループ処理のための変数に種々の情報を入力し(ステップS42)、半径が異なる複数の形状モデルF
1〜F
5(
図11(a)参照)を用いてステップS44〜S47の処理を繰り返し行う(ステップS43)。
形状モデルF
1〜F
2は、計数対象物Eの端面に対応する円形をなし、直径は撮影ガイドGの外径よりも小さい。形状モデルF
1〜F
2は、「第三の形状モデル」である。
形状モデルF
3は、計数対象物Eの端面に対応する円形をなし、直径は撮影ガイドGの外径と同じである。形状モデルF
3は、「第二の形状モデル」である。
形状モデルF
4〜F
5は、計数対象物Eの端面に対応する円形をなし、直径は撮影ガイドGの外径よりも大きい。形状モデルF
4〜F
5は、「第三の形状モデル」である。
【0052】
形状モデル生成部33c(
図3参照)は、半径rに半径比率R(i)を掛けて、形状モデルFを生成する(ステップS44)。例えば、一回目のループ処理では半径比率「0.8」として撮影ガイドGよりも二回り小さい形状モデルF
1を作成する。二回目のループ処理では半径比率「0.9」として撮影ガイドGよりも一回り小さい形状モデルF
2を作成する。三回目のループ処理では半径比率「1.0」として撮影ガイドGと同じ大きさの形状モデルF
3を作成する。四回目のループ処理では半径比率「1.1」として撮影ガイドGよりも一回り大きい形状モデルF
4を作成する。五回目のループ処理では半径比率「1.2」として撮影ガイドGよりも二回り大きい形状モデルF
5を作成する。
【0053】
続いて、形状モデル生成部33cは、ステップS44で生成した形状モデルF
1〜F
5を用いて、ステップS41で抽出した中心部画像Pcに対して形状モデルマッチング処理を行い、マッチングスコアを算出する(ステップS45)。ステップS45のマッチング処理は、「第二のマッチング処理」,「第三のマッチング処理」である。
次に、形状モデル生成部33cは、算出したマッチングスコアが他の形状モデルFのマッチングスコアに比べて高いか否かを判定する(ステップS46)。算出したマッチングスコアが高い場合(ステップS46で“Yes”)に、算出したマッチングスコア、マッチング座標、形状モデルFの半径などの情報を変数として更新する(ステップS47)。マッチング座標は、例えば、形状モデルFの形状とマッチした領域の中心位置である。
【0054】
各形状モデルF
1〜F
5でのステップS44〜S47の処理が終了した場合に、ループ処理を抜ける。そして、形状モデル生成部33cは、変数に格納される中心位置、および半径(マッチングスコアが最も高い形状モデルFのマッチング座標および半径)でマッチング用画像Pd(
図11参照)を中心部画像Pcから抽出する(ステップS48)。
【0055】
撮影ガイドGと計数対象物Eとの位置がずれた状態や、撮影ガイドGと計数対象物Eとのサイズが合っていない状態で撮影が行われた場合の処理を具体的に説明する。例えば、撮影ガイドGを合わせた計数対象物Eが中心部画像Pcの中心よりも左下に位置すると共に、撮影ガイドGに対して計数対象物Eのサイズが一回りだけ大きい場合を想定する(
図12(a)参照)。
この場合、形状モデルFの中心位置が中心部画像Pcの中心にある場合のマッチングスコアは、計数対象物Eと形状モデルFとの位置が一致しないために低くなる。一方、形状モデルFの中心位置が中心部画像Pcの中心に対して左下にある場合のマッチングスコアは、計数対象物Eと形状モデルFとの位置が一致するために高くなる。
また、直径が撮影ガイドGの外径と同じ形状モデルF
3のマッチングスコアは、計数対象物Eとサイズが一致しないために低くなる。一方、直径が撮影ガイドGの外径よりも一回り大きい形状モデルF
4のマッチングスコアは、計数対象物Eとサイズが一致するために高くなる。
図12(a)において、マッチングスコアが最も高い状態(形状モデルFの位置およびサイズ)を
図12(b)に示す。なお、ここでは、撮影ガイドGと計数対象物Eとの位置およびサイズの調整を行うことを説明したが、一方のみを行ってもよい。つまり、撮影ガイドGと計数対象物Eとの位置およびサイズの何れか一方の調整を行ってもよい。
【0056】
以上のように、本実施形態に係る計数方法は、撮影時に撮影ガイドGのサイズを計数対象物Eに合わせることで、計数対象物Eの撮影画像Pにおける大きさを特定することが可能である。そして、撮影時の撮影ガイドGのサイズに基づいて形状モデルを生成することにより、この形状モデルは計数対象物Eまでの距離や計数対象物自体の大きさを考慮したものとなる。その為、撮影画像Pに対して生成した形状モデルを用いてマッチング処理を行うことで、計数対象物Eまでの距離や計数対象物E自体の大きさに関わらず、計数対象物Eの数を計数することができる。
【0057】
また、本実施形態に係る計数方法は、撮影ガイドGが表示される中心部画像Pcを抽出し、撮影ガイドGとサイズが同じまたは異なる複数の形状モデルF
1〜F
5を用いて抽出した中心部画像Pcに対してマッチング処理を行う。
これにより、撮影時に撮影ガイドGの位置やサイズを計数対象物Eに正確に合わせなくても、撮影画像Pに対してマッチング処理を行うための最適な形状モデルを生成することが可能になる。
【0058】
[変形例]
以上、本発明の実施形態について説明したが、本発明はこれに限定されるものではなく、特許請求の範囲の趣旨を変えない範囲で実施することができる。実施形態の変形例を以下に示す。
【0059】
本実施形態では、
図6に示すように、撮影ガイドGを画面中央に表示していた。しかしながら、撮影ガイドGを表示する位置は画面中央に限定されず、撮影ガイドGをユーザの操作によって画面上を自由に移動できるようにしてもよい。
【0060】
また、本実施形態では、撮影ガイドGの形状を計数対象物Eの端面の形状に合わせてリング状としていた。しかしながら、撮影ガイドGの形状はこれに限定されるものではなく、計数対象物Eの形状に合わせる必要もない。すなわち、撮影ガイドGは、計数対象物Eの撮影画像Pにおける大きさを特定できるものであればよく、種々の形状を適用することができる。撮影ガイドGは、例えば、円形以外の環状であってよい。なお、撮影ガイドGは、計数対象物Eを包含できる形状であるのが好適である。また、撮影ガイドGの形状をユーザが選択できるようにしてもよい。
【0061】
また、本実施形態では、計数対象物Eとして棒鋼を想定していた。しかしながら、計数対象物Eの形状はこれに限定されるものではない。すなわち、計数対象物Eは、特定方向から見た場合の形状が同様になるものであればよく、例えば、鋼管、H鋼、L鋼などの棒鋼以外の長尺物や平面を有する粒状物であってよい。
【0062】
また、本実施形態では、
図11に示すように、形状モデル(第二,第三の形状モデル)F
1〜F
5を棒鋼の端面の形状に合わせて円形にしていた。しかしながら、形状モデル(第二,第三の形状モデル)の形状はこれに限定されるものではなく、計数を行う計数対象物Eの形状に合わせて決定される。形状モデル(第二,第三の形状モデル)は、例えば、
図13に示すように、星形の形状モデルJ
1〜J
5、リング形の形状モデルK
1〜K
5、H字形の形状モデルY
1〜Y
5、L字形の形状モデルW
1〜W
5などであってもよい。リング形の形状モデルKおよびH字形の形状モデルYを用いる場合、これらの形状を内包する四角環状の撮影ガイドGを用いるのが好適である。
【0063】
また、本実施形態では、一つの計数対象物Eから第一の形状モデルを生成していた。しかしながら、複数の計数対象物Eを用いて第一の形状モデルを生成してもよい。例えば、撮影ガイドGの位置を変更して複数の撮影画像Pを撮影し、各々の撮影画像Pから抽出した画像を用いて第一の形状モデルを生成するようにしてもよい。
【0064】
また、本実施形態で説明した画面はあくまで一例であって、各種ボタンの配置も本実施形態で説明したものに限定されるものではない。例えば、実施形態では横長の画面を例に挙げて説明していたが、縦長の画面であってもよい。また、各種ボタンの配置をユーザに合わせて変更できるようにしてもよい。
【0065】
また、本実施形態で説明した種々の技術を適宜組み合わせた技術を実現することもできる。また、本実施形態で説明したソフトウェア構成をハードウェアとして実現することもできる。その他、ハードウェア、ソフトウェア等の具体的な構成について、本発明の趣旨を逸脱しない範囲で適宜変更が可能である。
例えば、本実施形態では、クライアントサーバシステムを想定してユーザ端末2と、計数装置3とを別々の装置としていたが、ユーザ端末2と計数装置3とを一つの装置(計数装置)とすることもできる。
また、例えば、工場のライン上を搬送される一束の計数対象物Eの数を計数するようにしてもよい。その場合、ユーザの撮影操作によらずにセンサなどの位置検出によって自動で計数対象物Eを撮影するのがよく、撮影ガイドGのサイズは計数対象物Eまでの距離や計数対象物E自体のサイズにより予め設定しておくようにする。
【解決手段】計数対象物Eの集合体を撮影した撮影画像から計数対象物Eの数を計数する計数方法であって、撮影部を用いた前記撮影画像の撮影を支援する画像撮影支援工程と、前記撮影画像に写し出された計数対象物Eの数を計数する計数処理工程と、を有し、前記画像撮影支援工程は、ユーザの操作によりサイズを変更することができる撮影ガイドGを撮影画像に重ねて入出力部21に表示させ、前記計数処理工程は、撮影時の撮影ガイドGのサイズおよび位置に基づいて前記撮影画像から第一の形状モデルを生成し、生成した前記第一の形状モデルを用いて前記撮影画像に対して第一のマッチング処理を行う。