Ask Your Question

PatMax in OpenCV

asked 2020-11-30 08:27:11 -0600

updated 2020-11-30 10:38:45 -0600

crackwitz gravatar image

I have been using extensively Cognex VisionPro for industrial projects. I also used OpenCV but I don't remember anything straightforward as Patmax to locate parts/patterns. Do you know of any tool in OpenCV that is similar to PatMax or any OpenCV based library ? Thank you.

edit retag flag offensive close merge delete


Absolutely. Your Cognex VisionPr will work with Deep Learning, Machine learning, etc. Here is link:

supra56 gravatar imagesupra56 ( 2020-11-30 11:45:13 -0600 )edit

1 answer

Sort by ยป oldest newest most voted

answered 2020-11-30 11:22:22 -0600

crackwitz gravatar image

there may be free/open libraries that rival the commercial optical inspection libraries but I don't know any.

OpenCV has cv::matchShapes(). it's not as advanced and optimized (or as patented!) as commercial solutions.

you could look into Cognex's patents. check if they're expired before you actually read them. if it is expired, there is no danger in reading the patent. if it is still active, be aware that reading it means your brain is now tainted with that information and you can't implement or use it without a license. they claim that the Patmax parent is from 1997 so it may have expired.

people who do optical inspection usually just use commercial libraries (visionpro, halcon, ...). the other crowd throws deep learning object detection at the problem. OpenCV is definitely not geared towards optical inspection, mostly because the industry would rather buy a library (and support for it) than pay developers to implement things in a free library.

edit flag offensive delete link more


Thank you. the matchShapes in openCV is for pattern matching but does not include any geometrical matching if I am right. do you know any module in openCV or elsewhere opensource for geometrical matching?

khlitoshi gravatar imagekhlitoshi ( 2020-12-01 06:44:24 -0600 )edit

I'm not sure what geometric matching entails. the closest I can imagine those things to work is by feature matching and estimation of a transform (affine or more restricted). OpenCV has feature point extraction and description, feature matching, and estimateAffinePartial2D

crackwitz gravatar imagecrackwitz ( 2020-12-01 10:53:33 -0600 )edit

for a "Bag of Visual Words" approach, maybe check this out it's a rather high-level description but may send you on the right path

crackwitz gravatar imagecrackwitz ( 2020-12-01 10:56:59 -0600 )edit

Question Tools

1 follower


Asked: 2020-11-30 08:27:11 -0600

Seen: 2,067 times

Last updated: Nov 30 '20