www.pudn.com > eyedemo.rar > segment.m
function [circleiris circlepupil imagewithnoise] = segment(eyeimage);
%写入diagnostics图像的文件路径
global DIAGPATH
DIAGPATH = 'diagnostics';
%读入文件
eyeimage1 = imread(eyeimage_filename);
eyeimage = rgb2gray(eyeimage1);
[circleiris circlepupil imagewithnoise] = segmentiris(eyeimage);
% 写噪声图像
imagewithnoise2 = uint8(imagewithnoise);
imagewithcircles = uint8(eyeimage);
%得到外圆边界像素坐标
[x,y] = circlecoords([circleiris(2),circleiris(1)],circleiris(3),size(eyeimage));
ind2 = sub2ind(size(eyeimage),double(y),double(x));
%得到内圆边界像素坐标
[xp,yp] = circlecoords([circlepupil(2),circlepupil(1)],circlepupil(3),size(eyeimage));
ind1 = sub2ind(size(eyeimage),double(yp),double(xp));
% 写入噪声区域
imagewithnoise2(ind2) = 255;
imagewithnoise2(ind1) = 255;
%写入覆盖的圆环
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);
%归一化参数
radial_res = 32;
angular_res = 240;
% 执行归一化
[polar_array, noise_array] = normaliseiris(imagewithnoise, circleiris(2),...
circleiris(1), circleiris(3), circlepupil(2), circlepupil(1), circlepupil(3),eyeimage_filename, radial_res, angular_res);
%输出归一化后的模板与噪声模板
w = cd;
cd(DIAGPATH);
imwrite(polar_array,[eyeimage_filename,'-polar.jpg'],'jpg');
imwrite(noise_array,[eyeimage_filename,'-polarnoise.jpg'],'jpg');
cd(w);