Advanced Imaging


Advanced Imaging Magazine

Updated: July 8th, 2008 05:26 PM CDT

Ch and OpenCV: An Open Relationship With Vision



Ch and OpenCV: An Open Relationship With Vision

From computer vision to optimized production-ready code-with no need to re-code.

by Gary Bradski, Vadim Pisarevsky, Wayne W. Cheng, Qingcang Yu & Harry H. Cheng

May 2003

Figure 1. Relation of Ch with some other languages and software packages.Ch OpenCV, a C-based environment for open-architecture computer vision, lets users interactively develop vision programs in an efficient coding environment. This is achieved with Ch, an embeddable C/C++ interpreter with advanced visualization and numerics, and OpenCV, a free, optimized open source library.

Ch is designed for cross-platform scripting, 2D/3D plotting and numerical computing. Designed and implemented by Harry H. Cheng, it has been further developed and maintained by SoftIntegration, Inc. Ch is a C-compatible language environment supportingFigure 2. The original image. all features in the ISO 1990 C standard (C90), and is a superset of C interpreter with salient extensions. Such new features as complex numbers, variable-length array (VLA), binary constants and function name __func__ first implemented in Ch have been added in the latest C standard, called C99. Ch supports more new features added in the ISO C99, such as IEEE 754 floating-point arithmetic, than most existing C compilers. C programmers are encouraged to use these new features, as they simplify many programming tasks.

Some of Ch's salient features include:

  • High-Level Language: Ch bridges the gap between low- and high-level languages. A superset of C, Ch retains such low-level features of C as accessing memory for hardware interface, but as a superset of C, Ch is also a high-level language environment. Ch extends C with many high-level features, such as classes, strings, computational arrays and shell programming.
  • Object-Based: Ch supports classes, objects and encapsulation in C++ for object-based programming with data abstraction and information hiding, as well as simplified I/O handling.
1 2 3 4 5 6 7 8 next

Subscribe to our RSS Feeds