Ich muss nahtlose quadratische Bilder von Fotos erstellen. Jedes Foto hat die Auflösung 6000x4000 und das konvertierte Bild sollte 4000x4000px oder so haben. Ich möchte dies auf Linux-Rechner mit ImageMagick ausführen, entweder aus einer Bash oder einem Perl-Skript. Hat jemand eine einfache Art, es zu tun?Nahtlose Bilder von Fotos mit imagemagick
Antwort
Perl hier. Dies wird ein Bild zu 400x400 ausgehend von der Position 0, 0 (oben links) zuzuschneiden:
use warnings;
use strict;
use Image::Magick;
my $img = Image::Magick->new;
$img->Read('img.jpg');
print $img->Get('width') . " ";
print $img->Get('height') ."\n";
$img->Crop(geometry => '400x400+0+0');
$img->Write('img_new.jpg');
$img->Read('img_new.jpg');
print $img->Get('width') . " ";
print $img->Get('height') ."\n";
Ausgang:
4128 2322 # original
400 400 # new
Dies scheint die richtige Lösung für mich zu sein, danke !!! Dunno, der dir -1 gab, gebe ich +1 weil das die OK Methode für mich ist. Ich werde prüfen, ob das funktioniert. – piotao
@piotao Da dies die einzige Antwort auf einen älteren Beitrag ist, und es für Sie funktioniert, markieren Sie es bitte als akzeptiert, indem Sie auf das Häkchen klicken. Sie sollten dies für jede Frage tun, die Sie fragen; akzeptiere immer die beste Antwort, die dein Problem gelöst hat. – stevieb
Nun, das ist leider nur ein Teil der Lösung. Einfach eine schöne Art, Bilder zu beschneiden, aber sie werden nur abgeschnitten. Ein anderer Teil meiner Frage ist immer noch ungelöst - wie konvertiert man sie nach dem Zuschneiden in nahtlose Bilder? Nahtlos in einer Weise, die es mir erlaubt, sie als Textur auf großen Objekten zu verwenden und keine Nähte zu sehen.Wiederholungsmuster optimal sollte nicht zu sichtbar sein (ich weiß, das hängt von einem Bild ab). – piotao
Lassen Sie uns mit diesem Bild beginnen, die 600x400 ist:
Nun, wenn Sie die zentralen 400 Pixel der Breite und der vollen Höhe des Originals wollen:
convert start.png -gravity center -extent 400x result.png
Oder, wenn Sie die rechten 300 Pixel wollen:
convert start.png -gravity east -extent 300x result.png
Oder wenn, wie Ihre Frage, aber um den Faktor 10 verkleinert, die Sie wollen Um 100px von links zu beginnen und 400px zu nehmen, können Sie mit einem Offset zuschneiden:
convert start.png -crop 400x+100 result.png
Hinweis:
Ich habe das Startbild mit:
convert xc:cyan xc:magenta xc:yellow +append -resize 600x400\! start.png
+1 für die Art und Weise, wie Sie das ganze Bild erstellt haben. Gibt es nun eine Methode, um es in ein nahtloses Bild zu konvertieren? – piotao
@piotao Die Sache ist, ich weiß nicht, was du mit * "seamless" * meinst. Ich habe am 16. November unter Ihrer Frage als Kommentar gefragt, aber ich weiß immer noch nicht, was Sie meinen. Eine Naht ist normalerweise eine Verbindung oder ein Gelenk, also nahtlos bedeutet * "ohne" * und, soweit ich sehen kann, gibt es keine Verbindung in meinem resultierenden Bild. Wenn Sie erklären, was Sie meinen, werde ich wieder schauen. –
Nahtlose Bilder werden in Computergrafiken zum Texturieren von 3D-Modellen verwendet. Ein solches Bild ist so vorbereitet, dass Sie es auf jeder Oberfläche kacheln können und Sie die Grenzen des Bildes nicht sehen können. So heißt es: nahtlos. Nun, ich habe viele gute Fotos von Felsen, Terrain, Bettwäsche, etc. und ich würde gerne automatisches Skript ausführen, um sie nahtlos zu machen. Einige von ihnen können schlecht sein, aber einige von ihnen könnten in Ordnung sein. – piotao
- 1. Vergleichen Sie gerenderte Bilder mit imagemagick
- 2. Nahtlose Seitenladungen
- 3. Wie man Bilder imagemagick umschreibt?
- 4. Kombinieren mehrerer Bilder und Text mit ImageMagick
- 5. Vergleich zweier Bilder ImageMagick und C#
- 6. ImageMagick jpg Bilder in gif langsam konvertieren
- 7. wie man verwendet ImageMagick anhängen 100+ Bilder
- 8. Wie kann ich zwei Bilder mit ImageMagick verschachteln?
- 9. imagemagick Autowert von 1
- 10. Kombinieren mehrerer Bilder in ImageMagick mit relativen (nicht absoluten) Offsets
- 11. So speichern Sie einkanalige EXR-Bilder mit ImageMagick
- 12. Imagemagick Crop Bildrahmen für viele Bilder mit verschiedenen Größen
- 13. Zuschneiden mit ImageMagick führt immer zu 1x1 Bilder
- 14. Glatte Textkante mit ImageMagick
- 15. Wie alle Bilder von mehreren Fotos auf Instagram abgerufen werden
- 16. Wie extrahiert man Bilder aus PDF mit Ghostscript oder ImageMagick?
- 17. Verwenden Sie librsvg/rsvg SVG Bilder mit ImageMagick
- 18. ffmpeg - eine nahtlose Schleife mit einer Überblendung machen
- 19. openssh nahtlose Anmeldung funktioniert nicht
- 20. Verwenden von Trimbox mit ImageMagick
- 21. Mehrere Befehle mit ImageMagick
- 22. Hochladen von Fotos mit MEAN.js
- 23. Load Dropbox Fotos mit Picasso?
- 24. ImageMagick Montage mit Logo
- 25. PostgreSQL KOPIEREN VON PROGRAMM mit ImageMagick
- 26. Bildumwandlung in Graustufen unter Verwendung von ImageMagick ist sehr dunkel
- 27. Entfernen der Quittungsbildgrenze mit ImageMagick
- 28. Imagemagick - Größe der Bilder auf 25px Höhe und Seitenverhältnis
- 29. Imagemagick - psd zu jpg konvertieren - erzeugt leere Bilder
- 30. Filter Fotos von Fotobibliothek
Ich verstehe Ihre Frage nicht. Was ist ein nahtloses quadratisches Bild? Möchten Sie ein 6000x4000 Bild in ein einzelnes 4000x4000 Bild zuschneiden, indem Sie 2000 Pixel abschneiden? Oder skalieren und verzerren Sie das Originalbild? Oder nimm 16 Bilder von 6000x4000 und vergrößere sie jeweils auf 1000x1000 und montage sie zu einem einzigen großen 4000x4000? Es ist sehr unklar - für mich zumindest! –
Sorry für die Unklarheit. Ich möchte einzelnes Bild von 6000x4000 auf 4000x4000 zuschneiden und dieses Bild nahtlos machen. Das Zuschneiden könnte so erfolgen, dass 1000 Pixel von beiden Seiten abgeschnitten werden. – piotao
Hat meine Antwort oder andere Ihr Problem gelöst? Wenn ja, dann überlege dir bitte, ob du es als Antwort akzeptierst - indem du auf das grüne Häkchen neben der Stimmenzahl klickst. Wenn nicht, sag bitte, was nicht funktioniert hat, damit ich oder jemand anderes dir weiter helfen kann. Vielen Dank. http://meta.stackexchange.com/questions/5234/how-does-accepting-an-answer-work/5235#5235 –