Escolar Documentos
Profissional Documentos
Cultura Documentos
if nargout
[varargout{1:nargout}] = gui_mainfcn(gui_State, varargin{:});
else
gui_mainfcn(gui_State, varargin{:});
end
% End initialization code - DO NOT EDIT
%buttons background
stopbutton=imread('stop.png');
set(handles.stop,'CData',stopbutton);
playbutton=imread('play.jpg');
set(handles.play,'CData',playbutton);
load=imread('load.jpg');
set(handles.load,'CData',load);
playpause = 0;
count = 0;
map = gray;
filter = 1;
thermal = 0;
gaussian = 0;
order = 0;
crystal = 0;
invert = 0;
entropy = 0;
brightness = 0;
edgedetect = 0;
verticaldilate = 0;
circulardilate = 0;
brightval = 0;
erode = 0;
motion = 0;
convert = 0;
stopval = 0;
set(handles.play,'Enable','off')
set(handles.stop,'Enable','off')
set(handles.colormenu,'Enable','off')
set(handles.convert2gray,'Enable','off')
set(handles.thermal,'Enable','off')
set(handles.gaussian,'Enable','off')
set(handles.order,'Enable','off')
set(handles.crystallize,'Enable','off')
set(handles.invert,'Enable','off')
set(handles.edge,'Enable','off')
set(handles.circular,'Enable','off')
set(handles.vertical,'Enable','off')
set(handles.brightness,'Enable','off')
set(handles.erode,'Enable','off')
set(handles.motion,'Enable','off')
axes(handles.original);
rectangle();
axes(handles.filtered);
rectangle();
% 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 VidFil (see VARARGIN)
% --- Outputs from this function are returned to the command line.
function varargout = VidFil_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)
stopval = 0;
%videoFReader = vision.VideoFileReader(strcat(PathName,FileName));
while hasFrame(videoFReader) && playpause == 1 && stopval == 0
set(handles.gaussian,'Enable','on')
set(handles.crystallize,'Enable','on')
set(handles.invert,'Enable','on')
set(handles.circular,'Enable','on')
set(handles.vertical,'Enable','on')
set(handles.brightness,'Enable','on')
set(handles.erode,'Enable','on')
set(handles.motion,'Enable','on')
set(handles.stop,'Enable','on')
%img=read(obj,k);
%img = step(videoFReader);
videoFReader.CurrentTime = (player.CurrentSample/Fs);
img = readFrame(videoFReader);
imagesc(img, 'Parent', handles.original);
set(handles.original,'Visible','off');
if size(img,3) == 3 && playpause == 1
set(handles.convert2gray,'Enable','on')
if convert == 1
img = rgb2gray(img);
set(handles.colormenu,'Enable','on')
set(handles.thermal,'Enable','on')
set(handles.order,'Enable','on')
set(handles.edge,'Enable','on')
if thermal == 1
set(handles.thermal,'Enable','on')
set(handles.order,'Enable','off')
set(handles.edge,'Enable','off')
end
if order == 1
set(handles.thermal,'Enable','off')
set(handles.order,'Enable','on')
set(handles.edge,'Enable','on')
end
if edgedetect == 1
set(handles.thermal,'Enable','off')
set(handles.order,'Enable','on')
set(handles.edge,'Enable','on')
end
else
set(handles.colormenu,'Enable','off')
set(handles.thermal,'Enable','off')
set(handles.order,'Enable','off')
set(handles.edge,'Enable','off')
end
else
set(handles.convert2gray,'Enable','off')
end
colormap(map);
if filter == 1
imagesc(img, 'Parent', handles.filtered);
set(handles.filtered,'Visible','off');
end
if thermal == 1
img = label2rgb(gray2ind(img,255),jet(255));
imagesc(img, 'Parent', handles.filtered);
set(handles.filtered,'Visible','off');
end
if gaussian == 1
img = imgaussfilt(img, 5);
imagesc(img, 'Parent', handles.filtered);
set(handles.filtered,'Visible','off');
end
if order == 1
img = ordfilt2(img,25,true(5));
imagesc(img, 'Parent', handles.filtered);
set(handles.filtered,'Visible','off');
end
if crystal == 1
img = imopen(img,strel('disk',15));
imagesc(img, 'Parent', handles.filtered);
set(handles.filtered,'Visible','off');
end
if invert == 1
img = imcomplement(img);
imagesc(img, 'Parent', handles.filtered);
set(handles.filtered,'Visible','off');
end
if brightness == 1
img = imadjust(img, [0; 1-brightval], [0; 1],1);
imagesc(img, 'Parent', handles.filtered);
set(handles.filtered,'Visible','off');
end
if edgedetect == 1
img = edge(img,'Canny');
imagesc(img, 'Parent', handles.filtered);
set(handles.filtered,'Visible','off');
end
if verticaldilate == 1
se1 = strel('line', 11, 90);
img = imdilate(img,se1);
imagesc(img, 'Parent', handles.filtered);
set(handles.filtered,'Visible','off');
end
if circulardilate == 1
se2 = offsetstrel('ball', 5, 5);
img = imdilate(img, se2);
imagesc(img, 'Parent', handles.filtered);
set(handles.filtered,'Visible','off');
end
if erode == 1
se3 = offsetstrel('ball', 5, 5);
img = imerode(img, se3);
imagesc(img, 'Parent', handles.filtered);
set(handles.filtered,'Visible','off');
end
if motion == 1
img = imfilter(img, fspecial('motion', 50, 45));
imagesc(img, 'Parent', handles.filtered);
set(handles.filtered,'Visible','off');
end
pause(1/videoFReader.FrameRate);
end
if colorvalue == 1
map = gray;
elseif colorvalue == 2
map = parula;
elseif colorvalue == 3
map = hsv;
elseif colorvalue == 4
map = hot;
elseif colorvalue == 5
map = cool;
elseif colorvalue == 6
map = spring;
elseif colorvalue == 7
map = summer;
elseif colorvalue == 8
map = autumn;
elseif colorvalue == 9
map = winter;
elseif colorvalue == 10
map = bone;
elseif colorvalue == 11
map = copper;
elseif colorvalue == 12
map = pink;
elseif colorvalue == 13
map = lines;
elseif colorvalue == 14
map = colorcube;
elseif colorvalue == 15
map = prism;
elseif colorvalue == 16
map = flag;
elseif colorvalue == 17
map = white;
end