Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Dev #197

Merged
merged 72 commits into from
Dec 8, 2023
Merged

Dev #197

Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
72 commits
Select commit Hold shift + click to select a range
4067e91
fix_gps_speed_course_in_table
SebastienPeillet Oct 24, 2023
c212646
add checkbox for each session to choose gps in merge
SebastienPeillet Nov 6, 2023
fd41188
merge behav attr and filter values on fly
SebastienPeillet Nov 6, 2023
4e92747
fix conditionnal filter
SebastienPeillet Nov 6, 2023
a98b280
change species attributes
SebastienPeillet Nov 9, 2023
bc0259d
Merge pull request #191 from hytechimaging/fix_gps_speed_course_in_table
SebastienPeillet Nov 14, 2023
40f7df1
Merge pull request #190 from hytechimaging/gps_merge_only_one_side
SebastienPeillet Nov 14, 2023
5494d34
add standard species list
SebastienPeillet Nov 14, 2023
eed4df0
fix_gps_speed_course_in_table
SebastienPeillet Oct 24, 2023
d277da8
add checkbox for each session to choose gps in merge
SebastienPeillet Nov 6, 2023
8fbb4af
styling
SebastienPeillet Nov 14, 2023
a373a89
Merge pull request #193 from hytechimaging/behav_merge
SebastienPeillet Nov 14, 2023
ab3fa74
fix sighting species join export
SebastienPeillet Nov 14, 2023
b136357
begin refac effort End + administration attributes transfert
SebastienPeillet Nov 3, 2023
6858b51
add routeType/session in Sightings/Followers export #47
SebastienPeillet Nov 9, 2023
eca65e7
remove print
SebastienPeillet Nov 14, 2023
ab9b3bc
fix attr
SebastienPeillet Nov 15, 2023
e77afdd
fix attr
SebastienPeillet Nov 15, 2023
d5574ff
fix init base
SebastienPeillet Nov 15, 2023
62e1582
Merge pull request #192 from hytechimaging/effort_refac
SebastienPeillet Nov 15, 2023
e3e45a1
fix link between boat and platform
SebastienPeillet Oct 24, 2023
c60c795
add survey management
SebastienPeillet Nov 6, 2023
9112fef
add standard plateform
SebastienPeillet Nov 15, 2023
38eb8ae
styling
SebastienPeillet Nov 15, 2023
8eea27b
merge strate into transect and change transect into multi entity tran…
SebastienPeillet Nov 16, 2023
fff0911
Merge pull request #194 from hytechimaging/ship_management
SebastienPeillet Nov 16, 2023
828f7a3
update doc
SebastienPeillet Nov 16, 2023
88d6e5d
add comment on merge action
SebastienPeillet Nov 16, 2023
015998b
Update data/transect.csv
SebastienPeillet Nov 16, 2023
889eaf2
Update data/survey.csv
SebastienPeillet Nov 16, 2023
2eecfef
merge in a QgsTask
SebastienPeillet Nov 17, 2023
03c398a
Merge pull request #195 from hytechimaging/doc
SebastienPeillet Nov 17, 2023
eb4bc08
styling
SebastienPeillet Nov 17, 2023
1123a80
Merge pull request #196 from hytechimaging/merge_in_QgsTask
SebastienPeillet Nov 17, 2023
85c638a
fix featureCount on new project
SebastienPeillet Nov 17, 2023
b8cb53b
Merge branch 'merge_in_QgsTask' into dev
SebastienPeillet Nov 17, 2023
44801c2
add wkt transect line
SebastienPeillet Nov 17, 2023
f3f0262
Update doc/source/interface.rst
SebastienPeillet Nov 27, 2023
11165de
Update src/gui/merge.py
SebastienPeillet Nov 27, 2023
bac7164
Apply suggestions from code review
SebastienPeillet Nov 27, 2023
dfbf904
import order
SebastienPeillet Nov 27, 2023
9daf5fb
add None return
SebastienPeillet Nov 27, 2023
0f5aca6
fix doc warning
SebastienPeillet Nov 27, 2023
1b10049
try fixing help icon
SebastienPeillet Nov 27, 2023
a9a6fa2
styling
SebastienPeillet Nov 27, 2023
4c03637
fix effort status
SebastienPeillet Nov 27, 2023
c958ebd
clean export on each new dialog show
SebastienPeillet Nov 27, 2023
19b0fc1
styling
SebastienPeillet Nov 27, 2023
fe77227
fix warning logs on survey table
SebastienPeillet Nov 27, 2023
5ee4bee
fix validated filter
SebastienPeillet Nov 27, 2023
0a8bd41
fix strate to strateType + load merged project
SebastienPeillet Nov 27, 2023
282dff7
prevent crash on stretchLastSection
SebastienPeillet Nov 29, 2023
307fd4b
styling
SebastienPeillet Nov 29, 2023
957f950
fix behav for trash
SebastienPeillet Dec 1, 2023
a8a43c3
fix deselect after validation
SebastienPeillet Dec 1, 2023
3aa4edf
show validated...
SebastienPeillet Dec 1, 2023
c7a4d8c
reload table on transect import
SebastienPeillet Dec 1, 2023
3e3dab3
fix wrong feature count on survey layer
SebastienPeillet Dec 1, 2023
520f413
styling
SebastienPeillet Dec 1, 2023
b1e264e
Merge branch 'tmp_fix_3.34' into dev
SebastienPeillet Dec 8, 2023
078ba85
fix behavSpecies
SebastienPeillet Dec 8, 2023
24f3cdd
update doc
SebastienPeillet Dec 8, 2023
05b141d
update README
SebastienPeillet Dec 8, 2023
cdd7929
supress old image
SebastienPeillet Dec 8, 2023
eb6e1ba
add some legs value
SebastienPeillet Dec 8, 2023
11b47b5
change symbology
SebastienPeillet Dec 8, 2023
7a95522
add opendatafolder action
SebastienPeillet Dec 8, 2023
3ef27a0
validated is not need in operator mode, so hide this attribute
SebastienPeillet Dec 8, 2023
74a616c
update csv values
SebastienPeillet Dec 8, 2023
5fb617d
add warning if no geometry
SebastienPeillet Dec 8, 2023
1ceb79f
fix export end to handle several days
SebastienPeillet Dec 8, 2023
f4e00e5
prepare v1.4.0
SebastienPeillet Dec 8, 2023
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
31 changes: 27 additions & 4 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,10 +4,32 @@ All notable changes to this project will be documented in this file.
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).

-----
## [v1.4.0] - 2023-12-08

### Add

- Transect management (import, selection in environment table)
- Action to open csv data folder


### Modified

- `End` environment entities are only created for export
- Merge processes in background
- Keep only one side gps entities during Merge process
- Fixes `speed` and `course` attributes in gps layer
- Add some fields in species table
- Fixes relation between boat and survey table
- Fixes `state` field into `StrateType`
- Add field `session` and `routeType` in sighting and follower export
- Merge behaviour fields into one behaviourSpecies field
- Prevent crash on `stretchLastSection` option

-----
## [v1.3.2] - 2023-05-09

## Modified
### Modified

- EffortGroup became a complex id and it is copied into Sighting/Followers entities during export
- EffortLeg added and copied in Sighting entities export
Expand All @@ -22,7 +44,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0

## [v1.3.1] - 2023-01-04

## Modified
### Modified

- Remove gps shortcut
- Fix typographic error in documentation
Expand All @@ -46,7 +68,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
- Unvalidated filter to help validation
- Boat layer

## Modified
### Modified

- GPS can be enable/disable (button + shortcut). Disable GPS also finishes effort
- Merge : dateCheckbox checked by default
Expand All @@ -63,7 +85,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0

## [v1.2.3] - 2022-07-06

## Modified
### Modified

- Plateform (environment table) is not a read-only column anymore.

Expand Down Expand Up @@ -206,6 +228,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0



[v1.4.0]: https://github.com/hytechimaging/sammo-boat/releases/tag/v1.4.0
[v1.3.2]: https://github.com/hytechimaging/sammo-boat/releases/tag/v1.3.2
[v1.3.1]: https://github.com/hytechimaging/sammo-boat/releases/tag/v1.3.1
[v1.3.0]: https://github.com/hytechimaging/sammo-boat/releases/tag/v1.3.0
Expand Down
2 changes: 1 addition & 1 deletion Makefile
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
VERSION := "1.3.2"
VERSION := "1.4.0"
TMPDIR := "/tmp/sammo-boat-$(VERSION)"

venv:
Expand Down
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -9,4 +9,4 @@ In particular, this tool is used by the [Megascope](https://www.observatoire-pel

SAMMO-Boat is a QGIS extension that redesigns interface and handles GPS and microphone support. The GPS trace, the effort data and observations are directly seen on the map. Observers focus on animal detection and can quickly fulfill this detection by relying on audio record. This record can be used afterwards to add the missing information and to validate observations according defined standards.

![](https://github.com/hytechimaging/sammo-boat/blob/main/images/interface.png?raw=true)
![](https://github.com/hytechimaging/sammo-boat/blob/main/doc/source/images/interface.png?raw=true)
17 changes: 17 additions & 0 deletions data/behav.csv
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
behav,behav_cat
attacked,behavBird
with_prey,behavBird
klepto,behavBird
diving,behavBird
follow_boat,behavBird
random_flight,behavBird
circular_flight,behavBird
straight_flight,behavBird
bow,behavMam
milling,behavMam
fast_swimming,behavMam
slow_swimming,behavMam
diving,behavMam
breaching,behavMam
fishing,behavShip
route,behavShip
3 changes: 2 additions & 1 deletion data/boat.csv
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
name
Thalassa
Europe
PourquoiPas
PourquoiPas
MiguelOliver
1 change: 1 addition & 0 deletions data/observers.csv
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
observer,firstName,lastName,organisation,contact
12 changes: 7 additions & 5 deletions data/plateform.csv
Original file line number Diff line number Diff line change
@@ -1,9 +1,11 @@
ship,plateform,plateformHeight
Thalassa,deck,8
Thalassa,bridge,14
Thalassa,upper_bridge,16.5
Thalassa,bridge_inside,14
Thalassa,upper_bridge_outside,16.5
Europe,deck,4
Europe,bridge,4
Europe,bridge_inside,4
PourquoiPas,deck,16.3
PourquoiPas,bridge,18.6
PourquoiPas,upper_bridge,21.6
PourquoiPas,bridge_inside,18.6
PourquoiPas,upper_bridge_outside,21.6
MiguelOliver,bridge_inside,8
MiguelOliver,bridge_outside,8
465 changes: 465 additions & 0 deletions data/species.csv

Large diffs are not rendered by default.

2 changes: 2 additions & 0 deletions data/survey.csv
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
region,survey,computer,shipName,cycle,session
NEA,IBTS,computer_1,Europe,cycle_1,LEG1
10 changes: 10 additions & 0 deletions data/survey_type.csv
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
name
PELGAS
PELACUS_springtime
IBTS
PELACUS_automn
CAMANOC
JUVENA
CGFS
EVHOE
MOOSE
1 change: 1 addition & 0 deletions data/transect.csv
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
transect;strateType;subRegion;length;wkt
2 changes: 1 addition & 1 deletion doc/source/conf.py
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,7 @@
author = "Hytech-Imaging"

# The full version, including alpha/beta/rc tags
release = "1.3.2"
release = "1.4.0"


# -- General configuration ---------------------------------------------------
Expand Down
Binary file added doc/source/images/init_data_folder_action.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file modified doc/source/images/interface.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file modified doc/source/images/merge_dialog.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file modified doc/source/images/settings_dialog.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
52 changes: 52 additions & 0 deletions doc/source/images/transect.svg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added doc/source/images/uml_diagram.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
2 changes: 1 addition & 1 deletion doc/source/index.rst
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@ In particular, this tool is used by the `Megascope <https://www.observatoire-pel

SAMMO-Boat is a QGIS extension that redesigns interface and handles GPS and microphone support. The GPS trace, the effort data and observations are directly seen on the map. Observers focus on animal detection and can quickly fulfill this detection by relying on audio record. This record can be used afterwards to add the missing information and to validate observations according defined standards.

.. image:: ../../images/interface.png
.. image:: images/interface.png
:align: center
:width: 800

Expand Down
32 changes: 21 additions & 11 deletions doc/source/interface.rst
Original file line number Diff line number Diff line change
Expand Up @@ -57,11 +57,18 @@ This button allows to open the settings dialog, to configure administrators tabl

|

`Survey`, `Transect` and `Strate` buttons open the single entity of their table
which can be modified to fulfill the session metadata.
`Survey` button opens the single entity of the table which can be modified to
fulfill the session metadata. In the `Survey` table, `survey` attribute list
values come from the `SurveyType` table, `shipName` attribute list values come
from the `Boat` table.

`Boat` and `Plateform` buttons open their tables dialog as each can contains more
than one entity.
`SurveyType`, `Transect`, `Boat` and `Plateform` buttons open their tables
dialog as each can contains more than one entity.

Especially for `Transect` table, it is possible to import a linear layer
(EPSG:4326). The imported layer must have the same attribute names as the
`Transect` table (transect,strateType,subRegion,length). Transect entity reference
will be available in the `Environment` table.

3 - |save| Validation button
~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Expand Down Expand Up @@ -113,6 +120,8 @@ data from two distinct session. The environment/sighting/follower tables will be
merging, avoiding to copy identical entities captured on a previous day. Gps point
will be also decimated to keep only one record per minutes.

User can use the gps checkboxes to choose which session gps layer will be kept.

6 - |environment| Environment button
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

Expand Down Expand Up @@ -201,18 +210,16 @@ A status will be assigned automatically to each entity.
The first status will be ``Begin``, then ``Add`` status will be created for the
next entities until user changes the ``routeType`` attribute. User creates
``Add`` entities if the environmental variables change during the route. When the
user changes the ``routeType`` attributes, it duplicates the previous entity
(``Begin`` or ``Add`` status) and assignes the ``End`` status to the duplica.
Environment status are check before the validation. A dialog should pop-up if
there is a missing ``Start`` / ``End`` record to inform user. Use the duplicate
action to fix it (cf. :ref:`duplicateaction`).
user changes the ``routeType`` attributes, the status attribute will be updated to
``Begin``. Entities with ``End`` status will be created only on export.

.. _sightingtable:

12 - Sighting table
~~~~~~~~~~~~~~~~~~~~

The sighting table is used to modify sighting entity attributes. Sighting entity describes an observation made by the operator.
The sighting table is used to modify sighting entity attributes.
Sighting entity describes an observation made by the operator.

13 - Map canvas
~~~~~~~~~~~~~~~
Expand All @@ -223,6 +230,8 @@ displayed:
.. |gps_symbol| image:: images/gps.svg
:width: 18

.. |transect_symbol| image:: images/transect.svg

.. |environment_symbol| image:: ../../images/environment_symbol.svg
:width: 18

Expand All @@ -233,7 +242,8 @@ displayed:
:width: 18

- world (as background map)
- |gps_symbol| gps
- |gps_symbol| gps
- |transect_symbol| transect
- |environment_symbol| environmenent
- |sighting_symbol| sighting
- |follower_symbol| follower
68 changes: 52 additions & 16 deletions doc/source/session.rst
Original file line number Diff line number Diff line change
@@ -1,5 +1,3 @@
.. _session:

Session
=======

Expand All @@ -8,9 +6,22 @@ Session

Sammo-boat integrates a session system to works properly. To create a new session
or load a existing session, user clicks on the |session| button in the
Sammo-boat toolbar (cf. :ref:`sessionbutton`). User will select a folder in the dialog. If there is already
a `sammo-boat.gpkg` database in the folder, this session will be opened.
Sammo-boat toolbar (cf. :ref:`sessionbutton`). User will select a folder in the
dialog.

If there is already a `sammo-boat.gpkg` database in the folder, this session
will be opened.

Otherwise a new database will be created in the folder with the needed table.
Notice that administrator and auxiliary tables can be populated by csv files,
if there are located in the data folder.

.. image:: init_data_folder_action.png
:align: center

|

This action opens the folder where csv files are located

Database
--------
Expand All @@ -24,22 +35,42 @@ to look at the database tables.

|

Some tables are administrator tables and should be populated with the survey information
by an administrator :
Some tables are administrator tables and should be populated with the survey
information by an administrator. These tables can be fulfilled using the
settings interface (cf. :ref:`settingsbutton`) or with csv files during the
database initialization :

- survey
- boat
- plateform
- strate
- transect
- observers
- species
.. list-table:: Administrator tables

* - **Table**
- **csv file**
* - survey
- survey.csv
* - survey_type
- survey_type.csv
* - transect
- transect.csv
* - boat
- boat.csv
* - plateform
- plateform.csv

There is also three auxiliary tables that can be fulfilled with csv files :

.. list-table:: Auxiliary tables

* - **Table**
- **csv file**
* - observers
- observers.csv
* - species
- species.csv
* - behaviour_species
- behav.csv

.. |settings| image:: ../../images/settings.png
:height: 18

Most of these tables can be configured in the settings dialog (cf. :ref:`settingsbutton`)

The main tables used by operator will be the following:

- environment
Expand All @@ -51,4 +82,9 @@ and the world table is only here to provide a map background.

.. warning::
Do not alter tables by removing fields or your database may become
unusable in the Sammo-boat plugin.
unusable in the Sammo-boat plugin.


Here is the full UML diagram of the database:

.. image:: images/uml_diagram.png
Binary file added images/help.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file removed images/interface.png
Binary file not shown.
4 changes: 2 additions & 2 deletions metadata.txt
Original file line number Diff line number Diff line change
Expand Up @@ -2,8 +2,8 @@
name=Sammo-Boat
description=Tool for megafauna observations from halieutic boats
about=Tool for megafauna observations
version=1.3.2
qgisMinimumVersion=3.16
version=1.4.0
qgisMinimumVersion=3.28
author=Paul Blottière
[email protected]
repository=https://github.com/hytechimaging/sammo-boat/
Loading