IP Library Granted Patent US 10,963,727
Granted Patent B2
US 10,963,727 · App. 16/386,143 · Granted Mar 30, 2021

Method, device and storage medium for determining camera posture information

Inventors: Xiangkai Lin (Shenzhen, CN); Linchao Bao (Shenzhen, CN); Wei Liu (Shenzhen, CN)
Assignee: TENCENT TECHNOLOGY (SHENZHEN) COMPANY LIMITED
G06K9/4609G06K9/20G06K9/34G06K9/46G06K9/6211G06T3/0006G06T3/0012G06T5/20G06T7/00G06T7/246G06T7/73
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 10,963,727
App. No.
16/386,143
Granted
Mar 30, 2021
Kind
B2
Abstract

Embodiments of this application disclose a method for determining camera pose information of a camera of a mobile terminal. The method includes: obtaining a first image, a second image, and a template image; performing feature point detection on a first feature point of the template image and a second feature point of the second image, to obtain a first homography; determining a first target homography according to a first optical flow feature point in the first image and a second optical flow feature point in the second image, and determining a second homography according to the first target homography and a second target homography; and performing complementary filtering processing on the first homography and the second homography, to obtain camera pose information of the camera. In the embodiments of this application, complementary filtering processing may be performed on two homographies obtained in a camera pose tracking process.

Claims (78)

1. A method for determining camera pose information of a camera of a mobile terminal having one or more processors and memory storing a plurality of instructions to be executed by the one or more processors, the method comprising:

obtaining a first image, a second image, and a template image, the first image being a previous frame of image of the second image, the first image and the second image being images collected by the camera, and the template image being a reference image used for matching;

performing feature point detection on a first feature point in the template image and a second feature point in the second image, to obtain a first homography;

determining a first target homography according to a first optical flow feature point in the first image and a first optical flow feature point in the second image;

determining a second homography according to the first target homography and a second target homography, the second target homography being a homography from the template image to the first image; and

performing complementary filtering processing on the first homography and the second homography, to obtain camera pose information of the camera.

2. The method according to claim 1 , wherein the operation of performing complementary filtering processing on the first homography and the second homography, to obtain camera pose information of the camera comprises:

determining a first rotation and translation matrix according to the first homography, and determining a second rotation and translation matrix according to the second homography, the first homography and the second homography being two-dimensional information, and the first rotation and translation matrix and the second rotation and translation matrix being three-dimensional information; and

performing complementary filtering processing on the first rotation and translation matrix and the second rotation and translation matrix, to obtain the camera pose information.

3. The method according to claim 2 , wherein the operation of performing complementary filtering processing on the first rotation and translation matrix and the second rotation and translation matrix, to obtain the camera pose information comprises:

inputting the first rotation and translation matrix to a low-pass filter, to obtain a first filtering result;

inputting the second rotation and translation matrix to a high-pass filter, to obtain a second filtering result; and

determining the camera pose information according to the first filtering result and the second filtering result.

4. The method according to claim 2 , wherein the operation of determining a first rotation and translation matrix according to the first homography, and determining a second rotation and translation matrix according to the second homography comprises:

calculating the first rotation and translation matrix according to the first homography, a perspective projection matrix of the second image, and a perspective projection matrix of the template image; and

calculating the second rotation and translation matrix according to the second homography, the perspective projection matrix of the second image, and the perspective projection matrix of the template image.

5. The method according to claim 1 , wherein the template image corresponds to a plurality of grids arranged in arrays; and

the operation of performing feature point detection on a first feature point in the template image and a second feature point in the second image, to obtain a first homography comprises:

matching the first feature point in the template image with the second feature point in the second image, and determining a set of feature point pairs in each target grid of the plurality of grids, the feature point pair comprising: a first feature point located in the target grid, and a feature point that is in the second feature point and that has the largest matching degree with the first feature point; and

calculating the first homography between the template image and the second image according to the feature point pairs in the target grid.

6. The method according to claim 5 , further comprising:

extracting the first feature point from each image layer of the template image, and determining the first feature point in an original image layer,

the original image layer being an image layer of the template image, and the original image layer comprising the plurality of grids.

7. The method according to claim 6 , wherein the operation of extracting the first feature point from each image layer of the template image, and determining the first feature point in an original image layer comprises:

extracting the first feature point from a first image layer of the template image;

extracting the first feature point from a second image layer of the template image, the first image layer and the second image layer having different sizes; and

performing scaling processing on the first feature point in the first image layer and the first feature point in the second image layer, and performing projection to the original image layer.

8. The method according to claim 5 , further comprising:

before matching the first feature point in the template image with the second feature point in the second image, extracting the second feature point from the second image; and

the matching the first feature point in the template image with the second feature point in the second image, and determining a set of feature point pairs in each target grid of the plurality of grids further comprises:

matching the first feature point in each of the target grid of the original image layer with the second feature point, and obtaining at least one pair of mutually matched to-be-selected feature point pairs, each set of the to-be-selected feature point pairs corresponding to a matching score; and

selecting a feature point pair having the highest matching score from the at least one pair of to-be-selected feature point pairs, as a feature point pair determined in the target grid.

9. The method according to claim 1 , wherein the operation of determining a second homography according to a first optical flow feature point in the first image and a first target homography in the second image comprises:

obtaining the first optical flow feature point in a preset region of the first image, the preset region being a region corresponding to the template image;

obtaining the second optical flow feature point according to the first optical flow feature point; and

calculating the first target homography from the first image to the second image according to the first optical flow feature point and the second optical flow feature point.

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

obtaining q optical flow feature points as the second optical flow feature points if the quantity of the second optical flow feature points is less than a preset threshold, so that the quantity of the second optical flow feature points reaches the preset threshold, q being a positive integer.

11. A mobile terminal having a camera, one or more processors, memory and a plurality of instructions stored in the memory that, when executed by the one or more processors, cause the mobile terminal to perform operations comprising:

obtaining a first image, a second image, and a template image, the first image being a previous frame of image of the second image, the first image and the second image being images collected by the camera, and the template image being a reference image used for matching;

performing feature point detection on a first feature point in the template image and a second feature point in the second image, to obtain a first homography;

determining a first target homography according to a first optical flow feature point in the first image and a first optical flow feature point in the second image;

determining a second homography according to the first target homography and a second target homography, the second target homography being a homography from the template image to the first image; and

performing complementary filtering processing on the first homography and the second homography, to obtain camera pose information of the camera.

12. The mobile terminal according to claim 11 , wherein the operation of performing complementary filtering processing on the first homography and the second homography, to obtain camera pose information of the camera comprises:

determining a first rotation and translation matrix according to the first homography, and determining a second rotation and translation matrix according to the second homography, the first homography and the second homography being two-dimensional information, and the first rotation and translation matrix and the second rotation and translation matrix being three-dimensional information; and

performing complementary filtering processing on the first rotation and translation matrix and the second rotation and translation matrix, to obtain the camera pose information.

13. The mobile terminal according to claim 12 , wherein the operation of performing complementary filtering processing on the first rotation and translation matrix and the second rotation and translation matrix, to obtain the camera pose information comprises:

inputting the first rotation and translation matrix to a low-pass filter, to obtain a first filtering result;

inputting the second rotation and translation matrix to a high-pass filter, to obtain a second filtering result; and

determining the camera pose information according to the first filtering result and the second filtering result.

14. The mobile terminal according to claim 12 , wherein the operation of determining a first rotation and translation matrix according to the first homography, and determining a second rotation and translation matrix according to the second homography comprises:

calculating the first rotation and translation matrix according to the first homography, a perspective projection matrix of the second image, and a perspective projection matrix of the template image; and

calculating the second rotation and translation matrix according to the second homography, the perspective projection matrix of the second image, and the perspective projection matrix of the template image.

15. The mobile terminal according to claim 11 , wherein the template image corresponds to a plurality of grids arranged in arrays; and

the operation of performing feature point detection on a first feature point in the template image and a second feature point in the second image, to obtain a first homography comprises:

matching the first feature point in the template image with the second feature point in the second image, and determining a set of feature point pairs in each target grid of the plurality of grids, the feature point pair comprising: a first feature point located in the target grid, and a feature point that is in the second feature point and that has the largest matching degree with the first feature point; and

calculating the first homography between the template image and the second image according to the feature point pairs in the target grid.

16. The mobile terminal according to claim 11 , wherein the operation of determining a second homography according to a first optical flow feature point in the first image and a first target homography in the second image comprises:

obtaining the first optical flow feature point in a preset region of the first image, the preset region being a region corresponding to the template image;

obtaining the second optical flow feature point according to the first optical flow feature point; and

calculating the first target homography from the first image to the second image according to the first optical flow feature point and the second optical flow feature point.

17. A non-transitory computer readable storage medium storing a plurality of instructions in connection with a mobile terminal having a camera, one or more processors, memory and a plurality of instructions stored in the memory that, when executed by the one or more processors, cause the mobile terminal to perform a plurality of operations including:

obtaining a first image, a second image, and a template image, the first image being a previous frame of image of the second image, the first image and the second image being images collected by the camera, and the template image being a reference image used for matching;

performing feature point detection on a first feature point in the template image and a second feature point in the second image, to obtain a first homography;

determining a first target homography according to a first optical flow feature point in the first image and a first optical flow feature point in the second image;

determining a second homography according to the first target homography and a second target homography, the second target homography being a homography from the template image to the first image; and

performing complementary filtering processing on the first homography and the second homography, to obtain camera pose information of the camera.

18. The non-transitory computer readable storage medium according to claim 17 , wherein the operation of performing complementary filtering processing on the first homography and the second homography, to obtain camera pose information of the camera comprises:

determining a first rotation and translation matrix according to the first homography, and determining a second rotation and translation matrix according to the second homography, the first homography and the second homography being two-dimensional information, and the first rotation and translation matrix and the second rotation and translation matrix being three-dimensional information; and

performing complementary filtering processing on the first rotation and translation matrix and the second rotation and translation matrix, to obtain the camera pose information.

19. The non-transitory computer readable storage medium according to claim 18 , wherein the operation of performing complementary filtering processing on the first rotation and translation matrix and the second rotation and translation matrix, to obtain the camera pose information comprises:

inputting the first rotation and translation matrix to a low-pass filter, to obtain a first filtering result;

inputting the second rotation and translation matrix to a high-pass filter, to obtain a second filtering result; and

determining the camera pose information according to the first filtering result and the second filtering result.

20. The non-transitory computer readable storage medium according to claim 18 , wherein the operation of determining a first rotation and translation matrix according to the first homography, and determining a second rotation and translation matrix according to the second homography comprises:

calculating the first rotation and translation matrix according to the first homography, a perspective projection matrix of the second image, and a perspective projection matrix of the template image; and

calculating the second rotation and translation matrix according to the second homography, the perspective projection matrix of the second image, and the perspective projection matrix of the template image.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 18, 2019
From: LIN, XIANGKAI; BAO, LINCHAO; LIU, WEI
To: TENCENT TECHNOLOGY (SHENZHEN) COMPANY LIMITED
Reel/Frame 051039/0457 →
Priority Claims (1)
CN 201710552105.1 · Jul 7, 2017 · national
Continuity (2)
Continuation PCTCN2018093418 · Jun 28, 2018
Related Publication 20190244050A1 · Aug 8, 2019