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 15,402 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.22.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.22.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.22.0
File Size Uploaded Provenance Actions
hebog-0.22.0.tar.gz 479.1 kB With provenance Details for hebog-0.22.0.tar.gz

Built distribution (wheel)

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

Total release size: 887.2 kB

Release files / hebog-0.22.0.tar.gz

Download URL hebog-0.22.0.tar.gz
Size 479.1 kB
Tags Source
SHA-256 checksum
How to use checksums
6b7b59279adbae1052657b8e9ef07e88332836532f5bc2ccdac1863ab734f42d
BLAKE2b-256 checksum
How to use checksums
f6d3ed2e8d30e855ad2b38d04dca1cd018032f6c847094ac25e5a09ea14dfc3f
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 17, 2026.

Transparency log

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

Download URL hebog-0.22.0-py3-none-any.whl
Size 408.1 kB
Tags Python 3
SHA-256 checksum
How to use checksums
5fe6b230311987aeb42d3ca68e545443d682809d2494a1a00771964867cf37de
BLAKE2b-256 checksum
How to use checksums
b3e9eeb4b8ac244a11fac0bfc370fbd789f319e620ab36c53944e9287a075d54
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 17, 2026.

Transparency log

Security for hebog 0.22.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.22.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 17, 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