BandSplitorByGDAL.zip

  • G1_223222
    了解作者
  • 44.4MB
    文件大小
  • zip
    文件格式
  • 0
    收藏次数
  • VIP专享
    资源类型
  • 0
    下载次数
  • 2022-05-27 07:26
    上传日期
GDAL波段分离源代码,使用的是GDAL2.04,Visual Studio 2019,下载下来不能直接运行,因为需要你配置项目到你的GDAL目录,否则必然报错。有任何问题访问:https://go.lucoder.com/fwlink/?linkid=9
BandSplitorByGDAL.zip
内容介绍
// BandSplitorByGDAL.cpp : 此文件包含 "main" 函数。程序执行将在此处开始并结束。 // #include <iostream> #include <gdal.h> #include <gdal_priv.h> using namespace std; // v是src文件,save文件是保存文件, bandIndex是需要的波段,1-n void Spearation(string v, string save, int bandIndex) { char path[1024]; GDALAllRegister(); GDALDataset* datasetRead = (GDALDataset*)GDALOpen(v.c_str(), GA_ReadOnly); GDALRasterBand* band = datasetRead->GetRasterBand(bandIndex); int width = band->GetXSize(); int height = band->GetYSize(); GDALDataType type = band->GetRasterDataType(); sprintf(path, "%s/result_%d.tif", save.c_str(), bandIndex); //可以是GTiff 或者 ENVI等不同的驱动 GDALDriver* driver = GetGDALDriverManager()->GetDriverByName("GTiff"); GDALDataset* datasetWrite = driver->Create(path, width, height, 1, band->GetRasterDataType(), NULL); GDALRasterBand* writer = datasetWrite->GetRasterBand(1); unsigned char* pMemData = (unsigned char*)CPLMalloc(band->GetXSize() * 100); int endFlag = band->GetYSize() / 100; for (int i = 0; i < endFlag; i++) { band->RasterIO( GF_Read, 0, i * 100, width, 100, pMemData, height, 100, GDT_Byte, 0, 0); writer->RasterIO( GF_Write, 0, i * 100, width, 100, pMemData, height, 100, GDT_Byte, 0, 0); } CPLFree(pMemData); writer->FlushCache(); } int main() { cout << "begin to seperate file:" << endl; Spearation("E:\\0.tiff", "E:\\", 5); cout << "finish to seperate file!" << endl; cout << "wait to write file!" << endl; }
评论
    相关推荐
    • Visual Studio Code
      VS Code是一个跨平台、支持30多种语言的开箱代码编辑器。不管你是.Net、Java、PHP、Python、TypeScript、Objective-C…还是前端开发者,都值得拥有。官网地址:https://www.visualstudio.com/
    • Visual Studio 2010 SP1
      如果您在同一台计算机上安装多个版本的 Visual Studio 2010,程序二进制文件的组合可能会运行 Visual Studio 的同一实例中。例如,Visual Studio 2010 终极有 Microsoft Visual Basic 速成版 Service Pack 1 安装在...
    • visual studio 让代码看起来更舒服
      NULL 博文链接:https://qimo601.iteye.com/blog/570165
    • visual studio 2017 下载地址
      visual studio 2017 下载地址,含离线下载地址。 下载地址为百度盘,分享地址 链接:https://pan.baidu.com/s/1jJTvKzk 密码:g7ky
    • VisualStudio_使用_问题_整理
      NULL 博文链接:https://fantaxy025025.iteye.com/blog/1468112
    • Tabs Studio 4.8 for Visual Studio
      原版下载地址https://tabsstudio.com/download.html,一个visual studio上非常好用的插件。直接替换TabsStudio.dll,打开vs后在插件里输入任意用户名和注册码即可正常使用。
    • VisualSVN7.1.2 Visual Studio 2019
      2、安装好后打开C:\Users\用户名\AppData\Local\Microsoft\VisualStudio\16.0_cc2d9dcb\Extensions\mkhfgvsc.hfr 3、备份VisualSVN.Core.L.dll,然后用压缩包的VisualSVN.Core.L.dll替换 4、关闭重新打开vs2019。
    • visual studio代码补全插件
      visual studio代码补全插件的代码补全插件,具体操作参考https://www.cnblogs.com/f8master/p/3826076.html
    • GitLab.VisualStudio:适用于Visual Studio的GitLab扩展
      适用于Visual Studio的GitLab扩展 您可以记录任何您喜欢的GitLab服务器并开始出色的工作! 适用于Visual Studio的GitLab扩展在Visual Studio 2015/2017中提供了GitLab集成。 大多数扩展UI都位于“团队资源管理器”...
    • Visual Studio 救星 Visual Assist
      NULL 博文链接:https://chenhailong.iteye.com/blog/1041136