Comments (11)
Hey @algebio
Thanks a lot for the bug report!
This seems to be the same issue that is causing: BodenmillerGroup/ImcSegmentationPipeline#62
@plankter Could you look into this?
from imctools.
Hi,
An update: I just freshly installed everything and run tests and cannot see that anything looks suspicious.
Would you be able to share an example .ome.tiff ?
from imctools.
How did you generate the .ome.tiff
? From .mcd
files via imctools
? imctools v1 or v2?
from imctools.
Hi @votti
Thanks for your help!
I created the ome.tiff from a .mcd. You can find everything in this folder. I used imctools v2 which I installed it yesterday from GitHub. I also updated Anaconda before running the Jupyter notebook. Something that I noticed when updating the external dependencies is that some of them never got updated and remained in the "need to be updated" list. However, imagecodecs, pandas, xmltodict, xtiff updated fine.
I used the same .mcd a few days ago with the previous version of Anaconda and imctools v1 and I got everything without any error messages.
Regards
Juan
from imctools.
Thanks @algebio!!
Having this data was extremly helpful.
Unfortunately I am not longer working in the mass cytometry field, so I so input from the community is really required to keep things runnig.
@plankter : The issue seems to because the ChannelLabel
attribute that is used to fill the Name
can be empty in the mcd
.
This is a legit behavior, as the 'antibody name' is merely a label of the channel. The unique channel identifier is allways the isotope.
In imctools v1 I set the Isotope channel name as label, if the label was not in the mcd:
imctools/imctools/io/mcdxmlparser.py
Line 187 in 8983b97
This is helpful as many OME tiff viewers will show the Name (=Channel Label), so having this missing can be confusing/cause issues.
I think this filling-in is not longer done in imctools v2
.
There are two t things to do:
- Make sure the downstream processing also works with
ome.tiff
where theName
channel attribute is not set
-> This is crucial to support also ome.tiff generated withimctools
so far
Implementation: The quick fix would be to change line:
imctools/imctools/io/ometiff/ometiffparser.py
Line 107 in 00a3242
int(chan.attrib["ID"].split(":")[2]): (chan.attrib["Name"], chan.attrib["Fluor"]) for chan in channels
to
int(chan.attrib["ID"].split(":")[2]):(chan.attrib.get("Name", chan.attrib["Fluor"]), chan.attrib["Fluor"]) for chan in channels
- (Optional) Bring back the previous behavior to fill the
Name
attribute with theChannel name
in cases that theChannel Label
is left empty.
@plankter : Does this make sense? Could you implement this?
@nilseling : I heard you may be doing some acquisitions for a tiny test dataset: This issue could be reproduced by adding a channel manually to the acquisition and not setting a label. Would it be feasible to add this to your test acquisition??
Thanks team for helping to keep this running!
from imctools.
Hi @votti
I'm glad that I could help improve this already great pipeline. I can't wait to see these new changes implemented and use imctools v2 with my dataset.
Regards
Juan
from imctools.
Hey @votti, I will manually add Ag to capture the counterstain as one of the channels. This can then be used to test Label
free channels. To me it would also make sense to bring back the old behaviour and fill the Name
attribute with the metal isotope.
from imctools.
Hi
Thank you for addressing this issue. Could you let me know when it is sorted?
Regards
Juan
from imctools.
Hi,
I shall release an update today.
Best regards,
Anton Rau
from imctools.
Thank you @votti for the suggestions!
Version 2.1.5 with the fix is released.
Best,
Anton
from imctools.
Beautiful!
Thank you Vito, Anton and Nils. Great job!
Regards
Juan
from imctools.
Related Issues (20)
- extract panorama HOT 4
- Make exceptions discoverable in API HOT 3
- Extra 161 bytes extracted on all image buffers HOT 1
- TxtParser and McdParser should share a common base class
- Wrong ROI coordinates for new Fluidigm software versions HOT 4
- Create imctools.data.Acquisition object without loading image data when using TxtParser
- Feature request: option to export additional columns in omefile_2_analysisfolder HOT 4
- ValueError: invalid literal for int() with base 10: HOT 1
- Broken assertion HOT 3
- ome2histocat stripps .tiff file ending from masks HOT 2
- Value Error: No session JSON files available HOT 3
- Error while running IMCtools HOT 4
- Generated OME-XML in OME-TIFF files is not schema compliant due to out-of-order AcquisitionDate element HOT 3
- broken link to xml namespace HOT 1
- imctools.scripts HOT 2
- Typo in method omexml.py HOT 2
- Inquiry about omexml.py related to schema location HOT 2
- NotADirectoryError: [Errno 20] Not a directory: '../../data/ometiff/.DS_Store/.DS_Store_Acquisition_meta.csv' HOT 4
- Adding clear specification of the 'ome' folder HOT 1
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 imctools.