最近我打开了用于图像和数据处理的 opencv 编程库,在尝试让软件工作的过程中,我决定我只是厌倦了将库放到我的计算机上是多么复杂. 是否有另一个库或框架允许用户在 c++ 中与相机和图像处理进行交互,但不需要像 OpenCV 那样进行如此繁琐的工作来获取和安装?
编辑:我在使用 opencsv 时遇到困难的原因是因为我不想使用 IDE 来开发我的任何程序,我正在尝试从 cmd 行和 vim 学习使用 gdb 进行编辑
您能否具体说明您使用的是哪个平台以及遇到了什么问题?
我怀疑您的许多问题与 OpenCV 本身无关,而是您在使用任何 C++ 库时都会遇到的一般问题。例如,获得一个 64 位编译器、一个不错的 IDE、编译 OpenCV 以及如果需要它的一些依赖项。这实际上确实会成为一种麻烦。你用的是什么平台?我发现具有良好软件包存储库的 Linux 发行版使这种方式更容易,因为您可以非常轻松地设置所需的工具,并且通常通过存储库安装许多构建依赖项,而无需自己编译它们。
如果您确实遇到了与 OpenCV 严格相关的问题,那么 ITK (http://www.itk.org/) 可能是一个不错的选择。
最好的,
您可以分 8 步使用它
#include <cv.h>
#include <highgui.h>
using namespace cv;
int main( int argc, char** argv )
{
Mat image;
image = imread( argv[1], 1 );
if( argc != 2 || !image.data )
{
printf( "No image data \n" );
return -1;
}
namedWindow( "Display Image", CV_WINDOW_AUTOSIZE );
imshow( "Display Image", image );
waitKey(0);
return 0;
}
在 Linux 中。
当我进行大量图像处理时,我会处理位图。将文件读入内存并记下BITMAPFILEHEADER。有更多信息,但您可以在像素数据中查找偏移量。您也可以使用 Directshow 从网络摄像头获取帧。
创建一个包装器以公开一些用户友好的函数,如 getPixel() 等。
然后我会查看论文+博客等,看看我是否可以自己编写算法,有时传递一些图像来说出 FaceTracking(ImageData 数据)函数太容易了。