Calculate the midpoint of two lines on a track

2 vues (au cours des 30 derniers jours)
Nitesh Ramdin
Nitesh Ramdin le 16 Nov 2020
Hi ,
I am busing building a project for my university and need some direction. I am busying trying to build an autonmous car with the use of Mathlab and Raspberry Pi4B + Pi camera. Thh Pi camera will visualize the the front of the car as it navigates through a track. I want the car to maintain a centre position as it navigates through the track. I have used black tape to mark this.
My question is how do i calculate/design the midpoint and maintain this as the car navigates through the track.
Any assistance would be helpful.
  4 commentaires
Nitesh Ramdin
Nitesh Ramdin le 24 Nov 2020
Here is a sample image. To be honest i have not attempted the code for this as yet . I just go the neural netwrok to work this week. I haver a draft report due early next week which is wehn i will focus on this. Any pionters or direction would be helpful.
I basically want ot calculate the midpiont of these two lines. The car would move every one second so this would need to continuely update.
Rik
Rik le 24 Nov 2020
When you get to work on this: I would suggest simple thresholding to find where in your image the two lines are. The car should stay in the same position in the frame, so you can easily remove it.
I would try to find the intersection point of the two lines.
If the bends are not too sharp you could even process each half of the image separately to fit a straight trend line.

Connectez-vous pour commenter.

Réponses (1)

Matt J
Matt J le 24 Nov 2020
Modifié(e) : Matt J le 24 Nov 2020
The effectiveness of any solution we give will depend on whether the illumination levels of every frame will be similar to your example frame. This might be a good starting point:
A=imread('https://www.mathworks.com/matlabcentral/answers/uploaded_files/426118/image.jpeg');
Ag=rgb2gray(A);
bw=bwareafilt( bwareafilt(Ag<120,3) ,2,'smallest');
[I,J]=find(bw);
[xmid,ymid]=deal( mean(J),size(A,1)-mean(I));
imshow(bw);
h=drawpoint('Position',[xmid,ymid],'Color','m','Label','Midpoint');
h.MarkerSize=15;
  1 commentaire
Sharatkumar Kondikoppa
Sharatkumar Kondikoppa le 5 Jan 2022
Can get code to midline instead of midpoint ..

Connectez-vous pour commenter.

Catégories

En savoir plus sur MATLAB Support Package for Raspberry Pi Hardware dans Help Center et File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by