1. A method, comprising: identifying, by one or more computing devices, a plurality of features in one or more two-dimensional images; matching, by the one or more computing devices, at least some of the plurality of features of the one or more two-dimensional images with features of one or more neighboring two-dimensional images; calculating, by the one or more computing devices, a location for each of the matched features, the calculating resulting in a cloud of points in three-dimensional space; estimating, by the one or more computing devices, at least one facade plane based on the cloud of points; estimating, by the one or more computing devices, at least one street plane based on a location of a street, the street being associated with given ones of the one or more two-dimensional images; and forming, by the one or more computing devices, a three-dimensional model from the at least one estimated facade plane and the at least one estimated street plane, the three-dimensional model corresponding to one or more objects shown in the two-dimensional images; wherein estimating the at least one facade plane includes translating the at least one facade plane on an axis from the street and evaluating how many points of the cloud of points are within a predetermined range of the one or more facade planes at each of a plurality of stages of the translation.