From 90daa2933835409c44213a684834bd3218929a9b Mon Sep 17 00:00:00 2001 From: jkibele Date: Mon, 15 Dec 2014 17:57:31 +1300 Subject: [PATCH 1/3] Progress on docs update. --- .../docs/build/doctrees/environment.pickle | Bin 44515 -> 41289 bytes bps_package/docs/build/doctrees/index.doctree | Bin 6530 -> 6532 bytes .../docs/build/doctrees/installation.doctree | Bin 59713 -> 3726 bytes .../docs/build/doctrees/tutorial.doctree | Bin 28516 -> 31901 bytes .../docs/build/html/_sources/index.txt | 6 +- .../docs/build/html/_sources/installation.txt | 126 +-------------- .../docs/build/html/_sources/tutorial.txt | 28 +++- bps_package/docs/build/html/index.html | 23 ++- bps_package/docs/build/html/installation.html | 144 +----------------- bps_package/docs/build/html/objects.inv | Bin 430 -> 431 bytes bps_package/docs/build/html/searchindex.js | 2 +- bps_package/docs/build/html/tutorial.html | 38 +++-- bps_package/docs/source/index.rst | 6 +- bps_package/docs/source/installation.rst | 126 +-------------- bps_package/docs/source/tutorial.rst | 28 +++- 15 files changed, 99 insertions(+), 428 deletions(-) diff --git a/bps_package/docs/build/doctrees/environment.pickle b/bps_package/docs/build/doctrees/environment.pickle index dd7b117780b2b24bf1edc7e5cf4be0e317bb878c..1d774a10a135b89ba01d039611d68fa1b20bbb01 100644 GIT binary patch delta 11240 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 BKTZGu delta 14550 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 E18hw~Jpcdz diff --git a/bps_package/docs/build/doctrees/index.doctree b/bps_package/docs/build/doctrees/index.doctree index ddd43998e0b67f56190283bac1c957e6679f7f8a..d116a2eaba37bbede2834b8b3e0c3099cf79c252 100644 GIT binary patch delta 369 zcmX}o%Syvg5P)HiLLrTXQmYt6iil`i?84$oT)F6?v|f+mCB~#V?F7=K(~}@B&O%Xe zqX=0GK7x=Z@Qu9R6`LY12fi78=D2uLyqT9ISj-+_MPN1jkuFJU2^5%x5g3CElwe%o za&RrD`(?;OFAS)-0y80rpOeh$=@G68T%U$vh?Xk8q5DSn8Wp$^+KDU)F63g^N=%Zu z?T+3NxEtxsj;38*Gu@i+SvD^?uE}`ZYU&LZN3~P5Cr}HvrG?mj6rl%K(gZPrTS-xB z0!>PCU~tH)KIF>DzqXJhcX~-*sHV1J4ZNd6b<1X&<#5*aEZ5PPqZ>9e@&1g;ZT;YX zekc=~F#TprKk;BA2tow*6Ob7Ij+Yv?&)n0pUOS7&oVha3w#Mil}zGQ e;9KWi`Ka_gC@E9v4;4RYtj+3?`x5x=8--s728M_L delta 365 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 Kyb!-|!u}t0iW98> diff --git a/bps_package/docs/build/doctrees/tutorial.doctree b/bps_package/docs/build/doctrees/tutorial.doctree index 9e8f12f1e3e2d0c95c4a4f4d5db7c5f4f5e11874..d4f196d1ce86de63a80fb27de2ae0f1b9dfb284f 100644 GIT binary patch literal 31901 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 y<{R)IA>#<6*P8`CqSslY= 1.2.1.post1, you can figure it out by typing ``pip show BenthicPhotoSurvey`` on your command line. The response should contain the location of the ``benthic_photo_survey`` directory. To run BPS, navigate to that directory and start BPS by typing ``python benthic_photo_survey.py`` (on Windows, you'll leave off the ``python`` and just type ``benthic_photo_survey.py``). - -On my computer it looks somthing like this:: - - blah@blahbidyblah:~$ pip show BenthicPhotoSurvey - --- - Name: BenthicPhotoSurvey - Version: 0.1 - Location: /usr/local/lib/python2.7/dist-packages - Requires: - -So, to launch, I type:: - - blah@blahbidyblah:~$ cd /usr/local/lib/python2.7/dist-packages/benthic_photo_survey - blah@blahbidyblah:/usr/local/lib/python2.7/dist-packages/benthic_photo_survey$ python benthic_photo_survey.py - -...and the program should run and you can move on to the :doc:`tutorial`. I will, hopefully, get around to packaging BPS a little better so it's easier to launch after installing but this will have to do for now. - -Downloading and Installing a Release from bitbucket -___________________________________________________ - -Use your web browser to `download the code`_ from bitbucket. Unzip that file somewhere. Navigate into the ``benthic_photo_survey`` directory that contains ``benthic_photo_survey.py`` and type ``python benthic_photo_survey.py`` (on Windows, you'll leave off the ``python`` and just type ``benthic_photo_survey.py``). - -Getting the Latest Code from bitbucket -______________________________________ - -First, make sure you have `git`_ installed. Then open the command line where you'd like to put the code and type ``git clone https://jkibele@bitbucket.org/jkibele/benthic_photo_survey.git``. That will download the latest code **which may not be stable**. To run it just follw the instructions from the previous subsection. - -Windows -------- - -The following steps will demostrate how to install the software required to run BPS, use the `git`_ version control system to download BPS, and then run BPS on Windows. - -- Satisify Install Requirements 1 - 4 with PythonXY - 1. Download the latest `PythonXY`_ installer from the `PythonXY Windows Download Page`_. Just click on one of the ``.exe`` files listed under 'Current Release'. The multiple links all lead to the same file, just on different servers. - #. Run the installer, and make sure that Python2.7.x (currently 2.7.3 but that may change, you just don't want 3.x), GDAL, PyQt4.x, pip, and Matplotlib are selected. These items are listed under the expandable python menu. You can check whatever additional items you'd like installed as well. - #. Click through the dialogs to finish the installation process. -- Install `pynmea`_ with pip - 1. Go to the `command prompt`_ and type ``pip install pynmea``. If you installed pip in the previous step, that command should work and you should be able to move on to the 'installing pyexiv2' step below. If there was a problem with pip, you can use the sub-steps below to install it. - #. If you get a message that says something about the 'command pip not found', then try typing ``easy_install pip`` at the `command prompt`_. If that doesn't work, you'll need to install `python-distribute`_ and `pip`_ as described in the next sub-step. If it does work (and it installs pip), just go back to the previous sub-step and it should work. - #. Download the correct installer for your system architecture (32 or 64 bit) from the list of `python-distribute installers`_. We installed python2.7.x so you want the one that matches your system architecture and ends with py2.7.exe. After running that installer, you should be able to type ``easy_install pip`` followed by ``pip install pynmea``. The good news is that python-distribute and pip can be used to install all sorts of useful python stuff and, now that you have them installed, that'll be easy. -- Install pyexiv2 - 1. Go to the `pyexiv2 download page`_, scroll down to the Windows section appropriate to your system (32 or 64 bit) and download the latest installer for Python 2.7. Note that the latest versions are at the bottom of the list rather than the top. - #. Run the installer -- Install `git`_ if you don't already have it - 1. Go to the `git download page`_, download the installer for your system, and run it. - #. The default list of components on the 'Select Components' screen is fine. - #. The choice of 'Start Menu Folder' doesn't really matter. I used the default. - #. On the next screen, choose "Run Git from the Windows command prompt". - #. On the 'Configure Line Ending' screen, select the default of 'Checkout Windows-style, commit, unix-style'. -- Use git to get BPS - 1. Open a `command prompt`_ and navigate to a directory where you would like to install BPS - #. Type ``git clone https://jkibele@bitbucket.org/jkibele/benthic_photo_survey.git``. This will clone the contents of BPS code repository to your computer. - #. If, after changes have been made to BPS, you want the latest version you can return to a command prompt in this directory and type ``git pull``. - -That should do it. Make sure you make a note of where you installed BPS. Then take a look at the :doc:`tutorial`. I intend to add a section there specifically about using the test data for a dry run. For now just check out the "Using BPS" section and look for the ``test_data`` directory at the same level as the ``data`` directory. There are some images, a gps log, and a sensus depth log in there that you can use to get the hang of it. - -Mac ---- - -Need to write up these steps too. - -Ubuntu ------- - -Need to write up these steps too. - -Testing -------- - -I will describe how to run the automated tests and how to use the test data that's installed with BPS to make sure everything is working. +Bethic Photo Survey (BPS) can run on Linux, Mac, and Windows operating systems. For installation instructions please see the `BPS Installation Page`_. -.. _download the code: https://bitbucket.org/jkibele/benthic_photo_survey/downloads -.. _bitbucket: https://bitbucket.org/jkibele/benthic_photo_survey -.. _pip: https://pypi.python.org/pypi/pip -.. _GDAL: http://www.gdal.org/ -.. _PyQt4: http://www.riverbankcomputing.com/software/pyqt/download -.. _pynmea: http://code.google.com/p/pynmea/ -.. _PythonXY: http://code.google.com/p/pythonxy/ -.. _PythonXY Windows Download Page: http://code.google.com/p/pythonxy/wiki/Downloads?tm=2 -.. _git: http://git-scm.com/ -.. _git download page: http://git-scm.com/downloads -.. _Python 2.7: http://www.python.org/download/releases/2.7.3/ -.. _pyexiv2: http://tilloy.net/dev/pyexiv2/ -.. _pyexiv2 download page: http://tilloy.net/dev/pyexiv2/download.html -.. _Matplotlib: http://matplotlib.org/ -.. _SciPy: http://scipy.org/ -.. _PythonXY: http://code.google.com/p/pythonxy/ -.. _command prompt: http://www.computerhope.com/issues/chdos.htm -.. _python-distribute: https://pypi.python.org/pypi/distribute -.. _python-distribute installers: http://www.lfd.uci.edu/~gohlke/pythonlibs/#distribute -.. _GitHub Repository: https://github.com/jkibele/benthic_photo_survey -.. _BPS page: http://jkibele.github.io/benthic_photo_survey/ \ No newline at end of file +.. _BPS Installation Page: + http://jkibele.github.io/benthic_photo_survey/installation/ \ No newline at end of file diff --git a/bps_package/docs/build/html/_sources/tutorial.txt b/bps_package/docs/build/html/_sources/tutorial.txt index 47956e5..d10f332 100644 --- a/bps_package/docs/build/html/_sources/tutorial.txt +++ b/bps_package/docs/build/html/_sources/tutorial.txt @@ -1,10 +1,28 @@ Tutorial ======== -This document may need to be fleshed out a bit better but this should serve as an outline. +This document will, hopefully, teach you what you need to know to collect photo transect data and process it with BPS. It will cover: + +1. Learning how to run BPS using the included test data. + +2. Setting up for and conducting field work. + +3. Getting your data into BPS. + +4. Using BPS and exporting the results. + +WARNING! +-------- + +Please make sure you back up all your data (photos, GPS, and Depth logs) before using it in BPS. I haven't seen it happen yet but it is entirely possible that BPS could ruin your files. This is not a commercial product and it does not come with any guarantees. + +Field Work +---------- + +This section will discuss how to prepare for and conduct field work. This text assumes that you are breath-hold diving or using SCUBA. BPS can be used with a drop camera as well. If you're going to use it that way, just use your imagination to adapt these instructions. Initial Setup -------------- +_____________ 1. You should make sure you have BPS installed, running, and tested as described in :doc:`installation`. @@ -19,17 +37,17 @@ Initial Setup 5. Attach depth sensor to something. I generally attach it to the camera housing. I may need to compensate for the fact that the camera is usually a meter or so above the bottom when I take the photos but that seems preferable to getting the logger full of sediment. Clock Synchronization ---------------------- +_____________________ Since BPS will use time codes to find positions and/or depths for each photo it is essential that relevant clocks are all in sync. Before getting in the water, make sure your camera's clock is set to the correct local time. It's easiest to use the time display on your GPS for this purpose. The Panasonic Lumix DMC-TS4 that I use has a built in GPS that is supposed to be able to set the camera's clock to GPS time. If you use this feature make sure to double check it. There camera clock should match the GPS clock within about a second. The depth logger actually sets the time codes when the log is downloaded from the logger. Therefore, the computer that you use to download the depth log needs to have its clock synced to GPS time when the file is downloaded. If your computer's clock is set by the internet, this is usually good enough (in my experience) but you should double check. While in the Water ------------------- +__________________ Regardless of whether you are on SCUBA or free diving, you should pause for a few seconds before taking a photo and pull down lightly on the rope you have attached to your GPS float. To get the best possible accuracy, you need the float to be directly over you. Pausing at the bottom will also minimize the effect of any clock synchronization problems for both depth and position. Also, don't drown. That's bad for data collection. Back on the Surface -------------------- +___________________ If you're using a Garmin GPS60 like I am, **do not** save the active track. Saving the track and then downloading the saved track gets rid of the timestamp on each position rendering it useless as far as BPS is concerned. Instead, you want to download the active track. I use `GPSbabel`_ to download the track and convert it to a GPX file. Many newer GPS models output GPX files without the need for conversion. You just need to make sure you're getting a GPX file that has a timestamp for each point within the track. diff --git a/bps_package/docs/build/html/index.html b/bps_package/docs/build/html/index.html index b538d56..cfff333 100644 --- a/bps_package/docs/build/html/index.html +++ b/bps_package/docs/build/html/index.html @@ -52,9 +52,9 @@

Navigation

Welcome to Benthic Photo Survey’s documentation!

Benthic Photo Survey (BPS) is a software tool (written in Python) that is intended to simplify the task of collecting reference data (sometimes called groundtruth data) for remote sensing of the marine environment. Using a digital camera in a water proof housing, a consumer grade handheld GPS, and (optionally) a depth logger a user can collect data in the field.

-_images/BPS_overview.png

The photos and logs (GPS and Depth) are then loaded into BPS. BPS can then tag the photos with position, depth, and temperature (if using the Sensus Ultra depth/temperature logger). The the users can view each photo in BPS and tag each photo with a substrate and habitat type. All data (position, depth, temperature, habitat, and substrate) are stored in the exif portion of the jpeg photos.

Once the photos are all tagged, BPS can export a GIS Shapefile with habitat, substrate, depth, and temperature attributed points for each photo’s location. This shapefile can then be used to create a training set for supervised classification or as reference data for accuracy assessment.

+_images/BPS_overview.png

Contents

@@ -64,21 +64,16 @@

ContentsWhat BPS Actually Does -
  • IMPORTANT NOTE:
  • -
  • Installation
  • @@ -80,7 +80,7 @@

    Navigation

  • modules |
  • -
  • Benthic Photo Survey 1.0.0 documentation »
  • +
  • Benthic Photo Survey 1.0.1 documentation »
  • @@ -712,7 +712,7 @@

    Navigation

  • modules |
  • -
  • Benthic Photo Survey 1.0.0 documentation »
  • +
  • Benthic Photo Survey 1.0.1 documentation »
  • Module code »
  • diff --git a/bps_package/docs/build/html/code.html b/bps_package/docs/build/html/code.html index eca8de1..5c5ec06 100644 --- a/bps_package/docs/build/html/code.html +++ b/bps_package/docs/build/html/code.html @@ -6,7 +6,7 @@ - Code Documentation — Benthic Photo Survey 1.0.0 documentation + Code Documentation — Benthic Photo Survey 1.0.1 documentation @@ -14,7 +14,7 @@ - - + + @@ -199,7 +199,7 @@

    Table Of Contents

    Previous topic

    Tutorial

    + title="previous chapter">Learning BPS

    This Page

    @@ -136,7 +136,7 @@

    Navigation

  • next |
  • -
  • Benthic Photo Survey 1.0.0 documentation »
  • +
  • Benthic Photo Survey 1.0.1 documentation »
  • @@ -69,7 +69,7 @@

    Previous topic

    title="previous chapter">Introduction

    Next topic

    Tutorial

    + title="next chapter">Learning BPS

    This Page

    @@ -145,7 +145,7 @@

    Navigation

  • previous |
  • -
  • Benthic Photo Survey 1.0.0 documentation »
  • +
  • Benthic Photo Survey 1.0.1 documentation »
  • @@ -95,7 +95,7 @@

    Navigation

  • modules |
  • -
  • Benthic Photo Survey 1.0.0 documentation »
  • +
  • Benthic Photo Survey 1.0.1 documentation »
  • @@ -245,7 +245,7 @@

    Navigation

  • previous |
  • -
  • Benthic Photo Survey 1.0.0 documentation »
  • +
  • Benthic Photo Survey 1.0.1 documentation »