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

Erkanntes Bild speichern

 

Anettchen

Gast


Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 12.12.2013, 11:50     Titel: Erkanntes Bild speichern
  Antworten mit Zitat      
Hallo ihr lieben,

ich probiere mich seit einiger zeit in Matlab und komme gerade nicht weiter.
ich habe durch Kantenerkennung ein Selbst gezeichnetes Bild erkennen lassen. Dann durch
Code:

BWremove = imclearborder(BWfuellen,4);


die Objekte die nicht vollständig auf dem Bild zusehen sind entfernen lassen.

zum Schluss lege ich die Erkannten Umrisse auf das original Bild, und speichere es. Doch leider Speichert er das Bild mit den Umrissen und auch den Sachen die eigentlich raus geschnitten (ausgefüllt) wurden.

Wie kriege ich es hin das ich nur das erkannte Bild speichern kann . also das die Sachen die entfernt wurden auf dem gespeicherten bild nicht vorhanden sind?

Code:

%clear all
%close all
%clc




%Bild auswahl
bild = uigetfile({'*.jpg';'*.png';'*tif'},'Bitte Bildatei auswählen');
%Bild einlesen und in Schwarzweiß umwandeln
BWbild = rgb2gray(imread(bild));

%sobelfilter anwenden mit Faktor (segmentierung des Bildes)
edges = edge(BWbild, 'sobel', 0.05);
%imagesc(edges);

%bestimmt die dicke der Umrisse
strel90 = strel('line', 3, 0);
%bestimmt die wie viel ausgefüllt wird
strel0 = strel('line', 3, 0);

%erweitert die Kanten der Maske
BWkontur = imdilate(edges, [strel90 strel0]);
%figure, imshow(BWkontur), title('erweiterung der Maske');

%Füllt die Maske aus
BWfuellen = imfill(BWkontur, 'holes');
%figure, imshow(BWfuellen);
%title('Bildmaske gefüllt');

%Objekte die nicht vollständig auf dem Bild zu sehen sind werden
%gelöscht(ausgefüllt)
BWremove = imclearborder(BWfuellen,4);
%figure, imshow(BWremove), title('Fehlerhafte Objekte Löschen');

%Das segmentierte objekt wird zwei mal geglätet
%um störende Pixel zu entfernen
segmentedD = strel('diamond',1);
BWfertig = imerode(BWremove,segmentedD);
BWfertig = imerode(BWfertig,segmentedD);
BWfertig = imerode(BWfertig,segmentedD);
BWfertig = imerode(BWfertig,segmentedD);
%figure, imshow(BWfertig), title('Geglätetes Bild');

%Maske auf Origenalbild anwenden
BWumriss = bwperim(BWfertig);
umrisse = BWbild;
umrisse(BWumriss) = 255;
figure, imshow(umrisse), title('Umrisse original Bild');
 


das beispiel bild mit dem ich arbeite lade ich mit hoch.

Danke für eure mühe.
LG
Anettchen

hulk.jpg
 Beschreibung:

Download
 Dateiname:  hulk.jpg
 Dateigröße:  128.06 KB
 Heruntergeladen:  696 mal
Verschoben: 12.12.2013, 12:24 Uhr von denny
Von GUIs nach Bildverarbeitung


Hubertus
Forum-Meister

Forum-Meister


Beiträge: 1.034
Anmeldedatum: 08.01.09
Wohnort: Hamburg
Version: ---
     Beitrag Verfasst am: 12.12.2013, 13:19     Titel:
  Antworten mit Zitat      
Mir ist nicht klar, welches Endresultat du überhaupt suchst. Das Endresultat enthält doch bis auf die letzten Bereiche aus "umriss" die gleichen Inhalte wie anfangs. Mit "imfill" werden Kanten entfernt, die im Endresultat immer noch vorhanden sind.

Hubertus
Private Nachricht senden Benutzer-Profile anzeigen
 
Anettchen

Gast


Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 12.12.2013, 13:32     Titel: Bildausschnitt
  Antworten mit Zitat      
Hallo Hubertus,

Es soll z.B in dem Bild das ich mit hochgeladen habe der Schriftzug entfernt werden. Und dann nur das erkannte Bild wiedergegeben werden und auch ohne den Schriftzug gespeichert werden.

Lg anettchen
 
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.