A method of ultrasound data processing comprising: i) transmitting ultrasound excitation signals from elements of a transducer array; ii) receiving response signals from elements of the transducer array, each response signal corresponding to a respective channel; iii) sampling each response signal at one or more time points in the response signal to create a plurality of samples, each sample corresponding to a channel and a time point; iv) dividing the samples into at least two groups; v) beamforming the response signals from the first group; vi) beamforming the response signals from the second group; vii) repeating steps i) to vi) for M data frames, wherein a data frame comprises sampled response signals in respect of each of a plurality of pixels of an image space and where M is greater than 1; viii) correlating the beamformed signals of each group over the M data frames, the correlating comprising: generating, for each data frame of the M data frames, a correlation output, wherein the correlation output is based on the beamformed response signals from the first group and the beamformed response signals from the second group for that data frame, and combining the correlation output for the first data frame with the correlation outputs from subsequent data frames up to the M th data frame; and ix) generating an image output for at least a first pixel of the plurality of pixels of the image space using the combined correlation outputs. i) transmitting ultrasound excitation signals from elements of a transducer array; ii) receiving response signals from elements of the transducer array, each response signal corresponding to a respective channel; iii) sampling each response signal at one or more time points in the response signal to create a plurality of samples, each sample corresponding to a channel and a time point; iv) dividing the samples into at least two groups; v) beamforming the response signals from the first group; vi) beamforming the response signals from the second group; vii) repeating steps i) to vi) for M data frames, wherein a data frame comprises sampled response signals in respect of each of a plurality of pixels of an image space and where M is greater than 1; viii) correlating the beamformed signals of each group over the M data frames, the correlating comprising: generating, for each data frame of the M data frames, a correlation output, wherein the correlation output is based on the beamformed response signals from the first group and the beamformed response signals from the second group for that data frame, and combining the correlation output for the first data frame with the correlation outputs from subsequent data frames up to the M th data frame; and generating, for each data frame of the M data frames, a correlation output, wherein the correlation output is based on the beamformed response signals from the first group and the beamformed response signals from the second group for that data frame, and combining the correlation output for the first data frame with the correlation outputs from subsequent data frames up to the M th data frame; and ix) generating an image output for at least a first pixel of the plurality of pixels of the image space using the combined correlation outputs.