cv2.dnn.readNetFromDarknet()在python3上遇到的问题
问题描述:
代码如下
net = cv2.dnn.readNetFromDarknet(configPath,weightsPath)
#获取YOLO每一层的名称
#getLayerNames():获取网络所有层的名称。
ln = net.getLayerNames()
# 获取输出层的名称: [yolo-82,yolo-94,yolo-106]
# getUnconnectedOutLayers():获取输出层的索引
ln = [ln[i[0] - 1] for i in net.getUnconnectedOutLayers()]
代码编写完毕之后 发现 i[0]的数值无法正确获取,仔细寻找之后发现cv2.dnn.readNetFromDarknet()要求在python2环境下运行
在python2.7的安装和cv2导入的过程中也遇到了一些问题,故做总结。
步骤:
1.用conda建一个python2虚拟环境
1. 显示可安装的python版本
conda search -f python
2. 安装虚拟环境,名称为py2
conda create -n py2 python=2.7
3. 激活py2
利用conda info –envs 或者conda env list 查询的虚拟环境,输入activate py2激活py2环境#删除虚拟环境yourenvname
conda remove -n yourenvname -all移除虚拟环境
2.修改项目的python版本,从python3.8切换到python2.7【注意】
打开File-setting,为该项目设置Python解释器,defaultSetting为PyCharm设置默认解释器,两者的设置过程一样的,建议都设置一下
在setting页面中选择,Project 项目名,Project Interpreter,在如下图右上角位置点击Add添加Python解释器
打开添加页面如下,在右边选项栏中选择第三项System Interpreter,点击右边选择位置按钮
找到Python解释器的python.exe文件(Python2和Python3都有这个文件)
添加成功后显示了Python2解释器的选项,同理设置Python3解释器,切换时就在setting中此处进行切换
3.python2.7装cv2的解决方案
网上说的pip install opencv-python和换镜像源都不好使,因为新版的opencv不再支持python2.7 因此安装的时候需要指定版本
pip install opencv-python==4.2.0.32
安装成功
4.运行python遇到SyntaxError: Non-ASCII character '\xe8' 报错
问题原因:因为没有指定文件的编码,默认情况下不能用中文。【不清楚为什么在python3的环境下无问题】
解决方案:在代码首行加入以下内容
# encoding:utf-8
cv2.dnn.readNetFromDarknet()在python3上遇到的问题相关推荐
- 关于cv2.dnn.readNetFromONNX(path)就报ERROR during processing node with 3 inputs and 1 outputs的解决过程【独家发布】
问题是什么: 如图,对vgg16使用opencv的dnn模块进行推理时出现错误. 错误的详细日志为:[ERROR:0@0.804] global D:\a\opencv-python\opencv-p ...
- cv2.dnn读取模型报错
cv2.dnn读取模型报错 D:\ProgramData\Miniconda3\python.exe D:/project/detect/face/yolov5-face-landmarks-open ...
- opencv python3树莓派_树莓派4B日志七:Python3上的OpenCV安装
1.准备工作 硬件:装好系统的树莓派. 软件:Putty,VNC Viewer.(也可以直接在屏幕上操作) 2.前言 前面几期介绍了树莓派的一些基本配置,今天让我们来打开新世界的大门.安装OpenCV ...
- python3 上传文件到目标机器_再见Python 2.7,你好Python 3.7
安装python3 直接下载安装 1.下载地址如下:python 3.7 2.点击下载好的pkg文件进行安装 3.安装完成之后,python 3.70的默认安装路径如下: /Library/Frame ...
- python3 上传文件到目标机器_Python3 +服务器搭建私人云盘,再也不怕限速了
先来看看效果 电脑访问 手机访问 Windows版本搭建 (1).首先你需要在你的电脑上或者服务器上安装Python3.X. (2).然后通过如下指令来安装updog库,网上有很多关于updog的介绍 ...
- python3 上传文件到目标机器_通过python模块实现服务器和本地机器之间快速拷贝文件...
在实际的开发过程中,很多时候我们都不直接在本机上开发,一般都在远程服务器上开发并运行程序. 比如三胖在实际开发中就会使用到很多台服务器:我有一台笔记本电脑,通过 ssh 连接着很多台服务器,我需要经常 ...
- tensorflow python2迁移python3_tensorflow在python2和python3上的安装教程
使用本地的pip对tensorflow进行安装 如果在你的电脑上既没有python2,也没有安装python3,那么请立刻安装: Tensorflow支持在windows下的python2和pytho ...
- python3怎么安装opencv_Python:即使安装了opencv,也无法导入cv2(如何为python3安装opencv3)...
我已经安装了anaconda(版本:conda 4.2.9,python3),并试图在出现以下错误时执行import cv2: ImportError: No module named 'cv2' 通 ...
- python3上传文件_Python3学习笔记(十八):文件上传和下载
importrequests upload_url= 'http://upload.renren.com/upload.fcgi?pagetype=addpublishersingle&hos ...
最新文章
- a-awk外部变量传入,内部变量传出,同时过滤空格及其他字符
- vue-cli 自动切换环境
- Oracle的表空间和数据文件
- PS教程第二十一课:有了选区就有了界限
- TZOJ--1518: 星星点点 (二进制模拟)
- MFC实现 MSN QQ 窗口抖动
- python数据存储系列教程——python中mysql数据库操作:连接、增删查改、指令执行
- 2.概率论-概率论公理
- iptv错误代码2003什么意思_IPTV部分错误代码和原因解释
- JS实现FlyBird
- 技术讲座:蔡学镛之架构师相关培训
- Linux实操篇-组管理和权限管理
- Ceph RBD 使用详细说明
- 图像特征提取现成的方法
- Elasticsearch提高查询性能的方法
- 30天自制操作系统——第八天鼠标控制与32位模式切换
- 关于3dmax模型导入到u3d中时,坐标会旋转的问题
- DEBUG 代码调试
- 中小型软件开发项目管理
- 步步高应届生解约事件
热门文章
- 外存中的对换区和文件区
- sendBroadcast与sendStickyBroadcast的区别
- mysql新增列并同时增加数据_图解MySQL | [原理解析] MySQL 为表添加列 是怎么quot;立刻quot;完成的...
- 使用 Django + Wusgi + Nginx 部署 Django
- caffe common 程序分析 类中定义类
- Linux进程全解11——进程间通信(IPC)概述
- Linux进程全解3——进程概念、进程ID、多进程调度原理
- Win7系统中用anaconda配置tensorflow运行环境
- leetcode - Linked List Cycle
- C++ 0x 使用可变参数模板类 实现 C# 的委托机制