есть некоторый коэффициент масштабирования при использовании imnoise
со статистикой Пуассона.
Согласно документации Matlab:
"Если I имеет двойную точность, то значения входного пикселя интерпретируются как средства распределений Пуассона, увеличенных на 1e12. Например, если входной пиксель имеет значение 5.5e-12, то соответствующий выходной пиксель будет быть сгенерированы из распределения Пуассона со средним значением 5,5, а затем уменьшены до 1e12. "
попробуйте вместо
c = 1e12.*imnoise(c./1e12, 'poisson');