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 |
var image = pie.Image("LC08/01/T1/LC08_121031_20181019")
.select(["B5"]);
var kernel= pie.Kernel().fixed(3, 3,
[[1, 0, 0],
[0, 0, 0],
[0, 0, 1]]);
var imageKernel = image.convolve(kernel);
Map.addLayer(imageKernel,{min:0,max:20500});
Map.setCenter(120,42,7);
# horizontal
生成水平滤波器。
函数 | 返回值 |
---|---|
horizontal() | Kernel |
var image = pie.Image("LC08/01/T1/LC08_121031_20181019")
.select(["B5"]);
var kernel= pie.Kernel().horizontal(); //水平滤波
var imageKernel = image.convolve(kernel);
Map.addLayer(imageKernel,{min:0,max:20500});
Map.setCenter(120,42,7);
# laplacian
生成3×3laplacian边缘检测滤波器。
函数 | 返回值 |
---|---|
laplacian() | Kernel |
var image = pie.Image("LC08/01/T1/LC08_121031_20181019")
.select(["B5"]);
var kernel= pie.Kernel().laplacian(); //拉普拉斯滤波
var imageKernel = image.convolve(kernel);
Map.addLayer(imageKernel,{min:0,max:20500});
Map.setCenter(120, 42,7);
# lowPass
生成低通滤波器。
函数 | 返回值 |
---|---|
lowPass() | Kernel |
var image = pie.Image("LC08/01/T1/LC08_121031_20181019")
.select(["B5"]);
var kernel= pie.Kernel().lowPass(); //低通滤波
var imageKernel = image.convolve(kernel);
Map.addLayer(imageKernel,{min:0,max:20500});
Map.setCenter(120,42,7);
# sobel
创建生成3×3sobel边缘检测核。
函数 | 返回值 |
---|---|
sobel(magnitude,normalize) | Kernel |
参数 | 类型 | 说明 |
---|---|---|
magnitude | Float | 按此量缩放每个值 |
normalize | Boolean | 归一化内核值总和为1 |
var image = pie.Image("LC08/01/T1/LC08_121031_20181019")
.select(["B5"]);
var kernel= pie.Kernel().sobel(1,1);
var imageKernel = image.convolve(kernel);
Map.addLayer(imageKernel,{min:0,max:20500});
Map.setCenter(120,42,7);
# statsNeighbour
创建统计邻近信息核的过滤器。
函数 | 返回值 |
---|---|
statsNeighbour(magnitude,normalize) | Kernel |
参数 | 类型 | 说明 |
---|---|---|
magnitude | Float | 按此量缩放每个值 |
normalize | Boolean | 归一化内核值总和为1 |
var image = pie.Image("LC08/01/T1/LC08_121031_20181019")
.select(["B5"]);
var kernel= pie.Kernel().statsNeighbour(3.0,1);
var imageKernel = image.convolve(kernel);
Map.addLayer(imageKernel,{min:0,max:20500});
Map.setCenter(120,42,7);
# summary
生成概要滤波器。
函数 | 返回值 |
---|---|
summary() | Kernel |
var image = pie.Image("LC08/01/T1/LC08_121031_20181019")
.select(["B5"]);
var kernel = pie.Kernel().summary(); //概要滤波
var imageKernel = image.convolve(kernel);
Map.addLayer(imageKernel,{min:0,max:20500});
Map.setCenter(120,42,7);
# vertical
生成垂直滤波器。
函数 | 返回值 |
---|---|
vertical() | Kernel |
var image = pie.Image("LC08/01/T1/LC08_121031_20181019")
.select(["B5"]);
var kernel= pie.Kernel().vertical(); //垂直滤波
var imageKernel = image.convolve(kernel);
Map.addLayer(imageKernel,{min:0,max:20500});
Map.setCenter(120, 42,7);
有问题,我来改改 (opens new window)
上次更新: 2022/05/15, 05:29:22