diff --git a/README.md b/README.md index 708ea8a..868e8ba 100644 --- a/README.md +++ b/README.md @@ -8,11 +8,11 @@ Right now, this is very preliminary. ## Installation Download the following files, removed the numbers from their file endings and put them all in a folder: -* [clatlab-0.4.0.jar](https://github.com/clij/clatlab/releases/download/0.4.0/clatlab-0.4.0.jar) +* [clatlab-0.5.0.jar](https://github.com/clij/clatlab/releases/download/0.5.0/clatlab-0.5.0.jar) * [bridj-0.7.0.jar](https://sites.imagej.net/clij/jars/bridj-0.7.0.jar-20181201213334) -* [clij_1.4.0.jar](https://github.com/clij/clij/releases/download/1.4.0/clij_-1.4.0.jar) -* [clij-clearcl-0.10.0.jar](https://github.com/clij/clij/releases/download/1.4.0/clij-clearcl-0.10.0.jar) -* [clij-core-1.4.0.jar](https://github.com/clij/clij/releases/download/1.4.0/clij-core-1.4.0.jar) +* [clij_1.4.2.jar](https://github.com/clij/clij/releases/download/1.4.2/clij_-1.4.2.jar) +* [clij-clearcl-0.10.1.jar](https://github.com/clij/clij/releases/download/1.4.2/clij-clearcl-0.10.1.jar) +* [clij-core-1.4.2.jar](https://github.com/clij/clij/releases/download/1.4.2/clij-core-1.4.2.jar) * [clij-coremem-0.6.0.jar](https://github.com/clij/clij/releases/download/1.4.0/clij-coremem-0.6.0.jar) * [clij-legacy_-0.1.0.jar](https://github.com/clij/clij-legacy/releases/download/0.1.0/clij-legacy_-0.1.0.jar) * [imagej-common-0.28.2.jar](https://sites.imagej.net/Java-8/jars/imagej-common-0.28.2.jar-20190516211613) @@ -22,7 +22,9 @@ Download the following files, removed the numbers from their file endings and pu * [scijava-common-2.77.0.jar](https://sites.imagej.net/Java-8/jars/scijava-common-2.76.1.jar-20181204141527) * [ij-1.52p.jar](https://sites.imagej.net/Java-8/jars/ij-1.52p.jar-20190701230425) * [imglib2-ij-2.0.0-beta-44.jar](https://sites.imagej.net/Java-8/jars/imglib2-ij-2.0.0-beta-44.jar-20181204141527) -* [clij-advanced-filters_-0.11.0.jar](https://github.com/clij/clij-advanced-filters/releases/download/0.11.0/clij-advanced-filters_-0.11.0.jar) +* [clij-advanced-filters_-0.12.4.jar](https://github.com/clij/clij-advanced-filters/releases/download/0.12.4/clij-advanced-filters_-0.12.4.jar) +* [fiji-lib-2.1.2.jar](https://sites.imagej.net/Java-8/jars/fiji-lib-2.1.2.jar-20170530201750) + In your matlab script, specify _every_ individual jar file in this folder using `javaaddpath('folder/jarfile.jar'). It is recommended to do this in a utility function as [demonstrated here](https://github.com/clij/clatlab/blob/master/src/main/matlab/init_clatlab.m). diff --git a/images/clablab-screenshot.png b/images/clablab-screenshot.png index 31fd0aa..4bf113c 100644 Binary files a/images/clablab-screenshot.png and b/images/clablab-screenshot.png differ diff --git a/pom.xml b/pom.xml index 35c322d..ce2f899 100644 --- a/pom.xml +++ b/pom.xml @@ -12,7 +12,7 @@ net.haesleinhuepf clatlab - 0.4.0 + 0.5.0 CLATLAB CLIJ bridge to Matlab @@ -27,12 +27,12 @@ net.haesleinhuepf clij-core - 1.4.0 + 1.4.2 net.haesleinhuepf clij-advanced-filters_ - 0.11.0 + 0.12.4 diff --git a/src/main/matlab/init_clatlab.m b/src/main/matlab/init_clatlab.m index 098fc5b..ee50b2d 100644 --- a/src/main/matlab/init_clatlab.m +++ b/src/main/matlab/init_clatlab.m @@ -17,11 +17,11 @@ if (exist('net.haesleinhuepf.clatlab.CLATLAB') ~= 8) clatlab_folder = '../../../classpath/'; javaaddpath(strcat(clatlab_folder, 'ij-1.52p.jar')); - javaaddpath(strcat(clatlab_folder, 'clatlab-0.4.0.jar')); + javaaddpath(strcat(clatlab_folder, 'clatlab-0.5.0.jar')); javaaddpath(strcat(clatlab_folder, 'bridj-0.7.0.jar')); - javaaddpath(strcat(clatlab_folder, 'clij_-1.4.0.jar')); - javaaddpath(strcat(clatlab_folder, 'clij-clearcl-0.10.0.jar')); - javaaddpath(strcat(clatlab_folder, 'clij-core-1.4.0.jar')); + javaaddpath(strcat(clatlab_folder, 'clij_-1.4.2.jar')); + javaaddpath(strcat(clatlab_folder, 'clij-clearcl-0.10.1.jar')); + javaaddpath(strcat(clatlab_folder, 'clij-core-1.4.2.jar')); javaaddpath(strcat(clatlab_folder, 'clij-coremem-0.6.0.jar')); javaaddpath(strcat(clatlab_folder, 'clij-legacy_-0.1.0.jar')); javaaddpath(strcat(clatlab_folder, 'imagej-common-0.28.2.jar')); @@ -30,8 +30,8 @@ javaaddpath(strcat(clatlab_folder, 'jocl-2.0.1.jar')); javaaddpath(strcat(clatlab_folder, 'scijava-common-2.76.1.jar')); javaaddpath(strcat(clatlab_folder, 'imglib2-ij-2.0.0-beta-44.jar')); - javaaddpath(strcat(clatlab_folder, 'clij-advanced-filters_-0.11.0.jar')); - + javaaddpath(strcat(clatlab_folder, 'clij-advanced-filters_-0.12.4.jar')); + javaaddpath(strcat(clatlab_folder, 'fiji-lib-2.1.2.jar')); % import and initialize CLATLAB diff --git a/src/main/matlab/segmentation.m b/src/main/matlab/segmentation.m index 339dad4..3df0872 100644 --- a/src/main/matlab/segmentation.m +++ b/src/main/matlab/segmentation.m @@ -38,15 +38,16 @@ blurred = clijx.create(input); thresholded = clijx.create(input); labelled = clijx.create(input); +labelled_without_edges = clijx.create(input); % blur, threshold and label the image clijx.blur(input, blurred, 5, 5, 0); clijx.automaticThreshold(blurred, thresholded, "Otsu"); clijx.connectedComponentsLabeling(thresholded, labelled); - +clijx.excludeLabelsOnEdges(labelled, labelled_without_edges); % pull result back from GPU and show it next to input -result = clijx.pullMat(labelled); +result = clijx.pullMat(labelled_without_edges); number_of_found_objects = clijx.maximumOfAllPixels(labelled); lookuptable = rand(number_of_found_objects, 3); subplot(1,2,2), imshow(result, lookuptable); @@ -57,3 +58,5 @@ thresholded.close(); labelled.close(); + + diff --git a/src/main/matlab/spotDetection3D.m b/src/main/matlab/spotDetection3D.m index 9d69965..bd442da 100644 --- a/src/main/matlab/spotDetection3D.m +++ b/src/main/matlab/spotDetection3D.m @@ -92,7 +92,7 @@ scatter3(points(1,:), points(2,:), points(3,:)) % visualise data set as maximum projection -maximumProjected = clx.create(processingSize(1:2), backgroundSubtracted.getNativeType()); +maximumProjected = clijx.create(processingSize(1:2), backgroundSubtracted.getNativeType()); clijx.maximumZProjection(backgroundSubtracted, maximumProjected); figure imshow(clijx.pullMat(maximumProjected), [0 250]); @@ -111,5 +111,6 @@ z = points(3,:); tri = delaunay(x, y, z) %trimesh(tri, x, y, z); +figure; trisurf(tri, x, y, z,'FaceAlpha',0.3)