SlideShare a Scribd company logo
Introduction to Camera
By: Sergio Aguirre <sergio.a.aguirre@gmail.com>
Basics


Camera: Device that records and stores
images.


Still Images:



Videos or movies:
Basics


But essentially, what defines a camera device?


Recording medium



Lens



Light
Lens

Light

Recording Medium
Basics


Now, what about a typical digital camera?


Image sensor (CCD or CMOS)



Lens



Flash



ISP: Image Signal Processor



Image and video Encoders (To save space)



Storage Media (SD Cards, USB drives, Etc.)
Image sensors
Image sensor technology


CCD: Charge Coupled
device.




Moves electrical
charges to an area
where it can be
manipulated.

CMOS: Complementary
metal-oxide
semiconductor.


Array of pixel sensors,
each one containing a
photodetector and an
active amplifier.
Image sensor pixel arrays


Foveon:



100% Green





100% Red
100% Blue

Bayer:


25% Red



50% Green



25% Blue
Image sensor formats
(Most typical)


RAW 10-bits.




10-bit digital value obtained thru an ADC (Analog to
Digital Converter) of the analog voltage coming
from each pixel's associated photodetector chargeto-voltage converter.

YUV 4:2:2 8-bits.


Represent pairs of horizontally contiguous pixels. 8bits per component (Y: Luminance, UV:
Chrominance). Order is usually YUYV, or UYVY.
Croma components (UV) are subsampled at half
the sample rate than luma (Y).
Image sensor formats
(Most typical)


YUV 4:2:0 8-bits.




Similar to 4:2:2, but the difference being that the UV
components are also vertically subsampled by 2.
This format contains interleaved data, which
means, odd lines contain only Y elements, and
even lines contain packed UYVY elements, similarly
to 4:2:2 subsampling.

NV12 (YUV 4:2:0 8-bits, planar)


Exact same subsampling as above format, but the
difference being that one array contains only Y
components, and a second array contains packed
UV components, 2x2 subsampled.
Image sensor core
Typical block diagram of an image sensor core
components:

AMP

Gain
control

10-bit
ADC

Digital gain

Image
array

Black level
calibration

Column
Sample/hold
Row select



...
Image sensor core functions










Analog gain: Amplifies constant voltage perpixel for entire array. Done before ADC.
Black level: Level of pixel voltage at the darkest
(black) part of the incoming image.
Digital gain: Adds a constant number to the
digitally converted pixel value, after going
through the ADC.
Skipping: Certain pixels rows/columns are
avoided (skipped) on sampling.
Binning: Averaging groups of neighborhood
pixel charges.
Image sensor interfaces


Overall, there's at least 2 communication links:




Control: Typically I2C, but not necessarly the case.
This is used by a master IC to initialize/program the
sensor for desired operation and data output
configuration.
Data: This can be Parallel or Serial.
Sensor
Data
Master IC
Control
Image sensor interfaces - Control


I2C: Inter-Integrated Circuit




Multi-master serial single-ended computer bus,
used to attach low-speed peripherals to a host IC.
Uses 2 open-drain lines, w/pull-up resistors:



SCL (Serial CLock).
SDA (Serial DAta).
Image sensor interfaces - I2C


I2C: Inter-Integrated Circuit






START and STOP conditions to claim/release bus control.

First byte: 7-bit device address space, 1 bit used to indicate Read
(HI) or Write (LOW).
ACK bit pulled low by slave after each byte sent, used to
handshake transmission between master and slave ICs. If ACK bit
is high, master should stop transmission.
Image sensor interfaces - Parallel
Parallel interface (a.k.a. Digital Video Port)


Data signals: 1 digital output pin per bit.



Sync signals:




PCLK: Pixel Clock.
HSYNC: Horizontal Sync.
VSYNC: Vertical Sync.

Image data

Vertical Blanking

Horizontal Blanking



D[9:0]
Sensor

PCLK
HSYNC
VSYNC

Master IC
Image sensor interfaces - CSI2


MIPI CSI2 (Camera Serial Interface 2).


Data signals: Up to 4 differential lanes (+/- signals).



Clock signals: 1 differential lane (+/- signals).


Speeds up to 1 Gbit/s per lane (500 MHz)

CLK (+/-)

DAT0 (+/-)
Sensor

DAT1 (+/-)
DAT2 (+/-)
DAT3 (+/-)

Master IC
Image sensor interfaces - CSI2


CSI2 Receiver components:
Image sensor interfaces - CSI2


D-PHY layer:
Image sensor interfaces - CSI2


CSI2 Protocol Layer:
Image sensor interfaces - CSI2


Data Lane Merger
Lens
Lens




Could be either a simple convex lens, or a
compound lens made up of a number of lens
elements, used to correct optical aberrations,
and keep good image sharpness on a specific
object distance from the camera.

There are fixed-focus lens, and lens whose
position can be adjusted by a VCM (voice coil
motor).
Lens




For moving lens, position can be either
controlled as part of the image sensor registers,
or as a separate I2C device in the bus.
This is usually done as a result of the Auto
Focus algorithm, after analyzing the captured
images. It can also be due to manual control, if
desired.
Flash
Flash






Used in photography to compensate natural
ambient light, and illuminate a dark scene.
Syncronized with start of capture image
command, with adjusted flashing duration, and
intensity.
Usually triggered with GPIOs and configured
with I2C commands.
Thanks!
Extra slides
Image sensor interfaces - Data


MIPI CSI (Camera Serial Interface).


Data signals: 1 differential lane (+/- signals).



Clock signals: 1 differential lane (+/- signals).


Speeds between 1->208 Mbps

CLK (+/-)
Sensor

DAT (+/-)

Master IC
Image sensor interfaces - Data


SMIA CCP2 (Compact Camera Port 2).


Data signals: 1 differential lane (+/- signals).



Clock signals: 1 differential lane (+/- signals).

Class

Data transfer capacity
(sustain data rate)

Class 0

<208 Mbit/s

Data/Clock

Class 1

208 Mbit/s to 416 Mbit/s

Data/Strobe

Class 2

416 Mbit/s to 650 Mbit/s

Data/Strobe

CLK, or
STROBE
(+/-)

Signaling method

Sensor

DAT (+/-)

Master IC

More Related Content

What's hot

Industrial training report of embedded system and robotics
Industrial training report of embedded system and roboticsIndustrial training report of embedded system and robotics
Industrial training report of embedded system and robotics
Pallavi Bharti
 
Am044253258
Am044253258Am044253258
Am044253258
IJERA Editor
 
Introduction to Arduino
Introduction to ArduinoIntroduction to Arduino
Introduction to Arduino
Karim El-Rayes
 
Tft touch screen manufacturers
Tft touch screen manufacturersTft touch screen manufacturers
Tft touch screen manufacturers
KeatonParker2
 
Introduction to microcontrollers and embedded systems
Introduction to microcontrollers and embedded systemsIntroduction to microcontrollers and embedded systems
Introduction to microcontrollers and embedded systems
Tyler Ross Lambert
 
Jay's C/MRI Presentation October 2014
Jay's C/MRI Presentation October 2014Jay's C/MRI Presentation October 2014
Jay's C/MRI Presentation October 2014
jaybeckham
 
Lecture 15 ryuzo okada - vision processors for embedded computer vision
Lecture 15   ryuzo okada - vision processors for embedded computer visionLecture 15   ryuzo okada - vision processors for embedded computer vision
Lecture 15 ryuzo okada - vision processors for embedded computer vision
mustafa sarac
 
project report on embedded system
project report on embedded systemproject report on embedded system
project report on embedded system
ram avtar
 
training report on embedded system and AVR
training report on embedded system and AVRtraining report on embedded system and AVR
training report on embedded system and AVR
Urvashi Khandelwal
 
MIPI DevCon 2016: MIPI I3C High Data Rate Modes
MIPI DevCon 2016: MIPI I3C High Data Rate ModesMIPI DevCon 2016: MIPI I3C High Data Rate Modes
MIPI DevCon 2016: MIPI I3C High Data Rate Modes
MIPI Alliance
 
TFT LCD Module Display Manufacturer
TFT LCD Module Display ManufacturerTFT LCD Module Display Manufacturer
TFT LCD Module Display Manufacturer
KeatonParker2
 
REPORT texto braillefinal
REPORT texto braillefinalREPORT texto braillefinal
REPORT texto braillefinalASWATHI K
 
Implementation of an Improved Microcontroller Based Moving Message Display Sy...
Implementation of an Improved Microcontroller Based Moving Message Display Sy...Implementation of an Improved Microcontroller Based Moving Message Display Sy...
Implementation of an Improved Microcontroller Based Moving Message Display Sy...
IOSR Journals
 
embedded systems and robotics on avr platform
embedded systems and robotics on avr platformembedded systems and robotics on avr platform
embedded systems and robotics on avr platform
Neha Sharma
 
Tms320 f2812
Tms320 f2812Tms320 f2812
Embedded systems and robotics by scmandota
Embedded systems and robotics by scmandotaEmbedded systems and robotics by scmandota
Embedded systems and robotics by scmandota
scmandota
 

What's hot (17)

Industrial training report of embedded system and robotics
Industrial training report of embedded system and roboticsIndustrial training report of embedded system and robotics
Industrial training report of embedded system and robotics
 
Am044253258
Am044253258Am044253258
Am044253258
 
Introduction to Arduino
Introduction to ArduinoIntroduction to Arduino
Introduction to Arduino
 
Tft touch screen manufacturers
Tft touch screen manufacturersTft touch screen manufacturers
Tft touch screen manufacturers
 
Introduction to microcontrollers and embedded systems
Introduction to microcontrollers and embedded systemsIntroduction to microcontrollers and embedded systems
Introduction to microcontrollers and embedded systems
 
Jay's C/MRI Presentation October 2014
Jay's C/MRI Presentation October 2014Jay's C/MRI Presentation October 2014
Jay's C/MRI Presentation October 2014
 
Lecture 15 ryuzo okada - vision processors for embedded computer vision
Lecture 15   ryuzo okada - vision processors for embedded computer visionLecture 15   ryuzo okada - vision processors for embedded computer vision
Lecture 15 ryuzo okada - vision processors for embedded computer vision
 
project report on embedded system
project report on embedded systemproject report on embedded system
project report on embedded system
 
training report on embedded system and AVR
training report on embedded system and AVRtraining report on embedded system and AVR
training report on embedded system and AVR
 
MIPI DevCon 2016: MIPI I3C High Data Rate Modes
MIPI DevCon 2016: MIPI I3C High Data Rate ModesMIPI DevCon 2016: MIPI I3C High Data Rate Modes
MIPI DevCon 2016: MIPI I3C High Data Rate Modes
 
TFT LCD Module Display Manufacturer
TFT LCD Module Display ManufacturerTFT LCD Module Display Manufacturer
TFT LCD Module Display Manufacturer
 
REPORT texto braillefinal
REPORT texto braillefinalREPORT texto braillefinal
REPORT texto braillefinal
 
Implementation of an Improved Microcontroller Based Moving Message Display Sy...
Implementation of an Improved Microcontroller Based Moving Message Display Sy...Implementation of an Improved Microcontroller Based Moving Message Display Sy...
Implementation of an Improved Microcontroller Based Moving Message Display Sy...
 
FFaraji
FFarajiFFaraji
FFaraji
 
embedded systems and robotics on avr platform
embedded systems and robotics on avr platformembedded systems and robotics on avr platform
embedded systems and robotics on avr platform
 
Tms320 f2812
Tms320 f2812Tms320 f2812
Tms320 f2812
 
Embedded systems and robotics by scmandota
Embedded systems and robotics by scmandotaEmbedded systems and robotics by scmandota
Embedded systems and robotics by scmandota
 

Similar to Cameratrainingsergiopublic 120904235733-phpapp02(2)

OV7670 Camera interfacing-with-arduino-microcontroller
OV7670 Camera interfacing-with-arduino-microcontrollerOV7670 Camera interfacing-with-arduino-microcontroller
OV7670 Camera interfacing-with-arduino-microcontroller
Somnath Sharma
 
CCD (Charge Coupled Device)
CCD (Charge Coupled Device)CCD (Charge Coupled Device)
CCD (Charge Coupled Device)
Sagar Reddy
 
Accelerometer and LED Sensor Array Based Remote Control Car
Accelerometer and LED Sensor Array Based Remote Control CarAccelerometer and LED Sensor Array Based Remote Control Car
Accelerometer and LED Sensor Array Based Remote Control CarAbhijeet kapse
 
Presentation1 comp nn AA.ppsx
Presentation1 comp nn AA.ppsxPresentation1 comp nn AA.ppsx
Presentation1 comp nn AA.ppsx
Akhilesh349979
 
Camera pdf
Camera pdfCamera pdf
Camera pdf
Avinash Chandra
 
3 STM32's ADC.ppt
3 STM32's ADC.ppt3 STM32's ADC.ppt
3 STM32's ADC.ppt
MdRayhanTanvir
 
Gas sensor
Gas sensorGas sensor
Gas sensor
srinivas naidu
 
Embedded System[586]
Embedded System[586]Embedded System[586]
Embedded System[586]
ajeet singh choudhary
 
Zigbee based metal detecting robot to assist bomb detection and rescue team
Zigbee based metal detecting robot to assist bomb detection and rescue teamZigbee based metal detecting robot to assist bomb detection and rescue team
Zigbee based metal detecting robot to assist bomb detection and rescue team
shiva kumar cheruku
 
Zigbee based metal detecting robot to assist bomb detection and rescue team
Zigbee based metal detecting robot to assist bomb detection and rescue teamZigbee based metal detecting robot to assist bomb detection and rescue team
Zigbee based metal detecting robot to assist bomb detection and rescue team
shiva kumar cheruku
 
SECURICO CCTV BOOK
SECURICO CCTV BOOK SECURICO CCTV BOOK
SECURICO CCTV BOOK
Saurabh Tripathi
 
Bidirect visitor counter
Bidirect visitor counterBidirect visitor counter
Bidirect visitor counter
Electric&elctronics&engineeering
 
Audio Acquisition, Storage and Playback
Audio Acquisition, Storage and PlaybackAudio Acquisition, Storage and Playback
Audio Acquisition, Storage and Playback
Jerome Stanislaus
 
Punch sensor, Arduino
Punch sensor, Arduino Punch sensor, Arduino
Punch sensor, Arduino
Christopher Brennan
 
imaging sensor final.ppsx
imaging sensor final.ppsximaging sensor final.ppsx
imaging sensor final.ppsx
Akhilesh349979
 
Embedded &amp; pcb design
Embedded &amp; pcb designEmbedded &amp; pcb design
Embedded &amp; pcb design
Tanveer Behl
 

Similar to Cameratrainingsergiopublic 120904235733-phpapp02(2) (20)

OV7670 Camera interfacing-with-arduino-microcontroller
OV7670 Camera interfacing-with-arduino-microcontrollerOV7670 Camera interfacing-with-arduino-microcontroller
OV7670 Camera interfacing-with-arduino-microcontroller
 
CCD (Charge Coupled Device)
CCD (Charge Coupled Device)CCD (Charge Coupled Device)
CCD (Charge Coupled Device)
 
Accelerometer and LED Sensor Array Based Remote Control Car
Accelerometer and LED Sensor Array Based Remote Control CarAccelerometer and LED Sensor Array Based Remote Control Car
Accelerometer and LED Sensor Array Based Remote Control Car
 
Ch7 031102
Ch7 031102Ch7 031102
Ch7 031102
 
Presentation1 comp nn AA.ppsx
Presentation1 comp nn AA.ppsxPresentation1 comp nn AA.ppsx
Presentation1 comp nn AA.ppsx
 
Ccdcams
CcdcamsCcdcams
Ccdcams
 
Camera pdf
Camera pdfCamera pdf
Camera pdf
 
3 STM32's ADC.ppt
3 STM32's ADC.ppt3 STM32's ADC.ppt
3 STM32's ADC.ppt
 
Gas sensor
Gas sensorGas sensor
Gas sensor
 
Embedded System[586]
Embedded System[586]Embedded System[586]
Embedded System[586]
 
Zigbee based metal detecting robot to assist bomb detection and rescue team
Zigbee based metal detecting robot to assist bomb detection and rescue teamZigbee based metal detecting robot to assist bomb detection and rescue team
Zigbee based metal detecting robot to assist bomb detection and rescue team
 
Zigbee based metal detecting robot to assist bomb detection and rescue team
Zigbee based metal detecting robot to assist bomb detection and rescue teamZigbee based metal detecting robot to assist bomb detection and rescue team
Zigbee based metal detecting robot to assist bomb detection and rescue team
 
SECURICO CCTV BOOK
SECURICO CCTV BOOK SECURICO CCTV BOOK
SECURICO CCTV BOOK
 
Bidirect visitor counter
Bidirect visitor counterBidirect visitor counter
Bidirect visitor counter
 
Audio Acquisition, Storage and Playback
Audio Acquisition, Storage and PlaybackAudio Acquisition, Storage and Playback
Audio Acquisition, Storage and Playback
 
Embedded system
Embedded systemEmbedded system
Embedded system
 
Case study of digital camera
Case study of digital cameraCase study of digital camera
Case study of digital camera
 
Punch sensor, Arduino
Punch sensor, Arduino Punch sensor, Arduino
Punch sensor, Arduino
 
imaging sensor final.ppsx
imaging sensor final.ppsximaging sensor final.ppsx
imaging sensor final.ppsx
 
Embedded &amp; pcb design
Embedded &amp; pcb designEmbedded &amp; pcb design
Embedded &amp; pcb design
 

Recently uploaded

GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...
James Anderson
 
Introduction to CHERI technology - Cybersecurity
Introduction to CHERI technology - CybersecurityIntroduction to CHERI technology - Cybersecurity
Introduction to CHERI technology - Cybersecurity
mikeeftimakis1
 
Elevating Tactical DDD Patterns Through Object Calisthenics
Elevating Tactical DDD Patterns Through Object CalisthenicsElevating Tactical DDD Patterns Through Object Calisthenics
Elevating Tactical DDD Patterns Through Object Calisthenics
Dorra BARTAGUIZ
 
Securing your Kubernetes cluster_ a step-by-step guide to success !
Securing your Kubernetes cluster_ a step-by-step guide to success !Securing your Kubernetes cluster_ a step-by-step guide to success !
Securing your Kubernetes cluster_ a step-by-step guide to success !
KatiaHIMEUR1
 
Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...
Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...
Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...
Ramesh Iyer
 
A tale of scale & speed: How the US Navy is enabling software delivery from l...
A tale of scale & speed: How the US Navy is enabling software delivery from l...A tale of scale & speed: How the US Navy is enabling software delivery from l...
A tale of scale & speed: How the US Navy is enabling software delivery from l...
sonjaschweigert1
 
Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...
Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...
Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...
Product School
 
Welocme to ViralQR, your best QR code generator.
Welocme to ViralQR, your best QR code generator.Welocme to ViralQR, your best QR code generator.
Welocme to ViralQR, your best QR code generator.
ViralQR
 
PCI PIN Basics Webinar from the Controlcase Team
PCI PIN Basics Webinar from the Controlcase TeamPCI PIN Basics Webinar from the Controlcase Team
PCI PIN Basics Webinar from the Controlcase Team
ControlCase
 
Elizabeth Buie - Older adults: Are we really designing for our future selves?
Elizabeth Buie - Older adults: Are we really designing for our future selves?Elizabeth Buie - Older adults: Are we really designing for our future selves?
Elizabeth Buie - Older adults: Are we really designing for our future selves?
Nexer Digital
 
Bits & Pixels using AI for Good.........
Bits & Pixels using AI for Good.........Bits & Pixels using AI for Good.........
Bits & Pixels using AI for Good.........
Alison B. Lowndes
 
Accelerate your Kubernetes clusters with Varnish Caching
Accelerate your Kubernetes clusters with Varnish CachingAccelerate your Kubernetes clusters with Varnish Caching
Accelerate your Kubernetes clusters with Varnish Caching
Thijs Feryn
 
Essentials of Automations: Optimizing FME Workflows with Parameters
Essentials of Automations: Optimizing FME Workflows with ParametersEssentials of Automations: Optimizing FME Workflows with Parameters
Essentials of Automations: Optimizing FME Workflows with Parameters
Safe Software
 
Epistemic Interaction - tuning interfaces to provide information for AI support
Epistemic Interaction - tuning interfaces to provide information for AI supportEpistemic Interaction - tuning interfaces to provide information for AI support
Epistemic Interaction - tuning interfaces to provide information for AI support
Alan Dix
 
FIDO Alliance Osaka Seminar: FIDO Security Aspects.pdf
FIDO Alliance Osaka Seminar: FIDO Security Aspects.pdfFIDO Alliance Osaka Seminar: FIDO Security Aspects.pdf
FIDO Alliance Osaka Seminar: FIDO Security Aspects.pdf
FIDO Alliance
 
Le nuove frontiere dell'AI nell'RPA con UiPath Autopilot™
Le nuove frontiere dell'AI nell'RPA con UiPath Autopilot™Le nuove frontiere dell'AI nell'RPA con UiPath Autopilot™
Le nuove frontiere dell'AI nell'RPA con UiPath Autopilot™
UiPathCommunity
 
Assuring Contact Center Experiences for Your Customers With ThousandEyes
Assuring Contact Center Experiences for Your Customers With ThousandEyesAssuring Contact Center Experiences for Your Customers With ThousandEyes
Assuring Contact Center Experiences for Your Customers With ThousandEyes
ThousandEyes
 
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdfFIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
FIDO Alliance
 
UiPath Test Automation using UiPath Test Suite series, part 4
UiPath Test Automation using UiPath Test Suite series, part 4UiPath Test Automation using UiPath Test Suite series, part 4
UiPath Test Automation using UiPath Test Suite series, part 4
DianaGray10
 
Leading Change strategies and insights for effective change management pdf 1.pdf
Leading Change strategies and insights for effective change management pdf 1.pdfLeading Change strategies and insights for effective change management pdf 1.pdf
Leading Change strategies and insights for effective change management pdf 1.pdf
OnBoard
 

Recently uploaded (20)

GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...
 
Introduction to CHERI technology - Cybersecurity
Introduction to CHERI technology - CybersecurityIntroduction to CHERI technology - Cybersecurity
Introduction to CHERI technology - Cybersecurity
 
Elevating Tactical DDD Patterns Through Object Calisthenics
Elevating Tactical DDD Patterns Through Object CalisthenicsElevating Tactical DDD Patterns Through Object Calisthenics
Elevating Tactical DDD Patterns Through Object Calisthenics
 
Securing your Kubernetes cluster_ a step-by-step guide to success !
Securing your Kubernetes cluster_ a step-by-step guide to success !Securing your Kubernetes cluster_ a step-by-step guide to success !
Securing your Kubernetes cluster_ a step-by-step guide to success !
 
Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...
Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...
Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...
 
A tale of scale & speed: How the US Navy is enabling software delivery from l...
A tale of scale & speed: How the US Navy is enabling software delivery from l...A tale of scale & speed: How the US Navy is enabling software delivery from l...
A tale of scale & speed: How the US Navy is enabling software delivery from l...
 
Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...
Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...
Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...
 
Welocme to ViralQR, your best QR code generator.
Welocme to ViralQR, your best QR code generator.Welocme to ViralQR, your best QR code generator.
Welocme to ViralQR, your best QR code generator.
 
PCI PIN Basics Webinar from the Controlcase Team
PCI PIN Basics Webinar from the Controlcase TeamPCI PIN Basics Webinar from the Controlcase Team
PCI PIN Basics Webinar from the Controlcase Team
 
Elizabeth Buie - Older adults: Are we really designing for our future selves?
Elizabeth Buie - Older adults: Are we really designing for our future selves?Elizabeth Buie - Older adults: Are we really designing for our future selves?
Elizabeth Buie - Older adults: Are we really designing for our future selves?
 
Bits & Pixels using AI for Good.........
Bits & Pixels using AI for Good.........Bits & Pixels using AI for Good.........
Bits & Pixels using AI for Good.........
 
Accelerate your Kubernetes clusters with Varnish Caching
Accelerate your Kubernetes clusters with Varnish CachingAccelerate your Kubernetes clusters with Varnish Caching
Accelerate your Kubernetes clusters with Varnish Caching
 
Essentials of Automations: Optimizing FME Workflows with Parameters
Essentials of Automations: Optimizing FME Workflows with ParametersEssentials of Automations: Optimizing FME Workflows with Parameters
Essentials of Automations: Optimizing FME Workflows with Parameters
 
Epistemic Interaction - tuning interfaces to provide information for AI support
Epistemic Interaction - tuning interfaces to provide information for AI supportEpistemic Interaction - tuning interfaces to provide information for AI support
Epistemic Interaction - tuning interfaces to provide information for AI support
 
FIDO Alliance Osaka Seminar: FIDO Security Aspects.pdf
FIDO Alliance Osaka Seminar: FIDO Security Aspects.pdfFIDO Alliance Osaka Seminar: FIDO Security Aspects.pdf
FIDO Alliance Osaka Seminar: FIDO Security Aspects.pdf
 
Le nuove frontiere dell'AI nell'RPA con UiPath Autopilot™
Le nuove frontiere dell'AI nell'RPA con UiPath Autopilot™Le nuove frontiere dell'AI nell'RPA con UiPath Autopilot™
Le nuove frontiere dell'AI nell'RPA con UiPath Autopilot™
 
Assuring Contact Center Experiences for Your Customers With ThousandEyes
Assuring Contact Center Experiences for Your Customers With ThousandEyesAssuring Contact Center Experiences for Your Customers With ThousandEyes
Assuring Contact Center Experiences for Your Customers With ThousandEyes
 
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdfFIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
 
UiPath Test Automation using UiPath Test Suite series, part 4
UiPath Test Automation using UiPath Test Suite series, part 4UiPath Test Automation using UiPath Test Suite series, part 4
UiPath Test Automation using UiPath Test Suite series, part 4
 
Leading Change strategies and insights for effective change management pdf 1.pdf
Leading Change strategies and insights for effective change management pdf 1.pdfLeading Change strategies and insights for effective change management pdf 1.pdf
Leading Change strategies and insights for effective change management pdf 1.pdf
 

Cameratrainingsergiopublic 120904235733-phpapp02(2)

  • 1. Introduction to Camera By: Sergio Aguirre <sergio.a.aguirre@gmail.com>
  • 2. Basics  Camera: Device that records and stores images.  Still Images:  Videos or movies:
  • 3. Basics  But essentially, what defines a camera device?  Recording medium  Lens  Light Lens Light Recording Medium
  • 4. Basics  Now, what about a typical digital camera?  Image sensor (CCD or CMOS)  Lens  Flash  ISP: Image Signal Processor  Image and video Encoders (To save space)  Storage Media (SD Cards, USB drives, Etc.)
  • 6. Image sensor technology  CCD: Charge Coupled device.   Moves electrical charges to an area where it can be manipulated. CMOS: Complementary metal-oxide semiconductor.  Array of pixel sensors, each one containing a photodetector and an active amplifier.
  • 7. Image sensor pixel arrays  Foveon:   100% Green   100% Red 100% Blue Bayer:  25% Red  50% Green  25% Blue
  • 8. Image sensor formats (Most typical)  RAW 10-bits.   10-bit digital value obtained thru an ADC (Analog to Digital Converter) of the analog voltage coming from each pixel's associated photodetector chargeto-voltage converter. YUV 4:2:2 8-bits.  Represent pairs of horizontally contiguous pixels. 8bits per component (Y: Luminance, UV: Chrominance). Order is usually YUYV, or UYVY. Croma components (UV) are subsampled at half the sample rate than luma (Y).
  • 9. Image sensor formats (Most typical)  YUV 4:2:0 8-bits.   Similar to 4:2:2, but the difference being that the UV components are also vertically subsampled by 2. This format contains interleaved data, which means, odd lines contain only Y elements, and even lines contain packed UYVY elements, similarly to 4:2:2 subsampling. NV12 (YUV 4:2:0 8-bits, planar)  Exact same subsampling as above format, but the difference being that one array contains only Y components, and a second array contains packed UV components, 2x2 subsampled.
  • 10. Image sensor core Typical block diagram of an image sensor core components: AMP Gain control 10-bit ADC Digital gain Image array Black level calibration Column Sample/hold Row select  ...
  • 11. Image sensor core functions      Analog gain: Amplifies constant voltage perpixel for entire array. Done before ADC. Black level: Level of pixel voltage at the darkest (black) part of the incoming image. Digital gain: Adds a constant number to the digitally converted pixel value, after going through the ADC. Skipping: Certain pixels rows/columns are avoided (skipped) on sampling. Binning: Averaging groups of neighborhood pixel charges.
  • 12. Image sensor interfaces  Overall, there's at least 2 communication links:   Control: Typically I2C, but not necessarly the case. This is used by a master IC to initialize/program the sensor for desired operation and data output configuration. Data: This can be Parallel or Serial. Sensor Data Master IC Control
  • 13. Image sensor interfaces - Control  I2C: Inter-Integrated Circuit   Multi-master serial single-ended computer bus, used to attach low-speed peripherals to a host IC. Uses 2 open-drain lines, w/pull-up resistors:   SCL (Serial CLock). SDA (Serial DAta).
  • 14. Image sensor interfaces - I2C  I2C: Inter-Integrated Circuit    START and STOP conditions to claim/release bus control. First byte: 7-bit device address space, 1 bit used to indicate Read (HI) or Write (LOW). ACK bit pulled low by slave after each byte sent, used to handshake transmission between master and slave ICs. If ACK bit is high, master should stop transmission.
  • 15. Image sensor interfaces - Parallel Parallel interface (a.k.a. Digital Video Port)  Data signals: 1 digital output pin per bit.  Sync signals:    PCLK: Pixel Clock. HSYNC: Horizontal Sync. VSYNC: Vertical Sync. Image data Vertical Blanking Horizontal Blanking  D[9:0] Sensor PCLK HSYNC VSYNC Master IC
  • 16. Image sensor interfaces - CSI2  MIPI CSI2 (Camera Serial Interface 2).  Data signals: Up to 4 differential lanes (+/- signals).  Clock signals: 1 differential lane (+/- signals).  Speeds up to 1 Gbit/s per lane (500 MHz) CLK (+/-) DAT0 (+/-) Sensor DAT1 (+/-) DAT2 (+/-) DAT3 (+/-) Master IC
  • 17. Image sensor interfaces - CSI2  CSI2 Receiver components:
  • 18. Image sensor interfaces - CSI2  D-PHY layer:
  • 19. Image sensor interfaces - CSI2  CSI2 Protocol Layer:
  • 20. Image sensor interfaces - CSI2  Data Lane Merger
  • 21. Lens
  • 22. Lens   Could be either a simple convex lens, or a compound lens made up of a number of lens elements, used to correct optical aberrations, and keep good image sharpness on a specific object distance from the camera. There are fixed-focus lens, and lens whose position can be adjusted by a VCM (voice coil motor).
  • 23. Lens   For moving lens, position can be either controlled as part of the image sensor registers, or as a separate I2C device in the bus. This is usually done as a result of the Auto Focus algorithm, after analyzing the captured images. It can also be due to manual control, if desired.
  • 24. Flash
  • 25. Flash    Used in photography to compensate natural ambient light, and illuminate a dark scene. Syncronized with start of capture image command, with adjusted flashing duration, and intensity. Usually triggered with GPIOs and configured with I2C commands.
  • 28. Image sensor interfaces - Data  MIPI CSI (Camera Serial Interface).  Data signals: 1 differential lane (+/- signals).  Clock signals: 1 differential lane (+/- signals).  Speeds between 1->208 Mbps CLK (+/-) Sensor DAT (+/-) Master IC
  • 29. Image sensor interfaces - Data  SMIA CCP2 (Compact Camera Port 2).  Data signals: 1 differential lane (+/- signals).  Clock signals: 1 differential lane (+/- signals). Class Data transfer capacity (sustain data rate) Class 0 <208 Mbit/s Data/Clock Class 1 208 Mbit/s to 416 Mbit/s Data/Strobe Class 2 416 Mbit/s to 650 Mbit/s Data/Strobe CLK, or STROBE (+/-) Signaling method Sensor DAT (+/-) Master IC