//FFSubmenu=RAW
//FFName=Raw: Umwandlung nach tif und jpg mit "Xe847"
//***************************************************
// Namensanhängsel für die zu speichernden Dateien
// Standardeinstellung: "Bild.raw" wird als "Bild-ff.tif" und "Bild-ff.jpg" gespeichert
//***************************************************
// Namenszusatz für die zu speichernde JPG-Datei
var jpgNamenszusatz = "-ff";
// Namenszusatz für die zu speichernde TIFF-Datei
var tifNamenszusatz = "-ff";
var fso = new ActiveXObject("Scripting.FileSystemObject");
// Schleife über alle markierten Bilder
var imagenum = FF_GetImageCount();
for(var i = 0; i<imagenum ;i++) {
var path = FF_GetImageName(i);
var splitPath = SplitPath(path);
// Überspringen, was nicht nach Raw aussieht
if(splitPath.ext.toLowerCase() == ".jpg" ||
splitPath.ext.toLowerCase() == ".bmp" ||
splitPath.ext.toLowerCase() == ".png") {
continue;
}
// Bildname im Fortschrittsbalken anzeigen
FF_SetProgressText(i, imagenum, splitPath.file);
//***************************************************
// Raw-Bild laden und konvertieren.
//
// VT_BOOL FF_LoadRawImage(VT_BSTR name, VT_UI4 flags, VT_R8 denoise, VT_R8 ignored, VT_I4 highlight, VT_I4 quality, VT_BSTR stuckfile);
//
// VT_BSTR name : Name (Pfad) der RAW-Datei
// VT_UI4 flags : Parameter ist eine Summe von
// 1 = Halbe Größe
// 2 = autom. Weißabgleich
// 4 = Kameraweißabgleich
// 8 = RGGB als 4 Farbe interpretieren
// 16 = Bild nach links drehen
// 32 = Bild nach rechts drehen
// 64 = Rauschunterdrückung ()
// 128 = Stuckpixelbeseitigung
// 256 = Interpolationsqualität
// VT_UI4 denoise : Stärke der Rauschunterdrückung ("threshold for wavelet denoising"), nur bei aktiver Rauschunterdrückung (64)
// VT_UI4 ignored : unbenutzt (am besten auf 0 setzten)
// VT_I4 highlight: Spitzlichterkorrektur ("Highlight mode", [0-9], 0=clip, 1=unclip, 2=blend, 3+=rebuild)
// VT_I4 quality : Interpolationsqualität ("interpolation quality", [0-3]), nur bei aktiver Interpolationsqualität (256)
// VT_BSTR stuckfile : stuckfile, nur bei aktiver Stuckpixelbeseitigung (128)
//
// Bsp1: "Automatischer Weißabgleich" + "RGGB als 4 Farbe interpretieren"
// + "Rauschunterdrückung" ->
// FF_LoadRawImage(path, 2 + 8 + 64, 50.0, 0, 0, 0, "")
//
// Bsp2: "Kameraweißabgleich", "Spitzlichterkorrektur mit 5", "Interpolationsqualität mit 2"
// FF_LoadRawImage(path, 4 + 256, 50.0, 0, 5, 2, "")
//
// Standardmäßig wird hier nur der Kameraweißabgleich verwendet:
//***************************************************
if (!FF_LoadRawImage(path, 4, 50.0, 0, 0, 0, "")) {
continue; // Raw-Konversion ist fehlgeschlagen, gehe zum nächsten Bild
}
//***************************************************
//***************************************************
// Bearbeitungen im 16-Bit-Modus
// standardmäßig wird hier Xe847 aufgerufen
//***** Ende der Raw-Konversion **************************
// Automatische Bildoptimierung mit Xe47
FF_Xe847Enhanced16(100, 100, 100, 100, 100, 0, 0, 0);
// Alternative 1: "Perfectly Clear"
//FF_PerfectlyClear16(true, true, 2, true, 95, true, 100, true, 100, true);
// Alternative 2: Kontrastautomatik
//FF_AutoContrast16();
// Alternative 3: Variante "Kuni"
// hier kommt eine leichte Aufhellung, die ich für meine Canon-CR2-Bilder
// brauche, um die Helligkeit eines Vergleichs-JPG zu erreichen
// FF_BrightUpDown16(595);
// Der S-Kontrast16 ist nötig, damit die Kamera-Kontrasteinstellung,
// die ich auf besonders gering gestellt habe, ein wenig kompensiert wird
// FF_SContrast16(0.65);
//***** Ende der 16-Bit-Bearbeitung************************
// Bild mit den obigen Korrekturen mit Namenszusatz als 16bit-Tiff speichern
FF_SaveImage16(splitPath.dir + splitPath.file + tifNamenszusatz + ".tif");
// Bild nach 8bit konvertieren
FF_Convert16();
//***************************************************
// Bearbeitungen im 8-Bit-Modus
// beispielsweise könnte man hier Schärfen.
//***************************************************
// volle Pulle Kanten schärfen
FF_SmartSharp(192, 16);
// Alternativ: Mittelstarkes 3D-Schärfen
// FF_3DSharp(70, 14);
// Auch 'ne Option: volle Pulle Schärfen durch Verformen
// FF_GeoSharp(512) ;
//***** Ende der 8-Bit-Bearbeitung*************************
// hier entsteht der neue Dateiname für das JPG
var outName = splitPath.dir + splitPath.file + jpgNamenszusatz + ".jpg";
// jetzt wird das JPG gespeichert
FF_SaveImage(outName, 97);
// Fortschritt melden
FF_SetProgress(i+1, imagenum)
}
// Zerteilt einen Bild-Dateinamen in sein Pfadbestandteile
function SplitPath(path) {
var fso = new ActiveXObject("Scripting.FileSystemObject");
var result = new Object();
result.dir = fso.GetParentFolderName(path) + "\\";
result.file = fso.GetBaseName(path);
result.ext = "." + fso.GetExtensionName(path);
return result;
}