![]() |
OpenCV 4.12.0
開源計算機視覺
|
類 | |
| 類 | cv::cuda::DisparityBilateralFilter |
| 使用聯合雙邊濾波細化視差圖的類。 : 更多... | |
| 類 | cv::cuda::StereoBeliefPropagation |
| 使用信念傳播演算法計算立體匹配的類。 : 更多... | |
| 類 | cv::cuda::StereoBM |
| 使用塊匹配演算法計算立體匹配(視差圖)的類。 : 更多... | |
| 類 | cv::cuda::StereoConstantSpaceBP |
| 使用常數空間信念傳播演算法計算立體匹配的類。 : 更多... | |
| 類 | cv::cuda::StereoSGM |
| 該類實現了修改後的 H. Hirschmuller 演算法 [128]。限制和差異如下: 更多... | |
| Ptr< cuda::DisparityBilateralFilter > cv::cuda::createDisparityBilateralFilter | ( | int | ndisp = 64, |
| int | radius = 3, | ||
| int | iters = 1 ) |
#include <opencv2/cudastereo.hpp>
建立 DisparityBilateralFilter 物件。
| ndisp | 視差數量。 |
| radius | 濾波器半徑。 |
| iters | Number of iterations. |
| Ptr< cuda::StereoBeliefPropagation > cv::cuda::createStereoBeliefPropagation | ( | int | ndisp = 64, |
| int | iters = 5, | ||
| int | levels = 5, | ||
| int | msg_type = CV_32F ) |
#include <opencv2/cudastereo.hpp>
建立 StereoBeliefPropagation 物件。
| ndisp | 視差數量。 |
| iters | 每個級別上的 BP 迭代次數。 |
| levels | 級別數量。 |
| msg_type | 訊息型別。支援 CV_16SC1 和 CV_32FC1 型別。 |
| Ptr< cuda::StereoBM > cv::cuda::createStereoBM | ( | int | numDisparities = 64, |
| int | blockSize = 19 ) |
#include <opencv2/cudastereo.hpp>
建立 StereoBM 物件。
| numDisparities | 視差搜尋範圍。對於每個畫素,演算法將從 0(預設最小視差)到 numDisparities 中找到最佳視差。搜尋範圍可以透過改變最小視差來調整。 |
| blockSize | 演算法比較的塊的線性大小。大小應為奇數(因為塊以當前畫素為中心)。較大的塊大小意味著更平滑但精度較低的視差圖。較小的塊大小提供更詳細的視差圖,但演算法找到錯誤匹配的可能性更高。 |
| Ptr< cuda::StereoConstantSpaceBP > cv::cuda::createStereoConstantSpaceBP | ( | int | ndisp = 128, |
| int | iters = 8, | ||
| int | levels = 4, | ||
| int | nr_plane = 4, | ||
| int | msg_type = CV_32F ) |
#include <opencv2/cudastereo.hpp>
建立 StereoConstantSpaceBP 物件。
| ndisp | 視差數量。 |
| iters | 每個級別上的 BP 迭代次數。 |
| levels | 級別數量。 |
| nr_plane | 第一層上的視差級別數量。 |
| msg_type | 訊息型別。支援 CV_16SC1 和 CV_32FC1 型別。 |
| Ptr< cuda::StereoSGM > cv::cuda::createStereoSGM | ( | int | minDisparity = 0, |
| int | numDisparities = 128, | ||
| int | P1 = 10, | ||
| int | P2 = 120, | ||
| int | uniquenessRatio = 5, | ||
| int | mode = cv::cuda::StereoSGM::MODE_HH4 ) |
#include <opencv2/cudastereo.hpp>
建立 StereoSGM 物件。
| minDisparity | 最小可能視差值。通常為零,但有時校正演算法會使影像發生偏移,因此需要相應地調整此引數。 |
| numDisparities | 最大視差減去最小視差。值必須為 64、128 或 256。 |
| P1 | 控制視差平滑度的第一個引數。此引數用於傾斜表面(非正面平行)的情況。 |
| P2 | 控制視差平滑度的第二個引數。此引數用於“解決”深度不連續問題。 |
| uniquenessRatio | 最佳(最小)計算成本函式值應“勝過”次佳值以被視為正確匹配的百分比裕量。通常,5-15 範圍內的值就足夠了。 |
| mode | 將其設定為 StereoSGM::MODE_HH 以執行完整尺度的兩遍動態規劃演算法。它將消耗 O(W*H*numDisparities) 位元組。預設情況下,它設定為 StereoSGM::MODE_HH4。 |
| void cv::cuda::drawColorDisp | ( | InputArray | src_disp, |
| OutputArray | dst_disp, | ||
| int | ndisp, | ||
| Stream & | stream = Stream::Null() ) |
#include <opencv2/cudastereo.hpp>
為視差影像著色。
| src_disp | 輸入單通道 8 位無符號、16 位有符號、32 位有符號或 32 位浮點視差影像。如果使用 16 位有符號格式,則假定值沒有小數位。 |
| dst_disp | 輸出視差影像。它與 src_disp 具有相同的大小。型別為 BGRA 格式的 CV_8UC4(alpha = 255)。 |
| ndisp | 視差數量。 |
| 流 | 非同步版本的流。 |
此函式透過首先將視差值從 [0..ndisp) 區間轉換為 HSV 顏色空間(其中不同的視差值對應不同的色相),然後將畫素轉換為 RGB 以進行視覺化,從而繪製彩色視差圖。
|
inline |
| void cv::cuda::reprojectImageTo3D | ( | InputArray | disp, |
| OutputArray | xyzw, | ||
| InputArray | Q, | ||
| int | dst_cn = 4, | ||
| Stream & | stream = Stream::Null() ) |
#include <opencv2/cudastereo.hpp>
將視差影像重新投影到3D空間。
| disp | 輸入單通道 8 位無符號、16 位有符號、32 位有符號或 32 位浮點視差影像。如果使用 16 位有符號格式,則假定值沒有小數位。 |
| xyzw | 大小與 disp 相同的 3 或 4 通道浮點影像。xyzw(x,y) 的每個元素包含根據視差圖計算出的點 (x,y) 的 3D 座標 (x,y,z) 或 (x,y,z,1)。 |
| Q | 可透過 stereoRectify 獲得的 \(4 \times 4\) 透視變換矩陣。 |
| dst_cn | 輸出影像的通道數。可以是 3 或 4。 |
| 流 | 非同步版本的流。 |