关于python环境下的opencv安装
吐槽:
这一天我终于记起了这个博客。今天搞python环境下的opencv,又弄了一天,很烦躁。之前配置VS的opencv也是花了好久的时间,然后突然发现之前记录在电脑上的文档都找不到了,于是决定还是写写博客吧,之后应该会把之前做过的一些东西也发上来,以作保存。这篇兴致所作,写的就随意些了。
环境:
直接上环境。
- 操作系统:win7 64位
- 语言:python3.6.3
- 库:opencv-python-3.4.3.18, opencv-contrib-python-3.4.3.18
- IDE: PyCharm
安装:
其实python下安装opencv相当简单,直接用pip安装就行了
pip3 install opencv-python
安装好后,随意写了个简单的demo可以用了
import cv2 if __name__ == '__main__':
video = cv2.VideoCapture("seq_hotel.avi")
ok, frame = video.read()
if ok:
cv2.imshow("tracker", frame)
while True:
ok, frame = video.read()
if ok:
cv2.imshow("tracker",frame)
k = cv2.waitKey(1) & 0xff
if k == 27:
break
装这个本来是要试一下python下opencv的tracker的,运行发现提示cv2 'module' object has no attribute 'Tracker_create',之前有用过c++的,所以知道是少了contrib,于是,继续pip
pip3 install opencv-contrib-python
这样配置后,代码可以运行了(其实并不可以,这里很奇怪,按理来说,应该没什么问题,pycharm下配置Interpreter也ok了,但是不知道我哪一步误操作了,然后我把opencv都uninstall了,在https://www.lfd.uci.edu/~gohlke/pythonlibs/上下了对应版本的opencv_python-3.4.4+contrib-cp36-cp36m-win_amd64.whl安装,也是通过pip安装,之后代码就可以运行了,但是真正的坑才开始)
Tracker的代码跑起来了,很开心,但是发现pycharm关于cv2没有代码提示,这不能忍啊!于是开始了漫长的搜索之旅。查了发现几乎都是用Anaconda,然而我不是很喜欢用它啊,但看到这篇https://blog.csdn.net/qq_36735489/article/details/82110972感觉有点靠谱,虽然好像也是Anaconda的,不过没关系,python安装目录下也有Lib\site-packages,在这下面找到cv2\__init__.py改一下嘛。居然没有!!!然后我又花了半天时间查,最后没找到解决办法,决定重装原来的opencv,于是卸了再装,之后,发现有\Lib\site-packages\cv2这个目录,找到__init__.py,修改如下:
import sys
import os
import importlib
os.environ["PATH"] += os.pathsep + os.path.dirname(os.path.realpath(__file__))
from .cv2 import *
from .data import * # wildcard import above does not import "private" variables like __version__
# this makes them available
globals().update(importlib.import_module('cv2.cv2').__dict__)
之后,测试代码自动提示,成功

结束
关于python环境下的opencv安装的更多相关文章
- python MySQLdb在windows环境下的快速安装
python MySQLdb在windows环境下的快速安装.问题解决方式 使用python访问mysql,需要一系列安装 linux下MySQLdb安装见 Python MySQLdb在Linux下 ...
- windows下多Python环境指定pip安装模块到对应Python环境下
专栏:Python基础教程目录 专栏:使用PyQt开发图形界面Python应用 专栏:PyQt入门学习 老猿Python博文目录 老猿在windows下装了2套Python,一套是直接安装的Pytho ...
- Python环境下NIPIR(ICTCLAS2014)中文分词系统使用攻略
一.安装 官方链接:http://pynlpir.readthedocs.org/en/latest/installation.html 官方网页中介绍了几种安装方法,大家根据个人需要,自行参考!我采 ...
- python环境下实现OrangePi Zero寄存器访问及GPIO控制
最近入手OrangePi Zero一块,程序上需要使用板子上自带的LED灯,在网上一查,不得不说OPi的支持跟树莓派无法相比.自己摸索了一下,实现简单的GPIO控制方法,作者的Zero安装的是Armb ...
- Azure REST API (4) 在Python环境下,使用Azure REST API
<Windows Azure Platform 系列文章目录> 之前遇到的项目中,客户需要在Python环境下,监控Azure VM的CPU利用率,在这里简单记录一下. 笔者的环境是Win ...
- Windows环境下 PyQt5 如何安装MySql驱动 (PyQt5连接MYSQL时显示Driver not loaded解决方案)
参考文章: https://blog.csdn.net/qq_38198744/article/details/80261695 前文说过如何在Ubuntu环境下 为PyQt5 安装MySql驱动, ...
- Python环境搭建和pycharm安装
Python环境搭建和pycharm安装 本人安装环境为Windows10系统,下载的Python版本为3.4社区版本,可参考 1.下载Python3.4版本 官网:https://www.pytho ...
- Linux环境下NodeJS的安装配置(HelloWorld)
Linux环境下NodeJS的安装配置(HelloWorld) 最简单的环境安装,测试helloworld.给初学者!! 安装脚本,请仔细阅读逐行执行: #!/bin/bash #检查是否已经安装 r ...
- 图像处理基本工具——Python 环境下的 Pillow( PIL )
由于笔者近期的研究课题与图像后处理有关,需要通过图像处理工具对图像进行变换和处理,进而生成合适的训练图像数据.该系列文章即主要记录笔者在不同的环境下进行图像处理时常用的工具和库.在 Python 环境 ...
随机推荐
- SQL注入是什么?如何防止?
SQL注入是什么?如何防止? SQL注入是一种注入攻击,可以执行恶意SQL语句.下面本篇文章就来带大家了解一下SQL注入,简单介绍一下防止SQL注入攻击的方法,希望对大家有所帮助. 什么是SQL注入? ...
- 190906mysql常用语法
1.创删数据库: create database mydb; 复杂一点可以设置字符集和校对规则:create database mydb character set gbk collate gbk_c ...
- JavaScript 中 var 和 let 和 const 关键字的区别
var与let.const的区别 在最新的 ES6 中,新添加了两个用于变量声明的关键字 let 和 const 一.var声明的变量会挂载在window上,而let和const声明的变量不会: va ...
- kali系统无法使用ll命令
ll命令:也就是ls -l的缩写方式. 重装kali系统之后,发现无法使用ll命令了,于是写一个笔记记录一下如何添加ll命令. 解决方法: vim ~/.bashrc 将alias ll=’ls -l ...
- MySql 数据库 SQLException: The user specified as a definer ('root'@'%') does not exist 错误原因及解决办法
The user specified as a definer ('root'@'%') does not exist 此种报错主要是针对访问视图文件引起的(没有权限) 经查明:是用户root并没有获 ...
- Linux下卸载mysql8.x版本
一.停止MySQL [root@localhost /]# service mysqld stop 二.查看当前安装mysql情况,查找以前是否装有mysql [root@localhost /]# ...
- Robot Framework--接口实例一
需求:api/car/detail/recommendcar.json 接口返回的车辆数量少于等于20且车辆不能重复 分析:统计接口中返回的列表的长度,再把carid拿出来组成一个新的列表,判断这 ...
- singleton单例模式小结
1.饿汉模式 public class SingletonEntity2 { // 在类加载的时候创建对象:饿汉模式 public static SingletonEntity2 obj = new ...
- mysql中一个字段升序,另一个字段降序
mySql中,升序为asc,降序为desc.例如: 升序:select * from 表名 order by 表中的字段 asc(mysql中默认是升序排列,可不写) 降序:select ...
- js手机点击图片放大
点击每个图片获取到对应的img的url链接,再把链接给一个空img以此来实现 最终效果: