Eu tinha uma ótima foto de uma mulher que tirei sob uma iluminação estranha e complexa (vapor de sódio e vapor de mercúrio). Ótimo sorriso, foco perfeito, excelente imagem, exceto pelo caminho, longe da cor.
Eu usei o Temp / Matiz por uma hora no Adobe Camera Raw sem nenhum bom resultado. Eu escrevi um programa para hackear o arquivo XMP do side-car variando a temperatura e criando um link simbólico para o NEF original chamado paralelo ao arquivo XMP.
Isso NÃO é tão chique nem tecnicamente correto como a resposta acima, mas lança uma quantidade enorme de CPU no problema e fornece alguns resultados (possivelmente) interessantes.
Isso cria um monte de links de arquivos .NEF e um arquivo secundário .XMP real para cada um. Apenas copie uma combinação real de arquivo nef / xmp para clonar no diretório de teste e defina a temperatura min / max e dif_temp (Kelvins entre clones). Outro loop pode ser inserido para variar o valor da tonalidade em um Kelvin constante, mas os arquivos gerados serão multiplicados pelo número de tonalidades.
Execute o arquivo Photoshop -> scripts -> image_processor, aponte-o para este diretório e ele criará um tif / jpg / real para qualquer link para a temperatura de cor especificada.
Este código é um Hack Direto e Feio, e executá-lo provavelmente derreterá o seu processador enquanto atrai raios de bola e abelhas assassinas para a vizinhança imediata. Nenhuma garantia é desnecessária.
Requer Perl (certamente usado diariamente) e mklink (podem estar presentes).
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;
}
}