### Run ADT Quickstart Tutorial Notebook Source: https://facebookresearch.github.io/projectaria_tools/docs/open_datasets/aria_digital_twin_dataset/getting_started This command initiates the ADT quickstart tutorial Jupyter notebook from the projectaria_tools Python virtual environment. It assumes you have already navigated to the sandbox directory where the projectaria_tools codebase is located. Ensure the virtual environment is activated before running this command. ```shell cd $HOME/Documents/projectaria_sandbox jupyter notebook projectaria_tools/projects/AriaDigitalTwinDatasetTools/examples/adt_quickstart_tutorial.ipynb ``` -------------------------------- ### Create Virtual Environment and Install Project Aria Tools Source: https://facebookresearch.github.io/projectaria_tools/docs/data_utilities/getting_started Sets up a Python virtual environment and installs the projectaria_tools package with all extras from PyPI. This ensures a clean environment for the tools and includes all necessary dependencies. ```bash rm -rf $HOME/projectaria_tools_python_env python3 -m venv $HOME/projectaria_tools_python_env source $HOME/projectaria_tools_python_env/bin/activate python3 -m pip install --upgrade pip python3 -m pip install projectaria-tools'[all]' ``` -------------------------------- ### Launch Project Aria Tools Jupyter Notebooks Source: https://facebookresearch.github.io/projectaria_tools/docs/data_utilities/getting_started Commands to navigate to a specified directory and launch Jupyter notebooks for different Project Aria Tools tutorials. These notebooks guide users through accessing and visualizing Aria data. ```bash cd $HOME/Documents/projectaria_sandbox jupyter notebook projectaria_tools/core/examples/dataprovider_quickstart_tutorial.ipynb ``` ```bash cd $HOME/Documents/projectaria_sandbox jupyter notebook projectaria_tools/core/examples/sophus_quickstart_tutorial.ipynb ``` ```bash cd $HOME/Documents/projectaria_sandbox jupyter notebook projectaria_tools/core/examples/mps_quickstart_tutorial.ipynb ``` -------------------------------- ### Install projectaria-tools with Dependencies Source: https://facebookresearch.github.io/projectaria_tools/docs/open_datasets/digital_twin_catalog/digital_twin_catalog_getting_started This snippet shows how to upgrade the pip package installer and then install the 'projectaria-tools' package, including all optional dependencies specified by '[all]'. This is a core step for setting up the DTC tool. ```bash python3 -m pip install --upgrade pip python3 -m pip install projectaria-tools'[all]' ``` -------------------------------- ### Run AEA Quickstart Tutorial Jupyter Notebook Source: https://facebookresearch.github.io/projectaria_tools/docs/open_datasets/aria_everyday_activities_dataset/aea_getting_started This command navigates to a specified directory and launches the 'aea_quickstart_tutorial.ipynb' Jupyter notebook. It assumes you are running this command from within the activated Project Aria Tools Python virtual environment. ```shell cd $HOME/Documents/projectaria_sandbox jupyter notebook projectaria_tools/projects/AriaEverydayActivities/examples/aea_quickstart_tutorial.ipynb ``` -------------------------------- ### Launch ASE Tutorial Jupyter Notebook Source: https://facebookresearch.github.io/projectaria_tools/docs/open_datasets/aria_synthetic_environments_dataset/ase_getting_started This command opens the ASE tutorial notebook in Jupyter. Users can then follow the interactive steps within the notebook to learn how to load and visualize sample ASE data using the installed projectaria_tools. ```shell jupyter notebook projects/AriaSyntheticEnvironment/tutorial/ase_tutorial_notebook.ipynb ``` -------------------------------- ### Create and Activate Python Virtual Environment Source: https://facebookresearch.github.io/projectaria_tools/docs/open_datasets/aria_digital_twin_dataset/getting_started This code snippet demonstrates how to create a new Python virtual environment, activate it, and then install projectaria-tools with all optional dependencies. It first removes an existing environment if present, then creates a new one using Python 3's venv module, and finally activates it. The installation command ensures that all necessary packages for ADT functionality are installed. ```shell rm -rf $HOME/projectaria_tools_python_env python3 -m venv $HOME/projectaria_tools_python_env source $HOME/projectaria_tools_python_env/bin/activate ``` ```shell python3 -m pip install --upgrade pip python3 -m pip install projectaria-tools'[all]' ``` -------------------------------- ### Check Python Version Source: https://facebookresearch.github.io/projectaria_tools/docs/data_utilities/getting_started A command to verify the installed version of Python 3 on the system. This is a prerequisite for installing and running the projectaria_tools package, which requires Python 3.9 or higher. ```bash python3 --version ``` -------------------------------- ### Install Additional Python Packages Source: https://facebookresearch.github.io/projectaria_tools/docs/open_datasets/digital_twin_catalog/digital_twin_catalog_getting_started This snippet installs two crucial Python packages: 'opencv-python' for computer vision tasks and 'trimesh' for handling 3D meshes. These are often required by the projectaria-tools for various functionalities. ```bash python3 -m pip install opencv-python trimesh ``` -------------------------------- ### Set up ASE Local Data Directory and Move Download URLs Source: https://facebookresearch.github.io/projectaria_tools/docs/open_datasets/aria_synthetic_environments_dataset/ase_getting_started This command sequence creates a directory for storing ASE dataset files and moves the dataset download URLs file into it. This prepares the local environment for downloading the sample dataset using the provided tool. ```shell mkdir -p $HOME/Documents/projectaria_sandbox/projectaria_tools_ase_data mv $HOME/Downloads/aria_synthetic_environments_dataset_download_urls.json $HOME/Documents/projectaria_sandbox/projectaria_tools_ase_data/ ``` -------------------------------- ### Compile and Test Project Aria Tools with Pixi Source: https://facebookresearch.github.io/projectaria_tools/docs/data_utilities/installation/installation_python This Pixi command initiates the process of collecting required dependencies, building the project, and running unit tests. It is designed to work cross-platform and simplifies the build process for Project Aria Tools. ```shell # When this command line first run, it will collect required dependencies, and then trigger the build and unit test pixi run run_python ``` -------------------------------- ### Activate Pixi Environment and Import Project Aria Tools Source: https://facebookresearch.github.io/projectaria_tools/docs/data_utilities/installation/installation_python These commands demonstrate how to activate the environment managed by Pixi, launch a Python interpreter, and import the 'projectaria_tools' package. It also shows how to inspect the package's contents. ```python # Activate the environment pixi shell # You can now run and use things from the projects python import projectaria_tools dir(projectaria_tools) # Will print >>>['__builtins__', '__cached__', '__doc__', '__file__', '__loader__', '__name__', '__package__', '__path__', '__spec__', 'core'] ``` -------------------------------- ### Install Pixi Package Manager (Windows) Source: https://facebookresearch.github.io/projectaria_tools/docs/data_utilities/installation/installation_python This command downloads and executes an installation script to install the Pixi package and environment manager on Windows systems using PowerShell. Pixi simplifies cross-platform project management. ```powershell # Install Pixi iwr -useb https://pixi.sh/install.ps1 | iex ``` -------------------------------- ### Install Pixi Package Manager (Linux/macOS) Source: https://facebookresearch.github.io/projectaria_tools/docs/data_utilities/installation/installation_python This command downloads and executes an installation script to install the Pixi package and environment manager on Linux and macOS systems. Pixi simplifies dependency management and building processes. ```shell # Install Pixi curl -fsSL https://pixi.sh/install.sh | bash ``` -------------------------------- ### Build Project Aria Tools from Source (Linux/macOS) Source: https://facebookresearch.github.io/projectaria_tools/docs/data_utilities/installation/installation_python This sequence of commands navigates to the project directory, upgrades pip, and then installs the projectaria-tools package directly from the source code. This method is for advanced users and requires C++ dependencies to be installed separately. ```shell cd $HOME/Documents/projectaria_sandbox/projectaria_tools python3 -m pip install --upgrade pip python3 -m pip install . ``` -------------------------------- ### Download Sample ASE Dataset using Downloader Script Source: https://facebookresearch.github.io/projectaria_tools/docs/open_datasets/aria_synthetic_environments_dataset/ase_getting_started This command executes the projectaria_tools downloader script to fetch a sample ASE dataset. It specifies the dataset set ('train'), a range of scene IDs, the CDN file containing download URLs, the output directory, and enables automatic unzipping of the downloaded data. ```shell cd $HOME/Documents/projectaria_sandbox/projectaria_tools python3 projects/AriaSyntheticEnvironment/aria_synthetic_environments_downloader.py --set train --scene-ids 0-10 --cdn-file $HOME/Documents/projectaria_sandbox/projectaria_tools_ase_data/aria_synthetic_environments_dataset_download_urls.json --output-dir $HOME/Documents/projectaria_sandbox/projectaria_tools_ase_data --unzip True ``` -------------------------------- ### Create and Activate Python Virtual Environment Source: https://facebookresearch.github.io/projectaria_tools/docs/open_datasets/digital_twin_catalog/digital_twin_catalog_getting_started This snippet demonstrates how to remove an existing virtual environment, create a new one using Python 3's venv module, and then activate it. This ensures a clean and isolated environment for projectaria-tools. ```bash rm -rf $HOME/projectaria_tools_python_env python3 -m venv $HOME/projectaria_tools_python_env source $HOME/projectaria_tools_python_env/bin/activate ``` -------------------------------- ### Run Pangolin SimplePlot Example Source: https://facebookresearch.github.io/projectaria_tools/docs/data_utilities/installation/troubleshooting Executes the SimplePlot example from Pangolin. If this example results in a black window or system freeze, it indicates a potential graphics driver issue related to X11, which is addressed in subsequent troubleshooting steps. ```bash ./examples/SimplePlot/SimplePlot ``` -------------------------------- ### Install Pixi on Windows Source: https://facebookresearch.github.io/projectaria_tools/docs/data_utilities/installation/installation_cpp Installs the Pixi package and environment manager on Windows systems using PowerShell. This command fetches and executes the Pixi installation script. ```powershell # Install Pixi iwr -useb https://pixi.sh/install.ps1 | iex ``` -------------------------------- ### Verify Aria Viewer Installation Source: https://facebookresearch.github.io/projectaria_tools/docs/data_utilities/installation/installation_cpp Verifies the Project Aria Tools installation by running the Aria Viewer with a sample VRS data file. This command launches the visualization tool and loads the specified sample data. ```shell cd $HOME/Documents/projectaria_sandbox/build # Running the Aria Viewer with default example data ./tools/visualization/aria_viewer \ --vrs ../projectaria_tools/data/mps_sample/sample.vrs ``` -------------------------------- ### Start and Stop Recording with Project Aria SDK (Python) Source: https://facebookresearch.github.io/projectaria_tools/docs/ARK/sdk/samples/device_recording This Python script utilizes the Project Aria Client SDK to manage device recordings. It shows how to initialize the RecordingManager, configure recording settings including custom profiles, and initiate/terminate recordings for a specified duration. It assumes the SDK is installed and accessible. ```python import time import aria # Assume 'device' and 'args' are initialized elsewhere # device = ... # args = ... # 1. Retrieve RecordingManager instance recording_manager = device.recording_manager # 2. Configure recording settings recording_config = aria.RecordingConfig() # If set, profile_name takes precedence over the default profile recording_config.profile_name = args.profile_name recording_manager.recording_config = recording_config # 3. Start recording for specific amount of time recording_manager.start_recording() time.sleep(args.recording_duration) recording_manager.stop_recording() ``` -------------------------------- ### Set Up Client Devices Source: https://facebookresearch.github.io/projectaria_tools/docs/ARK/sdk/samples/ticsync_sample This Python code iterates through a list of client devices, setting them up for connection. For each client, it reuses the existing `DeviceClient` instance, resetting the `DeviceClientConfig` with the client's serial number, and then connects to the client device. This prepares multiple clients to connect to the server. ```python client_devices = {} client_recording_managers = {} # Set up the client devices for [serial, profile_name] in client_serial_and_profile_names: # Reuse the existing DeviceClient instance by setting a new client config device_client_config.device_serial = serial device_client.set_client_config(device_client_config) # Connect to client device device = device_client.connect() ``` -------------------------------- ### Run ADT Multi-person Tutorial Notebook using Jupyter Source: https://facebookresearch.github.io/projectaria_tools/docs/open_datasets/aria_digital_twin_dataset/advanced_tutorials/multiperson_synchronization This command navigates to the project sandbox directory and launches a Jupyter Notebook server to run the multi-person tutorial example for ADT. Ensure you are in your Python virtual environment. ```bash cd $HOME/Documents/project_aria_sandbox jupyter notebook projectaria_tools/projects/AriaDigitalTwinDatasetTools/examples/adt_multiperson_tutorial.ipynb ``` -------------------------------- ### Install Project Aria Tools Python Package Source: https://facebookresearch.github.io/projectaria_tools/docs/data_utilities/installation/installation_python This code installs or upgrades the pip package manager and then installs the 'projectaria-tools' package with all its optional dependencies using pip. This command should be run after activating the virtual environment. ```python python3 -m pip install --upgrade pip python3 -m pip install projectaria-tools'[all]' ``` -------------------------------- ### Run Pangolin BasicOpenGl Example Source: https://facebookresearch.github.io/projectaria_tools/docs/data_utilities/installation/troubleshooting Executes a basic OpenGL example provided by Pangolin. This serves as a test to ensure that the OpenGL environment is set up correctly after building or updating Pangolin, and is part of the diagnostic steps for visualizer issues. ```bash ./examples/BasicOpenGl/tutorial_3_gl_intro_classic_triangle_vbo_shader ``` -------------------------------- ### Generate and Install Type Hinting for Project Aria Tools Source: https://facebookresearch.github.io/projectaria_tools/docs/data_utilities/installation/installation_python This process involves installing a specific version of pybind11-stubgen, navigating to the project directory, generating Python type stubs, copying them to the correct location, and then installing the package. This is an advanced step for enabling type hinting. ```python python3 -m pip install pybind11-stubgen==1.1 cd $HOME/Documents/projectaria_sandbox/projectaria_tools python3 generate_stubs.py cp -r projectaria_tools-stubs/projectaria_tools . python3 -m pip install . ``` -------------------------------- ### Create and Activate Windows Virtual Environment Source: https://facebookresearch.github.io/projectaria_tools/docs/data_utilities/installation/installation_python This code snippet shows how to remove an existing virtual environment, create a new one using Python 3, and activate it using PowerShell on Windows systems. This is necessary for installing projectaria-tools. ```powershell Remove-Item $HOME\projectaria_tools_python_env py -3 -m venv $HOME\projectaria_tools_python_env & $HOME\projectaria_tools_python_env\Scripts\Activate.ps1 ``` -------------------------------- ### Create and Activate Linux/macOS Virtual Environment Source: https://facebookresearch.github.io/projectaria_tools/docs/data_utilities/installation/installation_python This code snippet demonstrates how to remove an existing virtual environment, create a new one using Python 3, and then activate it on Linux or macOS systems. It's a prerequisite for installing projectaria-tools. ```shell rm -rf $HOME/projectaria_tools_python_env python3 -m venv $HOME/projectaria_tools_python_env source $HOME/projectaria_tools_python_env/bin/activate ``` -------------------------------- ### Start Client Devices Recording Source: https://facebookresearch.github.io/projectaria_tools/docs/ARK/sdk/samples/ticsync_sample Iterates through all client recording managers and starts recording on each client device. This ensures all devices begin capturing data simultaneously. ```python # Start recording on the client devices for manager in client_recording_managers.values(): manager.start_recording() ``` -------------------------------- ### Initialize ADT Dataset Downloader CLI Source: https://facebookresearch.github.io/projectaria_tools/docs/open_datasets/aria_digital_twin_dataset/dataset_download Initializes the `aria_dataset_downloader` command-line tool within a Python virtual environment where `project_aria_tools` is installed. This command is used to start the download process. ```bash aria_dataset_downloader ``` -------------------------------- ### Set Up Server Device Connection Source: https://facebookresearch.github.io/projectaria_tools/docs/ARK/sdk/samples/ticsync_sample This Python code configures and connects to the server device. It extracts the server's serial number and profile name, sets up a `DeviceClient` instance with the server's serial, and establishes a connection. This is essential for controlling and configuring the server device. ```python server_serial = server_serial_and_profile_name[0] server_profile_name = server_serial_and_profile_name[1] # Set up the server device device_client_config.device_serial = server_serial device_client.set_client_config(device_client_config) # Connect to server device server_device = device_client.connect() ```