栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Python

2021-10-15 python编程问题总结与不定时补充

Python 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

2021-10-15 python编程问题总结与不定时补充

python编程的一些常见问题处理总结和不定时补充
    • 文件读取问题
    • 没有该属性的问题
    • 其他问题

文件读取问题

1、解决cv2.imread读取含有中文路径的文件
cv2.imread()直接读取含有中文路径的图片,会返回None,解决方法如下:

import cv2
import numpy as np
img=cv2.imdecode(np.fromfile(path+picname, dtype=np.uint8), cv2.IMREAD_GRAYSCALE)

2、txt文档如何判断是否读取到文末
需要对txt文档的每一行进行处理的时候,最后需要判断如何读取到文件的末尾即可跳出循环,解决办法如下:

f=open(path+'xx.txt','r')
    while(True):
        line=f.readline()[:-1]#去掉最后的换行符号‘n’
        if not line:
            break
        #下方可继续编程处理数据
没有该属性的问题

一般而言没有该属性则选择pip install xx语句解决即可,但是有些时候会出现无法解决的情况,此处主要说明这些问题。
1、module ‘cv2.cv2’ has no attribute ‘face’
因为一般在学习opencv时我们只安装了opencv-python,如果需要实现人脸识别的一些算法,我们还需要安装opencv-contrib-python,所以理论上直接pip install opencv-contrib-python就行,但是实践发现这样不能成功安装,具体操作如下:

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

具体原因我也不太清楚,这样安装之后就神奇的好使了,有博客说可能原因是相关包没安装或者cv2的相关包没安装完【链接: link.】

其他问题

1、在人脸识别的时候出现:labels data type = 19 is not supported
原始代码如下:

model=cv2.face.EigenFaceRecognizer_create()
model.train(np.asarray(data[0]),np.asarray(data[1]))

报错如下:

这是因为model.train对标签的要求是int类型,所以只需要简单转换一下数据类型就可以解决,解决方法如下:

model=cv2.face.EigenFaceRecognizer_create()
model.train(np.asarray(data[0]),np.asarray(data[1],dtype=np.int32))
转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/329175.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号