def decide(self, img_arr):
if config.camera.crop_top or config.camera.crop_bottom:
h, w, _ = img_arr.shape
t = config.camera.crop_top
l = h - config.camera.crop_bottom
img_arr = img_arr[t:l, :]
img_arr = np.interp(img_arr, config.camera.output_range,
config.model.input_range)
img_arr = np.expand_dims(img_arr, axis=0)
prediction = self.model.predict(img_arr)
if len(prediction) == 2:
yaw = methods.angle_to_yaw(prediction[0][0])
throttle = prediction[1][0]
else:
yaw = methods.angle_to_yaw(prediction[0][0])
throttle = 0
avf = config.model.yaw_average_factor
yaw = avf * self.yaw + (1.0 - avf) * yaw
self.yaw = yaw
return methods.yaw_to_angle(yaw), throttle
评论列表
文章目录