Package: AFM 2.0

AFM: Atomic Force Microscope Image Analysis

Provides Atomic Force Microscope images analysis such as Gaussian mixes identification, Power Spectral Density, roughness against lengthscale, experimental variogram and variogram models, fractal dimension and scale, 2D network analysis. The AFM images can be exported to STL format for 3D printing.

Authors:Mathieu Beauvais [aut, cre], Irma Liascukiene [aut], Jessem Landoulsi [aut]

AFM_2.0.tar.gz
AFM_2.0.zip(r-4.5)AFM_2.0.zip(r-4.4)AFM_2.0.zip(r-4.3)
AFM_2.0.tgz(r-4.4-any)AFM_2.0.tgz(r-4.3-any)
AFM_2.0.tar.gz(r-4.5-noble)AFM_2.0.tar.gz(r-4.4-noble)
AFM_2.0.tgz(r-4.4-emscripten)AFM_2.0.tgz(r-4.3-emscripten)
AFM.pdf |AFM.html
AFM/json (API)
NEWS

# Install 'AFM' in R:
install.packages('AFM', repos = c('https://mbeauvai.r-universe.dev', 'https://cloud.r-project.org'))

Peer review:

Datasets:

On CRAN:

This package does not link to any Github/Gitlab/R-forge repository. No issue tracker or development information is available.

110 exports 1 stars 6.15 score 111 dependencies 137 mentions 92 scripts 462 downloads

Last updated 4 years agofrom:98e8b5222e. Checks:OK: 3 NOTE: 4. Indexed: yes.

TargetResultDate
Doc / VignettesOKSep 02 2024
R-4.5-winNOTESep 02 2024
R-4.5-linuxNOTESep 02 2024
R-4.4-winNOTESep 02 2024
R-4.4-macNOTESep 02 2024
R-4.3-winOKSep 02 2024
R-4.3-macOKSep 02 2024

Exports:AFMImageAFMImageAnalyserAFMImageFractalDimensionMethodAFMImageFractalDimensionsAnalysisAFMImageGaussianMixAnalysisAFMImageNetworksAnalysisAFMImagePSDAnalysisAFMImagePSDSlopesAnalysisAFMImageVariogramAnalysisAFMImageVariogramModelanalyseAreNodesConnectedcalculate3DModelcalculateDirectionalVariogramscalculateGaussianMixturecalculateHolesCharacteristicscalculateIgraphcalculateNetworkParameterscalculateNetworkscalculateNetworkSkeletoncalculateOmnidirectionalVariogramcalculatePhysicalDistanceFromPathcalculateShortestPathscanBeRemovedcheckIsotropycheckNormalitycreateGraphdisplayColoredNetworkWithVerticesSizedisplaygridIgraphPlotdisplaygridIgraphPlotFromEdgesdisplayHolesIn3DdisplayIn3DdnormalmixevaluateVariogramModelsexistsEdgeexistsSegmentexportToSTLextractAFMImagefilterAFMImagefusionCloseNodesgenerateAFMImageReportgenerateCheckReportgeneratePolygonEnvelopegenerateReportgenerateReportFromNanoscopeImageDirectoryget3DImageFullfilenamegetAllPointsToRemovegetAnglegetAutoIntersectionForOmnidirectionalVariogramgetAutoIntersectionForRoughnessAgainstLengthscalegetAutomaticWidthForVariogramCalculationgetBresenham2DSegmentgetCircleSpatialPointsgetCoordinatesFromVertexIdgetDTModelEvaluationgetDTModelSillRangegetFractalDimensionsgetHolesStatisticsgetIntersectionForRoughnessAgainstLengthscalegetIntersectionPointWithBordergetListOfDiametersgetLogLogOmnidirectionalSlopeGraphgetMaxCircleMatrixgetNetworkGridLayoutgetNetworkParametersgetNyquistSpatialFrequencygetPaddedAFMImagegetRoughnessParametersgetSpplotFromAFMImagegetSurroundingVertexesListgetTopologyAFMImagegetTrianglegetVertexIdgridIgraphPlotidentifyEdgesFromCirclesidentifyIsolatedNodesidentifyNodesAndEdgesidentifyNodesWithCirclesimportFromNanoscopeinitializeinvertBinaryAFMImageisAdjacentToBetterVertexisAngleBetweenEdgesAlwaysSuperiorToMinAngleisBinaryloglike.normalmixmakeBinaryAFMImagemultiplyHeightsAFMImageomniVariogramSlopeAnalysisperformAllPSDCalculationperformGaussianMixCalculationpnormmixprintVariogramModelEvaluationsPSD1DAgainstFrequencyPSD2DAgainstFrequencyputAnalysisOnDiskputImagesFromAnalysisOnDiskRoughnessByLengthScalerunAFMAppsampleAFMImagesaveOnDisksaveOnDiskIntersectionForRoughnessAgainstLengthscalesaveSpplotFromAFMImageshiftedPSDuvshiftFFT2DsimplifyAFMImagesimplifyNetworkthinImagetotalRMSRoughnesstransformAFMImageForNetworkAnalysisupdateProgress

Dependencies:abindaskpassbase64encbslibcachemclassclassIntclicolorspacecommonmarkcpp11crayoncrosstalkcurldata.tableDBIdbscandigestdplyre1071evaluatefansifarverfastmapfftwtoolsFNNfontawesomefractaldimfsgenericsggplot2gluegridExtragstatgtablehighrhtmltoolshtmlwidgetshttpuvhttrigraphintervalsisobandjquerylibjsonlitekernlabKernSmoothknitrlabelinglaterlatticelazyevallifecyclemagrittrMASSMatrixmemoisemgcvmimemixtoolsmomentsmunsellnlmeopensslpillarpkgconfigplotlyplyrpngpracmapromisesproxypurrrR6rappdirsRColorBrewerRcpprglrlangrmarkdowns2sassscalessegmentedsfsftimeshinyshinyjssourcetoolsspspacetimestarsstringistringrsurvivalsystibbletidyrtidyselecttinytexunitsutf8vctrsviridisLitewithrwkxfunxtablextsyamlzoo

Readme and manuals

Help Manual

Help pageTopics
addNodeaddNode
Atomic Force Microscopy images toolsAFM
AFM image classAFMImage AFMImage-class initialize,AFMImage-method
AFM image Power Spectrum Density analysis classAFMImage3DModelAnalysis AFMImage3DModelAnalysis-class
AFM image analyser classAFMImageAnalyser AFMImageAnalyser-class
AFM image sampleAFMImageCollagenNetwork
AFM image fractal dimension method classAFMImageFractalDimensionMethod AFMImageFractalDimensionMethod-class initialize,AFMImageFractalDimensionMethod-method
AFM image fractal dimensions analysis classAFMImageFractalDimensionsAnalysis AFMImageFractalDimensionsAnalysis-class fractalDimensionMethods fractalDimensionMethods,AFMImageFractalDimensionsAnalysis-method initialize,AFMImageFractalDimensionsAnalysis-method
AFM image Gaussian Mix analysis classAFMImageGaussianMixAnalysis AFMImageGaussianMixAnalysis-class densityCurvesAllHeights densityCurvesAllHeights,AFMImageGaussianMixAnalysis-method eachComponentsCounts eachComponentsCounts,AFMImageGaussianMixAnalysis-method epsilonGaussianMix epsilonGaussianMix,AFMImageGaussianMixAnalysis-method gaussianMix gaussianMix,AFMImageGaussianMixAnalysis-method initialize,AFMImageGaussianMixAnalysis-method maxGaussianMix maxGaussianMix,AFMImageGaussianMixAnalysis-method minGaussianMix minGaussianMix,AFMImageGaussianMixAnalysis-method summaryMixture summaryMixture,AFMImageGaussianMixAnalysis-method tcdfsEcdfsCheck tcdfsEcdfsCheck,AFMImageGaussianMixAnalysis-method
AFM image networks analysis classAFMImageNetworksAnalysis AFMImageNetworksAnalysis-class initialize,AFMImageNetworksAnalysis-method
AFM image sampleAFMImageOfAluminiumInterface
AFM image sampleAFMImageOfNormallyDistributedHeights
AFM image sampleAFMImageOfOnePeak
AFM image sampleAFMImageOfRegularPeaks
AFM image Power Spectrum Density analysis classAFMImagePSDAnalysis AFMImagePSDAnalysis-class initialize,AFMImagePSDAnalysis-method intersections intersections,AFMImagePSDAnalysis-method psd1d psd1d,AFMImagePSDAnalysis-method psd1d_breaks psd1d_breaks,AFMImagePSDAnalysis-method psd2d psd2d,AFMImagePSDAnalysis-method psd2d_maxHighLengthScale psd2d_maxHighLengthScale,AFMImagePSDAnalysis-method psd2d_truncHighLengthScale psd2d_truncHighLengthScale,AFMImagePSDAnalysis-method roughnessAgainstLengthscale roughnessAgainstLengthscale,AFMImagePSDAnalysis-method
AFM Image psd slope analysisAFMImagePSDSlopesAnalysis AFMImagePSDSlopesAnalysis-class initialize,AFMImagePSDSlopesAnalysis-method
AFM image variogram analysis classAFMImageVariogramAnalysis AFMImageVariogramAnalysis-class directionalVariograms directionalVariograms,AFMImageVariogramAnalysis-method initialize,AFMImageVariogramAnalysis-method omnidirectionalVariogram omnidirectionalVariogram,AFMImageVariogramAnalysis-method variogramModels variogramModels,AFMImageVariogramAnalysis-method variogramSlopeAnalysis variogramSlopeAnalysis,AFMImageVariogramAnalysis-method
AFM Image Variogram Model classAFMImageVariogramModel AFMImageVariogramModel-class initialize,AFMImageVariogramModel-method
Analyse an AFMImageanalyse
check if nodes represented by circles are connected. The function defines all the possible segments between the circles and check if at least one segment exists.AreNodesConnected
Calculate the 3D model for 3D printingcalculate3DModel calculate3DModel,AFMImage-method calculate3DModel,AFMImage3DModelAnalysis-method
Calculate experimental directional semi-variogramscalculateDirectionalVariograms
Calculate Gaussian Mixture with two components from the AFM Image.calculateGaussianMixture
get the networks parameterscalculateHolesCharacteristics
Calculate iGraph from AFMImagecalculateIgraph
get the networks parameterscalculateNetworkParameters
Calculate networks on the surfacecalculateNetworks calculateNetworks,AFMImage-method calculateNetworks,AFMImageNetworksAnalysis-method
calculateNetworkSkeletoncalculateNetworkSkeleton
Calculate experimental omnidirectional semi-variogramcalculateOmnidirectionalVariogram
calculate the physical distances between nodescalculatePhysicalDistanceFromPath
calculate the shortest path between adjacent nodescalculateShortestPaths
canBeRemovedcanBeRemoved
Check the isotropy of a samplecheckIsotropy
Check visualy of the normality of the samplecheckNormality
create the igraph weighted graph from the nodes and edgescreateGraph
displayColoredNetworkWithVerticesSizedisplayColoredNetworkWithVerticesSize
display the network of nodes and edgesdisplaygridIgraphPlot
display the network of nodes and edgesdisplaygridIgraphPlotFromEdges
Display a 3D image of the holes in an AFMImage and store it on disk.displayHolesIn3D
Display a 3D image of an AFMImage and store it on disk.displayIn3D
dnormalmix density of a mixture of normalsdnormalmix
evaluateVariogramModels method to evaluate the basic variogram modelsevaluateVariogramModels evaluateVariogramModels,AFMImageVariogramAnalysis-method
Does an edge exist ?existsEdge
existsSegment checks if a segment exists in an AFMImage; check if all the heights at the segment coordinates are different to zero.existsSegment
Export an AFM Image as a STL format file.exportToSTL
Extract a portion of an AFM image.extractAFMImage
filter the heights of an AFMImage with a minimun and a maximum valuefilterAFMImage
fusion the nodes that are intersectingfusionCloseNodes
Generate an analysis report from an AFMImageAnalyser objectgenerateAFMImageReport
Generate a check report for one AFMImagegenerateCheckReport
generatePolygonEnvelopegeneratePolygonEnvelope
Generate an analysis report for one AFMImagegenerateReport
Generate a pdf report for all AFM images in a directorygenerateReportFromNanoscopeImageDirectory
get 3D image full filenameget3DImageFullfilename
getAllPointsToRemovegetAllPointsToRemove
calculate the angle between two vectorsgetAngle
Calculate slopes and intersections in variogram 'getAutoIntersectionForOmnidirectionalVariogram' returns the slope in the omnidirectional variogramsgetAutoIntersectionForOmnidirectionalVariogram
get the intersection between tangente and plateaugetAutoIntersectionForRoughnessAgainstLengthscale
calculate a width to be used for experimental variogram calculationgetAutomaticWidthForVariogramCalculation
get a segment of points thanks to Bresenham line algorithmgetBresenham2DSegment
get the spatial points on the circle including the center of the circlegetCircleSpatialPoints
Get x,y coordinates from vertex idgetCoordinatesFromVertexId
getDTModelEvaluation methodgetDTModelEvaluation getDTModelEvaluation,AFMImageVariogramAnalysis-method
getDTModelSillRange methodgetDTModelSillRange getDTModelSillRange,AFMImageVariogramAnalysis-method
Calculate 2D fractal dimensions and scales of an AFM ImagegetFractalDimensions
calculate statistics about holes in a binary imagegetHolesStatistics
get the intersection between tangente and plateaugetIntersectionForRoughnessAgainstLengthscale
getIntersectionPointWithBorder to be describedgetIntersectionPointWithBorder
getListOfDiametersgetListOfDiameters
Get the graph of the Log Log omnidiretction variogram 'getLogLogOmnidirectionalSlopeGraph' returns Get the graph of the Log Log omnidirectional variogramgetLogLogOmnidirectionalSlopeGraph
getMaxCircleMatrixgetMaxCircleMatrix
#' @export getCoordinatesFromVertexId2<-function(AFMImage, vId) vertexId<-as.numeric(vId) y<-floor(vertexId/HASHSIZE) x<-vertexId-y*HASHSIZE return(data.table(vId=vId, coords.x1=x,coords.x2=y)) Get getNetworkGridLayoutgetNetworkGridLayout
Get Network parametersgetNetworkParameters getNetworkParameters,AFMImage-method getNetworkParameters,AFMImageNetworksAnalysis-method
Get the Nyquist spatial frequencygetNyquistSpatialFrequency getNyquistSpatialFrequency,AFMImage-method
Get a zero padded AFMImagegetPaddedAFMImage
Get Roughness parametersgetRoughnessParameters getRoughnessParameters,AFMImage-method
Get an AFMImage as a Lattice (trellis) plotgetSpplotFromAFMImage
Get surrounding vertices from x,y coordinatesgetSurroundingVertexesList
Calculate topology image (TBC)getTopologyAFMImage
get a triangle starting from center, two segments of length r with angles deg1 and deg2getTriangle
Get vertex id from x,y coordinatesgetVertexId
gridIgraphPlotgridIgraphPlot
display the network of nodes and edgesidentifyEdgesFromCircles
identify isolated nodes comparing the list of edges and the list of nodesidentifyIsolatedNodes
identifyMaxCircleRadiusidentifyMaxCircleRadius
identifyNodesAndEdgesidentifyNodesAndEdges
identify largest circles in binary imageidentifyNodesWithCircles
Import data from nanoscope analysis(tm) toolimportFromNanoscope
Constructor method of AFMImageAnalyser Class.initialize,AFMImageAnalyser-method
invert a binary AFMImageinvertBinaryAFMImage
isAdjacentToBetterVertexisAdjacentToBetterVertex
check if all the angles between one edge and a list of edges is superior to a specified value.isAngleBetweenEdgesAlwaysSuperiorToMinAngle
has the AFM Image heights of 0 or 1isBinary
loglike sum of density of a mixture of normalsloglike.normalmix
make a binary AFMImage setting all the heights different to 0 to 1.makeBinaryAFMImage
multiply the heights of an AFMImagemultiplyHeightsAFMImage
AFM Image log-log experimental variogram slope analysisinitialize,omniVariogramSlopeAnalysis-method omniVariogramSlopeAnalysis omniVariogramSlopeAnalysis-class
Perform all the calculation for PSD exploitationperformAllPSDCalculation
Perform the calculation for the Gaussian mixesperformGaussianMixCalculation
pnormmix distribution of a mixture of normalspnormmix
printVariogramModelEvaluationsprintVariogramModelEvaluations
Calculate the 1D Power Spectral Density; returns a data table of PSD 1D and PSD 2D values against spatial frequencies. As mentionned in Sidick2009, this function calculates the PSD against spatial frequencies in 1D from 'PSD2DAgainstFrequency' by using breaks in the log space to sum PSD 2D and frequency values.PSD1DAgainstFrequency PSD1DAgainstFrequency,AFMImage-method
Calculate the 2D Power Spectral DensityPSD2DAgainstFrequency PSD2DAgainstFrequency,AFMImage,AFMImagePSDAnalysis-method PSD2DAgainstFrequency,AFMImage-method
Export all data from an analysis of an AFM Image as rdata fileputAnalysisOnDisk putAnalysisOnDisk,AFMImageAnalyser-method
Put the images from all analysis on diskputImagesFromAnalysisOnDisk
removeLonguestEdgeremoveLonguestEdge
removeNoderemoveNode
Calculate the roughness of the sample against length scaleRoughnessByLengthScale RoughnessByLengthScale,AFMImage-method
Launch the AFM shiny applicationrunAFMApp
Get a sample of an AFM image.sampleAFMImage
Save an AFM image on disk.saveOnDisk
save an image of the roughness against lenghtscale calculationssaveOnDiskIntersectionForRoughnessAgainstLengthscale
Save on disk an AFMImage as a Lattice (trellis) plotsaveSpplotFromAFMImage
Calculate the shifted PSD matrixshiftedPSDuv
Shift the quadrants of the FFT 2DshiftFFT2D
simplify an AFM image.simplifyAFMImage
simplifyNetworksimplifyNetwork
thin an Image in matrix formatthinImage
Calculate the total Root Mean Square Roughness (Rrms total)totalRMSRoughness
Multiply, filter the heights and make a binary AFMImage from the transformed AFMImagetransformAFMImageForNetworkAnalysis transformAFMImageForNetworkAnalysis,AFMImage-method transformAFMImageForNetworkAnalysis,AFMImageNetworksAnalysis-method
updateProgressupdateProgress updateProgress,AFMImageVariogramAnalysis-method