Verfasst am: 03.07.2018, 22:36
Titel: Bereiche in Bild von Hand markieren
Hallo Zusammen,
ich nutze jetzt zum erstenmal aktiv dieses Forum.
Also gerne auf Fehler hinweisen, wie falscher Ort etc.
Ich habe einen Algorithmus geschrieben, der Objekte in einem Bild (jpg) erkennen kann.
Um diesen zu bewerten muss ich das Bild auch von Hand klassifizieren.
Also jedem Pixel eine Klasse zuweisen.
Allerdings habe ich bisher keine effiziente Methode gefunden um Bereiche in einem Bild auszuwählen und die Klasse zuzuweisen.
Verfasst am: 04.07.2018, 03:44
Titel: Re: Bereiche in Bild von Hand markieren
Hallo Thajobe,
Erkläre doch mal genauer, wie Du die Bereiche markieren möchtest und was "die Klasse zuweisen" bedeutet.
Gruß, Jan
Thajobe
Gast
Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
Verfasst am: 04.07.2018, 11:12
Titel: Re: Bereiche in Bild von Hand markieren
Hallo Jan,
also als Ergebnis möchte ich eine Matrix von der selben Größe wie mein Bild. (nur halt ohne dritte Dimension). Jeder Eintrag in der Matrix ist dann einem Pixel zugeordnet und kennzeichnte seine Klasse. Z.B. Alle einträge mit 0 bilden eine Klasse, Einträge mit 1 bilden eine Klasse, usw.
Wenn es möglich ist würde ich mir das markieren so vorstellen, dass man das Bild anzeigt, und dann mit der Maus mehrmals Bereiche markieren kann (Kann z.B. Kreise oder Quadrate sein) die in dem Objekt liegen dem man eine Klasse zuweisen möchte. Auch sollte man einzelne Pixel markieren können.
Am besten wird dabei farblich gezeigt, welche pixel markiert sind. Und dann soll allen markierten Pixeln der wert der Klasse in der Matrix zugeordnet werden.
Falls es einen andere Möglichkeit gibt die leichter umzusetzten ist aber zum selben Ergebnis führt, ist das auch ok.
Verfasst am: 06.07.2018, 10:55
Titel: Re: Bereiche in Bild von Hand markieren
Hallo Thajobe,
Das klingt nach einem Programmierprojekt. Man kan mit der Image-Processing-Toolbox zwar Pixel und Bereiche auswählen, aber es hört sich so an, als bräuchtest Du hier ein ziemlich umfangreiches Tool. Ich kenne keine fertige Implementierung dafür.
Man muss z.B. berücksichtigen, dass sich markierte Bereiche überlappen könnten. Das farbliche Markieren einzelner ausgewählter Pixel ist eine Wissenschaft für sich, denn im Allgemeinen wird die Markierung den Pixel überdecken, was das weitere Arbeiten ausgesprochen behindert.
Da die Aufgabe aber eigentlich ziemlich üblich klingt, könnte es dafür bereits fertige Tools geben. Hast Du mal im Internet oder speziell im FileExchange von Matlab gesucht?
Gruß, Jan
Thajobe
Gast
Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
Verfasst am: 09.07.2018, 23:02
Titel:
Wenn ich Code gefunden hätte den ich nutzen könnte hätte ich nicht im Forum gefragt.
Habe mir jetzt selber den Code geschrieben.
Für den Fall das jemand irgendwann das selbe Problem hat poste ich hier den Code.
function mouseClicked(objectHandle , eventData ) global imgb_h
global img_class;
globalclass;
global xI
global yI
global radius
alpha = 0.5;
pos = get(get(objectHandle, 'CurrentAxes'), 'CurrentPoint');
pos = [pos(1,1), pos(1,2)];
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
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.