Я предполагаю, что это потому, что ваш масштаб огромен.Например, предположим, что исходное изображение имеет размер 1600x1200 ... затем вы масштабируете его с коэффициентом 2,133,33333x1600, что дает вам окончательный размер изображения 3,413,333 x 1,920,000 - что довольно большое изображение!
Iподозреваю, что вы хотели:
double scaleX = targetScale / bmps.PixelWidth;
double scaleY = targetScale / bmps.PixelHeight;
В конце концов, я предполагаю, что если исходное изображение больше, вы хотите растянуть на меньше , а не больше .