GDAL创建图像提示Driver xxx does not support XXX creation option的原因
经常在群里有人问,创建图像的时候为什么老是提示下面的信息。
CPLError: Driver GTiff does not support DCAP_CREATE creation option
Warning 6: Driver GTiff does not support DCAP_CREATE creation option
CPLError: Driver GTiff does not support DCAP_CREATECOPY creation option
Warning 6: Driver GTiff does not support DCAP_CREATECOPY creation option
CPLError: Driver GTiff does not support DCAP_VIRTUALIO creation option
Warning 6: Driver GTiff does not support DCAP_VIRTUALIO creation option
CPLError: Driver GTiff does not support DMD_CREATIONDATATYPES creation option
Warning 6: Driver GTiff does not support DMD_CREATIONDATATYPES creation option
CPLError: Driver GTiff does not support DMD_CREATIONOPTIONLIST creation option
Warning 6: Driver GTiff does not support DMD_CREATIONOPTIONLIST creation option
CPLError: Driver GTiff does not support DMD_EXTENSION creation option
Warning 6: Driver GTiff does not support DMD_EXTENSION creation option
CPLError: Driver GTiff does not support DMD_HELPTOPIC creation option
Warning 6: Driver GTiff does not support DMD_HELPTOPIC creation option
CPLError: Driver GTiff does not support DMD_LONGNAME creation option
Warning 6: Driver GTiff does not support DMD_LONGNAME creation option
CPLError: Driver GTiff does not support DMD_MIMETYPE creation option
Warning 6: Driver GTiff does not support DMD_MIMETYPE creation option
CPLError: Driver GTiff does not support DMD_SUBDATASETS creation option
Warning 6: Driver GTiff does not support DMD_SUBDATASETS creation option
测试的代码如下:
GDALAllRegister();
GDALDriver *poDriver = GetGDALDriverManager()->GetDriverByName("GTiff");
char **papszCreateOptions = poDriver->GetMetadata();
GDALDataset *poDS = poDriver->Create("D:\\test.tif", 512, 512, 3, GDT_Byte, papszCreateOptions);
// do something
GDALClose((GDALDatasetH)poDS);
上面的代码中有个错误就是papszCreateOptions这个参数的值设置错误,如果没有创建选项,就指定为NULL就可以了,为啥要获取Dirver的元数据呢???
注意上面的代码,Create函数或者CreateCopy函数中有个参数叫CreateOptions,这个参数的意思就是为了指定创建图像的一些特殊选项,比如Tiff图像的压缩方式,Jpeg图像的压缩率,ENVI的图像存储方式等等,每种驱动所对应的创建选项也不会相同,具体的都可以在gdal的官网中的格式说明中找到非常详细的介绍,每种驱动页面中只要是支持创建的格式一般都会有一个Cerete Options的章节,里面就是这种格式的创建选项以及使用设置的参数信息。
知道了这个参数的原因,就明白了为什么会出现上面的提示,主要原因就是你设置的创建选项是错误的,所以GDAL提示了出来。
这个问题群里面非常多的人问,我觉得应该是有人在网上将这种错误的写法贴出来了,所以我搜了下,下面的网址中的用法都是这个原因导致的。
http://blog.sciencenet.cn/blog-98709-486392.html (char **papszMetadata = poDriver->GetMetadata();)
最后希望大家在网上搜索资料的时候学会判断哪些是对的,那些是错误的,不要一股脑的全部拿来用。
GDAL创建图像提示Driver xxx does not support XXX creation option的原因的更多相关文章
- gdal读写图像分块处理(精华版)
一.gdal进行数据操作在安装好gdal后,即可调用gdal库中的函数.(需要包含的头文件:gdal_priv.h)1.打开数据集使用gdal库进行数据(影像)操作的第一步就是打开一个数据集.对于“数 ...
- gdal读写图像分块处理
转自赵文原文 gdal读写图像分块处理(精华版) Review: 用gdal,感觉还不如直接用C++底层函数对遥感数据进行处理.因为gdal进行太多封装,如果你仅仅只是Geotif等格式进行处理,IO ...
- ENVI显示GDAL创建GeoTiff文件的一个问题及其思考
作者:朱金灿 来源:http://blog.csdn.net/clever101 使用gdal创建一个100*100的红色的geotiff图像,代码如下: #include <assert.h& ...
- Oracle Sales Cloud:报告和分析(BIEE)小细节1——创建双提示并建立关联(例如,部门和子部门提示)
Oracle Sales Cloud(Oracle 销售云)是一套基于Oracle云端的客户商机管理系统,通过提供丰富的功能来帮助提高销售效率,更好地去了解客户,发现和追踪商机,为最终的销售成交 (d ...
- oracle逻辑导入小错:提示无法创建日志提示
***********************************************声明*************************************************** ...
- HTML <img>标签 创建图像映射
初级前端一枚 下面代码是在图片上创建图像映射 自己整理了下 做个笔记 希望也可以帮助后来学习的朋友! <map name="planetmap"> <area s ...
- Xamarin 中Visual Studio创建项目提示错误
Xamarin 中Visual Studio创建项目提示错误 错误信息:Object reference not set to an instance of an object 出现这种情况,是由于没 ...
- 使用dpkg时,提示:dpkg:处理软件包XXX时出错
今天kali上安装搜狗输入法时,显示依赖关系问题,无法安装,百度搜了一下,找到解决方法. 使用dpkg时,提示:dpkg:处理软件包XXX时出错: 依赖关系问题,仍未被配置 类似于: 时,使用如下命令 ...
- OpenCV2:第二章 创建图像并显示
一.简介 相当于在PS中,新建一个画布 二.CvMat类/LPLImage和CvMat结构体 参考: OpenCV2:第一章 图像表示 三.create() Mat m(2,2,CV_8UC3); m ...
随机推荐
- HTML5新增的标签及使用
HTML5和HTML其实是很相似的,但是有些内容有发生了改变,今天我学习了一下HTML5发现还是挺好学的,只要有html+css基础就可以,今天知识看了下新的标签. 一.定义文档类型 在文件的开头总是 ...
- AutoCAD常用操作命令
前言 最近工作需要使用AutoCAD画图,在这里记一下用到的一些常用操作,都是一些很基础的操作,希望对大家有帮助. 修剪 如果两条直线相交,你需要剪掉多余的部分,可以用修剪命令TR. 我们先画两条相交 ...
- [LeetCode] My Calendar III 我的日历之三
Implement a MyCalendarThree class to store your events. A new event can always be added. Your class ...
- 用AJAX实现上传图片或者文件的方法
大家好,我是小C,最近在项目中用到ajax上传图片文件,本篇我们就说说ajax上传文件. 我们平时用到的AJAX,大部分都是传几个参数就可以了.简单说就是传几个字符串. $.ajax({ url: u ...
- mysql之连接查询小作业
#数据准备drop table if exists class;create table class( class_no int(2) unsigned zerofill primary key ...
- js高阶函数应用—函数柯里化和反柯里化(二)
第上一篇文章中我们介绍了函数柯里化,顺带提到了偏函数,接下来我们继续话题,进入今天的主题-函数的反柯里化. 在上一篇文章中柯里化函数你可能需要去敲许多代码,理解很多代码逻辑,不过这一节我们讨论的反科里 ...
- 关于wooyun-2015-096990的总结
漏洞url:http://wooyun.jozxing.cc/static/bugs/wooyun-2015-096990.html 摘要 if(!ini_get('register_globals' ...
- ●POJ 3378 Crazy Thairs
题链: http://poj.org/problem?id=3378 题解: 树状数组维护,高精度. 依次考虑以每个位置结尾可以造成的贡献. 假设当前位置为i,为了达到5个元素的要求,我们需要求出,在 ...
- 【网络流】【BZOJ1221】【HNOI2001】软件开发
原题链接:http://www.lydsy.com/JudgeOnline/problem.php?id=1221 题意:你有3种方法进行对毛巾的处理,不同的处理方法有不同的cost,问你要如何规划才 ...
- hihocoder #1073 : 光棍节
描述 尽管付出了种种努力,jzp还是得过光棍节. jzp非常不爽,但也无能为力,只能够哀叹起来他的命运.他想到了一位长者的人生经验:"人的一生,不光要靠自我奋斗,也要考虑历史的进程" ...