Comments (3)
So that's all possible (apart from radius
, as there's no way to extract that with cellfinder).
So would something like this work (in both sample and standard space)?
x | y | z | Region | Hemisphere |
---|---|---|---|---|
1000 | 1250 | 1500 | Somatomotor areas, Layer 1 | Left |
2000 | 50 | 100 | Lateral visual area, layer 1 | Right |
Or would you rather them all in one csv?
x | y | z | transformed x | transformed y | transformed y | Region | Hemisphere |
---|---|---|---|---|---|---|---|
1000 | 1250 | 1500 | 1010 | 1260 | 1505 | Somatomotor areas, Layer 1 | Left |
2000 | 50 | 100 | 2100 | 56 | 104 | Lateral visual area, layer 1 | Right |
What kind of analysis/visualisation are you planning on? I'm working on another tool, cellfinder-analyst
which will incorporate group-level analyses.
from cellfinder.
I think that having it all in one csv would be the easier.
It's not so much for anything I had planned, but more something that would be useful in general. This is the kind of output that one would use for any kind of analysis/visualisation outside of cellfinder so it'd be good to have an option to generate this data.
For instance in a cluttered scene one might want to look at cells in one brain region at the time (e.g. to see in which subdivision of the region are located).
As an example here in brainreder I just visualise the cells in the isocortex:
cells = pd.read_hdf(cellsfile)
# ... find in which structure each cell is and add it to the data frame ...
# Select only cells in the isocortex
regions = scene.get_structure_descendants('Isocortex').acronym
cells = cells.loc[cells.region.isin(regions)]
But to do this I had to determined in which region each cell is from its coordinates.
This is fairly easy and fast to do in BrainRender but it'd be even easier to just have it in a .csv or .h5 file.
from cellfinder.
Took nearly a year, but this is added in 476ccb1.
There is now a file saved by default (cellfinder_output/analysis/all_points.csv
) which looks something like:
coordinate_raw_axis_0 | coordinate_raw_axis_1 | coordinate_raw_axis_2 | coordinate_atlas_axis_0 | coordinate_atlas_axis_1 | coordinate_atlas_axis_2 | structure_name | hemisphere |
---|---|---|---|---|---|---|---|
638 | 3475 | 771 | 928 | 104 | 774 | Primary visual area, layer 5 | left |
638 | 3554 | 653 | 937 | 79 | 794 | Primary visual area, layer 2/3 | left |
638 | 3554 | 772 | 929 | 103 | 792 | Primary visual area, layer 4 | left |
638 | 3574 | 717 | 932 | 93 | 798 | Primary visual area, layer 2/3 | left |
638 | 3665 | 707 | 933 | 88 | 820 | Primary visual area, layer 2/3 | left |
638 | 3685 | 726 | 931 | 92 | 824 | Primary visual area, layer 2/3 | left |
638 | 3693 | 777 | 928 | 103 | 824 | Primary visual area, layer 2/3 | left |
There's no hierarchy because not every BrainGlobe atlas will necessarily have a hierarchy (and I'm lazy).
from cellfinder.
Related Issues (20)
- Update to Python 3.11
- Update cell classification network HOT 1
- Save models into e.g. `.brainglobe/cellfinder/models`
- Update the sample data
- [Feature] Allow the user to select points from more than one layer at once in the curation interface HOT 2
- [Feature] Warn the user when overwriting training data in the curation interface
- [Feature] Add keyboard shortcuts to the curation interface
- [BUG] CI breaks with pytest v8.0.0 HOT 1
- [BUG] Multiprocessing threading causing timeouts HOT 7
- [BUG] Inappropriate handling of unsigned integer data types HOT 1
- [Feature] Use uint16 for cell candidate detection when signal_array is small, to save memory HOT 3
- [Feature] Refactor so THRESHOLD and SOMA_CENTRE_VALUE are defined in one place
- Analysis csv output does not include data about all cells classified
- Downloading the trained model crashes if the model directory already exists
- [Feature] Benchmark napari versus brainmapper code
- [BUG] Writing custom config is not possible on HPC with shared installation of BrainGlobe
- [BUG] Intermittent Segmentation Faults on CI HOT 14
- Move data loading code to `brainglobe_utils.image_io.load`
- [BUG] Cellfinder seems to get stuck on structure splitting in some situations? HOT 4
- Investigate why there's a transpose operation that cannot be removed. HOT 8
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from cellfinder.