Thank you @Morganh !
I had to step away for some medical reasons, but I’m back to trying to figure this out.
I notice that this spec file is designed for the .tlt version of trafficcamnet. That seems to imply that its for version 1.0.0.
Is it possible to evaluate the etlt versions? (like the pruned_v1.0.3 which is an etlt or the pruned_onnx_v1.0.4 which is an onnx)
I did try this spec file with the unpruned_v1.0 which is resnet18_trafficcamnet.tlt, but I got the following:
Set variable for the v1.0.0 UNPRUNED TLT model
%env TLT_MODEL_DIR=/workspace/pretrained_models/trafficcamnet_v1.0
# Set variable for the spec file
%env FINAL_SPECS_DIR={os.environ['USER_EXPERIMENT_DIR']}/specs/detectnet_v2_eval_trafficcamnet_kitti_FP16_forum.txt
# Run the evaluation
!tao model detectnet_v2 evaluate \
-e $FINAL_SPECS_DIR \
-m $TLT_MODEL_DIR/resnet18_trafficcamnet.tlt \
-k nvidia_tlt
env: TLT_MODEL_DIR=/workspace/pretrained_models/trafficcamnet_v1.0
env: FINAL_SPECS_DIR=/workspace/experiments/eval_stock_trafficcamnet/specs/detectnet_v2_eval_trafficcamnet_kitti_FP16_forum.txt
2025-09-16 11:59:34,110 [TAO Toolkit] [INFO] root 160: Registry: ['nvcr.io']
2025-09-16 11:59:34,262 [TAO Toolkit] [INFO] nvidia_tao_cli.components.instance_handler.local_instance 360: Running command in container: nvcr.io/nvidia/tao/tao-toolkit:5.0.0-tf1.15.5
2025-09-16 11:59:34,344 [TAO Toolkit] [INFO] nvidia_tao_cli.components.docker_handler.docker_handler 301: Printing tty value True
2025-09-16 18:59:35.222087: I tensorflow/stream_executor/platform/default/dso_loader.cc:50] Successfully opened dynamic library libcudart.so.12
2025-09-16 18:59:35,274 [TAO Toolkit] [WARNING] tensorflow 40: Deprecation warnings have been disabled. Set TF_ENABLE_DEPRECATION_WARNINGS=1 to re-enable them.
Using TensorFlow backend.
2025-09-16 18:59:36,714 [TAO Toolkit] [WARNING] tensorflow 43: TensorFlow will not use sklearn by default. This improves performance in some cases. To enable sklearn export the environment variable TF_ALLOW_IOLIBS=1.
2025-09-16 18:59:36,747 [TAO Toolkit] [WARNING] tensorflow 42: TensorFlow will not use Dask by default. This improves performance in some cases. To enable Dask export the environment variable TF_ALLOW_IOLIBS=1.
2025-09-16 18:59:36,752 [TAO Toolkit] [WARNING] tensorflow 43: TensorFlow will not use Pandas by default. This improves performance in some cases. To enable Pandas export the environment variable TF_ALLOW_IOLIBS=1.
2025-09-16 18:59:38,228 [TAO Toolkit] [WARNING] matplotlib 500: Matplotlib created a temporary config/cache directory at /tmp/matplotlib-aa_2yb84 because the default path (/.config/matplotlib) is not a writable directory; it is highly recommended to set the MPLCONFIGDIR environment variable to a writable directory, in particular to speed up the import of Matplotlib and to better support multiprocessing.
2025-09-16 18:59:38,439 [TAO Toolkit] [INFO] matplotlib.font_manager 1633: generated new fontManager
WARNING:tensorflow:Deprecation warnings have been disabled. Set TF_ENABLE_DEPRECATION_WARNINGS=1 to re-enable them.
Using TensorFlow backend.
WARNING:tensorflow:TensorFlow will not use sklearn by default. This improves performance in some cases. To enable sklearn export the environment variable TF_ALLOW_IOLIBS=1.
2025-09-16 18:59:40,283 [TAO Toolkit] [WARNING] tensorflow 43: TensorFlow will not use sklearn by default. This improves performance in some cases. To enable sklearn export the environment variable TF_ALLOW_IOLIBS=1.
WARNING:tensorflow:TensorFlow will not use Dask by default. This improves performance in some cases. To enable Dask export the environment variable TF_ALLOW_IOLIBS=1.
2025-09-16 18:59:40,331 [TAO Toolkit] [WARNING] tensorflow 42: TensorFlow will not use Dask by default. This improves performance in some cases. To enable Dask export the environment variable TF_ALLOW_IOLIBS=1.
WARNING:tensorflow:TensorFlow will not use Pandas by default. This improves performance in some cases. To enable Pandas export the environment variable TF_ALLOW_IOLIBS=1.
2025-09-16 18:59:40,337 [TAO Toolkit] [WARNING] tensorflow 43: TensorFlow will not use Pandas by default. This improves performance in some cases. To enable Pandas export the environment variable TF_ALLOW_IOLIBS=1.
2025-09-16 18:59:41,217 [TAO Toolkit] [INFO] nvidia_tao_tf1.cv.detectnet_v2.spec_handler.spec_loader 113: Merging specification from /workspace/experiments/eval_stock_trafficcamnet/specs/detectnet_v2_eval_trafficcamnet_kitti_FP16_forum.txt
Traceback (most recent call last):
File "/usr/local/lib/python3.8/dist-packages/nvidia_tao_tf1/cv/detectnet_v2/scripts/evaluate.py", line 253, in <module>
raise e
File "/usr/local/lib/python3.8/dist-packages/nvidia_tao_tf1/cv/detectnet_v2/scripts/evaluate.py", line 223, in <module>
main()
File "/usr/local/lib/python3.8/dist-packages/decorator.py", line 232, in fun
return caller(func, *(extras + args), **kw)
File "/usr/local/lib/python3.8/dist-packages/nvidia_tao_tf1/cv/detectnet_v2/utilities/timer.py", line 46, in wrapped_fn
return_args = fn(*args, **kwargs)
File "/usr/local/lib/python3.8/dist-packages/nvidia_tao_tf1/cv/detectnet_v2/scripts/evaluate.py", line 183, in main
experiment_spec = load_experiment_spec(
File "/usr/local/lib/python3.8/dist-packages/nvidia_tao_tf1/cv/detectnet_v2/spec_handler/spec_loader.py", line 136, in load_experiment_spec
experiment_spec = load_proto(spec_path, experiment_spec, default_spec_path,
File "/usr/local/lib/python3.8/dist-packages/nvidia_tao_tf1/cv/detectnet_v2/spec_handler/spec_loader.py", line 114, in load_proto
_load_from_file(spec_path, proto_buffer)
File "/usr/local/lib/python3.8/dist-packages/nvidia_tao_tf1/cv/detectnet_v2/spec_handler/spec_loader.py", line 100, in _load_from_file
merge_text_proto(f.read(), pb2)
File "/usr/local/lib/python3.8/dist-packages/google/protobuf/text_format.py", line 719, in Merge
return MergeLines(
File "/usr/local/lib/python3.8/dist-packages/google/protobuf/text_format.py", line 793, in MergeLines
return parser.MergeLines(lines, message)
File "/usr/local/lib/python3.8/dist-packages/google/protobuf/text_format.py", line 818, in MergeLines
self._ParseOrMerge(lines, message)
File "/usr/local/lib/python3.8/dist-packages/google/protobuf/text_format.py", line 837, in _ParseOrMerge
self._MergeField(tokenizer, message)
File "/usr/local/lib/python3.8/dist-packages/google/protobuf/text_format.py", line 967, in _MergeField
merger(tokenizer, message, field)
File "/usr/local/lib/python3.8/dist-packages/google/protobuf/text_format.py", line 1042, in _MergeMessageField
self._MergeField(tokenizer, sub_message)
File "/usr/local/lib/python3.8/dist-packages/google/protobuf/text_format.py", line 910, in _MergeField
name = tokenizer.ConsumeIdentifierOrNumber()
File "/usr/local/lib/python3.8/dist-packages/google/protobuf/text_format.py", line 1379, in ConsumeIdentifierOrNumber
raise self.ParseError('Expected identifier or number, got %s.' % result)
google.protobuf.text_format.ParseError: 98:1 : '//load_graph: True': Expected identifier or number, got /.
Telemetry data couldn't be sent, but the command ran successfully.
[WARNING]: HTTPSConnectionPool(host='telemetry.metropolis.nvidia.com', port=443): Max retries exceeded with url: /api/v1/telemetry (Caused by SSLError(SSLCertVerificationError(1, '[SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed: certificate has expired (_ssl.c:1131)')))
Execution status: FAIL
2025-09-16 11:59:43,003 [TAO Toolkit] [INFO] nvidia_tao_cli.components.docker_handler.docker_handler 363: Stopping container.
Also on that note, should I be running tao deploy or tao model for the detectnet_v2 evaluate command?
Thank you for your patient advice!
H