关于Python 的简单栅格图像边界提取方法
作者:兰小莫 发布时间:2021-08-18 18:19:28
标签:Python,栅格,图像,边界,提取
在GIS中,栅格属性里有关于栅格自身的信息,背景(nodata value)对于识别一张图像的边界像元尤为重要,我们目的只要把每行每列中的第一次出现不是nodata的像元和最后一次出现nodata的前一个像元就可以了。
对于栅格,可以用ArcPy中的RasterToNumpyArray函数将将栅格转成numpy数组,然后就可以按照所想读取出每行列中首尾像元。
以下是部分代码提取边界像元的核心算法,其实是很简单的一个思路(假设0是nodata value)。
a=[[0 for col in range(Raster.width)]for row in range(Raster.height)]
for i in range(0,Raster.width):
... for j in range(0,Raster.height):
... if(myRaster[j][i]!=0 and myRaster[j-1][i]==0):
... a[j][i]=myRaster[j][i]
... if(myRaster[j][i]==0 and myRaster[j-1][i]!=0):
... a[j-1][i]=myRaster[j-1][i]
...
for i in range(0,myRaster.height):
... for j in range(0,myRaster.width):
... if(arr[i][j]!=0 and arr[i][j-1]==0):
... a[i][j]=arr[i][j]
... if(arr[i][j]==0 and arr[i][j-1]!=0):
... a[i][j-1]=arr[i][j-1]
来源:https://blog.csdn.net/qq_14906811/article/details/72597167


猜你喜欢
- input标签checkbox,change和click绑定事件的区别我们经常在vue开发项目的过程中,遇到需要对input框使用v-mod
- 我的理解为什么会用到python-docx,因为近段时间下载了大量网文,但格式都是html的,我个人习惯使用word处理文字,于是就想法设法
- namedtuple 就是命名的 tuple,比较像 C 语言中 struct。一般情况下的 tuple 是 (item1, item2,
- 日常我们见的多的水印大都是做到图片里的,我依据html元素的css position定位作出这个 * 印,供大家参考<!DOCTYPE
- 准备工作右击新建的项目,选择Python File,新建一个Python文件,然后在开头import cv2导入cv2库。我们还要知道在Op
- 背景学习 Python 的话,仅掌握标准库是远不够的,有很多好用的第三方库我们也需要用到的,比如,由鼎鼎大名的 K 神开发的爬虫必不可少的
- 本文实例讲述了Go语言中使用反射的方法。分享给大家供大家参考。具体实现方法如下:// Data Modeltype Dish struct
- 【OpenCV】 ⚠️高手勿入! 半小时学会基本操作 ⚠️ 直线检测概述OpenCV 是一个跨平台的计算机视觉库, 支持多语言, 功能强大.
- SQLServer数据导出到excel有很多种方法,比如dts、ssis、还可以用sql语句调用openrowset。我们这里开拓思路,用C
- 元组(tuple)与列表类似,但是元组是不可修改的 (immutable)。也就是说,元组一旦被创建就不可被修改了。操作符 (in、+、*)
- 关于 Go 中 Map 类型和 Slice 类型的传递Map 类型先看例子 m1:func main() { m := make
- 测试数据:坐标数据:testExcelData.xlsx使用python读取excel文件需要安装xlrd库:xlrd下载后的压缩文件:xl
- 前言我第一次见到飞机大战是在我小学五年级下半学期的时候(2020年),这个游戏中可以说包含了几乎所有我目前可接触到的pygame知识。一、p
- 建立cards_main文件:# _*_ coding:utf-8 _*_"""file: cards_mai
- 这篇文章主要介绍了Django app配置多个数据库代码实例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需
- 1 问题描述最近与诸位聊起,在用户体验网站产品、完成任务的过程中,页面的切换到底是新开窗口,还是当前页面跳转,哪一种是最佳的用户体验。这一讨
- 虽然现在的GMail已经看不到这个效果,但之前那个可爱的深红色Loading仍然让许多人喜爱。我也将这款效果融入了我自己的WordPress
- 程序如下:<%Function GetEmploymentStatusListDim dd = Ap
- 插入mysql时,如果内容中有引号等特殊符号,会报错,解决方法可以用反斜杠转义,还可以用pymysql的一个方法自动转义:c = '
- 操作步骤1.下载BeautifulReport文件,本例文件下载地址 最新文件下载地址2.复制文件BeautifulReport,至pyth