Matlab Gui 帮助进行签名验证

Matlab Gui help for signature verification

假设我创建了一个 GUI,让用户 select 图像形成一个位置(浏览),然后他单击偏度按钮来计算偏度,现在当我运行程序时我 select 一个图像它的偏斜度被计算并存储在一个文本文件中,我再次浏览另一个图像(但这次我不运行我的文件我直接单击 select 图像按钮),计算偏斜度但现在是 skweness上一张图片是 overwritten.I 想要我浏览的所有 img 的偏度,并通过运行我的代码一次保存在 txt 文件中请帮助我 这是我的代码:

% --- Executes on button press in select_image.
function select_image_Callback(hObject, eventdata, handles)
[filename, pathname, filterindex] = uigetfile('*.jpg', 'Pick a .jpg image');
X=([pathname,filename]);
global y;
y=filename;
%display(y);

handles.y=y;
imshow(X);
axes(handles.axes1);



% --- Executes on button press in skewness.
function skewness_Callback(hObject, eventdata, handles)
% hObject    handle to skewness (see GCBO)
% eventdata  reserved - to be defined in a future version of MATLAB
% handles    structure with handles and user data (see GUIDATA)
global y;
 I=imread(y);
 I2 = im2double(I);
 s=skewness(I2(:));

 display(s);



fid = fopen('pqfile.txt','w');
fprintf(fid,'skewness1=%f',s);
fclose(fid);
% this saves the skweness of the first selected image but when I select an other Images It overwrites the previous value of s.

请帮我解惑

改用fprintf

因为你也想保存以前的数据,所以你应该在fopen中使用'a'而不是'w'

fid = fopen('pqfile.txt', 'a'); % Write to existing file but append to what is already there

请注意,您可以使用 printfprintffprintf 包括写入屏幕和文件。

fprintf(fid,'skewness1=%f',s);

printf(fid,'skewness1=%f',s);

另外别忘了关闭文件

fclose(fid);