Analyzing the output file (analysis.json) obtained from SNMMI’s Phantom Analysis Toolkit (PAT) program

Overview

This post will share our python developments to analyze the SNMMI’s Phantom Analysis Toolkit (PAT) analysis.json output file.

The SNMMI is providing a cloud-based automated Phantom Analysis Toolkit (PAT). Using this program, we can analyze the PET phantoms data such as: the CTN chest phantom, uniform phantom, the NEMA Image Quality phantom, and the ACR phantom data. We can upload the phantom DICOM data for analysis in this program, enter the phantom filling information, and subsequently initiate the analysis. After all these steps, we can download the results.

If one is interested in analyzing the detailed results obtained from NEMA or CTN phantoms, one could work on the analysis.json file. This file is written in JavaScript Object Notation (JSON).

Parsing JSON file using Python

Here I will describe how can we use Pandas Python data analysis library to analyze this analyse.json file. This library makes it extremely easy to visualize the data in tabular form. We can even use this library to create and manipulate dataframes. This library is arguably the most popular data analysis and data visualization library. Matplotlib library was used to plot the data.

Attached is the python script to analyse and visualize the CTN phantom output analysis.json file. The code is self-explanatory, and its output is also saved in a single file to illustrate how each line of code works. The illustration was performed in Jupyter Notebook.

The Python code, including the analysis output, is linked here: click here to get a page that contains all the details.

Questions after reading this post? Please shoot me an email at: ashok-tiwari@uiowa.edu; I am happy to answer any questions you may have related to this work.

Ashok Tiwari, PhD
Ashok Tiwari, PhD
Medical Physics Resident

My research interests include Medical Physics, Nuclear Medicine, Monte Carlo Simulations and Artificial Intelligence.

Related