-
Notifications
You must be signed in to change notification settings - Fork 3k
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
Create a rosbag anonymizer tool #4551
Comments
In last situation we decide won't use autodistill anymore because it don't have any additional things from original DINO and SAM for us. Instead of this, we used Grounding DINO and SAM from original repositories and we added a image classification method OpenCLIP to validate Grounding DINO results. The working scheme is as follows: Project Link: https://github.com/leo-drive/rosbag2_anonymizer
Additional of these things, we want to add one more validation part. The new validation method will check whether some objects should be inside other objects or not. For example, a license plate should be inside of the car but should not be inside of human. Also I will add detailed outputs, for now you can check this bag file which anonymized with our tool: Definition of done
|
@StepTurtle could you test https://github.com/knzo25/rosbag2_language_sam with the same data and compare them? cc. @knzo25 I'm expecting the comparison to be a playback of the anonymized rosbag camera image which as a video shared here. |
Here is the results:
In the video: Left rqt window shows this tool: https://github.com/leo-drive/rosbag2_anonymizer
Right rqt window shows this tool: https://github.com/knzo25/rosbag2_language_sam
|
Additionally, a validation component has been added to https://github.com/leo-drive/rosbag2_anonymizer to verify the object positions. You can view the results here: Do you have any ideas or suggestions on what we can do in the upcoming stages? |
I can read the text, blur is not enough. There are so many places where the plates are not blurred well enough. What happens if you look for license plates with low score threshold and if the plate is inside the vehicle for validation? Blurring classesClasses for the license plate detectionParent classes
Child class
Classes for the pedestrian face detectionParent classes
Child class
|
I changed the blur parameters, I guess it is okey now.
For this question following schema could be helpful The first step of validation involves running OpenClip. OpenClip will return results similar to the following:
If the score for the corresponding label is greater than 0.9, it will be selected as valid. In the second validation step, we verify whether the label is inside of the parent. If it resides within one of the parent categories, it must satisfy one of the following conditions:
For your example, license plate must have score greater than 0.3 or the highest score for the corresponding label the highest among the scores. |
My problem is with the false negatives, also known as, missed detections. Does your proposal reduce FNs? |
When we implemented this proposal, it didn't have a direct impact on FNs, but it allowed us to lower DINO threshold. By reducing DINO threshold, we're able to detect more objects, including some that were previously classified as FNs. Also reducing DINO threshold will return a lot of FP and we aim to determine these FPs with proposal |
@StepTurtle |
@mitsudome-r @xmfcx we forked repository couple time ago. But currently, I don't have write access. Could you give me a access to this repository? I believe I can create PRs, but I would prefer to push directly to the main branch as there might not be anyone to review for now. If this isn't acceptable, I'll create a PR whenever I need to update the code. |
I am sharing the videos which shows the current results: After labeling and training YOLOv8, we combined YOLOv8 and DINO to find bounding boxes and results improved. |
Hi @xmfcx, The tool have usage instructions in the project README. Should we also add a user guideline for the tools in the Autoware documentation. And instruction for how to publish new public dataset with Autoware community. |
@StepTurtle under here: it would be nice to have a separate page, dedicated to data anonymization. |
@mitsudome-r will find someone to test this tool. |
Hi @StepTurtle, first of all, thank you for the tool you prepared. I had the opportunity to test the tool and I would like to give feedback about it. The tool version of I used: I used the tool to anonymize the data I collected in our autonomous test vehicle. You can find detailed information about the vehicle and system here: ECU of Test VehicleThe ECU specs of our test vehicle are as follows:
Anonymizing The DataI anonymized the image in the bag file in the system that has the features I mentioned above. You can find the information about the bag file below:
While anonymizing the data I provided above with the tool, the whole process took approximately
Results and ObservationsYou can find images of anonymized data in this video: In conclusion, as can be observed from the video, the anonymization results are good enough. But the anonymization process took about 1 hour and 55 minutes. Considering the 116s total bag duration, this process time is not short and during this time, GPU usage was quite high. |
@StepTurtle @xmfcx I have approved and merged the PR to Autoware Documentation. autowarefoundation/autoware-documentation#557 Should we close this issue? |
Checklist
Description
The Autoware Foundation seeks to develop a tool that anonymizes camera data within rosbags, specifically targeting the blurring of faces and license plates to maintain privacy. This initiative aims to enable the secure sharing of rosbags containing camera data amongst member companies and the wider community.
Purpose
The primary goal is to ensure the privacy of individuals captured in camera data shared within the Autoware ecosystem. By creating a tool that can anonymize sensitive information in rosbags, we facilitate a safer, privacy-compliant exchange of data that can be used for research, development, and testing of autonomous vehicle technologies.
Possible approaches
Definition of done
The text was updated successfully, but these errors were encountered: