Mam wiele bitmap w skali szarości, które muszę przekonwertować do formatu wektorowego, takiego jak SVG. Korzystam z Inkscape, co daje dobre wyniki, ale otwarcie, konwersja i zapisanie pliku zajmuje około 10-15 minut. Czy istnieje narzędzie partii lub wiersza poleceń, które może je przekonwertować?
command-line
images
conversion
svg
Wioska
źródło
źródło
potrace
.Odpowiedzi:
potrace
Znalazłem ten przykład na SO w odpowiedzi na pytanie: Jak przekonwertować obraz JPEG na format SVG za pomocą ImageMagick? . Jedna z sugerowanych odpowiedzi
potrace
.Wyniki
Patrząc na
potrace
stronę, najwyraźniej możesz przejść bezpośrednio z BMP do SVG.autotrace
Inną opcją
potrace
jestautotrace
.Prawdopodobnie będziesz musiał grać z,
--color-count
aby uzyskać obraz, który odpowiada Twoim potrzebom.Wyniki
Którego użyć?
Z tych 2 naprawdę zależy to od materiału źródłowego. Jeśli konwertujesz obrazy,
potrace
prawdopodobnie jest to lepsza opcja. W przypadku materiałów innych niż zdjęcia, takie jak czcionki i nieożywionych obiektów takich jak krajobrazy, który obejmuje takie rzeczy jak drogi, a następnieautotrace
z--centerline
przełącznikiem.Konwersje wsadowe
Możesz zawinąć dowolne z tych poleceń w pętlę for w Bash, co ułatwi pracę nad konwersją zbiorczą.
Bibliografia
źródło
convert -channel RGB -compress None input.jpg bmp:- | potrace -s - -o output.svg
Autotrace
Możesz wypróbować automatyczne śledzenie .
Za pomocą następującego polecenia otrzymujesz następujące wyniki:
Musiałem zrobić zrzut ekranu wynikowego pliku SVG i zapisać go jako plik PNG, aby wyświetlić wynik.
Oto obraz źródłowy jpg:
Oto wynikowy obraz:
źródło
Zwykle wykonuję wszystkie zadania związane z manipulowaniem obrazami za pomocą
convert
ImageMagic, ale nie mogę go ładnie odtwarzać z plikami svg. Możesz jednak użyćinkscape
siebie z wiersza poleceń:Spowoduje to utworzenie plików o nazwie
foo.bmp.svg
. Aby uzyskać prawidłowe nazwy, spróbuj tego:Problem z tym podejściem polega na tym, że przynajmniej w moim systemie pojawia się irytujące graficzne okno dialogowe z pytaniem, czy chcę połączyć lub osadzić obraz:
Tak więc nadal musisz ręcznie kliknąć OK, ale nadal jest to znacznie szybsze niż robienie tego plik po pliku.
Obrazy wyjściowe są identyczne, o ile mogę powiedzieć:
Teoretycznie jedno
convert
i drugiersvg-convert
powinno być w stanie to zrobić, ale nie mogłem zmusić go do dobrej pracy z moimi zdjęciami w ciągu kilku minut, które spędziłem próbując. Mimo to obaj warto się przyjrzeć.źródło
potrace
osadzony, więc zastanawiam się, czy i tak używa tego narzędzia? cytat: „Potrace jest teraz osadzony w Inkscape. Nie trzeba go uruchamiać osobno”. - wiki.inkscape.org/wiki/index.php/Toolspotrace
jest do tego narzędziem. Możesz przetwarzać je zbiorczo, ale najpierw musisz przekonwertować obrazy na monochromatyczne:Zainstaluj na Ubuntu:
Jeśli chcesz konwertować obrazy, które nie są monochromatyczne,
Inkscape
ma narzędzie do śledzenia oparte na potrace, które obsługują wiele kolorów, najpierw konwertuje obraz na warstwy kolorów, a następnie śledzi je i łączy wynik.Widzieć
Samouczek tutaj!
źródło