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

Subtract fit from overscan

    XMLWordPrintable

    Details

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

      Description

      The lsst.ip.isr.isrFunctions.overscanCorrection subtracts the overscan fit from the active image. It should also subtract the same fit from the overscan, allowing downstream processing to operate on the overscan-subtracted overscan (e.g., to measure the noise).

        Attachments

          Issue Links

            Activity

            Hide
            price Paul Price added a comment -

            Based on PFS Jira ticket PIPE2D-278.

            Show
            price Paul Price added a comment - Based on PFS Jira ticket PIPE2D-278 .
            Hide
            price Paul Price added a comment -

            Meredith Rawls, would you mind reviewing these changes, please?

            price@pap-laptop-2:~/LSST/ip_isr (tickets/DM-14182=) $ git sub
            commit 4f1a728bcb0529544310e57cba8806bf81d5f3be
            Author: Paul Price <price@astro.princeton.edu>
            Date:   Mon Apr 23 14:03:49 2018 -0400
             
                remove python 2 support
                
                We no longer support Python 2.
             
             python/lsst/ip/isr/__init__.py         | 2 --
             python/lsst/ip/isr/assembleCcdTask.py  | 1 -
             python/lsst/ip/isr/crosstalk.py        | 1 -
             python/lsst/ip/isr/fringe.py           | 5 -----
             python/lsst/ip/isr/isrFunctions.py     | 3 ---
             python/lsst/ip/isr/isrTask.py          | 3 ---
             python/lsst/ip/isr/linearize.py        | 6 +-----
             python/lsst/ip/isr/measureCrosstalk.py | 4 ----
             8 files changed, 1 insertion(+), 24 deletions(-)
             
            commit 2c715da74c6c2f7359b559af664831c2803ee6b1
            Author: Paul Price <price@astro.princeton.edu>
            Date:   Mon Apr 23 15:07:53 2018 -0400
             
                overscanCorrection: subtract fit from overscan
                
                This allows downstream processing to inspect the fit results.
                
                Because the overscan is now subtracted explicitly, this requires that the
                overscan passed to this function not be contained within the image being
                corrected (or the correction is applied twice). Unfortunately, it's not
                clear how to detect this case; however, the primary user is IsrTask, which
                pulls out the components explicitly and so shouldn't mix them.
                
                Since this involved changes to the docstring, reformatted the docstring
                for this function into numpydoc.
             
             python/lsst/ip/isr/isrFunctions.py | 68 ++++++++++++++++++++++++++++----------
             python/lsst/ip/isr/isrTask.py      |  2 +-
             tests/test_overscanCorrection.py   | 20 ++++++++---
             3 files changed, 68 insertions(+), 22 deletions(-)
             
            commit e017d005828e9c695cb54f2371085661eb72614e (HEAD -> tickets/DM-14182, origin/tickets/DM-14182)
            Author: Paul Price <price@astro.princeton.edu>
            Date:   Tue Apr 24 13:20:59 2018 -0400
             
                IsrTask: add option to set variance from empirical read noise
                
                The read noise is measured from the overscan.
                
                This might be useful when working on detectors whose read noise hasn't
                been measured, or drifts due to hardware tests.
             
             python/lsst/ip/isr/isrFunctions.py |   2 +-
             python/lsst/ip/isr/isrTask.py      |  77 +++++++++++++++----
             tests/test_empiricalVariance.py    | 149 +++++++++++++++++++++++++++++++++++++
             3 files changed, 212 insertions(+), 16 deletions(-)
            

            Show
            price Paul Price added a comment - Meredith Rawls , would you mind reviewing these changes, please? price@pap-laptop-2:~/LSST/ip_isr (tickets/DM-14182=) $ git sub commit 4f1a728bcb0529544310e57cba8806bf81d5f3be Author: Paul Price <price@astro.princeton.edu> Date: Mon Apr 23 14:03:49 2018 -0400   remove python 2 support We no longer support Python 2.   python/lsst/ip/isr/__init__.py | 2 -- python/lsst/ip/isr/assembleCcdTask.py | 1 - python/lsst/ip/isr/crosstalk.py | 1 - python/lsst/ip/isr/fringe.py | 5 ----- python/lsst/ip/isr/isrFunctions.py | 3 --- python/lsst/ip/isr/isrTask.py | 3 --- python/lsst/ip/isr/linearize.py | 6 +----- python/lsst/ip/isr/measureCrosstalk.py | 4 ---- 8 files changed, 1 insertion(+), 24 deletions(-)   commit 2c715da74c6c2f7359b559af664831c2803ee6b1 Author: Paul Price <price@astro.princeton.edu> Date: Mon Apr 23 15:07:53 2018 -0400   overscanCorrection: subtract fit from overscan This allows downstream processing to inspect the fit results. Because the overscan is now subtracted explicitly, this requires that the overscan passed to this function not be contained within the image being corrected (or the correction is applied twice). Unfortunately, it's not clear how to detect this case; however, the primary user is IsrTask, which pulls out the components explicitly and so shouldn't mix them. Since this involved changes to the docstring, reformatted the docstring for this function into numpydoc.   python/lsst/ip/isr/isrFunctions.py | 68 ++++++++++++++++++++++++++++---------- python/lsst/ip/isr/isrTask.py | 2 +- tests/test_overscanCorrection.py | 20 ++++++++--- 3 files changed, 68 insertions(+), 22 deletions(-)   commit e017d005828e9c695cb54f2371085661eb72614e (HEAD -> tickets/DM-14182, origin/tickets/DM-14182) Author: Paul Price <price@astro.princeton.edu> Date: Tue Apr 24 13:20:59 2018 -0400   IsrTask: add option to set variance from empirical read noise The read noise is measured from the overscan. This might be useful when working on detectors whose read noise hasn't been measured, or drifts due to hardware tests.   python/lsst/ip/isr/isrFunctions.py | 2 +- python/lsst/ip/isr/isrTask.py | 77 +++++++++++++++---- tests/test_empiricalVariance.py | 149 +++++++++++++++++++++++++++++++++++++ 3 files changed, 212 insertions(+), 16 deletions(-)
            Hide
            mrawls Meredith Rawls added a comment -

            This is a good thing to add! Please see my comments over on GitHub.

            Two main notes/questions: it's not clear to me how the read noise is usually set for the amplifier (is it ever based on reality?), and I do think it's important to (somehow) check that the overscanImage is not a sub-image of the ampMaskedImage since that is an easy thing to overlook if one were to pick up and use our overscan correction from scratch.

            Show
            mrawls Meredith Rawls added a comment - This is a good thing to add! Please see my comments over on GitHub. Two main notes/questions: it's not clear to me how the read noise is usually set for the amplifier (is it ever based on reality?), and I do think it's important to (somehow) check that the overscanImage  is not a sub-image of the ampMaskedImage  since that is an easy thing to overlook if one were to pick up and use our overscan correction from scratch.
            Hide
            price Paul Price added a comment -

            Jenkins is passing.

            Show
            price Paul Price added a comment - Jenkins is passing.
            Hide
            price Paul Price added a comment -

            Thanks Meredith Rawls. I've posted answers on the GitHub PR. I believe this is ready to merge. Please let me know if you have any concerns. In the mean time, I'm running Jenkins on ip_isr to verify the small changes to the test haven't broken things.

            Show
            price Paul Price added a comment - Thanks Meredith Rawls . I've posted answers on the GitHub PR. I believe this is ready to merge. Please let me know if you have any concerns. In the mean time, I'm running Jenkins on ip_isr to verify the small changes to the test haven't broken things.
            Hide
            price Paul Price added a comment -

            At Russell Owen's request, I am dropping the commit removing py2 support. He has more extensive changes on DM-14204 that I don't want to get in the way of.

            Show
            price Paul Price added a comment - At Russell Owen 's request, I am dropping the commit removing py2 support. He has more extensive changes on DM-14204 that I don't want to get in the way of.
            Hide
            price Paul Price added a comment -

            Jenkins passed.

            Show
            price Paul Price added a comment - Jenkins passed.
            Hide
            price Paul Price added a comment -

            Merged to master.

            Show
            price Paul Price added a comment - Merged to master.

              People

              Assignee:
              price Paul Price
              Reporter:
              price Paul Price
              Reviewers:
              Meredith Rawls
              Watchers:
              Meredith Rawls, Paul Price
              Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

                Dates

                Created:
                Updated:
                Resolved:

                  Jenkins

                  No builds found.