Optical Character Recognition

Assembly Line

Visual search: how to find manufacturing parts in a cinch

πŸ“… Date:

✍️ Authors: Artem Ivashchenko, Sergey Parakhin, Aleksey Romanov

πŸ”– Topics: Convolutional Neural Network, Computer Vision, Optical Character Recognition, Visual Search

🏒 Organizations: Grid Dynamics


The process of engineering a robust mechanical product, whether it’s an escalator or a car engine, requires many small parts. We accept that these parts wear out over time and require replacement to avoid breakdowns and to keep the mechanics of the product running smoothly.

During our analysis of the data that the client shared with us, we found a mix of photos of the parts themselves, photos of packages or only product labels. Serial numbers or easily distinguishable characters were clearly visible in some photographs, but not in all of them. One of the primary challenges we faced, therefore, was dealing with the differences between the photos the engineers were submitting compared to the images in the search catalog. For example, there were examples of visually indistinguishable images where only the model number differentiated the part, photos of a sticker with a serial number instead of an object itself, rulers alongside objects in photos to indicate scale, and drawings of the part in the catalog instead of photos.

For this use case we implemented the CNN model based on ResNeXt architecture (ResNeXt-50 (32Γ—4d)) pre-trained on an ImageNet dataset. However, the manufacturing parts we were dealing with were not adequately available in the pre-trained dataset, which meant we had to enhance the training dataset with about 10 000 independently sourced manufacturing part images along with the client-supplied labeled dataset.

Read more at Grid Dynamics Blog