Computer vision
With a view to accelerating the production chain and developing assistance to the operator in charge of quality control, Safran's Innovation department Engineering Services (SES) wanted to introduce deep learning into this task. In addition, this allowed SES to have its first connection with deep learning technology. To do this, the neural network needed to be able to detect, recognise and segment surface defects (scratches, dents, etc...) on on-board cameras.
The network architecture and programming language have been imposed: Mask-RCNN and Python.
But during the development of the application, another network attracted the attention for real-time detection: YOLACT++. I worked alone on the project.
Taking in hand the tools :
- Mask-RCNN (Keras)
- YOLACT++ (PyTorch)
- Identification of customer needs
- Data collections
- Data processing and labelling
- Development of a model evaluation tool (mAP, Precision, Recall, Overlap)
- Model training Deployment of a server/client application for Android (on-board camera)
- Documentation redaction and project presentation
Proof of concept is accepted for 4 different types of defect and a client has been found to assist in the control of quality.
- Mask-RCNN :
- 85% accuracy
- 75% recall
- Deployment of a client on Android (7s in 4g network and a GTX graphics card 1080 8GB for the complete process: Sending of the image to the server, processing of the image and the image by the neural network, returns the result to be visualized on smartphone)
<br>
- Yolact++ :
- 67% of mAP but not the initial project, I had 1 month to take in hand the tool, for android deployment and training
- Deployment on live android (live streaming) with WiFi and a GTX 1080 8GB: can have up to 5s of latency and contains some lag (packet loss).
Image processing
Also, SES has old wiring plans in paper format. With a view to migrating to the digital so that the plans can be saved and modelled on dedicated software. A technician is in charge of "copying" these electrical diagrams. Complex plans take up to a week to be copied, and it is estimated that there is a data entry error on the part of the technician at 5%. The aim of the innovation department is to assist the technician so that this is faster and safer. For this, it must be possible to detect the components in the diagrams, to know the relationships between components, to detect and recognise texts etc...
The application is also in Python, but uses more "classical" methods of image processing (OpenCV, Scikit-Image). We were 2 on the project:
- Pre-processing of the images (noise reduction, detection of the area of interest)
- Detect and recognise text (OCR, PyTesseract)
- Establish relationships between components
- Measures detection
Proof of concept is accepted and a potential client for the digital migration of paper plans:
- The text is detected at 90-95% but is recognised at 75-85% depending on the plans.
- If the component detection is correct, the establishment of the relationships between component is correct as well The area of interest is sometimes missed (none of the components statistics have been made)
- Detection of measures still too random (deep learning)
- Bordeaux • France
- (+33) 6 33 48 16 27
- julien.hongsavanh@gmail.com