This is the BIIGLE module module for the Machine Learning Assisted Image Annotation method.
composer require biigle/maia
.pip install -r requirements.txt
.Biigle\Modules\Maia\MaiaServiceProvider::class
to the providers
array in config/app.php
.php artisan vendor:publish --tag=public
to publish the public assets of this module.docker-compose exec app php artisan migrate
to create the new database tables.MAIA_TRAINING_PROPOSAL_STORAGE_DISK
and MAIA_ANNOTATION_CANDIDATE_STORAGE_DISK
variables in the .env
file to the name of the respective storage disk. Do not use the same disk for both! The content of the storage disks should be publicly accessible. Example for local disks:
// MAIA_TRAINING_PROPOSAL_STORAGE_DISK
'maia-tp' => [
'driver' => 'local',
'root' => storage_path('app/public/maia-tp-patches'),
'url' => env('APP_URL').'/storage/maia-tp-patches',
'visibility' => 'public',
],
// MAIA_ANNOTATION_CANDIDATE_STORAGE_DISK
'maia-ac' => [
'driver' => 'local',
'root' => storage_path('app/public/maia-ac-patches'),
'url' => env('APP_URL').'/storage/maia-ac-patches',
'visibility' => 'public',
],
This requires the link storage -> ../storage/app/public
in the public
directory.
New processing jobs are submitted to the default
queue of the gpu
connection. You can configure these with the MAIA_JOB_QUEUE
and MAIA_JOB_CONNECTION
environment variables. Optionally, you can configure a different queue (but not connection) fot the jobs to generate feature vectors with MAIA_FEATURE_VECTOR_QUEUE
. This can be used to give jobs to generate feature vectors a higher priority.
Reference publications that you should cite if you use MAIA for one of your studies.
BIIGLE 2.0
Langenkämper, D., Zurowietz, M., Schoening, T., & Nattkemper, T. W. (2017). Biigle 2.0-browsing and annotating large marine image collections.
Frontiers in Marine Science, 4, 83. doi: 10.3389/fmars.2017.00083
MAIA
Zurowietz, M., Langenkämper, D., Hosking, B., Ruhl, H. A., & Nattkemper, T. W. (2018). MAIA—A machine learning assisted image annotation method for environmental monitoring and exploration.
PloS one, 13(11), e0207498. doi: 10.1371/journal.pone.0207498
Take a look at the development guide of the core repository to get started with the development setup.
Want to develop a new module? Head over to the biigle/module template repository.
Contributions to BIIGLE are always welcome. Check out the contribution guide to get started.