WO2018235198A1 - 情報処理装置、制御方法、及びプログラム - Google Patents

情報処理装置、制御方法、及びプログラム Download PDF

Info

Publication number
WO2018235198A1
WO2018235198A1 PCT/JP2017/022875 JP2017022875W WO2018235198A1 WO 2018235198 A1 WO2018235198 A1 WO 2018235198A1 JP 2017022875 W JP2017022875 W JP 2017022875W WO 2018235198 A1 WO2018235198 A1 WO 2018235198A1
Authority
WO
WIPO (PCT)
Prior art keywords
analysis target
reference position
target area
product
captured image
Prior art date
Application number
PCT/JP2017/022875
Other languages
English (en)
French (fr)
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 PCT/JP2017/022875 priority Critical patent/WO2018235198A1/ja
Priority to JP2019524778A priority patent/JP7197171B2/ja
Priority to US16/623,656 priority patent/US20210142490A1/en
Publication of WO2018235198A1 publication Critical patent/WO2018235198A1/ja
Priority to US17/349,045 priority patent/US11763463B2/en
Priority to JP2021112713A priority patent/JP7332183B2/ja
Priority to US18/227,848 priority patent/US20240029273A1/en
Priority to US18/227,850 priority patent/US20230410321A1/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/20Analysis of motion
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q30/00Commerce
    • G06Q30/02Marketing; Price estimation or determination; Fundraising
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/20Analysis of motion
    • G06T7/246Analysis of motion using feature-based methods, e.g. the tracking of corners or segments
    • G06T7/248Analysis of motion using feature-based methods, e.g. the tracking of corners or segments involving reference images or patches
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/70Determining position or orientation of objects or cameras
    • G06T7/73Determining position or orientation of objects or cameras using feature-based methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/70Determining position or orientation of objects or cameras
    • G06T7/73Determining position or orientation of objects or cameras using feature-based methods
    • G06T7/74Determining position or orientation of objects or cameras using feature-based methods involving reference images or patches
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/20Image preprocessing
    • G06V10/255Detecting or recognising potential candidate objects based on visual cues, e.g. shapes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/50Context or environment of the image
    • G06V20/52Surveillance or monitoring of activities, e.g. for recognising suspicious objects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V40/00Recognition of biometric, human-related or animal-related patterns in image or video data
    • G06V40/10Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
    • G06V40/107Static hand or arm
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V40/00Recognition of biometric, human-related or animal-related patterns in image or video data
    • G06V40/20Movements or behaviour, e.g. gesture recognition
    • G06V40/28Recognition of hand or arm movements, e.g. recognition of deaf sign language
    • GPHYSICS
    • G08SIGNALLING
    • G08BSIGNALLING OR CALLING SYSTEMS; ORDER TELEGRAPHS; ALARM SYSTEMS
    • G08B13/00Burglar, theft or intruder alarms
    • G08B13/18Actuation by interference with heat, light, or radiation of shorter wavelength; Actuation by intruding sources of heat, light, or radiation of shorter wavelength
    • G08B13/189Actuation by interference with heat, light, or radiation of shorter wavelength; Actuation by intruding sources of heat, light, or radiation of shorter wavelength using passive radiation detection systems
    • G08B13/194Actuation by interference with heat, light, or radiation of shorter wavelength; Actuation by intruding sources of heat, light, or radiation of shorter wavelength using passive radiation detection systems using image scanning and comparing systems
    • G08B13/196Actuation by interference with heat, light, or radiation of shorter wavelength; Actuation by intruding sources of heat, light, or radiation of shorter wavelength using passive radiation detection systems using image scanning and comparing systems using television cameras
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/10Image acquisition modality
    • G06T2207/10016Video; Image sequence
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/10Image acquisition modality
    • G06T2207/10016Video; Image sequence
    • G06T2207/10021Stereoscopic video; Stereoscopic image sequence
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/10Image acquisition modality
    • G06T2207/10028Range image; Depth image; 3D point clouds
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20081Training; Learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/30Subject of image; Context of image processing
    • G06T2207/30196Human being; Person
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/30Subject of image; Context of image processing
    • G06T2207/30232Surveillance

Definitions

  • the present invention relates to image analysis.
  • a customer takes out and purchases goods displayed at a display place (for example, a product shelf).
  • a display place for example, a product shelf
  • the customer may return the goods once taken to the display place.
  • Techniques have been developed to analyze customer behavior with respect to such displayed products.
  • Patent Document 1 detects that an object (human hand) enters a specific area (shelf) using a depth image obtained from an imaging result by a depth camera, and detects a color image near the entry position before and after entry.
  • the color increase exceeds the threshold by comparing a color image including the hand of a person entering a specific area with a color image including a hand of a person exiting the specific area
  • the user's action of “acquisition of goods”, “return of goods” when the decrease in color exceeds the threshold, and “contact” when the change in color is less than the threshold is specified.
  • Patent Document 1 discloses a technology for discriminating between acquisition and return of goods by judging increase or decrease of the volume of the subject from the information of the size of the subject obtained from the imaging result by the depth camera.
  • the degree of increase or decrease in color and volume before and after the hand of a person enters the display place is affected by, for example, changes in the size of the product or the posture of the hand of the man. For example, when small goods are taken out of the display place, the increase in color and volume before and after that is small.
  • the action of changing the posture of the hand may be erroneously recognized as the action of acquiring a product.
  • the present invention has been made in view of the above problems.
  • One of the objects of the present invention is to provide a technique for identifying a person's action on a displayed item with high accuracy.
  • An information processing apparatus includes: 1) detection means for detecting a reference position indicating the position of a human hand included in the captured image from the captured image obtained by capturing a display place of an object; 2) the detected A determination unit that determines an analysis target area in the captured image using the reference position and determines the analysis target area; and 3) analyzing the determined analysis target area to obtain the motion of the person. And specifying means for specifying.
  • the control method of the present invention is a control method executed by a computer.
  • the control method includes: 1) detecting the reference position indicating the position of the human hand included in the captured image from the captured image in which the display place of the object is captured; 2) the detected reference position A determination step of determining an analysis target area in the captured image and determining the analysis target area; and 3) specifying the action of the person by analyzing the determined analysis target area. And step.
  • the program of the present invention causes a computer to execute each step of the control method of the present invention.
  • FIG. 7 is a diagram conceptually illustrating an operation of the information processing device according to the first embodiment.
  • FIG. 2 is a block diagram showing an example of a functional configuration of the information processing apparatus according to the first embodiment. It is a figure which illustrates the computer for realizing an information processor.
  • 5 is a flowchart illustrating the flow of processing executed by the information processing apparatus of the first embodiment; It is a 1st figure which illustrates the imaging range of a camera. It is a 2nd figure which illustrates the imaging range of a camera. It is a figure which illustrates the case where a mode that the state where it imaged from the right side facing a product shelf is contained in a captured image.
  • 15 is a flowchart illustrating the flow of processing for identifying the operation of the customer 20.
  • 15 is a flowchart illustrating the flow of processing for identifying the operation of the customer 20.
  • each block diagram represents a configuration of a function unit, not a configuration of a hardware unit, unless otherwise described.
  • FIG. 1 is a diagram conceptually illustrating the operation of an information processing apparatus (an information processing apparatus 2000 shown in FIG. 2 and the like described later) according to the first embodiment. Note that FIG. 1 is a diagram for illustrating an example intended to facilitate understanding of the operation of the information processing apparatus 2000, and the operation of the information processing apparatus 2000 is not limited by FIG.
  • the information processing apparatus 2000 identifies a human action by analyzing the captured image 12 generated by the camera 10.
  • the camera 10 is a camera for imaging a display place where an object is displayed.
  • the camera 10 repeatedly performs imaging to generate a plurality of captured images 12.
  • the plurality of captured images 12 to be generated are, for example, a frame group constituting moving image data.
  • the plurality of captured images 12 generated by the camera 10 need not necessarily constitute moving image data, and may be treated as individual still image data.
  • An object to be imaged by the camera 10 is any item that is displayed in the display area and taken out by the person from the display area, and conversely placed by the person in the display area (returned) Can. Specifically, what kind of object is to be imaged by the camera 10 differs depending on the usage environment of the information processing apparatus 2000.
  • the information processing apparatus 2000 is used to specify the operation of a customer or a store clerk in a store.
  • the object imaged by the camera 10 is a product sold at a store.
  • the display place is, for example, a product shelf.
  • the information processing apparatus 2000 is used to specify the operation of the customer 20. Therefore, the person and the thing imaged by the camera 10 are the customer 20 and the product 40, respectively. Further, the display place is the product shelf 50.
  • the information processing apparatus 2000 is used to specify an operation of a factory worker or the like.
  • the person imaged by the camera 10 is a worker or the like.
  • objects to be imaged by the camera 10 are materials, tools, and the like used in a factory.
  • the display place is, for example, a shelf installed in a warehouse of a factory.
  • the information processing apparatus 2000 is used to specify the operation of the customer (the customer 20 in FIG. 1) in the store will be described as an example unless otherwise specified. Therefore, the “person's action” specified by the specifying unit 2060 is “customer's action”. Further, it is assumed that the "object” imaged by the camera is “merchandise”. Furthermore, it is assumed that the "display place” is the "product shelf”.
  • the information processing device 2000 detects the reference position 24 from the captured image 12.
  • the reference position 24 indicates the position of the human hand.
  • the position of the human hand is, for example, the center position of the hand or the position of the fingertip.
  • the information processing apparatus 2000 determines a region (analysis target region 30) to be analyzed in the captured image 12 using the reference position 24. Then, the information processing apparatus 2000 analyzes the analysis target area 30 to specify the operation of the customer 20.
  • the operation of the customer 20 is an operation of holding the product 40, an operation of removing the product 40 from the product shelf 50, or an operation of placing the product 40 on the product shelf 50.
  • the information processing apparatus 2000 first detects the reference position 24 indicating the position of the hand of the customer 20 in the captured image 12, and determines the analysis target area 30 based on the reference position 24. That is, image analysis is performed on the vicinity of the hands of the customer 20. Therefore, even if the size of the product 40 is small or the hand posture of the customer 20 largely fluctuates, the hand of the customer 20 acquires the product 40, places the product 40, holds the product 40, etc. It is possible to accurately specify the motion due to
  • FIG. 2 is a block diagram showing an example of the functional configuration of the information processing apparatus 2000 according to the first embodiment.
  • the information processing apparatus 2000 includes a detection unit 2020, a determination unit 2040, and a specification unit 2060.
  • the detection unit 2020 detects a reference position 24 of a human hand included in the captured image 12 from the captured image 12.
  • the determination unit 2040 determines the analysis target area 30 in the captured image 12 using the detected reference position 24.
  • the identifying unit 2060 identifies the movement of the person by analyzing the determined analysis target area 30.
  • Each functional component of the information processing apparatus 2000 may be realized by hardware (for example, a hard-wired electronic circuit or the like) that realizes each functional component, or a combination of hardware and software (for example: It may be realized by a combination of an electronic circuit and a program for controlling it.
  • hardware for example, a hard-wired electronic circuit or the like
  • software for example: It may be realized by a combination of an electronic circuit and a program for controlling it.
  • each functional configuration unit of the information processing apparatus 2000 is realized by a combination of hardware and software will be further described.
  • FIG. 3 is a diagram illustrating a computer 1000 for realizing the information processing apparatus 2000.
  • the computer 1000 is an arbitrary computer.
  • the computer 1000 is a personal computer (PC), a server machine, a tablet terminal, a smartphone, or the like.
  • the computer 1000 may be the camera 10.
  • the computer 1000 may be a dedicated computer designed to realize the information processing apparatus 2000, or may be a general-purpose computer.
  • the computer 1000 includes a bus 1020, a processor 1040, a memory 1060, a storage device 1080, an input / output interface 1100, and a network interface 1120.
  • the bus 1020 is a data transmission path for the processor 1040, the memory 1060, the storage device 1080, the input / output interface 1100, and the network interface 1120 to mutually transmit and receive data.
  • the processor 1040 is an arithmetic device such as a central processing unit (CPU) or a graphics processing unit (GPU).
  • the memory 1060 is a main storage device implemented using a random access memory (RAM) or the like.
  • the storage device 1080 is an auxiliary storage device implemented using a hard disk, a solid state drive (SSD), a memory card, or a read only memory (ROM). However, the storage device 1080 may be configured by hardware similar to the hardware that configures the main storage device, such as a RAM.
  • the input / output interface 1100 is an interface for connecting the computer 1000 and an input / output device.
  • the network interface 1120 is an interface for connecting the computer 1000 to a communication network.
  • This communication network is, for example, a LAN (Local Area Network) or a WAN (Wide Area Network).
  • the method of connecting the network interface 1120 to the communication network may be wireless connection or wired connection.
  • the computer 1000 is communicably connected to the camera 10 via a network.
  • the method of communicably connecting the computer 1000 to the camera 10 is not limited to connection via a network.
  • the computer 1000 only needs to be able to acquire the captured image 12 generated by the camera 10, and the computer 1000 does not necessarily have to be communicably connected to the camera 10.
  • the storage device 1080 stores program modules for realizing the respective functional components (the detection unit 2020, the determination unit 2040, and the identification unit 2060) of the information processing apparatus 2000.
  • the processor 1040 implements the functions corresponding to each program module by reading the program modules into the memory 1060 and executing them.
  • the camera 10 is any camera that can repeatedly perform imaging and generate a plurality of captured images 12.
  • the camera 10 may be a video camera that generates moving image data, or may be a still camera that generates still image data.
  • the captured image 12 is a moving image frame constituting moving image data.
  • the camera 10 may be a two-dimensional camera or a three-dimensional camera (stereo camera or depth camera).
  • the captured image 12 may be a depth image.
  • the depth image is an image in which the value of each pixel of the image represents the distance between the imaged object and the camera.
  • the camera 10 may be an infrared camera.
  • the computer 1000 that implements the information processing apparatus 2000 may be the camera 10.
  • the camera 10 specifies the operation of the customer 20 by analyzing the captured image 12 generated by itself.
  • a camera called an intelligent camera, a network camera, or an IP (Internet Protocol) camera can be used as the camera 10 having such a function.
  • FIG. 4 is a flowchart illustrating the flow of processing executed by the information processing apparatus 2000 of the first embodiment.
  • the detection unit 2020 acquires the captured image 12 (S102).
  • the detection unit 2020 detects the reference position 24 of the hand of the product 40 from the acquired captured image 12 (S104).
  • the determination unit 2040 determines the analysis target area 30 using the detected reference position 24 (S106).
  • the identifying unit 2060 analyzes the image of the determined analysis target area 30 (S108).
  • the identifying unit 2060 identifies the operation of the customer 20 based on the result of image analysis of the analysis target area 30 (S108).
  • a plurality of captured images 12 may be used to specify the operation of the customer 20.
  • the operation of the customer 20 is specified by performing image analysis on the analysis target area 30 determined for each of the plurality of captured images 12 (image analyzing the plurality of analysis target areas 30). That is, the processes of S102 to S108 are performed on each of the plurality of captured images 12, and the process of S110 is performed using the results.
  • Timing for Information Processing Apparatus 2000 to Execute Processing The timing at which the information processing device 2000 executes the series of processes shown in FIG. 4 is various. For example, each time the captured image 12 is generated by the camera 10, the information processing apparatus 2000 executes a series of processes shown in FIG. 4 on the captured image 12.
  • the information processing apparatus 2000 executes a series of processes shown in FIG. 4 at predetermined time intervals (for example, every second). In this case, for example, the information processing apparatus 2000 acquires the latest captured image 12 generated by the camera 10 at the timing of starting a series of processes shown in FIG. 4.
  • the detection unit 2020 acquires the captured image 12 (S102).
  • the method by which the detection unit 2020 acquires the captured image 12 is arbitrary.
  • the detection unit 2020 receives the captured image 12 transmitted from the camera 10. Further, for example, the detection unit 2020 accesses the camera 10 and acquires the captured image 12 stored in the camera 10.
  • the camera 10 may store the captured image 12 in a storage device provided outside the camera 10.
  • the detection unit 2020 accesses the storage device to acquire the captured image 12.
  • the information processing apparatus 2000 acquires a captured image 12 generated by the information processing apparatus 2000 itself.
  • the captured image 12 is stored in, for example, the memory 1060 or the storage device 1080 (see FIG. 3) inside the information processing apparatus 2000. Therefore, the detection unit 2020 acquires the captured image 12 from the memory 1060 or the storage device 1080.
  • the captured image 12 (that is, the imaging range of the camera 10) includes at least a range before the commodity shelf 50.
  • FIG. 5 is a first diagram illustrating an imaging range of the camera 10.
  • the imaging range 14 of the camera 10 includes the range of the distance d1 from the front to the front of the product shelf 50.
  • FIG. 6 is a second diagram illustrating the imaging range of the camera 10.
  • the imaging range 14 of the camera 10 includes the range from the position at which the front of the product 40 is d2 to the front and the position at which the front of the product 40 is d3.
  • the captured image 12 of FIG.5 and FIG.6 is a mode that the goods shelf 50 was seen down from the top.
  • the camera 10 is installed to image the product shelf 50 from above the product shelf 50.
  • what is included in the captured image 12 may not look as if the product shelf 50 is viewed from above.
  • the captured image 12 may include a state in which the product shelf 50 is captured from the side.
  • FIG. 7 is a view exemplifying a case in which a state in which the product shelf 50 is imaged from the right side toward the product shelf 50 is included in the captured image 12.
  • the detection unit 2020 detects the reference position 24 from the captured image 12 (S104).
  • the reference position 24 indicates the position of the hand of the customer 20.
  • the position of the hand of the customer 20 is, for example, the center position of the hand or the position of the fingertip.
  • the detection unit 2020 detects the reference position 24 from the captured image 12. For example, the detecting unit 2020 matches the feature amount of the captured image 12 by performing feature amount matching using a feature amount of a human hand prepared in advance (the similarity to the feature amount is high) Detect the area. Then, the detection unit 2020 detects the detected area, that is, a predetermined position (for example, the center position) of the area representing the hand as the reference position 24 of the hand.
  • the detection unit 2020 may detect the reference position 24 using machine learning.
  • the detection unit 2020 is configured as a detector using machine learning.
  • the detection unit 2020 is learned in advance by using one or more captured images (a set of the captured image and the coordinates of the reference position 24 in the captured image) of which the reference position 24 is known. By doing this, the detection unit 2020 can detect the reference position 24 from the acquired captured image 12.
  • various models such as a neural network, can be used for the prediction model of machine learning.
  • learning of the detection unit 2020 be performed on the hands of the customer 20 in various postures.
  • a captured image for learning is prepared for the hands of the customers 20 in various postures.
  • the detection unit 2020 may detect various parameters regarding the hand of the customer 20. For example, the detection unit 2020 detects the width, length, posture of the hand, the distance between the reference position 24 and the camera 10, and the like. When using feature amount matching, the detection unit 2020 specifies the width, length, posture, and the like of the hand from the shape and size of the detected hand area. When machine learning is used, the detection unit 2020 is trained using one or more captured images whose hand width, length, posture, and the distance between the reference position 24 and the camera 10 are known. Keep it. By doing this, the detection unit 2020 can detect various parameters such as the width of the hand from the acquired captured image 12 in addition to the reference position 24.
  • the determination unit 2040 determines the analysis target area 30 using the detected reference position 24 (S106). There are various methods for the determination unit 2040 to determine the analysis target area 30. For example, the determination unit 2040 is a region of a predetermined shape determined based on the reference position 24 among the regions included in the captured image 12.
  • FIG. 8 is a diagram illustrating an analysis target area 30 determined as an area of a predetermined shape determined based on the reference position 24.
  • FIG. 8A shows a case where the reference position 24 is used as a position representing a predetermined position of the analysis target area 30.
  • the analysis target area 30 in FIG. 8A is a rectangle having the reference position 24 as a center.
  • the height of the analysis target area 30 is h and is a rectangle of width w.
  • the reference position 24 may be used as a position that determines other than the center of the analysis target area 30, such as the upper left end or the lower right end of the analysis target area 30.
  • FIG. 8B shows a case where a predetermined position (such as the center or the upper left end) of the analysis target area 30 is determined by a position having a predetermined relationship with the reference position 24.
  • the analysis target area 30 in FIG. 8B is a rectangle whose center is a position moved by a predetermined vector v from the reference position 24.
  • the size and the direction are the same as the analysis target area 30 of FIG. 8 (a).
  • the direction of the analysis target area 30 is determined based on the axial direction of the captured image 12. More specifically, the height direction of the analysis target area 30 is defined as the Y-axis direction of the captured image 12. However, the direction of the analysis target area 30 may be determined based on other than the axial direction of the captured image 12.
  • FIG. 9 is a diagram illustrating a case where the direction of the analysis target area 30 is determined based on the direction of the hand of the customer 20.
  • the direction of the analysis target area 30 is determined as the depth direction of the hand (the direction from the wrist to the fingertip).
  • the determination unit 2040 perform geometric transformation so as to align the directions of the plurality of analysis target areas 30. For example, the determination unit 2040 extracts the analysis target area 30 from each captured image 12 and geometrically transforms each extracted analysis target area 30 so that the depth direction of the hand of the customer 20 faces the Y axis direction.
  • the size of the analysis target area 30 may be statically determined or dynamically determined. In the latter case, the size of the analysis target area 30 is determined, for example, by the following formula (1).
  • h and w are the height and width of the analysis target area 30, respectively.
  • sb is a reference area predetermined for the hand area.
  • hb and wb are respectively the height and width of the analysis target area 30 determined in advance in association with the reference area.
  • sr is the area of the hand area detected from the captured image 12 by the detection unit 2020.
  • the size of the analysis target area 30 may be dynamically determined using the following formula (2).
  • h and w are the height and width of the analysis target area 30, respectively.
  • db is a predetermined reference distance value.
  • hb and wb are respectively the height and width of the analysis object area
  • dr is a distance value between the reference position 24 detected from the captured image 12 and the camera 10;
  • the detection unit 2020 specifies the distance value dr based on the pixel value of the reference position 24 in the depth image generated by the depth camera.
  • the detection unit 2020 is configured as a detector using machine learning, the detection unit 2020 is configured to detect the distance between the reference position 24 and the camera 10 in addition to the reference position 24. May be
  • each pixel of the analysis target area 30 determined by the above-described method may be corrected, and the analysis target area 30 after correction may be used for image analysis by the specifying unit 2060.
  • the determination unit 2040 corrects each pixel of the analysis target area 30 using, for example, the following Expression (3).
  • d (x, y) 0 is a pixel value before correction at coordinates (x, y) of the analysis target area 30 in the photographed image 12.
  • d (x, y) 1 is a pixel value after correction at coordinates (x, y) of the analysis target area 30 in the photographed image 12.
  • the identifying unit 2060 analyzes the determined analysis target area 30 to identify the operation of the customer 20 (S108, S110).
  • the operation of the customer 20 is, for example, (1) an operation of taking out the product 40 from the product shelf 50, (2) an operation of placing the product 40 on the product shelf 50, and (3) holding the product 40 both before and after contact with the product shelf 50 One of the operation that is not performed and the operation that holds the product 40 both before and after the contact with the product shelf 50.
  • contact between the product shelf 50 and the customer 20 means that the image area of the product shelf 50 and the image area of the customer 20 at least partially overlap in the captured image 12, and the product shelf in the real space There is no need for the customer 50 to be in contact with the customer 20.
  • the product 40 held by the customer 20 before contact with the customer 20 and the product shelf 50 and the product 40 held by the customer 20 after contact between the customer 20 and the product shelf 50 are And may be identical to each other or different from each other.
  • the flow of processing for determining the four operations described above is, for example, the flow shown in FIG. 10 and 11 are flowcharts illustrating the process flow for identifying the operation of the customer 20.
  • the identifying unit 2060 detects the captured image 12 including the movement of the reference position 24 toward the product shelf 50 (S202).
  • the specifying unit 2060 calculates the distance between the reference position 24 and the product shelf 50 for each of the plurality of captured images 12 in time series. And when the said distance is reducing with time in one or more captured images 12, the captured image 12 in which the mode that the reference (standard) position 24 is moved toward the goods shelf 50 is included As detected.
  • the specifying unit 2060 determines whether or not the product 40 is included in the analysis target area 30 in the captured image 12 detected in S202 (S204).
  • the process of FIG. 10 proceeds to S206.
  • the process of FIG. 10 proceeds to S216.
  • the identifying unit 2060 is a captured image including a state in which the reference position 24 moves in a direction away from the product shelf 50 among the captured images 12 generated later than the captured image 12 detected in S202. 12 is detected (S206). For example, the identifying unit 2060 calculates the distance between the reference position 24 and the product shelf 50 for each of the plurality of time-series captured images 12 generated later than the captured image 12 detected in S202. And when the said distance is increasing with time in one or more captured images 12, the captured image which the mode that the reference position 24 moves in the direction away from the goods shelf 50 is included. Detect as 12.
  • the identifying unit 2060 determines whether the product 40 is included in the analysis target area 30 in the captured image 12 detected in S206 (S208).
  • the analysis target area 30 includes the product 40 (S208: YES)
  • the product 40 is held by both the hand moving toward the product shelf 50 and the hand moving away from the product shelf 50. It becomes. Therefore, the specifying unit 2060 specifies that the operation of the customer 20 is "(4) an operation of holding the product 40 both before and after contact with the product shelf 50" (S210).
  • the specifying unit 2060 specifies that the operation of the customer 20 is "(2) an operation of placing the product 40 on the product shelf 50" (S212).
  • the identifying unit 2060 is a captured image including a state in which the reference position 24 moves in a direction away from the product shelf 50 from the captured image 12 generated later than the captured image 12 detected in S202.
  • Detect 12 The method of the detection is the same as the method performed in S206.
  • the identifying unit 2060 determines whether the product 40 is included in the analysis target area 30 in the captured image 12 detected in S214 (S216). When the analysis target area 30 includes the product 40 (S216: YES), the hand moving toward the product shelf 50 does not hold the product 40, but the hand moving away from the product shelf 50 does not The product 40 is held. Therefore, the specifying unit 2060 specifies that the operation of the customer 20 is "(1) an operation of taking out the product 40 from the product shelf 50" (S218).
  • the specifying unit 2060 specifies that the operation of the customer 20 is "(3) an operation not holding the product 40 before and after contact with the product shelf 50" (S220).
  • the specifying unit 2060 extracts an image area excluding the background area, that is, a foreground area, from the analysis target area 30 determined for each of the plurality of captured images 12 in time series.
  • the existing technique can be utilized for the technique which specifies a background area
  • the specifying unit 2060 determines that the product 40 is included in the analysis target area 30.
  • the identifying unit 2060 determines that the product 40 is included in the analysis target area 30 only when the size of the image area excluding the image area representing the hand in the foreground area is a predetermined size or more. Good. This can prevent noise included in the captured image 12 from being erroneously detected as the product 40.
  • the method of determining whether the product 40 is included in the analysis target area 30 is not limited to the method described above. Various existing methods can be used to determine whether or not the product 40 is included in the analysis target area 30, that is, whether or not the human hand included in the image has a product.
  • the specifying unit 2060 may specify the operation of the customer 20 from one captured image 12. For example, in this case, the specifying unit 2060 specifies an operation of the customer 20 that “holds the product 40” or “does not hold the product 40”.
  • the specifying unit 2060 may specify the taken product 40.
  • the specification of the product 40 means, for example, specifying information (for example, an identifier or a name of the product 40) for identifying the product 40 as another product 40.
  • information identifying the product 40 is referred to as product identification information.
  • the identifying unit 2060 identifies the retrieved product 40 by identifying from where on the product shelf 50 the customer 20 took out the product 40. As a premise, it is assumed that the display place of the product 40 is predetermined. Here, information indicating which items are displayed at each position of the product shelf 50 is referred to as display information. The identifying unit 2060 identifies where on the product shelf 50 the customer 20 took out the product 40 using the captured image 12 and identifies the taken product 40 using the specified location and display information.
  • FIG. 12 is a diagram illustrating display information in the form of a table.
  • the table shown in FIG. 12 is called a table 200.
  • the table 200 is made for each product shelf 50.
  • the table 200 has two columns, a row 202 and item identification information 204.
  • the item identification information 204 indicates an identifier of the item 40.
  • the table 200 representing display information of the product shelf 50 specified by the identifier s0001, in the first row of the record, the product 40 specified by the identifier i0001 is displayed in the first row of the product shelf 50. Show that.
  • the identifying unit 2060 identifies the row of the product shelf 50 from which the product 40 is taken out using the captured image 12. Then, the specifying unit 2060 specifies the product 40 extracted from the product shelf 50 by acquiring the product identification information associated with the row in the display information.
  • some methods of specifying the level of the product shelf 50 from which the product 40 is taken out will be exemplified.
  • the captured image 12 includes a state in which the product shelf 50 is captured from above (see FIG. 5).
  • the camera 10 captures an image of the product shelf 50 from above.
  • a depth camera is used as the camera 10.
  • the depth camera generates a depth image in addition to or instead of the normal captured image.
  • the depth image is an image in which the value of each pixel of the image represents the distance between the imaged object and the camera.
  • FIG. 13 is a diagram illustrating a depth image generated by the camera 10. In the depth image of FIG. 13, the pixels representing an object closer to the camera 10 are closer to white (brighter), and the pixels representing an object farther from the camera 10 closer to black (darker). Note that, for convenience of illustration, in FIG. 13, a larger black point is drawn closer as the dark part is drawn, and a smaller black point is drawn more as the bright part.
  • the identifying unit 2060 identifies which stage of the product shelf 50 the reference position 24 is located on the basis of the value of the pixel representing the reference position 24 in the depth image.
  • the range of the distance between the product shelf 50 and the camera 10 is defined in advance for each row of the product shelf 50.
  • FIG. 14 is a view exemplifying display information indicating the range of the distance between the product shelf 50 and the camera 10 for each row of the product shelf 50.
  • the table 200 in FIG. 14 indicates that the range of the distance between the first shelf of the product shelf 50 and the camera 10 is greater than or equal to d1 and less than d2. In other words, the distance between the top of the first shelf and the camera 10 is d1, and the distance between the top of the second shelf and the camera 10 is d2.
  • the identifying unit 2060 identifies on which stage of the product shelf 50 the reference position 24 is located, based on the reference position 24 of the depth image including how the customer 20 takes out the product 40 and the display information shown in FIG. Do. Then, the identified row is assumed to be a row from which the product 40 is taken out. For example, it is assumed that the pixel at the reference position 24 in the depth image indicates that the distance between the reference position 24 and the camera 10 is a. And let a be a value between d1 and d2. In this case, based on the display information shown in FIG. 14, the specification unit 2060 specifies that the reference position 24 is positioned on the first shelf of the product shelf 50. That is, the identifying unit 2060 identifies that the shelf from which the product 40 has been taken out is the first shelf of the product shelf 50.
  • the captured image 12 includes the appearance when the product shelf 50 is viewed from the side.
  • the camera 10 captures an image of the product shelf 50 in the lateral direction.
  • the identifying unit 2060 identifies what stage of the product shelf 50 the position in the height direction (Y coordinate) of the reference position 24 detected from the captured image 12 is. Then, the specified row is taken as the row of the product shelf 50 from which the product 40 is taken out.
  • the captured image 12 may be a depth image or a normal image.
  • the specifying unit 2060 specifies the product 40 by specifying the position in the horizontal direction and the position in the height direction with respect to the reference position 24 of the hand of the customer 20 who takes out the product 40 from the product shelf 50.
  • the display information indicates product identification information for each combination of rows and columns.
  • the camera 10 captures an image of the product shelf 50 from above.
  • the horizontal position of the reference position 24 is specified by the X coordinate of the reference position 24 in the captured image 12.
  • the specifying unit 2060 specifies the horizontal position of the reference position 24 using the depth image.
  • the method of specifying the horizontal position of the reference position 24 using a depth image including a state in which the product shelf 50 is imaged from the lateral direction is a depth in which a state in which the product shelf 50 is imaged from above is included It is the same as the method of specifying the position in the height direction of the reference position 24 using an image.
  • the specification unit 2060 may specify the product 40 to be placed on the product shelf 50 by the same method. However, in this case, the specifying unit 2060 uses the captured image 12 including the state of placing the product 40 on the product shelf 50.
  • the identifying unit 2060 determines whether or not the products 40 held by the customer 20 are identical to each other before and after the contact between the customer 20 and the product shelf 50 based on the method of specifying the product 40 described above. You may For example, the identifying unit 2060 identifies the product 40 before contact between the customer 20 and the product shelf 50 in the same manner as the method of identifying the product 40 placed on the product shelf 50. Further, the specifying unit 2060 specifies the product 40 after contact between the customer 20 and the product shelf 50 in the same manner as the method of specifying the product 40 taken out of the product shelf 50.
  • the identifying unit 2060 determines that the products 40 held by the customer 20 are identical to each other before and after the contact between the customer 20 and the product shelf 50. In this case, it can be said that the operation of the customer 20 is “an operation in which the product 40 is not placed although the product 40 is reached to reach the product shelf 50”.
  • the identifying unit 2060 determines that the products 40 held by the customer 20 are different from each other before and after the contact between the customer 20 and the product shelf 50. In this case, it can be said that the operation of the customer 20 is "the operation of placing the held item 40 and taking out the other item 40".
  • the above determination may be performed without specifically identifying the product 40.
  • the identifying unit 2060 may be a difference between the foreground area of the analysis target area 30 before contact with the customer 20 and the product shelf 50 and the foreground area of the analysis target area 30 after contact with the customer 20 and the product shelf 50 (area The size of the difference or the color difference is calculated, and if the calculated size of the difference is equal to or greater than a predetermined value, it is determined that the products 40 are different from each other before and after the touch. On the other hand, when the size of the difference is smaller than the predetermined value, the specifying unit 2060 determines that the products 40 are the same before and after the touch.
  • the identification unit 2060 determines whether or not the products 40 are the same before and after the contact based on the difference between the reference position 24 before and after the contact between the customer 20 and the product shelf 50. In this case, the identifying unit 2060 uses the display information described above, and after the row of the product shelf 50 where the reference position 24 is located before the contact between the customer 20 and the product shelf 50 and after the contact between the customer 20 and the product shelf 50 And the row of the product shelf 50 at which the reference position 24 is located. The specifying unit 2060 determines that the products 40 are different from each other before and after the contact when the tiers of the product shelves 50 specified before and after the contact between the customer 20 and the product shelf 50 are different from each other. On the other hand, the specifying unit 2060 determines that the products 40 are the same before and after the contact when the tiers of the product shelves 50 specified before and after the contact are the same.
  • the operation of the customer 20 specified by the specifying unit 2060 can be used for analysis of an action performed by the customer 20 in front of the product shelf 50 (a so-called pre-shelf action). Therefore, the specifying unit 2060 outputs various information such as the operation performed by each customer 20 in front of the product shelf 50, the date and time when the operation was performed, and the product 40 targeted for the operation. This information is stored, for example, in a storage device connected to the information processing device 2000, or transmitted to a server device or the like communicably connected to the information processing device 2000.
  • various existing methods can be used as a method of analyzing the pre-shelf behavior based on various operations of the customer 20 performed in front of the product shelf 50.
  • the usage scene of the information processing apparatus 2000 is not limited to the specification of the operation of the customer in the store.
  • the information processing apparatus 2000 can be used to specify the operation of a factory worker or the like. In this case, for example, by comparing the operation of each worker specified by the information processing apparatus 2000 with the operation of each worker determined in advance, it is confirmed whether the worker is correctly performing the predetermined work. be able to.

Landscapes

  • Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Multimedia (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Human Computer Interaction (AREA)
  • Business, Economics & Management (AREA)
  • Social Psychology (AREA)
  • Health & Medical Sciences (AREA)
  • Psychiatry (AREA)
  • General Health & Medical Sciences (AREA)
  • Finance (AREA)
  • Development Economics (AREA)
  • Accounting & Taxation (AREA)
  • Strategic Management (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Game Theory and Decision Science (AREA)
  • Economics (AREA)
  • Marketing (AREA)
  • General Business, Economics & Management (AREA)
  • Image Analysis (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

情報処理装置は、カメラ(10)によって生成された撮像画像(12)を解析することで、人の動作を特定する。カメラ(10)は、物が陳列されている陳列場所を撮像するカメラである。情報処理装置は、撮像画像(12)から基準位置(24)を検出する。基準位置(24)は、人の手の位置を示す。情報処理装置は、この基準位置(24)を用いて、撮像画像(12)において解析対象とする解析対象領域(30)を決定する。そして情報処理装置は、解析対象領域(30)を解析することで、人の動作を特定する。

Description

情報処理装置、制御方法、及びプログラム
 本発明は画像解析に関する。
 店舗において、顧客は、陳列場所(例えば商品棚)に陳列されている商品を取り出して購入する。また顧客は、一旦手に取った商品を陳列場所に戻すこともある。このように陳列されている商品に関する顧客の行動を分析する技術が開発されている。
 例えば特許文献1は、デプスカメラによる撮像結果から得られる深度画像を利用して特定の領域(棚)に物体(人の手)が進入することを検出し、進入前後の進入位置付近のカラー画像を用いて、顧客の動作を特定する技術を開示している。具体的には、特定の領域に進入する人の手が含まれるカラー画像と、特定の領域から出て行く人の手が含まれるカラー画像とを比較して、色の増加が閾値を超えた場合には「商品の取得」、色の減少が閾値を超えた場合には「商品の返却」、色の変化が閾値未満である場合には「接触」という人の動作をそれぞれ特定する。また、特許文献1には、デプスカメラによる撮像結果から得られる被写体のサイズの情報から、被写体の体積の増減を判断することで、商品の取得と返却とを区別する技術を開示している。
米国特許出願公開第2014/0132728号明細書
 陳列場所へ人の手が進入した前後における色や体積の増減の程度は、例えば、商品のサイズや、人の手の姿勢の変化に影響される。例えば、小さい商品を陳列場所から取り出した場合には、その前後における色や体積の増加は小さい。また、手の姿勢を変化させる動作が、商品を取得する動作と誤認識されてしまうこともある。
 本発明は、以上の問題点に鑑みてなされたものである。本発明の目的の一つは、陳列されている物に対する人の動作を高い精度で特定する技術を提供することである。
 本発明の情報処理装置は、1)物の陳列場所が撮像された撮像画像から、前記撮像画像に含まれる人の手の位置を示す基準位置を検出する検出手段と、2)前記検出された基準位置を用いて、前記撮像画像の中の解析対象領域を決定し、前記解析対象領域を決定する決定手段と、3)前記決定された解析対象領域を解析することで、前記人の動作を特定する特定手段と、を有する。
 本発明の制御方法は、コンピュータによって実行される制御方法である。当該制御方法は、1)物の陳列場所が撮像された撮像画像から、前記撮像画像に含まれる人の手の位置を示す基準位置を検出する検出ステップと、2)前記検出された基準位置を用いて、前記撮像画像の中の解析対象領域を決定し、前記解析対象領域を決定する決定ステップと、3)前記決定された解析対象領域を解析することで、前記人の動作を特定する特定ステップと、を有する。
 本発明のプログラムは、本発明の制御方法が有する各ステップをコンピュータに実行させる。
 本発明によれば、陳列されている物に対する人の動作を高い精度で特定する技術が提供される。
 上述した目的、およびその他の目的、特徴および利点は、以下に述べる好適な実施の形態、およびそれに付随する以下の図面によってさらに明らかになる。
実施形態1に係る情報処理装置の動作を概念的に例示する図である。 実施形態1に係る情報処理装置の機能構成の例を示すブロック図である。 情報処理装置を実現するための計算機を例示する図である。 実施形態1の情報処理装置によって実行される処理の流れを例示するフローチャートである。 カメラの撮像範囲を例示する第1の図である。 カメラの撮像範囲を例示する第2の図である。 商品棚を向かって右側から撮像した様子が撮像画像に含まれるケースを例示する図である。 基準位置を基準として定まる所定形状の領域として決定される解析対象領域を例示する図である。 顧客の手の向きに基づいて解析対象領域の向きを定めるケースを例示する図である。 顧客20の動作を特定するための処理の流れを例示するフローチャートである 顧客20の動作を特定するための処理の流れを例示するフローチャートである 陳列情報をテーブル形式で例示する図である。 カメラによって生成される深度画像を例示する図である。 商品棚の各段について、カメラとの間の距離の範囲を示す陳列情報を例示する図である。
 以下、本発明の実施の形態について、図面を用いて説明する。尚、すべての図面において、同様な構成要素には同様の符号を付し、適宜説明を省略する。また、特に説明する場合を除き、各ブロック図において、各ブロックは、ハードウエア単位の構成ではなく、機能単位の構成を表している。
[実施形態1]
<情報処理装置2000の動作の概要>
 図1は、実施形態1に係る情報処理装置(後述する図2などに示す情報処理装置2000)の動作を概念的に例示する図である。なお図1は、情報処理装置2000の動作の理解を容易にすることを目的とする例示のための図であり、情報処理装置2000の動作は図1によって何ら限定されない。
 情報処理装置2000は、カメラ10によって生成された撮像画像12を解析することで、人の動作を特定する。カメラ10は、物が陳列されている陳列場所を撮像するカメラである。カメラ10は、繰り返し撮像を行って、複数の撮像画像12を生成する。生成される複数の撮像画像12は、例えば、動画データを構成するフレーム群である。ただし、カメラ10によって生成される複数の撮像画像12は、必ずしも動画データを構成する必要はなく、個別の静止画像データとして扱われてもよい。
 カメラ10によって撮像される物は、陳列場所に陳列され、なおかつ人によってその陳列場所から取り出されたり、その逆に人によってその陳列場所に置かれたり(戻されたり)する任意の物とすることができる。具体的にどのような物をカメラ10に撮像させるかは、情報処理装置2000の利用環境によって異なる。
 例えば情報処理装置2000が、店舗において顧客や店員の動作を特定するために利用されるとする。この場合、カメラ10によって撮像される物は、店舗で販売されている商品である。また、上記陳列場所は、例えば商品棚である。図1において、情報処理装置2000は、顧客20の動作を特定するために利用されている。そのため、カメラ10によって撮像される人と物はそれぞれ、顧客20と商品40である。また、陳列場所は商品棚50である。
 その他にも例えば、情報処理装置2000が、工場の作業員などの動作を特定するために利用されるとする。この場合、カメラ10によって撮像される人は、作業員などである。また、カメラ10によって撮像される物は、工場で使用される資材や工具などである。さらに、上記陳列場所は、例えば工場の倉庫などに設置されている棚である。
 説明を分かりやすくするため、本明細書では特に断らない限り、情報処理装置2000が店舗における顧客(図1における顧客20)の動作を特定するために利用されるケースを例として説明する。そのため、特定部2060によって特定される「人の動作」は、「顧客の動作」であるとする。また、カメラによって撮像される「物」は「商品」であるとする。さらに、「陳列場所」は「商品棚」であるとする。
 情報処理装置2000は、撮像画像12から基準位置24を検出する。基準位置24は、人の手の位置を示す。人の手の位置は、例えば手の中心位置や指先の位置などである。情報処理装置2000は、この基準位置24を用いて、撮像画像12において解析対象とする領域(解析対象領域30)を決定する。そして情報処理装置2000は、解析対象領域30を解析することで、顧客20の動作を特定する。例えば顧客20の動作は、商品40を保持する動作、商品棚50から商品40を取り出す動作、又は商品棚50へ商品40を置く動作などである。
<作用・効果>
 撮像画像12全体を画像解析して顧客20の動作を特定しようとする場合、商品40のサイズが小さい場合や、顧客20の手の姿勢が大きく変動する場合に、動作を正確に特定できないことがある。この点、情報処理装置2000は、まず撮像画像12において顧客20の手の位置を示す基準位置24を検出し、基準位置24に基づいて解析対象領域30を決定する。すなわち、顧客20の手の付近について画像解析を行う。そのため、商品40のサイズが小さい場合や、顧客20の手の姿勢が大きく変動する場合であっても、商品40を取得する、商品40を置く、又は商品40を保持するなどといった顧客20の手による動作を精度良く特定することができる。
 以下、本実施形態の情報処理装置2000についてさらに詳細に説明する。
<情報処理装置2000の機能構成の例>
 図2は、実施形態1に係る情報処理装置2000の機能構成の例を示すブロック図である。情報処理装置2000は、検出部2020、決定部2040、及び特定部2060を有する。検出部2020は、撮像画像12から、撮像画像12に含まれる人の手の基準位置24を検出する。決定部2040は、検出された基準位置24を用いて、撮像画像12の中の解析対象領域30を決定する。特定部2060は、決定された解析対象領域30を解析することで、上記人の動作を特定する。
<情報処理装置2000のハードウエア構成例>
 情報処理装置2000の各機能構成部は、各機能構成部を実現するハードウエア(例:ハードワイヤードされた電子回路など)で実現されてもよいし、ハードウエアとソフトウエアとの組み合わせ(例:電子回路とそれを制御するプログラムの組み合わせなど)で実現されてもよい。以下、情報処理装置2000の各機能構成部がハードウエアとソフトウエアとの組み合わせで実現される場合について、さらに説明する。
 図3は、情報処理装置2000を実現するための計算機1000を例示する図である。計算機1000は任意の計算機である。例えば計算機1000は、Personal Computer(PC)、サーバマシン、タブレット端末、又はスマートフォンなどである。その他にも例えば、計算機1000はカメラ10であってもよい。計算機1000は、情報処理装置2000を実現するために設計された専用の計算機であってもよいし、汎用の計算機であってもよい。
 計算機1000は、バス1020、プロセッサ1040、メモリ1060、ストレージデバイス1080、入出力インタフェース1100、及びネットワークインタフェース1120を有する。バス1020は、プロセッサ1040、メモリ1060、ストレージデバイス1080、入出力インタフェース1100、及びネットワークインタフェース1120が、相互にデータを送受信するためのデータ伝送路である。ただし、プロセッサ1040などを互いに接続する方法は、バス接続に限定されない。プロセッサ1040は、CPU(Central Processing Unit)や GPU(Graphics Processing Unit)などの演算装置である。メモリ1060は、RAM(Random Access Memory)などを用いて実現される主記憶装置である。ストレージデバイス1080は、ハードディスク、SSD(Solid State Drive)、メモリカード、又は ROM(Read Only Memory)などを用いて実現される補助記憶装置である。ただし、ストレージデバイス1080は、RAM など、主記憶装置を構成するハードウエアと同様のハードウエアで構成されてもよい。
 入出力インタフェース1100は、計算機1000と入出力デバイスとを接続するためのインタフェースである。ネットワークインタフェース1120は、計算機1000を通信網に接続するためのインタフェースである。この通信網は、例えば LAN(Local Area Network)や WAN(Wide Area Network)である。ネットワークインタフェース1120が通信網に接続する方法は、無線接続であってもよいし、有線接続であってもよい。
 例えば計算機1000は、ネットワークを介して、カメラ10と通信可能に接続されている。ただし、計算機1000をカメラ10と通信可能に接続する方法は、ネットワークを介した接続に限定されない。ただし、計算機1000は、カメラ10によって生成された撮像画像12を取得できればよく、必ずしもカメラ10と通信可能に接続される必要はない。
 ストレージデバイス1080は、情報処理装置2000の各機能構成部(検出部2020、決定部2040、及び特定部2060)を実現するプログラムモジュールを記憶している。プロセッサ1040は、これら各プログラムモジュールをメモリ1060に読み出して実行することで、各プログラムモジュールに対応する機能を実現する。
<カメラ10について>
 カメラ10は、繰り返し撮像を行って複数の撮像画像12を生成することができる任意のカメラである。カメラ10は、動画データを生成するビデオカメラであってもよいし、静止画像データを生成するスチルカメラであってもよい。なお、前者の場合、撮像画像12は、動画データを構成する動画フレームである。
 カメラ10は、2次元カメラであってもよいし、3次元カメラ(ステレオカメラやデプスカメラ)であってもよい。なお、カメラ10がデプスカメラである場合、撮像画像12は深度画像であってもよい。深度画像とは、画像の各画素の値が、撮像された物体とカメラとの間の距離を表す画像である。さらに、カメラ10は、赤外線カメラであってもよい。
 前述したように、情報処理装置2000を実現する計算機1000は、カメラ10であってもよい。この場合、カメラ10は、自身で生成した撮像画像12を解析することで、顧客20の動作を特定する。このような機能を持たせるカメラ10としては、例えば、インテリジェントカメラ、ネットワークカメラ、又は IP(Internet Protocol)カメラなどと呼ばれるカメラを用いることができる。
<処理の流れ>
 図4は、実施形態1の情報処理装置2000によって実行される処理の流れを例示するフローチャートである。検出部2020は、撮像画像12を取得する(S102)。検出部2020は、取得した撮像画像12から商品40の手の基準位置24を検出する(S104)。決定部2040は、検出された基準位置24を用いて解析対象領域30を決定する(S106)。特定部2060は、決定された解析対象領域30を画像解析する(S108)。特定部2060は、解析対象領域30を画像解析した結果に基づいて、顧客20の動作を特定する(S108)。
 ここで、顧客20の動作の特定には、複数の撮像画像12が利用されてもよい。この場合、複数の撮像画像12それぞれについて決定された解析対象領域30を画像解析する(複数の解析対象領域30を画像解析する)ことにより、顧客20の動作が特定される。すなわち、複数の撮像画像12それぞれについてS102からS108の処理が行われ、その結果を用いてS110の処理が行われる。
<情報処理装置2000が処理を実行するタイミング>
 情報処理装置2000が図4に示す一連の処理を実行するタイミングは様々である。例えば情報処理装置2000は、カメラ10によって撮像画像12が生成される度に、その撮像画像12について、図4に示す一連の処理を実行する。
 その他にも例えば、情報処理装置2000は、所定の時間間隔で(例えば1秒ごとに)、図4に示す一連の処理を実行する。この場合、例えば情報処理装置2000は、図4に示す一連の処理を開始するタイミングで、カメラ10によって生成された最新の撮像画像12を取得する。
<撮像画像12の取得:S102>
 検出部2020は、撮像画像12を取得する(S102)。検出部2020が撮像画像12を取得する方法は任意である。例えば検出部2020は、カメラ10から送信される撮像画像12を受信する。また例えば、検出部2020は、カメラ10にアクセスし、カメラ10に記憶されている撮像画像12を取得する。
 なお、カメラ10は、カメラ10の外部に設けられている記憶装置に撮像画像12を記憶してもよい。この場合、検出部2020は、この記憶装置にアクセスして撮像画像12を取得する。
 情報処理装置2000がカメラ10で実現される場合、情報処理装置2000は、情報処理装置2000自身によって生成された撮像画像12を取得する。この場合、撮像画像12は、例えば情報処理装置2000の内部にあるメモリ1060やストレージデバイス1080(図3参照)に記憶されている。そこで検出部2020は、メモリ1060やストレージデバイス1080から撮像画像12を取得する。
 撮像画像12には(すなわち、カメラ10の撮像範囲には)、少なくとも、商品棚50よりも手前の範囲が含まれる。図5は、カメラ10の撮像範囲を例示する第1の図である。図5において、カメラ10の撮像範囲14には、商品棚50の前面から手前側に距離 d1 の範囲が含まれている。
 なお、カメラ10の撮像範囲には、商品棚50が含まれなくてもよい。図6は、カメラ10の撮像範囲を例示する第2の図である。図6において、カメラ10の撮像範囲14には、商品40の前面から手前側に d2 離れた位置から、商品40の前面から手前側に d3 離れた位置までの範囲が含まれる。
 また、図5や図6の撮像画像12に含まれるのは、商品棚50を上から見下ろした様子である。言い換えれば、カメラ10は、商品棚50の上方から商品棚50を撮像するように設置されている。しかしながら、撮像画像12に含まれるのは、商品棚50を上から見下ろした様子でなくてもよい。例えば撮像画像12には、商品棚50を横から撮像した様子が含まれてもよい。図7は、商品棚50を向かって右側から撮像した様子が撮像画像12に含まれるケースを例示する図である。
<基準位置24の検出:S104>
 検出部2020は、撮像画像12から基準位置24を検出する(S104)。前述した通り、基準位置24は顧客20の手の位置を示す。前述したとおり、顧客20の手の位置は、例えば手の中心位置や指先の位置などである。検出部2020が撮像画像12から基準位置24を検出する方法は様々である。例えば検出部2020は、予め用意されている人の手の特徴量を利用して特徴量マッチングを行うことにより、撮像画像12から、その特徴量にマッチする(特徴量との類似度が高い)領域を検出する。そして検出部2020は、検出された領域、すなわち手を表す領域の所定位置(例えば中心位置など)を、手の基準位置24として検出する。
 その他にも例えば、検出部2020は、機械学習を利用して基準位置24を検出してもよい。具体的には、機械学習を利用した検出器として、検出部2020を構成する。この場合、予め、基準位置24が既知である撮像画像(撮像画像と、その撮像画像における基準位置24の座標とのセット)を1つ以上利用して、検出部2020を学習させておく。こうすることで、検出部2020は、取得した撮像画像12から基準位置24を検出できるようになる。なお、機械学習の予測モデルには、ニューラルネットワークなどの種々なモデルを利用することができる。
 ここで、検出部2020の学習は、様々な姿勢の顧客20の手について行われることが好適である。具体的には、様々な姿勢の顧客20の手について学習用の撮像画像を用意する。こうすることで、顧客20の手の姿勢が撮像画像12ごとに異なっていても、各撮像画像12から高い精度で基準位置24を検出することができる。
 ここで、検出部2020は、基準位置24に加え、顧客20の手に関する種々のパラメータを検出してもよい。例えば検出部2020は、手の幅、長さ、姿勢、及び基準位置24とカメラ10との間の距離などを検出する。特徴量マッチングを利用する場合、検出部2020は、検出された手の領域の形状や大きさから、手の幅、長さ、及び姿勢などを特定する。機械学習を利用する場合、手の幅、長さ、姿勢、及び基準位置24とカメラ10との間の距離などが既知である1つ以上の撮像画像を利用して、検出部2020を学習させておく。こうすることで、検出部2020は、取得した撮像画像12から、基準位置24に加え、手の幅などの種々のパラメータを検出することができる。
<解析対象領域30の決定:S106>
 決定部2040は、検出された基準位置24を用いて解析対象領域30を決定する(S106)。決定部2040が解析対象領域30を決定する方法は様々である。例えば決定部2040は、撮像画像12に含まれる領域のうち、基準位置24を基準として定まる所定形状の領域である。
 図8は、基準位置24を基準として定まる所定形状の領域として決定される解析対象領域30を例示する図である。図8(a)は、基準位置24が解析対象領域30の所定位置を表す位置として利用されるケースを表す。具体的には、図8(a)の解析対象領域30は、基準位置24を中心とする矩形である。解析対象領域30の高さは h であり、幅 w の矩形である。なお、基準位置24は解析対象領域30の左上端や右下端など、解析対象領域30の中心以外を定める位置として利用されてもよい。
 図8(b)は、基準位置24と所定の関係にある位置によって、解析対象領域30の所定位置(中心や左上端など)を定めるケースを表す。具体的には、図8(b)の解析対象領域30は、基準位置24から所定ベクトル v 移動した位置を中心とする矩形である。大きさ及び向きについては、図8(a)の解析対象領域30と同じである。
 図8の例において、解析対象領域30の向きは、撮像画像12の軸方向に基づいて定められている。より具体的には、解析対象領域30の高さ方向が、撮像画像12のY軸方向として定められている。しかし、解析対象領域30の向きは、撮像画像12の軸方向以外に基づいて定められてもよい。
 例えば検出部2020によって、顧客20の手の姿勢が検出されるとする。この場合、解析対象領域30の向きは、手の向きに基づいて定められてもよい。図9は、顧客20の手の向きに基づいて解析対象領域30の向きを定めるケースを例示する図である。図9において、解析対象領域30の向きは、手の奥行き方向(手首から指先へ向かう方向)として定められている。
 なお、このように顧客20の手の向きに基づいて解析対象領域30の向きを定める場合、複数の撮像画像12それぞれの解析対象領域30の向きが異なりうる。そのため、決定部2040は、複数の解析対象領域30の向きを揃えるように幾何変換を行うことが好適である。例えば、決定部2040は、各撮像画像12から解析対象領域30を抽出し、抽出した各解析対象領域30を、顧客20の手の奥行き方向が Y 軸方向を向くように幾何変換する。
 解析対象領域30のサイズは、静的に定まっていてもよいし、動的に決定されてもよい。後者の場合、解析対象領域30のサイズは、例えば以下の数式(1)によって決定される。
Figure JPOXMLDOC01-appb-M000001
 h と w はそれぞれ、解析対象領域30の高さと幅である。sb は手の領域について予め定められている基準面積である。hb と wb はそれぞれ、基準面積に対応づけて予め定められている解析対象領域30の高さと幅である。sr は、検出部2020によって撮像画像12から検出された手の領域の面積である。
 その他にも例えば、解析対象領域30のサイズは、以下の数式(2)を用いて動的に決定されてもよい。
Figure JPOXMLDOC01-appb-M000002
 h と w はそれぞれ、解析対象領域30の高さと幅である。dbは、予め定められている基準距離値である。hb と wb はそれぞれ、基準距離値に対応付けられている解析対象領域30の高さと幅である。dr は、撮像画像12から検出された基準位置24とカメラ10との間の距離値である。
 距離値 dr を特定する方法は様々である。例えば、検出部2020は、デプスカメラによって生成された深度画像における基準位置24の画素値に基づいて、距離値 dr を特定する。その他にも例えば、機械学習を利用した検出器として検出部2020を構成する場合、基準位置24に加えて基準位置24とカメラ10との間の距離も検出するように、検出部2020を構成してもよい。
 ここで、上述した方法で決定した解析対象領域30の各画素を補正し、補正後の解析対象領域30が特定部2060による画像解析に利用されるようにしてもよい。決定部2040は、例えば以下の数式(3)を用いて解析対象領域30の各画素を補正する。
Figure JPOXMLDOC01-appb-M000003
 d(x,y)0 は、撮影画像12中の解析対象領域30の座標 (x, y) における修正前の画素値である。d(x,y)1 は、撮影画像12中の解析対象領域30の座標 (x, y) における修正後の画素値である。
<顧客20の動作の特定:S108、S110>
 特定部2060は、決定された解析対象領域30を画像解析することで、顧客20の動作を特定する(S108、S110)。顧客20の動作は、例えば、(1)商品棚50から商品40を取り出す動作、(2)商品棚50へ商品40を置く動作、(3)商品棚50との接触前後双方において商品40を保持しない動作、及び(4)商品棚50との接触前後双方において商品40を保持する動作のいずれかである。
 ここで、「商品棚50と顧客20との接触」とは、撮像画像12において商品棚50の画像領域と顧客20の画像領域とが少なくとも一部において重なることを意味し、実空間において商品棚50と顧客20とが接触している必要はない。また、上記(4)において、顧客20と商品棚50との接触前に顧客20が保持している商品40と、顧客20と商品棚50との接触後に顧客20が保持している商品40は、互いに同一の物であってもよいし、互いに異なるものであってもよい。
 上述した4つの動作を判別する処理の流れは、例えば図10に示す流れとなる。図10及び図11は、顧客20の動作を特定するための処理の流れを例示するフローチャートである。まず特定部2060は、基準位置24が商品棚50へ向かって移動している様子が含まれる撮像画像12を検出する(S202)。例えば特定部2060は、時系列の複数の撮像画像12それぞれについて、基準位置24と商品棚50との間の距離を算出する。そして、1つ以上の撮像画像12において上記距離が時間と共に減少している場合に、それらの撮像画像12を、基準位置24が商品棚50へ向かって移動している様子が含まれる撮像画像12として検出する。
 さらに特定部2060は、S202で検出された撮像画像12において、解析対象領域30に商品40が含まれるか否かを判定する(S204)。解析対象領域30に商品40が含まれる場合(S204:YES)、図10の処理はS206に進む。一方、解析対象領域30に商品40が含まれない場合(S204:NO)、図10の処理はS216に進む。
 S206において、特定部2060は、S202で検出された撮像画像12よりも後に生成された撮像画像12の中から、基準位置24が商品棚50から離れる方向に移動している様子が含まれる撮像画像12を検出する(S206)。例えば特定部2060は、S202で検出された撮像画像12よりも後に生成された時系列の複数の撮像画像12それぞれについて、基準位置24と商品棚50との間の距離を算出する。そして、1つ以上の撮像画像12において上記距離が時間と共に増加している場合に、それらの撮像画像12を、基準位置24が商品棚50から離れる方向へ移動している様子が含まれる撮像画像12として検出する。
 さらに特定部2060は、S206で検出された撮像画像12において、解析対象領域30に商品40が含まれるか否かを判定する(S208)。解析対象領域30に商品40が含まれる場合(S208:YES)、商品棚50に向かって移動する手と、商品棚50から離れる方向へ移動する手の双方に、商品40が保持されていることとなる。そのため特定部2060は、顧客20の動作が、「(4)商品棚50との接触前後双方において商品40を保持する動作」であると特定する(S210)。
 一方、解析対象領域30に商品40が含まれない場合(S208:NO)、商品棚50に向かって移動する手には商品40が保持されている一方で、商品棚50から離れる方向へ移動する手には商品40が保持されていないこととなる。そのため特定部2060は、顧客20の動作が、「(2)商品棚50へ商品40を置く動作」であると特定する(S212)。
 S214において、特定部2060は、S202で検出された撮像画像12よりも後に生成された撮像画像12の中から、基準位置24が商品棚50から離れる方向に移動している様子が含まれる撮像画像12を検出する。その検出の方法は、S206における実行される方法と同様である。
 さらに特定部2060は、S214で検出された撮像画像12において、解析対象領域30に商品40が含まれるか否かを判定する(S216)。解析対象領域30に商品40が含まれる場合(S216:YES)、商品棚50に向かって移動する手には商品40が保持されていない一方で、商品棚50から離れる方向に移動する手には商品40が保持されていることとなる。そのため特定部2060は、顧客20の動作が、「(1)商品棚50から商品40を取り出す動作」であると特定する(S218)。
 一方、解析対象領域30に商品40が含まれない場合(S216:NO)、商品棚50に向かって移動する手と、商品棚50から離れる方向へ移動する手の双方に、商品40が保持されていないこととなる。そのため特定部2060は、顧客20の動作が、「(3)商品棚50との接触前後双方において商品40を保持しない動作」であると特定する(S220)。
 ここで、解析対象領域30に商品40が含まれるか否かを検出する方法には、例えば次の方法がある。まず特定部2060は、時系列の複数の撮像画像12それぞれについて決定された解析対象領域30から、背景領域を除いた画像領域、すなわち前景領域を抽出する。なお、所定の場所に設置されたカメラ10によって撮像される撮像画像について背景領域を特定する技術には、既存の技術を利用することができる。
 そして特定部2060は、前景領域に顧客20の手を表す画像領域以外が含まれる場合、解析対象領域30に商品40が含まれると判定する。ただし、特定部2060は、前景領域のうち、手を表す画像領域を除いた画像領域のサイズが、所定のサイズ以上である場合のみ、解析対象領域30に商品40が含まれると判定してもよい。こうすることで、撮像画像12に含まれるノイズが誤って商品40として検出されてしまうことを防ぐことができる。
 解析対象領域30に商品40が含まれるか否かを判定する方法は、上述した方法に限定されない。解析対象領域30に商品40が含まれるか否か、すなわち、画像に含まれる人の手が商品を持っているか否かを判定する方法には、既存の種々の方法を利用することができる。
 なお、特定部2060は、1つの撮像画像12から顧客20の動作を特定してもよい。例えばこの場合、特定部2060は、「商品40を保持している」又は「商品40を保持していない」という顧客20の動作を特定する。
<商品40の特定>
 特定部2060は、顧客20が商品棚50から商品40を取り出したときに、取り出した商品40を特定してもよい。商品40の特定とは、例えば、その商品40を他の商品40と識別する情報(例えば商品40の識別子や名称など)を特定することを意味する。以下、商品40を識別する情報を商品識別情報と呼ぶ。
 特定部2060は、顧客20が商品棚50のどこから商品40を取り出したかを特定することによって、取り出された商品40を特定する。前提として、商品40の陳列場所が予め定められているとする。ここで、商品棚50の各位置にどの商品が陳列されているかを示す情報を、陳列情報と呼ぶ。特定部2060は、撮像画像12を用いて、顧客20が商品棚50のどこから商品40を取り出したかを特定し、特定した場所と陳列情報を用いて、取り出された商品40を特定する。
 例えば、商品棚50において、段ごとに特定の商品40が陳列されるとする。この場合、陳列情報は、商品棚50の段に対応づけて商品識別情報を示す。図12は、陳列情報をテーブル形式で例示する図である。図12に示されているテーブルを、テーブル200と呼ぶ。テーブル200は、商品棚50ごとに作られている。テーブル200は、段202と商品識別情報204という2つの列を有する。図12において、商品識別情報204は、商品40の識別子を示す。例えば、s0001 という識別子で特定される商品棚50の陳列情報を表すテーブル200において、1行目のレコードは、商品棚50の1段目に、i0001 という識別子で特定される商品40が陳列されていることを示している。
 特定部2060は、撮像画像12を用いて、商品40が取り出された商品棚50の段を特定する。そして特定部2060は、陳列情報においてその段に対応づけられている商品識別情報を取得することで、商品棚50から取り出された商品40を特定する。以下、商品40が取り出された商品棚50の段を特定する方法をいくつか例示する。
<<第1の方法>>
 前提として、撮像画像12に商品棚50を上方から撮像した様子が含まれるとする(図5参照)。言い換えれば、カメラ10が、商品棚50を上方から撮像するとする。この場合、カメラ10としてデプスカメラを利用する。デプスカメラは、通常の撮像画像に加えて、又はこれに代えて、深度画像を生成する。前述したように、深度画像とは、画像の各画素の値が、撮像された物体とカメラとの間の距離を表す画像である。図13は、カメラ10によって生成される深度画像を例示する図である。図13の深度画像では、カメラ10からの距離が近い物体を表す画素ほど白色に近く(明るく)、カメラ10からの距離が遠い物体を表す画素ほど黒色に近く(暗く)なっている。なお、図示の都合上、図13では、暗い部分ほど大きな黒点を密に描き、明るい部分ほど小さな黒点を疎に描いている。
 特定部2060は、深度画像において基準位置24を表す画素の値に基づいて、基準位置24が商品棚50のどの段に位置するかを特定する。この際、予め、陳列情報において、商品棚50の各段について、カメラ10との間の距離の範囲を定めておく。図14は、商品棚50の各段について、カメラ10との間の距離の範囲を示す陳列情報を例示する図である。例えば図14のテーブル200は、商品棚50の1段目の棚とカメラ10との間の距離の範囲が、d1 以上なおかつ d2 未満であることを示している。言い換えれば、1段目の棚の最上部とカメラ10との間の距離は d1 であり、2段目の棚最上部とカメラ10との間の距離は d2 である。
 特定部2060は、顧客20が商品40を取り出す様子が含まれる深度画像の基準位置24と、図14に示す陳列情報に基づいて、基準位置24が商品棚50のどの段に位置するかを特定する。そして、特定された段を、商品40が取り出された段とする。例えば、深度画像における基準位置24の画素が、基準位置24とカメラ10との間の距離が a であることを示しているとする。そして、a が d1 以上 d2 以下の値であるとする。この場合、図14に示す陳列情報に基づき、特定部2060は、基準位置24が商品棚50の1段目の棚に位置することを特定する。つまり特定部2060は、商品40が取り出された棚が、商品棚50の1段目の棚であることを特定する。
<<第2の方法>>
 前提として、撮像画像12に、商品棚50を横から見た様子が含まれているとする。言い換えれば、カメラ10が、商品棚50を横方向から撮像するとする。この場合、特定部2060は、撮像画像12から検出された基準位置24の高さ方向の位置(Y 座標)が、商品棚50の何段目に位置するかを特定する。そして、特定された段を、商品40が取り出された商品棚50の段とする。この場合、撮像画像12は、深度画像であってもよいし、通常の画像であってもよい。
<<1つの段に複数の種類の商品40が陳列されるケースについて>>
 商品棚50の1つの段を水平方向に複数の列に区切ることで、1つの段に複数の種類の商品が陳列されることもある。この場合、特定部2060は、商品40を商品棚50から取り出す顧客20の手の基準位置24について、水平方向の位置と高さ方向の位置をそれぞれ特定することにより、商品40を特定する。この場合、陳列情報には、段と列の組み合わせごとに商品識別情報を示しておく。以下、基準位置24の水平方向の位置を特定する方法について説明する。
 カメラ10が商品棚50を上方から撮像するとする。この場合、基準位置24の水平方向の位置は、撮像画像12における基準位置24の X 座標によって特定される。
 一方、カメラ10が商品棚50を横方向から撮像するとする。この場合、特定部2060は、深度画像を利用して、基準位置24の水平方向の位置を特定する。ここで、商品棚50を横方向から撮像した様子が含まれる深度画像を利用して、基準位置24の水平方向の位置を特定する方法は、商品棚50を上方から撮像した様子が含まれる深度画像を利用して、基準位置24の高さ方向の位置を特定する方法と同様である。
 なお、商品棚50から取り出される商品40を特定する方法について説明したが、特定部2060は、同様の方法により、商品棚50へ置かれる商品40を特定してもよい。ただしこの場合、特定部2060は、商品棚50へ商品40を置く様子が含まれる撮像画像12を利用する。
 ここで、顧客20の動作として「(4)商品棚50との接触前後双方において商品40を保持する動作」が特定されたとする。この場合、特定部2060は、上述した商品40を特定する方法に基づいて、顧客20と商品棚50との接触前後において顧客20に保持されている商品40が互いに同一であるか否かを判定してもよい。例えば特定部2060は、顧客20と商品棚50との接触前における商品40を、商品棚50へ置かれる商品40を特定する方法と同様の方法で特定する。さらに特定部2060は、顧客20と商品棚50との接触後における商品40を、商品棚50から取り出される商品40を特定する方法と同様の方法で特定する。そして特定部2060は、特定された2つの商品40が互いに同一である場合、顧客20と商品棚50との接触前後において顧客20に保持されている商品40が互いに同一であると判定する。この場合、顧客20の動作は、「商品40を置こうとして商品棚50に手を伸ばしたものの商品40を置かない動作」であると言える。一方、特定部2060は、特定された2つの商品40が互いに異なる場合、顧客20と商品棚50との接触前後において顧客20に保持されている商品40が互いに異なると判定する。この場合、顧客20の動作は、「保持していた商品40を置いて他の商品40を取り出す動作」であると言える。
 ただし、上記の判定は、商品40を具体的に特定せずに行われてもよい。例えば特定部2060は、顧客20と商品棚50との接触前における解析対象領域30の前景領域と、顧客20と商品棚50との接触後における解析対象領域30の前景領域との差分(面積の差分や色の差分)の大きさを算出し、算出した差分の大きさが所定値以上である場合に、接触前後において商品40が互いに異なると判定する。一方、特定部2060は、上記差分の大きさが所定値未満である場合に、接触前後において商品40が互いに同一であると判定する。
 その他にも例えば、特定部2060は、顧客20と商品棚50との接触前後における基準位置24の違いに基づいて、上記接触前後において商品40が互いに同一であるか否かを判定する。この場合、特定部2060は、前述した陳列情報を用いて、顧客20と商品棚50との接触前において基準位置24が位置する商品棚50の段と、顧客20と商品棚50との接触後において基準位置24が位置する商品棚50の段とをそれぞれ特定する。そして特定部2060は、顧客20と商品棚50との接触前後それぞれについて特定された商品棚50の段が互いに異なる場合、上記接触前後において商品40が互いに異なると判定する。一方、特定部2060は、上記接触前後それぞれについて特定された商品棚50の段が互いに同一である場合に、上記接触前後において商品40が互いに同一であると判定する。
<特定部2060によって特定された顧客20の動作の活用方法>
 特定部2060によって特定された顧客20の動作は、顧客20が商品棚50の前において行う行動(いわゆる棚前行動)の解析に利用することができる。そのために、特定部2060は、各顧客20が商品棚50の前で行った動作、その動作が行われた日時、その動作の対象となった商品40などの種々の情報を出力する。この情報は、例えば情報処理装置2000に接続されている記憶装置に記憶されたり、情報処理装置2000と通信可能に接続されているサーバ装置などに送信されたりする。ここで、商品棚50の前で行われた顧客20の種々の動作に基づいて棚前行動の解析を行う手法には既存の種々の手法を利用することができる。
 なお、情報処理装置2000の利用シーンは、店舗における顧客の動作の特定に限定されない。例えば前述したように、情報処理装置2000は、工場の作業員などの動作を特定するために利用することができる。この場合、例えば情報処理装置2000によって特定された各作業員の動作を、予め定められている各作業員の動作と比較することで、作業員が所定の仕事を正しく行っているかどうかを確認することができる。
 以上、図面を参照して本発明の実施形態について述べたが、これらは本発明の例示であり、上記以外の様々な構成を採用することもできる。

Claims (15)

  1.  物の陳列場所が撮像された撮像画像から、前記撮像画像に含まれる人の手の位置を示す基準位置を検出する検出手段と、
     前記検出された基準位置を用いて、前記撮像画像の中の解析対象領域を決定し、前記解析対象領域を決定する決定手段と、
     前記決定された解析対象領域を解析することで、前記人の動作を特定する特定手段と、
     を有する情報処理装置。
  2.  前記決定手段は、前記検出された基準位置を基準とする所定形状の領域を、前記解析対象領域として決定する、請求項1に記載の情報処理装置。
  3.  前記検出手段は、前記人の手の姿勢をさらに検出し、
     前記決定手段は、前記検出された基準位置を基準とし、なおかつ前記検出された姿勢によって定まる向きの所定形状の領域を、前記解析対象領域として決定する、請求項2に記載の情報処理装置。
  4.  前記特定手段は、前記人が物を保持している動作、及び前記人が物を保持していない動作のうち、少なくとも1つの特定を行う、請求項1乃至3いずれか一項に記載の情報処理装置。
  5.  前記特定手段は、それぞれ異なる時点に生成された複数の撮像画像それぞれについて決定された前記解析対象領域を解析することで、前記人が前記陳列場所から物を取り出す動作、前記人が前記陳列場所との接触前後双方において物を保持していない動作、前記人が前記陳列場所に物を置く動作、及び前記人が前記陳列場所との接触前後双方において物を保持している動作のうち、少なくとも1つの特定を行う、請求項1乃至4いずれか一項に記載の情報処理装置。
  6.  前記特定手段は、前記陳列場所における各物体の位置を示す陳列情報、及び前記解析対象領域に含まれる前記基準位置の高さ方向の位置に基づいて、前記人の動作の対象である物を特定する、請求項1乃至5いずれか一項に記載の情報処理装置。
  7.  前記撮像画像は、前記陳列場所を上方から撮像するデプスカメラによって生成された深度画像であり、
     前記特定手段は、前記基準位置の高さ方向の位置を、前記深度画像における前記基準位置の画素値に基づいて特定する、請求項6に記載の情報処理装置。
  8.  コンピュータによって実行される制御方法であって、
     物の陳列場所が撮像された撮像画像から、前記撮像画像に含まれる人の手の位置を示す基準位置を検出する検出ステップと、
     前記検出された基準位置を用いて、前記撮像画像の中の解析対象領域を決定し、前記解析対象領域を決定する決定ステップと、
     前記決定された解析対象領域を解析することで、前記人の動作を特定する特定ステップと、
     を有する制御方法。
  9.  前記決定ステップにおいて、前記検出された基準位置を基準とする所定形状の領域を、前記解析対象領域として決定する、請求項8に記載の制御方法。
  10.  前記検出ステップにおいて、前記人の手の姿勢をさらに検出し、
     前記決定ステップにおいて、前記検出された基準位置を基準とし、なおかつ前記検出された姿勢によって定まる向きの所定形状の領域を、前記解析対象領域として決定する、請求項9に記載の制御方法。
  11.  前記特定ステップにおいて、前記人が物を保持している動作、及び前記人が物を保持していない動作のうち、少なくとも1つの特定を行う、請求項8乃至10いずれか一項に記載の制御方法。
  12.  前記特定ステップにおいて、それぞれ異なる時点に生成された複数の撮像画像それぞれについて決定された前記解析対象領域を解析することで、前記人が前記陳列場所から物を取り出す動作、前記人が前記陳列場所との接触前後双方において物を保持していない動作、前記人が前記陳列場所に物を置く動作、及び前記人が前記陳列場所との接触前後双方において物を保持していない動作のうち、少なくとも1つの特定を行う、請求項8乃至11いずれか一項に記載の制御方法。
  13.  前記特定ステップにおいて、前記陳列場所における各物体の位置を示す陳列情報、及び前記解析対象領域に含まれる前記基準位置の高さ方向の位置に基づいて、前記人の動作の対象である物を特定する、請求項8乃至12いずれか一項に記載の制御方法。
  14.  前記撮像画像は、前記陳列場所を上方から撮像するデプスカメラによって生成された深度画像であり、
     前記特定ステップにおいて、前記基準位置の高さ方向の位置を、前記深度画像における前記基準位置の画素値に基づいて特定する、請求項13に記載の制御方法。
  15.  請求項8乃至14いずれか一項に記載の制御方法の各ステップをコンピュータに実行させるプログラム。
PCT/JP2017/022875 2017-06-21 2017-06-21 情報処理装置、制御方法、及びプログラム WO2018235198A1 (ja)

Priority Applications (7)

Application Number Priority Date Filing Date Title
PCT/JP2017/022875 WO2018235198A1 (ja) 2017-06-21 2017-06-21 情報処理装置、制御方法、及びプログラム
JP2019524778A JP7197171B2 (ja) 2017-06-21 2017-06-21 情報処理装置、制御方法、及びプログラム
US16/623,656 US20210142490A1 (en) 2017-06-21 2017-06-21 Information processing apparatus, control method, and program
US17/349,045 US11763463B2 (en) 2017-06-21 2021-06-16 Information processing apparatus, control method, and program
JP2021112713A JP7332183B2 (ja) 2017-06-21 2021-07-07 情報処理装置、制御方法、及びプログラム
US18/227,848 US20240029273A1 (en) 2017-06-21 2023-07-28 Information processing apparatus, control method, and program
US18/227,850 US20230410321A1 (en) 2017-06-21 2023-07-28 Information processing apparatus, control method, and program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2017/022875 WO2018235198A1 (ja) 2017-06-21 2017-06-21 情報処理装置、制御方法、及びプログラム

Related Child Applications (2)

Application Number Title Priority Date Filing Date
US16/623,656 A-371-Of-International US20210142490A1 (en) 2017-06-21 2017-06-21 Information processing apparatus, control method, and program
US17/349,045 Continuation US11763463B2 (en) 2017-06-21 2021-06-16 Information processing apparatus, control method, and program

Publications (1)

Publication Number Publication Date
WO2018235198A1 true WO2018235198A1 (ja) 2018-12-27

Family

ID=64737005

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2017/022875 WO2018235198A1 (ja) 2017-06-21 2017-06-21 情報処理装置、制御方法、及びプログラム

Country Status (3)

Country Link
US (4) US20210142490A1 (ja)
JP (2) JP7197171B2 (ja)
WO (1) WO2018235198A1 (ja)

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111507125A (zh) * 2019-01-30 2020-08-07 佳能株式会社 检测装置和方法及图像处理装置和系统
JP2021047747A (ja) * 2019-09-19 2021-03-25 キヤノンマーケティングジャパン株式会社 情報処理装置、情報処理方法、プログラム
JP6877072B1 (ja) * 2020-07-07 2021-05-26 楽天グループ株式会社 領域抽出装置、領域抽出方法、及び領域抽出プログラム
JPWO2021171588A1 (ja) * 2020-02-28 2021-09-02
WO2021255894A1 (ja) * 2020-06-18 2021-12-23 日本電気株式会社 制御装置、制御方法、およびプログラム
WO2023053243A1 (ja) * 2021-09-29 2023-04-06 日本電気株式会社 報知システム、方法、及び、記録媒体
JP2023518284A (ja) * 2020-03-20 2023-04-28 華為技術有限公司 デバイスのハンドジェスチャベースの制御のための方法及びシステム

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000331170A (ja) * 1999-05-21 2000-11-30 Atr Media Integration & Communications Res Lab 手振り認識装置
JP2015041194A (ja) * 2013-08-21 2015-03-02 株式会社Nttドコモ ユーザ観察システム
JP2015106281A (ja) * 2013-11-29 2015-06-08 富士通株式会社 動作判定方法、動作判定装置および動作判定プログラム

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7227526B2 (en) * 2000-07-24 2007-06-05 Gesturetek, Inc. Video-based image control system
CN102007514B (zh) 2008-07-08 2012-09-19 松下电器产业株式会社 物品推定装置及物品位置推定装置、物品推定方法
WO2010099034A1 (en) * 2009-02-25 2010-09-02 Honda Motor Co., Ltd. Capturing and recognizing hand postures using inner distance shape contexts
JP5361530B2 (ja) 2009-05-20 2013-12-04 キヤノン株式会社 画像認識装置、撮像装置及び画像認識方法
WO2011007390A1 (ja) 2009-07-15 2011-01-20 株式会社 東芝 画像処理装置、及びインターフェース装置
JP5272213B2 (ja) 2010-04-30 2013-08-28 日本電信電話株式会社 広告効果測定装置、広告効果測定方法およびプログラム
JP5573379B2 (ja) * 2010-06-07 2014-08-20 ソニー株式会社 情報表示装置および表示画像制御方法
JP5561124B2 (ja) 2010-11-26 2014-07-30 富士通株式会社 情報処理装置、および価格設定方法
JP2013164834A (ja) * 2012-01-13 2013-08-22 Sony Corp 画像処理装置および方法、並びにプログラム
US10049281B2 (en) 2012-11-12 2018-08-14 Shopperception, Inc. Methods and systems for measuring human interaction
US10268983B2 (en) * 2013-06-26 2019-04-23 Amazon Technologies, Inc. Detecting item interaction and movement
JP2016162072A (ja) 2015-02-27 2016-09-05 株式会社東芝 特徴量抽出装置
JP6618301B2 (ja) 2015-08-31 2019-12-11 キヤノン株式会社 情報処理装置、その制御方法、プログラム、及び記憶媒体

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000331170A (ja) * 1999-05-21 2000-11-30 Atr Media Integration & Communications Res Lab 手振り認識装置
JP2015041194A (ja) * 2013-08-21 2015-03-02 株式会社Nttドコモ ユーザ観察システム
JP2015106281A (ja) * 2013-11-29 2015-06-08 富士通株式会社 動作判定方法、動作判定装置および動作判定プログラム

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
MATATSUGU, ITO ET AL.: "Hand and object tracking system for producing video-based Multimedia: Robust and real-time tracking by multiple vision sensors", IEICE TECHNICAL REPORT, vol. 102, no. 155, 20 June 2002 (2002-06-20), pages 43 - 50 *
SHO IKEMURA, HIRONUBU FUJIYOSHI: "Action Classification by joint boosting using spatiotemporal and depth information", TRANSACTIONS OF THE INSTTUTE OF ELECTRICAL ENGINEERS OF JAPAN C, vol. 130, no. 9, 1 September 2010 (2010-09-01), pages 1554 - 1560, DOI: 10.1541/ieejeiss.130.1554 *

Cited By (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2020123328A (ja) * 2019-01-30 2020-08-13 キヤノン株式会社 検出装置、及び方法、並びに画像処理装置及びシステム
CN111507125A (zh) * 2019-01-30 2020-08-07 佳能株式会社 检测装置和方法及图像处理装置和系统
JP2021047747A (ja) * 2019-09-19 2021-03-25 キヤノンマーケティングジャパン株式会社 情報処理装置、情報処理方法、プログラム
JP7375908B2 (ja) 2020-02-28 2023-11-08 日本電気株式会社 顧客分析装置、顧客分析方法、およびプログラム
JPWO2021171588A1 (ja) * 2020-02-28 2021-09-02
WO2021171588A1 (ja) * 2020-02-28 2021-09-02 日本電気株式会社 顧客分析装置、顧客分析方法、およびプログラム
US12001613B2 (en) 2020-03-20 2024-06-04 Huawei Technologies Co., Ltd. Methods and systems for hand gesture-based control of a device
JP2023518284A (ja) * 2020-03-20 2023-04-28 華為技術有限公司 デバイスのハンドジェスチャベースの制御のための方法及びシステム
WO2021255894A1 (ja) * 2020-06-18 2021-12-23 日本電気株式会社 制御装置、制御方法、およびプログラム
JPWO2021255894A1 (ja) * 2020-06-18 2021-12-23
JP7435771B2 (ja) 2020-06-18 2024-02-21 日本電気株式会社 制御装置、制御方法、およびプログラム
JP6877072B1 (ja) * 2020-07-07 2021-05-26 楽天グループ株式会社 領域抽出装置、領域抽出方法、及び領域抽出プログラム
WO2022009305A1 (ja) * 2020-07-07 2022-01-13 楽天グループ株式会社 領域抽出装置、領域抽出方法、及び領域抽出プログラム
WO2023053243A1 (ja) * 2021-09-29 2023-04-06 日本電気株式会社 報知システム、方法、及び、記録媒体

Also Published As

Publication number Publication date
US20230410321A1 (en) 2023-12-21
US11763463B2 (en) 2023-09-19
JP7197171B2 (ja) 2022-12-27
JP7332183B2 (ja) 2023-08-23
JPWO2018235198A1 (ja) 2020-04-09
US20210142490A1 (en) 2021-05-13
US20210343026A1 (en) 2021-11-04
US20240029273A1 (en) 2024-01-25
JP2021177399A (ja) 2021-11-11

Similar Documents

Publication Publication Date Title
JP7332183B2 (ja) 情報処理装置、制御方法、及びプログラム
US9558398B2 (en) Person behavior analysis device, person behavior analysis system, person behavior analysis method, and monitoring device for detecting a part of interest of a person
US9750420B1 (en) Facial feature selection for heart rate detection
US9538081B1 (en) Depth-based image stabilization
US9075453B2 (en) Human eye controlled computer mouse interface
JP6731097B2 (ja) 人体行動分析方法、人体行動分析装置、機器及びコンピュータ可読記憶媒体
US9349180B1 (en) Viewpoint invariant object recognition
US10063843B2 (en) Image processing apparatus and image processing method for estimating three-dimensional position of object in image
JP2015219892A (ja) 視線分析システムおよび視線分析装置
US11887331B2 (en) Information processing apparatus, control method, and non-transitory storage medium
US20230018877A1 (en) Image/video analysis with activity signatures
US20220012514A1 (en) Identification information assignment apparatus, identification information assignment method, and program
US20240104587A1 (en) Familiarity degree estimation apparatus, familiarity degree estimation method, and recording medium
JP2007241477A (ja) 画像処理装置
US20170007118A1 (en) Apparatus and method for estimating gaze from un-calibrated eye measurement points
JP2023129657A (ja) 情報処理装置、制御方法、及びプログラム
CN106406507B (zh) 图像处理方法以及电子设备
JP6311461B2 (ja) 視線分析システムおよび視線分析装置
JP6863390B2 (ja) 情報処理装置、制御方法、及びプログラム

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 17915078

Country of ref document: EP

Kind code of ref document: A1

ENP Entry into the national phase

Ref document number: 2019524778

Country of ref document: JP

Kind code of ref document: A

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 17915078

Country of ref document: EP

Kind code of ref document: A1