yeyuxmf / retinal_vascular_segmentation

Retinal vascular segmentation,Transformer,CNN, Pytorch, Python
5 stars 1 forks source link

Please Help #3

Open 9932916355 opened 4 months ago

9932916355 commented 4 months ago

Hello. I'm running the code in a notebook in Google Collab and I just changed the parser = argparse.ArgumentParser section in the Training settings. But the main part does not show the training steps and it runs very quickly. The test results were printed as follows:

OrderedDict ([('AUC_ROC', 0.455738808872651), ('AUC_PR', 0.07543721945004993), ('f1-score', 0.16105150446312566), ('Acc',0.08757803976239545), ('SE', 1.0 ), ('SP', 0.0), ('precision', 0.08757803976239545)]) sen_v = 1.0 acc_v = 0.08757804036140442 spec_v = 0.0

If I send you the notebook and you see the code, can you help me to get close to the results you obtained so that I can use this code as a basis in my work. Thank you

The changes I made in the " parser = argparse.ArgumentParser ..... " part because of the exit error: class Args: pass

args = Args() args.exp_name = 'cls_1024' args.model = 'dgcnn' args.epochs = '1001' args.no_cuda = 'False' args.eval = 'False' args.dataset = 'modelnet40' args.batch_size = '1' args.test_batch_size = '1' args.use_sgd = 'True' args.lr = '1.5*1e-4' args.momentum = '0.9' args.scheduler = 'cos' args.seed = '1' args.num_points = '2048' args.dropout = '0.5' args.emb_dims = '2048' args.model_path = '' args.k = '40'

yeyuxmf commented 4 months ago

@9932916355 The main.py file here originates from someone else's point cloud model, and I've only made some modifications to it for blood vessel segmentation. Most of the arguments in argparse are not used and may have caused distractions for you. I will now directly remove the unused parts and run another training and testing session. Once the training and testing are completed without issues, I will re-upload the main.py file. It is expected to be completed in a few hours. 这里的main.py来至于别人的一个点云模型,在血管分割时我仅做了一些修改,argparse里面的参数大多无用, 可能对你们造成了干扰, 我现在直接删掉无用的部分,再做一次训练测试,等训练测试完毕且没有问题,我再将main.py重新上传。预计几个小时后完成

9932916355 commented 4 months ago

Thank you very much for your quick response and I hope the problem will be solved. I wish you success.

yeyuxmf commented 4 months ago

@9932916355 I'm sorry, it may take some more time. I've found some problems in the uploaded source code. I'll contact you again after I fix it in these two days.

9932916355 commented 4 months ago

Thank you for taking the time to solve the code problem. I am a graduate student in artificial intelligence and I want to run this code on colab and I hope to get good results like yours because the only code available to me is for hybrid networks cnn, transformer for retinal segmentation. So that I can enter the ideation phase after that and improve the criteria.

On Thu, Jul 25, 2024, 12:16 PM huang229 @.***> wrote:

@9932916355 https://github.com/9932916355 I'm sorry, it may take some more time. I've found some problems in the uploaded source code. I'll contact you again after I fix it in these two days.

— Reply to this email directly, view it on GitHub https://github.com/huang229/retinal_vascular_segmentation/issues/3#issuecomment-2249800093, or unsubscribe https://github.com/notifications/unsubscribe-auth/BELSMYNDATQRPB5RYJQ4DM3ZOC3PRAVCNFSM6AAAAABLMTO6XCVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDENBZHAYDAMBZGM . You are receiving this because you were mentioned.Message ID: @.***>

yeyuxmf commented 4 months ago

@9932916355 The new code has been submitted, and the accuracy is close to the value recorded in the Word document. However, there are still some important considerations to note:

  1. Do not change the batch_size=4 arbitrarily, as it can severely impact the accuracy.

  2. The Word document records the best training and testing results obtained from different datasets under the same set of parameters.

  3. from net.retinal_vasuclar_net import RetinalVasularSeg( for training results in higher sensitivity towards blood vessels, but may lead to a lower accuracy (acc).)
    from net.unetrpp_ff import RetinalVasularSegFF(for training results in lower sensitivity towards blood vessels, but may achieve a higher accuracy (acc).)

  4. The differences mentioned in the third point above can be manifested in the unetrpp_ff.py file, as follows: convBlock = self.encoder1(x_in) x_output, hidden_states = self.unetr_pp_encoder(convBlock)

    convBlock = self.encoder11(convBlock)

    convBlock1 = self.unet(convBlock)[0]

    The RetinalVasularSeg does not incorporate the UNet submodel within its architecture, which leads to higher sensitivity towards blood vessels but slightly lower accuracy (acc).

  5. During the author's experiments, the accuracy achieved on an RTX 2080 Ti was found to be slightly higher than that on an RTX 3060.

  6. Without altering the author's original parameters, conduct ten experiments with different datasets to obtain the best results in your opinion. In the training script, when the epoch exceeds 300, testing should be performed every 10 epochs. The trainer needs to manually inspect the command output window to find the best results, as the model saved by the code may not necessarily be the best performing one.

If you have any questions, please feel free to contact the author. You can review the model architecture code to understand its structure. Once you are familiar with it, you can then proceed to adjust the parameters.