To set up your working environment:
- Register for an EBRAINS account, login, and set up a private collab.
- Initialise the Bucket by clicking on Bucket in the navigation panel -> Create Bucket.
- Give users Admin, Editor or Viewer rights by clicking Team in the navigation panel.
- Install WebAlign, LocaliZoom, and Meshview from the EBRAINS Collaboratory App Store (see instructions below)
How to install Collaboratory Apps
- To install Collaboratory Apps, click on the + Create button (top right corner).
- Give the page a Title (for example, WebAlign), select the Community App option, and click Create.
- Select the App to install (for example, WebAlign), and click Save and View.
- Repeat this for all the relevant Community Apps.
- Navigate between the Apps in the navigation panel. File transfer between the Apps is through the Bucket.
How to prepare your images?
1. Prepare your images before upload by naming them according this naming convention:
The ID should be unique to the particular brain section and in the format sXXX, with XXX representing the section number. The section number should reflect the serial order and spacing of the sections (e.g., s002, s006, s010 for every 4th section starting with section 2).
Example: tg2345_MMSH_s001.tif
- Upload the images you want to work with into the bucket of your collab using the Data proxy (press on "Bucket")
2. Image ingestion
Two alternatives are available, the QUINT image creator app, which is automatically creating the necessary files for downstream analyses in your collab. Or, you can use the image service app which is able to create image tiles in different formats. The steps for preparing your files are described bellow:
Use the "QUINT image creator" app
1. Select images to ingest
Shift-Click on your images in order to select them and press the "create brain from selection" button. Choose a name for your serie.
The App will automatically generate the files for you. Monitor the progress under the "processing" tab and on the two dashboards on the left.
When the ingestion is finished, your serie will appear under the "Prepared Brains" tab.
Click on the "View Brain" button in order to preview your images.
Use Image service app
1. Start the Image service UI from your webapp
2. Fill in the requested information:
- type or paste the URL of the dataset folder containing the images. Note! the name of the collab supports only hyphens.
E.g. https://data-proxy.ebrains.eu/api/v1/buckets/name-of-my-collab
- you can filter the data using RegEx expressions. E.g. name_of_the_data_file.*\.jpg$ (for filtering jpeg files only). Or e.g hbp-00173_262_1366_1827.*\.tif$ for tiff files.
- If your URL is valid, you will see the list of files by pressing "yes". Paste the name of the file you want to select. You can go back to the previous step by pressing "back"
- Or use a prefix: E.g. https://data-proxy.ebrains.eu/api/v1/buckets/name-of-my-collab?prefix=name_of_the_data_folder
- allow the image service to access your bucket
- Store your results: Choose "create a new collab" where your ingested chunks will be stored in the bucket. This option is preferred in order not to overload the Bucket of your current collab. Give a name to your Bucket as well as a name for the collab (bucket slug) (see this illustration for more info)
- Customize your ingestion:
- give a name to your ingestion in the "description of ingestion" field.
3. For obtaining chunks in DZI format (compatible with WebAlign), choose "2D" and "not stack of Images".
4. Click "preview" in order to preview your task
5. Click "create task" to launch your ingestion
6. Checking results in the Main UI page
Press "Task" in the higher right corner of the window.
When creating the task, a red banner is displayed in the "Create Task" view if something goes wrong for instance.
Otherwise, you will be redirected to the tasks list where the created task is selected.
Note! A task will be first "Queued" then "Running"; "Stagingout"and ultimately "Successful" or "Failed"
Refresh your browser in order to check the status of your task.
When "successful", your chunks have been created.
Use Image service app
1. Start the Image service UI from your webapp
2. Fill in the requested information:
- type or paste the URL of the dataset folder containing the images. Note! the name of the collab supports only hyphens.
E.g. https://data-proxy.ebrains.eu/api/v1/buckets/name-of-my-collab
- you can filter the data using RegEx expressions. E.g. name_of_the_data_file.*\.jpg$ (for filtering jpeg files only). Or e.g hbp-00173_262_1366_1827.*\.tif$ for tiff files.
- If your URL is valid, you will see the list of files by pressing "yes". Paste the name of the file you want to select. You can go back to the previous step by pressing "back"
- Or use a prefix: E.g. https://data-proxy.ebrains.eu/api/v1/buckets/name-of-my-collab?prefix=name_of_the_data_folder
- allow the image service to access your bucket
- Store your results: Choose "create a new collab" where your ingested chunks will be stored in the bucket. This option is preferred in order not to overload the Bucket of your current collab. Give a name to your Bucket as well as a name for the collab (bucket slug) (see this illustration for more info)
- Customize your ingestion:
- give a name to your ingestion in the "description of ingestion" field.
3. For obtaining chunks in DZI format (compatible with WebAlign), choose "2D" and "not stack of Images".
4. Click "preview" in order to preview your task
5. Click "create task" to launch your ingestion
6. Checking results in the Main UI page
Press "Task" in the higher right corner of the window.
When creating the task, a red banner is displayed in the "Create Task" view if something goes wrong for instance.
Otherwise, you will be redirected to the tasks list where the created task is selected.
Note! A task will be first "Queued" then "Running"; "Stagingout"and ultimately "Successful" or "Failed"
Refresh your browser in order to check the status of your task.
When "successful", your chunks have been created.
Use Image service app
1. Prepare your images before upload by naming them according this naming convention:
The ID should be unique to the particular brain section and in the format sXXX, with XXX representing the section number. The section number should reflect the serial order and spacing of the sections (e.g., s002, s006, s010 for every 4th section starting with section 2).
Example: tg2345_MMSH_s001_segmentation.png
- Upload the images you want to work with into the bucket of your collab using the Data proxy (press on "Bucket")
2. Start the Image service UI from your webapp
3. Fill in the requested information:
- type or paste the URL of the dataset folder containing the images. Note! the name of the collab supports only hyphens.
E.g. https://data-proxy.ebrains.eu/api/v1/buckets/name-of-my-collab
- you can filter the data using RegEx expressions. E.g. name_of_the_data_file.*\.jpg$ (for filtering jpeg files only). Or e.g hbp-00173_262_1366_1827.*\.tif$ for tiff files.
- If your URL is valid, you will see the list of files by pressing "yes". Paste the name of the file you want to select. You can go back to the previous step by pressing "back"
- Or use a prefix: E.g. https://data-proxy.ebrains.eu/api/v1/buckets/name-of-my-collab?prefix=name_of_the_data_folder
- allow the image service to access your bucket
- Store your results: Choose "create a new collab" where your ingested chunks will be stored in the bucket. This option is preferred in order not to overload the Bucket of your current collab. Give a name to your Bucket as well as a name for the collab (bucket slug) (see this illustration for more info)
- Customize your ingestion:
- give a name to your ingestion in the "description of ingestion" field.
3. For obtaining chunks in DZI format (compatible with WebAlign), choose "2D" and "not stack of Images".
4. Click "preview" in order to preview your task
5. Click "create task" to launch your ingestion
6. Checking results in the Main UI page
Press "Task" in the higher right corner of the window.
When creating the task, a red banner is displayed in the "Create Task" view if something goes wrong for instance.
Otherwise, you will be redirected to the tasks list where the created task is selected.
Note! A task will be first "Queued" then "Running"; "Stagingout"and ultimately "Successful" or "Failed"
Refresh your browser in order to check the status of your task.
When "successful", your chunks have been created.
How to use WebAlign
WebAlign is an online tool for spatial registration of histological section images from rodent brains to reference 3D atlases. Different experimental datasets registered to the same reference atlas allows you to spatially integrate, analyse and navigate these datasets within a standardised coordinate system. The output of WebAlign can be used for analysis in the online QUINT workflow.
Online user manual: https://webalign.readthedocs.io/en/latest/
The view can be magnified using the 4-arrow "X" symbol in the top-right corner.
Opening a sample dataset
Demo dataset is loaded using the file: demo_mouse_data_start
You can see the result of a finished anchoring by choosing the file: demo_mouse_data
Opening a private dataset
After you have uploaded your images to the bucket and ingested your images with the Image service, this has generated DZI chunks. These DZI files are used by WebAlign.
1. Start a new registration by pressing "create new series", the UI will ask you for the name of the collab where DZI chunks are stored. E.g. my-collab-name
2. WebAlign will search for DZI files and list those found.
3. Enter a name for the descriptor json file which will be created and will contain your anchoring information.
4. Choose the target 3D reference atlas (WHSv3 for Rat and CCFv3_2017 for Mouse).
5. Press "create". The main window will now display WebAlign. This step can take some time.
Registration instructions
Short keys
To do this | Press | Description |
---|---|---|
Place marker | Space bar | Markers are the anchor points of most transformations (stretch and rotate). |
Remove marker | Esc | Removes a previously placed marker. |
Horizontal stretch from marker | Left/Right arrow keys | Marker becomes a vertical line, and mouse drag horizontally resizes the cut. |
Vertical stretch from marker | Up/Down arrow keys | Marker becomes a horizontal line, and mouse drag vertically resizes the cut |
Rotate around marker | PgUp/PgDown | Marker becomes a cross with a surrounding arc, and mouse drag rotates the cut. |
In plane adjust | Click + drag | If there is no marker, or the marker is a cross, mouse drag slides the cut in its plane (translation). |
Start the registration
The main window shows the selected image with the atlas overlay.
-If necessary, change the atlas from coronal view to sagittal or horizontal view (see Navigation panel below)
1. Move the atlas to the approximate position of your section using the yellow dots in the three small windows from the navigation panel.
2. Start anchoring by placing a marker with the "Space bar" , it is initially a cross, and it is the fix point of (most) transformations. The "Escape key" can be used to remove the marker.
3. The main window supports mouse drag in multiple modes in order to stretch the atlas and find the correct position.
-If there is no marker, or the marker is a cross, mouse drag slides the cut in its plane (translation).
-Keyboard controls to modify mouse drag (they also place the marker if it's not placed already):
-Left/Right arrow keys: marker becomes a vertical line, and mouse drag horizontally resizes the cut
-Up/Down arrow keys: marker becomes a horizontal line, and mouse drag vertically resizes the cut
-PgUp/PgDown keys: marker becomes a cross with a surrounding arc, and mouse drag rotates the cut. This may look weird because the cut remains being a rectangle, and when the horizontal and vertical physical resolutions (like pixels/mm) of the image do not match, atlas cut will appear stretching/shrinking with the rotation.
After each transformation step, marker resets to a cross (translation mode).
Note! The panel can be resized towards the left (common border with Control Panel) and towards the bottom (common border with Filmstrip).
4. Save the position by pressing "Store". The registration is copied to the remaining slides to help with scaling (visible also in the filmstrip)
5. Go through all sections and refine position and cutting angles.
Note! When jumping from one section to the other, wait a few seconds for the image to load
Note! The "restore" button allows you to go back to the saved position if necessary
6. Save your results in the descriptor file (json) by pressing "Save to bucket".
7. When the registration is finished, you can export your descriptor files ( .flat files used for analysis in the QUINT workflow) by pressing "export overlays".
Control panel:
Button | Function |
---|---|
Store | Store the current alignment and propagate to unaligned sections (Note this does not save the series to your bucket) |
Restore | Reset the current alignment to the last stored position |
Clear | Reset the current alignment to the default position |
Overlay Slider | Opacity of the atlas overlay, when fully opaque, it becomes an outline |
Overlay color | The outline color |
Filmstrip slider and color | The above settings, applied to the filmstrip |
Save to bucket | Save the series to your bucket (and overwrite the existing file) |
Export overlays | Generates a series of .flat files (for Nutil or similar utility), and stores them into a .zip file in the bucket (re-using the name of the series descriptor, e.g. series13.json will export series13.zip) |
The right border of the control panel can be dragged horizontally, allowing to resize the panel and the main view
Filmstrip:
Drag horizontally to see series, click on a section in order to load it into the main view The top border of the filmstrip can be dragged vertically, allowing to resize the panel and the main view
Navigation panel:
Shows the three standard planes centered around the midpoint of the current alignment visible in the main view.
The rectangle of the current cut is projected on each standard plane as a yellow line/rectangle/parallelogram. A small yellow circle represents the midpoint of the projection.
Drag the midpoint around to move the cut.
Drag anywhere else to rotate the cut (inside the given standard plane, around the midpoint)