Reply To: Error: java.lang.NegativeArraySizeException

Activity Forums Astrosoftware Astro Pixel Processor Error: java.lang.NegativeArraySizeException Reply To: Error: java.lang.NegativeArraySizeException

#15021
Haverkamp
Participant

@whwang,

Great, the screenshot gives a lot of usefull information.

First, I see your machine has 16GB of RAM, and APP can only use 2GB at the moment.

If you click on CFG (top left) you can alter the amount of RAM APP can use. For your mosaic, I recommend to increase this to at least 12-14GB. Leave some GBs of RAM for your OS available to prevent swapping. Adust the amount of RAM, click on OK and restart APP. You’ll see in the top left corner at

“mem  x/2048” that 2048 has changed, indicating that APP can now use more memory.

Regarding the encountered BUG..

The problem must be that the field of view is bigger than 120 degrees. The data normally is projected rectilinear. This will be problematic with field of views bigger than 120 degrees.

Link with some explanation on different projections:

http://www.cambridgeincolour.com/tutorials/image-projections.htm

The perspective distortion for a field of view that is full-circle (360 degrees) becomes unlimited… this would be the explanation of the error. APP needs to catch the error properly off course, will add this to my RFC/TODO list.

The solution to be able to project the data differently would be to use the “calibrated projective” registration model instead of the “projective” registration model.

I would advise to try the registration again with:

4) register

enable “dynamic distortion correction”

disable “same camera and optics” (PI made the panels, so PI’s registration engine should be considered the camera, which would normally be different for each panel)

use registration mode “mosaic”

registration model “calibrated projective”

Then at 6) integrate

composition full

no LNC and MBB to start with, let’s first try to make sure the registration works, by keeping LNC and MBB disabled, we can then easily spot the registration errors if there are any.

Lanczos 3 with “no under/overshoot” turned on

As a first start, I suggest to reduce the scale of the integration.

The 40 panel mosaic must be huge, so as a first try, reduce the scale to 0,3. If that works, integrate with 0,5 or bigger. If you use 0,3 (up until 0,7) as scale to start with, use Mitchell-Netravali instead of Lanczos, that gives smoother results in downscaling the data.

Finally, but most importantly, set the projection to “equirectangularProjection” instead of “rectilinearProjection”. This is now possible due to the calibrated projective registration model.

– as a sidenote, starting with a 40 panel mosaic as your first APP experience is really ambitious I think (and really nice to try as well off course) ? !

Judging the information in the file list panel, APP was already able to register all 40 panels within a certain registration error 0,3 – 1,7 pixel. This indicates to me that the registration to start with won’t be perfect (it’s possible that PI’s registration engine is a factor here), but probably pretty good already.

Final suggestion, before starting the registration, you can choose which frame you want to be at the center of the mosaic by selecting that frame as the reference. Maybe you already did in 4) register “set reference”?

I am looking forward to seeing the 40 panel mosaic first result with the “equirectangularProjection” applied. Possibly, your 40 panel mosaic is the biggest field of view yet that has been registered with APP, so this is really testing APP’s current capabilities off course.

Mabula

Scroll to Top