Skip to main content
  • Home
  • Development
  • Documentation
  • Donate
  • Operational login
  • Browse the archive

swh logo
SoftwareHeritage
Software
Heritage
Archive
Features
  • Search

  • Downloads

  • Save code now

  • Add forge now

  • Help

swh:1:snp:17921d0dbbe882b8ada40a15587b4b36c3edb4b3
  • Code
  • Branches (1)
  • Releases (0)
    • Branches
    • Releases
    • HEAD
    No releases to show
  • 9f5926b
  • /
  • classic_edge_detectors_1.0
  • /
  • README.txt
Raw File Download

To reference or cite the objects present in the Software Heritage archive, permalinks based on SoftWare Hash IDentifiers (SWHIDs) must be used.
Select below a type of object currently browsed in order to display its associated SWHID and permalink.

  • content
  • directory
  • revision
  • snapshot
content badge
swh:1:cnt:19e50e2b1a4c2740e61185baa21b9159d5f5815a
directory badge
swh:1:dir:31b81dc3d4281522583a4e1403a0ef626e67cac5
revision badge
swh:1:rev:c83bee6bdc25c0174b63b8cc814866646d707462
snapshot badge
swh:1:snp:17921d0dbbe882b8ada40a15587b4b36c3edb4b3

This interface enables to generate software citations, provided that the root directory of browsed objects contains a citation.cff or codemeta.json file.
Select below a type of object currently browsed in order to generate citations for them.

  • content
  • directory
  • revision
  • snapshot
(requires biblatex-software package)
Generating citation ...
(requires biblatex-software package)
Generating citation ...
(requires biblatex-software package)
Generating citation ...
(requires biblatex-software package)
Generating citation ...
Tip revision: c83bee6bdc25c0174b63b8cc814866646d707462 authored by Software Heritage on 21 June 2013, 00:00:00 UTC
ipol: Deposit 1263 in collection ipol
Tip revision: c83bee6
README.txt
A review of classic edge detectors
==================================
Version 1.0 - June 21, 2013
Haldo Sponton <haldos@fing.edu.uy>
Juan Cardelino <juanc@fing.edu.uy>


Introduction
------------

This is an implementation of five classic edge detectors: Roberts, Prewitt,
Sobel, Marr-Hildreth and Haralick. This code is part of the following
publication:

  "A review of classic edge detectors"
  by Haldo Sponton and Juan Cardelino, Image Processing On Line, 2013.


Files
-----

README.txt                - This file.
COPYING                   - GNU GENERAL PUBLIC LICENSE Version 3.
Makefile                  - Compilation instructions for 'make'.
classic_edge_detectors.c  - edge detector code, C99, peer reviewed file.
classic_edge_detectors.h  - edge detector header, C99, peer reviewed file.
edges.c                   - command line interface for the edge detectors.
io_png.c                  - interface to the libPNG for image input and output.
io_png.h                  - interface to the libPNG for image input and output.
lena.png                  - test image
molino.png                - test image
oranges.png               - test image
expected_results          - directory, contains the expected results for the
                            five algorithms for the image molino.png

The files "classic_edge_detectors.c" and "classic_edge_detectors.h" were
subject to peer review as part of the acceptance process of the IPOL article.


Compiling
---------

This code is programmed in C programming language following the C99 standard.

The main module, "classic_edge_detectors.c" and "classic_edge_detectors.h",
does not depend on external software (except for the standard C library).

A command line interface is provided, allowing to call each of the edge
detectors and selecting the particular parameters. This interface use the
libPNG library for image input and output in PNG format.

In the distribution is included a Makefile file with instructions to build the
command lines program interface 'edges', as well a to run on the test images
with the parameters used in the IPOL document.

On a Unix environment, the compiling instruction is just

  make

from the directory where the source codes and the Makefile are located.

To verify a correct compilation you can apply the edge detector to the test
images and compare the result to the provided ones. This is done with

  make test


Running edges Command
---------------------

The simplest LSD command execution is just

  edges

or

  ./edges

if the command is not in the path. That should print an error message and quit.
To obtain instructions, type

  edges -H

A simple execution is

  edges -r 0.1 molino.png

that will apply Roberts' algorithm to the image "molino.png" with a threshold
parameter 0.1. The result is stored in an file on the current directory. The
name of the output file is fixed for each algorithm, in this case
"out_roberts.png".

More than one algorithm can be applied to the same image with the same
command. For example:

  edges -r 0.1 -l 3 29 0.13 molino.png

will apply Roberts' algorithm with threshold parameter 0.1, and the
Marr-Hildreth (LoG) with parameters sigma=3.00, N=29, TZC=0.13; the results are
stored in the files "out_roberts.png" and "out_mhl.png".


Copyright and License
---------------------

Copyright (c) 2011-2013, Haldo Sponton <haldos@fing.edu.uy>
Copyright (c) 2011-2013, Juan Cardelino <juanc@fing.edu.uy>

This program is free software: you can redistribute it and/or
modify it under the terms of the GNU General Public License as
published by the Free Software Foundation, either version 3 of
the License, or (at your option) any later version.

This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.

You should have received a copy of the GNU General Public License
along with this program. If not, see <http://www.gnu.org/licenses/>.


Thanks
------

Comments with suggestions, errors, bugs or strange results are welcome.

back to top

Software Heritage — Copyright (C) 2015–2026, The Software Heritage developers. License: GNU AGPLv3+.
The source code of Software Heritage itself is available on our development forge.
The source code files archived by Software Heritage are available under their own copyright and licenses.
Terms of use: Archive access, API— Content policy— Contact— JavaScript license information— Web API