Project Summary
This project develops a vision-based system for automated product inspection on a conveyor belt. The system utilizes a camera to capture images of products as they move along the conveyor. These images are then compared to user-defined configuration images.
My Contribution
I implemented anomaly detection functionality, allowing users to define and track defect areas directly on reference images. Additionally, I integrated Entity Framework and an MSSQL database to save inspection result and config data.
Key Features:
- User-defined Anomaly Detection: Users can mark specific regions directly on config images. The system identifies and flags products with anomalies in those designated areas, ensuring focus on critical inspection points.
- OpenCV for Image Processing: Leverages the powerful OpenCV library for various image processing tasks. This includes image capture from the camera, image comparison with reference images, and anomaly detection based on user-defined regions.
- MVVM Design Pattern: Employs the MVVM (Model-View-ViewModel) design pattern for a clean separation of concerns. This promotes maintainable and testable code, making future modifications and updates easier.
- Database Integration: The system integrates with Entity Framework and an MSSQL database for managing configuration data, such as reference images and anomaly region definitions.
- PLC Communication: The system communicates with a Programmable Logic Controller (PLC) to automate conveyor control based on inspection outcomes.
Inspection result with PASS result
Inspection result with FAIL result
Technologies:
- WPF (Frontend Development)
- OpenCV (Image Processing)
- MVVM Design Pattern (Code Structure)
- Entity Framework & MSSQL Database (Data Management)- PLC Communication (Hardware Integration)