1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84
| function varargout = cam_therm(varargin)
gui_Singleton = 1;
gui_State = struct('gui_Name', mfilename, ...
'gui_Singleton', gui_Singleton, ...
'gui_OpeningFcn', @cam_therm_OpeningFcn, ...
'gui_OutputFcn', @cam_therm_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 cam_therm is made visible.
function cam_therm_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 cam_therm (see VARARGIN)
% Choose default command line output for cam_therm
handles.output = hObject;
% Update handles structure
guidata(hObject, handles);
% --- Outputs from this function are returned to the command line.
function varargout = cam_therm_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;
% --- Executes on button press in load.
function load_Callback(hObject, eventdata, handles)
axes(handles.axes1);
cam = webcam ('Microsoft® LifeCam Studio(TM)');
webcam_image= snapshot(cam);
imshow(webcam_image);
save('webcam_image');
axes(handles.axes2);
vid = gigecam('169.254.0.1','PixelFormat', 'Mono16');
IR = snapshot(vid);
IR_image = imadjust(IR,stretchlim(IR),[]);
imshow(IR_image);
save('IR_image');
% --- Executes on button press in interp.
function interp_Callback(hObject, eventdata, handles)
load ('webcam_image');
load ('IR_image');
cpselect(webcam_image,IR_image);
% --- Executes on button press in transfo.
function transfo_Callback(hObject, eventdata, handles)
tform = fitgeotrans(movingPoints,fixedPoints,'affine');
% --- Executes on button press in save.
function save_Callback(hObject, eventdata, handles)
save('tform.mat', 'tform');
% --- Executes on button press in verif.
function verif_Callback(hObject, eventdata, handles)
axes (handles.axes3);
Roriginal = imref2d(size(IR_image));
save('Roriginal.mat', 'Roriginal');
recovered = imwarp(webcam_image,tform,'OutputView',Roriginal);
imshowpair(IR_image,recovered,'blend') |
Partager