EP3862914A1 - Video action recognition method, apparatus, and device, and storage medium - Google Patents

Video action recognition method, apparatus, and device, and storage medium Download PDF

Info

Publication number
EP3862914A1
EP3862914A1 EP19862600.4A EP19862600A EP3862914A1 EP 3862914 A1 EP3862914 A1 EP 3862914A1 EP 19862600 A EP19862600 A EP 19862600A EP 3862914 A1 EP3862914 A1 EP 3862914A1
Authority
EP
European Patent Office
Prior art keywords
action
video frame
current video
positioning information
category
Prior art date
Legal status (The legal status 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 status listed.)
Granted
Application number
EP19862600.4A
Other languages
German (de)
French (fr)
Other versions
EP3862914B1 (en
EP3862914A4 (en
Inventor
Li Song
Feng Shi
Fan Wang
Shan Lu
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Bigo Technology Pte Ltd
Original Assignee
Bigo Technology Pte Ltd
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 Bigo Technology Pte Ltd filed Critical Bigo Technology Pte Ltd
Publication of EP3862914A1 publication Critical patent/EP3862914A1/en
Publication of EP3862914A4 publication Critical patent/EP3862914A4/en
Application granted granted Critical
Publication of EP3862914B1 publication Critical patent/EP3862914B1/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/82Arrangements for image or video recognition or understanding using pattern recognition or machine learning using neural networks
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/20Analysis of motion
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/70Determining position or orientation of objects or cameras
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/764Arrangements for image or video recognition or understanding using pattern recognition or machine learning using classification, e.g. of video objects
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/40Scenes; Scene-specific elements in video content
    • G06V20/41Higher-level, semantic clustering, classification or understanding of video scenes, e.g. detection, labelling or Markovian modelling of sport events or news items
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/40Scenes; Scene-specific elements in video content
    • G06V20/41Higher-level, semantic clustering, classification or understanding of video scenes, e.g. detection, labelling or Markovian modelling of sport events or news items
    • G06V20/42Higher-level, semantic clustering, classification or understanding of video scenes, e.g. detection, labelling or Markovian modelling of sport events or news items of sport video content
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/40Scenes; Scene-specific elements in video content
    • G06V20/46Extracting features or characteristics from the video content, e.g. video fingerprints, representative shots or key frames
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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/28Recognition of hand or arm movements, e.g. recognition of deaf sign language
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/10Image acquisition modality
    • G06T2207/10016Video; Image sequence
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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/30241Trajectory

Definitions

  • Embodiments of the present disclosure relate to the technical field of action recognition, for example, to a method and apparatus for recognizing a video action, and a device and storage medium thereof.
  • Video gesture recognition is usually applied in application scenarios that require strong interaction.
  • the gesture recognition is subject to uncontrollable factors such as complex background, blurred motion, and non-standard actions.
  • Gesture recognition processing performed on an image in a video in the related art cannot ensure the stability and smoothness of the gesture recognition result.
  • Embodiments of the present disclosure provide a method and apparatus for recognizing a video action, and a device and a storage medium thereof, which can improve the stability and smoothness of the action recognition result.
  • the embodiments of the present disclosure provide a method for recognizing a video action.
  • the method includes: determining an action category and action positioning information of a current video frame based on the current video frame and at least one forward video frame; and determining action content of a video based on the action category and the action positioning information of the video frame.
  • the embodiments of the present disclosure further provide an apparatus for recognizing a video action.
  • the apparatus includes: an action category and action positioning information determining module, configured to determine an action category and action positioning information of a current video frame based on the current video frame and at least one forward video frame; and an action content determining module, configured to determine action content of a video based on the action category and the action positioning information of the video frame.
  • the embodiments of the present disclosure further provide a computer device.
  • the computer device includes a memory, a processor, and a computer program stored on the memory and running on the processor, wherein the processor, when running the computer program, is caused to perform the method for recognizing a video action as described in the embodiments of the present disclosure.
  • an embodiment of the present disclosure also provides a computer-readable storage medium storing a computer program therein, wherein the computer program, when run by a processor, causes the processor to perform the method for recognizing a video action as described in the embodiments of the present disclosure.
  • FIG. 1 is a flowchart of a method for recognizing a video action according to an embodiment of the present disclosure. This embodiment is applicable to recognizing a user's action in a live video.
  • the method may be executed by an apparatus for recognizing a video action, which may be composed of at least one of hardware and software, and may generally be integrated in a device with a video action recognition function.
  • the device may be an electronic device such as a server, a mobile terminal, or a server cluster. As shown in FIG. 1 , the method includes 110 to 120.
  • an action category and action positioning information of a current video frame are determined based on the current video frame and at least one forward video frame.
  • the forward video frame may be a video frame before the corresponding time of the current video frame.
  • the video may be a live video or an on-demand video.
  • the action may include a user's gesture, body posture, etc., which is a gesture in an embodiment.
  • the action category may be an aspect of the gesture
  • the action positioning information may be a movement trajectory of the gesture.
  • the aspect of the gesture may include: a thumb-up gesture, an "OK" gesture, a gesture of making a heart shape with two hands, a gesture of making a heart shape with one hand, a gesture of making a pistol shape, a "Yeah” gesture, and a hand-holding gesture.
  • determining the action category and the action positioning information of the current video frame based on the current video frame and the at least one forward video frame may include: simultaneously inputting the current video frame and the at least one forward video frame into an action recognition model, and acquiring the action category and action positioning information of the current video frame by analyzing the current video frame and at least one forward video frame; or, acquiring the action category and action positioning information corresponding to each video frame by inputting the current video frame and the at least one forward video frame into the action recognition model respectively, and finally acquiring a target action category and target action positioning information of the current video frame by correcting the action category and action positioning information of the current video frame with the action category and action positioning information of the at least one forward video frame.
  • an action content of a video is determined based on the action category and action positioning information of the current video frame.
  • the action content may be the information to be conveyed by the action.
  • the action content may include: thumb-up, "OK,” making a heart shape with two hands, making a heart shape with one hand, making a pistol shape, "Yeah "and hand-holding or the like.
  • the action content in the video may be determined.
  • predefined special effects may be triggered at an action positioning point in combination with the action category.
  • the technical solution according to this embodiment is to determine an action category and action positioning information of a current video frame based on the current video frame and at least one forward video frame, and finally determine action content of a video based on the action category and action positioning information of the current video frame.
  • the method for recognizing a video action determines an action category and action positioning information of a current video frame based on the current video frame and at least one forward video frame, which can improve the stability of action category recognition and the smoothness of action positioning information recognition.
  • FIG. 2 is a flowchart of a method for recognizing a video action according to an embodiment of the present disclosure.
  • determining the action category and the action positioning information of the current video frame based on the current video frame and the at least one forward video frame may be implemented by 210 to 230.
  • a current video frame is acquired and an action recognition result of the current video frame is determined.
  • the action recognition result includes an action category and action positioning information.
  • the action positioning information may be action block positioning information, including a width of an action block, a height of the action block, and center coordinates of the action block.
  • the action category and action positioning information of the current video frame may be acquired by inputting the current video frame into an action recognition model.
  • determining the action category of the current video frame may include: acquiring a confidence of at least one defined action category by inputting the current video frame into an action recognition model, and selecting a defined action category with a highest confidence as the action category of the current video frame.
  • the action recognition model may be trained using a convolutional neural network, and has the function of recognizing action categories and action positioning information in video frames.
  • the defined action category may be a category predefined in the system. Assuming that the action is a gesture, the defined action category may include thumb-up, "OK", making a heart shape with two hands, making a heart shape with one hand, making a pistol shape, "Yeah” and hand-holding or the like.
  • a confidence of a defined action category corresponding to the current video frame is acquired, and a defined action category with the highest confidence is taken as the action category of the current video frame.
  • the action category of the current video frame is "making a pistol shape”.
  • determining the action positioning information of the current video frame may include: inputting the current video frame into an action recognition model, and outputting a width of an action block, a height of the action block, and center coordinates of the action block.
  • a target action category of the current video frame is acquired by correcting the action category of the current video frame based on an action category of the at least one forward video frame.
  • acquiring the target action category of the current video frame by correcting the action category of the current video frame based on the action category of the at least one forward video frame may include: summing the confidences of each of the at least one defined action category in the at least one forward video frame and the current video frame; acquiring a defined action category with a highest sum of the confidences; among the action categories of the at least one forward video frame and the current video frame, if the number of action categories the same as the defined action category with the highest sum of the confidences exceeds a defined number, determining the defined action category with the highest sum of the confidences as the target action category; and among the action categories of the at least one forward video frame and the current video frame, if the number of action categories the same as the defined action category with the highest sum of the confidences does not exceed the defined number, determining the action category of the current video frame as the target action category.
  • the defined number may be determined based on the number of forward video frames.
  • the defined number may be any value between 50% and 80% of the number of forward video frames.
  • target action positioning information of the current video frame is acquired by correcting the action positioning information of the current video frame based on action positioning information of a previous video frame of the current video frame.
  • the action positioning information of the current video frame is corrected based on action positioning information of a previous frame of the current video frame.
  • the method for recognizing a video action further includes the following processes: determining whether an absolute value of a difference between the positioning information of the target action block and the positioning information of the action block of the previous video frame is less than a predefined threshold; and updating the positioning information of the target action block to the positioning information of the action block of the previous video frame based on a determination result that the absolute value of the difference between the positioning information of the target action block and the positioning information of the action block of the previous video frame is less than the predefined threshold.
  • the predefined threshold may be defined to any value between 1 to 10 pixels. In an embodiment, it is defined to 3 or 4 pixels.
  • the width of the target action block is updated to the width of the action block of the previous video frame.
  • the height of the target action block is updated to the height of the action block of the previous video frame.
  • the abscissa of the center coordinates of the target action block is updated to the abscissa of the center coordinates of the action block of the previous video frame.
  • the ordinate of the center coordinates of the target action block is updated to the ordinate of the center coordinates of the action block of the previous video frame.
  • the action category of the current video frame is corrected based on an action category of the at least one forward video frame
  • the action positioning information of the current video frame is corrected based on action positioning information of a previous frame of the current video frame, which can stability and smoothness for video action recognition.
  • FIG. 3 is a flowchart of a method for recognizing a video action according to an embodiment of the present disclosure.
  • acquiring the current video frame and determining the action recognition result of the current video frame may be implemented by 310 to 330.
  • the predefined key frame may be determined as a key frame every defined number of video frames defined according to actual needs, for example, every 10 frames of video frames are determined as a key frame.
  • initial action positioning information of the current video frame is acquired by inputting the current video frame into a first action recognition sub-model based on a determination result that the current video frame is a predefined key frame, a first image region to be recognized of the current video frame is determined based on the initial action positioning information, and the action recognition result of the current video frame is acquired by inputting the first image region to be recognized a second action recognition sub-model.
  • the first action recognition sub-model and the second action recognition sub-model are trained using different convolutional neural networks.
  • the first action recognition sub-model may be acquired using dense convolutional network (DenseNet) or ResNet.
  • the second action recognition sub-model may be acquired using MobileNet-v2.
  • initial action positioning information is acquired by inputting the current video frame into a first action recognition sub-model based on a determination result that the current video frame is a predefined key frame.
  • a first image region to be recognized is acquired in response to expanding a defined region or defined pixel points based on a region encircled by the initial action block, and finally the action recognition result of the current video frame is acquired by inputting the first image region to be recognized into a second action recognition sub-model.
  • a second image region to be recognized of the current video frame is determined based on action block positioning information of the previous video frame, and the action recognition result of the current video frame is acquired by inputting the second image region to be recognized into the second action recognition sub-model.
  • a second image region to be recognized is acquired by expanding a defined region or defined pixel points based on a region encircled by the action block of the previous video frame, and finally the action recognition result of the current video frame is acquired by inputting the second image region to be recognized into the second action recognition sub-model.
  • the action recognition result is acquired by sequentially inputting a predefined key frame into the first action recognition sub-model and the second action recognition sub-model, and the action recognition result is acquired by inputting a non-predefined key frame into the second action recognition sub-model, which can increase the speed of image recognition while ensuring recognition accuracy.
  • FIGS. 4a-4d are diagrams of the recognition effect of the "thumb-up" gesture according to an embodiment of the present disclosure.
  • "2" indicates that the gesture category of the video frame is "thumb-up.”
  • a gesture category of the video frame may be determined as "2," that is, thumb-up, and gesture positioning information, including a width of a gesture frame, a height of the gesture frame, and center coordinates of the gesture frame.
  • FIGS. 5a-5c are diagrams of the recognition effect of the "making a heart shape with two hands” gesture according to an embodiment of the present disclosure.
  • "5" indicates that the gesture category of the video frame is "making a heart shape with two hands.”
  • a gesture category of the video frame may be acquired as "5,” that is, making a heart shape with two hands, and gesture positioning information, including a width of a gesture frame, a height of the gesture frame and center coordinates of the gesture frame .
  • FIG. 6 is a schematic structural diagram of an apparatus for recognizing a video action according to an embodiment of the present disclosure. As shown in FIG. 6 , the apparatus includes: an action category and action positioning information determining module 610 and an action content determining module 620.
  • the action category and action positioning information determining module 610 is configured to determine an action category and action positioning information of a current video frame based on the current video frame and at least one forward video frame.
  • the action content determining module 620 is configured to determine action content of a video based on the action category and the action positioning information of the current video frame.
  • the action category and action positioning information determining module 610 is configured to:
  • the action category and action positioning information determining module 610 is configured to:
  • the action category and action positioning information determining module 610 is configured to:
  • the action positioning information includes a width of an action block, a height of the action block, and center coordinates of the action block.
  • the action category and action positioning information determining module 610 is configured to:
  • the action category and action positioning information determining module 610 is configured to:
  • the action category and action positioning information determining module 610 is configured to:
  • the action is a user's gesture
  • the action category is an aspect of the gesture
  • the action positioning information is a movement trajectory of the gesture.
  • FIG. 7 is a schematic structural diagram of a computer device according to an embodiment of the present disclosure.
  • FIG. 7 shows a block diagram of a computer device 712 applicable to implementing the embodiments of the present disclosure.
  • the computer device 712 shown in FIG. 7 is only an example, and should not bring any limitation to the function and scope of use of the embodiments of the present disclosure.
  • the device 712 is typically a computing device that is responsible for recognizing video actions.
  • the computer device 712 is embodied in the form of a general-purpose computing device.
  • Components of the computer device 712 may include, but are not limited to: at least one processor 716, a storage device 728, and a bus 718 connecting different system components (including the storage device 728 and the processor 716).
  • the bus 718 represents one or more of several types of bus structures, including a memory bus or a memory controller, a peripheral bus, a graphics acceleration port, a processor, or a local bus using any of the various bus structures.
  • these architectures include but are not limited to industry standard architecture (ISA) bus, micro channel architecture (MCA) bus, enhanced ISA bus, Video Electronics Standards Association (VVESA) local bus and peripheral component interconnect (PCI) bus.
  • ISA industry standard architecture
  • MCA micro channel architecture
  • VVESA Video Electronics Standards Association
  • PCI peripheral component interconnect
  • the computer device 712 typically includes a variety of computer system readable mediums.
  • the mediums may be any available mediums that may be accessed by the computer device 712, including volatile and non-volatile mediums, and removable and non-removable mediums.
  • the storage device 728 may include a computer system readable medium in the form of a volatile memory, such as at least one of a random-access memory (RAM) 730 and a cache memory 732.
  • the computer device 712 may further include other removable/non-removable, volatile/nonvolatile computer system storage medium.
  • the storage system 734 may be used to read and write non-removable, non-volatile magnetic medium (not shown in FIG. 7 , and generally referred to as a "hard drive").
  • each drive may be connected to the bus 718 via at least one data medium interface.
  • the storage device 728 may include at least one program product.
  • the program product has a defined of (for example, at least one) program modules that are configured to perform the functions of the embodiments of the present disclosure.
  • a program 736 having a defined of (at least one) program module 726 may be stored in, for example, the storage device 728.
  • Such program modules 726 include but are not limited to an operating system, at least one application, other program modules, and program data. Each of these examples or some combination may include an implementation of a network environment.
  • the program module 726 generally executes the functions and/or methods in the embodiments of the present disclosure.
  • the computer device 712 may also communicate with at least one external device 714 (such as a keyboard, a pointing device, a camera, or a display 724), and may also communicate with at least one device that enables a user to interact with the computer device 712, and/or communicate with any device (such as a network card or a modem) that enables the computer device 712 to communicate with at least one other computing device. This communication may be performed via an input/output (I/O) interface 722.
  • the computer device 712 may also communicate with at least one network, for example, a local region network (LAN), a wide region network, WAN) and/or a public network, such as the Internet, via a network adapter 720.
  • LAN local region network
  • WAN wide region network
  • public network such as the Internet
  • the network adapter 720 communicates with other modules of the computer device 712 via the bus 718. It should be understood that although not shown in the figure, other hardware and/or software modules may be used in conjunction with the computer device 712, including but not limited to: microcode, device drivers, redundant processing units, external disk drive arrays, and redundant arrays of independent disks (RAID) systems, tape drives, and data backup storage systems.
  • RAID redundant arrays of independent disks
  • the processor 716 executes various functional applications and data processing by running the programs stored in the storage device 728, such as implementing the method for recognizing a video action according to the foregoing embodiments of the present disclosure.
  • a sixth embodiment of the present disclosure also provides a computer-readable storage medium having a computer program stored thereon.
  • the program when executed by a processor, performs the method for recognizing a video action according to the embodiments of the present disclosure.
  • An embodiment of the present disclosure also provides a computer-readable storage medium having a computer program stored therein.
  • the computer program is not limited to the method operations described above, and can also perform related operations in the method for recognizing a video action according to any embodiment of the present disclosure.
  • the computer storage medium may adopt any combination of at least one computer-readable medium.
  • the computer-readable medium may be a computer-readable signal medium or a computer-readable storage medium.
  • the computer-readable storage medium may be, for example, but is not limited to, an electrical, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, or device, or any combination thereof. More specific examples (non-exhaustive list) of the computer-readable storage medium include: an electrical connection with at least one wire, a portable computer disk, a hard disk, a RAM, a ROM, an erasable programmable read-only memory (EPROM or flash memory), an optical fiber, a portable CD-ROM, an optical storage device, a magnetic storage device, or any suitable combination thereof.
  • the computer-readable storage medium may be any tangible medium that contains or stores a program. The program may be used by or in combination with an instruction execution system, apparatus, or device.
  • the computer-readable signal medium may include a data signal propagated in baseband or as a part of a carrier wave, and computer-readable program code is carried therein. This propagated data signal may take many forms, including but not limited to electromagnetic signals, optical signals, or any suitable combination thereof.
  • the computer-readable signal medium may also be any computer-readable medium other than the computer-readable storage medium.
  • the computer-readable medium may send, propagate, or transmit the program for use by or in combination with the instruction execution system, apparatus, or device.
  • the program code contained on the computer-readable medium may be transmitted by any suitable medium, including but not limited to wireless, wire, optical cable, RF, etc., or any suitable combination thereof.
  • the computer program code used to perform the operations of the present disclosure may be written in one or more programming languages or a combination thereof.
  • the programming languages include object-oriented programming languages such as Java, Smalltalk, C++, and also include conventional procedural programming languages such as "C" language or similar programming languages.
  • the program code may be executed entirely on a user's computer, partly on the user's computer, executed as an independent software package, partly on the user's computer and partly executed on a remote computer, or entirely executed on the remote computer or server.
  • the remote computer may be connected to the user's computer over any network including a local region network (LAN) or a wide region network (WAN), or may be connected to an external computer (for example, using an Internet service provider to connect over the Internet).
  • LAN local region network
  • WAN wide region network
  • Internet service provider for example, using an Internet service provider to connect over the Internet.

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Multimedia (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • General Health & Medical Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Software Systems (AREA)
  • Evolutionary Computation (AREA)
  • Psychiatry (AREA)
  • Artificial Intelligence (AREA)
  • Computing Systems (AREA)
  • Databases & Information Systems (AREA)
  • Human Computer Interaction (AREA)
  • Medical Informatics (AREA)
  • Social Psychology (AREA)
  • Computational Linguistics (AREA)
  • Image Analysis (AREA)

Abstract

Disclosed in the embodiments of the present application are a video action recognition method, apparatus, and device, and a storage medium. The method comprises: on the basis of a current video frame and at least one preceding video frame, determining an action type and action positioning information of the current video frame; and, on the basis of the action type and the action positioning information of the video frame, determining the action content of the video.

Description

  • This application claims priority to Chinese Patent Application No. 201811107097.0 , filed with the China National Intellectual Property Administration on September 21, 2018, which is incorporated herein by reference in its entirety.
  • TECHNICAL FIELD
  • Embodiments of the present disclosure relate to the technical field of action recognition, for example, to a method and apparatus for recognizing a video action, and a device and storage medium thereof.
  • BACKGROUND
  • With the rapid development of related arts such as computer vision and machine learning, human-computer interaction technology has been receiving more and more attention. In human-computer interaction, it is necessary to recognize a user's body information such as face recognition, gesture recognition, and body posture recognition. The gesture recognition may be used as an intuitive communication method and has important research significance.
  • Video gesture recognition is usually applied in application scenarios that require strong interaction. When continuously positioning and recognizing user gestures, the gesture recognition is subject to uncontrollable factors such as complex background, blurred motion, and non-standard actions.
  • Gesture recognition processing performed on an image in a video in the related art cannot ensure the stability and smoothness of the gesture recognition result.
  • SUMMARY
  • Embodiments of the present disclosure provide a method and apparatus for recognizing a video action, and a device and a storage medium thereof, which can improve the stability and smoothness of the action recognition result.
  • In a first aspect, the embodiments of the present disclosure provide a method for recognizing a video action. The method includes: determining an action category and action positioning information of a current video frame based on the current video frame and at least one forward video frame; and determining action content of a video based on the action category and the action positioning information of the video frame.
  • In a second aspect, the embodiments of the present disclosure further provide an apparatus for recognizing a video action. The apparatus includes: an action category and action positioning information determining module, configured to determine an action category and action positioning information of a current video frame based on the current video frame and at least one forward video frame; and an action content determining module, configured to determine action content of a video based on the action category and the action positioning information of the video frame.
  • In a third aspect, the embodiments of the present disclosure further provide a computer device. The computer device includes a memory, a processor, and a computer program stored on the memory and running on the processor, wherein the processor, when running the computer program, is caused to perform the method for recognizing a video action as described in the embodiments of the present disclosure.
  • In a fourth aspect, an embodiment of the present disclosure also provides a computer-readable storage medium storing a computer program therein, wherein the computer program, when run by a processor, causes the processor to perform the method for recognizing a video action as described in the embodiments of the present disclosure.
  • BRIEF DESCRIPTION OF THE DRAWINGS
    • FIG. 1 is a flowchart of a method for recognizing a video action according to an embodiment of the present disclosure;
    • FIG. 2 is a flowchart of a method for recognizing a video action according to an embodiment of the present disclosure;
    • FIG. 3 is a flowchart of a method for recognizing a video action according to an embodiment of the present disclosure;
    • FIG. 4a is a diagram of the recognition effect of a "thumb-up" gesture according to an embodiment of the present disclosure;
    • FIG. 4b is a diagram of the recognition effect of a "thumb-up " gesture according to an embodiment of the present disclosure;
    • FIG. 4c is a diagram of the recognition effect of a "thumb-up " gesture according to an embodiment of the present disclosure;
    • FIG. 4d is a diagram of the recognition effect of a "thumb-up " gesture according to an embodiment of the present disclosure;
    • FIG. 5a is a diagram of the recognition effect of the gesture of "making a heart shape with two hands" according to an embodiment of the present disclosure;
    • FIG. 5b is a diagram of the recognition effect of the gesture of "making a heart shape with two hands" according to an embodiment of the present disclosure;
    • FIG. 5c is a diagram of the recognition effect of the gesture of "making a heart shape with two hands" according to an embodiment of the present disclosure;
    • FIG. 6 is a schematic structural diagram of an apparatus for recognizing a video action according to an embodiment of the present disclosure; and
    • FIG. 7 is a schematic structural diagram of a computer device according to an embodiment of the present disclosure.
    DETAILED DESCRIPTION
  • FIG. 1 is a flowchart of a method for recognizing a video action according to an embodiment of the present disclosure. This embodiment is applicable to recognizing a user's action in a live video. The method may be executed by an apparatus for recognizing a video action, which may be composed of at least one of hardware and software, and may generally be integrated in a device with a video action recognition function. The device may be an electronic device such as a server, a mobile terminal, or a server cluster. As shown in FIG. 1, the method includes 110 to 120.
  • In 110, an action category and action positioning information of a current video frame are determined based on the current video frame and at least one forward video frame.
  • The forward video frame may be a video frame before the corresponding time of the current video frame. The video may be a live video or an on-demand video. The action may include a user's gesture, body posture, etc., which is a gesture in an embodiment. When the action is a gesture, the action category may be an aspect of the gesture, and the action positioning information may be a movement trajectory of the gesture. For example, the aspect of the gesture may include: a thumb-up gesture, an "OK" gesture, a gesture of making a heart shape with two hands, a gesture of making a heart shape with one hand, a gesture of making a pistol shape, a "Yeah" gesture, and a hand-holding gesture.
  • In this embodiment, determining the action category and the action positioning information of the current video frame based on the current video frame and the at least one forward video frame may include: simultaneously inputting the current video frame and the at least one forward video frame into an action recognition model, and acquiring the action category and action positioning information of the current video frame by analyzing the current video frame and at least one forward video frame; or, acquiring the action category and action positioning information corresponding to each video frame by inputting the current video frame and the at least one forward video frame into the action recognition model respectively, and finally acquiring a target action category and target action positioning information of the current video frame by correcting the action category and action positioning information of the current video frame with the action category and action positioning information of the at least one forward video frame.
  • In 120, an action content of a video is determined based on the action category and action positioning information of the current video frame.
  • The action content may be the information to be conveyed by the action. In an exemplary embodiment, taking gestures as an example, the action content may include: thumb-up, "OK," making a heart shape with two hands, making a heart shape with one hand, making a pistol shape, "Yeah "and hand-holding or the like.
  • Upon acquisition of the action category and action positioning information of the current video frame in the video, the action content in the video may be determined. In an embodiment, in this application scenario, upon acquisition the action category and action positioning information of the current video frame, predefined special effects may be triggered at an action positioning point in combination with the action category.
  • The technical solution according to this embodiment is to determine an action category and action positioning information of a current video frame based on the current video frame and at least one forward video frame, and finally determine action content of a video based on the action category and action positioning information of the current video frame. The method for recognizing a video action according to the embodiment of the present disclosure determines an action category and action positioning information of a current video frame based on the current video frame and at least one forward video frame, which can improve the stability of action category recognition and the smoothness of action positioning information recognition.
  • FIG. 2 is a flowchart of a method for recognizing a video action according to an embodiment of the present disclosure. As an explanation of the foregoing embodiment, as shown in FIG. 2, determining the action category and the action positioning information of the current video frame based on the current video frame and the at least one forward video frame may be implemented by 210 to 230.
  • In 210, a current video frame is acquired and an action recognition result of the current video frame is determined.
  • The action recognition result includes an action category and action positioning information. The action positioning information may be action block positioning information, including a width of an action block, a height of the action block, and center coordinates of the action block.
  • In this embodiment, the action category and action positioning information of the current video frame may be acquired by inputting the current video frame into an action recognition model. In an embodiment, determining the action category of the current video frame may include: acquiring a confidence of at least one defined action category by inputting the current video frame into an action recognition model, and selecting a defined action category with a highest confidence as the action category of the current video frame.
  • The action recognition model may be trained using a convolutional neural network, and has the function of recognizing action categories and action positioning information in video frames. The defined action category may be a category predefined in the system. Assuming that the action is a gesture, the defined action category may include thumb-up, "OK", making a heart shape with two hands, making a heart shape with one hand, making a pistol shape, "Yeah" and hand-holding or the like. In response to inputting the current video frame into an action recognition model, a confidence of a defined action category corresponding to the current video frame is acquired, and a defined action category with the highest confidence is taken as the action category of the current video frame. In an exemplary embodiment, assuming that the confidence of the defined action category corresponding to the current video frame is: thumb-up is 0.1, "OK" is 0.25, making a heart shape with two hands is 0.3, making a heart shape with one hand is 0.3, making a pistol shape is 0.8, "Yeah " is 0.4 and hand-holding is 0.2, then the action category of the current video frame is "making a pistol shape".
  • In an embodiment, determining the action positioning information of the current video frame may include: inputting the current video frame into an action recognition model, and outputting a width of an action block, a height of the action block, and center coordinates of the action block.
  • In 220, a target action category of the current video frame is acquired by correcting the action category of the current video frame based on an action category of the at least one forward video frame.
  • In an embodiment, acquiring the target action category of the current video frame by correcting the action category of the current video frame based on the action category of the at least one forward video frame may include: summing the confidences of each of the at least one defined action category in the at least one forward video frame and the current video frame; acquiring a defined action category with a highest sum of the confidences; among the action categories of the at least one forward video frame and the current video frame, if the number of action categories the same as the defined action category with the highest sum of the confidences exceeds a defined number, determining the defined action category with the highest sum of the confidences as the target action category; and among the action categories of the at least one forward video frame and the current video frame, if the number of action categories the same as the defined action category with the highest sum of the confidences does not exceed the defined number, determining the action category of the current video frame as the target action category.
  • The defined number may be determined based on the number of forward video frames. For example, the defined number may be any value between 50% and 80% of the number of forward video frames. In an embodiment, a defined action category with the highest sum of the confidences may be calculated according to the following formula n = argmax c f = i k + 1 i argmax prob f 1 argmax prob f = c ,
    Figure imgb0001
    for c=1,···,N(i>k+1), where n represents the defined action category with the highest sum of the confidences, probf represents a defined action category confidence vector of the f-th video frame, N represents the number of defined action categories, c represents the number corresponding to the defined action category, the number of forward video frames is k-1, and 1argmax(probf)=c means that when probf takes c, the value is 1, and when probf takes other values, the value is 0. After the defined action category with the highest sum of the confidences is determined as n, the target action category may be determined according to the following formula: C = { n , f = i k + 1 i 1 argmax prob f = n j c i , others ,
    Figure imgb0002
    where C represents the target action category, j represents the defined number, and ci represents the action category of the current video frame.
  • In 230, target action positioning information of the current video frame is acquired by correcting the action positioning information of the current video frame based on action positioning information of a previous video frame of the current video frame.
  • In this application scenario, the action positioning information of the current video frame is corrected based on action positioning information of a previous frame of the current video frame. In an embodiment, acquiring the target action positioning information of the current video frame by correcting the action positioning information of the current video frame based on the action positioning information of the previous video frame may include: acquiring a gain factor for the width or the height of the action block; and calculating a width or a height of a target action block according to the following formula based on the gain factor: x=x2+k(x1-x2); where x represents the width or the height of the target action block, k represents the gain factor, x1 represents a width or a height of an action block of the current video frame, and x2 represents a width of an action block of the previous video frame or a height of an action block of the forward video frame; and calculating center coordinates of the target action block according to the following formula based on the gain matrix: Y=Y2+K(Y1-HY2); where Y represents the center coordinates of the target action block, Y2 represents is center coordinates of the action block of the previous video frame, K represents the gain matrix, H represents a unitary matrix, and Y1 represents the center coordinates of the action block of the current video frame.
  • The gain factor may be calculated according to the following formula: k=p_/(p_+r), where p_=p+q, p represents a posterior error, p-represents a prior error, q represents a process deviation, and r represents a measurement deviation. The process deviation and measurement deviation may be acquired upon experimentation, and the posterior error may be acquired iteratively according to the following formula: p=(1-k)p_.
  • The gain matrix may be calculated according to the following formula: K=P_HT∗S-1, where P=AerrAT+Q, S=HPHT+R, A represents a motion matrix, Q represents a process variance matrix, R represents a measurement variance matrix, err represents a center point error matrix, and H represents a unitary matrix. The center point error matrix may be acquired iteratively according to the following formula: err=(1-KH)P.
  • In an embodiment, the method for recognizing a video action further includes the following processes: determining whether an absolute value of a difference between the positioning information of the target action block and the positioning information of the action block of the previous video frame is less than a predefined threshold; and updating the positioning information of the target action block to the positioning information of the action block of the previous video frame based on a determination result that the absolute value of the difference between the positioning information of the target action block and the positioning information of the action block of the previous video frame is less than the predefined threshold.
  • The predefined threshold may be defined to any value between 1 to 10 pixels. In an embodiment, it is defined to 3 or 4 pixels.
  • In this embodiment, when the absolute value of the difference between the width of the target action block and the width of the action block of the previous video frame is less than the predefined threshold, the width of the target action block is updated to the width of the action block of the previous video frame. When the absolute value of the difference between the height of the target action block and the height of the action block of the previous video frame is less than the predefined threshold, the height of the target action block is updated to the height of the action block of the previous video frame. When the absolute value of the difference between the abscissa of the center coordinates of the target action block and the abscissa of the center coordinates of the action block of the previous frame is less than the predefined threshold, the abscissa of the center coordinates of the target action block is updated to the abscissa of the center coordinates of the action block of the previous video frame. When the absolute value of the difference between the ordinate of the center coordinates of the target action block and the ordinate of the center coordinates of the action block of the previous video frame is less than the predefined threshold, the ordinate of the center coordinates of the target action block is updated to the ordinate of the center coordinates of the action block of the previous video frame.
  • In the technical solution according to this embodiment, the action category of the current video frame is corrected based on an action category of the at least one forward video frame, and the action positioning information of the current video frame is corrected based on action positioning information of a previous frame of the current video frame, which can stability and smoothness for video action recognition.
  • FIG. 3 is a flowchart of a method for recognizing a video action according to an embodiment of the present disclosure. As an explanation of the foregoing embodiment, as shown in FIG. 3, acquiring the current video frame and determining the action recognition result of the current video frame may be implemented by 310 to 330.
  • In 310, whether the current video frame is a predefined key frame is determined.
  • The predefined key frame may be determined as a key frame every defined number of video frames defined according to actual needs, for example, every 10 frames of video frames are determined as a key frame.
  • In 320, initial action positioning information of the current video frame is acquired by inputting the current video frame into a first action recognition sub-model based on a determination result that the current video frame is a predefined key frame, a first image region to be recognized of the current video frame is determined based on the initial action positioning information, and the action recognition result of the current video frame is acquired by inputting the first image region to be recognized a second action recognition sub-model.
  • The first action recognition sub-model and the second action recognition sub-model are trained using different convolutional neural networks. The first action recognition sub-model may be acquired using dense convolutional network (DenseNet) or ResNet. The second action recognition sub-model may be acquired using MobileNet-v2.
  • In an embodiment, initial action positioning information is acquired by inputting the current video frame into a first action recognition sub-model based on a determination result that the current video frame is a predefined key frame. Upon acquisition of the initial action positioning information, a first image region to be recognized is acquired in response to expanding a defined region or defined pixel points based on a region encircled by the initial action block, and finally the action recognition result of the current video frame is acquired by inputting the first image region to be recognized into a second action recognition sub-model.
  • In 330, based on a determination result that the current video frame is not a predefined key frame, a second image region to be recognized of the current video frame is determined based on action block positioning information of the previous video frame, and the action recognition result of the current video frame is acquired by inputting the second image region to be recognized into the second action recognition sub-model.
  • In an embodiment, based on a determination result that the current video frame is not a predefined key frame, a second image region to be recognized is acquired by expanding a defined region or defined pixel points based on a region encircled by the action block of the previous video frame, and finally the action recognition result of the current video frame is acquired by inputting the second image region to be recognized into the second action recognition sub-model.
  • In the technical solution according to this embodiment, the action recognition result is acquired by sequentially inputting a predefined key frame into the first action recognition sub-model and the second action recognition sub-model, and the action recognition result is acquired by inputting a non-predefined key frame into the second action recognition sub-model, which can increase the speed of image recognition while ensuring recognition accuracy.
  • In an exemplary embodiment, FIGS. 4a-4d are diagrams of the recognition effect of the "thumb-up" gesture according to an embodiment of the present disclosure. As shown in FIGS. 4a-4d, "2" indicates that the gesture category of the video frame is "thumb-up." After inputting each video frame into the action recognition model, a gesture category of the video frame may be determined as "2," that is, thumb-up, and gesture positioning information, including a width of a gesture frame, a height of the gesture frame, and center coordinates of the gesture frame.
  • FIGS. 5a-5c are diagrams of the recognition effect of the "making a heart shape with two hands" gesture according to an embodiment of the present disclosure. As shown in FIGS. 5a-5c, "5" indicates that the gesture category of the video frame is "making a heart shape with two hands." In response to inputting each video frame into the action recognition model, a gesture category of the video frame may be acquired as "5," that is, making a heart shape with two hands, and gesture positioning information, including a width of a gesture frame, a height of the gesture frame and center coordinates of the gesture frame .
  • FIG. 6 is a schematic structural diagram of an apparatus for recognizing a video action according to an embodiment of the present disclosure. As shown in FIG. 6, the apparatus includes: an action category and action positioning information determining module 610 and an action content determining module 620.
  • The action category and action positioning information determining module 610 is configured to determine an action category and action positioning information of a current video frame based on the current video frame and at least one forward video frame.
  • The action content determining module 620 is configured to determine action content of a video based on the action category and the action positioning information of the current video frame.
  • In an embodiment, the action category and action positioning information determining module 610 is configured to:
    • acquire a current video frame and determine an action recognition result of the current video frame, wherein the action recognition result includes an action category and action positioning information;
    • acquire a target action category of the current video frame by correcting the action category of the current video frame based on an action category of the at least one forward video frame; and
    • acquire target action positioning information of the current video frame by correcting the action positioning information of the current video frame based on action positioning information of a previous video frame of the current video frame.
  • In an embodiment, the action category and action positioning information determining module 610 is configured to:
    • acquire a confidence of at least one defined action category by inputting the current video frame into an action recognition model; and
    • select a defined action category with a highest confidence as the action category of the current video frame.
  • In an embodiment, the action category and action positioning information determining module 610 is configured to:
    • sum the confidences of each of the at least one defined action category in the at least one forward video frame and the current video frame;
    • acquire a defined action category with a highest sum of the confidences;
    • among the action categories of the at least one forward video frame and the current video frame, if the number of action categories the same as the defined action category with the highest sum of the confidences exceeds a defined number, determine the defined action category with the highest sum of the confidences as the target action category; and
    • among the action categories of the at least one forward video frame and the current video frame, if the number of action categories the same as the defined action category with the highest sum of the confidences does not exceed the defined number, determine the action category of the current video frame as the target action category.
  • In an embodiment, the action positioning information includes a width of an action block, a height of the action block, and center coordinates of the action block.
  • In an embodiment, the action category and action positioning information determining module 610 is configured to:
    • acquire a gain factor for the width or the height of the action block; and
    • calculate a width or a height of a target action block according to the following formula based on the gain factor: x = x 2 + k x 1 x 2 ;
      Figure imgb0003
    where x represents the width or the height of the target action block, k represents the gain factor, x1 represents a width or a height of an action block of the current video frame, and x2 represents a width of an action block of the previous video frame or a height of an action block of the forward video frame;
    acquire a gain matrix for the center coordinates of the action block; and
    calculate center coordinates of the target action block according to the following formula based on the gain matrix: Y = Y 2 + K Y 1 H Y 2 ;
    Figure imgb0004
    where Y represents the center coordinates of the target action block, Y2 represents center coordinates of the action block of the previous video frame, K represents the gain matrix, H represents a unitary matrix, and Y1 represents center coordinates of the action block of the current video frame.
  • In an embodiment, the action category and action positioning information determining module 610 is configured to:
    • determine whether an absolute value of a difference between the positioning information of the target action block and the positioning information of the action block of the previous video frame is less than a predefined threshold; and
    • update the positioning information of the target action block to the positioning information of the action block of the previous video frame based on a determination result that the absolute value of the difference between the positioning information of the target action block and the positioning information of the action block of the previous video frame is less than the predefined threshold.
  • In an embodiment, the gain factor is calculated according to the following formula: k = p / p + r ;
    Figure imgb0005
    where p_=p+q, p represents a posterior error, p_ represents a prior error, q represents a process deviation, and r represents a measurement deviation.
  • The gain matrix is calculated according to the following formula: K = P H T S 1 ;
    Figure imgb0006
    where P-=AerrAT+Q, S=HP- HT+R, A represents a motion matrix, Q represents a process variance matrix, R represents a measurement variance matrix, err represents a center point error matrix, and H represents a unitary matrix.
  • In an embodiment, the action category and action positioning information determining module 610 is configured to:
    • determine whether the current video frame is a predefined key frame;
    • acquire initial action positioning information of the current video frame by inputting the current video frame into a first action recognition sub-model based on a determination result that the current video frame is a predefined key frame; and determine a first image region to be recognized of the current video frame based on the initial action positioning information, and acquire the action recognition result of the current video frame by inputting the first image region to be recognized into a second action recognition sub-model, wherein the first action recognition sub-model and the second action recognition sub-model are trained using different convolutional neural networks; and
    • determine a second image region to be recognized of the current video frame based on action block positioning information of the previous video frame based on a determination result that the current video frame is not a predefined key frame, and acquire the action recognition result of the current video frame by inputting the second image region to be recognized into the second action recognition sub-model.
  • In an embodiment, the action is a user's gesture, the action category is an aspect of the gesture, and the action positioning information is a movement trajectory of the gesture.
  • The above-mentioned apparatus may carry out the methods according to all the foregoing embodiments of the present disclosure. For technical details not described in detail in this embodiment, reference may be made to the methods according to all the foregoing embodiments of the present disclosure.
  • FIG. 7 is a schematic structural diagram of a computer device according to an embodiment of the present disclosure. FIG. 7 shows a block diagram of a computer device 712 applicable to implementing the embodiments of the present disclosure. The computer device 712 shown in FIG. 7 is only an example, and should not bring any limitation to the function and scope of use of the embodiments of the present disclosure. The device 712 is typically a computing device that is responsible for recognizing video actions.
  • As shown in FIG. 7, the computer device 712 is embodied in the form of a general-purpose computing device. Components of the computer device 712 may include, but are not limited to: at least one processor 716, a storage device 728, and a bus 718 connecting different system components (including the storage device 728 and the processor 716).
  • The bus 718 represents one or more of several types of bus structures, including a memory bus or a memory controller, a peripheral bus, a graphics acceleration port, a processor, or a local bus using any of the various bus structures. For example, these architectures include but are not limited to industry standard architecture (ISA) bus, micro channel architecture (MCA) bus, enhanced ISA bus, Video Electronics Standards Association (VVESA) local bus and peripheral component interconnect (PCI) bus.
  • The computer device 712 typically includes a variety of computer system readable mediums. The mediums may be any available mediums that may be accessed by the computer device 712, including volatile and non-volatile mediums, and removable and non-removable mediums.
  • The storage device 728 may include a computer system readable medium in the form of a volatile memory, such as at least one of a random-access memory (RAM) 730 and a cache memory 732. The computer device 712 may further include other removable/non-removable, volatile/nonvolatile computer system storage medium. Just as an example, the storage system 734 may be used to read and write non-removable, non-volatile magnetic medium (not shown in FIG. 7, and generally referred to as a "hard drive"). Although not shown in FIG. 7, a disk drive for reading and writing a removable non-volatile disk (such as a "floppy disk") and a removable non-volatile optical disk (such as a compact disc read-only memory (CD-ROM), a digital video disc read-only memory (DVD-ROM) or other optical medium. In these cases, each drive may be connected to the bus 718 via at least one data medium interface. The storage device 728 may include at least one program product. The program product has a defined of (for example, at least one) program modules that are configured to perform the functions of the embodiments of the present disclosure.
  • A program 736 having a defined of (at least one) program module 726 may be stored in, for example, the storage device 728. Such program modules 726 include but are not limited to an operating system, at least one application, other program modules, and program data. Each of these examples or some combination may include an implementation of a network environment. The program module 726 generally executes the functions and/or methods in the embodiments of the present disclosure.
  • The computer device 712 may also communicate with at least one external device 714 (such as a keyboard, a pointing device, a camera, or a display 724), and may also communicate with at least one device that enables a user to interact with the computer device 712, and/or communicate with any device (such as a network card or a modem) that enables the computer device 712 to communicate with at least one other computing device. This communication may be performed via an input/output (I/O) interface 722. In addition, the computer device 712 may also communicate with at least one network, for example, a local region network (LAN), a wide region network, WAN) and/or a public network, such as the Internet, via a network adapter 720. As shown in the figure, the network adapter 720 communicates with other modules of the computer device 712 via the bus 718. It should be understood that although not shown in the figure, other hardware and/or software modules may be used in conjunction with the computer device 712, including but not limited to: microcode, device drivers, redundant processing units, external disk drive arrays, and redundant arrays of independent disks (RAID) systems, tape drives, and data backup storage systems.
  • The processor 716 executes various functional applications and data processing by running the programs stored in the storage device 728, such as implementing the method for recognizing a video action according to the foregoing embodiments of the present disclosure.
  • A sixth embodiment of the present disclosure also provides a computer-readable storage medium having a computer program stored thereon. The program, when executed by a processor, performs the method for recognizing a video action according to the embodiments of the present disclosure.
  • An embodiment of the present disclosure also provides a computer-readable storage medium having a computer program stored therein. The computer program is not limited to the method operations described above, and can also perform related operations in the method for recognizing a video action according to any embodiment of the present disclosure.
  • The computer storage medium according to the embodiment of the present disclosure may adopt any combination of at least one computer-readable medium. The computer-readable medium may be a computer-readable signal medium or a computer-readable storage medium. The computer-readable storage medium may be, for example, but is not limited to, an electrical, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, or device, or any combination thereof. More specific examples (non-exhaustive list) of the computer-readable storage medium include: an electrical connection with at least one wire, a portable computer disk, a hard disk, a RAM, a ROM, an erasable programmable read-only memory (EPROM or flash memory), an optical fiber, a portable CD-ROM, an optical storage device, a magnetic storage device, or any suitable combination thereof. In this document, the computer-readable storage medium may be any tangible medium that contains or stores a program. The program may be used by or in combination with an instruction execution system, apparatus, or device.
  • The computer-readable signal medium may include a data signal propagated in baseband or as a part of a carrier wave, and computer-readable program code is carried therein. This propagated data signal may take many forms, including but not limited to electromagnetic signals, optical signals, or any suitable combination thereof. The computer-readable signal medium may also be any computer-readable medium other than the computer-readable storage medium. The computer-readable medium may send, propagate, or transmit the program for use by or in combination with the instruction execution system, apparatus, or device.
  • The program code contained on the computer-readable medium may be transmitted by any suitable medium, including but not limited to wireless, wire, optical cable, RF, etc., or any suitable combination thereof.
  • The computer program code used to perform the operations of the present disclosure may be written in one or more programming languages or a combination thereof. The programming languages include object-oriented programming languages such as Java, Smalltalk, C++, and also include conventional procedural programming languages such as "C" language or similar programming languages. The program code may be executed entirely on a user's computer, partly on the user's computer, executed as an independent software package, partly on the user's computer and partly executed on a remote computer, or entirely executed on the remote computer or server. In the case of a remote computer, the remote computer may be connected to the user's computer over any network including a local region network (LAN) or a wide region network (WAN), or may be connected to an external computer (for example, using an Internet service provider to connect over the Internet).

Claims (13)

  1. A method for recognizing a video action, comprising:
    determining an action category and action positioning information of a current video frame based on the current video frame and at least one forward video frame; and
    determining action content of a video based on the action category and the action positioning information of the video frame.
  2. The method according to claim 1, wherein determining the action category and the action positioning information of the current video frame based on the current video frame and the at least one forward video frame comprises:
    acquiring the current video frame and determining an action recognition result of the current video frame, wherein the action recognition result comprises the action category and the action positioning information;
    acquiring a target action category of the current video frame by correcting the action category of the current video frame based on an action category of the at least one forward video frame; and
    acquiring target action positioning information of the current video frame by correcting the action positioning information of the current video frame based on action positioning information of a previous video frame of the current video frame.
  3. The method according to claim 2, wherein acquiring the current video frame and determining the action category of the current video frame comprises:
    acquiring a confidence of at least one defined action category by inputting the current video frame into an action recognition model; and
    selecting a defined action category with a highest confidence from the at least one defined action category as the action category of the current video frame.
  4. The method according to claim 3, wherein acquiring the target action category of the current frame by correcting the action category of the current video frame based on the action category of the at least one forward video frame comprises:
    summing confidences of each of the at least one defined action category in the at least one forward video frame and the current video frame;
    acquiring a defined action category with a highest sum of the confidences;
    among the action categories of the at least one forward video frame and the current video frame, if a number of action categories the same as the defined action category with the highest sum of the confidences exceeds a defined number, determining the defined action category with the highest sum of the confidences as the target action category; and
    among the action categories of the at least one forward video frame and the current video frame, if the number of action categories the same as the defined action category with the highest sum of the confidences does not exceed the defined number, determining the action category of the current video frame as the target action category.
  5. The method according to claim 2, wherein the action positioning information comprises a width of an action block, a height of the action block, and center coordinates of the action block.
  6. The method according to claim 5, wherein acquiring the target action positioning information of the current video frame by correcting the action positioning information of the current video frame based on the action positioning information of the previous video frame of the current video frame comprises:
    acquiring a gain factor for the width or the height of the action block; and
    calculating a width or a height of a target action block according to the following formula based on the gain factor: x = x 2 + k x 1 x 2 ;
    Figure imgb0007
    where x represents the width or the height of the target action block, k represents the gain factor, x1 represents a width or a height of an action block of the current video frame, and x2 represents a width of an action block of the previous video frame or a height of an action block of the forward video frame; and
    acquiring a gain matrix for the center coordinates of the action block; and
    calculating center coordinates of the target action block according to the following formula based on the gain matrix: Y = Y 2 + K Y 1 H Y 2 ;
    Figure imgb0008
    where Y represents the center coordinates of the target action block, Y2 represents center coordinates of the action block of the previous video frame, K represents the gain matrix, H represents a unitary matrix, and Y1 represents center coordinates of the action block of the current video frame.
  7. The method according to claim 6, further comprising:
    determining whether an absolute value of a difference between the positioning information of the target action block and the positioning information of the action block of the previous video frame is less than a predefined threshold; and
    updating the positioning information of the target action block to the positioning information of the action block of the previous video frame based on a determination result that the absolute value of the difference between the positioning information of the target action block and the positioning information of the action block of the previous video frame is less than the predefined threshold.
  8. The method according to claim 6, wherein the gain factor is calculated according to the following formula: k = p / p + r ;
    Figure imgb0009
    where p-=p+q, p represents a posterior error, p- represents a prior error, q represents a process deviation, and r represents a measurement deviation; and
    the gain matrix is calculated according to the following formula: K = P H T S 1 ;
    Figure imgb0010

    where P-=AerrAT+Q, S=HP- HT+R, A represents a motion matrix, Q represents a process variance matrix, R represents a measurement variance matrix, err is a center point error matrix, and H represents a unitary matrix.
  9. The method according to claim 2, wherein acquiring the current video frame and determining the action recognition result of the current video frame comprise:
    determining whether the current video frame is a predefined key frame;
    acquiring initial action positioning information of the current video frame by inputting the current video frame into a first action recognition sub-model based on a determination result that the current video frame is a predefined key frame, determining a first image region to be recognized of the current video frame based on the initial action positioning information, and acquiring the action recognition result of the current video frame by inputting the first image region to be recognized into a second action recognition sub-model, wherein the first action recognition sub-model and the second action recognition sub-model are trained using different convolutional neural networks; and
    determining a second image region to be recognized of the current video frame based on action block positioning information of the previous video frame based on a determination result that the current video frame is not a predefined key frame, and acquiring the action recognition result of the current video frame by inputting the second image region to be recognized into the second action recognition sub-model.
  10. The method according to claim 1, wherein the action is a user's gesture, the action category is an aspect of the gesture, and the action positioning information is a movement trajectory of the gesture.
  11. An apparatus for recognizing a video action, comprising:
    an action category and action positioning information determining module, configured to determine an action category and action positioning information of a current video frame based on the current video frame and at least one forward video frame; and
    an action content determining module, configured to determine action content of the video based on the action category and the action positioning information of the video frame.
  12. A computer device, comprising a memory, a processor, and a computer program stored on the memory and running on the processor, wherein the processor, when running the program, is caused to perform a method as defined in any one of claims 1 to 10.
  13. A computer-readable storage medium storing a computer program therein, wherein the computer program, when run by a processor, causes the computer to perform the method as defined in any one of claims 1 to 10.
EP19862600.4A 2018-09-21 2019-08-27 Video action recognition method, apparatus, and device, and storage medium Active EP3862914B1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201811107097.0A CN109344755B (en) 2018-09-21 2018-09-21 Video action recognition method, device, equipment and storage medium
PCT/CN2019/102717 WO2020057329A1 (en) 2018-09-21 2019-08-27 Video action recognition method, apparatus, and device, and storage medium

Publications (3)

Publication Number Publication Date
EP3862914A1 true EP3862914A1 (en) 2021-08-11
EP3862914A4 EP3862914A4 (en) 2022-01-19
EP3862914B1 EP3862914B1 (en) 2026-03-11

Family

ID=65306546

Family Applications (1)

Application Number Title Priority Date Filing Date
EP19862600.4A Active EP3862914B1 (en) 2018-09-21 2019-08-27 Video action recognition method, apparatus, and device, and storage medium

Country Status (4)

Country Link
US (1) US12051236B2 (en)
EP (1) EP3862914B1 (en)
CN (1) CN109344755B (en)
WO (1) WO2020057329A1 (en)

Families Citing this family (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109344755B (en) 2018-09-21 2024-02-13 广州市百果园信息技术有限公司 Video action recognition method, device, equipment and storage medium
CN109558832B (en) 2018-11-27 2021-03-26 广州市百果园信息技术有限公司 Human body posture detection method, device, equipment and storage medium
CN110163129B (en) * 2019-05-08 2024-02-13 腾讯科技(深圳)有限公司 Video processing methods, devices, electronic equipment and computer-readable storage media
CN110543830B (en) * 2019-08-12 2022-05-13 珠海格力电器股份有限公司 Motion detection method, motion detection device, and storage medium
EP4038541A4 (en) * 2019-09-19 2023-06-28 Arctan Analytics Pte. Ltd. System and method for assessing customer satisfaction from a physical gesture of a customer
CN115035407B (en) * 2019-11-06 2025-04-25 支付宝(杭州)信息技术有限公司 Method, device and equipment for identifying objects in images
CN113038149A (en) * 2019-12-09 2021-06-25 上海幻电信息科技有限公司 Live video interaction method and device and computer equipment
CN111783712B (en) * 2020-07-09 2025-07-25 腾讯科技(深圳)有限公司 Video processing method, device, equipment and medium
WO2022085200A1 (en) * 2020-10-23 2022-04-28 三菱電機株式会社 Information presentation system, information presentation method and information presentation program
CN112883782B (en) * 2021-01-12 2023-03-24 上海肯汀通讯科技有限公司 Method, device, equipment and storage medium for identifying putting behaviors
CN113033458B (en) * 2021-04-09 2023-11-07 京东科技控股股份有限公司 Action recognition method and device
CN113111939B (en) * 2021-04-12 2022-09-02 中国人民解放军海军航空大学航空作战勤务学院 Aircraft flight action identification method and device
CN113205067B (en) * 2021-05-26 2024-04-09 北京京东乾石科技有限公司 Method and device for monitoring operators, electronic equipment and storage medium
CN113486733A (en) * 2021-06-18 2021-10-08 青岛海纳云科技控股有限公司 Lane line type discrimination method based on scene context
CN115641526B (en) * 2021-07-20 2025-08-29 北京百度网讯科技有限公司 Sample generation, model training, action recognition method and device
CN114842396B (en) * 2022-05-20 2025-02-21 京东科技信息技术有限公司 Video action positioning method and device
WO2023249307A1 (en) * 2022-06-23 2023-12-28 주식회사 노타 Device and method for determining image event classification by using neural network model
KR102603423B1 (en) * 2022-06-23 2023-11-20 주식회사 노타 Apparatus and method for classifying an event of an image using a neural network model
CN117369649B (en) * 2023-12-05 2024-03-26 山东大学 Virtual reality interaction system and method based on proprioception

Family Cites Families (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3607440B2 (en) * 1996-12-03 2005-01-05 日本電気株式会社 Gesture recognition method
US6683968B1 (en) * 1999-09-16 2004-01-27 Hewlett-Packard Development Company, L.P. Method for visual tracking using switching linear dynamic system models
JP2012068713A (en) * 2010-09-21 2012-04-05 Sony Corp Information processing apparatus, and information processing method
CN103077532A (en) * 2012-12-24 2013-05-01 天津市亚安科技股份有限公司 Real-time video object quick tracking method
CN103020648B (en) 2013-01-09 2016-04-13 艾迪普(北京)文化科技股份有限公司 A kind of type of action recognition methods, program broadcasting method and device
RU2013146529A (en) * 2013-10-17 2015-04-27 ЭлЭсАй Корпорейшн RECOGNITION OF DYNAMIC HAND GESTURE WITH SELECTIVE INITIATION ON THE BASIS OF DETECTED HAND SPEED
CN104049760B (en) 2014-06-24 2017-08-25 深圳先进技术研究院 The acquisition methods and system of a kind of man-machine interaction order
US9600717B1 (en) 2016-02-25 2017-03-21 Zepp Labs, Inc. Real-time single-view action recognition based on key pose analysis for sports videos
US10115005B2 (en) * 2016-08-12 2018-10-30 Qualcomm Incorporated Methods and systems of updating motion models for object trackers in video analytics
CN107341436B (en) 2016-08-19 2019-02-22 北京市商汤科技开发有限公司 Gesture detection network training, gesture detection and control method, system and terminal
CN106780620B (en) * 2016-11-28 2020-01-24 长安大学 A system and method for identifying, positioning and tracking table tennis motion trajectory
CN108229277B (en) * 2017-03-31 2020-05-01 北京市商汤科技开发有限公司 Gesture recognition, gesture control and multi-layer neural network training method, device and electronic equipment
US10262226B1 (en) * 2017-05-16 2019-04-16 State Farm Mutual Automobile Insurance Company Systems and methods regarding 2D image and 3D image ensemble prediction models
CN108241849B (en) * 2017-08-28 2021-09-07 北方工业大学 Video-based human interaction action recognition method
CN107786549B (en) 2017-10-16 2019-10-29 北京旷视科技有限公司 Adding method, device, system and the computer-readable medium of audio file
CN107786848A (en) * 2017-10-30 2018-03-09 周燕红 The method, apparatus of moving object detection and action recognition, terminal and storage medium
CN107766839B (en) * 2017-11-09 2020-01-14 清华大学 Motion recognition method and device based on 3D convolutional neural network
CN107808143B (en) 2017-11-10 2021-06-01 西安电子科技大学 Computer Vision-Based Dynamic Gesture Recognition Method
SG11201909139TA (en) * 2017-12-22 2019-10-30 Beijing Sensetime Technology Development Co Ltd Methods and apparatuses for recognizing dynamic gesture, and control methods and apparatuses using gesture interaction
CN108181989B (en) 2017-12-29 2020-11-20 北京奇虎科技有限公司 Video data-based gesture control method and device, and computing device
CN108197596B (en) 2018-01-24 2021-04-06 京东方科技集团股份有限公司 A kind of gesture recognition method and device
CN109344755B (en) 2018-09-21 2024-02-13 广州市百果园信息技术有限公司 Video action recognition method, device, equipment and storage medium

Also Published As

Publication number Publication date
EP3862914B1 (en) 2026-03-11
CN109344755A (en) 2019-02-15
WO2020057329A1 (en) 2020-03-26
US12051236B2 (en) 2024-07-30
EP3862914A4 (en) 2022-01-19
US20220130146A1 (en) 2022-04-28
CN109344755B (en) 2024-02-13

Similar Documents

Publication Publication Date Title
US12051236B2 (en) Method for recognizing video action, and device and storage medium thereof
CN109584276B (en) Key point detection method, device, equipment and readable medium
US20210383107A1 (en) Method, apparatus, device and storage medium for recognizing bill image
CN107293296B (en) Voice recognition result correction method, device, equipment and storage medium
CN109993150B (en) Method and device for identifying age
CN112926306B (en) Text error correction method, device, equipment and storage medium
CN113033377B (en) Character position correction method, device, electronic equipment and storage medium
US20220139061A1 (en) Model training method and apparatus, keypoint positioning method and apparatus, device and medium
EP3985610B1 (en) Audio collection device positioning method and apparatus, and speaker recognition method and system
CN110363748B (en) Dithering processing method, device, medium and electronic equipment of key points
EP3822858A2 (en) Method and apparatus for identifying key point locations in an image, and computer readable medium
US20240304179A1 (en) Efficient adaptation of spoken language understanding based on automatic speech recognition using multi-task learning
CN112286360A (en) Method and apparatus for operating a mobile device
US20250028958A1 (en) Data processing
JP2022173183A (en) AUDIO ENDPOINT DETECTION METHOD, APPARATUS, ELECTRONIC DEVICE, AND STORAGE MEDIUM
CN115359092A (en) Method and device for training gaze point prediction model and electronic equipment
CN113840177B (en) Live interaction method and device, storage medium and electronic equipment
US10766143B1 (en) Voice controlled keyboard typing using computer vision
CN110717467A (en) Head pose estimation method, device, equipment and storage medium
US20240144007A1 (en) Methods, apparatuses, device, and medium for contrastive learning
CN114842261A (en) Image processing method, device, electronic device and storage medium
CN116416159B (en) Image correction methods and apparatus, electronic devices and media
CN112115740B (en) Method and apparatus for processing an image
CN116089788B (en) Online missing data processing method, device, computer equipment and storage medium
CN110263743B (en) Method and device for recognizing images

Legal Events

Date Code Title Description
STAA Information on the status of an ep patent application or granted ep patent

Free format text: STATUS: THE INTERNATIONAL PUBLICATION HAS BEEN MADE

PUAI Public reference made under article 153(3) epc to a published international application that has entered the european phase

Free format text: ORIGINAL CODE: 0009012

STAA Information on the status of an ep patent application or granted ep patent

Free format text: STATUS: REQUEST FOR EXAMINATION WAS MADE

17P Request for examination filed

Effective date: 20210324

AK Designated contracting states

Kind code of ref document: A1

Designated state(s): AL AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HR HU IE IS IT LI LT LU LV MC MK MT NL NO PL PT RO RS SE SI SK SM TR

DAV Request for validation of the european patent (deleted)
DAX Request for extension of the european patent (deleted)
A4 Supplementary search report drawn up and despatched

Effective date: 20211217

RIC1 Information provided on ipc code assigned before grant

Ipc: G06K 9/62 20060101ALI20211213BHEP

Ipc: G06K 9/00 20060101AFI20211213BHEP

STAA Information on the status of an ep patent application or granted ep patent

Free format text: STATUS: EXAMINATION IS IN PROGRESS

17Q First examination report despatched

Effective date: 20240216

REG Reference to a national code

Ref country code: DE

Ref legal event code: R079

Free format text: PREVIOUS MAIN CLASS: G06K0009000000

Ipc: G06V0010764000

Ref country code: DE

Ref legal event code: R079

Ref document number: 602019082434

Country of ref document: DE

Free format text: PREVIOUS MAIN CLASS: G06K0009000000

Ipc: G06V0010764000

GRAP Despatch of communication of intention to grant a patent

Free format text: ORIGINAL CODE: EPIDOSNIGR1

STAA Information on the status of an ep patent application or granted ep patent

Free format text: STATUS: GRANT OF PATENT IS INTENDED

RIC1 Information provided on ipc code assigned before grant

Ipc: G06V 10/764 20220101AFI20251105BHEP

Ipc: G06V 40/20 20220101ALI20251105BHEP

Ipc: G06V 10/82 20220101ALI20251105BHEP

INTG Intention to grant announced

Effective date: 20251119

GRAS Grant fee paid

Free format text: ORIGINAL CODE: EPIDOSNIGR3

GRAA (expected) grant

Free format text: ORIGINAL CODE: 0009210

STAA Information on the status of an ep patent application or granted ep patent

Free format text: STATUS: THE PATENT HAS BEEN GRANTED

AK Designated contracting states

Kind code of ref document: B1

Designated state(s): AL AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HR HU IE IS IT LI LT LU LV MC MK MT NL NO PL PT RO RS SE SI SK SM TR

REG Reference to a national code

Ref country code: CH

Ref legal event code: F10

Free format text: ST27 STATUS EVENT CODE: U-0-0-F10-F00 (AS PROVIDED BY THE NATIONAL OFFICE)

Effective date: 20260311

Ref country code: GB

Ref legal event code: FG4D

REG Reference to a national code

Ref country code: DE

Ref legal event code: R096

Ref document number: 602019082434

Country of ref document: DE

REG Reference to a national code

Ref country code: IE

Ref legal event code: FG4D