(57)【要約】【課題】比較的簡単な構成で、撮像装置で一回に撮影可能な範囲よりも広い範囲に分散された複数の識別コードの位置を検出可能なコード位置検出装置を提供する。【解決手段】第ｉ画像から、第ｉ画像に含まれる識別コードの、第ｉ画像の画像座標系における座標を検出し、検出した座標を座標記憶装置１０に記憶させるとともに、検出した座標から、第ｉ画像と第（ｉ−１）画像との両方に含まれる重複識別コードの、第ｉ画像の画像座標系における座標を検出する。また、検出した座標、及び重複識別コードの第（ｉ−１）画像の画像座標系における座標に基づき、座標記憶装置１０が記憶している識別コードの第（ｉ−１）画像の画像座標系における座標のうちの、第ｉ画像に含まれていない識別コードの第（ｉ−１）画像の画像座標系ＸiＹiにおける座標を、第ｉ画像の画像座標系における座標に座標変換して、座標記憶装置１０に記憶させる。【選択図】図１
2020101369.tif 000002
【特許請求の範囲】
【請求項１】
撮影範囲の端部が互いに重複するように撮像装置を移動させ、複数箇所に分散された識別コードをｎ回（ｎは２以上の整数）撮影して得られたｎ個の画像を順次取得する画像取得部と、
前記画像取得部で最初に取得した画像である第１画像から、当該第１画像に含まれる識別コードの、当該第１画像の画像座標系における座標を検出する第１座標検出部と、
前記第１座標検出部で検出した識別コードの座標を記憶する座標記憶装置と、
前記画像取得部でｉ回目（ｉは２〜ｎの整数）に取得した画像である第ｉ画像から、当該第ｉ画像に含まれる識別コードの、当該第ｉ画像の画像座標系における座標を検出し、検出した座標を前記座標記憶装置に記憶させるとともに、検出した座標から、前記第ｉ画像と（ｉ−１）回目に取得した第（ｉ−１）画像との両方に含まれる識別コードである重複識別コードの、前記第ｉ画像の画像座標系における座標を検出する第２座標検出部と、
前記第２座標検出部で検出した前記重複識別コードの前記第ｉ画像の画像座標系における座標、及び前記座標記憶装置が記憶している前記重複識別コードの前記第（ｉ−１）画像の画像座標系における座標に基づき、前記座標記憶装置が記憶している識別コードの前記第（ｉ−１）画像の画像座標系における座標のうちの、前記第ｉ画像に含まれていない識別コードの前記第（ｉ−１）画像の画像座標系における座標を、前記第ｉ画像の画像座標系における座標に座標変換して、前記座標記憶装置に記憶させる座標変換部とを備えるコード位置検出装置。
【請求項２】
前記ｎ個の画像は、前記撮像装置を水平方向の一方向に移動させ、前記撮像装置のレンズを前記一方向と交差する水平方向の他の方向に向けて撮影して得た画像であり、
前記第１〜第ｉ画像の画像座標系のそれぞれは、画像の横方向に平行な第１座標軸と、画像の縦方向に平行な第２座標軸とから構成される直交座標系であり、
前記座標変換部は、前記第２座標検出部で検出した前記重複識別コードの前記第ｉ画像の画像座標系における座標と、前記座標記憶装置が記憶している前記重複識別コードの前記第（ｉ−１）画像の画像座標系における座標との前記第１座標軸方向の座標値の差を算出し、算出した差に基づき、前記座標記憶装置が記憶している識別コードの前記第（ｉ−１）画像の画像座標系における座標の前記第１座標軸方向の座標値を修正することで、前記座標変換を行うことを特徴とする請求項１に記載のコード位置検出装置。
【請求項３】
前記識別コードは、複数段のそれぞれに配置された対象物に付されており、
前記座標記憶装置が記憶している前記識別コードの前記第ｎ画像の画像座標系の座標の前記第２座標軸方向の座標値が、前記複数段のそれぞれに対応させて予め定められた複数の数値範囲のいずれに属するかを判定して、前記識別コードが付された前記対象物が配置されている段を判定する配置段判定部を備える請求項２に記載のコード位置検出装置。
【請求項４】
前記座標記憶装置が記憶している前記第ｎ画像の画像座標系における前記対象物の座標の前記第１座標軸方向の座標値に基づき、各段における前記対象物の並び順を判定する並び順判定部を備える請求項３に記載のコード位置検出装置。
【請求項５】
前記並び順判定部は、互いに隣り合う識別コード間の前記第１座標軸方向の座標値間の差の絶対値が所定の判定値以上であると判定した場合に、前記互いに隣り合う識別コードが付された前記対象物間に空きがあると判定する請求項４に記載のコード位置検出装置。
【請求項６】
撮影範囲の端部が互いに重複するように撮像装置を移動させ、複数箇所に分散された識別コードをｎ回（ｎは２以上の整数）撮影して得られたｎ個の画像を順次取得する画像取得ステップと、
前記画像取得ステップで最初に取得した画像である第１画像から、当該第１画像の画像座標系における当該第１画像に含まれる識別コードの座標を検出し、検出した座標を座標記憶装置に記憶させる第１座標検出ステップと、
前記画像取得ステップでｉ回目（ｉは２〜ｎの整数）に取得した画像である第ｉ画像から、当該第ｉ画像に含まれる識別コードの、当該第ｉ画像の画像座標系における座標を検出し、検出した座標を前記座標記憶装置に記憶させるとともに、検出した座標から、前記第ｉ画像と（ｉ−１）回目に取得した第（ｉ−１）画像との両方に含まれる識別コードである重複識別コードの、前記第ｉ画像の画像座標系における座標を検出する第２座標検出ステップと、
前記第２座標検出ステップで検出した前記重複識別コードの前記第ｉ画像の画像座標系における座標、及び前記座標記憶装置が記憶している前記重複識別コードの前記第（ｉ−１）画像の画像座標系における座標に基づき、前記座標記憶装置が記憶している識別コードの前記第（ｉ−１）画像の画像座標系における座標のうちの、前記第ｉ画像に含まれていない識別コードの前記第（ｉ−１）画像の画像座標系における座標を、前記第ｉ画像の画像座標系における座標に座標変換して、前記座標記憶装置に記憶させる座標変換ステップとを含むコード位置検出方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、コード位置検出装置及びコード位置検出方法に関する。
【背景技術】
【０００２】
従来、複数箇所に分散された識別コードを撮像装置で撮影して得られた画像を取得し、取得した画像から、その画像に含まれる識別コードの座標（位置）を検出するコード位置検出装置が提案されている（例えば、特許文献１参照。）。特許文献１に記載のコード位置検出装置では、パン・チルト機能を有する撮像装置を用い、撮像装置の向きを示すパン・チルト情報を考慮して、識別コードの位置を演算することで、撮像装置で一回に撮影可能な範囲よりも広い範囲に分散された複数の識別コードの位置を検出可能となっている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１７−１８７９８８号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、特許文献１に記載のコード位置検出装置では、撮像装置のパン・チルト情報を検出するための機構が必要となるので、構成が複雑となる可能性があった。
本発明は、上記の問題点に着目してなされたもので、比較的簡単な構成で、撮像装置で一回に撮影可能な範囲よりも広い範囲に分散された複数の識別コードの位置を検出可能なコード位置検出装置及びコード位置検出方法を提供することを目的とする。
【課題を解決するための手段】
【０００５】
上記課題を解決するために、本発明の一態様は、（ａ）撮影範囲の端部が互いに重複するように撮像装置を移動させ、複数箇所に分散された識別コードをｎ回（ｎは２以上の整数）撮影して得られたｎ個の画像を順次取得する画像取得部と、（ｂ）画像取得部で最初に取得した画像である第１画像から、第１画像に含まれる識別コードの、第１画像の画像座標系における座標を検出する第１座標検出部と、（ｃ）第１座標検出部で検出した識別コードの座標を記憶する座標記憶装置と、（ｄ）画像取得部でｉ回目（ｉは２〜ｎの整数）に取得した画像である第ｉ画像から、第ｉ画像に含まれる識別コードの、第ｉ画像の画像座標系における座標を検出し、検出した座標を座標記憶装置に記憶させるとともに、検出した座標から、第ｉ画像と（ｉ−１）回目に取得した第（ｉ−１）画像との両方に含まれる識別コードである重複識別コードの、第ｉ画像の画像座標系における座標を検出する第２座標検出部と、（ｅ）第２座標検出部で検出した重複識別コードの第ｉ画像の画像座標系における座標、及び座標記憶装置が記憶している重複識別コードの第（ｉ−１）画像の画像座標系における座標に基づき、座標記憶装置が記憶している識別コードの第（ｉ−１）画像の画像座標系における座標のうちの、第ｉ画像に含まれていない識別コードの第（ｉ−１）画像の画像座標系における座標を、第ｉ画像の画像座標系における座標に座標変換して、座標記憶装置に記憶させる座標変換部とを備えるコード位置検出装置であることを要旨とする。
【０００６】
また、本発明の他の態様は、（ａ）撮影範囲の端部が互いに重複するように撮像装置を移動させ、複数箇所に分散された識別コードをｎ回（ｎは２以上の整数）撮影して得られたｎ個の画像を順次取得する画像取得ステップと、（ｂ）画像取得ステップで最初に取得した画像である第１画像から、第１画像の画像座標系における第１画像に含まれる識別コードの座標を検出し、検出した座標を座標記憶装置に記憶させる第１座標検出ステップと、（ｃ）画像取得ステップでｉ回目（ｉは２〜ｎの整数）に取得した画像である第ｉ画像から、第ｉ画像に含まれる識別コードの、第ｉ画像の画像座標系における座標を検出し、検出した座標を座標記憶装置に記憶させるとともに、検出した座標から、第ｉ画像と（ｉ−１）回目に取得した第（ｉ−１）画像との両方に含まれる識別コードである重複識別コードの、第ｉ画像の画像座標系における座標を検出する第２座標検出ステップと、（ｄ）第２座標検出ステップで検出した重複識別コードの第ｉ画像の画像座標系における座標、及び座標記憶装置が記憶している重複識別コードの第（ｉ−１）画像の画像座標系における座標に基づき、座標記憶装置が記憶している識別コードの第（ｉ−１）画像の画像座標系における座標のうちの、第ｉ画像に含まれていない識別コードの第（ｉ−１）画像の画像座標系における座標を、第ｉ画像の画像座標系における座標に座標変換して、座標記憶装置に記憶させる座標変換ステップとを含むコード位置検出方法であることを要旨とする。
【発明の効果】
【０００７】
本発明によれば、比較的簡単な構成で、撮像装置で一回に撮影可能な範囲よりも広い範囲に分散された複数の識別コードの位置を検出可能なコード位置検出装置及びコード位置検出方法を提供することができる。
【図面の簡単な説明】
【０００８】
【図１】本発明の実施形態に係るコード位置検出装置の構成を示す構成図である。
【図２】対象物の撮影方法を説明するための図であって、（ａ）は対象物の端部側から見た場合を示す図であり、（ｂ）は対象物の側面側から見た場合を示す図である。
【図３】撮影装置で撮影された画像を示す図であって、（ａ）は１回目に撮影された画像を示す図であり、（ｂ）は２回目に撮影された画像を示す図であり、（ｃ）は３回目に撮影された画像を示す図であり、（ｄ）はｎ回目に撮影された画像を示す図である。
【図４】コード位置検出処理を示すフローチャートである。
【図５】撮影装置で撮影された画像に含まれる識別コードの座標を示す図であって、（ａ）は第１画像に含まれる識別コードの座標を示す図であり、（ｂ）は第２画像に含まれる識別コードの座標を示す図であり、（ｃ）は第３画像に含まれる識別コードの座標を示す図であり、（ｄ）は第ｎ画像に含まれる識別コードの座標を示す図である。
【図６】座標記憶装置に記憶される識別コードの座標を示す図であって、（ａ）は第１画像の画像座標系Ｘ1Ｙ1における座標を示す図であり、（ｂ）は第２画像の画像座標系Ｘ2Ｙ2における座標を示す図であり、（ｃ）は第３画像の画像座標系Ｘ3Ｙ3における座標を示す図であり、（ｄ）は第ｎ画像の画像座標系ＸnＹnにおける座標を示す図である。
【図７】統一座標系ＸnＹnにおける識別コードの座標を示す図である。
【図８】対象物が配置されている段の判定方法を説明するための図である。
【図９】座標記憶装置に記憶される段の判定結果を示す図である。
【図１０】各段毎の対象物の並び順の判定方法を説明するための図であって、（ａ）は並び順の判定手順を示す図であり、（ｂ）は並び順の判定結果を示す図である。
【図１１】座標記憶装置に記憶される対象物の並び順を示す図である。
【図１２】コード位置検出システムの動作を示すシーケンス図でる。
【発明を実施するための形態】
【０００９】
以下、本発明の実施形態に係るコード位置検出装置及びコード位置検出方法について、図面を参照しつつ説明する。本実施形態のコード位置検出装置は、対象物に付されて、複数箇所に分散された識別コードを複数回撮影し、撮影して得られたｎ個の画像から、画像に含まれる複数の識別コードの統一座標系における座標（位置）を検出するためのコード位置検出システムを構成している。なお、以下に示す実施形態は、本発明の技術的思想を具体化するための装置や方法を例示するものであって、本発明の技術的思想は、構成要素の構造、配置等を、下記のものに特定するものでない。本発明の技術的思想は、請求の範囲に記載された請求項が規定する技術的範囲内で、種々の変更を加えることができる。
【００１０】
（構成）
図１に示すように、本実施形態に係るコード位置検出システム１は、撮像装置２と、コード位置検出装置３とを備えている。撮像装置２とコード位置検出装置３とは、着脱可能なケーブル４を介して、撮像装置２からコード位置検出装置３へ画像を送信可能となっている。ケーブル４としては、例えば、ＵＳＢケーブルを採用することができる。
なお、本実施形態では、撮像装置２とコード位置検出装置３とを別体とする例を示したが、他の構成を採用することもできる。例えば、撮像装置２とコード位置検出装置３とを一体とする構成としてもよい。一体とする場合、ケーブル４を省略することができる。
【００１１】
（撮像装置）
撮像装置２は、図２（ａ）（ｂ）に示すように、識別コード５1、５2、５3、５4、５5、５6、５7、５8、５9、５10、５11、５12、５13、５14、５15、５16、５17、５18を撮影するための装置である。撮像装置２としては、例えば、デジタルカメラを採用できる。識別コード５1〜５18は、対象物６1、６2、６3、６4、６5、６6、６7、６8、６9、６10、６11、６12、６13、６14、６15、６16、６17、６18のそれぞれに付され、対象物６1〜６18の情報を示すコードである。識別コード５1〜５18としては、例えば、カメレオンコード（登録商標）、カラービット（登録商標）、ＱＲコード（登録商標）を採用できる。また、対象物６1〜６18の情報としては、例えば対象物６1〜６18の識別ＩＤ、名称、種類を採用できる。ここで、識別コード５1〜５18及び対象物６1〜６18の添字「１」「１８」は、識別ＩＤを表す数字である。
【００１２】
本実施形態では、対象物６1〜６18として、山積みされた溶接管を用いた場合を説明する。各溶接管は、撮像装置２で一回に撮影可能な範囲よりも広い範囲に分散されている。より具体的には、溶接管の分散範囲は、溶接管の端部側から見た場合に、左右幅が撮影可能範囲よりも広くなっており、上下幅が撮影可能範囲よりも狭くなっている。また、識別コード５1〜５18は、溶接管の端部を覆うキャップ（不図示）の中心部に付されている。
【００１３】
そして、撮像装置２では、山積みにされた溶接管（対象物６1〜６18）の端部側、つまり識別コード５1〜５18が付されている側から、識別コード５1〜５18を撮影する。識別コード５1〜５18の撮影は、人間が手で持って行う。識別コード５1〜５18の撮影時には、図３（ａ）（ｂ）（ｃ）（ｄ）に示すように、撮影範囲の端部が互いに重複するように撮像装置２を右方向から左方向に移動させ、撮像装置２を一定の高さとし、図２（ｂ）に示した撮像装置２のレンズ７の光軸８を一定方向（例えば、溶接管の延伸方向）として、複数の識別コード５1〜５18を少しずつｎ回（ｎは２以上の整数）撮影してｎ個の画像９1、９2、９3…９nを得る。即ち、ｎ個の画像９1、９2、９3…９nは、撮像装置２を水平方向の一方向に移動させ、撮像装置２のレンズ７をその一方向と交差する水平方向の他の方向に向けて撮影した画像である。ここで、画像９1、９2、９3…９nの添字「１」「２」「３」「ｎ」は、最初（１回目）に撮影された画像、２回目に撮影された画像、３回目に撮影された画像、ｎ回目に撮影された画像等、何回目に撮影された画像であるかを表す数字である。
【００１４】
各画像９1、９2、９3…９nの上下幅には、山積みにされた溶接管（対象物６1〜６18）の1段目から最高段目までが収まるようにする。また、各画像９1、９2、９3…９nの左端部には、左側に隣接する画像９1、９2、９3…９nに含まれる識別コードの少なくとも１つが含まれるようにする。さらに、各画像９1、９2、９3…９nの右端部には、右側に隣接する画像９1、９2、９3…９nに含まれる識別コードの少なくとも１つが含まれるようにする。
なお、本実施形態では、撮像装置２を右方向から左方向に移動させる例を示したが、他の構成を採用することもできる。例えば、撮像装置２を左方向から右方向に移動させる構成としてもよい。また、撮像装置２を中央→右→左の順に移動させる構成としてもよい。さらに、撮像装置２の移動方向を、ランダムに変える構成としてもよい。
【００１５】
（コード位置検出装置）
コード位置検出装置３は、画像９1、９2、９3…９nから識別コード５1〜５18の位置を検出するための装置である。例えば、パーソナルコンピュータを採用できる。コード位置検出装置３は、座標記憶装置１０及びプロセッサ１１等のハードウェア資源を備えている。
座標記憶装置１０は、プロセッサ１１が実行可能なコード位置検出プログラムを記憶している。また、座標記憶装置１０は、コード位置検出プログラムの実行時に各種データを記憶する。座標記憶装置１０としては、例えば、ハードディスクドライブを採用できる。
【００１６】
プロセッサ１１は、撮像装置２がコード位置検出装置３にケーブル４を介して接続された後、コード位置検出装置３への識別コード５1〜５18の位置の検出を指示する操作が検出されると、座標記憶装置１０からコード位置検出プログラムを読み出して実行する。そして、コード位置検出プログラムにより、画像取得部１２、第１座標検出部１３、第２座標検出部１４、座標変換部１５、配置段判定部１６、及び、並び順判定部１７等を実現する。画像取得部１２、第１座標検出部１３、第２座標検出部１４、座標変換部１５、配置段判定部１６及び並び順判定部１７等は、コード位置検出処理を実行する。
【００１７】
（コード位置検出処理）
次に画像取得部１２、第１座標検出部１３、第２座標検出部１４、座標変換部１５、配置段判定部１６及び並び順判定部１７が実行するコード位置検出処理について説明する。
図４に示すように、まずステップＳ１０１では、画像取得部１２は、撮像装置２から、識別コード５1〜５18を撮影して得られたｎ個の画像９1、９2、９3…９nのうち、最初（１回目）に撮影して得られた画像９1（以下、「第１画像９1」とも呼ぶ）を取得する。
【００１８】
続いてステップＳ１０２に移行して、第１座標検出部１３は、図５（ａ）に示すようにステップＳ１０２で最初に取得した第１画像９1から、第１画像９1に含まれる１又は２以上の識別コード５j（jは１〜１８の何れか）の、第１画像９1の画像座標系Ｘ1Ｙ1における座標（ｘj，ｙj）1を検出する。具体的には、第１座標検出部１３は、第１画像９1から第１画像９1に含まれる識別コード５jの検出を試み、検出された識別コード５jの、第１画像９1の画像座標系Ｘ1Ｙ1における座標（ｘj，ｙj）1を検出する。ここで、座標（ｘj，ｙj）1の添字「１」は、第１画像の画像座標系Ｘ1Ｙ1における座標であることを表す数字である。また、座標値ｘj、ｙjの添字「ｊ」は、座標（ｘj，ｙj）1に対応する識別コード５jの識別ＩＤを示す数字である。第１画像９1の画像座標系Ｘ1Ｙ1としては、第１画像９1の左上隅を原点（０、０）1とし、第１画像９1の横方向に平行な第１座標軸Ｘ1と、第１画像９1の縦方向に平行な第２座標軸Ｙ1とから構成される直交座標系を採用できる。なお、他の画像９2〜９nの画像座標系Ｘ2Ｙ2〜ＸnＹnについても同様の第１及び第２の座標軸を有する直交座標系とする。続いて、第１座標検出部１３は、図６（ａ）に示すように、検出した識別コード５jの座標（ｘj，ｙj）1を座標記憶装置１０に記憶させる。
【００１９】
続いてステップＳ１０３に移行して、第２座標検出部１４は、変数ｉを「２」に設定する。
続いてステップＳ１０４に移行して、画像取得部１２は、撮像装置２から、ｎ個の画像９1、９2、９3…９nのうちのｉ番目に撮影された画像９iを取得する。これにより、未取得の画像９1、９3…９nのうちの、撮影日時が最も古い画像が取得される。
続いてステップＳ１０５に移行して、第２座標検出部１４は、図５（ｂ）（ｃ）（ｄ）に示すように、画像取得部１２でｉ回目に取得した画像（以下、「第ｉ画像９i」とも呼ぶ）から、第ｉ画像９iに含まれる識別コード５k（ｋは１〜１８の何れか）の、第ｉ画像９iの画像座標系ＸiＹiにおける座標（ｘk、ｙk）iを検出する。続いて、図６（ｂ）（ｃ）（ｄ）に示すように検出した座標（ｘk、ｙk）iを座標記憶装置１０に記憶させる。座標記憶装置１０に識別コード５kの画像座標系Ｘi-1Ｙi-1における座標（ｘk、ｙk）i-1が記憶されていると判定した場合には、座標（ｘk、ｙk）iは座標（ｘk、ｙk）i-1に上書きする。
【００２０】
続いて、第２座標検出部１４は、検出した座標（ｘk、ｙk）iから、第ｉ画像９iと（ｉ−１）回目に取得された第（ｉ−１）画像９i-1との両方に含まれる識別コード（以下、「重複識別コード５l」とも呼ぶ）（lは１〜１８の何れか）の、第ｉ画像９iの画像座標系ＸiＹiにおける座標（ｘl、ｙl）iを検出する。なお、重複識別コード５lが複数存在する場合には、第１座標軸Ｘiの座標値が最大となる重複識別コード５l（図５（ｂ）（ｃ）（ｄ）の最右の重複識別コード５l）の重複識別コード５lの座標（ｘl、ｙl）iを検出する。
【００２１】
続いてステップＳ１０６に移行して、座標変換部１５は、座標記憶装置１０が記憶している１又は２以上の識別コード５m（ｍは１〜１８の何れか）の第（ｉ−１）画像９i-1の画像座標系Ｘi-1Ｙi-1における座標（ｘm、ｙm）i-1のうちに、第ｉ画像９iに含まれていない識別コード５o（ｏは１〜１８の何れか）の第（ｉ−１）画像９i-1の画像座標系Ｘi-1Ｙi-1における座標（ｘo、ｙo）i-1があるかを判定する。そして、座標（ｘo、ｙo）i-1があると判定した場合には、座標（ｘo、ｙo）i-1を、第ｉ画像９iの画像座標系ＸiＹiにおける座標（ｘo、ｙo）iに座標変換する。（ｘo、ｙo）i-1から（ｘo、ｙo）iへの座標変換は、ステップＳ１０５で検出した重複識別コード５lの第ｉ画像９iの画像座標系ＸiＹiにおける座標（ｘl、ｙl）i、及び座標記憶装置１０が記憶している重複識別コード５lの第（ｉ−１）画像９i-1の画像座標系Ｘi-1Ｙi-1における座標（ｘl、ｙl）i-1に基づいて行われる。
【００２２】
例えば、座標（ｘl、ｙl）iと座標（ｘl、ｙl）i-1との第１座標軸Ｘi、Ｘi-1方向の座標値の差を算出し、算出した差に基づき、座標記憶装置１０が記憶している第（ｉ−１）画像９i-1の画像座標系Ｘi-1Ｙi-1における座標（ｘo、ｙo）i-1の第１座標軸Ｘi-1方向の座標値を修正する方法を採用できる。具体的には、座標（ｘl、ｙl）iの第１座標軸Ｘi方向の座標値から、座標（ｘl、ｙl）i-1の第１座標軸Ｘi方向の座標値を減算した差を算出し、算出した差を、座標記憶装置１０が記憶している第（ｉ−１）画像９i-1の画像座標系Ｘi-1Ｙi-1における座標（ｘo、ｙo）i-1それぞれの第１座標軸Ｘi-1方向の座標値に加算する。
【００２３】
続いて、座標変換部１５は、図６（ｂ）（ｃ）（ｄ）に示すように、座標変換した識別コード５mの座標（ｘo、ｙo）iを座標記憶装置１０に記憶させる。識別コード５mの座標（ｘo、ｙo）iは、座標変換される前の識別コード５mの座標（ｘo、ｙo）i-1に上書きする。
一方、座標変換部１５は、座標記憶装置１０が記憶している識別コード５mの第（ｉ−１）画像９i-1の画像座標系Ｘi-1Ｙi-1における座標（ｘm、ｙm）i-1のうちに、第ｉ画像９iに含まれていない識別コード５oの第（ｉ−１）画像９i-1の画像座標系Ｘi-1Ｙi-1における座標（ｘo、ｙo）i-1がないと判定した場合には、そのままステップＳ１０７に移行する。
続いてステップＳ１０７に移行して、座標変換部１５は、変数ｉがｎ未満であるかを判定する。そして、ｎ未満であると判定した場合には（Ｙｅｓ）、ステップＳ１０８に移行する。一方、ｎ以上であると判定した場合には（Ｎｏ）、ステップＳ１０９に移行する。
ステップＳ１０８では、変数ｉに「１」を加算した後、ステップ１０４に戻る。
【００２４】
一方、ステップＳ１０９では、配置段判定部１６は、複数段に山積みされた対象物６1〜６18のそれぞれが、複数段のうちの何段目に配置されているかを判定する。対象物６1〜６18が配置されている段の判定は、座標記憶装置１０が記憶している識別コード５1〜５18の第ｎ画像９nの画像座標系ＸnＹnの座標（ｘ1、ｙ1）n〜（ｘ18、ｙ18）nの第２座標軸Ｙn方向の座標値ｙ1〜ｙ18に基づいて行う。例えば、図８に示すように、座標値ｙ1〜ｙ18が、複数段のそれぞれに対応させて予め定められた複数の数値範囲Ｙlow〜Ｙ1，Ｙ1〜Ｙ2，Ｙ2〜Ｙuppのいずれに属するかを判定して、識別コード５1〜５18が付された対象物６1〜６18が配置されている段を判定する方法を採用できる。ここで、Ｙupp，Ｙlowは予め定められたパラメータであり、Ｙ1，Ｙ2はＹupp，Ｙlowを基に下記（１）（２）式から算出されるパラメータである。この判定方法を採用する場合には、画像座標系ＸnＹnにおける全ての段がＹupp〜Ｙlowの範囲内に入るように、識別コード５1〜５18を撮影しておく。
Ｙ1＝（Ｙupp−Ｙlow）×１/ｐ＋Ｙlow  ………（１）
Ｙ2＝（Ｙupp−Ｙlow）×２/ｐ＋Ｙlow  ………（２）
ただし、ｐは山積みされた対象物６1〜６18の段数である。また、上記（１）（２）式は、各溶接管の高さ（径）が同じであることを前提としている。
【００２５】
続いて、配置段判定部１６は、図９に示すように、対象物６1〜６18が配置されている段の判定結果を、座標記憶装置１０に記憶させる。
続いてステップＳ１１０に移行して、並び順判定部１７は、対象物６1〜６18が複数段に山積みされて形成された各段における対象物６1〜６18の並び順を判定した後、コード位置検出処理を終了する。対象物６1〜６18の並び順の判定は、座標記憶装置１０が記憶している第ｎ画像９nの画像座標系ＸnＹnにおける対象物６1〜６18の座標（ｘ1、ｙ1）n〜（ｘ18、ｙ18）nの第１座標軸Ｘn方向の座標値ｘ1〜ｘ18に基づいて行う。例えば、座標値ｘ1〜ｘ18が大きい順に座標（ｘ1、ｙ1）n〜（ｘ18、ｙ18）nをソートし、ソート後の順番通りに右方向から左方向へ対象物６1〜６18が並んでいると判定する方法を採用できる。
【００２６】
対象物６1〜６18の並び順の判定と同時に、並び順判定部１７は、図１０（ａ）に示すように、互いに隣り合う識別コード５1〜５18間の第１座標軸Ｘn方向の座標値間の差の絶対値が所定の判定値Ｘth以上であるかを判定する。判定値Ｘthとしては、例えば、画像座標系ＸnＹnにおける対象物６1〜６18の横幅の１．５倍程度の値を採用できる。そして、判定値Ｘth以上であると判定した場合には、互いに隣り合う識別コード５1〜５18が付された対象物６1〜６18間に空きがあると判定する。図１０（ａ）では、座標（ｘ14,ｙ14）及び（ｘ16,ｙ16）間の第１座標軸Ｘn方向の座標値間の差が判定値Ｘth以上であるため、図１０（ｂ）に示すように、対象物６14と対象物６18との間に空きがあると判定される。
続いて、並び順判定部１７は、図１１に示すように、各段毎の対象物６1〜６18の並び順の判定結果を、座標記憶装置１０に記憶させた後、コード位置検出処理を終了する。
【００２７】
（動作その他）
次に、本発明の実施形態に係るコード位置検出システム１の動作について説明する。
まず、図１２に示すように、オペレータが、撮像装置２を用いて、山積みにされた溶接管（対象物６1〜６18）の端部側から、識別コード５1〜５18を撮影し、図３（ａ）（ｂ）（ｃ）（ｄ）に示したｎ個の画像９1〜９nを得る（ステップＳ２０１）。続いて、オペレータが、撮像装置２をコード位置検出装置３にケーブル４を介して接続した後、図１に示すように識別コード５1〜５18の位置の検出を指示する操作をコード位置検出装置３に行う。
【００２８】
すると、コード位置検出装置３が、コード位置検出処理を開始し、撮像装置２から、図３（ａ）に示すように撮影装置２で最初（１回目）に撮影された第１画像９1を取得する（ステップＳ２０２）。図３（ａ）では、第１画像９1には識別コード５1、５8が含まれている。続いて、コード位置検出装置３が、第１画像９1から、第１画像９1に含まれる識別コード５1、５8の第１画像９1の画像座標系Ｘ1Ｙ1における座標（ｘ1，ｙ1）1、（ｘ8，ｙ8）1を検出する（ステップＳ２０３）。続いて、検出した座標（ｘ1，ｙ1）1、（ｘ8，ｙ8）1を、図６（ａ）に示すように座標記憶装置１０に記憶させる（ステップＳ２０４）。
【００２９】
続いて、コード位置検出装置３が、図３（ｂ）に示すように、２回目に撮影された第２画像９2を取得する（ステップＳ２０５）。図３（ｂ）では、第２画像９2には、識別コード５1、５2、５8、５9、５14が含まれている。続いて、コード位置検出装置３が、第２画像９2から、第２画像９2に含まれる識別コード５1、５2、５8、５9、５14の、第２画像９2の画像座標系Ｘ2Ｙ2における座標（ｘ1、ｙ1）2、（ｘ2、ｙ2）2、（ｘ8、ｙ8）2、（ｘ9、ｙ9）2、（ｘ14、ｙ14）2を検出する（ステップＳ２０６）。続いて、図６（ｂ）に示すように、検出した座標（ｘ1、ｙ1）2、（ｘ2、ｙ2）2、（ｘ8、ｙ8）2、（ｘ9、ｙ9）2、（ｘ14、ｙ14）2を座標記憶装置１０に記憶させる（ステップＳ２０７）。これにより、座標記憶装置１０に、識別コード５1、５2、５8、５9、５14の第２画像９2の画像座標系Ｘ2Ｙ2における座標（ｘ1、ｙ1）2、（ｘ2，ｙ2）2、（ｘ8、ｙ8）2、（ｘ9，ｙ9）2、（ｘ14，ｙ14）2が記憶される。
【００３０】
続いて、コード位置検出装置３が、図３（ｃ）に示すように、３回目に撮影された第３画像９3を取得する（ステップＳ２０８）。図３（ｃ）では、第３画像９3には、識別コード５2、５3、５9、５10、５14、５15が含まれている。続いて、コード位置検出装置３が、第３画像９3から、第３画像９3に含まれる識別コード５2、５3、５9、５10、５14、５15の、第３画像９3の画像座標系Ｘ3Ｙ3における座標（ｘ2、ｙ2）3、（ｘ3、ｙ3）3、（ｘ9、ｙ9）3、（ｘ10、ｙ10）3、（ｘ15、ｙ14）3、（ｘ15、ｙ15）3を検出する（ステップＳ２０９）。続いて、図６（ｃ）に示すように、検出した座標（ｘ2、ｙ2）3、（ｘ3、ｙ3）3、（ｘ9、ｙ9）3、（ｘ10、ｙ10）3、（ｘ15、ｙ14）3、（ｘ15、ｙ15）3を座標記憶装置１０に記憶させる（ステップＳ２１０）。続いて、コード位置検出装置３が、検出した座標（ｘ2、ｙ2）3、（ｘ3、ｙ3）3、（ｘ9、ｙ9）3、（ｘ10、ｙ10）3、（ｘ15、ｙ14）3、（ｘ15、ｙ15）3から、第３画像９3と第２画像９2との両方に含まれる識別コード（重複識別コード）５2、５9、５14のうちの、第１座標軸Ｘ3の座標値が最大の重複識別コード５2の、第３画像９3の画像座標系Ｘ3Ｙ3における座標（ｘ2、ｙ2）3を検出する（ステップＳ２１１）。続いて、検出した座標（ｘ2、ｙ2）3、及び座標記憶装置１０が記憶している座標（ｘ2、ｙ2）2に基づき、座標記憶装置１０が記憶している識別コード５1、５8の座標（ｘ1、ｙ1）2、（ｘ8、ｙ8）2それぞれを、第３画像９3の画像座標系Ｘ3Ｙ3における座標（ｘ1、ｙ1）3、（ｘ8、ｙ8）3に座標変換する（ステップＳ２１２）。続いて、座標変換して得た座標（ｘ1、ｙ1）3、（ｘ8、ｙ8）3を、図６（ｃ）に示すように、座標記憶装置１０に記憶させる（ステップＳ２１３）。これにより、座標記憶装置１０に、識別コード５1、５2、５3、５8、５9、５10、５14、５15、つまり、第１〜第３画像９1〜９3の何れかに含まれる識別コードの、第３画像９3の画像座標系Ｘ3Ｙ3における座標（ｘ1、ｙ1）3、（ｘ2，ｙ2）3、（ｘ3、ｙ3）3、（ｘ8，ｙ8）3、（ｘ9，ｙ9）3、（ｘ10、ｙ10）3、（ｘ14，ｙ14）3、（ｘ15，ｙ15）3が記憶される。
【００３１】
このように、上記フローが繰り返されることで、図６（ｄ）及び図７に示すように、第ｎ画像９nの画像座標系ＸnＹnを統一座標系として、統一座標系ＸnＹnおける、識別コード５1〜５18の座標（ｘ1、ｙ1）n〜（ｘ18，ｙ18）nが、座標記憶装置１０に記憶される。
続いて、コード位置検出装置３が、統一座標系ＸnＹnにおける、識別コード５1〜５18の座標（ｘ1、ｙ1）n〜（ｘ18，ｙ18）nに基づき、複数段に山積みされた対象物６1〜６18のそれぞれが、複数段のうちの何段目に配置されているかを判定する（ステップＳ２１４）。続いて、図９に示すように、対象物６1〜６18が配置されている段の判定結果を座標記憶装置１０に記憶させる（ステップＳ２１５）。続いて、コード位置検出装置３が、統一座標系ＸnＹnおける、識別コード５1〜５18の座標（ｘ1、ｙ1）n〜（ｘ18，ｙ18）nに基づき、各段毎の対象物６1〜６18の並び順を判定する（ステップＳ２１６）。続いて、図１１に示すように、並び順の判定結果を座標記憶装置１０に記憶させる（ステップＳ２１７）。
【００３２】
これにより、座標記憶装置１０に、識別コード５1〜５18が付されている対象物６1〜６18が配置されている段と、各段における、対象物６1〜６18の並び順が記憶される。
本実施形態では、図４のステップＳ１０１、Ｓ１０４が画像取得ステップを構成する。以下同様に、図４のステップＳ１０２が第１座標検出ステップを構成する。また、図４のステップＳ１０５が第２座標検出ステップを構成する。さらに、図４のステップＳ１０６が座標変換ステップを構成する。
【００３３】
以上説明したように、本発明の実施形態に係るコード位置検出装置３では、第２座標検出部１４が、ｉ回目に取得した画像（第ｉ画像９i）から、第ｉ画像９iに含まれる識別コード５kの、第ｉ画像９iの画像座標系ＸiＹiにおける座標（ｘk、ｙk）iを検出し、検出した座標（ｘk、ｙk）iを座標記憶装置１０に記憶させるとともに、検出した座標（ｘk、ｙk）iから、第ｉ画像９iと（ｉ−１）回目に取得した第（ｉ−１）画像９ (i-1)との両方に含まれる識別コード（重複識別コード５l）の、第ｉ画像９ iの画像座標系ＸiＹiにおける座標（ｘl、ｙl）iを検出する。また、座標変換部１５が、第２座標検出部１４で検出した重複識別コード５lの第ｉ画像９iの画像座標系ＸiＹiにおける座標（ｘl、ｙl）i、及び座標記憶装置１０が記憶している重複識別コード５lの第（ｉ−１）画像９i-1の画像座標系Ｘi-1Ｙi-1における座標（ｘl、ｙl）i-1に基づき、座標記憶装置１０が記憶している識別コード５mの第（ｉ−１）画像９i-1の画像座標系Ｘi-1Ｙi-1における座標（ｘm、ｙm）i-1のうちの、第ｉ画像９iに含まれていない識別コード５oの第（ｉ−１）画像９i-1の画像座標系ＸiＹiにおける座標（ｘo、ｙo）i-1を、第ｉ画像９iの画像座標系ＸiＹiにおける座標（ｘo、ｙo）iに座標変換して、座標記憶装置１０に記憶させる。これにより、比較的簡単な構成で、撮像装置２で一回に撮影可能な範囲よりも広い範囲に分散された複数の識別コード５1〜５18の位置を検出可能なコード位置検出装置３を提供することができる。それゆえ、広い範囲にわたる識別コード５1〜５18の位置の一覧表示や、探している対象物６1〜６18（溶接管等）の位置の特定及びガイダンス等を行うことができる。
【００３４】
同様に、比較的簡単に、撮像装置２で一回に撮影可能な範囲よりも広い範囲に分散された複数の識別コード５1〜５18の位置を検出可能なコード位置検出方法を提供できる。
また、本発明の実施形態に係るコード位置検出装置３では、座標変換部１５が、第２座標検出部１４で検出した重複識別コード５lの第ｉ画像９ iの画像座標系ＸiＹiにおける座標（ｘl、ｙl）iと、座標記憶装置１０が記憶している重複識別コード５lの第（ｉ−１）画像９i-1の画像座標系Ｘi-1Ｙi-1における座標（ｘl、ｙl）i-1との第１座標軸Ｘi、Ｘi-1方向の座標値の差を算出し、算出した差に基づき、座標記憶装置１０が記憶している識別コード５oの第（ｉ−１）画像９i-1の画像座標系Ｘi-1Ｙi-1における座標（ｘo、ｙo）i-1それぞれの第１座標軸Ｘi-1方向の座標値を修正することで、座標変換を行う。それゆえ、座標変換をより簡単に行うことができ、座標変換に必要な演算量を低減できる。
【００３５】
さらに、本発明の実施形態に係るコード位置検出装置３では、配置段判定部１６が、座標記憶装置１０が記憶している識別コード５1〜５18の第ｎ画像９nの画像座標系ＸnＹnの座標（ｘ1、ｙ1）n〜（ｘ18、ｙ18）nの第２座標軸Ｙn方向の座標値ｙ1〜ｙ18が、対象物６1〜６18の複数段のそれぞれに対応させて予め定められた複数の数値範囲Ｙlow〜Ｙ1，Ｙ1〜Ｙ2，Ｙ2〜Ｙuppのいずれに属するかを判定して、識別コード５1〜５18が付された対象物６1〜６18が配置されている段を判定する。それゆえ、複数段に山積みされた対象物６1〜６18のそれぞれが、複数段のうちの何段目に配置されているかを検出することができる。
【００３６】
また、本発明の実施形態に係るコード位置検出装置３では、並び順判定部１７が、座標記憶装置１０が記憶している第ｉ画像９iの画像座標系ＸiＹiにおける対象物６1〜６18の座標（ｘ1、ｙ1）n〜（ｘ18、ｙ18）nの第１座標軸Ｘn方向の座標値に基づき、各段における対象物６1〜６18の並び順を判定する。それゆえ、複数段に山積みされた対象物６1〜６18の、各段における並び順を検出することができる。
さらに、本発明の実施形態に係るコード位置検出装置３では、並び順判定部１７が、互いに隣り合う識別コード５1〜５18間の第１座標軸Ｘn方向の座標値間の差の絶対値が所定の判定値Ｘth以上であると判定した場合には、互いに隣り合う識別コード５1〜５18が付された対象物６1〜６18間に空きがあると判定する。それゆえ、対象物６1〜６18間の空きを考慮して、対象物６1〜６18のそれぞれの並び順をより正確に検出することができる。
【００３７】
（変形例）
（１）なお、本発明の実施形態に係るコード位置検出装置３では、座標変換部１５が、重複識別コード５lの座標（ｘl、ｙl）iと座標（ｘl、ｙl）i-1との第１座標軸Ｘi、Ｘi-1方向の座標値の差を基に、座標記憶装置１０が記憶している座標（ｘo、ｙo）i-1それぞれの第１座標軸Ｘi-1方向の座標値を修正することで、座標変換を行う例を示したが、他の構成を採用することもできる。例えば、座標変換部１５が、重複識別コード５lの座標（ｘl、ｙl）iと座標（ｘl、ｙl）i-1との第１座標軸Ｘi、Ｘi-1方向の座標値の差、及び第２座標軸Ｙi、Ｙi-1方向の座標値の差を基に、座標記憶装置１０が記憶している座標（ｘm、ｙm）i-1それぞれの第１座標軸Ｘi-1方向の座標値を修正することで、座標変換を行うようにしてもよい。この場合、第１座標軸Ｘi、Ｘi-1方向の座標値の差に基づき、座標記憶装置１０が記憶している座標（ｘo、ｙo）i-1それぞれの第１座標軸Ｘi-1方向の座標値を修正すると共に、第２座標軸Ｙi、Ｙi-1方向の座標値の差に基づき、座標記憶装置１０が記憶している座標（ｘo、ｙo）i-1それぞれの第２座標軸Ｙi、Ｙi-1方向の座標値を修正する。
【００３８】
（２）また、本発明の実施形態に係るコード位置検出装置３では、対象物６1〜６18として溶接管を用い、溶接管の山積み位置の計算に適用する例を示したが、他の構成を採用することもできる。例えば、Ｈ形鋼の山積み位置の計算、厚板の重ね積み位置の計算、図書館の書籍の位置の計算、機械部品の装着状況のチェックに適用するようにしてもよい。
【００３９】
（３）さらに、本発明の実施形態に係るコード位置検出装置３では、第２座標検出部１４で検出した座標（ｘk、ｙk）iを、座標記憶装置１０の座標（ｘk、ｙk）i-1の記憶領域に上書きし、座標変換部１５で座標変換した座標（ｘo、ｙo）iを、座標記憶装置１０の座標（ｘo、ｙo）i-1の記憶領域に上書きする例を示したが、他の構成を採用することもできる。例えば、座標（ｘk、ｙk）i及び（ｘo、ｙo）iを、座標記憶装置１０の座標（ｘk、ｙk）i-1及び（ｘo、ｙo）i-1の記憶領域とは別の記憶領域に書き込むようにしてもよい。
【符号の説明】
【００４０】
１…コード位置検出システム、２…撮像装置、３…コード位置検出装置、４…ケーブル、５1〜５18…識別コード、６1〜６18…対象物、７…レンズ、８…光軸、９1〜９18…画像、１０…座標記憶装置、１１…プロセッサ、１２…画像取得部、１３…第１座標検出部、１４…第２座標検出部、１５…座標変換部、１６…配置段判定部、１７…並び順判定部
【図１】
2020101369.tif 000003
【図２】
2020101369.tif 000004
【図３】
2020101369.tif 000005
【図４】
2020101369.tif 000006
【図５】
2020101369.tif 000007
【図６】
2020101369.tif 000008
【図７】
2020101369.tif 000009
【図８】
2020101369.tif 000010
【図９】
2020101369.tif 000011
【図１０】
2020101369.tif 000012
【図１１】
2020101369.tif 000013
【図１２】
2020101369.tif 000014