Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Expose M1 location info #28

Closed
eminence opened this issue Nov 5, 2018 · 8 comments
Closed

Expose M1 location info #28

eminence opened this issue Nov 5, 2018 · 8 comments

Comments

@eminence
Copy link
Contributor

eminence commented Nov 5, 2018

As I understand it, the M1 payloads contain info about the area that GOES-16 is looking at. This info is how goesproc is able to correctly project the map overlay. Can this data be exposed to the user somehow? (Perhaps via exif info in the images or something). This would be useful for an end-user who wants to scan a bunch of images and find ones that are looking at particular areas of the globe.

@pietern
Copy link
Owner

pietern commented Nov 11, 2018

Great point. The first thing that comes to mind is optionally writing a separate JSON file for every image file that contains all the LRIT headers verbatim. EXIF is not an option because OpenCV doesn't support it. Also EXIF would only apply to JPEG files and not PNGs, PGMs, etc.

@eminence
Copy link
Contributor Author

a JSON file per image sounds perfect, too!

@pietern pietern closed this as completed in 9ad66af Dec 3, 2018
@pietern
Copy link
Owner

pietern commented Dec 3, 2018

@eminence Check out the linked commit. Make sure to set json = true for every handler where you want a header written as JSON file. This is still a bit clunky in my opinion, but it does the job, and done is better than perfect. Let me know what you think. And if we come up with a better solution we can always change of course.

@pietern
Copy link
Owner

pietern commented Dec 3, 2018

@eminence
Copy link
Contributor Author

eminence commented May 2, 2019

Following up on this after a long winter hiatus. This new feature is working great, thank you! Using the ImageNavagation header I can run my own projections to figure out what cities and states are included in an image (and thank you for the well-written comment about the projection in map_drawer.cc).

I'm curious about the Table structure. Can you point me in the direction of some documentation that might describe what this table is used for?

@pietern
Copy link
Owner

pietern commented May 5, 2019

Thanks for the feedback. Glad to hear it's working for you.

Can you share a demo of where/how you're using it?

The Table in the ImageDataFunction is a mapping of the 8 bit integer pixel values to the values in the underlying measurement system. It depends on the channel what you're looking at. These values are what's used for the gradient mapping, so you can express the colors gradient in Kelvin, and not worry how they are mapped to the pixel values.

@pietern
Copy link
Owner

pietern commented May 5, 2019

You can search for "image data function" in the LRIT specs (for example here) for more info.

@eminence
Copy link
Contributor Author

eminence commented May 8, 2019

Thanks for the tips about the image data function info, I'll take a look

Can you share a demo of where/how you're using it?

Sure! It's being used for a personal dashboard I wrote to give me a quick interface to the images produced by goesproc. https://goes.em32.net/ In the "Latest GOES-16 section" you can see that some images are labeled with some of the cites in view, and this was calculated using the ImageNavigation data from the json files

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants