Deployed d380cf7 to 0.1.x with MkDocs 1.6.0 and mike 2.1.1

This commit is contained in:
2024-05-14 14:40:05 +08:00
parent eb2d9d8846
commit 393ceb568e
20 changed files with 390 additions and 53 deletions

View File

@@ -382,7 +382,7 @@
<span class="md-ellipsis">
Features
Features & Options
</span>

BIN
0.1.x/assets/as-labels.png Executable file

Binary file not shown.

After

Width:  |  Height:  |  Size: 6.3 KiB

BIN
0.1.x/assets/as-scalar.png Executable file

Binary file not shown.

After

Width:  |  Height:  |  Size: 9.1 KiB

View File

Before

Width:  |  Height:  |  Size: 220 KiB

After

Width:  |  Height:  |  Size: 220 KiB

BIN
0.1.x/assets/before-sharing.png Executable file

Binary file not shown.

After

Width:  |  Height:  |  Size: 50 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 52 KiB

After

Width:  |  Height:  |  Size: 22 KiB

View File

Before

Width:  |  Height:  |  Size: 126 KiB

After

Width:  |  Height:  |  Size: 126 KiB

View File

Before

Width:  |  Height:  |  Size: 126 KiB

After

Width:  |  Height:  |  Size: 126 KiB

BIN
0.1.x/assets/import-dialog.png Executable file

Binary file not shown.

After

Width:  |  Height:  |  Size: 44 KiB

BIN
0.1.x/assets/import-others.png Executable file

Binary file not shown.

After

Width:  |  Height:  |  Size: 8.6 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 46 KiB

BIN
0.1.x/assets/resample.png Executable file

Binary file not shown.

After

Width:  |  Height:  |  Size: 19 KiB

View File

Before

Width:  |  Height:  |  Size: 108 KiB

After

Width:  |  Height:  |  Size: 108 KiB

BIN
0.1.x/assets/to-mesh.png Executable file

Binary file not shown.

After

Width:  |  Height:  |  Size: 17 KiB

View File

@@ -26,7 +26,7 @@
<title>Features - Bioxel Nodes Docs</title>
<title>Features & Options - Bioxel Nodes Docs</title>
@@ -82,7 +82,7 @@
<div data-md-component="skip">
<a href="#import-volume-data" class="md-skip">
<a href="#features-options" class="md-skip">
Skip to content
</a>
@@ -121,7 +121,7 @@
<div class="md-header__topic" data-md-component="header-topic">
<span class="md-ellipsis">
Features
Features & Options
</span>
</div>
@@ -405,16 +405,148 @@
<label class="md-nav__link md-nav__link--active" for="__toc">
<span class="md-ellipsis">
Features & Options
</span>
<span class="md-nav__icon md-icon"></span>
</label>
<a href="./" class="md-nav__link md-nav__link--active">
<span class="md-ellipsis">
Features
Features & Options
</span>
</a>
<nav class="md-nav md-nav--secondary" aria-label="Table of contents">
<label class="md-nav__title" for="__toc">
<span class="md-nav__icon md-icon"></span>
Table of contents
</label>
<ul class="md-nav__list" data-md-component="toc" data-md-scrollfix>
<li class="md-nav__item">
<a href="#import-volume-data-as-biovels" class="md-nav__link">
<span class="md-ellipsis">
Import Volume Data as Biovels
</span>
</a>
<nav class="md-nav" aria-label="Import Volume Data as Biovels">
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="#resample" class="md-nav__link">
<span class="md-ellipsis">
Resample
</span>
</a>
</li>
<li class="md-nav__item">
<a href="#read-as" class="md-nav__link">
<span class="md-ellipsis">
Read as
</span>
</a>
<nav class="md-nav" aria-label="Read as">
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="#as-scalar" class="md-nav__link">
<span class="md-ellipsis">
as Scalar
</span>
</a>
</li>
<li class="md-nav__item">
<a href="#as-labels" class="md-nav__link">
<span class="md-ellipsis">
as Labels
</span>
</a>
</li>
<li class="md-nav__item">
<a href="#as-vector-not-implemented" class="md-nav__link">
<span class="md-ellipsis">
as Vector (Not implemented)
</span>
</a>
</li>
<li class="md-nav__item">
<a href="#as-color-not-implemented" class="md-nav__link">
<span class="md-ellipsis">
as Color (Not implemented)
</span>
</a>
</li>
</ul>
</nav>
</li>
<li class="md-nav__item">
<a href="#others" class="md-nav__link">
<span class="md-ellipsis">
Others
</span>
</a>
</li>
</ul>
</nav>
</li>
<li class="md-nav__item">
<a href="#convert-bioxels-to-mesh" class="md-nav__link">
<span class="md-ellipsis">
Convert Bioxels to Mesh
</span>
</a>
</li>
<li class="md-nav__item">
<a href="#export-biovels-as-vdb" class="md-nav__link">
<span class="md-ellipsis">
Export Biovels as VDB
</span>
</a>
</li>
</ul>
</nav>
</li>
@@ -489,6 +621,116 @@
<label class="md-nav__title" for="__toc">
<span class="md-nav__icon md-icon"></span>
Table of contents
</label>
<ul class="md-nav__list" data-md-component="toc" data-md-scrollfix>
<li class="md-nav__item">
<a href="#import-volume-data-as-biovels" class="md-nav__link">
<span class="md-ellipsis">
Import Volume Data as Biovels
</span>
</a>
<nav class="md-nav" aria-label="Import Volume Data as Biovels">
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="#resample" class="md-nav__link">
<span class="md-ellipsis">
Resample
</span>
</a>
</li>
<li class="md-nav__item">
<a href="#read-as" class="md-nav__link">
<span class="md-ellipsis">
Read as
</span>
</a>
<nav class="md-nav" aria-label="Read as">
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="#as-scalar" class="md-nav__link">
<span class="md-ellipsis">
as Scalar
</span>
</a>
</li>
<li class="md-nav__item">
<a href="#as-labels" class="md-nav__link">
<span class="md-ellipsis">
as Labels
</span>
</a>
</li>
<li class="md-nav__item">
<a href="#as-vector-not-implemented" class="md-nav__link">
<span class="md-ellipsis">
as Vector (Not implemented)
</span>
</a>
</li>
<li class="md-nav__item">
<a href="#as-color-not-implemented" class="md-nav__link">
<span class="md-ellipsis">
as Color (Not implemented)
</span>
</a>
</li>
</ul>
</nav>
</li>
<li class="md-nav__item">
<a href="#others" class="md-nav__link">
<span class="md-ellipsis">
Others
</span>
</a>
</li>
</ul>
</nav>
</li>
<li class="md-nav__item">
<a href="#convert-bioxels-to-mesh" class="md-nav__link">
<span class="md-ellipsis">
Convert Bioxels to Mesh
</span>
</a>
</li>
<li class="md-nav__item">
<a href="#export-biovels-as-vdb" class="md-nav__link">
<span class="md-ellipsis">
Export Biovels as VDB
</span>
</a>
</li>
</ul>
</nav>
</div>
</div>
@@ -505,9 +747,29 @@
<h1 id="import-volume-data">Import Volume Data</h1>
<h1 id="convert-to-mesh">Convert to Mesh</h1>
<h1 id="export-volume-data">Export Volume Data</h1>
<h1 id="features-options">Features &amp; Options</h1>
<h2 id="import-volume-data-as-biovels">Import Volume Data as Biovels</h2>
<p>File &gt; Import &gt; Volume Data as Biovels</p>
<h3 id="resample">Resample</h3>
<p><img alt="alt text" src="../assets/resample.png" /></p>
<p>Sometimes the original data is too big, or the spacing in the original data is not reasonable, you can modify the <code>Bioxel Size</code> and <code>Original Spacing</code> to adjust the Shape of the Bixoels.</p>
<p>A bioxel is like a pixel, the larger the <code>Bioxel Size</code>, the lower the resolution of the image, Original Spacing will be read from the original data record, but sometimes the image doesn't have original spacing, you may need to input it manually to get the correct shape.</p>
<h3 id="read-as">Read as</h3>
<h4 id="as-scalar">as Scalar</h4>
<p><img alt="alt text" src="../assets/as-scalar.png" /></p>
<p>In some cases the environment value is higher than the value of the target object, you can check <code>Invert Scalar</code> to adjust the value for better result.</p>
<h4 id="as-labels">as Labels</h4>
<p><img alt="alt text" src="../assets/as-labels.png" /></p>
<p>Many AI segmentation task datasets, provide segmentation data, which are often an integer value representing a layer of segmentation labels. You can set the Label Index to determine exactly which labels to load.</p>
<h4 id="as-vector-not-implemented">as Vector (Not implemented)</h4>
<h4 id="as-color-not-implemented">as Color (Not implemented)</h4>
<h3 id="others">Others</h3>
<p><img alt="alt text" src="../assets/import-others.png" /></p>
<h2 id="convert-bioxels-to-mesh">Convert Bioxels to Mesh</h2>
<p>In 3D view, select bioxels and right-click, Bioxels &gt; Bioxels To Mesh</p>
<p><img alt="alt text" src="../assets/to-mesh.png" /></p>
<h2 id="export-biovels-as-vdb">Export Biovels as VDB</h2>
<p>File &gt; Export &gt; Biovels as VDB</p>

View File

@@ -430,18 +430,27 @@
</li>
<li class="md-nav__item">
<a href="#dependency-installation" class="md-nav__link">
<a href="#prepare-your-data" class="md-nav__link">
<span class="md-ellipsis">
Dependency Installation
Prepare Your Data
</span>
</a>
</li>
<li class="md-nav__item">
<a href="#basic-usage" class="md-nav__link">
<a href="#import-volume-data" class="md-nav__link">
<span class="md-ellipsis">
Basic Usage
Import Volume Data
</span>
</a>
</li>
<li class="md-nav__item">
<a href="#share-your-file" class="md-nav__link">
<span class="md-ellipsis">
Share Your File
</span>
</a>
@@ -467,7 +476,7 @@
<span class="md-ellipsis">
Features
Features & Options
</span>
@@ -562,18 +571,27 @@
</li>
<li class="md-nav__item">
<a href="#dependency-installation" class="md-nav__link">
<a href="#prepare-your-data" class="md-nav__link">
<span class="md-ellipsis">
Dependency Installation
Prepare Your Data
</span>
</a>
</li>
<li class="md-nav__item">
<a href="#basic-usage" class="md-nav__link">
<a href="#import-volume-data" class="md-nav__link">
<span class="md-ellipsis">
Basic Usage
Import Volume Data
</span>
</a>
</li>
<li class="md-nav__item">
<a href="#share-your-file" class="md-nav__link">
<span class="md-ellipsis">
Share Your File
</span>
</a>
@@ -599,38 +617,76 @@
<h1 id="getting-started">Getting Started</h1>
<p>Currently only support Blender 4.0 or above, make sure you have the correct version of Blender.</p>
<h3 id="add-on-installation">Add-on Installation</h3>
<h2 id="add-on-installation">Add-on Installation</h2>
<p>Download the latest version https://github.com/OmooLab/BioxelNodes/releases/latest<br />
In Blender, <code>Edit - Preferences - Add-ons - Install</code>, select the <code>BioxelNodes_{version}.zip</code> you just downloaded.</p>
<h3 id="dependency-installation">Dependency Installation</h3>
<p>The add-on requires a third-party python dependency called SimpleITK, click the Install SimpleITK button below to install the dependency. After clicking, blender may get stuck, it is downloading and installing, just wait for a moment. After the Installation, <strong>restart blender once</strong>.</p>
In Blender, Edit &gt; Preferences &gt; Add-ons &gt; Install, select the <code>BioxelNodes_{version}.zip</code> you just downloaded.</p>
<p>The add-on requires a third-party python dependency called SimpleITK, click <code>Install SimpleITK</code> button below to install the dependency. After clicking, blender may get stuck, it is downloading and installing, just wait for a moment. After that, click <code>Reboot Blender</code> button.</p>
<p><img alt="dependency" src="../assets/dependency.png" /></p>
<p>This step may have failed due to network factors, just click "Set PyPI Mirror" to change the mirror.</p>
<h3 id="basic-usage">Basic Usage</h3>
<p>First you need to have your volumetric data ready. If not, you can access open research data from <a href="https://datadryad.org">Dryad</a> (Dryad publishes data exclusively under a <a href="https://creativecommons.org/public-domain/cc0/">Creative Commons Public Domain License</a>)</p>
<p>Note: Make sure one folder contains only one sequence, multiple sequences need to be manually split into different folders first.</p>
<p>In Blender, <code>File - Import - Volume Data as Bioxels</code>, select <strong>one</strong> of the .dcm files and click on "Volume Data as Bioxels" (you can also drag one of the .dcm files directly into the 3D viewport to trigger the import, but this is limited to .dcm format files)</p>
<h2 id="prepare-your-data">Prepare Your Data</h2>
<p>First you need to have your volumetric data ready. If not, you can access open research data from list below:</p>
<table>
<thead>
<tr>
<th>Source</th>
<th>Object</th>
</tr>
</thead>
<tbody>
<tr>
<td><a href="https://datadryad.org">Dryad</a></td>
<td>Open Research Data</td>
</tr>
<tr>
<td><a href="https://openorganelle.janelia.org/datasets">OpenOrganelle</a></td>
<td>Cells</td>
</tr>
<tr>
<td><a href="https://www.embodi3d.com/files/category/37-medical-scans/">Embodi3D</a></td>
<td>Medical Images</td>
</tr>
<tr>
<td><a href="https://github.com/sfikas/medical-imaging-datasets">Github</a></td>
<td>Medical Images</td>
</tr>
<tr>
<td><a href="https://nhsx.github.io/open-source-imaging-data-sets/">NIHR</a></td>
<td>Medical Images</td>
</tr>
<tr>
<td><a href="http://medicaldecathlon.com/">Medical Segmentation Decathlon</a></td>
<td>Medical Images</td>
</tr>
<tr>
<td><a href="https://www.allencell.org/3d-cell-viewer.html">Allen Cell Explorer</a></td>
<td>Cells</td>
</tr>
<tr>
<td><a href="https://www.nlm.nih.gov/research/visible/visible_human.html">Visible Human Project</a></td>
<td>Medical Images</td>
</tr>
</tbody>
</table>
<h2 id="import-volume-data">Import Volume Data</h2>
<p>File &gt; Import &gt; Volume Data as Bioxels, select <strong>one</strong> of the .dcm files and click on "Volume Data as Bioxels" (you can also drag one of the .dcm files directly into the 3D viewport to trigger the import)</p>
<p><img alt="importing" src="../assets/importing.png" /></p>
<p>It may take a while to read data. After finishing reading, it will pop up a dialog box</p>
<p><img alt="import dialog" src="../assets/import_dialog.png" /></p>
<p><img alt="import dialog" src="../assets/import-dialog.png" /></p>
<p>Ignore the options, just click OK!</p>
<p>After importing, the necessary nodes are automatically added, the reconstruction and shader are created, and then turned on the cycles rendering to directly see the result.</p>
<p>After importing, the necessary nodes are automatically added, the reconstruction and shader are created. Click select Bioxels Object, and open the Geometry Nodes panel, change the "Threshold" in segment node.</p>
<p><img alt="segment node" src="../assets/segment-node.png" /></p>
<p>and then turned on the cycles rendering to directly see the result.</p>
<p><img alt="result" src="../assets/result.png" /></p>
<p>Click select Bioxels Object, and open the Geometry Nodes panel to see the following node graph:</p>
<p><img alt="segment node" src="../assets/segment_node.png" /></p>
<p>You can change the "Threshold" to modify the reconstruction model, or change the "Color", "Density" to modify the shader effect. All the parameters are straightforward, you can understand them by changing the values.</p>
<p>The node, that named "Segment", is a preset node that combines the steps of 3D reconstruction process and shading process. In general, you need to add one of the segmentation node to reconstruction first, and followed by one of the shader node to set the shader. As you can see in the following figure:</p>
<p><img alt="general graph" src="../assets/general_graph.png" /></p>
<p>Currently there are 3 types of nodes</p>
<ul>
<li>Segmentation nodes, responsible for splitting the volume into a reconstructed model (we call them "Segment").</li>
<li>Shader nodes, responsible for giving shader to the Segment.</li>
<li>Slicer nodes, responsible for partially cutting the Segment.</li>
</ul>
<p>For example:</p>
<p><img alt="general graph example" src="../assets/general_graph_example.png" /></p>
<p>You can add a "Bake" node between segmentation node and shader node, if the reconstruction process consumes too much computing time. But be sure, you are selecting the volume object, not the container object.</p>
<p><img alt="bake node" src="../assets/bake_node.png" /></p>
<h2 id="share-your-file">Share Your File</h2>
<p>The VDB cache and the Bioxel nodes are not reachable to computers if you don't save them. If you need to give your blender file to someone else, you will need to perform the following steps:</p>
<ol>
<li>Save your blender file</li>
<li>Click Scene &gt; Bioxels &gt; Save All Bioxels in the Properties panel.</li>
<li>Click Scene &gt; Custom Nodes &gt; Save All Custom Nodes under the Properties panel.</li>
</ol>
<p><img alt="before sharin" src="../assets/before-sharing.png" /></p>
<p>After that, both the VDB cache and the Bioxel nodes are stored in relative locations. When you share a file with someone, pack the entire directory so that the resources are not lost. The other person will be able to load correctly, regardless of whether they have BioxelNodes installed.</p>
@@ -677,13 +733,13 @@ In Blender, <code>Edit - Preferences - Add-ons - Install</code>, select the <cod
<a href="../features/" class="md-footer__link md-footer__link--next" aria-label="Next: Features">
<a href="../features/" class="md-footer__link md-footer__link--next" aria-label="Next: Features &amp; Options">
<div class="md-footer__title">
<span class="md-footer__direction">
Next
</span>
<div class="md-ellipsis">
Features
Features & Options
</div>
</div>
<div class="md-footer__button md-icon">

View File

@@ -398,7 +398,7 @@
<span class="md-ellipsis">
Features
Features & Options
</span>

View File

@@ -398,7 +398,7 @@
<span class="md-ellipsis">
Features
Features & Options
</span>
@@ -597,7 +597,7 @@
<h1 id="future-features">Future Features</h1>
<ul>
<li>Support more volumetric data formats (.nii, .map, .txm...)</li>
<li>Support more volumetric data formats (.map, .txm...)</li>
<li>Generate sections</li>
<li>More segmentation methods, e.g. AI segmentation.</li>
<li>Even better shader for volumetric rendering</li>

View File

@@ -81,6 +81,11 @@
<label class="md-overlay" for="__drawer"></label>
<div data-md-component="skip">
<a href="#geometry-nodes" class="md-skip">
Skip to content
</a>
</div>
<div data-md-component="announce">
@@ -395,7 +400,7 @@
<span class="md-ellipsis">
Features
Features & Options
</span>
@@ -419,6 +424,8 @@
<a href="./" class="md-nav__link md-nav__link--active">
@@ -480,6 +487,8 @@
</nav>
</div>
</div>
@@ -496,9 +505,19 @@
<h1>Geometry Nodes</h1>
<h1 id="geometry-nodes">Geometry Nodes</h1>
<p>The node, that named "Segment", is a preset node that combines the steps of 3D reconstruction process and shading process. In general, you need to add one of the segmentation node to reconstruction first, and followed by one of the shader node to set the shader. As you can see in the following figure:</p>
<p><img alt="general graph" src="../assets/general-graph.png" /></p>
<p>Currently there are 3 types of nodes</p>
<ul>
<li>Segmentation nodes, responsible for splitting the volume into a reconstructed model (we call them "Segment").</li>
<li>Shader nodes, responsible for giving shader to the Segment.</li>
<li>Slicer nodes, responsible for partially cutting the Segment.</li>
</ul>
<p>For example:</p>
<p><img alt="general graph example" src="../assets/general-graph-example.png" /></p>
<p>You can add a "Bake" node between segmentation node and shader node, if the reconstruction process consumes too much computing time. But be sure, you are selecting the volume object, not the container object.</p>
<p><img alt="bake node" src="../assets/bake-node.png" /></p>
@@ -528,7 +547,7 @@
<nav class="md-footer__inner md-grid" aria-label="Footer" >
<a href="../features/" class="md-footer__link md-footer__link--prev" aria-label="Previous: Features">
<a href="../features/" class="md-footer__link md-footer__link--prev" aria-label="Previous: Features &amp; Options">
<div class="md-footer__button md-icon">
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M20 11v2H8l5.5 5.5-1.42 1.42L4.16 12l7.92-7.92L13.5 5.5 8 11h12Z"/></svg>
@@ -538,7 +557,7 @@
Previous
</span>
<div class="md-ellipsis">
Features
Features & Options
</div>
</div>
</a>

File diff suppressed because one or more lines are too long