Edit Banana: Statische Diagramme in bearbeitbares DrawIO-XML überführen
Edit Banana: A framework for converting statistical formats into editable.
Auf einen Blick
- Was ist das?
- Edit Banana kombiniert SAM 3 zur Segmentierung mit multimodalen Sprachmodellen, um Bilder in editierbare DrawIO-Dateien umzuwandeln. Das Repository folgt dabei laut eigener Warnung dem gehosteten Dienst hinterher, was für die Bewertung des Codes entscheidend ist.
- Für wen ist es gedacht?
- Wer Diagramme aus PDFs oder Screenshots zurück in ein editierbares DrawIO-Format bringen muss und einen eigenen GPU-Host betreiben kann, findet hier eine dokumentierte Pipeline. Wer den aktuellen Funktionsstand des gehosteten Dienstes erwartet, sollte zuerst prüfen, ob die im Repository beschriebenen Komponenten den dort gezeigten Ausgabeformen entsprechen.
- Darf ich es kommerziell nutzen?
- Ja, unter strengen Bedingungen. AGPL-3.0 ist eine Lizenz mit Netzwerk-Copyleft: Wenn andere eine veränderte Version über ein Netzwerk nutzen, etwa als gehosteten Dienst, müssen Sie ihnen den Quellcode unter derselben Lizenz anbieten.
- Wird es noch gepflegt?
- Ja. Die letzten Commits kamen vor 2 Tagen.
- In welcher Sprache ist es geschrieben?
- Hauptsächlich Python, laut der Sprachstatistik von GitHub.
Die Antworten beruhen auf den GitHub-Daten des Projekts (zuletzt abgeglichen am 15. September 2026) und auf unserer Analyse. Sie sind keine Rechtsberatung.
TIEFGEHENDE OPEN-SOURCE-ANALYSE
Welches Problem Edit Banana adressiert
Die Ausgangslage ist alltäglich: Ein Diagramm liegt als JPEG, PNG oder als Screenshot in einem PDF vor. Es lässt sich ansehen, aber nicht mehr bearbeiten. Wer eine Box umbenennen, einen Pfeil umlegen oder eine Farbe ändern will, zeichnet die Grafik neu. Edit Banana setzt genau an dieser Stelle an und beschreibt das Ziel im README als Umwandlung von festen Inhalten in manipulierbare Assets. Der Ausgabepfad, den das Projekt in den Vordergrund stellt, ist DrawIO im XML-Format. Eine hochgeladene Grafik soll demnach in wenigen Sekunden als editierbare Datei zurückkommen.
Die Zielgruppe lässt sich aus dem Repository-Aufbau ableiten. Es gibt eine Weboberfläche unter editbanana.net, eine Python-Codebasis und einen Abschnitt zu akademischer Kooperation sowie kommerzieller Lizenzierung. Angesprochen sind damit zwei Gruppen: Einzelpersonen, die eine Grafik schnell nachbauen wollen, und Teams, die den Konvertierungsdienst in eine eigene Umgebung einbetten möchten. Für die zweite Gruppe ist das Repository gedacht, für die erste der gehostete Dienst.
Segmentierung, Spracherkennung und feste VLM-Runden
Die Pipeline besteht laut README aus zwei benannten Stufen. Zuerst segmentiert ein fein abgestimmtes SAM 3 (Segment Anything Model 3) die Elemente eines Diagramms. Diese Segmentierung liefert die geometrische Grundlage: Welche Fläche ist eine Box, welche Linie ist ein Pfeil, welche Region ist Text. Danach übernehmen multimodale Sprachmodelle die inhaltliche Deutung. Das README spricht von festen mehrstufigen VLM-Runden, also einer vorgegebenen Abfolge von Modellaufrufen statt einer freien Schleife. Der genaue Ablauf dieser Runden ist im vorliegenden Material nicht ausgeführt.
Die Ausgabequalität wird im README an vier Punkten festgemacht: Erhalt der Layoutlogik, Farbgebung und Elementhierarchie; 1:1-Wiederherstellung von Kontur- und Füllstilen sowie Pfeilformen inklusive gestrichelter Linien und Strichstärken; Texterkennung mit anschließender Bearbeitbarkeit; und einzeln selektierbare Elemente, die den Austausch gegen native DrawIO-Vorlagen erlauben. Das sind Zusagen des Projekts, keine unabhängig bestätigten Messwerte. Wer die Ausgabe bewertet, sollte diese vier Punkte einzeln prüfen, weil sie unterschiedliche Fehlerquellen haben: Segmentierungsfehler zeigen sich an falsch verschmolzenen Flächen, Texterkennung scheitert an kleinen Schriftgrößen, und Stilabweichungen fallen erst beim Vergleich mit dem Original auf.
Installation und Konfiguration nach Repository-Angaben
Das README nennt Python 3.10 oder neuer als Voraussetzung und empfiehlt eine CUDA-fähige GPU. Die Abschnitte Installation & Setup, Usage und Configuration sind im vorliegenden Auszug nicht mit Inhalt gefüllt, sodass sich konkrete Befehle, Konfigurationsschlüssel oder Umgebungsvariablen hier nicht wiedergeben lassen. Wer das Projekt einsetzen will, muss diese Abschnitte direkt im Repository lesen; sie sind die einzige belastbare Quelle für Startbefehle und für die Frage, welche Modellgewichte woher geladen werden.
Klar benannt ist dagegen der Auslieferungsweg. Das README verweist auf die Weboberfläche als schnellsten Einstieg und formuliert eine ausdrückliche Warnung: Das GitHub-Repository bleibt hinter dem Webdienst zurück, für aktuelle Funktionen und Leistung wird die Webplattform empfohlen. Diese Warnung ist der wichtigste Satz im Dokument. Sie bedeutet, dass der veröffentlichte Code nicht der Code ist, der die im README gezeigten Ergebnisbilder erzeugt. Wer das Repository klont, testet einen älteren Stand.
Der Rückstand des Repositorys als eigentliche Einschränkung
Die Warnung im README ist nicht als Höflichkeitsformel zu lesen, sondern als Aussage über den Zustand des Projekts. Ein Nutzer, der den Code lokal installiert, kann nicht erwarten, dieselben Ergebnisse zu sehen wie auf editbanana.net. Die Demonstrationsbilder im Abschnitt Effect Demonstration stammen aus dem Dienst, nicht aus dem Repository. Damit fehlt jede Möglichkeit, die Qualität der lokal lauffähigen Version anhand der gezeigten Beispiele zu beurteilen.
Ein zweiter Punkt betrifft die Abhängigkeiten. SAM 3 und multimodale Sprachmodelle sind keine Bibliotheken, die mit einem pip-Aufruf erledigt sind. Sie bringen Modellgewichte, Speicherbedarf und je nach Anbieter Netzwerkzugriffe mit. Das README empfiehlt CUDA, was den Betrieb auf einer CPU-only-Umgebung unattraktiv macht. Für einen einzelnen Nutzer, der gelegentlich eine Grafik umwandeln will, ist der lokale Betrieb damit der falsche Weg; die Weboberfläche ist für diesen Fall die naheliegende Wahl. Umgekehrt ist der lokale Betrieb genau dann sinnvoll, wenn Grafiken das eigene Netz nicht verlassen dürfen.
Abgrenzung zu generativen Bildmodellen
Der naheliegende Vergleich sind generative Bildwerkzeuge, die ein Diagramm aus einer Textbeschreibung neu zeichnen. Der Unterschied liegt im Ansatz: Ein generatives Modell erzeugt eine neue Grafik, die dem Original ähnelt. Edit Banana segmentiert das vorhandene Bild und rekonstruiert daraus Struktur. Das Ziel ist nicht Ähnlichkeit, sondern die Rückgewinnung von Elementen, die sich einzeln anfassen lassen.
Für die Praxis heißt das: Wo es auf originalgetreue Beschriftungen und exakte Pfeilverläufe ankommt, ist die Rekonstruktion der passendere Weg. Wo eine Grafik ohnehin neu gestaltet werden soll, ist der Umweg über die Segmentierung unnötig. Ein zweiter Unterschied betrifft das Ausgabeformat. DrawIO-XML ist ein offenes, textbasiertes Format, das sich versionieren und in DrawIO weiterbearbeiten lässt. Eine Pixelausgabe lässt sich das nicht. Wer die Konvertierung in eine Versionskontrolle einbinden will, gewinnt dadurch einen prüfbaren Zwischenstand.
Wartung, Lizenz und der Widerspruch im Repository
Die Lizenzangabe ist widersprüchlich. Das README zeigt ein Badge mit Apache 2.0, die Metadaten des Repositorys nennen AGPL-3.0. Beide Lizenzen haben unterschiedliche Folgen: Apache 2.0 erlaubt die Verwendung in proprietären Produkten mit den üblichen Hinweispflichten, AGPL-3.0 verlangt bei Bereitstellung über ein Netzwerk die Offenlegung des abgeleiteten Quellcodes. Für alle, die den Dienst hinter einer Weboberfläche betreiben wollen, ist dieser Unterschied nicht akademisch. Eine rechtliche Bewertung ist hier nicht möglich und auch nicht beabsichtigt; die Lizenzen sollten vor jeder Integration direkt im Repository geprüft werden.
Zum Wartungsaufwand lässt sich aus dem Material wenig sagen. Es gibt keine abgerufenen Releases, der letzte Push liegt laut Metadaten im September 2026. Das Repository ist nicht archiviert. Die Abhängigkeit von SAM 3 und multimodalen Modellen bedeutet, dass Aktualisierungen an den Modellschnittstellen den Code brechen können. Wer das Projekt einbettet, übernimmt diesen Anpassungsaufwand selbst. Das README verweist für technische Abstimmung, kommerzielle Lizenzierung und Anpassungen auf eine Kontaktadresse, was nahelegt, dass das Projekt auf Zusammenarbeit statt auf eine breite Mitwirkendenbasis ausgelegt ist.
Für wen sich der Blick ins Repository lohnt
Der Fall, in dem Edit Banana seinen Platz hat, ist eng umrissen: Eine Grafik muss zurück in ein bearbeitbares Format, die Umgebung erlaubt GPU-Betrieb, und die Ausgabe soll als DrawIO weiterverwendet werden. Für Lehre, technische Dokumentation und die Wiederaufbereitung alter Abbildungen ist das ein realer Bedarf, den generative Bildwerkzeuge nicht decken.
Wer dagegen eine stabile, versionsgepflegte Bibliothek mit klarer Lizenz sucht, wird hier nicht fündig. Der Rückstand des Repositorys gegenüber dem Webdienst ist das erste, was zu prüfen ist, und die Lizenzfrage das zweite. Beides lässt sich vor dem Klonen klären: die Warnung steht im README, die Lizenzangaben stehen in den Repository-Metadaten und im LICENSE-Verweis. Erst danach lohnt der Blick in die Abschnitte Installation & Setup und Configuration, die im vorliegenden Auszug fehlen und ohne die kein lokaler Start möglich ist.
Redaktionelles Fazit
Wer Diagramme aus PDFs oder Screenshots zurück in ein editierbares DrawIO-Format bringen muss und einen eigenen GPU-Host betreiben kann, findet hier eine dokumentierte Pipeline. Wer den aktuellen Funktionsstand des gehosteten Dienstes erwartet, sollte zuerst prüfen, ob die im Repository beschriebenen Komponenten den dort gezeigten Ausgabeformen entsprechen. Vor jedem Produktiveinsatz ist die Lizenzfrage zu klären, da der Repository-Header Apache 2.0 nennt, die Metadaten aber AGPL-3.0 ausweisen.
Community-Notizen