scikit-image:遥感图像geotiff格式转mat格式

Posted 空中旋转篮球

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了scikit-image:遥感图像geotiff格式转mat格式相关的知识,希望对你有一定的参考价值。

scikit-image

scikit-image 是一个专门用于图像处理的 Python 库,它可以与 Scipy 库和其他可能有助于计算的 Python 库一起使用。

Github地址:https://github.com/scikit-image/scikit-image Star有5.3k

首先pip安装scikit-image包,或者直接使用pycharm安装

scikit-image包含一下相关子模块,这里我们使用io模块实现格式转换,输入的geotiff具有很多个波段。

子模块名称

主要实现功能

io

读取、保存和显示图片或视频

data

提供一些测试图片和样本数据

color

颜色空间变换

filters

图像增强、边缘检测、排序滤波器、自动阈值等

draw

操作于numpy数组上的基本图形绘制,包括线条、矩形、圆和文本等

transform

几何变换或其它变换,如旋转、拉伸和拉东变换等

morphology

形态学操作,如开闭运算、骨架提取等

exposure

图片强度调整,如亮度调整、直方图均衡等

feature

特征检测与提取等

measure

图像属性的测量,如相似性或等高线等

segmentation

图像分割

restoration

图像恢复

util

通用函数

转换代码

 #-*- coding: utf-8 -*-
import scipy.io as sio
import skimage.io
import imagecodecs
# to open a tiff file for reading:
inputgeotiff_path=r"D:\\gt00cls00.tif" #geotiff
outputgeotiff_path=r"D:\\gt00cls00.mat"  #tiff
#图像读取
imggt=skimage.io.imread(inputgeotiff_path)
sio.savemat(outputgeotiff_path, 'imggt':imggt)

print('success')

运行错误记录:scikit-image ValueError: <COMPRESSION.LZW: 5> requires the 'imagecodecs' package

在使用scikit-image包对geotiff数据进行格式转换(tiff转mat)提示以下问题:

ValueError: <COMPRESSION.LZW: 5> requires the 'imagecodecs' package

开始以为这个问题是由于输入图像是geotiff格式不支持的原因,查阅了相关资料,应该是支持的,也试用过其他三通道的tif格式的小图片,可以正常运行。

解决办法:根据提示安装'imagecodecs' package,重新运行,运行成功了。

安装过程中,网络总是不稳定,最后使用手机移动网络连接实现安装的。

其他说明

这里的imggt是mat文件的key值,需要注意记录一下,后期读取的是都是需要用到的,最好设置的和文件名称一致,方便记忆。

sio.savemat(outputgeotiff_path, 'imggt':imggt)

以上是关于scikit-image:遥感图像geotiff格式转mat格式的主要内容,如果未能解决你的问题,请参考以下文章

AI常用框架和工具丨6. 图像处理库Scikit-image

AI常用框架和工具丨6. 图像处理库Scikit-image

在 Scikit-image [Python] 中移动图像

在 scikit-image 中打开 load_sift 的图像文件

如何用 scikit-image 反转黑白?

tiff和geotiff格式分析