To calibrate an optical transition edge sensor, for each pulse of the light source (e.g., pulsed laser), one must determine the ratio of the expected number of photons that deposit energy and the expected number of photons created by the laser. Based on the estimated pulse height generated by each energy deposit, we form a pulse height spectrum with features corresponding to different numbers of deposited photons. We model the number of photons that deposit energy per laser pulse as a realization of a Poisson process, and the observed pulse height spectrum with a mixture model method. For each candidate feature set, we determine the expected number of photons that deposit energy per pulse and its associated uncertainty based on the mixture model weights corresponding to that candidate feature set. From training data, we select the optimal feature set according to an uncertainty minimization criterion. We then determine the expected number of photons that deposit energy per pulse and its associated uncertainty for test data that are independent of the training data. Our uncertainty budget accounts for random measurement errors, systematic effects due to mismodeling feature shapes in our mixture model, and possible imperfections in our feature set selection method.