% Kopieren Sie einfach den gesamten Code, speichern Sie ihn und führen Sie ihn aus
Funktion zd479599250
% Schreiben Sie eine GUI-Schaltfläche, um ein Bild zu lesen. Die Funktion ist wie folgt:
% Klicken Sie auf die Schaltfläche, um das Dialogfeld zu öffnen, und wählen Sie dann das Bild aus dem Dialogfeld aus
% Erstellen Sie ein Zeichenfenster, das ein Koordinatensystem und eine Schaltfläche enthält
axes('units','normal','pos',[.1 .3 .8 .6]);
uicontrol('style','push','units','normal','pos',[.4 .1 .2 .1],'str','Open...','call',@ localOpenPic)
function localOpenPic(varargin)% Die Rückruffunktion der Schaltfläche lässt den Benutzer zunächst die Bilddatei auswählen, öffnen und anzeigen
% Bilddateityp (unvollständig, nur zur Demonstration)
filter = { ...
'*.bmp;*.jpg;*.gif;*.emf', 'Alle Bilddateien (*.bmp; *.jpg; *.gif; *emf)' ...
'*.bmp', 'Bitmap-Datei (*.bmp)' ...
'*.jpg', 'JPEG-Datei (*.jpg)' ...
'*.gif', 'GIF-Datei (*.gif)' ...
'*.emf', 'Metadatei (*.emf)' ...
'*.*', 'Alle Dateien (*.*)' ...
};
% Datei auswählen
[Dateiname, Pfadname] = uigetfile(filter, 'Öffnen...');
if isequal(filename,0) |. isequal(pathname,0), return, end
% Lesen Sie das Bild und zeigen Sie es an
[X, map] = imread([Pfadname Dateiname]);
Farbkarte(Karte)
Bild(X)
% Stellen Sie das Koordinatensystem auf eine geeignete Weise ein, um das Bild anzuzeigen
Achsenbild
set(gca, 'vis', 'off')
1, verwenden Sie Windows Paintbrush zum Speichern als monochrome Bitmap
2. Legen Sie die Bilder und .m-Dateien im selben Ordner ab. Angenommen, der Dateiname lautet my_im.bmp.
im=imread('my_im.bmp'); %Bilder lesen
index=find(im==1); %Suchen Sie die Koordinaten des „schwarzen Punkts“ im Diagramm. Die Koordinaten sind eindimensionale Daten.
s=size(im); %Lesen Sie die Bildgröße
[y,x]=ind2sub(s,index); %In zweidimensionale Koordinaten konvertieren. x ist die Abszisse des Punktes und y ist die Ordinate des Punktes.
%----------
%Datenimport funktioniert nicht. Ihr Originalbild besteht aus drei Matrizen aus Rot, Grün und Blau. Beim Lesen ist es natürlich dreidimensional. Selbst wenn Sie eine 256 * 256-Matrix einlesen, müssen Sie die darin enthaltenen Punkte mithilfe der Suchfunktion finden und dann die Koordinaten konvertieren.
Dies ist nur ein Batch-Lesen von Bildern, die im Matlab-Forum gefunden wurden. Legen Sie die a.m-Datei direkt in den Ordner Anhang 1 und führen Sie sie direkt aus
Ich denke, wir müssen die Bildzeichenerkennung verwenden und sie anhand der Struktur der Zeichen messenimname = dir('.*.bmp');%
im_num = length(imname);%
im_temp = imread(imname(1).name,'bmp');%
[height,width] = size(im_temp);% ermittelt die Größe des Bildes
DB(:,:,a) = Nullen(height,width,im_num,'uint8');
% Alle Bilder lesen
für a = 1:length(imname)
DB(:,:,a) = imread(imname(a).name,'bmp');%Bilddaten lesen
Ende
Bilder stapelweise lesen
Mit der Katzenfunktion verbinden;
Rand jeder Notiz
ima = DB(:,:,a);
im_left = ima(:,1);
im_right= ima(:,end);
Der Grauwert beträgt 0 255. Wenn Sie die Zahl binarisieren möchten, können Sie auch im2bw verwenden
Bitte akzeptieren Sie meine Antwort!
Mein Code hat das Debuggen bestanden
Kann dies Ihr Problem lösen?
Das obige ist der detaillierte Inhalt vonSo schreiben Sie eine Schaltfläche in der Matlab-GUI, die Bilder lesen kann. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!