별상 축소와 별 처리: 방법의 진화와 PixelMath 실습
별상을 적절히 축소하면 촬영한 주제를 더 두드러지게 할 수 있습니다. 특히 은하수 주변처럼 별이 밀집한 영역에서는 처리하지 않으면 하늘 가득한 별이 성운기를 심하게 방해합니다. 이 글에서는 별상 축소 방법을 예전의 침식(Erosion) 필터부터, 현재 주류인 스타리스 이미지 기법과 PixelMath 실습까지 한 번에 정리합니다.
예전 방식: 침식(Erosion)을 이용한 별상 축소
가장 이른 시기의 별상 축소는 침식(Erosion) 에 의존했습니다. Photoshop에서는 「최소값(Minimum)」 필터를, PixInsight에서는 Erosion을 사용해 선택 영역의 별을 침식시켜 별을 작게 만드는 방식입니다. 좀 더 공을 들인다면 에지 마스크를 함께 써서 별 중심까지 침식되지 않도록 합니다.
솔직히 말하면 저는 원래 별상을 그다지 축소하지 않았습니다. 전통적인 Erosion은 별을 자주 망가뜨리기 때문입니다(예를 들어 둥근 별을 마름모꼴로 만들거나, 다이아몬드 별을 훼손하는 식입니다). 하지만 은하수 영역에 자리한 용골자리 대성운 같은 일부 대상은 별 마스크를 아무리 잘 만들어도 완성본에 여전히 대량의 별이 성운기를 방해한 상태가 남아, 이럴 때는 어쩔 수 없이 별상을 축소해야 합니다. 그렇기에 침식 축소의 가장 큰 약점은 마스크 품질에 극도로 민감하다는 점입니다. 마스크가 잘 만들어지지 않으면 별 중심과 그 주변에 아티팩트가 생기기 쉽습니다.

전환점: 스타리스 이미지로 별상을 축소하다
시대의 진보로, 별상 축소는 슬라이더를 당기기만 하면 완료되고, 어느 크기 등급의 별을 축소할지도 자유롭게 지정할 수 있는 것으로 점차 바뀌었습니다. 핵심은 이것입니다. 사람들이 별 제거 도구(StarNet++ 등)를 단지 별을 제거하는 데뿐 아니라 별상을 축소하는 데 쓰기 시작했다는 점입니다. 2021년에 이르러 스크립트화된 뒤로는 더욱 편리해졌고, Photoshop의 최소값 필터나 PixInsight의 Erosion은 이미 그다지 유행하지 않게 되었습니다.
PixInsight에는 바로 쓸 수 있는 별상 축소 스크립트가 등장했습니다. 이것은 최소값 필터나 Erosion을 쓰지 않고, StarNet++과 Contour Mask를 조합하는 방법으로 이를 구현합니다.

여기서 잘못 알기 쉬운 점을 하나 짚어 두겠습니다. StarNet++의 그 「Create star mask」 옵션이 생성하는 것은 사실 마스크가 아니라 제거된 별 자체입니다. 만약 PixInsight의 PixelMath나 Photoshop의 레이어로 이 star_mask를 이미 별을 제거한 이미지에 다시 더하면, 별을 제거하지 않은 원본 이미지와 거의 동일한 것을 얻게 됩니다.

축소 후 별 크기가 모두 똑같아지는가
어떤 동호인이 별상을 축소하고 나면 별 크기가 모두 똑같아진다고 말한 적이 있습니다. 정말 그럴까요? 실은 그렇지 않습니다—축소된 별의 크기는 주로 원래의 별 크기와 별상 축소 마스크에 달려 있습니다.
실무에서는 축소할 때마다 작게 만들 별의 유형을 고르고(중소형 별이 중심), 별 크기에 맞는 적절한 마스크를 만들기 때문에, 축소한 뒤에도 별 크기에는 여전히 차이가 있습니다. 다만 별 주변에서 축소의 흔적을 볼 수 있을 뿐입니다. SL 17의 확대 이미지를 예로 들면, 이는 별상을 모두 두 번 축소한 결과입니다(저는 지금까지 두 번을 넘겨 처리한 적은 없습니다).




PixelMath 별상 축소 실습(비선형 상태)
스타리스 이미지로 별상을 축소하는 작업은 PixInsight에서 PixelMath로 정밀하게 완수할 수 있습니다. 단계를 분해하면 다음과 같습니다.
- 이미지 파일 A와, A의 스타리스 이미지 파일 B를 준비합니다.
- STF와 HistogramTransformation을 함께 써서 A와 B의 밝기를 동시에 낮춥니다(midtone을 오른쪽으로 이동).
- 밝기를 낮춘 A와 B를 각각 반전합니다(키보드 Ctrl+I).
- 반전한 A를 반전한 B로 나눠 반전된 별 이미지 C를 얻습니다(PixelMath).
- C에 B의 반전을 곱해 축소된 별 이미지의 반전 D를 얻습니다(PixelMath).
- D를 반전해 정상적인 축소 별 이미지로 되돌립니다(Ctrl+I).
이 중 5, 6단계는 사실 screen 블렌딩 모드의 공식 그 자체입니다. 축소 폭을 더 강하게 하고 싶다면 2단계에서 A와 B의 밝기를 더 낮추면 됩니다. 개념을 나타내는 공식은 다음과 같습니다.
afterimage = ~((~mtf_low(beforeimage) / ~mtf_low(starless)) * ~starless)

같은 방법은 Photoshop이나 Affinity Photo에서도 재현할 수 있습니다. 차이는 레이어를 써서 한다는 점이며, 레이어 간의 블렌딩 모드(blending mode)도 조금 다릅니다.

핵심: 별은 「반전 나눗셈」으로 올바르게 추출해야 한다
많은 사람이 스타리스 방식으로 이미지를 보정하고도 마지막에 별을 다시 더하는 단계에서 실패하는데, 그 핵심은 별을 어떻게 추출했느냐에 있습니다.
만약 단순히 스타리스 이미지를 원본 이미지에서 빼서 별을 얻은 뒤 그 별을 다시 더하면, 결과는 흔히 별이 어둡고 색도 올바르지 않아 마치 레이어 불투명도를 낮춘 것처럼 보입니다. 원인은 별 내용의 일부가 스타리스 이미지 쪽에 남아, 뺄셈으로는 별을 완전히 추출하지 못했기 때문입니다.
더 나은 방법은 반전 나눗셈으로 완전한 별을 추출하는 것입니다. 스타리스 이미지 처리를 마친 뒤 곱셈 또는 반전 곱셈(screen 블렌딩 모드)으로 별을 되돌립니다.

선형과 비선형: 추출과 되돌림의 공식이 다르다
RC Astro가 StarXTerminator(SXT)를 발표한 이후, 별 제거의 적용 범위는 비선형 상태에서 선형 상태로까지 넓어졌습니다. 다만 선형 상태와 비선형 상태에서는 별을 추출하는 단계·공식과 별을 되돌리는 단계·공식이 조금 다르며, 이 점은 자주 간과됩니다.
비선형 상태(이미지가 이미 크게 스트레칭되어 픽셀 간이 원래의 선형 관계가 아닌 상태):
- 별 추출: SXT에서 「Unscreen Stars」에 체크하거나, 별 제거 후 반전 나눗셈 공식
~(~Original_Nebula / ~Starless_Nebula)으로 별을 얻습니다. - 별 되돌림: PixelMath에서 반전 곱셈 공식
~(~Nebula * ~stars)을 씁니다. 이것이 바로 Screen Blending의 수식입니다.
선형 상태(인테그레이션 후, 크게 스트레칭하기 전으로, 픽셀 간이 원래의 선형 관계를 유지하는 상태):
- 별 추출: SXT에서 「Unscreen Stars」에 체크하지 않습니다.
- 별 되돌림: PixelMath에서 덧셈 공식
Nebula + stars을 씁니다.

자기 이미지가 어느 상태에 있는지 분명히 하고, 대응하는 공식으로 별을 추출하고 되돌리면, 별을 되돌린 뒤 어두워지거나 색이 변하거나 아예 실패하는 문제를 피할 수 있습니다.