GNU Astronomy Utilities - Tasks: task #15913, Python wrappers for Gnuastro's...
You are not allowed to post comments on this tracker with your current authentication level.
task #15913: Python wrappers for Gnuastro's programs
Submitter: | Mohammad Akhlaghi <makhlaghi> | ||
Submitted: | Mon 08 Mar 2021 01:38:29 PM UTC | ||
Should Start On: | Mon 08 Mar 2021 12:00:00 AM UTC | Should be Finished on: | Mon 08 Mar 2021 12:00:00 AM UTC |
Category: | All Gnuastro | Priority: | 5 - Normal |
Item Group: | Enhancement | Status: | Done |
Privacy: | Public | Percent Complete: | 100% |
Assigned to: | None | Open/Closed: | Closed |
Effort: | 0.00 |
Sun 29 Jan 2023 12:51:33 PM UTC, comment #1: |
Mohammad Akhlaghi <makhlaghi>![]() |
Mon 08 Mar 2021 01:38:29 PM UTC, original submission:
Many processing pipelines use Python as their high-level language (for example Euclid, where some components use Python). In the future, we do plan to add direct Python access to Gnuastro's libraries (for example in task #13786). However, that will take time (since it is a pretty low-level feature).
In the meantime, to allow easy access within Python, we can write wrappers to call Gnuastro's programs. For example, someone may want to run NoiseChisel on an image (as a Numpy array in Python). We can write that image to a file, run NoiseChisel over that file, then read the output FITS file as a Numpy array and delete the file. The same can be done for other programs. Or useful complex scenarios (for example using Arithmetic to stack images in a unique way, or calling NoiseChisel+Segment+MakeCatalog, or etc).
I have started a (currently empty) repository on Codeberg for this [1]. As of this moment (Commit 911803edbb), it just has a 'README.md' file, but please feel free to add useful python functions for now in separate files. As it grows, we'll add a Python module structure around it.
|
Mohammad Akhlaghi <makhlaghi>![]() |
No files currently attached
Depends on the following items: None found
Items that depend on this one: None found
There are 0 votes so far. Votes easily highlight which items people would like to see resolved in priority, independently of the priority of the item set by tracker managers.
Through pyGnuastro, we now have Python wrappers for Gnuastro. So I am closing this task.
At this moment, pyGnuastro is packaged in test.pypi, however, it doesn't have much functionality. With the completion of task #16263, we will be able to easily insert many functions in pyGnuastro :-).