slice e reorganize a imagem skinny longa para caber na tela

2

Tenho muitas imagens, cada uma com cerca de 10000 x 40 pixels, visualizando gráficos que são na sua maioria cadeias com algumas esporas e outras "decorações". (Eles são feitos por piping fstdraw do OpenFST através de dot do Graphviz).

Na linha de comando, como posso automaticamente forçar a força bruta a reorganizar uma dessas imagens finas para caber de forma legível em uma tela de 1920x1080? Por exemplo, divida a imagem em partes com no máximo 1920 pixels de comprimento e, em seguida, empilhe-as verticalmente.

Algo usando convert -crop do ImageMagick em um loop?

Veja o que falha:

  • Substituindo dot por uma de suas irmãs neato , fdp , etc. menos fdp produz uma imagem não magra, mas apenas porque o magro gráfico aleatoriamente torce e sobrepõe como um frickin ' cromossoma. A imagem ainda é predominantemente branca, os rótulos são minimamente pequeno, e a estrutura é apenas um rabisco.

  • Adicionando a opção ratio=1 à entrada de dot é apenas preenchimento de 10000x40 para 10000 x 10000.

por Camille Goudeseune 18.04.2017 / 19:35

1 resposta

1

Como o 10000/1920 é arredondado para 6, divida a entrada em 6 peças da esquerda para a direita e cole-os novamente de cima para baixo. Em vez de usar 6 arquivos intermediários, use um formato que contenha várias imagens (tiff é muito mais rápido que gif) e stdin e stdout.

convert in.png -crop 6x1@ +repage tiff:- | convert tiff:- -append out.png

    
por 05.06.2018 / 18:31