没有合适的资源?快使用搜索试试~ 我知道了~
整合地理定位和计算机视觉的城市街道级图像分析平台
软件X 15(2021)100777原始软件出版物INACITY-调查和分析一个城市Artur André Almeida de Macedo Oliveira,Roberto Hirata Jr.巴西圣保罗大学数学与统计学院计算机科学系,Rua do Matão 1010,圣保罗,SP 05508-090ar t i cl e i nf o文章历史记录:收到2021年收到修订版,2021年7月19日接受,2021年MSC:68-0468U0168U10568U397R50保留字:地理信息系统Geoportal计算机视觉a b st ra ctINACITY是一个整合地理定位图像数据库(GID)、地理信息系统(GIS)、数字地图和计算机视觉(CV)的平台,用于收集和分析城市街道级图像。该平台的软件架构是一个客户端-服务器模型,其中客户端是一个简单的网页,允许用户选择地图区域并选择过滤器来分析和可视化城市特征。服务器端是一个Django驱动的Web服务,带有PostgreSQL和Neo4j数据库。用户可以选择地图区域、图像过滤器和地理特征来分析相关的城市特征,例如使用该平台分析树木。该平台有一个开放源码的实施方案。该架构是可扩展的,并且可以轻松添加新模块或使用新的数字地图、GIS数据库、其他CV过滤器或其他GID替换现有模块版权所有©2021作者。由爱思唯尔公司出版这是CC BY许可下的开放获取文章(http://creativecommons.org/licenses/by/4.0/)中找到。代码元数据当前代码版本v1.0指向此代码版本所用代码/存储库的永久链接https://github.com/ElsevierSoftwareX/SOFTX-D-21-00075Code Ocean compute capsule N/A法律代码许可证Mozilla公共许可证2. 0使用git的代码版本控制系统使用的软件代码语言、工具和服务Python,Django,JavaScript,jquery,openlayers,bootstrap,Docker,PostgreSQL,neo4j编译要求,操作环境依赖性Docker,docker-compose如果可用,链接到开发人员文档/手册http://inacity.org/docs问题支持电子邮件arturao@ime.usp.br软件元数据当前软件版本v1.0此版本可执行文件的永久链接https://github.com/arturandre/inacity法律软件许可证Mozilla公共许可证2.0计算平台/操作系统Linux,OS X,Microsoft Windows,Docker安装要求依赖Docker,docker-compose如果可用,请链接到用户手册-如果正式出版,请在参考列表中引用该出版物http://inacity.org/tutorial问题支持电子邮件arturao@ime.usp.br*通讯作者。电子邮件地址:arturao@ime.usp.br(Artur André Almeida de MacedoOliveira)。https://doi.org/10.1016/j.softx.2021.1007771. 介绍开放式政府数据,或众包数据,甚至企业数据,通常可以在互联网上获得,正确和适当地使用它对政府和公民都有重要意义[1]。一些社会调查和2352-7110/©2021作者。 由Elsevier B.V.出版。这是一篇开放获取的文章,使用CC BY许可证(http://creativecommons.org/licenses/by/4.0/)。可在ScienceDirect上获得目录列表SoftwareX期刊主页:www.elsevier.com/locate/softxArtur André Almeida de Macedo Oliveira和Roberto Hirata Jr.软件X 15(2021)1007772这些项目是通过亲自视察地方和通过调查或照片收集数据来完成的。其中一些分析是为了建立邻里听力数据与健康相关受试者之间的关系,如青少年心理健康[2]、整体和下肢功能丧失[3,4]、贫困和死亡率[5]、低出生体重、哮喘和呼吸道疾病[6,7]、体力活动[8]、自测健康[9]、抑郁和压力[10,11]。一些研究更具体地针对邻居的身体特征(例如绿化、涂鸦、视觉城市衰退)、心理社会特征和肥胖之间的关系[12在一些研究中,分析了社区层面的身体和社会障碍的原因和后果[17收集数据可能是一个昂贵且耗时的过程[20]。据我们所知,目前还没有开源平台来收集、组合、分析和可视化多模态数据。当需要街道级别的图像数据时,地理定位图像数据库(GID),即图像检索系统,可以用于收集城市图像[20,21]。在成千上万的图像中寻找某些特征可能是不可行的,计算机视觉(CV)系统可以用来缓解这个问题。INACITY是一个开源平台,它集成了GID、地理信息系统(GIS)数据库、数字地图和CV技术,以收集和分析城市街道级图像。该平台的软件架构是一个服务器端是一个Django驱动的Web服务,带有PostgreSQL和Neo4j数据库。该平台不是地理信息系统的替代品,例如QGIS [22]。它可以补充地理信息系统,以确定感兴趣的地理位置工作流程将开始使用Imagery数据库系统从定义的位置收集图像,从这些图像中提取特征,并将数据存储回GIS中,正如我们稍后解释如何将存储的地理数据用于面向图形的数据库管理系统Neo4j时所描述的那样[23]。从最终用户的角度来看,该平台允许他/她在地图中选择感兴趣的区域,选择特征(例如,绿化、公共汽车站、交通标志等),然后基于在GID上所选区域内收集的图像来分析该特征的存在或甚至分布此外,终端用户还可以使用INACITY从开发人员的角度来看,INACITY提供了三种扩展:新的该架构是可扩展的,并且可以轻松添加新模块或使用新的数字地图、GIS数据库、CV过滤器或GID替换现有模块2. 方法和软件说明本节介绍软件体系结构、组件、类、当前功能以及扩展它以添加新功能的方法。在INACITY的后端负责收集数据的组件此外,自定义对象允许在INACITY的前端组合和显示异构数据2.1. 软件构架INACITY选择此模型是为了最大限度地提高平台的可访问性,也就是说,不使用客户端应用程序对于每个主要OS(例如,Linux,macOS和Windows)通过将平台作为Web平台提供,任何基于HTTP的客户端前端都可以使用它。为了使平台更容易访问,使用的主要部署工具是Docker系统[25]。开发后端所采用的编程语言是Python 3。选择Python而不是像C#甚至Java这样的业务驱动语言的原因是,这些语言通常都有自己的环境,比如Java虚拟机或Microsoft的专有库。Python对新手更友好,并且有丰富的库和包可供公众使用。除此之外,有相当多的科学工作是用Python完成的(例如,Scikit库家族[26])和Web开发框架(例如,Django和Flask),这反过来又被调整为轻松处理数据库建模,即使是地理数据。选择Django框架[27]作为后端核心是因为Django提供了处理基于Web的请求(即HTTP或更具体地说,基于REST的请求),数据库访问和建模,用户身份验证和授权,实时通信(扩展Django-channels)以及稳定和大型社区的所有机制。Django框架将所有这些部分管理和放在一起,只留下主要概念(数据集成)在INACITY平台中处理。在后端,工作的主体,除了设置Django机器,对负责收集和集成数据的类进行建模。前端开发也遵循Django指南-线使用Django模板,我们开发了一个由同一个后端提供的耦合前端,而不是一个框架 为了处理服务器的东西(例如,处理和数据库访问)和前端服务(例如,NodeJS)。INACITY平台提供的前端是一个可视化工具,它使用后端的数据,还允许创建用户帐户、登录和管理用户的工作会话。前端使用Django模板语言(基于HTML)和JavaScript开发。后端保持管理器系统1,其负责保持-跟踪从GIS、GID收集数据的类,以及实现CV技术以从图像中提取和处理数据的类。请求到后端的流程如下:1. 向后端的某个端点发出请求。2. Django基础设施将此请求委托给管理器组件(MC)。3. MC将其委托给负责收集/生成请求数据的类。4. 数据采集/生成类向MC返回数据5. MC格式化接收到的数据(如果需要),并将其返回给Django基础设施,然后将其返回给发起请求的调用者。值得注意的是,与背面的沟通--end通过REST API执行任何客户端应用程序都可以向后端发出请求,而不仅仅是在前端开发的INACITY平台。描述后端组件的图表以及有关其功能的一些评论可在项目的Github条目中找到该图还说明了管理器、抽象类和一个遵循被称为策略的设计模式的类,也就是说,当一个类是一个管理器(通常称为管理器组件)时,它将请求委托给一个关联的类,而响应依赖于关联的类。这些组件与Django的Manager类无关Artur André Almeida de Macedo Oliveira和Roberto Hirata Jr.软件X 15(2021)1007773衍生的对应物。每个管理器负责将来自某些前端客户端的请求委托给负责收集城市图像、GIS数据和由某些图像过滤器提取的数据的组件。MapMinerManager,ImageProvi-derManager, 和 ImageFilterManager是 摘要类它定义了一个公共接口,以相同的方式将请求委托给不同的外部系统。URL组件定义外部客户端可以调用的端点;这些端点定义后端的REST API函数。一个描述Manager类的类图,根据策略设计模式排列,在项目的Github条目[ 31 ]中可用该图显示了允许扩展INACITY数据源和处理器的抽象基类。例如,类OSMMiner是从MapMinerManager,它提供了一个统一的方式来收集数据[32]第32话OSMMiner类实现了其签名在其基类中定义的函数通过 调 用 这 些 函 数 , MapMinerManager 类 可 以 无 缝 地 从OpenStreetMapGIS收集数据,而无需根据数据模型进行调整,甚至无需调整OpenStreetMapGIS的连接细节。这种设计是可能的,因为OSMMiner类将来自MapMinerManager的请求转换为OpenStreetMap的查询,并且还将来自后者的响应转换为通用格式(即,GeoJSON [33])可以被传送回前端客户端。前端部分包括最终用户的网站。描述前端图的图表可以在项目的Github条目中找到主要组件是它的页面和通信类。这些页面基本上使最终用户能够与网站进行交互,并在用户提出请求时提供更新通信组件负责封装后端的请求,在当前版本中,还负责封装Google Street View(GSV)服务器的请求。值得注意的是,由于对GSV的限制,负责与GSV服务器通信的GSVService组件在前端实现。然而,签名密钥和GSV请求公式化算法在后端实现。谷歌街景[35]被选为标准的GID,因为它的全球覆盖范围,因为它是一个平台,通常用于科学论文,旨在通过街道级的城市图像分析城市环境。2.2. 软件功能本节介绍了系统的组件,允许向系统添加功能。通过将来自GIS的地理定位特征与来自图像提供者的地理定位图像相这种功能的一个示例包括观察在城市绿化数据库中编目的特定种类的树木,如Pasadena Urban Trees数据集[36],或来自巴西圣保罗市GeoSampa数据集[ 37 ]的道路绿化INACITY平台涉及将图像数据和从中提取的信息与地理信息系统相结合。这样的整合允许广泛的应用,最直接的是评估城市特征的质量或存在。这种集成使人们能够直观地自动评估一段道路的质量,精确地发现裂缝,坑洞,油漆损坏和其他退化迹象。关于城市特 征 的 检 测 , 一 种 可 能性 是 实 施 深 度 学 习 神 经 网 络 来检 测 从KartaView(以前称为OpenStreetCam)[39]等众包图像平台收集的图像中的交通标志[38]。通过从抽象基类ImageProvider创建子类,和ImageFilter,可以将KartaView(收集图像)集成到INACITY中,以处理收集的图像并检测交通标志或其他城市元素。从开发人员2.3. 扩展平台该平台为用户提供了使用他/她的数据集或新图像滤波算法的方法,因此新组件可以轻松地与先前实现的组件集成。集成新组件以扩展平台需要用户直接在Python的源代码中实现新组件。有三种主要的方式来扩展该平台,新的地理数据库,新的图像平台和新的计算机视觉算法。每个可能的扩展都是通过实现特定基类的子类来实现的,如下节所述,该子类为相应的管理器组件定义接口。2.3.1. GeoImage为 了 方 便 图 像 数 据 和 地 理 数 据 之 间 的 集 成 , 可 以 使 用GeoImage对象。描述基于GeoJSON的GeoImage组件的类图可在项目的Github条目[ 40 ]中获得该对象的实现类似于GeoJ- SON对象,以实现更好的互操作性。正如RFC 7946 [33]所规定的,GeoJSON对象的字段都是用正确的语义定义的,除了特征对象。此字段可以包含任何JSON(JavaScriptObject Notation)对象。因此,我们将与关键地理图像下的属性字段内的特征对象的坐标相关的图像数据保留。每个GeoJSON对象要么是一个集合,要么是一个特征,要么是七种几何结构之一[33]。 我们将每个地理实体视为一个特征集合,通常只包含一个特征。每个地理实体都被视为一个地理集合,可能只包含一个单一的特征。对ImageProvider的每个请求都将包含一个带有Features数组的DataCollection。后者的坐标将定义要由ImageProvider检索的图像的坐标。图图1显示了GeoJSON作为一个抽象类的示意图,该抽象类具有九个可能的子类(考虑到Geometry类可能是六种不同类型之一)。GeoImage对象保存有关从图像提供程序收集的某些图像的元数据,以及使用某些计算机视觉算法从该特定图像提取的数据。提取的数据将保存在一个名为Pro的单独对象cessedImageData。请注意,同一GeoImage可以保存对多个ProcessedImageData的引用,因为每个ImageData都包含一个引用。年龄可以通过不同的计算机视觉算法处理,产生多个不同的提取数据。我们在Feature对象的JSON字段属性中添加一个新条目,其中包含关键geoimages,以保持几何属性坐标之间的索引相同。这是访问与特定坐标相关的GeoImage的简单方法。地理图像条目可以具有相同的结构(即, 嵌套索引)。当图像不适用于特定坐标时,错误字符串将满足geoimages条目中的特定Artur André Almeida de Macedo Oliveira和Roberto Hirata Jr.软件X 15(2021)1007774Fig. 1. GeoJSON类图。2.3.2. 图像滤波模块图 2说明了如何扩展平台。 图像过滤器组件的子类用于处理图像. 没有任何突出显示的组件已经实现,而黄色突出显示的组件表示正在开发的新组件,Trees&Powerlines正在平台中集成。它代表了一个架空电力线的探测器,这些电力线与树冠和树枝相交。例如,场景字幕类可以是这样的:给定图像,它提供场景的文本描述。地理定位图像的描述可以存储在与图像相关的地理特征中,甚至可以存储在完全解耦的GIS技术铺装层质量类是另一个对象示例,它可以提供程度来指示道路铺装层的损坏程度。如果输入图像裂缝和坑洞)。该组件可以提供通过分割将突出路面的缺陷而最重要的损害。接口设计和由ab-classImageFilter提供的指南可用于添加从ImageFilter派生的新组件。新实现的组件可以很容易地由ImageFilterManager使用,并集成到INACITY平台中。2.3.3. 图像提供程序模块类似地,相同的可扩展性和模块化概念可以扩展到ImageProvider和MapMiner类。图图3呈现了与针对图像滤波器呈现的相同的概念,但是应用于图像提供器。主要区别在于,该组件负责收集与给定坐标相关联的图像,而不是处理输入图像例如,GSV API允许查询与某个给定坐标相关的最近全景。它还允许选择垂直和水平角度,视野,图像分辨率和其他有关图像的参数,一些特定的全景。图中的GoogleStreetView组件。3接收一组坐标作为输入,并将其转换为GSV平台的适当请求,处理可能的异常,并最终将格式化的响应(通常是GeoImage实例)返回给ImageProviderManager类。为了扩展Image Provide模块,必须创建一个从Image Provider抽象类派生的子类,如图所示。3通过突出显示的(黄色框)子类Map- pilary[41],Baidu Total View[42]和Crowdsource。这样的子类封装了所有负责通信的代码,与目标图像提供器系统连接。给定一组坐标,子类必须制定对目标系统的查询,然后将来自该系统的响应与输入坐标合并,组成返回到ImageProviderManager类。的情况众包子类,其目标系统是INACITY平台后端本身,该组件为用户提供了自己提供城市图像的方法,这反过来又可以 稍后由ImageProvider Manager组件根据另一个用户请求检索。2.3.4. Map Miner模块Map Miner模块负责将GIS数据库集成到INACITY。它有一些特殊性值得一提。图4介绍了MapMiner模块及其与GIS数据库的连接。与其他模块图中一样,蓝色组件对应于已实现的组件,黄色组件是将在INACITY平台的未来版本中实现的GeoSampa组件定义了从内部PostgreSQL数据库中收集有关圣保罗市公交车站数据的 方 法 。 从 GeoSampa [37] 数 据 库 中 提 取 的 数 据 直 接 引 入INACITY数据库,以减少外部数据的数量。nal queries.数据库还保存用户OSMMiner类实现了收集街道信息的方法街道被表示为来自OpenStreetMap平台的互连LineString对象的集合(根据GeoJSON规范[33])所收集的LineString对象的序列(每个对象保存其地理坐标)可以作为从某些图像提供器系统获取地理定位图像的输入。除此之外,关系(例如,方向)之间的每对对象以确定两个相邻的相机之间的角度。PanoramaMiner类在Neo4j数据库实例上执行查询,Neo4j是一个面向图形的数据库管理系统(DBMS)[23]。使用面向图形的数据库的主要优点是对街道、区域和其他地理对象进行在当前版本中,Neo4j实例与Django服务器一起托管在同一个Docker容器该数据库负责将来自物理实体的数据(例如,对象从一些地理信息系统),他们的图像(采样从一些图像提供器系统),甚至是从这些图像中提取的数据(使用一些图像过滤器组件)。图图5示出了一些GSV的全景图、来自每个全景图的图像元数据以及从图像中提取的数据的示例,如通过Neo4j浏览器用户界面所看到的。橙色圆圈代表每个全景。它包含地址、音高、摄像机方向和拍摄每个全景可以跨越不同的图像,每个图像具有俯仰和航向。因此,每个全景可能与多个图像相关,因此关于这些图像的元数据存储在称为视图的蓝色圆圈中。从处理图像得到的数据被存储在由图5中的灰色圆圈表示的称为FilterResult的顶点中(与对应于经处理的图像的视图在面向图的DBMS中的这种数据表示允许更快地检索已经收集和处理的结果,减少用户需要等待他/她的请求完成的时间,保持系统的灵活性和可扩展性。Artur André Almeida de Macedo Oliveira和Roberto Hirata Jr.软件X 15(2021)1007775图二. 图像过滤模块。Image Filter类的所有子类都有一个公共接口,供ImageFilterManager类在请求期间使用。 黄色阴影的子类正在INACITY平台的当前版本中开发,绿色阴影的子类正在平台中集成,其他子类已经可用。(关于此图例中颜色的参考解释,请读者参考本文的网络版本图三. 图像提供程序模块。每个用户请求都由Manager组件(例如ImageProviderManager)接收,并路由到请求中指定的ImageProvider子类。这些子类中的每一个都为Manager组件提供了一个公共接口,用于从给定的外部图像提供者(例如,GSV),从而抽象了API和规则的特殊性(例如,请求之间的最小时间)。见图4。Map Miner模块。Neo4j和PostgreSQL数据库(圆柱形图标)是本地部署的,而用云图标描绘的组件表示通过Map Miner类的子类访问的外部系统。 与其他模块一样,用户请求由Manager组件路由(在此图中省略;参见图1和图2)。例如,2和3)映射到请求中指定的Map Miner子类。该子类必须将用户请求转换为对目标GIS的请求(例如,OpenStreetMap)或本地数据库(例如,Neo4j),其包含地理数据(例如,从GeoSampa导入本地PostgresSQL数据库的GSV巴士站或甚至巴士站的位置请注意,Django ORM用于与PostgreSQL数据库交互,而与Neo4j的交互是通过Neo4j,Inc.提供的python包完成的。3. 结果和示例该平台这种组合允许以实用的方式多次使用在本节中,我们将展示该平台的两个用例示例。3.1. 邻里目视检查该平台在当前的实现中,OpenStreetMap和GSV平台是坐标的源和图像提供者。一旦被收集,街道就为用户定义了一条路线,以查看来自所选区域中的街道的图片,就好像他/她在那里一样。这个用例对于审计邻域很方便[21]。本文附带了一个展示用例的短视频[43]。当使用INACITY前端的人选择一个区域并按下“获取图像”按钮时,管道开始我们假设用户保留GIS(MapMiner)的默认选项。此操作触发从前端类UIModel到INACITY该请求包含所选区域UIModel请求之后的流程图由于这是对地理实体的请求,因此请求由MapMinerManager组件接收,然后将其委托给MapMiner子类。在这个例子中,OSMMiner是引用的子类,因为它负责处理对OpenStreetMap平台的请求。OSMMiner子类将生成一个使用Overpass Query Language编写的查询,并将其发送到OpenStreetMap平台。在OpenStreetMap 返回查询结果后,OSM-Miner子类将使用GeoJSON [33]规范格式化响应并将其返回给MapMinerManager,MapMinerManager又将其返回给前端。INACITY显示返回的地理实体,在本例中是街道。为了更好地可视化结果,该系统在数字地图中将街道表示为蓝色线条。在此步骤之后,UIModel类发出第二个请求该请求由第一步中收集的地理实体和图像提供程序组成。Artur André Almeida de Macedo Oliveira和Roberto Hirata Jr.软件X 15(2021)1007776图五. 存 储 在本地Neo4j实例中的一些节点的可视化。橙色的全景节点表示拍摄图像的位置(以纬度和经度坐标指定)。视图(蓝色)表示图像,并封装相机的水平(航向)和垂直(俯仰)角度(相对于正北和平地)。过滤结果(灰色节点)维护由某些ImageFilter从视图中提取的数据子类(Fig. 2)的情况。在此步骤之后,UIModel类发出第二个请求,该请求由第一步中收集的地理实体和图像提供程序组成。此请求遵循与用于收集街 道 地 理 数 据 的 流 程 类 似 的 流 程 , 不 同 之 处 在 于 这 次ImageProviderManager接收请求。由于图像提供程序的默认选项是GSV,因此ImageProviderManager将请求委托给图像的GoogleStreetViewImageProvider子类提供程序组件。3.2. 城市特征可视化(绿化)可视化城市特征的分布,如绿化,是INACITY平台在给定地理区域的另一个用例。流水线像以前一样开始(用户选择感兴趣的区域),然后触发处理在邻域试听期间收集的图像的请求。在本文附带的视频中,用户应用了一种名为“绿色”的过滤器,以估计绿色景观指数,图像的部分对应于绿色植被。被视为绿色植被的图像比例(与图像大小相关)将存储在与GeoImage关联的ProcessedImageData对象的密度属性中,经过处理的图像。当返回PsychureCollection时,回到前端,其每个特征和对应的GeoImage(如果可用)将具有相关联的ProcessedImageData,其又可以具有作为绿色视图指数的密度的提取数据,其将被显示为例如图6。除了热图可视化,INACITY还可以提供一些城市特征叠加到原始图像上。 图图7(b)给出了一个图像的例子,其中绿色部分(如由后端分类的)以绿色突出显示,而非绿色部分以蓝色覆盖到图像上。这种可视化允许对每个图像而不是对分析区域进行细粒度检查greenery image filter模块使用Python包numpy [46]和scikit-image [47]。4. 演示网站、影响和局限性INACITY可在http://inacity.org上找到,任何人都可以在不部署的情况下尝试实现的分析用户级别的配额系统是必要的,以允许更多的用户通过演示网站尝试平台(由于GSV成本)。尽管如此,用户可以向平台提供他们自己的GSV凭证(即,没有一般配额使用)。非专业用户可以使用公共实例来选择区域,从中查询图像,并从中提取特征见图6。所选区域(即红色方块)的绿化热图(较浅的颜色表示较高的值)。(For对本图图例中所指颜色的解释,读者可参考本文的网络版图像.然而,这种方法限制了用户在公共实例中实现的已经可用的功能,这些功能是OpenStreetMap的街道网络位置[32],GeoSampa的巴士站[37],Google街景的图像[35],目前INACITY的公共实例中实现的唯一图像处理算法是绿色。开发人员和研究人员将来可以在本地部署的INACITY平台实例中实现其他功能。INACITY可以成为更广泛的研究管道的一部分例如,在[48]中,我们从阿雷格里港(BR)和圣保罗市的一些位置收集图像,以建立机器学习模型来检测电线和树枝之间的缠绕。如果模型成功,可以通过子类化ImageFilter类将其耦合到INACITY中,从而使平台能够帮助城市管理者检测树木和电线缠绕并防止事故。4.1. 可编程模块配额模块跟踪注册用户执行了多少次调用。一个匿名用户,通过Django session-id标识,也可以使用系统。Artur André Almeida de Macedo Oliveira和Roberto Hirata Jr.软件X 15(2021)1007777见图7。(a)由Google Street View提供的示例图像。(b)(a)中所示的图像经过“绿化密度”子类过滤后。在过滤后的图像中,检测到的绿色区域以绿色突出显示,而图像的其余部分是蓝色的。(For对本图图例中所指颜色的解释,读者可参考本文的网络版配额子系统的主要组件显示在项目QuotaManager类负责在数据库中注册新条目,并跟踪每个注册用户的可用配额。装饰器工厂quota_request_decorator_factory被用作其使用情况被跟踪的函 数 的 装 饰 器 装 饰 器 工 厂 的 参 数 是 default_user_quota 、default_anonymous_quota和skip_condition。这些参数分别指定注册用户和匿名用户可以进行的呼叫数最后一个参数是一个布尔函数,用于测试配额是否应当使用管理器(例如,用户正在使用他/她自己的GSV凭证)。4.2. 性能测试我们创建了一个基准测试来评估多个并发请求对后端的影响。测试包括收集两个不相交的城市地区的街道和图像。每个区域都有不同的大小,因此街道和图像的数量也不同。表1列出了基准中使用的两个领域的结果和详细信息。这些特征是每个区域的大小(平方米),街道数量,收集的图像数量。最小时间、最大时间、平均时间和标准差时间在收集街道之间进行分割 并收集所收集的对应街道的图像。最后,使用当前实施的Greenery图像处理所有收集的图像所花费的时间滤波为了收集响应时间,执行了100个请求1区50,2区50。在任何给定的时间,都有十个同时提出的请求。对区域1的请求与对区域2的请求交织在一起,也就是说,执行的第一个请求与区域1相关,第二个请求与区域2相关,第三个请求再次与区域1相关,依此类推。在基准测试期间托管平台的服务器是具有八个内核的Intel Xeon E5420 2.5 GHz5. 讨论和结论在智慧城市和未来互联网的背景下,使用政府公共数据甚至互联网上的私人数据对于评估城市特征至关重要我们创建了表1对执行时间和请求大小(以收集的街道和图像)。区域1区域2区域348906平方米20931平方米327975平方米Num. 街道27225Num. 图像42971358最小时间(街道)7.78秒7.78秒7.89秒Avg. 时间(街道)9.14秒9.36秒8.91秒STD. 时间(街道)2.2秒2.34秒2.05秒最大时间(街道)16.76秒16.68秒16.76秒最小时间(图像)8.57秒8.57秒一百零八点三十六秒Avg.时间(图像)84.55秒十八点七九秒152.04秒STD. 时间(图像)68.79秒9.52秒十九点八十一秒最大时间(图像)194.92秒50.13秒194.92秒最小时间(绿色过滤器)153.70秒153.70秒812.96秒Avg.时间(绿色过滤器)494.61秒170.53秒843.63秒STD. 时间(绿色过滤器)342.97秒10.97秒十五点三十二秒最长时间(绿色过滤器)867.48秒187.24秒867.47秒INACITY平台有三个概念:地理定位图像、地理定位数据和从图像中提取信息的算法这些概念指导了平台模块换句话说,通过遵循每个模块基类前端是简单的,并允许最终用户(例如,公民、开发人员、研究人员或政府管理人员)使用该平台收集数据以供将来使用,是开源的,通过修改平台以满足他们的需求来进一步改进平台。所提出的用例是有用的,但简单,我们计划将其扩展到其他城市问题,如研究电力线与树木的交叉问题。竞合利益作者声明,他们没有已知的竞争性财务利益或个人关系,可能会影响本文报告的工作Artur André Almeida de Macedo Oliveira和Roberto Hirata Jr.软件X 15(2021)1007778⃝⃝⃝⃝致谢这项研究是由CNPq 465446/2014-0,FAPESP 14/50937-1和15/24485-9。作者认可圣保罗研究基金会(FAPESP)18/10767-0和15/22308-2。这项研究的部分资金来自Coordenação de Pessoal deNível Superior引用[1] OpenStreetMap的贡献者。将您的数据提供给openstreetmap。2021年,https://blog.openstreetmap.org/wp-content/uploads/2020/07/Providing-data-to-OpenStreetMap.pdf。检索日期:2021年6月18日。[2] Aneshensel CS,Sucoff CA.青少年心理健康的邻里背景。J Health Soc Behav1996;293[3] Balfour JL,Kaplan GA.邻里环境和老年人身体功能的丧失:来自阿拉米达县研究的证据。是流行病学杂志2002;155(6):507[4] Schootman M,Andresen EM,Wolinsky FD,Malmstrom TK,Miller JP,Miller DK.中年非裔美国人的邻里条件和发生下半身功能限制的风险美国流行病学杂志2006;163(5):450-8。[5] 放大图片作者:Cohen DA,Farley TA.为什么贫穷是不健康的?社会和物理调解人。Soc Sci Med2003;57(9):1631-41.[6] Cagney KA,Browning CR.探索哮喘和其他呼吸道疾病的邻里水平差异。普通内科杂志2004;19(3):229 - 36。[7] Nepomnyaschy L,Reichman NE.城市幼儿低出生体重与哮喘。美国公共卫生杂志2006;96(9):1604[8] Hoehner CM,Ramirez LKB,Elliott MB,Handy SL,Brownson RC.城市成年人的感知和客观环境措施与身体活动。美国预防医学杂志2005;28(2):105[9] [10]张文,李文.协会的邻里心理社会压力和自测健康在阿姆斯特丹,荷兰。JEpidemiol CommunHealth2007;61(12):1042-9.[10]Latkin CA,Curry AD.紧张的邻里和抑郁症:邻里障碍影响的前瞻性研究。JHealth Soc Behav2003;34-44.[11]Kim D.邻居家的布鲁斯?邻里特征和抑郁症。流行病学评论2008;30(1):101-17。[12]Ellaway A,Macintyre S,Bonnefoy X. 葡萄、绿色植物和肥胖成 人 :欧洲横断面调查的二次分析。BMJ2005;331(7517):611-2.[13]Glass TA,Rasmussen MD,Schwartz BS.老年人的社区和肥胖:巴尔的摩记忆研究。美国预防医学杂志2006;31(6):455-63。[14]Boehmer T,Hoehner C,Deshpande A,Ramirez LB,Brownson RC.感知和观察城市成年人肥胖的邻里指标。IntJ Obes2007;31(6):968.[15]张文忠,张文忠. 肥胖的途径:确定身体活动和饮食的局部可改变的决定因素。Soc Sci Med 2007;65(9):1882[16]格拉福瓦IB。超重儿童:评估建筑环境的贡献。预防医学2008;47(3):304-8。[17]Skogan WG.无序与衰落:美国社区的犯罪和腐败螺旋。加州大学出版社; 1992.[18]Sampson RJ,Raudenbush SW.公共空间的系统性社会观察:城市社区混乱的新视角。美国社会学杂志1999;105(3):603-51。[19]斯科根W失序与衰落:研究的现状。J Res CrimeDelinquency2015;52(4):464-85.[20]Wilson JS , Kelly CM , Schootman M , Baker EA , Banerjee A , ClenninM,et利 用 全方位图像评估建筑环境。美国预防医学杂志2012;42(2):193-9。[21]Rundle AG,Bader MD,Richards CA,Neckerman KM,Teitler JO.使用谷歌街景审计邻里环境。美国预防医学杂志2011;40(1):94-100。[22]QGIS 开 发 团 队 。 QGIS 地 理 信 息 系 统 开 源 地 理 空 间 基 金 会 ; 2009 年 ,http://qgis.osgeo.org。[23]c 2019 Neo4j,Inc.. Neo4j图形平台。2019年,https://neo4j
下载后可阅读完整内容,剩余1页未读,立即下载
cpongm
- 粉丝: 4
- 资源: 2万+
上传资源 快速赚钱
- 我的内容管理 收起
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
会员权益专享
最新资源
- zigbee-cluster-library-specification
- JSBSim Reference Manual
- c++校园超市商品信息管理系统课程设计说明书(含源代码) (2).pdf
- 建筑供配电系统相关课件.pptx
- 企业管理规章制度及管理模式.doc
- vb打开摄像头.doc
- 云计算-可信计算中认证协议改进方案.pdf
- [详细完整版]单片机编程4.ppt
- c语言常用算法.pdf
- c++经典程序代码大全.pdf
- 单片机数字时钟资料.doc
- 11项目管理前沿1.0.pptx
- 基于ssm的“魅力”繁峙宣传网站的设计与实现论文.doc
- 智慧交通综合解决方案.pptx
- 建筑防潮设计-PowerPointPresentati.pptx
- SPC统计过程控制程序.pptx
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功