shapeworks-dev-support

Text archives Help


Re: [shapeworks-dev-support] initial surface after optimization


Chronological Thread 
  • From: Alan Morris <amorris@sci.utah.edu>
  • To: Allen Sanderson <allen@sci.utah.edu>
  • Cc: shapeworks-dev-support@sci.utah.edu, Jadie Adams <jadieraeadams@gmail.com>
  • Subject: Re: [shapeworks-dev-support] initial surface after optimization
  • Date: Mon, 8 Jun 2020 17:23:01 -0600
  • Ironport-sdr: q05RsB+P/2YHdbf72JYTVrOJD778fxy+agj+TbUCL0QroUNF5wporIWTvZled814rpMObvaO/c 3CB3cMF9VzBbLfCi8C/Rwo6hY0iSvrz/SQUmwxVhw3S62d7rTs8gSjBeDpTl6XMRuAP3k5eksE LDdYCuhKNvMkCauDNjjEr3NRvYV8xenW8RFZcI8jNF8oV+N8NCKrtAtGFX2Zf6pJwH24+1/zwD DzmHHH9RMU5w+vqJVDevoWdFK/rTh2x9bwUVesrT3Px5/riDb2M9ozZuRG+h09eIdqy71XOlen h24=

Allen,

The world and local points differ if procrustes is used during the
optimization. Procrustes can remove rotation and global scale and can
be used iteratively during the optimization process. This is useful
for cases where we are not interested in size/rotation differences,
but in the core "shape". In these cases, the "local" points are in
each sample's coordinate system and the "world" points will be in a
shared coordinate system (where scale/rotation is adjusted).

The surface reconstruction code takes the local, world, and distance
transforms. The <point_files> is there to be compatible with older
tools such as ShapeWorksView2. Really this whole format is going to
be legacy soon.

The surface shown is the mean of all samples.

Anywhere on SCI filesystem works.

Thanks,
Alan

On Mon, Jun 8, 2020 at 5:13 PM Allen Sanderson <allen@sci.utah.edu> wrote:
>
> Thanks Alan,
>
> I will play with this tomorrow. Looking at the xml file there are local
> points, world point, and points? What are the difference between them. I
> notice that world point and points are the same. For my data the local and
> world are the same and as I have no points I would similarly those would be
> world points.
>
> What surface is being shown for the difference. Is that just points from
> the last ellipsoid or is that actually a surface?
>
> I will put together a tarball for you that you can grab. If I put it out on
> shell.sci I assume you can grab it.
>
> Cheers,
>
> Allen
>
>
>
>
> > On Jun 8, 2020, at 4:16 PM, Alan Morris <amorris@sci.utah.edu> wrote:
> >
> > Hi Allen,
> >
> > You don't need the reconstructions to do the group difference. See
> > the attached sample file and video. The difference vectors are shown
> > at each correspondence point. The difference shows how to get from
> > group2 to group1. In this example, the last ellipsoid is the only
> > member of group 2 and requires squishing to get the mean of the other
> > shapes.
> >
> > If you're not interested in the reconstructions, the only tags you
> > need are <point_files> and <group_ids>
> >
> > If you're not getting good reconstructions though, I'd be worried that
> > perhaps the optimization didn't go well. If you want to point me at
> > your data set (inputs and outputs), I can take a look at it.
> >
> > Alan
> >
> > On Mon, Jun 8, 2020 at 12:59 PM Allen Sanderson <allen@sci.utah.edu>
> > wrote:
> >>
> >> Hi Alan,
> >>
> >> That sounds about what I would like to do. So please do send an example.
> >> That said does one have to have the actual reconstructions ??? What I
> >> would almost prefer at this point is to see the correspondence particles
> >> and far they are from the mean?
> >>
> >> Here is my line of thinking. The correspondence particles are placed on
> >> the image voxels during the optimization process. That part is the
> >> splitting. I am fuzzy on what actually happens during the “optimization
> >> iterations”. Is this step where the actual correspondence is done? But
> >> once done and go to the Analysis step I get a reconstructed image just
> >> based on the correspondence particles which as Jadie notes is not very
> >> good unless the distance transforms are used.
> >>
> >> I would actually like to visualize each individual dataset with its
> >> correspondence particles but with a vector and colored by the magnitude.
> >> This visualization is similar to the group but allows one to see
> >> individual datasets compared to the mean. Most importantly it does not
> >> rely on a reconstruction (which is problematic for thin surfaces).
> >>
> >> At this I understand, this visualization may not be possible but if I
> >> knew which files contained the mean particles tat would be helpful. For
> >> instance, not sure what these files contain:
> >> -rw-r----- 1 allen admin 3024 Jun 5 17:09
> >> example_surface_1_00.rasterized_sp0.1_bad-sparse.particles
> >> -rw-r----- 1 allen admin 192909 Jun 5 17:09
> >> example_surface_1_00.rasterized_sp0.1_good-sparse.particles
> >> -rw-r----- 1 allen admin 16384 Jun 5 17:09
> >> example_surface_1_00.rasterized_sp0.1_goodPoints.txt
> >> -rw-r----- 1 allen admin 195933 Jun 5 17:09
> >> example_surface_1_00.rasterized_sp0.1_sparse.particles
> >>
> >>
> >> I noticed that each dataset had these files, but they were the same?
> >> These should be the initial particles.
> >> -rw-r----- 1 allen admin 245088 Jun 5 17:09
> >> example_surface_1_00.rasterized_sp0.1.lpts
> >> -rw-r----- 1 allen admin 245088 Jun 5 17:09
> >> example_surface_1_00.rasterized_sp0.1.wpts
> >>
> >>
> >> Also this appears to the reconstruction.
> >> -rw-r----- 1 allen admin 330664 Jun 5 17:09
> >> example_surface_1_00.rasterized_sp0.1_dense.vtk
> >>
> >> Oddly this morning when I started SWStudio it did not get loaded in
> >> which I expected. I had to do the reconstruction again. Thought I may
> >> have missed something.
> >>
> >>
> >> Cheers,
> >>
> >> Allen
> >>
> >>
> >>
> >>
> >> On Jun 7, 2020, at 5:24 PM, Alan Morris <amorris@sci.utah.edu> wrote:
> >>
> >> Allen,
> >>
> >> The mesh to mesh comparison tools are a little light at the moment. I
> >> recently moved over the older group differences functionality into
> >> Studio, but it only compares the means of two groups. In the near future
> >> we’ll be enhancing this quite a bit.
> >>
> >> At the moment, I can think of one possible way to do what you want, once
> >> you have good reconstructions. In the old analysis parameter file
> >> format, you can specify <group_ids> and list 1’s and 2’s (I can send an
> >> example). To compare one sample against the mean, you could list all
> >> shapes in group 1 and then just the sample in question as group 2. This
> >> sample could also be in group 1 to make it the mean of all shapes. The
> >> group difference functionality would then show you what you’re looking
> >> for, I believe. You’d have to make a separate parameter file for each
> >> one and load them in separate sessions.
> >>
> >> I’ll add this as a feature request.
> >>
> >> Alan
> >>
> >>
> >> On Fri, Jun 5, 2020 at 5:52 PM Allen Sanderson <allen@sci.utah.edu>
> >> wrote:
> >>>
> >>> Thanks Alan and Jadie,
> >>>
> >>> I think for now the construction may be problematic. Here is what I
> >>> would like to see but not sure how to get it and may not without a good
> >>> reconstruction. But I would like to see is the difference from the mean
> >>> on each original mesh. That should be possible, no?
> >>>
> >>> Cheers,
> >>>
> >>> Allen
> >>>
> >>>
> >>>
> >>>
> >>>> On Jun 5, 2020, at 3:11 PM, Alan Morris <akenmorris@gmail.com> wrote:
> >>>>
> >>>> I found the documentation in a Studio PDF:
> >>>>
> >>>> -Max Angle:This is the largent angle between particle normals (from
> >>>> respective sam-ples) permitted to label the particle as a good
> >>>> corresponding particle across the given population, and is useful for
> >>>> surface reconstruction.
> >>>>
> >>>> -Mesh Decimation:The PreView library code can decimate the number of
> >>>> triangles to the value set here. The default is 0.30 or 30 percent.
> >>>>
> >>>> -# Clusters:To help speed up reconstruction, you can define how many
> >>>> samples/clus-ters are used to warp their image volumed into the mean
> >>>> space. 0 indicates to use all of the samples.
> >>>>
> >>>> -Run Reconstruction:Click this to run the reconstruction step. If it
> >>>> fails, the iso-surface filter from the visualization toolkit (VTK) is
> >>>> used instead to generate the finalsurface reconstructions. You can
> >>>> re-run with different Optimizations as needed.
> >>>>
> >>>> -----------------
> >>>> In general, you need a good correspondence for the surface
> >>>> reconstruction to work well.
> >>>>
> >>>> Alan
> >>>>
> >>>>
> >>>>
> >>>> On Fri, Jun 5, 2020 at 2:31 PM Jadie Adams <jadieraeadams@gmail.com>
> >>>> wrote:
> >>>>>
> >>>>> Hi Allen,
> >>>>>
> >>>>> From my understanding the initial surface is constructed just based
> >>>>> on the particles which is why it looks so bad. If you hit Run
> >>>>> Reconstruction it uses the distance transforms to reconstruct the
> >>>>> surface which makes it look much better.
> >>>>> The surfaces in the analyze part of Studio are just for
> >>>>> visualization. You can always load your original mesh and the
> >>>>> .particles file into a tool like Paraview to help visualize as well.
> >>>>>
> >>>>> @Alan do you know if the reconstruction parameters are documented
> >>>>> anywhere?
> >>>>>
> >>>>> Thanks,
> >>>>> Jadie
> >>>>>
> >>>>> On Fri, Jun 5, 2020 at 12:47 PM Allen Sanderson <allen@sci.utah.edu>
> >>>>> wrote:
> >>>>>>
> >>>>>> Hi Jadie,
> >>>>>>
> >>>>>> Questions for you, after the optimization is completed and one goes
> >>>>>> to the analysis there is an initial surface. I assumed that it was
> >>>>>> the reconstructed surface. I got a really bad surface so I decided
> >>>>>> to change the Max from 10 to 5 and got a much improved surface but
> >>>>>> still not as expected.
> >>>>>>
> >>>>>> Would these results be expected?? and can you point me to any
> >>>>>> documentation on the various parameters.
> >>>>>>
> >>>>>> Thanks,
> >>>>>>
> >>>>>> Allen
> >>>>>>
> >>>
> >>
> > <Group_Difference.mp4><groups.xml>
>



Archive powered by MHonArc 2.6.18.

Top of page