Kernel
# 简介
核对象(Kernel)提供低通/高通滤波器、水平/垂直滤波器、sobel /laplacian 边缘检查滤波器、统计邻近信息过滤器等算法。
# fixed
创建一个过滤器对象。
函数 | 返回值 |
---|---|
fixed(width, height, weights, x, y, normalize) | Kernel |
参数 | 类型 | 说明 |
---|---|---|
width | Int | 过滤器的像素宽度,默认为-1 |
height | Int | 过滤器的像素高度,默认为-1 |
weights | List | 一个 [height] *[width]的二维数组,值为过滤器中的权重值 |
x | Int | 焦点的左偏移量,默认为-1 |
y | Int | 焦点的上偏移量,默认为-1 |
normalize | Boolean | 将过滤器归一化为和为1,默认为false |
# 示例
image = pie.Image("LC08/01/T1/LC08_121031_20181019").select(["B5"])
kernel= pie.Kernel().fixed(3, 3,[[1, 0, 0],[0, 0, 0],[0, 0, 1]])
imageKernel = image.convolve(kernel)
Map = pie.Map()
Map.addLayer(imageKernel,{'min':0,'max':20500}, "kernel_img")
Map.setCenter(120.17,41.81, 7)
Map
# horizontal
生成水平滤波器。
函数 | 返回值 |
---|---|
horizontal() | Kernel |
# 示例
image=pie.Image("LC08/01/T1/LC08_121031_20181019").select(["B5"])
kernel= pie.Kernel().horizontal()
imageKernel = image.convolve(kernel)
Map = pie.Map()
Map.addLayer(imageKernel,{'min':0,'max':10000},"imageKernel")
Map.setCenter(120,42,7)
Map
# laplacian
生成3×3laplacian边缘检测滤波器。
函数 | 返回值 |
---|---|
laplacian() | Kernel |
# 示例
image=pie.Image("LC08/01/T1/LC08_121031_20181019").select(["B5"])
kernel= pie.Kernel().laplacian()
imageKernel = image.convolve(kernel)
Map = pie.Map()
Map.addLayer(imageKernel,{'min':0,'max':10000},"imageKernel")
Map.setCenter(120,42,7)
Map
# lowPass
生成低通滤波器。
函数 | 返回值 |
---|---|
lowPass() | Kernel |
# 示例
image=pie.Image("LC08/01/T1/LC08_121031_20181019").select(["B5"])
kernel= pie.Kernel().lowPass()
imageKernel = image.convolve(kernel)
Map = pie.Map()
Map.addLayer(imageKernel,{'min':0,'max':10050},"imageKernel")
Map.setCenter(120,42,7)
Map
# mean
生成均值滤波器。
函数 | 返回值 |
---|---|
mean() | Kernel |
参数 | 类型 | 说明 |
---|---|---|
kSize | Int | 核大小 |
# 示例
image=pie.Image("LC08/01/T1/LC08_121031_20181019").select(["B5"])
kernel= pie.Kernel().mean(3)
imageKernel = image.convolve(kernel)
Map = pie.Map()
Map.addLayer(imageKernel,{'min':0,'max':10000},"imageKernel")
Map.setCenter(120,42,7)
Map
# median
生成中值滤波器。
函数 | 返回值 |
---|---|
median() | Kernel |
参数 | 类型 | 说明 |
---|---|---|
kSize | Int | 核大小 |
# 示例
image=pie.Image("LC08/01/T1/LC08_121031_20181019").select(["B5"])
kernel= pie.Kernel().median(3)
imageKernel = image.convolve(kernel)
Map = pie.Map()
Map.addLayer(imageKernel,{'min':0,'max':10000},"imageKernel")
Map.setCenter(120,42,7)
Map
# sobel
创建生成3×3sobel边缘检测核。
函数 | 返回值 |
---|---|
sobel(magnitude,normalize) | Kernel |
参数 | 类型 | 说明 |
---|---|---|
magnitude | Float | 按此量缩放每个值 |
normalize | Boolean | 归一化内核值总和为1 |
# 示例
image=pie.Image("LC08/01/T1/LC08_121031_20181019").select(["B5"])
kernel= pie.Kernel().sobel(1,1)
imageKernel = image.convolve(kernel)
Map = pie.Map()
Map.addLayer(imageKernel,{'min':0,'max':10500},"imageKernel")
Map.setCenter(120,42,7)
Map
# statsNeighbour
创建统计邻近信息核的过滤器。
函数 | 返回值 |
---|---|
statsNeighbour(magnitude,normalize) | Kernel |
参数 | 类型 | 说明 |
---|---|---|
magnitude | Float | 按此量缩放每个值 |
normalize | Boolean | 归一化内核值总和为1 |
# 示例
image=pie.Image("LC08/01/T1/LC08_121031_20181019").select(["B5"])
kernel= pie.Kernel().statsNeighbour(3.0,1)
imageKernel = image.convolve(kernel)
Map = pie.Map()
Map.addLayer(imageKernel,{'min':0,'max':20500},"imageKernel")
Map.setCenter(120,42,7)
Map
# summary
生成概要滤波器。
函数 | 返回值 |
---|---|
summary() | Kernel |
# 示例
image=pie.Image("LC08/01/T1/LC08_121031_20181019").select(["B5"])
kernel= pie.Kernel().summary()
imageKernel = image.convolve(kernel)
Map = pie.Map()
Map.addLayer(imageKernel,{'min':0,'max':20050},"imageKernel")
Map.setCenter(120,42,7)
Map
# vertical
生成垂直滤波器。
函数 | 返回值 |
---|---|
vertical() | Kernel |
# 示例
image=pie.Image("LC08/01/T1/LC08_121031_20181019").select(["B5"])
kernel= pie.Kernel().vertical()
imageKernel = image.convolve(kernel)
Map = pie.Map()
Map.addLayer(imageKernel,{'min':0,'max':10000},"imageKernel")
Map.setCenter(120,42,7)
Map
有问题,我来改改 (opens new window)
上次更新: 2022/05/25, 07:37:39