Repository URL to install this package:
|
Version:
2.2.7 ▾
|
cdocutils.nodes
document
q)q}q(U nametypesq}q(X
bloom nodeqNX net.sf.cimg.cimgbloomqX descriptionqNX controlsq NX inputsq
NuUsubstitution_defsq}qX
pluginIconq
cdocutils.nodes
substitution_definition
q)q}q(U rawsourceqXB .. |pluginIcon| image:: net.sf.cimg.CImgBloom.png
:width: 10.0%qUparentqcdocutils.nodes
section
q)q}q(hU hh)q}q(hU hhUsourceqXb /root/natron-support/buildmaster/tmp/Natron/Documentation/source/plugins/net.sf.cimg.CImgBloom.rstqUexpect_referenced_by_nameq}qhcdocutils.nodes
target
q)q}q(hX .. _net.sf.cimg.CImgBloom:q hhhhUtagnameq!Utargetq"U
attributesq#}q$(Uidsq%]q&Ubackrefsq']q(Udupnamesq)]q*Uclassesq+]q,Unamesq-]q.Urefidq/Unet-sf-cimg-cimgbloomq0uUlineq1KUdocumentq2hUchildrenq3]q4ubsh!Usectionq5h#}q6(h)]q7h+]q8h']q9h%]q:(U
bloom-nodeq;h0eh-]q<(hheuh1Kh2hUexpect_referenced_by_idq=}q>h0hsh3]q?(cdocutils.nodes
title
q@)qA}qB(hX
Bloom nodeqChhhhh!UtitleqDh#}qE(h)]qFh+]qGh']qHh%]qIh-]qJuh1Kh2hh3]qKcdocutils.nodes
Text
qLX
Bloom nodeqM
qN}qO(hhChhAubaubcdocutils.nodes
paragraph
qP)qQ}qR(hX |pluginIcon|qShhhhh!U paragraphqTh#}qU(h)]qVh+]qWh']qXh%]qYh-]qZuh1Kh2hh3]q[cdocutils.nodes
image
q\)q]}q^(hX2 image:: net.sf.cimg.CImgBloom.png
:width: 10.0%q_hhQhNh!Uimageq`h#}qa(UwidthqbX 10.0%qcUuriqdX! plugins/net.sf.cimg.CImgBloom.pngqeh%]qfh']qgh)]qhh+]qiU
candidatesqj}qkU*hesh-]qlUaltqmX
pluginIconqnuh1Nh2hh3]qoubaubhP)qp}qq(hX1 *This documentation is for version 4.0 of Bloom.*qrhhhhh!hTh#}qs(h)]qth+]quh']qvh%]qwh-]qxuh1Kh2hh3]qycdocutils.nodes
emphasis
qz)q{}q|(hhrh#}q}(h)]q~h+]qh']qh%]qh-]quhhph3]qhLX/ This documentation is for version 4.0 of Bloom.q
q
}q(hU hh{ubah!Uemphasisqubaubh)q}q(hU hhhhh!h5h#}q(h)]qh+]qh']qh%]qUdescriptionqah-]qhauh1Kh2hh3]q(h@)q}q(hX Descriptionqhhhhh!hDh#}q(h)]qh+]qh']qh%]qh-]quh1Kh2hh3]qhLX Descriptionq
q}q(hhhhubaubhP)q}q (hXV Apply a Bloom filter (Kawase 2004) that sums multiple blur filters of different radii,q¡hhhhh!hTh#}q¢(h)]q£h+]q¤h']q¥h%]q¦h-]q§uh1K
h2hh3]q¨hLXV Apply a Bloom filter (Kawase 2004) that sums multiple blur filters of different radii,q©
qª}q«(hh¡hhubaubhP)q¬}q(hX; resulting in a larger but sharper glare than a simple blur.q®hhhhh!hTh#}q¯(h)]q°h+]q±h']q²h%]q³h-]q´uh1Kh2hh3]qµhLX; resulting in a larger but sharper glare than a simple blur.q¶
q·}q¸(hh®hh¬ubaubhP)q¹}qº(hX§ It is similar to applying 'Count' separate Blur filters to the same input image with sizes 'Size', 'Size'\*'Ratio', 'Size'\*'Ratio'^2, etc., and averaging the results.q»hhhhh!hTh#}q¼(h)]q½h+]q¾h']q¿h%]qÀh-]qÁuh1Kh2hh3]qÂhLX¥ It is similar to applying 'Count' separate Blur filters to the same input image with sizes 'Size', 'Size'*'Ratio', 'Size'*'Ratio'^2, etc., and averaging the results.qÅqÄ}qÅ(hX§ It is similar to applying 'Count' separate Blur filters to the same input image with sizes 'Size', 'Size'\*'Ratio', 'Size'\*'Ratio'^2, etc., and averaging the results.qÆhh¹ubaubhP)qÇ}qÈ(hX The blur radii follow a geometric progression (of common ratio 2 in the original implementation, bloomRatio in this implementation), and a total of bloomCount blur kernels are summed up (bloomCount=5 in the original implementation, and the kernels are Gaussian).qÉhhhhh!hTh#}qÊ(h)]qËh+]qÌh']qÍh%]qÎh-]qÏuh1Kh2hh3]qÐhLX The blur radii follow a geometric progression (of common ratio 2 in the original implementation, bloomRatio in this implementation), and a total of bloomCount blur kernels are summed up (bloomCount=5 in the original implementation, and the kernels are Gaussian).qхqÒ}qÓ(hhÉhhÇubaubhP)qÔ}qÕ(hX] The blur filter can be a quasi-Gaussian, a Gaussian, a box, a triangle or a quadratic filter.qÖhhhhh!hTh#}q×(h)]qØh+]qÙh']qÚh%]qÛh-]qÜuh1Kh2hh3]qÝhLX] The blur filter can be a quasi-Gaussian, a Gaussian, a box, a triangle or a quadratic filter.qޅqß}qà(hhÖhhÔubaubhP)qá}qâ(hXZ Ref.: Masaki Kawase, "Practical Implementation of High Dynamic Range Rendering", GDC 2004.qãhhhhh!hTh#}qä(h)]qåh+]qæh']qçh%]qèh-]qéuh1Kh2hh3]qêhLXZ Ref.: Masaki Kawase, "Practical Implementation of High Dynamic Range Rendering", GDC 2004.q녁qì}qí(hhãhháubaubhP)qî}qï(hXB Uses the 'vanvliet' and 'deriche' functions from the CImg library.qðhhhhh!hTh#}qñ(h)]qòh+]qóh']qôh%]qõh-]qöuh1Kh2hh3]q÷hLXB Uses the 'vanvliet' and 'deriche' functions from the CImg library.qø
qù}qú(hhðhhîubaubhP)qû}qü(hXÌ CImg is a free, open-source library distributed under the CeCILL-C (close to the GNU LGPL) or CeCILL (compatible with the GNU GPL) licenses. It can be used in commercial applications (see http://cimg.eu).qýhhhhh!hTh#}qþ(h)]qÿh+]r h']r h%]r h-]r uh1Kh2hh3]r (hLX¼ CImg is a free, open-source library distributed under the CeCILL-C (close to the GNU LGPL) or CeCILL (compatible with the GNU GPL) licenses. It can be used in commercial applications (see r
r }r (hX¼ CImg is a free, open-source library distributed under the CeCILL-C (close to the GNU LGPL) or CeCILL (compatible with the GNU GPL) licenses. It can be used in commercial applications (see r hhûubcdocutils.nodes
reference
r )r
}r (hX http://cimg.eur h#}r
(Urefurir X http://cimg.eur h%]r h']r h)]r h+]r h-]r uhhûh3]r hLX http://cimg.eur
r }r (hU hj
ubah!U referencer ubhLX ).r
r }r (hX ).r hhûubeubeubh)r }r (hU hhhhh!h5h#}r (h)]r! h+]r" h']r# h%]r$ Uinputsr% ah-]r& h
auh1Kh2hh3]r' (h@)r( }r) (hX Inputsr* hj hhh!hDh#}r+ (h)]r, h+]r- h']r. h%]r/ h-]r0 uh1Kh2hh3]r1 hLX Inputsr2
r3 }r4 (hj* hj( ubaubcdocutils.nodes
table
r5 )r6 }r7 (hU hj hhh!Utabler8 h#}r9 (h)]r: h+]r; h']r< h%]r= h-]r> uh1Nh2hh3]r? cdocutils.nodes
tgroup
r@ )rA }rB (hU h#}rC (h%]rD h']rE h)]rF h+]rG h-]rH UcolsrI Kuhj6 h3]rJ (cdocutils.nodes
colspec
rK )rL }rM (hU h#}rN (h%]rO h']rP h)]rQ h+]rR h-]rS UcolwidthrT K
uhjA h3]rU h!UcolspecrV ubjK )rW }rX (hU h#}rY (h%]rZ h']r[ h)]r\ h+]r] h-]r^ Ucolwidthr_ KuhjA h3]r` h!jV ubjK )ra }rb (hU h#}rc (h%]rd h']re h)]rf h+]rg h-]rh Ucolwidthri KuhjA h3]rj h!jV ubcdocutils.nodes
thead
rk )rl }rm (hU h#}rn (h)]ro h+]rp h']rq h%]rr h-]rs uhjA h3]rt cdocutils.nodes
row
ru )rv }rw (hU h#}rx (h)]ry h+]rz h']r{ h%]r| h-]r} uhjl h3]r~ (cdocutils.nodes
entry
r )r }r (hU h#}r (h)]r h+]r h']r
h%]r h-]r uhjv h3]r hP)r }r (hX Inputr hj hhh!hTh#}r (h)]r h+]r h']r h%]r h-]r uh1K!h3]r hLX Inputr
r }r (hj hj ubaubah!Uentryr ubj )r }r (hU h#}r (h)]r h+]r h']r h%]r h-]r uhjv h3]r hP)r }r¡ (hX Descriptionr¢ hj hhh!hTh#}r£ (h)]r¤ h+]r¥ h']r¦ h%]r§ h-]r¨ uh1K!h3]r© hLX Descriptionrª
r« }r¬ (hj¢ hj ubaubah!j ubj )r }r® (hU h#}r¯ (h)]r° h+]r± h']r² h%]r³ h-]r´ uhjv h3]rµ hP)r¶ }r· (hX Optionalr¸ hj hhh!hTh#}r¹ (h)]rº h+]r» h']r¼ h%]r½ h-]r¾ uh1K!h3]r¿ hLX OptionalrÀ
rÁ }r (hj¸ hj¶ ubaubah!j ubeh!Urowrà ubah!UtheadrÄ ubcdocutils.nodes
tbody
rÅ )rÆ }rÇ (hU h#}rÈ (h)]rÉ h+]rÊ h']rË h%]rÌ h-]rÍ uhjA h3]rÎ (ju )rÏ }rÐ (hU h#}rÑ (h)]rÒ h+]rÓ h']rÔ h%]rÕ h-]rÖ uhjÆ h3]r× (j )rØ }rÙ (hU h#}rÚ (h)]rÛ h+]rÜ h']rÝ h%]rÞ h-]rß uhjÏ h3]rà hP)rá }râ (hX Sourcerã hjØ hhh!hTh#}rä (h)]rå h+]ræ h']rç h%]rè h-]ré uh1K#h3]rê hLX Sourcerë
rì }rí (hjã hjá ubaubah!j ubj )rî }rï (hU h#}rð (h)]rñ h+]rò h']ró h%]rô h-]rõ uhjÏ h3]rö h!j ubj )r÷ }rø (hU h#}rù (h)]rú h+]rû h']rü h%]rý h-]rþ uhjÏ h3]rÿ hP)r }r (hX Nor hj÷ hhh!hTh#}r (h)]r h+]r h']r h%]r h-]r uh1K#h3]r hLX Nor
r }r (hj hj ubaubah!j ubeh!jà ubju )r
}r (hU h#}r (h)]r h+]r h']r h%]r h-]r uhjÆ h3]r (j )r }r (hU h#}r (h)]r h+]r h']r h%]r h-]r uhj
h3]r hP)r }r (hX Maskr! hj hhh!hTh#}r" (h)]r# h+]r$ h']r% h%]r& h-]r' uh1K%h3]r( hLX Maskr)
r* }r+ (hj! hj ubaubah!j ubj )r, }r- (hU h#}r. (h)]r/ h+]r0 h']r1 h%]r2 h-]r3 uhj
h3]r4 h!j ubj )r5 }r6 (hU h#}r7 (h)]r8 h+]r9 h']r: h%]r; h-]r< uhj
h3]r= hP)r> }r? (hX Yesr@ hj5 hhh!hTh#}rA (h)]rB h+]rC h']rD h%]rE h-]rF uh1K%h3]rG hLX YesrH
rI }rJ (hj@ hj> ubaubah!j ubeh!jà ubeh!UtbodyrK ubeh!UtgrouprL ubaubeubheubhhh!h5h#}rM (h)]rN h+]rO h']rP h%]rQ UcontrolsrR ah-]rS h auh1K)h2hh3]rT (h@)rU }rV (hX ControlsrW hhhhh!hDh#}rX (h)]rY h+]rZ h']r[ h%]r\ h-]r] uh1K)h2hh3]r^ hLX Controlsr_
r` }ra (hjW hjU ubaubcsphinx.addnodes
tabular_col_spec
rb )rc }rd (hU hhhhh!Utabular_col_specre h#}rf (h%]rg h']rh h)]ri h+]rj h-]rk Uspecrl X} |>{\raggedright}p{0.2\columnwidth}|>{\raggedright}p{0.06\columnwidth}|>{\raggedright}p{0.07\columnwidth}|p{0.63\columnwidth}|rm uh1K+h2hh3]rn ubj5 )ro }rp (hU hhhhh!j8 h#}rq (h)]rr h+]rs U longtablert ah']ru h%]rv h-]rw uh1Nh2hh3]rx j@ )ry }rz (hU h#}r{ (h%]r| h']r} h)]r~ h+]r h-]r Ucolsr Kuhjo h3]r (jK )r }r (hU h#}r
(h%]r h']r h)]r h+]r h-]r Ucolwidthr K(uhjy h3]r h!jV ubjK )r }r (hU h#}r (h%]r h']r h)]r h+]r h-]r Ucolwidthr Kuhjy h3]r h!jV ubjK )r }r (hU h#}r (h%]r h']r h)]r h+]r h-]r Ucolwidthr Kuhjy h3]r h!jV ubjK )r¡ }r¢ (hU h#}r£ (h%]r¤ h']r¥ h)]r¦ h+]r§ h-]r¨ Ucolwidthr© MQuhjy h3]rª h!jV ubjk )r« }r¬ (hU h#}r (h)]r® h+]r¯ h']r° h%]r± h-]r² uhjy h3]r³ ju )r´ }rµ (hU h#}r¶ (h)]r· h+]r¸ h']r¹ h%]rº h-]r» uhj« h3]r¼ (j )r½ }r¾ (hU h#}r¿ (h)]rÀ h+]rÁ h']r h%]rà h-]rÄ uhj´ h3]rÅ hP)rÆ }rÇ (hX Parameter / script namerÈ hj½ hhh!hTh#}rÉ (h)]rÊ h+]rË h']rÌ h%]rÍ h-]rÎ uh1K0h3]rÏ hLX Parameter / script namerÐ
rÑ }rÒ (hjÈ hjÆ ubaubah!j ubj )rÓ }rÔ (hU h#}rÕ (h)]rÖ h+]r× h']rØ h%]rÙ h-]rÚ uhj´ h3]rÛ hP)rÜ }rÝ (hX TyperÞ hjÓ hhh!hTh#}rß (h)]rà h+]rá h']râ h%]rã h-]rä uh1K0h3]rå hLX Typeræ
rç }rè (hjÞ hjÜ ubaubah!j ubj )ré }rê (hU h#}rë (h)]rì h+]rí h']rî h%]rï h-]rð uhj´ h3]rñ hP)rò }ró (hX Defaultrô hjé hhh!hTh#}rõ (h)]rö h+]r÷ h']rø h%]rù h-]rú uh1K0h3]rû hLX Defaultrü
rý }rþ (hjô hjò ubaubah!j ubj )rÿ }r (hU h#}r (h)]r h+]r h']r h%]r h-]r uhj´ h3]r hP)r }r (hX Functionr
hjÿ hhh!hTh#}r (h)]r h+]r
h']r h%]r h-]r uh1K0h3]r hLX Functionr
r }r (hj
hj ubaubah!j ubeh!jà ubah!jÄ ubjÅ )r }r (hU h#}r (h)]r h+]r h']r h%]r h-]r uhjy h3]r (ju )r }r (hU h#}r (h)]r! h+]r" h']r# h%]r$ h-]r% uhj h3]r& (j )r' }r( (hU h#}r) (h)]r* h+]r+ h']r, h%]r- h-]r. uhj h3]r/ hP)r0 }r1 (hX Size / ``size``r2 hj' hhh!hTh#}r3 (h)]r4 h+]r5 h']r6 h%]r7 h-]r8 uh1K2h3]r9 (hLX Size / r:
r; }r< (hX Size / r= hj0 ubcdocutils.nodes
literal
r> )r? }r@ (hX ``size``rA h#}rB (h)]rC h+]rD h']rE h%]rF h-]rG uhj0 h3]rH hLX sizerI
rJ }rK (hU hj? ubah!UliteralrL ubeubah!j ubj )rM }rN (hU h#}rO (h)]rP h+]rQ h']rR h%]rS h-]rT uhj h3]rU hP)rV }rW (hX DoublerX hjM hhh!hTh#}rY (h)]rZ h+]r[ h']r\ h%]r] h-]r^ uh1K2h3]r_ hLX Doubler`
ra }rb (hjX hjV ubaubah!j ubj )rc }rd (hU h#}re (h)]rf h+]rg h']rh h%]ri h-]rj uhj h3]rk hP)rl }rm (hX x: 0 y: 0rn hjc hhh!hTh#}ro (h)]rp h+]rq h']rr h%]rs h-]rt uh1K2h3]ru hLX x: 0 y: 0rv
rw }rx (hjn hjl ubaubah!j ubj )ry }rz (hU h#}r{ (h)]r| h+]r} h']r~ h%]r h-]r uhj h3]r hP)r }r (hX¡ Size (diameter) of the filter kernel, in pixel units (>=0). The standard deviation of the corresponding Gaussian is size/2.4. No filter is applied if size < 1.2.r hjy hhh!hTh#}r
(h)]r h+]r h']r h%]r h-]r uh1K2h3]r hLX¡ Size (diameter) of the filter kernel, in pixel units (>=0). The standard deviation of the corresponding Gaussian is size/2.4. No filter is applied if size < 1.2.r
r }r (hj hj ubaubah!j ubeh!jà ubju )r }r (hU h#}r (h)]r h+]r h']r h%]r h-]r uhj h3]r (j )r }r (hU h#}r (h)]r h+]r h']r h%]r h-]r uhj h3]r hP)r¡ }r¢ (hX Uniform / ``uniform``r£ hj hhh!hTh#}r¤ (h)]r¥ h+]r¦ h']r§ h%]r¨ h-]r© uh1K4h3]rª (hLX
Uniform / r«
r¬ }r (hX
Uniform / r® hj¡ ubj> )r¯ }r° (hX ``uniform``r± h#}r² (h)]r³ h+]r´ h']rµ h%]r¶ h-]r· uhj¡ h3]r¸ hLX uniformr¹
rº }r» (hU hj¯ ubah!jL ubeubah!j ubj )r¼ }r½ (hU h#}r¾ (h)]r¿ h+]rÀ h']rÁ h%]r h-]rà uhj h3]rÄ hP)rÅ }rÆ (hX BooleanrÇ hj¼ hhh!hTh#}rÈ (h)]rÉ h+]rÊ h']rË h%]rÌ h-]rÍ uh1K4h3]rÎ hLX BooleanrÏ
rÐ }rÑ (hjÇ hjÅ ubaubah!j ubj )rÒ }rÓ (hU h#}rÔ (h)]rÕ h+]rÖ h']r× h%]rØ h-]rÙ uhj h3]rÚ hP)rÛ }rÜ (hX OffrÝ hjÒ hhh!hTh#}rÞ (h)]rß h+]rà h']rá h%]râ h-]rã uh1K4h3]rä hLX Offrå
ræ }rç (hjÝ hjÛ ubaubah!j ubj )rè }ré (hU h#}rê (h)]rë h+]rì h']rí h%]rî h-]rï uhj h3]rð hP)rñ }rò (hX) Apply the same amount of blur on X and Y.ró hjè hhh!hTh#}rô (h)]rõ h+]rö h']r÷ h%]rø h-]rù uh1K4h3]rú hLX) Apply the same amount of blur on X and Y.rû
rü }rý (hjó hjñ ubaubah!j ubeh!jà ubju )rþ }rÿ (hU h#}r (h)]r h+]r h']r h%]r h-]r uhj h3]r (j )r }r (hU h#}r (h)]r
h+]r h']r h%]r
h-]r uhjþ h3]r hP)r }r (hX Ratio / ``bloomRatio``r hj hhh!hTh#}r (h)]r h+]r h']r h%]r h-]r uh1K6h3]r (hLX Ratio / r
r }r (hX Ratio / r hj ubj> )r }r (hX ``bloomRatio``r h#}r! (h)]r" h+]r# h']r$ h%]r% h-]r& uhj h3]r' hLX
bloomRatior(
r) }r* (hU hj ubah!jL ubeubah!j ubj )r+ }r, (hU h#}r- (h)]r. h+]r/ h']r0 h%]r1 h-]r2 uhjþ h3]r3 hP)r4 }r5 (hX Doubler6 hj+ hhh!hTh#}r7 (h)]r8 h+]r9 h']r: h%]r; h-]r< uh1K6h3]r= hLX Doubler>
r? }r@ (hj6 hj4 ubaubah!j ubj )rA }rB (hU h#}rC (h)]rD h+]rE h']rF h%]rG h-]rH uhjþ h3]rI hP)rJ }rK (hX 2hjA hhh!hTh#}rL (h)]rM h+]rN h']rO h%]rP h-]rQ uh1K6h3]rR hLX 2
rS }rT (hX 2hjJ ubaubah!j ubj )rU }rV (hU h#}rW (h)]rX h+]rY h']rZ h%]r[ h-]r\ uhjþ h3]r] hP)r^ }r_ (hXÝ Ratio between successive kernel sizes of the bloom filter. A ratio of 1 gives no Bloom effect, just the original blur. A higher ratio gives a blur kernel with a heavier tail. The original implementation uses a value of 2.r` hjU hhh!hTh#}ra (h)]rb h+]rc h']rd h%]re h-]rf uh1K6h3]rg hLXÝ Ratio between successive kernel sizes of the bloom filter. A ratio of 1 gives no Bloom effect, just the original blur. A higher ratio gives a blur kernel with a heavier tail. The original implementation uses a value of 2.rh
ri }rj (hj` hj^ ubaubah!j ubeh!jà ubju )rk }rl (hU h#}rm (h)]rn h+]ro h']rp h%]rq h-]rr uhj h3]rs (j )rt }ru (hU h#}rv (h)]rw h+]rx h']ry h%]rz h-]r{ uhjk h3]r| hP)r} }r~ (hX Count / ``bloomCount``r hjt hhh!hTh#}r (h)]r h+]r h']r h%]r h-]r
uh1K8h3]r (hLX Count / r
r }r (hX Count / r hj} ubj> )r }r (hX ``bloomCount``r h#}r (h)]r h+]r h']r h%]r h-]r uhj} h3]r hLX
bloomCountr
r }r (hU hj ubah!jL ubeubah!j ubj )r }r (hU h#}r (h)]r h+]r h']r h%]r h-]r uhjk h3]r hP)r¡ }r¢ (hX Integerr£ hj hhh!hTh#}r¤ (h)]r¥ h+]r¦ h']r§ h%]r¨ h-]r© uh1K8h3]rª hLX Integerr«
r¬ }r (hj£ hj¡ ubaubah!j ubj )r® }r¯ (hU h#}r° (h)]r± h+]r² h']r³ h%]r´ h-]rµ uhjk h3]r¶ hP)r· }r¸ (hX 5hj® hhh!hTh#}r¹ (h)]rº h+]r» h']r¼ h%]r½ h-]r¾ uh1K8h3]r¿ hLX 5
rÀ }rÁ (hX 5hj· ubaubah!j ubj )r }rà (hU h#}rÄ (h)]rÅ h+]rÆ h']rÇ h%]rÈ h-]rÉ uhjk h3]rÊ hP)rË }rÌ (hXï Number of blur kernels of the bloom filter. The original implementation uses a value of 5. Higher values give a wider of heavier tail (the size of the largest blur kernel is 2\*\*bloomCount \* size). A count of 1 is just the original blur.rÍ hj hhh!hTh#}rÎ (h)]rÏ h+]rÐ h']rÑ h%]rÒ h-]rÓ uh1K8h3]rÔ hLXì Number of blur kernels of the bloom filter. The original implementation uses a value of 5. Higher values give a wider of heavier tail (the size of the largest blur kernel is 2**bloomCount * size). A count of 1 is just the original blur.rÕ
rÖ }r× (hXï Number of blur kernels of the bloom filter. The original implementation uses a value of 5. Higher values give a wider of heavier tail (the size of the largest blur kernel is 2\*\*bloomCount \* size). A count of 1 is just the original blur.rØ hjË ubaubah!j ubeh!jà ubju )rÙ }rÚ (hU h#}rÛ (h)]rÜ h+]rÝ h']rÞ h%]rß h-]rà uhj h3]rá (j )râ }rã (hU h#}rä (h)]rå h+]ræ h']rç h%]rè h-]ré uhjÙ h3]rê hP)rë }rì (hX Border Conditions / ``boundary``rí hjâ hhh!hTh#}rî (h)]rï h+]rð h']rñ h%]rò h-]ró uh1K:h3]rô (hLX Border Conditions / rõ
rö }r÷ (hX Border Conditions / rø hjë ubj> )rù }rú (hX ``boundary``rû h#}rü (h)]rý h+]rþ h']rÿ h%]r h-]r uhjë h3]r hLX boundaryr
r }r (hU hjù ubah!jL ubeubah!j ubj )r }r (hU h#}r (h)]r h+]r
h']r h%]r h-]r
uhjÙ h3]r hP)r }r (hX Choicer hj hhh!hTh#}r (h)]r h+]r h']r h%]r h-]r uh1K:h3]r hLX Choicer
r }r (hj hj ubaubah!j ubj )r }r (hU h#}r (h)]r h+]r h']r! h%]r" h-]r# uhjÙ h3]r$ hP)r% }r& (hX Nearestr' hj hhh!hTh#}r( (h)]r) h+]r* h']r+ h%]r, h-]r- uh1K:h3]r. hLX Nearestr/
r0 }r1 (hj' hj% ubaubah!j ubj )r2 }r3 (hU h#}r4 (h)]r5 h+]r6 h']r7 h%]r8 h-]r9 uhjÙ h3]r: cdocutils.nodes
line_block
r; )r< }r= (hU h#}r> (h)]r? h+]r@ h']rA h%]rB h-]rC uhj2 h3]rD (cdocutils.nodes
line
rE )rF }rG (hX3 Specifies how pixel values are computed out of the image domain. This mostly affects values at the boundary of the image. If the image represents intensities, Nearest (Neumann) conditions should be used. If the image represents gradients or derivatives, Black (Dirichlet) boundary conditions should be used.rH UindentrI K hj< hhh!h1h#}rJ (h)]rK h+]rL h']rM h%]rN h-]rO uh1K h3]rP hLX3 Specifies how pixel values are computed out of the image domain. This mostly affects values at the boundary of the image. If the image represents intensities, Nearest (Neumann) conditions should be used. If the image represents gradients or derivatives, Black (Dirichlet) boundary conditions should be used.rQ
rR }rS (hjH hjF ubaubjE )rT }rU (hXW **Black**: Dirichlet boundary condition: pixel values out of the image domain are zero.rV jI K hj< hhh!h1h#}rW (h)]rX h+]rY h']rZ h%]r[ h-]r\ uh1K h3]r] (cdocutils.nodes
strong
r^ )r_ }r` (hX **Black**ra h#}rb (h)]rc h+]rd h']re h%]rf h-]rg uhjT h3]rh hLX Blackri
rj }rk (hU hj_ ubah!Ustrongrl ubhLXN : Dirichlet boundary condition: pixel values out of the image domain are zero.rm
rn }ro (hXN : Dirichlet boundary condition: pixel values out of the image domain are zero.rp hjT ubeubjE )rq }rr (hX **Nearest**: Neumann boundary condition: pixel values out of the image domain are those of the closest pixel location in the image domain.rs jI K hj< hhh!h1h#}rt (h)]ru h+]rv h']rw h%]rx h-]ry uh1K h3]rz (j^ )r{ }r| (hX **Nearest**r} h#}r~ (h)]r h+]r h']r h%]r h-]r uhjq h3]r hLX Nearestr
r }r (hU hj{ ubah!jl ubhLX : Neumann boundary condition: pixel values out of the image domain are those of the closest pixel location in the image domain.r
r }r (hX : Neumann boundary condition: pixel values out of the image domain are those of the closest pixel location in the image domain.r hjq ubeubeh!U
line_blockr ubah!j ubeh!jà ubju )r }r (hU h#}r (h)]r h+]r h']r h%]r h-]r uhj h3]r (j )r }r (hU h#}r (h)]r h+]r h']r h%]r h-]r uhj h3]r hP)r }r (hX Filter / ``filter``r¡ hj hhh!hTh#}r¢ (h)]r£ h+]r¤ h']r¥ h%]r¦ h-]r§ uh1K>h3]r¨ (hLX Filter / r©
rª }r« (hX Filter / r¬ hj ubj> )r }r® (hX
``filter``r¯ h#}r° (h)]r± h+]r² h']r³ h%]r´ h-]rµ uhj h3]r¶ hLX filterr·
r¸ }r¹ (hU hj ubah!jL ubeubah!j ubj )rº }r» (hU h#}r¼ (h)]r½ h+]r¾ h']r¿ h%]rÀ h-]rÁ uhj h3]r hP)rà }rÄ (hX ChoicerÅ hjº hhh!hTh#}rÆ (h)]rÇ h+]rÈ h']rÉ h%]rÊ h-]rË uh1K>h3]rÌ hLX ChoicerÍ
rÎ }rÏ (hjÅ hjà ubaubah!j ubj )rÐ }rÑ (hU h#}rÒ (h)]rÓ h+]rÔ h']rÕ h%]rÖ h-]r× uhj h3]rØ hP)rÙ }rÚ (hX Quasi-GaussianrÛ hjÐ hhh!hTh#}rÜ (h)]rÝ h+]rÞ h']rß h%]rà h-]rá uh1K>h3]râ hLX Quasi-Gaussianrã
rä }rå (hjÛ hjÙ ubaubah!j ubj )ræ }rç (hU h#}rè (h)]ré h+]rê h']rë h%]rì h-]rí uhj h3]rî j; )rï }rð (hU h#}rñ (h)]rò h+]ró h']rô h%]rõ h-]rö uhjæ h3]r÷ (jE )rø }rù (hX° Bluring filter. The quasi-Gaussian filter should be appropriate in most cases. The Gaussian filter is more isotropic (its impulse response has rotational symmetry), but slower.rú jI K hjï hhh!h1h#}rû (h)]rü h+]rý h']rþ h%]rÿ h-]r uh1K h3]r hLX° Bluring filter. The quasi-Gaussian filter should be appropriate in most cases. The Gaussian filter is more isotropic (its impulse response has rotational symmetry), but slower.r
r }r (hjú hjø ubaubjE )r }r (hX
**Quasi-Gaussian**: Quasi-Gaussian filter (0-order recursive Deriche filter, faster) - IIR (infinite support / impulsional response).r jI K hjï hhh!h1h#}r (h)]r h+]r
h']r h%]r h-]r
uh1K h3]r (j^ )r }r (hX **Quasi-Gaussian**r h#}r (h)]r h+]r h']r h%]r h-]r uhj h3]r hLX Quasi-Gaussianr
r }r (hU hj ubah!jl ubhLXs : Quasi-Gaussian filter (0-order recursive Deriche filter, faster) - IIR (infinite support / impulsional response).r
r }r (hXs : Quasi-Gaussian filter (0-order recursive Deriche filter, faster) - IIR (infinite support / impulsional response).r hj ubeubjE )r }r! (hX **Gaussian**: Gaussian filter (Van Vliet recursive Gaussian filter, more isotropic, slower) - IIR (infinite support / impulsional response).r" jI K hjï hhh!h1h#}r# (h)]r$ h+]r% h']r& h%]r' h-]r( uh1K h3]r) (j^ )r* }r+ (hX **Gaussian**r, h#}r- (h)]r. h+]r/ h']r0 h%]r1 h-]r2 uhj h3]r3 hLX Gaussianr4
r5 }r6 (hU hj* ubah!jl ubhLX : Gaussian filter (Van Vliet recursive Gaussian filter, more isotropic, slower) - IIR (infinite support / impulsional response).r7
r8 }r9 (hX : Gaussian filter (Van Vliet recursive Gaussian filter, more isotropic, slower) - IIR (infinite support / impulsional response).r: hj ubeubjE )r; }r< (hXB **Box**: Box filter - FIR (finite support / impulsional response).r= jI K hjï hhh!h1h#}r> (h)]r? h+]r@ h']rA h%]rB h-]rC uh1K h3]rD (j^ )rE }rF (hX **Box**rG h#}rH (h)]rI h+]rJ h']rK h%]rL h-]rM uhj; h3]rN hLX BoxrO
rP }rQ (hU hjE ubah!jl ubhLX; : Box filter - FIR (finite support / impulsional response).rR
rS }rT (hX; : Box filter - FIR (finite support / impulsional response).rU hj; ubeubjE )rV }rW (hXQ **Triangle**: Triangle/tent filter - FIR (finite support / impulsional response).rX jI K hjï hhh!h1h#}rY (h)]rZ h+]r[ h']r\ h%]r] h-]r^ uh1K h3]r_ (j^ )r` }ra (hX **Triangle**rb h#}rc (h)]rd h+]re h']rf h%]rg h-]rh uhjV h3]ri hLX Trianglerj
rk }rl (hU hj` ubah!jl ubhLXE : Triangle/tent filter - FIR (finite support / impulsional response).rm
rn }ro (hXE : Triangle/tent filter - FIR (finite support / impulsional response).rp hjV ubeubjE )rq }rr (hXN **Quadratic**: Quadratic filter - FIR (finite support / impulsional response).rs jI K hjï hhh!h1h#}rt (h)]ru h+]rv h']rw h%]rx h-]ry uh1K h3]rz (j^ )r{ }r| (hX
**Quadratic**r} h#}r~ (h)]r h+]r h']r h%]r h-]r uhjq h3]r hLX Quadraticr
r }r (hU hj{ ubah!jl ubhLXA : Quadratic filter - FIR (finite support / impulsional response).r
r }r (hXA : Quadratic filter - FIR (finite support / impulsional response).r hjq ubeubeh!j ubah!j ubeh!jà ubju )r }r (hU h#}r (h)]r h+]r h']r h%]r h-]r uhj h3]r (j )r }r (hU h#}r (h)]r h+]r h']r h%]r h-]r uhj h3]r hP)r }r (hX Expand RoD / ``expandRoD``r hj hhh!hTh#}r¡ (h)]r¢ h+]r£ h']r¤ h%]r¥ h-]r¦ uh1KEh3]r§ (hLX
Expand RoD / r¨
r© }rª (hX
Expand RoD / r« hj ubj> )r¬ }r (hX
``expandRoD``r® h#}r¯ (h)]r° h+]r± h']r² h%]r³ h-]r´ uhj h3]rµ hLX expandRoDr¶
r· }r¸ (hU hj¬ ubah!jL ubeubah!j ubj )r¹ }rº (hU h#}r» (h)]r¼ h+]r½ h']r¾ h%]r¿ h-]rÀ uhj h3]rÁ hP)r }rà (hX BooleanrÄ hj¹ hhh!hTh#}rÅ (h)]rÆ h+]rÇ h']rÈ h%]rÉ h-]rÊ uh1KEh3]rË hLX BooleanrÌ
rÍ }rÎ (hjÄ hj ubaubah!j ubj )rÏ }rÐ (hU h#}rÑ (h)]rÒ h+]rÓ h']rÔ h%]rÕ h-]rÖ uhj h3]r× hP)rØ }rÙ (hX OffrÚ hjÏ hhh!hTh#}rÛ (h)]rÜ h+]rÝ h']rÞ h%]rß h-]rà uh1KEh3]rá hLX Offrâ
rã }rä (hjÚ hjØ ubaubah!j ubj )rå }ræ (hU h#}rç (h)]rè h+]ré h']rê h%]rë h-]rì uhj h3]rí hP)rî }rï (hXA Expand the source region of definition by 1.5\*size (3.6\*sigma).rð hjå hhh!hTh#}rñ (h)]rò h+]ró h']rô h%]rõ h-]rö uh1KEh3]r÷ hLX? Expand the source region of definition by 1.5*size (3.6*sigma).rø
rù }rú (hXA Expand the source region of definition by 1.5\*size (3.6\*sigma).rû hjî ubaubah!j ubeh!jà ubju )rü }rý (hU h#}rþ (h)]rÿ h+]r h']r h%]r h-]r uhj h3]r (j )r }r (hU h#}r (h)]r h+]r h']r
h%]r h-]r uhjü h3]r
hP)r }r (hX! Crop To Format / ``cropToFormat``r hj hhh!hTh#}r (h)]r h+]r h']r h%]r h-]r uh1KGh3]r (hLX Crop To Format / r
r }r (hX Crop To Format / r hj ubj> )r }r (hX ``cropToFormat``r h#}r (h)]r h+]r! h']r" h%]r# h-]r$ uhj h3]r% hLX cropToFormatr&
r' }r( (hU hj ubah!jL ubeubah!j ubj )r) }r* (hU h#}r+ (h)]r, h+]r- h']r. h%]r/ h-]r0 uhjü h3]r1 hP)r2 }r3 (hX Booleanr4 hj) hhh!hTh#}r5 (h)]r6 h+]r7 h']r8 h%]r9 h-]r: uh1KGh3]r; hLX Booleanr<
r= }r> (hj4 hj2 ubaubah!j ubj )r? }r@ (hU h#}rA (h)]rB h+]rC h']rD h%]rE h-]rF uhjü h3]rG hP)rH }rI (hX OnrJ hj? hhh!hTh#}rK (h)]rL h+]rM h']rN h%]rO h-]rP uh1KGh3]rQ hLX OnrR
rS }rT (hjJ hjH ubaubah!j ubj )rU }rV (hU h#}rW (h)]rX h+]rY h']rZ h%]r[ h-]r\ uhjü h3]r] hP)r^ }r_ (hXë If the source is inside the format and the effect extends it outside of the format, crop it to avoid unnecessary calculations. To avoid unwanted crops, only the borders that were inside of the format in the source clip will be cropped.r` hjU hhh!hTh#}ra (h)]rb h+]rc h']rd h%]re h-]rf uh1KGh3]rg hLXë If the source is inside the format and the effect extends it outside of the format, crop it to avoid unnecessary calculations. To avoid unwanted crops, only the borders that were inside of the format in the source clip will be cropped.rh
ri }rj (hj` hj^ ubaubah!j ubeh!jà ubju )rk }rl (hU h#}rm (h)]rn h+]ro h']rp h%]rq h-]rr uhj h3]rs (j )rt }ru (hU h#}rv (h)]rw h+]rx h']ry h%]rz h-]r{ uhjk h3]r| hP)r} }r~ (hX$ Alpha Threshold / ``alphaThreshold``r hjt hhh!hTh#}r (h)]r h+]r h']r h%]r h-]r
uh1KIh3]r (hLX Alpha Threshold / r
r }r (hX Alpha Threshold / r hj} ubj> )r }r (hX ``alphaThreshold``r h#}r (h)]r h+]r h']r h%]r h-]r uhj} h3]r hLX alphaThresholdr
r }r (hU hj ubah!jL ubeubah!j ubj )r }r (hU h#}r (h)]r h+]r h']r h%]r h-]r uhjk h3]r hP)r¡ }r¢ (hX Doubler£ hj hhh!hTh#}r¤ (h)]r¥ h+]r¦ h']r§ h%]r¨ h-]r© uh1KIh3]rª hLX Doubler«
r¬ }r (hj£ hj¡ ubaubah!j ubj )r® }r¯ (hU h#}r° (h)]r± h+]r² h']r³ h%]r´ h-]rµ uhjk h3]r¶ hP)r· }r¸ (hX 0hj® hhh!hTh#}r¹ (h)]rº h+]r» h']r¼ h%]r½ h-]r¾ uh1KIh3]r¿ hLX 0
rÀ }rÁ (hX 0hj· ubaubah!j ubj )r }rà (hU h#}rÄ (h)]rÅ h+]rÆ h']rÇ h%]rÈ h-]rÉ uhjk h3]rÊ hP)rË }rÌ (hXM If this value is non-zero, any alpha value below this is set to zero. This is only useful for IIR filters (Gaussian and Quasi-Gaussian), which may produce alpha values very close to zero due to arithmetic precision. Remind that, in theory, a black image with a single white pixel should produce non-zero values everywhere, but a few VFX tricks rely on the fact that alpha should be zero far from the alpha edges (e.g. the premult-blur-unpremult trick to fill holes)). A threshold value of 0.003 is reasonable, and values between 0.001 and 0.01 are usually enough to remove these artifacts.rÍ hj hhh!hTh#}rÎ (h)]rÏ h+]rÐ h']rÑ h%]rÒ h-]rÓ uh1KIh3]rÔ hLXM If this value is non-zero, any alpha value below this is set to zero. This is only useful for IIR filters (Gaussian and Quasi-Gaussian), which may produce alpha values very close to zero due to arithmetic precision. Remind that, in theory, a black image with a single white pixel should produce non-zero values everywhere, but a few VFX tricks rely on the fact that alpha should be zero far from the alpha edges (e.g. the premult-blur-unpremult trick to fill holes)). A threshold value of 0.003 is reasonable, and values between 0.001 and 0.01 are usually enough to remove these artifacts.rÕ
rÖ }r× (hjÍ hjË ubaubah!j ubeh!jà ubju )rØ }rÙ (hU h#}rÚ (h)]rÛ h+]rÜ h']rÝ h%]rÞ h-]rß uhj h3]rà (j )rá }râ (hU h#}rã (h)]rä h+]rå h']ræ h%]rç h-]rè uhjØ h3]ré hP)rê }rë (hX (Un)premult / ``premult``rì hjá hhh!hTh#}rí (h)]rî h+]rï h']rð h%]rñ h-]rò uh1KKh3]ró (hLX (Un)premult / rô
rõ }rö (hX (Un)premult / r÷ hjê ubj> )rø }rù (hX ``premult``rú h#}rû (h)]rü h+]rý h']rþ h%]rÿ h-]r uhjê h3]r hLX premultr
r }r (hU hjø ubah!jL ubeubah!j ubj )r }r (hU h#}r (h)]r h+]r h']r
h%]r h-]r uhjØ h3]r
hP)r }r (hX Booleanr hj hhh!hTh#}r (h)]r h+]r h']r h%]r h-]r uh1KKh3]r hLX Booleanr
r }r (hj hj ubaubah!j ubj )r }r (hU h#}r (h)]r h+]r h']r h%]r! h-]r" uhjØ h3]r# hP)r$ }r% (hX Offr& hj hhh!hTh#}r' (h)]r( h+]r) h']r* h%]r+ h-]r, uh1KKh3]r- hLX Offr.
r/ }r0 (hj& hj$ ubaubah!j ubj )r1 }r2 (hU h#}r3 (h)]r4 h+]r5 h']r6 h%]r7 h-]r8 uhjØ h3]r9 hP)r: }r; (hX Divide the image by the alpha channel before processing, and re-multiply it afterwards. Use if the input images are premultiplied.r< hj1 hhh!hTh#}r= (h)]r> h+]r? h']r@ h%]rA h-]rB uh1KKh3]rC hLX Divide the image by the alpha channel before processing, and re-multiply it afterwards. Use if the input images are premultiplied.rD
rE }rF (hj< hj: ubaubah!j ubeh!jà ubju )rG }rH (hU h#}rI (h)]rJ h+]rK h']rL h%]rM h-]rN uhj h3]rO (j )rP }rQ (hU h#}rR (h)]rS h+]rT h']rU h%]rV h-]rW uhjG h3]rX hP)rY }rZ (hX Invert Mask / ``maskInvert``r[ hjP hhh!hTh#}r\ (h)]r] h+]r^ h']r_ h%]r` h-]ra uh1KMh3]rb (hLX Invert Mask / rc
rd }re (hX Invert Mask / rf hjY ubj> )rg }rh (hX ``maskInvert``ri h#}rj (h)]rk h+]rl h']rm h%]rn h-]ro uhjY h3]rp hLX
maskInvertrq
rr }rs (hU hjg ubah!jL ubeubah!j ubj )rt }ru (hU h#}rv (h)]rw h+]rx h']ry h%]rz h-]r{ uhjG h3]r| hP)r} }r~ (hX Booleanr hjt hhh!hTh#}r (h)]r h+]r h']r h%]r h-]r
uh1KMh3]r hLX Booleanr
r }r (hj hj} ubaubah!j ubj )r }r (hU h#}r (h)]r h+]r h']r h%]r h-]r uhjG h3]r hP)r }r (hX Offr hj hhh!hTh#}r (h)]r h+]r h']r h%]r h-]r uh1KMh3]r hLX Offr
r }r (hj hj ubaubah!j ubj )r }r¡ (hU h#}r¢ (h)]r£ h+]r¤ h']r¥ h%]r¦ h-]r§ uhjG h3]r¨ hP)r© }rª (hX>