uwrobotics / uwrt_mars_rover

Ros Metapackage for UWRT Mars Rover
MIT License
18 stars 7 forks source link

User/nick palmar/207/aruco pose detection #228

Closed nico-palmar closed 1 year ago

nico-palmar commented 1 year ago

Tested this and looked it over... looks pretty good to me. I still need to make another PR to add in the zed_wrapper into our repo.

Steps for testing (without the zed wrapper are outlined below):

  1. Refer here on how to clone and build the zed2 wrapper. Specifically the 'build the package' blurb at the top. Clone and build the zed2 wrapper into your workspace.
  2. Checkout this branch. Build the uwrt_mars_rover_vision package (colcon build --packages-select uwrt_mars_rover_vision)
  3. Source the overlay (the setup.bash file) and run > ros2 launch uwrt_mars_rover_vision zed_vision.launch.py

Before merging I'd be good if other people took a look at this running and tested it on their local machine. Maybe @keyonjerome can help with this. We can do it in the bay together if you want.

nico-palmar commented 1 year ago

Nico TODO: add open CV to common upstream dependencies to pass the build tests

keyonjerome commented 1 year ago

@Nick-palmar is there a specific OpenCV version you are using? The arm64 build seems to automatically pull in 4.2.0. What version did you test/write code with?

keyonjerome commented 1 year ago

also add your new package to ci.yaml

nico-palmar commented 1 year ago

I think 4.7.0 dev... which is prolly why stuff is breaking

nico-palmar commented 1 year ago

Before merging this.. can I find out what exactly the linter wants? I ran ament_clang_format --reformat and it reformatted my stuff but clearly that's not enough... lol. Any ideas? I think later on we need to fix this/make a better workflow (def not your fault keyon, just something to do in the off season).

keyonjerome commented 1 year ago

@Nick-palmar you developed this using ROS2 Foxy right, not Galactic?

nico-palmar commented 1 year ago

@Nick-palmar you developed this using ROS2 Foxy right, not Galactic?

Yea that's correct - although I believe it shouldn't make a difference

keyonjerome commented 1 year ago

@Nick-palmar I'm wondering if the OpenCV version provided by ros-perception-vision-opencv is different between Foxy and Galactic. Also, how did you install OpenCV on your system? I remember you had to something funky, can you describe it? It's weird that ros-perception-vision-opencv pulls in OpenCV properly for AMD64, but not for the ARM64 build. Since the Jetson is ARM64, if we don't fix this issue here I doubt it'll build on the Jetson either.

keyonjerome commented 1 year ago

I don't really care about the ament-flake8 lint checks that are failing on the AMD64 build, it's ridiculous that we have to waste time autoformatting Python code in the first place instead of using something like black like we have ament-clang-format --reformat for the C++ files.

nico-palmar commented 1 year ago

I don't really care about the ament-flake8 lint checks that are failing on the AMD64 build, it's ridiculous that we have to waste time autoformatting Python code in the first place instead of using something like black like we have ament-clang-format --reformat for the C++ files.

Yea ok sounds good - I did that already for this branch

nico-palmar commented 1 year ago

@Nick-palmar I'm wondering if the OpenCV version provided by ros-perception-vision-opencv is different between Foxy and Galactic. Also, how did you install OpenCV on your system? I remember you had to something funky, can you describe it? It's weird that ros-perception-vision-opencv pulls in OpenCV properly for AMD64, but not for the ARM64 build. Since the Jetson is ARM64, if we don't fix this issue here I doubt it'll build on the Jetson either.

Well it was more my cuda version and nvidia driver version that I had to mess around with a bunch. I forget what exactly I did for opencv so maybe it wasn't too crazy. Any thoughts on what to do?