2017-08-08 4 views
0

J'essaie d'implémenter l'équilibrage des couleurs de la carte grise d'Adobe Lightroom en utilisant ImageMagic. Je suis arrivé quelques informations de ImageMagick pour équilibrer la couleur en utilisant la carte grise: -Équilibrage de la couleur de la carte grise dans ImageMagick

convert MAIN.JPG^
(+clone (REFERENCE.JPG -gravity Center -crop "128x128+0+0" -scale "1x1" -negate) +dither -interpolate Integer -clut)^
-compose Overlay -composite^
FIXED.JPG 

J'ai essayé celui-ci, mais le résultat est différent de lightroom. Quelqu'un pourrait-il me dire pourquoi ce n'est pas précis et comment obtiendra l'image précise?

Voici les images: -

originale un: - enter image description here

équilibré en utilisant Lightroom: - enter image description here

équilibré en utilisant ImageMagick: - enter image description here

Répondre

0

Comme je l'ai mentionné dans mon commentaire, vous pouvez essayer un autre espace de couleur linéaire et d'autres valeurs de gris jusqu'à ce qu'elle corresponde. Dans Imagemagick, j'ai changé la valeur du gris moyen en .466 et essayé les espaces de couleurs RVB et XYZ.

infile="8Mvyi.jpg" 
gray=0.466 
declare `convert "$infile" -colorspace RGB -crop 90x40+106+208 +repage -format "rratio=%[fx:$gray/mean.r]\ngratio=%[fx:$gray/mean.g]\nbratio=%[fx:$gray/mean.b]\n" info:` 
echo "$rratio $gratio $bratio" 
convert "$infile" -colorspace RGB -color-matrix \ 
"$rratio 0 0 \ 
0 $gratio 0 \ 
0 0 $bratio" -colorspace sRGB result3a.png 

enter image description here

infile="8Mvyi.jpg" 
gray=0.466 
declare `convert "$infile" -colorspace XYZ -crop 90x40+106+208 +repage -format "rratio=%[fx:$gray/mean.r]\ngratio=%[fx:$gray/mean.g]\nbratio=%[fx:$gray/mean.b]\n" info:` 
echo "$rratio $gratio $bratio" 
convert "$infile" -colorspace XYZ -color-matrix \ 
"$rratio 0 0 \ 
0 $gratio 0 \ 
0 0 $bratio" -colorspace sRGB result3b.png 

enter image description here

Ni tout à fait correspondre à votre image Lightroom. Donc tout ce que je peux suggérer est de jouer avec ces deux espaces de couleurs et d'ajuster la valeur gris moyen jusqu'à ce que vous obteniez un match aussi proche que possible.

1

J'ai répondu à cette question en détail sur le serveur Imagemagick Discourse au http://www.imagemagick.org/discourse-server/viewtopic.php?f=1&t=32473#p148599. La solution est la suivante en utilisant -color-matrix en mode RGB (plutôt que sRGB).

infile="8Mvyi.jpg" 
gray=0.5 
declare `convert "$infile" -colorspace RGB -crop 90x40+106+208 +repage -format "rratio=%[fx:$gray/mean.r]\ngratio=%[fx:$gray/mean.g]\nbratio=%[fx:$gray/mean.b]\n" info:` 
convert "$infile" -colorspace RGB -color-matrix \ 
"$rratio 0 0 \ 
0 $gratio 0 \ 
0 0 $bratio" -colorspace sRGB result3.jpg 

enter image description here

+0

Merci pour la réponse. Selon Imagemagick, la réponse 2 est un peu plus sombre que lightroom et le résultat 3 est un peu plus léger mais pas précis. – Bik

+0

Je ne sais pas ce que fait Lightroom. J'ai apparié result2 pour convertir la mesure de nuance de gris moyenne par une grande région de la carte grise à 0,5 dans l'espace RVB linéaire. Peut-être que changer cela à 0,466 aiderait? result3 suppose que la correspondance est effectuée dans l'espace colorimétrique RVB. Peut-être que Lightroom a utilisé un autre espace de couleurs linéaire comme XYZ. Comme je l'ai mentionné dans mon autre post, une carte gris moyen devrait avoir 46.6% sRGB. C'est ce que j'ai fait dans le résultat 1 (en fait 50%). Donc, Lightroom ne correspond pas vraiment à mi-gay ou le résultat aurait votre carte grise résultant avec 46,6% de gris, ce qui est comme mon résultat1. – fmw42

+0

Correction. Dans le résultat 2, je fais correspondre la couleur de la carte grise dans votre résultat Lightroom à 0,5 est l'espace colorimétrique sRGB. – fmw42