darknet框架 训练分类模型及测试图片

news2025/1/11 23:44:20

darknet 框架的Yolo模型大概已经没什么公司使用了,对于老项目的维护可能新手需要了解下,然而 darknet架构并不十分友好,新手入手门槛比较高,特别是做分类任务时,简直了!!! 博主也是走了不少弯路,再次整理记录下,便于需要的小伙伴查看,同时也供自己日后学习

检测效果

在这里插入图片描述


1、darknet 分类模型训练命令

注意!!!
训练的时候需要注意一点,数据的路径中,类别名只能在绝对路径中出现一次,不可以出现多次,否则报错!!!

# 挂起后台训练命令
nohup ./darknet classifier train ../weather/weather.data ../weather/weather.cfg -gpus 0,1 -dont_show >../weather/train.log 2>&1 &

# 前台训练命令
nohup ./darknet classifier train ../weather/weather.data ../weather/weather.cfg -gpus 0,1 -dont_show >../weather/train.log 2>&1 &


2、darknet 分类模型单张图片检测命令

注意!!!
图片路径不正确的情况下,依旧会检测出结果!!!

# 单张图片预测命令
./darknet classifier predict /media/viatorsun/weather/weather.data /media/viatorsun/DataYZ/weather/weather.cfg /media/viatorsun/DataYZ/weather/weather.weights /media/viatorsun/weather/weather/7a964.jpg

检测结果

正确检测结果

错误检测结果


3、darknet 批量测试图片

通过darknet的 ./darknet classifier predict 命令只能对单张图片的进行测试,并且检测结果

#  !/usr/bin/env  python
#  -*- coding:utf-8 -*-
# @Time   :  2023.08
# @Author :  绿色羽毛
# @Email  :  lvseyumao@foxmail.com
# @Blog   :  https://blog.csdn.net/ViatorSun
# @Note   :  将代码保存为 predict.py 放置到 /darknetAB3.0/predict.py


import os


data_path = '/media/viatorsun/DataSet/test'					# 待检测图像路径
save_dir  = "/media/viatorsun/DataSet/test_out"				# 检测结果保存路径


if not os.path.exists(save_dir):
    os.makedirs(save_dir)

score = os.path.basename(data_path)

for img in os.listdir(data_path):

    img_path = os.path.join(data_path, img)

    cmd = 	'./darknet classifier predict ./myTest/0_AI_model/weather/weather.data ' \ 		
    		'./myTest/0_AI_model/weather/weather_test.cfg ' \
          	'./myTest/0_AI_model/weather/weather_100000.weights ' + img_path

    state = "".join(os.popen(cmd).readlines())
    lst = state.replace("\n\n", "\n").split("\n")

   
    if float(lst[-3].split(" ")[-1]) >= float(lst[-2].split(" ")[-1]) :
    	label = lst[-3].split(":")[0] + lst[-3].split(" ")[-1][:4]  
    else:
    	lst[-2].split(":")[0]

    if not label == score:
        save_path = os.path.join(save_dir, img.split(".")[0] + "_" + label + "." + img.split(".")[-1])		# 将预测标签和对应置信度保存到文件名中
        os.system("cp %s %s"%(img_path, save_path))

    # print(state)


本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1128125.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

交传翻译在不同场合的差异,你了解多少?

交替传译就是指译员在讲话人发言后,将目标语言准确翻译出来的口译方式。两会期间的新闻发布会就是采用交传。与同传相比,交传更具挑战性,因为译员需要承受与听众直接交流的压力,同时也需要充分理解源语言的内容并进行适当的结构调…

日志报错 fork:Cannot allocate memory

现象描述 日志中出现报错信息 “fork:Cannot allocate memory”。如下图所示: 可能原因 可能是进程数超限导致。系统内部的总进程数达到了 pid_max 时,再创建新进程时会报 “fork:Cannot allocate memory” 错。 解决思路 1. …

有效防止重要需求遗漏的几点建议

防止重要需求的遗漏,保障需求的完整性,这直接关系着项目的成功和客户的满意度。如果关键需求被遗漏或忽视,项目可能无法达到预期的目标和交付成果,无法满足用户的需求和期望,直接影响产品的市场竞争力。 因此确保需求的…

哪吒X选车指南:推荐哪吒X 500lite 版

当下,紧凑型纯电动SUV市场新车不断,可选项越来越多。最近哪吒汽车又上市一款“大气舒适新标杆”——哪吒X,限时权益价10.88万元-12.88万元,以大空间,超舒适,更安全等优势,强势对标AION Y Plus和元Plus等车型。 很多有购车打算的消费者看过价格和配置,直呼哪吒X是“性价比显眼包…

【linux】SourceForge 开源软件开发平台和仓库

在linux上面安装服务和工具。我们经常会下载安装包。今天推荐一个网站。 SourceForge 开源软件开发平台和仓库 ​ 全球最大开源软件开发平台和仓库 SourceForge.net,又称SF.net,是开源软件开发者进行开发管理的集中式场所。 SourceForge.net由VA Softwa…

JavaScript_Pig Game摇骰子

对于一个大的项目,画流程图是一种特别好的方式! ● 我们首先把页面上的重置游戏、掷色子、切换用户存入变量中 const btnNew document.querySelector(.btn--new); const btnRoll document.querySelector(.btn--roll); const btnHold document.quer…

GoLong的学习之路(八)语法之Map

文章目录 Map初始化方式判断某个键是否存在map的遍历对value值遍历。对key值遍历 使用delete()函数删除键值对按照指定顺序遍历map元素为map的切片值为切片类型的map 做个题吧 Map 哈希表是一种巧妙并且实用的数据结构。它是一个无序的key/value对的集合,其中所有的…

Day 10 python学习笔记

高阶函数 map( ) map()函数接收两个参数,一个是函数,一个是Iterable,map将传入的函数依次作用到序列的每个元素,并把结果作为新的Iterator返回。(Iterator是一个可迭代对象) 再简单点说:从可迭代…

跨境电商的发展趋势及语言翻译的重要性

随着全球化的不断深入和互联网技术的普及,跨境电商在过去几年内得到了快速发展。跨境电商指的是企业通过电子商务平台销售商品或服务给其他国家或地区的消费者。这种模式不仅打破了传统国际贸易的限制,也为企业提供了更广阔的市场空间。 跨境电商的快速发…

音视频技术开发周刊 | 316

每周一期,纵览音视频技术领域的干货。 新闻投稿:contributelivevideostack.com。 日程揭晓!速览深圳站大会专题议程详解 LiveVideoStackCon 2023 音视频技术大会深圳站,保持着往届强大的讲师阵容以及高水准的演讲质量。两天的参会…

河南工业大学人工智能与大数据学院学子在第三届“火焰杯”软件测试开发选拔赛中 取得佳绩

近日,第三届“火焰杯”软件测试开发选拔赛落下帷幕,我校人工智能与大数据学院选派的多名参赛选手在王雪涛老师的指导下,经过激烈的角逐,取得优异成绩。其中,何鸿彬,贾文聪获得决赛二等奖,王静宇…

【PyTorch】深度学习实践 01 Overview

人工智能概述 课程前置知识 线性代数 概率论 (不要有路径依赖,遇到不会的就现学)Python基础 人工智能 问题分类 人工智能,实际上就是利用计算机来代替人脑进行智能工作,计算机所要实现的智能可以分为两大部分&am…

腾讯待办是不是停了?能准时提醒待办事项的APP

有不少网友会使用“腾讯待办”小程序来记录待办的事情,并且设置提醒时间,进行任务管理。不过有不少网友最近在使用腾讯待办小程序的时候,看到了“业务关停通知”的弹窗,想问一下,腾讯待办是不是停了?确实如…

JS多选答题时,选项互斥时的情况

在做答题类的项目时,应该会比较常见多选题选相互斥的问题,例如: 你喜欢什么颜色?()A、红色B、紫色C、蓝色D、灰色E、均无如该题,当选择选项E时,明显与其他选项互斥。这个时候经常会…

《作为一名编程新手,如何提升编程能力》

互联网行业是一个充满挑战且内卷比较严重的行业,程序员如何让自己在行业内一直保持竞争力,其实就是需要通过不断的学习提升自己,那么对于一个刚刚入门的新手,如何快速的提升自己呢?本文就和大家交流下入门级程序员想要…

Vue中linq的应用及语句示例

一、运行npm install linq 二、引入linq(在你需要用到的组件中引入) var Enumerable require(linq); linq并不需要在main.js中import和Vue.use(linq) 三、linq的具体应用 (1)linq.js 的方法解析说明(但是在不同的…

【Python】机器学习-K-近邻(KNN)算法【文末送书】

目录 一 . K-近邻算法(KNN)概述 二、KNN算法实现 三、 MATLAB实现 四、 实战 一 . K-近邻算法(KNN)概述 K-近邻算法(KNN)是一种基本的分类算法,它通过计算数据点之间的距离来进行分类。在…

RDD算子操作(基本算子和常见算子)

目录 一、基本算子 1.map算子 2.flatMap算子 3.filter算子 4.foreach算子 5.saveAsTextFile算子 6.redueceByKey算子 二、常用Transformation算子 1.mapValues算子 2.groupBy算子 3.distinct算子 4.union算子 5.join算子 6.intersection算子 7.glom算子 8.groupByKey算…

阿里巴巴中国站item_search_img按图搜索1688商品(拍立淘) API 返回值说明

1. 商品API:提供了搜索、详情、评价等与商品相关的接口,可以通过关键词搜索商品,获取商品详情、销量等信息。 2. 店铺API:提供了店铺信息、店铺内商品等接口,可以查询店铺的基本信息、主营类目、评分等,还可…

常用封装工具类

文章目录 前言一、保留指定小数位二、获取bean三、假分页计算四、星期计算五、经纬度计算距离 前言 一、保留指定小数位 import org.apache.commons.lang3.StringUtils; import java.math.BigDecimal;public class OffSetPointUtil {/*** 保留指定小数位数** param value 原始…