Comments (6)
Indeed, I test with the default template, in which part
is specified as a list (which defines/translates into a dropdown menu in the bidseditor). I now made a catch for this (i.e. when part is not specified as a list) when loading the bidsmap.
Another note You're checking there the ImageType DICOM field (0008, 0008) but the BIDS specification says, that this value corresponds to (0008,9208) which is ComplexImageComponent, which I can't find in my DICOM file.
Sure I use ImageType as an attribute to identify (discriminate) acquired DICOM scans (datatypes), but that has nothing to do with the Complex Image Component Attribute you are talking about. The latter is supposed to store the part mag
/phase
/real
/imag
info, but I also don't see anyting in our DICOM headers. Hence I'm not using it to populate part
have you considered using pull requests to fix issues? It seems to me that there are fixes of multiple things at once on the master branch. PRs would greatly help with isolating the fixes and testing them.
The way I work is as follows. When I'm working on a bug or feature that is not too complex and that I'm sure I want to land in master, then I develop it straight in master, otherwise I create a feature branch. I use PRs only to merge contributions from other people. I see the advantages of doing more of my development in feature/bugfix branches (but it sometimes also makes life more complicated due to potential merge conflicts), but I don't see what the benefit would be using PR's for my own branches as opposed to merging them directly with master? Sure, there is CI on github, but I locally use tox to get the same functionality (but way faster)
from bidscoin.
Thanks for reporting this. You are using bidscoin in a way that I didn't intend, which is a very good thing as it makes me fix the code to be more robust and flexible :-)
from bidscoin.
Another note You're checking there the ImageType DICOM field (0008, 0008) but the BIDS specification says, that this value corresponds to (0008,9208) which is ComplexImageComponent, which I can't find in my DICOM file.
Sure I use ImageType as an attribute to identify (discriminate) acquired DICOM scans (datatypes), but that has nothing to do with the Complex Image Component Attribute you are talking about. The latter is supposed to store the part
mag
/phase
/real
/imag
info, but I also don't see anyting in our DICOM headers. Hence I'm not using it to populatepart
The comment in the code says
bidscoin/bidscoin/plugins/dcm2niix2bids.py
Line 171 in 2a0dd3a
So I assumed that you're trying to set this value. Therefore the comment about the DICOM field.
from bidscoin.
have you considered using pull requests to fix issues? It seems to me that there are fixes of multiple things at once on the master branch. PRs would greatly help with isolating the fixes and testing them.
The way I work is as follows. When I'm working on a bug or feature that is not too complex and that I'm sure I want to land in master, then I develop it straight in master, otherwise I create a feature branch. I use PRs only to merge contributions from other people. I see the advantages of doing more of my development in feature/bugfix branches (but it sometimes also makes life more complicated due to potential merge conflicts), but I don't see what the benefit would be using PR's for my own branches as opposed to merging them directly with master? Sure, there is CI on github, but I locally use tox to get the same functionality (but way faster)
I've just noticed that you reference the issue ids in your commits, which will help me now.
In this context, a PR would group the commits relevant to resolving a specific issue, which then helps in identifying commits or simply a branch to test, before it is merged to master, especially when multiple issues are resolved in parallel. PRs also give a nice summarized view of the changes over all commits for a specific issue, which in my experience helps to focus 😃
from bidscoin.
I can't reproduce this problem anymore on the master branch.
from bidscoin.
Sure I use ImageType as an attribute to identify (discriminate) acquired DICOM scans (datatypes), but that has nothing to do with the Complex Image Component Attribute you are talking about. The latter is supposed to store the part
mag
/phase
/real
/imag
info, but I also don't see anything in our DICOM headers. Hence I'm not using it to populatepart
The comment in the code says
bidscoin/bidscoin/plugins/dcm2niix2bids.py
Line 171 in 2a0dd3a
So I assumed that you're trying to set this value. Therefore the comment about the DICOM field.
Ah sure, there I'm trying to guess the image type before the bidsmap is fed to the bidseditor. In the BIDS specification they mean something else when they talk about ImageType, as you noted. I wasn't sure what you were trying to say, but I suppose we are on the same line of thought here
from bidscoin.
Related Issues (20)
- ERROR | Could not parse required sub-<label> label HOT 57
- Using `PhaseEncodingDirection` field to distinguish sequences HOT 6
- Add easy to check output with information on what source was converted to what BIDS files HOT 13
- Derivatives data HOT 4
- Add CSA header support HOT 9
- bidscoiner function leaves out every sequence HOT 65
- Clicking on item in bidsmapper GUI crashes program HOT 1
- Make a bids2bids template bidsmap
- Bidsmap schema doesn't require meta key in plugin HOT 17
- Can path to .bidscoin be configured? HOT 62
- B0FieldSource as a list HOT 12
- Exclude sections behaves weirdly HOT 53
- New BIDS feature of dcm2niix HOT 2
- Postfix error HOT 9
- typo in nibabel2bids.py HOT 1
- Quickly add common tags in BIDSMapper/editor HOT 2
- Unable to find dicoms in the tmp directory that the program creates HOT 2
- Merge all bidsapps to a single bidscoin bidsapp HOT 1
- Add a user-friendly way to handle bidsmapping exceptions 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 bidscoin.