![]() |
OpenCV 4.13.0
開源計算機視覺庫 (Open Source Computer Vision)
|
主題 | |
| Widget | |
本節描述了3D視覺化視窗以及用於與其互動的類和方法。
3D視覺化視窗(參見 Viz3d)用於顯示小部件(參見 Widget),並提供了一些方法來與場景和小部件進行互動。
類 | |
| 類 | cv::viz::Camera |
| 此類封裝了相機的內參。 更多... | |
| 類 | cv::viz::Color |
| 此類以BGR順序表示顏色。 更多... | |
| 類 | cv::viz::KeyboardEvent |
| 此類表示鍵盤事件。 更多... | |
| 類 | cv::viz::Mesh |
| 此類封裝了網格屬性,可以從 ply 檔案載入網格。 : 更多... | |
| 類 | cv::viz::MouseEvent |
| 此類表示滑鼠事件。 更多... | |
| 類 | cv::viz::Viz3d |
| Viz3d 類代表一個3D視覺化視窗。此類隱式共享。 更多... | |
函式 | |
| void | cv::viz::computeNormals (const Mesh &mesh, OutputArray normals) |
| Viz3d | cv::viz::getWindowByName (const String &window_name) |
| 透過其名稱檢索視窗。 | |
| Viz3d | cv::viz::imshow (const String &window_name, InputArray image, const Size &window_size=Size(-1, -1)) |
| 在指定視窗中顯示影像。 | |
| template<typename _Tp > | |
| bool | cv::viz::isNan (const Point3_< _Tp > &p) |
| 檢查 float/double 值是否為 nan。 | |
| template<typename _Tp , int cn> | |
| bool | cv::viz::isNan (const Vec< _Tp, cn > &v) |
| 檢查 float/double 值是否為 nan。 | |
| bool | cv::viz::isNan (double x) |
| 檢查 float/double 值是否為 nan。 | |
| bool | cv::viz::isNan (float x) |
| 檢查 float/double 值是否為 nan。 | |
| Affine3d | cv::viz::makeCameraPose (const Vec3d &position, const Vec3d &focal_point, const Vec3d &y_dir) |
| 從位置、焦點和向上向量構造相機位姿(有關更多資訊,請參閱 gluLookAt())。 | |
| Affine3d | cv::viz::makeTransformToGlobal (const Vec3d &axis_x, const Vec3d &axis_y, const Vec3d &axis_z, const Vec3d &origin=Vec3d::all(0)) |
| 獲取座標系資料並構建到全域性座標系的變換。 | |
| Mat | cv::viz::readCloud (const String &file, OutputArray colors=noArray(), OutputArray normals=noArray()) |
| Mesh | cv::viz::readMesh (const String &file) |
| 讀取網格。目前僅支援 ply 格式,且不支援紋理載入。 | |
| bool | cv::viz::readPose (const String &file, Affine3d &pose, const String &tag="pose") |
| 讀/寫位姿和軌跡。 | |
| void | cv::viz::readTrajectory (OutputArray traj, const String &files_format="pose%05d.xml", int start=0, int end=INT_MAX, const String &tag="pose") |
| void | cv::viz::unregisterAllWindows () |
| 從內部資料庫登出所有 Viz 視窗。之後,“getWindowByName()”將建立新視窗,而不是從資料庫獲取現有視窗。 | |
| void | cv::viz::writeCloud (const String &file, InputArray cloud, InputArray colors=noArray(), InputArray normals=noArray(), bool binary=false) |
| 讀/寫點雲。支援的格式:ply、xyz、obj 和 stl(僅讀)。 | |
| void | cv::viz::writePose (const String &file, const Affine3d &pose, const String &tag="pose") |
| void | cv::viz::writeTrajectory (InputArray traj, const String &files_format="pose%05d.xml", int start=0, const String &tag="pose") |
| void cv::viz::computeNormals | ( | const Mesh & | mesh, |
| OutputArray | normals ) |
#include <opencv2/viz/vizcore.hpp>
透過其名稱檢索視窗。
| window_name | 要檢索的視窗名稱。 |
此函式返回一個具有給定名稱的 Viz3d 物件。
| Viz3d cv::viz::imshow | ( | const String & | window_name, |
| InputArray | 影像, | ||
| const Size & | window_size = Size(-1, -1) ) |
#include <opencv2/viz/vizcore.hpp>
在指定視窗中顯示影像。
|
內聯 |
|
內聯 |
| Affine3d cv::viz::makeCameraPose | ( | const Vec3d & | position, |
| const Vec3d & | focal_point, | ||
| const Vec3d & | y_dir ) |
#include <opencv2/viz/vizcore.hpp>
從位置、焦點和向上向量構造相機位姿(有關更多資訊,請參閱 gluLookAt())。
| position | 相機在全域性座標系中的位置。 |
| focal_point | 相機在全域性座標系中的焦點。 |
| y_dir | 相機在全域性座標系中的向上向量。 |
此函式返回相機在全域性座標系中的位姿。
| Affine3d cv::viz::makeTransformToGlobal | ( | const Vec3d & | axis_x, |
| const Vec3d & | axis_y, | ||
| const Vec3d & | axis_z, | ||
| const Vec3d & | origin = Vec3d::all(0) ) |
#include <opencv2/viz/vizcore.hpp>
獲取座標系資料並構建到全域性座標系的變換。
| axis_x | X 軸向量在全域性座標系中。 |
| axis_y | Y 軸向量在全域性座標系中。 |
| axis_z | Z 軸向量在全域性座標系中。 |
| origin | 座標系的原點在全域性座標系中。 |
| Mat cv::viz::readCloud | ( | const String & | file, |
| OutputArray | colors = noArray(), | ||
| OutputArray | normals = noArray() ) |
#include <opencv2/viz/vizcore.hpp>
| file | 帶副檔名的檔名。支援的格式:PLY, XYZ, OBJ 和 STL。 |
| colors | 僅用於 PLY 和 STL 格式。 |
| normals | 僅用於 PLY, OBJ 和 STL 格式。 |
#include <opencv2/viz/vizcore.hpp>
讀取網格。目前僅支援 ply 格式,且不支援紋理載入。
| void cv::viz::readTrajectory | ( | OutputArray | traj, |
| const String & | files_format = "pose%05d.xml", | ||
| int | start = 0, | ||
| int | end = INT_MAX, | ||
| const String & | tag = "pose" ) |
#include <opencv2/viz/vizcore.hpp>
接受 vector<Affine3<T>>,其中 T = float/double,並從檔案序列載入位姿
| traj | 包含位姿列表的輸出陣列。可以是
|
| files_format | 用於構造檔名的格式說明符字串。字串中唯一的佔位符應支援 int。 |
| start | files_format 的起始計數器。必須大於或等於 0。 |
| end (結束迭代器) | files_format 的最終計數器。 |
| tag | 檔案中的矩陣名稱。 |
| void cv::viz::unregisterAllWindows | ( | ) |
#include <opencv2/viz/vizcore.hpp>
從內部資料庫登出所有 Viz 視窗。之後,“getWindowByName()”將建立新視窗,而不是從資料庫獲取現有視窗。
| void cv::viz::writeCloud | ( | const String & | file, |
| InputArray | cloud, | ||
| InputArray | colors = noArray(), | ||
| InputArray | normals = noArray(), | ||
| bool | binary = false ) |
#include <opencv2/viz/vizcore.hpp>
讀/寫點雲。支援的格式:ply、xyz、obj 和 stl(僅讀)。
| file | 帶副檔名的檔名。支援的格式:PLY, XYZ 和 OBJ。 |
| cloud | 支援的深度:CV_32F 和 CV_64F。支援的通道數:3 和 4。 |
| colors | 僅用於 PLY 格式。支援的深度:CV_8U。支援的通道數:1、3 和 4。 |
| normals | 僅用於 PLY 和 OBJ 格式。支援的深度:CV_32F 和 CV_64F。支援的通道數:3 和 4。 |
| binary | 僅用於 PLY 格式。 |
#include <opencv2/viz/vizcore.hpp>
| file | 檔名。 |
| pose | 輸入矩陣。 |
| tag | 要儲存到給定檔案中的位姿名稱。 |
| void cv::viz::writeTrajectory | ( | InputArray | traj, |
| const String & | files_format = "pose%05d.xml", | ||
| int | start = 0, | ||
| const String & | tag = "pose" ) |
#include <opencv2/viz/vizcore.hpp>
接受 vector<Affine3<T>>,其中 T = float/double,並將其寫入具有給定檔名格式的檔案序列