LRGB와 협대역(Narrow band) 합치기

다음은 Light Vortex Astronomy에서 보고 편집한 내용입니다. Light Vortex Astronomy의 내용은 PixInsight팀의 빈센트 패리스의 설명을 참고했다고 합니다. 그리고 여기 있는 사진은 모두 Light Vortex Astronomy에서 가져왔습니다. 저는... 예시로 보여줄만큼 좋은 사진을 찍지 못해서요. ㅠㅠ  



일반적으로 LRGB와 협대혁 필터의 합치기는 각각 필터의 특성(원래 색상)에 맞춰 결합시키는 것이 일반적입니다. 다시말해 H𝛼는 적색(Red)필터와 합치고, Oiii는 녹색(Green)과 청색(Blue)에 합칩니다. 하지만 사람에 따라 협대역 필터의 결과물을 L필터에 넣거나 다른 필터에 넣기도 합니다. 어차피 이건 개인의 취향이고 천체사진이라는 예술 영역의 문제니까요. 
PixInsight에서도 LRGB와 협대역 필터를 합치는 문제에 대해 온전히 사용자의 영역으로 남겨놨습니다. 다음은 PixInsight에서 LRGB와 협대역 필터의 결과물을 합치는 방법에 대한 설명입니다. 

1. 이미지의 전처리

LRGB와 협대역을 합치는 것은 아래에 붉은색으로 표시된 단계에 이루어져야 합니다.


모든 파일은 전처리(Pre-processing)가 끝나 있어야 하며, DynamicCrop이나 DynamicBackgroundExtraction으로 배경노이즈(UFI)가 제거된 상태여야 합니다. 그리고 전체 촬영 결과물 중에 G필터의 결과물은 LinearFit 프로세스의 레퍼런스로 삼아야 하기 때문에 밝기 조정이 끝나야 합니다. (조금 더 읽어보시면 아시겠지만 ColorCalibration 프로세스를 해버리면 이 말은 큰 의미가 없어지는 것 같습니다) 
그리고 가장 중요하고 당연한 것은, 모든 결과물의 마스터 프레임이 아직 선형 데이타(Linear Data)여야 한다는 것입니다. 

모든 필터의 마스터 파일을 전부 열었습니다


일단 ChannelCombination 프로세스를 이용해 RGB 이미지를 만들어 냅니다. 

ChannelCombination 프로세스로 RGB이미지 생성

2. H𝛼 결과물로 R 필터 개선하기

첫번째 단계는 ColorCalibration프로세스를 마쳐 이미 R/G/B 색상간의 밝기나 강도 조절이 끝난 RGB결과물에서 ChannelExtraction 프로세스를 통해 R 필터를 뽑아내는 것입니다. 이렇게 복잡하게 하는 이유는 초기 R필터의 마스터 파일을 그대로 이용하는 경우 R/G/B 색상간의 밝기나 강도가 조절되지 않아 결과에 영향을 미치기 때문입니다. 뽑아낸 R 필터의 색상은 앞으로 RGB_R이라고 부르겠습니다. 

RGB 이미지와 H𝛼 이미지

ChannelExtraction으로 R 채널 뽑아내기(추출)

PixelMath 프로세스를 엽니다. 우선 H𝛼를 합치기 전에 RGB_R에서 별을 제거하고 성운기만 남겨야 합니다.
이를 위해 PixelMath에서 Destination은 new image로, 그리고 Color Space는 Grayscale로 선택합니다. 그리고 RGB/K와 Symbols의 텍스트 박스에 아래의 내용을 입력합니다.

  • RGB/K: ((HA * R_bandwidth) - (R * HA_bandwidth)) / (R_bandwidth - HA_bandwidth)
  • Symbols: R_bandwidth=100, HA_bandwidth=7


여기서 Symbols의 내용을 보시면 R_bandwidth는 적색 필터의 대역폭을, 그리고 HA는 H𝛼필터의 대역폭을 정의하고 있습니다. 이 숫자는 회사마다 다른 값을 가지며, 내가 어느회사의 어느 필터를 사용하느냐에 따라 달라집니다.
아래는 Baader LRGB필터의 대역폭입니다. 협대역 필터들은 그 이름에 적혀있는 숫자가 해당 필터의 대역폭을 나타내므로 그대로 쓰시면 됩니다.
  • L : 420~680nm (260nm)
  • R : 595~680nm (85nm)
  • G : 500~575nm (75nm)
  • B : 385~505nm (120nm)
새로 생성된 R + H𝛼 결과물

여기까지 처리하면 별들이 사라진 새로운 영상이 만들어집니다. 이제 기존의 RGB_R 프레임과 H𝛼 프레임은 꺼도 됩니다. 이제 PixelMath 프로세스의 Reset을 눌러 모든 수식을 제거합니다. 이제 새로 R/K와 G, 그리고 B필터에 대한 수식을 입력합니다. 

  • R/K: $T + ((CombImg - Med(CombImg)) * BoostFactor)
  • G: $T
  • B: $T
  • Symbols: BoostFactor=1.0

이 수식에서 CombImg는 앞서 별을 제거하고 H𝛼와 합친 이미지를 말합니다. 그리고 이 수식은 기존의 RGB 이미지에 H𝛼로 향상시킨 적색을 넣어주는 수식입니다. 여기서 G와 B에 $T는 '그대로 둔다'라는 의미라고 생각하시면 됩니다. 또한 Symbols의 BoostFactor는 기존의 RGB 이미지를 개선할 때 어느정도의 강도로 합쳐주냐는 뜻입니다. 만약 1.0보다 높은 숫자로 넣으면 적색 채널이 더욱 강화될 것이고 1.0으로 그대로 두신다면 H𝛼의 데이타 그대로, 자연스럽게 합쳐집니다. 


수식을 다 입력하셨다면 기존의 RGB이미지를 선택한 후 Apply 버튼을 누르거나 PixeMath의 New Instance버튼을 드래그 앤 드롭으로 기존의 RGB 이미지에 떨어뜨려 줍니다. 

PixelMath의 결과물 적색이 살아났습니다


붉은색 색상이 확 살아나는 것을 보실 수 있습니다. 하지만 이번 작업을 마치기 전에 향상된 이미지의 배경을 조절할 필요가 있습니다. 일단 별이나 성운이 없는 부분에 작은 Preview박스를 하나 만듭니다. BackgroundNeutralization 프로세스를 열어 Reference Image에 이 프리뷰 박스를 선택하고 프로세스를 실행시켜 줍니다. BackgroundNeutralization 프로세스의 결과를 AutoStretch 버튼으로 확인하시면 됩니다. 
만약 여기까지 과정으로도 충분히 만족스럽다면, 별을 제거하고 R 채널과 H𝛼 채널을 합친 이미지는 제거하셔도 됩니다. 하지만 만족스럽지 않다면 PixelMath의 BoostFactor를 조절하며 여러번 해보시면 됩니다. 꼭 기억하실 것은 이 과정을 종료하기 전에 꼭 BackgroundNeutralization 프로세스를 실행시키셔야 한다는 겁니다. 

3. Oiii 프레임으로 G 필터와 B 필터 개선하기

H𝛼필터는 적색에 속한 대역폭을 갖지만 Oiii 필터는 녹색과 청색의 중간쯤 위치합니다. 그렇기 때문에 Oiii 필터는 보통 양쪽 채널을 모두 개선할때 이용합니다. 이 과정을 위해 새로운 RGB 이미지가 필요하지는 않고, 아까 H𝛼로 향상시킨 RGB 이미지를 그대로 쓰시면 됩니다. 기억을 되살려보면, 우리는 PixelMath 프로세스로 G 필터와 B 필터의 색상을 건드리지 않았으니까요. 

기존에 R 채널을 개선한 이미지와 Oiii 이미지

첫 단계는 앞서했던 내용과 거의 동일합니다. 다만 이번에는 G 채널과 B 채널을 둘 다 사용한다는 것만 다릅니다. 일단 ChannelExtraction 프로세스를 이용해 G 채널과 B 채널을 뽑아냅니다. 


두 채널의 이미지가 뽑혀 나왔으면 먼저 G 채널에 Oiii를 합쳐보겠습니다. 

PixelMath 프로세스를 다시 엽니다. 이번에도 시작 전에 Reset버튼을 눌러 초기화 시켜주고 아래의 내용을 입력합니다. Destination에는 new image를, 그리고 Color space는 Grayscale을 선택합니다. RGB/K와 Symbols에 아래의 내용을 입력합니다. 

  • RGB/K: ((OIII * G_bandwidth) - (G * OIII_bandwidth)) / (G_bandwidth - OIII_bandwidth)
  • Symbols: G_bandwidth=100, OIII_bandwidth=8.5

이번에도 역시, 자신이 사용하는 G 필터의 대역폭과 Oiii의 대역폭을 넣어야 합니다. 


Apply를 누르시기 전에 미리 설명하자면 G_bandwidth의 수치를 줄임으로써 결과 이미지의 별의 수를 줄일 수 있습니다. 이번에는 60을 넣었습니다. 이건 꼭 정해진 규칙이 있는 것은 아니라, 내가 원하는 수준까지 별을 줄이기 위해 이 수치를 줄이면 됩니다. 다만 수치를 줄이면 줄일 수록 성운기 역시 같이 줄어듬을 기억하셔야 합니다. 


새로운 G + Oiii 이미지가 만들어 졌으면, 잠시 옆으로 옮겨놓고 이번에는 B 채널과 Oiii를 합치겠습니다. 아까와 동일한 방식으로 PixelMath를 Reset하고 아래의 수식을 입력합니다. 

  • RGB/K: ((OIII * B_bandwidth) - (B * OIII_bandwidth)) / (B_bandwidth - OIII_bandwidth)
  • Symbols: B_bandwidth=100, OIII_bandwidth=8.5

이번에도 어느정도 별의 수를 줄이기 위해 B_bandwidth에 70을 넣어봤습니다. 충분히 만족스러운 결과가 나오셨다면 PixelMath는 Reset하고 기존의 B 채널 프레임과 Oiii 프레임은 꺼도 됩니다. 

완성된 이미지

이제 G + Oiii와 B + Oiii를 기존의 RGB 이미지에 합쳐야 합니다. 이걸 하기 위해서는 PixelMath의 항목 중 Use a single RGB/K expressionn 옵션을 체크해제 합니다. 아래의 내용을 R/K, G, B와 Symbols 항목에 넣어줍니다. 

  • R/K: $T
  • G: $T + ((CombG - Med(CombG)) * BoostFactor)
  • B: $T + ((CombB - Med(CombB)) * BoostFactor)
  • Symbols: BoostFactor=1.0

이 수식의 CombG와 CombB는 우리가 Oiii와 합쳐서 만들어낸 각 이미지의 이름입니다. 
기존의 RGB 이미지를 선택한 후 PixelMath의 Apply를 누르시면 됩니다. 


여기까지해서 마음에 드신다면, 별과 성운기가 없는 부분에 또 작은 Preview창을 만들어 BackgroundNeutralization 프로세스를 실행합니다. 꼭 해야 합니다! 

우측이 최종 결과물

하나 더 기억하실 것은, 협대역 필터와 기존 RGB 이미지의 결합에 왕도는 없다는 것입니다. 다시말해 마음에 드는 영상이 나올때까지 BoostFactor를 계속 조절하며 해보시면 됩니다. 


4. H𝛼 프레임을 L 필터에 합치기

때때로 우리는 L 필터(Luminance)에 협대역 필터의 데이타를 합치고 싶을때가 있습니다. 이건 우리가 R 채널과 H𝛼를 합치지 않는 경우에도 적용되는데, L 필터와 H𝛼를 합치면 L 필터의 결과물에 더 많은 데이타를 줄 수 있기 때문입니다. 이렇게 하는 가장 큰 이유는 아시다시피 우주에 가장 많은 원소는 수소이고, H𝛼필터는 어떤 경우에도 가장 많은 데이타를 가지고 있기 때문입니다. 


여러분이 LRGB 이미지 프로세싱을 하고 계셨다면 L 필터 이미지는 아직 모노크롬인 상태로 남아있을 겁니다. 특별히 뭘 하실 필요는 없겠네요. 그냥 L 필터 이미지와 H𝛼 이미지를 로딩하시면 됩니다. 


또다시 PixelMath 프로세스를 엽니다. Reset 버튼을 누르고 Destination은 new image로, Color space는 Grayscale로 설정합니다. RGB/K와 Symbols 항목에 아래의 내용을 입력합니다. 

  • RGB/K: ((HA * L_bandwidth) - (L * HA_bandwidth)) / (L_bandwidth - HA_bandwidth)
  • Symbols: L_bandwidth=300, HA_bandwidth=7
위 Symbols에서 L_bandwidth가 300인 이유는, 대부분의 RGB 필터의 각각 대역이 100nm정도이기 때문입니다. 만약 가지고 계신 L 필터의 대역폭을 아시면 그걸 넣으시면 됩니다. 저의 경우 Baader 필터는 260nm니까 그걸 넣으면 되겠네요. 


이렇게 해보시고 결과물에 별이 좀 많다 싶으면 L-bandwidth의 수치를 줄이면 됩니다. 사이트의 저자는 40nm를 설정했네요. 음.. 수치를 줄이는 것에 너무 스트레스 받지 말라고 합니다. 
여기까지 끝나고 새로운 이미지가 만들어졌으면 PixelMath를 다시 열어 Reset을 하고, 아래의 내용을 RGB/K와 Symbols에 넣어줍니다. 

  • RGB/K: $T + ((CombImg - Med(CombImg)) * BoostFactor)
  • Symbols: BoostFactor=1.0

지난번과 마찬가지로 BoostFactor는 사용자가 마음에 들 때까지 고쳐가며 조절하면 됩니다. 사이트의 저자는 0.75로 결정했습니다. 


결과물이 나왔습니다. 밝은 부분이 좀 더 밝게 표현되었지만 대신 창백한 부분이 좀 더 선명하게 바뀌었습니다. 이렇게 만들어진 이미지는 앞으로 다른 프로세스 과정을 고치며 수정하시면 됩니다. 그리고 선형데이타 처리의 마지막 단계에서 RGB 이미지와 합치시면 되겠네요. 

참고하실 것은 합치게 될 RGB이미지에 이미 협대역 데이타가 들어 있어도 상관은 없습니다. 꼭 협대역 데이타를 특정 필터 하나에만 적용한다는 규칙은 없으니까요. 


댓글