elgw / dotter Goto Github PK
View Code? Open in Web Editor NEWLicense: MIT License
License: MIT License
DOTTER does show the wrong channels if dapi_001.tif, ... are named in any other way. For example DAPI_001.tif.
Please be careful with the naming until this is fixed.
Detected by Su
/Users/michelesimonetti/dotter/common/mex/df_mlfitn.c:62:20: error: too few arguments to function call, expected 9, have 7
Q, Pdim[1], C);
df_plot does not work when loading folders only when loading NM files.
if there are multiple fields of view files in one folder, in CC analyzer, the number of field appeared twice as many as the original amount. For example, if there are 3 fields, in the CC analyzer appeared 6 fields. Thus, it is a bit confusing to know which filed is which.
Hi!
I can't seem to get the installation working on my laptop.
Installing gsl and pkg-config with Homebrew seems to have worked:
(base) quentin@n168-p40 ~ % pkg-config --cflags gsl
-I/opt/homebrew/Cellar/gsl/2.7.1/include
(base) quentin@n168-p40 ~ % pkg-config --libs gsl
-L/opt/homebrew/Cellar/gsl/2.7.1/lib -lgsl -lgslcblas -lm
Yet running Compile C functions
fails:
Compiling the mex functions. First checking that there is a compiler available.
If this fails:
on MAC: install Xcode with Clang
on Linux: install gcc or clang
MEX configured to use 'Xcode with Clang' for C language compilation.
Building with 'Xcode with Clang'.
MEX completed successfully.
Building with 'Xcode with Clang'.
MEX completed successfully.
Building with 'Xcode with Clang'.
MEX completed successfully.
Building with 'Xcode with Clang'.
MEX completed successfully.
Building with 'Xcode with Clang'.
/Users/quentin/dotter/common/mex/df_nn.c:25:6: warning: logical not is only applied to the left hand side of this comparison [-Wlogical-not-parentheses]
if(! mxGetNumberOfDimensions(prhs[0]) == 2) {
^ ~~
/Users/quentin/dotter/common/mex/df_nn.c:25:6: note: add parentheses after the '!' to evaluate the comparison first
if(! mxGetNumberOfDimensions(prhs[0]) == 2) {
^
( )
/Users/quentin/dotter/common/mex/df_nn.c:25:6: note: add parentheses around left hand side expression to silence this warning
if(! mxGetNumberOfDimensions(prhs[0]) == 2) {
^
( )
/Users/quentin/dotter/common/mex/df_nn.c:25:41: warning: result of comparison of constant 2 with boolean expression is always false [-Wtautological-constant-out-of-range-compare]
if(! mxGetNumberOfDimensions(prhs[0]) == 2) {
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ^ ~
2 warnings generated.MEX completed successfully.
Building with 'Xcode with Clang'.
MEX completed successfully.
Building with 'Xcode with Clang'.
MEX completed successfully.
Building with 'Xcode with Clang'.
MEX completed successfully.
Building with 'Xcode with Clang'.
MEX completed successfully.
Building with 'Xcode with Clang'.
clang: warning: -lgsl: 'linker' input unused [-Wunused-command-line-argument]
clang: warning: -lgslcblas: 'linker' input unused [-Wunused-command-line-argument]
clang: warning: -lm: 'linker' input unused [-Wunused-command-line-argument]
clang: warning: argument unused during compilation: '-L/opt/homebrew/Cellar/gsl/2.7.1/lib' [-Wunused-command-line-argument]MEX completed successfully.
Building with 'Xcode with Clang'.
clang: warning: -lgsl: 'linker' input unused [-Wunused-command-line-argument]
clang: warning: -lgslcblas: 'linker' input unused [-Wunused-command-line-argument]
clang: warning: -lm: 'linker' input unused [-Wunused-command-line-argument]
clang: warning: argument unused during compilation: '-L/opt/homebrew/Cellar/gsl/2.7.1/lib' [-Wunused-command-line-argument]clang: warning: -lgsl: 'linker' input unused [-Wunused-command-line-argument]
clang: warning: -lgslcblas: 'linker' input unused [-Wunused-command-line-argument]
clang: warning: -lm: 'linker' input unused [-Wunused-command-line-argument]
clang: warning: argument unused during compilation: '-L/opt/homebrew/Cellar/gsl/2.7.1/lib' [-Wunused-command-line-argument]clang: warning: -lgsl: 'linker' input unused [-Wunused-command-line-argument]
clang: warning: -lgslcblas: 'linker' input unused [-Wunused-command-line-argument]
clang: warning: -lm: 'linker' input unused [-Wunused-command-line-argument]
clang: warning: argument unused during compilation: '-L/opt/homebrew/Cellar/gsl/2.7.1/lib' [-Wunused-command-line-argument]MEX completed successfully.
Building with 'Xcode with Clang'.
clang: warning: -lgsl: 'linker' input unused [-Wunused-command-line-argument]
clang: warning: -lgslcblas: 'linker' input unused [-Wunused-command-line-argument]
clang: warning: -lm: 'linker' input unused [-Wunused-command-line-argument]
clang: warning: argument unused during compilation: '-L/opt/homebrew/Cellar/gsl/2.7.1/lib' [-Wunused-command-line-argument]clang: warning: -lgsl: 'linker' input unused [-Wunused-command-line-argument]
clang: warning: -lgslcblas: 'linker' input unused [-Wunused-command-line-argument]
clang: warning: -lm: 'linker' input unused [-Wunused-command-line-argument]
clang: warning: argument unused during compilation: '-L/opt/homebrew/Cellar/gsl/2.7.1/lib' [-Wunused-command-line-argument]Error using mex
ld: library not found for -lgsl
clang: error: linker command failed with exit code 1 (use -v to see invocation)Error in df_buildExternals (line 35)
mex CFLAGS='$CFLAGS -std=c99 -march=native -Wallpkg-config gsl --cflags --libs
' df_com3.c COPTIMFLAGS='-DNDEBUG -O3' ...Error in run (line 91)
evalin('caller', strcat(script, ';'));Error in DOTTER/compile (line 539)
run('df_buildExternals');Error while evaluating Menu Callback.
I'm running MATLAB 9.12.0.2039608 (R2022a) Update 5, should I downgrade?
Note that my Homebrew prefix is by default set to /opt/homebrew/
and not /usr/local/
as used to be on earlier macOS versions.
Thanks for any help!
It would probably be convenient to use the calc folder name as a prefix, and add _userdots.csv
to it.
"when I change the pixel size to 65 from 130 when I am generating the calc file, after I choose all the parameters, in the tab Summary I still see 130 and not what I put."
Request from Ana
When manually segmenting nuclei they sometimes touch. If they do they will be merged as one nuclei.
It would be great if there is a column in the exported table of dots that indicates, per dot, if it is inside the dapi mask or also inside the dilated mask.
Noted by AM.
For some input df_fwhm1d will crash matlab.
Write to temp files. Overwrite original when save is complete, ... Appropriate actions when loading.
Since the small "show on hoover" buttons for zoom etc appeared the zooming does not play well with DOTTER. Have a rewrite of that.
For example in cCorrMeasure.m and probably in many other places.
Description:
Files processed with GPU-dw are exported with "shbcl2_" prefix. DOTTER can read in these and successfully detect nuclei and dots. However, when trying to view/select dots in calc, the following error is encountered:
Starting setUserDotsDNA
Starting GUI ...
Loading images ...
1/2 /mnt/Data/Analysis/TIR_project/Intron-exons/iiAAY128_20230915_001/dw/shbcl2_shbcl2_A594_001.tif ...
Error using df_readTif
df_readTif: File
/mnt/Data/Analysis/TIR_project/Intron-exons/iiAAY128_20230915_001/dw/shbcl2_shbcl2_A594_001.tif does not
exist
Note the double "shbcl2_" prefix in the expected file name. This seems to be due to the prefix not being parsed as such, since the channels identified during "find nuclei and dots" both carry the prefix ("shbcl2_594" and "shbcl2_647"). In setUserDotsDNA, when constructing the expected image name, replacing "dapi" in the dapi file name ("shbcl2_dapi_...") results in an extra "shbcl2_" being inserted:
fileName = strrep(M.dapifile, 'dapi', M.channels{kk});
Expected behavior: Parse prefix and fetch correct file name.
Workaround: Rename images to remove "shbcl2_" prefix.
To the followings: default mode of analysis: RNA FISH;
pixel size in x,y - 65; in z - 65;
number of dots for FWHM calculations - 25 000 (and have it always selected)
range of FWHM to be displayed: 0-100
Max dots: 100 000 (for visualization)
Dilation: 200
Description:
By default, nucleus segmentation requires manual inputs in GUI. To avoid this, the user can deselect "Supervised in GUI" in the segmentation options (while still retaining "Segment nuclei"), but this results in the following error:
Loading dapi_001.tif ... ok
Looking for cells ...
Error using bwpropfilt
Expected input number 1, BW, to be two-dimensional.Error in bwpropfilt>parse_inputs (line 68)
validateattributes(bw, {'logical'}, {'nonsparse', '2d'}, mfilename, 'BW', 1);Error in bwpropfilt (line 5)
[bw, I, attrib, p, direction, conn] = parse_inputs(args{:});Error in get_nuclei_dapi (line 78)
mask = bwpropfilt(mask, 'Area', [s.minarea, s.maxarea]);Error in A_cellSegmentation (line 102)
[mask] = get_nuclei_dapi(idapi, dapisettings);Error in df_createNM (line 134)
A_cellSegmentation('settings', s);Error in DOTTER/run_createNM (line 545)
df_createNM()Error while evaluating Menu Callback.
Expected behavior: Identical nuclei segmentation to that first suggested in the GUI (default settings). This way, the nuclei/dots detection could be started by just going through the first options then letting the code run.
Workaround: Tick in "Supervised in GUI" but just click "Done" as soon as the GUI pops up.
Hi Erik,
Could you please add an additional SNR, as calculated of the ratio from the dot divided by the average or median signal of the cell (excluding the selected dots).
Thank you so much!!
Su
This is a MATLAB bug, and the solution is described here:
https://se.mathworks.com/matlabcentral/answers/397138-why-do-i-get-a-matlabwindow-application-failed-to-launch-error-when-launching-live-editor-app-des
In short:
cd /usr/local/MATLAB/R2018b/cefclient/sys/os/glnxa64/
sudo mkdir exclude
sudo mv libglib-2.0.so* exclude/
The MATLAB provided rangesearch is more efficient and should be used instead of df_bcluster.
It would be great if there is an option to select what slices to be shown in the dotterSlider.m (aka "visual thresholds"). For example this is useful if a few of the top or bottom slices are really bright.
There should be a hint that radiant is the preferred way go create tiff files from nd2/czi.
Error using figure
First argument must be a figure object or a positive Integer
Error in setUserDotsDNA/gui_update (line 1515)
figure(fig_image)
Error in setUserDotsDNA/gui_nextField (line 816)
gui_update();
Error using uiwait (line 81)
Error while evaluating UIControl Callback.
Done
When exporting dots, it is possible to select a folder instead of a bunch of NM files. If that is done the output gets weird since the masks from the wrong image will be used.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.