PeakExtractor
This command is experimental, his signature may be modified between now and his final version.
Extracts the peaks (local maxima) of an image using a circular neighborhood analysis.
Extracts the peaks (local maxima) of an image using a circular neighborhood analysis.
Function Syntax
This function returns outputMeasurement.
// Function prototype
PeakExtractorMsr::Ptr peakExtractor( std::shared_ptr< iolink::ImageView > inputImage, uint32_t numberOfPeaks, double threshold, iolink::Vector3u32 radius, PeakExtractor::Method method, PeakExtractorMsr::Ptr outputMeasurement = nullptr );
This function returns outputMeasurement.
// Function prototype.
peak_extractor(input_image: idt.ImageType,
number_of_peaks: int = 0,
threshold: float = 0.5,
radius: Iterable[int] = [10, 10, 10],
method: PeakExtractor.Method = PeakExtractor.Method.FAST,
output_measurement: Union[Any, None] = None) -> PeakExtractorMsr
This function returns outputMeasurement.
// Function prototype.
public static PeakExtractorMsr
PeakExtractor( IOLink.ImageView inputImage,
UInt32 numberOfPeaks = 0,
double threshold = 0.5,
uint[] radius = null,
PeakExtractor.Method method = ImageDev.PeakExtractor.Method.FAST,
PeakExtractorMsr outputMeasurement = null );
Class Syntax
Parameters
| Parameter Name | Description | Type | Supported Values | Default Value | |||
|---|---|---|---|---|---|---|---|
![]() |
inputImage |
The input image from which the peaks must be extracted. | Image | Binary, Label or Grayscale | nullptr | ||
![]() |
numberOfPeaks |
The maximum number of peaks to extract. If this value is set to 0, all peaks having an intensity greater than or equal to the threshold vaue are detected. | UInt32 | Any value | 0 | ||
![]() |
threshold |
The threshold value that determines the minimal intensity of a selected peak. | Float64 | Any value | 0.5 | ||
![]() |
method |
The method for extracting the peaks.
|
Enumeration | FAST | |||
![]() |
radius |
The minimum distance between two extracted peaks in pixels, along the X, Y, and Z directions | Vector3u32 | Any value | {10, 10, 10} | ||
![]() |
outputMeasurement |
PeakExtractorMsr object containing the detected templates with their position and the peak value (analysis object). | PeakExtractorMsr | nullptr | |||
| Parameter Name | Description | Type | Supported Values | Default Value | |||
|---|---|---|---|---|---|---|---|
![]() |
input_image |
The input image from which the peaks must be extracted. | image | Binary, Label or Grayscale | None | ||
![]() |
number_of_peaks |
The maximum number of peaks to extract. If this value is set to 0, all peaks having an intensity greater than or equal to the threshold vaue are detected. | uint32 | Any value | 0 | ||
![]() |
threshold |
The threshold value that determines the minimal intensity of a selected peak. | float64 | Any value | 0.5 | ||
![]() |
method |
The method for extracting the peaks.
|
enumeration | FAST | |||
![]() |
radius |
The minimum distance between two extracted peaks in pixels, along the X, Y, and Z directions | vector3u32 | Any value | [10, 10, 10] | ||
![]() |
output_measurement |
PeakExtractorMsr object containing the detected templates with their position and the peak value (analysis object). | PeakExtractorMsr | None | |||
| Parameter Name | Description | Type | Supported Values | Default Value | |||
|---|---|---|---|---|---|---|---|
![]() |
inputImage |
The input image from which the peaks must be extracted. | Image | Binary, Label or Grayscale | null | ||
![]() |
numberOfPeaks |
The maximum number of peaks to extract. If this value is set to 0, all peaks having an intensity greater than or equal to the threshold vaue are detected. | UInt32 | Any value | 0 | ||
![]() |
threshold |
The threshold value that determines the minimal intensity of a selected peak. | Float64 | Any value | 0.5 | ||
![]() |
method |
The method for extracting the peaks.
|
Enumeration | FAST | |||
![]() |
radius |
The minimum distance between two extracted peaks in pixels, along the X, Y, and Z directions | Vector3u32 | Any value | {10, 10, 10} | ||
![]() |
outputMeasurement |
PeakExtractorMsr object containing the detected templates with their position and the peak value (analysis object). | PeakExtractorMsr | null | |||
Object Examples
auto fibers_score = readVipImage( std::string( IMAGEDEVDATA_IMAGES_FOLDER ) + "fibers_score.vip" );
PeakExtractor peakExtractorAlgo;
peakExtractorAlgo.setInputImage( fibers_score );
peakExtractorAlgo.setNumberOfPeaks( 0 );
peakExtractorAlgo.setThreshold( 4000 );
peakExtractorAlgo.setRadius( {15, 15, 15} );
peakExtractorAlgo.setMethod( PeakExtractor::Method::FAST );
peakExtractorAlgo.execute();
std::cout << "positionX: " << peakExtractorAlgo.outputMeasurement()->positionX( 0 ) ;
fibers_score = imagedev.read_vip_image(imagedev_data.get_image_path("fibers_score.vip"))
peak_extractor_algo = imagedev.PeakExtractor()
peak_extractor_algo.input_image = fibers_score
peak_extractor_algo.number_of_peaks = 0
peak_extractor_algo.threshold = 4000
peak_extractor_algo.radius = [15, 15, 15]
peak_extractor_algo.method = imagedev.PeakExtractor.FAST
peak_extractor_algo.execute()
print("positionX: ", str(peak_extractor_algo.output_measurement.position_x(0)))
ImageView fibers_score = Data.ReadVipImage( @"Data/images/fibers_score.vip" );
PeakExtractor peakExtractorAlgo = new PeakExtractor
{
inputImage = fibers_score,
numberOfPeaks = 0,
threshold = 4000,
radius = new uint[]{15, 15, 15},
method = PeakExtractor.Method.FAST
};
peakExtractorAlgo.Execute();
Console.WriteLine( "positionX: " + peakExtractorAlgo.outputMeasurement.positionX( 0 ) );
Function Examples
auto fibers_score = readVipImage( std::string( IMAGEDEVDATA_IMAGES_FOLDER ) + "fibers_score.vip" );
auto result = peakExtractor( fibers_score, 0, 4000, {15, 15, 15}, PeakExtractor::Method::FAST );
std::cout << "positionX: " << result->positionX( 0 ) ;
fibers_score = imagedev.read_vip_image(imagedev_data.get_image_path("fibers_score.vip"))
result = imagedev.peak_extractor(fibers_score, 0, 4000, [15, 15, 15], imagedev.PeakExtractor.FAST)
print("positionX: ", str(result.position_x(0)))
ImageView fibers_score = Data.ReadVipImage( @"Data/images/fibers_score.vip" );
PeakExtractorMsr result = Processing.PeakExtractor( fibers_score, 0, 4000, new uint[]{15, 15, 15}, PeakExtractor.Method.FAST );
Console.WriteLine( "positionX: " + result.positionX( 0 ) );

