Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/cplusplus/126.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用通用网络摄像头进行目标检测 这是我的任务,我想尽可能少的努力(最好是QT+C++或java):我想用摄像头来检测镜头前面是否有(或更多)板条箱。当摄像机向我的应用程序发送视频信号时,场景可以从“清晰”变为“镜头前有一个板条箱”和“镜头后有一个板条箱”。对于原型测试/学习,我有2-3张“空”场景的图像,以及2-3张带有一个或多个板条箱的图像_Java_C++_Object_Opencv_Detection - Fatal编程技术网

使用通用网络摄像头进行目标检测 这是我的任务,我想尽可能少的努力(最好是QT+C++或java):我想用摄像头来检测镜头前面是否有(或更多)板条箱。当摄像机向我的应用程序发送视频信号时,场景可以从“清晰”变为“镜头前有一个板条箱”和“镜头后有一个板条箱”。对于原型测试/学习,我有2-3张“空”场景的图像,以及2-3张带有一个或多个板条箱的图像

使用通用网络摄像头进行目标检测 这是我的任务,我想尽可能少的努力(最好是QT+C++或java):我想用摄像头来检测镜头前面是否有(或更多)板条箱。当摄像机向我的应用程序发送视频信号时,场景可以从“清晰”变为“镜头前有一个板条箱”和“镜头后有一个板条箱”。对于原型测试/学习,我有2-3张“空”场景的图像,以及2-3张带有一个或多个板条箱的图像,java,c++,object,opencv,detection,Java,C++,Object,Opencv,Detection,你知道如何处理这项任务吗?我发现了OpenCV,但是对于这个简单的任务来说,这个框架不是太庞大了吗?我是计算机视觉领域的新手。这通常是一项艰巨的任务,还是检测实时进给中凸轮前方是否有障碍物既简单又可靠?非常感谢您的专家意见 你不需要一个完整的计算机视觉库来检测摄像机前面是否有板条箱。您只需拍摄快照并制作颜色直方图(简单)。要捕获快照,请查看以下内容: 这里有很多变量,包括环境照明的任何可能变化以及视野中的任何其他活动。看一看如何实现一个Canny边缘检测器(OpenCV有,Intel Perf

你知道如何处理这项任务吗?我发现了OpenCV,但是对于这个简单的任务来说,这个框架不是太庞大了吗?我是计算机视觉领域的新手。这通常是一项艰巨的任务,还是检测实时进给中凸轮前方是否有障碍物既简单又可靠?非常感谢您的专家意见

你不需要一个完整的计算机视觉库来检测摄像机前面是否有板条箱。您只需拍摄快照并制作颜色直方图(简单)。要捕获快照,请查看以下内容:


这里有很多变量,包括环境照明的任何可能变化以及视野中的任何其他活动。看一看如何实现一个Canny边缘检测器(OpenCV有,Intel Performance Primitives也有)来寻找感兴趣形状的轮廓。如果你知道盒子的位置,你也许可以对感兴趣区域的像素求和。如果长方体可以出现在视野中的任何位置,这将更具挑战性。

我听说过一种方法,它可能会取得一些成功:

  • 对图像执行边缘检测,将其转换为黑白图像,从而边缘显示为黑色像素
  • 现在创建一个直方图来记录图像中每个垂直像素列中黑色像素的频率。这里的理论是,一个桶内或周围直方图中的高频值表示垂直边缘,可能是板条箱的边缘

也可以考虑第二直方图来测量图像的每一行的像素。< /P>


显然,这是一个相当简单的方法,高度依赖于“简单”的输入;i、 e.空白背景下带有“硬”边的普通框(最好是与框形成强烈对比的背景)。

这不应该从Java开始。当我遇到此类问题时,我会从Matlab(OpenCV库)或类似的东西开始,看看解决方案是否在那里有效,然后将其移植到Java

为了回答你的问题,我做了一些类似的事情,将“参考”图像(在你的例子中没有板条箱)与当前图像进行异或运算,然后要么处理直方图(右侧聚集的像素意味着很大的差异),要么将可见像素相加,并与阈值进行比较。XOR不是很精确,但速度很快

我的观点是,我花了2个小时安装Scilab和工具包,并编写了概念验证。如果第一个解决方案不能在每个附加算法(已经在Mat-/Scilab中完成)中工作,那么我将在Java中花费两天的时间,然后再花几个小时。我知道你从错误的角度来处理这个问题


如果Java/C++真的只是一些简单的工具,不重要,那么就放弃它们,使用Scilab或其他一些Matlab克隆-原型制作和微调会快得多。

目标检测涉及两个部分。一种是特征提取,另一种是相似度计算。板条箱的一些明显特征是几何、边缘、纹理等


所以你可以找到一些算法从你的板条箱图像中提取这些特征。然后将这些功能与您的训练样本图像进行比较。

祝您好运。大多数此类应用程序是在大学自定义生成的。公司生产的所有软件要么是专有的,要么是出售的。在谷歌搜索“对象识别库开源”。