Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

How to use your best weights #9

Open
Yingxiu-Chang opened this issue Jan 28, 2021 · 0 comments
Open

How to use your best weights #9

Yingxiu-Chang opened this issue Jan 28, 2021 · 0 comments

Comments

@Yingxiu-Chang
Copy link

@DP8 Hi,
I'm reading your work, "DroNet Learning to Fly by Driving" and "An Open Source and Open Hardware Deep Learning-powered Visual Navigation Engine". I was inspired that you use DroNet to fly nano UAV in the lab environments. But I still meet some questions.
I was using the following code to predict a single image. The model and the best weights I used was from https://github.com/uzh-rpg/rpg_public_dronet. In addition, I tested the single image from your Himax_Dataset-master/test_2/frame_26.pgm.
It's really good to test the outdoor images, but hard to get the correct results for indoor sceneries.
I was using the keras to construct the model, so I can't use your hex weights from your pulp-dronet/weights/binary/.
So may I know how you trained your DroNet for the pulp-dronet.
Did you use keras or any other dependencies and packages?
Or if you can provide the best weights of pulp-dronet which you originally generated .hex files like h5py or so forth?

from PIL import Image
import utils
import numpy as np
import cv2


model = utils.jsonToModel("model/model_struct.json")
model.load_weights("model/best_weights.h5")
model.summary()


def central_image_crop(img, crop_width=150, crop_heigth=150):

    half_the_width = int(img.shape[1] / 2)
    img = img[img.shape[0] - crop_heigth: img.shape[0],
          half_the_width - int(crop_width / 2):
          half_the_width + int(crop_width / 2)]
    return img


def read_img():
    img = np.array(Image.open("./model/Himax_Dataset-master/test_2/frame_26.pgm"))  
    cv2.imshow('', img)
    cv2.waitKey(0)
    img_central = central_image_crop(img, 200, 200) 
    img_01 = np.asarray(img_central, dtype=np.float32) * np.float32(1.0/255.0) 
    img_3d = np.expand_dims(img_01, axis=0)  
    im_4d = img_3d[:, :, :, np.newaxis]    
    return im_4d



im = read_img()    
outs = model.predict([im])
steer, coll = outs[0][0], outs[1][0]
print("Steer angle= ", steer)
print("Collision prob= ", coll)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant