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

Mikroskopbbilder einlesen und auswerten

 

Popsi

Gast


Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 19.04.2011, 19:07     Titel: Mikroskopbbilder einlesen und auswerten
  Antworten mit Zitat      
Hallo miteinander.

Vielleicht könnt ihr mir ja helfen.
Ich habe verschiedene Mikroskopaufnahmen von elektronischen Strukturen (zur zur Randinfo)
Da sind verschieden dicke Leiterbahnen zu sehen.
Ich möchte die nun nacheinander einlesen und das Programm ermittelt aus dem Bild die Breite der Leiterbahn...am Mikroskop ist es möglich abzumessen, dass ist mir für soviele Proben zu umständlich bzw. nicht praktisch...

Ich habe gehört, dass mit imread grafiken eingelesen werden.
also
bild=double(imread('test.bmp'));
ich wollte mir das mit image ansehen, aber es kommt nur eine weiße fläche.
im anhang mal ein bild wie ich es meine.

Hat jemand vielleicht Ideen, wie ich es besser machen kann?
Oder wie ich grob an die Umsetzung herangehen muss.
Ich dachte daran, es in einzelne Werte einzulesen. Die Matrix hat sicherlich je nach Farbwert einen anderen Wert.
Dann kann man ja nach bestimmten Werten suchen und mittels einer Schleife die Abstände der jeweiligen Leiterbahn ermitteln.
Danke

test - Kopie.jpg
 Beschreibung:

Download
 Dateiname:  test - Kopie.jpg
 Dateigröße:  265.28 KB
 Heruntergeladen:  396 mal
test - Kopie.jpg
 Beschreibung:

Download
 Dateiname:  test - Kopie.jpg
 Dateigröße:  265.28 KB
 Heruntergeladen:  427 mal


Hubertus
Forum-Meister

Forum-Meister


Beiträge: 1.034
Anmeldedatum: 08.01.09
Wohnort: Hamburg
Version: ---
     Beitrag Verfasst am: 19.04.2011, 20:34     Titel:
  Antworten mit Zitat      
Moin Popsi,

der Reihe nach. Um Dein Bild darzustellen, benötigst Du nicht das Format double. Es genügt:

Code:
I=imread('Bild.tif');   % oder andere Extention
imshow(I)


Double nur für weitere Berechnungen. Darüberhinaus gehen die Funktionen image und imagesc. Wenn Dein Bild nur weißen Inhalt anzeigt, liegen Deine Bilddaten meist zwischen 0 und 1, also im Format double- eher selten in größeren Dimensionen-über 256. Du kannst das mit: imshow(I,[]) wiedergeben oder das Format in uint8 wandeln. Befehle, die nur die Anzeige ändern sind problematisch, wenn man das Bild später in einem anderen Programm aufrufen will. "image" gibt ein S/W-Bild farbig codiert wieder,verfälscht somit den wahren Inhalt. Daher würde ich immer das Bild mit imshow anzeigen lassen.

Viele Grüße

Hubertus
Private Nachricht senden Benutzer-Profile anzeigen
 
Popsi

Gast


Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 20.04.2011, 10:16     Titel:
  Antworten mit Zitat      
Gut, Vielen Dank.

Kann das Bild nun einlesen und mir grafisch (auch farbig) anzeigen lassen. Das klappt soweit.
Nun ist mein Ziel die Breite der Leiterbahn zu ermitteln.

Ein Pixel müsste ein µm sein... passt so zumindest und das Mikroskop exportiert die Bilder meines Wissens so.

Ich zähle also die Pixel eines bestimmten Bereichs und das ist der Abstand.
Nun sind die Bilder ja mxnx3! Zum Ermitteln nehme ich von den 3 Farbbereichen 1. ist das ok so?

Hier mal zur Veranschaulichung das Programm.
Code:

I_1 = imread('test9.png');
I_cropped_1 = I_1(:,:,:);
imshow(I_cropped_1)
a1=length(I(:,1,:));
a2=length(I(1,:,:));
abstand=0;
for j=1:a2
    for i=1:a1
    if(I(i,j,1)>100)abstand=abstand+1;
    end
    end
    abstand_final(j)=abstand;
    abstand=0;
end
 

er ermittelt also den Abstand der Leiterbahn über die komplette Länge...das kann ich dann mitteln oder mir anzeigen lassen.
Ist das ok, dass ich quasi nur den Graustufenbreich nehme?

Nun war von meinem Betreuer die Frage in Bezug auf die Rauhigkeit der Bahn. Ist das dann die Abweichung der Bahnbreite zur mittleren Bahnbreite?

Danke

Edit by _Peter_: Bitte Codeumgebung verwenden!. Danke.
 
Hubertus
Forum-Meister

Forum-Meister


Beiträge: 1.034
Anmeldedatum: 08.01.09
Wohnort: Hamburg
Version: ---
     Beitrag Verfasst am: 20.04.2011, 10:51     Titel:
  Antworten mit Zitat      
Du kannst das Bild mit "rgb2gray" in ein S/W-Bild wandeln oder Dir die Farbauszüge anzeigen lassen, die dann wieder S/W-Bilder sind. Auf diese kannst Du mit: Bild(:,:,1) für den Rotkanal und dann wie folgt G + B zugreifen. Manchmal zeigen einige Auszüge bessere Kontraste. Da Du im my-Bereich arbeitest, kann das Rauschen ein Problem werden, weil Rauschpartikel die Kanten mit Non-Informationen aufweichen können. Beim Entrauschen muß man jedoch vorsichtig sein, weil hier die Kanten aufgeweicht werden können. Da kann man ein Reihe von Verfahren probieren, da die Rauschcharakteristik schwerer zu ermitteln ist. Das Ganze geht aber nur in Richtung Genauigkeit. Je ungenauer Dein Anspruch ist, desto weniger Probleme hast Du natürlich.

Vielleicht reicht auch nur ein HP-Filter, der die Kanten besser hervorbringt. Filter findest Du hier im Forum. Ideal wäre natürlich, wenn Du mit dem Mikroskop eine Referenzbreite aufnimmst, von der Du die tatsächliche Breite kennst und diese mit einer Aufnahme vergleichst. Dann kannst Du schnell die Genauigkeit Deiner Messung kontrollieren.

Viel Glück

Hubertus
Private Nachricht senden Benutzer-Profile anzeigen
 
Popsi

Gast


Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 20.04.2011, 11:25     Titel:
  Antworten mit Zitat      
der Hinweis bzgl. einer Referenzbreite ist super. Daran habe ich garnicht gedacht. Danke.
Auch die anderen Hinweise helfen mir weiter.
 
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 - 2025 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.