Hi. I am trying to use detectnet_v2 resnet18 pre-trained model with TLT. The notebook has so far given reasonable results, given I haven’t really tried to configure very much. It’s an experiment with 3 lego vehicles on a table.
The dataset is small, as I’m trying to get everything working before investing a lot of time on creating a larger dataset. Currently I have 70 training images and 6 testing images.
Training, based on resnet18_detector gave good results. Pruning and retraining ran without incident.
Validation cost: 0.000396
Mean average_precision (in %): 70.6779
class name average precision (in %)
bus 77.4306
followme 45.7143
police 88.8889
The problem came when I tried to run tlt-infer.
Running inference for detection on n images
!tlt-infer detectnet_v2 -e $SPECS_DIR/detectnet_v2_inference_kitti_tlt_lego.txt
-o $USER_EXPERIMENT_DIR/tlt_infer_testing
-i $DATA_DOWNLOAD_DIR/testing/image_2
-k $KEY
Any/all help would be greatly appreciated. Apologies in advanced if insufficient information has been given. Below is the result of the tlt-infer command.
Using TensorFlow backend.
2020-06-29 11:31:29,590 [INFO] iva.detectnet_v2.scripts.inference: Creating output inference directory
2020-06-29 11:31:29,590 [INFO] iva.detectnet_v2.scripts.inference: Overlain images will be saved in the output path.
2020-06-29 11:31:29,591 [INFO] iva.detectnet_v2.inferencer.build_inferencer: Constructing inferencer
2020-06-29 11:31:29,887 [INFO] iva.detectnet_v2.inferencer.tlt_inferencer: Loading model from /workspace/tlt-experiments/detectnet_v2/experiment_dir_retrain/weights/resnet18_detector_pruned.tlt:
Layer (type) Output Shape Param #
input_1 (InputLayer) (None, 3, 544, 1408) 0
model_1 (Model) [(None, 3, 34, 88), (None 11203023
Total params: 11,203,023
Trainable params: 11,193,295
Non-trainable params: 9,728
2020-06-29 11:31:32,852 [INFO] iva.detectnet_v2.scripts.inference: Initialized model
2020-06-29 11:31:32,852 [INFO] iva.detectnet_v2.scripts.inference: Commencing inference
0%| | 0/2 [00:00<?, ?it/s]Process PoolWorker-1:
Traceback (most recent call last):
File “/usr/lib/python2.7/multiprocessing/process.py”, line 258, in _bootstrap
self.run()
File “/usr/lib/python2.7/multiprocessing/process.py”, line 114, in run
self._target(*self._args, **self._kwargs)
File “/usr/lib/python2.7/multiprocessing/pool.py”, line 102, in worker
task = get()
File “/usr/lib/python2.7/multiprocessing/queues.py”, line 378, in get
return recv()
TypeError: new() takes exactly 4 arguments (2 given)
Process PoolWorker-2:
Traceback (most recent call last):
File “/usr/lib/python2.7/multiprocessing/process.py”, line 258, in _bootstrap
self.run()
File “/usr/lib/python2.7/multiprocessing/process.py”, line 114, in run
self._target(*self._args, **self._kwargs)
File “/usr/lib/python2.7/multiprocessing/pool.py”, line 102, in worker
task = get()
File “/usr/lib/python2.7/multiprocessing/queues.py”, line 378, in get
return recv()
TypeError: new() takes exactly 4 arguments (2 given)
Process PoolWorker-3:
Traceback (most recent call last):
File “/usr/lib/python2.7/multiprocessing/process.py”, line 258, in _bootstrap
self.run()
File “/usr/lib/python2.7/multiprocessing/process.py”, line 114, in run
self._target(*self._args, **self._kwargs)
File “/usr/lib/python2.7/multiprocessing/pool.py”, line 102, in worker
task = get()
File “/usr/lib/python2.7/multiprocessing/queues.py”, line 378, in get
return recv()
TypeError: new() takes exactly 4 arguments (2 given)
Process PoolWorker-4:
Traceback (most recent call last):
File “/usr/lib/python2.7/multiprocessing/process.py”, line 258, in _bootstrap
self.run()
File “/usr/lib/python2.7/multiprocessing/process.py”, line 114, in run
self._target(*self._args, **self._kwargs)
File “/usr/lib/python2.7/multiprocessing/pool.py”, line 102, in worker
task = get()
File “/usr/lib/python2.7/multiprocessing/queues.py”, line 378, in get
return recv()
TypeError: new() takes exactly 4 arguments (2 given)