第 5 章 HALCON/C++ 接口基础知识

HALCON/C++ 接口为在 C++ 程序中使用 HALCON 功能提供了两种不同的方法:过程式面向对象方法。过程式方法相当于在 C 或 HDevelop 中直接调用 HALCON 算子,例如

  HObject original_image, smoothed_image;
  ReadImage(&original_image, "monkey");
  MeanImage(original_image, &smoothed_image, 11, 11);

除了过程式方法外,HALCON/C++ 还允许以面向对象的方式调用 HALCON 算子,即通过一组类。例如,上面的代码可以 "翻译 "成:

  HImage original_image("monkey");
  HImage smoothed_image = original_image.MeanImage(11, 11);

这个简单的示例已经表明,两种方法产生的代码明显不同: 算子调用的参数数量和类型不同。此外,功能的实现方式也可能不同;例如,可以通过 HImage 类的构造函数从文件中读取图像。一般来说,我们建议使用面向对象的方法。但请注意,HDevelop 只能以 C++ 过程式代码的形式导出程序。"如何结合过程式和面向对象代码" 一节 介绍了如何将过程式代码和面向对象代码结合起来。

在下面的小节中,我们将仔细研究与使用 HALCON/C++ 接口有关的各种问题;"HALCON 参数类" 一章 将更详细地介绍所提供的类。