geowatch.tasks.depth_pcd.model_test module¶
CommandLine
HAS_DVC=1 xdoctest geowatch/tasks/depth_pcd/model_test.py __doc__
Example
>>> # xdoctest: +REQUIRES(env:HAS_DVC)
>>> import numpy as np
>>> import geowatch
>>> import ubelt as ub
>>> from geowatch.tasks.depth_pcd.model import getModel
>>> model = getModel()
>>> expt_dvc_dpath = geowatch.find_dvc_dpath(tags='phase2_expt', hardware='auto')
>>> model.load_weights(expt_dvc_dpath + '/models/depth_pcd/basicModel2.h5')
>>> out = model.predict(np.zeros((1,400,400,3)))
>>> shapes = [o.shape for o in out]
>>> print('shapes = {}'.format(ub.urepr(shapes, nl=1)))
- geowatch.tasks.depth_pcd.model_test.mwe_tensorflow()[source]¶
Small example that tests if tensorflow will raise a DNN error in this env or not.
References
https://www.tensorflow.org/install/pip
Check CuDNN version
!apt-cache policy libcudnn8
- Debugging:
# Try running this example in the minimum pyenv311 env before # installing geowatch docker run
- --gpus all
–volume “$HOME”/.cache/pip:/root/.cache/pip -it pyenv:311 bash
# pip install tensorflow ipython nvidia-cudnn-cu11 pip install tensorflow==”2.12.0” nvidia-cudnn-cu11==8.6.0.163
- python -c “if 1:
import tensorflow as tf print(tf.config.list_physical_devices()) from tensorflow.keras.models import Model conv = tf.keras.models.Sequential([
tf.keras.layers.Conv2D(64, (3, 3), activation=’relu’, input_shape=(28, 28, 1)),
]) i = tf.keras.Input([28, 28, 1], batch_size=1) out = conv(i) model = Model(inputs=i, outputs=[out]) import numpy as np model.predict(np.zeros((1, 28, 28, 1)))
“