1. A computer-implemented method for constructing a three-dimensional model of a building using a plurality of two-dimensional photographic images in an image database and a building lot database, the method comprising: identifying, by one or more computing devices, a first photographic image of the building from the image database, the first photographic image taken from a first perspective specified by a first set of camera parameters; identifying, by the one or more computing devices, a second photographic image of the building from the image database, the second photographic image taken from a second perspective specified by a second set of camera parameters, the second perspective different from the first perspective; identifying, by the one or more computing devices, an obstructed view of at least a portion of the building in the first or second photographic images; identifying, by the one or more computing devices, a third-photographic image of the building from the image database, the third photographic image taken from a third perspective specified by a third set of camera parameters, wherein the third photographic image is chosen from the Image database such that the third photographic image provides an unobstructed view of the at least a portion of the building that is obstructed in the first or second photographic image: and determining, by the one or more computing devices, a first feature in the first photographic image corresponding to at least a portion of a roof of the building; determining, by the one or more computing devices, a second feature in the second photographic image corresponding to at least a portion of the roof of the building; determining, by the one or more computing devices, a third feature in the third photographic image corresponding to at least a portion of the roof of the building; determining, by the one or more computing devices, a height of the building based on the positions of first, second, and third features within the first, second, and third photographic images respectively, and the first, second, and third sets of camera parameters; determining, by the one or more computing devices, an identity of the building using reverse geocoding based at least in part on the first and second set of camera parameters; accessing, by the one or more computing devices, predetermined legal boundaries from the building lot database based at least in part on the determined identity of the building, the legal boundaries defining a lot associated with the building; constructing, by the one or more computing devices, a three-dimensional model of the building based on the height and the legal boundaries, wherein the legal boundaries specify, at least in part, a perimeter of the model and the height of the building specifies, at least in part, a height of the model; and improving, by the one or more computing devices, the three-dimensional model based on information provided by the third photographic image and the third set of camera parameters by modeling aspects of the building that are obstructed in the first photographic image and the second photographic image.