(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-04-15
(45)【発行日】2024-04-23
(54)【発明の名称】人判定システムおよび人判定プログラム
(51)【国際特許分類】
G06T 7/00 20170101AFI20240416BHJP
G06Q 50/04 20120101ALI20240416BHJP
【FI】
G06T7/00 350B
G06T7/00 660B
G06Q50/04
(21)【出願番号】P 2022503087
(86)(22)【出願日】2020-10-29
(86)【国際出願番号】 JP2020040637
(87)【国際公開番号】W WO2021171702
(87)【国際公開日】2021-09-02
【審査請求日】2023-06-27
(31)【優先権主張番号】P 2020032316
(32)【優先日】2020-02-27
(33)【優先権主張国・地域又は機関】JP
(73)【特許権者】
【識別番号】000001270
【氏名又は名称】コニカミノルタ株式会社
(74)【代理人】
【識別番号】110000671
【氏名又は名称】IBC一番町弁理士法人
(72)【発明者】
【氏名】松山 巨樹
(72)【発明者】
【氏名】加藤 高基
(72)【発明者】
【氏名】▲高▼橋 光一
(72)【発明者】
【氏名】▲高▼橋 芳幸
【審査官】小太刀 慶明
(56)【参考文献】
【文献】特開2014-229068(JP,A)
【文献】特開2019-080177(JP,A)
【文献】特開2009-005239(JP,A)
【文献】特開2016-081271(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G06T 7/00
G06Q 50/04
(57)【特許請求の範囲】
【請求項1】
製造現場を撮影するカメラと、
前記カメラからの動画像データから、人の部位の位置情報を取得する人部位位置情報取得部と、
前記動画像データの画像に前記人の在不在を判定するための在不在判定枠を設定する在不在判定枠設定部と、
前記人部位位置情報取得部によって取得された前記人の所定部位が前記在不在判定枠の内側に入っている場合に前記人が存在すると判定し、前記人の前記所定部位が前記在不在判定枠の内側に入っていない場合に前記人が不在であると判定する在不在判定部と、
前記在不在判定部によって前記人が存在すると判定された時から、前記人の各部位の位置情報があらかじめ決められた誤報検証時間以上変化しない場合に、前記在不在判定部の判定結果を誤報と判定する第1検証部、
前記在不在判定部によって前記人が不在であると判定された時から、前記所定部位の位置情報を得られ、かつ、前記所定部位以外の部位が第1所定割合以上前記在不在判定枠の内側に入っている状態が、あらかじめ決められた第1失報検証時間以上および第1失報検証頻度以上発生している場合に、前記在不在判定部の判定結果を失報の可能性ありと判定する第2検証部、および
前記在不在判定部によって前記人が不在であると判定された時から、前記所定部位の位置情報を得られず、かつ、前記所定部位以外の部位が第2所定割合以上前記在不在判定枠の内側に入っている状態が、あらかじめ決められた第2失報検証時間以上および第2失報検証頻度以上発生している場合に、前記在不在判定部の判定結果を失報の可能性ありと判定する第3検証部、よりなる群から選択された少なくとも1つの検証部と、を有する、人判定システム。
【請求項2】
前記人部位位置情報取得部は、機械学習による人姿勢推定技術により、前記人の部位の位置情報として、前記人の関節点の位置情報を取得する、請求項1に記載の人判定システム。
【請求項3】
前記検証部による判定の結果を出力する出力部を有する、請求項1または2に記載の人判定システム。
【請求項4】
前記第1検証部は、前記在不在判定部による在の判定結果を誤報と判定した場合に、前記在不在判定部による判定結果を不在に訂正する、請求項1~3のいずれか一つに記載の人判定システム。
【請求項5】
前記第2検証部が失報の可能性ありと判定した場合、または前記第3検証部が失報の可能性ありと判定した場合に、前記在不在判定部による不在の判定結果を在に訂正するための入力を受ける入力部を有する、請求項1~3のいずれか一つに記載の人判定システム。
【請求項6】
製造現場からの製品情報、作業の開始と終了、および設備の稼働状態を取得する設備稼働状態取得部と、
前記製品情報、前記作業の開始と終了、および前記設備の稼働状態とともに、請求項1~5のいずれか一つに記載の人判定システムから人の在不在の判定結果および検証部による検証結果を記録する生産情報記録部と、
を有する、生産実績システム。
【請求項7】
製造現場を撮影するカメラからの動画像データを取得する段階(a)と、
前記動画像データから、人の部位の位置情報を取得する段階(b)と、
前記動画像データの画像に前記人の在不在判定する在不在判定枠を設定する段階(c)と、
取得された前記人の所定部位が、前記在不在判定枠の内側に入っている場合に在と判定する段階(d)と、
前記段階(d)において、前記人が存在すると判定された時から、前記人の各部位の位置情報があらかじめ決められた誤報検証時間以上変化しない場合に、在不在判定部の判定結果を誤報と判定する第1検証段階、
前記段階(d)において、前記人が不在であると判定された時から、前記所定部位の位置情報を得られていて、かつ、前記所定部位以外の部位が第1所定割合以上前記在不在判定枠の内側に入っている状態が、あらかじめ決められた第1失報検証時間以上および第1失報検証頻度以上発生している場合に、前記在不在判定部の判定結果を失報の可能性ありと判定する第2検証段階、および
前記段階(d)において、前記人が不在であると判定された時から、前記所定部位の位置情報を得られず、かつ、前記所定部位以外の部位が第2所定割合以上前記在不在判定枠の内側に入っている状態が、あらかじめ決められた第2失報検証時間以上および第2失報検証頻度以上発生している場合に、前記在不在判定部の判定結果を失報の可能性ありと判定する第3検証段階、よりなる群から選択された、少なくとも1つの検証段階により判定結果を検証する段階(e)と、
をコンピューターに実行させるための人判定プログラム。
【請求項8】
前記段階(b)は、機械学習による人姿勢推定技術により、前記人の部位の位置情報として、前記人の関節点の位置情報を取得する、請求項7に記載の人判定プログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、人判定システムおよび人判定プログラムに関し、詳しくは、カメラにより人の在不在を判定する人判定システムおよび人判定プログラムに関する。
【背景技術】
【0002】
生産現場では、生産現場における情報収集の一つとして、人(作業者)の在不在を判定する人判定システムを用いている。
【0003】
従来の人判定システムとしては、たとえば、特許文献1では、カメラで作業者を撮影し、得られた動画像データから、作業着に付されるコード(識別マーク)、作業者の顔、身体的特徴などを識別して、作業者を認識する。
【0004】
また、特許文献2では、カメラで作業者を撮影し、作業エリアの人の入出を記録して作業時間を計測する。作業者の認識は、作業エリアの入出時の顔認識で人物を照合する。
【0005】
また、特許文献3では、作業者の身体状態を検出して、作業に対する評価値を算出する。作業者の身体状態は、カメラ動画像から関節点を検出し、簡易モデルを生成して、人を判定する。
【先行技術文献】
【特許文献】
【0006】
【文献】特開2018-010366号公報
【文献】特開2015-225630号公報
【文献】特開2017-68432号公報
【発明の概要】
【発明が解決しようとする課題】
【0007】
しかしながら、従来技術では、人が不在であるにもかかわらず存在すると判定する誤報、人が存在しているにもかかわらず不在と判定する失報などに関して考慮されていない。
【0008】
本発明は、上記の事情に鑑みてなされたものであり、本発明の目的は、誤報や、失報の発生を低減させた人判定システムおよび人判定プログラムを提供することである。
【課題を解決するための手段】
【0009】
本発明の上記の目的は、下記の手段によって達成される。
【0010】
(1)製造現場を撮影するカメラと、
前記カメラからの動画像データから、人の部位の位置情報を取得する人部位位置情報取得部と、
前記動画像データの画像に前記人の在不在を判定するための在不在判定枠を設定する在不在判定枠設定部と、
前記人部位位置情報取得部によって取得された前記人の所定部位が前記在不在判定枠の内側に入っている場合に前記人が存在すると判定し、前記人の前記所定部位が前記在不在判定枠の内側に入っていない場合に前記人が不在であると判定する在不在判定部と、
前記在不在判定部によって前記人が存在すると判定された時から、前記人の各部位の位置情報があらかじめ決められた誤報検証時間以上変化しない場合に、前記在不在判定部の判定結果を誤報と判定する第1検証部、
前記在不在判定部によって前記人が不在であると判定された時から、前記所定部位の位置情報を得られ、かつ、前記所定部位以外の部位が第1所定割合以上前記在不在判定枠の内側に入っている状態が、あらかじめ決められた第1失報検証時間以上および第1失報検証頻度以上発生している場合に、前記在不在判定部の判定結果を失報の可能性ありと判定する第2検証部、および
前記在不在判定部によって前記人が不在であると判定された時から、前記所定部位の位置情報を得られず、かつ、前記所定部位以外の部位が第2所定割合以上前記在不在判定枠の内側に入っている状態が、あらかじめ決められた第2失報検証時間以上および第2失報検証頻度以上発生している場合に、前記在不在判定部の判定結果を失報の可能性ありと判定する第3検証部、よりなる群から選択された少なくとも1つの検証部と、を有する、人判定システム。
【0011】
(2)前記人部位位置情報取得部は、機械学習による人姿勢推定技術により、前記人の部位の位置情報として、前記人の関節点の位置情報を取得する、上記(1)に記載の人判定システム。
【0012】
(3)前記検証部による判定の結果を出力する出力部を有する、上記(1)または(2)に記載の人判定システム。
【0013】
(4)前記第1検証部は、前記在不在判定部による在の判定結果を誤報と判定した場合に、前記在不在判定部による判定結果を不在に訂正する、上記(1)~(3)のいずれか一つに記載の人判定システム。
【0014】
(5)前記第2検証部が失報の可能性ありと判定した場合、または前記第3検証部が失報の可能性ありと判定した場合に、前記在不在判定部による不在の判定結果を在に訂正するための入力を受ける入力部を有する、上記(1)~(3)のいずれか一つに記載の人判定システム。
【0015】
(6)製造現場からの製品情報、作業の開始と終了、および設備の稼働状態を取得する設備稼働状態取得部と、
前記製品情報、前記作業の開始と終了、および前記設備の稼働状態とともに、上記(1)~(5)のいずれか一つに記載の人判定システムから人の在不在の判定結果および検証部による検証結果を記録する生産情報記録部と、
を有する、生産実績システム。
【0016】
(7)製造現場を撮影するカメラからの動画像データを取得する段階(a)と、
前記動画像データから、人の部位の位置情報を取得する段階(b)と、
前記動画像データの画像に前記人の在不在判定する在不在判定枠を設定する段階(c)と、
取得された前記人の所定部位が、前記在不在判定枠の内側に入っている場合に在と判定する段階(d)と、
前記段階(d)において、前記人が存在すると判定された時から、前記人の各部位の位置情報があらかじめ決められた誤報検証時間以上変化しない場合に、在不在判定部の判定結果を誤報と判定する第1検証段階、
前記段階(d)において、前記人が不在であると判定された時から、前記所定部位の位置情報を得られていて、かつ、前記所定部位以外の部位が第1所定割合以上前記在不在判定枠の内側に入っている状態が、あらかじめ決められた第1失報検証時間以上および第1失報検証頻度以上発生している場合に、前記在不在判定部の判定結果を失報の可能性ありと判定する第2検証段階、および
前記段階(d)において、前記人が不在であると判定された時から、前記所定部位の位置情報を得られず、かつ、前記所定部位以外の部位が第2所定割合以上前記在不在判定枠の内側に入っている状態が、あらかじめ決められた第2失報検証時間以上および第2失報検証頻度以上発生している場合に、前記在不在判定部の判定結果を失報の可能性ありと判定する第3検証段階、よりなる群から選択された、少なくとも1つの検証段階により判定結果を検証する段階(e)と、
をコンピューターに実行させるための人判定プログラム。
【0017】
(8)前記段階(b)は、機械学習による人姿勢推定技術により、前記人の部位の位置情報として、前記人の関節点の位置情報を取得する、上記(7)に記載の人判定プログラム。
【発明の効果】
【0018】
本発明では、人の在不在の判定結果に誤報および/または失報がないか検証するので、誤報や失報の発生を低減することができる。
【図面の簡単な説明】
【0019】
【
図1】実施形態の人判定システムの機能構成を説明するための説明図である。
【
図2】サーバーとして使用されるコンピューターの構成を示すブロック図である。
【
図3】正常な判定事例を説明するための説明図である。
【
図5】在不在判定枠の設定不良による失報の事例を説明するための説明図である。
【
図6】人の認識不良による失報の事例を説明するための説明図である。
【
図7】人の認識不良による失報の事例を説明するための説明図である。
【
図8】在不在判定、誤報、および失報を判定する処理手順を示すフローチャートである。
【
図9】
図8に続く、在不在判定、誤報、および失報を判定する処理手順を示すフローチャートである。
【発明を実施するための形態】
【0020】
以下、図面を参照して、本発明の実施形態を詳細に説明する。なお、図面の説明において同一の要素には同一の符号を付し、重複する説明を省略する。また、図面の寸法比率は、説明の都合上誇張されており、実際の比率とは異なる場合がある。
【0021】
図1は、実施形態の人判定システムの機能構成を説明するための説明図である。
【0022】
人判定システム1は、サーバー100、サーバー100に接続されたカメラ115、およびサーバー100に接続された端末120を有する。
【0023】
サーバー100は、コンピューターである。
図2は、サーバー100として使用されるコンピューターの構成を示すブロック図である。
【0024】
サーバー100は、CPU(Central Processing Unit)10、ROM(Read Only Memory)20、RAM(Random Access Memory)30、ストレージ40、通信インターフェース50、および操作表示部60を有する。これらは、バス70を介して相互に通信可能に接続されている。
【0025】
CPU10は、ROM20やストレージ40に記録されているプログラムにしたがって、上記各構成の制御や各種の演算処理を行う。本実施形態では、後述する処理手順に基づく人判定の処理を実行する。
【0026】
ROM20は、各種プログラムや各種データを格納する。
【0027】
RAM30は、作業領域として一時的にプログラムやデータを記憶する。
【0028】
ストレージ40は、オペレーティングシステムを含む各種プログラムや、各種データを格納する。たとえば、ストレージ40には、他の装置との間で各種情報を送受信したり、各種情報に基づいて出力する情報を決定したりするためのアプリケーションがインストールされる。また、ストレージ40には、人判定の処理のための各部の機能を実現させるためのプログラムが記憶される。また、ストレージ40には、後述するような機械学習による学習済みモデル等が記憶されてもよい。また、ストレージ40は、後述する動画像記録部および生産情報記録部として、各種データを記録(記憶)する。
【0029】
通信インターフェース50は、他の装置と通信するためのインターフェースである。通信インターフェース50としては、有線または無線の各種規格が用いられる。通信インターフェース50は、設備150およびカメラ115との通信に用いられる。通信インターフェース50は、後述する入出力部として、端末120との通信に用いられる。
【0030】
通信インターフェース50は、たとえば、イーサネット(登録商標)、SATA、PCI Express、USB、IEEE1394などの規格によるネットワークインターフェース、Bluetooth(登録商標)、IEEE802.11などの無線通信インターフェースなどの各種ローカル接続インターフェースなどである。また、インターフェースは、設備150およびカメラ115とローカルなアナログ接続を行うための回線でもよい。また、インターフェースは、端末120と接続するために、無線LAN(WiFi)や携帯電話回線でもよい。
【0031】
操作表示部60は、たとえば、ディスプレイと、キーボードおよびポインティングデバイス、またはタッチパネル付きディスプレイなどであり、各種情報を表示するとともに、ユーザーからの各種入力を受け付ける。
【0032】
端末120(
図1参照)は、コンピューターである。端末120としては、たとえば、パーソナルコンピューター(PC)、タブレット、スマートフォンなどが利用される。これらは、作業者や管理者、その他の関係者を含めて、端末120を利用して各種入力を行う人が使用するコンピューターである。これらの端末120は、キーボード、マウス、タッチパネルなどの入力装置、ディスプレイなどの出力装置を有する。以下、作業者や管理者、その他の関係者を含めて端末120を利用して各種入力を行う人をシステム利用者と称する。
【0033】
カメラ115は、たとえば、一般的なカラームービーカメラであり、動画像データ(映像データ)をサーバー100へ出力する。カメラ115は、撮影範囲116として、設備150と、設備150に対して作業を行う作業者(人500)とを撮影できる位置に設置される(
図1参照)。
【0034】
【0035】
サーバー100は、その機能として、動画像記録部101、人部位位置情報取得部102、在不在判定枠設定部103、在不在判定部104、第1検証部105、第2検証部106、第3検証部107、設備稼働状態取得部108、生産情報記録部109、および入出力部110を有する。
【0036】
動画像記録部101は、カメラ115からの動画像データを記録する。動画像記録部101は、たとえば、サーバー100内のストレージ40である。
【0037】
人部位位置情報取得部102は、動画像データから作業者の部位情報を取得する。本実施形態では、カメラ115からの動画像データは、いったん動画像記録部101で記録する。人部位位置情報取得部102は、動画像記録部101から動画像データを読み出して部位情報を取得する。
【0038】
人の部位情報の取得には、機械学習を利用した人姿勢推定技術を用いることができる。人姿勢推定技術は、たとえば、オープンポーズ(Open Pose(https://github.com/CMU-Perceptual-Computing-Lab/openpose など参照))、ディープポーズ(Deep Pose(https://www.slideshare.net/mitmul/deeppose-human-pose-estimation-via-deep-neural-networks など参照))など2次元の動画像データから人の骨格および関節点の位置を推定して姿勢を認識する技術である。
【0039】
これらの技術では、人を構成する骨格、たとえば、頭、首、肩、両腕、腰、両足などが認識され、さらにそれらの接続部や端部である関節点の位置情報として、座標値が得られる。
【0040】
人姿勢推定技術は、2次元の動画像データから人の姿勢を認識できる。したがって、カメラ115としては、一般的なムービーカメラを用いることができ、システムの構成が簡単になる。
【0041】
在不在判定枠設定部103は、動画像データの画像内に人の在不在判定する枠を設定する。在不在判定枠(以下単に判定枠という)は、たとえば、動画像データの画像に2次元座標を設定し、この2次元座標内に判定枠の座標値が設定される(詳細後述)。判定枠は、たとえば、システム利用者によって任意に設定される。
【0042】
在不在判定部104は、人部位位置情報取得部102によって取得された人の所定部位が、判定枠の内側に入っている場合に、人が存在すると判定し、所定部位が判定枠の内側に入っていなければ、人が不在であると判定する。以下では、人が存在するとの判定結果を在、人が存在しないとの判定結果を不在とする。
【0043】
在不在を判定するための人の所定部位は、たとえば、頭、肩、腰など人の要部の関節点または骨格などである。関節点および骨格は、前述したオープンポーズ、ディープポーズなどによって得られる。在不在判定部104は、人の所定部位として設定された関節点や骨格の座標値が判定枠の座標値の範囲内であれば、在と判定する。
【0044】
第1検証部105は、在不在判定部104による在判定が誤報か否かを検証する。ここで誤報とは、人が不在であるにもかかわらず、判定結果が在となった場合である。第1検証部105は、在不在判定部104によって人が存在すると判定された時から、人の各部位の位置情報が誤報検証時間以上変化しない場合に、誤報と判定する。誤報検証時間は、あらかじめ決められた時間である。
【0045】
第1検証部105は、在不在判定部104によって判定された動画像データを監視する。第1検証部105は、動画像データの時系列に流れるフレーム間において、所定部位および所定部位以外の各部位の位置が変化していないか否かを検証する。誤報検証時間は、たとえば、30秒程度である。人は、静止していても、ある程度動くのが普通であり、30秒間、人の各部が全く位置変化しないということは、通常ありえない。そこで、この程度の時間以上、人の各部が全く位置変化していなければ誤報と判定する。もちろん、誤報検証時間は任意に設定可能であり、たとえば、人の動きがきわめて少ない現場では、30秒よりもさらに長い時間としてもよい。逆に、誤報検証時間は30秒より短い時間としてもよい。
【0046】
第1検証部105は、誤報と判定した場合、在不在判定部104による判定結果を在から不在に訂正する。また、第1検証部105は、入出力部110を介して、誤報の発生を端末120へ出力するとともに、在から不在へ訂正したことも出力する。これにより、端末120では、誤報の発生と、在から不在へ訂正されたことが表示される。なお、端末120では、誤報の表示だけでなく警告音を出すようにしてもよい。また、在から不在への訂正は、第1検証部105が自動で行うのではなく、システム利用者が端末120の表示を確認したうえで、システム利用者からの指示に基づいて訂正されるようにしてもよい。
【0047】
第2検証部106は、在不在判定部104による不在判定が失報か否かを判定する。ここで失報とは、人が存在するにもかかわらず、判定結果が在とならない場合である。
【0048】
第2検証部106は、在不在判定部104によって人が不在であると判定された時から、所定部位の位置情報を得られ、かつ、所定部位以外の部位が第1所定割合以上判定枠の内側に入っている状態が、第1失報検証時間以上および第1失報検証頻度以上発生している場合に、失報の可能性ありと判定する。第1失報検証時間は、あらかじめ決められた時間である。第1失報検証頻度は、あらかじめ決められた頻度である。
【0049】
第2検証部106は、在不在判定部104によって判定された動画像データを監視する。第2検証部106は、動画像データの中で所定部位が認識されているか否かを検証する。第2検証部106は、動画像データにおいて、所定部位以外の各部位が判定枠の内側に第1所定割合以上入っているか否かを検証する。そして、第2検証部106は、動画像データの時系列に流れるフレーム間において、所定部位以外の部位が第1所定割合以上判定枠の内側に入っていて、かつ、所定部位の情報を得られている状態の続いている時間、およびその頻度を計測する。第2検証部106は、計測の結果、所定部位の情報を得られていて、所定部位以外の部位が第1所定割合以上判定枠の内側に入っている状態の続いている時間、およびその頻度が第1失報検証時間以上および第1失報検証頻度以上の場合に失報の可能性ありと判定する。
【0050】
このように、第2検証部106は、所定部位以外は判定枠内で認識されているが、所定部位が判定枠からはみ出ているため不在と判定された結果を失報と判定する。
【0051】
第1所定割合は、実際には人が存在すると判定するための基準となる。第1所定割合は、たとえば、60%とする。第1所定割合は、大きな値にすることで、判定枠内に人の部位がより多く入っている場合に失報と判定される。逆に、第1所定割合は、小さな値にすることで、判定枠内に人の部位が少しでも入っている場合に失報と判定される。したがって、本実施形態では、第1所定割合の値を大きくすれば失報と判定されにくくなり、第1所定割合の値を小さくすれば失報と判定されやすくなる。
【0052】
第1失報検証時間は、たとえば、直近24時間で合計30分以上とする。また、第1失報検証頻度は、このような状態が、発生した回数である。第1失報検証頻度は、たとえば、5回とする。このような第1所定割合、第1失報検証時間および頻度以上の場合に失報の可能性ありと判定される。なお、第1所定割合、第1失報検証時間および頻度は任意に設定可能である。
【0053】
第2検証部106は、失報の可能性ありと判定した場合、入出力部110を介して、失報の発生を端末120へ出力する。
【0054】
第2検証部106によって失報と判定された場合は、本来、人が存在すると判定されなければならないにもかかわらず、不在と判定されてしまったものである。これは、たとえば、判定枠の設定位置が悪い可能性がある。そのような場合は、判定枠を広げたり、判定枠の位置を変えたりすることで、失報を防止または少なくすることができる。
【0055】
そこで、第2検証部106は、端末120へ、失報の警告とともに、判定枠の見直しを促すことを出力することが好ましい。端末120では、失報があったことと判定枠の変更を促す表示が行われる。端末120を見たシステム利用者は、判定枠の大きさや位置を変更して、失報を防止または少なくすることができる。
【0056】
また、システム利用者は、端末120の表示を確認したうえで、失報時の状態を必要に応じて不在から在に訂正してもよい。訂正内容は、端末120から入力されて生産情報記録部109で記録される。なお、端末120では、失報の表示だけでなく警告音を出すようにしてもよい。
【0057】
第3検証部107は、第2検証部106同様に、在不在判定部104による不在判定が失報か否かを判定する。第3検証部107は、在不在判定部104によって人が不在であると判定された時から、所定部位の位置情報を得られず、かつ、所定部位以外の部位が第2所定割合以上判定枠の内側に入っている状態が、第2失報検証時間以上および第2失報検証頻度以上発生している場合に、在不在判定部104の判定結果を失報の可能性ありと判定する。第2失報検証時間および第2失報検証頻度は、いずれも、あらかじめ決められた時間および頻度である。
【0058】
第3検証部107は、在不在判定部104によって判定された動画像データを監視する。第3検証部107は、動画像データの中で所定部位が認識されているか否かを検証する。第3検証部107は、動画像データにおいて、所定部位以外の各部位が判定枠の内側に第2所定割合以上入っているか否かを検証する。そして、第3検証部107は、動画像データの時系列に流れるフレーム間において、所定部位以外の部位が第2所定割合以上判定枠の内側に入っていて、かつ、所定部位の情報を得られていない状態の続いている時間、およびその頻度を計測する。第3検証部107は、計測の結果、所定部位の情報を得られず、所定部位以外の部位が第2所定割合以上判定枠の内側に入っている状態の続いている時間、およびその頻度が第2失報検証時間以上および第2失報検証頻度以上の場合に失報の可能性ありと判定する。
【0059】
このように、第3検証部107は、所定部位以外は認識されているが、所定部位が認識できないために不在と判定された結果を失報と判定する。
【0060】
第2所定割合は、第1所定割合と同様であり、実際には人が存在すると判定するための基準となる。第2所定割合は、たとえば、60%とする。
【0061】
第2失報検証時間は、たとえば、直近24時間で合計30分以上とする。また、第2失報検証頻度は、このような状態が、発生した回数である。第2失報検証頻度は、たとえば、5回とする。このような第2所定割合、第2失報検証時間および頻度以上の場合に失報の可能性ありと判定される。なお、第2所定割合、第2失報検証時間および頻度は任意に設定可能である。
【0062】
第3検証部107は、失報の可能性ありと判定した場合、入出力部110を介して、失報の発生を端末120へ出力する。
【0063】
このような失報が判定された場合は、人がカメラ115の死角に入り見えない位置にいるか、または所定部位が認識されない場合である。これは、たとえば、カメラ115の設置位置が悪い可能性がある。そのような場合は、カメラ115の設置位置を見直して、設置位置を変えることで、失報を防止または少なくすることができる。
【0064】
そこで、第3検証部107は、端末120へ、失報の警告とともに、人の一部が認識できない状態であることを出力することが好ましい。端末120では、失報があったことと人の一部が認識できない状態であることが表示される。端末120を見たシステム利用者は、画像を確認することで、人が存在するか判断できる。端末120を見たシステム利用者は、カメラ115の設置位置を見直すことができる。
【0065】
また、システム利用者は、端末120の表示を確認したうえで、失報時の状態を必要に応じて不在から在に訂正してもよい。訂正内容は、端末120から入力されて生産情報記録部109で記録される。また、システム利用者は、認識不良による失報の可能性が知らされることで、たとえば、カメラ位置の調整などを行うことができる。なお、端末120では、失報の表示だけでなく警告音を出すようにしてもよい。
【0066】
設備稼働状態取得部108は、設備150の稼働状態を取得する。設備150の稼働状態は、たとえば、生産のための正常な運転による稼働、加工が完了して停止した完了停止、異常が発生したときの異常停止、および設備150を使用しない停止である。
【0067】
設備稼働状態取得部108は、たとえは、設備150に備え付けられている積層信号灯151の発光色を検出したり、そのためのスイッチング信号を検出したり、また、設備150が出力する稼働状態を示す信号を取得したりして、設備150の稼働状態を取得する。設備150の稼働状態としては、たとえば、設備150の稼働時間、稼働停止時間などが記録される。
【0068】
発光色やスイッチング信号を検出する場合は、それらを検出する専用のセンサー(不図示)が用いられる。設備稼働状態取得部108は、発光色やスイッチング信号を検出するセンサーと接続される。
【0069】
また、設備150の稼働状態は、カメラ115によって撮影された動画像データの中の積層信号灯151の発光色から取得してもよい。カメラ115の動画像データから設備150の稼働状態を検出する場合は、撮影範囲116に積層信号灯151を含むように設置する。
【0070】
積層信号灯151は、3色積層灯、シグナルタワーなどとも称されており、その多くは、緑色、黄色、赤色の3色のランプが設備150の稼働状態に合わせて発光する。積層信号灯151は、通常、正常稼働中は緑色、生産完了による停止中は黄色、異常発生時には赤色となる。
【0071】
なお、積層信号灯151は、3色とは限らず、2色の積層信号灯151、1色の積層信号灯151などの場合でも適用可能である。
【0072】
また、設備稼働状態取得部108は、設備150の稼働状態に加えて、製造現場で製造される製品情報、作業の開始および終了の入力なども取得する。
【0073】
生産情報記録部109は、設備稼働状態取得部108によって取得された設備150の稼働状態、製品情報、作業の開始および終了などとともに、人の在不在を在不在判定部104から取得して生産実績データとして記録する。生産実績データは、ストレージ40に記憶される。また、生産情報記録部109は、第1検証部105、第2検証部106、および第3検証部107によって誤報または失報が出力された場合は、それらを稼働状態などと一緒に記録する。もちろん、誤報または失報が出力されていなければ、生産情報記録部109は、在または不在を稼働状態などとともに記録するだけである。また、誤報または失報が出力されたのち、在または不在が訂正された場合、生産情報記録部109は、訂正された内容となるように、記録された生産実績データを書き換える。
【0074】
本実施形態は、設備稼働状態取得部108および生産情報記録部109を備えることで、人判定システム1としてだけでなく、生産実績システムとしても提供される。
【0075】
入出力部110は、すでに一部説明したように、端末120に対して在不在判定による判定結果、第1検証部105、第2検証部106、および第3検証部107による検証結果を出力する出力部となる。また、入出力部110は、端末120から入力された誤報および失報時の訂正、また、判定枠の設定や調整などの指示が入力される入力部となる。また、入出力部110は、端末120から入力されたシステム利用者からのリクエストに応じて、動画像データの出力、設備稼働状態など記録された生産実績データの出力なども行う。
【0076】
次に、在不在判定の結果と誤報、および失報の事例を説明する。
【0077】
まず、正常な判定事例を説明する。
【0078】
図3は、正常な判定事例を説明するための説明図である。
図3には、端末120のディスプレイに、動画像データの1フレームの画像が映し出された状態を示している。画像内には、設備150、製造現場内の物体155などとともに作業者である人500~502が映っている。製造現場内の物体155は、たとえば、作業机、ツールや部品ワゴン、ワーク搬入台車、そのほかの物品などである。
【0079】
画像において、人500~502は、オープンポーズやディープポーズによって得られた骨格によって描かれる。
【0080】
人500を例に骨格および関節点を説明する。
図3に示すように、太線は骨格551~553を示す。また、骨格と骨格を接続する部位および骨格の端(図中丸で囲った部分)は関節点554~556である。また、頭550も関節点の一つである。他の図においても同様であるので、説明および一部の符号は省略する。本実施形態において関節点の位置は、人体の解剖学上の関節の位置におおむね一致するものの、正確には、すでに説明したオープンポーズやディープポーズによって得られた骨格と骨格の接続位置または骨格の端となる。
【0081】
本実施形態では、人を判定するための所定部位は、骨格の上端となる頭550とした。
【0082】
また、画像には、判定枠250および251が設定されている。判定枠251は、設備前にいる人を判定するための枠である。判定枠251は設備150への物品搬入経路にいる人を判定するための枠である。本実施形態では、一つの判定枠を二重にしている。判定枠250については、内側判定枠250aと外側判定枠250bである。判定枠を二重にした理由は、たとえば、内側判定枠250aは、対象物の近くに存在することを判定し、外側判定枠250bは、内側判定枠250aよりは遠いが、対象物の近傍にいることを判定する。他の判定枠についても同様であるので、説明および図示符号は省略する。もちろん、判定枠は、一重であってもよい。
【0083】
判定枠250および251は、たとえば、各枠の頂点(
図3中の点線丸印255)の座標値を設定する。判定枠250および251の設定は、インタラクティブに設定可能とすることが好ましい。具体的には、たとえば、ポインティングデバイスを用いて、画面に表示された枠の辺や頂点をドラッグして枠の大きさを変形させ、その時の頂点の座標値を取得し、判定枠として設定されるようにする。設定された判定枠250および251の座標値はストレージ40に記憶される。
【0084】
正常な判定においては、
図3に示すように、人500~502は、いずれも所定部位である頭550が判定枠250または251内に入っている。
【0085】
次に誤報の事例を説明する。
【0086】
図4は、誤報の事例を説明するための説明図である。
図4に示した画像内には、判定枠251内に人503が映っている。したがって、この事例では、人503が存在する判定となる。しかし、この事例は、背景にある静止した物体156が人503の骨格として認識されたために、人503と判定されたものである。したがって、この人503の判定は、誤報となる。
【0087】
この事例では、静止した物体156が人503の骨格として認識される。したがって、人503として認識された各部位は全く位置が変化しない。このため、人503が存在するとの判定結果は、第1検証部105により誤報と判定される。
【0088】
次に失報の事例を説明する。この事例は、判定枠の設定不良による失報の場合である。
【0089】
図5は、在不在判定枠の設定不良による失報の事例を説明するための説明図である。
図5に示した画像内には、判定枠251の枠線をまたぐようにして人504が映っている。しかも、人504の頭550は認識されているものの、判定枠251の外に出ている。一方、人504の他の部位は、判定枠251の中に60%以上入っている。したがって、この事例では、人504を判定するための所定部位である頭550が、判定枠251の外なので、不在と判定される。しかし、この事例では、所定部位である頭550が認識され、かつ頭550以外の部位が、第1所定割合である60%以上判定枠251の中にある。第2検証部106はこの状態が続く時間と頻度を計測し、設定された第1失報所定時間および頻度以上となっている場合は、失報の可能性ありと判定する。
【0090】
他の失報の事例を説明する。この事例は、人の認識不良による失報の場合である。
【0091】
図6は、人の認識不良による失報の事例を説明するための説明図である。
図6に示した画像内には、設備150の陰に人505の頭部分が隠れている。このような場合、所定部位である頭部分が隠れているため不在と判定される。しかし、この事例は、人505の頭以外の部位が、判定枠251の中に60%以上入っている。第3検証部107はこの状態が続く時間と頻度を計測し、設定された第2失報検証時間および頻度以上となっている場合は、失報の可能性ありと判定する。
【0092】
さらに他の失報の事例を説明する。この事例は、人の認識不良による失報の場合である。
【0093】
図7は、人の認識不良による失報の事例を説明するための説明図である。
図7に示した画像内には、人506の外形が映っているものの、頭部分の骨格が認識されていない。頭以外の骨格551は認識されている。これは、
図7に示すように、頭部分が人の背後にある物体157の模様と同化して認識できなかったと推定される。この事例では、所定部位である頭部分が認識されていないので、不在と判定される。しかし、この事例では、人505の頭以外の部位が認識され、判定枠251の中に60%以上入っている。第3検証部107はこの状態が続く時間と頻度を計測し、設定された第2失報検証時間および頻度以上となっている場合は、失報の可能性ありと判定する。
【0094】
次に、在不在判定、誤報、および失報を判定する処理手順について説明する。
図8および
図9は、在不在判定、誤報、および失報を判定する処理手順を示すフローチャートである。サーバー100は、この処理手順に基づき作成されたプログラムを実行することで、すでに説明した各部の機能が実施される。
【0095】
まず、サーバー100は、カメラ115から動画像データを取得する(S101)。
【0096】
続いて、サーバー100は、動画像データを解析する(S102)。
【0097】
引き続き、サーバー100は、解析の結果、人の部位が抽出されたか否かを判定する(S103)。人の部位が抽出された場合(S103:YES)、サーバー100は、人の各部位の関節点の座標値を取得する(S104)。S102~S104の処理は、人部位位置情報取得部102の機能となる。
【0098】
一方、人の部位が抽出されなかった場合(S103:NO)、サーバー100は、判定枠との対比以前に、動画像データ内に人の部位が存在しないため、不在と判定する(S110)。判定結果は、ストレージ40に設備150の稼働状態とともに記憶される。以下、判定結果は同様に記憶される。
【0099】
続いて、サーバー100は、在不在判定に用いる所定部位が判定枠の内側にあるか否かを判定する(S105)。この判定の処理は、S104で取得した各部位の座標値のうち、所定部位の座標値が判定枠の座標値の内側にあるか否かにより判定される。所定部位が判定枠の内側にある場合(S105:YES)、サーバー100は、在と判定する(S106)。一方、所定部位が判定枠の内側ではない場合(S105:NO)、サーバー100は、不在と判定する(S111、
図9参照)。S105、S106、S110、およびS111の処理は、在不在判定部104の機能となる。
【0100】
S106に続いて、サーバー100は、各部位の位置情報(座標値)が所定時間以上変化しないか判定する(S107)。
【0101】
各部位の位置情報が所定時間以上変化しない場合(S107:YES)、サーバー100は、S106の判定結果を誤報と判定する(S108)。続いて、サーバー100は在の判定結果を不在に訂正する(S109)。その後、システムの停止指示があれば(S200:YES)、サーバー100は、処理を終了する。停止指示がなければ(S200:NO)、サーバー100はS101へ戻り処理を継続する。
【0102】
一方、各部位の位置情報が所定時間内に変化した場合(S107:NO)、サーバー100は、S200へ処理を進める。S107~S109の処理は、第1検証段階であり、第1検証部105の機能となる。
【0103】
S111に続いて、サーバー100は、所定部位以外の部位が所定割合以上判定枠の内側に入っているか否かを判定する(S112)。この処理も、S104で取得した各部位の座標値が判定枠の座標値の内側にあるか否かにより判定される。なお、この処理手順では、第1所定割合も第2所定割合も、同じ値として一つのステップで判定することとした。しかし、所定割合は第2検証部(第2検証段階)と第3検証部(第3検証段階)とで異なる値としてもよい。
【0104】
所定部位以外の部位が所定割合以上判定枠の内側に入っていない場合(S112:NO)、サーバー100は、ステップをS200へ進める。
【0105】
一方、所定部位以外の部位が所定割合以上判定枠の内側に入っている場合(S112:YES)、サーバー100は、所定部位の位置情報があるか否かを判定する(S113)。ここでの所定部位の位置情報とは、S104で取得された各部位の座標値のうち、所定部位の座標値である。
【0106】
所定部位の位置情報がある場合(S113:YES)、サーバー100は、そのような状態が第1失報検証時間および頻度以上発生しているか否かを判定する(S114)。なお、図においては、第1検証時間および頻度と記載した。
【0107】
第1失報検証時間および頻度以上発生している場合、サーバー100は、不在の判定結果が失報の可能性があると判定する(S115)。ここでの失報の可能性は、枠設定不良の可能性である。続いて、サーバー100は、失報の可能性があることを端末120に端末120へ出力させる(S116)。さらに、サーバー100は、不在の判定結果を在に訂正する入力があれば、記録を訂正する(S117)。一方、第1失報検証時間および頻度以上発生していない場合、サーバー100は、ステップをS200へ進める。S112~S117までの処理は、第2検証段階であり、第2検証部106の機能となる。
【0108】
所定部位の位置情報がない場合(S113:NO)、サーバー100は、そのような状態が第2失報検証時間および頻度以上発生しているか否かを判定する(S118)。なお、図においては、第2検証時間および頻度と記載した。
【0109】
第2失報検証時間および頻度以上発生している場合、サーバー100は、不在の判定結果が失報の可能性があると判定する(S119)。ここでの失報の可能性は、認識不良の可能性である。続いて、サーバー100は、失報の可能性があることを端末120に端末120へ出力させる(S120)。さらに、サーバー100は、不在の判定結果を在に訂正する入力があれば、記録を訂正する(S121)。一方、第2失報検証時間および頻度以上発生していない場合、サーバー100は、ステップをS200へ進める。S112、S118~S121までの処理は、第3検証段階であり、第3検証部107の機能となる。
【0110】
以上の各処理によって、サーバー100は、在不在を判定し、その判定結果に誤報や失報がないか検証する。
【0111】
以上説明した本実施形態によれば、以下のような効果を奏する。
【0112】
本実施形態では、人の各部位の位置情報が所定の時間以上変化しない場合に、一度「在」として判定したものを誤報として認識する。また、誤報の場合は、「在」の判定結果を「不在」に訂正する。これにより、本実施形態では、誤報の発生を低減することができる。
【0113】
また、本実施形態では、在不在判定に利用する所定部位は認識されているものの判定枠外にある場合、判定枠内に、所定部位以外の部位が第1所定割合以上入っている状態が、第1失報検証時間および頻度以上発生している場合に、失報の可能性があると判定する。これにより、本実施形態では、実際には人がいるにもかかわらず、人の在不在判定結果が「不在」となるような失報の発生を低減することができる。また、このような失報の可能性を出力することで、システム利用者に、判定枠の設定不良の可能性などを注意喚起することができる。システム利用者は、注意喚起を受けて、判定枠の位置を変更したり、生産実績のデータを修正したりできる。
【0114】
また、本実施形態では、在不在判定に利用する所定部位は認識されていないものの、判定枠内に、所定部位以外の部位が第2所定割合以上入っている状態が、第2失報検証時間および頻度以上発生している場合に、失報の可能性があると判定する。これにより、本実施形態では、たとえば、人が、装置や障害物に隠れるなど、カメラ115の死角にいる場合や、背景と同化したりした場合に、人の在不在判定結果が「不在」となるような失報の発生を低減することができる。また、このような失報の可能性を出力することで、システム利用者に、注意喚起することができる。システム利用者は、注意喚起を受けて、カメラ位置の調整や変更を行うことができ、また、生産実績のデータを修正できる。
【0115】
以上本発明の実施形態を説明したが、様々な変形が可能である。
【0116】
実施形態は、人判定システム1に設備稼働状態取得部108および生産情報記録部109を備えることで、生産実績システムとしても提供できるようにした。しかし、実施形態としては、設備稼働状態取得部108および生産情報記録部109を備えない人判定システム1として提供されてもよい。
【0117】
また、実施形態では、人判定システム1として、誤報を検証する第1検証部105、失報を検証する第2検証部106および第3検証部107と、3つの検証部を設けた。しかし、実施形態としては、誤報を検証するために第1検証部105だけ設けてもよい。同様に第2検証部106だけ設けてもよいし、第3検証部107だけ設けてもよい。また、3つの検証部のうちいずれか2つを組み合わせて設けてもよい。
【0118】
実施形態は、サーバー100の機能として説明したが、このサーバー100の機能は、小型のコンピューターに実施させることができる。たとえば、ボードPCなどをカメラ115に組み込んで、またはカメラ115と一体化させて、カメラ115内で、実施形態として説明した各機能を実行させてもよい。このようにすることで、実施形態は、カメラ115の設置だけで実施できる。
【0119】
また、サーバー100としては、インターネット上のクラウドサーバーを利用してもよい。クラウドサーバーを利用する場合は、設備150およびカメラ115に、インターネット接続可能なインターフェースを設け、クラウドサーバーへ、設備150の稼働状態およびカメラ115の動画像データを送信する。設備150およびカメラ115と、インターネットとの接続は、無線接続でも、有線接続でもよい。クラウドサーバーを利用する場合は、設備150にインターネット接続用のインターフェースを取り付けるだけで、カメラ115は既存のインターネット接続可能なウェブカメラが利用できるので、初期投資を抑えることができる。
【0120】
そのほか、実施形態の説明の中で使用した条件や数値などはあくまでも説明のためのものであり、本発明がこれら条件や数値に限定されるものではない。
【0121】
また、本発明は、特許請求の範囲に記載された構成に基づき様々な改変が可能であり、それらについても本発明の範疇である。
【0122】
本発明に係る人判定プログラムは、専用のハードウェア回路によって実現することも可能である。また、この人判定プログラムは、USB(Universal Serial Bus)メモリやDVD(Digital Versatile Disc)-ROM(Read Only Memory)などのコンピューター読み取り可能な記録媒体によって提供したり、記録媒体によらず、インターネットなどのネットワークを介してオンラインで提供したりすることも可能である。オンラインで提供される場合、この判定基準生成プログラムおよび判定プログラムは、ネットワークに接続されたコンピューター内の磁気ディスクなどの記録媒体に記録される。
【0123】
また、本発明に係る人判定プログラムは、それぞれ単独のアプリケーションソフトウェアとして提供したり、一機能として別のソフトウェアに組み込んで提供したりすることも可能である。
【0124】
また、本発明は、特許請求の範囲に記載された構成に基づき様々な改変が可能であり、それらについても本発明の範疇である。
【0125】
本出願は、2020年2月27日に出願された日本国特許出願番号2020-032316号に基づいており、その開示内容は、参照により全体として組み入れられている。
【符号の説明】
【0126】
1 人判定システム、
40 ストレージ、
50 通信インターフェース、
100 サーバー、
101 動画像記録部、
102 人部位位置情報取得部、
103 在不在判定枠設定部、
104 在不在判定部、
105 第1検証部、
106 第2検証部、
107 第3検証部、
108 設備稼働状態取得部、
109 生産情報記録部、
110 入出力部、
115 カメラ、
116 撮影範囲、
120 端末、
150 設備、
151 積層信号灯、
155、156、157 物体、
500~506 人。