Announcement: All noncommercial projects registered to use Earth Engine before
April 15, 2025 must
verify noncommercial eligibility to maintain Earth Engine access.
ee.Kernel.diamond
Stay organized with collections
Save and categorize content based on your preferences.
Generates a diamond-shaped boolean kernel.
Usage | Returns | ee.Kernel.diamond(radius, units, normalize, magnitude) | Kernel |
Argument | Type | Details | radius | Float | The radius of the kernel to generate. |
units | String, default: "pixels" | The system of measurement for the kernel ('pixels' or 'meters'). If the kernel is specified in meters, it will resize when the zoom-level is changed. |
normalize | Boolean, default: true | Normalize the kernel values to sum to 1. |
magnitude | Float, default: 1 | Scale each value by this amount. |
Examples
Code Editor (JavaScript)
print('A diamond kernel', ee.Kernel.diamond({radius: 3}));
/**
* Output weights matrix (up to 1/100 precision for brevity)
*
* [0.00, 0.00, 0.00, 0.04, 0.00, 0.00, 0.00]
* [0.00, 0.00, 0.04, 0.04, 0.04, 0.00, 0.00]
* [0.00, 0.04, 0.04, 0.04, 0.04, 0.04, 0.00]
* [0.04, 0.04, 0.04, 0.04, 0.04, 0.04, 0.04]
* [0.00, 0.04, 0.04, 0.04, 0.04, 0.04, 0.00]
* [0.00, 0.00, 0.04, 0.04, 0.04, 0.00, 0.00]
* [0.00, 0.00, 0.00, 0.04, 0.00, 0.00, 0.00]
*/
Python setup
See the
Python Environment page for information on the Python API and using
geemap
for interactive development.
import ee
import geemap.core as geemap
Colab (Python)
from pprint import pprint
print('A diamond kernel:')
pprint(ee.Kernel.diamond(**{'radius': 3}).getInfo())
# Output weights matrix (up to 1/100 precision for brevity)
# [0.00, 0.00, 0.00, 0.04, 0.00, 0.00, 0.00]
# [0.00, 0.00, 0.04, 0.04, 0.04, 0.00, 0.00]
# [0.00, 0.04, 0.04, 0.04, 0.04, 0.04, 0.00]
# [0.04, 0.04, 0.04, 0.04, 0.04, 0.04, 0.04]
# [0.00, 0.04, 0.04, 0.04, 0.04, 0.04, 0.00]
# [0.00, 0.00, 0.04, 0.04, 0.04, 0.00, 0.00]
# [0.00, 0.00, 0.00, 0.04, 0.00, 0.00, 0.00]
Except as otherwise noted, the content of this page is licensed under the Creative Commons Attribution 4.0 License, and code samples are licensed under the Apache 2.0 License. For details, see the Google Developers Site Policies. Java is a registered trademark of Oracle and/or its affiliates.
Last updated 2023-10-06 UTC.
[null,null,["Last updated 2023-10-06 UTC."],[[["\u003cp\u003eGenerates a diamond-shaped kernel for use in image processing operations.\u003c/p\u003e\n"],["\u003cp\u003eThe kernel weights are by default normalized to sum to 1, creating a smoothing effect.\u003c/p\u003e\n"],["\u003cp\u003eYou can control the radius of the diamond kernel and specify its units in pixels or meters.\u003c/p\u003e\n"],["\u003cp\u003eAn optional magnitude argument allows scaling the kernel weights for custom effects.\u003c/p\u003e\n"],["\u003cp\u003eThe diamond kernel is useful for operations that require equal consideration of pixels in all diagonal and orthogonal directions.\u003c/p\u003e\n"]]],["The `ee.Kernel.diamond` function generates a diamond-shaped boolean kernel. Key parameters include `radius`, defining the kernel's size; `units` (pixels or meters), specifying the measurement system; `normalize` (boolean), controlling if values sum to 1; and `magnitude`, used to scale values. The function returns a Kernel object. An example demonstrates creating a radius-3 kernel with a matrix showing the diamond pattern and its weighted values.\n"],null,["# ee.Kernel.diamond\n\nGenerates a diamond-shaped boolean kernel.\n\n\u003cbr /\u003e\n\n| Usage | Returns |\n|------------------------------------------------------------------------|---------|\n| `ee.Kernel.diamond(radius, `*units* `, `*normalize* `, `*magnitude*`)` | Kernel |\n\n| Argument | Type | Details |\n|-------------|---------------------------|-------------------------------------------------------------------------------------------------------------------------------------------------------|\n| `radius` | Float | The radius of the kernel to generate. |\n| `units` | String, default: \"pixels\" | The system of measurement for the kernel ('pixels' or 'meters'). If the kernel is specified in meters, it will resize when the zoom-level is changed. |\n| `normalize` | Boolean, default: true | Normalize the kernel values to sum to 1. |\n| `magnitude` | Float, default: 1 | Scale each value by this amount. |\n\nExamples\n--------\n\n### Code Editor (JavaScript)\n\n```javascript\nprint('A diamond kernel', ee.Kernel.diamond({radius: 3}));\n\n/**\n * Output weights matrix (up to 1/100 precision for brevity)\n *\n * [0.00, 0.00, 0.00, 0.04, 0.00, 0.00, 0.00]\n * [0.00, 0.00, 0.04, 0.04, 0.04, 0.00, 0.00]\n * [0.00, 0.04, 0.04, 0.04, 0.04, 0.04, 0.00]\n * [0.04, 0.04, 0.04, 0.04, 0.04, 0.04, 0.04]\n * [0.00, 0.04, 0.04, 0.04, 0.04, 0.04, 0.00]\n * [0.00, 0.00, 0.04, 0.04, 0.04, 0.00, 0.00]\n * [0.00, 0.00, 0.00, 0.04, 0.00, 0.00, 0.00]\n */\n```\nPython setup\n\nSee the [Python Environment](/earth-engine/guides/python_install) page for information on the Python API and using\n`geemap` for interactive development. \n\n```python\nimport ee\nimport geemap.core as geemap\n```\n\n### Colab (Python)\n\n```python\nfrom pprint import pprint\n\nprint('A diamond kernel:')\npprint(ee.Kernel.diamond(**{'radius': 3}).getInfo())\n\n# Output weights matrix (up to 1/100 precision for brevity)\n\n# [0.00, 0.00, 0.00, 0.04, 0.00, 0.00, 0.00]\n# [0.00, 0.00, 0.04, 0.04, 0.04, 0.00, 0.00]\n# [0.00, 0.04, 0.04, 0.04, 0.04, 0.04, 0.00]\n# [0.04, 0.04, 0.04, 0.04, 0.04, 0.04, 0.04]\n# [0.00, 0.04, 0.04, 0.04, 0.04, 0.04, 0.00]\n# [0.00, 0.00, 0.04, 0.04, 0.04, 0.00, 0.00]\n# [0.00, 0.00, 0.00, 0.04, 0.00, 0.00, 0.00]\n```"]]