ES2209642B1 - Arquitectura de circuito integrado programable de señal mixta para la realizacion de sistemas autonomos de vision de un unico chip y/o preprocesamiento de imagenes en sistemas de nivel superior. - Google Patents
Arquitectura de circuito integrado programable de señal mixta para la realizacion de sistemas autonomos de vision de un unico chip y/o preprocesamiento de imagenes en sistemas de nivel superior.Info
- Publication number
- ES2209642B1 ES2209642B1 ES200202707A ES200202707A ES2209642B1 ES 2209642 B1 ES2209642 B1 ES 2209642B1 ES 200202707 A ES200202707 A ES 200202707A ES 200202707 A ES200202707 A ES 200202707A ES 2209642 B1 ES2209642 B1 ES 2209642B1
- Authority
- ES
- Spain
- Prior art keywords
- integrated circuit
- processing
- images
- circuitry
- circuit architecture
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N25/00—Circuitry of solid-state image sensors [SSIS]; Control thereof
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Image Processing (AREA)
- Image Analysis (AREA)
Abstract
Arquitectura de circuito integrado programable de señal mixta para la realización de sistemas autónomos de visión en un único chip y/o preprocesamiento de imágenes en sistemas de nivel superior. La arquitectura diseñada realiza el sensado, almacenamiento y procesamiento de las imágenes en forma masivamente paralela, concurrente, y espacialmente distribuida, y comprende una distribución espacial regular bidimensional de celdas idénticas, localmente interconectadas, que combinan las capacidades de foto-transducción, procesamiento, y almacenamiento y un sistema de procesamiento y almacenamiento digital. Las operaciones, así como los parámetros específicos con los que son realizadas, se controlan de forma global, es decir, para todas las celdas simultáneamente con valores espacialmente uniformes, desde circuitos emplazados en la periferia de la distribución de celdas. Un procesador digital se encarga de controlar el sensor / procesador analógico y de realizar tareas de procesamiento de alto nivel, tomando decisiones en base a las imágenes adquiridas y procesadas en paralelo por el procesador de plano focal.
Description
Arquitectura de circuito integrado programable de
señal mixta para la realización de sistemas autónomos de visión en
un único chip y/o preprocesamiento de imágenes en sistemas de nivel
superior.
La presente solicitud se refiere a una
arquitectura de circuito integrado programable de señal mixta para
la realización de sistemas autónomos de visión en un único chip y/o
preprocesamiento de imágenes en sistemas de nivel superior, tal y
como se desprende del preámbulo de la primera reivindicación.
Mas concretamente, la Invención es de aplicación
en sistemas electrónicos integrados, sistemas de visión artificial,
sistemas autónomos de visión artificial, sistemas optoelectrónicos
para el procesamiento de imágenes, sistemas de captación de
imágenes y procesadores de imágenes con sensado concurrente para
tareas de preprocesamiento visual con aplicaciones en: visión
artificial, sistemas autónomos de visión, sistemas de transmisión de
información visual, sistemas automáticos de inspección y control de
calidad, sistemas automáticos de control y guiado, sistemas de
percepción visual, juguetería, y en general aplicaciones que
requieran la toma de decisiones en base a información visual, o el
procesamiento de imágenes como parte de un sistema superior, con
una o varias de las siguientes características en relación a la
aproximación convencional basada en cámaras digitalizadoras y
procesadores digitales: alta velocidad, bajo coste, pequeño tamaño y
bajo consumo de potencia.
Los sistemas que se emplean actualmente en tareas
de visión artificial y en procesamiento de imágenes en general se
basan fundamentalmente en procesadores digitales aplicados a
imágenes previamente digitalizadas. Para aplicaciones en las que se
requiere procesamiento en tiempo real es frecuente utilizar una
cámara convencional (por ejemplo CCD), un sistema de digitalización
de imágenes (por ejemplo un "frame graber") y un procesador
digital.
Existe un número creciente de aplicaciones en las
que la separación del sensado y del procesado en los sistemas de
procesamiento de imágenes resulta en inconvenientes significativos
y límites a las prestaciones deseables.
Los sistemas convencionales tienen dificultades
para alcanzar valores elevados de "throughput" (número de
"actuaciones" por unidad de tiempo) y/o valores reducidos de
latencia (retraso). Esto es causado por una parte por el tiempo
requerido por el sistema para captar, convertir y transferir
cantidades muy elevadas de datos (imágenes), y por otra por la
elevada carga de procesamiento a la que se ve sometido el
procesador digital. La diferenciación entre latencia y
"throughput" es relevante en muchas aplicaciones. Latencia es
el tiempo que transcurre desde el comienzo del sensado hasta la
generación de la respuesta (tiempo de reacción), mientras que el
"throughput" es la frecuencia con la que el sistema actualiza
su salida. Los sistemas de procesamiento de imágenes
convencionales, basados en el uso de cámaras y procesadores
digitales, podrían llegar a ofrecer un "throughput"
relativamente elevado en base a paralelismo, con dificultades y
aceptando una multiplicación del coste, pero tienen serias
dificultades para reducir la latencia, incluso asumiendo costes
elevados. En numerosas aplicaciones es la latencia el parámetro más
relevante. Por otra parte, los costes, el tamaño, y el consumo de
energía de un sistema convencional con "throughput" elevado
son excesivos en general.
Por estos motivos, existen diversas líneas de
investigación y desarrollo orientadas a la realización de sistemas
de procesamiento de imágenes que eviten o reduzcan dichos
inconvenientes. Varias de estas líneas se focalizan en el
desarrollo de sistemas que se inspiran o que intentan emular de una
u otra manera la arquitectura de los sistemas de visión de los
seres vivos.
En los sistemas de visión naturales existe una
parte frontal de "preprocesamiento" (la retina) en la cual la
tarea de procesamiento y sensado se hace de forma concurrente
(simultánea y espacialmente distribuida), en base a un conjunto de
elementos sencillos que combinan sensado y procesamiento,
localmente interconectados entre sí. En los seres vivos superiores,
la estructura de procesamiento se compone de varias capas
paralelas, cada una con funciones distintas, a su vez
interconectadas entre sí de forma local. La información transmitida
desde la retina a diferentes partes del cerebro para las tareas
superiores de percepción es muy reducida en relación a la
información en bruto del flujo visual, con las consiguientes
ventajas. Esta arquitectura se relaciona con la evidente calidad,
eficiencia y sencillez con la que los seres vivos realizan tareas
relacionadas con la visión que son inimaginables hoy en día para
los sistemas electrónicos más avanzados.
La emulación tecnológica de esta "aproximación
natural al procesamiento de información visual" se apoya en las
tecnologías de fabricación de circuitos integrados actuales, que
permiten la coexistencia en el mismo sustrato de silicio de
dispositivos fotosensores y circuitería convencional de
procesamiento.
De esta manera, se abre la posibilidad de
realizar sistemas artificiales de procesamiento de imágenes en los
que tanto la fototransducción como el preprocesamiento de las
imágenes se realizan de forma concurrente, espacialmente
distribuidas, asociándose a cada píxel un elemento de sensado y
también un elemento de procesamiento. Los sistemas optoelectrónicos
que resultan de esta aproximación reciben el nombre genérico de
"sistemas de procesamiento en el plano focal", por estar
concebidos para ser emplazados en el plano focal de un sistema
óptico, en el que se forma la imagen y donde ésta es sensada y
procesada de forma concurrente. Por otra parte, la introducción de
memoria distribuida y concurrente con el sensado y el
procesamiento, permite emular la estructura multicapa de las retinas
naturales mediante la utilización de multiplexación temporal.
De forma simultánea, existe en la actualidad un
gran esfuerzo de desarrollo de cámaras, sin funciones de
procesamiento, basadas en tecnología CMOS convencionales. Esto es
debido a ciertas ventajas inherentes al uso de esta tecnología en
relación a la actualmente extendida utilización de cámaras basadas
en dispositivos acoplados por carga (CCD). Entre otras podemos
citar la posibilidad de acceder aleatoriamente a los diferentes
píxeles, un menor consumo de potencia, una tecnología mas accesible
y económica, y la facilidad para incluir algún tipo de circuitería
de procesamiento y/o de conversión
analógica-digital en el mismo chip.
Otra línea de investigación relacionada, que
podemos denominar la de los procesadores analógicos masivamente
paralelos, se centra en sistemas de procesamiento de estructuras de
datos multidimensionales basadas en distribuciones regulares de
procesadores más o menos sencillos, interconectados localmente, y
que actúan realizando todos ellos la misma función en cada
instante.
Finalmente, es bien conocida la versatilidad y
eficiencia de los bloques de procesamiento y almacenamiento de
información digital actuales.
En lo que se refiere a los sistemas de
procesamiento en el plano focal, la gran mayoría de las
arquitecturas concretas, algoritmos de procesamiento, y prototipos
realizados o propuestos hasta la fecha persiguen la realización de
tareas simples y específicas, que además están fijadas de antemano y
por tanto son "programadas en el hardware". En la línea de
cámaras de visión CMOS existen ya numerosos productos comerciales,
así como numerosos avances basados en diferentes formas de
compresión del rango de intensidad luminoso, técnicas de
calibración para compensar las no idealidades presentes, y algunas
técnicas de filtrado espacio-temporal de la imagen
para evitar problemas de contraste y otros. Esta última vertiente
intersecta sustancialmente con la línea de procesadores en el plano
focal. En lo referente a los procesadores analógicos masivamente
paralelos, las contribuciones, realizaciones y propuestas
realizadas hasta la fecha son muy variadas, siendo su
característica mas significativa en relación a los procesadores de
plano focal habituales la incorporación de programabilidad en
alguna medida, así como espacio de almacenamiento para una o varias
imágenes, en forma analógica o digital, siguiendo la estrategia
general de concurrencia y distribución espacial para mantener la
velocidad de las operaciones de transferencia de datos. Estos
sistemas realizan normalmente algoritmos de procesamiento
específicos, sobre imágenes previamente almacenadas o adquiridas
mediante un dispositivo externo, que son transmitidas al procesador
masivamente paralelo en forma eléctrica y serial, y por tanto no
pueden considerarse sistemas de procesamiento en el plano focal.
La invención que se reivindica en esta solicitud
de patente es una arquitectura específica de circuito integrado
para la adquisición y procesamiento de imágenes empleable en la
realización de sistemas autónomos de visión en un único chip, y que
también puede emplearse como elemento coprocesador especializado en
el procesamiento de imágenes en sistemas de nivel superior. La
arquitectura propuesta se fundamenta en una combinación de las tres
líneas de investigación y desarrollo mencionadas y actualmente
presentes en el estado de la técnica, aunándolas de una forma
concreta, introduciendo programabilidad, y añadiéndole un sistema de
procesamiento y almacenamiento de información digital como elemento
principal de control y de toma de decisiones, lo que permite que el
sistema de visión actúe de forma autónoma una vez programado para
la realización de alguna función específica.
La arquitectura propuesta está constituida
entorno a un elemento central, el
sensor-procesador, que a su vez consiste en una
distribución regular bidimensional de celdas idénticas, cada una de
las cuales dispone de ciertos elementos de fotosensado,
almacenamiento, procesamiento, control, y de transferencia de
datos. La realización de estas operaciones, así como los parámetros
específicos con los que son realizadas, se controlan de forma
global (para todas las celdas a la vez, con valores espacialmente
uniformes) desde elementos de circuito situados en la periferia de
la distribución de celdas. No se excluye la utilización de
información local (en cada celda) para la habilitación selectiva o
la modificación de las operaciones que se realicen globalmente.
De forma específica, cada una de las celdas
idénticas de la distribución regular bidimensional contiene los
siguientes elementos, sin excluir la posibilidad de que alguno de
ellos pueda eliminarse en realizaciones concretas:
- \bullet
- Uno o varios fotosensores (1) y su circuitería de adaptación y entrefase (2), sin excluir la posible existencia de interconexiones entre los diferentes sensores de una misma celda o de celdas vecinas a nivel de la circuitería de entrefase, ni la programabilidad global y/o local de los parámetros relevantes en el proceso de adquisición y filtrado espacio-temporal, lineal o no-lineal, de las imágenes. A nivel de sistema, los sensores del conjunto de todas las celdas constituyen uno o varios sensores de imágenes. Los parámetros significativos de la entrefase óptica y de filtrado espacio-temporal pueden ser programables en base a parámetros globales (espacialmente invariantes) y/o locales (empleando información local de la celda).
- \bullet
- Uno o varios elementos de almacenamiento analógicos (3) y/o binarios (4), que podemos considerar elementos de memoria de píxel. A nivel global constituyen una memoria de una o varias imágenes en tonos de grises y/o en "blanco y negro". No se excluye la inclusión de algunas "memorias de imágenes de sólo lectura" que permitan el acceso a niveles de referencia significativos para el procesamiento, como por ejemplo los niveles extremos e intermedios del rango de valores analógicos.
- \bullet
- Una circuitería y conexionado local (5) que permiten transferir el contenido de una determinada memoria analógica o binaria a otra celda cercana especificada de acuerdo a un vector de desplazamiento programable de manera espacialmente invariante, resultando a nivel global en un desplazamiento de toda la imagen. Este desplazamiento podría realizarse de forma directa o iterativa, según criterios de optimización de la circuitería.
- \bullet
- Una circuitería de procesamiento (6) basada en la realización de operaciones analógicas sencillas sobre sumas ponderadas de contribuciones de las celdas vecinas y de la propia celda. El término suma debe entenderse en sentido algebraico: tanto las variables a ponderar como los factores de ponderación pueden ser positivos o negativos. Las contribuciones son proporcionales a los valores de los píxeles de alguna imagen (analógica o binaria) correspondientes a cada celda y almacenados en ella. Para cada celda, el conjunto de contribuciones procederá, sin excluir otras variantes, del conjunto de 3 x 3 celdas adyacentes centrado en ella misma. Las nueve contribuciones son ponderadas con arreglo a un conjunto de 3 x 3 factores de ponderación analógicos, que son programables eléctricamente de manera global (espacialmente invariante). No se excluye la extensión al caso en que la "suma ponderada" sea el resultado de la realización y acumulación de más de una de las sumas ponderadas anteriores, en general con diferentes conjuntos de factores de ponderación y con diferentes imágenes de origen. La realización de las diferentes contribuciones ponderadas y su acumulación puede hacerse en paralelo, empleando para ello la suficiente circuitería de ponderación y suma, o de forma multiplexada en el tiempo, empleando una circuitería más reducida y un elemento de acumulación. No se excluyen los casos extremos de utilización de un único elemento de ponderación aplicado secuencialmente a los diferentes vecinos y/o imágenes, ni el de la utilización de los suficientes elementos de ponderación para la obtención en un sólo paso de sumas ponderadas de contribuciones proporcionales a diferentes imágenes de origen con diferentes conjuntos de coeficientes de ponderación. Sin perjuicio de otros, algunos ejemplos de operaciones sencillas a realizar sobre el resultado de la suma ponderadas son: una integración sin pérdidas, una integración con pérdidas lineales, una integración con pérdidas no lineales, cualquiera de las variantes anteriores con o sin saturación, una función signo o una comparación umbralizada, un escalado, o simplemente el operador identidad. Los coeficientes analógicos empleados en la realización de las operaciones previstas sobre el resultado de la suma ponderada (por ejemplo las pérdidas, niveles de saturación, factor de escalado, umbral de comparación, etc.) también son programables de manera eléctrica y espacialmente invariante.
- \bullet
- Una circuitería que permite la acumulación del resultado de la suma ponderada (6) al contenido de las memorias de píxel (analógico) de la celda (3).
- \bullet
- Opcionalmente, la circuitería necesaria para realizar una multiplicación analógica, píxel a píxel, entre dos imágenes almacenadas (6).
- \bullet
- Un operador lógico elemental (7) que actúa sobre el contenido de las memorias binarias de cada celda. La operación lógica a realizar en cada momento es globalmente programable.
- \bullet
- La circuitería de control, de conexionado, y de conversión (8) para permitir la transmisión de información entre los diferentes elementos de cada celda (e.g. sensores, memorias, y circuitos de procesamiento), siempre de forma simultánea en todas las celdas, de manera que a nivel de sistema constituyen transferencias de imágenes en forma totalmente paralela, con una anchura de bus igual al número de píxeles de la imagen.
- \bullet
- La circuitería de control (7,8) necesaria para el empleo opcional de habilitación o modificación local selectiva de algunas de las operaciones de procesamiento y/o de transferencia de datos en base al contenido de alguna de las memorias de píxel binarias de la celda.
- \bullet
- La circuitería de control (7), de conexionado y eventualmente de conversión AD y DA necesaria para el control de las operaciones y para el intercambio de información (9) con el exterior de la distribución regular bidimensional de celdas idénticas, de alguna de las maneras previsibles en base a la funcionalidad previamente descrita.
Rodeando a la distribución regular bidimensional
de celdas idénticas se emplazan los diferentes elementos de
circuito necesarios para el funcionamiento de las celdas, así como
los siguientes elementos de control y de interconexión con el
exterior:
- \bullet
- Un anillo de celdas de contorno (10), que rodea a la distribución regular bidimensional de celdas. Estas celdas, utilizadas para establecer las condiciones de contorno espaciales, contienen la circuitería necesaria para generar las contribuciones que esperan las celdas interiores adyacentes, pero no la utilizada para realizar los cálculos. Los valores de los píxeles de las celdas de contorno son globalmente programables (para todo el anillo).
- \bullet
- Un sistema digital (11) de procesamiento, control, y almacenamiento de datos y de programa, consistente por ejemplo en un microprocesador, un microcontrolador, o un procesador digital de señales, en combinación con bloques de memoria digital. En el caso más general, las memorias contendrán bloques de memoria volátil (RAM) y no volátil, pudiendo ser la no volátil programable al menos parcialmente. La función de este sistema digital es el control superior de las tareas realizadas por la distribución de celdas, la comunicación del chip con el exterior, y en su caso, el procesamiento de la información preprocesada por la distribución de celdas para la toma de decisiones de alto nivel.
- \bullet
- Circuitería de cómputo global (12) de propósito variado, destinada a la obtención de información muy simplificada de alguna imagen almacenada en la distribución de celdas. Como ejemplos, esta circuitería podría permitir el cálculo del valor medio de una imagen analógica, los valores extremos, la dispersión, y otros parámetros estadísticos. No se excluye la necesidad de incorporar alguna circuitería a nivel de celda. Esta información extractada puede servir, entre otros propósitos, para el ajuste automático de los parámetros de adquisición de la imagen (tiempos de exposición, enfoque, etc), la selección de un determinado tipo de sensor entre los disponibles, y para la toma de decisiones globales en general.
- \bullet
- Una circuitería de control (13) de la distribución de celdas, consistente esencialmente en un conjunto de registros digitales y máquinas de estado sencillas, direccionables y controlables por el sistema de procesamiento digital. La función de esta circuitería es permitir la generación y aplicación, a la distribución de celdas, de secuencias de vectores digitales de control.
- \bullet
- Un banco de convertidores D/A (14), uno por coeficiente analógico programable empleado en el conjunto de celdas. Los convertidores pueden ser lineales o no, incluyendo la posibilidad de predistorsionar convenientemente la eventual no-linealidad existente entre la tensión analógica de control del coeficiente y el valor efectivo del mismo, por ejemplo en base a un mecanismo de realimentación que emplee el mismo tipo de bloque de escalado empleado en la circuitería de las celdas. Los datos digitales de entrada a este banco de convertidores proceden de nuevo de registros y máquinas de estado sencillas direccionables y controlables por el sistema digital de control y procesamiento. La salida de cada convertidor , en tensión, ataca a un nudo global que se distribuye al conjunto de celdas. La utilización de una señal analógica de tensión responde a razones de eficiencia de conexionado.
- \bullet
- Un banco de convertidores AD y DA (15) para realizar el intercambio de imágenes analógicas con el exterior del circuito integrado, cuando sea necesario o conveniente, en forma totalmente digital y de manera serial a través de uno o más buses de datos, con los correspondientes buses de direcciones y señales de control. Estos convertidores, al igual que el resto del sistema, estarán controlados directa o indirectamente por el sistema digital de control superior. No se excluye la posibilidad de que estos convertidores se realicen dentro de la distribución de celdas "a nivel de píxel", empleando técnicas apropiadas. Tampoco se excluye la posibilidad de comunicación mediante buses de datos analógicos, pudiendo prescindirse en ese caso de los bancos de convertidores AD y DA.
- \bullet
- Circuitería de compresión de datos de salida (16). Conjunto de circuitos que permiten la compresión y transmisión de imágenes binarias dispersas (con pocos unos o con pocos ceros) de manera altamente eficiente. La inclusión de estos elementos responde a la observación de que la mayoría de los algoritmos de visión emplean representaciones binarias y normalmente dispersas de las imágenes en los niveles superiores de la cadena de decisión. Como ejemplo, esta circuitería podría identificar si cierta imagen binaria es completamente blanca o negra mediante alguna operación lógica global sobre todos los píxeles de una imagen binaria, detectar la posición de un píxel individual en la distribución regular de celdas si éste es el único píxel blanco o negro de la imagen mediante el uso de codificadores y decodificadores de "filas y columnas" o similar, o generar una secuencia de coordenadas espaciales correspondientes a las de cada uno de los píxeles minoritarios (blancos en un fondo negro o viceversa) empleando estrategias de prioridad, normalmente asíncronas. Otro ejemplo sería la identificación de las coordenadas espaciales de los vértices opuestos de zonas que engloben los píxeles negros minoritarios en un fondo blanco (o viceversa) de la imagen. No se excluye la inclusión de la circuitería necesaria a nivel de píxel.
- \bullet
- Circuitería de entrefase (17). Aparte de la entrada óptica, la entrefase eléctrica del circuito integrado es esencialmente digital, controlada por el sistema digital interno con arreglo a un reloj maestro, y consiste fundamentalmente en buses de dirección y de datos digitales, así como de señales de control típicas empleadas para los procesos/protocolos de lectura/escritura, habilitación general del chip, interrupciones, selección de modos de funcionamiento, ejecución de programa, etc. En realizaciones prácticas, esta entrefase se amoldará a algún estándar digital existente. Esto responde al objetivo de facilitar las tareas de programación y depuración de los algoritmos de visión artificial del sistema autónomo mediante el uso de sistemas de desarrollo, así como a la conveniencia de permitir la utilización alternativa de estos dispositivos como elementos "esclavos" especializados en la captación y procesamiento de imágenes dentro de sistemas digitales superiores.
Para complementar la descripción que se está
realizando y con objeto de ayudar a una mejor comprensión de las
características del invento, de acuerdo con un ejemplo preferente
de realización práctica del mismo, se acompaña como parte
integrante de dicha descripción, una figura en donde con carácter
ilustrativo y no limitativo, se ha representado esquemáticamente un
ejemplo concreto de la arquitectura del sistema de visión integrado
en un único chip, con indicación simbólica de la circuitería y la
arquitectura de una celda básica del
sensor-procesador, indicándose mediante símbolos los
bloques de la circuitería de celda que son controlados y/o
programados mediante señales globales, las memorias digitales
pudiendo ejercer funciones de control local, y el conjunto de
vecinas de cada celda incluyendo en general a la propia celda.
En cuanto al sistema de control y procesamiento
digital externo a la distribución de celdas, se refleja un ejemplo
de arquitectura basada en una unidad de procesamiento (CPU, DSP, o
Microcontrolador), memoria volátil y no volátil, periféricos
genéricos, y una unidad de control de memoria.
La Figura muestra una representación esquemática
del sistema que a continuación se describe como ejemplo de
realización. En este caso particular el sistema se ha diseñado en
un solo circuito integrado utilizando tecnología CMOS estándar de
0,18 micrómetros con 2 capas de polisilicio y 6 capas de metal. El
sistema digital de procesamiento y control utilizado en el ejemplo
es un microprocesador digital de altas prestaciones y bajo consumo
de potencia con arquitectura RISC y bus de direcciones de 32 bits
de anchura. Dicho microprocesador incluye memoria Caché para datos
y direcciones y una unidad aritmética para la realización de
multiplicaciones y divisiones en punto fijo. En el ejemplo de
realización presentado se ha utilizado como unidades de
almacenamiento digital un bloque de memoria SRAM de 32kbytes y un
bloque de memoria no volátil de tipo FLASH-RAM ambas
integradas.
En este ejemplo de realización se ha utilizado
como bus interno al que se conectan el sistema digital de
procesamiento y control, las memorias integradas, la circuitería de
control, la distribución de celdas, y los convertidores de datos,
un bus integrado de 32 bits de anchura operando a 66
Megahertzios.
La distribución de celdas, en este ejemplo,
contiene 88 x 72 elementos, correspondiendo a la cuarta parte del
formato conocido como QCIF (quarter CIF). Cada celda interior
contiene 10 elementos de ponderación y suma, correspondientes a
contribuciones procedentes de las 3 x 3 celdas vecinas
(incluyéndose la propia celda) y a una contribución adicional que
implementa un término invariante en el espacio, también
programable.
La operación realizada sobre el resultado de la
suma ponderada puede ser elegida mediante programación entre la
simple evaluación del resultado, una integración de tiempo continuo
con saturación a la salida del integrador, o una binarización
basada en una comparación umbralizada.
Las celdas incluyen ocho memorias analógicas, que
pueden ser utilizadas también como memorias binarias mediante
conversión directa del dato. Estas memorias de píxel actúan como
elemento centralizador de los procesos de transferencia de
información dentro de la celda. Se ha incluido también un operador
lógico programable de dos entradas, que actúa sobre el contenido de
las "memorias binarias". El contenido de las "memorias
binarias" puede ser empleado para habilitar localmente la
evolución dinámica de cada celda (integración), así como las
funciones de transferencia de datos (por ejemplo, la escritura de
otra memoria).
Los fotosensores empleados, que permiten realizar
el sensado de la imagen enfocada sobre la superficie del chip por
el sistema óptico, proporcionan diversos modos de operación,
incluyendo la integración de la corriente fotogenerada en alguno de
entre varios diodos de diferente naturaleza o incluso bipolares
verticales, lo que resulta en una representación 5 lineal en tiempo
discreto del valor del píxel, y también otros esquemas que resultan
en representaciones con compresión logarítmica en tiempo continuo.
La circuitería local de procesamiento y memoria permite una fácil
calibración de los sensores, resolviendo el mayor inconveniente de
los sensores CMOS.
Como ejemplos de circuitería de compresión de los
datos de salida, se emplean dos puertas globales, una NAND y otra
NOR, cada una de ellas con una entrada por cada celda, que permiten
evaluar instantáneamente desde el exterior si una determinada
imagen es completamente blanca o completamente negra. Además, se ha
incluido una circuitería capaz de generar la secuencia de pares de
coordenadas de todos los píxeles negros de una imagen binaria, con
arreglo a una determinada estrategia de prioridad asíncrona.
Los convertidores
digital-analógico empleados para la programación de
la distribución de celdas emplean arquitecturas convencionales. Sus
salidas representan valores de los factores de ponderación
correspondientes a la circuitería de suma ponderada descrita,
valores de las condiciones de contorno espaciales, y niveles de
referencia empleados por la circuitería analógica. Cada valor de
cada coeficientes es codificado mediante 7 bits mas un bit de
signo. Por su parte, el vector digital de control de la distribución
de celdas tiene una anchura de 48 bits.
La entrefase externa consiste esencialmente en
los buses de datos y de direcciones del sistema digital de control,
junto a un número reducido de señales que sirven a los propósitos
habituales de sincronización y de control de los procesos de
lectura y escritura, de habilitación general de la entrefase
externa del chip, de reset, y de selección de modos de
funcionamiento (e.g. programación, ejecución, etc).
En este ejemplo, el área total de silicio ocupada
por el sistema descrito en la Figura, en la tecnología de 0.181
\mum empleada, es de 25 mm^{2}.
Claims (14)
1. Arquitectura de circuito integrado programable
de señal mixta para la realización de sistemas autónomos de visión
en un único chip y/o el preprocesamiento de imágenes en sistemas de
nivel superior, caracterizado por realizar el sensado,
almacenamiento y procesamiento de las imágenes en forma masivamente
paralela, concurrente, y espacialmente distribuida.
2. Arquitectura de circuito integrado de señal
mixta según reivindicación 1ª, caracterizada por comprender;
a) una distribución espacial regular bidimensional de celdas
idénticas, localmente interconectadas, que combinan las capacidades
de foto-transducción, procesamiento, y
almacenamiento y b) un sistema de procesamiento y almacenamiento
digital.
3. Arquitectura de circuito integrado de señal
mixta según reivindicaciones anteriores, caracterizada
porque cada celda de la distribución espacial regular bidimensional
de celdas idénticas computa mediante circuitería analógica
programable una o varias sumas ponderadas de contribuciones de las
celdas vecinas, entendiéndose el término suma en sentido
algebraico, es decir, que tanto las variables a ponderar como los
factores de ponderación pueden ser positivos o negativos, y
consiguiéndose estas sumas ponderadas como la base de los
algoritmos de procesamiento de las imágenes.
4. Arquitectura de circuito integrado de señal
mixta según reivindicaciones 2ª y 3ª, caracterizada porque
cada celda de la distribución espacial regular bidimensional de
celdas idénticas comprende:
- -
- al menos un fotosensor (1) y su circuitería de adaptación y entrefase (2),
- -
- al menos una memoria analógica (3) y/o binaria (4), que a nivel de sistema constituyen memorias de imágenes cuyos píxeles tienen valores analógicos y/o binarios,
- -
- una circuitería de ponderación y suma (6) en la cual los factores de ponderación utilizados en el cómputo de las sumas ponderadas son programables eléctricamente de manera espacialmente uniforme
- -
- circuitería de procesamiento (6) encargada de realizar operaciones sencillas sobre el resultado de agregar una o varias sumas ponderadas de contribuciones de las celdas vecinas proporcionales a una o varias imágenes, siendo los coeficientes relevantes para la realización de dichas operaciones también programables eléctricamente de manera espacialmente invariante,
- -
- circuitería (8) de control, de conexionado y de conversión, para el intercambio de datos entre los diferentes elementos de cada celda (sensores, memorias, y circuitos de procesamiento) a nivel de celda, simultáneamente en todas las celdas, de manera que a nivel de sistema constituyen transferencias de imágenes en forma totalmente paralela, con una anchura de bus igual al número de píxeles de la imagen,
- -
- circuitería (7, 8) para el empleo opcional de habilitación o modificación local selectiva de algunas de las operaciones de procesamiento y/o de transferencia de datos a nivel de celda en base al contenido de alguna de las memorias de píxel binarias de la celda.
5. Arquitectura de circuito integrado de señal
mixta según reivindicación 4ª, caracterizada porque a nivel
de la circuitería de entrefase (2) existen interconexiones entre
sensores de la misma celda y/o entre sensores de celdas adyacentes
para propósitos de filtrado espacio-temporal,
lineal o no- lineal, y siendo los parámetros significativos de la
entrefase óptica y de filtrado espacio-temporal
programables en base a parámetros globales y/o locales.
6. Arquitectura de circuito integrado de señal
mixta según reivindicación 4ª, caracterizado porque cada una
de las celdas comprende una circuitería para realizar la
multiplicación píxel a píxel de dos imágenes previamente
almacenadas.
7. Arquitectura de circuito integrado de señal
mixta según reivindicación 4ª, caracterizada porque cada una
de las celdas comprende una circuitería para realizar operaciones
lógicas, programables manera espacialmente invariante, entre
valores binarios de píxeles correspondientes a diferentes imágenes
previamente almacenadas.
8. Arquitectura de circuito integrado de señal
mixta según reivindicación 4ª, caracterizada porque cada una
de las celdas comprende una circuitería para transferir el
contenido de una determinada memoria analógica (3) o binaria (4) a
otra celda cercana especificada de acuerdo a un vector de
desplazamiento programable de manera espacialmente invariante,
resultando a nivel global en un desplazamiento de toda la imagen, y
realizándose dicho desplazamiento de forma directa o iterativa,
según criterios de optimización de la circuitería.
9. Arquitectura de circuito integrado de señal
mixta según reivindicación 4ª, caracterizada porque
comprende en la periferia de la matriz de celdas, bancos de
convertidores AD y DA (15) para el intercambio bidireccional con el
exterior del circuito integrado, de imágenes digitalizadas en
escala de grises en forma serial, a través de uno o más buses de
datos digitales, y de los correspondientes buses de direcciones y
señales de control.
10. Arquitectura de circuito integrado de señal
mixta según reivindicación 9ª, caracterizada porque el
intercambio bidireccional con el exterior del circuito integrado se
realiza mediante buses de datos analógicos, prescindiéndose por
tanto de los bancos de convertidores AD y DA.
11. Arquitectura de circuito integrado de señal
mixta según reivindicaciones 2ª a 10ª, caracterizada por
comprender, rodeando a la distribución de celdas espacialmente
regular, un anillo de celdas (10) utilizadas para establecer las
condiciones de contorno espaciales en los algoritmos de
procesamiento de imágenes, y siendo estas condiciones de contorno
programables eléctricamente.
12. Arquitectura de circuito integrado de señal
mixta según reivindicaciones 2ª a 11ª, caracterizada porque
comprende una circuitería de computo global para la compresión (16)
y transmisión al exterior de imágenes binarias dispersas, con
componentes tanto en el interior de la celda (12) como en la
circuitería periférica (16), tales como la determinación de si
cierta imagen es totalmente blanca o negra, la detección de los
vértices opuestos de regiones que incluyan los píxeles minoritarios
(blancos o negros), o la generación de una secuencia de las
coordenadas espaciales del conjunto de píxeles minoritarios.
13. Arquitectura de circuito integrado de señal
mixta según reivindicaciones 2ª a 12ª, caracterizada porque
comprende, a nivel de celda y a nivel global, una circuitería
analógica (12) de cómputo de parámetros globales de las imágenes,
tales como el valor medio, los valores máximos y mínimos, la
dispersión media, la varianza, u otros parámetros estadísticos.
14. Arquitectura de circuito integrado de señal
mixta según reivindicaciones 2ª a 13ª, caracterizada porque
comprende un sistema digital (11) de procesamiento, almacenamiento
y control, que realiza las tareas de control de la distribución de
celdas y del sistema en su conjunto, de procesamiento de
información, y de las comunicaciones externas, con arreglo a un
programa preestablecido y almacenado en las memorias internas.
Priority Applications (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
ES200202707A ES2209642B1 (es) | 2002-11-04 | 2002-11-04 | Arquitectura de circuito integrado programable de señal mixta para la realizacion de sistemas autonomos de vision de un unico chip y/o preprocesamiento de imagenes en sistemas de nivel superior. |
AU2003278200A AU2003278200A1 (en) | 2002-11-04 | 2003-11-04 | Programmable mixed-signal integrated circuit architecture for the production of autonomous vision systems in a single chip and/or pre-processing of images in higher-level systems |
EP03769516.0A EP1580814B1 (en) | 2002-11-04 | 2003-11-04 | Programmable mixed-signal integrated circuit architecture for the production of autonomous vision systems in a single chip and/or pre-processing of images in higher-level systems |
PCT/ES2003/000564 WO2004042822A1 (es) | 2002-11-04 | 2003-11-04 | Arquitectura de circuito integrado programable de señal mixta para la realizacion de sistemas autonomos de vision en un unico chip y/o preprocesamiento de imagenes en sistemas de nivel superior |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
ES200202707A ES2209642B1 (es) | 2002-11-04 | 2002-11-04 | Arquitectura de circuito integrado programable de señal mixta para la realizacion de sistemas autonomos de vision de un unico chip y/o preprocesamiento de imagenes en sistemas de nivel superior. |
Publications (2)
Publication Number | Publication Date |
---|---|
ES2209642A1 ES2209642A1 (es) | 2004-06-16 |
ES2209642B1 true ES2209642B1 (es) | 2005-10-01 |
Family
ID=32309641
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
ES200202707A Expired - Fee Related ES2209642B1 (es) | 2002-11-04 | 2002-11-04 | Arquitectura de circuito integrado programable de señal mixta para la realizacion de sistemas autonomos de vision de un unico chip y/o preprocesamiento de imagenes en sistemas de nivel superior. |
Country Status (4)
Country | Link |
---|---|
EP (1) | EP1580814B1 (es) |
AU (1) | AU2003278200A1 (es) |
ES (1) | ES2209642B1 (es) |
WO (1) | WO2004042822A1 (es) |
Families Citing this family (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8063350B2 (en) | 2007-08-03 | 2011-11-22 | Cognex Corporation | Circuits and methods allowing for pixel array exposure pattern control |
US9451142B2 (en) | 2007-11-30 | 2016-09-20 | Cognex Corporation | Vision sensors, systems, and methods |
US8570393B2 (en) | 2007-11-30 | 2013-10-29 | Cognex Corporation | System and method for processing image data relative to a focus of attention within the overall image |
US9189670B2 (en) | 2009-02-11 | 2015-11-17 | Cognex Corporation | System and method for capturing and detecting symbology features and parameters |
ES2432855B1 (es) | 2012-05-03 | 2014-09-09 | Universidad De Sevilla | Dispositivo para la detección de bordes y mejora de calidad en una imagen |
ES2459869B2 (es) | 2012-10-08 | 2014-12-04 | Universidad De Sevilla | Dispositivo para la detección Hardware de extremos locales en una imagen |
US9762834B2 (en) * | 2014-09-30 | 2017-09-12 | Qualcomm Incorporated | Configurable hardware for computing computer vision features |
CN116821047B (zh) * | 2023-08-31 | 2023-10-31 | 北京犀灵视觉科技有限公司 | 一种感存算一体化电路、系统及方法 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP0854643A3 (en) * | 1994-06-01 | 1999-02-10 | Simage Oy | Imaging devices, systems and methods |
CN1457471A (zh) * | 1999-03-05 | 2003-11-19 | 克拉里提有限公司 | 在单个器件中集成实现传感和处理的二种构造 |
-
2002
- 2002-11-04 ES ES200202707A patent/ES2209642B1/es not_active Expired - Fee Related
-
2003
- 2003-11-04 AU AU2003278200A patent/AU2003278200A1/en not_active Abandoned
- 2003-11-04 EP EP03769516.0A patent/EP1580814B1/en not_active Expired - Lifetime
- 2003-11-04 WO PCT/ES2003/000564 patent/WO2004042822A1/es not_active Application Discontinuation
Also Published As
Publication number | Publication date |
---|---|
ES2209642A1 (es) | 2004-06-16 |
WO2004042822A1 (es) | 2004-05-21 |
AU2003278200A1 (en) | 2004-06-07 |
EP1580814A1 (en) | 2005-09-28 |
EP1580814B1 (en) | 2016-11-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7244919B2 (en) | Semiconductor integrated circuit device having photo detector circuits, processing elements, and comparing circuits which compare the output of a photo detector element with a reference voltage | |
ES2209642B1 (es) | Arquitectura de circuito integrado programable de señal mixta para la realizacion de sistemas autonomos de vision de un unico chip y/o preprocesamiento de imagenes en sistemas de nivel superior. | |
US20150310311A1 (en) | Dynamically reconstructable multistage parallel single instruction multiple data array processing system | |
JP6039889B2 (ja) | モノクロ画像データおよびカラー画像データを出力する端末 | |
CN100487522C (zh) | 模糊校正方法及摄像装置 | |
GB2471647A (en) | Object Detection Using Feature Responses | |
US10404930B2 (en) | Pixel processing apparatus of processing bad pixel and removing noise, and image signal processing apparatus and image processing system each including the same | |
US20170150076A1 (en) | Cmos image sensors having grid array exposure control | |
KR102618546B1 (ko) | 2차원 어레이 기반 뉴로모픽 프로세서 및 그 동작 방법 | |
Leñero-Bardallo et al. | Sun sensor based on a luminance spiking pixel array | |
US20050046723A1 (en) | Adaptively reading one or more but fewer than all pixels of image sensor | |
Földesy et al. | Configurable 3D‐integrated focal‐plane cellular sensor–processor array architecture | |
Richter et al. | Speck: a smart event-based vision sensor with a low latency 327K neuron convolutional neuronal network processing pipeline | |
ES2729736T3 (es) | Función automática de región de interés para sensores de imagen | |
Ito et al. | A computational digital pixel sensor featuring block-readout architecture for on-chip image processing | |
CN115242990A (zh) | 图像传感器模块和操作图像传感器模块的方法 | |
Yadid-Pecht et al. | Autoscaling CMOS APS with customized increase of dynamic range | |
Martel et al. | Pixel interlacing to trade off the resolution of a cellular processor array against more registers | |
Schmitz et al. | A programmable vision chip with pixel-neighborhood level parallel processing | |
US6930597B2 (en) | Electro-optical device for the acquisition and processing of images | |
EP4117278B1 (en) | Image signal processor, operation method of image signal processor, and image sensor device including image signal processor | |
US11514594B2 (en) | Composite imaging systems using a focal plane array with in-pixel analog storage elements | |
Rodríguez-Vázquez et al. | CMOS design of focal plane programmable array processors. | |
Benito Adrados et al. | Solar photovoltaic energy scenarios generation: a novel methodology for multi-area electricity markets | |
KR20240073591A (ko) | 초해상도 네트워크를 이용하는 이미지 처리 장치 및 이미지 처리 방법 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
EC2A | Search report published |
Date of ref document: 20040616 Kind code of ref document: A1 |
|
PC2A | Transfer of patent |
Effective date: 20180918 Owner name: TELEDYNE INNOVACIONES MICROELECTRONICAS, SLU Effective date: 20180918 |
|
FD2A | Announcement of lapse in spain |
Effective date: 20221125 |