欢迎您访问365答案网,请分享给你的朋友!
生活常识 学习资料

安装opencv踩坑笔记

时间:2023-05-31
文章目录

前言一、下载安装opencv库二、找到级联分类文件


前言

原本只是记录下如何安装及找到级联分类器xml文件的,结果发现坑还很多…
全部重新写过

一、下载安装opencv库

因为Wall的存在,所以正常的安装方法是不可能的, 一点也不Great。
从国内镜像网站下吧,阿里或清华都行。想想也挺悲哀的,堂堂国内国际一顶流学府,被迫搞此营生。

重点:opencv 分核心版(opencv-python)和加强版(opencv-contrib-python)

要使用某些高级功能,比如人脸识别,就必须装加强版(opencv-contrib-python), 否则会收到类似module ‘cv2’ has no attribute 'face’的提示recongizer_eigenface = cv2.face.EigenFaceRecognizer_create()

上面讲的是人脸识别,跟人脸检测不是一个概念。 检测用xml级联分类器就行了,它只能判断有没有人脸(或猫脸等)、它不能分辨(识别)出人脸的归属。

阿里、清华下载链接各放一个备用:
opencv-python清华镜像
https://pypi.tuna.tsinghua.edu.cn/simple/opencv-python/
opencv-contrib-python阿里镜像下载地址 https://mirrors.aliyun.com/pypi/simple/opencv-contrib-python/

核心版和加强版的区别
找文章研究了一下,contrib版包含一些第三方版权的算法和研发中的功能。
如果先装了opencv, 发现其实应该装opencv-contrib, 有文章讲说要先卸载opencv 再装opencv-contrib、实践下来大可不必。直接装就是了。
仔细对比了一下两个安装包,发现唯一的差别就在于一个pyd文件。
所以怀疑甚至都不用重装,替换这个文件也许就够了。

不过安装opencv-contrib-python版与安装opencv-python版还是有一点点区别。在Anaconda下,contrib版装完会在site-packages 下生成cv2目录。而opencv-python版是不会生成目录的(4.5.4,Windows 64bit)、而且contrib版会把安装包中的几个目录全部解出来,而opencv-python版不会。

二、找到级联分类文件

【更新:如果是安装的opencv-contrib-python版,就不会有这个问题】
pip安装opencv后,是没有把data下的xml文件放到site-packages下的.
以Anaconda下安装4.5.4.60 为例,在libsite-packages下只会有一个opencv_python-4.5.4.60.dist-info目录,里面没什么有用的文件。如果是4.0.1版,则压根都没有任何目录被创建。

找级联文件化了不少时间,结果发现得来全不费功夫,在whl安装文件里其实就有。
whl文件其实是一个压缩文件,用解压缩软件打开,就可以看到。自建一个目录,解压出来就行了。

Copyright © 2016-2020 www.365daan.com All Rights Reserved. 365答案网 版权所有 备案号:

部分内容来自互联网,版权归原作者所有,如有冒犯请联系我们,我们将在三个工作时内妥善处理。