Ok … Estoy empezando un nivel un poco más bajo que algunos de los otros. Un sensor de cámara está compuesto de elementos electrónicos sensibles a la luz de algún tipo. Hay un montón de diferentes componentes sensibles a la luz que se han inventado a lo largo de los años, pero los sensores modernos casi todos usan fotodiodos.
Un diodo es un componente que normalmente funciona como un interruptor unidireccional: la electricidad puede pasar por un lado, pero no por el otro. Pero hay un montón de diodos especializados que utilizan las propiedades básicas de formas novedosas … algunos pueden actuar como referencias de voltaje, algunos pueden apagar la luz (LED … Estoy iluminando mi casa con estos), algunos pueden actuar como condensadores variables. Y algunos pasarán corriente proporcionalmente al número de fotones que golpean el sensor. De hecho, por cada fotón que golpea un fotodiodo, se transfiere un electrón.
Entonces, ahora que tiene el fotodiodo, crea un sensor construyendo una gran variedad de estos fotodiodos. Si profundiza en la documentación de la cámara, generalmente puede encontrar el tamaño de un “píxel”, que no es realmente el tamaño de un píxel, sino el tamaño de un sitio fotográfico. El sitio fotográfico contiene el fotodiodo, y ese es el único elemento fotosensible, pero también puede contener otras cosas, como la electrónica que impulsa los fotodiodos. Entonces, como un ojo humano, puede tener algunas cosas en el camino, reduciendo la luz que realmente llega al fotodiodo. Más recientemente, hay sensores “iluminados en la parte posterior”, que colocan el fotodiodo en la parte posterior y la electrónica en la parte frontal, más como el ojo superior del pulpo. Pero de cualquier manera, ahora tiene una variedad de fotodiodos … el sensor en sí.
- ¿Cómo captura una lente redonda una foto rectangular?
- ¿El objetivo Nikon 55-200mm es bueno para retratos?
- ¿Cuál es la mejor cámara réflex digital Canon y por qué?
- ¿Qué es una cámara réflex digital en un teléfono?
- ¿Qué cámara debo tomar para tomar excelentes fotos de mí mismo en la naturaleza?
Por supuesto, eso no hace nada todavía. Hay dispositivos electrónicos de soporte para alimentar y administrar todos esos fotodiodos. En algún momento, habrá un amplificador de ganancia programable, como un control de volumen, que aumenta la señal del fotodiodo según sea necesario. El alimenta un convertidor analógico a digital. La mayoría de los ADC en las cámaras en estos días producen una salida de 12 o 14 bits.
Ahora, echemos un vistazo a los fotodiodos ellos mismos … no saben nada sobre el color, y generalmente responden a un espectro bastante amplio. Si desea una cámara monocromática, es posible que esté bien con el sensor tal cual, tal vez con un filtro infrarrojo para evitar que se grabe la luz IR. Pero quieres color. Entonces, en la mayoría de los sensores, hay una serie de filtros de color, uno por fotodiodo … ya has visto la discusión de los sensores Bayer en este artículo. Algunas compañías usan sensores “que no son de Bayer”, ya que están usando una matriz que no es RGBG … Canon usó CMYG en algunas de las primeras cámaras. Fujitsu y Sony han utilizado algunas configuraciones de color alternativas. Panasonic tiene una tecnología que utiliza micro divisores de color en lugar de filtros de color, para evitar pérdidas. Mira, un filtro espectral perfecto cortará el 66% de la luz que va a cada fotodiodo. Para evitar esto, las cámaras de video profesionales con sensores pequeños en realidad usan tres sensores y un prisma diacróico, para dividir la luz en haces R, G y B separados para separar los sensores R, G y B. Junto con el filtro, la mayoría de los sensores también tienen una matriz de microlentes, para enfocar la luz en el fotodiodo y, con suerte, evitar el hecho de que el sensor fotográfico no sea el sitio completo de la foto.
Ok, entonces hay un sensor. Está controlado por un microprocesador, que puede controlar cuándo está recolectando luz, cuándo no, etc. Algunas cámaras usan esa función para establecer la exposición, pero los modelos más profesionales usan un obturador electrónico separado para hacer la exposición. Es posible que realmente obtenga dos exposiciones por cada una que tome. Como todos los dispositivos electrónicos, los fotodiodos tienen una “corriente oscura” … básicamente, hay energía en el sistema debido al calor … de ahí proviene el ruido en una foto con poca luz. La cámara puede tomar una foto totalmente oscura, luego la que está buscando con luz y todo, y usarla primero para establecer “cero” para cada píxel.
Una vez expuesto, el microprocesador leerá los datos del sensor. Los CCD más antiguos eran básicamente una brigada de cubos gigantes, donde solo se leía un píxel a la vez, pero en estos días, la mayoría de los sensores tienen múltiples líneas de acceso y pueden leer muy rápido. Los datos que provienen directamente del sensor, con todo ese filtro extraño que puede ser muy específico para esa única cámara … eso es lo que la cámara grabará en un archivo sin formato. Y como mencioné, los píxeles suelen tener una resolución de 12 o 14 bits … esa es una razón por la que a los profesionales les gusta sin formato … no solo no está comprimido como un JPEG, sino que tiene absolutamente toda la información que la cámara grabó.
Como señaló, esa puede ser una gran cantidad de datos, especialmente si está haciendo videos. Pero los procesadores e interfaces están diseñados específicamente para ese tipo de datos. Si tengo una cámara de 20Mpixel, probablemente estoy leyendo 30-35 MB por foto del sensor. Y si puedo disparar a 10 fps, eso es 300-350 MB / s que tendría que almacenar, escribiendo archivos sin formato. Eso podría no suceder realmente. Ahora, por supuesto, 300 MB / s no es nada para una interfaz rápida … PCI Express funciona a 10 Gb / s en estos días (más de 1 GB / s) por enlace (cuatro cables … podría usar esto en un producto integrado … de hecho, lo hago, aunque nada tan integrado como una cámara moderna). Pero cuando toma una foto, obtiene algo de compresión (sin pérdida con raw, mucho más con JPEG), y luego entra en un búfer RAM grande y rápido en la cámara, haciendo cola para escribir en la memoria flash.
Y el proceso es idéntico para todas las cámaras. Claro, algunos no graban imágenes fijas, algunos no graban videos, algunos no graban en bruto, lo mismo puede que solo grabe en bruto, pero las cosas que suceden son las mismas para GoPro que para una DSLR que para un P&S que para un cámaras de cine
Ahora, por supuesto, si filmo video a, digamos, 1080p60, eso también es bastante información. Pero no tanto como piensas. Incluso con ese sensor de 20 megapíxeles, nunca voy a almacenar 20 megapíxeles. Algunas cámaras pueden “omitir líneas” … la única necesidad de leer parte de una imagen. Luego, el microprocesador en la cámara (que también es un procesador de imagen de foto / video) usará una combinación de software y hardware dedicado para procesar esa imagen a los 2 megapíxeles que necesita para video, luego comprímala para escribir en su tarjeta flash: a Motion JPEG, a AVC-Intra (tipo de MJPEG de principios del siglo XXI), o IPB AVC completo, o algo más. En ese punto, el video se reduce sustancialmente, a 25, 50, 100Mb / so más o menos. Las tarjetas SD son lo suficientemente rápidas.
Tomemos una imagen de fotograma completo, una toma de 20 megapíxeles y veamos qué sucede cuando se convierte en JPEG. Ok, como se mencionó, no tiene 20,000,000 de píxeles RGB, tiene una imagen en bruto con 5,000,000 de rojo, 10,000,000 de verde y 5,000,000 de píxeles azules. Ya sabes por qué hacemos esto … los fotodiodos no ven el color. Pero, ¿por qué generalmente no nos importa? Debido al ojo humano … tenemos 120,000,000 más o menos sensores en el ojo que ven la luminosidad, y solo unos 6,000,000 que ven el color. Así que todos los días se juegan todo tipo de trucos con el color de simples mortales.
Entonces, esta imagen en bruto, en la RAM realmente rápida de la cámara, se convierte en una imagen RGB en un proceso que a veces se denomina “des Baying”. En términos simples, estás interpolando. Tomemos un píxel rojo … sabes que es un valor rojo. Pero también encontrará que está rodeado por cuatro píxeles verdes (horizontalmente, verticalmente) y cuatro píxeles azules (en las diagonales). Existe una gran posibilidad de que el verde en su píxel actual sea similar a todos sus vecinos … por lo que interpola … toma el promedio de los colores vecinos. Y así obtener sus colores G y B para hacer un píxel a todo color.
Ahora podría ser un píxel de 36 o 42 bits, pero en el caso del video o JPEG, ahora vamos a reducirlo a 24 bits por píxel. Así que eso está hecho … pero luego, mientras estamos en eso, vamos a jugar con el color aún más. En lugar de almacenar un píxel RGB, el procesador de imágenes se convertirá en un espacio de color llamado YCrCb, que es una transformación sin pérdida del espacio de color RGB. Ahora que estamos en el espacio de color YCrCb, vamos a tirar 3/4 de las muestras de croma. Básicamente, eso significa que vamos a mantener 20,000,000 muestras Y, pero. Esto se llama submuestreo de croma, y tanto JPEG como las compresiones de video más comunes emplean submuestreo 4: 2: 0, si desea obtener más información. Lo que esto significa es que por línea de píxel, solo almacenamos la mitad de las muestras, y Cr o Cb por línea, no ambas. Eso se traduce en solo 5,000,000 Cr y 5,000,000 Cb de muestras por disparo. Entonces, sin llegar realmente a JPEG, tomamos una imagen RGB de 60 MB y la convertimos en una imagen YCrCb 4: 2: 0 de 30 MB.
Luego viene la compresión JPEG real. JPEG divide la imagen en bloques de píxeles 8 × 8. Luego ejecuta una transformación reversible llamada Transformada discreta del coseno, que toma los datos espaciales de cada celda de 64 píxeles y los convierte en información de frecuencia. Luego se emplean varias reglas para cortar parte de la información de frecuencia más alta de cada celda. Después de que todas las células están tan reducidas, el resultado está codificado por Huffmann, una compresión sin pérdidas. Es el filtrado de la información de alta frecuencia y el submuestreo 4: 2: 0 lo que hace que JPEG pierda. Y probablemente haya encontrado diferentes “fortalezas” de JPEG … archivos más pequeños o imágenes “más finas”. Eso controla cómo se descarta la información de alta frecuencia.
Para el video, un video AVC-Intra es básicamente la misma idea, solo emplea innovaciones AVC como tamaño de bloque variable, compresión sin pérdidas más moderna, etc. Pero es literalmente un montón de fotogramas similares a JPEG.
Cuando vas a IPB AVC, esa es una historia diferente. “I” significa marco “Independiente”, que nuevamente va a una imagen fija similar a JPEG. Esto también se llama fotograma clave. El codificador crea un I-Frame, luego crea otro I-Frame. Solo que no codifica ese I-Frame … hace un análisis sofisticado de la diferencia entre los dos cuadros, utilizando algoritmos de estimación de movimiento … el objetivo es que un pequeño conjunto de vectores de movimiento, aplicado a ese primer I- La imagen del cuadro debería producir algo muy similar al segundo. Entonces eso está hecho, y se hace un marco de diferencia entre el segundo marco real y el calculado a partir del primer marco. Ese es el “error”, generalmente mucho negro con muy pocos bits de píxeles fantasma … que se comprime extremadamente bien. De modo que ese segundo cuadro se convierte en un cuadro “P”, para “Predictivo”, que codifica un conjunto de vectores compactos y un cuadro de error muy pequeño, también almacenado como un archivo JPEG muy comprimido. Si puede analizar muchos cuadros a la vez, también puede tener cuadros “B”, para “Bidireccional” … se puede predecir un Cuadro B tanto del cuadro siguiente como del siguiente.
En el antiguo MPEG-2, tenías un I-Frame por cada 15 fotogramas totales. En AVC, es técnicamente posible tener cientos de cuadros P o B entre cada cuadro I, pero esa sería una situación bastante inusual.
Bueno, probablemente lo suficiente como para masticar ahora.