Jump to content

Banner.jpg.b89429c566825f6ab32bcafbada449c9.jpg

mike1485

Members
  • Posts

    62
  • Joined

  • Last visited

Posts posted by mike1485

  1. Dear fellow astrophotographers

    Since our first release of the Generalised Hyperbolic Stretch script, there has been a huge uptake in its use, due to the control and flexibility provided by the unique equations and methodology.   We are grateful for the interest shown and the constructive feedback we have received.

    We are now pleased to offer the GHS process module for PixInsight. This brings the benefits of the GHS equations, offered by the script, and integrates fully into the PixInsight environment, including the real-time preview and the readout functionality, as well as taking advantage of the performance improvements possible with compiled multi-threaded code.

    Like the script, we are providing the new process free of charge. To obtain the GHS process module you only need to have the current ghsastro repository in your managed repositories list – the address is: https://www.ghsastro.co.uk/updates/.

    Once downloaded, the GHS process will also be available as an External Scriptable Object making it easy to incorporate into your own PixInsight scripts.  Full updated documentation is available from within the module, describing its features and use.

    We will continue to make the script available for download from the same repository address.  The script has been modified to take advantage of the new process where possible/available.

    As ever, we welcome all comments and feedback.

    Clear skies and happy stretching!

    Mike Cranfield and Dave Payne

    • Like 7
    • Thanks 3
  2. Hi Mark

    Thanks for giving GHS a go and posting this  question, I'm sure you are not alone in this sort of question so let me have a go at some pointers - watching the videos should give some more and better help.

    Are you only moving the D slider?  If so this will give the blow out you describe.  For your first stretch you will likely need to set the second "b" slider to something large - eg 8 - 10.  You should also set the SP slider to where the pixel values move from background to subject (usually somewhere just left or right of the histogram peak depending upon the subject) - check out the videos for how to use the preview readout to determine this value.  Your first stretch will protect the stars well but will likely leave a low contrast image.  

    Your second stretch needs to set SP at a value where you want to add contrast (eg interesting part of the nebulosity or spiral arms of the galaxy etc) then set a mid value for b (3-5 may work).  Then use the D slider to apply the stretch.  This should start making the image look good but you can carry on adding contrast/tweaking at will.  Check out the videos for more help on this.  I hope you can get this working OK for you - blown out centres is absolutely not a feature of GHS when used in this way!

    My collaborator, Dave Payne, and I did a video for TAIC last weekend which you can access here.  There is a practical run through of using the GHS script to stretch an image of M51 which starts at 53 minutes in, that might help illustrate the above.

    Let us know how you get on.

    Mike

     

    • Like 2
    • Thanks 1
  3. I am pleased to announce the release of Generalised Hyperbolic Stretch (GHS) V2.2.0.

    GHS is a Pixinsight script that provides an integrated environment to facilitate the design, appraisal and application of stretches to your images.  The script helps avoid star-bloat and allows highly targeted addition of contrast throughout your images.

    The principal new feature in this version is the addition of a comprehensive pixel enquiry facility on the preview image.  By clicking anywhere on the preview, you will see a readout for pixel values in the area you have clicked.  This can be used directly to set relevant parameter values for your stretch.  In this way you can design your stretches in a far more intuitive and precise way to achieve the exact results you want.

    More detail on the new features is available on the GHS website (https://www.ghsastro.co.uk/v2-2-0-notes/) and via the tooltips from within the script.  A tutorial video is also in the process of production and will be available shortly.

    If you have the GHS repository (https://www.ghsastro.co.uk/updates/) set up in your list of managed repositories, then you will pick up the new version next time you start up Pixinsight.  If you prefer to install manually, the files are available at the GHS Github repository (https://github.com/mikec1485/GHS/releases/tag/v2.2.0/).

    As ever, feedback is always welcome.

    Also, David Payne and I have been invited on to The Astro Imaging Channel on YouTube for a live show presenting GHS on 29 May 2022.  Building on a brief explanation of the fundamentals of image stretching, we will be exposing the “secret weapons” of GHS and demonstrating how these have been implemented in the new GHS V2.2.0 to allow creation of “designer stretches”.  The live show starts at 9:30pm EDT, or if that time doesn’t suit, it will be available afterwards for view at the TAIC YouTube channel (https://www.youtube.com/c/TheAstroImagingChannel/).

    Happy stretching and clear skies.

    Mike Cranfield

     

    • Like 4
  4. On 22/04/2022 at 17:12, Lee_P said:

    Big thanks to @mike1485 and @Gunshy for making the excellent Generalised Hyperbolic Stretch (GHS) plug-in for PixInsight, which I used for this image.

    Thanks for the mention Lee - it's great to see GHS being used to good effect in your image.

    On 23/04/2022 at 19:38, vlaiv said:

    There is also fundamental difference between stretching and saturation. Stretching is changing exposure on a pixel level - exposing different pixels to different amount. By doing this you alter amount of received light but you don't change its nature.

    Changing saturation is changing type of light that you recorded - not only its intensity.

    I think this over simplifies things vlaiv.  Stretching an image will generally affect the saturation.  If (r, g, b) are the red green and blue values for a given pixel then saturation is generally measured as 1 - (min(r, g, b) / max(r, g, b)).  If an intensity transformation (stretch) increases all pixel values by the same proportionate amount, this formula clearly shows that saturation would be preserved.  However, typically most initial stretches apply an intensity transformation that stretches lower values (eg min(r, g, b)) proportionately more than higher values (eg max(r, g, b).  Hence generally you will actually lose saturation as you stretch from linear.  That is why images tend to look a bit washed out when you first move to the non-linear state.

    One way round this would be to stretch all three channels by the same proportional amount.  This is the approach used by the arcsinh stretching process.  Effectively, instead of stretching each r, g, b channel separately, a single stretch ratio is calculated by reference to the average of the r, g and b values and this same ratio is applied to all three channels.  In this way saturation is maintained. Many image processors like using the arcsinh process precisely because of this feature.  

    However, it is not the arcsinh intensity transformation that preserves colour, rather it is the way it is applied - ie in a way that ensures each channel is stretched by the same ratio.  This same approach has been incorporated as an option within the GHS script as the "Colour stretch" option.  GHS gives the benefit of using this approach alongside a range of different intensity transformations including arcsinh and mtf (as used in Histogram Transformation) but also with the generalised hyperbolic equations which give the script its name (a family of extremely flexible equations well adapted to stretching astronomical images).

  5. I have today released version 2.1.0 of GHS. A number of features have been included in this update, including the following:

    • Stretches are now recorded in a view’s history with a fully parameterised script instance, allowing this to be dragged and repeated on another view for example.
    • You can now transfer the selected readout point on the histogram to the stretch parameters by clicking the reset button to the right of the relevant parameter’s slider.
    • You can now toggle the preview between “before” and “after” by ctl-click (cmd-click on a Mac) on the preview image.
    • The maximum zoom available on the histogram zoom slider can now be increased in the preferences dialog (use with care on slower systems!).
    • A new stretch visualisation using a greyscale mapping has been added below the histogram – in common with other chart features, this can be turned off if preferred in the preferences dialog.
    • The histogram display has been improved for single channel (R, G or B) stretches so the histogram of the stretched channel can more easily be judged against the unstretched channels.

    Plus a number of other changes/improvements/fixes.

    Many of the changes introduced in this release have been motivated by the excellent and helpful feedback we have received from users. I would like to take the opportunity to thank everyone who has downloaded GHS and particularly those who have taken the time and trouble to provide their feedback. Your feedback helps to make GHS as useful as it can be for everyone, and your comments help motivate Dave and I in developing the script.

    Clear skies and happy stretching

    Mike

    • Like 1
    • Thanks 4
  6. I thought people would want to know that Dave Payne has released the next in his GHS2 tutorial series.  Dave's tutorial videos now cover the following:

    Tutorial 1: Introducing GHS Version 2

    Tutorial 2: More advanced stretching

    Tutorial 3: More options, colour stretch and image blending

    Links to these videos as well as links to the excellent series prepared by Paulyman Astro  can be found on the https://ghsastro.co.uk website.

    • Like 2
  7. 1 hour ago, ArEnJee said:

    Hi, I've installed GHS v2 to PixInsight for the first time and it works really well, so many thanks for this.  However, after installing this I am now seeing 'type errors' all over the place when I run other scripts, e.g. eZprocessing suite scripts - any ideas?

    image.png

    image.png

    image.png

    image.png

     

    Something has clearly gone awry there - I don't know if this is a GHS related problem, I am not aware of the issue before.  Are there any other warning/error messages earlier in the GHS session that might give a clue to what may have happened? I would exit Pixinsight and fire it up again - that should clear everything down.  If it happens again and seems related to GHS, if you could try to recall what you were doing in GHS and let me know, I will take a closer look at the issue.

  8. 7 minutes ago, Budgie1 said:

    Okay, I'm sold on the new version! :hello2:

    I completely reprocessed an image from last weekend of the Cone Nebula region and the only real change was the use of GHS V2, instead of the PI Histogram Transformation for the stretch. Although the colours have changed quite a bit by leaving out the ColourCalibration & PhotometricColourCalibration, which were both used on the original processing, but made it very red. 

    I have been able to control the centre of the Christmas Tree Custer a lot better and it's no longer blown out, with added colour & detail. This is only my first attempt with the script and I'm sure things will improve further with more practice.

    Top is the GHS version & below is the original.

    443795443_NGC2264-ConeNebula-4h52m-NB-05032022.png.c8ea4df4afc39f617cecaaffe1b5d0e2.png

    2133802270_NGC2264-ConeNebula-4h52m-NB-05032022.png.a801fee77c34c4afab28a5c343f7ed17.png

    Nice work Martin.  That is a great image - thanks for sharing it.

    Mike

    • Thanks 1
  9. Hi Budgie

    The repository information you need to use is: https://www.ghsastro.co.uk/updates/

     

    The GitHub repository is available so people can download the files and install manually if they prefer but using the ghsastro repository is my recommended route as it is much easier and means you will automatically receive any updates. 

    I hope this sorts things out for you but let me know if you are still having problems. 

    • Thanks 1
  10. I thought people may want to know of a couple of great new videos that have been released.  Dave Payne has released the first in his GHS2 tutorial series which should be a great place to start to get acquainted with the tool.  Paulyman Astro has also released a video showing how he has used the new functionality in GHS to implement an "Eric Coles" type approach to image processing which can really help make your images pop!  Links to both videos can be found on the https://ghsastro.co.uk website.

    • Like 3
  11. Experience seems to be that Starnet++ (even v2) works better if the image is stretched first, even if only mildly.  To this end people may like to know of the GHS stretching script for Pixinsight.  Using GHS your image can be stretched (remember the parameters you use) - you can then remove the stars with Starnet++ - and GHS then allows you to enter the same stretch parameters but check the "Invert Transformation" checkbox.  GHS will then apply an exact mathematical inversion of the original stretch to get you back where you started, but without stars.  I have just released version 2 of the GHS script if anyone is interested - the details are in this post: GHS Version 2 Release.

    • Like 3
  12. 52 minutes ago, vineyard said:

    Hi Mike, thanks for this.  GHS is great - cannot wait to try out v2.  I just tried to add the update repository and got this error msg "You have specified an unsupported update repository protocol".  It may be b/c I'm still on 1.8.8-6 not the latest version (1.8.8-8?) as my MacBook OS doesn't support the latest Pixinsight (it's too old!).

    Cheers

    Hi - my mistake - there should be two forward slashes after the https:  I have corrected in the OP now.  Sorry about that and thanks for picking it up. (1.8.8-6 should work fine).

    Cheers

    Mike

    • Thanks 1
  13. In December 2021, I issued version 1 of the Generalised Hyperbolic Stretch (GHS) script for Pixinsight.  Since then many Pixinsight users have incorporated GHS into their workflow to great effect (including competition winning images!)

    The script provides a complete integrated environment to define, analyse and apply stretches within Pixinsight.  It incorporates the GHS equations which allow a high degree of control over your image stretches, adding contrast exactly where you want it, preventing bloated stars, and controlling background noise. 

    Here are just a few comments from GHS users:

    ·      “incredible breakthrough improvement to linear stretching in PixInsight”

    ·      “This script will remain a permanent part of my workflow, it's really fantastic”

    ·      “it’s become my first port of call for the stretch”

    ·      “really makes it feel like you are in control of what happens to the image”

    ·      “I can't say enough good things about how Mike's script created a superb framework for stretching images and removed most of the guesswork from this part of the processing”

    I am now really pleased to make version 2 of GHS available.  The key improvements from version 1 include the following:

    ·      Real-time preview

    ·      Luminance, saturation and colour stretches

    ·      Full masking support

    ·      Additional stretch types

    ·      Secure repository updates (much easier to install!)

    ·      Dedicated website (https://ghsastro.co.uk) with tutorial videos and more – available directly from within the script

    If you are a Pixinsight user and haven’t yet tried GHS, I would really encourage you to give it a go – it’s free!  If you are already a GHS user, thank you for your support and to many of you, thanks also for your feedback and suggestions.  Many of your suggestions have helped inform the content of this release – please do keep them coming!

    To install GHS into Pixinsight, add the repository information as follows:

    ·     If you have GHS Version 1 installed then remove this first, then ...

    ·     From within Pixinsight go to: Resources>Updates>Manage Repositories

    ·      In the Manage Update Repositories dialog, click the Add button

    ·      In the URL box type the GHS repository information as follows: https://www.ghsastro.co.uk/updates/

    ·      In the Add Pixinsight Repository dialog, click the OK button

    ·      In the Manage Update Repositories dialog, click the OK button

    When you next sign back into Pixinsight you will receive a message to say there are updates available which will include GHS.  Proceed in the same way as you would for any Pixinsight update (including restarting Pixinsight) to complete the installation.

    Your comments, feedback and suggestions are very welcome.

    Happy stretching and clear skies!

    Mike Cranfield

    • Like 3
    • Thanks 6
  14. On 26/01/2022 at 18:12, Gunshy said:

    I just wanted to show a revision I made to some year old NB data I had on NGC2337 (Rosette).  I was able to really bring out the nebulosity around the Rosette and control stars using GHS.  To avoid bringing out noise as well, Mure noise reduction helped tremendously. 

    (The handling of the stars was my own experimentation with Starnet to substitute RGB and I used the method of Cuiv the Lazy Geek to achieve my take on the Hubble pallette)

    NGC2237_LR_NR_Done4.thumb.jpg.d5c8c14fc57b24ecae1bad1af8591b23.jpg

    Hi Dave - this is just stunning :) !

    • Like 1
    • Thanks 1
  15. 20 hours ago, Lee_P said:

    Thanks for putting this all together @mike1485 and @Gunshy. I've just been trying it for the first time on some fresh M45 data. Here are some comparisons using three different stretching methods:

     

    Data stretched by applying STF to the Histogram:

    STF.JPG.ce69bff21a8b6e24995bc310a064bac7.JPG

     

    Data stretched using EZ Soft Stretch:

    EZ.JPG.273e383d891407ac3874e1b9c427cc69.JPG

     

    Data stretched using GHS:

    GHS.JPG.ae8f7294cb1b05d2b3d954614b9f603b.JPG

     

    GHS obviously has a lot of potential! There's loads more nebulosity, and the stars are nicely controlled too. And this was just my first play around with it. I'm processing the data now, but already I've discovered one happy result of using GHS: stars are so well controlled that Topaz Denoise doesn't have trouble with them in the same way it often does after stretching with the other methods.

    If the developers are open to requests, I'd be very interested in a more user-friendly tutorial on the interface. I relied on the Zoom recording posted on YouTube, and that was just enough info to start me off. It would also be wonderful if there could be a real-time preview of your adjustments onto the actual image, rather than just a histrogram. No idea if that's possible.

    Anyway, thanks again for making this tool!

     

    Hi Lee

    Thanks for sharing these images.  They give a really great comparison of various stretching methods.  I am glad you are finding the tool useful and really interested to hear your observation regarding Topaz Denoise.  It's not software I use but I know a lot of people do!

    Thanks also for your suggestions for future development.  We are working on a "version 2" so it is always helpful to know what people would find useful (without any promises I'm afraid - its not our day jobs!)

    All the best and clear skies!

    Mike

    • Like 4
  16. 11 hours ago, Annehouw said:

    To give a better idea of what GHS can accomplish, I made a compilation of 4 stretching methods:

    1. Generalised Hyperbolic Stretch (GHS),
    2. Masked Stretch (MS),
    3. Histogram Transformation (HT)
    4. Arcshinh stretch (ASH), which is actually a combination of a very mild HT stretch followed by ASH (otherwise it becomes a bit ugly...).

    The stretches are not 100% equivalent, but it gives an idea.

    GHS-comparison1.thumb.jpg.bc2217106047672f862cad167972a9a9.jpg

     

    The inserts show the bright yellow star on the right and a star to the left of this star. 

    As can be seen, GHS looks a lot like MS. MS retains a bit more color, but the downside of MS is that it has created a harsh plateau in the star brightness, resulting in a distracting dark ring in the bright star. 

    HT puts a lot of light into the halo and gives a relatively contrasty image (to be corrected by Local Histogram Transormation or HDRMT).

    ASH is the colorful one. That is nice. Unfortunately, it also gives rise the the scary phenomenon of "rainbow stars", which you can see in the inset of the smaller star. This is an artifact that is very difficult to correct.

     

    For the "final" M13 image I used the GHS stretch as a basis followed by stretches to bring a bit of contrast into the image, increased saturation on the globular cluster and a bit on the stars, desaturation on the background and local stretches to bring out the deteils in the core of M13.

     

     

    That is a stunning image, and some excellent and very useful "real world" analysis/comparison.  Thank you so much for sharing this.

    • Like 2
  17. 1 hour ago, vineyard said:

    That video was v helpful - thank you.  And I have to say so far I am really liking the GHS tool!  Excellent.  Went back to some data on IC410 Tadpoles & played around with it (but w/o any HT, Curves Transformation or LHE).  And I m-u-c-h prefer what came out this way.

    Workflow was 4 main steps:

    1. ABE then GHS a few times (using the sliders as per the video) to generate an image to pull out range masks & star masks

    2. With those masks, went back to the ABE image for Deconvolution.  And then GHS again a few times, tweaking the settings.

    3.  Went back to the deconvolved ABE & did Photometric Colour Calibration (PCC wouldn't work on the GHSed image - I guess b/c its stretched?).  Then GHS a few times again.

    4.  Pixel Math of the output images from 2 & 3 - the PCC image alone was noisier but had a bit more colour in darker areas which I couldn't yet figure out how to coax from GHS alone.  So just a smidgeon of Image 3 in this Pixel Math.

    I definitely prefer what came out via this than the first time I played w this data using now old-for-me :)  techniques.

    Since there are more clouds ahead, will try & play w old Fireworks Galaxy data too.

    Thank you again for creating & sharing this tool - another great example of the astronomy community spirit!

    PS - StarXterminator doesn't work on my laptop (old) so it'd be v interesting to see what would happen in other images if you separate stars from nebulosity & then play separately w GHS on each & then recombine?

    IC410_7h24_APP_PI GHS_crop.png

    IC410_7h24_APP_PI GHS_crop closer w tadpoles.png

    IC410_7h24_APP_PI GHS_crop closer.png

    Thanks for sharing your workflow, images and experience with the GHS script.  

    To answer your question about Photometric Colour Calibration, it is designed for use only on linear images.  As you suspected, PCC should not be used on stretched images.  

    I notice you say you did not use HT, CT or LHE.  You are probably already aware of this but to avoid any confusion, GHS is a great alternative to HT and CT but LHE is a rather different beast.  While GHS, HT and CT all apply a global transfer function to each pixel, LHE transforms each pixel using a transfer function derived from the histogram of the local neighbourhood of that pixel (hence the name!)  So I would suggest keeping LHE in your workflow if the image warrants it, even if using GHS for stretching.

    The images look great, I look forward to seeing the Fireworks Galaxy in due course - it doesn't look like the clouds will be rolling back any time soon :( !

    Mike

    • Like 3
×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue. By using this site, you agree to our Terms of Use.