spoonsso / dannce

MIT License
214 stars 30 forks source link

Loading File in example.m #81

Closed verpeutlab closed 2 years ago

verpeutlab commented 2 years ago

Hello, I have a question regarding the example.m file in Label3D. The last few lines of code begin with the comment "You can load both but in different ways," and the code beneath it forces the user to load a file when the script is ran. What file should I be loading when prompted with this? I have tried files in the Label3D folder, along with .mat files that were generated when I was labeling images, but I keep getting the following error message below. Can you please tell me what file I should be loading here?

Unrecognized field name "videos".

Error in Label3D/loadAll (line 1392) obj.buildFromScratch(data.camParams, data.videos, data.skeleton, varargin{:});

Error in Label3D/load (line 1414) obj.loadAll(files, varargin{:});

Error in Label3D (line 232) obj.load(varargin{:})

Error in View3D

Error in example_social_mice_demo (line 83) View3D()

diegoaldarondo commented 2 years ago

Hey!

Good question. The GUIs can be launched in several ways. These are specified in the docstring help Label3D.

The option that you're describing at the end of example.m opens an interface to manually select a save file that includes videos. (This isn't well documented, so thanks for pointing it out!) These files are created through the saveAll function. Note that this is not the default saving method since it can be cumbersome (in terms of memory/time) to save the videos as things currently stand. The default save file does not include the videos and by default is of the form [datestring]_Label3D.mat.

I recommend using Input format 1: labelGui = Label3D(params, videos, skeleton, 'sync', sync, 'framesToLabel', framesToLabel); To start a new Label3D session.

Input format 2 is useful if you're picking up where you left off in a previous save (where the save file does not include videos). Label3D('path_to_Label3D.mat', videos, varargin). So in your case, you probably just need to use Input format 2 and you'll be good to go.

Let me know if you have any more questions!

verpeutlab commented 2 years ago

Thank you! I am able to pick up where I left off if I use the command you suggested without the varagin. Label3D('path_to_Label3D.mat', videos)