携手创造,共同成长!这是我参与「日新计划 · 8 月更文挑战」的第32天,点击查看活动详情

一、模型练习成果

下为后台任务练习visualdl图

二、模型猜测

1.使用模型

  • 后台任务下载练习成果
  • 上传练习模型为数据集并解压缩
# 解压后台练习好的模型
!unzip -qoa data/data166847/best_model.zip

2.解压缩test数据集

# 解压测试数据
!unzip -qoa -O GBK data/data163113/齿轮检测A榜评测数据.zip -d data
!mv data/齿轮检测A榜评测数据 data/test

3.猜测成果

%cd ~
import glob
img_file=[]
img_file=glob.glob("data/test/val/*.jpg")
print(len(img_file))   
/home/aistudio
600
import paddlex as pdx
model = pdx.load_model('/home/aistudio/best_model')
result=[]
# 不要批量猜测,显存容易爆
for img in img_file:
    item = model.predict(img)
    result.append(item)
print(result[0])
[{'category_id': 0, 'category': 'hp_cm', 'bbox': [277.3127746582031, 398.80572509765625, 116.0015869140625, 123.09124755859375], 'score': 0.2651117742061615}, {'category_id': 0, 'category': 'hp_cm', 'bbox': [270.89251708984375, 242.0045928955078, 131.30450439453125, 115.49867248535156], 'score': 0.18997494876384735}, {'category_id': 0, 'category': 'hp_cm', 'bbox': [266.58856201171875, 69.13514709472656, 127.87396240234375, 108.75114440917969], 'score': 0.09731187671422958}, {'category_id': 0, 'category': 'hp_cm', 'bbox': [271.2421875, 556.1539306640625, 118.46600341796875, 108.4219970703125], 'score': 0.09247241914272308}, {'category_id': 0, 'category': 'hp_cm', 'bbox': [270.625244140625, 232.81887817382812, 91.84698486328125, 79.2542724609375], 'score': 0.03366655856370926}, {'category_id': 0, 'category': 'hp_cm', 'bbox': [343.02398681640625, 0.6909008026123047, 73.678466796875, 42.58038520812988], 'score': 0.025596577674150467}, {'category_id': 0, 'category': 'hp_cm', 'bbox': [275.1397705078125, 367.2425231933594, 76.25787353515625, 66.8385009765625], 'score': 0.015586825087666512}, {'category_id': 0, 'category': 'hp_cm', 'bbox': [267.201416015625, 514.007568359375, 45.40545654296875, 66.0347900390625], 'score': 0.011892958544194698}, {'category_id': 0, 'category': 'hp_cm', 'bbox': [268.7194519042969, 714.6714477539062, 44.30950927734375, 56.0875244140625], 'score': 0.011540604755282402}, {'category_id': 0, 'category': 'hp_cm', 'bbox': [261.60333251953125, 220.31338500976562, 59.601318359375, 71.15499877929688], 'score': 0.010460827499628067}, {'category_id': 1, 'category': 'hp_cd', 'bbox': [266.58856201171875, 69.13514709472656, 127.87396240234375, 108.75114440917969], 'score': 0.352761834859848}, {'category_id': 1, 'category': 'hp_cd', 'bbox': [771.477783203125, 8.217887878417969, 362.9459228515625, 212.39063262939453], 'score': 0.1544414609670639}, {'category_id': 1, 'category': 'hp_cd', 'bbox': [412.41827392578125, 0.0, 687.5846557617188, 373.23834228515625], 'score': 0.1034211814403534}, {'category_id': 1, 'category': 'hp_cd', 'bbox': [270.89251708984375, 242.0045928955078, 131.30450439453125, 115.49867248535156], 'score': 0.10121399909257889}, {'category_id': 1, 'category': 'hp_cd', 'bbox': [271.2421875, 556.1539306640625, 118.46600341796875, 108.4219970703125], 'score': 0.09936320781707764}, {'category_id': 1, 'category': 'hp_cd', 'bbox': [229.65936279296875, 71.80953979492188, 937.6921997070312, 630.4786682128906], 'score': 0.06198175996541977}, {'category_id': 1, 'category': 'hp_cd', 'bbox': [277.3127746582031, 398.80572509765625, 116.0015869140625, 123.09124755859375], 'score': 0.0524945892393589}, {'category_id': 1, 'category': 'hp_cd', 'bbox': [343.02398681640625, 0.6909008026123047, 73.678466796875, 42.58038520812988], 'score': 0.04534951224923134}, {'category_id': 1, 'category': 'hp_cd', 'bbox': [268.7194519042969, 714.6714477539062, 44.30950927734375, 56.0875244140625], 'score': 0.01778482086956501}, {'category_id': 1, 'category': 'hp_cd', 'bbox': [226.39495849609375, 376.0963439941406, 914.5798950195312, 617.7748718261719], 'score': 0.016559403389692307}, {'category_id': 1, 'category': 'hp_cd', 'bbox': [270.625244140625, 232.81887817382812, 91.84698486328125, 79.2542724609375], 'score': 0.015641620382666588}, {'category_id': 2, 'category': 'kp', 'bbox': [266.58856201171875, 69.13514709472656, 127.87396240234375, 108.75114440917969], 'score': 0.021044017747044563}, {'category_id': 2, 'category': 'kp', 'bbox': [939.2327270507812, 18.061260223388672, 80.750244140625, 52.013065338134766], 'score': 0.01880461722612381}, {'category_id': 2, 'category': 'kp', 'bbox': [879.6025390625, 987.5177001953125, 61.5970458984375, 51.7886962890625], 'score': 0.017387624830007553}, {'category_id': 2, 'category': 'kp', 'bbox': [277.3127746582031, 398.80572509765625, 116.0015869140625, 123.09124755859375], 'score': 0.014427728950977325}]
print(len(result))
600

4.按格式保存并提交

import json
import os
result_json = []
for i in range(len(result)):
    for item in result[i]:
        dt = {}
        dt['name'] = os.path.basename(img_file[i])
        dt['category_id'] = item['category_id']
        dt['bbox'] = item['bbox']
        dt['score'] = item['score']
        result_json.append(dt)
# 生成上传文件
with open('./result.json','w') as f:
    json.dump(result_json, f)

三、改进空间

  • 由于选用后台练习模式,可增大练习轮次,不必担心练习中止;
  • 可结合visualdl 练习图来调整练习战略。