Poppy Camera Programming

Hello, maybe you can help me … how can I best connect my Poppy to my camera and how do I get my camera to recognize objects. We use Raspi4 and Python for programming.
Our task is to recognize objects with the poppy and the poppy should point to the object.

We work with the Poppy Humanouid

Hi @Sbang,

Your question looks like a student project and is too broad to receive a good answer.
However here are a few steps to get you started:

  1. First make a Python program NOT using the robot but just a camera image to “recognize the object”. Depending what your object is, you may want to use openCV’s contour detection in HSV or any other existing feature from openCV.
  2. Then, you get then a 2D coordinate of your object inside the frame of the camera but the robot needs 3D coordinates. Make a few tests with objects placed near the 4 borders to scale: a simple factor multiplication determined experimentally may work well!
  3. Call the Inverse Kinematics using IKPy embedded into Pypot: poppy.l_arm_chain.goto(...) to target the 3D location and point the effector/camera or anything you want towards it (make vectors colinear)
  4. If precision matters, you may use various techniques of camera extrinsic calibration, e.g. extrinsic_calibration - ROS Wiki