OpenCV 4.12.0
開源計算機視覺
載入中...
搜尋中...
無匹配項

詳細描述

函式

void cv::cuda::abs (InputArray src, OutputArray dst, Stream &stream=Stream::Null())
 計算每個矩陣元素的絕對值。
 
void cv::cuda::absdiff (InputArray src1, InputArray src2, OutputArray dst, Stream &stream=Stream::Null())
 計算兩個矩陣(或一個矩陣與一個標量)的逐元素絕對差。
 
void cv::cuda::absdiffWithScalar (InputArray src1, Scalar src2, OutputArray dst, Stream &stream=Stream::Null())
 計算矩陣與標量的逐元素絕對差。
 
void cv::cuda::add (InputArray src1, InputArray src2, OutputArray dst, InputArray mask=noArray(), int dtype=-1, Stream &stream=Stream::Null())
 計算矩陣-矩陣或矩陣-標量之和。
 
void cv::cuda::addWeighted (InputArray src1, double alpha, InputArray src2, double beta, double gamma, OutputArray dst, int dtype=-1, Stream &stream=Stream::Null())
 計算兩個陣列的加權和。
 
void cv::cuda::addWithScalar (InputArray src1, Scalar src2, OutputArray dst, InputArray mask=noArray(), int dtype=-1, Stream &stream=Stream::Null())
 計算矩陣-標量和。
 
void cv::cuda::bitwise_and (InputArray src1, InputArray src2, OutputArray dst, InputArray mask=noArray(), Stream &stream=Stream::Null())
 執行兩個矩陣(或一個矩陣與一個標量)的逐元素按位合取運算。
 
void cv::cuda::bitwise_and_with_scalar (InputArray src1, Scalar src2, OutputArray dst, InputArray mask=noArray(), Stream &stream=Stream::Null())
 執行一個矩陣與一個標量的逐元素按位合取運算。
 
void cv::cuda::bitwise_not (InputArray src, OutputArray dst, InputArray mask=noArray(), Stream &stream=Stream::Null())
 執行按元素位反轉。
 
void cv::cuda::bitwise_or (InputArray src1, InputArray src2, OutputArray dst, InputArray mask=noArray(), Stream &stream=Stream::Null())
 執行兩個矩陣(或一個矩陣與一個標量)的逐元素按位析取運算。
 
void cv::cuda::bitwise_or_with_scalar (InputArray src1, Scalar src2, OutputArray dst, InputArray mask=noArray(), Stream &stream=Stream::Null())
 執行一個矩陣與一個標量的逐元素按位析取運算。
 
void cv::cuda::bitwise_xor (InputArray src1, InputArray src2, OutputArray dst, InputArray mask=noArray(), Stream &stream=Stream::Null())
 執行兩個矩陣(或一個矩陣與一個標量)的逐元素按位異或運算。
 
void cv::cuda::bitwise_xor_with_scalar (InputArray src1, Scalar src2, OutputArray dst, InputArray mask=noArray(), Stream &stream=Stream::Null())
 執行一個矩陣與一個標量 的逐元素按位異或運算。
 
void cv::cuda::cartToPolar (InputArray x, InputArray y, OutputArray magnitude, OutputArray angle, bool angleInDegrees=false, Stream &stream=Stream::Null())
 將笛卡爾座標轉換為極座標。
 
void cv::cuda::cartToPolar (InputArray xy, OutputArray magnitude, OutputArray angle, bool angleInDegrees=false, Stream &stream=Stream::Null())
 將笛卡爾座標轉換為極座標。
 
void cv::cuda::cartToPolar (InputArray xy, OutputArray magnitudeAngle, bool angleInDegrees=false, Stream &stream=Stream::Null())
 將笛卡爾座標轉換為極座標。
 
void cv::cuda::compare (InputArray src1, InputArray src2, OutputArray dst, int cmpop, Stream &stream=Stream::Null())
 比較兩個矩陣(或一個矩陣與標量)的元素。
 
void cv::cuda::compareWithScalar (InputArray src1, Scalar src2, OutputArray dst, int cmpop, Stream &stream=Stream::Null())
 比較矩陣與標量的元素。
 
void cv::cuda::divide (InputArray src1, InputArray src2, OutputArray dst, double scale=1, int dtype=-1, Stream &stream=Stream::Null())
 計算矩陣-矩陣或矩陣-標量除法。
 
void cv::cuda::divideWithScalar (InputArray src1, Scalar src2, OutputArray dst, double scale=1, int dtype=-1, Stream &stream=Stream::Null())
 計算矩陣-標量除法。
 
void cv::cuda::exp (InputArray src, OutputArray dst, Stream &stream=Stream::Null())
 計算每個矩陣元素的指數。
 
void cv::cuda::inRange (InputArray src, const Scalar &lowerb, const Scalar &upperb, OutputArray dst, Stream &stream=Stream::Null())
 檢查陣列元素是否介於兩個標量之間。
 
void cv::cuda::log (InputArray src, OutputArray dst, Stream &stream=Stream::Null())
 計算每個矩陣元素的絕對值的自然對數。
 
void cv::cuda::lshift (InputArray src, Scalar val, OutputArray dst, Stream &stream=Stream::Null())
 
void cv::cuda::lshift (InputArray src, Scalar_< int > val, OutputArray dst, Stream &stream=Stream::Null())
 逐畫素對影像進行常數值左移操作。
 
void cv::cuda::magnitude (InputArray x, InputArray y, OutputArray magnitude, Stream &stream=Stream::Null())
 
void cv::cuda::magnitude (InputArray xy, OutputArray magnitude, Stream &stream=Stream::Null())
 計算複雜矩陣元素的幅值。
 
void cv::cuda::magnitudeSqr (InputArray x, InputArray y, OutputArray magnitude, Stream &stream=Stream::Null())
 
void cv::cuda::magnitudeSqr (InputArray xy, OutputArray magnitude, Stream &stream=Stream::Null())
 計算複雜矩陣元素的平方幅值。
 
void cv::cuda::max (InputArray src1, InputArray src2, OutputArray dst, Stream &stream=Stream::Null())
 計算兩個矩陣(或一個矩陣與一個標量)的逐元素最大值。
 
void cv::cuda::maxWithScalar (InputArray src1, Scalar src2, OutputArray dst, Stream &stream=Stream::Null())
 計算矩陣與標量的逐元素最大值。
 
void cv::cuda::min (InputArray src1, InputArray src2, OutputArray dst, Stream &stream=Stream::Null())
 計算兩個矩陣(或一個矩陣與一個標量)的逐元素最小值。
 
void cv::cuda::minWithScalar (InputArray src1, Scalar src2, OutputArray dst, Stream &stream=Stream::Null())
 計算矩陣與標量的逐元素最小值。
 
void cv::cuda::multiply (InputArray src1, InputArray src2, OutputArray dst, double scale=1, int dtype=-1, Stream &stream=Stream::Null())
 計算矩陣-矩陣或矩陣-標量按元素乘積。
 
void cv::cuda::multiplyWithScalar (InputArray src1, Scalar src2, OutputArray dst, double scale=1, int dtype=-1, Stream &stream=Stream::Null())
 計算矩陣與標量的逐元素乘積。
 
void cv::cuda::phase (InputArray x, InputArray y, OutputArray angle, bool angleInDegrees=false, Stream &stream=Stream::Null())
 計算複數矩陣元素的極角。
 
void cv::cuda::phase (InputArray xy, OutputArray angle, bool angleInDegrees=false, Stream &stream=Stream::Null())
 計算複數矩陣元素的極角。
 
void cv::cuda::polarToCart (InputArray magnitude, InputArray angle, OutputArray x, OutputArray y, bool angleInDegrees=false, Stream &stream=Stream::Null())
 將極座標轉換為笛卡爾座標。
 
void cv::cuda::polarToCart (InputArray magnitude, InputArray angle, OutputArray xy, bool angleInDegrees=false, Stream &stream=Stream::Null())
 將極座標轉換為笛卡爾座標。
 
void cv::cuda::polarToCart (InputArray magnitudeAngle, OutputArray xy, bool angleInDegrees=false, Stream &stream=Stream::Null())
 將極座標轉換為笛卡爾座標。
 
void cv::cuda::pow (InputArray src, double power, OutputArray dst, Stream &stream=Stream::Null())
 將每個矩陣元素提升到指定冪。
 
void cv::cuda::rshift (InputArray src, Scalar val, OutputArray dst, Stream &stream=Stream::Null())
 
void cv::cuda::rshift (InputArray src, Scalar_< int > val, OutputArray dst, Stream &stream=Stream::Null())
 逐畫素對影像進行常數值右移操作。
 
static void cv::cuda::scaleAdd (InputArray src1, double alpha, InputArray src2, OutputArray dst, Stream &stream=Stream::Null())
 將縮放後的陣列加到另一個數組(dst = alpha*src1 + src2)
 
void cv::cuda::sqr (InputArray src, OutputArray dst, Stream &stream=Stream::Null())
 計算每個矩陣元素的平方值。
 
void cv::cuda::sqrt (InputArray src, OutputArray dst, Stream &stream=Stream::Null())
 計算每個矩陣元素的平方根。
 
void cv::cuda::subtract (InputArray src1, InputArray src2, OutputArray dst, InputArray mask=noArray(), int dtype=-1, Stream &stream=Stream::Null())
 計算矩陣-矩陣或矩陣-標量差。
 
void cv::cuda::subtractWithScalar (InputArray src1, Scalar src2, OutputArray dst, InputArray mask=noArray(), int dtype=-1, Stream &stream=Stream::Null())
 計算矩陣與標量的差值。
 
double cv::cuda::threshold (InputArray src, OutputArray dst, double thresh, double maxval, int type, Stream &stream=Stream::Null())
 對每個陣列元素應用固定級別的閾值。
 

函式文件

◆ abs()

void cv::cuda::abs ( InputArray src,
OutputArray dst,
Stream & stream = Stream::Null() )

#include <opencv2/cudaarithm.hpp>

計算每個矩陣元素的絕對值。

引數
src源矩陣。
dst目標矩陣,與src具有相同的大小和型別。
用於非同步版本的
另請參見
abs

◆ absdiff()

void cv::cuda::absdiff ( InputArray src1,
InputArray src2,
OutputArray dst,
Stream & stream = Stream::Null() )

#include <opencv2/cudaarithm.hpp>

計算兩個矩陣(或一個矩陣與一個標量)的逐元素絕對差。

引數
src1第一個源矩陣或標量。
src2第二個源矩陣或標量。
dst目標矩陣,與輸入陣列(們)具有相同的大小和型別。
用於非同步版本的
警告
在Python中,src1src2都必須是矩陣,有關標量過載,請參閱absdiffWithScalar
另請參見
cv::absdiff, absdiffWithScalar

◆ absdiffWithScalar()

void cv::cuda::absdiffWithScalar ( InputArray src1,
Scalar src2,
OutputArray dst,
Stream & stream = Stream::Null() )
inline

#include <opencv2/cudaarithm.hpp>

計算矩陣與標量的逐元素絕對差。

引數
src1第一個源矩陣。
src2第二個源標量。
dst目標矩陣,與輸入陣列具有相同的大小和型別。
用於非同步版本的
另請參見
absdiff
此函式的呼叫圖如下

◆ add()

void cv::cuda::add ( InputArray src1,
InputArray src2,
OutputArray dst,
InputArray mask = noArray()
int dtype = -1
Stream & stream = Stream::Null() )

#include <opencv2/cudaarithm.hpp>

計算矩陣-矩陣或矩陣-標量之和。

引數
src1第一個源矩陣或標量。
src2第二個源矩陣或標量。矩陣應與src1具有相同的大小和型別。
dst目標矩陣,與輸入陣列(們)具有相同的大小和通道數。深度由dtype或src1深度定義。
mask可選的操作掩碼,8位單通道陣列,指定要更改的目標陣列的元素。此掩碼只能用於單通道影像。
dtype輸出陣列的可選深度。
用於非同步版本的
警告
在Python中,src1src2都必須是矩陣,有關標量過載,請參閱addWithScalar
另請參見
cv::add, addWithScalar

◆ addWeighted()

void cv::cuda::addWeighted ( InputArray src1,
double alpha,
InputArray src2,
double beta,
double gamma,
OutputArray dst,
int dtype = -1
Stream & stream = Stream::Null() )

#include <opencv2/cudaarithm.hpp>

計算兩個陣列的加權和。

引數
src1第一個源陣列。
alpha第一個陣列元素的權重。
src2第二個源陣列,與src1具有相同的大小和通道數。
beta第二個陣列元素的權重。
dst目標陣列,與輸入陣列具有相同的大小和通道數。
gamma加到每個和中的標量。
dtype目標陣列的可選深度。當兩個輸入陣列具有相同的深度時,dtype可以設定為-1,這將等同於src1.depth()。
用於非同步版本的

函式addWeighted按如下方式計算兩個陣列的加權和:

\[\texttt{dst} (I)= \texttt{saturate} ( \texttt{src1} (I)* \texttt{alpha} + \texttt{src2} (I)* \texttt{beta} + \texttt{gamma} )\]

其中I是陣列元素的多維索引。對於多通道陣列,每個通道獨立處理。

另請參見
addWeighted

◆ addWithScalar()

void cv::cuda::addWithScalar ( InputArray src1,
Scalar src2,
OutputArray dst,
InputArray mask = noArray()
int dtype = -1
Stream & stream = Stream::Null() )
inline

#include <opencv2/cudaarithm.hpp>

計算矩陣-標量和。

引數
src1第一個源矩陣。
src2第二個源標量。
dst目標矩陣,與輸入陣列具有相同的大小和通道數。深度由dtype或src1深度定義。
mask可選的操作掩碼,8位單通道陣列,指定要更改的目標陣列的元素。此掩碼只能用於單通道影像。
dtype輸出陣列的可選深度。
用於非同步版本的
另請參見
add
此函式的呼叫圖如下

◆ bitwise_and()

void cv::cuda::bitwise_and ( InputArray src1,
InputArray src2,
OutputArray dst,
InputArray mask = noArray()
Stream & stream = Stream::Null() )

#include <opencv2/cudaarithm.hpp>

執行兩個矩陣(或一個矩陣與一個標量)的逐元素按位合取運算。

引數
src1第一個源矩陣或標量。
src2第二個源矩陣或標量。
dst目標矩陣,與輸入陣列(們)具有相同的大小和型別。
mask可選的操作掩碼,8位單通道陣列,指定要更改的目標陣列的元素。此掩碼只能用於單通道影像。
用於非同步版本的
警告
在Python中,src1src2都必須是矩陣,有關標量過載,請參閱bitwise_and_with_scalar
另請參見
bitwise_and_with_scalar

◆ bitwise_and_with_scalar()

void cv::cuda::bitwise_and_with_scalar ( InputArray src1,
Scalar src2,
OutputArray dst,
InputArray mask = noArray()
Stream & stream = Stream::Null() )
inline

#include <opencv2/cudaarithm.hpp>

執行一個矩陣與一個標量的逐元素按位合取運算。

引數
src1第一個源矩陣。
src2第二個源標量。
dst目標矩陣,與輸入陣列具有相同的大小和型別。
mask可選的操作掩碼,8位單通道陣列,指定要更改的目標陣列的元素。此掩碼只能用於單通道影像。
用於非同步版本的
另請參見
bitwise_and
此函式的呼叫圖如下

◆ bitwise_not()

void cv::cuda::bitwise_not ( InputArray src,
OutputArray dst,
InputArray mask = noArray()
Stream & stream = Stream::Null() )

#include <opencv2/cudaarithm.hpp>

執行按元素位反轉。

引數
src源矩陣。
dst目標矩陣,與src具有相同的大小和型別。
mask可選的操作掩碼,8位單通道陣列,指定要更改的目標陣列的元素。此掩碼只能用於單通道影像。
用於非同步版本的

◆ bitwise_or()

void cv::cuda::bitwise_or ( InputArray src1,
InputArray src2,
OutputArray dst,
InputArray mask = noArray()
Stream & stream = Stream::Null() )

#include <opencv2/cudaarithm.hpp>

執行兩個矩陣(或一個矩陣與一個標量)的逐元素按位析取運算。

引數
src1第一個源矩陣或標量。
src2第二個源矩陣或標量。
dst目標矩陣,與輸入陣列(們)具有相同的大小和型別。
mask可選的操作掩碼,8位單通道陣列,指定要更改的目標陣列的元素。此掩碼只能用於單通道影像。
用於非同步版本的
警告
在Python中,src1src2都必須是矩陣,有關標量過載,請參閱bitwise_or_with_scalar
另請參見
cv::bitwise_or, bitwise_or_with_scalar

◆ bitwise_or_with_scalar()

void cv::cuda::bitwise_or_with_scalar ( InputArray src1,
Scalar src2,
OutputArray dst,
InputArray mask = noArray()
Stream & stream = Stream::Null() )
inline

#include <opencv2/cudaarithm.hpp>

執行一個矩陣與一個標量的逐元素按位析取運算。

引數
src1第一個源矩陣。
src2第二個源標量。
dst目標矩陣,與輸入陣列具有相同的大小和型別。
mask可選的操作掩碼,8位單通道陣列,指定要更改的目標陣列的元素。此掩碼只能用於單通道影像。
用於非同步版本的
另請參見
bitwise_or
此函式的呼叫圖如下

◆ bitwise_xor()

void cv::cuda::bitwise_xor ( InputArray src1,
InputArray src2,
OutputArray dst,
InputArray mask = noArray()
Stream & stream = Stream::Null() )

#include <opencv2/cudaarithm.hpp>

執行兩個矩陣(或一個矩陣與一個標量)的逐元素按位異或運算。

引數
src1第一個源矩陣或標量。
src2第二個源矩陣或標量。
dst目標矩陣,與輸入陣列具有相同的大小和型別。
mask可選的操作掩碼,8位單通道陣列,指定要更改的目標陣列的元素。此掩碼只能用於單通道影像。
用於非同步版本的
警告
在Python中,src1src2都必須是矩陣,有關標量過載,請參閱bitwise_xor_with_scalar
另請參見
cv::bitwise_xor, bitwise_xor_with_scalar

◆ bitwise_xor_with_scalar()

void cv::cuda::bitwise_xor_with_scalar ( InputArray src1,
Scalar src2,
OutputArray dst,
InputArray mask = noArray()
Stream & stream = Stream::Null() )
inline

#include <opencv2/cudaarithm.hpp>

執行一個矩陣與一個標量 的逐元素按位異或運算。

引數
src1第一個源矩陣。
src2第二個源標量。
dst目標矩陣,與輸入陣列(們)具有相同的大小和型別。
mask可選的操作掩碼,8位單通道陣列,指定要更改的目標陣列的元素。此掩碼只能用於單通道影像。
用於非同步版本的
另請參見
bitwise_xor
此函式的呼叫圖如下

◆ cartToPolar() [1/3]

void cv::cuda::cartToPolar ( InputArray x,
InputArray y,
OutputArray magnitude,
OutputArray angle,
bool angleInDegrees = false
Stream & stream = Stream::Null() )

#include <opencv2/cudaarithm.hpp>

將笛卡爾座標轉換為極座標。

引數
x包含實部分量的源矩陣 (CV_32FC1)。
y包含虛部分量的源矩陣 (CV_32FC1)。
magnitude浮點幅值目標矩陣 (CV_32FC1)。
angle角度目標矩陣 (CV_32FC1)。
angleInDegrees表示角度必須以度為單位計算的標誌。
用於非同步版本的
另請參見
cartToPolar

◆ cartToPolar() [2/3]

void cv::cuda::cartToPolar ( InputArray xy,
OutputArray magnitude,
OutputArray angle,
bool angleInDegrees = false
Stream & stream = Stream::Null() )

#include <opencv2/cudaarithm.hpp>

將笛卡爾座標轉換為極座標。

引數
xy包含實部和虛部分量的源矩陣 (CV_32FC2)。
magnitude浮點幅值目標矩陣 (CV_32FC1)。
angle角度目標矩陣 (CV_32FC1)。
angleInDegrees表示角度必須以度為單位計算的標誌。
用於非同步版本的
另請參見
cartToPolar

◆ cartToPolar() [3/3]

void cv::cuda::cartToPolar ( InputArray xy,
OutputArray magnitudeAngle,
bool angleInDegrees = false
Stream & stream = Stream::Null() )

#include <opencv2/cudaarithm.hpp>

將笛卡爾座標轉換為極座標。

引數
xy包含實部和虛部分量的源矩陣 (CV_32FC2)。
magnitudeAngle浮點幅值和角度目標矩陣 (CV_32FC2)。
angleInDegrees表示角度必須以度為單位計算的標誌。
用於非同步版本的
另請參見
cartToPolar

◆ compare()

void cv::cuda::compare ( InputArray src1,
InputArray src2,
OutputArray dst,
int cmpop,
Stream & stream = Stream::Null() )

#include <opencv2/cudaarithm.hpp>

比較兩個矩陣(或一個矩陣與標量)的元素。

引數
src1第一個源矩陣或標量。
src2第二個源矩陣或標量。
dst目標矩陣,與輸入陣列(們)具有相同的大小和CV_8U型別。
cmpop指定要檢查的元素之間關係的標誌
  • CMP_EQ: a(.) == b(.)
  • CMP_GT: a(.) > b(.)
  • CMP_GE: a(.) >= b(.)
  • CMP_LT: a(.) < b(.)
  • CMP_LE: a(.) <= b(.)
  • CMP_NE: a(.) != b(.)
用於非同步版本的
警告
在Python中,src1src2都必須是矩陣,有關標量過載,請參閱compareWithScalar
另請參見
cv::compare, compareWithScalar

◆ compareWithScalar()

void cv::cuda::compareWithScalar ( InputArray src1,
Scalar src2,
OutputArray dst,
int cmpop,
Stream & stream = Stream::Null() )
inline

#include <opencv2/cudaarithm.hpp>

比較矩陣與標量的元素。

引數
src1第一個源矩陣。
src2第二個源標量。
dst目標矩陣,與輸入陣列具有相同的大小和型別CV_8U
cmpop指定要檢查的元素之間關係的標誌
  • CMP_EQ: a(.) == b(.)
  • CMP_GT: a(.) > b(.)
  • CMP_GE: a(.) >= b(.)
  • CMP_LT: a(.) < b(.)
  • CMP_LE: a(.) <= b(.)
  • CMP_NE: a(.) != b(.)
用於非同步版本的
另請參見
compare
此函式的呼叫圖如下

◆ divide()

void cv::cuda::divide ( InputArray src1,
InputArray src2,
OutputArray dst,
double scale = 1
int dtype = -1
Stream & stream = Stream::Null() )

#include <opencv2/cudaarithm.hpp>

計算矩陣-矩陣或矩陣-標量除法。

引數
src1第一個源矩陣或標量。
src2第二個源矩陣或標量。
dst目標矩陣,與輸入陣列(們)具有相同的大小和通道數。深度由dtype或src1深度定義。
scale可選的比例因子。
dtype輸出陣列的可選深度。
用於非同步版本的

與divide函式不同,此函式使用向下取整的舍入模式。

警告
在Python中,src1src2都必須是矩陣,有關標量過載,請參閱divideWithScalar
另請參見
cv::divide, divideWithScalar

◆ divideWithScalar()

void cv::cuda::divideWithScalar ( InputArray src1,
Scalar src2,
OutputArray dst,
double scale = 1
int dtype = -1
Stream & stream = Stream::Null() )
inline

#include <opencv2/cudaarithm.hpp>

計算矩陣-標量除法。

引數
src1第一個源矩陣。
src2第二個源標量。
dst目標矩陣,與輸入陣列具有相同的大小和通道數。深度由dtype或src1深度定義。
scale可選的比例因子。
dtype輸出陣列的可選深度。
用於非同步版本的

與divide函式不同,此函式使用向下取整的舍入模式。

另請參見
divide
此函式的呼叫圖如下

◆ exp()

void cv::cuda::exp ( InputArray src,
OutputArray dst,
Stream & stream = Stream::Null() )

#include <opencv2/cudaarithm.hpp>

計算每個矩陣元素的指數。

引數
src源矩陣。
dst目標矩陣,與src具有相同的大小和型別。
用於非同步版本的
另請參見
exp

◆ inRange()

void cv::cuda::inRange ( InputArray src,
const Scalar & lowerb,
const Scalar & upperb,
OutputArray dst,
Stream & stream = Stream::Null() )

#include <opencv2/cudaarithm.hpp>

檢查陣列元素是否介於兩個標量之間。

函式按如下方式檢查範圍:

  • 對於單通道輸入陣列的每個元素

    \[\texttt{dst} (I)= \texttt{lowerb}_0 \leq \texttt{src} (I)_0 \leq \texttt{upperb}_0\]

  • 對於雙通道陣列

    \[\texttt{dst} (I)= \texttt{lowerb}_0 \leq \texttt{src} (I)_0 \leq \texttt{upperb}_0 \land \texttt{lowerb}_1 \leq \texttt{src} (I)_1 \leq \texttt{upperb}_1\]

  • 依此類推。

也就是說,如果src (I)在指定的1D、2D、3D……框內,則dst (I)設定為255(全1位),否則設定為0。

請注意,與CPU上的inRange不同,此函式不接受`lowerb`或`upperb`的陣列,只接受cv::Scalar

引數
src第一個輸入陣列。
lowerb包含下邊界的cv::Scalar
upperb包含上邊界的cv::Scalar
dst與src大小相同且型別為CV_8U的輸出陣列。
用於非同步版本的
另請參見
cv::inRange

◆ log()

void cv::cuda::log ( InputArray src,
OutputArray dst,
Stream & stream = Stream::Null() )

#include <opencv2/cudaarithm.hpp>

計算每個矩陣元素的絕對值的自然對數。

引數
src源矩陣。
dst目標矩陣,與src具有相同的大小和型別。
用於非同步版本的
另請參見
log

◆ lshift() [1/2]

void cv::cuda::lshift ( InputArray src,
Scalar val,
OutputArray dst,
Stream & stream = Stream::Null() )
inline

#include <opencv2/cudaarithm.hpp>

此函式的呼叫圖如下

◆ lshift() [2/2]

void cv::cuda::lshift ( InputArray src,
Scalar_< int > val,
OutputArray dst,
Stream & stream = Stream::Null() )

#include <opencv2/cudaarithm.hpp>

逐畫素對影像進行常數值左移操作。

引數
src源矩陣。支援1、3和4通道影像,深度為CV_8U、CV_16U或CV_32S。
val常數值,每個通道一個。
dst目標矩陣,與src具有相同的大小和型別。
用於非同步版本的

◆ magnitude() [1/2]

void cv::cuda::magnitude ( InputArray x,
InputArray y,
OutputArray magnitude,
Stream & stream = Stream::Null() )

#include <opencv2/cudaarithm.hpp>

這是一個過載成員函式,為方便起見提供。它與上述函式的區別僅在於接受的引數。計算每個(x(i), y(i))向量的幅值,僅支援浮點源。

引數
x包含實部分量的源矩陣 (CV_32FC1)。
y包含虛部分量的源矩陣 (CV_32FC1)。
magnitude浮點幅值目標矩陣 (CV_32FC1)。
用於非同步版本的

◆ magnitude() [2/2]

void cv::cuda::magnitude ( InputArray xy,
OutputArray magnitude,
Stream & stream = Stream::Null() )

#include <opencv2/cudaarithm.hpp>

計算複雜矩陣元素的幅值。

引數
xy交錯格式的源複數矩陣 (CV_32FC2)。
magnitude浮點幅值目標矩陣 (CV_32FC1)。
用於非同步版本的
另請參見
magnitude

◆ magnitudeSqr() [1/2]

void cv::cuda::magnitudeSqr ( InputArray x,
InputArray y,
OutputArray magnitude,
Stream & stream = Stream::Null() )

#include <opencv2/cudaarithm.hpp>

這是一個過載成員函式,為方便起見提供。它與上述函式的區別僅在於接受的引數。計算每個(x(i), y(i))向量的幅值平方,僅支援浮點源。

引數
x包含實部分量的源矩陣 (CV_32FC1)。
y包含虛部分量的源矩陣 (CV_32FC1)。
magnitude浮點幅值平方目標矩陣 (CV_32FC1)。
用於非同步版本的

◆ magnitudeSqr() [2/2]

void cv::cuda::magnitudeSqr ( InputArray xy,
OutputArray magnitude,
Stream & stream = Stream::Null() )

#include <opencv2/cudaarithm.hpp>

計算複雜矩陣元素的平方幅值。

引數
xy交錯格式的源複數矩陣 (CV_32FC2)。
magnitude浮點幅值平方目標矩陣 (CV_32FC1)。
用於非同步版本的

◆ max()

void cv::cuda::max ( InputArray src1,
InputArray src2,
OutputArray dst,
Stream & stream = Stream::Null() )

#include <opencv2/cudaarithm.hpp>

計算兩個矩陣(或一個矩陣與一個標量)的逐元素最大值。

引數
src1第一個源矩陣或標量。
src2第二個源矩陣或標量。
dst目標矩陣,與輸入陣列(們)具有相同的大小和型別。
用於非同步版本的
警告
在Python中,src1src2都必須是矩陣,有關標量過載,請參閱maxWithScalar
另請參見
cv::max, maxWithScalar

◆ maxWithScalar()

void cv::cuda::maxWithScalar ( InputArray src1,
Scalar src2,
OutputArray dst,
Stream & stream = Stream::Null() )
inline

#include <opencv2/cudaarithm.hpp>

計算矩陣與標量的逐元素最大值。

引數
src1第一個源矩陣。
src2第二個源標量。
dst目標矩陣,與輸入陣列具有相同的大小和型別。
用於非同步版本的
另請參見
max
此函式的呼叫圖如下

◆ min()

void cv::cuda::min ( InputArray src1,
InputArray src2,
OutputArray dst,
Stream & stream = Stream::Null() )

#include <opencv2/cudaarithm.hpp>

計算兩個矩陣(或一個矩陣與一個標量)的逐元素最小值。

引數
src1第一個源矩陣或標量。
src2第二個源矩陣或標量。
dst目標矩陣,與輸入陣列(們)具有相同的大小和型別。
用於非同步版本的
警告
在Python中,src1src2都必須是矩陣,有關標量過載,請參閱minWithScalar
另請參見
cv::min, minWithScalar

◆ minWithScalar()

void cv::cuda::minWithScalar ( InputArray src1,
Scalar src2,
OutputArray dst,
Stream & stream = Stream::Null() )
inline

#include <opencv2/cudaarithm.hpp>

計算矩陣與標量的逐元素最小值。

引數
src1第一個源矩陣。
src2第二個源標量。
dst目標矩陣,與輸入陣列具有相同的大小和型別。
用於非同步版本的
另請參見
min
此函式的呼叫圖如下

◆ multiply()

void cv::cuda::multiply ( InputArray src1,
InputArray src2,
OutputArray dst,
double scale = 1
int dtype = -1
Stream & stream = Stream::Null() )

#include <opencv2/cudaarithm.hpp>

計算矩陣-矩陣或矩陣-標量按元素乘積。

引數
src1第一個源矩陣或標量。
src2第二個源矩陣或標量。
dst目標矩陣,與輸入陣列(們)具有相同的大小和通道數。深度由dtype或src1深度定義。
scale可選的比例因子。
dtype輸出陣列的可選深度。
用於非同步版本的
警告
在Python中,src1src2都必須是矩陣,有關標量過載,請參閱multiplyWithScalar
另請參見
cv::multiply, multiplyWithScalar

◆ multiplyWithScalar()

void cv::cuda::multiplyWithScalar ( InputArray src1,
Scalar src2,
OutputArray dst,
double scale = 1
int dtype = -1
Stream & stream = Stream::Null() )
inline

#include <opencv2/cudaarithm.hpp>

計算矩陣與標量的逐元素乘積。

引數
src1第一個源矩陣。
src2第二個源標量。
dst目標矩陣,與輸入陣列具有相同的大小和通道數。深度由dtype或src1深度定義。
scale可選的比例因子。
dtype輸出陣列的可選深度。
用於非同步版本的
另請參見
multiply
此函式的呼叫圖如下

◆ phase() [1/2]

void cv::cuda::phase ( InputArray x,
InputArray y,
OutputArray angle,
bool angleInDegrees = false
Stream & stream = Stream::Null() )

#include <opencv2/cudaarithm.hpp>

計算複數矩陣元素的極角。

引數
x包含實部分量的源矩陣 (CV_32FC1)。
y包含虛部分量的源矩陣 (CV_32FC1)。
angle角度目標矩陣 (CV_32FC1)。
angleInDegrees表示角度必須以度為單位計算的標誌。
用於非同步版本的
另請參見
phase

◆ phase() [2/2]

void cv::cuda::phase ( InputArray xy,
OutputArray angle,
bool angleInDegrees = false
Stream & stream = Stream::Null() )

#include <opencv2/cudaarithm.hpp>

計算複數矩陣元素的極角。

引數
xy包含實部和虛部分量的源矩陣 (CV_32FC2)。
angle角度目標矩陣 (CV_32FC1)。
angleInDegrees表示角度必須以度為單位計算的標誌。
用於非同步版本的
另請參見
phase

◆ polarToCart() [1/3]

void cv::cuda::polarToCart ( InputArray magnitude,
InputArray angle,
OutputArray x,
OutputArray y,
bool angleInDegrees = false
Stream & stream = Stream::Null() )

#include <opencv2/cudaarithm.hpp>

將極座標轉換為笛卡爾座標。

引數
magnitude包含幅值的源矩陣 (CV_32FC1 或 CV_64FC1)。
angle包含角度的源矩陣(與幅值型別相同)。
x實部分量目標矩陣(與幅值型別相同)。
y虛部分量目標矩陣(與幅值型別相同)。
angleInDegrees指示角度以度為單位的標誌。
用於非同步版本的

◆ polarToCart() [2/3]

void cv::cuda::polarToCart ( InputArray magnitude,
InputArray angle,
OutputArray xy,
bool angleInDegrees = false
Stream & stream = Stream::Null() )

#include <opencv2/cudaarithm.hpp>

將極座標轉換為笛卡爾座標。

引數
magnitude包含幅值的源矩陣 (CV_32FC1 或 CV_64FC1)。
angle包含角度的源矩陣(與幅值型別相同)。
xy實部和虛部分量目標矩陣(與幅值深度相同,即CV_32FC2 或 CV_64FC2)。
angleInDegrees指示角度以度為單位的標誌。
用於非同步版本的

◆ polarToCart() [3/3]

void cv::cuda::polarToCart ( InputArray magnitudeAngle,
OutputArray xy,
bool angleInDegrees = false
Stream & stream = Stream::Null() )

#include <opencv2/cudaarithm.hpp>

將極座標轉換為笛卡爾座標。

引數
magnitudeAngle包含幅值和角度的源矩陣 (CV_32FC2 或 CV_64FC2)。
xy實部和虛部分量目標矩陣(與源深度相同)。
angleInDegrees指示角度以度為單位的標誌。
用於非同步版本的

◆ pow()

void cv::cuda::pow ( InputArray src,
double power,
OutputArray dst,
Stream & stream = Stream::Null() )

#include <opencv2/cudaarithm.hpp>

將每個矩陣元素提升到指定冪。

引數
src源矩陣。
power冪指數。
dst目標矩陣,與src具有相同的大小和型別。
用於非同步版本的

函式pow將輸入矩陣的每個元素提升到指定冪次方。

\[\texttt{dst} (I) = \fork{\texttt{src}(I)^power}{if \texttt{power} is integer}{|\texttt{src}(I)|^power}{otherwise}\]

另請參見
pow

◆ rshift() [1/2]

void cv::cuda::rshift ( InputArray src,
Scalar val,
OutputArray dst,
Stream & stream = Stream::Null() )
inline

#include <opencv2/cudaarithm.hpp>

此函式的呼叫圖如下

◆ rshift() [2/2]

void cv::cuda::rshift ( InputArray src,
Scalar_< int > val,
OutputArray dst,
Stream & stream = Stream::Null() )

#include <opencv2/cudaarithm.hpp>

逐畫素對影像進行常數值右移操作。

引數
src源矩陣。支援1、3和4通道影像,元素為整數。
val常數值,每個通道一個。
dst目標矩陣,與src具有相同的大小和型別。
用於非同步版本的

◆ scaleAdd()

static void cv::cuda::scaleAdd ( InputArray src1,
double alpha,
InputArray src2,
OutputArray dst,
Stream & stream = Stream::Null() )
inlinestatic

#include <opencv2/cudaarithm.hpp>

將縮放後的陣列加到另一個數組(dst = alpha*src1 + src2)

此函式的呼叫圖如下

◆ sqr()

void cv::cuda::sqr ( InputArray src,
OutputArray dst,
Stream & stream = Stream::Null() )

#include <opencv2/cudaarithm.hpp>

計算每個矩陣元素的平方值。

引數
src源矩陣。
dst目標矩陣,與src具有相同的大小和型別。
用於非同步版本的

◆ sqrt()

void cv::cuda::sqrt ( InputArray src,
OutputArray dst,
Stream & stream = Stream::Null() )

#include <opencv2/cudaarithm.hpp>

計算每個矩陣元素的平方根。

引數
src源矩陣。
dst目標矩陣,與src具有相同的大小和型別。
用於非同步版本的
另請參見
sqrt

◆ subtract()

void cv::cuda::subtract ( InputArray src1,
InputArray src2,
OutputArray dst,
InputArray mask = noArray()
int dtype = -1
Stream & stream = Stream::Null() )

#include <opencv2/cudaarithm.hpp>

計算矩陣-矩陣或矩陣-標量差。

引數
src1第一個源矩陣或標量。
src2第二個源矩陣或標量。矩陣應與src1具有相同的大小和型別。
dst目標矩陣,與輸入陣列(們)具有相同的大小和通道數。深度由dtype或src1深度定義。
mask可選的操作掩碼,8位單通道陣列,指定要更改的目標陣列的元素。此掩碼只能用於單通道影像。
dtype輸出陣列的可選深度。
用於非同步版本的
警告
在Python中,src1src2都必須是矩陣,有關標量過載,請參閱subtractWithScalar
另請參見
cv::subtract, subtractWithScalar

◆ subtractWithScalar()

void cv::cuda::subtractWithScalar ( InputArray src1,
Scalar src2,
OutputArray dst,
InputArray mask = noArray()
int dtype = -1
Stream & stream = Stream::Null() )
inline

#include <opencv2/cudaarithm.hpp>

計算矩陣與標量的差值。

引數
src1第一個源矩陣。
src2第二個源標量。
dst目標矩陣,與輸入陣列具有相同的大小和通道數。深度由dtype或src1深度定義。
mask可選的操作掩碼,8位單通道陣列,指定要更改的目標陣列的元素。此掩碼只能用於單通道影像。
dtype輸出陣列的可選深度。
用於非同步版本的
另請參見
cv::subtract
此函式的呼叫圖如下

◆ threshold()

double cv::cuda::threshold ( InputArray src,
OutputArray dst,
double thresh,
double 最大值,
int type,
Stream & stream = Stream::Null() )

#include <opencv2/cudaarithm.hpp>

對每個陣列元素應用固定級別的閾值。

特殊值cv::THRESH_OTSU可以與其他型別結合使用。在這種情況下,函式使用Otsu演算法確定最佳閾值,並將其用於代替指定閾值。函式除了返回閾值化矩陣外,還返回計算出的閾值。Otsu方法僅適用於8位矩陣。

引數
src源陣列(單通道)。
dst目標陣列,與src具有相同的大小和型別。
thresh閾值。
最大值與`THRESH_BINARY`和`THRESH_BINARY_INV`閾值型別一起使用的最大值。
type閾值型別。詳情請參閱threshold。不支援`THRESH_TRIANGLE`閾值型別。
用於非同步版本的
另請參見
RANSAC引數。它是點到畫素中對極線的最大距離,超過此距離的點將被視為異常值,不用於計算最終的基本矩陣。它可以設定為1-3左右,具體取決於點定位的精度、影像解析度和影像噪聲。