-
Notifications
You must be signed in to change notification settings - Fork 340
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
KLT flow, CAN support and camera driver improvements #68
Open
LorenzMeier
wants to merge
149
commits into
master
Choose a base branch
from
klt
base: master
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
…ow), this implementation needs to be extended with image pyramid with ~3 levels and reimplemented with special instructions and fixed point for bilinear filtering
…frames but depending on the amount of motion blur and lens defocus it can be also much higher. Important: Gyro compensation not implemented currently, the corresponding parameter has no influence. To maintain 400 Hz refresh rate the flow is computed on 9 points in the image in a 3x3 grid, the size of the patch is 5x5 pixels. The code is not yet optimized, feel free to do so.
…x flow value, the clamping should happen on the gyro rates not on the final flow output
- Merged klt_flow2 with master by adding compute_klt() function to flow.c - Added NUM_BLOCK_KLT to flow.c for different block size - Change of FRAME_SIZE in flow.c in compute_klt() to int - Changing between compute_flow and compute_klt done in main.c by commenting one or the other Conflicts: src/flow.c src/main.c
- Added visual representation of flow in QGroundcontrol when activating flow image (for debugging)
moved quality measurement to new file quality_measurement.c added iqr (interquartile range) quality fixed klt flow image
…rate modules. Not tested yet.
- fix timer functions. do not use exclusive access instructions. - fix time accumulation data type.
…nup of code and small optimisations.
- implement median filtering of flow results - huge code cleanup Conflicts: inc/flow.h src/flow.c src/main.c
- Fixed Gyro compensation - Added global parameters for result filtering - small fixes in result accumulator
- Changed min amount of valid results from 2 to 3
- Added global parameter PARAM_USB_SEND_QUAL_0. It sets whether to send packets with 0 quality or not.
…which were used earlier, but are not needed anymore.
…ded experimental minimum determinant parameter.
… into feature/combine-algorithms
…her a patch is a good patch.
…m takes too long. parameter tweaking.
This only affects the legacy data in pixels / accumulation period. Based on 04f365d by Simon Laube The full_time variable of the accumulator did not include the time of the dropped frames. This is fixed now. Accumulator calculations relying on the full_time variable are now correct event when frames are dropped. (for example when taking a snapshot) The full_time variable is currently only used by the old flow message which uses pixels as the output format. It is used to scale the measured pixel values to appear like we did not drop any frames. This scaling is correct if we assume that the speed remains constant during the accumulation period.
The UAVCAN message and APM can't deal with per-axis velocity limits. The X and Y values were always the same.
Otherwise when multiple interrupts are pending, it fails to clear any, and gets stuck in the ISR.
i2c_slave: Test individual interrupt-pending bits.
…datasheet This eliminates the noise seen on every 4th row
Datasheet Rev A says 690. Rev G says 704. Testing says higher.
Improved camera register settings
Lightware SF10 Lidar driver
camera.c shouldn't be calling into UAVCAN; the main loop should poll for images instead of blocking.
…y over USB The actual image transfer is solid, but the format for metadata is not ready to be considered a stable API.
Any reason why this hasn't been merged? Other than fixing the conflicts? |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
No description provided.