Play with a live example here
AIDA is an attempt to bring an open source web-based work-flow to image annotation. Currently, in the biomedical imaging space, image annotation is largely confined to single computer shrink-wrapped software with limited interactive capabilities and few, usually closed, data formats.
AIDA is a web interface that enables distributed teams of researchers to directly annotate images with easy to use on screen drawing tools. AIDA supports the creation of well defined annotation trials which include a series of high resolution images and a specific set of annotation tasks.
For documentation and further information see the Wiki.
The user interface is a React NextJS Single Page Application, encapsulating and interacting with OpenLayers to provide the images and drawing functionality. Tailwind is the css framework.
AIDA reads and writes data in a simple JSON structure over a web API.
The next stage of development will be to integrate intelligent tools that leverage the power of machine learning techniques. We hope to enhance the ability of the user to quickly and accurately mark up images through predictive assistance.
The software is published as Open Source under the permissive MIT license.
You can use AIDA on your local machine. The only requirement NodeJS.
- Clone the repository
- Install the dependencies via NPM
npm install
- Run the build script
npm run build
- Add the images you want to annotate to the
/local/data/
directory. - Run the local server application via
npm run start
- Navigate to the localhost webserver specified in the console
- Annotations are read from and written to
/local/data/
local
| local.ts
| tsconfig.json
| ...
|
| └──data
| | README.md
| | project.json // AIDA project file (see below for example content)
| | annotation.json
|
| └──image-dz // DeepZoom format 2D image
| | | image.dzi
| |
| | └──image_files
| | |
| | | └──0
| | | | 0_0.jpeg
| | | | 0_1.jpeg
| | | | ...
| | |
| | | └───1
| | | | 0_0.jpeg
| | | | 0_1.jpeg
| | | | ...
| | |
| | | └───...
project.json defines the combination of image and annotation data.
{
"image": "image-dz/image.dzi",
"annotation": "annotation.json"
}
Requirement NodeJS. Example work-flow:
- Clone the repository
- Install dependencies via
npm install
- For development: start a hot-reloading dev server with
npm run start
- For deployment: bundle together with
npm run build
This removes the requirement for DZI file formats and replaces it with a web-server. At this point it is still a bit experimental.
- Deploy Cantaloupe IIIF server as described here.
- Edit the Cantaloupe configuration file so that
FilesystemSource.BasicLookupStrategy.path_prefix
points to/local/data
. - Cataloupe server must be running at 'localhost:8182'
- Currently only TIFF files are supported.
This application was built by Alan Aberdeen and Stefano Malacrino with contributions from Nasullah Khalid Alham and Ramón Casero. It originated at the Quantitative Biological Imaging Group, The University of Oxford.