Determining the number of biomolecules within a small, diffraction-limited spot, is key to understanding intermolecular interactions that form the basis of all of information processing relevant to life. To enumerate the number of biomolecules within such a small region of interest (ROI), it is possible to illuminate an ROI containing a collection of fluorescently labeled biomolecules and observe the ROI's brightness over time. As most fluorescent labels (fluorophores) are initially in a fluorescently active state, the brightness diminishes in a step-like pattern as fluorophores photobleach one at a time. Naively, by counting steps, one could determine the number of fluorophores present. However, this analysis is complicated by photon shot noise, camera noise that amplifies intrinsic photon shot noise and fluorophore photophysics (i.e., states with variable emission visited by fluorophores). Current state of the art can typically enumerate as many as 20 fluorophores reliably. Yet in many biophysics problems, fluorophore numbers can vastly exceed 20 within an ROI. For this reason, we develop a method to learn the number of fluorophores alongside other parameters required to achieve high counts simultaneously and self-consistently (e.g., fluorophore photophysical rate parameters and camera parameters). As the number of fluorophores is initially unknown and may be very large, and as not all fluorophores may initially be emitting photons, we cannot rely on a traditional (parametric) Bayesian framework. As such, to achieve our goal of exceeding the state of the art by a factor of about 5, we must abandon the parametric Bayesian paradigm and invoke novel tools within Bayesian nonparametrics never previously used in step counting by photobleaching.