Arbitrary Image Reinflation: A deep learning technique for recovering 3D photoproduct distributions from a single 2D projection
Chris Sparling 1,‡ , Alice Ruget 1,‡ , Jonathan Leach 1 and Dave Townsend 1,2
1 Institute of Photonics & Quantum Sciences, Heriot-Watt University, Edinburgh, EH14 4AS, UK
2 Institute of Chemical Sciences, Heriot-Watt University, Edinburgh, EH14 4AS, UK
‡ These authors contributed equally to this work
Python 3.8.11 Tensorflow 2.4.1 Keras 2.4.0
Create_dataset.py is used to simulate different 3D distributions I_3D and their corresponding 2D projections I_2D_proj.
- Fill the saving path save_path in create_dataset.py
- Adjust the different parameters
- Run create_dataset.py
AIR.py is used to train and test the network.
After creating the dataset you can train the network by pick case = 'train' in AIR.py and specifying the path of the training dataset in save_path.
We provide the checkpoint and the data for three different scenarios of the paper at the DOI address: 10.17861/1b0da270-4812-476b-9226-43e6467792c6.
- In AIR.py, pick case = 'A' for the result of IV. B. Simulated Data: (1 + 1) Parallel Polarization Geometry. (Figure 6)
- In AIR.py, pick case = 'B' for the result of IV. C. Experimental Data: (2 + 1) REMPI of α-Pinene. (Figure 8)
- In AIR.py, pick case = 'B' for the result of IV. D. Simulated Data: (1 + 1) Orthogonal Polarization Geometry (Figure 12)
The results are saved respectively in Figure_6_prediction.mat, Figure_8_prediction.mat, Figure_12_prediction.mat.
WMIisosurf.m is used to plot the results. For the figures of the paper, we used a contrast cont of 1 and the shape 'half'.