Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
89 commits
Select commit Hold shift + click to select a range
150c8a7
Update README.md
redmond2742 Oct 16, 2023
ae19cae
added ssoss label to intersection pictures
redmond2742 Oct 23, 2023
7ef584c
Update README.md
redmond2742 May 10, 2024
9ed95e0
Fix get_sd method and add test
redmond2742 Jun 8, 2025
da68d4e
Handle optional icecream dependency
redmond2742 Jun 8, 2025
7f13d0a
Merge pull request #5 from redmond2742/codex/fix-bugs-for-testing-per…
redmond2742 Jun 8, 2025
7476451
Merge pull request #4 from redmond2742/codex/fix-bug-in-important-cod…
redmond2742 Jun 8, 2025
752a091
Use ffmpeg for random frame extraction
redmond2742 Jun 8, 2025
ed3e400
Fix CLI formatting and add script entry
redmond2742 Jun 8, 2025
545502c
Merge pull request #6 from redmond2742/codex/optimize-frame-selection…
redmond2742 Jun 8, 2025
152ff75
Convert road object classes to dataclasses and add type hints
redmond2742 Jun 8, 2025
08b872f
Merge pull request #10 from redmond2742/codex/convert-classes-to-data…
redmond2742 Jun 8, 2025
b1f6fd9
Fix filenames for intersection images
redmond2742 Jun 8, 2025
4bc8b2a
Merge pull request #11 from redmond2742/codex/remove-+-in-filename-of…
redmond2742 Jun 8, 2025
3e1cda9
Merge pull request #8 from redmond2742/codex/fix-indentation-and-add-…
redmond2742 Jun 8, 2025
3e298ce
Fix tests import path and handle __version__
redmond2742 Jun 8, 2025
d944b88
Merge pull request #13 from redmond2742/codex/update-test-imports-to-…
redmond2742 Jun 8, 2025
6b547ad
Optimize GPX loading with optional pickle caching
redmond2742 Jun 8, 2025
01eae69
Merge pull request #14 from redmond2742/codex/optimize-gpx-file-proce…
redmond2742 Jun 8, 2025
b1b5a93
Refactor large functions into helpers
redmond2742 Jun 8, 2025
c5659c8
Merge pull request #15 from redmond2742/vneltp-codex/refactor-large-f…
redmond2742 Jun 8, 2025
fcb9695
Revert "Refactor large functions"
redmond2742 Jun 10, 2025
2d5df1c
Merge pull request #16 from redmond2742/revert-15-vneltp-codex/refact…
redmond2742 Jun 10, 2025
59ef36b
fix out dir handling
redmond2742 Jun 10, 2025
0ec1101
Merge pull request #17 from redmond2742/codex/refactor-directory-crea…
redmond2742 Jun 10, 2025
76158fd
Add GPS EXIF tagging and interpolation
redmond2742 Jun 10, 2025
94e8518
Merge pull request #19 from redmond2742/codex/implement-location-inte…
redmond2742 Jun 10, 2025
66ce77f
Revert "Add GPS EXIF tagging"
redmond2742 Jun 10, 2025
7b21f8a
Merge pull request #20 from redmond2742/revert-19-codex/implement-loc…
redmond2742 Jun 10, 2025
9738440
Update static_road_object.py
redmond2742 Jun 10, 2025
9f6f648
Fix center_to_sb_distance attribute and add tests
redmond2742 Jun 10, 2025
cd12256
Merge pull request #21 from redmond2742/codex/update-ctr_pnt-to-ctr_p…
redmond2742 Jun 10, 2025
ed88cec
Add EXIF GPS tagging and location interpolation
redmond2742 Jun 10, 2025
ae03ccf
Merge pull request #22 from redmond2742/codex/implement-location-inte…
redmond2742 Jun 10, 2025
3ef98fb
Fix duration formatting and add tests
redmond2742 Jun 10, 2025
e44d669
Merge pull request #23 from redmond2742/codex/fix-video-duration-calc…
redmond2742 Jun 10, 2025
a416535
Bump version to 1.0
redmond2742 Jun 11, 2025
7c2cdde
Merge pull request #27 from redmond2742/b7pb09-codex/change-version-n…
redmond2742 Jun 11, 2025
ade05c9
Add tests for ProcessRoadObjects utilities
redmond2742 Jun 11, 2025
63e0914
Merge pull request #28 from redmond2742/codex/find-top-tests-for-repo…
redmond2742 Jun 11, 2025
36f36bc
Ensure sync.txt is created
redmond2742 Jun 11, 2025
72c3742
Merge pull request #29 from redmond2742/codex/create--out--folder-and…
redmond2742 Jun 11, 2025
19ddfd4
Add tests for GPXPoint time-to-approach and heuristics
redmond2742 Jun 11, 2025
0b3306a
Merge pull request #30 from redmond2742/codex/write-tests-for-motionr…
redmond2742 Jun 11, 2025
4290431
test: improve static and intersection coverage
redmond2742 Jun 11, 2025
8dac30d
Merge pull request #31 from redmond2742/codex/write-tests-for-staticr…
redmond2742 Jun 11, 2025
eb5454e
Add ProcessVideo tests
redmond2742 Jun 11, 2025
560257c
Merge pull request #32 from redmond2742/codex/write-tests-for-video-p…
redmond2742 Jun 11, 2025
38beee3
Add CLI tests
redmond2742 Jun 11, 2025
3d88901
Merge pull request #33 from redmond2742/codex/write-tests-for-command…
redmond2742 Jun 11, 2025
97eb3d2
Add core modules overview
redmond2742 Jun 11, 2025
d0fafdd
Merge pull request #34 from redmond2742/codex/explain-codebase-struct…
redmond2742 Jun 11, 2025
86f017a
Add timestamp lookup helper
redmond2742 Jun 11, 2025
40c4595
Merge pull request #35 from redmond2742/codex/add-get_info_at_timesta…
redmond2742 Jun 11, 2025
73dd02e
Add GIF cleanup and overwrite options
redmond2742 Jun 11, 2025
745b79f
Merge pull request #36 from redmond2742/codex/add-cleanup-and-overwri…
redmond2742 Jun 11, 2025
b7bb0f4
Add timezone handling for GPX points
redmond2742 Jun 11, 2025
c69a35b
Merge pull request #37 from redmond2742/codex/implement-timezone-hand…
redmond2742 Jun 11, 2025
418c204
Optimize backflow with vectorization
redmond2742 Jun 12, 2025
39b920f
Merge pull request #39 from redmond2742/z6x7ko-codex/refactor-gpx-pro…
redmond2742 Jun 12, 2025
01747ee
Fix pandas Series indexing warning
redmond2742 Jun 12, 2025
405ceec
Merge pull request #41 from redmond2742/codex/fix-futurewarning-for-s…
redmond2742 Jun 12, 2025
fa0e6e4
Prevent duplicate entries in sync log
redmond2742 Jun 12, 2025
2c275d6
Merge pull request #42 from redmond2742/codex/remove-redundant-append…
redmond2742 Jun 12, 2025
c6fa3f6
Add signal layer builder CLI
redmond2742 Jun 12, 2025
8d6e451
Merge pull request #43 from redmond2742/codex/implement-ssoss-build-s…
redmond2742 Jun 12, 2025
ae008a2
fix cli imports and update docs
redmond2742 Jun 13, 2025
3570403
Merge pull request #44 from redmond2742/codex/refactor-imports-in-sso…
redmond2742 Jun 13, 2025
0bfd56c
Bump version to 1.1
redmond2742 Jun 13, 2025
b8698dd
Merge pull request #45 from redmond2742/codex/update-version-in-pypro…
redmond2742 Jun 13, 2025
b8f7bd2
Add autosync option
redmond2742 Jun 13, 2025
b55bf96
Merge pull request #46 from redmond2742/codex/add---autosync-option-t…
redmond2742 Jun 13, 2025
c0b3d41
Add geodesic-based track interpolation
redmond2742 Jun 13, 2025
e2bf812
Merge pull request #47 from redmond2742/codex/refactor-gpx-interpolat…
redmond2742 Jun 13, 2025
eb300a5
Handle direct execution of ssoss_cli
redmond2742 Jun 13, 2025
6f5c049
Merge pull request #49 from redmond2742/codex/fix-relative-import-err…
redmond2742 Jun 13, 2025
3c0b23c
Handle help option in CLI
redmond2742 Jun 13, 2025
80762d8
Merge pull request #50 from redmond2742/codex/update--help-cli-tool-t…
redmond2742 Jun 13, 2025
70f3f7d
Improve video sync summary
redmond2742 Jun 13, 2025
f6d9410
Merge pull request #52 from redmond2742/codex/optimize-video-sync-sum…
redmond2742 Jun 13, 2025
15288da
Improve video sync summary
redmond2742 Jun 13, 2025
66ca5a6
Merge branch 'main' into codex/update-video-sync-summary-formatting
redmond2742 Jun 13, 2025
ad8d230
Merge pull request #53 from redmond2742/codex/update-video-sync-summa…
redmond2742 Jun 13, 2025
7f02c84
Improve GPX summary with speed metrics
redmond2742 Jun 13, 2025
a58a667
Merge pull request #54 from redmond2742/8a1km2-codex/update-gpx-summa…
redmond2742 Jun 13, 2025
1a5c223
Add CLI summary and return lists
redmond2742 Jun 13, 2025
4bdaa66
Merge pull request #55 from redmond2742/codex/add-cli-summary-with-im…
redmond2742 Jun 13, 2025
f139929
Update CLI summary format
redmond2742 Jun 13, 2025
d62a867
Merge branch 'main' into codex/update-ssoss-summary-information-forma…
redmond2742 Jun 13, 2025
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
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -12,3 +12,4 @@ dist/
__pycache__/

.idea

31 changes: 21 additions & 10 deletions src/ssoss/ssoss_cli.py
Original file line number Diff line number Diff line change
Expand Up @@ -55,7 +55,9 @@ def cli_summary(descriptions, project, video):
"""Print a summary of extracted images and processing stats."""

width = 70
title = "CLI SUMMARY"

title = "SSOSS Summary Information"

symbol = "="

num_images = len(descriptions)
Expand All @@ -74,13 +76,19 @@ def cli_summary(descriptions, project, video):
bearing = int(parts[1])
intersections.setdefault(int_id, set()).add(bearing)

intersection_lines = []
for int_id in sorted(intersections):
count = len(intersections[int_id])
pct = count / 4 * 100
intersection_lines.append(
f"# Intersection {int_id}: {count}/4 approaches ({pct:.1f}%)"
)

num_inters_found = len(intersections)
total_input_inters = (
len(project.intersection_listDF.index)
if getattr(project, "intersection_listDF", None) is not None
else 0
)
inters_pct = (
num_inters_found / total_input_inters * 100
if total_input_inters
else 0
)


multiplier = (18 * 60 / avg_vid) if avg_vid else 0

Expand All @@ -89,8 +97,9 @@ def cli_summary(descriptions, project, video):
{" " * (int(width/2)-int(len(title)/2))}{title}
{symbol * width}
# Number of Images: {num_images}
# Number of Intersections: {len(intersections)}
{chr(10).join(intersection_lines)}

# Number of Intersections: {num_inters_found} ({inters_pct:.1f}%)

# Avg Time per Image (GPX): {project.hr_min_sec(avg_gpx)}
# Avg Time per Image (Video): {project.hr_min_sec(avg_vid)}
# SSOSS Multiplier: {multiplier:.1f}X compared to field check
Expand Down Expand Up @@ -182,6 +191,7 @@ def main(argv=None):
video_extract_group = parser.add_argument_group(
"Extract Frames from Video File",
"Enter Start and End Time (in seconds) for still images from video file",

)

# Static Object & GPX arguments
Expand All @@ -193,6 +203,7 @@ def main(argv=None):
type=argparse.FileType("r"),
)


so_and_gpx_group.add_argument(
"-gpx",
"--gpx_file",
Expand Down
Loading