Есть набор двумерных точек:

Невооружённым глазом видны прямолинейные группы. Как можно попытаться их автоматически выделять? Есть ли какие-то относительно известные алгоритмы для этого? Или единственный вариант - делать что-то типа прямого перебора?
Точки на самом деле взяты из сильно зашумлённой выборки, возможно, удастся улучшить качество фильтрации, и прямые будут более ярко выражены, что облегчит их выделение.
Если бы прямая была одна - подошла бы регрессия, но тут их много, и заранее неизвестно сколько.