dzetsaka classification tool是QGIS的强大分类插件,目前主要提供了高斯混合模型分类器、Random Forest、KNN和SVM四种分类器模型,相比于SCP(Semi-Automatic Classification),他的一个特点就是功能专一,操作简单。
从十一月开始一直忙于写个可研材料,持续忙了20天,此外关于训练这事儿,主要因素一个是数据标注,一个是摸索工具,另外一个是主机性能。想让数据统计的准一点,就得做好数据标注,数据标注是个体力活也是个技术活,还得有一定常识;摸索工具,在scp使用上,一直缺乏好的文档,标注起来总是磕磕绊绊的;主机性能也很重要,大部分影像都是上G的图片,QGIS找了半天也无法设置内存和GPU,总是跑一半,主机就挂了。
后来找到了这个dzetsaka classification tool工具,也是尝试了两天,总算有点小进展,但对于大的影像处理还是很慢,一跑就挂,或者跑一天多没什么结果,姑且先拿来做尝试吧。
一、zetsaka classification tool依赖于scikit-learn包,所以需要在OSGeo4W Shell先安装。
执行命令行pip install
D:\Program Files\QGIS 3.34.0>python3 -m pip install scikit-learn -U --user
Looking in indexes: https://pypi.tuna.tsinghua.edu.cn/simple
Collecting scikit-learn
...
Installing collected packages: threadpoolctl, joblib, scikit-learn
Successfully installed joblib-1.3.2 scikit-learn-1.3.2 threadpoolctl-3.2.0
[notice] A new release of pip is available: 23.2.1-> 23.3.1
[notice] To update, run: python3.exe -m pip install --upgrade pip
D:\Program Files\QGIS 3.34.0>
二、到Plugins查找dzetsaka 工具,显示dzetsaka : Classification tool即可安装
三、在Plugin菜单中有一个dzetsaka 子菜单,下面还有子菜单
1、welcome message 包含dzetsaka的文档、数据集下载地址和如何安装scikit-learn
2、classification dock,包含工具的分类使用
3、settings,包含模型的选择
四、打开welcome message菜单,下载样例数据,点击down out demonstration dataset即可
下载完成后的目录结构,包括一个6M多的tif影像和一组shp矢量文件
五、打开demo_dzetsaka工程,可以看到tif影像和标注的结果
六、打开setting进行分类器选择
七、打开classification dock,选择影像和矢量文件,Class为分类的字段,可以点击Classfication Leave empty for temporary file后的按钮,设置输出文件路径和名称,其下的图标也可以设置分类器,然后点击Perform the classification执行。
八、经过一小时的等待,会输出以下的tif文件
九、对输出的结果进行设置,选择Singleband psoudocolor,因为训练集有五个类别,在这里设置6个类别即可,用不同颜色进行区分
十、格式化后的显式结果如下,再对照原图,结果基本还是可信的。
十一、随机森林分类后再格式化的结果如下:
十一、K近邻分类后再格式化的结果如下:
十一、高斯混合分类后再格式化的结果如下:
后面开始尝试在真正的地图上进行分类,不过太大了,已经运行一天一夜还是未运行出结果。。。
最后欢迎关注公众号:python与大数据分析