Zyun-Y / DconnNet

Codes for CVPR2023 paper "Directional Connectivity-based Segmentation of Medical Images"
138 stars 7 forks source link

some problems #1

Closed nyjshinibaba closed 1 year ago

nyjshinibaba commented 1 year ago

Hello author, I would like to ask what simplecv is in DconnNet.py in the code and why we cannot find this package. We can only find a package named SimpleCV, and there is no. module in it

Zyun-Y commented 1 year ago

Thanks. Please use the following command to install it.

pip install --upgrade git+https://github.com/Z-Zheng/SimpleCV.git

Zyun-Y commented 1 year ago

Hello author, I would like to ask what simplecv is in DconnNet.py in the code and why we cannot find this package. We can only find a package named SimpleCV, and there is no. module in it

To avoid the same issue, we have updated our codes in /model: model.py and gap.py so that one can run the codes without installing this package. Thanks for this question.

nyjshinibaba commented 1 year ago

thanks so much so much so much. Before you taught me this method, I used the global average pooling that comes with torch to replace the global average pooling of simplecv in the code. Can you tell me the difference between simplecv's global average pooling and torch's global average pooling?

Zyun-Y commented 1 year ago

thanks so much so much so much. Before you taught me this method, I used the global average pooling that comes with torch to replace the global average pooling of simplecv in the code. Can you tell me the difference between simplecv's global average pooling and torch's global average pooling?

Sounds good! I personally don't think there is a difference between these two. You can use either one. But if you find any difference, please let me know.

nyjshinibaba commented 1 year ago

Dear author, thanks so much so much.I have also two questions for you. The first question is why only a number of channels from 1 to class were obtained when calculating dicel in the function named "multi-class-forward" in "connectloss.py", and why the loss of class 0 was not calculated.The second problem is that the 8-channel method of label extension containing directional connection information used in your paper is very similar to the idea of eight-neighborhood seed growth algorithm I have learned before. I think it is very novel to use semantic segmentation label extension. I would like to stand on your shoulder and apply this method to other fields and publish corresponding papers.Do you think this kind of work is valuable? If you can give me some advice, I would be very honored. My English is not very good. If there are any unclear expressions, please forgive me

Zyun-Y commented 1 year ago
  1. We skipped class 0 because it is the background class with no fluid-related contextual meaning. Please feel free to generalize it to your specific datasets and tasks, e.g., calculating Dice loss for all the classes.
  2. Thanks for your acknowledgment of our work. As we mentioned, please feel free to generalize it to your dataset and cite this work; and we are happy to answer questions regarding this code.
nyjshinibaba commented 1 year ago

Dear author, thanks so much so much ,after reading the code in more detail, I have another question, is "sasc_output" added to input e5 in the model SDE in the code, which is not reflected in the model frame diagram in the paper, for better propagation gradient?Why is the output of the W^i_3 convolution operation added to e^i_5 not found in the code?My English is not very good. If there are any unclear expressions, please forgive me

Zyun-Y commented 1 year ago

Thanks. Yes, the skip connection is for gradient purposes. Therefore, there is no significant difference between adding it in a sub-module or adding it after concating sub-channels. In the codes, we implemented the latter one. But either one works, you can change it to the first one.