当前位置: 首页 > 知识库问答 >
问题:

基于OpenCV-haarcascade-xml的Viola-Jones检测算法

姜乐家
2023-03-14

我正试图实施维奥拉·琼斯探测器。因为我没有足够的图像或时间来训练分类器,所以我决定使用这些OpenCV。

到目前为止,我能够将整个haarcascade_frontface_alt.xml加载到内存中的结构中,创建用于快速面积和的积分图像,并创建检测器的基本算法。但它并没有像预期的那样发挥作用。

因此,如果有人知道Viola Jones检测器是如何工作的,并且知道OpenCV是如何使用其结构的,请确认或否认我的假设:

1,积分图像是以0范围内的浮点值计算的-

到目前为止,我得到了各种各样的检测区域,除了那些包含人脸的区域...

如果我对openCV级联使用的假设是错误的,请帮助。谢谢。

共有1个答案

金赤岩
2023-03-14

>

如果和*逆面积

我建议您查看高级OpenCV端口,例如用Java或js objectdetect编写的JCV端口,用于基于树桩的级联,尤其是computeSat()DetectIngleScale()和Haar。用于非树桩级联的js都是用JavaScript编写的,以更好地理解该算法。优化的OpenCV C/C代码有点难以阅读。

 类似资料:
  • 本文向大家介绍基于OpenCv的运动物体检测算法,包括了基于OpenCv的运动物体检测算法的使用技巧和注意事项,需要的朋友参考一下 基于一个实现的基于OpenCv的运动物体检测算法,可以用于检测行人或者其他运动物体。 以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持呐喊教程。

  • 我想用OpenCV fullbody Haar Cascades检测图像中的人体。这是我的代码: 结果如下: 后果 如您所见,我的代码没有检测到图像中的整个人体。 顺便说一句,我是OpenCv的新手,这是我在这里的第一个问题,所以如果我做错了什么,请纠正我,我希望有人能帮助我纠正我的代码。 抱歉英语不好;)。

  • 我需要一个我一直在工作的算法的帮助。我试图检测阈值图像中的所有线条,检测所有线条,然后只输出那些平行的线条。阈值图像输出我感兴趣的对象,然后我通过canny边缘检测器过滤该图像。然后,该边缘图像通过概率Hough变换。现在,我希望该算法能够检测任何图像中的平行线。我想通过检测所有直线的坐标并计算它们的斜率(然后是角度)来实现这一点。平行线必须具有相同或几乎相同的角度,这样我只能输出具有相同角度的线

  • 我正在尝试使用opencv 4 android sdk检测矩形文档。首先,我试图通过查找轮廓来检测它,但它不适用于多色文档。您可以查看此链接以获得更好的想法:使用OpenCV4Android检测多色文档 我做了很多研究,发现可以用houghline变换来完成。所以我按照以下方法检测文档: 原始图像- 我对hough线变换所做的是: 从上面的水平线和垂直线列表中,我找到了以下交叉点: 从这四个交点我

  • 我对OpenCv和tesseract相当陌生。我最近正在建立一个使用计算机视觉检测门标签的项目。希望这对视障群体有益。 该方案的思想是对输入图像进行二值化预处理,然后用canny边缘检测门牌轮廓,最后对canny边缘结果进行扩展。之后,将图像输入到tesseract,同时尝试显示用方框检测到的文本。 预期结果是文本上的绿色矩形。同时打印出文本本身。 问题是缺少矩形和文本检测失败。 我尝试过这些:

  • 本文向大家介绍Opencv基于CamShift算法实现目标跟踪,包括了Opencv基于CamShift算法实现目标跟踪的使用技巧和注意事项,需要的朋友参考一下 CamShift算法全称是“Continuously Adaptive Mean-Shift”(连续的自适应MeanShift算法),是对MeanShift算法的改进算法,可以在跟踪的过程中随着目标大小的变化实时调整搜索窗口大小,对于视频序

  • 我试图用JAVA开发一个应用程序,它将检查用户输入的信用卡号是否有效。 下面是检查模数10的步骤: 步骤1:从右到左每秒数字加倍。如果一个数字的倍增导致一个两位数,则将这两个数字相加得到一个个位数。 步骤4:求和步骤2和步骤3的结果 步骤5:如果步骤4的结果可被10整除,则卡号有效;否则无效。在这种情况下,卡号无效--因为75不能被10整除。 到目前为止,我的问题是,我尝试的每一个卡号(使用有效的

  • 本文向大家介绍Python基于opencv的图像压缩算法实例分析,包括了Python基于opencv的图像压缩算法实例分析的使用技巧和注意事项,需要的朋友参考一下 本文实例讲述了Python基于opencv的图像压缩算法。分享给大家供大家参考,具体如下: 插值方法: CV_INTER_NN - 最近邻插值, CV_INTER_LINEAR - 双线性插值 (缺省使用) CV_INTER_AREA