Eu tenho muitos bitmaps em escala de cinza que preciso converter para um formato vetorial, como SVG. Estou usando o Inkscape, que fornece bons resultados, mas isso leva de 10 a 15 minutos para abrir, converter e salvar um arquivo. Existe uma ferramenta de linha de comando ou lote que possa convertê-las?
command-line
images
conversion
svg
Vila
fonte
fonte
potrace
também.Respostas:
potrace
Encontrei este exemplo no SO em uma sessão de perguntas e respostas intitulada: Como converter uma imagem JPEG no formato SVG usando o ImageMagick? . Uma das respostas sugeridas
potrace
.Resultados
Olhando para o
potrace
site, você aparentemente pode ir diretamente do BMP para o SVG.rastreamento automático
Outra opção
potrace
éautotrace
.Você provavelmente precisará brincar com o
--color-count
para obter uma imagem que atenda às suas necessidades.Resultados
Qual usar?
Destes 2, realmente depende do material de origem. Se você estiver convertendo imagens,
potrace
provavelmente é a melhor opção. Para material não-fotográfico, como fontes e objetos inanimados, como paisagens que incluem coisas como estradas, depoisautotrace
com o--centerline
interruptor.Conversões em lote
Você pode agrupar um desses comandos em um loop for no Bash, o que facilitará o trabalho de realizar tarefas de conversão em massa.
Referências
fonte
convert -channel RGB -compress None input.jpg bmp:- | potrace -s - -o output.svg
Autotrace
Você pode tentar rastrear automaticamente .
Usando o seguinte comando, você obtém os seguintes resultados:
Eu tive que pegar uma captura de tela do svg resultante e salvar como png para mostrar a saída.
Aqui está uma imagem de origem jpg:
Aqui está a imagem resultante:
fonte
Normalmente, eu faço todas as minhas tarefas de manipulação de imagens
convert
do ImageMagic, mas não consigo que ele funcione bem com arquivos svg. Você pode, no entanto, usar-inkscape
se na linha de comando:Isso irá criar arquivos chamados
foo.bmp.svg
. Para acertar os nomes, tente o seguinte:O problema com essa abordagem é que, pelo menos no meu sistema, ele exibe uma caixa de diálogo gráfica irritante perguntando se eu quero vincular ou incorporar a imagem:
Portanto, você ainda precisa clicar em OK manualmente, mas ainda é muito mais rápido do que fazer arquivo por arquivo.
As imagens de saída são idênticas, tanto quanto eu posso dizer:
Teoricamente, ambos
convert
ersvg-convert
devem ser capazes de fazer isso, mas não consegui que funcionasse bem em minhas imagens nos poucos minutos que passei tentando. Ambos valem a pena investigar, no entanto.fonte
potrace
incorporado, então eu me pergunto se ele está usando essa ferramenta de qualquer maneira. citação: "O Potrace agora está incorporado no Inkscape. Você não precisa executá-lo separadamente." - wiki.inkscape.org/wiki/index.php/Toolspotrace
é a ferramenta para isso. Você pode processá-las em massa, mas primeiro é necessário converter as imagens em monocromático:Instale no Ubuntu:
Se você deseja converter imagens que não são monocromáticas,
Inkscape
tem uma ferramenta de rastreamento baseada no potrace que suporta várias cores, ela primeiro converte a imagem em camadas de cores e depois as rastreia e combina o resultado.Vejo
Tutorial aqui!
fonte