Tag Archives: utility

一个批量将MODIS LST HDF转换为GeoTIFF的工具 v1.02

功能:

  1. 批量转换MODIS地表温度数据(LST)的HDF到GeoTIFF格式
  2. 支持多tiles的mosaic
  3. 支持剪裁(目前只支持指定矩形范围)
  4. 输出指定变量(白天晚上的LST、质量控制、观测时间共6个变量中的若干个)

当前版本 1.02

下载地址见文末。任何问题请向giscn(at)msn.com 报告。 Continue reading

机器学习用于验证码识别

看了几个机器学习的东西,其中一个是Tesseract,ocr可以用于转换图片到文字。这几天在考虑国家自然科学基金,里面查项目一项有个简单的验证码,十分讨厌,所以以这个为例,试着用了一下,写了个小代码。调用了Tesseract用于ocr,Magick convert用于图片转换,识别率还是比较高 (如果对Tesseract专门训练可能效果更好,但我简单看了一下还是蛮复杂的样子)。这意味着理论上我们就可以把国自项目的信息全部爬下来,不过没有时间去弄。

  • Qt 5/ Mingw环境。
  • ImageMagick-7.0.7-22-portable-Q16-x86
  • Tesseract-OCR-4.0.0alpha

一些截图:

Image(2)[4]Image(6)Image(7)Image(8)

新版DeltaCopy: DeltaCopy_rsync3.12

支持Rsync 3.1.2和Cygwin 2.3.1,消除了Windows上的权限问题,其中的rsync, cygwin1等几个包来自cwRsync_5.5.0_x86_Free。我做了简单的repack和测试。

Windows上的权限问题在此文有描述。使用此版本不需要加perms选项。

*我同样试了从最新的Cygwin里提取文件,跟deltacopy放一起不能用,主要chmod的权限问题无法解决。cwRsync里的chmod权限可能做了处理。

a. 如果已经安装了DeltaCopy Service,那么在安装此版本前,需要把原Service卸载掉,方法如下:

1 在控制面板的服务里找到deltacopy server,将之停止

2 管理权限打开cmd

3 运行 sc delte deltacopyservice,会提示删除成功

b. 把DeltaCopy_rsync3.12.zip下载后(下载链接见后文),解压缩到某文件夹。 Continue reading

Captcha Decoder: pwntcha

在cygwin 2.9下重新编译了一下,不容易,遇到各种问题,主要还是代码太老了,库等都跟不上了。最后发现对我关心的事情还是没啥用,它适合的场合还是过于简单。把编译好的程序打包放在这里共享好了(链接在下文)。

pwntcha的主要说明网页在这里:http://caca.zoy.org/wiki/PWNtcha

几种常用的可以搞定的样式如下: Continue reading

GetMODIS: A tool to download MODIS data in a batched manner

GetMODIS
An effective tool to download MODIS data in a batched manner
批量多线程快速下载MODIS数据的工具
Author: Zhuotong Nan @njnu (giscn@msn.com)
Date: 1/18/2016

1. Specifiy parameters in the config.ini file upon your needs
the para names are well self-explanatory.
2. Run GetModis.exe

* Param “tiles” should be set for those datasets tiled such as MOD09GA;
and leave it blank or comment it out for datasets with no tiles such as MOD09CMG
* the format for multiple tiles:
“hTile,vTile”,”hTile,vTile”,”hTile,vTile”…
where hTile represent the horizontal tile no, and vTile the vertical tile no.
* set quietmodel to true if you dont like to see the download progress
* larger number of threads will generally increase the download speed. However too
many threads may cause your ip blocked. a value of no more than 10 is advised.

v1.0 1/18/2016
+ intial release

下载地址:百度云盘(Link)

Source codes are available upon request.

移除极长路径工具

名称: Remove Long Path
版本: v1.0 initial release
build: 2014.12.11
南卓铜 Zhuotong Nan (giscn@msn.com)
http://nanzt.info

本工具可以移除极长路径。这些路径在Windows资源管理器中无法被删除。目前有一些收费和免费的工具,作者在本机上测试了一个目录深度达1500以上的例子,这些已有工具要不效率低下,要不在运行过程中出现错误(弹出Stop working)。本工具可以有效工作在Windows 32位和64位。

使用方法:

1. 解压缩至一个目录下

2. 在资源管理器里,打开该目录(removelongpath.exe所在目录),按shift的同时点击右键,在弹出菜单里选择“在此打开命令窗口”

3. 在命令窗口里敲入removelongpath.exe,可以看到使用方法提示。

4. 命令格式是 removelongpath [longpath] {time_interval}

[longpath]指定要移除的目录,此目录以下的任何深度的任何子目录和文件均将被删除。如果路径包括空格,请使用双引号。

{time_interval}是删除每个文件或目录的间隔,在Windows下,过快删除将导致系统拒绝后续删除操作。单位是秒,默认是1秒,可以是任何数字甚至小数,比如0.5表示半秒。

例子:removelongpath .temp 0.5

将移除当前目录下的temp目录下的任何子目录和文件。

5. 命令执行时,需要按两次y,由于命令将删除指定下的任何内容,需要格外慎重。除y或Y以外的任何按键,会取消此命令的执行。

Tips:

1. 如果没有删除干净,可以多次重复使用删除。并试着延长设置更长的间隔时间。

当前版本的md5 sum:

4f46c34a349186d1bd8b6cd5085dabdb  removelongpath.exe
c4b4409f186da70fcf2bcc60d5f05489  libgcc_s_dw2-1.dll
dbda60d92e774b4acb3b1cd71f909426  mingwm10.dll
db57cd45846d1b6188412ed69f51eec0  QtCore4.dll

下载:removelongpath.b20141211.zip (百度云盘)

如需源代码,请联系作者。

^_^

Continue reading

将Global AVHRR NDVI 3g转换为ESRI ASCII Grid栅格的Matlab代码

我在前面的帖子(previous post)介绍了用ArcGIS读取GIMMS AVHRR NDVI 3g格式的数据文件的方法,但并不十分好用。所以写了一点代码,用于方便的将之转换为ESRI ASCII Grid栅格,后者可以很容易的被GIS软件支持。

从这个帖子可以下载到相关的代码和样例ndvi3g数据。

注意运行代码需要 Matlab的支持。

Purpose: Convert GIMMS Global AVHRR NDVI 3g files to ESRI ASCII Grid, which is very easy to be accessed with popular GIS software.
Author: Zhuotong Nan (giscn@msn.com)
Web: http://nanzt.info
Date: Sep 11,2014

Last update: Nov 3,2014

Please distribute codes with this header attached.

Usage:

type convert_ndvi3g_ascii in Matlab to run

Open convert_ndvi3g_ascii.m, modify the ndvi3gfl variable to make it point to the ndvi 3g file you wanto to convert.

After run, three grid files will be created. One is the grid
corresponding to the 3g data file, the other is the ndvi grid extracted from the 3g data file, and the last one is its associated flag grid.

Files included with this code:

  • convert_ndvi3g_ascii.m, the main matlab script
  • geo82dec15a.n07-VI3g, example avhrr ndvi 3g file
  • geo82dec15a.n07-VI3g.asc, ascii grid file corresponding to geo82dec15a.n07-VI3g
  • geo82dec15a.n07-VI3g.ndvi.asc, ascii grid file of the extracted ndvi
  • geo82dec15a.n07-VI3g.flag.asc, grid file of associated flags
  • header.txt, esri grid header information, used in code
  • Readme.txt, this file.

The meaning of the FLAG:
FLAG = 7 (missing data)
FLAG = 6 (NDVI retrieved from average seasonal profile, possibly snow)
FLAG = 5 (NDVI retrieved from average seasonal profile)
FLAG = 4 (NDVI retrieved from spline interpolation, possibly snow)
FLAG = 3 (NDVI retrieved from spline interpolation)
FLAG = 2 (Good value)
FLAG = 1 (Good value)

Nov 3, 2014
Fix bugs that wrongly computing ndvi.asc and flag.asc

Sep 11, 2014
Initial version

Download codes (9,875KB); Link2 (Baidu)

78ae077b84d7455913382971da7731ef  soft.ndvi3g.11032014.zip

Download codes (6,483KB)

MD5:  006d2d630a5c94f3ca629fc9f751d7f1  soft.ndvi3g.zip

批量下载气象局的气象数据

批量下载中国气象局的气象数据

该站密码保护,登陆进去后,一个数据集可能有很多文件,比如中国地面气候资料日值数据集 v3.0有5952条文件。挨个下载十分累。

借用wget可以较容易实现批量下载。

1. 搜索 wget for windows,下载最新版,注意其bin和dep 都是需要下载的,否则bin不能运行。

2. 登陆进去找到要下载的数据集,比如前面提到的日值地面气候资料。如图。

Image(1)

3. 从中得到下载地址和文件名。形成一个files.txt文件。每行格式是<下载地址><空格><文件名>。

tips,可以使用比如notepad++的replace功能,很容易把不要的内容去掉,保留需要的内容。

4. 新建一个wget1.bat 文件。内容是,

@echo off
.wget-1.11.4-1-binbinwget –post-data="userid=<你的用户名>&password=<你的密码>" –save-cookies=cookie_wget –keep-session-cookies "http://cdc.cma.gov.cn/login.do"
for /F "tokens=1*" %%i in (files.txt) do (
.wget-1.11.4-1-binbinwget –load-cookies=cookie_wget -c %%i -O %%j
)

请注意wget的路径,和 files.txt的路径。如果路径不一致,请对应修改。

第一句是保存合适的cookies,第二句是从files.txt里逐句读取,并通过 wget下载重命名。

5. 在命令行下运行 wget1.bat即可。

Image

十分优秀的快速备份工具DeltaCopy (I)

Zhuotong Nan (南卓铜), giscn@msn.com

为什么要备份?

我有一个同事,几年前博士答辩,当时还是用很早版本的Word,时有doc文件损坏的情况发生,我的同事在答辩前约1个月,就发生了这样不幸的事,博士论文doc损坏打不开了,当时已经写了大概3/4的文字。据他后来讲,当时想死的心都有了。问题出在没有及时备份上。

现在的操作系统越来越稳定,但一些不可预料的问题还有可能发生。如果你的计算机上有很宝贵的数据,那么必须备份,如果数据丢失导致任何损失,都将是自己不可推卸的责任。

备份是如此的重要,但很多人都不够重视。数据丢了,然后开始怨天尤人。为什么不及时备份。

为什么选择DeltaCopy?

市面上有很多优秀的备份工具,如GoodSync, FreeFileSync等,我试用过一些,甚至购买过GoodSync。最终我转向DeltaCopy。DeltaCopy是基于rsync同步协议的可运行在Windows平台上的工具。最主要的理由有这么几条,

1. DeltaCopy/rsync实现增量备份。如果试用过GoodSync就知道,在其有优秀的界面的同时,对于大量文件的传输性能是十分糟糕的。基于rsync的deltacopy支持增量备份,甚至支持二进制层次的增量备份。备份性能十分优秀。

2. 可靠的性能。rsync是linux下的很成熟的备份协议,对于文件改变的侦察可靠,不会出现各种想不到的问题,相比之下FreeFileSync等正在积极的开发中,各种小臭虫在所难免。

3. 开源免费。

4. 很多服务器本身支持rsync。rsync是linux下的基本协议,所以不用在linux服务器或NAS上安装任何东西,就可以直接把内容备份过去。

不好的地方有,

1. 功能单一,就用于备份。不支持向网盘如skydrive同步等。

2. 支持双向同步并不好。比如不能选择性的把一些文件从服务器恢复过来。但如果象我这样只关心把文件源源不断备份到可靠的外部硬盘上,这点可以忽略。

3. 界面一般,甚至粗糙。但够用。

4. 原DeltaCopy(如v1.4)对中文和深路径的支持是有问题的。这些问题可以稍加修改以解决,可以下载我提供的repack包,这些问题已经很好解决。

个人机器的数据备份方案

比你想象的简单的多。任何人都可以承受。

1. 一块外置移动硬盘,数据备份到这块硬盘上。有USB口,最好是USB 3.0,传输速度十分快。当然要求计算机也有USB 3.0的接口。

image

2. 你的计算机,上面有重要数据需要备份。有USB接口。安装有DeltaCopy可执行包。DeltaCopy是装在Windows上面。

一个更理想的备份方案,购买一台小型NAS存储服务器,比如我用的Thecus N4100pro,4块2TB硬盘,RAID 6。但这需要一些投资了。

DeltaCopy安装

提供的是在v1.4基础上的修改包,支持中文环境和深路径。

size: 3.60MB

MD5: 120a368d1cc354c674b74172562340f6  DeltaCopyRaw.v1.4_nzt_repack_20130218.rar

下载后,用WinRAR解压缩到任何目录下(如c:downloads默认的下载目录)下即可,不需要安装。

双击DeltaC可执行程序,应该出来如下面的界面。

image

这是我的配置,可以根据你的需要删除,并新建profile。

DeltaCopy使用

(tbc)