Search for line passing through a point in edge image

4 views (last 30 days)
Hi all
I have an color image and I converted it to gray image then I do edge detection using 'canny'. The edge image contains horizontal, vertical and inclined lines. For specific pixel (xp,yp) in the edge image, I want to search for a vertical line that pass through this point.
Can anyone help me to find to a method to search or detect a vertical line passing in this point. Your help is highly appreciated.
I started with:
I=imread('image.jpg');
G=rgb2gray(I);
B=edge(G,'canny');
  3 Comments
Mary
Mary on 5 Mar 2013
Hi Image Analyst and thank you for your comment.
I tried many times to upload the images to the forum , but I couldn't. could you please tell me the steps and the location that I can upload my images. I highly appreciate your help.
Jan
Jan on 5 Mar 2013
@Mary: Image Analyst had posted a link to the page, where you can upload images. Then post the link inside < and > or even better in << and &gt&gt. Please explain any details of "I cuoldn't" to allow us to suggest an improvement.

Sign in to comment.

Accepted Answer

ChristianW
ChristianW on 4 Mar 2013
doc hough
  3 Comments
ChristianW
ChristianW on 4 Mar 2013
BW = diag(ones(1,100)); BW(:,[20 60])=1; BW(20:90,75)=1;
[H,T,R] = hough(BW);
P = houghpeaks(H,200);
It = T(P(:,2)) == 0; % index vector for theta == 0
lines = houghlines(BW,T,R,P(It,:));
isvline = false(size(BW));
for k = 1:length(lines)
y = lines(k).point1(2) : lines(k).point2(2);
x = lines(k).point1(1) * ones(size(y));
isvline(y,x) = true;
end
isvline(38,75) % test, is pixel(yp=38,xp=75) part of a vertical line?

Sign in to comment.

More Answers (0)

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!