{"id":1746,"date":"2015-01-20T22:49:21","date_gmt":"2015-01-20T21:49:21","guid":{"rendered":"http:\/\/photo.zakkinen.net\/?p=1746"},"modified":"2021-03-13T19:47:02","modified_gmt":"2021-03-13T18:47:02","slug":"ps-blend-modes-3","status":"publish","type":"post","link":"https:\/\/photo.zakkinen.net\/en\/ps-blend-modes-3\/","title":{"rendered":"Photoshop Blend Modes - Part 3","raw":"Photoshop Blend Modes - Part 3"},"content":{"rendered":"<h1>Soft Light<\/h1>\n<p>Soft Light is the one blend mode I read most nonsense about. Part of this may be due to the fact that vendors define the method differently, get quoted incorrectly and thus add to the confusion. Alas, I couldn&#8217;t find explanations for their particular choices, so I can only show what I figured out and present my own thoughts.<!--more--><\/p>\n<h2>Photoshop<\/h2>\n<p>My Photoshop CC uses the following formula (as documented in <a title=\"PDF 1.7 Reference\" href=\"http:\/\/wwwimages.adobe.com\/content\/dam\/Adobe\/en\/devnet\/pdf\/pdfs\/PDF32000_2008.pdf\" target=\"_blank\" rel=\"noopener\">PDF Reference<\/a>):<\/p>\n<p><img decoding=\"async\" src=\"https:\/\/s0.wp.com\/latex.php?latex=f%28a%2Cb%29+%3D+%5Cleft%5C%7B+%5Cbegin%7Barray%7D%7Blr%7D%281-a%29ab+%2B+a%281-%281-a%29%281-b%29%29+%26+%5Ctext%7Bfor+%7D+b+%3C+%7B1%2F2%7D%5C%5Ca%2B%282b-1%29%28%5Csqrt%7Ba%7D-a%29+%26+%5Ctext%7Bf%5C%22ur+%7D+b+%5Cgeq+%7B1%2F2%7D+%5Cland+a+%3E+%7B1%2F4%7D%5C%5Ca%2B%282b-1%29%28%28%2816a-12%29a%2B4%29a-a%29+%26+%5Ctext%7Bfor+%7D+b+%5Cgeq+%7B1%2F2%7D+%5Cland+a+%5Cleq+%7B1%2F4%7D%5Cend%7Barray%7D+%5Cright.&#038;bg=2a2a2a&#038;fg=ffffff&#038;s=1&#038;c=20201002\" alt=\"f(a,b) = &#92;left&#92;{ &#92;begin{array}{lr}(1-a)ab + a(1-(1-a)(1-b)) &amp; &#92;text{for } b &lt; {1\/2}&#92;&#92;a+(2b-1)(&#92;sqrt{a}-a) &amp; &#92;text{f&#92;&quot;ur } b &#92;geq {1\/2} &#92;land a &gt; {1\/4}&#92;&#92;a+(2b-1)(((16a-12)a+4)a-a) &amp; &#92;text{for } b &#92;geq {1\/2} &#92;land a &#92;leq {1\/4}&#92;end{array} &#92;right.\" class=\"latex\" \/><\/p>\n<p>I was able to verify that with the help of a little Postscript script may father generously provided (thank you very much for your support, (<a title=\"Dieter Zawischa\" href=\"http:\/\/zawischa.kopflos-ev.de\/\" target=\"_blank\" rel=\"noopener\">Dieter<\/a>)). It fills a square with the result of a blend between two linear gradients using a formula only limited by your Postscript skills (reverse Polish notation). After comparing the result with Photoshop&#8217;s own blend, I can assure you now that this indeed is the formula used, whatever others try to tell you. (For more details about the process see <a title=\"Photoshop Blend Modes \u2013 Part 1\" href=\"http:\/\/photo.zakkinen.net\/en\/2014\/12\/ps-blend-modes-1\/\">here<\/a>).<\/p>\n<p>The two source images:<\/p>\n<div>\n<figure id=\"attachment_1750\" aria-describedby=\"caption-attachment-1750\" style=\"width: 300px\" class=\"wp-caption alignnone\"><a href=\"http:\/\/photo.zakkinen.net\/wp-content\/uploads\/2015\/01\/EPS-A.png\"><img loading=\"lazy\" decoding=\"async\" data-attachment-id=\"1750\" data-permalink=\"https:\/\/photo.zakkinen.net\/en\/ps-blend-modes-3\/eps-a\/\" data-orig-file=\"https:\/\/photo.zakkinen.net\/wp-content\/uploads\/2015\/01\/EPS-A.png\" data-orig-size=\"300,300\" data-comments-opened=\"1\" data-image-meta=\"{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;,&quot;orientation&quot;:&quot;0&quot;}\" data-image-title=\"Verlauf A\" data-image-description=\"\" data-image-caption=\"&lt;p&gt;Verlauf A&lt;\/p&gt;\n\" data-large-file=\"https:\/\/photo.zakkinen.net\/wp-content\/uploads\/2015\/01\/EPS-A.png\" class=\"size-full wp-image-1750\" src=\"http:\/\/photo.zakkinen.net\/wp-content\/uploads\/2015\/01\/EPS-A.png\" alt=\"Gradient A\" width=\"300\" height=\"300\" srcset=\"https:\/\/photo.zakkinen.net\/wp-content\/uploads\/2015\/01\/EPS-A.png 300w, https:\/\/photo.zakkinen.net\/wp-content\/uploads\/2015\/01\/EPS-A-200x200.png 200w, https:\/\/photo.zakkinen.net\/wp-content\/uploads\/2015\/01\/EPS-A-50x50.png 50w\" sizes=\"auto, (max-width: 300px) 100vw, 300px\" \/><\/a><figcaption id=\"caption-attachment-1750\" class=\"wp-caption-text\">Image A &#8211; horizontal gradient<\/figcaption><\/figure>\n<figure id=\"attachment_1751\" aria-describedby=\"caption-attachment-1751\" style=\"width: 300px\" class=\"wp-caption alignnone\"><a href=\"http:\/\/photo.zakkinen.net\/wp-content\/uploads\/2015\/01\/EPS-B.png\"><img loading=\"lazy\" decoding=\"async\" data-attachment-id=\"1751\" data-permalink=\"https:\/\/photo.zakkinen.net\/en\/ps-blend-modes-3\/eps-b\/\" data-orig-file=\"https:\/\/photo.zakkinen.net\/wp-content\/uploads\/2015\/01\/EPS-B.png\" data-orig-size=\"300,300\" data-comments-opened=\"1\" data-image-meta=\"{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;,&quot;orientation&quot;:&quot;0&quot;}\" data-image-title=\"Verlauf B\" data-image-description=\"\" data-image-caption=\"&lt;p&gt;Verlauf B&lt;\/p&gt;\n\" data-large-file=\"https:\/\/photo.zakkinen.net\/wp-content\/uploads\/2015\/01\/EPS-B.png\" class=\"size-full wp-image-1751\" src=\"http:\/\/photo.zakkinen.net\/wp-content\/uploads\/2015\/01\/EPS-B.png\" alt=\"Gradient B\" width=\"300\" height=\"300\" srcset=\"https:\/\/photo.zakkinen.net\/wp-content\/uploads\/2015\/01\/EPS-B.png 300w, https:\/\/photo.zakkinen.net\/wp-content\/uploads\/2015\/01\/EPS-B-200x200.png 200w, https:\/\/photo.zakkinen.net\/wp-content\/uploads\/2015\/01\/EPS-B-50x50.png 50w\" sizes=\"auto, (max-width: 300px) 100vw, 300px\" \/><\/a><figcaption id=\"caption-attachment-1751\" class=\"wp-caption-text\">Bild B &#8211; vertical gradient<\/figcaption><\/figure>\n<\/div>\n<p>After blending using the Soft Light formula with the Postscript script:<\/p>\n<figure id=\"attachment_1752\" aria-describedby=\"caption-attachment-1752\" style=\"width: 300px\" class=\"wp-caption alignnone\"><a href=\"http:\/\/photo.zakkinen.net\/wp-content\/uploads\/2015\/01\/EPS-SoftLightPDFfull.png\"><img loading=\"lazy\" decoding=\"async\" data-attachment-id=\"1752\" data-permalink=\"https:\/\/photo.zakkinen.net\/en\/ps-blend-modes-3\/eps-softlightpdffull\/\" data-orig-file=\"https:\/\/photo.zakkinen.net\/wp-content\/uploads\/2015\/01\/EPS-SoftLightPDFfull.png\" data-orig-size=\"300,300\" data-comments-opened=\"1\" data-image-meta=\"{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;,&quot;orientation&quot;:&quot;0&quot;}\" data-image-title=\"EPS-SoftLightPDFfull\" data-image-description=\"\" data-image-caption=\"&lt;p&gt;Soft Light  berechnet&lt;\/p&gt;\n\" data-large-file=\"https:\/\/photo.zakkinen.net\/wp-content\/uploads\/2015\/01\/EPS-SoftLightPDFfull.png\" class=\"size-full wp-image-1752\" src=\"http:\/\/photo.zakkinen.net\/wp-content\/uploads\/2015\/01\/EPS-SoftLightPDFfull.png\" alt=\"Soft Light calculated\" width=\"300\" height=\"300\" srcset=\"https:\/\/photo.zakkinen.net\/wp-content\/uploads\/2015\/01\/EPS-SoftLightPDFfull.png 300w, https:\/\/photo.zakkinen.net\/wp-content\/uploads\/2015\/01\/EPS-SoftLightPDFfull-200x200.png 200w, https:\/\/photo.zakkinen.net\/wp-content\/uploads\/2015\/01\/EPS-SoftLightPDFfull-50x50.png 50w\" sizes=\"auto, (max-width: 300px) 100vw, 300px\" \/><\/a><figcaption id=\"caption-attachment-1752\" class=\"wp-caption-text\">Calculated Soft Light<\/figcaption><\/figure>\n<p>and using Photoshop&#8217;s Soft Light blend mode:<\/p>\n<figure id=\"attachment_1756\" aria-describedby=\"caption-attachment-1756\" style=\"width: 300px\" class=\"wp-caption alignnone\"><a href=\"http:\/\/photo.zakkinen.net\/wp-content\/uploads\/2015\/01\/Photoshop-SoftLight.png\"><img loading=\"lazy\" decoding=\"async\" data-attachment-id=\"1756\" data-permalink=\"https:\/\/photo.zakkinen.net\/en\/ps-blend-modes-3\/photoshop-softlight\/\" data-orig-file=\"https:\/\/photo.zakkinen.net\/wp-content\/uploads\/2015\/01\/Photoshop-SoftLight.png\" data-orig-size=\"300,300\" data-comments-opened=\"1\" data-image-meta=\"{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;,&quot;orientation&quot;:&quot;0&quot;}\" data-image-title=\"Photoshop-SoftLight\" data-image-description=\"\" data-image-caption=\"&lt;p&gt;Photoshop Soft Light&lt;\/p&gt;\n\" data-large-file=\"https:\/\/photo.zakkinen.net\/wp-content\/uploads\/2015\/01\/Photoshop-SoftLight.png\" class=\"size-full wp-image-1756\" src=\"http:\/\/photo.zakkinen.net\/wp-content\/uploads\/2015\/01\/Photoshop-SoftLight.png\" alt=\"Photoshop Soft Light\" width=\"300\" height=\"300\" srcset=\"https:\/\/photo.zakkinen.net\/wp-content\/uploads\/2015\/01\/Photoshop-SoftLight.png 300w, https:\/\/photo.zakkinen.net\/wp-content\/uploads\/2015\/01\/Photoshop-SoftLight-200x200.png 200w, https:\/\/photo.zakkinen.net\/wp-content\/uploads\/2015\/01\/Photoshop-SoftLight-50x50.png 50w\" sizes=\"auto, (max-width: 300px) 100vw, 300px\" \/><\/a><figcaption id=\"caption-attachment-1756\" class=\"wp-caption-text\">Photoshop Soft Light<\/figcaption><\/figure>\n<p>By subtraction one can easily show both images are identical (but for small deviations due to limited resolution and rounding errors).<\/p>\n<p>A closer look at the brightness for fixed b-values is quite interesting:<\/p>\n<p><a href=\"http:\/\/photo.zakkinen.net\/wp-content\/uploads\/2015\/01\/Gamma-Kurven-PDF.png\"><img loading=\"lazy\" decoding=\"async\" data-attachment-id=\"1765\" data-permalink=\"https:\/\/photo.zakkinen.net\/en\/ps-blend-modes-3\/gamma-kurven-pdf\/\" data-orig-file=\"https:\/\/photo.zakkinen.net\/wp-content\/uploads\/2015\/01\/Gamma-Kurven-PDF.png\" data-orig-size=\"611,511\" data-comments-opened=\"1\" data-image-meta=\"{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;,&quot;orientation&quot;:&quot;0&quot;}\" data-image-title=\"Gamma-Kurven-PDF\" data-image-description=\"\" data-image-caption=\"\" data-large-file=\"https:\/\/photo.zakkinen.net\/wp-content\/uploads\/2015\/01\/Gamma-Kurven-PDF.png\" class=\"aligncenter size-full wp-image-1765\" src=\"http:\/\/photo.zakkinen.net\/wp-content\/uploads\/2015\/01\/Gamma-Kurven-PDF.png\" alt=\"Gamma-Curve-PDF\" width=\"611\" height=\"511\" srcset=\"https:\/\/photo.zakkinen.net\/wp-content\/uploads\/2015\/01\/Gamma-Kurven-PDF.png 611w, https:\/\/photo.zakkinen.net\/wp-content\/uploads\/2015\/01\/Gamma-Kurven-PDF-200x167.png 200w, https:\/\/photo.zakkinen.net\/wp-content\/uploads\/2015\/01\/Gamma-Kurven-PDF-500x418.png 500w\" sizes=\"auto, (max-width: 611px) 100vw, 611px\" \/><\/a>As you can see for b=0,5 you get the diagonal, i.e. a linear translation from a to brightness. Hence if you chose an evenly grey image for B (50% grey), the image A is unchanged by the blending. Actually, this is a design goal for all formulas we are looking at here, 50% grey is supposed to be neutral.<\/p>\n<p>For b=0 you get the much simpler formula:<\/p>\n<p><img decoding=\"async\" src=\"https:\/\/s0.wp.com\/latex.php?latex=f%28a%2Cb%29+%3D+a%281-%281-a%29%29+%3D+%7Ba%7D%5E%7B2%7D&#038;bg=2a2a2a&#038;fg=ffffff&#038;s=1&#038;c=20201002\" alt=\"f(a,b) = a(1-(1-a)) = {a}^{2}\" class=\"latex\" \/>.<\/p>\n<p>This is nothing else but the \u03b3-correction (Gamma-correction) with \u03b3=2. The curve for b=1 looks a lot like the square root function, that would be a \u03b3-correction with \u03b3=0.5, but due to the corrective term for small a it is not identical.<\/p>\n<p>I was interested in the course of the deviation from the diagonal<\/p>\n<p><img decoding=\"async\" src=\"https:\/\/s0.wp.com\/latex.php?latex=f%28a%2Cb%29+%3D+a&#038;bg=2a2a2a&#038;fg=ffffff&#038;s=1&#038;c=20201002\" alt=\"f(a,b) = a\" class=\"latex\" \/><\/p>\n<p>for different values of b, as that might show me the degree of symmetry of the method. So I plotted curves for<\/p>\n<p><img decoding=\"async\" src=\"https:\/\/s0.wp.com\/latex.php?latex=f%28a%2Cb%29+%3D+%5Cleft%5C%7B+%5Cbegin%7Barray%7D%7Blr%7D%281-a%29ab+-+a%281-a%29%281-b%29+%26+%5Ctext%7Bfor+%7D+b+%3C+%7B1%2F2%7D%5C%5C%282b-1%29%28%5Csqrt%7Ba%7D-a%29+%26+%5Ctext%7Bfor+%7D+b+%5Cgeq+%7B1%2F2%7D+%5Cland+a+%3E+%7B1%2F4%7D%5C%5C%282b-1%29%28%28%2816a-12%29a%2B4%29a-a%29+%26+%5Ctext%7Bfor+%7D+b+%5Cgeq+%7B1%2F2%7D+%5Cland+a+%5Cleq+%7B1%2F4%7D%5Cend%7Barray%7D+%5Cright.&#038;bg=2a2a2a&#038;fg=ffffff&#038;s=1&#038;c=20201002\" alt=\"f(a,b) = &#92;left&#92;{ &#92;begin{array}{lr}(1-a)ab - a(1-a)(1-b) &amp; &#92;text{for } b &lt; {1\/2}&#92;&#92;(2b-1)(&#92;sqrt{a}-a) &amp; &#92;text{for } b &#92;geq {1\/2} &#92;land a &gt; {1\/4}&#92;&#92;(2b-1)(((16a-12)a+4)a-a) &amp; &#92;text{for } b &#92;geq {1\/2} &#92;land a &#92;leq {1\/4}&#92;end{array} &#92;right.\" class=\"latex\" \/><\/p>\n<p><a href=\"http:\/\/photo.zakkinen.net\/wp-content\/uploads\/2015\/01\/Delta-Kurven-PDF.png\"><img loading=\"lazy\" decoding=\"async\" data-attachment-id=\"1772\" data-permalink=\"https:\/\/photo.zakkinen.net\/en\/ps-blend-modes-3\/delta-kurven-pdf\/\" data-orig-file=\"https:\/\/photo.zakkinen.net\/wp-content\/uploads\/2015\/01\/Delta-Kurven-PDF-e1615455090991.png\" data-orig-size=\"300,250\" data-comments-opened=\"1\" data-image-meta=\"{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;,&quot;orientation&quot;:&quot;0&quot;}\" data-image-title=\"Delta-Kurven-PDF\" data-image-description=\"\" data-image-caption=\"\" data-large-file=\"https:\/\/photo.zakkinen.net\/wp-content\/uploads\/2015\/01\/Delta-Kurven-PDF-e1615455090991.png\" class=\"aligncenter size-full wp-image-1772\" src=\"http:\/\/photo.zakkinen.net\/wp-content\/uploads\/2015\/01\/Delta-Kurven-PDF.png\" alt=\"Delta-Curve-PDF\" width=\"614\" height=\"511\" \/><\/a>The strong asymmetry for b &gt; 0,5 is striking.<\/p>\n<h3>Variations of the Soft Light formula<\/h3>\n<p>Using the following formula, also sometimes presented as the Photoshop-formula, you get a slightly different result. Here you actually get the \u03b3=0.5 correction for b=1.<\/p>\n<p><img decoding=\"async\" src=\"https:\/\/s0.wp.com\/latex.php?latex=f%28a%2Cb%29+%3D+%5Cleft%5C%7B+%5Cbegin%7Barray%7D%7Blr%7D%281-a%29ab+%2B+a%281-%281-a%29%281-b%29%29+%26+%5Ctext%7Bfor+%7D+b+%3C+%7B1%2F2%7D%5C%5Ca%2B%282b-1%29%28%5Csqrt%7Ba%7D-a%29+%26+%5Ctext%7Bfor+%7D+b+%5Cgeq+%7B1%2F2%7D%5Cend%7Barray%7D+%5Cright.&#038;bg=2a2a2a&#038;fg=ffffff&#038;s=1&#038;c=20201002\" alt=\"f(a,b) = &#92;left&#92;{ &#92;begin{array}{lr}(1-a)ab + a(1-(1-a)(1-b)) &amp; &#92;text{for } b &lt; {1\/2}&#92;&#92;a+(2b-1)(&#92;sqrt{a}-a) &amp; &#92;text{for } b &#92;geq {1\/2}&#92;end{array} &#92;right.\" class=\"latex\" \/><\/p>\n<figure id=\"attachment_1754\" aria-describedby=\"caption-attachment-1754\" style=\"width: 300px\" class=\"wp-caption alignnone\"><a href=\"http:\/\/photo.zakkinen.net\/wp-content\/uploads\/2015\/01\/EPS-SoftLight-2.png\"><img loading=\"lazy\" decoding=\"async\" data-attachment-id=\"1754\" data-permalink=\"https:\/\/photo.zakkinen.net\/en\/ps-blend-modes-3\/eps-softlight-2\/\" data-orig-file=\"https:\/\/photo.zakkinen.net\/wp-content\/uploads\/2015\/01\/EPS-SoftLight-2.png\" data-orig-size=\"300,300\" data-comments-opened=\"1\" data-image-meta=\"{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;,&quot;orientation&quot;:&quot;0&quot;}\" data-image-title=\"EPS-SoftLight-2\" data-image-description=\"\" data-image-caption=\"&lt;p&gt;Ohne &#8220;Korrektur&#8221; f\u00fcr kleine a&lt;\/p&gt;\n\" data-large-file=\"https:\/\/photo.zakkinen.net\/wp-content\/uploads\/2015\/01\/EPS-SoftLight-2.png\" class=\"size-full wp-image-1754\" src=\"http:\/\/photo.zakkinen.net\/wp-content\/uploads\/2015\/01\/EPS-SoftLight-2.png\" alt=\"Without the corrective termfor small a\" width=\"300\" height=\"300\" srcset=\"https:\/\/photo.zakkinen.net\/wp-content\/uploads\/2015\/01\/EPS-SoftLight-2.png 300w, https:\/\/photo.zakkinen.net\/wp-content\/uploads\/2015\/01\/EPS-SoftLight-2-200x200.png 200w, https:\/\/photo.zakkinen.net\/wp-content\/uploads\/2015\/01\/EPS-SoftLight-2-50x50.png 50w\" sizes=\"auto, (max-width: 300px) 100vw, 300px\" \/><\/a><figcaption id=\"caption-attachment-1754\" class=\"wp-caption-text\">Without the &#8220;correction&#8221; for small a<\/figcaption><\/figure>\n<p>At a close look you might see that the top left corner is slightly brighter than the one from Photoshop.<\/p>\n<p>The corresponding curves look like this:<\/p>\n<p><a href=\"http:\/\/photo.zakkinen.net\/wp-content\/uploads\/2015\/01\/Gamma-Kurven-PDF-2.png\"><img loading=\"lazy\" decoding=\"async\" data-attachment-id=\"1768\" data-permalink=\"https:\/\/photo.zakkinen.net\/en\/ps-blend-modes-3\/gamma-kurven-pdf-2\/\" data-orig-file=\"https:\/\/photo.zakkinen.net\/wp-content\/uploads\/2015\/01\/Gamma-Kurven-PDF-2.png\" data-orig-size=\"614,507\" data-comments-opened=\"1\" data-image-meta=\"{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;,&quot;orientation&quot;:&quot;0&quot;}\" data-image-title=\"Gamma-Kurven-PDF-2\" data-image-description=\"\" data-image-caption=\"\" data-large-file=\"https:\/\/photo.zakkinen.net\/wp-content\/uploads\/2015\/01\/Gamma-Kurven-PDF-2.png\" class=\"aligncenter size-full wp-image-1768\" src=\"http:\/\/photo.zakkinen.net\/wp-content\/uploads\/2015\/01\/Gamma-Kurven-PDF-2.png\" alt=\"Gamma-Curve-PDF-2\" width=\"614\" height=\"507\" srcset=\"https:\/\/photo.zakkinen.net\/wp-content\/uploads\/2015\/01\/Gamma-Kurven-PDF-2.png 614w, https:\/\/photo.zakkinen.net\/wp-content\/uploads\/2015\/01\/Gamma-Kurven-PDF-2-200x165.png 200w, https:\/\/photo.zakkinen.net\/wp-content\/uploads\/2015\/01\/Gamma-Kurven-PDF-2-500x413.png 500w\" sizes=\"auto, (max-width: 614px) 100vw, 614px\" \/><\/a>Again no symmetry. Yes, you could mirror at the diagonal, but that is not keeping a fixed. For blending we want to know how a fixed value of a would be translated for varying b. Here identical changes in b result in more or less strong effect depending on the direction you move from b=0.5. You can see this more easily after subtaction of a.<\/p>\n<p><a href=\"http:\/\/photo.zakkinen.net\/wp-content\/uploads\/2015\/01\/Delta-Kurven-PDF-2.png\"><img loading=\"lazy\" decoding=\"async\" data-attachment-id=\"1773\" data-permalink=\"https:\/\/photo.zakkinen.net\/en\/ps-blend-modes-3\/delta-kurven-pdf-2\/\" data-orig-file=\"https:\/\/photo.zakkinen.net\/wp-content\/uploads\/2015\/01\/Delta-Kurven-PDF-2.png\" data-orig-size=\"612,522\" data-comments-opened=\"1\" data-image-meta=\"{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;,&quot;orientation&quot;:&quot;0&quot;}\" data-image-title=\"Delta-Kurven-PDF-2\" data-image-description=\"\" data-image-caption=\"\" data-large-file=\"https:\/\/photo.zakkinen.net\/wp-content\/uploads\/2015\/01\/Delta-Kurven-PDF-2.png\" class=\"aligncenter size-full wp-image-1773\" src=\"http:\/\/photo.zakkinen.net\/wp-content\/uploads\/2015\/01\/Delta-Kurven-PDF-2.png\" alt=\"Delta-Curves-PDF-2\" width=\"612\" height=\"522\" srcset=\"https:\/\/photo.zakkinen.net\/wp-content\/uploads\/2015\/01\/Delta-Kurven-PDF-2.png 612w, https:\/\/photo.zakkinen.net\/wp-content\/uploads\/2015\/01\/Delta-Kurven-PDF-2-200x171.png 200w, https:\/\/photo.zakkinen.net\/wp-content\/uploads\/2015\/01\/Delta-Kurven-PDF-2-500x426.png 500w\" sizes=\"auto, (max-width: 612px) 100vw, 612px\" \/><\/a><\/p>\n<p>In this representation you can clearly see how strong the change of the image would be for small a. Maybe too strong for Adobe so they chose to add that corrective term?<\/p>\n<p>But then, you could only use the first part of the original formula, this one:<\/p>\n<p><img decoding=\"async\" src=\"https:\/\/s0.wp.com\/latex.php?latex=f%28a%2Cb%29+%3D+%281-a%29ab+%2B+a%281-%281-a%29%281-b%29%29&#038;bg=2a2a2a&#038;fg=ffffff&#038;s=1&#038;c=20201002\" alt=\"f(a,b) = (1-a)ab + a(1-(1-a)(1-b))\" class=\"latex\" \/><\/p>\n<figure id=\"attachment_1755\" aria-describedby=\"caption-attachment-1755\" style=\"width: 300px\" class=\"wp-caption alignnone\"><a href=\"http:\/\/photo.zakkinen.net\/wp-content\/uploads\/2015\/01\/EPS-SoftLight-1.png\"><img loading=\"lazy\" decoding=\"async\" data-attachment-id=\"1755\" data-permalink=\"https:\/\/photo.zakkinen.net\/en\/ps-blend-modes-3\/eps-softlight-1\/\" data-orig-file=\"https:\/\/photo.zakkinen.net\/wp-content\/uploads\/2015\/01\/EPS-SoftLight-1.png\" data-orig-size=\"300,300\" data-comments-opened=\"1\" data-image-meta=\"{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;,&quot;orientation&quot;:&quot;0&quot;}\" data-image-title=\"EPS-SoftLight-1\" data-image-description=\"\" data-image-caption=\"&lt;p&gt;Nur der erste Teil&lt;\/p&gt;\n\" data-large-file=\"https:\/\/photo.zakkinen.net\/wp-content\/uploads\/2015\/01\/EPS-SoftLight-1.png\" class=\"size-full wp-image-1755\" src=\"http:\/\/photo.zakkinen.net\/wp-content\/uploads\/2015\/01\/EPS-SoftLight-1.png\" alt=\"Just the first term\" width=\"300\" height=\"300\" srcset=\"https:\/\/photo.zakkinen.net\/wp-content\/uploads\/2015\/01\/EPS-SoftLight-1.png 300w, https:\/\/photo.zakkinen.net\/wp-content\/uploads\/2015\/01\/EPS-SoftLight-1-200x200.png 200w, https:\/\/photo.zakkinen.net\/wp-content\/uploads\/2015\/01\/EPS-SoftLight-1-50x50.png 50w\" sizes=\"auto, (max-width: 300px) 100vw, 300px\" \/><\/a><figcaption id=\"caption-attachment-1755\" class=\"wp-caption-text\">Just the first term<\/figcaption><\/figure>\n<p>Also a lovely, very smooth result, linear in b. This linearity you can see in the curves as well:<\/p>\n<p><a href=\"http:\/\/photo.zakkinen.net\/wp-content\/uploads\/2015\/01\/Gamma-Kurven-PDF-1.png\"><img loading=\"lazy\" decoding=\"async\" data-attachment-id=\"1769\" data-permalink=\"https:\/\/photo.zakkinen.net\/en\/ps-blend-modes-3\/gamma-kurven-pdf-1\/\" data-orig-file=\"https:\/\/photo.zakkinen.net\/wp-content\/uploads\/2015\/01\/Gamma-Kurven-PDF-1.png\" data-orig-size=\"610,509\" data-comments-opened=\"1\" data-image-meta=\"{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;,&quot;orientation&quot;:&quot;0&quot;}\" data-image-title=\"Gamma-Kurven-PDF-1\" data-image-description=\"\" data-image-caption=\"\" data-large-file=\"https:\/\/photo.zakkinen.net\/wp-content\/uploads\/2015\/01\/Gamma-Kurven-PDF-1.png\" class=\"aligncenter size-full wp-image-1769\" src=\"http:\/\/photo.zakkinen.net\/wp-content\/uploads\/2015\/01\/Gamma-Kurven-PDF-1.png\" alt=\"Gamma-Kurven-PDF-1\" width=\"610\" height=\"509\" srcset=\"https:\/\/photo.zakkinen.net\/wp-content\/uploads\/2015\/01\/Gamma-Kurven-PDF-1.png 610w, https:\/\/photo.zakkinen.net\/wp-content\/uploads\/2015\/01\/Gamma-Kurven-PDF-1-200x167.png 200w, https:\/\/photo.zakkinen.net\/wp-content\/uploads\/2015\/01\/Gamma-Kurven-PDF-1-500x417.png 500w\" sizes=\"auto, (max-width: 610px) 100vw, 610px\" \/><\/a>Now you can no longer get mirror-symmetry along the diagonal, but the distance between curves for fixed a is always the same.<\/p>\n<p><a href=\"http:\/\/photo.zakkinen.net\/wp-content\/uploads\/2015\/01\/Delta-Kurven-PDF-1.png\"><img loading=\"lazy\" decoding=\"async\" data-attachment-id=\"1774\" data-permalink=\"https:\/\/photo.zakkinen.net\/en\/ps-blend-modes-3\/delta-kurven-pdf-1\/\" data-orig-file=\"https:\/\/photo.zakkinen.net\/wp-content\/uploads\/2015\/01\/Delta-Kurven-PDF-1.png\" data-orig-size=\"611,509\" data-comments-opened=\"1\" data-image-meta=\"{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;,&quot;orientation&quot;:&quot;0&quot;}\" data-image-title=\"Delta-Kurven-PDF-1\" data-image-description=\"\" data-image-caption=\"\" data-large-file=\"https:\/\/photo.zakkinen.net\/wp-content\/uploads\/2015\/01\/Delta-Kurven-PDF-1.png\" class=\"aligncenter size-full wp-image-1774\" src=\"http:\/\/photo.zakkinen.net\/wp-content\/uploads\/2015\/01\/Delta-Kurven-PDF-1.png\" alt=\"Delta-Curves-PDF-1\" width=\"611\" height=\"509\" srcset=\"https:\/\/photo.zakkinen.net\/wp-content\/uploads\/2015\/01\/Delta-Kurven-PDF-1.png 611w, https:\/\/photo.zakkinen.net\/wp-content\/uploads\/2015\/01\/Delta-Kurven-PDF-1-200x167.png 200w, https:\/\/photo.zakkinen.net\/wp-content\/uploads\/2015\/01\/Delta-Kurven-PDF-1-500x417.png 500w\" sizes=\"auto, (max-width: 611px) 100vw, 611px\" \/><\/a>Here you see symmetry, looks very plausible, but for b=1 you miss \u03b3=0,5 by a long shot.<\/p>\n<h2>Illusions&#8217; parametric Gamma-Correction<\/h2>\n<p>A completely different approach to Soft Light you can find at <a href=\"http:\/\/illusions.hu\/\" target=\"_blank\" rel=\"noopener\">illusions.hu<\/a>. Starting from the idea of a parametric \u03b3-correction, controlled by b, they use:<\/p>\n<p><img decoding=\"async\" src=\"https:\/\/s0.wp.com\/latex.php?latex=f%28a%2Cb%29+%3D+a%5E%7B2%5E%7B%281-2b%29%7D%7D&#038;bg=2a2a2a&#038;fg=ffffff&#038;s=1&#038;c=20201002\" alt=\"f(a,b) = a^{2^{(1-2b)}}\" class=\"latex\" \/><\/p>\n<p>The result of the blend is very pleasing, at least to my eyes:<\/p>\n<figure id=\"attachment_1775\" aria-describedby=\"caption-attachment-1775\" style=\"width: 300px\" class=\"wp-caption alignnone\"><a href=\"http:\/\/photo.zakkinen.net\/wp-content\/uploads\/2015\/01\/EPS-SoftLight-Illusions1.png\"><img loading=\"lazy\" decoding=\"async\" data-attachment-id=\"1775\" data-permalink=\"https:\/\/photo.zakkinen.net\/en\/ps-blend-modes-3\/eps-softlight-illusions-2\/\" data-orig-file=\"https:\/\/photo.zakkinen.net\/wp-content\/uploads\/2015\/01\/EPS-SoftLight-Illusions1.png\" data-orig-size=\"300,300\" data-comments-opened=\"1\" data-image-meta=\"{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;,&quot;orientation&quot;:&quot;0&quot;}\" data-image-title=\"EPS-SoftLight-Illusions\" data-image-description=\"\" data-image-caption=\"&lt;p&gt;Illusions.hu Gamma-Korrektur&lt;\/p&gt;\n\" data-large-file=\"https:\/\/photo.zakkinen.net\/wp-content\/uploads\/2015\/01\/EPS-SoftLight-Illusions1.png\" class=\"size-full wp-image-1775\" src=\"http:\/\/photo.zakkinen.net\/wp-content\/uploads\/2015\/01\/EPS-SoftLight-Illusions1.png\" alt=\"Illusions.hu Gamma-Correction\" width=\"300\" height=\"300\" srcset=\"https:\/\/photo.zakkinen.net\/wp-content\/uploads\/2015\/01\/EPS-SoftLight-Illusions1.png 300w, https:\/\/photo.zakkinen.net\/wp-content\/uploads\/2015\/01\/EPS-SoftLight-Illusions1-200x200.png 200w, https:\/\/photo.zakkinen.net\/wp-content\/uploads\/2015\/01\/EPS-SoftLight-Illusions1-50x50.png 50w\" sizes=\"auto, (max-width: 300px) 100vw, 300px\" \/><\/a><figcaption id=\"caption-attachment-1775\" class=\"wp-caption-text\">Illusions.hu Gamma-Correction<\/figcaption><\/figure>\n<p>At first glance, the curves almost look like the ones for the original Adobe-formula:<\/p>\n<p><a href=\"http:\/\/photo.zakkinen.net\/wp-content\/uploads\/2015\/01\/Delta-Kurven-Illusions.png\"><img loading=\"lazy\" decoding=\"async\" data-attachment-id=\"1778\" data-permalink=\"https:\/\/photo.zakkinen.net\/en\/ps-blend-modes-3\/delta-kurven-illusions\/\" data-orig-file=\"https:\/\/photo.zakkinen.net\/wp-content\/uploads\/2015\/01\/Delta-Kurven-Illusions.png\" data-orig-size=\"610,510\" data-comments-opened=\"1\" data-image-meta=\"{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;,&quot;orientation&quot;:&quot;0&quot;}\" data-image-title=\"Delta-Kurven-Illusions\" data-image-description=\"\" data-image-caption=\"\" data-large-file=\"https:\/\/photo.zakkinen.net\/wp-content\/uploads\/2015\/01\/Delta-Kurven-Illusions.png\" class=\"aligncenter size-full wp-image-1778\" src=\"http:\/\/photo.zakkinen.net\/wp-content\/uploads\/2015\/01\/Delta-Kurven-Illusions.png\" alt=\"Delta-Curves-Illusions\" width=\"610\" height=\"510\" srcset=\"https:\/\/photo.zakkinen.net\/wp-content\/uploads\/2015\/01\/Delta-Kurven-Illusions.png 610w, https:\/\/photo.zakkinen.net\/wp-content\/uploads\/2015\/01\/Delta-Kurven-Illusions-200x167.png 200w, https:\/\/photo.zakkinen.net\/wp-content\/uploads\/2015\/01\/Delta-Kurven-Illusions-500x418.png 500w\" sizes=\"auto, (max-width: 610px) 100vw, 610px\" \/><\/a>At a closer look the transitions are much smoother of course. This is not glued together from different parts, no wonder.<\/p>\n<h2>Mirror Games<\/h2>\n<p>I also have my own suggestion, a spin-off from my trying to answer the question if the second part of the Photoshop-formula might be the first mirrored at the diagonal. The answer is: it isn&#8217;t. You get the formula for the mirrored curve by resolving the first part for a and replacing by with (1-b&#8217;). The latter because for b &gt; 0,5 the curve must be the mirror of one with b&#8217;=1-b.<\/p>\n<p><img decoding=\"async\" src=\"https:\/\/s0.wp.com\/latex.php?latex=f%28a%2Cb%29+%3D+%5Cleft%5C%7B+%5Cbegin%7Barray%7D%7Blr%7D%281-a%29ab+%2B+a%281-%281-a%29%281-b%29%29+%26+%5Ctext%7Bfor+%7D+b+%3C+%7B1%2F2%7D%5C%5C+%5Cfrac%7B1-b%7D%7B1-2b%7D%2B%5Csqrt%7B%5Cfrac%7B%281-b%29%5E2%7D%7B%282b-1%29%5E2%7D%2B%5Cfrac%7Ba%7D%7B2b-1%7D%7D%26+%5Ctext%7Bfor+%7D+b+%5Cgeq+%7B1%2F2%7D%5Cend%7Barray%7D+%5Cright.&#038;bg=2a2a2a&#038;fg=ffffff&#038;s=1&#038;c=20201002\" alt=\"f(a,b) = &#92;left&#92;{ &#92;begin{array}{lr}(1-a)ab + a(1-(1-a)(1-b)) &amp; &#92;text{for } b &lt; {1\/2}&#92;&#92; &#92;frac{1-b}{1-2b}+&#92;sqrt{&#92;frac{(1-b)^2}{(2b-1)^2}+&#92;frac{a}{2b-1}}&amp; &#92;text{for } b &#92;geq {1\/2}&#92;end{array} &#92;right.\" class=\"latex\" \/><\/p>\n<p>In this case the deviations from the diagonal are:<\/p>\n<p><a href=\"http:\/\/photo.zakkinen.net\/wp-content\/uploads\/2015\/01\/Delta-Kurven-HZ.png\"><img loading=\"lazy\" decoding=\"async\" data-attachment-id=\"1785\" data-permalink=\"https:\/\/photo.zakkinen.net\/en\/ps-blend-modes-3\/delta-kurven-hz\/\" data-orig-file=\"https:\/\/photo.zakkinen.net\/wp-content\/uploads\/2015\/01\/Delta-Kurven-HZ.png\" data-orig-size=\"608,514\" data-comments-opened=\"1\" data-image-meta=\"{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;,&quot;orientation&quot;:&quot;0&quot;}\" data-image-title=\"Delta-Kurven-HZ\" data-image-description=\"\" data-image-caption=\"\" data-large-file=\"https:\/\/photo.zakkinen.net\/wp-content\/uploads\/2015\/01\/Delta-Kurven-HZ.png\" class=\"aligncenter size-full wp-image-1785\" src=\"http:\/\/photo.zakkinen.net\/wp-content\/uploads\/2015\/01\/Delta-Kurven-HZ.png\" alt=\"Delta-Kurven-HZ\" width=\"608\" height=\"514\" srcset=\"https:\/\/photo.zakkinen.net\/wp-content\/uploads\/2015\/01\/Delta-Kurven-HZ.png 608w, https:\/\/photo.zakkinen.net\/wp-content\/uploads\/2015\/01\/Delta-Kurven-HZ-200x169.png 200w, https:\/\/photo.zakkinen.net\/wp-content\/uploads\/2015\/01\/Delta-Kurven-HZ-500x423.png 500w\" sizes=\"auto, (max-width: 608px) 100vw, 608px\" \/><\/a><br \/>I find this is not bad at all. Slightly brighter bottom left than the Illusions version, less drastic top left that the reduced Photoshop-formula (the one without the corrective for small a).<\/p>\n<figure id=\"attachment_1787\" aria-describedby=\"caption-attachment-1787\" style=\"width: 300px\" class=\"wp-caption alignnone\"><a href=\"http:\/\/photo.zakkinen.net\/wp-content\/uploads\/2015\/01\/EPS-SoftLightHZ.png\"><img loading=\"lazy\" decoding=\"async\" data-attachment-id=\"1787\" data-permalink=\"https:\/\/photo.zakkinen.net\/en\/ps-blend-modes-3\/eps-softlighthz\/\" data-orig-file=\"https:\/\/photo.zakkinen.net\/wp-content\/uploads\/2015\/01\/EPS-SoftLightHZ.png\" data-orig-size=\"300,300\" data-comments-opened=\"1\" data-image-meta=\"{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;,&quot;orientation&quot;:&quot;0&quot;}\" data-image-title=\"EPS-SoftLightHZ\" data-image-description=\"\" data-image-caption=\"&lt;p&gt;&#8220;Mein&#8221; Soft Light&lt;\/p&gt;\n\" data-large-file=\"https:\/\/photo.zakkinen.net\/wp-content\/uploads\/2015\/01\/EPS-SoftLightHZ.png\" class=\"size-full wp-image-1787\" src=\"http:\/\/photo.zakkinen.net\/wp-content\/uploads\/2015\/01\/EPS-SoftLightHZ.png\" alt=\"&quot;My&quot; Soft Light\" width=\"300\" height=\"300\" srcset=\"https:\/\/photo.zakkinen.net\/wp-content\/uploads\/2015\/01\/EPS-SoftLightHZ.png 300w, https:\/\/photo.zakkinen.net\/wp-content\/uploads\/2015\/01\/EPS-SoftLightHZ-200x200.png 200w, https:\/\/photo.zakkinen.net\/wp-content\/uploads\/2015\/01\/EPS-SoftLightHZ-50x50.png 50w\" sizes=\"auto, (max-width: 300px) 100vw, 300px\" \/><\/a><figcaption id=\"caption-attachment-1787\" class=\"wp-caption-text\">&#8220;My&#8221; Soft Light<\/figcaption><\/figure>\n<p>I have to admit, the whole is pretty academic. Alas, we cannot add new blend modes to Photoshop that easily. If you can, let me know. I&#8217;d love to have the last two blend modes there.<\/p>\n\n\n<h1 class=\"wp-block-heading\">Other parts of this mini-series<\/h1>\n\n\n\n<p><a href=\"\/en\/ps-blend-modes-2\/\">Blend Modes &#8211; Part 1: Multiply, Linear Burn, Linear Dodge and Linear Light<\/a><\/p>\n\n\n\n<p><a href=\"\/en\/ps-blend-modes-3\/\"><a href=\"\/en\/ps-blend-modes-2\/\">Blend Modes &#8211; Part 2: Color Burn, Color Dodge, Screen, Overlay, Hard Light and Vivid Light<\/a><\/a><\/p>\n","protected":false,"raw":"<h1>Soft Light<\/h1>\n<p>Soft Light is the one blend mode I read most nonsense about. Part of this may be due to the fact that vendors define the method differently, get quoted incorrectly and thus add to the confusion. Alas, I couldn't find explanations for their particular choices, so I can only show what I figured out and present my own thoughts.<!--more--><\/p>\n<h2>Photoshop<\/h2>\n<p>My Photoshop CC uses the following formula (as documented in <a title=\"PDF 1.7 Reference\" href=\"http:\/\/wwwimages.adobe.com\/content\/dam\/Adobe\/en\/devnet\/pdf\/pdfs\/PDF32000_2008.pdf\" target=\"_blank\" rel=\"noopener\">PDF Reference<\/a>):<\/p>\n<p>$latex f(a,b) = \\left\\{ \\begin{array}{lr}(1-a)ab + a(1-(1-a)(1-b)) &amp; \\text{for } b &lt; {1\/2}\\\\a+(2b-1)(\\sqrt{a}-a) &amp; \\text{f\\\"ur } b \\geq {1\/2} \\land a &gt; {1\/4}\\\\a+(2b-1)(((16a-12)a+4)a-a) &amp; \\text{for } b \\geq {1\/2} \\land a \\leq {1\/4}\\end{array} \\right.&amp;bg=2a2a2a&amp;fg=ffffff&amp;s=1$<\/p>\n<p>I was able to verify that with the help of a little Postscript script may father generously provided (thank you very much for your support, (<a title=\"Dieter Zawischa\" href=\"http:\/\/zawischa.kopflos-ev.de\/\" target=\"_blank\" rel=\"noopener\">Dieter<\/a>)). It fills a square with the result of a blend between two linear gradients using a formula only limited by your Postscript skills (reverse Polish notation). After comparing the result with Photoshop's own blend, I can assure you now that this indeed is the formula used, whatever others try to tell you. (For more details about the process see <a title=\"Photoshop Blend Modes \u2013 Part 1\" href=\"http:\/\/photo.zakkinen.net\/en\/2014\/12\/ps-blend-modes-1\/\">here<\/a>).<\/p>\n<p>The two source images:<\/p>\n<div>\n[caption id=\"attachment_1750\" align=\"alignnone\" width=\"300\"]<a href=\"http:\/\/photo.zakkinen.net\/wp-content\/uploads\/2015\/01\/EPS-A.png\"><img class=\"size-full wp-image-1750\" src=\"http:\/\/photo.zakkinen.net\/wp-content\/uploads\/2015\/01\/EPS-A.png\" alt=\"Gradient A\" width=\"300\" height=\"300\" \/><\/a> Image A - horizontal gradient[\/caption]\n[caption id=\"attachment_1751\" align=\"alignnone\" width=\"300\"]<a href=\"http:\/\/photo.zakkinen.net\/wp-content\/uploads\/2015\/01\/EPS-B.png\"><img class=\"size-full wp-image-1751\" src=\"http:\/\/photo.zakkinen.net\/wp-content\/uploads\/2015\/01\/EPS-B.png\" alt=\"Gradient B\" width=\"300\" height=\"300\" \/><\/a> Bild B - vertical gradient[\/caption]\n<\/div>\n<p>After blending using the Soft Light formula with the Postscript script:<\/p>\n[caption id=\"attachment_1752\" align=\"alignnone\" width=\"300\"]<a href=\"http:\/\/photo.zakkinen.net\/wp-content\/uploads\/2015\/01\/EPS-SoftLightPDFfull.png\"><img class=\"size-full wp-image-1752\" src=\"http:\/\/photo.zakkinen.net\/wp-content\/uploads\/2015\/01\/EPS-SoftLightPDFfull.png\" alt=\"Soft Light calculated\" width=\"300\" height=\"300\" \/><\/a> Calculated Soft Light[\/caption]\n<p>and using Photoshop's Soft Light blend mode:<\/p>\n[caption id=\"attachment_1756\" align=\"alignnone\" width=\"300\"]<a href=\"http:\/\/photo.zakkinen.net\/wp-content\/uploads\/2015\/01\/Photoshop-SoftLight.png\"><img class=\"size-full wp-image-1756\" src=\"http:\/\/photo.zakkinen.net\/wp-content\/uploads\/2015\/01\/Photoshop-SoftLight.png\" alt=\"Photoshop Soft Light\" width=\"300\" height=\"300\" \/><\/a> Photoshop Soft Light[\/caption]\n<p>By subtraction one can easily show both images are identical (but for small deviations due to limited resolution and rounding errors).<\/p>\n<p>A closer look at the brightness for fixed b-values is quite interesting:<\/p>\n<p><a href=\"http:\/\/photo.zakkinen.net\/wp-content\/uploads\/2015\/01\/Gamma-Kurven-PDF.png\"><img class=\"aligncenter size-full wp-image-1765\" src=\"http:\/\/photo.zakkinen.net\/wp-content\/uploads\/2015\/01\/Gamma-Kurven-PDF.png\" alt=\"Gamma-Curve-PDF\" width=\"611\" height=\"511\" \/><\/a>As you can see for b=0,5 you get the diagonal, i.e. a linear translation from a to brightness. Hence if you chose an evenly grey image for B (50% grey), the image A is unchanged by the blending. Actually, this is a design goal for all formulas we are looking at here, 50% grey is supposed to be neutral.<\/p>\n<p>For b=0 you get the much simpler formula:<\/p>\n<p>$latex f(a,b) = a(1-(1-a)) = {a}^{2}&amp;bg=2a2a2a&amp;fg=ffffff&amp;s=1$.<\/p>\n<p>This is nothing else but the \u03b3-correction (Gamma-correction) with \u03b3=2. The curve for b=1 looks a lot like the square root function, that would be a \u03b3-correction with \u03b3=0.5, but due to the corrective term for small a it is not identical.<\/p>\n<p>I was interested in the course of the deviation from the diagonal<\/p>\n<p>$latex f(a,b) = a&amp;bg=2a2a2a&amp;fg=ffffff&amp;s=1$<\/p>\n<p>for different values of b, as that might show me the degree of symmetry of the method. So I plotted curves for<\/p>\n<p>$latex f(a,b) = \\left\\{ \\begin{array}{lr}(1-a)ab - a(1-a)(1-b) &amp; \\text{for } b &lt; {1\/2}\\\\(2b-1)(\\sqrt{a}-a) &amp; \\text{for } b \\geq {1\/2} \\land a &gt; {1\/4}\\\\(2b-1)(((16a-12)a+4)a-a) &amp; \\text{for } b \\geq {1\/2} \\land a \\leq {1\/4}\\end{array} \\right.&amp;bg=2a2a2a&amp;fg=ffffff&amp;s=1$<\/p>\n<p><a href=\"http:\/\/photo.zakkinen.net\/wp-content\/uploads\/2015\/01\/Delta-Kurven-PDF.png\"><img class=\"aligncenter size-full wp-image-1772\" src=\"http:\/\/photo.zakkinen.net\/wp-content\/uploads\/2015\/01\/Delta-Kurven-PDF.png\" alt=\"Delta-Curve-PDF\" width=\"614\" height=\"511\" \/><\/a>The strong asymmetry for b &gt; 0,5 is striking.<\/p>\n<h3>Variations of the Soft Light formula<\/h3>\n<p>Using the following formula, also sometimes presented as the Photoshop-formula, you get a slightly different result. Here you actually get the \u03b3=0.5 correction for b=1.<\/p>\n<p>$latex f(a,b) = \\left\\{ \\begin{array}{lr}(1-a)ab + a(1-(1-a)(1-b)) &amp; \\text{for } b &lt; {1\/2}\\\\a+(2b-1)(\\sqrt{a}-a) &amp; \\text{for } b \\geq {1\/2}\\end{array} \\right.&amp;bg=2a2a2a&amp;fg=ffffff&amp;s=1$<\/p>\n[caption id=\"attachment_1754\" align=\"alignnone\" width=\"300\"]<a href=\"http:\/\/photo.zakkinen.net\/wp-content\/uploads\/2015\/01\/EPS-SoftLight-2.png\"><img class=\"size-full wp-image-1754\" src=\"http:\/\/photo.zakkinen.net\/wp-content\/uploads\/2015\/01\/EPS-SoftLight-2.png\" alt=\"Without the corrective termfor small a\" width=\"300\" height=\"300\" \/><\/a> Without the \"correction\" for small a[\/caption]\n<p>At a close look you might see that the top left corner is slightly brighter than the one from Photoshop.<\/p>\n<p>The corresponding curves look like this:<\/p>\n<p><a href=\"http:\/\/photo.zakkinen.net\/wp-content\/uploads\/2015\/01\/Gamma-Kurven-PDF-2.png\"><img class=\"aligncenter size-full wp-image-1768\" src=\"http:\/\/photo.zakkinen.net\/wp-content\/uploads\/2015\/01\/Gamma-Kurven-PDF-2.png\" alt=\"Gamma-Curve-PDF-2\" width=\"614\" height=\"507\" \/><\/a>Again no symmetry. Yes, you could mirror at the diagonal, but that is not keeping a fixed. For blending we want to know how a fixed value of a would be translated for varying b. Here identical changes in b result in more or less strong effect depending on the direction you move from b=0.5. You can see this more easily after subtaction of a.<\/p>\n<p><a href=\"http:\/\/photo.zakkinen.net\/wp-content\/uploads\/2015\/01\/Delta-Kurven-PDF-2.png\"><img class=\"aligncenter size-full wp-image-1773\" src=\"http:\/\/photo.zakkinen.net\/wp-content\/uploads\/2015\/01\/Delta-Kurven-PDF-2.png\" alt=\"Delta-Curves-PDF-2\" width=\"612\" height=\"522\" \/><\/a><\/p>\n<p>In this representation you can clearly see how strong the change of the image would be for small a. Maybe too strong for Adobe so they chose to add that corrective term?<\/p>\n<p>But then, you could only use the first part of the original formula, this one:<\/p>\n<p>$latex f(a,b) = (1-a)ab + a(1-(1-a)(1-b))&amp;bg=2a2a2a&amp;fg=ffffff&amp;s=1$<\/p>\n[caption id=\"attachment_1755\" align=\"alignnone\" width=\"300\"]<a href=\"http:\/\/photo.zakkinen.net\/wp-content\/uploads\/2015\/01\/EPS-SoftLight-1.png\"><img class=\"size-full wp-image-1755\" src=\"http:\/\/photo.zakkinen.net\/wp-content\/uploads\/2015\/01\/EPS-SoftLight-1.png\" alt=\"Just the first term\" width=\"300\" height=\"300\" \/><\/a> Just the first term[\/caption]\n<p>Also a lovely, very smooth result, linear in b. This linearity you can see in the curves as well:<\/p>\n<p><a href=\"http:\/\/photo.zakkinen.net\/wp-content\/uploads\/2015\/01\/Gamma-Kurven-PDF-1.png\"><img class=\"aligncenter size-full wp-image-1769\" src=\"http:\/\/photo.zakkinen.net\/wp-content\/uploads\/2015\/01\/Gamma-Kurven-PDF-1.png\" alt=\"Gamma-Kurven-PDF-1\" width=\"610\" height=\"509\" \/><\/a>Now you can no longer get mirror-symmetry along the diagonal, but the distance between curves for fixed a is always the same.<\/p>\n<p><a href=\"http:\/\/photo.zakkinen.net\/wp-content\/uploads\/2015\/01\/Delta-Kurven-PDF-1.png\"><img class=\"aligncenter size-full wp-image-1774\" src=\"http:\/\/photo.zakkinen.net\/wp-content\/uploads\/2015\/01\/Delta-Kurven-PDF-1.png\" alt=\"Delta-Curves-PDF-1\" width=\"611\" height=\"509\" \/><\/a>Here you see symmetry, looks very plausible, but for b=1 you miss \u03b3=0,5 by a long shot.<\/p>\n<h2>Illusions' parametric Gamma-Correction<\/h2>\n<p>A completely different approach to Soft Light you can find at <a href=\"http:\/\/illusions.hu\/\" target=\"_blank\" rel=\"noopener\">illusions.hu<\/a>. Starting from the idea of a parametric \u03b3-correction, controlled by b, they use:<\/p>\n<p>$latex f(a,b) = a^{2^{(1-2b)}}&amp;bg=2a2a2a&amp;fg=ffffff&amp;s=1$<\/p>\n<p>The result of the blend is very pleasing, at least to my eyes:<\/p>\n[caption id=\"attachment_1775\" align=\"alignnone\" width=\"300\"]<a href=\"http:\/\/photo.zakkinen.net\/wp-content\/uploads\/2015\/01\/EPS-SoftLight-Illusions1.png\"><img class=\"size-full wp-image-1775\" src=\"http:\/\/photo.zakkinen.net\/wp-content\/uploads\/2015\/01\/EPS-SoftLight-Illusions1.png\" alt=\"Illusions.hu Gamma-Correction\" width=\"300\" height=\"300\" \/><\/a> Illusions.hu Gamma-Correction[\/caption]\n<p>At first glance, the curves almost look like the ones for the original Adobe-formula:<\/p>\n<p><a href=\"http:\/\/photo.zakkinen.net\/wp-content\/uploads\/2015\/01\/Delta-Kurven-Illusions.png\"><img class=\"aligncenter size-full wp-image-1778\" src=\"http:\/\/photo.zakkinen.net\/wp-content\/uploads\/2015\/01\/Delta-Kurven-Illusions.png\" alt=\"Delta-Curves-Illusions\" width=\"610\" height=\"510\" \/><\/a>At a closer look the transitions are much smoother of course. This is not glued together from different parts, no wonder.<\/p>\n<h2>Mirror Games<\/h2>\n<p>I also have my own suggestion, a spin-off from my trying to answer the question if the second part of the Photoshop-formula might be the first mirrored at the diagonal. The answer is: it isn't. You get the formula for the mirrored curve by resolving the first part for a and replacing by with (1-b'). The latter because for b &gt; 0,5 the curve must be the mirror of one with b'=1-b.<\/p>\n<p>$latex f(a,b) = \\left\\{ \\begin{array}{lr}(1-a)ab + a(1-(1-a)(1-b)) &amp; \\text{for } b &lt; {1\/2}\\\\ \\frac{1-b}{1-2b}+\\sqrt{\\frac{(1-b)^2}{(2b-1)^2}+\\frac{a}{2b-1}}&amp; \\text{for } b \\geq {1\/2}\\end{array} \\right.&amp;bg=2a2a2a&amp;fg=ffffff&amp;s=1$<\/p>\n<p>In this case the deviations from the diagonal are:<\/p>\n<p><a href=\"http:\/\/photo.zakkinen.net\/wp-content\/uploads\/2015\/01\/Delta-Kurven-HZ.png\"><img class=\"aligncenter size-full wp-image-1785\" src=\"http:\/\/photo.zakkinen.net\/wp-content\/uploads\/2015\/01\/Delta-Kurven-HZ.png\" alt=\"Delta-Kurven-HZ\" width=\"608\" height=\"514\" \/><\/a><br \/>I find this is not bad at all. Slightly brighter bottom left than the Illusions version, less drastic top left that the reduced Photoshop-formula (the one without the corrective for small a).<\/p>\n[caption id=\"attachment_1787\" align=\"alignnone\" width=\"300\"]<a href=\"http:\/\/photo.zakkinen.net\/wp-content\/uploads\/2015\/01\/EPS-SoftLightHZ.png\"><img class=\"size-full wp-image-1787\" src=\"http:\/\/photo.zakkinen.net\/wp-content\/uploads\/2015\/01\/EPS-SoftLightHZ.png\" alt=\"&quot;My&quot; Soft Light\" width=\"300\" height=\"300\" \/><\/a> \"My\" Soft Light[\/caption]\n<p>I have to admit, the whole is pretty academic. Alas, we cannot add new blend modes to Photoshop that easily. If you can, let me know. I'd love to have the last two blend modes there.<\/p>\n\n<!-- wp:heading {\"level\":1} -->\n<h1>Other parts of this mini-series<\/h1>\n<!-- \/wp:heading -->\n\n<!-- wp:paragraph -->\n<p><a href=\"\/en\/ps-blend-modes-2\/\">Blend Modes - Part 1: Multiply, Linear Burn, Linear Dodge and Linear Light<\/a><\/p>\n<!-- \/wp:paragraph -->\n\n<!-- wp:paragraph -->\n<p><a href=\"\/en\/ps-blend-modes-3\/\"><a href=\"\/en\/ps-blend-modes-2\/\">Blend Modes - Part 2: Color Burn, Color Dodge, Screen, Overlay, Hard Light and Vivid Light<\/a><\/a><\/p>\n<!-- \/wp:paragraph -->"},"excerpt":{"rendered":"","protected":false,"raw":""},"author":1,"featured_media":1772,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_de_post_content":"<h1>Weiches Licht (Soft Light)<\/h1>\n<p>Soft Light ist die Verrechnungsmethode, \u00fcber die man am h\u00e4ufigsten Fehlerhaftes liest. Was auch daran liegt, dass verschiedene Hersteller die Methode unterschiedlich definieren und so zur Verwirrung beitragen. Ich habe leider noch keine Begr\u00fcndungen f\u00fcr die Wahl der jeweiligen Berechnungen gefunden.<!--more--><\/p>\n<h2>Photoshop<\/h2>\n<p>Mein Photoshop CC verwendet die folgende Formel (wie beschrieben in der <a title=\"PDF 1.7 Referenz\" href=\"http:\/\/wwwimages.adobe.com\/content\/dam\/Adobe\/en\/devnet\/pdf\/pdfs\/PDF32000_2008.pdf\" target=\"_blank\" rel=\"noopener\">PDF Referenzdokumentation<\/a>):<\/p>\n<p>$latex f(a,b) = \\left\\{ \\begin{array}{lr}(1-a)ab + a(1-(1-a)(1-b)) &amp; \\text{f\\\"ur } b &lt; {1\/2}\\\\a+(2b-1)(\\sqrt{a}-a) &amp; \\text{f\\\"ur } b \\geq {1\/2} \\land a &gt; {1\/4}\\\\a+(2b-1)(((16a-12)a+4)a-a) &amp; \\text{f\\\"ur } b \\geq {1\/2} \\land a \\leq {1\/4}\\end{array} \\right.&amp;bg=2a2a2a&amp;fg=ffffff&amp;s=1$<\/p>\n<p>Ich konnte das pr\u00fcfen, indem ich mittels eines kleinen Postscript-Programms (vielen Dank f\u00fcr die Unterst\u00fctzung an meinen Vater, <a title=\"Dieter Zawischa\" href=\"http:\/\/zawischa.kopflos-ev.de\/\" target=\"_blank\" rel=\"noopener\">Dieter Zawischa<\/a>) ein Quadrat mit dem Ergebnis der Verrechnung zweier linearer Verl\u00e4ufe von Schwarz zu Wei\u00df f\u00fcllte und das dann verglich mit dem, was Postscript bei der gleichen Verrechnung produziert (Details dazu siehe <a title=\"Verrechnungsmodi in Photoshop \u2013 Teil 1\" href=\"http:\/\/photo.zakkinen.net\/2014\/12\/verrechnungsmodi-in-photoshop-teil-1\/\">hier)<\/a>.<\/p>\n<p>Die beiden Ausgangsbilder:<\/p>\n<div>\n[caption id=\"attachment_1750\" align=\"alignnone\" width=\"300\"]<a href=\"http:\/\/photo.zakkinen.net\/wp-content\/uploads\/2015\/01\/EPS-A.png\"><img class=\"size-full wp-image-1750\" src=\"http:\/\/photo.zakkinen.net\/wp-content\/uploads\/2015\/01\/EPS-A.png\" alt=\"Verlauf A\" width=\"300\" height=\"300\" \/><\/a> Bild A - Verlauf horizontal[\/caption]\n[caption id=\"attachment_1751\" align=\"alignnone\" width=\"300\"]<a href=\"http:\/\/photo.zakkinen.net\/wp-content\/uploads\/2015\/01\/EPS-B.png\"><img class=\"size-full wp-image-1751\" src=\"http:\/\/photo.zakkinen.net\/wp-content\/uploads\/2015\/01\/EPS-B.png\" alt=\"Verlauf B\" width=\"300\" height=\"300\" \/><\/a> Bild B - Verlauf vertikal[\/caption]\n<\/div>\n<p>Das Ergebnis der Soft-Light Verrechnung aus dem Postscript-Programm<\/p>\n[caption id=\"attachment_1752\" align=\"alignnone\" width=\"300\"]<a href=\"http:\/\/photo.zakkinen.net\/wp-content\/uploads\/2015\/01\/EPS-SoftLightPDFfull.png\"><img class=\"size-full wp-image-1752\" src=\"http:\/\/photo.zakkinen.net\/wp-content\/uploads\/2015\/01\/EPS-SoftLightPDFfull.png\" alt=\"Soft Light berechnet\" width=\"300\" height=\"300\" \/><\/a> Soft Light berechnet[\/caption]\n<p>und das aus Photoshop<\/p>\n[caption id=\"attachment_1756\" align=\"alignnone\" width=\"300\"]<a href=\"http:\/\/photo.zakkinen.net\/wp-content\/uploads\/2015\/01\/Photoshop-SoftLight.png\"><img class=\"size-full wp-image-1756\" src=\"http:\/\/photo.zakkinen.net\/wp-content\/uploads\/2015\/01\/Photoshop-SoftLight.png\" alt=\"Photoshop Soft Light\" width=\"300\" height=\"300\" \/><\/a> Photoshop Soft Light[\/caption]\n<p>Man kann durch Differenzbildung leicht pr\u00fcfen, dass die beiden Bilder (bis auf kleine Ungenauigkeiten durch begrenzte Aufl\u00f6sung) identisch sind.<\/p>\n<p>Interessant ist eine Betrachtung des Helligkeitsverlaufs f\u00fcr verschiedene feste b-Werte:<\/p>\n<p><a href=\"http:\/\/photo.zakkinen.net\/wp-content\/uploads\/2015\/01\/Gamma-Kurven-PDF.png\"><img class=\"aligncenter size-full wp-image-1765\" src=\"http:\/\/photo.zakkinen.net\/wp-content\/uploads\/2015\/01\/Gamma-Kurven-PDF.png\" alt=\"Gamma-Kurven-PDF\" width=\"611\" height=\"511\" \/><\/a>Wie man sieht, ergibt sich f\u00fcr b=0,5 die Diagonale, also eine lineare \u00dcbersetzung von a in Helligkeit. W\u00e4hlt man f\u00fcr das B-Bild eine einheitliche 50% graue Fl\u00e4che, bleibt das A-Bild unver\u00e4ndert. Das kann man als Ziel f\u00fcr alle betrachteten Formeln annehmen, 50% Grau als B soll neutral sein.<\/p>\n<p>F\u00fcr b=0 ergibt sich die vereinfachte Formel:<\/p>\n<p>$latex f(a,b) = a(1-(1-a)) = {a}^{2}&amp;bg=2a2a2a&amp;fg=ffffff&amp;s=1$.<\/p>\n<p>Das ist genau die Formel f\u00fcr eine ?-Korrektur (Gamma-Korrektur) mit ?=2. Die Kurve f\u00fcr b=1 sieht der Quadratwurzelfunktion (das w\u00e4re ?=0,5) \u00e4hnlich, stimmt aber wegen der Korrektur f\u00fcr kleine a nicht damit \u00fcberein.<\/p>\n<p>Was mich interessiert ist, wie der Verlauf der Abweichung von der Diagonalen<\/p>\n<p>$latex f(a,b) = a&amp;bg=2a2a2a&amp;fg=ffffff&amp;s=1$<\/p>\n<p>f\u00fcr verschiedene b ausieht. Also zeichne ich die Kurven f\u00fcr<\/p>\n<p>$latex f(a,b) = \\left\\{ \\begin{array}{lr}(1-a)ab - a(1-a)(1-b) &amp; \\text{f\\\"ur } b &lt; {1\/2}\\\\(2b-1)(\\sqrt{a}-a) &amp; \\text{f\\\"ur } b \\geq {1\/2} \\land a &gt; {1\/4}\\\\(2b-1)(((16a-12)a+4)a-a) &amp; \\text{f\\\"ur } b \\geq {1\/2} \\land a \\leq {1\/4}\\end{array} \\right.&amp;bg=2a2a2a&amp;fg=ffffff&amp;s=1$<\/p>\n<p><a href=\"http:\/\/photo.zakkinen.net\/wp-content\/uploads\/2015\/01\/Delta-Kurven-PDF.png\"><img class=\"aligncenter size-full wp-image-1772\" src=\"http:\/\/photo.zakkinen.net\/wp-content\/uploads\/2015\/01\/Delta-Kurven-PDF.png\" alt=\"Delta-Kurven-PDF\" width=\"614\" height=\"511\" \/><\/a>Die Asymmmetrie f\u00fcr b &gt; 0,5 ist augenf\u00e4llig.<\/p>\n<h3>Varianten der Photoshop-Formel<\/h3>\n<p>Verwendet man die folgende Formel, die man auch gelegentlich als angebliche Photoshop-Formel findet, ergibt sich ein etwas anderes Bild. Hier erh\u00e4lt man f\u00fcr b=1 eine ?=0,5 Korrektur.<\/p>\n<p>$latex f(a,b) = \\left\\{ \\begin{array}{lr}(1-a)ab + a(1-(1-a)(1-b)) &amp; \\text{f\\\"ur } b &lt; {1\/2}\\\\a+(2b-1)(\\sqrt{a}-a) &amp; \\text{f\\\"ur } b \\geq {1\/2}\\end{array} \\right.&amp;bg=2a2a2a&amp;fg=ffffff&amp;s=1$<\/p>\n[caption id=\"attachment_1754\" align=\"alignnone\" width=\"300\"]<a href=\"http:\/\/photo.zakkinen.net\/wp-content\/uploads\/2015\/01\/EPS-SoftLight-2.png\"><img class=\"size-full wp-image-1754\" src=\"http:\/\/photo.zakkinen.net\/wp-content\/uploads\/2015\/01\/EPS-SoftLight-2.png\" alt=\"Ohne &quot;Korrektur&quot; f\u00fcr kleine a\" width=\"300\" height=\"300\" \/><\/a> Ohne \"Korrektur\" f\u00fcr kleine a[\/caption]\n<p>Bei genauer Betrachtung sieht man, dass die obere linke Ecke etwas heller ist.<\/p>\n<p>Die Kurven dazu sehen so aus:<\/p>\n<p><a href=\"http:\/\/photo.zakkinen.net\/wp-content\/uploads\/2015\/01\/Gamma-Kurven-PDF-2.png\"><img class=\"aligncenter size-full wp-image-1768\" src=\"http:\/\/photo.zakkinen.net\/wp-content\/uploads\/2015\/01\/Gamma-Kurven-PDF-2.png\" alt=\"Gamma-Kurven-PDF-2\" width=\"614\" height=\"507\" \/><\/a>Auch das ist nicht symmetrisch an der Diagonalen. Gleiche b-Abweichungen von 0,5 erzeugen abh\u00e4ngig von ihrer Richtung unterschiedlich starke Effekte. Das sieht man wieder deutlich nach Subtraktion von a.<\/p>\n<p><a href=\"http:\/\/photo.zakkinen.net\/wp-content\/uploads\/2015\/01\/Delta-Kurven-PDF-2.png\"><img class=\"aligncenter size-full wp-image-1773\" src=\"http:\/\/photo.zakkinen.net\/wp-content\/uploads\/2015\/01\/Delta-Kurven-PDF-2.png\" alt=\"Delta-Kurven-PDF-2\" width=\"612\" height=\"522\" \/><\/a><\/p>\n<p>Bei dieser Art der Darstellung sieht man deutlich, wie stark die Ver\u00e4nderung bei b&gt;0 f\u00fcr kleine a ausf\u00e4llt. Das k\u00f6nnte der Grund daf\u00fcr sein, dass Adobe mit der speziellen Regelung f\u00fcr kleine a ausgleicht.<\/p>\n<p>Man k\u00f6nnte jedoch auch nur den ersten Teil der Formel verwenden, also dies:<\/p>\n<p>$latex f(a,b) = (1-a)ab + a(1-(1-a)(1-b))&amp;bg=2a2a2a&amp;fg=ffffff&amp;s=1$<\/p>\n[caption id=\"attachment_1755\" align=\"alignnone\" width=\"300\"]<a href=\"http:\/\/photo.zakkinen.net\/wp-content\/uploads\/2015\/01\/EPS-SoftLight-1.png\"><img class=\"size-full wp-image-1755\" src=\"http:\/\/photo.zakkinen.net\/wp-content\/uploads\/2015\/01\/EPS-SoftLight-1.png\" alt=\"Nur der erste Teil\" width=\"300\" height=\"300\" \/><\/a> Nur der erste Teil[\/caption]\n<p>Auch ein sch\u00f6nes, sehr weiches Ergebnis, linear in b. Die Linearit\u00e4t in b sieht man auch in den Kurven:<\/p>\n<p><a href=\"http:\/\/photo.zakkinen.net\/wp-content\/uploads\/2015\/01\/Gamma-Kurven-PDF-1.png\"><img class=\"aligncenter size-full wp-image-1769\" src=\"http:\/\/photo.zakkinen.net\/wp-content\/uploads\/2015\/01\/Gamma-Kurven-PDF-1.png\" alt=\"Gamma-Kurven-PDF-1\" width=\"610\" height=\"509\" \/><\/a>Das ist zwar nicht mehr symmetrisch an der Diagonalen, aber daf\u00fcr ist der Abstand zwischen den Kurven f\u00fcr festes a immer gleich.<\/p>\n<p><a href=\"http:\/\/photo.zakkinen.net\/wp-content\/uploads\/2015\/01\/Delta-Kurven-PDF-1.png\"><img class=\"aligncenter size-full wp-image-1774\" src=\"http:\/\/photo.zakkinen.net\/wp-content\/uploads\/2015\/01\/Delta-Kurven-PDF-1.png\" alt=\"Delta-Kurven-PDF-1\" width=\"611\" height=\"509\" \/><\/a>Die Symmetrie ist gegeben, sieht erst mal sehr plausibel aus. Man erreicht f\u00fcr b=1 allerdings nicht ann\u00e4hernd ?=0,5.<\/p>\n<h2>Illusions parametrische Gamma-Korrektur<\/h2>\n<p>Einen v\u00f6llig anderen Vorschlag f\u00fcr Soft Light findet man bei <a href=\"http:\/\/illusions.hu\/\" target=\"_blank\" rel=\"noopener\">illusions.hu. <\/a>Ausgehend von der Idee der durch b steuerbaren ?-Korrektur wird verwendet:<\/p>\n<p>$latex f(a,b) = a^{2^{(1-2b)}}&amp;bg=2a2a2a&amp;fg=ffffff&amp;s=1$<\/p>\n<p>Das Verrechnungsergebnis ist ansprechend:<\/p>\n[caption id=\"attachment_1775\" align=\"alignnone\" width=\"300\"]<a href=\"http:\/\/photo.zakkinen.net\/wp-content\/uploads\/2015\/01\/EPS-SoftLight-Illusions1.png\"><img class=\"size-full wp-image-1775\" src=\"http:\/\/photo.zakkinen.net\/wp-content\/uploads\/2015\/01\/EPS-SoftLight-Illusions1.png\" alt=\"Illusions.hu Gamma-Korrektur\" width=\"300\" height=\"300\" \/><\/a> Illusions.hu Gamma-Korrektur[\/caption]\n<p>Die Kurven sehen auf den ersten Blick fast genau so aus wie die der Original-Adobe-Formel.<\/p>\n<p><a href=\"http:\/\/photo.zakkinen.net\/wp-content\/uploads\/2015\/01\/Delta-Kurven-Illusions.png\"><img class=\"aligncenter size-full wp-image-1778\" src=\"http:\/\/photo.zakkinen.net\/wp-content\/uploads\/2015\/01\/Delta-Kurven-Illusions.png\" alt=\"Delta-Kurven-Illusions\" width=\"610\" height=\"510\" \/><\/a>Bei genauerem Hinsehen sind die \u00dcberg\u00e4nge nat\u00fcrlich viel gleichm\u00e4\u00dfiger.<\/p>\n<h2>Spiegeleien<\/h2>\n<p>Ich h\u00e4tte auch noch einen Vorschlag, entstanden aus der Frage, ob der zweite Teil der Photoshop-Formel vielleicht durch Spiegelung des ersten Teils an der Diagonale hervorgegangen ist. Ist er nicht. Man erreicht diese Spiegelung durch Aufl\u00f6sen des ersten Teils nach a und Ersetzen von b durch (1-b'). Letzteres, weil die Kurve f\u00fcr b &gt; 0,5 immer der Spiegel einer mit b'=1-b sein soll.<\/p>\n<p>$latex f(a,b) = \\left\\{ \\begin{array}{lr}(1-a)ab + a(1-(1-a)(1-b)) &amp; \\text{f\\\"ur } b &lt; {1\/2}\\\\ \\frac{1-b}{1-2b}+\\sqrt{\\frac{(1-b)^2}{(2b-1)^2}+\\frac{a}{2b-1}}&amp; \\text{f\\\"ur } b \\geq {1\/2}\\end{array} \\right.&amp;bg=2a2a2a&amp;fg=ffffff&amp;s=1$<\/p>\n<p>Die Abweichungen von der Diagonalen in diesem Fall:<\/p>\n<p><a href=\"http:\/\/photo.zakkinen.net\/wp-content\/uploads\/2015\/01\/Delta-Kurven-HZ.png\"><img class=\"aligncenter size-full wp-image-1785\" src=\"http:\/\/photo.zakkinen.net\/wp-content\/uploads\/2015\/01\/Delta-Kurven-HZ.png\" alt=\"Delta-Kurven-HZ\" width=\"608\" height=\"514\" \/><\/a>Ich finde das Ergebnis auch nicht schlecht. Etwas heller im linken unteren Bereich als Illusions, weniger drastisch oben links als die Photoshop-Formel ohne den dritten Teil.<\/p>\n[caption id=\"attachment_1787\" align=\"alignnone\" width=\"300\"]<a href=\"http:\/\/photo.zakkinen.net\/wp-content\/uploads\/2015\/01\/EPS-SoftLightHZ.png\"><img class=\"size-full wp-image-1787\" src=\"http:\/\/photo.zakkinen.net\/wp-content\/uploads\/2015\/01\/EPS-SoftLightHZ.png\" alt=\"&quot;Mein&quot; Soft Light\" width=\"300\" height=\"300\" \/><\/a> \"Mein\" Soft Light[\/caption]\n<p>Zugegeben, das Ganze ist recht akademisch, da man Photoshop leider nicht so leicht neue Verrechnungsmodi beibringen kann, was ich \u00e4u\u00dferst bedauerlich finde.<\/p>\n\n<!-- wp:heading -->\n<h2>Die anderen Teile dieser Miniserie<\/h2>\n<!-- \/wp:heading -->\n\n<!-- wp:paragraph -->\n<p><a href=\"http:\/\/photo.zakkinen.net\/verrechnungsmodiphotoshop-teil-1\">Verrechnungsmodi in Photoshop \u2013 Teil 1: Multiplikation, Lineares Nachbelichten, Lineares Abwedeln und Lineares Licht<\/a><\/p>\n<!-- \/wp:paragraph -->\n\n<!-- wp:paragraph -->\n<p><a href=\"\/verrechnungsmodiphotoshop-teil-2\"><\/a><a href=\"\/verrechnungsmodiphotoshop-teil-2\">Verrechnungsmodi in Photoshop - Teil 2: Farbig Nachbelichten, Farbig Abwedeln, Negativ Multiplizieren, Ineinanderkopieren, Hartes Licht und Strahlendes Licht<\/a><\/p>\n<!-- \/wp:paragraph -->","_de_post_name":"verrechnungsmodi-in-photoshop-teil-3","_de_post_excerpt":"","_de_post_title":"Verrechnungsmodi in Photoshop - Teil 3","_en_post_content":"<h1>Soft Light<\/h1>\n<p>Soft Light is the one blend mode I read most nonsense about. Part of this may be due to the fact that vendors define the method differently, get quoted incorrectly and thus add to the confusion. Alas, I couldn't find explanations for their particular choices, so I can only show what I figured out and present my own thoughts.<!--more--><\/p>\n<h2>Photoshop<\/h2>\n<p>My Photoshop CC uses the following formula (as documented in <a title=\"PDF 1.7 Reference\" href=\"http:\/\/wwwimages.adobe.com\/content\/dam\/Adobe\/en\/devnet\/pdf\/pdfs\/PDF32000_2008.pdf\" target=\"_blank\" rel=\"noopener\">PDF Reference<\/a>):<\/p>\n<p>$latex f(a,b) = \\left\\{ \\begin{array}{lr}(1-a)ab + a(1-(1-a)(1-b)) &amp; \\text{for } b &lt; {1\/2}\\\\a+(2b-1)(\\sqrt{a}-a) &amp; \\text{f\\\"ur } b \\geq {1\/2} \\land a &gt; {1\/4}\\\\a+(2b-1)(((16a-12)a+4)a-a) &amp; \\text{for } b \\geq {1\/2} \\land a \\leq {1\/4}\\end{array} \\right.&amp;bg=2a2a2a&amp;fg=ffffff&amp;s=1$<\/p>\n<p>I was able to verify that with the help of a little Postscript script may father generously provided (thank you very much for your support, (<a title=\"Dieter Zawischa\" href=\"http:\/\/zawischa.kopflos-ev.de\/\" target=\"_blank\" rel=\"noopener\">Dieter<\/a>)). It fills a square with the result of a blend between two linear gradients using a formula only limited by your Postscript skills (reverse Polish notation). After comparing the result with Photoshop's own blend, I can assure you now that this indeed is the formula used, whatever others try to tell you. (For more details about the process see <a title=\"Photoshop Blend Modes \u2013 Part 1\" href=\"http:\/\/photo.zakkinen.net\/en\/2014\/12\/ps-blend-modes-1\/\">here<\/a>).<\/p>\n<p>The two source images:<\/p>\n<div>\n[caption id=\"attachment_1750\" align=\"alignnone\" width=\"300\"]<a href=\"http:\/\/photo.zakkinen.net\/wp-content\/uploads\/2015\/01\/EPS-A.png\"><img class=\"size-full wp-image-1750\" src=\"http:\/\/photo.zakkinen.net\/wp-content\/uploads\/2015\/01\/EPS-A.png\" alt=\"Gradient A\" width=\"300\" height=\"300\" \/><\/a> Image A - horizontal gradient[\/caption]\n[caption id=\"attachment_1751\" align=\"alignnone\" width=\"300\"]<a href=\"http:\/\/photo.zakkinen.net\/wp-content\/uploads\/2015\/01\/EPS-B.png\"><img class=\"size-full wp-image-1751\" src=\"http:\/\/photo.zakkinen.net\/wp-content\/uploads\/2015\/01\/EPS-B.png\" alt=\"Gradient B\" width=\"300\" height=\"300\" \/><\/a> Bild B - vertical gradient[\/caption]\n<\/div>\n<p>After blending using the Soft Light formula with the Postscript script:<\/p>\n[caption id=\"attachment_1752\" align=\"alignnone\" width=\"300\"]<a href=\"http:\/\/photo.zakkinen.net\/wp-content\/uploads\/2015\/01\/EPS-SoftLightPDFfull.png\"><img class=\"size-full wp-image-1752\" src=\"http:\/\/photo.zakkinen.net\/wp-content\/uploads\/2015\/01\/EPS-SoftLightPDFfull.png\" alt=\"Soft Light calculated\" width=\"300\" height=\"300\" \/><\/a> Calculated Soft Light[\/caption]\n<p>and using Photoshop's Soft Light blend mode:<\/p>\n[caption id=\"attachment_1756\" align=\"alignnone\" width=\"300\"]<a href=\"http:\/\/photo.zakkinen.net\/wp-content\/uploads\/2015\/01\/Photoshop-SoftLight.png\"><img class=\"size-full wp-image-1756\" src=\"http:\/\/photo.zakkinen.net\/wp-content\/uploads\/2015\/01\/Photoshop-SoftLight.png\" alt=\"Photoshop Soft Light\" width=\"300\" height=\"300\" \/><\/a> Photoshop Soft Light[\/caption]\n<p>By subtraction one can easily show both images are identical (but for small deviations due to limited resolution and rounding errors).<\/p>\n<p>A closer look at the brightness for fixed b-values is quite interesting:<\/p>\n<p><a href=\"http:\/\/photo.zakkinen.net\/wp-content\/uploads\/2015\/01\/Gamma-Kurven-PDF.png\"><img class=\"aligncenter size-full wp-image-1765\" src=\"http:\/\/photo.zakkinen.net\/wp-content\/uploads\/2015\/01\/Gamma-Kurven-PDF.png\" alt=\"Gamma-Curve-PDF\" width=\"611\" height=\"511\" \/><\/a>As you can see for b=0,5 you get the diagonal, i.e. a linear translation from a to brightness. Hence if you chose an evenly grey image for B (50% grey), the image A is unchanged by the blending. Actually, this is a design goal for all formulas we are looking at here, 50% grey is supposed to be neutral.<\/p>\n<p>For b=0 you get the much simpler formula:<\/p>\n<p>$latex f(a,b) = a(1-(1-a)) = {a}^{2}&amp;bg=2a2a2a&amp;fg=ffffff&amp;s=1$.<\/p>\n<p>This is nothing else but the \u03b3-correction (Gamma-correction) with \u03b3=2. The curve for b=1 looks a lot like the square root function, that would be a \u03b3-correction with \u03b3=0.5, but due to the corrective term for small a it is not identical.<\/p>\n<p>I was interested in the course of the deviation from the diagonal<\/p>\n<p>$latex f(a,b) = a&amp;bg=2a2a2a&amp;fg=ffffff&amp;s=1$<\/p>\n<p>for different values of b, as that might show me the degree of symmetry of the method. So I plotted curves for<\/p>\n<p>$latex f(a,b) = \\left\\{ \\begin{array}{lr}(1-a)ab - a(1-a)(1-b) &amp; \\text{for } b &lt; {1\/2}\\\\(2b-1)(\\sqrt{a}-a) &amp; \\text{for } b \\geq {1\/2} \\land a &gt; {1\/4}\\\\(2b-1)(((16a-12)a+4)a-a) &amp; \\text{for } b \\geq {1\/2} \\land a \\leq {1\/4}\\end{array} \\right.&amp;bg=2a2a2a&amp;fg=ffffff&amp;s=1$<\/p>\n<p><a href=\"http:\/\/photo.zakkinen.net\/wp-content\/uploads\/2015\/01\/Delta-Kurven-PDF.png\"><img class=\"aligncenter size-full wp-image-1772\" src=\"http:\/\/photo.zakkinen.net\/wp-content\/uploads\/2015\/01\/Delta-Kurven-PDF.png\" alt=\"Delta-Curve-PDF\" width=\"614\" height=\"511\" \/><\/a>The strong asymmetry for b &gt; 0,5 is striking.<\/p>\n<h3>Variations of the Soft Light formula<\/h3>\n<p>Using the following formula, also sometimes presented as the Photoshop-formula, you get a slightly different result. Here you actually get the \u03b3=0.5 correction for b=1.<\/p>\n<p>$latex f(a,b) = \\left\\{ \\begin{array}{lr}(1-a)ab + a(1-(1-a)(1-b)) &amp; \\text{for } b &lt; {1\/2}\\\\a+(2b-1)(\\sqrt{a}-a) &amp; \\text{for } b \\geq {1\/2}\\end{array} \\right.&amp;bg=2a2a2a&amp;fg=ffffff&amp;s=1$<\/p>\n[caption id=\"attachment_1754\" align=\"alignnone\" width=\"300\"]<a href=\"http:\/\/photo.zakkinen.net\/wp-content\/uploads\/2015\/01\/EPS-SoftLight-2.png\"><img class=\"size-full wp-image-1754\" src=\"http:\/\/photo.zakkinen.net\/wp-content\/uploads\/2015\/01\/EPS-SoftLight-2.png\" alt=\"Without the corrective termfor small a\" width=\"300\" height=\"300\" \/><\/a> Without the \"correction\" for small a[\/caption]\n<p>At a close look you might see that the top left corner is slightly brighter than the one from Photoshop.<\/p>\n<p>The corresponding curves look like this:<\/p>\n<p><a href=\"http:\/\/photo.zakkinen.net\/wp-content\/uploads\/2015\/01\/Gamma-Kurven-PDF-2.png\"><img class=\"aligncenter size-full wp-image-1768\" src=\"http:\/\/photo.zakkinen.net\/wp-content\/uploads\/2015\/01\/Gamma-Kurven-PDF-2.png\" alt=\"Gamma-Curve-PDF-2\" width=\"614\" height=\"507\" \/><\/a>Again no symmetry. Yes, you could mirror at the diagonal, but that is not keeping a fixed. For blending we want to know how a fixed value of a would be translated for varying b. Here identical changes in b result in more or less strong effect depending on the direction you move from b=0.5. You can see this more easily after subtaction of a.<\/p>\n<p><a href=\"http:\/\/photo.zakkinen.net\/wp-content\/uploads\/2015\/01\/Delta-Kurven-PDF-2.png\"><img class=\"aligncenter size-full wp-image-1773\" src=\"http:\/\/photo.zakkinen.net\/wp-content\/uploads\/2015\/01\/Delta-Kurven-PDF-2.png\" alt=\"Delta-Curves-PDF-2\" width=\"612\" height=\"522\" \/><\/a><\/p>\n<p>In this representation you can clearly see how strong the change of the image would be for small a. Maybe too strong for Adobe so they chose to add that corrective term?<\/p>\n<p>But then, you could only use the first part of the original formula, this one:<\/p>\n<p>$latex f(a,b) = (1-a)ab + a(1-(1-a)(1-b))&amp;bg=2a2a2a&amp;fg=ffffff&amp;s=1$<\/p>\n[caption id=\"attachment_1755\" align=\"alignnone\" width=\"300\"]<a href=\"http:\/\/photo.zakkinen.net\/wp-content\/uploads\/2015\/01\/EPS-SoftLight-1.png\"><img class=\"size-full wp-image-1755\" src=\"http:\/\/photo.zakkinen.net\/wp-content\/uploads\/2015\/01\/EPS-SoftLight-1.png\" alt=\"Just the first term\" width=\"300\" height=\"300\" \/><\/a> Just the first term[\/caption]\n<p>Also a lovely, very smooth result, linear in b. This linearity you can see in the curves as well:<\/p>\n<p><a href=\"http:\/\/photo.zakkinen.net\/wp-content\/uploads\/2015\/01\/Gamma-Kurven-PDF-1.png\"><img class=\"aligncenter size-full wp-image-1769\" src=\"http:\/\/photo.zakkinen.net\/wp-content\/uploads\/2015\/01\/Gamma-Kurven-PDF-1.png\" alt=\"Gamma-Kurven-PDF-1\" width=\"610\" height=\"509\" \/><\/a>Now you can no longer get mirror-symmetry along the diagonal, but the distance between curves for fixed a is always the same.<\/p>\n<p><a href=\"http:\/\/photo.zakkinen.net\/wp-content\/uploads\/2015\/01\/Delta-Kurven-PDF-1.png\"><img class=\"aligncenter size-full wp-image-1774\" src=\"http:\/\/photo.zakkinen.net\/wp-content\/uploads\/2015\/01\/Delta-Kurven-PDF-1.png\" alt=\"Delta-Curves-PDF-1\" width=\"611\" height=\"509\" \/><\/a>Here you see symmetry, looks very plausible, but for b=1 you miss \u03b3=0,5 by a long shot.<\/p>\n<h2>Illusions' parametric Gamma-Correction<\/h2>\n<p>A completely different approach to Soft Light you can find at <a href=\"http:\/\/illusions.hu\/\" target=\"_blank\" rel=\"noopener\">illusions.hu<\/a>. Starting from the idea of a parametric \u03b3-correction, controlled by b, they use:<\/p>\n<p>$latex f(a,b) = a^{2^{(1-2b)}}&amp;bg=2a2a2a&amp;fg=ffffff&amp;s=1$<\/p>\n<p>The result of the blend is very pleasing, at least to my eyes:<\/p>\n[caption id=\"attachment_1775\" align=\"alignnone\" width=\"300\"]<a href=\"http:\/\/photo.zakkinen.net\/wp-content\/uploads\/2015\/01\/EPS-SoftLight-Illusions1.png\"><img class=\"size-full wp-image-1775\" src=\"http:\/\/photo.zakkinen.net\/wp-content\/uploads\/2015\/01\/EPS-SoftLight-Illusions1.png\" alt=\"Illusions.hu Gamma-Correction\" width=\"300\" height=\"300\" \/><\/a> Illusions.hu Gamma-Correction[\/caption]\n<p>At first glance, the curves almost look like the ones for the original Adobe-formula:<\/p>\n<p><a href=\"http:\/\/photo.zakkinen.net\/wp-content\/uploads\/2015\/01\/Delta-Kurven-Illusions.png\"><img class=\"aligncenter size-full wp-image-1778\" src=\"http:\/\/photo.zakkinen.net\/wp-content\/uploads\/2015\/01\/Delta-Kurven-Illusions.png\" alt=\"Delta-Curves-Illusions\" width=\"610\" height=\"510\" \/><\/a>At a closer look the transitions are much smoother of course. This is not glued together from different parts, no wonder.<\/p>\n<h2>Mirror Games<\/h2>\n<p>I also have my own suggestion, a spin-off from my trying to answer the question if the second part of the Photoshop-formula might be the first mirrored at the diagonal. The answer is: it isn't. You get the formula for the mirrored curve by resolving the first part for a and replacing by with (1-b'). The latter because for b &gt; 0,5 the curve must be the mirror of one with b'=1-b.<\/p>\n<p>$latex f(a,b) = \\left\\{ \\begin{array}{lr}(1-a)ab + a(1-(1-a)(1-b)) &amp; \\text{for } b &lt; {1\/2}\\\\ \\frac{1-b}{1-2b}+\\sqrt{\\frac{(1-b)^2}{(2b-1)^2}+\\frac{a}{2b-1}}&amp; \\text{for } b \\geq {1\/2}\\end{array} \\right.&amp;bg=2a2a2a&amp;fg=ffffff&amp;s=1$<\/p>\n<p>In this case the deviations from the diagonal are:<\/p>\n<p><a href=\"http:\/\/photo.zakkinen.net\/wp-content\/uploads\/2015\/01\/Delta-Kurven-HZ.png\"><img class=\"aligncenter size-full wp-image-1785\" src=\"http:\/\/photo.zakkinen.net\/wp-content\/uploads\/2015\/01\/Delta-Kurven-HZ.png\" alt=\"Delta-Kurven-HZ\" width=\"608\" height=\"514\" \/><\/a><br \/>I find this is not bad at all. Slightly brighter bottom left than the Illusions version, less drastic top left that the reduced Photoshop-formula (the one without the corrective for small a).<\/p>\n[caption id=\"attachment_1787\" align=\"alignnone\" width=\"300\"]<a href=\"http:\/\/photo.zakkinen.net\/wp-content\/uploads\/2015\/01\/EPS-SoftLightHZ.png\"><img class=\"size-full wp-image-1787\" src=\"http:\/\/photo.zakkinen.net\/wp-content\/uploads\/2015\/01\/EPS-SoftLightHZ.png\" alt=\"&quot;My&quot; Soft Light\" width=\"300\" height=\"300\" \/><\/a> \"My\" Soft Light[\/caption]\n<p>I have to admit, the whole is pretty academic. Alas, we cannot add new blend modes to Photoshop that easily. If you can, let me know. I'd love to have the last two blend modes there.<\/p>\n\n<!-- wp:heading {\"level\":1} -->\n<h1>Other parts of this mini-series<\/h1>\n<!-- \/wp:heading -->\n\n<!-- wp:paragraph -->\n<p><a href=\"\/en\/ps-blend-modes-2\/\">Blend Modes - Part 1: Multiply, Linear Burn, Linear Dodge and Linear Light<\/a><\/p>\n<!-- \/wp:paragraph -->\n\n<!-- wp:paragraph -->\n<p><a href=\"\/en\/ps-blend-modes-3\/\"><a href=\"\/en\/ps-blend-modes-2\/\">Blend Modes - Part 2: Color Burn, Color Dodge, Screen, Overlay, Hard Light and Vivid Light<\/a><\/a><\/p>\n<!-- \/wp:paragraph -->","_en_post_name":"ps-blend-modes-3","_en_post_excerpt":"","_en_post_title":"Photoshop Blend Modes - Part 3","edit_language":"en","_jetpack_memberships_contains_paid_content":false,"footnotes":""},"categories":[448],"tags":[],"class_list":["post-1746","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-methoden"],"jetpack_featured_media_url":"https:\/\/photo.zakkinen.net\/wp-content\/uploads\/2015\/01\/Delta-Kurven-PDF-e1615455090991.png","jetpack_shortlink":"https:\/\/wp.me\/p2DYS2-sa","jetpack_likes_enabled":false,"jetpack-related-posts":[{"id":1707,"url":"https:\/\/photo.zakkinen.net\/en\/ps-blend-modes-2\/","url_meta":{"origin":1746,"position":0},"title":"Photoshop Blend Modes - Part 2","author":"zakkinen","date":"19. January 2015","format":false,"excerpt":"I already introduced the blend modes Multiplication, Linear Dodge, Linear Burn and Linear Light in the first part of the series. In this article I'll add some more that might be interesting for photographers. For one particular blend mode there is a separate third part, beause it is rather complicated\u2026","rel":"","context":"In &quot;Methods and Techniques&quot;","block_context":{"text":"Methods and Techniques","link":"https:\/\/photo.zakkinen.net\/en\/category\/methods\/"},"img":{"alt_text":"Farbig Nachbelichten","src":"https:\/\/i0.wp.com\/photo.zakkinen.net\/wp-content\/uploads\/2015\/01\/EPS-ColorBurn.png?resize=350%2C200","width":350,"height":200},"classes":[]},{"id":1655,"url":"https:\/\/photo.zakkinen.net\/en\/ps-blend-modes-1\/","url_meta":{"origin":1746,"position":1},"title":"Photoshop Blend Modes - Part 1","author":"zakkinen","date":"31. December 2014","format":false,"excerpt":"K\u00fcrzlich habe ich mich mit der Methode der Frequenztrennung (frequency separation) zur Retusche besch\u00e4ftigt. Bevor ich mir die Methode verst\u00e4ndlich machen konnte, musste ich mich erst mal mit den Verrechnungsmodi (Blend Modes) in Photoshop vertraut machen. Dazu gibt es eine Menge zu finden und zu sagen. Ich will einfach anfangen\u2026","rel":"","context":"In &quot;Methods and Techniques&quot;","block_context":{"text":"Methods and Techniques","link":"https:\/\/photo.zakkinen.net\/en\/category\/methods\/"},"img":{"alt_text":"Gradient-horizontal","src":"https:\/\/i0.wp.com\/photo.zakkinen.net\/wp-content\/uploads\/2014\/12\/Gradient-horizontal1.png?resize=350%2C200","width":350,"height":200},"classes":[]},{"id":1725,"url":"https:\/\/photo.zakkinen.net\/en\/frequency-separation\/","url_meta":{"origin":1746,"position":2},"title":"Frequency Separation","author":"zakkinen","date":"31. December 2014","format":false,"excerpt":"K\u00fcrzlich habe ich mich mit der Methode der Frequenztrennung zur Retusche besch\u00e4ftigt. Bei den Fstoppers habe ich einen einen interessanten Artikel dazu gefunden, der mich aber mit Fragen zur\u00fcckgelassen hat. Eine war: warum ist Lineares Licht die richtige Verrechnungsmethode f\u00fcr die beiden Ebenen? Und direkt im Anschluss die Fragen, wo\u2026","rel":"","context":"In &quot;Methods and Techniques&quot;","block_context":{"text":"Methods and Techniques","link":"https:\/\/photo.zakkinen.net\/en\/category\/methods\/"},"img":{"alt_text":"","src":"https:\/\/i0.wp.com\/photo.zakkinen.net\/wp-content\/uploads\/2014\/12\/Skin-Demo-Final.png?resize=350%2C200&ssl=1","width":350,"height":200},"classes":[]},{"id":1172,"url":"https:\/\/photo.zakkinen.net\/en\/korrektur-von-kontrast-und-farbstich-mit-gradationskurven\/","url_meta":{"origin":1746,"position":3},"title":"Korrektur von Kontrast und Farbstich mit Gradationskurven","author":"zakkinen","date":"29. December 2013","format":false,"excerpt":"Ich lese gerade ein Buch von Vincent Versace namens Welcome to Oz 2.0. Schon das erste Kapitel hat mich m\u00e4chtig zum Gr\u00fcbeln gebracht. Ich mag seinen Ansatz, das sorgf\u00e4ltige Vorgehen. Er macht erst einen Plan, stellt sich die Frage, warum er etwas tut, was er erreichen will, bevor er den\u2026","rel":"","context":"In &quot;Methods and Techniques&quot;","block_context":{"text":"Methods and Techniques","link":"https:\/\/photo.zakkinen.net\/en\/category\/methods\/"},"img":{"alt_text":"Meine Aufgabenstellung","src":"https:\/\/i0.wp.com\/photo.zakkinen.net\/wp-content\/uploads\/2013\/12\/Fehlfarben-1.jpg?resize=350%2C200","width":350,"height":200,"srcset":"https:\/\/i0.wp.com\/photo.zakkinen.net\/wp-content\/uploads\/2013\/12\/Fehlfarben-1.jpg?resize=350%2C200 1x, https:\/\/i0.wp.com\/photo.zakkinen.net\/wp-content\/uploads\/2013\/12\/Fehlfarben-1.jpg?resize=525%2C300 1.5x, https:\/\/i0.wp.com\/photo.zakkinen.net\/wp-content\/uploads\/2013\/12\/Fehlfarben-1.jpg?resize=700%2C400 2x"},"classes":[]},{"id":1970,"url":"https:\/\/photo.zakkinen.net\/en\/englisches-lightroom-mit-deutscher-tastatur\/","url_meta":{"origin":1746,"position":4},"title":"Englisches Lightroom mit deutscher Tastatur","author":"zakkinen","date":"11. October 2015","format":false,"excerpt":"Mit einem einfachen Trick eine deutsche Tastaturbelegung mit englischem Lightroom benutzen. Die Herausforderung Weil ich bevorzugt englischsprachige Fotoseiten lese und auch eine Menge Foto-Lehrb\u00fccher in dieser Sprache besitze, bevorzuge ich ein englisches Lightroom. So spare ich mir die Suche nach der deutschen Bezeichnung f\u00fcr einen Begriff, der z. B. in\u2026","rel":"","context":"In &quot;Tools&quot;","block_context":{"text":"Tools","link":"https:\/\/photo.zakkinen.net\/en\/category\/tools\/"},"img":{"alt_text":"US Tastaturlayout","src":"https:\/\/i0.wp.com\/photo.zakkinen.net\/wp-content\/uploads\/2015\/10\/900px-KB_United_States-NoAltGr.svg_.png?resize=350%2C200","width":350,"height":200,"srcset":"https:\/\/i0.wp.com\/photo.zakkinen.net\/wp-content\/uploads\/2015\/10\/900px-KB_United_States-NoAltGr.svg_.png?resize=350%2C200 1x, https:\/\/i0.wp.com\/photo.zakkinen.net\/wp-content\/uploads\/2015\/10\/900px-KB_United_States-NoAltGr.svg_.png?resize=525%2C300 1.5x, https:\/\/i0.wp.com\/photo.zakkinen.net\/wp-content\/uploads\/2015\/10\/900px-KB_United_States-NoAltGr.svg_.png?resize=700%2C400 2x"},"classes":[]},{"id":2516,"url":"https:\/\/photo.zakkinen.net\/en\/insektenmakros\/","url_meta":{"origin":1746,"position":5},"title":"Macros of Insects","author":"zakkinen","date":"4. September 2016","format":false,"excerpt":"Seit einiger Zeit versuche ich mich an Makros kleiner Insekten. Im Moment verwende ich ein Sigma MACRO 105mm F2.8 DG mit Kenko Zwischenringen, meist mit einem 20 mm Ring, an meiner Canon EOS R. Noch bin ich ziemlich am Anfang, aber es kristallisieren sich ein paar Erkenntnisse heraus. Es gibt\u2026","rel":"","context":"In &quot;Techniques&quot;","block_context":{"text":"Techniques","link":"https:\/\/photo.zakkinen.net\/en\/category\/techniken\/"},"img":{"alt_text":"Marienk\u00e4fer Nahaufnahme","src":"https:\/\/i0.wp.com\/photo.zakkinen.net\/wp-content\/uploads\/2017\/05\/IMG_2036.jpg?resize=350%2C200&ssl=1","width":350,"height":200,"srcset":"https:\/\/i0.wp.com\/photo.zakkinen.net\/wp-content\/uploads\/2017\/05\/IMG_2036.jpg?resize=350%2C200&ssl=1 1x, https:\/\/i0.wp.com\/photo.zakkinen.net\/wp-content\/uploads\/2017\/05\/IMG_2036.jpg?resize=525%2C300&ssl=1 1.5x, https:\/\/i0.wp.com\/photo.zakkinen.net\/wp-content\/uploads\/2017\/05\/IMG_2036.jpg?resize=700%2C400&ssl=1 2x, https:\/\/i0.wp.com\/photo.zakkinen.net\/wp-content\/uploads\/2017\/05\/IMG_2036.jpg?resize=1050%2C600&ssl=1 3x, https:\/\/i0.wp.com\/photo.zakkinen.net\/wp-content\/uploads\/2017\/05\/IMG_2036.jpg?resize=1400%2C800&ssl=1 4x"},"classes":[]}],"jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/photo.zakkinen.net\/en\/wp-json\/wp\/v2\/posts\/1746","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/photo.zakkinen.net\/en\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/photo.zakkinen.net\/en\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/photo.zakkinen.net\/en\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/photo.zakkinen.net\/en\/wp-json\/wp\/v2\/comments?post=1746"}],"version-history":[{"count":60,"href":"https:\/\/photo.zakkinen.net\/en\/wp-json\/wp\/v2\/posts\/1746\/revisions"}],"predecessor-version":[{"id":6195,"href":"https:\/\/photo.zakkinen.net\/en\/wp-json\/wp\/v2\/posts\/1746\/revisions\/6195"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/photo.zakkinen.net\/en\/wp-json\/wp\/v2\/media\/1772"}],"wp:attachment":[{"href":"https:\/\/photo.zakkinen.net\/en\/wp-json\/wp\/v2\/media?parent=1746"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/photo.zakkinen.net\/en\/wp-json\/wp\/v2\/categories?post=1746"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/photo.zakkinen.net\/en\/wp-json\/wp\/v2\/tags?post=1746"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}