VisionQC was inspired by a major problem in manufacturing: most quality-control systems need large labeled datasets containing every possible defect, but many factories do not have enough examples of rare or new failures. We wanted to build a system that could learn only from acceptable products, then identify anything that falls outside the normal range.
We built VisionQC as a self-calibrating computer-vision platform. Users upload images of good products, and the system creates a healthy reference using geometric, color, texture, and spatial features. It then trains an Isolation Forest anomaly-detection model, calculates robust tolerance ranges, and compares each new product against that learned profile. The final decision engine combines anomaly scores, failed measurements, image quality, segmentation reliability, and visual difference maps to return PASS, REVIEW, or REJECT with an explanation and highlighted defect region.
During development, we learned how to combine machine learning with deterministic quality-control rules instead of relying on a single black-box classifier. We also learned how important preprocessing, segmentation, consistent lighting, robust statistics, and uncertainty handling are in real computer-vision systems.
Our biggest challenges were stabilizing the Streamlit interface, preventing repeated model training and duplicate inspection events, handling inconsistent uploaded images, and creating a workflow that could detect unknown defects without being trained on them directly. We solved these issues by adding cached model resources, profile-based calibration, safe image validation, robust statistical thresholds, and a separate decision-fusion layer.
The current version works as a proof of concept using real paper-plate images and a synthetic bottle-cap demo. In the future, VisionQC could be adapted for packaging, electronics, automotive parts, food production, medical devices, and other manufacturing environments where fast, explainable inspection is valuable.
Log in or sign up for Devpost to join the conversation.