1 votos

JavaScript a Python, ¿cómo traducir bitewiseAnd?

Estoy utilizando la API de Earth Engine en un cuaderno Jupyter y trato de traducir de JavaScript a Python una función de enmascaramiento de nubes (la que se da con el conjunto de datos)

/**
 * Function to mask clouds based on the pixel_qa band of Landsat SR data.
 * @param {ee.Image} image Input Landsat SR image
 * @return {ee.Image} Cloudmasked Landsat image
 */
var cloudMaskL457 = function(image) {
  var qa = image.select('pixel_qa');
  // If the cloud bit (5) is set and the cloud confidence (7) is high
  // or the cloud shadow bit is set (3), then it's a bad pixel.
  var cloud = qa.bitwiseAnd(1 << 5)
                  .and(qa.bitwiseAnd(1 << 7))
                  .or(qa.bitwiseAnd(1 << 3));
  // Remove edge pixels that don't occur in all bands
  var mask2 = image.mask().reduce(ee.Reducer.min());
  return image.updateMask(cloud.not()).updateMask(mask2);
};

Ya caí en la trampa de and , or y not que están protegidos en Python. Ahora me encuentro con un error con el bitewiseAnd palabra clave:

def clouMask_landsat(image):
    """
    Function to mask clouds based on the pixel_qa band of Landsat SR data.

    Args:
        image(ee.Image): image Input Landsat SR image
    Returns:
        (ee.Image): Cloudmasked Landsat image
    """
    qa = image.select('pixel_qa')

    # If the cloud bit (5) is set and the cloud confidence (7) is high
    # or the cloud shadow bit is set (3), then it's a bad pixel.
    cloud = qa.bitewiseAnd(1 << 5).And(qa.bitewiseAnd(1 << 7)).Or(qa.bitewiseAnd(1 << 3))

    # Remove edge pixels that don't occur in all bands
    mask2 = image.mask().reduce(ee.Reducer.min())

    return image.updateMask(cloud.Not()).updateMask(mask2)

AttributeError: El objeto 'Image' no tiene el atributo 'bitewiseAnd'

¿Es simplemente un & ¿o es algo totalmente distinto?

1voto

Lucas Puntos 128

Tienes un error tipográfico - bitwiseAnd no bitewiseAnd

-1voto

DJYod Puntos 158

Puedes utilizar las operaciones numpy bitewise -> https://numpy.org/doc/stable/reference/routines.bitwise.html

numpy.bitwise_and()

i-Ciencias.com

I-Ciencias es una comunidad de estudiantes y amantes de la ciencia en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X