https://en.wikipedia.org/w/index.php?action=history&feed=atom&title=Jump_flooding_algorithm Jump flooding algorithm - Revision history 2025-05-31T13:05:26Z Revision history for this page on the wiki MediaWiki 1.45.0-wmf.3 https://en.wikipedia.org/w/index.php?title=Jump_flooding_algorithm&diff=1291882588&oldid=prev OAbot: Open access bot: url-access updated in citation with #oabot. 2025-05-23T23:32:05Z <p><a href="/wiki/Wikipedia:OABOT" class="mw-redirect" title="Wikipedia:OABOT">Open access bot</a>: url-access updated in citation with #oabot.</p> <table style="background-color: #fff; color: #202122;" data-mw="interface"> <col class="diff-marker" /> <col class="diff-content" /> <col class="diff-marker" /> <col class="diff-content" /> <tr class="diff-title" lang="en"> <td colspan="2" style="background-color: #fff; color: #202122; text-align: center;">← Previous revision</td> <td colspan="2" style="background-color: #fff; color: #202122; text-align: center;">Revision as of 23:32, 23 May 2025</td> </tr><tr> <td colspan="2" class="diff-lineno">Line 29:</td> <td colspan="2" class="diff-lineno">Line 29:</td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>== Uses ==</div></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>== Uses ==</div></td> </tr> <tr> <td class="diff-marker" data-marker="−"></td> <td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div>The jump flooding algorithm and its variants may be used for calculating [[Voronoi map|Voronoi maps]]&lt;ref name=Rong2006/&gt;&lt;ref name=Rong2007&gt;{{Cite book|last1=Rong|first1=Guodong|last2=Tan|first2=Tiow-Seng|title=4th International Symposium on Voronoi Diagrams in Science and Engineering (ISVD 2007) |chapter=Variants of Jump Flooding Algorithm for Computing Discrete Voronoi Diagrams |date=July 2007|chapter-url=https://ieeexplore.ieee.org/document/4276119|pages=176–181|doi=10.1109/ISVD.2007.41|isbn=978-0-7695-2869-4|s2cid=386735}}&lt;/ref&gt; and [[centroidal Voronoi tessellation]]s (CVT),&lt;ref&gt;{{Cite journal|last1=Guodong Rong|last2=Yang Liu|last3=Wenping Wang|last4=Xiaotian Yin|last5=Gu|first5=X D|last6=Xiaohu Guo|date=2011-03-25|title=GPU-Assisted Computation of Centroidal Voronoi Tessellation|url=https://ieeexplore.ieee.org/document/5438988|journal=IEEE Transactions on Visualization and Computer Graphics|volume=17|issue=3|pages=345–356|doi=10.1109/TVCG.2010.53|pmid=21233516 |s2cid=11970070 |issn=1077-2626|hdl=10722/132211|hdl-access=free}}&lt;/ref&gt; generating [[distance field]]s,&lt;ref&gt;{{Cite web|last=Golus|first=Ben|date=2021-04-01|title=The Quest for Very Wide Outlines|url=https://bgolus.medium.com/the-quest-for-very-wide-outlines-ba82ed442cd9|access-date=2021-08-19|website=Medium|language=en}}&lt;/ref&gt; [[point-cloud]] rendering,&lt;ref&gt;{{Cite web|last=Farias|first=Renato|date=2014|title=POINT CLOUD RENDERING USING JUMP FLOODING|url=https://www.lcg.ufrj.br/thesis/renato-farias-MSc.pdf}}&lt;/ref&gt; [[feature matching]],&lt;ref&gt;{{Cite book|last1=Yu|first1=Pei|last2=Yang|first2=Xiaokang|last3=Chen|first3=Li|title=Advances on Digital Television and Wireless Multimedia Communications |chapter=Parallel-Friendly Patch Match Based on Jump Flooding |date=2012|editor-last=Zhang|editor-first=Wenjun|editor2-last=Yang|editor2-first=Xiaokang|editor3-last=Xu|editor3-first=Zhixiang|editor4-last=An|editor4-first=Ping|editor5-last=Liu|editor5-first=Qizhen|editor6-last=Lu|editor6-first=Yue|chapter-url=https://link.springer.com/chapter/10.1007/978-3-642-34595-1_3|series=Communications in Computer and Information Science|volume=331|language=en|location=Berlin, Heidelberg|publisher=Springer|pages=15–21|doi=10.1007/978-3-642-34595-1_3|isbn=978-3-642-34595-1}}&lt;/ref&gt; the computation of [[power diagram]]s,&lt;ref&gt;{{Cite journal|last=Zheng|first=Liping|date=2019-05-01|title=GPU-based efficient computation of power diagram|url=https://www.sciencedirect.com/science/article/abs/pii/S0097849319300342|journal=Computers &amp; Graphics|language=en|volume=80|pages=29–36|doi=10.1016/j.cag.2019.03.011|s2cid=131923624 |issn=0097-8493}}&lt;/ref&gt; and [[Soft shadows|soft shadow]] rendering.&lt;ref&gt;{{Cite book|last1=Rong|first1=Guodong|last2=Tan|first2=Tiow-Seng|title=Proceedings of the ACM symposium on Virtual reality software and technology |chapter=Utilizing jump flooding in image-based soft shadows |date=2006-11-01|chapter-url=https://doi.org/10.1145/1180495.1180531|series=VRST '06|location=Limassol, Cyprus|publisher=Association for Computing Machinery|pages=173–180|doi=10.1145/1180495.1180531|isbn=978-1-59593-321-8|s2cid=15339123}}&lt;/ref&gt; The [[Grand strategy wargame|grand strategy game]] developer [[Paradox Interactive]] uses the JFA to render borders between countries and provinces.&lt;ref&gt;{{Cite web|last1=Boczula|first1=Bartosz|last2=Eriksson|first2=Daniel|date=2020|title=Optimized Gradient Border Rendering in Imperator: Rome|url=https://www.intel.com/content/www/us/en/develop/articles/optimized-gradient-border-rendering-in-imperator-rome.html|access-date=2021-03-28|website=Intel|language=en}}&lt;/ref&gt;</div></td> <td class="diff-marker" data-marker="+"></td> <td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div>The jump flooding algorithm and its variants may be used for calculating [[Voronoi map|Voronoi maps]]&lt;ref name=Rong2006/&gt;&lt;ref name=Rong2007&gt;{{Cite book|last1=Rong|first1=Guodong|last2=Tan|first2=Tiow-Seng|title=4th International Symposium on Voronoi Diagrams in Science and Engineering (ISVD 2007) |chapter=Variants of Jump Flooding Algorithm for Computing Discrete Voronoi Diagrams |date=July 2007|chapter-url=https://ieeexplore.ieee.org/document/4276119|pages=176–181|doi=10.1109/ISVD.2007.41|isbn=978-0-7695-2869-4|s2cid=386735}}&lt;/ref&gt; and [[centroidal Voronoi tessellation]]s (CVT),&lt;ref&gt;{{Cite journal|last1=Guodong Rong|last2=Yang Liu|last3=Wenping Wang|last4=Xiaotian Yin|last5=Gu|first5=X D|last6=Xiaohu Guo|date=2011-03-25|title=GPU-Assisted Computation of Centroidal Voronoi Tessellation|url=https://ieeexplore.ieee.org/document/5438988|journal=IEEE Transactions on Visualization and Computer Graphics|volume=17|issue=3|pages=345–356|doi=10.1109/TVCG.2010.53|pmid=21233516 |s2cid=11970070 |issn=1077-2626|hdl=10722/132211|hdl-access=free}}&lt;/ref&gt; generating [[distance field]]s,&lt;ref&gt;{{Cite web|last=Golus|first=Ben|date=2021-04-01|title=The Quest for Very Wide Outlines|url=https://bgolus.medium.com/the-quest-for-very-wide-outlines-ba82ed442cd9|access-date=2021-08-19|website=Medium|language=en}}&lt;/ref&gt; [[point-cloud]] rendering,&lt;ref&gt;{{Cite web|last=Farias|first=Renato|date=2014|title=POINT CLOUD RENDERING USING JUMP FLOODING|url=https://www.lcg.ufrj.br/thesis/renato-farias-MSc.pdf}}&lt;/ref&gt; [[feature matching]],&lt;ref&gt;{{Cite book|last1=Yu|first1=Pei|last2=Yang|first2=Xiaokang|last3=Chen|first3=Li|title=Advances on Digital Television and Wireless Multimedia Communications |chapter=Parallel-Friendly Patch Match Based on Jump Flooding |date=2012|editor-last=Zhang|editor-first=Wenjun|editor2-last=Yang|editor2-first=Xiaokang|editor3-last=Xu|editor3-first=Zhixiang|editor4-last=An|editor4-first=Ping|editor5-last=Liu|editor5-first=Qizhen|editor6-last=Lu|editor6-first=Yue|chapter-url=https://link.springer.com/chapter/10.1007/978-3-642-34595-1_3|series=Communications in Computer and Information Science|volume=331|language=en|location=Berlin, Heidelberg|publisher=Springer|pages=15–21|doi=10.1007/978-3-642-34595-1_3|isbn=978-3-642-34595-1}}&lt;/ref&gt; the computation of [[power diagram]]s,&lt;ref&gt;{{Cite journal|last=Zheng|first=Liping|date=2019-05-01|title=GPU-based efficient computation of power diagram|url=https://www.sciencedirect.com/science/article/abs/pii/S0097849319300342|journal=Computers &amp; Graphics|language=en|volume=80|pages=29–36|doi=10.1016/j.cag.2019.03.011|s2cid=131923624 |issn=0097-8493<ins style="font-weight: bold; text-decoration: none;">|url-access=subscription</ins>}}&lt;/ref&gt; and [[Soft shadows|soft shadow]] rendering.&lt;ref&gt;{{Cite book|last1=Rong|first1=Guodong|last2=Tan|first2=Tiow-Seng|title=Proceedings of the ACM symposium on Virtual reality software and technology |chapter=Utilizing jump flooding in image-based soft shadows |date=2006-11-01|chapter-url=https://doi.org/10.1145/1180495.1180531|series=VRST '06|location=Limassol, Cyprus|publisher=Association for Computing Machinery|pages=173–180|doi=10.1145/1180495.1180531|isbn=978-1-59593-321-8|s2cid=15339123}}&lt;/ref&gt; The [[Grand strategy wargame|grand strategy game]] developer [[Paradox Interactive]] uses the JFA to render borders between countries and provinces.&lt;ref&gt;{{Cite web|last1=Boczula|first1=Bartosz|last2=Eriksson|first2=Daniel|date=2020|title=Optimized Gradient Border Rendering in Imperator: Rome|url=https://www.intel.com/content/www/us/en/develop/articles/optimized-gradient-border-rendering-in-imperator-rome.html|access-date=2021-03-28|website=Intel|language=en}}&lt;/ref&gt;</div></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>== Further developments ==</div></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>== Further developments ==</div></td> </tr> </table> OAbot https://en.wikipedia.org/w/index.php?title=Jump_flooding_algorithm&diff=1280594438&oldid=prev LucasVB: /* Implementation */ 2025-03-15T12:33:25Z <p><span class="autocomment">Implementation</span></p> <table style="background-color: #fff; color: #202122;" data-mw="interface"> <col class="diff-marker" /> <col class="diff-content" /> <col class="diff-marker" /> <col class="diff-content" /> <tr class="diff-title" lang="en"> <td colspan="2" style="background-color: #fff; color: #202122; text-align: center;">← Previous revision</td> <td colspan="2" style="background-color: #fff; color: #202122; text-align: center;">Revision as of 12:33, 15 March 2025</td> </tr><tr> <td colspan="2" class="diff-lineno">Line 9:</td> <td colspan="2" class="diff-lineno">Line 9:</td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>Take an &lt;math&gt;N \times N&lt;/math&gt; grid of pixels&lt;ref&gt;The original paper uses the optimal case, a square grid, as an example, but a grid of any size works. Albeit with reduced efficiency. See [https://computergraphics.stackexchange.com/questions/2102/is-jump-flood-algorithm-separable this StackOverflow question for more].&lt;/ref&gt; (like an image or texture). All pixels will start with an "undefined" color unless it is a uniquely-colored "seed" pixel. As the JFA progresses, each undefined pixel will be filled with a color corresponding to that of a seed pixel.</div></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>Take an &lt;math&gt;N \times N&lt;/math&gt; grid of pixels&lt;ref&gt;The original paper uses the optimal case, a square grid, as an example, but a grid of any size works. Albeit with reduced efficiency. See [https://computergraphics.stackexchange.com/questions/2102/is-jump-flood-algorithm-separable this StackOverflow question for more].&lt;/ref&gt; (like an image or texture). All pixels will start with an "undefined" color unless it is a uniquely-colored "seed" pixel. As the JFA progresses, each undefined pixel will be filled with a color corresponding to that of a seed pixel.</div></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> </tr> <tr> <td class="diff-marker" data-marker="−"></td> <td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div>For each step size &lt;math&gt;k \in \{\<del style="font-weight: bold; text-decoration: none;">frac </del>N<del style="font-weight: bold; text-decoration: none;"> </del>2, \<del style="font-weight: bold; text-decoration: none;">frac </del>N<del style="font-weight: bold; text-decoration: none;"> </del>4, \dots, 1\}&lt;/math&gt;, run one iteration of the JFA:</div></td> <td class="diff-marker" data-marker="+"></td> <td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div>For each step size &lt;math&gt;k \in \{\<ins style="font-weight: bold; text-decoration: none;">tfrac{</ins>N<ins style="font-weight: bold; text-decoration: none;">}{</ins>2<ins style="font-weight: bold; text-decoration: none;">}</ins>, \<ins style="font-weight: bold; text-decoration: none;">tfrac{</ins>N<ins style="font-weight: bold; text-decoration: none;">}{</ins>4<ins style="font-weight: bold; text-decoration: none;">}</ins>, \dots, 1\}&lt;/math&gt;, run one iteration of the JFA:</div></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>:Iterate over every pixel &lt;math&gt;p&lt;/math&gt; at &lt;math&gt;(x, y)&lt;/math&gt;.</div></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>:Iterate over every pixel &lt;math&gt;p&lt;/math&gt; at &lt;math&gt;(x, y)&lt;/math&gt;.</div></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>::For each neighbor &lt;math&gt;q&lt;/math&gt; at &lt;math&gt;(x+i, y+j)&lt;/math&gt; where &lt;math&gt;i,j \in \{-k, 0, k\}&lt;/math&gt;:</div></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>::For each neighbor &lt;math&gt;q&lt;/math&gt; at &lt;math&gt;(x+i, y+j)&lt;/math&gt; where &lt;math&gt;i,j \in \{-k, 0, k\}&lt;/math&gt;:</div></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>:::if &lt;math&gt;p&lt;/math&gt; is undefined and &lt;math&gt;q&lt;/math&gt; is colored, change &lt;math&gt;p&lt;/math&gt;'s color to &lt;math&gt;q&lt;/math&gt;'s</div></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>:::if &lt;math&gt;p&lt;/math&gt; is undefined and &lt;math&gt;q&lt;/math&gt; is colored, change &lt;math&gt;p&lt;/math&gt;'s color to &lt;math&gt;q&lt;/math&gt;'s</div></td> </tr> <tr> <td class="diff-marker" data-marker="−"></td> <td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div>:::if &lt;math&gt;p&lt;/math&gt; is colored and &lt;math&gt;q&lt;/math&gt; is colored, if &lt;math&gt;dist(p, s) &gt; dist(p, s')&lt;/math&gt; where &lt;math&gt;s&lt;/math&gt; and &lt;math&gt;s'&lt;/math&gt; are the seed pixels for &lt;math&gt;p&lt;/math&gt; and &lt;math&gt;q&lt;/math&gt;, respectively, then change &lt;math&gt;p&lt;/math&gt;'s color to &lt;math&gt;q&lt;/math&gt;'s.</div></td> <td class="diff-marker" data-marker="+"></td> <td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div>:::if &lt;math&gt;p&lt;/math&gt; is colored and &lt;math&gt;q&lt;/math&gt; is colored, if &lt;math&gt;<ins style="font-weight: bold; text-decoration: none;">\mathrm{</ins>dist<ins style="font-weight: bold; text-decoration: none;">}</ins>(p, s) &gt; <ins style="font-weight: bold; text-decoration: none;">\mathrm{</ins>dist<ins style="font-weight: bold; text-decoration: none;">}</ins>(p, s')&lt;/math&gt; where &lt;math&gt;s&lt;/math&gt; and &lt;math&gt;s'&lt;/math&gt; are the seed pixels for &lt;math&gt;p&lt;/math&gt; and &lt;math&gt;q&lt;/math&gt;, respectively, then change &lt;math&gt;p&lt;/math&gt;'s color to &lt;math&gt;q&lt;/math&gt;'s.</div></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>Note that pixels may change color more than once in each step, and that the JFA does not specify a method for resolving cases where distances are equal, therefore the last-checked pixel's color is used above.</div></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>Note that pixels may change color more than once in each step, and that the JFA does not specify a method for resolving cases where distances are equal, therefore the last-checked pixel's color is used above.</div></td> </tr> </table> LucasVB https://en.wikipedia.org/w/index.php?title=Jump_flooding_algorithm&diff=1219053697&oldid=prev Oman395: /* top */No other part of the uses section has a how tag. As well, the uses section shouldn't contain implementation details-- perhaps the implementation section could be expanded to include details on usage. 2024-04-15T13:31:37Z <p><span class="autocomment">top: </span>No other part of the uses section has a how tag. As well, the uses section shouldn&#039;t contain implementation details-- perhaps the implementation section could be expanded to include details on usage.</p> <table style="background-color: #fff; color: #202122;" data-mw="interface"> <col class="diff-marker" /> <col class="diff-content" /> <col class="diff-marker" /> <col class="diff-content" /> <tr class="diff-title" lang="en"> <td colspan="2" style="background-color: #fff; color: #202122; text-align: center;">← Previous revision</td> <td colspan="2" style="background-color: #fff; color: #202122; text-align: center;">Revision as of 13:31, 15 April 2024</td> </tr><tr> <td colspan="2" class="diff-lineno">Line 29:</td> <td colspan="2" class="diff-lineno">Line 29:</td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>== Uses ==</div></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>== Uses ==</div></td> </tr> <tr> <td class="diff-marker" data-marker="−"></td> <td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div>The jump flooding algorithm and its variants may be used for calculating [[Voronoi map|Voronoi maps]]&lt;ref name=Rong2006/&gt;&lt;ref name=Rong2007&gt;{{Cite book|last1=Rong|first1=Guodong|last2=Tan|first2=Tiow-Seng|title=4th International Symposium on Voronoi Diagrams in Science and Engineering (ISVD 2007) |chapter=Variants of Jump Flooding Algorithm for Computing Discrete Voronoi Diagrams |date=July 2007|chapter-url=https://ieeexplore.ieee.org/document/4276119|pages=176–181|doi=10.1109/ISVD.2007.41|isbn=978-0-7695-2869-4|s2cid=386735}}&lt;/ref&gt; and [[centroidal Voronoi tessellation]]s (CVT),&lt;ref&gt;{{Cite journal|last1=Guodong Rong|last2=Yang Liu|last3=Wenping Wang|last4=Xiaotian Yin|last5=Gu|first5=X D|last6=Xiaohu Guo|date=2011-03-25|title=GPU-Assisted Computation of Centroidal Voronoi Tessellation|url=https://ieeexplore.ieee.org/document/5438988|journal=IEEE Transactions on Visualization and Computer Graphics|volume=17|issue=3|pages=345–356|doi=10.1109/TVCG.2010.53|pmid=21233516 |s2cid=11970070 |issn=1077-2626|hdl=10722/132211|hdl-access=free}}&lt;/ref&gt; generating [[distance field]]s,&lt;ref&gt;{{Cite web|last=Golus|first=Ben|date=2021-04-01|title=The Quest for Very Wide Outlines|url=https://bgolus.medium.com/the-quest-for-very-wide-outlines-ba82ed442cd9|access-date=2021-08-19|website=Medium|language=en}}&lt;/ref&gt;<del style="font-weight: bold; text-decoration: none;">{{How|date=August 2021}}</del> [[point-cloud]] rendering,&lt;ref&gt;{{Cite web|last=Farias|first=Renato|date=2014|title=POINT CLOUD RENDERING USING JUMP FLOODING|url=https://www.lcg.ufrj.br/thesis/renato-farias-MSc.pdf}}&lt;/ref&gt; [[feature matching]],&lt;ref&gt;{{Cite book|last1=Yu|first1=Pei|last2=Yang|first2=Xiaokang|last3=Chen|first3=Li|title=Advances on Digital Television and Wireless Multimedia Communications |chapter=Parallel-Friendly Patch Match Based on Jump Flooding |date=2012|editor-last=Zhang|editor-first=Wenjun|editor2-last=Yang|editor2-first=Xiaokang|editor3-last=Xu|editor3-first=Zhixiang|editor4-last=An|editor4-first=Ping|editor5-last=Liu|editor5-first=Qizhen|editor6-last=Lu|editor6-first=Yue|chapter-url=https://link.springer.com/chapter/10.1007/978-3-642-34595-1_3|series=Communications in Computer and Information Science|volume=331|language=en|location=Berlin, Heidelberg|publisher=Springer|pages=15–21|doi=10.1007/978-3-642-34595-1_3|isbn=978-3-642-34595-1}}&lt;/ref&gt; the computation of [[power diagram]]s,&lt;ref&gt;{{Cite journal|last=Zheng|first=Liping|date=2019-05-01|title=GPU-based efficient computation of power diagram|url=https://www.sciencedirect.com/science/article/abs/pii/S0097849319300342|journal=Computers &amp; Graphics|language=en|volume=80|pages=29–36|doi=10.1016/j.cag.2019.03.011|s2cid=131923624 |issn=0097-8493}}&lt;/ref&gt; and [[Soft shadows|soft shadow]] rendering.&lt;ref&gt;{{Cite book|last1=Rong|first1=Guodong|last2=Tan|first2=Tiow-Seng|title=Proceedings of the ACM symposium on Virtual reality software and technology |chapter=Utilizing jump flooding in image-based soft shadows |date=2006-11-01|chapter-url=https://doi.org/10.1145/1180495.1180531|series=VRST '06|location=Limassol, Cyprus|publisher=Association for Computing Machinery|pages=173–180|doi=10.1145/1180495.1180531|isbn=978-1-59593-321-8|s2cid=15339123}}&lt;/ref&gt; The [[Grand strategy wargame|grand strategy game]] developer [[Paradox Interactive]] uses the JFA to render borders between countries and provinces.&lt;ref&gt;{{Cite web|last1=Boczula|first1=Bartosz|last2=Eriksson|first2=Daniel|date=2020|title=Optimized Gradient Border Rendering in Imperator: Rome|url=https://www.intel.com/content/www/us/en/develop/articles/optimized-gradient-border-rendering-in-imperator-rome.html|access-date=2021-03-28|website=Intel|language=en}}&lt;/ref&gt;</div></td> <td class="diff-marker" data-marker="+"></td> <td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div>The jump flooding algorithm and its variants may be used for calculating [[Voronoi map|Voronoi maps]]&lt;ref name=Rong2006/&gt;&lt;ref name=Rong2007&gt;{{Cite book|last1=Rong|first1=Guodong|last2=Tan|first2=Tiow-Seng|title=4th International Symposium on Voronoi Diagrams in Science and Engineering (ISVD 2007) |chapter=Variants of Jump Flooding Algorithm for Computing Discrete Voronoi Diagrams |date=July 2007|chapter-url=https://ieeexplore.ieee.org/document/4276119|pages=176–181|doi=10.1109/ISVD.2007.41|isbn=978-0-7695-2869-4|s2cid=386735}}&lt;/ref&gt; and [[centroidal Voronoi tessellation]]s (CVT),&lt;ref&gt;{{Cite journal|last1=Guodong Rong|last2=Yang Liu|last3=Wenping Wang|last4=Xiaotian Yin|last5=Gu|first5=X D|last6=Xiaohu Guo|date=2011-03-25|title=GPU-Assisted Computation of Centroidal Voronoi Tessellation|url=https://ieeexplore.ieee.org/document/5438988|journal=IEEE Transactions on Visualization and Computer Graphics|volume=17|issue=3|pages=345–356|doi=10.1109/TVCG.2010.53|pmid=21233516 |s2cid=11970070 |issn=1077-2626|hdl=10722/132211|hdl-access=free}}&lt;/ref&gt; generating [[distance field]]s,&lt;ref&gt;{{Cite web|last=Golus|first=Ben|date=2021-04-01|title=The Quest for Very Wide Outlines|url=https://bgolus.medium.com/the-quest-for-very-wide-outlines-ba82ed442cd9|access-date=2021-08-19|website=Medium|language=en}}&lt;/ref&gt; [[point-cloud]] rendering,&lt;ref&gt;{{Cite web|last=Farias|first=Renato|date=2014|title=POINT CLOUD RENDERING USING JUMP FLOODING|url=https://www.lcg.ufrj.br/thesis/renato-farias-MSc.pdf}}&lt;/ref&gt; [[feature matching]],&lt;ref&gt;{{Cite book|last1=Yu|first1=Pei|last2=Yang|first2=Xiaokang|last3=Chen|first3=Li|title=Advances on Digital Television and Wireless Multimedia Communications |chapter=Parallel-Friendly Patch Match Based on Jump Flooding |date=2012|editor-last=Zhang|editor-first=Wenjun|editor2-last=Yang|editor2-first=Xiaokang|editor3-last=Xu|editor3-first=Zhixiang|editor4-last=An|editor4-first=Ping|editor5-last=Liu|editor5-first=Qizhen|editor6-last=Lu|editor6-first=Yue|chapter-url=https://link.springer.com/chapter/10.1007/978-3-642-34595-1_3|series=Communications in Computer and Information Science|volume=331|language=en|location=Berlin, Heidelberg|publisher=Springer|pages=15–21|doi=10.1007/978-3-642-34595-1_3|isbn=978-3-642-34595-1}}&lt;/ref&gt; the computation of [[power diagram]]s,&lt;ref&gt;{{Cite journal|last=Zheng|first=Liping|date=2019-05-01|title=GPU-based efficient computation of power diagram|url=https://www.sciencedirect.com/science/article/abs/pii/S0097849319300342|journal=Computers &amp; Graphics|language=en|volume=80|pages=29–36|doi=10.1016/j.cag.2019.03.011|s2cid=131923624 |issn=0097-8493}}&lt;/ref&gt; and [[Soft shadows|soft shadow]] rendering.&lt;ref&gt;{{Cite book|last1=Rong|first1=Guodong|last2=Tan|first2=Tiow-Seng|title=Proceedings of the ACM symposium on Virtual reality software and technology |chapter=Utilizing jump flooding in image-based soft shadows |date=2006-11-01|chapter-url=https://doi.org/10.1145/1180495.1180531|series=VRST '06|location=Limassol, Cyprus|publisher=Association for Computing Machinery|pages=173–180|doi=10.1145/1180495.1180531|isbn=978-1-59593-321-8|s2cid=15339123}}&lt;/ref&gt; The [[Grand strategy wargame|grand strategy game]] developer [[Paradox Interactive]] uses the JFA to render borders between countries and provinces.&lt;ref&gt;{{Cite web|last1=Boczula|first1=Bartosz|last2=Eriksson|first2=Daniel|date=2020|title=Optimized Gradient Border Rendering in Imperator: Rome|url=https://www.intel.com/content/www/us/en/develop/articles/optimized-gradient-border-rendering-in-imperator-rome.html|access-date=2021-03-28|website=Intel|language=en}}&lt;/ref&gt;</div></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>== Further developments ==</div></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>== Further developments ==</div></td> </tr> </table> Oman395 https://en.wikipedia.org/w/index.php?title=Jump_flooding_algorithm&diff=1216093973&oldid=prev Wishdosher: Correct computational complexity (there are N×N pixels) 2024-03-29T00:36:49Z <p>Correct computational complexity (there are N×N pixels)</p> <table style="background-color: #fff; color: #202122;" data-mw="interface"> <col class="diff-marker" /> <col class="diff-content" /> <col class="diff-marker" /> <col class="diff-content" /> <tr class="diff-title" lang="en"> <td colspan="2" style="background-color: #fff; color: #202122; text-align: center;">← Previous revision</td> <td colspan="2" style="background-color: #fff; color: #202122; text-align: center;">Revision as of 00:36, 29 March 2024</td> </tr><tr> <td colspan="2" class="diff-lineno">Line 18:</td> <td colspan="2" class="diff-lineno">Line 18:</td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>Note that pixels may change color more than once in each step, and that the JFA does not specify a method for resolving cases where distances are equal, therefore the last-checked pixel's color is used above.</div></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>Note that pixels may change color more than once in each step, and that the JFA does not specify a method for resolving cases where distances are equal, therefore the last-checked pixel's color is used above.</div></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> </tr> <tr> <td class="diff-marker" data-marker="−"></td> <td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div>The JFA finishes after evaluating the last pixel in the last step size. Regardless of the content of the initial data, the innermost loop runs a total of &lt;math&gt;9 \log_2(N)&lt;/math&gt; times over each pixel, for an overall computational complexity of &lt;math&gt;O(N \log_2(N))&lt;/math&gt;.</div></td> <td class="diff-marker" data-marker="+"></td> <td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div>The JFA finishes after evaluating the last pixel in the last step size. Regardless of the content of the initial data, the innermost loop runs a total of &lt;math&gt;9 \log_2(N)&lt;/math&gt; times over each pixel, for an overall computational complexity of &lt;math&gt;O(N<ins style="font-weight: bold; text-decoration: none;">^2</ins> \log_2(N))&lt;/math&gt;.</div></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>=== Variants ===</div></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>=== Variants ===</div></td> </tr> </table> Wishdosher https://en.wikipedia.org/w/index.php?title=Jump_flooding_algorithm&diff=1216084424&oldid=prev 104.158.166.216 at 23:12, 28 March 2024 2024-03-28T23:12:46Z <p></p> <table style="background-color: #fff; color: #202122;" data-mw="interface"> <col class="diff-marker" /> <col class="diff-content" /> <col class="diff-marker" /> <col class="diff-content" /> <tr class="diff-title" lang="en"> <td colspan="2" style="background-color: #fff; color: #202122; text-align: center;">← Previous revision</td> <td colspan="2" style="background-color: #fff; color: #202122; text-align: center;">Revision as of 23:12, 28 March 2024</td> </tr><tr> <td colspan="2" class="diff-lineno">Line 2:</td> <td colspan="2" class="diff-lineno">Line 2:</td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>The '''jump flooding algorithm''' ('''JFA''') is a [[flooding algorithm]] used in the construction of [[Voronoi diagram]]s and [[Distance transform|distance transforms]]. The JFA was introduced by Rong Guodong at an [[Association for Computing Machinery|ACM]] symposium in 2006.&lt;ref name=Rong2006&gt;{{Cite book|last1=Rong|first1=Guodong|last2=Tan|first2=Tiow-Seng|title=Proceedings of the 2006 symposium on Interactive 3D graphics and games - SI3D '06 |chapter=Jump flooding in GPU with applications to Voronoi diagram and distance transform |date=2006-03-14|chapter-url=https://www.comp.nus.edu.sg/~tants/jfa/i3d06.pdf|location=Redwood City, California|publisher=Association for Computing Machinery|pages=109–116|doi=10.1145/1111411.1111431|isbn=978-1-59593-295-2|s2cid=7282879}}&lt;/ref&gt;</div></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>The '''jump flooding algorithm''' ('''JFA''') is a [[flooding algorithm]] used in the construction of [[Voronoi diagram]]s and [[Distance transform|distance transforms]]. The JFA was introduced by Rong Guodong at an [[Association for Computing Machinery|ACM]] symposium in 2006.&lt;ref name=Rong2006&gt;{{Cite book|last1=Rong|first1=Guodong|last2=Tan|first2=Tiow-Seng|title=Proceedings of the 2006 symposium on Interactive 3D graphics and games - SI3D '06 |chapter=Jump flooding in GPU with applications to Voronoi diagram and distance transform |date=2006-03-14|chapter-url=https://www.comp.nus.edu.sg/~tants/jfa/i3d06.pdf|location=Redwood City, California|publisher=Association for Computing Machinery|pages=109–116|doi=10.1145/1111411.1111431|isbn=978-1-59593-295-2|s2cid=7282879}}&lt;/ref&gt;</div></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> </tr> <tr> <td class="diff-marker" data-marker="−"></td> <td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div>The JFA has desirable attributes in [[GPU]] computation, notably <del style="font-weight: bold; text-decoration: none;">constant-time</del> performance. However, it is only an approximate algorithm and does not always compute the correct result for every pixel, although in practice errors are few and the magnitude of errors is generally small.&lt;ref name=Rong2006/&gt;</div></td> <td class="diff-marker" data-marker="+"></td> <td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div>The JFA has desirable attributes in [[GPU]] computation, notably <ins style="font-weight: bold; text-decoration: none;">for its efficient</ins> performance. However, it is only an approximate algorithm and does not always compute the correct result for every pixel, although in practice errors are few and the magnitude of errors is generally small.&lt;ref name=Rong2006/&gt;</div></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>== Implementation ==</div></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>== Implementation ==</div></td> </tr> </table> 104.158.166.216 https://en.wikipedia.org/w/index.php?title=Jump_flooding_algorithm&diff=1195802913&oldid=prev OAbot: Open access bot: hdl updated in citation with #oabot. 2024-01-15T09:33:53Z <p><a href="/wiki/Wikipedia:OABOT" class="mw-redirect" title="Wikipedia:OABOT">Open access bot</a>: hdl updated in citation with #oabot.</p> <table style="background-color: #fff; color: #202122;" data-mw="interface"> <col class="diff-marker" /> <col class="diff-content" /> <col class="diff-marker" /> <col class="diff-content" /> <tr class="diff-title" lang="en"> <td colspan="2" style="background-color: #fff; color: #202122; text-align: center;">← Previous revision</td> <td colspan="2" style="background-color: #fff; color: #202122; text-align: center;">Revision as of 09:33, 15 January 2024</td> </tr><tr> <td colspan="2" class="diff-lineno">Line 29:</td> <td colspan="2" class="diff-lineno">Line 29:</td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>== Uses ==</div></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>== Uses ==</div></td> </tr> <tr> <td class="diff-marker" data-marker="−"></td> <td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div>The jump flooding algorithm and its variants may be used for calculating [[Voronoi map|Voronoi maps]]&lt;ref name=Rong2006/&gt;&lt;ref name=Rong2007&gt;{{Cite book|last1=Rong|first1=Guodong|last2=Tan|first2=Tiow-Seng|title=4th International Symposium on Voronoi Diagrams in Science and Engineering (ISVD 2007) |chapter=Variants of Jump Flooding Algorithm for Computing Discrete Voronoi Diagrams |date=July 2007|chapter-url=https://ieeexplore.ieee.org/document/4276119|pages=176–181|doi=10.1109/ISVD.2007.41|isbn=978-0-7695-2869-4|s2cid=386735}}&lt;/ref&gt; and [[centroidal Voronoi tessellation]]s (CVT),&lt;ref&gt;{{Cite journal|last1=Guodong Rong|last2=Yang Liu|last3=Wenping Wang|last4=Xiaotian Yin|last5=Gu|first5=X D|last6=Xiaohu Guo|date=2011-03-25|title=GPU-Assisted Computation of Centroidal Voronoi Tessellation|url=https://ieeexplore.ieee.org/document/5438988|journal=IEEE Transactions on Visualization and Computer Graphics|volume=17|issue=3|pages=345–356|doi=10.1109/TVCG.2010.53|pmid=21233516 |s2cid=11970070 |issn=1077-2626}}&lt;/ref&gt; generating [[distance field]]s,&lt;ref&gt;{{Cite web|last=Golus|first=Ben|date=2021-04-01|title=The Quest for Very Wide Outlines|url=https://bgolus.medium.com/the-quest-for-very-wide-outlines-ba82ed442cd9|access-date=2021-08-19|website=Medium|language=en}}&lt;/ref&gt;{{How|date=August 2021}} [[point-cloud]] rendering,&lt;ref&gt;{{Cite web|last=Farias|first=Renato|date=2014|title=POINT CLOUD RENDERING USING JUMP FLOODING|url=https://www.lcg.ufrj.br/thesis/renato-farias-MSc.pdf}}&lt;/ref&gt; [[feature matching]],&lt;ref&gt;{{Cite book|last1=Yu|first1=Pei|last2=Yang|first2=Xiaokang|last3=Chen|first3=Li|title=Advances on Digital Television and Wireless Multimedia Communications |chapter=Parallel-Friendly Patch Match Based on Jump Flooding |date=2012|editor-last=Zhang|editor-first=Wenjun|editor2-last=Yang|editor2-first=Xiaokang|editor3-last=Xu|editor3-first=Zhixiang|editor4-last=An|editor4-first=Ping|editor5-last=Liu|editor5-first=Qizhen|editor6-last=Lu|editor6-first=Yue|chapter-url=https://link.springer.com/chapter/10.1007/978-3-642-34595-1_3|series=Communications in Computer and Information Science|volume=331|language=en|location=Berlin, Heidelberg|publisher=Springer|pages=15–21|doi=10.1007/978-3-642-34595-1_3|isbn=978-3-642-34595-1}}&lt;/ref&gt; the computation of [[power diagram]]s,&lt;ref&gt;{{Cite journal|last=Zheng|first=Liping|date=2019-05-01|title=GPU-based efficient computation of power diagram|url=https://www.sciencedirect.com/science/article/abs/pii/S0097849319300342|journal=Computers &amp; Graphics|language=en|volume=80|pages=29–36|doi=10.1016/j.cag.2019.03.011|s2cid=131923624 |issn=0097-8493}}&lt;/ref&gt; and [[Soft shadows|soft shadow]] rendering.&lt;ref&gt;{{Cite book|last1=Rong|first1=Guodong|last2=Tan|first2=Tiow-Seng|title=Proceedings of the ACM symposium on Virtual reality software and technology |chapter=Utilizing jump flooding in image-based soft shadows |date=2006-11-01|chapter-url=https://doi.org/10.1145/1180495.1180531|series=VRST '06|location=Limassol, Cyprus|publisher=Association for Computing Machinery|pages=173–180|doi=10.1145/1180495.1180531|isbn=978-1-59593-321-8|s2cid=15339123}}&lt;/ref&gt; The [[Grand strategy wargame|grand strategy game]] developer [[Paradox Interactive]] uses the JFA to render borders between countries and provinces.&lt;ref&gt;{{Cite web|last1=Boczula|first1=Bartosz|last2=Eriksson|first2=Daniel|date=2020|title=Optimized Gradient Border Rendering in Imperator: Rome|url=https://www.intel.com/content/www/us/en/develop/articles/optimized-gradient-border-rendering-in-imperator-rome.html|access-date=2021-03-28|website=Intel|language=en}}&lt;/ref&gt;</div></td> <td class="diff-marker" data-marker="+"></td> <td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div>The jump flooding algorithm and its variants may be used for calculating [[Voronoi map|Voronoi maps]]&lt;ref name=Rong2006/&gt;&lt;ref name=Rong2007&gt;{{Cite book|last1=Rong|first1=Guodong|last2=Tan|first2=Tiow-Seng|title=4th International Symposium on Voronoi Diagrams in Science and Engineering (ISVD 2007) |chapter=Variants of Jump Flooding Algorithm for Computing Discrete Voronoi Diagrams |date=July 2007|chapter-url=https://ieeexplore.ieee.org/document/4276119|pages=176–181|doi=10.1109/ISVD.2007.41|isbn=978-0-7695-2869-4|s2cid=386735}}&lt;/ref&gt; and [[centroidal Voronoi tessellation]]s (CVT),&lt;ref&gt;{{Cite journal|last1=Guodong Rong|last2=Yang Liu|last3=Wenping Wang|last4=Xiaotian Yin|last5=Gu|first5=X D|last6=Xiaohu Guo|date=2011-03-25|title=GPU-Assisted Computation of Centroidal Voronoi Tessellation|url=https://ieeexplore.ieee.org/document/5438988|journal=IEEE Transactions on Visualization and Computer Graphics|volume=17|issue=3|pages=345–356|doi=10.1109/TVCG.2010.53|pmid=21233516 |s2cid=11970070 |issn=1077-2626<ins style="font-weight: bold; text-decoration: none;">|hdl=10722/132211|hdl-access=free</ins>}}&lt;/ref&gt; generating [[distance field]]s,&lt;ref&gt;{{Cite web|last=Golus|first=Ben|date=2021-04-01|title=The Quest for Very Wide Outlines|url=https://bgolus.medium.com/the-quest-for-very-wide-outlines-ba82ed442cd9|access-date=2021-08-19|website=Medium|language=en}}&lt;/ref&gt;{{How|date=August 2021}} [[point-cloud]] rendering,&lt;ref&gt;{{Cite web|last=Farias|first=Renato|date=2014|title=POINT CLOUD RENDERING USING JUMP FLOODING|url=https://www.lcg.ufrj.br/thesis/renato-farias-MSc.pdf}}&lt;/ref&gt; [[feature matching]],&lt;ref&gt;{{Cite book|last1=Yu|first1=Pei|last2=Yang|first2=Xiaokang|last3=Chen|first3=Li|title=Advances on Digital Television and Wireless Multimedia Communications |chapter=Parallel-Friendly Patch Match Based on Jump Flooding |date=2012|editor-last=Zhang|editor-first=Wenjun|editor2-last=Yang|editor2-first=Xiaokang|editor3-last=Xu|editor3-first=Zhixiang|editor4-last=An|editor4-first=Ping|editor5-last=Liu|editor5-first=Qizhen|editor6-last=Lu|editor6-first=Yue|chapter-url=https://link.springer.com/chapter/10.1007/978-3-642-34595-1_3|series=Communications in Computer and Information Science|volume=331|language=en|location=Berlin, Heidelberg|publisher=Springer|pages=15–21|doi=10.1007/978-3-642-34595-1_3|isbn=978-3-642-34595-1}}&lt;/ref&gt; the computation of [[power diagram]]s,&lt;ref&gt;{{Cite journal|last=Zheng|first=Liping|date=2019-05-01|title=GPU-based efficient computation of power diagram|url=https://www.sciencedirect.com/science/article/abs/pii/S0097849319300342|journal=Computers &amp; Graphics|language=en|volume=80|pages=29–36|doi=10.1016/j.cag.2019.03.011|s2cid=131923624 |issn=0097-8493}}&lt;/ref&gt; and [[Soft shadows|soft shadow]] rendering.&lt;ref&gt;{{Cite book|last1=Rong|first1=Guodong|last2=Tan|first2=Tiow-Seng|title=Proceedings of the ACM symposium on Virtual reality software and technology |chapter=Utilizing jump flooding in image-based soft shadows |date=2006-11-01|chapter-url=https://doi.org/10.1145/1180495.1180531|series=VRST '06|location=Limassol, Cyprus|publisher=Association for Computing Machinery|pages=173–180|doi=10.1145/1180495.1180531|isbn=978-1-59593-321-8|s2cid=15339123}}&lt;/ref&gt; The [[Grand strategy wargame|grand strategy game]] developer [[Paradox Interactive]] uses the JFA to render borders between countries and provinces.&lt;ref&gt;{{Cite web|last1=Boczula|first1=Bartosz|last2=Eriksson|first2=Daniel|date=2020|title=Optimized Gradient Border Rendering in Imperator: Rome|url=https://www.intel.com/content/www/us/en/develop/articles/optimized-gradient-border-rendering-in-imperator-rome.html|access-date=2021-03-28|website=Intel|language=en}}&lt;/ref&gt;</div></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>== Further developments ==</div></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>== Further developments ==</div></td> </tr> </table> OAbot https://en.wikipedia.org/w/index.php?title=Jump_flooding_algorithm&diff=1177572470&oldid=prev 135.180.48.179 at 06:55, 28 September 2023 2023-09-28T06:55:49Z <p></p> <table style="background-color: #fff; color: #202122;" data-mw="interface"> <col class="diff-marker" /> <col class="diff-content" /> <col class="diff-marker" /> <col class="diff-content" /> <tr class="diff-title" lang="en"> <td colspan="2" style="background-color: #fff; color: #202122; text-align: center;">← Previous revision</td> <td colspan="2" style="background-color: #fff; color: #202122; text-align: center;">Revision as of 06:55, 28 September 2023</td> </tr><tr> <td colspan="2" class="diff-lineno">Line 1:</td> <td colspan="2" class="diff-lineno">Line 1:</td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>{{Short description|Class of algorithms used for computing distance-related functions}}</div></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>{{Short description|Class of algorithms used for computing distance-related functions}}</div></td> </tr> <tr> <td class="diff-marker" data-marker="−"></td> <td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div>The '''jump flooding algorithm''' ('''JFA''') is a [[flooding algorithm]] used in the construction of [[Voronoi diagram]]s and [[Distance transform|distance transforms]]. The JFA was introduced at an [[Association for Computing Machinery|ACM]] symposium in 2006.&lt;ref name=Rong2006&gt;{{Cite book|last1=Rong|first1=Guodong|last2=Tan|first2=Tiow-Seng|title=Proceedings of the 2006 symposium on Interactive 3D graphics and games - SI3D '06 |chapter=Jump flooding in GPU with applications to Voronoi diagram and distance transform |date=2006-03-14|chapter-url=https://www.comp.nus.edu.sg/~tants/jfa/i3d06.pdf|location=Redwood City, California|publisher=Association for Computing Machinery|pages=109–116|doi=10.1145/1111411.1111431|isbn=978-1-59593-295-2|s2cid=7282879}}&lt;/ref&gt;</div></td> <td class="diff-marker" data-marker="+"></td> <td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div>The '''jump flooding algorithm''' ('''JFA''') is a [[flooding algorithm]] used in the construction of [[Voronoi diagram]]s and [[Distance transform|distance transforms]]. The JFA was introduced<ins style="font-weight: bold; text-decoration: none;"> by Rong Guodong</ins> at an [[Association for Computing Machinery|ACM]] symposium in 2006.&lt;ref name=Rong2006&gt;{{Cite book|last1=Rong|first1=Guodong|last2=Tan|first2=Tiow-Seng|title=Proceedings of the 2006 symposium on Interactive 3D graphics and games - SI3D '06 |chapter=Jump flooding in GPU with applications to Voronoi diagram and distance transform |date=2006-03-14|chapter-url=https://www.comp.nus.edu.sg/~tants/jfa/i3d06.pdf|location=Redwood City, California|publisher=Association for Computing Machinery|pages=109–116|doi=10.1145/1111411.1111431|isbn=978-1-59593-295-2|s2cid=7282879}}&lt;/ref&gt;</div></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>The JFA has desirable attributes in [[GPU]] computation, notably constant-time performance. However, it is only an approximate algorithm and does not always compute the correct result for every pixel, although in practice errors are few and the magnitude of errors is generally small.&lt;ref name=Rong2006/&gt;</div></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>The JFA has desirable attributes in [[GPU]] computation, notably constant-time performance. However, it is only an approximate algorithm and does not always compute the correct result for every pixel, although in practice errors are few and the magnitude of errors is generally small.&lt;ref name=Rong2006/&gt;</div></td> </tr> </table> 135.180.48.179 https://en.wikipedia.org/w/index.php?title=Jump_flooding_algorithm&diff=1177331419&oldid=prev Citation bot: Removed parameters. | Use this bot. Report bugs. | #UCB_CommandLine 2023-09-27T06:04:08Z <p>Removed parameters. | <a href="/wiki/Wikipedia:UCB" class="mw-redirect" title="Wikipedia:UCB">Use this bot</a>. <a href="/wiki/Wikipedia:DBUG" class="mw-redirect" title="Wikipedia:DBUG">Report bugs</a>. | #UCB_CommandLine</p> <table style="background-color: #fff; color: #202122;" data-mw="interface"> <col class="diff-marker" /> <col class="diff-content" /> <col class="diff-marker" /> <col class="diff-content" /> <tr class="diff-title" lang="en"> <td colspan="2" style="background-color: #fff; color: #202122; text-align: center;">← Previous revision</td> <td colspan="2" style="background-color: #fff; color: #202122; text-align: center;">Revision as of 06:04, 27 September 2023</td> </tr><tr> <td colspan="2" class="diff-lineno">Line 29:</td> <td colspan="2" class="diff-lineno">Line 29:</td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>== Uses ==</div></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>== Uses ==</div></td> </tr> <tr> <td class="diff-marker" data-marker="−"></td> <td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div>The jump flooding algorithm and its variants may be used for calculating [[Voronoi map|Voronoi maps]]&lt;ref name=Rong2006/&gt;&lt;ref name=Rong2007&gt;{{Cite book|last1=Rong|first1=Guodong|last2=Tan|first2=Tiow-Seng|title=4th International Symposium on Voronoi Diagrams in Science and Engineering (ISVD 2007) |chapter=Variants of Jump Flooding Algorithm for Computing Discrete Voronoi Diagrams |date=July 2007|chapter-url=https://ieeexplore.ieee.org/document/4276119|pages=176–181|doi=10.1109/ISVD.2007.41|isbn=978-0-7695-2869-4|s2cid=386735}}&lt;/ref&gt; and [[centroidal Voronoi tessellation]]s (CVT),&lt;ref&gt;{{Cite journal|last1=Guodong Rong|last2=Yang Liu|last3=Wenping Wang|last4=Xiaotian Yin|last5=Gu|first5=X D|last6=Xiaohu Guo|date=2011-03-25|title=GPU-Assisted Computation of Centroidal Voronoi Tessellation|url=https://ieeexplore.ieee.org/document/5438988|journal=IEEE Transactions on Visualization and Computer Graphics|volume=17|issue=3|pages=345–356|doi=10.1109/TVCG.2010.53|pmid=21233516 |s2cid=11970070 |issn=1077-2626}}&lt;/ref&gt; generating [[distance field]]s,&lt;ref&gt;{{Cite web|last=Golus|first=Ben|date=2021-04-01|title=The Quest for Very Wide Outlines|url=https://bgolus.medium.com/the-quest-for-very-wide-outlines-ba82ed442cd9|access-date=2021-08-19|website=Medium|language=en}}&lt;/ref&gt;{{How|date=August 2021}} [[point-cloud]] rendering,&lt;ref&gt;{{Cite web|last=Farias|first=Renato|date=2014|title=POINT CLOUD RENDERING USING JUMP FLOODING|url=https://www.lcg.ufrj.br/thesis/renato-farias-MSc.pdf<del style="font-weight: bold; text-decoration: none;">|url-status=live</del>}}&lt;/ref&gt; [[feature matching]],&lt;ref&gt;{{Cite book|last1=Yu|first1=Pei|last2=Yang|first2=Xiaokang|last3=Chen|first3=Li|title=Advances on Digital Television and Wireless Multimedia Communications |chapter=Parallel-Friendly Patch Match Based on Jump Flooding |date=2012|editor-last=Zhang|editor-first=Wenjun|editor2-last=Yang|editor2-first=Xiaokang|editor3-last=Xu|editor3-first=Zhixiang|editor4-last=An|editor4-first=Ping|editor5-last=Liu|editor5-first=Qizhen|editor6-last=Lu|editor6-first=Yue|chapter-url=https://link.springer.com/chapter/10.1007/978-3-642-34595-1_3|series=Communications in Computer and Information Science|volume=331|language=en|location=Berlin, Heidelberg|publisher=Springer|pages=15–21|doi=10.1007/978-3-642-34595-1_3|isbn=978-3-642-34595-1}}&lt;/ref&gt; the computation of [[power diagram]]s,&lt;ref&gt;{{Cite journal|last=Zheng|first=Liping|date=2019-05-01|title=GPU-based efficient computation of power diagram|url=https://www.sciencedirect.com/science/article/abs/pii/S0097849319300342|journal=Computers &amp; Graphics|language=en|volume=80|pages=29–36|doi=10.1016/j.cag.2019.03.011|s2cid=131923624 |issn=0097-8493}}&lt;/ref&gt; and [[Soft shadows|soft shadow]] rendering.&lt;ref&gt;{{Cite book|last1=Rong|first1=Guodong|last2=Tan|first2=Tiow-Seng|title=Proceedings of the ACM symposium on Virtual reality software and technology |chapter=Utilizing jump flooding in image-based soft shadows |date=2006-11-01|chapter-url=https://doi.org/10.1145/1180495.1180531|series=VRST '06|location=Limassol, Cyprus|publisher=Association for Computing Machinery|pages=173–180|doi=10.1145/1180495.1180531|isbn=978-1-59593-321-8|s2cid=15339123}}&lt;/ref&gt; The [[Grand strategy wargame|grand strategy game]] developer [[Paradox Interactive]] uses the JFA to render borders between countries and provinces.&lt;ref&gt;{{Cite web|last1=Boczula|first1=Bartosz|last2=Eriksson|first2=Daniel|date=2020|title=Optimized Gradient Border Rendering in Imperator: Rome|url=https://www.intel.com/content/www/us/en/develop/articles/optimized-gradient-border-rendering-in-imperator-rome.html<del style="font-weight: bold; text-decoration: none;">|url-status=live</del>|access-date=2021-03-28|website=Intel|language=en}}&lt;/ref&gt;</div></td> <td class="diff-marker" data-marker="+"></td> <td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div>The jump flooding algorithm and its variants may be used for calculating [[Voronoi map|Voronoi maps]]&lt;ref name=Rong2006/&gt;&lt;ref name=Rong2007&gt;{{Cite book|last1=Rong|first1=Guodong|last2=Tan|first2=Tiow-Seng|title=4th International Symposium on Voronoi Diagrams in Science and Engineering (ISVD 2007) |chapter=Variants of Jump Flooding Algorithm for Computing Discrete Voronoi Diagrams |date=July 2007|chapter-url=https://ieeexplore.ieee.org/document/4276119|pages=176–181|doi=10.1109/ISVD.2007.41|isbn=978-0-7695-2869-4|s2cid=386735}}&lt;/ref&gt; and [[centroidal Voronoi tessellation]]s (CVT),&lt;ref&gt;{{Cite journal|last1=Guodong Rong|last2=Yang Liu|last3=Wenping Wang|last4=Xiaotian Yin|last5=Gu|first5=X D|last6=Xiaohu Guo|date=2011-03-25|title=GPU-Assisted Computation of Centroidal Voronoi Tessellation|url=https://ieeexplore.ieee.org/document/5438988|journal=IEEE Transactions on Visualization and Computer Graphics|volume=17|issue=3|pages=345–356|doi=10.1109/TVCG.2010.53|pmid=21233516 |s2cid=11970070 |issn=1077-2626}}&lt;/ref&gt; generating [[distance field]]s,&lt;ref&gt;{{Cite web|last=Golus|first=Ben|date=2021-04-01|title=The Quest for Very Wide Outlines|url=https://bgolus.medium.com/the-quest-for-very-wide-outlines-ba82ed442cd9|access-date=2021-08-19|website=Medium|language=en}}&lt;/ref&gt;{{How|date=August 2021}} [[point-cloud]] rendering,&lt;ref&gt;{{Cite web|last=Farias|first=Renato|date=2014|title=POINT CLOUD RENDERING USING JUMP FLOODING|url=https://www.lcg.ufrj.br/thesis/renato-farias-MSc.pdf}}&lt;/ref&gt; [[feature matching]],&lt;ref&gt;{{Cite book|last1=Yu|first1=Pei|last2=Yang|first2=Xiaokang|last3=Chen|first3=Li|title=Advances on Digital Television and Wireless Multimedia Communications |chapter=Parallel-Friendly Patch Match Based on Jump Flooding |date=2012|editor-last=Zhang|editor-first=Wenjun|editor2-last=Yang|editor2-first=Xiaokang|editor3-last=Xu|editor3-first=Zhixiang|editor4-last=An|editor4-first=Ping|editor5-last=Liu|editor5-first=Qizhen|editor6-last=Lu|editor6-first=Yue|chapter-url=https://link.springer.com/chapter/10.1007/978-3-642-34595-1_3|series=Communications in Computer and Information Science|volume=331|language=en|location=Berlin, Heidelberg|publisher=Springer|pages=15–21|doi=10.1007/978-3-642-34595-1_3|isbn=978-3-642-34595-1}}&lt;/ref&gt; the computation of [[power diagram]]s,&lt;ref&gt;{{Cite journal|last=Zheng|first=Liping|date=2019-05-01|title=GPU-based efficient computation of power diagram|url=https://www.sciencedirect.com/science/article/abs/pii/S0097849319300342|journal=Computers &amp; Graphics|language=en|volume=80|pages=29–36|doi=10.1016/j.cag.2019.03.011|s2cid=131923624 |issn=0097-8493}}&lt;/ref&gt; and [[Soft shadows|soft shadow]] rendering.&lt;ref&gt;{{Cite book|last1=Rong|first1=Guodong|last2=Tan|first2=Tiow-Seng|title=Proceedings of the ACM symposium on Virtual reality software and technology |chapter=Utilizing jump flooding in image-based soft shadows |date=2006-11-01|chapter-url=https://doi.org/10.1145/1180495.1180531|series=VRST '06|location=Limassol, Cyprus|publisher=Association for Computing Machinery|pages=173–180|doi=10.1145/1180495.1180531|isbn=978-1-59593-321-8|s2cid=15339123}}&lt;/ref&gt; The [[Grand strategy wargame|grand strategy game]] developer [[Paradox Interactive]] uses the JFA to render borders between countries and provinces.&lt;ref&gt;{{Cite web|last1=Boczula|first1=Bartosz|last2=Eriksson|first2=Daniel|date=2020|title=Optimized Gradient Border Rendering in Imperator: Rome|url=https://www.intel.com/content/www/us/en/develop/articles/optimized-gradient-border-rendering-in-imperator-rome.html|access-date=2021-03-28|website=Intel|language=en}}&lt;/ref&gt;</div></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>== Further developments ==</div></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>== Further developments ==</div></td> </tr> </table> Citation bot https://en.wikipedia.org/w/index.php?title=Jump_flooding_algorithm&diff=1175679369&oldid=prev 24.240.41.171: Fixed incorrect time-complexity 2023-09-16T17:23:28Z <p>Fixed incorrect time-complexity</p> <table style="background-color: #fff; color: #202122;" data-mw="interface"> <col class="diff-marker" /> <col class="diff-content" /> <col class="diff-marker" /> <col class="diff-content" /> <tr class="diff-title" lang="en"> <td colspan="2" style="background-color: #fff; color: #202122; text-align: center;">← Previous revision</td> <td colspan="2" style="background-color: #fff; color: #202122; text-align: center;">Revision as of 17:23, 16 September 2023</td> </tr><tr> <td colspan="2" class="diff-lineno">Line 18:</td> <td colspan="2" class="diff-lineno">Line 18:</td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>Note that pixels may change color more than once in each step, and that the JFA does not specify a method for resolving cases where distances are equal, therefore the last-checked pixel's color is used above.</div></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>Note that pixels may change color more than once in each step, and that the JFA does not specify a method for resolving cases where distances are equal, therefore the last-checked pixel's color is used above.</div></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> </tr> <tr> <td class="diff-marker" data-marker="−"></td> <td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div>The JFA finishes after evaluating the last pixel in the last step size. Regardless of the content of the initial data, the innermost loop runs a total of &lt;math&gt;9 \log_2(N)&lt;/math&gt; times over each pixel, for an overall computational complexity of &lt;math&gt;O(N<del style="font-weight: bold; text-decoration: none;">^2</del> \log_2(N))&lt;/math&gt;.</div></td> <td class="diff-marker" data-marker="+"></td> <td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div>The JFA finishes after evaluating the last pixel in the last step size. Regardless of the content of the initial data, the innermost loop runs a total of &lt;math&gt;9 \log_2(N)&lt;/math&gt; times over each pixel, for an overall computational complexity of &lt;math&gt;O(N \log_2(N))&lt;/math&gt;.</div></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>=== Variants ===</div></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>=== Variants ===</div></td> </tr> </table> 24.240.41.171 https://en.wikipedia.org/w/index.php?title=Jump_flooding_algorithm&diff=1173787516&oldid=prev Citation bot: Alter: title, template type. Add: chapter-url, chapter. Removed or converted URL. Removed parameters. Some additions/deletions were parameter name changes. | Use this bot. Report bugs. | Suggested by Headbomb | #UCB_toolbar 2023-09-04T11:41:01Z <p>Alter: title, template type. Add: chapter-url, chapter. Removed or converted URL. Removed parameters. Some additions/deletions were parameter name changes. | <a href="/wiki/Wikipedia:UCB" class="mw-redirect" title="Wikipedia:UCB">Use this bot</a>. <a href="/wiki/Wikipedia:DBUG" class="mw-redirect" title="Wikipedia:DBUG">Report bugs</a>. | Suggested by Headbomb | #UCB_toolbar</p> <table style="background-color: #fff; color: #202122;" data-mw="interface"> <col class="diff-marker" /> <col class="diff-content" /> <col class="diff-marker" /> <col class="diff-content" /> <tr class="diff-title" lang="en"> <td colspan="2" style="background-color: #fff; color: #202122; text-align: center;">← Previous revision</td> <td colspan="2" style="background-color: #fff; color: #202122; text-align: center;">Revision as of 11:41, 4 September 2023</td> </tr><tr> <td colspan="2" class="diff-lineno">Line 1:</td> <td colspan="2" class="diff-lineno">Line 1:</td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>{{Short description|Class of algorithms used for computing distance-related functions}}</div></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>{{Short description|Class of algorithms used for computing distance-related functions}}</div></td> </tr> <tr> <td class="diff-marker" data-marker="−"></td> <td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div>The '''jump flooding algorithm''' ('''JFA''') is a [[flooding algorithm]] used in the construction of [[Voronoi diagram]]s and [[Distance transform|distance transforms]]. The JFA was introduced at an [[Association for Computing Machinery|ACM]] symposium in 2006.&lt;ref name=Rong2006&gt;{{Cite book|last1=Rong|first1=Guodong|last2=Tan|first2=Tiow-Seng|title=Proceedings of the 2006 symposium on Interactive 3D graphics and games - SI3D '06 |chapter=Jump flooding in GPU with applications to Voronoi diagram and distance transform |date=2006-03-14|chapter-url=https://www.comp.nus.edu.sg/~tants/jfa/i3d06.pdf<del style="font-weight: bold; text-decoration: none;">|series=I3D '06</del>|location=Redwood City, California|publisher=Association for Computing Machinery|pages=109–116|doi=10.1145/1111411.1111431|isbn=978-1-59593-295-2|s2cid=7282879}}&lt;/ref&gt;</div></td> <td class="diff-marker" data-marker="+"></td> <td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div>The '''jump flooding algorithm''' ('''JFA''') is a [[flooding algorithm]] used in the construction of [[Voronoi diagram]]s and [[Distance transform|distance transforms]]. The JFA was introduced at an [[Association for Computing Machinery|ACM]] symposium in 2006.&lt;ref name=Rong2006&gt;{{Cite book|last1=Rong|first1=Guodong|last2=Tan|first2=Tiow-Seng|title=Proceedings of the 2006 symposium on Interactive 3D graphics and games - SI3D '06 |chapter=Jump flooding in GPU with applications to Voronoi diagram and distance transform |date=2006-03-14|chapter-url=https://www.comp.nus.edu.sg/~tants/jfa/i3d06.pdf|location=Redwood City, California|publisher=Association for Computing Machinery|pages=109–116|doi=10.1145/1111411.1111431|isbn=978-1-59593-295-2|s2cid=7282879}}&lt;/ref&gt;</div></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>The JFA has desirable attributes in [[GPU]] computation, notably constant-time performance. However, it is only an approximate algorithm and does not always compute the correct result for every pixel, although in practice errors are few and the magnitude of errors is generally small.&lt;ref name=Rong2006/&gt;</div></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>The JFA has desirable attributes in [[GPU]] computation, notably constant-time performance. However, it is only an approximate algorithm and does not always compute the correct result for every pixel, although in practice errors are few and the magnitude of errors is generally small.&lt;ref name=Rong2006/&gt;</div></td> </tr> <tr> <td colspan="2" class="diff-lineno">Line 29:</td> <td colspan="2" class="diff-lineno">Line 29:</td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>== Uses ==</div></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>== Uses ==</div></td> </tr> <tr> <td class="diff-marker" data-marker="−"></td> <td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div>The jump flooding algorithm and its variants may be used for calculating [[Voronoi map|Voronoi maps]]&lt;ref name=Rong2006/&gt;&lt;ref name=Rong2007&gt;{{Cite book|last1=Rong|first1=Guodong|last2=Tan|first2=Tiow-Seng|title=4th International Symposium on Voronoi Diagrams in Science and Engineering (ISVD 2007) |chapter=Variants of Jump Flooding Algorithm for Computing Discrete Voronoi Diagrams |date=July 2007|chapter-url=https://ieeexplore.ieee.org/document/4276119|pages=176–181|doi=10.1109/ISVD.2007.41|isbn=978-0-7695-2869-4|s2cid=386735}}&lt;/ref&gt; and [[centroidal Voronoi tessellation]]s (CVT),&lt;ref&gt;{{Cite journal|last1=Guodong Rong|last2=Yang Liu|last3=Wenping Wang|last4=Xiaotian Yin|last5=Gu|first5=X D|last6=Xiaohu Guo|date=2011-03-25|title=GPU-Assisted Computation of Centroidal Voronoi Tessellation|url=https://ieeexplore.ieee.org/document/5438988|journal=IEEE Transactions on Visualization and Computer Graphics|volume=17|issue=3|pages=345–356|doi=10.1109/TVCG.2010.53|pmid=21233516 |s2cid=11970070 |issn=1077-2626}}&lt;/ref&gt; generating [[distance field]]s,&lt;ref&gt;{{Cite web|last=Golus|first=Ben|date=2021-04-01|title=The Quest for Very Wide Outlines|url=https://bgolus.medium.com/the-quest-for-very-wide-outlines-ba82ed442cd9|access-date=2021-08-19|website=Medium|language=en}}&lt;/ref&gt;{{How|date=August 2021}} [[point-cloud]] rendering,&lt;ref&gt;{{Cite web|last=Farias|first=Renato|date=2014|title=POINT CLOUD RENDERING USING JUMP FLOODING|url=https://www.lcg.ufrj.br/thesis/renato-farias-MSc.pdf|url-status=live}}&lt;/ref&gt; [[feature matching]],&lt;ref&gt;{{Cite <del style="font-weight: bold; text-decoration: none;">journal</del>|last1=Yu|first1=Pei|last2=Yang|first2=Xiaokang|last3=Chen|first3=Li|date=2012|editor-last=Zhang|editor-first=Wenjun|editor2-last=Yang|editor2-first=Xiaokang|editor3-last=Xu|editor3-first=Zhixiang|editor4-last=An|editor4-first=Ping|editor5-last=Liu|editor5-first=Qizhen|editor6-last=Lu|editor6-first=Yue|<del style="font-weight: bold; text-decoration: none;">title=Parallel</del>-<del style="font-weight: bold; text-decoration: none;">Friendly Patch Match Based on Jump Flooding|</del>url=https://link.springer.com/chapter/10.1007/978-3-642-34595-1_3<del style="font-weight: bold; text-decoration: none;">|journal=Advances on Digital Television and Wireless Multimedia Communications</del>|series=Communications in Computer and Information Science|volume=331|language=en|location=Berlin, Heidelberg|publisher=Springer|pages=15–21|doi=10.1007/978-3-642-34595-1_3|isbn=978-3-642-34595-1}}&lt;/ref&gt; the computation of [[power diagram]]s,&lt;ref&gt;{{Cite journal|last=Zheng|first=Liping|date=2019-05-01|title=GPU-based efficient computation of power diagram|url=https://www.sciencedirect.com/science/article/abs/pii/S0097849319300342|journal=Computers &amp; Graphics|language=en|volume=80|pages=29–36|doi=10.1016/j.cag.2019.03.011|s2cid=131923624 |issn=0097-8493}}&lt;/ref&gt; and [[Soft shadows|soft shadow]] rendering.&lt;ref&gt;{{Cite book|last1=Rong|first1=Guodong|last2=Tan|first2=Tiow-Seng|title=Proceedings of the ACM symposium on Virtual reality software and technology |chapter=Utilizing jump flooding in image-based soft shadows |date=2006-11-01|chapter-url=https://doi.org/10.1145/1180495.1180531|series=VRST '06|location=Limassol, Cyprus|publisher=Association for Computing Machinery|pages=173–180|doi=10.1145/1180495.1180531|isbn=978-1-59593-321-8|s2cid=15339123}}&lt;/ref&gt; The [[Grand strategy wargame|grand strategy game]] developer [[Paradox Interactive]] uses the JFA to render borders between countries and provinces.&lt;ref&gt;{{Cite web|last1=Boczula|first1=Bartosz|last2=Eriksson|first2=Daniel|date=2020|title=Optimized Gradient Border Rendering in Imperator: Rome|url=https://www.intel.com/content/www/us/en/develop/articles/optimized-gradient-border-rendering-in-imperator-rome.html|url-status=live|access-date=2021-03-28|website=Intel|language=en}}&lt;/ref&gt;</div></td> <td class="diff-marker" data-marker="+"></td> <td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div>The jump flooding algorithm and its variants may be used for calculating [[Voronoi map|Voronoi maps]]&lt;ref name=Rong2006/&gt;&lt;ref name=Rong2007&gt;{{Cite book|last1=Rong|first1=Guodong|last2=Tan|first2=Tiow-Seng|title=4th International Symposium on Voronoi Diagrams in Science and Engineering (ISVD 2007) |chapter=Variants of Jump Flooding Algorithm for Computing Discrete Voronoi Diagrams |date=July 2007|chapter-url=https://ieeexplore.ieee.org/document/4276119|pages=176–181|doi=10.1109/ISVD.2007.41|isbn=978-0-7695-2869-4|s2cid=386735}}&lt;/ref&gt; and [[centroidal Voronoi tessellation]]s (CVT),&lt;ref&gt;{{Cite journal|last1=Guodong Rong|last2=Yang Liu|last3=Wenping Wang|last4=Xiaotian Yin|last5=Gu|first5=X D|last6=Xiaohu Guo|date=2011-03-25|title=GPU-Assisted Computation of Centroidal Voronoi Tessellation|url=https://ieeexplore.ieee.org/document/5438988|journal=IEEE Transactions on Visualization and Computer Graphics|volume=17|issue=3|pages=345–356|doi=10.1109/TVCG.2010.53|pmid=21233516 |s2cid=11970070 |issn=1077-2626}}&lt;/ref&gt; generating [[distance field]]s,&lt;ref&gt;{{Cite web|last=Golus|first=Ben|date=2021-04-01|title=The Quest for Very Wide Outlines|url=https://bgolus.medium.com/the-quest-for-very-wide-outlines-ba82ed442cd9|access-date=2021-08-19|website=Medium|language=en}}&lt;/ref&gt;{{How|date=August 2021}} [[point-cloud]] rendering,&lt;ref&gt;{{Cite web|last=Farias|first=Renato|date=2014|title=POINT CLOUD RENDERING USING JUMP FLOODING|url=https://www.lcg.ufrj.br/thesis/renato-farias-MSc.pdf|url-status=live}}&lt;/ref&gt; [[feature matching]],&lt;ref&gt;{{Cite <ins style="font-weight: bold; text-decoration: none;">book</ins>|last1=Yu|first1=Pei|last2=Yang|first2=Xiaokang|last3=Chen|first3=Li<ins style="font-weight: bold; text-decoration: none;">|title=Advances on Digital Television and Wireless Multimedia Communications |chapter=Parallel-Friendly Patch Match Based on Jump Flooding </ins>|date=2012|editor-last=Zhang|editor-first=Wenjun|editor2-last=Yang|editor2-first=Xiaokang|editor3-last=Xu|editor3-first=Zhixiang|editor4-last=An|editor4-first=Ping|editor5-last=Liu|editor5-first=Qizhen|editor6-last=Lu|editor6-first=Yue|<ins style="font-weight: bold; text-decoration: none;">chapter</ins>-url=https://link.springer.com/chapter/10.1007/978-3-642-34595-1_3|series=Communications in Computer and Information Science|volume=331|language=en|location=Berlin, Heidelberg|publisher=Springer|pages=15–21|doi=10.1007/978-3-642-34595-1_3|isbn=978-3-642-34595-1}}&lt;/ref&gt; the computation of [[power diagram]]s,&lt;ref&gt;{{Cite journal|last=Zheng|first=Liping|date=2019-05-01|title=GPU-based efficient computation of power diagram|url=https://www.sciencedirect.com/science/article/abs/pii/S0097849319300342|journal=Computers &amp; Graphics|language=en|volume=80|pages=29–36|doi=10.1016/j.cag.2019.03.011|s2cid=131923624 |issn=0097-8493}}&lt;/ref&gt; and [[Soft shadows|soft shadow]] rendering.&lt;ref&gt;{{Cite book|last1=Rong|first1=Guodong|last2=Tan|first2=Tiow-Seng|title=Proceedings of the ACM symposium on Virtual reality software and technology |chapter=Utilizing jump flooding in image-based soft shadows |date=2006-11-01|chapter-url=https://doi.org/10.1145/1180495.1180531|series=VRST '06|location=Limassol, Cyprus|publisher=Association for Computing Machinery|pages=173–180|doi=10.1145/1180495.1180531|isbn=978-1-59593-321-8|s2cid=15339123}}&lt;/ref&gt; The [[Grand strategy wargame|grand strategy game]] developer [[Paradox Interactive]] uses the JFA to render borders between countries and provinces.&lt;ref&gt;{{Cite web|last1=Boczula|first1=Bartosz|last2=Eriksson|first2=Daniel|date=2020|title=Optimized Gradient Border Rendering in Imperator: Rome|url=https://www.intel.com/content/www/us/en/develop/articles/optimized-gradient-border-rendering-in-imperator-rome.html|url-status=live|access-date=2021-03-28|website=Intel|language=en}}&lt;/ref&gt;</div></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>== Further developments ==</div></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>== Further developments ==</div></td> </tr> <tr> <td class="diff-marker" data-marker="−"></td> <td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div>The JFA has inspired the development of numerous similar algorithms. Some have well-defined error properties which make them useful for scientific computing.&lt;ref name=":0"&gt;{{Cite <del style="font-weight: bold; text-decoration: none;">journal</del>|last1=Schneider|first1=Jens|last2=Kraus|first2=Martin|last3=Westermann|first3=Rüdiger|date=2010|editor-last=Ranchordas|editor-first=AlpeshKumar|editor2-last=Pereira|editor2-first=João Madeiras|editor3-last=Araújo|editor3-first=Hélder J.|editor4-last=Tavares|editor4-first=João Manuel R. S.|<del style="font-weight: bold; text-decoration: none;">title=GPU</del>-<del style="font-weight: bold; text-decoration: none;">Based Euclidean Distance Transforms and Their Application to Volume Rendering|</del>url=https://link.springer.com/chapter/10.1007/978-3-642-11840-1_16<del style="font-weight: bold; text-decoration: none;">|journal=Computer Vision, Imaging and Computer Graphics. Theory and Applications</del>|series=Communications in Computer and Information Science|volume=68|language=en|location=Berlin, Heidelberg|publisher=Springer|pages=215–228|doi=10.1007/978-3-642-11840-1_16|isbn=978-3-642-11840-1}}&lt;/ref&gt;</div></td> <td class="diff-marker" data-marker="+"></td> <td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div>The JFA has inspired the development of numerous similar algorithms. Some have well-defined error properties which make them useful for scientific computing.&lt;ref name=":0"&gt;{{Cite <ins style="font-weight: bold; text-decoration: none;">book</ins>|last1=Schneider|first1=Jens|last2=Kraus|first2=Martin|last3=Westermann|first3=Rüdiger<ins style="font-weight: bold; text-decoration: none;">|title=Computer Vision, Imaging and Computer Graphics. Theory and Applications |chapter=GPU-Based Euclidean Distance Transforms and Their Application to Volume Rendering </ins>|date=2010|editor-last=Ranchordas|editor-first=AlpeshKumar|editor2-last=Pereira|editor2-first=João Madeiras|editor3-last=Araújo|editor3-first=Hélder J.|editor4-last=Tavares|editor4-first=João Manuel R. S.|<ins style="font-weight: bold; text-decoration: none;">chapter</ins>-url=https://link.springer.com/chapter/10.1007/978-3-642-11840-1_16|series=Communications in Computer and Information Science|volume=68|language=en|location=Berlin, Heidelberg|publisher=Springer|pages=215–228|doi=10.1007/978-3-642-11840-1_16|isbn=978-3-642-11840-1}}&lt;/ref&gt;</div></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>In the [[computer vision]] domain, the JFA has inspired new [[belief propagation]] algorithms to accelerate the solution of a variety of problems.&lt;ref&gt;{{Cite book|last1=Alchatzidis|first1=Stavros|last2=Sotiras|first2=Aristeidis|last3=Paragios|first3=Nikos|title=2011 International Conference on Computer Vision |chapter=Efficient parallel message computation for MAP inference |date=2011-11-06|chapter-url=https://ieeexplore.ieee.org/document/6126392|pages=1379–1386|doi=10.1109/ICCV.2011.6126392|isbn=978-1-4577-1102-2 |s2cid=17554205 |url=https://hal.archives-ouvertes.fr/hal-00858394/file/PID2005337.pdf }}&lt;/ref&gt;&lt;ref&gt;{{Cite book|last1=Choi|first1=Jungwook|last2=Rutenbar|first2=Rob A.|title=2016 26th International Conference on Field Programmable Logic and Applications (FPL) |chapter=Configurable and scalable belief propagation accelerator for computer vision |date=2016-08-29|chapter-url=https://ieeexplore.ieee.org/document/7577316|pages=1–4|doi=10.1109/FPL.2016.7577316|isbn=978-2-8399-1844-2 |s2cid=10923625 }}&lt;/ref&gt;</div></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>In the [[computer vision]] domain, the JFA has inspired new [[belief propagation]] algorithms to accelerate the solution of a variety of problems.&lt;ref&gt;{{Cite book|last1=Alchatzidis|first1=Stavros|last2=Sotiras|first2=Aristeidis|last3=Paragios|first3=Nikos|title=2011 International Conference on Computer Vision |chapter=Efficient parallel message computation for MAP inference |date=2011-11-06|chapter-url=https://ieeexplore.ieee.org/document/6126392|pages=1379–1386|doi=10.1109/ICCV.2011.6126392|isbn=978-1-4577-1102-2 |s2cid=17554205 |url=https://hal.archives-ouvertes.fr/hal-00858394/file/PID2005337.pdf }}&lt;/ref&gt;&lt;ref&gt;{{Cite book|last1=Choi|first1=Jungwook|last2=Rutenbar|first2=Rob A.|title=2016 26th International Conference on Field Programmable Logic and Applications (FPL) |chapter=Configurable and scalable belief propagation accelerator for computer vision |date=2016-08-29|chapter-url=https://ieeexplore.ieee.org/document/7577316|pages=1–4|doi=10.1109/FPL.2016.7577316|isbn=978-2-8399-1844-2 |s2cid=10923625 }}&lt;/ref&gt;</div></td> </tr> </table> Citation bot