【问题标题】:Effective way to get into image processing with C++?使用 C++ 进行图像处理的有效方法?
【发布时间】:2012-09-01 18:32:56
【问题描述】:

最近我打开了用于图像和数据处理的 opencv 编程库,在尝试让软件工作的过程中,我决定我只是厌倦了获取这些库的复杂性到我的电脑上。是否有另一个库或框架允许用户在 c++ 中与相机和图像处理进行交互,但不需要像 OpenCV 那样进行如此繁琐的工作来获取和安装?

编辑:我在使用 opencsv 时遇到困难的原因是因为我不想使用 IDE 来开发我的任何程序,我正在尝试从 cmd 行和 vim 学习使用 gdb 进行编辑

【问题讨论】:

  • 谁说需要 IDE 才能使用 OpenCV?
  • 我知道你不知道,但是在没有IDE的情况下安装和使用opencv的方法非常复杂
  • 您可以只使用二进制文件而无需构建任何东西,这非常容易。下载最新的,解压,把bin文件夹放到系统路径下就大功告成了。还要检查this,它用图片描述它非常好。

标签: c++ arrays image opencv camera


【解决方案1】:

当我进行大量图像处理时,我会处理位图。将文件读入内存并记下BITMAPFILEHEADER。有更多信息,但您可以在像素数据中查找偏移量。您也可以使用 Directshow 从网络摄像头获取帧。

创建一个包装器以公开一些用户友好的函数,如 getPixel() 等。

然后我会查看论文+博客等,看看我是否可以自己编写算法,有时传递一些图像来说 FaceTracking(ImageData data) 函数太容易了。

【讨论】:

    【解决方案2】:

    能否具体说明您使用的是哪个平台以及遇到了什么问题?

    我怀疑您的许多问题与 OpenCV 本身无关,而是您在使用任何 C++ 库时都会遇到的一般问题。例如。获得一个 64 位编译器,一个不错的 IDE,编译 OpenCV 以及如果需要它的一些依赖项。这实际上确实会成为一种麻烦。你用的是什么平台?我发现具有良好软件包存储库的 Linux 发行版使这种方式变得更容易,因为您可以非常轻松地设置所需的工具,并且通常通过存储库安装许多构建依赖项,而无需自己编译它们。

    如果您确实遇到了与 OpenCV 严格相关的问题,ITK (http://www.itk.org/) 可能是一个不错的选择。

    最好的,

    【讨论】:

    • 我使用的是 Windows 7。在阅读本文之前,我找到了一种让程序正常工作的方法,但它仍然不是我想要的。我确实有一台 Linux 机器,我可以尝试在另一个位置运行它,我过去也发现在 Linux 上安装某些东西更容易。也感谢 ITK 参考。
    【解决方案3】:

    你可以用这个in 8-steps

    #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 中。

    Windows also needs 8-steps.

    You can call MATLAB engine from C/C++ . Matlab has image-processing too!

    【讨论】:

    • 我不希望使用 IDE 进行编程,但如果我通过 eclipse 安装 opencv 插件和库,那么我可以从命令行编辑和编译我的程序吗?
    • 有很多命令行选项/参数,Eclipse 使用它们。但是设置路径变量可能会令人沮丧。
    猜你喜欢
    • 2011-08-10
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-08-27
    • 2020-10-22
    • 1970-01-01
    • 2011-06-13
    相关资源
    最近更新 更多