NON-TRANSITORY COMPUTER READABLE RECORDING MEDIUM, INFORMATION PROCESSING METHOD, AND INFORMATION PROCESSING APPARATUS
20230267487 · 2023-08-24
Assignee
Inventors
Cpc classification
G06V20/41
PHYSICS
G06Q30/015
PHYSICS
International classification
Abstract
A non-transitory computer-readable recording medium stores therein an information processing program that causes a computer to execute a process, the process including, identifying relationships between a plurality of customers and a sales clerk by analyzing a video in which an inside of a store is captured, identifying customers who received customer services from the sales clerk among the plurality of customers based on the identified relationships between the sales clerk and the plurality of customers, classifying each of the customers into a certain group such that the customers who received the services from the sales clerk belong to different groups, and associating the classified group with behaviors of the customers who belong to the group.
Claims
1. A non-transitory computer-readable recording medium having stored therein an information processing program that causes a computer to execute a process, the process comprising: identifying relationships between a plurality of customers and a sales clerk by analyzing a video in which an inside of a store is captured; identifying customers who received customer services from the sales clerk among the plurality of customers on the basis of the identified relationships between the sales clerk and the plurality of customers; classifying each of the customers into a certain group such that the customers who received the services from the sales clerk belong to different groups; and associating the classified group with behaviors of the customers who belong to the group.
2. The non-transitory computer-readable recording medium according to claim 1, the process further including: identifying behaviors of a plurality of customers who belong to the group in the store by analyzing the video; identifying a first behavior type that is led by a behavior of each of the customers belonging to the group among a plurality of behavior types that define transition of processes of the behaviors that are performed since entrance into the store until purchase of a product in the store; generating information on purchase of the product by using the first behavior type; and associating the group with the information on the purchase of the product.
3. The non-transitory computer-readable recording medium according to claim 1, the process further including: inputting a first partial image of a first person who is extracted from the video into a machine learning model that is generated through machine learning using a partial image of a person extracted from the video as a feature value and adopting one of the sales clerk and the customer as a correct answer label; and determining whether the first person is one of the sales clerk and the customer.
4. The non-transitory computer-readable recording medium according to claim 3, wherein the identifying the relationships includes identifying relationships between the sales clerk and the customers by inputting the video into a machine learning model if it is determined that the video includes the sales clerk and the customers; and determining whether the relationships between the sales clerk and the customers indicate a customer service behavior.
5. The non-transitory computer-readable recording medium according to claim 1, the process further including: generating a customer service history of the sales clerk on the basis of the customers who are identified as having received the services from the sales clerk; wherein the classifying into a group includes, if the sales clerk provided a customer service to each of the customers on the basis of the customer service history, determining that the plurality of customers belong to different groups.
6. The non-transitory computer-readable recording medium according to claim 1, wherein the classifying into a group includes adding a penalty value to a group similarity of the plurality of customers who are identified as having received the services from the sales clerk, and determining that, if the group similarity is equal to or larger than a predefined threshold, the plurality of customers belong to different groups.
7. The non-transitory computer-readable recording medium according to claim 2, the process further including: identifying an image area of each of plurality of customers from the video; identifying a position of a skeleton in a person relative to the product by inputting the image area of each of plurality of customers into a neural networks; identifying the behaviors of a plurality of customers based on the position of a skeleton in a person relative to the product.
8. An information processing method implemented by a computer, the information processing method comprising: identifying relationships between a plurality of customers and a sales clerk by analyzing a video in which an inside of a store is captured; identifying customers who received customer services from the sales clerk among the plurality of customers on the basis of the identified relationships between the sales clerk and the plurality of customers; classifying each of the customers into a certain group such that the customers who received the services from the sales clerk belong to different groups; and associating the classified group with behaviors of the customers who belong to the group, by a processor.
9. The information processing method according to claim 8, further including: identifying behaviors of a plurality of customers who belong to the group in the store by analyzing the video; identifying a first behavior type that is led by a behavior of each of the customers belonging to the group among a plurality of behavior types that define transition of processes of the behaviors that are performed since entrance into the store until purchase of a product in the store; generating information on purchase of the product by using the first behavior type; and associating the group with the information on the purchase of the product.
10. The information processing method according to claim 8, further including: inputting a first partial image of a first person who is extracted from the video into a machine learning model that is generated through machine learning using a partial image of a person extracted from the video as a feature value and adopting one of the sales clerk and the customer as a correct answer label; and determining whether the first person is one of the sales clerk and the customer.
11. The information processing method according to claim 10, wherein the identifying the relationships includes identifying relationships between the sales clerk and the customers by inputting the video into a machine learning model if it is determined that the video includes the sales clerk and the customers; and determining whether the relationships between the sales clerk and the customers indicate a customer service behavior.
12. The information processing method according to claim 8, further including: generating a customer service history of the sales clerk on the basis of the customers who are identified as having received the services from the sales clerk; wherein the classifying into a group includes, if the sales clerk provided a customer service to each of the customers on the basis of the customer service history, determining that the plurality of customers belong to different groups.
13. The information processing method according to claim 8, wherein the classifying into a group includes adding a penalty value to a group similarity of the plurality of customers who are identified as having received the services from the sales clerk, and determining that, if the group similarity is equal to or larger than a predefined threshold, the plurality of customers belong to different groups.
14. An information processing apparatus comprising: a memory; and a processor coupled to the memory and the processor configured to: identify relationships between a plurality of customers and a sales clerk by analyzing a video in which an inside of a store is captured; identify customers who received customer services from the sales clerk among the plurality of customers on the basis of the identified relationships between the sales clerk and the plurality of customers; classify each of the customers into a certain group such that the customers who received the services from the sales clerk belong to different groups; and associate the classified group with behaviors of the customers who belong to the group.
15. The information processing apparatus according to claim 14, the processor is configured to: identify behaviors of a plurality of customers who belong to the group in the store by analyzing the video; identify a first behavior type that is led by a behavior of each of the customers belonging to the group among a plurality of behavior types that define transition of processes of the behaviors that are performed since entrance into the store until purchase of a product in the store; generate information on purchase of the product by using the first behavior type; and associate the group with the information on the purchase of the product.
16. The information processing apparatus according to claim 14, wherein the processor is configured to: input a first partial image of a first person who is extracted from the video into a machine learning model that is generated through machine learning using a partial image of a person extracted from the video as a feature value and adopting one of the sales clerk and the customer as a correct answer label; and determine whether the first person is one of the sales clerk and the customer.
17. The information processing apparatus according to claim 16, wherein the processor is configured to: identify relationships between the sales clerk and the customers by inputting the video into a machine learning model if it is determined that the video includes the sales clerk and the customers; and determine whether the relationships between the sales clerk and the customers indicate a customer service behavior.
18. The information processing apparatus according to claim 14, the processor is configured to: generate a customer service history of the sales clerk on the basis of the customers who are identified as having received the services from the sales clerk; wherein the classifying into a group includes, if the sales clerk provided a customer service to each of the customers on the basis of the customer service history, determining that the plurality of customers belong to different groups.
19. The information processing apparatus according to claim 14, wherein the processor is configured to: add a penalty value to a group similarity of the plurality of customers who are identified as having received the services from the sales clerk, and determine that, if the group similarity is equal to or larger than a predefined threshold, the plurality of customers belong to different groups.
Description
BRIEF DESCRIPTION OF DRAWINGS
[0007]
[0008]
[0009]
[0010]
[0011]
[0012]
[0013]
[0014]
[0015]
[0016]
[0017]
[0018]
[0019]
[0020]
[0021]
[0022]
[0023]
[0024]
[0025]
[0026]
[0027]
DESCRIPTION OF EMBODIMENT(S)
[0028] Embodiments of an information processing program, an information processing method, and an information processing apparatus will be described in detail below based on the drawings. The present embodiments are not limited by the embodiments below. In addition, the embodiments may be combined appropriately as long as no contradiction is derived.
[0029] First, an information processing system for carrying out one embodiment will be described below.
[0030] As the network 50, for example, various kinds of communication networks, such as the Internet, used inside a store, such as a retail store, may be adopted regardless of whether the network is wired or wireless. Further, the network 50 may be configured with an intranet and the Internet via a network device, such as a gateway, or a different device (not illustrated), instead of a single network. Meanwhile, a phrase of “inside of a store”, such as a retail store, is not limited to an indoor area, but may include an outside area on the ground at the store, such as a retail store.
[0031] The information processing apparatus 10 is, for example, an information processor, such as a desktop personal computer (PC), a notebook PC, or a server computer, which is installed inside of a store, such as a retail store, and used by a store staff, an administrator, or the like. Alternatively, the information processing apparatus 10 may be a cloud computing apparatus that is managed by a service provider who provides a cloud computing service.
[0032] The information processing apparatus 10 receives, from the camera device 200, a plurality of images in which a predetermined imaging range, such as each of sales floors or a cashier area, inside of the store, such as a retail store is captured by the camera device 200. Meanwhile the plurality of images are, in a precise sense, a series of frames of a video, that is, a moving image, captured by the camera device 200.
[0033] Further, the information processing apparatus 10 extracts a person who stays in the store from the video captured by the camera device 200 and tracks the extracted person, by using an existing object detection technology. Furthermore, the information processing apparatus 10 generates skeleton information on the person who is tracked (hereinafter, the person may simply be referred to as a “tracked person”) by using the existing skeleton detection technology, estimates a posture and a motion of the tracked person by using an existing posture estimation technology or the like, and identifies a behavior of the tracked person.
[0034] Moreover, the information processing apparatus 10 determines whether the extracted person is a sales clerk or a customer (hereinafter, the sales clerk and the customer may collectively be referred to as a “person”) by using a machine learning model. Furthermore, the information processing apparatus 10 identifies a customer who has received a service from a sales clerk on the basis of a relationship between the sales clerk and the customer.
[0035] Moreover, the information processing apparatus 10 determines a group of customers by using a customer service history of the sales clerk. The determination is based on, for example, the characteristics that “a sales clerk does not generally serve a plurality of customers in the same group”, and, the information processing apparatus 10 determines that a plurality of customers who are served by the sales clerk belong to different groups, for example.
[0036] Furthermore, the information processing apparatus 10 identifies, for each group of customers, a first behavior type that is led by behaviors performed by the tracked person, among a plurality of behavior types that define transition of behaviors since entrance of the customer as the tracked person into the store until purchase of a product by the customer in the store. Details of the process of behaviors and identification of the resultant first behavior type will be described later; however, a person in the store may perform various behaviors, such as entrance into the store, looking at a product, picking up a product, comparison, or purchase, and a behavior that is classified into a certain type in association with a process will be referred to as the behavior type. Moreover, the information processing apparatus 10 identifies, for each group of customers, the first behavior type that is led by a customer through various behaviors.
[0037] Furthermore, the information processing apparatus 10 determines, for each group of customers, whether the tracked person has moved to the outside of a predetermined area, for example, to a cashier area. Moreover, if the information processing apparatus 10 determines that the tracked person has moved to the outside of the area, the information processing apparatus 10 determines, for each group of customers, whether the tracked person has purchased a product or has left without purchasing a product, on the basis of the first behavior type.
[0038] In other words, the information processing apparatus 10 identifies, from the video, behaviors of a plurality of customers who belong to a certain group in the store. Then, the information processing apparatus 10 identifies the first behavior type that is led by behaviors of each of the customers who belong to a certain group, among a plurality of behavior types that define transition of behaviors since entrance into the store until purchase of a product in the store. Subsequently, the information processing apparatus 10 generates information on purchase of a product by using the first behavior type, and associates the group and the information on the purchase of the product with each other.
[0039] While the information processing apparatus 10 is illustrated as a single computer in
[0040] The camera device 200 is, for example, a monitoring camera that is installed in each of sales floors and a cashier area inside the store, such as a retail store. A video that is captured by the camera device 200 is transmitted to the information processing apparatus 10. Further, each of products and sales floors captured by the camera device 200 is assigned with location information, such as a coordinate, for identifying each of the products and the sales floors, and, for example, the information processing apparatus 10 is able to identify each of the products and the service areas from the video that is received from the camera device 200.
[0041] Functional configuration of information processing apparatus 10
[0042] A functional configuration of the information processing apparatus 10 will be described below.
[0043] The communication unit 11 is a processing unit that controls communication with a different apparatus, such as the camera device 200, and is, for example, a communication interface, such as a network interface card.
[0044] The storage unit 12 has a function to store therein various kinds of data and a program to be executed by the control unit 20, and is implemented by, for example, a storage device, such as a memory or a hard disk. The storage unit 12 stores therein an imaging DB 13, a camera installation DB 14, a product DB 15, a person DB 16, a model DB 17, and the like. Meanwhile, DB is an abbreviation of a database.
[0045] The imaging DB 13 stores therein a plurality of captured images that are a series of frames captured by the camera device 200. Further, in the imaging DB 13, location information, such as a coordinate, for identifying each of products, regions of sales floors, and extracted persons in each of the captured images may be stored in association with each of the captured images. Furthermore, the imaging DB 13 stores therein the skeleton information on a person who is extracted and identified from a captured image. Generation of the skeleton information will be described later.
[0046] The camera installation DB 14 stores therein information for identifying a place in which each of the camera devices 200 is installed. The information stored in this example may be set in advance by an administrator or the like.
[0047] The product DB 15 stores therein information on a product that is provided in each of the sales floors. The information stored in this example may be set in advance by an administrator or the like.
[0048] The person DB 16 stores therein information on the tracked person, such as a customer or a sales clerk, who stays in the store. The information stored in this example is generated and set by the information processing apparatus 10 on the basis of a video or information received from the camera device 200.
[0049] The model DB 17 stores therein information on a machine learning model for determining whether the person who is extracted from the video captured by the camera device 200 is a sales clerk or a customer, and a model parameter for constructing the machine learning model. The machine learning model, that is, a sales clerk/customer determination model, is generated through machine learning by using a partial image of the person who is extracted from the video captured by the camera device 200 as a feature value and by using a sales clerk or a customer as a correct answer label, for example.
[0050] Furthermore, the model DB 17 stores therein information on a machine learning model for detecting a person who has left without purchasing a product (hereinafter, the person may be referred to as a “leaving person”), and a model parameter for constructing the machine learning model. The machine learning model, that is, a leaving person detection model, is generated through machine learning by using behavioral features of a product purchaser and a leaving person as feature values and by using a purchaser and a leaving person as a correct answer label.
[0051] Meanwhile, the sales clerk/customer determination model and the leaving person detection model may be generated by the information processing apparatus 10 or may be generated by training by a different information processing apparatus. Furthermore, the information stored in the storage unit 12 as described above is one example, and the storage unit 12 may store therein various kinds of information in addition to the information as described above.
[0052] The control unit 20 is a processing unit that controls the entire information processing apparatus 10, and is, for example, a processor or the like. The control unit 20 includes an imaging unit 21, a tracking unit 22, a skeleton detection unit 23, a motion recognition unit 24, a behavior determination unit 25, a sales clerk/customer determination unit 26, and a group determination unit 27. Meanwhile, each of the processing units is one example of an electronic circuit that is included in the processor or one example of a process that is performed by the processor.
[0053] The imaging unit 21 is a processing unit that captures an image. For example, the imaging unit 21 receives image data captured by the camera device 200 and stores the image data in the imaging DB 13.
[0054] The tracking unit 22 is a processing unit that acquires each piece of image data that is captured before a person who has entered a store leaves the store. Specifically, the tracking unit 22 extracts image data in which a person appears from a plurality of pieces of image data, that is, a plurality of frames, which are captured by the camera device 200, and identifies the same person among the frames.
[0055] For example, the tracking unit 22 tracks a certain person since entrance into a store until leave from the store, and acquires each piece of image data of the certain person who is captured in the store.
[0056]
[0057] Furthermore, as illustrated in an upper part in
[0058] The skeleton detection unit 23 acquires the skeleton information on the person who appears in the image data. Specifically, the skeleton detection unit 23 performs skeleton detection on a person with respect to the image data in which each of the persons extracted by the tracking unit 22 appears.
[0059] For example, the skeleton detection unit 23 acquires the skeleton information by inputting the image data of the extracted person, that is, the BBOX image representing the extracted person, to a trained machine learning model that is constructed by using an existing algorithm, such as DeepPose or OpenPose.
[0060] Furthermore, the skeleton detection unit 23 may determine a posture of the whole body, such as standing, walking, squatting, sitting, or sleeping, by using a machine learning model that is trained for skeleton patterns in advance. For example, the skeleton detection unit 23 may be able to determine the closest posture of the whole body by using a machine learning model that is trained by using Multilayer Perceptron for an angle between some joints in the skeleton information as illustrated in
[0061] Furthermore, the skeleton detection unit 23 is able to detect a motion of each of parts by determining a posture of the part on the basis of a three-dimensional (3D) joint posture of the body. Specifically, the skeleton detection unit 23 is able to convert a two-dimensional (2D) joint coordinate to a 3D joint coordinate by using an existing algorithm, such as a 3D-baseline method.
[0062]
[0063] With respect to a part “arm”, the skeleton detection unit 23 is able to detect whether left and right arms are oriented in any direction from among forward, backward, leftward, rightward, upward, and downward directions (six types) by determining whether an angle between forearm orientation and each directional vector is equal to or smaller than a threshold. Meanwhile, the skeleton detection unit 23 is able to detect the arm orientation by a vector that is defined such that “a start point is an elbow and an end point is a wrist”.
[0064] With respect to a part “leg”, the skeleton detection unit 23 is able to detect whether left and right legs are oriented in any direction from among forward, backward, leftward, rightward, upward, and downward directions (six types) by determining whether an angle between a lower leg orientation and each directional vector is equal to or smaller than a threshold. Meanwhile, the skeleton detection unit 23 is able to detect the lower leg orientation by a vector that is defined such that “a start point is a knee and an end point is an ankle”.
[0065] With respect to a part “elbow”, the skeleton detection unit 23 is able to detect that the elbow is extended if an angle of the elbow is equal to or larger than a threshold and the elbow is flexed if the angle is smaller than the threshold (two types). Meanwhile, the skeleton detection unit 23 is able to detect the angle of the elbow by an angle between a vector A that is defined such that “a start point is an elbow and an end point is a shoulder” and a vector B that is defined such that “a start point is an elbow and an end point is a wrist”.
[0066] With respect to a part “knee”, the skeleton detection unit 23 is able to detect that the knee is extended if an angle of the knee is equal to or larger than a threshold and the knee is flexed if the angle is smaller than the threshold (two types). Meanwhile, the skeleton detection unit 23 is able to detect the angle of the knee by an angle between a vector A that is defined such that “a start point is a knee and an end point is an ankle” and a vector B that is defined such that “a start point is a knee and an end point is a hip”.
[0067] With respect to a part “hip”, the skeleton detection unit 23 is able to detect left twist and right twist (two types) by determining whether an angle between the hip and the shoulder is equal to or smaller than a threshold, and is able to detect that the hip is oriented forward if the angle is smaller than the threshold. Meanwhile, the skeleton detection unit 23 is able to detect the angle between the hip and the shoulder from a rotation angle about an axial vector C that is defined such that “a start point is a midpoint of both hips and an end point is a midpoint of both shoulders”, with respect to each of a vector A that is defined such that “a start point is a left shoulder and an end point is a right shoulder” and a vector B that is defined such that “a start point is a left hip (hip (L)) and an end point is a right hip (hip (R))”.
[0068] Referring back to explanation of
[0069] For example, if a skeleton representing a face looking at the front is continuously detected by determination of each of the parts and a skeleton representing standing is continuously detected by determination on the posture of the whole body among several frames, the motion recognition unit 24 recognizes a motion of “looking at the front for a certain time”. Further, if a skeleton in which a change of the posture of the whole body is smaller than a predetermined value is continuously detected among several frames, the motion recognition unit 24 recognizes a motion of “not moved”.
[0070] Furthermore, if a skeleton in which the angle of the elbow is changed by a predetermined threshold or more is detected among several frames, the motion recognition unit 24 recognizes a motion of “moving one hand forward” or a motion of “extending one arm”, and, if a skeleton in which the angle of the elbow is changed by the threshold or more and thereafter the angle reaches less than the threshold is detected among several frames, the motion recognition unit 24 recognizes a motion of “flexing one hand”. Moreover, if a skeleton in which the angle of the elbow is changed by the threshold or more and thereafter the angle reaches less than the threshold is detected, and thereafter, the angle is continued among several frames, the motion recognition unit 24 recognizes a motion of “looking at one hand”.
[0071] Furthermore, if a skeleton in which an angle of a wrist is continuously changed is detected among several frames, the motion recognition unit 24 recognizes a motion of “frequently moving the coordinate of the wrist during a certain time period”. If a skeleton in which the angle of the wrist is continuously changed and the angle of the elbow is continuously changed is detected among several frames, the motion recognition unit 24 recognizes a motion of “frequently changing the coordinate of the elbow and the coordinate of the wrist during a certain time period”. If a skeleton in which the angle of the wrist, the angle of the elbow, and the orientation of the whole body are continuously changed is detected among several frames, the motion recognition unit 24 recognizes a motion of “frequently moving the body orientation and whole body motion during a certain time period”.
[0072] Moreover, the motion recognition unit 24 identifies a product and a sales floor in image data in which a person, a product, and a sales floor of the product appear, from an imaging area of each of the camera devices 200 and the coordinates of each of products in the imaging area and a sales floor of each of the products.
[0073]
[0074] Furthermore, the motion recognition unit 24 identifies a first behavior type that is led by behaviors of the tracked person among a plurality of behavior types that define transition of processes of behaviors from entrance into the store until purchase of a product in the store. The behavior type will be described in detail below.
[0075]
[0076]
[0077] In the example illustrated in
[0078] Meanwhile, in the example illustrated in in
[0079] Referring back to explanation of
[0080] As illustrated in
[0081] Meanwhile, to identify the same person, for example, it may be possible to construct, by deep learning, a machine learning model that inputs a BBOX image of a person and outputs a feature value vector of the person indicated by the BBOX, and determine identity of the person from similarity evaluation on the feature value.
[0082] Further, if it is determined that the tracked person has moved to the outside of the area, the behavior determination unit 25 identifies whether the tracked person has purchased a product or left without purchasing a product.
[0083] As illustrated in
[0084] Meanwhile, the behavior determination unit 25 may identify that the person has purchased the product if it is simply determined that the person who has identified in the sales floor has moved to the cashier area. In contrast, if it is not determined that the person has moved to the cashier area or if it is not determined that the person has moved to the cashier area within a predetermined time since leave from the sales floor, the behavior determination unit 25 may identify that the person has left without purchasing the product.
[0085] As described above, it is possible to identify the purchase behavior of the customer, analyze the purchase behavior, and use the purchase behavior to improve the conversion rate or the like. However, a customer who visits the store includes a group customer, such as a married couple, a couple, or a family, which consists of a plurality of persons, and in some cases, it may be difficult to fully perform analysis only by using an individual purchase behavior. More specifically, for example, in a case where a person A in a group customer tries on a product and hands over the product to a person B in the same group and the person B purchases the product, if an analysis is performed based on an individual purchase behavior, it is determined that the person A has been interested in the product but left without purchasing the product. Further, it is determined that the person B has purchased a certain product without picking up the product. In this manner, in the case in which a plurality of persons cooperate with each other, in some cases, it may be difficult to accurately analyze a purchase behavior of a person.
[0086] To cope with this, it may be possible to determine a group of persons based on a distance between the persons; however, in some cases, it may be difficult to accurately perform determination based on the distance between the persons.
[0087]
[0088] To cope with this, in the present embodiment, a group of customers is determined by using a customer service history of a sales clerk. This is a determination method in which, based on the characteristics that, for example, “a sales clerk does not generally serve a plurality of persons in the same group”, determination is made by applying a penalty to a group similarity because a plurality of customers who receives services from the sales clerk are highly likely to belong to different groups.
[0089] To implement the determination method as described above, referring back to
[0090]
[0091] Subsequently, as illustrated in a right part in
[0092] Subsequently, the information processing apparatus 10 identifies a customer service behavior of the sales clerk on the basis of positions of the sales clerk and the customer who are identified by the sales clerk/customer determination model as illustrated in
[0093] The information processing apparatus 10 inputs image data, which is a single frame of a video captured by the camera device 200, to a machine learning model for HOID, and acquires an output result. The output result is, for example, a BBOX of a person, a class name of the person, a BBOX of an object, a class name of the object, a probability value of interaction between the person and the object, a class name of the interaction between the person and the object, or the like.
[0094] The information processing apparatus 10 inputs the video in which the inside of the store appears into the machine learning model, and identifies a relationship among a plurality of persons who stay in the store. At this time, the information processing apparatus 10 identifies whether the customer service behavior is performed, as a relationship between the sales clerk and the customer.
[0095] Meanwhile, the machine learning model is a model for HOID for which machine learning is performed so as to identify a first class that indicates a first person, first area information that indicates an area in which the person appears, a second class that indicates a second person, second area information in which an object appears, and a relationship between the first class and the second class.
[0096] Further, based on the customer service history and the characteristics that, for example, “a sales clerk does not generally serve a plurality of persons in the same group”, a penalty is applied to the group similarity because a plurality of customers who receives services from the sales clerk are highly likely to belong to different groups.
[0097] A group similarity illustrated in a left part in
[0098] Moreover, the information processing apparatus 10 adds the penalty value c and thereafter determines a group of persons. In the example illustrated in
[0099] Flow of Process
[0100] A flow of a purchase/leave determination process that is performed by the information processing apparatus 10 by taking into account a group customer will be described below.
[0101] First, as illustrated in
[0102] Subsequently, the information processing apparatus 10 extracts a person from the captured image acquired at Step S101, by using an existing object detection technology (Step S102). Meanwhile, as for the extraction of a person, it is naturally possible to extract a plurality of persons from the captured image, that is, from a single frame of a video, which is captured by the camera device 200. Therefore, the process from Step S103 is performed for each of the extracted persons.
[0103] Subsequently, the information processing apparatus 10 tracks the person extracted at Step S102 (Step S103). As for the tracking of the person, the same person is identified by using an existing technology to persons who are extracted from a plurality of frames of the video that is captured by the camera device 200, and tracks each of the persons. Therefore, as for the flow of the process, in a precise sense, Steps S101 to S103 are repeated to track the persons.
[0104] Subsequently, the information processing apparatus 10 identifies a behavior of the tracked person (Step S104). More specifically, for example, with use of an existing technology, the information processing apparatus 10 acquires the skeleton information on the person from the captured images that are successively captured, and identifies a behavior including motions of the person by determining a posture of the person. Furthermore, the information processing apparatus 10 identifies a product and a sales floor in the captured images by using an ROI that is designated in advance for each of products and a sales floor in the imaging area of the camera device 200, and performs determination in combination with the motions of the person, to thereby identify a detailed behavior of the person with respect to the product and the sales floor.
[0105] Subsequently, the information processing apparatus 10 determines whether the tracked person is a sales clerk or a customer by using the sales clerk/customer determination model that is a machine learning model as explained above with reference to
[0106] Subsequently, the information processing apparatus 10 identifies the customer service behavior of the sales clerk identified at Step S105, as explained above with reference to
[0107] The information processing apparatus 10 analyzes a video in which the inside of the store is captured, and identifies relationships between a plurality of customers and the sales clerk. Furthermore, the information processing apparatus 10 identifies a customer who has received a service from the sales clerk among the plurality of customers, on the basis of the identified relationships between the sales clerk and the plurality of customers.
[0108] Specifically, if it is determined that the video includes a sales clerk and a customer, the information processing apparatus 10 inputs the video to the machine learning model, and identifies a relationship between the sales clerk and the customer. At this time, the information processing apparatus 10 determines, as the relationship, whether the sales clerk has performed the customer service behavior for the customer.
[0109] Subsequently, the information processing apparatus 10 adds a penalty on the basis of the customer service history and determines groups of the tracked persons as described above with reference to
[0110] Subsequently, the information processing apparatus 10 identifies a behavior type that is led by behaviors of the tracked person (Step S108). The behavior type identified here is a behavior type that is associated with the purchase psychological process as explained above with reference to
[0111] Subsequently, the information processing apparatus 10 determines whether the tracked person has moved to the cashier area (Step S109). Whether the tracked person has moved to the cashier area is determined by determining whether a person extracted from a captured image of the cashier area is the person who is identified in the sales floor, that is, the same person as the tracked person. Further, as described above, it may be possible to set a time limit, and if it is determined that the person is the same person as the person who is identified in the cashier area within a predetermined time period since the person has left the sales floor, it may be possible to determine that the person has moved to the cashier area, for example. Furthermore, in the example illustrated in
[0112] Meanwhile, the determination at Step S109 is performed for each group if a plurality of tracked persons are determined as belonging to the same group at Step S107. In other words, if it is determined that one of the tracked persons who are determined as belonging to the same group has moved to the cashier area, the process goes to the route of Yes at Step S109, and if it is determined that any one of the tracked persons has not moved to the cashier area, the process goes to the route of No at Step S109.
[0113] In contrast, if it is determined that the tracked person has moved to the cashier area (Step S109: Yes), the information processing apparatus 10 identifies whether the tracked person has purchased the product or left without purchasing the product (Step S110). In the identification of purchase or left, for example, if the final resultant behavior type that is identified at Step S108 is a behavior corresponding to the purchase psychological process of “Action”, the information processing apparatus 10 may identify that the tracked person has purchased the product. Alternatively, if it is simply determined that the tracked person has moved to the cashier area (Step S109: Yes), the information processing apparatus 10 may identify that the tracked person has purchased the product. In contrast, if the final resultant behavior type that is identified at Step S108 is a behavior corresponding to a different purchase psychological process from the purchase psychological process of “Action”, the information processing apparatus 10 may identify that the tracked person has left without purchasing the product. Alternatively, if the person is not identified in the cashier area within a predetermined time period since the person has left the sales floor, the information processing apparatus 10 may identify that the tracked person has left without purchasing the product. After execution of Step S110, the purchase/leave determination process illustrated in
[0114] Meanwhile, the identification at Step S110 is also performed for each group if a plurality of tracked persons are determined as belonging to the same group at Step S107. In other words, if the final resultant behavior type of one of the tracked persons who are determined as belonging to the same group is a behavior corresponding to the purchase psychological process of “Action” or if it is determined that one of the tracked persons has moved to the cashier area (Step S109: Yes), it may be possible to identify that the person has purchased the product. In this case, it may be possible to determine that the plurality of tracked persons belonging to the same group have, as the group customer, purchased the products. In contrast, if the final resultant behavior types of all of the tracked persons who are determined as belonging to the same group are behaviors corresponding to a different purchase psychological process from the purchase psychological process of “Action”, it may be possible to identify that the plurality of tracked persons, as the group customer, have left without purchasing the products.
[0115] Effects
[0116] As described above, the information processing apparatus 10 identifies relationships between a plurality of customers and a sales clerk by analyzing a video in which an inside of a store is captured, identifies customers who have received customer services from the sales clerk among the plurality of customers on the basis of the identified relationships between the sales clerk and the plurality of customers, classifies each of the customers into a certain group such that the customers who have received the services from the sales clerk belong to different groups, and associates the classified group with behaviors of the customers who belong to the group.
[0117] In this manner, the information processing apparatus 10 is able to accurately analyze the purchase behavior of the person by identifying the customer who has received the service from the sales clerk and the group of customers from the video in which the inside of the store is captured, and analyzing purchase behaviors of the customers in the group as a group customer.
[0118] Furthermore, the information processing apparatus 10 identifies behaviors of a plurality of customers who belong to the group in the store by analyzing the video, identifies a first behavior type that is led by a behavior of each of the customers belonging to the group among a plurality of behavior types that define transition of processes of the behaviors that are performed since entrance into the store until purchase of a product in the store, generates information on purchase of the product by using the first behavior type, and associates the group with the information on the purchase of the product.
[0119] With this configuration, the information processing apparatus 10 is able to more accurately analyze the purchase behavior of the group customer.
[0120] Moreover, the information processing apparatus 10 inputs a first partial image of a first person who is extracted from the video into a machine learning model that is generated through machine learning using a partial image of a person extracted from the video as a feature value and adopting one of the sales clerk and the customer is a correct answer label, and determines whether the first person is the sales clerk or the customer.
[0121] With this configuration, the information processing apparatus 10 is able to identify whether the person extracted from the video is a sales clerk or a customer.
[0122] Furthermore, the process of identifying the relationships includes identifying relationships between the sales clerk and the customers by inputting the video into a machine learning model if it is determined that the video include the sales clerk and the customers, and determining whether the relationships between the sales clerk and the customers indicate a customer service behavior.
[0123] With this configuration, the information processing apparatus 10 is able to more accurately analyze the customer service behavior performed by the sales clerk.
[0124] Moreover, the information processing apparatus 10 generates a customer service history of the sales clerk on the basis of the customers who are identified as having received the services from the sales clerk, and the process of classification into a group includes, if the sales clerk has provided a customer service to each of the customers on the basis of the customer service history, a process of determining that the plurality of customers belongs to different groups.
[0125] With this configuration, the information processing apparatus 10 is able to identify a group customer.
[0126] Furthermore, the process of classification into a group includes a process of adding a penalty value to a group similarity of the plurality of customers who are identified as having received the services from the sales clerk, and determining that, if the group similarity is equal to or larger than a predefined threshold, the plurality of customers belong to different groups.
[0127] With this configuration, the information processing apparatus 10 is able to more accurately identify a group customer.
[0128] System
[0129] The processing procedures, control procedures, specific names, and information including various kinds of data and parameters illustrated in the above-described document and drawings may be arbitrarily changed unless otherwise specified. In addition, specific examples, distributions, values, or the like explained in the embodiments are mere examples, and may be changed arbitrarily.
[0130] Furthermore, specific forms of distribution and integration of components of the apparatuses are not limited to those illustrated in the drawings. In other words, all or part of the components may be functionally or physically distributed or integrated in arbitrary units depending on various loads or use conditions. Moreover, for each processing function performed by each apparatus, all or any part of the processing function may be implemented by a central processing unit (CPU) and a program analyzed and executed by the CPU or may be implemented as hardware by wired logic.
[0131] Hardware
[0132]
[0133] The communication device 10a is a network interface card or the like and communicates with a different server. The HDD 10b stores therein a program or a DB for implementing the functions as illustrated in
[0134] The processor 10d is a hardware circuit that reads a program that executes the same processes as each of the processing units illustrated in
[0135] In this manner, the information processing apparatus 10 functions as an information processing apparatus that performs an operation control process by reading the program that executes the same processes as those of each of the processing units illustrated in
[0136] Furthermore, the program that executes the same processes as those of each of the processing units illustrated in
[0137] According to one aspect, it is possible to more accurately analyze a purchase behavior of a person.
[0138] All examples and conditional language recited herein are intended for pedagogical purposes of aiding the reader in understanding the invention and the concepts contributed by the inventor to further the art, and are not to be construed as limitations to such specifically recited examples and conditions, nor does the organization of such examples in the specification relate to a showing of the superiority and inferiority of the invention. Although the embodiment of the present invention have been described in detail, it should be understood that the various changes, substitutions, and alterations could be made hereto without departing from the spirit and scope of the invention.