- 博客(28)
- 收藏
- 关注
原创 如何确定最佳可信度阈值
这里比较容易搞混的是AP和F1 Score,一定要记得,PR曲线是和你给的iou thresold没关系的!我们可以大致从PR图看出最佳的阈值是多少,但是我们还得去计算F1 Score,才可以更定量地找到最佳的能权衡recall和presicion的阈值!,该点的横坐标是可信度阈值,纵坐标是在该阈值下计算得到的Precision和Recall。P和R往往是相反的关系。所以,找到你代码中计算presicion和recall的地方,加上计算F1的代码就可以了!那儿对应的可信度阈值(iou阈值)就是你需要的!
2023-08-04 22:28:34
1420
1
原创 mmrotate:详细解读eval_map.py里面的计算TP和FP的代码,并计算虚警率和漏警率
简单来说:如果一个det的IOU大于阈值,那么就先认为它是True,但有可能nms那一步的时候,用score筛选得不是很好,以至于好几个det同时框在了一个gt上,所以那些框的不是很好的det即使大于了iou阈值,也要被划成fp;另外,对于那些小于iou阈值的det,就全部划成了fp。对于那些置信度本来就小于score的det,就认为是negetive,也就是fp和tp全部赋为0。如果需要计算fn,那就用gt的数量减去tp就好~
2023-03-30 22:50:39
1126
原创 mmrotate:修改测试时候的IOU,虚警率和漏检率的计算
如果有时候效果不错,但mAP很低,且recall也很低,这时候可能得调一下这个iou_thr,才可以让mAP好看一点。原来默认是0.5的,现在改成了0.3,马上就好看起来了。
2023-03-24 15:59:55
847
1
原创 在安装mmdet dev.3x的时候遇到pycocotool的问题的解决方式:不装pycocotool!
但是你可以想想,你是不是一定要装它!本质上来说,其实coco只是一种数据集的标注格式,你不用coco这种标注方式,不就得了嘛!所以pycocotool就可以不装啊!如果你为了装mmrotate而先装了mmdet,那更不需要coco数据集格式了,因为旋转框没有coco这种格式,最常用的是dota!看到题目是不是要被笑死了。这个属实是遇到坑直接躺平的行为。之后再运行一下setup.py就可以啦!
2023-03-11 19:58:07
285
原创 mmrotate:如何在没有标签的测试集上进行推理
所以,代码如下:对某一文件夹下的所有txt文件,打开之后,随机写8个正整数,数字位于0~3之间,数字中间用空格隔开,之后再空一格空格,写“ship”,之后再空一个空格,之后写“2”.所以,我们需要搞8个随机数,再写一个"ship"(也就是你的类别,按照你的意思去修改),再写一个2(因为测试集里面是2,不是0或者1!但是,如果你在里面随机按照数据集的格式敲一些数字进去,就又可以进行测试了,所以,按照数据集的样子,我照猫画虎搞了一下。之后就可以开开心心训练了!
2023-03-10 16:34:14
746
3
原创 (已解决)微小船只目标检测模型不稳定,loss和梯度为nan
因为船只的尺寸特别小,只有几个像素,所以如果你copypaste的话会丢失很多背景信息,本来船只的识别就很靠背景信息,比如船尾迹之类的,如果你复制粘贴就没有背景信息了,就更难识别了,模型就不稳定了!这几天用mmdetection和mmrotate来做微小物体检测的时候,加了一个Rcopypaste的数据增强的trick,发现无论怎么调参,Loss和grad_norm训着训着就变成nan了,换什么loss都不行。所以解决方式:把Rcopypaste换成RMosaic!
2023-03-04 10:08:56
861
1
原创 mmdetection可视化数据集时,发现部分标签遗漏,微小物体检测
这样马上就看出问题了!而我是做微小物体检测的,所以很容易漏掉这些很小的样本!为了保守起见,我把le135和le90同样的地方也都注释掉了,不让他直接return。我换成了大一点的样本的数据集,发现就不会有这个问题。首先他会调用一个叫做dota.py的代码,因为我是dota的数据集类型,所以就调这个。但发现部分的标签不见了,比如下面这张图,红色所指的地方没有标出来。readlines的时候是没事的,但是转成obb就有问题了。因为默认就是oc,所以我就直接看oc版本的poly2obb_np发生了什么。
2023-02-10 13:24:06
620
原创 Google Earth Engine(GEE):A mapped function‘s arguments cannot be used; ee.element与python的类型之间的转换;
本文解决这个问题:EEException: A mapped function's arguments cannot be used in client-side operations。这个坑,我踩了四天。但是它是没有循环的,因此我想对很多个时间或者很多个位置去做的时候,就得写一个循环套上去。好了问题来了。这个例子里面很多的getInfo,埋下了很多坑。
2023-01-11 18:59:22
1796
2
原创 Microsoft Planetary Computer(MPC):在MPC上装Geemap
因为他带着GPU,同时服务器在欧洲,所以下载什么包都是刷一下就过去了。这个标题真的,微软员工看了都流泪,自己的产品上面装谷歌的东西。因为是刚刚装,所以需要干一件事情:配置许可。然后就一路确认安装就好,总共点了两次y。只需要运行四行代码,搞定一切。整个流程下来五分钟一定搞定!
2023-01-07 19:36:51
276
原创 完整记录在mmrotate训练和测试自制数据集!保姆级教程!
为了图方便,我就把自己的数据集命名成了DOTA,这样就不用改json文件了。因为我是用云服务器的,死活修改不了json文件,所以我需要加上-ann-dirs data/DOTA/test/labelTxt/。我新建的叫做my_config.py。请详细阅读官方的配置文件的讲解文档!但有时候没有,但它也会列出所有的模型的名字,自己看一下报错的详细内容应该可以搞定的。原本的ms_test.json是没有标签的路径的!我传的文件叫做DOTA2.zip,之后改个名哈。到这一步,你的原始的数据集就放好了!
2023-01-06 23:25:03
2987
10
原创 mmrotate:数据集裁剪
这里因为我想用多尺度的影像,所以就是ms,如果是单一尺度的话就是ss.虽然我也不是很理解为什么ms裁出来的也是一个尺度的.好奇怪.官网没有告诉我们的具体语法!比如下面这样,就修改了Label的地址.
2023-01-06 20:31:48
723
原创 roLabelImg安装、使用快捷键、转DOTA格式
避坑指南:其他教程真的不行!那个pyqt太难安装了!死活安装不上或者安装上了报什么import的错。我装了两天,只有这个教程works!另外,不要妄想着在云服务器上装这个软件,难度++。
2023-01-06 16:17:39
658
原创 旋转目标检测入门——RetinaNet和Rotation RetinaNet
几个月我一直搞不懂旋转目标检测到底相对于水平的目标检测改进在了哪里,直到我读到了这一篇文章:《基于计算机视觉的芯片缺陷检测方法研究》。一篇硕士论文,里面写得特别清楚,胜过我读过的所有blog。今天就分享给大家这一篇文章的这一部分的内容!原文说得非常详细了。省流:在算位置的loss的里面,加了一个算角度的偏移量。
2023-01-05 20:05:17
1410
原创 船只检测文献阅读——第二期
第二次文献阅读来了!这一期还是包括了一些近两年来的船只检测文章,大家如果有感兴趣的可以继续阅读喔~这一期稍微有点少,是因为在忙别的事情同时我阳了。
2022-12-24 18:05:22
161
原创 Microsoft Planetary Computer(MFC):完整记录跑通mmrotate的demo!
非常贴心给大家准备了一个能一键运行的代码,运行完就可以顺利装完所有东西!直接跑demo!我来详细介绍一下。首先创建虚拟环境,然后配置各个版本的包。要注意这些包的版本一定是要按照我上面的那些版本,其他的版本不一定能跑通!!!!要不然我为什么踩了四天的坑跑了四天的demo!!!!!!!(摔之所以要创建一个ipykernel,是因为如果不创建你就不能在notebook里面进入虚拟环境!就是明明看到自己有虚拟环境丹斯死活进不去!
2022-12-18 19:28:03
843
1
原创 Microsoft Planetary Computer(MPC):在云平台上创建虚拟环境和部署MMrotate
我来填上次说MPC很难创建虚拟环境的坑了!这次为了部署旋转目标检测的mmrotate的库,创建一个叫做openmmlab的虚拟环境。,和官网步骤不一样的时候我就会用红色字体标出来!
2022-12-16 15:13:38
392
原创 GITHUB上最新关于目标检测、小目标、旋转目标的论文/代码合集!
目标检测的代码全集,按照时间顺序总结,各种经典的和不经典的都有。小目标检测终于来了!但这个是论文集,不是代码集或者包。大名鼎鼎的Transformer,这个包可以调用Deformable DETR。上面两个DETR的变种都对CUDA和GCC有要求。下文的格式就是:网址+内容介绍,让我们开始吧!基本你想到的方法都有了,同时也在持续更新!目标检测的论文集,按照时间顺序总结,截止至2020年全部。用来评价模型的预测结果的!基础知识讲解,也可以跑通代码。这些是旋转目标检测的搜索结果。这些是DETR的搜索结果。
2022-12-15 21:56:46
1377
原创 Microsoft Planetary computer(MPC):终端的使用,和删除kernel
环境没配好,但是我已经学会了如何删kernel了!先看看里面有什么包吧~用 conda list来看!它是自带python的和其他常用的包的,这里的python的版本默认是3.9,实在是太新了一点。我们来看它自带有多少环境,发现只有一个。
2022-12-15 09:58:47
449
原创 Planetary computer:官方帮助文档介绍
继GEE后,在老板的建议下入手了Planetary computer行星计算机,简称MPC。为啥入手?还不是因为想白嫖GPU和担心某天翻不了墙吗。今天带着大家一起读一下官方的帮助文档,也记录一下自己配置环境里面的坑。 先放帮助文档链接:Planetary Computer 再放官网的链接:https://planetarycomputer.microsoft.com/ 进入官网,点击request access就好 等待两天左右
2022-12-13 13:18:56
402
原创 船只检测——文献阅读第一期,目标检测+哨兵Sentinel数据
因为毕设做船只检测,应该就是用哨兵二号数据提取船只,所以阅读了很多这种文献。想做一个新的企划,叫做和我一起读文献(read with me!),分享最近读的所有文献,0代码,纯心得。后面几篇应该都是船只的文献阅读啦~大家可以根据思维导图上的论文名称来选自己感兴趣的。下面是画的思维导图。已经筛除了部分灌水论文。基本都是近5年的,基本都精读过。这么多篇读下来的感受是:深度学习YYDS!
2022-11-28 21:21:09
1104
4
原创 Google earth engine(GEE):基于MODIS的LST(地表温度数据)计算一定时间序列的城市热岛强度(UHI),并绘制直方图
Google earth engine(GEE):计算一定时间序列的城市热岛强度(UHI),并绘制直方图;时间序列分析;城市热岛分析;join函数的使用;计算像元面积,均值
2022-11-14 21:35:29
7398
42
原创 Google Earth Engine(GEE): reduceRegion的坑,求影像像元的均值/最大值/最小值/面积
reduceRegion的坑,求影像像元的均值/最大值/最小值/面积。我对某一景MODIS的LST数据各波段求均值,其中我想要的是其中的“LST_Night_1km”和“LST_Day_1km”这两个波段的均值。如果你没有打印meanDict的结果,只是通过上面一开始的波段顺序来觉得我想要的是序列数为0和4的结果。这里就用了推荐的get("波段名称"),没有用get(数字),后者太容易出错了!因为你发现,求完了mean之后,返回的字典里面的东西,不是以前那个顺序了!是按照字母顺序来排序了!
2022-11-12 21:08:56
1980
原创 Google Earth Engine(GEE):栅格数据集转矢量数据集(reduceToVectors),并对矢量数据集新增字段并标号
GEE,栅格数据集转矢量数据集(reduceToVectors),并对矢量数据集新增字段并自定义标号,也可以修改编号!
2022-11-10 22:32:38
1896
2
原创 Google earth engine(GEE):得到具有一定规律的时间的影像,筛选列表的非空影像,MODIS地表温度
使用Modis的Aqua的8天合成的地表温度数据,制作大湾区的时间序列温度影像数据,并剔除空的影像。
2022-11-06 09:56:36
2214
2
原创 GEE(Google earth engine)中的Landsat影像的选择和去云(附代码)
关于Landsat影像的导入和去云,这一篇就够了!
2022-10-28 22:44:54
12258
18
原创 GEE入门之路(从【初学者】角度,大白话)——附海面风速插值代码
非常初级的GEE入门教程!大白话!有手就行!附海面风速插值代码,克里金插值,时间插值。
2022-10-20 21:04:18
3823
11
原创 Planetscope数据的优缺点、访问方式与下载方式
超级无敌详细的planetscope高分数据下载方式!超详细的数据介绍!免费!3m分辨率!自己的心得体会~
2022-10-12 17:19:42
8619
28
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人