PICCANTE
0.4
The hottest HDR imaging library!
|
Namespaces | |
miniz | |
pic | |
Typedefs | |
typedef unsigned int | uint |
typedef unsigned char | uchar |
typedef uint * | puint |
typedef uchar * | puchar |
typedef Vec< 3, float > | Color3 |
Color3. More... | |
typedef struct pic::_EXRAttribute | EXRAttribute |
typedef struct pic::_EXRImage | EXRImage |
typedef struct pic::_DeepImage | DeepImage |
typedef std::vector< ImageGL * > | ImageGLVec |
ImageGLVec an std::vector of pic::ImageGL. More... | |
typedef std::vector< Image * > | ImageVec |
ImageVec an std::vector of pic::Image. More... | |
typedef Array< float > | Arrayf |
Arrayf. More... | |
typedef Array< int > | Arrayi |
Arrayi. More... | |
typedef Array< unsigned int > | Arrayui |
Arrayui. More... | |
typedef std::complex< float > | complexf |
complexf More... | |
typedef std::complex< double > | complexd |
complexd More... | |
typedef std::vector< BufferOpGL * > | BufferOperatorsGL |
typedef std::vector< ReduxGL * > | ReduxOperatorsGL |
typedef std::vector< int > | IntCoord |
IntCoord. More... | |
typedef IndexedArray< float > | IndexedArrayf |
typedef IndexedArray< int > | IndexedArrayi |
typedef IndexedArray< unsigned int > | IndexedArrayui |
typedef Polyline< 2, int > | Polyline2i |
Polyline2i. More... | |
typedef std::vector< std::string > | StringVec |
StringVec is an std::vector of std::string. More... | |
typedef Vec< 2, int > | Vec2i |
Vec2i. More... | |
typedef Vec< 3, int > | Vec3i |
Vec3i. More... | |
typedef Vec< 4, int > | Vec4i |
Vec4i. More... | |
typedef Vec< 2, float > | Vec2f |
Vec2f. More... | |
typedef Vec< 3, float > | Vec3f |
Vec3f. More... | |
Functions | |
PIC_INLINE void | bilateralSeparation (Image *imgIn, ImageVec &out, float sigma_s=-1.0f, float sigma_r=0.4f, bool bLogDomain=false) |
bilateralSeparation More... | |
PIC_INLINE Image * | binarization (Image *imgIn, Image *imgOut=NULL, bool bAdaptive=false) |
binarization More... | |
PIC_INLINE bool * | computeColorClassification (Image *img, float *white_pixel, float *color_samples, int nSamples, int nDim, float variance) |
computeColorClassification More... | |
float | LischinskiFunction (float Lcur, float Lref, float param[2], float LISCHINSKI_EPSILON=0.0001f) |
LischinskiFunction. More... | |
float | LischinskiFunctionGauss (float Lcur, float Lref, float param[2]) |
LischinskiFunctionGauss. More... | |
PIC_INLINE Image * | LischinskiMinimization (Image *L, Image *g, Image *omega=NULL, float omega_global=1.0f, Image *gOut=NULL, float alpha=1.0f, float lambda=0.4f, float LISCHINSKI_EPSILON=1e-4f) |
LischinskiMinimization. More... | |
PIC_INLINE float | MitsunagaNayarClassic (int *samples, const std::size_t nSamples, const std::vector< float > &exposures, std::vector< float > &coefficients, const bool computeRatios, std::vector< float > &R, const float eps, const std::size_t max_iterations) |
MitsunagaNayarClassic computes the inverse CRF of a camera as a polynomial function. More... | |
PIC_INLINE float | MitsunagaNayarFull (int *samples, const std::size_t nSamples, const std::vector< float > &exposures, std::vector< float > &coefficients, bool computeRatios, std::vector< std::vector< float >> &R, const float eps, const std::size_t max_iterations) |
MitsunagaNayarFull computes the inverse CRF of a camera as a polynomial function, using all exposure ratios. More... | |
PIC_INLINE Image * | computePoissonImageEditing (Image *source, Image *target, bool *mask, Image *ret=NULL) |
computePoissonImageEditing More... | |
PIC_INLINE Image * | computePoissonSolver (Image *f, Image *ret=NULL) |
computePoissonSolver More... | |
PIC_INLINE Image * | computePoissonSolverIterative (Image *img, Image *laplacian, std::vector< int > coords, int maxSteps=100) |
computePoissonSolverIterative More... | |
PIC_INLINE std::set< int > * | setBorder (Image *img, std::set< int > *coordsBorder) |
setBorder More... | |
PIC_INLINE std::set< int > * | setBorderNth (Image *img, std::set< int > *coordsBorder, int widthBorder) |
setBorderNth More... | |
PIC_INLINE float | weightFunction (float x, CRF_WEIGHT type) |
weightFunction computes weight functions for x in [0,1]. More... | |
template<uint N> | |
void | scaleTau (Vec< N, float > &in, const Vec< N, float > &tau) |
scaleTau More... | |
template<uint N> | |
void | scaleTau (Vec< N, float > &in, const Vec< N, float > &sigma_t, const Vec< N, float > &tau) |
scaleTau More... | |
template<uint N> | |
void | scaleTau (Vec< N, float > &in, const Vec< N, float > &sigma_t, float t) |
scaleTau More... | |
template<uint N> | |
float | colorLuminance (Vec< N, float > &in) |
colorLuminance More... | |
template<uint N> | |
void | colorSaturate (Vec< N, float > &in) |
colorSaturate More... | |
template<uint N> | |
void | importanceSampling (Vec< N, float > &in, float e, int &channel, float &pdf) |
importanceSampling More... | |
template<uint N> | |
Vec< N, float > | convertToLDR (Vec< N, float > &in, float exposure=1.0f, float gammaCor=2.2f, float maxVal=255.0f) |
convertToLDR More... | |
float * | createMatrixFromPrimaries (float *red_XYZ, float *green_XYZ, float *blue_XYZ, float *white_point_XYZ, float *ret=NULL) |
createMatrixFromPrimaries computes a matrix for converting XYZ values into the defined color space (i.e., by defining the three primaries: red, green, and blue). More... | |
PIC_INLINE void | fromFloatToRGBE (float *colFloat, unsigned char *colRGBE) |
fromFloatToRGBE More... | |
PIC_INLINE void | fromSingleFloatToRGBE (float *colFloat, unsigned char *colRGBE) |
fromSingleFloatToRGBE More... | |
PIC_INLINE void | fromRGBEToFloat (unsigned char *colRGBE, float *colFloat) |
fromRGBEToFloat More... | |
PIC_INLINE float | computeSaturation (float *data, int channels=3) |
computeSaturation More... | |
PIC_INLINE Eigen::Vector3d | computeEpipole (Eigen::Matrix3d &F) |
computeEpipole computes the epipole of a fundamental matrix F. More... | |
PIC_INLINE Eigen::Matrix34d | getCameraMatrixFromHomography (Eigen::Matrix3d &H, Eigen::Matrix3d &K) |
getCameraMatrixFromHomography More... | |
PIC_INLINE Eigen::Matrix34d | getCameraMatrixIdentity (Eigen::Matrix3d &K) |
getCameraMatrixIdentity More... | |
PIC_INLINE Eigen::Matrix34d | getCameraMatrix (Eigen::Matrix3d &K, Eigen::Matrix3d &R, Eigen::Vector3d &t) |
getCameraMatrix More... | |
PIC_INLINE void | decomposeCameraMatrix (Eigen::Matrix34d &P, Eigen::Matrix3d &K, Eigen::Matrix3d &R, Eigen::Vector3d &t) |
decomposeCameraMatrix More... | |
PIC_INLINE Eigen::Vector2i | cameraMatrixProject (Eigen::Matrix34d &M, Eigen::Vector4d &p) |
cameraMatrixProject projects a point, p, using the camera matrix, M. More... | |
PIC_INLINE Eigen::Vector2i | cameraMatrixProject (Eigen::Matrix34d &M, Eigen::Vector3d &p) |
cameraMatrixProject projects a point, p, using the camera matrix, M. More... | |
PIC_INLINE Eigen::Vector2i | cameraMatrixProjection (Eigen::Matrix34d &M, Eigen::Vector3d &p, double cx, double cy, double fx, double fy, double lambda) |
cameraMatrixProjection More... | |
PIC_INLINE Eigen::Vector3d | getOpticalCenter (Eigen::Matrix34d &P) |
getOpticalCenter More... | |
PIC_INLINE void | cameraRectify (Eigen::Matrix3d &K0, Eigen::Matrix3d &R0, Eigen::Vector3d &t0, Eigen::Matrix3d &K1, Eigen::Matrix3d &R1, Eigen::Vector3d &t1, Eigen::Matrix34d &P0_out, Eigen::Matrix34d &P1_out, Eigen::Matrix3d &T0, Eigen::Matrix3d &T1) |
cameraRectify More... | |
PIC_INLINE void | cameraRectify (Eigen::Matrix34d &P0_in, Eigen::Matrix34d &P1_in, Eigen::Matrix34d &P0_out, Eigen::Matrix34d &P1_out, Eigen::Matrix3d &T0, Eigen::Matrix3d &T1) |
cameraRectify More... | |
PIC_INLINE Eigen::Matrix3d | computeEssentialMatrix (Eigen::Matrix3d &F, Eigen::Matrix3d &K1, Eigen::Matrix3d &K2) |
computeEssentialMatrix computes the essential matrix, E, from the fundamental matrix, F12, and the two intrics matrices K1 and K2 More... | |
PIC_INLINE Eigen::Matrix3d | computeEssentialMatrix (Eigen::Matrix3d &F, Eigen::Matrix3d &K) |
computeEssentialMatrix computes the essential matrix, E, from the fundamental matrix, F, and a single instrics camera, K. More... | |
PIC_INLINE void | decomposeEssentialMatrix (Eigen::Matrix3d &E, Eigen::Matrix3d &R1, Eigen::Matrix3d &R2, Eigen::Vector3d &t) |
decomposeEssentialMatrix decomposes an essential matrix E. More... | |
PIC_INLINE bool | decomposeEssentialMatrixWithConfiguration (Eigen::Matrix3d &E, Eigen::Matrix3d &K0, Eigen::Matrix3d &K1, std::vector< Eigen::Vector2f > &points0, std::vector< Eigen::Vector2f > &points1, Eigen::Matrix3d &R, Eigen::Vector3d &t) |
decomposeEssentialMatrixWithConfiguration decomposes an essential matrix E. More... | |
PIC_INLINE float | getMinDistance (std::vector< Eigen::Vector2f > &points) |
getMinDistance More... | |
PIC_INLINE float | estimateCheckerBoardSize (std::vector< Eigen::Vector2f > &points) |
estimateCheckerBoardSize More... | |
PIC_INLINE float | estimateCheckerBoardSizeCross (std::vector< Eigen::Vector2f > &points) |
estimateCheckerBoardSizeCross More... | |
PIC_INLINE Image * | getCheckerBoardModel (int checkers_x, int checkers_y, int checkers_size, std::vector< Eigen::Vector2f > &out) |
getCheckerBoardModel More... | |
PIC_INLINE void | findCheckerBoard (Image *img, std::vector< Eigen::Vector2f > &corners_model, int checkerBoardSizeX=4, int checkerBoardSizeY=7) |
findCheckerBoard More... | |
PIC_INLINE float | estimateLengthOfCheckers (std::vector< Eigen::Vector2f > &corners_model, Eigen::Vector2f &p0, Eigen::Vector2f &p1) |
estimateLengthInPixelOfCheckers More... | |
PIC_INLINE Eigen::Vector2f | estimateCoordinatesWhitePointFromCheckerBoard (Image *img, std::vector< Eigen::Vector2f > &corners_model, int checkerBoardSizeX=4, int checkerBoardSizeY=6) |
estimateCoordinatesWhitePointFromCheckerBoard More... | |
PIC_INLINE float * | estimateWhitePointFromCheckerBoard (Image *img, std::vector< Eigen::Vector2f > &corners_model, int checkerBoardSizeX=4, int checkerBoardSizeY=6) |
estimateWhitePointFromCheckerBoard More... | |
PIC_INLINE Eigen::Matrix3d | estimateFundamental (std::vector< Eigen::Vector2f > &points0, std::vector< Eigen::Vector2f > &points1) |
estimateFundamental estimates the foundamental matrix between image 1 to image 2 More... | |
PIC_INLINE Eigen::Matrix3d | estimateFundamentalRansac (std::vector< Eigen::Vector2f > &points0, std::vector< Eigen::Vector2f > &points1, std::vector< unsigned int > &inliers, unsigned int maxIterations=100, double threshold=0.01, unsigned int seed=1) |
estimateFundamentalRansac More... | |
PIC_INLINE Eigen::Matrix3d | estimateFundamentalWithNonLinearRefinement (std::vector< Eigen::Vector2f > &points0, std::vector< Eigen::Vector2f > &points1, std::vector< unsigned int > &inliers, unsigned int maxIterationsRansac=100, double thresholdRansac=0.01, unsigned int seed=1, unsigned int maxIterationsNonLinear=10000, float thresholdNonLinear=1e-4f) |
estimateFundamentalWithNonLinearRefinement More... | |
PIC_INLINE Eigen::Matrix3d | noramalizeFundamentalMatrix (Eigen::Matrix3d F) |
noramalizeFundamentalMatrix More... | |
PIC_INLINE Eigen::Matrix3d | extractFundamentalMatrix (Eigen::Matrix34d &M0, Eigen::Matrix34d &M1, Eigen::VectorXd &e0, Eigen::VectorXd &e1) |
extractFundamentalMatrix More... | |
PIC_INLINE Eigen::Matrix3d | estimateFundamentalFromImages (Image *img0, Image *img1, std::vector< Eigen::Vector2f > &m0, std::vector< Eigen::Vector2f > &m1, std::vector< unsigned int > &inliers) |
estimateFundamentalFromImages More... | |
PIC_INLINE Eigen::Matrix3d | estimateHomography (std::vector< Eigen::Vector2f > &points0, std::vector< Eigen::Vector2f > &points1) |
estimateHomography estimates an homography matrix H between image 1 to image 2 More... | |
PIC_INLINE Eigen::Matrix3d | estimateHomographyRansac (std::vector< Eigen::Vector2f > &points0, std::vector< Eigen::Vector2f > &points1, std::vector< unsigned int > &inliers, unsigned int maxIterations=100, double threshold=4.0, unsigned int seed=1) |
estimateHomographyRansac computes the homography such that: points1 = H * points0 More... | |
PIC_INLINE Eigen::Matrix3d | estimateHomographyWithNonLinearRefinement (std::vector< Eigen::Vector2f > &points0, std::vector< Eigen::Vector2f > &points1, std::vector< unsigned int > &inliers, unsigned int maxIterationsRansac=10000, double thresholdRansac=2.5, unsigned int seedRansac=1, unsigned int maxIterationsNonLinear=10000, float thresholdNonLinear=1e-5f) |
estimateHomographyRansac computes the homography such that: points1 = H * points0 More... | |
Eigen::Matrix3d | getHomographyMatrixFromTwoImage (Image *img0, Image *img1) |
getHomographyMatrixFromTwoImage More... | |
Image * | imageAlignmentWithORB (Image *img0, Image *img1, Image *imgOut) |
imageAlignmentWithORB More... | |
PIC_INLINE double | getFocalLengthFromFOVAngle (double fovy) |
getFocalLengthFromFOVAngle More... | |
PIC_INLINE double | getFOVAngleFromFocalSensor (double f, double x, double y) |
getFOVAngleFromFocalSensor More... | |
PIC_INLINE double | getFocalLengthPixels (double focal_length_mm, double sensor_size_mm, double sensor_size_px) |
getFocalLengthPixels More... | |
PIC_INLINE Eigen::Matrix3d | getIntrinsicsMatrix (double focal_length, double m_x, double m_y, double opitical_center_x, double opitical_center_y) |
getIntrinsicsMatrix More... | |
PIC_INLINE Eigen::Matrix3d | getIntrinsicsMatrix (double focal_length_x, double focal_length_y, double opitical_center_x, double opitical_center_y) |
getIntrinsicsMatrix More... | |
PIC_INLINE Eigen::Vector2d | removeLensDistortion (Eigen::Vector2d &p, double k[5]) |
removeLensDistortion More... | |
PIC_INLINE Eigen::Vector2f | getMeanVector2f (std::vector< Eigen::Vector2f > &p) |
getMean More... | |
PIC_INLINE Eigen::Vector2f | getMedianVector2f (std::vector< Eigen::Vector2f > &p) |
getMedianVector2f More... | |
PIC_INLINE ICP2DTransform | estimateRotatioMatrixAndTranslation (std::vector< Eigen::Vector2f > &p0, std::vector< Eigen::Vector2f > &p1, std::vector< unsigned int *> &p0_descs, std::vector< unsigned int *> &p1_descs, int size_descs, int *ind=NULL) |
estimateRotatioMatrixAndTranslation More... | |
PIC_INLINE float | getErrorPointsList (std::vector< Eigen::Vector2f > &p0, std::vector< Eigen::Vector2f > &p1) |
getErrorPointsList More... | |
PIC_INLINE void | iterativeClosestPoints2D (std::vector< Eigen::Vector2f > &points_pattern, std::vector< Eigen::Vector2f > &points, std::vector< unsigned int *> &points_pattern_descs, std::vector< unsigned int *> &points_descs, int size_descs, int maxIterations=1000) |
iterativeClosestPoints2D More... | |
PIC_INLINE ImageVec * | computeImageRectificationWarp (Image *img0, Image *img1, Eigen::Matrix3d &T0, Eigen::Matrix3d &T1, ImageVec *out, bool bPartial=true) |
computeImageRectificationWarp More... | |
PIC_INLINE ImageVec * | computeImageRectification (Image *img0, Image *img1, Eigen::Matrix34d &M0, Eigen::Matrix34d &M1, ImageVec *out=NULL, bool bPartial=true) |
computeImageRectification this function rectifies two images More... | |
PIC_INLINE ImageVec * | computeImageRectification (Image *img0, Image *img1, Eigen::Matrix3d &K0, Eigen::Matrix3d &R0, Eigen::Vector3d &t0, Eigen::Matrix3d &K1, Eigen::Matrix3d &R1, Eigen::Vector3d &t1, ImageVec *out=NULL, bool bPartial=true) |
computeImageRectification this function rectifies two images More... | |
PIC_INLINE void | alignPanoramicLL (Eigen::Matrix3d &R0, Eigen::Vector3d &t0, Eigen::Matrix3d &R1, Eigen::Vector3d &t1, Eigen::Matrix3d &R01, Eigen::Vector3d &t01) |
alignPanoramicLL More... | |
PIC_INLINE ImageVec * | computeImageRectificationPanoramicLL (Image *img0, Image *img1, Eigen::Matrix3d &R01, Eigen::Vector3d &t01, ImageVec *out=NULL) |
computeImageRectificationPanoramicLL More... | |
PIC_INLINE bool | writeSimplePLY (std::string name, std::vector< Eigen::Vector3d > &points_3d, std::vector< unsigned char > &colors) |
PIC_INLINE Eigen::Vector3d | triangulationLonguetHiggins (Eigen::Vector3d &point_0, Eigen::Vector3d &point_1, Eigen::Matrix3d &R, Eigen::Vector3d &t) |
triangulationLonguetHiggins computes triangulation using Longuet-Higgins equations. More... | |
PIC_INLINE Eigen::Vector4d | triangulationHartleySturm (Eigen::Vector3d &point_0, Eigen::Vector3d &point_1, Eigen::Matrix34d &M0, Eigen::Matrix34d &M1, int maxIter=100) |
triangulationHartl Sturm More... | |
PIC_INLINE void | triangulationPoints (Eigen::Matrix34d &M0, Eigen::Matrix34d &M1, std::vector< Eigen::Vector2f > &m0f, std::vector< Eigen::Vector2f > &m1f, std::vector< Eigen::Vector3d > &points_3d, std::vector< unsigned char > &colors, Image *img0=NULL, Image *img1=NULL, bool bColor=false) |
triangulationPoints More... | |
PIC_INLINE std::vector< int > | SingleInt (int v0) |
SingleInt. More... | |
PIC_INLINE std::vector< int > | TripleInt (int v0, int v1, int v2) |
TripleInt. More... | |
int | LoadEXR (float **out_rgba, int *width, int *height, const char *filename, const char **err) |
int | ParseMultiChannelEXRHeaderFromFile (EXRImage *image, const char *filename, const char **err) |
int | ParseMultiChannelEXRHeaderFromMemory (EXRImage *image, const unsigned char *memory, const char **err) |
int | LoadMultiChannelEXRFromFile (EXRImage *image, const char *filename, const char **err) |
int | LoadMultiChannelEXRFromMemory (EXRImage *image, const unsigned char *memory, const char **err) |
int | SaveMultiChannelEXRToFile (const EXRImage *image, const char *filename, const char **err) |
size_t | SaveMultiChannelEXRToMemory (const EXRImage *image, unsigned char **memory, const char **err) |
int | LoadDeepEXR (DeepImage *out_image, const char *filename, const char **err) |
void | InitEXRImage (EXRImage *exrImage) |
int | FreeEXRImage (EXRImage *exrImage) |
int | ParseEXRHeaderFromMemory (EXRAttribute *customAttributes, int *numCustomAttributes, int *width, int *height, const unsigned char *memory) |
int | LoadEXRFromMemory (float *out_rgba, const unsigned char *memory, const char **err) |
int | SaveDeepEXR (const DeepImage *deepImage, const char *filename, const char **err) |
PIC_INLINE int | getValueBF (BF_TYPE type) |
getValueBF More... | |
PIC_INLINE ImageGLVec | SingleGL (ImageGL *img) |
SingleGL creates a single for filters input. More... | |
PIC_INLINE ImageGLVec | DoubleGL (ImageGL *img1, ImageGL *img2) |
DoubleGL creates a couple for filters input. More... | |
PIC_INLINE ImageGLVec | TripleGL (ImageGL *img1, ImageGL *img2, ImageGL *img3) |
TripleGL creates a triple for filters input. More... | |
PIC_INLINE bool | ImageGLVecCheck (ImageGLVec &imgIn, int minInputImages) |
ImageGLVecCheck. More... | |
PIC_INLINE void | glGetPrintError () |
glGetPrintError More... | |
PIC_INLINE ImageGLVec | getAllExposuresImagesGL (ImageGL *imgIn, float gamma=2.2f) |
getAllExposuresImagesGL converts an HDR image into a stack of LDR images More... | |
PIC_INLINE ImageVec | Single (Image *img) |
Single creates an std::vector which contains img; this is for filters input. More... | |
PIC_INLINE ImageVec | Double (Image *img1, Image *img2) |
Double creates an std::vector which contains img1 and img2; this is for filters input. More... | |
PIC_INLINE ImageVec | Triple (Image *img1, Image *img2, Image *img3) |
Triple creates an std::vector which contains img1, img2, and img3; this is for filters input. More... | |
PIC_INLINE ImageVec | Quad (Image *img1, Image *img2, Image *img3, Image *img4) |
Triple creates an std::vector which contains img1, img2, img3, and img4; this is for filters input. More... | |
PIC_INLINE void | ImaveVecSortByExposureTime (ImageVec &stack) |
ImaveVecSortByExposureTime. More... | |
PIC_INLINE void | ImaveVecGetExposureTimesAsArray (ImageVec &stack, std::vector< float > &output, bool bLog) |
ImaveVecGetExposureTimesAsArray. More... | |
PIC_INLINE bool | ImageVecCheckSimilarType (ImageVec &stack) |
ImageVecCheckSimilarType. More... | |
PIC_INLINE bool | ImageVecCheck (ImageVec &imgIn, int minInputImages) |
ImageVecCheck. More... | |
int | BitmapPadding (int bpp, int width) |
BitmapPadding (SYSTEM: X POS Y POS). More... | |
PIC_INLINE unsigned char * | ReadBMP (std::string nameFile, unsigned char *data, int &width, int &height, int &channels) |
ReadBMP reads an image as .bmp file. More... | |
PIC_INLINE bool | WriteBMP (std::string nameFile, const unsigned char *data, int width, int height, int channels) |
WriteBMP writes an image as a .bmp file. More... | |
unsigned int | twoByteToValue (unsigned char data[2], bool bMotorola) |
twoByteToValue More... | |
unsigned int | fourByteToValue (unsigned char data[4], bool bMotorola) |
fourByteToValue More... | |
bool | checkTag (unsigned char tag[2], unsigned short tag_r, bool bMotorola) |
checkTag More... | |
int | getTagID (unsigned char tag[2], bool bMotorola) |
getTagID More... | |
int | getBytesForComponents (int value) |
getBytesForComponents More... | |
std::string | readString (FILE *file, int length) |
readString More... | |
std::string | readStringFromUChar (unsigned char *data, int length) |
readStringFromUChar More... | |
float | readUnsignedRational (FILE *file, bool bMotorola) |
readUnsignedRational More... | |
bool | readEXIF (std::string name, EXIFInfo &info) |
readEXIF More... | |
PIC_INLINE float * | ReadEXR (std::string nameFile, float *data, int &width, int &height, int &channels) |
PIC_INLINE bool | WriteEXR (std::string nameFile, float *data, int width, int height, int channels=3) |
WriteEXR. More... | |
PIC_INLINE float * | ReadHDR (std::string nameFile, float *data, int &width, int &height) |
ReadHDR reads a .hdr/.pic file. More... | |
PIC_INLINE void | WriteLineHDR (FILE *file, unsigned char *buffer_line, int width) |
WriteLineHDR writes a scanline of an image using RLE and RGBE encoding. More... | |
PIC_INLINE bool | WriteHDR (std::string nameFile, float *data, int width, int height, int channels, float appliedExposure=1.0f, bool bRLE=true) |
WriteHDR writes a .hdr/.pic file. More... | |
PIC_INLINE bool | WriteHDRBlock (std::string nameFile, float *buffer_line, int width, int height, int channels, int blockID, int nBlocks) |
WriteHDRBlock writes a .hdr file. More... | |
PIC_INLINE float | convertFloatEndianess (float value) |
convertFloatEndianess converts a float from little-endian to big-endian or viceversa. More... | |
PIC_INLINE float * | ReadPFM (std::string nameFile, float *data, int &width, int &height, int &channel) |
ReadPFM loads a portable float map from a file. More... | |
PIC_INLINE bool | WritePFM (std::string nameFile, float *data, int width, int height, int channels=3) |
WritePFM writes an HDR image in the portable float map format into a file. More... | |
PIC_INLINE unsigned char * | ReadPGM (std::string nameFile, unsigned char *data, int &width, int &height, int &channels) |
ReadPGM reads an .ppm file. More... | |
PIC_INLINE bool | WritePGM (std::string nameFile, const unsigned char *data, int width, int height, int channels, bool bAscii=false) |
WritePGM writes an .ppm file. More... | |
PIC_INLINE unsigned char * | ReadPPM (std::string nameFile, unsigned char *data, int &width, int &height, int &channels) |
ReadPPM reads an .ppm file. More... | |
PIC_INLINE bool | WritePPM (std::string nameFile, const unsigned char *data, int width, int height, int channels) |
WritePPM writes an .ppm file. More... | |
PIC_INLINE unsigned char * | ReadSTB (std::string nameFile, int &width, int &height, int &channels) |
ReadSTB. More... | |
PIC_INLINE bool | WriteSTB (std::string nameFile, unsigned char *data, int width, int height, int channels=3) |
WriteSTB. More... | |
PIC_INLINE unsigned char * | ReadTGA (std::string nameFile, unsigned char *data, int &width, int &height, int &channels) |
ReadTGA reads an image in the .tga format. More... | |
PIC_INLINE bool | WriteTGA (std::string nameFile, const unsigned char *data, int width, int height, int channels) |
WriteTGA writes an image in the .tga format. More... | |
PIC_INLINE float * | ReadTMP (std::string nameFile, float *data, int &width, int &height, int &channels, int &frames, bool bHeader=true) |
ReadTMP reads a dump temp file. More... | |
PIC_INLINE bool | WriteTMP (std::string nameFile, float *data, int &width, int &height, int &channels, int &frames, bool bHeader=true) |
WriteTMP writes a dump temp file. More... | |
PIC_INLINE float * | ReadVOL (std::string nameFile, float *data, int &width, int &height, int &depth, int &channels) |
ReadVOL. More... | |
PIC_INLINE bool | WriteVOL (std::string nameFile, float *data, int width, int height, int depth, int channels=3) |
WriteVOL. More... | |
PIC_INLINE std::vector< int > | extractCheckerBoardJNI (std::string imageInPath, std::string imageOutPath) |
extractCheckerBoardJNI More... | |
PIC_INLINE std::vector< int > | executeLiveWireMultipleJNI (std::string imageInPath, std::vector< int > controlPoints, bool bDownsample) |
executeLiveWireMultipleJNI More... | |
PIC_INLINE int | applyWhiteBalanceJNI (std::string imageInPath, std::string imageOutPath, int x, int y, bool bRobust=false) |
applyWhiteBalanceJNI More... | |
float | changeDomain (float x, METRICS_DOMAIN type=MD_LIN) |
changeDomain More... | |
PIC_INLINE double | logRMSE (Image *ori, Image *cmp) |
logRMSE computes root mean square error (RMSE) in the log_e domain. More... | |
PIC_INLINE double | mPSNR (Image *ori, Image *cmp, MULTI_EXPOSURE_TYPE type, int minFstop=0, int maxFstop=0) |
mPSNR computes the multiple-exposure peak signal-to-noise ratio (mPSNR) between two images. More... | |
PIC_INLINE double | MAE (Image *ori, Image *cmp, bool bLargeDifferences=false, METRICS_DOMAIN type=MD_LIN) |
MAE computes the mean abosulute errore (MAE) between two images. More... | |
PIC_INLINE float | MaximumError (Image *ori, Image *cmp, bool bLargeDifferences=false) |
MaximumError computes the maximum error between two images. More... | |
PIC_INLINE double | MSE (Image *ori, Image *cmp, bool bLargeDifferences=false, METRICS_DOMAIN type=MD_LIN) |
MSE computes the mean square error (MSE) between two images. More... | |
PIC_INLINE double | MSE (Image *ori, Image *cmp, float gamma=2.2f, float fstop=0.0f, int nBit=8) |
MSE computes the mean square error (MSE) between two HDR images with given exposure and gamma. More... | |
PIC_INLINE double | RMSE (Image *ori, Image *cmp, bool bLargeDifferences=false, METRICS_DOMAIN type=MD_LIN) |
RMSE computes the root mean squared error (RMSE) between two images. More... | |
PIC_INLINE double | PSNR (Image *ori, Image *cmp, double max_value=-1.0, bool bLargeDifferences=false, METRICS_DOMAIN type=MD_LIN) |
PSNR computes the peak signal to noise ratio (PSNR) between two images. More... | |
float | PUEncode (float L) |
PUEncode encodes luminance values in a perceptually uniform space. More... | |
float | PUDecode (float p) |
PUDecode decodes perceptually uniform values into luminance values. More... | |
PIC_INLINE double | RelativeError (Image *ori, Image *cmp, bool bLargeDifferences=false, METRICS_DOMAIN type=MD_LIN) |
RelativeError computes the relative error between two images. More... | |
template<unsigned int N> | |
bool | checkNeighborsBruteForce (std::vector< Vec< N, float > > &samples, Vec< N, float > x, float radius) |
checkNeighborsBruteForce More... | |
template<unsigned int N> | |
void | getBridsonSamples (std::mt19937 *m, float radius, std::vector< float > &samples, int kSamples=30) |
getBridsonSamples More... | |
template<unsigned int N> | |
void | getDartThrowingSamples (std::mt19937 *m, float radius2, int nSamples, std::vector< float > &samples) |
getDartThrowingSamples More... | |
template<unsigned int N> | |
PIC_INLINE void | getMonteCarloSamples (std::mt19937 *m, int nSamples, std::vector< float > &samples) |
getMonteCarloSamples More... | |
template<unsigned int N> | |
PIC_INLINE void | getMonteCarloStratifiedSamples (std::mt19937 *m, int nSamples, std::vector< float > &samples) |
getMonteCarloStratifiedSamples More... | |
template<unsigned int N> | |
PIC_INLINE void | getPatternMethodSamples (int nSamples, std::vector< float > &samples) |
getPatternMethodSampler More... | |
template<unsigned int N> | |
PIC_INLINE void | ConvertVectorToPlus1 (std::vector< RandomSampler< N > > &rsVec, RandomSampler< N+1 > &rsOut) |
PIC_INLINE float | findBestExposureHistogram (Image *img) |
findBestExposureHistogram computes the best exposure value for an image, img, More... | |
PIC_INLINE float | findBestExposureMean (Image *img) |
findBestExposureMean More... | |
PIC_INLINE void | getMinMaxFstops (Image *imgIn, int &minFstop, int &maxFstop) |
getMinMaxFstops computes the minimum and maximum f-stop values of an image. More... | |
PIC_INLINE std::vector< float > | getAllExposuresUniform (Image *imgIn) |
getAllExposuresUniform computes all required exposure values for reconstructing the input image using uniform sampling More... | |
PIC_INLINE std::vector< float > | getAllExposures (Image *imgIn) |
getAllExposures computes all required exposure values for reconstructing the input image using histogram sampling More... | |
PIC_INLINE ImageVec | getAllExposuresImages (Image *imgIn, std::vector< float > &fstops, float gamma=2.2f) |
getAllExposuresImages converts an image into a stack of images. More... | |
PIC_INLINE ImageVec | getAllExposuresImages (Image *imgIn, float gamma=2.2f) |
getAllExposuresImages converts an image into a stack of images. More... | |
PIC_INLINE int | timeGetTime () |
PIC_INLINE void | ConvertRAWtoImages (std::string nameDirectory, std::string format, int width, int height) |
ConvertRAWtoImages converts .RAW into format. More... | |
PIC_INLINE void | ConvertDetect (std::string nameDirectory, std::string format, int width, int height) |
ConvertDetect. More... | |
PIC_INLINE float | estimateAverageLuminance (float shutter_speed, float aperture_value=1.0f, float iso_value=1.0f, float K_value=12.5f) |
estimateAverageLuminance estimates the average luminance of the shot. More... | |
PIC_INLINE bool | checkNormalized (const float *data, int size, float delta=1e-6f) |
checkNormalized checks if data is in [0,1]. More... | |
PIC_INLINE float * | convertLDR2HDR (unsigned char *dataIn, float *dataOut, int size, LDR_type type, float gamma=2.2f) |
convertLDR2HDR converts a buffer of unsigned char into float. More... | |
PIC_INLINE unsigned char * | convertHDR2LDR (const float *dataIn, unsigned char *dataOut, int size, LDR_type type, float gamma=2.2f) |
convertHDR2LDR converts a buffer of float into unsigned char. More... | |
PIC_INLINE Eigen::Matrix34d | readMatrix34dFromFile (std::string nameFile) |
readMatrix34dFromFile More... | |
PIC_INLINE bool | writeMatrix34dToFile (std::string nameFile, Eigen::Matrix34d &mat) |
writeMatrix34dToFile More... | |
PIC_INLINE Eigen::Matrix3d | DiagonalMatrix (Eigen::Vector3d D) |
DiagonalMatrix creates a diagonal matrix. More... | |
PIC_INLINE Eigen::Vector3d | getDiagonalFromMatrix (Eigen::Matrix3d &mat) |
getDiagonalFromMatrix More... | |
PIC_INLINE Eigen::Matrix3d | getSquareMatrix (Eigen::Matrix34d &mat) |
getSquareMatrix More... | |
PIC_INLINE Eigen::Vector3d | getLastColumn (Eigen::Matrix34d &mat) |
getLastColumn More... | |
PIC_INLINE Eigen::Vector3f | addOne (Eigen::Vector2f &x) |
addOne More... | |
PIC_INLINE Eigen::Vector3d | addOne (Eigen::Vector2d &x) |
addOne More... | |
PIC_INLINE Eigen::Vector4d | addOne (Eigen::Vector3d &x) |
addOne More... | |
PIC_INLINE void | printfVet3d (Eigen::Vector3d &x) |
printfVet3d More... | |
PIC_INLINE void | printfMat (Eigen::MatrixXd mat) |
printf More... | |
PIC_INLINE void | printfMat (Eigen::Matrix3f &mat) |
printf More... | |
PIC_INLINE void | printfMat34d (Eigen::Matrix34d &mat) |
printf More... | |
PIC_INLINE void | fprintfMat (Eigen::MatrixXd &mat, std::string name) |
fprintf More... | |
PIC_INLINE void | printfMat (Eigen::Matrix3d &mat) |
printf More... | |
PIC_INLINE Eigen::Matrix3d | getShiftScaleMatrix (Eigen::Vector3f &info) |
getShiftScaleMatrix computes a shifting and scaling matrix More... | |
PIC_INLINE Eigen::Matrix3d | CrossProduct (Eigen::Vector3d &t) |
CrossProduct computes a cross product matrix from a vector. More... | |
PIC_INLINE Eigen::Vector3d | rigidTransform (Eigen::Vector3d &point, Eigen::Matrix3d &R, Eigen::Vector3d &t) |
rigidTransform computes a rigidi transformation in 3D. More... | |
PIC_INLINE Eigen::Matrix3d | RotationMatrixRefinement (Eigen::Matrix3d &R) |
RotationMatrixRefinement. More... | |
PIC_INLINE Matrix3x3 | MatrixConvert (Eigen::Matrix3f &mat) |
MatrixConvert converts a matrix from a Eigen::Matrix3f representation into a Matrix3x3 representation. More... | |
PIC_INLINE Matrix3x3 | MatrixConvert (Eigen::Matrix3d &mat) |
MatrixConvert converts a matrix from a Eigen::Matrix3f representation into a Matrix3x3 representation. More... | |
PIC_INLINE float * | getLinearArrayFromMatrix (Eigen::Matrix3d &mat) |
getLinearArray More... | |
PIC_INLINE float * | getLinearArrayFromMatrix (Eigen::Matrix3f &mat) |
getLinearArray More... | |
PIC_INLINE Eigen::MatrixXf | getMatrixfFromLinearArray (float *array, int rows, int cols) |
getMatrixFromLinearArray More... | |
PIC_INLINE Eigen::MatrixXd | getMatrixdFromLinearArray (float *array, int rows, int cols) |
getMatrixFromLinearArray More... | |
PIC_INLINE Eigen::Matrix3d | getMatrix3dFromLinearArray (float *array) |
getMatrix3dFromLinearArray More... | |
PIC_INLINE Eigen::Matrix3f | MatrixConvert (Matrix3x3 &mat) |
MatrixConvert. More... | |
PIC_INLINE Eigen::Vector3f | ComputeNormalizationTransform (std::vector< Eigen::Vector2f > &points) |
ComputeNormalizationTransform. More... | |
PIC_INLINE Vec2i | convertFromEigenToVec (Eigen::Vector2i &x) |
convertFromEigenToVec More... | |
PIC_INLINE unsigned int | RE (unsigned int x) |
RE. More... | |
PIC_INLINE unsigned int | IM (unsigned int x) |
IM. More... | |
PIC_INLINE float * | DFT1D (float *in, unsigned int n, float *out=NULL) |
DFT1D. More... | |
PIC_INLINE unsigned int | bitReversal (unsigned int n, unsigned int nbit) |
bitReversal More... | |
PIC_INLINE float * | FFTIterative1D (float *in, unsigned int n, float *out=NULL) |
FFTIterative1D. More... | |
PIC_INLINE void | fftTest () |
fftTest More... | |
PIC_INLINE std::string | GLSL_BICUBIC () |
GLSL_BICUBIC returns bicubic sample. More... | |
PIC_INLINE std::string | GLSL_TEXTURE_BICUBIC () |
GLSL_TEXTURE_BICUBIC. More... | |
PIC_INLINE GLuint | generateTexture2DGL (int width, int height, int channels, float *data=NULL, bool mipmap=false) |
generateTexture2DGL More... | |
PIC_INLINE GLuint | generateTextureCubeMapGL (int width, int height, int channels, int frames, float *data=NULL) |
generateTextureCubeMapGL More... | |
PIC_INLINE GLuint | generateTexture3DGL (int width, int height, int channels, int frames, float *data=NULL) |
generateTexture3DGL More... | |
PIC_INLINE GLuint | generateTexture2DArrayGL (int width, int height, int channels, int frames, float *data=NULL) |
generateTexture2DArrayGL More... | |
PIC_INLINE GLuint | generateTexture2DU32GL (int width, int height, int channels, int *data=NULL) |
generateTexture2DU32GL More... | |
void | getModesGL (int channels, int &mode, int &modeInternalFormat) |
getModesGL More... | |
void | getModesHalfGL (int channels, int &mode, int &modeInternalFormat) |
getModesHalfGL More... | |
void | getModesIntegerGL (int channels, int &mode, int &modeInternalFormat) |
getModesIntegerGL More... | |
int | getChannelsFromInternalFormatGL (int internalFormat) |
getChannelsFromInternalFormatGL returns the number of channels given an internal format. More... | |
PIC_INLINE void | getTextureInformationGL (GLuint texture, GLuint target, int &width, int &height, int &frames, int &channels) |
getTextureInformationGL returns width, height and frames values from a texture with target. More... | |
PIC_INLINE GLuint | GenerateMask (int width, int height, bool *buffer=NULL, GLuint tex=0, unsigned char *tmpBuffer=NULL, bool mipmap=false) |
GenerateMask creates an opengl mask (a texture) from a buffer of bool values. More... | |
GLuint | glBeginTimeQuery () |
glBeginTimeQuery More... | |
GLuint64 | glEndTimeQuery (GLuint64 ret) |
glEndTimeQuery More... | |
PIC_INLINE std::string | GLSL_SIMPLE_EXPOSURE_GAMMA () |
GLSL_SIMPLE_EXPOSURE_GAMMA applies a simple gamma correctiona and exposure in a shader. More... | |
PIC_INLINE std::string | GLSL_DRAGO_TMO () |
GLSL_DRAGO_TMO returns Drago et al.'s tone mapping operator. More... | |
template<class Scalar > | |
Scalar | Bilinear (Scalar a, Scalar b, Scalar c, Scalar d, float x, float y) |
Bilinear calculates 2D bilinear interpolation at the point (x,y). More... | |
void | invBilinear (float A, float dx, float dy, float *out) |
invBilinear More... | |
float | Rx (float x) |
Rx evaluates B-spline (cubic). More... | |
float | MitchellNetravali (float x, float B, float C) |
MitchellNetravali. More... | |
float | Bicubic (float x) |
Bicubic. More... | |
float | CatmullRom (float x) |
CatmullRom. More... | |
float | Lanczos (float x, float a) |
Lanczos. More... | |
PIC_INLINE LABEL_IO_EXTENSION | getLabelHDRExtension (std::string nameFile) |
getLabelHDRExtension returns the file label given its file name (for HDR images). More... | |
PIC_INLINE LABEL_IO_EXTENSION | getLabelLDRExtension (std::string nameFile) |
getLabelHDRExtension returns the file label given its file name (for LDR images). More... | |
template<typename T > | |
PIC_INLINE bool | isnan (T value) |
isnan is it a NaN? More... | |
template<typename T > | |
PIC_INLINE bool | isinf (T value) |
isinf is it a Inf value? More... | |
PIC_INLINE bool | equalf (float a, float b) |
equalf checks if two float values are the same or not. More... | |
PIC_INLINE float | getRandombase () |
Randombase returns a number in [0, 1] based on rand(). More... | |
PIC_INLINE float | getRandom (unsigned int n) |
Random returns a number in [0, 2^32 - 1] to a float in [0, 1]. More... | |
PIC_INLINE int | getRandomInt (int n, int a, int b) |
getRandomInt More... | |
PIC_INLINE float | sFunction (float x) |
sFunction evaluates a cubic s-function. More... | |
PIC_INLINE float | sCurve5 (float x) |
sCurve5 evaluates a quintic S-Shape: 6x^5-15x^4+10x^3 More... | |
PIC_INLINE float | square (float x) |
Square applies square function to a value. More... | |
PIC_INLINE float | sqrtf_s (float x) |
sqrtf_s More... | |
template<class T > | |
PIC_INLINE T | Clamp (T x, T a, T b) |
Clamp clamps a value, x, in the bound [a,b]. More... | |
PIC_INLINE long | lround (double x) |
lround rounds double numbers properly. More... | |
PIC_INLINE float | lround (float x) |
lround rounds float numbers properly. More... | |
PIC_INLINE float | lerp (float t, float x0, float x1) |
lerp evaluates linear interpolation More... | |
PIC_INLINE float | SmoothStep (float a, float b, float value) |
SmoothStep smoothes a value from a to b using a cube S-Shape. More... | |
float | Deg2Rad (float deg) |
Deg2Rad converts angles expressed in degrees into angles expressed in radians. More... | |
PIC_INLINE float | Rad2Deg (float rad) |
Rad2Deg converts angles expressed in radians into angles expressed in degrees. More... | |
PIC_INLINE int | log2 (int n) |
log2 computes logarithm in base 2 for integers. More... | |
PIC_INLINE int | pow2 (int n) |
pow2 computes 2^n. More... | |
PIC_INLINE float | log10PlusOne (float x) |
logf10PlusOne computes log10 of a value plus 1. More... | |
PIC_INLINE float | expfMinusOne (float x) |
expMinusOne More... | |
PIC_INLINE float | log10fPlusEpsilon (float x) |
log10fPlusEpsilon More... | |
PIC_INLINE float | powf10fMinusEpsilon (float x) |
powf10fMinusEpsilon More... | |
PIC_INLINE float | log2f (float x) |
log2f logarithm in base 2 for floating point More... | |
PIC_INLINE double | log2 (double x) |
log2 More... | |
PIC_INLINE float | log2fPlusEpsilon (float x) |
log2fPlusEpsilon More... | |
PIC_INLINE float | pow2f (float x) |
pow2f More... | |
PIC_INLINE int | powint (int x, int b) |
powint computes power function for integer values. More... | |
PIC_INLINE void | getRandomPermutation (std::mt19937 &m, unsigned int *perm, unsigned int nPerm, unsigned int n) |
getRandomPermutation computes a random permutation. More... | |
PIC_INLINE float | normalDistribution (float x, float mu=0.0f, float sigma=1.0f) |
normalDistribution More... | |
float | normalCDF (float x, float mu, float sigma) |
normalCDF More... | |
PIC_INLINE float | betaFunction (float A, float B, float step=1e-4) |
betaFunction More... | |
PIC_INLINE float | betaPDFwithBeta (float x, float A, float B, float betaAB) |
betaPDFwithBeta More... | |
PIC_INLINE float | betaPDF (float x, float A, float B) |
betaPDF More... | |
PIC_INLINE float | sigmoid (float x) |
sigmoid More... | |
PIC_INLINE float | sigmoidInv (float x) |
sigmoidInv More... | |
PIC_INLINE float | simple8bitWithGamma (float x) |
simple8bitWithGamma More... | |
float | randU () |
randU computes a random number in [0, 1[ using the classic rand(). More... | |
float | PoissonRadius (int nSamples) |
PoissonRadius estimates the radius of a Poisson-disk like distribution using nSmaples. More... | |
PIC_INLINE void | convertFromEigenToPolyLine (std::vector< Eigen::Vector2i > &in, Polyline2i &out) |
convertFromEigenToPolyLine More... | |
PIC_INLINE void | drawLine (Image *img, Vec2i v0, Vec2i v1, float *color) |
drawLine renders a line (v0, v1) with color into img. More... | |
PIC_INLINE void | drawPoints (Image *img, std::vector< Eigen::Vector2f > &points, float *color) |
drawPoints More... | |
PIC_INLINE void | evaluateGaussian (Image *img, float sigma=-1.0f, bool bNormTerm=false) |
evaluateGaussian renders a Gaussian function which is centred in the image. More... | |
PIC_INLINE void | evaluateSolid (Image *img) |
evaluateSolid renders a centred circle. More... | |
template<class T > | |
void | filterInliers (std::vector< T > &vec, std::vector< unsigned int > &inliers, std::vector< T > &vecOut) |
filterInliers More... | |
template<class T > | |
void | stdVectorClear (std::vector< T *> &vec) |
stdVectorClear More... | |
template<class T > | |
void | stdVectorArrayClear (std::vector< T *> &vec) |
stdVectorArrayClear More... | |
template<class T > | |
void | setToANullVector (std::vector< T * > &vec, unsigned int n) |
setToANullVector More... | |
template<class T > | |
T * | releasePtr (T *data) |
release More... | |
template<class T > | |
T * | delete_s (T *data) |
delete_s More... | |
template<class T > | |
T * | delete_vec_s (T *data) |
delete_vec_s More... | |
std::string | stdStringRep (std::string str, std::string strSub, std::string strRep) |
stdStringRep replaces strSub in str with strRep just once. More... | |
std::string | stdStringRepAll (std::string str, std::string strSub, std::string strRep) |
stdStringRepAll replaces all strSub in str with strRep. More... | |
template<class T > | |
std::string | fromNumberToString (T num) |
fromNumberToString converts a number into a string. More... | |
char | getSeparatorChar (std::string path) |
getSeparatorChar returns the folder separator in path as a char. More... | |
std::string | removeExtension (std::string name) |
RemoveExtension removes the extension of a string. More... | |
std::string | removeLocalPath (std::string name) |
removeLocalPath removes the local path of a string. More... | |
std::string | getFileNameOnly (std::string name) |
getFileNameOnly More... | |
std::string | getExtension (std::string name) |
getExtension gets the extension of a file name. More... | |
std::string | addSuffix (std::string name, std::string suffix) |
addSuffix adds a suffix to a file name. More... | |
std::string | replaceExtension (std::string nameOut, std::string fmtIn, std::string fmtOut) |
replaceExtension changes .format in a file name. More... | |
int | countSubString (std::string str, std::string subStr) |
countSubString counts how many subStr are in str. More... | |
std::string | getLocaDirectory (std::string path) |
getLocaDirectory gets local path. More... | |
std::string | getSeparator (std::string path) |
getSeparator returns the folder separator in path as a string More... | |
std::string | getFolderName (std::string path) |
getFolderName gets the folder name from the path. More... | |
std::string | getFileName (std::string path) |
getFileName gets the file name. More... | |
void | parseStringToStdVector (std::string str, char delim, StringVec *str_vec) |
parseStringToStdVector More... | |
std::string | genBilString (std::string type, float sigma_s, float sigma_r) |
genBilString More... | |
std::string | fromFileToStdString (std::string nameFile) |
fromFileToStdString writes a file into a std::string. More... | |
bool | checkAbsolutePath (std::string path) |
checkAbsolutePath checks if the path is absolute or not. More... | |
char * | fromStdStringToChar (std::string str) |
fromStdStringToChar converts from a std::string to a char*. More... | |
std::string | checkPath (std::string name) |
checkPath More... | |
std::string | adjustPath (std::string nameFile, std::string pathFolder) |
adjustPath modifies the path if it is not global. More... | |
std::string | removeInitialSpaces (char name[]) |
removeInitialSpaces removes spaces at the beginning of a string. More... | |
template<uint N> | |
PIC_INLINE bool | insideVecBBox (const Vec< N, float > &sample) |
insideVecBBox More... | |
template<uint N> | |
PIC_INLINE Vec< N, float > | normalize (Vec< N, float > x) |
template<uint N> | |
PIC_INLINE Vec< N, float > | randomPoint (std::mt19937 *m) |
randomPoint More... | |
template<uint N> | |
void | vecrint (Vec< N, float > &ret) |
template<uint N> | |
PIC_INLINE Vec< N, float > | annulusSampling (std::mt19937 *m, Vec< N, float > center, float radius) |
annulusSampling More... | |
template<uint N> | |
void | vecGamma (Vec< N, float > &ret, float g) |
template<uint N> | |
void | vecSqrt (Vec< N, float > &ret) |
template<uint N> | |
Vec< N, float > | vecValOver (Vec< N, float > &in, float value) |
template<uint N, class T > | |
void | transferFromVecToPlain (std::vector< Vec< N, T > > &in, std::vector< T > &out) |
template<uint N, class T > | |
void | transferFromPlainToVec (std::vector< T > &in, std::vector< Vec< N, T > > &out) |
PIC_INLINE void | warpSquareCircle (float x, float y, float *xo, float *yo) |
warpSquareCircle warps from a square to a circle distribution. More... | |
PIC_INLINE float | warpNormalDistribution (float u0, float u1) |
warpNormalDistribution warps from uniform distribution to a normal distribution More... | |
PIC_INLINE float | warpGaussianDistribution (float u0, float u1, float mu, float sigma) |
warpGaussianDistribution More... | |
Variables | |
const Color3 | RED = Color3(1.0f, 0.0f, 0.0f) |
const Color3 | GREEN = Color3(0.0f, 1.0f, 0.0f) |
const Color3 | BLUE = Color3(0.0f, 0.0f, 1.0f) |
const Color3 | BLACK = Color3(0.0f, 0.0f, 0.0f) |
const Color3 | WHITE = Color3(1.0f, 1.0f, 1.0f) |
const float | mtxRGBtoXYZ [] |
const float | mtxXYZtoRGB [] |
const float | C_SIX_OVER_TWENTY_NINE = 0.20689655172413793103448275862069f |
const float | C_SIX_OVER_TWENTY_NINE_CUBIC = 0.00885645167903563081717167575546f |
const float | C_CIELAB_C1 = 7.787037037037037037037037037037f |
const float | C_CIELAB_C1_INV = 0.12841854934601664684898929845422f |
const float | C_FOUR_OVER_TWENTY_NINE = 0.13793103448275862068965517241379f |
const float | mtxXYZtoLMS [] |
const float | mtxLMStoXYZ [] |
const double | C_SINGULARITY = 1e-6 |
const double | C_LARGE_DIFFERENCES = 1e6 |
const float | C_LARGE_DIFFERENCESf = 1e6f |
float | C_PU_x [256] |
float | C_PU_y [256] |
const int | CONST_DARTTHROWING = 5000 |
const float | C_LOG_NAT_2 = 0.69314718055994530941723212145818f |
const float | C_INV_LOG_NAT_2 = 1.4426950408889634073599246810019f |
const double | C_INV_LOG_NAT_2_D = 1.4426950408889634073599246810019 |
const float | C_EPSILON = 1e-6f |
const float | C_SQRT_2 = 1.4142135623730950488016887242097f |
const float | C_PI_025 = 0.78539816339744830961566084581988f |
const float | C_PI_05 = 1.5707963267948966192313216916398f |
const float | C_PI = 3.1415926535897932384626433832795f |
const float | C_PI_2 = 6.283185307179586476925286766559f |
const float | C_INV_PI_2 = 0.159154943091895335768883763f |
const float | C_PI_4 = 12.566370614359172953850573533118f |
const float | C_INV_PI_4 = 0.07957747154594766788444188168626f |
const float | C_PI_2_2 = 19.739208802178717237668981999752f |
const float | C_INV_PI = 0.31830988618379067153776526745f |
const float | C_ONE_80_OVER_PI = 57.295779513082320876798154814105f |
const float | C_PI_OVER_ONE_80 = 0.017453292519943295769236907685f |
const float | POISSON_RHO = 0.75f |
Note:
typedef Array<float> pic::Arrayf |
Arrayf.
typedef Array<int> pic::Arrayi |
Arrayi.
typedef Array<unsigned int> pic::Arrayui |
Arrayui.
typedef std::vector<BufferOpGL*> pic::BufferOperatorsGL |
typedef Vec<3, float> pic::Color3 |
Color3.
typedef std::complex<double> pic::complexd |
complexd
typedef std::complex<float> pic::complexf |
complexf
typedef struct pic::_DeepImage pic::DeepImage |
typedef struct pic::_EXRAttribute pic::EXRAttribute |
typedef struct pic::_EXRImage pic::EXRImage |
typedef std::vector<ImageGL*> pic::ImageGLVec |
ImageGLVec an std::vector of pic::ImageGL.
typedef std::vector<Image *> pic::ImageVec |
ImageVec an std::vector of pic::Image.
typedef IndexedArray<float> pic::IndexedArrayf |
typedef IndexedArray<int> pic::IndexedArrayi |
typedef IndexedArray<unsigned int> pic::IndexedArrayui |
typedef std::vector<int> pic::IntCoord |
IntCoord.
typedef Polyline<2, int> pic::Polyline2i |
Polyline2i.
typedef uchar* pic::puchar |
typedef uint* pic::puint |
typedef std::vector<ReduxGL*> pic::ReduxOperatorsGL |
typedef std::vector<std::string > pic::StringVec |
StringVec is an std::vector of std::string.
typedef unsigned char pic::uchar |
typedef unsigned int pic::uint |
typedef Vec<2, float> pic::Vec2f |
Vec2f.
typedef Vec<2, int> pic::Vec2i |
Vec2i.
typedef Vec<3, float> pic::Vec3f |
Vec3f.
typedef Vec<3, int> pic::Vec3i |
Vec3i.
typedef Vec<4, int> pic::Vec4i |
Vec4i.
enum pic::BF_TYPE |
enum pic::BOGL |
enum pic::CRF_WEIGHT |
enum pic::GRADIENT_TYPE |
enum pic::HDR_REC_DOMAIN |
enum pic::HDRAlign |
enum pic::IMAGESTORE |
enum pic::IMG_LIN |
enum pic::LDR_type |
enum pic::LUMINANCE_TYPE |
enum pic::METRICS_DOMAIN |
enum pic::RAW_type |
enum pic::REDGL |
enum pic::SAMPLER_TYPE |
enum pic::SIGMOID_MODE |
enum pic::VALUE_SPACE |
PIC_INLINE Eigen::Vector3f pic::addOne | ( | Eigen::Vector2f & | x | ) |
addOne
x |
PIC_INLINE Eigen::Vector3d pic::addOne | ( | Eigen::Vector2d & | x | ) |
addOne
x |
PIC_INLINE Eigen::Vector4d pic::addOne | ( | Eigen::Vector3d & | x | ) |
addOne
x |
|
inline |
addSuffix adds a suffix to a file name.
name | |
suffix |
std::string pic::adjustPath | ( | std::string | nameFile, |
std::string | pathFolder | ||
) |
adjustPath modifies the path if it is not global.
nameFile | |
pathFolder |
PIC_INLINE void pic::alignPanoramicLL | ( | Eigen::Matrix3d & | R0, |
Eigen::Vector3d & | t0, | ||
Eigen::Matrix3d & | R1, | ||
Eigen::Vector3d & | t1, | ||
Eigen::Matrix3d & | R01, | ||
Eigen::Vector3d & | t01 | ||
) |
alignPanoramicLL
R0 | |
t0 | |
R1 | |
t1 | |
R01 | |
t01 |
PIC_INLINE Vec<N, float> pic::annulusSampling | ( | std::mt19937 * | m, |
Vec< N, float > | center, | ||
float | radius | ||
) |
annulusSampling
m | |
center | |
radius |
PIC_INLINE int pic::applyWhiteBalanceJNI | ( | std::string | imageInPath, |
std::string | imageOutPath, | ||
int | x, | ||
int | y, | ||
bool | bRobust = false |
||
) |
applyWhiteBalanceJNI
imageInPath | |
imageOutPath | |
x | |
y | |
bRobust |
PIC_INLINE float pic::betaFunction | ( | float | A, |
float | B, | ||
float | step = 1e-4 |
||
) |
betaFunction
A | |
B |
PIC_INLINE float pic::betaPDF | ( | float | x, |
float | A, | ||
float | B | ||
) |
betaPDF
x | |
A | |
B |
PIC_INLINE float pic::betaPDFwithBeta | ( | float | x, |
float | A, | ||
float | B, | ||
float | betaAB | ||
) |
betaPDFwithBeta
x | |
A | |
B | |
betaAB |
|
inline |
Bicubic.
x |
PIC_INLINE void pic::bilateralSeparation | ( | Image * | imgIn, |
ImageVec & | out, | ||
float | sigma_s = -1.0f , |
||
float | sigma_r = 0.4f , |
||
bool | bLogDomain = false |
||
) |
bilateralSeparation
imgIn | |
out | |
sigma_s | |
sigma_r | |
bLogDomain |
|
inline |
Bilinear calculates 2D bilinear interpolation at the point (x,y).
a | is the NW pixel value. |
b | is the NE pixel value. |
c | is the SW pixel value. |
d | is the SE pixel value. |
x | is the horizontal coordinate. |
y | is the vertical coordinate. |
PIC_INLINE Image* pic::binarization | ( | Image * | imgIn, |
Image * | imgOut = NULL , |
||
bool | bAdaptive = false |
||
) |
binarization
imgIn | |
bAdaptive |
|
inline |
BitmapPadding (SYSTEM: X POS Y POS).
bpp | |
width |
PIC_INLINE unsigned int pic::bitReversal | ( | unsigned int | n, |
unsigned int | nbit | ||
) |
bitReversal
n | |
nbit |
PIC_INLINE Eigen::Vector2i pic::cameraMatrixProject | ( | Eigen::Matrix34d & | M, |
Eigen::Vector4d & | p | ||
) |
cameraMatrixProject projects a point, p, using the camera matrix, M.
M | |
p | is a 3D point encoded in homogenous coordinate (4D vector) |
PIC_INLINE Eigen::Vector2i pic::cameraMatrixProject | ( | Eigen::Matrix34d & | M, |
Eigen::Vector3d & | p | ||
) |
cameraMatrixProject projects a point, p, using the camera matrix, M.
M | |
p | is a 3D point (3D vector) |
PIC_INLINE Eigen::Vector2i pic::cameraMatrixProjection | ( | Eigen::Matrix34d & | M, |
Eigen::Vector3d & | p, | ||
double | cx, | ||
double | cy, | ||
double | fx, | ||
double | fy, | ||
double | lambda | ||
) |
cameraMatrixProjection
M | |
p | |
cx | |
cy | |
fx | |
fy | |
lambda |
PIC_INLINE void pic::cameraRectify | ( | Eigen::Matrix3d & | K0, |
Eigen::Matrix3d & | R0, | ||
Eigen::Vector3d & | t0, | ||
Eigen::Matrix3d & | K1, | ||
Eigen::Matrix3d & | R1, | ||
Eigen::Vector3d & | t1, | ||
Eigen::Matrix34d & | P0_out, | ||
Eigen::Matrix34d & | P1_out, | ||
Eigen::Matrix3d & | T0, | ||
Eigen::Matrix3d & | T1 | ||
) |
cameraRectify
K0 | intrisic matrix of view0 |
R0 | rotation matrix of view0 |
t0 | translation vector of view0 |
K1 | intrisic matrix of view1 |
R1 | rotation matrix of view1 |
t1 | translation vector of view1 |
P0 | new camera matrix of view0 |
P1 | new camera matrix of view1 |
T0 | transformation matrix for view0 |
T1 | transformation matrix for view1 |
PIC_INLINE void pic::cameraRectify | ( | Eigen::Matrix34d & | P0_in, |
Eigen::Matrix34d & | P1_in, | ||
Eigen::Matrix34d & | P0_out, | ||
Eigen::Matrix34d & | P1_out, | ||
Eigen::Matrix3d & | T0, | ||
Eigen::Matrix3d & | T1 | ||
) |
cameraRectify
P0_in | |
P1_in | |
P0_out | |
P1_out | |
T0 | |
T1 |
|
inline |
CatmullRom.
x |
float pic::changeDomain | ( | float | x, |
METRICS_DOMAIN | type = MD_LIN |
||
) |
changeDomain
x | |
type |
|
inline |
checkAbsolutePath checks if the path is absolute or not.
path |
bool pic::checkNeighborsBruteForce | ( | std::vector< Vec< N, float > > & | samples, |
Vec< N, float > | x, | ||
float | radius | ||
) |
checkNeighborsBruteForce
samples | |
x | |
radius |
PIC_INLINE bool pic::checkNormalized | ( | const float * | data, |
int | size, | ||
float | delta = 1e-6f |
||
) |
checkNormalized checks if data is in [0,1].
data | |
size | |
delta |
|
inline |
checkPath
name |
bool pic::checkTag | ( | unsigned char | tag[2], |
unsigned short | tag_r, | ||
bool | bMotorola | ||
) |
checkTag
tag | |
tag_r | |
bMotorola |
PIC_INLINE T pic::Clamp | ( | T | x, |
T | a, | ||
T | b | ||
) |
Clamp clamps a value, x, in the bound [a,b].
x | |
a | |
b |
float pic::colorLuminance | ( | Vec< N, float > & | in | ) |
colorLuminance
in |
void pic::colorSaturate | ( | Vec< N, float > & | in | ) |
colorSaturate
in |
PIC_INLINE bool* pic::computeColorClassification | ( | Image * | img, |
float * | white_pixel, | ||
float * | color_samples, | ||
int | nSamples, | ||
int | nDim, | ||
float | variance | ||
) |
computeColorClassification
img | |
white_pixel | |
color_samples | |
nSamples | |
nDim | |
variance_colors |
PIC_INLINE Eigen::Vector3d pic::computeEpipole | ( | Eigen::Matrix3d & | F | ) |
computeEpipole computes the epipole of a fundamental matrix F.
F | is a fundamental matrix. |
PIC_INLINE Eigen::Matrix3d pic::computeEssentialMatrix | ( | Eigen::Matrix3d & | F, |
Eigen::Matrix3d & | K1, | ||
Eigen::Matrix3d & | K2 | ||
) |
computeEssentialMatrix computes the essential matrix, E, from the fundamental matrix, F12, and the two intrics matrices K1 and K2
F | is the fundamental matrix which maps points from camera 1 into camera 2 |
K1 | is the camera 1 intrics matrix |
K2 | is the camera 2 intrics matrix |
PIC_INLINE Eigen::Matrix3d pic::computeEssentialMatrix | ( | Eigen::Matrix3d & | F, |
Eigen::Matrix3d & | K | ||
) |
computeEssentialMatrix computes the essential matrix, E, from the fundamental matrix, F, and a single instrics camera, K.
F | |
K |
PIC_INLINE ImageVec* pic::computeImageRectification | ( | Image * | img0, |
Image * | img1, | ||
Eigen::Matrix34d & | M0, | ||
Eigen::Matrix34d & | M1, | ||
ImageVec * | out = NULL , |
||
bool | bPartial = true |
||
) |
computeImageRectification this function rectifies two images
img0 | is the first image to rectify |
img1 | is the second image to rectify |
M0 | is the camera matrix (3x4) of img0 |
M1 | is the camera matrix (3x4) of img1 |
out | is the output as an ImageVec with two images; i.e., rectified versions of img0 and img1 |
PIC_INLINE ImageVec* pic::computeImageRectification | ( | Image * | img0, |
Image * | img1, | ||
Eigen::Matrix3d & | K0, | ||
Eigen::Matrix3d & | R0, | ||
Eigen::Vector3d & | t0, | ||
Eigen::Matrix3d & | K1, | ||
Eigen::Matrix3d & | R1, | ||
Eigen::Vector3d & | t1, | ||
ImageVec * | out = NULL , |
||
bool | bPartial = true |
||
) |
computeImageRectification this function rectifies two images
img0 | is the first image to rectify |
img1 | is the second image to rectify |
K0 | is the intrisic matrix of img0 |
R0 | is the rotation matrix of img0 |
t0 | is the translation vector of img0 |
K1 | is the intrisic matrix of im1 |
R1 | is the rotation matrix of img1 |
t1 | is the translation vector of img1 |
out | is the output as an ImageVec with two images; i.e., rectified versions of img0 and img1 |
PIC_INLINE ImageVec* pic::computeImageRectificationPanoramicLL | ( | Image * | img0, |
Image * | img1, | ||
Eigen::Matrix3d & | R01, | ||
Eigen::Vector3d & | t01, | ||
ImageVec * | out = NULL |
||
) |
computeImageRectificationPanoramicLL
img0 | |
img1 | |
R01 | |
t01 | |
out |
PIC_INLINE ImageVec* pic::computeImageRectificationWarp | ( | Image * | img0, |
Image * | img1, | ||
Eigen::Matrix3d & | T0, | ||
Eigen::Matrix3d & | T1, | ||
ImageVec * | out, | ||
bool | bPartial = true |
||
) |
computeImageRectificationWarp
img0 | is the first image to rectify |
img1 | is the second image to rectify |
T0 | is the homography for img0 |
T1 | is the homography for img0 |
out | is the output as an ImageVec with two images; i.e., rectified versions of img0 and img1 |
PIC_INLINE Eigen::Vector3f pic::ComputeNormalizationTransform | ( | std::vector< Eigen::Vector2f > & | points | ) |
ComputeNormalizationTransform.
points |
PIC_INLINE Image* pic::computePoissonImageEditing | ( | Image * | source, |
Image * | target, | ||
bool * | mask, | ||
Image * | ret = NULL |
||
) |
computePoissonImageEditing
source | |
target | |
mask | |
ret |
PIC_INLINE Image* pic::computePoissonSolver | ( | Image * | f, |
Image * | ret = NULL |
||
) |
computePoissonSolver
f | |
ret |
PIC_INLINE Image* pic::computePoissonSolverIterative | ( | Image * | img, |
Image * | laplacian, | ||
std::vector< int > | coords, | ||
int | maxSteps = 100 |
||
) |
computePoissonSolverIterative
img | |
laplacian | |
coords | |
maxSteps |
PIC_INLINE float pic::computeSaturation | ( | float * | data, |
int | channels = 3 |
||
) |
computeSaturation
data | |
channels |
PIC_INLINE void pic::ConvertDetect | ( | std::string | nameDirectory, |
std::string | format, | ||
int | width, | ||
int | height | ||
) |
ConvertDetect.
nameDirectory | |
format | |
width | |
height |
PIC_INLINE float pic::convertFloatEndianess | ( | float | value | ) |
convertFloatEndianess converts a float from little-endian to big-endian or viceversa.
value | is the input float to be converted. |
PIC_INLINE void pic::convertFromEigenToPolyLine | ( | std::vector< Eigen::Vector2i > & | in, |
Polyline2i & | out | ||
) |
convertFromEigenToPolyLine
in | |
out |
PIC_INLINE Vec2i pic::convertFromEigenToVec | ( | Eigen::Vector2i & | x | ) |
convertFromEigenToVec
x |
PIC_INLINE unsigned char* pic::convertHDR2LDR | ( | const float * | dataIn, |
unsigned char * | dataOut, | ||
int | size, | ||
LDR_type | type, | ||
float | gamma = 2.2f |
||
) |
convertHDR2LDR converts a buffer of float into unsigned char.
dataIn | |
dataOut | |
size | |
type | |
gamma |
PIC_INLINE float* pic::convertLDR2HDR | ( | unsigned char * | dataIn, |
float * | dataOut, | ||
int | size, | ||
LDR_type | type, | ||
float | gamma = 2.2f |
||
) |
convertLDR2HDR converts a buffer of unsigned char into float.
dataIn | |
dataOut | |
size | |
type | |
gamma |
PIC_INLINE void pic::ConvertRAWtoImages | ( | std::string | nameDirectory, |
std::string | format, | ||
int | width, | ||
int | height | ||
) |
ConvertRAWtoImages converts .RAW into format.
nameDirectory | |
format | |
width | |
height |
Vec<N, float> pic::convertToLDR | ( | Vec< N, float > & | in, |
float | exposure = 1.0f , |
||
float | gammaCor = 2.2f , |
||
float | maxVal = 255.0f |
||
) |
convertToLDR
in | |
exposure | |
gammaCor | |
maxVal |
PIC_INLINE void pic::ConvertVectorToPlus1 | ( | std::vector< RandomSampler< N > > & | rsVec, |
RandomSampler< N+1 > & | rsOut | ||
) |
|
inline |
countSubString counts how many subStr are in str.
str | is the input string. |
subStr | is the substring to count in str. |
float* pic::createMatrixFromPrimaries | ( | float * | red_XYZ, |
float * | green_XYZ, | ||
float * | blue_XYZ, | ||
float * | white_point_XYZ, | ||
float * | ret = NULL |
||
) |
createMatrixFromPrimaries computes a matrix for converting XYZ values into the defined color space (i.e., by defining the three primaries: red, green, and blue).
red_XYZ | is the XYZ values of the red primary |
green_XYZ | is the XYZ values of the green primary |
blue_XYZ | is the XYZ values of the blue primary |
white_point_XYZ | is the XYZ values of the white point primary |
PIC_INLINE Eigen::Matrix3d pic::CrossProduct | ( | Eigen::Vector3d & | t | ) |
CrossProduct computes a cross product matrix from a vector.
t | a translation vector |
PIC_INLINE void pic::decomposeCameraMatrix | ( | Eigen::Matrix34d & | P, |
Eigen::Matrix3d & | K, | ||
Eigen::Matrix3d & | R, | ||
Eigen::Vector3d & | t | ||
) |
decomposeCameraMatrix
P | |
K | |
R | |
t |
PIC_INLINE void pic::decomposeEssentialMatrix | ( | Eigen::Matrix3d & | E, |
Eigen::Matrix3d & | R1, | ||
Eigen::Matrix3d & | R2, | ||
Eigen::Vector3d & | t | ||
) |
decomposeEssentialMatrix decomposes an essential matrix E.
E | is the essential matrix. Input. Note1: E = S * R Note2: S = [t]_x Note3: there are four possible cases: 1: [R1 | t] 2: [R1 | -t] 3: [R2 | t] 4: [R2 | -t] |
R1 | is one possible rotation matrix. Output. |
R2 | is one possible rotation matrix. Output. |
t | is the translation vector which is not normalized. Output. |
PIC_INLINE bool pic::decomposeEssentialMatrixWithConfiguration | ( | Eigen::Matrix3d & | E, |
Eigen::Matrix3d & | K0, | ||
Eigen::Matrix3d & | K1, | ||
std::vector< Eigen::Vector2f > & | points0, | ||
std::vector< Eigen::Vector2f > & | points1, | ||
Eigen::Matrix3d & | R, | ||
Eigen::Vector3d & | t | ||
) |
decomposeEssentialMatrixWithConfiguration decomposes an essential matrix E.
E | is the essential matrix. |
K0 | |
K1 | |
points0 | |
points1 | |
R | |
t |
|
inline |
Deg2Rad converts angles expressed in degrees into angles expressed in radians.
deg | is a value of an angle expressed in degrees. |
|
inline |
delete_s
data |
|
inline |
delete_vec_s
data |
PIC_INLINE float* pic::DFT1D | ( | float * | in, |
unsigned int | n, | ||
float * | out = NULL |
||
) |
DFT1D.
in | |
n | |
out |
PIC_INLINE Eigen::Matrix3d pic::DiagonalMatrix | ( | Eigen::Vector3d | D | ) |
DiagonalMatrix creates a diagonal matrix.
D | a vector of size 3. |
PIC_INLINE ImageVec pic::Double | ( | Image * | img1, |
Image * | img2 | ||
) |
Double creates an std::vector which contains img1 and img2; this is for filters input.
img1 | is a pointer to a pic::Image |
img2 | is a pointer to a pic::Image |
PIC_INLINE ImageGLVec pic::DoubleGL | ( | ImageGL * | img1, |
ImageGL * | img2 | ||
) |
DoubleGL creates a couple for filters input.
img1 | |
img2 |
PIC_INLINE void pic::drawLine | ( | Image * | img, |
Vec2i | v0, | ||
Vec2i | v1, | ||
float * | color | ||
) |
drawLine renders a line (v0, v1) with color into img.
img | is the image where to render the line (v0, v1). |
v0 | is the first vertex of the line. |
v1 | is the second vertex of the line. |
color | is the color of the line (v0, v1). |
PIC_INLINE void pic::drawPoints | ( | Image * | img, |
std::vector< Eigen::Vector2f > & | points, | ||
float * | color | ||
) |
drawPoints
img | |
points |
PIC_INLINE bool pic::equalf | ( | float | a, |
float | b | ||
) |
equalf checks if two float values are the same or not.
a | is the first value to be checked. |
b | is the second value to be checked. |
PIC_INLINE float pic::estimateAverageLuminance | ( | float | shutter_speed, |
float | aperture_value = 1.0f , |
||
float | iso_value = 1.0f , |
||
float | K_value = 12.5f |
||
) |
estimateAverageLuminance estimates the average luminance of the shot.
shutter_speed | is the shutter speed of the camera |
aperture_value | is the aperture value of the camera |
iso_value | is the ISO value of the camera |
K_value | is a value in [10.6, 13.4] depending on the camera |
PIC_INLINE float pic::estimateCheckerBoardSize | ( | std::vector< Eigen::Vector2f > & | points | ) |
estimateCheckerBoardSize
points |
PIC_INLINE float pic::estimateCheckerBoardSizeCross | ( | std::vector< Eigen::Vector2f > & | points | ) |
estimateCheckerBoardSizeCross
points |
PIC_INLINE Eigen::Vector2f pic::estimateCoordinatesWhitePointFromCheckerBoard | ( | Image * | img, |
std::vector< Eigen::Vector2f > & | corners_model, | ||
int | checkerBoardSizeX = 4 , |
||
int | checkerBoardSizeY = 6 |
||
) |
estimateCoordinatesWhitePointFromCheckerBoard
img | |
corners_model | |
checkerBoardSizeX | |
checkerBoardSizeY |
PIC_INLINE Eigen::Matrix3d pic::estimateFundamental | ( | std::vector< Eigen::Vector2f > & | points0, |
std::vector< Eigen::Vector2f > & | points1 | ||
) |
estimateFundamental estimates the foundamental matrix between image 1 to image 2
points0 | is an array of points computed from image 1. |
points1 | is an array of points computed from image 2. |
PIC_INLINE Eigen::Matrix3d pic::estimateFundamentalFromImages | ( | Image * | img0, |
Image * | img1, | ||
std::vector< Eigen::Vector2f > & | m0, | ||
std::vector< Eigen::Vector2f > & | m1, | ||
std::vector< unsigned int > & | inliers | ||
) |
estimateFundamentalFromImages
img0 | |
img1 |
PIC_INLINE Eigen::Matrix3d pic::estimateFundamentalRansac | ( | std::vector< Eigen::Vector2f > & | points0, |
std::vector< Eigen::Vector2f > & | points1, | ||
std::vector< unsigned int > & | inliers, | ||
unsigned int | maxIterations = 100 , |
||
double | threshold = 0.01 , |
||
unsigned int | seed = 1 |
||
) |
estimateFundamentalRansac
points0 | |
points1 | |
inliers | |
maxIterations |
PIC_INLINE Eigen::Matrix3d pic::estimateFundamentalWithNonLinearRefinement | ( | std::vector< Eigen::Vector2f > & | points0, |
std::vector< Eigen::Vector2f > & | points1, | ||
std::vector< unsigned int > & | inliers, | ||
unsigned int | maxIterationsRansac = 100 , |
||
double | thresholdRansac = 0.01 , |
||
unsigned int | seed = 1 , |
||
unsigned int | maxIterationsNonLinear = 10000 , |
||
float | thresholdNonLinear = 1e-4f |
||
) |
estimateFundamentalWithNonLinearRefinement
F |
PIC_INLINE Eigen::Matrix3d pic::estimateHomography | ( | std::vector< Eigen::Vector2f > & | points0, |
std::vector< Eigen::Vector2f > & | points1 | ||
) |
estimateHomography estimates an homography matrix H between image 1 to image 2
points0 | is an array of points computed from image 1. |
points1 | is an array of points computed from image 2. |
PIC_INLINE Eigen::Matrix3d pic::estimateHomographyRansac | ( | std::vector< Eigen::Vector2f > & | points0, |
std::vector< Eigen::Vector2f > & | points1, | ||
std::vector< unsigned int > & | inliers, | ||
unsigned int | maxIterations = 100 , |
||
double | threshold = 4.0 , |
||
unsigned int | seed = 1 |
||
) |
estimateHomographyRansac computes the homography such that: points1 = H * points0
points0 | |
points1 | |
inliers | |
maxIterations |
PIC_INLINE Eigen::Matrix3d pic::estimateHomographyWithNonLinearRefinement | ( | std::vector< Eigen::Vector2f > & | points0, |
std::vector< Eigen::Vector2f > & | points1, | ||
std::vector< unsigned int > & | inliers, | ||
unsigned int | maxIterationsRansac = 10000 , |
||
double | thresholdRansac = 2.5 , |
||
unsigned int | seedRansac = 1 , |
||
unsigned int | maxIterationsNonLinear = 10000 , |
||
float | thresholdNonLinear = 1e-5f |
||
) |
estimateHomographyRansac computes the homography such that: points1 = H * points0
points0 | |
points1 | |
inliers | |
maxIterations |
PIC_INLINE float pic::estimateLengthOfCheckers | ( | std::vector< Eigen::Vector2f > & | corners_model, |
Eigen::Vector2f & | p0, | ||
Eigen::Vector2f & | p1 | ||
) |
estimateLengthInPixelOfCheckers
corners_model | |
p0 | |
p1 |
PIC_INLINE ICP2DTransform pic::estimateRotatioMatrixAndTranslation | ( | std::vector< Eigen::Vector2f > & | p0, |
std::vector< Eigen::Vector2f > & | p1, | ||
std::vector< unsigned int *> & | p0_descs, | ||
std::vector< unsigned int *> & | p1_descs, | ||
int | size_descs, | ||
int * | ind = NULL |
||
) |
estimateRotatioMatrixAndTranslation
p0 | |
p1 | |
p0_descs | |
p1_descs | |
ind |
PIC_INLINE float* pic::estimateWhitePointFromCheckerBoard | ( | Image * | img, |
std::vector< Eigen::Vector2f > & | corners_model, | ||
int | checkerBoardSizeX = 4 , |
||
int | checkerBoardSizeY = 6 |
||
) |
estimateWhitePointFromCheckerBoard
img | |
corners_model | |
checkerBoardSizeX | |
checkerBoardSizeY |
PIC_INLINE void pic::evaluateGaussian | ( | Image * | img, |
float | sigma = -1.0f , |
||
bool | bNormTerm = false |
||
) |
evaluateGaussian renders a Gaussian function which is centred in the image.
img | is an input image |
sigma | is the standard deviation of the Gaussian function. |
bNormTerm | is a boolean value. If it is true the Gaussian function is normalized, false otherwise. |
PIC_INLINE void pic::evaluateSolid | ( | Image * | img | ) |
evaluateSolid renders a centred circle.
img | is an input image |
PIC_INLINE std::vector< int > pic::executeLiveWireMultipleJNI | ( | std::string | imageInPath, |
std::vector< int > | controlPoints, | ||
bool | bDownsample | ||
) |
executeLiveWireMultipleJNI
imageInPath | |
controPoints | |
bDownsample |
PIC_INLINE float pic::expfMinusOne | ( | float | x | ) |
expMinusOne
x |
PIC_INLINE std::vector<int> pic::extractCheckerBoardJNI | ( | std::string | imageInPath, |
std::string | imageOutPath | ||
) |
extractCheckerBoardJNI
imageInPath | is the path for the input image |
imageOutPath | is the path for the output image |
PIC_INLINE Eigen::Matrix3d pic::extractFundamentalMatrix | ( | Eigen::Matrix34d & | M0, |
Eigen::Matrix34d & | M1, | ||
Eigen::VectorXd & | e0, | ||
Eigen::VectorXd & | e1 | ||
) |
extractFundamentalMatrix
M0 | |
M1 | |
e0 | |
e1 |
PIC_INLINE float* pic::FFTIterative1D | ( | float * | in, |
unsigned int | n, | ||
float * | out = NULL |
||
) |
FFTIterative1D.
in | |
n | |
out |
PIC_INLINE void pic::fftTest | ( | ) |
fftTest
|
inline |
filterInliers
vec | |
inliers | |
vecOut |
PIC_INLINE float pic::findBestExposureHistogram | ( | Image * | img | ) |
findBestExposureHistogram computes the best exposure value for an image, img,
img |
PIC_INLINE float pic::findBestExposureMean | ( | Image * | img | ) |
findBestExposureMean
img |
PIC_INLINE void pic::findCheckerBoard | ( | Image * | img, |
std::vector< Eigen::Vector2f > & | corners_model, | ||
int | checkerBoardSizeX = 4 , |
||
int | checkerBoardSizeY = 7 |
||
) |
findCheckerBoard
img | |
corners_model | |
checkerBoardSizeX | |
checkerBoardSizeY |
unsigned int pic::fourByteToValue | ( | unsigned char | data[4], |
bool | bMotorola | ||
) |
fourByteToValue
data | |
bMotorola |
PIC_INLINE void pic::fprintfMat | ( | Eigen::MatrixXd & | mat, |
std::string | name | ||
) |
fprintf
mat |
|
inline |
|
inline |
fromFileToStdString writes a file into a std::string.
nameFile |
PIC_INLINE void pic::fromFloatToRGBE | ( | float * | colFloat, |
unsigned char * | colRGBE | ||
) |
fromFloatToRGBE
colFloat | |
colRGBE |
|
inline |
fromNumberToString converts a number into a string.
num | is an input number. |
PIC_INLINE void pic::fromRGBEToFloat | ( | unsigned char * | colRGBE, |
float * | colFloat | ||
) |
fromRGBEToFloat
colRGBE | |
colFloat |
PIC_INLINE void pic::fromSingleFloatToRGBE | ( | float * | colFloat, |
unsigned char * | colRGBE | ||
) |
fromSingleFloatToRGBE
colFloat | |
colRGBE |
|
inline |
fromStdStringToChar converts from a std::string to a char*.
str |
|
inline |
genBilString
type | |
sigma_s | |
sigma_r |
PIC_INLINE GLuint pic::GenerateMask | ( | int | width, |
int | height, | ||
bool * | buffer = NULL , |
||
GLuint | tex = 0 , |
||
unsigned char * | tmpBuffer = NULL , |
||
bool | mipmap = false |
||
) |
GenerateMask creates an opengl mask (a texture) from a buffer of bool values.
width | |
height | |
buffer | |
tex | |
tmpBuffer | |
mipmap |
PIC_INLINE GLuint pic::generateTexture2DArrayGL | ( | int | width, |
int | height, | ||
int | channels, | ||
int | frames, | ||
float * | data = NULL |
||
) |
generateTexture2DArrayGL
width | |
height | |
channels | |
frames | |
data |
PIC_INLINE GLuint pic::generateTexture2DGL | ( | int | width, |
int | height, | ||
int | channels, | ||
float * | data = NULL , |
||
bool | mipmap = false |
||
) |
generateTexture2DGL
width | |
height | |
channels | |
data | |
mipmap |
PIC_INLINE GLuint pic::generateTexture2DU32GL | ( | int | width, |
int | height, | ||
int | channels, | ||
int * | data = NULL |
||
) |
generateTexture2DU32GL
width | |
height | |
channels |
PIC_INLINE GLuint pic::generateTexture3DGL | ( | int | width, |
int | height, | ||
int | channels, | ||
int | frames, | ||
float * | data = NULL |
||
) |
generateTexture3DGL
width | |
height | |
channels | |
frames | |
data |
PIC_INLINE GLuint pic::generateTextureCubeMapGL | ( | int | width, |
int | height, | ||
int | channels, | ||
int | frames, | ||
float * | data = NULL |
||
) |
generateTextureCubeMapGL
width | |
height | |
channels | |
frames | |
data |
PIC_INLINE std::vector<float> pic::getAllExposures | ( | Image * | imgIn | ) |
getAllExposures computes all required exposure values for reconstructing the input image using histogram sampling
imgIn | is an input image |
PIC_INLINE ImageVec pic::getAllExposuresImages | ( | Image * | imgIn, |
std::vector< float > & | fstops, | ||
float | gamma = 2.2f |
||
) |
getAllExposuresImages converts an image into a stack of images.
imgIn | is an input image. |
fstops | a vector with fstops. |
gamma | is the gamma correction value for the output stack. |
PIC_INLINE ImageVec pic::getAllExposuresImages | ( | Image * | imgIn, |
float | gamma = 2.2f |
||
) |
getAllExposuresImages converts an image into a stack of images.
imgIn | is an input image. |
gamma | is the gamma correction value for the output stack. |
PIC_INLINE ImageGLVec pic::getAllExposuresImagesGL | ( | ImageGL * | imgIn, |
float | gamma = 2.2f |
||
) |
getAllExposuresImagesGL converts an HDR image into a stack of LDR images
imgIn |
PIC_INLINE std::vector<float> pic::getAllExposuresUniform | ( | Image * | imgIn | ) |
getAllExposuresUniform computes all required exposure values for reconstructing the input image using uniform sampling
imgIn | is an input image |
void pic::getBridsonSamples | ( | std::mt19937 * | m, |
float | radius, | ||
std::vector< float > & | samples, | ||
int | kSamples = 30 |
||
) |
getBridsonSamples
m | |
radius | |
samples | |
kSamples |
int pic::getBytesForComponents | ( | int | value | ) |
getBytesForComponents
value |
PIC_INLINE Eigen::Matrix34d pic::getCameraMatrix | ( | Eigen::Matrix3d & | K, |
Eigen::Matrix3d & | R, | ||
Eigen::Vector3d & | t | ||
) |
getCameraMatrix
K | |
R | |
t |
PIC_INLINE Eigen::Matrix34d pic::getCameraMatrixFromHomography | ( | Eigen::Matrix3d & | H, |
Eigen::Matrix3d & | K | ||
) |
getCameraMatrixFromHomography
H | is 3x3 homography matrix. |
K |
PIC_INLINE Eigen::Matrix34d pic::getCameraMatrixIdentity | ( | Eigen::Matrix3d & | K | ) |
getCameraMatrixIdentity
K |
|
inline |
getChannelsFromInternalFormatGL returns the number of channels given an internal format.
internalFormat | is the OpenGL internal format of a texture. |
PIC_INLINE Image* pic::getCheckerBoardModel | ( | int | checkers_x, |
int | checkers_y, | ||
int | checkers_size, | ||
std::vector< Eigen::Vector2f > & | out | ||
) |
getCheckerBoardModel
chekers_x | |
checkers_y | |
checkers_size | |
out |
void pic::getDartThrowingSamples | ( | std::mt19937 * | m, |
float | radius2, | ||
int | nSamples, | ||
std::vector< float > & | samples | ||
) |
getDartThrowingSamples
m | |
radius2 | |
nSamples | |
samples |
PIC_INLINE Eigen::Vector3d pic::getDiagonalFromMatrix | ( | Eigen::Matrix3d & | mat | ) |
getDiagonalFromMatrix
mat |
PIC_INLINE float pic::getErrorPointsList | ( | std::vector< Eigen::Vector2f > & | p0, |
std::vector< Eigen::Vector2f > & | p1 | ||
) |
getErrorPointsList
p0 | |
p1 |
|
inline |
getExtension gets the extension of a file name.
name |
|
inline |
getFileName gets the file name.
path |
|
inline |
getFileNameOnly
name | is the input name with global/local path and extension |
PIC_INLINE double pic::getFocalLengthFromFOVAngle | ( | double | fovy | ) |
getFocalLengthFromFOVAngle
fovy | is an angle in radians. |
PIC_INLINE double pic::getFocalLengthPixels | ( | double | focal_length_mm, |
double | sensor_size_mm, | ||
double | sensor_size_px | ||
) |
getFocalLengthPixels
focal_length_mm | |
sensor_size_mm | |
sensor_size_px |
|
inline |
getFolderName gets the folder name from the path.
path |
PIC_INLINE double pic::getFOVAngleFromFocalSensor | ( | double | f, |
double | x, | ||
double | y | ||
) |
getFOVAngleFromFocalSensor
f | is the focal length in mm |
x | is the sensor width in mm |
y | is the sensor height in mm |
getHomographyMatrixFromTwoImage
img0 | |
img1 |
PIC_INLINE Eigen::Matrix3d pic::getIntrinsicsMatrix | ( | double | focal_length, |
double | m_x, | ||
double | m_y, | ||
double | opitical_center_x, | ||
double | opitical_center_y | ||
) |
getIntrinsicsMatrix
focal_length | |
m_x | |
m_y | |
opitical_center_x | |
opitical_center_y |
PIC_INLINE Eigen::Matrix3d pic::getIntrinsicsMatrix | ( | double | focal_length_x, |
double | focal_length_y, | ||
double | opitical_center_x, | ||
double | opitical_center_y | ||
) |
getIntrinsicsMatrix
focal_length_x | |
focal_length_y | |
opitical_center_y |
PIC_INLINE LABEL_IO_EXTENSION pic::getLabelHDRExtension | ( | std::string | nameFile | ) |
getLabelHDRExtension returns the file label given its file name (for HDR images).
nameFile | is a file name. |
PIC_INLINE LABEL_IO_EXTENSION pic::getLabelLDRExtension | ( | std::string | nameFile | ) |
getLabelHDRExtension returns the file label given its file name (for LDR images).
nameFile | is a file name. |
PIC_INLINE Eigen::Vector3d pic::getLastColumn | ( | Eigen::Matrix34d & | mat | ) |
getLastColumn
mat |
PIC_INLINE float* pic::getLinearArrayFromMatrix | ( | Eigen::Matrix3d & | mat | ) |
getLinearArray
mat |
PIC_INLINE float* pic::getLinearArrayFromMatrix | ( | Eigen::Matrix3f & | mat | ) |
getLinearArray
mat |
|
inline |
getLocaDirectory gets local path.
path |
PIC_INLINE Eigen::Matrix3d pic::getMatrix3dFromLinearArray | ( | float * | array | ) |
getMatrix3dFromLinearArray
array |
PIC_INLINE Eigen::MatrixXd pic::getMatrixdFromLinearArray | ( | float * | array, |
int | rows, | ||
int | cols | ||
) |
getMatrixFromLinearArray
array | |
rows | |
cols |
PIC_INLINE Eigen::MatrixXf pic::getMatrixfFromLinearArray | ( | float * | array, |
int | rows, | ||
int | cols | ||
) |
getMatrixFromLinearArray
array | |
rows | |
cols |
PIC_INLINE Eigen::Vector2f pic::getMeanVector2f | ( | std::vector< Eigen::Vector2f > & | p | ) |
getMean
p |
PIC_INLINE Eigen::Vector2f pic::getMedianVector2f | ( | std::vector< Eigen::Vector2f > & | p | ) |
getMedianVector2f
p |
PIC_INLINE float pic::getMinDistance | ( | std::vector< Eigen::Vector2f > & | points | ) |
getMinDistance
points |
PIC_INLINE void pic::getMinMaxFstops | ( | Image * | imgIn, |
int & | minFstop, | ||
int & | maxFstop | ||
) |
getMinMaxFstops computes the minimum and maximum f-stop values of an image.
imgIn | is an image. |
minFstop | is the mininum f-stop of imgIn, output. |
maxFstop | is the maximum f-stop of imgIn, output. |
|
inline |
getModesGL
channels | |
mode | |
modeInternalFormat |
|
inline |
getModesHalfGL
channels | |
mode | |
modeInternalFormat |
|
inline |
getModesIntegerGL
channels | |
mode | |
modeInternalFormat |
PIC_INLINE void pic::getMonteCarloSamples | ( | std::mt19937 * | m, |
int | nSamples, | ||
std::vector< float > & | samples | ||
) |
getMonteCarloSamples
m | |
nSamples | |
samples |
PIC_INLINE void pic::getMonteCarloStratifiedSamples | ( | std::mt19937 * | m, |
int | nSamples, | ||
std::vector< float > & | samples | ||
) |
getMonteCarloStratifiedSamples
m | |
nSamples | |
samples |
PIC_INLINE Eigen::Vector3d pic::getOpticalCenter | ( | Eigen::Matrix34d & | P | ) |
getOpticalCenter
P | the camera matrix of a view |
PIC_INLINE void pic::getPatternMethodSamples | ( | int | nSamples, |
std::vector< float > & | samples | ||
) |
getPatternMethodSampler
nSamples | |
samples |
PIC_INLINE float pic::getRandom | ( | unsigned int | n | ) |
Random returns a number in [0, 2^32 - 1] to a float in [0, 1].
n | is a 32-bit unsigned integer number. |
PIC_INLINE float pic::getRandombase | ( | ) |
Randombase returns a number in [0, 1] based on rand().
PIC_INLINE int pic::getRandomInt | ( | int | n, |
int | a, | ||
int | b | ||
) |
getRandomInt
n | |
a | |
b |
PIC_INLINE void pic::getRandomPermutation | ( | std::mt19937 & | m, |
unsigned int * | perm, | ||
unsigned int | nPerm, | ||
unsigned int | n | ||
) |
getRandomPermutation computes a random permutation.
m | is a Mersenne Twister random number generator. |
perm | is the array where to store the permutation. |
nPerm | is the size of perm. |
n | is the number of object to permutate. |
|
inline |
getSeparator returns the folder separator in path as a string
path |
|
inline |
getSeparatorChar returns the folder separator in path as a char.
path |
PIC_INLINE Eigen::Matrix3d pic::getShiftScaleMatrix | ( | Eigen::Vector3f & | info | ) |
getShiftScaleMatrix computes a shifting and scaling matrix
info | is an array with the center (0 and 1) a scaling factor (3) |
PIC_INLINE Eigen::Matrix3d pic::getSquareMatrix | ( | Eigen::Matrix34d & | mat | ) |
getSquareMatrix
mat |
int pic::getTagID | ( | unsigned char | tag[2], |
bool | bMotorola | ||
) |
getTagID
tag | |
bMotorola |
PIC_INLINE void pic::getTextureInformationGL | ( | GLuint | texture, |
GLuint | target, | ||
int & | width, | ||
int & | height, | ||
int & | frames, | ||
int & | channels | ||
) |
getTextureInformationGL returns width, height and frames values from a texture with target.
texture | is the OpenGL texture pointer. |
target | is the OpenGL target of texture. |
width | is the horizontal length in pixel of texture. |
height | is the vertical length in pixel of texture. |
frames | is the number of frames of texture. |
channels | is the number of color channels of texture. |
PIC_INLINE int pic::getValueBF | ( | BF_TYPE | type | ) |
getValueBF
type |
|
inline |
glBeginTimeQuery
|
inline |
glEndTimeQuery
ret |
PIC_INLINE void pic::glGetPrintError | ( | ) |
glGetPrintError
PIC_INLINE std::string pic::GLSL_BICUBIC | ( | ) |
GLSL_BICUBIC returns bicubic sample.
PIC_INLINE std::string pic::GLSL_DRAGO_TMO | ( | ) |
GLSL_DRAGO_TMO returns Drago et al.'s tone mapping operator.
PIC_INLINE std::string pic::GLSL_SIMPLE_EXPOSURE_GAMMA | ( | ) |
GLSL_SIMPLE_EXPOSURE_GAMMA applies a simple gamma correctiona and exposure in a shader.
PIC_INLINE std::string pic::GLSL_TEXTURE_BICUBIC | ( | ) |
GLSL_TEXTURE_BICUBIC.
PIC_INLINE unsigned int pic::IM | ( | unsigned int | x | ) |
IM.
x |
imageAlignmentWithORB
img0 | |
img1 | |
imgOut |
PIC_INLINE bool pic::ImageGLVecCheck | ( | ImageGLVec & | imgIn, |
int | minInputImages | ||
) |
ImageGLVecCheck.
vec | |
minInputImages |
PIC_INLINE bool pic::ImageVecCheck | ( | ImageVec & | imgIn, |
int | minInputImages | ||
) |
ImageVecCheck.
vec | |
minInputImages |
PIC_INLINE bool pic::ImageVecCheckSimilarType | ( | ImageVec & | stack | ) |
ImageVecCheckSimilarType.
stack |
PIC_INLINE void pic::ImaveVecGetExposureTimesAsArray | ( | ImageVec & | stack, |
std::vector< float > & | output, | ||
bool | bLog | ||
) |
ImaveVecGetExposureTimesAsArray.
stack |
PIC_INLINE void pic::ImaveVecSortByExposureTime | ( | ImageVec & | stack | ) |
ImaveVecSortByExposureTime.
stack |
void pic::importanceSampling | ( | Vec< N, float > & | in, |
float | e, | ||
int & | channel, | ||
float & | |||
) |
importanceSampling
in | |
e | |
channel | |
|
inline |
PIC_INLINE bool pic::insideVecBBox | ( | const Vec< N, float > & | sample | ) |
insideVecBBox
sample |
|
inline |
invBilinear
A | |
dx | |
dy | |
out |
PIC_INLINE bool pic::isinf | ( | T | value | ) |
isinf is it a Inf value?
value |
PIC_INLINE bool pic::isnan | ( | T | value | ) |
isnan is it a NaN?
value |
PIC_INLINE void pic::iterativeClosestPoints2D | ( | std::vector< Eigen::Vector2f > & | points_pattern, |
std::vector< Eigen::Vector2f > & | points, | ||
std::vector< unsigned int *> & | points_pattern_descs, | ||
std::vector< unsigned int *> & | points_descs, | ||
int | size_descs, | ||
int | maxIterations = 1000 |
||
) |
iterativeClosestPoints2D
points_pattern | |
points | |
points_pattern_descs | |
points_descs | |
thresholdErr | |
maxIterations |
|
inline |
Lanczos.
x | |
a |
PIC_INLINE float pic::lerp | ( | float | t, |
float | x0, | ||
float | x1 | ||
) |
lerp evaluates linear interpolation
t | is a value in [0.0, 1.0]. |
x0 | is the min value. |
x1 | is the max value. |
|
inline |
LischinskiFunction.
param[0] –> alpha param[1] –> lambda
Lcur | |
Lref | |
param | |
LISCHINSKI_EPSILON |
|
inline |
LischinskiFunctionGauss.
Lcur | |
Lref | |
param |
PIC_INLINE Image* pic::LischinskiMinimization | ( | Image * | L, |
Image * | g, | ||
Image * | omega = NULL , |
||
float | omega_global = 1.0f , |
||
Image * | gOut = NULL , |
||
float | alpha = 1.0f , |
||
float | lambda = 0.4f , |
||
float | LISCHINSKI_EPSILON = 1e-4f |
||
) |
LischinskiMinimization.
L | |
g | |
omega | |
omega_global | |
gOut | |
alpha | |
lambda | |
LISCHINSKI_EPSILON |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
PIC_INLINE float pic::log10fPlusEpsilon | ( | float | x | ) |
log10fPlusEpsilon
x |
PIC_INLINE float pic::log10PlusOne | ( | float | x | ) |
logf10PlusOne computes log10 of a value plus 1.
x | is a value for which the log10 needs to be computed. |
PIC_INLINE int pic::log2 | ( | int | n | ) |
log2 computes logarithm in base 2 for integers.
n | is an integer value. |
PIC_INLINE double pic::log2 | ( | double | x | ) |
log2
x |
PIC_INLINE float pic::log2f | ( | float | x | ) |
log2f logarithm in base 2 for floating point
x |
PIC_INLINE float pic::log2fPlusEpsilon | ( | float | x | ) |
log2fPlusEpsilon
x |
PIC_INLINE double pic::logRMSE | ( | Image * | ori, |
Image * | cmp | ||
) |
logRMSE computes root mean square error (RMSE) in the log_e domain.
ori | is the original image. |
cmp | is the distorted image. |
PIC_INLINE long pic::lround | ( | double | x | ) |
lround rounds double numbers properly.
x | is a scalar. |
PIC_INLINE float pic::lround | ( | float | x | ) |
lround rounds float numbers properly.
x | is a scalar. |
PIC_INLINE double pic::MAE | ( | Image * | ori, |
Image * | cmp, | ||
bool | bLargeDifferences = false , |
||
METRICS_DOMAIN | type = MD_LIN |
||
) |
MAE computes the mean abosulute errore (MAE) between two images.
ori | is the original image. |
cmp | is the distorted image. |
bLargeDifferences,if | true, skips big differences for stability. |
type | is the domain where to compute RMSE (linear, logarithmic, and PU). |
PIC_INLINE Matrix3x3 pic::MatrixConvert | ( | Eigen::Matrix3f & | mat | ) |
PIC_INLINE Matrix3x3 pic::MatrixConvert | ( | Eigen::Matrix3d & | mat | ) |
PIC_INLINE Eigen::Matrix3f pic::MatrixConvert | ( | Matrix3x3 & | mat | ) |
MatrixConvert.
mat |
PIC_INLINE float pic::MaximumError | ( | Image * | ori, |
Image * | cmp, | ||
bool | bLargeDifferences = false |
||
) |
MaximumError computes the maximum error between two images.
ori | is the original image. |
cmp | is the distorted image. |
bLargeDifferences,if | true, skips big differences for stability. |
|
inline |
MitchellNetravali.
x | |
B | |
C |
PIC_INLINE float pic::MitsunagaNayarClassic | ( | int * | samples, |
const std::size_t | nSamples, | ||
const std::vector< float > & | exposures, | ||
std::vector< float > & | coefficients, | ||
const bool | computeRatios, | ||
std::vector< float > & | R, | ||
const float | eps, | ||
const std::size_t | max_iterations | ||
) |
MitsunagaNayarClassic computes the inverse CRF of a camera as a polynomial function.
samples | Sample array of size nSamples x #exposures. |
nSamples | Number of samples, for each exposure. |
exposures | Array of exposure timings (size: #exposures = 'Q' as in the Mitsunaga & Nayar paper). |
coefficients | The output coefficients ('c' in the paper) resulting from the computation. |
computeRatios | false if exact exposures are passed, true to approximate exposure ratios as in the paper. |
R | The output estimated exposure ratios, i.e. R[q1][q2] = 'R_{q1,q2}' as in the book. |
eps | Threshold for stopping the approximation process. |
max_iterations | Maximum number of iterations. |
PIC_INLINE float pic::MitsunagaNayarFull | ( | int * | samples, |
const std::size_t | nSamples, | ||
const std::vector< float > & | exposures, | ||
std::vector< float > & | coefficients, | ||
bool | computeRatios, | ||
std::vector< std::vector< float >> & | R, | ||
const float | eps, | ||
const std::size_t | max_iterations | ||
) |
MitsunagaNayarFull computes the inverse CRF of a camera as a polynomial function, using all exposure ratios.
samples | Sample array of size nSamples x #exposures. |
nSamples | Number of samples, for each exposure. |
exposures | Array of exposure timings (size: #exposures = 'Q' as in the Mitsunaga & Nayar paper). |
coefficients | The output coefficients ('c' in the paper) resulting from the computation. |
computeRatios | false if exact exposures are passed, true to approximate exposure ratios as in the paper. |
R | The output estimated exposure ratios, i.e. R[q1][q2] = 'R_{q1,q2}' as in the book. |
eps | Threshold for stopping the approximation process. |
max_iterations | Maximum number of iterations. |
PIC_INLINE double pic::mPSNR | ( | Image * | ori, |
Image * | cmp, | ||
MULTI_EXPOSURE_TYPE | type, | ||
int | minFstop = 0 , |
||
int | maxFstop = 0 |
||
) |
mPSNR computes the multiple-exposure peak signal-to-noise ratio (mPSNR) between two images.
ori | is the original image. |
cmp | is the distorted image. |
type. | |
minFstop | is the minimum f-stop value of ori. |
maxFstop | is the maximum f-stop value of ori. |
PIC_INLINE double pic::MSE | ( | Image * | ori, |
Image * | cmp, | ||
bool | bLargeDifferences = false , |
||
METRICS_DOMAIN | type = MD_LIN |
||
) |
MSE computes the mean square error (MSE) between two images.
ori | is the original image. |
cmp | is the distorted image. |
bLargeDifferences,if | true, skips big differences for stability. |
type | is the domain where to compute MSE (linear, logarithmic, and PU). |
PIC_INLINE double pic::MSE | ( | Image * | ori, |
Image * | cmp, | ||
float | gamma = 2.2f , |
||
float | fstop = 0.0f , |
||
int | nBit = 8 |
||
) |
MSE computes the mean square error (MSE) between two HDR images with given exposure and gamma.
ori | is the original image. |
cmp | is the distorted image. |
gamma | is the encoding gamma. |
fstop | is the f-stop value of the image. |
nBit | is the number of bits used for the discretization. |
PIC_INLINE Eigen::Matrix3d pic::noramalizeFundamentalMatrix | ( | Eigen::Matrix3d | F | ) |
noramalizeFundamentalMatrix
F |
float pic::normalCDF | ( | float | x, |
float | mu, | ||
float | sigma | ||
) |
normalCDF
x | |
mu | |
sigma |
PIC_INLINE float pic::normalDistribution | ( | float | x, |
float | mu = 0.0f , |
||
float | sigma = 1.0f |
||
) |
normalDistribution
x | |
mu | |
sigma |
PIC_INLINE Vec<N, float> pic::normalize | ( | Vec< N, float > | x | ) |
|
inline |
|
inline |
|
inline |
|
inline |
parseStringToStdVector
str | |
delim | |
str_vec |
|
inline |
PoissonRadius estimates the radius of a Poisson-disk like distribution using nSmaples.
nSamples | is the number of samples to have. |
PIC_INLINE int pic::pow2 | ( | int | n | ) |
pow2 computes 2^n.
n | is a positive exponent. |
PIC_INLINE float pic::pow2f | ( | float | x | ) |
pow2f
x |
PIC_INLINE float pic::powf10fMinusEpsilon | ( | float | x | ) |
powf10fMinusEpsilon
x |
PIC_INLINE int pic::powint | ( | int | x, |
int | b | ||
) |
powint computes power function for integer values.
x | is the base. |
b | is the exponent. |
PIC_INLINE void pic::printfMat | ( | Eigen::MatrixXd | mat | ) |
printf
mat |
PIC_INLINE void pic::printfMat | ( | Eigen::Matrix3f & | mat | ) |
printf
mat |
PIC_INLINE void pic::printfMat | ( | Eigen::Matrix3d & | mat | ) |
printf
mat |
PIC_INLINE void pic::printfMat34d | ( | Eigen::Matrix34d & | mat | ) |
printf
mat |
PIC_INLINE void pic::printfVet3d | ( | Eigen::Vector3d & | x | ) |
printfVet3d
x |
PIC_INLINE double pic::PSNR | ( | Image * | ori, |
Image * | cmp, | ||
double | max_value = -1.0 , |
||
bool | bLargeDifferences = false , |
||
METRICS_DOMAIN | type = MD_LIN |
||
) |
PSNR computes the peak signal to noise ratio (PSNR) between two images.
ori | is the original image. |
cmp | is the distorted image. |
max_value | is the maximum value of the domain of ori and cmp. If ori and comp are normalized 8-bit LDR/SDR images max_value MUST BE 1.0! |
bLargeDifferences,if | true, skips big differences for stability. |
type | is the domain where to compute MSE (linear, logarithmic, and PU). |
float pic::PUDecode | ( | float | p | ) |
PUDecode decodes perceptually uniform values into luminance values.
p | is a perceptually uniform luminance value |
float pic::PUEncode | ( | float | L | ) |
PUEncode encodes luminance values in a perceptually uniform space.
L | is a luminance value in cd/m^2; it works for values in the range [10^-6, 10^10] cd/m^2 |
Triple creates an std::vector which contains img1, img2, img3, and img4; this is for filters input.
img1 | is a pointer to a pic::Image |
img2 | is a pointer to a pic::Image |
img3 | is a pointer to a pic::Image |
img4 | is a pointer to a pic::Image |
PIC_INLINE float pic::Rad2Deg | ( | float | rad | ) |
Rad2Deg converts angles expressed in radians into angles expressed in degrees.
rad | is a value of an angle expressed in radians. |
PIC_INLINE Vec<N, float> pic::randomPoint | ( | std::mt19937 * | m | ) |
randomPoint
m |
|
inline |
randU computes a random number in [0, 1[ using the classic rand().
PIC_INLINE unsigned int pic::RE | ( | unsigned int | x | ) |
RE.
x |
PIC_INLINE unsigned char* pic::ReadBMP | ( | std::string | nameFile, |
unsigned char * | data, | ||
int & | width, | ||
int & | height, | ||
int & | channels | ||
) |
ReadBMP reads an image as .bmp file.
nameFile | |
data | |
width | |
height | |
channels |
bool pic::readEXIF | ( | std::string | name, |
EXIFInfo & | info | ||
) |
readEXIF
name | |
info |
PIC_INLINE float* pic::ReadEXR | ( | std::string | nameFile, |
float * | data, | ||
int & | width, | ||
int & | height, | ||
int & | channels | ||
) |
PIC_INLINE float* pic::ReadHDR | ( | std::string | nameFile, |
float * | data, | ||
int & | width, | ||
int & | height | ||
) |
ReadHDR reads a .hdr/.pic file.
nameFile | |
data | |
width | |
height |
PIC_INLINE Eigen::Matrix34d pic::readMatrix34dFromFile | ( | std::string | nameFile | ) |
readMatrix34dFromFile
nameFile |
PIC_INLINE float* pic::ReadPFM | ( | std::string | nameFile, |
float * | data, | ||
int & | width, | ||
int & | height, | ||
int & | channel | ||
) |
ReadPFM loads a portable float map from a file.
nameFile | |
data | |
width | |
height | |
channel |
PIC_INLINE unsigned char* pic::ReadPGM | ( | std::string | nameFile, |
unsigned char * | data, | ||
int & | width, | ||
int & | height, | ||
int & | channels | ||
) |
ReadPGM reads an .ppm file.
nameFile | |
data | |
width | |
height | |
channels |
PIC_INLINE unsigned char* pic::ReadPPM | ( | std::string | nameFile, |
unsigned char * | data, | ||
int & | width, | ||
int & | height, | ||
int & | channels | ||
) |
ReadPPM reads an .ppm file.
nameFile | |
data | |
width | |
height | |
channels |
PIC_INLINE unsigned char* pic::ReadSTB | ( | std::string | nameFile, |
int & | width, | ||
int & | height, | ||
int & | channels | ||
) |
ReadSTB.
nameFile | |
width | |
height | |
channels |
std::string pic::readString | ( | FILE * | file, |
int | length | ||
) |
readString
file | |
length |
std::string pic::readStringFromUChar | ( | unsigned char * | data, |
int | length | ||
) |
readStringFromUChar
data |
PIC_INLINE unsigned char* pic::ReadTGA | ( | std::string | nameFile, |
unsigned char * | data, | ||
int & | width, | ||
int & | height, | ||
int & | channels | ||
) |
ReadTGA reads an image in the .tga format.
nameFile | |
data | |
width | |
height | |
channels |
PIC_INLINE float* pic::ReadTMP | ( | std::string | nameFile, |
float * | data, | ||
int & | width, | ||
int & | height, | ||
int & | channels, | ||
int & | frames, | ||
bool | bHeader = true |
||
) |
ReadTMP reads a dump temp file.
nameFile | |
data | |
width | |
height | |
channels | |
frames | |
bHeader |
float pic::readUnsignedRational | ( | FILE * | file, |
bool | bMotorola | ||
) |
readUnsignedRational
file | |
bMotorola |
PIC_INLINE float* pic::ReadVOL | ( | std::string | nameFile, |
float * | data, | ||
int & | width, | ||
int & | height, | ||
int & | depth, | ||
int & | channels | ||
) |
ReadVOL.
nameFile | |
data | |
width | |
height | |
depth | |
channels |
PIC_INLINE double pic::RelativeError | ( | Image * | ori, |
Image * | cmp, | ||
bool | bLargeDifferences = false , |
||
METRICS_DOMAIN | type = MD_LIN |
||
) |
RelativeError computes the relative error between two images.
ori | is the original image. |
cmp | is the distorted image. |
bLargeDifferences,if | true, skips big differences for stability. |
type | is the domain where to compute MSE (linear, logarithmic, and PU). |
|
inline |
release
data |
|
inline |
RemoveExtension removes the extension of a string.
name |
|
inline |
removeInitialSpaces removes spaces at the beginning of a string.
name |
PIC_INLINE Eigen::Vector2d pic::removeLensDistortion | ( | Eigen::Vector2d & | p, |
double | k[5] | ||
) |
removeLensDistortion
point | |
K |
|
inline |
removeLocalPath removes the local path of a string.
name |
|
inline |
replaceExtension changes .format in a file name.
nameOut | |
fmtIn | |
fmtOut |
PIC_INLINE Eigen::Vector3d pic::rigidTransform | ( | Eigen::Vector3d & | point, |
Eigen::Matrix3d & | R, | ||
Eigen::Vector3d & | t | ||
) |
rigidTransform computes a rigidi transformation in 3D.
point | is the point to be transformed. |
R | is a rotation matrix 3x3. |
t | is a translation vector. |
PIC_INLINE double pic::RMSE | ( | Image * | ori, |
Image * | cmp, | ||
bool | bLargeDifferences = false , |
||
METRICS_DOMAIN | type = MD_LIN |
||
) |
RMSE computes the root mean squared error (RMSE) between two images.
ori | is the original image. |
cmp | is the distorted image. |
bLargeDifferences,if | true, skips big differences for stability. |
type | is the domain where to compute RMSE (linear, logarithmic, and PU). |
PIC_INLINE Eigen::Matrix3d pic::RotationMatrixRefinement | ( | Eigen::Matrix3d & | R | ) |
RotationMatrixRefinement.
R |
|
inline |
Rx evaluates B-spline (cubic).
x | is the curve parameter in [0, 1]. |
|
inline |
|
inline |
|
inline |
scaleTau
in | |
tau |
void pic::scaleTau | ( | Vec< N, float > & | in, |
const Vec< N, float > & | sigma_t, | ||
const Vec< N, float > & | tau | ||
) |
scaleTau
in | |
sigma_t | |
tau |
void pic::scaleTau | ( | Vec< N, float > & | in, |
const Vec< N, float > & | sigma_t, | ||
float | t | ||
) |
scaleTau
in | |
sigma_t | |
t |
PIC_INLINE float pic::sCurve5 | ( | float | x | ) |
sCurve5 evaluates a quintic S-Shape: 6x^5-15x^4+10x^3
x | is a value in [0.0, 1.0] |
PIC_INLINE std::set<int>* pic::setBorder | ( | Image * | img, |
std::set< int > * | coordsBorder | ||
) |
setBorder
img | |
coordsBorder |
PIC_INLINE std::set<int>* pic::setBorderNth | ( | Image * | img, |
std::set< int > * | coordsBorder, | ||
int | widthBorder | ||
) |
setBorderNth
img | |
coordsBorder | |
widthBorder |
|
inline |
setToANullVector
vec | |
n |
PIC_INLINE float pic::sFunction | ( | float | x | ) |
sFunction evaluates a cubic s-function.
x | is a value in [0.0, 1.0] |
PIC_INLINE float pic::sigmoid | ( | float | x | ) |
sigmoid
x |
PIC_INLINE float pic::sigmoidInv | ( | float | x | ) |
sigmoidInv
x |
PIC_INLINE float pic::simple8bitWithGamma | ( | float | x | ) |
simple8bitWithGamma
x |
PIC_INLINE ImageVec pic::Single | ( | Image * | img | ) |
Single creates an std::vector which contains img; this is for filters input.
img | is a pointer to a pic::Image |
PIC_INLINE ImageGLVec pic::SingleGL | ( | ImageGL * | img | ) |
SingleGL creates a single for filters input.
img |
PIC_INLINE std::vector<int> pic::SingleInt | ( | int | v0 | ) |
SingleInt.
v0 |
PIC_INLINE float pic::SmoothStep | ( | float | a, |
float | b, | ||
float | value | ||
) |
SmoothStep smoothes a value from a to b using a cube S-Shape.
a | is the min value. |
b | is the max value. |
value | is a value in [0.0, 1.0]. |
PIC_INLINE float pic::sqrtf_s | ( | float | x | ) |
sqrtf_s
x |
PIC_INLINE float pic::square | ( | float | x | ) |
Square applies square function to a value.
x | a value. |
|
inline |
stdStringRep replaces strSub in str with strRep just once.
str | is the input string. |
strSub | is the substring to find in str. |
strRep | is the string for replacing strSub. |
|
inline |
stdStringRepAll replaces all strSub in str with strRep.
str | |
strSub | |
strRep |
|
inline |
stdVectorArrayClear
vec |
|
inline |
stdVectorClear
vec |
PIC_INLINE int pic::timeGetTime | ( | ) |
void pic::transferFromPlainToVec | ( | std::vector< T > & | in, |
std::vector< Vec< N, T > > & | out | ||
) |
void pic::transferFromVecToPlain | ( | std::vector< Vec< N, T > > & | in, |
std::vector< T > & | out | ||
) |
PIC_INLINE Eigen::Vector4d pic::triangulationHartleySturm | ( | Eigen::Vector3d & | point_0, |
Eigen::Vector3d & | point_1, | ||
Eigen::Matrix34d & | M0, | ||
Eigen::Matrix34d & | M1, | ||
int | maxIter = 100 |
||
) |
triangulationHartl Sturm
point_0 | |
point_1 | |
R | |
t |
PIC_INLINE Eigen::Vector3d pic::triangulationLonguetHiggins | ( | Eigen::Vector3d & | point_0, |
Eigen::Vector3d & | point_1, | ||
Eigen::Matrix3d & | R, | ||
Eigen::Vector3d & | t | ||
) |
triangulationLonguetHiggins computes triangulation using Longuet-Higgins equations.
point_0 | is the point from the first view that matches point_1 |
point_1 | is the point from the second view that matches point_0 |
R | is the rotation matrix between the two views. |
t | is the translation matrix between the two views. |
PIC_INLINE void pic::triangulationPoints | ( | Eigen::Matrix34d & | M0, |
Eigen::Matrix34d & | M1, | ||
std::vector< Eigen::Vector2f > & | m0f, | ||
std::vector< Eigen::Vector2f > & | m1f, | ||
std::vector< Eigen::Vector3d > & | points_3d, | ||
std::vector< unsigned char > & | colors, | ||
Image * | img0 = NULL , |
||
Image * | img1 = NULL , |
||
bool | bColor = false |
||
) |
triangulationPoints
M0 | |
M1 | |
m0f | |
m1f | |
points_3d | |
colors | |
bColor |
PIC_INLINE ImageVec pic::Triple | ( | Image * | img1, |
Image * | img2, | ||
Image * | img3 | ||
) |
Triple creates an std::vector which contains img1, img2, and img3; this is for filters input.
img1 | is a pointer to a pic::Image |
img2 | is a pointer to a pic::Image |
img3 | is a pointer to a pic::Image |
PIC_INLINE ImageGLVec pic::TripleGL | ( | ImageGL * | img1, |
ImageGL * | img2, | ||
ImageGL * | img3 | ||
) |
TripleGL creates a triple for filters input.
img1 | |
img2 | |
img3 |
PIC_INLINE std::vector<int> pic::TripleInt | ( | int | v0, |
int | v1, | ||
int | v2 | ||
) |
TripleInt.
v0 | |
v1 | |
v2 |
unsigned int pic::twoByteToValue | ( | unsigned char | data[2], |
bool | bMotorola | ||
) |
twoByteToValue
data | |
bMotorola |
void pic::vecGamma | ( | Vec< N, float > & | ret, |
float | g | ||
) |
void pic::vecrint | ( | Vec< N, float > & | ret | ) |
void pic::vecSqrt | ( | Vec< N, float > & | ret | ) |
PIC_INLINE float pic::warpGaussianDistribution | ( | float | u0, |
float | u1, | ||
float | mu, | ||
float | sigma | ||
) |
warpGaussianDistribution
u0 | |
u1 | |
mu | |
sigma |
PIC_INLINE float pic::warpNormalDistribution | ( | float | u0, |
float | u1 | ||
) |
warpNormalDistribution warps from uniform distribution to a normal distribution
u1 | |
u2 |
PIC_INLINE void pic::warpSquareCircle | ( | float | x, |
float | y, | ||
float * | xo, | ||
float * | yo | ||
) |
warpSquareCircle warps from a square to a circle distribution.
x | |
y | |
xo | |
yo |
PIC_INLINE float pic::weightFunction | ( | float | x, |
CRF_WEIGHT | type | ||
) |
weightFunction computes weight functions for x in [0,1].
x | is an input value in [0, 1]. |
type | is the type of the function. |
PIC_INLINE bool pic::WriteBMP | ( | std::string | nameFile, |
const unsigned char * | data, | ||
int | width, | ||
int | height, | ||
int | channels | ||
) |
WriteBMP writes an image as a .bmp file.
nameFile | |
data | |
width | |
height | |
channels |
PIC_INLINE bool pic::WriteEXR | ( | std::string | nameFile, |
float * | data, | ||
int | width, | ||
int | height, | ||
int | channels = 3 |
||
) |
WriteEXR.
nameFile | |
data | |
width | |
height | |
channels |
PIC_INLINE bool pic::WriteHDR | ( | std::string | nameFile, |
float * | data, | ||
int | width, | ||
int | height, | ||
int | channels, | ||
float | appliedExposure = 1.0f , |
||
bool | bRLE = true |
||
) |
WriteHDR writes a .hdr/.pic file.
nameFile | |
data | |
width | |
height | |
channels | |
appliedExposure | |
bRLE |
PIC_INLINE bool pic::WriteHDRBlock | ( | std::string | nameFile, |
float * | buffer_line, | ||
int | width, | ||
int | height, | ||
int | channels, | ||
int | blockID, | ||
int | nBlocks | ||
) |
WriteHDRBlock writes a .hdr file.
nameFile | |
buffer_line | |
width | |
height | |
channels | |
blockID | |
nBlocks |
PIC_INLINE void pic::WriteLineHDR | ( | FILE * | file, |
unsigned char * | buffer_line, | ||
int | width | ||
) |
WriteLineHDR writes a scanline of an image using RLE and RGBE encoding.
file | |
buffer_line | |
width |
PIC_INLINE bool pic::writeMatrix34dToFile | ( | std::string | nameFile, |
Eigen::Matrix34d & | mat | ||
) |
writeMatrix34dToFile
nameFile | |
mat |
PIC_INLINE bool pic::WritePFM | ( | std::string | nameFile, |
float * | data, | ||
int | width, | ||
int | height, | ||
int | channels = 3 |
||
) |
WritePFM writes an HDR image in the portable float map format into a file.
nameFile | |
data | |
width | |
height | |
channels |
PIC_INLINE bool pic::WritePGM | ( | std::string | nameFile, |
const unsigned char * | data, | ||
int | width, | ||
int | height, | ||
int | channels, | ||
bool | bAscii = false |
||
) |
WritePGM writes an .ppm file.
nameFile | |
data | |
width | |
height | |
channels | |
bAscii |
PIC_INLINE bool pic::WritePPM | ( | std::string | nameFile, |
const unsigned char * | data, | ||
int | width, | ||
int | height, | ||
int | channels | ||
) |
WritePPM writes an .ppm file.
nameFile | |
data | |
width | |
height | |
channels |
PIC_INLINE bool pic::writeSimplePLY | ( | std::string | name, |
std::vector< Eigen::Vector3d > & | points_3d, | ||
std::vector< unsigned char > & | colors | ||
) |
PIC_INLINE bool pic::WriteSTB | ( | std::string | nameFile, |
unsigned char * | data, | ||
int | width, | ||
int | height, | ||
int | channels = 3 |
||
) |
WriteSTB.
nameFile | |
data | |
width | |
height | |
channels |
PIC_INLINE bool pic::WriteTGA | ( | std::string | nameFile, |
const unsigned char * | data, | ||
int | width, | ||
int | height, | ||
int | channels | ||
) |
WriteTGA writes an image in the .tga format.
nameFile | |
data | |
width | |
height | |
channels |
PIC_INLINE bool pic::WriteTMP | ( | std::string | nameFile, |
float * | data, | ||
int & | width, | ||
int & | height, | ||
int & | channels, | ||
int & | frames, | ||
bool | bHeader = true |
||
) |
WriteTMP writes a dump temp file.
nameFile | |
data | |
width | |
height | |
channels | |
frames | |
bHeader |
PIC_INLINE bool pic::WriteVOL | ( | std::string | nameFile, |
float * | data, | ||
int | width, | ||
int | height, | ||
int | depth, | ||
int | channels = 3 |
||
) |
WriteVOL.
nameFile | |
data | |
width | |
height | |
depth | |
channels |
const float pic::C_CIELAB_C1 = 7.787037037037037037037037037037f |
const float pic::C_CIELAB_C1_INV = 0.12841854934601664684898929845422f |
const float pic::C_EPSILON = 1e-6f |
const float pic::C_FOUR_OVER_TWENTY_NINE = 0.13793103448275862068965517241379f |
const float pic::C_INV_LOG_NAT_2 = 1.4426950408889634073599246810019f |
const double pic::C_INV_LOG_NAT_2_D = 1.4426950408889634073599246810019 |
const float pic::C_INV_PI = 0.31830988618379067153776526745f |
const float pic::C_INV_PI_2 = 0.159154943091895335768883763f |
const float pic::C_INV_PI_4 = 0.07957747154594766788444188168626f |
const double pic::C_LARGE_DIFFERENCES = 1e6 |
const float pic::C_LARGE_DIFFERENCESf = 1e6f |
const float pic::C_LOG_NAT_2 = 0.69314718055994530941723212145818f |
const float pic::C_ONE_80_OVER_PI = 57.295779513082320876798154814105f |
const float pic::C_PI = 3.1415926535897932384626433832795f |
const float pic::C_PI_025 = 0.78539816339744830961566084581988f |
const float pic::C_PI_05 = 1.5707963267948966192313216916398f |
const float pic::C_PI_2 = 6.283185307179586476925286766559f |
const float pic::C_PI_2_2 = 19.739208802178717237668981999752f |
const float pic::C_PI_4 = 12.566370614359172953850573533118f |
const float pic::C_PI_OVER_ONE_80 = 0.017453292519943295769236907685f |
float pic::C_PU_x[256] |
float pic::C_PU_y[256] |
const double pic::C_SINGULARITY = 1e-6 |
const float pic::C_SIX_OVER_TWENTY_NINE = 0.20689655172413793103448275862069f |
const float pic::C_SIX_OVER_TWENTY_NINE_CUBIC = 0.00885645167903563081717167575546f |
const float pic::C_SQRT_2 = 1.4142135623730950488016887242097f |
const int pic::CONST_DARTTHROWING = 5000 |
const float pic::mtxLMStoXYZ[] |
const float pic::mtxRGBtoXYZ[] |
const float pic::mtxXYZtoLMS[] |
const float pic::mtxXYZtoRGB[] |
const float pic::POISSON_RHO = 0.75f |