--- title: "Introduction to AiES: Axon integrity Evaluation System" author: "Shinji Tokunaga, Masafumi Funakoshim, Toshiyuki Araki" email: tokunaga@ncnp.go.jp package: AiES abstract: AiES is a free and open-source R-package for (high-throughput) axonal integrity analysis of micrographs such as murine dorsal root ganglia explant cultures. AiES offers tools to segment neurites, extract quantitative features, generate SVM models, and quantify axon integrity.AiES is available under the 3-Clause BSD license. date: "`r Sys.Date()`" output: rmarkdown::html_vignette graphics: yes vignette: > %\VignetteIndexEntry{AiES Introduction} %\VignetteKeywords{image processing, visualization} %\VignetteEngine{knitr::rmarkdown} %\VignetteEncoding{UTF-8} --- ```{r setup, include=FALSE} knitr::opts_chunk$set(echo = TRUE) ``` # Introduction The AiES package provides an integrated workflow for **axon image analysis**, including feature extraction, machine learning classification, and quantitative assessment. The main functions are: - `axDistmap()`: Extracts morphological features from axon images. - `axSvm()`: Builds an SVM classifier using extracted features. - `axQnt()`: Quantifies Axon Integrity Index (AII) and Degeneration Index (DI) for new data using a trained SVM. # Typical Workflow ## 1. Feature Extraction from Images (`axDistmap`) The axDistmap() function creates distance maps and binary images from TIFF image files, extracting relevant features. ```r library(AiES) # Specify a sample image folder included in the package img_dir1 <- system.file("extdata", "Degenerate_Images", package = "AiES") img_dir2 <- system.file("extdata", "Intact_Images", package = "AiES") # Extract features from multiple folders (recursive search) axDistmap( folder_paths = c(img_dir1, img_dir2), # Multiple folders supported subBack = 30, resizeW = 900, output_path = tempdir() ) ``` This function processes all TIFF files in the selected directory, generating for each image: - A distance map image - A binary image (optional) - A text file containing feature data ## 2. Building an SVM Classifier (`axSvm`) The axSvm() function built an SVM model using the extracted features. ```r # Specify feature data folders Degenerate_dir <- system.file("extdata", "Degenerate_txt", package = "AiES") Intact_dir <- system.file("extdata", "intact_txt", package = "AiES") # Train an SVM classifier axSvm( degenerate_path = Degenerate_dir, intact_path = Intact_dir, output_data_path = tempdir(), output_model_path = tempdir(), nCst = 3, nGmm = 0.1, nCrss = 5 ) ``` This function generates: - An extracted data file for machine learning - A trained SVM model file ## 3. Quantitative Analysis (`axQnt`) The axQnt() function uses the created SVM model to calculate the Axon Integrity Index and Degeneration Index for new image data. ```r # Specify a sample image folder included in the package img_dir1 <- system.file("extdata", "Degenerate_Images", package = "AiES") img_dir2 <- system.file("extdata", "Intact_Images", package = "AiES") # Quantify AII/DI for new image data result <- axQnt( input_dir = c(img_dir1, img_dir2), # Multiple folders supported svm_model_path = system.file("extdata", "svm_example_model.svm", package = "AiES"), output_dir = tempdir() ) # Visualize the results library(ggplot2) ggplot(result, aes(x = AxonIntegrityIndex)) + geom_histogram(binwidth = 0.1, fill = "blue", alpha = 0.7) + ggtitle("AII Distribution") ``` This function generates: - A summary CSV file containing the Axon Integrity Index and Degeneration Index for each image - (Optional) Single image prediction data files # Advanced Usage ## Exporting All Features ```r # Export all EBImage features plus Circularity axDistmap( folder_paths = img_dir, allFeatures = TRUE, output_path = tempdir() ) ``` # Summary With AiES, you can perform **feature extraction, machine learning, and quantitative analysis** in a seamless workflow. For more details, see the help pages for each function (e.g., `?axDistmap`, `?axSvm`, `?axQnt`). # Source code and issues You can find the development version of AiES on [GitHub](https://github.com/BreezyCave/AiES). For bug reports and feature requests, please use the [GitHub Issues page](https://github.com/BreezyCave/AiES/issues).