OpenCV 4.13.0
開源計算機視覺庫 (Open Source Computer Vision)
正在載入...
正在搜尋...
未找到匹配項
FastCV 硬體加速功能的模組封裝器

詳細說明

類  cv::fastcv::FCVMSER
 用於灰度影像的 MSER 斑點檢測器。 更多...
 
類  cv::fastcv::QcAllocator
 Qualcomm 自定義分配器。該分配器使用 Qualcomm 的記憶體管理函式。 更多...
 
類  cv::fastcv::QcResourceManager
 FastCV 分配的資源管理器。此類管理活動分配。 更多...
 

函式

void cv::fastcv::arithmetic_op (InputArray src1, InputArray src2, OutputArray dst, int op)
 兩個矩陣的算術加法和減法運算。針對 Qualcomm 處理器進行了最佳化。
 
void cv::fastcv::bilateralFilter (InputArray _src, OutputArray _dst, int d, float sigmaColor, float sigmaSpace, int borderType=BORDER_DEFAULT)
 對影像應用雙邊濾波,考慮每個畫素鄰域的 d 畫素直徑。此過濾器不支援就地(inplace)操作。
 
void cv::fastcv::bilateralRecursive (cv::InputArray src, cv::OutputArray dst, float sigmaColor=0.03f, float sigmaSpace=0.1f)
 遞迴雙邊濾波。
 
void cv::fastcv::buildPyramid (InputArray src, OutputArrayOfArrays pyr, int nLevels, bool scaleBy2=true, int borderType=cv::BORDER_REFLECT, uint8_t borderValue=0)
 從單個原始影像構建 float32 影像金字塔 - 影像根據預設層級相繼縮小。此 API 同時支援 ORB 縮放和二分之一縮小。
 
void cv::fastcv::calcHist (InputArray _src, OutputArray _hist)
 計算輸入影像的直方圖。該函式以最佳化方式實現了 8u 單通道影像 256 級直方圖計算的特定用例。
 
void cv::fastcv::dsp::Canny (InputArray _src, OutputArray _dst, int lowThreshold, int highThreshold, int apertureSize=3, bool L2gradient=false)
 應用於 8 位灰度影像的 Canny 邊緣檢測器。
 
void cv::fastcv::clusterEuclidean (InputArray points, InputArray clusterCenters, OutputArray newClusterCenters, OutputArray clusterSizes, OutputArray clusterBindings, OutputArray clusterSumDists, int numPointsUsed=-1)
 在 D 維空間中將 N 個輸入點聚類為 K 個聚類。接受 8 位無符號整數點。在 Qualcomm 處理器上提供比 cv::kmeans 更快的執行速度。
 
void cv::fastcv::DCT (InputArray src, OutputArray dst)
 該函式對輸入影像執行 8x8 正向離散餘弦變換。接受 8 位無符號整數型別的輸入,並生成 16 位有符號整數型別的輸出。在 Qualcomm 處理器上提供比 cv::dct 更快的執行速度。
 
void cv::fastcv::FAST10 (InputArray src, InputArray mask, OutputArray coords, OutputArray scores, int barrier, int border, bool nmsEnabled)
 根據掩碼從影像中提取 FAST10 角點和分數。掩碼指定了檢測器應忽略的畫素。專為 Qualcomm 處理器上的角點檢測設計,提供更高的速度。
 
void cv::fastcv::dsp::fcvdspdeinit ()
 反初始化 FastCV DSP 環境。
 
int cv::fastcv::dsp::fcvdspinit ()
 初始化 FastCV DSP 環境。
 
void cv::fastcv::dsp::FFT (InputArray src, OutputArray dst)
 計算實值矩陣的一維或二維快速傅立葉變換。對於二維情況,輸入和輸出矩陣的寬度和高度必須是 2 的冪。對於一維情況,矩陣的高度必須為 1,而寬度必須是 2 的冪。
 
void cv::fastcv::FFT (InputArray src, OutputArray dst)
 計算實值矩陣的一維或二維快速傅立葉變換。對於二維情況,輸入和輸出矩陣的寬度和高度必須是 2 的冪。對於一維情況,矩陣的高度必須為 1,而寬度必須是 2 的冪。接受 8 位無符號整數陣列,而 cv::dft 接受浮點或複數陣列。
 
void cv::fastcv::fillConvexPoly (InputOutputArray img, InputArray pts, Scalar color)
 繪製凸多邊形。該函式用指定顏色填充凸多邊形的內部。要求寬度和步長(stride)必須是 8 的倍數。
 
void cv::fastcv::dsp::filter2D (InputArray _src, OutputArray _dst, int ddepth, InputArray _kernel)
 使用非可分運算元過濾影像。
 
void cv::fastcv::filter2D (InputArray _src, OutputArray _dst, int ddepth, InputArray _kernel)
 使用非可分運算元進行 NxN 相關運算。最大到運算元寬度一半的邊界將被忽略。
 
void cv::fastcv::gaussianBlur (InputArray _src, OutputArray _dst, int kernel_size=3, bool blur_border=true)
 sigma = 0 且具有正方形運算元尺寸的高斯模糊。處理邊界的方式與 cv::GaussianBlur 不同,會導致輸出略有差異。
 
void cv::fastcv::gemm (InputArray src1, InputArray src2, OutputArray dst, float alpha=1.0, InputArray src3=noArray(), float beta=0.0)
 兩個浮點矩陣的矩陣乘法 R = a*A*B + b*C,其中 A、B、C、R 是矩陣,a、b 是常數。針對 Qualcomm 處理器進行了最佳化。
 
cv::MatAllocatorcv::fastcv::getQcAllocator ()
 獲取預設的 Qualcomm 分配器。該函式返回一個指向預設 Qualcomm 分配器的指標,該分配器針對 DSP 使用進行了最佳化。
 
void cv::fastcv::houghLines (InputArray src, OutputArray lines, double threshold=0.25)
 執行霍夫直線檢測。
 
void cv::fastcv::IDCT (InputArray src, OutputArray dst)
 該函式對輸入影像執行 8x8 逆離散餘弦變換。在 Qualcomm 處理器上,逆變換情況下的執行速度比 cv::dct 更快。
 
void cv::fastcv::dsp::IFFT (InputArray src, OutputArray dst)
 計算復值矩陣的一維或二維逆快速傅立葉變換。對於二維情況,輸入和輸出矩陣的寬度和高度必須是 2 的冪。對於一維情況,矩陣的高度必須為 1,而寬度必須是 2 的冪。
 
void cv::fastcv::IFFT (InputArray src, OutputArray dst)
 計算復值矩陣的一維或二維逆快速傅立葉變換。對於二維情況,輸入和輸出矩陣的寬度和高度必須是 2 的冪。對於一維情況,矩陣的高度必須為 1,而寬度必須是 2 的冪。
 
void cv::fastcv::integrateYUV (InputArray Y, InputArray CbCr, OutputArray IY, OutputArray ICb, OutputArray ICr)
 YCbCr420 影像的積分圖。注意:輸入高度應為 2 的倍數。輸入寬度和步長應為 16 的倍數。輸出步長應為 8 的倍數。針對 Qualcomm 處理器進行了最佳化。
 
void cv::fastcv::matmuls8s32 (InputArray src1, InputArray src2, OutputArray dst)
 兩個 int8_t 型別矩陣的矩陣乘法。使用有符號整數輸入/輸出,而 cv::gemm 使用浮點輸入/輸出。matmuls8s32 在 Qualcomm 處理器上提供更高的速度。
 
int cv::fastcv::meanShift (InputArray src, Rect &rect, TermCriteria termCrit)
 應用均值漂移(meanshift)程式並獲取最終收斂位置。該函式將均值漂移程式應用於原始影像(通常是機率圖)並獲取最終收斂位置。當達到所需精度或最大迭代次數時,收斂位置搜尋將停止。演算法中使用的矩(Moments)是以浮點數計算的。該函式與 cv::meanShift 並非位精確一致,但在 Snapdragon 處理器上提供了更好的延遲表現。
 
void cv::fastcv::merge (InputArrayOfArrays mv, OutputArray dst)
 從多個單通道 CV_8U 矩陣建立一個多通道矩陣。針對 Qualcomm 處理器進行了最佳化。
 
cv::Moments cv::fastcv::moments (InputArray _src, bool binary)
 計算影像畫素強度的所有三階及以下矩。結果返回在 cv::Moments 結構中。此函式 cv::fastcv::moments() 使用浮點計算矩,而 cv::moments() 使用雙精度浮點計算矩。
 
void cv::fastcv::normalizeLocalBox (InputArray _src, OutputArray _dst, Size pSize, bool useStdDev)
 計算影像的區域性減法和對比度歸一化。影像的每個畫素都透過以該畫素為中心的色塊的均值和標準差進行歸一化。針對 Qualcomm 處理器進行了最佳化。
 
void cv::fastcv::remap (InputArray src, OutputArray dst, InputArray map1, InputArray map2, int interpolation, int borderValue=0)
 對灰度 CV_8UC1 影像應用通用的幾何變換。
 
void cv::fastcv::remapRGBA (InputArray src, OutputArray dst, InputArray map1, InputArray map2, int interpolation)
 使用雙線性或最近鄰插值對 4 通道 CV_8UC4 影像應用通用幾何變換。
 
void cv::fastcv::resizeDown (cv::InputArray _src, cv::OutputArray _dst, Size dsize, double inv_scale_x, double inv_scale_y)
 使用指定的縮放因子或尺寸縮小影像。此函式支援單通道 (CV_8UC1) 和雙通道 (CV_8UC2) 影像。
 
void cv::fastcv::sepFilter2D (InputArray _src, OutputArray _dst, int ddepth, InputArray _kernelX, InputArray _kernelY)
 使用可分運算元進行 NxN 相關運算。如果 srcImg 和 dstImg 指向同一地址且 srcStride 等於 dstStride,則會進行就地操作。最大到運算元寬度一半的邊界將被忽略。處理溢位的方式與 OpenCV 不同,該函式將對中間結果和最終結果進行右移。
 
void cv::fastcv::sobel (InputArray _src, OutputArray _dx, OutputArray _dy, int kernel_size, int borderType, int borderValue)
 從源亮度資料建立不帶歸一化的 2D 梯度影像。計算 X 方向 1 階導數或 Y 方向 1 階導數,或同時計算兩者。
 
void cv::fastcv::sobel3x3u8 (InputArray _src, OutputArray _dst, OutputArray _dsty=noArray(), int ddepth=CV_8U, bool normalization=false)
 從源亮度資料建立不帶歸一化的 2D 梯度影像。該函式在 3x3 鄰域上計算中心差分,然後將結果與 Sobel 運算元卷積,最大到運算元寬度一半的邊界將被忽略。
 
void cv::fastcv::sobelPyramid (InputArrayOfArrays pyr, OutputArrayOfArrays dx, OutputArrayOfArrays dy, int outType=CV_8S)
 從影像金字塔建立梯度金字塔。注意:在梯度計算期間會忽略邊界。
 
void cv::fastcv::split (InputArray src, OutputArrayOfArrays mv)
 將 CV_8U 多通道矩陣拆分為多個 CV_8UC1 矩陣。針對 Qualcomm 處理器進行了最佳化。
 
void cv::fastcv::dsp::sumOfAbsoluteDiffs (cv::InputArray _patch, cv::InputArray _src, cv::OutputArray _dst)
 影像與 8x8 模板的絕對差之和(SAD)。
 
void cv::fastcv::dsp::thresholdOtsu (InputArray _src, OutputArray _dst, bool type)
 使用大津法(Otsu's method)對灰度影像進行二值化。如果畫素值大於閾值,則將其設定為 max(255);否則設定為 min(0)。搜尋使類內方差最小化的閾值。
 
void cv::fastcv::thresholdRange (InputArray src, OutputArray dst, int lowThresh, int highThresh, int trueValue, int falseValue)
 根據一對閾值對灰度影像進行二值化。二值化後的影像將處於使用者選擇的兩個值中。該函式在 Snapdragon 處理器上提供了更好的延遲表現。
 
void cv::fastcv::trackOpticalFlowLK (InputArray src, InputArray dst, InputArrayOfArrays srcPyr, InputArrayOfArrays dstPyr, InputArray ptsIn, OutputArray ptsOut, InputArray ptsEst, OutputArray statusVec, cv::Size winSize=cv::Size(7, 7), cv::TermCriteria termCriteria=cv::TermCriteria(cv::TermCriteria::MAX_ITER|cv::TermCriteria::EPS, 7, 0.03f *0.03f))
 使用 Lucas-Kanade 演算法計算稀疏光流。接受 8 位無符號整數影像。在 Qualcomm 處理器上提供更快的執行速度。
 
void cv::fastcv::trackOpticalFlowLK (InputArray src, InputArray dst, InputArrayOfArrays srcPyr, InputArrayOfArrays dstPyr, InputArrayOfArrays srcDxPyr, InputArrayOfArrays srcDyPyr, InputArray ptsIn, OutputArray ptsOut, OutputArray statusVec, cv::Size winSize=cv::Size(7, 7), int maxIterations=7)
 LK 跟蹤函式 v1 版本的過載。
 
void cv::fastcv::warpAffine (InputArray _src, OutputArray _dst, InputArray _M, Size dsize, int interpolation=INTER_LINEAR, int borderValue=0)
 使用提供的變換矩陣對輸入影像執行仿射變換。
 
void cv::fastcv::warpPerspective (InputArray _src, OutputArray _dst, InputArray _M0, Size dsize, int interpolation, int borderType, const Scalar &borderValue)
 使用透視變換對影像進行變換,與 cv::warpPerspective 相同,但並非位精確一致。
 
void cv::fastcv::warpPerspective2Plane (InputArray _src1, InputArray _src2, OutputArray _dst1, OutputArray _dst2, InputArray _M0, Size dsize)
 使用相同的變換對兩個影像進行透視變換。適用時使用雙線性插值。例如,同時對一個灰度影像和一個 alpha 影像進行變換,或對兩個顏色通道進行變換。
 

函式文件 (Function Documentation)

◆ arithmetic_op()

void cv::fastcv::arithmetic_op ( InputArray src1,
InputArray src2,
OutputArray dst,
int op )

#include <opencv2/fastcv/arithm.hpp>

兩個矩陣的算術加法和減法運算。針對 Qualcomm 處理器進行了最佳化。

引數
src1第一源矩陣,可以是 CV_8U、CV_16S、CV_32F 型別。注意:減法運算不支援 CV_32F
src2與 src1 型別和尺寸相同的第二源矩陣
dst與源矩陣型別相同的結果矩陣
op操作型別 - 0 表示加法,1 表示減法

◆ bilateralFilter()

void cv::fastcv::bilateralFilter ( InputArray _src,
OutputArray _dst,
int d,
float sigmaColor,
float sigmaSpace,
int borderType = BORDER_DEFAULT )

#include <opencv2/fastcv/bilateralFilter.hpp>

對影像應用雙邊濾波,考慮每個畫素鄰域的 d 畫素直徑。此過濾器不支援就地(inplace)操作。

引數
_src型別為 CV_8UC1 的輸入影像
_dst與 _src 型別相同的目標影像
d運算元尺寸(可以是 5、7 或 9)
sigmaColor顏色空間中的濾波器 sigma。典型值為 50.0f。增大該值意味著增加顏色差異較大的相鄰畫素對平滑結果的影響。
sigmaSpace座標空間中的濾波器 sigma。典型值為 1.0f。增大該值意味著增加運算元尺寸距離內較遠相鄰畫素對平滑結果的影響。
borderType用於外推影像外部畫素的邊界模式

◆ bilateralRecursive()

void cv::fastcv::bilateralRecursive ( cv::InputArray src,
cv::OutputArray dst,
float sigmaColor = 0.03f,
float sigmaSpace = 0.1f )

#include <opencv2/fastcv/smooth.hpp>

遞迴雙邊濾波。

與傳統的雙邊濾波不同,這裡的平滑實際上是在梯度域執行的。該演算法聲稱在影像質量和計算效率方面都比原始雙邊濾波更高效。參見楊慶雄(Yang Qingxiong)教授在 ECCV2012 發表的論文《Recursive Bilateral Filtering》中的演算法描述。該函式與 cv::bilateralFilter 並非位精確一致,但在 Snapdragon 處理器上提供了更好的延遲表現。

引數
src輸入影像,應具有一個 CV_8U 通道
dst具有一個 CV_8U 通道的輸出陣列
sigmaColor顏色空間中的 Sigma,值越大,演算法平滑的顏色差異越多
sigmaSpace座標空間中的 Sigma,值越大,平滑的畫素距離越遠

◆ buildPyramid()

void cv::fastcv::buildPyramid ( InputArray src,
OutputArrayOfArrays pyr,
int nLevels,
bool scaleBy2 = true,
int borderType = cv::BORDER_REFLECT,
uint8_t borderValue = 0 )

#include <opencv2/fastcv/pyramid.hpp>

從單個原始影像構建 float32 影像金字塔 - 影像根據預設層級相繼縮小。此 API 同時支援 ORB 縮放和二分之一縮小。

引數
src8U 或 32F 型別的輸入單通道影像
pyr包含 nLevels 個縮小影像副本的輸出陣列
nLevels要生成的金字塔層數
scaleBy2用於將影像縮小 2 倍或按 1/(2)^(1/4) 因子縮小(近似為 0.8408964,即 ORB 縮小),浮點影像不支援 ORB 縮放
borderType如何處理邊界,選項包括 BORDER_REFLECT(對映到 FASTCV_BORDER_REFLECT)、BORDER_REFLECT_101(對映到 FASTCV_BORDER_REFLECT_V2)和 BORDER_REPLICATE(對映到 FASTCV_BORDER_REPLICATE)。其他邊界型別對映到 FASTCV_BORDER_UNDEFINED(忽略邊界畫素)。目前,邊界僅支援二分之一縮小,ORB 縮放會忽略邊界。浮點影像也會忽略邊界
borderValue填充邊界應使用的值,浮點影像會忽略此項

◆ calcHist()

void cv::fastcv::calcHist ( InputArray _src,
OutputArray _hist )

#include <opencv2/fastcv/histogram.hpp>

計算輸入影像的直方圖。該函式以最佳化方式實現了 8u 單通道影像 256 級直方圖計算的特定用例。

引數
_src型別為 CV_8UC1 的輸入影像
_hist型別為 int 的 256 級輸出直方圖

◆ Canny()

void cv::fastcv::dsp::Canny ( InputArray _src,
OutputArray _dst,
int lowThreshold,
int highThreshold,
int apertureSize = 3,
bool L2gradient = false )

#include <opencv2/fastcv/edges_dsp.hpp>

應用於 8 位灰度影像的 Canny 邊緣檢測器。

引數
_src型別為 CV_8UC1 的輸入影像
_dst包含邊緣檢測結果的輸出 8 點陣圖像
lowThreshold第一閾值
highThreshold第二閾值
apertureSize用於計算梯度的 Sobel 運算元尺寸。支援的尺寸有 3、5 和 7。
L2gradientL2 梯度或 L1 梯度

◆ clusterEuclidean()

void cv::fastcv::clusterEuclidean ( InputArray points,
InputArray clusterCenters,
OutputArray newClusterCenters,
OutputArray clusterSizes,
OutputArray clusterBindings,
OutputArray clusterSumDists,
int numPointsUsed = -1 )

#include <opencv2/fastcv/cluster.hpp>

在 D 維空間中將 N 個輸入點聚類為 K 個聚類。接受 8 位無符號整數點。在 Qualcomm 處理器上提供比 cv::kmeans 更快的執行速度。

引數
points型別為 8u 的點陣列,每一行代表一個點。尺寸為 N 行 D 列,可以是不連續的。
clusterCenters型別為 32f 的初始聚類中心陣列,每一行代表一箇中心。尺寸為 K 行 D 列,可以是不連續的。
newClusterCenters型別為 32f 的結果聚類中心陣列,每一行代表找到的中心。尺寸設為 K 行 D 列。
clusterSizes型別為 uint32 的結果聚類成員計數陣列,尺寸設為 1 行 K 列。
clusterBindings型別為 uint32 的結果點索引陣列,每個索引說明相應點屬於哪個聚類。尺寸設為 1 行 numPointsUsed 列。
clusterSumDists型別為 32f 的結果距離之和陣列,每個數字是每個聚類中心與其所屬點之間距離的總和。尺寸設為 1 行 K 列
numPointsUsed要進行聚類的點數,範圍從 0 到 numPointsUsed-1(含)。如果為負,則設為 N。

◆ DCT()

void cv::fastcv::DCT ( InputArray src,
OutputArray dst )

#include <opencv2/fastcv/ipptransform.hpp>

該函式對輸入影像執行 8x8 正向離散餘弦變換。接受 8 位無符號整數型別的輸入,並生成 16 位有符號整數型別的輸出。在 Qualcomm 處理器上提供比 cv::dct 更快的執行速度。

引數
src型別為 CV_8UC1 的輸入影像
dst型別為 CV_16SC1 的輸出影像

◆ FAST10()

void cv::fastcv::FAST10 ( InputArray src,
InputArray mask,
OutputArray coords,
OutputArray scores,
int barrier,
int border,
bool nmsEnabled )

#include <opencv2/fastcv/fast10.hpp>

根據掩碼從影像中提取 FAST10 角點和分數。掩碼指定了檢測器應忽略的畫素。專為 Qualcomm 處理器上的角點檢測設計,提供更高的速度。

引數
src8 位灰度影像
mask可選掩碼,指示哪些畫素應從角點檢測中忽略。其尺寸應為影像寬度和高度的 k 倍,其中 k = 1/2, 1/4 , 1/8 , 1, 2, 4 和 8。更多詳情請參閱 FastCV 中 fcvCornerFast9InMaskScoreu8 函式的文件
coords型別為 CV_32S 的輸出陣列,包含檢測到的角點的交錯 x, y 位置
scores可選輸出陣列,包含檢測到的角點的分數。分數是仍能驗證檢測到的角點的最高閾值。分數越高表示角點特徵越強。例如,分數為 108 的角點強於分數為 50 的角點
barrierFAST 閾值。閾值用於比較中心畫素的亮度值與圍繞該畫素的圓上的畫素之間的差異
border影像上、下、右、左忽略的畫素數。如果低於 4,則預設設為 4
nmsEnabled啟用非極大值抑制(NMS)以剔除弱關鍵點

◆ fcvdspdeinit()

void cv::fastcv::dsp::fcvdspdeinit ( )

#include <opencv2/fastcv/dsp_init.hpp>

反初始化 FastCV DSP 環境。

該函式釋放由 'fcvdspinit' 函式設定的資源和環境。應在用例或程式退出前呼叫它,以確保所有 DSP 資源都被正確清理且不發生記憶體洩漏。

注意
該函式必須在用例或程式結束時、所有 DSP 相關操作完成後呼叫。

◆ fcvdspinit()

int cv::fastcv::dsp::fcvdspinit ( )

#include <opencv2/fastcv/dsp_init.hpp>

初始化 FastCV DSP 環境。

該函式設定 DSP 執行所需的環境和資源。必須在用例或程式的最開始呼叫一次,以確保在執行任何 DSP 相關操作之前,DSP 已正確初始化。

注意
該函式必須在用例或程式開始時、任何 DSP 相關操作之前呼叫。
返回
int 成功返回 0,失敗返回非零值。

◆ FFT() [1/2]

void cv::fastcv::dsp::FFT ( InputArray src,
OutputArray dst )

#include <opencv2/fastcv/fft_dsp.hpp>

計算實值矩陣的一維或二維快速傅立葉變換。對於二維情況,輸入和輸出矩陣的寬度和高度必須是 2 的冪。對於一維情況,矩陣的高度必須為 1,而寬度必須是 2 的冪。

引數
src型別為 CV_8UC1 的輸入陣列。對於二維情況,矩陣的尺寸必須是 2 的冪;在一維情況下,高度必須為 1,而寬度必須是 2 的冪。
dst型別為 CV_32FC2 的計算後的 FFT 矩陣。FFT 的實部(Re)和虛部(Im)係數儲存在不同的通道中。因此 dst 的尺寸為 (srcWidth, srcHeight)

◆ FFT() [2/2]

void cv::fastcv::FFT ( InputArray src,
OutputArray dst )

#include <opencv2/fastcv/fft.hpp>

計算實值矩陣的一維或二維快速傅立葉變換。對於二維情況,輸入和輸出矩陣的寬度和高度必須是 2 的冪。對於一維情況,矩陣的高度必須為 1,而寬度必須是 2 的冪。接受 8 位無符號整數陣列,而 cv::dft 接受浮點或複數陣列。

引數
src型別為 CV_8UC1 的輸入陣列。對於二維情況,矩陣的尺寸必須是 2 的冪;在一維情況下,高度必須為 1,而寬度必須是 2 的冪。
dst型別為 CV_32FC2 的計算後的 FFT 矩陣。FFT 的實部(Re)和虛部(Im)係數儲存在不同的通道中。因此 dst 的尺寸為 (srcWidth, srcHeight)

◆ fillConvexPoly()

void cv::fastcv::fillConvexPoly ( InputOutputArray img,
InputArray pts,
Scalar color )

#include <opencv2/fastcv/draw.hpp>

繪製凸多邊形。該函式用指定顏色填充凸多邊形的內部。要求寬度和步長(stride)必須是 8 的倍數。

引數
img要繪製的影像。應具有最多 4 個 8 位通道
pts多邊形點座標陣列。應包含 N 個雙通道或 2*N 個單通道 32 位整數元素
color繪製多邊形的顏色,儲存為 B, G, R 和 A(如果支援)

◆ filter2D() [1/2]

void cv::fastcv::dsp::filter2D ( InputArray _src,
OutputArray _dst,
int ddepth,
InputArray _kernel )

#include <opencv2/fastcv/blur_dsp.hpp>

使用非可分運算元過濾影像。

引數
_src型別為 CV_8UC1 的輸入影像,源尺寸應大於 176*144
_dst型別為 CV_8UC1、CV_16SC1 或 CV_32FC1 的輸出影像
ddepth輸出影像的深度
_kernel濾波器運算元資料

◆ filter2D() [2/2]

void cv::fastcv::filter2D ( InputArray _src,
OutputArray _dst,
int ddepth,
InputArray _kernel )

#include <opencv2/fastcv/blur.hpp>

使用非可分運算元進行 NxN 相關運算。最大到運算元寬度一半的邊界將被忽略。

引數
_src型別為 CV_8UC1 的輸入影像
_dst型別為 CV_8UC1、CV_16SC1 或 CV_32FC1 的輸出影像
ddepth輸出影像的深度
_kernel濾波器運算元資料
另請參閱
二維濾波 (Filter2D)

◆ gaussianBlur()

void cv::fastcv::gaussianBlur ( InputArray _src,
OutputArray _dst,
int kernel_size = 3,
bool blur_border = true )

#include <opencv2/fastcv/blur.hpp>

sigma = 0 且具有正方形運算元尺寸的高斯模糊。處理邊界的方式與 cv::GaussianBlur 不同,會導致輸出略有差異。

引數
_src型別為 CV_8UC1 的輸入影像
_dst型別為 CV_8UC1 的輸出影像
kernel_size濾波器運算元尺寸。3、5、11 其中之一
blur_border如果設為 true,邊界將透過對相鄰值進行 0 填充來模糊(恆定邊界的一種變體)。如果設為 false,則忽略最大到運算元寬度一半的邊界(例如 3x3 情況下為 1 畫素)。
另請參閱
高斯模糊 (GaussianBlur)

◆ gemm()

void cv::fastcv::gemm ( InputArray src1,
InputArray src2,
OutputArray dst,
float alpha = 1.0,
InputArray src3 = noArray(),
float beta = 0.0 )

#include <opencv2/fastcv/arithm.hpp>

兩個浮點矩陣的矩陣乘法 R = a*A*B + b*C,其中 A、B、C、R 是矩陣,a、b 是常數。針對 Qualcomm 處理器進行了最佳化。

引數
src1型別為 CV_32F 的第一源矩陣
src2型別為 CV_32F 的第二源矩陣,行數與 src1 的列數相同
dst型別為 CV_32F 的結果矩陣
alphasrc1 和 src2 的乘法因子
src3可選的型別為 CV_32F 的第三個矩陣,將被加到矩陣乘積中
betasrc3 的乘法因子

◆ getQcAllocator()

cv::MatAllocator * cv::fastcv::getQcAllocator ( )

#include <opencv2/fastcv/allocator.hpp>

獲取預設的 Qualcomm 分配器。該函式返回一個指向預設 Qualcomm 分配器的指標,該分配器針對 DSP 使用進行了最佳化。

返回
指向預設 FastCV 分配器的指標。

◆ houghLines()

void cv::fastcv::houghLines ( InputArray src,
OutputArray lines,
double threshold = 0.25 )

#include <opencv2/fastcv/hough.hpp>

執行霍夫直線檢測。

引數
src包含二進位制輪廓的輸入 8 點陣圖像。寬度和步長應能被 8 整除
lines輸出陣列,包含 (x1, y1, x2, y2) 形式的檢測直線,所有數字均為 32 位浮點數
閾值 (threshold)控制檢測直線的最小長度。值必須在 0.0 到 1.0 之間。接近 1.0 的值會減少檢測到的直線數量。接近 0.0 的值會檢測更多直線,但可能帶有噪聲。推薦值為 0.25。

◆ IDCT()

void cv::fastcv::IDCT ( InputArray src,
OutputArray dst )

#include <opencv2/fastcv/ipptransform.hpp>

該函式對輸入影像執行 8x8 逆離散餘弦變換。在 Qualcomm 處理器上,逆變換情況下的執行速度比 cv::dct 更快。

引數
src型別為 CV_16SC1 的輸入影像
dst型別為 CV_8UC1 的輸出影像

◆ IFFT() [1/2]

void cv::fastcv::dsp::IFFT ( InputArray src,
OutputArray dst )

#include <opencv2/fastcv/fft_dsp.hpp>

計算復值矩陣的一維或二維逆快速傅立葉變換。對於二維情況,輸入和輸出矩陣的寬度和高度必須是 2 的冪。對於一維情況,矩陣的高度必須為 1,而寬度必須是 2 的冪。

引數
src型別為 CV_32FC2 的輸入陣列,包含儲存在不同通道中的 FFT 實部和虛部係數。對於二維情況,矩陣尺寸必須是 2 的冪;在一維情況下,高度必須為 1,而寬度必須是 2 的冪。
dst型別為 CV_8U 的計算後的 IFFT 矩陣。該矩陣為實值,不含虛部成分。因此 dst 的尺寸為 (srcWidth, srcHeight)

◆ IFFT() [2/2]

void cv::fastcv::IFFT ( InputArray src,
OutputArray dst )

#include <opencv2/fastcv/fft.hpp>

計算復值矩陣的一維或二維逆快速傅立葉變換。對於二維情況,輸入和輸出矩陣的寬度和高度必須是 2 的冪。對於一維情況,矩陣的高度必須為 1,而寬度必須是 2 的冪。

引數
src型別為 CV_32FC2 的輸入陣列,包含儲存在不同通道中的 FFT 實部和虛部係數。對於二維情況,矩陣尺寸必須是 2 的冪;在一維情況下,高度必須為 1,而寬度必須是 2 的冪。
dst型別為 CV_8U 的計算後的 IFFT 矩陣。該矩陣為實值,不含虛部成分。因此 dst 的尺寸為 (srcWidth, srcHeight)

◆ integrateYUV()

void cv::fastcv::integrateYUV ( InputArray Y,
InputArray CbCr,
OutputArray IY,
OutputArray ICb,
OutputArray ICr )

#include <opencv2/fastcv/arithm.hpp>

YCbCr420 影像的積分圖。注意:輸入高度應為 2 的倍數。輸入寬度和步長應為 16 的倍數。輸出步長應為 8 的倍數。針對 Qualcomm 處理器進行了最佳化。

引數
Y8UC1 YCbCr420 影像的輸入 Y 分量。
CbCr8UC1 YCbCr420 影像的輸入 CbCr 分量(交錯)。
IYCV_32S 單通道輸出 Y 積分圖,尺寸為 (Y 高度 + 1)*(Y 寬度 + 1)
ICbCV_32S 單通道輸出 Cb 積分圖,尺寸為 (Y 高度/2 + 1)*(Y 寬度/2 + 1)
ICrCV_32S 單通道輸出 Cr 積分圖,尺寸為 (Y 高度/2 + 1)*(Y 寬度/2 + 1)

◆ matmuls8s32()

void cv::fastcv::matmuls8s32 ( InputArray src1,
InputArray src2,
OutputArray dst )

#include <opencv2/fastcv/arithm.hpp>

兩個 int8_t 型別矩陣的矩陣乘法。使用有符號整數輸入/輸出,而 cv::gemm 使用浮點輸入/輸出。matmuls8s32 在 Qualcomm 處理器上提供更高的速度。

引數
src1型別為 CV_8S 的第一源矩陣
src2型別為 CV_8S 的第二源矩陣
dst型別為 CV_32S 的結果矩陣

◆ meanShift()

int cv::fastcv::meanShift ( InputArray src,
Rect & rect,
TermCriteria termCrit )

#include <opencv2/fastcv/shift.hpp>

應用均值漂移(meanshift)程式並獲取最終收斂位置。該函式將均值漂移程式應用於原始影像(通常是機率圖)並獲取最終收斂位置。當達到所需精度或最大迭代次數時,收斂位置搜尋將停止。演算法中使用的矩(Moments)是以浮點數計算的。該函式與 cv::meanShift 並非位精確一致,但在 Snapdragon 處理器上提供了更好的延遲表現。

引數
src8 位、32 位整數或 32 位浮點灰度影像,通常是基於物件直方圖計算的機率圖
rect初始搜尋視窗位置,同時返回最終收斂的視窗位置
termCrit用於完成均值漂移的準則,包含兩個終止準則:1) epsilon:所需精度;2) max_iter:最大迭代次數
返回
迴圈停止時的迭代次數

◆ merge()

void cv::fastcv::merge ( InputArrayOfArrays mv,
OutputArray dst )

#include <opencv2/fastcv/channel.hpp>

從多個單通道 CV_8U 矩陣建立一個多通道矩陣。針對 Qualcomm 處理器進行了最佳化。

引數
mv待合併矩陣的輸入向量;mv 中的所有矩陣必須為 CV_8UC1 型別且具有相同尺寸。注意:矩陣數量可以是 2、3 或 4。
dst深度為 CV_8U 且尺寸與 mv[0] 相同的輸出陣列;通道數將是矩陣陣列中矩陣的總數

◆ moments()

cv::Moments cv::fastcv::moments ( InputArray _src,
bool binary )

#include <opencv2/fastcv/moments.hpp>

計算影像畫素強度的所有三階及以下矩。結果返回在 cv::Moments 結構中。此函式 cv::fastcv::moments() 使用浮點計算矩,而 cv::moments() 使用雙精度浮點計算矩。

引數
_src型別為 CV_8UC1、CV_32SC1、CV_32FC1 的輸入影像
binary如果為 true,則假設影像為二進位制(0x00 為黑,0xff 為白),否則假設影像為灰度。

◆ normalizeLocalBox()

void cv::fastcv::normalizeLocalBox ( InputArray _src,
OutputArray _dst,
Size pSize,
bool useStdDev )

#include <opencv2/fastcv/blur.hpp>

計算影像的區域性減法和對比度歸一化。影像的每個畫素都透過以該畫素為中心的色塊的均值和標準差進行歸一化。針對 Qualcomm 處理器進行了最佳化。

引數
_src輸入影像,應具有 CV_8U 或 CV_32F 單通道
_dst輸出陣列,應為單通道,如果 src 為 CV_8U 型別則為 CV_8S,如果 src 為 CV_32F 型別則為 CV_32F
pSize用於均值和標準差計算的色塊尺寸
useStdDev如果為 1,則均值和標準差都用於歸一化;如果為 0,則僅使用均值

◆ remap()

void cv::fastcv::remap ( InputArray src,
OutputArray dst,
InputArray map1,
InputArray map2,
int interpolation,
int borderValue = 0 )

#include <opencv2/fastcv/remap.hpp>

對灰度 CV_8UC1 影像應用通用的幾何變換。

引數
src第一輸入影像資料,型別為 CV_8UC1
dst輸出影像資料,型別為 CV_8UC1
map1浮點 CV_32FC1 矩陣,每個元素作為源影像中對映位置的列座標
map2浮點 CV_32FC1 矩陣,每個元素作為源影像中對映位置的行座標。
interpolation僅支援 INTER_NEAREST 和 INTER_LINEAR 插值
borderValue恆定畫素值

◆ remapRGBA()

void cv::fastcv::remapRGBA ( InputArray src,
OutputArray dst,
InputArray map1,
InputArray map2,
int interpolation )

#include <opencv2/fastcv/remap.hpp>

使用雙線性或最近鄰插值對 4 通道 CV_8UC4 影像應用通用幾何變換。

引數
src第一輸入影像資料,型別為 CV_8UC4
dst輸出影像資料,型別為 CV_8UC4
map1浮點 CV_32FC1 矩陣,每個元素作為源影像中對映位置的列座標
map2浮點 CV_32FC1 矩陣,每個元素作為源影像中對映位置的行座標。
interpolation僅支援 INTER_NEAREST 和 INTER_LINEAR 插值

◆ resizeDown()

void cv::fastcv::resizeDown ( cv::InputArray _src,
cv::OutputArray _dst,
Size dsize,
double inv_scale_x,
double inv_scale_y )

#include <opencv2/fastcv/scale.hpp>

使用指定的縮放因子或尺寸縮小影像。此函式支援單通道 (CV_8UC1) 和雙通道 (CV_8UC2) 影像。

引數
_src輸入影像資料,型別為 CV_8UC1 或 CV_8UC2。
_dst輸出影像資料,型別為 CV_8UC1 或 CV_8UC2。
dsize輸出影像的期望尺寸。如果為空,則使用 inv_scale_x 和 inv_scale_y 計算。
inv_scale_x寬度的逆縮放因子。如果提供了 dsize,則忽略此引數。
inv_scale_y高度的逆縮放因子。如果提供了 dsize,則忽略此引數。
注意
如果未指定 dsize,則 inv_scale_x 和 inv_scale_y 必須為正數。

◆ sepFilter2D()

void cv::fastcv::sepFilter2D ( InputArray _src,
OutputArray _dst,
int ddepth,
InputArray _kernelX,
InputArray _kernelY )

#include <opencv2/fastcv/blur.hpp>

使用可分運算元進行 NxN 相關運算。如果 srcImg 和 dstImg 指向同一地址且 srcStride 等於 dstStride,則會進行就地操作。最大到運算元寬度一半的邊界將被忽略。處理溢位的方式與 OpenCV 不同,該函式將對中間結果和最終結果進行右移。

引數
_src型別為 CV_8UC1 的輸入影像
_dst型別為 CV_8UC1、CV_16SC1 的輸出影像
ddepth輸出影像的深度
_kernelXx 方向的濾波器運算元資料
_kernelYY 方向的濾波器運算元資料(對於 CV_16SC1,kernelX 和 kernelY 應相同)
另請參閱
可分二維濾波 (sepFilter2D)

◆ sobel()

void cv::fastcv::sobel ( InputArray _src,
OutputArray _dx,
OutputArray _dy,
int kernel_size,
int borderType,
int borderValue )

#include <opencv2/fastcv/edges.hpp>

從源亮度資料建立不帶歸一化的 2D 梯度影像。計算 X 方向 1 階導數或 Y 方向 1 階導數,或同時計算兩者。

引數
_src型別為 CV_8UC1 的輸入影像
_dx儲存水平梯度的緩衝區。大小必須為 (dxyStride)*(height) 位元組。如果為 NULL,則不計算水平梯度。
_dy儲存垂直梯度的緩衝區。大小必須為 (dxyStride)*(height) 位元組。如果為 NULL,則不計算垂直梯度
kernel_sizeSobel 運算元尺寸,支援 3x3, 5x5, 7x7
borderType邊界型別,支援 BORDER_CONSTANT, BORDER_REPLICATE
borderValue恆定邊界的邊界值

◆ sobel3x3u8()

void cv::fastcv::sobel3x3u8 ( InputArray _src,
OutputArray _dst,
OutputArray _dsty = noArray(),
int ddepth = CV_8U,
bool normalization = false )

#include <opencv2/fastcv/edges.hpp>

從源亮度資料建立不帶歸一化的 2D 梯度影像。該函式在 3x3 鄰域上計算中心差分,然後將結果與 Sobel 運算元卷積,最大到運算元寬度一半的邊界將被忽略。

引數
_src型別為 CV_8UC1 的輸入影像
_dst如果給定了 _dsty,則是儲存水平梯度的緩衝區;否則,輸出 |dx|+|dy| 的 8 點陣圖像。緩衝區大小為 (srcwidth)*(srcheight) 位元組
_dsty(可選)儲存垂直梯度的緩衝區。尺寸必須為 (srcwidth)*(srcheight)。
ddepth輸出影像的深度:CV_8SC1, CV_16SC1, CV_32FC1
normalization是否對結果進行歸一化

◆ sobelPyramid()

void cv::fastcv::sobelPyramid ( InputArrayOfArrays pyr,
OutputArrayOfArrays dx,
OutputArrayOfArrays dy,
int outType = CV_8S )

#include <opencv2/fastcv/pyramid.hpp>

從影像金字塔建立梯度金字塔。注意:在梯度計算期間會忽略邊界。

引數
pyr單通道 8 點陣圖像的輸入金字塔。僅支援連續影像。
dx與 pyr 尺寸相同的水平 Sobel 梯度金字塔
dy與 pyr 尺寸相同的垂直 Sobel 梯度金字塔
outType輸出資料型別,可以是 CV_8S、CV_16S 或 CV_32F

◆ split()

void cv::fastcv::split ( InputArray src,
OutputArrayOfArrays mv )

#include <opencv2/fastcv/channel.hpp>

將 CV_8U 多通道矩陣拆分為多個 CV_8UC1 矩陣。針對 Qualcomm 處理器進行了最佳化。

引數
src深度為 CV_8U 的輸入 2、3 或 4 通道矩陣
mv尺寸為 src.channels() 的 CV_8UC1 矩陣輸出向量

◆ sumOfAbsoluteDiffs()

void cv::fastcv::dsp::sumOfAbsoluteDiffs ( cv::InputArray _patch,
cv::InputArray _src,
cv::OutputArray _dst )

#include <opencv2/fastcv/sad_dsp.hpp>

影像與 8x8 模板的絕對差之和(SAD)。

引數
_patch第一輸入影像資料,型別為 CV_8UC1
_src輸入影像資料,型別為 CV_8UC1
_dst輸出影像資料,型別為 CV_16UC1

◆ thresholdOtsu()

void cv::fastcv::dsp::thresholdOtsu ( InputArray _src,
OutputArray _dst,
bool type )

#include <opencv2/fastcv/thresh_dsp.hpp>

使用大津法(Otsu's method)對灰度影像進行二值化。如果畫素值大於閾值,則將其設定為 max(255);否則設定為 min(0)。搜尋使類內方差最小化的閾值。

引數
_src輸入 8 位灰度影像。緩衝區大小為 srcStride*srcHeight 位元組。
_dst輸出 8 位二值化影像。緩衝區大小為 dstStride*srcHeight 位元組。
type閾值型別,可以是 0 或 1。注意:對於閾值型別=0,如果畫素值大於閾值,則設定為 maxValue;否則設為零。對於閾值型別=1,如果畫素值大於閾值,則設定為零;否則設為 maxValue。

◆ thresholdRange()

void cv::fastcv::thresholdRange ( InputArray src,
OutputArray dst,
int lowThresh,
int highThresh,
int trueValue,
int falseValue )

#include <opencv2/fastcv/thresh.hpp>

根據一對閾值對灰度影像進行二值化。二值化後的影像將處於使用者選擇的兩個值中。該函式在 Snapdragon 處理器上提供了更好的延遲表現。

引數
src8 位灰度影像
dst與輸入影像尺寸和型別相同的輸出影像,可以與輸入影像相同
lowThresh用於二值化的低閾值
highThresh用於二值化的向閾值
trueValue如果源畫素在閾值對定義的閉區間範圍內,則分配給目標畫素的值
falseValue如果源畫素在閾值對定義的閉區間範圍外,則分配給目標畫素的值

◆ trackOpticalFlowLK() [1/2]

void cv::fastcv::trackOpticalFlowLK ( InputArray src,
InputArray dst,
InputArrayOfArrays srcPyr,
InputArrayOfArrays dstPyr,
InputArray ptsIn,
OutputArray ptsOut,
InputArray ptsEst,
OutputArray statusVec,
cv::Size winSize = cv::Size(7, 7),
cv::TermCriteria termCriteria = cv::TermCriteria(cv::TermCriteria::MAX_ITER|cv::TermCriteria::EPS, 7, 0.03f *0.03f) )

#include <opencv2/fastcv/tracking.hpp>

使用 Lucas-Kanade 演算法計算稀疏光流。接受 8 位無符號整數影像。在 Qualcomm 處理器上提供更快的執行速度。

引數
src型別為 8U 的輸入單通道影像,初始運動幀
dst型別為 8U 的輸入單通道影像,最終運動幀,應具有與初始幀相同的尺寸和步長
srcPyr從初始運動幀構建的金字塔
dstPyr從最終運動幀構建的金字塔
ptsIn起始點的初始子畫素座標陣列,應包含 32F 2D 元素
ptsOut計算出的最終點輸出陣列,應包含 32F 2D 元素
ptsEst最終點的估計輸入陣列,應包含 32F 2D 元素,可以為空
statusVec指示每個特徵狀態的 int32 值輸出陣列,可以為空
winSize用於光流搜尋的視窗尺寸。寬度和高度必須為奇數。建議值為 5、7 或 9
termCriteria包含最大迭代次數、最大 epsilon 和停止條件的終止準則

◆ trackOpticalFlowLK() [2/2]

void cv::fastcv::trackOpticalFlowLK ( InputArray src,
InputArray dst,
InputArrayOfArrays srcPyr,
InputArrayOfArrays dstPyr,
InputArrayOfArrays srcDxPyr,
InputArrayOfArrays srcDyPyr,
InputArray ptsIn,
OutputArray ptsOut,
OutputArray statusVec,
cv::Size winSize = cv::Size(7, 7),
int maxIterations = 7 )

#include <opencv2/fastcv/tracking.hpp>

LK 跟蹤函式 v1 版本的過載。

引數
src型別為 8U 的輸入單通道影像,初始運動幀
dst型別為 8U 的輸入單通道影像,最終運動幀,應具有與初始幀相同的尺寸和步長
srcPyr從初始運動幀構建的金字塔
dstPyr從最終運動幀構建的金字塔
srcDxPyrsrcPyr 的 X 方向 Sobel 導數金字塔
srcDyPyrsrcPyr 的 Y 方向 Sobel 導數金字塔
ptsIn起始點的初始子畫素座標陣列,應包含 32F 2D 元素
ptsOut計算出的最終點輸出陣列,應包含 32F 2D 元素
statusVec指示每個特徵狀態的 int32 值輸出陣列,可以為空
winSize用於光流搜尋的視窗尺寸。寬度和高度必須為奇數。建議值為 5、7 或 9
maxIterations嘗試的最大迭代次數

◆ warpAffine()

void cv::fastcv::warpAffine ( InputArray _src,
OutputArray _dst,
InputArray _M,
Size dsize,
int interpolation = INTER_LINEAR,
int borderValue = 0 )

#include <opencv2/fastcv/warp.hpp>

使用提供的變換矩陣對輸入影像執行仿射變換。

該函式根據變換矩陣執行兩種型別的操作

  1. 標準仿射變換 (2x3 矩陣)
    • 使用仿射矩陣變換整個輸入影像
    • 支援 CV_8UC1 和 CV_8UC3 型別
  2. 帶變換的色塊提取 (2x2 矩陣)
    • 從輸入影像中提取並變換一個色塊(patch)
    • 僅支援 CV_8UC1 型別
    • 如果輸入是 ROI:從原始影像的 ROI 中心提取色塊
    • 如果輸入是全圖:從影像中心提取色塊
引數
_src輸入影像。支援的格式:
  • CV_8UC1:8 位單通道
  • CV_8UC3:8 位三通道 - 僅限 2x3 矩陣
_dst輸出影像。將與 src 型別相同,尺寸由 dsize 指定
_M2x2/2x3 仿射變換矩陣(逆向對映)
dsize輸出尺寸
  • 對於 2x3 矩陣:輸出影像的尺寸
  • 對於 2x2 矩陣:提取出的色塊尺寸
interpolation插值方法。僅適用於 CV_8UC1 輸入的 2x3 變換。選項:
  • INTER_NEAREST:最近鄰插值
  • INTER_LINEAR:雙線性插值(預設)
  • INTER_AREA:基於區域的插值
  • INTER_CUBIC:雙三次插值。注意:CV_8UC3 輸入內部始終使用雙三次插值
borderValue邊界畫素的恆定畫素值。僅適用於單通道輸入的 2x3 變換。
注意
仿射矩陣遵循逆向對映約定,應用於目標座標以生成相應的源座標。
該函式使用 'FASTCV_BORDER_CONSTANT' 處理邊界,並採用指定的 'borderValue'。

◆ warpPerspective()

void cv::fastcv::warpPerspective ( InputArray _src,
OutputArray _dst,
InputArray _M0,
Size dsize,
int interpolation,
int borderType,
const Scalar & borderValue )

#include <opencv2/fastcv/warp.hpp>

使用透視變換對影像進行變換,與 cv::warpPerspective 相同,但並非位精確一致。

引數
_src輸入 8 點陣圖像。
_dst輸出 8 點陣圖像。
_M03x3 透視變換矩陣。
dsize輸出影像的尺寸。
interpolation插值方法。僅支援 cv::INTER_NEAREST, cv::INTER_LINEARcv::INTER_AREA
borderType畫素外推方法。僅支援 cv::BORDER_CONSTANT, cv::BORDER_REPLICATEcv::BORDER_TRANSPARENT
borderValue用於恆定邊界情況的值。

◆ warpPerspective2Plane()

void cv::fastcv::warpPerspective2Plane ( InputArray _src1,
InputArray _src2,
OutputArray _dst1,
OutputArray _dst2,
InputArray _M0,
Size dsize )

#include <opencv2/fastcv/warp.hpp>

使用相同的變換對兩個影像進行透視變換。適用時使用雙線性插值。例如,同時對一個灰度影像和一個 alpha 影像進行變換,或對兩個顏色通道進行變換。

引數
_src1第一輸入 8 點陣圖像。緩衝區大小為 src1Stride*srcHeight 位元組。
_src2第二輸入 8 點陣圖像。緩衝區大小為 src2Stride*srcHeight 位元組。
_dst1第一個變換後的輸出影像(對應 src1)。緩衝區大小為 dst1Stride*dstHeight 位元組,型別為 CV_8UC1
_dst2第二個變換後的輸出影像(對應 src2)。緩衝區大小為 dst2Stride*dstHeight 位元組,型別為 CV_8UC1
_M03x3 透視變換矩陣(逆向對映)
dsize輸出影像尺寸