def run(self):
# check that model Keras version is same as local Keras version
f = h5py.File('/home/wil/ros/catkin_ws/src/diy_driverless_car_ROS/rover_ml/behavior_cloning/src/behavior_cloning/model.h5', mode='r')
model_version = f.attrs.get('keras_version')
keras_version = None
keras_version = str(keras_version).encode('utf8')
if model_version != keras_version:
print('You are using Keras version ', keras_version, ', but the model was built using ', model_version)
model = load_model('/home/wil/ros/catkin_ws/src/diy_driverless_car_ROS/rover_ml/behavior_cloning/src/behavior_cloning/model.h5')
print("Model loaded.")
while True:
# Only run loop if we have an image
if self.imgRcvd:
# step 1:
self.resized_image = cv2.resize(self.latestImage, (320,180))
# step 2:
image_array = np.asarray(self.resized_image)
# step 3:
self.cmdvel.linear.x = 0.2
self.cmdvel.angular.z = float(model.predict(image_array[None, :, :, :], batch_size=1))
#print(self.cmdvel.angular.z)
self.cmdVel_publish(self.cmdvel)
# Publish Processed Image
self.outputImage = self.latestImage
self.publish(self.outputImage, self.bridge, self.image_pub)
评论列表
文章目录