新手的python学习笔记1

自己合成的23波段的影像,研究半天怎么弄到三维数组里面去,也是在网上找了很多篇大佬的代码,拼拼补补。啊啊啊啊啊我好笨:(

代码部分:

import numpy as np
#import matplotlib as mpl
#import matplotlib.pyplot as plt
import gdal
#import cv2
import os#读文件
def image_read(imagepath, bandnum):image = gdal.Open(imagepath)             # 打开该图像if image == None:print(imagepath + "该影像不能打开!")returnlie = image.RasterXSize                # 栅格矩阵的列数hang = image.RasterYSize               # 栅格矩阵的行数im_bands = image.RasterCount           # 波段数im_proj = image.GetProjection()        # 获取投影信息im_geotrans = image.GetGeoTransform()  # 仿射矩阵print('该tif:{}个行,{}个列,{}层波段, 取出第{}层波段.'.format(hang, lie, im_bands, bandnum))band = image.GetRasterBand(bandnum)          # Get the information of band num.band_array = band.ReadAsArray(0,0,lie,hang)  # Getting data from zeroth rows and 0 columns# band_df = pd.DataFrame(band_array)del image  # 减少冗余return band_array #, im_proj, im_geotrans#读到三维数组中
def read_in_array(image_path, nband):aa = image_read(image_path, 1)bb = image_read(image_path, 2)aa = np.array([aa,bb])for n in range(3,nband+1):bb = image_read(image_path, n)cc = np.append(aa,bb)                    #先拼接成一个行向量dim = aa.shape                           #获取原矩阵的维数print('原矩阵维数:',dim)aa = cc.reshape(dim[0]+1,dim[1],dim[2])  #再通过原矩阵的维数重新组合print('维数:',aa.shape)return aa#文件目录
dir_path = r"E:\filter\little\NDVI"                #路径名
image_name = "NDVI_test_2011"                      #文件名
image_path = os.path.join(dir_path, image_name)
out_array = read_in_array(image_path, 23)          #波段是1-23

显示结果:

(初学笔记1)python读多波段遥感影像并存到三维数组中相关推荐

  1. python编写自定义函数计算一维numpy数组中与指定目标数值最接近(距离最近)的数值(find closest value in numpy array to a certain value)

    python编写自定义函数计算一维numpy数组中与指定目标数值最接近(距离最近)的数值(find closest value in numpy array to a certain value) 目 ...

  2. Python 轻松解决从 K 个字符串数组中任意取一个字符串,按顺序拼接,列出所有可能的字符串组合。(对比用库和不用库的方法)

    文章目录 一.问题说明 二.解决方法 一.问题说明 问题来源:粉丝的提问 从 K 个字符串数组中任意取一个字符串,按顺序拼接,列出所有可能的字符串组合(对比用库和不用库的方法) 二.解决方法 iter ...

  3. python如何提取奇数_如何在数组中只获取奇数并使用numpy for python将其平方?

    numpy的强大之处在于它允许您在单个操作中对整个数组进行操作.这称为矢量化或矢量化.当然,在幕后也有这样做的循环,但它们是用C语言编写的,并且经过高度优化,因此它们的运行速度比纯python所能达到 ...

  4. Python的一,二,三维数组中根据下标取得对应数值

    备注 使用语言 python 使用库 numpy 使用pycharm显示效果 : 左边中括号的数目即数组的维度 一维数组 一维数组不需要多个下标,因为只有一个维度,所以使用一个下标即可 # 使用了nu ...

  5. 请用python实现读取一个文本文件到数据数组中

    可以使用Python中的内置函数open()和readlines()来读取文本文件并将其存储到数据数组中.具体实现步骤如下: 使用open()函数打开文本文件,指定文件路径和打开模式(例如,'r'表示 ...

  6. 直观了解图片的三通道像素值在三维数组中的表示(python)

    最近一直在折腾C#与python之间数据的对接,其实我想做的是,C#端采集图片通过rpc技术发送给服务端的人工智能框架tensorflow做处理,但是我对tensorflow这鬼玩意不是很熟悉,总觉得 ...

  7. python怎么读取txt文件数据保存数组中-python将txt等文件中的数据读为numpy数组的方法...

    实际中,很多数据都是存为txt文件.csv文件等,但是在程序中处理的时候numpy数组或列表是最方便的.本文简单介绍读入txt文件以及将之转化为numpy数组或列表的方法. 1 将txt文件读为lis ...

  8. python读文本并写入另一个文本文件中怎么做_使用文本Python将文件中的文本写入另一个文件...

    我正在尝试将文件中的文本放入另一个也包含文本的文件中.例: FILE 1 contains: @WORLD FILE 2 contains: HELLO:LEARNING I would like t ...

  9. python怎么读取txt文件数据保存数组中-Python Numpy中数据的常用的保存与读取方法...

    在经常性读取大量的数值文件时(比如深度学习训练数据),可以考虑现将数据存储为Numpy格式,然后直接使用Numpy去读取,速度相比为转化前快很多. 下面就常用的保存数据到二进制文件和保存数据到文本文件 ...

  10. python删除最后一个元素_Numpy-从一维数组中删除最后一个元素的最佳方法?

    NumPy数组的大小是固定的,因此不能就地移除元素.例如,使用del不起作用:>>> import numpy as np >>> arr = np.arange( ...

最新文章

  1. 基于SmartQQ协议的QQ聊天机器人-4
  2. 一元操作符——递增和递减操作符(第一次写博客,紧张.)
  3. react让我怀疑自己没有当程序员的天分怎么破?
  4. 让cxGrid只取一部分数据
  5. 重访 list comprehension
  6. android学习资料_知乎上的高能Android学习资源来了,屏幕适配,性能优化,热修复NDk...
  7. HDOJ:1533-Going Home(最小费用流)
  8. Java高并发 -- 并发扩展
  9. c语言 树的遍历,c语言构造树及树的三种遍历
  10. 自动识别人脸html5,【前端】H5人脸实时识别自动截取人脸照片
  11. iOS 审核被拒绝问题汇总
  12. 设置快捷键使页面全屏
  13. css动画设置运动轨迹,css3动画之圆形运动轨迹
  14. build gradle settings 设置、读取变量
  15. 如何对接身份证实名认证?
  16. u-boot 学习系列 1 - SPL
  17. 简单的机械键盘换轴过程(非热插拔)
  18. springboot2.3手册:5分钟用Netty搭建高性能异步WebSocket服务
  19. 过滤器、拦截器和AOP的分析与对比
  20. 颜值爆棚:大朋VR E3基础版真实体验评测

热门文章

  1. VS2016 调用matlab脚本 ——缺少mclmcr.dll
  2. CAD中怎么旋转箭头符号?
  3. 热搜第一!中国烟草总公司工资曝光,员工人均年收入超18万元!网友:简直是不锈钢饭碗!...
  4. 25篇最新CV领域综述性论文速递!涵盖15个方向:目标检测/图像处理/姿态估计/医学影像/人脸识别等方向...
  5. 员工转正述职答辩问什么问题_员工转正述职报告范文
  6. Qt实现一个简单的钟表
  7. KubeSphere介绍和基于K8S的安装
  8. 如何缩短测试开发周期和开发成本?
  9. Maya群体堆积特效插件RubbishDumper垃圾倾倒夫1.0.3下载及教程
  10. lammps建模技巧:msi2lmp转换data文件结构错位解决办法