要使用哪些功能描述符?为什么?

时间:2015-02-17 23:47:51

标签: opencv computer-vision feature-detection sift object-detection

我喜欢计算民用飞机驾驶舱内摄像机的位置和方向。

我确实使用LED作为固定点。我的计划是保存与LED相关的X,Y,Z位置。

如何检测和识别我的图像上的LED?我应该使用哪个特征描述符和特征点提取器?

如何在功能检测之前修改图像?

我喜欢保持高效率。

1 个答案:

答案 0 :(得分:1)

----请停止投票这个问题---- 现在在找到问题的解决方案之后,我意识到这个问题可能过于笼统。 无论如何支持其他人googeling我将描述我的答案。

通过OpenCVs功能的组合,我创建了一个掩模,其中包含LED可以是白色的区域。图像的其余部分是黑色的。这些函数例如是Core.range,Imgproc.dilate和Imgproc.erode。还有Imgproc.findcontours我过滤掉了太大或太小的轮廓。用于组合掩码的还有Core.bitwise_and或Core.bitwise_not。 根据HSV颜色空间中的图像计算掩模作为输入。

让这些面具具有潜在的LED区域,我会计算颜色直方图,其中强度标准化的rgb颜色。 (顺化对我来说不够好)。这些直方图使用一组带注释的输入图像进行训练和标准化,并代表我的描述符。

我使用直方图交集将训练的描述符与应用程序中的计算onces匹配。

所以我接受了距离测量。使用这些测量的阈值,实际LED的几何位置的测量和知识我将贴片转换为图形系统,这有助于我找到最长的潜在LED链。 enter image description here enter image description here enter image description here