Uploaded image for project: 'Data Management'
  1. Data Management
  2. DM-8234

Add ability for dax_imgserv to retrieve images by ids.

    XMLWordPrintable

    Details

    • Type: Story
    • Status: Done
    • Resolution: Done
    • Fix Version/s: None
    • Component/s: None
    • Labels:

      Description

      It is desirable to retrieve images by their identifiers for calexps, deepCoadd, and raw images.

        Attachments

          Issue Links

            Activity

            Hide
            jgates John Gates added a comment -

            Most of the work for locating images by the ids used by the butler to locate the files has been done in DM-7494. KT has provided the following formulas for breaking a single number into the individual components.

            field = ccdExposureId % 10000
            camcol = (ccdExposureId//10000)%10
            filterName = "ugriz"[(ccdExposureId//100000)%10]
            run = ccdExposureId//1000000
            patchY = coaddExposureId%(2**13)
            patchX = (coaddExposureId//(2*13))%(2*13)
            tract = coaddExposureId//(2**26)
            patch = "%d,%d" % (patchX, patchY)

            Show
            jgates John Gates added a comment - Most of the work for locating images by the ids used by the butler to locate the files has been done in DM-7494 . KT has provided the following formulas for breaking a single number into the individual components. field = ccdExposureId % 10000 camcol = (ccdExposureId//10000)%10 filterName = "ugriz" [(ccdExposureId//100000)%10] run = ccdExposureId//1000000 patchY = coaddExposureId%(2**13) patchX = (coaddExposureId//(2* 13))%(2 *13) tract = coaddExposureId//(2**26) patch = "%d,%d" % (patchX, patchY)
            Hide
            ktl Kian-Tat Lim added a comment -

            I gave incorrect formulae for coadds since we need to extract the filterName from our per-filter coadds as well. The code should be:

            filterName = "ugriz"[coaddExposureId%8]
            patchY = (coaddExposureId//8)%(2**13)
            patchX = (coaddExposureId//(2**16))%(2**13)
            tract = coaddExposureId//(2**29)
            patch = "%d,%d" % (patchX, patchY)
            

            Note that the code for coadds and that for calexps is different, and each can only be applied to its particular type of id.

            Show
            ktl Kian-Tat Lim added a comment - I gave incorrect formulae for coadds since we need to extract the filterName from our per-filter coadds as well. The code should be: filterName = "ugriz" [coaddExposureId % 8 ] patchY = (coaddExposureId / / 8 ) % ( 2 * * 13 ) patchX = (coaddExposureId / / ( 2 * * 16 )) % ( 2 * * 13 ) tract = coaddExposureId / / ( 2 * * 29 ) patch = "%d,%d" % (patchX, patchY) Note that the code for coadds and that for calexps is different, and each can only be applied to its particular type of id.
            Hide
            kennylo Kenny Lo added a comment -

            Per John Gates, the issue may have been fully resolved already, just verify.

            Show
            kennylo Kenny Lo added a comment - Per John Gates, the issue may have been fully resolved already, just verify.
            Hide
            kennylo Kenny Lo added a comment -

            The work has been done in DM-7494 by jgates108 (GH tag: dax-F16-2016-11.pre2).

            Show
            kennylo Kenny Lo added a comment - The work has been done in DM-7494 by jgates108 (GH tag: dax-F16-2016-11.pre2).

              People

              Assignee:
              kennylo Kenny Lo
              Reporter:
              jgates John Gates
              Watchers:
              John Gates, Kenny Lo, Kian-Tat Lim
              Votes:
              0 Vote for this issue
              Watchers:
              3 Start watching this issue

                Dates

                Created:
                Updated:
                Resolved: