Skip to content
Snippets Groups Projects
Commit 33286c2b authored by Loic-Lenof's avatar Loic-Lenof
Browse files

Update README.md

parent 9329c5fd
Branches
No related tags found
No related merge requests found
...@@ -2,7 +2,7 @@ ...@@ -2,7 +2,7 @@
## Description ## Description
`PyAVA` is a graphical annotation tool written in Python whose purpose is to provide an esay way to draw contours on vocalisations from audio recordings. It uses [Tkinter](https://docs.python.org/3/library/tkinter.html) for its graphical interface and can be run on any OS. It does not require images (aka spectrogram) to function, only waveforms, which is its main advantage to be an easy and efficient annotation tool. `PyAVA` is a graphical annotation tool written in Python whose purpose is to provide an easy way to draw contours on vocalisations from audio recordings. It uses [Tkinter](https://docs.python.org/3/library/tkinter.html) for its graphical interface and can be run on any OS. It does not require images (spectrogram) to function, only waveforms, which is its main advantage.
![Show PyAVA](./images/PyAVA_show.gif?raw=true) ![Show PyAVA](./images/PyAVA_show.gif?raw=true)
...@@ -30,20 +30,24 @@ Install packages in your python environment with `$ pip install -r requirements. ...@@ -30,20 +30,24 @@ Install packages in your python environment with `$ pip install -r requirements.
## Usage ## Usage
### Execution ### Execution
For classic use, download PyAVA folder, then run `$python PyAVA.py -dir myWavefileFolder -out myOutputFolder` in terminal. For classic use, download PyAVA folder, then open a terminal in the folder and run `$ python PyAVA.py -dir myWavefileFolder -out myOutputFolder` in terminal.
Run `$python PyAVA.py --help` for details. Run `$python PyAVA.py --help` for details.
The annotations are saved in [JSON](http://www.json.org/) files. Each file contains a dict of contours. For each contour there is a list of points, each point is defined by a list of two elements : [time (in sec), frequency (in kHz)]. The annotations are saved in [JSON](http://www.json.org/) files. Each file contains a dictionnary with the categories annotated. For each category there is a list of points, each point is defined by a list of two elements : [time (in sec), frequency (in Hz)].
### User interaction ### User actions
- Use the toolbar to interact with the plot. - Use the toolbar to interact with the plot (same as with matplotlib.pyplot).
- User must not have any toolbar item selected in order to annotate the image. - Draw lines :
- User must not have any toolbar item selected in order to annotate the spectrogram.
- Left-click on a name in the listbox to activate annotation with it. - Left-click on a name in the listbox to activate annotation with it.
- Left-click to place a point from the selected category. - Left-click to place a point from the selected category.
- Right-click to remove the nearest point from the selected category. - Right-click to remove the nearest point from the selected category.
- Click on `Open file explorer` Button to change Wavefile (will end annotation of the current file). - Mouse wheel click on a point to move it around.
- Click on `Open file explorer` Button to change Wavefile used as base (will end the annotation of the current file).
- Change resolution of the spectrogram with `FFT`, `Hop length` and `clipping fields`. - Change resolution of the spectrogram with `FFT`, `Hop length` and `clipping fields`.
- Click on `Update display` button to validate inputs. - Click on `Update display` button to validate inputs.
- Click on `Switch to PCEN` to switch between PCEN and spectrogram image.
### Re-use data ### Re-use data
To load and display the saved annotations, use the "Results" object. It contains several infos: coordinates of the annotations, spectrogram, waveform and more. To load and display the saved annotations, use the "Results" object. It contains several infos: coordinates of the annotations, spectrogram, waveform and more.
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment