Überlagern Sie mehrere Bilder

Oct 10 2020

Ich habe mehrere Bilder, die gleich aussehen, alle schwarz sind und sich nur in einem Punkt des Bildschirms unterscheiden. Ich möchte sie in einem Bild kombinieren, damit ich alle Punkte in einem Bild sehen kann. Wie kann ich das mit ImageMagic machen? Ich möchte nichts mit GUI verwenden, da es viele Bilder gibt, aber sie sind nicht so groß, daher wäre es einfacher, dies mit dem Terminal-Dienstprogramm zu tun. Ich habe es versucht

composite -blend 50 *.png res.png

aber es hat nicht geklappt.

UPD: Jetzt habe ich verstanden, dass es nicht funktioniert, weil es nur mit zwei Bildern funktioniert. Wie mache ich das mit allen Bildern, die dem regulären Ausdruck wie somth * .png entsprechen?

Antworten

Quasímodo Oct 10 2020 at 16:13

Sie benötigen die Screen Compositing-Methode .

Da die Komposition nur zwei Eingabedateien gleichzeitig akzeptiert, durchlaufen Sie alle Eingabedateien.

Ersetzen Sie somth1.pngunten durch eine der Eingabedateien. Es wird benötigt, weil res.pnges immer ein Ausgangspunkt ist.

cp somth1.png res.png 
for f in somth*.png;
    do composite -compose Screen "$f" res.png res.png
done