Imagemagick konwertuj - dołączaj, produkując niepoprawne dane wyjściowe

2

Próbuję połączyć ze sobą sekwencję obrazów. Pierwsze kilka wydają się działać dobrze, ale po kilku, zamiast określonych obrazów pojawiają się złe obrazy. Oto kilka pierwszych zdjęć:

pieces-0.png: : : : wprowadź opis zdjęcia tutaj pieces-1.pngwprowadź opis zdjęcia tutaj pieces-2.pngwprowadź opis zdjęcia tutaj pieces-3.pngwprowadź opis zdjęcia tutaj

Uruchamiam polecenie:

convert pieces-0.png pieces-1.png pieces-2.png pieces-3.png -append pieces-all.png

Jednakże, pieces-all.pngwygląda następująco:

wprowadź opis zdjęcia tutaj

Nie jestem pewien, skąd pochodzą szare kawałki ani dlaczego pomarańczowe i różowe kawałki nie są pokazane. Kilka samouczków i sama dokumentacja ImageMagick wskazują, że powinno to działać. Co ja robię źle?

FazJaxton
źródło
Odpowiedź wysłana przez lelton jest poprawna, ale spójrz na swoją terminologię w porównaniu z terminologią ImageMagick. Stwierdzasz, że próbujesz „zszyć” obrazy, ale użyte polecenie -appendoznacza, że ​​wszystkie obrazy zostaną do siebie dołączone, zaczynając od pierwszego obrazu… który jest czarno-biały, ale najprawdopodobniej w skali szarości. Więc polecenie, które podałeś, polegało na robieniu tego, co nakazano; wszystko, co wymaga -colorspaceopcji wymuszenia ustawienia przestrzeni kolorów, jak opisuje odpowiedź Leltona.
JakeGould,

Odpowiedzi:

3

Najpierw musisz zidentyfikować przestrzeń kolorów swoich zdjęć w następujący sposób:

$ identify -verbose pieces-[0-3].png | grep Colorspace

Wynik byłby mniej więcej taki:

 Colorspace: Gray
 Colorspace: Gray
 Colorspace: sRGB
 Colorspace: sRGB

W twoim przypadku dwa pierwsze obrazy używają przestrzeni kolorów „szare”, a następnie Imagemagick ustawia się jako domyślna przestrzeń kolorów przy końcowej konwersji.

Na koniec, jeśli chcesz użyć kolorów w konwersji, użyj przestrzeni kolorów dwóch ostatnich obrazów, końcowe polecenie:

$ convert pieces-[0-3].png -colorspace sRGB -append pieces-all.png

wprowadź opis zdjęcia tutaj

Ielton
źródło