因为做任务时发现opencv只是支持部分Tiff文件格式,对于GeoTiff这样带有投影和坐标信息的遥感栅格影像总是读不出来,输出时这些信息也会消失。搜网上的解决方法大多都是基于早期的IplImage与CvMat数据结构来表示图像,新版本的opencv中只需Mat类就能解决。本人是菜鸟,对OpenCV接触不多,所以就利用GDAL函数库作中介对图像进行读写,并赋给Mat矩阵。这是比较简单的方法将GeoTiff遥感图像转化为Mat格式,即只是希望能够其他遇到这个问题的人能够有所参考和改进,顺便告诉下我,本人感激不尽。参考网址:http://blog.youkuaiyun.com/liminlu0314/article/details/7433936
这段代码使用了GDAL(1.10.1)与OpenCV(2.4.8)两个函数库,只是针对单个波段的影像而言:
#include "gdal_priv.h"
#include
//单个波段影像而言
Mat ConvertImage2CV(const