Code Monkey home page Code Monkey logo

dvc-simulator's Introduction

The DVC simulator is the 3D cousin of the DIC Simulator. It’s also a Matlab-based GUI that assesses how “well” a particular user-provided volumetric image correlates given 4 different simulated 3D displacement fields. The import format for the 3D image stack is .mat, which is a 3 dimensional matrix (intensity values are stored at every x,y,z position). The purpose of the simulator is the same as for the DIC simulator, and we have found it to be of significant time and effort savings.

Important pages

Purpose

The purpose of the stimulator is to allow the user to check if the speckle pattern and intensity in the volume images are good enough for DVC to compute displacement reliably. If the results look good, the user can use FIDVC algorithm to compute displacements between volume images.

Here, the Matlab script synthetically deforms the input volume image according to a prescribed displacement fields. Then, the DVC algorithm computes the displacements, which can be compared with the prescribed displacements to see if the match. The Matlab-GUI also plots strains.

Running the Matlab-GUI

Steps

  1. Save the 3D image stack, a 3 dimensional matrix (intensity values are stored at x, y and z position), in .mat file in the folder containing the matlab script. Download the example data for an example test on your computer.
  2. Have the same folder as the directory in Matlab and run the following command in command window to open the GUI: DVC_simulator
  3. Use the upload button load the image stack.
  4. If needed, resize the volume to a decrease the size.
  5. Adjust the subset size and subset spacing if needed, or can leave it at default value.
  6. Adjust the prescribed strain and translation, or can leave it at the default value.
  7. Hit Go!

Health warning!

The DVC simulator requires a 3D stack to be read in, which depending on the volume size can require a large amount of RAM in Matlab, and thus when running the simulator from a laptop, we strongly suggest to use the resize option within the GUI to decrease the total stack dimensions. My macbook air can only handle 128 x 128 x 96 sufficiently.

Also, the algorithm expects the speckle pattern to cover the entire field-of-view of the image and will either error out or provide eroneous result if this is not the case.

FAQ

The GUI looks squashed and button don't appear properly, what should I do?

The GUI in newer versions of Matlab and high resolution screens, can sometimes get squashed with various buttons and icons not appearing properly. The easiest way to solve this issue is to resize the GUI layout manually on your computer. Use the command guide DVC_simulator.fig and resize the buttons.

What is the recommended minimum size of the input image stack?

We recommend that the input image stack should have at least have 96 pixels in each dimension.

Cite

If used please cite: Estrada, J., Franck, C.,”Intuitive Interface for the Quantitative Evaluation of Speckle Patterns for Use in Digital Image and Volume Correlation Techniques”, J. Applied Mechanics, 2015.

@article{estrada2015intuitive,
  title={Intuitive Interface for the Quantitative Evaluation of Speckle Patterns for Use in Digital Image and Volume Correlation Techniques},
  author={Estrada, Jonathan B and Franck, Christian},
  journal={Journal of Applied Mechanics},
  volume={82},
  number={9},
  pages={095001},
  year={2015},
  publisher={American Society of Mechanical Engineers}
}

Contact and support

For questions, please first refer to FAQ and Questions/Issues. Add a new question if similar issue hasn't been reported. We shall help you at the earliest. The author's contact information can be found at Franck Lab.

dvc-simulator's People

Contributors

francklab avatar mohakpatel avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar

dvc-simulator's Issues

data format

Hi,
I am a little bit confused about the data format.
What do you mean the intensity values at x, y, z positions?
My data store the x,y,z coordinate of each point with time.
Is it correct?
Thanks.

Simulator Graphs

Hello! What does each axis represent on the bottom half of the results screen after running "DVC_simulator?" I have some speckled images which I believe may not have adequate intensity, but am having trouble interpreting the results. I have also attached a screenshot of the results after running the simulator on one of my stacks. Thank you for your help!

image

GUI encounters error upon application of displacements

The following is the error that is returned immediately upon selection of a displacement in U1 with the radio button. The image stack I am using for input is 256x256x96 voxels. Is there a readily apparent user error that may be occuring? I followed the steps as delineated in the readme through step 3. I have not resized but I am unable to find a method of selecting displacement sizes. U2 and U3 displacements give similar errors as does the Update button.

Reference to non-existent field 'm'.

Error in DVC_simulator>displ1_Callback (line 1347)
m = handles.m;

Error in gui_mainfcn (line 95)
feval(varargin{:});

Error in DVC_simulator (line 54)
gui_mainfcn(gui_State, varargin{:});

Error in @(hObject,eventdata)DVC_simulator('displ1_Callback',hObject,eventdata,guidata(hObject))

Error while evaluating UIControl Callback

Recommendation for fully embedded cell-gel systems

Hello,

I am interested in quantifying the 3D mechanical tractions of a fibroblast type cell that is completely embedded within a hydrogel. Similar to your application in your group's PNAS paper (Stout et al. vol. 113, no. 11), I am using fluorescent microspheres to track the hydrogel deformation. I was wondering if you could advise on the acceptable amount of error for this application as determined from the DVC-simulator? In addition, do you have any recommendations on reducing the error? For example, do you have a recommendation for bead sizes and perhaps the bead density (# of beads/ml) that should be used? Thanks!

Best,

Alex

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.