• 首页 首页 icon
  • 工具库 工具库 icon
    • IP查询 IP查询 icon
  • 内容库 内容库 icon
    • 快讯库 快讯库 icon
    • 精品库 精品库 icon
    • 问答库 问答库 icon
  • 更多 更多 icon
    • 服务条款 服务条款 icon

Google Earth Engine——无人机影像进行分类处理

武飞扬头像
此星光明
帮助1

本次我们是利用无人机影像采集的影像数据,对特征点的一些特征进行提取分析,然后再加载的矢量转化的过程中出现了以下问题,主要是超限,另外还有几个函数可以

ee.Algorithms.Image.Segmentation.seedGrid(size, gridType)
选择用于聚类的种子像素。

参数。
size(整数,默认:5)。
超级像素的种子位置间距,单位是像素。

gridType(字符串,默认为 "方形")。
网格的类型。正方形 "或 "六角形 "之一。

返回。图像

ee.Algorithms.Image.Segmentation.SNIC(image, size, compactness, connectivity, neighborhoodSize, seeds)
基于SNIC(简单非迭代聚类)的超级像素聚类。输出一个群集ID的频段和每个输入频段的每一个群集的平均数。如果没有提供 "种子 "图像作为输入,输出将包括一个包含生成的种子位置的 "种子 "带。见。Achanta, Radhakrishna和Susstrunk, Sabine,"使用简单非迭代聚类的超级像素和多边形",CVPR,2017。

参数。
image(图像)。
用于聚类的输入图像。

size(整数,默认:5)。
超级像素种子位置的间隔,单位是像素。如果提供 "种子 "图像,则不产生网格。

compactness(浮点数,默认为1)。
紧凑度系数。较大的数值会使集群更加紧凑(方形)。将此设置为0会使空间距离加权失效。

connectivity(整数,默认:8)。
连通性。4或8都可以。

neighborhoodSize(整数,默认为空)。
瓦片邻域大小(避免瓦片边界伪影)。默认为2*大小。

seeds(图像,默认为空)。
如果提供,任何非零值的像素都被用作种子位置。相互接触的像素(由 "连通性 "指定)被认为属于同一个集群。

返回。图像

ee.Reducer.countEvery()

Returns a Reducer that computes the number of inputs.

No arguments.

Returns: Reducer

返回一个计算输入数的Reducer。

代码:

  1.  
    var image = ee.Image("users/carloseduardotpa/20220524_120405_70_2420_3B_AnalyticMS_SR_harmonized_clip"),
  2.  
    image2 = ee.Image("users/carloseduardotpa/20220524_123706_08_247a_3B_AnalyticMS_SR_harmonized_clip"),
  3.  
    geometry = /* color: #d63000 */ee.Geometry.Point([-40.54259265059659, -6.016601660731103]),
  4.  
    imageVisParam = {"opacity":1,"bands":["b3","b2","b1"],"min":128.03750796620568,"max":1076.3051816022903,"gamma":1},
  5.  
    imageVisParam3 = {"opacity":1,"bands":["NDVI"],"min":0.6314883263385151,"max":0.7761275808135806,"palette":["ffaf36","e4ff00","e4ff00","3fff00","0d5200"]},
  6.  
    imageVisParam2 = {"opacity":1,"bands":["NDWI"],"palette":["0014ff","0008ff","ffffff","ffffff","ffffff"]},
  7.  
    geometry2 = /* color: #98ff00 */ee.Geometry.Polygon(
  8.  
    [[[-40.734193066483385, -5.88076230086368],
  9.  
    [-40.74655282540109, -5.949061950684604],
  10.  
    [-40.76852572839501, -6.041935853033961],
  11.  
    [-40.73556793142542, -6.069248829219161],
  12.  
    [-40.69608514238394, -6.077783746890778],
  13.  
    [-40.70398003077222, -6.098608282157076],
  14.  
    [-40.7067267731158, -6.201013709903857],
  15.  
    [-40.53643718870099, -6.245383017974462],
  16.  
    [-40.42657275574691, -6.26722502184506],
  17.  
    [-40.40871980972078, -6.186678054545768],
  18.  
    [-40.42468449271024, -6.149813484456435],
  19.  
    [-40.494551398971105, -6.09519462520748],
  20.  
    [-40.506573168915246, -5.967153831615714],
  21.  
    [-40.557036784806705, -5.915596194510558]]]),
  22.  
    caa_arb = /* color: #007727 */ee.FeatureCollection(
  23.  
    [ee.Feature(
  24.  
    ee.Geometry.Point([-40.61472878477397, -5.999477179310845]),
  25.  
    {
  26.  
    "class": 1,
  27.  
    "system:index": "0"
  28.  
    }),
  29.  
    ee.Feature(
  30.  
    ee.Geometry.Point([-40.593743181441454, -6.000202743765224]),
  31.  
    {
  32.  
    "class": 1,
  33.  
    "system:index": "1"
  34.  
    }),
  35.  
    ee.Feature(
  36.  
    ee.Geometry.Point([-40.60811982176128, -6.000373464672966]),
  37.  
    {
  38.  
    "class": 1,
  39.  
    "system:index": "2"
  40.  
    }),
  41.  
    ee.Feature(
  42.  
    ee.Geometry.Point([-40.577190098673604, -6.001875373780318]),
  43.  
    {
  44.  
    "class": 1,
  45.  
    "system:index": "3"
  46.  
    }),
  47.  
    ee.Feature(
  48.  
    ee.Geometry.Point([-40.58461445322683, -6.0072658374835015]),
  49.  
    {
  50.  
    "class": 1,
  51.  
    "system:index": "4"
  52.  
    }),
  53.  
    ee.Feature(
  54.  
    ee.Geometry.Point([-40.55150596948877, -6.01029978014366]),
  55.  
    {
  56.  
    "class": 1,
  57.  
    "system:index": "5"
  58.  
    }),
  59.  
    ee.Feature(
  60.  
    ee.Geometry.Point([-40.55034725519434, -6.00769632793069]),
  61.  
    {
  62.  
    "class": 1,
  63.  
    "system:index": "6"
  64.  
    }),
  65.  
    ee.Feature(
  66.  
    ee.Geometry.Point([-40.544467853033694, -6.006928093751045]),
  67.  
    {
  68.  
    "class": 1,
  69.  
    "system:index": "7"
  70.  
    }),
  71.  
    ee.Feature(
  72.  
    ee.Geometry.Point([-40.54154960962549, -6.0032303532113795]),
  73.  
    {
  74.  
    "class": 1,
  75.  
    "system:index": "8"
  76.  
    }),
  77.  
    ee.Feature(
  78.  
    ee.Geometry.Point([-40.56099831199146, -5.995566946720059]),
  79.  
    {
  80.  
    "class": 1,
  81.  
    "system:index": "9"
  82.  
    }),
  83.  
    ee.Feature(
  84.  
    ee.Geometry.Point([-40.569655926048405, -5.987183934104295]),
  85.  
    {
  86.  
    "class": 1,
  87.  
    "system:index": "10"
  88.  
    }),
  89.  
    ee.Feature(
  90.  
    ee.Geometry.Point([-40.58163888245139, -5.982012631158508]),
  91.  
    {
  92.  
    "class": 1,
  93.  
    "system:index": "11"
  94.  
    }),
  95.  
    ee.Feature(
  96.  
    ee.Geometry.Point([-40.5962300994924, -5.981329724241203]),
  97.  
    {
  98.  
    "class": 1,
  99.  
    "system:index": "12"
  100.  
    }),
  101.  
    ee.Feature(
  102.  
    ee.Geometry.Point([-40.594743753807954, -5.978198419467451]),
  103.  
    {
  104.  
    "class": 1,
  105.  
    "system:index": "13"
  106.  
    }),
  107.  
    ee.Feature(
  108.  
    ee.Geometry.Point([-40.558571907061, -5.972833484321754]),
  109.  
    {
  110.  
    "class": 1,
  111.  
    "system:index": "14"
  112.  
    }),
  113.  
    ee.Feature(
  114.  
    ee.Geometry.Point([-40.562747854044915, -5.979799814659621]),
  115.  
    {
  116.  
    "class": 1,
  117.  
    "system:index": "15"
  118.  
    }),
  119.  
    ee.Feature(
  120.  
    ee.Geometry.Point([-40.55548757574285, -5.982676242602119]),
  121.  
    {
  122.  
    "class": 1,
  123.  
    "system:index": "16"
  124.  
    }),
  125.  
    ee.Feature(
  126.  
    ee.Geometry.Point([-40.539282822268035, -5.987507044661501]),
  127.  
    {
  128.  
    "class": 1,
  129.  
    "system:index": "17"
  130.  
    }),
  131.  
    ee.Feature(
  132.  
    ee.Geometry.Point([-40.52296993660863, -6.013106640673962]),
  133.  
    {
  134.  
    "class": 1,
  135.  
    "system:index": "18"
  136.  
    }),
  137.  
    ee.Feature(
  138.  
    ee.Geometry.Point([-40.52657482552465, -6.014130941042587]),
  139.  
    {
  140.  
    "class": 1,
  141.  
    "system:index": "19"
  142.  
    }),
  143.  
    ee.Feature(
  144.  
    ee.Geometry.Point([-40.513791741604955, -6.000380384356329]),
  145.  
    {
  146.  
    "class": 1,
  147.  
    "system:index": "20"
  148.  
    }),
  149.  
    ee.Feature(
  150.  
    ee.Geometry.Point([-40.50655334808754, -5.990581624070123]),
  151.  
    {
  152.  
    "class": 1,
  153.  
    "system:index": "21"
  154.  
    }),
  155.  
    ee.Feature(
  156.  
    ee.Geometry.Point([-40.52696833509857, -5.985594671183795]),
  157.  
    {
  158.  
    "class": 1,
  159.  
    "system:index": "22"
  160.  
    }),
  161.  
    ee.Feature(
  162.  
    ee.Geometry.Point([-40.5382857486324, -5.97151929875015]),
  163.  
    {
  164.  
    "class": 1,
  165.  
    "system:index": "23"
  166.  
    }),
  167.  
    ee.Feature(
  168.  
    ee.Geometry.Point([-40.53597624830496, -5.972502083379403]),
  169.  
    {
  170.  
    "class": 1,
  171.  
    "system:index": "24"
  172.  
    }),
  173.  
    ee.Feature(
  174.  
    ee.Geometry.Point([-40.5429714494158, -5.961746013654573]),
  175.  
    {
  176.  
    "class": 1,
  177.  
    "system:index": "25"
  178.  
    }),
  179.  
    ee.Feature(
  180.  
    ee.Geometry.Point([-40.57045216596371, -5.962153475508229]),
  181.  
    {
  182.  
    "class": 1,
  183.  
    "system:index": "26"
  184.  
    }),
  185.  
    ee.Feature(
  186.  
    ee.Geometry.Point([-40.57357344827358, -5.948277811806232]),
  187.  
    {
  188.  
    "class": 1,
  189.  
    "system:index": "27"
  190.  
    }),
  191.  
    ee.Feature(
  192.  
    ee.Geometry.Point([-40.59519031448845, -5.9552281472769035]),
  193.  
    {
  194.  
    "class": 1,
  195.  
    "system:index": "28"
  196.  
    }),
  197.  
    ee.Feature(
  198.  
    ee.Geometry.Point([-40.59467533035759, -5.951600017243889]),
  199.  
    {
  200.  
    "class": 1,
  201.  
    "system:index": "29"
  202.  
    }),
  203.  
    ee.Feature(
  204.  
    ee.Geometry.Point([-40.611278222786375, -5.948883380657802]),
  205.  
    {
  206.  
    "class": 1,
  207.  
    "system:index": "30"
  208.  
    }),
  209.  
    ee.Feature(
  210.  
    ee.Geometry.Point([-40.620004606531914, -5.940290626698926]),
  211.  
    {
  212.  
    "class": 1,
  213.  
    "system:index": "31"
  214.  
    }),
  215.  
    ee.Feature(
  216.  
    ee.Geometry.Point([-40.62893099813348, -5.9381136924372555]),
  217.  
    {
  218.  
    "class": 1,
  219.  
    "system:index": "32"
  220.  
    }),
  221.  
    ee.Feature(
  222.  
    ee.Geometry.Point([-40.643802767922345, -5.934406499158915]),
  223.  
    {
  224.  
    "class": 1,
  225.  
    "system:index": "33"
  226.  
    }),
  227.  
    ee.Feature(
  228.  
    ee.Geometry.Point([-40.63875415034747, -5.924111561319655]),
  229.  
    {
  230.  
    "class": 1,
  231.  
    "system:index": "34"
  232.  
    }),
  233.  
    ee.Feature(
  234.  
    ee.Geometry.Point([-40.62173635970382, -5.913982454402268]),
  235.  
    {
  236.  
    "class": 1,
  237.  
    "system:index": "35"
  238.  
    }),
  239.  
    ee.Feature(
  240.  
    ee.Geometry.Point([-40.61555050355231, -5.927437751477383]),
  241.  
    {
  242.  
    "class": 1,
  243.  
    "system:index": "36"
  244.  
    }),
  245.  
    ee.Feature(
  246.  
    ee.Geometry.Point([-40.63903570504281, -5.9452794312102615]),
  247.  
    {
  248.  
    "class": 1,
  249.  
    "system:index": "37"
  250.  
    }),
  251.  
    ee.Feature(
  252.  
    ee.Geometry.Point([-40.657014335166714, -5.940980368040971]),
  253.  
    {
  254.  
    "class": 1,
  255.  
    "system:index": "38"
  256.  
    }),
  257.  
    ee.Feature(
  258.  
    ee.Geometry.Point([-40.66791483260324, -5.943029236917424]),
  259.  
    {
  260.  
    "class": 1,
  261.  
    "system:index": "39"
  262.  
    }),
  263.  
    ee.Feature(
  264.  
    ee.Geometry.Point([-40.65795382499389, -5.948893149771122]),
  265.  
    {
  266.  
    "class": 1,
  267.  
    "system:index": "40"
  268.  
    }),
  269.  
    ee.Feature(
  270.  
    ee.Geometry.Point([-40.6871645160036, -5.964980567695203]),
  271.  
    {
  272.  
    "class": 1,
  273.  
    "system:index": "41"
  274.  
    }),
  275.  
    ee.Feature(
  276.  
    ee.Geometry.Point([-40.6941168017702, -5.965450080310566]),
  277.  
    {
  278.  
    "class": 1,
  279.  
    "system:index": "42"
  280.  
    }),
  281.  
    ee.Feature(
  282.  
    ee.Geometry.Point([-40.68865082772158, -5.984318822002688]),
  283.  
    {
  284.  
    "class": 1,
  285.  
    "system:index": "43"
  286.  
    }),
  287.  
    ee.Feature(
  288.  
    ee.Geometry.Point([-40.67550660091188, -5.993237668573697]),
  289.  
    {
  290.  
    "class": 1,
  291.  
    "system:index": "44"
  292.  
    }),
  293.  
    ee.Feature(
  294.  
    ee.Geometry.Point([-40.605201674393065, -6.155015332827855]),
  295.  
    {
  296.  
    "class": 1,
  297.  
    "system:index": "45"
  298.  
    }),
  299.  
    ee.Feature(
  300.  
    ee.Geometry.Point([-40.58935895610669, -6.155071070739989]),
  301.  
    {
  302.  
    "class": 1,
  303.  
    "system:index": "46"
  304.  
    }),
  305.  
    ee.Feature(
  306.  
    ee.Geometry.Point([-40.61301463744657, -6.145305292893435]),
  307.  
    {
  308.  
    "class": 1,
  309.  
    "system:index": "47"
  310.  
    }),
  311.  
    ee.Feature(
  312.  
    ee.Geometry.Point([-40.597917208382015, -6.1628019903175995]),
  313.  
    {
  314.  
    "class": 1,
  315.  
    "system:index": "48"
  316.  
    }),
  317.  
    ee.Feature(
  318.  
    ee.Geometry.Point([-40.57569778324729, -6.160751668321601]),
  319.  
    {
  320.  
    "class": 1,
  321.  
    "system:index": "49"
  322.  
    }),
  323.  
    ee.Feature(
  324.  
    ee.Geometry.Point([-40.56886661247233, -6.164686021914153]),
  325.  
    {
  326.  
    "class": 1,
  327.  
    "system:index": "50"
  328.  
    }),
  329.  
    ee.Feature(
  330.  
    ee.Geometry.Point([-40.5530347140701, -6.152084547966948]),
  331.  
    {
  332.  
    "class": 1,
  333.  
    "system:index": "51"
  334.  
    }),
  335.  
    ee.Feature(
  336.  
    ee.Geometry.Point([-40.55778117296199, -6.151352118604018]),
  337.  
    {
  338.  
    "class": 1,
  339.  
    "system:index": "52"
  340.  
    }),
  341.  
    ee.Feature(
  342.  
    ee.Geometry.Point([-40.54073221839268, -6.13300095557247]),
  343.  
    {
  344.  
    "class": 1,
  345.  
    "system:index": "53"
  346.  
    }),
  347.  
    ee.Feature(
  348.  
    ee.Geometry.Point([-40.54900931191731, -6.134071220472289]),
  349.  
    {
  350.  
    "class": 1,
  351.  
    "system:index": "54"
  352.  
    }),
  353.  
    ee.Feature(
  354.  
    ee.Geometry.Point([-40.56499703183946, -6.136010377476307]),
  355.  
    {
  356.  
    "class": 1,
  357.  
    "system:index": "55"
  358.  
    }),
  359.  
    ee.Feature(
  360.  
    ee.Geometry.Point([-40.52958469735488, -6.152986867381293]),
  361.  
    {
  362.  
    "class": 1,
  363.  
    "system:index": "56"
  364.  
    }),
  365.  
    ee.Feature(
  366.  
    ee.Geometry.Point([-40.52874044203274, -6.158260665183752]),
  367.  
    {
  368.  
    "class": 1,
  369.  
    "system:index": "57"
  370.  
    }),
  371.  
    ee.Feature(
  372.  
    ee.Geometry.Point([-40.53038111923358, -6.160965118181293]),
  373.  
    {
  374.  
    "class": 1,
  375.  
    "system:index": "58"
  376.  
    }),
  377.  
    ee.Feature(
  378.  
    ee.Geometry.Point([-40.5525953354724, -6.154916357750047]),
  379.  
    {
  380.  
    "class": 1,
  381.  
    "system:index": "59"
  382.  
    }),
  383.  
    ee.Feature(
  384.  
    ee.Geometry.Point([-40.54672334487697, -6.171550158702447]),
  385.  
    {
  386.  
    "class": 1,
  387.  
    "system:index": "60"
  388.  
    }),
  389.  
    ee.Feature(
  390.  
    ee.Geometry.Point([-40.526496899290755, -6.172037534788285]),
  391.  
    {
  392.  
    "class": 1,
  393.  
    "system:index": "61"
  394.  
    })]),
  395.  
    mata_ciliar = /* color: #a3ff00 */ee.FeatureCollection(
  396.  
    [ee.Feature(
  397.  
    ee.Geometry.Point([-40.584654259767525, -6.04465190072895]),
  398.  
    {
  399.  
    "class": 2,
  400.  
    "system:index": "0"
  401.  
    }),
  402.  
    ee.Feature(
  403.  
    ee.Geometry.Point([-40.577444481935494, -6.047212499104433]),
  404.  
    {
  405.  
    "class": 2,
  406.  
    "system:index": "1"
  407.  
    }),
  408.  
    ee.Feature(
  409.  
    ee.Geometry.Point([-40.58984701642036, -6.050029143315277]),
  410.  
    {
  411.  
    "class": 2,
  412.  
    "system:index": "2"
  413.  
    }),
  414.  
    ee.Feature(
  415.  
    ee.Geometry.Point([-40.599249832345414, -6.036520567038078]),
  416.  
    {
  417.  
    "class": 2,
  418.  
    "system:index": "3"
  419.  
    }),
  420.  
    ee.Feature(
  421.  
    ee.Geometry.Point([-40.60734290248241, -6.03432332756454]),
  422.  
    {
  423.  
    "class": 2,
  424.  
    "system:index": "4"
  425.  
    }),
  426.  
    ee.Feature(
  427.  
    ee.Geometry.Point([-40.62531274309408, -6.030671928934875]),
  428.  
    {
  429.  
    "class": 2,
  430.  
    "system:index": "5"
  431.  
    }),
  432.  
    ee.Feature(
  433.  
    ee.Geometry.Point([-40.630848822500816, -6.031482807326099]),
  434.  
    {
  435.  
    "class": 2,
  436.  
    "system:index": "6"
  437.  
    }),
  438.  
    ee.Feature(
  439.  
    ee.Geometry.Point([-40.63166421404134, -6.034427566021885]),
  440.  
    {
  441.  
    "class": 2,
  442.  
    "system:index": "7"
  443.  
    }),
  444.  
    ee.Feature(
  445.  
    ee.Geometry.Point([-40.619526024168955, -6.021222462769743]),
  446.  
    {
  447.  
    "class": 2,
  448.  
    "system:index": "8"
  449.  
    }),
  450.  
    ee.Feature(
  451.  
    ee.Geometry.Point([-40.72808609360753, -5.908257251095358]),
  452.  
    {
  453.  
    "class": 2,
  454.  
    "system:index": "9"
  455.  
    })]),
  456.  
    estrada = /* color: #7f7f7f */ee.FeatureCollection(
  457.  
    [ee.Feature(
  458.  
    ee.Geometry.Point([-40.738776469671876, -5.931005189311238]),
  459.  
    {
  460.  
    "class": 3,
  461.  
    "system:index": "0"
  462.  
    }),
  463.  
    ee.Feature(
  464.  
    ee.Geometry.Point([-40.74067173094256, -5.937474503952196]),
  465.  
    {
  466.  
    "class": 3,
  467.  
    "system:index": "1"
  468.  
    }),
  469.  
    ee.Feature(
  470.  
    ee.Geometry.Point([-40.743232662801056, -5.94374429648246]),
  471.  
    {
  472.  
    "class": 3,
  473.  
    "system:index": "2"
  474.  
    }),
  475.  
    ee.Feature(
  476.  
    ee.Geometry.Point([-40.74460595381668, -5.950445743102636]),
  477.  
    {
  478.  
    "class": 3,
  479.  
    "system:index": "3"
  480.  
    }),
  481.  
    ee.Feature(
  482.  
    ee.Geometry.Point([-40.74346557703663, -5.954910080887217]),
  483.  
    {
  484.  
    "class": 3,
  485.  
    "system:index": "4"
  486.  
    }),
  487.  
    ee.Feature(
  488.  
    ee.Geometry.Point([-40.73943420444502, -5.970151132477453]),
  489.  
    {
  490.  
    "class": 3,
  491.  
    "system:index": "5"
  492.  
    }),
  493.  
    ee.Feature(
  494.  
    ee.Geometry.Point([-40.73834337746799, -5.980823701691958]),
  495.  
    {
  496.  
    "class": 3,
  497.  
    "system:index": "6"
  498.  
    }),
  499.  
    ee.Feature(
  500.  
    ee.Geometry.Point([-40.73740070425976, -5.988022344994524]),
  501.  
    {
  502.  
    "class": 3,
  503.  
    "system:index": "7"
  504.  
    }),
  505.  
    ee.Feature(
  506.  
    ee.Geometry.Point([-40.73508303241837, -5.998362520472057]),
  507.  
    {
  508.  
    "class": 3,
  509.  
    "system:index": "8"
  510.  
    }),
  511.  
    ee.Feature(
  512.  
    ee.Geometry.Point([-40.72993720448144, -6.003987311574017]),
  513.  
    {
  514.  
    "class": 3,
  515.  
    "system:index": "9"
  516.  
    }),
  517.  
    ee.Feature(
  518.  
    ee.Geometry.Point([-40.72959388172753, -6.0108160587113]),
  519.  
    {
  520.  
    "class": 3,
  521.  
    "system:index": "10"
  522.  
    }),
  523.  
    ee.Feature(
  524.  
    ee.Geometry.Point([-40.72083915150292, -5.9995485800255715]),
  525.  
    {
  526.  
    "class": 3,
  527.  
    "system:index": "11"
  528.  
    }),
  529.  
    ee.Feature(
  530.  
    ee.Geometry.Point([-40.69775364326642, -5.997282678653309]),
  531.  
    {
  532.  
    "class": 3,
  533.  
    "system:index": "12"
  534.  
    }),
  535.  
    ee.Feature(
  536.  
    ee.Geometry.Point([-40.663232012537286, -5.989981337911669]),
  537.  
    {
  538.  
    "class": 3,
  539.  
    "system:index": "13"
  540.  
    }),
  541.  
    ee.Feature(
  542.  
    ee.Geometry.Point([-40.66889683797674, -5.9935665329312995]),
  543.  
    {
  544.  
    "class": 3,
  545.  
    "system:index": "14"
  546.  
    }),
  547.  
    ee.Feature(
  548.  
    ee.Geometry.Point([-40.67735116079168, -5.996468816411097]),
  549.  
    {
  550.  
    "class": 3,
  551.  
    "system:index": "15"
  552.  
    }),
  553.  
    ee.Feature(
  554.  
    ee.Geometry.Point([-40.647618179900185, -5.988640678376411]),
  555.  
    {
  556.  
    "class": 3,
  557.  
    "system:index": "16"
  558.  
    }),
  559.  
    ee.Feature(
  560.  
    ee.Geometry.Point([-40.64012257034011, -5.9956230547416]),
  561.  
    {
  562.  
    "class": 3,
  563.  
    "system:index": "17"
  564.  
    }),
  565.  
    ee.Feature(
  566.  
    ee.Geometry.Point([-40.61840740615554, -5.988239262367536]),
  567.  
    {
  568.  
    "class": 3,
  569.  
    "system:index": "18"
  570.  
    }),
  571.  
    ee.Feature(
  572.  
    ee.Geometry.Point([-40.63394725440646, -6.007377867896078]),
  573.  
    {
  574.  
    "class": 3,
  575.  
    "system:index": "19"
  576.  
    }),
  577.  
    ee.Feature(
  578.  
    ee.Geometry.Point([-40.690975186055546, -6.159311596077813]),
  579.  
    {
  580.  
    "class": 3,
  581.  
    "system:index": "20"
  582.  
    }),
  583.  
    ee.Feature(
  584.  
    ee.Geometry.Point([-40.694494244283085, -6.172197058274691]),
  585.  
    {
  586.  
    "class": 3,
  587.  
    "system:index": "21"
  588.  
    }),
  589.  
    ee.Feature(
  590.  
    ee.Geometry.Point([-40.693142830566835, -6.135375016533586]),
  591.  
    {
  592.  
    "class": 3,
  593.  
    "system:index": "22"
  594.  
    }),
  595.  
    ee.Feature(
  596.  
    ee.Geometry.Point([-40.68571223317025, -6.110495424119384]),
  597.  
    {
  598.  
    "class": 3,
  599.  
    "system:index": "23"
  600.  
    })]),
  601.  
    caa_narb = /* color: #99c23f */ee.FeatureCollection(
  602.  
    [ee.Feature(
  603.  
    ee.Geometry.Point([-40.677721834963634, -6.105904797496201]),
  604.  
    {
  605.  
    "class": 4,
  606.  
    "system:index": "0"
  607.  
    }),
  608.  
    ee.Feature(
  609.  
    ee.Geometry.Point([-40.68276207198586, -6.107489442787329]),
  610.  
    {
  611.  
    "class": 4,
  612.  
    "system:index": "1"
  613.  
    }),
  614.  
    ee.Feature(
  615.  
    ee.Geometry.Point([-40.673993924984906, -6.106720501474657]),
  616.  
    {
  617.  
    "class": 4,
  618.  
    "system:index": "2"
  619.  
    }),
  620.  
    ee.Feature(
  621.  
    ee.Geometry.Point([-40.66525565439147, -6.105755330674494]),
  622.  
    {
  623.  
    "class": 4,
  624.  
    "system:index": "3"
  625.  
    }),
  626.  
    ee.Feature(
  627.  
    ee.Geometry.Point([-40.66588778294663, -6.10097821531835]),
  628.  
    {
  629.  
    "class": 4,
  630.  
    "system:index": "4"
  631.  
    }),
  632.  
    ee.Feature(
  633.  
    ee.Geometry.Point([-40.64697283912891, -6.093843782995205]),
  634.  
    {
  635.  
    "class": 4,
  636.  
    "system:index": "5"
  637.  
    }),
  638.  
    ee.Feature(
  639.  
    ee.Geometry.Point([-40.63853475465266, -6.087038711992771]),
  640.  
    {
  641.  
    "class": 4,
  642.  
    "system:index": "6"
  643.  
    }),
  644.  
    ee.Feature(
  645.  
    ee.Geometry.Point([-40.65625205195235, -6.0757298785103195]),
  646.  
    {
  647.  
    "class": 4,
  648.  
    "system:index": "7"
  649.  
    }),
  650.  
    ee.Feature(
  651.  
    ee.Geometry.Point([-40.656638290050495, -6.073766857910057]),
  652.  
    {
  653.  
    "class": 4,
  654.  
    "system:index": "8"
  655.  
    }),
  656.  
    ee.Feature(
  657.  
    ee.Geometry.Point([-40.69581055988175, -6.087816729053837]),
  658.  
    {
  659.  
    "class": 4,
  660.  
    "system:index": "9"
  661.  
    }),
  662.  
    ee.Feature(
  663.  
    ee.Geometry.Point([-40.670016258802036, -6.103730555961079]),
  664.  
    {
  665.  
    "class": 4,
  666.  
    "system:index": "10"
  667.  
    }),
  668.  
    ee.Feature(
  669.  
    ee.Geometry.Point([-40.67178666360218, -6.108033188765104]),
  670.  
    {
  671.  
    "class": 4,
  672.  
    "system:index": "11"
  673.  
    }),
  674.  
    ee.Feature(
  675.  
    ee.Geometry.Point([-40.66481864067174, -6.110067353218701]),
  676.  
    {
  677.  
    "class": 4,
  678.  
    "system:index": "12"
  679.  
    }),
  680.  
    ee.Feature(
  681.  
    ee.Geometry.Point([-40.65786771283369, -6.10914774608051]),
  682.  
    {
  683.  
    "class": 4,
  684.  
    "system:index": "13"
  685.  
    }),
  686.  
    ee.Feature(
  687.  
    ee.Geometry.Point([-40.63110697890369, -6.10318101958551]),
  688.  
    {
  689.  
    "class": 4,
  690.  
    "system:index": "14"
  691.  
    }),
  692.  
    ee.Feature(
  693.  
    ee.Geometry.Point([-40.619533092633255, -6.09774083526971]),
  694.  
    {
  695.  
    "class": 4,
  696.  
    "system:index": "15"
  697.  
    }),
  698.  
    ee.Feature(
  699.  
    ee.Geometry.Point([-40.61976742126547, -6.093608574824873]),
  700.  
    {
  701.  
    "class": 4,
  702.  
    "system:index": "16"
  703.  
    }),
  704.  
    ee.Feature(
  705.  
    ee.Geometry.Point([-40.61107966069137, -6.083863835381248]),
  706.  
    {
  707.  
    "class": 4,
  708.  
    "system:index": "17"
  709.  
    }),
  710.  
    ee.Feature(
  711.  
    ee.Geometry.Point([-40.608150278098506, -6.077634741608891]),
  712.  
    {
  713.  
    "class": 4,
  714.  
    "system:index": "18"
  715.  
    }),
  716.  
    ee.Feature(
  717.  
    ee.Geometry.Point([-40.622349773770324, -6.077109793369719]),
  718.  
    {
  719.  
    "class": 4,
  720.  
    "system:index": "19"
  721.  
    }),
  722.  
    ee.Feature(
  723.  
    ee.Geometry.Point([-40.62952530678497, -6.074837167193002]),
  724.  
    {
  725.  
    "class": 4,
  726.  
    "system:index": "20"
  727.  
    }),
  728.  
    ee.Feature(
  729.  
    ee.Geometry.Point([-40.64221356466414, -6.0325723432037055]),
  730.  
    {
  731.  
    "class": 4,
  732.  
    "system:index": "21"
  733.  
    }),
  734.  
    ee.Feature(
  735.  
    ee.Geometry.Point([-40.628079640957445, -6.004731107426568]),
  736.  
    {
  737.  
    "class": 4,
  738.  
    "system:index": "22"
  739.  
    }),
  740.  
    ee.Feature(
  741.  
    ee.Geometry.Point([-40.63027444394244, -5.9939057701203176]),
  742.  
    {
  743.  
    "class": 4,
  744.  
    "system:index": "23"
  745.  
    }),
  746.  
    ee.Feature(
  747.  
    ee.Geometry.Point([-40.622613109612374, -5.985162643862548]),
  748.  
    {
  749.  
    "class": 4,
  750.  
    "system:index": "24"
  751.  
    }),
  752.  
    ee.Feature(
  753.  
    ee.Geometry.Point([-40.659973201387636, -5.993286702601335]),
  754.  
    {
  755.  
    "class": 4,
  756.  
    "system:index": "25"
  757.  
    }),
  758.  
    ee.Feature(
  759.  
    ee.Geometry.Point([-40.67662478565886, -5.984669555134509]),
  760.  
    {
  761.  
    "class": 4,
  762.  
    "system:index": "26"
  763.  
    }),
  764.  
    ee.Feature(
  765.  
    ee.Geometry.Point([-40.697375971572264, -5.988212103854728]),
  766.  
    {
  767.  
    "class": 4,
  768.  
    "system:index": "27"
  769.  
    })]),
  770.  
    Solo_expost = /* color: #ffcfd2 */ee.FeatureCollection(
  771.  
    [ee.Feature(
  772.  
    ee.Geometry.Point([-40.63058065732151, -6.0672033863063675]),
  773.  
    {
  774.  
    "class": 5,
  775.  
    "system:index": "0"
  776.  
    }),
  777.  
    ee.Feature(
  778.  
    ee.Geometry.Point([-40.62577413876682, -6.0691664308253825]),
  779.  
    {
  780.  
    "class": 5,
  781.  
    "system:index": "1"
  782.  
    }),
  783.  
    ee.Feature(
  784.  
    ee.Geometry.Point([-40.61441859064429, -6.075988309029962]),
  785.  
    {
  786.  
    "class": 5,
  787.  
    "system:index": "2"
  788.  
    }),
  789.  
    ee.Feature(
  790.  
    ee.Geometry.Point([-40.587112034395204, -6.06553775512769]),
  791.  
    {
  792.  
    "class": 5,
  793.  
    "system:index": "3"
  794.  
    }),
  795.  
    ee.Feature(
  796.  
    ee.Geometry.Point([-40.5489595590289, -6.051752653631657]),
  797.  
    {
  798.  
    "class": 5,
  799.  
    "system:index": "4"
  800.  
    }),
  801.  
    ee.Feature(
  802.  
    ee.Geometry.Point([-40.58689179536657, -6.013346549938661]),
  803.  
    {
  804.  
    "class": 5,
  805.  
    "system:index": "5"
  806.  
    }),
  807.  
    ee.Feature(
  808.  
    ee.Geometry.Point([-40.578480387895866, -6.0032741647299614]),
  809.  
    {
  810.  
    "class": 5,
  811.  
    "system:index": "6"
  812.  
    }),
  813.  
    ee.Feature(
  814.  
    ee.Geometry.Point([-40.5709886399716, -5.992601658961506]),
  815.  
    {
  816.  
    "class": 5,
  817.  
    "system:index": "7"
  818.  
    }),
  819.  
    ee.Feature(
  820.  
    ee.Geometry.Point([-40.571932777544845, -5.996101475665525]),
  821.  
    {
  822.  
    "class": 5,
  823.  
    "system:index": "8"
  824.  
    }),
  825.  
    ee.Feature(
  826.  
    ee.Geometry.Point([-40.58449638405155, -5.9885072640404475]),
  827.  
    {
  828.  
    "class": 5,
  829.  
    "system:index": "9"
  830.  
    }),
  831.  
    ee.Feature(
  832.  
    ee.Geometry.Point([-40.57922560317252, -5.985313878866977]),
  833.  
    {
  834.  
    "class": 5,
  835.  
    "system:index": "10"
  836.  
    }),
  837.  
    ee.Feature(
  838.  
    ee.Geometry.Point([-40.522105140765795, -5.980571482965502]),
  839.  
    {
  840.  
    "class": 5,
  841.  
    "system:index": "11"
  842.  
    }),
  843.  
    ee.Feature(
  844.  
    ee.Geometry.Point([-40.512148780902514, -5.980998300480549]),
  845.  
    {
  846.  
    "class": 5,
  847.  
    "system:index": "12"
  848.  
    }),
  849.  
    ee.Feature(
  850.  
    ee.Geometry.Point([-40.61170588559919, -5.944094657456611]),
  851.  
    {
  852.  
    "class": 5,
  853.  
    "system:index": "13"
  854.  
    }),
  855.  
    ee.Feature(
  856.  
    ee.Geometry.Point([-40.67304725623989, -5.976807689237552]),
  857.  
    {
  858.  
    "class": 5,
  859.  
    "system:index": "14"
  860.  
    }),
  861.  
    ee.Feature(
  862.  
    ee.Geometry.Point([-40.6777679441061, -5.972795560724939]),
  863.  
    {
  864.  
    "class": 5,
  865.  
    "system:index": "15"
  866.  
    }),
  867.  
    ee.Feature(
  868.  
    ee.Geometry.Point([-40.65086540264994, -5.9805439190284435]),
  869.  
    {
  870.  
    "class": 5,
  871.  
    "system:index": "16"
  872.  
    }),
  873.  
    ee.Feature(
  874.  
    ee.Geometry.Point([-40.56635997488986, -6.084730165293431]),
  875.  
    {
  876.  
    "class": 5,
  877.  
    "system:index": "17"
  878.  
    }),
  879.  
    ee.Feature(
  880.  
    ee.Geometry.Point([-40.58528319154404, -6.077164290059906]),
  881.  
    {
  882.  
    "class": 5,
  883.  
    "system:index": "18"
  884.  
    }),
  885.  
    ee.Feature(
  886.  
    ee.Geometry.Point([-40.663569843017775, -6.086256272565045]),
  887.  
    {
  888.  
    "class": 5,
  889.  
    "system:index": "19"
  890.  
    }),
  891.  
    ee.Feature(
  892.  
    ee.Geometry.Point([-40.685218495803994, -6.0982900500198545]),
  893.  
    {
  894.  
    "class": 5,
  895.  
    "system:index": "20"
  896.  
    }),
  897.  
    ee.Feature(
  898.  
    ee.Geometry.Point([-40.65347817723243, -6.116093842435042]),
  899.  
    {
  900.  
    "class": 5,
  901.  
    "system:index": "21"
  902.  
    }),
  903.  
    ee.Feature(
  904.  
    ee.Geometry.Point([-40.629520341834564, -6.1561493068238615]),
  905.  
    {
  906.  
    "class": 5,
  907.  
    "system:index": "22"
  908.  
    }),
  909.  
    ee.Feature(
  910.  
    ee.Geometry.Point([-40.63312523075058, -6.157344005716098]),
  911.  
    {
  912.  
    "class": 5,
  913.  
    "system:index": "23"
  914.  
    }),
  915.  
    ee.Feature(
  916.  
    ee.Geometry.Point([-40.67839320701393, -6.159765697845539]),
  917.  
    {
  918.  
    "class": 5,
  919.  
    "system:index": "24"
  920.  
    }),
  921.  
    ee.Feature(
  922.  
    ee.Geometry.Point([-40.70171202525059, -6.141569805397965]),
  923.  
    {
  924.  
    "class": 5,
  925.  
    "system:index": "25"
  926.  
    })]);
  927.  
    Map.setCenter(-40.54259265059659,-6.016601660731103,14);
  928.  
    var amostras = caa_arb.merge(mata_ciliar).merge(estrada).merge(caa_narb).merge(Solo_expost);
  929.  
    var planetscope = ee.ImageCollection([image, image2]).mosaic();
  930.  
    var planetscope = planetscope.clip(geometry2);
  931.  
     
  932.  
    var trueColorVis = {
  933.  
    min: 0.0,
  934.  
    max: 2000.0,
  935.  
    bands:"b3,b2,b1"
  936.  
    };
  937.  
    Map.addLayer(planetscope, trueColorVis, 'True Color');
  938.  
    Map.addLayer(geometry2, {}, 'AOI');
  939.  
     
  940.  
    //1red
  941.  
    //2green
  942.  
    //3blue
  943.  
    //4nir
  944.  
     
  945.  
    var ndvi = planetscope.normalizedDifference(['b4','b1']).rename('NDVI');
  946.  
    var nwvi = planetscope.normalizedDifference(['b4','b2']).rename('NDWI');
  947.  
     
  948.  
    var planetscope = planetscope.addBands(ndvi);
  949.  
    var planetscope = planetscope.addBands(nwvi);
  950.  
     
  951.  
    var square = ee.Kernel.square({radius: 4});
  952.  
    var entropy = planetscope.select('b4').toByte().entropy(square);
  953.  
    var glcm = planetscope.select('b4').toByte().glcmTexture({size: 4});
  954.  
    var contrast = glcm.select('b4_contrast');
  955.  
    var asm = glcm.select('b4_asm');
  956.  
     
  957.  
    var img_planetscope = planetscope.float().divide(10000);
  958.  
     
  959.  
    // 分割 -----------------------------------------------------------------------------
  960.  
     
  961.  
    var seeds = ee.Algorithms.Image.Segmentation.seedGrid(10);
  962.  
    var snic = ee.Algorithms.Image.Segmentation.SNIC({
  963.  
    image: img_planetscope,
  964.  
    compactness: 0,
  965.  
    connectivity: 8,
  966.  
    neighborhoodSize: 64,
  967.  
    size: 2,
  968.  
    seeds: seeds
  969.  
    });
  970.  
     
  971.  
    var clusters_snic = snic.select("clusters")
  972.  
     
  973.  
    var vectors = clusters_snic.reduceToVectors({
  974.  
    geometryType: 'polygon',
  975.  
    reducer: ee.Reducer.countEvery(),
  976.  
    scale: 10,
  977.  
    maxPixels: 1e13,
  978.  
    geometry: geometry2,
  979.  
    bestEffort:true
  980.  
    });
  981.  
     
  982.  
    var empty = ee.Image().byte();
  983.  
     
  984.  
     
  985.  
    var outline = empty.paint({
  986.  
    featureCollection: vectors,
  987.  
    color: 1,
  988.  
    width: 1
  989.  
    });
  990.  
     
  991.  
    Map.addLayer(outline, {palette: 'FF0000'}, 'segments');
  992.  
     
  993.  
    //var img_planetscope = img_planetscope.addBands(glcm.select(['b4_contrast','b4_asm',"b4_corr"]).float()).addBands(entropy);
  994.  
     
  995.  
    var train_polys = vectors.map(function(feat){
  996.  
    feat = ee.Feature(feat);
  997.  
    var point = feat.geometry();
  998.  
     
  999.  
    var mappedPolys = amostras.map(function(poly){
  1000.  
    var cls = poly.get("class")
  1001.  
    var intersects = poly.intersects(point, ee.ErrorMargin(1));
  1002.  
    var property = ee.String(ee.Algorithms.If(intersects, 'TRUE', 'FALSE'));
  1003.  
    return feat.set('belongsTo', property).set('class', cls);
  1004.  
    });
  1005.  
    return mappedPolys;
  1006.  
    }).flatten().filter(ee.Filter.neq('belongsTo', 'FALSE'));
  1007.  
     
  1008.  
     
  1009.  
    //提取特征 ---------------------------------------------
  1010.  
    var train_areas = train_polys
  1011.  
    .reduceToImage({
  1012.  
    properties: ['class'],
  1013.  
    reducer: ee.Reducer.first()
  1014.  
    }).rename('class').toInt();
  1015.  
     
  1016.  
     
  1017.  
     
  1018.  
    // 提取矢量边界从影像中------------------------------------------------------------------------------------------
  1019.  
    var predict_image = vectors
  1020.  
    .reduceToImage({
  1021.  
    properties: ['label'],
  1022.  
    reducer: ee.Reducer.first()
  1023.  
    }).rename('id').toInt();
  1024.  
     
  1025.  
     
  1026.  
    img_planetscope = img_planetscope.addBands(predict_image)
  1027.  
     
  1028.  
     
  1029.  
    var FullImage_mean = img_planetscope.reduceConnectedComponents({
  1030.  
    reducer: ee.Reducer.mean(),
  1031.  
    labelBand: 'id'
  1032.  
    });
  1033.  
     
  1034.  
     
  1035.  
    /*var FullImage_std = img_planetscope.reduceConnectedComponents({
  1036.  
    reducer: ee.Reducer.stdDev(),
  1037.  
    labelBand: 'id'
  1038.  
    });
  1039.  
     
  1040.  
    var FullImage_median = img_planetscope.reduceConnectedComponents({
  1041.  
    reducer: ee.Reducer.median(),
  1042.  
    labelBand: 'id'
  1043.  
    });
  1044.  
     
  1045.  
    var FullImage_area = ee.Image.pixelArea().addBands(img_planetscope.select('id')).reduceConnectedComponents(ee.Reducer.sum(), 'id')
  1046.  
    var FullImage_sizes = ee.Image.pixelLonLat().addBands(img_planetscope.select('id')).reduceConnectedComponents(ee.Reducer.minMax(), 'id')
  1047.  
    var FullImage_width = FullImage_sizes.select('longitude_max').subtract(FullImage_sizes.select('longitude_min')).rename('width')
  1048.  
    var FullImage_height = FullImage_sizes.select('latitude_max').subtract(FullImage_sizes.select('latitude_min')).rename('height')
  1049.  
    */
  1050.  
    // 加入矢量
  1051.  
     
  1052.  
    var Pred_bands = ee.Image.cat([
  1053.  
    FullImage_mean,
  1054.  
    //FullImage_std,
  1055.  
    //FullImage_median,
  1056.  
    //FullImage_area,
  1057.  
    //FullImage_width,
  1058.  
    //FullImage_height
  1059.  
    ]).float();
  1060.  
     
  1061.  
    var clip_Image = Pred_bands.clip(train_polys);
  1062.  
    var train_areas = train_areas.addBands(clip_Image);
  1063.  
    var predictionBands = Pred_bands.bandNames();
  1064.  
    var classifierTraining = train_areas.select(predictionBands).sampleRegions({collection: train_polys, properties: ['class'], scale: 10 });
  1065.  
    var RF = ee.Classifier.smileRandomForest(50).train({features:classifierTraining, classProperty:'class', inputProperties: predictionBands});
  1066.  
     
  1067.  
    var classified_RF = Pred_bands.select(predictionBands).classify(RF);
  1068.  
    // print(classified_RF);
  1069.  
    Map.addLayer(classified_RF);
  1070.  
    // Map.addLayer(planetscope, imageVisParam,'img');
  1071.  
    // Map.addLayer(planetscope, imageVisParam3,'ndvi');
  1072.  
    // Map.addLayer(planetscope, imageVisParam2, "ndwi");
  1073.  
     
  1074.  
    //影像导出
  1075.  
    Export.image.toDrive({
  1076.  
    image: classified_RF,
  1077.  
    description: 'teste_classif',
  1078.  
    scale: 3,
  1079.  
    maxPixels: 1e13,
  1080.  
    region: geometry
  1081.  
    });
学新通

结果:

学新通

 黄色细线部分为分割区域学新通

影像分辨率3米 

 学新通学新通

这篇好文章是转载于:学新通技术网

  • 版权申明: 本站部分内容来自互联网,仅供学习及演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,请提供相关证据及您的身份证明,我们将在收到邮件后48小时内删除。
  • 本站站名: 学新通技术网
  • 本文地址: /boutique/detail/tanhgeiakf
系列文章
更多 icon
同类精品
更多 icon
继续加载