otmalom / echo-stgnet

the official implement of paper "A spatio-temporal graph convolutional network for ultrasound echocardiographic landmark detection"
4 stars 0 forks source link

Dataset 数据集 #1

Open Hello-Worldd opened 2 months ago

Hello-Worldd commented 2 months ago

Thank you for your wonderful work! Can you share the code of the dataset production, I can't find the adjmatrix_top5.txt file during the running process, this should be obtained during the dataset creation process, can you share the code of the CAMUS dataset to convert the dataset into the dataset that the program can run, thank you very much!!

感谢你精彩的工作! 请问您可以分享下数据集制作的代码吗,我在运行过程中找不到adjmatrix_top5.txt文件,这应该是数据集制作过程中得到的,你可以分享下CAMUS数据集转换成程序可以运行的数据集的代码吗,十分感谢!!!

otmalom commented 2 months ago

你好,我上传了预先处理的关键点数据,按照dataset的读取方式压缩了一些范例,在项目里可以下载了,你可以试试看能不能运行。那个捕捉关键点的代码用起来有些复杂,自己处理会非常麻烦,所以我没有放在项目里。

otmalom commented 2 months ago

生成adjmatrix的代码我存放在custom这个文件夹中了

Hello-Worldd commented 2 months ago

非常感谢您的回复!!! 我简单看了您新上传的文件,我的理解是points.txt为心脏内膜的关键点x,y坐标,adjmatrix_top5.txt是根据这个txt文件生成的吗? 我后续希望在我自己的数据集上实现,我已经实现了如您论文里所介绍的方式,对于心脏内膜46个关键点的提取,但是不知道后面怎么制作adjmatrix_top5.txt数据,请问您方便提供您的代码吗

otmalom commented 2 months ago

您的理解是对的,我们在point.txt中按照“x1,y1,x2,y2,x3,y3....x46,y46,filename”的形式逐行存储了点数据。adjmatrix是根据这个文件生成的。代码已经上传在custom中了,希望能够帮助到您

Hello-Worldd commented 2 months ago

感谢您帮助!!给我这个新手给了很大帮助!

您的参数设置并没有列出,所以我还有几个小问题希望您能解答一下

 new_parser.add_argument('--engine',     type=str, default=r'tem_seq')
 new_parser.add_argument('--loss_fn',    type=str, default=r'art')
 new_parser.add_argument('--backbone_name',     type=str, default='ResNet34')
 new_parser.add_argument('--predictor_name',    type=str, default=r'STGCNPredictor')

loss_fn这个参数应该填写什么,在论文中我看您只使用了Soft Wing,代码中有三个损失,在训练中是都用了吗?其余参数我填写的是否正确呢

...
if 'a' in self.config.loss_fn:
    loss += loss_a 
if 'r' in self.config.loss_fn:
    loss_r = self.smooth_criterion(key_pred, landmarks.cuda()) * self.config.smooth_weight
    loss += loss_r
if 't' in self.config.loss_fn:
    gcn_feat = pred_dict['feat']
...
otmalom commented 2 months ago

确实,我们只用了Soft Wing损失,这里是我们尝试加入一些一致性和平滑损失时候遗留的代码。用“a”就可以了

otmalom commented 2 months ago

这里是每个字母代表一种损失,有这个字母出现就计算。如果你设置loss_fn为"art"那就会计算三个损失。

otmalom commented 2 months ago

其实我们运行的时候采用的是bash命令,运行.sh文件,许多设置我们放在.sh文件中了,稍后我上传一下,放在script文件中,运行的话,输入bash script/run.sh就可以了

otmalom commented 2 months ago

另外为了方便你验证结果,我把我们计算指标的代码放在了custom中,你可以根据自己的路径调试一下

Hello-Worldd commented 2 months ago

好的,万分感谢!!我试一下

otmalom commented 1 month ago

我早些时候看到了你关于点和图像匹配不上的问题,我记得点存储在224×224分辨率下,所以图像应该按照224×224缩放一下,另外有问题的话发邮件吧,方便一点:444828955@qq.com