Как программно уменьшить контрастность изображения?

На картинках из библиотеки MNIST (набор изображений 28х28 для обучения нейросети) виден плавный переход от чёрного к белому:

Необходимо для дальнейшего распознавания вычертить мышкой любую цифру, например 4:

Так выглядит эта цифра после преобразования её к размеру 28х28:

Есть ли какая-то процедура или алгоритм, чтобы уменьшить контрастность, т.е. сгладить цвета при переходах от чёрного к белому, примерно как на 1-м рисунке?

Пока вижу только один способ - это анализ граничных пикселей и замена их цвета. Но для получения приемлемого результата придётся выполнять массу циклов, что не совсем приемлемо...