WO2023188417A1 - 作業分析装置 - Google Patents

作業分析装置 Download PDF

Info

Publication number
WO2023188417A1
WO2023188417A1 PCT/JP2022/016971 JP2022016971W WO2023188417A1 WO 2023188417 A1 WO2023188417 A1 WO 2023188417A1 JP 2022016971 W JP2022016971 W JP 2022016971W WO 2023188417 A1 WO2023188417 A1 WO 2023188417A1
Authority
WO
WIPO (PCT)
Prior art keywords
work
unit
object detection
video data
worker
Prior art date
Application number
PCT/JP2022/016971
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/JP2022/016971 priority Critical patent/WO2023188417A1/ja
Publication of WO2023188417A1 publication Critical patent/WO2023188417A1/ja

Links

Images

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/418Total factory control, i.e. centrally controlling a plurality of machines, e.g. direct or distributed numerical control [DNC], flexible manufacturing systems [FMS], integrated manufacturing systems [IMS] or computer integrated manufacturing [CIM]
    • 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
    • G06Q50/00Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
    • G06Q50/04Manufacturing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis

Definitions

  • the present invention relates to a work analysis device.
  • the position of the worker's hand is identified from the image data with depth captured by the depth sensor
  • the position of the object is identified from the image data captured by the digital camera
  • the details of the actions performed by the worker during the work are determined.
  • a classification model such as the trained model of Patent Document 1 has a problem of being complex and having low interpretability. Furthermore, in order to detect tools (objects) used within an image for task classification as in Patent Document 2, a large amount of calculation is required to scan the entire image. Furthermore, in order to accurately judge the work being performed by workers, it is necessary to adjust the work judgment criteria (parameters) and manually search and annotate images of various work scenes, which is a time-consuming process. It takes. Another problem is that it is unclear whether the accuracy of work judgment will improve even if the search is performed manually.
  • One aspect of the work analysis device of the present disclosure is a work analysis device that analyzes the work of a worker, and adds a work label indicating the work of the worker to video data including the work of the worker.
  • a work labeling unit an object detection annotation unit that annotates objects related to the work of the worker on the video data to which the work labels have been added; and an object detection annotation unit that annotates objects related to the work of the worker; an object detection learning unit that generates an object detection model that detects an object from video data, an object detection unit that detects the object from the video data using the object detection model, and the video to which the work label is assigned.
  • a work determination parameter calculation unit that performs a work determination on the data and calculates a determination criterion that minimizes the error with the assigned work label, and newly input video data using the object detection model and the determination criterion. and a work determination unit that determines the work of the worker.
  • determination criteria can be automatically adjusted and determined in order to accurately determine the work.
  • FIG. 1 is a functional block diagram showing an example of the functional configuration of the work analysis system according to the first embodiment. It is a figure showing an example of a work table.
  • FIG. 3 is a diagram illustrating an example of a user interface for assigning a work label.
  • FIG. 3 is a diagram illustrating an example of video data with different router states. It is a figure which shows an example of the determination result of work determination. It is a figure showing an example of false detection.
  • FIG. 3 is a diagram showing an example of an image area in video data. It is a figure showing an example of operation of a moving body detection part. It is a flow chart explaining parameter calculation processing of a work analysis device. It is a flowchart explaining analysis processing of a work analysis device.
  • FIG. 3 is a diagram illustrating an example of the operation of a joint position work estimation model. It is a flow chart explaining parameter calculation processing of a work analysis device. It is a flowchart explaining analysis processing of a work analysis device.
  • a work label indicating the work of the worker is assigned to video data (video) in which the work of the worker is captured in advance, and a work label indicating the work of the worker is assigned to the video data to which the work label is attached.
  • the common structure is that an object (tool) related to the work is annotated and an object detection model is generated for detecting the object from video data of the annotated object.
  • the generated object detection model is used to determine the work of the worker in the video data to which the work label has been added, and the work of the worker is determined using the generated object detection model.
  • the work of the worker in the newly input video data is determined using the object detection model and the calculated criterion.
  • a joint position work estimation model that estimates joint position information regarding the worker's joints and estimates the work of the worker based on the estimated joint position information and the assigned work label is used.
  • the task label is generated and assigned a work label based on the value related to the accuracy of object detection in work determination using the object detection model and the classification probability of the work estimated from the joint position in work determination using the joint position work estimation model.
  • the points of the first implementation are that the judgment criteria are calculated so that the error is minimized, and the work of the worker in the newly input video data is judged using the object detection model, the joint position work estimation model, and the judgment criteria. It differs from the form.
  • the first embodiment will first be described in detail, and then the second embodiment will be mainly described with a focus on the differences from the first embodiment.
  • FIG. 1 is a functional block diagram showing an example of the functional configuration of the work analysis system according to the first embodiment.
  • the work analysis system 100 includes a work analysis device 1 and a camera 2.
  • the work analysis device 1 and the camera 2 may be connected to each other via a network (not shown) such as a LAN (Local Area Network) or the Internet.
  • a network such as a LAN (Local Area Network) or the Internet.
  • the work analysis device 1 and the camera 2 are equipped with a communication section (not shown) for communicating with each other through such a connection.
  • the work analysis device 1 and the camera 2 may be directly connected to each other by wire or wirelessly via a connection interface (not shown).
  • the work analysis device 1 is connected to one camera 2 in FIG. 1, it may be connected to two or more cameras 2.
  • the camera 2 is a digital camera or the like, and captures two-dimensional frame images of objects such as workers and tools (not shown) projected onto a plane perpendicular to the optical axis of the camera 2 at a predetermined frame rate (for example, 30 fps, etc.). Take an image with The camera 2 outputs the captured frame image to the work analysis device 1 as video data.
  • the video data captured by the camera 2 may be a visible light image such as an RGB color image, a grayscale image, or a depth image.
  • the work analysis device 1 is a computer known to those skilled in the art, and has a control section 10 and a storage section 20, as shown in FIG.
  • the control unit 10 also operates a work registration unit 101, a work labeling unit 102, an object detection annotation unit 103, an object detection learning unit 104, a work determination parameter calculation unit 105, an object detection annotation proposal unit 106, and a work determination unit 107.
  • the work determination unit 107 includes an object detection unit 1071 and a moving body detection unit 1072.
  • the storage unit 20 is a storage device such as a ROM (Read Only Memory) or an HDD (Hard Disk Drive).
  • the storage unit 20 stores an operating system, application programs, etc. executed by the control unit 10, which will be described later.
  • the storage unit 20 includes a video data storage unit 201 , a work registration storage unit 202 , and an input data storage unit 203 .
  • the video data storage unit 201 stores video data of objects such as workers and tools captured by the camera 2.
  • FIG. 2 is a diagram showing an example of a work table. As shown in FIG. 2, the work table has storage areas for "objects" and "works.” In the "object” storage area in the work table, tool names such as "Ryuta (registered trademark)" and “sandpaper” are stored, for example. In the "work” storage area in the work table, tasks such as “gripping” and “filing” are stored, for example.
  • the input data storage unit 203 stores, for example, frame image data in which a tool (object) annotated by the object detection annotation unit 103 (described later) among frame images of video data is associated with an image range in which the tool is shown. is stored as input data when the object detection learning unit 104 (described later) generates an object detection model.
  • the control unit 10 includes a CPU, a ROM, a RAM (Random Access Memory), a CMOS memory, etc., which are configured to be able to communicate with each other via a bus, which are well known to those skilled in the art.
  • the CPU is a processor that controls the work analysis device 1 as a whole.
  • the CPU reads the system program and application program stored in the ROM via the bus, and controls the entire work analysis device 1 according to the system program and application program. As a result, as shown in FIG.
  • the control unit 10 includes a work registration unit 101, a work labeling unit 102, an object detection annotation unit 103, an object detection learning unit 104, a work determination parameter calculation unit 105, an object detection annotation proposal unit 106 and the functions of the work determination unit 107. Further, the work determination unit 107 is configured to realize the functions of the object detection unit 1071 and the moving body detection unit 1072. Various data such as temporary calculation data and display data are stored in the RAM.
  • the CMOS memory is backed up by a battery (not shown) and is configured as a non-volatile memory that maintains its storage state even when the work analysis device 1 is powered off.
  • the work registration unit 101 stores tools to be used (detected objects) in the work table shown in FIG. ) and the work using the tool (object) (the work to be recognized) are registered in association with each other.
  • FIG. 3 is a diagram illustrating an example of a user interface 30 for assigning work labels.
  • the user interface 30 includes an area 301 for playing video data (video) stored in the video data storage unit 201, a play stop button 302, a slide 303, and a work labeling unit 102 for adding video data to the video data.
  • a completion button 330 is provided to complete the annotation of the object.
  • the work labeling unit 102 displays the user interface 30 on a display device (not shown) such as an LCD included in the work analysis device 1, and displays the video data storage unit 201 in the area 301 of the user interface 30, for example. Play back the video data (video data) stored in the .
  • the user operates the playback stop button 302 and the slide 303 via the input device (not shown) of the work analysis device 1 to check the video data, and confirms the video data for the time from 13:10 to 13:13.
  • the user when the user confirms the work of a worker "sanding" in the video data from time 13:18 to time 13:20, the user inputs the work name "sanding" and sends it to the work labeling section 102. assigns a work label of "sanding" to the video data from time 13:18 to time 13:20. Furthermore, when the user confirms the work of a "cleaning" worker in the video data from time 13:20 to time 13:22, the user inputs the work name "cleaning" and the work labeling unit 102 , a work label of "cleaning" is given to the video data from time 13:20 to time 13:22.
  • the work labeling unit 102 may display the results of assigning work labels to the area 310 in chronological order on the display device (not shown) of the work analysis device 1. Then, the work labeling unit 102 outputs the video data to which the work label has been added to the object detection annotation unit 103.
  • the object detection annotation unit 103 annotates, for example, a tool (object) related to a worker's work on video data to which a work label has been added. Specifically, the object detection annotation unit 103 selects, for example, a router among the video data to which a work label of "Ryuta is applied" from time 13:10 to time 13:13 is given in the area 301 of the user interface 30. Displays frame images (still images) in which a tool (object) is depicted, divided at predetermined intervals, or frame images (still images) divided at arbitrary intervals by the user.
  • the frame images (still images) to be displayed be set at predetermined intervals or arbitrary intervals so that, for example, about 20 frame images are displayed for each work label.
  • the object detection annotation unit 103 acquires the image range (bold rectangle) of the tool (object) in each frame image (still image), as shown in FIG.
  • the router button 321 or the like When the router button 321 or the like is pressed, the tool (object) is annotated as a router.
  • the object detection annotation unit 103 also adds frame images (still images) in which tools (objects) are included for each of the video data to which work labels of "micrometering,”"sanding,” and “cleaning” are attached.
  • the image range of the tool (object) in the image is acquired, and the tool (object) is annotated.
  • the object detection annotation unit 103 completes the annotation of the image range in which the tool (object) is shown and the tool (object) for all frame images (still images) of the video data to which work labels have been added, and When the completion button 330 is pressed, the frame in which the tool is shown (with a time stamp) out of the video data (video data) of the time when each work was performed (time from the start of the work to the end of the work)
  • a set of frame image data (hereinafter also referred to as “annotated frame image data”) in which the image range of the image (still image) and the annotated tool (object) are associated is stored in the input data storage unit 203.
  • the object detection learning unit 104 generates an object detection model that performs object detection from video data of an annotated object. Specifically, the object detection learning unit 104 uses, for example, training data in which the annotated frame image data stored in the input data storage unit 203 is input data and the annotated tool (object) is label data. Well-known machine learning is performed to generate an object detection model that is a trained model such as a neural network. The object detection learning unit 104 stores the generated object detection model in the storage unit 20.
  • the work determination parameter calculation unit 105 uses the object detection model generated by the object detection learning unit 104 to perform a work determination on the video data to which a work label has been assigned, and minimizes the error with the assigned work label. Calculate the judgment criteria. Specifically, the work determination parameter calculation unit 105 sets initial values of parameters as determination criteria for each work registered in the work table of FIG. 2, for example. Note that the parameters include, for example, the number of seconds (X) in which the work is performed for X seconds after detecting the object, a threshold value related to the accuracy of object detection for determining that the work is being performed, and This includes a threshold value related to the accuracy of object detection for determining that the work "sanding" is being performed.
  • the parameters include, for example, the number of seconds (X) in which the work is performed for X seconds after detecting the object, a threshold value related to the accuracy of object detection for determining that the work is being performed, and This includes a threshold value related to the accuracy of object detection for determining that the work "sanding" is
  • the work analysis device 1 can detect the most recent If a tool (object) is detected for X seconds, it can be determined that work is being performed using the tool.
  • the work determination parameter calculation unit 105 inputs the annotated frame image data of another video data to which the work label stored in the input data storage unit 203 is attached to the object detection model, and detects a tool (object).
  • the work determination parameter calculation unit 105 determines the work based on the object detection result and the work table of FIG. 2, and calculates the error between the determined work and the correct work label. Then, the work determination parameter calculation unit 105 calculates an evaluation index such as the F1 score of the parameter value for each work based on the error calculated with all the annotated frame image data, and the calculated evaluation index for each work is the maximum.
  • Parameter values for each task are calculated using Bayesian optimization etc. so that
  • the object detection annotation proposal unit 106 uses the parameters (judgment criteria) calculated by the work determination parameter calculation unit 105 to perform a work determination on the video data to which the work label has been added, and creates an annotation based on the determination result of the work determination.
  • the object detection annotation proposal unit 106 proposes frame images (still images) that should be automatically annotated, as described later. Specifically, the object detection annotation proposal unit 106 generates, for example, a tool (object) annotated in another video data to which a work label is stored in the input data storage unit 203 and an image showing the tool. The work is determined using the image data associated with the range.
  • FIG. 5 is a diagram illustrating an example of a determination result of work determination. The upper part of FIG. 5 shows a time series of correct work labels given to the other video data. The middle part of FIG. 5 shows the determination result of the worker's work by the object detection annotation proposal unit 106 for the image data using the object detection model and parameters. The lower part of FIG. 5 shows the object detection results in the image data using the object detection model.
  • the object detection annotation proposal unit 106 displays the extracted frame image (still image) on the user interface 30, and adds a router to the extracted frame image (still image) based on the user's input operation.
  • the image range is acquired and annotated as "Ryuta” by pressing the "Ryuta” button 321.
  • the object detection annotation proposal unit 106 stores image data in which the image range of the frame image (still image) in which the router is shown (to which a time stamp is added) and the annotated router is associated with the input data storage unit 203. Store.
  • the object detection annotation proposal unit 106 creates a frame image (still image) in which sandpaper is captured around time 13:43 in the other video data, and Frame images (still images) showing sandpaper at times when "sanding" was not determined (detected) are extracted.
  • the object detection annotation proposal unit 106 displays each of the extracted frame images (still images) on the user interface 30, acquires the image range of sandpaper in each frame image (still image) based on the user's input operation, When the sandpaper button 323 is pressed, the tool (object) is annotated as sandpaper.
  • the object detection annotation proposal unit 106 inputs image data that associates the image range of the frame image (still image) in which the sandpaper is shown (with a time stamp added) and the annotated sandpaper to the input data storage unit. 203. This allows the accuracy of object detection to be increased without requiring the user to spend time searching for various scenes.
  • the object detection annotation proposal unit 106 may be extracted (still image).
  • the object detection annotation proposal unit 106 displays the extracted frame image (still image) on the user interface 30, and acquires the image range of the tool (object) in the extracted frame image (still image) based on the user's input operation.
  • the tool (object) may be annotated.
  • the object detection learning unit 104 performs machine learning using the image data including the frame image (still image) extracted (proposed) by the object detection annotation proposal unit 106 and annotated with a tool (object), and generates an object detection model.
  • the work determination parameter calculation unit 105 determines the work by inputting the annotated frame image data including the frame image (still image) extracted (proposed) by the object detection annotation proposal unit 106 into the updated object detection model. , calculate the error between the given correct work label and the work judgment result.
  • the work determination parameter calculation unit 105 calculates an evaluation index such as the F1 score of the parameter value for each work based on the calculated error, and performs Bayesian optimization etc. so that the calculated evaluation index for each work is maximized.
  • the object detection learning unit 104 and the work determination parameter calculation unit 105 repeat the process until the number of frame images (still images) extracted (proposed) by the object detection annotation proposal unit 106 runs out or becomes less than a predetermined number. Then, the object detection learning unit 104 outputs the generated object detection model to an object detection unit 1071 described later, and the work determination parameter calculation unit 105 outputs the calculated parameters to the work determination unit 107 described later.
  • the work determination unit 107 determines the work of the worker in the video data newly input from the camera 2 using the object detection model and set parameters (judgment criteria). Specifically, the work determination unit 107 uses, for example, a frame image (still image) of video data newly input from the camera 2 with an object detection model of an object detection unit 1071 (described later) and a moving body detection unit 1072 (described later). Enter. The work determination unit 107 determines the work of the worker based on the tool (object) detection result output from the object detection model, the detection result of the moving object detection unit 1072, the work table shown in FIG. 2, and the parameters. judge.
  • the work determination unit 107 determines whether the tool (object) cannot be detected from the frame image (still image) of the video data and the tool (object) has been detected immediately within X seconds of the frame image.
  • the work of the worker in the frame image may be determined based on a parameter of the number of seconds X, assuming that the worker has been working for X seconds after detecting the object.
  • the work determination unit 107 also uses a threshold value (for example, 70 %, etc.), the worker's work may be determined to be "no work". For example, as shown in FIG.
  • the object detection unit 1071 has an object detection model generated by the object detection learning unit 104, inputs a frame image (still image) of video data newly input from the camera 2 to the object detection model, and detects a tool (object). ) along with the detection results, outputs values related to object detection accuracy such as reliability.
  • the moving object detection unit 1072 detects moving objects such as workers and tools based on changes such as changes in pixel brightness in designated image areas of each frame image (still image) of video data newly input from the camera 2. To detect. Specifically, as shown in FIG. 7, if there is movement such as a change in pixel brightness in the image area indicated by the bold rectangle of the frame image (still image), the moving object detection unit 1072 detects the operation of the video data. Alternatively, it may be determined that the person is working. Furthermore, as shown in the upper part of FIG. 8, when the moving object detection unit 1072 periodically detects movement at intervals of X seconds or less (for example, 5 seconds, etc.) indicated by the dashed rectangle, the worker continuously It may be determined that the work is being performed.
  • X seconds or less for example, 5 seconds, etc.
  • the moving object detecting section 1072 detects a router, etc. from the frame image (still image) at the time indicated by the shaded rectangle by the object detecting section 1071 during the period in which the movement of the moving object is detected. If a tool (object) is detected, it may be determined that work is being performed with the detected tool (object) during the period. On the other hand, the moving object detection unit 1072 may determine that the worker is not working if no movement is detected for more than X seconds.
  • FIG. 9 is a flowchart illustrating the parameter calculation process of the work analysis device 1. The flow shown here is executed when a new tool (object) and work are registered in the work table by a user such as a worker.
  • step S1 the work labeling unit 102 reproduces the video data including the worker's work stored in the video data storage unit 201 on the user interface 30, and assigns the worker's work to the video data based on the input operation by the user. Assign a work label to indicate the work being done.
  • step S2 the object detection annotation unit 103 detects frame images (still images) separated at predetermined intervals for each work label among the video data to which work labels have been added in step S1. Acquire the image range of the tool (object) and annotate the tool (object). The object detection annotation unit 103 extracts a frame image (with a time stamp) in which the tool is shown (with a time stamp) out of the video data (video data) of the time when each work was performed (time from the start of the work to the end of the work). The annotated frame image data in which the image range of the still image (still image) and the annotated tool (object) are associated is stored in the input data storage unit 203.
  • step S3 the object detection learning unit 104 generates an object detection model that performs object detection from the annotated frame image data annotated in step S2.
  • step S4 the work determination parameter calculation unit 105 inputs the annotated frame image data of another video data with the work label stored in the input data storage unit 203 into the object detection model, and detects the tool (object). To detect.
  • step S5 the work determination parameter calculation unit 105 determines the work of the worker based on the object detection result in step S4 and the work table.
  • step S6 the work determination parameter calculation unit 105 calculates the error between the correct work label and the determination result in step S5 for each work.
  • step S7 an evaluation index such as the F1 score of the parameter value is calculated for each task based on the errors calculated for all the video data.
  • step S8 the work determination parameter calculation unit 105 calculates parameters for each work by Bayesian optimization or the like so that the evaluation index for each work is maximized.
  • step S9 the object detection annotation proposal unit 106 uses the parameters (judgment criteria) calculated in step S8 to determine the work of another video data to which a work label has been added.
  • step S10 the object detection annotation proposal unit 106 increases the value related to object detection accuracy in locations where the value related to object detection accuracy is low, such as erroneous detection or non-detection, based on the determination result in step S9. It is determined whether there is a frame image (still image) to be proposed. If there is a proposed frame image (still image), the process returns to step S2, and the processes from step S2 to step S9 are performed again, including the proposed frame image (still image). On the other hand, if there is no frame image (still image) to propose, the work analysis device 1 sets the object detection model generated in step S3 in the object detection unit 1071, and also sets the parameters calculated in step S8 in the work determination unit 107. Set, and end the parameter calculation process.
  • FIG. 10 is a flowchart illustrating the analysis process of the work analysis device 1. The flow shown here is repeatedly executed while video data is input from the camera 2.
  • step S21 the object detection unit 1071 inputs a frame image (still image) of video data newly input from the camera 2 to the object detection model and detects a tool (object).
  • the moving object detection unit 1072 detects a moving object such as a worker or a tool based on changes such as changes in pixel brightness in the designated image area of each frame image (still image) of the video data newly input from the camera 2. Detect.
  • step S23 the work determination unit 107 determines the work of the worker based on the tool (object) detection result in step S21, the moving object detection result in step S22, the set parameters, and the work table. do.
  • the work analysis device 1 can automatically adjust the determination criteria in order to accurately determine the work.
  • the user only needs to label the task and annotate the object, and the optimal parameters will be automatically calculated.
  • the work analysis device 1 can automatically suggest frames in a video that can improve the accuracy of work determination by annotating them.
  • the first embodiment has been described above.
  • the generated object detection model is used to determine the work of a worker in video data to which a work label has been assigned, and a determination criterion that minimizes the error with the assigned work label is calculated. By doing so, the work of the worker in the newly input video data is determined using the object detection model and the calculated determination criteria.
  • a joint position work estimation model that estimates joint position information regarding the worker's joints and estimates the work of the worker based on the estimated joint position information and the assigned work label is used.
  • the task label is generated and assigned a work label based on the value related to the accuracy of object detection in work determination using the object detection model and the classification probability of the work estimated from the joint position in work determination using the joint position work estimation model.
  • the points of the first implementation are that the judgment criteria are calculated so that the error is minimized, and the work of the worker in the newly input video data is judged using the object detection model, the joint position work estimation model, and the judgment criteria. It differs from the form.
  • the work analysis device 1A according to the second embodiment can automatically adjust the determination criteria in order to accurately determine the work. The second embodiment will be described below.
  • FIG. 11 is a functional block diagram showing an example of the functional configuration of the work analysis system according to the second embodiment. Note that elements having the same functions as the elements of the work analysis system 100 in FIG. 1 are given the same reference numerals, and detailed explanations are omitted. As shown in FIG. 11, the work analysis system 100 includes a work analysis device 1A and a camera 2. Camera 2 has the same functions as camera 2 in the first embodiment.
  • the work analysis device 1A includes a control section 10a and a storage section 20.
  • the control unit 10a also includes a work registration unit 101, a work labeling unit 102, an object detection annotation unit 103, an object detection learning unit 104, a work determination parameter calculation unit 105a, a joint position estimation unit 108, a joint position work learning unit 109, and a work determination section 107a.
  • the work determination unit 107a includes an object detection unit 1071, a moving body detection unit 1072, and a joint position work estimation unit 1073.
  • the storage unit 20 also includes a video data storage unit 201, a work registration storage unit 202, and an input data storage unit 203.
  • the storage unit 20, video data storage unit 201, work registration storage unit 202, and input data storage unit 203 are the storage unit 20, video data storage unit 201, work registration storage unit 202, and input data storage unit in the first embodiment. It has the same function as 203.
  • the work registration unit 101, the work labeling unit 102, the object detection annotation unit 103, and the object detection learning unit 104 are the same as the work registration unit 101, the work labeling unit 102, the object detection annotation unit 103, and the object detection annotation unit 103 in the first embodiment. It has the same function as the object detection learning unit 104.
  • the object detection section 1071 and the moving object detection section 1072 have the same functions as the object detection section 1071 and the moving object detection section 1072 in the first embodiment.
  • the joint position estimating unit 108 estimates joint position information regarding the worker's joint positions for each frame image (still image) of the video data stored in the input data storage unit 203 and assigned a work label.
  • frame images may be extracted from video data at appropriate intervals. For example, if the frame rate of video data is 60 fps, the frame image may be extracted at about 24 fps, for example.
  • the joint position estimation unit 108 uses a known method (for example, Kosuke Kanno, Kenta Oku, Kyoji Kawagoe, "Motion detection and classification method from multidimensional time series data", DEIM Forum 2016 G4-5, Alternatively, using Shohei Uezono, Satoshi Ono, "Feature extraction of multimodal sequence data using LSTM Autoencoder", Materials of the Society for Artificial Intelligence Research Group, SIG-KBS-B802-01, 2018), input data storage unit 203 Time series data such as coordinates and angles of joints such as hands and arms of the worker are estimated as joint position information for each frame image (still image) of the video data to which the work label is stored.
  • FIG. 12 is a diagram showing an example of joint position information in a frame image.
  • FIG. 12 shows joint position information when a worker is sanding.
  • the joint position work learning unit 109 performs machine learning using the joint position information estimated by the joint position estimation unit 108 as input data and the work label assigned by the work label assignment unit 102 as label data. Generate a joint position and work estimation model that estimates the work of. For example, when the joint position information of the worker's right hand in FIG. 12 makes one reciprocating motion every 0.3 seconds, as shown in FIG. 13, it is determined that the worker is sanding.
  • the joint position work learning unit 109 generates a joint position work estimation model.
  • the joint position work learning unit 109 may generate a rule base based on the joint position information estimated by the joint position estimation unit 108 and the work label assigned by the work label assignment unit 102. .
  • the work determination parameter calculation unit 105a calculates the work classification probability based on the value related to the accuracy of object detection in work determination using the object detection model and the classification probability of the work estimated from the joint position in work determination using the joint position work estimation model.
  • the judgment criteria are calculated so that the error with the work label is minimized.
  • the work determination parameter calculation unit 105a for example, similarly to the work determination parameter calculation unit 105 of the first embodiment, calculates initial values of parameters as determination criteria for each work registered in the work table of FIG. Set.
  • the work determination parameter calculation unit 105a inputs the annotated frame image data of another video data to which the work label stored in the input data storage unit 203 is attached to the object detection model, and detects the tool (object).
  • the work determination parameter calculation unit 105a determines the work of the worker based on the object detection results and the work table shown in FIG. Further, the work determination parameter calculation unit 105a estimates the joint position information of the worker for each frame image (still image) of the same different video data, and inputs the estimated joint position information into the joint position work estimation model. , to estimate the worker's work and obtain the classification probability estimated from the joint positions. Then, the work determination parameter calculation unit 105a uses the following equation (1), where a is the weighting coefficient of the classification probability of the work estimated from the joint position, and b is the weighting coefficient of the value related to the accuracy of object detection.
  • the values of parameters are calculated by Bayesian optimization or the like so that the error between the calculated classification probability of the work and the correct work label is minimized.
  • Work classification probability a (work classification probability estimated from joint positions) + b (value related to object detection accuracy) ...
  • the parameters include, for example, the number of seconds X in which the work is performed for X seconds after the object is detected, the weight a of the classification probability of the work estimated from the joint position, and the value related to the accuracy of object detection. Weight b is included.
  • the work determination parameter calculation unit 105a outputs and sets the calculated parameters to a work determination unit 107a, which will be described later.
  • the work determination unit 107a determines the work of the worker in the video data newly input from the camera 2 using the object detection model, the joint position work estimation model, and the set parameters (determination criteria). Specifically, the work determination unit 107a inputs, for example, a frame image (still image) of video data newly input from the camera 2 to the object detection model in the object detection unit 1071 and the moving body detection unit 1072. The work determination unit 107a determines the work of the worker based on the detected tool (object), the work table shown in FIG. 2, and the parameters, and acquires a value related to the accuracy of object detection.
  • the work determination unit 107a estimates joint position information of the worker for each frame image (still image) of the same newly inputted video data, and uses the estimated joint position information in a joint position work estimation unit 1073, which will be described later. Input into joint position work estimation model.
  • the work determination unit 107a acquires the estimation result of the worker's work and the classification probability of the work estimated from the joint positions from the joint position work estimation unit 1073, which will be described later. Then, the work determination unit 107a calculates the classification probability of the work from the values related to the classification probability of the work and the accuracy of object detection estimated from the acquired joint positions, the set parameters, and equation (1), and calculates the classification probability of the work.
  • the work of the worker is determined based on the classification probability and the detection result of the moving object detection unit 1072.
  • the joint position work estimation unit 1073 has a joint position work estimation model generated by the joint position work learning unit 109, inputs the joint position information estimated by the work determination unit 107a into the joint position work estimation model, and The estimation result of the work and the classification probability of the work estimated from the joint positions are output to the work determination unit 107a.
  • FIG. 14 is a flowchart illustrating the parameter calculation process of the work analysis device 1A. Note that the processing from step S31 to step S33 is similar to the processing from step S1 to step S3 in FIG. 9, and detailed description thereof will be omitted.
  • step S34 the joint position estimating unit 108 estimates the worker's joint position information for each frame image (still image) of the video data to which the work label stored in the input data storage unit 203 is attached.
  • step S35 the joint position work learning unit 109 performs machine learning using the joint position information estimated in step S34 as input data and the work label assigned in step S31 as label data to estimate the worker's work.
  • a joint position and work estimation model is generated.
  • step S36 the work determination parameter calculation unit 105a inputs the annotated frame image data of another video data to which the work label stored in the input data storage unit 203 is attached to the object detection model, and the detected tool ( object) and a value related to the accuracy of object detection.
  • step S37 the work determination parameter calculation unit 105a determines the work of the worker based on the object detection result in step S36 and the work table.
  • step S38 the work determination parameter calculation unit 105a estimates the worker's joint position information from a frame image (still image) of the same different video data.
  • step S39 the work determination parameter calculation unit 105a inputs the joint position information estimated in step S38 to the joint position work estimation model, and obtains the estimation result of the worker's work and the classification probability estimated from the joint positions.
  • step S40 the work determination parameter calculation unit 105a calculates the parameters (judgment criteria) using Bayesian optimization or the like so that the error between the work classification probability calculated by equation (1) and the correct work label is minimized. Calculate the value.
  • FIG. 15 is a flowchart illustrating analysis processing of the work analysis device 1A. The flow shown here is repeatedly executed while video data is input from the camera 2.
  • step S51 the object detection unit 1071 inputs the frame image (still image) of the video data newly input from the camera 2 to the object detection model, detects the tool (object), and calculates a value related to the accuracy of object detection. get.
  • the moving object detection unit 1072 detects a moving object such as a worker or a tool based on changes such as changes in pixel brightness in the designated image area of each frame image (still image) of the video data newly input from the camera 2. Detect.
  • step S53 the joint position work estimation unit 1073 estimates the worker's joint position information for each frame image (still image) of the newly input video data.
  • step S54 the joint position work estimation unit 1073 inputs the joint position information estimated in step S53 to the joint position work estimation model, estimates the work of the worker, and obtains the classification probability of the work estimated from the joint positions. do.
  • step S55 the work determination unit 107a uses the classification probability and object detection accuracy of the work estimated from the joint positions acquired in step S51 and step S54, the moving object detection result in step S52, and the set parameters.
  • the classification probability of the work is calculated from Equation (1) and the work of the worker is determined based on the calculated classification probability.
  • the work analysis device 1A can automatically adjust the determination criteria in order to accurately determine the work.
  • the user only needs to label the task and annotate the object, and the optimal parameters will be automatically calculated.
  • the second embodiment has been described above.
  • the work analysis devices 1 and 1A are not limited to the above-described embodiments, and include modifications, improvements, etc. within a range that can achieve the purpose.
  • the work analysis devices 1 and 1A are connected to one camera 2, but the invention is not limited to this.
  • the work analysis devices 1 and 1A may be connected to two or more cameras 2.
  • the work analysis devices 1 and 1A have all the functions, but the present invention is not limited to this.
  • the server includes some or all of the unit 105a, the joint position estimation unit 108, the joint position work learning unit 109, the work determination unit 107a, the object detection unit 1071, the moving body detection unit 1072, and the joint position work estimation unit 1073.
  • each function of the work analysis apparatuses 1 and 1A may be realized using a virtual server function or the like on the cloud. Further, the work analysis apparatuses 1 and 1A may be configured as a distributed processing system in which each function of the work analysis apparatuses 1 and 1A is distributed to a plurality of servers as appropriate.
  • the work analysis device 1A did not have the object detection annotation proposal unit 106, but it may have the object detection annotation proposal unit 106. By doing so, when the accuracy of work determination is insufficient, the work analysis device 1A can automatically suggest frames in the video that can improve the accuracy of work determination by annotating them.
  • each function included in the work analysis devices 1 and 1A in the first embodiment and the second embodiment can be realized by hardware, software, or a combination thereof.
  • being realized by software means being realized by a computer reading and executing a program.
  • Non-transitory computer-readable media include various types of tangible storage media. Examples of non-transitory computer-readable media are magnetic recording media (e.g., flexible disks, magnetic tapes, hard disk drives), magneto-optical recording media (e.g., magneto-optical disks), CD-ROMs (Read Only Memory), CD-ROMs, R, CD-R/W, semiconductor memory (for example, mask ROM, PROM (Programmable ROM), EPROM (Erasable PROM), flash ROM, RAM).
  • the program may also be provided to the computer on various types of transitory computer readable media. Examples of transitory computer-readable media include electrical signals, optical signals, and electromagnetic waves.
  • the temporary computer-readable medium can provide the program to the computer via wired communication channels such as electrical wires and optical fibers, or via wireless communication channels.
  • the step of writing a program to be recorded on a recording medium includes not only processes that are performed in chronological order, but also processes that are not necessarily performed in chronological order but are executed in parallel or individually. It also includes.
  • the work analysis device of the present disclosure can take various embodiments having the following configurations.
  • the work analysis device 1 of the present disclosure is a work analysis device that analyzes the work of a worker, and includes a task of assigning a work label indicating the work of the worker to video data including the work of the worker.
  • a labeling unit 102 an object detection annotation unit 103 that annotates objects related to the worker's work on the video data to which a work label has been assigned, and an object detection annotation unit 103 that annotates the video data of the object annotated by the object detection annotation unit 103 .
  • An object detection learning unit 104 that generates an object detection model that performs object detection; an object detection unit 1071 that detects an object from video data using the object detection model; and an object detection learning unit 1071 that uses the object detection model to detect an object from video data; , a work determination parameter calculation unit 105 that calculates a determination criterion that minimizes the error with the assigned work label, and determines the work of the worker in the newly input video data using the object detection model and the determination criterion.
  • a work determination unit 107 is provided. According to this work analysis device 1, the determination criteria can be automatically adjusted in order to accurately determine the work.
  • the object detection annotation proposal unit 106 may be provided to propose a frame image to be annotated based on the object detection annotation proposal unit 106.
  • a joint position estimation unit 108 that estimates joint position information regarding the joint positions of the worker, and joint position information estimated by the joint position estimation unit 108. and the work label information given by the work label giving unit 102, and a joint position work learning unit 109 that creates a joint position work estimation model that estimates the work of the worker based on the work label information given by the work label giving unit 102.
  • a joint position and work estimation unit 1073 that estimates work from joint position information based on the joint position and work estimation model, and a work determination parameter calculation unit 105a that performs object detection in work determination using the object detection model.
  • the unit 107a may determine the work of the worker in the newly input video data using the object detection model, the joint position work estimation model, and the determination criteria. By doing so, the work analysis device 1A can achieve the same effect as (1).
  • the work analysis device 1, 1A according to any one of (1) to (3) further includes a moving object detection section 1072 that detects a moving object in newly input video data, and the work determination section 107, 107a. may determine whether the worker continues to work based on the time interval at which the moving object detection unit 1072 detects a moving object. By doing so, the work analysis devices 1 and 1A can determine the work of the worker with higher accuracy.
  • the criterion is that the work using the tool (object) continues at least after the tool (object) is detected. It may also include a time when the object can be estimated to be present, and a threshold value related to the accuracy of object detection. By doing so, the work analysis devices 1 and 1A can accurately determine the work of the worker even when no tool (object) is detected.

Landscapes

  • Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Manufacturing & Machinery (AREA)
  • Business, Economics & Management (AREA)
  • Theoretical Computer Science (AREA)
  • Tourism & Hospitality (AREA)
  • Economics (AREA)
  • Primary Health Care (AREA)
  • Strategic Management (AREA)
  • Human Resources & Organizations (AREA)
  • General Health & Medical Sciences (AREA)
  • General Business, Economics & Management (AREA)
  • Marketing (AREA)
  • Health & Medical Sciences (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • General Engineering & Computer Science (AREA)
  • Quality & Reliability (AREA)
  • Automation & Control Theory (AREA)
  • General Factory Administration (AREA)
  • Image Analysis (AREA)

Abstract

作業を精度良く判定させるために判定基準(パラメータ)を自動で調整して求めること。 作業分析装置は、作業員の作業を含む映像データに対して、作業員の作業を示す作業ラベルを付与する作業ラベル付与部と、作業ラベルが付与された前映像データに対して、作業員の作業に関連する物体をアノテーションする物体検出アノテーション部と、物体検出アノテーション部によりアノテーションされた物体の映像データから物体検出を行う物体検出モデルを生成する物体検出学習部と、物体検出モデルを用いて、映像データから物体を検出する物体検出部と、作業ラベルが付与された映像データの作業判定を行い、付与された作業ラベルとの誤差を最小とする判定基準を算出する作業判定パラメータ計算部と、物体検出モデルと判定基準とを用いて新たに入力された映像データにおける作業員の作業を判定する作業判定部と、を備える。

Description

作業分析装置
 本発明は、作業分析装置に関する。
 工場では工作機械等の稼働データは取得できているが、作業員の作業のデータは取得できていない。そこで、作業の改善、ロボット導入検討、工場のデジタルツイン等の実現には作業員の作業を見える化する必要があり、作業員の作業の映像から何をしていたのかを自動で認識する技術が重要である。
 この点、作業員の作業が撮像された画像の入力データと当該画像が示す作業員の作業のラベルデータとからなる学習対象データを用いて機械学習を行い、画像から作業を特定するための学習済みモデルを生成し、学習済みモデルを利用して分析対象の画像がどの作業を行っている画像であるかを特定する技術が知られている。例えば、特許文献1参照。
 また、デプスセンサにより撮像された深度付き画像データから作業者の手の位置を特定するとともに、デジタルカメラにより撮像された画像データから対象物の位置を特定し、作業において作業者が行なった動作の内容を特定する技術が知られている。例えば、特許文献2参照。
特開2021-67981号公報 国際公開第2017/222070号
 しかしながら、特許文献1の学習済みモデルのような分類モデルは複雑で解釈性が低いという問題がある。
 また、特許文献2のように作業分類のために画像内から使っている道具(物体)を検出するには、画像全体を走査するため多くの計算量が必要である。
 さらに、作業員が行っている作業を精度良く判定するには、作業判定の判定基準(パラメータ)の調整と、様々な作業の場面の画像を手動で探し出してアノテーションを行う必要があり、手間がかかる。また、手動で探し出しても作業判定の精度が上がるかわからないという課題がある。
 そこで、作業を精度良く判定させるために判定基準(パラメータ)を自動で調整して求める機能が望まれている。
 本開示の作業分析装置の一態様は、作業員の作業を分析する作業分析装置であって、前記作業員の作業を含む映像データに対して、前記作業員の作業を示す作業ラベルを付与する作業ラベル付与部と、前記作業ラベルが付与された前記映像データに対して、前記作業員の作業に関連する物体をアノテーションする物体検出アノテーション部と、前記物体検出アノテーション部によりアノテーションされた前記物体の映像データから物体検出を行う物体検出モデルを生成する物体検出学習部と、前記物体検出モデルを用いて、前記映像データから前記物体を検出する物体検出部と、前記作業ラベルが付与された前記映像データの作業判定を行い、付与された作業ラベルとの誤差を最小とする判定基準を算出する作業判定パラメータ計算部と、前記物体検出モデルと前記判定基準とを用いて新たに入力された映像データにおける前記作業員の作業を判定する作業判定部と、を備える。
 一態様によれば、作業を精度良く判定させるために判定基準(パラメータ)を自動で調整して求めることができる。
第1実施形態に係る作業分析システムの機能的構成例を示す機能ブロック図である。 作業テーブルの一例を示す図である。 作業ラベルを付与するためのユーザインタフェースの一例を示す図である。 リュータの状態が異なる映像データの一例を示す図である。 作業判定の判定結果の一例を示す図である。 誤検出の一例を示す図である。 映像データにおける画像領域の一例を示す図である。 動体検出部の動作の一例を示す図である。 作業分析装置のパラメータ算出処理について説明するフローチャートである。 作業分析装置の分析処理について説明するフローチャートである。 第2実施形態に係る作業分析システムの機能的構成例を示す機能ブロック図である。 フレーム画像における関節位置情報の一例を示す図である。 関節位置作業推定モデルの動作の一例を示す図である。 作業分析装置のパラメータ算出処理について説明するフローチャートである。 作業分析装置の分析処理について説明するフローチャートである。
 作業分析装置の第1実施形態及び第2実施形態について、図面を参照して詳細に説明をする。
 ここで、各実施形態は、予め作業員の作業が撮像された映像データ(動画)に対して作業員の作業を示す作業ラベルを付与し、作業ラベルが付与された映像データに対して作業員が当該作業に関連する物体(工具)をアノテーションし、アノテーションされた物体の映像データから物体検出を行う物体検出モデルを生成するという構成において共通する。
 ただし、作業員の作業の判定において、第1実施形態では生成された物体検出モデルを用いて作業ラベルが付与された映像データにおける作業員の作業の作業判定を行い、付与された作業ラベルとの誤差を最小とする判定基準を算出することにより、物体検出モデルと算出された判定基準とを用いて新たに入力された映像データにおける作業員の作業を判定する。これに対し、第2実施形態では作業員の関節に関する関節位置情報を推定し、推定された関節位置情報と付与された作業ラベルとに基づいて作業員の作業を推定する関節位置作業推定モデルを生成し、物体検出モデルを用いた作業判定における物体検出の精度に関わる値と、関節位置作業推定モデルを用いた作業判定における関節位置から推定した作業の分類確率と、に基づいて作業ラベルとの誤差が最小となるように判定基準を算出し、物体検出モデルと関節位置作業推定モデルと判定基準とを用いて新たに入力された映像データにおける作業員の作業を判定する点が、第1実施形態と相違する。
 以下では、まず第1実施形態について詳細に説明し、次に第2実施形態において第1実施形態と相違する部分を中心に説明を行う。
<第1実施形態>
 図1は、第1実施形態に係る作業分析システムの機能的構成例を示す機能ブロック図である。
 図1に示すように、作業分析システム100は、作業分析装置1、及びカメラ2を有する。
 作業分析装置1、及びカメラ2は、LAN(Local Area Network)やインターネット等の図示しないネットワークを介して相互に接続されていてもよい。この場合、作業分析装置1、及びカメラ2は、かかる接続によって相互に通信を行うための図示しない通信部を備えている。なお、作業分析装置1、及びカメラ2は、図示しない接続インタフェースを介して互いに有線又は無線で直接接続されてもよい。
 また、図1では、作業分析装置1は1つのカメラ2と接続されているが、2つ以上の複数のカメラ2と接続されてもよい。
 カメラ2は、デジタルカメラ等であり、図示しない作業員及び工具等の物体をカメラ2の光軸に対して垂直な平面に投影した2次元のフレーム画像を所定のフレームレート(例えば、30fps等)で撮像する。カメラ2は、撮像したフレーム画像を映像データとして作業分析装置1に出力する。なお、カメラ2により撮像される映像データは、RGBカラー画像やグレースケール画像、深度画像等の可視光画像でもよい。
<作業分析装置1>
 作業分析装置1は、当業者にとって公知のコンピュータであり、図1に示すように、制御部10及び記憶部20を有する。また、制御部10は、作業登録部101、作業ラベル付与部102、物体検出アノテーション部103、物体検出学習部104、作業判定パラメータ計算部105、物体検出アノテーション提案部106、及び作業判定部107を有する。また、作業判定部107は、物体検出部1071及び動体検出部1072を有する。
 記憶部20は、ROM(Read Only Memory)やHDD(Hard Disk Drive)等の記憶装置である。記憶部20には、後述する制御部10が実行するオペレーティングシステム及びアプリケーションプログラム等が記憶される。また、記憶部20は、映像データ記憶部201、作業登録記憶部202、及び入力データ記憶部203を含む。
 映像データ記憶部201には、カメラ2により撮像された作業員及び工具等の物体の映像データが記憶される。
 作業登録記憶部202には、例えば、作業分析装置1に含まれるキーボードやタッチパネル等の入力装置(図示しない)を介した作業員等のユーザの入力操作に基づいて後述する作業登録部101により予め登録される、後述する物体検出部1071により検出される工具(物体)と、対応する作業員の作業と、を関係付けした作業テーブルが記憶される。
 図2は、作業テーブルの一例を示す図である。
 図2に示すように、作業テーブルは、「物体」及び「作業」の格納領域を有する。
 作業テーブル内の「物体」の格納領域には、例えば、「リュータ(登録商標)」、「紙ヤスリ」等の工具名が格納される。
 作業テーブル内の「作業」の格納領域には、例えば、「リュータかけ」、「ヤスリかけ」等の作業が格納される。
 入力データ記憶部203には、例えば、映像データのフレーム画像のうち後述する物体検出アノテーション部103によりアノテーションされた工具(物体)と当該工具が写っている画像範囲とが対応付けられたフレーム画像データの集合が、後述する物体検出学習部104が物体検出モデルを生成するときの入力データとして記憶される。
 制御部10は、CPU、ROM、RAM(Random Access Memory)、CMOSメモリ等を有し、これらはバスを介して相互に通信可能に構成される、当業者にとって公知のものである。
 CPUは作業分析装置1を全体的に制御するプロセッサである。CPUは、ROMに格納されたシステムプログラム及びアプリケーションプログラムを、バスを介して読み出し、システムプログラム及びアプリケーションプログラムに従って作業分析装置1全体を制御する。これにより、図1に示すように、制御部10は、作業登録部101、作業ラベル付与部102、物体検出アノテーション部103、物体検出学習部104、作業判定パラメータ計算部105、物体検出アノテーション提案部106、及び作業判定部107の機能を実現するように構成される。また、作業判定部107は、物体検出部1071及び動体検出部1072の機能を実現するように構成される。RAMには一時的な計算データや表示データ等の各種データが格納される。CMOSメモリは図示しないバッテリでバックアップされ、作業分析装置1の電源がオフされても記憶状態が保持される不揮発性メモリとして構成される。
 作業登録部101は、例えば、作業分析装置1の入力装置(図示しない)を介した作業員等のユーザの入力操作に基づいて、図2に示す作業テーブルに、使用する工具(検出される物体)と、当該工具(物体)を使用する作業(認識させたい作業)と、の関係を対応付けて登録する。
 作業ラベル付与部102は、例えば、ユーザが映像データ記憶部201に記憶された作業員の作業を含む映像データ(動画データ)を見て、当該映像データ(動画データ)に対して、作業員が何の作業をしているか、その作業名を示す作業ラベルを付与する。
 図3は、作業ラベルを付与するためのユーザインタフェース30の一例を示す図である。
 図3に示すように、ユーザインタフェース30は、映像データ記憶部201に記憶された映像データ(動画)を再生する領域301、再生停止ボタン302、スライド303、、作業ラベル付与部102により映像データに付与された作業ラベルを時系列的に示す領域310、後述する物体検出アノテーション部103によりアノテーションされる工具を示すリュータボタン321、マイクロリュータボタン322、紙ヤスリボタン323、ウェスボタン314、及び作業ラベルの付与及び/又は物体のアノテーションを完了する完了ボタン330を有する。
 具体的には、作業ラベル付与部102は、例えば、ユーザインタフェース30を作業分析装置1に含まれるLCD等の表示装置(図示しない)に表示し、ユーザインタフェース30の領域301において映像データ記憶部201に記憶された映像データ(動画データ)を再生する。ユーザは、作業分析装置1の入力装置(図示しない)を介して再生停止ボタン302やスライド303を操作して映像データを確認し、時刻13:10から時刻13:13までの時間の映像データにおいて「リュータかけ」の作業員の作業を確認した場合、「リュータかけ」の作業名を入力し、作業ラベル付与部102は、時刻13:10から時刻13:13までの映像データに対して「リュータかけ」の作業ラベルを付与する。また、ユーザは、時刻13:13から時刻13:18までの時間の映像データにおいてマイクロリュータかけの作業員の作業を確認した場合、「マイクロリュータかけ」の作業名を入力し、作業ラベル付与部102は、時刻13:13から時刻13:18までの映像データに対して「マイクロリュータかけ」の作業ラベルを付与する。また、ユーザは時刻13:18から時刻13:20までの時間の映像データにおいて「ヤスリかけ」の作業員の作業を確認した場合、「ヤスリかけ」の作業名を入力し、作業ラベル付与部102は、時刻13:18から時刻13:20までの映像データに対して「ヤスリかけ」の作業ラベルを付与する。さらに、ユーザは、時刻13:20から時刻13:22までの時間の映像データにおいて「洗浄」の作業員の作業を確認した場合、「洗浄」の作業名を入力し、作業ラベル付与部102は、時刻13:20から時刻13:22までの映像データに対して「洗浄」の作業ラベルを付与する。
 作業ラベル付与部102は、領域310に作業ラベルの付与結果を時系列的に作業分析装置1の表示装置(図示しない)に表示するようにしてもよい。そして、作業ラベル付与部102は、作業ラベルを付与した映像データを物体検出アノテーション部103に出力する。
 物体検出アノテーション部103は、例えば、作業ラベルが付与された映像データに対して、作業員の作業に関連する工具(物体)をアノテーションする。
 具体的には、物体検出アノテーション部103は、例えば、ユーザインタフェース30の領域301に、時刻13:10から時刻13:13までの「リュータかけ」の作業ラベルが付与された映像データのうちリュータの工具(物体)が写っている所定の間隔で区切られたフレーム画像(静止画像)、又はユーザにより任意の間隔で区切られたフレーム画像(静止画像)を表示する。
 なお、表示されるフレーム画像(静止画像)は、例えば、作業ラベル毎に20枚程度になるように、所定の間隔や任意の間隔が設定されることが好ましい。
 そうすることで、ユーザは何時間もの映像データを確認する必要が無く、作業を効率的に行うことができ、ユーザの負担を軽減することができる。
 物体検出アノテーション部103は、ユーザの入力操作に基づいて、図3に示すように、フレーム画像(静止画像)毎に写っている工具(物体)の画像範囲(太線の矩形)を取得するとともに、リュータボタン321等が押下されることにより当該工具(物体)をリュータとアノテーションする。なお、物体検出アノテーション部103は、「マイクロリュータかけ」、「ヤスリかけ」、「洗浄」の作業ラベルが付与された映像データそれぞれについても工具(物体)が写っているフレーム画像(静止画像)に対して、「リュータかけ」の場合と同様に、写っている工具(物体)の画像範囲を取得するとともに、当該工具(物体)をアノテーションする。
 物体検出アノテーション部103は、作業ラベルが付与された映像データの全てのフレーム画像(静止画像)に対して工具(物体)の写っている画像範囲と工具(物体)のアノテーションが完了し、ユーザにより完了ボタン330が押下された場合、各作業が行われた時間(作業開始から作業終了までの時間)の映像データ(動画データ)のうち、工具が映っている(タイムスタンプの付与された)フレーム画像(静止画像)の画像範囲と、アノテーションした工具(物体)と、を対応付けたフレーム画像データの集合(以下、「アノテーション済みフレーム画像データ」ともいう)を入力データ記憶部203に格納する。
 物体検出学習部104は、アノテーションされた物体の映像データから物体検出を行う物体検出モデルを生成する。
 具体的には、物体検出学習部104は、例えば、入力データ記憶部203に記憶されたアノテーション済みフレーム画像データを入力データとし、アノテーションされた工具(物体)をラベルデータとする教師データを用いた公知の機械学習を行い、ニューラルネットワーク等の学習済みモデルである物体検出モデルを生成する。物体検出学習部104は、生成した物体検出モデルを記憶部20に記憶する。
 作業判定パラメータ計算部105は、物体検出学習部104により生成された物体検出モデルを用いて、作業ラベルが付与された映像データの作業判定を行い、付与された作業ラベルとの誤差を最小とする判定基準を算出する。
 具体的には、作業判定パラメータ計算部105は、例えば、図2の作業テーブルに登録された作業毎に判定基準としてのパラメータの初期値を設定する。なお、パラメータには、例えば、物体を検出してからX秒間は作業を行っているとする秒数X、作業「リュータかけ」を行っていると判断する物体検出の精度に関わる値の閾値、作業「ヤスリかけ」を行っていると判断する物体検出の精度に関わる値の閾値等が含まれる。この物体検出してからX秒間は作業を行っているとする秒数Xがパラメータに含まれることにより、作業分析装置1は、例えば、映像データによって工具(物体)を検出できない場合でも、直近のX秒間に工具(物体)を検出していれば当該工具を用いた作業をしていると判定することができる。
 作業判定パラメータ計算部105は、入力データ記憶部203に記憶された作業ラベルが付与された別の映像データにおけるアノテーション済みフレーム画像データを物体検出モデルに入力し、工具(物体)を検出する。作業判定パラメータ計算部105は、物体の検出結果と図2の作業テーブルとに基づいて作業を判定し、判定された作業と正解の作業ラベルとの誤差を算出する。そして、作業判定パラメータ計算部105は、全てのアノテーション済みフレーム画像データで算出した誤差に基づいて、パラメータ値のF1スコア等の評価指標を作業毎に算出し、算出した作業毎の評価指標が最大となるように、ベイズ最適化等で各作業のパラメータ値を算出する。
 物体検出アノテーション提案部106は、作業判定パラメータ計算部105により算出されたパラメータ(判定基準)を用いて、作業ラベルが付与された映像データの作業判定を行い、作業判定の判定結果に基づいてアノテーションを行うフレーム画像(静止画像)を提案する。
 例えば、リュータの物体検出で、図4の上段に示すように、作業員が手で持っている状態の映像データのみで学習させた場合、図4の下段に示すような作業台等に置かれたリュータの物体検出の精度に関わる値は落ちてしまう。そこで、幅広く様々な場面でアノテーションさせた映像データが必要であるが、ユーザが様々な場面を探し出すのは手間である。そこで、物体検出アノテーション提案部106は、後述するように、自動でアノテーションさせた方がよいフレーム画像(静止画像)を提案する。
 具体的には、物体検出アノテーション提案部106は、例えば、入力データ記憶部203に記憶された作業ラベルが付与された別の映像データにおいてアノテーションされた工具(物体)と当該工具が写っている画像範囲とが対応付けられた画像データを用いて作業判定を行う。
 図5は、作業判定の判定結果の一例を示す図である。図5の上段は、当該別の映像データに付与された正解の作業ラベルの時系列を示す。図5の中段は、物体検出モデルとパラメータとを用いた当該画像データに対する物体検出アノテーション提案部106による作業員の作業の判定結果を示す。図5の下段は、物体検出モデルによる当該画像データにおける物体検出結果を示す。
 図5に示すように、正解の作業ラベルが「リュータかけ」の時刻13:40から時刻13:43までの時間において、作業判定結果において「リュータかけ」が判定(検出)されなかった時間がある。これは、例えば、パラメータの物体を検出してからX秒間は作業を行っているとする秒数Xまでの間に、リュータが写っているフレーム画像(静止画像)があるにもかかわらず抽出されなかったことが原因である。そこで、物体検出アノテーション提案部106は、物体検出の精度に関わる値を増加させるために、作業判定結果において「リュータかけ」と判定(検出)されなかった時間の当該別の映像データでリュータが写っているフレーム画像(静止画像)を抽出する。物体検出アノテーション提案部106は、物体検出アノテーション部103と同様に、抽出したフレーム画像(静止画像)をユーザインタフェース30に表示し、ユーザの入力操作に基づいて抽出したフレーム画像(静止画像)においてリュータの画像範囲を取得し、リュータボタン321が押下されることでリュータとアノテーションする。物体検出アノテーション提案部106は、リュータが映っている(タイムスタンプの付与された)フレーム画像(静止画像)の画像範囲と、アノテーションしたリュータと、を対応付けた画像データを入力データ記憶部203に格納する。
 また、図5に示すように、正解の作業ラベルが「ヤスリかけ」の時刻13:43から時刻13:50までの時間において、作業判定結果において「リュータかけ」と誤判定(誤検出)された時間と、「ヤスリかけ」が判定(検出)されなかった時間と、がある。この「リュータかけ」の誤判定(誤検出)は、時刻13:43のフレーム画像(静止画像)に対する物体検出でリュータと誤検出したことが原因である。また、「ヤスリかけ」が判定(検出)されなかったことは、パラメータの物体を検出してからX秒間は作業を行っているとする秒数Xまでの間に、紙ヤスリが写っているフレーム画像(静止画像)があるにもかかわらず抽出されなかったことが原因である。
 そこで、物体検出アノテーション提案部106は、物体検出の精度に関わる値を増加させるために、当該別の映像データにおいて、時刻13:43周辺で紙ヤスリが写っているフレーム画像(静止画像)と、「ヤスリかけ」と判定(検出)されなかった時間に紙ヤスリが写っているフレーム画像(静止画像)を抽出する。物体検出アノテーション提案部106は、抽出したフレーム画像(静止画像)それぞれをユーザインタフェース30に表示し、ユーザの入力操作に基づいて、フレーム画像(静止画像)それぞれにおいて紙ヤスリの画像範囲を取得し、紙ヤスリボタン323が押下されることで工具(物体)を紙ヤスリとアノテーションする。物体検出アノテーション提案部106は、紙ヤスリが映っている(タイムスタンプの付与された)フレーム画像(静止画像)の画像範囲と、アノテーションした紙ヤスリと、を対応付けた画像データを入力データ記憶部203に格納する。
 これにより、ユーザが様々な場面を探し出す手間をかけることなく、物体検出の精度を上げることができる。
 なお、物体検出アノテーション提案部106は、物体検出の精度に関わる値である工具(物体)の物体検出の信頼性が所定値(例えば、20%等)以下の低い場合にも、当該工具(物体)が写っているフレーム画像(静止画像)を抽出するようにしてもよい。物体検出アノテーション提案部106は、ユーザインタフェース30に抽出したフレーム画像(静止画像)を表示し、ユーザの入力操作に基づいて、抽出したフレーム画像(静止画像)における工具(物体)の画像範囲を取得し、工具(物体)をアノテーションするようにしてもよい。
 その後、物体検出学習部104は、物体検出アノテーション提案部106により抽出(提案)され工具(物体)をアノテーションしたフレーム画像(静止画像)を含む画像データを用いて機械学習を行い、物体検出モデルを更新する。作業判定パラメータ計算部105は、物体検出アノテーション提案部106により抽出(提案)されたフレーム画像(静止画像)を含むアノテーション済みフレーム画像データを更新された物体検出モデルに入力することで作業を判定し、付与された正解の作業ラベルと作業の判定結果との誤差を算出する。作業判定パラメータ計算部105は、算出した誤差に基づいてパラメータの値のF1スコア等の評価指標を作業毎に算出し、算出した作業毎の評価指標が最大となるように、ベイズ最適化等で各作業のパラメータ値を再度算出する。例えば、物体検出アノテーション提案部106により抽出(提案)されるフレーム画像(静止画像)がなくなる、又は所定数未満となるまで、物体検出学習部104及び作業判定パラメータ計算部105は処理を繰り返す。そして、物体検出学習部104は、生成した物体検出モデルを後述する物体検出部1071に出力するとともに、作業判定パラメータ計算部105は、算出したパラメータを後述する作業判定部107に出力する。
 作業判定部107は、物体検出モデルと設定されたパラメータ(判定基準)とを用いてカメラ2から新たに入力された映像データにおける作業員の作業を判定する。
 具体的には、作業判定部107は、例えば、カメラ2から新たに入力された映像データのフレーム画像(静止画像)を後述する物体検出部1071の物体検出モデルと、後述する動体検出部1072とに入力する。作業判定部107は、当該物体検出モデルから出力される工具(物体)の検出結果と、動体検出部1072の検出結果と、図2の作業テーブルと、パラメータと、に基づいて作業者の作業を判定する。なお、作業判定部107は、映像データのフレーム画像(静止画像)によって工具(物体)を検出できない場合で、当該フレーム画像のX秒以内の直近において当該工具(物体)が検出されている場合には、物体検出してからX秒間は作業を行っているとする秒数Xのパラメータに基づいて当該フレーム画像の作業員の作業を判定するようにしてもよい。
 また、作業判定部107は、例えば、物体検出部1071の物体検出モデルから出力される物体検出の信頼度やクラスの分類確率等の物体検出の精度に関する値が予め設定された閾値(例えば、70%等)以下の場合、作業員の作業の判定を「作業無し」と判定するようにしてもよい。例えば、作業判定部107は、図6に示すように、映像データにおいて作業員が単にワークを触っている場合に、「紙ヤスリ」及び「信頼度40%」という物体検出結果を受けた場合、信頼度が閾値(例えば、70%等)以下であることから作業員の作業を「作業無し」と判定するようにしてもよい。
 そうすることで、作業の誤検出を減らすことができる。
 物体検出部1071は、物体検出学習部104により生成された物体検出モデルを有し、カメラ2から新たに入力された映像データのフレーム画像(静止画像)を物体検出モデルに入力し、工具(物体)の検出結果とともに、信頼度等の物体検出の精度に関する値を出力する。
 動体検出部1072は、カメラ2から新たに入力された映像データの各フレーム画像(静止画像)のうち指定された画像領域におけるピクセルの輝度変化等の変化に基づいて作業員や工具等の動体を検出する。
 具体的には、動体検出部1072は、図7に示すように、フレーム画像(静止画像)の太線の矩形で示す画像領域において、ピクセルの輝度変化等の動きが有れば、映像データの作業員が作業を行っていると判定するようにしてもよい。
 また、動体検出部1072は、図8の上段に示すように、破線の矩形で示すX秒(例えば、5秒等)以内の間隔で定期的に動きを検出する場合、作業員は連続して作業を行っていると判断するようにしてもよい。そして、動体検出部1072は、図8の下段に示すように、動体の動きが検出される期間において、物体検出部1071により網掛けの矩形で示す時刻のフレーム画像(静止画像)からリュータ等の工具(物体)が検出された場合、当該期間では検出された工具(物体)で作業を行っていると判定するようにしてもよい。
 一方、動体検出部1072は、X秒超過に亘って動きを検出しない場合、作業員は作業をしていないと判断するようにしてもよい。
<作業分析装置1のパラメータ算出処理>
 次に、第1実施形態に係る作業分析装置1のパラメータ算出処理に係る動作について説明する。
 図9は、作業分析装置1のパラメータ算出処理について説明するフローチャートである。ここで示すフローは、作業員等のユーザにより作業テーブルに新たな工具(物体)と作業とが登録される場合等に実行される。
 ステップS1において、作業ラベル付与部102は、映像データ記憶部201に記憶された作業員の作業を含む映像データをユーザインタフェース30において再生し、ユーザによる入力操作に基づいて映像データに対して作業員が行っている作業を示す作業ラベルを付与する。
 ステップS2において、物体検出アノテーション部103は、ステップS1で作業ラベルが付与された映像データのうち、作業ラベル毎に所定の間隔等で区切られたフレーム画像(静止画像)に対して、写っている工具(物体)の画像範囲を取得するとともに、当該工具(物体)をアノテーションする。物体検出アノテーション部103は、各作業が行われた時間(作業開始から作業終了までの時間)の映像データ(動画データ)のうち、工具が映っている(タイムスタンプの付与された)フレーム画像(静止画像)の画像範囲と、アノテーションした工具(物体)と、を対応付けたアノテーション済みフレーム画像データを入力データ記憶部203に格納する。
 ステップS3において、物体検出学習部104は、ステップS2でアノテーションされたアノテーション済みフレーム画像データから物体検出を行う物体検出モデルを生成する。
 ステップS4において、作業判定パラメータ計算部105は、入力データ記憶部203に記憶された作業ラベルが付与された別の映像データのアノテーション済みフレーム画像データを物体検出モデルに入力し、工具(物体)を検出する。
 ステップS5において、作業判定パラメータ計算部105は、ステップS4の物体の検出結果と作業テーブルとに基づいて作業員の作業を判定する。
 ステップS6において、作業判定パラメータ計算部105は、正解の作業ラベルとステップS5の判定結果との誤差を作業毎に算出する。
 ステップS7において、全ての映像データで算出した誤差に基づいて、パラメータの値のF1スコア等の評価指標を作業毎に算出する。
 ステップS8において、作業判定パラメータ計算部105は、作業毎の評価指標が最大となるように、ベイズ最適化等で各作業のパラメータを算出する。
 ステップS9において、物体検出アノテーション提案部106は、ステップS8で算出されたパラメータ(判定基準)を用いて、作業ラベルが付与された別の映像データの作業判定を行う。
 ステップS10において、物体検出アノテーション提案部106は、ステップS9の判定結果に基づき、誤検出や未検出等、物体検出の精度に関わる値が低い個所において、物体検出の精度に関わる値を増加させるために提案するフレーム画像(静止画像)があるか否かを判定する。提案するフレーム画像(静止画像)がある場合、処理はステップS2に戻り、提案されたフレーム画像(静止画像)を含めて、再度ステップS2からステップS9の処理を行う。一方、提案するフレーム画像(静止画像)が無い場合、作業分析装置1は、ステップS3で生成した物体検出モデルを物体検出部1071に設定するとともに、ステップS8で算出したパラメータを作業判定部107に設定し、パラメータ算出処理を終了する。
<作業分析装置1の分析処理>
 次に、第1実施形態に係る作業分析装置1の分析処理に係る動作について説明する。
 図10は、作業分析装置1の分析処理について説明するフローチャートである。ここで示すフローは、カメラ2から映像データが入力される間、繰り返し実行される。
 ステップS21において、物体検出部1071は、カメラ2から新たに入力された映像データのフレーム画像(静止画像)を物体検出モデルに入力し工具(物体)を検出する。
 ステップS22において、動体検出部1072は、カメラ2から新たに入力された映像データの各フレーム画像(静止画像)の指定された画像領域におけるピクセルの輝度変化等の変化から作業員や工具等の動体を検出する。
 ステップS23において、作業判定部107は、ステップS21の工具(物体)の検出結果と、ステップS22の動体の検出結果と、設定されたパラメータと、作業テーブルと、に基づいて作業員の作業を判定する。
 以上により、第1実施形態に係る作業分析装置1は、作業を精度良く判定させるために判定基準を自動で調整できる。すなわち、ユーザは作業のラベル付けと物体のアノテーションさえ行えば、自動で最適なパラメータが算出される。
 また、作業分析装置1は、作業判定の精度が不足している場合、アノテーションすれば作業判定の精度を高められる動画中のフレームを自動で提案することができる。
 以上、第1実施形態について説明した。
<第2実施形態>
 次に、第2実施形態について説明する。第1実施形態では生成された物体検出モデルを用いて作業ラベルが付与された映像データにおける作業員の作業の作業判定を行い、付与された作業ラベルとの誤差を最小とする判定基準を算出することにより、物体検出モデルと算出された判定基準とを用いて新たに入力された映像データにおける作業員の作業を判定する。これに対し、第2実施形態では作業員の関節に関する関節位置情報を推定し、推定された関節位置情報と付与された作業ラベルとに基づいて作業員の作業を推定する関節位置作業推定モデルを生成し、物体検出モデルを用いた作業判定における物体検出の精度に関わる値と、関節位置作業推定モデルを用いた作業判定における関節位置から推定した作業の分類確率と、に基づいて作業ラベルとの誤差が最小となるように判定基準を算出し、物体検出モデルと関節位置作業推定モデルと判定基準とを用いて新たに入力された映像データにおける作業員の作業を判定する点が、第1実施形態と相違する。
 これにより、第2実施形態に係る作業分析装置1Aは、作業を精度良く判定させるために判定基準を自動で調整できる。
 以下、第2実施形態について説明する。
 図11は、第2実施形態に係る作業分析システムの機能的構成例を示す機能ブロック図である。なお、図1の作業分析システム100の要素と同様の機能を有する要素については、同じ符号を付し、詳細な説明は省略する。
 図11に示すように、作業分析システム100は、作業分析装置1A、及びカメラ2を有する。
 カメラ2は、第1実施形態におけるカメラ2と同等の機能を有する。
<作業分析装置1A>
 図11に示すように、作業分析装置1Aは、制御部10a、及び記憶部20を含む。また、制御部10aは、作業登録部101、作業ラベル付与部102、物体検出アノテーション部103、物体検出学習部104、作業判定パラメータ計算部105a、関節位置推定部108、関節位置作業学習部109、及び作業判定部107aを有する。また、作業判定部107aは、物体検出部1071、動体検出部1072、及び関節位置作業推定部1073を有する。また、記憶部20は、映像データ記憶部201、作業登録記憶部202、及び入力データ記憶部203を有する。
 記憶部20、映像データ記憶部201、作業登録記憶部202、及び入力データ記憶部203は、第1実施形態における記憶部20、映像データ記憶部201、作業登録記憶部202、及び入力データ記憶部203と同等の機能を有する。
 また、作業登録部101、作業ラベル付与部102、物体検出アノテーション部103、及び物体検出学習部104は、第1実施形態における作業登録部101、作業ラベル付与部102、物体検出アノテーション部103、及び物体検出学習部104と同等の機能を有する。
 また、物体検出部1071及び動体検出部1072は、第1実施形態における物体検出部1071及び動体検出部1072と同等の機能を有する。
 関節位置推定部108は、入力データ記憶部203に記憶された作業ラベルが付与された映像データのフレーム画像(静止画像)毎に作業員の関節位置に関する関節位置情報を推定する。なお、フレーム画像は、映像データから適当な間隔で抽出してもよい。例えば映像データのフレームレートが60fpsの場合、フレーム画像として例えば24fps程度で抽出するようにしてもよい。
 具体的には、関節位置推定部108は、公知の手法(例えば、菅野滉介、奥健太、川越恭二、「多次元時系列データからのモーション検出・分類手法」、DEIM Forum 2016 G4-5、又は、上園翔平、小野智司、「LSTM Autoencoderを用いたマルチモーダル系列データの特徴抽出」、人工知能学会研究会資料、SIG-KBS-B802-01、2018)を用いて、入力データ記憶部203に記憶されている作業ラベルが付与された映像データのフレーム画像(静止画像)毎に作業員の手や腕等の関節の座標及び角度等の時系列データを関節位置情報として推定する。
 図12は、フレーム画像における関節位置情報の一例を示す図である。図12では、作業員がヤスリかけをしているときの関節位置情報を示す。
 関節位置作業学習部109は、例えば、関節位置推定部108により推定された関節位置情報を入力データとし、作業ラベル付与部102で付与された作業ラベルをラベルデータとする機械学習を行い、作業員の作業を推定する関節位置作業推定モデルを生成する。
 例えば、図12の作業員の右手の関節位置情報が、図13に示すように、0.3秒等で1往復する動作があったときに、ヤスリかけを行っていると判定するように、関節位置作業学習部109は、関節位置作業推定モデルを生成する。
 なお、関節位置作業学習部109は、関節位置推定部108により推定された関節位置情報と、作業ラベル付与部102で付与された作業ラベルと、に基づいてルールベースを生成するようにしてもよい。
 作業判定パラメータ計算部105aは、物体検出モデルを用いた作業判定における物体検出の精度に関わる値と、関節位置作業推定モデルを用いた作業判定における関節位置から推定した作業の分類確率と、に基づいて作業ラベルとの誤差が最小となるように判定基準(パラメータ)を算出する。
 具体的には、作業判定パラメータ計算部105aは、例えば、第1実施形態の作業判定パラメータ計算部105と同様に、図2の作業テーブルに登録された作業毎に判定基準としてのパラメータの初期値を設定する。作業判定パラメータ計算部105aは、入力データ記憶部203に記憶された作業ラベルが付与された別の映像データのアノテーション済みフレーム画像データを物体検出モデルに入力し、工具(物体)を検出するとともに、物体検出に関わる値を取得する。作業判定パラメータ計算部105aは、物体の検出結果と図2の作業テーブルとに基づいて作業員の作業を判定する。また、作業判定パラメータ計算部105aは、同じ別の映像データのフレーム画像(静止画像)毎に作業員の関節位置情報を推定し、推定した関節位置情報を関節位置作業推定モデルに入力することで、作業員の作業を推定するとともに、関節位置から推定した分類確率を取得する。
 そして、作業判定パラメータ計算部105aは、関節位置から推定した作業の分類確率の重み係数をaとし、及び物体検出の精度に関わる値の重み係数をbとする、次式(1)を用いて算出される作業の分類確率と正解の作業ラベルとの誤差が最小となるように、ベイズ最適化等でパラメータ(判定基準)の値を算出する。
作業の分類確率 = a(関節位置から推定した作業の分類確率)
        + b(物体検出の精度に関わる値)  ・・・(1)
 ここで、パラメータには、例えば、物体検出してからX秒間は作業を行っているとする秒数X、関節位置から推定した作業の分類確率の重みa、及び物体検出の精度に関わる値の重みbが含まれる。
 作業判定パラメータ計算部105aは、算出したパラメータを後述する作業判定部107aに出力し設定する。
 作業判定部107aは、物体検出モデルと関節位置作業推定モデルと設定されたパラメータ(判定基準)とを用いてカメラ2から新たに入力された映像データにおける作業員の作業を判定する。
 具体的には、作業判定部107aは、例えば、カメラ2から新たに入力された映像データのフレーム画像(静止画像)を物体検出部1071における物体検出モデルと、動体検出部1072とに入力する。作業判定部107aは、検出された工具(物体)と図2の作業テーブルとパラメータとに基づいて作業者の作業を判定するとともに、物体検出の精度に関わる値を取得する。また、作業判定部107aは、同じ新たに入力された映像データのフレーム画像(静止画像)毎に作業員の関節位置情報を推定し、推定した関節位置情報を後述する関節位置作業推定部1073における関節位置作業推定モデルに入力する。作業判定部107aは、後述する関節位置作業推定部1073から作業者の作業の推定結果と関節位置から推定した作業の分類確率とを取得する。
 そして、作業判定部107aは、取得した関節位置から推定した作業の分類確率及び物体検出の精度に関わる値と、設定されたパラメータと、式(1)とから作業の分類確率を算出し、算出した分類確率と動体検出部1072の検出結果とに基づいて作業員の作業を判定する。
 関節位置作業推定部1073は、関節位置作業学習部109により生成された関節位置作業推定モデルを有し、作業判定部107aにより推定された関節位置情報を関節位置作業推定モデルに入力し、作業員の作業の推定結果と、関節位置から推定した作業の分類確率とを作業判定部107aに出力する。
<作業分析装置1Aのパラメータ算出処理>
 次に、第2実施形態に係る作業分析装置1Aのパラメータ算出処理に係る動作について説明する。
 図14は、作業分析装置1Aのパラメータ算出処理について説明するフローチャートである。なお、ステップS31からステップS33の処理は、図9のステップS1からステップS3の処理と同様であり、詳細な説明は省略する。
 ステップS34において、関節位置推定部108は、入力データ記憶部203に記憶された作業ラベルが付与された映像データのフレーム画像(静止画像)毎に作業員の関節位置情報を推定する。
 ステップS35において、関節位置作業学習部109は、ステップS34で推定された関節位置情報を入力データとし、ステップS31で付与された作業ラベルをラベルデータとする機械学習を行い、作業員の作業を推定する関節位置作業推定モデルを生成する。
 ステップS36において、作業判定パラメータ計算部105aは、入力データ記憶部203に記憶された作業ラベルが付与された別の映像データのアノテーション済みフレーム画像データを物体検出モデルに入力し、検出された工具(物体)と物体検出の精度に関わる値とを取得する。
 ステップS37において、作業判定パラメータ計算部105aは、ステップS36の物体の検出結果と作業テーブルとに基づいて作業員の作業を判定する。
 ステップS38において、作業判定パラメータ計算部105aは、同じ別の映像データのフレーム画像(静止画像)から作業員の関節位置情報を推定する。
 ステップS39において、作業判定パラメータ計算部105aは、ステップS38で推定した関節位置情報を関節位置作業推定モデルに入力し、作業員の作業の推定結果と関節位置から推定した分類確率とを取得する。
 ステップS40において、作業判定パラメータ計算部105aは、式(1)で算出される作業の分類確率と正解の作業ラベルとの誤差が最小となるように、ベイズ最適化等でパラメータ(判定基準)の値を算出する。
<作業分析装置1Aの分析処理>
 次に、第2実施形態に係る作業分析装置1Aの分析処理に係る動作について説明する。
 図15は、作業分析装置1Aの分析処理について説明するフローチャートである。ここで示すフローは、カメラ2から映像データが入力される間繰り返し実行される。
 ステップS51において、物体検出部1071は、カメラ2から新たに入力された映像データのフレーム画像(静止画像)を物体検出モデルに入力し、工具(物体)を検出し物体検出の精度に関わる値を取得する。
 ステップS52において、動体検出部1072は、カメラ2から新たに入力された映像データの各フレーム画像(静止画像)の指定された画像領域におけるピクセルの輝度変化等の変化から作業員や工具等の動体を検出する。
 ステップS53において、関節位置作業推定部1073は、新たに入力された映像データのフレーム画像(静止画像)毎に作業員の関節位置情報を推定する。
 ステップS54において、関節位置作業推定部1073は、ステップS53で推定した関節位置情報を関節位置作業推定モデルに入力し、作業員の作業を推定するとともに、関節位置から推定した作業の分類確率を取得する。
 ステップS55において、作業判定部107aは、ステップS51及びステップS54で取得した関節位置から推定した作業の分類確率及び物体検出の精度に関わる値と、ステップS52の動体の検出結果と、設定されたパラメータと、式(1)とから作業の分類確率を算出し、算出した分類確率に基づいて作業員の作業を判定する。
 以上により、第2実施形態に係る作業分析装置1Aは、作業を精度良く判定させるために判定基準を自動で調整できる。すなわち、ユーザは作業のラベル付けと物体のアノテーションさえ行えば、自動で最適なパラメータが算出される。
 以上、第2実施形態について説明した。
 以上、第1実施形態及び第2実施形態について説明したが、作業分析装置1、1Aは、上述の実施形態に限定されるものではなく、目的を達成できる範囲での変形、改良等を含む。
<変形例1>
 第1実施形態及び第2実施形態では、作業分析装置1、1Aは、1つのカメラ2と接続されたが、これに限定されない。例えば、作業分析装置1、1Aは、2以上の複数のカメラ2と接続されてもよい。
<変形例2>
 また例えば、上述の実施形態では、作業分析装置1、1Aは、全ての機能を有したが、これに限定されない。例えば、作業分析装置1の作業登録部101、作業ラベル付与部102、物体検出アノテーション部103、物体検出学習部104、作業判定パラメータ計算部105、物体検出アノテーション提案部106、作業判定部107、及び物体検出部1071、及び動体検出部1072の一部又は全部、又は、作業分析装置1Aの作業登録部101、作業ラベル付与部102、物体検出アノテーション部103、物体検出学習部104、作業判定パラメータ計算部105a、関節位置推定部108、関節位置作業学習部109、作業判定部107a、物体検出部1071、動体検出部1072、及び関節位置作業推定部1073の一部又は全部を、サーバが備えるようにしてもよい。また、クラウド上で仮想サーバ機能等を利用して、作業分析装置1、1Aの各機能を実現してもよい。
 さらに、作業分析装置1、1Aは、作業分析装置1、1Aの各機能を適宜複数のサーバに分散される、分散処理システムとしてもよい。
<変形例3>
 また例えば、上述の実施形態では、作業分析装置1Aは、物体検出アノテーション提案部106を有しなかったが、物体検出アノテーション提案部106を有してもよい。
 そうすることで、作業分析装置1Aは、作業判定の精度が不足している場合、アノテーションすれば作業判定の精度を高められる動画中のフレームを自動で提案することができる。
 なお、第1実施形態及び第2実施形態における、作業分析装置1、1Aに含まれる各機能は、ハードウェア、ソフトウェア又はこれらの組み合わせによりそれぞれ実現することができる。ここで、ソフトウェアによって実現されるとは、コンピュータがプログラムを読み込んで実行することにより実現されることを意味する。
 プログラムは、様々なタイプの非一時的なコンピュータ可読媒体(Non-transitory computer readable medium)を用いて格納され、コンピュータに供給することができる。非一時的なコンピュータ可読媒体は、様々なタイプの実体のある記録媒体(Tangible storage medium)を含む。非一時的なコンピュータ可読媒体の例は、磁気記録媒体(例えば、フレキシブルディスク、磁気テープ、ハードディスクドライブ)、光磁気記録媒体(例えば、光磁気ディスク)、CD-ROM(Read Only Memory)、CD-R、CD-R/W、半導体メモリ(例えば、マスクROM、PROM(Programmable ROM)、EPROM(Erasable PROM)、フラッシュROM、RAM)を含む。また、プログラムは、様々なタイプの一時的なコンピュータ可読媒体(Transitory computer readable medium)によってコンピュータに供給されてもよい。一時的なコンピュータ可読媒体の例は、電気信号、光信号、及び電磁波を含む。一時的なコンピュータ可読媒体は、電線及び光ファイバ等の有線通信路、又は、無線通信路を介して、プログラムをコンピュータに供給できる。
 なお、記録媒体に記録されるプログラムを記述するステップは、その順序に沿って時系列的に行われる処理はもちろん、必ずしも時系列的に処理されなくとも、並列的あるいは個別に実行される処理をも含むものである。
 以上を換言すると、本開示の作業分析装置は、次のような構成を有する各種各様の実施形態を取ることができる。
 (1)本開示の作業分析装置1は、作業員の作業を分析する作業分析装置であって、作業員の作業を含む映像データに対して、作業員の作業を示す作業ラベルを付与する作業ラベル付与部102と、作業ラベルが付与された映像データに対して、作業員の作業に関連する物体をアノテーションする物体検出アノテーション部103と、物体検出アノテーション部103によりアノテーションされた物体の映像データから物体検出を行う物体検出モデルを生成する物体検出学習部104と、物体検出モデルを用いて、映像データから物体を検出する物体検出部1071と、作業ラベルが付与された映像データの作業判定を行い、付与された作業ラベルとの誤差を最小とする判定基準を算出する作業判定パラメータ計算部105と、物体検出モデルと判定基準とを用いて新たに入力された映像データにおける作業員の作業を判定する作業判定部107と、を備える。
 この作業分析装置1によれば、作業を精度良く判定させるために判定基準を自動で調整できる。
 (2) (1)に記載の作業分析装置1において、作業判定パラメータ計算部105により算出された判定基準を用いて、作業ラベルが付与された映像データの作業判定を行い、作業判定の判定結果に基づいてアノテーションを行うフレーム画像を提案する物体検出アノテーション提案部106を備えてもよい。
 そうすることで、作業分析装置1は、作業判定の精度が不足している場合、アノテーションすれば作業判定の精度を高められる動画中のフレーム画像を自動で提案することができる。
 (3) (1)又は(2)に記載の作業分析装置1Aにおいて、作業員の関節位置に関する関節位置情報を推定する関節位置推定部108と、関節位置推定部108により推定された関節位置情報と、作業ラベル付与部102で付与された作業ラベル情報と、に基づいて作業員の作業を推定する関節位置作業推定モデルを作成する関節位置作業学習部109と、関節位置作業学習部109により生成された関節位置作業推定モデルに基づいて、関節位置情報から作業を推定する関節位置作業推定部1073と、を備え、作業判定パラメータ計算部105aは、物体検出モデルを用いた作業判定における物体検出の精度に関わる値と、関節位置作業推定モデルを用いた作業判定における関節位置から推定した作業の分類確率と、に基づいて作業ラベルとの誤差が最小となるように判定基準を算出し、作業判定部107aは、物体検出モデルと関節位置作業推定モデルと判定基準とを用いて新たに入力された映像データにおける作業員の作業を判定してもよい。
 そうすることで、作業分析装置1Aは、(1)と同様の効果を奏することができる。
 (4) (1)から(3)のいずれかに記載の作業分析装置1、1Aにおいて、新たに入力された映像データにおいて動体を検出する動体検出部1072をさらに備え、作業判定部107、107aは、動体検出部1072が動体を検出した時間の間隔に基づいて作業員の作業が続いているか否かを判定してもよい。
 そうすることで、作業分析装置1、1Aは、より精度良く作業者の作業を判定することができる。
 (5) (1)から(4)のいずれかに記載の作業分析装置1、1Aにおいて、判定基準は、少なくとも工具(物体)が検出されてから工具(物体)を使用した作業が継続していると推定できる時間、及び物体検出の精度に関わる値の閾値を含んでもよい。
 そうすることで、作業分析装置1、1Aは、工具(物体)が検出されない場合でも精度良く作業者の作業を判定することができる。
 1、1A 作業分析装置
 2 カメラ
 10、10a 制御部
 101 作業登録部
 102 作業ラベル付与部
 103 物体検出アノテーション部
 104 物体検出学習部
 105、105a 作業判定パラメータ計算部
 106 物体検出アノテーション提案部
 107、107a 作業判定部
 1071 物体検出部
 1072 動体検出部
 1073 関節位置作業推定部
 108 関節位置推定部
 109 関節位置作業学習部
 20 記憶部
 201 映像データ記憶部
 202 作業登録記憶部
 203 入力データ記憶部

Claims (5)

  1.  作業員の作業を分析する作業分析装置であって、
     前記作業員の作業を含む映像データに対して、前記作業員の作業を示す作業ラベルを付与する作業ラベル付与部と、
     前記作業ラベルが付与された前記映像データに対して、前記作業員の作業に関連する物体をアノテーションする物体検出アノテーション部と、
     前記物体検出アノテーション部によりアノテーションされた前記物体の映像データから物体検出を行う物体検出モデルを生成する物体検出学習部と、
     前記物体検出モデルを用いて、前記映像データから前記物体を検出する物体検出部と、
     前記作業ラベルが付与された前記映像データの作業判定を行い、付与された作業ラベルとの誤差を最小とする判定基準を算出する作業判定パラメータ計算部と、
     前記物体検出モデルと前記判定基準とを用いて新たに入力された映像データにおける前記作業員の作業を判定する作業判定部と、
     を備える作業分析装置。
  2.  前記作業判定パラメータ計算部により算出された前記判定基準を用いて、前記作業ラベルが付与された前記映像データの作業判定を行い、前記作業判定の判定結果に基づいてアノテーションを行うフレーム画像を提案する物体検出アノテーション提案部を備える、請求項1に記載の作業分析装置。
  3.  前記作業員の関節位置に関する関節位置情報を推定する関節位置推定部と、
     前記関節位置推定部により推定された関節位置情報と、前記作業ラベル付与部で付与された作業ラベル情報と、に基づいて前記作業員の作業を推定する関節位置作業推定モデルを作成する関節位置作業学習部と、
     前記関節位置作業学習部により作成された前記関節位置作業推定モデルに基づいて、前記関節位置情報から作業を推定する関節位置作業推定部と、を備え、
     前記作業判定パラメータ計算部は、前記物体検出モデルを用いた前記作業判定における物体検出の精度に関わる値と、前記関節位置作業推定モデルを用いた前記作業判定における関節位置から推定した作業の分類確率と、に基づいて前記作業ラベルとの誤差が最小となるように前記判定基準を算出し、
     前記作業判定部は、前記物体検出モデルと前記関節位置作業推定モデルと前記判定基準とを用いて新たに入力された映像データにおける前記作業員の作業を判定する、請求項1又は請求項2に記載の作業分析装置。
  4.  前記新たに入力された映像データにおいて動体を検出する動体検出部をさらに備え、
     前記作業判定部は、前記動体検出部が前記動体を検出した時間の間隔に基づいて前記作業員の作業が続いているか否かを判定する、請求項1から請求項3のいずれか1項に記載の作業分析装置。
  5.  前記判定基準は、少なくとも前記物体が検出されてから前記物体を使用した作業が継続していると推定できる時間、及び物体検出の精度に関わる値の閾値を含む、請求項1から請求項4のいずれか1項に記載の作業分析装置。
PCT/JP2022/016971 2022-03-31 2022-03-31 作業分析装置 WO2023188417A1 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
PCT/JP2022/016971 WO2023188417A1 (ja) 2022-03-31 2022-03-31 作業分析装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2022/016971 WO2023188417A1 (ja) 2022-03-31 2022-03-31 作業分析装置

Publications (1)

Publication Number Publication Date
WO2023188417A1 true WO2023188417A1 (ja) 2023-10-05

Family

ID=88200507

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2022/016971 WO2023188417A1 (ja) 2022-03-31 2022-03-31 作業分析装置

Country Status (1)

Country Link
WO (1) WO2023188417A1 (ja)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2020101036A1 (ja) * 2018-11-16 2020-05-22 株式会社 Preferred Networks 教師信号生成装置、モデル生成装置、物体検出装置、教師信号生成方法、モデル生成方法、およびプログラム
JP2020135417A (ja) * 2019-02-20 2020-08-31 Kddi株式会社 食材又は調味料の使用量を推定する情報装置、プログラム及び方法
WO2021059572A1 (ja) * 2019-09-27 2021-04-01 富士フイルム株式会社 情報処理装置、情報処理装置の作動方法、情報処理装置の作動プログラム
WO2021186592A1 (ja) * 2020-03-17 2021-09-23 株式会社村田製作所 診断支援装置及びモデル生成装置
JP2021157548A (ja) * 2020-03-27 2021-10-07 Nttテクノクロス株式会社 発芽判定装置及びプログラム

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2020101036A1 (ja) * 2018-11-16 2020-05-22 株式会社 Preferred Networks 教師信号生成装置、モデル生成装置、物体検出装置、教師信号生成方法、モデル生成方法、およびプログラム
JP2020135417A (ja) * 2019-02-20 2020-08-31 Kddi株式会社 食材又は調味料の使用量を推定する情報装置、プログラム及び方法
WO2021059572A1 (ja) * 2019-09-27 2021-04-01 富士フイルム株式会社 情報処理装置、情報処理装置の作動方法、情報処理装置の作動プログラム
WO2021186592A1 (ja) * 2020-03-17 2021-09-23 株式会社村田製作所 診断支援装置及びモデル生成装置
JP2021157548A (ja) * 2020-03-27 2021-10-07 Nttテクノクロス株式会社 発芽判定装置及びプログラム

Similar Documents

Publication Publication Date Title
JP4752721B2 (ja) 移動パターン特定装置、移動パターン特定方法、移動パターン特定プログラム、およびこれを記録した記録媒体
CN108596148B (zh) 一种基于计算机视觉的建筑工人劳动状态分析***及方法
JP2015095164A (ja) ジェスチャ認識装置およびジェスチャ認識装置の制御方法
JP7010542B2 (ja) 作業分析装置、作業分析方法、及びプログラム
TW201818297A (zh) 作業辨識裝置以及作業辨識方法
JP2019139570A (ja) 判別装置、判別方法およびプログラム
JPWO2020026643A1 (ja) 情報処理装置、情報処理方法及び情報処理プログラム
CN113228070A (zh) 用于手动装配线操作的自动重复步骤和循环检测的方法和***
JP2019193019A (ja) 作業分析装置、作業分析方法
TWI776176B (zh) 手部作業動作評分裝置、方法及電腦可讀取存儲介質
JP2014238674A (ja) 情報処理システム、情報処理方法及びプログラム
WO2023188417A1 (ja) 作業分析装置
JP2023054769A (ja) 柔軟で適応的なロボット学習のための人間ロボット協働
WO2022044637A1 (ja) 画像処理装置、画像処理方法およびプログラム
JP2021047698A (ja) 支援装置、支援装置の制御方法およびプログラム
WO2023105726A1 (ja) 作業分析装置
JP7376446B2 (ja) 作業分析プログラム、および、作業分析装置
JP2021056922A (ja) 人動作支援システム及びその方法
US20210157805A1 (en) Method of performing a data collection procedure for a process which uses articifical intelligence
WO2020136924A1 (ja) 動作分析装置、動作分析方法及び動作分析プログラム
US20240112499A1 (en) Image analysis device and method
KR102560107B1 (ko) 다중 카메라의 시간 및 공간정보를 활용한 어노테이션 오류방지시스템 및 방법
JP7470069B2 (ja) 指示物体検出装置、指示物体検出方法及び指示物体検出システム
WO2024029411A1 (ja) 作業特徴量表示装置、作業特徴量表示方法、及び作業特徴量表示プログラム
US20230103948A1 (en) Work estimation apparatus, work estimation method, and non-transitory computer-readable storage medium

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

Country of ref document: EP

Kind code of ref document: A1