space-concordia-robotics / robotics-prototype

Teleoperated Mars rover with autonomous capabilities intended for robotics competitions.
https://spaceconcordia.github.io/robotics.html
25 stars 18 forks source link

Ar tag detection 481 #482

Closed MewtR closed 3 years ago

MewtR commented 3 years ago

Assignee Section

Description

This pull request integrates the ar tag detection from here to this repository.

Prerequisites

Steps for Testing

  1. Run the project and visit http://localhost:5000.
  2. Select a camera stream and start it.
  3. Click on the "AR" button, you should see a red square appear.
  4. Hold up the printed AR tags in front of you camera. The red square should turn green.
  5. Click on the "AR" button again and the square should disappear.

Additional Steps

  1. Test with multiple streams simultaneously.

closes #481

The approval from all software team leads is necessary before merging.

Reviewer Section

Aside from local testing and the General Integration Test it is implied that static analysis should be included in the verification process.

For Pull Requests that do not include code changes, it is not required to perform the tests above.

MewtR commented 3 years ago

@RealWilliamWells Now ros-track-alvar is installed through the scripts and the Dockerfile (although for docker it might require a bit more work to get right because as far as I know you have to specify the device name you want mounted inside your container. In other words if it isn't named /dev/video0, it won't work.)

But yeah you're right performance is pretty trash at the moment. I'll see if I can make it better.

MartensCedric commented 3 years ago

FYI the name of the cameras on the rover are

videoArmScience videoFront videoRear

as shown in the symlinks created here https://github.com/space-concordia-robotics/robotics-prototype/blob/master/robot/rover/config/udev/rules.d/my-webcams.rules

MartensCedric commented 3 years ago

We have trouble with setting up the configuration for the cameras. It seg faults. From the source code :

It saves a tar file in /tmp, this works, but what does not work is the service proxy step

http://wiki.ros.org/rospy/Overview/Services

MartensCedric commented 3 years ago

Could you add a comment in the .launch files about the arguments needed in kinetic but not melodic (just so if someone struggles to get this working on kinetic for whatever reason they wont go bonkers)

MewtR commented 3 years ago

Closed in favor of #492