MX2013014257A - Sistema de imágenes de enfoque automatico. - Google Patents

Sistema de imágenes de enfoque automatico.

Info

Publication number
MX2013014257A
MX2013014257A MX2013014257A MX2013014257A MX2013014257A MX 2013014257 A MX2013014257 A MX 2013014257A MX 2013014257 A MX2013014257 A MX 2013014257A MX 2013014257 A MX2013014257 A MX 2013014257A MX 2013014257 A MX2013014257 A MX 2013014257A
Authority
MX
Mexico
Prior art keywords
edge
gradient
image
width
gradients
Prior art date
Application number
MX2013014257A
Other languages
English (en)
Other versions
MX340988B (es
Inventor
Hiok Nam Tay
Original Assignee
Hiok Nam Tay
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Hiok Nam Tay filed Critical Hiok Nam Tay
Publication of MX2013014257A publication Critical patent/MX2013014257A/es
Publication of MX340988B publication Critical patent/MX340988B/es

Links

Classifications

    • GPHYSICS
    • G02OPTICS
    • G02BOPTICAL ELEMENTS, SYSTEMS OR APPARATUS
    • G02B7/00Mountings, adjusting means, or light-tight connections, for optical elements
    • G02B7/28Systems for automatic generation of focusing signals
    • G02B7/36Systems for automatic generation of focusing signals using image sharpness techniques, e.g. image processing techniques for generating autofocus signals
    • GPHYSICS
    • G03PHOTOGRAPHY; CINEMATOGRAPHY; ANALOGOUS TECHNIQUES USING WAVES OTHER THAN OPTICAL WAVES; ELECTROGRAPHY; HOLOGRAPHY
    • G03BAPPARATUS OR ARRANGEMENTS FOR TAKING PHOTOGRAPHS OR FOR PROJECTING OR VIEWING THEM; APPARATUS OR ARRANGEMENTS EMPLOYING ANALOGOUS TECHNIQUES USING WAVES OTHER THAN OPTICAL WAVES; ACCESSORIES THEREFOR
    • G03B13/00Viewfinders; Focusing aids for cameras; Means for focusing for cameras; Autofocus systems for cameras
    • G03B13/32Means for focusing
    • G03B13/34Power focusing
    • G03B13/36Autofocus systems
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N23/00Cameras or camera modules comprising electronic image sensors; Control thereof
    • H04N23/60Control of cameras or camera modules
    • H04N23/67Focus control based on electronic image sensor signals

Landscapes

  • Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Optics & Photonics (AREA)
  • Image Processing (AREA)
  • Image Analysis (AREA)
  • Studio Devices (AREA)
  • Automatic Focus Adjustment (AREA)
  • Focusing (AREA)

Abstract

Un sistema de imagen de auto enfoque, que incluye una matriz de píxeles unida a un generador de señal de enfoque. La matriz de píxeles capta una imagen que tiene una pluralidad de bordes. El generador genera una señal de enfoque que es una función de una pluralidad de medidas de borde-nitidez medidas a partir de cada una de la pluralidad de bordes. El generador compara una secuencia de gradientes a través del borde con una o más secuencias de referencia de los gradientes y/o curvas de referencia definidas por los datos recuperados de una memoria no volátil. El generador determina rechazar o des-enfatizar el borde para contribuir a la señal de enfoque sobre la base de búsqueda de disimilitud entre la secuencia de gradientes con las secuencias de referencia o las curvas de referencia más allá de un umbral predeterminado.

Description

SISTEMA DE IMÁGENES DE ENFOQUE AUTOMÁTICO Antecedentes de la invención 1. Campo de la invención El tema de la materia revelada refiere en general a automáticamente enfocar las imágenes capturadas por electrónica . 2. Antecedentes Equipo fotográfico como cámaras digitales y videocámaras digitales pueden contener sensores electrónicos de imagen que captan la luz para su transformación en imágenes fijas o video, respectivamente. Los sensores electrónicos de imagen típicamente contienen millones de elementos de la captura de luz, tales como los fotodiodos .
Muchos dispositivos de captura de imágenes, tales como cámaras, incluyen un sistema de auto-enfoque. El proceso de enfoque automático incluye las etapas de la captura de una imagen, el procesamiento de la imagen para determinar si está en el foco, y si no, generar una señal de realimentación que se utiliza para variar la posición de una lente de enfoque ("posición de enfoque") . Hay dos primarios técnicas de auto-enfoque. La primera técnica consiste en la medición de contraste, la otra técnica mira a una diferencia de fase entre un par de imágenes. En el método de contraste, la diferencia de intensidad entre los píxeles adyacentes se analiza y el enfoque se ajusta hasta un contraste máximo se detecta. Aunque aceptable para imágenes fijas, la técnica de contraste no es adecuada para el video.
El método de diferencia de fase incluye la división de una imagen de entrada en dos imágenes que son captadas por sensores de imagen separados. Las dos imágenes se comparan para determinar una diferencia de fase. La posición de enfoque se ajusta hasta que las dos imágenes coinciden. El método de diferencia de fase requiere partes adicionales tales como un divisor de haz y un sensor de imagen adicional. Adicionalmente, el enfoque de diferencia de fase analiza un grupo relativamente pequeño de puntos de detección fijos. El tener un pequeño grupo de puntos de detección es propenso a errores porque el ruido puede ser superpuesto a uno o más puntos. Esta técnica también no es efectiva si los puntos de detección no coinciden con un borde de la imagen. Finalmente, debido a que el método de diferencia de fase divide la luz de la cantidad de luz que incide sobre un sensor de luz se corta por la mitad o incluso más. Esto puede ser problemático en entornos oscuros, donde la intensidad de la luz de la imagen ya es baja .
BREVE DESCRIPCIÓN DE LA INVENCIÓN Un sistema de imagen de enfoque automático que incluye una matriz de pixeles acoplada a un generador de señal de foco. La matriz de pixeles captura una imagen que tiene una pluralidad de bordes. El generador genera una señal de foco que es una función de un pluralidad de medidas de nitidez de bordes medidas a partir de cada uno de la pluralidad de bordes. El generador compara una secuencia de gradientes de un lado al otro del borde con una o más secuencias de gradientes de referencia y/o curvas de referencia definidas por datos recuperados a partir de una memoria no volátil. El generador determinar de rechazar o restar la importancia al borde de contribuir a la señal de foco en base de la descubrimiento de disimilitud entre la secuencia de gradientes y las secuencias de referencia o las curvas de referencia más allá de un umbral predeterminado.
BREVE DESCRIPCIÓN DE LOS DIBUJOS La Figura 1 es un esquema de una realización de un aparato de recogida de imagen de enfoque automático; La Figura 2 es un esquema de una realización alternativa de un aparato de recogida de imagen de enfoque automático; La Figura 3 es un diagrama de bloques de un generador de señal de foco; La Figura 4 es una ilustración de una operación de un operador de Sobel horizontal en una matriz de señal de imagen; La Figura 5 ilustra un cálculo del ancho de borde de un gradiente horizontal; La Figura 6A, 6B son ilustraciones de un cálculo de un ancho de borde de un borde vertical que tiene un ángulo de inclinación f; Las Figuras 6C, 6D son ilustraciones de un cálculo de un ancho de borde de un borde horizontal que tiene un ángulo de inclinación f; La Figura 7 es un diagrama de flujo de un proceso para calcular un ángulo de inclinación f y corregir un ancho de borde de un borde vertical con una inclinación; La Figura 8 es una ilustración de un borde concatenado vertical; La Figura 9A es una ilustración de un grupo de barras verticales estrechamente envasados ; La Figura 9B es una ilustración de una señal de imagen desde un lado hasta el otro lado en la Figura 9A; La Figura 9C es una ilustración de un gradiente de Sobel horizontal desde un lado hasta el otro lado en la Figura 9A; La Figura 10 es un diagrama de flujo de un proceso para eliminar los bordes estrechamente-envasados que tienen menores profundidades de modulación; La Figura 11 es un histograma de anchos de borde que ilustran una gama de anchos de borde para el cálculo de una señal de foco fino; La Figura 12 es una ilustración de una escena; La Figura 13 es un gráfico que ilustra una variación de una cuenta de bordes estrechos durante una exploración de foco de la escena de la Figura 12; La Figura 14 es un gráfico que ilustra una variación de una señal de foco grueso durante una exploración de foco de la escena de la Figura 12; La Figura 15 es un gráfico que ilustra una variación de una señal de foco fino en toda partes de una gama de posiciones de enfoque; La Figura 16 es una ilustración de un aparato que visualiza múltiples objetos en una escena y una marca de selección sobre uno de los objetos; La Figura 17 es un diagrama de bloques de una realización alternativa de un generador de señal de foco; La Figura 18 es un esquema de una realización alternativa de un aparato de recogida de imagen de enfoque automático; La Figura 19 es un esquema de una realización de un aparato de recogida de imagen de enfoque automático que tiene una matriz de pixeles principal y una matriz de pixeles auxiliar; La Figura 20 es un esquema de una realización alternativa de un aparato de recogida de imagen de enfoque automático que tiene una matriz de pixeles principal y una matriz de pixeles auxiliar; La Figura 21 es un esquema de una realización alternativa de un aparato de recogida de imagen de enfoque automático que tiene una matriz de pixeles principal y una matriz de pixeles auxiliar; La Figura 22 es una ilustración de una variación de un ancho de borde de una matriz de pixeles principal y una variación de un ancho de borde de una matriz de pixeles auxiliar en posiciones de enfoque diferentes; La Figura 23A ilustra un gradiente de una señal de imagen de un lado al otro de dos bordes adyacentes de polaridades (es decir, signos) opuestas, donde los bordes no interactúan; La Figura 23B ilustra un gradiente de una señal de imagen de un lado al otro de dos bordes adyacentes de polaridades opuestas (es decir, signos) donde los bordes interactúan; La Figura 24A ilustra una secuencia de segundos derivados de una señal de imagen, que se extiende de un lado al otro de un borde, trazada contra la distancia en múltiplos de un espacio entre las segundos derivados sucesivas, mostrando: (A) un ancho Ws entre un par de picos positivo y negativo; (B) un ancho Wi entre un par de segundos derivados interpolados más externos que tienen una magnitud dada ¾; (C) un ancho W2 entre un par interior de segundo derivados interpolados que tienen la magnitud dada ? ; y (d) una distancia ?? desde un cruce de cero (entre el par de picos positivo y negativo) a un segundo derivado interpolado más externo que tiene la magnitud dada hi ; La Figura 24B ilustra una secuencia de muestras de datos de imagen de la señal de imagen trazada frente a la distancia en múltiplos de un espaciamiento entre muestras sucesivas, mostrando: (A) un ancho Wborde y un contraste oorde entre dos muestras en dos extremos del borde; (b) un valor de gradiente de pico gPiCO entre un par de muestras que tiene un cambio más empinado en el valor de muestra; (c) una porción indivisa del borde que tiene contraste Ci y el ancho Wpartel; y (d) una porción indivisa del borde que tiene contraste C2 y el ancho Wparte2 ; La Figura 24C ilustra una secuencia de gradientes de un lado al otro de un borde plotada frente a la distancia en múltiplos de una espaciamiento entre gradientes sucesivos, y un área de una región debajo de la secuencia de gradientes plotada; La Figura 24D ilustra una secuencia de gradientes de una señal de imagen de un lado al otro de un borde plotada frente a la distancia en múltiplos de una espaciamiento entre gradientes sucesivos, un centro de gravedad (es decir, centro de momento) , y las distancias de los gradientes desde el centro de gravedad; La Figura 25 ilustra el descubrimiento de la posición de un pico interpolado por la interpolación; La Figura 26 muestra una realización alternativa de un generador de señal de foco; Las Figuras 27-29 ilustran secuencias de gradiente juntos con perfiles de gradiente; La Figura 30 muestra una secuencia de gradientes de referencia ajustada en un perfil de gradiente del pico a sólo el 50% hacia abaje- La Figura 31 muestra una secuencia de gradientes de referencia ajustada en el perfil de gradiente de la figura bbb sólo a un lado y del pico a 70% hacia abajo; La Figura 32 muestra una secuencia de gradientes de referencia alineada a los gradientes dentro de un perfil de gradiente bajo una primera alineación, con una espaciamiento de 0,2 entre par más cercano de gradiente y gradiente de referencia; La Figura 33 muestra la secuencia alineada a los gradientes bajo una segunda alineación, con una espaciamiento de 0,5 entre par más cercano de gradiente y gradiente de referencia, lo que resulta en una menor longitud total de segmentos de linea; La Figura 34 muestra una secuencia de gradientes de referencia alineada a un perfil de gradiente de tal manera que un pico de referencia se alinea con un punto medio del perfil de gradiente a un particular nivel de gradiente; La Figura 35 muestra quela secuencia se alinea con el perfil de gradiente de la Figura 34 de manera que el pico de referencia se alinea con un pico interpolado del perfil de gradiente; La Figura 36 muestra una realización de un corrector perfil de gradiente que califica perfiles de gradiente.
DESCRIPCIÓN DETALLADA DE LA INVENCIÓN Se describe un sistema de enfoque automático de imagen que incluye una matriz de pixeles acoplada a un generador de señal de foco. La matriz de pixeles captura una imagen que tiene al menos un borde con un ancho. El generador de señal de foco puede generar una señal de foco que es una función del ancho de borde y/o de las estadísticas de anchos de borde. Un sistema de imagen de enfoque automático que incluye una matriz de pixeles acoplada a un generador de señal de foco. La matriz de pixeles captura una imagen que tiene al menos un borde con un ancho. El generador genera una señal de foco que es una función del ancho de borde y diversas estadísticas del ancho de borde. El generador puede eliminar un borde que tiene una asimetría de un gradiente de una señal de imagen. El generador también puede eliminar un borde que falla una plantilla para un pico asociado en el gradiente. Un procesador recibe la señal de foco y/o las estadísticas de anchos de borde y ajusta una posición de enfoque de una lente de enfoque. El ancho de borde se puede determinar mediante diversas técnicas que incluyen el uso de gradientes. Un histograma de anchos de borde puede ser utilizado para determinar si una imagen particular está enfocada o desenfocado. Un histograma con una gran población de anchos de borde delgados es indicativo de una imagen enfocada.
Arquitec ura Con referencia a los dibujos más particularmente por los números de referencia, la Figura 1 muestra una realización de un sistema de captura de imagen de enfoque automático 102. El sistema 102 puede ser parte de una cámara digital, pero se debe entender que el sistema puede ser incorporado en cualquier dispositivo que requiere un enfoque controlado de una imagen. El sistema 102 puede incluir un lente de enfoque 104, una matriz de pixeles y circuitos 108, un convertidor A/D 110, un procesador 112, un pantalla 114, una tarjeta de memoria 116 y un motor/circuito de accionamiento 118. La luz de una escena entra a través de la lente 104. La matriz de pixeles y circuitos 108 genera una señal analógica que es convertida a una señal digital por el convertidor A/D 110. La matriz de pixeles 108 puede incorporar un patrón de mosaico de color, por ejemplo, el patrón de Bayer. La señal digital puede ser enviada al procesador 112 que realiza varios procesos, por ejemplo la interpolación de color, el control de posición de enfoque, la corrección de color, la compresión o descompresión de imagen, el control de la interfaz de usuario y el control de la pantalla, y el generador de señal de foco 120. Si el generador de señal de foco 120 y el procesador 112 residen dentro de diferentes paquetes, una unidad de interpolación de color 148 puede ser implementado para realizar interpolación de color a partir de la señal digital 130 para estimar las señales de color que faltan en cada pixel para el generador de señal de foco 120. Alternativamente, donde el generador de señal de foco 120 y el procesador 112 residen juntos dentro de un paquete 144, el generador de señal de foco 120 puede recibe imágenes en color interpoladas del procesador 112 a través del bus 146 como se muestra en la Figura 2 o una señal de imagen única derivada de la señal de imagen original generada a partir del convertidor A/D 110, por ejemplo una señal de escala de grises.
Además, el generador de señal de foco 120 recibe un grupo de señales de control 132 a partir del procesador 112 y puede emitir señales 134 al procesador 112. Las señales de salida 134 puede comprender una o más de los siguientes: una señal de foco 134, una cuenta de bordes estrechos, y un conjunto de números que representan estadísticas de anchos de bordes de la imagen. El procesador 112 puede generar una señal de control de enfoque 136 que se envía al motor/circuito de accionamiento 118 para controlar la lente de enfoque 104. Una imagen enfocada finalmente se proporciona a la pantalla 114 y/o almacenada en la tarjeta de memoria 116. El (los) algoritmo (s) utilizado (s) para ajustar una posición de enfoque puede ser realizado (s) por el procesador 112.
La matriz de píxeles y circuitos 108, el convertidor A/D 110, el generador de señal de foco 120 y el procesador 112 todos pueden residir dentro de un paquete.
Alternativamente, la matriz de píxeles y circuitos 108, convertidor A/D 110, y el generador de señal de foco 120 pueden residir dentro un paquete 142 como el sensor de imagen 150 como se muestra en la Figura 1, por separados del procesador 112. Alternativamente, el generador de señal de foco 120 y el procesador 112 juntos pueden residir dentro de un paquete 144 como un controlador de cámara 160 como se muestra en la Figura 2, por separados de la matriz de píxeles 108 y el convertidor A/D 110. El generador de señal de foco 120 (o cualquier realización alternativa, tal como lo que se muestra en la Figura 26) y el procesador 112 pueden residir juntos sobre un sustrato semiconductor, tal como un sustrato de silicio.
Generador de señal de foco La Figura 3 muestra una realización de un generador de señal de foco 120 que recibe imagen (es) a partir de una unidad de provisión de imagen 202. La unidad de provisión de imagen 202 puede ser el interpolador de color 148 en la Figura 1 o el procesador 212 en la Figura 2. El generador de señal de foco 120 puede comprender una unidad de detección de bordes y medición de ancho (EDWM) 206, un calculador de señal de foco 210, un filtro de longitud 212, y un filtro de ancho 209. Se puede comprender además un interruptor fino 220 controlado por la entrada 'fino' 222. El generador de señal de foco 120 puede emitir una cuenta de bordes estrechos a partir del filtro de ancho 209 y una señal de foco a partir del calculador de señal de foco 210. La señal de foco se puede configurar entre una señal de foco fino y una señal de foco grueso, los que son seleccionable entre si por la entrada "fino" 222.
Alternativamente, tanto la señal de foco fino y la señal de foco grueso pueden ser calculadas y emitidas como parte de las señales de salida 134. La unidad de detección de borde y medición de ancho 206 recibe la(s) imagen (es) emitida (s) por la unidad de provisión de imagen 202. En el contexto de las Figuras 1 y 2, las señales de control, tales como la señal de control "fino" 222, pueden ser emitidas por el procesador 112 en las señales 132. También en el contexto de las Figuras 1 y 2, las señales de salida 134 se pueden emitir al procesador 112, que funciona como un controlador de sistema de enfoque que controla la posición de enfoque de la lente de enfoque 104 para hacer un foco nítido sobre la matriz de pixel 108 para imágenes de objetos analizando las señales de salida 134 para detectar un objeto nítido en la imagen. Varios componentes del generador de señal de foco 120 se describen a continuación .
La unidad EDWM 206 puede transformar la imagen de entrada de tal manera que las tres señales de la imagen— rojo (R) , verde (G) y azul (B)--se convierten en una señal de imagen única. Varias técnicas pueden ser utilizadas para transformar una imagen a una sola imagen. Valores RGB se pueden utilizar para calcular un valor de luminancia o crominancia o una proporción específica de valores RGB se puede tomar para formar la única señal de imagen. Por ejemplo, el valor de luminancia puede ser calculado con la ecuación Y = 0.2126 * 0.7152 * R + G + 0.0722 * B, donde Y es el valor de luminancia. La única señal de imagen puede entonces ser procesada por un filtro Gaussiano o cualquier filtro pasa bajo para suavizar los valores de muestras de datos de imagen entre pixeles adyacentes para eliminar un ruido .
El generador de señal de foco 120, 120', 120" no se limita a la señal de escala de grises. Se puede operar en cualquier señal de imagen para detectar uno o más bordes a partir la señal de imagen. 0 puede operar en cualquier combinación de las señales de imagen, por ejemplo Y, R-G, o B-G. Se puede operar en todas y cada una de las señales de imagen R, G, B por separado, o cualquier combinación de las mismas, para detectar los bordes. Se pueden formar las estadísticas de anchos de borde de cada una de las señales de imagen R, G, B, o cualquier combinación de las mismas. Se puede formar una señal de foco a partir de las estadísticas de anchos de borde de una o más señales de imagen .
El generador de señal de foco incluye un detector de bordes para identificar una borde en una señal de imagen. El detector de borde puede utilizar un operador de detección de bordes del primer orden, como el operador de Sobel, el operador de Prewitt, el operador de cruz de Roberts, o el operador de Roberts. El detector de borde puede utilizar un operador de detección de borde de orden superior para identificar el borde, por ejemplo, un operador del segundo orden tal como un operador de Laplace. El detector de borde puede utilizar cualquiera de los operadores de detección de bordes conocidos o cualquier operador mejorado que comparte un común principio de detección de borde de cualquiera de los operadores conocidos .
Si el detector de borde utiliza un operador de detección de borde del primer orden, una gradiente (es decir, el primera derivado) de la señal de imagen se computa. Hay varios métodos disponibles para calcular el gradiente, que incluye el uso de cualquiera de los diversos operadores de detección de bordes del primer orden, tal como el operador de Sobel, el operador de Prewitt, el operador de cruz de Roberts, y el operador de Roberts. El operador de Roberts tiene dos núcleos, que son matrices de una sola columna o una sola fila: [-1 1] y su transposición. El operador de cruz de Roberts tiene dos núcleos que son matrices de 2-por-2: [1, 0; 0, -1] y [0, 1; -1, 0], que se muestran en el formato de [primera fila de vector; segunda fila de vector; tercera fila de vector] como en Matlab . Los operadores de Prewitt y de Sobel, básicamente, tienen los mismos núcleos— [-1, 0, 1] que toma el gradiente en una dirección de la fila y su transposición que toma el gradiente en una dirección de la columna-- multiplicados además por diferentes núcleos de filtro de paso bajo que realizan filtrados de paso bajo perpendiculares a las respectivas direcciones de gradiente. Gradientes orientados a través de las columnas y las filas pueden ser calculadas para detectar bordes verticales y horizontales, respectivamente, por ejemplo usando un operador X de Sobel y un operador Y de Sobel, respectivamente. El operador X de Sobel en el posición de pixel [kr q] , donde k es un número de fila y q es un número de columna, viene dada por la ecuación Sx[k, g] = U[k, q +1] - U[k, q-1] . El operador Y de Sobel en el mismo lugar está dada por la ecuación Sy\k, g] = U[k +1, g] -U[k-1, q] , donde U es una señal de imagen de la imagen procesada .
Si el detector de borde utiliza un operador de segundo orden, un segundo derivado (tal como el laplaciano) de la señal de imagen se calcula.
Etiquetado de orientación Cada pixel puede ser etiquetado bien como un borde horizontal ('?') o como un borde vertical ('V') si la magnitud del gradiente vertical u horizontal excede un limite inferior predeterminado ("umbral de eliminación"), por ejemplo, 5 para una imagen de 8 bits, o como ninguno borde si ninguna es verdad. Este limite inferior elimina los bordes espurios debidos al sombreado suave o el ruido. Un pixel puede ser marcado como un borde vertical si la magnitud de su gradiente horizontal excede la magnitud de su gradiente vertical por una cantidad de histéresis predeterminada o más, por ejemplo 2 para una imagen de 8 bits, y viceversa. Si ambas magnitudes de gradiente difieren por menos de la cantidad de histéresis, el pixel obtiene una etiqueta de orientación que es misma que la de su vecino más cercano que tiene una etiqueta de orientación ya determinada. Por ejemplo, si la imagen se explora de la izquierda a la derecha en cada fila y por la fila hacia abajo, una secuencia de inspección de pixeles vecinos puede ser primero el pixel superior, segundo el pixel superior izquierdo, y tercero el pixel en la izquierda, y finalmente el pixel arriba a la derecha.
Aplicar esta histéresis ayuda a asegurar que los pixeles adyacentes obtener etiquetas similares si cada uno de ellos tiene magnitudes de gradiente horizontales y verticales casi idénticas. La Figura 4 ilustra el resultado del etiquetado en una matriz de 6-por-6 de gradientes horizontales y verticales. En cada celda, el gradiente horizontal está en la parte superior izquierda, el gradiente vertical está a la derecha, y una etiqueta de orientación es en la parte inferior. Sólo los pixeles que tienen la magnitud del gradiente horizontal o vertical superior a 5 calificar en este paso como pixeles de borde están impresos en negrita y obtienen etiquetas de orientación .
Las imágenes, los gradientes y las etiquetas pueden ser escaneadas horizontalmente para los bordes verticales y verticalmente para los bordes horizontales. Cada grupo de pixeles consecutivos que están en una misma fila, tienen una misma polaridad de gradiente horizontal y todos son etiquetados como bordes verticales puede ser designado un borde vertical si no pixel adyacente a la izquierda ni a la derecha del grupo son etiquetado como misma. Asimismo, cada grupo de pixeles consecutivos en una misma columna que tiene una misma polaridad de gradiente vertical y son etiquetados todos como el borde horizontal puede ser designado un borde horizontal si no pixel adyacente por encima ni por debajo del grupo satisface la misma. Asi bordes horizontales y verticales pueden ser identificados.
Ancho de borde Cada borde puede ser refinado eliminando los pixeles cuyas magnitudes de gradiente son inferiores a una determinada fracción de la magnitud de gradiente máxima en el borde. La Figura 5 ilustra este paso utilizando un umbral de refinamiento que es igual a un tercio de la magnitud de gradiente máxima del borde, refinando el ancho de borde hacia abajo a 3 a partir de la original 9. Este refinamiento distingue el dominante componente de gradiente del borde que establece el ancho de borde aparente, que domina la percepción visual de la nitidez del borde, a pesar de una imagen que tiene múltiples sombreados superpuestos que pueden causar el gradientes decrecer suavemente sobre muchos pixeles.
El ancho de borde se puede calcular en cualquiera de los métodos conocidos. Un método de cálculo del ancho de borde es simplemente contar el número de pixeles dentro de un borde. Un método alternativo de cálculo del ancho de borde se muestra en la Figura 5. En la Figura 5, una primera posición de pixel fraccionada (2,4) se encuentra entre un primer pixel exterior (pixel 3) de un borde refinado y el pixel excluido adyacente (pixel 2) por una interpolación al umbral de refinamiento 304. De mismo modo, una segunda posición de pixel fraccionada (5,5) se encuentra entre un segundo pixel exterior (pixel 5) y su pixel excluido adyacente (pixel 6) . El ancho del borde se encuentra como la diferencia entre estas dos posiciones de pixel fracciónales, 5,5 - 2,4 = 3,1.
Otro método alternativo de cálculo de ancho de borde es calcular una diferencia de la señal de imagen de un lado al otro del borde (con o sin refinamiento de borde) y se divide por un gradiente de pico del borde.
Alternativamente, el ancho de borde puede ser una distancia entre un par de picos (o pico(s) interpolado ( s ) ) positivo y negativo del derivado de segundo orden de la señal de imagen de un lado al otro del borde. Otras alternativas son posibles, que se describe en la sección "medida de nitidez de borde" más adelante en esta especificación .
Se verá más lejos en esta especificación bajo el encabezamiento "medida de nitidez de borde" que hay otras alternativas aparte de un ancho, que es simplemente un ejemplo de una medida de nitidez de borde, que es esencialmente independiente de la iluminación de la escena.
Corrección de inclinación Aunque cada borde puede ser asignado a una orientación prescrito (por ejemplo, la dirección vertical u la dirección horizontal) o otra perpendicular orientación prescrita (por ejemplo la dirección horizontal o vertical) y puede tener su ancho de borde medido en una dirección perpendicular a la orientación de borde asignada, los limites entre las regiones de valores diferentes en la imagen a partir de los cuales estos bordes surgen no pueden ser y por lo general no están perfectamente alineados con ninguna de las orientaciones prescritas. En la Figura 6A, un límite (banda sombreada) se muestra que se inclina en un ángulo de inclinación f con respecto a la linea vertical discontinua, y un ancho a se muestra que se mide en la dirección perpendicular (es decir, la dirección horizontal). Sin embargo, un ancho J (como se indica en el dibujo) medido en una dirección perpendicular a la dirección del límite (también la dirección de un borde que forma una parte del límite) es más apropiada como el ancho del límite (y también del borde) que el ancho a. Tales anchos a que no se miden pedicularmente a las direcciones de borde respectivas tienden a ser demasiado grandes y no representan el verdadero espesor de los límites respectivos.
Para los propósitos de calcular una señal de foco de los anchos de borde, los anchos de borde que se miden en una u la otra de las orientaciones prescritas tiene que ser corregida decreciendo ellas para ser anchos en direcciones perpendiculares a las direcciones de los respectivos bordes . La Unidad de Detección de Bordes y Medición de Ancho 206 realiza una corrección de ese tipo en los anchos de bordes. Como se muestra en la Figura 6A, el ancho a medido es la longitud de la hipotenusa de un triángulo rectángulo con su base (marcado con un ancho b) que se extiende perpendicularmente a través el límite sombreado (por lo tanto perpendicularmente a la dirección del borde) y con el ángulo f. El ancho corregido Jb entonces se puede obtener a partir de una proyección del ancho medida a a la dirección que es perpendicular a la dirección de borde. Según la trigonometría elemental, esta proyección se puede dar por b = a cos(^) pero aproximación puede ser utilizada si se obtiene una precisión dentro de 20%. El ángulo f, o el eos (f) propia, se puede encontrar por cualquier método conocido en la técnica para encontrar una dirección de un borde en una imagen, o por un método más exacto descrito en el diagrama de flujo que se muestra en la Figura 7.
Cada ancho de borde de un borde horizontal o vertical puede ser corregido para su inclinación con respecto a la orientación horizontal o vertical (las direcciones prescritas), respectivamente. Las Figuras 6A, 6B ilustran un cálculo de corrección para un ancho de borde medido en la dirección horizontal para un límite (y por tanto los bordes que forman los límites) que tiene una inclinación con respecto a la línea vertical. Las Figuras 6C, 6D ilustran un cálculo de corrección para un ancho de borde medido en la dirección vertical para un límite (y por tanto los bordes que forman el límite) que tiene una inclinación con respecto a la línea horizontal. La corrección puede hacerse multiplicando el ancho de borde medido en una dirección determinada, tal como una dirección vertical o una dirección horizontal, por un factor de cos( ) donde f es un ángulo de inclinación con respecto la dirección prescrita.
A modo de ejemplo, la Figura 7 muestra un diagrama de flujo de un proceso para corregir los anchos de borde para sus inclinaciones con respecto a una linea vertical. (Para los bordes horizontales, sustituya 'fila' para 'columna', y cambie "vertical" con "horizontal" en el diagrama de fluj o . ) Del paso 502 al paso 506, se encuentra un ángulo de inclinación f. Para cada borde vertical, en el paso 502, busque la posición de columna donde la magnitud de gradiente horizontal alcanza su máxima, y encuentre el gradiente horizontal x. En el paso 504, encuentre qué la magnitud de gradiente vertical atinge su máxima a lo largo de la columna y dentro de dos pixeles de distancia, y encuentre el gradiente vertical y.
En el paso 506, encuentre el ángulo de inclinación f = tan-1 (y I x) . En el paso 506, el ángulo de inclinación se puede encontrar buscando una tabla de búsqueda. Aunque los pasos 502 a 506 presenten un procedimiento y método especifico para encontrar él ángulo de inclinación, otros procedimientos y métodos conocidos en la técnica pueden utilizarse en su lugar.
Finalmente, en el paso 508, disminuya el ancho de borde multiplicando con cos( ) o con una aproximación como el experto en la técnica se suele hacer en la práctica.
Una primera modificación del proceso que se muestra en la Figura 7 es de sustituir el paso 506 y parte del paso 508 proveyendo una tabla de búsqueda que tiene entradas para varias combinaciones de valores de entrada de x e y. Para cada combinación de valores de entrada de x e y, la tabla de búsqueda devuelve un factor de corrección de ancho de borde. El factor de corrección de ancho de borde emitido por la tabla de búsqueda puede ser una aproximación a eos (tan _1 (y / x) ) dentro de 20%, preferiblemente dentro de 5%. Después, el ancho de borde se multiplica con este factor de corrección para producir un ancho de borde con corrección de inclinación.
Una segunda modificación consiste en calcular un cociente y/x entre un gradiente vertical y y un gradiente horizontal x para producir un cociente q, entonces introducir q como la entrada a una tabla de búsqueda que tiene entradas para varios valores de q. Para cada valor de q, la tabla de búsqueda devuelve un factor de corrección de ancho de borde. El factor de corrección de ancho de borde puede ser una aproximación a eos (tan ~1 (q) ) dentro de 20%, preferiblemente dentro de 5%.
Para encontrar el ángulo de inclinación f (o una aproximación al mismo de tal manera que el factor de corrección tiene una precisión de 20%) y, posteriormente, el factor de corrección cos( ) (o una aproximación al mismo) , o para encontrar directamente el factor de corrección sin encontrar el ángulo de inclinación f (como en las primera y segunda modificaciones), se pueden obtener los valores de x e y en los pasos 502 a 506, pero otros métodos se pueden emplear en su lugar.
Una tercera modificación es de llevar a cabo lo siguiente para cada uno de una pluralidad de pixeles en el borde: (a) encuentre gradiente horizontal x e gradiente vertical y, tanto para un pixel, (b) encuentre q — y/x para este píxel, y (c) encuentre un factor de corrección que corresponde a q, por ejemplo, eos (tan-1 (q) ) o una aproximación el mismo dentro de 20%. Por último, encuentre el factor de corrección para el ancho de borde promediando factores de corrección de la pluralidad de pixeles. El medio puede ser un promedio ponderado, tal como una en la cual se da para un pixel que tiene un gradiente horizonte más grande un peso mayor que otro pixel que tiene un gradiente horizontal menor.
Otras modificaciones son posibles de acuerdo con estas direcciones u otros.
Umbral de criba Bordes adyacentes pueden evitarse por completo de contribuir a una señal de foco, o hacerse sus contribuciones ser atenuadas, si sus magnitudes de gradiente máximas están por debajo de una fracción predeterminada de la magnitud de gradiente máxima de un borde adyacente más amplio. Las Figuras 9?, 9B y 9C ilustran un problema que se está abordando.
La Figura 9A muestra tres barras blancas verticales separadas por dos espacios negros estrechos de 2 pixeles de ancho. La media barra blanca es una barra estrecha de 2 pixeles de ancho. La Figura 9b muestra una señal de imagen trazada horizontalmente a través de la imagen de la Figura 9A para cada una de una imagen nítida y una imagen borrosa. La Figura 9C traza gradientes de Sobel-x de la Figura 9B para la imagen nítida y la imagen borrosa. En la Figura 9C, el primer borde (pixeles 2-5) para la imagen borrosa es más ancho que lo de la imagen nítida, y también el último borde (pixeles 13-15) como se esperaba. Sin embargo, los dos bordes más estrechos (los pixeles 9 y 10, y los pixeles de 11 y 12) tienen anchos de dos en las dos imágenes. En la Figura 9B, las pendientes que corresponden a los pixeles 9 y 10, y a los pixeles 11 y 12, respectivamente, hace falta dos pixeles para completar la transición. La imagen borrosa, sin embargo, tiene una disminución significativa de magnitud de gradiente máxima, tanto como 50%, desde los bordes más amplios hasta los bordes más estrechos. La imagen nítida, por el contrario, cambia menos de 10% entre los bordes más amplios y los bordes más estrechos.
La disminución significativa, por ejemplo, 20% o mayor, en la magnitud del gradiente máximo para un borde más estrecho adyacente a un borde más ancho que tiene un gradiente con el signo opuesto da un indicio de que la imagen borrosa no está enfocada bien, y por lo tanto el borde más estrecho no debe tomarse como una indicación de que la imagen borrosa es nítida.
Asimismo, los bordes mutuamente adyacentes de polaridades de gradiente alternantes no deben ser contados con para tal indicación aunque sus anchos de borde son pequeños, siempre y cuando están en estrecha proximidad entre sí, por ejemplo, no más de 1 píxel aparte ("brecha de borde mínima") . La brecha de borde mínima es en términos de un número de píxeles, por ejemplo, 1 o 2, o en el medio.
Además, dado que un borde puede haber ser eliminado debido a tener un gradiente de máximo menor que el umbral de eliminación, dos bordes sucesivos que tienen una polaridad de gradiente idéntica y están espaciados a no más de dos veces la brecha de borde mínima más un ancho_de_borde_nitido (el ancho_de_borde_nitido es un número asignado a designar un ancho de borde de un borde nítido) entre sí pueden ser utilizados como una condición para eliminar o disminuir una contribución de uno o ambos de los dos bordes mutuamente adyacentes.
La Unidad de detección de bordes y medida de ancho 206 puede ejecutar el siguiente algoritmo para eliminar bordes más estrechos estrechamente empaquetados en base de un umbral de criba establecido a partir de un borde más ancho, y un indicador de criba de modulación que puede encenderse y apagarse.
Para cada borde, el umbral de criba y el indicador de criba que se utilizará para el borde inmediato siguiente de la polaridad opuesta se determinan de acuerdo con el proceso del diagrama de flujo que se muestra en la Figura 10.
Dado el umbral de criba y el indicador de criba, un borde puede ser eliminado a menos que una de las condiciones siguientes ser verdad: (a) el indicador de criba está apagado para este borde, (b) una magnitud de gradiente máxima del borde no es menor que el umbral de criba para este borde. A las condiciones (a) y la condición (b) , se puede añadir una condición (c) el ancho de borde no es menor que ancho_de_borde_nitido + 1, donde un número se le ha asignado para ancho_de_borde_nitido para designar un ancho de borde de un borde nítido, y donde el "+1" se puede variar para establecer una gama de anchos de borde por encima del ancho_de_borde_nitido dentro de la cual bordes pueden ser eliminados si fallan (a) y (b) . Para el ejemplo que se muestra en las Figuras 9A-9C, el ancho_de_borde_nitido puede ser 2. La Figura 10 es un diagrama de flujo para determinar un umbral de criba y un indicador de criba para cada borde. Para los bordes verticales, asuma escanear de la izquierda a la derecha a lo largo de una fila, aunque esto no es necesario. (Para los bordes horizontales, asuma escanear de arriba a abajo a lo largo de una columna, aunque esto no es necesario.) Tiene un número asignado para ancho_de_borde_nitido y puede ser 2 para el ejemplo que se muestra en las Figuras 9A-9C. Al comenzar en el primer borde en el paso 702, cada borde se examina en el paso 720 con respecto a si su ancho de borde es mayor o igual a uno más el ancho_de_borde_nitido, siendo el valor de uno el valor de brecha de borde mínima utilizado para esta ilustración, pero un valor diferente puede ser utilizado, por ejemplo, entre 0,5 y 2,0. En caso afirmativo, el borde es un borde más ancho, y el paso 706 sigue para establecer el umbral de criba para el borde inmediato siguiente que tiene una polaridad opuesta a beta veces una magnitud de gradiente máxima del borde, siendo beta de 0,3 a 0,7, de preferencia 0,55, entonces el paso 708 sigue a encender el indicador de criba para el siguiente borde, a continuación, proceder al próximo borde. Si no, el borde no es un borde más ancho, y el paso 730 sigue a comprobar si el espaciado desde el borde anterior de la polaridad de gradiente misma es mayor que dos veces la brecha de borde mínima (o un número diferente predeterminado) más el ancho_de_borde_nitido y el borde inmediata antes de una polaridad opuesta, si existe, es más que la brecha de borde mínima de distancia de sí. Si es así, el paso 710 sigue a apagar el indicador de criba para el siguiente borde. Si no, mantenga el indicador de criba y el umbral de criba para el siguiente borde y proceder al siguiente borde. Beta puede ser una fracción predeterminada, o puede ser una fracción calculada siguiendo una fórmula predeterminada, tal como una función de un ancho de borde. En este último caso, beta puede variar desde una parte de la imagen a otra parte .
Medidas de nitidez de borde En la descripción anterior, la nitidez de imagen de un borde está representada por un ancho del borde que está medido a partir de una secuencia de gradientes que se extiende de un lado al otro del borde con las gradientes orientadas a través del borde, hay alternativas que funcionan en el principio similar. En esencia, lo que permite la señal de foco generada de esta manera es que el borde individual contribuye una cantidad (en lo sucesivo, "medida de nitidez de borde") que es independiente de la ampliación de los datos de imagen por, por ejemplo, 20%, o esencialmente independientes, tales como no cambia por más del 5% para el 20% de contraer los datos de la imagen, lo que ayuda a hacer la señal de foco que sea independiente de o mucho menos dependiente de la iluminación de la escena de la imagen o la reflectividad de los objetos en la escena en comparación con el método convencional de detección de contraste .
Además, en el presente generador de señal de foco 120, cualquier medida de nitidez de borde que tiene la característica, de arriba, de ser independiente o esencialmente independiente de 20% de contraer los datos de imagen es una buena alternativa al ancho que está medida desde un gradiente o gradiente interpolado hasta otro gradiente o gradiente interpolado de un mismo valor del gradiente.
De preferencia, la medida de nitidez de borde alternativa tiene una unidad que no incluye una unidad de la energía. Se determina la unidad de la medida de nitidez de borde en base a dos puntos: (A) cada una de las muestras de dados de imagen en la cual se opera el operador de detección de borde de primer orden tiene una unidad de la energía, (b) la distancia entre muestras tiene una unidad de la longitud. En base de los puntos (a) y (b) , un valor de gradiente tiene una unidad de una unidad de la energía dividida por una unidad de la longitud. Del mismo modo, el contraste desde un lado hasta el otro del borde o de cualquier porción indivisa del borde tiene una unidad de la energía. Por lo tanto el contraste no es una buena medida de nitidez de borde, ya que la unidad revela que se ve afectada por la iluminación de la escena y la reflectividad del objeto. Tampoco es gradiente de pico del borde, porque la unidad del gradiente de pico tiene una unidad de la energía en ella, lo que indica también que es sensible a un cambio en la iluminación de la escena. Por otra parte, el gradiente de pico del borde dividido por un contraste del borde es una buena medida de nitidez de borde, ya que tiene una unidad del reciproco de una unidad de la longitud. Como otro ejemplo, el recuento de los gradientes cuyos valores de gradiente exceden una cierta fracción predeterminada del gradiente de pico es una buena medida de nitidez de borde, porque el recuento es simplemente una medida de la distancia cuantificado por el tamaño de la separación entre gradientes contiguos y, por lo tanto, tiene una unidad de la longitud.
Se hace notar aqui que, en la generación de la medida de nitidez de borde, se puede generar un gradiente a partir de un operador de detección de borde de primer orden que se utiliza para detectar el borde, o se puede generar a partir de un diferente operador de primera derivado (es decir, operador de gradiente) . Por ejemplo, mientras que el operador de Sobel (o incluso un operador de detección de borde de segundo orden, tal como un operador laplaciano) puede ser utilizado para detectar el borde, el operador Roberts cuya núcleos son simplemente [-1, 1] y su transpuesta, que es simplemente restar una muestra de datos de imagen a partir de la muestra siguiente en la orientación del operador de gradiente, con el gradiente resultante situado a mitad entre las dos muestras. Bordes se pueden detectar con un operador de detección de borde de orden superior que el primer orden independientemente de uno o más operadores de derivados utilizados en la generación de la medida de nitidez de borde o cualquiera de las medidas de forma descritas en la siguiente sección.
Por decirlo de otra manera, la medida de nitidez de borde deberla tener una unidad de una potencia de una unidad de la longitud, por ejemplo un cuadrado de una unidad de la longitud, un reciproco de una unidad de la longitud, la unidad de la misma longitud, o una raíz cuadrada de una unidad de la longitud.
Cualquier tal medida de nitidez de borde alternativa puede sustituir al ancho de borde en el generador de señal de foco 120.
Para corregir de una inclinación del borde, el factor de corrección como se ha descrito anteriormente con referencia a las Figuras 6A-6D y la Figura 7 (en lo sucesivo "factor de corrección del ancho") se debería convertir a adoptar el mismo poder. Por ejemplo, si la medida de nitidez de borde es el gradiente de pico dividido por un contraste, lo que le da una unidad del recíproco de una unidad de la longitud, entonces el factor de corrección apropiado para la medida de nitidez de borde es el recíproco del factor de corrección se describe anteriormente con referencia a las Figuras 6A-6D y la Figura 7. Como otro ejemplo, si la medida de nitidez de borde tiene una unidad de un cuadrado de una unidad de la longitud, entonces el factor de corrección de inclinación para la medida de nitidez de borde debe ser un cuadrado del factor de corrección del ancho.
Se describen varios ejemplos de alternativas medidas de nitidez de borde a continuación con referencia a los dibujos en las Figura 24A-B.
La Figura 24C ilustra una secuencia de gradientes, que se extiende de un lado al otro de un borde, trazada contra la distancia en múltiplos de una separación entre gradientes sucesivos, y un área A3 de una región sombreada bajo la secuencia de gradientes trazado. En este ejemplo, la región se define entre dos niveles de gradiente Li y L2, que se puede definir con respecto a un valor de gradiente de pico interpolado (alternativamente, el valor de gradiente de pico) de la secuencia de gradientes como, por ejemplo, una parte predeterminada del valor de gradiente de pico interpolado. La región sombreada tiene cuatro esquinas de gradientes interpolados . El área dividido por el valor de gradiente de pico interpolado (alternativamente, el valor de gradiente de pico) es una buena medida de nitidez de borde, ya que cuenta con una unidad de la longitud. Se hace notar que las definiciones alternativas de la región son posibles. Por ejemplo, la región puede estar delimitada desde arriba no por el nivel de gradiente Li pero por la secuencia de gradientes.
La Figura 24D ilustra una secuencia de gradientes de muestras de datos de imagen, que se extiende de un lado al otro de un borde, trazada frente a la distancia en múltiplos de una separación entre gradientes sucesivos, un centro de gravedad 3401 (es decir, el centro de momento) , y distancias u2, u3, u4, u5 y u6 de los gradientes (que tiene valores de gradiente g2, g3, g , gs y ge) desde el centro de gravedad. Una buena medida de nitidez de borde es un k -ésimo momento central de los gradientes sobre el centro de gravedad, es decir, un promedio ponderado de las distancias de los gradientes desde el centro de gravedad con los magnitudes de los respectivos gradientes como sus pesos, k siendo un número entero par. Por ejemplo, k puede ser 2, lo que hace que la medida de nitidez de borde sea una variación como si la secuencia de gradientes fue una distribución de probabilidad. En este ejemplo, la medida de nitidez de borde tiene una unidad de un cuadrado de una unidad de la longitud. Más en general, la medida de nitidez de borde puede ser una función de las distancias de una pluralidad de gradientes de una secuencia de gradientes desde una posición predefinida con respecto a la pluralidad de gradientes, siendo la secuencia puesto en una fila de un lado al otro del borde. Aparte del centro de gravedad, la posición predefinida puede ser un posición de pico interpolado para la secuencia de gradientes. Un subcon unto propio de los gradientes del borde se puede elige según un criterio predefinido para participar en este cálculo. Por ejemplo, se puede obliga los gradientes a tener valores de gradiente de al menos una fracción predeterminada del gradiente de pico o el valor de gradiente de un pico interpolado de la secuencia de gradientes .
La Figura 24A ilustra una secuencia de segundos derivados de una secuencia de muestras de imagen datos, que se extiende de un lado al otro de un borde, trazada frente a la distancia en múltiplos de un espacio entre segundos derivados sucesivos, que muestra (a) un ancho Ws entre un par de picos positivo y negativo, (b) un ancho Wx entre un par de segundos derivados interpolados más externos que tienen una dada magnitud hlr (c) un ancho W2 entre un par interior de segundos derivados interpolados que tienen la dada magnitud hx, y (d) una distancia Di 3ß desde un cruce de cero (entre el par de picos positivo y negativo) hasta un segundo derivado interpolado más externo que tiene la dada magnitud hi . Cualquiera de los tres anchos Ws, Wx y W2 puede utilizarse como la medida de nitidez de borde.
En el ejemplo de la Figura 24A, además, la medida de nitidez de borde puede ser una suma ponderada de las distancias desde el cruce por cero (entre el par de picos positivo y negativo, y puede ser interpolado) de los segundos derivados, sus pesos siendo magnitudes de los respectivos segundos derivados. Más en general, la medida de nitidez de borde puede ser una función de las distancias de una pluralidad de segundos derivados proveniente de todo el borde desde una posición predefinida con respecto a la pluralidad de segundos derivados. Aparte de la posición de cruce por cero, un centro de gravedad es un buen candidato a la posición predefinida, los pesos siendo magnitudes de los segundos derivados. Otro más buen candidato a la posición predefinida puede ser el punto al mitad entre el par de gradientes positivo y negativo.
La Figura 24B ilustra una secuencia de muestras de datos de imagen, provenientes de los pixeles de un borde, trazada contra la distancia en múltiplos de una separación entre pixeles contiguos, que muestra (a) un ancho Wborde y un contraste Cborde entre dos muestras en dos extremos del borde, (b) un valor de gradiente de pico gPiCO (generada por el operador de Roberts) entre un par de muestras que tiene un cambio más empinado de valor de muestra, (c) una parte indivisa más estrecha del borde que tiene el contraste Ci y el ancho Wpartel, y (d) un parte indivisa más estrecha del borde que tiene el contraste C2 y el ancho Wparte2. Como se mencionó anteriormente, el valor de gradiente de pico gPiCO dividido por el contraste Cborde es una buena medida de nitidez de borde. El ancho borde es otra buena medida de nitidez de borde. Los anchos Wpartei y WParte2 también son buenas alternativas. Los contrastes Ci y/o C2 se puede definir como una porción predetermina del contraste de borde Cborde. Como alternativa, cualquiera de ellos puede ser definida como un múltiplo predeterminado de un gradiente de pico del borde, tal como el gradiente de pico gPiCO- También se observa aquí que la "porción indivisa más estrecha" puede ser delimitada por muestras interpolados de datos de imagen, tales como las mostradas como los cuadrados en la Figura 24B, o por el redondeo hacia arriba o hacia abajo a un número de pixeles más cercano .
Calificación de borde El siguiente método de clasificación de los bordes se puede realizar en la Unidad De Detección De Bordes Y Medida De Ancho 206 y se describe a continuación con referencia a las Figuras 27-35.
En este método, el perfil de gradiente se compara con una secuencia de gradientes de referencia. Cada uno de los gradientes de referencia tiene un valor de gradiente y una espaciamiento con el siguiente gradiente de referencia en la secuencia. Los gradientes de referencia se generan en una relación predefinida entre ellos. Por ejemplo, la secuencia puede ser generada a partir de y/o ser almacenada como una secuencia en una tabla de búsqueda.
Como otro ejemplo, la secuencia se puede definir por medio de una fórmula matemática.
La Figura 27 ilustra una secuencia de gradientes de referencia 3402, 3404, 3406, 3406 plotada a lo largo con un perfil de gradiente que consiste en gradientes 3502, 3504, 3506, 3508 (marcadores de "X") en las posiciones 2, 3, 4 y 5, respectivamente. El gradiente de referencia 3402 tiene una espaciamiento DI con el siguiente gradiente de referencia 3404. El gradiente de referencia 3404 tiene una espaciamiento D2 con el siguiente gradiente de referencia 3406. El gradiente de referencia 3406 tiene una espaciamiento D3 con el siguiente- gradiente de referencia 3408. Los gradientes de referencia 3402, 3404, 3406 y 3406 caidan en una curva de gradiente de referencia 3400 en forma de la campana (curva de puntos) que tiene una posición de pico de referencia 3401 entre las posiciones 3 y 4. La curva de gradiente de referencia 3400 representa el valor que un gradiente de referencia debe tener por su distancia desde la posición del pico de referencia 3401.
La curva de gradiente de referencia 3402 puede ser definida a través de una fórmula matemática. La fórmula puede utilizar expresiones matemáticas diferentes para los tramos diferentes de la curva de gradiente de referencia 3402. Por ejemplo, se puede utilizar una fórmula hipérbola para definir un intervalo desde un pico de referencia de la curva de gradiente de referencia 3402 hasta 50% hacia abajo desde el pico de referencia, y una polinomio de tercer grado a cada lado de la curva para definir una interval más abajo de 50% por debajo del pico de referencia. Preferiblemente, la fórmula matemática se parametriza por (o se asocia con) uno o más parámetros, por ejemplo, cualquier uno o más entre un ancho de referencia, un ángulo de inclinación del borde (que se puede utilizar para que coincida con un ángulo de inclinación de un borde) , un nivel de gradiente de pico, un factor de zoom (de una lente de zoom de la cámara) , un tamaño de apertura (de la lente de la cámara), et cetera. Coeficientes que definen la fórmula pueden ser almacenados en una tabla de búsqueda (por ejemplo, en una memoria no volátil, o almacenados en una memoria de escritura-lectura tales como una SRAM o una DRAM a partir de una memoria no volátil) e indexado (es decir, enchavetado) por diversas combinaciones de los valores de los parámetros.
Alternativamente, los gradientes de referencia pueden definirse a través de y/o en una tabla de búsqueda. La tabla de búsqueda puede especificar más de una secuencia. Cada secuencia se especifica en la tabla de búsqueda con un valor de gradiente para cada gradiente de referencia y una espaciamiento al siguiente valor de gradiente de referencia en la secuencia. Si el espaciamiento es constante a lo largo de la secuencia, se puede especificar sólo una vez para toda la secuencia. Si el espaciamiento es constante para toda la tabla de búsqueda para todas las secuencias, se puede especificar una sola vez por la tabla de búsqueda. Alternativamente, el espaciamiento puede asumir un valor predeterminado, por ejemplo, 1,0. Un pico de referencia puede ser especificado para la secuencia, para tener un nivel de pico de gradiente y una posición relativa a (es decir, el espaciamiento y si es antes/después de) un gradiente de referencia en la secuencia.
Más gradientes de referencia pueden ser interpolados a partir de los gradientes de referencia generados directamente a partir de la fuente (por ejemplo, la tabla de búsqueda o la fórmula matemática) como un generador de gradiente de referencia predefinido. Puede ser útil para interpolar un gradiente de referencia al lugar donde el perfil de gradiente tiene una pendiente empinada. Por ejemplo, en la Figura 27, interpolado gradiente de referencia 3412 (marcador de "+") se interpola a partir de los gradientes de referencia 3402, 3404, 3406 para estar en la posición 3, donde el gradiente es 3504. Gradientes de referencia interpolados están igualmente marcados "+" en las Figuras 28-35.
Por otro lado, los gradientes pueden ser interpolados a partir del perfil de gradiente a donde un gradiente de referencia se coloca en relación con el perfil de gradiente. Puede ser útil para interpolar un gradiente interpolado a donde un gradiente de referencia está. Por ejemplo, el gradiente interpolado 3514 (marcado "?") se interpola a partir de los gradientes 3502, 3504, 3506 para ser cerca gradiente de referencia 3402. Gradientes interpolados están igualmente marcados "?" en las Figuras 28-35.
La tabla de búsqueda puede almacenar una pluralidad de secuencias, cada una para una combinación diferente de valores de parámetros . Cada secuencia puede ser parametrizada por (o asociada con) uno o más parámetros, por ejemplo, cualquier uno o más entre un ancho de referencia, un ángulo de inclinación del borde , un nivel máximo de gradiente, un factor de zoom (de una lente de zoom de la cámara) , un tamaño de apertura (de la lente de la cámara), etc. Por ejemplo, una secuencia almacenada en la tabla de búsqueda puede corresponder a un factor de zoom de 2 veces, una abertura de F3.5, un ancho de 4,5 al 50% hacia abajo a partir el pico, un ángulo de inclinación del borde de 30 grados, mientras que otra secuencia puede corresponder a un factor de zoom de 0,5 veces, una apertura de F2.8, un ancho de 3,7 al 50% hacia abajo a partir el pico, y un ángulo de inclinación del borde de 0 grado .
La tabla de búsgueda puede ser almacenada en una memoria, que puede ser una memoria RAM (SRAM o DRAM) o una memoria no volátil, por ejemplo, una memoria flash, o simplemente un banco de registros. La tabla de búsqueda puede ser almacenada en una memoria no volátil fuera del generador de señal de foco pero dentro del sistema de captura de imágenes 102.
Una secuencia más corta se puede extraer a partir de una secuencia almacenada en la tabla de búsqueda de tal manera que la secuencia extraída consiste en un subconjunto propio de los gradientes de referencia de la secuencia almacenada en la tabla de búsqueda. Los espaciamientos entre los gradientes de referencia extraídos, así como otros datos, tales como las posiciones relativas de los gradientes de referencia extraídos con respecto al pico de referencia, pueden ser extraídos juntamente. Por ejemplo, una secuencia de 30 gradientes de referencia almacenada en la tabla de búsqueda puede tener un espaciamiento uniforme de 0,2 entre los gradientes de referencia sucesivos y puede tener un pico de referencia que coincide con el 16° gradiente de referencia en la secuencia, mientras que una extracción extrae el 7o, el 13° y el 22° gradientes de referencia para formar una secuencia más corta que consiste de estas tres gradientes de referencia. En la secuencia extraída de este ejemplo, una espaciamiento desde el primer gradiente de referencia hasta el segundo gradiente de referencia es 1,2, un espaciamiento desde el segundo gradiente referencia hasta el tercer gradiente de referencia es 1,8, y el pico de referencia se observó a estar entre el segundo y tercero gradientes de referencia y a una distancia de 0, 6 desde el segundo gradiente de referencia.
La secuencia de gradientes de referencia puede ser ajustada de curva en el perfil de gradiente o una porción del mismo. Por ejemplo, la secuencia puede ser ajustada en el perfil de gradiente desde el gradiente máximo y el 50% hacia abajo, como muestra la Figura 30. Como otro ejemplo, la secuencia puede ser ajustada en un solo lado del perfil de gradiente, tal como a partir del gradiente de pico al 70% hacia abajo a partir del gradiente de pico, como muestra la Figura 31. Preferiblemente, al menos un gradiente de referencia tiene un valor de gradiente por encima del 70% del nivel de gradiente de la gradiente de pico (alternativamente, del gradiente de pico interpolado) . Más preferiblemente, está por encima de 85%. También, preferiblemente al menos un gradiente de referencia tiene un valor de gradiente por debajo del 70%, y más preferiblemente, por debajo del 50% del gradiente máximo (alternativamente, del gradiente de pico interpolado) .
Todos los valores de gradiente de referencia pueden ser multiplicados por un factor de escala para mejorar el ajuste de curvas. Todos los valores de gradiente a los cual se ajusta se pueden multiplicar por un factor de escala para mejorar el ajuste de curvas.
Todos los gradientes de referencia se pueden desplazar en la posición juntos en relación con el perfil de gradiente para conseguir un mejor ajuste de curva. Por ejemplo, un perfil de gradiente puede tener un primer, un segundo, un tercer y un cuarto gradiente y puede tener un espaciamiento uniforme de 1,0 de un gradiente al siguiente, mientras que una secuencia de gradientes de referencia que consta de un primer, un segundo, un tercer y un cuarto gradientes de referencia y que tiene un espaciamiento uniforme de 1,0 de un gradiente de referencia al siguiente se puede colocar en relación con el perfil de gradiente de tal manera que el primer gradiente de referencia se encuentra entre los primer y segundo gradientes y en el espaciamiento de 0,2 a partir del primer gradiente, el segundo gradiente de referencia se encuentra entre los segundo y tercer gradientes y en el espaciamiento de 0,2 desde el segundo gradiente, y asi sucesivamente, como se muestra en la Figura 32, o la secuencia puede ser posicionada de tal manera que el espaciamiento desde el primer gradiente de referencia hasta el primera gradiente es 0,5, el espaciamiento desde el segundo gradiente de referencia hasta el segundo gradiente es 0,5, y asi sucesivamente, como se muestra en la Figura 33. Los últimos resultados en un ajuste de curva donde un criterio de ajuste de curva especifica que el mejor ajuste de curvas reduce la longitud total de segmentos de linea (lineas gruesas continuas) que unen pares más cercanos de gradientes o gradientes de referencia. Criterios alternativos para encontrar un mejor ajuste de curva están disponibles. Por ejemplo, una alternativa es interpolar gradientes de referencia a emparejarse con los gradientes (o viceversa) y tomar la suma de los cuadrados de las diferencias entre los gradientes (gradientes de referencia) y los gradientes de referencia pareados (gradientes pareadas) . El gradiente y el gradiente de referencia dentro de cada par no necesariamente comparten exactamente la misma posición, pero preferiblemente están separados por 0,25 o menos, y más preferiblemente por 0,1 o menos. Otras alternativas son disponibles.
Si se proporciona una ubicación pico de referencia junto con la secuencia de gradientes de referencia, la secuencia puede ser alineada con el perfil de gradiente alineando el pico de referencia con una posición determinada del perfil de gradiente según una manera predeterminada. Hay más de una forma para determinar esta posición. En cierto modo, esta posición puede ser un punto medio entre dos gradiente (s) o gradiente (s) interpolado ( s ) , uno en cada uno de los dos lados del perfil de gradiente en un nivel de gradiente predeterminado, que puede especificarse como un porcentaje predeterminado hacia abajo a partir del nivel de gradiente del gradiente de pico o un pico interpolado, tal como se muestra en la Figura 34. En la Figura 34, la posición de pico de referencia 3401 se hace coincidir con un punto medio entre el gradiente 3802 y el gradiente interpolado 3824. En otra forma, el pico de referencia se puede alinear a una posición de pico interpolado, como se muestra la Figura 35. Más en general o alternativamente, la secuencia puede ser alineada con el perfil de gradiente de tal manera que el pico de referencia está situado entre un par de gradientes, tales como gradientes 3804, 3806 de la Figura 34 que flanquean el punto medio (alternativamente, el pico interpolado) .
El perfil de gradiente se compara con la secuencia para generar un resultado de comparación en una manera predefinida, que puede o no ser igual o similar a la del criterio de ajuste de curvas. Gradientes interpolados o gradientes de referencia se pueden incluir en la comparación, especialmente cuando ellos pueden mejorar la precisión y/o exactitud de la comparación. Un enfoque para la comparación es evaluar cómo un ancho del perfil de gradiente se relaciona a un ancho de referencia de la secuencia. Ambos anchos se pueden medir en un nivel de gradiente, que puede estar predeterminado como un porcentaje predeterminado hacia abajo a partir del gradiente de pico o un pico interpolado. Por ejemplo, en la Figura 27, el ancho WRef de referencia y un ancho de perfil de gradiente Wi (mido entre el gradiente interpolado 3512 y el gradiente 3508) ambos se refieren a un mismo nivel de gradiente (linea de puntos horizontal) . Alternativamente, pueden ser medidos a niveles de gradiente diferentes. Por ejemplo, el ancho de referencia puede esperarse que sea, idealmente, del 70% de la del ancho del perfil de gradiente, donde el ancho de referencia corresponde a un ancho de la curva de gradiente de referencia en 30% hacia abajo a partir del pico de referencia de la curva de gradiente de referencia, mientras que el ancho del perfil de gradiente se mide al 50% hacia abajo del gradiente de pico o un pico interpolado del perfil de gradiente. El ancho de referencia puede ser proporcionado por el generador de secuencia junto con la secuencia. Alternativamente, puede medirse a partir de la secuencia prevista. En este enfoque, la comparación puede reportar un resultado de si o no en base de cómo similar o diferente están estas dos anchos bajo un criterio predeterminado, por ejemplo, una comparación de una diferencia entre los anchos contra un porcentaje predeterminado de una de los anchos.
Alternativamente, la comparación puede dar como el resultado un parámetro que informa de un grado que va desde un nivel que representa una alta similitud hasta un nivel que representa la alta disimilitud, con otro nivel (es) para representar los niveles intermedios de disimilitud o similitud entre ellos.
Otro enfoque para comparar el perfil de gradiente y la secuencia de referencia es comparar entre gradiente y gradiente de referencia individual en pares. Como se muestra en la Figura 27, los gradientes o gradientes interpolados 3514, 3504, 3506, 3508 están emparejados con gradientes de referencia o gradientes de referencia interpolados 3402, 3412, 3406, 3408, respectivamente. Se evalúan las diferencias aritméticas entre los primeros y los últimos, y un resultado final proveniente de la comparación en base de uno o más de tales comparaciones (por ejemplo, diferencias aritméticas) se reportan en un de forma binario de si-o-no, o se informaron en un multi-pasos, de manera graduada de tal manera que se presentan grados diferentes de similitud o disimilitud. Por ejemplo, en las Figuras 28 y 29, al lado de cada par (entre cinco pares) de gradiente y gradiente de referencia (uno o ambos pueden ser interpolados), un marcador "I" se coloca para indicar la cantidad por la cual sus niveles de gradiente están separados. El gradiente y el gradiente de referencia dentro de cada par no necesitan necesariamente comparten exactamente la misma posición, pero preferiblemente están dentro de 0,25 de uno al otro, y más preferiblemente dentro de 0,1 del uno al otro. La comparación puede reportar un resultado binario o un resultado gradado en base de la mayor de las cinco diferencias de niveles de gradiente. Por otra parte, la comparación puede hacerlo en base de una raiz cuadrada de la suma sobre cuadrados de las cinco diferencias. Hay otras maneras posibles para representar cuantitativamente la desviación de los cinco gradientes a partir de los gradientes de referencia gue pueden ocurrir a un experto. Para informar de un resultado binario, un resultado gradual, tal como lo gue se describió anteriormente, que surge a partir de una o más de estas diferencias, se puede comparar lo con un umbral predeterminado .
Una o más secuencias pueden ser seleccionadas para ajusfar de curva al perfil de gradiente. Si se selecciona más de una secuencia, una secuencia gue mejor se adapta al perfil de gradiente puede ser elegida tener para informar su resultado de comparación. Secuencia (s) se puede (n) seleccionar en base de uno o más parámetros asociados con el perfil de gradiente, tales como un ancho del perfil de gradiente medido a un porcentaje predeterminado hacia abajo a partir del gradiente de pico o un pico interpolado, o un ancho de un solo lado del perfil de gradiente medido a partir de una posición del pico interpolado a un gradiente o gradiente interpolado a un porcentaje predeterminado hacia abajo a partir del gradiente de pico o el pico interpolado, o un ángulo de inclinación de un borde asociado con el perfil de gradiente o que da lugar al perfil de gradiente, o un área bajo el perfil de gradiente (hasta un cierto porcentaje por debajo del pico o pico interpolado) , o una espaciamiento desde la posición del pico interpolado hasta el gradiente de pico, o un factor de zoom de la lente de zoom o un tamaño de apertura de la lente, etc.
Si el resultado proveniente de la comparación indica que hay disimilitud más allá de un umbral, el generador de señal de foco puede des-enfatizar o rechazar por completo un borde asociado con el perfil de gradiente y su ancho de borde de entrar en un cálculo por una señal de foco o el recuento de borde o control de enfoque.
Como se muestra en una forma de realización en la Figura 36, un extractor de parámetros recibe gradientes de la imagen y emite uno o más parámetro (s) extraído (s) a partir de un perfil de gradiente entre los gradientes para un selector de secuencia, que convierte el uno o más parámetro ( s ) en dirreción ( es ) . Esta(s) direcció ( es ) es (son) recibida (s) por el generador de secuencia, que en respuesta envía una o más secuencias de gradientes de referencia o una o más series de parámetros que definen las curvas de gradiente de referencia correspondientes para una unidad de evaluación. La unidad de evaluación realiza el ajuste de curva y la comparación para generar el resultado de comparación. Parámetros extraídos, tales como el ángulo de inclinación del borde y el ancho de borde, se introducen en la unidad de evaluación. La unidad de evaluación comprende un circuito aritmético para realizar la comparación y/o el ajuste de curvas. La unidad de evaluación puede comprender además un par de memoria para el circuito aritmético. Estos bloques son parte de la Unidad De Detección De Bordes Y Medida De Ancho 206. Uno o más entre la generación de la secuencia o curva, el ajuste de curva y la comparación puede ser ejecutada bajo el control de los instrucciones de ordenador almacenadas en una memoria no-volátil en el sistema de captura de imágenes 102. El método anterior se puede realizar en la Unidad De Detección De Bordes Y Medida De Ancho 206.
Se observa que, en este revelación , se dice que una cantidad proveniente de un borde, tal como un nivel de gradiente, está normalizado cuando es dividido, de forma predeterminada a menos que se especifique lo contrario, o bien un valor de gradiente de pico del borde o un valor de gradiente de un pico interpolada. Por ejemplo, en la Figura 23B, gradiente de pico 3212 tiene un valor normalizado de exactamente 1, mientras que en la Figura 24C el pico interpolado 3270 es diferente del pico de gradiente 3212, y los gradientes que se muestran en la Figura 24C se normalizan con respecto al pico interpolado 3270, no el gradiente de pico 3212.
Filtro de longitud A continuación, se describe una función del filtro de longitud 212. En términos generales, el filtro de longitud 212 crea una preferencia por los bordes, cada uno de los cual se conecta a uno o más bordes de una orientación similar. Un grupo de bordes que son similarmente orientada y mutuamente conectados dentro del grupo ("borde concatenado"), es menos probable que sea debido al ruido, en comparación con un borde alejado que no toque ningún otro borde de orientación similar. Cuanto bordes de una orientación similar concatenados de tal manera, menor será la probabilidad de ellos debido al ruido. La probabilidad de que el grupo ser debido al ruido cae exponencialmente a medida que el número de bordes dentro del grupo aumenta, y mucho más rápido que linealmente. Esta propiedad puede aprovecharse para rechazar el ruido, especialmente en situaciones de poca iluminación o de exposición corta donde la relación señal-ruido es débil, por ejemplo menos de 10, dentro de la imagen o dentro de la región de interés. La preferencia puede ser implementada en cualquier método razonable para expresar esa preferencia. Las varias formas descritas a continuación son meramente ej emplos .
Un primer método consiste en eliminar los bordes que pertenecen a los bordes concatenados verticales o horizontales que tienen longitudes menores que un umbral de longitud concatenada. El umbral de longitud concatenada puede ser mayor cuando la región de interés es menor iluminada. Por ejemplo, el umbral de longitud concatenada puede comenzar tan pequeño como 2, pero aumenta a 8 a medida que una relación señal-ruido dentro de la región de interés se reduce a 5. El umbral de longitud concatenada puede ser emitido por el procesador 112, 112', 112", por ejemplo a través de una señal de xorden de longitud1, que se muestra en la Figura 3, como parte de las señales 132. Alternativamente, el umbral se puede calcular de acuerdo con una fórmula en el generador de señal de foco.
Un segundo método consiste en proporcionar un peso de longitud en el filtro de longitud 212 para cada borde y aplicar el peso de longitud a un cálculo de la señal de foco en el calculador de señal de foco 210. Un borde que forma parte de un borde concatenado más largo recibe un peso mayor que uno que es parte de un borde concatenado más corto. Por ejemplo, el peso de longitud puede ser un cuadrado de la longitud del borde concatenado. Por lo tanto, una contribución de cada borde para la señal de foco puede ser multiplicado por un factor de A/B antes de sumar todas las contribuciones para formar la señal de foco, donde B es una suma de los pesos de longitud de todos los bordes que entran en el cálculo de la señal de foco, y A es un peso de longitud del borde. Asimismo, el histograma de ancho de borde, que puede ser provisto como parte de las señales 134, puede hacer los bordes que son miembros de los bordes concatenados más largos contribuir más a los intervalos que corresponden a sus anchos de borde respectivos, por lo tanto se prefieren, en lugar de que todos los bordes contribuyen la misma cantidad, por ejemplo, una. Asi, por ejemplo, cada borde puede contribuir A/C, donde C es un valor medio de A sobre los bordes. De manera similar, la cuenta de borde estrecho puede hacer los bordes que son miembros a los bordes concatenados más largos contribuir más. Asi, por ejemplo, la contribución de cada borde puede ser multiplicado por A/D, donde D es un promedio de A entre los bordes que se cuentan en la cuenta de bordes estrechos.
Un grupo de N bordes verticales (horizontales) donde, excepto el superior (el más izquierdo) borde y el inferior (el más derecho) borde, cada borde toca otros dos bordes verticales (horizontales), de los cual una está encima (a la izquierda) de si mismo y los otro está abajo (a la derecha) de si mismo, es un borde concatenado vertical (horizontal) de longitud N. El superior (el más izquierdo) borde necesita sólo tocar un inferior (el más derecho) borde de si mismo. El inferior (el más derecho) borde sólo necesita tocar un borde que está superior a (a la izquierda de) si mismo.
La Figura 8 ilustra un borde vertical concatenado y su longitud. En la Figura 8, las células R2C3 y R2C4 forma un primer borde vertical, las células R3C3 y R3C4, y R3C5 juntos forman un segundo borde vertical, y las células R4C4 y R4C5 juntos forman un tercer borde vertical. Cada uno de los primer y tercer bordes verticales toca sólo un otro borde vertical, mientras que el segundo borde vertical toca dos otros bordes verticales. Los primer, segundo y tercer bordes verticales juntos forman un borde concatenado vertical con una longitud de 3.
En una situación (no se muestra) , donde un borde concatenado vertical (horizontal) tiene dos o más ramas, es decir, tiene dos bordes en una fila (columna) , puede ser la longitud definida como el número total de los bordes dentro del borde concatenado. Alternativamente, la longitud puede ser definida como la distancia vertical (horizontal) desde un borde superior (más izquierdo) en el mismo a un borde más inferior (más derecho) en el mismo borde más uno.
Hay otras formas posibles para definir una longitud concatenada distinta de las propuestas anteriores. Por ejemplo, una definición de una longitud para un borde concatenado deberá tienen una propiedad de que la longitud es proporcional al número de miembros de bordes dentro del borde concatenado al menos hasta tres. Esto es para ser coherente con el razonamiento se ha indicado anteriormente que más bordes están mutuamente conectados por contacto entre si reduce de manera exponencial la probabilidad de que el borde concatenado es causada por ruido, y como tal la longitud debe expresar una proporcionalidad al número de los bordes que son miembros dentro del borde concatenado hasta un número razonable lo suficientemente aumenta la confianza en el borde concatenado más allá de la de un solo miembro. La filtro de longitud 212 puede restar énfasis o eliminar y, por tanto, en términos generales, discriminar contra un borde que tiene una longitud concatenada de una. El filtro de longitud 212 puede discriminar contra un borde que tiene una longitud concatenada de dos. El filtro de longitud 212 puede discriminar contra un borde que tiene una longitud concatenada de tres, para reducir aún más la influencia del ruido. El filtro de longitud 212 puede hacer cualquiera de estas acciones bajo un orden del procesador.
Aunque se muestra en la Figura 3 para seguir inmediatamente a la unidad de detección de bordes y medición de anchura 206, son posibles otras disposiciones. Por ejemplo, el filtro de longitud 212 se puede insertar antes de el calculador de señal de foco 210, en el que los bordes procesados por el filtro de longitud 212 son aquellos que pasan a través del filtro de ancho 209 en función de la señal "fino".
En una realización alternativa de un generador de señal de foco, el interruptor fino 220 puede ser retirado para que el calculador de señal de foco 210 reciba un primer conjunto de datos no filtrado por el filtro de ancho 209 y un segundo conjunto que se filtró y se calcula para cada una uno señal de foco diferente, la señal de foco grueso para el anterior, la señal de foco fino para el último, y emite las dos para el procesador 112, 112'.
Filtro de ancho Refiérase a continuación a la Figura 3 para entender una operación del filtro de ancho 209. La Figura 11 trazas un histograma de anchos de borde, es decir, una gráfica de los conteos de bordes contra anchos de borde. Al ancho de borde de 2, es decir, el ancho_de_borde_nitido mencionado, hay un pico, lo que indica una presencia de bordes nítidos de la imagen. A los anchos de bordes-de 4 y 5, sin embargo, hay picos, lo que indica que son los bordes borrosos, posiblemente debido a que los correspondientes objetos fotografiados están fuera de foco, porque están a una distancia lejos del lente de enfoque diferente que los objetos que dan lugar a los bordes nítidos. Para el cálculo de una señal de foco, se puede restar énfasis mediante el filtro de ancho 209 los bordes cuyos anchos de bordes se encuentran fuera de una gama predeterminada ("gama de bordes estrechos") . El filtro de ancho 209 puede crear un peso menor para anchos de borde fuera de la gama de bordes estrechos para uso en el cálculo de la señal de foco. Por ejemplo, los anchos de borde pueden ser dados el peso de 1,0, mientras que los anchos de bordes más de +1 a la derecha del limite superior 840 se dan un peso de 0, y anchos de borde entre ellos se dan pesos entre 0 y 1,0, los que caen monotónicamente con respecto al ancho borde. Alternativamente, el filtro de ancho 209 puede prevenir estos bordes de entrar en el cálculo de la señal de foco por completo. Apropiadas limites superior e inferior 830, 840 dependerá de varios factores, los que incluyen la diafonía en la matriz de píxeles 108, el método de interpolación utilizado para generar colores que faltan en la imagen recibida por el generador de señal de foco 120, y los coeficientes de filtro utilizados en el filtro pasa bajo empleado en la unidad de detección de bordes y medida de ancho 206. Apropiados limites superior e inferior 830, 840 y el parámetro ancho_de_borde__nítido puede ser determinados por el aparato de captura de imagen 102, 102' capturando imágenes de diversos grados de nitidez y inspeccionando los histogramas de anchos de borde. Por ejemplo, si una imagen nítida tiene un pico de ancho de borde de 2, los apropiados limites inferior y superior pueden ser 1,5 y 3, respectivamente, y el ancho_de_borde_nítido puede ser ajustado a 2,0. Los limites superior e inferior y el ancho_de_borde_nítido pueden ser determinados como anteriormente y emitidos al generador de señal de foco 120, 120', 120" por el procesador 112, 112". Al comando "fino" estar en ON, la señal de foco fino calculado de esta manera des-enfatiza los anchos de borde que están fuera de la gama de anchos estrechos .
Además, el filtro de ancho 209 puede calcular una cuenta total de los bordes cuyos anchos de borde caen dentro de la gama de borde estrecho y lo emitir como parte de las señales de salida 134. La cuenta de bordes estrechos puede ser introducida y utilizado por el controlador del sistema de enfoque (procesador 112) para detectar la presencia de una imagen nítida y/o para iniciar el seguimiento.
Señal de foco Refiriéndonos ahora a el calculador de señal de foco 210 de la Figura 3, el calculador de señal de foco 210 recibe anchos de borde y emite una señal de foco. La señal de foco puede ser calculada como un promedio ponderado de todos los anchos de borde donde las ponderaciones son las cuentas de borde para cada ancho de borde, a saber, la señal de foco = ? ?-^? / ? wi( donde ej. son los anchos de borde, Wi son los pesos, donde aquí w¿ = ci; siendo c¿ el número de bordes al ancho de borde eir i ser un número de intervalo de un histograma de anchos de borde.
Alternativamente, el peso en cada ancho de borde puede ser la cuenta de bordes para el ancho de borde multiplicado por el ancho de borde propia, es decir, w¿ = Ciex. Además, las preferencias del filtro de anchos 209 que se expresan en términos de pesos se pueden multiplicar con cada ancho de borde. Por ejemplo, para los pesos O producidas por el filtro de ancho 209, SO± = 1, la señal de foco se puede calcular como SO^?ß? / SO?^. Si la señal de control "fino" está en ON y "excluir" está en OFF, la señal de foco seria un valor muy cercano al ancho de borde nítido de 2,0 para el ejemplo que se muestra en la Figura 11, lo que indica que entre los detalles de objeto dentro de la gama de distancia de foco que podría producir anchos de borde entre 2,0 y 3,0, la mayoría son en realidad en el enfoque nítido. Si la señal de control "fino" está en OFF y "excluir" está en OFF, la señal de foco puede ser de un valor cercano a 5,0, lo que indica que hay muchos detalles de la imagen que están fuera de foco. Activar el interruptor fino 220 permite que la señal de foco responda más a los objetos poco borrosos, mientras que menos a los que están completamente borrosos. Cuando el interruptor fino 220 está en ON, nos referiremos a la señal de foco como una señal de foco fino, mientras que cuando el interruptor fino 220 está en OFF, una señal de foco grueso. Como se ha mencionado, el énfasis expresado por el filtro de longitud 212 se puede incorporar en la señal de foco en una de varias maneras, tales como eliminar un borde que se restar énfasis de entrar en el cálculo de la señal de foco, o reducir un peso de la contribución del borde para una cuenta ei de un intervalo de ancho de borde correspondiente .
La Figura 15 bosqueja una respuesta de la señal de foco fino a un ajuste de la posición de enfoque en las cercanías de donde un objeto se encuentra en un enfoque nítido. La señal de foco fino alcanza un valor mínimo, aproximadamente al ancho_de_borde_nítido, donde la posición de enfoque hace una imagen nítida, y aumenta en caso contrario. La señal de foco fino se puede usar para seguir los objetos que ya tiene el foco o muy casi. Para los objetos en movimiento, la señal de foco fino permite el sistema de control de enfoque mantener los objetos en el enfoque nítido incluso si la distancia de foco sigue a cambiar. La señal de foco fino también puede utilizarse para adquirir un enfoque nítido ("adquisición") de un objeto que no está todavía en el enfoque nítido pero lo suficientemente cerca de tal manera que el objeto da lugar a bordes cuyos anchos están dentro de la gama de bordés estrechos. Dado que el histograma de ancho de borde exhibe un pico en el ancho de borde correspondiente al objeto lejos de la ancho_de_borde_nítido, lo que resulta en la señal de foco fino ser mayor que el ancho_de__borde_nítido, el sistema de control de enfoque puede responder ajusfando la posición de enfoque para llevar el valor de la señal de foco fino hacia el ancho_de_borde_nítido, centrando asi el pico de ancho de borde debido al objeto al valor de ancho igual al ancho_de_borde_nitido .
Uso Básico Las Figuras 12 y 16 ilustran cómo la cuenta de bordes estrechos, la señal de foco grueso, y la señal de foco fino se pueden utilizar para realizar el control de foco para lograr imágenes nítidas.
La Figura 12 muestra una escena al aire libre que tiene tres grupos de objetos a distancias de foco diferentes: "persona" en el primer plano, "montaña, el sol y el horizonte" en el fondo, y "coche" en el medio.
La Figura 13 es una ilustración día cuenta de bordes estrechos trazado con respecto al tiempo cuando la posición de enfoque de la lente de enfoque 104 se acerque de lo lejos para la escena que se ilustra en la Figura 12. La cuenta de bordes estrechos atinge sus máximos cuando la posición de enfoque hace una imagen nítida en la matriz de píxeles 108 para un objeto. De este modo la curva día cuenta de bordes estrechos presenta 3 picos, de los cual uno es para "la montaña, el sol, y el horizonte", otra para el "coche", y otra más para el "persona", en este orden, durante el peinado.
La Figura 14 muestra la señal de foco grueso trazado contra el tiempo. La señal de foco grueso presenta un mínimo cuando la posición de enfoque se encuentra cerca de cada una de las 3 posiciones de enfoque en donde la cuenta de bordes estrechos atinge los picos. Sin embargo, en cada mínimo, la señal de foco grueso no está en el nivel de ancho de borde nítido, que es 2,0 en este ejemplo, debido a que los otros objetos que están fueran de foco presentan los anchos de borde más grandes .
La Figura 15 ilustra la señal de foco fino trazado contra la posición de enfoque en la vecindad de la posición de enfoque nítido para el "auto" en la escena de la Figura 12. La señal de foco fino alcanza esencialmente el ancho de borde nítido, que es 2 en este ejemplo, a pesar de la presencia de objetos difusos (el "persona" y "las montañas, el sol, y el horizonte") . Con referencia a la Figura 11 de nuevo, donde dos picos a los anchos de 4 y 5 son provocados por los dos grupos de objetos borrosos, esto puede entenderse de que el filtro de ancho 324 haber reducido los pesos o eliminado por completo las contribuciones de los anchos de borde a la derecha del límite superior 840.
Un sistema de control de enfoque puede utilizar la señal de foco grueso para buscar la posición de enfoque nítido más cercana en un modo de búsqueda. Se puede mover la posición de enfoque lejos de la posición de enfoque actual para determinar si la señal de foco grueso aumenta o disminuye. Por ejemplo, si aumenta la señal de foco grueso (disminuye) cuando la posición de enfoque se mueve hacia adentro (hacia el exterior) , hay una posición de enfoque nítido más lejos de la posición de enfoque actual. El procesador 112, 112' , 112" entonces puede emitir una señal de orden de enfoque para mover la lente de enfoque 104 en la dirección hacia la posición de enfoque nítido adyacente .
Un sistema de control de enfoque puede utilizar la señal de foco fino para realizar un seguimiento de un objeto que ya está en un enfoque nítido para mantener la imagen que lo corresponde nítida (por lo tanto un "modo de seguimiento") a pesar de los cambios en la escena, el movimiento del obje-to, o el movimiento del aparato de captura de imagen. Cuando un objeto está en un enfoque nítido, el nivel de la señal de foco fino es estable a pesar de dichos cambios. Por lo tanto, un cambio en la señal de foco fino sugiere un cambio en la distancia focal del objeto del aparato de captura de imagen. Por "captar" el sistema de control de enfoque a un determinado nivel de la señal de foco fino cerca del mínimo, por ejemplo entre 2,0 a 2,5 en este ejemplo, a 2,1 en particular, cualquier cambio en el nivel de la señal de foco fino inmediatamente informa al procesador 112, 112', 112" de un cambio en la distancia focal del objeto. El procesador 112, 112', 112" entonces puede determinar una dirección y hacer la lente de enfoque 104 pasar a llevar el nivel de señal de foco fino de nuevo al nivel "captado". Asi, el aparato de captura de Imagen 102, 103, 103', 103" es capaz de seguir un objeto en movimiento.
Un sistema de control de enfoque, por ejemplo, como se realiza en el algoritmo en el procesador 112, 112', 112", puede utilizar la cuenta de bordes estrechos para accionar un cambio a partir de un modo de búsqueda para un modo de seguimiento. En el modo de seguimiento, el sistema de control de enfoque utiliza la señal de foco fino para "capturar" el objeto. Antes de que la posición de enfoque está lo suficientemente cerca de la posición de enfoque nítido para el objeto, el sistema de control de enfoque puede utilizar la señal de foco grueso para identificar la dirección para mover la lente y regular la velocidad de su movimiento. Cuando un objeto está entrando en un enfoque nítido, la cuenta de bordes estrechos traza los picos de forma pronunciada. El procesador 112, 112', 112" puede cambiar en el modo de seguimiento y utilizar la señal de foco fino para el control de la posición de enfoque al detectar un fuerte aumento en la cuenta de bordes estrechos o un pico o ambas cosas. Un umbral, que puede ser diferente para cada posición de enfoque nítido diferente, puede ser asignado a cada grupo de objetos encontrado en una "búsqueda" de la posición de foco de un extremo al otro, y posteriormente, cuando la cuenta de bordes estrechos sobrepasa este umbral el correspondiente grupo de objetos se detecta. Para una escena estacionaria, por ejemplo, para tomar una imagen fija, una búsqueda de posición de foco de un extremo al otro puede devolver una lista de cuentas máximas, de las cual una cuenta máxima está para cada pico de la cuenta de bordes estrechos. Una lista de los umbrales puede ser generada a partir de la lista de cuentas máximas, por ejemplo mediante la adopción de 50% de las cuentas máximas.
La figura 16 ilustra un aparato de captura de imagen 102 que tiene una pantalla 114, un dispositivo de entrada 107 que comprende botones, y un marcador de selección 1920 que se destaca en la pantalla 114. Un usuario puede crear, dar forma a, y maniobrar el marcador de selección 1920 con el dispositivo de entrada 107. Aunque se muestra en este ejemplo que comprender botones, el dispositivo de entrada 107 puede comprender una pantalla táctil que superpone la pantalla 114 para detectar las posiciones de toques o trazos en la pantalla 114. Dispositivo de entrada 107 y el procesador 112, 112', 112" o un controlador dedicado separado (no se muestra) para el dispositivo de entrada 107 puede determinar la región de selección. Los parámetros para describir la región de selección pueden ser transmitidos al generador de señal de foco 120, 120', 120" por el bus 132 (o internamente dentro del procesador 112 en el caso en que el generador de señal de foco 120 es parte del procesador 112). En respuesta, el generador de señal de foco 120 puede limitar el cálculo de la señal de foco o la cuenta de bordes estrechos o ambos bordes a bordes dentro de la región de selección descrita por dichos parámetros o restar énfasis los bordes fueros de la selección región. Hacerla puede restar énfasis objetos no deseados de la señal de foco y, a continuación, incluso la señal de foco grueso exhibirá un mínimo único y un nivel mínimo dentro de 1,0 o menos del ancho de borde nítido.
Realizaciones alternativas La Figura 17 muestra una realización alternativa de un generador de señal de foco 120' . El Generador de señal de foco 120' emite estadísticas de bordes y anchos de borde. Entre las estadísticas de anchos de borde que el controlador 120' emite pueden ser uno o más de los siguientes: un histograma de anchos de borde que comprende cuentas de bordes a anchos de borde diferentes; un ancho de borde donde la cuenta de anchos de borde alcanza su máximo; un conjunto de coeficientes que representan una lengüeta función que se aproxima a la cuenta de borde a anchos de borde diferentes; y cualquier datos que puede representar una función del ancho de borde. La unidad de censo 240 puede recibir datos computados en una o más de las otras unidades con el generador de señal de foco 120' para calcular las estadísticas de anchos de borde. En general, el generador de señal de foco 120' puede emitir una señal que tiene una indicación de una distribución de anchos de borde.
Con referencia a la Figura 18, las estadísticas de anchos de borde así emitidas en las señales 134 a una realización alternativa del procesador 112' en una alternativo aparato de captura de imagen de enfoque automático 102' pueden ser utilizadas por el procesador 112' para calcular una señal de foco grueso y/o fino y una cuenta de bordes estrechos de acuerdo con los mismos métodos discutidos arriba o lo equivalente a mismo. Además, cualquier datos computados en el generador de señal de foco 120' puede ser emitidos al procesador 112' como parte de las señales de salida 134.
El procesador 112' puede generar internamente una señal de foco y/o una cuenta de bordes estrechos además de las funciones incluidas en el procesador 112 de la Figura 1.
La matriz de píxeles 108, el convertidor A/D 110, el interpolador de color 148, y el generador 120' pueden residir dentro un paquete 142, y juntas constituir un sensor de imagen 150', por separado del procesador 112'.
Matriz de pixeles auxiliar La Figura 19 muestra una realización alternativa de un sistema de recogida de imagen de enfoque automático 103. Además de los elementos incluidos en el sistema 102, el sistema 103 puede incluir un espejo parcial 2850, un espejo completo 2852, un filtro pasa bajo óptico 2840, una matriz de pixeles principal 2808, y un convertidor A/D principal 2810. El espejo parcial 2850 puede dividir el haz de luz entrante en un primer haz de división y un segundo haz de división de los cual uno se transmite y el otro se refleja. El primer haz de división además puede pasar a través del filtro pasa bajo óptico 2840 antes de llegar a la matriz de pixeles principal 2808, que detecta el primer haz de división y lo convierte en señales analógicas. El segundo haz de división puede ser reflejada por el espejo completo 2852 antes de llegar a la matriz de pixeles auxiliar 108", que corresponde a la matriz de pixeles 108 en el sistema 102 que se muestra en la Figura 1. La relación de la intensidad de la luz del primer haz al segundo haz puede ser 1-a-l o mayor. Por ejemplo, la relación puede ser 4-a-l.
La matriz de pixeles principal 2808 puede estar cubierta por una matriz de filtro de color de un patrón de mosaico en color, por ejemplo, el patrón de Bayer. El filtro pasa bajo óptico 2808 impide que el más pequeño punto de luz que se foca en la matriz de pixeles 2808 sea demasiado pequeño para causar aliasing. Cuando un filtro de color de un patrón de mosaico cubre la matriz de pixeles 2808, el aliasing puede engendrar artefactos de moaré de color después de una interpolación de color. Por ejemplo, el menor diámetro de un circulo que rodea el 84% de la potencia de la luz visible de un punto de luz sobre la matriz de pixeles principal 2808 ("el menor diámetro principal") se puede mantener más grande que uno más medio ancho de pixel pero menos de dos anchos de pixel mediante el filtro pasa bajo óptico. Por ejemplo, si la matriz de pixeles principal 2808 tiene un ancho de pixel de 4.5pm, mientras que el diámetro más pequeño es 2.0µ?? sin filtro pasa bajo óptico, el filtro pasa bajo óptico 2840 se puede seleccionar para hacer que el punto de luz 6.7pm o mayor de diámetro.
La matriz de pixeles auxiliar 108" puede comprender una o más matrices de fotodetectores . Cada una de las matrices puede o no estar cubierta por una matriz de filtros de color de un patrón de mosaico de color. La(s) matriz (ees) en la matriz de pixeles auxiliar 108" proveen imagen (es) en señales analógicas que es convertidas en señales digitales 130 por un convertidor A/D 110. Las imágenes se envían al generador de señal de foco 120. Un interpolador de color 148 puede generar los colores que faltan para las imágenes generadas a partir de los pixeles cubiertos por los filtros de color. Si la matriz de pixeles auxiliar 108" comprende varias matrices de fotodetectores , cada matriz puede capturar una sub-imagen que corresponde a una porción de la imagen captada por la matriz de pixeles principal 2808. Las múltiples matrices pueden estar físicamente separadas por más de un centenar de anchos de pixel, y puede o no puede compartir un sustrato de semiconductor. Caso las matrices de pixeles dentro de la matriz de pixeles auxiliar 108" no comparten un sustrato de semiconductor, pueden ser albergados juntos en un paquete (no se muestra) .
El convertidor A/D principal 2810 convierte señales analógicas de la matriz de píxeles principal 2808 en señal de datos de imagen principal 2830 digital, que se envía al procesador 112, donde la imagen captada en la matriz de p xeles principal 2808 puede recibir el procesamiento de imágenes tal como la interpolación de color, la corrección de color, y la compresión o descompresión de imagen y finalmente ser almacenada en la tarjeta de memoria 116.
Una serie de fotodetectores en la matriz de pixeles auxiliar 108" puede tener un ancho de píxel ("ancho de píxel auxiliar") que es más pequeño que un ancho de píxel de la matriz de pixeles principal 2808 ("ancho de pixel principal") . El ancho de píxel auxiliar puede ser tan pequeño como la mitad del ancho de píxel principal. Si un píxel auxiliar está cubierto por un filtro de color y el ancho de píxel auxiliar es inferior a 1,3 veces el más pequeño punto de luz visible sin filtrado pasa bajo óptica, un segundo filtro pasa bajo óptico puede ser insertado en frente de la matriz auxiliar 108" para incrementar el diámetro más pequeño en la matriz de pixeles auxiliar 108" ("diámetro más pequeño auxiliar") a entre 1,3 y 2 veces pero todavía menor que el menor diámetro principal, preferiblemente 1,5. El moaré ligero en la imagen auxiliar no es un problema, porque la imagen auxiliar no se presenta al usuario como la imagen final capturada.
La Figura 22 ilustra cómo anchos de borde puede variar en torno de una posición de enfoque nítido para las imágenes principales de la matriz de píxeles principal 2808 (la curva continua) y las imágenes auxiliares de la matriz de pixeles auxiliar 108" (la curva de trazos) . Las imágenes auxiliares dan cuestas más pendientes, aún cuando las imágenes principales llegar al ancho de borde nítido de 2 intentado. La imagen auxiliar se permite llegar debajo del ancho de borde nítido intentado, ya que el moaré debido al aliasing no es tan crítico en la imagen auxiliar, ya que no se presenta al usuario como una imagen final. Esto ayuda a afilar la cuesta por debajo y por encima del ancho de borde nítido. La cuesta más pendiente también es ayudada por el ancho de píxel auxiliar ser más pequeño que el ancho de píxel principal .
La región sombreada en la Figura 22 indica una buena región en la que se debe controlar la posición de enfoque para mantener la imagen principal en un enfoque nítido. Un cambio en la posición de enfoque hacia el exterior hará el ancho de borde aumentar en la imagen auxiliar, mientras que un cambio hacia el interior hará lo disminuir. Para mantener los anchos de borde de la imagen principal cerca del ancho de borde nítido, un sistema de control de realimentación lineal puede ser empleado para seleccionar como objetivo el medio valor de ancho de borde auxiliar dentro de la región sombreada y usar los anchos de borde generados a partir de las imágenes auxiliares como señal de realimentación.
La matriz de pixeles auxiliar 108", el convertidor A/D 110 y el generador de señal de foco 120 juntos pueden ser albergados en un paquete 142 y constituyen un sensor auxiliar 150. El sensor auxiliar 150 puede comprender además un interpolador de color 148.
La Figura 20 muestra una realización alternativa del aparato de recogida de imagen de enfoque automático 103' similar al aparato 103 excepto que el generador de señal de foco 120' reemplaza el generador de señal de foco 120. La matriz de pixeles auxiliar 108", el convertidor A/D 110 y el generador de señal de foco 120' juntos pueden ser albergados en un paquete 142 y constituyen un sensor auxiliar 150'. El sensor auxiliar 150 puede comprender además un interpolador de color 148.
La Figura 21 muestra una realización alternativa del aparato de recogida imagen de enfoque automático 103". El generador de señal de foco 120 y el procesador 112" pueden ser albergados en un paquete 144 como un controlador de cámara, por separado de la matriz de pixeles auxiliar 108". El procesador 112" es similar al procesador 112, excepto que el procesador 112" recibe imágenes de la matriz de pixeles principal 2808 tan como de la matriz de pixeles auxiliar 108". El procesador 112" puede llevar a cabo una interpolación de color, una corrección de color, una descompresión o compresión, y un almacenamiento en la tarjeta de memoria 116 para las imágenes recibidas de la señal 2830 similares a las transformaciones que el procesador 112 puede realizar en la señal 130 en la Figura 2. A diferencia de la Figura 2, aquí las imágenes recibidas en la señal 130 no necesitan recibir la compresión o descompresión y almacenamiento en la tarjeta de memoria 116. El procesador 112" puede llevar a cabo la interpolación de color en las imágenes recibidas de la señal 130 para los pixeles que están cubiertos por filtros de color en la matriz de pixeles auxiliar 108" y enviar las imágenes interpoladas por color al generador de señal de foco 120 en la señal 146.
El sis-tema de recogida de imagen de enfoque automático 102, 102', 103, 103*, 103" puede incluir un medio de almacenamiento de programa de ordenador (no se muestra) que comprende las instrucciones que hace que el procesador 112, 112', 112", respectivamente, y/o el generador de señales de foco 120, 120' realize una o más de las funciones descritas en este documento. A modo de ejemplo, las instrucciones pueden causar el procesador 112 o el generador 120" realizar una corrección de inclinación para un ancho de borde de acuerdo con el diagrama de flujo de la Figura 7. Como otro ejemplo, las instrucciones pueden causar que el procesador 112' o el generador 120 realizar una filtración de anchos de borde de acuerdo con la descripción anterior para el filtro de ancho 209. Alternativamente, el procesador 112, 112' o el generador 120, 120' puede ser configurado para tener una combinación de firmware y hardware, o una realización de hardware sólo para una o más de las funciones contenidas en el mismo. Por ejemplo, en el generador 120, una corrección de inclinación se puede realizar en hardware sólo y un filtro de longitud 212 se realiza de acuerdo con instrucciones de un firmware.
La Figura 26 muestra otra más realización de generador de señal de foco 120'. Esta realización se puede emplear en cualquiera de los sistemas de captura de imagen de arriba.
Mientras que una tarjeta de memoria 116 se muestra como parte del sistema 102, cualquier medio de almacenamiento no-volátil puede ser utilizado en su lugar, por ejemplo, unidad de disco duro, en donde las imágenes almacenadas en el mismo son accesibles por el usuario y puede ser copiadas a una ubicación diferente fuera y lejos del sistema 102.
Uno o más parámetros para su uso en el sistema, por ejemplo, el ancho_de_borde_nitido puede ser almacenado en una memoria no-volátil en un dispositivo dentro del sistema. El dispositivo puede ser un dispositivo de memoria flash, el procesador, o el sensor de imagen, o el generador de señal de foco como un dispositivo separado de aquellos. Uno o más fórmulas para su uso en el sistema, por ejemplo para el cálculo del umbral de longitud concatenada, o para el cálculo de beta también pueden ser almacenados como parámetros o como instrucciones ejecutables por ordenador en una memoria no-volátil en una o más de dichos dispositivos.
Mientras que ciertas realizaciones ejemplares se han descrito y mostrado en los dibujos adjuntos, se ha de entenderse que tales realizaciones son meramente ilustrativas y no restrictivas de la invención amplia, y que esta invención no se limita a las construcciones y arreglos específicos que se muestran y describen, ya que otras varias modificaciones pueden ocurrir a aquellos de experiencia normal en la técnica.

Claims (12)

REIVINDICACIONES
1. Sistema de captura de imágenes que evalúa un grado de nitidez de una imagen en base de una pluralidad de bordes de la imagen, que comprende: una memoria o un banco de registros que almacena (un medio de memoria para almacenar) datos que definen una o más curvas de gradiente de referencia y/o secuencias de gradientes de referencia.
2. Sistema de captura de imágenes según la reivindicación 1, caracterizado por el hecho de que dichos datos definen un espaciamiento de un pico de referencia a partir de un gradiente de referencia en al menos una de dicha una o más secuencias.
3. Sistema de captura de imágenes según la reivindicación 1, caracterizado por comprender además: una unidad de evaluación, estando dicha unidad de evaluación configurada para comparar una secuencia de gradientes de referencia o curva de gradiente de referencia definida en dicha memoria con un perfil de gradiente de un lado al otro de uno de dicha pluralidad de bordes, siendo dicha secuencia de gradientes de referencia o curva de gradiente de referencia una entre dicha una o más secuencias o curvas de gradiente de referencia.
4. Sistema de captura de imágenes según la reivindicación 3, caracterizado por el hecho de que dicha unidad de evaluación compara un parámetro de la secuencia de gradientes de referencia o de la curva de gradiente de referencia con un parámetro medido a partir del perfil de gradiente .
5. Sistema de captura de imágenes según la reivindicación 4, caracterizado por el hecho de que dicha unidad de evaluación comprende un circuito aritmético.
6. Sistema de captura de imágenes según la reivindicación 5, caracterizado por el hecho de que dicha unidad de evaluación comprende una memoria.
7. Sistema de captura de imágenes según la reivindicación 1, caracterizado por comprender además: una unidad de extracción de parámetro, estando dicha unidad de extracción de parámetro configurada para extraer a partir de dicho perfil de gradiente uno o más parámetros que describen dicho perfil de gradiente.
8. Sistema de captura de imágenes según la reivindicación 1, caracterizado por comprender además: un selector de secuencia, estando dicho selector de secuencia configurado para seleccionar uno o más entre dicha pluralidad de secuencias en base de dicho uno o más parámetros .
9. Método para evaluar un grado de nitidez de una imagen en base de una pluralidad de bordes dentro de dicha imagen, gue comprende: ajuste de curva de un perfil de gradiente de un borde entre dicha pluralidad de bordes con una secuencia de dos o más gradientes de referencia, entre los cuales al menos dos gradientes de referencia tienen valores de gradiente diferentes; realizar una comparación de dicha secuencia con dicho perfil de gradiente bajo un criterio predeterminado; y hacer una determinación, basada al menos en parte en un resultado proveniente de dicha comparación, sobre el uso de uno o más cantidades provenientes de dicho perfil de gradiente y/o dicha secuencia en la evaluación de dicho grado de nitidez.
10. Método según la reivindicación 9, caracterizado por comprender además : generar una señal de foco a partir de dicha pluralidad de bordes a través de modificar una contribución proveniente de dicho borde en base de dicha determinación .
11. Método según la reivindicación 10, caracterizado por el hecho de que dicho borde se impide de influenciar dicha generación de dicha señal de foco si descubre dicha comparación que dicho perfil de gradiente no es suficientemente similar a dicha secuencia bajo dicho criterio predeterminado.
12. Método según la reivindicación 10, caracterizado por el hecho de que dicha comparación produce un resultado graduado y dicha señal de foco recibe contribución de una ancho de borde de dicho borde a una medida relativa en comparación con otros bordes, estando dicha medida relativa dependida de dicho resultado graduado.
MX2013014257A 2011-06-09 2011-06-09 Sistema de imágenes de enfoque automatico. MX340988B (es)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/IB2011/052524 WO2012168766A1 (en) 2011-06-09 2011-06-09 Auto-focus image system

Publications (2)

Publication Number Publication Date
MX2013014257A true MX2013014257A (es) 2014-02-27
MX340988B MX340988B (es) 2016-08-03

Family

ID=44509487

Family Applications (1)

Application Number Title Priority Date Filing Date
MX2013014257A MX340988B (es) 2011-06-09 2011-06-09 Sistema de imágenes de enfoque automatico.

Country Status (10)

Country Link
EP (1) EP2719162B1 (es)
JP (1) JP5920608B2 (es)
CN (1) CN103650473B (es)
BR (1) BR112013031316A2 (es)
CA (1) CA2838821A1 (es)
DE (1) DE112011105320T5 (es)
GB (1) GB2505598A (es)
MX (1) MX340988B (es)
SG (1) SG195323A1 (es)
WO (1) WO2012168766A1 (es)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101733028B1 (ko) 2016-05-30 2017-05-08 경북대학교 산학협력단 영상대조에 따른 에지 변위량 예측 방법
KR101868483B1 (ko) * 2016-10-13 2018-07-23 경북대학교 산학협력단 영상 대조에 따른 두개의 에지 블러 파라미터 예측 방법
EP3503528B1 (en) 2017-12-21 2020-10-07 Axis AB Determination of a contrast value for a digital image

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07311025A (ja) * 1994-05-17 1995-11-28 Komatsu Ltd 3次元形状検査装置
US20030123704A1 (en) * 2001-05-30 2003-07-03 Eaton Corporation Motion-based image segmentor for occupant tracking
JP3555607B2 (ja) * 2001-11-29 2004-08-18 ミノルタ株式会社 オートフォーカス装置
JP4661084B2 (ja) * 2004-05-20 2011-03-30 セイコーエプソン株式会社 ミスフォーカス判定方法およびこれに関するプログラム
JP2006115446A (ja) * 2004-09-14 2006-04-27 Seiko Epson Corp 撮影装置、及び画像評価方法
CN1892401A (zh) * 2006-05-25 2007-01-10 南京大学 针对虹膜图像捕捉的时频域多阶段自动对焦方法
JP4743773B2 (ja) * 2006-06-01 2011-08-10 コニカミノルタセンシング株式会社 エッジ検出方法、装置、及びプログラム
JP5353141B2 (ja) * 2008-09-18 2013-11-27 株式会社ニコン プログラム、カメラ、画像処理装置、及び画像の合焦度算出方法
WO2010036249A1 (en) * 2008-09-24 2010-04-01 Nikon Corporation Autofocus technique utilizing gradient histogram distribution characteristics
CN101860680B (zh) * 2009-04-08 2011-12-21 鸿富锦精密工业(深圳)有限公司 影像处理装置及其影像处理方法
JP2011003124A (ja) * 2009-06-22 2011-01-06 Sony Corp 画像処理装置および画像処理プログラム
BR112012013721A2 (pt) * 2009-12-07 2016-03-15 Hiok Nam Tay sistema de imagem de auto-focagem

Also Published As

Publication number Publication date
DE112011105320T5 (de) 2014-04-03
JP2014521990A (ja) 2014-08-28
EP2719162A1 (en) 2014-04-16
WO2012168766A8 (en) 2014-01-30
CN103650473B (zh) 2018-09-04
GB2505598A (en) 2014-03-05
WO2012168766A1 (en) 2012-12-13
MX340988B (es) 2016-08-03
CN103650473A (zh) 2014-03-19
SG195323A1 (en) 2013-12-30
GB201321654D0 (en) 2014-01-22
EP2719162B1 (en) 2016-08-31
JP5920608B2 (ja) 2016-05-25
CA2838821A1 (en) 2012-12-13
BR112013031316A2 (pt) 2016-11-29
WO2012168766A9 (en) 2014-07-03

Similar Documents

Publication Publication Date Title
US9251571B2 (en) Auto-focus image system
US8630504B2 (en) Auto-focus image system
US8462258B2 (en) Focus signal generation for an auto-focus image system
US9065999B2 (en) Method and apparatus for evaluating sharpness of image
US20130083232A1 (en) Auto-focus image system
US20140022443A1 (en) Auto-focus image system
EP2719162B1 (en) Auto-focus image system
EP2649787A1 (en) Auto-focus image system
WO2012076993A1 (en) Auto-focus image system

Legal Events

Date Code Title Description
FG Grant or registration