WO2022157988A1 - 作業推定装置、作業推定装置の制御方法、情報処理プログラム、および記録媒体 - Google Patents
作業推定装置、作業推定装置の制御方法、情報処理プログラム、および記録媒体 Download PDFInfo
- Publication number
- WO2022157988A1 WO2022157988A1 PCT/JP2021/007816 JP2021007816W WO2022157988A1 WO 2022157988 A1 WO2022157988 A1 WO 2022157988A1 JP 2021007816 W JP2021007816 W JP 2021007816W WO 2022157988 A1 WO2022157988 A1 WO 2022157988A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- work
- workplace
- prediction
- image
- worker
- Prior art date
Links
- 230000010365 information processing Effects 0.000 title claims abstract description 195
- 238000000034 method Methods 0.000 title claims description 124
- 238000001514 detection method Methods 0.000 claims description 226
- 238000003384 imaging method Methods 0.000 claims description 59
- 238000010801 machine learning Methods 0.000 claims description 14
- 230000006870 function Effects 0.000 claims description 5
- 230000008569 process Effects 0.000 description 105
- 230000009471 action Effects 0.000 description 36
- 238000003860 storage Methods 0.000 description 27
- 238000012545 processing Methods 0.000 description 17
- 238000012549 training Methods 0.000 description 16
- 238000013528 artificial neural network Methods 0.000 description 14
- 238000010191 image analysis Methods 0.000 description 12
- 238000010586 diagram Methods 0.000 description 11
- 238000012795 verification Methods 0.000 description 11
- 230000000694 effects Effects 0.000 description 10
- 230000007423 decrease Effects 0.000 description 8
- 238000007689 inspection Methods 0.000 description 7
- 230000003993 interaction Effects 0.000 description 7
- 238000004458 analytical method Methods 0.000 description 6
- 230000007246 mechanism Effects 0.000 description 6
- 230000015654 memory Effects 0.000 description 6
- 238000013527 convolutional neural network Methods 0.000 description 5
- 238000007726 management method Methods 0.000 description 5
- 238000005259 measurement Methods 0.000 description 5
- 230000005540 biological transmission Effects 0.000 description 4
- 230000004044 response Effects 0.000 description 4
- 238000004891 communication Methods 0.000 description 3
- 238000004519 manufacturing process Methods 0.000 description 3
- 241000282412 Homo Species 0.000 description 2
- 240000004050 Pentaglottis sempervirens Species 0.000 description 2
- 235000004522 Pentaglottis sempervirens Nutrition 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 2
- 230000007547 defect Effects 0.000 description 2
- 230000006872 improvement Effects 0.000 description 2
- 238000010422 painting Methods 0.000 description 2
- 238000003825 pressing Methods 0.000 description 2
- 230000006399 behavior Effects 0.000 description 1
- 238000013075 data extraction Methods 0.000 description 1
- 238000013135 deep learning Methods 0.000 description 1
- 239000000284 extract Substances 0.000 description 1
- 230000009191 jumping Effects 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 230000002250 progressing effect Effects 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 230000002787 reinforcement Effects 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 230000011218 segmentation Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 230000003936 working memory Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B19/00—Programme-control systems
- G05B19/02—Programme-control systems electric
- G05B19/418—Total 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]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION 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
- G06Q10/00—Administration; Management
- G06Q10/06—Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION 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/00—Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
- G06Q50/04—Manufacturing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/20—Analysis of motion
Definitions
- the present invention relates to a work estimating device and the like for estimating the content of work performed by a worker in a workplace.
- Patent Literature 1 listed below discloses a safety management system that uses analysis results of image data to determine worker behavior.
- HOI detection detects the action that a person is doing with an object from a captured image as an interaction (HOI, Human Object Interaction) between a person and an object captured in the captured image. It is
- An object of one aspect of the present invention is to realize a work estimation device or the like capable of estimating the content of work performed by a worker on a work target from a captured image with sufficient accuracy.
- a work estimation device for estimating the content of a work performed by a worker in a workplace, the workplace image capturing the workplace, or The feature information generated from the workplace image is input, and the content of the work performed by the worker captured in the workplace image on the work object captured in the workplace image is learned.
- a prediction unit that uses a work prediction model, which is a model, to predict the content of the work that the worker is performing on the work object from the workplace image or the feature information, and a prediction that does not use the work prediction model.
- a judgment unit for judging whether or not the prediction by the prediction unit is correct using at least one of the content of the work performed and a judgment result as to whether or not the worker is present in the workplace; an estimating unit for estimating the content of the work predicted by the prediction unit as the content of the work performed by the worker in the workplace when the prediction by the prediction unit is determined to be correct.
- a control method is a control method for a work estimating device for estimating the content of work performed by a worker in a workplace, the workplace capturing an image of the workplace. An image or feature information generated from the workplace image is input, and the content of work performed by the worker captured in the workplace image on the work object captured in the workplace image is output.
- FIG. 1 is a block diagram showing the main configuration of an information processing apparatus according to Embodiment 1 of the present invention
- FIG. 1 It is a figure which shows the whole outline
- FIG. 2 is a flow diagram illustrating an overall outline of processing executed by the information processing apparatus in FIG. 1 when verifying a first prediction using only a work prediction among the second predictions
- FIG. 3 is a flow diagram illustrating an overall outline of processing executed by the information processing apparatus in FIG. 1 when verifying a first prediction using only presence/absence prediction out of second predictions
- 2 is a flow diagram illustrating an overview of processing executed by the information processing apparatus of FIG. 1 when verifying a first prediction using both presence/absence prediction and work prediction
- FIG. FIG. 10 is a diagram illustrating an example of annotations necessary for generating training data
- FIG. 10 is a diagram illustrating an example of annotations necessary for generating training data
- n each represent an integer of "1” or more, and “p” and “q” are integers different from each other, and “x” and “y” are integers different from each other.
- the information processing apparatus 10 generates information (support information) that contributes to, for example, efficiency improvement of the work Op performed by the worker Hu on the work object Ob by using, for example, the analysis result of the workplace image Ic that captures the workplace Ar. . Therefore, first, the worker Hu, the work object Ob, the work Op, the workshop Ar, and the factory Fa including one or more workshops Ar will be described.
- the worker Hu performs one or more works Op(1), Op(2), Op(3), . . . Op(n).
- worker Hu performs tasks Op(x1), Op(x2), and Op(x3).
- the work process Pr(m) is the "painting" process
- the work Op(x1) may be "grasping" the work object Ob
- the work Op(x2) may be the work object Ob
- the work Op(x3) may be "painting" of the object Ob
- the work Op(x3) may be "carrying" the work object Ob.
- Factory Fa includes one or more workplaces Ar(1), Ar(2), Ar(3), . . . Ar(n).
- a workplace Ar is also called a "cell", ie a factory Fa contains one or more cells.
- One or more work objects Ob which are objects of work Op performed by the worker Hu, are arranged in the work place Ar.
- Ob(x3), . . . , Ob(xn) are arranged.
- the work object Ob is an entity other than the worker Hu, for example, a so-called "work", or, for example, a tool used by the worker Hu to perform the work Op.
- workers Hu(1), Hu(2), Hu(3), (n) there are one or more workers Hu who execute the work Op included in the work process Pr.
- the worker Hu may be identified by, for example, a worker ID attached to the top of the cap worn by the worker Hu.
- worker Hu(1) and worker Hu(2) in factory Fa are identified by worker ID(1) attached to the cap worn by worker Hu(1) and worker Hu(2).
- Each may be identified by the worker ID (2) attached to the cap worn by (2).
- a certain worker Hu(1) may be regarded as a work object Ob for another worker Hu(2).
- Factory Fa comprises one or more pieces of equipment 40(1), 40(2), 40(3), . . . 40(n).
- Equipment 40 includes an input device 41 such as a sensor and an output device 42 such as an actuator.
- the output device 42 is a device whose output is controlled by the PLC 20.
- the worker Hu may use the output of the output device 42 when performing the work Op. Specifically, the worker Hu uses the action Ac executed by the output device 42 to perform the work Op. you can go That is, the worker Hu may use the output device 42 as a tool when performing the work Op. In other words, the output device 42 is used by the worker Hu when the worker Hu performs the work Op. It can be a tool. For example, when the worker Hu performs the work Op(x) included in the work process Pr(x), the output device 42(x) may be used. The operator Hu may perform the operation Op(x) using the operation Ac(x) performed by .
- the input device 41 is a sensor that detects at least one state of a tool used in the work Op (for example, the output device 42 and a tool 90 other than the output device 42 to be described later), the work object Ob, and the work place Ar ( detection device).
- the input device 41 can be used for power consumption of a tool, grasping of the tool/work object Ob by the worker Hu, pressing of a button provided by the tool/workplace Ar/workpiece Ob, etc. by the worker Hu, ⁇ Detect opening and closing of an opening/closing mechanism provided on the work object Ob and the like.
- the input device 41 is, for example, a current detection sensor, and the input device 41 is used when the worker Hu performs "work Op(x): screw tightening work". Current may be sensed.
- the input device 41 may be, for example, a gripping sensor, and may detect that the operator Hu has gripped the "instrument 90(x): electric screwdriver".
- the input device 41 is, for example, a start/end button, and may detect pressing by the operator Hu.
- the input device 41 is, for example, a photoelectric sensor, and may detect opening and closing of an opening/closing mechanism included in the tool, work area Ar, work object Ob, and the like.
- the input device 41 periodically outputs information indicating the detected state (hereinafter also referred to as “detection information Id") to the PLC 20 via the control network 50.
- the input device 41 includes "the time (detection time Td) at which at least one state of the tool used in the work Op, the work object Ob, and the work place Ar is detected” in the detection information Id, and outputs the information to the PLC 20. Output periodically.
- equipment 40 when it is necessary to distinguish each of the plurality of equipment 40, the symbols “(1)”, “(2)”, “(3)”, ..., “(n)”, etc. and are simply referred to as “equipment 40” when there is no particular need to distinguish between them.
- the symbols “(1)”, “(2)”, “(3)”, ..., “ (n)” and the like when it is necessary to distinguish between the plurality of input devices 41, the symbols “(1)”, “(2)”, “(3)”, ..., “ (n)” and the like, and are simply referred to as “input device 41” when there is no particular need to distinguish them.
- output devices 42 when it is necessary to distinguish between the plurality of output devices 42, the symbols “(1)”, “(2)”, “(3)”, . . . , “( n)” or the like to distinguish them, and when there is no particular need to distinguish them, they are simply referred to as “output devices 42”.
- action Ac when it is necessary to distinguish between a plurality of actions Ac, the symbols "(1)”, “(2)”, “(3)”, . . . , “(n)” , etc., and are simply referred to as "action Ac" when there is no particular need to distinguish between them.
- the factory Fa may be provided with fixtures 90 (not shown) other than the output device 42.
- the worker Hu may use the tool 90 when performing the work Op. Specifically, the worker Hu may use the action Ac performed by the tool 90 to perform the work Op. For example, when the worker Hu performs the work Op(x) included in the work process Pr(x), the tool 90(x) may be used.
- the operator Hu may perform the operation Op(x) using the operation Ac(x). For example, the worker Hu uses the “operation Ac(x): rotating operation” executed by the “instrument 90(x): electric screwdriver” to perform “operation Op(x): screw tightening operation”. you can go
- the state of the instrument 90 (for example, the state of being used by the worker Hu) is detected by the input device 41, and the input device 41 transmits the detected "state of the instrument 90" to the control network 50. periodically output to the PLC 20 via. That is, when the input device 41 detects the "state of the instrument 90", the input device 41 generates detection information Id including the detected "state of the instrument 90" and the time (detection time Td) at which the "state of the instrument 90" is detected. , to the PLC 20 periodically.
- the workplace image Ic is a captured image of the workplace Ar, and each of the plurality of workplace images Ic is a captured image of each of the plurality of workplaces Ar.
- the work place image Ic is a captured image of the worker Hu who is performing the work Op in the work place Ar from the front, and the work place image Ic is a captured image generated for each work place Ar.
- a plurality of workplace images Ic may be distinguished by the workplace Ar captured in each.
- each of the plurality of workplace images Ic may be distinguished by associating each of the plurality of workplace images Ic with the workplace Ar captured in each workplace image Ic.
- the workplace image Ic obtained by imaging the workplace Ar(1) may be described as the workplace image Ic(1)
- the workplace image Ic obtained by imaging the workplace Ar(2) may be described as the workplace image Ic(2)
- the workplace image Ic obtained by imaging the workplace Ar(n) may be described as the workplace image Ic(n).
- a plurality of workplace images Ic are simply referred to as "workplace images Ic" when there is no need to distinguish between the plurality of workplace images Ic by the workplace Ar captured in each.
- the workplace image Ic is a captured image of each workplace Ar
- the overall image Ia is a captured image in which a plurality of workplaces Ar are captured. is a captured image.
- control system 1 including the information processing device 10 will be described below with reference to FIG.
- FIG. 2 is a diagram showing an overall overview of the control system 1 and the like including the information processing device 10. As shown in FIG. In the environment described so far, the information processing device 10 highly accurately estimates the content of the work Op performed by the worker Hu captured in the workplace image Ic from the workplace image Ic that captures the workplace Ar.
- the cell camera 30 is installed in the workplace Ar (that is, the cell) and generates a workplace image Ic.
- a cell camera 30 is installed for each workplace Ar, and each of the plurality of cell cameras 30 is installed at a position where it is possible to capture an image of a worker Hu who is performing a work Op in the workplace Ar from substantially the front for each workplace Ar. be.
- the cell camera 30 outputs the generated workplace image Ic to the information processing device 10, and in particular, outputs the workplace image Ic to the information processing device 10 together with the imaging time Tp that is the time when the workplace Ar is imaged.
- each of the plurality of cell cameras 30 is associated with the work area Ar in which each cell camera 30 is installed. 30 may be distinguished.
- the cell camera 30 installed at work place Ar(1) is described as cell camera 30(1)
- the cell camera 30 installed at work place Ar(2) is described as cell camera 30(2). good too.
- the cell camera 30 installed in the workplace Ar(n) may be referred to as cell camera 30(n).
- the ceiling camera 80 is installed, for example, on the ceiling of the factory Fa, and generates an overall image Ia that obliquely looks down on a plurality of workplaces Ar. Generate. However, it is not essential that one ceiling camera 80 is installed on the ceiling of the factory Fa, and each of the plurality of ceiling cameras 80 installed on the ceiling of the factory Fa captures a plurality of workplaces Ar in the factory Fa. A full image Ia may be generated. In other words, the ceiling camera 80 only needs to be able to generate an overall image Ia of a plurality of workplaces Ar.
- one ceiling camera 80 which is a wide-area imaging camera, is installed on the ceiling of the factory Fa, and the one ceiling camera 80 generates an overall image Ia of the entire factory Fa.
- the ceiling camera 80 outputs the generated overall image Ia to the information processing device 10, and in particular, together with the overall time Ta that is the time when the entire factory Fa was captured (that is, the time when the overall image Ia was generated)
- the image Ia is output to the information processing device 10 .
- the information processing device 10 is included in the control system 1 and is communicably connected to the cell camera 30 via, for example, a USB (Universal Serial Bus) cable.
- the information processing apparatus 10 acquires a workplace image Ic of the workplace Ar from the cell camera 30, performs image analysis on the acquired workplace image Ic, and determines whether the worker Hu captured in the workplace image Ic is working.
- the content of the work Op performed on the object Ob is predicted.
- the information processing apparatus 10 uses a HOI (Human Object Interaction) detection algorithm to extract from the workplace image Ic "the details of the work Op performed by the worker Hu captured in the workplace image Ic with respect to the work object Ob". Predict.
- HOI Human Object Interaction
- the information processing apparatus 10 acquires the workplace image Ic and the imaging time Tp, which is the time when the workplace image Ic was generated, from the cell camera 30, and predicts the following from the acquired workplace image Ic and the imaging time Tp: to run. That is, the information processing apparatus 10 predicts "the details of the work Op that the worker Hu imaged in the workplace image Ic is performing on the work object Ob in the workplace Ar at the imaging time Tp".
- the "contents of the work Op performed by the worker Hu on the work object Ob" predicted from the workplace image Ic is particularly described as "at the imaging time Tp, the worker Hu is doing on the work object Ob in the workplace Ar.
- the content of the work Op that is being performed” is also referred to as the first prediction Pf.
- the information processing apparatus 10 performs image analysis on a workplace image Ic(x) that is an image of the workplace Ar(x). ), the content of the operation Op(x) being performed is predicted.
- the information processing apparatus 10 determines from the workplace image Ic(x) that "at the imaging time Tp at which the workplace image Ic(x) was captured, the worker Hu(x) was the work object Ob in the workplace Ar(x).
- the content of the work Op(x) performed for (x) is predicted.
- Predicted from the workplace image Ic(x) "at the imaging time Tp at which the workplace image Ic(x) was captured, the worker Hu(x) performed the work object Ob(x) in the workplace Ar(x).
- the content of the work Op(x) currently being executed may be particularly referred to as a "first prediction Pf(x)".
- the information processing device 10 is included in the control system 1 and is communicably connected to the ceiling camera 80 via, for example, a USB (Universal Serial Bus) cable.
- the information processing device 10 acquires an overall image Ia of the entire factory Fa from the ceiling camera 80, performs image analysis on the acquired overall image Ia, and determines whether the worker Hu is in the workplace Ar. Predict what The information processing apparatus 10 uses a flow line detection algorithm (object detection algorithm) such as YOLO, for example, from the overall image Ia to determine whether there is a worker Hu in the workplace Ar captured in the overall image Ia. Predict.
- object detection algorithm object detection algorithm
- the information processing apparatus 10 acquires the overall image Ia and the overall time Ta, which is the time when the overall image Ia was generated, from the ceiling camera 80, and from the acquired overall image Ia and the overall time Ta, the following predictions are made: to run. That is, the information processing apparatus 10 predicts "whether the worker Hu is in the workplace Ar (in particular, the workplace Ar captured in the workplace image Ic) at the overall time Ta".
- the information processing apparatus 10 predicts "whether or not the worker Hu is present in the workplace Ar (in particular, the workplace Ar captured in the workplace image Ic) at the overall time Ta corresponding to the imaging time Tp". can be done.
- the presence or absence of the worker Hu in the workplace Ar predicted from the overall image Ia, in particular, the prediction of the presence or absence of the worker Hu in the workplace Ar at the overall time Ta corresponding to the imaging time Tp. Also referred to as predicted Pa.
- the information processing device 10 detects "whether there is a worker Hu(x) in the workplace Ar(x) imaged in the workplace image Ic(x) generated by the cell camera 30(x).” is predicted by image analysis for the entire image Ia generated by .
- the information processing apparatus 10 determines from the overall image Ia that, at the overall time Ta corresponding to "the imaging time Tp at which the workplace image Ic(x) was captured", the worker Hu(x) Predict whether you will stay in Prediction of "Whether worker Hu(x) is in workplace Ar(x) at overall time Ta corresponding to 'imaging time Tp at which workplace image Ic(x) was captured'” predicted from overall image Ia is particularly referred to as "presence/absence prediction Pa(x)".
- the information processing apparatus 10 acquires, from a PLC (Programmable Logic Controller) 20, process information Ip generated from an operation result La indicating the content and result of the operation Ac executed by the device 40 whose operation Ac is controlled by the PLC 20. do.
- process information Ip for example, at least one of “the time when the device 40 performed the action Ac” and “the time when the input device 41 or the like detected the execution of the action Ac by the device 40” is the detection time Td. included as
- the information processing apparatus 10 uses the process information Ip acquired from the PLC 20 to grasp the state of the output device 42 (for example, the operation state including the contents and results of the operation Ac), and from the grasped state, the worker Hu determines the output device 42 is used to predict the contents of the work Op being performed.
- the information processing apparatus 10 grasps "the state of the output device 42 at the 'detection time Td corresponding to the imaging time Tp'" from the process information Ip including the detection time Td.
- the information processing apparatus 10 changes the status of the output device 42 at 'detection time Td corresponding to the imaging time Tp' to the grasped 'state of the output device 42 at 'detection time Td corresponding to the imaging time Tp'.
- the content of the work Op performed using the device 42 is predicted.
- the PLC 20 may grasp the state of the output device 42 from the output of the equipment 40, etc., and predict the content of the work Op performed by the worker Hu using the output device 42 from the grasped state. Then, the PLC 20 may output the process information Ip including the content of the predicted work Op to the information processing device 10 . That is, it may be the PLC 20 or the information processing apparatus 10 that predicts the content of the work Op performed by the worker Hu using the output device 42 from the state of the output device 42 .
- the information processing apparatus 10 only needs to be able to acquire or generate “the details of the work Op performed by the worker Hu using the output device 42 ” predicted from the state of the output device 42 .
- the process information Ip is information indicating the state of the output device 42 and the like generated from “the output of the device 40 controlled by the PLC 20 and the control details of the output device 42 by the PLC 20". Therefore, the PLC 20 can also be regarded as a detection device that detects the state of the output device 42 from "the output of the output device 42 obtained as feedback from the output device 42 and the control details for the output device 42". Further, the process information Ip is "detection information" which is information indicating "at least one state of the tools (eg, the output device 42 and the instrument 90), the work object Ob, and the workplace Ar used in the work Op". It can also be regarded as a kind of "Id”.
- the information processing apparatus 10 receives from the PLC 20 the "at least one of the tools (for example, the output device 42 and the instrument 90) used for the work Op, the work object Ob, and the work place Ar detected by the input device 41. Acquire the detection information Id indicating "one state”.
- the information processing apparatus 10 may acquire the detection information Id indicating the state detected by the input device 41 directly from the input device 41 without going through the PLC 20 .
- the detection information Id includes the detection time Td, which is the time when the input device 41 detects "at least one state of the tool used in the work Op, the work object Ob, and the work place Ar".
- the information processing apparatus 10 uses the detection information Id acquired from the PLC 20 to grasp the state of at least one of the tool used in the work Op, the work object Ob, and the work place Ar, and from the grasped state, the operator Hu performs. Predict the content of the work Op that is being performed.
- the state of at least one of the tool, the work object Ob, and the workplace Ar is grasped, and the content of the work Op performed by the worker Hu is predicted from the grasped state. It may be the PLC 20 that does. Then, the PLC 20 may output the process information Ip including the content of the predicted work Op to the information processing device 10 . That is, it is the PLC 20 or the information processing device 10 that predicts the contents of the work Op performed by the worker Hu from at least one state of the tool, the work object Ob, and the workplace Ar. good.
- the information processing apparatus 10 only needs to be able to acquire or generate the "contents of the work Op performed by the worker Hu" predicted from at least one state of the tool, work object Ob, and workplace Ar.
- the information processing apparatus 10 acquires the detection information Id (including the process information Ip) indicating "at least one state of the tool used in the operation Op, the work object Ob, and the work place Ar" acquired from the PLC 20. do.
- the information processing apparatus 10 predicts “the content of the work Op performed by the worker Hu” from the acquired detection information Id, and particularly, “at the “detection time Td corresponding to the imaging time Tp”, the worker Hu The content of the work Op being performed” is predicted.
- the information processing apparatus 10 acquires from the PLC 20 the “contents of the work Op performed by the worker Hu” predicted by the PLC 20 from the detection information Id, together with the detection information Id or instead of the detection information Id. good too.
- the information processing apparatus 10 along with the detection information Id, or instead of the detection information Id, "contents of the work Op performed by the worker Hu at 'detection time Td corresponding to the imaging time Tp'" You may acquire from PLC20.
- the information processing apparatus 10 detects the contents of the work Op(x) performed by the worker Hu(x) in the workplace Ar(x), including detection information Id(x) (including process information Ip(x) below). ).
- the information processing apparatus 10 "at least one state of the tools provided in the workplace Ar(x), the work object Ob(x) arranged in the workplace Ar(x), and the workplace Ar(x).
- the content of the task Op(x) is predicted from the detection information Id(x) indicating ".
- a tool for example, at least one of the output device 42(x) and the instrument 90(x) provided in the workplace Ar(x)" is used when the worker Hu(x) performs the work Op(x).
- the information processing apparatus 10 determines from the process information Ip(x) that "at the 'detection time Td corresponding to the image capturing time Tp', the worker Hu(x) detects the work object Ob(x) at the workplace Ar(x). ), the content of the work Op(x) performed for ) is predicted. of the work Op(x) performed by the worker Hu(x) at the "detection time Td corresponding to the imaging time Tp" predicted from the detection information Id(x) (including the process information Ip(x)). content” may be referred to as "work prediction Po(x)".
- the information processing apparatus 10 verifies "the content of the work Op performed by the worker Hu on the work object Ob" predicted from the workplace image Ic using at least one of the following two predictions. That is, the information processing apparatus 10 predicts the content predicted from the workplace image Ic, the prediction of "presence or absence of worker Hu” predicted from the entire image Ia, and the prediction of "worker Hu is doing” predicted from the detection information Id. It verifies using at least one of "the content of the work Op". That is, the information processing apparatus 10 verifies whether or not the first prediction Pf is correct using at least one of the presence/absence prediction Pa and the work prediction Po. ) and/or the work prediction Po(x).
- the first prediction Pf(x) is the work performed by the worker Hu(x) on the work object Ob(x) at the work place Ar(x), which is predicted by the information processing device 10 from the work place image Ic(x).
- the content of Op(x)” is predicted.
- the "first prediction Pf(x)" is, for example, predicted from the workplace image Ic(x). The contents of the work Op(x) performed on the work object Ob(x) at (x)".
- Presence/absence prediction Pa(x) is a prediction of "whether or not worker Hu exists in workplace Ar(x)" predicted by information processing apparatus 10 from entire image Ia.
- Presence/absence prediction Pa(x) is, for example, predicted from overall image Ia when worker Hu(x) is in the workplace at overall time Ta corresponding to ⁇ imaging time Tp at which workplace image Ic(x) was captured. Are you at Ar(x)?"
- the work prediction Po(x) is a prediction of "the details of the work Op(x) performed by the worker Hu(x) at the workplace Ar(x)" predicted by the information processing apparatus 10 from the detection information Id(x). is.
- the work prediction Po(x) is, for example, "at the detection time Td corresponding to the imaging time Tp" predicted from the detection information Id(x). The content of the operation Op(x) that is present”.
- the information processing device 10 (particularly, the determination unit 150 to be described later) predicts, in the presence/absence prediction Pa(x), that ⁇ the worker Hu is present in the workplace Ar(x)'', the ⁇ first prediction Pf(x) is correct.” More specifically, the information processing apparatus 10 predicts that the worker Hu(x) is in the workplace Ar(x) at 'the total time Ta corresponding to the imaging time Tp' as the presence/absence prediction Pa(x). If it is predicted, it is determined that "the first prediction Pf(x) is correct". Then, the information processing device 10 (in particular, the estimation unit 160 described later) outputs the first prediction Pf(x) determined to be correct by the determination unit 150 to the outside as an estimation result.
- the information processing device 10 determines, One prediction Pf(x) is correct.” More specifically, the information processing apparatus 10 calculates "contents of work Op(x) at 'detection time Td corresponding to imaging time Tp'" in presence/absence prediction Pa(x), first prediction Pf(x) is matched with the "contents of the work Op(x) at the imaging time Tp".
- the information processing apparatus 10 determines that "the first prediction Pf(x) is correct.” Then, the information processing device 10 (in particular, the estimation unit 160 described later) outputs the first prediction Pf(x) determined to be correct by the determination unit 150 to the outside as an estimation result.
- the information processing apparatus 10 determines the work prediction Po(x ) matches the first prediction Pf(x). More specifically, the information processing apparatus 10 predicts that the worker Hu(x) is in the workplace Ar(x) at 'the total time Ta corresponding to the imaging time Tp' as the presence/absence prediction Pa(x). If so, confirm agreement between the work prediction Po(x) and the first prediction Pf(x).
- the information processing apparatus 10 calculates “contents of the work Op(x) at the detection time Td corresponding to the imaging time Tp” in the presence/absence prediction Pa(x) and “work at the imaging time Tp in the first prediction Pf(x). Op(x) content", it is determined that the first prediction Pf(x) is correct. Then, the information processing device 10 (in particular, the estimation unit 160 described later) outputs the first prediction Pf(x) determined to be correct by the determination unit 150 to the outside as an estimation result.
- the equipment 40 used for carrying out the work process Pr in the factory Fa is controlled by the PLC 20 as a line controller. That is, the control system 1 is constructed as a master-slave control system in which the PLC 20 is a master and each of the plurality of devices 40 is a slave, and each of the plurality of devices 40 can communicate with the PLC 20 via a network (control network 50). It is connected to the. PLC 20 is called a “master” in the sense that it manages data transmission over control network 50 . "Master” and “slave” are defined by focusing on the control function of data transmission on the control network 50, and what kind of information is transmitted and received between each device is not particularly limited.
- the PLC 20 is a control device (controller) that controls the entire control system 1 and is communicatively connected to each of the plurality of devices 40 .
- the PLC 20 acquires information from each of the plurality of devices 40 as input devices 41 (measurement devices) as input data.
- PLC20 performs the arithmetic processing using the acquired input data according to the user program incorporated previously.
- the PLC 20 executes the arithmetic processing to determine the control details for the control system 1, and determines the control details for each of the plurality of devices 40 as output devices 42 such as actuators, for example. Then, the PLC 20 outputs control data corresponding to the determined control content to each of the plurality of devices 40 (in particular, the output device 42).
- the PLC 20 acquires input data from each of the plurality of devices 40 (specifically, the input device 41) and obtains control data from each of the plurality of devices 40 (specifically, the output device 42). is repeatedly executed at a predetermined cycle (control cycle).
- the PLC 20 may be connected to, for example, a display unit and an operation unit (not shown).
- the display section is composed of a liquid crystal panel or the like capable of displaying an image, and the operation section is typically composed of a touch panel, a keyboard, a mouse, or the like.
- the device 40 is a slave in the control system 1 as a master-slave control system with the PLC 20 as the master.
- the device 40 is an input device 41 that repeatedly transmits input data to the PLC 20 in each predetermined control cycle, or receives repeated control data from the PLC 20 in each predetermined control cycle and operates according to the received control data. It is the output device 42 .
- the device 40 (in particular, the input device 41) is, for example, a sensor that transmits detection results and the like to the PLC 20 as input data.
- the input device 41 may be a photoelectric sensor, a barcode reader that transmits read results, or an inspection machine (tester) that transmits inspection results.
- the device 40 (specifically, the output device 42) may be a robot or the like as an output device that executes screw tightening, picking, or the like, or may be various actuators.
- the device 40 may be a PT (Programmable Terminal) to which a plurality of input devices 41 are connected.
- PT Programmable Terminal
- the control network 50 transmits various data received by the PLC 20 or transmitted by the PLC 20.
- various industrial Ethernet registered trademark
- Industrial Ethernet includes, for example, EtherCAT (registered trademark), Profinet IRT, MECHATROLINK (registered trademark)-III, Powerlink, SERCOS (registered trademark)-III, and CIP Motion. You can use any one of them.
- a field network other than Industrial Ethernet may be used. For example, if motion control is not performed, DeviceNet, CompoNet/IP (registered trademark), etc. may be used.
- control system 1 in which data is transmitted and received between the PLC 20 (master) and the device 40 (slave) by sequentially transferring data frames over the control network 50 will be described. That is, data frames are sequentially transferred on the control network 50 in a predetermined control cycle, so that data is repeatedly transmitted and received between the PLC 20 and the device 40 in each control cycle. By sequentially transferring data frames on the control network 50, data may be transmitted and received between multiple devices 40, that is, between multiple slaves.
- the information processing device 10 is included in the control system 1 , but the information processing device 10 does not have to be a slave in the control system 1 .
- the PLC 20 as the master repeatedly receives the operation result La and the detection information Id from the device 40 as the slave, for example, at predetermined control cycles.
- the PLC 20 which is the master, repeatedly receives the operation result La from the device 40, which is the slave, at predetermined control cycles, for example.
- the action result La is information indicating "the content and result of the action Ac executed by the device 40". That is, the device 40 repeats, at a predetermined cycle, an action result La indicating the content and result of the action Ac that was actually executed when performing the work process Pr, and transmits the action result La to the PLC 20 .
- the device 40(x) repeats the action result La(x) indicating the content and result of the action Ac(x) executed when the work process Pr(x) is performed at the control cycle, and transmits it to the PLC 20. do.
- the PLC 20 acquires, for example, the measurement result, which is the result of the measurement operation performed by the device 40 as the input device 41 (measurement device), as the operation result La of the device 40 .
- the PLC 20 displays the result of the inspection operation performed by the device 40, for example, the inspection result such as "the inspection standard was met or not met", and the operation result of the device 40. Obtained as La.
- the PLC 20 acquires, for example, the result of the output operation performed by the device 40 as the output device 42 as the operation result La of the device 40 . If the device 40 is a robot that performs screw tightening, picking, etc., the PLC 20 acquires operation results La such as screw tightening times and picking results (picking success or picking error) as the operation results La of the device 40 .
- the PLC 20 repeatedly receives from the device 40, at predetermined intervals, an action result La indicating the content and result of the action Ac actually executed by the device 40 in performing the work process Pr, and stores the received action result La as process information Ip. is transmitted to the information processing apparatus 10, that is, transferred. In addition, the PLC 20 transmits information generated using the operation result La repeatedly received from the device 40 at a predetermined cycle to the information processing apparatus 10 as the process information Ip.
- the PLC 20 may transmit the operation result La repeatedly received from the device 40 at a predetermined cycle to the outside of the control system 1 as the process information Ip.
- the PLC 20 receives the operation result La repeatedly from the device 40 at a predetermined cycle as the process information Ip, which is connected to an MES (Manufacturing Execution System) or the like, shown in FIG. Network).
- MES Manufacturing Execution System
- the information processing apparatus 10 identifies the operation start time Tms, the operation completion time Tme, and the operation period Da of the operation Ac executed by the equipment 40 when performing the work process Pr from the process information Ip (operation result La) acquired from the PLC 20. . Then, the information processing apparatus 10 performs various determinations on the action Ac using the specified action start time Tms, action completion time Tme, action period Da, and predetermined action reference Sa corresponding to the action Ac.
- the PLC 20 may perform the above-described determination on the operation result La (particularly, the operation Ac) included in the process information Ip, and the PLC 20 includes the above-described determination result in the process information Ip, or It may be transmitted to the information processing device 10 instead of the process information Ip.
- the action start time Tms is the point in time when the equipment 40 used in the work process Pr starts executing the action Ac in performing the work process Pr
- the action completion time Tme is the time when the action Ac is performed. It is the point at which the execution is completed.
- the operation period Da is a period from the operation start time Tms to the operation completion time Tme.
- the process information Ip can also be regarded as information indicating "the state of the tools (in particular, the output device 42) used in the work Op".
- the process information Ip can also be regarded as information indicating, for example, "the state of the tool (in particular, the output device 42) used in the work Op at the 'detection time Td corresponding to the imaging time Tp'". Therefore, the process information Ip is a type of detection information Id indicating "at least one state of a tool (for example, the output device 42 and the instrument 90) used in the work Op, the work object Ob, and the work place Ar.” I can understand.
- the PLC 20 receives the detection information Id from the device 40 (particularly, the input device 41), which is a slave, repeatedly, for example, every predetermined control period.
- the detection information Id includes at least one of the “tools used in the work Op (for example, the output device 42 and instruments 90 other than the output device 42 described later), the work object Ob, and the work place Ar detected by the input device 41. It is information indicating "one state”. That is, the device 40 (particularly, the input device 41) repeats "at least one state of the tool used for the work Op by the worker Hu, the work object Ob, and the work place Ar" at a predetermined cycle, and sends to the PLC 20 and send.
- the detection information Id includes information indicating the time when the input device 41 detected "at least one state of the tool used in the operation Op, the work object Ob, and the workplace Ar" (that is, the detection time Td). .
- the PLC 20 receives information indicating the magnitude of current flowing from the device 40(y) as the input device 41(y) to the device 90(x) (such as the power consumption of the device 90(x)), and outputs the information to the device 90( Acquired as detection information Id(x) for x).
- the PLC 20 receives, for example, information indicating whether or not the instrument 90(x) has been gripped by the worker Hu from the device 40(y) as the input device 41(y) as detection information Id for the instrument 90(x). (x) is obtained.
- the PLC 20 receives the information indicating the opening/closing of the opening/closing mechanism of the work object Ob(x) from the device 40(y) as the input device 41(y). (x) is obtained.
- the PLC 20 transmits information indicating whether or not a button provided to the work object Ob(x) has been pressed from the device 40(y) as the input device 41(y) to the work object Ob(x). Acquired as detection information Id(x).
- the PLC 20 receives information indicating opening/closing of an opening/closing mechanism provided in the workplace Ar(x) from the device 40(y) as the input device 41(y) as detection information Id(x) for the workplace Ar(x). ,get.
- the PLC 20 receives information indicating whether or not a button provided in the workplace Ar(x) has been pressed from the device 40(y) as the input device 41(y) as detection information Id(x) for the workplace Ar(x). x).
- the PLC 20 repeatedly receives detection information Id from the input device 41 at a predetermined cycle, and transmits, that is, transfers the received detection information Id to the information processing apparatus 10 .
- the PLC 20 may transmit the detection information Id repeatedly received from the input device 41 at a predetermined cycle to the outside of the control system 1 in the same manner as the process information Ip.
- the PLC 20 transmits the detection information Id repeatedly received from the input device 41 at a predetermined cycle to the in-house LAN (Local Area Network) shown in FIG. may
- the information processing apparatus 10 determines "at least one state of the tool used for the work Op by the worker Hu, the work object Ob, and the work place Ar", and the state of the input device 41. detection time Td, which is the time when the is detected. Then, the information processing apparatus 10 determines the work at the detection time Td based on the specified detection time Td and "at least one state of the tool, the work object Ob, and the work place Ar used by the worker Hu in the work Op". The content of the work Op performed by the person Hu is predicted. That is, the information processing apparatus 10 predicts the content of the work Op performed by the worker Hu at the detection time Td from the detection information Id acquired from the PLC 20 .
- the PLC 20 may perform the process of predicting the content of the work Op performed by the worker Hu at the detection time Td from the detection information Id.
- the PLC 20 may include the prediction result in the detection information Id or may transmit it to the information processing apparatus 10 instead of the detection information Id.
- FIG. 2 shows an in-house LAN system, other network systems, etc. in addition to the control system 1 as a master-slave control system.
- the in-house LAN is connected to a process information DB (Database), which is also called MES.
- process information DB information indicating "standard actions to be performed by the equipment 40 used for carrying out the work process Pr" is stored as the action standard Sa.
- an event management device 60 that monitors and manages various events occurring in the factory Fa is connected to the process information DB as the MES via an in-house LAN.
- the event management device 60 it is not essential that the event management device 60 is connected to the process information DB via the in-house LAN, and the event management device 60 may not be provided.
- the PLC 20 is connected to the process information DB via the in-house LAN.
- the process information DB and the information processing device 10 may be connected.
- an ERP Enterprise Resources Planning
- WMS Warehouse Management System
- the like may be connected to the in-house LAN.
- the process information DB is connected to a video storage server and the like via "another network" different from the control network 50 and the in-house LAN.
- the information processing device 10 is connected to the video storage server or the like via another network, and the workplace image Ic and the overall image Ia transmitted from the information processing device 10, the contents of the work Op estimated by the information processing device 10,
- support information and the like are stored in a video storage server or the like.
- an external device 70 implemented by a PC (Personal Computer) or the like is connected to the moving image storage server or the like.
- the external device 70 displays, for example, the workplace image Ic, the overall image Ia, the content of the work Op estimated by the information processing device 10, support information, and the like, and visualizes the process information Ip and the like. That is, the external device 70 displays a list of information necessary for improving the work process Pr, and displays information indicating the bottleneck work process Pr, the date and time of an error that occurred in the work process Pr, and the like in the corresponding work place image. It is displayed in association with Ic.
- the cell camera 30 captures the workplace Ar to generate the workplace image Ic, and transmits the generated workplace image Ic to the information processing device 10 via a communication cable such as a USB (Universal Serial Bus) cable, for example.
- a communication cable such as a USB (Universal Serial Bus) cable, for example.
- the ceiling camera 80 captures a bird's-eye view of the entire factory Fa to generate an overall image Ia, and transmits the generated overall image Ia to the information processing apparatus 10 via a communication cable such as a USB cable, for example. Send.
- the information processing device 10 is realized by, for example, a PC or the like, and combines process information Ip acquired from the PLC 20 and a workplace image Ic acquired from the cell camera 30, and is a data extraction device that enables efficient use of both.
- the information processing apparatus 10 generates process information Ip including "operation results La indicating the contents and results of the actual operations Ac of the plurality of devices 40 in the factory Fa" based on the "workplace image Ic" and the "work estimated from the workplace image Ic".
- the work process Pr is visualized by combining with "Contents of Op".
- the information processing apparatus 10 visualizes the work process Pr by combining the process information Ip acquired from the PLC 20, the workplace image Ic acquired from the cell camera 30, and the content of the work Op estimated from the workplace image Ic. , to efficiently and precisely analyze the work process Pr.
- the information processing apparatus 10 extracts the work process Pr that is a bottleneck, and creates a workplace image Ic that captures the implementation status of the extracted work process Pr, and the extracted work process Pr. is combined with the process information Ip of Therefore, for example, the user can easily identify the cause of the bottleneck and the cause of the defect in the work process Pr that is a bottleneck, and can efficiently perform the improvement work of the work process Pr. become able to.
- the information processing apparatus 10 can also be used for traceability when a defect occurs.
- the information processing apparatus 10 combines the workplace image Ic and the process information Ip of each of the plurality of devices 40, thereby improving the analysis accuracy of both the analysis of the workplace image Ic and the analysis of the process information Ip. can be done.
- the information processing apparatus 10 uses the process information Ip (operation result La) acquired from the PLC 20 to specify the operation start time Tms at which the device 40 started the operation Ac and the operation completion time Tme at which the operation Ac was completed. do.
- the information processing apparatus 10 analyzes the workplace image Ic captured during the operation period Da, which is the period from the operation start time Tms to the operation completion time Tme.
- the work Op of the person Hu can be associated with high accuracy.
- the information processing device 10 acquires from the process information DB an action standard Sa indicating "a standard action that should be performed by the device 40 used to carry out the work process Pr". Then, the information processing apparatus 10 uses the acquired action standard Sa to perform a determination on the "actual action Ac performed by the device 40 used to perform the work process Pr". The information processing apparatus 10 may analyze the workplace image Ic that captures the implementation status of the work process Pr corresponding to the action Ac determined to be different from the standard action indicated by the action standard Sa.
- the information processing device 10 analyzes the workplace image Ic and predicts the content of the work Op performed by the worker Hu on the work object Ob.
- the information processing apparatus 10 detects, from the workplace image Ic(x) obtained by imaging the workplace Ar(x), "At the imaging time Tp at which the workplace image Ic(x) was imaged, the worker Hu(x)
- the content of the work Op(x) performed on the work object Ob(x) at (x) is predicted.
- the work Op performed by the worker Hu in the workplace Ar is generally the work Op performed on the work object Ob. Therefore, the work Op can be regarded as an interaction between the worker Hu and the work object Ob for a combination (pair) of the worker Hu and the work object Ob.
- HOI Human Object Interaction
- the information processing device 10 can use the HOI detection algorithm to estimate the content of the work Op performed by the worker Hu on the work object Ob. That is, the information processing apparatus 10 converts the content of the work Op performed by the worker Hu on the work object Ob to the HOI for the "pair of the worker Hu and the work object Ob" captured in the workplace image Ic. can be predicted using a HOI detection algorithm that detects .
- the accuracy of prediction using the HOI detection algorithm is sufficiently high. That is, from the workplace image Ic, the prediction accuracy of the HOI detection algorithm that predicts the content of the work Op performed by the worker Hu captured in the workplace image Ic with respect to the work object Ob captured in the workplace image Ic is , not high enough. In particular, it is known that when the following phenomenon occurs in the workplace image Ic, the accuracy of HOI detection for that workplace image Ic generally tends to decrease.
- the accuracy of HOI detection for the workplace image Ic in which the work object Ob is imaged at an angle, size, etc. that is not normally imaged, generally tends to decrease.
- the angle (rotation), size, etc. of the work object Ob imaged in the workplace image Ic are of a rare type, it is known that the accuracy of HOI detection for that workplace image Ic generally tends to decrease.
- the information processing apparatus 10 uses a bounding box to place the worker Hu and the work object Ob into the work place image Ic An example of detecting from will be described. However, it is not essential for the information processing device 10 to use the bounding box to detect the worker Hu and the work object Ob.
- the information processing device 10 may use "Mask R-CNN" to perform a classification task (segmentation) of the worker Hu and the work object Ob for the workplace image Ic. Further, the information processing apparatus 10 may detect the worker Hu and the work object Ob from the workplace image Ic by using the Attention mechanism used in deep learning at the same time as "Mask R-CNN". The information processing apparatus 10 may improve the prediction accuracy of HOI detection using "Mask R-CNN", the Attention mechanism, or the like.
- the information processing apparatus 10 converts the contents of the HOI (that is, the work Op) predicted using the HOI detection algorithm (that is, the first prediction Pf(x)) into the presence/absence prediction Pa(x) and the work prediction Po(x). ) to verify using at least one of
- the information processing apparatus 10 uses the HOI detection algorithm in combination with the "flow line detection algorithm such as YOLO" and the "detection information Id from the input device 41 or the like", so that the estimation of the "work Op content” is robust. improve accuracy and estimation accuracy. That is, the information processing apparatus 10 uses at least one of the presence/absence prediction Pa by the flow line detection algorithm and the work prediction Po predicted from the detection information Id as a noise filter for the first prediction Pf (HOI detection result) by the HOI detection algorithm. use.
- the information processing device 10 is a work estimation device that estimates the "contents of the work Op" using at least one of the “flow line detection algorithm” and the “detection information Id from the input device 41 or the like” in addition to the HOI detection algorithm. is.
- the work prediction model 171 as a learned model used in the HOI detection algorithm is, for example, a set of teacher data Dt1 labeled below for the workplace image Ic or its feature information (learning data set DS1). Is built by learning. That is, a set of teacher data Dt1 labeled with "contents of the work Op performed by the worker Hu imaged in the workplace image Ic on the work object Ob imaged in the workplace image Ic" is used.
- the work prediction model 171 is constructed through machine learning.
- the “label” attached to the workplace image Ic or its feature information in the training data Dt1 is also called “annotation” or “metadata”.
- the “contents of the work Op performed by the worker Hu imaged in the workplace image Ic on the work object Ob imaged in the workplace image Ic” attached as a label is the detection information Id is the work prediction Po predicted from That is, supervised learning for a set of teacher data Dt1 in which ⁇ the content of the work Op performed by the worker Hu'' predicted from the detection information Id is attached as a label to the workplace image Ic or its feature information.
- the work prediction model 171 is constructed by
- the "content of the work Op performed by the worker Hu” predicted from the detection information Id is used as a "label" attached to the workplace image Ic or its feature information.
- the cost (annotation cost) required to generate a large amount of teaching data Dt1 can be suppressed, that is, the cost required for constructing the task prediction model 171 can be suppressed. Therefore, the information processing apparatus 10 can realize highly accurate and robust estimation of the “contents of the work Op” using the work prediction model 171 constructed at low cost.
- the information processing device 10 is a work estimation device that estimates the content of the work Op performed by the worker Hu in the workplace Ar, and includes a first prediction unit 120 (prediction unit), a determination unit 150, and an estimation unit 160 and.
- the first prediction unit 120 uses the work site image Ic or the feature information generated from the work site image Ic to determine the work Op performed by the worker Hu on the work object Ob. Predict "content”.
- the work prediction model 171 is a trained model that receives as input "the workplace image Ic that captures the workplace Ar" or "feature information generated from the workplace image Ic" and outputs the following information. That is, the work prediction model 171 is a learned model that outputs "the details of the work Op performed by the worker Hu imaged in the workplace image Ic on the work object Ob imaged in the workplace image Ic". is.
- the determination unit 150 determines the first It determines whether the prediction by the one prediction unit 120 is correct. That is, the determination unit 150 uses at least one of the work prediction Po and the presence/absence prediction Pa to determine whether the first prediction Pf is correct.
- the estimation unit 160 changes the content of the work Op predicted by the first prediction unit 120 to "Worker Hu is doing at work place Ar. Contents of the work Op". That is, when it is verified that the first prediction Pf is correct using at least one of the work prediction Po and the presence/absence prediction Pa, the estimating unit 160 sets the first prediction Pf to "Worker Hu is doing in work place Ar. It is output as an estimation result for "the content of the work Op".
- the information processing apparatus 10 uses at least one of the following two predictions to determine whether the content of the work Op predicted using the work prediction model 171 (that is, the first prediction Pf) is correct. do. That is, the information processing apparatus 10 predicts at least one of the content of the work Op predicted without using the work prediction model 171 (work prediction Po) and the determination result of the presence or absence of the worker Hu in the workplace Ar (presence prediction Pa). is used to determine whether the first prediction Pf is correct.
- the information processing apparatus 10 determines that the prediction using the work prediction model 171 is correct, the information processing apparatus 10 changes the content of the work Op predicted using the work prediction model 171 to "the work Op performed by the worker Hu in the work place Ar. It is assumed that the contents of
- the information processing apparatus 10 determines whether the content of the work Op predicted using the work prediction model 171 is correct or not, the content of the work Op predicted without using the work prediction model 171, and the worker Hu in the work place Ar. Verification is performed using at least one of the determination results of existence or non-existence.
- the information processing apparatus 10 has the effect of being able to accurately estimate "the details of the work Op performed by the worker Hu in the workplace Ar" from the workplace image Ic.
- the information processing apparatus 10 further includes a work prediction unit 142 (work detection unit) that predicts "the details of the work Op performed by the worker Hu in the workplace Ar" from the detection information Id.
- the detection information Id is information indicating "at least one state of the tool used in the work Op, the work object Ob, and the work place Ar" detected by the input device 41 (sensor).
- the determination unit 150 determines that the content of the work Op predicted by the first prediction unit 120 (that is, the first prediction Pf) matches the content of the work Op that is predicted by the work prediction unit 142 (that is, the work prediction Po). Then, it is determined that the prediction of the first prediction unit 120 is correct.
- the information processing apparatus 10 determines whether or not the content of the work Op predicted from the detection information Id of the input device 41 matches the content of the work Op predicted using the work prediction model 171. judge. When the information processing apparatus 10 determines that the two match, the information processing apparatus 10 estimates that the content of the work Op predicted using the work prediction model 171 is "the content of the work Op performed by the worker Hu in the work place Ar". do.
- the information processing apparatus 10 verifies whether the content of the work Op predicted using the work prediction model 171 is correct or not based on the content of the work Op predicted from the detection information Id of the input device 41 .
- the information processing apparatus 10 has the effect of being able to accurately estimate "the details of the work Op performed by the worker Hu in the workplace Ar" from the workplace image Ic.
- the information processing apparatus 10 further includes a presence/absence prediction unit 141, and when the presence/absence prediction unit 141 predicts that "the worker Hu is present in the workplace Ar," the determination unit 150 determines that the prediction of the first prediction unit 120 is correct. I judge.
- the presence/absence prediction unit 141 uses the presence/absence model 172 to determine, from the overall image Ia, the workplace image Ic, or the feature information generated from the overall image Ia or the workplace image Ic, "worker Hu exists in workplace Ar. Whether or not” is predicted.
- the presence/absence model 172 is a trained model, and its input is (A) an entire image Ia captured of a plurality of workplaces Ar including the workplace Ar, or (B) an entire workplace image Ic, or (C) an entire image Ia. Alternatively, it is feature information generated from the workplace image Ic.
- the output of the presence/absence model 172 is information indicating "whether or not the worker Hu exists in the workplace Ar".
- the information processing apparatus 10 uses the presence/absence model 172 to predict "whether or not the worker Hu is present in the workplace Ar".
- the content of the work Op predicted using the work prediction model 171 is changed to "the work performed by the worker Hu in the workplace Ar". Contents of Op".
- the information processing apparatus 10 verifies the correctness of the content of the work Op predicted using the work prediction model 171 by "the presence or absence of the worker Hu in the work area Ar" predicted using the presence/absence model 172.
- the information processing apparatus 10 has the effect of being able to accurately estimate "the details of the work Op performed by the worker Hu in the workplace Ar" from the workplace image Ic.
- the information processing device 10 may include both the work prediction unit 142 and the presence/absence prediction unit 141 . If the presence/absence prediction unit 141 predicts that the worker Hu is present in the workplace Ar and the following conditions are satisfied, the determination unit 150 determines that the prediction of the first prediction unit 120 is correct. That is, when the content of the work Op predicted by the first prediction unit 120 and the content of the work Op predicted by the work prediction unit 142 match, the determination unit 150 determines that the prediction of the first prediction unit 120 is correct. do.
- the information processing apparatus 10 predicts the content of the work Op predicted from the detection information Id of the input device 41 and the presence or absence of the worker Hu in the work area Ar. Then, when the information processing apparatus 10 predicts that the worker Hu is present in the workplace Ar and the following conditions are satisfied, the prediction of the first prediction unit 120 is determined to be correct. That is, when the content predicted from the detection information Id of the input device 41 matches the content predicted using the work prediction model 171, the information processing apparatus 10 determines that the content predicted using the work prediction model 171 is correct. do.
- the information processing apparatus 10 determines whether the content of the work Op predicted using the work prediction model 171 is correct or not, the content of the work Op predicted from the detection information Id of the input device 41, and the work location predicted using the presence/absence model 172. It is verified by the presence or absence of the worker Hu in Ar.
- the information processing apparatus 10 has the effect of being able to accurately estimate "the details of the work Op performed by the worker Hu in the workplace Ar" from the workplace image Ic.
- FIG. 1 is a block diagram showing the main configuration of the information processing device 10. As shown in FIG. The information processing apparatus 10 illustrated in FIG. 1 includes functional blocks such as a first acquisition unit 110, a first prediction unit 120, a second acquisition unit 130, a second prediction unit 140, a determination unit 150, an estimation unit 160, and , and a storage unit 170 .
- the information processing apparatus 10 illustrated in FIG. 1 includes functional blocks such as a first acquisition unit 110, a first prediction unit 120, a second acquisition unit 130, a second prediction unit 140, a determination unit 150, an estimation unit 160, and , and a storage unit 170 .
- the information processing device 10 may include the following units in addition to the functional blocks described above. That is, the information processing apparatus 10 controls the storage (storage) of the workplace image Ic in a predetermined storage area (storage area), and the time (staying time) during which the worker Hu stays in the workplace Ar. A measurement unit that measures, an analysis unit that associates the process information Ip with the residence time, and the like may be provided. In order to ensure the simplicity of the description, the configuration of the information processing apparatus 10 that is not directly related to the present embodiment is omitted from the description and block diagrams. However, the information processing apparatus 10 may include these omitted configurations in accordance with the actual situation of implementation.
- a storage device implemented by, for example, an arithmetic device such as ROM (read only memory), NVRAM (non-volatile random access memory), etc. It can be realized by reading a program stored in a RAM (random access memory) or the like (not shown) and executing it.
- arithmetic units include, for example, CPU (Central Processing Unit), GPU (Graphic Processing Unit), DSP (Digital Signal Processor), MPU (Micro Processing Unit), FPU (Floating point number Processing Unit), PPU (Physics Processing Unit), a microcontroller, or a combination thereof.
- the details of each of the first acquisition unit 110, the first prediction unit 120, the second acquisition unit 130, the second prediction unit 140, the determination unit 150, and the estimation unit 160 will be described below.
- the first acquisition unit 110 acquires the workplace image Ic of the workplace Ar captured by the cell camera 30 from the cell camera 30 and outputs the acquired workplace image Ic to the first prediction unit 120 .
- the first prediction unit 120 performs image analysis on the workplace image Ic captured by the cell camera 30, and determines whether the worker Hu imaged in the workplace image Ic is the work object Ob imaged in the workplace image Ic The content of the work Op being performed" is predicted. For example, the first prediction unit 120 performs model-based image analysis on the workplace image Ic, and determines that "the worker Hu captured in the workplace image Ic is the work object Ob captured in the workplace image Ic. Predict "the content of the work Op being performed for".
- the first prediction unit 120 that performs model-based image analysis is implemented as, for example, a neural network, and detects the work Op as the HOI by executing the HOI detection algorithm. Specifically, the first prediction unit 120 refers to the storage unit 170 and acquires the work prediction model 171 .
- the work prediction model 171 receives the workplace image Ic as an input, and outputs "the details of the work Op performed by the worker Hu imaged in the workplace image Ic on the work object Ob imaged in the workplace image Ic". is a trained model.
- the first prediction unit 120 uses the work prediction model 171 acquired with reference to the storage unit 170 to determine, from the workplace image Ic, "the worker Hu captured in the workplace image Ic is captured in the workplace image Ic. "Contents of the work Op being performed for the work object Ob present" is predicted.
- “neural network” may be abbreviated as "NN”.
- the first prediction unit 120 uses the work prediction model 171 from the workplace image Ic(x) to generate the following first prediction Pf(x). That is, the first prediction unit 120 predicts that "the work Op performed by the worker Hu imaged in the workplace image Ic(x) on the work object Ob(x) imaged in the workplace image Ic(x) Generate a first prediction Pf(x), which is a prediction about "the content of (x)".
- the first prediction unit 120 uses the imaging time Tp, which is “the time when the cell camera 30 images the workplace Ar(x) and generates the workplace image Ic(x)”, from the workplace image Ic(x) to , performs the following predictions: That is, the first prediction unit 120 predicts, from the workplace image Ic(x), "At the imaging time Tp, the worker Hu(x) is performing work Op on the work object Ob(x) in the workplace Ar(x). The content of (x)” is predicted.
- the first prediction unit 120 outputs the content of the work Op predicted using the work prediction model 171 from the workplace image Ic to the determination unit 150 as the first prediction Pf. For example, the first prediction unit 120 outputs the first prediction Pf(x) generated from the workplace image Ic(x) to the determination unit 150 .
- the second acquisition unit 130 acquires various types of information for generating the second prediction Ps from the outside, and outputs the acquired various types of information to the second prediction unit 140 .
- the second prediction Ps is a prediction for verifying (correctness of) the first prediction Pf, and includes at least one of the existence prediction Pa and the work prediction Po.
- the second acquisition section 130 illustrated in FIG. 1 includes a whole image acquisition section 131 and a detection information acquisition section 132 .
- the overall image acquisition unit 131 acquires the overall image Ia captured by the ceiling camera 80 from a bird's-eye view of the entire factory Fa from the ceiling camera 80, and transmits the acquired overall image Ia to the second prediction unit 140. Output to the prediction unit 141 .
- the detection information acquisition unit 132 acquires, from the PLC 20, detection information Id (including process information Ip) indicating "at least one state of the tool used in the operation Op, the work object Ob, and the work area Ar". As described above, the detection information Id is, for example, "at least one state of the tool used in the work Op, the work object Ob, and the work place Ar" detected by the input device 41 as a detection device (measuring device). This is the information shown.
- the detection information acquisition unit 132 outputs the acquired detection information Id to the first prediction unit 120 .
- the second prediction unit 140 generates a second prediction Ps including at least one of the presence/absence prediction Pa and the work prediction Po, and outputs the generated second prediction Ps to the determination unit 150 .
- Second prediction unit 140 includes presence/absence prediction unit 141 and work prediction unit 142 .
- the presence/absence prediction unit 141 performs image analysis on the entire image Ia acquired from the second acquisition unit 130 (particularly, the entire image acquisition unit 131), and determines whether the worker Hu in the workplace Ar captured in the workplace image Ic. Presence/absence prediction Pa is generated.
- the presence/absence prediction unit 141 performs, for example, a model-based image analysis on the entire image Ia, and predicts "whether there is a worker Hu in the workplace Ar captured in the workplace image Ic".
- the presence/absence prediction unit 141 that performs model-based image analysis is implemented as, for example, an NN, and predicts the presence/absence of worker Hu in workplace Ar by executing a flow line detection algorithm (object detection algorithm) such as YOLO. .
- the presence/absence prediction unit 141 refers to the storage unit 170 and acquires the presence/absence model 172 .
- the presence/absence model 172 is a learned model that receives the entire image Ia and outputs "whether there is a worker Hu in the workplace Ar (more precisely, each of the plurality of workplaces Ar in the factory Fa)" as an output.
- the presence/absence prediction unit 141 uses the presence/absence model 172 acquired by referring to the storage unit 170 to predict “whether there is a worker Hu in the workplace Ar captured in the workplace image Ic” from the overall image Ia. For example, the presence/absence prediction unit 141 uses the presence/absence model 172 from the entire image Ia to predict whether there is a worker Hu in the workplace Ar(x) captured in the workplace image Ic(x). A prediction Pa(x) is generated.
- the presence/absence prediction unit 141 determines "the time at which the ceiling camera 80 captures images of a plurality of workplaces Ar including 'the workplace Ar(x) imaged in the workplace image Ic(x)' to generate the entire image Ia".
- the following prediction is performed from the entire image Ia using the overall time Ta which is: That is, the presence/absence prediction unit 141 determines from the overall image Ia that the worker Hu(x) is in the workplace Ar(x) at the overall time Ta corresponding to the “imaging time Tp at which the workplace image Ic(x) was captured.” Predict whether there will be
- the presence/absence prediction unit 141 uses the presence/absence model 172 from the entire image Ia for a predetermined period (for example, 5 seconds) to determine “whether there is a worker Hu in the workplace Ar captured in the workplace image Ic”. "Whether there is a worker Hu in the workplace Ar at the imaging time Tp" may be predicted.
- the presence/absence prediction of the worker Hu using the presence/absence model 172 by the presence/absence prediction unit 141 may fail such as false detection and non-detection.
- the presence/absence prediction unit 141 predicts, for example, that "worker Hu is present” for only one second out of five seconds, if it predicts that "worker Hu is not present” for the remaining four seconds.
- the prediction that "worker Hu is present” may be regarded as an erroneous detection (that is, an erroneous prediction). Even if it is predicted that “the worker Hu is present” for only one second, if it is predicted that “the worker Hu is not present” for the remaining four seconds, the presence/absence prediction unit 141 predicts “ It may be predicted that the operator Hu is absent.
- the presence/absence prediction unit 141 makes a presence/absence prediction Pa that "there was no worker Hu in the 'workplace Ar captured in the workplace image Ic' during the 5 seconds" based on the entire image Ia for the 5 seconds. may be generated.
- the presence/absence prediction unit 141 only predicts that “the worker Hu was present” for a period of a predetermined percentage (eg, 50%) or more of the predetermined period from the entire image Ia of the predetermined period, Presence/absence prediction Pa indicating that “worker Hu was present” may be generated for the entire predetermined period. For example, the presence/absence prediction unit 141 predicts, for the entire image Ia for 5 seconds, only when the period during which ⁇ the worker Hu was present'' is 2.5 seconds or more, and determines that ⁇ the worker Hu was present during the 5 seconds. It is also possible to generate the presence/absence prediction Pa of "has".
- a predetermined percentage eg, 50%
- Presence/absence prediction Pa indicating that “worker Hu was present” may be generated for the entire predetermined period.
- the presence/absence prediction unit 141 predicts, for the entire image Ia for 5 seconds, only when the period during which ⁇ the worker Hu was present'' is 2.5 seconds or more, and determines that ⁇ the worker Hu was present during the
- the flow line detection algorithm used by the presence/absence prediction unit 141 to predict the presence/absence of the worker Hu is, for example, YOLO. flow line detection algorithm.
- the presence/absence prediction unit 141 should be able to predict "whether there is a worker Hu in the workplace Ar captured in the workplace image Ic" from the entire image Ia by the flow line detection algorithm.
- the presence/absence prediction unit 141 predicts presence/absence prediction Pa (for example, presence/absence Prediction Pa(x)) is output to determination unit 150 .
- the work prediction unit 142 uses the detection information Id (including the process information Ip) acquired from the second acquisition unit 130 (particularly, the detection information acquisition unit 132) to determine the “contents of the work Op performed by the worker Hu”. is predicted, that is, the work prediction Po is generated.
- the detection information Id is information indicating "at least one state of the tool (for example, the output device 42 and the instrument 90) used in the work Op, the work object Ob, and the work place Ar.”
- the work prediction unit 142 generates the following work prediction Po(x) from the detection information Id(x). That is, the work prediction unit 142 predicts "the details of the work Op(x) performed by the worker Hu(x) in the work place Ar(x)" from the detection information Id(x).
- the detection information Id(x) includes "the tool (eg, the output device 42(x) or the instrument 90(x)) used for the work Op(x), the work object Ob(x), and , at least one state of the workplace Ar(x).
- the work prediction unit 142 determines that “the operation Ac(x) will be executed and the work Op(x) corresponding to the operation Ac(x) will worker Hu performed at workplace Ar(x)".
- the work prediction unit 142 determines, based on the "power consumption of the tool," that "the operation Ac(x) is executed and the work Op(x) corresponding to the operation Ac(x) is performed by the worker Hu at the workplace Ar(x). I went," he predicts.
- the work prediction unit 142 predicts that "work Op(x) was performed by worker Hu at workplace Ar(x)" because "a tool or work object Ob(x) was gripped". Predict.
- the work prediction unit 142 determines that “the work Op(x) is the work place Ar ( x) was performed by worker Hu".
- the work prediction unit 142 determines that "the work Op(x) is the work place Ar(x ) was performed by worker Hu".
- the work prediction unit 142 predicts "the content of the work Op performed by the worker Hu” from the detection information Id.
- the content of the work Op(x) performed by the worker Hu(x) is predicted.
- the work prediction unit 142 predicts "at least one state of the tool used for the work Op(x), the work object Ob(x), and the work place Ar(x)" included in the detection information Id(x).
- the following prediction is performed using the detection time Td, which is the time when is detected. That is, the work prediction unit 142 determines from the detection information Id(x) that the worker Hu(x) is performing Predict "contents of operation Op(x)".
- the work prediction unit 142 outputs "the content of the work Op performed by the worker Hu” predicted from the detection information Id to the determination unit 150 as the work prediction Po.
- the work prediction unit 142 predicts the work prediction Po(x), which is "the content of the work Op(x) performed by the worker Hu(x) at the workplace Ar(x)" predicted from the detection information Id(x). is output to the determination unit 150 .
- the determination unit 150 verifies (correctness of) the first prediction Pf using the second prediction Ps, that is, verifies (correctness of) the first prediction Pf using at least one of the existence prediction Pa and the work prediction Po. verify. Specifically, the determination unit 150 verifies (correctness of) the first prediction Pf(x) using at least one of the existence prediction Pa(x) and the work prediction Po(x).
- the first prediction Pf(x) is predicted from the workplace image Ic(x), for example, "At the imaging time Tp, the worker Hu(x) is in the workplace Ar(x) and the work object Ob The contents of the work Op(x) performed for (x)".
- Presence/absence prediction Pa(x) is, for example, predicted from the entire image Ia, at the overall time Ta corresponding to the "imaging time Tp at which the workplace image Ic(x) was captured".
- the work prediction Po(x) is, for example, the worker Hu(x ) is the content of the operation Op(x) being performed by ).
- the determination unit 150 determines that "the first prediction Pf(x) is correct”. In particular, the determining unit 150 predicts that "the worker Hu is present in the workplace Ar(x) at the imaging time Tp, which is the time when the cell camera 30 generates the workplace image Ic(x)." The first prediction Pf(x) is correct.”
- the determination unit 150 determines that "the first prediction Pf(x) is correct.” judge. In particular, the determination unit 150 selects “work Op(x) at the imaging time Tp(x) in the work prediction Po(x)” and “work at the imaging time Tp(x) in the first prediction Pf(x) Op(x)”, it is determined that “the first prediction Pf(x) is correct”.
- the determining unit 150 predicts that “the worker Hu is present in the workplace Ar(x)”, and the work Op(x) in the work prediction Po(x) and the work Op(x) in the first prediction Pf(x) (x), it is determined that "the first prediction Pf(x) is correct".
- the determination unit 150 determines that "the first prediction Pf(x) is correct" when both of the following two conditions are satisfied. That is, in the work prediction Po(x), the first condition is that "at the imaging time Tp, which is the time when the cell camera 30 generated the workplace image Ic(x), the worker Hu is present in the workplace Ar(x).
- the second condition is "the work Op(x) at the imaging time Tp(x) in the predicted work Po(x)" and "the work Op(x) at the imaging time Tp(x) in the first prediction Pf(x)". (x)".
- the determination unit 150 notifies the estimation unit 160 of the first prediction Pf together with the determination result (verification result).
- the determination unit 150 may further notify the estimation unit 160 of the second prediction Ps (at least one of the presence/absence prediction Pa and the work prediction Po).
- the estimation unit 160 sets the first prediction Pf(x) to "the content of the work Op performed by the worker Hu at the workplace Ar". and outputs the first prediction Pf(x) to the outside as an estimation result.
- the estimating unit 160 determines that there is no worker Hu at the workplace Ar(x), or the desired There is no content of the work Op(x) that can be estimated with accuracy.” is output to the outside.
- the estimation unit 160 may output the estimation result described above to the moving image storage server or the like in FIG. 2 together with the workplace image Ic.
- the storage unit 170 is a storage device that stores various data used by the information processing device 10 .
- the storage unit 170 stores (1) a control program executed by the information processing apparatus 10, (2) an OS program, (3) an application program for executing various functions of the information processing apparatus 10, and (4)
- Various data read when executing the application program may be stored non-temporarily.
- the above data (1) to (4) are stored in, for example, ROM (read only memory), flash memory, EPROM (Erasable Programmable ROM), EEPROM (registered trademark) (Electrically EPROM), HDD (Hard Disc Drive), and the like.
- the information processing device 10 may include a temporary storage unit (not shown).
- the temporary storage unit is a so-called working memory that temporarily stores data used for calculation, calculation results, etc. in the course of various processes executed by the information processing apparatus 10, and is a volatile memory such as a RAM (random access memory). Consists of equipment. Which data is to be stored in which storage device is appropriately determined based on the purpose of use, convenience, cost, physical restrictions, or the like of the information processing device 10 .
- the storage unit 170 further stores a work prediction model 171 and a presence/absence model 172 .
- the first prediction unit 120 predicts from the work place image Ic that "the work Op performed by the worker Hu imaged in the work place image Ic on the work object Ob imaged in the work place image Ic is It is a model for predicting "content”.
- the work prediction model 171 receives the work place image Ic as an input, and "contents of the work Op performed by the worker Hu imaged in the work place image Ic on the work object Ob imaged in the work place image Ic". It is a trained model that outputs information indicating
- the presence/absence model 172 is a model for the presence/absence prediction unit 141 to predict "whether there is a worker Hu in the workplace Ar captured in the workplace image Ic" from the overall image Ia.
- the presence/absence model 172 is a learned model that receives the entire image Ia and outputs "whether there is a worker Hu in the workplace Ar (more precisely, each of the plurality of workplaces Ar in the factory Fa)" as an output.
- FIGS. 3, 4, and 5 are flow diagrams for explaining the overall outline of the processing executed by the information processing apparatus 10.
- the information processing apparatus 10 can highly accurately estimate "the content of the work Op performed by the worker Hu” by verifying (correct or incorrect) the first prediction Pf using the second prediction Ps.
- FIG. 3 is a flowchart for explaining the overall outline of the processing performed by the information processing apparatus 10 when verifying (correctness of) the first prediction Pf using only the work prediction Po among the second predictions Ps.
- the information processing apparatus 10 may verify (correctness of) the first prediction Pf using only the work prediction Po.
- the determining unit 150 first determines whether or not “the content of the work Op performed by the worker Hu” is predicted in the work prediction Po, that is, whether or not “some work Op is performed based on the detection information Id”. (S110).
- the determination unit 150 When confirming that "it was predicted that some kind of work Op was being performed from the detection information Id" (YES in S110), the determination unit 150 further adds in the first prediction Pf that "the work Op being performed by the worker Hu 'contents' is predicted. That is, the determination unit 150 confirms "whether or not it is predicted that some work Op is being performed using the work prediction model 171" (S120).
- the determination unit 150 Upon confirming that "it was predicted that some work Op was being performed using the work prediction model 171" (YES in S120), the determination unit 150 makes the following determinations. That is, the determination unit 150 determines “whether or not the content of the work Op predicted from the detection information Id matches the content of the work Op predicted using the work prediction model 171” (S130). That is, the determination unit 150 determines whether or not the “work Op in the work prediction Po” and the “work Op(x) in the first prediction Pf” match.
- the estimation The unit 160 outputs the following estimation results. That is, the estimating unit 160 outputs the content of the work Op predicted by the first acquiring unit 110 from the work place image Ic using the work prediction model 171 as an estimation result (S140), that is, the first prediction Pf(x) is output as the estimation result.
- the work prediction unit 142 cannot predict the content of the work Op from the detection information Id. If not, the estimation unit 160 outputs the following estimation result. That is, the estimating unit 160 outputs the estimation result that "there is no content of the work Op that could be estimated with the desired accuracy" (S150).
- the estimation unit 160 After confirming that "it was not predicted that any work Op was being performed using the work prediction model 171" (NO in S120), the estimation unit 160 outputs the following estimation result. That is, the estimating unit 160 outputs the estimation result that "there is no content of the work Op that could be estimated with the desired accuracy" (S150). That is, when the first prediction unit 120 cannot predict the content of the work Op from the workplace image Ic, the estimation unit 160 outputs the estimation result that "there is no content of the work Op that could be estimated with the desired accuracy.” .
- the estimation unit 160 When it is determined that "the content of the work Op predicted from the detection information Id does not match the content of the work Op predicted using the work prediction model 171" (NO in S130), the estimation unit 160 performs the following: output the estimation result of That is, the estimating unit 160 outputs the estimation result that "there is no content of the work Op that could be estimated with the desired accuracy" (S150).
- the information processing apparatus 10 verifies (correctness of) the first prediction Pf using the work prediction Po, that is, uses the HOI detection algorithm in combination with "detection information Id from the input device 41 or the like".
- the information processing apparatus 10 includes the first prediction unit 120 that executes the HOI detection algorithm, and the work prediction unit 142 that generates the work prediction Po from the detection information Id, thereby preventing erroneous detection (prediction) by the first prediction unit 120. error). Therefore, the information processing apparatus 10 can cancel erroneous detection (prediction error) of the HOI detection algorithm and realize highly accurate estimation.
- the work prediction unit 142 predicts "the content of the work Op performed by the worker Hu” from the detection information Id from the input device 41 or the like, that is, generates the work prediction Po. Then, the work prediction unit 142 using the detection information Id predicts “the content of the work Op performed by the worker Hu” rather than the prediction of “the content of the work Op performed by the worker Hu” by the first prediction unit 120 that executes the HOI detection algorithm.
- the prediction accuracy of "the content of the work Op that is present" is higher. That is, the prediction accuracy of the work prediction Po is higher than the prediction accuracy of the first prediction Pf.
- the information processing device 10 can estimate "the content of the work Op performed by the worker Hu” with high accuracy.
- the type of “work Op performed by worker Hu” that can be predicted by the first prediction unit 120 by executing the HOI detection algorithm is the type of “work Op performed by worker Hu” that can be predicted by the work prediction unit 142 from the detection information Id. It may be the same as the type of "Work Op" that is present, or the former may be more than the latter.
- HOI detection by the HOI detection algorithm fails if at least one of the worker Hu and the work object Ob cannot be detected (object detection) from the workplace image Ic. do. Therefore, the failure of HOI detection, that is, ⁇ it was not predicted that some work Op was being performed using the work prediction model 171'', is referred to as ⁇ failure to detect an object (for example, worker Hu) ( In other words, it can be regarded as "absent".
- FIG. 4 is a flowchart for explaining the overall outline of the processing performed by the information processing apparatus 10 when verifying (correctness of) the first prediction Pf using only the presence/absence prediction Pa of the second predictions Ps.
- the information processing device 10 in particular, the determination unit 150 may verify (correctness of) the first prediction Pf using only the presence/absence prediction Pa.
- the determining unit 150 first determines whether or not the presence/absence prediction Pa predicts that “the worker Hu is present in the workplace Ar”, that is, “using the presence/absence model 172, the worker Hu is (S210).
- the presence/absence prediction unit 141 predicts "whether there is a worker Hu in the workplace Ar captured in the workplace image Ic during the predetermined period" from the entire image Ia for a predetermined period (for example, 5 seconds). You may The presence/absence prediction unit 141 only predicts that "the worker Hu is present” for a period of a predetermined ratio (for example, 50%) of the predetermined period. It may be predicted that the worker Hu was in the workplace Ar where
- the determination unit 150 When confirming that "it was predicted that the worker Hu was present in the workplace Ar using the presence/absence model 172" (YES in S210), the determination unit 150 further determines in the first prediction Pf that "the worker Hu is It is confirmed whether or not the content of the work Op is predicted. That is, the determination unit 150 confirms "whether or not it is predicted that some work Op is being performed using the work prediction model 171" (S220).
- estimation unit 160 When determination unit 150 confirms that "it was predicted that some work Op was being performed using work prediction model 171" (YES in S220), estimation unit 160 outputs the following estimation result. do. That is, the estimation unit 160 outputs, as an estimation result, the content of the work Op predicted by the first acquisition unit 110 from the work place image Ic using the work prediction model 171 (S230), that is, the first prediction Pf(x) is output as the estimation result.
- the estimation unit 160 Upon confirming that "it was predicted that worker Hu would not exist in workplace Ar using the presence/absence model 172" (NO in S210), the estimation unit 160 outputs the following estimation result. That is, the estimation unit 160 outputs the estimation result that "there is no worker Hu in the workplace Ar" (S250). That is, when the presence/absence prediction unit 141 predicts from the entire image Ia that "the worker Hu is absent in the workplace Ar captured in the workplace image Ic", the estimation unit 160 predicts that "the worker Hu is absent in the workplace Ar". and output the estimation results.
- the estimation unit 160 After confirming that "it was not predicted that any work Op was being performed using the work prediction model 171" (NO in S220), the estimation unit 160 outputs the following estimation result. That is, the estimating unit 160 outputs the estimation result that "there is no work Op that could be estimated with desired accuracy" (S240). That is, when the first prediction unit 120 cannot predict the content of the work Op from the workplace image Ic, the estimation unit 160 outputs the estimation result that "there is no content of the work Op that could be estimated with the desired accuracy.” .
- the information processing device 10 verifies (correctness of) the first prediction Pf using the presence/absence prediction Pa, that is, uses the HOI detection algorithm in combination with the "flow line detection algorithm such as YOLO". That is, the information processing apparatus 10 includes the first prediction unit 120 that executes the HOI detection algorithm and the presence/absence prediction unit 141 that executes the flow line detection algorithm. ) can be canceled.
- the flow line detection algorithm can predict (detect) only the presence or absence of the worker Hu, but the prediction accuracy of the flow line detection algorithm is higher than the prediction accuracy of the HOI detection algorithm. Therefore, by using the first prediction Pf and the presence/absence prediction Pa, the information processing apparatus 10 can estimate "the details of the work Op performed by the worker Hu" with high accuracy.
- FIG. 5 is a flow diagram illustrating the overall outline of the process executed by the information processing apparatus 10 when verifying (correctness of) the first prediction Pf using both the presence/absence prediction Pa and the work prediction Po.
- the information processing device 10 in particular, the determination unit 150 may verify (correctness of) the first prediction Pf using both the existence prediction Pa and the work prediction Po.
- the determining unit 150 first determines whether or not the presence/absence prediction Pa predicts that “the worker Hu is present in the workplace Ar”, that is, “using the presence/absence model 172, the worker Hu (S310).
- the presence/absence prediction unit 141 may predict "whether there is a worker Hu in the workplace Ar captured in the workplace image Ic during the predetermined period" from the entire image Ia of the predetermined period.
- the presence/absence prediction unit 141 predicts that "the worker Hu will be present” for a period of a predetermined proportion or more of the predetermined period, and only when it predicts that "the worker Hu will be present” during the predetermined period, the presence/absence prediction unit 141 predicts that "the worker Hu will be present in the workplace Ar captured in the workplace image Ic during the predetermined period. It may be predicted that there was a person Hu.
- determination unit 150 After confirming that "worker Hu was predicted to be present in workplace Ar using the presence/absence model 172" (YES in S310), determination unit 150 next determines in work prediction Po that "worker Hu is It is confirmed whether or not the "contents of the work Op that is being performed” is predicted. That is, the determination unit 150 confirms "whether or not it was predicted from the detection information Id that some work Op was being performed” (S320).
- the determination unit 150 determines in the first prediction Pf that "the work Op performed by the worker Hu Check whether “content” is expected. That is, the determination unit 150 confirms "whether or not it is predicted that some work Op is being performed using the work prediction model 171" (S330).
- the determination unit 150 After confirming that "it was predicted that some work Op was being performed using the work prediction model 171" (YES in S330), the determination unit 150 makes the following determinations. That is, the determination unit 150 determines “whether or not the content of the work Op predicted from the detection information Id matches the content of the work Op predicted using the work prediction model 171” (S340). That is, the determination unit 150 determines whether or not the “work Op in the work prediction Po” and the “work Op(x) in the first prediction Pf” match.
- the estimation The unit 160 outputs the following estimation results. That is, the estimating unit 160 outputs the contents of the work Op predicted by the first acquiring unit 110 from the work place image Ic using the work prediction model 171 as an estimation result (S350), that is, the first prediction Pf(x) is output as the estimation result.
- the estimation unit 160 When it is confirmed that "worker Hu was predicted not to exist in workplace Ar using the presence/absence model 172" (NO in S310), the estimation unit 160 outputs the following estimation result. That is, the estimation unit 160 outputs the estimation result that "there is no worker Hu in the workplace Ar" (S360). That is, when the presence/absence prediction unit 141 predicts from the entire image Ia that "the worker Hu is absent in the workplace Ar captured in the workplace image Ic", the estimation unit 160 predicts that "the worker Hu is absent in the workplace Ar". and output the estimation results.
- the work prediction unit 142 cannot predict the content of the work Op from the detection information Id. If not, the estimation unit 160 outputs the following estimation result. That is, the estimating unit 160 outputs the estimation result that "there is no work Op content that could be estimated with desired accuracy" (S370).
- the estimation unit 160 After confirming that "it was not predicted that any work Op was being performed using the work prediction model 171" (NO in S330), the estimation unit 160 outputs the following estimation result. That is, the estimating unit 160 outputs the estimation result that "there is no work Op content that could be estimated with desired accuracy" (S370). That is, when the first prediction unit 120 cannot predict the content of the work Op from the workplace image Ic, the estimation unit 160 outputs the estimation result that "there is no content of the work Op that could be estimated with the desired accuracy.” .
- the estimation unit 160 When it is determined that "the content of the work Op predicted from the detection information Id does not match the content of the work Op predicted using the work prediction model 171" (NO in S340), the estimation unit 160 performs the following: output the estimation result of That is, the estimating unit 160 outputs the estimation result that "there is no work Op content that could be estimated with desired accuracy" (S370).
- events that can be predicted from detection information Id differ from events that can be predicted by the flow line detection algorithm.
- the work prediction Po generated by the work prediction unit 142 from the detection information Id is a prediction of "the content of the work Op performed by the worker Hu".
- the presence/absence prediction Pa generated by the presence/absence prediction unit 141 using the flow line detection algorithm is a prediction about "whether the worker Hu is present in the workplace Ar captured in the workplace image Ic".
- the information processing device 10 can use at least one of the work prediction Po and the presence/absence prediction Pa to verify (correctness of) the first prediction Pf.
- the determination unit 150 may verify (correctness of) the first prediction Pf using only the work prediction Po, or as shown in FIG. You may verify (correctness of) 1st prediction Pf only using.
- the determination unit 150 may verify (correct or not) the first prediction Pf using both the presence/absence prediction Pa and the work prediction Po.
- the determination unit 150 first filters the presence or absence of the worker Hu by the presence/absence prediction Pa, and when it is predicted that the worker Hu exists, further uses the work prediction Po to perform the first Prediction Pf (correctness) may be verified.
- the processing executed by the information processing apparatus 10, which has been described with reference to FIGS. 3, 4, and 5, can be organized as follows. That is, the control method executed by the information processing device 10 is a control method for a work estimation device that estimates "the details of the work Op performed by the worker Hu in the work place Ar".
- the control method executed by the information processing apparatus 10 includes prediction steps (S120, S220, S330), determination steps (S130, S210, S310, S340), and estimation steps (S140, S230, S350).
- the work prediction model 171 is a trained model that receives as input "the workplace image Ic that captures the workplace Ar" or "feature information generated from the workplace image Ic" and outputs the following information. That is, the work prediction model 171 is a learned model that outputs "the details of the work Op performed by the worker Hu imaged in the workplace image Ic on the work object Ob imaged in the workplace image Ic". is.
- the judgment step uses at least one of the content of the work Op predicted without using the work prediction model 171 and the judgment result as to whether or not the worker Hu is present in the work place Ar to determine the prediction in the prediction step. Judge right or wrong. That is, the determination step uses at least one of the work prediction Po and the presence/absence prediction Pa to determine whether the first prediction Pf is correct.
- the content of the work Op predicted in the prediction step is changed to "the content of the work Op performed by the worker Hu in the workplace Ar. content”. That is, in the estimation step, when at least one of the work prediction Po and the presence/absence prediction Pa is used to verify that the first prediction Pf is correct, the first prediction Pf is regarded as "the work performed by the worker Hu at the workplace Ar. The content of Op" is output as an estimation result.
- the control method determines whether the content of the work Op predicted using the work prediction model 171 is correct, the content of the work Op predicted without using the work prediction model 171, and the content of the work Op predicted without using the work prediction model 171. At least one of the determination results of whether or not the worker Hu is present is used for determination.
- the control method changes the content of the work Op predicted using the work prediction model 171 to "the work performed by the worker Hu in the work place Ar. Contents of Op".
- control method determines whether the content of the work Op predicted using the work prediction model 171 is correct or not, the content of the work Op predicted without using the work prediction model 171, and the presence of the worker Hu in the work place Ar. Verification is performed using at least one of the determination results as to whether or not to
- control method has the effect of being able to accurately estimate "the details of the work Op performed by the worker Hu in the workplace Ar" from the workplace image Ic.
- At least one of the first prediction unit 120 and the presence/absence prediction unit 141 may be implemented as an NN.
- at least one of the first prediction unit 120 and the presence/absence prediction unit 141 may be realized as a CNN (Convolutional Neural Network) or a DNN (Deep Neural Network).
- the first prediction unit 120 (work prediction model 171) predicts from the workplace image Ic that "the worker Hu imaged in the workplace image Ic is performing the work object Ob imaged in the workplace image Ic. Output the first prediction Pf indicating "the content of the work Op". Further, for example, the presence/absence prediction unit 141 (presence/absence model 172) outputs a presence/absence prediction Pa indicating "whether there is a worker Hu in the workplace Ar captured in the workplace image Ic" from the entire image Ia.
- the first prediction unit 120 implemented as a neural network constructs a work prediction model 171, which is a trained model, by supervised learning for a learning data set DS1, which is a set of teacher data Dt1, for example.
- the training data Dt1 is, for the workplace image Ic, information indicating at least "the details of the work Op performed by the worker Hu imaged in the workplace image Ic on the work object Ob imaged in the workplace image Ic". is the labeled data. “Teaching data” is also called “learning data”.
- the process in which "the first prediction unit 120 constructs the work prediction model 171 by supervised learning on the learning data set DS1" is also referred to as "learning process SS1".
- the first prediction unit 120 implemented as an NN learns the work prediction model 171 that outputs the following information in response to the input of the workplace image Ic by supervised learning on the learning data set DS1. built as a finished model. That is, the work prediction model 171 receives the workplace image Ic as an input, and "contents of the work Op performed by the worker Hu imaged in the workplace image Ic with respect to the work object Ob imaged in the workplace image Ic". is a trained model whose output is
- information indicating "the details of the work Op performed by the worker Hu imaged in the workplace image Ic on the work object Ob imaged in the workplace image Ic". is labeled.
- Information attached as a label to the workplace image Ic in the teacher data Dt1 is output by the work prediction model 171 constructed by machine learning for the learning data set DS1, which is a set of the teacher data Dt1, in response to the input of the workplace image Ic. It is similar to the information that
- the first prediction unit 120 implemented as an NN stores the work prediction model 171 constructed by the learning process SS1 in the storage unit 170.
- FIG. 6 is a diagram illustrating an example of annotations necessary for generating teacher data Dt1.
- the following labels are attached to the workplace image Ic. That is, the workplace image Ic is labeled with a dashed-dotted line indicating the "range of the bounding box for detecting the worker Hu". Also, the workplace image Ic is labeled with a two-dot chain line indicating the "range of the bounding box for detecting the work object Ob".
- a straight line with arrows at both ends indicates the content of the work Op performed by the worker Hu imaged in the work place image Ic on the work object Ob imaged in the work place image Ic. ” is attached as a label.
- a straight line with arrows at both ends connects approximately the center of the "range of the bounding box for detecting the worker Hu” and approximately the center of the "range of the bounding box for detecting the work object Ob".
- supervised learning generally requires a large amount of teacher data Dt1, and in order to prepare a large amount of teacher data Dt1, the above five annotations are performed for each of the large number of workplace images Ic. is required. For this reason, for each of a large number of workplace images Ic, "the content of the work Op performed by the worker Hu imaged in the workplace image Ic on the work object Ob imaged in the workplace image Ic" is determined by a human being. The cost of doing so is extremely high.
- the “contents of the work Op” predicted from the detection information Id are used instead of the “contents of the work Op” determined by a human from the workplace image Ic. is given to the workplace image Ic as a label indicating "contents of”. That is, in the training data Dt1, the "contents of the work Op” predicted by the work prediction unit 142 from the detection information Id is not the "contents of the work Op" determined by a human from the workplace image Ic. It is attached as a label indicating
- the cost required to build the work prediction model 171 can be greatly reduced compared to the case of using "content determined by a human from the workplace image Ic" as a label indicating "content of work Op".
- the annotation cost required to generate the learning data set DS1 can be greatly reduced compared to the case of using "content determined by a human from the workplace image Ic" as a label indicating "content of the work Op".
- one of the above-mentioned five annotations required for the workplace image Ic is changed from "determination by a human” to "predicted by the work prediction unit 142 from the detection information Id". Cost can be reduced by 20%.
- the following "contents of work Op(x)" is attached as a label to the workplace image Ic(x) generated by imaging the workplace Ar(x) with the cell camera 30 at a certain imaging time Tp. generates teacher data Dt1(x). That is, the work predicting unit 142 predicts from the detection information Id(x) the “contents of the work Op(x) performed by the worker Hu(x) in the workplace Ar(x) at the imaging time Tp”. Teacher data Dt1(x) labeled as an image Ic(x) is generated.
- the detection information Id(x) is the “tool (for example, the output device 42(x) or the instrument 90(x)), the work object Ob(x), and the work place used for the work Op(x) at the imaging time Tp. information indicating at least one state of Ar(x).
- the work prediction unit 142 calculates, for example, "at the imaging time Tp, the instrument 90(x): the magnitude of the electric current flowing through the electric driver”, "at the imaging time Tp, the worker Hu Operation Op(x) at (x): Screw tightening operation is performed.”
- the teacher data Dt1(x) is generated by adding this predicted content (that is, “content of operation Op(x): screw tightening operation”) to the workplace image Ic(x).
- the work prediction model 171 is a learned model constructed by machine learning using the learning data set DS1.
- the “workplace image Ic or feature information generated from the workplace image Ic” is labeled with the following information. That is, “the worker Hu is doing in the workplace Ar” predicted from the detection information Id of the input device 41 that detects "at least one state of the tool used in the work Op, the work object Ob, and the workplace Ar” The content of the current work Op" is attached as a label.
- the information processing apparatus 10 creates a learning data set labeled with "the details of the work Op performed by the worker Hu in the workplace Ar" predicted from the detection information Id of the input device 41.
- the work prediction model 171 is constructed by the machine learning used.
- the training data Dt1 learned when constructing the work prediction model 171 does not require setting of a bounding box for detecting the worker Hu
- the following is applied to the workplace image Ic: 5 annotations are required. That is, it is necessary to set the X and Y coordinates of each of the lower left point and the upper right point among the four points indicating the range of the bounding box for detecting the work object Ob for the workplace image Ic. , which means that four annotations are required.
- information (label) indicating "contents of the work Op performed by the worker Hu imaged in the workplace image Ic on the work object Ob imaged in the workplace image Ic". is required, that is, one annotation is required.
- the "contents of the work Op" predicted from the detection information Id of the input device 41 is used instead of the "contents of the work Op" determined by a human from the workplace image Ic. It is given as a label indicating "content”. That is, in the training data Dt1, the "contents of the work Op" predicted from the detection information Id of the input device 41 is not the “contents of the work Op" determined by a human from the workplace image Ic. It is attached as a label indicating
- the cost required to build the work prediction model 171 can be greatly reduced compared to the case of using "content determined by a human from the workplace image Ic" as a label indicating "content of work Op".
- the annotation cost required to generate the learning data set DS1 can be greatly reduced compared to the case of using "content determined by a human from the workplace image Ic" as a label indicating "content of the work Op".
- one of the above-mentioned five annotations necessary for the workplace image Ic is changed from "determination by a human" to "content predicted by a device such as the information processing device 10 from the detection information Id". Therefore, the annotation cost can be reduced by 20%.
- the information processing apparatus 10 uses the work prediction model 171 whose annotation cost is greatly reduced to predict "the content of the work Op performed by the worker Hu" from the workplace image Ic. , can be estimated with high accuracy.
- the presence/absence prediction unit 141 implemented as an NN constructs a presence/absence model 172, which is a trained model, by supervised learning for a data set DS2, which is a set of teacher data Dt2, for example.
- the training data Dt2 is data in which the entire image Ia is labeled with information indicating "whether there is a worker Hu in the workplace Ar (more precisely, each of the plurality of workplaces Ar in the factory Fa)".
- the process in which the presence/absence prediction unit 141 constructs the presence/absence model 172 by supervised learning for the data set DS2 is also referred to as the "learning process SS2".
- the presence/absence prediction unit 141 implemented as an NN constructs a presence/absence model 172 that outputs the following information in response to the input of the entire image Ia as a learned model by supervised learning on the data set DS2. do. That is, the presence/absence model 172 is a learned model that takes the entire image Ia as an input and outputs "whether there is a worker Hu in the workplace Ar (more precisely, each of the plurality of workplaces Ar in the factory Fa)". .
- the entire image Ia is labeled with information indicating "whether there is a worker Hu in the workplace Ar (more precisely, each of the plurality of workplaces Ar in the factory Fa)".
- the information labeled as the entire image Ia in the teacher data Dt2 is the information output by the presence/absence model 172 constructed by machine learning for the data set DS2, which is a collection of the teacher data Dt2, in response to the input of the entire image Ia. It is the same.
- the presence/absence prediction unit 141 realized as an NN stores the presence/absence model 172 constructed by the learning process SS2 in the storage unit 170.
- the presence/absence prediction unit 141 uses a general learned model used in the flow line detection algorithm as the presence/absence model 172, and from the entire image Ia, "Workplace Ar (more precisely, each of the plurality of workplaces Ar in the factory Fa) is there a worker Hu at the location?" may be predicted.
- the presence/absence prediction unit 141 predicts "whether or not there is a worker Hu in the workplace Ar captured in the workplace image Ic" from the overall image Ia.
- the presence/absence prediction unit 141 may predict "whether the worker Hu is present in the workplace Ar captured in the workplace image Ic" from the workplace image Ic. That is, it is not essential for the information processing apparatus 10 to acquire the entire image Ia separately from the workplace image Ic.
- the information processing device 10 (in particular, the determination unit 150) can verify whether the first prediction Pf generated from the workplace image Ic is correct or not based on the presence/absence prediction Pa generated from at least one of the overall image Ia and the workplace image Ic. .
- the determination unit 150 determines that the presence/absence prediction Pa(x) generated from at least one of the entire image Ia and the workplace image Ic(x) is a prediction that "the worker Hu is present in the workplace Ar(x)". , it is determined that "the first prediction Pf(x) is correct”.
- the information processing apparatus 10 is the entity that predicts "the content of the work Op performed by the worker Hu” from the detection information Id. That is, the work prediction unit 142 grasps "at least one state of the tool used in the work Op, the work object Ob, and the work place Ar" from the detection information Id, and generates the work prediction Po from the grasped state. I have explained an example to do.
- the information processing apparatus 10 only needs to be able to acquire or generate the "contents of the work Op performed by the worker Hu" predicted from at least one state of the tool, work object Ob, and workplace Ar.
- the PLC 20 may generate the work prediction Po from the detection information Id.
- the information processing device 10 acquires the result of the prediction executed by the PLC 20, that is, the work prediction Po.
- the determination unit 150 verifies (correctness of) the first prediction Pf using the work prediction Po generated by the PLC 20 .
- the information processing device 10 (especially, the determination unit 150) uses the work prediction Po to verify (correctness of) the first prediction Pf, the entity that generates the work prediction Po from the detection information Id is the information processing device 10 or may not be the information processing device 10 .
- the information processing apparatus 10 includes both the presence/absence prediction unit 141 and the work prediction unit 142 has been described. do not have.
- the determination unit 150 only needs to verify the (correctness of) the first prediction Pf using the second prediction Ps. It would be good if it could be verified by Therefore, when the presence/absence prediction Pa is not used for verifying (correctness of) the first prediction Pf, the information processing apparatus 10 does not need to include the presence/absence prediction unit 141 . Further, when the work prediction Po is not used for verification of (correctness of) the first prediction Pf, the information processing apparatus 10 does not need to include the work prediction unit 142 .
- the functional blocks of the information processing device 10 are integrated circuits. It may be realized by a logic circuit (hardware) formed in (IC chip) or the like. Also, these functional blocks may be implemented by software using a CPU, GPU, DSP, or the like.
- the information processing apparatus 10 includes a CPU, GPU, DSP, etc., which execute instructions of programs, which are software for realizing each function, and records the programs and various data so that they can be read by a computer (or CPU).
- a ROM or storage device (these are referred to as a "recording medium"), and a RAM or the like for developing the above program.
- the object of the present invention is achieved when a computer (or CPU, GPU, DSP, etc.) reads the program from the recording medium and executes it.
- a "non-temporary tangible medium" such as a tape, a disk, a card, a semiconductor memory, a programmable logic circuit, or the like can be used.
- the program may be supplied to the computer via any transmission medium (communication network, broadcast wave, etc.) capable of transmitting the program.
- any transmission medium communication network, broadcast wave, etc.
- the present invention can also be implemented in the form of a data signal embedded in a carrier wave in which the program is embodied by electronic transmission.
- a work estimating device is a work estimating device for estimating the content of work performed by a worker in a workplace, and includes a workplace image obtained by capturing the workplace or characteristic information generated from the workplace image.
- the work prediction model which is a learned model that outputs the content of the work performed by the worker captured in the workplace image on the work target captured in the workplace image , a prediction unit that predicts the content of work performed by the worker on the work object from the workplace image or the feature information, the content of the work predicted without using the work prediction model, and a determination unit that determines whether the prediction of the prediction unit is correct or not using at least one of determination results as to whether or not the worker is present in the workplace, and the determination unit determines that the prediction of the prediction unit is correct. and an estimation unit for estimating the content of the work predicted by the prediction unit as the content of the work performed by the worker in the workplace.
- the work estimating device determines whether the content of the work predicted using the work prediction model is correct or not, the content of the work predicted without using the work prediction model, and the work location. It is determined using at least one of the determination results of the presence or absence of the worker in the above. Then, when it is determined that the prediction using the work prediction model is correct, the work estimation device predicts the content of the work predicted using the work prediction model to the work performed by the worker in the work place. Presumed to be the content of the work.
- the work estimating device determines whether the content of the work predicted using the work prediction model is correct or not, the content of the work predicted without using the work prediction model, and the worker at the work place. Verification is performed using at least one of the determination results of existence or non-existence.
- the work estimation device has the effect of being able to estimate with high accuracy the content of the work performed by the worker in the work place from the work place image.
- a work estimating device is a work estimating device, based on detection information of a sensor that detects at least one state of a tool used in the work, the work target, and the work place, and the work performed by the worker in the work place.
- a work detection unit that predicts the content of the work that is being performed, and the determination unit detects the content of the work predicted by the prediction unit and the content of the work predicted by the work detection unit; match, it may be determined that the prediction of the prediction unit is correct.
- the work estimation device determines whether or not the work content predicted from the detection information of the sensor matches the work content predicted using the work prediction model. . Then, when it is determined that the two match, the work estimation device estimates that the content of the work predicted using the work prediction model is the content of the work performed by the worker in the workplace.
- the work estimation device verifies whether the content of the work predicted using the work prediction model is correct or not based on the content of the work predicted from the detection information of the sensor.
- the work estimation device has the effect of being able to estimate with high accuracy the content of the work performed by the worker in the work place from the work place image.
- a work estimating device includes (A) an overall image obtained by imaging a plurality of workplaces including the workplace, or (B) the workplace image, or (C) from the overall image or the workplace image.
- a presence/absence model which is a learned model whose input is the generated feature information and whose output is whether or not the worker is present in the workplace, the entire image, the workplace image, or the entire
- a presence/absence prediction unit that predicts whether or not the worker is present in the workplace from an image or feature information generated from the workplace image, and the determination unit determines whether the worker is present in the workplace by the presence/absence prediction unit. If it is predicted that the worker will be present at , it may be determined that the prediction by the prediction unit is correct.
- the work estimation device uses the presence/absence model to predict whether the worker is present in the workplace. Then, when predicting that the worker is present in the workplace, the work estimation device converts the content of the work predicted using the work prediction model to the content of the work performed by the worker in the workplace. Assume there is.
- the work estimation device verifies whether the content of the work predicted using the work prediction model is correct or not based on the presence or absence of the worker at the workplace predicted using the presence/absence model.
- the work estimation device has the effect of being able to estimate with high accuracy the content of the work performed by the worker in the work place from the work place image.
- a work estimating device is a work estimating device, based on detection information of a sensor that detects at least one state of a tool used in the work, the work target, and the work place, and the work performed by the worker in the work place.
- the entire image, the workplace image, or a presence/absence prediction unit that predicts whether or not the worker is present in the workplace based on feature information generated from the overall image or the workplace image;
- the prediction unit It may be determined that the prediction is correct.
- the work estimation device predicts the content of the work predicted from the detection information of the sensor and the presence or absence of the worker in the work place. Then, the work estimation device predicts that the worker is present in the workplace, and when the content predicted from the detection information of the sensor matches the content predicted using the work prediction model, the work prediction It determines that the content predicted using the model is correct.
- the work estimation device predicts the correctness of the work content predicted using the work prediction model, the work content predicted from the detection information of the sensor, and the work content predicted using the presence/absence model. The presence or absence of the worker is verified.
- the work estimation device has the effect of being able to estimate with high accuracy the content of the work performed by the worker in the work place from the work place image.
- the work prediction model is predicted from detection information of a sensor that detects at least one state of a tool used in the work, the work object, and the work place.
- the content of the work performed by the worker in the workplace is constructed by machine learning using a learning data set in which the workplace image or feature information generated from the workplace image is labeled.
- the work estimation device uses a learning data set labeled with "the content of the work performed by the worker in the workplace" predicted from the detection information of the sensor. Build the work prediction model by machine learning.
- the teaching data learned when building the work prediction model does not require the setting of a bounding box for detecting the worker
- the following 5 one annotation is required. That is, it is necessary to set the X and Y coordinates of the lower left point and the upper right point of the four points indicating the range of the bounding box for detecting the work object with respect to the workplace image. , which means that four annotations are required.
- information (label) indicating "contents of work performed by the worker imaged in the workplace image on the work target imaged in the workplace image" is added to the workplace image. is required, which means one annotation is required.
- the "work content” predicted from the detection information of the sensor is used instead of the "work content” determined by a person from the workplace image. , is given as a label indicating the "work content”.
- the "work content” predicted from the detection information of the sensor is not the "work content” determined by a person from the workplace image. It is affixed as a label indicating "work content”.
- the cost required to construct the work prediction model (in particular, the annotation cost required to generate the learning data set) is the label indicating the work content, which is determined by a human from the workplace image. Compared to the case of using "content”, it can be greatly suppressed.
- one of the above-mentioned five annotations required for the workplace image is changed from "contents determined by humans” to "contents predicted by a device such as the work estimation device from the detection information of the sensor". Since it is changed, the annotation cost can be suppressed by 20%.
- the work estimating device uses the work prediction model whose annotation cost is significantly reduced, and from the work place image, the content of the work performed by the worker in the work place. can be estimated with high accuracy.
- a control method is a control method for a work estimating device for estimating the content of a work performed by a worker in a workplace, the workplace image obtained by imaging the workplace or the A work prediction model that is a learned model that receives feature information as an input and outputs details of work performed by the worker imaged in the work place image on the work target imaged in the work place image.
- the control method determines whether the content of the work predicted using the work prediction model is correct or not, the content of the work predicted without using the work prediction model, and the content of the work predicted without using the work prediction model. It is determined using at least one of the determination results of the presence or absence of the worker. Then, in the control method, when it is determined that the prediction using the work prediction model is correct, the content of the work predicted using the work prediction model is changed to the work performed by the worker in the work place. presumed to be the contents of
- control method determines whether the content of the work predicted using the work prediction model is correct or not, the content of the work predicted without using the work prediction model, and the presence of the worker in the work place. Verification is performed using at least one of the determination results of whether or not to
- control method has the effect of being able to estimate with high accuracy the content of the work performed by the worker in the workplace from the workplace image.
Landscapes
- Engineering & Computer Science (AREA)
- Business, Economics & Management (AREA)
- General Physics & Mathematics (AREA)
- Physics & Mathematics (AREA)
- Strategic Management (AREA)
- Theoretical Computer Science (AREA)
- Economics (AREA)
- Human Resources & Organizations (AREA)
- Marketing (AREA)
- Manufacturing & Machinery (AREA)
- Tourism & Hospitality (AREA)
- Quality & Reliability (AREA)
- General Business, Economics & Management (AREA)
- Entrepreneurship & Innovation (AREA)
- Health & Medical Sciences (AREA)
- Multimedia (AREA)
- Educational Administration (AREA)
- Primary Health Care (AREA)
- Game Theory and Decision Science (AREA)
- Operations Research (AREA)
- General Health & Medical Sciences (AREA)
- Development Economics (AREA)
- Computer Vision & Pattern Recognition (AREA)
- General Engineering & Computer Science (AREA)
- Automation & Control Theory (AREA)
- Image Analysis (AREA)
- General Factory Administration (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
撮像画像から、十分な精度をもって、作業者が作業対象物について行っている作業の内容を推定する。情報処理装置(10)は、学習済モデルである作業予測モデル(171)を用いた予測の内容を、作業予測モデル(171)を用いずに予測した内容によって検証する。
Description
本発明は、作業場において作業者が行っている作業の内容を推定する作業推定装置等に関する。
従来、工場等の生産現場における作業工程の実施状況を撮像した撮像データを、当該作業工程の改善等に利用する種々の試みが知られている。例えば、下掲の特許文献1には、画像データの解析結果を利用して作業者の行動を判別する安全管理システムが開示されている。また、撮像画像から、撮像画像に撮像されている人間とオブジェクトとの間の相互作用(HOI、Human Object Interaction)として、人間がオブジェクトについて行っている動作を検出するHOI検出についても、研究が進められている。
しかしながら、HOI検出による作業内容の予測は、それ単体では、精度が十分とはいえないとの問題がある。
本発明の一態様は、撮像画像から、十分な精度をもって、作業者が作業対象物について行っている作業の内容を推定することのできる作業推定装置等を実現することを目的とする。
上記の課題を解決するために、本発明の一態様に係る作業推定装置は、作業場において作業者が行っている作業の内容を推定する作業推定装置であって、前記作業場を撮像した作業場画像または前記作業場画像から生成された特徴情報を入力とし、前記作業場画像に撮像されている前記作業者が、前記作業場画像に撮像されている作業対象物について行っている作業の内容を出力とする学習済モデルである作業予測モデルを用いて、前記作業場画像または前記特徴情報から、前記作業者が前記作業対象物について行っている作業の内容を予測する予測部と、前記作業予測モデルを用いずに予測された前記作業の内容、および、前記作業場に前記作業者が存在するか否かの判定結果の少なくとも一方を用いて、前記予測部の予測の正否を判定する判定部と、前記判定部によって前記予測部の予測が正しいと判定されると、前記予測部によって予測された前記作業の内容を、前記作業場において前記作業者が行っている前記作業の内容として推定する推定部と、を備える。
上記の課題を解決するために、本発明の一態様に係る制御方法は、作業場において作業者が行っている作業の内容を推定する作業推定装置の制御方法であって、前記作業場を撮像した作業場画像または前記作業場画像から生成された特徴情報を入力とし、前記作業場画像に撮像されている前記作業者が、前記作業場画像に撮像されている作業対象物について行っている作業の内容を出力とする学習済モデルである作業予測モデルを用いて、前記作業場画像または前記特徴情報から、前記作業者が前記作業対象物について行っている作業の内容を予測する予測ステップと、前記作業予測モデルを用いずに予測された前記作業の内容、および、前記作業場に前記作業者が存在するか否かの判定結果の少なくとも一方を用いて、前記予測ステップでの予測の正否を判定する判定ステップと、前記判定ステップにて前記予測ステップでの予測が正しいと判定されると、前記予測ステップにて予測された前記作業の内容を、前記作業場において前記作業者が行っている前記作業の内容として推定する推定ステップと、を含む。
本発明の一態様によれば、撮像画像から、十分な精度をもって、作業者が作業対象物について行っている作業の内容を推定することができるとの効果を奏する。
〔実施形態1〕
以下、本発明の一側面に係る実施の形態(以下、「本実施形態」とも表記する)を、図面に基づいて説明する。なお、図中同一または相当部分には同一符号を付してその説明は繰返さない。本実施の形態においては、情報処理装置10を、「作業場Arにおいて作業者Huが行っている作業Opの内容を推定する作業推定装置」の典型例として説明を行なう。
以下、本発明の一側面に係る実施の形態(以下、「本実施形態」とも表記する)を、図面に基づいて説明する。なお、図中同一または相当部分には同一符号を付してその説明は繰返さない。本実施の形態においては、情報処理装置10を、「作業場Arにおいて作業者Huが行っている作業Opの内容を推定する作業推定装置」の典型例として説明を行なう。
以下の説明において、「n」、「m」、「p」、「q」、「x」、「y」は、各々、「1」以上の整数を示すものとし、「p」と「q」とは互いに異なる整数であり、「x」と「y」とは互いに異なる整数であるものとする。
§1.適用例
本発明の一態様に係る情報処理装置10(作業推定装置)についての理解を容易にするため、先ず、情報処理装置10が適用される環境について説明する。情報処理装置10は、例えば、作業場Arを撮像した作業場画像Icの解析結果を利用して、作業者Huが作業対象物Obについて行う作業Opの効率化等に資する情報(支援情報)を生成する。そこで先ず、作業者Hu、作業対象物Ob、作業Op、作業場Ar、および、1つ以上の作業場Arを含む工場Fa等について、説明する。
本発明の一態様に係る情報処理装置10(作業推定装置)についての理解を容易にするため、先ず、情報処理装置10が適用される環境について説明する。情報処理装置10は、例えば、作業場Arを撮像した作業場画像Icの解析結果を利用して、作業者Huが作業対象物Obについて行う作業Opの効率化等に資する情報(支援情報)を生成する。そこで先ず、作業者Hu、作業対象物Ob、作業Op、作業場Ar、および、1つ以上の作業場Arを含む工場Fa等について、説明する。
(工場および作業工程について)
生産現場である工場Faにおいては、例えば、各種の製品が、1つ以上の作業工程Pr(1)、Pr(2)、Pr(3)、・・・Pr(n)を経て生産される。工場Faにおいて実施される複数の作業工程Pr(1)、Pr(2)、Pr(3)、・・・Pr(n)の各々は、例えば、「塗装」工程、「主要ワークの組み立て」工程、「主要ワークの本体への組み込み」工程、「検査」工程である。
生産現場である工場Faにおいては、例えば、各種の製品が、1つ以上の作業工程Pr(1)、Pr(2)、Pr(3)、・・・Pr(n)を経て生産される。工場Faにおいて実施される複数の作業工程Pr(1)、Pr(2)、Pr(3)、・・・Pr(n)の各々は、例えば、「塗装」工程、「主要ワークの組み立て」工程、「主要ワークの本体への組み込み」工程、「検査」工程である。
複数の工場Faを互いに区別する必要がある場合には、符号に「(A)」、「(B)」、「(C)」、・・・、「(Z)」等の添え字を付して区別する。例えば、「工場Fa(A)」、「工場Fa(B)」、「工場Fa(X)」、・・・、「工場Fa(Z)」と記載して区別する。複数の工場Faの各々を特に区別する必要がない場合は単に「工場Fa」と称する。
また、作業工程Prについて、複数の作業工程Prの各々を区別する必要がある場合には、符号に「(1)」、「(2)」、「(3)」、・・・、「(n)」等の添え字を付して区別する。例えば、「作業工程Pr(1)」、「作業工程Pr(2)」、「作業工程Pr(3)」、・・・、「作業工程Pr(n)」と記載して区別する。複数の作業工程Prの各々を特に区別する必要がない場合は単に「作業工程Pr」と称する。
(作業について)
作業工程Prにおいて、作業者Huは、1つ以上の作業Op(1)、Op(2)、Op(3)、・・・Op(n)を行う。例えば、作業工程Pr(x)において、作業者Huは、作業Op(x1)、Op(x2)、Op(x3)を行う。一例を挙げれば、作業工程Pr(m)が「塗装」工程の場合、作業Op(x1)は、作業対象物Obの「把持」であってもよいし、作業Op(x2)は、作業対象物Obの「塗装」であってもよいし、作業Op(x3)は、作業対象物Obの「運搬」であってもよい。
作業工程Prにおいて、作業者Huは、1つ以上の作業Op(1)、Op(2)、Op(3)、・・・Op(n)を行う。例えば、作業工程Pr(x)において、作業者Huは、作業Op(x1)、Op(x2)、Op(x3)を行う。一例を挙げれば、作業工程Pr(m)が「塗装」工程の場合、作業Op(x1)は、作業対象物Obの「把持」であってもよいし、作業Op(x2)は、作業対象物Obの「塗装」であってもよいし、作業Op(x3)は、作業対象物Obの「運搬」であってもよい。
作業Opについて、複数の作業Opの各々を区別する必要がある場合には、符号に「(1)」、「(2)」、「(3)」、・・・、「(n)」等の添え字を付して区別し、特に区別する必要がない場合は単に「作業Op」と称する。
(作業場について)
工場Faは、1つ以上の作業場Ar(1)、Ar(2)、Ar(3)、・・・Ar(n)を含む。作業場Arは「セル」とも呼ばれ、つまり、工場Faは、1つ以上のセルを含む。1つ以上の作業場Ar(1)、Ar(2)、Ar(3)、・・・Ar(n)の各々は、1つ以上の作業工程Pr(1)、Pr(2)、Pr(3)、・・・Pr(n)の各々に対応付けられている。すなわち、作業場Ar(m)は、作業工程Pr(m)に含まれる作業Op(m)を、作業者Huが行う領域である。
工場Faは、1つ以上の作業場Ar(1)、Ar(2)、Ar(3)、・・・Ar(n)を含む。作業場Arは「セル」とも呼ばれ、つまり、工場Faは、1つ以上のセルを含む。1つ以上の作業場Ar(1)、Ar(2)、Ar(3)、・・・Ar(n)の各々は、1つ以上の作業工程Pr(1)、Pr(2)、Pr(3)、・・・Pr(n)の各々に対応付けられている。すなわち、作業場Ar(m)は、作業工程Pr(m)に含まれる作業Op(m)を、作業者Huが行う領域である。
作業場Arについて、複数の作業場Arの各々を区別する必要がある場合には、符号に「(1)」、「(2)」、「(3)」、・・・、「(n)」等の添え字を付して区別し、特に区別する必要がない場合は単に「作業場Ar」と称する。
(作業対象物について)
作業場Arには、作業者Huが行う作業Opの対象である作業対象物Obが1つ以上配置され、例えば、作業場Ar(x)には、作業対象物Ob(x1)、Ob(x2)、Ob(x3)、・・・、Ob(xn)が配置されている。
作業場Arには、作業者Huが行う作業Opの対象である作業対象物Obが1つ以上配置され、例えば、作業場Ar(x)には、作業対象物Ob(x1)、Ob(x2)、Ob(x3)、・・・、Ob(xn)が配置されている。
作業対象物Obは、作業者Hu以外の存在であり、例えば、いわゆる「ワーク」であり、また、例えば、作業者Huが作業Opを行う際に用いる工具である。
作業対象物Obについて、複数の作業対象物Obの各々を区別する必要がある場合には、符号に「(1)」、「(2)」、「(3)」、・・・、「(n)」等の添え字を付して区別し、特に区別する必要がない場合は単に「作業対象物Ob」と称する。
(作業者について)
工場Faには、作業工程Prに含まれる作業Opを実行する作業者Huが1人以上存在し、例えば、作業者Hu(1)、Hu(2)、Hu(3)、・・・、Hu(n)が存在する。作業者Huは、例えば、作業者Huが被っている帽子の頭頂部などに付された作業者IDによって識別されてもよい。具体的には、工場Faに存在する作業者Hu(1)と作業者Hu(2)とは、作業者Hu(1)が被る帽子に付された作業者ID(1)と、作業者Hu(2)が被る帽子に付された作業者ID(2)とにより、各々が識別されてもよい。また、或る作業者Hu(1)を、別の作業者Hu(2)にとっての作業対象物Obとみなしてもよい。
工場Faには、作業工程Prに含まれる作業Opを実行する作業者Huが1人以上存在し、例えば、作業者Hu(1)、Hu(2)、Hu(3)、・・・、Hu(n)が存在する。作業者Huは、例えば、作業者Huが被っている帽子の頭頂部などに付された作業者IDによって識別されてもよい。具体的には、工場Faに存在する作業者Hu(1)と作業者Hu(2)とは、作業者Hu(1)が被る帽子に付された作業者ID(1)と、作業者Hu(2)が被る帽子に付された作業者ID(2)とにより、各々が識別されてもよい。また、或る作業者Hu(1)を、別の作業者Hu(2)にとっての作業対象物Obとみなしてもよい。
作業者Huについて、複数の作業者Huの各々を区別する必要がある場合には、符号に「(1)」、「(2)」、「(3)」、・・・、「(n)」等の添え字を付して区別し、特に区別する必要がない場合は単に「作業者Hu」と称する。
(機器および動作について)
工場Faは、1つ以上の機器40(1)、40(2)、40(3)、・・・40(n)を備える。機器40は、センサなどの入力デバイス41と、アクチュエータなどの出力デバイス42とを含む。
工場Faは、1つ以上の機器40(1)、40(2)、40(3)、・・・40(n)を備える。機器40は、センサなどの入力デバイス41と、アクチュエータなどの出力デバイス42とを含む。
出力デバイス42は、PLC20によって出力を制御されるデバイスである。作業者Huは、作業Opを行う際に、出力デバイス42の出力を利用してもよく、具体的には、作業者Huは、出力デバイス42が実行する動作Acを利用して、作業Opを行ってもよい。すなわち、作業者Huは、作業Opを行う際に、出力デバイス42を工具として利用してもよく、言い換えれば、出力デバイス42は、作業者Huが作業Opを行う際に作業者Huが利用する工具であってもよい。例えば、作業工程Pr(x)に含まれる作業Op(x)を作業者Huが行う際には、出力デバイス42(x)が利用されてもよく、具体的には、出力デバイス42(x)が実行する動作Ac(x)を利用して、作業者Huは作業Op(x)を行ってもよい。
入力デバイス41は、作業Opに用いられる工具(例えば、出力デバイス42、および、後述する出力デバイス42以外の器具90)、作業対象物Ob、および、作業場Arの少なくとも1つの状態を検知するセンサ(検知装置)である。例えば、入力デバイス41は、工具の消費電力、工具・作業対象物Ob等の作業者Huによる把持、工具・作業場Ar・作業対象物Ob等が備えるボタンの作業者Huによる押下、工具・作業場Ar・作業対象物Ob等が備える開閉機構の開閉などを検知する。
具体的には、入力デバイス41は、例えば電流検知センサであり、作業者Huが「作業Op(x):ネジ締め作業」を行う際に利用する「器具90(x):電動ドライバ」に流れる電流を検知してもよい。また、入力デバイス41は、例えば把持センサであり、「器具90(x):電動ドライバ」が作業者Huによって把持されたのを検知してもよい。さらに、入力デバイス41は、例えば開始/終了ボタンであり、作業者Huによる押下を検知してもよい。また、入力デバイス41は、例えば光電センサであり、工具・作業場Ar・作業対象物Ob等が備える開閉機構の開閉を検知してもよい。
入力デバイス41は、検知した状態を示す情報(以下、「検知情報Id」とも称する)を、制御ネットワーク50を介して、PLC20へと周期的に出力する。特に、入力デバイス41は、「作業Opに用いられる工具、作業対象物Ob、および、作業場Arの少なくとも1つの状態を検知した時刻(検知時刻Td)」を、検知情報Idに含めてPLC20へと周期的に出力する。
機器40について、複数の機器40の各々を区別する必要がある場合には、符号に「(1)」、「(2)」、「(3)」、・・・、「(n)」等の添え字を付して区別し、特に区別する必要がない場合は単に「機器40」と称する。同様に、入力デバイス41について、複数の入力デバイス41の各々を区別する必要がある場合には、符号に「(1)」、「(2)」、「(3)」、・・・、「(n)」等の添え字を付して区別し、特に区別する必要がない場合は単に「入力デバイス41」と称する。また、出力デバイス42について、複数の出力デバイス42の各々を区別する必要がある場合には、符号に「(1)」、「(2)」、「(3)」、・・・、「(n)」等の添え字を付して区別し、特に区別する必要がない場合は単に「出力デバイス42」と称する。
さらに、動作Acについて、複数の動作Acの各々を区別する必要がある場合には、符号に「(1)」、「(2)」、「(3)」、・・・、「(n)」等の添え字を付して区別し、特に区別する必要がない場合は単に「動作Ac」と称する。
また、「作業Op(x)に用いられる工具(例えば、出力デバイス42(x)または器具90(x))、作業対象物Ob(x)、および、作業場Ar(x)の少なくとも1つの状態」を示す検知情報Idを、特に「検知情報Id(x)」と表現することがある。
(工具について)
工場Faは、出力デバイス42に加えて、出力デバイス42以外の器具90(不図示)を備えてもよい。作業者Huは、作業Opを行う際、器具90を利用してもよく、具体的には、作業者Huは、器具90が実行する動作Acを利用して、作業Opを行ってもよい。例えば、作業工程Pr(x)に含まれる作業Op(x)を作業者Huが行う際には、器具90(x)が利用されてもよく、具体的には、器具90(x)が実行する動作Ac(x)を利用して、作業者Huは作業Op(x)を行ってもよい。一例を挙げれば、作業者Huは、「器具90(x):電動ドライバ」の実行する「動作Ac(x):回転動作」を利用して、「作業Op(x):ネジ締め作業」を行ってもよい。
工場Faは、出力デバイス42に加えて、出力デバイス42以外の器具90(不図示)を備えてもよい。作業者Huは、作業Opを行う際、器具90を利用してもよく、具体的には、作業者Huは、器具90が実行する動作Acを利用して、作業Opを行ってもよい。例えば、作業工程Pr(x)に含まれる作業Op(x)を作業者Huが行う際には、器具90(x)が利用されてもよく、具体的には、器具90(x)が実行する動作Ac(x)を利用して、作業者Huは作業Op(x)を行ってもよい。一例を挙げれば、作業者Huは、「器具90(x):電動ドライバ」の実行する「動作Ac(x):回転動作」を利用して、「作業Op(x):ネジ締め作業」を行ってもよい。
前述の通り、器具90の状態(例えば、作業者Huによって使用されているとの状態)は、入力デバイス41によって検知され、入力デバイス41は、検知した「器具90の状態」を、制御ネットワーク50を介して、PLC20へと周期的に出力する。すなわち、入力デバイス41は、「器具90の状態」を検知すると、検知した「器具90の状態」と、その「器具90の状態」を検知した時刻(検知時刻Td)とを含む検知情報Idを、PLC20へと周期的に出力する。
(作業場画像について)
作業場画像Icは、作業場Arを撮像した撮像画像であり、複数の作業場画像Icの各々は、複数の作業場Arの各々を撮像した撮像画像である。例えば、作業場画像Icは、作業場Arにおいて作業Opを行っている作業者Huを略正面から撮像した撮像画像であり、作業場画像Icは作業場Arごとに生成される撮像画像である。
作業場画像Icは、作業場Arを撮像した撮像画像であり、複数の作業場画像Icの各々は、複数の作業場Arの各々を撮像した撮像画像である。例えば、作業場画像Icは、作業場Arにおいて作業Opを行っている作業者Huを略正面から撮像した撮像画像であり、作業場画像Icは作業場Arごとに生成される撮像画像である。
複数の作業場画像Icは、各々に撮像されている作業場Arによって区別されてもよい。例えば、複数の作業場画像Icの各々と、各々の作業場画像Icに撮像されている作業場Arとを対応付けることによって、複数の作業場画像Icの各々を区別してもよい。
すなわち、作業場Ar(1)を撮像した作業場画像Icを作業場画像Ic(1)と記載し、作業場Ar(2)を撮像した作業場画像Icを作業場画像Ic(2)と記載してもよい。同様に、作業場Ar(n)を撮像した作業場画像Icを作業場画像Ic(n)と記載してもよい。
複数の作業場画像Icについて、各々に撮像されている作業場Arによって複数の作業場画像Icを互いに区別する必要がない場合には、単に「作業場画像Ic」と称する。
(全体画像について)
作業場画像Icが作業場Arごとの撮像画像であるのに対して、全体画像Iaは、複数の作業場Arが撮像されている撮像画像であり、例えば、工場Faの天井から見下ろした、工場Faの全体が撮像されている撮像画像である。
作業場画像Icが作業場Arごとの撮像画像であるのに対して、全体画像Iaは、複数の作業場Arが撮像されている撮像画像であり、例えば、工場Faの天井から見下ろした、工場Faの全体が撮像されている撮像画像である。
以下では先ず、図2を用いて、情報処理装置10を含む制御システム1等の概要について説明する。
(情報処理装置を含むシステムの全体概要について)
図2は、情報処理装置10を含む制御システム1等の全体概要を示す図である。これまで説明してきた環境について、情報処理装置10は、作業場Arを撮像した作業場画像Icから、作業場画像Icに撮像されている作業者Huが行っている作業Opの内容を高精度に推定する。
図2は、情報処理装置10を含む制御システム1等の全体概要を示す図である。これまで説明してきた環境について、情報処理装置10は、作業場Arを撮像した作業場画像Icから、作業場画像Icに撮像されている作業者Huが行っている作業Opの内容を高精度に推定する。
セルカメラ30は、作業場Ar(つまり、セル)に設置され、作業場画像Icを生成する。例えば、作業場Arごとにセルカメラ30が設置され、複数のセルカメラ30の各々は、作業場Arごとに、作業場Arにおいて作業Opを行っている作業者Huを略正面から撮像可能な位置に設置される。セルカメラ30は、生成した作業場画像Icを、情報処理装置10へと出力し、特に、作業場Arを撮像した時刻である撮像時刻Tpと共に、作業場画像Icを、情報処理装置10へと出力する。
工場Faにおいて作業場Arごとに設置されたセルカメラ30を互いに区別する場合、複数のセルカメラ30の各々と、各々のセルカメラ30が設置されている作業場Arとを対応付けることによって、複数のセルカメラ30の各々を区別してもよい。例えば、作業場Ar(1)に設置されているセルカメラ30をセルカメラ30(1)と記載し、作業場Ar(2)に設置されているセルカメラ30をセルカメラ30(2)と記載してもよい。同様に、作業場Ar(n)に設置されているセルカメラ30をセルカメラ30(n)と記載してもよい。
天井カメラ80は、例えば工場Faの天井に設置され、複数の作業場Arを斜め上から見下ろす全体画像Iaを生成し、例えば、1台の天井カメラ80によって工場Faの全体を撮像した全体画像Iaを生成する。ただし、天井カメラ80が工場Faの天井に1台設置されることは必須ではなく、工場Faの天井に設置された複数の天井カメラ80の各々が、工場Fa内の複数の作業場Arを撮像した全体画像Iaを生成してもよい。つまり、天井カメラ80は、複数の作業場Arを撮像した全体画像Iaを生成できればよい。
以下の説明においては、工場Faの天井に、広域撮像カメラである天井カメラ80を1台設置し、1台の天井カメラ80が、工場Faの全体を俯瞰して撮像した全体画像Iaを生成する例を説明する。天井カメラ80は、生成した全体画像Iaを、情報処理装置10へと出力し、特に、工場Faの全体を撮像した時刻(つまり、全体画像Iaを生成した時刻)である全体時刻Taと共に、全体画像Iaを、情報処理装置10へと出力する。
(作業場画像に対する画像解析による、作業内容の予測)
情報処理装置10は、制御システム1に含まれ、例えばUSB(Universal Serial Bus)ケーブルを介して、セルカメラ30と通信可能に接続されている。情報処理装置10は、セルカメラ30から、作業場Arを撮像した作業場画像Icを取得し、取得した作業場画像Icに対し画像解析を実行して、作業場画像Icに撮像されている作業者Huが作業対象物Obについて行っている作業Opの内容を予測する。情報処理装置10は、HOI(Human Object Interaction)検出アルゴリズムを用いて、作業場画像Icから、「作業場画像Icに撮像されている作業者Huが作業対象物Obについて行っている作業Opの内容」を予測する。特に、情報処理装置10は、セルカメラ30から、作業場画像Icと共に、作業場画像Icが生成された時刻である撮像時刻Tpを取得し、取得した作業場画像Icと撮像時刻Tpとから、以下の予測を実行する。すなわち、情報処理装置10は、「撮像時刻Tpにおいて、作業場画像Icに撮像されている作業者Huが、作業場Arで、作業対象物Obについて行っている作業Opの内容」を予測する。作業場画像Icから予測される「作業者Huが作業対象物Obについて行っている作業Opの内容」を、特に、「撮像時刻Tpにおいて、作業者Huが、作業場Arで作業対象物Obについて行っている作業Opの内容」を、第一予測Pfとも称する。
情報処理装置10は、制御システム1に含まれ、例えばUSB(Universal Serial Bus)ケーブルを介して、セルカメラ30と通信可能に接続されている。情報処理装置10は、セルカメラ30から、作業場Arを撮像した作業場画像Icを取得し、取得した作業場画像Icに対し画像解析を実行して、作業場画像Icに撮像されている作業者Huが作業対象物Obについて行っている作業Opの内容を予測する。情報処理装置10は、HOI(Human Object Interaction)検出アルゴリズムを用いて、作業場画像Icから、「作業場画像Icに撮像されている作業者Huが作業対象物Obについて行っている作業Opの内容」を予測する。特に、情報処理装置10は、セルカメラ30から、作業場画像Icと共に、作業場画像Icが生成された時刻である撮像時刻Tpを取得し、取得した作業場画像Icと撮像時刻Tpとから、以下の予測を実行する。すなわち、情報処理装置10は、「撮像時刻Tpにおいて、作業場画像Icに撮像されている作業者Huが、作業場Arで、作業対象物Obについて行っている作業Opの内容」を予測する。作業場画像Icから予測される「作業者Huが作業対象物Obについて行っている作業Opの内容」を、特に、「撮像時刻Tpにおいて、作業者Huが、作業場Arで作業対象物Obについて行っている作業Opの内容」を、第一予測Pfとも称する。
例えば、情報処理装置10は、作業場Ar(x)を撮像した作業場画像Ic(x)に対し画像解析を実行して、作業場Ar(x)において作業者Hu(x)が作業対象物Ob(x)について行っている作業Op(x)の内容を予測する。特に、情報処理装置10は、作業場画像Ic(x)から、「作業場画像Ic(x)が撮像された撮像時刻Tpにおいて、作業者Hu(x)が、作業場Ar(x)で作業対象物Ob(x)について行っている作業Op(x)の内容」を予測する。作業場画像Ic(x)から予測される、「作業場画像Ic(x)が撮像された撮像時刻Tpにおいて、作業者Hu(x)が、作業場Ar(x)で作業対象物Ob(x)について行っている作業Op(x)の内容」を、特に「第一予測Pf(x)」と称することがある。
(全体画像に対する画像解析による、作業者の存否の予測)
情報処理装置10は、制御システム1に含まれ、例えばUSB(Universal Serial Bus)ケーブルを介して、天井カメラ80と通信可能に接続されている。情報処理装置10は、天井カメラ80から、工場Faの全体を俯瞰して撮像した全体画像Iaを取得し、取得した全体画像Iaに対し画像解析を実行して、作業者Huが作業場Arに居るかを予測する。情報処理装置10は、例えばYOLOなどの動線検出アルゴリズム(物体検出アルゴリズム)を利用して、全体画像Iaから、「全体画像Iaに撮像されている作業場Arに、作業者Huが居るか」を予測する。特に、情報処理装置10は、天井カメラ80から、全体画像Iaと共に、全体画像Iaが生成された時刻である全体時刻Taを取得し、取得した全体画像Iaと全体時刻Taとから、以下の予測を実行する。すなわち、情報処理装置10は、「全体時刻Taにおいて、作業者Huが作業場Ar(特に、作業場画像Icに撮像されている作業場Ar)に居るか」を予測する。
情報処理装置10は、制御システム1に含まれ、例えばUSB(Universal Serial Bus)ケーブルを介して、天井カメラ80と通信可能に接続されている。情報処理装置10は、天井カメラ80から、工場Faの全体を俯瞰して撮像した全体画像Iaを取得し、取得した全体画像Iaに対し画像解析を実行して、作業者Huが作業場Arに居るかを予測する。情報処理装置10は、例えばYOLOなどの動線検出アルゴリズム(物体検出アルゴリズム)を利用して、全体画像Iaから、「全体画像Iaに撮像されている作業場Arに、作業者Huが居るか」を予測する。特に、情報処理装置10は、天井カメラ80から、全体画像Iaと共に、全体画像Iaが生成された時刻である全体時刻Taを取得し、取得した全体画像Iaと全体時刻Taとから、以下の予測を実行する。すなわち、情報処理装置10は、「全体時刻Taにおいて、作業者Huが作業場Ar(特に、作業場画像Icに撮像されている作業場Ar)に居るか」を予測する。
したがって、情報処理装置10は、「撮像時刻Tpに対応する全体時刻Taにおいて、作業場Ar(特に、作業場画像Icに撮像されている作業場Ar)に作業者Huが居るか否か」を予測することができる。
全体画像Iaから予測される「作業場Arにおける作業者Huの存否」を、特に、「撮像時刻Tpに対応する全体時刻Taにおいて、作業場Arに作業者Huが居るか否か」の予測を、存否予測Paとも称する。
例えば、情報処理装置10は、「セルカメラ30(x)が生成した作業場画像Ic(x)に撮像されている作業場Ar(x)に作業者Hu(x)が居るか」を、天井カメラ80が生成した全体画像Iaに対する画像解析によって予測する。特に、情報処理装置10は、全体画像Iaから、「『作業場画像Ic(x)が撮像された撮像時刻Tp』に対応する全体時刻Taにおいて、作業者Hu(x)が、作業場Ar(x)に居るか」を予測する。全体画像Iaから予測される、「『作業場画像Ic(x)が撮像された撮像時刻Tp』に対応する全体時刻Taにおいて、作業者Hu(x)が作業場Ar(x)に居るか」の予測を、特に「存否予測Pa(x)」と称することがある。
(検知情報を用いた、作業内容の予測)
また、情報処理装置10は、PLC(Programmable Logic Controller)20から、PLC20によって動作Acを制御される機器40が実行した動作Acの内容および結果を示す動作結果Laから生成された工程情報Ipを取得する。工程情報Ipには、例えば、「機器40が動作Acを実行した時刻」、および、「機器40による動作Acの実行が、入力デバイス41等によって検知された時刻」の少なくとも一方が、検知時刻Tdとして含まれている。
また、情報処理装置10は、PLC(Programmable Logic Controller)20から、PLC20によって動作Acを制御される機器40が実行した動作Acの内容および結果を示す動作結果Laから生成された工程情報Ipを取得する。工程情報Ipには、例えば、「機器40が動作Acを実行した時刻」、および、「機器40による動作Acの実行が、入力デバイス41等によって検知された時刻」の少なくとも一方が、検知時刻Tdとして含まれている。
情報処理装置10は、PLC20から取得する工程情報Ipによって、出力デバイス42の状態(例えば、動作Acの内容および結果を含む動作状態)を把握し、把握した状態から、作業者Huが出力デバイス42を用いて行っている作業Opの内容を予測する。特に、情報処理装置10は、検知時刻Tdを含む工程情報Ipから、「『撮像時刻Tpに対応する検知時刻Td』における出力デバイス42の状態」を把握する。そして、情報処理装置10は、把握した「『撮像時刻Tpに対応する検知時刻Td』における出力デバイス42の状態」から、「『撮像時刻Tpに対応する検知時刻Td』において、作業者Huが出力デバイス42を用いて行っている作業Opの内容」を予測する。
ただし、PLC20が、機器40の出力等から出力デバイス42の状態を把握し、把握した状態から作業者Huが出力デバイス42を用いて行っている作業Opの内容を予測してもよい。そして、PLC20は、予測した作業Opの内容を含む工程情報Ipを、情報処理装置10に出力してもよい。すなわち、出力デバイス42の状態から作業者Huが出力デバイス42を用いて行っている作業Opの内容を予測するのは、PLC20であっても、情報処理装置10であってもよい。情報処理装置10は、出力デバイス42の状態から予測される「作業者Huが出力デバイス42を用いて行っている作業Opの内容」を取得または生成できればよい。
ここで、工程情報Ipは、「PLC20の制御する機器40の出力、および、PLC20による出力デバイス42に対する制御内容」等から生成される、出力デバイス42等の状態を示す情報である。そのため、PLC20は、「出力デバイス42からフィードバックとして取得する出力デバイス42の出力、および、出力デバイス42に対する制御内容」等から、出力デバイス42の状態を検知する検知装置と捉えることもできる。また、工程情報Ipは、「作業Opに用いられる工具(例えば、出力デバイス42、および、器具90)、作業対象物Ob、および、作業場Arの少なくとも1つの状態」を示す情報である「検知情報Id」の一種と捉えることもできる。
さらに、情報処理装置10は、PLC20から、入力デバイス41によって検知された「作業Opに用いられる工具(例えば、出力デバイス42、および、器具90)、作業対象物Ob、および、作業場Arの少なくとも1つの状態」を示す検知情報Idを取得する。
なお、情報処理装置10は、PLC20を介さずに、入力デバイス41から直接、入力デバイス41の検知した状態を示す検知情報Idを取得してもよい。
検知情報Idには、入力デバイス41が「作業Opに用いられる工具、作業対象物Ob、および、作業場Arの少なくとも1つの状態」を検知した時刻である検知時刻Tdが含まれる。
情報処理装置10は、PLC20から取得する検知情報Idによって、作業Opに用いられる工具、作業対象物Ob、および、作業場Arの少なくとも1つの状態を把握し、把握した状態から、作業者Huが行っている作業Opの内容を予測する。
ただし、入力デバイス41から取得した検知情報Idによって、工具、作業対象物Ob、および、作業場Arの少なくとも1つの状態を把握し、把握した状態から作業者Huが行っている作業Opの内容を予測するのは、PLC20であってもよい。そして、PLC20が、予測した作業Opの内容を含む工程情報Ipを、情報処理装置10に出力してもよい。すなわち、工具、作業対象物Ob、および、作業場Arの少なくとも1つの状態から作業者Huが行っている作業Opの内容を予測するのは、PLC20であっても、情報処理装置10であってもよい。情報処理装置10は、工具、作業対象物Ob、および、作業場Arの少なくとも1つの状態から予測される「作業者Huが行っている作業Opの内容」を取得または生成できればよい。
すなわち、情報処理装置10は、PLC20から取得する、「作業Opに用いられる工具、作業対象物Ob、および、作業場Arの少なくとも1つの状態」を示す検知情報Id(工程情報Ipを含む)を取得する。情報処理装置10は、取得した検知情報Idから、「作業者Huが行っている作業Opの内容」を予測し、特に、「『撮像時刻Tpに対応する検知時刻Td』において、作業者Huが行っている作業Opの内容」を予測する。ただし、情報処理装置10は、PLC20が検知情報Idから予測した「作業者Huが行っている作業Opの内容」を、検知情報Idと共に、または、検知情報Idに代えて、PLC20から取得してもよい。例えば、情報処理装置10は、「『撮像時刻Tpに対応する検知時刻Td』において、作業者Huが行っている作業Opの内容」を、検知情報Idと共に、または、検知情報Idに代えて、PLC20から取得してもよい。
検知情報Id(工程情報Ipを含む)から予測される「作業者Huが行っている作業Opの内容」を、特に、「『撮像時刻Tpに対応する検知時刻Td』において、作業者Huが行っている作業Opの内容」を、作業予測Poとも称する。
例えば、情報処理装置10は、作業場Ar(x)において作業者Hu(x)が行っている作業Op(x)の内容を、以下の検知情報Id(x)(工程情報Ip(x)を含む)から予測する。すなわち、情報処理装置10は、「作業場Ar(x)に備えられた工具、作業場Ar(x)に配置されている作業対象物Ob(x)、および、作業場Ar(x)の少なくとも1つの状態」を示す検知情報Id(x)から、作業Op(x)の内容を予測する。「作業場Ar(x)に備えられた工具(例えば、出力デバイス42(x)、および、器具90(x)の少なくとも一方)」は、作業者Hu(x)が作業Op(x)を行う際に用いる工具である。特に、情報処理装置10は、工程情報Ip(x)から、「『撮像時刻Tpに対応する検知時刻Td』において、作業者Hu(x)が、作業場Ar(x)で作業対象物Ob(x)について行っている作業Op(x)の内容」を予測する。検知情報Id(x)(工程情報Ip(x)を含む)から予測される「『撮像時刻Tpに対応する検知時刻Td』において、作業者Hu(x)が行っている作業Op(x)の内容」を、「作業予測Po(x)」と称することがある。
(予測した作業内容の検証と、推定結果の出力)
情報処理装置10は、作業場画像Icから予測した「作業者Huが作業対象物Obについて行っている作業Opの内容」を、以下の2つの予測の少なくとも一方を用いて、検証する。すなわち、情報処理装置10は、作業場画像Icから予測した内容を、全体画像Iaから予測した「作業者Huの存否」の予測、および、検知情報Idから予測された「作業者Huが行っている作業Opの内容」の少なくとも一方を用いて、検証する。つまり、情報処理装置10は、第一予測Pfの正否を、存否予測Paおよび作業予測Poの少なくとも一方を用いて検証し、特に、第一予測Pf(x)の正否を、存否予測Pa(x)および作業予測Po(x)の少なくとも一方を用いて検証する。
情報処理装置10は、作業場画像Icから予測した「作業者Huが作業対象物Obについて行っている作業Opの内容」を、以下の2つの予測の少なくとも一方を用いて、検証する。すなわち、情報処理装置10は、作業場画像Icから予測した内容を、全体画像Iaから予測した「作業者Huの存否」の予測、および、検知情報Idから予測された「作業者Huが行っている作業Opの内容」の少なくとも一方を用いて、検証する。つまり、情報処理装置10は、第一予測Pfの正否を、存否予測Paおよび作業予測Poの少なくとも一方を用いて検証し、特に、第一予測Pf(x)の正否を、存否予測Pa(x)および作業予測Po(x)の少なくとも一方を用いて検証する。
第一予測Pf(x)は、情報処理装置10が作業場画像Ic(x)から予測した、「作業場Ar(x)において作業者Hu(x)が作業対象物Ob(x)について行っている作業Op(x)の内容」の予測である。「第一予測Pf(x)」は、例えば、作業場画像Ic(x)から予測された、「作業場画像Ic(x)が撮像された撮像時刻Tpにおいて、作業者Hu(x)が、作業場Ar(x)で作業対象物Ob(x)について行っている作業Op(x)の内容」である。
存否予測Pa(x)は、情報処理装置10が全体画像Iaから予測した、「作業場Ar(x)に作業者Huが存在するか否か」の予測である。存否予測Pa(x)は、例えば、全体画像Iaから予測された、「『作業場画像Ic(x)が撮像された撮像時刻Tp』に対応する全体時刻Taにおいて、作業者Hu(x)が作業場Ar(x)に居るか」の予測である。
作業予測Po(x)は、情報処理装置10が検知情報Id(x)から予測した、「作業場Ar(x)において作業者Hu(x)が行っている作業Op(x)の内容」の予測である。作業予測Po(x)は、例えば、検知情報Id(x)から予測された、「『撮像時刻Tpに対応する検知時刻Td』において、作業者Hu(x)が作業場Ar(x)で行っている作業Op(x)の内容」である。
例えば、情報処理装置10(特に、後述する判定部150)は、存否予測Pa(x)において、「作業場Ar(x)に作業者Huが存在する」と予測されていると、「第一予測Pf(x)は正しい」と判定する。より具体的には、情報処理装置10は、存否予測Pa(x)として、「『撮像時刻Tpに対応する全体時刻Ta』において、作業者Hu(x)が作業場Ar(x)に居る」と予測されていると、「第一予測Pf(x)は正しい」と判定する。そして、情報処理装置10(特に、後述する推定部160)は、判定部150によって正しいと判定された第一予測Pf(x)を、推定結果として、外部へと出力する。
例えば、情報処理装置10(特に、後述する判定部150)は、作業予測Po(x)における作業Op(x)と第一予測Pf(x)における作業Op(x)とが一致すると、「第一予測Pf(x)は正しい」と判定する。より具体的には、情報処理装置10は、存否予測Pa(x)における「『撮像時刻Tpに対応する検知時刻Td』での作業Op(x)の内容」と、第一予測Pf(x)における「撮像時刻Tpでの作業Op(x)の内容」とが一致しているか否かを確認する。そして、情報処理装置10は、両者が一致していることを確認すると、「第一予測Pf(x)は正しい」と判定する。そして、情報処理装置10(特に、後述する推定部160)は、判定部150によって正しいと判定された第一予測Pf(x)を、推定結果として、外部へと出力する。
例えば、情報処理装置10(特に、後述する判定部150)は、存否予測Pa(x)において「作業場Ar(x)に作業者Huが存在する」と予測された場合に、作業予測Po(x)と第一予測Pf(x)とが一致するかを確認する。より具体的には、情報処理装置10は、存否予測Pa(x)として、「『撮像時刻Tpに対応する全体時刻Ta』において、作業者Hu(x)が作業場Ar(x)に居る」と予測された場合に、作業予測Po(x)と第一予測Pf(x)との一致を確認する。情報処理装置10は、存否予測Pa(x)における「撮像時刻Tpに対応する検知時刻Tdでの作業Op(x)の内容」と、第一予測Pf(x)における「撮像時刻Tpでの作業Op(x)の内容」との一致を確認すると、第一予測Pf(x)は正しいと判定する。そして、情報処理装置10(特に、後述する推定部160)は、判定部150によって正しいと判定された第一予測Pf(x)を、推定結果として、外部へと出力する。
(マスタスレーブ制御システムについて)
制御システム1において、工場Faにおける作業工程Prを実施するのに用いられる機器40は、ラインコントローラとしてのPLC20により制御される。すなわち、PLC20をマスタとし、複数の機器40の各々をスレーブとするマスタスレーブ制御システムとしての制御システム1が構築され、複数の機器40の各々はネットワーク(制御ネットワーク50)を介してPLC20に通信可能に接続されている。PLC20は、制御ネットワーク50を介したデータ伝送を管理しているという意味で「マスタ」と呼ばれる。「マスタ」および「スレーブ」は、制御ネットワーク50上のデータ伝送の制御機能に着目して定義されるものであり、各装置間でどのような情報が送受信されるかについては、特に限定されない。
制御システム1において、工場Faにおける作業工程Prを実施するのに用いられる機器40は、ラインコントローラとしてのPLC20により制御される。すなわち、PLC20をマスタとし、複数の機器40の各々をスレーブとするマスタスレーブ制御システムとしての制御システム1が構築され、複数の機器40の各々はネットワーク(制御ネットワーク50)を介してPLC20に通信可能に接続されている。PLC20は、制御ネットワーク50を介したデータ伝送を管理しているという意味で「マスタ」と呼ばれる。「マスタ」および「スレーブ」は、制御ネットワーク50上のデータ伝送の制御機能に着目して定義されるものであり、各装置間でどのような情報が送受信されるかについては、特に限定されない。
PLC20は、制御システム1全体を制御する制御装置(コントローラ)であり、複数の機器40の各々と通信可能に接続されている。PLC20は、入力デバイス41(計測デバイス)としての複数の機器40の各々からの情報を入力データとして取得する。PLC20は、予め組み込まれたユーザプログラムに従って、取得した入力データを用いた演算処理を実行する。PLC20は、前記演算処理を実行して、制御システム1に対する制御内容を決定し、例えば、アクチュエータなどの出力デバイス42としての複数の機器40の各々への制御内容を決定する。そして、PLC20は、決定した制御内容に対応する制御データを、複数の機器40(特に、出力デバイス42)の各々へと出力する。PLC20は、複数の機器40(具体的には、入力デバイス41)の各々からの入力データの取得と、複数の機器40(具体的には、出力デバイス42)の各々への制御データの取得とを、所定の周期(制御周期)で繰り返し実行する。PLC20には、例えば、不図示の表示部および操作部が接続されてもよい。表示部は、画像を表示可能な液晶パネル等で構成され、また、操作部は、典型的には、タッチパネル、キーボード、マウス等で構成される。
機器40は、PLC20をマスタとするマスタスレーブ制御システムとしての制御システム1におけるスレーブである。機器40は、所定の制御周期ごとに繰り返し入力データをPLC20へと送信する入力デバイス41であり、または、所定の制御周期ごとに繰り返し制御データをPLC20から受信し、受信した制御データにしたがって動作する出力デバイス42である。
機器40(特に、入力デバイス41)は、例えば、入力データとして、PLC20に検知結果等を送信するセンサである。例えば、入力デバイス41は、光電センサであってもよく、また、読み取り結果を送信するバーコードリーダであってもよく、さらに、検査結果を送信する検査機(テスター)であってもよい。
機器40(具体的には、出力デバイス42)は、ネジ締め、ピッキング等を実行する出力デバイスとしてのロボット等であってもよいし、各種のアクチュエータであってもよい。
また、機器40は、複数の入力デバイス41が接続されたPT(Programmable Terminal)であってもよい。
制御ネットワーク50は、PLC20が受信し、またはPLC20が送信する各種データを伝送し、典型的には、各種の産業用イーサネット(登録商標)を用いることができ、フィールドネットワークと称されることもある。産業用イーサネット(登録商標)としては、たとえば、EtherCAT(登録商標)、Profinet IRT、MECHATROLINK(登録商標)-III、Powerlink、SERCOS(登録商標)-III、CIP Motionなどが知られており、これらのうちのいずれを採用してもよい。さらに、産業用イーサネット(登録商標)以外のフィールドネットワークを用いてもよい。たとえば、モーション制御を行わない場合であれば、DeviceNet、CompoNet/IP(登録商標)などを用いてもよい。
本実施形態では、制御ネットワーク50上をデータフレームが順次転送されることで、PLC20(マスタ)と機器40(スレーブ)との間でデータが送受信される制御システム1について説明を行う。すなわち、制御ネットワーク50上をデータフレームが所定の制御周期で順次転送されることで、PLC20と機器40との間でデータが制御周期ごとに繰り返し送受信される。制御ネットワーク50上をデータフレームが順次転送されることで、複数の機器40の間で、つまり、複数のスレーブ間で、データが送受信されてもよい。
情報処理装置10は、制御システム1に含まれるが、情報処理装置10は、制御システム1におけるスレーブでなくともよい。
機器40をスレーブとするマスタスレーブ制御システムである制御システム1において、マスタであるPLC20は、例えば所定の制御周期ごとに繰り返し、スレーブである機器40から、動作結果Laおよび検知情報Idを受信する。
(工程情報について)
機器40をスレーブとするマスタスレーブ制御システムである制御システム1において、マスタであるPLC20は、例えば所定の制御周期ごとに繰り返し、スレーブである機器40から、動作結果Laを受信する。動作結果Laは、「機器40の実行した動作Acの内容および結果」を示す情報である。すなわち、機器40は、作業工程Prの実施に際して実際に実行した動作Acの内容および結果を示す動作結果Laを、所定の周期で繰り返し、PLC20へと送信する。例えば、機器40(x)は、作業工程Pr(x)の実施の際に実行した動作Ac(x)の内容および結果を示す動作結果La(x)を、制御周期で繰り返し、PLC20へと送信する。
機器40をスレーブとするマスタスレーブ制御システムである制御システム1において、マスタであるPLC20は、例えば所定の制御周期ごとに繰り返し、スレーブである機器40から、動作結果Laを受信する。動作結果Laは、「機器40の実行した動作Acの内容および結果」を示す情報である。すなわち、機器40は、作業工程Prの実施に際して実際に実行した動作Acの内容および結果を示す動作結果Laを、所定の周期で繰り返し、PLC20へと送信する。例えば、機器40(x)は、作業工程Pr(x)の実施の際に実行した動作Ac(x)の内容および結果を示す動作結果La(x)を、制御周期で繰り返し、PLC20へと送信する。
PLC20は、例えば、入力デバイス41(計測デバイス)としての機器40が実行した計測動作の結果である計測結果を、機器40の動作結果Laとして取得する。また、機器40が検査機である場合、PLC20は、機器40が実行した検査動作の結果を、例えば、「検査基準を満たした、または、満たさなかった」といった検査結果を、機器40の動作結果Laとして取得する。さらに、PLC20は、例えば、出力デバイス42としての機器40が実行した出力動作の結果を、機器40の動作結果Laとして取得する。機器40がネジ締め、ピッキング等を実行するロボットである場合、PLC20は、ネジ締め回数、ピッキング結果(ピッキングの成功またはピッキングエラー)等の動作結果Laを、機器40の動作結果Laとして取得する。
PLC20は、作業工程Prの実施に際して機器40が実際に実行した動作Acの内容および結果を示す動作結果Laを、機器40から所定の周期で繰り返し受信し、受信した動作結果Laを、工程情報Ipとして情報処理装置10へと送信し、つまり転送する。また、PLC20は、機器40から所定の周期で繰り返し受信した動作結果Laを用いて生成した情報を、工程情報Ipとして情報処理装置10へ送信する。
さらに、PLC20は、機器40から所定の周期で繰り返し受信した動作結果Laを、工程情報Ipとして、制御システム1の外部に送信してもよい。例えば、PLC20は、機器40から所定の周期で繰り返し受信した動作結果Laを、工程情報Ipとして、MES(Manufacturin g Execution System、製造実行システム)などに接続した、図2に示す社内LAN(Local Area Network)に送信してもよい。
情報処理装置10は、PLC20から取得する工程情報Ip(動作結果La)から、作業工程Prの実施に際し機器40が実行した動作Acの動作開始時刻Tms、動作完了時刻Tme、動作期間Daを特定する。そして、情報処理装置10は、特定した動作開始時刻Tms、動作完了時刻Tme、動作期間Da、および、動作Acに対応する所定の動作基準Saを用いて、動作Acに対する種々の判定を実行する。
しかしながら、工程情報Ipに含まれる動作結果La(特に、動作Ac)に対する上述の判定は、PLC20が実行してもよく、PLC20は、上述の判定の結果を、工程情報Ipに含めて、または、工程情報Ipに代えて、情報処理装置10へと送信してもよい。
上述の説明において、動作開始時刻Tmsとは、作業工程Prに用いられる機器40が、作業工程Prの実施に際して、動作Acの実行を開始した時点であり、動作完了時刻Tmeとは、動作Acの実行を完了した時点である。動作期間Daは、動作開始時刻Tmsから動作完了時刻Tmeまでの期間である。
前述の通り、工程情報Ipは、「作業Opに用いられる工具(特に、出力デバイス42)の状態」を示す情報と捉えることもできる。工程情報Ipは、例えば、「『撮像時刻Tpに対応する検知時刻Td』における、作業Opに用いられる工具(特に、出力デバイス42)の状態」を示す情報と捉えることもできる。そのため、工程情報Ipは、「作業Opに用いられる工具(例えば、出力デバイス42、および、器具90)、作業対象物Ob、および、作業場Arの少なくとも1つの状態」を示す検知情報Idの一種と理解することができる。
(検知情報について)
制御システム1において、PLC20は、例えば所定の制御周期ごとに繰り返し、スレーブである機器40(特に、入力デバイス41)から、検知情報Idを受信する。検知情報Idは、入力デバイス41が検知した「作業Opに用いられる工具(例えば、出力デバイス42、および、後述する出力デバイス42以外の器具90)、作業対象物Ob、および、作業場Arの少なくとも1つの状態」を示す情報である。すなわち、機器40(特に、入力デバイス41)は、「作業者Huによって作業Opに用いられる工具、作業対象物Ob、および、作業場Arの少なくとも1つの状態」を、所定の周期で繰り返し、PLC20へと送信する。検知情報Idには、入力デバイス41が「作業Opに用いられる工具、作業対象物Ob、および、作業場Arの少なくとも1つの状態」を検知した時刻(すなわち、検知時刻Td)を示す情報が含まれる。
制御システム1において、PLC20は、例えば所定の制御周期ごとに繰り返し、スレーブである機器40(特に、入力デバイス41)から、検知情報Idを受信する。検知情報Idは、入力デバイス41が検知した「作業Opに用いられる工具(例えば、出力デバイス42、および、後述する出力デバイス42以外の器具90)、作業対象物Ob、および、作業場Arの少なくとも1つの状態」を示す情報である。すなわち、機器40(特に、入力デバイス41)は、「作業者Huによって作業Opに用いられる工具、作業対象物Ob、および、作業場Arの少なくとも1つの状態」を、所定の周期で繰り返し、PLC20へと送信する。検知情報Idには、入力デバイス41が「作業Opに用いられる工具、作業対象物Ob、および、作業場Arの少なくとも1つの状態」を検知した時刻(すなわち、検知時刻Td)を示す情報が含まれる。
PLC20は、例えば、入力デバイス41(y)としての機器40(y)から、器具90(x)に流れる電流の大きさ(器具90(x)の消費電力等)を示す情報を、器具90(x)についての検知情報Id(x)として、取得する。
PLC20は、例えば、入力デバイス41(y)としての機器40(y)から、器具90(x)が作業者Huによって把持されたか否かを示す情報を、器具90(x)についての検知情報Id(x)として、取得する。
PLC20は、例えば、入力デバイス41(y)としての機器40(y)から、作業対象物Ob(x)が備える開閉機構の開閉を示す情報を、作業対象物Ob(x)についての検知情報Id(x)として、取得する。
PLC20は、例えば、入力デバイス41(y)としての機器40(y)から、作業対象物Ob(x)が備えるボタンが押下されたか否かを示す情報を、作業対象物Ob(x)についての検知情報Id(x)として、取得する。
PLC20は、例えば、入力デバイス41(y)としての機器40(y)から、作業場Ar(x)が備える開閉機構の開閉を示す情報を、作業場Ar(x)についての検知情報Id(x)として、取得する。
PLC20は、例えば、入力デバイス41(y)としての機器40(y)から、作業場Ar(x)が備えるボタンが押下されたか否かを示す情報を、作業場Ar(x)についての検知情報Id(x)として、取得する。
PLC20は、検知情報Idを入力デバイス41から所定の周期で繰り返し受信し、受信した検知情報Idを、情報処理装置10へと送信し、つまり、転送する。
さらに、PLC20は、入力デバイス41から所定の周期で繰り返し受信した検知情報Idを、工程情報Ipと同様に、制御システム1の外部に送信してもよい。例えば、PLC20は、入力デバイス41から所定の周期で繰り返し受信した検知情報Idを、MES(Manufacturing Execution System、製造実行システム)などに接続した、図2に示す社内LAN(Local Area Network)に送信してもよい。
情報処理装置10は、PLC20から取得する検知情報Idから、「作業者Huによって作業Opに用いられる工具、作業対象物Ob、および、作業場Arの少なくとも1つの状態」と、入力デバイス41がその状態を検知した時刻である検知時刻Tdを特定する。そして、情報処理装置10は、特定した検知時刻Tdと、「作業者Huによって作業Opに用いられる工具、作業対象物Ob、および、作業場Arの少なくとも1つの状態」とから、検知時刻Tdにおいて作業者Huが行っている作業Opの内容を予測する。つまり、情報処理装置10は、PLC20から取得する検知情報Idから、検知時刻Tdにおいて作業者Huが行っている作業Opの内容を予測する。
しかしながら、検知情報Idから、検知時刻Tdにおいて作業者Huが行っている作業Opの内容を予測する処理は、PLC20が実行してもよい。その場合、PLC20は、予測結果を、検知情報Idに含めて、または、検知情報Idに代えて、情報処理装置10へと送信してもよい。
(マスタスレーブ制御システム以外のシステムおよび装置について)
図2には、マスタスレーブ制御システムとしての制御システム1に加えて、社内LANシステム、他ネットワークシステム等が示されている。社内LANは、MESとも称される工程情報DB(Database)等に接続している。工程情報DBには、「作業工程Prの実施に用いられる機器40が実行すべき標準的な動作」を示す情報が、動作基準Saとして格納されている。
図2には、マスタスレーブ制御システムとしての制御システム1に加えて、社内LANシステム、他ネットワークシステム等が示されている。社内LANは、MESとも称される工程情報DB(Database)等に接続している。工程情報DBには、「作業工程Prの実施に用いられる機器40が実行すべき標準的な動作」を示す情報が、動作基準Saとして格納されている。
また、図2に示す例では、MESとしての工程情報DBに、工場Faにおいて発生した各種のイベントを監視し、管理するイベント管理装置60が、社内LANを介して接続している。ただし、イベント管理装置60が社内LANを介して工程情報DBに接続していることは必須ではなく、イベント管理装置60は設けなくてもよい。
さらに、工程情報DBには、社内LANを介して、PLC20が接続している。図示はしていないが、工程情報DBと情報処理装置10とは接続されていてもよい。また、社内LANには、MESに加えて、不図示のERP(Enterprise Resources Planning)、WMS(Warehouse Management System)等が接続されていてもよい。
図2において、工程情報DBには、制御ネットワーク50とも社内LANとも異なる「他ネットワーク」を介して、動画保存サーバ等が接続されている。動画保存サーバ等には、他ネットワークを介して情報処理装置10が接続されており、情報処理装置10から送信された作業場画像Ic、全体画像Ia、情報処理装置10が推定した作業Opの内容、および、支援情報などが動画保存サーバ等に格納される。また、動画保存サーバ等には、PC(Personal Computer)等によって実現される外部装置70が接続される。外部装置70は、例えば、作業場画像Ic、全体画像Ia、情報処理装置10が推定した作業Opの内容、および、支援情報などを表示し、工程情報Ip等の可視化を実行する。すなわち、外部装置70は、作業工程Prの改善に必要な情報を一覧表示し、ボトルネックとなっている作業工程Pr、作業工程Prに発生したエラーの日時等を示す情報を、対応する作業場画像Icと対応付けて表示する。
セルカメラ30は、前述の通り、作業場Arを撮像して作業場画像Icを生成し、生成した作業場画像Icを、例えば例えばUSB(Universal Serial Bus)ケーブルである通信ケーブルを介して、情報処理装置10へと送信する。
また、天井カメラ80は、工場Faの全体を俯瞰して撮像して全体画像Iaを生成し、生成した全体画像Iaを、例えば例えばUSBケーブルである通信ケーブルを介して、情報処理装置10へと送信する。
情報処理装置10は、例えば、PC等によって実現され、PLC20から取得する工程情報Ipと、セルカメラ30から取得する作業場画像Icとを組み合わせて、両者の効率的な利用を可能とするデータ抽出装置であってもよい。情報処理装置10は、「工場Faにおける複数の機器40の実際の動作Acの内容および結果を示す動作結果La」を含む工程情報Ipを、「作業場画像Ic」および「作業場画像Icから推定した作業Opの内容」と組み合わせることで、作業工程Prを可視化する。情報処理装置10は、PLC20から取得する工程情報Ip、セルカメラ30から取得する作業場画像Ic、および、作業場画像Icから推定した作業Opの内容などを組み合わせることで、作業工程Prを可視化し、また、作業工程Prを効率的かつ精緻に分析する。
例えば、情報処理装置10は、工程情報Ipの可視化に加え、ボトルネックとなっている作業工程Prを抽出し、抽出した作業工程Prの実施状況を撮像した作業場画像Icと、抽出した作業工程Prの工程情報Ipとを組み合わせる。したがって、ユーザは、例えば、ボトルネックとなっている作業工程Prについて、ボトルネックとなっている原因、不具合要因を特定するのが容易になり、作業工程Prの改善作業を効率的に行うことができるようになる。加えて、情報処理装置10は、不良発生時のトレイサビリティにも用いることができる。
また、情報処理装置10は、作業場画像Icと、複数の機器40の各々の工程情報Ipとを組み合わせることにより、作業場画像Icに対する解析と工程情報Ipに対する解析との両方の解析制度を向上させることができる。例えば、情報処理装置10は、PLC20から取得する工程情報Ip(動作結果La)を用いて、機器40が動作Acを開始した動作開始時刻Tms、および、動作Acを完了した動作完了時刻Tmeを特定する。情報処理装置10は、動作開始時刻Tmsから動作完了時刻Tmeまでの期間である動作期間Daに撮像された作業場画像Icに対し解析を実行することで、動作期間Daにおける機器40の動作Acと作業者Huの作業Opとを高精度で対応付けることができる。
さらに、情報処理装置10は、工程情報DBから、「作業工程Prの実施に用いられる機器40が実行すべき標準的な動作」を示す動作基準Saを取得する。そして、情報処理装置10は、取得した動作基準Saを用いて、「作業工程Prの実施に用いられる機器40が実行した実際の動作Ac」に対する判定を実行する。情報処理装置10は、動作基準Saが示す標準的な動作とは異なると判定した動作Acに対応する作業工程Prの実施状況を撮像した作業場画像Icについて、解析を実行してもよい。
(作業内容の推定について)
情報処理装置10は、作業場画像Icを解析して、作業者Huが作業対象物Obについて行った作業Opの内容を予測する。特に、情報処理装置10は、作業場Ar(x)を撮像した作業場画像Ic(x)から、「作業場画像Ic(x)が撮像された撮像時刻Tpに、作業者Hu(x)が、作業場Ar(x)で作業対象物Ob(x)について行っている作業Op(x)の内容」を予測する。作業場Arにおいて作業者Huが行う作業Opは、一般に、作業対象物Obについて行う作業Opである。そのため、作業Opは、作業者Huと作業対象物Obとの組合せ(ペア)についての、作業者Huと作業対象物Obとの間の相互作用として捉えることができる。
情報処理装置10は、作業場画像Icを解析して、作業者Huが作業対象物Obについて行った作業Opの内容を予測する。特に、情報処理装置10は、作業場Ar(x)を撮像した作業場画像Ic(x)から、「作業場画像Ic(x)が撮像された撮像時刻Tpに、作業者Hu(x)が、作業場Ar(x)で作業対象物Ob(x)について行っている作業Op(x)の内容」を予測する。作業場Arにおいて作業者Huが行う作業Opは、一般に、作業対象物Obについて行う作業Opである。そのため、作業Opは、作業者Huと作業対象物Obとの組合せ(ペア)についての、作業者Huと作業対象物Obとの間の相互作用として捉えることができる。
ここで、従来、作業場画像Icから、作業場画像Icに撮像されている人間と、作業場画像Icに撮像されているオブジェクトとの間の相互作用であるHOI(Human Object Interaction)を検出する方法が研究されている。例えば、人間とオブジェクトとの両方をローカライズし、両者の間の相互作用を特定するHOI検出技術が知られている。
情報処理装置10は、作業者Huが作業対象物Obについて行っている作業Opの内容を推定するのに、HOI検出アルゴリズムを利用することができる。すなわち、情報処理装置10は、作業場画像Icに撮像されている「作業者Huと作業対象物Obとのペア」について、作業者Huが作業対象物Obについて行っている作業Opの内容を、HOIを検出するHOI検出アルゴリズムを利用して、予測することができる。
ただし、HOI検出アルゴリズムを用いた予測の精度は、十分に高いとは言い難い。すなわち、作業場画像Icから、作業場画像Icに撮像されている作業者Huが、作業場画像Icに撮像されている作業対象物Obについて行っている作業Opの内容を予測するHOI検出アルゴリズムの予測精度は、十分に高いとは言い難い。特に、作業場画像Icに以下の現象が発生すると、一般に、その作業場画像Icに対するHOI検出の精度は低下する傾向にあることが知られている。
すなわち、手前にある障害物等が、作業者Huおよび作業対象物Obの少なくとも一方の全部または一部を隠す「オクルージョン(occlusion)」が発生した作業場画像Icに対するHOI検出の精度は、一般に低下する傾向があることが知られている。
また、作業場画像Icに撮像されている作業者Huおよび作業対象物Obの少なくとも一方のサイズ(スケール)が(極端に)小さかったり大きかったりする場合、その作業場画像Icに対するHOI検出の精度は、一般に低下する傾向があることが知られている。
作業者Huおよび作業対象物Obの少なくとも一方の全部または一部が、撮像範囲外に飛び出すなどして撮像されない「トランケーション(truncation)」が発生した作業場画像Icに対するHOI検出の精度は、一般に低下する傾向があることが知られている。
作業者Huおよび作業対象物Obの少なくとも一方の全部または一部が透明体である場合、作業場画像Icに対するHOI検出の精度は、一般に低下する傾向があることが知られている。
さらに、通常は撮像されない角度・大きさ等で作業対象物Obが撮像されている作業場画像Icに対するHOI検出の精度は、一般に低下する傾向があることが知られている。例えば、作業場画像Icに撮像されている作業対象物Obの角度(回転)・大きさ等がレアタイプである場合、その作業場画像Icに対するHOI検出の精度は、一般に低下する傾向があることが知られている。
また、撮像時点での照明が明るすぎたり、暗すぎたりした場合にも、その作業場画像Icに対するHOI検出の精度は、一般に低下する傾向があることが知られている。
以下の説明においては、HOI検出(つまり、作業Opの内容の予測)のために、情報処理装置10が、作業者Huおよび作業対象物Obを、バウンディングボックス(Bounding Box)を用いて作業場画像Icから検出する例を説明する。ただし、情報処理装置10が作業者Huおよび作業対象物Obの検出にバウンディングボックスを用いることは必須ではない。情報処理装置10は、「Mask R-CNN」を利用して、作業場画像Icについて、作業者Huおよび作業対象物Obの分類タスク(セグメンテーション)を実行してもよい。また、情報処理装置10は、「Mask R-CNN」と同時に、深層学習において用いられるAttention機構を利用して、作業場画像Icから作業者Huおよび作業対象物Obを検出してもよい。情報処理装置10は、「Mask R-CNN」、Attention機構などを利用して、HOI検出の予測精度を改善してもよい。
(HOI検出結果の検証)
前述の通り、HOI検出アルゴリズムを用いた予測の精度は、十分に高いとは言い難い。そこで、情報処理装置10は、HOI検出アルゴリズムを用いて予測したHOI(つまり、作業Op)の内容(つまり、第一予測Pf(x))を、存否予測Pa(x)および作業予測Po(x)の少なくとも一方を用いて検証する。
前述の通り、HOI検出アルゴリズムを用いた予測の精度は、十分に高いとは言い難い。そこで、情報処理装置10は、HOI検出アルゴリズムを用いて予測したHOI(つまり、作業Op)の内容(つまり、第一予測Pf(x))を、存否予測Pa(x)および作業予測Po(x)の少なくとも一方を用いて検証する。
情報処理装置10は、HOI検出アルゴリズムを、「YOLOなどの動線検出アルゴリズム」および「入力デバイス41等からの検知情報Id」と組み合わせて用いることで、「作業Opの内容」の推定について、ロバスト性および推定精度を向上させる。つまり、情報処理装置10は、動線検出アルゴリズムによる存否予測Pa、および、検知情報Idから予測した作業予測Poの少なくとも一方を、HOI検出アルゴリズムによる第一予測Pf(HOI検出結果)に対するノイズフィルターとして利用する。
情報処理装置10は、HOI検出アルゴリズムに加えて、「動線検出アルゴリズム」および「入力デバイス41等からの検知情報Id」の少なくとも一方を用いて、「作業Opの内容」を推定する作業推定装置である。
(アノテーションコストの抑制)
HOI検出アルゴリズムで用いられる学習済モデルとしての作業予測モデル171は、例えば、作業場画像Icまたはその特徴情報に対して以下のラベルが付された教師データDt1の集合(学習用データセットDS1)に対する教師あり学習によって構築される。すなわち、「作業場画像Icに撮像されている作業者Huが、作業場画像Icに撮像されている作業対象物Obについて行っている作業Opの内容」がラベルとして付された教師データDt1の集合を用いた機械学習によって、作業予測モデル171は構築される。教師データDt1において作業場画像Icまたはその特徴情報に対して付されている「ラベル」は、「アノテーション」または「メタデータ」とも称される。
HOI検出アルゴリズムで用いられる学習済モデルとしての作業予測モデル171は、例えば、作業場画像Icまたはその特徴情報に対して以下のラベルが付された教師データDt1の集合(学習用データセットDS1)に対する教師あり学習によって構築される。すなわち、「作業場画像Icに撮像されている作業者Huが、作業場画像Icに撮像されている作業対象物Obについて行っている作業Opの内容」がラベルとして付された教師データDt1の集合を用いた機械学習によって、作業予測モデル171は構築される。教師データDt1において作業場画像Icまたはその特徴情報に対して付されている「ラベル」は、「アノテーション」または「メタデータ」とも称される。
本実施形態において、ラベルとして付される「作業場画像Icに撮像されている作業者Huが、作業場画像Icに撮像されている作業対象物Obについて行っている作業Opの内容」は、検知情報Idから予測される作業予測Poである。すなわち、「検知情報Idから予測された『作業者Huが行っている作業Opの内容』が、作業場画像Icまたはその特徴情報に対してラベルとして付された」教師データDt1の集合に対する教師あり学習によって、作業予測モデル171は構築される。
一般に、学習済モデルの構築に必要となる大量の教師データDt1の生成には、ひじょうに手間がかかることが知られており、いわゆるアノテーションコストは極めて大きいことが知られている。例えば、大量の作業場画像Icの各々について、人間に、「作業場画像Icに撮像されている作業者Huが、作業場画像Icに撮像されている作業対象物Obについて行っている作業Opの内容」を判定させようとする場合、それに要するコストは極めて大きい。
そこで、本実施形態では、検知情報Idから予測される「作業者Huが行っている作業Opの内容」を、作業場画像Icまたはその特徴情報に対して付される「ラベル」として利用する。これによって、大量の教師データDt1の生成に必要となるコスト(アノテーションコスト)を抑制することができ、つまり、作業予測モデル171の構築に際して必要となるコストを抑制することができる。そのため、情報処理装置10は、低コストで構築された作業予測モデル171を用いて、高精度かつロバスト性の高い、「作業Opの内容」の推定を実現することができる。
(本実施形態に係る情報処理装置についての整理)
これまでに図2を用いて説明してきた内容は、以下のように整理することができる。すなわち、情報処理装置10は、作業場Arにおいて作業者Huが行っている作業Opの内容を推定する作業推定装置であって、第一予測部120(予測部)と、判定部150と、推定部160と、を備える。
これまでに図2を用いて説明してきた内容は、以下のように整理することができる。すなわち、情報処理装置10は、作業場Arにおいて作業者Huが行っている作業Opの内容を推定する作業推定装置であって、第一予測部120(予測部)と、判定部150と、推定部160と、を備える。
第一予測部120は、作業予測モデル171を用いて、「作業場画像Ic、または、作業場画像Icから生成された特徴情報」から、「作業者Huが作業対象物Obについて行っている作業Opの内容」を予測する。作業予測モデル171は、「作業場Arを撮像した作業場画像Ic」または「作業場画像Icから生成された特徴情報」を入力とし、以下の情報を出力とする学習済モデルである。すなわち、作業予測モデル171は、「作業場画像Icに撮像されている作業者Huが、作業場画像Icに撮像されている作業対象物Obについて行っている作業Opの内容」を出力とする学習済モデルである。
判定部150は、「作業予測モデル171を用いずに予測された作業Opの内容」、および、「作業場Arに作業者Huが存在するか否かの判定結果」の少なくとも一方を用いて、第一予測部120の予測の正否を判定する。つまり、判定部150は、作業予測Poおよび存否予測Paの少なくとも一方を用いて、第一予測Pfの正否を判定する。
推定部160は、判定部150によって第一予測部120の予測が正しいと判定されると、第一予測部120によって予測された作業Opの内容を、「作業場Arにおいて作業者Huが行っている作業Opの内容」であると推定する。つまり、推定部160は、作業予測Poおよび存否予測Paの少なくとも一方を用いて第一予測Pfが正しいことが検証されると、第一予測Pfを、「作業場Arにおいて作業者Huが行っている作業Opの内容」についての推定結果として出力する。
前記の構成によれば、情報処理装置10は、作業予測モデル171を用いて予測した作業Opの内容(つまり、第一予測Pf)の正否を、以下の2つの予測の少なくとも一方を用いて判定する。すなわち、情報処理装置10は、作業予測モデル171を用いずに予測された作業Opの内容(作業予測Po)、および、作業場Arにおける作業者Huの存否の判定結果(存否予測Pa)の少なくとも一方を用いて、第一予測Pfの正否を判定する。
そして、情報処理装置10は、作業予測モデル171を用いた予測が正しいと判定すると、作業予測モデル171を用いて予測した作業Opの内容を、「作業場Arにおいて作業者Huが行っている作業Opの内容」であると推定する。
つまり、情報処理装置10は、作業予測モデル171を用いて予測した作業Opの内容の正否を、作業予測モデル171を用いずに予測された作業Opの内容、および、作業場Arに作業者Huが存在するか否かの判定結果の少なくとも一方を用いて検証する。
したがって、情報処理装置10は、作業場画像Icから、「作業場Arにおいて作業者Huが行っている作業Opの内容」を、高精度に推定することができるとの効果を奏する。
情報処理装置10は、検知情報Idから、「作業場Arにおいて作業者Huが行っている作業Opの内容」を予測する作業予測部142(作業検知部)をさらに備える。検知情報Idは、入力デバイス41(センサ)によって検知された「作業Opに用いられる工具、作業対象物Ob、および、作業場Arの少なくとも1つの状態」を示す情報である。
判定部150は、第一予測部120によって予測された作業Opの内容(つまり、第一予測Pf)と、作業予測部142によって予測された作業Opの内容(つまり、作業予測Po)とが一致すると、第一予測部120の予測が正しいと判定する。
前記の構成によれば、情報処理装置10は、入力デバイス41の検知情報Idから予測した作業Opの内容と、作業予測モデル171を用いて予測した作業Opの内容とが一致するか否かを判定する。そして、情報処理装置10は、両者が一致すると判定すると、作業予測モデル171を用いて予測した作業Opの内容を、「作業場Arにおいて作業者Huが行っている作業Opの内容」であると推定する。
つまり、情報処理装置10は、作業予測モデル171を用いて予測した作業Opの内容の正否を、入力デバイス41の検知情報Idから予測した作業Opの内容によって検証する。
したがって、情報処理装置10は、作業場画像Icから、「作業場Arにおいて作業者Huが行っている作業Opの内容」を、高精度に推定することができるとの効果を奏する。
情報処理装置10は、存否予測部141をさらに備え、判定部150は、存否予測部141によって「作業場Arに作業者Huが存在する」と予測されると、第一予測部120の予測が正しいと判定する。存否予測部141は、存否モデル172を用いて、全体画像Ia、または、作業場画像Ic、または、全体画像Iaまたは作業場画像Icから生成された特徴情報から、「作業場Arに作業者Huが存在するか否か」を予測する。存否モデル172は、学習済モデルであり、その入力は、(A)作業場Arを含む複数の作業場Arを撮像した全体画像Ia、または、(B)作業場画像Ic、または、(C)全体画像Iaまたは作業場画像Icから生成された特徴情報である。また、存否モデル172の出力は、「作業場Arに作業者Huが存在するか否か」を示す情報である。
前記の構成によれば、情報処理装置10は、存否モデル172を用いて、「作業場Arに作業者Huが存在するか否か」を予測する。そして、情報処理装置10は、「作業場Arに作業者Huが存在する」と予測すると、作業予測モデル171を用いて予測した作業Opの内容を、「作業場Arにおいて作業者Huが行っている作業Opの内容」であると推定する。
つまり、情報処理装置10は、作業予測モデル171を用いて予測した作業Opの内容の正否を、存否モデル172を用いて予測した「作業場Arにおける作業者Huの存否」によって検証する。
したがって、情報処理装置10は、作業場画像Icから、「作業場Arにおいて作業者Huが行っている作業Opの内容」を、高精度に推定することができるとの効果を奏する。
情報処理装置10は、作業予測部142と存否予測部141とを共に備えてもよい。判定部150は、存否予測部141によって作業場Arに作業者Huが存在すると予測され、かつ、以下の条件が満たされると、第一予測部120の予測が正しいと判定する。すなわち、判定部150は、第一予測部120によって予測された作業Opの内容と、作業予測部142によって予測された作業Opの内容とが一致すると、第一予測部120の予測が正しいと判定する。
前記の構成によれば、情報処理装置10は、入力デバイス41の検知情報Idから予測した作業Opの内容、および、作業場Arにおける作業者Huの存否を予測する。そして、情報処理装置10は、作業場Arに作業者Huが存在すると予測し、かつ、以下の条件が満たされると、第一予測部120の予測が正しいと判定する。すなわち、情報処理装置10は、入力デバイス41の検知情報Idから予測した内容と、作業予測モデル171を用いて予測した内容とが一致すると、作業予測モデル171を用いて予測した内容が正しいと判定する。
つまり、情報処理装置10は、作業予測モデル171を用いて予測した作業Opの内容の正否を、入力デバイス41の検知情報Idから予測した作業Opの内容と、存否モデル172を用いて予測した作業場Arにおける作業者Huの存否とによって検証する。
したがって、情報処理装置10は、作業場画像Icから、「作業場Arにおいて作業者Huが行っている作業Opの内容」を、高精度に推定することができるとの効果を奏する。
§2.構成例
これまでに概要を説明してきた情報処理装置10について、次に、図1を用いてその詳細を説明していく。
これまでに概要を説明してきた情報処理装置10について、次に、図1を用いてその詳細を説明していく。
図1は、情報処理装置10の要部構成を示すブロック図である。図1に例示する情報処理装置10は、機能ブロックとして、例えば、第一取得部110、第一予測部120、第二取得部130、第二予測部140、判定部150、推定部160、および、記憶部170を備えている。
情報処理装置10は、上述の各機能ブロックに加えて、以下の各部を備えてもよい。すなわち、情報処理装置10は、作業場画像Icの、所定の格納領域(保存領域)への格納(保存)を制御する管理部、作業者Huが作業場Arに滞在している時間(滞在時間)を測定する測定部、工程情報Ipと滞在時間とを対応付ける分析部等を備えてもよい。記載の簡潔性を担保するため、本実施の形態に直接関係のない情報処理装置10の構成は、説明およびブロック図から省略している。ただし、実施の実情に則して、情報処理装置10は、これらの省略された構成を備えてもよい。
情報処理装置10の備える上述の機能ブロックは、例えば、演算装置が、ROM(read only memory)、NVRAM(non-Volatile random access memory)等で実現された記憶装置(記憶部170)に記憶されているプログラムを不図示のRAM(random access memory)等に読み出して実行することで実現できる。演算装置として利用可能なデバイスとしては、例えば、CPU(Central Processing Unit)、GPU(Graphic Processing Unit)、DSP(Digital Signal Processor)、MPU(Micro Processing Unit)、FPU(Floating point number Processing Unit)、PPU(Physics Processing Unit)、マイクロコントローラ、又は、これらの組み合わせを挙げることができる。
以下に先ず、第一取得部110、第一予測部120、第二取得部130、第二予測部140、判定部150、および、推定部160の各々について、その詳細を説明する。
(記憶部以外の機能ブロックについて)
第一取得部110は、セルカメラ30から、セルカメラ30が作業場Arを撮像した作業場画像Icを取得し、取得した作業場画像Icを、第一予測部120へと出力する。
第一取得部110は、セルカメラ30から、セルカメラ30が作業場Arを撮像した作業場画像Icを取得し、取得した作業場画像Icを、第一予測部120へと出力する。
第一予測部120は、セルカメラ30が撮像した作業場画像Icに対する画像解析を実行し、「作業場画像Icに撮像されている作業者Huが、作業場画像Icに撮像されている作業対象物Obについて行っている作業Opの内容」を予測する。第一予測部120は、例えば、作業場画像Icに対してモデルベースの画像解析を実行し、「作業場画像Icに撮像されている作業者Huが、作業場画像Icに撮像されている作業対象物Obについて行っている作業Opの内容」を予測する。
モデルベースの画像解析を実行する第一予測部120は、例えば、ニューラルネットワーク(Neural Network)として実現され、HOI検出アルゴリズムを実行することによって、HOIとして作業Opを検出する。具体的には、第一予測部120は、記憶部170を参照して、作業予測モデル171を取得する。作業予測モデル171は、作業場画像Icを入力とし、「作業場画像Icに撮像されている作業者Huが、作業場画像Icに撮像されている作業対象物Obについて行っている作業Opの内容」を出力とする、学習済モデルである。第一予測部120は、記憶部170を参照して取得した作業予測モデル171を用いて、作業場画像Icから、「作業場画像Icに撮像されている作業者Huが、作業場画像Icに撮像されている作業対象物Obについて行っている作業Opの内容」を予測する。以下、「ニューラルネットワーク」は、「NN」と略記することがある。
例えば、第一予測部120は、作業場画像Ic(x)から作業予測モデル171を用いて、以下の第一予測Pf(x)を生成する。すなわち、第一予測部120は、「作業場画像Ic(x)に撮像されている作業者Huが、作業場画像Ic(x)に撮像されている作業対象物Ob(x)について行っている作業Op(x)の内容」についての予測である第一予測Pf(x)を生成する。
特に、第一予測部120は、「セルカメラ30が作業場Ar(x)を撮像して作業場画像Ic(x)を生成した時刻」である撮像時刻Tpを用いて、作業場画像Ic(x)から、以下の予測を実行する。すなわち、第一予測部120は、作業場画像Ic(x)から、「撮像時刻Tpにおいて、作業者Hu(x)が、作業場Ar(x)で作業対象物Ob(x)について行っている作業Op(x)の内容」を予測する。
第一予測部120は、作業場画像Icから作業予測モデル171を用いて予測した作業Opの内容を、第一予測Pfとして、判定部150へと出力する。例えば、第一予測部120は、作業場画像Ic(x)から生成した第一予測Pf(x)を、判定部150へと出力する。
第二取得部130は、第二予測Psを生成するための各種の情報を外部から取得し、取得した各種の情報を第二予測部140へと出力する。第二予測Psは、第一予測Pf(の正否)を検証するための予測であり、存否予測Paおよび作業予測Poの少なくとも一方を含む。図1に例示する第二取得部130は、全体画像取得部131と、検知情報取得部132とを含む。
全体画像取得部131は、天井カメラ80から、天井カメラ80が工場Faの全体を俯瞰して撮像した全体画像Iaを取得し、取得した全体画像Iaを、第二予測部140へと、特に存否予測部141へと、出力する。
検知情報取得部132は、PLC20から、「作業Opに用いられる工具、作業対象物Ob、および、作業場Arの少なくとも1つの状態」を示す検知情報Id(工程情報Ipを含む)を取得する。前述の通り、検知情報Idは、例えば、検知装置(測定装置)としての入力デバイス41が検知した、「作業Opに用いられる工具、作業対象物Ob、および、作業場Arの少なくとも1つの状態」を示す情報である。検知情報取得部132は、取得した検知情報Idを、第一予測部120へと出力する。
第二予測部140は、存否予測Paおよび作業予測Poの少なくとも一方を含む第二予測Psを生成し、生成した第二予測Psを判定部150へと出力する。第二予測部140は、存否予測部141と、作業予測部142とを含む。
存否予測部141は、第二取得部130(特に、全体画像取得部131)から取得した全体画像Iaに対して画像解析を実行し、「作業場画像Icに撮像されている作業場Arに作業者Huが居るか」を予測し、つまり、存否予測Paを生成する。存否予測部141は、例えば、全体画像Iaに対してモデルベースの画像解析を実行し、「作業場画像Icに撮像されている作業場Arに作業者Huが居るか」を予測する。
モデルベースの画像解析を実行する存否予測部141は、例えば、NNとして実現され、YOLOなどの動線検出アルゴリズム(物体検出アルゴリズム)を実行することによって、作業場Arにおける作業者Huの存否を予測する。具体的には、存否予測部141は、記憶部170を参照して、存否モデル172を取得する。存否モデル172は、全体画像Iaを入力とし、「作業場Ar(より正確には、工場Faにおける複数の作業場Arの各々)に作業者Huが居るか」を出力とする、学習済モデルである。存否予測部141は、記憶部170を参照して取得した存否モデル172を用いて、全体画像Iaから、「作業場画像Icに撮像されている作業場Arに作業者Huが居るか」を予測する。例えば、存否予測部141は、全体画像Iaから存否モデル172を用いて、「作業場画像Ic(x)に撮像されている作業場Ar(x)に作業者Huが居るか」についての予測である存否予測Pa(x)を、生成する。
特に、存否予測部141は、「天井カメラ80が、『作業場画像Ic(x)に撮像されている作業場Ar(x)』を含む複数の作業場Arを撮像して全体画像Iaを生成した時刻」である全体時刻Taを用いて、全体画像Iaから、以下の予測を実行する。すなわち、存否予測部141は、全体画像Iaから、「『作業場画像Ic(x)が撮像された撮像時刻Tp』に対応する全体時刻Taにおいて、作業者Hu(x)が作業場Ar(x)に居るか」を予測する。
存否予測部141は、所定期間(例えば、5秒間)の全体画像Iaから、存否モデル172を用いて、「作業場画像Icに撮像されている作業場Arに作業者Huが居るか」を、特に、「撮像時刻Tpに、作業場Arに作業者Huが居るか」を、予測してもよい。存否予測部141による存否モデル172を用いた作業者Huの存否の予測には、誤検出および未検出などの失敗があり得る。そのため、存否予測部141が、例えば5秒間の内、1秒間だけ「作業者Huが居る」と予測しても、残りの4秒間で「作業者Huが居ない」と予測した場合には、「作業者Huが居る」との予測は誤検出(つまり、誤った予測)とみなしてもよい。1秒間だけ「作業者Huが居る」と予測しても、残りの4秒間で「作業者Huが居ない」と予測した場合、存否予測部141は、その5秒間の全体画像Iaから、「作業者Huが居ない」と予測してもよい。つまり、存否予測部141は、その5秒間の全体画像Iaから、「その5秒間に、『作業場画像Icに撮像されている作業場Ar』に作業者Huは居なかった」との存否予測Paを生成してもよい。
整理すると、存否予測部141は、所定期間の全体画像Iaから、その所定期間の内の所定割合(例、5割)以上の期間について「作業者Huが居た」と予測した場合にのみ、その所定期間の全体について、「作業者Huが居た」との存否予測Paを生成してもよい。例えば、存否予測部141は、5秒間の全体画像Iaについて、「作業者Huが居た」と予測した期間が2.5秒以上ある場合にのみ、「その5秒間に、作業者Huは居た」との存否予測Paを生成してもよい。
存否予測部141が作業者Huの存否を予測するのに用いる動線検出アルゴリズムは、例えばYOLOであるが、存否予測部141が用いる動線検出アルゴリズムがYOLOであることは必須ではなく、YOLO以外の動線検出アルゴリズムであってもよい。存否予測部141は、動線検出アルゴリズムによって、全体画像Iaから「作業場画像Icに撮像されている作業場Arに作業者Huが居るか」を予測できればよい。
存否予測部141は、全体画像Iaから存否モデル172を用いて予測した、「作業場画像Icに撮像されている作業場Arに作業者Huが居るか」についての予測である存否予測Pa(例えば、存否予測Pa(x))を、判定部150へと出力する。
作業予測部142は、第二取得部130(特に、検知情報取得部132)から取得した検知情報Id(工程情報Ipを含む)を用いて、「作業者Huが行っている作業Opの内容」を予測し、つまり、作業予測Poを生成する。前述の通り、検知情報Idは、「作業Opに用いられる工具(例えば、出力デバイス42、および、器具90)、作業対象物Ob、および、作業場Arの少なくとも1つの状態」を示す情報である。例えば、作業予測部142は、検知情報Id(x)から、以下の作業予測Po(x)を生成する。すなわち、作業予測部142は、検知情報Id(x)から、「作業場Ar(x)において作業者Hu(x)が行っている作業Op(x)の内容」についての予測である、作業予測Po(x)を生成する。ここで前述の通り、検知情報Id(x)は、「作業Op(x)に用いられる工具(例えば、出力デバイス42(x)または器具90(x))、作業対象物Ob(x)、および、作業場Ar(x)の少なくとも1つの状態」を示す情報である。
作業予測部142は、例えば、「器具90(x)等の工具に流れる電流の大きさ」から、「動作Ac(x)が実行され、動作Ac(x)に対応する作業Op(x)を作業場Ar(x)において作業者Huが行った」と予測する。
作業予測部142は、例えば、「工具の消費電力」から、「動作Ac(x)が実行され、動作Ac(x)に対応する作業Op(x)を作業場Ar(x)において作業者Huが行った」と予測する。
作業予測部142は、例えば、「工具、または、作業対象物Ob(x)が把持された」ことから、「作業Op(x)が作業場Ar(x)において作業者Huによって行われた」と予測する。
作業予測部142は、例えば、「工具、または、作業対象物Ob(x)、または、作業場Ar(x)の備える開閉機構が開閉された」ことから、「作業Op(x)が作業場Ar(x)において作業者Huによって行われた」と予測する。
作業予測部142は、例えば、「工具、または、作業対象物Ob(x)、または、作業場Ar(x)の備えるボタンが押下された」ことから、「作業Op(x)が作業場Ar(x)において作業者Huによって行われた」と予測する。
以上に説明した通り、作業予測部142は、検知情報Idから「作業者Huが行っている作業Opの内容」を予測し、例えば、検知情報Id(x)から「作業場Ar(x)において作業者Hu(x)が行っている作業Op(x)の内容」を予測する。
特に、作業予測部142は、検知情報Id(x)に含まれる、「作業Op(x)に用いられる工具、作業対象物Ob(x)、および、作業場Ar(x)の少なくとも1つの状態」が検知された時刻である検知時刻Tdを用いて、以下の予測を実行する。すなわち、作業予測部142は、検知情報Id(x)から、「『作業場画像Ic(x)が撮像された撮像時刻Tp』に対応する検知時刻Tdにおいて、作業者Hu(x)が行っている作業Op(x)の内容」を予測する。
作業予測部142は、検知情報Idから予測した「作業者Huが行っている作業Opの内容」を、作業予測Poとして、判定部150へと出力する。例えば、作業予測部142は、検知情報Id(x)から予測した「作業場Ar(x)において作業者Hu(x)が行っている作業Op(x)の内容」である作業予測Po(x)を、判定部150へと出力する。
判定部150は、第一予測Pf(の正否)を、第二予測Psを用いて検証し、つまり、第一予測Pf(の正否)を、存否予測Paおよび作業予測Poの少なくとも一方を用いて検証する。具体的には、判定部150は、第一予測Pf(x)(の正否)を、存否予測Pa(x)および作業予測Po(x)の少なくとも一方を用いて検証する。
前述の通り、第一予測Pf(x)は、例えば、作業場画像Ic(x)から予測される、「撮像時刻Tpにおいて、作業者Hu(x)が、作業場Ar(x)で作業対象物Ob(x)について行っている作業Op(x)の内容」である。存否予測Pa(x)は、例えば、全体画像Iaから予測される、「『作業場画像Ic(x)が撮像された撮像時刻Tp』に対応する全体時刻Taにおいて、作業者Hu(x)が作業場Ar(x)に居るか」についての予測である。作業予測Po(x)は、例えば、検知情報Id(x)から予測される、「『作業場画像Ic(x)が撮像された撮像時刻Tp』に対応する検知時刻Tdにおいて、作業者Hu(x)が行っている作業Op(x)の内容」である。
例えば、判定部150は、存否予測Pa(x)において「作業場Ar(x)に作業者Huが存在する」と予測されていると、「第一予測Pf(x)は正しい」と判定する。特に、判定部150は、「セルカメラ30が作業場画像Ic(x)を生成した時刻である撮像時刻Tpにおいて、作業場Ar(x)に作業者Huが存在する」と予測されていると、「第一予測Pf(x)は正しい」と判定する。
例えば、判定部150は、作業予測Po(x)における作業Op(x)と第一予測Pf(x)における作業Op(x)とが一致すると、「第一予測Pf(x)は正しい」と判定する。特に、判定部150は、「作業予測Po(x)における、撮像時刻Tp(x)での作業Op(x)」と「第一予測Pf(x)における、撮像時刻Tp(x)での作業Op(x)」とが一致すると、「第一予測Pf(x)は正しい」と判定する。
例えば、判定部150は、「作業場Ar(x)に作業者Huが存在する」と予測され、かつ、作業予測Po(x)における作業Op(x)と第一予測Pf(x)における作業Op(x)とが一致した場合に、「第一予測Pf(x)は正しい」と判定する。特に、判定部150は、以下の2つの条件がいずれも満たされている場合に「第一予測Pf(x)は正しい」と判定する。すなわち、第一の条件は、作業予測Po(x)において、「セルカメラ30が作業場画像Ic(x)を生成した時刻である撮像時刻Tpにおいて、作業場Ar(x)に作業者Huが存在する」と予測されていることである。第二の条件は、「作業予測Po(x)における、撮像時刻Tp(x)での作業Op(x)」と「第一予測Pf(x)における、撮像時刻Tp(x)での作業Op(x)」とが一致することである。
判定部150は、判定結果(検証結果)と共に、第一予測Pfを推定部160へと通知する。判定部150は、さらに、第二予測Ps(存否予測Paおよび作業予測Poの少なくとも一方)を推定部160へと通知してもよい。
推定部160は、判定部150によって「第一予測Pf(x)は正しい」と判定されると、第一予測Pf(x)を「作業場Arにおいて作業者Huが行っている作業Opの内容」であると推定し、第一予測Pf(x)を、推定結果として外部に出力する。
推定部160は、判定部150によって「第一予測Pf(x)は正しくない」と判定されると、「作業場Ar(x)に作業者Huがいない」との推定結果、または、「所望の精度で推定できた作業Op(x)の内容はない」との推定結果を、外部に出力する。推定部160は、上述の推定結果を、作業場画像Icと共に、図2の動画保存サーバ等に出力してもよい。
(記憶部について)
記憶部170は、情報処理装置10が使用する各種データを格納する記憶装置である。なお、記憶部170は、情報処理装置10が実行する(1)制御プログラム、(2)OSプログラム、(3)情報処理装置10が有する各種機能を実行するためのアプリケーションプログラム、および、(4)該アプリケーションプログラムを実行するときに読み出す各種データを非一時的に記憶してもよい。上記の(1)~(4)のデータは、例えば、ROM(read only memory)、フラッシュメモリ、EPROM(Erasable Programmable ROM)、EEPROM(登録商標)(Electrically EPROM)、HDD(Hard Disc Drive)等の不揮発性記憶装置に記憶される。情報処理装置10は、図示しない一時記憶部を備えていてもよい。一時記憶部は、情報処理装置10が実行する各種処理の過程で、演算に使用するデータおよび演算結果等を一時的に記憶するいわゆるワーキングメモリであり、RAM(Random Access Memory)等の揮発性記憶装置で構成される。どのデータをどの記憶装置に記憶するのかについては、情報処理装置10の使用目的、利便性、コスト、または、物理的な制約等から適宜決定される。記憶部170はさらに、作業予測モデル171および存否モデル172を格納している。
記憶部170は、情報処理装置10が使用する各種データを格納する記憶装置である。なお、記憶部170は、情報処理装置10が実行する(1)制御プログラム、(2)OSプログラム、(3)情報処理装置10が有する各種機能を実行するためのアプリケーションプログラム、および、(4)該アプリケーションプログラムを実行するときに読み出す各種データを非一時的に記憶してもよい。上記の(1)~(4)のデータは、例えば、ROM(read only memory)、フラッシュメモリ、EPROM(Erasable Programmable ROM)、EEPROM(登録商標)(Electrically EPROM)、HDD(Hard Disc Drive)等の不揮発性記憶装置に記憶される。情報処理装置10は、図示しない一時記憶部を備えていてもよい。一時記憶部は、情報処理装置10が実行する各種処理の過程で、演算に使用するデータおよび演算結果等を一時的に記憶するいわゆるワーキングメモリであり、RAM(Random Access Memory)等の揮発性記憶装置で構成される。どのデータをどの記憶装置に記憶するのかについては、情報処理装置10の使用目的、利便性、コスト、または、物理的な制約等から適宜決定される。記憶部170はさらに、作業予測モデル171および存否モデル172を格納している。
作業予測モデル171は、第一予測部120が、作業場画像Icから「作業場画像Icに撮像されている作業者Huが、作業場画像Icに撮像されている作業対象物Obについて行っている作業Opの内容」を予測するためのモデルである。作業予測モデル171は、例えば、作業場画像Icを入力とし、「作業場画像Icに撮像されている作業者Huが、作業場画像Icに撮像されている作業対象物Obについて行っている作業Opの内容」を示す情報を出力とする学習済モデルである。
存否モデル172は、存否予測部141が、全体画像Iaから「作業場画像Icに撮像されている作業場Arに作業者Huが居るか」を予測するためのモデルである。存否モデル172は、全体画像Iaを入力とし、「作業場Ar(より正確には、工場Faにおける複数の作業場Arの各々)に作業者Huが居るか」を出力とする、学習済モデルである。
§3.動作例
図3、図4、および図5は、それぞれ、情報処理装置10が実行する処理の全体概要を説明するフロー図である。情報処理装置10は、第二予測Psを用いて第一予測Pf(の正否)を検証することによって、「作業者Huが行っている作業Opの内容」を高精度に推定することができる。
図3、図4、および図5は、それぞれ、情報処理装置10が実行する処理の全体概要を説明するフロー図である。情報処理装置10は、第二予測Psを用いて第一予測Pf(の正否)を検証することによって、「作業者Huが行っている作業Opの内容」を高精度に推定することができる。
(作業予測Poのみを用いて検証を行う場合の処理例)
図3は、第二予測Psのうち作業予測Poのみを用いて第一予測Pf(の正否)を検証する場合に、情報処理装置10が実行する処理の全体概要を説明するフロー図である。図3に例示するように、情報処理装置10(特に、判定部150)は、第一予測Pf(の正否)を、作業予測Poのみを用いて検証してもよい。
図3は、第二予測Psのうち作業予測Poのみを用いて第一予測Pf(の正否)を検証する場合に、情報処理装置10が実行する処理の全体概要を説明するフロー図である。図3に例示するように、情報処理装置10(特に、判定部150)は、第一予測Pf(の正否)を、作業予測Poのみを用いて検証してもよい。
図3に示すように、判定部150は先ず、作業予測Poにおいて「作業者Huが行っている作業Opの内容」が予測されているか否か、つまり、「検知情報Idから、何らかの作業Opが行われていると予測されたか否か」を確認する(S110)。
「検知情報Idから、何らかの作業Opが行われていると予測された」ことを確認すると(S110でYES)、判定部150はさらに、第一予測Pfにおいて「作業者Huが行っている作業Opの内容」が予測されているか否かを確認する。つまり、判定部150は、「作業予測モデル171を用いて、何らかの作業Opが行われていると予測されたか否か」を確認する(S120)。
「作業予測モデル171を用いて、何らかの作業Opが行われていると予測された」ことを確認すると(S120でYES)、判定部150は、以下の判定を実行する。すなわち、判定部150は、「検知情報Idから予測された作業Opの内容と、作業予測モデル171を用いて予測された作業Opの内容とが一致するか否か」を判定する(S130)。つまり、判定部150は、「作業予測Poにおける作業Op」と「第一予測Pfにおける作業Op(x)」とが一致するか否かを判定する。
判定部150によって、「検知情報Idから予測された作業Opの内容と、作業予測モデル171を用いて予測された作業Opの内容とが一致する」と判定されると(S130でYES)、推定部160は、以下の推定結果を出力する。すなわち、推定部160は、第一取得部110が作業場画像Icから作業予測モデル171を用いて予測した作業Opの内容を、推定結果として出力し(S140)、つまり、第一予測Pf(x)を、推定結果として出力する。
「検知情報Idからは、何らかの作業Opが行われているとは予測されなかった」ことを確認すると(S110でNO)、つまり、作業予測部142が検知情報Idから作業Opの内容を予測できなかった場合、推定部160は、以下の推定結果を出力する。すなわち、推定部160は、「所望の精度で推定できた作業Opの内容はない」との推定結果を出力する(S150)。
「作業予測モデル171を用いて、何らかの作業Opが行われているとは予測されなかった」ことを確認すると(S120でNO)、推定部160は、以下の推定結果を出力する。すなわち、推定部160は、「所望の精度で推定できた作業Opの内容はない」との推定結果を出力する(S150)。つまり、第一予測部120が作業場画像Icから作業Opの内容を予測できなかった場合、推定部160は、「所望の精度で推定できた作業Opの内容はない」との推定結果を出力する。
「検知情報Idから予測された作業Opの内容と、作業予測モデル171を用いて予測された作業Opの内容とが一致しない」と判定されると(S130でNO)、推定部160は、以下の推定結果を出力する。すなわち、推定部160は、「所望の精度で推定できた作業Opの内容はない」との推定結果を出力する(S150)。
情報処理装置10は、作業予測Poを用いて第一予測Pf(の正否)を検証し、つまり、HOI検出アルゴリズムを、「入力デバイス41等からの検知情報Id」と組み合わせて用いる。情報処理装置10は、HOI検出アルゴリズムを実行する第一予測部120と、検知情報Idから作業予測Poを生成する作業予測部142とを備えることによって、第一予測部120による誤検出(予測の誤り)をキャンセルする。そのため、情報処理装置10は、HOI検出アルゴリズムの誤検出(予測の誤り)をキャンセルし、精度の高い推定を実現することができる。
作業予測部142は、入力デバイス41等からの検知情報Idから、「作業者Huが行っている作業Opの内容」を予測し、つまり、作業予測Poを生成する。そして、HOI検出アルゴリズムを実行する第一予測部120による「作業者Huが行っている作業Opの内容」の予測よりも、検知情報Idを用いた作業予測部142による「作業者Huが行っている作業Opの内容」の予測の方が、予測精度が高い。つまり、第一予測Pfの予測精度よりも、作業予測Poの予測精度の方が高い。
そのため、情報処理装置10は、第一予測Pfと作業予測Poとを用いることによって、「作業者Huが行っている作業Opの内容」を、高精度に推定することができる。第一予測部120がHOI検出アルゴリズムを実行して予測可能な「作業者Huが行っている作業Op」の種類は、作業予測部142が検知情報Idから予測可能な「作業者Huが行っている作業Op」の種類と同じであってもよく、前者が後者より多くてもよい。
一般に、HOI検出アルゴリズムによるHOI検出(つまり、「作業Opの内容」の予測)は、作業場画像Icから、作業者Huおよび作業対象物Obの少なくとも一方を検出(物体検出)できなかった場合、失敗する。そのため、HOI検出の失敗を、つまり、「作業予測モデル171を用いて、何らかの作業Opが行われているとは予測されなかった」ことを、「物体(例えば、作業者Hu)の検出失敗(つまり、不在)」とみなしてもよい。
(存否予測Paのみを用いて検証を行う場合の処理例)
図4は、第二予測Psのうち存否予測Paのみを用いて第一予測Pf(の正否)を検証する場合に、情報処理装置10が実行する処理の全体概要を説明するフロー図である。図4に例示するように、情報処理装置10(特に、判定部150)は、第一予測Pf(の正否)を、存否予測Paのみを用いて検証してもよい。
図4は、第二予測Psのうち存否予測Paのみを用いて第一予測Pf(の正否)を検証する場合に、情報処理装置10が実行する処理の全体概要を説明するフロー図である。図4に例示するように、情報処理装置10(特に、判定部150)は、第一予測Pf(の正否)を、存否予測Paのみを用いて検証してもよい。
図4に示すように、判定部150は先ず、存否予測Paにおいて「作業場Arに作業者Huが存在する」と予測されているか否か、つまり、「存否モデル172を用いて、作業場Arに作業者Huが存在すると予測されたか否か」を確認する(S210)。
前述の通り、存否予測部141は、所定期間(例えば、5秒間)の全体画像Iaから、「その所定期間に、作業場画像Icに撮像されている作業場Arに作業者Huが居るか」を予測してもよい。存否予測部141は、その所定期間の内の所定割合(例えば、5割)の期間以上、「作業者Huが居る」と予測した場合にのみ、「その所定期間に、作業場画像Icに撮像されている作業場Arに作業者Huが居た」と予測してもよい。
「存否モデル172を用いて、作業場Arに作業者Huが存在すると予測された」ことを確認すると(S210でYES)、判定部150はさらに、第一予測Pfにおいて「作業者Huが行っている作業Opの内容」が予測されているか否かを確認する。つまり、判定部150は、「作業予測モデル171を用いて、何らかの作業Opが行われていると予測されたか否か」を確認する(S220)。
判定部150によって、「作業予測モデル171を用いて、何らかの作業Opが行われていると予測された」ことが確認されると(S220でYES)、推定部160は、以下の推定結果を出力する。すなわち、推定部160は、第一取得部110が作業場画像Icから作業予測モデル171を用いて予測した作業Opの内容を、推定結果として出力し(S230)、つまり、第一予測Pf(x)を、推定結果として出力する。
「存否モデル172を用いて、作業場Arに作業者Huが存在しないと予測された」ことを確認すると(S210でNO)、推定部160は、以下の推定結果を出力する。すなわち、推定部160は、「作業場Arに作業者Huがいない」との推定結果を出力する(S250)。つまり、存否予測部141が全体画像Iaから「作業場画像Icに撮像されている作業場Arに作業者Huが居ない」と予測する場合、推定部160は、「作業場Arに作業者Huがいない」との推定結果を出力する。
「作業予測モデル171を用いて、何らかの作業Opが行われているとは予測されなかった」ことを確認すると(S220でNO)、推定部160は、以下の推定結果を出力する。すなわち、推定部160は、「所望の精度で推定できた作業Opの内容はない」との推定結果を出力する(S240)。つまり、第一予測部120が作業場画像Icから作業Opの内容を予測できなかった場合、推定部160は、「所望の精度で推定できた作業Opの内容はない」との推定結果を出力する。
情報処理装置10は、存否予測Paを用いて第一予測Pf(の正否)を検証し、つまり、HOI検出アルゴリズムを、「YOLOなどの動線検出アルゴリズム」と組み合わせて用いる。すなわち、情報処理装置10は、HOI検出アルゴリズムを実行する第一予測部120と、動線検出アルゴリズムを実行する存否予測部141とを備えることによって、第一予測部120による誤検出(予測の誤り)をキャンセルすることができる。動線検出アルゴリズムで予測(検出)できるのは、作業者Huの存否のみである代わりに、動線検出アルゴリズムの予測精度は、HOI検出アルゴリズムの予測精度よりも高い。そのため、情報処理装置10は、第一予測Pfと存否予測Paとを用いることによって、「作業者Huが行っている作業Opの内容」を、高精度に推定することができる。
(存否予測Paおよび作業予測Poの両方を用いて検証を行う場合の処理例)
図5は、存否予測Paおよび作業予測Poの両方を用いて第一予測Pf(の正否)を検証する場合に、情報処理装置10が実行する処理の全体概要を説明するフロー図である。図5に例示するように、情報処理装置10(特に、判定部150)は、第一予測Pf(の正否)を、存否予測Paおよび作業予測Poの両方を用いて検証してもよい。
図5は、存否予測Paおよび作業予測Poの両方を用いて第一予測Pf(の正否)を検証する場合に、情報処理装置10が実行する処理の全体概要を説明するフロー図である。図5に例示するように、情報処理装置10(特に、判定部150)は、第一予測Pf(の正否)を、存否予測Paおよび作業予測Poの両方を用いて検証してもよい。
図5に示すように、判定部150は先ず、存否予測Paにおいて「作業場Arに作業者Huが存在する」と予測されているか否か、つまり、「存否モデル172を用いて、作業場Arに作業者Huが存在すると予測されたか否か」を確認する(S310)。
前述の通り、存否予測部141は、所定期間の全体画像Iaから、「その所定期間に、作業場画像Icに撮像されている作業場Arに作業者Huが居るか」を予測してもよい。存否予測部141は、その所定期間の内の所定割合の期間以上、「作業者Huが居る」と予測した場合にのみ、「その所定期間に、作業場画像Icに撮像されている作業場Arに作業者Huが居た」と予測してもよい。
「存否モデル172を用いて、作業場Arに作業者Huが存在すると予測された」ことを確認すると(S310でYES)、判定部150は、次に、作業予測Poにおいて「作業者Huが行っている作業Opの内容」が予測されているか否かを確認する。すなわち、判定部150は、「検知情報Idから、何らかの作業Opが行われていると予測されたか否か」を確認する(S320)。
「検知情報Idから、何らかの作業Opが行われていると予測された」ことを確認すると(S320でYES)、判定部150は、第一予測Pfにおいて「作業者Huが行っている作業Opの内容」が予測されているか否かを確認する。つまり、判定部150は、「作業予測モデル171を用いて、何らかの作業Opが行われていると予測されたか否か」を確認する(S330)。
「作業予測モデル171を用いて、何らかの作業Opが行われていると予測された」ことを確認すると(S330でYES)、判定部150は、以下の判定を実行する。すなわち、判定部150は、「検知情報Idから予測された作業Opの内容と、作業予測モデル171を用いて予測された作業Opの内容とが一致するか否か」を判定する(S340)。つまり、判定部150は、「作業予測Poにおける作業Op」と「第一予測Pfにおける作業Op(x)」とが一致するか否かを判定する。
判定部150によって、「検知情報Idから予測された作業Opの内容と、作業予測モデル171を用いて予測された作業Opの内容とが一致する」と判定されると(S340でYES)、推定部160は、以下の推定結果を出力する。すなわち、推定部160は、第一取得部110が作業場画像Icから作業予測モデル171を用いて予測した作業Opの内容を、推定結果として出力し(S350)、つまり、第一予測Pf(x)を、推定結果として出力する。
「存否モデル172を用いて、作業場Arに作業者Huが存在しないと予測された」ことを確認すると(S310でNO)、推定部160は、以下の推定結果を出力する。すなわち、推定部160は、「作業場Arに作業者Huがいない」との推定結果を出力する(S360)。つまり、存否予測部141が全体画像Iaから「作業場画像Icに撮像されている作業場Arに作業者Huが居ない」と予測する場合、推定部160は、「作業場Arに作業者Huがいない」との推定結果を出力する。
「検知情報Idからは、何らかの作業Opが行われているとは予測されなかった」ことを確認すると(S320でNO)、つまり、作業予測部142が検知情報Idから作業Opの内容を予測できなかった場合、推定部160は、以下の推定結果を出力する。すなわち、推定部160は、「所望の精度で推定できた作業Opの内容はない」との推定結果を出力する(S370)。
「作業予測モデル171を用いて、何らかの作業Opが行われているとは予測されなかった」ことを確認すると(S330でNO)、推定部160は、以下の推定結果を出力する。すなわち、推定部160は、「所望の精度で推定できた作業Opの内容はない」との推定結果を出力する(S370)。つまり、第一予測部120が作業場画像Icから作業Opの内容を予測できなかった場合、推定部160は、「所望の精度で推定できた作業Opの内容はない」との推定結果を出力する。
「検知情報Idから予測された作業Opの内容と、作業予測モデル171を用いて予測された作業Opの内容とが一致しない」と判定されると(S340でNO)、推定部160は、以下の推定結果を出力する。すなわち、推定部160は、「所望の精度で推定できた作業Opの内容はない」との推定結果を出力する(S370)。
前述の通り、検知情報Id(工程情報Ipを含む)から予測可能な事象と、動線検出アルゴリズムによって予測可能な事象とは異なる。具体的には、作業予測部142が検知情報Idから生成する作業予測Poは、「作業者Huが行っている作業Opの内容」についての予測である。これに対して、存否予測部141が動線検出アルゴリズムを用いて生成する存否予測Paは、「作業場画像Icに撮像されている作業場Arに作業者Huが居るか」についての予測である。
そのため、情報処理装置10(特に、判定部150)は、第一予測Pf(の正否)を検証するのに、作業予測Poおよび存否予測Paの少なくとも一方を用いることができる。具体的には、判定部150は、図3に示すように、作業予測Poのみを用いて第一予測Pf(の正否)を検証してもよいし、図4に示すように、存否予測Paのみを用いて第一予測Pf(の正否)を検証してもよい。
また、判定部150は、存否予測Paおよび作業予測Poの両方を用いて第一予測Pf(の正否)を検証してもよい。特に、判定部150は、図5に示すように、存否予測Paによって先ず作業者Huの存否をフィルタリングし、作業者Huが存在すると予測した場合にさらに、作業予測Poを利用して、第一予測Pf(の正否)を検証してもよい。
これまで図3、図4、および、図5を用いて説明してきた情報処理装置10の実行する処理は、以下のように整理することができる。すなわち、情報処理装置10の実行する制御方法は、「作業場Arにおいて作業者Huが行っている作業Opの内容」を推定する作業推定装置の制御方法である。情報処理装置10の実行する制御方法は、予測ステップ(S120、S220、S330)と、判定ステップ(S130、S210、S310、S340)と、推定ステップ(S140、S230、S350)とを含む。
予測ステップは、作業予測モデル171を用いて、「作業場画像Ic、または、作業場画像Icから生成された特徴情報」から、「作業者Huが作業対象物Obについて行っている作業Opの内容」を予測する。作業予測モデル171は、「作業場Arを撮像した作業場画像Ic」または「作業場画像Icから生成された特徴情報」を入力とし、以下の情報を出力とする学習済モデルである。すなわち、作業予測モデル171は、「作業場画像Icに撮像されている作業者Huが、作業場画像Icに撮像されている作業対象物Obについて行っている作業Opの内容」を出力とする学習済モデルである。
判定ステップは、作業予測モデル171を用いずに予測された作業Opの内容、および、作業場Arに作業者Huが存在するか否かの判定結果の少なくとも一方を用いて、予測ステップでの予測の正否を判定する。つまり、判定ステップは、作業予測Poおよび存否予測Paの少なくとも一方を用いて、第一予測Pfの正否を判定する。
推定ステップは、判定ステップにて「予測ステップでの予測が正しい」と判定されると、予測ステップにて予測された作業Opの内容を、「作業場Arにおいて作業者Huが行っている作業Opの内容」であると推定する。つまり、推定ステップは、作業予測Poおよび存否予測Paの少なくとも一方を用いて第一予測Pfが正しいことが検証されると、第一予測Pfを、「作業場Arにおいて作業者Huが行っている作業Opの内容」についての推定結果として出力する。
前記の構成によれば、前記制御方法は、作業予測モデル171を用いて予測した作業Opの内容の正否を、作業予測モデル171を用いずに予測された作業Opの内容、および、作業場Arにおける作業者Huの存否の判定結果の少なくとも一方を用いて判定する。そして、前記制御方法は、作業予測モデル171を用いた予測が正しいと判定されると、作業予測モデル171を用いて予測した作業Opの内容を、「作業場Arにおいて作業者Huが行っている作業Opの内容」であると推定する。
つまり、前記制御方法は、作業予測モデル171を用いて予測した作業Opの内容の正否を、作業予測モデル171を用いずに予測された作業Opの内容、および、作業場Arに作業者Huが存在するか否かの判定結果の少なくとも一方を用いて検証する。
したがって、前記制御方法は、作業場画像Icから、「作業場Arにおいて作業者Huが行っている作業Opの内容」を、高精度に推定することができるとの効果を奏する。
(ニューラルネットワーク(NN)として実現した第一予測部および存否予測部の例)
前述の通り、第一予測部120および存否予測部141の少なくとも一方は、NNとして実現されてもよい。特に、第一予測部120および存否予測部141の少なくとも一方は、CNN(Convolution al Neural Network)またはDNN(Deep Neural Network)として、実現されてもよい。
前述の通り、第一予測部120および存否予測部141の少なくとも一方は、NNとして実現されてもよい。特に、第一予測部120および存否予測部141の少なくとも一方は、CNN(Convolution al Neural Network)またはDNN(Deep Neural Network)として、実現されてもよい。
例えば、第一予測部120(作業予測モデル171)は、作業場画像Icから、「作業場画像Icに撮像されている作業者Huが、作業場画像Icに撮像されている作業対象物Obについて行っている作業Opの内容」を示す第一予測Pfを出力する。また、例えば、存否予測部141(存否モデル172)は、全体画像Iaから、「作業場画像Icに撮像されている作業場Arに作業者Huが居るか」を示す存否予測Paを出力する。
次に、学習済モデルである作業予測モデル171および存否モデル172を構築する学習処理について、以下に説明する。
(学習処理)
(作業予測モデルについて)
NNとして実現された第一予測部120は、学習済モデルである作業予測モデル171を、例えば、教師データDt1の集合である学習用データセットDS1に対する教師あり学習によって構築する。教師データDt1は、作業場画像Icに対し、少なくとも「作業場画像Icに撮像されている作業者Huが、作業場画像Icに撮像されている作業対象物Obについて行っている作業Opの内容」を示す情報がラベルとして付されたデータである。「教師データ」は「学習用データ」とも呼ばれる。また、「第一予測部120が、学習用データセットDS1に対する教師あり学習によって、作業予測モデル171を構築する」処理を、「学習処理SS1」とも称する。
(作業予測モデルについて)
NNとして実現された第一予測部120は、学習済モデルである作業予測モデル171を、例えば、教師データDt1の集合である学習用データセットDS1に対する教師あり学習によって構築する。教師データDt1は、作業場画像Icに対し、少なくとも「作業場画像Icに撮像されている作業者Huが、作業場画像Icに撮像されている作業対象物Obについて行っている作業Opの内容」を示す情報がラベルとして付されたデータである。「教師データ」は「学習用データ」とも呼ばれる。また、「第一予測部120が、学習用データセットDS1に対する教師あり学習によって、作業予測モデル171を構築する」処理を、「学習処理SS1」とも称する。
学習処理SS1において、NNとして実現された第一予測部120は、学習用データセットDS1に対する教師あり学習によって、作業場画像Icの入力に対して、以下の情報を出力する作業予測モデル171を、学習済モデルとして構築する。すなわち、作業予測モデル171は、作業場画像Icを入力とし、「作業場画像Icに撮像されている作業者Huが、作業場画像Icに撮像されている作業対象物Obについて行っている作業Opの内容」を出力とする学習済モデルである。
つまり、教師データDt1において作業場画像Icには、「作業場画像Icに撮像されている作業者Huが、作業場画像Icに撮像されている作業対象物Obについて行っている作業Opの内容」を示す情報がラベルとして付されている。教師データDt1において作業場画像Icに対するラベルとして付される情報は、教師データDt1の集合である学習用データセットDS1に対する機械学習により構築される作業予測モデル171が、作業場画像Icの入力に対して出力する情報と同様である。
NNとして実現された第一予測部120は、学習処理SS1によって構築した作業予測モデル171を、記憶部170に格納する。
(教師データの準備について)
図6は、教師データDt1の生成に必要なアノテーションの一例を説明する図である。図6に例示する教師データDt1において、作業場画像Icには、以下のラベル(アノテーション)が付されている。すなわち、作業場画像Icには、一点鎖線で囲んだ、「作業者Huを検出するバウンディングボックスの範囲」を示すラベルが付されている。また、作業場画像Icには、二点鎖線で囲んだ、「作業対象物Obを検出するバウンディングボックスの範囲」を示すラベルが付されている。さらに、作業場画像Icには、両端を矢印とする直線が、「作業場画像Icに撮像されている作業者Huが、作業場画像Icに撮像されている作業対象物Obについて行っている作業Opの内容」を示すラベルとして付されている。両端を矢印とする直線は、「作業者Huを検出するバウンディングボックスの範囲」の略中央と、「作業対象物Obを検出するバウンディングボックスの範囲」の略中央とを結んでいる。
図6は、教師データDt1の生成に必要なアノテーションの一例を説明する図である。図6に例示する教師データDt1において、作業場画像Icには、以下のラベル(アノテーション)が付されている。すなわち、作業場画像Icには、一点鎖線で囲んだ、「作業者Huを検出するバウンディングボックスの範囲」を示すラベルが付されている。また、作業場画像Icには、二点鎖線で囲んだ、「作業対象物Obを検出するバウンディングボックスの範囲」を示すラベルが付されている。さらに、作業場画像Icには、両端を矢印とする直線が、「作業場画像Icに撮像されている作業者Huが、作業場画像Icに撮像されている作業対象物Obについて行っている作業Opの内容」を示すラベルとして付されている。両端を矢印とする直線は、「作業者Huを検出するバウンディングボックスの範囲」の略中央と、「作業対象物Obを検出するバウンディングボックスの範囲」の略中央とを結んでいる。
図6に例示するような教師データDt1の準備には、作業者Huを検出するためのバウンディングボックスの設定が不要であったとしても、作業場画像Icに対して以下の5つのアノテーションが必要となる。すなわち、作業場画像Icに対して、作業対象物Obを検出するためのバウンディングボックスの範囲を示す4点のうち、左下の点および右上の点の各々のX座標およびY座標を設定することが必要であり、つまり、4つのアノテーションが必要となる。さらに、作業場画像Icに対して、「作業場画像Icに撮像されている作業者Huが、作業場画像Icに撮像されている作業対象物Obについて行っている作業Opの内容」を示す1つのアノテーションが必要となる。
ここで、教師あり学習のためには、一般に大量の教師データDt1が必要であり、大量の教師データDt1を準備するためには、大量の作業場画像Icの各々について、上述の5つのアノテーションを行うことが必要となる。そのため、大量の作業場画像Icの各々について、「作業場画像Icに撮像されている作業者Huが、作業場画像Icに撮像されている作業対象物Obについて行っている作業Opの内容」を人間に判定させようとする場合、それに要するコストは極めて大きい。
そこで、本実施形態においては、教師データDt1の準備に際して、作業場画像Icから人間が判定した「作業Opの内容」ではなく、検知情報Idから予測された「作業Opの内容」が、「作業Opの内容」を示すラベルとして、作業場画像Icに付与される。つまり、教師データDt1においては、作業場画像Icから人間が判定した「作業Opの内容」ではなく、作業予測部142が検知情報Idから予測した「作業Opの内容」が、「作業Opの内容」を示すラベルとして付されている。
そのため、作業予測モデル171の構築に必要となるコストは、「作業Opの内容」を示すラベルとして「作業場画像Icから人間が判定した内容」を用いる場合と比べて、大幅に抑制できる。特に、学習用データセットDS1の生成に必要なアノテーションコストは、「作業Opの内容」を示すラベルとして「作業場画像Icから人間が判定した内容」を用いる場合と比べて、大幅に抑制できる。例えば、作業場画像Icに対して必要な上述の5つのアノテーションの内の1つを、「人間による判定内容」から「作業予測部142が検知情報Idから予測した内容」へと変更するので、アノテーションコストを20%抑制することができる。
例えば、或る撮像時刻Tpにおいてセルカメラ30が作業場Ar(x)を撮像して生成した作業場画像Ic(x)について、以下の「作業Op(x)の内容」が、ラベルとして付されることによって、教師データDt1(x)が生成される。すなわち、作業予測部142が検知情報Id(x)から予測した「撮像時刻Tpにおいて、作業者Hu(x)が、作業場Ar(x)で行っている作業Op(x)の内容」が、作業場画像Ic(x)に対してラベルとして付された教師データDt1(x)が生成される。検知情報Id(x)は、撮像時刻Tpにおける「作業Op(x)に用いられる工具(例えば、出力デバイス42(x)または器具90(x))、作業対象物Ob(x)、および、作業場Ar(x)の少なくとも1つの状態」を示す情報である。
具体的には、作業予測部142は、例えば、「撮像時刻Tpにおいて、器具90(x):電動ドライバに流れた電流の大きさ」から、「撮像時刻Tpにおいて、作業者Huが、作業場Ar(x)で作業Op(x):ネジ締め作業を行った」と予測する。この予測内容(つまり、「作業Op(x)の内容::ネジ締め作業」)が、作業場画像Ic(x)に付されることによって、教師データDt1(x)が生成される。
これまでに説明してきたように、情報処理装置10において、作業予測モデル171は、学習用データセットDS1を用いた機械学習によって構築された学習済モデルである。学習用データセットDS1において、「作業場画像Icまたは作業場画像Icから生成された特徴情報」には、以下の情報がラベルとして付されている。すなわち、「作業Opに用いられる工具、作業対象物Ob、および、作業場Arの少なくとも1つの状態」を検知する入力デバイス41の検知情報Idから予測された、「作業場Arにおいて作業者Huが行っている作業Opの内容」がラベルとして付されている。
前記の構成によれば、情報処理装置10は、入力デバイス41の検知情報Idから予測した「作業場Arにおいて作業者Huが行っている作業Opの内容」がラベルとして付された学習用データセットを用いた機械学習によって、作業予測モデル171を構築する。
教師あり学習のためには、大量の教師データ(学習用データセット)が必要であることが知られており、そのような教師データの生成に必要なラベリング作業、および、教師データに付されているラベル(メタデータ)は、「アノテーション」とも呼ばれる。
例えば、作業予測モデル171の構築に際して学習される教師データDt1には、作業者Huを検出するためのバウンディングボックス(Bounding Box)の設定が不要であったとしても、作業場画像Icに対して以下の5つのアノテーションが必要となる。すなわち、作業場画像Icに対して、作業対象物Obを検出するためのバウンディングボックスの範囲を示す4点のうち、左下の点および右上の点の各々のX座標およびY座標を設定することが必要であり、つまり、4つのアノテーションが必要となる。さらに、作業場画像Icに対して、「作業場画像Icに撮像されている作業者Huが、作業場画像Icに撮像されている作業対象物Obについて行っている作業Opの内容」を示す情報(ラベル)の付与が必要であり、つまり、1つのアノテーションが必要となる。
そして、大量の作業場画像Icの各々について、「作業場画像Icに撮像されている作業者Huが、作業場画像Icに撮像されている作業対象物Obについて行っている作業Opの内容」を人間に判定させようとする場合、それに要するコストは極めて大きい。
そこで、教師データDt1の生成に際しては、作業場画像Icから人間が判定した「作業Opの内容」ではなく、入力デバイス41の検知情報Idから予測された「作業Opの内容」が、「作業Opの内容」を示すラベルとして付与される。つまり、教師データDt1においては、作業場画像Icから人間が判定した「作業Opの内容」ではなく、入力デバイス41の検知情報Idから予測された「作業Opの内容」が、「作業Opの内容」を示すラベルとして付されている。
そのため、作業予測モデル171の構築に必要となるコストは、「作業Opの内容」を示すラベルとして「作業場画像Icから人間が判定した内容」を用いる場合と比べて、大幅に抑制できる。特に、学習用データセットDS1の生成に必要なアノテーションコストは、「作業Opの内容」を示すラベルとして「作業場画像Icから人間が判定した内容」を用いる場合と比べて、大幅に抑制できる。例えば、作業場画像Icに対して必要な上述の5つのアノテーションの内の1つを、「人間による判定内容」から「情報処理装置10等の装置が検知情報Idから予測した内容」へと変更するので、アノテーションコストを20%抑制することができる。
したがって、前記の構成によれば、情報処理装置10は、アノテーションコストが大幅に抑制された作業予測モデル171を用いて、作業場画像Icから、「作業者Huが行っている作業Opの内容」を、高精度に推定することができるとの効果を奏する。
(存否モデルについて)
NNとして実現された存否予測部141は、学習済モデルである存否モデル172を、例えば、教師データDt2の集合であるデータセットDS2に対する教師あり学習によって構築する。教師データDt2は、全体画像Iaに対し、「作業場Ar(より正確には、工場Faにおける複数の作業場Arの各々)に作業者Huが居るか」を示す情報がラベルとして付されたデータである。「存否予測部141が、データセットDS2に対する教師あり学習によって、存否モデル172を構築する」処理を、「学習処理SS2」とも称する。
NNとして実現された存否予測部141は、学習済モデルである存否モデル172を、例えば、教師データDt2の集合であるデータセットDS2に対する教師あり学習によって構築する。教師データDt2は、全体画像Iaに対し、「作業場Ar(より正確には、工場Faにおける複数の作業場Arの各々)に作業者Huが居るか」を示す情報がラベルとして付されたデータである。「存否予測部141が、データセットDS2に対する教師あり学習によって、存否モデル172を構築する」処理を、「学習処理SS2」とも称する。
学習処理SS2において、NNとして実現された存否予測部141は、データセットDS2に対する教師あり学習によって、全体画像Iaの入力に対して、以下の情報を出力する存否モデル172を、学習済モデルとして構築する。すなわち、存否モデル172は、全体画像Iaを入力とし、「作業場Ar(より正確には、工場Faにおける複数の作業場Arの各々)に作業者Huが居るか」を出力とする学習済モデルである。
つまり、教師データDt2において全体画像Iaには、「作業場Ar(より正確には、工場Faにおける複数の作業場Arの各々)に作業者Huが居るか」を示す情報がラベルとして付されている。教師データDt2において全体画像Iaに対するラベルとして付される情報は、教師データDt2の集合であるデータセットDS2に対する機械学習により構築される存否モデル172が、全体画像Iaの入力に対して出力する情報と同様である。
NNとして実現された存否予測部141は、学習処理SS2によって構築した存否モデル172を、記憶部170に格納する。
ただし、存否予測部141が学習処理SS2によって存否モデル172を構築することは必須ではない。存否予測部141は、動線検出アルゴリズムに用いられる一般的な学習済モデルを存否モデル172として用いて、全体画像Iaから「作業場Ar(より正確には、工場Faにおける複数の作業場Arの各々)に作業者Huが居るか」を予測してもよい。
§4.変形例
(機械学習について)
これまで、教師ありデータに対する機械学習によって、学習済データとして作業予測モデル171および存否モデル172を構築する例を説明してきた。しかしながら、作業予測モデル171および存否モデル172を構築するための機械学習は、教師ありデータに対する機械学習に限られない。作業予測モデル171および存否モデル172を構築するための機械学習は、教師あり学習に限らず、教師なし学習、または、強化学習等の他の機械学習であってもよい。
(機械学習について)
これまで、教師ありデータに対する機械学習によって、学習済データとして作業予測モデル171および存否モデル172を構築する例を説明してきた。しかしながら、作業予測モデル171および存否モデル172を構築するための機械学習は、教師ありデータに対する機械学習に限られない。作業予測モデル171および存否モデル172を構築するための機械学習は、教師あり学習に限らず、教師なし学習、または、強化学習等の他の機械学習であってもよい。
(全体画像について)
これまで、存否予測部141が、全体画像Iaから「作業場画像Icに撮像されている作業場Arに作業者Huが居るか」を予測する例を説明してきた。しかしながら、存否予測部141は、作業場画像Icから「作業場画像Icに撮像されている作業場Arに作業者Huが居るか」を予測してもよい。すなわち、情報処理装置10が、作業場画像Icとは別に全体画像Iaを取得することは必須ではない。情報処理装置10(特に、判定部150)は、作業場画像Icから生成した第一予測Pfの正否を、全体画像Iaおよび作業場画像Icの少なくとも一方から生成された存否予測Paによって検証することができる。例えば、判定部150は、全体画像Iaおよび作業場画像Ic(x)の少なくとも一方から生成された存否予測Pa(x)が「作業場Ar(x)に作業者Huが存在する」との予測であると、「第一予測Pf(x)は正しい」と判定する。
これまで、存否予測部141が、全体画像Iaから「作業場画像Icに撮像されている作業場Arに作業者Huが居るか」を予測する例を説明してきた。しかしながら、存否予測部141は、作業場画像Icから「作業場画像Icに撮像されている作業場Arに作業者Huが居るか」を予測してもよい。すなわち、情報処理装置10が、作業場画像Icとは別に全体画像Iaを取得することは必須ではない。情報処理装置10(特に、判定部150)は、作業場画像Icから生成した第一予測Pfの正否を、全体画像Iaおよび作業場画像Icの少なくとも一方から生成された存否予測Paによって検証することができる。例えば、判定部150は、全体画像Iaおよび作業場画像Ic(x)の少なくとも一方から生成された存否予測Pa(x)が「作業場Ar(x)に作業者Huが存在する」との予測であると、「第一予測Pf(x)は正しい」と判定する。
(作業予測について)
これまで、検知情報Idから、「作業者Huが行っている作業Opの内容」を予測する主体が、情報処理装置10である例を説明してきた。すなわち、作業予測部142が、検知情報Idから、「作業Opに用いられる工具、作業対象物Ob、および、作業場Arの少なくとも1つの状態」を把握し、把握した状態から、作業予測Poを生成する例を説明してきた。
これまで、検知情報Idから、「作業者Huが行っている作業Opの内容」を予測する主体が、情報処理装置10である例を説明してきた。すなわち、作業予測部142が、検知情報Idから、「作業Opに用いられる工具、作業対象物Ob、および、作業場Arの少なくとも1つの状態」を把握し、把握した状態から、作業予測Poを生成する例を説明してきた。
しかしながら、検知情報Idから「作業Opに用いられる工具、作業対象物Ob、および、作業場Arの少なくとも1つの状態」を把握し、把握した状態から、「作業者Huが行っている作業Opの内容」を予測する主体は、情報処理装置10でなくともよい。情報処理装置10は、工具、作業対象物Ob、および、作業場Arの少なくとも1つの状態から予測される「作業者Huが行っている作業Opの内容」を取得または生成できればよい。
例えば、PLC20が、検知情報Idから作業予測Poを生成してもよい。その場合、情報処理装置10(特に、検知情報取得部132)は、PLC20から、PLC20が実行した予測の結果を、つまり、作業予測Poを取得する。そして、判定部150は、PLC20の生成した作業予測Poを用いて、第一予測Pf(の正否)を検証する。
つまり、情報処理装置10(特に、判定部150)が第一予測Pf(の正否)を検証するために作業予測Poを用いる場合、検知情報Idから作業予測Poを生成する主体は、情報処理装置10であってもよいし、情報処理装置10でなくともよい。
(第二予測について)
これまで、情報処理装置10が存否予測部141と作業予測部142とを共に備える例を説明してきたが、情報処理装置10が存否予測部141と作業予測部142とを共に備えることは必須ではない。判定部150は、第一予測Pf(の正否)を、第二予測Psを用いて検証できればよく、つまり、第一予測Pf(の正否)を、存否予測Paおよび作業予測Poの少なくとも一方を用いて検証できればよい。そのため、第一予測Pf(の正否)の検証に存否予測Paを用いない場合、情報処理装置10は、存否予測部141を備えなくともよい。また、第一予測Pf(の正否)の検証に作業予測Poを用いない場合、情報処理装置10は、作業予測部142を備えなくともよい。
これまで、情報処理装置10が存否予測部141と作業予測部142とを共に備える例を説明してきたが、情報処理装置10が存否予測部141と作業予測部142とを共に備えることは必須ではない。判定部150は、第一予測Pf(の正否)を、第二予測Psを用いて検証できればよく、つまり、第一予測Pf(の正否)を、存否予測Paおよび作業予測Poの少なくとも一方を用いて検証できればよい。そのため、第一予測Pf(の正否)の検証に存否予測Paを用いない場合、情報処理装置10は、存否予測部141を備えなくともよい。また、第一予測Pf(の正否)の検証に作業予測Poを用いない場合、情報処理装置10は、作業予測部142を備えなくともよい。
〔ソフトウェアによる実現例〕
情報処理装置10の機能ブロック(具体的には、第一取得部110、第一予測部120、第二取得部130、第二予測部140、判定部150、および推定部160)は、集積回路(ICチップ)等に形成された論理回路(ハードウェア)によって実現してもよい。また、これらの機能ブロックは、CPU、GPU、DSP等を用いてソフトウェアによって実現してもよい。
情報処理装置10の機能ブロック(具体的には、第一取得部110、第一予測部120、第二取得部130、第二予測部140、判定部150、および推定部160)は、集積回路(ICチップ)等に形成された論理回路(ハードウェア)によって実現してもよい。また、これらの機能ブロックは、CPU、GPU、DSP等を用いてソフトウェアによって実現してもよい。
後者の場合、情報処理装置10は、各々、各機能を実現するソフトウェアであるプログラムの命令を実行するCPU、GPU、DSP等と、上記プログラムおよび各種データがコンピュータ(またはCPU)で読み取り可能に記録されたROMまたは記憶装置(これらを「記録媒体」と称する)と、上記プログラムを展開するRAM等とを備えている。そして、コンピュータ(またはCPU、GPU、DSP等)が上記プログラムを上記記録媒体から読み取って実行することにより、本発明の目的が達成される。上記記録媒体としては、「一時的でない有形の媒体」、例えば、テープ、ディスク、カード、半導体メモリ、プログラマブルな論理回路等を用いることができる。また、上記プログラムは、該プログラムを伝送可能な任意の伝送媒体(通信ネットワークや放送波等)を介して上記コンピュータに供給されてもよい。なお、本発明は、上記プログラムが電子的な伝送によって具現化された、搬送波に埋め込まれたデータ信号の形態でも実現され得る。
(付記事項)
本発明の一態様に係る作業推定装置は、作業場において作業者が行っている作業の内容を推定する作業推定装置であって、前記作業場を撮像した作業場画像または前記作業場画像から生成された特徴情報を入力とし、前記作業場画像に撮像されている前記作業者が、前記作業場画像に撮像されている作業対象物について行っている作業の内容を出力とする学習済モデルである作業予測モデルを用いて、前記作業場画像または前記特徴情報から、前記作業者が前記作業対象物について行っている作業の内容を予測する予測部と、前記作業予測モデルを用いずに予測された前記作業の内容、および、前記作業場に前記作業者が存在するか否かの判定結果の少なくとも一方を用いて、前記予測部の予測の正否を判定する判定部と、前記判定部によって前記予測部の予測が正しいと判定されると、前記予測部によって予測された前記作業の内容を、前記作業場において前記作業者が行っている前記作業の内容として推定する推定部と、を備える。
本発明の一態様に係る作業推定装置は、作業場において作業者が行っている作業の内容を推定する作業推定装置であって、前記作業場を撮像した作業場画像または前記作業場画像から生成された特徴情報を入力とし、前記作業場画像に撮像されている前記作業者が、前記作業場画像に撮像されている作業対象物について行っている作業の内容を出力とする学習済モデルである作業予測モデルを用いて、前記作業場画像または前記特徴情報から、前記作業者が前記作業対象物について行っている作業の内容を予測する予測部と、前記作業予測モデルを用いずに予測された前記作業の内容、および、前記作業場に前記作業者が存在するか否かの判定結果の少なくとも一方を用いて、前記予測部の予測の正否を判定する判定部と、前記判定部によって前記予測部の予測が正しいと判定されると、前記予測部によって予測された前記作業の内容を、前記作業場において前記作業者が行っている前記作業の内容として推定する推定部と、を備える。
前記の構成によれば、前記作業推定装置は、前記作業予測モデルを用いて予測した前記作業の内容の正否を、前記作業予測モデルを用いずに予測された前記作業の内容、および、前記作業場における前記作業者の存否の判定結果の少なくとも一方を用いて判定する。そして、前記作業推定装置は、前記作業予測モデルを用いた予測が正しいと判定されると、前記作業予測モデルを用いて予測した前記作業の内容を、前記作業場において前記作業者が行っている前記作業の内容であると推定する。
つまり、前記作業推定装置は、前記作業予測モデルを用いて予測した前記作業の内容の正否を、前記作業予測モデルを用いずに予測された前記作業の内容、および、前記作業場に前記作業者が存在するか否かの判定結果の少なくとも一方を用いて検証する。
したがって、前記作業推定装置は、前記作業場画像から、前記作業場において前記作業者が行っている前記作業の内容を、高精度に推定することができるとの効果を奏する。
本発明の一態様に係る作業推定装置は、前記作業に用いられる工具、前記作業対象物、および、前記作業場の少なくとも1つの状態を検知するセンサの検知情報から、前記作業場において前記作業者が行っている前記作業の内容を予測する作業検知部をさらに備えてもよく、前記判定部は、前記予測部によって予測された前記作業の内容と、前記作業検知部によって予測された前記作業の内容とが一致すると、前記予測部の予測が正しいと判定してもよい。
前記の構成によれば、前記作業推定装置は、前記センサの検知情報から予測した前記作業の内容と、前記作業予測モデルを用いて予測した前記作業の内容とが一致するか否かを判定する。そして、前記作業推定装置は、両者が一致すると判定すると、前記作業予測モデルを用いて予測した前記作業の内容を、前記作業場において前記作業者が行っている前記作業の内容であると推定する。
つまり、前記作業推定装置は、前記作業予測モデルを用いて予測した前記作業の内容の正否を、前記センサの検知情報から予測した前記作業の内容によって検証する。
したがって、前記作業推定装置は、前記作業場画像から、前記作業場において前記作業者が行っている前記作業の内容を、高精度に推定することができるとの効果を奏する。
本発明の一態様に係る作業推定装置は、(A)前記作業場を含む複数の作業場を撮像した全体画像、または、(B)前記作業場画像、または、(C)前記全体画像または前記作業場画像から生成された特徴情報を入力とし、前記作業場に前記作業者が存在するか否かを出力とする学習済モデルである存否モデルを用いて、前記全体画像、または、前記作業場画像、または、前記全体画像または前記作業場画像から生成された特徴情報から、前記作業場に前記作業者が存在するか否かを予測する存否予測部をさらに備えてもよく、前記判定部は、前記存否予測部によって前記作業場に前記作業者が存在すると予測されると、前記予測部の予測が正しいと判定してもよい。
前記の構成によれば、前記作業推定装置は、前記存否モデルを用いて、前記作業場に前記作業者が存在するか否かを予測する。そして、前記作業推定装置は、前記作業場に前記作業者が存在すると予測すると、前記作業予測モデルを用いて予測した前記作業の内容を、前記作業場において前記作業者が行っている前記作業の内容であると推定する。
つまり、前記作業推定装置は、前記作業予測モデルを用いて予測した前記作業の内容の正否を、前記存否モデルを用いて予測した前記作業場における前記作業者の存否によって検証する。
したがって、前記作業推定装置は、前記作業場画像から、前記作業場において前記作業者が行っている前記作業の内容を、高精度に推定することができるとの効果を奏する。
本発明の一態様に係る作業推定装置は、前記作業に用いられる工具、前記作業対象物、および、前記作業場の少なくとも1つの状態を検知するセンサの検知情報から、前記作業場において前記作業者が行っている前記作業の内容を予測する作業検知部と、(A)前記作業場を含む複数の作業場を撮像した全体画像、または、(B)前記作業場画像、または、(C)前記全体画像または前記作業場画像から生成された特徴情報を入力とし、前記作業場に前記作業者が存在するか否かを出力とする学習済モデルである存否モデルを用いて、前記全体画像、または、前記作業場画像、または、前記全体画像または前記作業場画像から生成された特徴情報から、前記作業場に前記作業者が存在するか否かを予測する存否予測部と、をさらに備えてもよく、前記判定部は、前記存否予測部によって前記作業場に前記作業者が存在すると予測され、かつ、前記予測部によって予測された前記作業の内容と、前記作業検知部によって予測された前記作業の内容とが一致すると、前記予測部の予測が正しいと判定してもよい。
前記の構成によれば、前記作業推定装置は、前記センサの検知情報から予測した前記作業の内容、および、前記作業場における前記作業者の存否を予測する。そして、前記作業推定装置は、前記作業場に前記作業者が存在すると予測し、かつ、前記センサの検知情報から予測した内容と前記作業予測モデルを用いて予測した内容とが一致すると、前記作業予測モデルを用いて予測した内容が正しいと判定する。
つまり、前記作業推定装置は、前記作業予測モデルを用いて予測した前記作業の内容の正否を、前記センサの検知情報から予測した前記作業の内容と、前記存否モデルを用いて予測した前記作業場における前記作業者の存否とによって検証する。
したがって、前記作業推定装置は、前記作業場画像から、前記作業場において前記作業者が行っている前記作業の内容を、高精度に推定することができるとの効果を奏する。
本発明の一態様に係る作業推定装置において、前記作業予測モデルは、前記作業に用いられる工具、前記作業対象物、および、前記作業場の少なくとも1つの状態を検知するセンサの検知情報から予測された、前記作業場において前記作業者が行っている前記作業の内容が、前記作業場画像または前記作業場画像から生成された特徴情報に対してラベルとして付された学習用データセットを用いた機械学習によって、構築されてもよい。
前記の構成によれば、前記作業推定装置は、前記センサの検知情報から予測した「前記作業場において前記作業者が行っている前記作業の内容」がラベルとして付された学習用データセットを用いた機械学習によって、前記作業予測モデルを構築する。
教師あり学習のためには、大量の教師データ(学習用データセット)が必要であることが知られており、そのような教師データの生成に必要なラベリング作業、および、教師データに付されているラベル(メタデータ)は、「アノテーション」とも呼ばれる。
例えば、前記作業予測モデルの構築に際して学習される教師データには、前記作業者を検出するためのバウンディングボックス(Bounding Box)の設定が不要であったとしても、前記作業場画像に対して以下の5つのアノテーションが必要となる。すなわち、前記作業場画像に対して、前記作業対象物を検出するためのバウンディングボックスの範囲を示す4点のうち、左下の点および右上の点の各々のX座標およびY座標を設定することが必要であり、つまり、4つのアノテーションが必要となる。さらに、前記作業場画像に対して、「前記作業場画像に撮像されている前記作業者が、前記作業場画像に撮像されている作業対象物について行っている作業の内容」を示す情報(ラベル)の付与が必要であり、つまり、1つのアノテーションが必要となる。
そして、大量の前記作業場画像の各々について、「前記作業場画像に撮像されている前記作業者が、前記作業場画像に撮像されている作業対象物について行っている作業の内容」を人間に判定させようとする場合、それに要するコストは極めて大きい。
そこで、前記作業予測モデルの構築に際して学習される教師データの生成に際しては、前記作業場画像から人間が判定した「作業の内容」ではなく、前記センサの検知情報から予測された「作業の内容」が、前記「作業の内容」を示すラベルとして付与される。つまり、前記作業予測モデルの構築に際して学習される教師データにおいては、前記作業場画像から人間が判定した「作業の内容」ではなく、前記センサの検知情報から予測された「作業の内容」が、前記「作業の内容」を示すラベルとして付されている。
そのため、前記作業予測モデルの構築に必要となるコスト(特に、前記学習用データセットの生成に必要なアノテーションコスト)は、前記「作業の内容」を示すラベルとして「前記作業場画像から人間が判定した内容」を用いる場合と比べて、大幅に抑制できる。例えば、前記作業場画像に対して必要な上述の5つのアノテーションの内の1つを、「人間による判定内容」から「前記作業推定装置等の装置が前記センサの検知情報から予測した内容」へと変更するので、アノテーションコストを20%抑制することができる。
したがって、前記の構成によれば、前記作業推定装置は、アノテーションコストが大幅に抑制された前記作業予測モデルを用いて、前記作業場画像から、前記作業場で前記作業者が行っている前記作業の内容を、高精度に推定することができるとの効果を奏する。
本発明の一態様に係る制御方法は、作業場において作業者が行っている作業の内容を推定する作業推定装置の制御方法であって、前記作業場を撮像した作業場画像または前記作業場画像から生成された特徴情報を入力とし、前記作業場画像に撮像されている前記作業者が、前記作業場画像に撮像されている作業対象物について行っている作業の内容を出力とする学習済モデルである作業予測モデルを用いて、前記作業場画像または前記特徴情報から、前記作業者が前記作業対象物について行っている作業の内容を予測する予測ステップと、前記作業予測モデルを用いずに予測された前記作業の内容、および、前記作業場に前記作業者が存在するか否かの判定結果の少なくとも一方を用いて、前記予測ステップでの予測の正否を判定する判定ステップと、前記判定ステップにて前記予測ステップでの予測が正しいと判定されると、前記予測ステップにて予測された前記作業の内容を、前記作業場において前記作業者が行っている前記作業の内容として推定する推定ステップと、を含む。
前記の構成によれば、前記制御方法は、前記作業予測モデルを用いて予測した前記作業の内容の正否を、前記作業予測モデルを用いずに予測された前記作業の内容、および、前記作業場における前記作業者の存否の判定結果の少なくとも一方を用いて判定する。そして、前記制御方法は、前記作業予測モデルを用いた予測が正しいと判定されると、前記作業予測モデルを用いて予測した前記作業の内容を、前記作業場において前記作業者が行っている前記作業の内容であると推定する。
つまり、前記制御方法は、前記作業予測モデルを用いて予測した前記作業の内容の正否を、前記作業予測モデルを用いずに予測された前記作業の内容、および、前記作業場に前記作業者が存在するか否かの判定結果の少なくとも一方を用いて検証する。
したがって、前記制御方法は、前記作業場画像から、前記作業場において前記作業者が行っている前記作業の内容を、高精度に推定することができるとの効果を奏する。
本発明は上述した各実施形態に限定されるものではなく、請求項に示した範囲で種々の変更が可能であり、異なる実施形態にそれぞれ開示された技術的手段を適宜組み合わせて得られる実施形態についても本発明の技術的範囲に含まれる。
10 情報処理装置(作業推定装置)
41 入力デバイス(センサ)
42 出力デバイス(工具)
90 器具(工具)
120 第一予測部(予測部)
141 存否予測部
142 作業予測部(作業検知部)
150 判定部
160 推定部
171 作業予測モデル
172 存否モデル
Ar 作業場
DS1 学習用データセット
Hu 作業者
Ia 全体画像
Ic 作業場画像
Id 検知情報
Ob 作業対象物
Op 作業
S120 (予測ステップ)
S130 (判定ステップ)
S140 (推定ステップ)
S210 (判定ステップ)
S220 (予測ステップ)
S230 (推定ステップ)
S310 (判定ステップ)
S330 (予測ステップ)
S340 (判定ステップ)
S350 (推定ステップ)
41 入力デバイス(センサ)
42 出力デバイス(工具)
90 器具(工具)
120 第一予測部(予測部)
141 存否予測部
142 作業予測部(作業検知部)
150 判定部
160 推定部
171 作業予測モデル
172 存否モデル
Ar 作業場
DS1 学習用データセット
Hu 作業者
Ia 全体画像
Ic 作業場画像
Id 検知情報
Ob 作業対象物
Op 作業
S120 (予測ステップ)
S130 (判定ステップ)
S140 (推定ステップ)
S210 (判定ステップ)
S220 (予測ステップ)
S230 (推定ステップ)
S310 (判定ステップ)
S330 (予測ステップ)
S340 (判定ステップ)
S350 (推定ステップ)
Claims (8)
- 作業場において作業者が行っている作業の内容を推定する作業推定装置であって、
前記作業場を撮像した作業場画像または前記作業場画像から生成された特徴情報を入力とし、前記作業場画像に撮像されている前記作業者が、前記作業場画像に撮像されている作業対象物について行っている作業の内容を出力とする学習済モデルである作業予測モデルを用いて、前記作業場画像または前記特徴情報から、前記作業者が前記作業対象物について行っている作業の内容を予測する予測部と、
前記作業予測モデルを用いずに予測された前記作業の内容、および、前記作業場に前記作業者が存在するか否かの判定結果の少なくとも一方を用いて、前記予測部の予測の正否を判定する判定部と、
前記判定部によって前記予測部の予測が正しいと判定されると、前記予測部によって予測された前記作業の内容を、前記作業場において前記作業者が行っている前記作業の内容として推定する推定部と、
を備える作業推定装置。 - 前記作業に用いられる工具、前記作業対象物、および、前記作業場の少なくとも1つの状態を検知するセンサの検知情報から、前記作業場において前記作業者が行っている前記作業の内容を予測する作業検知部をさらに備え、
前記判定部は、前記予測部によって予測された前記作業の内容と、前記作業検知部によって予測された前記作業の内容とが一致すると、前記予測部の予測が正しいと判定する
請求項1に記載の作業推定装置。 - (A)前記作業場を含む複数の作業場を撮像した全体画像、または、(B)前記作業場画像、または、(C)前記全体画像または前記作業場画像から生成された特徴情報を入力とし、前記作業場に前記作業者が存在するか否かを出力とする学習済モデルである存否モデルを用いて、前記全体画像、または、前記作業場画像、または、前記全体画像または前記作業場画像から生成された特徴情報から、前記作業場に前記作業者が存在するか否かを予測する存否予測部をさらに備え、
前記判定部は、前記存否予測部によって前記作業場に前記作業者が存在すると予測されると、前記予測部の予測が正しいと判定する
請求項1に記載の作業推定装置。 - 前記作業に用いられる工具、前記作業対象物、および、前記作業場の少なくとも1つの状態を検知するセンサの検知情報から、前記作業場において前記作業者が行っている前記作業の内容を予測する作業検知部と、
(A)前記作業場を含む複数の作業場を撮像した全体画像、または、(B)前記作業場画像、または、(C)前記全体画像または前記作業場画像から生成された特徴情報を入力とし、前記作業場に前記作業者が存在するか否かを出力とする学習済モデルである存否モデルを用いて、前記全体画像、または、前記作業場画像、または、前記全体画像または前記作業場画像から生成された特徴情報から、前記作業場に前記作業者が存在するか否かを予測する存否予測部と、
をさらに備え、
前記判定部は、前記存否予測部によって前記作業場に前記作業者が存在すると予測され、かつ、前記予測部によって予測された前記作業の内容と、前記作業検知部によって予測された前記作業の内容とが一致すると、前記予測部の予測が正しいと判定する
請求項1に記載の作業推定装置。 - 前記作業予測モデルは、前記作業に用いられる工具、前記作業対象物、および、前記作業場の少なくとも1つの状態を検知するセンサの検知情報から予測された、前記作業場において前記作業者が行っている前記作業の内容が、前記作業場画像または前記作業場画像から生成された特徴情報に対してラベルとして付された学習用データセットを用いた機械学習によって、構築される
請求項1から4のいずれか1項に記載の作業推定装置。 - 作業場において作業者が行っている作業の内容を推定する作業推定装置の制御方法であって、
前記作業場を撮像した作業場画像または前記作業場画像から生成された特徴情報を入力とし、前記作業場画像に撮像されている前記作業者が、前記作業場画像に撮像されている作業対象物について行っている作業の内容を出力とする学習済モデルである作業予測モデルを用いて、前記作業場画像または前記特徴情報から、前記作業者が前記作業対象物について行っている作業の内容を予測する予測ステップと、
前記作業予測モデルを用いずに予測された前記作業の内容、および、前記作業場に前記作業者が存在するか否かの判定結果の少なくとも一方を用いて、前記予測ステップでの予測の正否を判定する判定ステップと、
前記判定ステップにて前記予測ステップでの予測が正しいと判定されると、前記予測ステップにて予測された前記作業の内容を、前記作業場において前記作業者が行っている前記作業の内容として推定する推定ステップと、
を含む制御方法。 - 請求項1から5のいずれか1項に記載の作業推定装置としてコンピュータを機能させるための情報処理プログラムであって、前記各部としてコンピュータを機能させるための情報処理プログラム。
- 請求項7に記載の情報処理プログラムを記録したコンピュータ読み取り可能な記録媒体。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2021-009138 | 2021-01-22 | ||
JP2021009138A JP2022113042A (ja) | 2021-01-22 | 2021-01-22 | 作業推定装置、作業推定装置の制御方法、情報処理プログラム、および記録媒体 |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2022157988A1 true WO2022157988A1 (ja) | 2022-07-28 |
Family
ID=82548611
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/JP2021/007816 WO2022157988A1 (ja) | 2021-01-22 | 2021-03-02 | 作業推定装置、作業推定装置の制御方法、情報処理プログラム、および記録媒体 |
Country Status (2)
Country | Link |
---|---|
JP (1) | JP2022113042A (ja) |
WO (1) | WO2022157988A1 (ja) |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2019012328A (ja) * | 2017-06-29 | 2019-01-24 | 株式会社 日立産業制御ソリューションズ | 人行動推定システム |
JP2019197373A (ja) * | 2018-05-09 | 2019-11-14 | 高砂熱学工業株式会社 | 通知装置、情報処理装置、情報処理システム、情報処理方法、及び情報処理プログラム |
WO2020026299A1 (ja) * | 2018-07-30 | 2020-02-06 | 株式会社日立製作所 | 作業情報管理システム、および作業情報管理方法 |
WO2020138007A1 (ja) * | 2018-12-27 | 2020-07-02 | パナソニックIpマネジメント株式会社 | 作業支援装置、作業支援方法、及び、プログラム |
JP6789590B1 (ja) * | 2020-08-14 | 2020-11-25 | 株式会社キャッシュフローリノベーション | 生産性向上システム及び生産性向上方法 |
JP2020204819A (ja) * | 2019-06-14 | 2020-12-24 | オムロン株式会社 | 情報処理装置、情報処理方法、情報処理プログラム、および記録媒体 |
-
2021
- 2021-01-22 JP JP2021009138A patent/JP2022113042A/ja active Pending
- 2021-03-02 WO PCT/JP2021/007816 patent/WO2022157988A1/ja active Application Filing
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2019012328A (ja) * | 2017-06-29 | 2019-01-24 | 株式会社 日立産業制御ソリューションズ | 人行動推定システム |
JP2019197373A (ja) * | 2018-05-09 | 2019-11-14 | 高砂熱学工業株式会社 | 通知装置、情報処理装置、情報処理システム、情報処理方法、及び情報処理プログラム |
WO2020026299A1 (ja) * | 2018-07-30 | 2020-02-06 | 株式会社日立製作所 | 作業情報管理システム、および作業情報管理方法 |
WO2020138007A1 (ja) * | 2018-12-27 | 2020-07-02 | パナソニックIpマネジメント株式会社 | 作業支援装置、作業支援方法、及び、プログラム |
JP2020204819A (ja) * | 2019-06-14 | 2020-12-24 | オムロン株式会社 | 情報処理装置、情報処理方法、情報処理プログラム、および記録媒体 |
JP6789590B1 (ja) * | 2020-08-14 | 2020-11-25 | 株式会社キャッシュフローリノベーション | 生産性向上システム及び生産性向上方法 |
Also Published As
Publication number | Publication date |
---|---|
JP2022113042A (ja) | 2022-08-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6810097B2 (ja) | 異常検出器 | |
US10915419B2 (en) | Industrial control system, and assistance apparatus, control assist method, and program thereof | |
CN109839915A (zh) | 诊断装置、诊断方法及存储介质 | |
JP6977686B2 (ja) | 制御システムおよび制御装置 | |
JP7272128B2 (ja) | 情報処理装置、情報処理方法、情報処理プログラム、および記録媒体 | |
CN111308925B (zh) | 信息处理装置、生产指示辅助方法 | |
JP6711323B2 (ja) | プロセスの異常状態診断方法および異常状態診断装置 | |
CN107944563B (zh) | 机械学习装置以及机械学习方法 | |
WO2022091421A1 (ja) | 産業システム、異常検知システム及び異常検知方法 | |
JP2020155114A (ja) | 時変システム動作における異常検出のためのシステム、方法およびコンピュータ読取可能記憶媒体 | |
JP2019067278A (ja) | 識別コード読取装置及び機械学習装置 | |
WO2022157988A1 (ja) | 作業推定装置、作業推定装置の制御方法、情報処理プログラム、および記録媒体 | |
WO2016079833A1 (ja) | 異常検出装置、異常検出方法および異常検出プログラム | |
JP2020205027A (ja) | データ抽出装置、データ抽出装置の制御方法、情報処理プログラム、および記録媒体 | |
CN116300702A (zh) | 信息处理装置、信息处理方法以及非暂时性信息记录介质 | |
CN110895719A (zh) | 验证装置 | |
WO2022097310A1 (ja) | 作業推定装置、作業推定装置の制御方法、情報処理プログラム、および記録媒体 | |
WO2022234678A1 (ja) | 機械学習装置、分類装置、及び制御装置 | |
WO2020250501A1 (ja) | データ抽出装置、データ抽出装置の制御方法、情報処理プログラム、および記録媒体 | |
Riedel et al. | Evaluating Augmented Reality, Deep Learning and Paper-Based Assistance Systems in Industrial Manual Assembly | |
WO2018207605A1 (ja) | 正常異常判別装置、正常異常判別方法、及び正常異常判別システム | |
JP2021086219A (ja) | 協調作業システム、解析収集装置および解析プログラム | |
WO2024070189A1 (ja) | 要因分析装置及び要因分析方法 | |
US20210326600A1 (en) | Information management device and information management method | |
JP6297202B2 (ja) | 手順抽出システム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 21921095 Country of ref document: EP Kind code of ref document: A1 |
|
NENP | Non-entry into the national phase |
Ref country code: DE |
|
122 | Ep: pct application non-entry in european phase |
Ref document number: 21921095 Country of ref document: EP Kind code of ref document: A1 |