Will imtranslate 'Fill Values' to NaN rather than an actual color ?

I want to fill values as NaN to the resulting image matrix rather than the default 0. Is this possible ?

4 commentaires

and image matrix will rely on numbers in order to place your pixels. NaN iirc will just error out your matrix.
What's your end goal here? There may be another way to achieve what you're looking for.
Yeah I guess that makes sense. Im trying to register two images and there is going to be 0's in the matrix that are part of the image to be translated. So i wanted to fill values with NaNs rather than 0 as to not mess up analysis of the image later.
In this case if you know what values you'll have in the output, I'd suggest finding a value you know won't occur. For example, if you know you'll have 0s, 1s, and 2s, give the pixels you wanted to be NaN a value of 3.
if you must use NaN, then maybe you could write a script to do that manually:
i(a:b, c:d, :) = nan %set all values to nan in the region bounded by coordinates a,b,c,d
Please be aware that if the data type for the array is integral (which is most common), the array won't accept nan values. In this case, the portion of the array you set to NaN will get filled with 0's. [a variable of integral type cannot store a NaN value]
In my opinion, the way to do this is to record the portion you wish to NaN-fill. Save them as co-ordinates of a box.
Fill them with 0's, not NaN.
Then use the saved co-ordinates in your later analysis to treat those filled 0's differently from 0's which were a part of your original image.
Hope it Helps!

Connectez-vous pour commenter.

Réponses (0)

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by