当前位置: 首页 > news >正文

建站运营新闻网页设计需要学什么学历

建站运营新闻,网页设计需要学什么学历,厦门网站建设公司哪个好,wp网站建设教程前言:Deep Snake是一个比较经典结合了轮廓的深度学习分割方法,但是去实际运行Deep Snake项目的时候遇到了很多问题。这篇文章把Deep Snake从环境配置、训练到预测评估,都做了详细的教程,还补充了一些相关的知识点。 Deep Snake配置和运行 Deep Snake信息数据集COCOMask-&g…

前言:Deep Snake是一个比较经典结合了轮廓的深度学习分割方法,但是去实际运行Deep Snake项目的时候遇到了很多问题。这篇文章把Deep Snake从环境配置、训练到预测评估,都做了详细的教程,还补充了一些相关的知识点。

Deep Snake配置和运行

  • Deep Snake信息
  • 数据集
    • COCO
    • Mask->COCO代码
  • 配置环境
    • 本地环境
    • 配置环境
  • 训练
    • 设置
    • 训练
    • 报错:CUDA显存不足
    • 多GPU改单GPU
  • 测试
    • 评估指标
  • Result->Mask
    • Result格式
    • 转换代码

Deep Snake信息

文章:https://arxiv.org/abs/2001.01629
代码:https://github.com/zju3dv/snake

数据集

Deep Snake提供了三种数据集格式进行训练,分别是Cityscapes、COCO 和SBD 。
我原本数据的label都是mask掩膜数据,选择针对COCO进行转换。因为转COCO数据是三个里面我认为比较方便简单的。

COCO

既然要转成COCO数据集,那肯定要对COCO数据集有些理解。

COCO作用
COCO数据集,根据用途不同, 数据集分为目标检测, 目标分割( 对应的标注信息是 “bbox” 和 “segmentation”), 图像语义理解(“captions”), 人体关节点(“keypoints”)。

COCO标注格式
COCO的标注文件和之前mask作为标注文件不同。
因为我是做分割的,之前常用的分割数据都是原图作为input,然后mask数据作为label的。
但是COCO数据的特点,就是label标注文件是json构成的。
COCO的标注json文件通常会放在annotations文件夹下面。

COCO的标注json文件,包括几个部分:

  • info:存放数据集的基本信息,例如年份、版本、描述、贡献者、URL和创建日期;
  • licenses:数据集的许可信息,例如ID、名称和URL;
  • images:包含多个image,每个image包含输入图片的ID、宽度、高度、文件名、许可证ID、Flickr URL、COCO URL和获取日期;
  • annotations:包含多个标注信息(label),每个标注包含ID、图像ID、类别ID、边界框(bbox)、区域面积(area)、分割信息(segmentation)和是否拥挤(iscrowd)标志;
  • categories:包含多个类别的信息,每个类别包含ID、名称和超类别;

总结来说,主要关注的就是images、annotations和categories。

直接去看COCO格式的话,images和categories都很好理解,有多少张图片和类别就照着写,但是annotations需要更详细理解一下。

"annotations": [{"segmentation": [[510.66,423.01,511.72,420.03,510.45,416.0,510...,423.01]],# 第一个点x,y坐标;第n个点x,y坐标;其精度均为小数点后两位"area": 702.1057499999998,# 区域面积"iscrowd": 0,"image_id": 289343,# 对应图片ID"bbox": [473.07,395.93,38.65,28.67],# 定位框,左上角的坐标和宽高度"category_id": 18,# 类别ID"id": 1768# 对象ID,因为每张图片不只有一个对象},

Mask->COCO代码

因为我用的是掩膜数据集,需要代码转为COCO数据集。Mask转COCO的代码网上有很多,我参考了这篇博客Mask图像转化成COCO数据,主要是通过第一方法代码修改mask轮廓为COCO格式。
下面是对参考的代码做出一些注释解释,各位可以根据自己需求进行修改。
这是一个两个类别的转换代码,主要知道怎么修改数据来源地址、种类、大小就可以了。

import json
import numpy as np
from pycocotools import mask
from skimage import measure
import cv2
import os
import sys
if sys.version_info[0] >= 3:unicode = str
__author__ = 'hcaesar'
import io
def maskToanno(ground_truth_binary_mask,ann_count,category_id):fortran_ground_truth_binary_mask = np.asfortranarray(ground_truth_binary_mask)encoded_ground_truth = mask.encode(fortran_ground_truth_binary_mask)ground_truth_area = mask.area(encoded_ground_truth)ground_truth_bounding_box = mask.toBbox(encoded_ground_truth)contours = measure.find_contours(ground_truth_binary_mask, 0.5)annotation = {"segmentation": [],"area": ground_truth_area.tolist(),"iscrowd": 0,"image_id": ann_count,"bbox": ground_truth_bounding_box.tolist(),"category_id": category_id,"id": ann_count}for contour in contours:contour = np.flip(contour, axis=1)segmentation = contour.ravel().tolist()annotation["segmentation"].append(segmentation)return annotation
# 针对两个类别分别是block和mouse
# 如果你只有一个类别的话,可以删掉其中一个种类,把剩下一个改成自己的;注意后面生成json也要做相应的修改
block_mask_path="D:\\6Ddataset\\XieSegmentation\\1block\\block_mask_thresh"# mask图像地址
mouse_mask_path="D:\\6Ddataset\\XieSegmentation\\2mouse\\mouse_mask_thresh"
block_mask_image_files=os.listdir(block_mask_path)
mouse_mask_image_files=os.listdir(mouse_mask_path)
jsonPath="blockmouseAll.json&#
http://www.dtcms.com/a/577442.html

相关文章:

  • 开题报告之基于SpringBoot框架的图书借阅系统的设计与实现
  • 金融RAG落地之痛:不在模型,而在数据结构
  • Spring Boot 中数据源自动配置的核心流程
  • Java HashMap深度解析:数据结构、原理与实战指南
  • 宁夏建设网站的公司电话大学生为什么不去中建
  • android su执行命令
  • 面向强化学习的状态空间建模:RSSM的介绍和PyTorch实现(2)
  • 从数据孤岛到智能决策:企业能碳管理破局五维策略
  • 构建面向信创生态的数据中台(一):骨架与血液——DML/DDL职责划分与执行机制
  • C语言-数据结构-1-动态数组
  • iOS 审核 上架 被拒 4.3a 【改革】【灾难来袭】
  • 从0开始学算法——第二天(时间、空间复杂度)
  • Jenkins使用指南1
  • 在 macOS 上使用 Homebrew 安装 MySQL 8.0 完整指南
  • redis 在网站开发中怎么用江西网站建设销售电话
  • AIoT | 软件:Astra MCP边缘算力构建详解
  • Apache Paimon 查询全流程深度分析
  • 网站中英文切换代码企业服务器配置方案
  • 专业的内蒙古网站建设160外发加工网
  • 团队学习与企业破局
  • 编程语言|前端开发——WebAssembly 和 JavaScript 该怎么选?
  • 佛山美容网站建设广州旅游网站建设设计公司
  • 深入理解HTTPS协议:从密码学基础到TLS 1.3实战
  • rhcse----DNS
  • 苍穹外卖资源点整理+个人错误解析-Day05-Redis、店铺营业状态设置
  • Vue 3.5 新API解析:响应式革命、SSR黑科技与开发体验飞跃
  • 【tips】项目中 package.json的 “type“对于文件的导入导出的区别
  • 【科研绘图系列】R语言绘制曲线图(curve plot)
  • 骏域网站百度信息流是什么
  • 【科研绘图系列】R语言绘制地图(map plot)