<liclass="toctree-l4"><aclass="reference internal"href="../../installation/#step-3-check-memory-and-cpu-allocation">Step 3. Check Memory and CPU Allocation</a></li>
<liclass="toctree-l4"><aclass="reference internal"href="../../installation/#step-3-download-and-launch-webodm">Step 3. Download and Launch WebODM</a></li>
</ul>
</li>
</ul>
</li>
<liclass="toctree-l2"><aclass="reference internal"href="../../installation/#basic-commands-and-troubleshooting">Basic Commands and Troubleshooting</a></li>
<liclass="toctree-l3"><aclass="reference internal"href="../../installation/#running-on-more-than-one-machine">Running on more than one machine</a></li>
<liclass="toctree-l4"><aclass="reference internal"href="../../tutorials/#prep-data-and-project">Prep data and project</a></li>
<liclass="toctree-l4"><aclass="reference internal"href="../../tutorials/#resize-droplet-pull-pin-run-away">Resize droplet, pull pin, run away</a></li>
<liclass="toctree-l4"><aclass="reference internal"href="../../tutorials/#after-it-finishes-assuming-you-survive-that-long">After it finishes (assuming you survive that long)</a></li>
<liclass="toctree-l2"><aclass="reference internal"href="../../tutorials/#using-potree-3d-viewer-module-on-webodm">Using Potree 3D viewer module on WebODM</a><ul>
<liclass="toctree-l3"><aclass="reference internal"href="#what-are-camera-lens-models">What Are Camera Lens Models?</a></li>
<liclass="toctree-l3"><aclass="reference internal"href="#when-are-manual-selections-appropriate">When are manual selections appropriate?</a></li>
<liclass="toctree-l3"><aclass="reference internal"href="#why-would-one-use-a-particular-camera-lens-model">Why would one use a particular Camera Lens Model?</a></li>
<liclass="toctree-l3"><aclass="reference internal"href="../../large/#getting-started-with-distributed-split-merge">Getting Started with Distributed Split-Merge</a></li>
<liclass="toctree-l3"><aclass="reference internal"href="../../large/#understanding-the-cluster">Understanding the Cluster</a></li>
<liclass="toctree-l3"><aclass="reference internal"href="../../large/#accessing-the-logs">Accessing the Logs</a></li>
<liclass="toctree-l3"><aclass="reference internal"href="../../faq/#can-i-process-two-or-more-orthophoto-geotiffs-to-stitch-them-together">Can I process two or more orthophoto GeoTIFFs to stitch them together?</a></li>
<liclass="toctree-l3"><aclass="reference internal"href="../../faq/#i-want-to-build-a-commercial-application-that-includes-odm-do-i-need-a-commercial-license">I want to build a commercial application that includes ODM. Do I need a commercial license?</a></li>
<liclass="toctree-l3"><aclass="reference internal"href="../../faq/#are-there-other-licensing-options-aside-from-the-agplv3">Are there other licensing options aside from the AGPLv3?</a></li>
<spanid="id1"></span><h1>camera-lens<aclass="headerlink"href="#camera-lens"title="Permalink to this headline">¶</a></h1>
<p><strong>Options:</strong><em>auto | perspective | brown | fisheye | spherical</em></p>
<p>Set a camera projection type. Manually setting a value can help improve geometric undistortion. By default the application tries to determine a lens type from the images metadata. . Default: <codeclass="docutils literal notranslate"><spanclass="pre">auto</span></code></p>
<divclass="line"><codeclass="docutils literal notranslate"><spanclass="pre">auto</span></code> : Automatic selection of best camera projection model.</div>
<h2>What Are Camera Lens Models?<aclass="headerlink"href="#what-are-camera-lens-models"title="Permalink to this headline">¶</a></h2>
<p>Camera Lens Models are projection/distortion models that OpenSFM uses to correct for the optics of the camera platforms that record our images. These corrections are essential for proper camera/scene modeling, and therefore, proper reconstruction of the data.</p>
<h2>When are manual selections appropriate?<aclass="headerlink"href="#when-are-manual-selections-appropriate"title="Permalink to this headline">¶</a></h2>
<p>Manually choosing a Camera Lens Model is currently only recommended in the case of Spherical Cameras (GoPro Fusion, GoPro Max, Insta360, Kodak PixPro, etc.) as these are currently not detected automatically by OpenSFM.</p>
<h2>Why would one use a particular Camera Lens Model?<aclass="headerlink"href="#why-would-one-use-a-particular-camera-lens-model"title="Permalink to this headline">¶</a></h2>
<p>In rare cases, OpenSFM may not be able to detect (or retrieve from its Camera database) the correct Camera Lens Model for your particular sensor, in which case you should select the closest appropriate model. When in doubt, try specifying <codeclass="docutils literal notranslate"><spanclass="pre">brown</span></code> first.</p>
</div>
<divclass="section"id="example-images">
<h2>Example Images<aclass="headerlink"href="#example-images"title="Permalink to this headline">¶</a></h2>
<p>The following examples are all data taken with a standard Rectilinear Lens. Manual selection of the various Camera Lens Models is demonstrated to show some differences in how this will affect reconstruction.</p>
<divclass="section"id="auto-rectilinear-data">
<h3><codeclass="docutils literal notranslate"><spanclass="pre">auto</span></code> : Rectilinear Data<aclass="headerlink"href="#auto-rectilinear-data"title="Permalink to this headline">¶</a></h3>
<divclass="figure align-default"id="id2">
<imgalt="Rectilinear data rendered by ``auto`` Camera Lens Model"src="https://user-images.githubusercontent.com/19295950/127077336-ae79a958-a953-4376-86fd-430d0e5457f2.png"/>
<pclass="caption"><spanclass="caption-text">This Point Cloud shows a proper reconstruction via the <codeclass="docutils literal notranslate"><spanclass="pre">auto</span></code> (<codeclass="docutils literal notranslate"><spanclass="pre">brown</span></code>) Camera Lens Model, which is appropriate for this sensor.</span><aclass="headerlink"href="#id2"title="Permalink to this image">¶</a></p>
</div>
</div>
<divclass="section"id="brown-rectilinear-data">
<h3><codeclass="docutils literal notranslate"><spanclass="pre">brown</span></code> : Rectilinear Data<aclass="headerlink"href="#brown-rectilinear-data"title="Permalink to this headline">¶</a></h3>
<divclass="figure align-default"id="id3">
<imgalt="Rectilinear data rendered by ``brown`` Camera Lens Model"src="https://user-images.githubusercontent.com/19295950/127077753-580a174e-7572-4315-8801-224ce097d9fc.png"/>
<pclass="caption"><spanclass="caption-text">As in the prior example, this Point Cloud is reconstructed via the <codeclass="docutils literal notranslate"><spanclass="pre">brown</span></code> Camera Lens Model.</span><aclass="headerlink"href="#id3"title="Permalink to this image">¶</a></p>
</div>
</div>
<divclass="section"id="fisheye-rectilinear-data">
<h3><codeclass="docutils literal notranslate"><spanclass="pre">fisheye</span></code> : Rectilinear Data<aclass="headerlink"href="#fisheye-rectilinear-data"title="Permalink to this headline">¶</a></h3>
<divclass="figure align-default"id="id4">
<imgalt="Rectilinear data rendered by ``fisheye`` Camera Lens Model"src="https://user-images.githubusercontent.com/19295950/127077826-53d459fe-5e4e-4b10-8e70-fbddf775c4f7.png"/>
<pclass="caption"><spanclass="caption-text">In this Point Cloud reconstruction, severe bowling and other artifacts have been introduced via the use of the wrong Camera Lens Model.</span><aclass="headerlink"href="#id4"title="Permalink to this image">¶</a></p>
<h3><codeclass="docutils literal notranslate"><spanclass="pre">perspective</span></code> : Rectilinear Data<aclass="headerlink"href="#perspective-rectilinear-data"title="Permalink to this headline">¶</a></h3>
<divclass="figure align-default"id="id5">
<imgalt="Rectilinear data rendered by ``perspective`` Camera Lens Model"src="https://user-images.githubusercontent.com/19295950/127077485-699f9e61-72a6-45f2-990f-f5748b6ee99f.png"/>
<pclass="caption"><spanclass="caption-text">This Point Cloud rendered well, very similar to the <codeclass="docutils literal notranslate"><spanclass="pre">auto</span></code> and <codeclass="docutils literal notranslate"><spanclass="pre">brown</span></code> examples. One may see artifacts in the <codeclass="docutils literal notranslate"><spanclass="pre">perspective</span></code> Camera Lens Model in very large collections, or over very flat/homogenus terrain (agricultural fields). In such cases, forcing <codeclass="docutils literal notranslate"><spanclass="pre">brown</span></code> may help.</span><aclass="headerlink"href="#id5"title="Permalink to this image">¶</a></p>
<h3><codeclass="docutils literal notranslate"><spanclass="pre">spherical</span></code> : Rectilinear Data<aclass="headerlink"href="#spherical-rectilinear-data"title="Permalink to this headline">¶</a></h3>
<divclass="figure align-default"id="id6">
<imgalt="Rectilinear data rendered by ``spherical`` Camera Lens Model"src="https://user-images.githubusercontent.com/19295950/127078960-27e35cbb-a378-4d0d-92e2-42dbfd1edd7c.png"/>
<pclass="caption"><spanclass="caption-text">This Point Cloud failed to reconstruct properly due to the manual selection of the <codeclass="docutils literal notranslate"><spanclass="pre">fisheye</span></code> Camera Lens Model. Similar failures to reconstruct can often indicate the wrong manual selection, or in edge cases, wrong <codeclass="docutils literal notranslate"><spanclass="pre">auto</span></code> selection of the Camera Lens Model, and you are advised to try another Model that is more appropriate.</span><aclass="headerlink"href="#id6"title="Permalink to this image">¶</a></p>
<p><aclass="reference external"href="https://github.com/opendronemap/docs#how-to-make-your-first-contribution">Learn to edit</a> and help improve <aclass="reference external"href="https://github.com/OpenDroneMap/docs/blob/publish/source/arguments_edit/camera-lens.rst">this page</a>!</p>