(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2023-09-12
(45)【発行日】2023-09-21
(54)【発明の名称】情報処理システム、情報処理方法、プログラム
(51)【国際特許分類】
B65G 61/00 20060101AFI20230913BHJP
G06T 7/60 20170101ALI20230913BHJP
【FI】
B65G61/00 414
G06T7/60 110
(21)【出願番号】P 2021210644
(22)【出願日】2021-12-24
【審査請求日】2022-07-15
(73)【特許権者】
【識別番号】390002761
【氏名又は名称】キヤノンマーケティングジャパン株式会社
(73)【特許権者】
【識別番号】592135203
【氏名又は名称】キヤノンITソリューションズ株式会社
(74)【代理人】
【識別番号】100189751
【氏名又は名称】木村 友輔
(72)【発明者】
【氏名】小林 義和
(72)【発明者】
【氏名】佐野 彰彦
【審査官】小川 悟史
(56)【参考文献】
【文献】国際公開第2018/186234(WO,A1)
【文献】特開2010-161537(JP,A)
【文献】特開2007-084162(JP,A)
【文献】国際公開第2014/109061(WO,A1)
【文献】特開2020-029344(JP,A)
【文献】特開平11-130266(JP,A)
【文献】特開平11-116059(JP,A)
【文献】特開平11-116060(JP,A)
【文献】特開平11-011683(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
B65G 61/00
G06T 7/60
H04N 5/00
B66F 9/00
(57)【特許請求の範囲】
【請求項1】
車両の荷台を撮影する撮影手段と、
前記撮影手段により撮影された
第1の時点における荷台を第1の方向から撮影した
第1画像を表示する画面から、前記撮影手段により撮影された
第2の時点における荷台を第1の方向から撮影した
第2画像を表示する画面への遷移を可能にし、
前記撮影手段により撮影された
第3の時点における荷台を第2の方向から撮影した
第3画像を表示する画面から、前記撮影手段により撮影された
第4の時点における荷台を第2の方向から撮影した
第4画像を表示する画面への遷移を可能にするよう制御する表示制御手段と、
を備えることを特徴とする情報処理システム。
【請求項2】
前記撮影手段は、前記第1画像の撮影の次に前記第3画像の撮影を行い、前記第2画像の撮影の次に前記第4画像の撮影を行うことを特徴とする請求項1に記載の情報処理システム。
【請求項3】
前記第1の時点および前記第3の時点は、前記車両の荷台から荷物の積み下ろし作業をする前の時点であり、前記第2の時点および前記第4の時点は、前記車両の荷台から荷物の積み下ろし作業をした後の時点であることを特徴とする請求項1または2に記載の情報処理システム。
【請求項4】
前記表示制御手段は、
前記第1画像と前記第2画像との差分または前記第3画像と前記第4画像との差分を識別可能にした画像を表示するよう制御することを特徴とする請求項1
乃至3のいずれか1項に記載の情報処理システム。
【請求項5】
前記表示制御手段は、前記撮影手段により撮影された画像から検出された検出対象物を矩形で囲んだ画像を表示するよう制御することを特徴とする請求項1
乃至4のいずれか1項に記載の情報処理システム。
【請求項6】
前記表示制御手段は、画面遷移指示を受け付ける受付部を表示することを特徴とする請求項1乃至
5のいずれか1項に記載の情報処理システム。
【請求項7】
前記撮影手段により第1の方向から荷台の撮影が行われた場合、第2の方向からの撮影を促す通知をする通知手段を備えることを特徴とする請求項1乃至
6のいずれか1項に記載の情報処理システム。
【請求項8】
前記通知手段は、
前記第3画像の撮影が行われた場合に、前記第2画像の撮影を促す通知をすることを特徴とする請求項
7に記載の情報処理システム。
【請求項9】
前記通知手段は、車両の荷台に積載された検出対象物の一部を降ろす場合または車両の荷台に検出対象物を追加で積み込む場合には、積み降ろし作業後の画像を撮影するよう促すことを特徴とする請求項
7または
8に記載の情報処理システム。
【請求項10】
前記車両は、荷台の表面と裏面とからそれぞれ荷物を積載できるウィング車であることを特徴とする請求項1乃至
9のいずれか1項に記載の情報処理システム。
【請求項11】
前記第1の方向は、前記ウィング車の荷台の表面を撮影可能な方向であることを特徴とする請求項
10に記載の情報処理システム。
【請求項12】
前記第2の方向は、前記ウィング車の荷台の裏面を撮影可能な方向であることを特徴とする請求
10または1
1に記載の情報処理システム。
【請求項13】
前記表示制御手段は、前記第1の方向から撮影された画像から検出された検出対象物のうち、前記裏面に積載された検出対象物を識別可能
な画像を表示制御することを特徴とする請求項
11または12に記載の情報処理システム。
【請求項14】
前記撮影手段により撮影された画像から検出された検出対象物の数を通知する検出数通知手段を備えることを特徴とする請求項1乃至1
3のいずれか1項に記載の情報処理システム。
【請求項15】
前記検出数通知手段は、前記第1の方向から撮影された画像から検出された検出対象物のうち、前記裏面に積載された検出対象物を除外した数を通知することを特徴とする請求項
11を引用する請求項1
4に記載の情報処理システム。
【請求項16】
前記検出数通知手段により通知された検出対象物の数の修正を受け付ける受付手段を備えることを特徴とする請求項1
4または請求項1
5に記載の情報処理システム。
【請求項17】
情報処理システムの撮影手段が、車両の荷台を撮影する撮影工程と、
前記情報処理システムの表示制御手段が、前記撮影工程により撮影された
第1の時点における荷台を第1の方向から撮影した
第1画像を表示する画面から、前記撮影
工程により撮影された
第2の時点における荷台を第1の方向から撮影した
第2画像を表示する画面への遷移を可能にし、
前記撮影工程により撮影された
第3の時点における荷台を第2の方向から撮影した
第3画像を表示する画面から、前記撮影
工程により撮影された
第4の時点における荷台を第2の方向から撮影した
第4画像を表示する画面への遷移を可能にするよう制御する表示制御工程と、
を備えることを特徴とする情報処理方法。
【請求項18】
コンピュータを、請求項1乃至1
6のいずれか1項に記載された情報処理システムの各手段として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、情報処理システム、情報処理方法、プログラムに関する。
【背景技術】
【0002】
荷物の輸送において、物流倉庫にある荷物をトラック等に積み込んだり、トラック等に積まれた荷物を降ろして倉庫に搬入することが行われている。荷物の管理にあたって、どのトラックにどれだけの数量の荷物を積み込んだのか、またどれだけの荷物を降ろしたのかを正確に把握し管理することが必要となっている。
また、荷物を輸送する際にはパレットの上に荷物を載せてフォークリフト等で運ぶことで、効率的な輸送を実現している。このパレットはレンタル会社から貸与されることが多いこともあり、トラック等に積まれた数や降ろした数を正確に数える必要がある。しかし手作業で計数される場合にはパレットの数を正確に計数できないこともあり、パレット紛失の一因になっている。
【先行技術文献】
【特許文献】
【0003】
【発明の開示】
【発明が解決しようとする課題】
【0004】
特許文献1には、貨物船の船倉に積載された積み荷について、画像を用いて積み荷の量や重さを計測する技術が記載されている。しかし、輸送用トラックの場合、ウイング車と呼ばれる両開きのトラックが使用されており、両面から荷物(パレット等を含む)を数えなければならない。そのため、手作業で数を数えている現状では、トラックの片面しか数えていない等の数え忘れが発生し、正確なパレット数を計測できていなかった。
【0005】
そこで、本発明は、荷物の数を効率的かつ適切に数えることを目的とする。
【課題を解決するための手段】
【0006】
上記目的を達成するために、本発明の情報処理システムは、
車両の荷台を撮影する撮影手段と、
前記撮影手段により撮影された第1の時点における荷台を第1の方向から撮影した第1画像を表示する画面から、前記撮影手段により撮影された第2の時点における荷台を第1の方向から撮影した第2画像を表示する画面への遷移を可能にし、
前記撮影手段により撮影された第3の時点における荷台を第2の方向から撮影した第3画像を表示する画面から、前記撮影手段により撮影された第4の時点における荷台を第2の方向から撮影した第4画像を表示する画面への遷移を可能にするよう制御する表示制御手段と、
を備えることを特徴とする。
【発明の効果】
【0007】
本発明によれば、荷物の数を効率的かつ適切に数えることが可能となる。
【図面の簡単な説明】
【0008】
【
図1】本発明の実施形態におけるシステム全体構成の一例を示す図である。
【
図2】本発明の実施形態における情報処理装置のハードウェア構成の一例を示すブロック図である。
【
図3】本発明の実施形態における、物体検出処理のための写真撮影の一例を示すフローチャートである。
【
図4】本発明の実施形態における、物体検出処理のための写真撮影の一例を示すフローチャートである。
【
図5】本発明の実施形態における、物体検出処理の一例を示すフローチャートである。
【
図6】本発明の実施形態における、基本情報入力画面の一例を示す図である。
【
図7】本発明の実施形態における、表画像撮影画面の一例を示す図である。
【
図8】本発明の実施形態における、表画像撮影結果画面の一例を示す図である。
【
図9】本発明の実施形態における、裏画像撮影画面の一例を示す図である。
【
図10】本発明の実施形態における、裏画像撮影結果画面の一例を示す図である。
【
図11】本発明の実施形態における、物体検出の補正前の一例を示す図である。
【
図12】本発明の実施形態における、物体検出の補正後の一例を示す図である。
【
図13】本発明の実施形態における、表面物体数修正画面の一例を示す図である。
【
図14】本発明の実施形態における、裏面物体数修正画面の一例を示す図である。
【
図15】本発明の実施形態における、表面(2枚目)物体数修正画面の一例を示す図である。
【
図16】本発明の実施形態における、裏面(2枚目)物体数修正画面の一例を示す図である。
【
図17】本発明の実施形態における、検出された物体数等の登録された情報を一覧表示する画面の一例を示す図である。
【
図18】本発明の実施形態における、物体検出数の詳細表示画面の一例を示す図である。
【
図19】本発明の実施形態における、検出パレット矩形リストの一例を示す図である。
【
図20】本発明の実施形態における、検出された物体数等の情報登録の一例を示すデータテーブルである。
【発明を実施するための形態】
【0009】
以下、図面を参照して、本発明の実施形態を詳細に説明する。
【0010】
図1は、本発明の実施形態におけるカウントシステム全体構成の一例を示す図である。
【0011】
本発明におけるカウントシステムは、サーバ装置101とクライアント端末102とが通信可能に接続されたシステムとなっている。クライアント端末102は、パレットの積み下ろしを行う物流センタにてエッジデバイスとして用いられるものと、オフィスにおいて管理者等が用いるものとがある。物流センタにて用いられるクライアント端末102については、それ自体に撮像機能を備えた端末(スマートフォン等の情報処理装置)であることが好ましいが、他の撮像装置と接続可能な端末であっても良い。オフィスにて用いられるクライアント端末102は例えばパーソナルコンピュータ等の情報処理装置であり、各物流センタにおけるクライアント端末102から撮影画像やパレット数を取得し管理する端末である。
図1においては、クライアント端末102はオフィスと物流センタそれぞれ1台ずつしか図示していないが、それぞれ複数台であっても良い。
【0012】
サーバ装置101は、クライアント端末102と通信可能に接続されており、撮影画像からパレットを検出してパレットの数をカウントしたり、撮影画像やパレット数等のデータを記憶・管理する機能を備える。また、クライアント端末102からの要求に応じて種々のデータをクライアント端末102に対して送信する。なお、
図1においてはサーバ装置101は1台のサーバ装置として示しているが、複数台のサーバ装置から構成されるシステムであっても良いし、いわゆるクラウドシステムであっても良い。
【0013】
図2は、本発明の情報処理装置(サーバ装置101、クライアント端末102)のハードウェア構成の一例を示すブロック図である。
【0014】
図2に示すように、情報処理装置は、システムバス200を介してCPU(Central Processing Unit)201、ROM(Read Only Memory)202、RAM(Random Access Memory)203、記憶装置204、入力コントローラ205、音声コントローラ206、ビデオコントローラ207、メモリコントローラ208、よび通信I/Fコントローラ209が接続される。
【0015】
CPU201は、システムバス200に接続される各デバイスやコントローラを統括的に制御する。
【0016】
ROM202あるいは外部メモリ213は、CPU201が実行する制御プログラムであるBIOS(Basic Input/Output System)やOS(Operating System)や、本情報処理方法を実現するためのコンピュータ読み取り実行可能なプログラムおよび必要な各種データ(データテーブルを含む)を保持している。
【0017】
RAM203は、CPU201の主メモリ、ワークエリア等として機能する。CPU201は、処理の実行に際して必要なプログラム等をROM202あるいは外部メモリ213からRAM203にロードし、ロードしたプログラムを実行することで各種動作を実現する。
【0018】
入力コントローラ205は、キーボード210や不図示のマウス等のポインティングデバイス等の入力装置からの入力を制御する。入力装置がタッチパネルの場合、ユーザがタッチパネルに表示されたアイコンやカーソルやボタンに合わせて押下(指等でタッチ)することにより、各種の指示を行うことができることとする。
【0019】
また、タッチパネルは、マルチタッチスクリーンなどの、複数の指でタッチされた位置を検出することが可能なタッチパネルであってもよい。
【0020】
ビデオコントローラ207は、ディスプレイ212などの外部出力装置への表示を制御する。ディスプレイは本体と一体になったノート型パソコンのディスプレイも含まれるものとする。なお、外部出力装置はディスプレイに限ったものははく、例えばプロジェクタであってもよい。また、前述のタッチ操作を受け付け可能な装置については、入力装置も提供する。
【0021】
なおビデオコントローラ207は、表示制御を行うためのビデオメモリ(VRAM)を制御することが可能で、ビデオメモリ領域としてRAM203の一部を利用することもできるし、別途専用のビデオメモリを設けることも可能である。
【0022】
メモリコントローラ208は、外部メモリ213へのアクセスを制御する。外部メモリとしては、ブートプログラム、各種アプリケーション、フォントデータ、ユーザファイル、編集ファイル、および各種データ等を記憶する外部記憶装置(ハードディスク)、フレキシブルディスク(FD)、或いはPCMCIAカードスロットにアダプタを介して接続されるコンパクトフラッシュ(登録商標)メモリ等を利用可能である。
【0023】
通信I/Fコントローラ209は、ネットワークを介して外部機器と接続・通信するものであり、ネットワークでの通信制御処理を実行する。例えば、TCP/IPを用いた通信やISDNなどの電話回線、および携帯電話の4G回線、5G回線等を用いた通信が可能である。
【0024】
尚、CPU201は、例えばRAM203内の表示情報用領域へアウトラインフォントの展開(ラスタライズ)処理を実行することにより、ディスプレイ212上での表示を可能としている。また、CPU201は、ディスプレイ212上の不図示のマウスカーソル等でのユーザ指示を可能とする。
【0025】
次に、本発明の適用対象の一例であるパレット数をカウントする業務の全体像について説明する。なお、本実施例においては検出対象物の具体例として荷物の運搬に用いられるパレットを用いて説明するが、検出対象物としてはパレットに限られるものではなく、いわゆるウィング車により輸送されるものであればいずれでも良い。
【0026】
まず、物流センタの作業者がクライアント端末102に表示された
図6に一例を示す基本情報入力画面を介して、作業内容を登録する。そして、登録された内容に従い、トラック等の車両(ウィング車等)に積載された荷物の写真を撮影し、撮影された画像からパレットを検出することでパレットの数をカウントする。
【0027】
パレットとは、フォークリフトやハンドリフトによって荷物を運搬する際に用いられる荷物を載せる台であり、フォークリフト等の爪をパレットに差し込むことで、パレットに載った荷物をまとめて運搬することが可能となる。
【0028】
また、本実施例では、いわゆるウィング車と言われる、荷台の左右がそれぞれ開口し左右どちらからも荷物の積み下ろしができるタイプのトラックに積まれたパレットをカウントの対象として説明する。
【0029】
カウント対象のパレットは、物流センタに入庫するパレットと、物流センタから出庫するパレットが対象となることから、入庫の場合(すなわち、荷物を降ろす場合)については荷物を降ろす前の状態を撮影し、出庫の場合(すなわち、荷物を積む場合)については荷物を積んだ後の写真を撮影しカウントする。また、すでに荷物が積まれている車両に荷物を追加で積む場合や、車両に積まれた荷物のうち一部だけを降ろす場合は、積み下ろしの前後で写真を撮影し、差分をカウントする。
【0030】
次に
図3~
図5のフローチャートを用いて、パレットカウント処理の一例について説明する。
【0031】
図3~
図5のフローチャートで示す処理は、クライアント端末102のCPU201が所定の制御プログラムを読み出して実行する処理である。
【0032】
ステップS101では、
図6に示す基本情報入力画面601を介してユーザから入力された入出庫区分(1:入庫、2:出庫)602、車番603、備考604、表面の撮影(第1の方向からの撮影)判断(1:全て、2:一部)605、裏面の撮影(第2の方向からの撮影)判断(1:全て、2:一部、3:なし)606に係る情報を取得する。
【0033】
ここで
図6に一例を示す基本情報入力画面について説明する。基本情報入力画面はユーザの操作により作業内容等の指示を受け付ける画面である。
図6に示す通り、入庫に係る作業であるか出庫に係る作業であるかを選択するボタン(602-1、602-2)、荷物の積み下ろしを行う対象となる車両を識別する情報である車番の入力を受け付ける入力欄603、その他の必要情報の入力を受け付ける備考入力欄604、車両の表面(右側または左側)についての作業内容の選択ボタン605、車両の裏面(表面が右側であれば左側、表面が左側であれば右側)に対する作業内容の選択ボタン606を含んでいる。そして基本情報登録ボタン607が押下されることで、入力された情報が登録される。
【0034】
ステップS102では、ステップS101で取得した情報に基づき、表面の撮影判断が、「全て」であるか、「一部」であるかを判定する。
【0035】
「全て」である場合には、ステップS103へ進む。「一部」である場合には、
図4のフローチャートで示す処理に移行する。
【0036】
なお、「全て」は、車両に積まれているすべてのパレットを降ろす、またはパレットが積まれていない車両にパレットを積む作業が行われることを意味している。「一部」については、車両に積まれているパレットの一部を降ろす、または既にいくつかのパレットが積まれている車両に追加でパレットを積む作業が行われることを意味する。
【0037】
ステップS103では、
図7に示す表画像撮影画面を表示し、ユーザから撮影ボタン(701)の押下を受け付けることで撮影を行う。そして、撮影された画像を、
図8に示す表画像撮影結果画面の撮影画像領域(801)に表示する。
【0038】
ユーザは撮影画像領域801に表示された撮影画像を確認し、問題ないと判断すると、次へボタン(802)を押下する。次へボタンが押下されると、処理をステップS104に移行する。
【0039】
再度撮影をやり直す場合は、カメラボタン(803)を押下する。カメラボタンが押下されると、表画像撮影画面(
図7)を再度表示し、ユーザによる撮影ボタンの押下を待機する。
【0040】
ここで、
図7に示す表画像撮影画面について説明する。
【0041】
表画像撮影画面は、撮影ボタン701、撮影画像領域702が表示される。撮影画像領域は撮影対象がライブビュー表示される領域である。撮影ボタンは、ユーザから撮影画像領域に表示された画像を撮影する指示を受け付けるボタンであり、撮影ボタンが押下されることで撮像処理が実行される。
【0042】
また、撮影画像領域には、パレット数のカウントに適した画像が撮影できる画角になるように、ガイドライン(一点鎖線で示した703の線)が表示されている。具体的には、トラックの荷台を斜め前方または斜め後方から撮影するよう誘導するガイドライン(一例として荷台の輪郭を表した図形)が表示される。なお、斜め前方または斜め後方から撮影する場合では、その撮影方向に応じてガイドラインの表示方法を切り替える。例えば、切り替えボタン(704や902)の押下を受け付けると、ガイドラインの左右を反転するよう制御する。このガイドラインに従って撮影することで、荷台を斜め方向から撮影することになり、荷台の裏面に積載されたパレットが画角に入りにくくなったり、裏面に積載されたパレットと表面に積載されたパレットとの区別がしやすくなる。その結果、裏面のパレットを表面に積載されたパレットとして検出してしまうという誤検出を低減させる効果がある。また、斜め方向から撮影することで、表面と裏面の正面まで移動して撮影する必要がなくなることから、撮影する際の作業者の移動距離を短縮することが可能となるという効果も得られる。
【0043】
ステップS104では、ステップS103で撮影された画像からパレット数のカウントを行う。ステップS104の処理については
図5のフローチャートを用いて後述する。
【0044】
ステップS105では、ステップS101で取得した情報に基づき、裏面の撮影判断が、「全て」であるか、「一部」であるか、「なし」であるかを判定する。
【0045】
「全て」である場合には、ステップS106へ進む。「一部」である場合には、ステップS109に進む。「なし」である場合には、ステップS114に進む。
【0046】
「全て」「一部」についてはステップS102において説明した通りであり、「なし」は車両の裏面(車両の右側を表面とした場合には左側のように、表面ではない面)にパレットを積む作業や裏面からパレットを降ろす作業が行われないことを意味している。
【0047】
本実施例においては、基本情報入力画面において入力された情報に基づき、裏面の撮影要否などを判定しているが、表面の撮影画像を用いて判定しても良い。具体的には、荷台の左右バランスを確保するために、片面のみ(表面のみ)に荷物をたくさん積載することは通常行われないことから、表面に所定以上の荷物が積載されている/積載した場合(表面の撮影画像から所定数以上のパレットが検出された場合など、所定の条件を満たす場合)には、裏面にも荷物が積載されている/積載したと判定し、裏面の撮影処理に遷移するよう制御する。
【0048】
まず、ステップS105で「全て」であると判定された場合について説明する。
【0049】
ステップS106では、
図9に示す裏画像撮影画面を表示し、ユーザから撮影ボタン(901)の押下を受け付けることで撮影を行う。そして、撮影された画像を、
図10に示す裏画像撮影結果画面の撮影画像領域(1001)に表示する。
【0050】
ユーザは撮影画像領域に表示された撮影画像を確認し、問題ないと判断すると、次へボタン(1002)を押下する。次へボタンが押下されると、処理をステップS107に移行する。
【0051】
再度撮影をやり直す場合は、カメラボタン(1003)を押下する。カメラボタンが押下されると、裏画像撮影画面(
図9)を再度表示し、ユーザによる撮影ボタンの押下を待機する。
【0052】
図9で示す裏画像撮影画面については、
図7の表画像撮影画面と同様の構成であるため、説明は省略する。
【0053】
ステップS107では、ステップS106で撮影された画像からパレット数のカウントを行う。ステップS107の処理については
図5のフローチャートを用いて後述する。
【0054】
ステップS108では、現在日時、ステップS101で取得した入出庫区分(1:入庫、2:出庫)、車番、備考、ステップS104で検出されたパレット数(表検出数1)、当該パレット数の修正後の数(表修正数1)、ステップS107で検出されたパレット数(裏検出数1)、当該パレット数の修正後の数(裏修正数1)、ステップS103で撮影された画像のパレットを矩形で囲んだ画像(表検出画像1)、ステップS106で撮影された画像のパレットを矩形で囲んだ画像(裏検出画像1)を
図20に示すデータテーブルに登録する。
【0055】
そして、本フローチャートの処理を終了する。
【0056】
次に、ステップS105で「一部」と判定された場合について説明する。
【0057】
ステップS109、S110の処理は、ステップS106、S107の処理と同様であり、車両に荷物を積み込む前または車両から荷物を降ろす前の積み荷の画像を撮影し、パレット数を検出する処理である。
【0058】
ステップS111、S112の処理についても、ステップS106、S107の処理と同様であるが、S109、S110と異なり、ステップS111、S112では車両に荷物を積み込んだ後または車両から荷物(一部)を降ろした後の積み荷の画像を撮影し、パレット数を検出する処理である。
【0059】
ステップS113では、現在日時、ステップS101で取得した車番、備考、ステップS103で撮影された画像のパレットを矩形で囲んだ画像(表検出画像1)、ステップS109で撮影された画像のパレットを矩形で囲んだ画像、S111で撮影された画像のパレットを矩形で囲んだ画像とともに、ステップS101で取得した入出庫区分に応じて、以下の情報を
図20のデータテーブルに登録する。
【0060】
入出庫区分が「1:入庫」の場合には、ステップS110で検出したパレット数(裏検出数1)からステップS112で検出したパレット数(裏検出数2)を引いたパレット数(すなわち、車両から降ろされたパレットの数)、裏検出数1を修正した後の数(裏修正数1)から裏検出数2を修正した後の数(裏修正数2)を引いたパレット数を登録する。
【0061】
入出庫区分が「2:出庫」の場合は、ステップS112で検出したパレット数(裏検出数2)からステップS110で検出したパレット数(裏検出数1)を引いたパレット数(すなわち、車両に積み込まれたパレットの数)、裏検出数2を修正した後の数(裏修正数2)から裏検出数1を修正した後の数(裏修正数1)を引いたパレット数を登録する。
【0062】
次に、ステップS105で「3:なし」(裏面の撮影を行わない)と判定された場合について説明する。
【0063】
ステップS114では、現在日時、ステップS110で取得した入出庫区分(1:入庫、2:出庫)、車番、備考、ステップS104で検出されたパレット数(表検出数1)、当該パレット数の修正後の数(表修正数1)、ステップS103で撮影された画像のパレットを矩形で囲んだ画像(表検出画像1)を
図20に示すデータテーブルに登録する。
【0064】
次に、
図4のフローチャートを用いて、ステップS102で「一部」と判定された場合(すなわち、車両の表面に積載された荷物の一部を降ろす、または車両の表面にすでに積載された荷物があり追加で荷物を積み込む場合)の処理について説明する。
【0065】
ステップS201~S203の処理は
図3のフローチャートのステップS103~105の処理と同様であるため説明は省略する。
【0066】
まずステップS203で「1:全部」と判定された場合の処理について説明する。
【0067】
ステップS204、S205の処理は、
図3のステップS106、S107と同様の処理であるため、説明を省略する。
【0068】
ステップS206、S207の処理については、ステップS103、S104の処理と同様であるが、S103、S104と異なり、ステップS206、S207では車両に荷物を積み込んだ後または車両から荷物を降ろした後の積み荷の画像を撮影し、パレット数を検出する処理である。
【0069】
ステップS208では、現在日時、ステップS101で取得した車番、備考、ステップS204で撮影された画像のパレットを矩形で囲んだ画像(裏検出画像1)、ステップS201で撮影された画像のパレットを矩形で囲んだ画像、S206で撮影された画像のパレットを矩形で囲んだ画像とともに、ステップS101で取得した入出庫区分に応じて、以下の情報を
図20のデータテーブルに登録する。
【0070】
入出庫区分が「1:入庫」の場合には、ステップS202で検出したパレット数(表検出数1)からステップS207で検出したパレット数(表検出数2)を引いたパレット数(すなわち、車両から降ろされたパレットの数)、表検出数1を修正した後の数(表修正数1)から表検出数2を修正した後の数(表修正数2)を引いたパレット数を登録する。
【0071】
入出庫区分が「2:出庫」の場合は、ステップS207で検出したパレット数(表検出数2)からステップS202で検出したパレット数(表検出数1)を引いたパレット数(すなわち、車両に積み込まれたパレットの数)、表検出数2を修正した後の数(表修正数2)から表検出数1を修正した後の数(表修正数1)を引いたパレット数を登録する。
【0072】
次に、ステップS203で「2:一部」と判定された場合の処理について説明する。
【0073】
ステップS209、210の処理は、
図3のS106、107と同様の処理であるあるため、ここでは説明を省略する。
【0074】
ステップS211、212の処理は、S206、207と同様の処理であるため、ここでは説明を省略する。
【0075】
ステップS213、214の処理は、
図3のS111、112と同様の処理であるため、ここでは説明を省略する。
【0076】
ステップS215では、現在日時、ステップS101で取得した車番、備考、ステップS201で撮影された画像のパレットを矩形で囲んだ画像、S211で撮影された画像のパレットを矩形で囲んだ画像、ステップS209で撮影された画像のパレットを矩形で囲んだ画像、S213で撮影された画像のパレットを矩形で囲んだ画像とともに、ステップS101で取得した入出庫区分に応じて、以下の情報を
図20のデータテーブルに登録する。
【0077】
入出庫区分が「1:入庫」の場合には、ステップS202で検出したパレット数(表検出数1)からステップS212で検出したパレット数(表検出数2)を引いたパレット数(すなわち、車両から降ろされたパレットの数)、表検出数1を修正した後の数(表修正数1)から表検出数2を修正した後の数(表修正数2)を引いたパレット数を登録する。ステップS210で検出したパレット数(裏検出数1)からステップS214で検出したパレット数(裏検出数2)を引いたパレット数(すなわち、車両から降ろされたパレットの数)、裏検出数1を修正した後の数(裏修正数1)から裏検出数2を修正した後の数(裏修正数2)を引いたパレット数を登録する。
【0078】
入出庫区分が「2:出庫」の場合は、ステップS212で検出したパレット数(表検出数2)からステップS202で検出したパレット数(表検出数1)を引いたパレット数(すなわち、車両に積み込まれたパレットの数)、表検出数2を修正した後の数(表修正数2)から表検出数1を修正した後の数(表修正数1)を引いたパレット数を登録する。ステップS214で検出したパレット数(裏検出数2)からステップS210で検出したパレット数(裏検出数1)を引いたパレット数(すなわち、車両に積み込まれたパレットの数)、裏検出数2を修正した後の数(裏修正数2)から裏検出数1を修正した後の数(裏修正数1)を引いたパレット数を登録する。
【0079】
次に、ステップS203で「3:なし」(裏画像の撮影を行わない)と判定された場合について説明する。
【0080】
ステップS216、S217の処理は、S206、207と同様の処理であるため、ここでは説明を省略する。
【0081】
ステップS218では、現在日時、ステップS101で取得した車番、備考、ステップS201で撮影された画像のパレットを矩形で囲んだ画像、ステップS216で撮影された画像のパレットを矩形で囲んだ画像とともに、ステップS101で取得した入出庫区分に応じて、以下の情報を
図20のデータテーブルに登録する。
【0082】
入出庫区分が「1:入庫」の場合には、ステップS202で検出したパレット数(表検出数1)からステップS217で検出したパレット数(表検出数2)を引いたパレット数(すなわち、車両から降ろされたパレットの数)、表検出数1を修正した後の数(表修正数1)から表検出数2を修正した後の数(表修正数2)を引いたパレット数を登録する。
【0083】
入出庫区分が「2:出庫」の場合は、ステップS217で検出したパレット数(表検出数2)からステップS202で検出したパレット数(表検出数1)を引いたパレット数(すなわち、車両に積み込まれたパレットの数)、表検出数2を修正した後の数(表修正数2)から表検出数1を修正した後の数(表修正数1)を引いたパレット数を登録する。
【0084】
次に
図5のフローチャートを用いて、ステップS104、S107、S110、S112、S202、S205、S207、S210、S212、S214、S217におけるパレット検出処理について説明する。
【0085】
ステップS301では、クライアント端末102はステップS103等で取得した撮影画像をサーバ装置101に送信する。
【0086】
ステップS302では、サーバ装置101は、ステップS301でクライアント端末102から送信された画像を受信する。
【0087】
ステップS303では、サーバ装置101は、受信した画像からパレットを検出し、パレット検出画像と検出パレット矩形リストを取得する。
【0088】
パレット検出処理については、公知技術を用いるものとする。例えば、パレット画像を学習用データとして学習させた学習済みモデルを用いて検出する方法がある。また、学習済みモデルを用いる方法に限らず、画像から特定の物体を検出する技術であればいずれの方法を用いても良い。
【0089】
図11に画像からパレットを検出し、検出したパレットを矩形で囲んだ画像を示す。
【0090】
検出パレット矩形リストの一例を
図19に示す。
図19に示す通り、検出パレット矩形リストには、検出されたパレット矩形の起点(画像におけるパレット矩形の位置を特定するための基準となるXY座標)とパレット矩形の高さ、幅などの情報が含まれ、撮影画像単位でリストが生成される。なお、
図19における起点は、撮影画像の左上の座標を(0,0)とした座標情報(Xが縦方向、Yが横方向)とする。
【0091】
ステップS304では、サーバ装置101はパレット検出画像の補正処理を行う。この補正処理により、車両の表面に積載されたパレットを検出したいにもかかわらず、車両の裏面に積載されたパレットまでもが検出されてしまった場合に、裏面に積載されたパレットを検出対象から除外することが可能となる。
【0092】
具体的な補正方法を以下説明する。
【0093】
まず、車両の最前列(運転席に最も近い列)かつ最下段にあるパレットを特定する(以下、特定されたパレットをパレットAとする)。
【0094】
具体的には、車両の右側が表面である場合は、
図19の矩形リストに登録された情報のうち、起点のX座標Y座標がいずれも最大の矩形を特定する(すなわち撮影画像において一番右下にあるパレットを特定する)。また、車両の左側が表面である場合は、起点のX座標が最大でY座標が最小の矩形(すなわち撮影画像において一番左下にあるパレットを特定する)。
図11の例における1101のパレットがパレットAとなる。
【0095】
なお、本実施例では、車両の最前列(運転席に最も近い列)かつ最下段にあるパレットを特定する処理について説明するが、これは運転席側に寄せて荷物を積載することを前提とした処理であり、最後部に寄せて積載している場合は最後列かつ最下段のパレットを特定するものとする。
【0096】
そして、以下の処理により、表面に積載されたパレットのうち最下段のパレット(
図11の例における1101、1102、1103等のパレット)を順次特定する。
【0097】
まずパレット下段リストを作成し、パレットAを格納してポインタを0とする。
【0098】
次に、検出パレット矩形リストから、起点Yが現在ポインタの指しているパレットの起点Yより小さく、ユークリッド距離が一番近いパレット(パレットBとする)を取得する。
【0099】
そして、パレットBの左下のX座標(すなわち起点のX座標+高さ)が、ポインタが指すパレットの起点のX座標より大きい場合には、当該パレットBをパレット下段リストに登録し、ポインタをインクリメントする。
【0100】
このように、高さが重なっているパレットを特定するのは、
図11に示すように、斜めから表面を撮影した場合、表面に積載されたパレットについては隣り合う列のパレットと高さが重なる位置関係になるのに対して、裏面に積載されたパレット(例えば1103)については高さが重ならない位置関係になるためである。そのため、このような処理によって表面のパレットだけを特定することが可能となる。
【0101】
この処理を繰り返すことにより、最前列の最下段のパレットと高さが重なっているパレットを特定し、さらに特定されたパレットと高さが重なっているパレットを特定していくことが可能となり、車両の表面に積載されたパレットのうち、最下段のパレットを順次特定することが可能となる。
【0102】
次に、パレット下段リストのパレットの上に積まれたパレットを検出する。具体的には以下の処理により行う。
【0103】
まず、パレット下段リストに格納されている検出パレット矩形の中点Zをそれぞれ算出する。
【0104】
そして、検出パレット矩形リストに含まれる矩形のうち、起点のY座標と矩形の右上のY座標との間に中点ZのY座標がある矩形を特定し、特定された矩形をパレット表面リストに格納する。パレット表面リストに格納されたパレット数を補正後のパレット数とする。
【0105】
以上の処理が表面に積載されたパレットを特定しカウントする処理である。
【0106】
撮影画像から検出されたパレットのうち、パレット矩形リストに格納されなかったパレットについては、検出結果画像において識別可能なように表示形態を変えてもよい(例えば、矩形の色を変える、矩形に赤い斜線を描画する等)。表示形態を変えた画像の一例を
図12に示す。
【0107】
また、2枚目の画像である場合には、1枚目との差分(荷台から降ろされた荷物があった領域や、新たに積み込まれた荷物)について認識できるよう表示形態を制御する。
【0108】
また、パレットの種類に応じて矩形の表示形態を変えるなどして識別可能な表示をしたり、種類ごとにパレット数をカウントしたりしても良い。パレットについては、「自社の所有するパレットとレンタルしているパレット」「大きさの違うパレット」など同じ車両に異なる種類の(区別して管理することが必要な)パレットが積載されることもあるため、それらを識別可能に表示し、それぞれ別々にカウントすることで、区別して管理することが可能となる。種類ごとに別々にカウントする場合は、数の修正も種類ごとに受け付け、種類ごとに数をデータテーブル(
図20)に登録する。
【0109】
ステップS305では、ステップS304における補正後の検出結果画像と補正後のパレット検出数を取得する。
【0110】
ステップS306では、補正後の検出結果画像とパレット検出数とをクライアント端末に対して送信する。
【0111】
ステップS307では、ステップS306で送信された検出結果画像とパレット検出数とを受信する。
【0112】
ステップS308では、ステップS307で受信したパレット検出数について
図13~
図16に一例を示す画面を介してユーザから修正を受け付ける。
【0113】
図13は、ステップS104、S202の詳細処理においてクライアント端末102に表示される画面であり、パレット検出結果画像1301、パレット検出数1302、パレット数の修正受付部1303などが表示されている。パレット検出結果画像は、上述の通り撮影画像に対してパレット検出処理を実行した結果を示す画像であり、検出されたパレットについて矩形で囲まれている。パレット検出数1302は検出処理により検出されたパレット数である。修正受付部1303は、検出処理により検出されたパレット数の修正を受け付けるボタンであり、+が選択されるとパレット数を1増加し、-が選択されるとパレット数が1減少する。登録ボタン1804が押下されることで検出数や修正後の数などのデータがクライアント端末102のメモリ等に記録され、上述の通り
図3のステップS108等のパレット登録処理において
図20に示すデータテーブルに登録される。なお、登録ボタン1804の押下を受け付けることでサーバ装置101に上記データが送信され、
図20に示すデータテーブルに登録されても良い。
【0114】
そして、裏面撮影ボタン1305が押下されることで、裏面撮影処理に遷移する。裏面撮影が不要である場合(ステップS105、S203において「なし」である場合等)には当該ボタンが表示されないよう制御される(「なし」ではない場合に表示するよう制御する)。
【0115】
図14は、ステップS107、S110、S205、S210の詳細処理においてクライアント端末に表示される画面であり、
図15はステップS207、S212、S217の詳細処理においてクライアント端末に表示される画面であり、
図16はステップS112、S214の詳細処理においてクライアント端末に表示される画面である。いずれも
図13と同様に次の撮影処理の要否に応じて遷移ボタン(
図13における1305に相当するボタン)の表示が制御されるものとする。
【0116】
このように、裏面の撮影が必要な場合や2枚目の撮影が必要な場合(基本情報入力画面において入力された情報に基づき必要だと判定される場合や、表面の撮影画像に基づき裏面の撮影が必要だと判定される場合など)には、裏面や2枚目の撮影を促すよう画面表示を制御する(促す通知をする)ことで、裏面や2枚目の撮影を忘れることを防止することが可能となる。また、裏面や2枚目の撮影が不要な場合には、裏面や2枚目の撮影に遷移するボタンを表示しないよう制御することで、余計な作業を発生させず効率的に作業を進めることが可能となる。
【0117】
以上の処理が実行されると
図3、
図4のフローチャートの処理に戻る。
【0118】
次に、
図17に示すデータ一覧画面について説明する。データ一覧画面は、
図3、
図4のフローチャートの処理を実行することで登録されたデータ(
図20に示すデータテーブルに登録されたデータ)を用いて生成される画面であり、クライアント端末102に表示される画面である。
【0119】
日付入力欄1701や時刻入力欄1702において、ユーザから確認したいデータに係る日付や日時の入力を受け付け、照会ボタン1703が押下されることで、入力された日付・日時におけるデータを検索し、一覧表示領域1704にデータが表示される。
【0120】
一覧表示領域には、データが登録された日時(1705)、基本情報入力画面において入力された入庫か出庫かを示す区分(1706)、車番(1707)、表面の積み下ろし作業前の画像から検出されたパレット数(1708)、表面の積み下ろし作業後の画像から検出されたパレット数(1709)、裏面の積み下ろし作業前の画像から検出されたパレット数(1710)、裏面の積み下ろし作業後の画像から検出されたパレット数(1711)、各画像から検出されたパレット数に基づき算出された入出庫パレット数(1712)、詳細データの表示指示を受け付けるボタン/アイコン(1713)などが表示される。パレット数については、ユーザによる修正後の値が表示されるものとするが、修正前の数値を表示しても良いし、修正前後の数値をそれぞれ表示しても良い。
【0121】
また、画像が登録されている旨を示すアイコンがパレット検出数の項目に表示され、当該アイコンが選択操作されることで、当該パレット検出数に係る画像が表示される。
【0122】
詳細ボタンが押下された場合にクライアント端末102に表示される画面について
図18を用いて説明する。
【0123】
詳細ボタンが押下されると、
図18の1801に示す表面の1枚目の画像を含む画面が表示される。表面1枚目の表示画面には、表面2枚目を表示する指示を受け付けるボタンが配置され、当該ボタンが押下されると1802に示す表面2枚目の画像を含む画面に遷移する。表面2枚目の表示画面には裏面1枚目を表示する指示を受け付けるボタンが配置され、当該ボタンが押下されると1803に示す裏面1枚目の画像を含む画面に遷移する。裏面1枚目の表示画面には裏面2枚目を表示する指示を受け付けるボタンが配置され、当該ボタンが押下されると1804に示す裏面2枚目の画像を含む画面に遷移する。
【0124】
このように、表面の1枚目→2枚目、裏面の1枚目→2枚目と遷移することで、積み込み前後や荷下ろし前後の状況を比較しやすくなるという効果が得られる。また、1枚目と2枚目の差分について識別可能に表示することで、降ろされた荷物や新たに積み込まれた荷物を容易に把握することが可能となる。
【0125】
また、1801~1804のいずれの画面においても、パレット数の修正を受け付ける修正受付部や、前の画面に戻るボタンが配置されている。
【0126】
【0127】
図20に示すデータテーブルは、
図3~
図5のフローチャートの処理により算出されたパレット数や画像が登録されたデータテーブルであり、データが登録された日時(2001)、基本情報入力画面において入力された入庫か出庫かを示す区分(2002)、車番(2003)、表面の積み下ろし作業前の画像から検出されたパレット数(2004)、表面の積み下ろし作業後の画像から検出されたパレット数(2005)、裏面の積み下ろし作業前の画像から検出されたパレット数(2006)、裏面の積み下ろし作業後の画像から検出されたパレット数(2007)、各画像から検出されたパレット数に基づき算出された入出庫パレット数(2008)、表面の積み下ろし作業前の画像(2009)、表面の積み下ろし作業後の画像(2010)、裏面の積み下ろし作業前の画像(2011)、裏面の積み下ろし作業後の画像(2012)等から構成されている。
【0128】
パレット数(2004~2007)については、
図20においてはユーザによる修正後の値を記載しているが、ユーザによる修正前の値についても登録されていてもよい。
【0129】
本発明は、例えば、システム、装置、方法、プログラムもしくは記録媒体等としての実施態様をとることが可能である。具体的には、複数の機器から構成されるシステムに適用しても良いし、また、一つの機器からなる装置に適用しても良い。
【0130】
また、本発明におけるプログラムは、
図3、4、5に示すフローチャートの処理方法をコンピュータが実行可能なプログラムであり、本発明の記憶媒体は
図3、4、5の処理方法をコンピュータが実行可能なプログラムが記憶されている。なお、本発明におけるプログラムは
図3、4、5の各装置の処理方法ごとのプログラムであってもよい。
【0131】
以上のように、前述した実施形態の機能を実現するプログラムを記録した記録媒体を、システムあるいは装置に供給し、そのシステムあるいは装置のコンピュータ(またはCPUやMPU)が記録媒体に格納されたプログラムを読み出し、実行することによっても本発明の目的が達成されることは言うまでもない。
【0132】
この場合、記録媒体から読み出されたプログラム自体が本発明の新規な機能を実現することになり、そのプログラムを記録した記録媒体は本発明を構成することになる。
【0133】
プログラムを供給するための記録媒体としては、例えば、フレキシブルディスク、ハードディスク、光ディスク、光磁気ディスク、CD-ROM、CD-R、DVD-ROM、磁気テープ、不揮発性のメモリカード、ROM、EEPROM、シリコンディスク等を用いることが出来る。
【0134】
また、コンピュータが読み出したプログラムを実行することにより、前述した実施形態の機能が実現されるだけでなく、そのプログラムの指示に基づき、コンピュータ上で稼働しているOS(オペレーティングシステム)等が実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【0135】
さらに、記録媒体から読み出されたプログラムが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれた後、そのプログラムコードの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるCPU等が実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【0136】
また、本発明は、複数の機器から構成されるシステムに適用しても、ひとつの機器から成る装置に適用しても良い。また、本発明は、システムあるいは装置にプログラムを供給することによって達成される場合にも適応できることは言うまでもない。この場合、本発明を達成するためのプログラムを格納した記録媒体を該システムあるいは装置に読み出すことによって、そのシステムあるいは装置が、本発明の効果を享受することが可能となる。
【0137】
さらに、本発明を達成するためのプログラムをネットワーク上のサーバ、データベース等から通信プログラムによりダウンロードして読み出すことによって、そのシステムあるいは装置が、本発明の効果を享受することが可能となる。なお、上述した各実施形態およびその変形例を組み合わせた構成も全て本発明に含まれるものである。
【符号の説明】
【0138】
101 サーバ装置
102 クライアント端末
110 ネットワーク