Posted by
Rasband, Wayne (NIH/NIMH) [E] on
Nov 06, 2015; 3:33pm
URL: http://imagej.273.s1.nabble.com/Setting-values-to-NaN-with-a-macro-tp5014841p5014878.html
> On Nov 6, 2015, at 4:40 AM, james_minto <
[hidden email]> wrote:
>
> james_minto wrote
>> In versions 1.44p and earlier, I could set zero values as NaN (not a
>> number) with the following macro:
>>
>> if(v==0)v=NaN;
>>
>> In version 1.50d this does not work (no change to the image), but it also
>> doesn't give an error message. This problem happens for all image types
>> I've tested (8-bit, 32-bit, RGB) and in both Fiji and plain ImageJ.
>>
>> Has the syntax for defining NaN changed at some point between version
>> 1.44p and 1.50d?
>>
>> Does any one know of an alternative method to set pixels than meet a
>> certain criteria as NaN?
This test macro
v = 0;
if (v==0)
v=NaN;
print(v);
outputs “NaN” on my Mac with both Java 1.6.0_65 and Java 1.8.0_60. 32-bit (float) images are the only image type that support NaN pixel values. Pixels in 8-bit images can only have integer values in the range 0 to 255.
-wayne
>
> The change in NaN behavior occurs between ImageJ version 1.50a and 1.50d (I
> haven't yet tried the intermediate versions to find out exactly where) and
> also with java versions 1.6, 1.7 and OpenJDK8.
>
> If I create an 8-bit image with a block of 255 and a value of 1 everywhere
> else, then run the macro if(v==1)v=NaN, the 255 remains unchanged whilst the
> 1 is set to 0, not NaN.
>
> Would anyone by able to test if they get the same behaviour with their
> setup?
>
> Cheers
>
> James
>
> --
> View this message in context:
http://imagej.1557.x6.nabble.com/Setting-values-to-NaN-with-a-macro-tp5014841p5014873.html> Sent from the ImageJ mailing list archive at Nabble.com.
--
ImageJ mailing list:
http://imagej.nih.gov/ij/list.html