一、MMEdu离线版的使用
1.双击XEdu v1.0.exe解压缩到某个盘,会是一个文件夹XEdu
2.进入XEdu,双击运行“点我初始化.bat”,等待至运行结束命令提示符窗口自动关闭
3.双击运行“jupyter编辑器.bat”,将会打开一个网页版jupyter,选择进入demo文件夹
4.选择“MMEdu_cls_demo.py”可以看教程(前半部)
5.或新建一个文件,放入以下三种中的一种对图像分类模块的使用
6.运行
二、对文件夹的介绍
1.XEdu
2.XEdu里面的demo文件夹
img如果引用的是img=‘D:/XEdu/demo/testPic/testscissors01-01.png’,则是绝对路径
img如果引用的是img=‘testrock01-02.png’,则是该文件同路径的图片。
三、三种图像分类模块的使用
hand_gray/latest.pth可以用hand_gray_continue/latest.pth或hand_gray_new/latest.pth替换
1.普通
##导入图像分类模块
from MMEdu import MMClassification as cls
##实例化模型 LeNet一个轻量级卷积神经网络模型
model=cls('LeNet')
##指定模型保存的路径
#一般的编程语言中,反斜杠\一般理解为转义字符,所以在路径中需要用\\表示\
#所以我们用/就好
checkpoint='D:/XEdu/checkpoints/cls_model/hand_gray/latest.pth'#权重文件
class_path='D:/XEdu/dataset/cls/hand_gray/classes.txt'#分类标签信息文件
#checkpoint='../checkpoits/cls_model/hand_gray'
#class_path='../dataset/cls/hand_gray/classes.txt'
##指定图片,开始推理
img='D:/XEdu/demo/testPic/testscissors01-01.png'
result=model.inference(image=img,show=True,class_path=class_path,checkpoint=checkpoint)
model.print_result(result) #如[{'标签': 1, '置信度': 0.6409855484962463, '预测结果': 'rock'}]
##返回的数据类型是一个字典列表
##用字典访问其中的元素
x=model.print_result(result)
print('标签(序号)为:{}'.format(x[0]['标签']))
classes=['布','石头','剪刀']
print('识别结果为:{}'.format(classes[x[0]['标签']]))
2.快速推理
##导入图像分类模块
from MMEdu import MMClassification as cls
####快速推理:先加载权重文件,再推理,可以大大加快推理的速度
model=cls('LeNet')
checkpoint='D:/XEdu/checkpoints/cls_model/hand_gray/latest.pth'#权重文件
class_path='D:/XEdu/dataset/cls/hand_gray/classes.txt'#分类标签信息文件
model.load_checkpoint(checkpoint=checkpoint,class_path=class_path)
img='D:/XEdu/demo/testPic/testscissors01-01.png'
#result=model.fast_inference(img)##不显示图像
result=model.fast_inference(img,show=True)##显示图像
model.print_result(result)
3.拍照推理
##导入图像分类模块
from MMEdu import MMClassification as cls
####拍照推理
import cv2
camera=cv2.VideoCapture(0)
ret,img=camera.read()
camera.release()
#result=model.fast_inference(img)##不显示图像
result=model.fast_inference(img,show=True)##显示图像
model.print_result(result)