Direct Step Edge Follower
DSEF Package
The Direct Step Edge Follower (DSEF) is a edge-following algorithm designed for high-precision edge detection with low computational cost. It employs stepwise directional refinement and kernel-based statistical testing to enhance accuracy, particularly in challenging lighting conditions.
Citation
To cite DSEF in your research, please cite as:
@article{Sivertsen2025DSEF,
author = {Agnar Sivertsen and Fabio A. A. Andrade and Marcos Moura and Carlos A. M. Correia and Mariane R. Petraglia},
title = {Direct Step Edge Follower: a novel edge follower algorithm applied to solar panels inspections with Unmanned Aerial Vehicles},
journal = {Preprint},
year = {2025},
month = {April},
url = {https://www.researchgate.net/publication/390370984_Direct_Step_Edge_Follower_a_novel_edge_follower_algorithm_applied_to_solar_panels_inspections_with_Unmanned_Aerial_Vehicles}
}
Speeds
The DSEF can work in three modes, or speeds, are described in the table below:
| Parameter | Low | Medium | High |
|---|---|---|---|
| $\Delta s$ (EdgeSearch step) | dist ⁄ 80 | dist ⁄ 60 | dist ⁄ 40 |
| $\Delta \ell$ (EdgeFollow step) | diag ⁄ 200 | diag ⁄ 100 | diag ⁄ 50 |
| $\Delta \theta$ (Angle Res.) | $\Omega$ ⁄ 90 | 4 $\Omega$ ⁄ 90 | 10 $\Omega$ ⁄ 90 |
| $N_{\theta}$ (LUT size) | 360 ⁄ $\Delta \theta$ | 360 ⁄ $\Delta \theta$ | 360 ⁄ $\Delta \theta$ |
Where $\mathrm{dist} = \sqrt{(u_{\mathrm{end}}-u_{\mathrm{start}})^2 + (v_{\mathrm{end}}-v_{\mathrm{start}})^2}$ and $\mathrm{diag} = \sqrt{(\mathrm{Width})^2 + (\mathrm{Height})^2}$
Lower speeds have more accuracy, due to the smaller steps, and higher speeds can have less accuracy but are faster.
How to use
The examples of DSEF can be found in the following links:
Simple Implementation of DSEF Search and Follow
Implementation and Comparison between the different Speed Modes in DSEF
Metadata
Release files for dsef 0.3.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| dsef-0.3.0.tar.gz | 21.2 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| dsef-0.3.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 43.9 kB
Release files / dsef-0.3.0.tar.gz
| Download URL | dsef-0.3.0.tar.gz |
|---|---|
| Size | 21.2 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
770ae2723b3e6b18739f17ce7f630519891a9dae83d2aa5572cfcdd892690bbc
|
|
BLAKE2b-256 checksum How to use checksums |
b5d70859e24cfbe2dba17a23262bddad14cc08300b8181c2f5fc173d3549b10d
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.1.0 CPython/3.12.9
|
Release files / dsef-0.3.0-py3-none-any.whl
| Download URL | dsef-0.3.0-py3-none-any.whl |
|---|---|
| Size | 22.7 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
3801652c2a2d1bd048ab6cbfc47bf3c4e03bce46d1ac0be552468b3cb3dbb910
|
|
BLAKE2b-256 checksum How to use checksums |
3921fdb8ddc6f00abe35936fe25bfc3ce8ec9a58930b3c7b55ad1471e06b4173
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.1.0 CPython/3.12.9
|