New developments in gVirtualXray since IBSim 2021
Research output: Contribution to conference › Abstract › peer-review
Standard Standard
2023. Abstract from Image-Based Simulation for Industry (IBSim-4i) 2023, London, United Kingdom.
Research output: Contribution to conference › Abstract › peer-review
HarvardHarvard
APA
CBE
MLA
VancouverVancouver
Author
RIS
TY - CONF
T1 - New developments in gVirtualXray since IBSim 2021
AU - Vidal, Franck
PY - 2023/10
Y1 - 2023/10
N2 - gVirtualXray (gVXR) is an open-source framework that relies on the Beer–Lambert law to simulate X-ray images in realtime on a graphics processor unit (GPU) using triangular meshes. Recent developments in the simulation code are of interest for the IBSim community.gVRX is cross-platform. It runs on Windows, GNU/Linux, and MacOS computers, whether they are laptops, desktop PCs or supercomputers. It even run cloud infrastructures, including STFC Cloud, Google Colaboratory and Code Ocean. gVXR has been successfully used in Docker containers. A wide range of programming languages (C/C++, Python, R, Ruby, Tcl, C#, Java, and GNU Octave). Its Python package “gVXR” is listed on the Python Package Index (https://pypi.org/project/gVXR/). An intuitive JSON format has been designed to describe simulation parameters. Infinitively small point sources and actual focal spots are both supported to define cone-beam geometries. They replicate LabCT scanning geometries. For synchrotron sources, parallel beams can be used. Incident beams can either be monochromatic or polychromatic. In the latter case, xpecgen (https://github.com/Dih5/xpecgen ) and Spekpy (https://bitbucket.org/spekpy/spekpy_release/wiki/Home) have been integrated to define the tube spectrum depending on the anode material, voltage and eventual filtration. Poisson noise is now supported. It can be used to mimic exposure times. A convolution kernel can be specify to model the impulse response of the detector. A look-up table can be defined to mimic the energy response of the detector due to the use of a scintillator. More recently, photon counting detectors were implemented to simulate spectral imaging.Scanned objects can be modelled using surface meshes (triangles) in most popular file formats (eg. STL) or volume meshes (tetrahedrons) in the Abacus format (experimental). Multi-material objects can be simulated. The material properties supported are: chemical elements (e.g. the symbol W or the atomic number 74 for tungsten); compounds, e.g. H₂O for water; mixture, e.g. Titanium–aluminium–vanadium alloy, Ti90Al6V4; and Hounsfield units (for medical applications). Xraylib (https://github.com/tschoonj/xraylib) has been integrated to compute the photon cross sections associated with the materials. For ease of use, CT acquisition can be specified in an easy manner. Flat field images, with or without Poisson noise, can be generated to improve realism. A plugin for CIL (https://ccpi.ac.uk/cil/) is provided to reconstruct the corresponding CT data. In a quantitative image comparison study, we compared images created using gVXR to both Monte Carlo simulations and experimental images of realistic phantoms. We demonstrated that accurate images can be generated in milliseconds with gVXR when scattering can be ignored.
AB - gVirtualXray (gVXR) is an open-source framework that relies on the Beer–Lambert law to simulate X-ray images in realtime on a graphics processor unit (GPU) using triangular meshes. Recent developments in the simulation code are of interest for the IBSim community.gVRX is cross-platform. It runs on Windows, GNU/Linux, and MacOS computers, whether they are laptops, desktop PCs or supercomputers. It even run cloud infrastructures, including STFC Cloud, Google Colaboratory and Code Ocean. gVXR has been successfully used in Docker containers. A wide range of programming languages (C/C++, Python, R, Ruby, Tcl, C#, Java, and GNU Octave). Its Python package “gVXR” is listed on the Python Package Index (https://pypi.org/project/gVXR/). An intuitive JSON format has been designed to describe simulation parameters. Infinitively small point sources and actual focal spots are both supported to define cone-beam geometries. They replicate LabCT scanning geometries. For synchrotron sources, parallel beams can be used. Incident beams can either be monochromatic or polychromatic. In the latter case, xpecgen (https://github.com/Dih5/xpecgen ) and Spekpy (https://bitbucket.org/spekpy/spekpy_release/wiki/Home) have been integrated to define the tube spectrum depending on the anode material, voltage and eventual filtration. Poisson noise is now supported. It can be used to mimic exposure times. A convolution kernel can be specify to model the impulse response of the detector. A look-up table can be defined to mimic the energy response of the detector due to the use of a scintillator. More recently, photon counting detectors were implemented to simulate spectral imaging.Scanned objects can be modelled using surface meshes (triangles) in most popular file formats (eg. STL) or volume meshes (tetrahedrons) in the Abacus format (experimental). Multi-material objects can be simulated. The material properties supported are: chemical elements (e.g. the symbol W or the atomic number 74 for tungsten); compounds, e.g. H₂O for water; mixture, e.g. Titanium–aluminium–vanadium alloy, Ti90Al6V4; and Hounsfield units (for medical applications). Xraylib (https://github.com/tschoonj/xraylib) has been integrated to compute the photon cross sections associated with the materials. For ease of use, CT acquisition can be specified in an easy manner. Flat field images, with or without Poisson noise, can be generated to improve realism. A plugin for CIL (https://ccpi.ac.uk/cil/) is provided to reconstruct the corresponding CT data. In a quantitative image comparison study, we compared images created using gVXR to both Monte Carlo simulations and experimental images of realistic phantoms. We demonstrated that accurate images can be generated in milliseconds with gVXR when scattering can be ignored.
M3 - Abstract
T2 - Image-Based Simulation for Industry (IBSim-4i) 2023
Y2 - 9 October 2023 through 13 October 2023
ER -