필터 지우기
필터 지우기

How to run Libor Masek code(creat​eiristempl​ate)?

조회 수: 4 (최근 30일)
Umme Tania
Umme Tania 2013년 11월 22일
댓글: monee 2018년 11월 30일
% createiristemplate - generates a biometric template from an iris in % an eye image. % % Usage: % [template, mask] = createiristemplate(eyeimage_filename) % % Arguments: % eyeimage_filename - the file name of the eye image % % Output: % template - the binary iris biometric template % mask - the binary iris noise mask % % Author: % Libor Masek % masekl01@csse.uwa.edu.au % School of Computer Science & Software Engineering % The University of Western Australia % November 2003
function [template, mask] = createiristemplate(eyeimage_filename)
% path for writing diagnostic images global DIAGPATH DIAGPATH = 'diagnostics';
%normalisation parameters radial_res = 20; angular_res = 240; % with these settings a 9600 bit iris template is % created
%feature encoding parameters nscales=1; minWaveLength=18; mult=1; % not applicable if using nscales = 1 sigmaOnf=0.5;
eyeimage = imread(eyeimage_filename);
savefile = [eyeimage_filename,'-houghpara.mat']; [stat,mess]=fileattrib(savefile);
if stat == 1 % if this file has been processed before % then load the circle parameters and % noise information for that file. load(savefile);
else
% if this file has not been processed before
% then perform automatic segmentation and
% save the results to a file
[circleiris circlepupil imagewithnoise] = segmentiris(eyeimage);
save(savefile,'circleiris','circlepupil','imagewithnoise');
end
% WRITE NOISE IMAGE %
imagewithnoise2 = uint8(imagewithnoise); imagewithcircles = uint8(eyeimage);
%get pixel coords for circle around iris [x,y] = circlecoords([circleiris(2),circleiris(1)],circleiris(3),size(eyeimage)); ind2 = sub2ind(size(eyeimage),double(y),double(x));
%get pixel coords for circle around pupil [xp,yp] = circlecoords([circlepupil(2),circlepupil(1)],circlepupil(3),size(eyeimage)); ind1 = sub2ind(size(eyeimage),double(yp),double(xp));
% Write noise regions imagewithnoise2(ind2) = 255; imagewithnoise2(ind1) = 255; % Write circles overlayed imagewithcircles(ind2) = 255; imagewithcircles(ind1) = 255; w = cd; cd(DIAGPATH); imwrite(imagewithnoise2,[eyeimage_filename,'-noise.jpg'],'jpg'); imwrite(imagewithcircles,[eyeimage_filename,'-segmented.jpg'],'jpg'); cd(w);
% perform normalisation
[polar_array noise_array] = normaliseiris(imagewithnoise, circleiris(2),... circleiris(1), circleiris(3), circlepupil(2), circlepupil(1), circlepupil(3),eyeimage_filename, radial_res, angular_res);
% WRITE NORMALISED PATTERN, AND NOISE PATTERN w = cd; cd(DIAGPATH); imwrite(polar_array,[eyeimage_filename,'-polar.jpg'],'jpg'); imwrite(noise_array,[eyeimage_filename,'-polarnoise.jpg'],'jpg'); cd(w);
% perform feature encoding [template mask] = encode(polar_array, noise_array, nscales, minWaveLength, mult, sigmaOnf);
  댓글 수: 2
Image Analyst
Image Analyst 2013년 11월 22일
Click the green triangle?
Umme Tania
Umme Tania 2013년 11월 25일
I want to know about function parameter.

댓글을 달려면 로그인하십시오.

답변 (2개)

Sadia sultana turna
Sadia sultana turna 2013년 11월 26일
편집: Sadia sultana turna 2013년 11월 26일
i don't have clear idea about the parameters. i am still looking for proper explanation.
but if u are concerned about running 'createiristemplate' , make sure u have some other function files and the image to be processed in the same matlab directory.
other files i had in my directory were:
addcircle adjgamma canny circlecords createiristemplate encode findcircle findline gaborconvolve gethammingdistance houghcircle hysthresh linecords nonmaxup normaliseiris segmentiris shiftbits
presence of all these eased processing of a '.bmp' format image and creating an iris template. why is that, well i am working on that. let me know if u get to know about explanation of stages of 'createiristemplate' ... :)
  댓글 수: 2
Umme Tania
Umme Tania 2013년 11월 27일
eyeimage=imread('aeval1.bmp');
>> [template, mask] = createiristemplate('aeval1.bmp');
??? Undefined function or method 'conv2' for input arguments of type 'double' and attributes 'full 3d real'.
Error in ==> filter2 at 73 y = conv2(hcol, hrow, x, shape);
Error in ==> canny at 40 im = filter2(gaussian,im); % Smoothed image.
Error in ==> findcircle at 43 [I2 or] = canny(image, sigma, scaling, vert, horz);
Error in ==> segmentiris at 50 [row, col, r] = findcircle(eyeimage, lirisradius, uirisradius, scaling, 2, 0.20, 0.19, 1.00, 0.00);
Error in ==> createiristemplate at 56 [circleiris circlepupil imagewithnoise] = segmentiris(eyeimage);
Ammar Malik
Ammar Malik 2013년 11월 29일
Umme Tania I was also having the same problem but found out that actually the image I was using was not a 2D image. So, first you have to convert your image to grayscale 2D image using rgb2gray command. After this your problem will be solved insha-ALLAH :)

댓글을 달려면 로그인하십시오.


Ammar Malik
Ammar Malik 2013년 11월 29일
Umme Tania I was also having the same problem but found out that actually the image I was using was not a 2D image. So, first you have to convert your image to grayscale 2D image using rgb2gray command. After this your problem will be solved insha-ALLAH :)
  댓글 수: 2
Umme Tania
Umme Tania 2013년 12월 2일
Hey still having problem..... ??? Error using ==> iptcheckinput Function IMRESIZE expected its first input, A, to be nonempty.
Error in ==> imresize>parsePreMethodArgs at 358 iptcheckinput(A, {'numeric', 'logical'}, {'nonsparse', 'nonempty'}, mfilename, 'A', 1);
Error in ==> imresize>parseInputs at 263 [params.A, params.map, params.scale, params.output_size] = ...
Error in ==> imresize at 140 params = parseInputs(varargin{:});
Error in ==> canny at 42 im = imresize(im, scaling);
Error in ==> findline at 23 [I2 or] = canny(image, 2, 1, 0.00, 1.00);
Error in ==> segmentiris at 106 lines = findline(topeyelid);
Error in ==> createiristemplate at 57 [circleiris circlepupil imagewithnoise] = segmentiris(eyeimage);
monee
monee 2018년 11월 30일
umm tania i have the same problem can u help me??plz

댓글을 달려면 로그인하십시오.

카테고리

Help CenterFile Exchange에서 Images에 대해 자세히 알아보기

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by