Apologies - I made a mistake in my earlier post (below).
Instead of scaling the 16-bit data I generate, the 'something' is
simply doing a c-style cast to an 8-bit form on the way to the
display. So 255 displays as peak white; 256 displays as black.
Phil
On 07/01/2016 16:45, Phil Atkin wrote:
Hi,
My camera only generates uint16 pixels, so I have removed the
configuration setting and constructor argument. In the
constructor, I set the NDDataType parameter to NDUInt16.
When I debug my code, it seems as though the buffer is being
allocated as expected as an unsigned 16-bit buffer and all is
well. However, I then notice to my surprise that the ImageJ
viewer plugin is showing "2000x1500 pixels; 8-bit; 2.9MB.
What's more, something is clearly scaling my data from the 16 bits
I generate (0..65535) to the 8 bit range of the display (0..255).
Also, I discover that the startup file contains:
dbLoadRecords("NDStdArrays.template",
"P=$(PREFIX),R=image1:,PORT=Image1,ADDR=0,TIMEOUT=1,NDARRAY_PORT=$(PORT),TYPE=Int8,FTVL=UCHAR,NELEMENTS=12000000")
That looks wrong, so I change it to the alternative given for
16-bit data in the ADExample script I'm working from:
dbLoadRecords("NDStdArrays.template",
"P=$(PREFIX),R=image1:,PORT=Image1,ADDR=0,TIMEOUT=1,NDARRAY_PORT=$(PORT),TYPE=Int16,FTVL=USHORT,NELEMENTS=12000000")
Now, I find that the ImageJ viewer plugin is showing "2000x1500
pixels; 32-bit; 12MB". Also, the display is now
permanently black.
I'm confused; can anyone explain, please? Thanks,
Phil
--
Pixel
Analytics is a limited company registered in England.
Company number: 7747526; Registered office: 93A New Road,
Haslingfield, Cambridge CB23 1LP
--
Pixel
Analytics is a limited company registered in England.
Company number: 7747526; Registered office: 93A New Road,
Haslingfield, Cambridge CB23 1LP
|