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

feat(blockage_diag): dust detection #3212

Merged
merged 7 commits into from
Sep 28, 2023

Conversation

swiftfile
Copy link
Contributor

@swiftfile swiftfile commented Mar 29, 2023

Description

I implemented dust detection process.
When dust covers the lidar, noise is added to the depth image. Therefore, I thought that noise(dust area) can be detected by applying noise reduction algorithms.
So,I implemented an algorithm used for noise reduction, morphological processing.

Here are the results of my implementation.
This is a video of rosbag with dust(only front_upper) on the lidar.
The second image from the top is a depth image, showing noise in the area where the dust is attached.
The top image is the output image when the process is executed.
The red color indicates the result of detecting blockage area, which has been implemented previously.
The yellow color indicates the result of detecting dusty area, which is result of my new implementation.
output

Related links

tier4 INTERNAL LINK : about this dust detection

Related PR

feat: add params and diag about dust-detection by swiftfile · Pull Request #116 · tier4/aip_launcher
feat(blockage_diag): dust detection by swiftfile · Pull Request #3192 · autowarefoundation/autoware.universe (cancelled PR)

Tests performed

Notes for reviewers

Pre-review checklist for the PR author

The PR author must check the checkboxes below when creating the PR.

In-review checklist for the PR reviewers

The PR reviewers must check the checkboxes below before approval.

  • The PR follows the pull request guidelines.
  • The PR has been properly tested.
  • The PR has been reviewed by the code owners.

Post-review checklist for the PR author

The PR author must check the checkboxes below before merging.

  • There are no open discussions or they are tracked via tickets.
  • The PR is ready for merge.

After all checkboxes are checked, anyone who has write access can merge the PR.

@swiftfile swiftfile marked this pull request as ready for review March 29, 2023 15:54
@swiftfile swiftfile requested review from amc-nu, miursh, yukkysaito and a team as code owners March 29, 2023 15:54
@github-actions github-actions bot added type:documentation Creating or refining documentation. (auto-assigned) component:sensing Data acquisition from sensors, drivers, preprocessing. (auto-assigned) labels Mar 29, 2023
@VRichardJP
Copy link
Contributor

Sorry i could not understand. Where is the dust located on the lidar in your demo?

Would your algorithm also work with other things, such as water drops, snow, bird 🐦💩?

@badai-nguyen
Copy link
Contributor

@VRichardJP
Thanks for your comment.

  1. This implementation was tested on the data collected from Hesai QT LiDAR which was sprayed by Arizona test dust
    Here is how the LiDAR looks like after sprayed dust few times compressor
    image

  2. IMO, the algorithms target to detect some sparse and tiny dust which adhered and blocked the LiDAR rays so maybe not work well with kind of clean water/rain drop. Related to snow case, since the data not available yet so I have no comment for now.
    cc @drwnz Do you have other comments?

@stale
Copy link

stale bot commented May 29, 2023

This pull request has been automatically marked as stale because it has not had recent activity.

@stale stale bot added the status:stale Inactive or outdated issues. (auto-assigned) label May 29, 2023
@stale stale bot removed the status:stale Inactive or outdated issues. (auto-assigned) label Sep 22, 2023
@badai-nguyen badai-nguyen added the run:build-and-test-differential Mark to enable build-and-test-differential workflow. (used-by-ci) label Sep 22, 2023
Signed-off-by: badai-nguyen <[email protected]>
@codecov
Copy link

codecov bot commented Sep 22, 2023

Codecov Report

Attention: 178 lines in your changes are missing coverage. Please review.

Comparison is base (bf03fe3) 15.02% compared to head (0b5b4b7) 14.96%.
Report is 68 commits behind head on main.

Additional details and impacted files
@@            Coverage Diff             @@
##             main    #3212      +/-   ##
==========================================
- Coverage   15.02%   14.96%   -0.07%     
==========================================
  Files        1609     1614       +5     
  Lines      111684   112143     +459     
  Branches    34605    34601       -4     
==========================================
- Hits        16784    16783       -1     
- Misses      76201    76663     +462     
+ Partials    18699    18697       -2     
Flag Coverage Δ *Carryforward flag
differential 5.48% <0.00%> (?)
total 15.04% <ø> (+0.01%) ⬆️ Carriedforward from 93cee3c

*This pull request uses carry forward flags. Click here to find out more.

Files Coverage Δ
...cessor/src/blockage_diag/blockage_diag_nodelet.cpp 0.00% <0.00%> (ø)

... and 9 files with indirect coverage changes

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

@badai-nguyen
Copy link
Contributor

I have reproduced the result using logging_simulator as below:
Screenshot from 2023-09-22 13-19-59
LGTM
@miursh could you approve this PR?

badai-nguyen and others added 2 commits September 24, 2023 15:46
Signed-off-by: badai-nguyen <[email protected]>
Signed-off-by: Shunsuke Miura <[email protected]>
Signed-off-by: badai-nguyen <[email protected]>
Copy link
Contributor

@miursh miursh left a comment

Choose a reason for hiding this comment

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

LGTM. Thank you for your support.

@badai-nguyen badai-nguyen merged commit 1caa1b3 into autowarefoundation:main Sep 28, 2023
badai-nguyen added a commit to badai-nguyen/autoware.universe that referenced this pull request Dec 25, 2023
* implement about dust detection

Signed-off-by: Yusuke Mizoguchi <[email protected]>

* chore: fix spell

Signed-off-by: badai-nguyen <[email protected]>

* chore: refactor

Signed-off-by: badai-nguyen <[email protected]>

* bug fix

Signed-off-by: Shunsuke Miura <[email protected]>

* fix: avoid counter overflow

Signed-off-by: badai-nguyen <[email protected]>

---------

Signed-off-by: Yusuke Mizoguchi <[email protected]>
Signed-off-by: badai-nguyen <[email protected]>
Signed-off-by: Shunsuke Miura <[email protected]>
Co-authored-by: badai nguyen <[email protected]>
Co-authored-by: badai-nguyen <[email protected]>
Co-authored-by: Shunsuke Miura <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
component:sensing Data acquisition from sensors, drivers, preprocessing. (auto-assigned) run:build-and-test-differential Mark to enable build-and-test-differential workflow. (used-by-ci) type:documentation Creating or refining documentation. (auto-assigned)
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants