Sign Up

Sign Up to our social questions and Answers Engine to ask questions, answer people’s questions, and connect with other people.

Have an account? Sign In

Have an account? Sign In Now

Sign In

Login to our social questions & Answers Engine to ask questions answer people’s questions & connect with other people.

Sign Up Here

Forgot Password?

Don't have account, Sign Up Here

Forgot Password

Lost your password? Please enter your email address. You will receive a link and will create a new password via email.

Have an account? Sign In Now

You must login to ask a question.

Forgot Password?

Need An Account, Sign Up Here

Please briefly explain why you feel this question should be reported.

Please briefly explain why you feel this answer should be reported.

Please briefly explain why you feel this user should be reported.

Sign InSign Up

The Archive Base

The Archive Base Logo The Archive Base Logo

The Archive Base Navigation

  • Home
  • SEARCH
  • About Us
  • Blog
  • Contact Us
Search
Ask A Question

Mobile menu

Close
Ask a Question
  • Home
  • Add group
  • Groups page
  • Feed
  • User Profile
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Buy Points
  • Users
  • Help
  • Buy Theme
  • SEARCH
Home/ Questions/Q 9033827
In Process

The Archive Base Latest Questions

Editorial Team
  • 0
Editorial Team
Asked: June 16, 20262026-06-16T08:19:48+00:00 2026-06-16T08:19:48+00:00

I want to detect and COMPLETE all possible quadrilateral shapes from randomly located line

  • 0

I want to detect and COMPLETE all possible quadrilateral shapes from randomly located line segments!

The photo attached is an example, the lines might always appear in very different locations.

Anyone can point out any good algorithm for this?

  • note the line segments are the output of Hough transform using opencv 2.4.2

enter image description here

The solution is to detect and predict the yellow quadrilateral

enter image description here

  • 1 1 Answer
  • 0 Views
  • 0 Followers
  • 0
Share
  • Facebook
  • Report

Leave an answer
Cancel reply

You must login to add an answer.

Forgot Password?

Need An Account, Sign Up Here

1 Answer

  • Voted
  • Oldest
  • Recent
  • Random
  1. Editorial Team
    Editorial Team
    2026-06-16T08:19:49+00:00Added an answer on June 16, 2026 at 8:19 am

    In the case of 11 line segments, you have 330 ways of choosing four segments. You could determine the likelihood of each combination making a quadrilateral, and grade that way.

    It is possible to have a Hough transform detect forms other than lines, though it becomes harder to visualise as the accumulator space would require more than two dimensions. Circles can be found in three dimensions (midX, midY, radius), ellipses in four (I believe). I’m not sure exactly how few parameters you’d need to model a quadrilateral, and I believe that the performance of the Hough transform starts to drop off when you get higher than three dimensions. The accumulator space becomes so large that the noise ratio increases significantly.

    Here’s a related question that may have some interesting answers for you.

    Let us know how you get on!


    EDIT

    I took a stab at this problem today, and uploaded my solution to GitHub. There is too much code to post here.

    Here’s a screenshot showing the output:

    The solution I took is basically what I described above before this edit.

    1. Find all combinations of four lines
    2. Find all permutations of those four lines
    3. Evaluate the likelihood that those four lines form a quadrilateral
    4. Take the best match

    The evaluation works by calculating a crude error score. This is the sum of two different types of error:

    1. The deviation at each corner from 90 degrees (I use the sum of squared errors across all four corners)
    2. When the line segments intersect within the line segment, it’s likely not a valid corner

    The second type of error could possibly be determined in a more robust way. It was necessary to find a solution for your sample data set.

    I haven’t experimented with other data sets. It may need some tweaking to make it more robust. I have tried to avoid using too many parameters so that it should be straightforward to adjust to a particular environment. For example to control sensitivity to occlusion, as seen in your sample image.

    It finds the solution in about 160ms on my laptop. However I haven’t made any performance optimisations. I expect that the methods of finding combinations/permutations could be significantly optimised if you needed this to run closer to real-time, as is often the case with computer vision experiments.

    • 0
    • Reply
    • Share
      Share
      • Share on Facebook
      • Share on Twitter
      • Share on LinkedIn
      • Share on WhatsApp
      • Report

Sidebar

Related Questions

I want to detect cases where an Ajax call is in progress and then
I want to detect when a user is missing a required module and print
I want to detect and insert location of the visitor on a webpage to
I want to detect if remote website allows to stand under iframe or not.
I want to detect application name which is able to move into SD card
i want to detect to see if an element was dragged out of container.
I want to detect when an include in a jsp occurs in a web
I want to detect and replace tab characters in a bit of HTML like
I want to detect one kind of object such as person in the picture,
I want to detect when my touchpad is clicked! I normally use a usb

Explore

  • Home
  • Add group
  • Groups page
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Users
  • Help
  • SEARCH

Footer

© 2021 The Archive Base. All Rights Reserved
With Love by The Archive Base

Insert/edit link

Enter the destination URL

Or link to existing content

    No search term specified. Showing recent items. Search or use up and down arrow keys to select an item.