![Как уменьшить размеры файла изображения без потери информации? Я использую операционную систему Linux](https://rvso.com/image/1337993/%D0%9A%D0%B0%D0%BA%20%D1%83%D0%BC%D0%B5%D0%BD%D1%8C%D1%88%D0%B8%D1%82%D1%8C%20%D1%80%D0%B0%D0%B7%D0%BC%D0%B5%D1%80%D1%8B%20%D1%84%D0%B0%D0%B9%D0%BB%D0%B0%20%D0%B8%D0%B7%D0%BE%D0%B1%D1%80%D0%B0%D0%B6%D0%B5%D0%BD%D0%B8%D1%8F%20%D0%B1%D0%B5%D0%B7%20%D0%BF%D0%BE%D1%82%D0%B5%D1%80%D0%B8%20%D0%B8%D0%BD%D1%84%D0%BE%D1%80%D0%BC%D0%B0%D1%86%D0%B8%D0%B8%3F%20%D0%AF%20%D0%B8%D1%81%D0%BF%D0%BE%D0%BB%D1%8C%D0%B7%D1%83%D1%8E%20%D0%BE%D0%BF%D0%B5%D1%80%D0%B0%D1%86%D0%B8%D0%BE%D0%BD%D0%BD%D1%83%D1%8E%20%D1%81%D0%B8%D1%81%D1%82%D0%B5%D0%BC%D1%83%20Linux.png)
Я хотел бы изменить размер изображения (например, формата png) с помощью convert. Сложность в том, что я хочу сохранить качество изображения, когда я изменяю размер изображения обратно до исходных размеров.
Например,
convert -resize 50% original.png smaller.png
convert -resize 200% smaller.png backtooriginal.png
backtooriginal.png имеет пониженное качество по сравнению с original.png, и я хотел бы избежать этого. Если бы это было одно изображение, я мог бы использовать инструменты типа gimp. Но мне нужно автоматизировать это.
Спасибо!
решение1
"Если бы это было одно изображение, я мог бы использовать инструменты типа gimp" - Как вы можете сделать это даже в GIMP? Если вы измените размер до 50% от исходного размера, вы потеряете данные. Раздувание/масштабирование растрового изображения до исходного размера только дублирует пиксели, это не волшебным образом вернет потерянные данные. PNG, будучи форматом без потерь, не поможет в этом случае.
Насколько мне известно, единственный возможный способ сделать это — использовать векторный формат изображения, поддерживаемый ImageMagick, например MVG или SVG.
Примечание: Вы всегда можетепытаться преобразование растровых изображений в векторныесначала перед изменением размера, но я сомневаюсь, что результаты будут столь уж удовлетворительными.