Back to results
US 8,941,644 B2Granted
Computing three-dimensional image models in parallel
AssigneeMicrosoft Corporation
InventorsWenwu Zhu, Siyuan Tang, Roberto R. Molinari, Dan Hou
Life of this patent
Estimating the term…
Abstract
This document describes techniques for creating three-dimensional models of image collections using a network-accessible (e.g., cloud-based) computation service, rather than a client computing device. In some instances described below, the computation service performs at least a portion of the operations for creating these models in parallel.
Claims18
A method comprising:
- receiving, at a cloud-based computation service from a client computing device over a network, a collection of digital photographs and a request from the client computing device over the network to create a three-dimensional model of the collection;
- and
- at least partly in response to the receiving:
- allocating multiple groups of digital photographs of the collection to multiple different computation servers of the cloud-based computation service;
- converting, by at least one computation server of the multiple different computation servers and at least partly in parallel, first versions of the digital photographs of the group allocated to the at least one computation server, to second versions of the digital photographs, the second versions of the digital photographs having different resolutions than the first versions of the digital photographs;
- extracting, by the at least one computation server of the multiple different computation servers, one or more features from each digital photograph of the group allocated to the at least one computation server;
- matching, by the at least one computation server of the multiple different computation servers, digital photographs to one another based at least in part on the features extracted from the digital photographs;
- providing results of the matching to a reconstruction server accessible via the network from the client computing device of the cloud-based computation service;
- and
- creating, by the reconstruction server, the three-dimensional model of the collection based at least in part on the second versions of the digital photographs of the collection and the results of the matching.
7 more elements
One or more computer-readable memory devices storing computer-executable instructions that, when executed by one or more processors, cause the one or more processors to perform acts comprising:
- receiving, at a cloud-based computation service and from a client computing device over a network, a collection of images and a request to create a three-dimensional model of the collection;
- and
- creating, by the cloud-based computation service and at least partly in response to receiving the request from the client computing device, the three-dimensional model of the collection, wherein the creating of the three-dimensional model of the collection by the cloud-based computation service comprises converting first versions of the images of the collection to second versions of the images, and wherein the second versions of the images have different resolutions than the first versions of the images.
A system comprising:
- a memory;
- one or more processors coupled to the memory;
- and
- one or more modules stored on the memory and executable by the one or more processors to:
- receive a collection of images, define multiple groups of images from the collection, and distribute the multiple groups to respectively different servers;
- convert first versions of the images of the collection of images to second versions of the images, the second versions of the images having different resolutions than the first versions of the images, and perform the converting of the images at least partly in parallel;
- extract features from the images of the multiple groups;
- and
- compare the extracted features to identify positions of the images of the multiple groups relative to one another;
- and wherein the system is accessible to a client computing device over a network.
7 more elements
Dependencies are inferred from the claim text.