Clone or download the project from https://github.com/pnnl/EyeSea.git
Install conda for managing environments. Then install install dependencies:
cd $EYESEA_ROOT/uclient
conda env create -f env-eyesea-client.yml
This will install node in your system.
Then use npm to install the dependencies:
npm install -g yarn
yarn install
cd $EYESEA_ROOT/server
conda env create -f env-eyesea-server.yml
Start the server and client:
$EYESEA_ROOT/eyesea.sh
Open your web browser to http://localhost:7890/
- Add a video.
- Select an algorithm to use for detection. One algorithm bgMOG2 is included. You can add new algorithms (see below).
- View the results by clicking on the video thumbnail.
- Play the video with detections overlayed. Add/delete detections.
- View a summary of the results.
- Download all the detections into a csv file for further analysis.
New algorithms for detection can be added to EyeSea via the API -- see algorithms/eyesea_api.py and algorithm/algorithm_example.*
The EyeSea software can be configured to automatically ingest data recorded by the StereoVision system developed by Marine Situ. See server/stereovison_ingest.py.
- The included detection algorithm bgMOG2 may or may not work on your dataset. You may need to tune the parameters on your data to achieve the right trade-off between detection rate and false positive rate. You may need to develop your own custom detection algorithm.
2.a. The software can only handle a dataset of about 20 videos at a time. To work with larger datasets, divide the data into "days" or some other grouping that makes sense for you. Only one dataset will be visible in EyeSea at any one time. In order to change the dataset, you will need to edit /home/eyesea/EyeSea/server/eyesea_settings.json and change the “database” entry to the database for the dataset you want to view.
2.b. There is a script /home/eyesea/EyeSea/server/select_db.sh that will generate a list of all the databases (datasets) that have been ingested (see "Integration with StereoVision" above for how to ingest data). The script will automatically edit the settings file and attempt to restart the server, however the restart fails. So the workaround is to run /home/eyesea/EyeSea/server/select_db.sh, select the database, then run /home/eyesea/EyeSea/eyesea.sh to restart the software.