CN114092556A - Method, apparatus, electronic device, medium for determining human body posture - Google Patents
Method, apparatus, electronic device, medium for determining human body posture Download PDFInfo
- Publication number
- CN114092556A CN114092556A CN202111387515.8A CN202111387515A CN114092556A CN 114092556 A CN114092556 A CN 114092556A CN 202111387515 A CN202111387515 A CN 202111387515A CN 114092556 A CN114092556 A CN 114092556A
- Authority
- CN
- China
- Prior art keywords
- expansion coefficient
- human body
- determining
- longitudinal
- lateral
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 47
- 238000004590 computer program Methods 0.000 claims description 15
- 230000004044 response Effects 0.000 claims description 13
- 238000001514 detection method Methods 0.000 claims description 12
- 238000012545 processing Methods 0.000 abstract description 10
- 238000013473 artificial intelligence Methods 0.000 abstract description 4
- 230000003190 augmentative effect Effects 0.000 abstract description 2
- 230000036544 posture Effects 0.000 description 23
- 238000004891 communication Methods 0.000 description 13
- 238000010586 diagram Methods 0.000 description 8
- 238000005516 engineering process Methods 0.000 description 5
- 230000006870 function Effects 0.000 description 5
- 238000004364 calculation method Methods 0.000 description 4
- 238000013459 approach Methods 0.000 description 3
- 230000003993 interaction Effects 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 3
- 230000008901 benefit Effects 0.000 description 2
- 230000001413 cellular effect Effects 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 230000008569 process Effects 0.000 description 2
- 238000004458 analytical method Methods 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 230000006399 behavior Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 230000010267 cellular communication Effects 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 230000008878 coupling Effects 0.000 description 1
- 238000010168 coupling process Methods 0.000 description 1
- 238000005859 coupling reaction Methods 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 210000003127 knee Anatomy 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 238000010801 machine learning Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 239000013307 optical fiber Substances 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 230000001953 sensory effect Effects 0.000 description 1
- 239000004984 smart glass Substances 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/70—Determining position or orientation of objects or cameras
- G06T7/73—Determining position or orientation of objects or cameras using feature-based methods
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/30—Subject of image; Context of image processing
- G06T2207/30196—Human being; Person
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/30—Subject of image; Context of image processing
- G06T2207/30244—Camera pose
Landscapes
- Engineering & Computer Science (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- User Interface Of Digital Computer (AREA)
Abstract
The present disclosure provides a method, an apparatus, an electronic device and a medium for determining a human body posture, which relate to the field of data processing, and in particular to the field of artificial intelligence such as augmented/virtual reality and computer vision. The method comprises the following steps: acquiring video data, wherein the video data comprises at least two video frames; detecting one or more human keypoints for a first video frame; determining an original human body bounding box based on the one or more human body keypoints detected in the first video frame; determining a transverse expansion coefficient and a longitudinal expansion coefficient based on the transverse size and the longitudinal size of the original human body surrounding frame; expanding the transverse size of the original human body enclosure frame based on the transverse expansion coefficient, and expanding the longitudinal size of the original human body enclosure frame based on the longitudinal expansion coefficient to obtain an updated human body enclosure frame; detecting one or more human keypoints in the second video frame based on the updated human bounding box; and determining a human body pose based at least on the detected human body keypoints.
Description
Technical Field
The present disclosure relates to the field of data processing technologies, in particular to the field of artificial intelligence such as augmented/virtual reality and computer vision, and in particular to a method, an apparatus, an electronic device, a computer-readable storage medium, and a computer program product for determining a human body posture.
Background
With the development of internet technology and the popularization of human-computer interaction applications, the need for estimating or determining human body posture from videos is increasing. In the process of determining the human body posture, the key points of the human body are required to be accurately and reasonably acquired. For example, the technology for determining key points of a human body and estimating the posture of the human body plays an important role in the fields of motion sensing games, fitness supervision or guidance, intelligent education, human body behavior analysis, virtual image driving, live broadcast special effects and the like.
The approaches described in this section are not necessarily approaches that have been previously conceived or pursued. Unless otherwise indicated, it should not be assumed that any of the approaches described in this section qualify as prior art merely by virtue of their inclusion in this section. Similarly, unless otherwise indicated, the problems mentioned in this section should not be considered as having been acknowledged in any prior art.
Disclosure of Invention
The present disclosure provides a method, an apparatus, an electronic device, a computer-readable storage medium, and a computer program product for determining a human body posture.
According to an aspect of the present disclosure, there is provided a method for determining a posture of a human body, including: acquiring video data, wherein the video data comprises at least two video frames; detecting one or more human keypoints for a first video frame of the at least two video frames; determining an original human bounding box based on the one or more human keypoints detected in the first video frame; determining a transverse expansion coefficient and a longitudinal expansion coefficient based on the transverse size and the longitudinal size of the original human body surrounding frame; expanding the lateral dimension of the original body bounding box based on the lateral expansion coefficient and expanding the longitudinal dimension of the original body bounding box based on the longitudinal expansion coefficient to obtain an updated body bounding box; detecting one or more human keypoints in a second video frame of the at least two video frames based on the updated human bounding box, the second video frame being located after the first video frame; and determining a human pose based at least on the human keypoints detected in the first video frame and in the second video frame.
According to another aspect of the present disclosure, there is provided an apparatus for determining a posture of a human body, including: a video data acquisition unit for acquiring video data, the video data including at least two video frames; a first human body key point detection unit for detecting one or more human body key points for a first video frame of the at least two video frames; an original human body bounding box determining unit, configured to determine an original human body bounding box based on the one or more human body key points detected in the first video frame; the expansion coefficient determining unit is used for determining a transverse expansion coefficient and a longitudinal expansion coefficient based on the transverse size and the longitudinal size of the original human body surrounding frame; a human body bounding box updating unit, configured to expand the lateral size of the original human body bounding box based on the lateral expansion coefficient and expand the longitudinal size of the original human body bounding box based on the longitudinal expansion coefficient to obtain an updated human body bounding box; a second human keypoint detection unit for detecting one or more human keypoints in a second video frame of the at least two video frames based on the updated human bounding box, the second video frame being located after the first video frame; and a human body posture determination unit for determining a human body posture at least based on the human body key points detected in the first video frame and the second video frame.
According to another aspect of the present disclosure, there is provided an electronic device including: at least one processor; and a memory communicatively coupled to the at least one processor; wherein the memory stores instructions executable by the at least one processor to enable the at least one processor to perform a method for determining human body posture in accordance with one or more embodiments of the present disclosure.
According to another aspect of the present disclosure, there is provided a non-transitory computer readable storage medium having stored thereon computer instructions for causing the computer to perform a method for determining a human body posture according to one or more embodiments of the present disclosure.
According to another aspect of the present disclosure, a computer program product is provided, comprising a computer program, wherein the computer program, when executed by a processor, implements a method for determining a human body posture according to one or more embodiments of the present disclosure.
According to one or more embodiments of the present disclosure, a human body posture in a video can be accurately determined.
It should be understood that the statements in this section are not intended to identify key or critical features of the embodiments of the present disclosure, nor are they intended to limit the scope of the present disclosure. Other features of the present disclosure will become apparent from the following description.
Drawings
The accompanying drawings, which are incorporated in and constitute a part of this specification, illustrate exemplary embodiments of the embodiments and, together with the description, serve to explain the exemplary implementations of the embodiments. The illustrated embodiments are for purposes of illustration only and do not limit the scope of the claims. Throughout the drawings, identical reference numbers designate similar, but not necessarily identical, elements.
FIG. 1 illustrates a schematic diagram of an exemplary system in which various methods described herein may be implemented, according to an embodiment of the present disclosure;
FIG. 2 shows a flow diagram of a method for determining a human body pose according to an embodiment of the present disclosure;
3A-3B illustrate scene diagrams in which methods for determining human body pose according to embodiments of the present disclosure may be implemented;
FIG. 4 shows a block diagram of an apparatus for determining human body posture according to an embodiment of the present disclosure;
FIG. 5 illustrates a block diagram of an exemplary electronic device that can be used to implement embodiments of the present disclosure.
Detailed Description
Exemplary embodiments of the present disclosure are described below with reference to the accompanying drawings, in which various details of the embodiments of the disclosure are included to assist understanding, and which are to be considered as merely exemplary. Accordingly, those of ordinary skill in the art will recognize that various changes and modifications of the embodiments described herein can be made without departing from the scope of the present disclosure. Also, descriptions of well-known functions and constructions are omitted in the following description for clarity and conciseness.
In the present disclosure, unless otherwise specified, the use of the terms "first", "second", etc. to describe various elements is not intended to limit the positional relationship, the timing relationship, or the importance relationship of the elements, and such terms are used only to distinguish one element from another. In some examples, a first element and a second element may refer to the same instance of the element, and in some cases, based on the context, they may also refer to different instances.
The terminology used in the description of the various described examples in this disclosure is for the purpose of describing particular examples only and is not intended to be limiting. Unless the context clearly indicates otherwise, if the number of elements is not specifically limited, the elements may be one or more. Furthermore, the term "and/or" as used in this disclosure is intended to encompass any and all possible combinations of the listed items.
Embodiments of the present disclosure will be described in detail below with reference to the accompanying drawings.
Fig. 1 illustrates a schematic diagram of an exemplary system 100 in which various methods and apparatus described herein may be implemented in accordance with embodiments of the present disclosure. Referring to fig. 1, the system 100 includes one or more client devices 101, 102, 103, 104, 105, and 106, a server 120, and one or more communication networks 110 coupling the one or more client devices to the server 120. Client devices 101, 102, 103, 104, 105, and 106 may be configured to execute one or more applications.
In an embodiment of the present disclosure, the server 120 may run one or more services or software applications that enable the execution of the method for determining a human body posture according to the present disclosure.
In some embodiments, the server 120 may also provide other services or software applications that may include non-virtual environments and virtual environments. In certain embodiments, these services may be provided as web-based services or cloud services, for example, provided to users of client devices 101, 102, 103, 104, 105, and/or 106 under a software as a service (SaaS) model.
In the configuration shown in fig. 1, server 120 may include one or more components that implement the functions performed by server 120. These components may include software components, hardware components, or a combination thereof, which may be executed by one or more processors. A user operating a client device 101, 102, 103, 104, 105, and/or 106 may, in turn, utilize one or more client applications to interact with the server 120 to take advantage of the services provided by these components. It should be understood that a variety of different system configurations are possible, which may differ from system 100. Accordingly, fig. 1 is one example of a system for implementing the various methods described herein and is not intended to be limiting.
The user may use client devices 101, 102, 103, 104, 105, and/or 106 to capture videos, upload videos, input videos, and the like to determine human gestures, or to view or otherwise interact with the human gesture determination, and the like. The client device may provide an interface that enables a user of the client device to interact with the client device. The client device may also output information to the user via the interface. Although fig. 1 depicts only six client devices, those skilled in the art will appreciate that any number of client devices may be supported by the present disclosure.
Network 110 may be any type of network known to those skilled in the art that may support data communications using any of a variety of available protocols, including but not limited to TCP/IP, SNA, IPX, etc. By way of example only, one or more networks 110 may be a Local Area Network (LAN), an ethernet-based network, a token ring, a Wide Area Network (WAN), the internet, a virtual network, a Virtual Private Network (VPN), an intranet, an extranet, a Public Switched Telephone Network (PSTN), an infrared network, a wireless network (e.g., bluetooth, WIFI), and/or any combination of these and/or other networks.
The server 120 may include one or more general purpose computers, special purpose server computers (e.g., PC (personal computer) servers, UNIX servers, mid-end servers), blade servers, mainframe computers, server clusters, or any other suitable arrangement and/or combination. The server 120 may include one or more virtual machines running a virtual operating system, or other computing architecture involving virtualization (e.g., one or more flexible pools of logical storage that may be virtualized to maintain virtual storage for the server). In various embodiments, the server 120 may run one or more services or software applications that provide the functionality described below.
The computing units in server 120 may run one or more operating systems including any of the operating systems described above, as well as any commercially available server operating systems. The server 120 may also run any of a variety of additional server applications and/or middle tier applications, including HTTP servers, FTP servers, CGI servers, JAVA servers, database servers, and the like.
In some implementations, the server 120 can include one or more applications to analyze and consolidate data feeds and/or event updates received from users of the client devices 101, 102, 103, 104, 105, and 106. Server 120 may also include one or more applications to display data feeds and/or real-time events via one or more display devices of client devices 101, 102, 103, 104, 105, and 106.
In some embodiments, the server 120 may be a server of a distributed system, or a server incorporating a blockchain. The server 120 may also be a cloud server, or a smart cloud computing server or a smart cloud host with artificial intelligence technology. The cloud Server is a host product in a cloud computing service system, and is used for solving the defects of high management difficulty and weak service expansibility in the traditional physical host and Virtual Private Server (VPS) service.
The system 100 may also include one or more databases 130. In some embodiments, these databases may be used to store data and other information. For example, one or more of the databases 130 may be used to store information such as audio files and video files. The database 130 may reside in various locations. For example, the database used by the server 120 may be local to the server 120, or may be remote from the server 120 and may communicate with the server 120 via a network-based or dedicated connection. The database 130 may be of different types. In certain embodiments, the database used by the server 120 may be, for example, a relational database. One or more of these databases may store, update, and retrieve data to and from the database in response to the command.
In some embodiments, one or more of the databases 130 may also be used by applications to store application data. The databases used by the application may be different types of databases, such as key-value stores, object stores, or regular stores supported by a file system.
The system 100 of fig. 1 may be configured and operated in various ways to enable application of the various methods and apparatus described in accordance with the present disclosure.
A method 200 for determining a human body pose according to an exemplary embodiment of the present disclosure is described below with reference to fig. 2.
At step S201, video data is acquired, the video data including at least two video frames.
At step S202, one or more human keypoints are detected for a first video frame of the at least two video frames.
At step S203, an original human body bounding box is determined based on the one or more human body keypoints detected in the first video frame.
At step S204, a lateral expansion coefficient and a longitudinal expansion coefficient are determined based on the lateral size and the longitudinal size of the original human body bounding box.
At step S205, the lateral size of the original human body enclosure box is expanded based on the lateral expansion coefficient, and the longitudinal size of the original human body enclosure box is expanded based on the longitudinal expansion coefficient to obtain an updated human body enclosure box.
At step S206, one or more human keypoints are detected in a second video frame of the at least two video frames based on the updated human bounding box. The second video frame is located after the first video frame.
At step S207, a human pose is determined based on at least the human keypoints detected in the first video frame and in the second video frame.
According to the method disclosed by the embodiment of the disclosure, a more accurate bounding box can be obtained through flexible adjustment of the bounding box, and then the human body posture in the video can be determined more accurately.
For example, the shape of the original bounding box may be too long or too narrow; if it is simply expanded to a fixed ratio, it is difficult to cover the shape peculiar to the human body in the lying, standing, or the like posture. In such a case, it may result in either the content being un-framed or excessive background areas being included. In contrast, according to the embodiments of the present disclosure, by determining different lateral and longitudinal expansion coefficients based on the proportion of the original bounding box, it is more effective to define possible human body positions based on the already detected human body keypoints, reduce the detection calculation amount of the next frame, and obtain a more accurate detection effect. It will be appreciated that the first video frame may be any one of a plurality of video frames comprised by the video. The second video frame may also be any one of a plurality of video frames, for example, the next video frame, or a video frame after several frames apart, and the disclosure is not limited thereto. It will also be appreciated that the above steps may be performed iteratively for a plurality of video frames, for example, detecting an original bounding box as the "first video frame" for the second video frame, and a third video frame subsequent to the second video frame (e.g., immediately subsequent or after an interval of one or more frames) as the "second video frame" and performing keypoint detection based on the updated human bounding box. It is to be understood that the present disclosure is not limited thereto.
According to some embodiments, determining the lateral expansion coefficient and the longitudinal expansion coefficient based on the lateral size and the longitudinal size of the original human body bounding box may include: in response to determining that the ratio of the lateral dimension to the longitudinal dimension is greater than a first value, a first lateral expansion coefficient and a first longitudinal expansion coefficient are determined, wherein the first lateral expansion coefficient is less than the first longitudinal expansion coefficient.
For example, if the ratio of the transverse dimension to the longitudinal dimension is too large, it may be more extended in the longitudinal direction. As one non-limiting example, the first value may be 2, the first lateral expansion coefficient may be 0.2 (i.e., a width that is increased by a factor of 0.2 more than the original width), and the first longitudinal expansion coefficient may be 0.6.
According to some embodiments, determining the lateral expansion coefficient and the longitudinal expansion coefficient based on the lateral size and the longitudinal size of the original human body bounding box may include: in response to determining that the ratio of the lateral dimension to the longitudinal dimension is less than a second value, a second lateral expansion coefficient and a second longitudinal expansion coefficient are determined, wherein the second lateral expansion coefficient is less than the second longitudinal expansion coefficient, and wherein the second value is less than the first value.
For example, if the ratio of the transverse dimension to the longitudinal dimension is too small, it may be more extended in the transverse direction. As one non-limiting example, the second value may be 0.5, the second lateral expansion coefficient may be 0.6, and the second longitudinal expansion coefficient may be 0.4.
According to some embodiments, determining the lateral expansion coefficient and the longitudinal expansion coefficient based on the lateral size and the longitudinal size of the original human body bounding box may include: in response to determining that the ratio of the lateral dimension to the longitudinal dimension is between the first value and the second value, a third lateral expansion coefficient and a third longitudinal expansion coefficient are determined, wherein the third lateral expansion coefficient is equal to the third longitudinal expansion coefficient.
For example, in other cases, it may be spread evenly in both directions to obtain a relatively suitable ratio. As one non-limiting example, the third lateral expansion coefficient and the third longitudinal expansion coefficient may be 0.2.
The method for determining the human body posture can also be referred to as a human body posture estimation method, and refers to the estimation of human body key points in each frame of an image or video. The current human body posture estimation scheme based on videos comprises a method of estimating the coordinate position of each joint point by adopting a bottom-up mode and combining each example according to all key points, or a method of detecting the bbox of each person by using a detector and then calculating the key point coordinate of each person by adopting a top-down mode. In the above method, the bottom-up scheme is easy to generate errors of intersection of key points of multiple persons, and high precision is difficult to achieve; the top-down scheme requires that each frame needs to be detected by each person first, and then key point prediction is performed on each detected instance, but the performance is poor because each frame needs to call a detector first.
According to the embodiment of the disclosure, on the premise of predicting the key points of the human body in the video, the detector can be called to detect the human body at the initial stage of the video, and after the key points of the human body are predicted in the current frame, a new human body surrounding frame can be calculated in the next frame according to the positions of the key points of the human body to replace the detector, so that the performance is optimized.
A method for determining a human body pose according to an embodiment of the present disclosure is further described below in conjunction with fig. 3A-3B.
As an alternative example, the above method may be performed for each frame or each adjacent frame in a video frame. In this case, the method may include obtaining video data, the video data including N video frames, N being an integer greater than or equal to 2, detecting one or more human keypoints for at least one of the N video frames, and determining a human pose based on the detected human keypoints.
For the ith video frame of the N video frames, i ═ 2, … …, N, considered as a "second video frame", detecting one or more human body keypoints may comprise the step of detecting one or more human body keypoints within a range of a human body bounding box based on the (i-1) th frame (e.g., "first video frame"), and in such embodiments, the human body bounding box based on the (i-1) th frame ("first video frame") may be determined by: determining an original human body bounding box based on the one or more human body key points detected in the (i-1) th video frame; determining a transverse expansion coefficient and a longitudinal expansion coefficient based on the transverse size and the longitudinal size of the original human body surrounding frame; and expanding the lateral size of the original human body enclosure frame based on the lateral expansion coefficient, and expanding the longitudinal size of the original human body enclosure frame based on the longitudinal expansion coefficient to obtain an updated human body enclosure frame as the (i-1) th frame-based human body enclosure frame.
According to embodiments of the present disclosure, the detection model may be invoked every frame at the beginning of a video frame until a human bounding box is detected, denoted as box B { X, Y, W, H }. Where X and Y are respectively the abscissa and the ordinate of a characteristic point of the frame (e.g., the lower left point), W is the width of the frame in the lateral direction, and H is the height of the frame in the longitudinal direction.
Then, for example, a pos model can be called to estimate the key points of the human body, and coordinate results { x } of n key points are obtained0,y0,x1,y1,…,xn-1,yn-1}. Wherein x is0,y0Is the abscissa and ordinate, x, of the first keypoint1,y1Is the abscissa and ordinate of the second keypoint, … …, xn-1,yn-1Is the abscissa and ordinate of the nth keypoint.
Subsequently, the bounding box B1(X1, Y1, W1, H1) of the current human body can be determined from the human body keypoints, for example, by the following equation.
X1=min(x0,x1,…,xn-1)
Y1=min(y0,y1,…,yn-1)
X2=max(x0,x1,…,xn-1)
Y2=max(y0,y1,…,yn-1)
W1=X2-X1
H1=Y2-Y1
Fig. 3A shows the current bounding box 310 computed in the previous frame, which may include a number of human key points (not shown), such as head, neck, hands, elbows, knees, feet, etc.
Next, based on the calculated bounding box, the length-width ratio of the bounding box B1 is determined, and the expansion ratio of the bounding box is determined, so as to obtain the bounding box B2(new _ X, new _ Y, new _ W, new _ H). For example, the parameters of the updated bounding box B2 may be calculated using the following operations:
thus, when the next frame of calculation is entered, the detector is not called any more, and the bounding box B2 calculated in the previous frame is used as the input of the pose model to perform the human body key point estimation.
FIG. 3B shows an expanded bounding box 320. It can be seen that the bounding box 320 is expanded in both the lateral and longitudinal directions relative to the bounding box 310, and because the bounding box 310 is already elongated in the longitudinal direction (e.g., to satisfy a length to width ratio that exceeds a predetermined value), a greater degree of expansion is performed in the lateral direction to achieve a more suitable proportion of the bounding box 320.
Compared with the scheme that each frame calls the detector and then calls the position estimation model, the scheme has the advantages that only the key points are required to be estimated, the surrounding frame of the next frame can be obtained through little calculation, the proportional relation of the human body under different postures can be adapted, and the performance and the accuracy are greatly improved.
An apparatus 400 for determining a human body pose according to an embodiment of the present disclosure is now described with reference to fig. 4. The apparatus 400 for determining a human body pose may include a video data acquisition unit 401, a first human body keypoint detection unit 402, an original human body bounding box determination unit 403, an expansion coefficient determination unit 404, a human body bounding box update unit 405, a second human body keypoint detection unit 406, and a human body pose determination unit 407.
The video data acquisition unit 401 is configured to acquire video data, where the video data includes at least two video frames. The first human keypoint detection unit 402 is configured to detect one or more human keypoints for a first video frame of the at least two video frames. The original-human-body-enclosing-frame determining unit 403 is configured to determine an original human body enclosing frame based on the one or more human body key points detected in the first video frame. The expansion coefficient determination unit 404 is configured to determine a lateral expansion coefficient and a longitudinal expansion coefficient based on the lateral size and the longitudinal size of the original human body bounding box. The human body enclosure frame updating unit 405 is configured to expand the lateral size of the original human body enclosure frame based on the lateral expansion coefficient, and expand the longitudinal size of the original human body enclosure frame based on the longitudinal expansion coefficient to obtain an updated human body enclosure frame. The second human keypoint detection unit 406 is configured to detect one or more human keypoints in a second video frame of the at least two video frames, the second video frame being located after the first video frame, based on the updated human bounding box. The human pose determination unit 407 is configured to determine a human pose based on at least the human keypoints detected in the first video frame and in the second video frame.
According to the device disclosed by the embodiment of the disclosure, the human body posture in the video can be accurately determined.
According to some embodiments, the expansion coefficient determination unit 404 may include: means for determining a first lateral expansion coefficient and a first longitudinal expansion coefficient in response to determining that a ratio of a lateral dimension to a longitudinal dimension is greater than a first value. The first lateral expansion coefficient may be less than the first longitudinal expansion coefficient.
According to some embodiments, the expansion coefficient determination unit 404 may include: for determining a second lateral expansion factor and a second longitudinal expansion factor in response to determining that the ratio of the lateral dimension to the longitudinal dimension is less than the second value. A unit in which the second lateral expansion coefficient is smaller than the second longitudinal expansion coefficient. The second value may be less than the first value.
According to some embodiments, the expansion coefficient determination unit 404 may include: means for determining a third lateral expansion coefficient and a third longitudinal expansion coefficient in response to determining that a ratio of the lateral dimension to the longitudinal dimension is between the first value and the second value. The third lateral expansion coefficient may be equal to the third longitudinal expansion coefficient.
In the technical scheme of the disclosure, the collection, acquisition, storage, use, processing, transmission, provision, public application and other processing of the personal information of the related user are all in accordance with the regulations of related laws and regulations, and do not violate the good customs of the public order.
According to an embodiment of the present disclosure, there is also provided an electronic device, a readable storage medium, and a computer program product.
Referring to fig. 5, a block diagram of a structure of an electronic device 500, which may be a server or a client of the present disclosure, which is an example of a hardware device that may be applied to aspects of the present disclosure, will now be described. Electronic device is intended to represent various forms of digital electronic computer devices, such as laptops, desktops, workstations, personal digital assistants, servers, blade servers, mainframes, and other suitable computers. The electronic device may also represent various forms of mobile devices, such as personal digital processing, cellular phones, smart phones, wearable devices, and other similar computing devices. The components shown herein, their connections and relationships, and their functions, are meant to be examples only, and are not meant to limit implementations of the disclosure described and/or claimed herein.
As shown in fig. 5, the electronic device 500 includes a computing unit 501, which can perform various appropriate actions and processes according to a computer program stored in a Read Only Memory (ROM)502 or a computer program loaded from a storage unit 508 into a Random Access Memory (RAM) 503. In the RAM 503, various programs and data required for the operation of the electronic apparatus 500 can also be stored. The calculation unit 501, the ROM 502, and the RAM 503 are connected to each other by a bus 504. An input/output (I/O) interface 505 is also connected to bus 504.
A number of components in the electronic device 500 are connected to the I/O interface 505, including: an input unit 506, an output unit 507, a storage unit 508, and a communication unit 509. The input unit 506 may be any type of device capable of inputting information to the electronic device 500, and the input unit 506 may receive input numeric or character information and generate key signal inputs related to user settings and/or function controls of the electronic device, and may include, but is not limited to, a mouse, a keyboard, a touch screen, a track pad, a track ball, a joystick, a microphone, and/or a remote controller. Output unit 507 may be any type of device capable of presenting information and may include, but is not limited to, a display, speakers, a video/audio output terminal, a vibrator, and/or a printer. The storage unit 508 may include, but is not limited to, a magnetic disk, an optical disk. The communication unit 509 allows the electronic device 500 to exchange information/data with other devices via a computer network, such as the internet, and/or various telecommunications networks, and may include, but is not limited to, modems, network cards, infrared communication devices, wireless communication transceivers and/or chipsets, such as bluetooth (TM) devices, 802.11 devices, WiFi devices, WiMax devices, cellular communication devices, and/or the like.
The computing unit 501 may be a variety of general-purpose and/or special-purpose processing components having processing and computing capabilities. Some examples of the computing unit 501 include, but are not limited to, a Central Processing Unit (CPU), a Graphics Processing Unit (GPU), various dedicated Artificial Intelligence (AI) computing chips, various computing units running machine learning model algorithms, a Digital Signal Processor (DSP), and any suitable processor, controller, microcontroller, and so forth. The computing unit 501 performs the various methods and processes described above, such as the method 200 and its variants. For example, in some embodiments, method 200, variations thereof, and so forth, may be implemented as a computer software program tangibly embodied in a machine-readable medium, such as storage unit 508. In some embodiments, part or all of the computer program may be loaded and/or installed onto the electronic device 500 via the ROM 502 and/or the communication unit 509. One or more steps of the method 200 described above and variations thereof may be performed when the computer program is loaded into RAM 503 and executed by the computing unit 501. Alternatively, in other embodiments, the computing unit 501 may be configured to perform the method 200, variations thereof, and so forth, in any other suitable manner (e.g., by way of firmware).
Various implementations of the systems and techniques described here above may be implemented in digital electronic circuitry, integrated circuitry, Field Programmable Gate Arrays (FPGAs), Application Specific Integrated Circuits (ASICs), Application Specific Standard Products (ASSPs), system on a chip (SOCs), Complex Programmable Logic Devices (CPLDs), computer hardware, firmware, software, and/or combinations thereof. These various embodiments may include: implemented in one or more computer programs that are executable and/or interpretable on a programmable system including at least one programmable processor, which may be special or general purpose, receiving data and instructions from, and transmitting data and instructions to, a storage system, at least one input device, and at least one output device.
Program code for implementing the methods of the present disclosure may be written in any combination of one or more programming languages. These program codes may be provided to a processor or controller of a general purpose computer, special purpose computer, or other programmable data processing apparatus, such that the program codes, when executed by the processor or controller, cause the functions/operations specified in the flowchart and/or block diagram to be performed. The program code may execute entirely on the machine, partly on the machine, as a stand-alone software package partly on the machine and partly on a remote machine or entirely on the remote machine or server.
In the context of this disclosure, a machine-readable medium may be a tangible medium that can contain, or store a program for use by or in connection with an instruction execution system, apparatus, or device. The machine-readable medium may be a machine-readable signal medium or a machine-readable storage medium. A machine-readable medium may include, but is not limited to, an electronic, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, or device, or any suitable combination of the foregoing. More specific examples of a machine-readable storage medium would include an electrical connection based on one or more wires, a portable computer diskette, a hard disk, a Random Access Memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or flash memory), an optical fiber, a portable compact disc read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the foregoing.
To provide for interaction with a user, the systems and techniques described here can be implemented on a computer having: a display device (e.g., a CRT (cathode ray tube) or LCD (liquid crystal display) monitor) for displaying information to a user; and a keyboard and a pointing device (e.g., a mouse or a trackball) by which a user can provide input to the computer. Other kinds of devices may also be used to provide for interaction with a user; for example, feedback provided to the user can be any form of sensory feedback (e.g., visual feedback, auditory feedback, or tactile feedback); and input from the user may be received in any form, including acoustic, speech, or tactile input.
The systems and techniques described here can be implemented in a computing system that includes a back-end component (e.g., as a data server), or that includes a middleware component (e.g., an application server), or that includes a front-end component (e.g., a user computer having a graphical user interface or a web browser through which a user can interact with an implementation of the systems and techniques described here), or any combination of such back-end, middleware, or front-end components. The components of the system can be interconnected by any form or medium of digital data communication (e.g., a communication network). Examples of communication networks include: local Area Networks (LANs), Wide Area Networks (WANs), and the Internet.
The computer system may include clients and servers. A client and server are generally remote from each other and typically interact through a communication network. The relationship of client and server arises by virtue of computer programs running on the respective computers and having a client-server relationship to each other. The server may be a cloud server, a server of a distributed system, or a server with a combined blockchain.
It should be understood that various forms of the flows shown above may be used, with steps reordered, added, or deleted. For example, the steps described in the present disclosure may be performed in parallel, sequentially or in different orders, and are not limited herein as long as the desired results of the technical solutions disclosed in the present disclosure can be achieved.
Although embodiments or examples of the present disclosure have been described with reference to the accompanying drawings, it is to be understood that the above-described methods, systems and apparatus are merely exemplary embodiments or examples and that the scope of the present invention is not limited by these embodiments or examples, but only by the claims as issued and their equivalents. Various elements in the embodiments or examples may be omitted or may be replaced with equivalents thereof. Further, the steps may be performed in an order different from that described in the present disclosure. Further, various elements in the embodiments or examples may be combined in various ways. It is important that as technology evolves, many of the elements described herein may be replaced with equivalent elements that appear after the present disclosure.
Claims (11)
1. A method for determining a human pose, comprising:
acquiring video data, wherein the video data comprises at least two video frames;
detecting one or more human keypoints for a first video frame of the at least two video frames;
determining an original human bounding box based on the one or more human keypoints detected in the first video frame;
determining a transverse expansion coefficient and a longitudinal expansion coefficient based on the transverse size and the longitudinal size of the original human body surrounding frame;
expanding the lateral dimension of the original body bounding box based on the lateral expansion coefficient and expanding the longitudinal dimension of the original body bounding box based on the longitudinal expansion coefficient to obtain an updated body bounding box;
detecting one or more human keypoints in a second video frame of the at least two video frames based on the updated human bounding box, the second video frame being located after the first video frame; and
determining a human pose based at least on the human keypoints detected in the first video frame and in the second video frame.
2. The method of claim 1, wherein determining a lateral expansion coefficient and a vertical expansion coefficient based on the lateral dimension and the vertical dimension of the original human body bounding box comprises:
in response to determining that the ratio of the lateral dimension to the longitudinal dimension is greater than a first value, determining a first lateral expansion coefficient and a first longitudinal expansion coefficient, wherein the first lateral expansion coefficient is less than the first longitudinal expansion coefficient.
3. The method of claim 2, wherein determining the lateral expansion coefficient and the vertical expansion coefficient based on the lateral dimension and the vertical dimension of the original human body bounding box comprises:
in response to determining that the ratio of the lateral dimension to the longitudinal dimension is less than a second value, determining a second lateral expansion coefficient and a second longitudinal expansion coefficient, wherein the second lateral expansion coefficient is less than the second longitudinal expansion coefficient, and wherein the second value is less than the first value.
4. The method of claim 3, wherein determining the lateral expansion coefficient and the vertical expansion coefficient based on the lateral dimension and the vertical dimension of the original human body bounding box comprises:
determining a third lateral expansion coefficient and a third longitudinal expansion coefficient in response to determining that the ratio of the lateral dimension to the longitudinal dimension is between the first value and the second value, wherein the third lateral expansion coefficient is equal to the third longitudinal expansion coefficient.
5. An apparatus for determining a pose of a human body, comprising:
a video data acquisition unit for acquiring video data, the video data including at least two video frames;
a first human body key point detection unit for detecting one or more human body key points for a first video frame of the at least two video frames;
an original human body enclosure frame determining unit, configured to determine an original human body enclosure frame based on the one or more human body key points detected in the first video frame;
the expansion coefficient determining unit is used for determining a transverse expansion coefficient and a longitudinal expansion coefficient based on the transverse size and the longitudinal size of the original human body surrounding frame;
a human body bounding box updating unit, configured to expand the lateral size of the original human body bounding box based on the lateral expansion coefficient and expand the longitudinal size of the original human body bounding box based on the longitudinal expansion coefficient to obtain an updated human body bounding box;
a second human keypoints detection unit for detecting one or more human keypoints in a second video frame of the at least two video frames based on the updated human bounding box, the second video frame being located after the first video frame; and
a human body posture determination unit for determining a human body posture based on at least the human body key points detected in the first video frame and the second video frame.
6. The apparatus of claim 5, wherein the expansion coefficient determining unit comprises:
means for determining a first lateral expansion coefficient and a first longitudinal expansion coefficient in response to determining that a ratio of the lateral dimension to the longitudinal dimension is greater than a first value, wherein the first lateral expansion coefficient is less than the first longitudinal expansion coefficient.
7. The apparatus of claim 6, wherein the expansion coefficient determining unit comprises:
means for determining a second lateral expansion coefficient and a second longitudinal expansion coefficient in response to determining that the ratio of the lateral dimension to the longitudinal dimension is less than a second value, wherein the second lateral expansion coefficient is less than the second longitudinal expansion coefficient, and wherein the second value is less than the first value.
8. The apparatus of claim 7, wherein the expansion coefficient determining unit comprises:
means for determining a third lateral expansion coefficient and a third longitudinal expansion coefficient in response to determining that the ratio of the lateral dimension to the longitudinal dimension is between the first value and the second value, wherein the third lateral expansion coefficient is equal to the third longitudinal expansion coefficient.
9. An electronic device, comprising:
at least one processor; and
a memory communicatively coupled to the at least one processor; wherein
The memory stores instructions executable by the at least one processor to enable the at least one processor to perform the method of any one of claims 1-4.
10. A non-transitory computer readable storage medium having stored thereon computer instructions for causing the computer to perform the method of any one of claims 1-4.
11. A computer program product comprising a computer program, wherein the computer program realizes the method of any one of claims 1-4 when executed by a processor.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111387515.8A CN114092556A (en) | 2021-11-22 | 2021-11-22 | Method, apparatus, electronic device, medium for determining human body posture |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111387515.8A CN114092556A (en) | 2021-11-22 | 2021-11-22 | Method, apparatus, electronic device, medium for determining human body posture |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114092556A true CN114092556A (en) | 2022-02-25 |
Family
ID=80302839
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111387515.8A Pending CN114092556A (en) | 2021-11-22 | 2021-11-22 | Method, apparatus, electronic device, medium for determining human body posture |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114092556A (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116228867A (en) * | 2023-03-15 | 2023-06-06 | 北京百度网讯科技有限公司 | Pose determination method, pose determination device, electronic equipment and medium |
Citations (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20130342671A1 (en) * | 2012-06-25 | 2013-12-26 | Imimtek, Inc | Systems and methods for tracking human hands using parts based template matching within bounded regions |
US20160203525A1 (en) * | 2015-01-12 | 2016-07-14 | Ebay Inc. | Joint-based item recognition |
CN108062526A (en) * | 2017-12-15 | 2018-05-22 | 厦门美图之家科技有限公司 | A kind of estimation method of human posture and mobile terminal |
CN109145867A (en) * | 2018-09-07 | 2019-01-04 | 北京旷视科技有限公司 | Estimation method of human posture, device, system, electronic equipment, storage medium |
US20190026538A1 (en) * | 2017-07-21 | 2019-01-24 | Altumview Systems Inc. | Joint face-detection and head-pose-angle-estimation using small-scale convolutional neural network (cnn) modules for embedded systems |
CN109684920A (en) * | 2018-11-19 | 2019-04-26 | 腾讯科技(深圳)有限公司 | Localization method, image processing method, device and the storage medium of object key point |
US10296102B1 (en) * | 2018-01-31 | 2019-05-21 | Piccolo Labs Inc. | Gesture and motion recognition using skeleton tracking |
CN109858430A (en) * | 2019-01-28 | 2019-06-07 | 杭州电子科技大学 | A kind of more people's attitude detecting methods based on intensified learning optimization |
CN111259751A (en) * | 2020-01-10 | 2020-06-09 | 北京百度网讯科技有限公司 | Video-based human behavior recognition method, device, equipment and storage medium |
CN112651291A (en) * | 2020-10-01 | 2021-04-13 | 新加坡依图有限责任公司(私有) | Video-based posture estimation method, device, medium and electronic equipment |
US20210118169A1 (en) * | 2019-10-17 | 2021-04-22 | Objectvideo Labs, Llc | Scaled human video tracking |
CN113591683A (en) * | 2021-07-28 | 2021-11-02 | 北京百度网讯科技有限公司 | Attitude estimation method, attitude estimation device, electronic equipment and storage medium |
-
2021
- 2021-11-22 CN CN202111387515.8A patent/CN114092556A/en active Pending
Patent Citations (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20130342671A1 (en) * | 2012-06-25 | 2013-12-26 | Imimtek, Inc | Systems and methods for tracking human hands using parts based template matching within bounded regions |
US20160203525A1 (en) * | 2015-01-12 | 2016-07-14 | Ebay Inc. | Joint-based item recognition |
US20190026538A1 (en) * | 2017-07-21 | 2019-01-24 | Altumview Systems Inc. | Joint face-detection and head-pose-angle-estimation using small-scale convolutional neural network (cnn) modules for embedded systems |
CN108062526A (en) * | 2017-12-15 | 2018-05-22 | 厦门美图之家科技有限公司 | A kind of estimation method of human posture and mobile terminal |
US10296102B1 (en) * | 2018-01-31 | 2019-05-21 | Piccolo Labs Inc. | Gesture and motion recognition using skeleton tracking |
CN109145867A (en) * | 2018-09-07 | 2019-01-04 | 北京旷视科技有限公司 | Estimation method of human posture, device, system, electronic equipment, storage medium |
CN109684920A (en) * | 2018-11-19 | 2019-04-26 | 腾讯科技(深圳)有限公司 | Localization method, image processing method, device and the storage medium of object key point |
CN109858430A (en) * | 2019-01-28 | 2019-06-07 | 杭州电子科技大学 | A kind of more people's attitude detecting methods based on intensified learning optimization |
US20210118169A1 (en) * | 2019-10-17 | 2021-04-22 | Objectvideo Labs, Llc | Scaled human video tracking |
CN111259751A (en) * | 2020-01-10 | 2020-06-09 | 北京百度网讯科技有限公司 | Video-based human behavior recognition method, device, equipment and storage medium |
CN112651291A (en) * | 2020-10-01 | 2021-04-13 | 新加坡依图有限责任公司(私有) | Video-based posture estimation method, device, medium and electronic equipment |
CN113591683A (en) * | 2021-07-28 | 2021-11-02 | 北京百度网讯科技有限公司 | Attitude estimation method, attitude estimation device, electronic equipment and storage medium |
Non-Patent Citations (1)
Title |
---|
新知互动编著: "CORELDRAW X3安全手册+特效实例", vol. 978, 中国青年出版社, pages: 292 - 295 * |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116228867A (en) * | 2023-03-15 | 2023-06-06 | 北京百度网讯科技有限公司 | Pose determination method, pose determination device, electronic equipment and medium |
CN116228867B (en) * | 2023-03-15 | 2024-04-05 | 北京百度网讯科技有限公司 | Pose determination method, pose determination device, electronic equipment and medium |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112857268A (en) | Object area measuring method, device, electronic device and storage medium | |
CN116228867B (en) | Pose determination method, pose determination device, electronic equipment and medium | |
CN115511779B (en) | Image detection method, device, electronic equipment and storage medium | |
CN114723949A (en) | Three-dimensional scene segmentation method and method for training segmentation model | |
CN115601555A (en) | Image processing method and apparatus, device and medium | |
CN114092556A (en) | Method, apparatus, electronic device, medium for determining human body posture | |
CN115222598A (en) | Image processing method, apparatus, device and medium | |
CN114913549B (en) | Image processing method, device, equipment and medium | |
CN114510308B (en) | Method, device, equipment and medium for storing application page by mobile terminal | |
CN115797660A (en) | Image detection method, image detection device, electronic equipment and storage medium | |
CN115578501A (en) | Image processing method, image processing device, electronic equipment and storage medium | |
CN115393514A (en) | Training method of three-dimensional reconstruction model, three-dimensional reconstruction method, device and equipment | |
CN115359309A (en) | Training method, device, equipment and medium of target detection model | |
CN114429678A (en) | Model training method and device, electronic device and medium | |
CN114494797A (en) | Method and apparatus for training image detection model | |
CN114596476A (en) | Key point detection model training method, key point detection method and device | |
CN113627534A (en) | Method and device for identifying type of dynamic image and electronic equipment | |
CN115423827B (en) | Image processing method, image processing device, electronic equipment and storage medium | |
CN115345981B (en) | Image processing method, image processing device, electronic equipment and storage medium | |
CN115359194B (en) | Image processing method, image processing device, electronic equipment and storage medium | |
CN115512131B (en) | Image detection method and training method of image detection model | |
CN113284484B (en) | Model training method and device, voice recognition method and voice synthesis method | |
CN115578451B (en) | Image processing method, training method and device of image processing model | |
CN114882331A (en) | Image processing method, apparatus, device and medium | |
CN114005138A (en) | Image processing method, image processing apparatus, electronic device, and medium |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20220225 |