FEATURES
CARTA key features
CARTA adopts a client-server
architecture which is suitable for visualizing images with large file
sizes (GB to TB) easily obtained from ALMA, VLA, or SKA pathfinder
observations. It is impractical to process such a huge file
with a personal computer or laptop. In a client-server architecture,
computation and data storage are handled by remote enterprise-class servers
or clusters with high performance storage, while processed products are
sent to clients only for visualization with modern web features, such
as GPU-accelerated rendering. This architecture also enables users to
interact with the ALMA and VLA science archives by using CARTA as an interface.
CARTA has two flavors: Desktop version and Server version. The former is suitable
for single-user usage with a laptop, a desktop, or a remote server in the "remote"
execution mode.
The later is suitable for institution-wide deployment to support multiple users with
user authentication and addtional server-side features.
Memory-efficient when loading images
With ~1 GB of ram, a 16000 pixel x 16000 pixel image or a 16000 pixel x 16000 pixel x 1000 channel cube (~1 TB in size) can be loaded in seconds.
Parallelization and GPU-accelerated rendering
Parallelization with CPUs is invoked in data processing. GPU-accelerated rendering is adopted for tiled raster images, contour images, and catalog overlays.
Spectral line cube analysis tools
Flexible multi-profile plotting capability is supported. Analysis tools such as profile fitting, profile smoothing, moment map generator, and spectral line query and labelling are out of box.
Customizable and reusable GUI layouts and preferences
CARTA is equipped with a highly customizable and reusable graphical user interface for various use cases.
Efficient catalog processing and rendering
Catalogs with millions of sources can be loaded and rendered in seconds. Catalog files are processed with parallelization techniques and are rendered with GPU acceleration.
Efficient visualization with HDF5 (IDIA schema) images
The HDF5 format with the IDIA schema improves the user's experience of viewing large image cubes significantly.
ROADMAP
Release plan
Current release
The current release is v4.1 (a maintenance release based on v4.0 to address core library update and critical bugs), released on 23rd of January 2024. v4.0 was released on 12th of September 2023, with the following features:
- Interactive PV preview
- Enhanced PV generator
- Initial support of workspace (save and restore)
- Initial support of workspace sharing (carta-controller only; experimental)
- Enhanced image fitting capabilities
- Image annotation
- Visualization of a rotated cube (no image analytics)
- Support beam info for AIPS-generated cubes
- Support animation playback with matched images in multi-panel view
- A new dialog for angular distance measurement
- Show/hide and lock all regions
- Auto-scrolling the selected region into the region list view
- Mirroring cursor markers on spatially matched images
- Cursor info with dual spectral convention in the spectral profiler
- Pan and zoom images with manual inputs
- Switch directory path with manual input
- Custom range and number of bins in the histogram calculation
Next release
The next release will be v5.0 (Q3 2024) with the planned main new features (details TBD):
- Full support of workspace
- Full support of workspace sharing (carta-controller only)
- RGB image blender
- Channel-map view
- Image source finder
- Spectral line query enhancement
- Catalog visualization enhancement
- Python scripting interface (long-term effort)
Future releases
This is a non-exclusive list of features we would like to add in subsequent releases, but they are not 100% decided upon yet and depend on feedback from users, resourcing etc.:
- Collaborative tools
- Volume (pseudo 3D) rendering
- Profile, histogram, and image fitting tools
- VO service (image and catalog)
- Smart layout
- New moment image generator
- Python scripting interface (long-term effort)
INSTALLATION
Obtaining CARTA
v4.1
Supported operating systems:
- Ubuntu Linux: 20.04 LTS (Focal Fossa), and 22.04 LTS (Jammy Jellyfish) for amd64 and aarch64 architectures.
- Red Hat Enterprise Linux: 7, 8 and 9 for x86_64 and aarch64 architectures.
- macOS: 11 (Big Sur), 12 (Monterey), and 13 (Ventura) for Intel and Apple Silicon architectures.
To deploy CARTA at your institution as a web-based application for multiple users, please refer to the CARTA controller documentation.
To start CARTA, please refer to the user manual How to Run CARTA.
Ubuntu 20.04, and 22.04 packages are available from our PPA.
sudo add-apt-repository ppa:cartavis-team/carta
sudo apt-get update
sudo apt install carta
To start CARTA, please refer to the user manual How to Run CARTA.
The 'carta-beta' package is updated with intermediate preview releases as well as official releases. Users may install this package instead if they wish to receive these updates, and users who already have 'carta-beta' installed may update their existing package now to obtain this release:
sudo apt-get update
sudo apt install carta-beta
We now host the CARTA RPMs on the Fedora Copr service.
If you have previously
used our old "packages.cartavis.org" RPM repository,
we recommend uninstalling any existing carta packages and removing
the old cartavis.repo file first:
sudo yum remove carta carta-beta
sudo rm /etc/yum.repos.d/cartavis.repo
Follow these steps to add the Copr repository and install CARTA
(Root access is required, unless you install it in a Docker
container):
sudo yum -y install yum-plugin-copr
sudo yum -y copr enable cartavis/carta
sudo yum -y install epel-release
sudo yum -y install carta
We now host the CARTA RPMs on the Fedora Copr service.
If you have previously
used our old "packages.cartavis.org" RPM repository,
we recommend uninstalling any existing carta packages and removing
the old cartavis.repo file first:
sudo dnf remove carta carta-beta
sudo rm /etc/yum.repos.d/cartavis.repo
Follow these steps to add the Copr repository and install CARTA
(Root access is required, unless you install it in a Docker
container):
sudo dnf -y install 'dnf-command(copr)'
sudo dnf -y copr enable cartavis/carta
sudo dnf -y install epel-release
sudo dnf -y install carta
We officially support macOS 11 Big Sur, macOS 12 Monterey, and macOS 13 Ventura through Homebrew.
If you do not already have it, you may install Homebrew using the
following command (root access is required):
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
Now CARTA can be installed with:
brew update
brew install --cask cartavis/tap/carta
To start CARTA, please refer to the user manual How to Run CARTA.
The traditional macOS Electron Desktop version can be downloaded by clicking the appropriate download button below. In addition to the standard x86_64 version for Intel based Macs, we now supply a native arm64 version for Apple Silicon based Macs.
Installation:
Click the download button below. After downloading, open the DMG
installer and drag the CARTA icon to the Applications folder.
Operation:
Click the CARTA icon in the Launchpad.
Alternatively, you may create an alias for starting CARTA in your
terminal.
Here is an example:
Open your ~/.zshrc file (or ~/.bashrc if you use bash) in
a text editor and add the following line:
alias carta='/Applications/CARTA.app/Contents/MacOS/CARTA'
Then enter source ~/.zshrc
(or
source ~/.bashrc
) in the terminal.
Now you will be able to start CARTA by simply typing carta
in the terminal.
DOWNLOAD - Intel Mac
DOWNLOAD - Apple Silicon Mac
The CARTA Linux AppImage does not require root access. You simply download, extract, and run it. It uses your default web browser to display the CARTA graphical interface. The CARTA AppImage can now run universally between Ubuntu and RedHat platforms, but we have separate versions for x86_64 and aarch64 architectures.
Installation:
Either click the Download button below or run:
wget https://github.com/CARTAvis/carta/releases/latest/download/carta.AppImage.$(arch).tgz
Extract the tarball:
tar -xzf carta.AppImage.$(arch).tgz
Operation:
To start CARTA, please refer to the user manual How to Run CARTA.
Note: If you wish to run the AppImage inside a Docker container, or you
system has trouble with FUSE, please prefix with the following
environment variable:
APPIMAGE_EXTRACT_AND_RUN=1 ./carta-4.1-x86_64.AppImage
DOWNLOAD - x86_64
DOWNLOAD - aarch64
CARTA is available in the form of a Docker container from Docker Hub. This version could be useful to run CARTA on unsupported platforms such as macOS 10.14.
With Docker installed and running on your system, simply enter the following command in your terminal:docker run -ti -p 3002:3002 -v $PWD:/images -v $HOME/.carta:/home/cartauser/.carta cartavis/carta:latest
It will download the latest version of CARTA from Docker Hub and run it using your current directory (
$PWD
) in the CARTA file-browser. A unique URL will be
displayed in the terminal.
Copy & Paste the unique URL into your local web browser in order to access the CARTA
frontend interface.
Please refer to the user manual for more information How to Run CARTA.
Known critical bug: frontend, backend, controller
Known bug: frontend, backend, controller
For more information, please refer to the user manual.
In case of any issues encountered during the installation, please contact the CARTA helpdesk.
To obtain previous release versions, please refer to https://github.com/CARTAvis/carta/releases.
ABOUT
Project information
CARTA publications
Journal
Development and application of an HDF5 schema for SKA-scale image cube
visualization
Proceedings and others
CARTA: Cube Analysis and Rendering Tool for Astronomy
CARTA: Cube Analysis and Rendering Tool for Astronomy
CARTA: Cube Analysis and Rendering Tool for Astronomy
CARTA: Cube Analysis and Rendering Tool for Astronomy
The
ALMA Science Archive Reaches a Major Milestone
Codebase
CARTA is mainly built in C++, TypeScript, and JavaScript, and with the following third-party libraries. Check out the codebase on Github.
- AST: http://starlink.eao.hawaii.edu/starlink/AST
- Blueprint: https://blueprintjs.com
- casacore: https://casacore.github.io
- CASA source code: https://casa.nrao.edu/index.shtml
- Chart.js: https://www.chartjs.org
- Electron: https://electronjs.org
- GoldenLayout: https://golden-layout.com
- GSL: https://www.gnu.org/software/gsl
- MobX: https://mobx.js.org
- MongoDB: https://www.mongodb.com
- node.js: https://nodejs.org
- Plotly: https://plotly.com
- Protocol buffers: https://developers.google.com/protocol-buffers
- Pugixml: https://pugixml.org
- React: https://reactjs.org
- spdlog: https://github.com/gabime/spdlog
- sse2neon: https://github.com/DLTcollab/sse2neon
- uWebsockets: https://github.com/uNetworking/uWebSockets
- WebAssembly: https://webassembly.org
Citation
Please use the DOI 10.5281/zenodo.3377984 as a citation when using CARTA for publications.