CPPxDIC
C++ Digital Image Correlation library for fingertip 3D reconstruction
Loading...
Searching...
No Matches
cppxdic::ROIManager Class Reference

ROIManager class Manages ROI masks and seed points for DIC analysis. More...

#include <roi_manager.h>

Static Public Member Functions

static cv::Mat loadOrCreateROI (const BaseParameters &params, const cv::Mat &reference_image)
 Load or create ROI mask If ROI file doesn't exist, creates a full-image ROI Equivalent to checking and calling draw_ref_roi in Matlab.
 
static cv::Mat loadROIFromMat (const std::string &roi_file)
 Load ROI mask from MAT file.
 
static SeedPoint loadSeedFromMat (const std::string &seed_file)
 Load seed point from MAT file.
 
static SeedPoint loadOrCreateSeed (const BaseParameters &params, const cv::Mat &roi_mask)
 Load or create seed point If seed file doesn't exist, creates a default seed point at ROI center.
 
static std::vector< int > mapPixel2Subset (const std::vector< int > &pixel_coords, int subset_spacing)
 Map pixel coordinates to subset coordinates Equivalent to map_pixel2subset.m.
 
static std::vector< int > mapSubset2Pixel (const std::vector< int > &subset_coords, int subset_spacing)
 Map subset coordinates to pixel coordinates Equivalent to map_subset2pixel.m.
 
static std::vector< int > mapPointCoordinate (const std::vector< int > &point_sw, const cv::Mat &U_mapped, const cv::Mat &V_mapped)
 Map point coordinates using displacement fields Equivalent to map_pointcoordinate.m.
 
static bool loadMatchingResults (const std::string &matching_file, cv::Mat &refmask_REF, cv::Mat &refmask_trial, cv::Mat &U_mapped, cv::Mat &V_mapped, int subset_spacing)
 Load matching results from MAT file Extracts ROI masks and displacement fields from matching file.
 
static cv::Mat createFullROI (const cv::Size &image_size)
 Create default ROI mask (full image)
 
static std::vector< int > findROICenter (const cv::Mat &roi_mask)
 Find center of ROI mask.
 
static cv::Mat ncorrROIToMat (const ncorr::ROI2D &roi)
 Convert ncorr ROI2D to OpenCV Mat.
 
static ncorr::ROI2D matToNcorrROI (const cv::Mat &mask)
 Convert OpenCV Mat to ncorr ROI2D.
 

Detailed Description

ROIManager class Manages ROI masks and seed points for DIC analysis.

Definition at line 22 of file roi_manager.h.

Member Function Documentation

◆ createFullROI()

cv::Mat cppxdic::ROIManager::createFullROI ( const cv::Size &  image_size)
static

Create default ROI mask (full image)

Parameters
image_sizeSize of the image
Returns
Full ROI mask (all 255)

Definition at line 270 of file roi_manager.cpp.

◆ findROICenter()

std::vector< int > cppxdic::ROIManager::findROICenter ( const cv::Mat &  roi_mask)
static

Find center of ROI mask.

Parameters
roi_maskROI mask
Returns
Center coordinates [x, y]

Definition at line 276 of file roi_manager.cpp.

◆ loadMatchingResults()

bool cppxdic::ROIManager::loadMatchingResults ( const std::string &  matching_file,
cv::Mat &  refmask_REF,
cv::Mat &  refmask_trial,
cv::Mat &  U_mapped,
cv::Mat &  V_mapped,
int  subset_spacing 
)
static

Load matching results from MAT file Extracts ROI masks and displacement fields from matching file.

Parameters
matching_filePath to matching MAT file
refmask_REFOutput: reference ROI mask
refmask_trialOutput: trial ROI mask
U_mappedOutput: U displacement field
V_mappedOutput: V displacement field
Returns
Success status

Definition at line 199 of file roi_manager.cpp.

◆ loadOrCreateROI()

cv::Mat cppxdic::ROIManager::loadOrCreateROI ( const BaseParameters &  params,
const cv::Mat &  reference_image 
)
static

Load or create ROI mask If ROI file doesn't exist, creates a full-image ROI Equivalent to checking and calling draw_ref_roi in Matlab.

Parameters
paramsBase parameters containing file paths
reference_imageReference image for ROI creation
Returns
ROI mask as cv::Mat (uint8, non-zero = inside ROI)

Definition at line 20 of file roi_manager.cpp.

◆ loadOrCreateSeed()

SeedPoint cppxdic::ROIManager::loadOrCreateSeed ( const BaseParameters &  params,
const cv::Mat &  roi_mask 
)
static

Load or create seed point If seed file doesn't exist, creates a default seed point at ROI center.

Parameters
paramsBase parameters containing file paths
roi_maskROI mask
Returns
Seed point structure

Definition at line 132 of file roi_manager.cpp.

◆ loadROIFromMat()

cv::Mat cppxdic::ROIManager::loadROIFromMat ( const std::string &  roi_file)
static

Load ROI mask from MAT file.

Parameters
roi_filePath to ROI MAT file
Returns
ROI mask

Definition at line 31 of file roi_manager.cpp.

◆ loadSeedFromMat()

SeedPoint cppxdic::ROIManager::loadSeedFromMat ( const std::string &  seed_file)
static

Load seed point from MAT file.

Parameters
seed_filePath to seed MAT file
Returns
Seed point coordinates [x, y] in pixel world

Definition at line 81 of file roi_manager.cpp.

◆ mapPixel2Subset()

std::vector< int > cppxdic::ROIManager::mapPixel2Subset ( const std::vector< int > &  pixel_coords,
int  subset_spacing 
)
static

Map pixel coordinates to subset coordinates Equivalent to map_pixel2subset.m.

Parameters
pixel_coordsPixel world coordinates [x, y]
subset_spacingSubset spacing parameter
Returns
Subset world coordinates [x, y]

Definition at line 149 of file roi_manager.cpp.

◆ mapPointCoordinate()

std::vector< int > cppxdic::ROIManager::mapPointCoordinate ( const std::vector< int > &  point_sw,
const cv::Mat &  U_mapped,
const cv::Mat &  V_mapped 
)
static

Map point coordinates using displacement fields Equivalent to map_pointcoordinate.m.

Parameters
point_swPoint in subset world coordinates
U_mappedU displacement field (normalized by subset_spacing+1)
V_mappedV displacement field (normalized by subset_spacing+1)
Returns
Mapped point in subset world coordinates

Definition at line 170 of file roi_manager.cpp.

◆ mapSubset2Pixel()

std::vector< int > cppxdic::ROIManager::mapSubset2Pixel ( const std::vector< int > &  subset_coords,
int  subset_spacing 
)
static

Map subset coordinates to pixel coordinates Equivalent to map_subset2pixel.m.

Parameters
subset_coordsSubset world coordinates [x, y]
subset_spacingSubset spacing parameter
Returns
Pixel world coordinates [x, y]

Definition at line 161 of file roi_manager.cpp.

◆ matToNcorrROI()

ncorr::ROI2D cppxdic::ROIManager::matToNcorrROI ( const cv::Mat &  mask)
static

Convert OpenCV Mat to ncorr ROI2D.

Parameters
maskOpenCV Mat mask
Returns
ncorr ROI2D object

Definition at line 297 of file roi_manager.cpp.

◆ ncorrROIToMat()

cv::Mat cppxdic::ROIManager::ncorrROIToMat ( const ncorr::ROI2D &  roi)
static

Convert ncorr ROI2D to OpenCV Mat.

Parameters
roincorr ROI2D object
Returns
OpenCV Mat representation

Definition at line 281 of file roi_manager.cpp.


The documentation for this class was generated from the following files: