JR Astrophotography Macros v16 (Affinity Photo)

261 ratings

Workflow aids for astrophotography editing with over 100 macros including functions such as star size reduction, various tone stretching methods, multi-bandpass sharpening, diffuse glow, mono data colour mapping and more. These macros work equally well for both OSC (one shot colour) and monochrome data setups.

Please note: V14 and future versions will only be compatible with Affinity Photo V2 and above, as they take advantage of functionality not present in V1. You will receive an "Unexpected Format" error message if you try and install the .afmacros files into V1. The download bundle does however include a ZIP called "Legacy V1 Macros" which contains V13 of the macros that can be installed with Photo V1 (1.10).

Here's a quick list of some functionality the macros provide:

  • Perform automated normalisation tone stretching, logarithmic tone stretching, olour preserving tone stretch (similar to Arcsinh) and mono data tone stretching.
  • Multi-Bandpass Sharpening (an implementation of the popular Absolute Point of Focus sharpening method), which enhances perceptual detail and sharpness in a very pleasing way.
  • A variety of composition setups for different data set combinations, e.g. RGB, LRGB, SHO, HOS, HOO, HaOIII, RGB-HSO, HORGB, HORGB-L... the list goes on!
  • Various sharpening methods: gaussian subtractive sharpening, gaussian kernel edge-mask sharpening, weighted intensity ('background') sharpening, non-linear sharpening to avoid 'panda eyes' around high contrast star detail etc.
  • Monochrome colour mapping for single grayscale data layers.
  • Add diffuse glow and brilliance to highlight detail.
  • A selection of masked tonal macros for finer control over contrast and brightness enhancement.
  • Reduce excessive star detail to promote focus on other deep sky objects.
  • Colour range luminosity enhancement to bring out specific detail.
  • Add live, non-destructive star and background masks. Easily reduce background luminosity and star luminosity with additional macros that utilise these live masks so you can adjust them non-destructively.
  • RGB luminosity layers: boost channel detail e.g. for red spectrum objects.

See the included PDF for installation instructions and a detailed explanation of how to use the macros.

Free to download, but if you want to donate for time and work it's much appreciated :)

v16 change list:

  • Tone stretching macros no longer perform noise reduction: instead, there are now dedicated macros for denoising post or pre tone stretch. This also lets you use an external plugin such as NoiseXTerminator for superior noise reduction
  • Neutral Tone Stretch: a new tone stretching method that provides a more balanced result with less colour bias
  • Pre-Tone Stretch Denoise for RGB, L-RGB and SHO: performs noise reduction individually on each data layer before tone stretching for effective denoising
  • Post-Tone Stretch Denoise: performs aggressive noise reduction on a tone stretched result
  • Tone Compression & Contrast: a great option for adding contrast to the image whilst compressing bright and harsh highlights
  • Tone Compression & Gamma: similar to the above, except the overall gamma is raised rather than contrast enhancement being applied
  • Polynomial Contrast Curve: a good contrast option for most imagery that avoids brightening highlight detail
  • Punch & Saturation: an all-round option to give an image more contrast and colour intensity
  • Compress Highlights: renders a smooth roll-off for highlights whilst preserving colour intensity
  • Super Texture: renders an over-the-top textural enhancement effect. You can then invert the mask and paint back in where you want it to apply, and also reduce the layer opacity if the effect is too strong
  • Vivid Colour Boost: uses a weighted RGB transform to significantly enhance colour intensity, with a particular red bias

v15 change list:

  • Mono Data Stretching
    • This is a completely new approach to tone stretching for monochrome data. Rather than tone stretching the composited, colour-mapped result, these macros will instead tone stretch each mono layer individually. You can colour map using the data setup macros before or after this process. I have found that this approach can yield some much better results for complex nebulae, and it’s easier to pull the colours apart and create a final image with more depth.
    • There are two methods available for RGB, L-RGB and SHO data sets: Mono Stretch, and Mono Log Stretch. The log stretch may work better for clean, high quality data. If the data is not optimal, I would advise trying the standard stretch. Do try both, however, and see which works better for you.
    • Note that this should be considered as an alternative to the existing tone stretching methods, not a replacement! As always, experiment and see which methods work best for your data: indeed, you may find that one method may be exceptional for one set of data, but not another.
  • Stretch Selected Layer
    • The mono data stretching macros also require masking to avoid overexposing bright detail: the masks for this process are based off an average of several different data sets. You may find however that you need more manual control over this process: you can use these macros to stretch an individual layer that you have selected. A Stretched (Merge Down) layer will be created, with a Protect Highlights mask inside it. Configure this mask until the highlight detail looks suitable for that data, then select the parent layer and use Layer>Merge Down to merge it into the initial data layer underneath. You can then repeat this process for all of your data layers until you are ready to colour map them.
  • Redesigned Tone Stretching macros
    • The original tone stretching methods—Normalised, Logarithmic and Colour Preserving—have also received a revamp, and they now protect highlight detail much more effectively.
  • Enhance Mono Layers
    • To aid the mono data stretching process, there are also macros to enhance specific mono layers (e.g. SII, Ha, OIII, R, G, B etc). You can use these to bring out more detail for a specific data layer, e.g. if the SII detail was a bit faint and you wanted to enhance it.
  • Boost Mono Layers
    • These are designed to be used after the tone stretching process and further on in the edit. You may want to simply bring out some more colour or detail in a particular data layer such as OIII, or the G layer. This will copy the specific data layer, move it to the top and enhance its structure whilst preserving highlight detail.
  • Darken Mono Stretched Result
    • When using the new mono data stretching macros, you will often find that the resulting composition is quite bright once all the layers are blended together. This will produce a pleasing brightness reduction, whilst also offering an optional non-linear brightness boost that will even out the contrast for trickier data.
  • Highlight Recovery
    • If you are compositing multiple mono layers together (e.g. RGB, SHO), this macro can be used to recover any blown out highlight detail.
  • Post-Tone Stretch Log Transform
    • I was finding with some imagery (especially L-RGB and RGB compositions) that I needed to pull more general tonal detail away from the background, and was struggling with conventional adjustments. I adapted the Logarithmic Tone Stretch so it could be applied after tone stretching to further bring out subtle detail, with configurable range and blend sliders.
  • Masked Gamma Stretch
    • Creates a structural mask that excludes star detail and applies it to a Levels adjustment, allowing you to perform a non-linear gamma boost. Especially useful when used with individual colour channels (e.g. raising gamma of a weaker colour channel without overexposing bright details).
  • Masked Curves Stretch
    • Performs a masked tone stretch that excludes bright star and nebula detail. Good for increasing brightness and contrast of darker areas.
  • Masked Contrast Boost
    • Applies a gentler curves adjustment that is masked to exclude bright detail. Useful for a general contrast enhancement without significantly brightening detail.
  • Enhance Nebula Structure
    • Enhances nebula structure whilst aggressively excluding bright star detail. The Star Exclusion Mask can be controlled with minimum, maximum and highlight threshold parameters.
  • Masked Gamma Stretch
    • Similar to the ‘masked stretch’ concept that is so popular for boosting fainter detail without overexposing stars, this is best used for subjects with tricky bright areas and star detail. It creates a structural mask and uses it when gamma stretching.
  • Masked Curves Stretch
    • Like the Masked Gamma Stretch, this creates a structural mask and uses it with a Curves adjustment to boost tones in the image without affecting bright detail.
  • Masked Contrast Boost
    • Creates a structural mask and uses it with a Brightness / Contrast adjustment to provide a decent contrast enhancement.
  • Highlight Protected Tone Lift
    • This has replaced the ‘Final Tone Lift’ macro and is more or less the same: it simply lifts the overall brightness and contrast of your composition without overexposing the highlights.
  • Nonlinear Tone Boost
    • A nice simple equation filter option for achieving a tonal boost that focuses on raising darker tones. This is generally useful if you are trying to brighten up your composition but Curves or other adjustment layers just aren’t working.
  • Weighted Intensity Mixer
    • Lets you mix together different weighted intensity calculations based on the RGB channel data. This could be useful if you are struggling to balance the luminosity of your different colours and want to quickly experiment with various blends.
  • Weighted RGB Tonal Boost
    • Lets you add a subtle brightness and tone boost with configurable RGB contribution, in addition to offset sliders which allow you to gradually raise the brightness of the colour channel information in a gentle, non-linear fashion.
  • Dual Band Colour Mixer
    • An experimental option: allows you to mix three different weighted intensity calculations for RGB channel data, producing a look similar to dual band compositions (e.g. HaOIII, HaSII). For further experimentation, try changing the layer’s blend mode to Saturation or Hue.
  • Star Size Reducer
    • This has replaced the Star Eater macro. This is a less surgical and cleaner application that can be controlled with a luminosity mask to protect shadow detail from ‘circular artefacting’. It generally dims and reduces the overall size of star detail.
  • Reduce Star Intensity
    • This macro has been updated and is now more effective. It also comes with a Protect Shadows mask that can be configured to prevent ‘circular artefacting’.
  • Enhance Nebula Structure
    • Similar to the existing Enhance Structure macros, this uses a different method to create a structural mask and may provide a subtle—yet useful—difference in rendering.
  • Diffuse Glow
    • This has been updated to avoid darkening the majority of the image, and instead brighten the diffuse areas.
  • Brighten Star Centres
    • Sometimes, with aggressive masked stretching or stretching that protects highlight detail, you will find that star centres are darker than their surrounding glow areas and the result looks odd. This macro will create a star mask using a convolution filter and enhance the brightness of the star centres to try and mitigate this.
I want this!

Powerful and useful macros for astrophotography workflows in Affinity Photo


(261 ratings)
5 stars
4 stars
3 stars
2 stars
1 star

JR Astrophotography Macros v16 (Affinity Photo)

261 ratings
I want this!