IP Library › Granted Patent US 11,436,802
Granted Patent B2
US 11,436,802 · App. 16/931,024 · Granted Sep 6, 2022

Object modeling and movement method and apparatus, and device

Inventors: Naoya Iwamoto (Tokyo, JP); Tizheng Wang (Shenzhen, CN); Caihua Lei (Tokyo, JP)
Assignee: HUAWEI TECHNOLOGIES CO., LTD.
G06T17/205G06T7/507G06T7/579G06T13/40G06T17/10G06T19/20G06T2200/24G06T2207/10028G06T2219/2016G06T2219/2021G06T2219/2024
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 11,436,802
App. No.
16/931,024
Granted
Sep 6, 2022
Kind
B2
Abstract

The present invention discloses an object modeling and movement method. The method is applied to a mobile terminal, and the mobile terminal includes a color camera and a depth camera. The method includes: performing panoramic scanning on a target object by using the color camera and the depth camera, to obtain a 3D model of the target object; obtaining a target skeletal model; fusing the target skeletal model and the 3D model of the target object; obtaining a target movement manner; and controlling the target skeletal model in the target movement manner, to animate the 3D model of the target object in the target movement manner. This can implement integration from scanning, 3D reconstruction, skeletal rigging, to preset animation display for an object on one terminal, thereby implementing dynamization of a static object, and increasing interest in using the mobile terminal by a user.

Claims (75)

1. An object modeling and movement method, comprising:

performing panoramic scanning on a target object using a color camera and a depth camera of a mobile terminal, to obtain a sequence of color images and a sequence of depth maps, wherein the panoramic scanning is performed by placing the target object in front of the color camera and the depth camera and rotating the target object in an all-round direction while keeping the mobile terminal still to obtain the sequence of color images and the sequence of depth maps, wherein the color camera and the depth camera are located on one side of the mobile terminal;

providing a scanning progress to a user indicating whether a panorama of the target object is covered, wherein the panoramic scanning of the object is performed at an interval of a preset angle and a union set of scanned images enable construction of the target object, wherein the user is prompted when scanning completes indicating the union set of scanned images enable construction of the target object;

obtaining a 3D model of the target object based on the sequence of color images and the sequence of depth maps;

obtaining a current movement manner of a first object;

animating the 3D model of the target object to move in the current movement manner of the first object;

determining keyframe information for texture mapping;

selecting N keyframes for each of roll, yaw, and pitch directions for the texture mapping by applying a selection policy and an angle policy based on the keyframe information, wherein the angle policy divides 360 degrees into 360/N areas, wherein N is a preset number, wherein the selection policy utilizes a gradient method and a sobel operator to perform blurriness computation to select the N keyframes; and

mapping a texture for the 3D model of the target object based on the N keyframes.

2. The method according to claim 1 , wherein the obtaining a current movement manner of a first object comprises:

capturing a real-time action of the first object; and

using a movement manner of the real-time action of the first object as the current movement manner of the first object.

3. The method according to claim 1 , further comprising:

when the 3D model of the target object moves in the current movement manner of the first object, using a captured image of a real-time action of the first object as a background of a movement of the target object.

4. The method according to claim 1 , wherein the target object is a static object, and the first object is a character.

5. The method according to claim 1 , wherein the performing panoramic scanning on a target object comprises:

synchronously invoking the color camera and the depth camera to scan the target object, wherein a shooting frame rate of the color camera and a shooting frame rate of the depth camera are both greater than or equal to 25 frames per second (fps).

6. The method according to claim 1 , wherein before performing panoramic scanning on a target object, the method further comprises:

displaying a preview image, wherein an identifier in the preview image prompts whether the target object is suitable to be scanned.

7. The method according to claim 1 , wherein performing panoramic scanning on a target object further comprises:

presenting scanning progress for the target object on a display interface of the mobile terminal.

8. The method according to claim 1 , wherein animating the 3D model of the target object to move in the current movement manner of the first object further comprises:

displaying a shadow of the 3D model of the target object on a display interface.

9. The method according to claim 1 , wherein after obtaining a 3D model of the target object, the method further comprises:

obtaining a target skeletal model; and

fusing the target skeletal model and the 3D model of the target object; and

wherein animating the 3D model of the target object to move in the current movement manner of the first object comprises:

controlling the target skeletal model to move in the current movement manner of the first object, to animate the 3D model, obtained through fusion, of the target object to move in the current movement manner of the first object.

10. The method according claim 9 , wherein the obtaining a target skeletal model comprises:

receiving an operation instruction of a user, wherein the operation instruction is used to combine at least two line segments and at least one point into a skeletal model, wherein the line segment represents a skeleton in the skeletal model and the at least one point represents a joint node in the skeletal model; or

obtaining a skeletal model that matches an outline of the target object, and using the skeletal model as the target skeletal model.

11. The method according to claim 9 , further comprising:

performing a skinning operation on the target skeletal model and the 3D model of the target object to determine a position change of a point on a surface of the 3D model of the target object based on movement of the target skeletal model, to enable the 3D model of the target object to move along with the target skeletal model.

12. The method according to claim 1 , wherein the obtaining the 3D model of the target object comprises obtaining a target skeletal model from a plurality of skeletal models representative of the target object based on a highest degree of matching between the target skeletal model and a shape of the target object and fusing the target skeletal model with the 3D model of the target object.

13. The method according to claim 1 , further comprising:

determining whether a preset quantity of keyframes are stored at intervals of a specified angle for each of roll, yaw, and pitch directions;

if a quantity of stored keyframes is less than the preset quantity for each interval of the specified angle, instructing the user to perform additional scanning; and

if the quantity of stored keyframes is sufficient to cover a panoramic view of the target object, prompting the user that scanning completes.

14. The method according to claim 1 , further comprising performing blurriness computation using a gradient method, wherein the blurriness computation calculates a blur value based on a sum of difference values and the sum of difference values is calculated using a pixel value in an image together with two pixel values corresponding to a right side of a pixel and at a lower side of a pixel.

15. An object modeling and movement apparatus, wherein the apparatus is applied to a mobile terminal, the mobile terminal comprises a color camera and a depth camera, and the color camera and the depth camera are located on one side of the mobile terminal; and the apparatus comprises:

a scanning module configured to perform panoramic scanning on a target object by using the color camera and the depth camera of the mobile terminal, to obtain a sequence of color images and a sequence of depth maps; and obtain a 3D model of the target object based on the sequence of color images and the sequence of depth maps, wherein the panoramic scanning is performed by placing the target object in front of the color camera and the depth camera and rotating the target object in an all-round direction while keeping the mobile terminal still to obtain the sequence of color images and the sequence of depth maps, wherein the color camera and the depth camera are located on one side of the mobile terminal;

a display interface configured to provide a scanning progress to a user indicating whether a panorama of the target object is covered, wherein the panoramic scanning of the object is performed at an interval of a preset angle and a union set of scanned images enable construction of the target object, wherein the user is prompted when scanning completes indicating the union set of scanned images enable construction of the target object;

a second obtaining module configured to obtain a current movement manner of a first object; and

a movement module configured to animate the 3D model of the target object to move in the current movement manner of the first object,

wherein the scanning module is further configured to:

determine keyframe information for texture mapping;

select N keyframes for each of roll, yaw, and pitch directions for the texture mapping by applying a selection policy and an angle policy based on the keyframe information, wherein the angle policy divides 360 degrees into 360/N areas, wherein N is a preset number, wherein the selection policy utilizes a gradient method and a sobel operator to perform blurriness computation to select the N keyframes; and

map a texture for the 3D model of the target object based on the N keyframes.

16. The apparatus according to claim 15 , wherein the second obtaining module is configured to:

capture a real-time action of the first object; and

use a movement manner of the real-time action of the first object as the current movement manner of the first object.

17. The apparatus according to claim 15 , wherein the movement module is further configured to:

when the 3D model of the target object moves in the current movement manner of the first object, use a captured image of a real-time action of the first object as a background of the movement of the target object.

18. The apparatus according to claim 15 , wherein the target object is a static object, and the first object is a character.

19. The apparatus according to claim 15 , wherein the scanning module is further configured to:

display a preview image, wherein an identifier in the preview image prompts whether the target object is suitable to be scanned.

20. The apparatus according to claim 15 , wherein the movement module is further configured to:

display a shadow of the 3D model of the target object on a display interface of the mobile terminal.

21. The apparatus according to claim 15 , further comprising:

a first obtaining module configured to obtain a target skeletal model;

a fusion module configured to fuse the target skeletal model and the 3D model of the target object; wherein

the movement module is configured to control the target skeletal model to move in the current movement manner of the first object, to animate the 3D model, obtained through fusion, of the target object to move in the current movement manner of the first object; and

the first obtaining module is configured to:

receive an operation instruction of a user, wherein the operation instruction is used to combine at least two line segments and at least one point into a skeletal model, wherein the line segment represents a skeleton in the skeletal model and the at least one point represents a joint node in the skeletal model; or

obtain a skeletal model that matches an outline of the target object, and use the skeletal model as the target skeletal model.

22. A terminal device, wherein the terminal device comprises a memory, a processor, a bus, a depth camera, and a color camera coupled via the bus, wherein the memory is configured to store a computer program and an instruction; and the processor is configured to invoke the computer program and the instruction, to enable the terminal device to perform operations, comprising:

performing panoramic scanning on a target object using the color camera and the depth camera, to obtain a sequence of color images and a sequence of depth maps, wherein the panoramic scanning is performed by placing the target object in front of the color camera and the depth camera and rotating the target object in an all-round direction while keeping the terminal device still to obtain the sequence of color images and the sequence of depth maps, wherein the color camera and the depth camera are located on one side of the terminal device;

providing a scanning progress to a user indicating whether a panorama of the target object is covered, wherein the panoramic scanning of the target object is performed at an interval of a preset angle and a union set of scanned images enable construction of the target object, wherein the user is prompted when scanning completes indicating the union set of scanned images enable construction of the target object;

obtaining a 3D model of the target object based on the sequence of color images and the sequence of depth maps;

obtaining a current movement manner of a first object;

animating the 3D model of the target object to move in the current movement manner of the first object;

determining keyframe information for texture mapping;

selecting N keyframes for each of roll, yaw, and pitch directions for the texture mapping by applying a selection policy and an angle policy based on the keyframe information, wherein the angle policy divides 360 degrees into 360/N areas, wherein N is a preset number, wherein the selection policy utilizes a gradient method and a sobel operator to perform blurriness computation to select the N keyframes; and

mapping a texture for the 3D model of the target object based on the N keyframes.

23. The terminal device according to claim 22 , wherein the terminal device further comprises an antenna system, and the antenna system sends and receives a wireless communication signal under control of the processor, to implement wireless communication with a mobile communications network, wherein the mobile communications network comprises one or more of the following: a GSM network, a CDMA network, a 3G network, a 4G network, a 5G network, FDMA, TDMA, PDC, TACS, AMPS, WCDMA, TDSCDMA, Wi-Fi, and an LTE network.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 16, 2020
From: IWAMOTO, NAOYA; WANG, TIZHENG; LEI, CAIHUA
To: HUAWEI TECHNOLOGIES CO., LTD.
Reel/Frame 053231/0387 →
Priority Claims (1)
CN 201810646701.0 · Jun 21, 2018 · national
Continuity (2)
Continuation PCTCN2019088480 · May 27, 2019
Related Publication 20200349765A1 · Nov 5, 2020