这里的SVF并不是生物学或医学的(Stromal Vascular Fraction),而是指GIS中的(Sky View Factor,SVF),即为(城市)天空开阔度。

城市天空开阔度(Sky View Factor,SVF)是重要的城市形态学参数,那今天博主就跟大家讲一下如何用ArcMap来计算天空开阔度。

1、加载数据

需要加载的数据包括buildings(带有高度信息的建筑数据),area(范围数据),用ArcMap进行添加。如图:

   

buildings数据显示

area数据显示

2、裁剪

(1)将buildings及area进行备份,存为buildings2、area2,打开编辑器,【开始编辑】,选中所有建筑,【合并】。

(2)用 【编辑器】中的【裁剪】工具进行裁剪。

裁剪参数设置

裁剪结果图

3、合并

设置环境,用ArcToolbox中的【合并】工具,对裁剪后的图层与建筑图层(buildings)进行合并。

环境设置参数

合并参数设置

4、面转栅格

面转栅格参数设置

面转栅格结果图

5、栅格转点

栅格转点参数设置

栅格转点,并对多余部分进行删除。

栅格转点结果图

6、建立缓冲区(推荐使用方法二)

方法一:

缓冲区参数设置

缓冲区结果局部图

属性表

此时我们可以看到属性表中只有40个要素,原因是grid_code(即为中心点高程数据)相同的为同一要素,需要将多部件转为单部件

(1)【编辑器】【开始编辑】选中所有要素(center_buffer中)。

(2)【高级编辑】【拆分多部件要素】。

(3)【添加字段】,“CID”,作为圆的唯一标识

方法二:

缓冲区分析参数设置

属性表

此时pointid作为标识字段,grid_code仍为2中心点高程

让让你们康康全图吧,但愿没有密集综合征

7、相交

相交参数设置

相交结果(部分)

8、计算SVF

接下来的操作均为表格操作,要熟练使用栅格计算器,若忘记SVF公式,可看文章开头。

(1)【添加字段】,“SinA”

高差h=([Height]- [grid_code]),

半径r=10m

(2)【字段计算器】,输入公式:“ ([Height]- [grid_code]) / Sqr ( ([Height]- [grid_code]) *([Height]- [grid_code]) +100 )”

字段计算器参数设置

(3)筛选SinA值为负数,归零

一些小伙伴也能要问了,为何会出现负值?原因是相交就很难避免一些高的建筑与低的建筑在同一个圆中,而他的圆心又恰好在高的建筑上,自然就出现的SinA值为负的情况,而SVF为天空开阔度,要计算的自然是高于中心点的角,SinA应为非负,为减小影响,要进行归零处理。(还有一种方法是直接删除,而且此方法更合理,但本例中会出现些许问题)

(当然,如果你只计算地面的天空开阔度就不会有这种烦恼了)

(4)清除所选要素

(5)汇总

计算sinA平均值

(6)计算SVF

center图层,【添加字段】

右键,【连接】,【连接数据】

连接数据参数设置

【字段计算器】,输入公式“1- [averageSinA.Ave_SinA]”,移除所有连接。

字段计算器参数设置

9、点转栅格

点转栅格参数设置

  

天空开阔度(SVF)结果图

颜色越红,表示天空开阔度越差;颜色越蓝表示天空开阔度越好。

附页:

如果针对地面通风等进行研究,可将5m高度以上建筑,svf设为1,作为成本栅格

具体操作如下:

(1)按属性选择

按属性选择参数设置

(2)按位置选择

按位置选择参数设置

按位置选择结果图

(3)切换选择

【打开属性表】【切换选择】

切换选择结果图

(4)点转栅格

点转栅格参数设置

  

  

SVF结果图

知识点补充:

SVM

支持向量机(Support Vector Machine, SVM)是一类按监督学习(supervised learning)方式对数据进行二元分类的广义线性分类器(generalized linear classifier),其决策边界是对学习样本求解的最大边距超平面(maximum-margin hyperplane) 。
SVM使用铰链损失函数(hinge loss)计算经验风险(empirical risk)并在求解系统中加入了正则化项以优化结构风险(structural risk),是一个具有稀疏性和稳健性的分类器  。SVM可以通过核方法(kernel method)进行非线性分类,是常见的核学习(kernel learning)方法之一 [4]  。
SVM被提出于1964年,在二十世纪90年代后得到快速发展并衍生出一系列改进和扩展算法,在人像识别文本分类模式识别(pattern recognition)问题中有得到应用。

今日份歌曲推荐:

龙卷风—周杰伦

ArcMap进行天空开阔度(SVF)分析的更多相关文章

  1. ArcMap中用VBA读度矢量图层信息

    ArcMap下用VBA操作图层基本的过程了. Private Sub UIButtonControl1_Click() Dim pApp As IApplication Set pApp = Appl ...

  2. openresty+lua+kafka方案与Tomcat接口并发度对比分析

    1.openresty+lua+kafka 1.1 openresty+lua+kafka方案 之前的项目基于nginx反向代理后转发到Tomcat的API接口进行业务处理,然后将json数据打入ka ...

  3. ArcMap操作随记(14)

    1.ArcMap中模型转为Python脚本 [模型]→右键→[编辑]→[模型]→[导出]→[至Python脚本] 2.一般来说,植被指数NDVI,-1<=NDVI<=1. 3.用lands ...

  4. python 用gensim进行文本相似度分析

    http://blog.csdn.net/chencheng126/article/details/50070021 参考于这个博主的博文. 原理 1.文本相似度计算的需求始于搜索引擎. 搜索引擎需要 ...

  5. 《数据结构与算法之美》 <01>复杂度分析(上):如何分析、统计算法的执行效率和资源消耗?

    我们都知道,数据结构和算法本身解决的是“快”和“省”的问题,即如何让代码运行得更快,如何让代码更省存储空间.所以,执行效率是算法一个非常重要的考量指标. 那如何来衡量你编写的算法代码的执行效率呢?这里 ...

  6. R语言和数据分析十大:购物篮分析

    提到数据挖掘,我们的第一个反应是之前的啤酒和尿布的故事听说过,这个故事是一个典型的数据挖掘关联规则.篮分析的传统线性回归之间的主要差别的差别,对于离散数据的相关性分析: 常见的关联规则: 关联规则:牛 ...

  7. ExtJs在disabled和readOnly美学分析

    ExtJs中disabled和readOnly美观度的分析 ExtJs中.假设设置输入框为仅仅读属性,一般第一考虑的都是readonly=true 它的效果和正常输入框一样,可是不同意输入: 然而,它 ...

  8. ArcGIS 网络分析[2] 在ArcMap中使用网络数据集进行五大网络分析[最短路径/服务区/最近设施点/OD成本矩阵/车辆分配]

    上一章花了大篇幅介绍网络数据集的创建,也简单说了下点线的连通性问题. 那么可以试试刀锋不锋利啦! 网络分析呢,ArcGIS提供了5个基本分析类型: 最短路径求解 服务区(服务覆盖范围) 事故突发地的最 ...

  9. 多项式求导系列——OO Unit1分析和总结

    一.摘要 本文是BUAA OO课程Unit1在课程讲授.三次作业完成.自测和互测时发现的问题,以及倾听别人的思路分享所引起个人的一些思考的总结性博客.本文第二部分介绍三次作业的设计思路,主要以类图的形 ...

随机推荐

  1. sql作业题

    作业题:1.查询选修课程'3-105'且成绩在60到80之间的所有记录.注释:用于指定某个范围使用between and,也可以使用and连接符;答案:法1:select * from sc wher ...

  2. [源码解析] NVIDIA HugeCTR,GPU 版本参数服务器 --(1)

    [源码解析] NVIDIA HugeCTR,GPU版本参数服务器 --(1) 目录 [源码解析] NVIDIA HugeCTR,GPU版本参数服务器 --(1) 0x00 摘要 0x01 背景 1.1 ...

  3. Centos 7.6 使用 kubekey 部署 kubesphere v3.1.0

    文章目录 主要功能 硬件要求 Kubernetes版本要求 配置主机之间的免密 安装所需依赖 下载KubeKey 创建Kubernetes集群以及KubeSphere kk命令使用方式 修改配置文件 ...

  4. c++ 文本处理

    c++ 文本处理 1.使用sstream版本 (1)功能:截取第一列为1以后的数据,如下图,截取第5行(包括第5行)以后的数据,前面4行数据丢弃. (2)代码:textProc.cc #include ...

  5. 为什么使用Mybatis对JDBC进行包装探究

    一.原生JDBC在实际生产中使用存在的影响性能的问题 首先分析使用JDBC的代码: Connection connection = null; PreparedStatement preparedSt ...

  6. ReentrantLock与synchronized比较分析

    ReentrantLock:完成了Lock接口,是一个可重入锁,并且支持线程公正竞赛和非公正竞赛两种形式,默认情况下对错公正形式.ReentrantLock算是synchronized的补充和替代计划 ...

  7. HDFS免重启挂载新磁盘

    背景 在生产环境中,集群节点磁盘大小不同,其使用率也会不同,HDFS虽有均衡策略,但也会有数据不平衡的情况,有些节点磁盘就会被打满,然后这个节点就不健康了(Unhealthy Nodes),Yarn的 ...

  8. 智能脚本工具(Smart scripts)测试应用

    如果你是一位网络测试人员,您的工作中是否有出现过以下困扰呢? · 重复机械式的测试有时让你觉得工作是如此的枯燥乏味!· 只增不减的测试用例让你下班越来越晚!· 请求老板招人,人却永远不够用! 但值得庆 ...

  9. Windows原理深入学习系列-访问控制列表

    这是[信安成长计划]的第 19 篇文章 0x00 目录 0x01 介绍 0x02 DACL 0x03 创建DACL 0x04 文件读取测试 0x05 进程注入测试 0x06 原理分析 Win10_x6 ...

  10. 【C#基础概念】 里氏转换-as/is

    里氏转换 子类可以赋值给父类.(如果有一个地方需要一个父类作为参数,我们可以给一个子类 ) 如果父类中装的是子类对象,那么可以将这个父类强转为子类对象. 创建几个类帮助我们理解: using Syst ...