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

umt won't work #26

Open
aweussom opened this issue Sep 19, 2021 · 9 comments
Open

umt won't work #26

aweussom opened this issue Sep 19, 2021 · 9 comments

Comments

@aweussom
Copy link

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
Copy link
Author

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

@paulbozans
Copy link

I confirm, I have the same problem.

@Gazuru
Copy link

Gazuru commented Nov 10, 2021

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
Copy link

senker commented May 23, 2022

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")

@aweussom
Copy link
Author

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
Copy link
Author

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

@xuniluser
Copy link

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

@paulbozans
Copy link

paulbozans commented Oct 9, 2023 via email

@jacksonalanhenry
Copy link

the deep_sort repo updated the version number from v1.2.0 to v1.3.0 and added the net for weighting in this commit
I'm going to submit a pull request on the Dockerfile so that this problem won't happen for other folks just looking to use the Dockerfile.

For tracking though, you can change this line:

RUN pip3 install git+https://github.com/mk-michal/deep_sort

to

RUN pip3 install git+https://github.com/mk-michal/[email protected]

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

6 participants