ArticleslgStudy

computer science

YaDICs

YaDICs is a computer science topic covered in the lgStudy science library. This page brings together a partial reference excerpt, illustrations, worked examples, real-world applications and a short study plan, so you can understand YaDICs rather than just read about it. In short: YaDICs (Yet another Digital Image Correlation software) is a program written to perform digital image correlation on 2D and 3D tomographic images. The program was designed to be both modular (by its plugin strategy) and efficient (by its multithreading strategy).

Key takeaways

  • YaDICs belongs to computer science; place it in that map before memorising details.
  • Learn the definition first, then one example that makes the definition concrete.
  • Connect YaDICs to a quantity you can measure, compute or draw — that is where exam questions come from.
  • Reproduce the core statement of YaDICs from memory before moving on to harder problems.

Reference excerpt

YaDICs (Yet another Digital Image Correlation software) is a program written to perform digital image correlation on 2D and 3D tomographic images. The program was designed to be both modular (by its plugin strategy) and efficient (by its multithreading strategy). It incorporates different transformations (Global, Elastic, Local), optimization strategies (Gauss-Newton, Steepest descent), as well as various global/local shape-functions (such as rigid-body motions, homogeneous dilatations, flexural, and Brazilian test models).

Theoretical background

Context In solid mechanics, digital image correlation is a tool that allows to identify the displacement field to register a reference image (called herein fixed image) to images during an experiment (the mobile image). For example, it is possible to observe the face of a specimen with a painted speckle on it in order to determine its displacement fields during a tensile test. Before the appearance of such methods, researchers usually used strain gauges to measure the mechanical state of the material but strain gauges only measure the strain on a point and don't allow to understand material with an heterogeneous behavior. One can obtain a full in plane strain tensor by derivation of the displacement fields. Many methods are based upon the optical flow. In fluid mechanics a similar method is used, called Particle Image Velocimetry (PIV); the algorithms are similar to those of DIC but it is impossible to ensure that the optical flow is conserved so a vast majority of the software used the normalized cross correlation metric. In mechanics the displacement or velocity fields are the only concern, registering images is just a side effect. There is another process called image registration using the same algorithms (on monomodal images) but where the goal is to register images and thereby identifying the displacement field is just a side effect. YaDICs uses the general principle of image registration with a particular attention to the displacement fields basis.

Image registration principle YaDICs can be explained using the classical image registration framework:

Image registration general scheme The common idea of image registration and digital image correlation is to find the transformation between a fixed image and a moving one for a given metric using an optimization scheme. While there are many methods to achieve such a goal, Yadics focuses on registering images with the same modality. The idea behind the creation of this software is to be able to process data that comes from a μ-tomograph; i.e.: data cube over 10003 voxels. With such a size it is not possible to use naive approach usually used in a two-dimensional context. In order to get sufficient performances OpenMP parallelism is used and data are not globally stored in memory. As an extensive description of the different algorithms is given in.

Sampling Contrary to image registration, Digital Image Correlation targets the transformation, one wants to extracted the most accurate transformation from the two images and not just match the images. Yadics uses the whole image as a sampling grid: it is thus a total sampling.

Interpolator It is possible to choose between bilinear interpolation and bicubic interpolation for the grey level evaluation at non integer coordinates. The bi-cubic interpolation is the recommended one.

Metrics

Sum of squared differences (SSD) The SSD is also known as mean squared error. The equation below defines the SSD metric:

S S D ( μ , I F , I M ) = 1 | Ω F | ∑ x i ∈ Ω F ( I F ( x i ) − I M ( T μ ( x i ) ) ) 2 , {\displaystyle SSD(\mu ,{\mathcal {I_{F}}},{\mathcal {I_{M}}})={\dfrac {1}{\left|\Omega _{F}\right|}}\sum _{x_{i}\in \Omega _{F}}\left({\mathcal {I_{F}}}(x_{i})-{\mathcal {I_{M}}}({T}_{\mu }(x_{i}))\right)^{2},}

… excerpt ends here. Continue reading the full article.

Worked examples

Example 1 — a first encounter with YaDICs

Start with the simplest possible case. Write down what YaDICs claims or describes in one sentence, then invent the smallest concrete situation in which that sentence is true. In computer science, the smallest case is usually a single object, a single equation or a single measurement. Check that every symbol or term in your sentence has a meaning in that case.

Example 2 — changing one variable

Take the situation from Example 1 and change exactly one quantity: double it, halve it, or set it to zero. Predict what should happen to YaDICs before you calculate. Comparing your prediction with the result is the fastest way to find out whether you understand the idea or only the words.

Example 3 — an exam-style question

Typical questions about YaDICs ask you to (a) state it precisely, (b) apply it to given data, and (c) explain a limitation. Practise writing all three answers in under five minutes; the third part is what separates a full-mark answer from an average one.

Applications of YaDICs

In research
YaDICs appears in computer science research whenever the underlying quantities have to be modelled precisely. Papers usually cite it as a starting assumption and then explore where it breaks down.
In technology and industry
Engineering practice reuses YaDICs in design rules, simulations and safety margins. Knowing the idea lets you read a specification sheet and understand why the numbers look the way they do.
In the classroom
YaDICs is common in secondary-school and first-year university syllabi. It links to neighbouring topics Command-line graphics software, Computer vision software, Free graphics software, so understanding it makes those chapters shorter.
In everyday life
Look for YaDICs outside the textbook — in sport, cooking, traffic, electronics or the sky above you. An example you found yourself is remembered far longer than one you were given.

Affiliate

Preply — study more efficiently by working with a personal tutor. 50% off.

How to study YaDICs in 20 minutes

  1. Read the reference excerpt below once, without taking notes.
  2. Close the page and write down what YaDICs means in your own words.
  3. Compare your version with the excerpt and mark what you missed.
  4. Work through the three examples above with pen and paper.
  5. Explain YaDICs out loud to somebody else — or to Teacher Smith in the lgStudy chat.

Frequently asked questions

What is YaDICs in simple terms?

YaDICs (Yet another Digital Image Correlation software) is a program written to perform digital image correlation on 2D and 3D tomographic images. The program was designed to be both modular (by its plugin strategy) and efficient (by its multithreading strategy).

Why does YaDICs matter?

Because it connects several computer science ideas at once: it gives you a definition you can apply, a quantity you can calculate, and a way to check whether a result is plausible.

How should I study YaDICs?

Read the excerpt, restate it from memory, then work through the examples and applications listed on this page. The five-step study plan above takes about twenty minutes.

What does this page cover?

It gives you a compact reference excerpt plus original lgStudy explanations, examples, applications and study material on YaDICs.

Tags

  • Command-line graphics software
  • Computer vision software
  • Free graphics software
  • Free raster graphics editors
  • Free software programmed in C++
  • Graphics libraries
  • Graphics software
  • Image processing
  • Image segmentation
  • Multidimensional signal processing
  • Software using the GNU General Public License
  • Yet another

Keep exploring