Windows下Opencv+gstreamer编译安装

win下python可直接pip install opencv,但是由于官方提供的编译包为基础包,不包含cuda、gstreamer等特殊功能,所以需要自行编译安装。

编译准备:

下载:visual studio (最好2019版);cmake gui或MinGW(自动cmake工具);

everything(查找依赖位置)

dependenciesgui、processMonitor(查看文件、进程依赖关系,分析dll依赖)

安装gsteramer-runtime和gsteramer-development,下载以下文件,会自动安装到当前盘的同一路径下(版本可能与opencv存在依赖关系)

21c37f374d214597b49c11ccfd25e4bc.png

需要具备魔法。

下载opencv包源码,版本最好与python版本不冲突。可选择下载opencv_contrib.

建议在conda环境下工作,否则后续使用其它版本时麻烦。

  1. 下载好gstreamer后,将该软件目录添加到环境变量

  2. 在opencv源码下建立build文件夹

  3. cmakegui中添加源码文件和build文件夹,configure选择对应的visual studio版本,其它默认

  4. 自动执行cmakeLists.txt文件中的指令。如果网不好会在github上下载文件失败,导致生成失败

  5. 在cmakedownload.txt中自行查找下载的文件,并根据链接自行下载完,放置在build.cache文件夹下指定目录。全部下载完后重新configure并成功生成。(也可使用魔法)

  6. 配置自己需要的编译内容,查看gstreamer部分是否成功识别、python路径是否正确,确认无误后点击configure,全部变白色

  7. 点击generate,生成visual studio工程文件,在里面选择release x64模式,点击CmakeTargets\INSTALL build

  8. 会自行编译生成指定文件,并安装至指定位置。

  9. 对于python版本大于3.8,无法从系统环境变量读取dll,小于3.8版本的,将编译生成的opencv\build\install\x64\vc64\lib和bin目录添加到PATH环境变量,之后成功import cv2

  10. 出现import cv2找不到dll的问题,需要使用依赖分析工具分析cv2.cp310-win_amd.pyd文件依赖关系,将缺失的依赖添加到python可以找到的位置。或使用os命令添加:

    import os
    os.add_dll_directory("D:\\build\\opencv\\4_7_0\\cuda_12_D\\bin")
    import cv2

    全部添加后,可成功import cv2

  11. 将dll的位置加入site-packages\cv2\config.py文件下,即可自动导入。

  12. 测试opencv

    import cv2
    import numpy
    print(cv2.__file__)
    print(cv2.getBuildInformation())
    def show_img(name,img)
        cv2.imshow(name,img)
        cv2.waitKey(0)
        cv2.destroyAllWindows()
    img = cv2.imread(path)
    show_img(img)

     

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值