Wie macht man das? Eine for-Schleife und mit welchem Befehl kann man ein Bild überprüfen, ob es in Farbe oder s/w ist?
Schwarz-weiß Bilder in Unterordner verschieben
Anmeldungsdatum: Beiträge: 767 |
|
||||||
Anmeldungsdatum: Beiträge: 17552 Wohnort: Berlin |
For-Schleife: Für Bilder, die alle die gleiche Dateiendung haben:
Mehrere Dateiendungen:
|
||||||
Anmeldungsdatum: Beiträge: 5523 Wohnort: south central EL |
Man könnte vielleicht mit ImageMagick die Farben zählen. |
||||||
Anmeldungsdatum: Beiträge: 17552 Wohnort: Berlin |
Mehrere Fragen und eine vage Idee: Schwarz-Weiß-Bilder - sind das Bilder mit 1-bit Farbcodierung? Gewöhnliche PNGs/JPGs/..., in denen einfach nur Schwarz u. Weiß verwendet werden? Werden Grautöne benutzt?
liefert mir eine Ausgabe wie:
Ich habe jetzt kein SW-Bild hier, um zu sehen, wie das aussähe - vielleicht hilft es weiter. Womöglich ist file nützlicher:
|
||||||
Ehemalige
Anmeldungsdatum: Beiträge: 4578 Wohnort: Berlin |
Wobei die Frage vielleicht noch ist was hier mit „schwarz/weiß“ gemeint ist — tatsächlich Bitmaps die nur aus zwei Farben bestehen, oder Graustufenbilder. Da ist dann „Farben zählen“ nicht ausreichend. Aber man kann sich mit ImageMagick sicher entsprechende Tests basteln. Zum Beispiel in einen anderen Farbraum konvertieren wo die Farbinformation in einem Kanal steckt, oder die Abweichung eines Bildes vom selben Bild in Graustufen umgewandelt testen. |
||||||
(Themenstarter)
Anmeldungsdatum: Beiträge: 767 |
Marc_BlackJack_Rintsch schrieb:
Graustufen sind gemeint. |
||||||
Anmeldungsdatum: Beiträge: 6345 Wohnort: Hamburg |
Wobei auch das nicht ganz eindeutig ist. Das Problem ist, das es "echte" Graustufenbilder gibt, die nur einen Farbkanal haben, aber auch welche mit 3 Farbkanälen, bei denen die RGB Werte quasi parallel laufen. Für den Anfang, falls Imagemagick installiert ist, würde ich die verdächtigen Bilder mal mit: identify -verbose <Dateiname> untersuchen. Da kommt dann ziemlich viel raus, aber interessant ist dann das, was folgender Abschnitt zeigt: ... Colorspace: RGB Depth: 8-bit Channel depth: Red: 8-bit Green: 8-bit Blue: 8-bit Channel statistics: Red: Min: 0 (0) Max: 255 (1) Mean: 200.01 (0.784354) Standard deviation: 59.7284 (0.234229) ... danach können wir dann weiter sehen. |
||||||
Projektleitung
Anmeldungsdatum: Beiträge: 12829 |
GraphicsMagick ist eine Alternative. Mit
Das würde ja auch schon mal helfen. Auch dort gibt es |
||||||
Anmeldungsdatum: Beiträge: 5523 Wohnort: south central EL |
Ich denke, dieser Beitrag 🇬🇧 aus dem ImageMagick Forum zeigt einen guten Lösungsansatz auf: convert IMAGE -colorspace HCL -channel g -separate +channel -format "%[fx:100*mean]\n" info: Graustufenbilder haben in der Regel einen sehr niedrigen Sättigungsanteil im vergleich zu Farbbildern. Darauf kann man testen und das sogar als Boolean ausgeben: convert IMAGE -colorspace HCL -channel g -separate +channel -format "%[fx:100*mean>THRESHOLD?1:0]" info:
|
||||||
Ehemalige
Anmeldungsdatum: Beiträge: 4578 Wohnort: Berlin |
@rklm: Das hilft IMHO nicht wirklich, denn (wahrscheinlich) alle diese Typen können ein Graustufenbild enthalten. Einzig bei „Optimize“ weiss ich nicht was das ist. (Zu faul zum nachlesen. ☺) |
||||||
Anmeldungsdatum: Beiträge: 17552 Wohnort: Berlin |
Sind die denn alle vom gleichen Dateityp (JPG/PNG/...) und wenn ja, von welchem? |
||||||
Projektleitung
Anmeldungsdatum: Beiträge: 12829 |
Marc_BlackJack_Rintsch schrieb:
Natürlich können sie. Aber wir wissen ja nicht, was die Eingabe ist. Deshalb können wir von hier auch schlecht beurteilen, welcher der verschiedenen Ansätze wirklich zum Ziel führt bzw. ausreichend ist. |