HLS第二十三课(xfopencv计算类函数)

Absolute Difference

template<int SRC_T, int ROWS, int COLS, int NPC=1>
void absdiff(
	xf::Mat<int SRC_T, int ROWS, int COLS, int NPC> src1,
	xf::Mat<int SRC_T, int ROWS, int COLS, int NPC> src2,
	xf::Mat<int SRC_T, int ROWS, int COLS, int NPC> dst )

按像素求差,然后存入一个新图像。
支持的SRC_T包括XF_8UC1 and XF_8UC3。
支持的NPPC包括XF_NPPC1 and XF_NPPC8。

++++++++++++++++++++++++++++++
Accumulate

template<int SRC_T, int DST_T, int ROWS, int COLS, int NPC=1>
void accumulate (
	xf::Mat<int SRC_T, int ROWS, int COLS, int NPC> src1,
	xf::Mat<int SRC_T, int ROWS, int COLS, int NPC> src2,
	xf::Mat<int DST_T, int ROWS, int COLS, int NPC> dst )

按像素求和,然后存入一个新图像。
支持的SRC_T包括XF_8UC1 and XF_8UC3。
支持的DST_T包括XF_16UC1 and XF_16UC3。
支持的NPPC包括XF_NPPC1 and XF_NPPC8。

++++++++++++++++++++++++++++++++
Accumulate Squared

template<int SRC_T, int DST_T, int ROWS, int COLS, int NPC=1>
void accumulateSquare (
	xf::Mat<int SRC_T, int ROWS, int COLS, int NPC> src1,
	xf::Mat<int SRC_T, int ROWS, int COLS, int NPC> src2,
	xf::Mat<int DST_T, int ROWS, int COLS, int NPC> dst)

支持的SRC_T包括XF_8UC1 and XF_8UC3。
支持的DST_T包括XF_16UC1 and XF_16UC3。
支持的NPPC包括XF_NPPC1 and XF_NPPC8。

+++++++++++++++++++++++++++++++++
Accumulate Weighted

template<int SRC_T, int DST_T, int ROWS, int COLS, int NPC=1>
void accumulateWeighted (
	xf::Mat<int SRC_T, int ROWS, int COLS, int NPC> src1,
	xf::Mat<int SRC_T, int ROWS, int COLS, int NPC> src2,
	xf::Mat<int DST_T, int ROWS, int COLS, int NPC> dst,
	float alpha )

支持的SRC_T包括XF_8UC1 and XF_8UC3。
支持的DST_T包括XF_16UC1 and XF_16UC3。
支持的NPPC包括XF_NPPC1 and XF_NPPC8。

++++++++++++++++++++++++++++++++
Bitwise AND
Bitwise NOT
Bitwise OR
Bitwise XOR

template<int SRC_T, int ROWS, int COLS, int NPC=1>
void bitwise_and (
	xf::Mat<int SRC_T, int ROWS, int COLS, int NPC> src1,
	xf::Mat<int SRC_T, int ROWS, int COLS, int NPC> src2,
	xf::Mat<int SRC_T, int ROWS, int COLS, int NPC> dst )


template<int SRC_T, int ROWS, int COLS, int NPC=1>
void bitwise_not (
	xf::Mat<int SRC_T, int ROWS, int COLS, int NPC> src,
	xf::Mat<int SRC_T, int ROWS, int COLS, int NPC> dst )


template<int SRC_T, int ROWS, int COLS, int NPC=1>
void bitwise_or (
	xf::Mat<int SRC_T, int ROWS, int COLS, int NPC> src1,
	xf::Mat<int SRC_T, int ROWS, int COLS, int NPC> src2,
	xf::Mat<int SRC_T, int ROWS, int COLS, int NPC> dst )

template<int SRC_T, int ROWS, int COLS, int NPC=1>
void bitwise_xor(
	xf::Mat<int SRC_T, int ROWS, int COLS, int NPC> src1,
	xf::Mat<int SRC_T, int ROWS, int COLS, int NPC> src2,
	xf::Mat<int SRC_T, int ROWS, int COLS, int NPC> dst )	

支持的SRC_T包括XF_8UC1 and XF_8UC3。
支持的DST_T包括XF_16UC1 and XF_16UC3。
支持的NPPC包括XF_NPPC1 and XF_NPPC8。

+++++++++++++++++++++++++++++++++++++++++++++++
Gradient Magnitude
Gradient Phase

template< int NORM_TYPE ,int SRC_T,int DST_T, int ROWS, int COLS,int NPC=1>
void magnitude(
	xf::Mat<SRC_T, ROWS, COLS, NPC> & _src_matx,
	xf::Mat<DST_T, ROWS, COLS, NPC> & _src_maty,
	xf::Mat<DST_T, ROWS, COLS, NPC> & _dst_mat)


template<int RET_TYPE ,int SRC_T,int DST_T, int ROWS, int COLS,int NPC=1 >
void phase(
	xf::Mat<SRC_T, ROWS, COLS, NPC> & _src_matx,
	xf::Mat<DST_T, ROWS, COLS, NPC> & _src_maty,
	xf::Mat<DST_T, ROWS, COLS, NPC> & _dst_mat)

Normalization type can be either L1 or L2 norm. Values are XF_L1NORM or XF_L2NORM。
Output format can be either in radians or degrees. Options are XF_RADIANS or XF_DEGREES.

支持的SRC_T包括XF_16SC1 。
支持的DST_T包括XF_16SC1 。
支持的NPPC包括XF_NPPC1 and XF_NPPC8。

++++++++++++++++++++++++++++++++++++++++++
Integral Image

计算二维左区间累加和。
即左上角图片的区域累加和。

template<int SRC_TYPE,int DST_TYPE, int ROWS, int COLS, int NPC=1>
void integral(
	xf::Mat<SRC_TYPE, ROWS, COLS, NPC> & _src_mat,
	xf::Mat<DST_TYPE, ROWS, COLS, NPC> & _dst_mat)

支持的SRC_T包括XF_8UC1。
支持的DST_T包括XF_32UC1。
支持的NPPC包括XF_NPPC1。

+++++++++++++++++++++++++++++++++++++++
Inverse (Reciprocal)

unsigned int Inverse(unsigned short x,int M,char *N)

计算一个定点数的倒数。
++++++++++++++++++++++++++++++++++++++
Pixel-Wise Addition

template<int POLICY_TYPE, int SRC_T, int ROWS, int COLS, int NPC=1>
void add (
	xf::Mat<int SRC_T, int ROWS, int COLS, int NPC> src1,
	xf::Mat<int SRC_T, int ROWS, int COLS, int NPC> src2,
	xf::Mat<int SRC_T, int ROWS, int COLS, int NPC> dst )

XF_CONVERT_POLICY_TRUNCATE: Results are the least significant bits of the output operand,
as if stored in two’s complement binary format in the size of its bit-depth.
XF_CONVERT_POLICY_SATURATE: Results are saturated to the bit depth of the output
operand.
支持的SRC_T包括XF_8UC1 and XF_8UC3。
支持的DST_T包括XF_32UC1 and XF_8UC3。
支持的NPPC包括XF_NPPC1 and XF_NPPC8。
+++++++++++++++++++++++++++++++++++++++
Pixel-Wise Multiplication

template<int POLICY_TYPE, int SRC_T,int ROWS, int COLS, int NPC=1>
void multiply (
	xf::Mat<int SRC_T, int ROWS, int COLS, int NPC> src1,
	xf::Mat<int SRC_T, int ROWS, int COLS, int NPC> src2,
	xf::Mat<int SRC_T int ROWS, int COLS, int NPC> dst,
	float scale)

XF_CONVERT_POLICY_TRUNCATE: Results are the least significant bits of the output operand,
as if stored in two’s complement binary format in the size of its bit-depth.
XF_CONVERT_POLICY_SATURATE: Results are saturated to the bit depth of the output
operand.
Weighing factor within the range of 0 and 1

支持的SRC_T包括XF_8UC1 and XF_8UC3。
支持的DST_T包括XF_32UC1 and XF_8UC3。
支持的NPPC包括XF_NPPC1 and XF_NPPC8。

+++++++++++++++++++++++++++++++++++++
Pixel-Wise Subtraction

template<int POLICY_TYPE int SRC_T, int ROWS, int COLS, int NPC=1>
void subtract (
	xf::Mat<int SRC_T, int ROWS, int COLS, int NPC> src1,
	xf::Mat<int SRC_T, int ROWS, int COLS, int NPC> src2,
	xf::Mat<int SRC_T, int ROWS, int COLS, int NPC> dst )

XF_CONVERT_POLICY_TRUNCATE: Results are the least significant bits of the output operand,
as if stored in two’s complement binary format in the size of its bit-depth.
XF_CONVERT_POLICY_SATURATE: Results are saturated to the bit depth of the output
operand.

支持的SRC_T包括XF_8UC1 and XF_8UC3。
支持的DST_T包括XF_32UC1 and XF_8UC3。
支持的NPPC包括XF_NPPC1 and XF_NPPC8。

++++++++++++++++++++++++++++++++++++++
Square Root

int Sqrt(unsigned int D)

+++++++++++++++++++++++++++++++++++
Mean and Standard Deviation

template<int SRC_T,int ROWS, int COLS,int NPC=1>
void meanStdDev(
	xf::Mat<SRC_T, ROWS, COLS, NPC> & _src,
	unsigned short* _mean,
	unsigned short* _stddev)

+++++++++++++++++++++++++++++++++
AddS

template<int POLICY_TYPE, int SRC_T, int ROWS, int COLS, int NPC =1>
void addS(
	xf::Mat<SRC_T, ROWS, COLS, NPC> & _src1, 
	unsigned char _scl[XF_CHANNELS(SRC_T,NPC)],
	xf::Mat<SRC_T, ROWS, COLS, NPC> & _dst)

支持的SRC_T包括XF_8UC1 。
支持的DST_T包括XF_32UC1。
支持的NPPC包括XF_NPPC1 and XF_NPPC8。

+++++++++++++++++++++++++++++++++
CompareS

template<int CMP_OP, int SRC_T , int ROWS, int COLS, int NPC=1>
void compareS(
	xf::Mat<SRC_T, ROWS, COLS, NPC> & _src1, 
	unsigned char _scl[XF_CHANNELS(SRC_T,NPC)], 
	xf::Mat<SRC_T, ROWS, COLS, NPC> & _dst)

支持的SRC_T包括XF_8UC1。
支持的DST_T包括XF_8UC1。
支持的NPPC包括XF_NPPC1 and XF_NPPC8。

++++++++++++++++++++++++++++
MaxS

template< int SRC_T , int ROWS, int COLS, int NPC=1>
void MaxS(
	xf::Mat<SRC_T, ROWS, COLS, NPC> & _src1, 
	unsigned char _scl[XF_CHANNELS(SRC_T,NPC)], 
	xf::Mat<SRC_T, ROWS, COLS, NPC> & _dst)

逐像素取大值,存入新图像中。
src1通常为图像,src2通常为统一阈值mask。为限幅基准值。
支持的SRC_T包括XF_8UC1。
支持的DST_T包括XF_8UC1。
支持的NPPC包括XF_NPPC1 and XF_NPPC8。
++++++++++++++++++++++++++++
MinS

template< int SRC_T , int ROWS, int COLS, int NPC=1>
void MinS(
	xf::Mat<SRC_T, ROWS, COLS, NPC> & _src1, 
	unsigned char _scl[XF_CHANNELS(SRC_T,NPC)], 
	xf::Mat<SRC_T, ROWS, COLS, NPC> & _dst)

逐像素取小值,存入新图像中。
src1通常为图像,src2通常为统一阈值mask。为限幅基准值。
支持的SRC_T包括XF_8UC1。
支持的DST_T包括XF_8UC1。
支持的NPPC包括XF_NPPC1 and XF_NPPC8。
++++++++++++++++++++++++++
SubS

template<int POLICY_TYPE, int SRC_T, int ROWS, int COLS, int NPC =1>
void subS(
	xf::Mat<SRC_T, ROWS, COLS, NPC> & _src1, 
	unsigned char _scl[XF_CHANNELS(SRC_T,NPC)],
	xf::Mat<SRC_T, ROWS, COLS, NPC> & _dst)

支持的SRC_T包括XF_8UC1。
支持的DST_T包括XF_8UC1。
支持的NPPC包括XF_NPPC1 and XF_NPPC8。

+++++++++++++++++++++++++++
SubRS

template<int POLICY_TYPE, int SRC_T, int ROWS, int COLS, int NPC =1>
void subRS(
	xf::Mat<SRC_T, ROWS, COLS, NPC> & _src1, 
	unsigned char _scl[XF_CHANNELS(SRC_T,NPC)],
	xf::Mat<SRC_T, ROWS, COLS, NPC> & _dst)

支持的SRC_T包括XF_8UC1。
支持的DST_T包括XF_8UC1。
支持的NPPC包括XF_NPPC1 and XF_NPPC8。
++++++++++++++++++++++++++++++++++++++
Compare

template<int CMP_OP, int SRC_T , int ROWS, int COLS, int NPC=1>
void compare(
	xf::Mat<SRC_T, ROWS, COLS, NPC> & _src1, 
	xf::Mat<SRC_T, ROWS, COLS, NPC> & _src2, 
	xf::Mat<SRC_T, ROWS, COLS, NPC> & _dst)

CMP_OP – a flag specifies correspondence between the pixels.
• XF_CMP_EQ : src1 is equal to src2
• XF_CMP_GT : src1 is greater than src2
• XF_CMP_GE : src1 is greater than or equal to src2
• XF_CMP_LT : src1 is less than src2
• XF_CMP_LE : src1 is less than or equal to src2
• XF_CMP_NE : src1 is unequal to src2
If the comparison result is true, then the corresponding element of dst is set to 255; else it is set
to 0.
支持的SRC_T包括XF_8UC1。
支持的DST_T包括XF_8UC1。
支持的NPPC包括XF_NPPC1 and XF_NPPC8。

++++++++++++++++++++++++++++++++++++++++++
Max

template< int SRC_T , int ROWS, int COLS, int NPC=1>
void Max(
	xf::Mat<SRC_T, ROWS, COLS, NPC> & _src1, 
	xf::Mat<SRC_T, ROWS, COLS, NPC> & _src2, 
	xf::Mat<SRC_T, ROWS, COLS, NPC> & _dst)

逐像素取大值,存入新图像中。
src1通常为图像,src2通常为阈值掩模mask。
支持的SRC_T包括XF_8UC1。
支持的DST_T包括XF_8UC1。
支持的NPPC包括XF_NPPC1 and XF_NPPC8。
+++++++++++++++++++++++++++
Min

template< int SRC_T , int ROWS, int COLS, int NPC=1>
void Min(xf::Mat<SRC_T, ROWS, COLS, NPC> & _src1, xf::Mat<SRC_T, ROWS,
COLS, NPC> & _src2, xf::Mat<SRC_T, ROWS, COLS, NPC> & _dst)

逐像素取小值,存入新图像中。
src1通常为图像,src2通常为阈值掩模mask。
支持的SRC_T包括XF_8UC1。
支持的DST_T包括XF_8UC1。
支持的NPPC包括XF_NPPC1 and XF_NPPC8。
+++++++++++++++++++++++++++++
Set

template< int SRC_T , int ROWS, int COLS, int NPC=1>
void set(
	xf::Mat<SRC_T, ROWS, COLS, NPC> & _src1, 
	unsigned char _scl[XF_CHANNELS(SRC_T,NPC)], 
	xf::Mat<SRC_T, ROWS, COLS, NPC> & _dst)

支持的SRC_T包括XF_8UC1。
支持的DST_T包括XF_8UC1。
支持的NPPC包括XF_NPPC1 and XF_NPPC8。

++++++++++++++++++++++
Zero

template< int SRC_T , int ROWS, int COLS, int NPC=1>
void zero(
	xf::Mat<SRC_T, ROWS, COLS, NPC> & _src1,
	xf::Mat<SRC_T, ROWS, COLS, NPC> & _dst)

支持的SRC_T包括XF_8UC1。
支持的DST_T包括XF_8UC1。
支持的NPPC包括XF_NPPC1 and XF_NPPC8。

++++++++++++++++++++++++++++++++++++
AddWeighted

template< int SRC_T , int DST_T, int ROWS, int COLS, int NPC=1>
void addWeighted(
	xf::Mat<SRC_T, ROWS, COLS, NPC> & _src1, 
	float alpha,
	xf::Mat<SRC_T, ROWS, COLS, NPC> & _src2, 
	float beta, 
	float gamma,
	xf::Mat<SRC_T, ROWS, COLS, NPC> & _dst)

支持的SRC_T包括XF_8UC1。
支持的DST_T包括XF_8UC1。
支持的NPPC包括XF_NPPC1 and XF_NPPC8。

+++++++++++++++++++++++
Sum

template< int SRC_T , int ROWS, int COLS, int NPC=1>
void sum(
	xf::Mat<SRC_T, ROWS, COLS, NPC> & src1,
	double sum[XF_CHANNELS(SRC_T,NPC)])

支持的SRC_T包括XF_8UC1。
支持的DST_T包括XF_8UC1。
支持的NPPC包括XF_NPPC1 and XF_NPPC8。

猜你喜欢

转载自blog.csdn.net/weixin_42418557/article/details/120966569
今日推荐