Skip to content
This repository has been archived by the owner. It is now read-only.

Commit

Permalink
added matVis and made merging and correcting files from different tri…
Browse files Browse the repository at this point in the history
…als possible
  • Loading branch information
MPIBR-vollrathf committed Aug 9, 2016
1 parent 96941f5 commit 263feb7
Show file tree
Hide file tree
Showing 3 changed files with 11,802 additions and 20 deletions.
77 changes: 58 additions & 19 deletions CellSortLoadSingleFiles.m
Original file line number Diff line number Diff line change
@@ -1,24 +1,63 @@
function [data_g, data_r] = CellSortLoadSingleFiles(green, red)
fileListGreen = dir(green);
fileListRed = dir(red);
function [data_g, data_r] = CellSortLoadSingleFiles(green, red, data_g, data_r)
trialFolders = dir;
trialFolders(1:2) = [];
dirFlags = [trialFolders.isdir];
trialFolders = {trialFolders(dirFlags).name};

numFilesGreen = size(fileListGreen,1);
numFilesRed = size(fileListRed,1);
if numFilesGreen ~= numFilesRed
disp('Green and Red Channel have different number of Images, take the smaller value..');
end
numFiles = min([numFilesRed, numFilesGreen]);

%read first frame to get resolution fily type etc..
temp = readTiff(fileListGreen(1).name);
data_g = zeros(size(temp,1), size(temp,2), numFiles, class(temp));
temp = readTiff(fileListRed(1).name);
data_r = zeros(size(temp,1), size(temp,2), numFiles, class(temp));

for i=1:numFiles
temp = readTiff(fileListGreen(i).name);
data_g(:,:,i) = temp;
temp = readTiff(fileListRed(i).name);
data_r(:,:,i) = temp;
%go into trial folders and import files
wb = waitbar(0, 'Loading Files..');
for i=1:size(trialFolders,2)
waitbar(i/size(trialFolders,2));
%go into trialFodlers and import data
cd(num2str(i));
%import data
fileListGreen = dir(green);
fileListRed = dir(red);
numFilesGreen = size(fileListGreen,1);
numFilesRed = size(fileListRed,1);



if numFilesGreen ~= numFilesRed
disp('Green and Red Channel have different number of Images, take the smaller value..');
end
numFiles = min([numFilesRed, numFilesGreen]);
temp = readTiff(fileListGreen(1).name);
data_g_temp = zeros(size(temp,1), size(temp,2), numFiles, class(temp));
temp = readTiff(fileListRed(1).name);
data_r_temp = zeros(size(temp,1), size(temp,2), numFiles, class(temp));

for j=1:numFiles
temp = readTiff(fileListGreen(j).name);
data_g_temp(:,:,j) = temp;
temp = readTiff(fileListRed(j).name);
data_r_temp(:,:,j) = temp;
end

%if data is no existent, preallocate it one time when i == 1
if i==1 && ~exist('data_g', 'var') && ~exist('data_r','var')
data_g = data_g_temp;
data_r = data_r_temp;
else
temp_data = zeros(size(temp,1), size(temp,2), size(data_g,3)+numFiles, class(temp));
temp_data(:,:,1:size(data_g,3)) = data_g;
temp_data(:,:,(size(data_g,3)+1):end) = data_g_temp;
data_g = temp_data;

temp_data = zeros(size(temp,1), size(temp,2), size(data_r,3)+numFiles, class(temp));
temp_data(:,:,1:size(data_r,3)) = data_r;
temp_data(:,:,(size(data_r,3)+1):end) = data_r_temp;
data_r = temp_data;
end

%add data_g_temp and data_r_temp to outputData



%go back
cd ..;
end
close(wb);
end
2 changes: 1 addition & 1 deletion main.m
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
%% load and prepare all single tiffs
%importing
[data_g,data_r] = CellSortLoadSingleFiles('ChanA*.tif', 'ChanB*.tif');
[data_g, data_r] = CellSortLoadSingleFiles('ChanA_*_*.tif', 'ChanB_*_*.tif');
%shiftCorrection
%generates shift corrected files for the green and red channels, needs
%DIPlib (available for free)
Expand Down
Loading

0 comments on commit 263feb7

Please sign in to comment.