Ejemplos de programación

A continuación encontrará algunos ejemplos de programación para que pueda integrar de forma rápida y fácil las cámaras industriales IDS. Tenga en cuenta que los ejemplos se explican en inglés.

Tenga en cuenta que para descargar los ejemplos de programación tiene que haberse registrado previamente o iniciado sesión. Registrarse en la página web de IDS es totalmente gratuito y le permite acceder a numerosas e interesantes funciones así como a información detallada sobre nuestros productos.

La protección de su intimidad a la hora de procesar y guardar sus datos personales es una prioridad absoluta para nosotros. Por eso, no facilitaremos en ningún momento los datos introducidos para el registro a terceros; estos datos solo se utilizan con fines informativos internos y para mejorar nuestra oferta.

Primeros pasos: uEye SDK y C

Primeros pasos: uEye SDK y C

Por medio de este ejemplo se explica paso a paso cómo puede configurar una aplicación de consola sencilla para controlar una cámara uEye. Para ello se utiliza la uEye SDK para C.

Primeros pasos: uEye .NET SDK y C#

Primeros pasos: uEye .NET SDK y C#

Este ejemplo muestra cómo puede ajustar un proyecto en C# con una uEye .NET SDK. También contiene un ejemplo básico de una captura para iniciarse fácilmente en la programación de cámaras uEye.

Primeros pasos: uEye .NET SDK y Visual Basic

Primeros pasos: uEye .NET SDK y Visual Basic

Además de un ejemplo sencillo para hacer una captura, también se incluyen unas instrucciones paso a paso para configurar un proyecto en Visual Basic con una uEye .NET SDK.

Simple live: captura de imágenes con la interfaz Python PyuEye

Simple live: captura de imágenes con la interfaz Python PyuEye

Este ejemplo muestra el concepto básico de captura continua de imágenes con la interfaz PyuEye en combinación con OpenCV.

Además de inicializar la cámara, se solicitan datos sobre la cámara, se configuran varios parámetros de imagen y se captura una imagen.

Primeros pasos en Linux con el uEye SDK y Qt Creator

Primeros pasos en Linux con el uEye SDK y Qt Creator

Este ejemplo muestra cómo crear un nuevo proyecto en Qt Creator y capturar una imagen sencilla con una cámara IDS utilizando el sistema operativo Linux.

Es necesario que IDS Software Suite y Qt5 se encuentren ya instalados en Linux.

Captura de imágenes con la función de cola de uEye en C/C++

Captura de imágenes con la función de cola de uEye en C/C++

En este ejemplo se muestran las bases para capturar imágenes de forma continua sin perder fotogramas. Para ello se utiliza una secuencia de memoria circular con al menos 3 búferes. Estos búferes se ponen en la cola de espera. Las imágenes se capturan en el sistema de búferes. El sistema de cola permite recuperar siempre el búfer más antiguo. La memoria circular se bloquea automáticamente. Después de procesar correctamente los datos de imagen, el búfer se desbloquea y se vuelve a poner en la cola para utilizarlo de nuevo.

La recopilación de las memorias de imágenes se realiza en un hilo aparte. Este hilo es independiente de la interacción GUI y permite recopilar imágenes sin interrupciones.

Captura de imágenes con la función de cola de uEye en .NET C#

Captura de imágenes con la función de cola de uEye en .NET C#

En este ejemplo se muestran las bases para capturar imágenes de forma continua con ayuda de la uEye Image Queue. Se utiliza una memoria cíclica para capturar un vídeo de 1 segundo.

El sistema de cola permite recuperar siempre el búfer más antiguo. La memoria circular se bloquea automáticamente. Después de procesar correctamente los datos de imagen, el búfer se desbloquea y se vuelve a poner en la cola para utilizarlo de nuevo.

La recopilación de memorias de imágenes se realiza en un hilo de worker aparte. Este hilo es independiente de la interacción GUI y permite recopilar imágenes sin interrupciones.

Operaciones de recorte por el software (C/C++)

Operaciones de recorte por el software (C/C++)

Este ejemplo se basa en la demo uEyeImageQueue. En la parte de procesamiento del Image Queue Thread se pueden realizar distintos tipos de operaciones de recorte. Todas estas operaciones se ejecutan digitalmente en base a las imágenes que se reciben en el host. Las operaciones de recorte no se ejecutan en el sensor de la cámara.

A diferencia de las funciones de recorte de hardware ejecutadas en el sensor, la solución de software permite también realizar factores de escalado impares.

La demo muestra cómo puede acceder a los datos de imagen y procesarlos utilizando operaciones de punteros C/C++. Los distintos resultados de las operaciones de recorte se pueden visualizar y comparar fácilmente.

Modo Multicast para cámaras GigE uEye

Esta muestra de programación indica cómo configurar de forma general el modo multicast de una cámara IDS GigE uEye y cómo utilizar la función multicast como cliente.

Además de la inicialización y la gestión de memoria, estas son las funciones principales API de la uEye que se utilizan en este ejemplo de código fuente: is_GetSensorInfo(), is_DeviceInfo(), and is_Multicast().

uEye .NET C# - GPIO con cámaras máster y slave

uEye .NET C# - GPIO con cámaras máster y slave

Este ejemplo muestra cómo se sincroniza la captura de imágenes de dos cámaras mediante modulación de ancho de pulso (PWM) a través del GPIO de la cámara máster. Ambas cámaras (máster y slave) funcionan en modo "disparador de hardware (flanco ascendiente)" y esperan hasta que una señal de disparador entra en el GPIO 1. En el GPIO 2 esta señal de disparador se genera como salida PWM de la cámara máster.

Esto hace que las dos cámaras empiecen a captar imágenes simultáneamente.

uEye .NET C# - Imagen BMP con texto

uEye .NET C# - Secuencia de imágenes

Este ejemplo le muestra cómo captar imágenes en modo BMP y convertir una imagen de una memoria gráfica previamente definida en una imagen bitmap.

A continuación le muestra cómo copiar esta imagen a otro bitmap y cómo añadir texto y un bitmap más a esta imagen. Para ello se utiliza la clase .NET System.Drawing.Graphics.

uEye .NET C# - Imagen BMP con texto

uEye .NET C# - Imagen BMP con texto
This sample shows how to acquire images in DIB-mode and convert an image from a previously defined image memory into a bitmap, how to copy it into another bitmap and how to draw text and a bitmap into the image. This is done using the .NET System.Drawing.Graphics class.