A computer-implemented method, comprising: determining a residual associated with input seismic data, wherein the input seismic data comprises blended seismic data generated by two or more seismic shots imparted by one or more seismic sources and received by one or more seismic receivers , wherein the residual indicates a difference between an expected input seismic data and the input seismic data, wherein the expected input seismic data is determined by blending estimated primary signals with time shifts applied to the estimated primary signals based on a time of seismic source excitations that generated primary signals, and wherein a primary signal estimate is initialized; iteratively updating a value of the residual based at least in part on separation operations, wherein the separation operations are configured to filter coherent signals, associated with either residual data or a sum of the residual data and a current primary signal estimate , into a first subset of signals, and wherein the separation operations are configured to filter non-coherent signals associated with the residual data into a second subset of signals; generating additional coherent signals with correct timing from misplaced signals within the first subset of signals, at least in part by iteratively extracting and re-allocating a non-coherent part or a less-coherent part of the first subset of signals; and in response to satisfying an end condition, transmitting a deblended output that is determined based at least in part on the first subset of signals and the additional coherent signals and that is for use in generating a seismic image, wherein the seismic image represents hydrocarbons in a subsurface region of Earth or subsurface drilling hazards. determining a residual associated with input seismic data, wherein the input seismic data comprises blended seismic data generated by two or more seismic shots imparted by one or more seismic sources and received by one or more seismic receivers , wherein the residual indicates a difference between an expected input seismic data and the input seismic data, wherein the expected input seismic data is determined by blending estimated primary signals with time shifts applied to the estimated primary signals based on a time of seismic source excitations that generated primary signals, and wherein a primary signal estimate is initialized; iteratively updating a value of the residual based at least in part on separation operations, wherein the separation operations are configured to filter coherent signals, associated with either residual data or a sum of the residual data and a current primary signal estimate , into a first subset of signals, and wherein the separation operations are configured to filter non-coherent signals associated with the residual data into a second subset of signals; generating additional coherent signals with correct timing from misplaced signals within the first subset of signals, at least in part by iteratively extracting and re-allocating a non-coherent part or a less-coherent part of the first subset of signals; and in response to satisfying an end condition, transmitting a deblended output that is determined based at least in part on the first subset of signals and the additional coherent signals and that is for use in generating a seismic image, wherein the seismic image represents hydrocarbons in a subsurface region of Earth or subsurface drilling hazards. <EOS>