Torque marker inspection for threaded connections
Checks if a torque seal is broken or straight. Detects a threaded connection (nut or bolt) head with a torque seal. If the nut slips or starts to loosen, the painted line will be broken and classified as DEFECT. If the line is straight - the model returns OK.
Architecture / Pipeline Pipeline:
Pipeline: Input -> Detector -> Tracker -> Selector -> Pre-processing -> Classifier -> Output
Input: still images from GigE camera
Detector: YOLOX Tiny@288x480, patches of unrestricted size containing objects.
Selector: allows to filter out partially visible objects on the frame borders.
Pre-processing: object box is extended to given % in height/width from the center and cropped according to frame borders
Classifier: ResNet34, predicting probability of two classes, resolution 64x64, RGB, aspect ratio preserved
Output: softmax(preds)[:, 1] (Anomaly score)
Objects: "NUT", Classification: "OK", "DEFECT"
The following thresholds were used for test: XXX, XXX. Thresholds can be defined in a config file.
Use case keywords
assembly, bolt, nut, marker, threaded connection, torque seal
Ready to deploy
1.20, build 15.12.2022
Inspection of torque seals (markers) on threaded connections
How to use
1. Get a fresh GPU 2. Fill it with well-pruned models 3. Stir
Object name ("Nut"), Object class ("OK", "Defect"), bounding box location and size
Limitations and bias
The module was tested with input image sizes from 640x480 to 1920x1080 on Siemens IPC 520A industrial PC.
Real-life images: 212; synthetic images: 3,110 (generated in NVIDIA Omniverse with domain, light, optics, textures, size, shape randomization)
6 epochs, trained on DGX2 server (NVIDIA V100 GPU)
Accuracy, performance, ROC/AUC Precision: 96.2%, Recall: 97.4% with confidence threshold 0.43
GPU: NVIDIA Jetson Xavier NX, CPU: ARM64; RTX4000/amd64 version is under development
Frame rate: 20 FPS on Jetson Xavier NX
<path to hi-res image at google drive>
<path to hi-res images at google drive>