installation
python3 -m pip install --user pipx
python3 -m pipx ensurepath
pipx install diva-boiler
boiler login stumpf
usage
This documentation provides some useful examples, but is not exhaustive.
boiler [noun] --help
boiler [noun] [verb] --help
local data validation
boiler has utilities to validate KW18 data. These are offline operations.
boiler kw18 validate --help
boiler kw18 validate examples/kw18/minimal
boiler kw18 validate -r examples/kw18
For this command, it is assumed that all files associated with a KW18
dataset have the same base name and there is only one *.kw18
file
per directory.
searching for videos
boiler video search --help
boiler video search --name 2018-03-15.10-35-00.10-40-00.school.G336
boiler video search --scenario basketball --gtag G336
By default, this command will return only the first 20 matches. You can get the next
set of results using the --page
option.
boiler video search --page 2
downloading annotation data
The following command will download KPF files for one or more videos to the
current directory. This will fetch the most recent version of all data as
it currently exists in the system (including unaudited annotations).
boiler export video --help
boiler export video 2018-03-15.10-35-00.10-40-00.school.G336 2018-10-15.17-05-00.17-10-00.alb.G333
video pipeline
dispatch annotation tasks to vendors
Once a video exists, it can be transitioned to the annotation state.
boiler vendor dispatch --help
boiler activity list-types > activity-list.txt
boiler vendor dispatch \
--name kitware \
--video-name 2999-01-01.00-00-00.00-05-00.admin.G999 \
--activity-type-list activity-list.txt \
--set-name test-set
--annotation-repo-path iMerit/2018-09-06/08/2018-09-06.08-20-00.08-25-00.alb.G229/37-activities
Alternatively, the dispatch can be done after the results have been returned from the vendor.
This can be done in bulk as follows:
boiler kw18 dispatch \
--vendor imerit \
--set-name testing \
--activity-type-list activity-list.txt \
m2-annotations-imerit/iMerit/2018-09-06/*/37-activities
This command also support a --recursive
flag to search recursively for kw18 files under each
listed path.
vendor activity ingestion
When activities come back from vendors, they should be transitioned to the audit state.
boiler kw18 ingest --help
boiler kw18 ingest m2-annotations-imerit/iMerit/2018-09-06/*/37-activities
boiler kw18 ingest --recursive m2-annotations-imerit/iMerit
Stumpf will first detect whether the files have changed or not. If they have
not, no further action will be taken. If they have, then Stumpf will:
- Generate a transition to the "annotation" status
- Run server side validation
- If validation fails, return failure information
- If validation succeeds, transition to the "audit" state
and ingest activities from the KW18 files
audited annotation ingestion
To dispatch videos to gunrunner, use the following command.
boiler gunrunner dispatch --help
boiler gunrunner dispatch --activity-type-list 47-activities.txt \
m2-annotations-audit/2018-10-15/08/2018-10-15.08-15-00.08-20-00.alb.G333/47-activities