rpi-urban-mobility-tracker icon indicating copy to clipboard operation
rpi-urban-mobility-tracker copied to clipboard

umt won't work

Open aweussom opened this issue 3 years ago • 9 comments

I followed the instructions at https://github.com/nathanrooy/rpi-urban-mobility-tracker

I'm getting this error: (The first three lines as apparently just noise)

root@674b2ef1ec82:~# umt -video highway_01.mp4 WARNING:root:Limited tf.compat.v2.summary API due to missing TensorBoard installation. WARNING:root:Limited tf.compat.v2.summary API due to missing TensorBoard installation. WARNING:root:Limited tf.compat.v2.summary API due to missing TensorBoard installation. WARNING:root:Limited tf.summary API due to missing TensorBoard installation. Traceback (most recent call last): File "/usr/local/bin/umt", line 5, in from umt.umt_main import main File "/usr/local/lib/python3.7/dist-packages/umt/umt_main.py", line 15, in from umt.umt_utils import parse_label_map File "/usr/local/lib/python3.7/dist-packages/umt/umt_utils.py", line 26, in encoder = gd.create_box_encoder(w_path, batch_size=1) File "/usr/local/lib/python3.7/dist-packages/deep_sort_tools/generate_detections.py", line 123, in create_box_encoder image_encoder = ImageEncoder(model_filename, input_name, output_name) File "/usr/local/lib/python3.7/dist-packages/deep_sort_tools/generate_detections.py", line 97, in init f"net/{input_name}:0") File "/usr/local/lib/python3.7/dist-packages/tensorflow/python/framework/ops.py", line 3902, in get_tensor_by_name return self.as_graph_element(name, allow_tensor=True, allow_operation=False) File "/usr/local/lib/python3.7/dist-packages/tensorflow/python/framework/ops.py", line 3726, in as_graph_element return self._as_graph_element_locked(obj, allow_tensor, allow_operation) File "/usr/local/lib/python3.7/dist-packages/tensorflow/python/framework/ops.py", line 3768, in _as_graph_element_locked "graph." % (repr(name), repr(op_name))) KeyError: "The name 'net/images:0' refers to a Tensor which does not exist. The operation, 'net/images', does not exist in the graph."

Coral USB is working in the host os:

[40332.332886] usb 2-2: New USB device strings: Mfr=0, Product=0, SerialNumber=0

pi@pifem:~/coral/tflite/python/examples/classification $ python3 classify_image.py --model models/mobilenet_v2_1.0_224_inat_bird_quant_edgetpu.tflite --labels models/inat_bird_labels.txt --input images/parrot.jpg ----INFERENCE TIME---- Note: The first inference on Edge TPU is slow because it includes loading the model into Edge TPU memory. 17.4ms 4.4ms 4.4ms 4.4ms 4.4ms -------RESULTS-------- Ara macao (Scarlet Macaw): 0.77734

aweussom avatar Sep 19 '21 20:09 aweussom

Exactly the same problem in Ubuntu as in Raspberry PI OS/Docker.

aweussom avatar Sep 20 '21 05:09 aweussom

I confirm, I have the same problem.

paulbozans avatar Oct 08 '21 08:10 paulbozans

First you need to locate where your Python packages were installed, then in "deep_sort_tools/generate_detections.py" you need to change these two lines from :

self.input_var = tf.compat.v1.get_default_graph().get_tensor_by_name(
     f"net/{input_name}:0")
self.output_var = tf.compat.v1.get_default_graph().get_tensor_by_name(
     f"net/{output_name}:0")

to this:

self.input_var = tf.compat.v1.get_default_graph().get_tensor_by_name(
     f"{input_name}:0")
self.output_var = tf.compat.v1.get_default_graph().get_tensor_by_name(
     f"{output_name}:0")

Gazuru avatar Nov 10 '21 20:11 Gazuru

This is referred to the ubuntu installation I would assume, right? By making this change has everything worked correctly afterwards?

First you need to locate where your Python packages were installed, then in "deep_sort_tools/generate_detections.py" you need to change these two lines from :

self.input_var = tf.compat.v1.get_default_graph().get_tensor_by_name(
     f"net/{input_name}:0")
self.output_var = tf.compat.v1.get_default_graph().get_tensor_by_name(
     f"net/{output_name}:0")

to this:

self.input_var = tf.compat.v1.get_default_graph().get_tensor_by_name(
     f"{input_name}:0")
self.output_var = tf.compat.v1.get_default_graph().get_tensor_by_name(
     f"{output_name}:0")

senker avatar May 23 '22 14:05 senker

This is referred to the ubuntu installation I would assume, right? By making this change has everything worked correctly afterwards?

First you need to locate where your Python packages were installed, then in "deep_sort_tools/generate_detections.py" you need to change these two lines from :

self.input_var = tf.compat.v1.get_default_graph().get_tensor_by_name(
     f"net/{input_name}:0")
self.output_var = tf.compat.v1.get_default_graph().get_tensor_by_name(
     f"net/{output_name}:0")

to this:

self.input_var = tf.compat.v1.get_default_graph().get_tensor_by_name(
     f"{input_name}:0")h

This is on Ubuntu also - however - the latest UMT code from GitHub have fixed this.

I have a NEW issue, bit I will create another thread for that :-)

aweussom avatar May 24 '22 14:05 aweussom

These two erranous lines are still there in the docker install.

aweussom avatar May 24 '22 14:05 aweussom

This is referred to the ubuntu installation I would assume, right? By making this change has everything worked correctly afterwards?

First you need to locate where your Python packages were installed, then in "deep_sort_tools/generate_detections.py" you need to change these two lines from :

self.input_var = tf.compat.v1.get_default_graph().get_tensor_by_name(
     f"net/{input_name}:0")
self.output_var = tf.compat.v1.get_default_graph().get_tensor_by_name(
     f"net/{output_name}:0")

to this:

self.input_var = tf.compat.v1.get_default_graph().get_tensor_by_name(
     f"{input_name}:0")
self.output_var = tf.compat.v1.get_default_graph().get_tensor_by_name(
     f"{output_name}:0")

This worked for me in RPi OS

xuniluser avatar Oct 09 '23 16:10 xuniluser

In my case, yes.

Get Outlook for Androidhttps://aka.ms/AAb9ysg


From: xuniluser @.> Sent: Monday, October 9, 2023 7:20:25 PM To: nathanrooy/rpi-urban-mobility-tracker @.> Cc: Paul Bozan @.>; Comment @.> Subject: Re: [nathanrooy/rpi-urban-mobility-tracker] umt won't work (#26)

This is referred to the ubuntu installation I would assume, right? By making this change has everything worked correctly afterwards?

First you need to locate where your Python packages were installed, then in "deep_sort_tools/generate_detections.py" you need to change these two lines from :

self.input_var = tf.compat.v1.get_default_graph().get_tensor_by_name( f"net/{input_name}:0") self.output_var = tf.compat.v1.get_default_graph().get_tensor_by_name( f"net/{output_name}:0")

to this:

self.input_var = tf.compat.v1.get_default_graph().get_tensor_by_name( f"{input_name}:0") self.output_var = tf.compat.v1.get_default_graph().get_tensor_by_name( f"{output_name}:0")

This worked for me in RPi OS

— Reply to this email directly, view it on GitHubhttps://github.com/nathanrooy/rpi-urban-mobility-tracker/issues/26#issuecomment-1753307788, or unsubscribehttps://github.com/notifications/unsubscribe-auth/ASFFA6JPMNGHTXCXD2OARKDX6QP4TAVCNFSM5EKWP6U2U5DIOJSWCZC7NNSXTN2JONZXKZKDN5WW2ZLOOQ5TCNZVGMZTANZXHA4A. You are receiving this because you commented.Message ID: @.***>

paulbozans avatar Oct 09 '23 17:10 paulbozans