IC Imaging Control 4 SDK (IC4) – Image Acquisition SDK for The Imaging Source cameras
IC Imaging Control 4 Image Acquisition SDK – for The Imaging Source cameras
- The Imaging Source has evolved alongside advancements in image processing technology for over thirty years, developing increasingly sophisticated software for a diverse range of machine vision systems and integrators.
- This progression introduced complexities, necessitating a revamped software approach to ensure broader platform compatibility and comprehensive camera feature access.
- The introduction of IC Imaging Control 4 (IC4) marks The Imaging Source’s strategic shift to a unified software environment, optimising cross-platform integration for industrial cameras using the GenICam GenTL standard.
- This blog post gives an overview of the changes and a link where you can find additional information on our IC Imaging Control 4 product page.
Overview of IC Imaging Control 4
- Native support for multiple programming languages (.NET, Python, C++, C) with unified API
- Fully GenICam-compliant, ensuring comprehensive camera feature utilization and enhanced interoperability with leading third-party software such as MATLAB and NeuroCheck
- Intuitive SDK for precise camera configuration and control with advanced features such as single image capture, sequential image acquisition, and video recording
- Variety of example programs available on GitHub
- Comprehensive support for Windows, with expanded compatibility for Linux x64 and ARM platforms in Q3 2024
Transitioning to IC Imaging Control 4
- The API documentation includes transition guidance for users of previous versions of IC Imaging Control.
- Immediate porting for existing projects using IC Control 3.x is not necessary as previous versions will continue to be supported.
- New projects, especially those using GigE Vision and USB3 Vision cameras, should ideally be developed using IC4 for optimal functionality (e.g. advanced camera features) and future readiness.
Future Roadmap
- Initial Release (January 1, 2024): IC4, GenTL Producers for GigE Vision Cameras, USB3 Vision Cameras (beta), and Non-GenICam Cameras (beta)
- Q2 2024: Release GenTL Producer for USB3 Vision Cameras
- Q3 2024: Release Linux support
IC Imaging Control: What’s New
- IC Imaging Control 4 SDK (IC4) is The Imaging Source’s unified software environment for improved cross-platform compatibility and integration of our industrial cameras.
- Allowing users access to the latest camera features without compatibility concerns, this comprehensive update leverages the GenICam GenTL standard.
Enhanced Compatibility
- The IC4 SDK is fully GenICam GenTL compliant, providing full access to device settings and advanced camera features such as events and chunk data.
Versatile Device Drivers
- The new device drivers (ic4-gentl-gigevision, ic4-gentl-usb3vision, and ic4-gentl-directshow) are available for use with IC Imaging Control 4.
- These drivers are compatible with our SDK and are designed to seamlessly integrate with third-party applications supporting GenICam GenTL, including popular third-party platforms such as MATLAB and more.
Performance Optimisation
- In contrast to version 3.5, the API has undergone a redesign aimed at facilitating high-performance acquisition tasks.
- This includes a reduction in unnecessary copy operations, ensuring efficiency in your workflow.
Native Language Support
- The IC Imaging Control 4 SDK caters to a diverse range of developers with native support for the following programming languages: C++, .NET, Python, and C.
- While the SDK’s structure functions identically between the supported languages, the SDK incorporates language-specific idioms where possible to maximize developer productivity.
Sample Programs
- A selection of example programs is available at GitHub.
Features
- Real-Time Video Preview: IC Imaging Control allows for real-time preview of video streams even at the maximum-possible frame rates of the video device.
- Multi-Stream Preview for Surveillance: IC Imaging Control SDK can also be used to simultaneously preview multiple video streams, making it suitable for surveillance applications.
- Built-In Scrolling and Zooming: Images can be easily adjusted via built-in scrolling and zooming as needed to meet specific inspection requirements or to fill the entire screen or window.
- Capture and Save Single Image Frames: Single image frames can be captured from a live video stream. Once acquired to the image buffer, the images may be saved as a BMP, TIFF, PNG or JPEG file.
- Frame Queue Management: A number of frames can be acquired to image buffers which are organized as a queue. A software callback can be registered to be executed whenever a new buffer is filled.
- Device Selection Dialog: IC Imaging Control provides a dialog box that allows the end user to select a video capture device. Video capture devices can be queried from program code for their settings in order to build customized dialog boxes. A complete dialog implementation is available as part of the example library.
- GenICam Feature Manipulation: IC Imaging Control provides a dialog that allows you to manipulate all GenICam features of a video capture device.
- Serial Number Retrieval: If supported by the video capture device, the device’s serial number can be retrieved via IC Imaging Control and used as a dongle.