WO2023089690A1 - 検索装置、検索方法、およびプログラム - Google Patents

検索装置、検索方法、およびプログラム Download PDF

Info

Publication number
WO2023089690A1
WO2023089690A1 PCT/JP2021/042224 JP2021042224W WO2023089690A1 WO 2023089690 A1 WO2023089690 A1 WO 2023089690A1 JP 2021042224 W JP2021042224 W JP 2021042224W WO 2023089690 A1 WO2023089690 A1 WO 2023089690A1
Authority
WO
WIPO (PCT)
Prior art keywords
search
frames
time interval
key frames
similarity
Prior art date
Application number
PCT/JP2021/042224
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/JP2021/042224 priority Critical patent/WO2023089690A1/ja
Publication of WO2023089690A1 publication Critical patent/WO2023089690A1/ja

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/70Information retrieval; Database structures therefor; File system structures therefor of video data
    • G06F16/73Querying
    • G06F16/732Query formulation

Definitions

  • the present invention relates to a search device, search method, and program.
  • Patent Document 1 discloses Technologies related to the present invention.
  • Japanese Patent Laid-Open No. 2002-200002 calculates feature values for each of a plurality of key points of a human body included in an image, and searches for still images containing a human body with a posture similar to that of a human body indicated by a query based on the calculated feature values. Also disclosed is a technique for retrieving a moving image containing a human body that moves similar to the motion of the human body indicated by a query.
  • Non-Patent Document 1 discloses a technique related to human skeleton estimation.
  • An object of the present invention is to improve the accuracy of searching for videos containing a human body that moves in a manner similar to that of a human body indicated by a query.
  • a keyframe extraction means for extracting a plurality of keyframes from the query video; search means for searching for a video similar to the query video based on the posture of the human body included in each of the plurality of key frames and the time interval between the plurality of key frames; is provided.
  • the computer a keyframe extraction step of extracting a plurality of keyframes from the query video; a searching step of searching for a moving image similar to the query moving image based on the posture of the human body included in each of the plurality of key frames and the time interval between the plurality of key frames;
  • a search method is provided for performing the
  • the computer keyframe extracting means for extracting a plurality of keyframes from the query video; Search means for searching for a video similar to the query video based on the posture of the human body included in each of the plurality of key frames and the time interval between the plurality of key frames;
  • a program is provided to act as a
  • FIG. 4 is a diagram for explaining corresponding frames, time intervals between a plurality of key frames, and time intervals between a plurality of corresponding frames according to the embodiment; It is a flowchart which shows an example of the flow of a process of the search device of this embodiment. It is a figure which shows an example of the functional block diagram of the search device of this embodiment.
  • FIG. 4 is a diagram showing an example of feature amounts of keypoints calculated by the search device of the present embodiment
  • FIG. 4 is a diagram showing an example of feature amounts of keypoints calculated by the search device of the present embodiment
  • FIG. 4 is a diagram showing an example of feature amounts of keypoints calculated by the search device of the present embodiment
  • FIG. 4 is a diagram showing an example of feature amounts of keypoints calculated by the search device of the present embodiment; It is a flowchart which shows an example of the flow of a process of the search device of this embodiment. It is a flowchart which shows an example of the flow of a process of the search device of this embodiment.
  • FIG. 10 is a diagram for explaining an example of a method for a user to designate a similarity weight of a human body posture and a similarity weight between a time interval between key frames and a time interval between corresponding frames according to the present embodiment;
  • FIG. 10 is a diagram for explaining an example of a method for a user to designate a similarity weight of a human body posture and a similarity weight between a time interval between key frames and a time interval between corresponding frames according to the present embodiment;
  • the search device of this embodiment extracts a plurality of keyframes from the query video, and then extracts the posture of the human body included in each of the plurality of keyframes and the time interval between the plurality of keyframes. Based on this, a search is made for videos containing a human body that moves similar to the motion of the human body shown in the query video (temporal change in posture of the human body).
  • the search device of this embodiment has the feature of searching for moving images based on two elements: the posture of the human body included in each of a plurality of keyframes, and the time interval between the plurality of keyframes.
  • Each functional unit of the search device includes a CPU (Central Processing Unit) of any computer, a memory, a program loaded into the memory, a storage unit such as a hard disk that stores the program (stored in advance from the stage of shipping the device) In addition to programs, it can also store programs downloaded from storage media such as CDs (Compact Discs) and servers on the Internet), and can be realized by any combination of hardware and software centered on the interface for network connection.
  • a CPU Central Processing Unit
  • FIG. 2 is a block diagram illustrating the hardware configuration of the search device.
  • the search device has a processor 1A, a memory 2A, an input/output interface 3A, a peripheral circuit 4A and a bus 5A.
  • the peripheral circuit 4A includes various modules.
  • the search device may not have the peripheral circuit 4A.
  • the search device may be composed of a plurality of physically and/or logically separated devices. In this case, each of the plurality of devices can have the above hardware configuration.
  • the bus 5A is a data transmission path for mutually transmitting and receiving data between the processor 1A, the memory 2A, the peripheral circuit 4A and the input/output interface 3A.
  • the processor 1A is, for example, an arithmetic processing device such as a CPU or a GPU (Graphics Processing Unit).
  • the memory 2A is, for example, RAM (Random Access Memory) or ROM (Read Only Memory).
  • the input/output interface 3A includes an interface for acquiring information from an input device, an external device, an external server, an external sensor, a camera, etc., an interface for outputting information to an output device, an external device, an external server, etc. .
  • Input devices are, for example, keyboards, mice, microphones, physical buttons, touch panels, and the like.
  • the output device is, for example, a display, speaker, printer, mailer, or the like.
  • the processor 1A can issue commands to each module and perform calculations based on the calculation results thereof.
  • FIG. 3 shows an example of a functional block diagram of the search device 10 of this embodiment.
  • the illustrated search device 10 has a key frame extraction unit 11 and a search unit 12 .
  • the keyframe extraction unit 11 extracts a plurality of keyframes from the query video.
  • a "query video” is a video that serves as a search query.
  • the search device 10 searches for videos containing a human body that moves similar to the motion of the human body shown in the query video.
  • One moving image file may be specified as the query moving image, or some scenes in one moving image file may be specified as the query moving image.
  • a user specifies a query movie. Specifying a query movie can be accomplished using any technique.
  • Keyframes are some of the multiple frames included in the query video. As shown in FIGS. 1 and 4, the keyframe extraction unit 11 can intermittently extract keyframes from a plurality of time-series frames included in the query moving image. The time interval (number of frames) between keyframes may be constant or variable. The key frame extraction unit 11 can execute, for example, any one of extraction processes 1 to 3 below.
  • the keyframe extraction unit 11 extracts keyframes based on user input. That is, the user performs an input designating a part of a plurality of frames included in the query moving image as a key frame. Then, the keyframe extraction unit 11 extracts the frame specified by the user as a keyframe.
  • the keyframe extraction unit 11 extracts keyframes according to a predetermined rule.
  • the keyframe extraction unit 11 extracts a plurality of keyframes at predetermined regular intervals from among the plurality of frames included in the query video. That is, the keyframe extraction unit 11 extracts a keyframe every M frames.
  • M is an integer, for example, 2 or more and 10 or less, but not limited thereto. M may be predetermined or may be selected by the user.
  • the keyframe extraction unit 11 extracts keyframes according to a predetermined rule.
  • the key frame extraction unit 11 extracts the key frame and the key frames after the key frame in chronological order. , the similarity between each frame is calculated.
  • the degree of similarity is the degree of similarity of postures of the human body included in each frame.
  • the method of calculating the similarity of posture is not particularly limited, but an example will be described in the following embodiments.
  • the key frame extracting unit 11 extracts a frame whose degree of similarity is equal to or less than a reference value (design factor) and whose chronological order is the earliest as a new key frame.
  • the keyframe extraction unit 11 calculates the degree of similarity between the newly extracted keyframe and each frame following the keyframe in chronological order. Then, the key frame extracting unit 11 extracts a frame whose degree of similarity is equal to or less than a reference value (design factor) and whose chronological order is the earliest as a new key frame. The keyframe extraction unit 11 repeats the process to extract a plurality of keyframes. According to this processing, the postures of the human body included in adjacent keyframes are different to some extent. Therefore, it is possible to extract a plurality of keyframes showing the characteristic posture of the human body while suppressing an increase in the number of keyframes.
  • the reference value may be predetermined, may be selected by the user, or may be set by other means.
  • the search unit 12 searches for a video similar to the query video based on the posture of the human body included in each of the plurality of keyframes extracted by the keyframe extraction unit 11 and the time interval between the plurality of keyframes. search for.
  • the search for the moving image by the search unit 12 may be performed by searching for scenes similar to the query moving image from one moving image file, or moving image files containing scenes similar to the query moving image from among a plurality of moving image files. may be searched for, or other methods may be used.
  • the search unit 12 searches for videos that satisfy the following conditions 1 and 2 as videos similar to the query video. Note that the search unit 12 may search for a moving image that further satisfies Condition 3 below in addition to Conditions 1 and 2 below.
  • a corresponding frame is a frame that includes a human body whose posture is similar to that of the human body included in the key frame by a predetermined level or more.
  • the method of calculating the similarity of posture is not particularly limited, but an example will be described in the following embodiments.
  • FIG. 5 shows a query video made up of 10 frames.
  • the 1st, 4th, 6th, 8th and 10th frames marked with a star are extracted as key frames.
  • the keyframe that is Nth in chronological order among the plurality of keyframes will be referred to as the "Nth keyframe".
  • N is an integer of 1 or more.
  • the first frame is called the first keyframe
  • the fourth frame is called the second keyframe
  • the sixth frame is called the third keyframe
  • the eighth frame is called the third keyframe.
  • the tenth frame is called the fifth keyframe.
  • a video containing five corresponding frames corresponding to each of the first to fifth keyframes satisfies Condition 1.
  • the moving image to be processed in FIG. 5 is a moving image that satisfies Condition 1.
  • a moving image to be processed is composed of 12 frames.
  • the 1st, 3rd, 7th, 8th and 12th frames marked with a star are identified as corresponding frames.
  • the corresponding frame corresponding to the Nth keyframe will be referred to as the "Nth corresponding frame”.
  • the first frame of the moving image to be processed is the first corresponding frame
  • the third frame is the second corresponding frame
  • the seventh frame is the third corresponding frame
  • the eighth frame is the third corresponding frame. 4 corresponding frames
  • the 12th frame is the fifth corresponding frame.
  • the time interval between the corresponding frames is similar to the time interval between the key frames at a predetermined level or more- First, with reference to FIG. 5, the concept of "time interval between a plurality of corresponding frames" and “time interval between a plurality of key frames” will be explained.
  • the time intervals between the corresponding frames are the time intervals between the first to fifth corresponding frames.
  • the time interval between a plurality of corresponding frames may be a concept that includes the time interval between temporally adjacent corresponding frames.
  • the time intervals between temporally adjacent corresponding frames are the time interval between the first and second corresponding frames, the time interval between the second and third corresponding frames, the third and third 4 corresponding frames, and the time intervals between the 4th and 5th corresponding frames.
  • the time interval between a plurality of corresponding frames may be a concept that includes the time interval between the first and last corresponding frames in terms of time.
  • the time interval between the temporally first and last corresponding frames is the time interval between the first and fifth corresponding frames.
  • the time interval between a plurality of corresponding frames may be a concept that includes the time interval between a reference corresponding frame determined by an arbitrary method and each of the other corresponding frames.
  • the time interval between the reference corresponding frame and each of the other corresponding frames is the time between the first and second corresponding frames.
  • the reference corresponding frame may be one or a plurality of frames.
  • the "time interval between multiple corresponding frames” may be any one of the multiple types of time intervals described above, or may include a plurality of them. It is defined in advance which one of the plurality of types of time intervals described above is to be the time interval between the plurality of corresponding frames. In the example of FIG. 5, the time interval between the first and second corresponding frames, the time interval between the second and third corresponding frames, the time interval between the third and fourth corresponding frames, and the fourth and fourth corresponding frames.
  • the time interval between the 5 corresponding frames (the time interval between temporally adjacent corresponding frames), the time interval between the first and fifth corresponding frames (the time interval between the first and last corresponding frames) time interval), time interval between first and second corresponding frames, time interval between first and third corresponding frames, time interval between first and fourth corresponding frames, first and fifth correspondence
  • One or more of the time intervals between frames are the time intervals between the plurality of corresponding frames.
  • time intervals between multiple key frames is similar to the concept of time intervals between multiple corresponding frames described above.
  • the time interval between two frames may be indicated by the number of frames between the two frames, or the elapsed time between the two frames calculated based on the number of frames between the two frames and the frame rate may be indicated by
  • the concept of "the time interval between corresponding frames resembles the time interval between key frames at a predetermined level or more" will be explained.
  • the case where the time interval between a plurality of corresponding frames and the time interval between a plurality of key frames are one of the plurality of types of time intervals described above and the case where there are a plurality of types of time intervals will be described separately.
  • a state in which the difference between one type of time interval between the plurality of corresponding frames and one type of time interval between the plurality of key frames is equal to or less than a threshold is defined as is defined as a state similar to the time interval of at least a predetermined level.
  • the threshold is a matter of design and is set in advance.
  • “Time interval difference” is a difference or rate of change.
  • a state in which the difference between the time interval between the first and last corresponding frames in terms of time and the time interval between the first and last corresponding frames in terms of time is equal to or less than a threshold is defined as the time interval between a plurality of corresponding frames.
  • the "time interval between multiple corresponding frames” is defined as “the time interval between the temporally first and last corresponding frames”
  • the “time interval between multiple key frames” is defined as “the temporally first and the time interval between the last keyframe”, but this is only an example and is not limited to this.
  • the time intervals between multiple corresponding frames and the time intervals between multiple key frames include multiple types of time intervals.
  • the threshold is a matter of design and is set in advance for each time interval.
  • a state in which the difference is equal to or less than a threshold in a predetermined ratio or more of the plurality of types of time intervals is defined as a state in which the time intervals between the corresponding frames are similar to the time intervals between the key frames by a predetermined level or more. Define.
  • the appearance order of multiple key frames in the query video matches the appearance order of multiple corresponding frames in the video- Condition 3 is that the first to Qth keyframes extracted from the query moving image and the first to Qth corresponding frames in the moving image must be in the same application order.
  • a moving image in which the first to Qth corresponding frames appear in this order satisfies the condition, and a moving image in which the first to Qth corresponding frames do not appear in this order does not satisfy the condition.
  • the processing device 10 extracts multiple key frames from the query video (S10). After that, the processing device 10 searches for a video similar to the query video based on the posture of the human body included in each of the extracted keyframes and the time interval between the extracted keyframes (S11).
  • the search device 10 of the present embodiment extracts a plurality of keyframes from the query video, and then extracts the posture of the human body included in each of the plurality of keyframes and the time between the plurality of keyframes. Based on the interval, a search is made for videos containing a human body that moves similar to the motion of the human body shown in the query video (temporal change in posture of the human body).
  • the search device 10 searches for a moving image that includes a plurality of corresponding frames corresponding to each of a plurality of key frames, and in which the time intervals between the plurality of corresponding frames are similar to the time intervals between the plurality of key frames. search for.
  • the corresponding frame is a frame containing a human body with a posture similar to that of the human body included in the keyframe.
  • a human body having a posture similar to each of a plurality of postures of the human body shown in the query video is included, and the speed of change of the posture (interval between key frames) is Similar videos are retrieved.
  • the query video shows a human body raising the right hand
  • the query video includes the human body raising the right hand
  • the speed of the movement of raising the right hand is included in the query video. Videos similar to the indicated speed will be retrieved.
  • the search device 10 of this embodiment the accuracy of searching videos containing human bodies that are similar to the movements of the human body shown in the query video is improved.
  • the search device 10 of the present embodiment implements a technique for calculating the degree of similarity between human body postures.
  • FIG. 7 shows an example of a functional block diagram of the search device 10 of this embodiment. As illustrated, the search device 10 has a key frame extraction unit 11 , a skeleton structure detection unit 13 , a feature amount calculation unit 14 and a search unit 12 .
  • the skeletal structure detection unit 13 performs processing to detect N (N is an integer equal to or greater than 2) keypoints of the human body included in the keyframe.
  • the processing by the skeletal structure detection unit 13 is realized using the technique disclosed in Japanese Patent Application Laid-Open No. 2002-200013. Although the details are omitted, the technique disclosed in Patent Document 1 detects the skeleton structure using the skeleton estimation technique such as OpenPose disclosed in Non-Patent Document 1.
  • the skeletal structure detected by this technique consists of "keypoints", which are characteristic points such as joints, and "bones (bone links)", which indicate links between keypoints.
  • FIG. 8 shows the skeletal structure of the human body model 300 detected by the skeletal structure detection unit 13, and FIGS. 9 to 11 show detection examples of the skeletal structure.
  • the skeletal structure detection unit 13 detects the skeletal structure of a human body model (two-dimensional skeletal model) 300 as shown in FIG.
  • the human body model 300 is a two-dimensional model composed of key points such as human joints and bones connecting the key points.
  • the skeletal structure detection unit 101 extracts feature points that can be keypoints from an image, refers to information obtained by machine learning the image of the keypoints, and detects N keypoints of the human body.
  • the N keypoints to detect are predetermined.
  • the number of keypoints to be detected that is, the number of N
  • which parts of the human body are to be detected as keypoints are various, and all variations can be adopted.
  • the key points of the person are head A1, neck A2, right shoulder A31, left shoulder A32, right elbow A41, left elbow A42, right hand A51, left hand A52, right hip A61, left hip A62, right knee A71. , left knee A72, right foot A81, and left foot A82.
  • FIG. 9 is an example of detecting a person standing upright.
  • an upright person is imaged from the front, and bones B1, B51 and B52, B61 and B62, and B71 and B72 viewed from the front are detected without overlapping each other.
  • the bones B61 and B71 are slightly more bent than the left leg bones B62 and B72.
  • Fig. 10 is an example of detecting a person who is crouching.
  • a crouching person is imaged from the right side, and bones B1, B51 and B52, B61 and B62, and B71 and B72 are detected from the right side, and the right leg bone B61 is detected. And the bone B71 and the bones B62 and B72 of the left leg are greatly bent and overlapped.
  • FIG. 11 is an example of detecting a sleeping person.
  • a person lying down is imaged obliquely from the front left, and bones B1, B51 and B52, B61 and B62, B71 and B72 are detected from the oblique front left, and bones B71 and B72 are detected.
  • the bones B61 and B71 of the left leg and the bones B62 and B72 of the left leg are bent and overlapped.
  • the feature quantity calculation unit 14 calculates the feature quantity of the detected two-dimensional skeletal structure. For example, the feature quantity calculator 14 calculates a feature quantity for each detected keypoint.
  • the feature value of the skeletal structure indicates the characteristics of the person's skeleton, and is an element for searching the person's state (posture and movement) based on the person's skeleton.
  • this feature quantity includes multiple parameters.
  • the feature amount may be the feature amount of the entire skeleton structure, the feature amount of a part of the skeleton structure, or may include a plurality of feature amounts like each part of the skeleton structure. Any method such as machine learning or normalization may be used as the method for calculating the feature amount, and the minimum value or the maximum value may be obtained as the normalization.
  • the feature amount is the feature amount obtained by machine learning the skeletal structure, the size of the skeletal structure on the image from the head to the foot, and the vertical direction of the skeletal region including the skeletal structure on the image. and the relative positional relationship of a plurality of keypoints in the lateral direction of the skeletal region.
  • the size of the skeletal structure is the vertical height, area, etc. of the skeletal region containing the skeletal structure on the image.
  • the vertical direction (height direction or vertical direction) is the vertical direction (Y-axis direction) in the image, for example, the direction perpendicular to the ground (reference plane).
  • the left-right direction (horizontal direction) is the left-right direction (X-axis direction) in the image, for example, the direction parallel to the ground.
  • features that are robust to search processing it is preferable to use features that are robust to search processing.
  • a feature quantity that is robust to the person's orientation or body shape may be used.
  • FIG. 12 shows an example of feature amounts for each of the plurality of key points obtained by the feature amount calculation unit 14.
  • the keypoint feature quantity indicates the relative positional relationship of multiple keypoints in the vertical direction of the skeletal region containing the skeletal structure on the image. Since the key point A2 of the neck is used as the reference point, the feature amount of the key point A2 is 0.0, and the feature amount of the key point A31 of the right shoulder and the key point A32 of the left shoulder, which are at the same height as the neck, are also 0.0. be.
  • the feature value of the keypoint A1 of the head higher than the neck is -0.2.
  • the right hand keypoint A51 and left hand keypoint A52 lower than the neck have a feature quantity of 0.4, and the right foot keypoint A81 and left foot keypoint A82 have a feature quantity of 0.9.
  • the feature amount (normalized value) of the example indicates the feature in the height direction (Y direction) of the skeletal structure (key point), and is affected by the change in the lateral direction (X direction) of the skeletal structure. do not have.
  • the search unit 12 calculates the degree of similarity of human body postures based on the feature amounts of the key points as described above, and searches for videos similar to the query video based on the calculation results.
  • the technology disclosed in Patent Document 1 can be adopted.
  • the posture of the human body can be specified based on the feature amount of the two-dimensional skeletal structure of the human body. According to the retrieval device 10 of this embodiment, the posture of the human body can be specified with high accuracy. As a result, accuracy in retrieving videos containing human bodies that are similar to the movements of the human body shown in the query video is improved.
  • FIG. 15 shows an example of the flow of processing by the search unit 12 of this embodiment.
  • the search unit 12 searches for a video containing Q corresponding frames corresponding to each of the Q key frames.
  • the Nth corresponding frame corresponding to the Nth keyframe includes a human body in a posture whose similarity to the posture of the human body included in the Nth keyframe is equal to or greater than the first threshold.
  • the search unit 12 searches the videos searched in S20 for videos in which the degree of similarity between the time intervals between the corresponding frames and the time intervals between the key frames is equal to or greater than a second threshold. do.
  • a second threshold There are various methods for calculating the degree of similarity between the time intervals between corresponding frames and the time intervals between key frames.
  • the difference between the time intervals is calculated.
  • the difference in time intervals is the difference or the rate of change. This difference may be used as the degree of similarity.
  • a value obtained by normalizing the calculated difference according to a predetermined rule may be used as the degree of similarity.
  • the difference between the time intervals is calculated for each type of time interval.
  • the difference in time intervals is the difference or the rate of change.
  • a statistical value of the difference between the time intervals calculated for each of the various time intervals is then calculated. Examples of statistical values include, but are not limited to, average values, maximum values, minimum values, mode values, median values, and the like. This statistic value may be used as the degree of similarity. In addition, a value obtained by normalizing the calculated statistical value according to a predetermined rule may be used as the degree of similarity.
  • the first threshold referred to in S20 and the second threshold referred to in S21 may be set in advance. Then, the search unit 12 may perform the above-described search processing based on a first threshold value and a second threshold value that are set in advance.
  • the user may be able to specify at least one of the first threshold and the second threshold. Then, the search unit 12 may determine at least one of the first threshold and the second threshold based on user input, and perform the above-described search processing based on the determined first threshold and second threshold.
  • a second threshold is set for each of the various time intervals. be.
  • the search device 10 of this embodiment the same effects as those of the first and second embodiments are realized. Further, according to the retrieval device 10 of the present embodiment, determination of whether motions (changes in posture) are similar and determination of whether speeds of motions (speeds of changes in posture) are similar are performed. It is possible to divide the process into a plurality of stages and set criteria (first threshold and second threshold) for determining similarity for each stage. As a result, it is possible to search for similar moving images according to desired criteria.
  • the flow of processing by the search unit 12 is embodied.
  • the flow of processing by the search unit 12 of this embodiment differs from that described in the third embodiment.
  • the flowchart of FIG. 16 shows an example of the flow of processing by the search unit 12 of this embodiment.
  • the search unit 12 searches for a video containing Q corresponding frames corresponding to each of the Q key frames.
  • the Nth corresponding frame corresponding to the Nth keyframe includes a human body in a posture whose similarity to the posture of the human body included in the Nth keyframe is equal to or greater than the first threshold.
  • the search unit 12 calculates the degree of similarity between the posture of the human body included in the plurality of corresponding frames and the posture of the human body included in the plurality of key frames (hereinafter referred to as "posture similarity") for each video retrieved in S30. ) is calculated.
  • posture similarity There are various methods for calculating the degree of similarity of postures. For example, for each pair of a corresponding frame and a key frame that correspond to each other, the degree of similarity of the posture of the human body included in each pair is calculated. As a method for calculating the degree of similarity, the method disclosed in Patent Document 1 can be adopted. Next, statistical values of a plurality of similarities calculated for each pair are calculated.
  • Examples of statistical values include, but are not limited to, average values, maximum values, minimum values, mode values, median values, and the like. After that, a value obtained by normalizing the calculated statistical value according to a predetermined rule is calculated as the degree of posture similarity. Note that the posture similarity calculation method illustrated here is merely an example, and the present invention is not limited to this.
  • the search unit 12 calculates the degree of similarity between the time interval between the corresponding frames and the time interval between the key frames (hereinafter referred to as "similarity of time interval") for each moving image searched in S30. ) is calculated. There are various methods for calculating the degree of similarity between time intervals.
  • the difference between the time intervals is calculated. Differences in time intervals are defined by differences or rates of change. After that, a value obtained by normalizing the calculated difference according to a predetermined rule is calculated as the degree of similarity.
  • the difference between the time intervals is calculated for each type of time interval. Differences in time intervals are defined by differences or rates of change. A statistical value of the difference between the time intervals calculated for each of the various time intervals is then calculated. Examples of statistical values include, but are not limited to, average values, maximum values, minimum values, mode values, median values, and the like. After that, a value obtained by normalizing the calculated statistical value according to a predetermined rule is calculated as the degree of similarity between time intervals.
  • the search unit 12 calculates an integrated similarity based on the posture similarity calculated in S31 and the time interval similarity calculated in S32 for each video searched in S30.
  • the search unit 12 may calculate the sum or product of the posture similarity and the time interval similarity as the integrated similarity.
  • the search unit 12 may calculate the statistical value of the similarity of the posture and the similarity of the time intervals as the integrated similarity.
  • statistical values include, but are not limited to, average values, maximum values, minimum values, mode values, median values, and the like.
  • the search unit 12 may calculate a weighted average or a weighted sum of the posture similarity and the time interval similarity as the integrated similarity.
  • the search unit 12 searches the videos searched in S30 for videos whose integrated similarity calculated in S33 is equal to or higher than the third threshold.
  • the respective weights of the posture similarity and the time interval similarity are set in advance. It may be specified by the user.
  • the user's specification may be accepted via a slider (UI (user interface) part) as shown in FIG. 17 or 18 .
  • the sliders shown in FIG. 17 are configured to designate a weight for each degree of posture similarity and time interval similarity.
  • the slider shown in FIG. 18 is configured to specify the ratio of the degree of importance between the similarity of posture and the similarity of time interval. Then, each weight is calculated based on the designated importance ratio. It should be noted that the reception of user input by the slider is merely an example, and user input may be received by other methods.
  • the first threshold referred to in S30 and the third threshold referred to in S34 may be set in advance. Then, the search unit 12 may perform the search process based on the preset first threshold and third threshold.
  • the user may be able to specify at least one of the first threshold and the third threshold.
  • the search unit 12 may determine at least one of the first threshold and the third threshold based on user input, and perform the above-described search processing based on the determined first threshold and third threshold.
  • the search device 10 of this embodiment the same effects as those of the first to third embodiments are achieved. Further, according to the search device 10 of the present embodiment, the integrated similarity obtained by integrating the similarity of movement (similarity of posture) and the similarity of speed of movement (similarity of time interval) satisfies the criterion. can be searched. According to the search device 10 of the present embodiment, it is possible to adjust the weights of the posture similarity and the time interval similarity and search for similar moving images based on desired criteria.
  • the search device 10 of this embodiment has first and second search modes. Then, the search device 10 searches for videos similar to the query video in the search mode specified by the user.
  • a first search mode is a mode for searching by the method described in the third embodiment.
  • a second search mode is a mode for searching by the method described in the fourth embodiment.
  • the search device 10 of this embodiment the same effects as those of the first to fourth embodiments are achieved. Further, according to the search device 10 of the present embodiment, a plurality of search modes are provided, and a search can be performed in a mode specified by the user. According to the search device 10 of the present embodiment, the user's range of selection is expanded, which is preferable.
  • the user designates the lower limit of the length of the movie to be searched as a search condition.
  • the search device 10 searches for a moving image that satisfies the conditions of the first to fifth embodiments and has a moving image length equal to or greater than the specified lower limit as a moving image that is similar to the query moving image.
  • videos whose length is less than the lower limit specified by the user are not retrieved.
  • a moving image containing a human body whose movement is similar to that of the human body indicated by the query moving image, but whose movement speed is faster than a predetermined level (moving image whose length is shorter than a predetermined level) is not retrieved.
  • the search unit 12 accepts user input specifying the lower limit of the video length as a search condition.
  • the search unit 12 may accept user input specifying the lower limit of the length of the moving image based on the length of the query moving image.
  • the lower limit of the video length may be specified as "X times the length of the query video".
  • the search unit 12 accepts a user input designating X.
  • X is a numerical value greater than 0 and less than or equal to 1;
  • the search unit 12 may accept user input that directly specifies the lower limit of the length of the video using a numerical value or the like.
  • the search unit 12 determines the lower limit of the number of key frames to be extracted from the query video based on the lower limit of the video length specified by the user.
  • the search unit 12 determines the lower limit of the number of key frames to be extracted from the query video so that the length of the video composed of the extracted key frames is the lower limit of the video length specified by the user.
  • the search unit 12 calculates 0.5 ⁇ P is determined as the lower bound on the number of keyframes to extract from the query video.
  • the search unit 12 calculates 0.5 ⁇ R xF1 is determined as the lower bound on the number of keyframes to extract from the query video.
  • F1 is the frame rate.
  • the keyframe extraction unit 11 extracts keyframes equal to or greater than the lower limit of the number of keyframes determined by the search unit 12 from the query video.
  • the lower limit or more of the number of keyframes determined by the search unit 12 may be set as a condition for completing the user specification process. That is, the user cannot finish the process of designating key frames unless the number of key frames equal to or greater than the lower limit of the number of key frames determined by the search unit 12 is designated as key frames.
  • the key frame extraction unit 11 adjusts the value of M to extract You can adjust the number of keyframes generated.
  • the keyframe extraction unit 11 determines the value of M such that the number of extracted keyframes is equal to or greater than the lower limit of the number of keyframes determined by the search unit 12 .
  • the key frame extracting unit 11 can adjust the number of key frames to be extracted by adjusting the similarity reference value.
  • the keyframe extraction unit 11 determines the reference value of the degree of similarity such that the number of extracted keyframes is equal to or greater than the lower limit of the number of keyframes determined by the search unit 12 .
  • the search unit 12 searches for a moving image having a plurality of corresponding frames corresponding to each of the plurality of extracted key frames. If the lower limit of the number of keyframes to be extracted from the query video is determined so that the length of the video composed of the extracted keyframes is the lower limit of the video length specified by the user, inevitably the user Videos shorter than the specified minimum video length will not be searched.
  • the search unit 12 identifies the lower limit of the video length based on user input.
  • the search unit 12 specifies the product of the length of the query video and X specified by the user as the lower limit of the video length. do.
  • the search unit 12 identifies the numerical value specified by the user as the lower limit of the length of the moving image.
  • the search unit 12 searches for a moving image in which the elapsed time between the temporally first corresponding frame and the last corresponding frame is equal to or greater than the specified lower limit of the moving image length, and which satisfies the search condition for the lower limit of the moving image length. Search as
  • the search device 10 of this embodiment the same effects as those of the first to fifth embodiments are achieved.
  • the user can specify the lower limit of the length of the motion picture, that is, the time during which the motion indicated by the query motion picture is performed.
  • a moving image containing a human body that moves similar to the movement of the human body indicated by the query moving image, but whose moving speed is faster than a predetermined level (movie length shorter than a predetermined level). is no longer searched. As a result, the search desired by the user becomes possible.
  • a keyframe extraction means for extracting a plurality of keyframes from the query video
  • search means for searching for a video similar to the query video based on the posture of the human body included in each of the plurality of key frames and the time interval between the plurality of key frames
  • a search device having 2.
  • the search means is including a plurality of corresponding frames including a human body in a posture whose similarity to the posture of the human body included in each of the plurality of key frames is equal to or greater than a first threshold; A first search mode for searching, as a video similar to the query video, a video in which the degree of similarity between the time intervals between the plurality of key frames and the time intervals between the plurality of corresponding frames is equal to or greater than a second threshold. 1.
  • the search device according to 1. 3.
  • 3. The search device according to 2, wherein the search means determines at least one of the first threshold and the second threshold based on user input. 4.
  • the search means is For each video to be processed, identifying a plurality of corresponding frames corresponding to each of the plurality of key frames; a degree of similarity between the posture of the human body included in each of the plurality of key frames and the posture of the human body included in each of the plurality of corresponding frames; and a degree of similarity between the time interval between the key frames and the time interval between the corresponding frames. Calculate the integrated similarity based on 4.
  • the search device according to any one of 1 to 3, having a second search mode for searching for the processing target moving picture having the integrated similarity greater than or equal to a third threshold as a moving picture similar to the query moving picture. 5. 5.
  • the search device includes at least one of a time interval between two temporally adjacent key frames and a time interval between temporally first and last key frames.
  • the search means is 6.
  • the method according to 4 or 5 wherein the integrated similarity is calculated based on the similarity weight of the human body posture specified by the user and the similarity weight between the time interval between the key frames and the time interval between the corresponding frames. search device.
  • the keyframe extracting means is 7.
  • the retrieval device according to any one of 1 to 6, which extracts the keyframes equal to or larger than the lower limit of the keyframes to be extracted determined based on the lower limit of the moving image length specified by the user as a search condition.
  • the keyframe extracting means is 8.
  • the search device wherein the number of the key frames to be extracted is determined such that the length of the extracted moving image composed of the plurality of key frames is equal to or greater than the lower limit of the moving image length specified by the user.
  • the computer a keyframe extraction step of extracting a plurality of keyframes from the query video; a searching step of searching for a moving image similar to the query moving image based on the posture of the human body included in each of the plurality of key frames and the time interval between the plurality of key frames; Search method to perform. 10.
  • keyframe extracting means for extracting a plurality of keyframes from the query video
  • Search means for searching for a video similar to the query video based on the posture of the human body included in each of the plurality of key frames and the time interval between the plurality of key frames

Abstract

本発明の検索装置(10)は、クエリ動画の中から複数のキーフレームを抽出するキーフレーム抽出部(11)と、複数のキーフレーム各々に含まれる人体の姿勢、及び複数のキーフレーム間の時間間隔に基づき、クエリ動画に類似する動画を検索する検索部(12)と、を有する。

Description

検索装置、検索方法、およびプログラム
 本発明は、検索装置、検索方法、およびプログラムに関する。
 本発明に関連する技術が特許文献1及び非特許文献1に開示されている。特許文献1には、画像に含まれる人体の複数のキーポイント各々の特徴量を算出し、算出した特徴量に基づき、クエリで示される人体の姿勢と似た姿勢の人体を含む静止画を検索したり、クエリで示される人体の動きと似た動きをする人体を含む動画を検索したりする技術が開示されている。また、非特許文献1には、人物の骨格推定に関連する技術が開示されている。
国際公開第2021/084677号
Zhe Cao, Tomas Simon, Shih-En Wei, Yaser Sheikh, "Realtime Multi-Person 2D Pose Estimation using Part Affinity Fields", The IEEE Conference on Computer Vision and Pattern Recognition (CVPR), 2017, P. 7291-7299
 本発明は、クエリで示される人体の動きと似た動きをする人体を含む動画の検索精度を向上させることを課題とする。
 本発明によれば、
 クエリ動画の中から複数のキーフレームを抽出するキーフレーム抽出手段と、
 複数の前記キーフレーム各々に含まれる人体の姿勢、及び複数の前記キーフレーム間の時間間隔に基づき、前記クエリ動画に類似する動画を検索する検索手段と、
を有する検索装置が提供される。
 また、本発明によれば、
 コンピュータが、
  クエリ動画の中から複数のキーフレームを抽出するキーフレーム抽出工程と、
  複数の前記キーフレーム各々に含まれる人体の姿勢、及び複数の前記キーフレーム間の時間間隔に基づき、前記クエリ動画に類似する動画を検索する検索工程と、
を実行する検索方法が提供される。
 また、本発明によれば、
 コンピュータを、
  クエリ動画の中から複数のキーフレームを抽出するキーフレーム抽出手段、
  複数の前記キーフレーム各々に含まれる人体の姿勢、及び複数の前記キーフレーム間の時間間隔に基づき、前記クエリ動画に類似する動画を検索する検索手段、
として機能させるプログラムが提供される。
 本発明によれば、クエリで示される人体の動きと似た動きをする人体を含む動画の検索精度が向上する。
 上述した目的、およびその他の目的、特徴および利点は、以下に述べる公的な実施の形態、およびそれに付随する以下の図面によってさらに明らかになる。
本実施形態のキーフレームを抽出する処理を説明するための図である。 本実施形態の検索装置のハードウエア構成の一例を示す図である。 本実施形態の検索装置の機能ブロック図の一例を示す図である。 本実施形態のキーフレームを抽出する処理を説明するための図である。 本実施形態の対応フレーム、複数のキーフレーム間の時間間隔及び複数の対応フレーム間の時間間隔を説明するための図である。 本実施形態の検索装置の処理の流れの一例を示すフローチャートである。 本実施形態の検索装置の機能ブロック図の一例を示す図である。 本実施形態の検索装置により検出される人体モデルの骨格構造の一例を示す図である。 本実施形態の検索装置により検出された人体モデルの骨格構造の一例を示す図である。 本実施形態の検索装置により検出された人体モデルの骨格構造の一例を示す図である。 本実施形態の検索装置により検出された人体モデルの骨格構造の一例を示す図である。 本実施形態の検索装置により算出されたキーポイントの特徴量の一例を示す図である。 本実施形態の検索装置により算出されたキーポイントの特徴量の一例を示す図である。 本実施形態の検索装置により算出されたキーポイントの特徴量の一例を示す図である。 本実施形態の検索装置の処理の流れの一例を示すフローチャートである。 本実施形態の検索装置の処理の流れの一例を示すフローチャートである。 本実施形態の人体の姿勢の類似度の重み、及びキーフレーム間の時間間隔と対応フレーム間の時間間隔との類似度の重みをユーザが指定する手法の一例を説明するための図である。 本実施形態の人体の姿勢の類似度の重み、及びキーフレーム間の時間間隔と対応フレーム間の時間間隔との類似度の重みをユーザが指定する手法の一例を説明するための図である。
 以下、本発明の実施の形態について、図面を用いて説明する。尚、すべての図面において、同様な構成要素には同様の符号を付し、適宜説明を省略する。
<第1の実施形態>
「概要」
 本実施形態の検索装置は、図1に示すように、クエリ動画の中から複数のキーフレームを抽出した後、複数のキーフレーム各々に含まれる人体の姿勢、及び複数のキーフレーム間の時間間隔に基づき、クエリ動画で示される人体の動き(人体の姿勢の時間変化)と似た動きをする人体を含む動画を検索する。
 このように、本実施形態の検索装置は、複数のキーフレーム各々に含まれる人体の姿勢、及び複数のキーフレーム間の時間間隔という2つの要素に基づき、動画を検索するという特徴を有する。
「ハードウエア構成」
 次に、検索装置のハードウエア構成の一例を説明する。検索装置の各機能部は、任意のコンピュータのCPU(Central Processing Unit)、メモリ、メモリにロードされるプログラム、そのプログラムを格納するハードディスク等の記憶ユニット(あらかじめ装置を出荷する段階から格納されているプログラムのほか、CD(Compact Disc)等の記憶媒体やインターネット上のサーバ等からダウンロードされたプログラムをも格納できる)、ネットワーク接続用インターフェイスを中心にハードウエアとソフトウエアの任意の組合せによって実現される。そして、その実現方法、装置にはいろいろな変形例があることは、当業者には理解されるところである。
 図2は、検索装置のハードウエア構成を例示するブロック図である。図2に示すように、検索装置は、プロセッサ1A、メモリ2A、入出力インターフェイス3A、周辺回路4A、バス5Aを有する。周辺回路4Aには、様々なモジュールが含まれる。検索装置は周辺回路4Aを有さなくてもよい。なお、検索装置は物理的及び/又は論理的に分かれた複数の装置で構成されてもよい。この場合、複数の装置各々が上記ハードウエア構成を備えることができる。
 バス5Aは、プロセッサ1A、メモリ2A、周辺回路4A及び入出力インターフェイス3Aが相互にデータを送受信するためのデータ伝送路である。プロセッサ1Aは、例えばCPU、GPU(Graphics Processing Unit)などの演算処理装置である。メモリ2Aは、例えばRAM(Random Access Memory)やROM(Read Only Memory)などのメモリである。入出力インターフェイス3Aは、入力装置、外部装置、外部サーバ、外部センサ、カメラ等から情報を取得するためのインターフェイスや、出力装置、外部装置、外部サーバ等に情報を出力するためのインターフェイスなどを含む。入力装置は、例えばキーボード、マウス、マイク、物理ボタン、タッチパネル等である。出力装置は、例えばディスプレイ、スピーカ、プリンター、メーラ等である。プロセッサ1Aは、各モジュールに指令を出し、それらの演算結果をもとに演算を行うことができる。
「機能構成」
 図3に、本実施形態の検索装置10の機能ブロック図の一例を示す。図示する検索装置10は、キーフレーム抽出部11と、検索部12とを有する。
 キーフレーム抽出部11は、クエリ動画の中から複数のキーフレームを抽出する。
 「クエリ動画」は、検索クエリとなる動画である。検索装置10は、クエリ動画で示される人体の動きと似た動きをする人体を含む動画を検索する。1つの動画ファイルがクエリ動画として指定されてもよいし、1つの動画ファイルの中の一部のシーンがクエリ動画として指定されてもよい。例えばユーザがクエリ動画を指定する。クエリ動画の指定は、あらゆる技術を利用して実現できる。
 「キーフレーム」は、クエリ動画に含まれる複数のフレームの中の一部のフレームである。キーフレーム抽出部11は、図1及び図4に示すように、クエリ動画に含まれる時系列な複数のフレームの中から、間欠的に、キーフレームを抽出することができる。キーフレーム間の時間間隔(フレームの数)は一定であってもよいし、バラバラであってもよい。キーフレーム抽出部11は、例えば以下の抽出処理1乃至3のいずれかを実行することができる。
-抽出処理1-
 抽出処理1では、キーフレーム抽出部11は、ユーザ入力に基づきキーフレームを抽出する。すなわち、ユーザが、クエリ動画に含まれる複数のフレームの中の一部をキーフレームとして指定する入力を行う。そして、キーフレーム抽出部11は、ユーザにより指定されたフレームをキーフレームとして抽出する。
-抽出処理2-
 抽出処理2では、キーフレーム抽出部11は、予め定められた規則に従ってキーフレームを抽出する。
 具体的には、キーフレーム抽出部11は、図1に示すように、クエリ動画に含まれる複数のフレームの中から所定の一定間隔で複数のキーフレームを抽出する。すなわち、キーフレーム抽出部11は、Mフレームおきに、キーフレームを抽出する。Mは整数であり、例えば2以上10以下が例示されるが、これに限定されない。Mは予め定められていてもよいし、ユーザが選択できてもよい。
-抽出処理3-
 抽出処理3では、キーフレーム抽出部11は、予め定められた規則に従ってキーフレームを抽出する。
 具体的には、キーフレーム抽出部11は、図4に示すように、1つのキーフレームを抽出した後(例えば、一番初めのフレーム)、そのキーフレームと、時系列順がそのキーフレーム以降のフレーム各々との間の類似度を算出する。類似度は、各フレームに含まれる人体の姿勢の類似度である。姿勢の類似度の算出の手法は特段制限されないが、以下の実施形態で一例を説明する。そして、キーフレーム抽出部11は、類似度が基準値(設計的事項)以下であり、かつ時系列順が最も早いフレームを、新たなキーフレームとして抽出する。
 次いで、キーフレーム抽出部11は、新たに抽出したキーフレームと、時系列順がそのキーフレーム以降のフレーム各々との間の類似度を算出する。そして、キーフレーム抽出部11は、類似度が基準値(設計的事項)以下であり、かつ時系列順が最も早いフレームを、新たなキーフレームとして抽出する。キーフレーム抽出部11は、当該処理を繰り返して、複数のキーフレームを抽出する。この処理によれば、隣り合うキーフレームに含まれる人体の姿勢は、互いにある程度異なる。従って、キーフレームが増加することを抑制しつつ、人体の特徴的な姿勢を示した複数のキーフレームを抽出することができる。上記基準値は予め定められていてもよいし、ユーザが選択できてもよいし、その他の手段で設定されてもよい。
 図3に戻り、検索部12は、キーフレーム抽出部11により抽出された複数のキーフレーム各々に含まれる人体の姿勢、及び複数のキーフレーム間の時間間隔に基づき、クエリ動画に類似する動画を検索する。検索部12による動画の検索は、1つの動画ファイルの中からクエリ動画に類似するシーンを検索することであってもよいし、複数の動画ファイルの中からクエリ動画に類似するシーンを含む動画ファイルを検索することであってもよいし、その他であってもよい。
 検索部12は、具体的には、以下の条件1及び2を満たす動画を、クエリ動画に類似する動画として検索する。なお、検索部12は、以下の条件1及び2に加えて、以下の条件3をさらに満たす動画を検索してもよい。
(条件1)複数のキーフレーム各々に対応した複数の対応フレームを含む。
(条件2)複数の対応フレーム間の時間間隔が複数のキーフレーム間の時間間隔と所定レベル以上似ている。
(条件3)クエリ動画内における複数のキーフレームの出現順と、動画内における複数の対応フレームの出現順とが一致する。
 以下、各条件について説明する
-(条件1)複数のキーフレーム各々に対応した複数の対応フレームを含む-
 対応フレームは、キーフレームに含まれる人体の姿勢と所定レベル以上似た姿勢の人体を含むフレームである。姿勢の類似度の算出の手法は特段制限されないが、以下の実施形態で一例を説明する。クエリ動画からQ(Qは2以上の整数)個のキーフレームが抽出された場合、Q個のキーフレーム各々に対応するQ個の対応フレームを含む動画が、条件1を満たすこととなる。
 図5では、10個のフレームで構成されたクエリ動画が示されている。そして、図中、星マークがついた1番目、4番目、6番目、8番目及び10番目のフレームが、キーフレームとして抽出されている。以下、複数のキーフレームの中の時系列順がN番目のキーフレームを、「第Nのキーフレーム」と呼ぶ。Nは1以上の整数である。図5の例の場合、1番目のフレームを第1のキーフレームと呼び、4番目のフレームを第2のキーフレームと呼び、6番目のフレームを第3のキーフレームと呼び、8番目のフレームを第4のキーフレームと呼び、10番目のフレームを第5のキーフレームと呼ぶ。
 図5の例では、第1乃至第5のキーフレーム各々に対応する5個の対応フレームを含む動画が、条件1を満たすこととなる。ちなみに、図5の処理対象の動画は、条件1を満たす動画である。処理対象の動画は、12個のフレームで構成されている。図中、星マークがついた1番目、3番目、7番目、8番目及び12番目のフレームが、対応フレームとして特定されている。以下、第Nのキーフレームに対応する対応フレームを、「第Nの対応フレーム」と呼ぶ。処理対象の動画の1番目のフレームが第1の対応フレームであり、3番目のフレームが第2の対応フレームであり、7番目のフレームが第3の対応フレームであり、8番目のフレームが第4の対応フレームであり、12番目のフレームが第5の対応フレームである。
-(条件2)複数の対応フレーム間の時間間隔が複数のキーフレーム間の時間間隔と所定レベル以上似ている-
 まず、図5を用いて、「複数の対応フレーム間の時間間隔」及び「複数のキーフレーム間の時間間隔」の概念を説明する。
 複数の対応フレーム間の時間間隔は、図示する例の場合、第1乃至第5の対応フレーム間の時間間隔である。
 例えば、複数の対応フレーム間の時間間隔は、時間的に隣接する対応フレーム間の時間間隔を含む概念であってもよい。図5の例の場合、時間的に隣接する対応フレーム間の時間間隔は、第1及び第2の対応フレーム間の時間間隔、第2及び第3の対応フレーム間の時間間隔、第3及び第4の対応フレーム間の時間間隔、及び第4及び第5の対応フレーム間の時間間隔である。
 その他、複数の対応フレーム間の時間間隔は、時間的に最初と最後の対応フレーム間の時間間隔を含む概念であってもよい。図5の例の場合、時間的に最初と最後の対応フレーム間の時間間隔は、第1及び第5の対応フレーム間の時間間隔である。
 その他、複数の対応フレーム間の時間間隔は、任意の手法で決定した基準の対応フレームと、その他の対応フレーム各々との間の時間間隔を含む概念であってもよい。図5の例の場合、例えば第1の対応フレームを基準の対応フレームとすると、基準の対応フレームとその他の対応フレーム各々との間の時間間隔は、第1及び第2の対応フレーム間の時間間隔、第1及び第3の対応フレーム間の時間間隔、第1及び第4の対応フレーム間の時間間隔、及び第1及び第5の対応フレーム間の時間間隔である。なお、基準の対応フレームは、1つであってもよいし、複数であってもよい。
 「複数の対応フレーム間の時間間隔」は、上述した複数種類の時間間隔の中のいずれか1つであってもよいし、複数を含んでもよい。予め、上述した複数種類の時間間隔の中のいずれを複数の対応フレーム間の時間間隔とするか、定義されている。図5の例の場合、第1及び第2の対応フレーム間の時間間隔、第2及び第3の対応フレーム間の時間間隔、第3及び第4の対応フレーム間の時間間隔、第4及び第5の対応フレーム間の時間間隔(以上、時間的に隣接する対応フレーム間の時間間隔)、第1及び第5の対応フレーム間の時間間隔(以上、時間的に最初と最後の対応フレーム間の時間間隔)、第1及び第2の対応フレーム間の時間間隔、第1及び第3の対応フレーム間の時間間隔、第1及び第4の対応フレーム間の時間間隔、第1及び第5の対応フレーム間の時間間隔(以上、基準の対応フレームとその他の対応フレーム各々との間の時間間隔の一例)の中のいずれか1つ又は複数が、複数の対応フレーム間の時間間隔となる。
 複数のキーフレーム間の時間間隔の概念は、上述した複数の対応フレーム間の時間間隔の概念と同様である。
 なお、2つのフレーム間の時間間隔は、その2つのフレーム間のフレーム数で示されてもよいし、その2つのフレーム間のフレーム数とフレームレートに基づき算出された2つのフレーム間の経過時間で示されてもよい。
 次に、「複数の対応フレーム間の時間間隔が複数のキーフレーム間の時間間隔と所定レベル以上似ている」の概念について説明する。ここでは、複数の対応フレーム間の時間間隔及び複数のキーフレーム間の時間間隔が、上述した複数種類の時間間隔の中の1つである場合と、複数である場合とに分けて説明する。
(複数の対応フレーム間の時間間隔及び複数のキーフレーム間の時間間隔が、1種類の時間間隔である場合)
 この場合、複数の対応フレーム間の1種類の時間間隔及び複数のキーフレーム間の1種類の時間間隔の相違が閾値以下である状態を、複数の対応フレーム間の時間間隔が複数のキーフレーム間の時間間隔と所定レベル以上似ている状態と定義する。閾値は設計的事項であり、予め設定される。「時間間隔の相違」は、差や変化率である。
 一例として、時間的に最初と最後の対応フレーム間の時間間隔と、時間的に最初と最後の対応フレーム間の時間間隔との相違が閾値以下である状態を、複数の対応フレーム間の時間間隔が複数のキーフレーム間の時間間隔と所定レベル以上似ている状態と定義する例が考えられる。なお、ここでは「複数の対応フレーム間の時間間隔」を「時間的に最初と最後の対応フレーム間の時間間隔」と定義し、「複数のキーフレーム間の時間間隔」を「時間的に最初と最後のキーフレーム間の時間間隔」と定義したが、あくまで一例であり、これに限定されない。
(複数の対応フレーム間の時間間隔及び複数のキーフレーム間の時間間隔が、複数種類の時間間隔を含む場合)
 この場合、複数種類の時間間隔毎に、対応フレーム間の時間間隔及び複数のキーフレーム間の時間間隔の相違が閾値以下であるか判断する。閾値は設計的事項であり、各種時間間隔毎に予め設定される。そして、複数種類の時間間隔の中の所定割合以上において当該相違が閾値以下である状態を、複数の対応フレーム間の時間間隔が複数のキーフレーム間の時間間隔と所定レベル以上似ている状態と定義する。
-(条件3)クエリ動画内における複数のキーフレームの出現順と、動画内における複数の対応フレームの出現順とが一致する-
 条件3は、クエリ動画から抽出された第1乃至第Qのキーフレームと、各々に対応する第1乃至第Qの対応フレームの動画内における出願順が一致していることである。第1乃至第Qの対応フレームがこの順に現れる動画は当該条件を満たし、第1乃至第Qの対応フレームがこの順に現れない動画は当該条件を満たさない。
 次に、図6のフローチャートを用いて、検索装置10の処理の流れの一例を説明する。
 まず、処理装置10は、クエリ動画の中から複数のキーフレームを抽出する(S10)。その後、処理装置10は、抽出した複数のキーフレーム各々に含まれる人体の姿勢、及び抽出した複数のキーフレーム間の時間間隔に基づき、クエリ動画に類似する動画を検索する(S11)。
「作用効果」
 本実施形態の検索装置10は、図1に示すように、クエリ動画の中から複数のキーフレームを抽出した後、複数のキーフレーム各々に含まれる人体の姿勢、及び複数のキーフレーム間の時間間隔に基づき、クエリ動画で示される人体の動き(人体の姿勢の時間変化)と似た動きをする人体を含む動画を検索する。
 具体的には、検索装置10は、複数のキーフレーム各々に対応した複数の対応フレームを含み、かつ、複数の対応フレーム間の時間間隔が複数のキーフレーム間の時間間隔と似ている動画を検索する。対応フレームは、キーフレームに含まれる人体の姿勢と似た姿勢の人体を含むフレームである。
 このような検索装置10によれば、クエリ動画で示される人体の複数の姿勢各々と似た姿勢の人体が含まれており、かつ、その姿勢の変化の速さ(キーフレーム間の間隔)が似ている動画が検索されることとなる。例えば、図1に示すように、クエリ動画で右手を挙げる動きをする人体が示されている場合、右手を挙げる動きをする人体を含み、かつ、その右手を挙げる動きの速さがクエリ動画で示される速さと似ている動画が検索されることとなる。
 このような本実施形態の検索装置10によれば、クエリ動画で示される人体の動きと似た動きをする人体を含む動画の検索精度が向上する。
<第2の実施形態>
 本実施形態の検索装置10は、人体の姿勢の類似度の算出の手法が具体化される。図7に、本実施形態の検索装置10の機能ブロック図の一例を示す。図示するように、検索装置10は、キーフレーム抽出部11と、骨格構造検出部13と、特徴量算出部14と、検索部12とを有する。
 骨格構造検出部13は、キーフレームに含まれる人体のN(Nは2以上の整数)個のキーポイントを検出する処理を行う。骨格構造検出部13による当該処理は、特許文献1に開示されている技術を用いて実現される。詳細は省略するが、特許文献1に開示されている技術では、非特許文献1に開示されたOpenPose等の骨格推定技術を利用して骨格構造の検出を行う。当該技術で検出される骨格構造は、関節等の特徴的な点である「キーポイント」と、キーポイント間のリンクを示す「ボーン(ボーンリンク)」とから構成される。
 図8は、骨格構造検出部13により検出される人体モデル300の骨格構造を示しており、図9乃至図11は、骨格構造の検出例を示している。骨格構造検出部13は、OpenPose等の骨格推定技術を用いて、2次元の画像から図8のような人体モデル(2次元骨格モデル)300の骨格構造を検出する。人体モデル300は、人物の関節等のキーポイントと、各キーポイントを結ぶボーンから構成された2次元モデルである。
 骨格構造検出部101は、例えば、画像の中からキーポイントとなり得る特徴点を抽出し、キーポイントの画像を機械学習した情報を参照して、人体のN個のキーポイントを検出する。検出するN個のキーポイントは予め定められる。検出するキーポイントの数(すなわち、Nの数)や、人体のどの部分を検出するキーポイントとするかは様々であり、あらゆるバリエーションを採用できる。
 図8の例では、人物のキーポイントとして、頭A1、首A2、右肩A31、左肩A32、右肘A41、左肘A42、右手A51、左手A52、右腰A61、左腰A62、右膝A71、左膝A72、右足A81、左足A82を検出する。さらに、これらのキーポイントを連結した人物の骨として、頭A1と首A2を結ぶボーンB1、首A2と右肩A31及び左肩A32をそれぞれ結ぶボーンB21及びボーンB22、右肩A31及び左肩A32と右肘A41及び左肘A42をそれぞれ結ぶボーンB31及びボーンB32、右肘A41及び左肘A42と右手A51及び左手A52をそれぞれ結ぶボーンB41及びボーンB42、首A2と右腰A61及び左腰A62をそれぞれ結ぶボーンB51及びボーンB52、右腰A61及び左腰A62と右膝A71及び左膝A72をそれぞれ結ぶボーンB61及びボーンB62、右膝A71及び左膝A72と右足A81及び左足A82をそれぞれ結ぶボーンB71及びボーンB72を検出する。
 図9は、直立した状態の人物を検出する例である。図9では、直立した人物が正面から撮像されており、正面から見たボーンB1、ボーンB51及びボーンB52、ボーンB61及びボーンB62、ボーンB71及びボーンB72がそれぞれ重ならずに検出され、右足のボーンB61及びボーンB71は左足のボーンB62及びボーンB72よりも多少折れ曲がっている。
 図10は、しゃがみ込んでいる状態の人物を検出する例である。図10では、しゃがみ込んでいる人物が右側から撮像されており、右側から見たボーンB1、ボーンB51及びボーンB52、ボーンB61及びボーンB62、ボーンB71及びボーンB72がそれぞれ検出され、右足のボーンB61及びボーンB71と左足のボーンB62及びボーンB72は大きく折れ曲がり、かつ、重なっている。
 図11は、寝込んでいる状態の人物を検出する例である。図11では、寝込んでいる人物が左斜め前から撮像されており、左斜め前から見たボーンB1、ボーンB51及びボーンB52、ボーンB61及びボーンB62、ボーンB71及びボーンB72がそれぞれ検出され、右足のボーンB61及びボーンB71と左足のボーンB62及びボーンB72は折れ曲がり、かつ、重なっている。
 図7に戻り、特徴量算出部14は、検出された2次元の骨格構造の特徴量を算出する。例えば、特徴量算出部14は、検出されたキーポイント各々の特徴量を算出する。
 骨格構造の特徴量は、人物の骨格の特徴を示しており、人物の骨格に基づいて人物の状態(姿勢や動き)を検索するための要素となる。通常、この特徴量は、複数のパラメータを含んでいる。そして特徴量は、骨格構造の全体の特徴量でもよいし、骨格構造の一部の特徴量でもよく、骨格構造の各部のように複数の特徴量を含んでもよい。特徴量の算出方法は、機械学習や正規化等の任意の方法でよく、正規化として最小値や最大値を求めてもよい。一例として、特徴量は、骨格構造を機械学習することで得られた特徴量や、骨格構造の頭部から足部までの画像上の大きさ、画像上の骨格構造を含む骨格領域の上下方向における複数のキーポイントの相対的な位置関係、当該骨格領域の左右方向における複数のキーポイントの相対的な位置関係等である。骨格構造の大きさは、画像上の骨格構造を含む骨格領域の上下方向の高さや面積等である。上下方向(高さ方向または縦方向)は、画像における上下の方向(Y軸方向)であり、例えば、地面(基準面)に対し垂直な方向である。また、左右方向(横方向)は、画像における左右の方向(X軸方向)であり、例えば、地面に対し平行な方向である。
 なお、ユーザが望む検索を行うためには、検索処理に対しロバスト性を有する特徴量を用いることが好ましい。例えば、ユーザが、人物の向きや体型に依存しない検索を望む場合、人物の向きや体型にロバストな特徴量を使用してもよい。同じ姿勢で様々な方向に向いている人物の骨格や同じ姿勢で様々な体型の人物の骨格を学習することや、骨格の上下方向のみの特徴を抽出することで、人物の向きや体型に依存しない特徴量を得ることができる。
 特徴量算出部14による上記処理は、特許文献1に開示されている技術を用いて実現される。
 図12は、特徴量算出部14が求めた複数のキーポイント各々の特徴量の例を示している。なお、ここで例示するキーポイントの特徴量はあくまで一例であり、これに限定されない。
 この例では、キーポイントの特徴量は、画像上の骨格構造を含む骨格領域の上下方向における複数のキーポイントの相対的な位置関係を示す。首のキーポイントA2を基準点とするため、キーポイントA2の特徴量は0.0となり、首と同じ高さの右肩のキーポイントA31及び左肩のキーポイントA32の特徴量も0.0である。首よりも高い頭のキーポイントA1の特徴量は-0.2である。首よりも低い右手のキーポイントA51及び左手のキーポイントA52の特徴量は0.4であり、右足のキーポイントA81及び左足のキーポイントA82の特徴量は0.9である。この状態から人物が左手を挙げると、図13のように左手が基準点よりも高くなるため、左手のキーポイントA52の特徴量は-0.4となる。一方で、Y軸の座標のみを用いて正規化を行っているため、図14のように、図7に比べて骨格構造の幅が変わっても特徴量は変わらない。すなわち、当該例の特徴量(正規化値)は、骨格構造(キーポイント)の高さ方向(Y方向)の特徴を示しており、骨格構造の横方向(X方向)の変化に影響を受けない。
 検索部12は、上述のようなキーポイントの特徴量に基づき人体の姿勢の類似度を算出し、算出結果に基づきクエリ動画に類似する動画を検索する。当該検索の手法としては、特許文献1に開示されている技術を採用することができる。
 本実施形態の検索装置10のその他の構成は、第1の実施形態と同様である。
 以上、本実施形態の検索装置10によれば、第1の実施形態と同様の作用効果が実現される。また、本実施形態の検索装置10によれば、人体の2次元の骨格構造の特徴量に基づき、人体の姿勢を特定することができる。このような本実施形態の検索装置10によれば、人体の姿勢を精度よく特定できる。結果、クエリ動画で示される人体の動きと似た動きをする人体を含む動画の検索精度が向上する。
<第3の実施形態>
 本実施形態では、検索部12による処理の流れが具体化される。図15のフローチャートは、本実施形態の検索部12による処理の流れの一例を示す。
 S20では、検索部12は、Q個のキーフレーム各々に対応するQ個の対応フレームを含む動画を検索する。第Nのキーフレームに対応する第Nの対応フレームは、第Nのキーフレームに含まれる人体の姿勢との類似度が第1の閾値以上である姿勢の人体を含む。
 S21では、検索部12は、S20で検索した動画の中から、複数の対応フレーム間の時間間隔と、複数のキーフレーム間の時間間隔との類似度が第2の閾値以上である動画を検索する。複数の対応フレーム間の時間間隔と、複数のキーフレーム間の時間間隔との類似度の算出手法は様々である。
 例えば、複数の対応フレーム間の時間間隔及び複数のキーフレーム間の時間間隔が、1種類の時間間隔である場合、まず、その時間間隔の相違を算出する。時間間隔の相違は、差や変化率である。この相違を、類似度としてもよい。その他、算出した相違を所定のルールで規格化した値を、類似度としてもよい。
 一方、複数の対応フレーム間の時間間隔及び複数のキーフレーム間の時間間隔が、複数種類の時間間隔を含む場合、まず、各種時間間隔毎に、その時間間隔の相違を算出する。時間間隔の相違は、差や変化率である。その後、各種時間間隔毎に算出した時間間隔の相違の統計値を算出する。統計値は、平均値、最大値、最小値、最頻値、中央値等が例示されるが、これらに限定されない。この統計値を、類似度としてもよい。その他、算出した統計値を所定のルールで規格化した値を、類似度としてもよい。
 「複数の対応フレーム間の時間間隔及び複数のキーフレーム間の時間間隔が、1種類の時間間隔である場合」及び「複数の対応フレーム間の時間間隔及び複数のキーフレーム間の時間間隔が、複数種類の時間間隔を含む場合」の概念は、第1の実施形態で説明した通りである。
 なお、S20で参照される第1の閾値及びS21で参照される第2の閾値は、予め設定されていてもよい。そして、検索部12は、予め設定された第1の閾値及び第2の閾値に基づき上記検索処理を行ってもよい。
 その他、ユーザが、第1の閾値及び第2の閾値の少なくとも一方を指定できてもよい。そして、検索部12は、ユーザ入力に基づき第1の閾値及び第2の閾値の少なくとも一方を決定し、決定した第1の閾値及び第2の閾値に基づき上記検索処理を行ってもよい。
 複数の対応フレーム間の時間間隔及び複数のキーフレーム間の時間間隔が、第1の実施形態で説明したように複数種類の時間間隔を含む場合、各種時間間隔毎に第2の閾値が設定される。
 本実施形態の検索装置10のその他の構成は、第1及び第2の実施形態と同様である。
 本実施形態の検索装置10によれば、第1及び第2の実施形態と同様の作用効果が実現される。また、本実施形態の検索装置10によれば、動き(姿勢の変化)が類似するか否かの判定と、動きの速さ(姿勢の変化の速さ)が類似するか否かの判定を別々に複数段階に分けて行い、段階ごとに、類似すると判定する基準(第1の閾値及び第2の閾値)を設定することができる。結果、所望の基準で類似する動画の検索を行うことが可能となる。
<第4の実施形態>
 本実施形態では、検索部12による処理の流れが具体化される。本実施形態の検索部12による処理の流れは、第3の実施形態で説明したものと異なる。図16のフローチャートは、本実施形態の検索部12による処理の流れの一例を示す。
 S30では、検索部12は、Q個のキーフレーム各々に対応するQ個の対応フレームを含む動画を検索する。第Nのキーフレームに対応する第Nの対応フレームは、第Nのキーフレームに含まれる人体の姿勢との類似度が第1の閾値以上である姿勢の人体を含む。
 S31では、検索部12は、S30で検索した動画毎に、複数の対応フレームに含まれる人体の姿勢と、複数のキーフレームに含まれる人体の姿勢との類似度(以下、「姿勢の類似度」と呼ぶ)を算出する。姿勢の類似度の算出手法は様々である。例えば、互いに対応する対応フレームとキーフレームとのペア毎に、各々に含まれる人体の姿勢の類似度を算出する。当該類似度の算出手法は、特許文献1に開示されている手法を採用できる。次に、ペア毎に算出した複数の類似度の統計値を算出する。統計値は、平均値、最大値、最小値、最頻値、中央値等が例示されるが、これらに限定されない。その後、算出した統計値を所定のルールで規格化した値を、姿勢の類似度として算出する。なお、ここで例示した姿勢の類似度の算出方法はあくまで一例であり、これに限定されない。
 S32では、検索部12は、S30で検索した動画毎に、複数の対応フレーム間の時間間隔と、複数のキーフレーム間の時間間隔との類似度(以下、「時間間隔の類似度」と呼ぶ)を算出する。時間間隔の類似度の算出手法は様々である。
 例えば、複数の対応フレーム間の時間間隔及び複数のキーフレーム間の時間間隔が、1種類の時間間隔である場合、まず、その時間間隔の相違を算出する。時間間隔の相違は、差や変化率で定義される。その後、算出した相違を所定のルールで規格化した値を、類似度として算出する。
 一方、複数の対応フレーム間の時間間隔及び複数のキーフレーム間の時間間隔が、複数種類の時間間隔を含む場合、まず、各種時間間隔毎に、その時間間隔の相違を算出する。時間間隔の相違は、差や変化率で定義される。その後、各種時間間隔毎に算出した時間間隔の相違の統計値を算出する。統計値は、平均値、最大値、最小値、最頻値、中央値等が例示されるが、これらに限定されない。その後、算出した統計値を所定のルールで規格化した値を、時間間隔の類似度として算出する。
 「複数の対応フレーム間の時間間隔及び複数のキーフレーム間の時間間隔が、1種類の時間間隔である場合」及び「複数の対応フレーム間の時間間隔及び複数のキーフレーム間の時間間隔が、複数種類の時間間隔を含む場合」の概念は、第1の実施形態で説明した通りである。
 S33では、検索部12は、S30で検索した動画毎に、S31で算出した姿勢の類似度と、S32で算出した時間間隔の類似度とに基づき、統合類似度を算出する。
 例えば、検索部12は、姿勢の類似度と時間間隔の類似度との和や積を、統合類似度として算出してもよい。
 その他、検索部12は、姿勢の類似度と時間間隔の類似度との統計値を、統合類似度として算出してもよい。統計値は、平均値、最大値、最小値、最頻値、中央値等が例示されるが、これらに限定されない。
 その他、検索部12は、姿勢の類似度と時間間隔の類似度との加重平均や加重和を、統合類似度として算出してもよい。
 S34では、検索部12は、S30で検索した動画の中から、S33で算出した統合類似度が第3の閾値以上である動画を検索する。
 なお、S33で、姿勢の類似度と時間間隔の類似度との加重平均や加重和を、統合類似度として算出する場合、姿勢の類似度及び時間間隔の類似度各々の重みは、予め設定されていてもよいし、ユーザが指定できてもよい。ユーザが指定する場合、例えば、図17や図18に示すようなスライダー(UI(user interface)部品)を介して、ユーザによる指定を受付けてもよい。図17に示すスライダーは、姿勢の類似度及び時間間隔の類似度各々毎に、重みを指定する構成となっている。図18に示すスライダーは、姿勢の類似度と時間間隔の類似度の重要度の比率を指定する構成となっている。そして、指定された重要度の比率に基づき、各々の重みが算出される。なお、スライダーでのユーザ入力受付はあくまで一例であり、その他の手法でユーザ入力を受付けてもよい。
 また、S30で参照される第1の閾値及びS34で参照される第3の閾値は、予め設定されていてもよい。そして、検索部12は、予め設定された第1の閾値及び第3の閾値に基づき上記検索処理を行ってもよい。
 その他、ユーザが、第1の閾値及び第3の閾値の少なくとも一方を指定できてもよい。そして、検索部12は、ユーザ入力に基づき第1の閾値及び第3の閾値の少なくとも一方を決定し、決定した第1の閾値及び第3の閾値に基づき上記検索処理を行ってもよい。
 本実施形態の検索装置10のその他の構成は、第1乃至第3の実施形態と同様である。
 本実施形態の検索装置10によれば、第1乃至第3の実施形態と同様の作用効果が実現される。また、本実施形態の検索装置10によれば、動きの類似度(姿勢の類似度)、及び動きの速さの類似度(時間間隔の類似度)を統合した統合類似度が基準を満たす動画を検索することができる。このような本実施形態の検索装置10によれば、姿勢の類似度及び時間間隔の類似度の重みを調整し、所望の基準で、類似する動画の検索を行うことが可能となる。
<第5の実施形態>
 本実施形態の検索装置10は、第1及び第2の検索モードを備える。そして、検索装置10は、ユーザが指定した検索モードで、クエリ動画に類似する動画を検索する。第1の検索モードは、第3の実施形態で説明した手法で検索するモードである。第2の検索モードは、第4の実施形態で説明した手法で検索するモードである。
 本実施形態の検索装置10のその他の構成は、第1乃至第4の実施形態と同様である。
 本実施形態の検索装置10によれば、第1乃至第4の実施形態と同様の作用効果が実現される。また、本実施形態の検索装置10によれば、複数の検索モードを備え、ユーザが指定したモードで検索を行うことができる。本実施形態の検索装置10によれば、ユーザの選択の幅が広がり好ましい。
<第6の実施形態>
 本実施形態では、ユーザが、検索する動画の動画長の下限を検索条件として指定する。そして、検索装置10は、第1乃至第5の実施形態が備える条件を満たし、さらに動画長が指定された下限以上である動画を、クエリ動画に類似する動画として検索する。この場合、動画長が、ユーザにより指定された下限未満である動画は検索されない。これにより、クエリ動画で示される人体の動きと似た動きをする人体を含むが、その動きの速さが所定レベルより速い動画(動画長が所定レベルより短い動画)は検索されなくなる。以下、詳細に説明する。
 検索部12は、検索条件として、動画長の下限を指定するユーザ入力を受付ける。検索部12は、クエリ動画の長さを基準として、動画長の下限を指定するユーザ入力を受付けてもよい。例えば、動画長の下限は、「クエリ動画の長さのX倍」のように指定されてもよい。この場合、検索部12は、Xを指定するユーザ入力を受付ける。Xは、0より大1以下の数値である。
 その他、検索部12は、動画長の下限を数値等で直接指定するユーザ入力を受付けてもよい。
 次に、動画長が上記検索条件を満たす動画を検索する手法を説明する。
-手法1-
 まず、検索部12は、ユーザが指定した動画長の下限に基づき、クエリ動画から抽出するキーフレームの数の下限を決定する。検索部12は、抽出したキーフレームで構成される動画の長さが、ユーザが指定した動画長の下限となるように、クエリ動画から抽出するキーフレームの数の下限を決定する。
 例えば、クエリ動画の動画長が「Pフレーム」であり、ユーザが指定した動画長の下限が「クエリ動画の動画長の0.5倍」である場合、検索部12は、0.5×Pを、クエリ動画から抽出するキーフレームの数の下限として決定する。
 また、クエリ動画の動画長が「R秒」であり、ユーザが指定した動画長の下限が「クエリ動画の動画長の0.5倍」である場合、検索部12は、0.5×R×Fを、クエリ動画から抽出するキーフレームの数の下限として決定する。Fはフレームレートである。
 そして、キーフレーム抽出部11は、検索部12が決定したキーフレームの数の下限以上のキーフレームを、クエリ動画から抽出する。
 例えば、第1の実施形態で説明した抽出処理1でキーフレームを抽出する場合、すなわちユーザが指定したフレームをキーフレームとして抽出する場合、「検索部12が決定したキーフレームの数の下限以上をキーフレームとして指定すること」を、ユーザの指定処理を完了する条件としてもよい。すなわち、ユーザは、検索部12が決定したキーフレームの数の下限以上をキーフレームとして指定しなければ、キーフレームを指定する処理を終了できない。
 その他、第1の実施形態で説明した抽出処理2でキーフレームを抽出する場合、すなわちMフレームおきにキーフレームを抽出する場合、キーフレーム抽出部11は、Mの値を調整することで、抽出されるキーフレームの数を調整できる。キーフレーム抽出部11は、抽出されるキーフレームの数が、検索部12が決定したキーフレームの数の下限以上となるように、Mの値を決定する。
 その他、第1の実施形態で説明した抽出処理3でキーフレームを抽出する場合、すなわち図4に示すように基準のキーフレームとの間の姿勢の類似度が基準値以下であり、かつ時系列順が最も早いフレームを新たなキーフレームとして順次抽出していく場合、キーフレーム抽出部11は、この類似度の基準値を調整することで、抽出されるキーフレームの数を調整できる。キーフレーム抽出部11は、抽出されるキーフレームの数が、検索部12が決定したキーフレームの数の下限以上となるように、上記類似度の基準値を決定する。
 ところで、検索部12は、抽出された複数のキーフレーム各々に対応する複数の対応フレームを有する動画を検索することとなる。抽出したキーフレームで構成される動画の長さが、ユーザが指定した動画長の下限となるように、クエリ動画から抽出するキーフレームの数の下限が決定された場合、必然的に、ユーザが指定した動画長の下限よりも短い動画は検索されなくなる。
-手法2-
 まず、検索部12は、ユーザ入力に基づき、動画長の下限を特定する。動画長の下限が「クエリ動画の長さのX倍」のように指定される場合、検索部12は、クエリ動画の長さと、ユーザが指定したXとの積を、動画長の下限として特定する。その他、動画長の下限を数値等で直接指定される場合、検索部12は、ユーザが指定した数値を、動画長の下限として特定する。
 そして、検索部12は、時間的に最初の対応フレームと最後の対応フレームとの間の経過時間が、特定した動画長の下限以上である動画を、上記動画長の下限の検索条件を満たす動画として検索する。
 本実施形態の検索装置10のその他の構成は、第1乃至第5の実施形態と同様である。
 本実施形態の検索装置10によれば、第1乃至第5の実施形態と同様の作用効果が実現される。また、本実施形態の検索装置10によれば、ユーザが、動画長、すなわちクエリ動画で示される動きを行う時間の下限を指定することができる。このような検索装置100によれば、クエリ動画で示される人体の動きと似た動きをする人体を含むが、その動きの速さが所定レベルより速い動画(動画長が所定レベルより短い動画)は検索されなくなる。結果、ユーザが望む検索が可能となる。
 以上、図面を参照して本発明の実施形態について述べたが、これらは本発明の例示であり、上記以外の様々な構成を採用することもできる。上述した実施形態の構成は、互いに組み合わせたり、一部の構成を他の構成に入れ替えたりしてもよい。また、上述した実施形態の構成は、趣旨を逸脱しない範囲内において種々の変更を加えてもよい。また、上述した各実施形態や変形例に開示される構成や処理を互いに組み合わせてもよい。
 また、上述の説明で用いた複数のフローチャートでは、複数の工程(処理)が順番に記載されているが、各実施の形態で実行される工程の実行順序は、その記載の順番に制限されない。各実施の形態では、図示される工程の順番を内容的に支障のない範囲で変更することができる。また、上述の各実施の形態は、内容が相反しない範囲で組み合わせることができる。
 上記の実施の形態の一部または全部は、以下の付記のようにも記載されうるが、以下に限られない。
1. クエリ動画の中から複数のキーフレームを抽出するキーフレーム抽出手段と、
 複数の前記キーフレーム各々に含まれる人体の姿勢、及び複数の前記キーフレーム間の時間間隔に基づき、前記クエリ動画に類似する動画を検索する検索手段と、
を有する検索装置。
2. 前記検索手段は、
  複数の前記キーフレーム各々に含まれる人体の姿勢との類似度が第1の閾値以上である姿勢の人体を含む複数の対応フレームを含み、かつ、
  複数の前記キーフレーム間の時間間隔と、複数の前記対応フレーム間の時間間隔との類似度が第2の閾値以上である動画を、前記クエリ動画に類似する動画として検索する第1の検索モードを有する1に記載の検索装置。
3. 前記検索手段は、ユーザ入力に基づき、前記第1の閾値及び前記第2の閾値の少なくとも一方を決定する2に記載の検索装置。
4. 前記検索手段は、
  処理対象の動画毎に、
   複数の前記キーフレーム各々に対応する複数の対応フレームを特定し、
   複数の前記キーフレーム各々に含まれる人体の姿勢と複数の前記対応フレーム各々に含まれる人体の姿勢との類似度、及び前記キーフレーム間の時間間隔と前記対応フレーム間の時間間隔との類似度に基づき統合類似度を算出し、
   前記統合類似度が第3の閾値以上である前記処理対象の動画を、前記クエリ動画に類似する動画として検索する第2の検索モードを有す1から3のいずれかに記載の検索装置。
5. 前記キーフレーム間の時間間隔は、時間的に隣接する2つのキーフレーム間の時間間隔、及び時間的に最初と最後のキーフレーム間の時間間隔の少なくとも一方を含む4に記載の検索装置。
6. 前記検索手段は、
  ユーザが指定した人体の姿勢の類似度の重み、及び前記キーフレーム間の時間間隔と前記対応フレーム間の時間間隔との類似度の重みに基づき、前記統合類似度を算出する4又は5に記載の検索装置。
7. 前記キーフレーム抽出手段は、
  ユーザが検索条件として指定した動画長の下限に基づき決定された抽出する前記キーフレームの下限以上の前記キーフレームを抽出する1から6のいずれかに記載の検索装置。
8. 前記キーフレーム抽出手段は、
  抽出した複数の前記キーフレームで構成される動画の長さが、ユーザが指定した動画長の下限以上となるように、抽出する前記キーフレームの数を決定する7に記載の検索装置。
9. コンピュータが、
  クエリ動画の中から複数のキーフレームを抽出するキーフレーム抽出工程と、
  複数の前記キーフレーム各々に含まれる人体の姿勢、及び複数の前記キーフレーム間の時間間隔に基づき、前記クエリ動画に類似する動画を検索する検索工程と、
を実行する検索方法。
10. コンピュータを、
  クエリ動画の中から複数のキーフレームを抽出するキーフレーム抽出手段、
  複数の前記キーフレーム各々に含まれる人体の姿勢、及び複数の前記キーフレーム間の時間間隔に基づき、前記クエリ動画に類似する動画を検索する検索手段、
として機能させるプログラム。
 10  検索装置
 11  キーフレーム抽出部
 12  検索部
 13  骨格構造検出部
 14  特徴量算出部
 1A  プロセッサ
 2A  メモリ
 3A  入出力I/F
 4A  周辺回路
 5A  バス

Claims (10)

  1.  クエリ動画の中から複数のキーフレームを抽出するキーフレーム抽出手段と、
     複数の前記キーフレーム各々に含まれる人体の姿勢、及び複数の前記キーフレーム間の時間間隔に基づき、前記クエリ動画に類似する動画を検索する検索手段と、
    を有する検索装置。
  2.  前記検索手段は、
      複数の前記キーフレーム各々に含まれる人体の姿勢との類似度が第1の閾値以上である姿勢の人体を含む複数の対応フレームを含み、かつ、
      複数の前記キーフレーム間の時間間隔と、複数の前記対応フレーム間の時間間隔との類似度が第2の閾値以上である動画を、前記クエリ動画に類似する動画として検索する第1の検索モードを有する請求項1に記載の検索装置。
  3.  前記検索手段は、ユーザ入力に基づき、前記第1の閾値及び前記第2の閾値の少なくとも一方を決定する請求項2に記載の検索装置。
  4.  前記検索手段は、
      処理対象の動画毎に、
       複数の前記キーフレーム各々に対応する複数の対応フレームを特定し、
       複数の前記キーフレーム各々に含まれる人体の姿勢と複数の前記対応フレーム各々に含まれる人体の姿勢との類似度、及び前記キーフレーム間の時間間隔と前記対応フレーム間の時間間隔との類似度に基づき統合類似度を算出し、
       前記統合類似度が第3の閾値以上である前記処理対象の動画を、前記クエリ動画に類似する動画として検索する第2の検索モードを有す請求項1から3のいずれか1項に記載の検索装置。
  5.  前記キーフレーム間の時間間隔は、時間的に隣接する2つのキーフレーム間の時間間隔、及び時間的に最初と最後のキーフレーム間の時間間隔の少なくとも一方を含む請求項4に記載の検索装置。
  6.  前記検索手段は、
      ユーザが指定した人体の姿勢の類似度の重み、及び前記キーフレーム間の時間間隔と前記対応フレーム間の時間間隔との類似度の重みに基づき、前記統合類似度を算出する請求項4又は5に記載の検索装置。
  7.  前記キーフレーム抽出手段は、
      ユーザが検索条件として指定した動画長の下限に基づき決定された抽出する前記キーフレームの下限以上の前記キーフレームを抽出する請求項1から6のいずれか1項に記載の検索装置。
  8.  前記キーフレーム抽出手段は、
      抽出した複数の前記キーフレームで構成される動画の長さが、ユーザが指定した動画長の下限以上となるように、抽出する前記キーフレームの数を決定する請求項7に記載の検索装置。
  9.  コンピュータが、
      クエリ動画の中から複数のキーフレームを抽出するキーフレーム抽出工程と、
      複数の前記キーフレーム各々に含まれる人体の姿勢、及び複数の前記キーフレーム間の時間間隔に基づき、前記クエリ動画に類似する動画を検索する検索工程と、
    を実行する検索方法。
  10.  コンピュータを、
      クエリ動画の中から複数のキーフレームを抽出するキーフレーム抽出手段、
      複数の前記キーフレーム各々に含まれる人体の姿勢、及び複数の前記キーフレーム間の時間間隔に基づき、前記クエリ動画に類似する動画を検索する検索手段、
    として機能させるプログラム。
PCT/JP2021/042224 2021-11-17 2021-11-17 検索装置、検索方法、およびプログラム WO2023089690A1 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
PCT/JP2021/042224 WO2023089690A1 (ja) 2021-11-17 2021-11-17 検索装置、検索方法、およびプログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2021/042224 WO2023089690A1 (ja) 2021-11-17 2021-11-17 検索装置、検索方法、およびプログラム

Publications (1)

Publication Number Publication Date
WO2023089690A1 true WO2023089690A1 (ja) 2023-05-25

Family

ID=86396400

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2021/042224 WO2023089690A1 (ja) 2021-11-17 2021-11-17 検索装置、検索方法、およびプログラム

Country Status (1)

Country Link
WO (1) WO2023089690A1 (ja)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000339474A (ja) * 1999-05-27 2000-12-08 Nec Corp 動画像類似度算出装置および方法
JP2014522035A (ja) * 2011-07-27 2014-08-28 サムスン エレクトロニクス カンパニー リミテッド オブジェクト姿勢検索装置及び方法
JP2019532422A (ja) * 2016-09-20 2019-11-07 フェイスブック,インク. オンライン・ソーシャル・ネットワーク上での動画のキーフレームの表示
WO2021084677A1 (ja) * 2019-10-31 2021-05-06 日本電気株式会社 画像処理装置、画像処理方法及び画像処理プログラムが格納された非一時的なコンピュータ可読媒体

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000339474A (ja) * 1999-05-27 2000-12-08 Nec Corp 動画像類似度算出装置および方法
JP2014522035A (ja) * 2011-07-27 2014-08-28 サムスン エレクトロニクス カンパニー リミテッド オブジェクト姿勢検索装置及び方法
JP2019532422A (ja) * 2016-09-20 2019-11-07 フェイスブック,インク. オンライン・ソーシャル・ネットワーク上での動画のキーフレームの表示
WO2021084677A1 (ja) * 2019-10-31 2021-05-06 日本電気株式会社 画像処理装置、画像処理方法及び画像処理プログラムが格納された非一時的なコンピュータ可読媒体

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
YOSHIDA, NOBORU ET AL.: "Video retrieval based on the similarity of human poses", IEICE TECHNICAL REPORT, vol. 120, no. 187, 2 October 2020 (2020-10-02), pages 32 - 37, XP009546091 *

Similar Documents

Publication Publication Date Title
Wang et al. Dense trajectories and motion boundary descriptors for action recognition
Jiang et al. Seeing invisible poses: Estimating 3d body pose from egocentric video
Khraief et al. Elderly fall detection based on multi-stream deep convolutional networks
Oreifej et al. Hon4d: Histogram of oriented 4d normals for activity recognition from depth sequences
Abdul-Azim et al. Human action recognition using trajectory-based representation
Ramezani et al. A review on human action analysis in videos for retrieval applications
Xu et al. Two-stream dictionary learning architecture for action recognition
CN106156693B (zh) 用于面部识别的基于多模型表示的鲁棒错误纠正方法
Jiang et al. Online robust action recognition based on a hierarchical model
JP7416252B2 (ja) 画像処理装置、画像処理方法、及びプログラム
Kumar et al. 3D sign language recognition using spatio temporal graph kernels
Mottaghi et al. Action recognition in freestyle wrestling using silhouette-skeleton features
KR101642200B1 (ko) 객체의 움직임 분석을 이용한 모션 효과 생성 장치 및 방법
Singh et al. Recent trends in human activity recognition–A comparative study
Ahmed et al. Joint-triplet motion image and local binary pattern for 3d action recognition using kinect
JP7409499B2 (ja) 画像処理装置、画像処理方法、及びプログラム
KR101758693B1 (ko) 물체-행동 관계 모델에 기반한 행동 인식 방법 및 그 장치
WO2023089690A1 (ja) 検索装置、検索方法、およびプログラム
El Madany et al. Integrating entropy skeleton motion maps and convolutional neural networks for human action recognition
JP7435781B2 (ja) 画像選択装置、画像選択方法、及びプログラム
WO2023089691A1 (ja) 行動分類装置、行動分類方法、およびプログラム
JP2023176244A (ja) 画像処理システム、装置、処理方法、およびプログラム
Ding et al. Combining adaptive hierarchical depth motion maps with skeletal joints for human action recognition
WO2023084778A1 (ja) 画像処理装置、画像処理方法、およびプログラム
WO2023084780A1 (ja) 画像処理装置、画像処理方法、およびプログラム

Legal Events

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

Ref document number: 21964706

Country of ref document: EP

Kind code of ref document: A1