我正在寻找一个网站来下载 haar cascades xml 文件。它可以用于任何对象,只要它是一个正常工作的级联。
12 回答
转到 opencv 文件夹并检查数据文件夹。你会发现眼睛、脸、耳朵、上半身的 haar-cascades...:) 而且它们确实工作正常。
这是一个站点 http://alereimondo.no-ip.org/OpenCV/34/ 不知道它们是否有效。
由于上一个答案中的链接似乎已失效,您也可以尝试从此处的 OpenCV GitHub 存储库下载它们
如果您使用来自 python 的 opencv,则可以使用此代码片段来使用内置的 haar 级联:
import os
import cv2
cv2_base_dir = os.path.dirname(os.path.abspath(cv2.__file__))
haar_model = os.path.join(cv2_base_dir, 'data/haarcascade_frontalface_default.xml')
无论你在哪里克隆了opencv-contrib
(如果你是从源代码中克隆的),之后都遵循这条路径,在 OpenCV3.1.0 中我有Python
这些Ubuntu16
:
mona@mona:~/computer_vision/face_detection/opencv_contrib/modules/face/data/cascades$ ls
haarcascade_mcs_eyepair_big.xml haarcascade_mcs_nose.xml
haarcascade_mcs_eyepair_small.xml haarcascade_mcs_rightear.xml
haarcascade_mcs_leftear.xml haarcascade_mcs_righteye_alt.xml
haarcascade_mcs_lefteye_alt.xml haarcascade_mcs_righteye.xml
haarcascade_mcs_lefteye.xml haarcascade_mcs_upperbody.xml
haarcascade_mcs_mouth.xml
在openCV的官方repodata
文件夹中:https ://github.com/opencv/opencv/tree/master/data
请记住:不是每个人都使用最新版本的 openCV,因此您可以通过 git repo 中的标签选择库的版本。
干杯
在 opencv 3.1 你可以找到
C:\opencv3\data\lbpcascades
C:\opencv3\data\haarcascades_cuda
C:\opencv3\opencv_contrib-master\modules\face\data\cascades
在寻找 HAAR Cascades 时,降落在这里 - 似乎这个链接应该帮助我们所有人搜索/创建我们自己的 HAAR + HOG ---
http://web.missouri.edu/~duanye/course/cs8680-fall-2016/lecture-notes/HoG.pdf
PS:- 我正在寻找一个 HAAR 级联 - 为 HUMAN Head [发际线,耳朵等] 请指导 - 自己已经到达这里 -
https://github.com/Computer-Vision-Dhankar-Rohit/Computer-Vision---Open-Source_1
您无需去其他网站查找级联分类器文件。你只需要去 opencv 发布站点。那里下载适当的发行版。然后打开下载的文件。在那里直接如下:来源>数据> haarcascades;在该文件中,您应该找到所有默认的 haarcascade 文件。
这是从 github 链接下载 haar-cascade-files 的直接链接:-
https://github.com/anaustinbeing/haar-cascade-files
只需克隆或下载为 zip 即可获取所有 haar 级联 xml 文件
如果您想从GITHUB分叉 OpenCv 文件: https ://github.com/opencv/opencv/tree/master/data/haarcascades
或者,您可以从以下位置下载 zip 文件:
https://github.com/manishsingh7163/OpenCv-Haarcascade-XML-files
这就是我用git v2.25.0做的,也用 v2.26.2 测试过。此技巧不适用于 v2.30.1
TLDR
git clone --no-checkout --filter=tree:0 https://github.com/opencv/opencv
cd opencv
# requires git 2.25.x to 2.26.2
git sparse-checkout set data/haarcascades
您可以使用Docker来避免安装特定版本的 git
git clone --no-checkout --filter=tree:0 https://github.com/opencv/opencv
cd opencv
# requires git 2.25.x to 2.26.2
docker run --rm -it -v $PWD/:/code/ --workdir=/code/ alpine/git:v2.26.2 sparse-checkout set data/haarcascades
完整的解决方案
# bare minimum clone of opencv
$ git clone --no-checkout --filter=tree:0 https://github.com/opencv/opencv
...
Resolving deltas: 100% (529/529), done.
# Downloaded only ~7.3MB , takes ~3 seconds
# du = disk usage, -s = summary, -h = human-readable
$ du -sh opencv
7.3M opencv/
# Set target dir
$ cd opencv
$ git sparse-checkout set data/haarcascades
...
Updating files: 100% (17/17), done.
# Takes ~10 seconds, depending on your specs
# View downloaded files
$ du -sh data/haarcascades/
9.4M data/haarcascades/
$ ls data/haarcascades/
haarcascade_eye.xml haarcascade_frontalface_alt2.xml haarcascade_licence_plate_rus_16stages.xml haarcascade_smile.xml
haarcascade_eye_tree_eyeglasses.xml haarcascade_frontalface_alt_tree.xml haarcascade_lowerbody.xml haarcascade_upperbody.xml
haarcascade_frontalcatface.xml haarcascade_frontalface_default.xml haarcascade_profileface.xml
haarcascade_frontalcatface_extended.xml haarcascade_fullbody.xml haarcascade_righteye_2splits.xml
haarcascade_frontalface_alt.xml haarcascade_lefteye_2splits.xml haarcascade_russian_plate_number.xml
参考
xml文件可以像这样直接从cv2访问
cv2.data.haarcascades
这是一个更详细的例子
face_cascade_name = cv2.data.haarcascades + 'haarcascade_frontalface_alt.xml'
face_cascade = cv2.CascadeClassifier()
if not face_cascade.load(cv2.samples.findFile(face_cascade_name)):
print("Error loading xml file")
exit(0)