2

I have a Java application that uploads images. I'd like to determine if these images are RGB, infrared/thermal (we use an ironbow color palette specifically), or grayscale. I've found this answer for detecting if it's grayscale from user @FiReTiTi, but I'm clueless about how to do the same for infrared or RGB images.

There's no discernible difference in the EXIF metadata from our drone camera's RGB and infrared imagery. Furthermore, we are using various drones with different FLIR cameras where we can't simply rely on the make/model of camera being reliably helpful. Our "problem" drone is a DJI make drone with a "XT2" as the model for both RGB and infrared images. Other drones we dealt with had "FLIR" as the make so it was easy to see that it was infrared or not. These ones do not.

Because of these issues, we are now attempting to detect the image type by somehow inspecting the image color palette itself in Java. Our end goal is to detect what imagery is being uploaded from drones and placing them in the proper folders for processing based on the image type.

Andy
  • 1,243
  • 3
  • 22
  • 40
  • Is there a MakerNote tag in the Exif data? There seems to be a lot of [FLIR-related tags](https://owl.phy.queensu.ca/~phil/exiftool/TagNames/FLIR.html), but of course, these are manufacturer-dependent, and may not be present in your files. Can you share a few sample files? I'm assuming the IR images are somehow processed and false-colored into you palette, then stored as normal RGB/YCbCr, 3 channel JPEGs. In that case, it's probably still possibly to detect as you suggest. You will likely have false positives (ie. RGB screenshot/photo of IR image), but this may not be a problem. – Harald K Mar 27 '19 at 08:47

0 Answers0