在ubuntu上运行opencv自带的相机标定实例程序的详细步骤C++
时间: 2024-10-15 22:28:00 浏览: 27
opencv3/C++ 使用Tracker实现简单目标跟踪
在Ubuntu系统上运行OpenCV自带的相机标定实例程序,通常涉及到安装必要的库、设置环境变量以及执行包含标定功能的示例代码。以下是详细的步骤:
1. **安装依赖**:
- 首先确保已安装了Ubuntu的开源软件包管理器`apt`:
```
sudo apt-get update
sudo apt-get install build-essential cmake git libgtk2.0-dev pkg-config libavcodec-dev libavformat-dev libswscale-dev v4l-utils libjpeg-dev libtiff5-dev libjasper-dev libpng-dev libopenblas-dev libatlas-base-dev gfortran
```
2. **下载并配置OpenCV源码**:
- 使用git克隆OpenCV仓库到本地:
```
git clone https://github.com/opencv/opencv.git
git clone https://github.com/opencv/opencv_contrib.git
```
- 创建一个build目录,并进入该目录进行配置:
```
mkdir opencv-build && cd opencv-build
cmake -D CMAKE_BUILD_TYPE=RELEASE \
-D OPENCV_EXTRA_MODULES_PATH=../opencv_contrib/modules \
-D INSTALL_PYTHON_EXAMPLES=ON \
-D BUILD_opencv_python3=ON ..
```
3. **编译并安装OpenCV**:
```
make -j$(nproc)
sudo make install
```
4. **获取相机标定样本**:
- 在OpenCV的src目录下找到`calib3d`模块下的`samples/cpp/tutorial_code/stereo_calib.cpp`文件。
5. **运行示例程序**:
- 编译这个C++文件,例如:
```
g++ -o calibrate_stereo calibration_example.cpp `pkg-config --cflags --libs opencv4`
```
- 运行程序,提供所需的输入参数,如视频流路径或直接连接摄像头(如果摄像头可用):
```
./calibrate_stereo <video_path> [optional arguments]
```
或者,如果想通过摄像头进行校准,可以省略视频路径:
```
./calibrate_stereo
```
6. **注意**: 校准过程可能需要用户交互,指示标定板在不同视角的位置。完成后,程序会生成相机内参矩阵和畸变系数文件。
**相关问题--:**
1. 如何确认标定是否成功?
2. 如果没有视频流,如何从摄像头捕获数据?
3. 如何查看生成的相机参数文件?
阅读全文