erstmal vorab: Ich bin neu im Forum und habe leider auch noch wenig Erfahrung mit MatLab. Ich befinde mich derzeit im Praxissemester und soll ein Analyseprogramm für den magnetooptischen Kerr-Effekt schreiben. Dazu wurden Aufnahmen am Kerr-Mikroskop erstellt. Die Analyse an sich klappt soweit ganz gut, allerdings läuft die vorige Bildbearbeitung sehr umständlich über Paint und Powerpoint ( ). Soviel zum Hintergrund.
Meine Frage lautet nun, ob es für folgende Powerpoint-Funktionen entsprechende MatLab-Befehle gibt:
Der 4. Punkt scheint mir am schwierigsten... ist leider auch der wichtigste.
Falls jemand gute Literatur dazu kennt, würd ich mich darüber freuen. Ich selbst habe leider nichts passendes gefunden.
herzlich Willkommen im Forum. Da hast Du ja gleich eine ganze Reihe aufregender Fragen und die Antworten dazu sind vielfältig. Es gibt in Matlab grundsätzlich mehrere Wege und es ist schwierig, den einzig und richtigen Weg zuerst zu benennen. Darum in ein paar Anmerkungen vorweg.
Zu1:
Natürlich kann man die Bildschärfe beeinflussen. Die Bildschärfe wird immer an Kanten sichtbar und man kann diese Kanten hervorheben oder absenken. Wenn du die Bildschärfe verringern willst, kannst du eine Unschärfe darüber legen. Dazu kann man einen Filterkern nehmen oder die Funktion ....fspecial('gaussian',5,5).
Zu 2:
alle Bilder liegen in den Werten zwischen 0 & 1 oder 0 & 255. Wenn ich dazu einen Betrag addiere oder abziehe verändert sich die Bildhelligkeit:
Code:
I=imread('test.tif');
I2=I+20; % Bild wird logischerweise heller
Um den Kontrast zu ändern müssen schon ein paar Codezeilen geschrieben werden. Es gibt keien fertige Funktion.
zu 4:
Um eine Silhouette zu erstellen, müsstest du genauer erklären, wie die aussehen soll. Soll es ein dünner Rahmen um eine Figur werden oder eine schwarze, gefüllte Fläche gegen einen hellen Hintergrund.
Du musst Dir Gedanken machen, wie du anfangen willst (womit) und wo du Hilfe benötigst.
Also MATLAB und die Image Processing Toolbox können da "natürlich" viel mehr, aber der Nachteil ist, dass man die Theorie dahinter ein wenig verstehen muss um es anzuwenden.
Schärfe: Mal in der Doku nach IMSHARPEN schauen. Man kann das interaktiv machen, aber auch einen Befehl auf eine Bildmatrix loslassen (NB: Man importiert ja die Bilder zunächst als numerische Matrix und wendet dann die Operationen auf die Matrix an)
Helligkeit: Einfach die numerischen Werte direkt manipulieren
Kontrast: IMCONTRAST und IMADJUST
Silhouette: Da muss man zunächst herausfinden wir der Algorithmus heisst. Den gibt es dann bestimmt auch in MATLAB oder für MATLAB über FileExchange.
Erstmal danke euch beiden für die schnellen Antworten
Ich brauch etwas Zeit um eure Vorschläge umzusetzen, aber zur Frage wie die Silhouette aussehen soll, haeb ich mal ein Beispiel angehängt.
Ah, Hubertus und ich haben nahezu gleichzeitg geantwortet! Ich gehe immer davon aus, dass wenn jemand Bildverarbeitung macht auch die Image Processing Toolbox hat. Sollte auch eigentlich fast jede Hochschule mit MATLAB zusammen haben.
Für die Silhouette bitte die Beispiele zum Them "Image Segmentation" anschauen. Das kommt dem recht nah.
Es hat jetzt eine Weile gedauert, aber möchte trotzdem noch meine Ergebnisse präsentieren... Vieleicht hilft es auch noch anderen Es funktioniert aber nur mit Schwarz-Weiss-Bildern!
Um die Silhouette zu erzeugen habe ich mir selbst was ausgedacht und es funktioniert wunderbar Falls es trotzdem Verbesserungsvorschläge gibt, bitte ich darum.
Habe vor einem Monat angefangen, mir MatLab selbst beizubringen... auf das was jetzt dabei rausgekommen ist, bin ich schon fast stolz Ich danke euch natürlich für eure Hilfe!!
Code:
figure(2) set(gcf, 'Name', 'Silhouetten mit unterschiedlicher Anzahl Schattierungen');
E1 = D
for i=1:400 for j=1:400 if E1(i,j,:) <= 85
E1(i,j,:) = 0;
end if E1(i,j,:) > 85 if E1(i,j,:) <= 171
E1(i,j,:) = 128;
end end if E1(i,j,:) > 171
E1(i,j,:) = 255;
end end end subplot(2,2,1);
image(E1) title('3 Schattierungen');
E2 = D
for i=1:400 for j=1:400 if E2(i,j,:) <= 32
E2(i,j,:) = 0;
end if E2(i,j,:) > 32 if E2(i,j,:) <= 96
E2(i,j,:) = 64;
end end if E2(i,j,:) > 96 if E2(i,j,:) <= 160
E2(i,j,:) = 128;
end end if E2(i,j,:) > 160 if E2(i,j,:) <= 224
E2(i,j,:) = 192;
end end if E2(i,j,:) > 192
E2(i,j,:) = 255;
end end end subplot(2,2,2);
image(E2) title('5 Schattierungen');
E3 = D
for i=1:400 for j=1:400 if E3(i,j,:) <= 21
E3(i,j,:) = 0;
end if E3(i,j,:) > 21 if E3(i,j,:) <= 64
E3(i,j,:) = 43;
end end if E3(i,j,:) > 64 if E3(i,j,:) <= 107
E3(i,j,:) = 85;
end end if E3(i,j,:) > 107 if E3(i,j,:) <= 149
E3(i,j,:) = 128;
end end if E3(i,j,:) > 149 if E3(i,j,:) <= 192
E3(i,j,:) = 171;
end end if E3(i,j,:) > 192 if E3(i,j,:) <= 235
E3(i,j,:) = 213;
end end if E3(i,j,:) > 235
E3(i,j,:) = 255;
end end end subplot(2,2,3);
image(E3) title('7 Schattierungen');
E4 = D
for i=1:400 for j=1:400 if E4(i,j,:) <= 16
E4(i,j,:) = 0;
end if E4(i,j,:) > 16 if E4(i,j,:) <= 48
E4(i,j,:) = 32;
end end if E4(i,j,:) > 48 if E4(i,j,:) <= 80
E4(i,j,:) = 64;
end end if E4(i,j,:) > 80 if E4(i,j,:) <= 112
E4(i,j,:) = 96;
end end if E4(i,j,:) > 112 if E4(i,j,:) <= 144
E4(i,j,:) = 128;
end end if E4(i,j,:) > 144 if E4(i,j,:) <= 176
E4(i,j,:) = 160;
end end if E4(i,j,:) > 176 if E4(i,j,:) <= 208
E4(i,j,:) = 192;
end end if E4(i,j,:) > 208 if E4(i,j,:) <= 240
E4(i,j,:) = 224;
end end if E4(i,j,:) > 240
E4(i,j,:) = 255;
end end end subplot(2,2,4);
image(E4) title('9 Schattierungen');
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.