opencv-3.4.0编译时报错缺少boostdesc_b
时间: 2023-05-12 09:00:49 浏览: 102
OpenCV是一个计算机视觉库,其版本3.4.0编译时报错缺少boostdesc_b,可能是因为缺少相应的依赖库文件。boostdesc_b是指Boost库的梯度描述符子库,用于计算图像中每个像素点的梯度方向和幅值。解决方法如下:
1. 确认安装了Boost库和子库,若没有则下载并安装Boost库以及梯度描述符的子库。
2. 在OpenCV源代码目录的CMakeLists.txt文件中寻找相关模块的配置选项,在选项中明确指出Boost库和子库的路径。
3. 如果选项中未发现相应设置,手动添加以下配置项:
SET(BOOST_ROOT /path/to/boost)
SET(BOOST_LIBRARYDIR /path/to/boost/lib)
其中,/path/to/boost为Boost库在系统中的路径。这样OpenCV的编译过程就能找到相应的依赖库文件,避免了缺少boostdesc_b导致报错的问题。
总之,解决OpenCV编译时缺少boostdesc_b的问题需要安装和配置相应的Boost库和梯度描述符子库,以便让编译过程正常运行并成功生成OpenCV库文件。
相关问题
编译opencv 以及 openc_contrib 提示缺少boostdesc_bgm.i文件出错的解决
在编译OpenCV以及opencv_contrib时出现缺少boostdesc_bgm.i文件的错误提示,这通常是由于缺少boostdesc模块所需要的文件或者依赖库。要解决这个问题,我们可以按照以下步骤进行处理:
首先,确定我们已经正确下载了OpenCV和opencv_contrib的源代码,并且安装了CMake和其他编译所需要的工具。
其次,检查boostdesc_bgm.i文件是否位于正确的位置。如果该文件确实缺失,我们需要找到boostdesc模块的源代码,并将该文件手动添加到对应的目录中。
如果boostdesc_bgm.i文件并不是缺失,而是因为OpenCV版本不匹配或者依赖库未安装等原因导致的问题,那么我们需要升级或者重新安装相应的库,并重新配置OpenCV的编译环境。
另外,如果我们使用的是CMake进行编译,可以尝试在配置过程中手动添加boostdesc模块的路径,以确保CMake能够正确地找到所需的文件。
最后,重新执行编译过程,如果以上步骤都没有解决问题,我们可以尝试查看OpenCV官方文档或者在相关的论坛和社区中寻求帮助,获取更多详细的解决方案。
总的来说,解决缺少boostdesc_bgm.i文件的错误,需要我们对OpenCV和opencv_contrib的编译环境进行全面的检查和调整,确保所有的依赖文件和库都得到正确的配置和安装。
delphi11 delphi-opencv-master ocv.imgproc_c
在 Delphi11 中使用 `delphi-opencv-master` 进行图像处理和计算机视觉操作,需要使用 OpenCV 库中的一些函数和类。在 `delphi-opencv-master` 中,这些函数和类都被封装在不同的单元中,你可以通过使用 `uses` 语句来引入这些单元。
如果你想使用 `ocv.imgproc_c` 单元中的函数,可以通过以下步骤实现:
1. 在 Delphi11 中打开你的项目,然后在菜单栏中选择 `Project` -> `Options` -> `Delphi Compiler` -> `Search Path`,将 `OpenCV` 文件夹所在的路径添加到搜索路径中。
2. 在 Delphi11 中使用 `uses` 语句引入 `ocv.imgproc_c` 单元,并调用其中的函数来进行图像处理操作。
例如,以下代码演示了如何使用 `ocv.imgproc_c` 单元中的 `cvSmooth` 函数对图像进行平滑处理:
```
uses
OpenCV_Core, ocv.imgproc_c, OpenCV_Image;
var
img: IplImage;
begin
// 读取图像
img := LoadImage('lena.jpg');
// 将图像转换为灰度图像
cvCvtColor(img, img, CV_RGB2GRAY);
// 对图像进行平滑处理
cvSmooth(img, img, CV_GAUSSIAN, 5, 5);
// 显示图像
ShowImage('My Image', img);
// 等待用户按下任意键
WaitKey;
// 释放图像内存
img.Release;
end;
```
这段代码使用了 `OpenCV_Core`、`ocv.imgproc_c` 和 `OpenCV_Image` 三个单元中提供的函数和类来进行图像处理和计算机视觉操作。其中,使用了 `ocv.imgproc_c` 单元中提供的 `cvSmooth` 函数对图像进行平滑处理。你可以根据自己的需要,使用 `delphi-opencv-master` 中提供的其他函数和类来进行更加复杂的图像处理和计算机视觉操作。