Traditional road extraction algorithms, which focus on improving the accuracy of road surfaces, cannot overcome the interference of shelter caused by vegetation, buildings, and shadows. In this paper, we extract the roads via road centerline extraction, road width extraction, broken centerline connection, and road reconstruction. We use a multiscale segmentation algorithm to segment the images, and feature extraction to get the initial road. The fast marching method (FMM) algorithm is employed to obtain the boundary distance field and the source distance field, and the branch backing-tracking method is used to acquire the initial centerline. Road width of each initial centerline is calculated by combining the boundary distance fields, before a tensor field is applied for connecting the broken centerline to gain the final centerline. The final centerline is matched with its road width when the final road is reconstructed. Three experimental results show that the proposed method improves the accuracy of the centerline and solves the problem of broken centerline, and that the method reconstructing the roads is excellent for maintain their integrity.