ImageLines
✖
ImageLines
Details and Options

- ImageLines returns a list of line segments in the form Line[{p1,p2}], where each pi={xi,yi} is expressed in the standard image coordinate system.
- ImageLines[image,t] finds lines in the image whose normalized strength is larger than the specified threshold t.
- ImageLines sorts the result based on the normalized strength.
- In ImageLines[image,t,d], the parameter d controls how close lines are suppressed. If the value is set to zero, all detected lines are returned. With d set to 1, only the strongest line may be returned.
- The following options can be given:
-
MaxFeatures All maximum number of features to return Method "Hough" method to detect lines - With a setting MaxFeatures->n, at most n lines with largest normalized strength are returned.
- Possible line detection methods are:
-
"Hough" lines based on Hough transform (default) "RANSAC" lines using the RANSAC algorithm - With Method->"Hough", lines are detected by iteratively selecting the strongest peaks in the Hough transform. Using the distinctness parameter, peaks that are within a rectangular range from the already selected peaks are excluded from the set of line candidates.
- With Method->"RANSAC", lines are detected using random sampling. For each sampling, pixels that are within a distance specified by the distinctness parameter d are used for computing the strength of the line. The pixels on the selected line are not used in the following iterations.
- By default, ImageLines returns lines that span from border to border. With a setting Method->{"Segmented"->True}, detected lines may be divided into smaller line segments.
Examples
open allclose allBasic Examples (1)Summary of the most common use cases
Scope (2)Survey of the scope of standard use cases
Options (3)Common values & functionality for each option
MaxFeatures (1)
Method (2)
By default, lines are detected using Method->"Hough":

https://wolfram.com/xid/0bdpj8gfc-bwc8u8


https://wolfram.com/xid/0bdpj8gfc-zfh1u

Detect segmented lines in a grayscale image:

https://wolfram.com/xid/0bdpj8gfc-nx8df9

Segmented lines using the random sampling method:

https://wolfram.com/xid/0bdpj8gfc-b1yld3

Applications (6)Sample problems that can be solved with this function
Detect and visualize straight trajectories in a bubble chamber image:

https://wolfram.com/xid/0bdpj8gfc-oooixa

Detect segments on a color image:

https://wolfram.com/xid/0bdpj8gfc-bs5cho


https://wolfram.com/xid/0bdpj8gfc-rhcawx

Detect segments on a gradient magnitude map:

https://wolfram.com/xid/0bdpj8gfc-i5daaj

Find wide lines using edge detection:

https://wolfram.com/xid/0bdpj8gfc-qyt3kj


https://wolfram.com/xid/0bdpj8gfc-xul6sp
Compute the gradient of the image to highlight edges:

https://wolfram.com/xid/0bdpj8gfc-d74o90

Find the most significant straight lines in the gradient image:

https://wolfram.com/xid/0bdpj8gfc-ksf7ok

FInd the angles corresponding to each line:

https://wolfram.com/xid/0bdpj8gfc-x1b2ro

Compute the average angle of the vertical lines:

https://wolfram.com/xid/0bdpj8gfc-galyh3

Rotate the image by to make almost-vertical lines vertical:

https://wolfram.com/xid/0bdpj8gfc-d92u8p

Possible Issues (2)Common pitfalls and unexpected behavior
Use the distinctness parameter to prevent detecting duplicated lines:

https://wolfram.com/xid/0bdpj8gfc-wk6kke

Thin lines in binary images might not be correctly detected:

https://wolfram.com/xid/0bdpj8gfc-ws33ge

https://wolfram.com/xid/0bdpj8gfc-uobb4o

Blurring the image typically improves line detection:

https://wolfram.com/xid/0bdpj8gfc-pj5zaq

Rescaling the image to a larger size might also help in some cases:

https://wolfram.com/xid/0bdpj8gfc-6dd29u

https://wolfram.com/xid/0bdpj8gfc-79ihex

Wolfram Research (2010), ImageLines, Wolfram Language function, https://reference.wolfram.com/language/ref/ImageLines.html (updated 2025).
Text
Wolfram Research (2010), ImageLines, Wolfram Language function, https://reference.wolfram.com/language/ref/ImageLines.html (updated 2025).
Wolfram Research (2010), ImageLines, Wolfram Language function, https://reference.wolfram.com/language/ref/ImageLines.html (updated 2025).
CMS
Wolfram Language. 2010. "ImageLines." Wolfram Language & System Documentation Center. Wolfram Research. Last Modified 2025. https://reference.wolfram.com/language/ref/ImageLines.html.
Wolfram Language. 2010. "ImageLines." Wolfram Language & System Documentation Center. Wolfram Research. Last Modified 2025. https://reference.wolfram.com/language/ref/ImageLines.html.
APA
Wolfram Language. (2010). ImageLines. Wolfram Language & System Documentation Center. Retrieved from https://reference.wolfram.com/language/ref/ImageLines.html
Wolfram Language. (2010). ImageLines. Wolfram Language & System Documentation Center. Retrieved from https://reference.wolfram.com/language/ref/ImageLines.html
BibTeX
@misc{reference.wolfram_2025_imagelines, author="Wolfram Research", title="{ImageLines}", year="2025", howpublished="\url{https://reference.wolfram.com/language/ref/ImageLines.html}", note=[Accessed: 27-April-2025
]}
BibLaTeX
@online{reference.wolfram_2025_imagelines, organization={Wolfram Research}, title={ImageLines}, year={2025}, url={https://reference.wolfram.com/language/ref/ImageLines.html}, note=[Accessed: 27-April-2025
]}