关于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__)

  之后,测试代码自动提示,成功

pycharm opencv 代码提示

结束

 

posted @ 2018-11-27 00:53  零一样的存在  阅读(33096)  评论(0编辑  收藏