JP6648094B2 - Seat information processing system, seat information acquisition device and program, and seat information providing device and program - Google Patents

Seat information processing system, seat information acquisition device and program, and seat information providing device and program Download PDF

Info

Publication number
JP6648094B2
JP6648094B2 JP2017229483A JP2017229483A JP6648094B2 JP 6648094 B2 JP6648094 B2 JP 6648094B2 JP 2017229483 A JP2017229483 A JP 2017229483A JP 2017229483 A JP2017229483 A JP 2017229483A JP 6648094 B2 JP6648094 B2 JP 6648094B2
Authority
JP
Japan
Prior art keywords
seat
information
seats
facility
store
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.)
Active
Application number
JP2017229483A
Other languages
Japanese (ja)
Other versions
JP2019101572A (en
Inventor
希 柿▲崎▼
希 柿▲崎▼
Original Assignee
アイタックソリューションズ株式会社
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 アイタックソリューションズ株式会社 filed Critical アイタックソリューションズ株式会社
Priority to JP2017229483A priority Critical patent/JP6648094B2/en
Publication of JP2019101572A publication Critical patent/JP2019101572A/en
Application granted granted Critical
Publication of JP6648094B2 publication Critical patent/JP6648094B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • Image Analysis (AREA)

Description

本発明は、席情報処理システム、並びに、席情報取得装置及びプログラム、並びに、席情報提供装置及びプログラムに関し、例えば、レストランやカフェ等の飲食店や図書館等の席(座席)への着席を伴う施設における席の情報を処理するシステムに適用し得る。   The present invention relates to a seat information processing system, a seat information acquisition device and a program, and a seat information providing device and a program, and involves, for example, seating at a restaurant (café or other restaurant or a library). The present invention can be applied to a system for processing seat information in a facility.

従来、レストラン等における席の空き状況を認識して空き情報を生成して提供(例えば、インターネット上で提供)する技術が知られている。   2. Description of the Related Art Conventionally, there has been known a technology of recognizing a vacancy state of a seat in a restaurant or the like and generating and providing vacancy information (for example, providing it on the Internet).

従来の空き情報を提供する技術としては、例えば、特許文献1の技術が存在する。   As a conventional technique for providing free space information, for example, there is a technique disclosed in Patent Document 1.

特許文献1では、施設内の利用者が利用可能な場所において利用者が不在の場所を示す情報を空き情報として提供する技術である。特許文献1の記載技術では、予め飲食店等において、各座席の位置情報を登録しておき、人感センサ(温度検出センサを用いた人感センサ)で、それぞれの座席の位置における人(顧客)の有無を認識し、人(顧客)の認識ができない座席を空いている席として空き情報を生成する。   Patent Literature 1 discloses a technique in which information indicating a place where a user is absent in a place where a user in a facility is available is provided as empty information. In the technology described in Patent Document 1, position information of each seat is registered in advance in a restaurant or the like, and a person (customer sensor) using a human sensor (human sensor using a temperature detection sensor) at each seat position is used. ) Is recognized, and vacant information is generated as a vacant seat for which a person (customer) cannot be recognized.

特開2016−177775号公報JP-A-2006-177775

しかしながら、特許文献1の記載技術を始めとする従来の技術では、空き情報を取得する前提として、飲食店の席のレイアウトの詳細に関する情報入力が必要であるため、レイアウト変更の度にレイアウトの詳細情報の入力が必要となるため利便性が低いという問題があった。   However, in the conventional technology including the technology described in Patent Literature 1, it is necessary to input information on the details of the layout of the restaurant seats on the premise of acquiring the vacant information. There is a problem that convenience is low because information must be input.

また、特許文献1の記載技術では、各席の着席状況を認識するために専用のセンサ(人感センサ)が必要であるため、導入するコストが高くなるという問題があった。   Further, the technology described in Patent Document 1 requires a dedicated sensor (human sensor) for recognizing the seating status of each seat, so that there is a problem that the introduction cost is high.

上記のような問題に鑑みて、利便性の高い席情報の処理を低コストで実現する席情報処理システム、並びに、席情報取得装置及びプログラム、並びに、席情報提供装置及びプログラムが望まれている。   In view of the above problems, a seat information processing system, a seat information obtaining device and a program, and a seat information providing device and a program that realize highly convenient processing of seat information at low cost are desired. .

第1の本発明の席情報処理システムは、(1)1又は複数の席が配置されている施設内を撮像する撮像手段と、(2)前記撮像手段が撮像した画像から人オブジェクトを検出する人オブジェクト検出処理を行い、前記施設内の席の位置に関する情報を用いずに、前記人オブジェクト検出処理の結果に基づき、前記施設内の席の利用者数を示す席利用者数を取得する席情報取得手段と、(3)前記施設内の設置席数の情報を保持する設置席数保持手段と、(4)前記施設内の席の位置に関する情報を用いずに、前記設置席数と前記席利用者数に基づいて前記施設内の空席に関する情報を席情報として取得し、取得した席情報を被情報提供者に提供する席情報提供手段とを有し、(5)前記席情報取得手段は、前記人オブジェクト検出処理により検出された人オブジェクトから、それぞれの人オブジェクトの動きに基づき席に着席している着席者を検出する着席者検出処理を行い、前記着席者検出処理により検出した前記着席者の数を前記席利用者数として取得することを特徴とする。 A seat information processing system according to a first aspect of the present invention includes: (1) an imaging unit for imaging an inside of a facility where one or a plurality of seats are arranged; and (2) a human object is detected from an image captured by the imaging unit. A seat that performs a human object detection process and obtains the number of seat users indicating the number of seats in the facility based on the result of the human object detection process without using information on the position of the seat in the facility. Information acquisition means, (3) installed seat number holding means for storing information on the installed seat number in the facility, and (4) the installed seat number and the seat number without using information on the positions of the seats in the facility. Seat information providing means for acquiring information on vacant seats in the facility as seat information based on the number of seat users, and providing the acquired seat information to an informed party; (5) the seat information acquiring means Is obtained by the human object detection process. From the detected human objects, perform a occupant detection process of detecting a occupant seated in a seat based on the movement of each human object, and use the number of the occupants detected by the occupant detection process in the seat use. It is acquired as the number of persons.

第2の本発明の席情報取得装置は、(1)1又は複数の席が配置されている施設内を撮像する撮像手段が撮像した画像から人オブジェクトを検出する人オブジェクト検出処理を行い、前記施設内の席の位置に関する情報を用いずに、前記施設内の席の利用者数を示す席利用者数を取得する席情報取得手段と、(2)前記施設内の設置席数の情報を保持する設置席数保持手段と、(3)前記施設内の席の位置に関する情報を用いずに前記施設内の設置席数と前記席利用者数に基づいて前記施設内の空席に関する情報を取得して被情報提供者に提供する外部の席情報提供装置に対して、前記席利用者数を含む情報を送信する送信手段とを有し、(4)前記席情報取得手段は、前記人オブジェクト検出処理により検出された人オブジェクトから、それぞれの人オブジェクトの動きに基づき席に着席している着席者を検出する着席者検出処理を行い、前記着席者検出処理により検出した前記着席者の数を前記席利用者数として取得するThe seat information acquisition device according to the second aspect of the present invention is: (1) performing a human object detection process of detecting a human object from an image captured by an imaging unit that captures an inside of a facility where one or a plurality of seats are arranged; Seat information acquisition means for acquiring the number of seat users indicating the number of seats in the facility without using information on the positions of the seats in the facility; and (2) information on the number of seats installed in the facility. Means for holding the number of installed seats to be held; and (3) acquiring information on vacant seats in the facility based on the number of seats installed in the facility and the number of seat users without using information on the positions of seats in the facility. Transmitting means for transmitting the information including the number of seat users to an external seat information providing apparatus for providing the information to the informed person; and (4) the seat information obtaining means includes: From the human object detected by the detection process, A occupant detection process for detecting a occupant sitting in a seat based on the movement of each person object is performed, and the number of the occupants detected by the occupant detection process is obtained as the number of seat users. .

第3の本発明の席情報取得プログラムは、コンピュータを、(1)1又は複数の席が配置されている施設内を撮像する撮像手段が撮像した画像から人オブジェクトを検出する人オブジェクト検出処理を行い、前記施設内の席の位置に関する情報を用いずに、前記人オブジェクト検出処理の結果に基づき、前記施設内の席の利用者数を示す席利用者数を取得する席情報取得手段と、(2)前記施設内の設置席数の情報を保持する設置席数保持手段と、(3)前記施設内の席の位置に関する情報を用いずに前記施設内の設置席数と前記席利用者数に基づいて前記施設内の空席に関する情報を取得して被情報提供者に提供する外部の席情報提供装置に対して、前記席利用者数を含む情報を送信する送信手段として機能させ、(4)前記席情報取得手段は、前記人オブジェクト検出処理により検出された人オブジェクトから、それぞれの人オブジェクトの動きに基づき席に着席している着席者を検出する着席者検出処理を行い、前記着席者検出処理により検出した前記着席者の数を前記席利用者数として取得する。 A seat information acquisition program according to a third aspect of the present invention includes: (1) a human object detection process for detecting a human object from an image captured by an imaging unit that captures an image of a facility where one or a plurality of seats are arranged; Performing, without using information on the position of the seats in the facility, based on the result of the human object detection process, seat information acquisition means for acquiring the number of seat users indicating the number of seats in the facility, (2) means for holding the number of seats installed in the facility, and (3) means for storing the number of seats in the facility and the user of the seats without using information on the positions of the seats in the facility. A function of transmitting information including the number of seat users to an external seat information providing device that obtains information on vacant seats in the facility based on the number of seats and provides the information to the information provider; 4) Hands for obtaining the seat information The tier performs a occupant detection process of detecting a occupant sitting in a seat based on the movement of each human object from the human objects detected by the human object detection process, and detects the occupant by the occupant detection process. The number of seated persons is acquired as the number of seat users.

第4の本発明の席情報提供装置は、第2の本発明の席情報取得装置で取得した前記席利用者数を保持し、更に前記施設内の設置席数を保持し、前記施設内の席の位置に関する情報を用いずに、前記設置席数と前記席利用者数に基づいて前記施設内の空席に関する情報を席情報として取得し、取得した席情報を被情報提供者に提供する席情報提供手段を有することを特徴とする前記施設の席情報、又は前記施設の席情報に基づく情報を被情報提供者に提供する席情報提供手段を有することを特徴とする。 The seat information providing device according to a fourth aspect of the present invention holds the number of seat users acquired by the seat information acquiring device of the second aspect of the present invention , further holds the number of seats installed in the facility, A seat that obtains information on vacant seats in the facility as seat information based on the number of installed seats and the number of seat users without using information on the position of seats, and provides the obtained seat information to the information provider. It is characterized by having seat information providing means for providing information-provided seat information of the facility or information based on the seat information of the facility to the information-provided person.

第5の本発明の席情報提供プログラムは、コンピュータを、第2の本発明の席情報取得装置で取得した前記席利用者数を保持し、前記席利用者数を保持し、更に前記施設内の設置席数を保持し、前記施設内の席の位置に関する情報を用いずに、前記設置席数と前記席利用者数に基づいて前記施設内の空席に関する情報を席情報として取得し、取得した席情報を被情報提供者に提供する席情報提供手段として機能させることを特徴とする席情報提供プログラム。 According to a fifth aspect of the present invention, there is provided a seat information providing program which stores a computer, the number of seat users acquired by the seat information acquiring apparatus of the second invention , the number of seat users, The number of seats in the facility is maintained, and information on vacant seats in the facility is acquired as seat information based on the number of seats and the number of seat users, without using information on the positions of the seats in the facility, and acquired. A seat information providing program for functioning as seat information providing means for providing the provided information to the information provider.

本発明によれば、利便性の高い席情報の処理を低コストで実現することができる。   According to the present invention, highly convenient processing of seat information can be realized at low cost.

実施形態に係る席情報処理システムの全体構成について示したブロック図である。FIG. 1 is a block diagram illustrating an overall configuration of a seat information processing system according to an embodiment. 実施形態に係るローカルコンピュータの機能的構成について示したブロック図である。FIG. 2 is a block diagram illustrating a functional configuration of a local computer according to the embodiment. 実施形態に係るDBサーバの機能的構成について示したブロック図である。FIG. 2 is a block diagram illustrating a functional configuration of a DB server according to the embodiment. 実施形態に係る店舗情報DBの構成例について示した説明図である。It is explanatory drawing shown about the structural example of the store information DB which concerns on embodiment. 実施形態に係るWebアプリサーバの機能的構成について示したブロック図である。FIG. 2 is a block diagram illustrating a functional configuration of a web application server according to the embodiment. 実施形態に係るクライアント端末の機能的構成について示したブロック図である。FIG. 2 is a block diagram illustrating a functional configuration of a client terminal according to the embodiment. 実施形態に係る店舗内部の平面図である。It is a top view inside a store concerning an embodiment. 実施形態に係る店舗内部をカメラから見た場合の図(斜視図)である。It is a figure (perspective view) when the inside of a store concerning an embodiment is seen from a camera. 実施形態に係るカメラで撮像された映像の例(その1)である。5 is an example (part 1) of a video image captured by the camera according to the embodiment. 実施形態に係るカメラで撮像された映像の例(その2)である。9 is an example (part 2) of a video image captured by the camera according to the embodiment. 実施形態に係るオブジェクト認識部が画像から切り出す外接矩形の例について示した説明図である。FIG. 9 is an explanatory diagram illustrating an example of a circumscribed rectangle cut out from an image by the object recognition unit according to the embodiment. 実施形態に係るオブジェクト認識部が、人オブジェクト追跡処理で動き量を求める際の例について示した説明図である。FIG. 10 is an explanatory diagram illustrating an example when the object recognition unit according to the embodiment obtains a motion amount in a human object tracking process. 実施形態に係るオブジェクト認識部が、席利用者オブジェクト検出処理で動き量を求める際の例について示した説明図である。It is explanatory drawing shown about the example at the time of the object recognition part which concerns on embodiment at the time of calculating | requiring a movement amount by seat user object detection processing. 実施形態に係るWebアプリサーバが提供する店舗選択画面(Web画面)の構成例について示した説明図である。It is explanatory drawing shown about the example of a structure of the store selection screen (Web screen) which the Web application server which concerns on embodiment provides. 実施形態に係るWebアプリサーバが提供する店舗情報提供画面(Web画面)の構成例について示した説明図である。It is explanatory drawing shown about the structural example of the store information provision screen (Web screen) which the Web application server which concerns on embodiment provides. 実施形態の変形例に係るWebアプリサーバが提供する店舗選択画面(Web画面)の構成例について示した説明図である。It is explanatory drawing shown about the structural example of the store selection screen (Web screen) which the Web application server which concerns on the modification of embodiment provides.

(A)主たる実施形態
以下、本発明による席情報処理システム、並びに、席情報取得装置及びプログラム、並びに、席情報提供装置及びプログラムの一実施形態を、図面を参照しながら詳述する。
(A) Principal Embodiment Hereinafter, an embodiment of a seat information processing system, a seat information acquisition device and a program, and a seat information providing device and a program according to the present invention will be described in detail with reference to the drawings.

(A−1)実施形態の構成
図1は、この実施形態の席情報処理システム1の全体構成を示すブロック図である。
(A-1) Configuration of Embodiment FIG. 1 is a block diagram showing the overall configuration of a seat information processing system 1 of this embodiment.

まず、席情報処理システム1の全体の概要について説明する。   First, an overview of the entire seat information processing system 1 will be described.

席情報処理システム1は、1又は複数の飲食店等の施設の席に係る情報(以下、「席情報」と呼ぶ)を処理するシステムである。   The seat information processing system 1 is a system that processes information (hereinafter, referred to as “seat information”) relating to seats of facilities such as one or more restaurants.

この実施形態では、席情報処理システム1は、N個(Nは任意の整数)の店舗(第1の店舗〜第Nの店舗)の席情報を処理するシステムであるものとして説明する。   In this embodiment, the seat information processing system 1 is described as a system that processes seat information of N (N is an arbitrary integer) stores (first store to N-th store).

席情報処理システム1では、それぞれの店舗(第1〜第Nの店舗)に、店舗内を撮像するためのカメラ10(10−1〜10−N)と、店舗内の席情報等を処理するローカルコンピュータ20(20−1〜20−N)が配置されている。   In the seat information processing system 1, the cameras 10 (10-1 to 10-N) for imaging the inside of each store (first to N-th stores), seat information in the store, and the like are processed. Local computers 20 (20-1 to 20-N) are arranged.

また、席情報処理システム1では、各店舗のローカルコンピュータ20(20−1〜20−N)から各店舗の席情報を含む情報を保持し、席情報の被提供者が所持するクライアント端末50に提供する席情報提供装置として、Webアプリサーバ30を有している。さらに、席情報処理システム1では、Webアプリサーバ30で、種々のデータを管理する手段としてDBサーバ40が配置されている。なお、本発明の席情報提供装置を構成する装置(コンピュータ)の数や、装置間の接続構成は限定されないものである。なお、この実施形態では、図1に示すように、Webアプリサーバ30及びDBサーバ40はデータセンタに設置されているものとして説明する。   Further, in the seat information processing system 1, information including seat information of each store is held from the local computer 20 (20-1 to 20-N) of each store, and the information is stored in the client terminal 50 owned by the receiver of the seat information. The web application server 30 is provided as a seat information providing device to be provided. Further, in the seat information processing system 1, the Web application server 30 includes a DB server 40 as means for managing various data. Note that the number of devices (computers) constituting the seat information providing device of the present invention and the connection configuration between the devices are not limited. In this embodiment, as shown in FIG. 1, a description will be given assuming that the Web application server 30 and the DB server 40 are installed in a data center.

クライアント端末50は、上述の通り店舗の席情報の被提供者の所持する端末であり、被情報提供者の操作に応じて、Webアプリサーバ30に接続して、各店舗の席情報を取得して表示する処理を行う。   As described above, the client terminal 50 is a terminal owned by the receiver of the seat information of the store, and connects to the Web application server 30 according to the operation of the receiver to obtain the seat information of each store. Perform the process of displaying.

席情報処理システム1内の各装置は、相互に通信が可能となっているものとする。この実施形態の例では、席情報処理システム1内の各装置は、インターネットを介して相互に接続可能な構成となっているものとして説明する。   It is assumed that the devices in the seat information processing system 1 can communicate with each other. In the example of this embodiment, each device in the seat information processing system 1 will be described as being configured to be mutually connectable via the Internet.

次に、席情報処理システム1を構成する各装置の構成について説明する。   Next, the configuration of each device constituting the seat information processing system 1 will be described.

まず、各店舗内に設置されるカメラ10(10−1〜10−N)とローカルコンピュータ20(20−1〜20−N)の構成について説明する。なお、各店舗に設置される装置の詳細構成(例えば、ハードウェア構成)は異なるものとしてもよいが、機能的には図1に示すように同じ構成として示すことができる。   First, the configurations of the camera 10 (10-1 to 10-N) and the local computer 20 (20-1 to 20-N) installed in each store will be described. Although the detailed configuration (for example, hardware configuration) of the devices installed in each store may be different, the devices can be functionally shown as the same configuration as shown in FIG.

各店舗に設置されるカメラ10は、設置店舗内部の所定の領域内(席情報の処理対象となる席(例えば、椅子等の座席)を含む領域内)を撮像するカメラである。カメラ10としては、種々のデジタルカメラを適用することができる。カメラ10は、店舗内を撮像した画像を、同じ店舗内のローカルコンピュータ20に供給する。   The camera 10 installed in each store is a camera that captures an image of a predetermined area inside the installed store (an area including a seat (for example, a seat such as a chair) for which seat information is to be processed). Various digital cameras can be applied as the camera 10. The camera 10 supplies an image of the inside of the store to the local computer 20 in the same store.

ローカルコンピュータ20は、設置された店舗内の席情報の処理を行う装置である。具体的には、ローカルコンピュータ20は、カメラ10から供給された画像に基づいて店舗内の席情報を取得し、取得した席情報をWebアプリサーバ30に供給する。   The local computer 20 is a device that processes seat information in the installed store. Specifically, the local computer 20 acquires seat information in the store based on the image supplied from the camera 10 and supplies the acquired seat information to the Web application server 30.

この実施形態では、ローカルコンピュータ20が取得する席情報には、すくなくとも、当該設置店舗で処理対象となる席(以下、「処理対象席」と呼ぶ)のうち利用されずに空いている席(以下、「空席」と呼ぶ)の数(以下、「空席数」と呼ぶ)を認識可能な情報が含まれているものとする。   In this embodiment, the seat information acquired by the local computer 20 includes, at least, vacant seats (hereinafter, referred to as “process target seats”) that are not used among the seats to be processed (hereinafter, referred to as “process target seats”) at the installation store. , And “vacant seats” (hereinafter referred to as “vacant seats”).

具体的には、この実施形態の例では、ローカルコンピュータ20が取得する席情報には、設置店舗で処理対象席の数(以下、「設置席数」とも呼ぶ)と、処理対象席のうち利用者(例えば、店舗の顧客)が利用中(例えば、着席中)の席(以下、「利用中席」とも呼ぶ)の数(以下、「利用中席数」とも呼ぶ)の情報が含まれているものとする。なお、ローカルコンピュータ20は、席情報として空席数自体を取得するようにしてもよい。また、席情報提供装置(Webアプリサーバ30及びDBサーバ40)側で各設置店舗の設置席数の情報が保持されている場合には、ローカルコンピュータ20は単に利用中席数のみを席情報として取得するようにしてもよい。   Specifically, in the example of this embodiment, the seat information acquired by the local computer 20 includes the number of seats to be processed in the installation store (hereinafter, also referred to as the “number of installed seats”), The information includes the number of seats (hereinafter, also referred to as “occupied seats”) being used (for example, seated) by a person (for example, a customer of a store) (hereinafter, also referred to as “occupied seats”). Shall be Note that the local computer 20 may acquire the vacant seat number itself as seat information. When the seat information providing device (Web application server 30 and DB server 40) stores information on the number of seats installed at each store, the local computer 20 simply uses only the number of seats in use as seat information. You may make it acquire.

ローカルコンピュータ20の内部構成は、機能的には図2のように示すことができる。ローカルコンピュータ20としては、例えば、メモリ及びプロセッサを有するコンピュータ(例えば、PC、シングルボードコンピュータ、マイクロコンピュータ等)にプログラム(実施形態に係る「席情報取得プログラム」を含む)をインストールすることにより構築してもよい。   The internal configuration of the local computer 20 can be functionally shown as in FIG. The local computer 20 is constructed, for example, by installing a program (including the “seat information acquisition program” according to the embodiment) in a computer (for example, a PC, a single-board computer, a microcomputer, etc.) having a memory and a processor. You may.

図2に示すように、ローカルコンピュータ20は、映像取得部21、オブジェクト認識部22、席情報処理部23、及びデータ記録部24を有している。   As shown in FIG. 2, the local computer 20 includes a video acquisition unit 21, an object recognition unit 22, a seat information processing unit 23, and a data recording unit 24.

データ記録部24は、ローカルコンピュータ20内での各処理で利用される各種データを記録するデータ記録手段である。   The data recording unit 24 is a data recording unit that records various data used in each processing in the local computer 20.

映像取得部21は、所定の期間(以下、この期間を「T1」と表す)ごとに、カメラ10が撮像した画像を取得して、オブジェクト認識部22に供給する処理を行う。映像取得部21は、期間T1ごとにカメラ10を制御して撮像させるようにしてもよいし、カメラ10が連続的に撮像して供給する一連の画像(動画像)から、期間T1の間隔で画像を取得するようにしてもよい。期間T1の間隔は限定されないものであるが例えば、0.2〜1秒としてもよい。   The video acquisition unit 21 performs a process of acquiring an image captured by the camera 10 and supplying the acquired image to the object recognition unit 22 for each predetermined period (hereinafter, this period is referred to as “T1”). The video acquisition unit 21 may control the camera 10 to capture an image every period T1, or may use a sequence of images (moving images) continuously captured and supplied by the camera 10 at intervals of the period T1. An image may be obtained. The interval of the period T1 is not limited, but may be, for example, 0.2 to 1 second.

オブジェクト認識部22は、映像取得部21から供給される時系列ごとの画像(期間T1ごとの画像)を解析して、設置店舗内(カメラ10が撮像した領域内)に映りこんでいる人間をオブジェクト(以下、「人オブジェクト」とも呼ぶ)として検出し、検出した人オブジェクトから、さらに処理対象席を利用(例えば、着席)している利用者(以下、「席利用者」と呼ぶ)を検出する処理を行う。なお、この実施形態において、「席」は、必ずしも座席(椅子)が設置されている必要はなく、立ったまま飲食等が可能(施設の利用が可能)な場所(いわゆる「立ち席」)等であってもよい。   The object recognizing unit 22 analyzes an image for each time series (an image for each period T1) supplied from the video acquiring unit 21 and recognizes a person reflected in the installation store (in an area captured by the camera 10). An object (hereinafter, also referred to as a “person object”) is detected, and a user (hereinafter, referred to as a “seat user”) further using (for example, sitting) a processing target seat is detected from the detected human object. Perform the following processing. In this embodiment, the “seats” do not necessarily have to be provided with seats (chairs), and are places where eating and drinking can be performed while standing (use of facilities is possible) (so-called “standing seats”). It may be.

オブジェクト認識部22による、オブジェクト認識処理の具体的手順については後述する。   The specific procedure of the object recognition processing by the object recognition unit 22 will be described later.

席情報処理部23は、オブジェクト認識部22の認識結果を利用して、設置店舗における席情報を取得する処理を行う。この実施形態では、席情報処理部23は、席情報として少なくとも設置店舗の設置席数と利用中席数の情報を取得する。   The seat information processing unit 23 performs a process of acquiring seat information at the installation store using the recognition result of the object recognition unit 22. In this embodiment, the seat information processing unit 23 acquires at least information on the number of seats installed and the number of seats in use at the installation store as seat information.

この実施形態の席情報処理部23は、予めデータ記録部24に設定されたデータから設置席数のデータを読み取って取得するものとする。ローカルコンピュータ20において、データ記録部24に設置席数のデータ入力を受け付ける方法については限定されないものである。例えば、ローカルコンピュータ20では、図示しない入力手段(例えば、ディスプレイ、キーボード、マウス等のデバイス)により設置席数のデータ入力を受け付けるようにしてもよいし、通信により外部装置からデータ入力を受け付けるようにしてもよい。   It is assumed that the seat information processing unit 23 of this embodiment reads and acquires data on the number of installed seats from data set in the data recording unit 24 in advance. In the local computer 20, the method of receiving the data input of the number of installed seats in the data recording unit 24 is not limited. For example, in the local computer 20, data input of the number of installed seats may be received by input means (for example, a display, a keyboard, a mouse, or the like) (not shown), or data input from an external device may be received by communication. You may.

席情報処理部23は、オブジェクト認識部22が現在認識している席利用者の数に基づいて利用中席数を取得する。すなわち。席情報処理部23は、オブジェクト認識部22が現在認識している席利用者数を利用中席数とみなして取得する処理を行う。   The seat information processing unit 23 acquires the number of seats in use based on the number of seat users currently recognized by the object recognition unit 22. That is. The seat information processing unit 23 performs a process of obtaining the number of seat users currently recognized by the object recognition unit 22 as the number of in-use seats.

そして、席情報処理部23は、取得した設置席数と利用中席数を含む情報を席情報として取得し、Webアプリサーバ30に送信する。   Then, the seat information processing unit 23 acquires information including the acquired number of seats and the number of seats in use as seat information, and transmits the acquired information to the Web application server 30.

席情報処理部23が、Webアプリサーバ30に席情報を送信するタイミングは限定しないものである。例えば、席情報処理部23は、席情報(最新に取得した席情報)を、Webアプリサーバ30から要求されたタイミングに応じて送信するようにしてもよいし、所定の期間ごとに席情報を送信するようにしてもよいし、席情報が変動する度に送信するようにしてもよい。   The timing at which the seat information processing unit 23 transmits the seat information to the Web application server 30 is not limited. For example, the seat information processing unit 23 may transmit the seat information (the latest acquired seat information) in accordance with the timing requested from the Web application server 30, or may transmit the seat information at predetermined intervals. It may be transmitted, or may be transmitted each time the seat information changes.

次に、席情報提供装置を構成する各装置(Webアプリサーバ30、DBサーバ40)の内部構成について説明する。   Next, the internal configuration of each device (Web application server 30, DB server 40) constituting the seat information providing device will be described.

図3は、DBサーバ40の内部構成について示したブロック図である。   FIG. 3 is a block diagram showing the internal configuration of the DB server 40.

DBサーバ40は、Webアプリサーバ30の処理で必要となる種々のデータを提供する装置である。具体的には、DBサーバ40は、各店舗に関する情報のデータベース(以下、「店舗情報DB」と呼ぶ)を保持し、Webアプリサーバ30の要求に応じてデータ処理(例えば、データの更新や読出しの処理)を行う。   The DB server 40 is an apparatus that provides various data necessary for the processing of the Web application server 30. Specifically, the DB server 40 holds a database of information about each store (hereinafter, referred to as a “store information DB”), and performs data processing (for example, updating or reading data) in response to a request from the Web application server 30. Process).

DBサーバ40は、DB処理部41及びデータ記録部42を有している。   The DB server 40 has a DB processing unit 41 and a data recording unit 42.

DBサーバ40の内部構成は、機能的には図3のように示すことができる。DBサーバ40としては、例えば、メモリ及びプロセッサを有するコンピュータ(例えば、PCやワークステーション等)を用いて構築することができる。   The internal configuration of the DB server 40 can be functionally shown as in FIG. The DB server 40 can be constructed using, for example, a computer (for example, a PC or a workstation) having a memory and a processor.

図3に示す通り、DBサーバ40は、DB処理部41、及びデータ記録部42を有している。   As shown in FIG. 3, the DB server 40 has a DB processing unit 41 and a data recording unit 42.

データ記録部42は、DBサーバ40内での各処理で利用される各種データを記録するデータ記録手段である。図3に示す通り、データ記録部42には、少なくとも、店舗情報DB421が記録されているものとする。   The data recording unit 42 is a data recording unit that records various data used in each process in the DB server 40. As shown in FIG. 3, it is assumed that at least the store information DB 421 is recorded in the data recording unit 42.

DB処理部41は、データ記録部42に記録されたデータベース(店舗情報DB421)のデータ処理を行う。DB処理部41は、例えば、ORACLE(登録商標)やMySQL(登録商標)等のDBMS(Database Management System)を用いて構築することができる。したがって、データ記録部42に記録する店舗情報DB421は、DB処理部41で対応するデータ構造で構成されている必要がある。   The DB processing unit 41 performs data processing of a database (store information DB 421) recorded in the data recording unit 42. The DB processing unit 41 can be constructed using, for example, a DBMS (Database Management System) such as ORACLE (registered trademark) or MySQL (registered trademark). Therefore, the store information DB 421 recorded in the data recording unit 42 needs to have a data structure corresponding to the DB processing unit 41.

次に、店舗情報DB421のデータ構造について図4を用いて説明する。   Next, the data structure of the store information DB 421 will be described with reference to FIG.

図4は、店舗情報DB421のデータ構造について示した説明図である。図4では、店舗情報DB421のデータ構造をテーブル形式で図示している。図4では、1行で1店舗の情報を図示している。   FIG. 4 is an explanatory diagram showing the data structure of the store information DB 421. FIG. 4 illustrates the data structure of the store information DB 421 in a table format. In FIG. 4, information of one store is illustrated in one line.

図4に示すように、店舗情報DB421には、店舗ごとに、店舗ID、店舗名、設置席数、利用中席数、アクセス情報、及び店舗情報が登録されている。   As shown in FIG. 4, a store ID, a store name, the number of seats installed, the number of seats in use, access information, and store information are registered in the store information DB 421 for each store.

「店舗ID」の項目は、店舗情報DB421において各店舗を識別するキーとして機能する項目である。図4に示すように、この実施形態では、第1の店舗〜第Nの店舗に対して、それぞれ1〜NのIDが付与されているものとする。   The item of “store ID” is an item that functions as a key for identifying each store in the store information DB 421. As shown in FIG. 4, in this embodiment, it is assumed that IDs 1 to N are assigned to a first store to an N-th store, respectively.

「店舗名」の項目は、当該店舗の名称を記録する項目である。図4では、第1の店舗(店舗ID=1)の店舗名を「AAA」、第2の店舗(店舗ID=2)の店舗名を「BBB」、第3の店舗(店舗ID=3)の店舗名を「CCC」、・・・、第Nの店舗(店舗ID=N)の店舗名を「XXX食堂」としている。   The item of “store name” is an item for recording the name of the store. In FIG. 4, the store name of the first store (store ID = 1) is “AAA”, the store name of the second store (store ID = 2) is “BBB”, and the third store (store ID = 3). , The store name of the Nth store (store ID = N) is “XXX dining room”.

「設置席数」及び「利用中席数」の情報は、各店舗の席情報を記録する項目である。   The information of the “number of seats installed” and the “number of seats in use” are items for recording seat information of each store.

アクセス情報は、各店舗のローカルコンピュータ20にアクセスするための情報である。アクセス情報としては、ローカルコンピュータ20にアクセスするためのIPアドレス、ホスト名、FQDN(Fully Qualified Domain Name)等が挙げられる。図4では、各店舗のローカルコンピュータ20−1〜20−Nにアクセスするためのアクセス情報を、それぞれhost1〜hostNと図示している。   The access information is information for accessing the local computer 20 of each store. The access information includes an IP address for accessing the local computer 20, a host name, an FQDN (Fully Qualified Domain Name), and the like. In FIG. 4, the access information for accessing the local computers 20-1 to 20-N of each store is illustrated as host1 to hostN, respectively.

「店舗情報」の項目は、各店舗の情報(例えば、クライアント端末50を所持する被情報提供者に提示する情報)を表す項目である。図4では、各店舗の店舗情報として、住所、営業時間、及びホームページURLの情報を記録する例について示している。なお、店舗情報DB421において、店舗情報として記録する情報の項目の数や組み合わせは限定されないものである。   The item of “store information” is an item representing information of each store (for example, information to be presented to an information-supplied person having the client terminal 50). FIG. 4 shows an example in which information of an address, business hours, and a homepage URL is recorded as store information of each store. In the store information DB 421, the number and combination of information items to be recorded as store information are not limited.

以上のように店舗情報DB421は構成されている。そして、DB処理部41は、Webアプリサーバ30の要求(命令)に応じて、以上のように構成された店舗情報DB421のデータ処理(例えば、データの更新や読出しの処理)を行う。   The store information DB 421 is configured as described above. Then, the DB processing unit 41 performs data processing (for example, data updating and reading processing) of the store information DB 421 configured as described above in response to a request (command) of the Web application server 30.

図5は、Webアプリサーバ30の内部構成について示したブロック図である。   FIG. 5 is a block diagram showing the internal configuration of the web application server 30.

Webアプリサーバ30は、Webサービス部31、サーバアプリ32、及びデータ記録部33を有している。   The Web application server 30 has a Web service unit 31, a server application 32, and a data recording unit 33.

Webアプリサーバ30の内部構成は、機能的には図5のように示すことができる。Webアプリサーバ30としては、例えば、メモリ及びプロセッサを有するコンピュータ(例えば、PCやワークステーション等)を用いて構築することができる。   The internal configuration of the Web application server 30 can be functionally shown as in FIG. The Web application server 30 can be constructed using, for example, a computer (for example, a PC or a workstation) having a memory and a processor.

データ記録部33は、Webアプリサーバ30内での各処理で利用される各種データを記録するデータ記録手段である。   The data recording unit 33 is a data recording unit that records various data used in each processing in the web application server 30.

Webサービス部31は、クライアント端末50に対して各店舗の席情報を含む情報をコンテンツ(例えば、Webページ)として提供する。Webサービス部31は、サーバアプリ32の制御に応じたコンテンツを、クライアント端末50に対して提供する。   The Web service unit 31 provides the client terminal 50 with information including seat information of each store as content (for example, a Web page). The Web service unit 31 provides the content under the control of the server application 32 to the client terminal 50.

Webサービス部31としては、例えば、種々のWebサーバのミドルウェアを適用することができる。この場合、サーバアプリ32は、Webサービス部31としてのミドルウェア上で、外部(例えば、クライアント端末50)からの要求に応じて、提供するコンテンツの生成処理等を行うアプリケーション(サーバ側プログラム)となる。   As the Web service unit 31, for example, middleware of various Web servers can be applied. In this case, the server application 32 is an application (server-side program) that performs a process of generating content to be provided in response to a request from the outside (for example, the client terminal 50) on middleware as the Web service unit 31. .

サーバアプリ32は、各店舗のローカルコンピュータ20から各店舗の席情報(この実施形態では設置席数と利用中席数を含む情報)を取得し、最新に取得した席情報をDBサーバ40の店舗情報DB421に登録する。   The server application 32 acquires the seat information (information including the number of seats installed and the number of seats in use in this embodiment) of each store from the local computer 20 of each store, and stores the latest acquired seat information in the store of the DB server 40. Register in the information DB 421.

また、サーバアプリ32は、Webサービス部31がクライアント端末50から受けた要求(クライアント端末50で受け付けた操作)に応じて、DBサーバ40の店舗情報DB421の情報(一部又は全部の店舗に関するデータ)を取得する。そして、サーバアプリ32は、取得した店舗情報DB421の情報を利用したコンテンツ(Web画面)を生成し、Webサービス部31に要求元のクライアント端末50へ提供させる処理を行う。   Further, the server application 32 responds to a request (operation received by the client terminal 50) received from the client terminal 50 by the Web service unit 31 and stores information (data relating to some or all stores) of the store information DB 421 of the DB server 40. ) To get. Then, the server application 32 generates a content (Web screen) using the acquired information of the store information DB 421, and performs a process of providing the Web service unit 31 to the client terminal 50 of the request source.

Webアプリサーバ30が提供するコンテンツ(Web画面)の構成例については後述する。   A configuration example of the content (Web screen) provided by the Web application server 30 will be described later.

次に、クライアント端末50の内部構成について説明する。   Next, the internal configuration of the client terminal 50 will be described.

図6は、クライアント端末50の内部構成の例について示した説明図である。   FIG. 6 is an explanatory diagram showing an example of the internal configuration of the client terminal 50.

クライアント端末50は、例えば、スマートホン、PC、タブレットPC等の種々の端末装置(コンピュータ;ハードウェア)を用いて構築することができる。図6では、クライアント端末50のハードウェアとしてスマートホンを適用した例について示している。   The client terminal 50 can be constructed using various terminal devices (computers; hardware) such as a smartphone, a PC, and a tablet PC. FIG. 6 illustrates an example in which a smartphone is applied as hardware of the client terminal 50.

図6に示すように、クライアント端末50は、タッチパネルディスプレイ51及びクライアントアプリ52を有している。   As shown in FIG. 6, the client terminal 50 has a touch panel display 51 and a client application 52.

タッチパネルディスプレイ51は、クライアント端末50を所持する被情報提供者への情報出力や、被情報提供者からの入力(例えば、GUI画面を用いた入力)を受け付けるデバイス(ユーザインタフェースの機能を担うデバイス)である。この実施形態では、スマートホンを用いてクライアント端末50を構築する例について示しているが、クライアント端末50においてユーザインタフェース(被情報提供者からの入力手段及び被情報提供者への出力手段)を担うデバイスの種類は限定されないものである。例えば、PCを用いてクライアント端末50を構築する場合、ユーザインタフェースとして、ディスプレイ、マウス及びキーボードを用いるようにしてもよい。   The touch panel display 51 is a device (a device having a function of a user interface) for receiving information (for example, input using a GUI screen) from the information provider to output information to the information provider possessing the client terminal 50. It is. In this embodiment, an example is shown in which the client terminal 50 is constructed using a smartphone. However, the client terminal 50 is responsible for a user interface (input means from the information provider and output means to the information provider). The type of device is not limited. For example, when the client terminal 50 is constructed using a PC, a display, a mouse, and a keyboard may be used as a user interface.

クライアントアプリ52は、タッチパネルディスプレイ51を用いて被情報提供者からの操作を受け付けると共に、被情報提供者の操作に応じた要求をWebアプリサーバ30に送信し、Webアプリサーバ30から供給されたコンテンツ(1又は複数の店舗の席情報を含む情報)をタッチパネルディスプレイ51に表示させる処理を行う。   The client application 52 uses the touch panel display 51 to receive an operation from the information provider, transmits a request corresponding to the operation of the information provider to the Web application server 30, and transmits the content supplied from the Web application server 30. (Information including seat information of one or a plurality of stores) is displayed on the touch panel display 51.

クライアントアプリ52としては、例えば、種々のWebブラウザを用いて構築するようにしてもよい。この実施形態では、クライアントアプリ52は、Webブラウザに接続先(接続先URL)としてWebアプリサーバ30上の所定のURL(各店舗の席情報を提供するためのURL)に設定されているものとして説明する。   For example, the client application 52 may be constructed using various Web browsers. In this embodiment, the client application 52 is set as a predetermined URL (URL for providing seat information of each store) on the Web application server 30 as a connection destination (connection destination URL) to the Web browser. explain.

なお、クライアントアプリ52としては、Webブラウザを用いずに、専用のアプリケーションとして構築するようにしてもよい。   The client application 52 may be constructed as a dedicated application without using a Web browser.

(A−2)実施形態の動作
次に、以上のような構成を有する実施形態の席情報処理システムの動作を説明する。
(A-2) Operation of Embodiment Next, the operation of the seat information processing system of the embodiment having the above configuration will be described.

まず、各店舗内におけるカメラ10の設置環境について説明する。   First, an installation environment of the camera 10 in each store will be described.

図7は、第1の店舗(店舗ID=1)の店舗内の平面図の例である。   FIG. 7 is an example of a plan view inside the store of the first store (store ID = 1).

以下では、この第1の店舗内を例にカメラ10の設置環境の例について説明する。   Hereinafter, an example of an installation environment of the camera 10 will be described using the inside of the first store as an example.

図7に示すように、第1の店舗内には、四角形のカウンターテーブルR1と、カウンターテーブルR1の一辺の側に並べて配置された8つの椅子C(C1〜C8)と、調理台R2とが配置されている。   As shown in FIG. 7, in the first store, a square counter table R1, eight chairs C (C1 to C8) arranged side by side on one side of the counter table R1, and a cooking table R2 are provided. Are located.

そして、第1の店舗では、この8つの椅子C1〜C8が処理対象席となっているものとする。   In the first store, these eight chairs C1 to C8 are assumed to be the processing target seats.

そして、図7に示すように、第1の店舗内の隅(端)には、カメラ10−1が配置されている。   Then, as shown in FIG. 7, a camera 10-1 is arranged at a corner (edge) in the first store.

図8は、第1の店舗(店舗ID=1)の店舗内を、当該店舗内に設置されたカメラ10−1の側から見た場合の図(斜視図)である。   FIG. 8 is a diagram (perspective view) when the inside of the first store (store ID = 1) is viewed from the camera 10-1 installed in the store.

上述の通り第1の店舗では椅子C1〜C8が処理対象席であるため、カメラ10−1は、椅子C1〜C8が全て撮像する視野内に収まるような位置、向き(姿勢)、ズーム設定で設置される必要がある。図8では、カメラ10−1が撮像する視野Aの枠を一点鎖線で図示している。図8に示すように視野A内には、椅子C1〜C8が全て収まっている。   As described above, since the chairs C1 to C8 are the processing target seats in the first store, the camera 10-1 is set in a position, an orientation (posture), and a zoom setting such that the chairs C1 to C8 are all within the field of view for imaging. Need to be installed. In FIG. 8, the frame of the visual field A captured by the camera 10-1 is shown by a dashed line. As shown in FIG. 8, all the chairs C1 to C8 are accommodated in the visual field A.

したがって、第1の店舗内で、誰も人がいない状態の場合、カメラ10−1で撮像される画像は図9のような画像となる。図9に示す画像では、椅子C1〜C8が全て写っている。実際には、各椅子Cの利用者が着席すると、椅子よりもやや上に利用者の顔が位置することになるため、実際に利用者の顔が位置する領域まで含めて、視野A内に収まるようにカメラ10−1を設置することが望ましい。   Therefore, when no one is in the first store, the image captured by the camera 10-1 is an image as shown in FIG. In the image shown in FIG. 9, all the chairs C1 to C8 are shown. Actually, when the user of each chair C is seated, the user's face is positioned slightly above the chair, so that even the area where the user's face is actually located is included in the field of view A. It is desirable to install the camera 10-1 so that it fits.

次に、第1の店舗に設置されたローカルコンピュータ20−1で、設置店舗内の席情報を取得する処理について説明する。   Next, a description will be given of a process in which the local computer 20-1 installed in the first store acquires seat information in the installed store.

上述の通り、席情報処理部23は、席情報として少なくとも設置店舗の設置席数と利用中席数の情報を取得する。上述の通り、この実施形態の席情報処理部23は、予めデータ記録部24に設定されたデータから設置席数のデータを読み取って取得する。また、席情報処理部23は、オブジェクト認識部22が現在認識している席利用者の数を、利用中席数とみなして取得する処理を行う。そして、席情報処理部23は、取得した設置席数と利用中席数を含む情報を席情報として取得し、Webアプリサーバ30に送信する。   As described above, the seat information processing unit 23 acquires at least information on the number of seats installed and the number of seats in use at the installation store as seat information. As described above, the seat information processing unit 23 of this embodiment reads and acquires data on the number of installed seats from data set in the data recording unit 24 in advance. Further, the seat information processing unit 23 performs a process of obtaining the number of seat users currently recognized by the object recognition unit 22 as the number of seats being used. Then, the seat information processing unit 23 acquires information including the acquired number of seats and the number of seats in use as seat information, and transmits the acquired information to the Web application server 30.

次に、映像取得部21及びオブジェクト認識部22の動作について説明する。   Next, operations of the video acquisition unit 21 and the object recognition unit 22 will be described.

上述の通り、この実施形態では、映像取得部21は、所定の期間T1ごとに、カメラ10が撮像した画像を取得して、オブジェクト認識部22に供給する処理を行う。第1の店舗内に設置されたカメラ10−1は、椅子C1〜C8を含む視野Aの領域を撮像した画像を、少なくとも期間T1ごとにローカルコンピュータ20−1の映像取得部21に供給する。   As described above, in this embodiment, the video acquisition unit 21 performs a process of acquiring an image captured by the camera 10 and supplying the acquired image to the object recognition unit 22 every predetermined period T1. The camera 10-1 installed in the first store supplies an image of the area of the field of view A including the chairs C1 to C8 to the image acquisition unit 21 of the local computer 20-1 at least for each period T1.

オブジェクト認識部22は、映像取得部21から供給される時系列ごとの画像についてオブジェクト認識処理を行う。   The object recognizing unit 22 performs an object recognizing process on an image for each time series supplied from the video acquiring unit 21.

この実施形態のオブジェクト認識部22は、まず、期間T1ごとの画像を解析して、人として認識できる人オブジェクトを認識する処理(以下、「人オブジェクト認識処理」と呼ぶ)を行う。例えば、カメラ10−1で撮像された画像が、図10に示すような画像であった場合を想定する。図10に示す画像では、椅子C1、C5、C6に席利用者が着席した状態となっている。また、図10に示す画像では、カウンターテーブルR1の手前で店員が歩いている状態となっている。   The object recognizing unit 22 of this embodiment first performs a process of analyzing an image for each period T1 and recognizing a human object that can be recognized as a human (hereinafter, referred to as a “human object recognition process”). For example, assume that the image captured by the camera 10-1 is an image as shown in FIG. In the image shown in FIG. 10, the seat user is seated on the chairs C1, C5, and C6. Further, in the image shown in FIG. 10, the clerk is walking in front of the counter table R1.

このとき、オブジェクト認識部22が、椅子C1、C5、C6に着席した席利用者を、それぞれ人オブジェクトOB101、OB102、OB103として認識したものとする。また、このとき、オブジェクト認識部22が、カウンターテーブルR1の手前の店員について人オブジェクトOB104として認識したものとする。   At this time, it is assumed that the object recognizing unit 22 has recognized the seat users sitting on the chairs C1, C5, and C6 as the human objects OB101, OB102, and OB103, respectively. At this time, it is assumed that the object recognizing unit 22 has recognized the clerk in front of the counter table R1 as the human object OB104.

そして、オブジェクト認識部22は、直近の所定期間(以下、この期間を「T2」と表す)の間、それぞれ人オブジェクトOB101、OB102、OB103、OB104の動きを追跡する処理(以下、「人オブジェクト追跡処理」と呼ぶ)を行う。そして、オブジェクト認識部22は、人オブジェクト追跡処理により得られる各人オブジェクトの動きの履歴から、各人オブジェクトの動きの特性を認識する。   The object recognizing unit 22 tracks the movement of each of the human objects OB101, OB102, OB103, and OB104 during the latest predetermined period (hereinafter, this period is referred to as “T2”) (hereinafter, “human object tracking”). Process). Then, the object recognizing unit 22 recognizes the movement characteristics of each person object from the movement history of each person object obtained by the person object tracking process.

例えば、席利用者は椅子に座った状態であるため、席利用者の人オブジェクト(例えば、図10に示す人オブジェクトOB101〜OB103)の動きも少ない状態となる。一方、店員等の非席利用者(例えば、図10に示す人オブジェクトOB104)は、席についていないため、非席利用者の人オブジェクトは席利用者よりも大きく動くことになる。さらに、店内に人物が描かれた写真や絵画等が置かれていた場合、人オブジェクト認識処理では人オブジェクトと誤認することになる。このような人オブジェクトと誤認されたオブジェクト(以下、「誤認オブジェクト」とも呼ぶ)は、まったく動かないため、通常動きが検知されない状態となる。ただし、誤認オブジェクトであっても、誤認オブジェクトの周囲の画像の変化や、人オブジェクト認識処理の量子化誤差等により、微小の動きが発生したように認識される可能性はある。しかしながら、誤認オブジェクトについて認識される微小の動きは、少なくとも席利用者(座っている人間)の動きよりは小さなものであるため、その動きの特性は異なる。   For example, since the seat user is in a state of sitting on a chair, the movement of the human object of the seat user (for example, the human objects OB101 to OB103 shown in FIG. 10) is also small. On the other hand, a non-seat user such as a clerk (for example, the person object OB104 shown in FIG. 10) is not seated, so that the person object of the non-seat user moves more than the seat user. Further, when a photograph or a painting in which a person is drawn is placed in the store, the person is recognized as a human object in the human object recognition processing. An object erroneously recognized as such a human object (hereinafter, also referred to as a “misrecognized object”) does not move at all, and thus is in a state where normal movement is not detected. However, even a misrecognized object may be recognized as if a minute movement has occurred due to a change in an image around the misrecognized object, a quantization error in the human object recognition process, or the like. However, since the minute movement recognized for the misidentified object is smaller than at least the movement of the seat user (sitting person), the characteristics of the movement are different.

以上のように、人オブジェクトと認識された物体の動きは、その属性により特性が異なることになる。そこで、この実施形態のオブジェクト認識部22では、各人オブジェクトの動きを追跡する処理(以下、「人オブヘクト追跡処理」と呼ぶ)を行って、各人オブジェクトの動きの履歴(動きの状況)を取得し、その履歴に基づいて各人オブジェクトの属性を認識する処理を行う。言い換えると、オブジェクト認識部22は、各人オブジェクトの動きの履歴に基づいて、席利用者の人オブジェクト(以下、「席利用者オブジェクト」と呼ぶ)を検出する処理(以下、「席利用者オブジェクト検出処理」と呼ぶ)を行う。   As described above, the motion of an object recognized as a human object has different characteristics depending on its attribute. Therefore, the object recognizing unit 22 of this embodiment performs a process of tracking the movement of each person object (hereinafter, referred to as a “person object tracking process”), and records the movement history (the state of movement) of each person object. A process of acquiring and recognizing the attribute of each person object based on the history is performed. In other words, the object recognizing unit 22 detects a person object of a seat user (hereinafter, referred to as a “seat user object”) based on a history of movement of each person object (hereinafter, “seat user object”). Detection process ”).

この実施形態の席利用者オブジェクト検出処理では、認識された人オブジェクト(人オブジェクト認識処理により認識された人オブジェクト)から、非席利用者オブジェクトや、誤認オブジェクトを除外して、席利用者オブジェクトが検出されるものとする。   In the seat user object detection process of this embodiment, the non-seat user object and the misidentified object are excluded from the recognized person object (the person object recognized by the person object recognition process), and the seat user object is removed. It shall be detected.

次に、オブジェクト認識部22による人オブジェクト認識処理の具体例について説明する。   Next, a specific example of a human object recognition process performed by the object recognition unit 22 will be described.

上述の通り、オブジェクト認識部22は、カメラ10で撮像された一連の画像(フレーム)から人オブジェクトを認識する処理(人オブジェクト認識処理)を行う。   As described above, the object recognition unit 22 performs a process of recognizing a human object from a series of images (frames) captured by the camera 10 (human object recognition process).

オブジェクト認識部22が行う人オブジェクト認識処理の具体的な方式については限定されないものである。オブジェクト認識部22が行う人オブジェクト認識処理は、例えば、既存の画像認識処理に関するオープンソースのライブラリを用いることにより実現することができる。ここでは、OpenCV(Open Source Computer Vision Library;以下の参考文献1、2参照)及び、TensorFlow(以下の参考文献3参照)を用いた人オブジェクト認識処理を行うものとして説明する。   The specific method of the human object recognition process performed by the object recognition unit 22 is not limited. The human object recognition processing performed by the object recognition unit 22 can be realized, for example, by using an open source library related to existing image recognition processing. Here, a description will be given assuming that a human object recognition process using OpenCV (Open Source Computer Vision Library; see References 1 and 2 below) and TensorFlow (see Reference 3 below) is performed.

参考文献1:OpenCV,[Online],INTERNET,[2017年11月22日検索],<URL:opencv.jp>
参考文献2:OpenCV Samples and Documents,[Online],INTERNET,[2017年11月22日検索],<URL:opencv.jp>
参考文献3:TensorFlow,[Online],INTERNET,[2017年11月22日検索],<URL: https://www.tensorflow.org/>
Reference 1: OpenCV, [Online], INTERNET, [Search November 22, 2017], <URL: opencv.jp>
Reference 2: OpenCV Samples and Documents, [Online], INTERNET, [Search November 22, 2017], <URL: opencv.jp>
Reference 3: TensorFlow, [Online], INTERNET, [Search November 22, 2017], <URL: https://www.tensorflow.org/>

この実施形態のオブジェクト認識部22では、OpenCVの機能を用いて画像内のオブジェクト(人に限定しない)を認識する処理(以下、「オブジェクト認識処理」と呼ぶ)を行い、認識したオブジェクトからTensorFlowの機能を用いて人オブジェクトを分類する処理(以下、「人オブジェクト分類処理」と呼ぶ)を行うことで人オブジェクト認識処理が行うことができる。   The object recognizing unit 22 of this embodiment performs a process of recognizing an object (not limited to a person) in an image (hereinafter, referred to as an “object recognition process”) using the function of OpenCV, and performs a TensorFlow of the object from the recognized object. A human object recognition process can be performed by performing a process of classifying a human object using a function (hereinafter, referred to as a “human object classification process”).

オブジェクト認識処理において、オブジェクト認識部22は、カメラ10で撮像した各画像について、輪郭検出処理を行い、その輪郭検出結果に基づいてオブジェクト認識処理を行う。なお、輪郭検出処理の前処理として画像を白黒の2値の画像に変換するフィルタ処理を行うことで精度を向上させるようにしてもよい。オブジェクト認識部22は、OpenCVの機能により、各オブジェクトについて、画像(前処理後の画像)から、各オブジェクトの輪郭の領域を含む矩形(外接矩形)の領域の画像(以下、「外接矩形画像」と呼ぶ)を切り出して保持する。   In the object recognition process, the object recognition unit 22 performs an outline detection process on each image captured by the camera 10 and performs an object recognition process based on the outline detection result. The accuracy may be improved by performing a filter process for converting the image into a binary image of black and white as a pre-process of the outline detection process. The object recognizing unit 22 uses the OpenCV function to convert each object from an image (pre-processed image) to an image of a rectangle (circumscribed rectangle) including the outline region of each object (hereinafter, “circumscribed rectangle image”). Is cut out and held.

図11は、オブジェクト認識部22が画像から切り出す外接矩形の例について示した説明図である。   FIG. 11 is an explanatory diagram illustrating an example of a circumscribed rectangle cut out from an image by the object recognition unit 22.

図11では、各人オブジェクトOB101〜OB104に対する外接矩形SQ101〜SQ104が図示されている。   FIG. 11 illustrates circumscribed rectangles SQ101 to SQ104 for the individual objects OB101 to OB104.

次に、オブジェクト認識部22による人オブジェクト分類処理の詳細例について説明する。オブジェクト認識部22は、オブジェクト認識処理により取得した各オブジェクトの外接矩形画像について、tensorflowの画像認識機能を用いて、人の一部(例えば、人の顔)の画像が含まれているか否かを判断する。例えば、オブジェクト認識部22は、tensorflowの「human_recognizer.py」に含まれる「create_feed_dict」関数を用いて、各オブジェクトの外接矩形画像に人の顔が含まれているか否かを判断することができる。create_feed_dict関数は、画像を入力するとその中に人の顔が含まれているか否かの評価結果(Score)の数値(0から1の範囲の数値)を戻り値として出力する関数である。例えば、オブジェクト認識部22は、各オブジェクトの外接矩形画像をreate_feed_dict関数に入力して、評価結果(Score)が閾値以上(例えば、0.4以上)であったオブジェクト(外接矩形画像)を人オブジェクトとして分類するようにしてもよい。   Next, a detailed example of the human object classification processing by the object recognition unit 22 will be described. The object recognizing unit 22 determines whether or not an image of a part of a person (for example, a human face) is included in the circumscribed rectangular image of each object obtained by the object recognition process, using an image recognition function of tensorflow. to decide. For example, the object recognizing unit 22 can determine whether or not a human face is included in the circumscribed rectangular image of each object by using a “create_feed_dict” function included in “human_recognizer.py” of tensorflow. The create_feed_dict function is a function that, when an image is input, outputs a numerical value (a numerical value in a range from 0 to 1) of an evaluation result (Score) as to whether or not a human face is included in the image as a return value. For example, the object recognizing unit 22 inputs a circumscribed rectangular image of each object to the create_feed_dict function, and converts the object (circumscribed rectangular image) whose evaluation result (Score) is equal to or more than a threshold value (for example, 0.4 or more) into a human object You may make it classify as.

以上のように、オブジェクト認識部22は、人が映っていたと評価された外接矩形画像に対応するオブジェクトを人オブジェクトとして認識する処理(人オブジェクト認識処理)を行う。   As described above, the object recognizing unit 22 performs a process of recognizing, as a human object, an object corresponding to a circumscribed rectangular image that is evaluated as a person (a human object recognition process).

次に、オブジェクト認識部22による人オブジェクト追跡処理の具体例について説明する。   Next, a specific example of the human object tracking processing by the object recognition unit 22 will be described.

オブジェクト認識部22は、人オブジェクト追跡処理において、各人オブジェクトの外接矩形(外接矩形画像)を追跡する処理を行う。人オブジェクトごとに外接矩形を追跡する処理(外接矩形ごとの動きの追跡処理)については種々の処理を適用することができる。   The object recognition unit 22 performs a process of tracking a circumscribed rectangle (circumscribed rectangle image) of each person object in the human object tracking process. Various processes can be applied to the process of tracking the circumscribed rectangle for each human object (the process of tracking the movement of each circumscribed rectangle).

例えば、任意の時刻の画像をF1とし、画像F1の後の時系列(例えば、F1の次の時系列)の画像をF2とした場合、オブジェクト認識部22は、画像F1と画像F2で距離が所定以下の人オブジェクトの外接矩形については同一の人オブジェクトの外接矩形であるものと認識するようにしてもよい。   For example, if an image at an arbitrary time is F1 and a time series image after the image F1 (for example, a time series next to F1) is F2, the object recognition unit 22 determines that the distance between the image F1 and the image F2 is A circumscribed rectangle of a human object equal to or less than a predetermined value may be recognized as a circumscribed rectangle of the same human object.

図12は、オブジェクト認識部22が、人オブジェクト追跡処理で動き量を求める際の例について示した説明図である。   FIG. 12 is an explanatory diagram showing an example in which the object recognizing unit 22 obtains a motion amount in the human object tracking processing.

図12では、画像F1及びF1の後の時系列の画像F2における人オブジェクトOB201の外接矩形を図示している。   FIG. 12 illustrates a circumscribed rectangle of the human object OB201 in the image F1 and the time-series image F2 after the image F1.

なお、図12では、画像の水平方向をX方向と呼び、画像の垂直方向をYと図示している。また、以下では、画像上の距離とは、解像度(画素)に基づく単位であるものとする。例えば、画像上において、1画素分(1解像度分)の距離を1と呼ぶようにしてもよい。   In FIG. 12, the horizontal direction of the image is called an X direction, and the vertical direction of the image is shown as Y. In the following, the distance on the image is a unit based on the resolution (pixel). For example, a distance of one pixel (one resolution) on an image may be referred to as 1.

図12では、画像F1における人オブジェクトOB201の外接矩形(点線)をSQ201として図示し、画像F2における人オブジェクトOB201の外接矩形(一点鎖線)をSQ202として図示している。また、図12では、外接矩形SQ201のX方向の辺の距離をX201とし、外接矩形SQ201のY方向の辺の距離をY201としている。   In FIG. 12, the circumscribed rectangle (dotted line) of the human object OB201 in the image F1 is illustrated as SQ201, and the circumscribed rectangle (dotted line) of the human object OB201 in the image F2 is illustrated as SQ202. In FIG. 12, the distance between the sides of the circumscribed rectangle SQ201 in the X direction is X201, and the distance between the sides of the circumscribed rectangle SQ201 in the Y direction is Y201.

オブジェクト認識部22では、オブジェクト認識処理により、画像F1から人オブジェクトOB201の外接矩形SQ201を検出し、画像F2から人オブジェクトOB201の外接矩形SQ202を検出することになる。そして、オブジェクト認識部22は、外接矩形SQ201と、外接矩形SQ202との間の距離を求める。   The object recognition unit 22 detects the circumscribed rectangle SQ201 of the human object OB201 from the image F1 and detects the circumscribed rectangle SQ202 of the human object OB201 from the image F2 by the object recognition processing. Then, the object recognition unit 22 obtains a distance between the circumscribed rectangle SQ201 and the circumscribed rectangle SQ202.

オブジェクト認識部22が、画像F1の外接矩形と画像F2の外接矩形との間の距離を求める方法は限定されないものであるが、例えば、各外接矩形の中心点同士や、いずれかの頂点(矩形の4つの頂点のいずれか)同士の距離を求めるようにしてもよい。図12では、外接矩形SQ201、SQ202の中心点の位置(座標)をそれぞれ位置P201、P202と図示している。   The method by which the object recognizing unit 22 obtains the distance between the circumscribed rectangle of the image F1 and the circumscribed rectangle of the image F2 is not limited. For example, the center points of each circumscribed rectangle or any vertex (rectangle) (Any of the four vertices) may be obtained. In FIG. 12, the positions (coordinates) of the center points of the circumscribed rectangles SQ201 and SQ202 are illustrated as positions P201 and P202, respectively.

このとき、オブジェクト認識部22は、X方向の距離(差分)DXが「X201・KX1」未満で、かつ、Y方向の距離(差分)DYが「Y201・KY1」未満の場合(以下の(1)式及び(2)式を満たす場合)に、外接矩形SQ201と外接矩形SQ202とを同じ人オブジェクトの外接矩形として認識するものとする。   At this time, the object recognition unit 22 determines that the distance (difference) DX in the X direction is less than “X201 · KX1” and that the distance (difference) DY in the Y direction is less than “Y201 · KY1” ((1) ) And (2)), the circumscribed rectangle SQ201 and the circumscribed rectangle SQ202 are recognized as circumscribed rectangles of the same human object.

KX1及びKY1については任意の定数を設定することができる。ここでは、KX1=0.5、KY1=0.5として説明する。この場合、2つの外接矩形SQ201、SQ202の形状(寸法)を同じとすれば、以下の(1)式及び(2)式を満たす状態とは、2つの外接矩形SQ201、SQ202の領域が互いに重なり合う状態といえる。図12では、位置P201と位置P202との間で、X方向の距離DXは「X201・0.5」未満で、Y方向の距離DYは「Y201・0.5」未満である。したがって、オブジェクト認識部22は、外接矩形SQ201と外接矩形SQ202とを同一の人オブジェクトOB201のものと認識(紐づけ)することができる。
X201・KX1 <DX …(1)
Y201・KY1 <DY …(2)
Arbitrary constants can be set for KX1 and KY1. Here, a description will be given assuming that KX1 = 0.5 and KY1 = 0.5. In this case, assuming that the shapes (dimensions) of the two circumscribed rectangles SQ201 and SQ202 are the same, the state where the following equations (1) and (2) are satisfied means that the areas of the two circumscribed rectangles SQ201 and SQ202 overlap each other. A state. In FIG. 12, between the position P201 and the position P202, the distance DX in the X direction is less than “X201 · 0.5”, and the distance DY in the Y direction is less than “Y201 · 0.5”. Therefore, the object recognition unit 22 can recognize (link) the circumscribed rectangle SQ201 and the circumscribed rectangle SQ202 as those of the same human object OB201.
X201 · KX1 <DX (1)
Y201 · KY1 <DY (2)

なお、KX1とKY1とは異なる値としてもよい。KX1とKY1については、実際にオブジェクト認識部22で認識される外接矩形のサイズや、人オブジェクト追跡処理を行う間隔(期間T1)や、実験結果(例えば、認識精度の実験)等を考慮して最適な値にチューニングされることが望ましい。   Note that KX1 and KY1 may be different values. Regarding KX1 and KY1, the size of the circumscribed rectangle actually recognized by the object recognizing unit 22, the interval (period T1) at which the human object tracking process is performed, the experimental result (for example, an experiment of recognition accuracy), and the like are taken into consideration. It is desirable to tune to an optimal value.

以上のように、オブジェクト認識部22は、画像を取得する度に、時系列が前後する画像との間で人オブジェクトの外接矩形の紐づけを行うことで、人オブジェクト追跡処理(画像ごとに、各人オブジェクトに対応する外接矩形の領域を認識する処理)を行うことができる。   As described above, every time an image is acquired, the object recognizing unit 22 links the circumscribed rectangle of the human object with the image whose time series is earlier or later, thereby performing the human object tracking process (for each image, (A process of recognizing a circumscribed rectangular area corresponding to each person object).

次に、オブジェクト認識部22が行う席利用者オブジェクト検出処理について説明する。   Next, a seat user object detection process performed by the object recognition unit 22 will be described.

オブジェクト認識部22は、人オブジェクト追跡処理により、各人オブジェクトの動きの履歴(外接矩形の動き)を保持することができる。ここでは、オブジェクト認識部22は、人オブジェクトごとに、直近の期間T2の分(現時点から期間T2だけ過去の時点までの期間分)の外接矩形の動き(例えば、中心点やいずれかの頂点の動き)を分析して、その動きの特性を認識し、その認識結果に基づいて席利用者オブジェクトを検出する。   The object recognizing unit 22 can hold a history of movement of each person object (movement of a circumscribed rectangle) by the person object tracking process. Here, the object recognizing unit 22 determines, for each human object, the movement of the circumscribed rectangle for the most recent period T2 (for the period from the present time to the past time by the period T2) (for example, the center point or any vertex of the vertex). By analyzing the movement, the characteristic of the movement is recognized, and the seat user object is detected based on the recognition result.

図13は、オブジェクト認識部22が行う席利用者オブジェクト検出処理で動き量を求める際の例について示した説明図である。   FIG. 13 is an explanatory diagram showing an example of obtaining a motion amount in the seat user object detection processing performed by the object recognition unit 22.

ここで、図13に示すように、現時点の画像F3における任意の人オブジェクトOB301の外接矩形をSQ301とする。また、図13では外接矩形SQ301の中心点をP301と図示している。さらに図13では、画像F3から時系列的にi個(iは1〜Mの整数)前の画像F−iから検出した人オブジェクトOB301の外接矩形を「SQ−i」とし、外接矩形SQ−iの中心点を「P−i」と図示している。例えば、オブジェクト認識部22において、画像F3が供給された時点をt1とすると、画像F−iが供給された時点は「t1−(i×T1)」となる。例えば、期間T1を1秒、期間T2を60秒とすると、M=60/1=60となる。なお、オブジェクト認識部22は、人オブジェクト追跡処理までに用いた画像を全て席利用者オブジェクト検出処理に適用する必要はない。例えば、人オブジェクト追跡処理までに用いた画像の一部を間引いて席利用者オブジェクト検出処理に適用するようにしてもよい。例えば、オブジェクト認識部22は、人オブジェクト追跡処理までに用いた画像を一つおきに抽出(例えば、画像F−1、F−3、F−5、F−7、…を抽出)して、席利用者オブジェクト検出処理を行うようにしてもよい。   Here, as shown in FIG. 13, the circumscribed rectangle of an arbitrary human object OB301 in the image F3 at the present time is SQ301. In FIG. 13, the center point of the circumscribed rectangle SQ301 is illustrated as P301. Further, in FIG. 13, the circumscribed rectangle of the human object OB301 detected from the image F-i (i is an integer of 1 to M) before the image F3 in time series is set to “SQ-i”, and the circumscribed rectangle SQ- The center point of i is illustrated as “Pi”. For example, assuming that the time at which the image F3 is supplied in the object recognition unit 22 is t1, the time at which the image Fi is supplied is "t1- (i.times.T1)". For example, if the period T1 is 1 second and the period T2 is 60 seconds, M = 60/1 = 60. Note that the object recognition unit 22 does not need to apply all the images used up to the human object tracking processing to the seat user object detection processing. For example, a part of the image used before the human object tracking processing may be thinned out and applied to the seat user object detection processing. For example, the object recognizing unit 22 extracts every other image used until the human object tracking process (for example, extracts images F-1, F-3, F-5, F-7,...) You may make it perform a seat user object detection process.

図13では、外接矩形SQ301のX方向の辺の距離をX301とし、外接矩形SQ301のY方向の辺の距離をY301としている。また、図13では、P301とP−iとのX方向の距離(差分)をDXと図示し、Y方向の距離(差分)をDYと図示している。   In FIG. 13, the distance between the sides of the circumscribed rectangle SQ301 in the X direction is X301, and the distance between the sides of the circumscribed rectangle SQ301 in the Y direction is Y301. In FIG. 13, the distance (difference) in the X direction between P301 and P-i is illustrated as DX, and the distance (difference) in the Y direction is illustrated as DY.

オブジェクト認識部22は、席利用者オブジェクト検出処理において、外接矩形SQ301と外接矩形SQ−1〜SQ−Mの全てとの間の「X方向の距離DX」と「Y方向の距離DY」を求める。外接矩形SQ301と、外接矩形SQ−1〜SQ−Mの全てとの距離(DX、DY)が、人オブジェクトOB301の動きの履歴となる。   In the seat user object detection processing, the object recognizing unit 22 obtains the “distance DX in the X direction” and the “distance DY in the Y direction” between the circumscribed rectangle SQ301 and all of the circumscribed rectangles SQ-1 to SQ-M. . The distance (DX, DY) between the circumscribed rectangle SQ301 and all of the circumscribed rectangles SQ-1 to SQ-M is the movement history of the human object OB301.

そして、オブジェクト認識部22は、外接矩形SQ301と、外接矩形SQ−1〜SQ−Mの全てとの距離(DX、DY)にから動きの特性を分析して、その分析結果に基づいて人オブジェクトOB301の属性(例えば、席利用者オブジェクトであるか否か)を認識する。   Then, the object recognizing unit 22 analyzes the characteristics of the motion based on the distance (DX, DY) between the circumscribed rectangle SQ301 and all of the circumscribed rectangles SQ-1 to SQ-M, and based on the analysis result, detects the human object. The attribute of the OB 301 (for example, whether or not it is a seat user object) is recognized.

まず、オブジェクト認識部22において、人オブジェクトOB301が、非席利用者オブジェクトであるか否かを判定する処理の例について説明する。   First, an example of processing performed by the object recognition unit 22 to determine whether or not the human object OB301 is a non-seat user object will be described.

オブジェクト認識部22は、外接矩形SQ301と、外接矩形SQ−1〜SQ−Mの全てとの距離(DX、DY)を求め、外接矩形SQ−1〜SQ−Mの全てについて、X方向の距離(差分)DXが「X301・KX2」未満で、かつ、Y方向の距離(差分)DYが「Y301・KY2」未満であるかという条件(以下の(3)式及び(4)式を満たすという条件)を満たすか否かを判定する。そして、オブジェクト認識部22は、外接矩形SQ−1〜SQ−Mの全てについて上述の条件を満たす場合(以下の(3)式及び(4)式を満たす場合)、外接矩形SQ301に係る人オブジェクトOB301を、非席利用者オブジェクトでないと認識(その他の条件を満たせば席利用者オブジェクトであると認識)する。言い換えると、オブジェクト認識部22は、外接矩形SQ−1〜SQ−Mについて求めた距離のうち、1つでも以下の(3)又は(4)を満たさない場合には、オブジェクト認識部22は、外接矩形SQ301に係る人オブジェクトOB301を非席利用者オブジェクトであると認識する。   The object recognition unit 22 calculates the distance (DX, DY) between the circumscribed rectangle SQ301 and all of the circumscribed rectangles SQ-1 to SQ-M, and calculates the distance in the X direction for all of the circumscribed rectangles SQ-1 to SQ-M. (Difference) DX is less than “X301 · KX2” and the distance (difference) DY in the Y direction is less than “Y301 · KY2” (the condition that the following expressions (3) and (4) are satisfied) (Condition) is determined. Then, when all of the circumscribed rectangles SQ-1 to SQ-M satisfy the above-described conditions (when the following expressions (3) and (4) are satisfied), the object recognition unit 22 determines that the human object related to the circumscribed rectangle SQ301 The OB 301 is recognized as not a non-seat user object (recognized as a seat user object if other conditions are satisfied). In other words, if at least one of the distances obtained for the circumscribed rectangles SQ-1 to SQ-M does not satisfy the following (3) or (4), the object recognizing unit 22: The human object OB301 relating to the circumscribed rectangle SQ301 is recognized as a non-seat user object.

KX2及びKY2については任意の定数を設定することができる。ここでは、KX2=0.5、KY2=0.5として説明する。この場合、2つの外接矩形SQ301、SQ−iの形状(寸法)を同じとすれば、以下の(3)式及び(4)式を満たす状態とは、2つの外接矩形SQ301、SQ−iの領域が互いに重なり合う状態といえる。   Arbitrary constants can be set for KX2 and KY2. Here, a description will be given assuming that KX2 = 0.5 and KY2 = 0.5. In this case, if the shapes (dimensions) of the two circumscribed rectangles SQ301 and SQ-i are the same, the state satisfying the following equations (3) and (4) means that the two circumscribed rectangles SQ301 and SQ-i It can be said that the areas overlap each other.

なお、オブジェクト認識部22は、現時点から期間T2前まで継続して外接矩形SQが取得できない人オブジェクト(外接矩形SQ−1〜SQ−Mを全て取得できない人オブジェクト)については非席利用者オブジェクトと認識するようにしてもよい。まだ認識が開始されてから期間T2以上経過していない人オブジェクトについては、席利用者オブジェクトと確定しない方が認識精度が安定する場合があるからである。
X301・KX2>DX …(3)
Y301・KY2>DY …(4)
Note that the object recognizing unit 22 determines that a person object for which the circumscribed rectangle SQ cannot be continuously obtained from the current time to a time before the period T2 (a person object for which all of the circumscribed rectangles SQ-1 to SQ-M cannot be obtained) is a non-seat user object. You may make it recognize. This is because the recognition accuracy of a person object for which a period T2 or more has not yet elapsed since the start of recognition may not be determined as a seat user object in some cases.
X301 · KX2> DX (3)
Y301 · KY2> DY (4)

なお、KX2とKY2とは異なる値としてもよい。また、KX2とKY2を大きくしすぎると非席利用者オブジェクトを席利用者オブジェクトとして誤認してしまい、KX2とKY2を小さくしすぎると席利用者オブジェクトを非席利用者オブジェクトと誤認してしまう。そのため、通常、席利用者オブジェクトが期間T2の間に動く量を実験等により検証し、その検証結果に基づいてKX2とKY2を設定することが望ましい。さらに、KX2とKY2については、実際にオブジェクト認識部22で認識される外接矩形のサイズや、人オブジェクト認識処理を行う間隔(期間T2)等を考慮して最適な値にチューニングされることが望ましい。   Note that KX2 and KY2 may have different values. Further, if KX2 and KY2 are too large, a non-seat user object is erroneously recognized as a seat user object, and if KX2 and KY2 are too small, a seat user object is erroneously recognized as a non-seat user object. Therefore, it is usually desirable to verify the amount of movement of the seat user object during the period T2 by an experiment or the like, and to set KX2 and KY2 based on the verification result. Further, it is desirable that KX2 and KY2 are tuned to optimal values in consideration of the size of the circumscribed rectangle actually recognized by the object recognition unit 22, the interval (period T2) for performing the human object recognition process, and the like. .

ここで、店員の人オブジェクトOB104の外接矩形SQ104のX方向の距離をX104、KX2=0.5とする。そうすると、人オブジェクトOB104の店員が、期間T2(60秒)の間に、画像上でX方向に「0.5・X104」以上移動すれば、人オブジェクトOB104は非席利用者オブジェクトと認識(席利用者オブジェクトでないと認識)されることになる。通常、飲食店の店員(ホールの店員)は、接客のため店内を移動し続けることになるため、期間T2(60秒)以上の間、同じ場所にとどまり続けるとは考えにくい。したがって、図11の例においては、通常、店員の人オブジェクトOB104は、非席利用者オブジェクトと認識(席利用者オブジェクトでないと認識)される。   Here, the distance in the X direction of the circumscribed rectangle SQ104 of the clerk's person object OB104 is assumed to be X104 and KX2 = 0.5. Then, if the clerk of the human object OB104 moves by more than “0.5 · X104” in the X direction on the image during the period T2 (60 seconds), the human object OB104 is recognized as a non-seat user object (seat). It is recognized as not being a user object). Normally, the clerk of the restaurant (the clerk of the hall) continues to move in the store to serve customers, and therefore it is unlikely that the clerk will stay in the same place for the period T2 (60 seconds) or more. Therefore, in the example of FIG. 11, the clerk person object OB104 is generally recognized as a non-seat user object (recognized as not a seat user object).

次に、オブジェクト認識部22において、人オブジェクトOB301が、誤認オブジェクトであるか否かを判定する処理の例について説明する。   Next, an example of a process in which the object recognizing unit 22 determines whether or not the human object OB301 is an erroneously recognized object will be described.

オブジェクト認識部22は、外接矩形SQ−1〜SQ−Mの全てについて、X方向の距離(差分)DXが「X301・KX3」未満で、かつ、Y方向の距離(差分)DYが「Y301・KY3」未満であるという条件(以下の(5)式及び(6)式を満たすという条件)を満たすか否かを判定する。そして、オブジェクト認識部22は、外接矩形SQ−1〜SQ−Mの全てについて上述の条件を満たす場合(以下の(5)式及び(6)式を満たす場合)、外接矩形SQ301に係る人オブジェクトOB301を誤認オブジェクトと認識(席利用者オブジェクトでないと認識)する。言い換えると、外接矩形SQ−1〜SQ−Mについて求めた距離のうち、1つでも以下の(5)又は(6)を満たさない場合には、オブジェクト認識部22は、外接矩形SQ301に係る人オブジェクトOB301を誤認オブジェクトではない(その他の条件を満たせば席利用者オブジェクトである)と認識する。
X301・KX3>DX …(5)
Y301・KY3>DY …(6)
The object recognition unit 22 determines that the distance (difference) DX in the X direction is less than “X301 · KX3” and the distance (difference) DY in the Y direction is “Y301 · D” for all of the circumscribed rectangles SQ-1 to SQ-M. It is determined whether or not the condition that KY3 is smaller than “KY3” (the condition that the following expressions (5) and (6) are satisfied) is satisfied. Then, when all of the circumscribed rectangles SQ-1 to SQ-M satisfy the above-described conditions (when the following expressions (5) and (6) are satisfied), the object recognition unit 22 determines that the human object related to the circumscribed rectangle SQ301 The OB 301 is recognized as an erroneously recognized object (recognized as not a seat user object). In other words, if at least one of the distances determined for the circumscribed rectangles SQ-1 to SQ-M does not satisfy the following (5) or (6), the object recognizing unit 22 determines that the person associated with the circumscribed rectangle SQ301 The object OB301 is recognized as not being a misidentified object (if other conditions are satisfied, it is a seat user object).
X301 · KX3> DX (5)
Y301 · KY3> DY (6)

上述の通り、誤認オブジェクト(例えば、店内に人物が描かれた写真や絵画等に基づく人オブジェクト)は実際には全く動かないが、人オブジェクト認識処理の過程で微小の動きが発生したように認識される可能性はある。しかしながら、誤認オブジェクトについて認識される微小の動きは、少なくとも席利用者(座っている人間)の動きよりは小さなものである。これは、人間は椅子に座っていても顔等の部位は全く動かないわけではないため、期間T(60秒)の間で見れば、通常誤認オブジェクトよりも席利用者オブジェクトの動きの量(動きの最大量)は大きくなるためである。そのため、上述のように、外接矩形SQ301の動きが所定以下しか発生していない場合(外接矩形SQ−1〜SQ−Mについて求めた距離が全て(5)式及び(6)式を満たす場合)には、人オブジェクトOB301は誤認オブジェクトであると認識(推定)できる。   As described above, an erroneously recognized object (for example, a human object based on a photograph or a painting in which a person is drawn in a store) does not actually move at all, but recognizes as if a minute movement occurred during the human object recognition process. Could be done. However, the minute movement recognized for the misidentified object is at least smaller than the movement of the seat user (sit person). This does not mean that a person does not move a part such as a face at all even when sitting in a chair. Therefore, when viewed during the period T (60 seconds), the amount of movement of the seat user object (usually, the misidentification object) This is because the maximum amount of movement) increases. Therefore, as described above, when the movement of the circumscribed rectangle SQ301 is less than or equal to a predetermined value (when the distances obtained for the circumscribed rectangles SQ-1 to SQ-M all satisfy Expressions (5) and (6)) First, the human object OB301 can be recognized (estimated) as an erroneously recognized object.

KX3及びKY3については任意の定数を設定することができるが、例えば、KX3=0.1、KY3=0.1程度としてもよい。なお、KX3とKY3とは異なる値としてもよい。また、KX3とKY3を大きくしすぎると非席利用者オブジェクトを誤認オブジェクトとして誤認してしまい、KX3とKY3を小さくしすぎると誤認オブジェクトを席利用者オブジェクトと誤認してしまう。そのため、通常席利用者オブジェクトが期間T2の間に動く量を実験等により検証し、その検証結果に基づいてKX3とKY3を設定することが望ましい。さらに、KX3とKY3については、実際にオブジェクト認識部22で認識される外接矩形のサイズや、人オブジェクト認識処理を行う間隔(期間T2)等を考慮して最適な値にチューニングされることが望ましい。   Any constants can be set for KX3 and KY3. For example, KX3 = 0.1 and KY3 = 0.1 may be set. Note that KX3 and KY3 may have different values. Further, if KX3 and KY3 are too large, the non-seat user object is erroneously recognized as an erroneous recognition object, and if KX3 and KY3 are too small, the erroneous recognition object is erroneously recognized as a seat user object. Therefore, it is desirable to verify the amount of movement of the normal seat user object during the period T2 by an experiment or the like, and to set KX3 and KY3 based on the verification result. Further, it is desirable that KX3 and KY3 are tuned to optimal values in consideration of the size of the circumscribed rectangle actually recognized by the object recognition unit 22, the interval (period T2) for performing the human object recognition process, and the like. .

以上の処理により、オブジェクト認識部22は、人オブジェクトOB301について、非席利用者の人オブジェクトでも、誤認オブジェクトでもないと認識した場合、人オブジェクトOB301を席利用者オブジェクトとして認識(抽出)する。すなわち、オブジェクト認識部22は、人オブジェクト追跡処理を行った各人オブジェクトから、非席利用者人オブジェクトでも誤認オブジェクトでもないものを、席利用者オブジェクトと認識する。そして、席情報処理部23は、オブジェクト認識部22が最新に行った席利用者オブジェクト検出処理の結果に基づいて、席利用者オブジェクトの数をカウントし、そのカウント結果を席利用者数として取得する。   Through the above processing, when the object recognizing unit 22 recognizes that the human object OB301 is neither a human object of a non-seat user nor a false recognition object, it recognizes (extracts) the human object OB301 as a seat user object. That is, the object recognizing unit 22 recognizes a non-seat user object or a misrecognized object as a seat user object from the individual objects subjected to the human object tracking processing. Then, the seat information processing unit 23 counts the number of seat user objects based on the result of the latest seat user object detection process performed by the object recognizing unit 22, and acquires the count result as the number of seat users. I do.

次に、Webアプリサーバ30及びDBサーバ40における席情報の更新動作について説明する。   Next, the update operation of the seat information in the Web application server 30 and the DB server 40 will be described.

ここでは、DBサーバ40の店舗情報DB421に、初期のマスターデータとして、各店舗の席情報(設置席数、利用中席数)以外の情報は登録されているものとする。   Here, it is assumed that information other than the seat information (the number of seats installed and the number of seats in use) of each store is registered as initial master data in the store information DB 421 of the DB server 40.

Webアプリサーバ30のサーバアプリ32は、各店舗のローカルコンピュータ20から席情報(設置席数及び利用中席数)を受信すると、その席情報に基づいて、DBサーバ40(店舗情報DB421)の情報(受信した店舗に係る席情報(設置席数及び利用中席数))を更新する処理を行う。なお、上述の通り、席情報処理部23が、Webアプリサーバ30に席情報を送信するタイミングは限定しないものである。   When the server application 32 of the web application server 30 receives the seat information (the number of seats installed and the number of seats in use) from the local computer 20 of each store, the server application 32 stores information on the DB server 40 (store information DB 421) based on the seat information. (Received seat information (number of seats installed and number of seats in use) relating to the store) is updated. Note that, as described above, the timing at which the seat information processing unit 23 transmits the seat information to the Web application server 30 is not limited.

以上のように、DBサーバ40(店舗情報DB421)は、各店舗のローカルコンピュータ20から受信した席情報により、常に最新の状態(最新の各店舗の席情報を保持した状態)に保たれることになる。   As described above, the DB server 40 (store information DB 421) is always kept in the latest state (a state in which the latest seat information of each store is held) based on the seat information received from the local computer 20 of each store. become.

次に、Webアプリサーバ30及びDBサーバ40における席情報の提供動作について説明する。   Next, an operation of providing seat information in the web application server 30 and the DB server 40 will be described.

上述の通り、Webアプリサーバ30は、クライアント端末50の要求に応じて、DBサーバ40で保持された席情報を含むコンテンツを提供する。Webアプリサーバ30からクライアント端末50に提供されたコンテンツ(Web画面のデータ)は、クライアント端末50のタッチパネルディスプレイ51に表示されることになる。   As described above, the Web application server 30 provides the content including the seat information held by the DB server 40 in response to a request from the client terminal 50. The content (data of the web screen) provided from the web application server 30 to the client terminal 50 is displayed on the touch panel display 51 of the client terminal 50.

例えば、Webアプリサーバ30(Webサービス部31)が、クライアント端末50から所定のURL(席情報を提供するためのホームページのURL)でアクセス(例えば、HTTP等のプロトコルでのアクセス)を受け付けた場合、店舗の選択を受け付けることが可能なWeb画面(以下、「店舗選択画面」と呼ぶ)のコンテンツ(Web画面のデータ)を生成して、クライアント端末50に提供する。   For example, when the Web application server 30 (Web service unit 31) receives an access (for example, an access using a protocol such as HTTP) from the client terminal 50 at a predetermined URL (URL of a homepage for providing seat information). Then, a content (Web screen data) of a Web screen (hereinafter, referred to as a “store selection screen”) capable of accepting a store selection is generated and provided to the client terminal 50.

図14は、店舗選択画面の構成例について示した説明図である。   FIG. 14 is an explanatory diagram showing a configuration example of the store selection screen.

図14の店舗選択画面(Web画面)は、各店舗の店舗名を付加したボタン(リンク)を表示し、クライアント端末50を所持するユーザから、席情報を含むコンテンツを提供する店舗の選択(クリック;タッチ)を受け付ける構成となっている。図14に示す店舗選択画面では、第1の店舗(店舗名:「AAAカフェ」)の選択を受け付けるためのボタンB101、第2の店舗(店舗名:「BBBレストラン」)の選択を受け付けるためのボタンB102、第3の店舗(店舗名:「CCCコーヒー」)の選択を受け付けるためのボタンB102等が表示されている状態について示している。   The store selection screen (Web screen) in FIG. 14 displays a button (link) to which the store name of each store is added, and allows the user possessing the client terminal 50 to select (click) a store that provides content including seat information. Touch). On the store selection screen shown in FIG. 14, a button B101 for receiving selection of the first store (store name: “AAA cafe”) and a button B101 for receiving selection of the second store (store name: “BBB restaurant”) are displayed. A state is shown in which a button B102 and a button B102 for receiving selection of a third store (store name: “CCC coffee”) are displayed.

このとき、サーバアプリ32は、DBサーバ40(店舗情報DB421)から、店舗ごとの店舗名を取得し、Webサービス部31に図14に示すような店舗選択画面(Web画面)を生成させる処理を行う。なお、いずれかの店舗を選択することが可能なWeb画面であれば、店舗選択画面の具体的な構成は限定されないものである。   At this time, the server application 32 acquires a store name for each store from the DB server 40 (store information DB 421), and causes the Web service unit 31 to generate a store selection screen (Web screen) as shown in FIG. Do. The specific configuration of the store selection screen is not limited as long as it is a Web screen that can select any store.

ここでは、図14に示す店舗選択画面で、クライアント端末50を所持するユーザにより、第1の店舗(店舗名:「AAAカフェ」)の選択を受け付けるためのボタンB101が選択されたものとする。   Here, it is assumed that the user holding the client terminal 50 has selected the button B101 for accepting the selection of the first store (store name: “AAA cafe”) on the store selection screen shown in FIG.

店舗選択画面で第1の店舗(店舗名:「AAAカフェ」)が選択されると、サーバアプリ32は、DBサーバ40(店舗情報DB421)から、第1の店舗の席情報(設置席数及び利用中席数)と店舗情報(住所、営業時間、ホームページURL)を取得する。そして、サーバアプリ32は、取得した第1の店舗(店舗名:「AAAカフェ」)の席情報と店舗情報に基づき、Webサービス部31に取得した情報(席情報及び店舗情報を含む情報)を提示するためのWeb画面(以下、「店舗情報提供画面」とも呼ぶ)を生成させ、接続元のクライアント端末50に提供させる処理を行う。   When the first store (store name: “AAA cafe”) is selected on the store selection screen, the server application 32 reads the seat information of the first store from the DB server 40 (store information DB 421). Acquire the number of seats in use) and store information (address, business hours, homepage URL). Then, based on the acquired seat information and store information of the first store (store name: “AAA cafe”), the server application 32 converts the information (information including the seat information and the store information) acquired by the Web service unit 31 into the Web application. A Web screen to be presented (hereinafter, also referred to as a “store information providing screen”) is generated and provided to the client terminal 50 of the connection source.

図15は、店舗情報提供画面の構成例について示した説明図である。   FIG. 15 is an explanatory diagram illustrating a configuration example of a store information providing screen.

図15に示す店舗情報提供画面では、席情報を表示するためのフィールドF101と、第1の店舗に関する情報(店舗名及び店舗情報を含む情報)を表示するためのフィールドF102が配置されている。   In the store information providing screen shown in FIG. 15, a field F101 for displaying seat information and a field F102 for displaying information about the first store (information including a store name and store information) are arranged.

図15に示す店舗情報提供画面では、フィールドF101に、席情報として空席数と着席数(利用中席数)が表示されている。なお、店舗情報提供画面では、席情報として空席数のみを表示するようにしてもよいし、設置席数と着席数(利用中席数)を表示するようにしてもよい。   In the store information providing screen shown in FIG. 15, the number of vacant seats and the number of seats (the number of seats in use) are displayed as seat information in a field F101. In the store information providing screen, only the number of vacant seats may be displayed as seat information, or the number of seats installed and the number of seats (the number of seats in use) may be displayed.

(A−3)実施形態の効果
この実施形態によれば、以下のような効果を奏することができる。
(A-3) Effects of Embodiment According to this embodiment, the following effects can be obtained.

この実施形態の席情報処理システム1では、各店舗の席情報として設置席数の情報のみを登録するだけで、各店舗の空席数を認識できる。これにより、この実施形態の席情報処理システム1では、各店舗の席の位置情報等を入力する必要がないため、導入作業や席のレイアウト変更を容易とし、従来と比較して利便性が向上している。   In the seat information processing system 1 of this embodiment, the number of vacant seats of each store can be recognized only by registering information on the number of seats installed as seat information of each store. As a result, in the seat information processing system 1 of this embodiment, since it is not necessary to input seat position information and the like of each store, introduction work and change of the seat layout are facilitated, and convenience is improved as compared with the related art. are doing.

また、この実施形態の席情報処理システム1では、各店舗内にカメラ10を設置して画像処理を行うだけで、利用中席数(着席利用者数)を認識することができる。これにより、この実施形態の席情報処理システム1では、席ごとにセンサを取り付けること等を必要としないため、導入コストを低減することができる。言い換えると、この実施形態の席情報処理システム1では、各席について利用者の有無を認識するわけではなく、人オブジェクト追跡処理と席利用者オブジェクト検出処理により、カメラ10で撮像した画像に映っている着席利用者をカウントするだけであるため、各席について画像認識処理を行う場合と比較すると、より少ない処理量で着席利用者数を認識することができる。   Further, in the seat information processing system 1 of this embodiment, the number of seats in use (the number of seated users) can be recognized only by installing the camera 10 in each store and performing image processing. As a result, in the seat information processing system 1 of this embodiment, it is not necessary to attach a sensor for each seat or the like, so that the introduction cost can be reduced. In other words, in the seat information processing system 1 of the present embodiment, the presence or absence of a user is not recognized for each seat, and the seat information processing system 1 performs the human object tracking processing and the seat user object detection processing to display the image captured by the camera 10. Since only the number of seated users is counted, the number of seated users can be recognized with a smaller processing amount as compared with the case where image recognition processing is performed for each seat.

さらにまた、この実施形態の席情報処理システム1では、人オブジェクト追跡処理及び席利用者オブジェクト検出処理において、各人オブジェクトの外接矩形の動きを認識する際、外接矩形を構成する寸法(例えば、外接矩形の辺の距離や対角線の距離)との比較結果(例えば、(1)式〜(6)式の結果)を用いているため、カメラ10から各席までの距離にかかわらず、同様の精度で動きを認識することができる。カメラ10で撮像した画像上では、遠くの人オブジェクトの外接矩形は小さく認識され、近くの人オブジェクトの外接矩形は大きく認識されるため、それらの動きを同じ閾値で比較すると、認識精度にばらつきが発生するため、この実施形態のように、外接矩形を構成する寸法との比較結果を用いていることで、人オブジェクト追跡処理及び席利用者オブジェクト検出処理の認識精度を向上させることができる。   Furthermore, in the seat information processing system 1 of this embodiment, when recognizing the movement of the circumscribed rectangle of each person object in the human object tracking processing and the seat user object detection processing, the dimension (for example, Since the comparison results (for example, the results of Expressions (1) to (6)) with the distances between the sides of the rectangle and the diagonal lines are used, the same accuracy is obtained regardless of the distance from the camera 10 to each seat. Can recognize the movement. On the image captured by the camera 10, the circumscribed rectangle of a distant human object is recognized as small, and the circumscribed rectangle of a nearby human object is recognized as large. Therefore, the recognition accuracy of the human object tracking processing and the seat user object detection processing can be improved by using the result of comparison with the dimensions constituting the circumscribed rectangle as in this embodiment.

(B)他の実施形態
本発明は、上記の各実施形態に限定されるものではなく、以下に例示するような変形実施形態も挙げることができる。
(B) Other Embodiments The present invention is not limited to the above embodiments, but may include modified embodiments as exemplified below.

(B−1)上記の実施形態において、各ローカルコンピュータ20が行う処理をサーバ側(Webアプリサーバ30、又はWebアプリサーバ30に付随するサーバ)で処理するようにしてもよい。   (B-1) In the above embodiment, the processing performed by each local computer 20 may be performed on the server side (the Web application server 30 or a server attached to the Web application server 30).

(B−2)上記の実施形態において、Webアプリサーバ30(サーバアプリ32)が提供する店舗選択画面は(図14参照)、店舗情報DB421に登録されている店舗を表示するだけであったが、各店舗の位置や各店舗の席の席情報(例えば、空席数や設置席数)等の情報(以下、「検索情報」とも呼ぶ)に応じて表示する店舗や、表示する店舗の順序を変更するようにしてもよい。   (B-2) In the above embodiment, the store selection screen provided by the Web application server 30 (server application 32) (see FIG. 14) only displays the stores registered in the store information DB 421. The store to be displayed according to information such as the position of each store and the seat information of the seats of each store (for example, the number of vacant seats and the number of seats installed) (hereinafter, also referred to as “search information”), and the order of the stores to be displayed are It may be changed.

例えば、サーバアプリ32は、店舗選択画面の要求元(Web通信の要求元)であるクライアント端末50から、位置情報(当該クライアント端末50の位置情報)を取得し、店舗選択画面で、クライアント端末50の位置から距離の近い順に各店舗に係るボタンを表示するようにしてもよい。例えば、サーバアプリ32は、店舗選択画面において、クライアント端末50の位置から近い店舗から順に、画面上からボタンを表示するようにしてもよい。   For example, the server application 32 acquires the position information (the position information of the client terminal 50) from the client terminal 50 that is the request source of the store selection screen (the request source of the Web communication), and displays the client terminal 50 on the store selection screen. The buttons related to each store may be displayed in the order of short distance from the position. For example, the server application 32 may display the buttons on the store selection screen from the top of the screen in order from the store closest to the position of the client terminal 50.

また、サーバアプリ32は、図14に示すように、店舗選択画面において、所定の条件に合う店舗の検索を受け付ける構成としてもよい。   In addition, as shown in FIG. 14, the server application 32 may be configured to receive a search for a store that satisfies predetermined conditions on the store selection screen.

図14(a)では、店舗選択画面において、空席数の入力を受け付けるフィールドF101と、当該クライアント端末50からの距離(図14では「ここからの距離」)の入力を受け付けるフィールドF102が配置されている。そして、図14(a)に示す店舗選択画面では、クライアント端末50の近くでフィールドF101、F102に入力された条件に合致する店舗の検索を受け付けるためのボタンB201(図14では、「近くで空いている店舗を探す」と表示)が配置されている。   14A, a field F101 for receiving an input of the number of vacant seats and a field F102 for receiving an input of a distance from the client terminal 50 (“distance from here” in FIG. 14) are arranged on the store selection screen. I have. Then, on the store selection screen shown in FIG. 14A, a button B201 for accepting a search for a store that matches the conditions input to the fields F101 and F102 near the client terminal 50 (in FIG. "Search for a store that is located" is displayed).

図14(a)では、デフォルトの状態で、空席数を示すF101に「2」(空席2以上)が入力され、「ここからの距離」を示すF102に「200」(200m以内)が入力された状態となっている。なお、フィールドF101、F102に対する入力方式は限定されないものであり、数値入力を受け付ける方式としてもよいし、コンボボックスやラジオボタン等で選択する方式としてもよい。また、フィールドF101、F102のデフォルト値についても限定されないものである。   In FIG. 14A, in a default state, “2” (2 or more vacant seats) is input to F101 indicating the number of vacant seats, and “200” (within 200 m) is input to F102 indicating “Distance from here”. It is in a state of being left. Note that the input method for the fields F101 and F102 is not limited, and may be a method for receiving a numerical value input, or a method for selecting with a combo box or a radio button. The default values of the fields F101 and F102 are not limited.

なお、店舗選択画面における検索条件の項目についても、その項目や項目数は限定されないものである。例えば、図14に示す店舗選択画面において、検索条件として空席数又は距離の一方のみ受け付けるようにしてもよいし、その他の条件を付加するようにしてもよい。なお、図14に示す店舗選択画面では、空席数及び距離の入力受付を行う例についてしめしたが、特に空席数及び距離の入力を受けずに、サーバアプリ32で既定の値(予め設定された値)を適用するようにしてもよい。   Note that the items and the number of items of the search condition on the store selection screen are not limited. For example, on the store selection screen shown in FIG. 14, only one of the number of vacant seats or the distance may be received as a search condition, or another condition may be added. Note that, in the store selection screen shown in FIG. 14, an example in which the number of vacant seats and the distance are input is described. However, the input of the number of vacant seats and the distance is not particularly input, and the default values (preset values) are set in the server application 32. Value) may be applied.

図14(a)に示す店舗選択画面で、ボタンB201が押下されると、サーバアプリ32は、クライアント端末50の位置情報を取得し、取得したクライアント端末50の位置からフィールドF102に設定された距離以内で、かつ、フィールドF101に設定された以上の空席数のある店舗を、店舗情報DB421の(店舗情報の項目)の内容から検索する。サーバアプリ32がクライアント端末50の位置情報を取得する方式は限定されないものである。例えば、サーバアプリ32は、クライアント端末50に、要求して位置情報を取得するようにしてもよい。クライアント端末50は、例えば、GPSや携帯電話会社キャリア網との通信に基づいて位置情報を取得するようにしてもよい。また、サーバアプリ32は、例えば、インターネット上の地図情報データベース(例えば、Googleマップ(登録商標)等のデータ)に基づいて、各店舗の住所に基づく位置情報を取得するようにしてもよい。   When the button B201 is pressed on the store selection screen shown in FIG. 14A, the server application 32 acquires the position information of the client terminal 50, and sets the distance set in the field F102 from the acquired position of the client terminal 50. A store within which the number of vacant seats is equal to or greater than the number set in the field F101 is searched from the contents of the (store information item) of the store information DB 421. The method by which the server application 32 acquires the position information of the client terminal 50 is not limited. For example, the server application 32 may request the client terminal 50 to acquire the position information. For example, the client terminal 50 may acquire the position information based on communication with a GPS or a carrier network of a mobile phone company. In addition, the server application 32 may acquire the location information based on the address of each store, for example, based on a map information database on the Internet (for example, data such as Google Map (registered trademark)).

ここでは、合致する店舗が「AAAカフェ」(第1の店舗)のみであったものとする。そうすると、サーバアプリ32は、店舗選択画面を、図14(b)に示すように、合致した店舗である「AAAカフェ」(第1の店舗)のボタンB101のみを表示した状態に遷移させる。また、図14(b)では、検索条件を示すメッセージ「ここから200m以内で空席が2以上空いている店舗は下記です。」を表示している。検索条件に合致する店舗が複数ある場合、サーバアプリ32は、検索情報を構成するいずれかの条件に基づく順序(例えば、距離の近い順序や空席数の多い順序で)各店舗のボタンを表示するようにしてもよい。図14に示す店舗選択画面では、サーバアプリ32は、図14(a)の画面でボタンB201が押下されたことを契機に、クライアント端末50及び各店舗の情報を取得して図14(b)の画面に遷移する構成となっているが、サーバアプリ32は、図14(a)の画面を経ずに、最初から予め設定された検索情報(空席数及び距離)に基づいて検出した店舗を表示(図14(b)の画面を表示)するようにしてもよい。   Here, it is assumed that the matching store is only “AAA cafe” (first store). Then, the server application 32 changes the store selection screen to a state in which only the button B101 of the “AAA cafe” (first store), which is the matching store, is displayed, as shown in FIG. In addition, in FIG. 14B, a message indicating a search condition is displayed, "Stores having two or more vacant seats within 200 m from here are as follows." When there are a plurality of stores that match the search condition, the server application 32 displays a button for each store based on an order based on any of the conditions constituting the search information (for example, in the order of the shortest distance or in the order of the number of empty seats). You may do so. In the store selection screen shown in FIG. 14, the server application 32 acquires information on the client terminal 50 and each store when the button B201 is pressed on the screen in FIG. 14A, the server application 32 detects a store that has been detected based on search information (vacancy number and distance) preset from the beginning without going through the screen of FIG. It may be displayed (the screen of FIG. 14B is displayed).

1…席情報処理システム、10、10−1〜10−N…カメラ、20、20−1〜20−N…ローカルコンピュータ、21…映像取得部、22…オブジェクト認識部、23…席情報処理部、24…データ記録部、30…Webアプリサーバ、31…Webサービス部、32…サーバアプリ、33…データ記録部、40…DBサーバ、41…DB処理部、42…データ記録部、421…店舗情報DB、50…クライアント端末、51…タッチパネルディスプレイ、52…クライアントアプリ。   DESCRIPTION OF SYMBOLS 1 ... Seat information processing system, 10, 10-1-10-N ... Camera, 20, 20-1-20-N ... Local computer, 21 ... Video acquisition part, 22 ... Object recognition part, 23 ... Seat information processing part , 24: Data recording unit, 30: Web application server, 31: Web service unit, 32: Server application, 33: Data recording unit, 40: DB server, 41: DB processing unit, 42: Data recording unit, 421: Store Information DB, 50: client terminal, 51: touch panel display, 52: client application.

Claims (5)

1又は複数の席が配置されている施設内を撮像する撮像手段と、
前記撮像手段が撮像した画像から人オブジェクトを検出する人オブジェクト検出処理を行い、前記施設内の席の位置に関する情報を用いずに、前記人オブジェクト検出処理の結果に基づき、前記施設内の席の利用者数を示す席利用者数を取得する席情報取得手段と、
前記施設内の設置席数の情報を保持する設置席数保持手段と、
前記施設内の席の位置に関する情報を用いずに、前記設置席数と前記席利用者数に基づいて前記施設内の空席に関する情報を席情報として取得し、取得した席情報を被情報提供者に提供する席情報提供手段とを有し、
前記席情報取得手段は、前記人オブジェクト検出処理により検出された人オブジェクトから、それぞれの人オブジェクトの動きに基づき席に着席している着席者を検出する着席者検出処理を行い、前記着席者検出処理により検出した前記着席者の数を前記席利用者数として取得する
ことを特徴とする席情報処理システム。
Imaging means for imaging an inside of a facility where one or more seats are arranged;
Performing a human object detection process of detecting a human object from the image captured by the imaging unit, without using information on the position of the seat in the facility , based on the result of the human object detection process, based on the result of the human object detection process , Seat information acquisition means for acquiring the number of seat users indicating the number of users ;
Installed seat number holding means for holding information of the installed seat number in the facility,
Without using information on the positions of the seats in the facility, information on vacant seats in the facility is obtained as seat information based on the number of seats installed and the number of seat users, and the obtained seat information is provided by the information-provided provider. And means for providing seat information to the
The seat information acquisition means performs a occupant detection process of detecting a occupant sitting in a seat based on the movement of each person object from the person objects detected by the person object detection process. A seat information processing system , wherein the number of seats detected by processing is acquired as the number of seat users .
1又は複数の席が配置されている施設内を撮像する撮像手段が撮像した画像から人オブジェクトを検出する人オブジェクト検出処理を行い、前記施設内の席の位置に関する情報を用いずに、前記人オブジェクト検出処理の結果に基づき、前記施設内の席の利用者数を示す席利用者数を取得する席情報取得手段と、
前記施設内の設置席数の情報を保持する設置席数保持手段と、
前記施設内の席の位置に関する情報を用いずに前記施設内の設置席数と前記席利用者数に基づいて前記施設内の空席に関する情報を取得して被情報提供者に提供する外部の席情報提供装置に対して、前記席利用者数を含む情報を送信する送信手段とを有し、
前記席情報取得手段は、前記人オブジェクト検出処理により検出された人オブジェクトから、それぞれの人オブジェクトの動きに基づき席に着席している着席者を検出する着席者検出処理を行い、前記着席者検出処理により検出した前記着席者の数を前記席利用者数として取得する
ことを特徴とする席情報取得装置。
The image pickup means for picking up the inside of the facility where one or more seats are arranged performs a human object detection process for detecting a human object from the image taken, and without using information on the positions of the seats in the facility, Seat information acquisition means for acquiring the number of seat users indicating the number of seats in the facility based on the result of the object detection process;
Installed seat number holding means for holding information of the installed seat number in the facility,
An external seat that obtains information on vacant seats in the facility based on the number of seats installed in the facility and the number of seat users without using information on the position of the seats in the facility and provides the information-provided person with the information. Transmitting means for transmitting information including the number of seat users to the information providing apparatus,
The seat information acquisition means performs a occupant detection process of detecting a occupant sitting in a seat based on the movement of each person object from the person objects detected by the person object detection process. A seat information acquiring apparatus , wherein the number of seated persons detected by processing is acquired as the number of seat users .
コンピュータを、
1又は複数の席が配置されている施設内を撮像する撮像手段が撮像した画像から人オブジェクトを検出する人オブジェクト検出処理を行い、前記施設内の席の位置に関する情報を用いずに、前記人オブジェクト検出処理の結果に基づき、前記施設内の席の利用者数を示す席利用者数を取得する席情報取得手段と、
前記施設内の設置席数の情報を保持する設置席数保持手段と、
前記施設内の席の位置に関する情報を用いずに前記施設内の設置席数と前記席利用者数に基づいて前記施設内の空席に関する情報を取得して被情報提供者に提供する外部の席情報提供装置に対して、前記席利用者数を含む情報を送信する送信手段として機能させ、
前記席情報取得手段は、前記人オブジェクト検出処理により検出された人オブジェクトから、それぞれの人オブジェクトの動きに基づき席に着席している着席者を検出する着席者検出処理を行い、前記着席者検出処理により検出した前記着席者の数を前記席利用者数として取得する
ことを特徴とする席情報取得プログラム。
Computer
The image pickup means for picking up the inside of the facility where one or more seats are arranged performs a human object detection process for detecting a human object from the image taken, and without using information on the positions of the seats in the facility, Seat information acquisition means for acquiring the number of seat users indicating the number of seats in the facility based on the result of the object detection process;
Installed seat number holding means for holding information of the installed seat number in the facility,
An external seat that obtains information on vacant seats in the facility based on the number of seats installed in the facility and the number of seat users without using information on the positions of seats in the facility and provides the information-provided person with the information. Causing the information providing device to function as transmission means for transmitting information including the number of seat users,
The seat information acquisition means performs a occupant detection process of detecting a occupant sitting in a seat based on the movement of each person object from the person objects detected by the person object detection process. A seat information acquisition program for acquiring the number of seated persons detected by processing as the number of seat users .
請求項に記載の席情報取得装置で取得した前記席利用者数を保持し、更に前記施設内の設置席数を保持し、前記施設内の席の位置に関する情報を用いずに、前記設置席数と前記席利用者数に基づいて前記施設内の空席に関する情報を席情報として取得し、取得した席情報を被情報提供者に提供する席情報提供手段を有することを特徴とする席情報提供装置。 The number of seat users acquired by the seat information acquisition device according to claim 2 , the number of seats installed in the facility is further maintained, and the number of seats installed in the facility is maintained without using information on the position of the seat in the facility. Seat information providing means for obtaining information on vacant seats in the facility as seat information based on the number of seats and the number of seat users, and providing the obtained seat information to the informed party; Providing device. コンピュータを、
請求項に記載の席情報取得装置で取得した前記席利用者数を保持し、前記席利用者数を保持し、更に前記施設内の設置席数を保持し、前記施設内の席の位置に関する情報を用いずに、前記設置席数と前記席利用者数に基づいて前記施設内の空席に関する情報を席情報として取得し、取得した席情報を被情報提供者に提供する席情報提供手段として機能させることを特徴とする席情報提供プログラム。
Computer
The number of seats acquired by the seat information acquisition device according to claim 2 , the number of seats is retained, the number of seats installed in the facility is further retained, and the position of a seat in the facility is retained. Seat information providing means for acquiring information on vacant seats in the facility as seat information based on the number of installed seats and the number of seat users without using information on the seats , and providing the acquired seat information to an informed party A seat information providing program characterized by functioning as a.
JP2017229483A 2017-11-29 2017-11-29 Seat information processing system, seat information acquisition device and program, and seat information providing device and program Active JP6648094B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2017229483A JP6648094B2 (en) 2017-11-29 2017-11-29 Seat information processing system, seat information acquisition device and program, and seat information providing device and program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2017229483A JP6648094B2 (en) 2017-11-29 2017-11-29 Seat information processing system, seat information acquisition device and program, and seat information providing device and program

Publications (2)

Publication Number Publication Date
JP2019101572A JP2019101572A (en) 2019-06-24
JP6648094B2 true JP6648094B2 (en) 2020-02-14

Family

ID=66973668

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2017229483A Active JP6648094B2 (en) 2017-11-29 2017-11-29 Seat information processing system, seat information acquisition device and program, and seat information providing device and program

Country Status (1)

Country Link
JP (1) JP6648094B2 (en)

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4045748B2 (en) * 2001-02-26 2008-02-13 日本電気株式会社 Monitoring system and method
JP2011008454A (en) * 2009-06-25 2011-01-13 Hitachi Ltd Information providing system
JP6984992B2 (en) * 2015-09-30 2021-12-22 日本電気株式会社 Information processing equipment, information processing methods, programs, and seat reservation systems
JP6672050B2 (en) * 2016-04-14 2020-03-25 富士電機機器制御株式会社 Support system, support device, support method, and program
JP6153177B1 (en) * 2016-11-02 2017-06-28 株式会社バカン Digital signage control device, digital signage control program, and digital signage system

Also Published As

Publication number Publication date
JP2019101572A (en) 2019-06-24

Similar Documents

Publication Publication Date Title
US9836115B2 (en) Information processing device, information processing method, and program
US9661214B2 (en) Depth determination using camera focus
US6976032B1 (en) Networked peripheral for visitor greeting, identification, biographical lookup and tracking
US11417009B2 (en) Systems and methods for object measurement
JP6157044B1 (en) Seat display device, seat display program, and seat display system
CN103140862A (en) User interface system and method of operation thereof
US20120065749A1 (en) Display of Devices on an Interface based on a Contextual Event
JP6185216B1 (en) Information providing system, information providing apparatus, information providing method, and program
CN111742338A (en) Office seat presentation system and office seat presentation method
CN110772177B (en) Information processing method, information processing apparatus, and recording medium
US20220019472A1 (en) Method of storing electronic data, resource reservation system, and terminal apparatus
TW202016796A (en) Displaying data related to objects in images
JP7139236B2 (en) Image processing device, image processing method and image processing program
US20220019945A1 (en) Method of providing electronic data, system, and terminal apparatus
US20200193358A1 (en) Adaptive restaurant management system
JP6648094B2 (en) Seat information processing system, seat information acquisition device and program, and seat information providing device and program
JP2019159953A (en) Table information provision system, information processing device and program
JP6764105B2 (en) Seat information processing system, seat information acquisition device and seat information acquisition program
JP2005293395A (en) Meal information management system
JPWO2018020609A1 (en) Vacant seat management system, vacant seat management method and program
US20200143453A1 (en) Automated Window Estimate Systems and Methods
JP5947902B2 (en) Face-to-face data generation apparatus and face-to-face data generation method
US10867502B1 (en) Method and apparatus for reuniting group members in a retail store
JP2005184624A (en) Commodity sale/management method, commodity sale/management system, and server
US20200250738A1 (en) Shopping guide method and shopping guide platform

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20190722

A871 Explanation of circumstances concerning accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A871

Effective date: 20190724

A975 Report on accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A971005

Effective date: 20190808

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20191112

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20191203

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20200115

R150 Certificate of patent or registration of utility model

Ref document number: 6648094

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313113

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350