Algorithm 什么是最快的边缘检测方法?
我正在考虑为工业问题实施一个基于图像处理的解决方案 该图像由一个红色矩形组成。在里面我会看到一个圆形矩阵。要求是在以下约束条件下计算圆的数量。(实际应用:数一数瓶子外壳中的瓶子数量。是否有丢失的瓶子??)Algorithm 什么是最快的边缘检测方法?,algorithm,performance,graphics,image-processing,edge-detection,Algorithm,Performance,Graphics,Image Processing,Edge Detection,我正在考虑为工业问题实施一个基于图像处理的解决方案 该图像由一个红色矩形组成。在里面我会看到一个圆形矩阵。要求是在以下约束条件下计算圆的数量。(实际应用:数一数瓶子外壳中的瓶子数量。是否有丢失的瓶子??) 手术所需的时间应该很短 我还需要检测红色矩形。我的目标是数一数 包装中的项目,并且没有 触发故障的机构(传感器) 照相机。所以摄像机需要捕捉 照片连续不断,但是 程序应该有一种丢弃的方法 不必要的图像 处理应该是实时的 图像捕获中可能存在“噪声”。您可能会看到椭圆形而不是圆形 我的问题如下:
- 对于圆,请尝试Hough变换
- 其他机制:不知道
- 编译语言可能会更快
实际上,做更多的研究,是SIFT的一个改进版本,有很多可用的实现,请查看维基百科页面上的链接。Surf/SIFT=overkill在这种情况下,您当然不需要它 如果您想要实时速度(800x600图像上约20fps+),我建议使用来实现边缘检测,使用标准的过滤器方案,如,然后实现二值化+,以确保圆的边缘不被分割 最难的部分将是拟合圆。这是假设您已经到了提取边缘的步骤,并确保使用图像闭合(形态学)将它们连接起来。此时,我将按照以下步骤进行操作:
最后,我相信下面的Kenny已经找到了最佳解决方案:blob分析
“数一数瓶盖中的瓶子数” 单个瓶子是否位于“插槽”中?即,有4x3=12个孔,每个瓶子一个 换句话说,你“只”需要确定12个孔中的每个孔中是否有一个瓶子 对吗 如果是这样的话,你的问题比“任何地方”一堆瓶子的一般问题要简单得多 很简单,我们从哪里看到瓶子?顶部、侧面、底部或底部?我们总是看到顶部/底部吗