python调用opencv报错“module ‘cv2‘ has no attribute ‘namedWindow‘”

  之前电脑上使用pip install安装过opencv相关的python模块,不过后续学习opencv时主要使用OpenCVSharp在VS2022中创建项目测试。今天学习过程中突然想用python试试,不过运行下面代码时报错“module ‘cv2’ has no attribute 'namedWindow”。

import cv2cv2.namedWindow('img',cv2.WINDOW_NORMAL)
img=cv2.imread('dragon.jpg')cv2.imshow('img',img)
cv2.waitKey(0)
cv2.destroyAllWindows()

  百度上述错误信息,能找到很多类似的问题,大多类似module ‘cv2’ has no attribute 'XXXXXX’形式,有些说是相关函数由版权问题,建议重新安装低版本opencv的,也有些说是opencv安装有问题,需要重新安装opencv相关模块。由于namedWindow函数并无特别之处,估计是opencv安装的有问题。于是运行下面命令重新安装opencv。

pip install opencv-python
pip install opencv-contrib-python

  安装过程中,命令行中一直提醒“There was an error checking the latest version of pip”,百度该错误,应该是pip模块不是最新版本,于是按照参考文献1中的解决办法,采用以下命令更新pip模块。

python -m pip install -U --force-reinstall pip

  更新了pip模块,重新安装了opencv模块,再运行开头的python代码,又出现如下的报错。参考文献2中给出的解释是opencv相关的模块版本不一致,需要先卸载干净opencv相关模块,再重新安装才行。

AttributeError: partially initialized module 'cv2' has no attribute 'gapi_wip_gst_GStreamerPipeline' (most likely due to a circular import)

  采用下面命令查找已安装的所有opencv模块,然后使用pip uninstall命令逐一卸载。

pip list | findstr opencv

  最后运行命令重新安装opencv-python、opencv-contrib-python,再运行本文开头的python代码即可正常执行。
在这里插入图片描述

参考文献:
[1]https://blog.csdn.net/weixin_63294643/article/details/129212100
[2]https://blog.csdn.net/Ty_kilig/article/details/139558839

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

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

巡检机器人室内配电室应用

智能巡检系统实施背景 电力系统发展已进入电气化、自动化、智能化建设加速推进的新阶段,设备规模大幅增长,新设备、新技术加快应用,装备水平取得长足发展,与此同时设备规模大幅增长,新设备、新技术加快应用&#xff0…

神经网络介绍及其在Python中的应用(一)

作者简介:热爱数据分析,学习Python、Stata、SPSS等统计语言的小高同学~ 个人主页:小高要坚强的博客 当前专栏:Python之机器学习 本文内容:神经网络介绍及其在Python中的线性回归应用 作者“三要”格言:要坚…

STM32(四)LED闪烁、流水灯及蜂鸣器操作

小节任务:在对GPIO函数初始化操作及配置好输入或输出模式后,使用GPIO的输入输出函数控制LED闪烁、流水灯及蜂鸣器操作,本小节先使用GPIO的四个输出函数 SetBits函数将指定端口设置为高电平 ResetBits函数将指定端口设置为低电平 WriteBit根据…

c++进阶之多态讲解

这篇文章和大家一起学习一下c中的多态 多态的概念 多态的概念:通俗来讲,就是多种形态。多态分为编译时多态(静态多态)和运⾏时多态(动态多态)。 什么是静态多态 前⾯讲的函数重载和函数模板,它们传不同类型的参数就可以调用不同的函数&…

Linux中的软硬链接和动静态库

硬链接 ln myfile.txt hard_file.link 264962 -rw-rw-r-- 2 zhangsan zhangsan 0 Sep 30 03:16 hard_file.link 264962 -rw-rw-r-- 2 zhangsan zhangsan 0 Sep 30 03:16 myfile.txt 273922 lrwxrwxrwx 1 zhangsan zhangsan 10 Sep 30 03:17 soft_file.link -> …

Activiti7 工作流引擎学习

目录 一. 什么是 Activiti 工作流引擎 二. Activiti 流程创建步骤 三. Activiti 数据库表含义 四. BPMN 建模语言 五. Activiti 使用步骤 六. 流程定义与流程实例 一. 什么是 Activiti 工作流引擎 Activiti 是一个开源的工作流引擎,用于业务流程管理&#xf…

将给定的表达式树(二叉树)转换为等价的中缀表达式(通过括号反映操作符的计算次序)并输出

请设计一个算法,将给定的表达式树(二叉树)转换为等价的中缀表达式(通过括号反映操作符的计算次序)并输出。例如,当下列两棵表达式树作为算法输入时: 输出的中缀表达式分别为 (ab)∗(c∗(−d)) 和…

推送k8s镜像到阿里云服务器

1、服务打包 2、打包后进入Dockerfile的同级目录 运行 docker build -t 镜像名:镜像版本 . (这个点是当前目录的意思,不能忽略)例如 docker build -t trac:v1.0.4 .3、上传镜像到阿里云镜像服务 注意选择区域 例如: docker tag 70743d9bdba3 registr…

[C++] 剖析AVL树功能的实现原理

文章目录 引言AVL树的关键性质为什么选择AVL树? AVL树的结构节点对象的类 AVL树的插入检查是否为空树并处理根节点查询插入位置(非递归)插入节点并连接父节点更新平衡因子(在失去平衡的条件下进行旋转) 旋转旋转的原则…

计组复习笔记

计组笔记 汇编部分 通用寄存器(General Registers): AX (Accumulator): 用于累加运算,也是乘法和除法的默认寄存器。BX (Base Register): 可以用作一个基址寄存器,通常用于存放数据的基地址。CX (Counter Register): 通常用于循环…

【零散技术】Odoo PDF 打印问题问题合集

序言:时间是我们最宝贵的财富,珍惜手上的每个时分 Odoo PDF打印 是一个必备功能,但是总会遇到一些奇奇怪怪的问题,此帖仅做记录,方便查阅。 目录 1、样式丢失 2、部分结构丢失 3、没有中文字体 1、样式丢失 这种情况一般是由于 …

Redis: Sorted Set 底层算法的简单分析

概述 我们先看下 Shorted Set 有序集合的内部数据结构所谓有序集合,比如有个容器,容器里边都已经排好序了,那无非就是快速的查找和插入不管你是查找还是插入,肯定要确定那个位置最简单的办法就是从最开头开始,挨个比较…

查找与排序-插入排序

排序算法可以分为内部排序和外部排序,内部排序是数据记录在内存中进行排序,而外部排序是因排序的数据很大,一次不能容纳全部的排序记录,在排序过程中需要访问外存。常见的内部排序算法有:插入排序、希尔排序、选择排序…

2024年10月2日历史上的今天大事件早读

1683年10月2日 清朝康熙帝统一台湾 1869年10月2日 印度民族解放运动领袖甘地诞辰 1890年10月2日 中共创始人之一李达诞生 1895年10月2日 天津中西学堂(天津大学前身)开学 1901年10月2日 郑士良等发起惠州起义 1909年10月2日 京张铁路正式通车 1920…

LeetCode[中等] 238. 除自身以外数组的乘积

给你一个整数数组 nums,返回 数组 answer ,其中 answer[i] 等于 nums 中除 nums[i] 之外其余各元素的乘积 。 题目数据 保证 数组 nums之中任意元素的全部前缀元素和后缀的乘积都在 32 位 整数范围内。 请 不要使用除法,且在 O(n) 时间复杂…

java常用框架结构

1. Spring框架 特色:Spring框架就像是一个万能工具箱,提供了丰富的功能来满足开发者的各种需求。它支持面向切面编程(AOP)、依赖注入(DI)等特性,使得代码更加模块化和可维护。Spring还提供了对数…

calibre-web的翻译translations

calibre-web的翻译translations Windows安装calibre-web,Python-CSDN博客文章浏览阅读539次,点赞10次,收藏11次。pip install calibreweb报错:error: Microsoft Visual C 14.0 or greater is required. Get it with "Microso…

【QT 开发日志】QT 基础控件详解:按钮、文本框与标签的使用

🎬 鸽芷咕:个人主页 🔥 个人专栏: 《C干货基地》《粉丝福利》 ⛺️生活的理想,就是为了理想的生活! 博主简介 博主致力于嵌入式、Python、人工智能、C/C领域和各种前沿技术的优质博客分享,用最优质的内容带来最舒适的…

【C语言】数组(下)

6、二维数组的创建 6.1二维数组的概念 通过数组(上)介绍,我们学习了一维数组,数组的元素都是内置类型的,如果我们把一维数组作为数组的元素,这时就是二维数组,以此类推,如果把二维…

鸿蒙开发(NEXT/API 12)【状态查询与订阅】手机侧应用开发

注意 该接口的调用需要在开发者联盟申请设备基础信息权限与穿戴用户状态权限,穿戴用户状态权限还需获得用户授权。 实时查询穿戴设备可用空间、电量状态。订阅穿戴设备连接状态、低电量告警、用户心率告警。查询和订阅穿戴设备充电状态、佩戴状态、设备模式。 使…