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

Add sorting options for non-time-constrained WERs #49

Merged
merged 7 commits into from
Jan 25, 2024
Merged

Conversation

thequilo
Copy link
Member

No description provided.

@thequilo thequilo requested a review from boeddeker January 25, 2024 06:54
'Invalid JSON format for SegLST: Expected a list of segments, '
'but found a dict.'
)
if loaded and not isinstance(loaded[0], dict):
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The first entry in a json is sometimes special. We should also check the last entry (last entry avoids more ifs):

if loaded and not (isinstance(loaded[0], dict) and isinstance(loaded[-1], dict))

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Done, also checked for "session_id" key.

@thequilo thequilo merged commit 1d3c9ac into main Jan 25, 2024
6 checks passed
@thequilo thequilo deleted the non_tc_sort branch January 25, 2024 09:50
thequilo added a commit that referenced this pull request Jan 25, 2024
* Add sort options to non time-constrained WERs

* Fix --regex option in _merge

* Convert boolean args (True, true, False, false) to bool

* Add burn tests for sort options

* Improve error message for seglst loading

* Remove debug help text

* Improve seglst format check
thequilo added a commit that referenced this pull request Jan 25, 2024
* Add visualization

* Add visuals

- Options to hide legend and details
- Add markers to the utterance begin/end to indicate direction
- Add hint for empty segments

* Fix minimap selection

* Drag details view to scroll

* Add Minimap x-axis label

* Fix legend

* Display some information about the example

* Add menu

* Throttle redraw of details plot

* Add more options for minimap display

* Fix match lines

* Move axis into own classes and improve visuals

* Add message when no words are displayed in details plot

* Update colormap for readability

* Display info about selected segment

* Mark selected segment in details plot

* Fix empty label

* Zoom centered around mouse

* Move plot label style to css

* Draw boxes around plots

* Set font to Arial

* Add basic support for touch devices

* Draw background in details plot

* Disable warnings in visualization

* Update details view

* Remove debug alerts

* Update visualization for tidy data

* Add WER decomposition tooltip

* Remove brush when fully zoomed out

* Add range selector with text input

* Simplify callback code for fetching audio

* Add search bar

* Add alignment_transform function

- Adds ability to ignore words in the matching but display them in the visualization

* Add tooltip table for segment details

* Fix zoom in details view when brush is removed in minimap

* Use Tidy representation for visualization and add (rudimentary) markers

* (WIP) Tidy -> SegLST

* A few fixes

- json -> simplejson
- centered and growing tooltips
- drawing details

* Fix CSS so that fontawesome icons get displayed

* Cleanup visualization code

* Improve tooltip positioning

* Cleanup visualization

* More cleanup

* Move tooltip fixing code into a function

* Add audio players when an audio path is found in a segment

* add a file server that normalizes the audio (usefull for far field data)

* viz: Add copy button and try fileserver before acessing local files

 - Fileserver works in jupyter, but requires a process in the background
 - The fileserver can normalize the audio files
 - Local files work only for standalone viz

* viz: ogg is more robust

* viz: Fix infinity loop and remove play button it it doesn't work.

* viz: Update audio help text

* viz: file server:

 - Always answer with HTTPUnauthorized if the audio cannot be loaded
 - Use soundfile to remove sox dependency
 - Use ogg, because wav produced artefacts in some chrome and firefox versions

* add aiohttp to cli dependencies

* fix test dependency

* Add sorting options for non-time-constrained WERs (#49)

* Add sort options to non time-constrained WERs

* Fix --regex option in _merge

* Convert boolean args (True, true, False, false) to bool

* Add burn tests for sort options

* Improve error message for seglst loading

* Remove debug help text

* Improve seglst format check

* Fix seglst format check

* add soundfile as cli dependency

* support http files, verbose keyerrors and use operator.attrgetter

* fix load for http

* Also convert int when parse_float != float

* Fix orthography field name

* Add viz to readme

* SegLST: type annotations

* fix py37

---------

Co-authored-by: Christoph Boeddeker <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants