使用gdal库读取图像
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了使用gdal库读取图像相关的知识,希望对你有一定的参考价值。
通过gdal库按一行一行的顺序读入某一波段信息,存入位图的数据区
nXSize,nYSize分别表示高宽
C/C++ code
//建立数据区
LONG LineBytes = (nXsize*8+31)/32*4;
pData= (LPBYTE)new char[LineBytes*nYsize];
poBandBlock= (BYTE*)CPLMalloc(sizeof(BYTE)*(nXsize*1));
//为各像素赋值
for (int i=0; i
//一次读取一行读取
poBand[dlg.Gray]->RasterIO(GF_Read, 0, i, nXsize,
i+1, poBandBlock,nXsize, 1,GDT_Byte, 0, 0);
for (int j=0; j pData[(nYsize-i-1)*LineBytes + j] = poBandBlock[j];
CPLFree(poBandBlock);
但是这样读取,打开图片后,图片第nYSize/2行开始全部显示出错。这是为什么啊?
http://wenku.baidu.com/view/f419727d27284b73f2425035.html
参考资料:http://www.gisfoot.com/post/224.html
以上是关于使用gdal库读取图像的主要内容,如果未能解决你的问题,请参考以下文章
如何使用 OGR 库 (GDAL\OGR) 读取 GML 文件?
Python遥感图像处理应用篇(十五):GDAL 读取多光谱数据做归一化处理
Python遥感图像处理应用篇(十五):GDAL 读取多光谱数据做归一化处理