Skip to main content

Hebog

CI release-please Docs codecov License

Hebog is a scalable source finder for radio continuum images. It is experimental, and runs in a single process or on a Dask cluster. For each FITS image it:

  1. estimates the background and noise;
  2. detects compact and extended emission;
  3. separates, fits and measures sources; and
  4. publishes a source catalogue, a noise (RMS) image, a source mask and diagnostics.

How Hebog finds sources explains each step with diagrams.

Hebog aims to be a fast, scalable source finder that is easily integrated into next generation radio astronomy data processing pipelines such as Rapthor. It can also be used on its own from Python.

Status

  • Experimental. Releases are 0.x and may change the API or output formats. Pin an exact version and read the release notes before upgrading.
  • Not yet scientifically qualified. Hebog is compared against PyBDSF and Aegean on simulated images with known sources, but these checks are development evidence rather than qualification for survey use. See scientific status.
  • Supported inputs: one FITS image in Jy/beam with ICRS or FK5 J2000 sky coordinates and at most 22,500 pixels on each side.

Current capability and release status lists the full input requirements and known limitations, and progress against goals summarises on one page where development stands against the project's telescope, Rapthor, science, performance, scalability and release goals.

Installation

Hebog is experimental: 0.x releases can change the API, the outputs and the measurements, so pin the exact version. Install it from PyPI into a Python 3.12 to 3.14 environment (releases before 0.22.0 are on GitHub only):

pip install hebog==0.23.0

Example

from pathlib import Path

from hebog import SourceFinderConfig, SourceFinderRequest, find_sources
from hebog.executors import SerialExecutor

request = SourceFinderRequest(
    image_path=Path("image.fits"),
    output_directory=Path("output"),
    run_id="example",
)
config = SourceFinderConfig(
    detection_threshold_sigma=5.0,
    island_threshold_sigma=3.0,
    minimum_island_pixels=7,
)
result = find_sources(request, config, SerialExecutor())
print(result.catalogue_path, result.source_count)

The output directory must not already exist; running the same request again returns the products already there. The source-finding tutorial explains the settings, the products and how to run on Dask.

Documentation

Development

Install uv and just, then:

git clone https://github.com/gemmadanks/hebog.git
cd hebog
uv sync --all-groups
just check    # formatting, linting, type checks and fast tests
just --list   # all test, documentation and packaging commands

Contributions use Conventional Commits. AGENTS.md describes the project's working rules, test suites and review checklist.

Citation and licence

If Hebog contributes to your research, please cite it using CITATION.cff. Hebog is distributed under the BSD 3-Clause License.

Metadata

Release files for hebog 0.23.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for hebog 0.23.0
File Size Uploaded Provenance Actions
hebog-0.23.0.tar.gz 488.4 kB With provenance Details for hebog-0.23.0.tar.gz

Built distribution (wheel)

Table of built distributions (wheels) for hebog 0.23.0
File Interpreter ABI Platform Actions
hebog-0.23.0-py3-none-any.whl Python 3 none any Details for hebog-0.23.0-py3-none-any.whl

Total release size: 898.0 kB

Release files / hebog-0.23.0.tar.gz

Download URL hebog-0.23.0.tar.gz
Size 488.4 kB
Tags Source
SHA-256 checksum
How to use checksums
38561bb00db19c9e3b5f05a8c5199dd40f2c833c95a08ac97fe10d9461c4dc48
BLAKE2b-256 checksum
How to use checksums
0e981bcf408333bfc42b5e709c6dfb16d39e8ff3ee71773f089a718d43db7065
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 20, 2026.

Transparency log

Release files / hebog-0.23.0-py3-none-any.whl

Download URL hebog-0.23.0-py3-none-any.whl
Size 409.6 kB
Tags Python 3
SHA-256 checksum
How to use checksums
70186f90ca5dd5a84842028c752edace642e0c64cd74008c98cdff216794baef
BLAKE2b-256 checksum
How to use checksums
97effbe60f62699114c514a4b58b010feeaa854cd4bd6c1155706568130a13ec
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 20, 2026.

Transparency log

Security for hebog 0.23.0

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

Full provenance

All 2 files in this release have been uploaded with provenance metadata.

Select from 2 files

Attestation for hebog-0.23.0.tar.gz

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 20, 2026.

Transparency log

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page