Thema: MATLAB

Einzelnen Beitrag anzeigen

The Lord

Registriert seit: 19. Sep 2005
Ort: Dortmund
125 Beiträge
 
Turbo Delphi für Win32
 
#4

Re: MATLAB

  Alt 10. Aug 2007, 10:54
Da habe ich mich wohl zu früh gefreut. Ich habe jetzt immer einen Error, wenn ich zum nächsten Image gelangen will.


Hier ist meine Funktion:

Delphi-Quellcode:
function [] = roiselect(filename)
% function [] = roiselect(filename)
%
% This function creates a mask of an image.
% The mask will be saved at the same folder as "filename_msk.ext".
% Also more than one polygon per image are possible.

% Alexander Schuetz
% 02.08.07

I = imread(filename);
% opens the image
BW = zeros(size(I));
% creates a zero matrix
C = 1;
% initial value

while 1
      if gra_roiselect == 0, break,end
      imshow(I | BW);
      % combines the image with the mask
      BW = BW | roipoly;
      [N,ext] = get_file_name(filename);
      N = strcat(N,'_msk',ext);
end
imwrite(BW,N);
% writes the image
Das ist die Funktion, mit dessen Hilfe man die Polygons erstellen kann. Ich erzeuge mit der Funktion "gra_roiselect" noch einen Button, den gedrückt wird, um das nächste Image zu erhalten. Dieser Button liefert den Wert 0, wenn man ihn drückt. Wenn man markiert liefert die Funktion den Wert 1.
Ich kann jetzt mehrere Polygons markieren, aber nur noch auf einem Image.

Vielleicht kann mir jemand mit dem Code helfen?
Gruß!
Alexander
Dunkel die andere Seite ist...
Klappe Yoda und iss deinen Toast!
  Mit Zitat antworten Zitat