<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>http://bloomwiki.org/index.php?action=history&amp;feed=atom&amp;title=Neural_Radiance_Fields_and_3D_AI</id>
	<title>Neural Radiance Fields and 3D AI - Revision history</title>
	<link rel="self" type="application/atom+xml" href="http://bloomwiki.org/index.php?action=history&amp;feed=atom&amp;title=Neural_Radiance_Fields_and_3D_AI"/>
	<link rel="alternate" type="text/html" href="http://bloomwiki.org/index.php?title=Neural_Radiance_Fields_and_3D_AI&amp;action=history"/>
	<updated>2026-05-06T15:05:51Z</updated>
	<subtitle>Revision history for this page on the wiki</subtitle>
	<generator>MediaWiki 1.43.0</generator>
	<entry>
		<id>http://bloomwiki.org/index.php?title=Neural_Radiance_Fields_and_3D_AI&amp;diff=4461&amp;oldid=prev</id>
		<title>Wordpad: BloomWiki: Neural Radiance Fields and 3D AI</title>
		<link rel="alternate" type="text/html" href="http://bloomwiki.org/index.php?title=Neural_Radiance_Fields_and_3D_AI&amp;diff=4461&amp;oldid=prev"/>
		<updated>2026-04-25T01:54:43Z</updated>

		<summary type="html">&lt;p&gt;BloomWiki: Neural Radiance Fields and 3D AI&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;en&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Revision as of 01:54, 25 April 2026&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l1&quot;&gt;Line 1:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 1:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;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;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&amp;lt;div style=&quot;background-color: #4B0082; color: #FFFFFF; padding: 20px; border-radius: 8px; margin-bottom: 15px;&quot;&amp;gt;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;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;&quot;&gt;&lt;div&gt;{{BloomIntro}}&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;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;&quot;&gt;&lt;div&gt;{{BloomIntro}}&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;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;&quot;&gt;&lt;div&gt;Neural Radiance Fields (NeRF) and 3D AI represent a revolutionary class of techniques that learn to represent, reconstruct, and generate 3D scenes from 2D images. NeRF, introduced in 2020, showed that a simple MLP could represent an entire 3D scene implicitly, enabling photorealistic novel view synthesis from just 20–100 photographs. Since then, the field has exploded: instant-NGP accelerated NeRF by 1000×, Gaussian Splatting replaced MLPs with explicit 3D Gaussians for real-time rendering, and generative models extended these ideas to text-to-3D and 4D dynamic scene modeling.&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;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;&quot;&gt;&lt;div&gt;Neural Radiance Fields (NeRF) and 3D AI represent a revolutionary class of techniques that learn to represent, reconstruct, and generate 3D scenes from 2D images. NeRF, introduced in 2020, showed that a simple MLP could represent an entire 3D scene implicitly, enabling photorealistic novel view synthesis from just 20–100 photographs. Since then, the field has exploded: instant-NGP accelerated NeRF by 1000×, Gaussian Splatting replaced MLPs with explicit 3D Gaussians for real-time rendering, and generative models extended these ideas to text-to-3D and 4D dynamic scene modeling.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;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;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&amp;lt;/div&amp;gt;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;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;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;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;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;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;&quot;&gt;&lt;div&gt;== Remembering ==&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;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;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;__TOC__&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;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;&quot;&gt;&lt;div&gt; &lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;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;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&amp;lt;div style&lt;/ins&gt;=&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&quot;background-color: #000080; color: #FFFFFF; padding: 20px; border-radius: 8px; margin-bottom: 15px;&quot;&amp;gt;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;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;&quot;&gt;&lt;div&gt;=&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;= &amp;lt;span style=&quot;color: #FFFFFF;&quot;&amp;gt;&lt;/ins&gt;Remembering&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&amp;lt;/span&amp;gt; &lt;/ins&gt;==&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;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;&quot;&gt;&lt;div&gt;* &amp;#039;&amp;#039;&amp;#039;Novel view synthesis&amp;#039;&amp;#039;&amp;#039; — Generating photorealistic images of a scene from viewpoints not present in the training images.&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;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;&quot;&gt;&lt;div&gt;* &amp;#039;&amp;#039;&amp;#039;Novel view synthesis&amp;#039;&amp;#039;&amp;#039; — Generating photorealistic images of a scene from viewpoints not present in the training images.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;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;&quot;&gt;&lt;div&gt;* &amp;#039;&amp;#039;&amp;#039;Neural Radiance Field (NeRF)&amp;#039;&amp;#039;&amp;#039; — An implicit neural representation that maps 3D coordinates + viewing direction to color and density.&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;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;&quot;&gt;&lt;div&gt;* &amp;#039;&amp;#039;&amp;#039;Neural Radiance Field (NeRF)&amp;#039;&amp;#039;&amp;#039; — An implicit neural representation that maps 3D coordinates + viewing direction to color and density.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l17&quot;&gt;Line 17:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 22:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;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;&quot;&gt;&lt;div&gt;* &amp;#039;&amp;#039;&amp;#039;4D NeRF&amp;#039;&amp;#039;&amp;#039; — Extending NeRF to dynamic scenes with a time dimension.&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;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;&quot;&gt;&lt;div&gt;* &amp;#039;&amp;#039;&amp;#039;4D NeRF&amp;#039;&amp;#039;&amp;#039; — Extending NeRF to dynamic scenes with a time dimension.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;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;&quot;&gt;&lt;div&gt;* &amp;#039;&amp;#039;&amp;#039;Occupancy networks&amp;#039;&amp;#039;&amp;#039; — Neural networks predicting whether a point in 3D space is inside or outside a shape.&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;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;&quot;&gt;&lt;div&gt;* &amp;#039;&amp;#039;&amp;#039;Occupancy networks&amp;#039;&amp;#039;&amp;#039; — Neural networks predicting whether a point in 3D space is inside or outside a shape.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;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;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&amp;lt;/div&amp;gt;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;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;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;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;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;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;&quot;&gt;&lt;div&gt;== Understanding ==&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;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;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&amp;lt;div style&lt;/ins&gt;=&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&quot;background-color: #006400; color: #FFFFFF; padding: 20px; border-radius: 8px; margin-bottom: 15px;&quot;&amp;gt;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;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;&quot;&gt;&lt;div&gt;=&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;= &amp;lt;span style=&quot;color: #FFFFFF;&quot;&amp;gt;&lt;/ins&gt;Understanding&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&amp;lt;/span&amp;gt; &lt;/ins&gt;==&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;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;&quot;&gt;&lt;div&gt;**The NeRF idea**: Represent a scene as a function f(x,y,z,θ,φ) → (RGB color, density σ), where (x,y,z) is a 3D position and (θ,φ) is a viewing direction. This function is parameterized by a neural network. To render a novel view: for each pixel, cast a ray through the scene, sample points along the ray, query the network for color and density at each point, and integrate (volume rendering) to produce the pixel color. The network is trained on input images with known camera poses by minimizing pixel color reconstruction error.&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;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;&quot;&gt;&lt;div&gt;**The NeRF idea**: Represent a scene as a function f(x,y,z,θ,φ) → (RGB color, density σ), where (x,y,z) is a 3D position and (θ,φ) is a viewing direction. This function is parameterized by a neural network. To render a novel view: for each pixel, cast a ray through the scene, sample points along the ray, query the network for color and density at each point, and integrate (volume rendering) to produce the pixel color. The network is trained on input images with known camera poses by minimizing pixel color reconstruction error.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;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;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;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;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l26&quot;&gt;Line 26:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 33:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;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;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;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;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;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;&quot;&gt;&lt;div&gt;**Text-to-3D** (DreamFusion): Use a 2D diffusion model as a &amp;quot;prior&amp;quot; to supervise NeRF optimization. For each training step: render the NeRF from a random viewpoint; apply the diffusion model&amp;#039;s score function (SDS - Score Distillation Sampling) to push the rendered image toward the text prompt; backpropagate through NeRF. This transfers 2D generative model knowledge to 3D without any 3D training data. Quality is improving rapidly (Shap-E, Zero123, Wonder3D).&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;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;&quot;&gt;&lt;div&gt;**Text-to-3D** (DreamFusion): Use a 2D diffusion model as a &amp;quot;prior&amp;quot; to supervise NeRF optimization. For each training step: render the NeRF from a random viewpoint; apply the diffusion model&amp;#039;s score function (SDS - Score Distillation Sampling) to push the rendered image toward the text prompt; backpropagate through NeRF. This transfers 2D generative model knowledge to 3D without any 3D training data. Quality is improving rapidly (Shap-E, Zero123, Wonder3D).&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;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;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&amp;lt;/div&amp;gt;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;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;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;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;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;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;&quot;&gt;&lt;div&gt;== Applying ==&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;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;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&amp;lt;div style&lt;/ins&gt;=&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&quot;background-color: #8B0000; color: #FFFFFF; padding: 20px; border-radius: 8px; margin-bottom: 15px;&quot;&amp;gt;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;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;&quot;&gt;&lt;div&gt;=&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;= &amp;lt;span style=&quot;color: #FFFFFF;&quot;&amp;gt;&lt;/ins&gt;Applying&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&amp;lt;/span&amp;gt; &lt;/ins&gt;==&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;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;&quot;&gt;&lt;div&gt;&amp;#039;&amp;#039;&amp;#039;3D Gaussian Splatting reconstruction:&amp;#039;&amp;#039;&amp;#039;&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;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;&quot;&gt;&lt;div&gt;&amp;#039;&amp;#039;&amp;#039;3D Gaussian Splatting reconstruction:&amp;#039;&amp;#039;&amp;#039;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;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;&quot;&gt;&lt;div&gt;&amp;lt;syntaxhighlight lang=&amp;quot;python&amp;quot;&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;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;&quot;&gt;&lt;div&gt;&amp;lt;syntaxhighlight lang=&amp;quot;python&amp;quot;&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l75&quot;&gt;Line 75:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 84:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;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;&quot;&gt;&lt;div&gt;: &amp;#039;&amp;#039;&amp;#039;Pose estimation&amp;#039;&amp;#039;&amp;#039; → COLMAP (SfM), PixSFM, HLoc&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;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;&quot;&gt;&lt;div&gt;: &amp;#039;&amp;#039;&amp;#039;Pose estimation&amp;#039;&amp;#039;&amp;#039; → COLMAP (SfM), PixSFM, HLoc&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;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;&quot;&gt;&lt;div&gt;: &amp;#039;&amp;#039;&amp;#039;Real-time rendering&amp;#039;&amp;#039;&amp;#039; → WebGL exports from Gaussian Splatting; NeRF→mesh conversion&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;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;&quot;&gt;&lt;div&gt;: &amp;#039;&amp;#039;&amp;#039;Real-time rendering&amp;#039;&amp;#039;&amp;#039; → WebGL exports from Gaussian Splatting; NeRF→mesh conversion&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;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;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&amp;lt;/div&amp;gt;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;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;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;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;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;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;&quot;&gt;&lt;div&gt;== Analyzing ==&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;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;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&amp;lt;div style&lt;/ins&gt;=&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&quot;background-color: #8B4500; color: #FFFFFF; padding: 20px; border-radius: 8px; margin-bottom: 15px;&quot;&amp;gt;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;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;&quot;&gt;&lt;div&gt;=&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;= &amp;lt;span style=&quot;color: #FFFFFF;&quot;&amp;gt;&lt;/ins&gt;Analyzing&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&amp;lt;/span&amp;gt; &lt;/ins&gt;==&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;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;&quot;&gt;&lt;div&gt;{| class=&amp;quot;wikitable&amp;quot;&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;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;&quot;&gt;&lt;div&gt;{| class=&amp;quot;wikitable&amp;quot;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;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;&quot;&gt;&lt;div&gt;|+ 3D Representation Comparison&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;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;&quot;&gt;&lt;div&gt;|+ 3D Representation Comparison&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l93&quot;&gt;Line 93:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 104:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;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;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;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;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;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;&quot;&gt;&lt;div&gt;&amp;#039;&amp;#039;&amp;#039;Failure modes&amp;#039;&amp;#039;&amp;#039;: NeRF requires accurate camera poses (COLMAP can fail on textureless or reflective scenes). Gaussian Splatting produces floaters (free-floating Gaussians not representing real geometry). Overfitting to input viewpoints — novel views outside training viewpoint range can be poor. Training requires GPU; inference can be CPU-friendly for Gaussians.&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;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;&quot;&gt;&lt;div&gt;&amp;#039;&amp;#039;&amp;#039;Failure modes&amp;#039;&amp;#039;&amp;#039;: NeRF requires accurate camera poses (COLMAP can fail on textureless or reflective scenes). Gaussian Splatting produces floaters (free-floating Gaussians not representing real geometry). Overfitting to input viewpoints — novel views outside training viewpoint range can be poor. Training requires GPU; inference can be CPU-friendly for Gaussians.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;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;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&amp;lt;/div&amp;gt;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;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;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;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;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;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;&quot;&gt;&lt;div&gt;== Evaluating ==&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;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;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&amp;lt;div style&lt;/ins&gt;=&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&quot;background-color: #483D8B; color: #FFFFFF; padding: 20px; border-radius: 8px; margin-bottom: 15px;&quot;&amp;gt;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;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;&quot;&gt;&lt;div&gt;=&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;= &amp;lt;span style=&quot;color: #FFFFFF;&quot;&amp;gt;&lt;/ins&gt;Evaluating&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&amp;lt;/span&amp;gt; &lt;/ins&gt;==&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;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;&quot;&gt;&lt;div&gt;Novel view synthesis evaluation: (1) **PSNR (Peak Signal-to-Noise Ratio)**: measures pixel-level reconstruction quality; higher is better. (2) **SSIM (Structural Similarity Index)**: perceptual quality metric. (3) **LPIPS (Learned Perceptual Image Patch Similarity)**: deep-feature-based perceptual similarity; lower is better. (4) **Standard benchmarks**: Blender synthetic dataset, LLFF (real scenes), Tanks and Temples (outdoor). (5) **Rendering speed**: FPS on target hardware; 3DGS typically achieves 30–150 FPS vs. NeRF&amp;#039;s &amp;lt;1 FPS.&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;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;&quot;&gt;&lt;div&gt;Novel view synthesis evaluation: (1) **PSNR (Peak Signal-to-Noise Ratio)**: measures pixel-level reconstruction quality; higher is better. (2) **SSIM (Structural Similarity Index)**: perceptual quality metric. (3) **LPIPS (Learned Perceptual Image Patch Similarity)**: deep-feature-based perceptual similarity; lower is better. (4) **Standard benchmarks**: Blender synthetic dataset, LLFF (real scenes), Tanks and Temples (outdoor). (5) **Rendering speed**: FPS on target hardware; 3DGS typically achieves 30–150 FPS vs. NeRF&amp;#039;s &amp;lt;1 FPS.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;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;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&amp;lt;/div&amp;gt;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;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;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;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;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;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;&quot;&gt;&lt;div&gt;== Creating ==&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;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;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&amp;lt;div style&lt;/ins&gt;=&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&quot;background-color: #2F4F4F; color: #FFFFFF; padding: 20px; border-radius: 8px; margin-bottom: 15px;&quot;&amp;gt;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;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;&quot;&gt;&lt;div&gt;=&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;= &amp;lt;span style=&quot;color: #FFFFFF;&quot;&amp;gt;&lt;/ins&gt;Creating&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&amp;lt;/span&amp;gt; &lt;/ins&gt;==&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;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;&quot;&gt;&lt;div&gt;Building a 3D capture pipeline: (1) Capture: 50–100 photos orbiting the subject at multiple heights; consistent lighting; avoid reflective/transparent materials. (2) Pose estimation: COLMAP automatic reconstruction; verify alignment quality. (3) Training: use 3DGS (splatfacto in nerfstudio) for best quality-speed tradeoff; 30k iterations. (4) Evaluation: render held-out test views; compute PSNR/LPIPS. (5) Export: convert to web-compatible format (PLY for Gaussians; WebGL/glTF for meshes). (6) Applications: real estate virtual tours, e-commerce 3D product visualization, cultural heritage digitization, VFX asset creation.&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;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;&quot;&gt;&lt;div&gt;Building a 3D capture pipeline: (1) Capture: 50–100 photos orbiting the subject at multiple heights; consistent lighting; avoid reflective/transparent materials. (2) Pose estimation: COLMAP automatic reconstruction; verify alignment quality. (3) Training: use 3DGS (splatfacto in nerfstudio) for best quality-speed tradeoff; 30k iterations. (4) Evaluation: render held-out test views; compute PSNR/LPIPS. (5) Export: convert to web-compatible format (PLY for Gaussians; WebGL/glTF for meshes). (6) Applications: real estate virtual tours, e-commerce 3D product visualization, cultural heritage digitization, VFX asset creation.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;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;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;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;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l103&quot;&gt;Line 103:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 118:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;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;&quot;&gt;&lt;div&gt;[[Category:Computer Vision]]&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;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;&quot;&gt;&lt;div&gt;[[Category:Computer Vision]]&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;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;&quot;&gt;&lt;div&gt;[[Category:3D AI]]&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;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;&quot;&gt;&lt;div&gt;[[Category:3D AI]]&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;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;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&amp;lt;/div&amp;gt;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Wordpad</name></author>
	</entry>
	<entry>
		<id>http://bloomwiki.org/index.php?title=Neural_Radiance_Fields_and_3D_AI&amp;diff=209&amp;oldid=prev</id>
		<title>Wordpad: New BloomWiki article: Neural Radiance Fields and 3D AI</title>
		<link rel="alternate" type="text/html" href="http://bloomwiki.org/index.php?title=Neural_Radiance_Fields_and_3D_AI&amp;diff=209&amp;oldid=prev"/>
		<updated>2026-04-23T08:13:03Z</updated>

		<summary type="html">&lt;p&gt;New BloomWiki article: Neural Radiance Fields and 3D AI&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;{{BloomIntro}}&lt;br /&gt;
Neural Radiance Fields (NeRF) and 3D AI represent a revolutionary class of techniques that learn to represent, reconstruct, and generate 3D scenes from 2D images. NeRF, introduced in 2020, showed that a simple MLP could represent an entire 3D scene implicitly, enabling photorealistic novel view synthesis from just 20–100 photographs. Since then, the field has exploded: instant-NGP accelerated NeRF by 1000×, Gaussian Splatting replaced MLPs with explicit 3D Gaussians for real-time rendering, and generative models extended these ideas to text-to-3D and 4D dynamic scene modeling.&lt;br /&gt;
&lt;br /&gt;
== Remembering ==&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;Novel view synthesis&amp;#039;&amp;#039;&amp;#039; — Generating photorealistic images of a scene from viewpoints not present in the training images.&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;Neural Radiance Field (NeRF)&amp;#039;&amp;#039;&amp;#039; — An implicit neural representation that maps 3D coordinates + viewing direction to color and density.&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;Volume rendering&amp;#039;&amp;#039;&amp;#039; — Integrating color and density along camera rays through the scene to produce 2D images.&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;Implicit neural representation&amp;#039;&amp;#039;&amp;#039; — A neural network representing a continuous signal (scene, shape, image) as a learned function.&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;Gaussian Splatting (3DGS)&amp;#039;&amp;#039;&amp;#039; — Representing a scene as a collection of 3D Gaussian distributions; renders in real time.&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;Point cloud&amp;#039;&amp;#039;&amp;#039; — A set of 3D points representing the surface of an object or scene; simpler than NeRF.&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;Camera pose&amp;#039;&amp;#039;&amp;#039; — The position and orientation of the camera in 3D space; required input for NeRF.&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;Structure from Motion (SfM)&amp;#039;&amp;#039;&amp;#039; — Computer vision technique estimating 3D structure and camera poses from multiple 2D images (COLMAP).&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;Multi-view stereo&amp;#039;&amp;#039;&amp;#039; — Reconstructing 3D geometry from multiple images with known camera poses.&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;Text-to-3D&amp;#039;&amp;#039;&amp;#039; — Generating 3D objects or scenes from text descriptions using AI.&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;DreamFusion&amp;#039;&amp;#039;&amp;#039; — A 2022 Google paper enabling text-to-3D by distilling knowledge from 2D diffusion models into NeRF.&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;Instant-NGP (Instant Neural Graphics Primitives)&amp;#039;&amp;#039;&amp;#039; — NVIDIA&amp;#039;s 2022 acceleration of NeRF using hash-encoded positional embeddings; trains in seconds.&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;4D NeRF&amp;#039;&amp;#039;&amp;#039; — Extending NeRF to dynamic scenes with a time dimension.&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;Occupancy networks&amp;#039;&amp;#039;&amp;#039; — Neural networks predicting whether a point in 3D space is inside or outside a shape.&lt;br /&gt;
&lt;br /&gt;
== Understanding ==&lt;br /&gt;
**The NeRF idea**: Represent a scene as a function f(x,y,z,θ,φ) → (RGB color, density σ), where (x,y,z) is a 3D position and (θ,φ) is a viewing direction. This function is parameterized by a neural network. To render a novel view: for each pixel, cast a ray through the scene, sample points along the ray, query the network for color and density at each point, and integrate (volume rendering) to produce the pixel color. The network is trained on input images with known camera poses by minimizing pixel color reconstruction error.&lt;br /&gt;
&lt;br /&gt;
**Why it&amp;#039;s remarkable**: The network implicitly encodes the geometry, appearance, and lighting of the scene — without any explicit 3D model. Photorealistic novel view synthesis from 20–100 input photographs of a real scene is possible after a few minutes of training.&lt;br /&gt;
&lt;br /&gt;
**Gaussian Splatting** (Kerbl et al., 2023) replaced the implicit MLP with an explicit representation: millions of 3D Gaussian distributions, each with position, covariance (shape), opacity, and color (spherical harmonics for view-dependent appearance). Splatting renders these Gaussians as 2D projections onto the camera plane — far faster than ray marching. Result: real-time rendering of NeRF-quality scenes at 100+ FPS. 3DGS has become the dominant approach for practical applications.&lt;br /&gt;
&lt;br /&gt;
**Text-to-3D** (DreamFusion): Use a 2D diffusion model as a &amp;quot;prior&amp;quot; to supervise NeRF optimization. For each training step: render the NeRF from a random viewpoint; apply the diffusion model&amp;#039;s score function (SDS - Score Distillation Sampling) to push the rendered image toward the text prompt; backpropagate through NeRF. This transfers 2D generative model knowledge to 3D without any 3D training data. Quality is improving rapidly (Shap-E, Zero123, Wonder3D).&lt;br /&gt;
&lt;br /&gt;
== Applying ==&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;3D Gaussian Splatting reconstruction:&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;python&amp;quot;&amp;gt;&lt;br /&gt;
# 3DGS pipeline: capture images → COLMAP poses → train Gaussians → render&lt;br /&gt;
# Using the original 3DGS repository or simplified libraries&lt;br /&gt;
&lt;br /&gt;
# Step 1: Prepare input images and estimate camera poses with COLMAP&lt;br /&gt;
import subprocess&lt;br /&gt;
def run_colmap(image_dir, output_dir):&lt;br /&gt;
    subprocess.run([&amp;quot;colmap&amp;quot;, &amp;quot;automatic_reconstructor&amp;quot;,&lt;br /&gt;
                    &amp;quot;--workspace_path&amp;quot;, output_dir,&lt;br /&gt;
                    &amp;quot;--image_path&amp;quot;, image_dir,&lt;br /&gt;
                    &amp;quot;--camera_model&amp;quot;, &amp;quot;SIMPLE_RADIAL&amp;quot;])&lt;br /&gt;
&lt;br /&gt;
# Step 2: Train 3D Gaussians (using gaussian-splatting library)&lt;br /&gt;
# from gaussian_splatting.train import train_gaussians&lt;br /&gt;
# gaussians = train_gaussians(&lt;br /&gt;
#     colmap_path=&amp;quot;./colmap_output&amp;quot;,&lt;br /&gt;
#     output_path=&amp;quot;./trained_scene&amp;quot;,&lt;br /&gt;
#     iterations=30000,&lt;br /&gt;
# )&lt;br /&gt;
&lt;br /&gt;
# Using nerfstudio for a high-level interface&lt;br /&gt;
def train_nerf_scene(image_dir: str, method: str = &amp;quot;splatfacto&amp;quot;):&lt;br /&gt;
    &amp;quot;&amp;quot;&amp;quot;&lt;br /&gt;
    Train a NeRF or Gaussian Splat scene using nerfstudio.&lt;br /&gt;
    method: &amp;#039;nerfacto&amp;#039; (NeRF), &amp;#039;splatfacto&amp;#039; (Gaussian Splatting)&lt;br /&gt;
    &amp;quot;&amp;quot;&amp;quot;&lt;br /&gt;
    # ns-process-data images --data {image_dir} --output-dir data/processed&lt;br /&gt;
    # ns-train {method} --data data/processed&lt;br /&gt;
    # ns-render camera-path --load-config outputs/*/config.yml \&lt;br /&gt;
    #     --camera-path-filename camera_path.json --output-path render.mp4&lt;br /&gt;
    pass&lt;br /&gt;
&lt;br /&gt;
# Instant-NGP training (much faster alternative)&lt;br /&gt;
# import pyngp as ngp&lt;br /&gt;
# testbed = ngp.Testbed()&lt;br /&gt;
# testbed.load_training_data(&amp;quot;./transforms.json&amp;quot;)  # COLMAP → transforms format&lt;br /&gt;
# testbed.train(1000)  # Trains in seconds!&lt;br /&gt;
# image = testbed.render(width=1920, height=1080)&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
; 3D AI tools and frameworks&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;NeRF training&amp;#039;&amp;#039;&amp;#039; → Nerfstudio (nerfacto, splatfacto), Instant-NGP (NVIDIA)&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;3D Gaussian Splatting&amp;#039;&amp;#039;&amp;#039; → Original 3DGS, Gaussian Opacity Fields, Mip-Splatting&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Text-to-3D&amp;#039;&amp;#039;&amp;#039; → Shap-E (OpenAI), Wonder3D, Zero123, DreamFusion&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Pose estimation&amp;#039;&amp;#039;&amp;#039; → COLMAP (SfM), PixSFM, HLoc&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Real-time rendering&amp;#039;&amp;#039;&amp;#039; → WebGL exports from Gaussian Splatting; NeRF→mesh conversion&lt;br /&gt;
&lt;br /&gt;
== Analyzing ==&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+ 3D Representation Comparison&lt;br /&gt;
! Method !! Rendering Quality !! Training Speed !! Render Speed !! Editability&lt;br /&gt;
|-&lt;br /&gt;
| Classic NeRF || High || Hours || Slow (seconds/frame) || Low&lt;br /&gt;
|-&lt;br /&gt;
| Instant-NGP || High || Seconds-minutes || ~10 FPS || Low&lt;br /&gt;
|-&lt;br /&gt;
| 3D Gaussian Splatting || Very high || Minutes || Real-time (100+ FPS) || Medium&lt;br /&gt;
|-&lt;br /&gt;
| Mesh (traditional) || Medium || N/A (manual) || Very fast || High&lt;br /&gt;
|-&lt;br /&gt;
| Point cloud || Low || Fast || Fast || High&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Failure modes&amp;#039;&amp;#039;&amp;#039;: NeRF requires accurate camera poses (COLMAP can fail on textureless or reflective scenes). Gaussian Splatting produces floaters (free-floating Gaussians not representing real geometry). Overfitting to input viewpoints — novel views outside training viewpoint range can be poor. Training requires GPU; inference can be CPU-friendly for Gaussians.&lt;br /&gt;
&lt;br /&gt;
== Evaluating ==&lt;br /&gt;
Novel view synthesis evaluation: (1) **PSNR (Peak Signal-to-Noise Ratio)**: measures pixel-level reconstruction quality; higher is better. (2) **SSIM (Structural Similarity Index)**: perceptual quality metric. (3) **LPIPS (Learned Perceptual Image Patch Similarity)**: deep-feature-based perceptual similarity; lower is better. (4) **Standard benchmarks**: Blender synthetic dataset, LLFF (real scenes), Tanks and Temples (outdoor). (5) **Rendering speed**: FPS on target hardware; 3DGS typically achieves 30–150 FPS vs. NeRF&amp;#039;s &amp;lt;1 FPS.&lt;br /&gt;
&lt;br /&gt;
== Creating ==&lt;br /&gt;
Building a 3D capture pipeline: (1) Capture: 50–100 photos orbiting the subject at multiple heights; consistent lighting; avoid reflective/transparent materials. (2) Pose estimation: COLMAP automatic reconstruction; verify alignment quality. (3) Training: use 3DGS (splatfacto in nerfstudio) for best quality-speed tradeoff; 30k iterations. (4) Evaluation: render held-out test views; compute PSNR/LPIPS. (5) Export: convert to web-compatible format (PLY for Gaussians; WebGL/glTF for meshes). (6) Applications: real estate virtual tours, e-commerce 3D product visualization, cultural heritage digitization, VFX asset creation.&lt;br /&gt;
&lt;br /&gt;
[[Category:Artificial Intelligence]]&lt;br /&gt;
[[Category:Computer Vision]]&lt;br /&gt;
[[Category:3D AI]]&lt;/div&gt;</summary>
		<author><name>Wordpad</name></author>
	</entry>
</feed>