%ParticipantName RecordingName MediaName RecordingTimestamp FixationIndex GazeEventType GazeEventDuration GazePointIndex GazePointX (MCSpx) GazePointY (MCSpx) %P01 Rec 01 01_100dpi.JPG 9688 20 Fixation 184 581 462 514 %1 2 3 4 5 6 7 8 9 10 function [percBWorigT3Orig,percT3BWorigT3] = trackAnaFnc02(inDataFname, inImageFname, outImageFname) fid = fopen(inDataFname); out = textscan(fid,'%s%s%s%d%d%s%d%d%d%d','delimiter','\t'); fclose(fid); I=find(out{9}>0 & out{10}>0); subplot(4,3,1) myImage = imread(inImageFname); imshow(myImage); hold on; plot (out{9}(I),out{10}(I)); hold on; myType=out{6}; F=find(strcmp(myType,'Fixation')); plot (out{9}(F),out{10}(F),'ro'); subplot(4,3,2) [height,width,dim] = size(myImage) myHeat=zeros(height,width); for idx=1:size(I) num= int16(I(idx)); myx=int32(out{9}(num)); if myx>width continue end myy=int32(out{10}(num)); if myy>height continue end myHeat(myy,myx)= myHeat(myy,myx) +1; end %heatmax=max(max(myHeat)); %image(myHeat/heatmax*255); %colormap(gray); heatPixImg = mat2gray(myHeat); imshow(heatPixImg); subplot(4,3,3) %R=25; %sigma=5; R=50; sigma=10; %myFilter = fspecial('gaussian', R,sigma)*pi*R*R; myFilter = fspecial('gaussian', R,sigma); gaussHeat=imfilter(myHeat,myFilter); %gheatmax=max(max(gaussHeat)); %image(gaussHeat/gheatmax*255*2); %colormap(gray); maxGaussHeat=max(max(gaussHeat)) gaussHeatImg = mat2gray(gaussHeat); imshow(gaussHeatImg); subplot(4,3,4) myRef=zeros(height,width); myRef(int32(height/2),int32(width/2))=255; R=50; sigma=10; myFilter = fspecial('gaussian', R,sigma); gaussRef=imfilter(myRef,myFilter); plot(gaussRef(int32(height/2),:)); totalArea=height*width; subplot(4,3,5) BWT1 = im2bw(gaussHeat,0.03); imshow(BWT1); title('T1:tresh=0.03') subplot(4,3,6) BWT2 = im2bw(gaussHeat,0.01); imshow(BWT2); title('T2:tresh=0.01') subplot(4,3,7) BWT3 = im2bw(gaussHeat,0.003); imshow(BWT3); T3Area=bwarea(BWT3) percT3Total=(T3Area/totalArea)*100 title('T3:tresh=0.003') title(sprintf('T3:tresh=0.003(%.2f%% z total)',percT3Total)) subplot(4,3,8) BWorig = imcomplement(im2bw(myImage,0.9)); BWorigArea=bwarea(BWorig) percBWorigTotal=(BWorigArea/totalArea)*100 imshow(BWorig); title(sprintf('ORIG(%.2f%% z total)',percBWorigTotal)) subplot(4,3,9) imshowpair(BWorig,BWT3,'falsecolor'); title('ORIG a T3') subplot(4,3,10) %BWorig-BWT3 mySubImg= xor(BWorig,and(BWorig,BWT3)); imshow(mySubImg); BWorigT3Area=bwarea(mySubImg) percBWorigT3Orig=BWorigT3Area/BWorigArea*100 title(sprintf('ORIG-T3(%.2f%% z ORIG)',percBWorigT3Orig)) subplot(4,3,11) %BWT3-BWorig mySubImg2=xor(BWT3,and(BWorig,BWT3)); imshow(mySubImg2); T3BWorigArea=bwarea(mySubImg2) percT3BWorigT3=T3BWorigArea/T3Area*100 title(sprintf('T3-ORIG(%.2f%% z T3)',percT3BWorigT3)) print(gcf,outImageFname,'-dpng','-r200'); close all