lfz / DSB2017

The solution of team 'grt123' in DSB2017
MIT License
1.23k stars 419 forks source link

One question with implementing and extending your method (potential publication request) #34

Open totesarana opened 7 years ago

totesarana commented 7 years ago

Hi, sir,

Thanks for your repository. I am a student that have recently implemented your method with tensorflow and have extended it to be a cascaded system for lung nodule detection problem. I have validated it on LUNA dataset. From your part of code, I have used the "preprocessing" step (prepare.py) and also the "detector" code as my initialized nodule proposals. Then I added two cascaded parts for position refinement and false positive reduction.

I am writing to you to ask if I could use your code for my project and submit an abstract to a conference. My work has been inspired by your idea a lot so I want to give you a co-authorship. Meanwhile, if there is any existing publication from you on this, could you please let me know so I put them into my reference list?

Please let me know what you think. I respect your opinion and would like to discuss more.

Thanks,

lfz commented 7 years ago

Thank you for informing me about that, I am so glad that our code inspired more work. Purely out of curiosity, could you let me know:

  1. how good is your result?
  2. where are you submitting to?
  3. what's your name and institute?

We do not need a co-authorship, because it's part of the rule that we must publish all our code.

Our paper is still under-written, when will you submit the draft? I will submit it to arxiv as soon as possible.

Thank you for your interest in our work and may we can solve this nodule detection problem soon.

2017-08-04 10:27 GMT+08:00 totesarana notifications@github.com:

Hi, sir,

Thanks for your repository. I am a student that have recently implemented your method with tensorflow and have extended it to be a cascaded system for lung nodule detection problem. I have validated it on LUNA dataset. From your part of code, I have used the "preprocessing" step (prepare.py) and also the "detector" code as my initialized nodule proposals. Then I added two cascaded parts for position refinement and false positive reduction.

I am writing to you to ask if I could use your code for my project and submit an abstract to a conference. My work has been inspired by your idea a lot so I want to give you a co-authorship. Meanwhile, if there is any existing publication from you on this, could you please let me know so I put them into my reference list?

Please let me know what you think. I respect your opinion and would like to discuss more.

Thanks,

To contact me with Email, please use: totesarana@gmail.com

— You are receiving this because you are subscribed to this thread. Reply to this email directly, view it on GitHub https://github.com/lfz/DSB2017/issues/34, or mute the thread https://github.com/notifications/unsubscribe-auth/AIigQ31XYvmidPsc2bzt_p3rybNN08rNks5sUoGigaJpZM4OtNDx .

-- 廖方舟 清华大学医学院 Liao Fangzhou School of Medicine Tsinghua University Beijing 100084 China

lfz commented 7 years ago

I see, so I think it would be OK for you to submit your draft without citing ours.

My name is Fangzhou Liao, Tsinghua University

2017-08-04 21:30 GMT+08:00 totesarana notifications@github.com:

hi, lfz, So far the result is 90% sensitivity with average 14 false positive per scan. I am planing to send a draft to SPIE 2018 medical imaging in one week. They ask for a short abstract (4 page with a concise introduction of method and results) first to make decisions on accepting the work or not. I would definitly continue working more on false positive reduction to improve the performance.

Since I rewrote the network in tensorflow, I retrained your "pretrained" model and tested it on the same testing dataset (135 randomly selected cases). To achieve a 90% sensitivity, your pre-trained model will generate around 25~30 false positives. Is this close to the performance you have? Thanks for reminding me this. I need to verify this is close to your performance and I did not write any bugs during transferring your PyTorch code to tensorflow.

I am from Vanderbilt University. Name is Yiyuan Zhao. Can I also know your name and institute, so I can put you in the reference?

— You are receiving this because you commented. Reply to this email directly, view it on GitHub https://github.com/lfz/DSB2017/issues/34#issuecomment-320249409, or mute the thread https://github.com/notifications/unsubscribe-auth/AIigQ2mgYJLUZsb8_GVzHwKb1O-vtaeJks5sUx0HgaJpZM4OtNDx .

-- 廖方舟 清华大学医学院 Liao Fangzhou School of Medicine Tsinghua University Beijing 100084 China

lfz commented 7 years ago

the number of proposals depends on the threshold you choose. I don't quite remember the specific number.

How do your result compare with the results on LUNA leader board? I think that ranking might be important

2017-08-04 21:30 GMT+08:00 totesarana notifications@github.com:

hi, lfz, So far the result is 90% sensitivity with average 14 false positive per scan. I am planing to send a draft to SPIE 2018 medical imaging in one week. They ask for a short abstract (4 page with a concise introduction of method and results) first to make decisions on accepting the work or not. I would definitly continue working more on false positive reduction to improve the performance.

Since I rewrote the network in tensorflow, I retrained your "pretrained" model and tested it on the same testing dataset (135 randomly selected cases). To achieve a 90% sensitivity, your pre-trained model will generate around 25~30 false positives. Is this close to the performance you have? Thanks for reminding me this. I need to verify this is close to your performance and I did not write any bugs during transferring your PyTorch code to tensorflow.

I am from Vanderbilt University. Name is Yiyuan Zhao. Can I also know your name and institute, so I can put you in the reference?

— You are receiving this because you commented. Reply to this email directly, view it on GitHub https://github.com/lfz/DSB2017/issues/34#issuecomment-320249409, or mute the thread https://github.com/notifications/unsubscribe-auth/AIigQ2mgYJLUZsb8_GVzHwKb1O-vtaeJks5sUx0HgaJpZM4OtNDx .

-- 廖方舟 清华大学医学院 Liao Fangzhou School of Medicine Tsinghua University Beijing 100084 China

totesarana commented 7 years ago

Hi LFZ,

I forgot to reply your message. I have tried two tests so far. The first one was to compare my cascaded system with your original system (baseline). I retrained both system on Kaggle and part of the LUNA dataset. Then I tested on 135 LUNA dataset. I adjusted some parameters like the scales to make it work better with nodule detection instead of cancerous (or large size) nodule detection. The score I got is 0.72 for the cascaded system and 0.71 for the baseline system. Even though the scores were close, I found the baseline system has a cap in sensitivity in its FROC curve. I noticed that the baseline system can only achieve the maximum sensitivity at 82% (when generating 6~32 false positives/scan) while the cascaded system can already achieve sensitivity over 90% when having 4 False positive/scan. It can also achieve higher sensitivities as the False positives/scan increase (95%~12 is my observation so far).

Another test I have done was to only train the baseline system with fine resolution CT (slice thickness < 2.5mm). The baseline system can already reach 90% at 3 false positive/scan. I am testing the cascaded system at this point. Once I get more results I will let you know. I think training two systems for fine resolution CTs and coarse resolution CTs could be beneficial, as I have mentioned in another open issue.

This is really a brilliant system. Please let me know when your arvix paper is ready. If my abstract is accepted, I should cite your paper in a formal way.

zengyh1900 commented 6 years ago

@totesarana Could you please explain that, how do you construct the gound truth label ?

totesarana commented 6 years ago

@1900zyh Hi, I was using LUNA 2016 dataset. They have ground truth labels provided.

zengyh1900 commented 6 years ago

@totesarana LUNA 2016 just gives a csv file, which contains the labels in such format: (x, y, z, d) But it seems that you should build a new format for your network, maybe a map? the size of it seems : 32 32 32 3 5.

I wonder how did you construct this map of labels?

lfz commented 6 years ago

https://arxiv.org/abs/1711.08324 @totesarana sorry for this late publication, I am a poor paper writer