阅读代码的记录

1-utils_metrics.py用在train.py中做指标衡量,现在想在推理(predict.py)的时候衡量一下指标
2-调研眼睛部位的单独分割。

https://blog.csdn.net/qq_40234695/article/details/88633094

衡量图像语义分割准确率主要有三种方法:
像素准确率(pixel accuracy, PA)
平均像素准确率(mean pixel accuracy, MPA)
平均IOU(Mean Intersection over Union, MIOU )

像素准确率(Pixel Accuracy,PA)、
类别像素准确率(Class Pixel Accuray,CPA)、
类别平均像素准确率(Mean Pixel Accuracy,MPA)、
交并比(Intersection over Union,IoU)、
平均交并比(Mean Intersection over Union,MIoU),
其计算都是建立在混淆矩阵(Confusion Matrix)的基础上。————————————————
原文链接:https://blog.csdn.net/weixin_38353277/article/details/121029978

from ultralytics.engine.model import Model
from ultralytics.models import yolo  \# noqa
from ultralytics.nn.tasks import ClassificationModel, DetectionModel, PoseModel, SegmentationModel
class YOLO(Model):"""YOLO (You Only Look Once) object detection model."""@propertydef task_map(self):"""Map head to model, trainer, validator, and predictor classes."""return {'classify': {'model': ClassificationModel,'trainer': yolo.classify.ClassificationTrainer,'validator': yolo.classify.ClassificationValidator,'predictor': yolo.classify.ClassificationPredictor, },'detect': {'model': DetectionModel,'trainer': yolo.detect.DetectionTrainer,'validator': yolo.detect.DetectionValidator,'predictor': yolo.detect.DetectionPredictor, },'segment': {'model': SegmentationModel,'trainer': yolo.segment.SegmentationTrainer,'validator': yolo.segment.SegmentationValidator,'predictor': yolo.segment.SegmentationPredictor, },'pose': {'model': PoseModel,'trainer': yolo.pose.PoseTrainer,'validator': yolo.pose.PoseValidator,'predictor': yolo.pose.PosePredictor, }, }

YOLO类继承了ultralytics文件里面的engine文件里面的model.py文件里面的 Model类别。这个时候应该去看from ultralytics.engine.model import Model里面Model里的原码(但是下面的@property下面的代码又是什么意思呢)。

from yolov8.ultralytics import YOLO
from segment_anything.utils.transforms import ResizeLongestSide
from segment_anything import SamPredictor, sam_model_registryclass TongueSeg():def __init__(self, device = 'cuda:0', model_path="/share1/luli/yolov8SAM/pretrained_model") -> None:self.device = deviceself.model_type = 'vit_b'self.checkpoint = model_path+'/tonguesam.pth'self.det_model=YOLO('/share1/luli/yolov8/runs/detect/train20/weights/best.pt', task='detect') self.sam_model = sam_model_registry[self.model_type](checkpoint=self.checkpoint).to(device) 
   self.det_model=YOLO('/share1/luli/yolov8/runs/detect/train20/weights/best.pt', task='detect') 是from yolov8.ultralytics import YOLO,导入YOLO--->>>点击继续入YOLO,进入到下面这个地方:from ultralytics.engine.model import Modelfrom ultralytics.models import yolo  # noqafrom ultralytics.nn.tasks import ClassificationModel, DetectionModel, PoseModel, SegmentationModelclass YOLO(Model):上面又是继承了Model,Model是从ultralytics.engine.model里面导入的,这时候要点击Model去查看源码,如下:import inspectimport sysfrom pathlib import Pathfrom typing import Unionfrom ultralytics.cfg import TASK2DATA, get_cfg, get_save_dirfrom ultralytics.hub.utils import HUB_WEB_ROOTfrom ultralytics.nn.tasks import attempt_load_one_weight, guess_model_task, nn, yaml_model_loadfrom ultralytics.utils import ASSETS, DEFAULT_CFG_DICT, LOGGER, RANK, callbacks, checks, emojis, yaml_load		class Model(nn.Module):上面导入了cfg,nn.tasks,utils 

utils里面有个__init__.py函数,函数上面有个callbacks文件夹,文件夹里面有很多的 结构可视化

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

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

docker的资源限制及容器应用

一、docker资源限制 在使用 docker 运行容器时,一台主机上可能会运行几百个容器,这些容器虽然互相隔离,但是底层却使用着相同的 CPU、内存和磁盘资源。如果不对容器使用的资源进行限制,那么容器之间会互相影响,小的来说…

详细教程 - 从零开发 Vue 鸿蒙harmonyOS应用 第一节

关于使用Vue开发鸿蒙应用的教程,我这篇之前的博客还不够完整和详细。那么这次我会尝试写一个更加完整和逐步的指南,从环境准备,到目录结构,再到关键代码讲解,以及调试和发布等,希望可以让大家详实地掌握这个过程。 一、准备工作 下载安装 DevEco Studio 下载地址:…

解决由于找不到XINPUT1_3.dll,无法继续执行代码问题的多种方法

在打开游戏时突然提示xinput1_3.dll丢失的情况,出现这样的问题可能会对于电脑新手是一件棘手的事情,xinput1_3.dll(Microsoft XINPUT Library)是一款由Microsoft公司开发的动态链接库文件,主要用于支持游戏手柄的即插即…

新闻式软文怎么写大纲?媒介盒子解答

在写新闻式软文的前的关键一步就是列好大纲,有了一份详细的大纲,我们就能快速组织好思路,确保文章结构清晰,提高软文推广的效果,今天媒介盒子就来和大家聊聊新闻式软文怎么写大纲。 一、 写作步骤 大纲的写作步骤主要…

SQL Server数据库使用T-SQL语句简单填充

文章目录 操作步骤:1.新建数据库起名RGB2.新建表起名rgb3.添加三个列名4.点击新建查询5.填入以下T-SQL语句,点击执行(F5)6.刷新之后,查看数据 操作环境: win10 Microsoft SQL Server Management Studio 20…

红帽认证RHCE9.0版本2023年12月的红帽9.0版本RHCSA题⽬+答案,本人已过,全国通用

红帽认证9版本2023年12月的红帽9.0版本RHCSA题⽬答案,本人已过,全国通用 需要完整的RHCSA和RHCE的考试答案的题目以及RHCE9考试的模拟环境和考试笔记教材的请添加微信,需备注来自csdn,不然通不过 1、配置⽹络设置? 将?node1?…

C语言->动态内存管理

系列文章目录 文章目录 前言 ✅作者简介:大家好,我是橘橙黄又青,一个想要与大家共同进步的男人😉😉 🍎个人主页:橘橙黄又青_C语言,函数,指针-CSDN博客 目的:学习malloc&#xff0c…

绿色视角下的高校校园建设及能耗管理

摘 要:2019年住建部发布了《绿色校园评价标准》(GB/T51356—2019),将创建绿色校园提上了日程。绿色校园建设的目标是践行绿色发展理念,建立生态文明教育工作长效机制。创建绿色校园要从政府、社会、学校三个层面来实施,以加快高校…

使用Python处理Excel中一对多匹配关系

import pandas as pddf pd.read_excel(rC:\Users\wangkejun\Desktop\1.xls)# 提取一一对应的数据 sku_list [] channel_list []for sku, channel in zip(df[XXX], df[XXXX]):if pd.isna(channel): # 判断是否为缺失值continue # 是缺失值则跳过该行数据if , in str(sku): …

Android---Kotlin 学习007

集合可以方便你处理一组数据,也可以作为值参传给函数,和我们学过的其它变量类型一样,List、Set 和 Map 类型的变量也分为两类,只读和可变。 List创建与元素获取 通过 listOf() 函数创建一个 List 集合。 val listString : List&…

快来看!苹果开放侧载,对开发者来说是祸是福?

不知道你们听说了没有? 苹果公司在向SEC提供的2023年10-K文件中明确表现,伴随着欧盟委员会《数字市场法案》的正式落地将不得不在苹果手机上开放“应用侧载”功能。 简单来说,就是你的App可以不用在App Store里下载,而是可以通过…