| image | NPARRAY,IMAGE | | Image to search (converted to grayscale internally). Feed the ORIGINAL image - unless canny_aperture_size is 0, in which case feed a BINARY edge map. Accepts a ComfyUI IMAGE/MASK directly (frame 0 of a batch) or an NPARRAY. Arithmetic ops (add, multiply, etc.) process the full IMAGE batch when both inputs have the same batch size. |
| length_threshold | INT | 103–10000 | Segments shorter than this many pixels are discarded by the detector itself (unlike LSD, which has no length knob and needs a post-filter). Raise it to keep only structural edges. |
| distance_threshold | FLOAT | 1.40–100 | A pixel farther than this from the hypothesised line is an outlier, which ends the segment. Small = many short straight pieces; large = fewer, looser segments that bend. |
| canny_th1 | FLOAT | 500–1000 | Lower hysteresis threshold of the INTERNAL Canny. Ignored when canny_aperture_size is 0. |
| canny_th2 | FLOAT | 500–1000 | Upper hysteresis threshold of the internal Canny. Ignored when canny_aperture_size is 0. |
| canny_aperture_size | COMBO | 3 (default) | Sobel aperture of the internal Canny. '0' skips Canny entirely and treats the input as an edge map, so you can drive FLD from any edge node in the pack. |
| do_merge | BOOLEAN | false | Incrementally merge segments that are collinear and adjacent, so one long edge broken by noise comes back as one segment instead of a chain of pieces. |
| min_lengthopt | FLOAT | 00–10000 | Post-filter on the measured length, applied after any merging - length_threshold gates the detector, this gates the RESULT (they differ once do_merge is on). 0 keeps every segment. |