A computer-implemented method, comprising: (a) receiving seismic data acquired via one or more seismic surveys and inclusive of data that corresponds to reflections from a target below a distorting velocity feature in a subsurface, wherein the presence of the distorting velocity feature results in distortion to a seismic image; (b) adding (124, 126) a velocity perturbation (106, 108, 110, 112, 114, and 116) at a first location of an initial velocity model that represents a portion of the subsurface responsible for the distortion to the seismic image, in order to generate a perturbed velocity model; (c) generating an image via seismic migration of the seismic data and the perturbed velocity model; (d) generating and assigning a measure of quality to the image, wherein the measure of quality assigned to the image is generated by summing up the squares of all the values of the image; (e) determining (132, 134, 136, 138) whether the measure of quality assigned to the image is an optimal measure of quality at the first location of the initial velocity model that corresponds to the portion of the subsurface responsible for the distortion to the seismic image; (f) when the measure of the quality assigned to the image is the optimal measure of quality at the first location of the initial velocity model that corresponds to the portion of the subsurface responsible for the distortion to the seismic image, accepting the velocity perturbation (106, 108, 110, 112, 114, and 116) and determining whether an additional velocity perturbation (106, 108, 110, 112, 114, and 116) is to be added to the initial velocity model at an additional location of the initial velocity model that represents the portion of the subsurface responsible for the distortion to the seismic image; (g) when the additional velocity perturbation (106, 108, 110, 112, 114, and 116) is to be added to the initial velocity model at the additional location of the initial velocity model, repeating steps (b)-(f) iteratively for each of one or more additional velocity perturbations (106, 108, 110, 112, 114, and 116) until it is determined in step (f) that a previously determined additional location was a last location of the initial velocity model; and (h) when the previously determined additional location from step (f) was the last location of the initial velocity model, updating the initial velocity model by summing a value of the initial velocity model at a location at which the initial velocity model was perturbed and the accepted velocity perturbation at the location, for each of the locations and the additional locations of the initial velocity model, to generate a revised velocity model (a) receiving seismic data acquired via one or more seismic surveys and inclusive of data that corresponds to reflections from a target below a distorting velocity feature in a subsurface, wherein the presence of the distorting velocity feature results in distortion to a seismic image; (b) adding (124, 126) a velocity perturbation (106, 108, 110, 112, 114, and 116) at a first location of an initial velocity model that represents a portion of the subsurface responsible for the distortion to the seismic image, in order to generate a perturbed velocity model; (c) generating an image via seismic migration of the seismic data and the perturbed velocity model; (d) generating and assigning a measure of quality to the image, wherein the measure of quality assigned to the image is generated by summing up the squares of all the values of the image; (e) determining (132, 134, 136, 138) whether the measure of quality assigned to the image is an optimal measure of quality at the first location of the initial velocity model that corresponds to the portion of the subsurface responsible for the distortion to the seismic image; (f) when the measure of the quality assigned to the image is the optimal measure of quality at the first location of the initial velocity model that corresponds to the portion of the subsurface responsible for the distortion to the seismic image, accepting the velocity perturbation (106, 108, 110, 112, 114, and 116) and determining whether an additional velocity perturbation (106, 108, 110, 112, 114, and 116) is to be added to the initial velocity model at an additional location of the initial velocity model that represents the portion of the subsurface responsible for the distortion to the seismic image; (g) when the additional velocity perturbation (106, 108, 110, 112, 114, and 116) is to be added to the initial velocity model at the additional location of the initial velocity model, repeating steps (b)-(f) iteratively for each of one or more additional velocity perturbations (106, 108, 110, 112, 114, and 116) until it is determined in step (f) that a previously determined additional location was a last location of the initial velocity model; and (h) when the previously determined additional location from step (f) was the last location of the initial velocity model, updating the initial velocity model by summing a value of the initial velocity model at a location at which the initial velocity model was perturbed and the accepted velocity perturbation at the location, for each of the locations and the additional locations of the initial velocity model, to generate a revised velocity model