Printable Version of Topic

Click here to view this topic in its original format

Unmanned Spaceflight.com _ Image Processing Techniques _ How to demosaic raw Bayer images?

Posted by: elakdawalla Jan 22 2016, 04:24 PM

There's been discussion elsewhere on the forum about how to demosaic images that come down as raw pixel values from cameras with Bayer filters, but I have not been able to do this myself and am looking for some help. What do you folks recommend to demosaic images? I'm a Windows user...

In http://www.unmannedspaceflight.com/index.php?showtopic=7426&view=findpost&p=189837 Damia recommended ImageJ with the Debayer plugin. I downloaded ImageJ (now Fiji) from http://imagej.net/Install_Fiji_on_Windows and the http://umanitoba.ca/faculties/science/astronomy/jwest/plugins.html plugin from here as well as the PDS Reader plugin from http://rsb.info.nih.gov/ij/plugins/pds.html. Trying the Debayer plugin on http://rsb.info.nih.gov/ij/plugins/pds.html, the following error appeared in the console, and I'm not sure what to do to solve the problem; can anybody help?

QUOTE
Compiling 1 file in C:\Users\Emily\AppData\Local\Temp\java6621339374403543752
C:\Users\Emily\AppData\Local\Temp\java6621339374403543752\src\main\java\Debayer_Image.java:8: cannot access java.lang.Object
bad class file: ZipFileIndexFileObject[D:\CloudStation\Pictures\Fiji.app\java\win64\jdk1.8.0_66\jre\lib\rt.jar(java/lang/Object.class)]
class file has wrong version 52.0, should be 50.0
Please remove or make sure it appears in the correct subdirectory of the classpath.
public class Debayer_Image implements PlugInFilter {
^
org.scijava.minimaven.JavaCompiler$CompileError: Compile error: 1
at org.scijava.minimaven.JavaCompiler.call(JavaCompiler.java:105)
at org.scijava.minimaven.MavenProject.build(MavenProject.java:538)
at org.scijava.minimaven.MavenProject.build(MavenProject.java:463)
at org.scijava.minimaven.MavenProject.build(MavenProject.java:446)
at org.scijava.plugins.scripting.java.JavaEngine.compile(JavaEngine.java:211)
at org.scijava.plugins.scripting.java.JavaEngine.eval(JavaEngine.java:135)
at org.scijava.plugins.scripting.java.JavaEngine.eval(JavaEngine.java:173)
at org.scijava.script.ScriptModule.run(ScriptModule.java:173)
at org.scijava.module.ModuleRunner.run(ModuleRunner.java:167)
at org.scijava.module.ModuleRunner.call(ModuleRunner.java:126)
at org.scijava.module.ModuleRunner.call(ModuleRunner.java:65)
at org.scijava.thread.DefaultThreadService$2.call(DefaultThreadService.java:191)
at java.util.concurrent.FutureTask.run(FutureTask.java:266)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
at java.lang.Thread.run(Thread.java:745)

Posted by: Floyd Jan 22 2016, 05:06 PM

C:\Users\Emily\AppData\Local\Temp\java6621339374403543752\src\main\java\Debayer_Image.java:8: cannot access java.lang.Object
bad class file: ZipFileIndexFileObject[D:\CloudStation\Pictures\Fiji.app\java\win64\jdk1.8.0_66\jre\lib\rt.jar(java/lang/Object.class)]
class file has wrong version 52.0, should be 50.0

Looks like the program expects version 50.0 rather than the more recent version 52.0 of java. You may be able to download the older version and put it in the correct folder to make the program happy.... (non-expert advise).

Posted by: charborob Jan 22 2016, 05:24 PM

Is there a way to do it in PhotoShop (v. CS5, Mac)?

Posted by: elakdawalla Jan 22 2016, 06:08 PM

I'd like to know the answer to this, too.

Posted by: Ian R Jan 22 2016, 06:47 PM

Emily,

The free IRIS package looks like it has a good solution in the form of it's 'Convert a CFA image' command:

http://www.astrosurf.com/buil/iris/tutorial3/doc13_us.htm

Posted by: Ian R Jan 22 2016, 06:53 PM

http://www.inweb.ch/foto/rawformat.html#debay

Posted by: Gerald Jan 22 2016, 07:54 PM

To be fully compliant with the MMM cameras, apply the 5x5 kernel as described in the http://pds-imaging.jpl.nasa.gov/data/msl/MSLMRD_0001/DOCUMENT/MSL_MMM_EDR_RDR_DPSIS.PDF, Appendix D.
This works well only with the lossless PDS EDRs. Lossy compressed JPGs result in a color cast.

Posted by: elakdawalla Jan 22 2016, 10:36 PM

QUOTE (Ian R @ Jan 22 2016, 10:47 AM) *
Emily,

The free IRIS package looks like it has a good solution in the form of it's 'Convert a CFA image' command:

http://www.astrosurf.com/buil/iris/tutorial3/doc13_us.htm

Hooray, IRIS worked! Thank you!

Posted by: Ian R Jan 23 2016, 08:57 AM

Yes! Hadn't tested it myself, so it was somewhat of a stab in the dark ... but I'm glad it worked! cool.gif

Posted by: charborob Jan 23 2016, 12:21 PM

IRIS works for Windows only. Is there something for Mac users?

Posted by: JohnVV Jan 28 2016, 12:31 AM

I have been using the G'Mic terminal program
it handles 32 bit float and 16 bit signed and unsigned

there is also a gimp plugin for it
and it works on 16 bit data if you build the plugin with Gimp 2.9.3 DEVELOPMENT

for the jpg's

CODE
gmic 0017ML0000500000100213C00_XXXX.jpg -bayer2rgb 1,1,1 -o 0017ML0000500000100213C00_XXXX.png


for the raw dat file
http://pds-imaging.jpl.nasa.gov/data/msl/MSLMST_0001/DATA/EDR/SURFACE/0017/
CODE
dat2img 0017ML0000500000100213C00_XXXX.DAT test

cd test
pds2isis from=0017ML0000500000100213C00_XXXX_00.IMG to=0017ML0000500000100213C00_XXXX_00.cub

cubeatt from=0017ML0000500000100213C00_XXXX_00.cub to=0017ML0000500000100213C00_XXXX_00.raw+BSQ+detached


the dat2img code is here
http://pds-imaging.jpl.nasa.gov/data/msl/MSLMST_0001/SOFTWARE/SRC/

now i have a raw bayer image
CODE
gmic 0017ML0000500000100213C00_XXXX_00.raw,uchar,1536,1152 -bayer2rgb 1,1,1 -o 0017ML0000500000100213C00_XXXX_00.png


http://imgbox.com/pXeN2k3e

Posted by: JohnVV Jan 28 2016, 01:12 AM

or for the gimp plugin ( available as a prebuilt MS Windows and Apple plugin )
http://mars.jpl.nasa.gov/msl-raw-images/msss/00017/mcam/0017ML0050000000C0_DXXX.jpg

the plugin , and for windows AND Apples Mac
http://gmic.eu/gimp.shtml


open the jpg in gimp

change it from a "gray" to a "RGB"
( image/mode/RGB )

then Filters / Gmic
that opens the plugin GUI
click the "Repair" list in the menu
then select the "Bayer Reconstruction"

the defaults are normally a GOOD start
the msl-raw image above
http://imgbox.com/y66QK3nM



OR you can use "Krita"
the gmic plugin is ALREADY built into the program
runs on Linux , Apple, Windows

https://krita.org/
https://krita.org/download/krita-desktop/

http://imgbox.com/y2jLSStJ

Posted by: elakdawalla Apr 10 2019, 07:51 PM

I am just bumping this topic because I had forgotten how to deBayer images and Googled and found this page and yep, IRIS worked for me again! biggrin.gif

Posted by: Ian R Apr 11 2019, 09:45 PM

Hey, I'd forgotten about this. Thanks for the reminder, Emily!

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)