An image processing apparatus comprising: a calculating unit configured to calculate a distance from a plurality of image capturing units to a reference road surface for each of a plurality of y coordinates selected in a disparity image, wherein the calculation of the respective distance is done by using the disparity in the reference road surface calculated for the respective y coordinate, wherein the disparity image includes disparity values obtained from a plurality of captured images respectively captured by the plurality of image capturing units, wherein the calculating unit is further configured to calculate the number of pixels of a traffic lane width corresponding to each of the plurality of y coordinates, with respect to the respective distance; a setting unit configured to, for each of the plurality of distances, set an area in the disparity image from which at least one of the plurality of disparity values is extracted, wherein the setting of the area is done according to a respective distance of the plurality of distances that has been calculated by the calculating unit and a width of a lane on the road surface, wherein the area has a horizontal width that is the number of pixels of the traffic lane width that corresponds to the respective y coordinate; a generating unit configured to generate a v-disparity map for indicating frequency distribution of disparity values in the disparity image, according to the disparity values extracted from the areas in the disparity image that have been set by the setting unit; and an estimating unit configured to estimate a road surface based on the v-disparity map, wherein the reference road surface includes a road surface that has been estimated by the estimating unit using a disparity image obtained from a second plurality of captured images that have previously been captured by the plurality of image capturing units, respectively. a calculating unit configured to calculate a distance from a plurality of image capturing units to a reference road surface for each of a plurality of y coordinates selected in a disparity image, wherein the calculation of the respective distance is done by using the disparity in the reference road surface calculated for the respective y coordinate, wherein the disparity image includes disparity values obtained from a plurality of captured images respectively captured by the plurality of image capturing units, wherein the calculating unit is further configured to calculate the number of pixels of a traffic lane width corresponding to each of the plurality of y coordinates, with respect to the respective distance; wherein the disparity image includes disparity values obtained from a plurality of captured images respectively captured by the plurality of image capturing units, wherein the calculating unit is further configured to calculate the number of pixels of a traffic lane width corresponding to each of the plurality of y coordinates, with respect to the respective distance; a setting unit configured to, for each of the plurality of distances, set an area in the disparity image from which at least one of the plurality of disparity values is extracted, wherein the setting of the area is done according to a respective distance of the plurality of distances that has been calculated by the calculating unit and a width of a lane on the road surface, wherein the area has a horizontal width that is the number of pixels of the traffic lane width that corresponds to the respective y coordinate; a generating unit configured to generate a v-disparity map for indicating frequency distribution of disparity values in the disparity image, according to the disparity values extracted from the areas in the disparity image that have been set by the setting unit; and an estimating unit configured to estimate a road surface based on the v-disparity map, wherein the reference road surface includes a road surface that has been estimated by the estimating unit using a disparity image obtained from a second plurality of captured images that have previously been captured by the plurality of image capturing units, respectively.