M2det问题:win10运行错误总结

1.安装alfred报错
File "C:\Users\AppData\Local\Temp\pip-install-pgy54cbe\alfred-py\setup.py", line 29, in 
        long_description = f.read()
    UnicodeDecodeError: 'gbk' codec can't decode byte 0x9c in position 5247: illegal multibyte sequence
    ----------------------------------------
ERROR: Command errored out with exit status 1: python setup.py egg_info Check the logs for full command output.

定位问题:源码中没有指定open时的编码方式,使得默认为gbk编码
源码地址:https://github.com/jinfagang/alfred
M2det问题:win10运行错误总结_第1张图片
下载原始包文件后,解压找到setup.py文件,修改文件里的这一行,即加上encoding=‘utf-8’,保存后打包为新的安装包
M2det问题:win10运行错误总结_第2张图片
然后使用本地安装包安装

pip install F:\AI\alfred(安装包位置)

已经向开发者提了,现在可以直接install不会出错了,不过下面的应该还没改

2.安装pycocotools出现问题
ERROR: Could not find a version that satisfies the requirement requests (from alfred-py==2.6.10) (from versions: none)
ERROR: No matching distribution found for requests (from alfred-py==2.6.10)

有可能是版本问题或者网络问题,我是网络不稳定,重新安装后就可以了

另外在76行会有一些必须的下载
M2det问题:win10运行错误总结_第3张图片
由于pycocotools在windows上安装比较奇葩,在安装pycocotools会提示error: Unable to find vcvarsall.bat
解决:没有c++编译环境,安装单独的开发工具集vc++
请参考https://blog.csdn.net/a6822342/article/details/80841056
解决(是的,我查了很多都是必须装,就算不装vs,也得装vc++)

然后环境安装好之后,再次安装提示error: Failed building wheel for pycocotools
解决pip install git+https://github.com/philferriere/cocoapi.git#subdirectory=PythonAPI
M2det问题:win10运行错误总结_第4张图片
由于再次安装alfred-py时会把pycocotools清空按照它的方式安装,所以在76行把pycocotools删掉(反正我们装了)

3.安装pytorch

我的版本是python3.5 cuda 10.0 windows pip安装

命令:pip install https://download.pytorch.org/whl/cu100/torch-1.0.1-cp35-cp35m-win_amd64.whl
(事实上,官网https://pytorch.org/get-started/locally/下载挺快的呀,我还差点要去百度云下载了……另外,在官网上没有找到我电脑的cuda版本的,不知道其他版本会造成什么影响就去网上找了以前同样配置的命令,暂时还没发现问题……)

还需要安装torchvision,不然会出现这个问题No matching distribution found for torch==1.4.0 (from torchvision)
torch1.0.1版本对应的torchvision版本为0.2.0,使用pip install torchvision==0.2.0安装
查看torch版本

>>> import torch
>>> print(torch.__version__)
1.0.1

查看torchvision是否安装成功

>>> import torch
>>> torch.cuda.is_available()
True
4.Tensorflow1.1.0 CPU版本安装

使用命令:pip install tensorflow==1.1.0rc2
M2det问题:win10运行错误总结_第5张图片
测试是否成功:

>>>import tensorflow as tf
>>>sess = tf.Session()
>>>a = tf.constant(10)
>>>b = tf.constant(22)
>>>print(sess.run(a + b))

正确输出结果32,安装完毕

若出现以下情况
M2det问题:win10运行错误总结_第6张图片
说明需要对numpy包进行降级,降到<1.17,于是我干脆降到了1.16pip install numpy==1.16就不会报warning了

5.报错信息No module named 'utils.nms.cpu_nms' "报错 'cpu_nms.py

解决:文件cpu_nms.pyx改名(一般路径为 ./utils/nms/cpu_nms.pyx) 为cpu_nms.py
当然这个会报错,修改cpu_nms.py代码
(gpu-nms 报错暂时注释掉吧,后续再看)

6.报错信息OpenCV: FFMPEG: tag 0x47504a4d/'MJPG' is not supported with codec id 7 and format 'mp4 / MP4 (MPEG-4 Part 14)'

我用cv2把多张图片转成视频时候,遇见了这个错误,不能生成视频文件,查了很多资料,最终同时找到了两种解决方案。

# coding=utf-8
import os
import cv2
from PIL import Image

def makevideo(path, fps):
    """ 将图片合成视频. path: 视频路径,fps: 帧率 """
    fourcc = cv2.VideoWriter_fourcc(*"MJPG")
    path1 = 'C:/Users/lenovo/PycharmProjects/Dataset/gameData/test'
    im = Image.open('C:/Users/lenovo/PycharmProjects/Dataset/gameData/test/10561.jpg')
    print(im.size)
    vw = cv2.VideoWriter(path, fourcc, fps, im.size)
    for i in os.listdir(path1):
        frame = cv2.imread(path1 +'/'+ i)
        vw.write(frame)

if __name__ == '__main__':
    video_path = 'C:/Users/lenovo/PycharmProjects/Dataset/gameData/test_new1.mp4'
    makevideo(video_path, 10)  # 图片转视频

报错信息:

OpenCV: FFMPEG: tag 0x47504a4d/'MJPG' is not supported with codec id 7 and format 'mp4 / MP4 (MPEG-4 Part 14)'
OpenCV: FFMPEG: fallback to use tag 0x7634706d/'mp4v'

解决方法:

  • 1.将fourcc = cv2.VideoWriter_fourcc(*“MJPG”)的"MJPG"改成"mp4v"
  • 2.将vw = cv2.VideoWriter(path, fourcc, fps, im.size)的fourcc直接改成 0x00000021

第二种方法虽然会出现OpenCV: FFMPEG: tag 0x00000021/’!???’ is not found (format ‘mp4 / MP4 (MPEG-4 Part 14)’)’,但是生成的视频文件是正常的。

参考链接:https://www.wandouip.com/t5i244769/

7.win10下Cuda的下载安装及配置

首先我们要确定本机是否有独立显卡。在计算机-管理-设备管理器-显示适配器中,查看是否有独立显卡。
M2det问题:win10运行错误总结_第7张图片
可以看到本机有一个集成显卡和独立显卡NVIDIA GetForce GTX 1050。

接下来,测试本机独立显卡是否支持CUDA的安装,点击此处查询显卡是否在列表中。
M2det问题:win10运行错误总结_第8张图片
M2det问题:win10运行错误总结_第9张图片
从上图中,可以看到我本机的独立显卡是支持CUDA安装的,计算力是6.1。

那么,接下来就是选择CUDA进行安装即可,点击此处
M2det问题:win10运行错误总结_第10张图片
M2det问题:win10运行错误总结_第11张图片
下载之后,打开,选择存临时文件的路径或者默认,确定。
M2det问题:win10运行错误总结_第12张图片
选择自定义版本
M2det问题:win10运行错误总结_第13张图片
选择安装以下4项。不要选Visual Studio Integration,因为有可能出现全部安装失败的情况。
M2det问题:win10运行错误总结_第14张图片
选择安装路径(需要记住路径,一会配环境变量用)
M2det问题:win10运行错误总结_第15张图片
M2det问题:win10运行错误总结_第16张图片
安装完成之后,便是配置环境变量。环境变量配置如下图所示。
M2det问题:win10运行错误总结_第17张图片
测试CUDA是否正常安装,进入cmd,输入nvcc -V
M2det问题:win10运行错误总结_第18张图片

7.CUDNN的下载及配置

M2det问题:win10运行错误总结_第19张图片
下载完成后解压,将文件夹中的这三个文件覆盖掉
M2det问题:win10运行错误总结_第20张图片

8.查看GPU使用情况

第一种直接打开任务管理器的性能
M2det问题:win10运行错误总结_第21张图片
第二种使用cmd输入nvidia-smi

C:\Program Files\NVIDIA Corporation\NVSMI>nvidia-smi

M2det问题:win10运行错误总结_第22张图片
其中68MiB / 2048MiB就是使用显存占总显存的比例

下方的Processes:就是显示程序的GPU Memory的使用,现在没有就显示No running processes found

9.运行项目命令

先删除文件然后再运行以下命令

cd utils
python build.py build_ext --inplace

否则会报以下信息

running build_ext
skipping 'nms\cpu_nms.c' Cython extension (up-to-date)
skipping 'pycocotools\_mask.c' Cython extension (up-to-date)

解决方式:删除掉各种Cython生产的之前的文件
M2det问题:win10运行错误总结_第23张图片
M2det问题:win10运行错误总结_第24张图片

转自:https://blog.csdn.net/qq_21368481/article/details/89448226

10.电脑太卡

任务管理器打开服务–NVDIA Display Container LS右键打开服务
M2det问题:win10运行错误总结_第25张图片
M2det问题:win10运行错误总结_第26张图片
M2det问题:win10运行错误总结_第27张图片

2.运行demo_webcam.py报错

运行命令:python demo_webcam.py -c=configs/m2det512_vgg.py -m=weights/m2det512_vgg.pth --show
报错信息:RuntimeError: CUDA out of memory

3.怎么把GPU0换成GPU1
4.报错信息:cl.exe failed with exit status 2
5.报错信息:No module named 'lib_kernel.lib_nms.gpu_nms
6.将.pyx格式文件(linux环境)编译成pyd文件(windows环境)实现import导入

你可能感兴趣的:(人工智能)