数据集005:螺丝螺母目标检测数据集(含数据集下载链接)

2024-05-28 16:20

本文主要是介绍数据集005:螺丝螺母目标检测数据集(含数据集下载链接),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

数据集简介

背景干净的目标检测数据集。
里面仅仅包含螺丝和螺母两种类别的目标,背景为干净的培养皿。图片数量约420张,train.txt 文件描述每个图片中的目标,label_list 文件描述类别

另附一个验证集合,有10张图片,eval.txt 描述图片中目标,格式和 train.txt 相同

部分代码

"""
训练常基于dark-net的YOLOv3网络,目标检测
"""
from __future__ import absolute_import
from __future__ import division
from __future__ import print_function
import os
os.environ["FLAGS_fraction_of_gpu_memory_to_use"] = '0.82'
import uuid
import numpy as np
import time
import six
import math
import random
import paddle
import paddle.fluid as fluid
import logging
import xml.etree.ElementTree
import codecs
import jsonfrom paddle.fluid.initializer import MSRA
from paddle.fluid.param_attr import ParamAttr
from paddle.fluid.regularizer import L2Decay
from PIL import Image, ImageEnhance, ImageDrawlogger = None
train_parameters = {"data_dir": "data/data6045","train_list": "train.txt","eval_list": "eval.txt","class_dim": -1,"label_dict": {},"num_dict": {},"image_count": -1,"continue_train": True,     # 是否加载前一次的训练参数,接着训练"pretrained": False,"pretrained_model_dir": "./pretrained-model","save_model_dir": "./yolo-model","model_prefix": "yolo-v3","freeze_dir": "freeze_model","use_tiny": True,          # 是否使用 裁剪 tiny 模型"max_box_num": 20,          # 一幅图上最多有多少个目标"num_epochs": 1,"train_batch_size": 8,      # 对于完整 yolov3,每一批的训练样本不能太多,内存会炸掉;如果使用 tiny,可以适当大一些"use_gpu": True,"yolo_cfg": {"input_size": [3, 448, 448],    # 原版的边长大小为608,为了提高训练速度和预测速度,此处压缩为448"anchors": [7, 10, 12, 22, 24, 17, 22, 45, 46, 33, 43, 88, 85, 66, 115, 146, 275, 240],"anchor_mask": [[6, 7, 8], [3, 4, 5], [0, 1, 2]]},"yolo_tiny_cfg": {"input_size": [3, 256, 256],"anchors": [6, 8, 13, 15, 22, 34, 48, 50, 81, 100, 205, 191],"anchor_mask": [[3, 4, 5], [0, 1, 2]]},"ignore_thresh": 0.7,"mean_rgb": [127.5, 127.5, 127.5],"mode": "train","multi_data_reader_count": 4,"apply_distort": True,"nms_top_k": 300,"nms_pos_k": 300,"valid_thresh": 0.01,"nms_thresh": 0.45,"image_distort_strategy": {"expand_prob": 0.5,"expand_max_ratio": 4,"hue_prob": 0.5,"hue_delta": 18,"contrast_prob": 0.5,"contrast_delta": 0.5,"saturation_prob": 0.5,"saturation_delta": 0.5,"brightness_prob": 0.5,"brightness_delta": 0.125},"sgd_strategy": {"learning_rate": 0.002,"lr_epochs": [30, 50, 65],"lr_decay": [1, 0.5, 0.25, 0.1]},"early_stop": {"sample_frequency": 50,"successive_limit": 3,"min_loss": 2.5,"min_curr_map": 0.84}
}def init_train_parameters():"""初始化训练参数,主要是初始化图片数量,类别数:return:"""file_list = os.path.join(train_parameters['data_dir'], train_parameters['train_list'])label_list = os.path.join(train_parameters['data_dir'], "label_list")index = 0with codecs.open(label_list, encoding='utf-8') as flist:lines = [line.strip() for line in flist]for line in lines:train_parameters['num_dict'][index] = line.strip()train_parameters['label_dict'][line.strip()] = indexindex += 1train_parameters['class_dim'] = indexwith codecs.open(file_list, encoding='utf-8') as flist:lines = [line.strip() for line in flist]train_parameters['image_count'] = len(lines)

数据集链接:螺丝螺母目标检测数据集(430张)

这篇关于数据集005:螺丝螺母目标检测数据集(含数据集下载链接)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1011072

相关文章

SpringBoot多环境配置数据读取方式

《SpringBoot多环境配置数据读取方式》SpringBoot通过环境隔离机制,支持properties/yaml/yml多格式配置,结合@Value、Environment和@Configura... 目录一、多环境配置的核心思路二、3种配置文件格式详解2.1 properties格式(传统格式)1.

解决pandas无法读取csv文件数据的问题

《解决pandas无法读取csv文件数据的问题》本文讲述作者用Pandas读取CSV文件时因参数设置不当导致数据错位,通过调整delimiter和on_bad_lines参数最终解决问题,并强调正确参... 目录一、前言二、问题复现1. 问题2. 通过 on_bad_lines=‘warn’ 跳过异常数据3

C#监听txt文档获取新数据方式

《C#监听txt文档获取新数据方式》文章介绍通过监听txt文件获取最新数据,并实现开机自启动、禁用窗口关闭按钮、阻止Ctrl+C中断及防止程序退出等功能,代码整合于主函数中,供参考学习... 目录前言一、监听txt文档增加数据二、其他功能1. 设置开机自启动2. 禁止控制台窗口关闭按钮3. 阻止Ctrl +

java如何实现高并发场景下三级缓存的数据一致性

《java如何实现高并发场景下三级缓存的数据一致性》这篇文章主要为大家详细介绍了java如何实现高并发场景下三级缓存的数据一致性,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... 下面代码是一个使用Java和Redisson实现的三级缓存服务,主要功能包括:1.缓存结构:本地缓存:使

在MySQL中实现冷热数据分离的方法及使用场景底层原理解析

《在MySQL中实现冷热数据分离的方法及使用场景底层原理解析》MySQL冷热数据分离通过分表/分区策略、数据归档和索引优化,将频繁访问的热数据与冷数据分开存储,提升查询效率并降低存储成本,适用于高并发... 目录实现冷热数据分离1. 分表策略2. 使用分区表3. 数据归档与迁移在mysql中实现冷热数据分

C#解析JSON数据全攻略指南

《C#解析JSON数据全攻略指南》这篇文章主要为大家详细介绍了使用C#解析JSON数据全攻略指南,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... 目录一、为什么jsON是C#开发必修课?二、四步搞定网络JSON数据1. 获取数据 - HttpClient最佳实践2. 动态解析 - 快速

MyBatis-Plus通用中等、大量数据分批查询和处理方法

《MyBatis-Plus通用中等、大量数据分批查询和处理方法》文章介绍MyBatis-Plus分页查询处理,通过函数式接口与Lambda表达式实现通用逻辑,方法抽象但功能强大,建议扩展分批处理及流式... 目录函数式接口获取分页数据接口数据处理接口通用逻辑工具类使用方法简单查询自定义查询方法总结函数式接口

SQL server数据库如何下载和安装

《SQLserver数据库如何下载和安装》本文指导如何下载安装SQLServer2022评估版及SSMS工具,涵盖安装配置、连接字符串设置、C#连接数据库方法和安全注意事项,如混合验证、参数化查... 目录第一步:打开官网下载对应文件第二步:程序安装配置第三部:安装工具SQL Server Manageme

Linux系统性能检测命令详解

《Linux系统性能检测命令详解》本文介绍了Linux系统常用的监控命令(如top、vmstat、iostat、htop等)及其参数功能,涵盖进程状态、内存使用、磁盘I/O、系统负载等多维度资源监控,... 目录toppsuptimevmstatIOStatiotopslabtophtopdstatnmon

SQL中如何添加数据(常见方法及示例)

《SQL中如何添加数据(常见方法及示例)》SQL全称为StructuredQueryLanguage,是一种用于管理关系数据库的标准编程语言,下面给大家介绍SQL中如何添加数据,感兴趣的朋友一起看看吧... 目录在mysql中,有多种方法可以添加数据。以下是一些常见的方法及其示例。1. 使用INSERT I