Não está claro o que você quer dizer com "perda de qualidade". Isso pode significar muitas coisas diferentes. Você poderia postar algumas amostras para ilustrar? Talvez corte a mesma seção das versões de baixa qualidade e de boa qualidade (como um PNG para evitar mais perdas de qualidade).
Talvez você precise usar -densitypara fazer a conversão em um dpi mais alto:
convert -density 300 file.pdf page_%04d.jpg
(Você pode anexar -units PixelsPerInchou, -units PixelsPerCentimeterse necessário. Minha cópia é padronizada como ppi.)
Atualização: como você apontou, gscan2pdf(do jeito que você está usando) é apenas um invólucro para pdfimages(do poppler ). pdfimagesnão faz o mesmo que convertquando recebe um PDF como entrada.
convert pega o PDF, renderiza-o com alguma resolução e usa o bitmap resultante como imagem de origem.
pdfimagesprocura no PDF por imagens de bitmap incorporadas e exporta cada uma delas para um arquivo. Ele simplesmente ignora qualquer comando de desenho de texto ou vetor no PDF.
Como resultado, se o que você tem é um PDF que é apenas um invólucro em torno de uma série de bitmaps, pdfimagesfará um trabalho muito melhor de extraí-los, porque fornece os dados brutos no tamanho original. Você provavelmente também deseja usar a -jopção pdfimages, porque um PDF pode conter dados JPEG brutos. Por padrão, pdfimagesconverte tudo para o formato PNM, e converter JPEG> PPM> JPEG é um processo com perdas.
Então tente
pdfimages -j file.pdf page
Você pode ou não pode precisar a seguir que com um converta .jpgpasso (dependendo do que bitmap formatar o PDF estava usando).
Eu tentei esse comando em um PDF que eu havia criado a partir de uma sequência de imagens JPEG. Os JPEGs extraídos eram byte por byte idênticos às imagens de origem. Você não pode obter qualidade superior a isso.