Ich hatte ein großartiges Bild von einer Frau, die ich unter seltsamen, komplexen Lichtverhältnissen (Natriumdampf- und Quecksilberdampflichter) aufgenommen habe. Tolles Lächeln, perfekter Fokus, exzellentes Bild, bis auf die Farbe.
Ich habe eine Stunde lang mit Temp / Tint in Adobe Camera Raw gespielt, ohne ein gutes Ergebnis zu erzielen. Ich habe ein Programm geschrieben, um die XMP-Datei des Beiwagens zu hacken, indem ich die Temperatur variiere und dann einen symbolischen Link zum ursprünglichen NEF herstelle, der parallel zur XMP-Datei benannt ist.
Dies ist NICHT annähernd so ausgefallen und technisch nicht korrekt wie die obige Antwort, sondern wirft eine enorme Menge an CPU auf das Problem und liefert einige (möglicherweise) interessante Ergebnisse.
Dadurch werden eine Reihe von .NEF-Dateilinks und jeweils eine echte .XMP-Sidecar-Datei erstellt. Kopieren Sie einfach eine echte nef / xmp-Dateikombination, um sie in das Testverzeichnis zu klonen, und stellen Sie die min / max-Temperatur und dif_temp (Kelvin zwischen Klonen) ein. Eine weitere Schleife kann eingefügt werden, um den Farbtonwert bei einem konstanten Kelvin zu variieren. Die generierten Dateien werden jedoch mit der Anzahl der Farbtöne multipliziert.
Führen Sie die Photoshop-Datei -> Skripte -> Bildprozessor aus, zeigen Sie auf dieses Verzeichnis, und es wird für jeden Link bei der angegebenen Farbtemperatur ein echtes tif / jpg / was auch immer erstellt.
Dieser Code ist ein schmutziger, hässlicher Hack, und wenn er ausgeführt wird, schmilzt er wahrscheinlich Ihren Prozessor und zieht Kugelblitze und Killerbienen in die unmittelbare Umgebung. Keine Garantie ist selbstverständlich.
Benötigt Perl (wird sicherlich täglich verwendet) und mklink (kann vorhanden sein).
sub color_temp_experiment() {
$nef = '6s-2014.1004-237695.acl.nef';
$xmp = '6s-2014.1004-237695.acl.xmp'; # crs:Temperature="6000"
$min_temp = 7800;
$max_temp = 9000;
$dif_temp = 200; # Difference in temp per loop.
$xd = `cat $xmp`; # Xmp Data;
($base = $nef) =~ s/\.nef//; # Basename common to both nef and xmp.
$ii = -1;
for($temp = $min_temp; $temp <= $max_temp; $temp += $dif_temp) {
$ii++;
$link = $base . ".$temp" . 'k.nef'; # Abuse Kelvins with lower case.
$xfn = $base . ".$temp" . 'k.xmp'; # Abuse Kelvins with lower case.
if(-f $link) {
print("Found FILE (s/b sym link!) $link. Next!\n"); # This prints!
next;
}
$cmd = "mklink $link $nef";
printf("$ii) Cmd = $cmd\n");
$sto = `$cmd`;
unless(-f $link) {
print("ERROR! Sym link $link not found!\n StdOut=<<$sto>>\n\n");
exit;
}
($xt = $xd) =~ s/crs:Temperature="\d+/crs:Temperature="$temp/ms;
open(O, ">$xfn");
print(O "$xt");
close O;
}
}}