diff --git a/src/LarvaDatasets.jl b/src/LarvaDatasets.jl index 4ddeb45eeb427874dd7ea9f7f1d58db83fa382fc..4f543721ff62173400790e097fd6e43189fa6606 100644 --- a/src/LarvaDatasets.jl +++ b/src/LarvaDatasets.jl @@ -271,17 +271,18 @@ function write_larva_dataset_hdf5(path, counts, files, refs, nsteps_before, nste end end h5open(path, "w") do h5 + g = make_dataset(h5, "samples") Threads.foreach(ch) do (file, refs, sampleid) @info "Sampling series of spines in run: $(runid(file))" - processfile(h5, file, refs, sampleid, nsteps_before, nsteps_after; + processfile(g, file, refs, sampleid, nsteps_before, nsteps_after; fixmwt=fixmwt, frameinterval=frameinterval) end - attributes(h5["samples"])["n_samples"] = sampleid + attributes(g)["n_samples"] = sampleid # extension h5["labels"] = collect(keys(counts)) #h5["files"] = [f.source for f in files] if !isnothing(frameinterval) - attributes(h5["samples"])["frame_interval"] = frameinterval + attributes(g)["frame_interval"] = frameinterval end end end @@ -363,7 +364,7 @@ function processfile(h5, file, refs, sampleid, nsteps_before, nsteps_after; sample[:,8] = lengths sample[:,9:end] = spines # - name = "samples/sample_$sampleid" + name = "sample_$sampleid" # transpose for compatibility with h5py # see issue https://github.com/JuliaIO/HDF5.jl/issues/785 h5[name] = permutedims(sample, reverse(1:ndims(sample))) @@ -517,9 +518,6 @@ function write_larva_dataset_hdf5(output_dir::String, h5open(output_file, "cw") do h5 attributes(h5["samples"])["len_traj"] = window_length attributes(h5["samples"])["len_pred"] = window_length - if !isnothing(frameinterval) - attributes(h5["samples"])["frame_interval"] = frameinterval - end end return output_file end