Diskussion: Beschneiden mit perspektivischem Entzerren

  • Hallo Bertram,
    ich habe die aktuelle Version 4.5.3.2 getestet, doch sind mir auf Anhieb keine besseren Ergebnisse aufgefallen. Ist es wirklich eine geänderte Version?


    Zu den zuvor aufgestellten Punkten 4 weitere, die auch für die aktuelle Version gelten:


    6. Wenn ich ein Bild 638 x 492 auf 634 x 523 ändern will, erscheint eine Fehlermeldung "Zugriffsverletzung im Modul jpgIlluminator.exe".


    7. Zugriffsverletzungen werden auch dann gemeldet, wenn im benutzerdefinierten Modus sich die beiden unteren Ecken des Auswahlfensters auf den Eckes des Bildes befinden und die rechte obere Ecke des Auswahlfensters auf der oberen Begrenzungslinie des Bildes liegt.
    8. Ich habe keine Möglichkeit gefunden, dass die Bildgröße nach dem Entzerren genau der des Originals entspricht. Zumindest hätte ich das erwartet bei den Seitenverhältnissen "benutzerdefiniert" und "feste Größe" (geht allerdings wegen des Zugrifffehlers beim Eingeben der Größe nicht). Spricht etwas dagegen, dass das entzerrte Bild die Größe der Vorgabe erhält?
    Z. Zt. wird bei meinem Testbild 3456 x 1944 im benutzerdefinierten Modus 3456 x 2400 bei Schrägstellung der linken und rechten Seite der Auswahl eine Bildgröße von Bildgröße von 2942 x 2043 erzeugt. Damit sind alle Seiten um 14,9% kleiner als die Vorgabe.


    9. Ich habe bei Seitenverhältnis "frei" eine schmale Auswahl erstellt und anschließend die linke Seite bis zum linken Bildrand gezogen (bis auf 15 Pixel ging das). Rechts wollte ich das gleiche machen, doch die Seite ließ sich nur bis etwa 20% vom rechten Bildrand entfernt ziehen.

    Zitat von "bertram"

    pixelfan: wenn du ein Rechteck aufgezogen hast, kannst du an den Ecken des Rechtecks ziehen. Das könnten wir vielleicht für den User noch besser sichtbar machen.


    Vorschlag: Im Fenster "Bild beschneiden" unterhalb des Übersichtbildes: "Zum Entzerren an den Ecken ziehen.".


    Und noch eine Frage zum Ausrichten:
    Wenn ein Bild ein waagerecht liegendes Rechteck (z.B. ca. 1,9:1) enthält, das zu einem Quadrat gestreckt werden soll, muss dann das Raster nicht deckungsgleich mit den Konturen des Rechtecks sein? Ich erhalte dabei kein Quadrat, sondern ein Rechteck im Seitenverhältnis von ca. 1,37:1.

    • Offizieller Beitrag

    Uuups. Da hab ich meine Antwort mit Copy+Paste so vermurkst, dass ich sie löschen musste. Deswegen nochmal:


    Hallo Walter,


    toll, dass du diese Funktion auf Herz und Nieren prüfst.
    Doch, das ist schon eine neue Version. Beim Seitenverhältnis "frei" zumindest erhält man nun tatsächlich das, was in der Beschreibung steht.
    Zugriffsverletzungen kann ich jetzt nur noch selten produzieren. Da bin ich noch am Suchen. Das hängt damit zusammen, dass wegen der bikubischen Interpolation die Auswahl auf jeder Seite ein paar Pixel Abstand vom Bildrand haben muss.
    zu 8: Für eine feste gewünschte Bildgröße darfst du nicht benutzerdefiniertes Seitenverhältnis nehmen (da geht es wirklich nur ums Verhältnis) sondern "feste Größe".
    zu 9: Wenn du an einer Seite ziehst, vergrößert sich die Auswahl auch in der anderen Richtung (je nach eingestelltem Verhältnis). Wenn eine Ecke an den Bildrand stößt, ist Schluss. Dann kannst du entweder an den Ecken weiterziehen oder das Seitenverhältnis auf "frei" stellen.
    > Vorschlag ...
    Ja, das wäre eine Möglichkeit.
    > Und noch eine Frage zum Ausrichten:
    Meinst du jetzt wirklich die Ausrichten-Funktion oder immer noch das perspektivische Beschneiden?
    Bei der Ausrichten-Funktion hat das Gitter noch keinerlei metrisch berechnete Funktion für die Perspektive. Anders für die Drehung und die Tonnen-/Kissenentzerrung. Wir wollen in der Hauptsache Bilder sinnvoll bearbeiten, ji ist kein CAD-Programm.
    Anders beim Beschneiden mit perspektivischem Entzerren: Da siehst du den Hilfslinien an, dass sie perspektivisch berechnet sind. In die Tiefe nehmen ihre Abstände ab. Wenn du das Viereck sauber um dein Rechteck legst und Seitenverhältnis 1:1 einstellst, erhältst du ein Quadrat. Das klappt auch, wenn du z.B. die erste innere Hilfslinie genau um das Rechteck legst. Aber nur, wenn du durch Ziehen an einer Ecke auch tatsächlich den Entzerr-Modus eingeschaltet hast. Ansonsten wird ja nur beschnitten und nicht entzerrt.

  • Zitat von "bertram"


    Das hatte ich ursprünglich auch gedacht. Das stimmt aber nicht. Denn parallele Linien sind im Schrägbild nicht parallel. Wenn du also das Auswahlviereck durch Ziehen parallel vergrößerst, veränderst du auch wieder die Perspektive. Damit wäre nicht viel gewonnen.


    Hallo Bertram,


    du hast vollkommen Recht, das war von mir zu kurz gedacht,falsch interpretiert und argumentiert.


    Denn genau dieses parallele Ziehen macht JPG-Illuminator in der aktuellen Versionn mit den negativen Ergebnissen. Weil alle Linien eines Schrägbildes (Karopapier!) auf einen gemeinsamen, feststehenden Fluchtpunkt zulaufen, müssen die Seiten des Auswahlfensters auch bei Verschieben der Seiten auf diesen Linien liegen. Dieses Bild veranschaulicht das.
    Bei der derzeitigen Parallelverschiebung stimmt der vom Auswahlfenster gebildete Fluchtpunkt nicht mehr mit dem des Bildes überein, was das Entzerren der stürzenden Linien verändert.


    Um die Änderung der Perspektive zu vermeiden, müssten z.B. der Punkt x1|y1 weniger stark verschoben werden als x3|y3. Ich habe dazu Rechenformeln erstellt, die beim Verschieben z.B. der linken Seite an Hand der vier Eckpunkte des aktuellen Auswahlfensters und des neuen Eckpunkts x3'|y3 das Errechnen des Eckpunkts x1'|y 1 ermöglicht. Vielleicht lässt sich so etwas implementieren. Man könnte dann das Auswahlfenster für einen kleinen Breeich festlegen und anschließend durch Ziehen an den Seiten den gewünschten Bildausschnitt beliebig einstellen - völlig ohne Verlust der ganz zu Anfang vorgenommenen Entzerrung.


    Per PM werde ich dir die Formeln und eine Exel-Berechnung, mit der man durch Eingabe der entsprechenden Punkte die neuen x-Werte überprüfen kann, zusenden.

  • Und genau hier, wo auch durch die Vorgabe des Seitenverhältnisses eine Verzerrung hinzukommt, ist das Verschieben eines der Eckpunkte nicht mehr zwingend nötig um die Verzerrung zu wünschen. Von daher wäre ein Auswahlmenü für diesen Modus vielleicht doch sinniger.

    • Offizieller Beitrag

    pixelfan: das, was du vor hast, ist "nur" eine Eingabehilfe für den User, um die Viereckauswahl besser zu setzen. Natürlich wäre das elegant. Aber ich frage mich, ob der Aufwand gerechtfertigt ist. Wie oft wird man diese Funktion benutzen? Da könnte man doch auch ein paarmal mehr an einer Ecke ziehen. Außerdem: die Hilfslinien kann man dazu auch benutzen. Und bei diesen ist die Perspektive schon berücksichtigt.
    wilsberg: ich kann nicht ganz nachvollziehen, was du genau meinst?

  • Ich hoffe nicht, dass ich mich nicht missverständlich ausgedrückt hatte: Der Anwender verschiebt nur die Seiten, die sich nicht parallel, sondern entsprechend der ursprünglichen gewählten Perspektive (Gitternetz) selbständig ausrichten.

  • bertram: Ich meine damit: wähle ich ein reines Rechteck (ohne Bewegung einer der Ecken), so könnte es doch dennoch durch Vorwahl eines bestimmten Seitenverhältnisses (z.B. bei 1:1 zu einem Quadrat gewandelt werden. Sprich: ich definiere das Rechteck, klicke auf den neu zu schaffenden Button "Bild beschneiden und entzerren" und gerate in den Modus, den ich jetzt per Ziehen eines der Eckpunkte erreiche.

    • Offizieller Beitrag

    Danke, jetzt ist es mir klar. Das wäre dann nochmal eine neue Funktion. Bisher gibt es
    a) Rechteckig beschneiden. Das eingestellte Seitenverhältnis wird beim Aufziehen der Auswahl benutzt. Das Ergebnis hat auch dieses Verhältnis.
    b) Beschneiden mit perspektivischer Entzerrung des Vierecks zu einem Rechteck. Das Ergebnis hat das eingestellte Seitenverhältnis.
    Ob nicht eine weitere Funktion recht verwirrend wäre, es ist ja jetzt schon nicht ganz intuitiv? Dann dürfte beim Aufziehen des Rechtecks nicht das eingestellte Verhältnis benutzt werden. Dieses dürfte nur das Ergebnis beeinflussen. Insgesamt wäre das eine Streckung in x- oder y- Richtung. Und: wofür braucht man das? Für gewöhnlich will man Bilder doch nicht in eine Richtung strecken, wenn es nicht um Perspektive geht.
    Wenn du das wirklich brauchst, kannst du einfach ein Rechteck aufziehen und eine Ecke um ein paar Pixel verschieben. Dann hast du das, was du möchtest.

  • Ja, das stimmt, wenn man die Kamera seitlich zum Objekt gehalten hat. Aber mit dem horizontalen Fluchtpunkt ist das so eine Sache, wie du mit der Darstellung der neuen Funktion an Hand des Gebäudes gezeigt hast. Ein völlige Entzerrung in dieser Richtung erscheint mir nicht sinnvoll, hier ist man mehr auf das subjektive Empfinden angewiesen. Bei den stürzenden Linien ist das anders. Darum dürfte m. E. die nachgeführte Entzerrung der nach oben gerichteten Schrägansicht ausreichend sein.

  • bertram: "Und: wofür braucht man das? Für gewöhnlich will man Bilder doch nicht in eine Richtung strecken, wenn es nicht um Perspektive geht."


    Ist schon klar, aber ich brauche das schonmal, wenn ich meine CDs sample und das Cover auf quadratisch trimmen will. - Natürlich kann man das so machen, wie Du beschreibst, aber grundsätzlich setzt Du doch wahrscheinlich intern sowieso das Flag "entzerren", sobal eine Ecke angefaßt wurde. Und wieso kan man das nicht einfach per Button anwählen? Wenn man es nämlich einmal gemacht hat, erscheint ja auch der Button "zurück zum Rechteck". Also was wäre gegen einen entgegengesetzt wirkenden Button zu sagen?

  • Zitat von "bertram"

    Zugriffsverletzungen kann ich jetzt nur noch selten produzieren. Da bin ich noch am Suchen. Das hängt damit zusammen, dass wegen der bikubischen Interpolation die Auswahl auf jeder Seite ein paar Pixel Abstand vom Bildrand haben muss.


    Bei Seitenverhältnis "frei" entsteht dieser Fehler meistens dann, wenn man außer der linken oberen die anderen Ecken bis an den Bildrand gezogen hat.

  • Zitat von "wilsberg"

    Ist schon klar, aber ich brauche das schonmal, wenn ich meine CDs sample und das Cover auf quadratisch trimmen will.


    Man könnte das auch über "Bild > Bildgröße..." mit "lange Seite = kurze Seite" oder "kurze Seite = lange Seite" erreichen.

    • Offizieller Beitrag

    Gerade hab ich die 4.5.3.3 hochgeladen: verbesserte Zusammenarbeit mit den Einstellungen des Kombinationsfelds "Seitenverhältnis"; momentan keine Zugriffsverletzung mehr (bis ihr mich wieder eines Besseren belehrt); verbesserte Hilfslinien bei der Einstellung "Viele" (Solange die Auswahl ein Rechteck ist, bilden die Linien Quadrate. Wenn man das Rechteck verzerrt, werden diese verzerrten Quadrate im Ergebnis wieder zu Quadraten entzerrt.)

  • Version 4.5.3.3


    Wenn man ein Bild 700 x 395 mit "Bild > Bild beschneiden" auf Seitenverhältnis 1,41 : 1 oder 1 : 1 beschneidet, so wird die Höhe in beiden Fällen nur noch 389 Pixel groß, bei 1 :1 ist die Breite richigerweise 395 groß. Es ist also nicht mehr möglich, die ursprüngliche Bildhöhe beizubehalten.


    Bei Version 4.5.3.2 war der Fehler mit 391 Pixeln etwas kleiner.

    • Offizieller Beitrag

    Wie gesagt: wegen der bikubischen Interpolation und der Zugriffsfehler. Bei einer rechteckigen Auswahl kann ich das vermeiden, bei einer trapezförmigen nicht. Zusätzlich gibt es Rundungsfehler, weil man die Auswahl in der verkleinerten Ansicht tätigt, während das Bild in Originalgröße beschnitten wird.

  • Ich habe einfach "Bild > Bild beschneiden" gewählt und anschließend bei bereits voreingestelltem Seitenverhältnis 1 : 1 bzw. 1,41 : 1 die Schaltfläche "Bild beschneiden" (nur dieser Text!) angeklickt. Dann entsteht bei 1 : 1 ein Bild 395 x 389, das ist alles andere als quadratisch und schneidet in der Höhe unzulässig Bildteile ab. Auch bei 1 : 1,41 ist die Höhe statt 395 auf 389 beschnitten und damit das Format 1,437 : 1.


    Solange nicht an den Ecken gezogen wurde, sollte das Beschneiden wie früher erfolgen!

  • Wenn ich "Bild > Bild beschneiden > Seitenverhältnis > feste Größe" wähle und anschließend die Zahlenwerte verändern will, erscheint immer noch die Fehlermeldung "Ungültige Gleitkommaoperation." Danach kann ich keinen Rahmen anlegen, was einen Neustart von Ji erforderlich macht.


    Geändert: "Feste Größe"