Skip to content
Snippets Groups Projects
Commit ffbfc8fc authored by ac's avatar ac
Browse files

darkTubes cleanup

parent 3ce544a7
Branches
No related tags found
No related merge requests found
......@@ -3,7 +3,6 @@ function imfm = darkTubes(im,CONSTANTS,thickness)
voxelSize = CONSTANTS.imageData.PixelPhysicalSize;
voxelSize([1,2]) = voxelSize([2,1]); % swap (x,y,z) to matlab column major (y,x,z)
vx = max(voxelSize)./voxelSize;
% vx = [1,1,1];
sigma = 1/sqrt(3) * thickness * vx;
cudaTarget = getCudaTarget;
......@@ -12,17 +11,9 @@ imn = imf;
imn(imn>0) = 0;
imn = abs(imn);
imp=imf;imp(imp<0)=0;
bw = imbinarize(im);
bw = bwareaopen(bw,1e3);
bw = imdilate(bw,ones(4*thickness));
imfm = fibermetric(imp);
% NOTE as with imPreProcess, regional max first, then threshold
imfm = imfm .* imregionalmax(imfm,6);
imfm(~bw) = 0;
imfm = RSF.clipRSF(imfm);
% imfm = RSF.clipRSF(imfm);
4;
......
ROOT = '/g/leverjs/Schuman_OCT/OCT/qualifiedYes';
PID = 'P10010'
thickness = 5
flist = dir(fullfile(ROOT,['/' PID '*.LEVER']));
mx = regexp({flist.name},'P(?<PID>\d+)_(?<scanType>.+)_(?<date>\d+-\d+-\d+)_(?<time>\d+-\d+-\d+)_(?<eye>\w\w)_(?<scanID>.+?)_.*.LEVER','names');
tblMeta = struct2table(vertcat(mx{:}));
tblMeta.PID = str2double(tblMeta.PID);
tblMeta.folder = {flist.folder}';
tblMeta.filename = {flist.name}';
tblMeta = tblMeta(contains(tblMeta.scanType,'Optic'),:);
iid = 1;
fname = fullfile(tblMeta.folder{iid},tblMeta.filename{iid})
[im,CONSTANTS] = leversc.loadImage(fname,1,1);
im = mat2gray(im);
voxelSize = CONSTANTS.imageData.PixelPhysicalSize;
voxelSize([1,2]) = voxelSize([2,1]); % swap (x,y,z) to matlab column major (y,x,z)
vx = max(voxelSize)./voxelSize;
sigma = 1/sqrt(3) * thickness./2 * vx;
cudaTarget = getCudaTarget;
imf = HIP.LoG(im,sigma,cudaTarget);
imn = imf;
imn(imn>0) = 0;
imn = abs(imn);
imp=imf;imp(imp<0)=0;
% imp=imf;imp(imp<imn)=0;
% imfb = mat2gray(imbinarize(imp));
imfm = fibermetric((imp));
% imfm = fibermetric(mat2gray(imp));
% NOTE as with imPreProcess, regional max first, then threshold
% imfm = imp;
close all
figure(1)
clipLimits=[];
clipLimits.dim = 1;
clipLimits.range = [400:600];
im1 = getClipFrame(im,clipLimits,gray());
im2 = getClipFrame(imn,clipLimits);
im3 = getClipFrame(imp,clipLimits);
im4 = getClipFrame(imfm,clipLimits);
imOut = [im1,im2;im3,im4];
figure;axis equal;imagesc(imOut)
set(gca,'XTick',[],'YTick',[])
clipLimits = [];
clipLimits.dim = 3;
clipLimits.range = [70:110];
imH = getClipFrame(im,clipLimits,gray());
imHn = getClipFrame(imn,clipLimits);
imHp = getClipFrame(imp,clipLimits);
imHfm = getClipFrame(imfm,clipLimits);
figure;imagesc([imH;imHn;imHp;imHfm])
imfm = imfm .* imregionalmax(imfm);
% imfm(~bw) = 0;
imfm = RSF.clipRSF(imfm);
4;
......@@ -13,20 +13,17 @@ load('vfmd_meta.mat');
% tblVFMD = getVFMD(eye);
tblMeta = getMetaOCT(ROOT,eye,scanType);
% load('../qualify/onh_rnfl_thickness.mat');
load('../qualify/onh_rnfl_thickness.mat');
% radii = {[0.5,8,8],[5,5,5],[8]}; % plate,blob
% radii = {[0.5,8,8],[5,5,5],[0]}; % plate,blob
% radii = {[0.5,8,8]}; % plate
% radii = {[5,5,5]}; % plate
% radii = {[7,4,4]}; % plate
radii = {[8]};
% radii = {[77,5,5]}; %
radii = {[5]}; %
% radii = {[0.5,8,8]}
radii
[rho2,tblVelo, pData, dxx] = kernelCorr(radii,tblVFMD,tblMeta,tblRNFL);
[rho2,tblVelo, pData, dxx] = kernelCorr(radii,tblVFMD,tblMeta);
[rmse1,~] = regnetCorr(tblVelo);median(rmse1)
% optional train model here, e.g.
% [rmse1,~] = regnetCorr(tblVelo);median(rmse1)
% saveFile = fullfile(SAVE_FOLDER,['qualEns_ncdVSvfmd_' jsonencode(radii) '.mat']);
% save(saveFile)
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment