tif格式或者其他格式的栅格图像包含有Alpha或Black)波段,在有些情况下这个波段没什么作用。比如说要利用GDAL来读取原图像,然后转存为其他格式,在保存的时候需要判断原图像有几个波段,这时Alpha或Black波段就是多余的了,就需要在读取时去掉。
注:可能Alpha波段在某些情况是很重要的,这里我只是根据自己的需求来去掉它。
代码如下:
GDALAllRegister();
GDALDataset *pDataset = ( GDALDataset *)GDALOpen( raw.toStdString().c_str(), GA_ReadOnly);
if ( pDataset == NULL)
{
return false;
}
int nBands = pDataset->GetRasterCount();
//判断是否包含alpha波段
GDALColorInterp ci = GDALGetRasterColorInterpretation( GDALGetRasterBand(pDataset, nBands));
if( ci == GCI_AlphaBand || ci == GCI_BlackBand)
nBands = nBands - 1;
本文介绍如何使用GDAL库在读取TIFF格式图像时,判断并移除不必要的Alpha或Black波段,以优化图像处理流程。
1362

被折叠的 条评论
为什么被折叠?



