使用GDAL实现常用图像格式(JPEG、PNG32、PNG24)之间的转换

主要思路

  • 使用GDAL库实现图像类型转换功能
  • 读取原始图像的数据,返回图像的宽、高、通道数量
  • 创建内存驱动器,将原始图像的数据写入到内存驱动器中
  • 使用CreateCopy接口,将内存驱动器的数据生成要求的jpg或者png图像
    • 读取和写入的时候,都是按通道从0 0位置开始一次性读取图像宽和高数量的像素。
    • 按照源图像的通道数量作为间隔拷贝原始数据到内存驱动器中。

参考网址

https://www.cnblogs.com/xiangism/p/5311314.html

https://blog.youkuaiyun.com/godenlove007/article/details/8864763

读取图像原始数据

	    bool ReadImageData( unsigned char **pImageData,int &nWidth,int &nHeight,int &nChannels,const QString& strFilePath )
		{
			GDALAllRegister();
			GDALDataset *poDataset = NULL;
	
			CPLSetConfigOption("GDAL_FILENAME_IS_UTF8","NO");
	
			poDataset=(GDALDataset*) GDALOpen(strFilePath.toLocal8Bit(),GA_ReadOnly);	
			if(poDataset == N
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值