形状之间的比较 [英] comparison between shapes

查看:120
本文介绍了形状之间的比较的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

是否有用于比较两个图像的算法或代码,如果两个图像中的形状相似,则返回该算法或代码.
例如,两个图像都具有手感,但是两个形状在大小上并不相似,但是它们的特征却相似.

is there an algorithm or code for comparison between two images that return if the shapes in the two images are similar.
for example the two images have a hand shap but the two shapes are not similar in their sizes but their characteristics are similar.

推荐答案

我强烈怀疑是否存在公共领域,通用的算法,可以满足您的需求.太简单了,太专业了.

话虽如此,但我会用Google进行自动指纹和/或人脸识别,这会带来类似的挑战,而且有人可能已经发表了有关其解决方案的论文.
您面临的挑战是找到一种方法来提取有关特征的信息-面孔,指纹,手形都可以由特征来表征-眼睛间距,嘴巴宽度,从眼睛中线到嘴巴的高度等.

假设您只想处理手,则可能需要提取以下特征:每个指尖的位置,手指网,每个手指(段)的宽度,每个指关节中点的位置,手腕的宽度,等

如果可以用不同的外观大小对同一只手进行成像,则对易于定位的功能(例如食指尖端与第一指/食指腹板之间的距离)进行归一化处理,将为您提供一对相同比例的图像. >
就像上面的评论所说,如果您的图像是矢量图像,那么您就在中间.如果您有位图,则必须首先应用边缘检测算法(您可以可以找到现成的算法).

指尖检测需要检测手轮廓的内部和外部,然后识别成对的(大致平行)手指对线.这些给出了手指的方向;那么尖端就是手指弯曲末端上在手指中线方向上具有最大程度的点.

玩得开心.听起来您的项目很有趣.
I strongly doubt that there are public domain, general purpose, algorithms that will do what you want. It''s simply too complex and too specialized.

That said, however, I would google automated fingerprint and/or face recognition, which presents similar challanges, and someone may have published a paper on their solution.

The challenge you face is to find a way to extract information about features - faces, fingerprints, hand shapes can all be characterized by features - eye separation, mouth width, height from eye mid-line to mouth, etc.

Assuming you''re just wanting to process hands, you probably need to extract features such as: location of each fingertip, finger web, width of each finger (segment), perhaps location of mid-point of each knuckle, width of wrist, etc.

If the same hand can be imaged at different apparent sizes, then normalizing on an easy to locate feature - such as distance between index finger tip and first/index finger web - will then give you a pair of identically-scaled images.

As the comments above say, if your image is a vector image, you''re half way there. If you have a bitmap, you''ll have to apply an edge detection algorithm (which you can find off-the-shelf) first.

Fingertip detection requires detecting the inside and outside of the hand outline, then identifying the pairs of (roughly parallel) lines that are the sides of fingers. These give a finger direction; the tip is then the point on the curved end of the finger that has the greatest extent in the direction of the finger midline.

Have fun. Sounds like you have an interesting project.


这篇关于形状之间的比较的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆