Skip to content

Fix SRT parsing and GPS altitude handling#1994

Open
kemaluzel wants to merge 1 commit intoOpenDroneMap:masterfrom
kemaluzel:fix-srt-parsing
Open

Fix SRT parsing and GPS altitude handling#1994
kemaluzel wants to merge 1 commit intoOpenDroneMap:masterfrom
kemaluzel:fix-srt-parsing

Conversation

@kemaluzel
Copy link

Summary

Fixes issues in SRT parsing that caused incorrect GPS altitude handling.

Context

This PR is based on the discussion and findings here:
https://community.opendronemap.org/t/several-issues-found-in-srt-parsing-and-gps-altitude-handling/25790

Changes

  • Improved SRT timestamp parsing
  • Corrected GPS altitude extraction and handling
  • Added safer checks for missing or malformed SRT values
@smathermather
Copy link
Contributor

Thanks for this @kemaluzel, and thanks for the forum post. This looks to make a big difference for high precision workflows with video. Did you use LLMs / code agents to write this?

@kemaluzel
Copy link
Author

Thanks! I used chatgpt as an ai assistant for refactoring and sanity-checking parts of the code. The issue analysis, debugging process, dataset testing, and the RTK/SRT logic corrections are based on my own workflow and field-generated data. Since I generate my own SRT files from RTK GNSS receivers, the fixes are grounded in real high-precision datasets.

@smathermather
Copy link
Contributor

Thanks for the additional info. For clarity, your ChatGPT prompt was what you posted on the forum and then you wrote the pull request based on that exchange?

@kemaluzel
Copy link
Author

For some time, I had suspected there was an issue in the video + SRT processing workflow. Over the past year, I tested multiple datasets and repeatedly tried to correctly match the SRT data with the video, but the processed outputs were consistently deformed in some way.

To better understand the issue, I decided to review the related code. Since I am not very familiar with Python, I analyzed how the parsers handle the SRT structure based on the SRT files I generate. With the help of ChatGPT, I identified potential problems in the altitude parsing logic and some regex definitions.

I shared my findings with the community as soon as possible. To prepare the pull request efficiently, I did use ChatGPT to help draft and structure the patch. However, the issue identification and data analysis were based on my own real-world datasets and testing.

I have not yet had the chance to fully test the corrected code. If this contribution helps improve ODM even a little, I would be very happy.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

2 participants