mmrotate:如何在没有标签的测试集上进行推理

         看到这个标题你也许觉得很奇怪,但是mmrotate就是这样,如果你的annfiles里面的label里面是空的,那么就是做不了测试的。

          但是,如果你在里面随机按照数据集的格式敲一些数字进去,就又可以进行测试了,所以,按照数据集的样子,我照猫画虎搞了一下。

          先看一下数据集长什么样子,比如下图:

        所以,我们需要搞8个随机数,再写一个"ship"(也就是你的类别,按照你的意思去修改),再写一个2(因为测试集里面是2,不是0或者1!)。

        所以,代码如下:对某一文件夹下的所有txt文件,打开之后,随机写8个正整数,数字位于0~3之间,数字中间用空格隔开,之后再空一格空格,写“ship”,之后再空一个空格,之后写“2”.

import os
import random

# 设置要操作的文件夹路径
folder_path = "/path/to/folder"

# 获取文件夹中所有的txt文件
txt_files = [file for file in os.listdir(folder_path) if file.endswith('.txt')]

# 遍历每个txt文件并写入数据
for file_name in txt_files:
    with open(os.path.join(folder_path, file_name), 'a') as f:
        # 生成8个随机数并写入文件
        random_numbers = [random.randint(0, 3) for i in range(8)]
        f.write(' '.join(str(x) for x in random_numbers))
        f.write(' ship 0\n')

        之后就可以开开心心训练了!

猜你喜欢

转载自blog.csdn.net/weixin_46812066/article/details/129445684