Interactive position control method, device and electronic equipment based on human key points

By using an interactive position control method based on human key points, a video file is generated, a set of key points is detected, and the position of the interactive interface is adjusted. This solves the problem of inaccurate interactive operation in existing technologies and achieves higher accuracy and stability.

CN110264499BActive Publication Date: 2026-03-10DOUYIN VISION CO LTD
View PDF 5 Cites 0 Cited by

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2019-06-26
Publication Date
2026-03-10

AI Technical Summary

Technical Problem

Existing computer vision-based interaction technologies struggle to accurately determine body position when the body shakes or undergoes slight changes, leading to inaccurate interactive operations.

Method used

By using an interactive position control method based on human key points, a video file containing the target object is generated, a set of key points is detected, interactive points are determined, and the position of the interactive interface is adjusted according to the position movement.

Benefits of technology

It improves the accuracy of human interaction position control, ensuring the precision and stability of interactive operations.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN110264499B_ABST
    Figure CN110264499B_ABST
Patent Text Reader

Abstract

This disclosure provides an interactive position control method, device, and electronic device based on human key points, belonging to the field of image processing technology. The method includes: generating a video file containing the target object based on its position relative to a camera device; performing key point detection on the target object based on video frame images contained in the video file to obtain a set of key points for the target object; determining an interaction point of the target object in a preset application interface when multiple necessary key points exist in the key point set; and changing the interaction position of the interaction point in the interface based on the obtained position movement of the target object relative to the camera device. This disclosure improves the accuracy of interactive position control.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This disclosure relates to the field of image processing technology, and in particular to an interactive position control method, device and electronic device based on human body key points. Background Technology

[0002] Image processing, also known as image manipulation, is a technique that uses computers to manipulate images to achieve desired results. Originating in the 1920s, it generally refers to digital image processing. The main components of image processing technology include image compression, enhancement and restoration, and matching, description, and recognition. Common processing methods include image digitization, image coding, image enhancement, image restoration, image segmentation, and image analysis. Image processing utilizes computers to process image information to meet human visual, psychological, or application needs. It has wide applications, including surveying, atmospheric science, astronomy, image editing, and improving image recognition.

[0003] One application of image processing is interacting with programs on electronic devices using the body. Computer vision-based interaction technology processes and recognizes image sequences captured by a camera to interact with a computer. This method uses a camera to collect body information and determines the body's position through image recognition. However, when the body shakes or undergoes slight changes, the judgment of the body's position is often inaccurate. Summary of the Invention

[0004] In view of this, the present disclosure provides an interactive position control method, device and electronic device based on human body key points, which at least partially solves the problems existing in the prior art.

[0005] In a first aspect, embodiments of this disclosure provide an interactive position control method based on human body key points, including:

[0006] Based on the position of the target object relative to the camera device, a video file containing the target object is generated;

[0007] Based on the video frame images contained in the video file, key point detection is performed on the target object to obtain the key point set of the target object;

[0008] When there are multiple necessary key points in the set of key points, determine the interaction points of the target object in the preset application interface.

[0009] Based on the obtained position movement of the target object relative to the camera device, the interaction position of the interaction point in the interaction interface is changed.

[0010] According to a specific implementation of this disclosure, when multiple necessary key points exist in the set of key points, determining the interaction points of the target object in a preset application interface includes:

[0011] Obtain the center point of the multiple necessary key points;

[0012] Determine the relative position of the center point on the video frame of the video file;

[0013] The interaction point is generated at the position corresponding to the relative position on the interactive interface.

[0014] According to a specific implementation of this disclosure, the step of changing the interaction position of the interaction point in the interactive interface based on the obtained position movement of the target object relative to the camera device includes:

[0015] Obtain the movement distance and direction of the target object in the video frame of the video file;

[0016] Based on the movement distance and the movement direction, the new position of the interaction point in the interaction interface is determined.

[0017] According to a specific implementation of an embodiment of this disclosure, performing keypoint detection on the target object in the video file includes:

[0018] Convert the video frame images in the video file into grayscale images;

[0019] Edge detection is performed on the grayscale image to obtain the edge contour of the target object;

[0020] Based on the edge contour, the set of key points of the target object is determined.

[0021] According to a specific implementation of an embodiment of this disclosure, the step of forming a video file containing the target object based on the position of the target object relative to the camera device includes:

[0022] A pixel difference matrix is ​​obtained by subtracting the pixel values ​​of corresponding pixels in adjacent frame images formed in the camera device.

[0023] Determine whether the average value of the pixel difference matrix is ​​greater than a preset threshold;

[0024] If so, the adjacent frame images are stored as video frames in the video file.

[0025] According to a specific implementation of this disclosure, before determining the interaction points of the target object in the preset application interface when multiple necessary key points exist in the set of key points, the method further includes:

[0026] Based on the detected set of key points, the positional state of the target object is detected;

[0027] Based on the detected location and state of the target object, a prompting operation is performed on the target object.

[0028] According to a specific implementation of an embodiment of this disclosure, the step of prompting the target object based on the detected position state of the target object includes:

[0029] Determine whether the target object's shoulder key points and head key points exist in the video frames of the video file;

[0030] If not, the target object is prompted to change its current position until the target object's shoulder key points and head key points appear in the video frame of the video file.

[0031] According to a specific implementation of an embodiment of this disclosure, the step of prompting the target object based on the detected position state of the target object includes:

[0032] Based on the shoulder key points of the target object detected in the video frame of the video file, it is determined whether the target object is located at a preset position in the middle of the video frame;

[0033] If so, after the key points of the upper body of the target object appear in the video frame, the target object is prompted to perform a preset action.

[0034] Secondly, embodiments of this disclosure provide an interactive position control device based on human body key points, comprising:

[0035] The acquisition module is used to acquire the position of the target object relative to the camera device and form a video file containing the target object;

[0036] The detection module is used to perform key point detection on the target object based on the video frame images contained in the video file, so as to obtain the key point set of the target object;

[0037] The determination module is used to determine the interaction points of the target object in the preset application interface when there are multiple necessary key points in the set of key points;

[0038] The module is used to change the interaction position of the interaction point in the interactive interface based on the obtained position movement of the target object relative to the camera device.

[0039] Thirdly, embodiments of this disclosure also provide an electronic device, the electronic device comprising:

[0040] At least one processor; and,

[0041] The memory is communicatively connected to the at least one processor; wherein,

[0042] The memory stores instructions that can be executed by the at least one processor to enable the at least one processor to perform the interactive position control method based on human key points in any of the foregoing first aspects or any implementation thereof.

[0043] Fourthly, embodiments of this disclosure also provide a non-transitory computer-readable storage medium storing computer instructions for causing the computer to execute the interactive position control method based on human key points in the first aspect or any implementation thereof.

[0044] Fifthly, embodiments of this disclosure also provide a computer program product, which includes a computing program stored on a non-transitory computer-readable storage medium. The computer program includes program instructions that, when executed by a computer, cause the computer to perform the interactive position control method based on human key points in the first aspect or any implementation thereof.

[0045] The interactive position control scheme based on human key points in this disclosure includes: generating a video file containing the target object based on the position of the target object relative to a camera device; performing key point detection on the target object based on the video frame images contained in the video file to obtain a set of key points for the target object; determining the interaction point of the target object in a preset application interface when multiple necessary key points exist in the set of key points; and changing the interaction position of the interaction point in the interface based on the obtained position movement of the target object relative to the camera device. This scheme improves the accuracy of interactive position control based on human key points. Attached Figure Description

[0046] To more clearly illustrate the technical solutions of the embodiments of this disclosure, the drawings used in the embodiments will be briefly introduced below. Obviously, the drawings described below are only some embodiments of this disclosure. For those skilled in the art, other drawings can be obtained based on these drawings without creative effort.

[0047] Figure 1 This is a schematic diagram of an interactive position control process based on human body key points provided in an embodiment of the present disclosure;

[0048] Figure 2 A schematic diagram of key points based on the human body provided in this embodiment of the disclosure;

[0049] Figure 3 This is a schematic diagram of another interactive position control process based on human key points provided in an embodiment of the present disclosure;

[0050] Figure 4 This is a schematic diagram of another interactive position control process based on human key points provided in an embodiment of the present disclosure;

[0051] Figure 5 A schematic diagram of an interactive position control device based on human body key points provided in this embodiment of the present disclosure;

[0052] Figure 6 A schematic diagram of an electronic device provided in an embodiment of this disclosure. Detailed Implementation

[0053] The embodiments of this disclosure will now be described in detail with reference to the accompanying drawings.

[0054] The following specific examples illustrate the implementation of this disclosure. Those skilled in the art can easily understand other advantages and effects of this disclosure from the content disclosed in this specification. Obviously, the described embodiments are only a part of the embodiments of this disclosure, and not all of them. This disclosure can also be implemented or applied through other different specific embodiments, and the details in this specification can also be modified or changed based on different viewpoints and applications without departing from the spirit of this disclosure. It should be noted that, in the absence of conflict, the following embodiments and features in the embodiments can be combined with each other. Based on the embodiments in this disclosure, all other embodiments obtained by those skilled in the art without creative effort are within the scope of protection of this disclosure.

[0055] It should be noted that various aspects of embodiments within the scope of the appended claims are described below. It will be apparent that the aspects described herein can be embodied in a wide variety of forms, and any particular structure and / or function described herein is merely illustrative. Based on this disclosure, those skilled in the art will understand that one aspect described herein can be implemented independently of any other aspect, and two or more of these aspects can be combined in various ways. For example, any number of aspects set forth herein can be used to implement the device and / or practice the method. Additionally, this device and / or method can be implemented using structures and / or functionalities other than one or more of the aspects set forth herein.

[0056] It should also be noted that the illustrations provided in the following embodiments are only schematic representations of the basic concept of this disclosure. The drawings only show the components related to this disclosure and are not drawn according to the number, shape and size of the components in actual implementation. In actual implementation, the form, quantity and proportion of each component can be arbitrarily changed, and the layout of the components may also be more complex.

[0057] Furthermore, specific details are provided in the following description to facilitate a thorough understanding of the examples. However, those skilled in the art will understand that the described aspects can be practiced without these specific details.

[0058] This disclosure provides an interactive position control method based on human key points. The interactive position control method based on human key points provided in this embodiment can be executed by a computing device, which can be implemented as software or a combination of software and hardware. This computing device can be integrated into a server, terminal device, or the like.

[0059] See Figure 1 This disclosure provides an interactive position control method based on human body key points, comprising:

[0060] S101, Based on the position of the target object relative to the camera device, a video file containing the target object is generated.

[0061] Camera equipment is used to capture various movements of a target object, forming images or video footage of those movements, thus creating a video file. Camera equipment can be any device containing a camera; for example, it could be a mobile phone or any other electronic device with camera functionality.

[0062] In addition to recording or taking photos, as an electronic device, a camera can also run various applications. Through these applications, the camera can identify the specific meaning of various actions contained in the video file, thereby parsing out the specific action instructions.

[0063] The target object is the subject of the camera's recording. It can be a person, or other animals or objects capable of movement. The target object represents a specific action command by producing specific actions. For example, a target object can represent a response to an action in an application (e.g., a game) through a snap of its fingers. Alternatively, the target object can represent an interactive element within an application by moving its entire body in front of the camera, thus representing the movement of that interactive element within the application. One or more actions produced by the target object can then be recorded as video by the camera, demonstrating interaction with the application.

[0064] A video file is a recording file created by a camera device for one or more actions of a target object. In one scenario, the camera device captures one or more actions of the target object in real time, and the video file simultaneously records one or more actions of the target object in real time.

[0065] Video files can be composed of multiple video frames. To conserve system resources, as an application scenario, object detection can be performed on newly generated video frames in real time. By performing object detection on newly generated video frames, it can be determined whether a target object exists in the video frame, thereby determining whether further data processing of the target device is needed. When object detection finds that a video frame does not contain a target object, the video frame without a target object can be stored in the video file, thereby further reducing the system resource consumption of the video file.

[0066] S102, based on the video frame images contained in the video file, perform key point detection on the target object to obtain the key point set of the target object.

[0067] A video file contains multiple video frames. By performing keypoint detection on the video frames in the video file, the set of keypoints of the target object in the video file can be obtained.

[0068] See Figure 2 Taking the human body as an example, in order to describe the various movements of the target object (human body), multiple human body key points can be used to represent the target object. By describing the human body through human body key points, the basic movement shape of the human body can be determined, and thus the movement of the target object can be identified based on the different movement shapes of the human body.

[0069] As an example, see Figure 2The key point set can include key points from different parts of the human body. For example, the key point set can include key points P12, P3 and P16 of the buttocks, and key points P4, P2 and P8 of the shoulders.

[0070] The target object is displayed as different human body regions on the video frames of the video file. After the video frames are formed, keypoint detection can be performed on the video frames acquired by the camera device in real time, thereby obtaining keypoints in multiple different regions of the target object and forming a keypoint set. Keypoint detection of the target object on the video frame can be performed using methods such as CPM (Convolutional Pose Machine) and PAF (Part Affinity Fields). No specific method is limited to the keypoint detection method used here.

[0071] S103, when there are multiple necessary key points in the set of key points, determine the interaction points of the target object in the preset application interaction interface.

[0072] After acquiring the set of key points of the target object in real-time video frames, the position and posture of the target object relative to the camera device can be determined using the acquired key point set. For example, when the upper body of the target object appears in the frame captured by the camera device, the head key points and shoulder key points of the target object will appear in the key point set. Therefore, the posture of the target object can be determined by defining necessary key points.

[0073] Essential keypoints refer to one or more keypoints that must appear on a video frame to meet the requirements of the target object's image pose within the video file. For example, for a scenario where the entire target object needs to appear on the video frame, essential keypoints could be all the target object's body keypoints. For a scenario where only the upper body of the target object needs to appear on the video frame, essential keypoints could be the head keypoints and shoulder keypoints of the target object. Essential keypoints can be specifically set based on different scenario requirements. As an application scenario, essential keypoints can include the target object's head keypoints, shoulder keypoints, and hand keypoints; in this case, effective recognition of user gestures is possible.

[0074] Once the necessary key points of the target object appear on the video frame, it indicates that the position and posture of the target object have met the shooting requirements of the camera device, and the interaction points of the target object in the preset application interface can be further determined.

[0075] The pre-defined application includes an interactive interface, which contains interactive points. Interactive points are interactive elements that allow the target object to interact with the application. For example, the application could be a pinball game; in this case, the interactive point could be a paddle that moves left and right on the interactive interface, causing the pinball to bounce automatically after hitting it. By changing its own position, the target object can change the position of the paddle (actually an interactive point) on the interactive interface, thus causing the falling pinball to bounce.

[0076] The center point coordinates of multiple necessary key points can be obtained by averaging the coordinates of multiple key points. These center point coordinates represent the relative position of the target object in the video frame. By mapping this relative position to the interactive interface, the position of the interactive point in the interactive interface can be determined.

[0077] S104, based on the obtained position movement of the target object relative to the camera device, change the interaction position of the interaction point in the interaction interface.

[0078] By analyzing the positional movement of a target object captured in video frames, the movement of the target object can be parsed to obtain its position at different times, thereby adjusting the interactive position of the interactive point on the interface accordingly. For example, by analyzing the relative position of the target object in different video frames, the interactive position of the interactive point on the interface at different times can be determined.

[0079] The solution disclosed herein enables the identification of the target object's actions based on its key points, thereby improving the accuracy of target object action identification.

[0080] See Figure 3 As an optional implementation of this disclosure, when there are multiple necessary key points in the set of key points, determining the interaction points of the target object in the preset application interface may include the following steps:

[0081] S301, Obtain the center point of the multiple necessary key points.

[0082] By averaging the coordinates of multiple necessary key points, we can obtain the average coordinates of these key points. Using these average coordinates as the coordinates of the center point, we can then obtain the center point of these multiple necessary key points.

[0083] S302, determine the relative position of the center point on the video frame of the video file.

[0084] For a video frame with a length and width of a1 and b1 pixels respectively, by comparing the center point coordinates (x, y) with a1 and b1, the relative position of the center point on the video frame of the video file can be determined as (x / a1, y / b1).

[0085] S303, the interaction point is generated at the position corresponding to the relative position on the interactive interface.

[0086] By obtaining the length a2 and width b2 of the interactive interface, the position on the interactive interface corresponding to the relative position can be determined (a2*x / a1, b2*y / b1).

[0087] See Figure 4 As an optional implementation of this disclosure, changing the interaction position of the interaction point in the interactive interface based on the obtained position movement of the target object relative to the camera device may include the following steps:

[0088] S401, obtain the movement distance and movement direction of the target object in the video frame of the video file.

[0089] By calculating the center point of the target object, the distance and direction of movement of the target object on the video frame can be obtained. The direction of movement can be any custom direction (e.g., horizontal left, horizontal right, etc.).

[0090] S402, based on the moving distance and the moving direction, determine the new position of the interaction point in the interaction interface.

[0091] Based on the target object's movement distance and direction in the video frame, a corresponding proportional distance can be moved in the same direction on the interactive interface, thereby determining the new position of the interaction point on the interactive interface.

[0092] As an optional implementation of this disclosure, key point detection is performed on the target object in the video file, including: converting the video frame image in the video file into a grayscale image; performing edge detection on the grayscale image to obtain the edge contour of the target object; and determining the key point set of the target object based on the edge contour.

[0093] Determining the set of key points of the target object based on the edge contour may include the following steps:

[0094] First, select multiple structural elements with different orientations.

[0095] Edge detection operators can be used to detect target objects. However, if an edge detection operator uses only one structuring element, its output image contains only one type of geometric information, which is not conducive to preserving image details. To ensure the accuracy of image detection, edge detection operators that include multiple structuring elements should be selected.

[0096] Next, detail matching is performed on the grayscale image using each of the multiple structuring elements to obtain a filtered image.

[0097] By employing multiple structuring elements with different orientations, and matching each structuring element as a scale to image details, it is possible to filter out noise of different types and sizes while fully preserving various details of the image.

[0098] Next, the grayscale edge calculation of the filtered image is determined to obtain the number of pixels present in each grayscale level among multiple grayscale levels in the filtered image.

[0099] After filtering the image, in order to further reduce the amount of computation, the filtered image can be converted into a grayscale image. By setting multiple grayscale levels for the grayscale image, the number of pixels in each grayscale level can be calculated.

[0100] Next, the number of pixels in each gray level is weighted, and the weighted average gray level is used as the threshold.

[0101] Based on the number of pixels in different gray levels, we can consider weighting the gray levels according to the number of pixels. For example, we can give a larger weight to gray level values ​​with more pixels and a smaller weight to gray level values ​​with fewer pixels. By averaging the weighted gray values, we can obtain the weighted average gray value as a threshold, and then perform binarization processing on the gray image based on this average gray value.

[0102] Next, the filtered image is binarized based on the threshold.

[0103] Based on this threshold, the filtered image can be binarized. For example, pixels larger than the threshold can be binarized as data 1, and pixels smaller than the threshold can be binarized as 0.

[0104] Finally, the binarized image is used as the edge image of the target object.

[0105] By assigning corresponding color values ​​to the binarized data, the edge image of the target object is obtained. For example, pixels binarized to 1 are assigned black, and pixels binarized to 0 are assigned white.

[0106] As an optional implementation of this disclosure, the process of forming a video file containing the target object based on the position of the target object relative to the camera device may include the following steps:

[0107] First, the pixel values ​​of corresponding pixels in adjacent frame images formed in the camera device are subtracted to obtain a pixel difference matrix.

[0108] Two adjacent frames formed in the camera device can be arbitrarily selected, and each adjacent frame can be represented by a 2-pixel matrix. By calculating the difference between these 2-pixel matrices, the pixel difference matrix of the adjacent frame images can be obtained.

[0109] Next, determine whether the average value of the pixel difference matrix is ​​greater than a preset threshold.

[0110] The pixel difference matrix can be used to characterize the motion change process between any two adjacent frames. When the content in two adjacent frames does not change, the mean of the pixel difference matrix is ​​close to 0; conversely, the values ​​in the pixel difference matrix will change to some extent. By comparing the mean of the pixel difference matrix with a preset threshold, it is possible to determine whether there is a motion change in adjacent frames.

[0111] Finally, if so, the adjacent frame images are stored as video frames in the video file.

[0112] When the mean of the pixel difference matrix is ​​greater than a preset threshold, it can be considered that there is motion change on adjacent video frames. At this time, the video frames with motion change can be stored in the video file for subsequent key point detection.

[0113] The above steps reduce the number of video frames without motion changes in the video file, thus reducing the burden of subsequent keypoint detection on the video frames.

[0114] As an optional implementation of this disclosure, before determining the interaction points of the target object in the preset application interface when multiple necessary key points exist in the set of key points, the method further includes:

[0115] Step 1: Detect the positional state of the target object based on the detected set of key points.

[0116] By detecting the types of keypoints present in the keypoint set, the positional state of the target object can be determined. For example, when the keypoint set contains keypoints for the entire body of the target object, the entire target object is within the camera's field of view. When the keypoint set only contains keypoints for the upper body of the target object, the upper body of the target object is within the camera's field of view. Based on this, the positional state of the target object relative to the camera can be determined.

[0117] Step 2: Based on the detected location status of the target object, provide a prompt to the target object.

[0118] By detecting the position status of the target object, prompts can be given to the target object to adjust its position relative to the shooting device.

[0119] In one scenario, it can be determined whether the target object's shoulder keypoints and head keypoints exist in the video frames of the video file; if not, the target object is prompted to change its current position until the target object's shoulder keypoints and head keypoints appear in the video frames of the video file.

[0120] In another scenario, it can be determined whether the target object is located in a preset position in the middle of the video frame based on the shoulder key points of the target object detected in the video frame. If so, after the upper body key points of the target object appear in the video frame, the target object is prompted to perform a preset action.

[0121] For a corresponding method embodiment, see [link to relevant documentation]. Figure 5 This disclosure also provides an interactive position control device 50 based on human body key points, including:

[0122] The acquisition module 501 is used to acquire the position of the target object relative to the camera device and form a video file containing the target object;

[0123] The detection module 502 is used to perform key point detection on the target object based on the video frame images contained in the video file, so as to obtain the key point set of the target object;

[0124] The determining module 503 is used to determine the interaction points of the target object in the preset application interaction interface when there are multiple necessary key points in the key point set;

[0125] The module 504 is used to change the interaction position of the interaction point in the interactive interface based on the obtained position movement of the target object relative to the camera device.

[0126] Figure 5The apparatus shown can perform the contents of the above method embodiments. For the parts not described in detail in this embodiment, please refer to the contents described in the above method embodiments, and will not be repeated here.

[0127] See Figure 6 This disclosure also provides an electronic device 60, which includes:

[0128] At least one processor; and,

[0129] The memory is communicatively connected to the at least one processor; wherein,

[0130] The memory stores instructions that can be executed by the at least one processor to enable the at least one processor to perform the interactive position control method based on human key points in the foregoing method embodiments.

[0131] This disclosure also provides a non-transitory computer-readable storage medium that stores computer instructions for causing the computer to perform the methods described above.

[0132] This disclosure also provides a computer program product, which includes a computing program stored on a non-transitory computer-readable storage medium. The computer program includes program instructions that, when executed by a computer, cause the computer to perform the interactive position control method based on human key points in the foregoing method embodiments.

[0133] The following is for reference. Figure 6 The diagram illustrates a structural schematic of an electronic device 60 suitable for implementing embodiments of the present disclosure. The electronic devices in the embodiments of the present disclosure may include, but are not limited to, mobile terminals such as mobile phones, laptops, digital broadcast receivers, PDAs (personal digital assistants), PADs (tablet computers), PMPs (portable multimedia players), in-vehicle terminals (e.g., in-vehicle navigation terminals), and fixed terminals such as digital TVs and desktop computers. Figure 6 The electronic device shown is merely an example and should not be construed as limiting the functionality and scope of the embodiments disclosed herein.

[0134] like Figure 6As shown, electronic device 60 may include a processing unit (e.g., a central processing unit, a graphics processor, etc.) 601, which can perform various appropriate actions and processes according to a program stored in read-only memory (ROM) 602 or a program loaded from storage device 608 into random access memory (RAM) 603. The RAM 603 also stores various programs and data required for the operation of electronic device 60. The processing unit 601, ROM 602, and RAM 603 are interconnected via bus 604. An input / output (I / O) interface 605 is also connected to bus 604.

[0135] Typically, the following devices can be connected to I / O interface 605: input devices 606 including, for example, touchscreens, touchpads, keyboards, mice, image sensors, microphones, accelerometers, gyroscopes, etc.; output devices 607 including, for example, liquid crystal displays (LCDs), speakers, vibrators, etc.; storage devices 608 including, for example, magnetic tapes, hard disks, etc.; and communication devices 609. Communication device 609 allows electronic device 60 to communicate wirelessly or wiredly with other devices to exchange data. Although an electronic device 60 with various devices is shown in the figure, it should be understood that it is not required to implement or possess all the devices shown. More or fewer devices may be implemented or possessed alternatively.

[0136] In particular, according to embodiments of this disclosure, the processes described above with reference to the flowcharts can be implemented as computer software programs. For example, embodiments of this disclosure include a computer program product comprising a computer program carried on a computer-readable medium, the computer program containing program code for performing the methods shown in the flowcharts. In such embodiments, the computer program can be downloaded and installed from a network via a communication device 609, or installed from a storage device 608, or installed from a ROM 602. When the computer program is executed by the processing device 601, it performs the functions defined in the methods of embodiments of this disclosure.

[0137] It should be noted that the computer-readable medium described in this disclosure can be a computer-readable signal medium or a computer-readable storage medium, or any combination thereof. A computer-readable storage medium can be, for example,—but not limited to—an electrical, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, or device, or any combination thereof. More specific examples of a computer-readable storage medium may include, but are not limited to: an electrical connection having one or more wires, a portable computer disk, a hard disk, random access memory (RAM), read-only memory (ROM), erasable programmable read-only memory (EPROM or flash memory), optical fiber, portable compact disk read-only memory (CD-ROM), optical storage device, magnetic storage device, or any suitable combination thereof. In this disclosure, a computer-readable storage medium can be any tangible medium containing or storing a program that can be used by or in connection with an instruction execution system, apparatus, or device. In this disclosure, a computer-readable signal medium can include a data signal propagated in baseband or as part of a carrier wave, carrying computer-readable program code. Such propagated data signals can take various forms, including but not limited to electromagnetic signals, optical signals, or any suitable combination thereof. A computer-readable signal medium can be any computer-readable medium other than a computer-readable storage medium, which can send, propagate, or transmit a program for use by or in connection with an instruction execution system, apparatus, or device. The program code contained on the computer-readable medium can be transmitted using any suitable medium, including but not limited to: wires, optical fibers, RF (radio frequency), etc., or any suitable combination thereof.

[0138] The aforementioned computer-readable medium may be included in the aforementioned electronic device; or it may exist independently and not assembled into the electronic device.

[0139] The aforementioned computer-readable medium carries one or more programs that, when executed by the electronic device, cause the electronic device to: acquire at least two Internet Protocol (IP) addresses; send a node evaluation request including the at least two IP addresses to a node evaluation device, wherein the node evaluation device selects an IP address from the at least two IP addresses and returns it; and receive the IP address returned by the node evaluation device; wherein the acquired IP address indicates an edge node in a content delivery network.

[0140] Alternatively, the aforementioned computer-readable medium carries one or more programs that, when executed by the electronic device, cause the electronic device to: receive a node evaluation request including at least two Internet Protocol (IP) addresses; select an IP address from the at least two IP addresses; and return the selected IP address; wherein the received IP address indicates an edge node in the content delivery network.

[0141] Computer program code for performing the operations of this disclosure can be written in one or more programming languages ​​or a combination thereof, including object-oriented programming languages ​​such as Java, Smalltalk, and C++, and conventional procedural programming languages ​​such as the "C" language or similar programming languages. The program code can be executed entirely on the user's computer, partially on the user's computer, as a standalone software package, partially on the user's computer and partially on a remote computer, or entirely on a remote computer or server. In cases involving remote computers, the remote computer can be connected to the user's computer via any type of network—including a local area network (LAN) or a wide area network (WAN)—or can be connected to an external computer (e.g., via the Internet using an Internet service provider).

[0142] The flowcharts and block diagrams in the accompanying drawings illustrate the architecture, functionality, and operation of possible implementations of systems, methods, and computer program products according to various embodiments of this disclosure. In this regard, each block in a flowchart or block diagram may represent a module, segment, or portion of code containing one or more executable instructions for implementing a specified logical function. It should also be noted that in some alternative implementations, the functions indicated in the blocks may occur in a different order than those indicated in the drawings. For example, two consecutively indicated blocks may actually be executed substantially in parallel, and they may sometimes be executed in reverse order, depending on the functions involved. It should also be noted that each block in the block diagrams and / or flowcharts, and combinations of blocks in the block diagrams and / or flowcharts, can be implemented using a dedicated hardware-based system that performs the specified function or operation, or using a combination of dedicated hardware and computer instructions.

[0143] The units described in the embodiments of this disclosure can be implemented in software or in hardware. The name of a unit does not necessarily limit the unit itself; for example, the first acquisition unit can also be described as "a unit that acquires at least two Internet Protocol addresses".

[0144] It should be understood that the various parts of this disclosure can be implemented in hardware, software, firmware, or a combination thereof.

[0145] The above description is merely a specific embodiment of this disclosure, but the scope of protection of this disclosure is not limited thereto. Any variations or substitutions that can be easily conceived by those skilled in the art within the scope of the technology disclosed in this disclosure should be included within the scope of protection of this disclosure. Therefore, the scope of protection of this disclosure should be determined by the scope of the claims.

Claims

1. A human key point based interactive position control method, characterized in that, The method comprises the following steps: forming a video file containing the target object based on the position of the target object relative to the camera device; performing key point detection on the target object based on the video frame images contained in the video file to obtain a key point set of the target object; when there are multiple necessary key points in the key point set, determining an interaction point of the target object in a preset application program interaction interface through the multiple necessary key points, comprising: obtaining a center point of the multiple necessary key points; determining the relative position of the center point on the video frame of the video file; generating the interaction point on the position corresponding to the relative position on the interaction interface; wherein the necessary key points include shoulder key points and head key points of the target object; the interaction point is an interaction element for the target object to interact with the application program; changing the interaction position of the interaction point in the interaction interface based on the obtained position movement of the target object relative to the camera device, comprising: obtaining the corresponding movement distance and movement direction of the target object in the video frame of the video file; determining the new position of the interaction point in the interaction interface based on the movement distance and the movement direction.

2. The method of claim 1, wherein, The method further comprises the following steps: transforming the video frame images in the video file into grayscale images; performing edge detection on the grayscale images to obtain the edge contour of the target object; determining the key point set of the target object based on the edge contour.

3. The method of claim 1, wherein, The method further comprises the following steps: performing a subtraction operation on the pixel values of the pixel points corresponding to adjacent frame images formed in the camera device to obtain a pixel difference matrix; determining whether the average value of the pixel difference matrix is greater than a preset threshold value; if yes, storing the adjacent frame images as video frames in the video file.

4. The method of claim 1, wherein, The method further comprises the following steps before determining the interaction point of the target object in the preset application program interaction interface when there are multiple necessary key points in the key point set: detecting the position state of the target object based on the detected key point set; prompting the target object based on the detected position state of the target object.

5. The method of claim 4, wherein, The method further comprises the following steps of prompting the target object based on the detected position state of the target object: determining whether the shoulder key points and the head key points of the target object exist in the video frame of the video file; if no, prompting the target object to change the current position of the target object until the shoulder key points and the head key points of the target object appear in the video frame of the video file.

6. The method of claim 4, wherein, The method further comprises the following steps of prompting the target object based on the detected position state of the target object: determining whether the target object is at a preset position in the middle of the video frame based on the shoulder key points of the target object detected in the video frame of the video file; if yes, prompting the target object to perform a preset action after the upper body key points of the target object appear in the video frame.

7. A human key point based interactive position control device, characterized in that, The method comprises the following steps: An acquisition module is configured to acquire a video file containing a target object based on a position of the target object relative to a camera device; A detection module is configured to perform key point detection on the target object based on a video frame image contained in the video file to obtain a key point set of the target object; A determination module is configured to determine an interaction point of the target object in a preset application interaction interface by a plurality of necessary key points when the key point set contains the plurality of necessary key points, including: acquiring a center point of the plurality of necessary key points; determining a relative position of the center point on a video frame of the video file; and generating the interaction point on a position corresponding to the relative position on the interaction interface; wherein the necessary key points include a shoulder key point and a head key point of the target object; and the interaction point is an interaction element for the target object to interact with the application. A change module is configured to change an interaction position of the interaction point in the interaction interface based on a position movement of the target object relative to the camera device, including: acquiring a corresponding movement distance and a movement direction of the target object in the video frame of the video file; and determining a new position of the interaction point in the interaction interface based on the movement distance and the movement direction.

8. An electronic device, comprising: at least one processor; and a memory connected to the at least one processor in communication; wherein the memory stores instructions executable by the at least one processor, characterized in that the instructions are executed by the at least one processor to enable the at least one processor to perform the human key point based interaction position control method of any one of claims 1-6.

9. A non-transitory computer-readable storage medium storing computer instructions, the computer instructions comprising: The computer instructions are used to enable the computer to perform the human key point based interaction position control method of any one of claims 1-6.

Citation Information

Patent Citations

  • Real-time control method and system of three-dimensional model

    CN106251396A

  • Augmented reality processing method, object recognition method and terminal

    CN109918975A

  • Systems and methods of tracking object movements in three-dimensional space

    US20140205146A1

  • Key point detection method and apparatus, storage medium and electronic device

    CN108229282A

  • Interaction method and device based on human body posture and computer device

    CN109753152A