-
Notifications
You must be signed in to change notification settings - Fork 82
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Add deconvolution and texture analysis notebooks for I2k 2023 #290
Conversation
This commit reorganizes the use case section of the docs into sub categories: - imagej-ops - integration - segmentation - other use cases
Codecov ReportAll modified lines are covered by tests ✅
Additional details and impacted files@@ Coverage Diff @@
## main #290 +/- ##
=======================================
Coverage 77.65% 77.65%
=======================================
Files 16 16
Lines 1947 1947
=======================================
Hits 1512 1512
Misses 435 435 ☔ View full report in Codecov by Sentry. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Wow! 🤩
For the GLCM notebook:
- This is a super awesome notebook. It helps me too to understand Haralick features, which I never really understood before. It also helped me to see more things matplotlib can do. 😎
- There are a few minor typos, misspellings, and formatting oddities, e.g. the "Slicing a
net.imagej.DefaultDataset
" comment not having the proper leading asterisk, due to Markdown. texutures, Promenence, Cluser, transistions, cotains, ... Might be fastest for someone who isn't you to just go through it with a fresh set of eyes and fix those little things. - I would suggest to name the crop regions differently than "crop_0" through "crop_5". It would be clearer to name them something like: cyto1, cyto2, cyto3, gag, bkg1, bkg2. Then explain why you chose these crops. Then finally at the end when they cluster up nicely, you don't have to spend so many words explaining what each crop represents, but only the explanation of why these areas measure in this way.
I have a couple small suggestions, just about organization. Take or leave either of them:
|
Hi @elevans I would change the paragraph that says "this notebook utilizes the Richardson-Lucy Total Variation (RLTV) algorithm, which has significantly improved axial resolution over the standard RL algorithm" The RLTV algorithm is used to limit noise, which can be a problem with the standard RL algorithm, however there is not alarge difference in 'resolution' between the standard and TV regularized version (as a side note resolution is a pretty nuanced topic and technically deconvolution improves 'contrast based' resolution methods, like the Rayleigh criteria, but does not restore out of band frequencies to a significant extent). See below description and figure from my deconvolution/deep learning workshop. Even though the workshop used my opencl python version of RL, the figure linked below was actually generated a long time ago, for the 2015 ImageJ Conference, and used the version of RL from imagej-ops. |
Thanks @bnorthan! I'll update my text to state that RTLV limits the noise that standard RL can amplify. |
Awesome stuff @elevans .. you taught me some stuff today! 😄 |
This PR adds two new jupyter notebooks to the use case section in the PyImageJ documentation. These notebooks do the following:
Both of these notebooks only need ImageJ2 and no legacy 🎉 so we don't need any changes to the code base. I also reorganized the use case section into sub sections:
The goal is to use these notebooks in the upcoming I2K 2023 workshop.