Archive pour la catégorie 'outils4programmation'

ParaView is an application framework as well as a turn-key application; Modeling software OpenFOAM and ParaView ; mesh processing: generation, manipulation, conversion

ParaView is an open source, multi-platform data analysis and visualization application. It has a client-server architecture to facilitate remote visualization of datasets

It is an application built on top of the Visualization Tool Kit (VTK) libraries.

The ParaView code base is designed in such a way that all of its components can be reused to quickly develop vertical applications. This flexibility allows ParaView developers to quickly develop applications.

Input/Output and File Format

  • Supports a variety of file formats including: VTK (new and legacy, all types including parallel, ascii and binary, can read and written).
  • Various polygonal file formats including STL and BYU (by default, read only, other VTK writers can be added by writing XML description).
  • Many other file formats are supported. See ParaView Readers and ParaView Writers for a full list.

CMake is a family of tools designed to build, test and package software. CMake is used to control the software compilation process using simple platform and compiler independent configuration files. CMake generates native makefiles and workspaces that can be used in the compiler environment of your choice. ParaView utilizes CMake for the software compilation process.

——–

ParaView is used as the visualization platform for the Modeling software OpenFOAM (Open Field Operation and Manipulation).It is primarily a C++ toolbox for the customisation and extension of numerical solvers for continuum mechanics problems, including computational fluid dynamics (CFD). It comes with a growing collection of pre-written solvers applicable to a wide range of problems.

First major general-purpose CFD package to use polyhedral cells. This functionality is a natural consequence of the hierarchical description of simulation objects.

OpenFOAM compares favourably with the capabilities of most leading general-purpose commercial closed-source CFD packages. It relies on the user’s choice of third party pre- and post-processing utilities, and ships with:

  • a plugin (paraFoam) for visualisation of solution data and meshes in ParaView.
  • a wide range of mesh converters allowing import from a number of leading commercial packages
  • an automatic hexahedral mesher to mesh engineering configurations

OpenFOAM was conceived as a continuum mechanics platform but is ideal for building multi-physics simulations.

OpenCFD develop OpenFOAM in the Linux/UNIX operating system because: we believe it is the best platform for this kind of high end simulation code development and operation; Linux is efficient, robust, reliable and flexible and undergoes rapid development and improvement; Linux is open source, like OpenFOAM; Linux is very effective for parallel operation on Beowulf clusters.

OpenFOAM is open source software so people can freely compile it on any operating system they choose. Most OpenFOAM users are running Linux, so this site offers the download of binaries for selected Linux systems.

As the present time we are unaware of any binary distributions for Windows or MacOSX. However, ports to these operating systems have been the subject of debate on the OpenFOAM discussion site, which may provide the best source of information on the matter.

http://www.opencfd.co.uk/openfoam/

OpenFOAM uses finite volume numerics to solve systems of partial differential equations ascribed on any 3D unstructured mesh of polyhedral cells.

Mesh generation

OpenFOAM applications handle unstructured meshes of mixed polyhedra with any number of faces: hexahedra, tetrahedra, degenerate cells, basically anything.

Mesh generation is made simple by the fact that a cell is simply represented as a list of faces and a face as a list of vertices: this makes mesh handling very easy even for complex meshes with, say, embedded refinement or complex shapes near the boundary.

OpenFOAM is supplied with the following mesh generator tools that run in parallel.

Mesh generation tools


blockMesh A multi-block mesh generator
extrude2DMesh Takes 2D mesh (all faces 2 points only, no front and back faces) and creates a 3D mesh by extruding with specified thickness
extrudeMesh Extrude mesh from existing patch (by default outwards facing normals; optional flips faces) or from patch read from file
snappyHexMesh Automatic split hex mesher. Refines and snaps to surface

The main mesh generators cover two extremes: snappyHexMesh, that can mesh to complex CAD surfaces; blockMesh a simple file-driven block mesh generator.

Mesh manipulation

OpenFOAM is supplied with several utilties that perform mesh checking and manipulation. The full list of utilties is given below

Mesh manipulation


attachMesh Attach topologically detached mesh using prescribed mesh modifiers
autoPatch Divides external faces into patches based on (user supplied) feature angle
cellSet Selects a cell set through a dictionary
checkMesh Checks validity of a mesh
createBaffles Makes internal faces into boundary faces. Does not duplicate points, unlike mergeOrSplitBaffles
createPatch Utility to create patches out of selected boundary faces. Faces come either from existing patches or from a faceSet
deformedGeom Deforms a polyMesh using a displacement field U and a scaling factor supplied as an argument
faceSet Selects a face set through a dictionary
flattenMesh Flattens the front and back planes of a 2D cartesian mesh
insideCells Picks up cells with cell centre ’inside’ of surface. Requires surface to be closed and singly connected
mergeMeshes Merge two meshes
mergeOrSplitBaffles Detects faces that share points (baffles). Either merge them or duplicate the points
mirrorMesh Mirrors a mesh around a given plane
moveDynamicMesh Mesh motion and topological mesh changes utility
moveEngineMesh Solver for moving meshes for engine calculations.
moveMesh Solver for moving meshes
objToVTK Read obj line (not surface!) file and convert into vtk
pointSet Selects a point set through a dictionary
refineMesh Utility to refine cells in multiple directions
renumberMesh Renumbers the cell list in order to reduce the bandwidth, reading and renumbering all fields from all the time directories
rotateMesh Rotates the mesh and fields from the direcion n1   \special {t4ht= to the direction n2   \special {t4ht=
setSet Manipulate a cell/face/point set interactively
setsToZones Add pointZones/faceZones/cellZones to the mesh from similar named pointSets/faceSets/cellSets
splitMesh Splits mesh by making internal faces external. Uses attachDetach
splitMeshRegions Splits mesh into multiple regions
stitchMesh ’Stitches’ a mesh
subsetMesh Selects a section of mesh based on a cellSet
transformPoints Transforms the mesh points in the polyMesh directory according to the translate, rotate and scale options
zipUpMesh Reads in a mesh with hanging vertices and zips up the cells to guarantee that all polyhedral cells of valid shape are closed

Mesh motion

OpenFOAM adopts a novel approach to mesh motion by defining it in terms of the boundary motion which is extremely robust.

The solver need only define the the motion of the boundary and everything else will be done automatically. The open architecture of OpenFOAM solver codes allows quick and efficient implementation: mesh motion can be based on any solution variable, either local or integrated and by dynamically adjusted during the run.

Mesh motion is also transparently integrated with top-level models: the model writer does not see the additional complexity, which is conveniently packaged within the discretisation operators.

For examples of automated mesh motion in OpenFOAM, see Solutions

Mesh conversion

OpenFOAM accepts meshes generated by any of the major mesh generators and CAD systems. Listed below are converter utlities for the major commercial mesh generators. Note that it is also possible to import the meshes from most general purpose mesh generators since they will export in a format read by one of the converters.

Mesh converters


ansysToFoam Converts an ANSYS input mesh file, exported from I-DEAS, to OPENFOAM®format
cfx4ToFoam Converts a CFX 4 mesh to OPENFOAM®format
fluent3DMeshToFoam Converts a Fluent mesh to OPENFOAM®format
fluentMeshToFoam Converts a Fluent mesh to OPENFOAM®format including multiple region and region boundary handling
foamMeshToFluent Writes out the OPENFOAM®mesh in Fluent mesh format
foamToStarMesh Reads an OPENFOAM®mesh and writes a PROSTAR (v4) bnd/cel/vrt format
gambitToFoam Converts a GAMBIT mesh to OPENFOAM®format
gmshToFoam Reads .msh file as written by Gmsh
ideasUnvToFoam I-Deas unv format mesh conversion
kivaToFoam Converts a KIVA grid to OPENFOAM®format
mshToFoam Converts .msh file generated by the Adventure system
netgenNeutralToFoam Converts neutral file format as written by Netgen v4.4
plot3dToFoam Plot3d mesh (ascii/formatted format) converter
polyDualMesh Calculate the dual of a polyMesh. Adheres to all the feature and patch edges
sammToFoam Converts a STAR-CD SAMM mesh to OPENFOAM®format
star4ToFoam Converts a STAR-CD (v4) PROSTAR mesh into OPENFOAM®format
starToFoam Converts a STAR-CD PROSTAR mesh into OPENFOAM®format
tetgenToFoam Converts .ele and .node and .face files, written by tetgen
writeMeshObj For mesh debugging: writes mesh as three separate OBJ files which can be viewed with e.g. javaview

The algorithms below are ready to be downloaded. Biomedical Imaging Group. EPFL

Available Algorithms

http://bigwww.epfl.ch/algorithms.html

http://www.google.com/codesearch/p?hl=fr&sa=N&cd=4&ct=rc#M0QGbzpICpo/kybic/thesis/&q=MRI%20mesh%20matlab

The algorithms below are ready to be downloaded. They are generally written in JAVA or in ANSI-C, either by students or by the members of the Biomedical Imaging Group.Please contact the author of the algorithms if you have a specific question.
JAVA: Plug-ins for ImageJ
JAVA classes are usually meant to be integrated into the public-domain software ImageJ.
bullet Drop Shape Analysis. New method based on B-spline snakes (active contours) for measuring high-accuracy contact angles of sessile drops.
bullet Extended Depth of Focus. The extended depth of focus is a image-processing method to obtain in focus microscopic images of 3D objects and organisms. We freely provide a software as a plugin of ImageJ to produce this in-focus image and the corresponding height map of z-stack images.
bullet Fractional spline wavelet transform. This JAVA package computes the fractional spline wavelet transform of a signal or an image and its inverse.
bullet Image Differentials. This JAVA class for ImageJ implements 6 operations based on the spatial differentiation of an image. It computes the pixel-wise gradient, Laplacian, and Hessian. The class exports public methods for horizontal and vertical gradient and Hessian operations (for those programmers who wish to use them in their own code).
bullet MosaicJ. This JAVA class for ImageJ performs the assembly of a mosaic of overlapping individual images, or tiles. It provides a semi-automated solution where the initial rough positioning of the tiles must be performed by the user, and where the final delicate adjustments are performed by the plugin.
bullet NeuronJ. This Java class for ImageJ was developed to facilitate the tracing and quantification of neurites in two-dimensional (2D) fluorescence microscopy images. The tracing is done interactively based on the specification of end points; the optimal path is determined on the fly from the optimization of a cost function using Dijkstra’s shortest-path algorithm. The procedure also takes advantage of an improved ridge detector implemented by means of a steerable filterbank.
bullet PixFRET. The ImageJ plug-in PixFRET allows to visualize the FRET between two partners in a cell or in a cell population by computing pixel by pixel the images of a sample acquired in three channels.
bullet Point Picker. This JAVA class for ImageJ allows the user to pick some points in an image and to save the list of pixel coordinates as a text file. It is also possible to read back the text file so as to restore the display of the coordinates.
bullet Resize. This ImageJ plugin changes the size of an image to any dimension using either interpolation, or least-squares approximation.
bullet SheppLogan. The purpose of this ImageJ plugin is to generate sampled versions of the Shepp-Logan phantom. Their size can be tuned.
bullet Snakuscule. The purpose of this ImageJ plugin is to detect circular bright blobs in images and to quantify them. It allows one to keep record of their location and size.
bullet SpotTracker Single particle tracking over noisy images sequence. SpotTracker is a robust and fast computational procedure for tracking fluorescent markers in time-lapse microscopy. The algorithm is optimized for finding the time-trajectory of single particles in very noisy image sequences. The optimal trajectory of the particle is extracted by applying a dynamic programming optimization procedure.
bullet StackReg. This JAVA class for ImageJ performs the recursive registration (alignment) of a stack of images, so that each slice acts as template for the next one. This plugin requires that TurboReg is installed.
bullet Steerable feature detectors. This ImageJ plugin implements a series of optimized contour and ridge detectors. The filters are steerable and are based on the optimization of a Canny-like criterion. They have a better orientation selectivity than the classical gradient or Hessian-based detectors.
bullet TurboReg. This JAVA class for ImageJ performs the registration (alignment) of two images. The registration criterion is least-squares. The geometric deformation model can be translational, conformal, affine, and bilinear.
bullet UnwarpJ. This JAVA class for ImageJ performs the elastic registration (alignment) of two images. The registration criterion includes a vector-spline regularization term to constrain the deformation to be physically realistic. The deformation model is made of cubic splines, which ensures smoothness and versatility.
ANSI C
Most often, the ANSI-C pieces of code are not a complete program, but rather an element in a library of routines.
bullet Affine transformation. This ANSI-C routine performs an affine transformation on an image or a volume. It proceeds by resampling a continuous spline model.
bullet Registration. This ANSI-C routine performs the registration (alignment) of two images or two volumes. The criterion is least-squares. The geometric deformation model can be translational, rotational, and affine.
bullet Shifted linear interpolation. This ANSI-C program illustrates how to perform shifted linear interpolation.
bullet Spline interpolation. This ANSI-C program illustrates how to perform spline interpolation, including the computation of the so-called spline coefficients.
bullet Spline pyramids. This software package implements the basic REDUCE and EXPAND operators for the reduction and enlargement of signals and images by factors of two based on polynomial spline representation of the signal.
Others
bullet E-splines. A Mathematica package is made available for the symbolic computation of exponential spline related quantities: B-splines, Gram sequence, Green function, and localization filter.
bullet Fractional spline wavelet transform. A MATLAB package is available for computing the fractional spline wavelet transform of a signal or an image and its inverse.
bullet Fractional spline and fractals. A MATLAB package is available for computing the fractional smoothing spline estimator of a signal and for generating fBms (fractional Brownian motion). This spline estimator provides the minimum mean squares error reconstruction of a fBm (or 1/f-type signal) corrupted by additive noise.
bullet Hex-splines : a novel spline family for hexagonal lattices. A Maple 7.0 worksheet is available for obtaining the analytical formula of any hex-spline (any order, regular, non-regular, derivatives, and so on).
bullet MLTL deconvolution : This Matlab package implements the MultiLevel Thresholded Landweber (MLTL) algorithm, an accelerated version of the TL algorithm that was specifically developped for deconvolution problems with a wavelet-domain regularization.
bullet OWT SURE-LET Denoising : This Matlab package implements the interscale orthonormal wavelet thresholding algorithm based on the SURE-LET (Stein’s Unbiased Risk Estimate/Linear Expansion of Thresholds) principle.
bullet WSPM : Wavelet-based statistical parametric mapping, a toolbox for SPM that incorporates powerful wavelet processing and spatial domain statistical testing for the analysis of fMRI data.

logiciels du laboratoire Jean Kuntzmann

http://www-lmc.imag.fr/Logiciels/index.html

Les liens qui suivent pointent vers les logiciels développés dans nos différentes équipes:

Souvent ils utilisent des outils de developpement

ARTIS

AMIRA (juil. 2007) AMIRA is an Advanced 3D Visualization and Volume Modeling.
PPM (juil. 2007) The acronym PPM stands for Parallel Particle Mesh library. PPM is a software layer between the Message Passing Interface (MPI) and codes for simulations of physical systems using hybrid particle-mesh methods.
Basilic (dec. 2006) Basilic est un serveur de bibliographie pour les équipes de recherche. Il automatise et facilite la diffusion des publications scientifiques sur Internet, en générant automatiquement des pages webs à partir d’une base de données.
DCINPW (dec. 2006) Dynamic Canvas for Immersive Non-Photorealistic Walkthroughs
Freestyle (dec. 2006) Freestyle est un logiciel permettant de faire du rendu non photoréaliste de scènes 3D à base de lignes.
libQGLViewer (dec. 2006) libQGLViewer est une bibliothèque GPL écrite en C++, basée sur openGL et Qt, qui permet de rapidement développer des applications de visualisation 3D.
SciPres (dec. 2006) SciPres est un système pour créer des présentations animées.
TiffIO (dec. 2006) TiffIO est un plugin qui permet à n’importe quelle application basée sur la bibliothèque Qt de lire/écrire des images au format TIFF dans des QImages.
VRender (dec. 2006) VRender permet de faire du rendu vectoriel de données 3D telles qu’elles apparaissent dans une fenêtre OpenGL au format Postscript, XFig (et bientôt SVG).
X3DToolKit (dec. 2006) X3DToolKit est une bibliothèque GPL écrite en C++ qui permet de charger, d’afficher et de traiter des scènes 3D au format X3D.

BIPOP-CASYS

HUMANS (janv. 2007) Toolbox pour la simulation des humanoïdes
MODULOPT (janv. 2007) librairie d’optimisation
SICONOS (janv. 2007) plateforme pour la simulation des systèmes dynamiques non-réguliers
GIVARO (sept. 2005) Une bibliothèque générique pour les corps finis et leurs extensions
Simplicial Homology (oct. 2004) Un module proposé pour GAP pour le calcul de groupes d’homologies de complexes simpliciaux
FFLAS (juil. 2004) Finite Field Linear Algebra Subroutines
LinBox (août 2002) Une bibliothèque générique pour l’algèbre linéaire exacte
FRIDAY (nov. 2000) Systèmes dynamiques.
DAE (nov. 1999) Equations Différentielles Algébriques
EQDL (nov. 1999) Systèmes et Equations Différentiels Linéaires
LAMEX (août 1996) Systèmes dynamiques

EDP

Life (mars 2009) une librairie pour la résolution d’équations aux dérivées partielles en 1D,2D et 3D par des méthodes de Galerkin de type h/p.
NAUTil (mars 2009) von Neumann Analysis Utilities : routines Maple pour l’automatisation
de l’analyse de stabilité linéaire de schémas aux différences finies.
SPASS (mars 2009) Signal Processing for ASynchronous Systems : routines Matlab pour le l’échantillonnage non uniforme et le traitement du signal asynchrone.

EVASION

SOFA (fev. 2007) Sofa est une librairie C+ open souce pour la modélisation et la simulation de scènes mécaniques comportant des modèles très divers en interaction…

LEAR

detectors (dec. 2006) A joint comparison of affine covariant regions by LEAR, Oxford, Leuven and Prague (the test setup and the binaries.
IPLD (dec. 2006) Interest Point Detectors & Test Sequences
KAS (dec. 2006) Groups of adjacent contour segments: sofware for detecting Vitto’s local shape features.
Part-Detect (dec. 2006) Scale-invariant Shape Features for Recognition of Object Categories
Point detector (dec. 2006) an Interest Point Destector Software
Statlearn (dec. 2006) Statlearn is a MatLab toolbox for easy manipulation of different classification methods (supervised learning) and multidimensional distributions (unsupervised learning), developed by Guillaume Bouchard.

MGMI

Géodésique (nov. 2002) Calcul de Géodésiques.

MOISE

Dassflow (janv. 2007) logiciel de simulation en hydraulique fluviale
AGRIF (dec. 2006) Logiciel de raffinement adaptatif de maillages structurés
Rheolef (dec. 2006) Environnement de calcul par éléments finis

SMS

Matlab Wavelet Denoising Toolbox (mars 2008) Un ensemble de procédures (scripts) pour le débruitage de signaux bruités à
l’aide de méthodes diverses de décomposition en ondelettes (déterministes et bayésiennes)
sont implémentées et discutées.
Mouvement Brownien Fractionnaire et Multifractionnaire (mars 2008) Autour des mouvements browniens fractionnaires et multifractionnaires :
Plusieurs procédures (scripts) pour simuler une trajectoire discrétisée d’un mouvement brownien fractionnaire ou multifractionnaire et en estimer les param\`etres sont implémentées
et/ou discutées en S-plus et/ou Matlab.
LogiFiab (janv. 2007) LogiFiab met en oeuvre les principaux modèles probabilistes et tests statistiques pour l’évaluation de la fiabilité des logiciels.
Smoothing Toolbox (nov. 2005) Boite a outils Matlab pour le lissage et la regression non
parametrique.
Empirical Bayes Thresholding (nov. 2005) Selection de seuil pour l’estimateur des ondelettes
par Bayes empirique
BLISS (nov. 2005) Programme de Séparation Aveugle de Sources
MacSurvival (dec. 1996) Implémentation de techniques d’analyse des données censurées. Unique logicile de survie sur Mac incluant des méthodes non paramétriques d’estimation lisse du taux de hasard

U3D and matlab file exchange; Export triangulated mesh into a pdf with a 3D interactive object.

http://www.mathworks.com/matlabcentral/fileexchange/25383

Description

Export triangulated mesh into a pdf with a 3D object. The matlab mesh is converted to IDTF with matlab code. The IDTF file is converted to u3d with an external binary file. The u3d file can then be embedded into a pdf with pdflatex and the movie15 package. The user can then interact with the mesh (zoom, rotate etc.) from adobe reader. The package contains demo data and example of output.

The code of the IDTF to U3D converter can be obtained at : http://sourceforge.net/projects/u3d/

The toolbox has been tested on mac intel, linux and windows.

To test run the script : demo_mesh2pdf.m

MATLAB release MATLAB 7 (R14)
Other requirements The windows version requires to install MeshLab : http://meshlab.sourceforge.net/

MATLAB Central – How to create 3D mesh model?

MATLAB Central – How to create 3D mesh model?

MATLAB Central – Newsreader – How to create 3D mesh model?: “Thread Subject: How to create 3D mesh model?

Subject: How to create 3D mesh model?

From: Tong

Date: 14 Jul, 2009 19:55:03

Message: 1 of 6
Reply to this message
Add author to My Watch List
View original format
Flag as spam

I have segmented meniscus images from MRI that is created in about 3mm slices. How would I combine these slices together to create a 3D model of the meniscus?

Subject: How to create 3D mesh model?

From: Luigi Giaccari

Date: 14 Jul, 2009 20:49:03

Message: 2 of 6
Reply to this message
Add author to My Watch List
View original format
Flag as spam

Please send me that models of yours, I am plannig to build a surface recostructor for sliced cloud. Send to : giaccariluigi@msn.com

In the mean time look for:

http://www.mathworks.com/matlabcentral/fileexchange/22185

http://giaccariluigi.altervista.org/blog/

and related

Subject: How to create 3D mesh model?

From: Brad Henrie

Date: 17 Jul, 2009 21:45:18

Message: 3 of 6
Reply to this message
Add author to My Watch List
View original format
Flag as spam

‘Tong ‘ <celticbaseball06@gmail.com> wrote in message <h3inqn$ni5$1@fred.mathworks.com>…
> I have segmented meniscus images from MRI that is created in about 3mm slices. How would I combine these slices together to create a 3D model of the meniscus?

First place all of your slices into a 3-d matrix. This will give you a cube of data. You can then view it from multiple planes by using this format variable(:,:,a) where a is the slice position in a direction directly into your displayed image. Using the same format you can display other planes variable(:,a,:). Converting your image to greyscale will allow you to display it using implay.

I’m sure that since you are working with MRI you have access to the image processing toolbox.

While viewing images in a plane where the pixels are not square you need to scale your image. (if you have a 3×3x5 voxel and display the 3×5 pixel representation) Also remember your slice separation if you don’t have 3-d k-space.

Subject: How to create 3D mesh model?

From: Image Analyst

Date: 18 Jul, 2009 04:02:35

Message: 4 of 6
Reply to this message
Add author to My Watch List
View original format
Flag as spam

‘Tong ‘ <celticbaseball06@gmail.com> wrote in message <h3inqn$ni5$1@fred.mathworks.com>…
> I have segmented meniscus images from MRI that is created in about 3mm slices. How would I combine these slices together to create a 3D model of the meniscus?
—————————————-
I’m not sure what you mean by ‘model,’ but you can combine 2D images together to form a 3D image by using the cat(3, slice1, slice2, slice3, slice4, slice5,……) function.

Subject: How to create 3D mesh model?

From: Tong

Date: 20 Jul, 2009 18:36:02

Message: 5 of 6
Reply to this message
Add author to My Watch List
View original format
Flag as spam

‘Image Analyst’ <imageanalyst@mailinator.com> wrote in message <h3rhgr$of5$1@fred.mathworks.com>…
> ‘Tong ‘ <celticbaseball06@gmail.com> wrote in message <h3inqn$ni5$1@fred.mathworks.com>…
> > I have segmented meniscus images from MRI that is created in about 3mm slices. How would I combine these slices together to create a 3D model of the meniscus?
> —————————————-
> I’m not sure what you mean by ‘model,’ but you can combine 2D images together to form a 3D image by using the cat(3, slice1, slice2, slice3, slice4, slice5,……) function.

What about when I am using regions of interest, not images?

Subject: How to create 3D mesh model?

From: fabio freschi

Date: 20 Jul, 2009 21:06:01

Message: 6 of 6
Reply to this message
Add author to My Watch List
View original format
Flag as spam

you can try iso2mesh in FE
fabio”

Page suivante »


Blog Stats

  • 55,897 hits

localization

Flickr Photos

Elegant Blue

More Photos

 

décembre 2009
L Ma Me J V S D
« oct    
 123456
78910111213
14151617181920
21222324252627
28293031