1. A method for sequencing nucleic acids, comprising (a) attaching a plurality of different nucleic acids to a surface; (b) amplifying the different nucleic acids on the surface to form a plurality of clusters on the surface, wherein clusters in the plurality of clusters abut or overlap with each other on the surface, wherein each of the clusters comprises copies of a single nucleic acid from the plurality of different nucleic acids; and (c) determining the sequences of the amplified copies in the clusters, wherein the sequences are determined by a method comprising: (i) obtaining images of overlapping signals emanating from the clusters that abut or overlap with each other on the surface, and (ii) processing the images to assign nucleic acid sequence information to a single cluster, wherein one or more nucleic acids in a cluster are distinguished from surrounding nucleic acids in the same cluster.