OpenCV 4.13.0
開源電腦視覺 (Open Source Computer Vision)
載入中...
搜尋中...
無符合項
FastCV 硬體加速功能的模組包裝器

詳細描述

類別

class  cv::fastcv::FCVMSER
 用於灰階影像的 MSER 斑點偵測器。 更多資訊...
 
class  cv::fastcv::QcAllocator
 Qualcomm 的客製化記憶體配置器。此配置器使用 Qualcomm 的記憶體管理功能。 更多資訊...
 
class  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 像素直徑。此濾波器不支援就地操作。
 
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)
 從單一原始影像建立浮點數 32 位元影像金字塔,根據預設層級逐級縮小。此 API 支援 ORB 縮放和縮小一半。
 
void cv::fastcv::calcHist (InputArray _src, OutputArray _hist)
 計算輸入影像的直方圖。此功能以優化方式實現了針對 8 位元無符號單通道影像的 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)
 繪製凸多邊形。此函數使用指定顏色填充凸多邊形的內部。要求寬度和步長為 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)
 套用均值漂移程序並取得最終收斂位置。此函數對原始影像(通常是概率影像)套用均值漂移程序並取得最終收斂位置。收斂位置搜尋將在達到所需精度或最大迭代次數時停止。演算法中使用的矩以浮點數計算。此函數與 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)
 從來源亮度資料建立二維梯度影像,不進行正規化。同時計算 X 方向一階導數或 Y 方向一階導數或兩者。
 
void cv::fastcv::sobel3x3u8 (InputArray _src, OutputArray _dst, OutputArray _dsty=noArray(), int ddepth=CV_8U, bool normalization=false)
 從來源亮度資料建立二維梯度影像,不進行正規化。此函數計算 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 模板的絕對差和。
 
void cv::fastcv::dsp::thresholdOtsu (InputArray _src, OutputArray _dst, bool type)
 使用 Otsu 方法將灰階影像二值化。如果像素值大於閾值,則將像素設為最大值(255);否則,將像素設為最小值(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 影像,或變形兩個色彩通道。
 

函式文件

◆ 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結果矩陣,類型與 src 矩陣相同
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 像素直徑。此濾波器不支援就地操作。

參數
_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 教授的論文 "Recursive Bilateral Filtering, ECCV2012" 中的演算法描述。此函數與 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>

從單一原始影像建立浮點數 32 位元影像金字塔,根據預設層級逐級縮小。此 API 支援 ORB 縮放和縮小一半。

參數
src類型為 8U 或 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>

計算輸入影像的直方圖。此功能以優化方式實現了針對 8 位元無符號單通道影像的 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 更快的執行時間。

參數
points8 位元無符號類型點陣列,每行代表一個點。大小為 N 行 D 列,可以是非連續的。
clusterCenters32 位元浮點數類型初始叢集中心陣列,每行代表一個中心。大小設定為 K 行 D 列,可以是非連續的。
newClusterCenters結果叢集中心陣列,類型為 32 位元浮點數,每行代表找到的中心。大小設定為 K 行 D 列。
clusterSizes結果叢集成員計數陣列,類型為 uint32,大小設定為 1 行 K 列。
clusterBindings結果點索引陣列,類型為 uint32,每個索引表示對應點所屬的叢集。大小設定為 1 行 numPointsUsed 列。
clusterSumDists結果距離總和陣列,類型為 32 位元浮點數,每個數字是每個叢集中心到其所屬點的距離總和。大小設定為 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` 函數的文檔。
coordsCV_32S 輸出陣列,包含偵測到的角點的交錯 x, y 座標
scores可選輸出陣列,包含偵測到的角點的分數。分數是仍能驗證偵測到的角點的最高閾值。分數值越高表示角點特徵越強。例如,分數為 108 的角點比分數為 50 的角點強。
barrierFAST 閾值。該閾值用於比較中心像素與圍繞該像素的圓上像素的強度值差異。
border從影像頂部、底部、右側、左側忽略的像素數量。如果小於 4,則預設為 4。
nmsEnabled啟用非最大抑制以修剪弱關鍵點

◆ 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 的冪次方。

參數
srcCV_8UC1 的輸入陣列。對於二維情況,矩陣的維度必須是 2 的冪次方;對於一維情況,高度必須為 1,而寬度必須是 2 的冪次方。
dst計算出的 FFT 矩陣,類型為 CV_32FC2。FFT 的實部和虛部係數儲存在不同的通道中。因此,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 接受浮點數或複數陣列。

參數
srcCV_8UC1 的輸入陣列。對於二維情況,矩陣的維度必須是 2 的冪次方;對於一維情況,高度必須為 1,而寬度必須是 2 的冪次方。
dst計算出的 FFT 矩陣,類型為 CV_32FC2。FFT 的實部和虛部係數儲存在不同的通道中。因此,dst 的維度為 (srcWidth, srcHeight)。

◆ fillConvexPoly()

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

#include <opencv2/fastcv/draw.hpp>

繪製凸多邊形。此函數使用指定顏色填充凸多邊形的內部。要求寬度和步長為 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,src 大小應大於 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計算出的 IFFT 矩陣,類型為 CV_8U。矩陣是實數值且沒有虛部。因此,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計算出的 IFFT 矩陣,類型為 CV_8U。矩陣是實數值且沒有虛部。因此,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>

套用均值漂移程序並取得最終收斂位置。此函數對原始影像(通常是概率影像)套用均值漂移程序並取得最終收斂位置。收斂位置搜尋將在達到所需精度或最大迭代次數時停止。演算法中使用的矩以浮點數計算。此函數與 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>

從來源亮度資料建立二維梯度影像,不進行正規化。同時計算 X 方向一階導數或 Y 方向一階導數或兩者。

參數
_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>

從來源亮度資料建立二維梯度影像,不進行正規化。此函數計算 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>

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

參數
pyr1 通道 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 模板的絕對差和。

參數
_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 方法將灰階影像二值化。如果像素值大於閾值,則將像素設為最大值(255);否則,將像素設為最小值(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 矩陣)
    • 從輸入影像中提取並變換區塊
    • 僅支援 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_NEARESTcv::INTER_LINEARcv::INTER_AREA
borderType像素外推方法。僅支援 cv::BORDER_CONSTANTcv::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輸出影像大小