典型的 python工具链 为:
- 使用PIL读取图像
- 将它们转换成Numpy数组
- 使用Scipy的图像过滤器(线性和等级,形态)来实现您的解决方案
至于 形状的区别
,我将通过查看背景的形状来获得其轮廓。然后,我将使用角点检测算法(例如,Harris)来检测角点的数量。三角形有3个角,正方形有4个,无笑脸。这是Scipy的Harris拐角检测的python
实现。
编辑:
正如您在评论中提到的那样,博客文章中没有介绍产生算法所需的高斯核的函数。这是Scipy
Cookbook中此类功能的示例(btw的参考资料):
def gauss_kern(size, sizey=None): """ Returns a normalized 2D gauss kernel array for convolutions """ size = int(size) if not sizey: sizey = size else: sizey = int(sizey) x, y = mgrid[-size:size+1, -sizey:sizey+1] g = exp(-(x**2/float(size)+y**2/float(sizey))) return g / g.sum()
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)