WICHTIG: Der Betrieb von goMatlab.de wird privat finanziert fortgesetzt. - Mehr Infos...

Mein MATLAB Forum - goMatlab.de

Mein MATLAB Forum

 
Gast > Registrieren       Autologin?   

Partner:




Forum
      Option
[Erweitert]
  • Diese Seite per Mail weiterempfehlen
     


Gehe zu:  
Neues Thema eröffnen Neue Antwort erstellen

imfdincircle() finden von halbkreisen über metric

 

FloGeb
Forum-Newbie

Forum-Newbie


Beiträge: 1
Anmeldedatum: 13.05.16
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 13.05.2016, 12:47     Titel: imfdincircle() finden von halbkreisen über metric
  Antworten mit Zitat      
Hallo ich bin neu hier und hätte eine Frage zu dem Ausgabe Parameter metric der Funktion imfindcircle() bzw. allgemein zu der Funktion.

Der Wert metric gibt ja die Stärke eines Kreises an. Kann man durch diesen Wert unterscheiden ob der gefundene Kreis ein Halbkreis oder ein ganzer Kreis bzw. ein Kreissegment ist?

Das Problem was ich damit lösen wollen würde ist folgendes:
Ich habe eine Kante an welcher eine halbkreisförmige Markierung ausgeschnitten ist.
Diese möchte ich finden.

Ich hab mal mein bisheriges Ergebnis angehängt (Image.png)

Der Kreis mit dem grün/rot markierten Mittelpunkt hat eine metric von 0,0677 und der untere Kreis nur 0,0581. Mal abgesehen davon, dass der untere Kreis mit einem meiner Meinung nach zu großen Radius gefunden wird, verstehe ich nicht warum der doch recht deutliche Halbkreis schlechter ist als die Kante daneben.

Mein vereinfachter Code schaut wie folgt aus:

Code:

img =imread('Kante.tif');

[Center, radii ,metric] = imfindcircles(img,[9 14],'Sensitivity',0.98,'objectPolarity','dark','Method','TwoStage');

figure;
imshow(img)
hold on
plot(Center(1,1),Center(1,2),'xg','MarkerSize',10,'LineWidth',2)
plot(Center(:,1),Center(:,2),'xr','MarkerSize',5,'LineWidth',2)
for i=1:size(Center,1)
    e=imellipse(gca,[(Center(i,:)-radii(i)) radii(i)*2 radii(i)*2]);
end
 


Die Range der Radien habe ich über imdistline gemessen (~11).

Also zurück zu den Fragen die mich wurmen.
Warum erkennt die Funktion die Kante daneben als stärkeren Kreis als den ausgeschnittenen Halbkreis?
Kann man anhand des metric Wertes auf die Form des Kreises zurück schließen?

Schon mal im vorhinein danke für alle Antworten und sorry für irgendwelche Rechtschreibfehler usw Wink

Image.PNG
 Beschreibung:

Download
 Dateiname:  Image.PNG
 Dateigröße:  39.94 KB
 Heruntergeladen:  441 mal

_________________

Bin neu bitte vergebt mir meine Fehler Wink
Private Nachricht senden Benutzer-Profile anzeigen


Neues Thema eröffnen Neue Antwort erstellen



Einstellungen und Berechtigungen
Beiträge der letzten Zeit anzeigen:

Du kannst Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum antworten.
Du kannst deine Beiträge in diesem Forum nicht bearbeiten.
Du kannst deine Beiträge in diesem Forum nicht löschen.
Du kannst an Umfragen in diesem Forum nicht mitmachen.
Du kannst Dateien in diesem Forum posten
Du kannst Dateien in diesem Forum herunterladen
.





 Impressum  | Nutzungsbedingungen  | Datenschutz | FAQ | goMatlab RSS Button RSS

Hosted by:


Copyright © 2007 - 2024 goMatlab.de | Dies ist keine offizielle Website der Firma The Mathworks

MATLAB, Simulink, Stateflow, Handle Graphics, Real-Time Workshop, SimBiology, SimHydraulics, SimEvents, and xPC TargetBox are registered trademarks and The MathWorks, the L-shaped membrane logo, and Embedded MATLAB are trademarks of The MathWorks, Inc.