ImageMagick - ImageMagick

ImageMagick
ImageMagick-Logo
ImageMagick-Anzeige 7.0.11-4 screenshot.png
Screenshot des Displays mit Menü
Originalautor(en) John Cristy
Entwickler ImageMagick Studio LLC
Erstveröffentlichung 1. August 1990 ; vor 31 Jahren ( 1990-08-01 )
Stabile Version
7.1.0-8 / 19. September 2021 ; Vor 21 Tagen ( 2021-09-19 )
Repository
Geschrieben in C
Betriebssystem Plattformübergreifend
Typ Bildbearbeitung
Lizenz ImageMagick
Webseite imagemagick .org Bearbeite dies bei Wikidata
ImageMagick-Lizenz
Autor ImageMagick Studio LLC
SPDX- Kennung ImageMagick
Debian FSG-kompatibel Jawohl
GPL-kompatibel Jawohl
Verknüpfung von Code mit einer anderen Lizenz Jawohl
Webseite imagemagick .org Bearbeiten Sie dies auf Wikidata

ImageMagick ist eine kostenlose und plattformübergreifende Open-Source - Softwaresuite zum Anzeigen, Erstellen, Konvertieren, Ändern und Bearbeiten von Rasterbildern . Es wurde 1987 von John Cristy entwickelt und kann über 200 Bilddateiformate lesen und schreiben . Es und seine Komponenten werden häufig in Open-Source-Anwendungen verwendet.

Geschichte

ImageMagick wurde 1987 von John Cristy entwickelt, als er bei DuPont arbeitete, um 24-Bit-Bilder (16 Millionen Farben) in 8-Bit-Bilder (256 Farben) umzuwandeln, damit sie zu dieser Zeit auf den meisten Bildschirmen angezeigt werden konnten. Es wurde 1990 frei veröffentlicht, als DuPont zustimmte, das Urheberrecht an ImageMagick Studio LLC zu übertragen , die derzeit immer noch die Projektbetreuerorganisation ist.

Im Mai 2016 wurde berichtet, dass ImageMagick eine Schwachstelle hat, durch die ein Angreifer beliebigen Code auf Servern ausführen kann, die die Anwendung verwenden, um von Benutzern hochgeladene Bilder zu bearbeiten. Sicherheitsexperten, darunter CloudFlare-Forscher, beobachteten die tatsächliche Nutzung der Schwachstelle bei aktiven Hacking-Versuchen. Die Sicherheitslücke war darauf zurückzuführen, dass ImageMagick Backend-Tools aufrief, ohne zuvor ordnungsgemäß überprüft zu haben, ob Pfad- und Dateinamen frei von falschen Shell-Befehlen sind. Die Sicherheitsanfälligkeit hatte keine Auswirkungen auf ImageMagick-Distributionen, die eine ordnungsgemäß konfigurierte Sicherheitsrichtlinie enthielten .

Funktionen und Fähigkeiten

Die Software besteht hauptsächlich aus einer Reihe von Befehlszeilenschnittstellendienstprogrammen zum Bearbeiten von Bildern. ImageMagick hat keine robuste grafische Benutzeroberfläche zum Bearbeiten von Bildern wie Adobe Photoshop und GIMP , enthält jedoch – für Unix-ähnliche Betriebssysteme – eine grundlegende native X Window- GUI (genannt IMDisplay) zum Rendern und Bearbeiten von Bildern und API- Bibliotheken für viele Programmiersprachen. Das Programm verwendet magische Zahlen Bild zu identifizieren Dateiformate .

Eine Reihe von Programmen wie Drupal , MediaWiki , phpBB und vBulletin können ImageMagick verwenden, um Miniaturansichten von Bildern zu erstellen, wenn sie installiert sind. ImageMagick wird auch von anderen Programmen wie LyX zum Konvertieren von Bildern verwendet.

ImageMagick hat eine vollständig integrierte Perl- Anbindung namens PerlMagick, sowie viele andere: G2F (Ada), MagickCore (C), MagickWand (C), ChMagick (Ch), ImageMagickObject (COM+), Magick++ (C++), JMagick (Java) , L-Magick (Lisp), NMagick (Neko/Haxe), MagickNet (.NET), PascalMagick (Pascal), MagickWand für PHP (PHP), IMagick (PHP), PythonMagick (Python), RMagick (Ruby) oder TclMagick (Tcl/TK).

Dateiformatkonvertierung

Eine der grundlegenden und gründlich implementierten Funktionen von ImageMagick ist die Fähigkeit, Bilder effizient und genau zwischen verschiedenen Dateiformaten zu konvertieren (dafür wird der Befehl verwendet convert).

Farbquantisierung

Die Anzahl der Farben in einem Bild kann auf eine beliebige Zahl reduziert werden, und dies geschieht durch Abwägen der hervorstechendsten Farbwerte, die unter den Pixeln des Bildes vorhanden sind.

Eine verwandte Fähigkeit ist der künstlerische Effekt der Posterisierung , der auch die Anzahl der in einem Bild dargestellten Farben reduziert. Der Unterschied zwischen dieser und der Standard-Farbquantisierung besteht darin, dass bei der Standard-Quantisierung die endgültige Palette basierend auf einer Gewichtung der Hervorhebung vorhandener Farben im Bild ausgewählt wird, die Posterisierung eine Palette von Farben erzeugt, die glatt über das im Bild dargestellte Spektrum verteilt sind. Während bei der Standardfarbquantisierung alle endgültigen Farbwerte diejenigen sind, die sich im Originalbild befanden, waren die Farbwerte in einem posterisierten Bild möglicherweise nicht im Originalbild vorhanden, sondern liegen zwischen den Originalfarbwerten.

Dithering

Für das Dithering , das während Farb- und Schattierungsänderungen auftritt, wird eine Feinsteuerung bereitgestellt , einschließlich der Fähigkeit, Halbton- Dithering zu erzeugen .

Flüssigkeitsreskalierung

Im Jahr 2008 wurde die Unterstützung für die Flüssigkeitsreskalierung hinzugefügt. Diese Funktion ermöglicht es , beispielsweise Neuskalierung 4: 3 - Bilder in 16: 9 - Bilder , ohne das Bild zu verzerren.

Künstlerische Effekte

ImageMagick enthält eine Vielzahl von Filtern und Funktionen, um künstlerische Effekte zu erzeugen:

OpenCL

ImageMagick kann OpenCL verwenden , um eine beschleunigte Grafikkarte ( GPU ) für die Verarbeitung zu verwenden.

Dunkle Farbe

Die Q8-Version unterstützt bis zu 8-Bit-pro-Pixel-Komponenten (8-Bit- Graustufen , 24- oder 32-Bit- RGB-Farbe ). Die Q16-Version unterstützt bis zu 16-Bit-pro-Pixel-Komponenten (16-Bit-Graustufen, bis zu 48- oder 64-Bit-RGB-Farbe).

Sonstiges

Im Folgenden sind einige andere Funktionen von ImageMagick aufgeführt:

  • Formatkonvertierung : Konvertiert ein Bild von einem Format in ein anderes (zB PNG in JPEG ).
  • Transformieren: Größe ändern, drehen, zuschneiden, spiegeln oder ein Bild zuschneiden. (Wendet diese nach Möglichkeit ohne Generierungsverlust auf JPEG-Dateien an.)
  • Transparenz: Machen Sie Teile eines Bildes unsichtbar.
  • Zeichnen: Fügen Sie einem Bild Formen oder Text hinzu.
  • Dekorieren: Fügen Sie einem Bild einen Rahmen oder Rahmen hinzu.
  • Spezialeffekte: Unschärfe, Schärfe, Schwellenwert oder Tönung eines Bildes.
  • Animation: Stellen Sie eine GIF- Animationsdatei aus einer Sequenz von Bildern zusammen.
  • Text und Kommentare: Fügen Sie beschreibenden oder künstlerischen Text in ein Bild ein.
  • Bildidentifikation: Beschreiben Sie das Format und die Attribute eines Bildes.
  • Zusammengesetzt: Überlappen Sie ein Bild über ein anderes.
  • Montage: Bildminiaturen auf einer Bildleinwand nebeneinanderstellen.
  • Generalisierte Pixelverzerrung: Korrigieren oder Induzieren von Bildverzerrungen einschließlich der Perspektive.
  • Morphologie von Formen: Merkmale extrahieren, Formen beschreiben und Muster in Bildern erkennen.
  • Bewegtbildunterstützung: Lesen und schreiben Sie die gängigen Bildformate, die in der digitalen Filmarbeit verwendet werden.
  • Bildrechner: Wenden Sie einen mathematischen Ausdruck auf ein Bild oder Bildkanäle an.
  • Diskrete Fourier-Transformation : Implementiert Vorwärts- und Rückwärts-DFT.
  • Farbmanagement: genaues Farbmanagement mit Farbprofilen oder anstelle von – integrierter Gamma-Komprimierung oder -Expansion je nach Farbraum.
  • High-Dynamic-Range-Bilder: Stellen Sie den weiten Bereich an Intensitätsstufen in realen Szenen genau dar, vom hellsten direkten Sonnenlicht bis hin zu den tiefsten dunkelsten Schatten.
  • Verschlüsseln oder entziffern Sie ein Bild: Verwandeln Sie gewöhnliche Bilder in unverständliches Kauderwelsch und wieder zurück.
  • Virtuelle Pixelunterstützung: bequemer Zugriff auf Pixel außerhalb des Bildbereichs.
  • Unterstützung für große Bilder: Lesen, Verarbeiten oder Schreiben von Mega-, Giga- oder Terapixel-Bildgrößen.
  • Ausführungsunterstützung: ImageMagick ist Thread-sicher und die meisten internen Algorithmen werden parallel ausgeführt, um die Geschwindigkeitssteigerungen von Mehrkernprozessorchips zu nutzen .
  • Heterogene verteilte Verarbeitung: Bestimmte Algorithmen sind OpenCL-fähig, um die Geschwindigkeiten zu nutzen, die durch die gemeinsame Ausführung auf heterogenen Plattformen bestehend aus CPUs, GPUs und anderen Prozessoren geboten werden.
  • Verteilter Pixel-Cache: Auslagern des Pixel-Zwischenspeichers auf einen oder mehrere Remote-Server.
  • ImageMagick auf dem iPhone : Konvertieren, Bearbeiten oder Zusammenstellen von Bildern auf einem iOS-Computergerät wie dem iPhone oder iPad .

Verteilung

ImageMagick ist plattformübergreifend und läuft auf Microsoft Windows und Unix-ähnlichen Systemen einschließlich Linux , macOS , iOS , Android , Solaris , Haiku und FreeBSD . Der Quellcode des Projekts kann für andere Systeme kompiliert werden, darunter AmigaOS 4.0 und MorphOS . Es wurde unter IRIX betrieben .

Zugehörige Software

GraphicsMagick ist eine Gabel von ImageMagick 5.5.2 im Jahr 2002, die die Quer Freisetzung Stabilität der Programmierung betont API und Kommandozeilenoptionen. GraphicsMagick entstand aus unüberbrückbaren Differenzen in der Entwicklergruppe.

Siehe auch

Verweise

Weiterlesen

Externe Links