1. A method of processing seismic data so as to provide an image of a subsurface region, comprising the steps of: a) providing plurality of migrated shot gathers that contain information about the subsurface region b) summing the overlapping portions of the migrated shot gathers to provide a pilot stack; c) partitioning the plurality of migrated shot gathers into a plurality of groups, and summing the gathers in each group to provide a substack, wherein each group includes at least two migrated shots and wherein a substack is generated from each group; d) applying an amplitude normalization algorithm to the pilot stack so as to generate an amplitude-normalized pilot stack; e) calculating a weight function by comparing each substack to the amplitude-normalized pilot stack; f) weighting each substack using the weight function so as to generate a plurality of weighted sub stacks; g) summing the overlapping portions of the weighted substacks so as to generate a output stack; and h) using the output stack to generate an image of a subsurface region.