身体

2016-08-24 65 views
0

的发现颈肩点我需要找到图像的肩点(人体)需要帮助如何识别坐标,我可以使用ImageMagick,但有困难得到人体的边缘寻找得到边缘后肩点A,B和颈部点C.身体

原始图像 Original Image

图片 Image after getting edges

+0

能否请您准确定义什么是你给 –

+0

@AmitayNachmani更新我的问题点a,b和c的图像上。 – alianjum0

回答

0

从上到下逐行扫描您的边缘图像。对于每一行计算第一个边缘像素与最后一个像素之间的长度。

行是你在长度大的变化是C点

后,你发现C点的长度开始以线性的方式去与一些斜率m当坡度变化非常剧烈时你遇到与肩膀点的行。你可能需要为每一边分别计算这个斜率。

0

尝试使用Image Magick形态学方法处理输入图像。详细的例子是here。下面的脚本会缩小尺寸并将图像限制为2bpp位图,然后它会尝试关闭所有间隙并绕过形状。之后创建一个骨架,其中包含有关我们形状的一般信息。最后使用命中和遗漏内核来搜索特定的行结束符。在这种情况下,对角线的。输出是一组带有点的图像。但是,您可以使用Image Magick的identify来打印像素位置。我还假设或多或少你知道肩膀在哪里,并且可以在图像的其他部分丢弃点。的C-点,识别颈部可以从A和B

convert -resize 25% input.jpg -negate -normalize -colorspace gray -threshold 20% -trim +dither v.png 
convert v.png -morphology Close Disk x.png 
convert x.png -morphology Thinning:-1 Skeleton:2 y.png 
convert y.png -morphology HMT 'LineEnds:2;LineEnds:2>>' z.png 

enter image description here

我用IM v.6.7.9作为我有V7一些问题外推。