We are excited to announce many new features and improvements of our HemiStereo NX software! Most importantly it contains a greatly improved version of HemiStereo Viewer with more backend features and much easier configuration. Also, the Jupyter Notebook gets a hardening update with better control over the server password and SSL certificates, and a reduction in user permissions for improved security. Finally, we also include several smaller improvements on most of our system components – things you ideally will not recognize at first glance but will make the usage smoother in the long run.
HemiStereo Backend 1.4.2
- add bilateral filter
- output frame metadata (exposure, gain, scene lux, …)
HemiStereo Viewer 1.4.1
- add configuration presets
- show measured distance of the point under the mouse cursor
- unify field of view settings of the target and the matching camera
- allow locking the aspect ratio while changing image resolutions
- reset the camera view of the point cloud display
- add bilateral filter settings
- allow changing the password
- improve security by reducing the permissions of the jupyter user
- allow TLS encrypted communication
How to Update
Please, find the latest version of the HemiStereo Viewer software here. Replace the old software on your host as required. The version of the HemiStereo Viewer must match with the version of the
3dvl-stereo package on the device. So, for the currently released
3dvl-stereo version 1.4.2, use the latest 1.4.x Viewer release from our download page.
On the sensor, the update is performed using the apt package manager. After login, please perform the following steps:
sudo apt update sudo apt upgrade sudo apt update sudo apt upgrade
You might be asked whether you allow the apt sources to be updated to a new path. Please answer yes here. We updated our repository structure, preparing for the upcoming L4T r32.5 release. This is also the reason to perform the update/upgrade cycle twice, just to make sure to grab all the latest versions from the correct repository. During the upgrade process, the following packages will ask you how you want to proceed:
This package contains the
/etc/docker/daemon.json config file. You will be asked if you want to use the package-maintainers (our) version or your currently installed one. If you did not make manual changes to the file, just answer “I” here, and the updated version of the file is placed automatically. Otherwise, you might want to keep it as is (default option), but please make sure to enable the nvidia runtime after the installation in this case:
Configuration file '/etc/docker/daemon.json' ==> File on system created by you or by a script. ==> File also in package provided by package maintainer. What would you like to do about it ? Your options are: Y or I : install the package maintainer's version N or O : keep your currently-installed version D : show the differences between the versions Z : start a shell to examine the situation The default action is to keep your current version. *** daemon.json (Y/I/N/O/D/Z) [default=N] ? Y
Updated only if the
3dvl-jupyter package is pre-installed already. During the package configuration, the installer will prompt for a password for the jupyter application. Please make sure to remember the password – but it is easily changeable later if necessary. Also, the installer asks if you want to create self-signed certificates automatically. For most users, this is recommended.
3dvl-jupyter: first setup, please specify how you would like to proceed: The jupyter notebook allows for remote access on the sensor - this might be a security thread. For your protection, there is the option to secure the communication using ssl and self-signed certificates for connection from remote and a static password for access control set password [yes/no]? yes enter access password: hemistereo re-type password: hemistereo create self-signed certificates [yes/no]? yes the certifiactes will be stored in /var/lib/hemistereo/data/jupyter_notebook/config the certificate will be valid 365 days Can't load /home/hemistereo/.rnd into RNG 548091655808:error:2406F079:random number generator:RAND_load_file:Cannot open file:../crypto/rand/randfile.c:88:Filename=/home/hemistereo/.rnd Generating a RSA private key ...................................................................................++++ ......................++++ writing new private key to '/var/lib/hemistereo/data/jupyter_notebook/config/jupyter.key' ----- !!!! INFO !!!! please run 'hemistereo_app_enable jupyter-notebook' and 'hemistereo_app_start jupyter-notebook' to use the app
During the package configuration, the installer will prompt if it should create self-signed certificates automatically. For most users, this is recommended. Also, the installer asks whether it shall block non-https access to the sensor. Be aware that answering “yes” here, will block the HemiStereo Viewer from accessing the camera images. So for most users and test setups, “no” is the preferred answer for the time being.
3dvl-web-proxy: first setup, please specify how you would like to proceed: The (grpc) web proxy allows for remote data access on the sensor - this might be a privacy thread. For your protection, there is the option to secure the communication using ssl and self-signed certificates for connection from remote. Additionally, there is an option for using static tokens for access control -> package 3dvl-static-token-auth-service Do you want to enforce ssl connections? Answering 'yes' will block http access and only allow https access. create self-signed certificates [yes/no]? yes the certifiactes will be stored in /var/lib/hemistereo/data/traefik/certs the certificate will be valid 365 days Can't load /home/hemistereo/.rnd into RNG 548099667584:error:2406F079:random number generator:RAND_load_file:Cannot open file:../crypto/rand/randfile.c:88:Filename=/home/hemistereo/.rnd Generating a RSA private key ..........................++++ .........................++++ writing new private key to '/var/lib/hemistereo/data/traefik/certs/default.key' ----- block non-https access [yes/no]? no
It has been quiet for a while from our side – which is not due to our lack of engagement but our development towards our upcoming major release: We will soon incorporate the Linux4Tegra r32.5.1 base. However, this will take another few weeks of testing and polishing. So, stay tuned for more!