遥感图像处理与深度学习
武大遥感国重在读
carry_hjr
这个作者很懒,什么都没留下…
展开
-
mmseg返回logits
info主要是为了投票mmseg/models/segmentors/base.py 里面 forward if return_loss: return self.forward_train(img, img_metas, **kwargs) else: return self.forward_test(img, img_metas, **kwargs)forward_test 里面 if num_aug原创 2022-01-18 01:36:14 · 3016 阅读 · 2 评论 -
手撸fwiou和mmseg加入fwiou指标
mmseg实现mmseg有基于numpy的eval和 基于 tensor的 preval两种模式,好在都是基于 total_area_intersect, total_area_union, total_area_pred_label, total_area_label 这四个值去计算的,在 /mmseg/core/evaluation/metrics.py 里面,同时freq = np.array(total_area_label / total_area_label.sum())那在 得到 r原创 2022-01-17 15:09:05 · 1269 阅读 · 4 评论 -
实验结果记录粗暴好用方式
搞个石墨的表格,然后在val评估时把每个类的指标制作成list print出来,粘贴到表格里,然后就可以如下了可以方便的排序 标红 对比原创 2021-07-14 15:04:37 · 138 阅读 · 0 评论 -
将xml中的中文标签转为英文
别问,就是写着玩from pypinyin import lazy_pinyinfor image_id in image_ids: with open("./input/ground-truth/"+image_id+".txt", "a", encoding='utf8') as new_f: root = ET.parse("/home/yons/data/huawei/shenzhen/trainval/VOC2007/Annotations/"+image_id+".原创 2021-07-11 22:47:59 · 484 阅读 · 0 评论 -
PIL读取具有旋转属性的图片
手机拍的一般都有旋转属性,直接读不行,换成下面的import PILimport PIL.ExifTagsimport PIL.Imageimport PIL.ImageOpsdef apply_exif_orientation(image): try: exif = image._getexif() except AttributeError: exif = None if exif is None: return ima原创 2021-07-01 20:30:44 · 213 阅读 · 1 评论 -
使用Detectron2训练自己的数据集
如何使用自己的coco格式数据集之前看了一篇 https://blog.csdn.net/weixin_43823854/article/details/108980188 实现有点啰嗦,那些class 颜色不用管detectron2/data/datasets/coco.py 里面的 register_coco_instances 函数里取消meta的传入detectron2/data/datasets/builtin.py 里面的_PREDEFINED_SPLITS_COCO 字典里加入数据集名原创 2021-06-24 23:43:48 · 2599 阅读 · 0 评论 -
mmdet整理所有模型的coco指标
config_dir = '/home/yons/workplace/python/mmdetection-2.11.0-hjr/configs'import globmd_paths = glob.glob(config_dir+'/*/*.md')print(len(md_paths))log_urls = []def Find(string): regex = r'http[\S]*.json' url = re.findall(regex,string) r原创 2021-06-18 16:07:09 · 700 阅读 · 0 评论 -
stitcher源码阅读
陈康老哥的实现虽然是用maskrcnn-benchmark的 但实现的还挺全,batch和非batch都实现了,基本配置在这里https://github.com/yukang2017/Stitcher/blob/41063c4d9af077908cd1368ae86d43a27c77f479/maskrcnn_benchmark/config/defaults.py#L91stitcher合成主要合成图片的地方在 BatchCollatorSynthesize (https://github.co原创 2021-06-05 23:21:03 · 230 阅读 · 0 评论 -
mmdet整合train和test
需求train完自动test实现shell里面解析一下config做成checkpoint#!/usr/bin/env bashPYTHON=${PYTHON:-"python"}CONFIG=$1GPUS=$2PORT=${PORT:-29500}$PYTHON -m torch.distributed.launch --nproc_per_node=$GPUS --master_port=$PORT \ $(dirname "$0")/train.py $CONFIG -原创 2021-05-31 14:04:18 · 473 阅读 · 2 评论 -
2021水下目标检测记录
当前精度0.52+预处理转为coco格式,同时4:1划分train valroot = '/home/yons/data/underwater2021'import globxml_paths = glob.glob(root + '/' + 'xmls/*.xml')import randomfrom nncv.transvert import xml2cocorandom.Random(42).shuffle(xml_paths)total_number = len(xml_pat原创 2021-04-13 21:25:31 · 824 阅读 · 7 评论 -
yolov5-v3.0尝鲜
README20200817, yolov5发布了3.0,精度来到了49.2,加上多尺度tta后 50.8安装感觉这个issue, v3.0的release指向的分支有问题,所以保险起见git clone git@github.com:ultralytics/yolov5.gitgit reset --hard 916d4aa下载weightsbash weights/download_weights.sh不要用github里面的release来下载,太慢,用这个比较快文件布局yo原创 2020-10-11 02:17:50 · 1372 阅读 · 0 评论 -
代码git每天自动备份到私有仓库
需求很久就想搞了,每天写的代码晚上12点自动备份到github的私有仓库上去,这样就算电脑坏了或者换电脑了也不用管00:00 git 自动pushgit commit -m 里面有时间信息,类似"auto push 2020 1009"实现写个shell#! /bin/sh## git_auto_push.sh# Copyright (C) 2020 yons <yons@yons-Z390-AORUS-PRO>## Distributed under terms of原创 2020-10-01 11:35:14 · 1468 阅读 · 0 评论 -
pytorch和keras测试gpu是否可以调用
pytorchimport numpy as npimport torchx = np.linspace(0,20,100).astype(np.float32).reshape((-1,1))y = x*4 + np.random.rand((*x.shape)).astype(np.float32).reshape((-1,1))import torch.nn as nnclass LinearRegressionModel(nn.Module): def __init__(s原创 2020-08-10 22:35:49 · 1019 阅读 · 0 评论 -
哨兵2号数据高速大批量下载
需求需要下载60景左右的哨兵2号,目标速度10mb/s实现准备好靠谱的代理软件,配置好https_proxy访问esa必须要注册用户设置一下搜索条件设置目标区域,鼠标按住右键画框将搜索结果全部加入购物车并下载购物车文件,会得到products.meta4文件使用aria2c来下载用户名和密码改成自己的aria2c --http-user=username --http...原创 2020-05-02 18:52:27 · 3762 阅读 · 6 评论 -
获取具体城市的geojson
如果可以接受中文字符https://github.com/longwosion/geojson-map-china找对应的城市即可不接受英文字符我用的sentinelsat库就处理不了中文字符访问 https://nominatim.openstreetmap.org/search.php得到这个OSM 3076268访问http://polygons.openstreetmap...原创 2020-05-01 23:27:55 · 1804 阅读 · 0 评论 -
高分6号遥感影像转rgb
需求一般用envi和arcgis就可以了,但我的数据量很大,还是用python实现一下好一点,思路是参考arcgis的可视化方式,对红绿蓝波段分别保留中间96%的数据,然后归一化,因为只是可视化不需要原图尺寸,我额外加入了缩小8倍的操作,codeimport matplotlib.pyplot as pltimport numpy as npimport osdef get_top(t...原创 2020-04-28 21:28:10 · 1455 阅读 · 1 评论 -
c++解码raw文件
解码流程看这篇就可以懂了 https://zhuanlan.zhihu.com/p/51569883文章内部附了python相关的代码本文只关注CFA demosaicting这步,不做白平衡,最终显示效果虽然看起来奇怪,但我额外做了自适应的白平衡效果是没问题的debayer算法原理看这篇即可https://blog.csdn.net/j_d_c/article/details/540...原创 2020-03-31 13:26:37 · 1191 阅读 · 0 评论 -
基于Pyqt5的超大影像区块标注工具
README需求是,对于高分6的数据,随便一个tiff就是10000*20000左右的影像,用envi打开有明显的延迟卡顿,目前的算法是将影像划分为256*256的正方形,对每个正方形标注对应的类别,如源代码https://github.com/CarryHJR/Remote-Sense-Labelme使用方式通过方向键控制当前方框的移动按下数字键1 2 3 4后会改变框的颜色,分...原创 2019-12-28 23:55:35 · 885 阅读 · 0 评论 -
论文阅读-道路建筑物提取
论文简介论文: Simultaneous extraction of roads and buildings in remote sensing imagery with convolutional neural networks收录于2017年的ISPRS上网络架构如下:整体感觉没有新意,试验也不充分,后端采用非常基础的网络,也没有试验证明网络的后端用resnet之类的会不会更好,是遥...原创 2019-12-02 20:55:03 · 724 阅读 · 0 评论 -
场景分类attention可视化
README对网络的注意力可视化,可以很快的看出网络存在的问题以及可以改进的空间refer: https://medium.com/@stepanulyanin/implementing-grad-cam-in-pytorch-ea0937c31e82attention可视化的思路:通过hook获得特征层的grad,维度是(batch, 2048, 8, 8)然后对每个channel...原创 2019-11-19 20:23:29 · 1529 阅读 · 0 评论 -
变化检测quick-start
README数据集是采用2019年遥感图像稀疏表征与智能分析竞赛中的变化检测数据集,原数据有四个通道,本文只是做一个demo,所以一切从简,代码放在了 https://github.com/CarryHJR/remote-sense-quickstart感谢star数据集可视化from libtiff import TIFFimport matplotlib.pyplot as plt...原创 2019-10-28 17:01:19 · 3070 阅读 · 38 评论 -
场景分类quick-start
这里是2019年遥感图像稀疏表征与智能分析竞赛初期代码,后期魔改这个代码拿到了分类赛道榜一,这里以AID数据集为例,演示一下拿到遥感数据集后对数据集进行分析,和初步的模型训练以及对结果的分析。如果对场景分类和变化检测有兴趣的同学,可以移步 https://github.com/carryHJR/remote-sense-quickstart,本文代码也在这个仓库里,求star.对于已有基础的同学...原创 2019-10-28 16:57:51 · 623 阅读 · 10 评论