WO2020155971A1 - 基于用户的姿态变化控制虚拟对象 - Google Patents
基于用户的姿态变化控制虚拟对象 Download PDFInfo
- Publication number
- WO2020155971A1 WO2020155971A1 PCT/CN2019/128805 CN2019128805W WO2020155971A1 WO 2020155971 A1 WO2020155971 A1 WO 2020155971A1 CN 2019128805 W CN2019128805 W CN 2019128805W WO 2020155971 A1 WO2020155971 A1 WO 2020155971A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- user
- key point
- size
- determining
- parameter
- 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.)
- Ceased
Links
Images
Classifications
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F13/00—Video games, i.e. games using an electronically generated display having two or more dimensions
- A63F13/55—Controlling game characters or game objects based on the game progress
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F13/00—Video games, i.e. games using an electronically generated display having two or more dimensions
- A63F13/40—Processing input control signals of video game devices, e.g. signals generated by the player or derived from the environment
- A63F13/42—Processing input control signals of video game devices, e.g. signals generated by the player or derived from the environment by mapping the input signals into game commands, e.g. mapping the displacement of a stylus on a touch screen to the steering angle of a virtual vehicle
- A63F13/428—Processing input control signals of video game devices, e.g. signals generated by the player or derived from the environment by mapping the input signals into game commands, e.g. mapping the displacement of a stylus on a touch screen to the steering angle of a virtual vehicle involving motion or position input signals, e.g. signals representing the rotation of an input controller or a player's arm motions sensed by accelerometers or gyroscopes
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F13/00—Video games, i.e. games using an electronically generated display having two or more dimensions
- A63F13/20—Input arrangements for video game devices
- A63F13/21—Input arrangements for video game devices characterised by their sensors, purposes or types
- A63F13/213—Input arrangements for video game devices characterised by their sensors, purposes or types comprising photodetecting means, e.g. cameras, photodiodes or infrared cells
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F13/00—Video games, i.e. games using an electronically generated display having two or more dimensions
- A63F13/20—Input arrangements for video game devices
- A63F13/22—Setup operations, e.g. calibration, key configuration or button assignment
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F13/00—Video games, i.e. games using an electronically generated display having two or more dimensions
- A63F13/60—Generating or modifying game content before or while executing the game program, e.g. authoring tools specially adapted for game development or game-integrated level editor
- A63F13/67—Generating or modifying game content before or while executing the game program, e.g. authoring tools specially adapted for game development or game-integrated level editor adaptively or by learning from player actions, e.g. skill level adjustment or by storing successful combat sequences for re-use
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/011—Arrangements for interaction with the human body, e.g. for user immersion in virtual reality
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/017—Gesture based interaction, e.g. based on a set of recognized hand gestures
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/03—Arrangements for converting the position or the displacement of a member into a coded form
- G06F3/0304—Detection arrangements using opto-electronic means
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/60—Analysis of geometric attributes
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; 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 OR CALCULATING; COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V40/00—Recognition of biometric, human-related or animal-related patterns in image or video data
- G06V40/10—Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V40/00—Recognition of biometric, human-related or animal-related patterns in image or video data
- G06V40/10—Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
- G06V40/16—Human faces, e.g. facial parts, sketches or expressions
- G06V40/161—Detection; Localisation; Normalisation
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V40/00—Recognition of biometric, human-related or animal-related patterns in image or video data
- G06V40/20—Movements or behaviour, e.g. gesture recognition
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F13/00—Video games, i.e. games using an electronically generated display having two or more dimensions
- A63F13/80—Special adaptations for executing a specific game genre or game mode
- A63F13/816—Athletics, e.g. track-and-field sports
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F2300/00—Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
- A63F2300/10—Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterized by input arrangements for converting player-generated signals into game device control signals
- A63F2300/1087—Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterized by input arrangements for converting player-generated signals into game device control signals comprising photodetecting means, e.g. a camera
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; 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
- G06T2207/30201—Face
Definitions
- the present disclosure relates to image processing technology, and particularly relates to controlling virtual objects according to a user's posture change.
- Somatosensory games generally require users to wear somatosensory devices and control the game through the user's body movements. In the course of the game, the control of the virtual character played by the user will be involved. For example, by using a somatosensory device to sense the movement of the user's limbs, the movement of the virtual object corresponding to the user can be controlled.
- the embodiments of the present disclosure expect to provide a method, terminal, and storage medium for controlling virtual objects.
- a method for controlling a virtual object includes: collecting multiple images of a user; determining a posture change parameter of the user’s body posture according to the multiple images; and controlling according to the posture change parameter The virtual object corresponding to the user.
- the posture change parameter includes a squat parameter
- the control of the virtual object corresponding to the user according to the posture change parameter includes: determining a bounce parameter of the virtual object bounce according to the squat parameter; The bounce parameter controls the bounce of the virtual object.
- the squat parameter includes at least one of squat time and squat amplitude.
- the bounce parameter includes at least one of the following: the accumulating time of the bounce force; the bounce force; the accumulating speed of the bounce force; the bounce distance.
- the determining the posture change parameter of the posture change of the user according to the multiple images includes: detecting the first key of the first part of the user in the first image of the multiple images Point; detecting the second key point of the first part in the second image of the plurality of images; determining the posture change parameter according to the first key point and the second key point.
- the first part is the face of the user
- the first key point is a first face key point
- the second key point is a second face key point
- determining the posture change parameter includes: determining a first face frame according to the first face key point; and determining the first face frame according to the second face key point Two face frames; determining the posture change parameter according to the relative position of the first face frame and the second face frame.
- the determining the posture change parameter according to the relative position of the first face frame and the second face frame includes: if the first face frame and the second face frame are in The position change amount in the preset direction exceeds the preset threshold, and it is determined that the posture of the user in the preset direction has changed.
- the position change amount of the first face frame and the second face frame in the preset direction exceeds a preset threshold, it is determined that the posture of the user in the preset direction has changed , Including at least one of the following: if the vertical drop of the first face frame exceeds the drop threshold value in the second face frame, determining that the user squats; if the first face frame The rising amount in the vertical direction of the second face frame exceeds a rising threshold, and it is determined that the user gets up.
- the determining the posture change parameter according to the first key point and the second key point includes: determining the first key point and the second key point according to the first key point and the second key point.
- the local size change in a preset direction; and the posture change parameter is determined according to the size change.
- the determining the posture change parameter according to the size change includes at least one of the following: if the size of the first part in the preset direction is reduced, determining that the user squats; if The size of the first part in the preset direction increases, and it is determined that the user gets up.
- determining that the user squats includes: if the size reduction value is greater than a reduction threshold, determining that the user squats; or If the size of the first part in the preset direction increases, determining that the user gets up includes: if the size increase value is greater than an increase threshold, determining that the user gets up.
- the first part is the torso of the user
- the first key point is the first torso key point
- the second key point is the second torso key point
- Point and the second key point determining the size change of the first part in a preset direction, including: determining a first torso size in a predetermined direction based on the first torso key point; and based on the first torso key point
- Two torso key points determine the second torso size in the predetermined direction; determine the change of the torso size according to the first torso size and the second torso size.
- the first part is a limb of the user, the first key point is a first limb key point, and the second key point is a second limb key point; according to the first key point Point and the second key point, determining the size change of the first part in a preset direction, including: determining a first limb size in a predetermined direction based on the first limb key point; based on the first limb key point For the key points of the two limbs, the second limb size in a predetermined direction is determined; and the change of the limb size is determined according to the first limb size and the second limb size.
- the determining the posture change parameter of the posture change of the user according to the multiple images further includes: determining the posture change parameter of the second part of the user according to the multiple images; Controlling the virtual object corresponding to the user according to the posture change parameter includes: controlling the bounce direction of the virtual object according to the posture change parameter of the second part.
- the posture change parameter of the second part includes at least one of the following: the orientation of the face and the extension direction of the upper limbs.
- the method further includes: displaying an interface containing a human contour frame; detecting whether the first area corresponding to the user in the interface and the second area corresponding to the human contour frame satisfy a preset relative position relationship; If the preset relative position relationship is satisfied, the operation of collecting multiple images of the user is performed.
- a device for controlling a virtual object includes: a collection module for collecting multiple images of a user; a determining module for determining a change in the posture of the user based on the multiple images Posture change parameter; a control module, used to control the virtual object corresponding to the user according to the posture change parameter.
- a machine-readable storage medium stores machine-executable instructions; after the machine-executable instructions are executed by a processor, the machine-readable instructions can implement any of the foregoing technical solutions. method.
- a terminal includes: a storage medium; a processor, connected to the storage medium, configured to execute any of the foregoing technical solutions by executing machine executable instructions stored on the storage medium Provided method.
- a computer program product includes computer-executable instructions; when the computer-executable instructions are executed, the method provided by any of the foregoing technical solutions can be implemented.
- the technical solution provided by the embodiments of the present disclosure collects images, obtains the posture change parameters of the user's posture change based on the images, and uses the posture change parameters to control the virtual object corresponding to the user. In this way, the detected user posture can be used to control the virtual object, which can eliminate the need to use dedicated somatosensory equipment and reduce hardware investment.
- FIG. 1 is a schematic flowchart of a first virtual object control method provided by an embodiment of the disclosure.
- FIG. 2 is a schematic flowchart of a second virtual object control method provided by an embodiment of the disclosure.
- FIG. 3 is a schematic flowchart of a third method for controlling virtual objects provided by an embodiment of the present disclosure.
- FIG. 4 is a schematic flowchart of a fourth virtual object control method provided by an embodiment of the disclosure.
- FIG. 5 is a schematic diagram of the effect of the game start interface provided by an embodiment of the disclosure.
- FIG. 6 is a schematic diagram of the effect of the game reminder interface provided by an embodiment of the disclosure.
- FIG. 10 is a schematic diagram of a display effect of a game process interface provided by an embodiment of the disclosure.
- FIG. 11 is a schematic diagram of a display effect of another game end interface provided by an embodiment of the disclosure.
- FIG. 12 is a schematic structural diagram of an apparatus provided by an embodiment of the disclosure.
- FIG. 13 is a schematic structural diagram of another terminal provided by an embodiment of the disclosure.
- an embodiment of the present disclosure provides a method for controlling a virtual object, including: Step S110: Collect multiple images of a user; Step S120: Determine the posture of the user's posture change based on the multiple images Change the parameter; Step S130: Control the virtual object corresponding to the user according to the posture change parameter.
- the method for controlling virtual objects may be used in a terminal, and the terminal may be a game terminal or a large electronic device, for example, a smart TV or an advertising device.
- the method for controlling the virtual object will be described by taking the terminal as the game terminal and the virtual object as the game character as an example.
- the terminal includes or is connected with an image acquisition module, which is capable of image acquisition of the user, and the user's image is included in the acquired image.
- the image collected in step S110 may be a 2D image and/or a 3D image; the 2D image may be a flat RGB image or a YUV image.
- the 3D image may include: a 2D image and a depth image corresponding to the 2D image; the pixel value of the depth image is a depth value representing the distance between the user and the image acquisition module.
- the user's posture change in the 2D plane can be determined based on the 2D image, and if the image is a 3D image, it can be known that the user is in the 3D space based on the 2D image and depth image contained in the 3D image The posture changes within.
- the user's posture change is determined according to the collected images.
- the posture change includes at least but not limited to the posture change of the trunk; in other embodiments, the posture change may also include at least the posture change of the lower limbs.
- the posture change parameter may be various parameters indicating the posture change of the user, for example, a parameter indicating the posture change of the trunk, and/or a parameter indicating the posture change of the lower limbs.
- the attitude change parameters include one or more of the following: a time parameter of attitude change; an amplitude parameter of attitude change; a direction parameter of attitude change; and a frequency parameter of attitude change.
- one of the posture change parameters may be used to control one control dimension of the game character. In other embodiments, a plurality of the posture change parameters are jointly used for the control of one control dimension of the game character.
- step S130 in the embodiment of the present disclosure the game character corresponding to the user is controlled according to the posture change parameter.
- the step S130 may include one or more of the following: controlling the movement of the game character in the game scene; controlling the expression change of the game character; controlling the change of the costume and/or props of the game character; The posture changes of the game characters are described.
- the game may be a bounce game, and the game character is a bouncer of the bounce game. Therefore, the step S130 may include: controlling the bounce of the game character according to the posture change parameter.
- the game is not limited to a bounce game, and the game may also be a runaway game including bounce, a race walking game, and/or a racing game.
- the control of the game character can be achieved.
- users can play somatosensory games without wearing special somatosensory equipment.
- it saves the user the cost of purchasing a dedicated somatosensory device; in the second aspect, the user does not need to wear the somatosensory device, which can improve the user experience; in the third aspect, compared to the game control with only fingers, the user can use body motion Perform game control.
- the step S120 may include: determining a squat parameter indicating the user's squat according to the multiple images.
- the posture change corresponding to the posture change parameter includes at least squatting. This squat is mainly achieved by changing the height of the body in the vertical direction by bending the knees.
- the learning model is used to detect the image to determine whether the user performs squatting or the like.
- a deep learning model or a machine learning model is used to detect the key points of the user imaging in the image, and the squat parameters are determined based on the key points.
- the key points include but are not limited to: contour key points; skeleton key points.
- the contour key points are preset points on the contour of the user's body surface.
- the contour key points include: head contour key points, arm contour key points, hand contour key points, shoulder contour key points, leg contour key points, waist contour key points and/or foot contour key points.
- the key points of the head contour include one or more of the following: key points on the top of the head, key points on the tip of the nose, key points on the chin, key points on the apple muscle, and key points on the lips.
- the arm contour key points include one or more of the following: wrist contour key points, elbow contour key points, arm root contour key points, and the midpoint between the wrist contour key point and the elbow contour key point The midpoint key point of the lower arm contour and the midpoint key point of the upper arm at the midpoint between the key point of the elbow contour and the key point of the arm root contour.
- the key points of the hand contour include one or more of the following: key points on the tip of the hand and key points on the midpoint of the palm.
- the key points of the shoulder contour include one or more of the following: a shoulder intersection key point at the intersection of the shoulder and the head, and a shoulder at the midpoint between the arm root contour key point and the shoulder intersection key point.
- the key point of the contour midpoint is one or more of the following: a shoulder intersection key point at the intersection of the shoulder and the head, and a shoulder at the midpoint between the arm root contour key point and the shoulder intersection key point. The key point of the contour midpoint.
- the key points of the leg contour include one or more of the following: key points of the crotch, key points of the knee contour, key points of the ankle contour, key points of the outer thigh root, and key points between the key points of the knee contour and the key points of the ankle contour
- the waist contour key points include one or more of the following: N equal divisions between the outer thigh root contour key points and the arm root contour key points to generate N-1 equal division points; wherein, the N is greater than 1.
- the foot contour key points include one or more of the following: toe key points and heel key points.
- the user's contour key points can be detected to determine the posture change parameters.
- the key points may include: skeleton key points.
- the skeleton key points are key points on the human skeleton, and the skeleton key points are located inside the human body relative to the outline key points.
- the skeleton key points may include: joint key points of each joint on the skeleton, for example, shoulder joints, knee joints, ankle joints, elbow joints, cross joints and other joint points.
- the skeleton key points may also include: some predetermined bone key points, for example, pelvic key points, waist key points, neck key points, etc.
- the key point of the pelvis may be the center point of the pelvis; the key point of the waist may be the key point of the waist, and the key point of the neck may be the center point of the cervical vertebrae. If the user's posture changes, the position of the key points of the skeleton also changes. In this way, in some embodiments, the step S120 may also determine the posture change parameter by detecting the position of the skeleton key point.
- the squat parameters may be determined according to the contour key points and/or the skeleton key points.
- step S130 the game character is controlled according to the squat parameters, for example, the movement of the game character, the expression change of the game character, etc. are controlled.
- the user's squat is collected by the game device through the image acquisition module, and the squat parameters are determined from the collected images.
- the game device controls the game character on the rock according to the squat parameters determined based on the collected images, that is, controls the game character to jump from the rock to the back of the fish; the game character jumps from the rock to the back of the fish.
- the effect picture can be shown in Figure 8.
- Figures 9 and 10 are the other two frames of the game process interface based on the game interface shown in Figure 7.
- the game character is on the back of the fish. If the squat parameters are detected again, the game character will jump from the back of the fish to another rock.
- FIG. 7 is the end screen of the game, and the score of this game is 90 displayed on the end screen of the game.
- FIGs 10 and 11 also show the prompt bar of the game time.
- the prompt bar prompts the game character’s power storage parameters, such as the power storage range and power storage time; the longer the prompt bar, the power storage range and/or power storage The longer the duration, the farther or higher the bounce distance of the game character is.
- the step S130 may specifically include: determining a bounce parameter of the game character's bounce according to the squat parameter; and controlling the bounce of the game character according to the bounce parameter.
- the bounce parameter includes but is not limited to at least one of the following: bounce direction; bounce strength; bounce distance; bounce height; bounce times; bounce type, for example, bounce in place and/or bounce out of place.
- bounce direction mainly bounces up and down in the vertical plane, and does not move in the horizontal plane. Bounce off-site will have displacement changes in the horizontal plane.
- the bounce parameter of the game character is determined according to the squat parameter, and then the determined bounce parameter is used to control the bounce of the game character.
- the squat parameter includes a squat time and a squat amplitude.
- determining the bouncing parameter of the game character's bounce may include at least one of the following: determining the The bounce parameter of the game character; according to the squat amplitude, the bounce parameter of the game character is determined.
- the squat time can be the first time elapsed from the start position of the squat to the end position of the squat, or the second time elapsed from the start position of the squat to the end position and then back to the start position. time.
- the squat time may be used as one of the jumping parameters of the game character.
- the squat amplitude may be: the span that the user squats from the upright state with knees bent to the end position.
- the squat amplitude can also be used as one of the bounce parameters for controlling the bounce of the game character.
- the squat parameters may further include: a squat direction, for example, the user squats with both legs bent toward the left to form a left squat; for another example, the user squats with both legs bent toward the right to form a right squat .
- the bounce parameter of the game character is controlled according to one or more of the detected squat parameters.
- the bouncing parameter includes at least one of the following: the accumulating time of the bouncing force of the game character; the bouncing force of the game character; the accumulating speed of the bouncing force of the game character; The bounce distance of the game character.
- the bouncing parameter may include the accumulating time of the bouncing power. For example, accumulating the jumping force according to a preset accumulating speed, and the accumulating time is equal to the squatting time, so that the game character can accumulate the jumping force during the squatting time.
- the current accumulating power time is displayed on the game interface, so that the user can determine whether to continue squatting or maintaining the squatting posture according to the power accumulating time, thereby controlling the accumulation of the jumping power of the game character.
- the size of the jumping power directly determines the jumping height and/or jumping distance of the game character; in general, the greater the jumping power, the higher the jumping height and/or the greater the jumping distance of the game character.
- the first mapping relationship between the squat parameter and the accumulating time is determined in advance, for example, the first mapping relationship between the squatting time and the accumulating time can be determined according to the first mapping relationship.
- the user's squat time is mapped to the accumulating time.
- the accumulating time is equal to the squatting time, and further preferably, the accumulating time and the squatting time are synchronized.
- the storage time is A% of the storage time, and A is a positive integer less than or equal to 100.
- the bouncing parameter may be bouncing force.
- a second mapping relationship between the squat time and/or the squat amplitude and the jumping force can be established. In this way, according to the second mapping relationship and at least one of the squat time and the squat amplitude, it is easy
- the bounce force is determined; in this way, in step S130, the bounce of the ordered character can be controlled according to the bounce force.
- the accumulating time of each bounce of the game character is certain, but the accumulating speed of the bouncing force is determined according to the user's squat parameters, for example, the accumulating speed is determined according to the squat amplitude .
- the accumulating speed is determined according to the squat amplitude .
- a third mapping relationship between a squat parameter and the accumulating speed may be established, and the user's squatting parameter may be converted into the accumulating speed according to the third mapping relationship.
- the fourth mapping relationship between the squat parameter and the bounce distance is predetermined in advance.
- the squat parameter currently acquired based on the image can be converted based on the fourth mapping relationship. Is the bounce distance.
- the step S130 may determine the bounce parameter according to the detected squat parameter and the preset mapping relationship; then, control the bounce of the game character based on the bounce parameter.
- a prompt message is also formed.
- the prompt information may be a prompt column; for example, the height of the prompt column corresponds to the parameter value of the bounce parameter.
- the bounce force is used as an example for illustration. The greater the bounce force, the greater the height of the prompt column.
- the bounce force required for this bounce is represented by a hollow prompt column; the prompt column is provided with a prompt column filling that changes with the squat posture parameters, so that the user can according to the current filling height of the prompt column, Control your own squatting posture to improve the success rate, scoring rate or clearance rate of the game.
- the prompt information can also be a prompt in text form.
- the prompt text is: the ratio, and/or difference, and/or correction between the bounce parameter obtained based on the current squat parameter and the required bounce parameter information. In this way, the user can also adjust his own squat in time according to the prompt text, so as to obtain the bounce parameters required for game clearance or score.
- the step S120 may include:
- Step S121 Detect the first key point of the first part of the user in the current image
- Step S122 Determine the attitude change parameter according to the first key point.
- the step S120 may detect all the key points of the user based on the image.
- the first key of the first part of the user is obtained according to the current image. point.
- the first part may be one or more parts of the torso, head and limbs of the user.
- the current image may be a first image selected from the plurality of images.
- one frame of image can be extracted from multiple frames of images collected by the image acquisition module to perform key point detection.
- the frame drawing rule can be determined in advance. For example, it can be extracted based on the information of the key parts of the user, or it can be extracted according to a preset frequency and order, which is not limited in the present disclosure.
- step S121 may include:
- the step S122 may include: searching for a second face key point corresponding to the first face key point in the previous image based on the first face key point, and based on the first face key point and the first face key point The relative position difference of the key points of the two faces determines the posture change parameter.
- the previous image may be a second image selected from the plurality of images.
- the current image can be compared with each frame of the image in a preset time period taken before the current image.
- frame decimation processing can also be used to determine the previous image.
- the step S121 may be: detecting the first face key point in the current image; the first face key point includes, but is not limited to: the center of the face of the face Key points; key points on the tip of the nose; key points on the forehead; key points on the chin; key points on the eyes; key points on the eyebrows; key points on the hairline; key points on the top of the head.
- the first key point of the face may be: a key point of the outer contour of the face; the key point of the outer contour of the face may be 3, 4, 5, etc. multiple key points, which are connected in sequence These key points of the outer contour of the face will be the face frame.
- the posture change parameter may be determined based on the position change of the face frame. For example, the position of the face frame in the current image and the previous image is compared to obtain the relative position difference, and then based on the relative position difference, it is determined whether the user has squatted or got up.
- the position of the face frame in the current image is higher than the position of the face frame in the previous image, it can be considered that the user is getting up; if the position of the face frame in the current image is lower than the position of the face frame in the previous image, It can be considered that the user is squatting.
- the user may have some unconscious actions.
- a tolerance threshold may also be introduced in the embodiments of the present disclosure.
- the drop threshold may be: 10% of the user's face length or 10% of the face width.
- 10% is an example of a ratio, and it is not limited to this value in specific implementation.
- the ratio can also be 20% or 15%.
- a tolerance threshold can also be introduced to reduce the error caused by the user's slight tiptoe. For example, if the relative position difference between the face frame of the current frame and the face frame of the previous frame is greater than the rising threshold, it is determined that the user has got up.
- the second amplitude may be: 10% of the user's face length or 10% of the face width.
- the tolerance threshold includes the aforementioned rising threshold and falling threshold. In some embodiments, the rising threshold and the falling threshold may be equal or different.
- the user generally has a probability of tiptoeing slightly lower than the probability of bending over.
- the The probability of occurrence of the controlled body posture is determined, and the tolerance threshold is determined.
- the probability of occurrence is positively correlated with the tolerance threshold. For example, if the occurrence probability of tiptoe is lower than the occurrence probability of bending, then the rising threshold corresponding to the tiptoe is smaller than the falling threshold corresponding to the bending.
- the step S122 may include:
- Step S1221 Determine the first face frame according to the key points of the first face
- Step S1222 Determine the posture change parameter according to the relative position difference between the first face frame and the second face frame of the second face key point.
- the step S1222 may specifically include: if the position change amount of the first face frame and the second face frame in the preset direction exceeds a preset threshold, determining that the user is in the preset direction The posture changes.
- the position of the first face frame and the second face frame in a preset direction (for example, the vertical direction or the horizontal direction, where the vertical direction is perpendicular to the horizontal direction) will be determined Whether the amount of change exceeds a preset threshold, if it exceeds, it is determined that the user has a posture change; and the game character is further controlled according to the posture change.
- step S1222 may include at least one of the following:
- the rising amount of the first face frame in the vertical direction compared with the second face frame exceeds the rising threshold, it is determined that the user gets up.
- the step S121 may include: detecting the first key point of the first part in the current image.
- the step S122 may include:
- Step S1223 Determine the size change of the first part in a preset direction according to the first key point
- Step S1224 Determine the posture change parameter according to the size change.
- the first key point is a key point of the first part, for example, key points corresponding to two end points of the first part in a preset direction.
- the length of the legs and/or torso in the vertical direction will change.
- the size change of the first part in the preset direction can be determined according to the first key point, and then the posture change parameter can be easily determined based on the size change.
- the height will drop, which will be reflected in the size change.
- the height value of the current image is compared with the height value of the previous image to obtain the size change. If the size change indicates that the height value of the current image has decreased, it indicates that the user has squatted, otherwise, the user has not squatted.
- the step S1224 may include at least one of the following: if the size of the first part in the preset direction is reduced, determining that the user squats; if the first part is in the The size in the preset direction increases, and it is determined that the user gets up.
- the step S1224 includes: if the size reduction value is greater than the reduction threshold value, determining that the user squats.
- the size reduction value here is the size change corresponding to the size reduction.
- the step S1224 may further include: if the size increase value is greater than the increase threshold value, determining that the user gets up.
- the size increase value here may be the size change corresponding to the size increase.
- the size reduction value and/or the size increase value are introduced as the tolerance threshold.
- the increase threshold and the decrease threshold may be equal or different, and the specific value may be determined as needed, or may be determined according to the body size of the user presented in the image. For example, it is determined based on the height of the user when maintaining an upright posture. For another example, it is determined based on the user's body width when maintaining an upright posture. By multiplying the body size by a scale factor, the tolerance threshold corresponding to the size change can be obtained.
- the step S121 may include: detecting a first torso key point in the current image;
- the step S1223 may include: determining a first torso size in a predetermined direction based on the first torso key point; searching for a second torso key point corresponding to the first torso key point in the previous image; Determine a second torso size in the predetermined direction based on the second torso key point; determine a change in the torso size according to the first torso size and the second torso size.
- the torso is the body part with the limbs and head removed.
- step S1224 the posture change parameter is determined according to the change of the torso size.
- the step S121 may include: detecting a first limb key point in the current image;
- the step S1223 may include: determining a first limb size in a predetermined direction based on the first limb key point; searching for a second limb key point corresponding to the first limb key point in the previous image; Determine the second limb size in the predetermined direction based on the second limb key point; determine the change in the limb size according to the first limb size and the second limb size.
- the step S1224 may include: determining the posture change parameter according to the change of the limb size.
- a change in the size of a limb indicates that the size of the limb is reduced, it is determined that the user squats, etc.
- the first limb key point is a lower limb key point.
- the change in the size of the limbs may also be: the change in the length of the upper limbs in the horizontal direction.
- the step S120 further includes: determining the posture change parameter of the second part of the user according to the image;
- the step S130 may include: controlling the bounce direction of the game character according to the posture change parameter of the second part.
- the second part may be a part different from the aforementioned first part, or may be the same part as the first part.
- the attitude change parameter of the second part is also obtained, and the attitude change parameter of the second part may be different from the attitude change parameter of the first part.
- the second partial posture change parameter is used to control the bounce direction of the game character.
- the step S120 may include at least one of the following: determining the orientation of the second part of the user according to the image; and determining the stretching direction of the second part of the user according to the image.
- the bounce direction of the game character is controlled according to the user's torso orientation, head orientation, etc.
- multiple bounce paths are set in the game, and the game character can bounce in different directions at the current position.
- the bounce direction of the game character can be controlled according to the orientation of the second part.
- the second part may be the upper limb, and the stretching direction of the upper limb, for example, stretching to the left or stretching to the right, can also be used to control the bounce direction of the game character.
- the determining the orientation of the second part of the user according to the image includes: determining the orientation of the user's face according to the image; and/or,
- the determining the stretching direction of the second part of the user according to the image includes: determining the stretching direction of the upper limbs of the user according to the image.
- the method further includes: displaying an interface containing a human contour frame; and detecting whether the first area corresponding to the user in the interface and the second area corresponding to the human contour frame satisfy a preset Relative positional relationship; if the preset relative positional relationship is satisfied, start shooting multiple images of the user.
- an interface for reflecting the control process of the virtual object may be displayed on the terminal device to facilitate the user to control the virtual object.
- an interface including the outline of the human body can be displayed on the terminal device to prompt the user to prepare to start the control.
- a dashed outline of the human body is displayed on the game start interface. Before starting the game, the user can adjust his position so that the image collected by the game device is similar to the human body.
- the outline box corresponds.
- Figure 6 shows the game reminder interface when the game is officially entered after the game starts.
- the reminder interface displays reminder information to remind the user how to play the game.
- the display time of the game reminder interface is limited.
- the game device starts a display countdown from displaying the game reminder interface, and once it times out, it exits the display of the game reminder interface and officially enters the game process interface.
- the game process interface is shown in Figure 7 to Figure 10.
- the game terminal will display the game start interface and collect images at the same time. If the user is at a predetermined position, the collected image and the game start interface overlap in a predetermined manner, and the overlap ratio of the user and the second area will reach a preset value.
- the first area and the second area satisfy the preset relative position relationship, it indicates that the user has entered the game-ready state, and the game can be started at this time.
- the game starts after the preset relative position relationship is satisfied, and the game terminal switches from displaying the game start interface to displaying the game interface, and the game scene and the game character obtained in the game scene are displayed on the game interface.
- the game start interface includes: a first display layer, which contains the outline of the human body; and a second display layer, which is generated based on collected images.
- the first display layer is a transparent display layer, and the transparent display layer is transparent in a blank area.
- the second display layer is superimposed on the first display layer. Under the display layer, it can be displayed.
- the user can adjust the position of the user according to the relative position relationship between the image of the user and the contour frame of the human body, so that the image of the user is aligned with the contour frame of the human body. Meet the preset relative position relationship between them to indicate that the game is ready to start.
- the human body outline frame may be generated according to the collected image, and the second area of the human body outline frame on the game start interface is also determined by the device according to the location of the user in the collected image.
- the second area where the contour frame of the human body is located can be prioritized for the user's imaging detection, thereby speeding up the acquisition rate of subsequent posture change parameters and improving the response rate of the game terminal.
- the step S130 may include: controlling the game character to bounce in a specified direction according to the posture change parameter.
- the designated direction may be a direction determined by the game itself, and is related to the progress of the game.
- the specified direction may be the direction in which the bouncing object catching the game character is located in the game. Referring to FIG. 9, the designated direction is the direction of the game character facing the rock; referring to FIG. 7, the designated direction is the direction of the game character facing the fish.
- an embodiment of the present disclosure provides a game control device, including: a collection module 110, configured to collect multiple images of a user; a determining module 120, configured to determine the user’s The posture change parameter of the posture change; the control module 130 is used to control the virtual object corresponding to the user according to the posture change parameter.
- the acquisition module 110, the determination module 120, and the control module 130 may be program modules. After the program modules are executed by the processor, they can realize image acquisition, determination of posture change parameters, and control of virtual objects.
- the acquisition module 110, the determination module 120, and the control module 130 may be a combination of software and hardware; the combination of software and hardware may include various programmable arrays; the programmable array may be complex or Programmable array or field programmable array.
- the acquisition module 110, the determination module 120, and the control module 130 may be pure hardware modules; the pure hardware modules include, but are not limited to, application specific integrated circuits.
- the posture change parameter includes a squat parameter.
- control module 130 includes: a first determining sub-module, configured to determine a bounce parameter of the virtual object bounce according to the squat parameter; a control sub-module, configured to determine a bounce parameter of the virtual object according to the bounce parameter, Control the bounce of the virtual object.
- the squat parameter includes at least one of squat time and squat amplitude.
- the bounce parameter includes at least one of the following: the accumulating time of the bounce force; the bounce force; the accumulating speed of the bounce force; the bounce distance.
- the determining module 120 includes a detection sub-module for detecting the first key point of the first part of the user in the first image of the plurality of images, and A second key point of the first part is detected in a second image of the plurality of images; a second determination sub-module is configured to determine the posture change parameter according to the first key point and the second key point.
- the first part is the face of the user
- the first key point is a first face key point
- the second key point is a second face key point
- the second determination submodule is specifically configured to determine a first face frame according to the first face key points; determine a second face frame according to the second face key points; The relative position of the face frame and the second face frame determines the posture change parameter.
- the second determining submodule is specifically configured to determine the user if the position change amount of the first face frame and the second face frame in a preset direction exceeds a preset threshold The posture in the preset direction changes.
- the second determining submodule is specifically configured to perform at least one of the following: if the vertical drop of the first face frame is greater than the drop in the vertical direction of the second face frame A threshold is used to determine that the user squats down; if the amount of rise of the first face frame in the vertical direction from the second face frame exceeds a rising threshold, it is determined that the user gets up.
- the second determining submodule is specifically configured to determine the size change of the first part in a preset direction according to the first key point and the second key point; according to the The size change determines the posture change parameter.
- the second determining submodule is specifically configured to determine that the user squats if the size of the first part in the preset direction is reduced; if the first part is in the The size in the preset direction increases, and it is determined that the user gets up.
- the second determining submodule is further configured to determine that the user squats down if the size reduction value is greater than the reduction threshold value.
- the second determining submodule is further specifically configured to determine that the user gets up if the size increase value is greater than the increase threshold value.
- the first part is the torso of the user
- the first key point is a first torso key point
- the second key point is a second torso key point
- the second determining submodule is specifically configured to determine a first torso size in a predetermined direction based on the first torso key point; and to determine a second torso size in the predetermined direction based on a second torso key point ; Determine the change in the torso size according to the first torso size and the second torso size.
- the first part is a limb of the user
- the first key point is a first limb key point
- the second key point is a second limb key point
- the second determining sub-module is specifically configured to determine a first limb size in a predetermined direction based on the first limb key point; and determine a second limb size in the predetermined direction based on the second limb key point Limb size; according to the first limb size and the second limb size, the change of the limb size is determined.
- the first limb key point is a lower limb key point.
- the determining module 120 is further configured to determine the posture change parameters of the second part of the user according to the multiple images; the control module 130 is further configured to determine The posture change parameter of, controls the bounce direction of the virtual object.
- the posture change parameter of the second part includes at least one of the following: the orientation of the face; the extension direction of the upper limbs.
- the device further includes: a display module for displaying an interface containing a human contour frame; a detection module for detecting a first area corresponding to the user in the interface, which corresponds to the human contour frame Whether the second area meets the preset relative position relationship; the acquisition module is configured to start to collect multiple images of the user if the preset relative position relationship is satisfied.
- control module 130 is specifically configured to control the virtual object to bounce in a specified direction according to the posture change parameter.
- the algorithm returns the coordinates of the key points of the user's face (for example, the coordinates of the four points of the face frame).
- the Y value of the key points of the user's face changes more than ⁇ 10% of the face width (X1-X2), then Determined to squat/get up.
- you can also judge various actions such as raising hands, waving hands, and shaking your head.
- the algorithm returns the coordinates of the key points of the user's body, and calculates the length of each part according to the coordinates, such as height, upper body length, and thigh length, and then according to the change of the length of each part, and the ratio between the length of each part The change of determines the user's actions at this time.
- the control continues; if the jumping distance is too large or too small, the control ends and the result page is entered.
- an embodiment of the present disclosure provides a terminal, including: a storage medium 1301; a processor 1302, connected to the storage medium, and configured to execute machine executable instructions on the storage medium to be able to
- the virtual object control method provided by any of the foregoing technical solutions is implemented.
- FIG. 1 to FIG. 4 show one or more of the control methods.
- the storage medium can be various types of memory, such as random access memory, read-only memory, flash memory, and so on.
- the storage medium can be used for information storage, for example, storing machine executable instructions.
- the machine executable instructions may be various program instructions, for example, target program instructions and/or source program instructions.
- the processor may be various types of processors, for example, a central processing unit, a microprocessor, a digital signal processor, a programmable array, a digital signal processor, an application specific integrated circuit, or an image processor.
- the processor may be connected to the storage medium through a bus.
- the bus may be an integrated circuit bus or the like.
- the terminal may further include: a communication interface 1303, and the communication interface may include: a network interface, for example, a local area network interface, a transceiver antenna, and the like.
- the communication interface is also connected with the processor and can be used for information transmission and reception.
- the terminal further includes a human-computer interaction interface 1304.
- the human-computer interaction interface may include various input and output devices, such as a handle, a keyboard, and a touch screen.
- the terminal further includes a display 1305 for displaying a control interface for the virtual object.
- the embodiment of the present disclosure provides a storage medium that stores machine-executable instructions; after the machine-executable instructions are executed, they can be applied to one or more of a terminal, a database, and a first private network. For example, one or more of the control methods shown in Fig. 1 and/or Fig. 2.
- the storage medium may include various recording media with recording functions, for example, various storage media such as CD, floppy disk, hard disk, magnetic tape, optical disk, U disk, or mobile hard disk.
- the optional storage medium may be a non-transitory storage medium, and the storage medium can be read by the processor, so that the machine executable instructions stored on the storage medium are acquired and executed by the first processor.
- the control method provided by any one of the foregoing technical solutions, for example, executes the control method applied in the terminal or the control method in the application server.
- the embodiments of the present disclosure also provide a computer program product, the computer program product includes computer-executable instructions; after the computer-executable instructions are executed, the control method provided by one or more technical solutions can be realized, for example, One or more of the control methods shown in Figures 1 to 4.
- the computer program product includes a computer program tangibly contained on a computer storage medium.
- the computer program includes program code for executing the method shown in the flowchart.
- the program code may include corresponding steps for executing the method steps provided by the embodiments of the present disclosure. instruction.
- the disclosed device and method may be implemented in other ways.
- the device embodiments described above are merely illustrative.
- the division of the units is only a logical function division, and there may be other divisions in actual implementation, such as: multiple units or components can be combined, or It can be integrated into another system, or some features can be ignored or not implemented.
- the coupling, or direct coupling, or communication connection between the components shown or discussed may be indirect coupling or communication connection through some interfaces, devices or units, and may be electrical, mechanical or other forms of.
- the units described above as separate components may or may not be physically separate, and the components displayed as units may or may not be physical units, that is, they may be located in one place or distributed on multiple network units; Some or all of the units may be selected according to actual needs to achieve the objectives of the solutions of the embodiments of the present disclosure.
- the functional units in the embodiments of the present disclosure can be all integrated into one processing module, or each unit can be individually used as a unit, or two or more units can be integrated into one unit;
- the unit of can be implemented in the form of hardware, or in the form of hardware plus software functional units.
- a person of ordinary skill in the art can understand that all or part of the steps in the above method embodiments can be implemented by a program instructing relevant hardware.
- the foregoing program can be stored in a machine-readable storage medium. When the program is executed, the program is executed. Including the steps of the foregoing method embodiment; and the foregoing storage medium includes: removable storage devices, read-only memory (ROM, Read-Only Memory), random access memory (RAM, Random Access Memory), magnetic disks or optical disks, etc.
- ROM read-only memory
- RAM Random Access Memory
- magnetic disks or optical disks etc.
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Theoretical Computer Science (AREA)
- Human Computer Interaction (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Health & Medical Sciences (AREA)
- General Health & Medical Sciences (AREA)
- Oral & Maxillofacial Surgery (AREA)
- Psychiatry (AREA)
- Social Psychology (AREA)
- Geometry (AREA)
- Processing Or Creating Images (AREA)
- User Interface Of Digital Computer (AREA)
- Image Analysis (AREA)
Abstract
一种虚拟对象的控制方法及装置、终端及存储介质。所述控制方法,包括:采集用户的多个图像(S110);根据所采集的多个图像,确定所述用户的姿态变化的姿态变化参数(S120);根据姿态变化参数,控制用户对应的虚拟对象(S130)。
Description
本公开涉及图像处理技术,尤其涉及根据用户的姿态变化来控制虚拟对象。
用户可利用手机、平板电脑、可穿戴设备、智能电视或者其他电子设备进行游戏。为了方便用户控制游戏,出现了体感游戏。体感游戏一般需要用户佩戴体感设备,通过用户的肢体运动来控制游戏。在游戏过程中,会涉及到对用户所扮演的虚拟角色的控制。例如,通过使用体感设备感测用户的肢体运动,来控制用户对应的虚拟对象的动作。
发明内容
有鉴于此,本公开实施例期望提供一种虚拟对象的控制方法、终端及存储介质。
根据本公开的一个方面,一种虚拟对象的控制方法,包括:采集用户的多个图像;根据所述多个图像,确定所述用户的身体姿态变化的姿态变化参数;根据姿态变化参数,控制所述用户对应的虚拟对象。
基于上述方案,所述姿态变化参数包括下蹲参数,所述根据姿态变化参数,控制所述用户对应的虚拟对象,包括:根据所述下蹲参数,确定所述虚拟对象弹跳的弹跳参数;根据所述弹跳参数,控制所述虚拟对象的弹跳。
基于上述方案,所述下蹲参数包括下蹲时间和下蹲幅度中的至少一种。
基于上述方案,所述弹跳参数包括以下至少之一:弹跳力的蓄力时间;弹跳力;弹跳力的蓄力速度;弹跳距离。
基于上述方案,所述根据所述多个图像,确定所述用户的姿态变化的姿态变化参数,包括:在所述多个图像的第一图像中检测所述用户的第一局部的第一关键点;在所述多个图像的第二图像中检测所述第一局部的第二关键点;根据所述第一关键点和所述第二关键点,确定所述姿态变化参数。
基于上述方案,所述第一局部为所述用户的脸部,所述第一关键点为第一人脸关键点,所述第二关键点为第二人脸关键点;所述根据所述第一关键点和所述第二关键点,确定所述姿态变化参数,包括:根据所述第一人脸关键点确定出第一人脸框;根据所述第二人脸关键点,确定第二人脸框;根据所述第一人脸框与所述第二人脸框的相对位置,确定所述姿态变化参数。
基于上述方案,所述根据所述第一人脸框与所述第二人脸框的相对位置,确定所述姿态变化参数,包括:若所述第一人脸框与第二人脸框在预设方向上的位置改变量,超过预设阈值,确定所述用户在所述预设方向上的姿态发生变化。
基于上述方案,所述若所述第一人脸框与第二人脸框在预设方向上的位置改变量, 超过预设阈值,确定所述用户在所述预设方向上的姿态发生变化,包括以下至少之一:若所述第一人脸框比所述第二人脸框在竖直方向上的下降量超过下降阈值,确定所述用户下蹲;若所述第一人脸框比所述第二人脸框在所述竖直方向上的上升量超过上升阈值,确定所述用户起身。
基于上述方案,所述根据所述第一关键点和所述第二关键点,确定所述姿态变化参数,包括:根据所述第一关键点和所述第二关键点,确定所述第一局部在预设方向上的尺寸变化;根据所述尺寸变化,确定所述姿态变化参数。
基于上述方案,所述根据所述尺寸变化,确定所述姿态变化参数,包括以下至少之一:若所述第一局部在所述预设方向上的尺寸缩小,确定所述用户下蹲;若所述第一局部在所述预设方向上的尺寸增大,确定所述用户起身。
基于上述方案,所述若所述第一局部在所述预设方向上的尺寸缩小,确定所述用户下蹲,包括:若尺寸缩小值大于缩小阈值,确定所述用户下蹲;或者所述若所述第一局部在所述预设方向上的尺寸增大,确定所述用户起身,包括:若尺寸增大值大于增大阈值,确定所述用户起身。
基于上述方案,所述第一局部为所述用户的躯干,所述第一关键点为第一躯干关键点,所述第二关键点为第二躯干关键点;所述根据所述第一关键点和所述第二关键点,确定所述第一局部在预设方向上的尺寸变化,包括:基于所述第一躯干关键点,确定在预定方向上的第一躯干尺寸;基于所述第二躯干关键点,确定在所述预定方向上的第二躯干尺寸;根据所述第一躯干尺寸和所述第二躯干尺寸,确定所述躯干尺寸的变化。
基于上述方案,所述第一局部为所述用户的肢体,所述第一关键点为第一肢体关键点,所述第二关键点为第二肢体关键点;所述根据所述第一关键点和所述第二关键点,确定所述第一局部在预设方向上的尺寸变化,包括:基于所述第一肢体关键点,确定在预定方向上的第一肢体尺寸;基于所述第二肢体关键点,确定在预定方向上的第二肢体尺寸;根据所述第一肢体尺寸和第二肢体尺寸,确定肢体尺寸的变化。
基于上述方案,所述根据所述多个图像,确定所述用户的姿态变化的姿态变化参数,还包括:根据所述多个图像,确定所述用户的第二局部的姿态变化参数;所述根据姿态变化参数,控制所述用户对应的虚拟对象,包括:根据所述第二局部的姿态变化参数,控制所述虚拟对象的弹跳方向。基于上述方案,所述第二局部的姿态变化参数包括以下至少之一:人脸的朝向、上肢的伸展方向。
基于上述方案,所述方法还包括:显示包含有人体轮廓框的界面;检测所述界面中用户对应的第一区域,与所述人体轮廓框对应的第二区域是否满足预设相对位置关系;若满足所述预设相对位置关系,执行所述采集用户的多个图像的操作。
根据本公开的另一方面,一种虚拟对象的控制装置,包括:采集模块,用于采集用户的多个图像;确定模块,用于根据所述多个图像,确定所述用户的姿态变化的姿态变化参数;控制模块,用于根据姿态变化参数,控制所述用户对应的虚拟对象。
根据本公开的又一方面,一种机器可读存储介质,所述机器可读存储介质存储有机器可执行指令;所述机器可执行指令被处理器执行后,能够实现前述任意技术方案提供 的方法。
根据本公开的又一方面,一种终端,包括:存储介质;处理器,与所述存储介质连接,用于通过执行存储在所述存储介质上的机器可执行指令,能够实现前述任意技术方案提供的方法。
根据本公开的又一方面,一种计算机程序产品,其包括计算机可执行指令;所述计算机可执行指令被执行时能够实现前述任意技术方案提供的方法。
本公开实施例提供的技术方案,通过采集图像,基于图像获得用户的姿态变化的姿态变化参数,利用姿态变化参数控制用户对应的虚拟对象。如此,可利用检测到的用户姿态来进行虚拟对象的控制,能够无需使用专用的体感设备,减少硬件投入。
图1为本公开实施例提供第一种虚拟对象控制方法的流程示意图。
图2为本公开实施例提供第二种虚拟对象控制方法的流程示意图。
图3为本公开实施例提供第三种虚拟对象控制方法的流程示意图。
图4为本公开实施例提供的第四种虚拟对象控制方法的流程示意图。
图5为本公开实施例提供的游戏开始界面的效果示意图。
图6为本公开实施例提供的游戏提醒界面的效果示意图。
图7、图8及图9为本公开实施例提供的游戏过程界面的显示效果与用户的身体姿态的对应示意图。
图10为本公开实施例提供的一种游戏过程界面的显示效果示意图。
图11为本公开实施例提供的另一种游戏结束界面的显示效果示意图。
图12为本公开实施例提供的一种装置的结构示意图。
图13为本公开实施例提供的另一种终端的结构示意图。
以下结合说明书附图及具体实施例对本公开的技术方案做进一步的详细阐述。
如图1所示,本公开实施例提供一种虚拟对象的控制方法,包括:步骤S110:采集用户的多个图像;步骤S120:根据所述多个图像,确定所述用户的姿态变化的姿态变化参数;步骤S130:根据姿态变化参数,控制所述用户对应的虚拟对象。
本公开实施例提供的虚拟对象的控制方法可以用于终端中,该终端可为游戏终端或者大型电子设备,例如,智能电视或者广告设备等。在下文中,将以终端为游戏终端、虚拟对象为游戏角色为例对该虚拟对象的控制方法进行描述。
所述终端包括或连接有图像采集模组,能够对用户进行图像采集,采集获得的图像中会有用户的成像。
在步骤S110中采集的图像可为2D图像和/或3D图像;所述2D图像可为平面的RGB图像或YUV图像。所述3D图像可包括:2D图像及与2D图像对应的深度图像;所述深度图像的像素值为表征用户与图像采集模组之间距离的深度值。
若所述图像为2D图像,则可以根据2D图像确定用户在2D平面内的姿态变化,而所述图像为3D图像,则可以根据3D图像包含的2D图像和深度图像,可以知道用户在3D空间内的姿态变化。
在步骤S120中会根据采集的图像,确定用户的姿态变化。在本公开实施例中,该姿态变化,至少包括但不局限于躯干的姿态变化;在另一些实施例中,所述姿态变化还可至少包括:下肢的姿态变化。
在本公开实施例中,所述姿态变化参数可为各种指示用户的姿态变化的参数,例如,指示躯干姿态变化的参数,和/或,指示下肢姿态变化的参数。
在一些实施例中,按照不同的维度进行划分,所述姿态变化参数包括以下一种或多种:姿态变化的时间参数;姿态变化的幅度参数;姿态变化的方向参数;姿态变化的频率参数。
在一些实施例中,一个所述姿态变化参数可用于所述游戏角色的一个控制维度的控制。在另一些实施例中,多个所述姿态变化参数,共同用于所述游戏角色的一个控制维度的控制。
在本公开实施例中的步骤S130中会根据姿态变化参数,来控制用户对应的游戏角色。
所述步骤S130可包括以下一者或多者:控制所述游戏角色在游戏场景内的运动;控制所述游戏角色的神情变化;控制所述游戏角色的服饰和/或道具的变化;控制所述游戏角色的姿态变化。
在本公开实施例中,所述游戏可为弹跳游戏,所述游戏角色为弹跳游戏的弹跳者。故所述步骤S130可包括:根据所述姿态变化参数,控制所述游戏角色的弹跳。
在具体的实现过程中,所述游戏不局限于弹跳游戏,所述游戏还可以是包含弹跳的暴走游戏,竞走游戏和/或赛车游戏等。
在本公开实施例中,通过利用图像采集模组获取用户的姿态变化参数,就能够实现游戏角色的控制。如此,用户不用佩戴专用的体感设备也能玩体感游戏。第一方面,省去了用户购买专用的体感设备的花费;第二方面,用户无需佩戴体感设备,能够提升用户体验;第三方面,相对于仅通过手指进行游戏控制,用户可以通过身体运动来进行游戏控制。
在一些实施例中,所述步骤S120可包括:根据所述多个图像,确定指示所述用户的下蹲的下蹲参数。
在本公开实施例中,所述姿态变化参数所对应的姿态变化至少包括下蹲。该下蹲主要通过屈膝的方式改变身体在竖直方向上的高度来实现的。
在本公开实施例中,利用学习模型检测所述图像,确定出用户是否有执行下蹲等。 例如,利用深度学习模型或者机器学习模型,检测图像中用户成像的关键点,基于关键点确定所述下蹲参数。
所述关键点包括但不限于:轮廓关键点;骨架关键点。
所述轮廓关键点为用户的体表的轮廓上的预设点。
所述轮廓关键点包括:头部轮廓关键点、手臂轮廓关键点、手部轮廓关键点、肩部轮廓关键点、腿部轮廓关键点、腰部轮廓关键点和/或脚部轮廓关键点。
在一些实施例中,所述头部轮廓关键点包括以下一种或多种:头顶关键点、鼻尖关键点、下巴关键点、苹果肌关键点及唇部关键点。
所述手臂轮廓关键点包括以下一种或多种:手腕轮廓关键点、胳膊肘轮廓关键点、臂根轮廓关键点、位于手腕轮廓关键点与胳膊肘轮廓关键点之间的中点位置处的下臂轮廓中点关键点、以及位于胳膊肘轮廓关键点与臂根轮廓关键点之间的中点位置处的上臂中点关键点。
所述手部轮廓关键点包括以下一种或多种:手尖关键点以及手掌中点关键点。
所述肩部轮廓关键点包括以下一种或多种:位于肩部与头部交汇位置处的肩头交汇关键点以及位于臂根轮廓关键点与肩头交汇关键点之间的中点位置处的肩轮廓中点关键点。
所述腿部轮廓关键点包括以下一种或多种:裆部关键点、膝盖轮廓关键点、脚踝轮廓关键点、大腿根部外侧轮廓关键点、位于膝盖轮廓关键点与脚踝轮廓关键点之间的中点位置处的小腿轮廓中点关键点、位于膝盖内侧轮廓关键点与裆部关键点之间的中点位置处的大腿内轮廓中点关键点、以及位于膝盖外侧轮廓关键点与大腿根部外侧轮廓关键点之间的中点位置处的大腿外轮廓中点关键点。
所述腰部轮廓关键点包括以下一种或多种:将大腿根部外侧轮廓关键点与臂根轮廓关键点之间N等分,所产生的N-1个等分点;其中,所述N大于1。
所述脚部轮廓关键点包括以下一种或多种:脚尖关键点以及足跟关键点。
如用户的姿态出现了变化,用户的轮廓关键点的位置也会发生变化,故在一些实施例中,可以通过检测用户的轮廓关键点,确定所述姿态变化参数。
在还有一些实施例中,所述关键点可包括:骨架关键点。所述骨架关键点为人体骨架上的关键点,相对于轮廓关键点,骨架关键点位于人体的内部。所述骨架关键点可包括:骨架上各个关节的关节关键点,例如,肩关节、膝关节、踝关节、肘关节、跨关节等各种关节点。所述骨架关键点还可包括:一些预定骨头的关键点,例如,盆骨关键点、腰部关键点、颈部关键点等。所述盆骨关键点可为盆骨的中心点;腰部关键点可为腰部的关键点,颈部关键点可为颈椎骨的中心点等。若用户的姿态变化,则骨架关键点的位置也发生变化。如此,在一些实施例中,所述步骤S120还可以通过检测骨架关键点的位置,确定所述姿态变化参数。
例如,在所述步骤S120中,可具体根据所述轮廓关键点和/或所述骨架关键点,确定所述下蹲参数。
在步骤S130中根据下蹲参数,控制所述游戏角色,例如,控制游戏角色的运动,控制游戏角色的神情变化等。
如图7及图8所示,用户下蹲被游戏设备通过图像采集模组采集到,并从采集的图像中确定出下蹲参数。如图7所示,游戏设备根据基于所采集图像确定的下蹲参数来控制位于石头上的游戏角色,即控制游戏角色从石头上跳到鱼背上;游戏角色从石头上跳到鱼背上的效果图可如图8所示。
图9和图10是基于图7所示的游戏界面的另外两帧游戏过程界面。在图9中,游戏角色位于鱼背上,若再次检测到下蹲参数发生变化,游戏角色会从鱼背上跳到另一块石头上。
在图7至图10中显示的游戏界面上,还可以看到当前的游戏得分。在图7中游戏刚开始,游戏得分为0;在图8中由于游戏角色成功进行了一次跳跃,游戏得分涨到了10分;图9所显示的游戏界面中显示游戏得分为80,图10显示的游戏得分为85。图11为游戏的结束画面,在游戏的结束画面显示有本次游戏的得分为90。
在图10及图11中还显示有游戏时间的提示柱,提示柱提示游戏角色蓄力参数,例如,蓄力幅度和蓄力时间;若提示柱越长,则蓄力幅度和/或蓄力时长越长,则游戏角色的弹跳距离越远或弹跳距离越高。
在一些实施例中,所述步骤S130可具体包括:根据所述下蹲参数,确定游戏角色弹跳的弹跳参数;根据所述弹跳参数,控制所述游戏角色的弹跳。
所述弹跳参数包括但不限于以下至少之一:弹跳方向;弹跳力度;弹跳距离;弹跳高度;弹跳次数;弹跳类型,例如,原地弹跳和/或非原地弹跳。游戏角色原地弹跳时,主要是在竖直平面内上下弹跳,在水平面内不会运动。非原地弹跳会在水平面内有位移变化。
总之,在本公开实施例中,会根据所述下蹲参数,确定游戏角色的弹跳参数,然后利用确定的弹跳参数控制游戏角色的弹跳。
在一些实施例中,所述下蹲参数包括下蹲时间和下蹲幅度,根据所述下蹲参数,确定游戏角色弹跳的弹跳参数,可包括以下至少之一:根据下蹲时间,确定所述游戏角色的弹跳参数;根据下蹲幅度,确定所述游戏角色的弹跳参数。
该下蹲时间可为从下蹲的起始位置到下蹲的结束位置经过的第一时间,也可以是从下蹲的起始位置下蹲到结束位置然后回到起始位置经过的第二时间。
在本公开实施例中,所述下蹲时间可以作为游戏角色的弹跳参数的一种。
所述下蹲幅度可为:用户从直立状态屈膝下蹲到结束位置经过的跨度。
此处,所述下蹲幅度也可作为控制游戏角色弹跳的弹跳参数的一种。
在还有一些实施例中,所述下蹲参数还可包括:下蹲方向,例如,用户双腿朝左屈膝下蹲形成左下蹲;再例如,用户双腿朝右屈膝下蹲形成右下蹲。
总之,在本公开实施例中会根据检测到的下蹲参数中的一个或多个,控制所述游戏 角色的弹跳参数。
在一些实施例中,所述弹跳参数包括以下至少之一:所述游戏角色的弹跳力的蓄力时间;所述游戏角色的弹跳力;所述游戏角色的弹跳力的蓄力速度;所述游戏角色的弹跳距离。
游戏角色弹跳之前需要积蓄弹跳力,在本公开实施例中,所述弹跳参数可包括弹跳力的蓄力时间。例如,按照预设蓄力速度进行弹跳力的蓄力,所述蓄力时间等于所述下蹲时间,如此,实现游戏角色在下蹲时间内进行弹跳力的蓄力。
在一些实施例中,在游戏界面上显示当前已蓄力的蓄力时间,方便用户根据蓄力时间确定是否继续下蹲或者维持下蹲姿势,从而控制游戏角色的弹跳力的积蓄。弹跳力的大小,直接决定了游戏角色的弹跳高度和/或弹跳距离;一般情况下,所述弹跳力越大,则游戏角色弹跳的高度越高和/或弹跳距离越大。
例如,预先确定所述下蹲参数与所述蓄力时间的第一映射关系,具体如,所述下蹲时间和蓄力时间之间的第一映射关系,可根据所述第一映射关系将用户的下蹲时间映射为所述蓄力时间。例如,所述蓄力时间等于所述下蹲时间,进一步优选地,所述蓄力时间和所述下蹲时间同步。再例如,所述蓄力时间为A%所述蓄力时间,A为小于或等于100的正整数。
在另一些实施例中,所述弹跳参数可为弹跳力。例如,可建立下蹲时间和/或下蹲幅度与弹跳力之间的第二映射关系,如此,根据第二映射关系和所述下蹲时间和下蹲幅度的至少其中之一,就能简便确定出所述弹跳力;如此,在步骤S130中,可以根据所述弹跳力控制有序角色的弹跳。
在一些实施例中,所述游戏角色每一次弹跳的蓄力时间是一定的,但是弹跳力的蓄力速度是根据用户的下蹲参数确定的,例如,根据下蹲幅度确定所述蓄力速度。例如,可建立下蹲参数与所述蓄力速度的第三映射关系,可以根据所述第三映射关系,将用户的下蹲参数转换为所述蓄力速度。
在还有一些实施例中,事先预定了下蹲参数与弹跳距离之间的第四映射关系,在具体实现时,可以将当前基于图像获取的所述下蹲参数,基于第四映射关系,转换为所述弹跳距离。
总之,在本公开实施例中,所述步骤S130可以根据检测的下蹲参数和预设映射关系,确定出弹跳参数;然后基于弹跳参数控制游戏角色的弹跳。
在还有一些实施例中,为了方便用户确定当前弹跳参数是否能够使得游戏成功或顺利通过,还会形成提示信息。该提示信息可为提示柱;例如,提示柱的高度与弹跳参数的参数值对应,例如,以弹跳力为弹跳参数进行举例说明,弹跳力越大则提示柱的高度越大。
在一些实施例中,本次弹跳所需的弹跳力,由空心的提示柱表示;提示柱内设置有随下蹲姿态参数变化的提示柱填充,如此,用户可以根据当前提示柱填充的高度,控制自身的下蹲姿态,从而提升游戏的成功率、得分率或通关率。
所述提示信息除了提示柱以外,还可以文本形式的提示,例如,提示文本为:基于当前下蹲参数获得的弹跳参数与所需弹跳参数之间的比、和/或差、和/或校正信息。如此,用户还可以根据提示文本及时调整自身的下蹲,从而获得游戏通关或得分所需的弹跳参数。
在另一些实施例中,如图2所示,所述步骤S120可包括:
步骤S121:在当前图像中检测所述用户的第一局部的第一关键点;
步骤S122:根据所述第一关键点,确定所述姿态变化参数。
在一些实施例中,所述步骤S120可以基于图像检测用户所有的关键点,在本公开实施例中,为了降低计算复杂度,提升处理速率,根据当前图像获得用户的第一局部的第一关键点。
所述第一局部可为所述用户躯干、头部及四肢中的一个或多个部分。
如此,以第一局部的第一关键点的检测替代用户整个身体的关键点的检测,可以降低计算量,且能够实现游戏的控制。
在一些实施例中,在步骤S121中,该当前图像可以为从所述多个图像中选取的第一图像。在实际实施中,可以从图像采集模组采集的多帧图像中抽取一帧图像来进行关键点的检测。抽帧的规则可以预先确定,例如,可以基于用户的关键部位的信息进行抽取,也可以按照预设频率、顺序抽取,本公开并不进行限制。
在图像处理中,由于视频数据的数据量庞大,如果对每一帧图像数据都进行处理,则计算性能会下降。通过该抽帧处理,可以大大降低计算量。而且只要使得视频数据的刷新速度达到预定比例,例如每秒几十帧,则对用户的视觉感受几乎是实时的。因此,通过控制抽帧速度,能够确保用户良好的观感。
在一些实施例中,所述第一局部为脸部,所述步骤S121可包括:
在所述当前图像中检测第一人脸关键点;
所述步骤S122可包括:基于所述第一人脸关键点在前一图像中搜索与所述第一人脸关键点相对应的第二人脸关键点,基于第一人脸关键点和第二人脸关键点的相对位置差,确定所述姿态变化参数。
在一些实施例中,所述前一图像可以为从所述多个图像中选取的第二图像。在通过比较关键点位置来确定姿态变化参数时,可以将当前图像与在当前图像之前拍摄的预设时间段内的每帧图像进行比较。然而,为了降低运算量,在本实施例中,同样可以利用抽帧处理来确定该前一图像。
以用户的下蹲姿态进行游戏控制,在图像采集模组的采集条件不变的情况下,用户下蹲和起身会使得其脸部成像在图像中的坐标位置发生变化。故在本公开实施例中,基于该特点,所述步骤S121可为:检测当前图像中第一人脸关键点;所述第一人脸关键点包括但不限于:人脸的脸部中心的关键点;鼻尖关键点;额头关键点;下巴关键点;眼睛关键点;眉毛关键点;发际线关键点;头顶关键点。
在本公开实施例中,可以基于上述一个或多个关键点得到目前用户的人脸位置相对于前一图像中人脸位置是否在竖直平面内的高度有发生变化。
在一些实施例中,所述第一人脸关键点可为:人脸外轮廓的关键点;该人脸外轮廓关键点可为3个、4个、5个等多个关键点,依次连接这些人脸外轮廓关键点就会得到人脸框。
在本公开实施例中的步骤S122中可以基于所述人脸框的位置变化,确定所述姿态变化参数。例如,比对当前图像和前一图像中人脸框的位置,得到所述相对位置差,再基于相对位置差确定出用户是否有下蹲或者起身。
例如,当前图像中人脸框的位置高于前一图像中人脸框的位置,则可认为用户在起身;若当前图像中人脸框的位置低于前一图像中人脸框的位置,则可认为用户在下蹲。
在一些实施例中,用户可能会有一些无意识的动作,为了减少这些无意识动作对游戏控制的干扰,在本公开实施例中还可以引入了容差阈值。
例如,确定用户是否有下蹲,而非点头或微略弯腰导致的人脸框的位置下降。在当前图像的人脸框比前一图像的人脸框降低的幅度,达到下降阈值时,确定用户有下蹲。例如,该下降阈值可为:用户脸长的10%或者脸宽的10%等取值。此处的10%为比值的举例,具体实现时,不局限于该取值。例如,该比值还可以为20%或15%等取值。
再例如,确定用户是否有起身,同样可以引入容差阈值,减少用户轻微踮脚等导致的误差。例如,若当前帧的人脸框比前一帧图像的人脸框的相对位置差值大于上升阈值时,确定用户有起身。例如,第二幅度可为:用户脸长的10%或者脸宽的10%等取值。
所述容差阈值包括前述上升阈值和下降阈值。在一些实施例中,所述上升阈值和下降阈值可相等或不等。
用户在游戏的过程中,一般踮脚的概率可能略低于弯腰的概率,此时,为了减少无控制游戏角色的弯腰或者踮脚导致的误控,在本公开实施例中,根据可能导致误控的身体姿态的出现概率,确定所述容差阈值。可选地,出现概率与所述容差阈值正相关。例如,踮脚的出现概率低于弯腰的出现概率,则所述踮脚对应的上升阈值小于所述弯腰对应的下降阈值。
故在一些实施例中,如图3所示,所述步骤S122可包括:
步骤S1221:根据所述第一人脸关键点确定出第一人脸框;
步骤S1222:根据所述第一人脸框与所述第二人脸关键点的第二人脸框的相对位置差,确定所述姿态变化参数。
例如,所述步骤S1222具体可包括:若所述第一人脸框与第二人脸框在预设方向上的位置改变量,超过预设阈值,确定所述用户在所述预设方向上的姿态发生变化。
在本公开实施例中,为了避免用户的身体无意识的姿态变化导致的误操作。在本公开实施例中,会确定所述第一人脸框和第二人脸框的在预设方向上(例如,竖直方 向或水平方向,其中,竖直方向垂直于水平方向)的位置改变量是否超过预设阈值,若超过确定用户有姿态变化;并进一步根据姿态变化控制游戏角色。
进一步地,所述步骤S1222可包括以下至少之一:
若所述第一人脸框比所述第二人脸框在竖直方向上的下降量,超过所述下降阈值,确定所述用户下蹲;
若所述第一人脸框比所述第二人脸框在所述竖直方向上的上升量,超过所述上升阈值,确定用户起身。
在一些实施例中,所述步骤S121可包括:在当前图像中检测出所述第一局部的第一关键点。
如图4所示,所述步骤S122可包括:
步骤S1223:根据所述第一关键点,确定所述第一局部在预设方向上的尺寸变化;
步骤S1224:根据所述尺寸变化,确定所述姿态变化参数。
在本公开实施例中,第一关键点为第一局部的关键点,例如,第一局部在预设方向上两个端点所对应的关键点。
在本公开实施例中,若用户下蹲或者起身,跨步或收腿,会使得在竖直方向上腿部和/或躯干的长度发生变化。
在本公开实施例中,可以根据第一关键点,确定出第一局部在预设方向上的尺寸变化,然后基于尺寸变化可以简便的确定出姿态变化参数。
例如,用户下蹲,则身高会下降,身高下降将体现在尺寸变化上。
例如,将当前图像的身高值与前一图像的身高值进行比较,就得到所述尺寸变化,该尺寸变化若表示当前图像的身高值下降,则说明用户有下蹲,否则没有下蹲。
在另一些实施例中,所述步骤S1224可包括以下至少之一:若所述第一局部在所述预设方向上的尺寸缩小,确定所述用户下蹲;若所述第一局部在所述预设方向上的尺寸增大,确定所述用户起身。
进一步地,所述步骤S1224,包括:若尺寸缩小值大于缩小阈值,确定所述用户下蹲。此处的尺寸缩小值为尺寸缩小所对应的尺寸变化。
在一些实施例中,所述步骤S1224还可包括:若尺寸增大值大于增大阈值,确定所述用户起身。此处的尺寸增大值可为尺寸增大所对应的尺寸变化。
在本公开实施例中同样为了减少误控,引入了尺寸缩小值和/或尺寸增大值作为所述容差阈值。
只有在尺寸变化大于对应的容差阈值时,才认定用户呈现的是对应的姿态。
在一些实施例中,所述增大阈值和缩小阈值可以相等,也可以不等,具体的取值可以根据需要进行确定,也可以根据图像中呈现的用户的身体尺寸来确定。例如,根据用户维持直立姿态时的身高来确定。再例如,根据用户维持直立姿态时的身体宽度来 确定。将身体尺寸乘上一个比例系数,就可以得到所述尺寸变化对应的容差阈值。
当然,确定容差阈值的方式有多种,以上仅是举例,具体实现时不局限于上述任意一种。
在另一些实施例中,所述步骤S121可包括:在所述当前图像中检测第一躯干关键点;
所述步骤S1223可包括:基于所述第一躯干关键点,确定在预定方向上的第一躯干尺寸;在前一图像中搜索与所述第一躯干关键点相对应的第二躯干关键点;基于所述第二躯干关键点,确定在所述预定方向上的第二躯干尺寸;根据所述第一躯干尺寸和第二躯干尺寸,确定所述躯干尺寸的变化。躯干为除去四肢和头部的身体部分。
对应地,在步骤S1224中根据躯干尺寸的变化,确定姿态变化参数。
用户身体下蹲的过程中,必然伴随着蜷腰,这样会使得躯干在竖直方向上的长度缩小。
在另外一些实施例中,所述步骤S121可包括:在所述当前图像中检测第一肢体关键点;
所述步骤S1223可包括:基于所述第一肢体关键点,确定在预定方向上的第一肢体尺寸;在前一图像中搜索与所述第一肢体关键点相对应的第二肢体关键点;基于所述第二肢体关键点,确定在所述预定方向上的第二肢体尺寸;根据所述第一肢体尺寸和第二肢体尺寸,确定所述肢体尺寸的变化。
对应地,所述步骤S1224可包括:根据肢体尺寸的变化,确定姿态变化参数。
例如,肢体尺寸的变化指示肢体尺寸缩小,确定用户下蹲等。
在一些实施例中,所述第一肢体关键点为下肢关键点。
当然在另一些实施例中,若控制游戏角色是利用臂展来实现的,则所述肢体尺寸的变化还可为:上肢在水平方向上的长度变化。
在另一些实施例中,所述步骤S120还包括:根据所述图像,确定所述用户第二局部的姿态变化参数;
所述步骤S130可包括:根据所述第二局部的姿态变化参数,控制所述游戏角色的弹跳方向。
此处的,第二局部可为与前述第一局部不相同的局部,也可以为与所述第一局部相同的局部。
在本公开实施例中,还会获得第二局部的姿态变化参数,第二局部的姿态变化参数可不同于第一局部的姿态变化参数。
在本公开实施例中,利用第二局部的姿态变化参数控制游戏角色的弹跳方向。
在另一些实施例中,所述步骤S120可包括以下至少之一:根据所述图像,确定所述用户第二局部的朝向;根据所述图像,确定所述用户第二局部的伸展方向。
例如,获取第二局部的三个不在同一直线上的关键点,构建连接不同关键点形成的两个向量,叉乘两个向量就可以得到另一个向量,该得到的向量为第二局部的朝向。
例如,根据用户的躯干朝向、头部朝向等控制所述游戏角色的弹跳方向。
例如,游戏中设置了多条弹跳路径,游戏角色在当前位置可以朝不同方向进行弹跳,此时,可以根据第二局部的朝向控制游戏角色的弹跳方向。
在还有一些实施例中,所述第二局部可为上肢,上肢的伸展方向,例如,向左伸展还是向右伸展,也可以用于控制游戏角色的弹跳方向。
在另外一些实施例中,所述根据所述图像,确定所述用户第二局部的朝向,包括:根据所述图像,确定所述用户的人脸的朝向;和/或,
所述根据所述图像,确定所述用户第二局部的伸展方向,包括:根据所述图像,确定所述用户的上肢的伸展方向。
在另一些实施例中,所述方法还包括:显示包含有人体轮廓框的界面;检测所述界面中用户所对应的第一区域,与所述人体轮廓框对应的第二区域是否满足预设相对位置关系;若满足所述预设相对位置关系,开始拍摄所述用户的多个图像。
在实际实施中,可以在终端设备上显示用于反映虚拟对象的控制进程的界面以方便用户对虚拟对象进行控制。例如,在控制进程尚未开始时,可以在终端设备上显示包括人体轮廓框的界面以提示用户准备开始控制。
以终端设备为游戏设备为例,如图5所示,在游戏开始界面显示虚线的人体轮廓框,在开始游戏之前用户可以通过调整自己的位置,使得游戏设备采集的图像中自身成像与该人体轮廓框对应。
图6为游戏开始之后,正式进入游戏进程时的游戏提醒界面,该提醒界面显示提醒用户如何玩该游戏的提醒信息。
该游戏提醒界面的显示时长有限,游戏设备从显示游戏提醒界面开始进行显示倒计时,一旦超时则退出游戏提醒界面的显示,正式进入游戏过程界面。游戏过程界面如图7至图10所示。
游戏终端会显示游戏开始界面,同时会采集图像,若用户位于预定位置上,则采集的图像和游戏开始界面按照预定的方式重叠,则用户会与第二区域的重叠比例达到预设值等。
总之,若所述第一区域和所述第二区域满足所述预设相对位置关系,表明用户已经进入游戏就绪状态,此时可以开始游戏。
满足所述预设相对位置关系后开始游戏,游戏终端从显示所述游戏开始界面切换到显示游戏界面,在游戏界面上显示有游戏场景和在游戏场景内获得的游戏角色。
在一些实施例中,所述游戏开始界面包括:第一显示图层,包含有所述人体轮廓框;第二显示图层,为根据采集图像生成的。
其中,可参考如图5所示,所述第一显示图层为透明显示图层,所述透明显示 图层为在空白区域为透明的,如此,第二显示图层叠加在所述第一显示图层之下,能够显示出来。如此,采集用户的图像叠加在所述第一显示图层下显示时,用户可以根据自身的成像和人体轮廓框之间的相对位置关系进行自身位置的调整,从而使得自身的成像与人体轮廓框之间满足所述预设相对位置关系,以表示就绪开始游戏。
在还有一些实施例中,所述人体轮廓框可为根据采集的图像生成的,而该人体轮廓框在游戏开始界面上的第二区域也是设备根据采集的图像中用户所在的位置确定的。
总之,在后续为了方便在图像中快速定位用户的位置,可以优先人体轮廓框所在的第二区域进行用户的成像检测,从而加速了后续姿态变化参数的获取速率;提升了游戏终端的响应速率。
在一些实施例中,所述步骤S130可包括:根据所述姿态变化参数,控制所述游戏角色向指定方向弹跳。
该指定方向可为游戏自身确定的方向,与游戏进程相关。例如,所述指定方向可为游戏中接住游戏角色的弹跳物所在的方向。参考图9所示,所述指定方向为游戏角色朝向石头的方向;参考图7所示,所述指定方向为游戏角色朝向鱼的方向。
如图12所示,本公开实施例提供一种游戏控制装置,包括:采集模块110,用于采集用户的多个图像;确定模块120,用于根据所述多个图像,确定所述用户的姿态变化的姿态变化参数;控制模块130,用于根据姿态变化参数,控制所述用户对应的虚拟对象。
在一些实施例中,所述采集模块110、确定模块120及控制模块130可为程序模块,所述程序模块被处理器执行后,能够实现图像采集、姿态变化参数确定及虚拟对象的控制。
在另一些实施例中,所述采集模块110、确定模块120及控制模块130可为软硬结合模块;所述软硬结合模块可包括各种可编程阵列;所述可编程阵列可为复杂可编程阵列或现场可编程阵列。
在还有一些实施例中,所述采集模块110、确定模块120及控制模块130可为纯硬件模块;所述纯硬件模块包括但不限于专用集成电路。
在还有一些实施例中,所述姿态变化参数包括下蹲参数。
在一些实施例中,所述控制模块130包括:第一确定子模块,用于根据所述下蹲参数,确定所述虚拟对象弹跳的弹跳参数;控制子模块,用于根据所述弹跳参数,控制所述虚拟对象的弹跳。
在还有一些实施例中,所述下蹲参数包括下蹲时间和下蹲幅度中的至少一种。
在还有一些实施例中,所述弹跳参数包括以下至少之一:弹跳力的蓄力时间;弹跳力;弹跳力的蓄力速度;弹跳距离。
在一些实施例中,所述确定模块120,包括:检测子模块,用于在所述多个图像中的第一图像中检测所述用户的第一局部的第一关键点,以及在所述多个图像的第二图 像中检测所述第一局部的第二关键点;第二确定子模块,用于根据所述第一关键点和所述第二关键点,确定所述姿态变化参数。
在一些实施例中,所述第一局部为所述用户的脸部,所述第一关键点为第一人脸关键点,所述第二关键点为第二人脸关键点;
所述第二确定子模块,具体用于根据所述第一人脸关键点确定出第一人脸框;根据所述第二人脸关键点确定出第二人脸框;根据所述第一人脸框与所述第二人脸框的相对位置,确定所述姿态变化参数。
在一些实施例中,所述第二确定子模块,具体用于若所述第一人脸框与第二人脸框在预设方向上的位置改变量,超过预设阈值,确定所述用户在所述预设方向上的姿态发生变化。
在一些实施例中,所述第二确定子模块,具体用于执行以下至少之一:若所述第一人脸框比所述第二人脸框在竖直方向上的下降量,超过下降阈值,确定所述用户下蹲;若所述第一人脸框比所述第二人脸框在所述竖直方向上的上升量,超过上升阈值,确定所述用户起身。
在一些实施例中,所述第二确定子模块,具体用于根据所述第一关键点和所述第二关键点,确定所述第一局部在预设方向上的尺寸变化;根据所述尺寸变化,确定所述姿态变化参数。
在一些实施例中,所述第二确定子模块,具体用于若所述第一局部在所述预设方向上的尺寸缩小,确定所述用户下蹲;若所述第一局部在所述预设方向上的尺寸增大,确定所述用户起身。
在一些实施例中,所述第二确定子模块,还用于若尺寸缩小值大于缩小阈值,确定所述用户下蹲。
在一些实施例中,所述第二确定子模块,还具体用于若尺寸增大值大于增大阈值,确定所述用户起身。
在一些实施例中,所述第一局部为所述用户的躯干,所述第一关键点为第一躯干关键点,所述第二关键点为第二躯干关键点;
所述第二确定子模块,具体用于基于所述第一躯干关键点,确定在预定方向上的第一躯干尺寸;基于第二躯干关键点,确定在所述预定方向上的第二躯干尺寸;根据所述第一躯干尺寸和第二躯干尺寸,确定所述躯干尺寸的变化。
在一些实施例中,所述第一局部为所述用户的肢体,所述第一关键点为第一肢体关键点,所述第二关键点为第二肢体关键点;
所述第二确定子模块,具体用于基于所述第一肢体关键点,确定在预定方向上的第一肢体尺寸;基于所述第二肢体关键点,确定在所述预定方向上的第二肢体尺寸;根据所述第一肢体尺寸和第二肢体尺寸,确定肢体尺寸的变化。
在一些实施例中,所述第一肢体关键点为下肢关键点。
在一些实施例中,所述确定模块120,还用于根据所述多个图像,确定所述用户 的第二局部的姿态变化参数;所述控制模块130,还用于根据所述第二局部的姿态变化参数,控制所述虚拟对象的弹跳方向。
在一些实施例中,所述第二局部的姿态变化参数包括以下至少之一:人脸的朝向;上肢的伸展方向。
在一些实施例中,所述装置还包括:显示模块,用于显示包含有人体轮廓框的界面;检测模块,用于检测所述界面中用户对应的第一区域,与所述人体轮廓框对应的第二区域是否满足预设相对位置关系;所述采集模块,用于若满足所述预设相对位置关系,则开始采集所述用户的多个图像。
在一些实施例中,所述控制模块130,具体用于根据所述姿态变化参数,控制所述虚拟对象向指定方向弹跳。
以下结合上述任意实施例提供一个具体示例:随着计算机视觉技术的发展,利用普通的摄像头成像结合深度学习算法,可以进行人体关键点识别、人体关键点追踪、手势识别等,从而为虚拟对象控制提供了全新选项。这种方式具有准确性高、拓展性强、成本较低、支持多场景等特点。
在目前的实施方法中,根据用户人脸关键点的位置变化,判断用户是否在进行下蹲/起身操作,从而控制虚拟对象。具体而言,算法返回用户人脸关键点的坐标(例如,人脸框的四个点坐标),当用户人脸关键点的Y值变化超过脸宽(X1-X2)的±10%,则判断为下蹲/起身。以此类推,还可以判断举手、挥手、摆头等多种动作。
在另一种可能的实施方法中,算法返回用户全身关键点的坐标,根据坐标计算出各部位长度,如身高、上身长、大腿长,再根据各部位长度的变化,以及各部位长度间比例的变化判断用户此时的动作。
当虚拟控制界面处于首页,若检查到用户全身处于屏幕中的人体轮廓框所在的区域,则自动开启控制过程。
进入控制页(对应于前述游戏过程界面),用户“下蹲”开始蓄力,用户“起身”触发跳跃,蓄力时间越长,则跳跃距离越远。
若用户成功跳跃到目的物,则控制继续;若跳跃距离过大或过小,则控制结束,进入结果页。
如图13所示,本公开实施例提供了一种终端,包括:存储介质1301;处理器1302,与所述存储介质连接,用于通过执行位于所述存储介质上的机器可执行指令,能够实现前述任意技术方案提供的虚拟对象控制方法,例如,图1至图4示控制方法中的一个或多个。
该存储介质可为各种类型的存储器,可为随机存储器、只读存储器、闪存等。所述存储介质可用于信息存储,例如,存储机器可执行指令等。所述机器可执行指令可为各种程序指令,例如,目标程序指令和/或源程序指令等。
所述处理器可为各种类型的处理器,例如,中央处理器、微处理器、数字信号处理器、可编程阵列、数字信号处理器、专用集成电路或图像处理器等。
所述处理器可以通过总线与所述存储介质连接。所述总线可为集成电路总线等。
在一些实施例中,所述终端还可包括:通信接口1303,该通信接口可包括:网络接口、例如,局域网接口、收发天线等。所述通信接口同样与所述处理器连接,能够用于信息收发。
在一些实施例中,所述终端还包括人机交互接口1304,例如,所述人机交互接口可包括各种输入输出设备,例如,手柄、键盘、触摸屏等。
在一些实施例中,所述终端还包括显示器1305,用以显示对于虚拟对象的控制界面。
本公开实施例提供一种存储介质,所述存储介质存储有机器可执行指令;所述机器可执行指令被执行后,能够应用于终端、数据库、第一私有网络中一个或多个技术方案提供的控制方法,例如,图1和/或图2所示控制方法中的一个或多个。
所述存储介质可为包括具有记录功能的各种记录介质,例如,CD、软盘、硬盘、磁带、光盘、U盘或移动硬盘等各种存储介质。可选的所述存储介质可为非瞬态存储介质,该存储介质可被处理器读取,从而使得存储在存储介质上的机器可执行指令被处第一理器获取并执行后,能够实现前述任意一个技术方案提供的控制方法,例如,执行应用于终端中的控制方法或应用服务器中的控制方法。
本公开实施例还提供一种计算机程序产品,所述计算机程序产品包括计算机可执行指令;所述计算机可执行指令被执行后,能够实现前述一个或多个技术方案提供的控制方法,例如,图1至图4所示控制方法中的一个或多个。
所述计算机程序产品包括有形地包含在计算机存储介质上的计算机程序,计算机程序包含用于执行流程图所示的方法的程序代码,程序代码可包括对应执行本公开实施例提供的方法步骤对应的指令。
在本申请所提供的几个实施例中,应该理解到,所揭露的设备和方法,可以通过其它的方式实现。以上所描述的设备实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,如:多个单元或组件可以结合,或可以集成到另一个系统,或一些特征可以忽略,或不执行。另外,所显示或讨论的各组成部分相互之间的耦合、或直接耦合、或通信连接可以是通过一些接口,设备或单元的间接耦合或通信连接,可以是电性的、机械的或其它形式的。
上述作为分离部件说明的单元可以是、或也可以不是物理上分开的,作为单元显示的部件可以是、或也可以不是物理单元,即可以位于一个地方,也可以分布到多个网络单元上;可以根据实际的需要选择其中的部分或全部单元来实现本公开实施例方案的目的。
另外,在本公开各实施例中的各功能单元可以全部集成在一个处理模块中,也可以是各单元分别单独作为一个单元,也可以两个或两个以上单元集成在一个单元中;上述集成的单元既可以采用硬件的形式实现,也可以采用硬件加软件功能单元的形式实现。
本领域普通技术人员可以理解:实现上述方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成,前述的程序可以存储于一机器可读取存储介质中,该程序在执行时,执行包括上述方法实施例的步骤;而前述的存储介质包括:移动存储设备、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,仅为本公开的具体实施方式,但本公开的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本公开揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本公开的保护范围之内。因此,本公开的保护范围应以所述权利要求的保护范围为准。
Claims (35)
- 一种虚拟对象的控制方法,其特征在于,包括:采集用户的多个图像;根据所述多个图像,确定所述用户的姿态变化的姿态变化参数;根据姿态变化参数,控制所述用户对应的虚拟对象。
- 根据权利要求1所述的方法,其特征在于,所述姿态变化参数包括下蹲参数,所述根据姿态变化参数,控制所述用户对应的虚拟对象,包括:根据所述下蹲参数,确定所述虚拟对象弹跳的弹跳参数;根据所述弹跳参数,控制所述虚拟对象的弹跳。
- 根据权利要求2所述的方法,其特征在于,所述下蹲参数包括下蹲时间和下蹲幅度中的至少一种。
- 根据权利要求2或3所述的方法,其特征在于,所述弹跳参数包括以下至少之一:弹跳力的蓄力时间;弹跳力;弹跳力的蓄力速度;弹跳距离。
- 根据权利要求1至4任一项所述的方法,其特征在于,所述根据所述多个图像,确定所述用户的姿态变化的姿态变化参数,包括:在所述多个图像的第一图像中检测所述用户的第一局部的第一关键点;在所述多个图像的第二图像中检测所述第一局部的第二关键点;根据所述第一关键点和所述第二关键点,确定所述姿态变化参数。
- 根据权利要求5所述的方法,其特征在于,所述第一局部为所述用户的脸部,所述第一关键点为第一人脸关键点,所述第二关键点为第二人脸关键点,所述根据所述第一关键点和所述第二关键点,确定所述姿态变化参数,包括:根据所述第一人脸关键点,确定第一人脸框;根据所述第二人脸关键点,确定第二人脸框;根据所述第一人脸框与所述第二人脸框的相对位置,确定所述姿态变化参数。
- 根据权利要求6所述的方法,其特征在于,所述根据所述第一人脸框与所述第二人脸框的相对位置,确定所述姿态变化参数,包括:若所述第一人脸框与所述第二人脸框在预设方向上的位置改变量超过预设阈值,确定所述用户在所述预设方向上的姿态发生变化。
- 根据权利要求7所述的方法,其特征在于,所述若所述第一人脸框与所述第二人脸框在预设方向上的位置改变量超过预设阈值,确定所述用户在所述预设方向上的姿态发生变化,包括以下至少之一:若所述第一人脸框比所述第二人脸框在竖直方向上的下降量超过下降阈值,确定所述用户下蹲;若所述第一人脸框比所述第二人脸框在所述竖直方向上的上升量超过上升阈值,确定所述用户起身。
- 根据权利要求5所述的方法,其特征在于,所述根据所述第一关键点和所述第 二关键点,确定所述姿态变化参数,包括:根据所述第一关键点和所述第二关键点,确定所述第一局部在预设方向上的尺寸变化;根据所述尺寸变化,确定所述姿态变化参数。
- 根据权利要求9所述的方法,其特征在于,所述根据所述尺寸变化,确定所述姿态变化参数,包括以下至少之一:若所述第一局部在所述预设方向上的尺寸缩小,确定所述用户下蹲;若所述第一局部在所述预设方向上的尺寸增大,确定所述用户起身。
- 根据权利要求10所述的方法,其特征在于,所述若所述第一局部在所述预设方向上的尺寸缩小,确定所述用户下蹲,包括:若所述尺寸缩小值大于缩小阈值,确定所述用户下蹲,或者所述若所述第一局部在所述预设方向上的尺寸增大,确定所述用户起身,包括:若所述尺寸增大值大于增大阈值,确定所述用户起身。
- 根据权利要求9至11任一项所述的方法,其特征在于,所述第一局部为所述用户的躯干,所述第一关键点为第一躯干关键点,所述第二关键点为第二躯干关键点,所述根据所述第一关键点和所述第二关键点,确定所述第一局部在预设方向上的尺寸变化,包括:基于所述第一躯干关键点,确定在预定方向上的第一躯干尺寸;基于所述第二躯干关键点,确定在所述预定方向上的第二躯干尺寸;根据所述第一躯干尺寸和所述第二躯干尺寸,确定所述躯干尺寸的变化。
- 根据权利要求9至11任一项所述的方法,其特征在于,所述第一局部为所述用户的肢体,所述第一关键点为第一肢体关键点,所述第二关键点为第二肢体关键点,所述根据所述第一关键点和所述第二关键点,确定所述第一局部在预设方向上的尺寸变化,包括:基于所述第一肢体关键点,确定在预定方向上的第一肢体尺寸;基于所述第二肢体关键点,确定在所述预定方向上的第二肢体尺寸;根据所述第一肢体尺寸和所述第二肢体尺寸,确定肢体尺寸的变化。
- 根据权利要求1至13任一项所述的方法,其特征在于,所述根据所述多个图像,确定所述用户的姿态变化的姿态变化参数,还包括:根据所述多个图像,确定所述用户的第二局部的姿态变化参数;所述根据姿态变化参数,控制所述用户对应的虚拟对象,包括:根据所述第二局部的姿态变化参数,控制所述虚拟对象的弹跳方向。
- 根据权利要求14所述的方法,其特征在于,所述第二局部的姿态变化参数包括以下至少之一:人脸的朝向、上肢的伸展方向。
- 根据权利要求1至15任一项所述的方法,其特征在于,所述方法还包括:显示包含有人体轮廓框的界面;检测所述界面中所述用户对应的第一区域与所述人体轮廓框对应的第二区域是否满足预设相对位置关系;若满足所述预设相对位置关系,执行所述采集用户的多个图像的操作。
- 一种虚拟对象的控制装置,其特征在于,包括:采集模块,用于采集用户的多个图像;确定模块,用于根据所述多个图像,确定所述用户的姿态变化的姿态变化参数;控制模块,用于根据姿态变化参数,控制所述用户对应的虚拟对象。
- 根据权利要求17所述的装置,其特征在于,所述姿态变化参数包括下蹲参数,所述控制模块包括:第一确定子模块,用于根据所述下蹲参数,确定所述虚拟对象弹跳的弹跳参数;控制子模块,用于根据所述弹跳参数,控制所述虚拟对象的弹跳。
- 根据权利要求18所述的装置,其特征在于,所述下蹲参数包括下蹲时间和下蹲幅度中的至少一种。
- 根据权利要求18或19所述的装置,其特征在于,所述弹跳参数包括以下至少之一:弹跳力的蓄力时间;弹跳力;弹跳力的蓄力速度;弹跳距离。
- 根据权利要求17至20任一项所述的装置,其特征在于,所述确定模块,包括:检测子模块,用于在所述多个图像的第一图像中检测所述用户的第一局部的第一关键点,以及在所述多个图像的第二图像中检测所述第一局部的第二关键点;第二确定子模块,用于根据所述第一关键点和所述第二关键点,确定所述姿态变化参数。
- 根据权利要求21所述的装置,其特征在于,所述第一局部为所述用户的脸部,所述第一关键点为第一人脸关键点,所述第二关键点为第二人脸关键点;所述第二确定子模块,具体用于根据所述第一人脸关键点确定出第一人脸框;根据所述第二人脸关键点确定出第二人脸框;根据所述第一人脸框与所述第二人脸框的相对位置,确定所述姿态变化参数。
- 根据权利要求22所述的装置,其特征在于,所述第二确定子模块,具体用于若所述第一人脸框与所述第二人脸框在预设方向上的位置改变量,超过预设阈值,确定所述用户在所述预设方向上的姿态发生变化。
- 根据权利要求23所述的装置,其特征在于,所述第二确定子模块,具体用于执行以下至少之一:若所述第一人脸框比所述第二人脸框在竖直方向上的下降量,超过下降阈值,确定所述用户下蹲;若所述第一人脸框比所述第二人脸框在所述竖直方向上的上升量,超过上升阈值,确定所述用户起身。
- 根据权利要求21所述的装置,其特征在于,所述第二确定子模块,具体用于根据所述第一关键点和所述第二关键点,确定所述第一局部在预设方向上的尺寸变化;根据所述尺寸变化,确定所述姿态变化参数。
- 根据权利要求25所述的装置,其特征在于,所述第二确定子模块,具体用于若所述第一局部在所述预设方向上的尺寸缩小,确定所述用户下蹲;若所述第一局部在 所述预设方向上的尺寸增大,确定所述用户起身。
- 根据权利要求26所述的装置,其特征在于,所述第二确定子模块,还用于若尺寸缩小值大于缩小阈值,确定所述用户下蹲,或者所述第二确定子模块,还具体用于若尺寸增大值大于增大阈值,确定所述用户起身。
- 根据权利要求25至27任一项所述的装置,其特征在于,所述第一局部为所述用户的躯干,所述第一关键点为第一躯干关键点,所述第二关键点为第二躯干关键点,所述第二确定子模块,具体用于基于所述第一躯干关键点,确定在预定方向上的第一躯干尺寸;基于所述第二躯干关键点,确定在所述预定方向上的第二躯干尺寸;根据所述第一躯干尺寸和所述第二躯干尺寸,确定所述躯干尺寸的变化。
- 根据权利要求25至27任一项所述的装置,其特征在于,所述第一局部为所述用户的肢体,所述第一关键点为第一肢体关键点,所述第二关键点为第二肢体关键点;所述第二确定子模块,具体用于基于所述第一肢体关键点,确定在预定方向上的第一肢体尺寸;基于所述第二肢体关键点,确定在所述预定方向上的第二肢体尺寸;根据所述第一肢体尺寸和所述第二肢体尺寸,确定肢体尺寸的变化。
- 根据权利要求17至29任一项所述的装置,其特征在于,所述确定模块,还用于根据所述多个图像,确定所述用户的第二局部的姿态变化参数;所述控制模块,还用于根据所述第二局部的姿态变化参数,控制所述虚拟对象的弹跳方向。
- 根据权利要求30所述的装置,其特征在于,所述第二局部的姿态变化参数包括以下至少之一:人脸的朝向;上肢的伸展方向。
- 根据权利要求17至31任一项所述的装置,其特征在于,所述装置还包括:显示模块,用于显示包含有人体轮廓框的界面;检测模块,用于检测所述界面中用户对应的第一区域,与所述人体轮廓框对应的第二区域是否满足预设相对位置关系;所述采集模块,还用于若满足所述预设相对位置关系,则开始采集所述用户的多个图像。
- 一种机器可读存储介质,所述机器可读存储介质存储有机器可执行指令;所述机器可执行指令被处理器执行后,能够实现权利要求1至16任一项提供的方法。
- 一种终端,包括:存储介质;处理器,与所述存储介质连接,用于通过执行存储在所述存储介质上的机器可执行指令,能够实现权利要求1至16任一项提供的方法。
- 一种计算机程序,其被处理器执行时能够实现权利要求1至16任一项提供的方法。
Priority Applications (3)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| SG11202010917TA SG11202010917TA (en) | 2019-02-01 | 2019-12-26 | Control of virtual objects based on gesture changes of users |
| JP2020560769A JP7104179B2 (ja) | 2019-02-01 | 2019-12-26 | ユーザの姿勢変化に基づく仮想対象の制御 |
| US17/083,436 US11429193B2 (en) | 2019-02-01 | 2020-10-29 | Control of virtual objects based on gesture changes of users |
Applications Claiming Priority (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| CN201910102773.3 | 2019-02-01 | ||
| CN201910102773.3A CN111514584B (zh) | 2019-02-01 | 2019-02-01 | 游戏控制方法及装置、游戏终端及存储介质 |
Related Child Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| US17/083,436 Continuation US11429193B2 (en) | 2019-02-01 | 2020-10-29 | Control of virtual objects based on gesture changes of users |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| WO2020155971A1 true WO2020155971A1 (zh) | 2020-08-06 |
Family
ID=71841591
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| PCT/CN2019/128805 Ceased WO2020155971A1 (zh) | 2019-02-01 | 2019-12-26 | 基于用户的姿态变化控制虚拟对象 |
Country Status (6)
| Country | Link |
|---|---|
| US (1) | US11429193B2 (zh) |
| JP (1) | JP7104179B2 (zh) |
| CN (1) | CN111514584B (zh) |
| SG (1) | SG11202010917TA (zh) |
| TW (1) | TWI740356B (zh) |
| WO (1) | WO2020155971A1 (zh) |
Families Citing this family (9)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN112473121B (zh) * | 2020-11-13 | 2023-06-09 | 海信视像科技股份有限公司 | 一种显示设备及基于肢体识别的躲避球显示方法 |
| CN113058258B (zh) * | 2021-04-22 | 2024-04-19 | 杭州当贝网络科技有限公司 | 基于玩家游戏预期体感动作识别方法、系统及存储介质 |
| CN113058261B (zh) * | 2021-04-22 | 2024-04-19 | 杭州当贝网络科技有限公司 | 基于现实场景和游戏场景的体感动作识别方法及系统 |
| CN113808281B (zh) * | 2021-08-23 | 2024-02-27 | 桂林未来鹏创软件有限公司 | 一种汽车虚拟精灵形象生成方法、系统、装置和存储介质 |
| EP4161067A1 (en) | 2021-09-30 | 2023-04-05 | Nokia Technologies Oy | A method, an apparatus and a computer program product for video encoding and video decoding |
| JP7049515B1 (ja) | 2021-11-11 | 2022-04-06 | 株式会社Cygames | 情報処理装置、プログラム及び描画方法 |
| JP7817014B2 (ja) * | 2022-02-28 | 2026-02-18 | Tribawl株式会社 | 情報処理装置、及びプログラム |
| CN114758415A (zh) * | 2022-03-31 | 2022-07-15 | 深圳市商汤科技有限公司 | 模型控制方法、装置、设备及存储介质 |
| CN117523684B (zh) * | 2022-07-27 | 2025-06-13 | 腾讯科技(深圳)有限公司 | 图像采集方法、装置、计算机设备和存储介质 |
Citations (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN107831902A (zh) * | 2017-11-23 | 2018-03-23 | 腾讯科技(上海)有限公司 | 一种运动控制方法及其设备、存储介质、终端 |
| CN108090463A (zh) * | 2017-12-29 | 2018-05-29 | 腾讯科技(深圳)有限公司 | 对象控制方法、装置、存储介质和计算机设备 |
| CN108905198A (zh) * | 2018-06-04 | 2018-11-30 | 网易(杭州)网络有限公司 | 一种虚拟对象跳跃的控制方法和装置 |
| CN109091869A (zh) * | 2018-08-10 | 2018-12-28 | 腾讯科技(深圳)有限公司 | 虚拟对象的动作控制方法、装置、计算机设备及存储介质 |
Family Cites Families (27)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2007179338A (ja) * | 2005-12-28 | 2007-07-12 | Oki Electric Ind Co Ltd | 情報処理装置 |
| US20080022348A1 (en) * | 2006-07-03 | 2008-01-24 | Samoa Opulence Investment Inc. | Interactive video display system and a method thereof |
| US8517834B2 (en) * | 2009-02-17 | 2013-08-27 | Softkinetic Studios Sa | Computer videogame system with body position detector that requires user to assume various body positions |
| US9498718B2 (en) * | 2009-05-01 | 2016-11-22 | Microsoft Technology Licensing, Llc | Altering a view perspective within a display environment |
| US8487871B2 (en) * | 2009-06-01 | 2013-07-16 | Microsoft Corporation | Virtual desktop coordinate transformation |
| US8564534B2 (en) * | 2009-10-07 | 2013-10-22 | Microsoft Corporation | Human tracking system |
| US20110151974A1 (en) * | 2009-12-18 | 2011-06-23 | Microsoft Corporation | Gesture style recognition and reward |
| US8284157B2 (en) * | 2010-01-15 | 2012-10-09 | Microsoft Corporation | Directed performance in motion capture system |
| JP5320332B2 (ja) * | 2010-03-19 | 2013-10-23 | 株式会社コナミデジタルエンタテインメント | ゲーム装置、ゲーム装置の制御方法、及びプログラム |
| WO2012042390A2 (en) * | 2010-09-30 | 2012-04-05 | France Telecom | User interface system and method of operation thereof |
| JP5687545B2 (ja) * | 2011-04-05 | 2015-03-18 | 任天堂株式会社 | 情報処理プログラム、情報処理システム、および情報処理方法 |
| EP2497546A3 (en) | 2011-03-08 | 2012-10-03 | Nintendo Co., Ltd. | Information processing program, information processing system, and information processing method |
| US20120257035A1 (en) * | 2011-04-08 | 2012-10-11 | Sony Computer Entertainment Inc. | Systems and methods for providing feedback by tracking user gaze and gestures |
| US9557836B2 (en) * | 2011-11-01 | 2017-01-31 | Microsoft Technology Licensing, Llc | Depth image compression |
| CN103207667B (zh) * | 2011-12-24 | 2018-10-23 | 漳州市科达企业咨询有限公司 | 一种人机互动的控制方法及其运用 |
| KR101872426B1 (ko) * | 2013-03-14 | 2018-06-28 | 인텔 코포레이션 | 깊이 기반 사용자 인터페이스 제스처 제어 |
| CN104036488B (zh) * | 2014-05-04 | 2017-01-11 | 北方工业大学 | 一种基于双目视觉的人体姿态动作研究方法 |
| JP6409118B2 (ja) | 2015-02-25 | 2018-10-17 | 京セラ株式会社 | ウェアラブル装置、制御方法及び制御プログラム |
| TWI599389B (zh) * | 2016-01-19 | 2017-09-21 | 國立交通大學 | 結合人體手勢辨識及骨架追蹤之虛擬人物控制系統 |
| US10643390B2 (en) * | 2016-03-30 | 2020-05-05 | Seiko Epson Corporation | Head mounted display, method for controlling head mounted display, and computer program |
| US10282530B2 (en) * | 2016-10-03 | 2019-05-07 | Microsoft Technology Licensing, Llc | Verifying identity based on facial dynamics |
| JP2020513253A (ja) * | 2016-11-10 | 2020-05-14 | ニューロトラック テクノロジーズ,インク. | 認識能力の分析のために、画像取得デバイスを人間のユーザーに関連付けるための方法およびシステム |
| CN109241810B (zh) * | 2017-07-10 | 2022-01-28 | 腾讯科技(深圳)有限公司 | 虚拟角色图像的构建方法及装置、存储介质 |
| DE112018005641T5 (de) * | 2017-11-21 | 2020-07-09 | Sony Corporation | Informationsverarbeitungsgerät, informationsverarbeitungsverfahren und programm |
| CN109126126A (zh) * | 2018-02-09 | 2019-01-04 | 上海妙天网络科技有限公司 | 一种跑酷游戏系统及其游戏方法 |
| KR102661019B1 (ko) * | 2018-02-23 | 2024-04-26 | 삼성전자주식회사 | 얼굴에 대응하는 3차원 아바타를 이용하여 얼굴의 움직임이 반영된 3차원 아바타를 포함하는 이미지를 생성하는 전자 장치 및 그 동작 방법 |
| CN110941977A (zh) * | 2018-09-25 | 2020-03-31 | Oppo广东移动通信有限公司 | 图像处理方法、装置、存储介质及电子设备 |
-
2019
- 2019-02-01 CN CN201910102773.3A patent/CN111514584B/zh active Active
- 2019-12-26 WO PCT/CN2019/128805 patent/WO2020155971A1/zh not_active Ceased
- 2019-12-26 JP JP2020560769A patent/JP7104179B2/ja not_active Expired - Fee Related
- 2019-12-26 SG SG11202010917TA patent/SG11202010917TA/en unknown
-
2020
- 2020-01-20 TW TW109101946A patent/TWI740356B/zh not_active IP Right Cessation
- 2020-10-29 US US17/083,436 patent/US11429193B2/en active Active
Patent Citations (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN107831902A (zh) * | 2017-11-23 | 2018-03-23 | 腾讯科技(上海)有限公司 | 一种运动控制方法及其设备、存储介质、终端 |
| CN108090463A (zh) * | 2017-12-29 | 2018-05-29 | 腾讯科技(深圳)有限公司 | 对象控制方法、装置、存储介质和计算机设备 |
| CN108905198A (zh) * | 2018-06-04 | 2018-11-30 | 网易(杭州)网络有限公司 | 一种虚拟对象跳跃的控制方法和装置 |
| CN109091869A (zh) * | 2018-08-10 | 2018-12-28 | 腾讯科技(深圳)有限公司 | 虚拟对象的动作控制方法、装置、计算机设备及存储介质 |
Also Published As
| Publication number | Publication date |
|---|---|
| CN111514584B (zh) | 2022-07-26 |
| SG11202010917TA (en) | 2020-12-30 |
| TW202030581A (zh) | 2020-08-16 |
| CN111514584A (zh) | 2020-08-11 |
| US20210041957A1 (en) | 2021-02-11 |
| JP2021519996A (ja) | 2021-08-12 |
| US11429193B2 (en) | 2022-08-30 |
| JP7104179B2 (ja) | 2022-07-20 |
| TWI740356B (zh) | 2021-09-21 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| TWI740356B (zh) | 虛擬對象的控制方法及裝置、終端、儲存媒體 | |
| US12100080B2 (en) | Virtual reticle for augmented reality systems | |
| US11379036B2 (en) | Eye tracking calibration techniques | |
| CN112464918B (zh) | 健身动作纠正方法、装置、计算机设备和存储介质 | |
| US20190265802A1 (en) | Gesture based user interfaces, apparatuses and control systems | |
| KR20210011425A (ko) | 이미지 처리 방법 및 디바이스, 이미지 장치, 및 저장 매체 | |
| JP7126812B2 (ja) | 検出装置、検出システム、画像処理装置、検出方法、画像処理プログラム、画像表示方法、及び画像表示システム | |
| WO2011071815A2 (en) | Visual target tracking | |
| TW201842432A (zh) | 自動配置感測器的方法、電子設備及記錄媒體 | |
| CN115129164B (zh) | 基于虚拟现实的交互控制方法、系统及虚拟现实设备 | |
| CN110399794A (zh) | 基于人体的姿态识别方法、装置、设备及存储介质 | |
| CN109408011B (zh) | 头戴显示设备的显示方法、装置及设备 | |
| KR20230102011A (ko) | 스포츠 퍼포먼스 분석 및 코칭 시스템 및 그 방법 | |
| CN110737326A (zh) | 虚拟对象的显示方法、装置、终端设备及存储介质 | |
| WO2020147791A1 (zh) | 图像处理方法及装置、图像设备及存储介质 | |
| CN113052032A (zh) | 人体姿态检测方法及电子设备、计算机可读存储介质 | |
| CN108829247B (zh) | 基于视线跟踪的交互方法及装置、计算机设备 | |
| CN113117335B (zh) | 游戏角色控制方法及相关装置 | |
| HK40025300A (zh) | 游戏控制方法及装置、游戏终端及存储介质 | |
| CN116139499A (zh) | 基于眼脚协调的交互训练系统及方法 | |
| CN109683704B (zh) | 一种ar界面交互方法及ar显示设备 | |
| CN118369142A (zh) | 用于生成运动表现度量的系统和方法 | |
| HK40024117A (zh) | 图像处理方法及装置、图像设备及存储介质 | |
| HK40024117B (zh) | 图像处理方法及装置、图像设备及存储介质 |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| 121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 19913428 Country of ref document: EP Kind code of ref document: A1 |
|
| ENP | Entry into the national phase |
Ref document number: 2020560769 Country of ref document: JP Kind code of ref document: A |
|
| NENP | Non-entry into the national phase |
Ref country code: DE |
|
| 122 | Ep: pct application non-entry in european phase |
Ref document number: 19913428 Country of ref document: EP Kind code of ref document: A1 |