WO2022049694A1 - 学習装置、推定装置、学習方法、及び学習プログラム - Google Patents

学習装置、推定装置、学習方法、及び学習プログラム Download PDF

Info

Publication number
WO2022049694A1
WO2022049694A1 PCT/JP2020/033425 JP2020033425W WO2022049694A1 WO 2022049694 A1 WO2022049694 A1 WO 2022049694A1 JP 2020033425 W JP2020033425 W JP 2020033425W WO 2022049694 A1 WO2022049694 A1 WO 2022049694A1
Authority
WO
WIPO (PCT)
Prior art keywords
video data
learning
score
mask
data
Prior art date
Application number
PCT/JP2020/033425
Other languages
English (en)
French (fr)
Inventor
隆昌 永井
翔一郎 武田
信哉 志水
Original Assignee
日本電信電話株式会社
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 日本電信電話株式会社 filed Critical 日本電信電話株式会社
Priority to PCT/JP2020/033425 priority Critical patent/WO2022049694A1/ja
Priority to US18/023,859 priority patent/US20240024756A1/en
Priority to JP2022546795A priority patent/JP7393701B2/ja
Publication of WO2022049694A1 publication Critical patent/WO2022049694A1/ja

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/10Segmentation; Edge detection
    • G06T7/11Region-based segmentation
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63BAPPARATUS FOR PHYSICAL TRAINING, GYMNASTICS, SWIMMING, CLIMBING, OR FENCING; BALL GAMES; TRAINING EQUIPMENT
    • A63B71/00Games or sports accessories not covered in groups A63B1/00 - A63B69/00
    • A63B71/06Indicating or scoring devices for games or players, or for other sports activities
    • A63B71/0619Displays, user interfaces and indicating devices, specially adapted for sport equipment, e.g. display mounted on treadmills
    • A63B71/0669Score-keepers or score display devices
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T5/00Image enhancement or restoration
    • G06T5/77Retouching; Inpainting; Scratch removal
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/10Segmentation; Edge detection
    • G06T7/194Segmentation; Edge detection involving foreground-background segmentation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/10Image acquisition modality
    • G06T2207/10024Color image
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20081Training; Learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20084Artificial neural networks [ANN]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/30Subject of image; Context of image processing
    • G06T2207/30196Human being; Person
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/30Subject of image; Context of image processing
    • G06T2207/30221Sports video; Sports image

Definitions

  • the present invention relates to, for example, a learning device for learning know-how regarding a player's competition scoring method, a learning method, and a learning program, and an estimation device for estimating a competition score based on a learning result.
  • Non-Patent Document 1 a method has been proposed in which video data recording a series of movements played by an athlete is used as input data, and features are extracted from the video data by deep learning to estimate a score. There is.
  • FIG. 10 is a block diagram showing a schematic configuration of a learning device 100 and an estimation device 200 in the technique described in Non-Patent Document 1.
  • the learning processing unit 101 of the learning device 100 contains, as learning data, video data recording a series of movements played by the athlete, and a true score t score scored by the referee for the athlete's competition. Is given.
  • the learning processing unit 101 includes a DNN (Deep Neural Network), and applies coefficients such as weights and biases stored in the learning model data storage unit 102 to the DNN.
  • DNN Deep Neural Network
  • the learning processing unit 101 calculates the loss LSR using the estimated score y score obtained as an output value by giving the video data to the DNN and the true score t score corresponding to the video data.
  • the learning processing unit 101 calculates a new coefficient to be applied to the DNN by the error back propagation method so as to reduce the calculated loss LSR .
  • the learning processing unit 101 updates the coefficient by writing the calculated new coefficient to the learning model data storage unit 102.
  • the estimation device 200 includes an estimation processing unit 201 having a DNN having the same configuration as the learning processing unit 101, and a learning model data storage unit that previously stores learned learning model data stored by the learning model data storage unit 102 of the learning device 100. It is equipped with 202. The learned learning model data stored in the learning model data storage unit 202 is applied to the DNN of the estimation processing unit 201.
  • the estimation processing unit 201 provides the DNN with video data recording a series of movements in which an arbitrary competitor has competed, so that an estimated score y score for the competition can be obtained as an output value of the DNN.
  • Video data (hereinafter referred to as "original video data") recording a series of movements played by the athlete shown in FIG. 11 (a) and a plurality of image frames included in the original video data shown in FIG. 11 (b).
  • original video data recording a series of movements played by the athlete shown in FIG. 11 (a) and a plurality of image frames included in the original video data shown in FIG. 11 (b).
  • the area where the athlete is displayed is surrounded by rectangular areas 301, 302, 303, and the rectangular area is filled with the average color of the image frame (hereinafter referred to as “competitor concealed image data”).
  • the range of areas 301, 302, and 303 is shown by a dotted line frame, but this dotted line frame is shown to clarify the range and does not exist in the actual player concealed video data. ..
  • the accuracy of the estimated score y score obtained when the original video data was given to the estimation processing unit 201 was “0.8890”.
  • the accuracy of the estimated score y score obtained when the player concealed video data was given to the estimation processing unit 201 was "0.8563". .. From this experimental result, when the athlete concealed video data is given to the estimation processing unit 201, the score is estimated with high accuracy even though the athlete's movement cannot be seen, and the original video showing the athlete's movement can be seen. It can be seen that the estimation accuracy of the score is hardly reduced compared to the case of the data.
  • Non-Patent Document 1 only video data is given as learning data without explicitly giving features related to the movement of the athlete, for example, joint coordinates. Therefore, from the above experimental results, the technique described in Non-Patent Document 1 extracts features in the image that are not related to the movement of the athlete, for example, background features such as the venue, and the learning model data is the competition. It is presumed that it is not generalized to the behavior of the person. Since the characteristics of the background such as the venue are extracted, it is presumed that the technique described in Non-Patent Document 1 may deteriorate the accuracy of the video data including the unknown background.
  • the present invention generates learning model data generalized to the movement of the athlete from the video data recording the movement of the athlete without explicitly giving information such as joint information that is difficult to estimate.
  • the purpose is to provide technology that makes it possible to do so.
  • One aspect of the present invention is a mask video data in which a part of a region surrounding the competitor in each of a plurality of image frames included in the video data recording the movement of the competitor is arbitrarily masked, and recorded in the video data.
  • a learning device provided with a learning processing unit that generates learning model data showing the relationship between the true value score, which is the evaluation value for the competition of the competitor, and the mask score weighted according to the ratio of the masked area. be.
  • One aspect of the present invention is a mask video data in which a part of a region surrounding the competitor in each of a plurality of image frames included in the video data recording the movement of the competitor is arbitrarily masked, and recorded in the video data.
  • This is a learning method for generating learning model data showing the relationship between the true value score, which is the evaluation value for the competition of the competitor, and the mask score weighted according to the ratio of the masked region.
  • One aspect of the present invention is masked video data in which a part of a region surrounding the competitor in each of a plurality of image frames included in the video data recording the movement of the competitor is arbitrarily masked on a computer, and the video data.
  • a procedure for generating training model data showing the relationship between the true value score, which is the evaluation value for the competition of the competitor, and the mask score weighted according to the ratio of the masked area is executed. It is a learning program for.
  • FIG. 1 It is a block diagram which shows the structure of the learning apparatus by embodiment of this invention. It is a figure which shows an example of the image frame in this embodiment. It is a flowchart which shows the process flow of the learning data generation part of this embodiment. It is a figure which shows the relationship between the image frame of this embodiment, the area shown by the player area specific data, and a mask area. It is a figure which shows the state which masked the mask area of the image frame of this embodiment. It is a flowchart which shows the processing flow of the learning processing part of this embodiment. It is a figure which shows an example of the function approximator provided in the learning processing part of this embodiment, and the data given to the function approximator.
  • FIG. 1 is a block diagram showing a configuration of a learning device 1 according to an embodiment of the present invention.
  • the learning device 1 includes an input unit 11, a learning data generation unit 12, a learning processing unit 13, and a learning model data storage unit 14.
  • the input unit 11 captures video data in which a series of movements to be evaluated for scoring among the movements performed by the athlete are recorded together with the background. For example, if the athlete is a swimmer with a high diving, the video data shows that the athlete stands on the diving platform, jumps, twists, rotates, and so on until the entry into the pool is complete. The operation of will be recorded.
  • the input unit 11 captures the player area identification data indicating the position of the area in which the player is displayed in each of the plurality of image frames included in each of the video data is surrounded by a rectangular shape.
  • FIG. 2 is a diagram showing one image frame 41 included in video data recording a high diving competition for swimming, and a rectangular area 51 shown by a dotted line surrounding the entire image 71 of the athlete is a player. Area This is the area indicated by the specific data.
  • the competitor area identification data is data including XY coordinates of four vertices of a rectangular shape when the position of each pixel of the image frame 41 is indicated by XY coordinates with the upper left corner as the origin, for example.
  • the athlete area identification data may be automatically generated from each of the image frames included in the video data by, for example, the technique shown in the following reference, or all the image frames included in the video data can be visually confirmed. However, it may be generated manually.
  • the input unit 11 takes in the true score, which is the evaluation value for the movement of the athlete recorded in the video data.
  • the true score is, for example, a score actually scored by the referee when the video data is recorded with respect to the movement of the athlete recorded in the video data.
  • the input unit 11 captures a plurality of video data
  • the input unit 11 captures a plurality of competitor area specific data for each image frame included in the video data and one true value score for each video data.
  • the true value score is associated with the video data
  • each of the plurality of competitor area specific data is associated with each of the plurality of image frames included in the video data.
  • the learning data generation unit 12 corresponds to each of the plurality of image frames included in the video data based on the video data output by the input unit 11 and the competitor area identification data corresponding to the video data. Masked image data in which a part of the area indicated by the athlete area specific data is arbitrarily masked is generated for each image data. The learning data generation unit 12 generates a mask score for each video data, which is weighted according to the ratio of the masked region to the true value score corresponding to the video data output by the input unit 11.
  • the learning processing unit 13 generates learning model data showing the relationship between the mask video data and the mask score corresponding to the mask video data. More specifically, the learning processing unit 13 has a function approximation device, reads out the coefficient of the function approximation device stored in the learning model data storage unit 14, and applies the read coefficient to the function approximation device. The learning processing unit 13 performs training processing so that the estimated score obtained as an output value by giving the mask image data to the function approximation device approaches the mask score corresponding to the mask image data, so that the coefficient of the function approximation device is obtained. To update.
  • the function approximator is, for example, DNN.
  • the coefficient is a weight or bias applied to each of a plurality of neurons included in the DNN.
  • the learning model data storage unit 14 stores in advance the initial values of the coefficients applied to the function approximation device of the learning processing unit 13 in the initial state.
  • the coefficient stored in the learning model data storage unit 14 is rewritten to a new coefficient by the learning processing unit 13 every time the learning processing unit 13 calculates a new coefficient by the learning processing.
  • FIG. 3 is a flowchart showing the flow of the process of generating the mask video data and the mask score performed by the learning data generation unit 12.
  • the learning data generation unit 12 takes in the plurality of video data output by the input unit 11, the athlete area specific data corresponding to each of the plurality of video data, and the true value score (step Sa1).
  • the learning data generation unit 12 repeatedly performs the processes of steps Sa2 to Sa8 for each of the plurality of video data (loops La1s to La1e).
  • the learning data generation unit 12 randomly selects a predetermined ratio ( ⁇ ) indicating the ratio of the area to be masked (hereinafter referred to as “mask area”) from a value between 0 and 1.
  • a predetermined ratio
  • the learning data generation unit 12 selects a predetermined ratio ( ⁇ ) based on a uniform distribution in which each value between 0 and 1 appears with the same probability (step Sa2).
  • the learning data generation unit 12 calculates the mask score based on the true value score corresponding to the video data to be processed and the selected predetermined ratio ( ⁇ ). For example, when the true value score is t score and the mask score is m score , the learning data generation unit 12 calculates the mask score m score by the following equation (1) (step Sa3).
  • the learning data generation unit 12 repeatedly performs the processes of steps Sa4 to Sa8 for each of the plurality of image frames included in the video data to be processed (loops La2s to La2e).
  • steps Sa4 to Sa8 will be described with reference to FIGS. 4 and 5.
  • the image frame 41 shown in FIG. 4 is the image frame to be processed by the learning data generation unit 12.
  • the learning data generation unit 12 has a vertical length (H), a horizontal length (W), and an area (S) of the region 51 indicated by the athlete area identification data corresponding to the image frame 41 to be processed. ) Is calculated based on the XY coordinates of the four vertices included in the athlete area identification data (step Sa4).
  • the learning data generation unit 12 is based on, for example, the following equation (2) based on the predetermined ratio ( ⁇ ) selected in step Sa2 and the area (S) of the region 51 indicated by the calculated athlete area identification data. , The area of the mask area (S') is calculated (step Sa5).
  • the learning data generation unit 12 selects the range of the mask area so as to be the area (S') of the mask area. Specifically, the learning data generation unit 12 selects the length (H') in the vertical direction and the length (W') in the horizontal direction of the mask area. For example, the learning data generation unit 12 randomly selects the lateral length (W') of the mask area from the range of the following equation (3).
  • the learning data generation unit 12 uses the following equation (H') for the vertical length (H') of the mask area based on the selected horizontal length (W') and the area (S') of the mask area. Calculated according to 4).
  • the vertical length (H') of the mask area may be selected first. ..
  • the learning data generation unit 12 randomly selects the vertical length (H') of the mask area from the range of the following equation (5).
  • the learning data generation unit 12 uses the following equation (W') for the horizontal length (W') of the mask area based on the selected vertical length (H') and the area (S') of the mask area. Calculated according to 6).
  • the reason for selecting from the range of the formula (3) or the formula (5) is to make sure that the range of the mask area falls within the range of the area 51 indicated by the athlete area specific data.
  • the learning data generation unit 12 randomly selects based on a uniform distribution (step Sa6).
  • the learning data generation unit 12 considers the vertical length (H') and the horizontal length (W') of the mask area, and the entire mask area is the area 51 indicated by the athlete area specific data. Randomly select the position of the mask area within the range that fits in.
  • each pixel of the image frame 41 is shown by, for example, the XY coordinates with the upper left corner as the origin, the right direction is the direction in which the X coordinates increase, and the downward direction is the direction in which the Y coordinates increase.
  • the upper left coordinate of the area 51 indicated by the athlete area identification data is (X 1 , Y 1 ).
  • the learning data generation unit 12 randomly selects, for example, the X coordinate at the upper left of the mask area from the range of X 1 to X 1 + (WW') based on a uniform distribution, and the mask area.
  • the upper left Y coordinate is randomly selected from the range of Y 1 to Y 1 + (HH') based on a uniform distribution (step Sa7).
  • FIG. 4 shows an example of four mask regions 61, 62, 63, 64 randomly selected with respect to the region 51 indicated by the athlete region identification data in one image frame 41. Since the learning data generation unit 12 randomly selects one mask area for one image frame, any one of the mask areas 61, 62, 63, and 64 is used as the mask area of the image frame 41. Will be selected. As shown in FIG. 4, all of the four mask areas 61, 62, 63, and 64 are arranged at positions within the range of the area 51 indicated by the athlete area identification data.
  • the learning data generation unit 12 selects a color to fill the mask area. For example, the learning data generation unit 12 selects the average color of the image frame to be processed as the color that fills the mask area. The learning data generation unit 12 performs mask processing by filling the range of the mask area of the image frame to be processed with a selected color (step Sa7).
  • the mask areas 61, 62, 63, 64 shown in FIG. 4 are applied to the image frame 41, and the range of the mask areas 61, 62, 63, 64 is an image.
  • An example of being filled with the average color of the frame 41 is shown.
  • a part of the region 51 indicated by the athlete region identification data in the image frame 41 is arbitrarily masked.
  • the learning data generation unit 12 performs the processing of steps Sa4 to Sa8 for each of the image frames included in the video data to be processed (loop La2e), and in all the image frames of the video data to be processed. Generates masked video data that has been masked. The learning data generation unit 12 associates the generated mask video data with the mask score m score calculated in step Sa3 and outputs it to the learning processing unit 13 (step Sa9).
  • the entire image of the athlete may be visible depending on the range and position of the mask area.
  • a part of the image of the competitor is displayed in a state of being randomly hidden by a mask.
  • the learning data generation unit 12 repeatedly performs the processes of steps Sa2 to Sa8 for all the video data (loop La1e). As a result, the learning data generation unit 12 is used by the learning processing unit 13 for learning processing based on the plurality of video data, the competitor area identification data corresponding to each of the plurality of video data, and the true value score. As the training data to be performed, a plurality of mask video data and a plurality of mask scores m score associated with each of the mask video data can be generated.
  • the learning data generation unit 12 selects a predetermined ratio ( ⁇ ) from the values between 0 and 1 based on the uniform distribution, but other than the uniform distribution.
  • a predetermined percentage ( ⁇ ) may be selected based on other distributions.
  • the learning data generation unit 12 is limited to five values such as 0.0, 0.25, 0.5, 0.75, 1.0, and any one of the five values is set to a predetermined ratio. It may be randomly selected as ( ⁇ ), and a range to be selected, that is, a range of 0 to 1 is randomly selected from a plurality of fixed values specified by engraving with an arbitrary step size other than 0.25.
  • the value may be a predetermined ratio ( ⁇ ).
  • the learning data generation unit 12 randomly selects the horizontal length (W') or the vertical length (H') of the mask region based on the uniform distribution. However, it may be randomly selected based on a distribution other than the uniform distribution. Similar to the selection of a predetermined ratio ( ⁇ ), a value randomly selected from a plurality of fixed values specified by engraving the selected range with an arbitrary step size is used as the horizontal length (W'). Alternatively, the length in the vertical direction (H') may be used.
  • step Sa7 the learning data generation unit 12 randomly selects the position of the mask region based on the uniform distribution, but randomly selects the position based on a distribution other than the uniform distribution. You may try to do it. Similar to the selection of a predetermined ratio ( ⁇ ), a value randomly selected from a plurality of fixed values specified by engraving the selected range with an arbitrary step size may be used as the position of the mask area.
  • step Sa3 the learning data generation unit 12 calculates the mask score m score by the equation (1), but applies ⁇ to other functions, for example, variable parameters such as the sigmoid function. Then, the mask score m score may be calculated from the true score t score .
  • the learning data generation unit 12 selects the average color of the image frame to be processed as the color that fills the mask area corresponding to the image frame. It is not limited to the form of.
  • the learning data generation unit 12 may select the average color of all the image frames included in the video data to be processed as the color that fills all the mask areas corresponding to the video data.
  • the learning data generation unit 12 may fill all the mask areas with the same color with an arbitrarily determined color to perform mask processing. Since it is better to make the color of the mask area inconspicuous, it is necessary to select an inconspicuous color according to the overall hue of each image frame. It is considered most effective to select the average color for each image frame.
  • FIG. 6 is a flowchart showing the flow of learning processing performed by the learning processing unit 13.
  • the learning processing unit 13 stores in advance the upper limit of the number of learning steps required for the coefficients of the function approximation device provided inside to sufficiently converge in the internal storage area.
  • the learning model data storage unit 14 stores in advance the initial values of the coefficients applied to the function approximation device included in the learning processing unit 13.
  • the learning processing unit 13 takes in a plurality of mask video data output by the learning data generation unit 12 and a plurality of mask scores m score associated with each of the plurality of mask video data.
  • the learning processing unit 13 assigns a number indicating the order of processing to each of the combinations of the captured plurality of mask video data and the plurality of mask scores m score , and writes and stores the data in the internal storage area (step Sb1). ..
  • the learning processing unit 13 generates an area for storing a variable n indicating the number of learning steps (hereinafter referred to as “learning step number n”) in the internal storage area, and writes “1” in the generated area (step Sb2). ..
  • the learning processing unit 13 reads out the coefficients stored in the learning model data storage unit 14, and applies the read out coefficients to the function approximation device (step Sb3).
  • the learning processing unit 13 reads out the mask video data in the first processing order and the mask score m score from the internal storage area.
  • the learning processing unit 13 gives the read mask video data to the function approximation device as input data (step Sb4).
  • the learning processing unit 13 calculates an error between the estimated score (hereinafter referred to as “estimated score y score ”) which is the output value of the function approximation device and the mask score m score read in step Sb4 (step Sb5).
  • the learning processing unit 13 applies a loss function to the calculated error to calculate the loss.
  • the learning processing unit 13 calculates a new coefficient of the function approximation device by a method such as an error back propagation method so as to reduce the calculated loss.
  • the learning processing unit 13 writes the calculated new coefficient in the learning model data storage unit 14 and updates the coefficient (step Sb6).
  • a function for calculating the estimated score y score and the L1 distance (Manhattan distance) of the mask score m score may be used, or the estimated score y score and the L2 distance (Euclidean distance) of the mask score m score may be used.
  • a function for calculating the distance) may be used, or a function for calculating the sum of the L1 distance and the L2 distance may be used.
  • the learning processing unit 13 reads the number of learning steps n from the internal storage area, and determines whether or not the read number of learning steps n matches the upper limit value stored in the internal storage area (step Sb7). When the learning processing unit 13 determines that the number of read learning steps n does not match the upper limit value (steps Sb7, No), 1 is added to the number of read learning steps n. The learning processing unit 13 writes the value of n + 1, which is an addition value, as a new number of learning steps n in the area of the number of learning steps n in the internal storage area (step Sb8), and performs the processing after step Sb3 again.
  • the learning processing unit 13 reads out the coefficient updated in step Sb6 from the learning model data storage unit 14, and applies the read coefficient to the function approximation device.
  • the learning processing unit 13 reads out the mask video data in the next processing order and the mask score m score , and gives the read mask video data to the function approximation device.
  • the learning processing unit 13 performs the processing of steps Sb4 to Sb6 for the combination of all the mask video data and the mask score m score while the processing of steps Sb3 to Sb6 is repeated, the order is changed.
  • the mask video data in the first processing order and the combination of the mask score m score are read out in order, and the processing of steps Sb4 to Sb6 is performed.
  • the learning processing unit 13 determines that the read learning step number n matches the upper limit value (step Sb7, Yes)
  • the learning processing unit 13 ends the processing.
  • the learning model data storage unit 14 stores the learned coefficients that have been sufficiently converged, and the learned coefficients become the learning model data indicating the learned learning model.
  • FIG. 6 shows an online learning method for updating the coefficient of the function approximation device for each combination of the mask video data and the mask score m score .
  • Mini-batch learning may be performed to update the function approximation coefficient for each combination with m score , or batch learning to update the function approximation coefficient for each combination of all mask video data and the mask score m score . May be done.
  • FIG. 7 is a diagram showing a configuration of DNN in the function approximation device 30 which is an example of the function approximation device included in the learning processing unit 13.
  • the learning processing unit 13 resamples the mask video data into 96 frames, divides the 96 frames into 16 frames, and generates 6 divided mask video data.
  • the function approximator 30 includes three-dimensional convolutional network layers 31-1 to 31-6, an average unit 32, and a score regression network layer 33. Each of the three-dimensional convolutional network layers 31-1 to 31-6 captures each of the divided mask video data divided into six. Each of the three-dimensional convolutional network layers 31-1 to 31-6 performs feature extraction from the divided mask video data captured by each, and outputs the feature amount of the divided mask video data captured by each.
  • the averaging unit 32 averages and outputs the feature amounts of the divided mask video data output by each of the three-dimensional convolutional network layers 31-1 to 31-6.
  • the score regression network layer 33 performs regression analysis based on the average of the feature amounts of the divided mask video data output by the averaging unit 32 and the mask score m score corresponding to the mask video data, and the feature amount of the divided mask video data. The relationship between the average of and the mask score m score is extracted.
  • the coefficients stored in the learning model data storage unit 14 are applied to the three-dimensional convolutional network layers 31-1 to 31-6 and the score regression network layer 33.
  • a shared coefficient, that is, the same coefficient is applied to each of the three-dimensional convolutional network layers 31-1 to 31-6.
  • FIG. 8 is a block diagram showing the configuration of the estimation device 2 according to the embodiment of the present invention.
  • the estimation device 2 includes an input unit 21, an estimation processing unit 22, and a learning model data storage unit 23.
  • the learning model data storage unit 23 stores in advance the learned coefficients stored in the learning model data storage unit 14 of the learning device 1, that is, the learned learning model data.
  • the input unit 21 takes in arbitrary video data, that is, video data in which a series of operations performed by an arbitrary competitor is recorded together with the background.
  • the estimation processing unit 22 calculates an estimated score corresponding to the video data based on the arbitrary video data captured by the input unit 21 and the learned learning model data stored in the learning model data storage unit 23.
  • the estimation processing unit 22 includes a function approximator having the same configuration as the learning processing unit 13.
  • FIG. 9 is a flowchart showing the flow of processing by the estimation device 2.
  • the input unit 21 captures arbitrary video data and outputs the captured video data to the estimation processing unit 22 (step Sc1).
  • the estimation processing unit 22 takes in the video data output by the input unit 21.
  • the estimation processing unit 22 reads the learned learning model data, that is, the learned coefficient from the learning model data storage unit 23, and applies the read learned coefficient to the function approximation device (step Sc2).
  • the estimation processing unit 22 gives the captured video data to the function approximation device as input data (step Sc3).
  • the estimation processing unit 22 outputs the output value of the function approximation device as an estimated score for the video data (step Sc4).
  • the input unit 11 records the video data, the athlete area specifying data for specifying the area surrounding the player in each of the plurality of image frames included in the video data, and the video data.
  • the true value score which is the evaluation value for the competition of the athlete, is taken in.
  • the learning data generation unit 12 is a region of a part of an arbitrary position of the region indicated by the competitor region specific data corresponding to each image frame in each of the plurality of image frames included in the video data, and is for each video data.
  • Masked video data is generated by masking an area of a predetermined ratio that is arbitrarily determined, and the true value score of each video data is weighted according to the predetermined ratio corresponding to the video data. Generate a mask score.
  • the learning processing unit 13 generates learning model data showing the relationship between the mask video data corresponding to the video data and the mask score corresponding to the video data.
  • learning model data showing the relationship between the mask video data corresponding to the video data and the mask score corresponding to the video data.
  • the shape of the region indicated by the athlete area specific data is a rectangular shape, but the shape is not limited to the rectangular shape and may be a shape other than the rectangular shape.
  • the true score is the score actually scored by the referee, but it may be a score scored by a standard other than the quantitative scoring standard adopted in the actual competition. ..
  • the function approximation device included in the learning processing unit 13 of the learning device 1 and the estimation processing unit 22 included in the estimation device 2 of the above embodiment is, for example, a DNN, and the configuration shown in FIG. 7 is shown as an example.
  • Neural networks other than DNN, or means by machine learning may be applied.
  • the learning device 1 and the estimation device 2 may be integrated and configured.
  • the device in which the learning device 1 and the estimation device 2 are integrated has a learning mode and an estimation mode.
  • the learning mode is a mode in which the learning process by the learning device 1 is performed to generate a learned learning model. That is, in the learning mode, the device in which the learning device 1 and the estimation device 2 are integrated executes the process shown in FIG.
  • the estimation mode is a mode in which an estimated score is output using a trained model. That is, in the estimation mode, the device in which the learning device 1 and the estimation device 2 are integrated executes the process shown in FIG.
  • the learning device 1 and the estimation device 2 in the above-described embodiment may be realized by a computer.
  • a program for realizing this function may be recorded on a computer-readable recording medium, and the program recorded on the recording medium may be read by a computer system and executed.
  • the term "computer system” as used herein includes hardware such as an OS and peripheral devices.
  • the "computer-readable recording medium” refers to a portable medium such as a flexible disk, a magneto-optical disk, a ROM, or a CD-ROM, and a storage device such as a hard disk built in a computer system.
  • a "computer-readable recording medium” is a communication line for transmitting a program via a network such as the Internet or a communication line such as a telephone line, and dynamically holds the program for a short period of time. It may also include a program that holds a program for a certain period of time, such as a volatile memory inside a computer system that is a server or a client in that case. Further, the above program may be for realizing a part of the above-mentioned functions, and may be further realized for realizing the above-mentioned functions in combination with a program already recorded in the computer system. It may be realized by using a programmable logic device such as FPGA (Field Programmable Gate Array).
  • FPGA Field Programmable Gate Array
  • 1 ... learning device, 11 ... input unit, 12 ... learning data generation unit, 13 ... learning processing unit, 14 ... learning model data storage unit

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Software Systems (AREA)
  • Physical Education & Sports Medicine (AREA)
  • General Health & Medical Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Human Computer Interaction (AREA)
  • Artificial Intelligence (AREA)
  • Data Mining & Analysis (AREA)
  • Evolutionary Computation (AREA)
  • Medical Informatics (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Mathematical Physics (AREA)
  • Image Analysis (AREA)

Abstract

競技者の動作を記録した映像データに含まれる複数の画像フレームの各々における競技者を囲む領域の一部分を任意にマスクしたマスク映像データと、映像データに記録された競技者の競技に対する評価値である真値スコアに対してマスクした領域の割合に応じた重み付けをしたマスクスコアとの関係を示す学習モデルデータを生成する。

Description

学習装置、推定装置、学習方法、及び学習プログラム
 本発明は、例えば、競技者の競技の採点の手法に関するノウハウを学習する学習装置、学習方法、及び学習プログラム、並びに、学習結果に基づいて競技のスコアを推定する推定装置に関する。
 スポーツ競技において、高飛び込み、フィギュアスケート及び体操等の選手が行った競技に対して、オフィシャルな審判員がスコアを採点し、採点したスコアに基づいて個々の競技の順位を決める競技がある。このような競技には、採点における定量的な採点基準が存在している。
 近年、このような競技におけるスコアを自動的に推定するといったコンピュータビジョン分野での活動品質評価で使われる技術の検討が進められており、このような技術としてAQA(Action Quality Assessment)という技術が知られている。
 例えば、非特許文献1に記載の技術では、競技者が競技した一連の動作を記録した映像データを入力データとし、深層学習により映像データから特徴を抽出してスコアを推定する手法が提案されている。
 図10は、非特許文献1に記載の技術における学習装置100と、推定装置200の概略構成を示すブロック図である。学習装置100の学習処理部101には、学習用データとして、競技者が競技した一連の動作を記録した映像データと、当該競技者の競技に対して審判員が採点した真値スコアtscoreとが与えられる。学習処理部101は、DNN(Deep Neural Network)を備えており、DNNに学習モデルデータ記憶部102が記憶する重みやバイアス等の係数を適用する。
 学習処理部101は、DNNに映像データを与えることにより出力値として得られる推定スコアyscoreと、当該映像データに対応する真値スコアtscoreとを用いて損失LSRを算出する。学習処理部101は、算出した損失LSRを小さくするように誤差逆伝搬法によりDNNに適用する新たな係数を算出する。学習処理部101は、算出した新たな係数を学習モデルデータ記憶部102に書き込むことにより係数を更新する。
 これらの係数を更新する処理を繰り返すことにより、係数が次第に収束し、最終的に収束した係数が、学習済みの学習モデルを示す学習モデルデータとして学習モデルデータ記憶部102に記憶されることになる。なお、非特許文献1では、損失LSRの算出に、LSR=L1距離(yscore,tscore)+L2距離(yscore,tscore)という損失関数を用いている。
 推定装置200は、学習処理部101と同一構成のDNNを備える推定処理部201と、学習装置100の学習モデルデータ記憶部102が記憶する学習済みの学習モデルデータを予め記憶する学習モデルデータ記憶部202とを備える。推定処理部201のDNNには、学習モデルデータ記憶部202が記憶する学習済みの学習モデルデータが適用される。推定処理部201は、任意の競技者が競技した一連の動作を記録した映像データを入力データとしてDNNに与えることにより、DNNの出力値として当該競技に対する推定スコアyscoreが得られる。
Paritosh Parmar and Brendan Tran Morris,"Learning To Score Olympic Events", In CVPR Workshop. 2017
 非特許文献1に記載の技術に対して、以下のような実験を試みた。図11(a)に示す競技者が競技した一連の動作を記録した映像データ(以下「原映像データ」という。)と、図11(b)に示す原映像データに含まれる複数の画像フレームの各々において競技者が表示されている領域を矩形形状の領域301,302,303で囲み、矩形形状の領域を画像フレームの平均色で塗りつぶした映像データ(以下「競技者隠蔽映像データ」という。)とを準備する。なお、領域301,302,303の範囲を点線の枠で示しているが、この点線の枠は、範囲を明確にするために示したものであり、実際の競技者隠蔽映像データには存在しない。
 図11(a)に示すように、推定処理部201に対して原映像データを与えた場合に得られる推定スコアyscoreの正確度合いは「0.8890」であった。これに対して、図11(b)に示すように、推定処理部201に対して競技者隠蔽映像データを与えた場合に得られる推定スコアyscoreの正確度合いは「0.8563」であった。この実験結果より、競技者隠蔽映像データを推定処理部201に与えた場合、競技者の動作が見えないにも関わらず、高精度でスコアを推定しており、競技者の動作が見える原映像データの場合と比較して、スコアの推定精度がほとんど下がっていないことが分かる。
 非特許文献1に記載の技術では、競技者の動作に関する特徴、例えば、関節座標などを明示的に与えずに、映像データのみを学習用のデータとして与えている。そのため、上記の実験結果より、非特許文献1に記載の技術は、競技者の動作に関係ない映像中の特徴、例えば、会場などの背景の特徴を抽出しており、学習モデルデータは、競技者の動作に汎化していないのではないかと推測される。会場などの背景の特徴を抽出していることから、非特許文献1に記載の技術は、未知の背景を含む映像データに対して精度が悪化するのではないかとも推測される。
 人間の関節座標などの関節情報を明示的に与える手法も存在するが、関節は複雑な動作をするため推定が困難であり、不正確な関節情報は、逆に精度に悪影響を及ぼしてしまう。そのため、関節情報を明示的に与える手法は、回避したいという事情もある。
 上記事情に鑑み、本発明は、関節情報等の推定が困難な情報を明示的に与えることなく、競技者の動作を記録した映像データから、競技者の動作に汎化した学習モデルデータを生成することを可能とする技術の提供を目的としている。
 本発明の一態様は、競技者の動作を記録した映像データに含まれる複数の画像フレームの各々における前記競技者を囲む領域の一部分を任意にマスクしたマスク映像データと、前記映像データに記録された前記競技者の競技に対する評価値である真値スコアに対して前記マスクした領域の割合に応じた重み付けをしたマスクスコアとの関係を示す学習モデルデータを生成する学習処理部を備える学習装置である。
 本発明の一態様は、競技者の動作を記録した映像データを取り込む入力部と、競技者の動作を記録した映像データに含まれる複数の画像フレームの各々における前記競技者を囲む領域の一部分を任意にマスクしたマスク映像データと、前記映像データに記録された前記競技者の競技に対する評価値である真値スコアに対して前記マスクした領域の割合に応じた重み付けをしたマスクスコアとの関係を示す学習モデルデータと、前記映像データとに基づいて、前記映像データに対応する推定スコアを算出する推定処理部と、を備える推定装置である。
 本発明の一態様は、競技者の動作を記録した映像データに含まれる複数の画像フレームの各々における前記競技者を囲む領域の一部分を任意にマスクしたマスク映像データと、前記映像データに記録された前記競技者の競技に対する評価値である真値スコアに対して前記マスクした領域の割合に応じた重み付けをしたマスクスコアとの関係を示す学習モデルデータを生成する学習方法である。
 本発明の一態様は、コンピュータに、競技者の動作を記録した映像データに含まれる複数の画像フレームの各々における前記競技者を囲む領域の一部分を任意にマスクしたマスク映像データと、前記映像データに記録された前記競技者の競技に対する評価値である真値スコアに対して前記マスクした領域の割合に応じた重み付けをしたマスクスコアとの関係を示す学習モデルデータを生成させる手順、を実行させるための学習プログラムである。
 本発明により、関節情報等の推定が困難な情報を明示的に与えることなく、競技者の動作を記録した映像データから、競技者の動作に汎化した学習モデルデータを生成することが可能になる。
本発明の実施形態による学習装置の構成を示すブロック図である。 本実施形態における画像フレームの一例を示す図である。 本実施形態の学習用データ生成部の処理の流れを示すフローチャートである。 本実施形態の画像フレームと競技者領域特定データが示す領域とマスク領域との関係を示す図である。 本実施形態の画像フレームのマスク領域にマスク処理を行った状態を示す図である。 本実施形態の学習処理部の処理の流れを示すフローチャートである。 本実施形態の学習処理部が備える関数近似器の一例と当該関数近似器に与えられるデータを示す図である。 本実施形態の推定装置の構成を示すブロック図である。 本実施形態の推定装置の処理の流れを示すフローチャートである。 非特許文献1に記載の技術における学習装置と推定装置の構成を示すブロック図である。 非特許文献1に記載の技術に対して行った実験の概要とその結果を示す図である。
(学習装置の構成)
 以下、本発明の実施形態について図面を参照して説明する。図1は、本発明の実施形態による学習装置1の構成を示すブロック図である。学習装置1は、入力部11、学習用データ生成部12、学習処理部13、及び学習モデルデータ記憶部14を備える。
 入力部11は、競技者が行う動作の中で採点の評価の対象となる一連の動作を背景と共に記録した映像データを取り込む。例えば、競技者が、水泳の高飛び込みの選手である場合、映像データには、競技者が、飛び込み台に立ち、ジャンプして、ひねりや回転などの動作をして、プールへの入水が完了するまでの動作が記録されることになる。入力部11は、映像データの各々に含まれる複数の画像フレームの各々において競技者が表示されている領域を矩形形状で囲んだ領域の位置を示す競技者領域特定データを取り込む。
 例えば、図2は、水泳の高飛び込みの競技を記録した映像データに含まれる1つの画像フレーム41を示す図であり、競技者の画像71の全体を囲む点線で示す矩形の領域51が、競技者領域特定データが示す領域になる。競技者領域特定データは、画像フレーム41の各画素の位置が、例えば、左上の角を原点としたXY座標で示される場合、矩形形状の4つ頂点のXY座標を含むデータである。
 競技者領域特定データは、例えば、下記の参考文献に示す技術によって映像データに含まれる画像フレームの各々から自動的に生成してもよいし、映像データに含まれる全ての画像フレームを目視で確認しながら手動で生成してもよい。
[参考文献:Kaiming He, Georgia Gkioxari, Piotr Dollar and Ross Girshick, “Mask R-CNN”, In ICCV, 2017]
 入力部11は、映像データに記録される競技者の動作に対する評価値である真値スコアを取り込む。真値スコアは、例えば、映像データに記録される競技者の動作に対して、映像データが記録された際に実際に審判員が採点した点数である。
 入力部11は、複数の映像データを取り込むため、1つの映像データごとに、当該映像データに含まれる画像フレームごとの複数の競技者領域特定データと、1つの真値スコアを取り込むことになる。なお、真値スコアは、映像データに関連付けられており、複数の競技者領域特定データの各々は、映像データに含まれる複数の画像フレームの各々に関連付けられている。
 学習用データ生成部12は、入力部11が出力する映像データと、映像データに対応する競技者領域特定データとに基づいて、映像データに含まれる複数の画像フレームの各々において、各々に対応する競技者領域特定データが示す領域の一部分を任意にマスクしたマスク映像データを映像データごとに生成する。学習用データ生成部12は、入力部11が出力する映像データに対応する真値スコアに対してマスクした領域の割合に応じて重み付けをしたマスクスコアを映像データごとに生成する。
 学習処理部13は、マスク映像データと、当該マスク映像データに対応するマスクスコアとの関係を示す学習モデルデータを生成する。より詳細には、学習処理部13は、関数近似器を有しており、学習モデルデータ記憶部14が記憶する関数近似器の係数を読み出し、読み出した係数を関数近似器に適用する。学習処理部13は、マスク映像データを関数近似器に与えることにより出力値として得られる推定スコアが、当該マスク映像データに対応するマスクスコアに近づくように学習処理を行うことにより関数近似器の係数を更新する。ここで、関数近似器は、例えばDNNである。係数とは、DNNに含まれる複数のニューロンの各々に適用される重みやバイアスである。
 学習モデルデータ記憶部14は、初期状態において、学習処理部13の関数近似器に適用される係数の初期値を予め記憶する。学習モデルデータ記憶部14が記憶する係数は、学習処理部13が学習処理により新たな係数を算出するごとに、学習処理部13によって新たな係数に書き替えられる。
(学習用データ生成部による処理)
 図3は、学習用データ生成部12が行うマスク映像データとマスクスコアを生成する処理の流れを示すフローチャートである。学習用データ生成部12は、入力部11が出力する複数の映像データと、複数の映像データの各々に対応する競技者領域特定データ及び真値スコアとを取り込む(ステップSa1)。
 学習用データ生成部12は、複数の映像データの各々に対して、ステップSa2~Sa8の処理を繰り返し行う(ループLa1s~La1e)。学習用データ生成部12は、マスクする領域(以下「マスク領域」という。)の割合を示す所定の割合(λ)を0~1の間の値からランダムに選択する。例えば、学習用データ生成部12は、0~1の間の各値が同確率で出現する一様分布に基づいて、所定の割合(λ)を選択する(ステップSa2)。
 学習用データ生成部12は、処理対象の映像データに対応する真値スコアと、選択した所定の割合(λ)とに基づいて、マスクスコアを算出する。例えば、真値スコアをtscoreとし、マスクスコアをmscoreとした場合、学習用データ生成部12は、次式(1)によりマスクスコアmscoreを算出する(ステップSa3)。
score=λtscore・・・(1)
 学習用データ生成部12は、処理対象の映像データに含まれる複数の画像フレームの各々に対して、ステップSa4~Sa8の処理を繰り返し行う(ループLa2s~La2e)。以下、図4及び図5を参照しつつ、ステップSa4~Sa8の処理について説明する。
 図4に示す画像フレーム41が、学習用データ生成部12の処理対象の画像フレームであるとする。学習用データ生成部12は、処理対象の画像フレーム41に対応する競技者領域特定データが示す領域51の縦方向の長さ(H)と、横方向の長さ(W)と、面積(S)とを、競技者領域特定データに含まれる4頂点のXY座標に基づいて算出する(ステップSa4)。
 学習用データ生成部12は、ステップSa2において選択した所定の割合(λ)と、算出した競技者領域特定データが示す領域51の面積(S)とに基づいて、例えば、次式(2)により、マスク領域の面積(S’)を算出する(ステップSa5)。
S’=λS・・・(2)
 学習用データ生成部12は、マスク領域の面積(S’)になるように、マスク領域の範囲を選択する。具体的は、学習用データ生成部12は、マスク領域の縦方向の長さ(H’)と、横方向の長さ(W’)とを選択する。例えば、学習用データ生成部12は、マスク領域の横方向の長さ(W’)を次式(3)の範囲内からランダムに選択する。
 S’/H≦W’≦W・・・(3)
 学習用データ生成部12は、選択した横方向の長さ(W’)と、マスク領域の面積(S’)とに基づいて、マスク領域の縦方向の長さ(H’)を次式(4)により算出する。
 H’=S’/W’・・・(4)
 なお、上記のように、マスク領域の横方向の長さ(W’)を先に選択するのではなく、マスク領域の縦方向の長さ(H’)を先に選択するようにしてもよい。その場合、例えば、学習用データ生成部12は、マスク領域の縦方向の長さ(H’)を次式(5)の範囲内からランダムに選択する。
 S’/W≦H’≦H・・・(5)
 学習用データ生成部12は、選択した縦方向の長さ(H’)と、マスク領域の面積(S’)とに基づいて、マスク領域の横方向の長さ(W’)を次式(6)により算出する。
 W’=S’/H’・・・(6)
 式(3)または式(5)の範囲から選択するようにしているのは、マスク領域の範囲が、競技者領域特定データが示す領域51の範囲内に収まるようにするためである。式(3)の範囲から横方向の長さ(W’)をランダムに選択する際、及び、式(5)の範囲から縦方向の長さ(H’)をランダムに選択する際、例えば、学習用データ生成部12は、一様分布に基づいてランダムに選択する(ステップSa6)。
 学習用データ生成部12は、マスク領域の縦方向の長さ(H’)及び横方向の長さ(W’)を考慮して、マスク領域の全体が、競技者領域特定データが示す領域51に収まる範囲内でマスク領域の位置をランダムに選択する。
 画像フレーム41の各画素の位置が、例えば、左上の角を原点としたXY座標で示されており、右方向がX座標が増加する方向であり、下方向がY座標が増加する方向であるとする。競技者領域特定データが示す領域51の左上の座標が(X,Y)であるとする。この場合、学習用データ生成部12は、例えば、マスク領域の左上のX座標をX~X+(W-W’)の範囲から一様分布に基づいてランダムに選択し、マスク領域の左上のY座標をY~Y+(H-H’)の範囲から一様分布に基づいてランダムに選択する(ステップSa7)。
 図4には、1つの画像フレーム41における競技者領域特定データが示す領域51に対して、ランダムに選択された4つのマスク領域61,62,63,64の例を示している。なお、学習用データ生成部12は、1つの画像フレームに対してランダムに1つのマスク領域を選択するため、マスク領域61,62,63,64のいずれか1つが、画像フレーム41のマスク領域として選択されることになる。図4に示すように、4つのマスク領域61,62,63,64のいずれもが、競技者領域特定データが示す領域51の範囲内に収まる位置に配置されている。
 学習用データ生成部12は、マスク領域を塗りつぶす色を選択する。例えば、学習用データ生成部12は、処理対象の画像フレームの平均色を、マスク領域を塗りつぶす色として選択する。学習用データ生成部12は、処理対象の画像フレームのマスク領域の範囲を、選択した色で塗りつぶすことによりマスク処理を行う(ステップSa7)。
 図5(a)~(d)は、それぞれ図4に示したマスク領域61,62,63,64が、画像フレーム41に適用されて、マスク領域61,62,63,64の範囲が、画像フレーム41の平均色で塗りつぶされた例を示している。これにより、画像フレーム41における競技者領域特定データが示す領域51の一部分が任意にマスクされることになる。
 学習用データ生成部12は、処理対象の映像データに含まれる画像フレームの各々に対して、ステップSa4~Sa8の処理を行うことにより(ループLa2e)、処理対象の映像データの全ての画像フレームにおいてマスク処理が行われたマスク映像データを生成する。学習用データ生成部12は、生成したマスク映像データに、ステップSa3で算出したマスクスコアmscoreを関連付けて学習処理部13に出力する(ステップSa9)。
 例えば、学習用データ生成部12が生成したマスク映像データに含まれる複数の画像フレームを時系列順に最初から表示すると、マスク領域の範囲や位置によっては、競技者の画像の全体が見える場合もあるが、主として、競技者の画像の一部がランダムにマスクで隠された状態で表示されることになる。
 学習用データ生成部12は、全ての映像データに対して、ステップSa2~Sa8の処理を繰り返し行う(ループLa1e)。これにより、学習用データ生成部12は、複数の映像データと、複数の映像データの各々に対応する競技者領域特定データ、及び真値スコアとに基づいて、学習処理部13が学習処理に利用する学習用のデータとして、複数のマスク映像データと、マスク映像データの各々に関連付けられた複数のマスクスコアmscoreとを生成することができる。
 なお、上記のステップSa2では、学習用データ生成部12は、一様分布に基づいて、0~1の間の値から所定の割合(λ)を選択するようにしているが、一様分布以外の他の分布に基づいて所定の割合(λ)を選択してもよい。例えば、学習用データ生成部12は、0.0,0.25,0.5,0.75,1.0のような5つの値に限定して、5つの値のいずれかを所定の割合(λ)としてランダムに選択してもよく、選択する範囲、すなわち0~1の範囲を0.25以外の任意の刻み幅で刻むことにより特定される複数の固定値の中からランダムに選択した値を所定の割合(λ)としてもよい。
 上記のステップSa6では、学習用データ生成部12は、一様分布に基づいて、マスク領域の横方向の長さ(W’)、または、縦方向の長さ(H’)をランダムに選択するようにしているが、一様分布以外の他の分布に基づいてランダムに選択するようにしてもよい。所定の割合(λ)の選択と同様に、選択する範囲を任意の刻み幅で刻むことにより特定される複数の固定値の中からランダムに選択した値を横方向の長さ(W’)、または、縦方向の長さ(H’)としてもよい。
 上記のステップSa7では、学習用データ生成部12は、一様分布に基づいて、マスク領域の位置をランダムに選択するようにしているが、一様分布以外の他の分布に基づいてランダムに選択するようにしてもよい。所定の割合(λ)の選択と同様に、選択する範囲を任意の刻み幅で刻むことにより特定される複数の固定値の中からランダムに選択した値をマスク領域の位置としてもよい。
 上記のステップSa3では、学習用データ生成部12は、式(1)により、マスクスコアmscoreを算出するようにしているが、その他の関数、例えば、シグモイド関数などの可変のパラメータにλを適用して真値スコアtscoreからマスクスコアmscoreを算出するようにしてもよい。
 上記のステップSa8では、学習用データ生成部12は、処理対象の画像フレームの平均色を、当該画像フレームに対応するマスク領域を塗りつぶす色として選択しているが、本発明の構成は、当該実施の形態に限られない。学習用データ生成部12は、処理対象の映像データに含まれる全ての画像フレームの平均色を、当該映像データに対応する全てのマスク領域を塗りつぶす色として選択してもよい。学習用データ生成部12は、任意に定める色で全てのマスク領域を同じ色で塗りつぶしてマスク処理を行うようにしてもよい。なお、マスク領域の色は、目立たないようにした方がよいため、画像フレームごとの全体の色合いに応じて、目立たない色が選択する必要があり、その点では、背景に溶け込んで目立たない色合いになる画像フレームごとの平均色を選択するのが最も効果的であると考えられる。
(学習処理部による処理)
 図6は、学習処理部13が行う学習処理の流れを示すフローチャートである。学習処理部13は、内部に備える関数近似器の係数が充分に収束するのに必要な学習ステップ回数の上限値を予め内部の記憶領域に記憶させる。学習モデルデータ記憶部14は、学習処理部13が備える関数近似器に適用される係数の初期値を予め記憶する。
 学習処理部13は、学習用データ生成部12が出力する複数のマスク映像データと、複数のマスク映像データの各々に関連付けられている複数のマスクスコアmscoreとを取り込む。学習処理部13は、取り込んだ複数のマスク映像データと、複数のマスクスコアmscoreとの組み合わせの各々に処理の順番を示す番号を付与して内部の記憶領域に書き込んで記憶させる(ステップSb1)。学習処理部13は、内部の記憶領域に学習ステップ回数を示す変数n(以下「学習ステップ回数n」という。)を記憶する領域を生成し、生成した領域に「1」を書き込む(ステップSb2)。
 学習処理部13は、学習モデルデータ記憶部14が記憶する係数を読み出し、読み出した係数を関数近似器に適用する(ステップSb3)。学習処理部13は、内部の記憶領域から最初の処理順のマスク映像データと、マスクスコアmscoreとを読み出す。学習処理部13は、読み出したマスク映像データを入力データとして関数近似器に与える(ステップSb4)。
 学習処理部13は、関数近似器の出力値である推定スコア(以下「推定スコアyscore」という。)と、ステップSb4において読み出したマスクスコアmscoreの誤差を算出する(ステップSb5)。学習処理部13は、算出した誤差に損失関数を適用して損失を算出する。学習処理部13は、算出した損失を小さくするように、例えば、誤差逆伝搬法などの手法により関数近似器の新たな係数を算出する。学習処理部13は、算出した新たな係数を学習モデルデータ記憶部14に書き込んで係数を更新する(ステップSb6)。
 なお、損失関数としては、推定スコアyscoreと、マスクスコアmscoreのL1距離(マンハッタン距離)を算出する関数を用いてもよいし、推定スコアyscoreと、マスクスコアmscoreのL2距離(ユークリッド距離)を算出する関数を用いてもよいし、L1距離とL2距離の合計を算出する関数を用いてもよい。
 学習処理部13は、内部の記憶領域から学習ステップ回数nを読み出し、読み出した学習ステップ回数nが、内部の記憶領域が記憶する上限値に一致するか否かを判定する(ステップSb7)。学習処理部13は、読み出した学習ステップ回数nが、上限値に一致していないと判定した場合(ステップSb7、No)、読み出した学習ステップ回数nに1を加算する。学習処理部13は、加算値であるn+1の値を新たな学習ステップ回数nとして、内部の記憶領域の学習ステップ回数nの領域に書き込み(ステップSb8)、再びステップSb3以降の処理を行う。
 次のステップSb3の処理において、学習処理部13は、学習モデルデータ記憶部14からステップSb6において更新された係数を読み出し、読み出した係数を関数近似器に適用する。次のステップSb4において、学習処理部13は、次の処理順のマスク映像データと、マスクスコアmscoreとを読み出し、読み出したマスク映像データを関数近似器に与える。なお、ステップSb3~Sb6の処理を繰り返し行う間に、学習処理部13は、全てのマスク映像データと、マスクスコアmscoreとの組み合わせに対してステップSb4~Sb6の処理を行った場合、順番を最初に戻して、最初の処理順のマスク映像データと、マスクスコアmscoreとの組み合わせから順に読み出してステップSb4~Sb6の処理を行う。
 一方、学習処理部13は、読み出した学習ステップ回数nが、上限値に一致していると判定した場合(ステップSb7、Yes)、処理を終了する。これにより、学習モデルデータ記憶部14には、充分に収束した学習済みの係数が記憶されることになり、この学習済みの係数が、学習済みの学習モデルを示す学習モデルデータとなる。
 なお、図6では、マスク映像データと、マスクスコアmscoreとの組み合わせごとに関数近似器の係数を更新するオンライン学習の手法を示しているが、予め定められる数のマスク映像データと、マスクスコアmscoreとの組み合わせごとに関数近似器の係数を更新するミニバッチ学習を行ってもよいし、全てのマスク映像データと、マスクスコアmscoreとの組み合わせごとに関数近似器の係数を更新するバッチ学習を行うようにしてもよい。
 図7は、学習処理部13が備える関数近似器の一例である関数近似器30におけるDNNの構成を示す図である。学習処理部13は、マスク映像データを取り込むと、例えば、マスク映像データを96フレームにリサンプリングし、96フレームを16フレームごとに分割して6個の分割マスク映像データを生成する。関数近似器30は、3次元畳み込みネットワーク層31-1~31-6と、平均部32と、スコア回帰ネットワーク層33とを備える。3次元畳み込みネットワーク層31-1~31-6の各々は、6個に分割された分割マスク映像データの各々を取り込む。3次元畳み込みネットワーク層31-1~31-6の各々は、各々が取り込んだ分割マスク映像データから特徴抽出を行い、各々が取り込んだ分割マスク映像データの特徴量を出力する
 平均部32は、3次元畳み込みネットワーク層31-1~31-6の各々が出力する分割マスク映像データの特徴量を平均して出力する。スコア回帰ネットワーク層33は、平均部32が出力する分割マスク映像データの特徴量の平均と、マスク映像データに対応するマスクスコアmscoreとに基づいて回帰分析を行い、分割マスク映像データの特徴量の平均と、マスクスコアmscoreとの関係性を抽出する。学習処理部13による学習処理が繰り返し行われることにより、3次元畳み込みネットワーク層31-1~31-6による特徴抽出、及びスコア回帰ネットワーク層33による回帰分析の精度が高められていくことになる。なお、3次元畳み込みネットワーク層31-1~31-6、及びスコア回帰ネットワーク層33には、学習モデルデータ記憶部14が記憶する係数が適用される。3次元畳み込みネットワーク層31-1~31-6の各々には、共有する係数、すなわち同一の係数が適用される。
(推定装置の構成)
 図8は、本発明の実施形態による推定装置2の構成を示すブロック図である。推定装置2は、入力部21、推定処理部22、及び学習モデルデータ記憶部23を備える。学習モデルデータ記憶部23は、学習装置1の学習モデルデータ記憶部14が記憶する学習済みの係数、すなわち学習済みの学習モデルデータを予め記憶する。入力部21は、任意の映像データ、すなわち任意の競技者が行う一連の動作を背景と共に記録した映像データを取り込む。
 推定処理部22は、入力部21が取り込んだ任意の映像データと、学習モデルデータ記憶部23が記憶する学習済みの学習モデルデータとに基づいて、映像データに対応する推定スコアを算出する。なお、推定処理部22は、学習処理部13と同一の構成の関数近似器を備えている。
(推定装置による処理)
 図9は、推定装置2による処理の流れを示すフローチャートである。入力部21は、任意の映像データを取り込み、取り込んだ映像データを推定処理部22に出力する(ステップSc1)。推定処理部22は、入力部21が出力する映像データを取り込む。推定処理部22は、学習モデルデータ記憶部23から学習済みの学習モデルデータ、すなわち学習済みの係数を読み出し、読み出した学習済みの係数を関数近似器に適用する(ステップSc2)。
 推定処理部22は、取り込んだ映像データを入力データとして関数近似器に与える(ステップSc3)。推定処理部22は、関数近似器の出力値を、映像データに対する推定スコアとして出力する(ステップSc4)。
 上記の実施形態の学習装置1において、入力部11は、映像データと、映像データに含まれる複数の画像フレームの各々における競技者を囲む領域を特定する競技者領域特定データと、映像データに記録された競技者の競技に対する評価値である真値スコアとを取り込む。学習用データ生成部12は、映像データに含まれる複数の画像フレームの各々において、各々の画像フレームに対応する競技者領域特定データが示す領域の任意の位置の一部分の領域であって映像データごとに任意に定める所定の割合の大きさの領域をマスクしてマスク映像データを生成し、映像データごとの真値スコアに対して、当該映像データに対応する所定の割合に応じた重み付けをしてマスクスコアを生成する。学習処理部13は、映像データに対応するマスク映像データと、映像データに対応するマスクスコアとの関係を示す学習モデルデータを生成する。これにより、学習用データ生成部12が生成したマスク映像データに含まれる複数の画像フレームの中のいくつかの画像フレームにおいて、競技者の画像の一部がランダムにマスクで隠された状態になる。そのため、学習処理部13が行う学習処理において、競技者の動作に関する映像データの中の特徴を抽出するように促進される。それにより、関節情報等の推定が困難な情報を明示的に与えることなく、上記の実験結果が示すように、競技者の動作を記録した映像データから、競技者の動作に汎化した学習モデルデータを生成することが可能になる。
 なお、上記の実施形態では、競技者領域特定データが示す領域に1人の競技者が含まれる例を示しているが、競技者領域特定データが示す領域に、複数の競技者が含まれていてもよい。
 なお、上記の実施形態では、競技者領域特定データが示す領域の形状を矩形形状にしているが、矩形形状に限られるものではなく、矩形形状以外の形状であってもよい。
 上記の実施形態では、真値スコアは、実際に審判が採点した点数であるとしているが、実際の競技で採用されている定量的な採点基準以外の基準によって採点された点数であってもよい。
 上記の実施形態の学習装置1の学習処理部13と、推定装置2が備える推定処理部22が備える関数近似器は、例えば、DNNであり、一例として、図7に示す構成を示しているが、DNN以外のニューラルネットワークや、機械学習による手段が適用されてもよい。
 学習装置1と推定装置2とは、一体化されて構成されてもよい。このように構成される場合、学習装置1と推定装置2とが一体化された装置は、学習モードと推定モードとを有する。学習モードは、学習装置1による学習処理を行って学習済みの学習モデルを生成するモードである。すなわち、学習モードでは、学習装置1と推定装置2とが一体化された装置は、図6に示す処理を実行する。推定モードは、学習済みモデルを用いて推定スコアを出力するモードである。すなわち、推定モードでは、学習装置1と推定装置2とが一体化された装置は、図9に示す処理を実行する。
 上述した実施形態における学習装置1、及び推定装置2をコンピュータで実現するようにしてもよい。その場合、この機能を実現するためのプログラムをコンピュータ読み取り可能な記録媒体に記録して、この記録媒体に記録されたプログラムをコンピュータシステムに読み込ませ、実行することによって実現してもよい。なお、ここでいう「コンピュータシステム」とは、OSや周辺機器等のハードウェアを含むものとする。また、「コンピュータ読み取り可能な記録媒体」とは、フレキシブルディスク、光磁気ディスク、ROM、CD-ROM等の可搬媒体、コンピュータシステムに内蔵されるハードディスク等の記憶装置のことをいう。さらに「コンピュータ読み取り可能な記録媒体」とは、インターネット等のネットワークや電話回線等の通信回線を介してプログラムを送信する場合の通信線のように、短時間の間、動的にプログラムを保持するもの、その場合のサーバやクライアントとなるコンピュータシステム内部の揮発性メモリのように、一定時間プログラムを保持しているものも含んでもよい。また上記プログラムは、前述した機能の一部を実現するためのものであってもよく、さらに前述した機能をコンピュータシステムにすでに記録されているプログラムとの組み合わせで実現できるものであってもよく、FPGA(Field Programmable Gate Array)等のプログラマブルロジックデバイスを用いて実現されるものであってもよい。
 以上、この発明の実施形態について図面を参照して詳述してきたが、具体的な構成はこの実施形態に限られるものではなく、この発明の要旨を逸脱しない範囲の設計等も含まれる。
 スポーツ競技における競技の採点に利用することができる。
1…学習装置、11…入力部、12…学習用データ生成部、13…学習処理部、14…学習モデルデータ記憶部

Claims (7)

  1.  競技者の動作を記録した映像データに含まれる複数の画像フレームの各々における前記競技者を囲む領域の一部分を任意にマスクしたマスク映像データと、前記映像データに記録された前記競技者の競技に対する評価値である真値スコアに対して前記マスクした領域の割合に応じた重み付けをしたマスクスコアとの関係を示す学習モデルデータを生成する学習処理部
     を備える学習装置。
  2.  前記学習処理部は、
     関数近似器を有しており、前記マスク映像データを前記関数近似器に与えることにより出力値として得られる推定スコアが、当該マスク映像データに対応する前記マスクスコアに近づくように学習処理を行って前記関数近似器の係数である前記学習モデルデータを更新する、
     請求項1に記載の学習装置。
  3.  前記映像データと、前記映像データに含まれる複数の画像フレームの各々における前記競技者を囲む領域を特定する競技者領域特定データと、前記映像データに対応する前記真値スコアとを取り込む入力部と、
     前記映像データに含まれる複数の画像フレームの各々において、各々の前記画像フレームに対応する前記競技者領域特定データが示す領域の任意の位置の一部分の領域であって前記映像データごとに任意に定める所定の割合の大きさの領域をマスクして前記マスク映像データを生成し、前記映像データごとの前記真値スコアに対して、当該映像データに対応する前記所定の割合に応じた重み付けをして前記マスクスコアを生成する学習用データ生成部と、
     を備える請求項1又は2に記載の学習装置。
  4.  前記学習用データ生成部は、
     前記画像フレームの平均色で当該画像フレームに対応するマスク領域を塗りつぶしてマスクするか、または、前記映像データの平均色で当該映像データに対応する全てのマスク領域を塗りつぶしてマスクするか、または、任意に定める色で全てのマスク領域を同じ色に塗りつぶしてマスクする、
     請求項3に記載の学習装置。
  5.  競技者の動作を記録した映像データを取り込む入力部と、
     競技者の動作を記録した映像データに含まれる複数の画像フレームの各々における前記競技者を囲む領域の一部分を任意にマスクしたマスク映像データと、前記映像データに記録された前記競技者の競技に対する評価値である真値スコアに対して前記マスクした領域の割合に応じた重み付けをしたマスクスコアとの関係を示す学習モデルデータと、前記映像データとに基づいて、前記映像データに対応する推定スコアを算出する推定処理部と、
     を備える推定装置。
  6.  競技者の動作を記録した映像データに含まれる複数の画像フレームの各々における前記競技者を囲む領域の一部分を任意にマスクしたマスク映像データと、前記映像データに記録された前記競技者の競技に対する評価値である真値スコアに対して前記マスクした領域の割合に応じた重み付けをしたマスクスコアとの関係を示す学習モデルデータを生成する学習方法。
  7.  コンピュータに、
     競技者の動作を記録した映像データに含まれる複数の画像フレームの各々における前記競技者を囲む領域の一部分を任意にマスクしたマスク映像データと、前記映像データに記録された前記競技者の競技に対する評価値である真値スコアに対して前記マスクした領域の割合に応じた重み付けをしたマスクスコアとの関係を示す学習モデルデータを生成させる手順、
     を実行させるための学習プログラム。
PCT/JP2020/033425 2020-09-03 2020-09-03 学習装置、推定装置、学習方法、及び学習プログラム WO2022049694A1 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
PCT/JP2020/033425 WO2022049694A1 (ja) 2020-09-03 2020-09-03 学習装置、推定装置、学習方法、及び学習プログラム
US18/023,859 US20240024756A1 (en) 2020-09-03 2020-09-03 Learning device, estimation device, learning method, and learning program
JP2022546795A JP7393701B2 (ja) 2020-09-03 2020-09-03 学習装置、推定装置、学習方法、及び学習プログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2020/033425 WO2022049694A1 (ja) 2020-09-03 2020-09-03 学習装置、推定装置、学習方法、及び学習プログラム

Publications (1)

Publication Number Publication Date
WO2022049694A1 true WO2022049694A1 (ja) 2022-03-10

Family

ID=80491897

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2020/033425 WO2022049694A1 (ja) 2020-09-03 2020-09-03 学習装置、推定装置、学習方法、及び学習プログラム

Country Status (3)

Country Link
US (1) US20240024756A1 (ja)
JP (1) JP7393701B2 (ja)
WO (1) WO2022049694A1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2024023911A1 (ja) * 2022-07-26 2024-02-01 日本電信電話株式会社 学習装置、学習方法及びプログラム

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004535129A (ja) * 2001-07-10 2004-11-18 ビスタス アンリミテッド、インコーポレイテッド 目標エリアが画像ストリーム内に含まれる持続時間を算出する方法およびシステム
US20090220124A1 (en) * 2008-02-29 2009-09-03 Fred Siegel Automated scoring system for athletics
US9230159B1 (en) * 2013-12-09 2016-01-05 Google Inc. Action recognition and detection on videos
JP2017537403A (ja) * 2014-11-27 2017-12-14 ノキア テクノロジーズ オサケユイチア 超解像画像を生成するための方法、装置およびコンピュータ・プログラム・プロダクト
WO2018122956A1 (ja) * 2016-12-27 2018-07-05 日本電気株式会社 スポーツ動作解析支援システム、方法およびプログラム

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004535129A (ja) * 2001-07-10 2004-11-18 ビスタス アンリミテッド、インコーポレイテッド 目標エリアが画像ストリーム内に含まれる持続時間を算出する方法およびシステム
US20090220124A1 (en) * 2008-02-29 2009-09-03 Fred Siegel Automated scoring system for athletics
US9230159B1 (en) * 2013-12-09 2016-01-05 Google Inc. Action recognition and detection on videos
JP2017537403A (ja) * 2014-11-27 2017-12-14 ノキア テクノロジーズ オサケユイチア 超解像画像を生成するための方法、装置およびコンピュータ・プログラム・プロダクト
WO2018122956A1 (ja) * 2016-12-27 2018-07-05 日本電気株式会社 スポーツ動作解析支援システム、方法およびプログラム

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
SHIN JEONGEUN, SHINJI OZAWA: "ken-system: A Study on Motion Analysis of an Artistic Gymnastics by using Dynamic Image Processing -- for A Development of Automatic Scoring System of Horizontal Bar -", IEICE TECHNICAL REPORT, 15 May 2008 (2008-05-15), pages 13 - 18, XP055643227 *

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2024023911A1 (ja) * 2022-07-26 2024-02-01 日本電信電話株式会社 学習装置、学習方法及びプログラム

Also Published As

Publication number Publication date
US20240024756A1 (en) 2024-01-25
JP7393701B2 (ja) 2023-12-07
JPWO2022049694A1 (ja) 2022-03-10

Similar Documents

Publication Publication Date Title
CN108283809B (zh) 数据处理方法、装置、计算机设备和存储介质
Kurach et al. Google research football: A novel reinforcement learning environment
US11559738B2 (en) Machine learned virtual gaming environment
Schrum et al. Interactive evolution and exploration within latent level-design space of generative adversarial networks
Yoshida et al. Application of Monte-Carlo tree search in a fighting game AI
Firoiu et al. At human speed: Deep reinforcement learning with action delay
Green et al. Mario level generation from mechanics using scene stitching
WO2022049694A1 (ja) 学習装置、推定装置、学習方法、及び学習プログラム
Barros et al. Balanced civilization map generation based on open data
US20230245366A1 (en) 3d avatar generation using biomechanical analysis
CN113593013A (zh) 基于vr逝者仿真的交互方法、系统、终端及vr设备
CN105531003B (zh) 模拟装置及模拟方法
CN103561831A (zh) 自动传感器驱动的比赛安排
JP6103683B2 (ja) ロールプレイングゲームの攻略法算出装置、算出方法、算出プログラム及びこのプログラムを記録した記録媒体
US11596867B2 (en) AI-based content generation for gaming applications
CN115944921B (zh) 游戏数据处理方法、装置、设备及介质
WO2022244135A1 (ja) 学習装置、推定装置、学習モデルデータ生成方法、推定方法及びプログラム
JPWO2020110432A1 (ja) 学習装置、前景領域推定装置、学習方法、前景領域推定方法、及び、プログラム
CN114220312B (zh) 虚拟训练方法、装置以及虚拟训练系统
CN105536251A (zh) 一种基于用户体验质量波动模型的游戏任务自动构造方法
JP2024503596A (ja) イメージ・ソースからのボリュメトリック・ビデオ
Edwards et al. Search-based exploration and diagnosis of TOAD-GAN
Anderson-Coto et al. Fandom culture and identity in esports
JP2005078413A (ja) 電子機器及び電子機器における応答情報出力方法
Nam et al. Procedural Content Generation of Super Mario Levels Considering Natural Connection

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

Country of ref document: EP

Kind code of ref document: A1

ENP Entry into the national phase

Ref document number: 2022546795

Country of ref document: JP

Kind code of ref document: A

WWE Wipo information: entry into national phase

Ref document number: 18023859

Country of ref document: US

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 20952433

Country of ref document: EP

Kind code of ref document: A1