Один из способов справиться с ограничением пути состоит в сокращении записей пути с помощью символических ссылок.
Например:
C:\p
для хранения коротких ссылок на длинные пути mklink /J C:\p\foo C:\Some\Crazy\Long\Path\foo
C:\p\foo
к вашему пути вместо длинного пути Я предполагаю, что вы хотите сделать что-то более сложное, чем постеризация . «Выборка», как вы говорите, потребует некоторой тонкости, поскольку 5 наиболее распространенных цветов изображения, вероятно, будут похожи друг на друга. Может быть, взгляните на 5 наиболее разделенных пиков на гистограмме .
Это просто, просто используйте аргумент недокументированных цветов:
result = image.convert('P', palette=Image.ADAPTIVE, colors=5)
Я использую Image.ADAPTIVE, чтобы избежать дизеринга
Короткий ответ - использовать метод Image.quantize
. Для получения дополнительной информации см .: Как преобразовать любое изображение в изображение с четырехцветной палитрой с помощью библиотеки изображений Python?