PlanetaryResources / NTL-Asteroid-Data-Hunter

NASA's Asteroid Data Hunter challenge tasked competitors to develop significantly improved algorithms to identify asteroids in images from ground-based telescopes. This winning solution increased the detection sensitivity, minimize the number of false positives, ignore imperfections in the data, and run effectively on all computers.
Apache License 2.0
81 stars 28 forks source link

hunting failed due to the backend issue - even on sample images #10

Open astronut891 opened 9 years ago

astronut891 commented 9 years ago

when I run the sample images it appears to attempt to work but I get the "hunting failed due to the backend issue" error message. The CMD window shows "failed to load TrainedRF" a bit prior to the error message being displayed.

When I run any of my own images, it fails sooner. If I read correctly on that other backend issue thread, this is setup for only one .fit format????? If that is true then it doesn't seem setup for most of the public to help out using their own images.

ghost commented 9 years ago

I am getting this as well

Tony-E commented 9 years ago

I have installed and processed some sample images OK. I have not studied in detail what was found but the processing got through to making queries on the MPC and showing the images and a list of potential objects.

Running with images from Slooh.com I very quickly get "the backend error" and the CMD box has Caused by: java.lang.NullPointerException at java.text.SimpleDateFormat.parse(SimpleDateFormat.java:1234) at java.text.DateFormat.parse(DateFormat.java:335) at gov.nasa.asteroid.tester.AsteroidDetectorTester.doExec(AsteroidDetectorTester.java:1578) at: gov.nasa.asteroid.hunter.services.impl.AsteroidDetectionServiceImpl.detectAsteroids (AsteroidDetectionServiceImpl.java:631)

Running with some images from iTelescopes the processing gets to "70%" then I get "the backend error" and the CMD box says

Caused by: java.lang.NullPointerException at gov.nasa.asteroid.tester.AsteroidDetectorTester.doExec(AsteroidDetectorTester.java:1652) at gov.nasa.asteroid.hunter.services.impl.AsteroidDetectionServiceImpl.detectAsteroids (AsteroidDetectionServiceImpl.java:631)

These are, I presume, different errors caused by the different usages of FITS.

If this program is going to be useful then it needs to support all/most of the common FITS formats and I don't feel that modifying the camera control software or changing the source code of this program is a viable solution (as suggested in another thread).

pizza-and-dog commented 9 years ago

All, we're going to update the user guide with instructions on the required format of the .FITS files, very soon. As soon as we do, we'll post here.

Tony-E commented 9 years ago

Rashid,

Have you got agreement from the major online remote telescope operators to produce FITS to a common standard?

Tony Evans

From: Rashid Sial [mailto:notifications@github.com] Sent: 23 March 2015 15:13 To: nasa/NTL-Asteroid-Data-Hunter Cc: Tony Subject: Re: [NTL-Asteroid-Data-Hunter] hunting failed due to the backend issue - even on sample images (#10)

All, we're going to update the user guide with instructions on the required format of the .FITS files, very soon. As soon as we do, we'll post here.

— Reply to this email directly or view https://github.com/nasa/NTL-Asteroid-Data-Hunter/issues/10#issuecomment-85042493 it on GitHub.Image removed by sender.

Beasley197 commented 9 years ago

Each camera provider tends to produce their own versions. So even if we asked, that is unlikely to be the case.

However, this is editable in post processing by adding header information that is required. I've left a fair bit of information on https://github.com/nasa/NTL-Asteroid-Data-Hunter/issues/5 about the correct format.

Beasley197 commented 9 years ago

The java issue I'm less sure about at the moment. I think if the format is correct it'll go through the java - it has expectations of certain pieces of header information.

Tony-E commented 9 years ago

It is the camera control software that produces the FITS file. Surely you should support at least the formats produced by the main scope/camera/observatory control software packages.

ghost commented 9 years ago

iTelescope.net FITS Images have passed tests of format run against the NASA standard before. (I seem to remember there is a site where you can upload images to test, we only ever had one minor error about the Julian 2000 clock.

Often these software packages are designed by well intentioned people who don't have the experience at having them work effectively in a cloud environment from various parts of the world, where often a poorly architected university server will choke off the bandwidth. We had dreadful problems at the start of OSIRIS-REx just connecting to the server and uploading images.

The key issue here - it doesn't work as per the install instructions and if you want people to use this, it must be simple, behave as per the install instructions and be easy to adopt for Highschools and Universities.

We are not all "script kitties".

With the best of intentions ....

Peter

On Tue, Mar 24, 2015 at 10:04 AM, Tony notifications@github.com wrote:

It is the camera control software that produces the FITS file. Surely you should support at least the formats produced by the main scope/camera/observatory control software packages.

— Reply to this email directly or view it on GitHub https://github.com/nasa/NTL-Asteroid-Data-Hunter/issues/10#issuecomment-85240797 .

pjcabrera commented 9 years ago

Hi @astroswanny

I am an iTelescope user and a software developer by profession - so more than a "script kiddie" :-). I may have some time over the next few weekends to make a pull request to the project code, to get the values it needs from iTelescope FITS files.

Thanks @Beasley197 for the WCS header info provided on #5. Most helpful.

Tony-E commented 9 years ago

@pjcabrera - that would be much appreciated.

ghost commented 9 years ago

Thanks PJ,

I could forsee us spinning this up on a VM and really doing something with it. My frustration is only with my own failed attempts to spin it up on the PCs I have access to. ;-)

I have already raised it with Brad. We'll keep across it.

Regards Peter

On Thu, Mar 26, 2015 at 6:03 AM, Tony notifications@github.com wrote:

@pjcabrera https://github.com/pjcabrera - that would be much appreciated.

— Reply to this email directly or view it on GitHub https://github.com/nasa/NTL-Asteroid-Data-Hunter/issues/10#issuecomment-86174690 .

pjcabrera commented 9 years ago

Gentlepeoples,

I have found a solution to our woes, without much undue strain on my poor addled brain, and without spending a lot of time on it. I came upon the solution entirely by accident, while noodling around on something else. Can anyone give me a "Eureka!"?

The astrometry.net project has created a web service at nova.astrometry.net, that can provide astrometric calibration data for any input image, in many formats, including FITS. Among the output it produces, is a new-image.fits file, with the WCS header info we need!

astrometry.net provides the code for their astrometry solver at http://github.com/dstndstn/astrometry.net , as well as a JSON API web service, that can be called from other software.

In summary, as Asteroid Data Hunter users, we can do one of 2 things:

1 ) process your source images with astrometry.net, by uploading your FITS files to their web service, then, for each of your uploads, download the generated new-image.fits, and process these WCS calibrated files with Asteroid Data Hunter

or

2) use their command-line utility and generate new-image.fits for each of our files locally, then process these WCS calibrated files with Asteroid Data Hunter.

Installation of these command-line utilities is cumbersome and requires also downloading large star catalogs. So for a quick solution, use the web service.

As a developer, I am more interested in integrating astrometry.net into the Asteroid Data Hunter code, allowing the upload of any astrometry.net supported file format into Asteroid Data Hunter, not just FITS files, and being almost guaranteed to have a FITS file with the required WCS headers.

I'll be working on this integration on my own fork of Asteroid Data Hunter, and will keep you updated on my progress.

Feel free to ask any questions here, or on my fork at https://github.com/pjcabrera/NTL-Asteroid-Data-Hunter

ghost commented 9 years ago

PJ,

Thanks, good info.

What I was referring to was this ....... http://fits.gsfc.nasa.gov/fits_verify.html

Anything that passes NASA own test page should work.

In the iTelescope.net Portal there is a check box for your image session which says "Platesolve my Images" if you select this the WCS co-ordinates are added to the FITS header and it will solve without issue in Astrometrica for example.

When I forget to check "Platesolve your images" I usually just have to open them in MAXIM DL / Pinpoint and just add the WCS and re-save them and they are fine.

Images which have been through this process when uploaded to "FITS Verify" work well. (The same platesolve process is required for images that go across to VPhot at the AAVSO for their. PhaaS [Photometry as a Service, cloud based processing])

For example I just ramdomly picked an image taken over a year ago and uploaded FITS Verify just now and the Summary message on the end was ....

73 header keywords

16-bit integer pixels, 2 axes (4008 x 2672),

++++++++++++++++++++++ Error Summary ++++++++++++++++++++++

HDU# Name (version) Type Warnings Errors 1 Primary Array 0 0

\ Verification found 0 warning(s) and 0 error(s). **

I am just saying I would be VERY SURPRISED if a FITS file which passed NASA's own tests wouldn't work with ADH. Surely thats the standard ;-) The title of this ticket is even the test images provided don't work due to "the Backend issue".

Can you have a go at running some of your images on the NASA FITS verify.

Thanks and Cheers Peter

On Sun, Mar 29, 2015 at 8:15 AM, PJ Cabrera notifications@github.com wrote:

Gentlepeoples,

I have found a solution to our woes, without much undue strain on my poor addled brain, and without spending a lot of time on it. I came upon the solution entirely by accident, while noodling around on something else. Can anyone give me a "Eureka!"?

The astrometry.net project has created a web service at nova.astrometry.net, that can provide astrometric calibration data for any input image, in many formats, including FITS. Among the output it produces, is a new-image.fits file, with the WCS header info we need!

astrometry.net provides the code for their astrometry solver at http://github.com/dstndstn/astrometry.net https://github.com/dstndstn/astrometry.net , as well as a JSON API web service, that can be called from other software.

In summary, as Asteroid Data Hunter users, we can do one of 2 things:

1 ) process your source images with astrometry.net, by uploading your FITS files to their web service and for each of your uploads, downloading the generated new-image.fits, then processing these WCS calibrated files with Asteroid Data Hunter

or

2) use their command-line utility and generating new-image.fits for each of our files locally, then processing these WCS calibrated files with Asteroid Data Hunter.

Installation of these command-line utilities is cumbersome and requires also downloading large star catalogs. So for a quick solution, use the web service.

As a developer, I am more interested in integrating astrometry.net into the Asteroid Data Hunter code, allowing the upload of any astrometry.net supported file format into Asteroid Data Hunter, not just FITS files, and being almost guaranteed to have a FITS file with the required WCS headers.

I'll be working on this integration on my own fork of Asteroid Data Hunter, and will keep you updated on my progress.

Feel free to ask any questions here, or on my fork at https://github.com/pjcabrera/NTL-Asteroid-Data-Hunter

— Reply to this email directly or view it on GitHub https://github.com/nasa/NTL-Asteroid-Data-Hunter/issues/10#issuecomment-87313208 .

pjcabrera commented 9 years ago

Hi Peter,

The FITS verify website says "Capabilities for validation of remote URLs are temporarily disabled" and it definitely wasn't working when I tried it.

So I downloaded the source for FITS verify and built my own binary. My test images download right off of the iTelescope.net FTP server all passed the FITS verify with my build. And I'm certain I didn't use the "Platesolve all images" setting when I took them.

But that's irrelevant. Until the NTL developers modify Asteroid Data Hunter to be less strict about the format, we're stuck.

I agree with you and think it's utterly ridiculous that they release this to the public and 1) it only accepts FITS (huh? the average member of the public doesn't even know what FITS is) 2) has very strict header requirements. But what the hell, let's make lemonade.

I'm saying, using the astrometry.net service is a way for people to input valid files to Asteroid Data Hunter, until they modify their source, or until I add astrometry.net to my fork of the processing pipeline.

pjcabrera commented 9 years ago

Also, I've been using Xephem to platesolve my images from iTelescope.net, without the "Platesolve all images" setting and without any extra processing - other than star alignment and integration in Xephem itself - and it platesolves just fine. So good job to you and Brad and whomever else was involved in the FITS work at iTelescope.net

Tony-E commented 9 years ago

Thanks to everyone who is working on this problem.

I normally use Astrometrica to plate solve images and measure asteroid positions for reporting to the MPC. Astrometrica has a moving object detector but it would be great to try this one.

The first thing I notice is that FITS Verify will OK an image regardless whether it has been plate solved. It seems they check that what is there is OK but does not check what is missing.

This image of a NEOCP earlier this month was obtained using Slooh.com (images are not plate solved on arrival). The image was solved by Astrometrica. The image passed FITS Verfy before and after solving. Four such images spanning a few hours were submitted to Asteroid Hunter and immediately gave the backend error and:

Caused by: java.text.ParseException: Unparseable date: "2015-03-14" at java.text.DateFormat.parse(DateFormat.java:337) at gov.nasa.asteroid.tester.AsteroidDetectorTester.doExec(AsteroidDetectorTester.java:1581) at gov.nasa.asteroid.hunter.services.impl.AsteroidDetectionServiceImpl.detectAsteroids(AsteroidDetectionServiceImpl.java:631)

The date in question can only come from the header card:

DATE = '2015-03-14' / File creation date

It cannot come from the observation time as that contains day 13 not 14:

DATE-OBS= '2015-03-13T23:23:55' / Start of exposure

The complete header for the Astrometrica-solved image that caused the error is shown below - if anyone can see anything wrong with it please let me know.:

SIMPLE = T / Conforms to FITS standard (NOST 100-2.0) BITPIX = 16 / Number of bits per pixel NAXIS = 2 / Number of axes NAXIS1 = 1018 / Width of image NAXIS2 = 1018 / Height of image CREATOR = 'Astrometrica 4.8.2.405' / License: Evans, Anthony DATE = '2015-03-14' / File creation date BZERO = +3.2768000000000E+04 / Offset to unsigned integer BSCALE = +1.0000000000000E+00 / Scaling factor DATE-OBS= '2015-03-13T23:23:55' / Start of exposure TIMESYS = 'UTC' / Time Scale EXPTIME = 60.00 / Exposure time (seconds) OBJCTRA = '12 14 49.008' / RA of center of the image OBJCTDEC= '+33 59 24.773' / DEC of center of the image EQUINOX = 2000.0 / Equinox for coordinates CTYPE1 = 'RA---TAN' / Coordinate type CRPIX1 = +5.1000000000000E+02 / Pixel coordinate of x-reference CRVAL1 = +1.8370419945342E+02 / Coordinate at x-reference CDELT1 = -5.9832816841620E-04 / Image scale on x-axis, deg per pixel CROTA1 = +3.8067696920910E-01 / Rotation of coordinate CUNIT1 = 'deg ' / Unit of coordinate CTYPE2 = 'DEC--TAN' / Coordinate type CRPIX2 = +5.1000000000000E+02 / Pixel coordinate of y-reference CRVAL2 = +3.3990214787937E+01 / Coordinate at y-reference CDELT2 = -5.9832816841620E-04 / Image scale on y-axis, deg per pixel CROTA2 = +3.8067696920910E-01 / Rotation of coordinate CUNIT2 = 'deg ' / Unit of coordinate MZERO = +2.6278901041471E+01 / Magnitude Zero Point SET-TEMP= -35.000000000000000 /CCD temperature setpoint in C CCD-TEMP= -35.000000000000000 /CCD temperature at start of exposure in C XPIXSZ = 36.000000000000000 /Pixel Width in microns (after binning) YPIXSZ = 36.000000000000000 /Pixel Height in microns (after binning) XBINNING= 3 /Binning factor in width YBINNING= 3 /Binning factor in height XORGSUBF= 0 /Subframe X position in binned pixels YORGSUBF= 0 /Subframe Y position in binned pixels READOUTM= '1 MHz ' / Readout mode of image FILTER = 'Luminance' / Filter used when taking image IMAGETYP= 'Light Frame' / Type of image SITELAT = '28 17 59' / Latitude of the imaging location SITELONG= '-16 30 30' / Longitude of the imaging location JD = 2457095.4749421296 /Julian Date at start of exposure FOCALLEN= 3454.0000000000000 /Focal length of telescope in mm APTDIA = 510.00000000000000 /Aperture diameter of telescope in mm APTAREA = 173210.76544392406 /Aperture area of telescope in mm^2 SWCREATE= 'MaxIm DL Version 5.24 131122 0AW35' /Name of software that created the image SBSTDVER= 'SBFITSEXT Version 1.0' /Version of SBFITSEXT standard in effect OBJECT = ' ' TELESCOP= 'Slooh.com T1HM PlaneWave CDK20 @ f/6.8' /telescope used to acquire this image INSTRUME= 'Slooh.com T1HM FLI ProLine PL09000 @ 0.717arcsec/pix@Bin1x1' / instrument or camera used OBSERVER= 'Slooh.com Teide T1 Observatory: Half Metre' NOTES = ' ' FLIPSTAT= 'Rotate 90 CCW' CSTRETCH= 'Medium ' / Initial display stretch mode CBLACK = 700 /Initial display black level in ADUs CWHITE = 1926 /Initial display white level in ADUs PEDESTAL= -100 /Correction to add for zero-based ADU SWOWNER = 'Paul Cox' / Licensed owner of software SWMODIFY= 'MaxIm DL Version 5.24 131122 0AW35' /Name of software that modified the image HISTORY Bias Subtraction (Bias 6, 1018 x 1018, Bin3 x 3, Temp -35C, HISTORY Exp Time 0ms) CALSTAT = 'BDF ' HISTORY Dark Subtraction (Dark 30, 1018 x 1018, Bin3 x 3, Temp -35C, HISTORY Exp Time 60s) HISTORY Flat Field (Flat Luminance 3, Luminance, 1018 x 1018, Bin3 x 3, HISTORY Temp -30C, Exp Time 4s) HISTORY Filter Kernel HISTORY Process Remove Bad Pixels HISTORY Edit Rotate Left END

ghost commented 9 years ago

Rashid, Need some guidance here from you.

From a Kepner Tregeo problem solving point of view the key question is: What is the point of difference between one that works (in ADH) and one that doesn't.

The Keywords are standard key words they are either there or they aren't, the information they contain presumably should conform to a the standard.

NASA FITS Verify tool clearly identifies each of the key words and tells you if the data complies with the standard.

For yet another perspective, I just ran one of the ADH test images provided with the downloads.

Interesting, it fails, with 1 warning and 4 errors:

1 Header-Data Units in this file.

=================== HDU 1: Primary Array ===================

* Error: Byte #3 in Card#98 is a null(\0). * Warning: Keyword #72, EPOCH is deprecated. Use EQUINOX instead. * Error: The header fill area is not totally filled with blanks. * Error: checking data fill: tried to move past end of file

all the data....

97 header keywords

16-bit integer pixels, 2 axes (4110 x 4096),

*\ Error: Error trying to read last byte of the file at byte 33678720. < End-of-File > ++++++++++++++++++++++ Error Summary ++++++++++++++++++++++

HDU# Name (version) Type Warnings Errors 1 Primary Array 1 3
End-of-file 0 1
\ Verification found 1 warning(s) and 4 error(s). **

So back to the Drawing board I think as the sample images they have provided don't even meet NASA's FITS Verify standards.

There is not much more I can offer on any of this as I can't even install it. The best I can do is offer to chair a webex discussion with stakeholders if you are interested.

pizza-and-dog commented 9 years ago

@pjcabrera, this is awesome, and exactly what we intended when we made this open source. Good luck on your fork!

@astroswanny, the correct for format for input can be found in #5.

ghost commented 9 years ago

Rashid,

Hi, understand. As discussed the concern I had was that the test images provided don't conform/pass NASA's FITS Verify tool.

Secondly I am surprised the Algorithm is not able to cope with standard methods that people currently use. The Keywords are standard things. It shouldn't be too dificult for us to add the extra keywords you require - however thats not the whole story.

If someone asks the question how do I stack images of a faint asteroid such that the stacking is done for movement of the object (ie the Track and Stack) How is your algorithm going to cope with that given the only acceptable time is MJD and I see no reference in your headers to Position Angle. Are you going to support stacked images? If we can't stack the images and get them to you with accurate timestamps you will loose a good portion of your intended user base.

You should probably spell out how you can/would support stacking and the methods supported.

I can see this would be good for survey work where the parameters are always the same, but that is not how amateur astronomers always operate.

If you have an amateur astronomer, they require the flexibility to slice and dice the data a number of ways to get a detection. Depending on the brightness and speed of the asteroid there are a significant number of skills/techniques involved that may not always sit with your algorithm and the simple keywords it uses.

Just trying to help the discussion ;-)

Peter

pauledd commented 9 years ago

pjcabrera can you please give me an hint what astrometry.net command you are referring to in your post above? Is this wcs-resample? And could you give an comandline example?

pjcabrera commented 9 years ago

@pauledd I'm just using solve-field, and the only parameter is the relative path to the original_name.fit file. During processing, this will produce a file original_name.new, with the WCS fields in the FITS header. solve-field takes many parameters, but the defaults seem to work for me. But there may be more efficient ways to run it if you know the arcsec width/height and arcsecs per pixel of your image ahead of time.

pauledd commented 9 years ago

@pjcabrera thanx. Using solved-field worked. I just had to rename original_name.new to original_name.fits to load it into ADH. It processes until 57% has reached and quits with "Hunting Failed due to the backend issue." Here is some more detail but my guess is that is another issue and not fits-format related:

...
PROGRESS:0.7
readed: PROGRESS:0.7
readed: PROGRESS:0.7
testCall: 0
AsteroidDetector: time = 25.3485
detector: /home/dljg718/tc/AST-front/asteroid/algo/linux/alg1_psyho.h:1755: int AsteroidDetector::testingData(std::string, int, int, std::vector<int>, std::vector<std::basic_string<char> >, std::vector<double>, std::vector<int>, std::vector<std::basic_string<char> >, std::vector<double>, std::vector<int>, std::vector<std::basic_string<char> >, std::vector<double>, std::vector<int>, std::vector<std::basic_string<char> >, std::vector<double>): Assertion `width == W' failed.
readed: null
Exception in thread "Thread-28" java.lang.NullPointerException
    at gov.nasa.asteroid.tester.AsteroidDetectorTester$1.run(AsteroidDetectorTester.java:1609)
    at java.lang.Thread.run(Thread.java:662)
readed: null
2015-04-24 09:58:13,283 ERROR [qtp1481625201-20] [ROOT] - <Error in method gov.nasa.asteroid.hunter.services.impl.AsteroidDetectionServiceImpl.detectAsteroids(List<File>, long) gov.nasa.asteroid.hunter.services.ServiceException: Error occurs on execute.
    at gov.nasa.asteroid.hunter.services.impl.AsteroidDetectionServiceImpl.detectAsteroids(AsteroidDetectionServiceImpl.java:636)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
    at java.lang.reflect.Method.invoke(Method.java:597)
    at org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:317)
    at org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:183)
    at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:150)
    at org.springframework.transaction.interceptor.TransactionInterceptor$1.proceedWithInvocation(TransactionInterceptor.java:96)
    at org.springframework.transaction.interceptor.TransactionAspectSupport.invokeWithinTransaction(TransactionAspectSupport.java:260)
    at org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:94)
    at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172)
    at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:204)
    at com.sun.proxy.$Proxy42.detectAsteroids(Unknown Source)
    at gov.nasa.asteroid.hunter.web.controllers.DashboardController.detectAsteroids(DashboardController.java:311)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
    at java.lang.reflect.Method.invoke(Method.java:597)
    at org.springframework.web.method.support.InvocableHandlerMethod.invoke(InvocableHandlerMethod.java:215)
    at org.springframework.web.method.support.InvocableHandlerMethod.invokeForRequest(InvocableHandlerMethod.java:132)
    at org.springframework.web.servlet.mvc.method.annotation.ServletInvocableHandlerMethod.invokeAndHandle(ServletInvocableHandlerMethod.java:104)
    at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.invokeHandleMethod(RequestMappingHandlerAdapter.java:745)
    at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.handleInternal(RequestMappingHandlerAdapter.java:686)
    at org.springframework.web.servlet.mvc.method.AbstractHandlerMethodAdapter.handle(AbstractHandlerMethodAdapter.java:80)
    at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:925)
    at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:856)
    at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:953)
    at org.springframework.web.servlet.FrameworkServlet.doPost(FrameworkServlet.java:855)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:755)
    at org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:829)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:848)
    at org.eclipse.jetty.servlet.ServletHolder.handle(ServletHolder.java:684)
    at org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:501)
    at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:137)
    at org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:557)
    at org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:231)
    at org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1086)
    at org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:428)
    at org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:193)
    at org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1020)
    at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:135)
    at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:116)
    at org.eclipse.jetty.server.Server.handle(Server.java:370)
    at org.eclipse.jetty.server.AbstractHttpConnection.handleRequest(AbstractHttpConnection.java:494)
    at org.eclipse.jetty.server.AbstractHttpConnection.content(AbstractHttpConnection.java:982)
    at org.eclipse.jetty.server.AbstractHttpConnection$RequestHandler.content(AbstractHttpConnection.java:1043)
    at org.eclipse.jetty.http.HttpParser.parseNext(HttpParser.java:865)
    at org.eclipse.jetty.http.HttpParser.parseAvailable(HttpParser.java:240)
    at org.eclipse.jetty.server.AsyncHttpConnection.handle(AsyncHttpConnection.java:82)
    at org.eclipse.jetty.io.nio.SelectChannelEndPoint.handle(SelectChannelEndPoint.java:667)
    at org.eclipse.jetty.io.nio.SelectChannelEndPoint$1.run(SelectChannelEndPoint.java:52)
    at org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:608)
    at org.eclipse.jetty.util.thread.QueuedThreadPool$3.run(QueuedThreadPool.java:543)
    at java.lang.Thread.run(Thread.java:662)
Caused by: java.lang.NullPointerException
. Details:>
2015-04-24 09:58:13,284 ERROR [qtp1481625201-20] [ROOT] - <Error in method gov.nasa.asteroid.hunter.web.controllers.DashboardController.detectAsteroids(List<MultipartFile>, long) gov.nasa.asteroid.hunter.services.ServiceException: Error occurs on execute.
...
GomezToth commented 9 years ago

I'm entering late in the game here, but I tried pjcabrera's suggestion above:

"1 ) process your source images with astrometry.net, by uploading your FITS files to their web service, then, for each of your uploads, download the generated new-image.fits, and process these WCS calibrated files with Asteroid Data Hunter"

And it didn't work. Specifically, I received the same error from Asteroid Data Hunter: "Hunting Failed due to the backend issue." Not surprisingly (to me at least) my files are too large (> 40 mb) for the on-line version of NASA's fitsverify tool, and at my advanced age I am incapable of becoming sufficiently expert at software development to get the "downloadable" version of fitsverify to work on my local machine.

At this date should I expect some future version of ADH to become generally usable for any .fits file format? Is there any specific and explicit example available of what an acceptable .fits header should and should not contain in order to be acceptable to ADH? Or can anyone suggest a more generally useful tool for detecting moving objects? All suggestions are most welcome.

Thanks.

Tony-E commented 9 years ago

@GomezToth as nothing seems to have happened for weeks to progress this problem I don't have great expectations. I'm surprised that a piece of software announced with such a fanfare by NASA does not appear to work.

Have you tried using the moving object detector in Astrometrica - it seems to work sometimes.

GomezToth commented 9 years ago

Tony - Thanks for the rapid reply. I agree that it's surprising that NASA would have allowed this (and keeps allowing this) fundamentally problematic tool to see the light of day. It's decent of them to try, I suppose, but I feel very much like I was intentionally taken in by a bait-and-switch operation.

I haven't yet tried the astrometrica option, but it seems that's where I'm headed. Thanks for the suggestion.

GT

On Tue, May 26, 2015 at 5:47 PM, Tony notifications@github.com wrote:

@GomezToth https://github.com/GomezToth as nothing seems to have happened for weeks to progress this problem I don't have great expectations. I'm surprised that a piece of software announced with such a fanfare by NASA does not appear to work.

Have you tried using the moving object detector in Astrometrica - it seems to work sometimes.

— Reply to this email directly or view it on GitHub https://github.com/PlanetaryResources/NTL-Asteroid-Data-Hunter/issues/10#issuecomment-105676637 .

ghost commented 9 years ago

GT,

Hi, just a suggestion ...... 40M is a big file size. You must have quite a camera ;-) If you binned your images 2x2 (even as a test) you would halve the file size, and that might give you some better luck on that front.

I share your frustration.

Regards Peter

On Wed, May 27, 2015 at 11:12 PM, GomezToth notifications@github.com wrote:

Tony - Thanks for the rapid reply. I agree that it's surprising that NASA would have allowed this (and keeps allowing this) fundamentally problematic tool to see the light of day. It's decent of them to try, I suppose, but I feel very much like I was intentionally taken in by a bait-and-switch operation.

I haven't yet tried the astrometrica option, but it seems that's where I'm headed. Thanks for the suggestion.

GT

On Tue, May 26, 2015 at 5:47 PM, Tony notifications@github.com wrote:

@GomezToth https://github.com/GomezToth as nothing seems to have

happened for weeks to progress this problem I don't have great expectations. I'm surprised that a piece of software announced with such a fanfare by NASA does not appear to work.

Have you tried using the moving object detector in Astrometrica - it seems to work sometimes.

— Reply to this email directly or view it on GitHub < https://github.com/PlanetaryResources/NTL-Asteroid-Data-Hunter/issues/10#issuecomment-105676637

.

— Reply to this email directly or view it on GitHub https://github.com/PlanetaryResources/NTL-Asteroid-Data-Hunter/issues/10#issuecomment-105901622 .

Tony-E commented 9 years ago

Just in case anyone is looking at this code I tried processing some images where the WCS data had been added by Canopus. I got a similar (to when I used Astrometrica for WCS) error in the "backend":

Caused by: java.text.ParseException: Unparseable date: "2015-05-25" at java.text.DateFormat.parse(DateFormat.java:337) at gov.nasa.asteroid.tester.AsteroidDetectorTester.doExec(AsteroidDetectorTester.java:1581) at gov.nasa.asteroid.hunter.services.impl.AsteroidDetectionServiceImpl.detectAsteroids(AsteroidDetectionServiceImpl.java:631)

The only place this date appears in the header is in: DATE = '2015-05-25' / File creation date

pjcabrera commented 9 years ago

@Tony-E I think I can fix that.

@pauledd & @GomezToth uploading to astrometry.net (or running the astrometry.net code locally) has worked with my test images. I don't know why your images don't work. But it seems to me, from the error messages that that have been posted here, the parsing of the FITS content is way too strict. For example, '2015-05-25' is a perfectly valid date, IF the code had used the correct date parser format. Rather than fail, it should have tried a less strict format, until it exhausted all possible ways to encode a date as text.

@pauledd & @GomezToth email me separately at pj dot cabrera at gmail dot com and I will add you to a shared folder on Dropbox where you can upload the files that failed for you, and I'll try to figure out the cause and see what changes I can make in the code.

As for the fanfare and hoopla that went into announcing this, and the extent to which it doesn't "just work", it seems to me this was really never meant to be used as we expected. It almost looks like they expected citizen scientists (I hate that term, but it's all I got) to use images from a survey, rather than our own images. Or the developers were so, so naive, they assumed everybody's FITS files had the expected format.

ghost commented 9 years ago

PJ,

Thanks.

Another way of looking at it is that images taken by amateurs which comply with NASA's own FITs Verify tool would be expected to work in a new tool funded by NASA's own investments.

But thats the nature of open-source crowd developments - They provide a community where people can compare notes about stuff until they get frustrated enough to fix it themselves. ;-)

I am still working on it our end, just waiting for a few things to fall into place.

Regards Peter

On Thu, May 28, 2015 at 3:37 AM, PJ Cabrera notifications@github.com wrote:

@Tony-E https://github.com/Tony-E I think I can fix that.

@pauledd https://github.com/pauledd & @GomezToth https://github.com/GomezToth uploading to astrometry.net (or running the code locally) has worked with my test images. I don't know why your images don't work. But it seems to me, from the error messages that that have been posted here, the parsing of the FITS content is way too strict. For example, '2015-05-25' is a perfectly valid date, IF the code had used the correct date parser format. Rather than fail, it should have tried a less strict format, until it exhausted all possible ways to encode a date as text.

@pauledd https://github.com/pauledd & @GomezToth https://github.com/GomezToth email me separately at pj dot cabrera at gmail dot com and I will add you to a shared folder on Dropbox where you can upload the files that failed for you, and I'll try to figure out the cause and see what changes I can make in the code.

As for the fanfare and hoopla that went into announcing this, and the extent to which it doesn't "just work", it seems to me this was really never meant to be used as we expected. It almost looks like they expected citizen scientists (I hate that term, but it's all I got) to use images from a survey, rather than our own images. Or the developers were so, so naive, they assumed everybody's FITS files had the expected format.

— Reply to this email directly or view it on GitHub https://github.com/PlanetaryResources/NTL-Asteroid-Data-Hunter/issues/10#issuecomment-106007266 .

pauledd commented 9 years ago

@pjcabrera I just shared four fits in your dropbox. Sorry for the filesize. I just want to be sure they are "raw" as possible. Those files came directly from my Canon700D, processed by astrometry and renamed to fits. I also tried some of the test images that are provided and they processed without errors, so I guess my installation is okay.

rapalarapala commented 9 years ago

Hello,

I try to use the FIT files and load in the application but all the time I have message of error.

I'm not sure if my FIT format files was fine, maybe is better define the type of FIT file the application need, normally I use the RAW file of Nikon and use one tools to convert the RAW files to FIT files, maybe the tools is not the good solution. The problem after read the documentation in Hunter Asteroid, not define the parameter FIT files need to load at the application hunter Asteroid.

Thank you,

Leandro

rapalarapala commented 9 years ago

Hello,

The error when load the FIT files.

voke(TransactionInterceptor.java:94) at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed( ReflectiveMethodInvocation.java:172) at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynami cAopProxy.java:204) at com.sun.proxy.$Proxy42.detectAsteroids(Unknown Source) at gov.nasa.asteroid.hunter.web.controllers.DashboardController.detectAs teroids(DashboardController.java:311) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl. java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAcces sorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:597) at org.springframework.web.method.support.InvocableHandlerMethod.invoke( InvocableHandlerMethod.java:215) at org.springframework.web.method.support.InvocableHandlerMethod.invokeF orRequest(InvocableHandlerMethod.java:132) at org.springframework.web.servlet.mvc.method.annotation.ServletInvocabl eHandlerMethod.invokeAndHandle(ServletInvocableHandlerMethod.java:104) at org.springframework.web.servlet.mvc.method.annotation.RequestMappingH andlerAdapter.invokeHandleMethod(RequestMappingHandlerAdapter.java:745) at org.springframework.web.servlet.mvc.method.annotation.RequestMappingH andlerAdapter.handleInternal(RequestMappingHandlerAdapter.java:686) at org.springframework.web.servlet.mvc.method.AbstractHandlerMethodAdapt er.handle(AbstractHandlerMethodAdapter.java:80) at org.springframework.web.servlet.DispatcherServlet.doDispatch(Dispatch erServlet.java:925) at org.springframework.web.servlet.DispatcherServlet.doService(Dispatche rServlet.java:856) at org.springframework.web.servlet.FrameworkServlet.processRequest(Frame workServlet.java:953) at org.springframework.web.servlet.FrameworkServlet.doPost(FrameworkServ let.java:855) at javax.servlet.http.HttpServlet.service(HttpServlet.java:755) at org.springframework.web.servlet.FrameworkServlet.service(FrameworkSer vlet.java:829) at javax.servlet.http.HttpServlet.service(HttpServlet.java:848) at org.eclipse.jetty.servlet.ServletHolder.handle(ServletHolder.java:684 ) at org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java :501) at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.j ava:137) at org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.jav a:557) at org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandl er.java:231) at org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandl er.java:1086) at org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java: 428) at org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandle r.java:193) at org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandle r.java:1020) at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.j ava:135) at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper .java:116) at org.eclipse.jetty.server.Server.handle(Server.java:370) at org.eclipse.jetty.server.AbstractHttpConnection.handleRequest(Abstrac tHttpConnection.java:494) at org.eclipse.jetty.server.AbstractHttpConnection.content(AbstractHttpC onnection.java:982) at org.eclipse.jetty.server.AbstractHttpConnection$RequestHandler.conten t(AbstractHttpConnection.java:1043) at org.eclipse.jetty.http.HttpParser.parseNext(HttpParser.java:865) at org.eclipse.jetty.http.HttpParser.parseAvailable(HttpParser.java:240)

    at org.eclipse.jetty.server.AsyncHttpConnection.handle(AsyncHttpConnecti

on.java:82) at org.eclipse.jetty.io.nio.SelectChannelEndPoint.handle(SelectChannelEn dPoint.java:667) at org.eclipse.jetty.io.nio.SelectChannelEndPoint$1.run(SelectChannelEnd Point.java:52) at org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPoo l.java:608) at org.eclipse.jetty.util.thread.QueuedThreadPool$3.run(QueuedThreadPool .java:543) at java.lang.Thread.run(Thread.java:662) 2015-06-26 20:09:11.414:WARN:oejs.ServletHandler:/detectAsteroids gov.nasa.asteroid.hunter.services.ServiceException: Error occurs on execute. at gov.nasa.asteroid.hunter.services.impl.AsteroidDetectionServiceImpl.d etectAsteroids(AsteroidDetectionServiceImpl.java:636) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl. java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAcces sorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:597) at org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflecti on(AopUtils.java:317) at org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJo inpoint(ReflectiveMethodInvocation.java:183) at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed( ReflectiveMethodInvocation.java:150) at org.springframework.transaction.interceptor.TransactionInterceptor$1. proceedWithInvocation(TransactionInterceptor.java:96) at org.springframework.transaction.interceptor.TransactionAspectSupport. invokeWithinTransaction(TransactionAspectSupport.java:260) at org.springframework.transaction.interceptor.TransactionInterceptor.in voke(TransactionInterceptor.java:94) at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed( ReflectiveMethodInvocation.java:172) at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynami cAopProxy.java:204) at com.sun.proxy.$Proxy42.detectAsteroids(Unknown Source) at gov.nasa.asteroid.hunter.web.controllers.DashboardController.detectAs teroids(DashboardController.java:311) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl. java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAcces sorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:597) at org.springframework.web.method.support.InvocableHandlerMethod.invoke( InvocableHandlerMethod.java:215) at org.springframework.web.method.support.InvocableHandlerMethod.invokeF orRequest(InvocableHandlerMethod.java:132) at org.springframework.web.servlet.mvc.method.annotation.ServletInvocabl eHandlerMethod.invokeAndHandle(ServletInvocableHandlerMethod.java:104) at org.springframework.web.servlet.mvc.method.annotation.RequestMappingH andlerAdapter.invokeHandleMethod(RequestMappingHandlerAdapter.java:745) at org.springframework.web.servlet.mvc.method.annotation.RequestMappingH andlerAdapter.handleInternal(RequestMappingHandlerAdapter.java:686) at org.springframework.web.servlet.mvc.method.AbstractHandlerMethodAdapt er.handle(AbstractHandlerMethodAdapter.java:80) at org.springframework.web.servlet.DispatcherServlet.doDispatch(Dispatch erServlet.java:925) at org.springframework.web.servlet.DispatcherServlet.doService(Dispatche rServlet.java:856) at org.springframework.web.servlet.FrameworkServlet.processRequest(Frame workServlet.java:953) at org.springframework.web.servlet.FrameworkServlet.doPost(FrameworkServ let.java:855) at javax.servlet.http.HttpServlet.service(HttpServlet.java:755) at org.springframework.web.servlet.FrameworkServlet.service(FrameworkSer vlet.java:829) at javax.servlet.http.HttpServlet.service(HttpServlet.java:848) at org.eclipse.jetty.servlet.ServletHolder.handle(ServletHolder.java:684 ) at org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java :501) at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.j ava:137) at org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.jav a:557) at org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandl er.java:231) at org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandl er.java:1086) at org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java: 428) at org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandle r.java:193) at org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandle r.java:1020) at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.j ava:135) at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper .java:116) at org.eclipse.jetty.server.Server.handle(Server.java:370) at org.eclipse.jetty.server.AbstractHttpConnection.handleRequest(Abstrac tHttpConnection.java:494) at org.eclipse.jetty.server.AbstractHttpConnection.content(AbstractHttpC onnection.java:982) at org.eclipse.jetty.server.AbstractHttpConnection$RequestHandler.conten t(AbstractHttpConnection.java:1043) at org.eclipse.jetty.http.HttpParser.parseNext(HttpParser.java:865) at org.eclipse.jetty.http.HttpParser.parseAvailable(HttpParser.java:240)

    at org.eclipse.jetty.server.AsyncHttpConnection.handle(AsyncHttpConnecti

on.java:82) at org.eclipse.jetty.io.nio.SelectChannelEndPoint.handle(SelectChannelEn dPoint.java:667) at org.eclipse.jetty.io.nio.SelectChannelEndPoint$1.run(SelectChannelEnd Point.java:52) at org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPoo l.java:608) at org.eclipse.jetty.util.thread.QueuedThreadPool$3.run(QueuedThreadPool .java:543) at java.lang.Thread.run(Thread.java:662) Caused by: java.lang.NullPointerException at java.text.SimpleDateFormat.parse(SimpleDateFormat.java:1234) at java.text.DateFormat.parse(DateFormat.java:335) at gov.nasa.asteroid.tester.AsteroidDetectorTester.doExec(AsteroidDetect orTester.java:1578) at gov.nasa.asteroid.hunter.services.impl.AsteroidDetectionServiceImpl.d etectAsteroids(AsteroidDetectionServiceImpl.java:631) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl. java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAcces sorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:597) at org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflecti on(AopUtils.java:317) at org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJo inpoint(ReflectiveMethodInvocation.java:183) at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed( ReflectiveMethodInvocation.java:150) at org.springframework.transaction.interceptor.TransactionInterceptor$1. proceedWithInvocation(TransactionInterceptor.java:96) at org.springframework.transaction.interceptor.TransactionAspectSupport. invokeWithinTransaction(TransactionAspectSupport.java:260) at org.springframework.transaction.interceptor.TransactionInterceptor.in voke(TransactionInterceptor.java:94) at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed( ReflectiveMethodInvocation.java:172) at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynami cAopProxy.java:204) at com.sun.proxy.$Proxy42.detectAsteroids(Unknown Source) at gov.nasa.asteroid.hunter.web.controllers.DashboardController.detectAs teroids(DashboardController.java:311) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl. java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAcces sorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:597) at org.springframework.web.method.support.InvocableHandlerMethod.invoke( InvocableHandlerMethod.java:215) at org.springframework.web.method.support.InvocableHandlerMethod.invokeF orRequest(InvocableHandlerMethod.java:132) at org.springframework.web.servlet.mvc.method.annotation.ServletInvocabl eHandlerMethod.invokeAndHandle(ServletInvocableHandlerMethod.java:104) at org.springframework.web.servlet.mvc.method.annotation.RequestMappingH andlerAdapter.invokeHandleMethod(RequestMappingHandlerAdapter.java:745) at org.springframework.web.servlet.mvc.method.annotation.RequestMappingH andlerAdapter.handleInternal(RequestMappingHandlerAdapter.java:686) at org.springframework.web.servlet.mvc.method.AbstractHandlerMethodAdapt er.handle(AbstractHandlerMethodAdapter.java:80) at org.springframework.web.servlet.DispatcherServlet.doDispatch(Dispatch erServlet.java:925) at org.springframework.web.servlet.DispatcherServlet.doService(Dispatche rServlet.java:856) at org.springframework.web.servlet.FrameworkServlet.processRequest(Frame workServlet.java:953) at org.springframework.web.servlet.FrameworkServlet.doPost(FrameworkServ let.java:855) at javax.servlet.http.HttpServlet.service(HttpServlet.java:755) at org.springframework.web.servlet.FrameworkServlet.service(FrameworkSer vlet.java:829) at javax.servlet.http.HttpServlet.service(HttpServlet.java:848) at org.eclipse.jetty.servlet.ServletHolder.handle(ServletHolder.java:684 ) at org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java :501) at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.j ava:137) at org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.jav a:557) at org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandl er.java:231) at org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandl er.java:1086) at org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java: 428) at org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandle r.java:193) at org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandle r.java:1020) at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.j ava:135) at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper .java:116) at org.eclipse.jetty.server.Server.handle(Server.java:370) at org.eclipse.jetty.server.AbstractHttpConnection.handleRequest(Abstrac tHttpConnection.java:494) at org.eclipse.jetty.server.AbstractHttpConnection.content(AbstractHttpC onnection.java:982) at org.eclipse.jetty.server.AbstractHttpConnection$RequestHandler.conten t(AbstractHttpConnection.java:1043) at org.eclipse.jetty.http.HttpParser.parseNext(HttpParser.java:865) at org.eclipse.jetty.http.HttpParser.parseAvailable(HttpParser.java:240)

    at org.eclipse.jetty.server.AsyncHttpConnection.handle(AsyncHttpConnecti

on.java:82) at org.eclipse.jetty.io.nio.SelectChannelEndPoint.handle(SelectChannelEn dPoint.java:667) at org.eclipse.jetty.io.nio.SelectChannelEndPoint$1.run(SelectChannelEnd Point.java:52) at org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPoo l.java:608) at org.eclipse.jetty.util.thread.QueuedThreadPool$3.run(QueuedThreadPool .java:543) at java.lang.Thread.run(Thread.java:662) AsteroidDetector: time = 16 goodSamples: 0 trainFeatures.SZ: 0 testFeatures.SZ: 0 RFDetection.countTotalNodes(): 112954 Success to load the RF data RF.countTotalNodes(): 112954 vp.SZ: 0 rv.SZ: 0 frontend: Finished, time = 16

Thank you

Leandro

pjcabrera commented 9 years ago

@rapalarapala converting a camera RAW file to FIT isn't going to pre-fill many of the required header fields.

pjcabrera commented 9 years ago

Hi folks, I'm going to try to spend some time this week and weekend deploying my latest changes somewhere and having you test on that. Sorry I haven't had as much time as I thought to develop & test to create the pull request.