Implement ilabel: fast pixel-based region labelling (from the MATLAB MVTB C extension)
I maintainer di solito rispondono entro 1 giorno
Nessuno ha ancora preso questa issue.
Valutazione
- Difficoltà
- 5/5
- Tempo stimato
- Più di una settimana
- Idoneità per principianti
- 25/100
- Tipo di issue
- Funzionalità
- Chiarezza
- Da chiarire
- Stato di attività
- Attiva
- Ambito
- computer-vision
Direzione di ricerca
Start by inspecting wip/ilabel/ilabel.c and wip/ilabel/ilabel.py-unopt, then read the existing blob/label functions and the TODO in tests/test_image_processing.py. Decide and document the Python API and implementation route, with tests comparing shared examples to the contour-based blob code. Done means ilabel is implemented, its return values are tested, and the build and Python-only support implications are addressed.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Descrizione
Parked work, to be implemented later. The files are on branch feat/fast-label under wip/ilabel/ (not in main).
What it is
A pixel-based, rather than contour-based, approach to segmentation / region labelling, based on the ilabel C extension (Copyright 1995-2009 Peter Corke) from the MATLAB Machine Vision Toolbox. The MATLAB signature was [l, m, parents, color] = ilabel(im).
What exists
wip/ilabel/ilabel.c: Cython 3.0.11 output (2024-12), 592 KB. It was generated from anilabel.pyxthat is not in the repo, but Cython embeds the source as/* "ilabel.pyx":NN */comments, so the.pyxcan be reconstructed from this file.wip/ilabel/ilabel.py-unopt: unoptimised pure-Python port, produced with Copilot (2024-12).- The Python toolbox has no implementation. The only reference is a TODO in
tests/test_image_processing.py(# TODO [l,ml,p,c] = ilabel(im);).
To do
- Reconstruct
ilabel.pyxfrom the embedded comments inilabel.c(or port afresh), and decide the implementation route (Cython extension vs numba vs NumPy/SciPy). Note this package is pure Python and builds with hatchling, so a compiled extension changes the build/wheel story (and Pyodide/JupyterLite support); a pure-Python/NumPy route avoids that. - Define the Python API (
Imagemethod, return values), consistent with the existing blob/label functions. - Tests, including a comparison with the existing contour-based blob code on shared examples, and the TODO above.
Related: #45
- Lingua principale
- Python
- Stelle
- 223
- Fork
- 30
- Merge medio
- 1h 4m
- PR unite (30g)
- 9
Preparare l'ambiente
- Nessun Dockerfile né file Docker Compose
- Ha un modello di pull request
- Nessuna guida per i contributori
Come iniziare
- Leggi tutta la issue e poi la guida ai contributi del progetto.
- Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
- Fai un fork del repository e lavora su un branch.
- Apri una pull request che faccia riferimento al numero della issue.
Altre issue di petercorke/machinevision-toolbox-python
-
enhancement
Difficoltà 2/5 1-3 ore Idoneità per principianti 25/100
petercorke/machinevision-toolbox-python#125 ·
I maintainer di solito rispondono entro 1 giorno
-
tech-debt
Difficoltà 5/5 Più di una settimana Idoneità per principianti 25/100
petercorke/machinevision-toolbox-python#122 ·
I maintainer di solito rispondono entro 1 giorno
-
tech-debt
Difficoltà 5/5 Più di una settimana Idoneità per principianti 30/100
petercorke/machinevision-toolbox-python#117 ·
I maintainer di solito rispondono entro 1 giorno
-
Remaining bare `except:` / swallowed exceptions in tests/ and src/ (Codacy + hidden failures)Apertatech-debt
Difficoltà 5/5 Più di una settimana Idoneità per principianti 45/100
petercorke/machinevision-toolbox-python#115 ·
I maintainer di solito rispondono entro 1 giorno
-
tech-debt
Difficoltà 4/5 3-5 giorni Idoneità per principianti 62/100
petercorke/machinevision-toolbox-python#113 ·
I maintainer di solito rispondono entro 1 giorno
Tutte le issue di petercorke/machinevision-toolbox-python
Issue simili
-
Link Checker ReportApertaautomated issue report
Difficoltà 1/5 Meno di un'ora Idoneità per principianti 85/100
RapidAI/RapidOCRDocs#119 ·
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 70/100
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 85/100
btclib-org/btclib-node#1833 ·
I maintainer di solito rispondono entro 1 giorno
-
IRIS reader: no-data velocity bins (DB_VEL, DB_VELC) returned as 0.0 m/s instead of NaNForse già presa @syedhamidali l’ha presa oggi. Aperta
Difficoltà 2/5 1-3 ore Idoneità per principianti 72/100
I maintainer di solito rispondono entro 2 giorni
-
Difficoltà 1/5 Meno di un'ora Idoneità per principianti 80/100
elodin-sys/elodin#890 ·
I maintainer di solito rispondono entro 1 giorno