Reduzindo o tamanho do arquivo de imagens muito grandes, sem alterar as dimensões da imagem

Considere um aplicativo que lida com o upload de arquivos PNG potencialmente muito grandes.

Todos os arquivos carregados devem ser armazenados em disco para recuperação posterior. No entanto, os arquivos PNG podem ter até 30 MB de tamanho, mas as limitações de armazenamento em disco fornecem um tamanho máximo de 1 MB por arquivo.

O problema é obter um PNG de entrada com tamanho de arquivo de até 30 MB e produzir um PNG de saída com tamanho de arquivo abaixo de 1 MB.

Obviamente, esta operação será prejudicial - e a redução na qualidade da imagem, cores etc. não é um problema. No entanto, uma coisa que não deve ser alterada é a dimensão da imagem. Portanto, um arquivo de entrada da dimensão 800x600 deve produzir um arquivo de saída da dimensão 800x600.

Os requisitos acima descritos são rigorosos e não podem ser alterados.

Usando o ImageMagick (ou alguma outra ferramenta de código aberto), como você reduziria o tamanho do arquivo PNG de entrada com tamanho de ~ 30 MB para um máximo de 1 MB por arquivo, sem alterar as dimensões da imagem?

questionAnswers(12)

yourAnswerToTheQuestion