From 160944869c3c493545bb96dec7a5062939f267e7 Mon Sep 17 00:00:00 2001
From: ac <andrew.r.cohen@drexel.edu>
Date: Thu, 8 Aug 2024 12:59:17 -0400
Subject: [PATCH] plate,blob updates

---
 src/MATLAB/+RSF/getImf.asv    | 86 -----------------------------------
 src/MATLAB/+RSF/getImf.m      |  2 +-
 src/MATLAB/+RSF/quantize8.asv | 18 --------
 src/MATLAB/metadata/goLR.m    | 20 ++++----
 4 files changed, 13 insertions(+), 113 deletions(-)
 delete mode 100644 src/MATLAB/+RSF/getImf.asv
 delete mode 100644 src/MATLAB/+RSF/quantize8.asv

diff --git a/src/MATLAB/+RSF/getImf.asv b/src/MATLAB/+RSF/getImf.asv
deleted file mode 100644
index e7d53f7..0000000
--- a/src/MATLAB/+RSF/getImf.asv
+++ /dev/null
@@ -1,86 +0,0 @@
-function imf = getImf(pData,radii,scanType)
-
-% radii is 1-element or 3-element cell array. [0,0,0] for unused channel 
-% FLIF takes 1 or 3 UBYTE 
-radii = {[0.5,8,8],[5,5,5],[10,10,10]}; % plate,blob
-
-% NGPU = HIP.Cuda.DeviceCount;
-% p = ljsStartParallel(8*NGPU);
-
-N_CUDA_PROCS = 48;
-startTarget = 1;
-imf = {};
-im1 = Composite();
-pp = Composite();
-while startTarget <= size(pData,1)
-    spmd
-        pp = spmdIndex - 1 + startTarget;
-        if spmdIndex <= N_CUDA_PROCS && pp <= size(pData,1)            
-            strDB = fullfile(pData.folder{pp},pData.filename{pp});
-            [im] = SSF.loadImage(strDB,1);
-            % 3-channel plate,blob,0
-            for c = 1:length(radii)
-                if all(0==radii{c})
-                    im1(:,:,:,c) = zeros(size(im));
-                else
-                    im1(:,:,:,c) = RSF.imPreProcess(im,radii{c});
-                end                
-        end
-    end
-    startTarget = startTarget + N_CUDA_PROCS;
-    for i = 1:N_CUDA_PROCS
-        if pp{i} <= size(pData,1)
-            imf{pp{i}} = im1{i};
-        end
-    end
-end
-
-px = {}; % critical voxels
-mx = []; % mean by stack
-sx = []; % sigma by stack
-for i = 1 : length(imf)    
-    for c = 1:size(imf{i},4)
-        i1 = imf{i}(:,:,:,c);
-        px{i,c} = i1(find(i1));
-        mx(i,c) = mean(px{i,c});
-        sx(i,c) = std(px{i,c});
-    end
-end
-
-% clipRange = [2.5,97.5];
-clipRange = [0.5,99.5];
-for c = 1:size(imf{1},4)
-    p1 = vertcat(px{:,c});
-    px_pos = p1(p1>0);
-    px_neg = abs(p1(p1<0));
-
-    clip_pos(c,:) = prctile(px_pos,clipRange);
-    clip_neg(c,:) = prctile(px_neg,clipRange);
-end
-4;
-for i = 1:length(imf)    
-    for c = 1 : size(imf{i},4)
-        if all(0==imf{i}(:,:,c))
-            continue
-        end
-        imp = imf{i}(:,:,:,c);
-        imp(imp<0)=0;
-        imn = imf{i}(:,:,:,c);
-        imn(imn>0)=0;
-        imn=abs(imn);
-        imq_pos = SSF.quantize8(imp,clip_pos(c,:));
-        imq_neg = SSF.quantize8(imn,clip_neg(c,:));
-        if all(0==imq_pos)
-            imf{i}(:,:,:,c) = imq_neg;
-        else
-            % [0,127] for imq_neg, [128,255] imq_pos
-            imq_pos = (0.5 .* imq_pos) + uint8(128 .* (imq_pos>0));
-            imq_neg = 0.5 .* imq_neg ;
-            imf{i}(:,:,:,c) = (imq_neg + imq_pos);            
-        end
-        
-    end    
-    
-    imf{i} = uint8(imf{i});
-end
-4;
diff --git a/src/MATLAB/+RSF/getImf.m b/src/MATLAB/+RSF/getImf.m
index 67e2384..3d04658 100644
--- a/src/MATLAB/+RSF/getImf.m
+++ b/src/MATLAB/+RSF/getImf.m
@@ -2,7 +2,7 @@ function imf = getImf(pData,radii,scanType)
 
 % radii is 1-element or 3-element cell array. [0,0,0] for unused channel 
 % FLIF takes 1 or 3 UBYTE 
-radii = {[0.5,8,8],[5,5,5],[10,10,10]}; % plate,blob
+radii = {[0.5,8,8],[5,5,5],[0,0,0]}; % plate,blob
 % radii = {[0.5,8,8]}; % plate
 
 % NGPU = HIP.Cuda.DeviceCount;
diff --git a/src/MATLAB/+RSF/quantize8.asv b/src/MATLAB/+RSF/quantize8.asv
deleted file mode 100644
index f7c98e1..0000000
--- a/src/MATLAB/+RSF/quantize8.asv
+++ /dev/null
@@ -1,18 +0,0 @@
-% clipLimits = [minVal,maxVal];
-function [im, clipLimits] = quantize8(i1,i2)
-
-if isa(i1,'uint8') && isa(i2,'uint8')
-    return
-end
-
-pix = [i1(find(i1)),i2(find(i2))];
-% clip at 99.9%
-clipLimits = prctile(pix,[0.05,99.95]);
-
-im = max(im,clipLimits(1));
-im = min(im,clipLimits(end));
-im = (im - clipLimits(1)) ./ (clipLimits(end) - clipLimits(1));
-im = im2uint8(im);
-im(0 == im_in) = 0;
-4;
-
diff --git a/src/MATLAB/metadata/goLR.m b/src/MATLAB/metadata/goLR.m
index 5672154..317a5b0 100644
--- a/src/MATLAB/metadata/goLR.m
+++ b/src/MATLAB/metadata/goLR.m
@@ -34,16 +34,20 @@ tD = tblMeta(strcmp(tblMeta.eye,'OS'),:);
 t1 = tS;
 t2 = tD;
 
-% tO = tblMeta(contains(tblMeta.scanType,'Optic'),:);
-% tM = tblMeta(contains(tblMeta.scanType,'Macular'),:);
-% t3 = tO;
-% t4 = tM;
+tO = tblMeta(contains(tblMeta.scanType,'Optic'),:);
+tM = tblMeta(contains(tblMeta.scanType,'Macular'),:);
+t3 = tO;
+t4 = tM;
 
 clf;hold on
 plot3(t1.Y(:,1),t1.Y(:,2),t1.Y(:,3),'r*')
 plot3(t2.Y(:,1),t2.Y(:,2),t2.Y(:,3),'og')
-
-% plot3(t3.Y(:,1),t3.Y(:,2),t3.Y(:,3),'mx')
-% plot3(t4.Y(:,1),t4.Y(:,2),t4.Y(:,3),'cs')
-
+legend({'OS','OD'})
+xlabel('NCD1')
+ylabel('NCD2')
+zlabel('NCD3')
+
+plot3(t3.Y(:,1),t3.Y(:,2),t3.Y(:,3),'mx')
+plot3(t4.Y(:,1),t4.Y(:,2),t4.Y(:,3),'cs')
+legend({'ONH','macula'})
 toc
\ No newline at end of file
-- 
GitLab