请帮忙编写一个数据随机抽取.py脚本,数据格式是图片以及对应的labelme生成的.json文件
时间: 2024-04-15 07:32:06 浏览: 96
preprocess_LabelMe_
当提到数据随机抽取.py脚本时,我将提供一个示例,以便你参考。以下是一个使用Python的脚本示例,它可以随机抽取图片及其对应的labelme生成的.json文件:
```python
import os
import random
import shutil
def random_sample_data(data_dir, output_dir, num_samples):
# 获取数据目录下所有图片文件和对应的json文件
image_files = [f for f in os.listdir(data_dir) if f.endswith('.jpg') or f.endswith('.png')]
json_files = [f for f in os.listdir(data_dir) if f.endswith('.json')]
# 随机抽取指定数量的样本
random_samples = random.sample(range(len(image_files)), num_samples)
# 创建输出目录
os.makedirs(output_dir, exist_ok=True)
# 将抽取的样本复制到输出目录中
for idx in random_samples:
image_file = image_files[idx]
json_file = image_file.replace('.jpg', '.json').replace('.png', '.json')
shutil.copy(os.path.join(data_dir, image_file), os.path.join(output_dir, image_file))
shutil.copy(os.path.join(data_dir, json_file), os.path.join(output_dir, json_file))
print(f"Copied {image_file} and {json_file} to {output_dir}")
# 设置数据目录、输出目录和要抽取的样本数量
data_dir = 'path/to/data'
output_dir = 'path/to/output'
num_samples = 10
# 调用函数进行随机抽取
random_sample_data(data_dir, output_dir, num_samples)
```
请将上述示例代码中的`data_dir`替换为包含图片和对应.json文件的数据目录的路径,将`output_dir`替换为输出目录的路径,将`num_samples`替换为你想要抽取的样本数量。运行脚本后,它将随机抽取指定数量的图片和对应的.json文件,并将它们复制到输出目录中。
阅读全文