JP2015193468A - 商品ピッキング装置及びプログラム - Google Patents

商品ピッキング装置及びプログラム Download PDF

Info

Publication number
JP2015193468A
JP2015193468A JP2014073083A JP2014073083A JP2015193468A JP 2015193468 A JP2015193468 A JP 2015193468A JP 2014073083 A JP2014073083 A JP 2014073083A JP 2014073083 A JP2014073083 A JP 2014073083A JP 2015193468 A JP2015193468 A JP 2015193468A
Authority
JP
Japan
Prior art keywords
axis direction
product
container
distance
picking
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.)
Granted
Application number
JP2014073083A
Other languages
English (en)
Other versions
JP6314017B2 (ja
Inventor
隆也 角森
Takaya Tsunomori
隆也 角森
信二 滋野
Shinji Shigeno
信二 滋野
健一 白竹
Kenichi Shiratake
健一 白竹
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
Seibu Electric and Machinery Co Ltd
Fujitsu Advanced Engineering Ltd
Original Assignee
Fujitsu Ltd
Seibu Electric and Machinery Co Ltd
Fujitsu Advanced Engineering 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, Seibu Electric and Machinery Co Ltd, Fujitsu Advanced Engineering Ltd filed Critical Fujitsu Ltd
Priority to JP2014073083A priority Critical patent/JP6314017B2/ja
Publication of JP2015193468A publication Critical patent/JP2015193468A/ja
Application granted granted Critical
Publication of JP6314017B2 publication Critical patent/JP6314017B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Manipulator (AREA)

Abstract

【課題】 容器内の複数の商品の配置態様を精度良く検出すること。【解決手段】 商品ピッキング装置は、容器内の底面をXY平面としたとき、ロボットによるピッキング予定の商品が複数配置された容器内のZ軸方向の距離情報を、X軸方向の複数位置及びY軸方向の複数位置で取得するセンサと、前記X軸方向の複数位置及び前記Y軸方向の複数位置での前記距離情報から得られるX軸方向及びY軸方向のそれぞれに沿った距離変化パターンに基づいて、前記容器内のX軸方向及びY軸方向のそれぞれの方向における前記商品の配置数を算出する処理装置と含む。【選択図】 図6

Description

本発明は、商品ピッキング装置及びプログラムに関する。
乱雑に重なり合って置かれたバラ積み部品(ワーク)に関する距離データと画像データをそれぞれ取得し、複数のワークの3次元位置及び姿勢を認識するバラ積みピッキング装置が知られている(例えば、特許文献1参照)。
特開2010-120141号公報
ところで、複数の商品が配置された容器内から商品をロボットによりピッキングする場合、容器内の複数の商品の配置態様を正確に検出することが有用である。これは、例えば、同じ配置パターンで容器内に同一商品が配置される場合であっても、容器内の複数の商品が一方側に寄っている場合や、商品同士が接触しあっている場合等があり、容器毎に複数の商品の正確な配置位置が異なりうるためである。
そこで、1つの側面では、本発明は、容器内の複数の商品の配置態様を精度良く検出することが可能な商品ピッキング装置及びプログラムの提供を目的とする。
本開示の一局面によれば、容器内の底面をXY平面としたとき、ロボットによるピッキング予定の商品が複数配置された容器内のZ軸方向の距離情報を、X軸方向の複数位置及びY軸方向の複数位置で取得するセンサと、
前記X軸方向の複数位置及び前記Y軸方向の複数位置での前記距離情報から得られるX軸方向及びY軸方向のそれぞれに沿った距離変化パターンに基づいて、前記容器内のX軸方向及びY軸方向のそれぞれの方向における前記商品の配置数を算出する処理装置と含む、商品ピッキング装置が提供される。
容器内の複数の商品の配置態様を精度良く検出することが可能な商品ピッキング装置及びプログラムが得られる。
商品ピッキング装置の適用されるピッキング設備の一例を概略的に示す図。 商品ピッキング装置の適用されるピッキング設備の他の一例を概略的に示す図。 商品ピッキング装置の構成の一例を示す図。 距離センサと商品容器内の商品と関係の一例を概略的に示す図。 処理装置のハードウェア構成の一例を示す図。 処理装置により実行される初期処理の一例を示すフローチャート。 距離変化パターンの例を示す図。 距離変化パターンの他の例を示す図。 距離変化パターンの他の例を示す図。 距離変化パターンの他の例を示す図。 距離変化パターンの他の例を示す図。 横方向のヒストグラム及び縦方向のヒストグラムの説明図。 図6のステップ604の処理(山数算出処理)の一例を示すフローチャート。 山数算出処理の説明図。 山数算出処理の説明図。 図6のステップ606の処理(配置パターン特定処理)の一例を示すフローチャート。 図6のステップ604の処理(山数算出処理)の他の一例を示すフローチャート。 区切りポイントの平均高さの算出方法の説明図。 図6のステップ606の処理(配置パターン特定処理)の他の一例を示すフローチャート。 個体最高高さの説明図。 図6のステップ608の処理(個体サイズ検出処理)の一例を示すフローチャート。 最大個体サイズの算出方法の一例の説明図。 標準個体サイズの算出方法の一例の説明図。 標準個体サイズの算出方法の他の一例の説明図。 商品容器C1内の各商品のピッキング座標を算出する処理の一例を示すフローチャート。 商品容器C1内の各商品のピッキング座標を算出する処理の他の一例を示すフローチャート。 商品個体番号の付与ルールの一例の説明図。 分離した画素集合の説明図。 接触商品画素集合の分割方法の説明図。
以下、添付図面を参照しながら各実施例について詳細に説明する。
図1は、商品ピッキング装置の適用されるピッキング設備の一例を概略的に示す図である。
図1に示すピッキング設備1では、商品配置ライン4に沿って搬送容器Cが順次搬送される。尚、この搬送にはコンベア等が用いられる。商品配置ライン4に沿って複数のロボット50が配置される。各ロボット50は、商品容器ステーション52上の商品容器C1内の商品Pをピッキングし、ピッキングした商品Pを商品配置ライン4上の搬送容器C内に配置する。商品容器ステーション52には、商品容器C1内の全ての商品Pがピッキングされて無くなる毎に新たな商品容器C1が供給される。尚、各ロボット50による商品配置時は、搬送容器Cは、商品配置ライン4上の所定位置で停止される。各ロボット50によるピッキングされる商品Pの種類は、互いに異なってもよい。尚、ピッキングされる商品Pは、任意であるが、例えば袋詰めされた商品(例えば、パン・菓子・食品類)であってよい。このようにして、図1に示すピッキング設備1では、搬送容器Cは、複数のロボット50のうちの所定のロボット50により商品が配置されながら、下流側へと搬送され、出庫される。尚、各搬送容器Cに配置されるべき商品の種類や数量(即ちどのロボット50が何個商品を配置するか)は、店舗オーダー等により決定される。
図2は、商品ピッキング装置の適用されるピッキング設備の他の一例を概略的に示す図である。
図2に示すピッキング設備2では、商品配置ライン4に沿って搬送容器Cが順次搬送される。尚、この搬送にはコンベア等が用いられる。商品配置ライン4に沿って複数のロボット50が配置される。各ロボット50は、商品容器ステーション52上の商品容器C1内の商品Pをピッキングし、ピッキングした商品Pを商品配置ライン4上の搬送容器C内に配置する。商品容器ステーション52には、商品容器C1内の全ての商品Pがピッキングされて無くなる毎に新たな商品容器C1が供給される。尚、各ロボット50による商品配置時は、搬送容器Cは、商品配置ライン4上の所定位置で停止される。各ロボット50によるピッキングされる商品Pの種類は、互いに異なってもよい。商品配置が完了した搬送容器Cは、商品払出ライン6へと排出される。従って、例えば最も上流側のロボット50により商品配置が完了する搬送容器Cは、その位置で商品払出ライン6へと排出される。商品払出ライン6へと排出された搬送容器Cは、下流側へと搬送され、出庫される。
図1及び図2に示すピッキング設備1及び2において、各ロボット50は、後述する処理装置100からピッキング座標をピッキング指示を受けると、ピッキング座標に向けて商品挟持部(アーム)を動かして商品をピッキングする。尚、ロボット50へピッキング指示を行うアプリケーションは、例えば、ピッキング対象の商品を商品個体番号で指定してピッキング指示を行い、ピッキング後の時点でどの商品個体番号の商品が残っているかを管理する。
尚、図1及び図2に示すピッキング設備1及び2は、あくまで一例であり、以下で説明する商品ピッキング装置は、図1及び図2に示す以外のピッキング設備にも適用可能である。また、ロボット50の数についても任意であり、究極的にはロボット50の数は1つであってもよい。商品容器ステーション52の数は、ロボット50の数に対応してよい。
図3は、商品ピッキング装置の構成の一例を概略的に示す図である。
商品ピッキング装置10は、図3に示すように、距離センサ70と、処理装置100とを含む。距離センサ70は、商品容器ステーション52(図1及び図2参照)毎に設けられる。以下では、代表として、1つの距離センサ70に関する構成について説明する。
距離センサ70は、商品容器C1の所定の商品配置範囲における距離に関する情報(以下、「距離情報」ともいう)を取得する。距離情報は、商品容器C1の底面をXY平面としたとき、Z軸方向の距離情報である。ここでは、便宜上、距離情報は、商品容器C1の底面(商品の下面と接触する面)を基準として、商品容器C1の底面からの距離を表す。但し、距離情報の基準は、商品容器C1の底面以外であってもよい。距離情報は、X軸方向及びY軸方向のそれぞれに沿った複数点で取得される。複数点の数は、後述のヒストグラムを生成できるのに十分な任意の数であり、その数(分解能)が大きいほど商品容器C1内の各商品Pの配置態様について高精度の検出が可能となる。以下では、一例として、距離センサ70は、例えばKinect(キネクト)センサのような距離画像を生成するセンサであるとする。距離画像は、X軸方向及びY軸方向のそれぞれに沿った複数点における距離情報を含む。以下では、X軸方向を「横方向」とも称し、Y軸方向を「縦方向」とも称し、Z軸方向を「高さ方向」とも称する。従って、距離センサ70により検出される距離は、商品容器C1の底面からの高さに対応する。商品容器C1の所定の商品配置範囲に商品Pが配置されているときは、距離情報は、商品Pの高さに関する情報を含むことになる。
尚、以下では、前提として、商品容器C1内の各商品Pは、原則として、所定の商品配置範囲内にX軸方向及びY軸方向の2次元で配置される。即ち、各商品Pは、商品容器C1内で乱雑に重なり合ってバラ積みされない。但し、商品容器C1内の各商品Pは、商品の入れ方や搬送時の傾きや衝撃などの影響により、Z軸方向で部分的に重なりあったり、X軸方向及び/又はY軸方向で接触しあったりすることはあり得る。尚、このような傾向は、特に袋詰めされた商品(例えば、パン・菓子・食品類)において生じやすい。所定の商品配置範囲は、任意であり、商品の種類によって異なってもよい。以下では、一例として、所定の商品配置範囲は、商品容器C1の底面全体に対応する。尚、商品容器C1の形態は、任意であり、例えば箱やトレーの形態であってよい。
図4は、距離センサ70と商品容器C1内の商品Pと関係の一例を概略的に示す3面図である。尚、図4に示す例では、商品容器C1内には商品Pが縦に2ずつ横に3列で計6個配置されている。
距離センサ70は、例えば図4に示すように、商品容器C1の上方から距離情報を取得する。距離センサ70は、図4に示すように、商品容器C1の商品配置範囲の中心付近に対して配置されてよい。距離センサ70のZ方向の位置(高さ)は、商品容器C1の商品配置範囲に亘る距離画像が取得できるように設定されてよい。以下では、説明の都合上、X軸方向及びY軸方向を図4に示すように商品容器C1の商品配置範囲の横と縦を基準に定め、商品容器C1の商品配置範囲の角を原点とする。商品容器C1の商品配置範囲の大きさを横がb0、縦がa0とすると、距離センサ70は、商品容器C1の商品配置範囲(b0×a0)に係る距離画像を取得する。
処理装置100は、1つの処理装置により形成されてもよいし、複数の処理装置を含んでもよい。例えば、処理装置100は、以下の各種処理(図6等)を行う処理装置と、ロボット50等のピッキング設備の制御を行う処理装置とを別々に含んでもよい。
図5は、処理装置100のハードウェア構成の一例を示す図である。
図5に示す例では、処理装置100は、制御部101、主記憶部102、補助記憶部103、ドライブ装置104、ネットワークI/F部106、入力部107を含む。
制御部101は、主記憶部102や補助記憶部103に記憶されたプログラムを実行する演算装置であり、入力部107や記憶装置からデータを受け取り、演算、加工した上で、記憶装置などに出力する。
主記憶部102は、ROM(Read Only Memory)やRAM(Random Access Memory)などであり、制御部101が実行する基本ソフトウェアであるOSやアプリケーションソフトウェアなどのプログラムやデータを記憶又は一時保存する記憶装置である。
補助記憶部103は、HDD(Hard Disk Drive)などであり、アプリケーションソフトウェアなどに関連するデータを記憶する記憶装置である。
ドライブ装置104は、記録媒体105、例えばフレキシブルディスクからプログラムを読み出し、記憶装置にインストールする。
記録媒体105は、所定のプログラムを格納する。この記録媒体105に格納されたプログラムは、ドライブ装置104を介して処理装置100にインストールされる。インストールされた所定のプログラムは、処理装置100により実行可能となる。
ネットワークI/F部106は、有線及び/又は無線回線などのデータ伝送路により構築されたネットワークを介して接続された通信機能を有する周辺機器と処理装置100とのインターフェースである。
入力部107は、カーソルキー、数字入力及び各種機能キー等を備えたキーボード、マウスやスライスパット等を有する。
尚、図5に示す例において、以下で説明する各種処理等は、プログラムを処理装置100に実行させることで実現することができる。また、プログラムを記録媒体105に記録し、このプログラムが記録された記録媒体105を処理装置100に読み取らせて、以下で説明する各種処理等を実現させることも可能である。なお、記録媒体105は、様々なタイプの記録媒体を用いることができる。例えば、CD−ROM、フレキシブルディスク、光磁気ディスク等の様に情報を光学的,電気的或いは磁気的に記録する記録媒体、ROM、フラッシュメモリ等の様に情報を電気的に記録する半導体メモリ等であってよい。なお、記録媒体105には、搬送波は含まれない。
図6は、処理装置100により実行される初期処理の一例を示すフローチャートである。図6に示す処理は、ある商品容器(以下、説明の都合上、「モデル商品容器」ともいう)内の商品の配置パターン等に関する初期情報を得るために実行される前処理である。モデル商品容器には、所定の配置パターンで商品が配置される。工場の設備や商品の種類によって配置パターンが異なる場合は、モデル商品容器は、配置パターン毎に用意されてよい。図6に示す処理は、商品の配置パターンが異なるモデル商品容器毎に実行されてよい。例えば、図6に示す処理は、取り扱う商品の種類が異なる商品容器ステーション52毎に実行される。このとき、図6に示す処理は、対応する商品容器ステーション52に、配置パターンが異なる新たな商品容器C1が供給されたときに、その商品容器C1をモデル商品容器として実行されてよい。即ち、モデル商品容器とは、対応する商品容器ステーション52に供給される1つ目の商品容器であってよい。ここでは、一例として、ある1つのモデル商品容器に対する処理について代表して説明する。他のモデル商品容器に対する処理についても同様であってよい。
ステップ600では、処理装置100は、距離センサ70からモデル商品容器に係る距離画像を取得する。この距離画像は、モデル商品容器が商品容器ステーション52上に位置するときに距離センサ70により取得された距離画像であってよい。
ステップ602では、処理装置100は、モデル商品容器に関する距離画像に基づいて、横方向に沿った距離変化パターンと、縦方向に沿った距離変化パターンとを生成する。
図7は、距離変化パターンの例を示す図であり、(A)は、横方向に沿った距離変化パターンの例を示し、(B)は、縦方向に沿った距離変化パターンを示す。図7では、図4に示したモデル商品容器のY=aの位置でのX軸方向に沿った距離変化パターンが(A)で示され、図4に示したモデル商品容器のX=bの位置でのY軸方向に沿った距離変化パターンが(B)で示されている。
図8は、距離変化パターンの他の例を示す図であり、(A)は、横方向に沿った距離変化パターンの例を示し、(B)は、縦方向に沿った距離変化パターンを示す。図8に示す例では、図4に示したモデル商品容器のY軸方向の各位置での高さを総和したX軸方向に沿った距離変化パターンが(A)で示されている。また、図8に示す例では、図4に示したモデル商品容器のX軸方向の各位置での高さを総和したY軸方向に沿った距離変化パターンが(B)で示されている。尚、図8に示す距離変化パターンは、図9乃至図11等に示すヒストグラムと実質的に同一である。
図9乃至図11は、距離変化パターンの他の例を示す図であり、それぞれ、(A)は、横方向に沿った距離変化パターンの例を示し、(B)は、縦方向に沿った距離変化パターンを示す。図9乃至図11に示す例では、距離変化パターンは、ヒストグラムで表れている。(A)は、横方向のヒストグラムであり、(B)は、縦方向のヒストグラムである。図9乃至図11に示す例では、モデル商品容器における商品の配置パターンが図4に示した例とは異なる。具体的には、図9に示す例では、横方向に5個、縦方向に2個の配置パターンに関するヒストグラムが示されている。図10に示す例では、横方向に4個、縦方向に4個の配置パターンに関するヒストグラムが示されている。図11に示す例では、横方向に7個、縦方向に2個の配置パターンに関するヒストグラムが示されている。尚、以下では、横方向にm個、縦方向にn個の配置パターンについては、「m×nの配置パターン」とも表す。
図12は、横方向のヒストグラム及び縦方向のヒストグラムの説明図である。図12には、4×4の配置パターンで商品が配列されたモデル商品容器に関する距離画像Mが模式的に示されている。距離画像Mには、15×13のマス目(点線)が付与されているが、このマス目は説明用である。横方向のヒストグラムは、符号Aで示すように、横方向の15個の列のそれぞれについて、縦方向に13個のマス内の距離情報を平均化することで生成されてもよい。同様に、縦方向のヒストグラムは、符号Bで示すように、縦方向の13個の行のそれぞれについて、横方向に15個のマス内の距離情報を平均化することで生成されてもよい。尚、一のマス内の距離情報は、そのマス内の距離情報の平均であってもよいし、代表値であってもよいし、任意である。尚、図12に示す例では、15×13のマス目でヒストグラムが生成されているが、ヒストグラムを生成する際の分解能は任意である。
図6に戻るに、ステップ604では、処理装置100は、上記ステップ602で得た距離変化パターンに基づいて、X軸方向の変化パターンにおける山の数Nxと、Y軸方向の変化パターンにおける山の数Nyを算出する。例えば図8に示す例では、X軸方向の山の数Nx(以下、「X軸方向山数Nx」ともいう)は、3つであり、Y軸方向の山の数Ny(以下、「Y軸方向山数Ny」ともいう)は、2つである。同様に、例えば、図9に示す例では、X軸方向山数Nxは、5つであり、Y軸方向山数Nyは、2つである。かかる変化パターンの山は、商品の存在を示唆し、山の数は、商品の数(商品配置数)を示唆する。尚、山の数に代えて、谷の数を算出してもよい。
ステップ606では、処理装置100は、上記ステップ604で得たX軸方向山数Nx及びY軸方向山数Nyに基づいて、モデル商品容器における商品の配置パターンを特定する。即ち、モデル商品容器におけるX軸方向及びY軸方向のそれぞれの商品配置数を特定する。簡易的には、処理装置100は、Nx×Nyの配置パターンであると特定してもよい。これは、X軸方向の変化パターンにおける山の数(X軸方向山数Nx)は、X軸方向の商品配置数を表し、Y軸方向山数Nyは、Y軸方向の商品配置数を表す可能性が高いためである。但し、Nx×Nyの配置パターンが、実際に取りうる複数の配置パターン内に存在しない場合は、X軸方向山数Nx及びY軸方向山数Nyのそれぞれの信頼性の高低に応じて、他の態様で配置パターンを特定してもよい。実際に取りうる複数の配置パターンは、予め登録されてよい。これについては後述する。
ステップ608では、処理装置100は、上記ステップ604で特定した配置パターンに基づいて、モデル商品容器内の商品の標準個体サイズを特定する。尚、以下の説明において、"サイズ"とは、X軸方向及びY軸方向のそれぞれの長さで規定される2次元のサイズであるとする。商品の標準個体サイズは、商品の種類や、商品の各配置パターンに対応付けられて予め登録されていてもよい。この場合、処理装置100は、上記ステップ604で特定した配置パターンに応じた標準個体サイズ(登録情報)を採用してよい。
図6に示す処理によれば、モデル商品容器における商品の配置パターンに関する情報を取得することができる。また、商品の標準個体サイズに関する情報を取得することができる。このようにして取得された商品の配置パターン及び標準個体サイズに関する情報は、初期パラメータとして所定の記憶装置(例えば主記憶部102)に記憶される。以下では、このようにして取得された商品の配置パターン関する情報を「配置パターン情報」とも称し、標準個体サイズに関する情報を「個体サイズ情報」とも称する。配置パターン情報等は、モデル商品容器と同じ配置パターンで商品が配置される他の商品容器C1内の各商品のピッキング座標を算出するために使用することができる。
尚、図6に示す処理において、上記ステップ608の処理は、個体サイズ情報が後述するピッキング座標を算出するために不要である構成(例えば図25参照)においては省略されてもよい。
図13は、図6のステップ604の処理(山数算出処理)の一例を示すフローチャートである。図13に示す処理は、X軸方向山数Nx及びY軸方向山数Nyをそれぞれ得るために、それぞれの方向の距離変化パターンを用いて、別々に実行される。以下では、一例として、X軸方向の距離変化パターンを用いて、X軸方向山数Nxを算出する場合について説明する。Y軸方向の距離変化パターンを用いて、Y軸方向山数NYを算出する方法も同様である。
ステップ1300では、処理装置100は、距離変化パターンにおける谷部を、距離変化パターンの底面側から探索する。図14に示す例では、距離変化パターンはヒストグラムである。図14にて矢印Z1で示すように、距離変化パターンの底面側から上方(高さの高い方)に向かって谷部が探索される。具体的には、高さが一定の直線S(以下、「探索直線S」という)の高さhを0から徐々に増加させていき、距離変化パターンにおいて探索直線Sよりも低くなるX軸方向の範囲が出現すると、その領域が谷部として検出される。尚、図14に示す例では、探索直線Sが高さh1まで上昇したときに、5つの谷部V1乃至V4が検出される。
ステップ1302では、処理装置100は、各山部の横幅が均等であるか否かを判定する。山部の横幅は、本例ではX軸方向の幅であり、隣接する谷部間の幅に対応する。尚、山部の横幅は、上記ステップ1300で谷部を検出したときの探索直線Sの高さにて算出される。例えば、図14に示す例では、探索直線Sが高さh1まで上昇したときに谷部V1乃至V4を検出しているので、処理装置100は、高さh1における各山部の横幅W1,W2,W3を算出する。
尚、本ステップ1302において、均等とは、必ずしも完全な均等を意味せず、ある程度の誤差を伴った均等である。例えば、30%以内の誤差範囲を均等としてもよい。例えば、各山部の横幅の最大値と平均値を用いて、最大値の50%以上の横幅を持ち、平均値に対して30%以内の誤差範囲内の横幅を持つ各山部については、横幅が均等であるとみなしてもよい。
本ステップ1302において、各山部の横幅が均等である場合は、ステップ1304に進む。各山部の横幅が均等でない場合は、ステップ1300に戻る。例えば、図14に示す例では、高さh1における各山部の横幅W1,W2,W3は、均等でない(W3が有意に大きいので)、ステップ1300に戻ることになる。この場合、ステップ1300では、新たな谷部が見つかるまで、探索直線Sの高さが更に増加される。この結果、図15に示す例では、探索直線Sが高さh2まで上昇したときに新たな谷部V5を検出されることになる。尚、ステップ1300において、探索直線Sの高さが上限値まで増加されても谷部が新たに検出されない場合は、X軸方向山数Nxを"不定"として図13の処理を終了してよい。
ステップ1304では、処理装置100は、山部の数(本例ではX軸方向山数Nx)を算出する。例えば、図15に示す例では、X軸方向山数Nxは、"4"となる。
図13に示す処理によれば、距離変化パターンにおける山部の横幅を考慮することで、X軸方向における商品配置数に対応するX軸方向山数Nxを精度良く算出することができる。具体的には、各山部は、基本的に、モデル商品容器内の各商品に起因して形成される。モデル商品容器内の各商品は同一である。従って、各山部がモデル商品容器内の各商品に対応して検出されている場合には、各山部の横幅は均等になる傾向がある。図13に示す処理によれば、かかる傾向を利用することで、X軸方向における商品配置数に対応するX軸方向山数Nxを精度良く算出することができる。
尚、図13に示す処理では、ステップ1302で肯定判定となった場合は、その時点の山部の数が採用されるが、更に探索直線Sの高さを上昇させ、横幅が均等な山部の数が増加するか否かを確認してもよい。横幅が均等な山部の数が増加した場合は、その増加後の山部の数(X軸方向山数Nx)を採用することとしてよい。
図16は、図6のステップ606の処理(配置パターン特定処理)の一例を示すフローチャートである。ここでは、前提として、商品の配置パターンのうち、実際に取りうる配置パターンが全て予め登録されているものとする。以下では、このようにして登録されている配置パターンを「登録配置パターン」とも称する。
ステップ1600では、処理装置100は、上記ステップ604で得たX軸方向山数Nx及びY軸方向山数Nyに対応した登録配置パターンが存在するか否かを判定する。即ち、処理装置100は、Nx×Nyの登録配置パターンが存在するか否かを判定する。Nx×Nyの登録配置パターンが存在する場合は、ステップ1602に進み、それ以外の場合は、ステップ1604に進む。
ステップ1602では、処理装置100は、モデル商品容器の配置パターンをNx×Nyの配置パターンと確定する。
ステップ1604では、処理装置100は、谷部の底からの各山部の高さH(以下、「山部高さH」という)を算出する。谷部の底は、探索直線Sの現在の高さに対応する。山部高さHは、各山部の横幅が均等となる区間(高さ方向の範囲)として算出される。山部高さHは、各山部の横幅が均等が崩れるまで探索直線Sの高さを増加したときの高さの増分に対応する。図15に示す例では、探索直線Sの高さをh3まで増加したときに、各山部の横幅が均等が崩れる。従って、この場合、山部高さHは、h3−h2となる。尚、処理装置100は、山部高さHを、X軸方向及びY軸方向のそれぞれの距離変化パターンに対してそれぞれ算出する。
ステップ1606では、処理装置100は、X軸方向とY軸方向のうち、距離変化パターンに係る山部高さHが高い方の方向を選択する。例えば、X軸方向に係る距離変化パターンに係る山部高さHがY軸方向に係る距離変化パターンに係る山部高さHよりも高い場合は、X軸方向が選択される。
ステップ1608では、処理装置100は、上記ステップ1606で選択した方向に係る山数を、同方向に係る商品配置数とする登録配置パターンが存在するか否かを判定する。例えば、X軸方向が選択された場合は、X軸方向山数NxをX軸方向に係る商品配置数とする登録配置パターンが存在するか否かが判定される。例えば、Nx=4のとき、例えば4×4の登録配置パターンが存在する場合、本ステップの判定結果は肯定判定となる。本ステップの判定結果が肯定判定の場合は、ステップ1610に進み、それ以外の場合は、ステップ1612に進む。
ステップ1610では、処理装置100は、上記ステップ1606で選択した方向に係る山数と一致する商品配置数を同方向において持つ登録配置パターンを、モデル商品容器の配置パターンと確定する。例えば、X軸方向が選択され且つX軸方向山数Nx=4のとき、4×4の配置パターンが登録されていれば、4×4の配置パターンを、モデル商品容器の配置パターンと確定する。
ステップ1612では、処理装置100は、上記ステップ1606で選択されなかった方の方向を選択する。即ち、処理装置100は、X軸方向とY軸方向のうち、距離変化パターンに係る山部高さHが低い方の方向を選択する。
ステップ1614では、処理装置100は、上記ステップ1608と同様、上記ステップ1612で選択した方向に係る山数を、同方向に係る商品配置数とする登録配置パターンが存在するか否かを判定する。本ステップの判定結果が肯定判定の場合は、ステップ1616に進み、それ以外の場合は、ステップ1618に進む。
ステップ1616では、処理装置100は、上記ステップ1612で選択した方向に係る山数と一致する商品配置数を同方向において持つ登録配置パターンを、モデル商品容器の配置パターンと確定する。
ステップ1618では、処理装置100は、モデル商品容器の配置パターンは"不定"と判定する。
図16に示す処理によれば、X軸方向山数Nx及びY軸方向山数Nyと登録配置パターンとの整合性を判断することで、モデル商品容器における商品の配置パターンを精度良く特定することができる(ステップ1602参照)。
ところで、モデル商品容器内の各商品は、上述の如く、2次元配置されるので、距離画像に基づいて上述の如く算出されるX軸方向山数Nx及びY軸方向山数Nyは、登録配置パターンと完全に整合する傾向となる。但し、実際には、モデル商品容器内の各商品は、商品の入れ方や搬送時の傾きや衝撃などの影響により、Z軸方向で部分的に重なりあったり、X軸方向及び/又はY軸方向で接触しあったりすることがありうる。この場合、X軸方向又はY軸方向の距離変化パターンにおいて山部が顕著に現れず、その結果、X軸方向山数Nx及びY軸方向山数Nyが登録配置パターンと完全に整合しないことがありうる。
この点、図16に示す処理によれば、X軸方向山数Nx及びY軸方向山数Nyが登録配置パターンと完全に整合しない場合でも、部分的に整合する登録配置パターンを用いて商品の配置パターンを特定することができる(ステップ1610及びステップ1616参照)。この際、X軸方向山数Nx及びY軸方向山数Nyのうち、山部高さHが高い方の方向における山数を考慮することで、商品の配置パターンを精度良く特定することができる。これは、X軸方向山数Nx及びY軸方向山数Nyのうち、山部高さHが高い方の方向における山数の方が、低い方の方向における山数よりも信頼性が相対的に高いためである。
尚、図16に示す処理は、図13に示した処理と組合わせて実行されてよい。また、図13に示した処理では、山部の高さを考慮せずにX軸方向山数Nx及びY軸方向山数Nyを算出しているが、山部の高さが一定値以上ある場合に限り、X軸方向山数Nx及びY軸方向山数Nyを算出してもよい。
図17は、図6のステップ604の処理(山数算出処理)の他の一例を示すフローチャートである。ここでは、前提として、登録配置パターンが存在するものとする。
ステップ1700では、処理装置100は、登録配置パターンに基づく商品配置数毎に、各商品配置数に係る区切りポイントをX軸方向及びY軸方向の距離変化パターンに当てはめ、区切りポイントの平均高さを算出する。区切りポイントとは、商品間を区切るラインの位置に対応する。例えば、2×6の配置パターンの場合、X軸方向の商品配置数は、2つであるので、X軸方向の区切りポイントは、商品配置範囲のX軸方向の幅b0(図4参照)の半分の位置に対応する。また、この場合、Y軸方向の商品配置数は、6つであるので、Y軸方向の区切りポイントは、商品配置範囲のY軸方向の幅a0(図4参照)の1/6毎の位置に対応する。
図18は、区切りポイントの平均高さの算出方法の説明図である。尚、図18には、距離変化パターンが曲線のパターンで示されているが、距離変化パターンはヒストグラムであってもよい。図18において、(A)は、登録配置パターンが2×2の配置パターンの場合のX軸方向の区切りポイントL1を示す。区切りポイントL1は、商品配置範囲のX軸方向を均等に2分割したときの分割線の位置に対応する。このとき、区切りポイントL1の平均高さは、区切りポイントL1における距離変化パターンの高さ(図18(A)の交点P1の高さ)に対応する。同様に、図18において、(B)は、登録配置パターンが3×4の配置パターンの場合のX軸方向の区切りポイントL2、L3を示す。区切りポイントL2、L3は、商品配置範囲のX軸方向を均等に3分割したときの分割線の位置に対応する。このとき、区切りポイントL2、L3の平均高さは、区切りポイントL2、L3のそれぞれにおける距離変化パターンの高さ(図18(B)の交点P2、P3の高さ)の平均値に対応する。同様に、図18において、(C)は、登録配置パターンが4×4の配置パターンの場合のX軸方向の区切りポイントL4〜L6を示す。区切りポイントL4〜L6は、商品配置範囲のX軸方向を均等に4分割したときの分割線の位置に対応する。このとき、区切りポイントL4〜L6の平均高さは、区切りポイントL4〜L6のそれぞれにおける距離変化パターンの高さ(図18(C)の交点P4〜P6の高さ)の平均値に対応する。同様に、図18において、(D)は、登録配置パターンが6×2の配置パターンの場合のX軸方向の区切りポイントL7〜L11を示す。区切りポイントL7〜L11は、商品配置範囲のX軸方向を均等に6分割したときの分割線の位置に対応する。このとき、区切りポイントL7〜L11の平均高さは、区切りポイントL7〜L11のそれぞれにおける距離変化パターンの高さ(図18(D)の交点P7〜P11の高さ)の平均値に対応する。
図17に戻るに、ステップ1702では、処理装置100は、上記ステップ1700で求めた各区切りポイントの平均高さに基づいて、平均高さが最小となる区切りポイントを選択する。このとき、2つ以上の区切りポイントの平均高さが同等であるときは、処理装置100は、商品配置数が多い方の区切りポイントを選択する。例えば図18に示す例では、3×4の配置パターンの登録配置パターンに係る区切りポイントの平均高さと、4×4の配置パターンの登録配置パターンに係る区切りポイントの平均高さとが同等である。この場合、商品配置数が多い方の区切りポイントL4〜L6が選択されることになる。これは、区切りポイント(商品配置数)が多くても平均高さが低いことは、その区切りポイントが正解である可能性が高いためである。即ち、2つ以上の区切りポイントの平均高さが同等であるときは、商品配置数が多い方の区切りポイントに商品配置数が少ない方の区切りポイントが含まれている可能性が高く、商品配置数が多い方の区切りポイントが正解である可能性が高いためである。
本ステップ1702では、処理装置100は、X軸方向及びY軸方向のそれぞれについて、平均高さが最小となる区切りポイントを選択する。
ステップ1704では、処理装置100は、上記ステップ1702で選択した区切りポイントに基づいて、X軸方向山数Nx及びY軸方向山数Nyを算出する。このとき、X軸方向山数Nxは、選択したX軸方向に係る区切りポイントの数に1を足すことで算出される。同様に、Y軸方向山数Nyは、選択したY軸方向に係る区切りポイントの数に1を足すことで算出される。例えば、選択したX軸方向に係る区切りポイントの数が"3"であるとき(図18(C)参照)、X軸方向山数Nxは、3+1=4となる。
図17に示す処理によれば、距離変化パターンと登録配置パターンとの整合性を考慮することで、X軸方向及びY軸方向における商品配置数(商品の配置パターン)に対応するX軸方向山数Nx及びY軸方向山数Nyを精度良く算出することができる。具体的には、各山部は、基本的に、モデル商品容器内の各商品に起因して形成される。区切りポイントが各山部間に存在する場合は、区切りポイントの平均高さは小さくなる。従って、各山部がモデル商品容器内の各商品に対応して検出されている場合には、区切りポイントの平均高さは小さくなる傾向がある。図13に示す処理によれば、かかる傾向を利用することで、X軸方向及びY軸方向における商品配置数に対応するX軸方向山数Nx及びY軸方向山数Nyを精度良く算出することができる。
図19は、図6のステップ606の処理(配置パターン特定処理)の他の一例を示すフローチャートである。図19に示す処理は、図16に示した処理に対して、ステップ1904の処理が主に異なる。以下では、図16に示した処理と同様であってよい処理については、同一のステップ番号を付して説明を省略する。図19に示す処理は、図17に示した処理と組み合わせて実行される。即ち、図19に示す処理は、図6のステップ604が図17に示した処理により実現された場合の図6のステップ604に後続するステップ606の処理の一例である。
ステップ1904では、処理装置100は、区切りポイントの平均高さに対する個体最高高さH1を算出する。区切りポイントの平均高さとしては、図17のステップ1702で選択した区切りポイントに係る平均高さが用いられる。尚、処理装置100は、個体最高高さH1を、X軸方向及びY軸方向のそれぞれの距離変化パターンに対してそれぞれ算出する。個体最高高さH1は、区切りポイントの平均高さを基準としたときの距離変化パターンの最高高さに対応する。距離変化パターンの最高高さは、基本的には、モデル商品容器内の商品に起因して発生する。図20は、個体最高高さH1の説明図であり、(A)は、個体最高高さH1が比較的大きい場合を示し、(B)は、個体最高高さH1が比較的小さい場合を示す。図20(A)は、図17のステップ1702で区切りポイントL4〜L6が選択された場合の個体最高高さH1の説明図である。図20(B)は、図17のステップ1702で区切りポイントL7〜L11が選択された場合の個体最高高さH1の説明図である。尚、図20(A)と図20(B)とでは、距離変化パターンが異なる。
ステップ1906では、処理装置100は、X軸方向とY軸方向のうち、距離変化パターンに係る個体最高高さH1が高い方の方向を選択する。例えば、X軸方向に係る距離変化パターンに係る個体最高高さH1がY軸方向に係る距離変化パターンに係る個体最高高さH1よりも高い場合は、X軸方向が選択される。
ステップ1912では、処理装置100は、X軸方向とY軸方向のうち、距離変化パターンに係る個体最高高さH1が低い方の方向を選択する。
図19に示す処理によれば、図16に示した処理と同様、X軸方向山数Nx及びY軸方向山数Nyと登録配置パターンとの整合性を判断することで、モデル商品容器における商品の配置パターンを精度良く特定することができる(ステップ1602参照)。
ところで、上述の如く、モデル商品容器内の各商品は、商品の入れ方や搬送時の傾きや衝撃などの影響により、Z軸方向で部分的に重なりあったり、X軸方向及び/又はY軸方向で接触しあったりすることがありうる。この場合、X軸方向又はY軸方向の距離変化パターンにおいて区切りポイントの平均高さが顕著に低くならず(図20(B)参照)、その結果、X軸方向山数Nx及びY軸方向山数Nyが登録配置パターンと完全に整合しないことがありうる。
この点、図19に示す処理によれば、X軸方向山数Nx及びY軸方向山数Nyが登録配置パターンと完全に整合しない場合でも、部分的に整合する登録配置パターンを用いて商品の配置パターンを特定することができる(ステップ1610及びステップ1616)。この際、X軸方向山数Nx及びY軸方向山数Nyのうち、個体最高高さH1が高い方の方向における山数を考慮することで、商品の配置パターンを精度良く特定することができる。これは、X軸方向山数Nx及びY軸方向山数Nyのうち、個体最高高さH1が高い方の方向における山数の方が、低い方の方向における山数よりも信頼性が相対的に高いためである。
尚、図19に示す処理と図17に示した処理とを組み合わせる場合、図17に示すステップ1704において、個体最高高さH1が一定値以上ある場合に限り、X軸方向山数Nx及びY軸方向山数Nyを算出してもよい。即ち、図17に示した処理では、個体最高高さH1を考慮せずにX軸方向山数Nx及びY軸方向山数Nyを算出しているが、個体最高高さH1が一定値以上ある場合に限り、X軸方向山数Nx及びY軸方向山数Nyを算出してもよい。
また、図19に示す処理と図17に示した処理とを組み合わせる場合、上記の例では、X軸方向山数Nx及びY軸方向山数Nyと登録配置パターンとの整合性を判断しているが、他のパラメータと登録配置パターンとの整合性を判断してもよい。他のパラメータは、X軸方向山数Nx及びY軸方向山数Nyに関連するパラメータであり、例えば、図17のステップ1702で選択した区切りポイントの数であってもよい。
尚、図19に示す処理は、図16に示した処理と組み合わせて実行されてもよい。例えば、図16に示した処理において、ステップ1618に進む場合に、図19に示す処理(図17に示した処理)が実行されてもよい。即ち、図16に示す方法により商品の配置パターンが特定できない場合に、図19に示した方法により商品の配置パターンを特定してもよい。或いは、逆に、図19に示した処理において、ステップ1618に進む場合に、図16に示す処理(図13に示した処理)が実行されてもよい。
図21は、図6のステップ608の処理(個体サイズ検出処理)の一例を示すフローチャートである。
ステップ2100では、処理装置100は、特定した配置パターンに基づいて、モデル商品容器内の商品に関する最大個体サイズを算出する。最大個体サイズは、商品配置範囲に係る画素領域のサイズを配置パターンに基づくX軸方向及びY軸方向のそれぞれの商品個数で割ることで算出されてもよい。図22に示す例は、4×3の配置パターンが特定された例であり、この場合、最大個体サイズは、商品配置範囲に係る画素領域のX軸方向の長さを4で均等に割り且つ商品配置範囲に係る画素領域のY軸方向の長さを3で均等に割ることで算出される。
ステップ2102では、処理装置100は、上記ステップ2100で得た最大個体サイズに基づいて、距離画像内にノイズ除去面積以上且つ最大個体サイズ以下の画素集合が存在するか否かを判定する。ノイズ除去面積とは、距離画像内のノイズに係る画素集合を除去するための設定値である。ノイズ除去面積以上且つ最大個体サイズ以下の画素集合は、モデル商品容器の底面よりも僅かに高い高さ(所定の閾値)で探索されてよい。即ち、ノイズ除去面積以上且つ最大個体サイズ以下の画素集合は、所定の閾値以上の距離情報を持つ画素の中から探索される。これは、商品の断面(Z軸方向視の断面)はモデル商品容器の底面付近の高さで標準的なサイズとなっているものが多いことによる。換言すると、モデル商品容器の底面から比較的高い位置で探索すると、実際の商品のサイズよりも小さい画素集合(商品の上部に対応する画素集合)が探索される可能性が高いためである。距離画像内にノイズ除去面積以上且つ最大個体サイズ以下の画素集合が存在する場合は、ステップ2104に進み、それ以外の場合は、ステップ2106に進む。
ステップ2104では、処理装置100は、上記ステップ2102で検出した画素集合のサイズを、モデル商品容器の商品に関する標準個体サイズとして算出する。標準個体サイズは、上記ステップ2102で検出した画素集合の外接矩形で表されてもよい。このとき、外接矩形は、画素集合内の画素に対して外接しつつ完全に囲繞するように形成されてもよいし、各辺が画素集合内の画素を例えば50%以上を含むように形成されてよい。標準個体サイズは、距離画像によりモデル商品容器の1つの商品が分離して検出されるときの当該商品の画素集合のサイズの取りうる標準値に相当する。例えば、図23に示す例では、所定の閾値以上の距離情報を持つ画素集合が2つ(G1,G2にて指示)が検出されている。画素集合G1は、ノイズ除去面積以上且つ最大個体サイズ以下の画素集合である。従って、この場合、標準個体サイズは、画素集合G1のサイズに設定される。尚、画素集合G2は、複数の商品が分離しない状態で検出された場合の画素集合に対応する。尚、かかる画素集合G2は、モデル商品容器内の複数の商品が接触しあっているときに発生する傾向がある。
ステップ2106では、処理装置100は、所定の閾値以上の距離情報を持つ画素集合の全体サイズを、配置パターンに基づく商品個数で割ることで、モデル商品容器の商品に関する標準個体サイズを算出する。例えば、図24に示す例では、所定の閾値以上の距離情報を持つ画素集合G3が検出されている。この場合、画素集合G3は、配置パターンを形成する全ての商品に係る画素集合であると見なすことができる。図24に示す例は、4×3の配置パターンが特定された例であり、この場合、標準個体サイズは、画素集合G3のサイズをX軸方向及びY軸方向のそれぞれで4及び3で均等に割ることで算出される。
図25は、商品容器C1内の各商品のピッキング座標を算出する処理の一例を示すフローチャートである。図25の処理は、上述のモデル商品容器と同一の商品が入った商品容器C1を扱う商品容器ステーション52に関する処理である。尚、商品容器C1には、上述のモデル商品容器と同一の所定の配置パターンで商品が配置される。以下、一例として、上述のモデル商品容器と同一の商品が入った商品容器C1を扱う1つの商品容器ステーション52に関する処理について代表して説明する。他の商品容器ステーション52に関する処理も同様であってよい。
図25の処理は、上述のモデル商品容器の後に商品容器ステーション52に供給される任意の商品容器C1に対して実行される。
ステップ2500では、処理装置100は、配置パターン情報(図6に示した処理で得られるモデル商品容器内の商品の配置パターンに関する情報)を読み出す。
ステップ2502では、処理装置100は、上記ステップ2500で読み出した配置パターン情報に基づいて、商品容器C1内の各商品のピッキング座標を算出する。例えば、処理装置100は、商品容器C1の商品配置範囲を配置パターン情報に従って均等に分割する。例えば、配置パターン情報が2×6の配置パターンを表す場合は、商品容器C1の商品配置範囲を2×6のパターンで12個の領域に分割する。処理装置100は、分割して得られる各領域の中心点を各商品のピッキング座標として算出する。
図25に示す処理によれば、上述の如く取得した配置パターン情報を用いて、商品容器C1内の各商品のピッキング座標を算出することができる。これは、特に商品容器ステーション52に供給される商品容器C1内の商品の配置パターンが固定でない場合に好適である。即ち、商品容器ステーション52上の商品容器内の商品の種類が変化する場合に好適である。この場合、商品容器ステーション52上の商品容器内の商品の種類が変化した後の最初の商品容器C1をモデル商品容器として、図6に示す処理を実行し、その後、図25に示す処理により、変化後の商品容器C1内の各商品のピッキング座標を算出すればよい。尚、モデル商品容器内の各商品のピッキング座標についても同様の態様で算出されてもよい。
尚、図25に示す処理(後述の図26に示す処理においても同様)において、配置パターン情報が得られない場合(ステップ1618参照)、固定(デフォルト)ピッキング座標を採用することとしてよい。配置パターン情報が得られない場合は、例えば商品の上部が真四角の断面で且つ各商品間が隙間なく密接している場合や、商品同士がX軸方向及びY軸方向の双方で接触している場合等に生じうる。このような商品については、商品容器C1内で配置位置がずれる可能性が低く、或いは、複数の商品が一方に片寄ることで形状が小さくなる可能性が低く、固定ピッキング座標によるピッキングが可能である場合が多い。
図26は、商品容器C1内の各商品のピッキング座標を算出する処理の一例を示すフローチャートである。図26の処理は、上述のモデル商品容器と同一の商品が入った商品容器C1を扱う商品容器ステーション52に関する処理である。以下、一例として、上述のモデル商品容器と同一の商品が入った商品容器C1を扱う1つの商品容器ステーション52に関する処理について代表して説明する。他の商品容器ステーション52に関する処理も同様であってよい。
以下では、商品容器ステーション52上の商品容器C1内の商品の種類(及びそれに伴う商品の配置パターン)が変化しない間の処理について説明する。商品容器ステーション52上の商品容器C1内の商品の種類が変化した場合は、図26の処理は、図25の処理と同様、商品の種類が変化後のモデル商品容器に対する図6に示す処理が実行された後に、実行されればよい。尚、モデル商品容器内の各商品のピッキング座標についても、以下で説明する態様で算出されてもよい。
ステップ2600では、処理装置100は、配置パターン情報及び個体サイズ情報を読み出す。尚、個体サイズ情報は、上述の如く、図6(図21)の処理で得られるモデル商品容器内の商品の標準個体サイズ等に関する情報を含む。
ステップ2601では、処理装置100は、距離センサ70から商品容器C1に係る距離画像を取得する。
ステップ2602では、処理装置100は、上記ステップ2600で得た距離画像に基づいて、高さが所定の閾値以上の画素を1、高さが所定の閾値未満の画素を0とした2値画像を作成する。所定の閾値は、商品容器C1の底面よりも僅かに高い位置の高さに対応してよい(図21の説明参照)。以下では、"1"の値を持つ画素の集合を、「商品候補画素集合」とも称する。画素の集合とは、集合内の任意の一の画素("1"の値を持つ画素)が他の一の画素("1"の値を持つ画素)と隣接し合っている状態を指す。
ステップ2603では、処理装置100は、配置パターン情報に基づいて、商品個体番号を付与する。商品個体番号は、任意の態様で付与されてよく、例えば図27には、4×4の配列パターンについての商品(計16個)の個体番号の付与ルールの一例が示されている。図27では、商品個体番号は、○内の数字で示されている。図27に示す例では、X軸方向に沿って右から左に進みつつ、Y軸方向の上から下に向かう向きで、商品個体番号が昇順に付与されている。
例えば、処理装置100は、商品候補画素集合の全てを囲繞する外形を、配置パターン情報に基づく配置パターンで分割し、それぞれの分割領域の中心座標に対応付けて商品個体番号を付与する。尚、この分割領域は、商品が1つ存在しうると推定される領域に対応するが、ここでの中心座標は、後述の如く、そのままピッキング座標として用いられない。即ち、中心座標は、商品容器C1内の各商品に商品個体番号を付与するときに各商品を特定するための固有情報に相当する。尚、ステップ2603の処理は、ある商品容器C1に対する初回の処理時においてのみ実行されてもよい。
ステップ2604では、処理装置100は、個体サイズ情報の標準個体サイズに基づいて、最大個体サイズを算出する。処理装置100は、標準個体サイズに対して所定の拡大率K1(>1)を乗じた値を最大個体サイズとして算出してよい。これは、商品容器C1内に商品が斜めに配置されること等に起因して、標準個体サイズよりも大きいサイズの商品候補画素集合であっても、1商品に対応する可能性があるためである。尚、処理装置100は、個体サイズ情報の最大個体サイズをそのまま利用してもよい。
ステップ2606では、処理装置100は、個体サイズ情報の標準個体サイズに基づいて、最小個体サイズを算出する。処理装置100は、標準個体サイズに対して所定の縮小率K2(<1)を乗じた値を最小個体サイズとして算出してよい。これは、商品容器C1内に商品が1方向に片寄って配置されること等に起因して、標準個体サイズよりも小さいサイズの商品候補画素集合であっても、1商品に対応する可能性があるためである。
ステップ2608では、処理装置100は、上記ステップ2606で得た最小個体サイズ以上且つ上記ステップ2604で得た最大個体サイズ以下のサイズを持つ商品候補画素集合が存在するか否かを判定する。例えば、図28に示す例では、2つの商品候補画素集合G1,G2が検出されている。商品候補画素集合G1は、最小個体サイズ以上且つ最大個体サイズ以下の商品候補画素集合である。この場合、本ステップ2608の判定結果は肯定判定となる。本ステップ2608において、最小個体サイズ以上且つ最大個体サイズ以下のサイズを持つ商品候補画素集合が存在する場合は、ステップ2610に進み、それ以外の場合は、ステップ2612に進む。尚、最小個体サイズ以上且つ最大個体サイズ以下のサイズを持つ商品候補画素集合は、複数検出される場合もある。
ステップ2610では、処理装置100は、最小個体サイズ以上且つ最大個体サイズ以下のサイズを持つ商品候補画素集合を、1つの商品に係る画素集合(以下、「商品画素集合」という)と認識する。即ち、処理装置100は、1つの商品に係る分離した商品画素集合と認識する。また、最小個体サイズ以上且つ最大個体サイズ以下のサイズを持つ商品候補画素集合が複数検出された場合は、処理装置100は、それぞれの商品候補画素集合を商品画素集合として認識する。尚、処理装置100は、分離した商品画素集合のサイズを算出し、算出したサイズを標準個体サイズとして置き換えてもよいし、個体サイズ情報の標準個体サイズを平均化して補正してもよい。
ステップ2612では、処理装置100は、上記ステップ2604で得た最大個体サイズよりも大きい商品候補画素集合が存在するか否かを判定する。例えば、図28に示す例では、商品候補画素集合G2は、最大個体サイズよりもサイズが大きい。この場合、本ステップ2612の判定結果は肯定判定となる。最大個体サイズよりも大きい商品候補画素集合が存在する場合は、ステップ2614に進み、それ以外の場合は、ステップ2620に進む。尚、最大個体サイズよりもサイズが大きい商品候補画素集合は、複数検出される場合もある。
ステップ2614では、処理装置100は、最大個体サイズよりもサイズが大きい商品候補画素集合を、複数の商品(接触しあっている商品)に係る画素集合(以下、「接触商品画素集合」ともいう)と認識する。処理装置100は、接触商品画素集合に対するX軸方向及びY軸方向のそれぞれの分割数(接触商品画素集合に含まれる商品数)を算出する。例えば、処理装置100は、接触商品画素集合のX軸方向の長さを、標準個体サイズのX軸方向の長さで割って得られる整数値を、接触商品画素集合に含まれるX軸方向の分割数として算出する。同様に、処理装置100は、接触商品画素集合のY軸方向の長さを、標準個体サイズのY軸方向の長さで割って得られる整数値を、接触商品画素集合に含まれるY軸方向の分割数として算出する。尚、接触商品画素集合の形状が矩形でない場合は、まず、接触商品画素集合を、標準個体サイズのY軸方向の長さで均等分割し、それぞれの分割領域ついて、標準個体サイズのX軸方向の長さで均等分割し、分割数を算出してもよい。例えば、図28に示す例では、処理装置100は、接触商品画素集合G2を、標準個体サイズのY軸方向の長さで均等分割し、それぞれの分割領域G21,G22,G23ついて、標準個体サイズのX軸方向の長さで均等分割し、分割数を算出する。
ステップ2616では、処理装置100は、上記ステップ2614で得たX軸方向及びY軸方向の各分割数に基づいて、接触商品画素集合をX軸方向及びY軸方向のそれぞれで均等に分割する。尚、接触商品画素集合の形状が矩形でない場合は、処理装置100は、まず、接触商品画素集合をY軸方向で均等分割し、それぞれの分割領域ついて、X軸方向で均等分割する。例えば、図28に示す例では、処理装置100は、接触商品画素集合G2をY軸方向で均等分割し、それぞれの分割領域G21,G22,G23ついてX軸方向で均等分割する。この結果、接触商品画素集合が複数の分割領域へと分割され、各分割領域が1つの商品に対応することになる。以下では、この各分割領域を「分割枠」と称する。分割枠は、分割領域そのものであってもよいし、分割領域に外接する矩形の枠であってもよい。以下では、一例として、分割枠は、分割領域に外接する矩形の枠であるとする。このとき、分割枠は、対応する分割領域内の画素を、外接しつつ完全に囲繞するように配置されてもよいし、各辺が例えば50%以上を含むように配置されてよい。以下では、分割枠内の画素集合は、1つの商品に係る画素集合(接触商品画素集合内の各商品画素集合)に対応するので、商品画素集合とも称する。
ステップ2618では、処理装置100は、上述の如く算出した分割枠のサイズを、必要に応じて補正する。例えば、分割枠のサイズが上記ステップ2606で得た最小個体サイズ以上且つ上記ステップ2604で得た最大個体サイズ以下である場合は、処理装置100は、分割枠のサイズを補正しない。他方、分割枠のサイズが上記ステップ2606で得た最小個体サイズ未満である場合は、処理装置100は、上記ステップ2606で得た最小個体サイズに分割枠のサイズを補正する。また、分割枠のサイズが上記ステップ2604で得た最大個体サイズよりも大きい場合は、処理装置100は、上記ステップ2604で得た最大個体サイズに分割枠のサイズを補正する。
また、ステップ2618では、処理装置100は、分割枠の位置を、必要に応じて補正する。この位置の補正は、例えば、上記ステップ2616で得た分割枠のサイズが、上述の如く、最大個体サイズ又は最小個体サイズに補正された場合等に必要となりうる。即ち、分割枠のサイズを上述の如く補正すると、特定の分割枠について、サイズに余りや不足が生じる場合がある。また、分割枠間で隙間が発生する場合がある。この場合、処理装置100は、接触商品画素集合に係る複数の商品のうちの最もピッキング順が早い商品(次のピッキング対象の商品)に係る分割枠の位置を基準として、当該分割枠に向けて他の分割枠を詰めていく態様で、分割枠の位置を補正してもよい。例えば、ピッキング順が図27に示す商品個体番号の昇順に対応するとき、処理装置100は、X軸方向に沿って左から右に、かつ、Y軸方向の下から上に向かう向きで、各分割枠の位置を詰めていく。尚、処理装置100は、必要に応じて、次のピッキング対象の商品に係る分割枠についても同様の方向に詰めることで補正してもよい。
ステップ2620では、処理装置100は、各商品画素集合の面積の中心点をそれぞれの商品に係るピッキング座標として算出する。例えば、接触商品画素集合の場合、処理装置100は、接触商品画素集合を各商品画素集合へと分割したときの分割枠の中心点をそれぞれの商品に係るピッキング座標として算出する。また、分離した商品画素集合の場合(ステップ2610参照)、処理装置100は、分離した商品画素集合の外接矩形の中心点をピッキング座標として算出してもよい。このとき、外接矩形は、分離した商品画素集合内の画素を、各辺が例えば50%以上を含むように形成されてよい。
ステップ2622では、処理装置100は、上記ステップ2620で算出したピッキング座標に基づいて、次のピッキング対象の商品(1つ以上の商品の場合もある)をロボット50によりピッキングさせる。即ち、処理装置100は、ピッキング指示を出力する。この結果、商品容器C1内の商品の配置パターンは変化し、或いは、商品容器C1内の商品が全てなくなることで、新たな商品容器C1が商品容器ステーション52に供給される。処理装置100は、ピッキング指示出力後、ロボット50からの情報に基づいて、商品容器C1内の商品の残存状態を更新する。商品容器C1内の商品の残存状態とは、例えば、残りの商品の数(残数)や残りの商品に係る商品個体番号である。尚、商品容器C1内の商品の残存状態に関する情報は、例えばステップ2618で次のピッキング対象の商品を特定するために使用されてよい。ステップ2622の処理が終了すると、ステップ2601に戻り、処理が繰り返される。
図26に示す処理によれば、商品容器C1に係る距離画像に基づいて、商品容器C1内の各商品のピッキング座標を算出することができる。これにより、商品容器C1内の商品の片寄り等に起因して商品容器C1毎に僅かながら変化しうる各商品の位置に精度良く適合するピッキング座標を算出することができる。また、配置パターン情報を利用するので、距離画像において複数の商品に係る画素集合が互いに分離されていない場合でも、これらの商品のピッキング座標を精度良く算出することができる。また、図26に示す処理によれば、接触商品画素集合を分割する分割枠のサイズや位置を補正するので、商品容器C1内の各商品の接触状態(密接度合等)が反映された高い精度のピッキング座標を算出することができる。
尚、図26に示す処理によれば、ステップ2601からの処理は、新たな商品容器C1が商品容器ステーション52に供給される毎に実行されると共に、商品容器C1内の商品がロボット50によるピッキングされる毎に実行される。これにより、商品容器C1毎に僅かに異なりうる各商品の位置に対しても、高い精度のピッキング座標を算出することができる。尚、商品容器C1内の商品がロボット50によるピッキングされると、ピッキング動作による外乱等に起因して残りの商品の位置がわずかに変化する場合もある。図26に示す処理によれば、商品容器C1内の商品がロボット50によるピッキングされる毎にステップ2601からの処理が実行されるので、かかる変化が生じた場合でも、高い精度のピッキング座標を算出することができる。
尚、図26に示す処理では、分割枠のサイズを可変しているが、分割枠のサイズは、固定値であってもよい。この場合、固定値は、個体サイズ情報の標準個体サイズ又は上述の置き換え後の標準個体サイズであってもよい。
また、図26に示す処理では、ステップ2603で得た中心座標は、ピッキング座標として使用されない。即ち、ピッキング座標は、ステップ2604乃至2620の処理により算出される。但し、ステップ2603で得た中心座標は、ピッキング座標として使用されてもよい。この場合、ステップ2604乃至2620の処理は省略されてもよい。
ところで、物流業務におけるコスト効率の改善施策として、上述の如くロボット50を用いた商品ピッキング作業が考えられる。一般的に、ロボットは、特定の位置に配置された商品をピッキング対象とする、あるいは1つの商品種としては商品自体の形状が一定であるものを対象するのが主流であった。このため、予め決められた固定座標によるピッキング、あるいは画像認識技術を用い、物体の存在位置をロボット座標として指示することで、ロボットによるピッキングが可能であった。
しかし、特に袋物の商品については形状が安定しないため、実際にピッキング作業向けに(例えば商品容器ステーション52に)届けられる段階では、前工程の搬送などの影響を受け、各商品が商品容器C1内の特定位置に配置されていない場合が多々発生する。また、昨今では消費者のニーズの多様化により、メーカー・卸売業者などから店舗に対する納品傾向が少量多品種化しており、店舗へ納入する容器(搬送容器Cや商品容器C1)は同一のものでありながら、実際の商品は様々な形状が存在する。また、商品の形状の違いに起因して、各商品種における商品容器C1内の商品の配置パターンも多様となるが、作業者による物流業務においてはこの情報が不要である。このため、商品容器C1内の入数の登録はあるものの、配置パターンについては登録がないことが多い。或いは、同一商品であっても生産ラインの特性(出荷工場)によって複数種の配置パターンとなるケースも発生する。
従って、特に袋物の商品について予め決められた固定座標によってロボットによるピッキングを行う場合、ピッキングミスが多発する要因となり、作業効率、品質の面で好ましくない。これらの商品群を画像認識技術を用いてピッキング座標を検出する場合、単純な画像認識技術では各商品の存在位置の検出が困難である。これは、各商品の配置が特定位置にないこと、また商品容器C1内の商品同士と接触していることで各商品の区切りが不明確になることに起因する。
この点、本実施例によれば、上述の如く、図6に示すような前処理を行うことで、商品の配置パターンの登録がない場合でも、商品の配置パターンを検出することができる。これにより、商品の配置パターンが稼働中に多様に変動する場合であっても、変動後の配置パターンを検出することができる。また、本実施例によれば、商品容器C1毎に距離画像を取得し、ピッキング座標を算出するので、商品容器C1毎に商品の配置位置が微妙に異なる場合であっても、精度の良いピッキング座標を算出することができる。また、ピッキング毎に距離画像を取得し、ピッキング座標を更新するので、ピッキングに伴って商品の配置位置が変化した場合でも、精度の良いピッキング座標を算出することができる。また、本実施例によれば、登録配置パターンとの整合性を考慮して、商品の配置パターンを特定するので、各商品の区切りが不明確である場合でも、精度の良いピッキング座標を算出することができる。これにより、ピッキングミスの頻度を低減することができる。また、本実施例によれば、上述の如く、距離画像を用いて商品の配置パターンを検出するので、複数のセンサ(例えばカメラとレーザーセンサ)を組み合わせて用いる必要がなく、簡易な検出手段を実現することができる。
以上、各実施例について詳述したが、特定の実施例に限定されるものではなく、特許請求の範囲に記載された範囲内において、種々の変形及び変更が可能である。また、前述した実施例の構成要素を全部又は複数を組み合わせることも可能である。
例えば、上述した実施例では、モデル商品容器に後続する商品容器についてはモデル商品容器と同じ商品の配置パターンであることを考慮して、モデル商品容器に対してのみヒストグラム等を用いて配置パターンを特定している。しかしながら、商品容器内の商品の配置パターンが多様に変化する設備等においては、各商品容器に対しても同様のヒストグラム等を用いて配置パターンを特定してもよい。
なお、以上の実施例に関し、さらに以下の付記を開示する。
(付記1)
容器内の底面をXY平面としたとき、ロボットによるピッキング予定の商品が複数配置された容器内のZ軸方向の距離情報を、X軸方向の複数位置及びY軸方向の複数位置で取得するセンサと、
前記X軸方向の複数位置及び前記Y軸方向の複数位置での前記距離情報から得られるX軸方向及びY軸方向のそれぞれに沿った距離変化パターンに基づいて、前記容器内のX軸方向及びY軸方向のそれぞれの方向における前記商品の配置数を算出する処理装置と含む、商品ピッキング装置。
(付記2)
X軸方向に沿った前記距離変化パターンは、前記X軸方向の複数位置において前記Y軸方向の複数位置での前記距離情報を平均または累計したヒストグラムを含み、
Y軸方向に沿った前記距離変化パターンは、前記Y軸方向の複数位置において前記X軸方向の複数位置での前記距離情報を平均または累計したヒストグラムを含む、付記1に記載の商品ピッキング装置。
(付記3)
前記処理装置は、X軸方向に沿った前記距離変化パターンにおける山部の数を算出すると共に、Y軸方向に沿った前記距離変化パターンにおける山部の数を算出し、算出した山部の数に基づいて、前記配置数を算出する、付記1又は2に記載の商品ピッキング装置。
(付記4)
前記処理装置は、X軸方向に沿った前記距離変化パターンにおける前記山部の数と、Y軸方向に沿った前記距離変化パターンにおける前記山部の数とを、それぞれ、X軸方向及びY軸方向のそれぞれの方向における前記商品の配置数とする、付記3に記載の商品ピッキング装置。
(付記5)
前記処理装置は、X軸方向に沿った前記距離変化パターンについては、X軸方向のそれぞれの幅が均等な山部の数を算出し、Y軸方向に沿った前記距離変化パターンについては、Y軸方向のそれぞれの幅が均等な山部の数を算出する、付記3又は4に記載の商品ピッキング装置。
(付記6)
前記処理装置は、X軸方向に沿った前記距離変化パターンにおける前記山部の数と、Y軸方向に沿った前記距離変化パターンにおける前記山部の数とが、前記容器における商品の配置パターンに関する登録情報と整合する場合に、整合する登録情報に基づいて、前記配置数を算出する、付記3〜5のうちのいずれか1項に記載の商品ピッキング装置。
(付記7)
前記処理装置は、X軸方向に沿った前記距離変化パターンにおいて各山部の幅が均等となる高さ範囲を算出すると共に、Y軸方向に沿った前記距離変化パターンにおいて各山部の幅が均等となる高さ範囲を算出し、
X軸方向に沿った前記距離変化パターンにおける前記山部の数と、Y軸方向に沿った前記距離変化パターンにおける前記山部の数とが、前記容器における商品の配置パターンに関する登録情報と整合しない場合であって、X軸方向及びY軸方向のうちの前記高さ範囲が広い方の方向に係る山部の数のみが、前記登録情報と整合する場合に、前記処理装置は、整合する登録情報に基づいて、前記配置数を算出する、付記6に記載の商品ピッキング装置。
(付記8)
前記処理装置は、算出した前記配置数に基づいて、前記商品の個体サイズを算出する、付記1に記載の商品ピッキング装置。
(付記9)
前記処理装置は、前記容器における商品の配置パターンに関する登録情報に基づいて、前記登録情報に係る登録配置パターン毎に、X軸方向及びY軸方向に沿った前記距離変化パターンのそれぞれに対して商品間の区切りポイントを設定すると共に、設定した区切りポイントにおける距離情報の平均値をX軸方向及びY軸方向別に算出し、
前記処理装置は、X軸方向に関して算出した前記距離情報の平均値が最も小さい区切りポイントと、Y軸方向に関して算出した前記距離情報の平均値が最も小さい区切りポイントとに基づいて、前記配置数を算出する、付記1又は2に記載の商品ピッキング装置。
(付記10)
前記処理装置は、X軸方向及びY軸方向のいずれにおいても、算出した前記距離情報の平均値が同等に最も小さい区切りポイントが複数の登録配置パターンについて発生した場合は、対応する方向における配置数が最も多い登録配置パターンに対応する区切りポイントを用いる、付記9に記載の商品ピッキング装置。
(付記11)
前記処理装置は、X軸方向に関して算出した前記距離情報の平均値が最も小さい区切りポイントと、Y軸方向に関して算出した前記距離情報の平均値が最も小さい区切りポイントとが、前記登録情報に係る登録配置パターンと整合する場合に、整合する前記登録配置パターンに基づいて、前記配置数を算出する、付記9又は10に記載の商品ピッキング装置。
(付記12)
X軸方向に関して算出した前記距離情報の平均値が最も小さい区切りポイントと、Y軸方向に関して算出した前記距離情報の平均値が最も小さい区切りポイントとが、前記登録情報に係る登録配置パターンと整合しない場合、前記処理装置は、X軸方向及びY軸方向のうちの、前記距離情報の平均値と前記距離情報の最大値との差が大きい方の方向の区切りポイントに対応する前記登録情報に係る登録配置パターンに基づいて、前記配置数を算出する、付記11に記載の商品ピッキング装置。
(付記13)
前記処理装置は、前記配置数に基づいて、前記容器と同一の配置パターンで同一の商品が配置された別の容器内の各商品に対するピッキング座標を算出する、付記1〜12のうちのいずれか1項に記載の商品ピッキング装置。
(付記14)
前記センサは、前記容器と同一の配置パターンで同一の商品が配置された別の容器に関する前記距離情報を取得し、
前記処理装置は、前記配置数と、前記別の容器に関する前記距離情報とに基づいて、前記別の容器内の各商品に対するピッキング座標を算出する、付記1〜12のうちのいずれか1項に記載の商品ピッキング装置。
(付記15)
前記処理装置は、前記配置数に基づいて、前記商品の個体サイズを算出し、算出した前記商品の個体サイズと、前記別の容器に関する前記距離情報とに基づいて、前記ピッキング座標を算出する、付記14に記載の商品ピッキング装置。
(付記16)
前記センサは、前記ロボットより前記別の容器内の商品がピッキングされる毎に、前記距離情報を取得する、付記14又は15に記載の商品ピッキング装置。
(付記17)
前記処理装置は、前記別の容器内における商品の残存状態に関する情報に基づいて、前記ピッキング座標を算出する、付記14〜16のうちのいずれか1項に記載の商品ピッキング装置。
(付記18)
前記センサは、前記距離情報を含む距離画像を取得し、
前記処理装置は、前記別の容器の底面に対して所定距離以上を表す前記距離情報を持つ画素集合を前記距離画像内で検出し、検出した前記画素集合に基づいて、前記ピッキング座標を算出する、付記14〜17のうちのいずれか1項に記載の商品ピッキング装置。
(付記19)
前記処理装置は、前記画素集合のサイズが前記商品の個体サイズに整合する場合に、前記画素集合の中心位置に基づいて、前記画素集合に係る商品の前記ピッキング座標を算出する、付記18に記載の商品ピッキング装置。
(付記20)
前記処理装置は、前記画素集合のサイズが前記商品の個体サイズよりも有意に大きい場合には、前記配置数と、前記商品の個体サイズとに基づいて、前記画素集合の分割態様を決定し、前記画素集合を前記分割態様で分割して得られる各分割画素集合の中心位置に基づいて、前記画素集合に係る各商品の前記ピッキング座標を算出する、付記18に記載の商品ピッキング装置。
(付記21)
付記1〜20のうちのいずれか1項に記載の商品ピッキング装置の前記処理装置による各種処理を前記処理装置に実行させるプログラム。
(付記22)
容器内の底面をXY平面としたとき、ロボットによるピッキング予定の商品が複数配置された容器内のZ軸方向の距離情報を、X軸方向の各位置及びY軸方向の各位置で取得するセンサから、前記距離情報を取得し、
X軸方向の各位置及びY軸方向の各位置での前記距離情報から得られるX軸方向及びY軸方向のそれぞれに沿った距離変化パターンに基づいて、前記容器内X軸方向及びY軸方向のそれぞれの方向における前記商品の配置数を算出する、
処理をコンピューターに実行させるプログラム。
(付記23)
前記商品の配置数に基づいて、前記容器と同一の配置パターンで同一の商品が配置された別の容器内の各商品に対するピッキング座標を算出する、
処理をコンピューターに実行させる付記22に記載のプログラム。
(付記24)
容器内の底面をXY平面としたとき、ロボットによるピッキング予定の商品が複数配置された容器内のZ軸方向の距離情報を、X軸方向の複数位置及びY軸方向の複数位置で取得するセンサから、前記距離情報を取得し、
前記X軸方向の複数位置及び前記Y軸方向の複数位置での前記距離情報から得られるX軸方向及びY軸方向のそれぞれに沿った距離変化パターンに基づいて、前記容器内のX軸方向及びY軸方向のそれぞれの方向における前記商品の配置数を算出することを含む、商品ピッキング方法。
(付記25)
付記1〜24における前記商品は、袋詰めされたパン・菓子・食品類である。
1、2 ピッキング設備
4 商品配置ライン
6 商品払出ライン
10 商品ピッキング装置
50 ロボット
52 商品容器ステーション
70 距離センサ
100 処理装置

Claims (15)

  1. 容器内の底面をXY平面としたとき、ロボットによるピッキング予定の商品が複数配置された容器内のZ軸方向の距離情報を、X軸方向の複数位置及びY軸方向の複数位置で取得するセンサと、
    前記X軸方向の複数位置及び前記Y軸方向の複数位置での前記距離情報から得られるX軸方向及びY軸方向のそれぞれに沿った距離変化パターンに基づいて、前記容器内のX軸方向及びY軸方向のそれぞれの方向における前記商品の配置数を算出する処理装置と含む、商品ピッキング装置。
  2. X軸方向に沿った前記距離変化パターンは、前記X軸方向の複数位置において前記Y軸方向の複数位置での前記距離情報を平均または累計したヒストグラムを含み、
    Y軸方向に沿った前記距離変化パターンは、前記Y軸方向の複数位置において前記X軸方向の複数位置での前記距離情報を平均または累計したヒストグラムを含む、請求項1に記載の商品ピッキング装置。
  3. 前記処理装置は、X軸方向に沿った前記距離変化パターンにおける山部の数を算出すると共に、Y軸方向に沿った前記距離変化パターンにおける山部の数を算出し、算出した前記山部の数に基づいて、前記配置数を算出する、請求項1又は2に記載の商品ピッキング装置。
  4. 前記処理装置は、X軸方向に沿った前記距離変化パターンにおける前記山部の数と、Y軸方向に沿った前記距離変化パターンにおける前記山部の数とが、前記容器における商品の配置パターンに関する登録情報と整合する場合に、整合する登録情報に基づいて、前記配置数を算出する、請求項3に記載の商品ピッキング装置。
  5. 前記処理装置は、X軸方向に沿った前記距離変化パターンにおいて各山部の幅が均等となる高さ範囲を算出すると共に、Y軸方向に沿った前記距離変化パターンにおいて各山部の幅が均等となる高さ範囲を算出し、
    X軸方向に沿った前記距離変化パターンにおける前記山部の数と、Y軸方向に沿った前記距離変化パターンにおける前記山部の数とが、前記容器における商品の配置パターンに関する登録情報と整合しない場合であって、X軸方向及びY軸方向のうちの前記高さ範囲が広い方の方向に係る山部の数のみが、前記登録情報と整合する場合に、前記処理装置は、整合する登録情報に基づいて、前記配置数を算出する、請求項4に記載の商品ピッキング装置。
  6. 前記処理装置は、前記容器における商品の配置パターンに関する登録情報に基づいて、前記登録情報に係る登録配置パターン毎に、X軸方向及びY軸方向に沿った前記距離変化パターンのそれぞれに対して商品間の区切りポイントを設定すると共に、設定した区切りポイントにおける距離情報の平均値をX軸方向及びY軸方向別に算出し、
    前記処理装置は、X軸方向に関して算出した前記距離情報の平均値が最も小さい区切りポイントと、Y軸方向に関して算出した前記距離情報の平均値が最も小さい区切りポイントとに基づいて、前記配置数を算出する、請求項1又は2に記載の商品ピッキング装置。
  7. 前記処理装置は、X軸方向に関して算出した前記距離情報の平均値が最も小さい区切りポイントと、Y軸方向に関して算出した前記距離情報の平均値が最も小さい区切りポイントとが、前記登録情報に係る登録配置パターンと整合する場合に、整合する前記登録配置パターンに基づいて、前記配置数を算出する、請求項6に記載の商品ピッキング装置。
  8. X軸方向に関して算出した前記距離情報の平均値が最も小さい区切りポイントと、Y軸方向に関して算出した前記距離情報の平均値が最も小さい区切りポイントとが、前記登録情報に係る登録配置パターンと整合しない場合、前記処理装置は、X軸方向及びY軸方向のうちの、前記距離情報の平均値と前記距離情報の最大値との差が大きい方の方向の区切りポイントに対応する前記登録情報に係る登録配置パターンに基づいて、前記配置数を算出する、請求項7に記載の商品ピッキング装置。
  9. 前記センサは、前記容器と同一の配置パターンで同一の商品が配置された別の容器に関する前記距離情報を取得し、
    前記処理装置は、前記配置数と、前記別の容器に関する前記距離情報とに基づいて、前記別の容器内の各商品に対するピッキング座標を算出する、請求項1〜8のうちのいずれか1項に記載の商品ピッキング装置。
  10. 前記処理装置は、前記配置数に基づいて、前記商品の個体サイズを算出し、算出した前記商品の個体サイズと、前記別の容器に関する前記距離情報とに基づいて、前記ピッキング座標を算出する、請求項9に記載の商品ピッキング装置。
  11. 前記センサは、前記ロボットより前記別の容器内の商品がピッキングされる毎に、前記距離情報を取得する、請求項9又は10に記載の商品ピッキング装置。
  12. 前記センサは、前記距離情報を含む距離画像を取得し、
    前記処理装置は、前記別の容器の底面に対して所定距離以上を表す前記距離情報を持つ画素集合を前記距離画像内で検出し、検出した前記画素集合に基づいて、前記ピッキング座標を算出する、請求項9〜11のうちのいずれか1項に記載の商品ピッキング装置。
  13. 前記処理装置は、前記画素集合のサイズが前記商品の個体サイズに整合する場合に、前記画素集合の中心位置に基づいて、前記画素集合に係る商品の前記ピッキング座標を算出する、請求項12に記載の商品ピッキング装置。
  14. 前記処理装置は、前記画素集合のサイズが前記商品の個体サイズよりも有意に大きい場合には、前記配置数と、前記商品の個体サイズとに基づいて、前記画素集合の分割態様を決定し、前記画素集合を前記分割態様で分割して得られる各分割画素集合の中心位置に基づいて、前記画素集合に係る各商品の前記ピッキング座標を算出する、請求項13に記載の商品ピッキング装置。
  15. 容器内の底面をXY平面としたとき、ロボットによるピッキング予定の商品が複数配置された容器内のZ軸方向の距離情報を、X軸方向の複数位置及びY軸方向の複数位置で取得するセンサから、前記距離情報を取得し、
    前記X軸方向の複数位置及び前記Y軸方向の複数位置での前記距離情報から得られるX軸方向及びY軸方向のそれぞれに沿った距離変化パターンに基づいて、前記容器内のX軸方向及びY軸方向のそれぞれの方向における前記商品の配置数を算出する、
    処理をコンピューターに実行させるプログラム。
JP2014073083A 2014-03-31 2014-03-31 商品ピッキング装置及びプログラム Active JP6314017B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2014073083A JP6314017B2 (ja) 2014-03-31 2014-03-31 商品ピッキング装置及びプログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2014073083A JP6314017B2 (ja) 2014-03-31 2014-03-31 商品ピッキング装置及びプログラム

Publications (2)

Publication Number Publication Date
JP2015193468A true JP2015193468A (ja) 2015-11-05
JP6314017B2 JP6314017B2 (ja) 2018-04-18

Family

ID=54432899

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2014073083A Active JP6314017B2 (ja) 2014-03-31 2014-03-31 商品ピッキング装置及びプログラム

Country Status (1)

Country Link
JP (1) JP6314017B2 (ja)

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2018155685A (ja) * 2017-03-21 2018-10-04 株式会社富士通アドバンストエンジニアリング 物体検出方法、物体検出プログラムおよび物体検出装置
JP2018156530A (ja) * 2017-03-21 2018-10-04 株式会社富士通アドバンストエンジニアリング 物体検出方法、物体検出プログラムおよび物体検出装置
JPWO2017110499A1 (ja) * 2015-12-22 2018-10-11 株式会社イシダ ピッキングシステム
US10192315B2 (en) 2016-08-04 2019-01-29 Kabushiki Kaisha Toshiba Apparatus and method for holding objects
JP2019094142A (ja) * 2017-11-20 2019-06-20 株式会社富士通アドバンストエンジニアリング 採番装置、採番方法及び採番プログラム
JP2019137496A (ja) * 2018-02-08 2019-08-22 株式会社富士通アドバンストエンジニアリング 収納システム
WO2019181441A1 (ja) * 2018-03-20 2019-09-26 日本電気株式会社 情報処理装置、制御方法、及びプログラム
WO2020246809A1 (ko) * 2019-06-04 2020-12-10 최중인 자판기형 무인 편의점 시스템 및 이를 운용하는 방법
CN113911621A (zh) * 2021-09-23 2022-01-11 江苏齐鑫智能科技有限公司 一种智能档案柜系统扫描储位方法
CN114286740A (zh) * 2019-09-18 2022-04-05 株式会社富士 作业机器人以及作业系统

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH05139509A (ja) * 1991-11-20 1993-06-08 Murata Mach Ltd ピツキングシステムの残量検知方法
JPH09272090A (ja) * 1996-04-04 1997-10-21 Mitsubishi Electric Corp ロボットシステム
JPH11300683A (ja) * 1998-04-22 1999-11-02 Kobe Steel Ltd 袋状ワーク姿勢検出装置
JP2012230041A (ja) * 2011-04-27 2012-11-22 Seiko Epson Corp 位置検出方法、位置検出装置、ロボットシステム

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH05139509A (ja) * 1991-11-20 1993-06-08 Murata Mach Ltd ピツキングシステムの残量検知方法
JPH09272090A (ja) * 1996-04-04 1997-10-21 Mitsubishi Electric Corp ロボットシステム
JPH11300683A (ja) * 1998-04-22 1999-11-02 Kobe Steel Ltd 袋状ワーク姿勢検出装置
JP2012230041A (ja) * 2011-04-27 2012-11-22 Seiko Epson Corp 位置検出方法、位置検出装置、ロボットシステム

Cited By (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPWO2017110499A1 (ja) * 2015-12-22 2018-10-11 株式会社イシダ ピッキングシステム
US10192315B2 (en) 2016-08-04 2019-01-29 Kabushiki Kaisha Toshiba Apparatus and method for holding objects
JP7009755B2 (ja) 2017-03-21 2022-01-26 富士通株式会社 物体検出方法、物体検出プログラムおよび物体検出装置
JP2018156530A (ja) * 2017-03-21 2018-10-04 株式会社富士通アドバンストエンジニアリング 物体検出方法、物体検出プログラムおよび物体検出装置
JP2018155685A (ja) * 2017-03-21 2018-10-04 株式会社富士通アドバンストエンジニアリング 物体検出方法、物体検出プログラムおよび物体検出装置
JP2019094142A (ja) * 2017-11-20 2019-06-20 株式会社富士通アドバンストエンジニアリング 採番装置、採番方法及び採番プログラム
JP7073762B2 (ja) 2018-02-08 2022-05-24 富士通株式会社 収納システム
JP2019137496A (ja) * 2018-02-08 2019-08-22 株式会社富士通アドバンストエンジニアリング 収納システム
JPWO2019181441A1 (ja) * 2018-03-20 2021-03-18 日本電気株式会社 情報処理装置、及び制御方法
JP7067812B2 (ja) 2018-03-20 2022-05-16 日本電気株式会社 情報処理装置、及び制御方法
WO2019181441A1 (ja) * 2018-03-20 2019-09-26 日本電気株式会社 情報処理装置、制御方法、及びプログラム
US11966435B2 (en) 2018-03-20 2024-04-23 Nec Corporation Information processing apparatus, control method, and program
WO2020246809A1 (ko) * 2019-06-04 2020-12-10 최중인 자판기형 무인 편의점 시스템 및 이를 운용하는 방법
KR20200139534A (ko) * 2019-06-04 2020-12-14 최중인 자판기형 무인 편의점 시스템 및 이를 운용하는 방법
KR102292600B1 (ko) * 2019-06-04 2021-08-24 최중인 자판기형 무인 편의점 시스템 및 이를 운용하는 방법
CN114286740A (zh) * 2019-09-18 2022-04-05 株式会社富士 作业机器人以及作业系统
CN114286740B (zh) * 2019-09-18 2024-02-27 株式会社富士 作业机器人以及作业系统
CN113911621A (zh) * 2021-09-23 2022-01-11 江苏齐鑫智能科技有限公司 一种智能档案柜系统扫描储位方法
CN113911621B (zh) * 2021-09-23 2023-03-07 江苏齐鑫智能科技有限公司 一种智能档案柜系统扫描储位方法

Also Published As

Publication number Publication date
JP6314017B2 (ja) 2018-04-18

Similar Documents

Publication Publication Date Title
JP6314017B2 (ja) 商品ピッキング装置及びプログラム
US10692231B1 (en) Composite agent representation
US11488323B2 (en) Robotic system with dynamic packing mechanism
US10618172B1 (en) Robotic system with error detection and dynamic packing mechanism
US20210129334A1 (en) Robotic system with dynamic pack adjustment mechanism and methods of operating same
US20230278811A1 (en) Robotic system for processing packages arriving out of sequence
JP2020172400A (ja) 倉庫高速配置方法、機器及び記憶媒体
CN112070838A (zh) 基于二维-三维融合特征的对象识别与定位方法及装置
KR20180046361A (ko) 깊이 센서 기반의 적재 최적화 방법 및 시스템
JP5760220B2 (ja) 距離画像カメラおよびこれを用いた対象物の面形状認識方法
US11369999B2 (en) Parcel determination device, parcel sorting system, and parcel determination method
Li et al. Using Kinect for monitoring warehouse order picking operations
CN113392747A (zh) 一种用于立体仓库的货物包装箱识别方法及系统
CN111498212B (zh) 用于处理失序到达的包裹的机器人系统
CN111498213B (zh) 具有动态打包机制的机器人系统
JPWO2019003687A1 (ja) 投影指示装置、荷物仕分けシステムおよび投影指示方法
JP7009755B2 (ja) 物体検出方法、物体検出プログラムおよび物体検出装置
EP3689792B1 (en) Package recognition device, package sorting system and package recognition method
JPWO2019003686A1 (ja) 荷物認識装置、荷物仕分けシステムおよび荷物認識方法
JP6845057B2 (ja) 物体検出方法、物体検出プログラムおよび物体検出装置
JP6893429B2 (ja) 物体検出方法、物体検出プログラムおよび物体検出装置
WO2023073780A1 (ja) 学習データの生成装置および学習データの生成方法、並びに学習データを使用する機械学習装置および機械学習方法
CN116342858B (zh) 物体检测方法、装置、电子设备及存储介质
TWI843363B (zh) 搬運裝置的貨架定位方法及可定位貨架的搬運裝置
JP2019185204A (ja) 画像処理装置、ロボットシステム、画像処理方法

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20161201

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20171024

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20171205

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20180125

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: 20180306

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20180326

R150 Certificate of patent or registration of utility model

Ref document number: 6314017

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313115

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350