marcomusy / FearlessHearts

shape interpolation algorithm

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Fearless Hearts

Create a continuous timecourse for the heart development starting from a limited number of samples acquired at different timepoints.

The algorithm is completely general and can be applied to any dataset.

Datasets

All the data can be dowloaded from --> https://www.ebi.ac.uk/biostudies/studies/S-BIAD441 (folder /hearts/).

Pipeline

Follow the pipeline steps below to reproduce the analysis results.

python 0__compress_data.py

  • Description: can be skipped as data is ready for use. Only here for reference.


python 1__manually_align.py

  • Description: manually adjust alignment of different heart samples to a common frame


python 2a_make_histos.py

  • Description: make some histograms of the scalar along some ray

image

image


python 2b_probe_vol.py

  • Description: more visualizations of the volume probing

image


python 3__generate_rays.py

  • Description: probe volume and save a polydata which is a cloud of point. Files are produced to the local path. They can be visualized with command e.g.: vedo -n -p 5 -a 0.02 -c w -x1 *2425*.vtk. If all looks OK move files to data/wt or data/ko.

image


python 4a_expand_plot.py

  • Description: plot scalar values on a specific radius shell for test:

image


python 4b_clm_plot.py

  • Description: plot the spherical harmonics expansion for the above test:

image


python 5__write_clm.py

  • Description: generate and save a numpy array clm_data.npy with the Clm spherical harmonic coefficients for all the time points

step5


python 6__plot_splined_clm.py

  • Description: make 50 plots of the spherical harm coefficients visualizing the time variable for each one. Pressing return takes to the next radial shell.

step6


python 7a_plot_six_clouds.py

  • Description: plot now for each time point the reconstructed point clouds (using the sph coefficients) with a threshold to cut off points that are below some value

image


python 7b_interp_clouds.py

  • Description: interpolate the above time points to generate a continous (small stepped) time course. Interpolation is done by splining all the Clm coefficients.

step7b


python 8a_write_volumes.py

  • Description: generate as many volumes as the nr of interpolated point clouds. Points in space are spatially interpolated onto the regular grid of a Volume object (made of voxels). Isosurfaces are also generated (for 3 different thresholds):

image


python 8b_write_scaled_isos.py

  • Description: build isosurfaces for all the generated volumes using some threshold value. The absolute size is also recovered from a fit of the original sizes, to take into account the biological growth of the tissues

h_timecourse_wt

References

Ten years ago, a population of cardiac progenitor cells was identified in pharyngeal mesoderm that gives rise to a major part of the amniote heart. These multipotent progenitor cells, termed the second heart field (SHF), contribute progressively to the poles of the elongating heart tube during looping morphogenesis, giving rise to myocardium, smooth muscle, and endothelial cells.

Arid3b, a member of the conserved ARID family of transcription factors, is essential for mouse embryonic development but its precise roles are poorly understood. Arid3b is expressed in the myocardium of the tubular heart and in second heart field progenitors.

Arid3b-deficient embryos show cardiac abnormalities, including a notable shortening of the poles, absence of myocardial differentiation and altered patterning of the atrioventricular canal, which also lacks epithelial-to-mesenchymal transition. Proliferation and death of progenitors as well as early patterning of the heart appear normal.

Arid3b is thus required for heart development by regulating the motility and differentiation of heart progenitors. These findings identify Arid3b as a candidate gene involved in the aetiology of human congenital malformations.

vedo_powered

embl

About

shape interpolation algorithm

License:MIT License


Languages

Language:Python 100.0%