![]() | This article contains content that is written like an advertisement .(September 2023) |
![]() A screenshot of CVIPtools running | |
Original author(s) | Scott E. Umbaugh |
---|---|
Stable release | 5.9h / June 2023 |
Written in | C, C++, C# |
Operating system | Windows, Unix |
Available in | English |
Type | Image processing |
License | Freeware |
Website | cviptools |
CVIPtools (Computer Vision and Image Processing Tools) is a development suite for image processing. [1] Recent versions are available for free for Windows, while older versions are available for Unix and Linux systems as well. [2] [3] The program is used for both image processing and computer vision applications, with an emphasis on processing multiple images at a time. [1] [4] It contains multiple tools used for image processing.
CVIPtools has the ability to read various image formats, including TIFF, PNG, GIF, JPEG, BMP, and RAW formats. It supports standard image processing functions, image compression, restoration, logical and arithmetical operations between images, contrast manipulation, image sharpening, frequency transform, edge detection, segmentation, and geometric transformations. [3]
The Computer Vision and Image Processing Algorithm Test and Analysis Tool, CVIP-ATAT, is used to create both human and computer vision applications. Its primary use is to execute algorithms for processing multiple images at a time, incorporating various algorithmic and parameter variations. The program determines a suitable algorithm for pre-processing, segmenting, and post-processing a set of images for a specific application, in order to distinguish crucial regions of interest within the image.
CVIP-ATAT provides a graphical user interface (GUI) to input algorithms for testing and analysis. Users can define multiple processes to test at each stage along with parameter ranges for these processes. Additionally, users can specify a group of images for processing and a set of "ideal" output images to evaluate the success of each algorithm. Each algorithm is characterized by a specific set of processes and parameter values.
The tool automatically executes algorithms consisting of permutations of values for each parameter across processes and stages. Users can compare the outcomes of various algorithms to identify the optimal set of processes and parameters for the specific application. It serves as a front-end tool for image analysis, aiming to help identify the most efficient set of processes and parameters for extracting regions of interest in an image for further processing. [5]
The Computer Vision and Image Processing Feature Extraction and Pattern Classification Tool, CVIP-FEPC, is used for advancing human and computer vision applications. While its primary function is computer vision, it serves various purposes such as supporting the development of image compression schemes for human vision applications by identifying image features needed for a specific compression scheme. In computer vision applications, feature extraction and pattern classification form the fundamental components of image analysis systems made for specific applications.
CVIP-FEPC's main function is batch processing of large image sets. Users can select features and pattern classification parameters to automatically process these image sets. CVIP-FEPC allows users to define training and test sets and conducting multiple experiments to identify parameters for classifying objects of interest in the images.
CVIP-FEPC is primarily designed to work with images containing binary masks representing individual objects of interest, with one object per image. It is compatible with manually created masks using CVIP tools or other tools available in various image database applications. Users load images, specify classes, select features and the test set, choose pattern classification parameters, and initiate the processing of the image set. Subsequently, an output file containing the experiment results is generated. [6]
The CVIP Toolbox contains library functions for use in MATLAB. The functions it includes are: arithmetic and logic functions, banding, coloring, conversion of image files, edge/line detection, geometry, histograms, mapping, morphological functions, noise filters, objective fidelity metrics, pattern classification and classification algorithms, segmentation, spatial filters, and transformation filters. The CVIP Toolbox also includes a CVIPlab skeleton program and a utility function for batch processing. [7]
MATLAB is a proprietary multi-paradigm programming language and numeric computing environment developed by MathWorks. MATLAB allows matrix manipulations, plotting of functions and data, implementation of algorithms, creation of user interfaces, and interfacing with programs written in other languages.
Pattern recognition is the task of assigning a class to an observation based on patterns extracted from data. While similar, pattern recognition (PR) is not to be confused with pattern machines (PM) which may possess (PR) capabilities but their primary function is to distinguish and create emergent pattern. PR has applications in statistical data analysis, signal processing, image analysis, information retrieval, bioinformatics, data compression, computer graphics and machine learning. Pattern recognition has its origins in statistics and engineering; some modern approaches to pattern recognition include the use of machine learning, due to the increased availability of big data and a new abundance of processing power.
Image registration is the process of transforming different sets of data into one coordinate system. Data may be multiple photographs, data from different sensors, times, depths, or viewpoints. It is used in computer vision, medical imaging, military automatic target recognition, and compiling and analyzing images and data from satellites. Registration is necessary in order to be able to compare or integrate the data obtained from these different measurements.
Machine learning (ML) is a field of study in artificial intelligence concerned with the development and study of statistical algorithms that can learn from data and generalize to unseen data, and thus perform tasks without explicit instructions. Recently, artificial neural networks have been able to surpass many previous approaches in performance.
Edge detection includes a variety of mathematical methods that aim at identifying edges, defined as curves in a digital image at which the image brightness changes sharply or, more formally, has discontinuities. The same problem of finding discontinuities in one-dimensional signals is known as step detection and the problem of finding signal discontinuities over time is known as change detection. Edge detection is a fundamental tool in image processing, machine vision and computer vision, particularly in the areas of feature detection and feature extraction.
In digital image processing and computer vision, image segmentation is the process of partitioning a digital image into multiple image segments, also known as image regions or image objects. The goal of segmentation is to simplify and/or change the representation of an image into something that is more meaningful and easier to analyze. Image segmentation is typically used to locate objects and boundaries in images. More precisely, image segmentation is the process of assigning a label to every pixel in an image such that pixels with the same label share certain characteristics.
In computer vision, the Marr–Hildreth algorithm is a method of detecting edges in digital images, that is, continuous curves where there are strong and rapid variations in image brightness. The Marr–Hildreth edge detection method is simple and operates by convolving the image with the Laplacian of the Gaussian function, or, as a fast approximation by difference of Gaussians. Then, zero crossings are detected in the filtered result to obtain the edges. The Laplacian-of-Gaussian image operator is sometimes also referred to as the Mexican hat wavelet due to its visual shape when turned upside-down. David Marr and Ellen C. Hildreth are two of the inventors.
An active appearance model (AAM) is a computer vision algorithm for matching a statistical model of object shape and appearance to a new image. They are built during a training phase. A set of images, together with coordinates of landmarks that appear in all of the images, is provided to the training supervisor.
Mean shift is a non-parametric feature-space mathematical analysis technique for locating the maxima of a density function, a so-called mode-seeking algorithm. Application domains include cluster analysis in computer vision and image processing.
In computer science, Orfeo Toolbox (OTB) is a software library for processing images from Earth observation satellites.
Chessboards arise frequently in computer vision theory and practice because their highly structured geometry is well-suited for algorithmic detection and processing. The appearance of chessboards in computer vision can be divided into two main areas: camera calibration and feature extraction. This article provides a unified discussion of the role that chessboards play in the canonical methods from these two areas, including references to the seminal literature, examples, and pointers to software implementations.
In computer vision, a saliency map is an image that highlights the region on which people's eyes focus first. The goal of a saliency map is to reflect the degree of importance of a pixel to the human visual system. For example, in this image, a person first looks at the fort and light clouds, so they should be highlighted on the saliency map. Saliency maps engineered in artificial or computer vision are typically not the same as the actual saliency map constructed by biological or natural vision.
The Aphelion Imaging Software Suite is a software suite that includes three base products - Aphelion Lab, Aphelion Dev, and Aphelion SDK for addressing image processing and image analysis applications. The suite also includes a set of extension programs to implement specific vertical applications that benefit from imaging techniques.
The following outline is provided as an overview of and topical guide to machine learning:
In image processing, line detection is an algorithm that takes a collection of n edge points and finds all the lines on which these edge points lie. The most popular line detectors are the Hough transform and convolution-based techniques.
Elastix is an image registration toolbox built upon the Insight Segmentation and Registration Toolkit (ITK). It is entirely open-source and provides a wide range of algorithms employed in image registration problems. Its components are designed to be modular to ease a fast and reliable creation of various registration pipelines tailored for case-specific applications. It was first developed by Stefan Klein and Marius Staring under the supervision of Josien P.W. Pluim at Image Sciences Institute (ISI). Its first version was command-line based, allowing the final user to employ scripts to automatically process big data-sets and deploy multiple registration pipelines with few lines of code. Nowadays, to further widen its audience, a version called SimpleElastix is also available, developed by Kasper Marstal, which allows the integration of elastix with high level languages, such as Python, Java, and R.
Soft computing is an umbrella term used to describe types of algorithms that produce approximate solutions to unsolvable high-level problems in computer science. Typically, traditional hard-computing algorithms heavily rely on concrete data and mathematical models to produce solutions to problems. Soft computing was coined in the late 20th century. During this period, revolutionary research in three fields greatly impacted soft computing. Fuzzy logic is a computational paradigm that entertains the uncertainties in data by using levels of truth rather than rigid 0s and 1s in binary. Next, neural networks which are computational models influenced by human brain functions. Finally, evolutionary computation is a term to describe groups of algorithm that mimic natural processes such as evolution and natural selection.
CrysTBox is a suite of computer tools designed to accelerate material research based on transmission electron microscope images via highly accurate automated analysis and interactive visualization. Relying on artificial intelligence and computer vision, CrysTBox makes routine crystallographic analyses simpler, faster and more accurate compared to human evaluators. The high level of automation together with sub-pixel precision and interactive visualization makes the quantitative crystallographic analysis accessible even for non-crystallographers allowing for an interdisciplinary research. Simultaneously, experienced material scientists can take advantage of advanced functionalities for comprehensive analyses.