DIC Image Quality Inspector is a sophisticated Python application designed to evaluate and optimize speckle pattern quality for Digital Image Correlation (DIC) applications. It provides comprehensive analysis of speckle patterns, helping researchers and engineers determine if their specimens are properly prepared for mechanical testing with DIC systems.
The tool analyzes critical quality metrics including gradient content, contrast distribution, speckle morphology, information entropy, and noise characteristics to provide scientifically-based recommendations for optimal DIC correlation parameters.
- 🎯 Advanced Quality Metrics: Mean Intensity Gradient (MIG), Enhanced Feature (Ef) calculation, entropy analysis
- 📊 Real-time Quality Visualization: Color-mapped quality overlays with multiple spectrum options
- 🔍 Region of Interest (ROI) Selection: Polygon-based ROI for focused analysis
- 📈 DIC Parameter Optimization: Automatic subset size and step size recommendations
- 📸 Multiple Input Methods: File loading, screenshot capture, live camera feed (Windows)
- Multi-threaded Processing: Responsive UI during analysis operations
- Adaptive Algorithms: Dynamic parameter adjustment based on pattern characteristics
- Scientific Validation: Based on peer-reviewed DIC literature and established metrics
- Comprehensive Reporting: Detailed analysis reports with statistical summaries
- Dark/Light Theme Support: Modern UI with theme persistence
- SpinView Camera Integration (Windows only): Real-time quality analysis from FLIR/Point Grey cameras
- Batch Processing Support: Analyze multiple images sequentially
- Export Capabilities: Reports in TXT/PDF/HTML, quality maps in PNG/TIFF
- Performance Modes: Fast, Balanced, and Accurate analysis options
| Score Range | DIC Suitability | Description |
|---|---|---|
| 90-100 | Excellent | Ideal for high-precision DIC measurements |
| 75-89 | Very Good | Suitable for most DIC applications |
| 60-74 | Good | Acceptable for standard DIC analysis |
| 45-59 | Fair | May work with careful parameter selection |
| 30-44 | Challenging | Consider pattern improvement |
| 0-29 | Poor | Not suitable for reliable DIC |
The tool evaluates five key quality metrics:
-
Gradient Content (Mean Intensity Gradient - MIG)
- Measures edge sharpness and feature definition
- Higher gradients indicate better trackable features
-
Contrast Distribution
- Evaluates local and global contrast variations
- Good contrast improves correlation accuracy
-
Speckle Morphology
- Analyzes speckle size, shape, and distribution
- Optimal speckle size: 3-5 pixels diameter
-
Information Entropy
- Calculates pattern uniqueness and randomness
- Higher entropy reduces correlation ambiguity
-
Noise Characteristics
- Estimates signal-to-noise ratio
- Lower noise improves sub-pixel accuracy
DIC_image_inspector/
├── 📂 analysis/ # Core analysis algorithms
│ ├── entropy_analysis.py # Information content analysis
│ ├── gradient_analysis.py # MIG and gradient calculations
│ ├── morphology_analysis.py # Speckle shape analysis
│ └── quality_map/ # Quality visualization
├── 📂 core/ # Business logic
│ ├── image_analyzer.py # Main analysis orchestrator
│ └── report_generator.py # Report generation
├── 📂 models/ # Data models
│ ├── analysis_result.py # Analysis result container
│ ├── image_data.py # Image data wrapper
│ └── roi_data.py # ROI data structure
├── 📂 ui/ # User interface
│ ├── main_window.py # Main application window
│ ├── main_components/ # UI components
│ ├── dialogs/ # Dialog windows
│ └── live_analyze/ # Live analysis features
├── 📂 utils/ # Utilities
│ ├── constants.py # Application constants
│ ├── validation.py # Input validation
│ └── file_operations.py # File I/O operations
├── 📄 main.py # Entry point
├── 📄 app.py # Application initialization
├── 📄 requirements.txt # Dependencies
└── 📄 README.md # This file
This tool implements established DIC quality assessment methods from peer-reviewed literature:
-
Pan, B. et al. (2009). "Mean intensity gradient: An effective global parameter for quality assessment of the speckle patterns used in digital image correlation." Optics and Lasers in Engineering.
-
Hu, Z. et al. (2021). "Enhanced feature for quality assessment of speckle patterns in digital image correlation." Measurement Science and Technology.
-
Reu, P.L. (2015). "All about speckles: Speckle density." Experimental Techniques.
-
Sutton, M.A. et al. (2009). Image correlation for shape, motion and deformation measurements.
The quality score combines multiple metrics using weighted averaging:
Quality Score = w1×MIG + w2×Contrast + w3×Entropy + w4×Morphology + w5×Noise
Where weights are optimized based on empirical DIC performance data.
Issue: Slow analysis performance
- Reduce image size/ select a smaller ROI
- If you are in the spinview live feature then choose the easier mode
This project is licensed under the MIT License - see the LICENSE file for details.
- Isaac Legault - Initial development - GitHub Profile
- Leyton (Zhiyan) Lu - GitHub Profile
- DIC research community for theoretical foundations
- Open-source contributors for core libraries
- Beta testers for valuable feedback
- Academic partners for validation data
For support and questions:
- 📧 Email: [email protected]