1. A system comprising: an analog front end module configured to receive a first signal generated by reading data from a storage medium, wherein the storage medium stores the data in concentric tracks; sample the first signal; and output a second signal based on the sampling of the first signal; an equalizer module configured to generate a first vector based on the second signal, wherein the first vector represents the data in the first signal; a detector module configured to generate a second vector based on the first vector, wherein the second vector represents a noise-free vector corresponding to the first vector; a re-timing module configured to re-sample a plurality of samples in the first vector based on the second vector, and generate a third vector based on the re-sampling of the plurality of samples in the first vector; and an inter-track interference cancellation module configured to remove inter-track interference from the third vector.