Skip to content

Conversation

ceramic-mug
Copy link

Suppose a user inputs an array where masked values are not all unique (e.g. user is matching histograms for .tif red raster band with nodata value of 0. When rastertio.open() reads the .tif, machine epsilon may code some zeros a little bit off, like say 0.00000000001. Then the mask will cover 0 and 0.00000000001). Then, before the insertion of this edit, mask_index[0] would contain more than one value, and everything breaks. My edit replaces all masked values with np.nan up front to ensure np.unique (line 53) records only one masked value, thus preserving the mask_index[0] system below.

Suppose a user inputs an array where masked values are not all unique (e.g. user is matching histograms for .tif red raster band with nodata value of 0. When rastertio.open() reads the .tif, machine epsilon may code some zeros a little bit off, like say 0.00000000001. Then the mask will cover 0 and 0.00000000001). Then, before the insertion of this edit, mask_index[0] would contain more than one value, and everything breaks. My edit replaces all masked values with np.nan up front to ensure np.unique (line 53) records only one masked value, thus preserving the mask_index[0] system below.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant