<p>OK, here's an attempt at working this out. Ideally, what you want to have are the actual numerical profiles for the camera+Bayer-filter curves (your &quot;IMX585 QE Curve&quot; plot) <em>and</em> the transmission curve for your actual narrowband filter (&quot;optolong L-eNhance&quot;). But you can get most of the way there by reading values off the curves (I'm relying on the plot on <a href="https://www.astrofilters.com/2021/12/27/optolong-l-enhance-2/" rel="nofollow noreferrer">this page</a> for the narrowband filter).</p>
<p>The way to think about this is to imagine a pure nebular spectrum with just H<span class="math-container">$\beta$</span>, [O III] 5007, and H<span class="math-container">$\alpha$</span>. Then we pretend that your OSC camera produces three images, one in each of R, G, and B (which will presumably be the three image planes in the output RGB image).</p>
<p>The simplest case is the R image, which we'll assume is only sensitive to H<span class="math-container">$\alpha$</span> photons. (Yes, the QE curve for R pixels isn't quite zero at the wavelengths of H<span class="math-container">$\beta$</span> and [O III], but it's small enough to not worry about.) The recorded R image has, for each pixel, a flux (in counts/pixel) of</p>
<p>(1) <span class="math-container">$F_{R} = T_{R,H{\alpha}} I_{H\alpha}$</span>,</p>
<p>where <span class="math-container">$I_{H\alpha}$</span> is the input H<span class="math-container">$\alpha$</span> flux (in photons) and <span class="math-container">$T_{R,H{\alpha}}$</span> is the product of the QE curve for the R pixels and the narrowband-filter curve <em>at the wavelength of H<span class="math-container">$\alpha$</span></em>. Eyeballing the two curves, this would be something like <span class="math-container">$0.98 \times 0.90 = 0.88$</span> (90% of the photons get through the narrow-band filter, and then 98% of <em>those</em> make it through the Bayer R filter and are recorded by the pixel). You can easily divide <span class="math-container">$F_{R}$</span> by <span class="math-container">$T_{R,H{\alpha}}$</span> to get <span class="math-container">$I_{H\alpha}$</span>:</p>
<p>(I) <span class="math-container">$I_{H\alpha} = F_{R} / T_{R,H\alpha}$</span></p>
<p>(I'm ignoring unimportant details like the A/D gain that converts detected photons into pixel counts.)</p>
<p>As you noted, the G and B pixels have red leaks, which means they're recording some of the incoming H<span class="math-container">$\alpha$</span> photons. The complete equations for the G and B pixels are</p>
<p>(2) <span class="math-container">$F_{G} = T_{G,H{\beta}} I_{H\beta} + T_{G,O3} I_{O3} + T_{G,H{\alpha}} I_{H\alpha}$</span></p>
<p>and</p>
<p>(3) <span class="math-container">$F_{B} = T_{B,H{\beta}} I_{H\beta} + T_{B,O3} I_{O3} + T_{B,H{\alpha}} I_{H\alpha}$</span></p>
<p>where e.g. <span class="math-container">$T_{G,H{\beta}}$</span> would be the product of the G-pixel QE curve and the narrowband-filter transmission at the wavelength of H<span class="math-container">$\beta$</span> (something like <span class="math-container">$0.6 \times 0.9$</span>), and so forth.</p>
<p>Since we now know <span class="math-container">$I_{H\alpha}$</span>, we can subtract <span class="math-container">$T_{G,H{\alpha}} I_{H\alpha}$</span> from Equation (2) to remove the contribution to the G image from H<span class="math-container">$\alpha$</span> photons (call the result <span class="math-container">$F^{\prime}_{G}$</span>); similarly, we can subtract <span class="math-container">$T_{B,H{\alpha}} I_{H\alpha}$</span> from Equation (3) to remove the contribution to the B image from H<span class="math-container">$\alpha$</span> photons (to get <span class="math-container">$F^{\prime}_{B}$</span>).</p>
<p>Now we have:</p>
<p>(4) <span class="math-container">$F^{\prime}_{G} = T_{G,H{\beta}} I_{H\beta} + T_{G,O3} I_{O3}$</span></p>
<p>and</p>
<p>(5) <span class="math-container">$F^{\prime}_{B} = T_{B,H{\beta}} I_{H\beta} + T_{B,O3} I_{O3}$</span></p>
<p>This is two equations in two unknowns (<span class="math-container">$I_{H\beta}$</span> and <span class="math-container">$I_{O3}$</span>), and so is solvable; some manipulation produces (assuming I didn't make any silly algebra mistakes):</p>
<p>(II) <span class="math-container">$I_{H\beta} = (F^{\prime}_{B} - T_{B,O3} F^{\prime}_{G} / T_{G,O3}) 
 / (T_{B,H\beta} - T_{B,O3} T_{G,H\beta} / T_{G,O3})$</span></p>
<p>and</p>
<p>(III) <span class="math-container">$I_{O3} = (F^{\prime}_{G} - T_{G,H\beta} I_{H\beta}) / T_{G,O3}$</span></p>

CC BY-SA 4.0
2023-05-10T19:49:17.603Z
This seems very promising. Don’t wanna mark it as the answer till I’ve tried it tho.
Topcode
CC BY-SA 4.0
2023-05-10T21:15:18.980Z
(+1) Interesting answer. If I was going to test it, I would use three of my laser pointers (450, 532, and 660 nm), suitably attenuated, as fake  stand ins for the H beta, O III, and H alpha lines with the narrow band filter.
Ed V
CC BY-SA 4.0
2023-06-02T21:37:58.837Z
finally able to use this with some data, took me some time to figure out how to use pixel math on siril with the equations, but I got it and the results are good!
Topcode
CC BY-SA 4.0
2023-05-10T17:47:22.330Z
2023-05-10T17:47:22.330Z
Peter Erwin
<p>To those who aren’t aware, an OSC narrowband filter is a filter with multiple band passes, for different emission lines. These can include a combination of Hα, Hβ, OIII, SII, and other emission lines. They are meant for OSC cameras, or in other words cameras with bayer filters.</p>
<p>While it is possible to process without ever extracting each of the emission lines, it’s not how I would like to do it. Instead I would like to get the most accurate representation of the quantities of each wavelength hitting the sensor.</p>
<p>I’m going to specifically provide the information for my setup, because of course I’m the one asking the question. However it is ideal if an answer also details how to do this for any sensor and wavelengths combination.</p>
<p>Given the wavelengths of Hα, Hβ, OIII and the relative response of the sensor (in this case the IMX 585 on the Uranus-C) how can someone extract narrowband data?
<a href="https://i.sstatic.net/cE5oe.jpg" rel="nofollow noreferrer"><img src="https://i.sstatic.net/cE5oe.jpg" alt="imx 585 relative response" /></a></p>

CC BY-SA 4.0
2023-05-08T15:01:17.547Z
I looked up OSC and it stands for one shot color. It will be interesting to see helpful answers are posted.
Ed V
CC BY-SA 4.0
2023-05-09T22:25:51.950Z
Presumably the idea is that you can treat the R, G, and B planes of the output, de-mosaicked image as your H$\alpha$, [O III], and H$\beta$ images. (Assuming your object's spectrum is dominated by emission lines, because those aren't true "narrowband" filters that would properly isolate the emission lines.)
Peter Erwin
CC BY-SA 4.0
2023-05-09T22:29:00.487Z
Ah, OK, you're just showing the imaging chip (Bayer filter) response curves, not the "narrow-band" filters you want to use.
Peter Erwin
CC BY-SA 4.0
2023-05-10T15:39:50.967Z
@PeterErwin Most of the filters have a near identical pass for each wavelength, which is why I didn’t specify. However I have a optolong l-eNhance if that information is helpful.
Topcode
CC BY-SA 4.0
2023-05-10T15:43:18.190Z
@PeterErwin “Presumably the idea is that you can treat the R, G, and B planes of the output, de-mosaicked image as your Hα, [O III], and Hβ images” you can simply use them without any extra processing. But you can see that for hydrogen alpha wavelength there is some green activation, hydrogen beta has green and blue, oxygen has mostly green but alot of blue. And I’m not sure how to convert all that mess into the corresponding values.
Topcode
<amateur-observing><data-analysis><spectra><image-processing>
How can someone take narrowband data from an OSC narrowband filter
Topcode
# How can someone take narrowband data from an OSC narrowband filter

(Asked by: username_0 on 2023-05-08)

To those who aren’t aware, an OSC narrowband filter is a filter with multiple band passes, for different emission lines. These can include a combination of Hα, Hβ, OIII, SII, and other emission lines. They are meant for OSC cameras, or in other words cameras with bayer filters.

While it is possible to process without ever extracting each of the emission lines, it’s not how I would like to do it. Instead I would like to get the most accurate representation of the quantities of each wavelength hitting the sensor.

I’m going to specifically provide the information for my setup, because of course I’m the one asking the question. However it is ideal if an answer also details how to do this for any sensor and wavelengths combination.

Given the wavelengths of Hα, Hβ, OIII and the relative response of the sensor (in this case the IMX 585 on the Uranus-C) how can someone extract narrowband data?
[![imx 585 relative response](https://i.sstatic.net/cE5oe.jpg)](https://i.sstatic.net/cE5oe.jpg)

**Tags:** amateur-observing, data-analysis, spectra, image-processing
> **Comments:**
> **username_1**: I looked up OSC and it stands for one shot color. It will be interesting to see helpful answers are posted.  
> **username_2**: Presumably the idea is that you can treat the R, G, and B planes of the output, de-mosaicked image as your H$\alpha$, [O III], and H$\beta$ images. (Assuming your object's spectrum is dominated by emission lines, because those aren't true "narrowband" filters that would properly isolate the emission lines.)  
> **username_2**: Ah, OK, you're just showing the imaging chip (Bayer filter) response curves, not the "narrow-band" filters you want to use.  
> **username_0**: @PeterErwin Most of the filters have a near identical pass for each wavelength, which is why I didn’t specify. However I have a optolong l-eNhance if that information is helpful.  
> **username_0**: @PeterErwin “Presumably the idea is that you can treat the R, G, and B planes of the output, de-mosaicked image as your Hα, [O III], and Hβ images” you can simply use them without any extra processing. But you can see that for hydrogen alpha wavelength there is some green activation, hydrogen beta has green and blue, oxygen has mostly green but alot of blue. And I’m not sure how to convert all that mess into the corresponding values.  

---

## 1 answers

### Answer by username_2 on 2023-05-10. Score: 2 | Accepted answer

OK, here's an attempt at working this out. Ideally, what you want to have are the actual numerical profiles for the camera+Bayer-filter curves (your "IMX585 QE Curve" plot) *and* the transmission curve for your actual narrowband filter ("optolong L-eNhance"). But you can get most of the way there by reading values off the curves (I'm relying on the plot on [this page](https://www.astrofilters.com/2021/12/27/optolong-l-enhance-2/) for the narrowband filter).

The way to think about this is to imagine a pure nebular spectrum with just H$\beta$, [O III] 5007, and H$\alpha$. Then we pretend that your OSC camera produces three images, one in each of R, G, and B (which will presumably be the three image planes in the output RGB image).

The simplest case is the R image, which we'll assume is only sensitive to H$\alpha$ photons. (Yes, the QE curve for R pixels isn't quite zero at the wavelengths of H$\beta$ and [O III], but it's small enough to not worry about.) The recorded R image has, for each pixel, a flux (in counts/pixel) of

(1) $F\_{R} = T\_{R,H{\alpha}} I\_{H\alpha}$,

where $I\_{H\alpha}$ is the input H$\alpha$ flux (in photons) and $T\_{R,H{\alpha}}$ is the product of the QE curve for the R pixels and the narrowband-filter curve *at the wavelength of H$\alpha$*. Eyeballing the two curves, this would be something like $0.98 \times 0.90 = 0.88$ (90% of the photons get through the narrow-band filter, and then 98% of *those* make it through the Bayer R filter and are recorded by the pixel). You can easily divide $F\_{R}$ by $T\_{R,H{\alpha}}$ to get $I\_{H\alpha}$:

(I) $I\_{H\alpha} = F\_{R} / T\_{R,H\alpha}$

(I'm ignoring unimportant details like the A/D gain that converts detected photons into pixel counts.)

As you noted, the G and B pixels have red leaks, which means they're recording some of the incoming H$\alpha$ photons. The complete equations for the G and B pixels are

(2) $F\_{G} = T\_{G,H{\beta}} I\_{H\beta} + T\_{G,O3} I\_{O3} + T\_{G,H{\alpha}} I\_{H\alpha}$

and

(3) $F\_{B} = T\_{B,H{\beta}} I\_{H\beta} + T\_{B,O3} I\_{O3} + T\_{B,H{\alpha}} I\_{H\alpha}$

where e.g. $T\_{G,H{\beta}}$ would be the product of the G-pixel QE curve and the narrowband-filter transmission at the wavelength of H$\beta$ (something like $0.6 \times 0.9$), and so forth.

Since we now know $I\_{H\alpha}$, we can subtract $T\_{G,H{\alpha}} I\_{H\alpha}$ from Equation (2) to remove the contribution to the G image from H$\alpha$ photons (call the result $F^{\prime}\_{G}$); similarly, we can subtract $T\_{B,H{\alpha}} I\_{H\alpha}$ from Equation (3) to remove the contribution to the B image from H$\alpha$ photons (to get $F^{\prime}\_{B}$).

Now we have:

(4) $F^{\prime}\_{G} = T\_{G,H{\beta}} I\_{H\beta} + T\_{G,O3} I\_{O3}$

and

(5) $F^{\prime}\_{B} = T\_{B,H{\beta}} I\_{H\beta} + T\_{B,O3} I\_{O3}$

This is two equations in two unknowns ($I\_{H\beta}$ and $I\_{O3}$), and so is solvable; some manipulation produces (assuming I didn't make any silly algebra mistakes):

(II) $I\_{H\beta} = (F^{\prime}\_{B} - T\_{B,O3} F^{\prime}\_{G} / T\_{G,O3})
/ (T\_{B,H\beta} - T\_{B,O3} T\_{G,H\beta} / T\_{G,O3})$

and

(III) $I\_{O3} = (F^{\prime}\_{G} - T\_{G,H\beta} I\_{H\beta}) / T\_{G,O3}$

> **Comments:**
> **username_0**: This seems very promising. Don’t wanna mark it as the answer till I’ve tried it tho.  
> **username_1**: (+1) Interesting answer. If I was going to test it, I would use three of my laser pointers (450, 532, and 660 nm), suitably attenuated, as fake  stand ins for the H beta, O III, and H alpha lines with the narrow band filter.  
> **username_0**: finally able to use this with some data, took me some time to figure out how to use pixel math on siril with the equations, but I got it and the results are good!  

---

