Warning
This page is located in archive.

Camera

For the perception, we use Camera Chameleon, a digital USB 2.0 camera Chameleon manufactured by PointGrey.

Camera Control (Python)

From Python, the library used for the communication with the camera is PyCapture2. Here is an example of camera usage in Python:

import PyCapture2
import cv2
import numpy as np
 
# Initialize bus and camera
bus = PyCapture2.BusManager()
camera = PyCapture2.Camera()
 
# Select first camera on the bus
camera.connect(bus.getCameraFromIndex(0))
 
# Start capture
camera.startCapture()
 
while True:
  # Retrieve image from camara in PyCapture2.Image format
  image = camera.retrieveBuffer()
 
  # Convert from MONO8 to RGB8
  image = image.convert(PyCapture2.PIXEL_FORMAT.RGB8)
 
  # Convert image to Numpy array
  rgb_cv_image = np.array(image.getData(), dtype="uint8").reshape((image.getRows(), image.getCols(), 3));
 
  # Convert RGB image to BGR image to be shown by OpenCV
  bgr_cv_image = cv2.cvtColor(rgb_cv_image, cv2.COLOR_RGB2BGR)
 
  # Show image
  cv2.imshow('frame',bgr_cv_image)
 
  # Wait for key press, stop if the key is q
  if cv2.waitKey(1) & 0xFF == ord('q'):
    break

More documentation about PyCapture2 can be found with this command:

evince /opt/salt-install/PyCapture2-2.13.31/docs/PyCapture2doc.pdf

Camera control (ROS)

Driver documentation: pointgray_camera_driver

Start camera driver nodes:

# Assuming that the B3B33ROB ROS environment was properly sourced, i.e. :
source /opt/ros/b3b33rob
 
# just camera driver
roslaunch b3b33rob_ros camera.launch
 
# or camera with robot
roslaunch b3b33rob_ros start_rv6sdl.launch camera:=true
roslaunch b3b33rob_ros start_rv6s.launch camera:=true
roslaunch b3b33rob_ros start_fake_rv6sdl.launch camera:=true
roslaunch b3b33rob_ros start_fake_rv6sdl.launch camera:=true

Display camera stream:

rosrun image_view image_view image:=/camera/image_color

Parameter Settings (flycap2)

In order to configure the camera use the FlyCap2 utility. In terminal run:

flycap2

courses/b3b33rob1/final_project/camera.txt · Last modified: 2023/10/27 15:08 by petrivl3