OpenWrt路由器认证802.1X方法

首先在web admin页面上设置好静态ip。

然后通过ssh连接上路由器。

在/etc目录下创建ieee8021x.conf文件。

添加以下内容。其中username和password对应替换成自己的账号密码。

登陆命令:(其中eth0.2为对应的网卡的名称,可用ifconfig命令查看)

查看连接状态的命令为:

若显示以下内容则为连接成功。

注销登陆命令为:

一般情况下到这里就足够使用了。

但是路由器重启之后并不会自动认证,因此需要添加开机自启动。

首先在/root目录下创建启动脚本login.sh。

[……]

继续阅读


Rocket.Chat、Caddy、Jellyfin配置问题与解决记录

今天花了大量的时间来配置Rocket.Chat和Jellyfin,因此写一个博客来记录一下所遇到的一些坑,方便以后进行服务器维护。

第一个问题是Rocket.Chat的安装问题。根据官网提供的snap安装方式在Ubuntu 16.04、18.04、20.04上均能够正常安装,但是无法通过3000端口进行访问,同样也无法用Caddy进行反向代理。进行了大量尝试后,发现官方的3.x版本有这个bug,将snap的通道更换为2.x/stable再尝试安装,即可正常通过3000端口访问,同样也可以使用Caddy进行反向代理。当时发现这个解决方案是因为在2020年1月的时候,根据官网命令是可以正常安[……]

继续阅读


遥感影像yimage库1.1.0版更新

开发了一个星期,Linux版本和Windows版本的yimage都编译打包完毕,并且发布在了python的官方平台pypi。大家可以通过pip install yimage的方式进行安装。其中一项依赖gdal则推荐采用conda install gdal -c conda-forge安装,强烈建议安装3.2.2以及更高的版本,否则部分函数运行会特别缓慢。这一版本相比1.0.3版本改进了很多,建议正在使用yimage库的朋友都进行更新。

yimage项目英文文档位于https://pypi.org/project/yimage/

yimage项目中文文档位于http://yimage[……]

继续阅读


ISPRS Benchmark的研究工作与心路历程

去年4月将关于ISPRS Benchmark数据集的文章投稿到了ISPRS Journal of Photogrammetry and Remote Sensing期刊后,前几天终于接收了。历时长达378天,经历了多轮修改,感慨中科院一区的遥感顶刊投稿确实很艰难。

目前出版社Elsevier还没有proof完成,因此文章暂时还没有online。于是我将preprint版本上传到了arXiv上,点击链接获取https://arxiv.org/abs/2105.04132

其实早在2017年底我就已经开始对这个数据集进行一些实验了。当时采用的是Caffe框架,使用的网络为PSPNet。[……]

继续阅读


Python中编译与打包的方法

有时候用Python进行开发的时候,为了防止源码泄漏,会在发布前进行封装与打包。比较常见的操作方法是使用PyInstaller对python程序进行打包。但是这样打包是可以进行解包与反编译的,代码很容易泄漏。

因此我们可以先用Cython对除了入口函数外其他所有模块进行编译,然后再用PyInstaller对入口函数进行打包。由于Cython会将python程序转换成C代码,然后调用gcc对C程序编译成动态库so或者pyd,此时编译好的二进制文件是无法进行逆向工程的。

在linux下可以对所有的py文件进行Cython封装,只需要暴露主入口。但是在windows下,尝试编译__ini[……]

继续阅读


关于LeetCode第168题Excel转换的一些想法

今天刷了几道LeetCode题,但是做到168题的时候,我感觉这个题有点奇怪。就是按照常规的10进制数字进行地板除和取模的方法来处理这道题会出现一个问题:除了最后一位,其余位上均出现正好差一的现象。然后反复琢磨,发现这个题并没有这么简单。最奇怪的是LeetCode的中文社区的讨论99%的其实是错误的,仅仅是答案歪打正着了而已。仅仅有一个答案道出了事实,但执迷不悟的人占大多数,导致正确的答案却遭到了反对。因此我想写篇博客来详细分析一下这道题。

首先我们来看看题目。

这道题Google、Adobe、Microsoft、Facebook、Apple、VMware、Yahoo的面试中都[……]

继续阅读


Python中用点运算符操作字典的方法

在Python编程中,有时候我们会将数据保存在字典中。一般情况下,我们会通过键值来访问字典中的数据,比如说:

有些时候字典发生了嵌套,那么会以如下形式访问字典中的数据:

这么多方括号,简直看上去又烦人,又愚蠢。

我写代码喜欢用VS Code,并且仅仅是作为编辑器,不装任何Python插件,因此也无法实现比较智能的补全。不过我没记错的话,一般的IDE似乎也没法补全以字符串为主的键值,这样子写代码就很烦,容易写着写着就去神游了。

因此就在想,是不是可以用点运算符,类似于访问类成员变量、成员函数那种形式去访问字典里边的数据呢。

然后我就发现了一个官方类,叫做Si[……]

继续阅读


深度学习评价指标的F1与IoU关系

大多数深度学习任务会采用F1 Score与IoU进行精度评价,一般来说,我们会发现从数值上看,F1 Score会大于IoU。然而前两天,我发现了一篇发表在遥感顶刊《ISPRS Journal of Photogrammetry and Remote Sensing》上的文章,该文章居然出现了IoU大于F1 Score的现象。那么这种情况是否会出现呢?我们接下来进行证伪。

该文章给出了一张精度表格,表格内容如下:

其中Imp.S.列、Tree列、Car列均出现了IoU大于F1的情况。

我们找到了该文给出的精度评价公式,如下:

由公式14,我们将F1写作关于TP、F[……]

继续阅读


ISPRS Benchmark 语义分割研究(二)

去年的时候,把这个数据集的Vaihingen集成功做到了sota,关于这个数据集的介绍可以参考我之前写的文档,http://blog.yannx.me/deep-learning/25/isprs-benchmark-semseg-research/

基于自己写的RSegNet框架设计了一个CNN网络,在这个数据集表现很不错,Overall accuracy达到了91.7,mean F1-Score达到了90.96。最近读到了中科院电子所的一篇文章《HMANet: Hybrid Multiple Attention Network for Semantic Segmentation i[……]

继续阅读


yimage,一个友好的遥感影像I/O库

为了提升遥感数据处理编程体验,我完成了Python语言的yimage库开发,并且上传了pypi.org,支持pip安装。这是一个比GDAL更加友好的遥感影像I/O库,目前还仅支持一些简单的I/O操作,后续会扩展更多的功能,支持一些遥感影像处理的操作。目前最新版本为1.1.0,更新于2021.5.25。

1 开发动机

Python中比较常见的图像库包括OpenCV、PIL、GDAL,同时也有一些小众的tifffile、rasterio等等。但是这些库都有自己的优缺点。

OpenCV:Open Computer Vision Library,非常通用的计算机视觉库,但是仅能很[……]

继续阅读