WO2017199497A1 - 選手状態特定方法および選手状態特定装置 - Google Patents

選手状態特定方法および選手状態特定装置 Download PDF

Info

Publication number
WO2017199497A1
WO2017199497A1 PCT/JP2017/005874 JP2017005874W WO2017199497A1 WO 2017199497 A1 WO2017199497 A1 WO 2017199497A1 JP 2017005874 W JP2017005874 W JP 2017005874W WO 2017199497 A1 WO2017199497 A1 WO 2017199497A1
Authority
WO
WIPO (PCT)
Prior art keywords
player
state
pool
video
processor
Prior art date
Application number
PCT/JP2017/005874
Other languages
English (en)
French (fr)
Inventor
純子 上田
Original Assignee
パナソニックIpマネジメント株式会社
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 パナソニックIpマネジメント株式会社 filed Critical パナソニックIpマネジメント株式会社
Priority to CN201780029924.6A priority Critical patent/CN109155841B/zh
Priority to US16/301,617 priority patent/US10888764B2/en
Priority to JP2018518085A priority patent/JP7113193B2/ja
Priority to EP17798935.7A priority patent/EP3461126B1/en
Publication of WO2017199497A1 publication Critical patent/WO2017199497A1/ja

Links

Images

Classifications

    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/20Analysis of motion
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N7/00Television systems
    • H04N7/18Closed-circuit television [CCTV] systems, i.e. systems in which the video signal is not broadcast
    • AHUMAN NECESSITIES
    • A61MEDICAL OR VETERINARY SCIENCE; HYGIENE
    • A61BDIAGNOSIS; SURGERY; IDENTIFICATION
    • A61B2503/00Evaluating a particular growth phase or type of persons or animals
    • A61B2503/10Athletes
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63BAPPARATUS FOR PHYSICAL TRAINING, GYMNASTICS, SWIMMING, CLIMBING, OR FENCING; BALL GAMES; TRAINING EQUIPMENT
    • A63B2208/00Characteristics or parameters related to the user or player
    • A63B2208/03Characteristics or parameters related to the user or player the user being in water
    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V40/00Recognition of biometric, human-related or animal-related patterns in image or video data
    • G06V40/20Movements or behaviour, e.g. gesture recognition
    • G06V40/23Recognition of whole body movements, e.g. for sport training

Definitions

  • This disclosure relates to a player state identification method and apparatus.
  • a moving body tracking device for tracking a moving body in an image.
  • the predicted position of the moving object in the current frame image is obtained based on the position information of the moving object in the past frame image.
  • candidate objects having predetermined characteristics peculiar to the moving object are extracted from the image data in the current frame image, and candidate objects closer to the predicted position among the extracted candidate objects are assigned as the moving object.
  • This disclosure relates to a method and apparatus for accurately identifying the state of a player existing in a pool.
  • the player state specifying method and the player state specifying device in the present disclosure refer to the result of the process of detecting the player for the video, and the result of the player detection after the player exists in the end region of the pool. Based on this, the traveling direction of the player is specified as a direction different from the traveling direction so far.
  • the player state identification method and player state identification device in the present disclosure are effective for accurately identifying the state of a player existing in the pool.
  • FIG. 1 is a diagram illustrating a state of use of the player state identification device according to the first embodiment.
  • FIG. 2 is a diagram illustrating an example of a video obtained by capturing a swimming competition image in the pool in the first embodiment.
  • FIG. 3 is a diagram illustrating a configuration of the player state identification device according to the first embodiment.
  • FIG. 4 is a flowchart illustrating the basic operation of the player state identification device according to the first embodiment.
  • FIG. 5 is a diagram illustrating an example in which the traveling direction is superimposed on the video in the first embodiment.
  • FIG. 6 is a diagram illustrating an example in which the detection result is superimposed on the video in the first embodiment.
  • FIG. 7 is a flowchart for explaining the player position correction process.
  • FIG. 1 is a diagram illustrating a state of use of the player state identification device according to the first embodiment.
  • FIG. 2 is a diagram illustrating an example of a video obtained by capturing a swimming competition image in the pool in the first embodiment.
  • FIG. 8 is a flowchart for explaining the detection result validation process.
  • FIG. 9 is a flowchart for explaining the detection result invalidation processing.
  • FIG. 10 is a diagram illustrating an example in which the player position reaches the end of the pool.
  • FIG. 11 is a flowchart for explaining the turn detection process.
  • FIG. 12 is a diagram showing a state of the display unit at the time of turn detection in the first embodiment.
  • FIG. 1 is a diagram illustrating a state of use of the player state identification device according to the first embodiment.
  • the player state specifying device 100 is a computer in which a player state specifying program is installed on a general-purpose computer.
  • the player state identification device 100 is connected to the imaging device 200 so as to be communicable.
  • the player state identification device 100 may be a dedicated embedded device or may be configured in hardware.
  • the player state identification device 100 is typically a device for generating final video content by editing video. Therefore, it is assumed that the user of the player state identification device 100 is an operator who is in charge of video editing work.
  • the imaging device 200 is a video camera.
  • the imaging apparatus 200 images the pool 300 from a bird's-eye view as shown in FIG.
  • the moving image or image captured by the imaging device 200 is transmitted to the player state identification device 100.
  • the pool 300 has a plurality of lanes.
  • a plurality of course ropes 302 are stretched around the pool 300.
  • FIG. 1 only the uppermost course rope is labeled, but the broken line in FIG. 1 represents the course rope.
  • the course rope 302 is a mark for partitioning the lane.
  • the lane is an area between the course rope 302 and the adjacent course rope.
  • FIG. 2 is a diagram showing an example of an image obtained by shooting a swimming competition image in the pool in the first embodiment.
  • the imaging device 200 captures an image so that the pool 300 is looked down on. Therefore, as illustrated in FIG. 2, the image captured by the imaging apparatus 200 is an image in which the pool 300 appears to expand from the back to the front.
  • the video to be processed is a video of a swimming competition in the pool.
  • the player 310 is swimming in the pool.
  • FIG. 3 is a diagram illustrating a configuration of the player state specifying device according to the first embodiment.
  • the player state identification device 100 includes a processor 101, a storage unit 102, a communication unit 103, an input unit 104, a display unit 105, and a bus 106.
  • the processor 101 controls the other components of the player state identification device by performing calculations.
  • the storage unit 102 stores information temporarily or permanently.
  • the storage unit 102 corresponds to a ROM (Read Only Memory) or a RAM (Random Access Memory) of the player state specifying device.
  • the player state identification device 100 may include a plurality of storage units 102 depending on the application and the necessity of access speed.
  • the storage unit 102 can be configured by applying HDD (Hard Disk Drive), SDRAM (Synchronous Dynamic Random Access Memory), SSD (Solid State Drive), or the like.
  • the communication unit 103 is an interface that connects the player state identification device 100 and the imaging device 200.
  • the communication unit 103 may be a wired connection interface or a wireless connection interface.
  • the communication unit 103 is for transmitting a moving image or image captured by the imaging device 200 to the player state identification device 100. Therefore, when moving a moving image or an image from the imaging device 200 to the player state specifying device 100 using the storage medium, the communication unit 103 is not an essential configuration.
  • the input unit 104 receives an external signal.
  • the input unit 104 corresponds to an input device or an input interface of the player state specifying device 100.
  • the input unit 104 can be configured by applying an input device such as a mouse or a keyboard, or an input interface such as a communication port or a wireless communication device.
  • Display unit 105 displays information to the outside.
  • the display unit 105 can be configured by applying a liquid crystal display or the like.
  • the bus 106 is a path for connecting each element constituting the player state specifying device 100.
  • the bus 106 can be configured inside the processor 101 by integrating the bus 106 with the processor 101.
  • Each element of the bus 106 may be connected by wire, or each element may be connected wirelessly.
  • the configuration of the player state identification device 100 described above is an example. Therefore, you may comprise the player state specific
  • the player state specifying device 100 is mainly operated by the processor 101 in cooperation with each element of the player state specifying device 100 and executing a program.
  • FIG. 4 is a flowchart illustrating the basic operation of the player state identification device according to the first embodiment.
  • step S400 the player state identification device 100 receives an image from the imaging device 200 via the communication unit 103.
  • the processor 101 defines where the lane appears in the area in the moving image received in step S400.
  • the user of the player state specifying device 100 may specify a predetermined range in the video via the input unit 104, and the processor 101 may define that the specified range is a lane.
  • the course rope 302 may be detected from the video, and the processor 101 may define that the area between the detected course ropes 302 is a lane.
  • a plurality of lanes may be defined, or only one lane may be defined. Subsequent processing is performed independently for each lane (and players in the lane) unless otherwise specified.
  • the processor 101 When the definition of the lane area is completed, the processor 101 reproduces the video and displays it on the display unit 105. Subsequent processing may be performed in a state where the video is reproduced, or may be performed in a state where the video is stopped. The processor 101 recognizes an input received in the subsequent processing as an input for one frame (image) of the video being reproduced on the display unit 105.
  • step S402 the processor 101 displays the traveling direction of the player via the display unit 105 so as to be superimposed on each lane area in the video.
  • the traveling direction displayed in step S402 is referred to as an initial direction.
  • FIG. 5 is a diagram showing an example in which the traveling direction is superimposed on the video in the first embodiment.
  • the traveling direction 500 is represented by an upward triangle in FIG.
  • the traveling direction 500 corresponds to three lanes running in the vertical direction in the center of FIG. 5 and three are superimposed in the video.
  • the direction indicated by the traveling direction 500 is upward.
  • it is assumed that the direction in which the player starts swimming immediately after the start is the direction from the front toward the back. Therefore, the initial direction is upward.
  • step S404 the processor 101 determines whether or not an instruction to change the traveling direction has been received from the user of the player state identification device 100.
  • the direction in which the athlete starts swimming immediately after the start may be from the back to the front.
  • the user inputs an instruction to change the traveling direction via the input unit 104.
  • step S406 the processor 101 changes the traveling direction based on the change instruction received from the user of the player state identification device 100.
  • the player's direction of travel is basically two directions (the opposite direction to the forward direction). Therefore, in this embodiment, when a change instruction is accepted, the processor 101 reverses the traveling direction. When the processor 101 determines the traveling direction, it is also reflected on the display unit 105. Since the change instruction given in step S404 is a change instruction for the initial direction, it is considered that the change instruction is not an instruction for changing the traveling direction for an individual lane but an instruction for changing the traveling direction for the entire lane. Therefore, the direction change input in step S404 is performed by a simple input such as pressing a shortcut key of the input unit 104 as a change input for all lanes.
  • step S408 the processor 101 determines whether or not an instruction to start tracking is received from the user of the player state specifying device 100.
  • the user of the player state specifying device 100 inputs a tracking instruction using the input unit 104 at a predetermined timing while watching the video being reproduced.
  • the predetermined timing is assumed to be a timing at which a swimming competition starts.
  • processing for detecting a player from the video starts as described later. If a player is detected before the timing of the start of the swimming competition, the load on the processor 101 increases, and the data obtained by the process of detecting the player may include data other than during the competition, which may reduce the usefulness of the data. There is. If the processor 101 has not received an instruction to start tracking in step S408 (No in step S408), the process loops to step S404.
  • step S410 the processor 101 performs processing for detecting a player on the video.
  • the area where the player is detected is limited.
  • This area is called a detection target area.
  • the detection target area is an area that occupies the periphery of the player position in the previous image.
  • the shape of the detection target region is a shape that is biased in the advancing direction with respect to the player position in the previous image.
  • player detection is performed for each lane. Therefore, a detection target area is set for each lane. The initial value of the detection target area was set to a location near 5 to 10 m (in the actual pool) from the start point. This is because in the area immediately after the start, players are deeply dived (submitted), and it is often difficult to detect the players.
  • step S412 the processor 101 displays the detection result superimposed on the player position in the video.
  • FIG. 6 is a diagram showing an example in which the detection result is superimposed on the video in the first embodiment.
  • the detection result 600 is displayed almost coincident with the position of the player for each lane.
  • the detection result 600 is a circle centered on the player position.
  • the detection result 600 may not be displayed based on the player position itself obtained in step S410. That is, you may display based on what correct
  • the detection result based on the player position itself obtained in step S410 and the detection result based on the corrected player position may be displayed at the same time.
  • step S414 the processor 101 updates the detection target area.
  • step S416 the processor 101 determines whether or not a processing end instruction has been received from the user of the player state specifying device 100.
  • the user of the player state specifying device 100 confirms that the competition in the video has ended, the user inputs an instruction to end the process via the input unit 104.
  • an instruction to end the process is received (Yes in step S416), the process of the player state specifying device ends.
  • the process loops to S410 while the process input instruction is not received (No in step S416).
  • a state in which processing exists in the loop from step S410 to step S416 is referred to as a player detection processing state.
  • processing performed by the player state identification device 100 based on an instruction from the user of the player state identification device 100 during the player detection processing state will be described.
  • the subsequent processing is not necessarily performed in parallel while the player detection is actually operating. It is also possible to perform the subsequent processing while the processor 101 refers to a list of results obtained by detecting players in a series of videos (list of player positions).
  • FIG. 7 is a flowchart for explaining the player position correction process.
  • step S700 the processor 101 determines whether an instruction to correct the player position has been received from the user of the player state specifying device 100.
  • step S410 If the result of the player detection in step S410 is incorrect, the user of the player state specifying device 100 clicks on the place where the player really exists in the video.
  • the processor 101 accepts the click as an instruction to correct the player position.
  • the input here is not limited to the click operation, and may be input by a touch panel or a keyboard as long as the input can specify the coordinates in the video.
  • step S702 (Yes in step S700), the processor 101 updates the player position obtained in step S410 with the coordinates in the click video received as an instruction to correct the player position.
  • the process returns to step S412.
  • FIG. 8 is a flowchart for explaining the detection result validation process.
  • step S800 the processor 101 determines whether or not a detection result validation instruction has been received from the user of the player state identification device 100.
  • the video to be confirmed when the user of the player status specifying device 100 is editing the video using the player status specifying device 100 is different from the video of the video content finally obtained by editing.
  • the user obtains information (player state) such as the player's position, traveling direction, and speed based on the position by using the player state specifying device 100.
  • player state such as the player's position, traveling direction, and speed based on the position by using the player state specifying device 100.
  • CG can be combined with the video based on the player state.
  • Video content is generated by combining CG with video.
  • video content that the CG follows behind the player is created by synthesizing the CG in an area that is in the direction opposite to the traveling direction based on the player position.
  • the detection result validation process is a process of setting the detection result of the player state identification device 100 to be valid.
  • Information about whether the detection result is valid or invalid is a type of information passed to the CG synthesis program.
  • the CG synthesis program determines (1) whether or not to synthesize CG to an image having the detection result, or (2) the state of CG (color, shape, character, etc.)
  • the display state of CG is switched by performing a process such as changing.
  • the validity / invalidity of the detection result may be switched autonomously by the player state identification device 100 or may be switched based on a user instruction.
  • the user in the player detection processing state, the user can instruct validity / invalidity of the detection result at any time via the input unit 104.
  • step S802 the processor 101 changes the display method of the detection result on the display unit 105.
  • the detection result display method for example, the color of the detection result 600 may be changed. In this way, it becomes clear whether or not the detection result is currently valid for the user of the player state identification device 100, and it becomes easier for the user to assume the final video content finish.
  • the processor 101 invalidates the detection result by default.
  • the user inputs an instruction to validate the detection result after the user confirms that the swimmer has started and the player has swam about 5 m.
  • the processor 101 can automatically perform the detection result validation process.
  • the background difference is within 5 m from the end of the pool at the start platform side (an area is set in advance in the video), and (2) a predetermined size or more (noise removal)
  • the processor 101 effectively switches the detection result when it exists below the second predetermined size (to distinguish it from the player on the start table).
  • it may be added as a condition that the above conditions (1), (2), and (3) are satisfied in a plurality of images.
  • FIG. 9 is a flowchart for explaining the detection result invalidation processing.
  • the player detection described in step S410 may be erroneously detected when the player is deeply diving.
  • the player dive deep to make a turn at the end of the pool (the upper end and the lower end of the pool in FIG. 2 and the like).
  • a touch panel is installed at the end of the pool, and the timing at which the player reaches the end of the course can be acquired from the data on the touch panel, so the demand for acquiring the position from the video is low.
  • the processor 101 when the player is at the end of the pool, the processor 101 performs the process shown in FIG. 9 to invalidate the detection result.
  • step S900 the processor 101 determines whether or not the player position exists at the pool end.
  • FIG. 10 is a diagram illustrating an example in which the player position reaches the end of the pool. As shown in FIG. 10, the pool end area 1000 in the video is designated in advance by the user via the input unit 104. As shown in FIG. 10, when the center ( ⁇ player position) of the detection result 600 is present in the pool edge region 1000, the processor 101 determines that the player position is present at the pool edge.
  • step S902 the processor 101 determines whether or not the player position is unknown.
  • the unknown player position means that the player position is not detected or the player position is within a predetermined range from the previous player position.
  • the result of step S900 can be calibrated. As a result, performing this step has an advantage that the reliability of the result determined in step S900 is improved.
  • the process of this step is not an essential process for invalidating the detection result.
  • step S904 (Yes in step S902), the processor 101 switches the detection result to invalid.
  • the processor 101 switches the detection result to invalid.
  • step S906 the processor 101 changes the detection result display method on the display unit 105.
  • the detection result display method for example, the color of the detection result 600 may be changed. In this way, it becomes clear whether or not the detection result is currently invalid for the user of the player state identification device 100, and it becomes easier for the user to assume the final video content finish.
  • step S908 the processor 101 sets the internal state of the process to the turn determination state.
  • the turn determination state is a state in which turn detection processing described later is performed.
  • the turn detection state is also a player detection processing state.
  • FIG. 11 is a flowchart for explaining the turn detection process.
  • step S908 a process when the turn determination state is set will be described. Since the turn detection state is also the player detection process state, the loop process of steps S410 to S416 and other processes are performed in parallel with the turn detection process even in the turn determination state.
  • step S1100 the processor 101 determines whether or not a turn is detected.
  • the processor 101 detects the turn based on the player detection result.
  • step S1102 the processor 101 changes the traveling direction in the lane in which the turn is detected.
  • step S1104 the processor 101 determines whether or not the player position is detected in an area other than the pool edge area 1000. As described above, in step S904, since the demand for synthesizing CG is small, the detection result is temporarily switched to invalid. On the other hand, when a player leaves the pool edge area, there is a demand for synthesizing CG again. Therefore, in step S1104, the processor 101 determines whether or not the player position is detected in an area other than the pool edge area 1000.
  • step S1106 Yes in step S1104, the processor 101 switches the detection result to valid.
  • step S1108 the processor 101 changes the display method as in step S802.
  • FIG. 12 is a diagram showing a state of the display unit at the time of turn detection in the first embodiment.
  • the direction of the traveling direction 500 has been changed downward.
  • the advancing direction 500 may change a color according to direction. Further, since the detection result of the leftmost player is set to be invalid, the color of the detection result 600 is different from that of FIG.
  • the player in the center is detected by the processor 101 and the player position is detected in a region other than the pool edge region 1000.
  • the color of the detection result 600 is the same as in FIG.
  • the player at the right end does not detect a turn by the processor 101 (it is in a turn determination state), so the direction of the traveling direction 500 is not changed. Further, since the detection result of the leftmost player is set to be invalid, the color of the detection result 600 is different from that of FIG.
  • the player state specifying device 100 detects a turn and changes the traveling direction. However, based on the user input in the player detection processing state in preparation for a case where the turn detection fails.
  • the processor 101 may perform processing so as to change the traveling direction. For example, when the processor 101 recognizes the lane whose direction of travel is changed by specifying the lane by right-clicking the lane on the video with the mouse as the input unit 104, the user's recognition There is an advantage that the result can be immediately reflected in the traveling direction.
  • the processor 101 of the player state identification device 100 refers to the result of performing the process of detecting the player on the video, and after the player exists in the end region of the pool. Based on the detection result of the player, the traveling direction of the player is specified as a direction different from the traveling direction so far.
  • the processor 101 determines the progress direction of the player until the number of times that the player can be detected within a predetermined period after the player exists in the area on the end side of the pool.
  • the direction is different from the traveling direction.
  • the processor 101 detects a player at a place closer than a predetermined distance from a place in the pool where the player cannot be detected after the player exists in the end region of the pool.
  • the player's traveling direction is identified as a direction different from the previous traveling direction.
  • the processor 101 generates display control information (in this embodiment, whether the detection result is valid / invalid) for switching the display state of information when the information about the player is combined with the video.
  • display control information is determined as information indicating that the information is not displayed.
  • the processor 101 generates display control information for switching the display state of the information when the information about the player is combined with the video, and sets the player's traveling direction as the previous traveling direction.
  • the display control information is defined as information indicating that the information is displayed when a player is detected from the video outside the area on the edge side of the pool. Also by this, the efficiency at the time of creating a video content using a player state can be improved.
  • the technology in the present disclosure is not limited to this, and can be applied to an embodiment in which changes, replacements, additions, omissions, and the like are performed. Moreover, it is also possible to combine each component demonstrated in the said Embodiment 1, and it can also be set as a new embodiment.
  • processing for detecting a player is performed on the video in step S410.
  • the accuracy of detection may be increased by adding the following processing to the processing in step S410.
  • a process for invalidating the detection result is added when a player is detected in the detection invalid area after being previously defined by recording the coordinates of the detection invalid area in the storage unit 102 for each lane. Also good.
  • the detection result is invalid, it is preferable to define the player position based on the history of positions where the player has been detected before that time.
  • An example of the process of defining the player position based on the history of the position where the player is detected is to define the player position on the assumption that the player is performing a uniform linear motion.
  • the processing described above is effective when there is a region where players tend to be detected by mistake. Areas where players tend to be detected incorrectly can be caused by camera characteristics, lane characteristics, and stadium characteristics. In this way, a position with a high probability that a player exists can be defined as a player position while invalidating erroneous detection, so that the accuracy of player detection can be improved.
  • the pool edge region 1000 is a fixed region, but it may be replaced with a region whose size changes depending on the player's traveling direction.
  • the pool edge region 1000 is defined to be shorter (narrower toward the end of the pool) than when the pool edge exists behind the player's direction of travel. May be.
  • the processor 101 may calculate the depth direction of the region so as to satisfy the above condition based on the size of the designated region.
  • the processing described above is effective because it can prolong the period during which the player detection results are valid.
  • One of the significances of defining the pool edge region 1000 is to avoid false detection when the player is diving.
  • the section where the player dives when the edge of the pool exists in the traveling direction of the player is shorter than the section where the player dives when the edge of the pool exists opposite to the traveling direction of the player.
  • the edge of the pool exists in the opposite direction of the player after the player turns
  • the player dives, whereas when the edge of the pool exists in the player's direction, this is the case. Because there is no. Therefore, as described above, by changing the size of the pool edge region 1000 according to the traveling direction of the player, it is possible to prolong the period during which the player detection result is valid. If the period during which the player detection result is valid can be prolonged, the period during which the CG can be synthesized can also be prolonged.
  • processing for calculating the ranking of the players may be added.
  • An example of a method for calculating the ranking of a player is a method of calculating from the player position and the number of turns of the player. It can be considered that only the player position exists at the same position before and after the turn. Therefore, it is possible to calculate an accurate ranking by considering the number of turns.
  • the calculated player rankings may be the same.
  • the calculated rank may be corrected according to the following priority.
  • priorities include (1) If there is a player with a relatively high movement amount (speed) per unit time, the player is ranked higher. (2) The player existing in the center lane is ranked higher. .
  • the rank is first corrected according to the priority of (1), and if there is a player of the same rank, the rank is corrected according to the priority of (2).
  • the criterion (1) even if a player exists instantaneously at the same position, a change in the rank is expected immediately thereafter, so that there are few problems even if the rank is corrected.
  • the standard of (2) it is generally considered that the ability of the player existing in the center lane is high in swimming competition, so there are few problems even if the ranking is corrected.
  • the process is performed on the stadium (pool) having a shape as it is captured in the video.
  • the process of correcting the shape of the stadium is added to the above embodiment. 1 may be performed.
  • the user designates the upper, lower, left, and right four corners of the stadium imaged in the video, and the processor 101 corrects the video coordinate system based on the coordinates of the four corners so that the shape of the stadium is an arbitrary rectangle (for example, It may be converted into a sufficiently large rectangle).
  • the back side of the lane may become too small due to the perspective, and the processing accuracy of the first embodiment may be reduced.
  • the captured stadium is in landscape orientation, it is necessary to convert it to a longitudinal stadium in order to perform the processing of Embodiment 1 as it is (without changing the contents of the program).
  • the trapezoidal correction process for the video coordinate system described above the shape of the captured stadium is normalized, so that the process of the first embodiment can be performed stably.
  • the stadium video after the keystone correction is displayed together with the video as it was captured, and the above-described player position correction process is performed after the keystone correction. It may be performed on the stadium video.
  • the shooting stadium is in landscape orientation, the lane located far from the camera is small on the image in the video as it was shot, so the player position correction process confirms the location where the player really exists It becomes difficult to click.
  • the shape of the stadium that was shot is normalized, it is possible to accurately check and click where a player really exists.
  • the present disclosure can be applied to a method or apparatus for identifying the state of a player in a video.
  • the present invention can be applied to a computer for handling sports video analysis.

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • General Health & Medical Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Physics & Mathematics (AREA)
  • Signal Processing (AREA)
  • Physical Education & Sports Medicine (AREA)
  • Psychiatry (AREA)
  • Social Psychology (AREA)
  • Human Computer Interaction (AREA)
  • Image Analysis (AREA)
  • Image Processing (AREA)
  • Closed-Circuit Television Systems (AREA)

Abstract

プールの中に存在する選手の状態を精度よく特定するために、本開示における選手状態特定装置または選手状態特定方法のプロセッサは、プールに存在する選手を撮影することで得られた映像に対して、選手を検出する処理を行った結果を参照し、選手がプールの端側の領域に存在した以降の選手の検出の結果に基づいて、選手の進行方向(500)をそれまでの進行方向とは異なる方向であると特定する。これにより、選手の進行方向がより正確に特定できるようになるため、プールの中に存在する選手の状態を精度よく特定することができる。

Description

選手状態特定方法および選手状態特定装置
 本開示は、選手状態特定方法および装置に関する。
 従来から、映像において移動体を追跡する移動体追跡装置が知られている。例えば、特許文献1に記載の技術では、過去のフレーム画像における移動体の位置情報に基づき今回のフレーム画像における移動体の予測位置を求める。そして、今回のフレーム画像における画像データから移動体に特有の所定の特徴を持つ候補物体を抽出し、抽出された候補物体のうち予測位置により近い候補物体を移動体として割り当てる。
特開2004-46647号公報
 本開示は、プールの中に存在する選手の状態を精度よく特定する方法および装置に関する。
 本開示における選手状態特定方法および選手状態特定装置は、映像に対して選手を検出する処理を行った結果を参照し、選手がプールの端側の領域に存在した以降の選手の検出の結果に基づいて、選手の進行方向をそれまでの進行方向とは異なる方向であると特定する。
 本開示における選手状態特定方法および選手状態特定装置は、プールの中に存在する選手の状態を精度よく特定するのに有効である。
図1は、実施の形態1における選手状態特定装置の使用の様子を示す図である。 図2は、実施の形態1におけるプールにおける水泳競技画像を撮影した映像の例を示す図である。 図3は、実施の形態1における選手状態特定装置の構成を示す図である。 図4は、実施の形態1における選手状態特定装置の基本動作を説明するフローチャートである。 図5は、実施の形態1において映像に進行方向が重畳された例を示す図である。 図6は、実施の形態1において映像に検出結果が重畳された例を示す図である。 図7は、選手位置修正処理を説明するフローチャートである。 図8は、検出結果有効化処理を説明するフローチャートである。 図9は、検出結果無効化処理を説明するフローチャートである。 図10は、選手位置がプール端に差し掛かった例を示す図である。 図11は、ターン検知処理を説明するフローチャートである。 図12は、実施の形態1におけるターン検知の際の表示部の様子を示す図である。
 以下、適宜図面を参照しながら、実施の形態を詳細に説明する。但し、必要以上に詳細な説明は省略する場合がある。例えば、既によく知られた事項の詳細説明や実質的に同一の構成に対する重複説明を省略する場合がある。これは、以下の説明が不必要に冗長になるのを避け、当業者の理解を容易にするためである。
 なお、発明者は、当業者が本開示を十分に理解するために添付図面および以下の説明を提供するのであって、これらによって請求の範囲に記載の主題を限定することを意図するものではない。
 (実施の形態1)
 以下、図1~12を用いて、実施の形態1を説明する。
 [1-1.構成]
 図1は、実施の形態1における選手状態特定装置の使用の様子を示す図である。
 選手状態特定装置100は、汎用コンピュータに選手状態特定プログラムがインストールされたものである。選手状態特定装置100は撮像装置200と通信可能に接続される。選手状態特定装置100は専用の組込み機器であってもよいし、ハードウェア的に構成されてもよい。選手状態特定装置100は典型的には映像を編集することで、最終的な映像コンテンツを生成するための装置である。よって、選手状態特定装置100のユーザは映像の編集作業を担当する作業者であることが想定される。
 撮像装置200は、ビデオカメラである。撮像装置200はプール300を図1に示すように俯瞰して撮像する。撮像装置200が撮像した動画ないし画像は選手状態特定装置100へ送信される。
 プール300は、複数のレーンを有する。プール300にはコースロープ302が複数張られている。なお、図1においては最上部のコースロープのみに符号を付したが、図1における破線状のものはコースロープを表す。コースロープ302はレーンを仕切る目印である。レーンはコースロープ302と隣接するコースロープとの間の領域である。
 図2は、実施の形態1におけるプールにおける水泳競技画像を撮影した映像の例を示す図である。図1に示すように、実施の形態1においては、撮像装置200がプール300を俯瞰するように撮像する。そのため、図2に示すように撮像装置200が撮像した画像は奥から手前にかけてプール300が広がって見える画像となる。本実施の形態では処理対象となる映像はプールにおける水泳競技を撮影した映像である。選手310はプールの中を泳いでいる。
 図3は、実施の形態1における選手状態特定装置の構成を示す図である。選手状態特定装置100はプロセッサ101と、記憶部102と、通信部103と、入力部104と、表示部105と、バス106とを有する。
 プロセッサ101は演算を行うことで選手状態特定装置の他の構成要素を制御する。
 記憶部102は情報を一時的に、あるいは恒久的に記憶する。記憶部102は選手状態特定装置のROM(Read Only Memory)やRAM(Random Access Memory)などに相当する。選手状態特定装置100は用途やアクセススピードの必要性に応じて記憶部102を複数備えても良い。HDD(Hard Disk Drive)やSDRAM(Synchronus Dynamic Random Access Memory)、SSD(Solid State Drive)などを適用することで記憶部102を構成することができる。
 通信部103は、選手状態特定装置100と撮像装置200とを接続するインターフェースである。通信部103は、有線接続インターフェースでも良いし、無線接続インターフェースでも良い。通信部103は、撮像装置200が撮像した動画または画像を選手状態特定装置100に送信するためのものである。よって、記憶媒体を用いて動画または画像を撮像装置200から選手状態特定装置100へ移動する場合は、通信部103は必須の構成ではない。
 入力部104は外部からの信号を受け付ける。入力部104は選手状態特定装置100の入力装置や入力インターフェースなどに相当する。マウスやキーボードなどの入力装置、通信ポートや無線通信デバイスなどの入力インターフェースを適用することで入力部104を構成することができる。
 表示部105は外部へ情報を表示する。液晶ディスプレイなどを適用することで表示部105を構成することができる。
 バス106は選手状態特定装置100を構成する各要素を接続する経路である。プロセッサ101にバス106を統合することでプロセッサ101の内部にバス106を構成することもできる。バス106は各要素を有線で接続しても良いし、各要素を無線で接続しても良い。
 以上に述べた選手状態特定装置100の構成は一例である。したがって以上に述べた構成に別の構成要素を追加することで選手状態特定装置100を構成してもよい。また、以上に述べた構成から構成要素の一部を必要に応じて削除することで選手状態特定装置100を構成してもよい。また、以上に述べた構成要素を互いに統合することで選手状態特定装置100を構成してもよい。また、以上に述べた構成要素を以上の構成要素に分離して選手状態特定装置100を構成してもよい。
 [1-2.動作]
 以上に述べた選手状態特定装置100の動作を説明する。なお、選手状態特定装置100は主としてプロセッサ101が選手状態特定装置100の各要素と協業してプログラムを実行することで動作するものである。
 [1-2-1.基本動作]
 図4は、実施の形態1における選手状態特定装置の基本動作を説明するフローチャートである。
 ステップS400において、選手状態特定装置100は、撮像装置200から通信部103を介して映像を受け取る。
 プロセッサ101はステップS400で受け取った動画内の領域においてレーンを現す領域がどこであるかを定義する。選手状態特定装置100がレーンを現す領域を定義する方法はさまざまなものが考えられる。たとえば、選手状態特定装置100の使用者が映像内の所定の範囲を、入力部104を介して指定し、当該指定された範囲がレーンであるとプロセッサ101が定義してもよい。また、映像内からコースロープ302を検出し、当該検出されたコースロープ302の間の領域がレーンであると、プロセッサ101が定義してもよい。レーンは複数が定義されてもよいし、ひとつのみが定義されてもよい。以降の処理は特に言及しない限りレーン(およびレーン内の選手)毎に独立に処理がされる。
 レーン領域の定義が完了するとプロセッサ101は、映像を再生して表示部105に表示する。以降の処理は映像が再生された状態で行われてもよいし、映像が停止した状態で行われてもよい。プロセッサ101は以降の処理で受け付ける入力を、表示部105で再生中の映像の一コマ(画像)に対する入力として認識する。
 ステップS402において、プロセッサ101は映像におけるレーン領域それぞれに重畳する形で選手の進行方向を、表示部105を介して表示する。ステップS402で表示される進行方向を初期方向と呼ぶ。
 図5は、実施の形態1において映像に進行方向が重畳された例を示す図である。進行方向500は図5において上向きの三角形で表現される。進行方向500は、図5の中央を縦方向に走るレーン3本に対応する形で、3つが映像中に重畳されている。図5において進行方向500が指し示す方向は上向きである。本実施の形態においては、スタート直後の選手が泳ぎだす方向は手前から奥に向かう方向であることを前提としている。よって、初期方向は上向きとなっている。
 ステップS404において、プロセッサ101は選手状態特定装置100のユーザから進行方向の変更指示を受け付けたか否かを判定する。水泳競技の種類によってはスタート直後の選手が泳ぎだす方向が奥方向から手前である場合がある。そのような場合に、ユーザは入力部104を介して進行方向を変更する旨を入力する。
 ステップS406(ステップS404でYes)において、プロセッサ101は選手状態特定装置100のユーザから受け付けた変更指示に基づいて進行方向を変更する。水泳競技における選手の進行方向は原則2方向(順方向と反対方向)である。よって、本実施の形態では変更指示を受け付けると、プロセッサ101は進行方向を反転させる。プロセッサ101が進行方向を判定させると表示部105にも反映がされる。なお、ステップS404において行われた変更指示は初期方向に対する変更指示であるから、個別のレーンに対する進行方向を変更する指示ではなくレーン全体に対する進行方向を変更する指示であると考えられる。よって、ステップS404における方向変更入力は、全レーンを対象とする変更入力として、入力部104のショートカットキーの押下などの簡易な入力によって行われる。
 ステップS408において、プロセッサ101は選手状態特定装置100のユーザから追跡開始の指示を受け付けたか否かを判定する。選手状態特定装置100のユーザは再生中の映像を観ながら所定のタイミングで入力部104を用いて追跡指示を入力する。本実施の形態において所定のタイミングとは水泳競技がスタートするタイミングを想定している。追跡指示が入力されると後述するように映像中から選手を検出する処理が開始する。水泳競技がスタートするタイミング以前から選手を検出するとプロセッサ101への負荷が高くなり、また選手を検出する処理で得られるデータが競技中以外のものを含むことになるためデータの有用性が落ちるおそれがある。なお、ステップS408においてプロセッサ101が追跡開始の指示を受け付けていない場合(ステップS408でNo)、処理がステップS404へとループする。
 ステップS410(ステップS408でYes)において、プロセッサ101は映像に対して選手を検出する処理を行う。選手の検出は映像における選手の座標(=選手位置)を特定することで行われる。
 本実施の形態においてプロセッサ101は、背景画像(あらかじめ無人のプールを撮像することで得られる)と、現在表示中の画像との差分(=背景差分)が大きい領域の中心座標を選手位置として検出する。なお、選手を検出するために背景差分を用いることは必須ではなくフレーム間差分(前の画像と後ろの画像との差分)が大きい領域の中心座標を選手位置として検出してもよい。また、表示中の画像の色相成分を用いて、前景の画素を抽出し、前景の画素が繋がって大きな領域となっている領域(前景領域)の中心座標を選手位置として検出しても良い。
 本実施の形態では、検出の精度を高めるため、選手の検出を行う領域を限定する。この領域を検出対象領域という。本実施の形態において検出対象領域は、前の画像における選手位置の周囲を占める領域とする。好ましくは検出対象領域の形は、前の画像における選手位置よりも進行方向に偏らせた形とすることが望ましい。本実施の形態において選手の検出はレーン毎に行われる。よって、レーン毎に検出対象領域が設定される。検出対象領域の初期値はスタート地点から(現実のプールにおいて)5~10m付近の箇所とした。スタート直後の領域は選手が深く潜っている(潜水している)ため、選手の検出が困難であることが多いためである。
 映像に対して選手を検出する処理を行っても必ずしも選手が検出されるとは限らない。たとえば背景差分、フレーム間差分、前景領域等がうまく抽出できない場合は選手が検出できない。上述したように選手が深く潜っている場合は背景差分、フレーム間差分、前景領域等がうまく抽出できないことが多い。そこで、後述する検出結果無効化処理や選手位置修正処理を必要に応じて行うと良い。
 ステップS412において、プロセッサ101は、映像における選手位置に検出結果を重畳して表示する。
 図6は、実施の形態1において映像に検出結果が重畳された例を示す図である。検出結果600は図6に示すようにレーン毎に選手の位置にほぼ一致して表示される。本実施の形態において検出結果600は選手位置を中心とする円である。なお、検出結果600はステップS410によって得られた選手位置そのものに基づいて表示されるのではなくてもよい。つまり、選手位置をそれまでの選手位置等の履歴等に基づいて補正したものに基づいて表示されてもよい。また、映像編集の便宜のために、ステップS410によって得られた選手位置そのものに基づいた検出結果と、選手位置を補正したものに基づいた検出結果とを同時に表示してもよい。
 ステップS414において、プロセッサ101は検出対象領域の更新を行う。
 ステップS416において、プロセッサ101は選手状態特定装置100のユーザから処理終了の指示を受け付けたか否かを判定する。選手状態特定装置100のユーザは、映像中の競技が終了したことを確認すると入力部104を介して処理終了の指示を入力する。処理終了の指示を受け付ける(ステップS416でYes)と、選手状態特定装置の処理が終了する。
 処理終了の指示入力を受け付けていない(ステップS416でNo)間は処理がS410へループする。このステップS410~ステップS416のループ内に処理が存在する状態を選手検出処理状態という。
 以降では、選手検出処理状態中における、選手状態特定装置100のユーザからの指示に基づいて、選手状態特定装置100が行う処理を説明する。なお、以降の処理は必ずしも選手検出を実際に動作している最中に並行して行われる必要はない。一連の映像において選手を検出し終わった結果のリスト(選手位置のリスト)をプロセッサ101が参照しながら、以降の処理を行うことも可能である。
 [1-2-2.選手位置修正処理]
 図7は、選手位置修正処理を説明するフローチャートである。
 ステップS700において、プロセッサ101は、選手状態特定装置100のユーザから選手位置の修正の指示を受け付けたか否かを判定する。
 ステップS410における選手検出の結果が誤っている場合、選手状態特定装置100のユーザは、映像中において選手が真に存在する箇所をクリックする。当該クリックを選手位置の修正の指示としてプロセッサ101は受け付ける。ここでの入力はクリック操作に限定されず、映像中の座標を特定することができる入力であれば、タッチパネルやキーボードによって入力されてもよい。
 ステップS702(ステップS700でYes)において、プロセッサ101は、選手位置の修正の指示として受け付けたクリックの映像中における座標で、ステップS410において得た選手位置を更新する。選手位置が更新されると処理がステップS412へ戻る。
 [1-2-3.検出結果有効化処理]
 図8は、検出結果有効化処理を説明するフローチャートである。
 ステップS800において、プロセッサ101は、選手状態特定装置100のユーザから検出結果の有効化指示を受け付けたか否かを判定する。
 選手状態特定装置100のユーザが選手状態特定装置100を用いて映像を編集している際に確認する映像と、編集によって最終的に得られる映像コンテンツの映像とは異なる。映像コンテンツの映像においては、映像における選手の付近に選手の氏名、国籍、泳ぐ速度などの選手の属性などを表す情報(=選手に関する情報)を表すCGなどが重畳されることになる。一方で、今までに述べた進行方向や、検出結果はユーザが選手状態特定装置100の処理内容を確認する為に表示されるものであるから映像コンテンツには表示されない場合がある。
 映像コンテンツを作成するために、ユーザは選手状態特定装置100を用いることで選手の位置、進行方向、位置に基づく速度などの情報(選手状態)を得る。当該選手状態をCG合成プログラムに渡すことで、当該選手状態に基づいて映像にCGを合成することができる。映像にCGを合成することで映像コンテンツが生成されることになる。たとえばCG合成プログラムにおいては、選手位置を基準に進行方向とは逆方向に存在する領域にCGを合成することで選手の後ろにCGが追従する映像コンテンツを作成することが行われる。
 検出結果有効化処理は、選手状態特定装置100の検出結果を有効に設定する処理である。検出結果が有効であるか無効であるかの情報は、CG合成プログラムに渡される情報の一種である。CG合成プログラムは、検出結果の有効/無効に基づいて、当該検出結果を有する画像に(1)CGを合成する/しないを決定する、または(2)CGの状態(色、形状、文字など)を変更する、などの処理を行うことでCGの表示状態を切り替える。
 本実施の形態では、検出結果の有効/無効は選手状態特定装置100が自律的に切り替える場合もあれば、ユーザの指示に基づいて切り替える場合もある。
 本実施の形態では、選手検出処理状態においては、ユーザは入力部104を介して随時検出結果の有効/無効を指示することができる。
 ステップS802(ステップS800でYes)において、プロセッサ101は表示部105における検出結果の表示方法を変更する。検出結果の表示方法を変更するにはたとえば検出結果600の色などを変更することなどが挙げられる。このようにすると、選手状態特定装置100のユーザにとって検出結果が現在有効であるか否かが明確になり、最終的な映像コンテンツの仕上がりをユーザにとって想定しやすくなる。
 本実施の形態において、選手がスタート台にいる間は、遠近法の関係から、選手があたかもスタート台から5mほど奥にいるように、選手位置を誤検知してしまうおそれがある。そこで、本実施の形態においては、プロセッサ101はデフォルトでは検出結果を無効としている。そして、水泳競技がスタートして選手が5mほど泳いだことをユーザが確認した後に、ユーザが検出結果の有効化指示を入力することを本実施の形態では想定している。
 なお、プロセッサ101が検出結果有効化処理を自動で行うことも可能である。検出結果有効化処理を自動化する方法としては、背景差分が(1)プールのスタート台側端から5m付近以内(あらかじめ映像内で領域を設定する)において(2)所定のサイズ以上(ノイズ除去のため)かつ(3)第2の所定のサイズ以下(スタート台上の選手と区別するため)で存在したことをもって、プロセッサ101が検出結果を有効に切り替えることが考えられる。なお、映像ノイズに基づく誤検知を低減するために上記(1)(2)(3)の条件が複数の画像において成立したことを条件として加えてもよい。
 検出結果が有効に切り替えられると処理がステップS412へ戻る。
 [1-2-4.検出結果無効化処理]
 図9は、検出結果無効化処理を説明するフローチャートである。
 上述したように、ステップS410で述べた選手検出は選手が深く潜っている場合は誤検出をするおそれがある。ここで、水泳競技において選手はプールの端(図2等におけるプールの上側端および下側端)でターンを行うために深く潜る。また、プールの端にはタッチパネルが設置されており、選手がコース端に到達したタイミングなどはタッチパネルのデータから取得可能であるため、映像から位置を取得する需要も低い。
 よって、本実施の形態では選手がプールの端にいる場合は検出結果を無効にするべくプロセッサ101が図9に示す処理を行う。
 ステップS900において、プロセッサ101は選手位置がプール端に存在するか否かの判定を行う。図10は、選手位置がプール端に差し掛かった例を示す図である。図10に示されるように、映像中においてプール端の領域1000はあらかじめユーザによって入力部104を介して指定されている。図10に示すように、検出結果600の中心(≒選手位置)がプール端の領域1000に存在すると、プロセッサ101は選手位置がプール端に存在すると判定する。
 ステップS902(ステップS900でYes)において、プロセッサ101は選手位置が不詳であるか否かを判定する。選手位置が不詳であるとは選手位置が検出されていないか、または選手位置が以前の選手位置と所定の範囲内にある場合を指す。なお、本ステップの処理を行うと選手位置が連続して端に存在することを改めて確認できるため、ステップS900において、水しぶきや審判などを選手として誤検出した場合であっても、本ステップにてステップS900の結果を校正することができる。結果として本ステップを行うことで、ステップS900において判定した結果の信頼性が向上するという利点がある。しかし、本ステップの処理は検出結果無効化するために必須の処理ではない。
 ステップS904(ステップS902でYes)において、プロセッサ101は検出結果を無効へ切り替える。本実施の形態では上述したようにスタート後に検出結果が有効から無効へ切り替えた後に選手がプールの端に侵入することを想定している。
 ステップS906において、プロセッサ101は表示部105における検出結果の表示方法を変更する。検出結果の表示方法を変更するにはたとえば検出結果600の色などを変更することなどが挙げられる。このようにすると、選手状態特定装置100のユーザにとって検出結果が現在無効であるか否かが明確になり、最終的な映像コンテンツの仕上がりをユーザにとって想定しやすくなる。
 ステップS908において、プロセッサ101は処理の内部状態をターン判定状態にする。ターン判定状態とは後述するターン検知処理を行う状態である。なお、ターン検出状態は選手検出処理状態でもある。
 検出結果が無効に切り替えられると処理がステップS412へ戻る。
 [1-2-4-1.ターン検知処理]
 図11は、ターン検知処理を説明するフローチャートである。
 ステップS908において、ターン判定状態になった際の処理を説明する。なお、ターン検出状態は選手検出処理状態でもあるから、ターン判定状態であってもステップS410~ステップS416のループ処理や、その他の処理もターン検知処理と並行して行われる。
 ステップS1100において、プロセッサ101はターンが検知されたか否かを判定する。プロセッサ101は、ターンを選手検出の結果に基づいて検知する。選手検出の結果に基づいてターンを検知する方法は複数のものが考えられる。本実施の形態では、選手検出位置が、ターン検出状態となってから所定の期間(=所定のフレーム画像)において選手を検出できた回数が、閾値以下の場合にターンを検出する。ターンの最中は選手位置を検知し難い一方で、ターンに要する通常の期間は既知であるため、このような判定基準を用いることでターンを適切に検知することができる。
 他のターン検出方法としては、例えば、選手検出の結果に信頼度指標を設けることが考えられる。すなわち、選手検出位置が、ターン検出状態となってから所定の期間(=所定のフレーム画像)において当該信頼度指標が所定の値を下回る回数が所定の回数以上ある場合にターンを検出することが考えられる。
 また、他のターン検出手法としては、例えば選手検出ができなかった場合に選手位置を前フレームと同一のものとするようにすることが考えられる。すなわち、ターン検出状態となってから所定の期間(=所定のフレーム画像)において、選手位置が、前回ターン検出状態となった場所から所定の範囲内に存在する回数が所定の回数以上ある場合にターンを検出することが考えられる。
 ステップS1102において、プロセッサ101はターンを検知したレーンにおける進行方向を変更する。
 ステップS1104において、プロセッサ101はプール端の領域1000以外の領域で選手位置を検知したか否かを判定する。上述したように、ステップS904においてはCGを合成する需要が少ないため一時的に検出結果を無効に切り替えた。一方で、選手がプール端の領域から出た場合は再びCGを合成する需要が存在する。よって、ステップS1104において、プロセッサ101はプール端の領域1000以外の領域で選手位置を検知したか否かを判定する。
 ステップS1106(ステップS1104でYes)において、プロセッサ101は検出結果を有効へ切り替える。
 ステップS1108において、プロセッサ101はステップS802と同様に表示方法を変更する。
 図12は、実施の形態1におけるターン検知の際の表示部の様子を示す図である。
 図12に示されるように、左端の選手はプロセッサ101によってターンを検知されたため、進行方向500の向きが下向きへと変更されている。なお進行方向500は、図12に示すように、向きに応じて色を変更してもよい。また、左端の選手は検出結果が無効に設定されているため検出結果600の色が図10等とは異なる。
 図12に示されるように、中央の選手は、プロセッサ101によってターンを検知され、かつ、プール端の領域1000以外の領域で選手位置を検知されているので、進行方向500の向きが下向きでかつ、検出結果600の色が図10等と同じである。
 図12に示されるように、右端の選手は、プロセッサ101によってターンを検知されていない(ターン判定状態ではある)ので、進行方向500の向きが変更されていない。また、左端の選手は検出結果が無効に設定されているため検出結果600の色が図10等とは異なる。
 ターンが検知され、検出結果が有効に切り替えられると処理がステップS412へ戻る。なお、ターン判定状態は終了する。
 なお、以上述べたように選手状態特定装置100は、ターンを検知して進行方向を変更するものであるが、ターンの検知に失敗した場合に備え、選手検出処理状態におけるユーザの入力に基づいて進行方向を変更するようにプロセッサ101が処理を行ってもよい。この入力はたとえば、映像上のレーンを入力部104としてのマウスを用いて右クリックすることでレーンを特定することで、進行方向を変更するレーンをプロセッサ101が認識するようにすると、ユーザの認識結果を即座に進行方向に反映することができるという利点がある。
 [1-3.効果等]
 以上のように、本実施の形態において、選手状態特定装置100のプロセッサ101は、映像に対して選手を検出する処理を行った結果を参照し、選手がプールの端側の領域に存在した以降の選手の検出の結果に基づいて、選手の進行方向をそれまでの進行方向とは異なる方向であると特定する。
 これにより、上述したようにプールの中に存在する選手の状態を精度よく特定することができる。
 また、本実施の形態において、プロセッサ101は、選手がプールの端側の領域に存在した以降、所定の期間内に選手を検出できた回数が、閾値以下の場合に選手の進行方向をそれまでの進行方向とは異なる方向であると特定する。これにより、上述したようにプールの中に存在する選手の状態をより精度よく特定することができる。
 また、本実施の形態において、プロセッサ101は、選手がプールの端側の領域に存在した以降、選手を検出できない状態となったプール中の場所から所定の距離以上近接した場所において、選手を検出できた場合に選手の進行方向をそれまでの進行方向とは異なる方向であると特定する。これにより、パターンを算出する精度が向上するため、画像の中に存在するレーンの領域をより精度よく特定することができる。これにより、上述したようにプールの中に存在する選手の状態をより精度よく特定することができる。
 また、本実施の形態において、プロセッサ101は、映像に選手に関する情報を合成する際の、情報の表示状態を切り替える為の表示制御情報(本実施の形態においては検出結果の有効/無効)を生成し、選手がプールの端側の領域に存在した場合に、表示制御情報を、情報を表示させない旨を表す情報として定める。これにより、選手状態を用いて映像コンテンツを作成する際の効率を向上させることができる。
 また、本実施の形態において、プロセッサ101は、映像に前記選手に関する情報を合成する際の、情報の表示状態を切り替える為の表示制御情報を生成し、選手の進行方向をそれまでの進行方向とは異なる方向であると特定した後に、プールの端側の領域外で、選手が映像から検出された場合に、表示制御情報を、情報を表示させる旨を表す情報として定める。これによっても、選手状態を用いて映像コンテンツを作成する際の効率を向上させることができる。
 以上のように、本開示における技術の例示として、実施の形態を説明した。そのために、添付図面および詳細な説明を提供した。
 したがって、添付図面および詳細な説明に記載された構成要素の中には、課題解決のために必須な構成要素だけでなく、上記技術を例示するために、課題解決のためには必須でない構成要素も含まれ得る。そのため、それらの必須ではない構成要素が添付図面や詳細な説明に記載されていることをもって、直ちに、それらの必須ではない構成要素が必須であるとの認定をするべきではない。
 また、上述の実施の形態は、本開示における技術を例示するためのものであるから、請求の範囲またはその均等の範囲において種々の変更、置き換え、付加、省略などを行うことができる。
 同様に、本開示における技術は、これに限定されず、変更、置き換え、付加、省略などを行った実施の形態にも適用できる。また、上記実施の形態1で説明した各構成要素を組み合わせて、新たな実施の形態とすることも可能である。
 そこで、以下、他の実施の形態を例示する。
 実施の形態1では、ステップS410において映像に対して選手を検出する処理を行った。他の実施の形態として、ステップS410の処理に以下の処理を付加することで検出の精度を高めても良い。
 すなわちS410に、レーン毎に検出無効領域の座標を記憶部102へ記録することで予め定義した上で、当該検出無効領域で選手を検出した場合は当該検出結果を無効とする処理を付加しても良い。検出結果を無効とした場合は、それ以前に選手を検出した位置の履歴に基づいて選手位置を定義すると良い。選手を検出した位置の履歴に基づいて選手位置を定義する処理の一例としては、選手が等速直線運動をしていると仮定して選手位置を定義することが挙げられる。
 上述した処理は、選手が誤って検出される傾向のある領域が存在する場合に有効である。選手が誤って検出される傾向のある領域は、カメラの特性、レーンの特性、競技場の特性によって生じうる。このようにすると、誤検出を無効とした上で、選手が存在する蓋然性の高い位置を選手位置と定義できるので、選手検出の精度を高めることができる。
 また、実施の形態1ではプール端の領域1000は固定の領域であったが、これを選手の進行方向に応じてサイズの変化する領域として置き換えても良い。
 すなわち、プールの端が選手の進行方向の先に存在する場合は、プールの端が選手の進行方向の後に存在する場合よりもプール端の領域1000を短く(プールの端寄りに狭く)定義しても良い。具体的には、プール端の領域1000はユーザによって指定されるので、当該指定された領域のサイズを基準として、上記条件を満たすようにプロセッサ101が領域の奥行き方向を算出すればよい。
 上述した処理は、選手の検出結果を有効とする期間を長引かせることができるので有効である。プール端の領域1000を定義した意義の一つは、選手が潜水を行っている場合に誤検出を避ける為である。しかし、プールの端が選手の進行方向に存在する場合に選手が潜水する区間は、プールの端が選手の進行方向の逆に存在する場合に選手が潜水する区間よりも短い。プールの端が選手の進行方向の逆に存在する場合(選手がターンした後)は選手が潜水を行うのに対して、プールの端が選手の進行方向に存在する場合はそのような事情が無いからである。よって、上述したようにプール端の領域1000のサイズを選手の進行方向に応じて変化させることで、選手の検出結果を有効とする期間を長引かせることができる。選手の検出結果を有効とする期間を長引かせることができるとCGを合成することができる期間も長引かせることができる。
 また、実施の形態1で説明した処理に加えて、選手の順位を算出する処理を付加してもよい。
 選手の順位を算出する方法の一例としては、選手位置および当該選手のターン回数から算出する方法があげられる。選手位置のみでは、ターン前とターン後で同じ位置に存在することが考えられる。そこで、ターン回数を考慮することで正確な順位を算出することが可能になる。
 ここで、選手の順位をCG等で表示する場合は選手の順位がめまぐるしく変わることがCG等を視認する者に嫌われる場合がある。そのような場合は、過去の数秒間の順位を合計してもっとも合計値の低い選手を1位、次に合計値の低い選手を2位、・・・、のように過去の順位の履歴から選手の順位を算出すると良い。
 なお、算出した選手の順位が同順位となる場合がある。複数の選手が同じ順位に存在するという結果を算出することが望ましくない場合には以下の優先度に従って、算出した順位を補正すると良い。優先度の例としては(1)単位時間当たりの移動量(速度)が比較的高い選手がいればその選手を上位とする(2)中央のレーンに存在する選手を上位とするなどが考えられる。好ましくはまず(1)の優先度に従って順位を補正し、その上で同順位の選手がいれば(2)の優先度に従って順位を補正すると良い。(1)の基準によれば、瞬間的に同じような位置に選手が存在しても、その後すぐに順位の変動が予想されるため、順位を補正しても問題が少ない。(2)の基準によれば、一般的に水泳競技においては中央のレーンに存在する選手の能力が高いと考えられているため、順位を補正しても問題が少ない。
 また、実施の形態1においては、映像に写されたままの形状の競技場(プール)に対して処理を行ったが、当該競技場の形状を補正する処理を付加して上で実施の形態1における処理を行ってもよい。
 すなわち、映像に写された競技場の上下左右四隅をユーザが指定し、プロセッサ101が当該四隅の座標に基づいて映像の座標系を台形補正することで、競技場の形を任意の矩形(例えば十分な大きさの長方形)に変換しても良い。
 このようにすると、より選手検出の精度を高めることが可能である。例えば、競技場に設置されるカメラの角度によっては、パースによってレーンの奥側が小さくなりすぎる場合があり、実施の形態1の処理の精度が落ちる場合がある。また、撮影した競技場が横向きである場合は、実施の形態1の処理をそのまま(プログラムの内容を変更せず)行うためには縦向きの競技場に変換する必要がある。上述した映像の座標系を台形補正する処理を行うことにより、撮影された競技場の形状が正規化されるため、実施の形態1の処理を安定して行うことができる。
 また、上述した映像の座標系を台形補正する処理を行った場合、撮影されたままの映像と合わせて、台形補正後の競技場映像を表示し、前述の選手位置修正処理を台形補正後の競技場映像上で行うとしても良い。撮影した競技場が横向きである場合は、撮影されたままの映像においてはカメラから遠くに位置するレーンが画像上小さいため、選手位置修正処理において映像中の選手が真に存在する箇所を確認およびクリックすることが困難となる。上述した台形補正後の競技場映像上においては、撮影された競技場の形状が正規化されるため、選手が真に存在する箇所の確認およびクリックを精度良く行うことができる。
 本開示は、映像中の選手の状態を特定する方法または装置に適用可能である。たとえばスポーツ映像等の解析を取り扱う為のコンピュータに適用可能である。
 100 選手状態特定装置
 101 プロセッサ
 102 記憶部
 103 通信部
 104 入力部
 105 表示部
 106 バス
 200 撮像装置
 300 プール
 302 コースロープ
 310 選手
 500 進行方向
 600 検出結果
 1000 領域

Claims (8)

  1.  プールにおける水泳競技を撮影した映像に存在する選手の状態をプロセッサが特定する方法であって、
     前記プロセッサは、
     前記映像に対して前記選手を検出する処理を行った結果を参照し、前記選手が前記プールの端側の領域に存在した以降の前記選手の検出の結果に基づいて、前記選手の進行方向をそれまでの進行方向とは異なる方向であると特定する、
    選手状態特定方法。
  2.  前記選手が前記プールの端側の領域に存在した以降、所定の期間内に前記選手を検出できた回数が、閾値以下の場合に前記選手の進行方向をそれまでの進行方向とは異なる方向であると特定する、
     請求項1に記載の選手状態特定方法。
  3.  前記プロセッサは、
     前記映像に前記選手に関する情報を合成する際の、前記情報の表示状態を切り替える為の表示制御情報を生成し、
     前記選手が前記プールの端側の領域に存在した場合に、前記表示制御情報を、前記情報を表示させない旨を表す情報として定める、
     請求項1に記載の選手状態特定方法。
  4.  前記プロセッサは、
     前記映像に前記選手に関する情報を合成する際の、前記情報の表示状態を切り替える為の表示制御情報を生成し、
     前記選手の進行方向をそれまでの進行方向とは異なる方向であると特定した後に、前記プールの端側の領域外で、前記選手が前記映像から検出された場合に、前記表示制御情報を、前記情報を表示させる旨を表す情報として定める、
     請求項1に記載の選手状態特定方法。
  5.  プールにおける水泳競技を撮影した映像に存在する選手の状態をプロセッサが特定する選手状態特定装置であって、
     前記プロセッサは、
     前記映像に対して前記選手を検出する処理を行った結果を参照し、前記選手が前記プールの端側の領域に存在した以降の前記選手の検出の結果に基づいて、前記選手の進行方向をそれまでの進行方向とは異なる方向であると特定する、
    選手状態特定装置。
  6.  前記選手が前記プールの端側の領域に存在した以降、所定の期間内に前記選手を検出できた回数が、閾値以下の場合に前記選手の進行方向をそれまでの進行方向とは異なる方向であると特定する、
     請求項5に記載の選手状態特定装置。
  7.  前記プロセッサは、
     前記映像に前記選手に関する情報を合成する際の、前記情報の表示状態を切り替える為の表示制御情報を生成し、
     前記選手が前記プールの端側の領域に存在した場合に、前記表示制御情報を、前記情報を表示させない旨を表す情報として定める、
     請求項5に記載の選手状態特定装置。
  8.  前記プロセッサは、
     前記映像に前記選手に関する情報を合成する際の、前記情報の表示状態を切り替える為の表示制御情報を生成し、
     前記選手の進行方向をそれまでの進行方向とは異なる方向であると特定した後に、前記プールの端側の領域外で、前記選手が前記映像から検出された場合に、前記表示制御情報を、前記情報を表示させる旨を表す情報として定める、
     請求項5に記載の選手状態特定装置。
PCT/JP2017/005874 2016-05-18 2017-02-17 選手状態特定方法および選手状態特定装置 WO2017199497A1 (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
CN201780029924.6A CN109155841B (zh) 2016-05-18 2017-02-17 选手状态确定方法和选手状态确定装置
US16/301,617 US10888764B2 (en) 2016-05-18 2017-02-17 Method for identifying state of athlete and device for identifying state of athlete
JP2018518085A JP7113193B2 (ja) 2016-05-18 2017-02-17 選手状態特定方法および選手状態特定装置
EP17798935.7A EP3461126B1 (en) 2016-05-18 2017-02-17 Method for identifying state of athlete and device for identifying state of athlete

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2016099367 2016-05-18
JP2016-099367 2016-05-18

Publications (1)

Publication Number Publication Date
WO2017199497A1 true WO2017199497A1 (ja) 2017-11-23

Family

ID=60326198

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2017/005874 WO2017199497A1 (ja) 2016-05-18 2017-02-17 選手状態特定方法および選手状態特定装置

Country Status (5)

Country Link
US (1) US10888764B2 (ja)
EP (1) EP3461126B1 (ja)
JP (1) JP7113193B2 (ja)
CN (1) CN109155841B (ja)
WO (1) WO2017199497A1 (ja)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH04288174A (ja) * 1991-03-15 1992-10-13 Advance Co Ltd 泳者追跡ロボット
JP2003117041A (ja) * 2001-10-15 2003-04-22 Hamamatsu Photonics Kk ストローク情報測定装置及びストローク情報測定方法

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4643856B2 (ja) * 2001-05-30 2011-03-02 浜松ホトニクス株式会社 ストローク情報測定装置及びストローク情報測定方法
JP2004046647A (ja) 2002-07-12 2004-02-12 Univ Waseda 動画像データに基づく移動物体追跡方法及び装置
JP4670923B2 (ja) * 2008-09-22 2011-04-13 ソニー株式会社 表示制御装置、表示制御方法、およびプログラム
US8317659B2 (en) * 2009-06-02 2012-11-27 Swimnetix Corporation Aquatic training system and method
US8988426B2 (en) * 2012-06-05 2015-03-24 Apple Inc. Methods and apparatus for rendering labels based on occlusion testing for label visibility
CN104754236B (zh) * 2013-12-27 2018-09-18 日本写真判定株式会社 行进比赛的顺序判定方法及其装置
KR102197585B1 (ko) * 2014-01-28 2020-12-31 삼성전자주식회사 수영 경기 시스템, 수영 경기 방법, 수질 관리 방법 및 디스플레이 장치

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH04288174A (ja) * 1991-03-15 1992-10-13 Advance Co Ltd 泳者追跡ロボット
JP2003117041A (ja) * 2001-10-15 2003-04-22 Hamamatsu Photonics Kk ストローク情報測定装置及びストローク情報測定方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
See also references of EP3461126A4 *

Also Published As

Publication number Publication date
US20190290990A1 (en) 2019-09-26
JPWO2017199497A1 (ja) 2019-04-04
EP3461126A4 (en) 2019-05-22
CN109155841B (zh) 2021-06-22
JP7113193B2 (ja) 2022-08-05
CN109155841A (zh) 2019-01-04
EP3461126B1 (en) 2020-05-13
US10888764B2 (en) 2021-01-12
EP3461126A1 (en) 2019-03-27

Similar Documents

Publication Publication Date Title
US10893207B2 (en) Object tracking apparatus, object tracking method, and non-transitory computer-readable storage medium for storing program
US9865062B2 (en) Systems and methods for determining a region in an image
JP4373840B2 (ja) 動物体追跡方法、動物体追跡プログラムおよびその記録媒体、ならびに、動物体追跡装置
JP6924932B2 (ja) 移動体追跡方法、移動体追跡装置、およびプログラム
US10275917B2 (en) Image processing apparatus, image processing method, and computer-readable recording medium
US10970807B2 (en) Information processing apparatus and storage medium
US20160055366A1 (en) Information processing system, information processing method, and storage medium
US20200099854A1 (en) Image capturing apparatus and image recording method
JP2008250772A (ja) 移動物体追跡装置
US11587240B2 (en) Moving body detecting device, moving body detecting method, and moving body detecting program
CN110490131B (zh) 一种拍摄设备的定位方法、装置、电子设备及存储介质
JP4296617B2 (ja) 画像処理装置および画像処理方法、並びに記録媒体
US11882363B2 (en) Control apparatus and learning apparatus and control method
US20210103736A1 (en) Control apparatus, control system, control method, and storage medium
JP2010193406A (ja) 画像入力装置及び被写体検出方法、プログラム
WO2017199497A1 (ja) 選手状態特定方法および選手状態特定装置
US20130321464A1 (en) Apparatus and method of augmenting video
US11195321B2 (en) Information processing apparatus, information processing system, information processing method, and storage medium
KR101837482B1 (ko) 영상처리방법 및 장치, 그리고 이를 이용한 제스처 인식 인터페이스 방법 및 장치
JP6539720B1 (ja) 画像処理装置
US11836879B2 (en) Information processing apparatus, information processing method, and storage medium for correcting a shift between three-dimensional positions
US9721151B2 (en) Method and apparatus for detecting interfacing region in depth image
US20230274522A1 (en) Mage processing apparatus, image processing method, and storage medium
JP7005737B1 (ja) ゴルフスイング解析システム、ゴルフスイング解析方法及びプログラム
JP2022104634A (ja) ゴルフスイング解析システム、ゴルフスイング解析方法及びプログラム

Legal Events

Date Code Title Description
WWE Wipo information: entry into national phase

Ref document number: 2018518085

Country of ref document: JP

NENP Non-entry into the national phase

Ref country code: DE

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

Ref document number: 17798935

Country of ref document: EP

Kind code of ref document: A1

ENP Entry into the national phase

Ref document number: 2017798935

Country of ref document: EP

Effective date: 20181218