Python implementation for XVis Toolbox release with the book Computer Vision for X-Ray Testing. Originally implemented in Matlab by Domingo Mery for the first edition of the book. This package is part of the second edition of the book Computer Vision for X-Ray Testing (November 2020).
- Python 3.6 or higher
- numpy < 1.19
- matplotlib >= 3.3.2
- scipy >= 1.5.2
- pyqt5 >= 5.15.1
- pybalu >= 0.2.9
- opencv-python = 3.4.2
- opencv-contrib-python = 3.4.2
- tensorflow >= 2.3.1
- scikit-learn >= 0.23.2
- scikit-image >= 0.17.2
- pandas >= 1.1.2
The package is part of the Python Index (PyPi). Installation is available by pip:
pip install pyxvis
All examples in the Book have been implemented in Jupyter Notebooks tha run on Google Colab.
- Example 1.1: Displaying X-ray images
- Example 1.2: Dual Energy
- Example 1.3: Help of PyXvis functions
- Example 2.1: Displaying an X-ray image of GDXray
- Example 3.1: Euclidean 2D transformation
- Example 3.2: Euclidean 3D transformation
- Example 3.3: Perspective projection
- Example 3.4: Cubic model for distortion correction
- Example 3.5: Hyperbolic model for imaging projection
- Example 3.6: Geometric calibration
- Example 3.7: Epipolar geometry
- Example 3.8: Trifocal geometry
- Example 3.9: 3D reconstruction
- Example 4.1: Aritmetic average of images
- Example 4.2: Contrast enhancement
- Example 4.3: Shading correction
- Example 4.4: Detection of defects using median filtering
- Example 4.5: Edge detection using gradient operation
- Example 4.6: Edge detection with LoG
- Example 4.7: Segmentation of bimodal images
- Example 4.8: Welding inspection using adaptive thresholding
- Example 4.9: Region growing
- Example 4.10: Defects detection using LoG approach
- Example 4.11: Segmentation using MSER
- Example 4.12: Image restoration
- Example 5.1: Geometric features
- Example 5.2: Elliptical features
- Example 5.3: Invariant moments
- Example 5.4: Intenisty features
- Example 5.5: Defect detection usin contrast features
- Example 5.6: Crossing line profiles (CLP)
- Example 5.7: SIFT
- Example 5.8: Feature selection
- Example 5.9: Example using intenisty features
- Example 5.10: Example using geometric features
- Example 6.1: Basic classification example
- Example 6.2: Minimal distance (dmin)
- Example 6.3: Bayes
- Example 6.4: Mahalanobis, LDA and QDA
- Example 6.5: KNN
- Example 6.6: Neural networks
- Example 6.7: Support Vector Machines (SVM)
- Example 6.8: Training and testing many classifiers
- Example 6.9: Hold-out
- Example 6.10: Cross-validation
- Example 6.11: Confusion matrix
- Example 6.12: ROC and Precision-Recall curves
- Example 6.13: Example with intensity features
- Example 6.14: Example with geometric features
- Example 8.1: Basic simulation using voxels
- Example 8.2: Simulation of defects using mask
- Example 8.3: Simulation of ellipsoidal defects
- Example 8.4: Superimposition of threat objects