Skript anwenden auf spezielle Verzeichnisse?

Markus2010

Mitglied
Registriert
03.10.10
Beiträge
10
Hallo,

bin durch Zufall auf FixFoto gestoßen, da es automatisierte Schritte unterstützt.

Habe schon einiges im Forum gelesen, aber leider noch nicht alles, deswegen bitte ich um verzeihung,
wenn ich das noch nicht entdeckt habe.

Mir geht es hauptsächlich um die automatisierung bei der Bildverarbeitung.

Die Bildoptimierung würde ich gerne via Makro-Rekorder aufzeichnen, habe ihn aber noch nicht gefunden.

Dann geht es darum, das per Skript Verzeichnisse durchgearbeitet werden sollen, die z.B. den Namen "Rechts" bzw. "Links" enthalten.
Also: Hessen_Rechts bzw. Hessen_Links.

Nun soll bei "Rechts" alle Bilder um 90 Grad verlustfrei gedreht werden. Bei "Links" um 270 Grad verlustfrei gedreht.

Dann die Bildoptimierung, nach meinem Schema. Eventuell automatisiertes Geraderücken, Kissenentzehrung, u.ä.

Dann soll ein neuer Dateiname vergeben werden, mit Schrittweite von 2 und in ein anderes Verzeichnis, das
erstellt werden soll, gespeichert werden. Das neue Verzeichnis wäre hier z.B. Hessen_verarbeitet.

Gibt es vielleicht schon ein ähnliches Skript/Makro?

In der Bedienungsanleitung habe ich schon einige Befehle gesehen, muss mich mal näher mit Beschäftigen, das ist klar.

Jedenfalls bin ich erstmal sehr beeindruckt von FixFoto und dem Forum hier.

Danke für Infos und Tipps.

Viele Grüße
Markus
 
AW: Skript anwenden auf spezielle Verzeichnisse?

Hallo,

Makrorekorder gibt es keinen. Wenn Du aber in der Stapelverarbeitung Deine Befehle durchführst siehst Du vom 1. Bild sofort das Ergebnis. Als Stapelverarbeitung speichern, dann kannst Du davon ein Makro erstellen und sofort anwenden.

Wenn Deine Kamera das Exif-Orientation-Flag unterstützt kannst Du es mit einigen Skripten automatisch verlustfrei drehen lassen. Egal welche Richtung es steht.
Ansonsten musst Du die Verzeichnisse manuell anwählen und den Stapel drehen lassen. Wenn Du die Bilder über F6 durchsiehst geht es auch mit StrgL und StrgR

Für autom. Kissenentzerrung gibt es ein Skript von Nils.

Für alles andere wirst Du Dir selber was stricken müssen. Ist sehr speziell. Oder einen geeigneteren Workflow zulegen.

Bezügl. Geraderücken: Falls Du stürzende Linien auch gleich mit beseitigen willst, kannst Du für die Stapelverarbeitung ein spezielles Script erstellen, dass ShiftN vollautomatisch aufruft. Schiefe Bilder rückt es dann auch gleich gerade. Aber Achtung: Manchmal macht es ganau das Gegenteil ;).
 
AW: Skript anwenden auf spezielle Verzeichnisse?

Hallo,

oh, kein Makro-Rekorder. Na, geht vielleicht auch ohne.

Beim drehen ist das Problem, da ist Text drin und gedreht wird ein Teil meist falsch. ;-)

Deswegen speichere ich ja in zwei verschiedenen Verzeichnissen, manuell.

Den manuellen Workflow habe ich schon, aber ich habe keine Lust mehr, alle 5-8 Minuten an den Computer zu gehen, um den nächsten Schritt für die nächste halbe Stunde zu machen.

Ich denke schon, das das geht, muss nur rausbekommen, wie ich die entsprechenden Verzeichnisse aufrufen kann, Dateien umbenennen und dann in dem ensprechenden neuen Verzeichnis speichere, nach der "Optimierungsverarbeitung".

Habe leider noch nicht mal ein ähnliches Skript entdeckt.

Gruß
Markus
 
AW: Skript anwenden auf spezielle Verzeichnisse?

800 Bilder pro Tag mit Text? Das heißt Kamera von oben und dann gibt's verständlicherweise Probleme mit dem Orientation-Flag.

Spion?;)
 
AW: Skript anwenden auf spezielle Verzeichnisse?

:-) Nein.

Ist ein Versuch, eine Idee umzusetzen.

Technische Möglichkeiten sind zumindest da.

Eben, da das Orientierungs-Flag nicht in diesen Fällen taugt, bleibt mir ja auch nichts anderes übrig.

Würde mich freuen, wenn Skriptschreiber mir auf die Sprünge beim erstellen des Skripts helfen können.

Ich weiß im Moment noch nicht mal, wo ich anfangen soll.

Eigentlich ist die erste Hürde, die Auswahl der Unterverzeichnisse, die "Rechts" oder "Links" im Namen enthalten. Hmm.....

Gruß
Markus
 
AW: Skript anwenden auf spezielle Verzeichnisse?

Hallo,

welche Script-Sprache?
Du solltest Dir erst mal die WSH-Scriptreferenz von Microsoft holen. Für VBScript und JScript gibt es die auch in Deutsch (Link müsste im Downloadbereich sein?)

Um den Startpfad festzulegen, brauchst Du den Ausgangspfad. Den kann man auf zwei Möglichkeiten ermitteln: Mit FF-Verzeichnisliste und ohne FF-Verzeichnisliste (BrowserForFolder)

(Beschreibungen der FF_Befehle in der FF-Hilfe)
FF_Verzeichnisliste: FF_GetImagePath()
BrowserForFolder: FF_EnterPath

Durch die Verzeichnisse bewegst Du Dich mit dem FileSystemObject.
VBScript Code-Schnipsel:
Code:
Set fso = CreateObject("Scripting.FileSystemObject")
...
Set oFolder = fso.GetFolder(sFolder)
sSearch = "Rechts"
For Each oSubFolder in oFolder.Folders
   If StrComp(Right(oSubFolder.Name, Len(sSearch)), sSearch, vbTextCompare) = 0 Then
      For Each oFile in oSubFolder.Files
          sFile = oFile.Path
          If FF_LoadImage(sFile) Then
              '... Großer Auftritt der FF_Befehle
              If Not FF_SaveImage(sFile) Then
                  'Fehlerbehandlung
              End If
          End If

          'oder einfach nur drehen
          FF_RotateFile(sFile, 270)
      Next
   End If
Next
Was hier nicht enthalten ist: Du musst mit Methoden (Sub/Function) arbeiten, sonst kannst Du nicht rekursiv in die Tiefe gehen.
Ich würde auch das Hauptprogramm in eine Sub Main legen. Dann kann man bequem mit Exit Sub aussteigen und anschließend automatisch aufräumen
fso würde ich global definierten. Nach Aufruf von Main das Objekt wieder auf Nothing setzen. Unter VBScript unbedingt "Option Explicit" setzen. Das erzwingt die Variablendefinition und erleichtert die Fehlersuche.

Analog natürlich mit JScript.

Dies hat keinen Anspruch auf Vollständigkeit oder saubere Programmierung. Ist nur ein Denkanstoß.
 
AW: Skript anwenden auf spezielle Verzeichnisse?

Ups, das ist ja doch schon etwas heftiger. *schluck*

Danke, Werner für die Infos.

Vom Ablauf her denke ich, habe ich den "kürzesten" Weg.

Ich habe schon VBA programmiert in Excel und Access.

Die Skriptsprachen Unterstützung habe ich jetzt noch nicht so ganz verstanden.

Kann ich in einer einzigen Sprache meine Idee verwirklichen?

Welche von beiden kommt VBA am nächsten? Ich schätze mal VBSkript?

Welche IDE wäre Sinnvoll und würde auch beim Debuggen helfen?

Habe leider das Prinzip noch nicht verstanden. Sorry, wenn ich dumm frage.

Gruß
Markus
 
AW: Skript anwenden auf spezielle Verzeichnisse?

Wenn Du Erfahrung mit VBA hast, dann solltes Du es mit VBS versuchen.
In FF ist ein Editor eingebaut, aufrufbar mit F11
Dort kannst Du auch den Microsoft Script Debugger einbinden (einfach das entsprechende Häkchen setzen).
Allgemeine Hilfe zu VBS gibt es hier. Die FF-eigenen Befehle werden in der FF-Anleitung erwähnt
 
AW: Skript anwenden auf spezielle Verzeichnisse?

Hallo,

noch eine Ergänzung. Ich benutze WScite als Editor. Auf dem aktuellen System habe ich den Script-Debugger nicht mal installiert.
Mit Disziplin geht es unter FFScript zur Not noch ohne; mit Hilfe von Msgboxen.
 
AW: Skript anwenden auf spezielle Verzeichnisse?

Hey, klasse.

Dank' Euch, werde ich mir mal näher anschauen.

Gruß
Markus
 
Zurück
Oben