gdal读取ftp服务器中的影像

由于数据比较大,放在ftp服务器中,下载到本地再处理比较占空间和费时,gdal可以直接读取ftp中的影像进行处理的,读取也比较简单,注意输入路径的格式即可,参考官网

路径的组织格式:

"/vsicurl/ftp://user:password@ip:port/global/raw/2022/hanshou/xxx.tif"

"/vsicurl/ftp://"+用户+":"+密码+"@"+ip+":"+端口+路径

int main()
{
	std::string file = "/vsicurl/ftp://xxx:xxx@192.168.30.11:6789/global/raw/2022/hanshou/CG/0824_1249_2070_1070/0824_1249_2070_1070/3_dsm_ortho/2_mosaic/0824_1249_2070_1070_transparent_mosaic_group1.tif";
	GDALDataset* poDataset;
	GDALAllRegister();
	poDataset = (GDALDataset*)GDALOpen(file.c_str(), GA_ReadOnly);
	if (poDataset == NULL) {
		return NULL;
	}

	double   adfGeoTransform[6];
	printf("Driver: %s/%s\n",
		poDataset->GetDriver()->GetDescription(),
		poDataset->GetDriver()->GetMetadataItem(GDAL_DMD_LONGNAME));
	printf("Size is %dx%dx%d\n",
		poDataset->GetRasterXSize(), poDataset->GetRasterYSize(),
		poDataset->GetRasterCount());
	if (poDataset->GetProjectionRef() != NULL)
		printf("Projection is `%s'\n", poDataset->GetProjectionRef());
	if (poDataset->GetGeoTransform(adfGeoTransform) == CE_None)
	{
		printf("Origin = (%.6f,%.6f)\n",
			adfGeoTransform[0], adfGeoTransform[3]);
		printf("Pixel Size = (%.6f,%.6f)\n",
			adfGeoTransform[1], adfGeoTransform[5]);
	}
	return EXIT_SUCCESS;
}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

烟云之路

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值