iteal / wormpose

WormPose: Image synthesis and convolutional networks for pose estimation in C. elegans
https://iteal.github.io/wormpose/
BSD 3-Clause "New" or "Revised" License
46 stars 16 forks source link

training dataset in the paper #17

Closed caide199212 closed 2 years ago

caide199212 commented 2 years ago

I am trying to reproduce the results in the paper. When constructing the training dataset, I encountered several options

  1. dataset from Tierpsy tracker. As indicated in the Implementation part, "We provide default dataset loaders: for the Tierpsy tracker"
  2. the datasets in https://wormpose.unit.oist.jp/worm/dataset/, in facts, there are four folders, which means four datasets?

Thanks in advance.

iteal commented 2 years ago

Hi!

Tierpsy tracker is a worm tracker that you can download here https://github.com/Tierpsy/tierpsy-tracker We are using the file format of Tierpsy as an input data for Wormpose, it usually means one hdf5 file for the frames and one hdf5 file for the features (see for example this one : https://zenodo.org/record/1016966) .

So every video that we analyzed in the paper has been created using Tierpsy tracker, that includes the 4 datasets that are in the wormpose.unit.oist.jp link. They are a subset of the files from the Schafer lab that are available on Zenodo, we picked randomly videos of the wild type N2 and also a coiling mutant AQ2934. The Long N2 are videos that are much longer that the others, and the georgiatech was for a proof of concept on a different imaging system. So you can use the videos we selected or also create your own!

If you are thinking of training the network yourself I would recommend using a system with a lot of CPU cores (for the dataset generation step) and also a GPU. The results of the papers were computed on OIST HPC cluster but I also ran the whole pipeline on a high end laptop.

Tell me how it goes!

caide199212 commented 2 years ago

Thank you very much on your timely and informative reply. I am now following the steps to create training dataset and reproduce the results on a GPU.