来源Webots 视觉跟踪示例github
我改了点,写个备份免得以后忘了
from controller import Robot
import cv2
import numpy as np
def get_image_from_camera(webots_camera):
"""
Take an image from the camera device and prepare it for OpenCV processing:
- convert data type,
- convert to RGB format (from BGRA), and
- rotate & flip to match the actual image.
"""
img = webots_camera.getImageArray()
img = np.asarray(img, dtype=np.uint8)
img = cv2.cvtColor(img, cv2.COLOR_BGRA2RGB)
img = cv2.rotate(img, cv2.ROTATE_90_CLOCKWISE) #用于旋转,看你webot的视角了
return cv2.flip(img, 1) # 最后又进行了翻转
#初始化你定义的设备
camera_left = robot.getDevice('CameraLeft')
camera_left.enable(timestep)
while robot.step(timestep) != -1:
left_img = get_image_from_camera(camera_left)
cv2.imshow("lena", left_img)
cv2.waitKey(100)