-
Notifications
You must be signed in to change notification settings - Fork 8
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge pull request #62 from oanegros/ome-zarr
version 2.0.0
- Loading branch information
Showing
1,974 changed files
with
6,846 additions
and
8,582 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Binary file not shown.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file was deleted.
Oops, something went wrong.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,15 @@ | ||
# Replace data in background | ||
|
||
Blender can run and render as a background job without a UI. This is very advantageous if you have very large pyramidal stack sizes you want to render your data at, and access to some form of HPC cluster. | ||
To replace your data with a different size, you set up all the [Microscopy Nodes settings](./settings.md) to [reload](./settings.md#reload) at the right scale, and run a headless python script that looks like this: | ||
``` | ||
import bpy | ||
bpy.ops.microscopynodes.load_background() | ||
bpy.ops.wm.save_mainfile() | ||
``` | ||
by running: | ||
`/path/to/Blender/executable -b /path/to/blendfile.blend -P /path/to/reload_script.py` | ||
|
||
This will then load the data according to the Microscopy Nodes settings, and resave the .blend file. | ||
|
||
You can subsequently render headlessly as well, here you can follow the [Blender documentation on this](https://docs.blender.org/manual/en/latest/advanced/command_line/render.html). |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,32 @@ | ||
# Frequently Asked Questions | ||
If yours is not in here, don't be afraid to open an [issue](https://github.com/oanegros/MicroscopyNodes/issues)! | ||
|
||
## How are things transformed? | ||
|
||
<details> | ||
<summary>How is data transformed on load?</summary> | ||
The data is scaled to 0.02 blender-meter per pixel on an initial load and centered in x and y. If you reload an image with a differently scaled version, it will adapt itself to the initial scale. You can check the size in pixels, blender meters and micrometers in the `Axes` object. | ||
</details> | ||
|
||
<details> | ||
<summary>Why does my volume consist of multiple blocks?</summary> | ||
Currently, Blender cannot handle volumes that are over 2048 pixels in any axis, so Microscopy Nodes chunks this type of data to smaller blocks. This should still be fully equal data (floating-point datasets may suffer from incorrect normalization), channel chunks are offset to avoid Blender rendering bugs. | ||
</details> | ||
|
||
<details> | ||
<summary>Why is my data a bigger file than i expected in Blender?</summary> | ||
The blender VDB files are saved at 32-bit, and can regrettably not be at smaller precision. However, for functionality, and because very little data in microscopy is over 16-bit, only a 16-bit version of the data is loaded into RAM. | ||
</details> | ||
|
||
## I don't see my data? | ||
|
||
<details> | ||
<summary>I do not see my surfaces?</summary> | ||
Try adjusting the threshold in the Surface Geometry Nodes modifier, the visibility of the Surfaces object, or the visibility of each channel in the Geometry Nodes modifier. | ||
</details> | ||
|
||
<details> | ||
<summary>I do not see my volumes?</summary> | ||
Try adjusting the threshold in the materials, the visibility of the Volumes object, or the visibility of each channel in the Geometry Nodes modifier. If the emission of the channel was off, make sure there is enough light in the scene to reflect (often done with increasing background intensity). | ||
</details> | ||
|
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
File renamed without changes
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,38 @@ | ||
Microscopy Nodes as an add-on mostly exists to read microscopy data, rewrite this into Blender-loadable file formats, and load this with useful presets. | ||
|
||
--- | ||
|
||
# Input | ||
Microscopy Nodes supports .tif and .zarr files/containers. These file types are used in microscopy partially because they have very flexible (or flexibly used) specifications. This means supporting all versions these files can exist in is difficult. | ||
|
||
## TIF files | ||
Microscopy Nodes loads tif files, and is able to read basic metadata of imagej-tif files. LZW-compressed tif is supported. Further OME-Tif metdata is currently not read, if you really need this, please open an isssue on the github. | ||
|
||
## OME-Zarr files | ||
OME-Zarr is a still-developing pyramidal data format with a lot of features, some of which are harder to support in Blender. Please open an issue if you really want a certain feature. | ||
Microscopy Nodes supports: | ||
|
||
- OME-Zarr >= 0.3 | ||
- channel names from `omero` | ||
- lazy loading (per channel/timpoint at least) | ||
- dataset selection | ||
- coordinate transform Scale | ||
- `labels` metadata | ||
|
||
Microscopy Nodes does not support (currently): | ||
|
||
- wells/fields | ||
- affine/translate coordinate transforms | ||
- bioformats2raw multiple loading (or others with multiple datasets, one could still select the relevant internal path) | ||
|
||
|
||
---- | ||
|
||
# Output | ||
Output files are the files used by Blender to render your data. | ||
|
||
## VDB files | ||
The .vdb is the volume file-format that Blender uses, and is very optimized for raytraced rendering of sparse volumes, as this is often necessary in animation for clouds/fire. The Microscopy Nodes vdb files are chunked per timepoint and channel to allow relatively lazy loading, and are chunked at <2048 pixels per axis as oversized volumes can break Eevee. | ||
|
||
## ABC files | ||
The .abc files are the way label masks are stored, as these files allow changing the entire geometry of each object for each timepoint. These are written through the Blender writing pipeline for each separate object, which is part of why label mask loading can be slow for dense masks. |
Oops, something went wrong.