electrician
electrician

Reputation: 1

Tensorflow to Arduino

I want to send data python to arduino. Actually, I can send it with another code. Communication is not a problem for me. I trained a model for two signs (on and off). When I show on sign, led will open, and when I show off-sign, led will off. But my problem is I cant call signs and send data. How can I call signs in code? Is anybody know that? off sign

My code:

while True: 
    
    ret, frame = cap.read()
    frame = cv2.flip(frame, 1)
    image_np = np.array(frame)
    input_tensor = tf.convert_to_tensor(np.expand_dims(image_np, 0), dtype=tf.float32)
    detections = detect_fn(input_tensor)
    
    num_detections = int(detections.pop('num_detections'))
    detections = {key: value[0, :num_detections].numpy()
                  for key, value in detections.items()}
    detections['num_detections'] = num_detections

    # detection_classes should be ints.
    detections['detection_classes'] = detections['detection_classes'].astype(np.int64)

    label_id_offset = 1
    image_np_with_detections = image_np.copy()
    
    viz_utils.visualize_boxes_and_labels_on_image_array(
                image_np_with_detections,
                detections['detection_boxes'],
                detections['detection_classes']+label_id_offset,
                detections['detection_scores'],
                category_index,
                use_normalized_coordinates=True,
                max_boxes_to_draw=1,
                min_score_thresh=.5,
                agnostic_mode=False)   
   

    cv2.imshow('object detection',  cv2.resize(image_np_with_detections, (800, 600)))
                
    if cv2.waitKey(1) & 0xFF == ord('q'):
        cap.release()
        cv2.destroyAllWindows()
        ArduinoSerial.close() 
        break

Upvotes: 0

Views: 170

Answers (1)

Gunnar Bjorkman
Gunnar Bjorkman

Reputation: 41

If you're trying to get python code to control an Arduino a simple way may be over serial. I found a pretty good discussion about it here they talk about needing PySerial so be prepared to need to install at least an extra library.

You can send what ever you want to the Arduino (via serial) and when the Arduino receives serial data it can simply toggle the led on its end.

Upvotes: 1

Related Questions