Skip to main content

A digital image correlation toolkit

Project description

µDIC CircleCI

A python toolkit for Digital Image Correlation (DIC)

Overview

This package provides a "batteries included" toolkit for 2D digital image correlation. The intended use in in the field of material research, for non-contact strain measurements. The implementation is based on B-splines, providing a very flexible framework where various degrees of continuity can be enforced etc.

Typical usage is demonstrated in the provided examples

This toolkit includes the following:

  • Image reader tools
  • Virtual lab
    • Speckle image generators
    • Image deformation tools
    • Noise injection
    • Image down-sampling
  • B-spline finite elements
    • Arbitrary polynomial order
    • Knot vectors can be manipulated
  • Meshing tools:
    • A light weight GUI for structured meshing
  • Image correlation routines:
    • Non linear least squares solver
  • Post processor
    • Calculates most popular strain measures
    • Light weight visualization
  • Logging

Getting Started

These instructions will get you a copy of the project up and running on your local machine for development and testing purposes.

Prerequisites

This toolkit is tested on Python 2.7x an 3.7 and need all dependencies listen in requirements.txt

Installing

Installing by a package manager:

Installing by cloning the repos:

Start to clone this repo to your preferred location:

$ git init
$ git clone https://github.com/PolymerGuy/muDIC.git

We recommend that you always use virtual environments, either by virtualenv or by Conda env

Virtual env:

$ virtualenv myproject
$ source /myproject/bin/activate
$ pip install -r requirements.txt

Conda env:

$ conda create -n envname python=2.7
$ source activate envname
$ conda install --yes --file requirements.txt

You can now run an example:

$ python path_to_muDIC/Examples/phantomImages.py

Running the tests

The tests should always be launched to check your installation. These tests are integration and unit tests:

$ unittests /tests

Documentation

Documentation is hosted by: LINK TO READ THE DOCS

Our motivation

The motivation for this work was the need for a transparent code which could be modified and extended easily, without digging deep into C or C++ source code. The implementation is pure python with the exception of third-party packages such as Scipy, Numy etc.

Contributing

Clone the repository, add your changes, add new tests and you are ready for a pull request

Authors

  • Sindre Olufsen - Implementation - PolymerGuy
  • Marius Endre Andersen - Wrote the Matlab code which was the starting point for this project

License

This project is licensed under the MIT License - see the LICENSE.md file for details

Citing this project

This project is described in the following paper and citation is highly appreciated

[THE AWESOME PAPER TO BE PUBLISHED]

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

muDIC-0.0.5.tar.gz (31.2 kB view hashes)

Uploaded Source

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page