加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

c – 使用OpenCV的对象检测项目

发布时间:2020-12-16 09:48:59 所属栏目:百科 来源:网络整理
导读:我正在尝试使用OpenCV为我的最后一年项目制作一个对象识别软件.在对这个领域进行了大量研究之后,我发现行动计划应该是这样的: 从许多图像中提取特征. 从提取的要素中创建训练数据集. 标记数据集. 使机器从数据集中学习. 测试模型. 我从一张图片开始.我能够
我正在尝试使用OpenCV为我的最后一年项目制作一个对象识别软件.在对这个领域进行了大量研究之后,我发现行动计划应该是这样的:

>从许多图像中提取特征.
>从提取的要素中创建训练数据集.
>标记数据集.
>使机器从数据集中学习.
>测试模型.

我从一张图片开始.我能够使用SurfCoatureDetector类的OpenCV(样本中给出的simple_matcher.cpp程序)从图像中提取特征.我使用以下代码将检测到的KeyPoints保存在XML文件中:

SurfFeatureDetector detector(400);
vector<KeyPoint> keypoints1,keypoints2;
detector.detect(img1,keypoints1);
detector.detect(img2,keypoints2);
FileStorage fs("test.xml",FileStorage::WRITE);
write(fs,"data",keypoints1);

现在我陷入了困境.我无法理解如何从这些功能创建训练数据集?我的下一步应该是什么?或者,我的行动计划是否正确?

提前致谢.

解决方法

您可能需要执行以下步骤.

>找出并想要使用的特征检测和提取算法(SIFT,SURF,ORB,还有更多).
>检测并提取功能.您应该在xml文件中存储从描述符提取器中提取的描述符.
>将这些描述符添加到培训师(如bowtrainer)以创建字典.
>训练你的分类器

您可以找到许多示例here,如果您想在项目中实现类似的功能,可以观看this视频.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读