开源项目分析与使用
文章平均质量分 91
对与深度学习图像领域相关的开源项目进行基本分析与使用
万里鹏程转瞬至
一名热爱深度学习算法实践的算法工程师,工作日长期活动在线,有项目研发技术问题均可私聊。
展开
-
将gdip-yolo集成到yolov9模型项目中(支持预训练的yolov9模型)
YOLOv9意味着实时目标检测的重大进步,引入了可编程梯度信息(PGI)和通用高效层聚合网络(GELAN)等开创性技术。该模型在效率、准确性和适应性方面取得了显著改进,在MS COCO数据集上建立了新的基准。YOLOv9项目由一个独立的开源团队开发,建立在Ultralytics YOLOv5提供的强大代码库的基础上,展示了人工智能研究社区的合作精神。yolov9模型在coco数据集的效果如下所示。原创 2024-04-18 21:43:09 · 107 阅读 · 0 评论 -
LangSAM项目优化,将SAM修改为MoblieSAM,提速5~10倍
Language Segment-Anything 是一个开源项目,它结合了实例分割和文本提示的强大功能,为图像中的特定对象生成蒙版。它建立在最近发布的 Meta 模型、segment-anything 和 GroundingDINO 检测模型之上,是一款易于使用且有效的对象检测和图像分割工具。然而在整个流程中,GroundingDINO 通常耗时0.6s作用,segment-anything 通常耗时5-8s左右。原创 2024-03-28 22:14:36 · 370 阅读 · 0 评论 -
lang-segment-anything使用介绍
Language Segment-Anything 是一个开源项目,它结合了实例分割和文本提示的强大功能,为图像中的特定对象生成蒙版。它建立在最近发布的 Meta 模型、segment-anything 和 GroundingDINO 检测模型之上,是一款易于使用且有效的对象检测和图像分割工具。基于GroundingDINO 实现Zero-shot text-to-bbox方法。使用 Lightning AI 应用程序平台轻松部署。可自定义的文本提示,用于精确的对象分割。原创 2024-03-19 21:35:34 · 1162 阅读 · 2 评论 -
将FastSAM中的TextPrompt迁移到MobileSAM中
SAM提到了text prompt,但其代码中没有发布实现方式,MobileSAM也没有实现text prompt,而FastSAM以一种巧妙的方式实现了text prompt。这主要因为,在现有成熟的训练体系下加入Prompt机制是比较复杂的,MobileSAM基于解耦蒸馏绕过Prompt的训练(`使用sam原始的prompt的`),而FastSAM将Prompt看作一种结果稀疏化的方法(`对于位置类prompt,采用逻辑操作进行mask选择;对于text的prompt,基于clip对实例切片进行余弦原创 2024-03-17 15:12:48 · 308 阅读 · 0 评论 -
如何实现sam(Segment Anything Model)|fastsam模型
通过本博文的查阅与分析,实现fastsam是较为简便的,且fastsam的性能可以随着全景实例分割模型的发展而进一步提升,同时也说明了fastsam中prompt的实现。而在sam中,各种实现较为生涩难懂,主要说明sam的模型结构,基本原理,数据生成范式。sam的亮点在于基于少量的语义分割标签,迭代出了一个1.1B 标签超大型数据集,其不断扩展标注数据量的思想是值得学习的;而在fastsam中则是对SAT重新定义得出SAT,基于对全景实例分割模型的后处理实现了类似sam的性能。原创 2024-03-13 22:48:16 · 1286 阅读 · 0 评论 -
3060ti显卡+cuda12.1+win10编译安装生成fastdeploy的c++与python库
在cuda12中,调用官方发布的fastdeploy会出现报错,故此自行编译fastdeploy库。官网编译教程:https://github.com/PaddlePaddle/FastDeploy/blob/develop/docs/cn/build_and_install/gpu.md可选编译选项。原创 2024-02-08 00:03:29 · 256 阅读 · 0 评论 -
gdip-yolo项目解读:gdip模块 |mdgip模块 |GDIP regularizer模块的使用分析|生成带雾图像|生成低亮度图片
gdip-yolo是2022年提出了一个端到端的图像自适应目标检测框架,其论文中的效果展示了良好的图像增强效果。其提出了gdip模块 |mdgip模块 |GDIP regularizer模块等模块,并表明这是效果提升的关键。为此对gdip-yolo的项目进行深入分析。通过对gdip-yolo项目的分析,终于明白了为什么gdip-yolo与ia-yolo的数据存在差异其数据增强比例不一样。原创 2024-01-20 10:21:08 · 1372 阅读 · 2 评论 -
AOT-GAN-for-Inpainting项目解读|使用AOT-GAN进行图像修复
当前的图像修复方法可能会在高分辨率图像(例如 512x512)中产生扭曲的结构和模糊的纹理。这些挑战主要来自:(1)来自较远区域的图像内容推理,(2)对大缺失区域的细粒度纹理合成。为了克服这两个挑战,提出了一种增强的基于GAN的模型,称为(AOT-GAN),用于高分辨率图像修复。具体来说,为了增强上下文推理,AOT-GAN-for-Inpainting通过堆叠所提出的 AOT 块的多层来构建 AOT-GAN 的生成器。原创 2024-01-12 22:39:26 · 1928 阅读 · 6 评论 -
在ultralytics中实现obb检测,官方团队做了哪些修改?
在最新的在ultralytics中,官方团队已经提供了obb检测功能,并发布了相应的预训练模型,其具体使用可以参考。在ultralytics\nn\modules\head.py中,实现了OBB head,用于在网络head中新增预测值用于进行角度预测,可见其是通过cv4 进行角度特征提取,最终预测一个角度值(ne ),`非csl、kdl的方式进行预测,其预测的角度范围为[-pi/4, 3pi/4]`原创 2024-01-08 00:45:00 · 1773 阅读 · 0 评论 -
再次认识ultralytics项目(大目标检测、小目标检测、yolov8-ghost、旋转目标检测、自动标注)
是一款前沿、最先进(SOTA)的模型,基于先前 YOLO 版本的成功,引入了新功能和改进,进一步提升性能和灵活性。YOLOv8 设计快速、准确且易于使用,使其成为各种物体检测与跟踪、实例分割、图像分类和姿态估计任务的绝佳选择。随着其官方团队对ultralytics项目的不断完善,其所支持的功能在不断扩展,为此重新对ultralytics项目进行深入分析。原创 2024-01-07 14:45:00 · 1942 阅读 · 1 评论 -
基于gradio快速部署自己的深度学习模型(目标检测、图像分类、语义分割模型)
gradio是一款基于python的算法快速部署工具,本博文主要介绍使用gradio部署目标检测、图像分类、语义分割模型的部署。相比于flask,使用gradio不需要自己构造前端代码,只需要将后端接口写好即可。此外,基于gradio实现的项目,可以托管到huggingface。原创 2023-12-26 22:14:41 · 1379 阅读 · 2 评论 -
使用ZoeDepth生成深度估计图
目前单目深度估计分为两个派系,。ZoeDepth是 第一个结合相对和绝对深度的多模态单目深度估计网络。本博文仅记录使用ZoeDepth生成深度估计图的过程(因为直接按项目说明中进行使用会报错误)项目地址: https://github.com/isl-org/ZoeDepth论文地址: https://arxiv.org/pdf/2302.12288.pdf。原创 2023-09-20 22:10:07 · 4158 阅读 · 20 评论 -
基于ROPNet项目训练modelnet40数据集进行3d点云的配置
一种新的深度学习模型,该模型利用具有区别特征的代表性重叠点进行配准,将部分到部分配准转换为部分完全配准。基于pointnet输出的特征设计了一个上下文引导模块,使用一个编码器来提取全局特征来预测点重叠得分。为了更好地找到有代表性的重叠点,使用提取的全局特征进行粗对齐。然后,引入一种变压器来丰富点特征,并基于点重叠得分和特征匹配去除非代表性点。在部分到完全的模式下建立相似度矩阵,最后采用加权支持向量差来估计变换矩阵。原创 2023-12-05 22:47:28 · 654 阅读 · 15 评论 -
使用PCReg.PyTorch项目训练自己的数据集&进行点云配准
本文方法与常见的图像配准逻辑类似,基于采样与transfrom操作从源点云生成目标点云,然后进行训练与评测。总体看来效果不如open3d自带的fgr方法,可以作为入门级项目进行使用。网络是基于PointNet + Concat + FC的,它没有其它复杂的结构,易于复现。因其简洁性,这里暂且把其称作点云配准的Benchmark。因作者源码中复杂的(四元数, 旋转矩阵, 欧拉角之间)的变换操作和冗余性,且其PyTorch版本的不完整性(缺少评估模型等,最近又更新了),原创 2023-12-02 11:13:55 · 534 阅读 · 3 评论 -
LORA项目源码解读
LORA技术使用RoBERTa(Liu et al.,2019)base和large以及DeBERTa(He et al.,2020)XXL 1.5B在GLUE基准上获得了与完全微调相当或优于完全微调的结果,而只训练和存储了一小部分参数。LORA技术展现了与全参数迁移学习相同甚至更优的效果在GPT-2上,LoRA与完全微调和其他大模型微调的方法(如Adapter(Houlsby et al.,2019)和Prefix(Li和Liang,2021))相比都要好。原创 2023-09-09 21:45:28 · 1225 阅读 · 0 评论 -
IA-SEG项目中DIAL-Filters(IAPM模块+LGF模块)使用解读
CNN-PP模块为DIP模块优化图像提供filter参数,其本质是一个简洁的卷积神经网络,其输入部分为低分辨的原始图,其输出为DIP模块的优化参数。在IA-SEG中,CNN-PP模块的参数(预测4个filter参数,278K)比在IA-YOLO(预测15个filter参数,165k)要多。注:IA-SEG与IA-YOLO均为同一作者实现DIF模块全程Differentiable Image Filters,其由几个具有可调超参数的可微滤波器组成,包括曝光度、伽玛度、对比度和锐度。原创 2023-09-02 14:18:54 · 4189 阅读 · 11 评论 -
Segment Anything项目代码基本解读
Sam由ImageEncoderViT,PromptEncoder,MaskDecoder三个部件组成,ImageEncoderViT负责将image输入编码为图像嵌入(描述图像的特征向量);PromptEncoder负责将用户输入的位置提示信息(point、boxes、mask)编码为空间嵌入(描述位置的特征向量);MaskDecoder用于对接ImageEncoderViT与PromptEncoder的输出,依据输入的图像特征向量和位置特征向量,输出对应位置的mask信息。原创 2023-06-15 19:30:46 · 2108 阅读 · 0 评论 -
IA-YOLO项目中DIP模块的初级解读
IA-YOLO项目源自论文,其提出端到端方式联合学习CNN-PP和YOLOv3,这确保了CNN-PP可以学习适当的DIP,以弱监督的方式增强图像检测。IA-YOLO方法可以自适应地处理正常和不利天气条件下的图像。阅读论文发现只介绍了IA-YOLO的实际效果,对DIP模块和CNN-PP介绍较少,故此查阅源码分析其实现。通过分析发现,IA-YOLO使用filtered_image_batch 与 input_data_clean的mse loss优化CNN-PP模块的输出。原创 2023-08-27 13:06:03 · 7900 阅读 · 38 评论