function varargout = MainForm(varargin)
% MAINFORM MATLAB code for MainForm.fig
% MAINFORM, by itself, creates a new MAINFORM or raises the existing
% singleton*.
%
% H = MAINFORM returns the handle to a new MAINFORM or the handle to
% the existing singleton*.
%
% MAINFORM('CALLBACK',hObject,eventData,handles,...) calls the local
% function named CALLBACK in MAINFORM.M with the given input arguments.
%
% MAINFORM('Property','Value',...) creates a new MAINFORM or raises the
% existing singleton*. Starting from the left, property value pairs are
% applied to the GUI before MainForm_OpeningFcn gets called. An
% unrecognized property name or invalid value makes property application
% stop. All inputs are passed to MainForm_OpeningFcn via varargin.
%
% *See GUI Options on GUIDE's Tools menu. Choose "GUI allows only one
% instance to run (singleton)".
%
% See also: GUIDE, GUIDATA, GUIHANDLES
% Edit the above text to modify the response to help MainForm
% Last Modified by GUIDE v2.5 17-Mar-2014 21:27:08
% Begin initialization code - DO NOT EDIT
gui_Singleton = 1;
gui_State = struct('gui_Name', mfilename, ...
'gui_Singleton', gui_Singleton, ...
'gui_OpeningFcn', @MainForm_OpeningFcn, ...
'gui_OutputFcn', @MainForm_OutputFcn, ...
'gui_LayoutFcn', [] , ...
'gui_Callback', []);
if nargin && ischar(varargin{1})
gui_State.gui_Callback = str2func(varargin{1});
end
if nargout
[varargout{1:nargout}] = gui_mainfcn(gui_State, varargin{:});
else
gui_mainfcn(gui_State, varargin{:});
end
% End initialization code - DO NOT EDIT
% --- Executes just before MainForm is made visible.
function MainForm_OpeningFcn(hObject, eventdata, handles, varargin)
% This function has no output args, see OutputFcn.
% hObject handle to figure
% eventdata reserved - to be defined in a future version of MATLAB
% handles structure with handles and user data (see GUIDATA)
% varargin command line arguments to MainForm (see VARARGIN)
% Choose default command line output for MainForm
handles.output = hObject;
clc;
set(handles.axes1, 'XTick', [], 'YTick', [], ...
'XTickLabel', '', 'YTickLabel', '', 'Color', [0.7020 0.7804 1.0000], 'Box', 'On',...
'xlim', [-1 1], 'ylim', [-1 1]);
set(handles.axes2, 'XTick', [], 'YTick', [], ...
'XTickLabel', '', 'YTickLabel', '', 'Color', [0.7020 0.7804 1.0000], 'Box', 'On',...
'xlim', [-1 1], 'ylim', [-1 1]);
set(handles.axes3, 'XTick', [], 'YTick', [], ...
'XTickLabel', '', 'YTickLabel', '', 'Color', [0.7020 0.7804 1.0000], 'Box', 'On',...
'xlim', [-1 1], 'ylim', [-1 1]);
handles.Ims = 0;
handles.c = 0;
handles.Im = 0;
handles.f = 0;
handles.Img = 0;
% Update handles structure
guidata(hObject, handles);
% UIWAIT makes MainForm wait for user response (see UIRESUME)
% uiwait(handles.figure1);
% --- Outputs from this function are returned to the command line.
function varargout = MainForm_OutputFcn(hObject, eventdata, handles)
% varargout cell array for returning output args (see VARARGOUT);
% hObject handle to figure
% eventdata reserved - to be defined in a future version of MATLAB
% handles structure with handles and user data (see GUIDATA)
% Get default command line output from handles structure
varargout{1} = handles.output;
function edit1_Callback(hObject, eventdata, handles)
% hObject handle to edit1 (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB
% handles structure with handles and user data (see GUIDATA)
% Hints: get(hObject,'String') returns contents of edit1 as text
% str2double(get(hObject,'String')) returns contents of edit1 as a double
% --- Executes during object creation, after setting all properties.
function edit1_CreateFcn(hObject, eventdata, handles)
% hObject handle to edit1 (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB
% handles empty - handles not created until after all CreateFcns called
% Hint: edit controls usually have a white background on Windows.
% See ISPC and COMPUTER.
if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor'))
set(hObject,'BackgroundColor','white');
end
% --- Executes on button press in pushbutton1.
function pushbutton1_Callback(hObject, eventdata, handles)
% hObject handle to pushbutton1 (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB
% handles structure with handles and user data (see GUIDATA)
filePath = OpenImageFile();
if filePath == 0
return;
end
Img = imread(filePath);
if ndims(Img) == 3
Img = rgb2gray(Img);
end
sz = size(Img);
sz0 = [112 92];
if ~isequal(sz, sz0);
Img = imresize(Img, sz0, 'bilinear');
end
% wh = 600;
% if sz(1) > wh
% rate = wh/sz(1);
% Img = imresize(Img, rate, 'bilinear');
% end
% 显示
imshow(Img, [], 'Parent', handles.axes1);
handles.Img = Img;
handles.sz = size(Img);
guidata(hObject, handles);
% --- Executes on button press in pushbutton2.
function pushbutton2_Callback(hObject, eventdata, handles)
% hObject handle to pushbutton2 (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB
% handles structure with handles and user data (see GUIDATA)
if isequal(handles.Img, 0)
return;
end
f = GetFaceVector(handles.Img);
f = f(1:round(length(f)*0.9));
handles.f = f;
guidata(hObject, handles);
msgbox('降维成功!', '提示信息');
% --- Executes on button press in pushbutton3.
function pushbutton3_Callback(hObject, eventdata, handles)
% hObject handle to pushbutton3 (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB
% handles structure with handles and user data (see GUIDATA)
if isequal(handles.f, 0)
return;
end
Im = QrGen(handles.f);
% 显示
imshow(Im, [], 'Parent', handles.axes2);
handles.Im = Im;
guidata(hObject, handles);
% --- Executes on button press in pushbutton4.
function pushbutton4_Callback(hObject, eventdata, handles)
% hObject handle to pushbutton4 (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB
% handles structure with handles and user data (see GUIDATA)
if isequal(handles.Im, 0)
return;
end
c = QrDen(handles.Im);
set(handles.edit1, 'String', c);
handles.c = c;
guidata(hObject, handles);
% --- Executes on button press in pushbutton5.
function pushbutton5_Callback(hObject, eventdata, handles)
% hObject handle to pushbutton5 (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB
% handles structure with handles and user data (see GUIDATA)
if isequal(handles.c, 0)
return;
end
Ims = FaceRec(handles.c, handles.sz);
% 显示
imshow(Ims, [], 'Parent', handles.axes3);
handles.Ims = Ims;
guidata(hObject, handles);
% --- Executes on button press in pushbutton6.
function pushbutton6_Callback(hObject, eventdata, handles)
% hObject handle to pushbutton6 (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB
% handles structure with handles and user data (see GUIDATA)
% 清理工作空间
axes(handles.axes1); cla reset;
axes(handles.axes2); cla reset;
axes(handles.axes3); cla reset;
set(handles.axes1, 'XTick', [], 'YTick', [], ...
'XTickLabel', '', 'YTickLabel', '', 'Color', [0.7020 0.7804 1.0000], 'Box', 'On');
set(handles.axes2, 'XTick', [], 'YTick', [], ...
'XTickLabel', '', 'YTickLabel', '', 'Color', [0.7020 0.7804 1.0000], 'Box', 'On');
set(handles.axes3, 'XTick', [], 'YTick', [], ...
'XTickLabel', '', 'YTickLabel', '', 'Color', [0.7020 0.7804 1.0000], 'Box', 'On');
set(handles.edit1, 'String', '');
% --- Executes on button press in pushbutton7.
function pushbutton7_Callback(hObject, eventdata, handles)
% hObject handle to pushbutton7 (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB
% handles structure with handles and user data (see GUIDATA)
choice = questdlg('确定要退出系统?', ...
'退出', ...
'确定','取消','取消');
没有合适的资源?快使用搜索试试~ 我知道了~
资源推荐
资源详情
资源评论
收起资源包目录
第 07 章 基于主成分分析的人脸二维码识别.zip (421个子文件)
ORL312.BMP 11KB
ORL305.BMP 11KB
ORL029.BMP 11KB
ORL262.BMP 11KB
ORL240.BMP 11KB
ORL134.BMP 11KB
ORL150.BMP 11KB
ORL274.BMP 11KB
ORL343.BMP 11KB
ORL169.BMP 11KB
ORL363.BMP 11KB
ORL263.BMP 11KB
ORL316.BMP 11KB
ORL203.BMP 11KB
ORL317.BMP 11KB
ORL154.BMP 11KB
ORL093.BMP 11KB
ORL164.BMP 11KB
ORL038.BMP 11KB
ORL181.BMP 11KB
ORL101.BMP 11KB
ORL398.BMP 11KB
ORL124.BMP 11KB
ORL337.BMP 11KB
ORL027.BMP 11KB
ORL253.BMP 11KB
ORL016.BMP 11KB
ORL117.BMP 11KB
ORL397.BMP 11KB
ORL344.BMP 11KB
ORL211.BMP 11KB
ORL281.BMP 11KB
ORL216.BMP 11KB
ORL205.BMP 11KB
ORL230.BMP 11KB
ORL194.BMP 11KB
ORL057.BMP 11KB
ORL279.BMP 11KB
ORL339.BMP 11KB
ORL058.BMP 11KB
ORL357.BMP 11KB
ORL131.BMP 11KB
ORL313.BMP 11KB
ORL047.BMP 11KB
ORL140.BMP 11KB
ORL172.BMP 11KB
ORL299.BMP 11KB
ORL147.BMP 11KB
ORL239.BMP 11KB
ORL269.BMP 11KB
ORL086.BMP 11KB
ORL032.BMP 11KB
ORL030.BMP 11KB
ORL048.BMP 11KB
ORL255.BMP 11KB
ORL135.BMP 11KB
ORL235.BMP 11KB
ORL250.BMP 11KB
ORL143.BMP 11KB
ORL031.BMP 11KB
ORL358.BMP 11KB
ORL374.BMP 11KB
ORL009.BMP 11KB
ORL144.BMP 11KB
ORL214.BMP 11KB
ORL334.BMP 11KB
ORL264.BMP 11KB
ORL137.BMP 11KB
ORL202.BMP 11KB
ORL236.BMP 11KB
ORL077.BMP 11KB
ORL111.BMP 11KB
ORL004.BMP 11KB
ORL364.BMP 11KB
ORL132.BMP 11KB
ORL229.BMP 11KB
ORL184.BMP 11KB
ORL302.BMP 11KB
ORL013.BMP 11KB
ORL182.BMP 11KB
ORL170.BMP 11KB
ORL167.BMP 11KB
ORL005.BMP 11KB
ORL129.BMP 11KB
ORL350.BMP 11KB
ORL319.BMP 11KB
ORL347.BMP 11KB
ORL227.BMP 11KB
ORL165.BMP 11KB
ORL120.BMP 11KB
ORL060.BMP 11KB
ORL119.BMP 11KB
ORL377.BMP 11KB
ORL082.BMP 11KB
ORL152.BMP 11KB
ORL373.BMP 11KB
ORL006.BMP 11KB
ORL092.BMP 11KB
ORL399.BMP 11KB
ORL042.BMP 11KB
共 421 条
- 1
- 2
- 3
- 4
- 5
资源评论
- Wyxniubigals2023-12-13超级好的资源,很值得参考学习,对我启发很大,支持!
- LICLOVELYOU2024-04-03这个资源值得下载,资源内容详细全面,与描述一致,受益匪浅。
- m0_748128552024-03-20总算找到了想要的资源,搞定遇到的大问题,赞赞赞!
- 2301_762678862023-05-10感谢大佬,让我及时解决了当下的问题,解燃眉之急,必须支持!
海宝7号
- 粉丝: 9918
- 资源: 124
下载权益
C知道特权
VIP文章
课程特权
开通VIP
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功