关于在Conda创建的虚拟环境中安装好OpenCV包后,在Pycharm中依然无法使用且import cv2时报错的问题

news2024/11/26 20:01:09

如果你也掉进这个坑里了,请记住opencv-pythonopencv-python!!opencv-python!!!

不要贪图省事直接在Anaconda界面中自动勾选安装libopencv/opencv/py-opencv包,或者在Pycharm中的解释器已包列表界面选择“+”搜素opencv进行安装,因为以上两种方式安装的效果其实是一样的,安装好opencv或者py-opencv包后,在Anaconda和Pycharm中都能看到这两个包,但是导入“cv2”依然是报错的,它们根本不起作用,不知道具体原因。

解决办法pip install opencv-python

在Anaconda Prompt界面下,切换到你的虚拟环境,例如我设置的虚拟环境为OpenCV,然后输入

pip install opencv-python,直到安装成功,如下图:

这样,在Pycharm中就可以正常导入“cv2”不报错了。

同时在Pycharm中解释器的已安装包列表中,也能看到opencv-python,只不过在Anaconda已安装包列表中是看不到的。

以上方法,参考自为什么Anaconda安装了OpenCV,却调用不了它 - 知乎 (zhihu.com)


下面为我的安装环境,以及我范的错误(引以为戒,切勿模仿)。


环境介绍:我安装的Anaconda(22.9.0)和Pycharm(22.2.3社区版),并在Pycharm中创建项目,解释器选择Conda环境下的python解释器。

问题描述:在pycharm中安装opencv,只搜索到以下三个可安装的包,如下图:

在这里点左下角的安装软件包,安装好后,且安装的这两个包,在Anaconda可视化界面中也能看到,如下图:

从上面图中可以到安装的opencv或者py-opencv包的版本为4.6.0,而OpenCV当前最新的版本为5.0.0-pre,4.10.0-dev可能是4系列中的最后一个版本,而4.9.0应该是较为稳定的版本,如下图:

但是,这样以后在Pycharm中仍是报错的,上面安装的三个包根本就不起作用,导入“cv2”依然是报错的,表示没有这个包。

或许这就是个错误的方法,大家千万不要跟我一样偷懒,还是按照网上opencv的安装教程一步一步安装的好。

但是还得说一句:上面这个办法对安装opencv是无效的,但并不一定是没用的,例如安装上面opencv或者py-opencv这个包时,它会自动安装一些基础包或者它需要用到的包,例如Numpy这个包就是原来没有被它们捎带着装上的,而且装上以后就是直接能用的。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1650525.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Qt :信号与槽

信号与槽 信号介绍connect 函数使用connect 函数传参问题 定义槽(solt)函数方法一方法二 定义信号关键字 signals、emit 定义带参数的信号和槽参数个数不一致问题断开信号和槽的连接 disconnect lambda 表达式 信号介绍 Qt 中,信号会涉及三个…

上海个人购房提取公积金经历和注意事项(收藏不踩坑)

在前一篇文章中,我介绍了 2024 年 4 月 24 日上海个人购房个税退税经历,我于 4 月 27 日周六,顺利办理租房公积金提取业务,资金在业务办理完成后 10 分钟左右到账。通过本文分享办理过程的材料和注意事项,避免大家踩坑…

windows平台安装labelme

之前写过一篇文章也是关于在windows平台安装labelme的:《windows平台python版labelme安装与使用_labelme下载-CSDN博客》,随着软件与工具的更新换代,按照同样的方法最近在使用的时候出现了错误,出现创建虚拟环境失败,具…

专项技能训练五《云计算网络技术与应用》实训8-1:建立基于OpenvSwitch的GRE隧道

文章目录 建立基于OpenvSwitch的GRE隧道1. 使用VMware安装2个CentOS 7虚拟机,安装时记得都开启CPU虚拟化,第一台命名为“Docker”,第二台命名为“KVM”。2. 安装完虚拟机后,进入虚拟机,修改网络配置(onboot…

stable-diffusion-webui配置

源码地址 https://github.com/AUTOMATIC1111/stable-diffusion-webui.git报错Fresh install fail to load AttributeError: NoneType object has no attribute _id pydantic降级 pip uninstall pydantic pip install pydantic1.10.11记得要把clip-vit-large-patch14放在opena…

SSM+Vue+Element-UI实现教资考前指导系统

前言介绍 对于本教资考前指导系统的设计来说,系统开发主要是采用java语言技术,在整个系统的设计中应用MySQL数据库来完成数据存储,具体根据教资考前指导系统的现状来进行开发的,具体根据现实的需求来实现四六级在线考试系统网络化…

展开说说:Android线程池解析

何谓线程池?本人理解是存放和管理线程的一个容器。 线程池存在的意义是什么? 第一:前面博客提到过创建和销毁线程的操作本身是有性能开销的,如果把使用的线程对象存起来下次用的时候直接取出来用就省去了一次创建和销毁的成本&a…

Windows安装Cygwin

背景介绍 在Windows上安装Python包时,就算启用了指定的虚拟环境,安装都会被安装到系统的Python环境中,为了避免污染系统Python环境,所以决定在Windows上安装Cygwin使用Linux相关命令创建Python虚拟环境。 安装Cygwin 下载Cygwin安装包 我…

618挑选家用洗地机,需要注意哪些事项?有哪些家用洗地机值得买?

近年来,智能清洁家电越来越受到消费者的欢迎,洗地机作为清洁家电的新宠,凭借其集扫地、拖地、杀菌清洗于一体的强大功能,成为市场上的热销产品。那么,这类洗地机真的好用吗?怎么挑选到好用的家用的洗地机呢…

【DeepLearning.AI】吴恩达系列课程——使用ChatGPT API构建系统(持续更新中——)

目录 前言一、Language Models, the Chat Format and Tokens(LLM,交互形式)1-1、加载api-key1-2、使用辅助函数(即指令调整LLM)1-2、使用辅助函数(聊天格式)1-3、辅助函数修改(输出字…

Spring - 6 ( 9000 字 Spring 入门级教程 )

一: SpringBoot 配置文件 1.1 配置文件作用 配置文件通常是一个文本文件,其中包含了程序或系统的各种设置、选项和参数。比如C:\Users, C:\Windows 文件夹, 以及各种 .config, .xml 文件 配置文件主要是为了解决硬编码(代码写死&#xff0…

数据分析必备:一步步教你如何用numpy改变数据处理(6)

介绍: NumPy 广播(Broadcasting)是指当两个形状不同的数组进行运算时,NumPy 有能力灵活地改变其中某个(些)数组的形状从而使得运算可以正常进行。 广播的规则主要包括以下几点: 当一个数组是一个…

C语言----汉诺塔问题

1.什么是汉诺塔问题 简单来说,就是有三个柱子,分别为A柱,B柱,C柱。其中A柱从上往下存放着从小到大的圆盘,我们需要借助B柱和C柱,将A柱上的所有圆盘转移到C柱上,并且一次只能移动一个圆盘&#…

【区块链】智能合约简介

智能合约起源 智能合约这个术语至少可以追溯到1995年,是由多产的跨领域法律学者尼克萨博(NickSzabo)提出来的。他在发表在自己的网站的几篇文章中提到了智能合约的理念。他的定义如下:“一个智能合约是一套以数字形式定义的承诺&a…

我独自升级崛起一键下载 我独自升级崛起一键下载安装教程

将于5月8日向全球绽放的《我独自升级:崛起》,标志着动作角色扮演类游戏的新纪元。它深挖同名动漫与网络漫画的丰富底蕴,誓言以无尽的魅力引导玩家涉足一个深广莫测、波澜壮阔的奇幻领域。该游戏巧妙地植根于一个前所未有的赛博武侠天地间&…

19_Scala集合概述

文章目录 集合回顾javaScala集合三大类String & StringBuilderScala集合两大类 集合 回顾java scala与Java有所不同 函数式编程语言更侧重集合本身提供的哪些功能; Scala集合三大类 1.Seq 存储有序数据可重复 类比 List 2.Set 存储无序数据不可重复 3.Map…

拥抱新质生产力,助力新型工业化!CMM电子展暨IARS机器人展5月东莞盛大起航

2024年5月15-17日,东浩兰生会展集团旗下CMM电子展&IARS机器人展将在广东现代国际展览中心(东莞厚街)举办。展会面积达50000平方米,展示品牌700余个,同期论坛峰会30余场,预计专业观众超50000人次…

DI-engine强化学习入门(十又二分之一)如何使用RNN——数据处理、隐藏状态、Burn-in

一、数据处理 用于训练 RNN 的 mini-batch 数据不同于通常的数据。 这些数据通常应按时间序列排列。 对于 DI-engine, 这个处理是在 collector 阶段完成的。 用户需要在配置文件中指定 learn_unroll_len 以确保序列数据的长度与算法匹配。 对于大多数情况, learn_un…

【热门话题】实用Chrome命令:提升前端开发效率的利器

🌈个人主页: 鑫宝Code 🔥热门专栏: 闲话杂谈| 炫酷HTML | JavaScript基础 ​💫个人格言: "如无必要,勿增实体" 文章目录 实用Chrome命令:提升前端开发效率的利器引言目录1. 快速打开Chrome …

批量将GOID转成GO term名并添加BP,MF,CC分类信息

基因本体论(Gene Ontology,GO,https://www.geneontology.org)是一个广泛应用于生物信息学领域的知识库,它提供了一套标准化的词汇和分类体系,用于描述基因功能、细胞组分和生物过程。GO旨在统一科研人员对基…