lost_ds 1.2.0a4__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- lost_ds-1.2.0a4/.github/ISSUE_TEMPLATE/bug_report.md +38 -0
- lost_ds-1.2.0a4/.github/ISSUE_TEMPLATE/feature_request.md +20 -0
- lost_ds-1.2.0a4/.github/PULL_REQUEST_TEMPLATE.md +28 -0
- lost_ds-1.2.0a4/.gitignore +4 -0
- lost_ds-1.2.0a4/.gitlab-ci.yml +27 -0
- lost_ds-1.2.0a4/CHANGELOG.md +105 -0
- lost_ds-1.2.0a4/LICENSE +21 -0
- lost_ds-1.2.0a4/PKG-INFO +51 -0
- lost_ds-1.2.0a4/README.md +12 -0
- lost_ds-1.2.0a4/docs/sphinx/.gitignore +2 -0
- lost_ds-1.2.0a4/docs/sphinx/Makefile +19 -0
- lost_ds-1.2.0a4/docs/sphinx/requirements.txt +104 -0
- lost_ds-1.2.0a4/docs/sphinx/source/conf.py +216 -0
- lost_ds-1.2.0a4/docs/sphinx/source/index.rst +27 -0
- lost_ds-1.2.0a4/docs/sphinx/source/lds.hello.rst +6 -0
- lost_ds-1.2.0a4/examples/example.ipynb +727 -0
- lost_ds-1.2.0a4/examples/imgs/000000120777.jpg +0 -0
- lost_ds-1.2.0a4/examples/imgs/000000121673.jpg +0 -0
- lost_ds-1.2.0a4/examples/imgs/000000123585.jpg +0 -0
- lost_ds-1.2.0a4/examples/imgs/000000125211.jpg +0 -0
- lost_ds-1.2.0a4/examples/imgs/000000125257.jpg +0 -0
- lost_ds-1.2.0a4/examples/imgs/shapes.png +0 -0
- lost_ds-1.2.0a4/examples/lost_coco_annos.parquet +0 -0
- lost_ds-1.2.0a4/examples/lost_shape_annos.parquet +0 -0
- lost_ds-1.2.0a4/lost_ds/__init__.py +63 -0
- lost_ds-1.2.0a4/lost_ds/compat.py +104 -0
- lost_ds-1.2.0a4/lost_ds/copy.py +117 -0
- lost_ds-1.2.0a4/lost_ds/core.py +999 -0
- lost_ds-1.2.0a4/lost_ds/cropping/__init__.py +0 -0
- lost_ds-1.2.0a4/lost_ds/cropping/api.py +3 -0
- lost_ds-1.2.0a4/lost_ds/cropping/cropping.py +424 -0
- lost_ds-1.2.0a4/lost_ds/cropping/ds_cropper.py +153 -0
- lost_ds-1.2.0a4/lost_ds/detection/__init__.py +0 -0
- lost_ds-1.2.0a4/lost_ds/detection/api.py +1 -0
- lost_ds-1.2.0a4/lost_ds/detection/bbox_merge.py +91 -0
- lost_ds-1.2.0a4/lost_ds/detection/detection.py +297 -0
- lost_ds-1.2.0a4/lost_ds/experimental/__init__.py +0 -0
- lost_ds-1.2.0a4/lost_ds/functional/__init__.py +0 -0
- lost_ds-1.2.0a4/lost_ds/functional/api.py +30 -0
- lost_ds-1.2.0a4/lost_ds/functional/filter.py +109 -0
- lost_ds-1.2.0a4/lost_ds/functional/mapping.py +60 -0
- lost_ds-1.2.0a4/lost_ds/functional/split.py +271 -0
- lost_ds-1.2.0a4/lost_ds/functional/transform.py +454 -0
- lost_ds-1.2.0a4/lost_ds/functional/validation.py +120 -0
- lost_ds-1.2.0a4/lost_ds/geometry/__init__.py +0 -0
- lost_ds-1.2.0a4/lost_ds/geometry/api.py +6 -0
- lost_ds-1.2.0a4/lost_ds/geometry/bbox.py +163 -0
- lost_ds-1.2.0a4/lost_ds/geometry/geometry.py +109 -0
- lost_ds-1.2.0a4/lost_ds/geometry/line.py +56 -0
- lost_ds-1.2.0a4/lost_ds/geometry/lost_geom.py +270 -0
- lost_ds-1.2.0a4/lost_ds/geometry/point.py +56 -0
- lost_ds-1.2.0a4/lost_ds/geometry/polygon.py +59 -0
- lost_ds-1.2.0a4/lost_ds/im_util.py +43 -0
- lost_ds-1.2.0a4/lost_ds/io/__init__.py +0 -0
- lost_ds-1.2.0a4/lost_ds/io/file_man.py +172 -0
- lost_ds-1.2.0a4/lost_ds/masking/__init__.py +0 -0
- lost_ds-1.2.0a4/lost_ds/masking/api.py +1 -0
- lost_ds-1.2.0a4/lost_ds/masking/masking.py +83 -0
- lost_ds-1.2.0a4/lost_ds/reporting/__init__.py +0 -0
- lost_ds-1.2.0a4/lost_ds/scheduler.py +15 -0
- lost_ds-1.2.0a4/lost_ds/segmentation/__init__.py +0 -0
- lost_ds-1.2.0a4/lost_ds/segmentation/anno_from_seg.py +138 -0
- lost_ds-1.2.0a4/lost_ds/segmentation/api.py +4 -0
- lost_ds-1.2.0a4/lost_ds/segmentation/instance_seg.py +75 -0
- lost_ds-1.2.0a4/lost_ds/segmentation/panoptic_seg.py +119 -0
- lost_ds-1.2.0a4/lost_ds/segmentation/semantic_seg.py +141 -0
- lost_ds-1.2.0a4/lost_ds/util.py +75 -0
- lost_ds-1.2.0a4/lost_ds/vis/__init__.py +0 -0
- lost_ds-1.2.0a4/lost_ds/vis/api.py +10 -0
- lost_ds-1.2.0a4/lost_ds/vis/geometries.py +202 -0
- lost_ds-1.2.0a4/lost_ds/vis/vis.py +162 -0
- lost_ds-1.2.0a4/pyproject.toml +136 -0
- lost_ds-1.2.0a4/uv.lock +1091 -0
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: Bug report
|
|
3
|
+
about: Create a report to help us improve
|
|
4
|
+
title: ''
|
|
5
|
+
labels: ''
|
|
6
|
+
assignees: ''
|
|
7
|
+
|
|
8
|
+
---
|
|
9
|
+
|
|
10
|
+
**Describe the bug**
|
|
11
|
+
A clear and concise description of what the bug is.
|
|
12
|
+
|
|
13
|
+
**To Reproduce**
|
|
14
|
+
Steps to reproduce the behavior:
|
|
15
|
+
1. Go to '...'
|
|
16
|
+
2. Click on '....'
|
|
17
|
+
3. Scroll down to '....'
|
|
18
|
+
4. See error
|
|
19
|
+
|
|
20
|
+
**Expected behavior**
|
|
21
|
+
A clear and concise description of what you expected to happen.
|
|
22
|
+
|
|
23
|
+
**Screenshots**
|
|
24
|
+
If applicable, add screenshots to help explain your problem.
|
|
25
|
+
|
|
26
|
+
**Desktop (please complete the following information):**
|
|
27
|
+
- OS: [e.g. iOS]
|
|
28
|
+
- Browser [e.g. chrome, safari]
|
|
29
|
+
- Version [e.g. 22]
|
|
30
|
+
|
|
31
|
+
**Smartphone (please complete the following information):**
|
|
32
|
+
- Device: [e.g. iPhone6]
|
|
33
|
+
- OS: [e.g. iOS8.1]
|
|
34
|
+
- Browser [e.g. stock browser, safari]
|
|
35
|
+
- Version [e.g. 22]
|
|
36
|
+
|
|
37
|
+
**Additional context**
|
|
38
|
+
Add any other context about the problem here.
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: Feature request
|
|
3
|
+
about: Suggest an idea for this project
|
|
4
|
+
title: ''
|
|
5
|
+
labels: ''
|
|
6
|
+
assignees: ''
|
|
7
|
+
|
|
8
|
+
---
|
|
9
|
+
|
|
10
|
+
**Is your feature request related to a problem? Please describe.**
|
|
11
|
+
A clear and concise description of what the problem is. Ex. I'm always frustrated when [...]
|
|
12
|
+
|
|
13
|
+
**Describe the solution you'd like**
|
|
14
|
+
A clear and concise description of what you want to happen.
|
|
15
|
+
|
|
16
|
+
**Describe alternatives you've considered**
|
|
17
|
+
A clear and concise description of any alternative solutions or features you've considered.
|
|
18
|
+
|
|
19
|
+
**Additional context**
|
|
20
|
+
Add any other context or screenshots about the feature request here.
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
# My Title
|
|
2
|
+
<!--- Provide a general summary of your changes in the Title above -->
|
|
3
|
+
|
|
4
|
+
## Checklist
|
|
5
|
+
<!--- Put an `x` in all the boxes that apply: -->
|
|
6
|
+
- [ ] CHANGELOG was updated
|
|
7
|
+
- Please add your changes in the **unreleased section**
|
|
8
|
+
- Add a note if your changes apply to an **older version** of this software
|
|
9
|
+
- [ ] The destination branch has been merged into my branch before I created this merge request
|
|
10
|
+
- [ ] All interfaces to the outside world have been documented
|
|
11
|
+
- For Python use [google doc style](https://google.github.io/styleguide/pyguide.html) -> [examples here](https://sphinxcontrib-napoleon.readthedocs.io/en/latest/example_google.html)
|
|
12
|
+
|
|
13
|
+
## Types of changes
|
|
14
|
+
<!--- What types of changes does your code introduce? Put an `x` in all the boxes that apply: -->
|
|
15
|
+
- [ ] Bug fix (non-breaking change which fixes an issue)
|
|
16
|
+
- [ ] New feature (non-breaking change which adds functionality)
|
|
17
|
+
- [ ] Breaking change (fix or feature that would cause existing functionality to change)
|
|
18
|
+
|
|
19
|
+
## How Has This Been Tested?
|
|
20
|
+
<!--- Please describe in detail how you tested your changes. -->
|
|
21
|
+
<!--- Include details of your testing environment, and the tests you ran to -->
|
|
22
|
+
<!--- see how your change affects other areas of the code, etc. -->
|
|
23
|
+
- [ ] Changes have been tested in the destination environment
|
|
24
|
+
- [ ] Unit tests have been written
|
|
25
|
+
- [ ] I did not test anything BECAUSE:
|
|
26
|
+
- [ ] Nothing from above, I tested this way:
|
|
27
|
+
|
|
28
|
+
## Screenshots (if appropriate):
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
image: python:3.8
|
|
2
|
+
|
|
3
|
+
stages:
|
|
4
|
+
- test-lost_ds
|
|
5
|
+
- release-lost_ds
|
|
6
|
+
|
|
7
|
+
test-lost_ds:
|
|
8
|
+
stage: test-lost_ds
|
|
9
|
+
script:
|
|
10
|
+
- echo "hello from teststage"
|
|
11
|
+
rules:
|
|
12
|
+
- if: '$CI_COMMIT_BRANCH =~ /master/'
|
|
13
|
+
- if: '$CI_COMMIT_TAG =~ /.*/'
|
|
14
|
+
|
|
15
|
+
release-lost_ds:
|
|
16
|
+
variables:
|
|
17
|
+
UV_PUBLISH_TOKEN: $TWINE_PASSWORD
|
|
18
|
+
stage: release-lost_ds
|
|
19
|
+
script:
|
|
20
|
+
- sed -i 's/version = "0.0.0-alpha.0"/version = "'"$CI_COMMIT_TAG"'"/' pyproject.toml
|
|
21
|
+
- echo "__version__='${CI_COMMIT_TAG}'" >> lost_ds/__init__.py
|
|
22
|
+
- pip install uv
|
|
23
|
+
- uvx --from=toml-cli toml set --toml-path pyproject.toml project.version ${CI_COMMIT_TAG}
|
|
24
|
+
- uv build
|
|
25
|
+
- uv publish
|
|
26
|
+
only:
|
|
27
|
+
- tags
|
|
@@ -0,0 +1,105 @@
|
|
|
1
|
+
# Changelog
|
|
2
|
+
All notable changes to this project will be documented in this file.
|
|
3
|
+
|
|
4
|
+
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
|
|
5
|
+
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
|
|
6
|
+
|
|
7
|
+
## [unreleased]
|
|
8
|
+
### Changed
|
|
9
|
+
- switched package build system to uv
|
|
10
|
+
- fix bug in unique labels
|
|
11
|
+
- add crop shape and overlap shape to filename when cropping ds
|
|
12
|
+
|
|
13
|
+
## [1.1.2] - 2024-01-30
|
|
14
|
+
### Changed
|
|
15
|
+
- Moved package building to pyproject.toml
|
|
16
|
+
### Fixed
|
|
17
|
+
- Fixed Pipy build
|
|
18
|
+
|
|
19
|
+
## [1.1.1] - 2024-01-22
|
|
20
|
+
### Fixed
|
|
21
|
+
- Try to fix pypy build
|
|
22
|
+
|
|
23
|
+
## [1.1.0] - 2024-01-22
|
|
24
|
+
### Changed
|
|
25
|
+
- `split_train_test` now filters samples with too few unique sources to prevent errors in sklearn
|
|
26
|
+
- refactored to_abs and to_rel method for easier readability and better performance
|
|
27
|
+
### Added
|
|
28
|
+
- retry reading a parquet file without opening as buffer if it fails
|
|
29
|
+
- semantic_segmentation can store files with numeric names
|
|
30
|
+
- new function: `split_train_test_multilabel` for fairly splitting multilabel datasets
|
|
31
|
+
- added requirements
|
|
32
|
+
### Fixed
|
|
33
|
+
- vis_and_store can handle multilabel, singlelabel and None correctly now
|
|
34
|
+
- polygon validation fixed. Set required amount of points from 4 to 3.
|
|
35
|
+
- fixed in `validate_unique_annos` pandas drop() future warning
|
|
36
|
+
- `crop_dataset` does not produce empty duplicates of crop positions anymore
|
|
37
|
+
- `segmentation_to_lost` fix bug where some contours of different classes were merged accidentially
|
|
38
|
+
- `mask_dataset` won't overwrite input dataframe anymore
|
|
39
|
+
- added a serialization case where a columns has empty lists
|
|
40
|
+
|
|
41
|
+
## [1.0.0] - 2023-01-10
|
|
42
|
+
### Added
|
|
43
|
+
- fixed voc_eval bug where gt_df bboxes weren't handled correctly
|
|
44
|
+
- fixed coco_eval bug - different dataframes having same uids for images and labels now
|
|
45
|
+
- to_coco meethod has arguments predef_img_mapping and predef_lbl_mapping now to hand over predefined label and image uids
|
|
46
|
+
- export method crop_img to lost_ds (lost_ds.crop_img and ds.crop_img formerly lost_ds.DSCropper.crop_img)
|
|
47
|
+
- resolve FutureWarning at transform_bbox_style
|
|
48
|
+
- make crop_dataset compatible with pandas > 1.5.0
|
|
49
|
+
- crop_component indexing is imagewise instead of global
|
|
50
|
+
- improve some filter and transform functions
|
|
51
|
+
### Breaking changes
|
|
52
|
+
- Add parallel option for multiple functions
|
|
53
|
+
- fix typo in some methods arguments
|
|
54
|
+
|
|
55
|
+
## [0.5.0] - 2022-12-02
|
|
56
|
+
### Added
|
|
57
|
+
- method `split_train_test` which allows the stratify option for i.e. classification datasets
|
|
58
|
+
- `coco_eval` method for detection (mAP, Average Recall)
|
|
59
|
+
- `voc_eval` method for detection (tp, fp, fn, precision, revall, ap)
|
|
60
|
+
- `to_coco` improvements and bugfixes
|
|
61
|
+
- `voc_score_iou_multiplex` method: shifting bbox score and iou_thresholds to find optimal thresolds
|
|
62
|
+
- cropping method return additional column 'crop_position' now
|
|
63
|
+
- added arg 'random_state' for dataset-splitting
|
|
64
|
+
- added arg for optional parallelistaion
|
|
65
|
+
- added color selection for vis and store - can take column now
|
|
66
|
+
- improved detetion metrics
|
|
67
|
+
|
|
68
|
+
## [0.4.0] - 2022-05-01
|
|
69
|
+
### Changed
|
|
70
|
+
- file_man: Allow other Fsspec filesystems
|
|
71
|
+
### Added
|
|
72
|
+
- Progress callback for pack_ds
|
|
73
|
+
- Argument `fontscale` at `vis_and_store` to enable manually control for textsize
|
|
74
|
+
- Argument `cast_others` at `segmentation_to_lost` to allow ignoring unspecified pixel values
|
|
75
|
+
|
|
76
|
+
## [0.3.0] - 2022-04-05
|
|
77
|
+
### Added
|
|
78
|
+
- Added zip support for pack_ds method
|
|
79
|
+
|
|
80
|
+
## [0.2.0] - 2022-04-04
|
|
81
|
+
### Added
|
|
82
|
+
- `bbox_nms` method to directly apply non-max-suppresseion for bboxes
|
|
83
|
+
- Argument `path_col` in methods `to_abs` and `to_rel` to enable explicit column specification to look for image paths
|
|
84
|
+
- Argument `mode` for method `remap_img_path` to enable not only replacement but also prepending of root paths
|
|
85
|
+
- Set argument default of `inplace` of method `pack_ds` to False
|
|
86
|
+
- Enable visualization of annos without `anno_lbl` specified
|
|
87
|
+
|
|
88
|
+
## [0.1.0] - 2022-02-09
|
|
89
|
+
### Changes
|
|
90
|
+
- `validate_unique_annos` uses data-hash for dropping duplicates now
|
|
91
|
+
- `vis_and_store` text-boxes won't be outside the image anymore
|
|
92
|
+
- `vis_and_store` can determine optimal text-size for labeling when passing
|
|
93
|
+
arg. line_thickness 'auto'.
|
|
94
|
+
### Added
|
|
95
|
+
- dependencies for lost_ds in requirements.txt + setup.py
|
|
96
|
+
- examples dataset and code-snippets
|
|
97
|
+
- improved function to load datasets at LOSTDataset
|
|
98
|
+
- new function `segmentation_to_lost` to convert pixelmaps to lost-annotations
|
|
99
|
+
- new function `crop_components` to crop dataset based on annotations
|
|
100
|
+
- new function `vis_semantic_segmentation` to color sem-seg. dataset
|
|
101
|
+
- new function `to_coco` to generate and store coco datasets from LOSTDataset
|
|
102
|
+
|
|
103
|
+
## [0.0.0] - 2021-10-26
|
|
104
|
+
### Added
|
|
105
|
+
- First version
|
lost_ds-1.2.0a4/LICENSE
ADDED
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
MIT License
|
|
2
|
+
|
|
3
|
+
Copyright (c) 2021 L3bm GmbH
|
|
4
|
+
|
|
5
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
6
|
+
of this software and associated documentation files (the "Software"), to deal
|
|
7
|
+
in the Software without restriction, including without limitation the rights
|
|
8
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
9
|
+
copies of the Software, and to permit persons to whom the Software is
|
|
10
|
+
furnished to do so, subject to the following conditions:
|
|
11
|
+
|
|
12
|
+
The above copyright notice and this permission notice shall be included in all
|
|
13
|
+
copies or substantial portions of the Software.
|
|
14
|
+
|
|
15
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
16
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
17
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
18
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
19
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
20
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
21
|
+
SOFTWARE.
|
lost_ds-1.2.0a4/PKG-INFO
ADDED
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
Metadata-Version: 2.4
|
|
2
|
+
Name: lost_ds
|
|
3
|
+
Version: 1.2.0a4
|
|
4
|
+
Summary: Lost Dataset library
|
|
5
|
+
Project-URL: Repository, https://github.com/l3p-cv/lost_ds
|
|
6
|
+
Author-email: L3bm GmbH <info@l3bm.com>
|
|
7
|
+
License: MIT
|
|
8
|
+
License-File: LICENSE
|
|
9
|
+
Keywords: python
|
|
10
|
+
Classifier: Intended Audience :: Developers
|
|
11
|
+
Classifier: Programming Language :: Python
|
|
12
|
+
Classifier: Programming Language :: Python :: 3
|
|
13
|
+
Classifier: Programming Language :: Python :: 3.9
|
|
14
|
+
Classifier: Programming Language :: Python :: 3.10
|
|
15
|
+
Classifier: Programming Language :: Python :: 3.11
|
|
16
|
+
Classifier: Programming Language :: Python :: 3.12
|
|
17
|
+
Classifier: Programming Language :: Python :: 3.13
|
|
18
|
+
Classifier: Topic :: Software Development :: Libraries :: Python Modules
|
|
19
|
+
Requires-Python: <4.0,>=3.9
|
|
20
|
+
Requires-Dist: fsspec
|
|
21
|
+
Requires-Dist: iterative-stratification
|
|
22
|
+
Requires-Dist: joblib
|
|
23
|
+
Requires-Dist: numpy
|
|
24
|
+
Requires-Dist: opencv-python
|
|
25
|
+
Requires-Dist: pandas
|
|
26
|
+
Requires-Dist: pillow
|
|
27
|
+
Requires-Dist: pyarrow
|
|
28
|
+
Requires-Dist: python-dateutil
|
|
29
|
+
Requires-Dist: pytz
|
|
30
|
+
Requires-Dist: scikit-learn
|
|
31
|
+
Requires-Dist: scipy
|
|
32
|
+
Requires-Dist: shapely
|
|
33
|
+
Requires-Dist: six
|
|
34
|
+
Requires-Dist: threadpoolctl
|
|
35
|
+
Requires-Dist: tqdm
|
|
36
|
+
Requires-Dist: tzdata
|
|
37
|
+
Requires-Dist: wtforms>=3.2.1
|
|
38
|
+
Description-Content-Type: text/markdown
|
|
39
|
+
|
|
40
|
+
[](https://gitlab.com/l3p-cv/lost_ds/pipelines)
|
|
41
|
+
<!-- [](https://lost_ds.readthedocs.io/en/latest/?badge=latest) -->
|
|
42
|
+
|
|
43
|
+
### LOSTDataset
|
|
44
|
+
|
|
45
|
+
This is a library to handle datasets generated by LOST. LOSTDataset enables
|
|
46
|
+
directily producing semantic segmentations, anno-type transformations (i.e. polygon to bbox),
|
|
47
|
+
anno-style transformations (i.e. bbox xywh -> bbox x1x2y1y2), crop datasets,
|
|
48
|
+
visualize annotations, lost2coco and some more.
|
|
49
|
+
|
|
50
|
+
Checkout some explanation and examples [here](https://github.com/l3p-cv/lost_ds/blob/master/examples/example.ipynb).
|
|
51
|
+
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
[](https://gitlab.com/l3p-cv/lost_ds/pipelines)
|
|
2
|
+
<!-- [](https://lost_ds.readthedocs.io/en/latest/?badge=latest) -->
|
|
3
|
+
|
|
4
|
+
### LOSTDataset
|
|
5
|
+
|
|
6
|
+
This is a library to handle datasets generated by LOST. LOSTDataset enables
|
|
7
|
+
directily producing semantic segmentations, anno-type transformations (i.e. polygon to bbox),
|
|
8
|
+
anno-style transformations (i.e. bbox xywh -> bbox x1x2y1y2), crop datasets,
|
|
9
|
+
visualize annotations, lost2coco and some more.
|
|
10
|
+
|
|
11
|
+
Checkout some explanation and examples [here](https://github.com/l3p-cv/lost_ds/blob/master/examples/example.ipynb).
|
|
12
|
+
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
# Minimal makefile for Sphinx documentation
|
|
2
|
+
#
|
|
3
|
+
|
|
4
|
+
# You can set these variables from the command line.
|
|
5
|
+
SPHINXOPTS =
|
|
6
|
+
SPHINXBUILD = sphinx-build
|
|
7
|
+
SOURCEDIR = source
|
|
8
|
+
BUILDDIR = build
|
|
9
|
+
|
|
10
|
+
# Put it first so that "make" without argument is like "make help".
|
|
11
|
+
help:
|
|
12
|
+
@$(SPHINXBUILD) -M help "$(SOURCEDIR)" "$(BUILDDIR)" $(SPHINXOPTS) $(O)
|
|
13
|
+
|
|
14
|
+
.PHONY: help Makefile
|
|
15
|
+
|
|
16
|
+
# Catch-all target: route all unknown targets to Sphinx using the new
|
|
17
|
+
# "make mode" option. $(O) is meant as a shortcut for $(SPHINXOPTS).
|
|
18
|
+
%: Makefile
|
|
19
|
+
@$(SPHINXBUILD) -M $@ "$(SOURCEDIR)" "$(BUILDDIR)" $(SPHINXOPTS) $(O)
|
|
@@ -0,0 +1,104 @@
|
|
|
1
|
+
absl-py==0.11.0
|
|
2
|
+
appdirs==1.4.3
|
|
3
|
+
argon2-cffi==20.1.0
|
|
4
|
+
astunparse==1.6.3
|
|
5
|
+
async-generator==1.10
|
|
6
|
+
attrs==20.3.0
|
|
7
|
+
backcall==0.2.0
|
|
8
|
+
bleach==3.2.1
|
|
9
|
+
cachetools==4.1.1
|
|
10
|
+
certifi==2020.11.8
|
|
11
|
+
cffi==1.14.4
|
|
12
|
+
chardet==3.0.4
|
|
13
|
+
cycler==0.10.0
|
|
14
|
+
decorator==4.4.0
|
|
15
|
+
defusedxml==0.6.0
|
|
16
|
+
entrypoints==0.3
|
|
17
|
+
gast==0.3.3
|
|
18
|
+
google-auth==1.23.0
|
|
19
|
+
google-auth-oauthlib==0.4.2
|
|
20
|
+
google-pasta==0.2.0
|
|
21
|
+
grpcio==1.33.2
|
|
22
|
+
h5py==2.10.0
|
|
23
|
+
idna==2.10
|
|
24
|
+
imageio==2.9.0
|
|
25
|
+
imagesize==1.2.0
|
|
26
|
+
importlib-metadata==3.1.0
|
|
27
|
+
ipykernel==5.3.4
|
|
28
|
+
ipython==7.16.1
|
|
29
|
+
ipython-genutils==0.2.0
|
|
30
|
+
jedi==0.17.2
|
|
31
|
+
Jinja2==2.11.2
|
|
32
|
+
joblib==0.17.0
|
|
33
|
+
json5==0.9.5
|
|
34
|
+
jsonschema==3.2.0
|
|
35
|
+
Keras-Preprocessing==1.1.2
|
|
36
|
+
kiwisolver==1.3.1
|
|
37
|
+
Mako==1.1.0
|
|
38
|
+
Markdown==3.3.3
|
|
39
|
+
MarkupSafe==1.1.1
|
|
40
|
+
matplotlib==3.3.3
|
|
41
|
+
mistune==0.8.4
|
|
42
|
+
nbclient==0.5.1
|
|
43
|
+
nbconvert==6.0.7
|
|
44
|
+
nbformat==5.0.8
|
|
45
|
+
nest-asyncio==1.4.3
|
|
46
|
+
networkx==2.5
|
|
47
|
+
notebook==6.1.5
|
|
48
|
+
oauthlib==3.1.0
|
|
49
|
+
opencv-python==4.2.0.32
|
|
50
|
+
opt-einsum==3.3.0
|
|
51
|
+
packaging==20.4
|
|
52
|
+
pandas==1.1.4
|
|
53
|
+
pandocfilters==1.4.3
|
|
54
|
+
parso==0.7.1
|
|
55
|
+
pexpect==4.8.0
|
|
56
|
+
pickleshare==0.7.5
|
|
57
|
+
pika==1.1.0
|
|
58
|
+
Pillow==6.2.0
|
|
59
|
+
prometheus-client==0.9.0
|
|
60
|
+
prompt-toolkit==3.0.8
|
|
61
|
+
protobuf==3.14.0
|
|
62
|
+
ptyprocess==0.6.0
|
|
63
|
+
pudb==2019.2
|
|
64
|
+
pyasn1==0.4.8
|
|
65
|
+
pyasn1-modules==0.2.8
|
|
66
|
+
pycparser==2.20
|
|
67
|
+
Pygments==2.7.2
|
|
68
|
+
pyparsing==2.4.7
|
|
69
|
+
pyrsistent==0.17.3
|
|
70
|
+
python-dateutil==2.8.1
|
|
71
|
+
pytools==2019.1.1
|
|
72
|
+
pytz==2020.4
|
|
73
|
+
PyWavelets==1.1.1
|
|
74
|
+
PyYAML==5.3.1
|
|
75
|
+
pyzmq==20.0.0
|
|
76
|
+
requests==2.25.0
|
|
77
|
+
requests-oauthlib==1.3.0
|
|
78
|
+
rsa==4.6
|
|
79
|
+
scikit-image==0.17.2
|
|
80
|
+
scikit-learn==0.23.2
|
|
81
|
+
scipy==1.4.1
|
|
82
|
+
seaborn==0.11.0
|
|
83
|
+
Send2Trash==1.5.0
|
|
84
|
+
Shapely==1.7.1
|
|
85
|
+
six==1.12.0
|
|
86
|
+
sklearn==0.0
|
|
87
|
+
tensorboard==2.4.0
|
|
88
|
+
tensorboard-plugin-wit==1.7.0
|
|
89
|
+
tensorflow==2.3.0
|
|
90
|
+
tensorflow-estimator==2.3.0
|
|
91
|
+
termcolor==1.1.0
|
|
92
|
+
terminado==0.9.1
|
|
93
|
+
testpath==0.4.4
|
|
94
|
+
threadpoolctl==2.1.0
|
|
95
|
+
tifffile==2020.9.3
|
|
96
|
+
tornado==6.1
|
|
97
|
+
traitlets==4.3.3
|
|
98
|
+
urllib3==1.26.2
|
|
99
|
+
urwid==2.1.2
|
|
100
|
+
wcwidth==0.2.5
|
|
101
|
+
webencodings==0.5.1
|
|
102
|
+
Werkzeug==1.0.1
|
|
103
|
+
wrapt==1.12.1
|
|
104
|
+
zipp==3.4.0
|
|
@@ -0,0 +1,216 @@
|
|
|
1
|
+
# -*- coding: utf-8 -*-
|
|
2
|
+
#
|
|
3
|
+
# Configuration file for the Sphinx documentation builder.
|
|
4
|
+
#
|
|
5
|
+
# This file does only contain a selection of the most common options. For a
|
|
6
|
+
# full list see the documentation:
|
|
7
|
+
# http://www.sphinx-doc.org/en/master/config
|
|
8
|
+
|
|
9
|
+
# -- Path setup --------------------------------------------------------------
|
|
10
|
+
|
|
11
|
+
# If extensions (or modules to document with autodoc) are in another directory,
|
|
12
|
+
# add these directories to sys.path here. If the directory is relative to the
|
|
13
|
+
# documentation root, use os.path.abspath to make it absolute, like shown here.
|
|
14
|
+
#
|
|
15
|
+
# import os
|
|
16
|
+
# import sys
|
|
17
|
+
# sys.path.insert(0, os.path.abspath('.'))
|
|
18
|
+
|
|
19
|
+
|
|
20
|
+
import os
|
|
21
|
+
import sys
|
|
22
|
+
#sys.path.insert(0, os.path.abspath('.'))
|
|
23
|
+
sys.path.append(os.path.abspath('../../../../lost_ds/'))
|
|
24
|
+
|
|
25
|
+
|
|
26
|
+
# -- Project information -----------------------------------------------------
|
|
27
|
+
|
|
28
|
+
project = 'lost_ds'
|
|
29
|
+
copyright = '2021, L3bm GmbH'
|
|
30
|
+
author = 'L3bm GmbH'
|
|
31
|
+
|
|
32
|
+
# The short X.Y version
|
|
33
|
+
version = ''
|
|
34
|
+
# The full version, including alpha/beta/rc tags
|
|
35
|
+
release = '1.0.x'
|
|
36
|
+
|
|
37
|
+
|
|
38
|
+
# -- General configuration ---------------------------------------------------
|
|
39
|
+
|
|
40
|
+
# If your documentation needs a minimal Sphinx version, state it here.
|
|
41
|
+
#
|
|
42
|
+
# needs_sphinx = '1.0'
|
|
43
|
+
|
|
44
|
+
# Add any Sphinx extension module names here, as strings. They can be
|
|
45
|
+
# extensions coming with Sphinx (named 'sphinx.ext.*') or your custom
|
|
46
|
+
# ones.
|
|
47
|
+
extensions = [
|
|
48
|
+
'sphinx.ext.autodoc',
|
|
49
|
+
'sphinx.ext.todo',
|
|
50
|
+
'sphinx.ext.viewcode',
|
|
51
|
+
#'sphinx.ext.githubpages',
|
|
52
|
+
'sphinx.ext.napoleon',
|
|
53
|
+
]
|
|
54
|
+
|
|
55
|
+
# Napoleon settings
|
|
56
|
+
napoleon_google_docstring = True
|
|
57
|
+
napoleon_numpy_docstring = True
|
|
58
|
+
napoleon_include_init_with_doc = False
|
|
59
|
+
napoleon_include_private_with_doc = False
|
|
60
|
+
napoleon_include_special_with_doc = True
|
|
61
|
+
napoleon_use_admonition_for_examples = True
|
|
62
|
+
napoleon_use_admonition_for_notes = False
|
|
63
|
+
napoleon_use_admonition_for_references = False
|
|
64
|
+
napoleon_use_ivar = False
|
|
65
|
+
napoleon_use_param = True
|
|
66
|
+
napoleon_use_rtype = True
|
|
67
|
+
# napoleon_show_inheritance = True
|
|
68
|
+
|
|
69
|
+
autodoc_default_options = {
|
|
70
|
+
'undoc-members':False,
|
|
71
|
+
'members': True,
|
|
72
|
+
'private-members': False,
|
|
73
|
+
'inherited-members': True
|
|
74
|
+
}
|
|
75
|
+
|
|
76
|
+
# Add any paths that contain templates here, relative to this directory.
|
|
77
|
+
templates_path = ['_templates']
|
|
78
|
+
|
|
79
|
+
# The suffix(es) of source filenames.
|
|
80
|
+
# You can specify multiple suffix as a list of string:
|
|
81
|
+
#
|
|
82
|
+
# source_suffix = ['.rst', '.md']
|
|
83
|
+
source_suffix = '.rst'
|
|
84
|
+
|
|
85
|
+
# The master toctree document.
|
|
86
|
+
master_doc = 'index'
|
|
87
|
+
|
|
88
|
+
# The language for content autogenerated by Sphinx. Refer to documentation
|
|
89
|
+
# for a list of supported languages.
|
|
90
|
+
#
|
|
91
|
+
# This is also used if you do content translation via gettext catalogs.
|
|
92
|
+
# Usually you set "language" from the command line for these cases.
|
|
93
|
+
language = None
|
|
94
|
+
|
|
95
|
+
# List of patterns, relative to source directory, that match files and
|
|
96
|
+
# directories to ignore when looking for source files.
|
|
97
|
+
# This pattern also affects html_static_path and html_extra_path.
|
|
98
|
+
exclude_patterns = []
|
|
99
|
+
|
|
100
|
+
# The name of the Pygments (syntax highlighting) style to use.
|
|
101
|
+
pygments_style = None
|
|
102
|
+
|
|
103
|
+
|
|
104
|
+
# -- Options for HTML output -------------------------------------------------
|
|
105
|
+
|
|
106
|
+
# The theme to use for HTML and HTML Help pages. See the documentation for
|
|
107
|
+
# a list of builtin themes.
|
|
108
|
+
#
|
|
109
|
+
# html_theme = 'bizstyle'
|
|
110
|
+
# html_theme = 'haiku'
|
|
111
|
+
# html_theme = 'alabaster'
|
|
112
|
+
html_theme = 'sphinx_rtd_theme'
|
|
113
|
+
|
|
114
|
+
# Theme options are theme-specific and customize the look and feel of a theme
|
|
115
|
+
# further. For a list of options available for each theme, see the
|
|
116
|
+
# documentation.
|
|
117
|
+
#
|
|
118
|
+
# html_theme_options = {}
|
|
119
|
+
|
|
120
|
+
# Add any paths that contain custom static files (such as style sheets) here,
|
|
121
|
+
# relative to this directory. They are copied after the builtin static files,
|
|
122
|
+
# so a file named "default.css" will overwrite the builtin "default.css".
|
|
123
|
+
html_static_path = ['_static']
|
|
124
|
+
|
|
125
|
+
# Custom sidebar templates, must be a dictionary that maps document names
|
|
126
|
+
# to template names.
|
|
127
|
+
#
|
|
128
|
+
# The default sidebars (for documents that don't match any pattern) are
|
|
129
|
+
# defined by theme itself. Builtin themes are using these templates by
|
|
130
|
+
# default: ``['localtoc.html', 'relations.html', 'sourcelink.html',
|
|
131
|
+
# 'searchbox.html']``.
|
|
132
|
+
#
|
|
133
|
+
# html_sidebars = {}
|
|
134
|
+
|
|
135
|
+
|
|
136
|
+
# -- Options for HTMLHelp output ---------------------------------------------
|
|
137
|
+
|
|
138
|
+
# Output file base name for HTML help builder.
|
|
139
|
+
htmlhelp_basename = 'lost_dsdoc'
|
|
140
|
+
|
|
141
|
+
|
|
142
|
+
# -- Options for LaTeX output ------------------------------------------------
|
|
143
|
+
|
|
144
|
+
latex_elements = {
|
|
145
|
+
# The paper size ('letterpaper' or 'a4paper').
|
|
146
|
+
#
|
|
147
|
+
# 'papersize': 'letterpaper',
|
|
148
|
+
|
|
149
|
+
# The font size ('10pt', '11pt' or '12pt').
|
|
150
|
+
#
|
|
151
|
+
# 'pointsize': '10pt',
|
|
152
|
+
|
|
153
|
+
# Additional stuff for the LaTeX preamble.
|
|
154
|
+
#
|
|
155
|
+
# 'preamble': '',
|
|
156
|
+
|
|
157
|
+
# Latex figure (float) alignment
|
|
158
|
+
#
|
|
159
|
+
# 'figure_align': 'htbp',
|
|
160
|
+
}
|
|
161
|
+
|
|
162
|
+
# Grouping the document tree into LaTeX files. List of tuples
|
|
163
|
+
# (source start file, target name, title,
|
|
164
|
+
# author, documentclass [howto, manual, or own class]).
|
|
165
|
+
latex_documents = [
|
|
166
|
+
(master_doc, 'lost_ds.tex', 'lost_ds Documentation',
|
|
167
|
+
'L3bm GmbH', 'manual'),
|
|
168
|
+
]
|
|
169
|
+
|
|
170
|
+
|
|
171
|
+
# -- Options for manual page output ------------------------------------------
|
|
172
|
+
|
|
173
|
+
# One entry per manual page. List of tuples
|
|
174
|
+
# (source start file, name, description, authors, manual section).
|
|
175
|
+
man_pages = [
|
|
176
|
+
(master_doc, 'lost_ds', 'lost_ds Documentation',
|
|
177
|
+
[author], 1)
|
|
178
|
+
]
|
|
179
|
+
|
|
180
|
+
|
|
181
|
+
# -- Options for Texinfo output ----------------------------------------------
|
|
182
|
+
|
|
183
|
+
# Grouping the document tree into Texinfo files. List of tuples
|
|
184
|
+
# (source start file, target name, title, author,
|
|
185
|
+
# dir menu entry, description, category)
|
|
186
|
+
texinfo_documents = [
|
|
187
|
+
(master_doc, 'lost_ds', 'lost_ds Documentation',
|
|
188
|
+
author, 'lost_ds', 'One line description of project.',
|
|
189
|
+
'Miscellaneous'),
|
|
190
|
+
]
|
|
191
|
+
|
|
192
|
+
|
|
193
|
+
# -- Options for Epub output -------------------------------------------------
|
|
194
|
+
|
|
195
|
+
# Bibliographic Dublin Core info.
|
|
196
|
+
epub_title = project
|
|
197
|
+
|
|
198
|
+
# The unique identifier of the text. This can be a ISBN number
|
|
199
|
+
# or the project homepage.
|
|
200
|
+
#
|
|
201
|
+
# epub_identifier = ''
|
|
202
|
+
|
|
203
|
+
# A unique identification for the text.
|
|
204
|
+
#
|
|
205
|
+
# epub_uid = ''
|
|
206
|
+
|
|
207
|
+
# A list of files that should not be packed into the epub file.
|
|
208
|
+
epub_exclude_files = ['search.html']
|
|
209
|
+
|
|
210
|
+
|
|
211
|
+
# -- Extension configuration -------------------------------------------------
|
|
212
|
+
|
|
213
|
+
# -- Options for todo extension ----------------------------------------------
|
|
214
|
+
|
|
215
|
+
# If true, `todo` and `todoList` produce output, else they produce nothing.
|
|
216
|
+
todo_include_todos = True
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
.. lost_ds documentation master file, created by
|
|
2
|
+
sphinx-quickstart on Wed Nov 14 10:46:34 2018.
|
|
3
|
+
You can adapt this file completely to your liking, but it should at least
|
|
4
|
+
contain the root `toctree` directive.
|
|
5
|
+
|
|
6
|
+
Welcome to lost_ds's documentation!
|
|
7
|
+
================================
|
|
8
|
+
|
|
9
|
+
.. figure:: images/lost_ds.jpg
|
|
10
|
+
|
|
11
|
+
|
|
12
|
+
About lost_ds
|
|
13
|
+
============
|
|
14
|
+
TODO Describe it here
|
|
15
|
+
|
|
16
|
+
.. toctree::
|
|
17
|
+
:maxdepth: 2
|
|
18
|
+
:caption: Contents:
|
|
19
|
+
|
|
20
|
+
lds.hello <lds.hello.rst>
|
|
21
|
+
|
|
22
|
+
|
|
23
|
+
Indices and tables
|
|
24
|
+
==================
|
|
25
|
+
|
|
26
|
+
* :ref:`genindex`
|
|
27
|
+
* :ref:`search`
|