4 GeoTrellis 核密度估值

2021-10-07 15:56:42 字數 2352 閱讀 7234

從網上找的一段解釋,文章**於:

核密度分析用於計算點、線要素測量值在指定鄰域範圍內的單位密度。簡單來說,它能直觀的反映出離散測量值在連續區域內的分布情況。其結果是中間值大周邊值小的光滑曲面,柵格值即為單位密度,在鄰域邊界處降為0。

核密度分析可用於計算人口密度、建築密度、獲取犯罪情況報告、旅遊區人口密度監測、連鎖店經營情況分析等等。例如:

某街區分布了多棟高層公寓及住宅,已知每棟的入住人數,想要了解街區內各處的人口分布情況,即可使用此功能,相當於將每棟樓的人口數量以核函式的變化趨勢分布到指定的圓形鄰域內,重疊區域進行加和,最後得到街區內各處的人口密度。而人口密度結果可用於店鋪選址決策、犯罪率估算等。

某地區有多家店面的連鎖零售店,假定顧客會根據路程的遠近來選擇光顧哪家店面,假定任何乙個顧客總是會選擇最近的那家店面。根據顧客到店面的距離字段,得出各個店面顧客分布情況的柵格面。

某地區準備修建道路(或者公用設施管線),可根據道路(或管線)對野生動物棲息地的影響字段,計算道路(管線)對野生動物棲息地造成影響。

核密度估值示例**:

package com.scrdny

import geotrellis.raster._

import geotrellis.raster.mapalgebra.focal.kernel

import geotrellis.vector.

import scala.util.random

object demo3

feature

(point

(randinrange

(extent.xmin, extent.xmax)

,randinrange

(extent.ymin, extent.ymax)),

random.nextint %16+

16)} val pts =

(for

(i <

-1 to 1000

) yield randompointfeature

(extent)

).tolist;

println

(pts)

; val kernelwidth: int =9;

val kern: kernel = kernel.

gaussian

(kernelwidth,

1.5,25)

; val kde: tile = pts.

kerneldensity

(kern,

rasterextent

(extent,

700,

400));

val colormap =

colormap((

0 to kde.findminmax._2 by 4

).toarray,

colorramps.heatmapbluetoyellowtoredspectrum

)kde.

renderpng

(colormap)

.write

("/users/mocker/downloads/test.tif"

)}

1、先randompointfeature在範圍生成隨機的點。for迴圈中的yield主要作用記住每次迭代資料的值,儲存在集合中,迴圈結束後將返回該集合。

2、使用核密度函式處理資料,並生成乙個700 * 400解析度的柵格地圖,

3、輸出地圖,輸出的格式可以選擇為png,或者tif柵格。

4、檢視生成的柵格地圖,放大之後檢視可以發現每一塊都是九個畫素點,也是通過val kernelwidth: int = 9;設定的。

8核 6核 4核 雙核CPU是什麼意思

對於初學者來說,cpu是什麼 什麼是雙核 4核 6核 8核等。下面,就以上的問題,我們做出一一解答。概念 cpu是什麼 做什麼用 一般cpu是接在 的,我們先來看看cpu是什麼,cpu既 處理器 電腦中乙個最重要,最核心的東西,市面上能買到的cpu只有兩種,一種是intel公司生產的,另一種是amd...

AMD3核開4核成功

現在amd流行開核 趁著心情鬱悶 偶也嘗試一下。主機板是技嘉ma770 us3,處理器是amd x3 720。偶買的主機板雖然是rev.2.0版本的,但是預設沒有ec fireware的選項,上網down了個bios公升級檔案 已經上傳附件了 用技嘉光碟帶的 bios程式載入安裝,一分鐘左右的時間就...

AMD3核開4核成功

現在amd流行開核 趁著心情鬱悶 偶也嘗試一下。主機板是技嘉ma770 us3,處理器是amd x3 720。偶買的主機板雖然是rev.2.0版本的,但是預設沒有ec fireware的選項,上網down了個bios公升級檔案 已經上傳附件了 用技嘉光碟帶的 bios程式載入安裝,一分鐘左右的時間就...