This is our solution on NOAA Fisheries Steller Sea Lion Population Count
Based on @outrunner - The 1st-place winner in the competition
The following specs were used to create the solution.
- Ubuntu 16.04 LTS
- Intel(R) Core(TM) i7-6700 CPU @ 3.40GHz
- 1x NVIDIA TitanXp
All requirements should be detailed in requirements.txt. Using Anaconda is strongly recommended.
$ conda create -n sealions python=3.6
$ source activate sealions
$ pip install -r requirements.txt
Download the data from Kaggle or Use Kaggle Api
$ kaggle competitions download -c noaa-fisheries-steller-sea-lion-population-count
Unzip with the key (kaggle2017steller)
$ 7z x KaggleNOAASeaLions.7z
After unzip the 7z file, the data directory is structured as:
Kaggle_Sea-Lions-Counting
+- TrainDotted
+- Train
+- Test
+- data_password.txt
+- MismatchedTrainImages.txt
+- csv
+- patch-image-csv.ipynb
+- submit.py
+- use-keras-to-count-sea-lions.ipynb
Create new directories and use patch-image-csv to create cropped images
$ mkdir 300x300
$ cd 300x300/
$ mkdir sea_lion
$ mkdir background
+- 300x300
| +- sea_lion
| +- background
Following the Jupyter Notebook use-keras-to-count-sea-lions. And you will get your training weights in logs directory.
Make Submission use submit.py
$ python submit.py
Use Kaggle API to submit result
$ kaggle competitions submit -c noaa-fisheries-steller-sea-lion-population-count -f submission.csv -m "Message"