- 18 Mar 2024
- 5 Minutes to read
- Print
- DarkLight
- PDF
How to blur sensitive information in datasets captured with System Software 2.13.1 and below
- Updated on 18 Mar 2024
- 5 Minutes to read
- Print
- DarkLight
- PDF
Introduction
Purpose
This document describes how to blur sensitive information for Datasets that were captured with NavVis System Software 2.13.1. and below, since those dataset cannot be blurred via the person blurring feature that the Cloud Processing offers.
Scope
This article is applicable to datasets that have been captured with NavVis devices with NavVis System Software 2.13.1. and below.
Pre-requisites
In order to perform the procedure described below the following pre-requisites must be met
Access to the respective dataset (.nvd).
Basic computer skills in order to run some Python scripts.
A 3rd-party image editing tool which allows to blur the sensitive information inside of the panoramic images.
Procedure
1 Extract the .nvd file where you would like to blur sensitive information inside the panoramic images
Keep a copy of the .nvd file that you plan to work on, you want to store it as a backup in case something goes wrong!
Rename the file ending of the .nvd file and change the file ending to .zip
Now extract the .zip file in order to access the content inside
2 Locate the panoramic images folder
Within a NavVis dataset (.nvd file) the panoramic images are stored under this path: /pano/tiles/
. They are, however, stored as tiled imagery in four different resolutions for the RGB image. Each RGB image is tiled up into 32 tiles (8 horizontal, 4 vertical).
The tiled imagery is present in four different resolutions:
r0: Lowest resolution
r1: Better resolution
r2: Even better resolution
r3: Best resolution
In order to be able to blur sensitive information within the panoramic images we must fuse the individual tiles for each panoramic image together. To do that we will run a custom Python script as explained in the next step.
3 Generate full panoramic images
The following Python script can be run on any of the folders containing the tiled imagery. The script takes the tiled imagery and concatenates the 32 tiles for each individual panoramic image into one large image. The output is then written into a new folder with the name full-panos.
Dependencies
The script relies on the Python Imaging Library to do the image processing. Hence the following dependencies must be installed beforehand in order to run the script:
Pillow
In order to install the package using PyPi run the following command:
pip install Pillo
Script usage
Use following the procedure to use the script:
Unzip the .nvd (.bundle) file in order to get access to the /pano folder if you haven?t already.
Locate the tiled image folders (r0, r1, r2, r3) by directing to the following folder path /pano/tiles.
In order to work with the best resolution available we will choose the subfolder “r3” which stores the panoramic images in the highest resolution.
Copy the whole folder “r3” to your Desktop (or wherever you like).
Run the script for the whole folder by entering the following command.
python Generate_panos.py /path/to/folder
“/path/to/folder” represents the path of the respective tile image folder, e.g. /Desktop/r3
Result
A new folder called full-panos is created within the directory which was passed when running the script. The folder contains all the panoramic images that were captured during the scan.
4 Blur the sensitive information within the panoramic images
We can now start to blur the sensitive information within the panoramic images. This can be sensitive data (e.g. license plates, concepts written on a chalkboard) or people passing by when the scan was conducted.
Select an image editing software of your choice to perform the blurring of the images. Here are some potential examples (this list is non-exclusive).
Adobe Photoshop
GIMP
Online photo editors
When saving the image that was edited ensure that the format, resolution and the color channels are not changed or altered. The metadata for the images should also not be changed or overwritten.
Once you have edited all the panoramic images we can start to tile them once again in order to be consumed by NavVis IVION.
5 (Re-)Tile the panoramic images
In order to tile your panoramic images again we make use of another Python script. This script takes images from an input folder, splits them into smaller tiles, and saves those tiles in a directory structure within an output folder. The script can be found attached.
Dependencies
The script relies on the Python Imaging Library to do the image processing. Hence the following dependencies must be installed beforehand in order to run the script:
Pillow
In order to install the package using PyPi run the following command:
pip install Pillow
Script Usage
Follow the instructions below to use the script:
Locate the folder with the panoramic images that you blurred in step 2.3 of this How-to.
Run the script for the whole folder by entering the following command.
python Generate_tiles.py /path/to/folder
“/path/to/folder” hereby represents the path of the folder containing your blurred panoramic images in full resolution.
Result
The script will create an output directory structure in the input folder with the name tiles, with subdirectories for different scales of the image (r0, r1, r2, r3) and a "0" subdirectory for tiles. You can find the tiles in the respective subdirectories.
6 Replace the old tiled imagery with the new (blurred) version of the tiles imagery
In order to replace the old (non-blurred) panoramic tiles with the new blurred ones follow the steps below:
Delete the ?old? tiled image folder with the name tiles which is found under /pano/
Copy the tiles folder which was generated in step 2.4 into the folder path /pano, doing so will ensure that the tiled blurred imagery is replaced with your edited imagery in the original dataset.
7 Zip the dataset folder and create the .nvd file
Perform the following steps to reverse the steps from 2.1 and zip the dataset folder.
Zip the whole dataset folder.
Rename the file ending of the .zip file and change the file ending to .nvd in order to ensure that the dataset can be uploaded to NavVis IVION. Make sure the file type is indeed saved as .nvd
Upload your .nvd file to NavVis IVION and ensure that all panoramic images are loaded and show the blurred imagery, if this works you may replace the existing dataset with the new one you just created.