- 
                Notifications
    You must be signed in to change notification settings 
- Fork 29
Refresh AI job UI #8873
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: master
Are you sure you want to change the base?
Refresh AI job UI #8873
Changes from all commits
e29b9b4
              11c7306
              27bd4fa
              d1cacc6
              43332a4
              fc45bda
              5762b8f
              32850db
              e233a68
              50e1f6b
              933980a
              4dff13f
              b486d32
              0e2b3bb
              d6e9930
              48a1e72
              5d7c727
              21bcfe9
              c4cd9a0
              89589e1
              e8ddb99
              fcc5cdb
              e0beade
              b3025e2
              3a38dad
              70f3f3b
              6780296
              26e0f58
              7774cde
              f95d18e
              ecb823a
              d278c70
              62a70e4
              820c24b
              f459ff8
              0a2bdc8
              fa8edb4
              287f6c2
              9b8c5a7
              074ad0d
              654cc70
              3562126
              86df8ad
              fda54f0
              e9c7c20
              568bdab
              e703629
              eba6428
              9ebe694
              717d643
              ea0ae64
              827014e
              332f6d8
              6abbba4
              d48ba0a
              da071fc
              e219568
              cb5092d
              b4ed39b
              1380067
              f46e9a0
              6c1d7d7
              1b9f46d
              dca9d5a
              178c018
              67227e4
              e3afc27
              585660b
              c6bb705
              6b4b106
              95d2251
              d4b2bab
              7fb0d86
              dcd6fb9
              02e2375
              570f329
              393288c
              9eb4d0d
              6f99cd5
              c98305a
              7f08de1
              c752393
              23bb6d8
              2172baa
              3e63eb6
              092c363
              8c91307
              e50b24e
              0d016a4
              09bfe3c
              447e118
              a41468b
              File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
| Original file line number | Diff line number | Diff line change | ||||
|---|---|---|---|---|---|---|
|  | @@ -4,40 +4,50 @@ While WEBKNOSSOS is great for manual annotation, some datasets are either too bi | |||||
|  | ||||||
| The automated analysis features are designed to provide a general solution to a wide range of (EM) datasets. Since datasets differ in staining protocols, imaging modalities, imaging resolution & fidelity, your results may vary. [Please contact us](mailto:[email protected]) for customized, fine-tuned solutions for your dataset. | ||||||
|  | ||||||
| We plan to add more automated analysis features in the future. If you want to work with us on an automated analysis project, [please contact us](mailto:[email protected]). | ||||||
| We would love to integrate analysis solutions for more modalities and use cases. | ||||||
| You can launch the AI analysis dialog using the `AI Analysis` button in the toolbar at the top. This will open a dropdown menu with three options: | ||||||
| There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Align terminology with UI: dialog → drawer flow. Use “drawer” and clarify the dropdown triggers it. -You can launch the AI analysis dialog using the `AI Analysis` button in the toolbar at the top. This will open a dropdown menu with three options:
+Use the `AI Analysis` button in the top toolbar to open a dropdown with three options. Selecting an option opens the AI Jobs drawer:📝 Committable suggestion
 
        Suggested change
       
 🤖 Prompt for AI Agents | ||||||
|  | ||||||
| !!!info | ||||||
| Automated analysis is only available on [webknossos.org](https://webknossos.org) at the moment. | ||||||
| If you want to set up on-premise automated analysis at your institute/workplace, then [please contact sales](mailto:[email protected]). | ||||||
| - **Run AI model:** Run pre-trained or custom AI models on your dataset. | ||||||
| - **Train AI model:** Train your own AI models on your WEBKNOSSOS annotations to match your specific needs. Coming soon. | ||||||
| - **AI Alignment:** Align datasets. Read more about [image alignment](./alignment.md). | ||||||
|  | ||||||
|  | ||||||
| ## Pre-trained Models | ||||||
|  | ||||||
| WEBKNOSSOS offers several pre-trained models to get you started quickly: | ||||||
|  | ||||||
| * **Neuron Segmentation:** This analysis is designed to work with serial electron microscopy data of neural tissue (brain/cortex) and will segment all neurons within the dataset. It is tuned for serial block-face electron microscopy (SBEM), MultiSEM and focused ion beam-SEM (FIB-SEM) data. | ||||||
| * **Mitochondria Detection:** Run a pre-trained instance segmentation model for mitochondria detection. Optimized for EM data. | ||||||
| * **Nuclei Detection:** (Coming Soon) Run a pre-trained instance segmentation model for nuclei detection. Optimized for EM data. | ||||||
|  | ||||||
| ## Your Custom Models | ||||||
|  | ||||||
| This section will list any custom models that you have trained or uploaded to your organization. While these build on the foundation of our pre-trained models, you can customize your models to identify or segment biological structures of your interest or fine-tune models to the contrast and staining of your images. Training will be enabled soon. | ||||||
|  | ||||||
| ## Neuron Segmentation | ||||||
| As a first trial, WEBKNOSSOS includes neuron segmentation. This analysis is designed to work with serial block-face electron microscopy (SBEM) data of neural tissue (brain/cortex) and will segment all neurons within the dataset. | ||||||
| ## Analysis Settings | ||||||
|  | ||||||
| You can launch the AI analysis dialog using the `AI Analysis` button in the toolbar at the top. Use the `Start AI neuron segmentation` button in the dialog to start the analysis. | ||||||
| Before starting the analysis, you need to configure the following settings: | ||||||
|  | ||||||
|  | ||||||
| /// caption | ||||||
| Neuron segmentations can be launched from the tool bar. | ||||||
| /// | ||||||
| * **New Dataset Name:** The name of the new dataset that will be created with the segmentation results. | ||||||
| * **Image Data Layer:** The image layer from your current dataset that the model will use for analysis. | ||||||
| * **Bounding Box:** The region of interest that you want to analyze. You can choose to analyze the full dataset or a specific bounding box that you have created. | ||||||
|  | ||||||
| Computation time for this analysis depends directly on the size of your dataset. | ||||||
| You can also access **Advanced Settings** to further customize the analysis. | ||||||
|  | ||||||
| ## Credit Information | ||||||
|  | ||||||
| This section provides an overview of your available credits in your organization and the estimated cost for the analysis. Cost varies depending on the size of your dataset and the type of model you want to run. | ||||||
|  | ||||||
| --- | ||||||
|  | ||||||
| Computation time for any analysis depends directly on the size of your dataset. | ||||||
| Expect a few hours for medium-sized volumetric EM datasets. | ||||||
| The finished analysis will be available as a new dataset from your dashboard. You can monitor the status and progress of the analysis job from the [`Processing Jobs` page](./jobs.md) or wait for the email notification. | ||||||
|  | ||||||
|  | ||||||
| /// caption | ||||||
| Starting a new neuron segmentation. | ||||||
| /// | ||||||
|  | ||||||
| /// caption | ||||||
| Monitor the segmentation progress from the Jobs page. | ||||||
| /// | ||||||
|  | ||||||
| ## Mitochondria detection | ||||||
| Similarly to the neuron segmentation, you can now start a mitochondria detection in WEBKNOSSOS. In the AI analysis dialog, choose `Mitochondria detection`, select a bounding box, and go to `Processing Jobs` to look at the result. | ||||||
|  | ||||||
| ## Custom Analysis | ||||||
| You'll soon be able to train custom classifiers directly in WEBKNOSSOS. [Contact us](mailto:[email protected]) for an invite to join the beta program. | ||||||
| We plan to add more AI analysis features in the future. If you want to work with us on an automated analysis project, [please contact us](mailto:[email protected]). | ||||||
| We would love to integrate analysis solutions for more modalities and use cases. | ||||||
|  | ||||||
| If you are interested in specialized, automated analysis, image segmentation, object detection etc. then feel free to [contact us](mailto:[email protected]). The WEBKNOSSOS development teams offers [commercial analysis services](https://webknossos.org/services/automated-segmentation) for that. | ||||||
| <!-- Keep info in sync with docs/automation/ai_training.md --> | ||||||
| !!! info | ||||||
| Automated analysis is only available on [webknossos.org](https://webknossos.org) at the moment. | ||||||
| If you want to set up on-premise automated analysis at your institute/workplace, then [please contact sales](mailto:[email protected]). | ||||||
| Original file line number | Diff line number | Diff line change | ||||
|---|---|---|---|---|---|---|
| @@ -0,0 +1,58 @@ | ||||||
| # AI Model Training | ||||||
|  | ||||||
| WEBKNOSSOS allows you to train your own AI models for image segmentation. This feature is currently in early access. | ||||||
|  | ||||||
| <!-- Keep info in sync with docs/automation/ai_segmentation.md --> | ||||||
| !!! info | ||||||
| AI Model Training is only available on [webknossos.org](https://webknossos.org) at the moment. | ||||||
| If you want to set up on-premise automated analysis at your institute/workplace, then [please contact sales](mailto:[email protected]). | ||||||
| 
      Comment on lines
    
      +7
     to 
      +8
    
   There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Tighten wording and use “on‑premises”. 🧰 Tools🪛 LanguageTool[style] ~7-~7: For conciseness, consider replacing this expression with an adverb. (AT_THE_MOMENT) [grammar] ~7-~7: There might be a mistake here. (QB_NEW_EN) 🤖 Prompt for AI Agents | ||||||
|  | ||||||
|  | ||||||
|  | ||||||
| ## Preparing Your Annotations | ||||||
|  | ||||||
| Before you can start training, prepare your ground truth annotation(s). The training process requires at least one volume annotation with at least one bounding box. | ||||||
|  | ||||||
| Here is a step-by-step guide to prepare your data: | ||||||
|  | ||||||
| 1. **Create an annotation:** Start by creating a new annotation or opening an existing one. | ||||||
| 2. **Define bounding boxes:** Create one or more bounding boxes that define the areas you want to use for training. | ||||||
| - It is important that the bounding boxes are not too small. WEBKNOSSOS checks that each bounding box has a minimum extent of **32 voxels in each dimension**. | ||||||
| - Bounding boxes that are not aligned with the selected magnification will be automatically shrunk to fit. | ||||||
| - For optimal training, all bounding boxes should have dimensions that are multiples of the smallest box dimensions. | ||||||
| There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. might be clearer and more consistent with the other points. 
        Suggested change
       
 | ||||||
| 3. **Label segments:** Within your bounding boxes, label the segmentation of your structures of interest. Use the volume annotation tool to manually annotate structures. This will be your ground truth data. For neurons, we recommend to densely label each structure with a unique ID. For instances segmentations you only need to label the structures you want to train on, e.g. nuclei, mitochondria, soma, vesicles, etc. | ||||||
|  | ||||||
| ## Configuring the Training | ||||||
| To start a training, click on the `AI Analysis` button in the toolbar and select `Train AI model` from the dropdown menu. | ||||||
| This will open a dialog where you can configure and start your training job. | ||||||
| ### Select AI Training Task | ||||||
| 
      Comment on lines
    
      +26
     to 
      +28
    
   There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Update instructions to match the drawer-based UI. 🤖 Prompt for AI Agents | ||||||
|  | ||||||
| First, you need to select the type of model you want to train. Both models are optimized for SEM, FIB-SEM, SBEM, and Multi-SEM microscopes: | ||||||
|  | ||||||
| * **EM Neuron Model:** Train a new AI model for dense EM neuron segmentation. | ||||||
| * **EM Instances Model:** Train a new AI model for EM instance segmentation. This is optimized for nuclei, mitochondria, and other cell types. | ||||||
| ### Training Data | ||||||
|  | ||||||
| In this section, you need to specify the data that will be used for training. | ||||||
|  | ||||||
| * **Image Data Layer:** Select the raw image layer. | ||||||
| * **Ground Truth Layer:** Select the segmentation layer that you created. | ||||||
| * **Magnification:** Choose the magnification that should be used for training. | ||||||
|  | ||||||
| You can also add more training data from other annotations by clicking the `+` button and referencing annotations by ID or WEBKNOSSOS URLs. | ||||||
|  | ||||||
| ### Training Settings | ||||||
|  | ||||||
| * **Model Name:** Give your new model a descriptive name. | ||||||
| * **Comments:** Add any comments or notes about the training for future reference. | ||||||
| * **Max Distance (nm):** (Only for EM Instances Model) The maximum cross-section length ("diameter") for each identified object in nanometers e.g. Nuclei: 1000nm, Vesicles: 80nm. | ||||||
|  | ||||||
| ### Credit Information | ||||||
|  | ||||||
| This section provides an overview of your available credits in your organization and the estimated cost for the training. Cost varies depending on the size of your dataset and the type of model you want to train. | ||||||
|  | ||||||
| ## Launching the Training | ||||||
|  | ||||||
| After configuring everything, you can start the training by clicking the `Start Training` button. You can monitor the progress of your training job from the [`Processing Jobs` page](./jobs.md) or wait for the email notification. Training might take a few hours depending on the size of your dataset. | ||||||
|  | ||||||
| Once the training is finished, you can find an overview of all your trained models on the `Admin` > `AI Models` page in the navbar. Please refer to the [AI Segmentation](./ai_segmentation.md) guide for more information on how to apply your trained models to your dataset. | ||||||
| Original file line number | Diff line number | Diff line change | 
|---|---|---|
| @@ -1,8 +1,24 @@ | ||
| # Alignment | ||
| # Image Alignment | ||
|  | ||
| For single-tile image stacks, an alignment is directly possible from within WEBKNOSSOS. | ||
| Simply upload the dataset, open it and select the "Alignment" tab in the AI Analysis dialog. | ||
| Simply upload the dataset, open it and select the "AI Analysis" button in the toolbar. From the dropdown, choose "Run AI Alignment". | ||
|  | ||
| You can even annotate landmarks with the skeleton tool and use that to let WEBKNOSSOS align the dataset. Often these landmarks are not necessary, but for particularly hard to align sections, they can be quite useful. When manual landmarks are used, they don't need to cover the entire dataset. | ||
| This will open a dialog where you can configure and start the alignment. | ||
|  | ||
| ## Select AI Alignment Task | ||
|  | ||
| * **Align Sections:** Align all sections of this dataset along the Z-axis using features in neighboring sections. This only supports datasets with a single tile per section (no in-plane stitching needed). | ||
| * **Align & stitch multiple tiles:** (Coming Soon) For stitching and aligning datasets with multiple tiles per section, please contact us via email for a quote. [Learn more about our alignment services.](https://webknossos.org/services/alignment) | ||
|  | ||
| ## Alignment Settings | ||
|  | ||
| * **New Dataset Name:** The name of the new dataset that will be created with the aligned images. | ||
| * **Manual Matches:** You can use manual matches from a skeleton annotation to help the alignment process in specific spots. This can be useful for particularly hard-to-align sections. When manual landmarks are used, they don't need to cover the entire dataset. Instead, these manual landmarks can be placed to help with tricky cases such as a big gap, tear or jump between two sections. | ||
|  | ||
| ## Credit Information | ||
|  | ||
| This section provides an overview of your available credits in your organization and the estimated cost for the alignment. Cost varies depending on the size of your dataset. | ||
|  | ||
| Computation time for the alignment depends directly on the size of your dataset. The finished analysis will be available as a new dataset from your dashboard. You can monitor the status and progress of the analysis job from the [`Processing Jobs` page](./jobs.md) or wait for the email notification. | ||
|  | ||
| For multi-tile image stacks, please refer to our [Alignment services](https://webknossos.org/services/alignment). | 
| Original file line number | Diff line number | Diff line change | 
|---|---|---|
|  | @@ -31,5 +31,5 @@ If case you want to reload, hide or remove a 3D mesh during proofreading, you ca | |
|  | ||
| In addition to the handy shortcuts available from the right-click context menu, users can also directly modify the supervoxel graph like any other skeleton to manually add/remove nodes and edges for fine-grained control. | ||
|  | ||
| !!!info | ||
| !!! info | ||
| The proofreading tool requires a supervoxel graph representation of a segmentation to work. At this time, these can only be obtained from the [Voxelytics AI segmentation pipeline](https://voxelytics.com). We are actively working to make this available for more users, so please reach out to us to get you started and provide feedback: [[email protected]](mailto:[email protected]) | ||
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
should also be read from application.conf, no?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Yes, that would be good. We have to do another pass on the pricing models anyways.